{"version":3,"sources":["C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/$_gendir lazy","C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/app/app.component.css","C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/app/app.component.html","C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/app/app.component.ts","C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/app/app.module.ts","C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/app/serchComponent/search.component.css","C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/app/serchComponent/search.component.html","C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/app/serchComponent/search.component.ts","C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/app/services/productSearch.service.ts","../../.tmp/accordion/accordion-group.component.ts","../../.tmp/accordion/accordion.component.ts","../../.tmp/accordion/accordion.config.ts","../../.tmp/accordion/accordion.module.ts","../../.tmp/accordion/index.ts","../../.tmp/alert/alert.component.ts","../../.tmp/alert/alert.config.ts","../../.tmp/alert/alert.module.ts","../../.tmp/alert/index.ts","../../.tmp/bs-moment/format-functions.ts","../../.tmp/bs-moment/format.ts","../../.tmp/bs-moment/index.ts","../../../.tmp/bs-moment/locale/en.ts","../../../.tmp/bs-moment/locale/index.ts","../../../.tmp/bs-moment/locale/locale.class.ts","../../../.tmp/bs-moment/locale/locale.defaults.ts","../../../.tmp/bs-moment/locale/locales.service.ts","../../../.tmp/bs-moment/units/day-of-month.ts","../../../.tmp/bs-moment/units/day-of-week.ts","../../../.tmp/bs-moment/units/day-of-year.ts","../../../.tmp/bs-moment/units/hour.ts","../../../.tmp/bs-moment/units/index.ts","../../../.tmp/bs-moment/units/minute.ts","../../../.tmp/bs-moment/units/month.ts","../../../.tmp/bs-moment/units/second.ts","../../../.tmp/bs-moment/units/week-calendar-utils.ts","../../../.tmp/bs-moment/units/week.ts","../../../.tmp/bs-moment/units/year.ts","../../.tmp/bs-moment/utils.ts","../../../.tmp/bs-moment/utils/date-compare.ts","../../../.tmp/bs-moment/utils/date-getters.ts","../../../.tmp/bs-moment/utils/date-setters.ts","../../../.tmp/bs-moment/utils/start-end-of.ts","../../../.tmp/bs-moment/utils/type-checks.ts","../../.tmp/buttons/button-checkbox.directive.ts","../../.tmp/buttons/button-radio.directive.ts","../../.tmp/buttons/buttons.module.ts","../../.tmp/buttons/index.ts","../../.tmp/carousel/carousel.component.ts","../../.tmp/carousel/carousel.config.ts","../../.tmp/carousel/carousel.module.ts","../../.tmp/carousel/index.ts","../../.tmp/carousel/slide.component.ts","../../.tmp/collapse/collapse.directive.ts","../../.tmp/collapse/collapse.module.ts","../../.tmp/collapse/index.ts","../../.tmp/component-loader/component-loader.class.ts","../../.tmp/component-loader/component-loader.factory.ts","../../.tmp/component-loader/content-ref.class.ts","../../.tmp/component-loader/index.ts","../../../.tmp/datepicker/base/bs-datepicker-container.ts","../../.tmp/datepicker/bs-datepicker-input.directive.ts","../../.tmp/datepicker/bs-datepicker.component.ts","../../.tmp/datepicker/bs-datepicker.config.ts","../../.tmp/datepicker/bs-datepicker.module.ts","../../.tmp/datepicker/bs-daterangepicker-input.directive.ts","../../.tmp/datepicker/bs-daterangepicker.component.ts","../../.tmp/datepicker/date-formatter.ts","../../.tmp/datepicker/datepicker-inner.component.ts","../../.tmp/datepicker/datepicker.component.ts","../../.tmp/datepicker/datepicker.config.ts","../../.tmp/datepicker/datepicker.module.ts","../../.tmp/datepicker/daypicker.component.ts","../../../.tmp/datepicker/engine/calc-days-calendar.ts","../../../.tmp/datepicker/engine/flag-days-calendar.ts","../../../.tmp/datepicker/engine/flag-months-calendar.ts","../../../.tmp/datepicker/engine/flag-years-calendar.ts","../../../.tmp/datepicker/engine/format-days-calendar.ts","../../../.tmp/datepicker/engine/format-months-calendar.ts","../../../.tmp/datepicker/engine/format-years-calendar.ts","../../../.tmp/datepicker/engine/view-mode.ts","../../.tmp/datepicker/index.ts","../../../.tmp/datepicker/models/index.ts","../../.tmp/datepicker/monthpicker.component.ts","../../../.tmp/datepicker/reducer/_defaults.ts","../../../.tmp/datepicker/reducer/bs-datepicker.actions.ts","../../../.tmp/datepicker/reducer/bs-datepicker.effects.ts","../../../.tmp/datepicker/reducer/bs-datepicker.reducer.ts","../../../.tmp/datepicker/reducer/bs-datepicker.state.ts","../../../.tmp/datepicker/reducer/bs-datepicker.store.ts","../../../../.tmp/datepicker/themes/bs/bs-calendar-layout.component.ts","../../../../.tmp/datepicker/themes/bs/bs-current-date-view.component.ts","../../../../.tmp/datepicker/themes/bs/bs-custom-dates-view.component.ts","../../../../.tmp/datepicker/themes/bs/bs-datepicker-container.component.ts","../../../../.tmp/datepicker/themes/bs/bs-datepicker-day-decorator.directive.ts","../../../../.tmp/datepicker/themes/bs/bs-datepicker-navigation-view.component.ts","../../../../.tmp/datepicker/themes/bs/bs-daterangepicker-container.component.ts","../../../../.tmp/datepicker/themes/bs/bs-days-calendar-view.component.ts","../../../../.tmp/datepicker/themes/bs/bs-months-calendar-view.component.ts","../../../../.tmp/datepicker/themes/bs/bs-timepicker-view.component.ts","../../../../.tmp/datepicker/themes/bs/bs-years-calendar-view.component.ts","../../../.tmp/datepicker/utils/bs-calendar-utils.ts","../../../.tmp/datepicker/utils/matrix-utils.ts","../../.tmp/datepicker/yearpicker.component.ts","../../.tmp/dropdown/bs-dropdown-container.component.ts","../../.tmp/dropdown/bs-dropdown-menu.directive.ts","../../.tmp/dropdown/bs-dropdown-toggle.directive.ts","../../.tmp/dropdown/bs-dropdown.config.ts","../../.tmp/dropdown/bs-dropdown.directive.ts","../../.tmp/dropdown/bs-dropdown.module.ts","../../.tmp/dropdown/bs-dropdown.state.ts","../../.tmp/dropdown/index.ts","../.tmp/index.ts","../../.tmp/mini-ngrx/state.class.ts","../../.tmp/mini-ngrx/store.class.ts","../../.tmp/modal/bs-modal-ref.service.ts","../../.tmp/modal/bs-modal.service.ts","../../.tmp/modal/index.ts","../../.tmp/modal/modal-backdrop.component.ts","../../.tmp/modal/modal-backdrop.options.ts","../../.tmp/modal/modal-container.component.ts","../../.tmp/modal/modal-options.class.ts","../../.tmp/modal/modal.directive.ts","../../.tmp/modal/modal.module.ts","../../.tmp/pagination/index.ts","../../.tmp/pagination/pager.component.ts","../../.tmp/pagination/pagination.component.ts","../../.tmp/pagination/pagination.config.ts","../../.tmp/pagination/pagination.module.ts","../../.tmp/popover/index.ts","../../.tmp/popover/popover-container.component.ts","../../.tmp/popover/popover.config.ts","../../.tmp/popover/popover.directive.ts","../../.tmp/popover/popover.module.ts","../../.tmp/positioning/index.ts","../../.tmp/positioning/ng-positioning.ts","../../.tmp/positioning/positioning.service.ts","../../.tmp/progressbar/bar.component.ts","../../.tmp/progressbar/index.ts","../../.tmp/progressbar/progress.directive.ts","../../.tmp/progressbar/progressbar.component.ts","../../.tmp/progressbar/progressbar.config.ts","../../.tmp/progressbar/progressbar.module.ts","../../.tmp/rating/index.ts","../../.tmp/rating/rating.component.ts","../../.tmp/rating/rating.module.ts","../../.tmp/sortable/draggable-item.service.ts","../../.tmp/sortable/index.ts","../../.tmp/sortable/sortable.component.ts","../../.tmp/sortable/sortable.module.ts","../../.tmp/tabs/index.ts","../../.tmp/tabs/ng-transclude.directive.ts","../../.tmp/tabs/tab-heading.directive.ts","../../.tmp/tabs/tab.directive.ts","../../.tmp/tabs/tabs.module.ts","../../.tmp/tabs/tabset.component.ts","../../.tmp/tabs/tabset.config.ts","../../.tmp/timepicker/index.ts","../../../.tmp/timepicker/reducer/timepicker.actions.ts","../../../.tmp/timepicker/reducer/timepicker.reducer.ts","../../../.tmp/timepicker/reducer/timepicker.store.ts","../../.tmp/timepicker/timepicker-controls.util.ts","../../.tmp/timepicker/timepicker.component.ts","../../.tmp/timepicker/timepicker.config.ts","../../.tmp/timepicker/timepicker.module.ts","../../.tmp/timepicker/timepicker.utils.ts","../../.tmp/tooltip/index.ts","../../.tmp/tooltip/tooltip-container.component.ts","../../.tmp/tooltip/tooltip.config.ts","../../.tmp/tooltip/tooltip.directive.ts","../../.tmp/tooltip/tooltip.module.ts","../../.tmp/typeahead/index.ts","../../.tmp/typeahead/latin-map.ts","../../.tmp/typeahead/typeahead-container.component.ts","../../.tmp/typeahead/typeahead-match.class.ts","../../.tmp/typeahead/typeahead-options.class.ts","../../.tmp/typeahead/typeahead-utils.ts","../../.tmp/typeahead/typeahead.directive.ts","../../.tmp/typeahead/typeahead.module.ts","../../.tmp/utils/decorators.ts","../../../.tmp/utils/facade/browser.ts","../../.tmp/utils/index.ts","../../.tmp/utils/linked-list.class.ts","../../.tmp/utils/theme-provider.ts","../../.tmp/utils/trigger.class.ts","../../.tmp/utils/triggers.ts","../../.tmp/utils/utils.class.ts","../../.tmp/utils/warn-once.ts","C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/environments/environment.ts","C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/main.ts"],"names":[],"mappings":";;;;;AAAA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA,4CAA4C,WAAW;AACvD;AACA;AACA,4E;;;;;;;ACVA;AACA;;;AAGA;AACA,qCAAsC,yBAAyB,KAAK,sBAAsB,wBAAwB,KAAK;;AAEvH;;;AAGA;AACA,2C;;;;;;;ACXA,6JAA6J,OAAO,8DAA8D,mhC;;;;;;;;;;;;;;;;ACAxL;AAO1C;IALA;QAME,UAAK,GAAG,KAAK,CAAC;IAChB,CAAC;IAFY,YAAY;QALxB,wEAAS,CAAC;YACT,QAAQ,EAAE,UAAU;YACpB,0EAAmC;YACnC,yEAAkC;SACnC,CAAC;OACW,YAAY,CAExB;IAAD,mBAAC;CAAA;AAFwB;;;;;;;;;;;;;;;;;;;;;;;;;ACPiC;AACjB;AAEI;AACF;AAE0C;AACtC;AACqB;AACA;AACI;AAoBxE;IAAA;IAAyB,CAAC;IAAb,SAAS;QAlBrB,uEAAQ,CAAC;YACR,YAAY,EAAE;gBACV,oEAAY;gBACZ,yFAAe;aAClB;YACD,OAAO,EAAE;gBACL,gFAAa;gBACb,yFAAe;gBACf,mEAAW;gBACX,iEAAU;aACb;YACD,SAAS,EAAE;gBACP,sFAAsB;gBACtB,kFAAkB;gBAClB,6FAAoB;aACvB;YACD,SAAS,EAAE,CAAC,oEAAY,CAAC;SAC1B,CAAC;OACW,SAAS,CAAI;IAAD,gBAAC;CAAA;AAAJ;;;;;;;;AC9BtB;AACA;;;AAGA;AACA,iCAAkC,yBAAyB,KAAK,eAAe,qBAAqB,sBAAsB,KAAK,SAAS,gBAAgB,2BAA2B,KAAK,iBAAiB,4BAA4B,KAAK,qBAAqB,uBAAuB,KAAK;;AAE3R;;;AAGA;AACA,2C;;;;;;;ACXA,y9BAAy9B,kBAAkB,6HAA6H,mBAAmB,wE;;;;;;;;;;;;;;;;;;;;;;;;ACAzkC;AACL;AACb;AAE2C;AAQ3E;IAQE,yBAA2B,oBAA0C;QAArE,iBAOC;QAP0B,yBAAoB,GAApB,oBAAoB,CAAsB;QACnE,IAAI,CAAC,UAAU,GAAG,2DAAU;aACzB,MAAM,CAAC,UAAC,QAAa;YACpB,QAAQ,CAAC,IAAI,CAAC,KAAI,CAAC,UAAU,CAAC,CAAC;QACjC,CAAC,CAAC;aACD,QAAQ,CAAC,UAAC,KAAa,IAAK,YAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,KAAK,CAAC,EAA5C,CAA4C,CAAC,CAAC;QAC7E,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;IACzB,CAAC;IATD,kCAAQ,GAAR;IACA,CAAC;IASM,2CAAiB,GAAxB,UAAyB,CAAiB;QACxC,IAAI,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7C,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,WAAW,CAAC;IACrC,CAAC;IACM,sCAAY,GAAnB;QACE,IAAI,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5D,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,WAAW,CAAC;IACrC,CAAC;IACO,mCAAS,GAAjB,UAAkB,KAAa;QAC7B,IAAI,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QAC5C,MAAM,CAAC,MAAM,CAAC;IAChB,CAAC;IAEM,wCAAc,GAArB,UAAsB,MAAc;QAClC,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACtD,MAAM,CAAC,MAAM,CAAC;IAChB,CAAC;IACO,uCAAa,GAArB,UAAsB,IAAY;QAChC,IAAI,MAAM,GAAG,IAAI,CAAC;QAClB,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YACjC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YACjC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACnC,CAAC;QACD,MAAM,CAAC,MAAM,CAAC;IAChB,CAAC;IACM,wCAAc,GAArB,UAAsB,IAAY,EAAE,MAAc;QAChD,IAAI,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAC5D,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACnC,IAAI,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACzC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,IAAI,SAAS,GAAG,KAAK,CAAC;YACtB,IAAI,SAAS,GAAG,EAAE,CAAC;YACnB,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACpE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,IAAI,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC;oBACpD,SAAS,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC;oBAChF,SAAS,IAAI,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC9B,CAAC,EAAE,CAAC;gBACN,CAAC;gBACD,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,SAAS,IAAI,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;oBACxE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACvB,SAAS,GAAG,EAAE,CAAC;oBACf,SAAS,GAAG,KAAK,CAAC;oBAClB,CAAC,GAAG,CAAC,CAAC;gBACR,CAAC;gBACD,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC3D,SAAS,GAAG,IAAI,CAAC;oBACjB,SAAS,IAAI,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC9B,CAAC,EAAE,CAAC;gBACN,CAAC;YACH,CAAC;YACD,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;gBACzB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QACD,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,MAAM,CAAC,IAAI,CAAC,UAAC,CAAS,EAAE,CAAS;YAC/B,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;gBACxB,MAAM,CAAC,CAAC,CAAC;YACX,CAAC;YACD,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;gBACxB,MAAM,CAAC,CAAC,CAAC,CAAC;YACZ,CAAC;YACD,MAAM,CAAC,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;QAEH,IAAI,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAClC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;gBAC5B,KAAK,CAAC;YACR,CAAC;YACD,IAAI,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACvD,IAAI,oBAAoB,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACvD,IAAI,gBAAgB,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7D,IAAI,cAAc,GAAG,YAAY,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;YAC9D,EAAE,CAAC,CAAC,oBAAoB,IAAI,CAAC,CAAC,IAAI,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvD,QAAQ,CAAC;YACX,CAAC;YACD,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC1C,WAAW,CAAC,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;YACzC,CAAC;YACD,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3C,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC5B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;QACnE,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC;IACM,2CAAiB,GAAxB,UAAyB,IAAY,EAAE,MAAc;QACnD,IAAI,WAAW,GAAG,MAAM,CAAC;QACzB,IAAI,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChD,IAAI,aAAa,GAAG,KAAK,CAAC;QAC1B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7D,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC/F,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;gBACrC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC;gBAC7C,aAAa,GAAG,IAAI,CAAC;YACvB,CAAC;QACH,CAAC;QACD,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE,EAAE,CAAC;YACzD,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC3F,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;gBACvC,aAAa,GAAG,IAAI,CAAC;YACvB,CAAC;QACH,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC;IAnIU,eAAe;QAL3B,wEAAS,CAAC;YACT,QAAQ,EAAE,QAAQ;YAClB,4FAAsC;YACtC,2FAAqC;SACtC,CAAC;6DASiD,6FAAoB,oBAApB,6FAAoB;OAR1D,eAAe,CAoI3B;IAAD,sBAAC;;CAAA;AApI2B;;;;;;;;;;;;;;;;;;;;;ACZe;AAEmB;AAI9D;IAEI,8BAAoB,IAAU;QAAV,SAAI,GAAJ,IAAI,CAAM;IAC9B,CAAC;IAED,0CAAW,GAAX,UAAY,MAAc;QACxB,IAAI,OAAO,GAAG,IAAI,8DAAO,CAAC,EAAE,cAAc,EAAE,mCAAmC,EAAE,CAAC,CAAC;QACnF,IAAI,IAAI,GAAG,SAAS,GAAG,MAAM,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,gCAAgC,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,GAAG;YAEnG,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;YACtB,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YAAA,CAAC;YAC9G,IAAI,MAAM,GAAG,IAAI,KAAK,EAA2B,CAAC;YAClD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC9B,MAAM,CAAC,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC;IAhBQ,oBAAoB;QADhC,yEAAU,EAAE;6DAGiB,2DAAI,oBAAJ,2DAAI;OAFrB,oBAAoB,CAiBhC;IAAD,2BAAC;;CAAA;AAjBgC;;;;;;;;;;;;;ACJV;AACyB;AACW;AAE3D;;;;;GAKG;AAEH;IAkCE,iCAAa,SAA6B;QACxC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IApBD,sBAAI,2CAAM;QAJV,wEAAwE;QACxE,wCAAwC;aAGxC;YACE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;aAED,UAAW,KAAc;YACvB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBACV,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;;;OAPA;IASD,sBAAI,0CAAK;aAAT;YACE,MAAM,CAAC,4EAAK,EAAE,CAAC;QACjB,CAAC;;;OAAA;IASD,0CAAQ,GAAR;QACE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,eAAe,CAAC;QACrD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,6CAAW,GAAX;QACE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,4CAAU,GAAV,UAAW,KAAY;QACrB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YACrB,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;QAC7B,CAAC;IACH,CAAC;IACI,kCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,kCAAkC;oBAC5C,QAAQ,EAAE,6kBAA6kB;oBACvlB,IAAI,EAAE;wBACJ,KAAK,EAAE,OAAO;wBACd,KAAK,EAAE,gBAAgB;qBACxB;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,sCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,gFAAkB,EAAE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,IAAI,EAAE,CAAC,gFAAkB,EAAG,EAAE,EAAG,EAAC;KACzF,EAF6F,CAE7F,CAAC;IACK,sCAAc,GAA2C;QAChE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAChC,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAChC,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,kBAAkB,EAAG,EAAE,EAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;KAC/E,CAAC;IACF,8BAAC;CAAA;AAxEmC;;;;;;;;;;;;ACba;AAEI;AAErD,mGAAmG;AAEnG;IAME,4BAAY,MAAuB;QAFzB,WAAM,GAA8B,EAAE,CAAC;QAG/C,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,6CAAgB,GAAhB,UAAiB,SAAkC;QACjD,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YACtB,MAAM,CAAC;QACT,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAC,KAA8B;YACjD,EAAE,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC;gBACxB,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;YACvB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,qCAAQ,GAAR,UAAS,KAA8B;QACrC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IAED,wCAAW,GAAX,UAAY,KAA8B;QACxC,IAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACzC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACjB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IACI,6BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,WAAW;oBACrB,QAAQ,EAAE,2BAA2B;oBACrC,IAAI,EAAE;wBACJ,6BAA6B,EAAE,aAAa;wBAC5C,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,aAAa;wBACpB,KAAK,EAAE,gBAAgB;qBACxB;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,iCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,0EAAe,GAAG;KACxB,EAF6F,CAE7F,CAAC;IACK,iCAAc,GAA2C;QAChE,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;KAChC,CAAC;IACF,yBAAC;CAAA;AAnD8B;;;;;;;;;;;ACNY;AAE3C;;GAEG;AAEH;IAAA;QACE,uEAAuE;QACvE,gBAAW,GAAY,KAAK,CAAC;IAO/B,CAAC;IANM,0BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,8BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,sBAAC;CAAA;AAT2B;;;;;;;;;;;;;;;;ACNmB;AACe;AAED;AACS;AACX;AACN;AAGrD;IAAA;IAcA,CAAC;IAbQ,uBAAO,GAAd;QACE,MAAM,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,CAAC,0EAAe,CAAC,EAAE,CAAC;IACrE,CAAC;IACI,0BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC,qEAAY,EAAE,iFAAc,CAAC;oBACvC,YAAY,EAAE,CAAC,gFAAkB,EAAE,2FAAuB,CAAC;oBAC3D,OAAO,EAAE,CAAC,gFAAkB,EAAE,2FAAuB,CAAC;iBACvD,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,8BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,sBAAC;CAAA;AAd2B;;;;;;;;;;;;;;;;;ACT0C;AACX;AACN;AACA;;;;;;;;;;;;;;;;;;;;;;ACH0B;AAClC;AACE;AAG/C;IAwBE,wBAAY,OAAoB;QAAhC,iBAKC;QA5BD;;;WAGG;QACF,SAAI,GAAG,SAAS,CAAC;QAClB,gDAAgD;QAGhD,gBAAW,GAAG,KAAK,CAAC;QAIpB;;WAEG;QACF,YAAO,GAAG,IAAI,mEAAY,EAAkB,CAAC;QAC9C,mFAAmF;QAClF,aAAQ,GAAG,IAAI,mEAAY,EAAkB,CAAC;QAE/C,aAAQ,GAAG,KAAK,CAAC;QACjB,YAAO,GAAG,EAAE,CAAC;QACb,sBAAiB,GAA0B,IAAI,mEAAY,EAAW,CAAC;QAGrE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC7B,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,UAAC,WAAoB;YACpD,KAAI,CAAC,OAAO,GAAG,KAAI,CAAC,WAAW,GAAG,mBAAmB,GAAG,EAAE,CAAC;QAC7D,CAAC,CAAC,CAAC;IACL,CAAC;IAED,iCAAQ,GAAR;QAAA,iBAQC;QAPC,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAC1B,wEAAwE;YACxE,UAAU,CACR,cAAM,YAAI,CAAC,KAAK,EAAE,EAAZ,CAAY,EAClB,QAAQ,CAAC,IAAI,CAAC,gBAA0B,EAAE,EAAE,CAAC,CAC9C,CAAC;QACJ,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,gDAAgD;IAChD;;OAEG;IACH,8BAAK,GAAL;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YAClB,MAAM,CAAC;QACT,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IACI,yBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,gBAAgB;oBAC1B,QAAQ,EAAE,iYAAiY;iBAC5Y,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,6BAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,kEAAW,GAAG;KACpB,EAF6F,CAE7F,CAAC;IACK,6BAAc,GAA2C;QAChE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC1B,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACjC,kBAAkB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACtC,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC9B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;KAC9B,CAAC;IA9DA;QAFC,2EAAQ,EAAE;;uDAES;IA+DtB,qBAAC;CAAA;AAxE0B;;;;;;;;;;;ACLgB;AAG3C;IAAA;QACE,yBAAyB;QACzB,SAAI,GAAG,SAAS,CAAC;QAEjB,2CAA2C;QAC3C,gBAAW,GAAG,KAAK,CAAC;QAEpB,6CAA6C;QAC7C,qBAAgB,GAAY,SAAS,CAAC;IAOxC,CAAC;IANM,sBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,0BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,kBAAC;CAAA;AAfuB;;;;;;;;;;;;;;ACHuB;AACe;AACX;AACN;AAG7C;IAAA;IAeA,CAAC;IAdQ,mBAAO,GAAd;QACE,MAAM,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,kEAAW,CAAC,EAAE,CAAC;IAC7D,CAAC;IACI,sBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC,qEAAY,CAAC;oBACvB,YAAY,EAAE,CAAC,wEAAc,CAAC;oBAC9B,OAAO,EAAE,CAAC,wEAAc,CAAC;oBACzB,eAAe,EAAE,CAAC,wEAAc,CAAC;iBAClC,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,0BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,kBAAC;CAAA;AAfuB;;;;;;;;;;;;;;;ACN2B;AACN;AACA;;;;;;;;;;;;;;;;ACDV;AACc;AAG1C,IAAI,eAAe,GAEtB,EAAE,CAAC;AACA,IAAI,oBAAoB,GAAuC,EAAE,CAAC;AAEzE,2BAA2B;AACpB,IAAM,gBAAgB,GAAG,sLAAsL,CAAC;AAEvN,gBAAgB;AAChB,sBAAsB;AACtB,iBAAiB;AACjB,6CAA6C;AACvC,wBACJ,KAAa,EACb,MAA8B,EAC9B,OAAe,EACf,QAAyB;IAEzB,IAAM,IAAI,GAAoB,QAAQ,CAAC;IACvC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACV,oBAAoB,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IACrC,CAAC;IACD,EAAE,CAAC,CAAC,MAAgC,CAAC,CAAC,CAAC;QACrC,IAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAW,CAAC;QAChC,oBAAoB,CAAC,GAAG,CAAC,GAAG,UAC1B,IAAU,EACV,MAAc,EACd,MAAe;YAEf,MAAM,CAAC,gEAAQ,CACb,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,EAC3B,MAAM,CAAC,CAAC,CAAW,EACnB,MAAM,CAAC,CAAC,CAAY,CACrB,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;IACD,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QACZ,oBAAoB,CAAC,OAAO,CAAC,GAAG,UAC9B,IAAU,EACV,MAAc,EACd,MAAc;YAEd,iBAAiB;YACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC,CAAC;IACJ,CAAC;AACH,CAAC;AAEK,4BACJ,MAAc;IAEd,IAAM,KAAK,GAAa,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACvD,IAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5B,IAAM,SAAS,GAAiC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;IAClE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,SAAS,CAAC,CAAC,CAAC,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;cACzC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;cAC9B,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,UAAS,IAAU,EAAE,MAAc;QACxC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAChC,MAAM,IAAI,8EAAU,CAAC,SAAS,CAAC,CAAC,CAAoB,CAAC;kBAChD,SAAS,CAAC,CAAC,CAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC;kBAClE,SAAS,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC;QAED,MAAM,CAAC,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAED,gCAAgC,KAAa;IAC3C,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAClC,CAAC;;;;;;;;;;;;;;;;ACnFD;AAAA,YAAY;AACZ,mBAAmB;AACnB,6DAA6D;AAC7D,gBAAgB;AAChB,eAAe;AAE0D;AACvD;AACD;AAEoC;AACH;AAE5C,oBAAqB,IAAU,EAAE,MAAc,EAAE,MAAa;IAAb,sCAAa;IAClE,IAAM,OAAO,GAAG,kFAAS,CAAC,MAAM,CAAC,CAAC;IAClC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QACb,MAAM,IAAI,KAAK,CACb,cAAW,MAAM,gEAA0D,CAC5E,CAAC;IACJ,CAAC;IACD,IAAM,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnD,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC;AAED,uCAAuC;AACjC,sBAAuB,IAAU,EAAE,OAAe,EAAE,MAAc;IACtE,EAAE,CAAC,CAAC,CAAC,+EAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACvB,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;IAC5B,CAAC;IACD,IAAM,MAAM,GAAG,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7C,0EAAe,CAAC,MAAM,CAAC;QACrB,0EAAe,CAAC,MAAM,CAAC,IAAI,qFAAkB,CAAC,MAAM,CAAC,CAAC;IAExD,MAAM,CAAC,0EAAe,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC/C,CAAC;AAEK,sBAAuB,OAAe,EAAE,MAAc;IAC1D,IAAI,MAAM,GAAG,OAAO,CAAC;IACrB,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,IAAM,qBAAqB,GAAG,4CAA4C,CAAC;IAE3E,IAAM,2BAA2B,GAAG,UAAC,KAAU;QAC7C,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC;IAC/C,CAAC,CAAC;IAEF,qBAAqB,CAAC,SAAS,GAAG,CAAC,CAAC;IACpC,OAAO,CAAC,IAAI,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACpD,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,qBAAqB,EAAE,2BAA2B,CAAC,CAAC;QAC5E,qBAAqB,CAAC,SAAS,GAAG,CAAC,CAAC;QACpC,CAAC,IAAI,CAAC,CAAC;IACT,CAAC;IAED,MAAM,CAAC,MAAM,CAAC;AAChB,CAAC;;;;;;;;;;;;;AClDiC;;;;;;;;;;;ACJqB;AACV;AAE7C,oFAAkB,CAAC,IAAI,EAAE;IACvB,sBAAsB,EAAE,sBAAsB;IAC9C,OAAO,EAAP,UAAQ,GAAW;QACjB,IAAM,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC;QACnB,IAAM,MAAM,GACV,yEAAK,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC;cACzB,IAAI;cACJ,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;QAC9D,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;IACtB,CAAC;CACF,CAAC,CAAC;;;;;;;;;;ACbW;;;;;;;;;;;;;;;;;;;ACA4C;AACC;AACI;AAU/D,IAAM,gBAAgB,GAAG,+BAA+B,CAAC;AAClD,IAAM,mBAAmB,GAAG,uFAAuF,CAAC,KAAK,CAC9H,GAAG,CACJ,CAAC;AACK,IAAM,wBAAwB,GAAG,iDAAiD,CAAC,KAAK,CAC7F,GAAG,CACJ,CAAC;AACK,IAAM,qBAAqB,GAAG,0DAA0D,CAAC,KAAK,CACnG,GAAG,CACJ,CAAC;AACK,IAAM,0BAA0B,GAAG,6BAA6B,CAAC,KAAK,CAC3E,GAAG,CACJ,CAAC;AACK,IAAM,wBAAwB,GAAG,sBAAsB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACnE,IAAM,qBAAqB,GAAgC;IAChE,GAAG,EAAE,WAAW;IAChB,EAAE,EAAE,QAAQ;IACZ,CAAC,EAAE,YAAY;IACf,EAAE,EAAE,cAAc;IAClB,GAAG,EAAE,qBAAqB;IAC1B,IAAI,EAAE,2BAA2B;CAClC,CAAC;AAsBF;IAiBE,gBAAY,MAAkB;QAC5B,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAED,oBAAG,GAAH,UAAI,MAAkB;QACpB,GAAG,CAAC,CAAC,IAAM,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC;YACvB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC9B,QAAQ,CAAC;YACX,CAAC;YACD,IAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACvB,IAAM,GAAG,GAAG,8EAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAI,CAAG,CAAC;YAC3C,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;QACnB,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,SAAS;IACT,UAAU;IACV,uBAAM,GAAN,UAAO,IAAW,EAAE,MAAe;QACjC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACV,MAAM,CAAC,2EAAO,CAAC,IAAI,CAAC,OAAO,CAAC;kBACxB,IAAI,CAAC,OAAmB;kBACvB,IAAI,CAAC,OAA+B,CAAC,UAAU,CAAC;QACvD,CAAC;QAED,EAAE,CAAC,CAAC,2EAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,CAAE,IAAI,CAAC,OAAoB,CAAC,6EAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;QACpD,CAAC;QAED,IAAM,GAAG,GAAG,CAAE,IAAI,CAAC,OAA+B,CAAC,QAAQ;YACzD,gBAAgB,CAAC;aAChB,IAAI,CAAC,MAAM,CAAC;cACX,QAAQ;cACR,YAAY,CAAC;QACjB,MAAM,CAAG,IAAI,CAAC,OAAe,CAAC,GAAG,CAAc,CAAC,6EAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,4BAAW,GAAX,UAAY,IAAW,EAAE,MAAe;QACtC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACV,MAAM,CAAC,2EAAO,CAAC,IAAI,CAAC,YAAY,CAAC;kBAC7B,IAAI,CAAC,YAAwB;kBAC5B,IAAI,CAAC,YAAoC,CAAC,UAAU,CAAC;QAC5D,CAAC;QAED,EAAE,CAAC,CAAC,2EAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,CAAE,IAAI,CAAC,YAAyB,CAAC,6EAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;QACzD,CAAC;QACD,IAAM,GAAG,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,QAAQ,GAAG,YAAY,CAAC;QACpE,MAAM,CAAG,IAAI,CAAC,YAAoB,CAAC,GAAG,CAAc,CAAC,6EAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,eAAe;IACf,UAAU;IAEV,yBAAQ,GAAR,UAAS,IAAW,EAAE,MAAe;QACnC,IAAM,QAAQ,GAAG,2EAAO,CAAC,IAAI,CAAC,SAAqB,CAAC,CAAC;QACrD,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACV,MAAM,CAAC,QAAQ;kBACX,IAAI,CAAC,SAAqB;kBACzB,IAAI,CAAC,SAAiC,CAAC,UAAU,CAAC;QACzD,CAAC;QAED,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YACb,MAAM,CAAE,IAAI,CAAC,SAAsB,CAAC,iFAAY,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1D,CAAC;QAED,IAAM,IAAI,GAAI,IAAI,CAAC,SAAiC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;cACtE,QAAQ;cACR,YAAY,CAAC;QACjB,MAAM,CAAG,IAAI,CAAC,SAAiB,CAAC,IAAI,CAAc,CAAC,iFAAY,CAAC,IAAI,CAAC,CAAC,CAAC;IACzE,CAAC;IAED,4BAAW,GAAX,UAAY,IAAW;QACrB,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,iFAAY,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC;IAC9E,CAAC;IAED,8BAAa,GAAb,UAAc,IAAW;QACvB,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,iFAAY,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;IAC1E,CAAC;IAED,qBAAI,GAAJ,UAAK,IAAU;QACb,MAAM,CAAC,sFAAU,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;IAC/D,CAAC;IAED,+BAAc,GAAd;QACE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;IACxB,CAAC;IAED,+BAAc,GAAd;QACE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;IACxB,CAAC;IAED,yBAAQ,GAAR,UAAS,KAAa,EAAE,OAAe,EAAE,OAAgB;QACvD,EAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC;YACf,MAAM,CAAC,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;QAC/B,CAAC;QAED,MAAM,CAAC,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;IAC/B,CAAC;IAED,wBAAO,GAAP,UAAQ,GAAW,EAAE,KAAc;QACjC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;IACvD,CAAC;IAED,yBAAQ,GAAR,UAAS,GAAW;QAClB,MAAM,CAAC,GAAG,CAAC;IACb,CAAC;IAED,2BAAU,GAAV,UAAW,GAAW;QACpB,MAAM,CAAC,GAAG,CAAC;IACb,CAAC;IAED,+BAAc,GAAd,UAAe,GAAW;QACxB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,GAAG,qBAAqB,CAAC;QAC3F,IAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QACzC,IAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;QAE5D,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YAC3B,MAAM,CAAC,MAAM,CAAC;QAChB,CAAC;QAED,IAAI,CAAC,eAAe,CAClB,GAAG,CACJ,GAAG,WAAW,CAAC,OAAO,CAAC,kBAAkB,EAAE,UAAC,GAAW;YACtD,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IACH,aAAC;AAAD,CAAC;;;;;;;;;;;;;;;ACrMuB;AAEjB,IAAM,kBAAkB,GAAG,cAAc,CAAC;AAE1C,IAAM,iBAAiB,GAAG;IAC/B,GAAG,EAAE,CAAC;IACN,GAAG,EAAE,CAAC,CAAC,gEAAgE;CACxE,CAAC;AAEK,IAAM,0BAA0B,GAAG,eAAe,CAAC;AAEnD,IAAM,UAAU,GAAe;IACpC,6BAA6B;IAC7B,yCAAyC;IACzC,WAAW,EAAE,kBAAkB;IAC/B,2BAA2B;IAC3B,yDAAyD;IACzD,qCAAqC;IAErC,MAAM,EAAE,0EAAmB;IAC3B,WAAW,EAAE,+EAAwB;IAErC,IAAI,EAAE,iBAAiB;IAEvB,QAAQ,EAAE,4EAAqB;IAC/B,WAAW,EAAE,+EAAwB;IACrC,aAAa,EAAE,iFAA0B;IAEzC,aAAa,EAAE,0BAA0B;CAC1C,CAAC;;;;;;;;;;;;;;;;ACpCF;AAAA,2CAA2C;AACS;AACL;AAC0B;AAEzE,IAAM,OAAO,GAA8B,EAAE,CAAC;AAC9C,IAAM,cAAc,GAA8B,EAAE,CAAC;AACrD,IAAI,YAAoB,CAAC;AAEzB,sBAAsB,IAAY;IAChC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACvB,CAAC;AAED,sBAAsB;AAChB,mBAAoB,GAAW;IACnC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACT,MAAM,CAAC,YAAY,CAAC;IACtB,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC;AAEK;IACJ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC;AAEK,sBACJ,YAAwB,EACxB,WAAuB;IAEvB,IAAM,GAAG,GAA2B,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;IAEpE,GAAG,CAAC,CAAC,IAAM,SAAS,IAAI,WAAW,CAAC,CAAC,CAAC;QACpC,EAAE,CAAC,CAAC,CAAC,8EAAU,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;YACxC,QAAQ,CAAC;QACX,CAAC;QACD,EAAE,CAAC,CAAC,4EAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,IAAI,4EAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1E,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;YACpB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;YACvD,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;QACxD,CAAC;QAAC,IAAI,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;YAC1C,GAAG,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;QAC1C,CAAC;QAAC,IAAI,CAAC,CAAC;YACN,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IACD,GAAG,CAAC,CAAC,IAAM,UAAU,IAAI,YAAY,CAAC,CAAC,CAAC;QACtC,EAAE,CAAC,CACD,8EAAU,CAAC,YAAY,EAAE,UAAU,CAAC;YACpC,CAAC,8EAAU,CAAC,WAAW,EAAE,UAAU,CAAC;YACpC,4EAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,CACnC,CAAC,CAAC,CAAC;YACD,6DAA6D;YAC7D,GAAG,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IACD,MAAM,CAAC,GAAG,CAAC;AACb,CAAC;AAED,qEAAqE;AACrE,uEAAuE;AACvE,cAAc;AACR,4BAA6B,GAAW,EAAE,MAAmB;IACjE,IAAI,IAAY,CAAC;IACjB,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACR,IAAI,GAAG,+EAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAExE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACT,YAAY,GAAG,IAAI,CAAC;QACtB,CAAC;IACH,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC;AAC5B,CAAC;AAEK,sBAAuB,IAAY,EAAE,MAAmB;IAC5D,EAAE,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC;QACpB,qBAAqB;QACrB,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;QACrB,MAAM,CAAC,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;IAEnB,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,6DAAM,CAAC,YAAY,CAAC,oEAAU,EAAE,MAAM,CAAC,CAAC,CAAC;IAE7D,EAAE,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,UAAS,CAAS;YAC7C,YAAY,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,gDAAgD;IAChD,gEAAgE;IAChE,yDAAyD;IACzD,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAEzB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACvB,CAAC;;;;;;;;;;;AClGoD;AACL;AAEhD,iFAAc,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UAAS,IAAU;IACtD,MAAM,CAAC,4EAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACpC,CAAC,CAAC,CAAC;;;;;;;;;;;;;ACLkD;AAEA;AAErD,aAAa;AACb,iFAAc,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,UAAS,IAAU;IACjD,MAAM,CAAC,iFAAY,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACzC,CAAC,CAAC,CAAC;AAEH,iFAAc,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,UAC/B,IAAU,EACV,MAAc,EACd,MAAe;IAEf,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAW,CAAC;AAC9C,CAAC,CAAC,CAAC;AAEH,iFAAc,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,UAChC,IAAU,EACV,MAAc,EACd,MAAe;IAEf,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAW,CAAC;AAC5C,CAAC,CAAC,CAAC;AAEH,iFAAc,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,UACjC,IAAU,EACV,MAAc,EACd,MAAe;IAEf,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAW,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,iFAAc,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,UAAS,IAAU;IACjD,MAAM,CAAC,iFAAY,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACzC,CAAC,CAAC,CAAC;AACH,iFAAc,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,UAAS,IAAU;IACjD,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AAEG,4BAA6B,IAAU,EAAE,MAAc;IAC3D,MAAM,CAAC,CAAC,iFAAY,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC;AAChE,CAAC;AAEK,yBAA0B,IAAU;IACxC,MAAM,CAAC,iFAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC;;;;;;;;;;;;;AC9CoD;AACL;AAEhD,aAAa;AACb,iFAAc,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,UAAS,IAAU;IAC5D,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACzC,CAAC,CAAC,CAAC;AAEG,sBAAuB,IAAU;IACrC,IAAM,KAAK,GAAG,CAAC,4EAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACpC,IAAM,KAAK,GAAG,CAAC,4EAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACrC,IAAM,QAAQ,GAAG,KAAK,GAAG,KAAK,CAAC;IAC/B,IAAM,MAAM,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;IAEnC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;AAC3C,CAAC;AAEK,uBAAwB,IAAU;IACtC,IAAM,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,IAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;IAC9C,IAAM,MAAM,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;IAEnC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;AACvC,CAAC;;;;;;;;;;;ACvBD;AAAA,kDAAkD;AAClD,qDAAqD;AACrD,4CAA4C;AAC5C,kDAAkD;AAClD,2FAA2F;AAC3F,kDAAkD;AAClD,sDAAsD;AACtD,uCAAuC;AACvC,6CAA6C;AAC7C,yDAAyD;AAEzD,aAAa;AAE4D;AACpB;AACjB;AAGpC,iBAAiB,IAAU;IACzB,MAAM,CAAC,6EAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;AACnC,CAAC;AAED,iBAAiB,IAAU;IACzB,MAAM,CAAC,6EAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AAC9B,CAAC;AAED,iFAAc,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UACnC,IAAU,EACV,MAAc,EACd,MAAe;IAEf,MAAM,CAAC,6EAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACrC,CAAC,CAAC,CAAC;AACH,iFAAc,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UACnC,IAAU,EACV,MAAc,EACd,MAAe;IAEf,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACpC,CAAC,CAAC,CAAC;AACH,iFAAc,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UACnC,IAAU,EACV,MAAc,EACd,MAAe;IAEf,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACpC,CAAC,CAAC,CAAC;AAEH,iFAAc,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,UAChC,IAAU,EACV,MAAc,EACd,MAAe;IAEf,MAAM,CAAC,KAAG,OAAO,CAAC,IAAI,CAAC,GAAG,gEAAQ,CAAC,+EAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAG,CAAC;AAC5D,CAAC,CAAC,CAAC;AAEH,iFAAc,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAClC,IAAU,EACV,MAAc,EACd,MAAe;IAEf,MAAM,CAAC,KAAG,OAAO,CAAC,IAAI,CAAC,GAAG,gEAAQ,CAAC,+EAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,gEAAQ,CAChE,+EAAU,CAAC,IAAI,CAAC,EAChB,CAAC,CACA,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,iFAAc,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,UAChC,IAAU,EACV,MAAc,EACd,MAAe;IAEf,MAAM,CAAC,KAAG,6EAAQ,CAAC,IAAI,CAAC,GAAG,gEAAQ,CAAC,+EAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAG,CAAC;AAC7D,CAAC,CAAC,CAAC;AAEH,iFAAc,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAClC,IAAU,EACV,MAAc,EACd,MAAe;IAEf,MAAM,CAAC,KAAG,6EAAQ,CAAC,IAAI,CAAC,GAAG,gEAAQ,CAAC,+EAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,gEAAQ,CACjE,+EAAU,CAAC,IAAI,CAAC,EAChB,CAAC,CACA,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,kBAAkB,KAAa,EAAE,SAAkB;IACjD,iFAAc,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,UAChC,IAAU,EACV,MAAc,EACd,MAAe;QAEf,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,6EAAQ,CAAC,IAAI,CAAC,EAAE,+EAAU,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;AACL,CAAC;AAED,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AACpB,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;;;;;;;;;;;;;;;;;;;ACjGG;AACD;AACA;AACP;AACE;AACD;AACC;AACF;AACe;AACf;;;;;;;;;;;ACTqC;AACF;AAEnD,iFAAc,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UAAS,IAAU;IACtD,MAAM,CAAC,+EAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;;;;;;;;;;;;;;ACLkD;AACjB;AAEL;AACkB;AAE3C,qBAAsB,IAAY,EAAE,KAAa;IACrD,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,CAAC,GAAG,CAAC;IACb,CAAC;IACD,IAAM,QAAQ,GAAG,2DAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAChC,IAAI,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC;IAEhC,MAAM,CAAC,QAAQ,KAAK,CAAC;UACjB,iEAAU,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE;UAC1B,EAAE,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC;AAED,aAAa;AAEb,iFAAc,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UACnC,IAAU,EACV,MAAc;IAEd,MAAM,CAAC,CAAC,6EAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;AACzC,CAAC,CAAC,CAAC;AAEH,iFAAc,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,UAChC,IAAU,EACV,MAAc,EACd,MAAe;IAEf,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,CAAW,CAAC;AACpD,CAAC,CAAC,CAAC;AAEH,iFAAc,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,UACjC,IAAU,EACV,MAAc,EACd,MAAe;IAEf,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAW,CAAC;AAC/C,CAAC,CAAC,CAAC;;;;;;;;;;;ACzCkD;AACF;AAEnD,iFAAc,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UAAS,IAAU;IACtD,MAAM,CAAC,+EAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;ACLH;AAAA;;;;;;GAMG;AACsC;AACL;AACS;AACO;AAEpD,yBAAyB,IAAY,EAAE,GAAW,EAAE,GAAW;IAC7D,uFAAuF;IACvF,IAAM,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC;IAC1B,6DAA6D;IAC7D,IAAM,KAAK,GAAG,CAAC,CAAC,GAAG,qEAAa,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,SAAS,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;IAEtE,MAAM,CAAC,CAAC,KAAK,GAAG,GAAG,GAAG,CAAC,CAAC;AAC1B,CAAC;AAED,2GAA2G;AACrG,4BACJ,IAAY,EACZ,IAAY,EACZ,OAAe,EACf,GAAW,EACX,GAAW;IAEX,IAAM,YAAY,GAAG,CAAC,CAAC,GAAG,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7C,IAAM,UAAU,GAAG,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACnD,IAAM,SAAS,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,YAAY,GAAG,UAAU,CAAC;IACjE,IAAI,OAAe,CAAC;IACpB,IAAI,YAAoB,CAAC;IAEzB,EAAE,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC;QACnB,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC;QACnB,YAAY,GAAG,iEAAU,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IACjD,CAAC;IAAC,IAAI,CAAC,EAAE,CAAC,CAAC,SAAS,GAAG,iEAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxC,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC;QACnB,YAAY,GAAG,SAAS,GAAG,iEAAU,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAAC,IAAI,CAAC,CAAC;QACN,OAAO,GAAG,IAAI,CAAC;QACf,YAAY,GAAG,SAAS,CAAC;IAC3B,CAAC;IAED,MAAM,CAAC;QACL,IAAI,EAAE,OAAO;QACb,SAAS,EAAE,YAAY;KACxB,CAAC;AACJ,CAAC;AAEK,oBACJ,IAAU,EACV,GAAW,EACX,GAAW;IAEX,IAAM,UAAU,GAAG,eAAe,CAAC,gFAAW,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAChE,IAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,0EAAY,CAAC,IAAI,CAAC,GAAG,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACvE,IAAI,OAAe,CAAC;IACpB,IAAI,OAAe,CAAC;IAEpB,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;QACb,OAAO,GAAG,gFAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChC,OAAO,GAAG,IAAI,GAAG,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAClD,CAAC;IAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,WAAW,CAAC,gFAAW,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3D,OAAO,GAAG,IAAI,GAAG,WAAW,CAAC,gFAAW,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC1D,OAAO,GAAG,gFAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC;IAAC,IAAI,CAAC,CAAC;QACN,OAAO,GAAG,gFAAW,CAAC,IAAI,CAAC,CAAC;QAC5B,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IAED,MAAM,CAAC;QACL,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,OAAO;KACd,CAAC;AACJ,CAAC;AAEK,qBAAsB,IAAY,EAAE,GAAW,EAAE,GAAW;IAChE,IAAM,UAAU,GAAG,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACnD,IAAM,cAAc,GAAG,eAAe,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC3D,MAAM,CAAC,CAAC,iEAAU,CAAC,IAAI,CAAC,GAAG,UAAU,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;AAC9D,CAAC;;;;;;;;;;;;;ACnFoD;AAEF;AAEnD,iFAAc,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UACnC,IAAU,EACV,MAAc,EACd,MAAc;IAEd,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AACH,iFAAc,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UAAS,IAAU;IACtD,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEG,iBAAkB,IAAU,EAAE,MAAc;IAChD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAEK,oBAAqB,IAAU;IACnC,MAAM,CAAC,gFAAU,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACrC,CAAC;;;;;;;;;;;;;ACrBoD;AACD;AAEpD,aAAa;AAEb,iBAAiB,IAAU;IACzB,MAAM,CAAC,gFAAW,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;AACtC,CAAC;AAED,iFAAc,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,UAAS,IAAU;IACjD,IAAM,CAAC,GAAG,gFAAW,CAAC,IAAI,CAAC,CAAC;IAC5B,MAAM,CAAC,CAAC,IAAI,IAAI,GAAG,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,iFAAc,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UAAS,IAAU;IACvD,MAAM,CAAC,CAAC,gFAAW,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAChD,CAAC,CAAC,CAAC;AAEH,iFAAc,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AACjD,iFAAc,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AAClD,iFAAc,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AAEnD,oBAAqB,IAAY;IACrC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC;AACtC,CAAC;AAEK,oBAAqB,IAAY;IACrC,MAAM,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,GAAG,KAAK,CAAC,CAAC,IAAI,IAAI,GAAG,GAAG,KAAK,CAAC,CAAC;AAClE,CAAC;;;;;;;;;;;;;AC5BK,kBACJ,GAAW,EACX,YAAoB,EACpB,SAAmB;IAEnB,IAAM,SAAS,GAAG,KAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAG,CAAC;IACrC,IAAM,WAAW,GAAG,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC;IACpD,IAAM,IAAI,GAAG,GAAG,IAAI,CAAC,CAAC;IACtB,MAAM,CAAC,CACL,CAAC,IAAI,GAAG,CAAC,SAAS,GAAG,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC;QACrC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;aACnC,QAAQ,EAAE;aACV,MAAM,CAAC,CAAC,CAAC;QACZ,SAAS,CACV,CAAC;AACJ,CAAC;AAEK,aAAc,CAAS,EAAE,CAAS;IACtC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAEK,kBAAmB,MAAc;IACrC,MAAM,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AAClE,CAAC;AAEK,uBACJ,CAAU,EACV,CAAU,EACV,CAAU,EACV,CAAU,EACV,CAAU,EACV,CAAU,EACV,EAAW;IAEX,IAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IAEvD,uDAAuD;IACvD,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IACD,MAAM,CAAC,IAAI,CAAC;AACd,CAAC;;;;;;;;;;;;;;;;ACxC+C;AAE1C,iBACJ,KAAW,EACX,KAAW,EACX,KAAkC;IAAlC,8CAAkC;IAElC,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACrB,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,EAAE,CAAC,CAAC,KAAK,KAAK,cAAc,CAAC,CAAC,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;IAC3C,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,sEAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;AAC3D,CAAC;AAEK,kBACJ,KAAW,EACX,KAAW,EACX,KAAkC;IAAlC,8CAAkC;IAElC,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACrB,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,EAAE,CAAC,CAAC,KAAK,KAAK,cAAc,CAAC,CAAC,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;IAC3C,CAAC;IAED,MAAM,CAAC,oEAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;AACzD,CAAC;AAEK,mBACJ,IAAU,EACV,IAAU,EACV,EAAQ,EACR,KAAiB,EACjB,WAAkB;IAAlB,gDAAkB;IAElB,IAAM,SAAS,GACb,WAAW,CAAC,CAAC,CAAC,KAAK,GAAG;UAClB,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC;UAC1B,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACnC,IAAM,UAAU,GACd,WAAW,CAAC,CAAC,CAAC,KAAK,GAAG;UAClB,QAAQ,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC;UACzB,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;IAEhC,MAAM,CAAC,SAAS,IAAI,UAAU,CAAC;AACjC,CAAC;AAEK,gBACJ,KAAW,EACX,KAAW,EACX,KAAkC;IAAlC,8CAAkC;IAElC,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACrB,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,EAAE,CAAC,CAAC,KAAK,KAAK,cAAc,CAAC,CAAC,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;IAC7C,CAAC;IAED,IAAM,OAAO,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;IAEhC,MAAM,CAAC,CACL,sEAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,EAAE,IAAI,OAAO;QAC1C,OAAO,IAAI,oEAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,EAAE,CACzC,CAAC;AACJ,CAAC;AAEK,uBACJ,KAAW,EACX,KAAW,EACX,KAAkB;IAElB,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACrE,CAAC;AAEK,wBACJ,KAAW,EACX,KAAW,EACX,KAAkB;IAElB,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACtE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;ACzF2C;AAEtC,kBAAmB,IAAU,EAAE,KAAa;IAAb,qCAAa;IAChD,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;AACtD,CAAC;AAEK,oBAAqB,IAAU,EAAE,KAAa;IAAb,qCAAa;IAClD,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;AAC1D,CAAC;AAEK,oBAAqB,IAAU,EAAE,KAAa;IAAb,qCAAa;IAClD,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;AAC1D,CAAC;AAEK,sBAAuB,IAAU,EAAE,KAAa;IAAb,qCAAa;IACpD,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;AAClD,CAAC;AAEK,iBAAkB,IAAU,EAAE,KAAa;IAAb,qCAAa;IAC/C,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;AACpD,CAAC;AAEK,kBAAmB,IAAU,EAAE,KAAa;IAAb,qCAAa;IAChD,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;AACtD,CAAC;AAEK,qBAAsB,IAAU,EAAE,KAAa;IAAb,qCAAa;IACnD,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;AAC5D,CAAC;AAEK,4BAA6B,IAAU;IAC3C,MAAM,CAAC,yEAAU,CACf,IAAI,CAAC,WAAW,EAAE,EAClB,IAAI,CAAC,QAAQ,EAAE,EACf,CAAC,EACD,IAAI,CAAC,QAAQ,EAAE,EACf,IAAI,CAAC,UAAU,EAAE,EACjB,IAAI,CAAC,UAAU,EAAE,CAClB,CAAC;AACJ,CAAC;AAEK,qBAAsB,IAAU;IACpC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC3D,CAAC;AAEK,sBAAuB,IAAY,EAAE,KAAa;IACtD,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;AAC7D,CAAC;AAEK,0BAA2B,IAAU,EAAE,cAAsB;IACjE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,cAAc,CAAC;AAC1C,CAAC;AAEK,qBAAsB,KAAW,EAAE,KAAW;IAClD,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACrB,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC;AACzE,CAAC;AAEK,oBAAqB,KAAW,EAAE,KAAW;IACjD,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACrB,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,WAAW,CAAC,KAAK,CAAC,CAAC;AACnD,CAAC;AAEK,mBAAoB,KAAW,EAAE,KAAW;IAChD,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACrB,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAC,CACL,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC;QACxB,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC;QACzB,OAAO,CAAC,KAAK,CAAC,KAAK,OAAO,CAAC,KAAK,CAAC,CAClC,CAAC;AACJ,CAAC;;;;;;;;;;;AC7ED;AAAA,IAAM,eAAe,GAAa;IAChC,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,GAAG,EAAE,CAAC;IACN,IAAI,EAAE,CAAC;IACP,MAAM,EAAE,CAAC;IACT,OAAO,EAAE,CAAC;CACX,CAAC;AAEI,oBACJ,IAAa,EACb,KAAS,EACT,GAAO,EACP,IAAQ,EACR,MAAU,EACV,OAAW;IAJX,iCAAS;IACT,6BAAO;IACP,+BAAQ;IACR,mCAAU;IACV,qCAAW;IAEX,IAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;IACzB,MAAM,CAAC,IAAI,IAAI,CACb,IAAI,IAAI,KAAK,CAAC,WAAW,EAAE,EAC3B,KAAK,EACL,GAAG,EACH,IAAI,EACJ,MAAM,EACN,OAAO,CACR,CAAC;AACJ,CAAC;AAEK,mBAAoB,IAAU,EAAE,IAAc;IAClD,IAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;IAEvD,MAAM,CAAC,UAAU,CACf,IAAI,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,IAAI,EAC/B,IAAI,CAAC,QAAQ,EAAE,GAAG,KAAK,CAAC,KAAK,EAC7B,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,GAAG,EAC1B,IAAI,CAAC,QAAQ,EAAE,GAAG,KAAK,CAAC,IAAI,EAC5B,IAAI,CAAC,UAAU,EAAE,GAAG,KAAK,CAAC,MAAM,EAChC,IAAI,CAAC,UAAU,EAAE,GAAG,KAAK,CAAC,OAAO,CAClC,CAAC;AACJ,CAAC;AAEK,iBAAkB,IAAU,EAAE,IAAc;IAChD,MAAM,CAAC,UAAU,CACf,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,EACrC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EACnC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,EAChC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,EAClC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EACtC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,CACxC,CAAC;AACJ,CAAC;AAED,gBAAgB,GAAW,EAAE,GAAW;IACtC,MAAM,CAAC,OAAO,GAAG,KAAK,QAAQ,GAAG,GAAG,GAAG,GAAG,CAAC;AAC7C,CAAC;;;;;;;;;;;;ACvDmD;AAE9C,iBAAkB,IAAU,EAAE,KAAiB;IACnD,IAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,CAAC,sEAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAC7B,CAAC;AAEK,eAAgB,IAAU,EAAE,KAAiB;IACjD,IAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACnC,IAAM,KAAK,aAAK,GAAC,KAAK,IAAG,CAAC,KAAE,CAAC;IAC7B,IAAM,MAAM,GAAG,wEAAS,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACvC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3B,MAAM,CAAC,MAAM,CAAC;;AAChB,CAAC;AAED,sBAAsB,KAAiB;IACrC,IAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACd,KAAK,MAAM;YACT,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;QACjB,mBAAmB;QACnB,KAAK,OAAO;YACV,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QACf,mBAAmB;QACnB,KAAK,MAAM,CAAC;QACZ,KAAK,KAAK;YACR,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QAChB,mBAAmB;QACnB,KAAK,MAAM;YACT,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAClB,mBAAmB;QACnB,KAAK,QAAQ;YACX,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;IAIrB,CAAC;IAED,MAAM,CAAC,IAAI,CAAC;AACd,CAAC;;;;;;;;;;;;;;;;;ACzCmC;AAE9B,qBAAsB,IAAU;IACpC,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;AACxC,CAAC;AACK,oBAAqB,EAAY;IACrC,MAAM,CAAC,CACL,EAAE,YAAY,QAAQ;QACtB,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,mBAAmB,CAC3D,CAAC;AACJ,CAAC;AAEK,iBAAkB,KAAU;IAChC,MAAM,CAAC,CACL,KAAK,YAAY,KAAK;QACtB,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,gBAAgB,CAC3D,CAAC;AACJ,CAAC;AAEK,oBAAqB,CAAM,CAAC,UAAU,EAAE,CAAkB;IAC9D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACpD,CAAC;AAEK,kBAAmB,KAAU,CAAC,UAAU;IAC5C,+DAA+D;IAC/D,gBAAgB;IAChB,MAAM,CAAC,CACL,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,iBAAiB,CAC7E,CAAC;AACJ,CAAC;AAEK,qBAAsB,KAAU;IACpC,MAAM,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;AAC1B,CAAC;AAEK,eAAgB,mBAAoC;IACxD,IAAM,aAAa,GAAG,CAAC,mBAAmB,CAAC;IAC3C,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,EAAE,CAAC,CAAC,aAAa,KAAK,CAAC,IAAI,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACnD,KAAK,GAAG,gEAAQ,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC;AACf,CAAC;;;;;;;;;;;;AC5CD;AAAA,uCAAC;AAQsB;AACkD;AAEzE,oEAAoE;AAE7D,IAAM,kCAAuC;IAClD,OAAO,EAAE;IACT,WAAW,EAAE,4EAAW,cAAM,kCAAwB;IACtD,KAAK,EAAE;CACR,CAAC;AAEF;;GAEG;AAEH;IAAA;QACE,2CAA2C;QAC1C,oBAAe,GAAQ,IAAI,CAAC;QAC7B,0CAA0C;QACzC,qBAAgB,GAAQ,KAAK,CAAC;QAE9B,UAAK,GAAG,KAAK,CAAC;QAKL,aAAQ,GAAQ,QAAQ,CAAC,SAAS,CAAC;QACnC,cAAS,GAAQ,QAAQ,CAAC,SAAS,CAAC;IAmEhD,CAAC;IAjEC,gBAAgB;IAEhB,yCAAO,GAAP;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YACpB,MAAM,CAAC;QACT,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,0CAAQ,GAAR;QACE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;IAED,sBAAc,8CAAS;aAAvB;YACE,MAAM,CAAC,OAAO,IAAI,CAAC,eAAe,KAAK,WAAW;kBAC9C,IAAI,CAAC,eAAe;kBACpB,IAAI,CAAC;QACX,CAAC;;;OAAA;IAED,sBAAc,+CAAU;aAAxB;YACE,MAAM,CAAC,OAAO,IAAI,CAAC,gBAAgB,KAAK,WAAW;kBAC/C,IAAI,CAAC,gBAAgB;kBACrB,KAAK,CAAC;QACZ,CAAC;;;OAAA;IAED,wCAAM,GAAN,UAAO,KAAc;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;IAC7D,CAAC;IAED,uBAAuB;IACvB,gBAAgB;IAChB,4CAAU,GAAV,UAAW,KAAU;QACnB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;IACxD,CAAC;IAED,kDAAgB,GAAhB,UAAiB,UAAmB;QAClC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,kDAAgB,GAAhB,UAAiB,EAAkB;QACjC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,mDAAiB,GAAjB,UAAkB,EAAY;QAC5B,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IACI,kCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,eAAe;oBACzB,SAAS,EAAE,CAAC,+BAA+B,CAAC;iBAC7C,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,sCAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACK,sCAAc,GAA2C;QAChE,iBAAiB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACrC,kBAAkB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACtC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,cAAc,EAAG,EAAE,EAAE;QAC3D,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,mEAAY,EAAE,IAAI,EAAE,CAAC,OAAO,EAAG,EAAE,EAAE;KACtD,CAAC;IACF,8BAAC;CAAA;AA/EmC;;;;;;;;;;;;ACvBpC;AAAA,uCAAC;AAIsB;AACkD;AAElE,IAAM,+BAAoC;IAC/C,OAAO,EAAE;IACT,WAAW,EAAE,4EAAW,cAAM,+BAAqB;IACnD,KAAK,EAAE;CACR,CAAC;AAEF;;;GAGG;AAEH;IAgBE,8BAAoB,EAAc,EAAU,GAAsB;QAA9C,OAAE,GAAF,EAAE,CAAY;QAAU,QAAG,GAAH,GAAG,CAAmB;QAflE,aAAQ,GAAQ,QAAQ,CAAC,SAAS,CAAC;QACnC,cAAS,GAAQ,QAAQ,CAAC,SAAS,CAAC;IAepC,CAAC;IALD,sBAAI,0CAAQ;aAAZ;YACE,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,KAAK,CAAC;QACtC,CAAC;;;OAAA;IAMD,sCAAO,GAAP;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC9C,MAAM,CAAC;QACT,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;YACvB,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAE1B,MAAM,CAAC;QACT,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YACjC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC3B,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,uCAAQ,GAAR;QACE,IAAI,CAAC,WAAW,GAAG,OAAO,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC;IAC7D,CAAC;IAED,qCAAM,GAAN;QACE,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAED,uBAAuB;IACvB,gBAAgB;IAChB,yCAAU,GAAV,UAAW,KAAU;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;IAC1B,CAAC;IAED,+CAAgB,GAAhB,UAAiB,EAAO;QACtB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,gDAAiB,GAAjB,UAAkB,EAAO;QACvB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IACI,+BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,YAAY;oBACtB,SAAS,EAAE,CAAC,4BAA4B,CAAC;iBAC1C,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,mCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,iEAAU,GAAG;QACpB,EAAC,IAAI,EAAE,wEAAiB,GAAG;KAC1B,EAH6F,CAG7F,CAAC;IACK,mCAAc,GAA2C;QAChE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACjC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC3B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,cAAc,EAAG,EAAE,EAAE;QAC9D,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,mEAAY,EAAE,IAAI,EAAE,CAAC,OAAO,EAAG,EAAE,EAAE;KACtD,CAAC;IACF,2BAAC;CAAA;AAhFgC;;;;;;;;;;;;;AClB6B;AAEQ;AACN;AAGhE;IAAA;IAaA,CAAC;IAZQ,qBAAO,GAAd;QACE,MAAM,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IACpD,CAAC;IACI,wBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,YAAY,EAAE,CAAC,2FAAuB,EAAE,qFAAoB,CAAC;oBAC7D,OAAO,EAAE,CAAC,2FAAuB,EAAE,qFAAoB,CAAC;iBACzD,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,4BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,oBAAC;CAAA;AAbyB;;;;;;;;;;;;;;;ACN4C;AACN;AACf;;;;;;;;;;;;;ACFjD;AAAA,qCAAC;AACD;;;;;;GAMG;AACH;;;;;;;;GAQG;AAIoB;AAEsB;AAEM;AAEnD,IAAY,SAIX;AAJD,WAAY;IACV,+CAAO;IACP,yCAAI;IACJ,yCAAI;AACN,CAAC,EAJW,+BAIX;AAED;;GAEG;AAEH;IAmDE,2BAAY,MAAsB,EAAU,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;QA7C1D,4GAA4G;QAE5G,sBAAiB,GAAsB,IAAI,mEAAY,CAAM,KAAK,CAAC,CAAC;QAkC1D,YAAO,GAA+B,IAAI,0DAAU,EAAkB,CAAC;QAGvE,cAAS,GAAG,KAAK,CAAC;QAO1B,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAzCD,sBAAI,0CAAW;aAMf;YACE,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC;QAClC,CAAC;QAVD,wDAAwD;aAExD,UAAgB,KAAa;YAC3B,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,KAAK,KAAK,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;gBAC9D,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;;;OAAA;IAWD,sBAAI,uCAAQ;QALZ;;;WAGG;aAEH;YACE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;aAED,UAAa,KAAa;YACxB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,CAAC;;;OALA;IAOD,sBAAI,qCAAM;aAAV;YACE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QAChC,CAAC;;;OAAA;IASD,sBAAI,oCAAK;aAAT;YACE,MAAM,CAAC,CAAC,6DAAK,EAAE,CAAC;QAClB,CAAC;;;OAAA;IAMD,uCAAW,GAAX;QACE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACH,oCAAQ,GAAR,UAAS,KAAqB;QAC5B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACxB,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC,CAAC;YAClC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;YACrB,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,uCAAW,GAAX,UAAY,KAAqB;QAAjC,iBA6BC;QA5BC,IAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAE7C,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,KAAK,QAAQ,CAAC,CAAC,CAAC;YAC1C,2BAA2B;YAC3B,IAAI,gBAAc,GAAW,KAAK,CAAC,CAAC;YACpC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;gBAC5B,mEAAmE;gBACnE,oEAAoE;gBACpE,+DAA+D;gBAC/D,gBAAc,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;sBACnC,QAAQ;sBACR,IAAI,CAAC,MAAM,GAAG,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAC;YACrC,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAE9B,6DAA6D;YAC7D,UAAU,CAAC;gBACT,KAAI,CAAC,OAAO,CAAC,gBAAc,CAAC,CAAC;YAC/B,CAAC,EAAE,CAAC,CAAC,CAAC;QACR,CAAC;QAAC,IAAI,CAAC,CAAC;YACN,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC9B,IAAM,mBAAiB,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACtD,UAAU,CAAC;gBACT,kEAAkE;gBAClE,KAAI,CAAC,mBAAmB,GAAG,mBAAiB,CAAC;gBAC7C,KAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAI,CAAC,mBAAmB,CAAC,CAAC;YACxD,CAAC,EAAE,CAAC,CAAC,CAAC;QACR,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,qCAAS,GAAT,UAAU,KAAa;QAAb,qCAAa;QACrB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACpE,CAAC;IAED;;;OAGG;IACH,yCAAa,GAAb,UAAc,KAAa;QAAb,qCAAa;QACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACpE,CAAC;IAED;;;OAGG;IACH,uCAAW,GAAX,UAAY,KAAa;QACvB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,gCAAI,GAAJ;QACE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,iCAAK,GAAL;QACE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YAClB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,gDAAoB,GAApB;QACE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,UAAC,KAAqB,IAAK,YAAK,CAAC,MAAM,EAAZ,CAAY,CAAC,CAAC;IACzE,CAAC;IAED;;;;OAIG;IACH,kCAAM,GAAN,UAAO,KAAa;QAClB,MAAM,CAAC,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;IAC1C,CAAC;IAED;;;;;;OAMG;IACK,8CAAkB,GAA1B,UAA2B,SAAoB,EAAE,KAAc;QAC7D,IAAI,cAAc,GAAG,CAAC,CAAC;QAEvB,EAAE,CAAC,CACD,CAAC,KAAK;YACN,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;gBAC5B,SAAS,KAAK,SAAS,CAAC,IAAI;gBAC5B,IAAI,CAAC,MAAM,CACf,CAAC,CAAC,CAAC;YACD,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC;QAED,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YAClB,KAAK,SAAS,CAAC,IAAI;gBACjB,wDAAwD;gBACxD,8DAA8D;gBAC9D,cAAc,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC;sBACnD,IAAI,CAAC,mBAAmB,GAAG,CAAC;sBAC5B,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;gBACzD,KAAK,CAAC;YACR,KAAK,SAAS,CAAC,IAAI;gBACjB,yDAAyD;gBACzD,+DAA+D;gBAC/D,cAAc;oBACZ,IAAI,CAAC,mBAAmB,GAAG,CAAC;0BACxB,IAAI,CAAC,mBAAmB,GAAG,CAAC;0BAC5B,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM;8BACrB,IAAI,CAAC,mBAAmB;8BACxB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;gBAC9B,KAAK,CAAC;YACR;gBACE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACzC,CAAC;QAED,MAAM,CAAC,cAAc,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACK,mCAAO,GAAf,UAAgB,KAAa;QAC3B,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjB,IAAI,CAAC,KAAK,EAAE,CAAC;YAEb,MAAM,CAAC;QACT,CAAC;QACD,IAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAChE,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;YACjB,YAAY,CAAC,MAAM,GAAG,KAAK,CAAC;QAC9B,CAAC;QACD,IAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC1C,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YACd,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;YACjC,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YACzB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED;;OAEG;IACK,wCAAY,GAApB;QAAA,iBAsBC;QArBC,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;QAChC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC;YACrC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;gBACnD,MAAM,CAAC,WAAW,CAAC;oBACjB,IAAM,SAAS,GAAG,CAAC,KAAI,CAAC,QAAQ,CAAC;oBACjC,KAAI,CAAC,MAAM,CAAC,GAAG,CAAC;wBACd,EAAE,CAAC,CACD,KAAI,CAAC,SAAS;4BACd,CAAC,KAAK,CAAC,KAAI,CAAC,QAAQ,CAAC;4BACrB,SAAS,GAAG,CAAC;4BACb,KAAI,CAAC,MAAM,CAAC,MACd,CAAC,CAAC,CAAC;4BACD,KAAI,CAAC,SAAS,EAAE,CAAC;wBACnB,CAAC;wBAAC,IAAI,CAAC,CAAC;4BACN,KAAI,CAAC,KAAK,EAAE,CAAC;wBACf,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC,EAAE,QAAQ,CAAC,CAAC;YACf,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;OAEG;IACK,sCAAU,GAAlB;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;YACzB,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACpC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IACI,4BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,UAAU;oBACpB,QAAQ,EAAE,g8BAAg8B;iBAC38B,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,gCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,wEAAc,GAAG;QACxB,EAAC,IAAI,EAAE,6DAAM,GAAG;KACf,EAH6F,CAG7F,CAAC;IACK,gCAAc,GAA2C;QAChE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC5B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,mBAAmB,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QACxC,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACjC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;KAC7B,CAAC;IACF,wBAAC;CAAA;AApS6B;;;;;;;;;;;ACpCa;AAG3C;IAAA;QACE,kDAAkD;QAClD,aAAQ,GAAG,IAAI,CAAC;QAEhB,uDAAuD;QACvD,YAAO,GAAG,KAAK,CAAC;QAEhB,0DAA0D;QAC1D,WAAM,GAAG,KAAK,CAAC;IAOjB,CAAC;IANM,yBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,6BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,qBAAC;CAAA;AAf0B;;;;;;;;;;;;;;;ACHoB;AACe;AAEL;AACN;AACA;AAGnD;IAAA;IAeA,CAAC;IAdQ,sBAAO,GAAd;QACE,MAAM,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IACrD,CAAC;IACI,yBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC,qEAAY,CAAC;oBACvB,YAAY,EAAE,CAAC,wEAAc,EAAE,8EAAiB,CAAC;oBACjD,OAAO,EAAE,CAAC,wEAAc,EAAE,8EAAiB,CAAC;oBAC5C,SAAS,EAAE,CAAC,wEAAc,CAAC;iBAC5B,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,6BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,qBAAC;CAAA;AAf0B;;;;;;;;;;;;;;;;;ACR8B;AACN;AACA;AACA;;;;;;;;;;;;ACG5B;AAEkC;AAGzD;IAcE,wBAAY,QAA2B;QARvC,+CAA+C;QAG/C,aAAQ,GAAG,IAAI,CAAC;QAMd,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,8EAA8E;IAC9E,iCAAQ,GAAR;QACE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,kFAAkF;IAClF,oCAAW,GAAX;QACE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IACI,yBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,OAAO;oBACjB,QAAQ,EAAE,uGAIT;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,6BAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,8EAAiB,GAAG;KAC1B,EAF6F,CAE7F,CAAC;IACK,6BAAc,GAA2C;QAChE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,cAAc,EAAG,EAAE,EAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC5E,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,YAAY,EAAG,EAAE,EAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,qBAAqB,EAAG,EAAE,EAAE;KAClH,CAAC;IACF,qBAAC;CAAA;AA7C0B;;;;;;;;;;ACX3B;AAAA,kFAAC;AASsB;AAGvB;IA8BE,2BAAoB,GAAe,EAAU,SAAoB;QAA7C,QAAG,GAAH,GAAG,CAAY;QAAU,cAAS,GAAT,SAAS,CAAW;QA7BjE,oDAAoD;QACnD,cAAS,GAAsB,IAAI,mEAAY,EAAE,CAAC;QACnD,0DAA0D;QACzD,aAAQ,GAAsB,IAAI,mEAAY,EAAE,CAAC;QAGlD,QAAQ;QAIR,eAAU,GAAG,IAAI,CAAC;QAClB,SAAS;QACR,gBAAW,GAAG,KAAK,CAAC;QACrB,cAAc;QACb,eAAU,GAAG,IAAI,CAAC;QACnB,kBAAkB;QACjB,iBAAY,GAAG,KAAK,CAAC;IActB,CAAC;IAVD,sBAAI,uCAAQ;aAKZ;YACE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;QACzB,CAAC;QATD,gEAAgE;aAEhE,UAAa,KAAc;YACzB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,CAAC;;;OAAA;IASD,mDAAmD;IACnD,kCAAM,GAAN;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC;QAAC,IAAI,CAAC,CAAC;YACN,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC;IACH,CAAC;IAED,sCAAsC;IACtC,gCAAI,GAAJ;QACE,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAEzB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAExB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAE1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,gDAAgD;IAChD,gCAAI,GAAJ;QACE,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAEzB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QAEzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,wBAAwB;QACxB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,SAAS,CAAC,QAAQ,CACrB,IAAI,CAAC,GAAG,CAAC,aAAa,EACtB,UAAU,EACV,SAAS,CACV,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QAClE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IACI,4BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,YAAY;oBACtB,QAAQ,EAAE,aAAa;oBACvB,IAAI,EAAE;wBACJ,kBAAkB,EAAE,MAAM;qBAC3B;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,gCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,iEAAU,GAAG;QACpB,EAAC,IAAI,EAAE,iEAAS,GAAG;KAClB,EAH6F,CAG7F,CAAC;IACK,gCAAc,GAA2C;QAChE,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAChC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC/B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,eAAe,EAAG,EAAE,EAAE;QAC9D,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,UAAU,EAAG,EAAE,EAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,YAAY,EAAG,EAAE,EAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,oBAAoB,EAAG,EAAE,EAAE;QAChK,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,kBAAkB,EAAG,EAAE,EAAE;QACrE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,gBAAgB,EAAG,EAAE,EAAE;QAClE,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,kBAAkB,EAAG,EAAE,EAAE;QACtE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;KAC7B,CAAC;IACF,wBAAC;CAAA;AArG6B;;;;;;;;;;;;ACZgC;AAEL;AAGzD;IAAA;IAaA,CAAC;IAZQ,sBAAO,GAAd;QACE,MAAM,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IACrD,CAAC;IACI,yBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,YAAY,EAAE,CAAC,8EAAiB,CAAC;oBACjC,OAAO,EAAE,CAAC,8EAAiB,CAAC;iBAC7B,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,6BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,qBAAC;CAAA;AAb0B;;;;;;;;;;;;;ACL8B;AACN;;;;;;;;;;;;ACDnD;AAAA,qCAAqC;AACrC,0BAA0B;AAC1B,6CAA6C;AAC7C,8CAA8C;AAiBvB;AAEsD;AAC5B;AAGjD;IAgDE;;;;OAIG;IACH,2BAA2B;IAC3B,yBACU,iBAAmC,EACnC,SAAoB,EACpB,WAAuB,EACvB,SAAmB,EACnB,yBAAmD,EACnD,OAAe,EACf,eAA+B,EAC/B,WAA+B;QAP/B,sBAAiB,GAAjB,iBAAiB,CAAkB;QACnC,cAAS,GAAT,SAAS,CAAW;QACpB,gBAAW,GAAX,WAAW,CAAY;QACvB,cAAS,GAAT,SAAS,CAAU;QACnB,8BAAyB,GAAzB,yBAAyB,CAA0B;QACnD,YAAO,GAAP,OAAO,CAAQ;QACf,oBAAe,GAAf,eAAe,CAAgB;QAC/B,gBAAW,GAAX,WAAW,CAAoB;QA7DzC,iBAAY,GAAsB,IAAI,mEAAY,EAAE,CAAC;QACrD,YAAO,GAAsB,IAAI,mEAAY,EAAE,CAAC;QAChD,iBAAY,GAAsB,IAAI,mEAAY,EAAE,CAAC;QACrD,aAAQ,GAAsB,IAAI,mEAAY,EAAE,CAAC;QAMzC,eAAU,GAAe,EAAE,CAAC;QAgB5B,cAAS,GAAG,KAAK,CAAC;QAmBlB,gBAAW,GAAkB,EAAE,CAAC;QAChC,oBAAe,GAAG,QAAQ,CAAC,SAAS,CAAC;IAiB1C,CAAC;IA7CJ,sBAAI,oCAAO;aAAX;YACE,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;gBACnB,MAAM,CAAC,KAAK,CAAC;YACf,CAAC;YAED,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC;QAC9B,CAAC;;;OAAA;IAyCD,gCAAM,GAAN,UAAO,QAAiB;QACtB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,yBAAyB;aACpD,uBAAuB,CAAI,QAAQ,CAAC,CAAC;QAExC,MAAM,CAAC,IAAI,CAAC;IACd,CAAC;IAED,iEAAiE;IACjE,4BAAE,GAAF,UAAG,SAAkB;QACnB,IAAI,CAAC,SAAS,GAAG,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC;QAE7C,MAAM,CAAC,IAAI,CAAC;IACd,CAAC;IAED,kCAAQ,GAAR,UAAS,IAAyB;QAChC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC;QACrD,IAAI,CAAC,WAAW,GAAI,IAAI,CAAC,MAAqB,IAAI,IAAI,CAAC,WAAW,CAAC;QAEnE,MAAM,CAAC,IAAI,CAAC;IACd,CAAC;IAED,iCAAO,GAAP,UAAQ,QAAkB;QACxB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE/B,MAAM,CAAC,IAAI,CAAC;IACd,CAAC;IAED,yEAAyE;IACzE,8BAAI,GAAJ,UACE,IAIM;QAJN,gCAIM;QAEN,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAE5B,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;YACxB,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;YACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACnE,IAAM,QAAQ,GAAG,yEAAkB,CAAC,gBAAgB,CAClD,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,SAAS,CACf,CAAC;YAEF,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAChD,QAAQ,EACR,IAAI,CAAC,WAAW,CAAC,KAAK,CACvB,CAAC;YACF,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC7D,8CAA8C;YAC9C,mFAAmF;YACnF,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;YAE5C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAEjD,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,YAAY,iEAAU,CAAC,CAAC,CAAC;gBACzC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,WAAW,CACtC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,CAC1C,CAAC;YACJ,CAAC;YAED,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,MAAM,IAAI,OAAO,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjE,QAAQ;qBACL,aAAa,CAAC,IAAI,CAAC,SAAmB,CAAC;qBACvC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YAC5D,CAAC;YAED,EAAE,CAAC,CACD,CAAC,IAAI,CAAC,SAAS;gBACf,IAAI,CAAC,WAAW;gBAChB,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,aACjC,CAAC,CAAC,CAAC;gBACD,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,aAAa,CAAC,WAAW,CACtD,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,CAC1C,CAAC;YACJ,CAAC;YAED,sEAAsE;YACtE,MAAM;YACN,oEAAoE;YACpE,kBAAkB;YAClB,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC;gBAClC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,QAAQ,CAAC;gBAC9D,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;gBAC/D,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;YAClE,CAAC;YACD,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;YACpD,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;YACrD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAE7B,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,8BAAI,GAAJ;QACE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAEpD,IAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC9D,WAAW,CAAC,UAAU,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAChD,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC;YAClC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAC1C,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;QAC7B,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;YACvD,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAC3B,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CACzD,CAAC;QACJ,CAAC;QACD,8FAA8F;QAC9F,EAAE;QACF,qGAAqG;QACrG,6FAA6F;QAC7F,IAAI;QAEJ,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAE7B,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAErB,MAAM,CAAC,IAAI,CAAC;IACd,CAAC;IAED,gCAAM,GAAN;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YACjB,IAAI,CAAC,IAAI,EAAE,CAAC;YAEZ,MAAM,CAAC;QACT,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAED,iCAAO,GAAP;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YACjB,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC;QAED,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAE/B,EAAE,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;YAChC,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAChC,CAAC;IACH,CAAC;IAED,gCAAM,GAAN,UAAO,UAAyB;QAAhC,iBAyBC;QAxBC,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC;QACrD,IAAI,CAAC,WAAW,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;QACxD,UAAU,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,IAAI,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC;QAExE,IAAM,IAAI,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG;YACpC,iBAAU,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,EAAE,GAAG,KAAK,KAAI,CAAC,IAAI,EAAE;QAAtD,CAAsD,CAAC,CAAC;QAC1D,IAAM,IAAI,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,UAAC,YAAsB;YAC3D,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,KAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC1E,YAAY,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,IAAM,MAAM,GAAG,UAAC,YAAsB;YACpC,KAAI,CAAC,OAAO,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;QAC7C,CAAC,CAAC;QAEF,IAAI,CAAC,sBAAsB,GAAG,mFAAkB,CAAC,IAAI,CAAC,SAAS,EAAE;YAC/D,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,IAAI;YACJ,IAAI;YACJ,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC;IACd,CAAC;IAED,+CAAqB,GAArB;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;YACzB,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,sCAAY,GAAZ,UACE,IAAsB,EACtB,QAA0B;QAE1B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAExD,MAAM,CAAC,IAAI,CAAC;IACd,CAAC;IAED,+CAAqB,GAArB;QAAA,iBAeC;QAdC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC;YACxD,MAAM,CAAC;QACT,CAAC;QACD,2CAA2C;QAC3C,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC;YAClC,IAAM,QAAM,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC;YACzD,UAAU,CAAC;gBACT,KAAI,CAAC,eAAe,GAAG,qFAAoB,CAAC,KAAI,CAAC,SAAS,EAAE;oBAC1D,OAAO,EAAE,CAAC,QAAM,EAAE,KAAI,CAAC,WAAW,CAAC,aAAa,CAAC;oBACjD,YAAY,EAAE,KAAI,CAAC,WAAW,CAAC,YAAY;oBAC3C,IAAI,EAAE,cAAM,YAAI,CAAC,WAAW,CAAC,IAAI,EAAE,EAAvB,CAAuB;iBACpC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,2CAAiB,GAAjB;QACE,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAEO,+CAAqB,GAA7B;QAAA,iBAgBC;QAfC,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YAC/C,MAAM,CAAC;QACT,CAAC;QAED,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;YACvD,EAAE,CAAC,CAAC,CAAC,KAAI,CAAC,aAAa,CAAC,CAAC,CAAC;gBACxB,MAAM,CAAC;YACT,CAAC;YACD,KAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;gBACxB,OAAO,EAAE,KAAI,CAAC,aAAa,CAAC,QAAQ;gBACpC,MAAM,EAAE,KAAI,CAAC,WAAW;gBACxB,UAAU,EAAE,KAAI,CAAC,UAAU;gBAC3B,YAAY,EAAE,KAAI,CAAC,SAAS,KAAK,MAAM;aACxC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,iDAAuB,GAA/B;QACE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAC5B,MAAM,CAAC;QACT,CAAC;QACD,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAChC,CAAC;IAEO,wCAAc,GAAtB,UACE,OAAwC,EACxC,OAAa;QAEb,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,CAAC,IAAI,sEAAU,CAAC,EAAE,CAAC,CAAC;QAC5B,CAAC;QAED,EAAE,CAAC,CAAC,OAAO,YAAY,mEAAW,CAAC,CAAC,CAAC;YACnC,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;gBAC3B,IAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB;qBACpC,kBAAkB,CAAiB,OAAO,EAAE,OAAO,CAAC,CAAC;gBACxD,QAAQ,CAAC,YAAY,EAAE,CAAC;gBAExB,MAAM,CAAC,IAAI,sEAAU,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,CAAC;YACxD,CAAC;YACD,IAAM,OAAO,GAAG,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;YAC/C,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAEzC,MAAM,CAAC,IAAI,sEAAU,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;QAED,EAAE,CAAC,CAAC,OAAO,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC;YAClC,IAAM,kBAAkB,GAAG,IAAI,CAAC,yBAAyB,CAAC,uBAAuB,CAC/E,OAAO,CACR,CAAC;YACF,IAAM,oBAAoB,GAAG,yEAAkB,CAAC,gBAAgB,CAC1D,IAAI,CAAC,UAAU,UACnB,IAAI,CAAC,SAAS,CACf,CAAC;YACF,IAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;YACrE,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAEvD,MAAM,CAAC,IAAI,sEAAU,CACnB,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,EACvC,YAAY,CAAC,QAAQ,EACrB,YAAY,CACb,CAAC;QACJ,CAAC;QAED,MAAM,CAAC,IAAI,sEAAU,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAG,OAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IACrE,CAAC;IACH,sBAAC;AAAD,CAAC;;;;;;;;;;;;;;ACrXsB;AACoC;AACP;AAGpD;IACE,gCAAoB,yBAAmD,EACnD,OAAe,EACf,SAAmB,EACnB,WAA+B,EAC/B,eAA+B;QAJ/B,8BAAyB,GAAzB,yBAAyB,CAA0B;QACnD,YAAO,GAAP,OAAO,CAAQ;QACf,cAAS,GAAT,SAAS,CAAU;QACnB,gBAAW,GAAX,WAAW,CAAoB;QAC/B,oBAAe,GAAf,eAAe,CAAgB;IAAG,CAAC;IAEvD;;;;;;OAMG;IACH,6CAAY,GAAZ,UAAgB,WAAuB,EACvB,iBAAmC,EACnC,SAAoB;QAClC,MAAM,CAAC,IAAI,gFAAe,CACxB,iBAAiB,EACjB,SAAS,EACT,WAAW,EACX,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,yBAAyB,EAC9B,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,WAAW,CACjB,CAAC;IACJ,CAAC;IACI,iCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,qCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,+EAAwB,GAAG;QAClC,EAAC,IAAI,EAAE,6DAAM,GAAG;QAChB,EAAC,IAAI,EAAE,+DAAQ,GAAG;QAClB,EAAC,IAAI,EAAE,wEAAkB,GAAG;QAC5B,EAAC,IAAI,EAAE,qEAAc,GAAG;KACvB,EAN6F,CAM7F,CAAC;IACF,6BAAC;CAAA;AAvCkC;;;;;;;;;ACRnC;AAAA;;;GAGG;AAIH;IAKE,oBACE,KAAY,EACZ,OAAiB,EACjB,YAAgC;QAEhC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IACH,iBAAC;AAAD,CAAC;;;;;;;;;;;;;;;;ACrB0D;AACS;AACnB;;;;;;;;;ACejD;AAAA;IAAA;QAIE,sBAAiB,GAAoB,EAAE,CAAC;IAuC1C,CAAC;IArCC,sBAAI,kDAAO;aAAX,UAAY,KAAW;YACrB,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;;;OAAA;IAED,sBAAI,kDAAO;aAAX,UAAY,KAAW;YACrB,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;;;OAAA;IAED,sBAAI,qDAAU;aAAd,UAAe,KAAc;YAC3B,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC;;;OAAA;IAQD,mDAAW,GAAX,UAAY,KAA2B,IAAS,CAAC;IAEjD,kDAAU,GAAV,UAAW,KAAwB,IAAS,CAAC;IAE7C,uDAAe,GAAf,UAAgB,KAAqB,IAAS,CAAC;IAE/C,yDAAiB,GAAjB,UAAkB,KAAqB,IAAS,CAAC;IAEjD,wDAAgB,GAAhB,UAAiB,KAAqB,IAAS,CAAC;IAEhD,wDAAgB,GAAhB,UAAiB,GAAiB,IAAS,CAAC;IAE5C,0DAAkB,GAAlB,UAAmB,KAA4B,IAAS,CAAC;IAEzD,yDAAiB,GAAjB,UAAkB,KAA4B,IAAS,CAAC;IAExD,wDAAgB,GAAhB,UAAiB,KAAU;QACzB,KAAK,CAAC,eAAe,EAAE,CAAC;IAC1B,CAAC;IACH,oCAAC;AAAD,CAAC;;;;;;;;;;;;;;;;AC1DsB;AACkD;AACP;AACjB;AACe;AAEhE,IAAM,+BAA+B;IACnC,OAAO,EAAE;IACT,2BAA2B;IAC3B,WAAW,EAAE,4EAAW,cAAM,qCAA2B;IACzD,KAAK,EAAE;CACR,CAAC;AAGF;IAKE,oCAAqB,OAA8B,EAC/B,SAAoB,EACpB,MAAkB;QAFjB,YAAO,GAAP,OAAO,CAAuB;QAC/B,cAAS,GAAT,SAAS,CAAW;QACpB,WAAM,GAAN,MAAM,CAAY;QAL9B,cAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;QAC/B,eAAU,GAAG,QAAQ,CAAC,SAAS,CAAC;IAIC,CAAC;IAE1C,6CAAQ,GAAR;QAAA,iBAUC;QATC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,UAAC,CAAO;YAC3C,IAAM,WAAW,GAAG,6EAAU,CAC5B,CAAC,EACD,KAAI,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,EACpC,KAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAC5B,IAAI,EAAE,CAAC;YACR,KAAI,CAAC,SAAS,CAAC,WAAW,CAAC,KAAI,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;YAC5E,KAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,6CAAQ,GAAR,UAAS,KAAU;QACjB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED,+CAAU,GAAV,UAAW,KAAoB;QAC7B,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YACX,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QAC9B,CAAC;QACD,IAAM,OAAO,GAAG,4FAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACvD,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,IAAI,KAAK,CACb,cAAW,IAAI,CAAC,OAAO,CAAC,OAAO;iBAC5B,MAAM,gEAA0D,CACpE,CAAC;QACJ,CAAC;QACD,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC;YAC9B,IAAM,IAAI,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/C,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;QAC7D,CAAC;QAED,EAAE,CAAC,CAAC,KAAK,YAAY,IAAI,CAAC,CAAC,CAAC;YAC1B,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,qDAAgB,GAAhB,UAAiB,UAAmB;QAClC,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;QACrC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;IACjF,CAAC;IAED,qDAAgB,GAAhB,UAAiB,EAAuB;QACtC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IAED,sDAAiB,GAAjB,UAAkB,EAAa;QAC7B,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;IACvB,CAAC;IAED,2CAAM,GAAN;QACE,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED,yCAAI,GAAJ;QACE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;IACI,qCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,qBAAqB;oBAC/B,IAAI,EAAE;wBACJ,UAAU,EAAE,kBAAkB;wBAC9B,aAAa,EAAE,QAAQ;wBACvB,QAAQ,EAAE,UAAU;qBACrB;oBACD,SAAS,EAAE,CAAC,4BAA4B,CAAC;iBAC1C,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,yCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,uFAAqB,EAAE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,2DAAI,EAAE,EAAG,EAAC;QAC7D,EAAC,IAAI,EAAE,iEAAS,GAAG;QACnB,EAAC,IAAI,EAAE,iEAAU,GAAG;KACnB,EAJ6F,CAI7F,CAAC;IACF,iCAAC;CAAA;AApFsC;;;;;;;;;;;;;;;;ACbhB;AAE+D;AACS;AAE7D;AAC0B;AAG5D;IAoFE,+BAAmB,OAA2B,EAClC,WAAuB,EACvB,SAAoB,EACpB,iBAAmC,EACnC,GAA2B;QAJpB,YAAO,GAAP,OAAO,CAAoB;QAnF9C;;WAEG;QACF,cAAS,GAAwC,QAAQ,CAAC;QAC3D;;;WAGG;QACF,aAAQ,GAAG,OAAO,CAAC;QACpB;;WAEG;QACF,iBAAY,GAAG,IAAI,CAAC;QACrB;;;WAGG;QACF,cAAS,GAAG,MAAM,CAAC;QAwDpB;;WAEG;QACF,kBAAa,GAAuB,IAAI,mEAAY,EAAE,CAAC;QAE9C,UAAK,GAAmB,EAAE,CAAC;QAUnC,qCAAqC;QACrC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,YAAY,CACjC,WAAW,EACX,iBAAiB,EACjB,SAAS,CACV,CAAC;QACF,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QACxC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;IAC5C,CAAC;IA1ED,sBAAI,yCAAM;QAJV;;WAEG;aAEH;YACE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QAClC,CAAC;aAED,UAAW,KAAc;YACvB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBACV,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,CAAC;YAAC,IAAI,CAAC,CAAC;gBACN,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,CAAC;QACH,CAAC;;;OARA;IAwBD,sBAAI,0CAAO;QAJX;;WAEG;aAEH,UAAY,KAAW;YACrB,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC;gBAC5B,MAAM,CAAC;YACT,CAAC;YACD,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;YACtB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;;;OAAA;IA4CD,wCAAQ,GAAR;QAAA,iBAMC;QALC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YACtB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,cAAM,YAAI,CAAC,IAAI,EAAE,EAAX,CAAW;SACxB,CAAC,CAAC;IACL,CAAC;IAED,2CAAW,GAAX,UAAY,OAAsB;QAChC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC1D,MAAM,CAAC;QACT,CAAC;QAED,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QACtD,CAAC;QAED,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QACtD,CAAC;QAED,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;YACvB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAC5D,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,oCAAI,GAAJ;QAAA,iBAiCC;QAhCC,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;YAC7B,MAAM,CAAC;QACT,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE;YAC5D,KAAK,EAAE,IAAI,CAAC,QAAQ;YACpB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;YAC7C,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;SAC9C,CAAC,CAAC;QAEH,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,WAAW;aACnC,OAAO,CAAC,EAAC,OAAO,EAAE,iFAAkB,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAC,CAAC;aAC9D,MAAM,CAAC,oHAA8B,CAAC;aACtC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC;aAClB,QAAQ,CAAC,EAAC,UAAU,EAAE,IAAI,CAAC,SAAS,EAAC,CAAC;aACtC,IAAI,CAAC,EAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAC,CAAC,CAAC;QAErC,uDAAuD;QACvD,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,UAAC,KAAW;YACvC,KAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;QAC7C,CAAC,CAAC,CACH,CAAC;QAEF,8CAA8C;QAC9C,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,UAAC,KAAW;YAC7D,KAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,KAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,oCAAI,GAAJ;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YAChB,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAC1B,CAAC;QACD,GAAG,CAAC,CAAc,UAAU,EAAV,SAAI,CAAC,KAAK,EAAV,cAAU,EAAV,IAAU;YAAvB,IAAM,GAAG;YACZ,GAAG,CAAC,WAAW,EAAE,CAAC;SACnB;IACH,CAAC;IAED;;;OAGG;IACH,sCAAM,GAAN;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YAChB,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACrB,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAED,2CAAW,GAAX;QACE,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IACI,gCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,8BAA8B;oBACxC,QAAQ,EAAE,cAAc;oBACxB,QAAQ,EAAE,2BAA2B;iBACtC,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,oCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,iFAAkB,GAAG;QAC5B,EAAC,IAAI,EAAE,iEAAU,GAAG;QACpB,EAAC,IAAI,EAAE,iEAAS,GAAG;QACnB,EAAC,IAAI,EAAE,yEAAgB,GAAG;QAC1B,EAAC,IAAI,EAAE,0GAAsB,GAAG;KAC/B,EAN6F,CAM7F,CAAC;IACK,oCAAc,GAA2C;QAChE,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC5B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC9B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC/B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAChC,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,eAAe,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;KACnC,CAAC;IACF,4BAAC;CAAA;AA/NiC;;;;;;;;;;;ACZS;AAO3C;IAAA;QAaE;;WAEG;QACH,mBAAc,GAAG,aAAa,CAAC;QAE/B,0BAA0B;QAC1B,kBAAa,GAAG,CAAC,CAAC;QAClB;;WAEG;QACH,oBAAe,GAAG,IAAI,CAAC;QAEvB,oBAAe,GAAG,GAAG,CAAC;QACtB,eAAe;QACf,mBAAc,GAAG,KAAK,CAAC;QACvB,qBAAgB,GAAG,GAAG,CAAC;QAEvB,0BAA0B;QAC1B;;;WAGG;QACH,WAAM,GAAG,IAAI,CAAC;QACd,eAAU,GAAG,MAAM,CAAC;QACpB,cAAS,GAAG,MAAM,CAAC;QACnB,aAAQ,GAAG,GAAG,CAAC;QACf,eAAU,GAAG,MAAM,CAAC;QACpB,cAAS,GAAG,MAAM,CAAC;QACnB,gBAAW,GAAG,GAAG,CAAC;IAOpB,CAAC;IANM,6BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,iCAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,yBAAC;CAAA;AAhD8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPgB;AACe;AACQ;AACJ;AAC6B;AACW;AAChB;AACpB;AACmC;AAC7B;AACV;AACoB;AACd;AAC8B;AACT;AACD;AACJ;AACA;AACH;AACzB;AACyB;AACR;AACU;AAEzC;AAE9C,IAAM,WAAW;IACf,oHAA8B;IAC9B,8HAAmC;IAEnC,wFAAqB;IACrB,mGAA0B;IAE1B,6GAA+B;IAC/B,iGAA0B;CAC3B,CAAC;AAGF;IACE;QACE,2EAAQ,CAAC,8GAEgB,CAAC,CAAC;IAC7B,CAAC;IAEM,0BAAO,GAAd;QACE,MAAM,CAAC;YACL,QAAQ,EAAE,kBAAkB;YAC5B,SAAS,EAAE;gBACT,2GAAsB;gBACtB,6FAAkB;gBAClB,uFAAiB;gBACjB,2FAAmB;gBACnB,kFAAkB;gBAClB,2FAAmB;aACpB;SACF,CAAC;IACJ,CAAC;IACI,6BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC,qEAAY,CAAC;oBACvB,YAAY;wBACV,4HAAiC;wBACjC,8GAA0B;wBAC1B,+HAAmC;wBACnC,2GAAyB;wBAEzB,2GAAyB;wBACzB,+GAA2B;wBAC3B,mHAA4B;wBAC5B,kHAA4B;wBAE5B,8GAA0B;6BAEvB,QAAQ,CACZ;oBACD,eAAe,EAAE;wBACf,oHAA8B;wBAC9B,8HAAmC;qBACpC;oBACD,OAAO,EAAE,QAAQ;iBAClB,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,iCAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,yBAAC;CAAA;AAhD8B;;;;;;;;;;;;;;;ACtC4D;AAClB;AACxB;AACe;AACY;AAE5E,IAAM,oCAAoC;IACxC,OAAO,EAAE;IACT,2BAA2B;IAC3B,WAAW,EAAE,4EAAW,cAAM,0CAAgC;IAC9D,KAAK,EAAE;CACR,CAAC;AAGF;IAKE,yCAAqB,OAAmC,EACpC,SAAoB,EACpB,MAAkB;QAFjB,YAAO,GAAP,OAAO,CAA4B;QACpC,cAAS,GAAT,SAAS,CAAW;QACpB,WAAM,GAAN,MAAM,CAAY;QAL9B,cAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;QAC/B,eAAU,GAAG,QAAQ,CAAC,SAAS,CAAC;IAIC,CAAC;IAE1C,kDAAQ,GAAR;QAAA,iBAmBC;QAlBC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,UAAC,CAAS;YAC7C,IAAI,KAAK,GAAG,EAAE,CAAC;YACf,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACN,IAAM,KAAK,GAAG,6EAAU,CACtB,CAAC,CAAC,CAAC,CAAC,EACJ,KAAI,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,EACrC,KAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAC5B,IAAI,EAAE,CAAC;gBACR,IAAM,GAAG,GAAG,6EAAU,CACpB,CAAC,CAAC,CAAC,CAAC,EACJ,KAAI,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,EACrC,KAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAC5B,IAAI,EAAE,CAAC;gBACR,KAAK,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,GAAG,KAAK,GAAG,KAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,GAAG,GAAG,GAAG,EAAE,CAAC;YAClF,CAAC;YACD,KAAI,CAAC,SAAS,CAAC,WAAW,CAAC,KAAI,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YACtE,KAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,kDAAQ,GAAR,UAAS,KAAU;QACjB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED,oDAAU,GAAV,UAAW,KAAsB;QAC/B,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YACX,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;YAC5B,MAAM,CAAC;QACT,CAAC;QAED,IAAM,OAAO,GAAG,4FAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACvD,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,IAAI,KAAK,CACb,cAAW,IAAI,CAAC,OAAO,CAAC,OAAO;iBAC5B,MAAM,gEAA0D,CACpE,CAAC;QACJ,CAAC;QACD,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC;YAC9B,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,KAAK;iBACzB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC;iBAC1C,GAAG,CAAC,cAAI,IAAI,WAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAhC,CAAgC,CAAC;iBAC7C,GAAG,CAAC,cAAI,IAAI,QAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,EAArC,CAAqC,CAAC,CAAC;QACxD,CAAC;QAED,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACzB,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,0DAAgB,GAAhB,UAAiB,UAAmB;QAClC,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;QACrC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;IACjF,CAAC;IAED,0DAAgB,GAAhB,UAAiB,EAAuB;QACtC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IAED,2DAAiB,GAAjB,UAAkB,EAAa;QAC7B,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;IACvB,CAAC;IAED,gDAAM,GAAN;QACE,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED,8CAAI,GAAJ;QACE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;IACI,0CAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,0BAA0B;oBACpC,IAAI,EAAE;wBACJ,UAAU,EAAE,kBAAkB;wBAC9B,aAAa,EAAE,QAAQ;wBACvB,QAAQ,EAAE,UAAU;qBACrB;oBACD,SAAS,EAAE,CAAC,iCAAiC,CAAC;iBAC/C,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,8CAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,iGAA0B,EAAE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,2DAAI,EAAE,EAAG,EAAC;QAClE,EAAC,IAAI,EAAE,iEAAS,GAAG;QACnB,EAAC,IAAI,EAAE,iEAAU,GAAG;KACnB,EAJ6F,CAI7F,CAAC;IACF,sCAAC;CAAA;AAjG2C;;;;;;;;;;;;;;ACXrB;AACkF;AAEnB;AAE1B;AAG5D;IAqFE,oCAAmB,OAA2B,EAClC,WAAuB,EACvB,SAAoB,EACpB,iBAAmC,EACnC,GAA2B;QAJpB,YAAO,GAAP,OAAO,CAAoB;QAnF9C;;WAEG;QACF,cAAS,GAAwC,QAAQ,CAAC;QAC3D;;;WAGG;QACF,aAAQ,GAAG,OAAO,CAAC;QACpB;;WAEG;QACF,iBAAY,GAAG,IAAI,CAAC;QACrB;;;WAGG;QACF,cAAS,GAAG,MAAM,CAAC;QAwDpB;;WAEG;QACF,kBAAa,GAAyB,IAAI,mEAAY,EAAE,CAAC;QAEhD,UAAK,GAAmB,EAAE,CAAC;QAUnC,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,YAAY,CACjC,WAAW,EACX,iBAAiB,EACjB,SAAS,CACV,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QACxC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;IAC5C,CAAC;IAzED,sBAAI,8CAAM;QAJV;;WAEG;aAEH;YACE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QAClC,CAAC;aAED,UAAW,KAAc;YACvB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBACV,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,CAAC;YAAC,IAAI,CAAC,CAAC;gBACN,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,CAAC;QACH,CAAC;;;OARA;IAwBD,sBAAI,+CAAO;QAJX;;WAEG;aAEH,UAAY,KAAa;YACvB,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC;gBAC5B,MAAM,CAAC;YACT,CAAC;YACD,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;YACtB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;;;OAAA;IA2CD,6CAAQ,GAAR;QAAA,iBAMC;QALC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YACtB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,cAAM,YAAI,CAAC,IAAI,EAAE,EAAX,CAAW;SACxB,CAAC,CAAC;IACL,CAAC;IAED,gDAAW,GAAX,UAAY,OAAsB;QAChC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC1D,MAAM,CAAC;QACT,CAAC;QAED,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QACtD,CAAC;QAED,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QACtD,CAAC;QAED,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;YACvB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAC5D,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,yCAAI,GAAJ;QAAA,iBAyCC;QAxCC,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;YAC7B,MAAM,CAAC;QACT,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAC1B,EAAE,EACF,IAAI,CAAC,OAAO,EACZ,EAAC,aAAa,EAAE,CAAC,EAAC,EAClB,IAAI,CAAC,QAAQ,EACb;YACE,KAAK,EAAE,IAAI,CAAC,QAAQ;YACpB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;YAC7C,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;SAC9C,CACF,CAAC;QAEF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,WAAW;aACnC,OAAO,CAAC,EAAC,OAAO,EAAE,iFAAkB,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAC,CAAC;aAC9D,MAAM,CAAC,8HAAmC,CAAC;aAC3C,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC;aAClB,QAAQ,CAAC,EAAC,UAAU,EAAE,IAAI,CAAC,SAAS,EAAC,CAAC;aACtC,IAAI,CAAC,EAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAC,CAAC,CAAC;QAErC,uDAAuD;QACvD,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,UAAC,KAAa;YACzC,KAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;QAC7C,CAAC,CAAC,CACH,CAAC;QAEF,8CAA8C;QAC9C,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,WAAW;aACrC,MAAM,CAAC,UAAC,KAAa,IAAK,YAAK,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAA/B,CAA+B,CAAC;aAC1D,SAAS,CAAC,UAAC,KAAa;YACvB,KAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,KAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC,CAAC,CACL,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,yCAAI,GAAJ;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YAChB,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAC1B,CAAC;QACD,GAAG,CAAC,CAAc,UAAU,EAAV,SAAI,CAAC,KAAK,EAAV,cAAU,EAAV,IAAU;YAAvB,IAAM,GAAG;YACZ,GAAG,CAAC,WAAW,EAAE,CAAC;SACnB;IACH,CAAC;IAED;;;OAGG;IACH,2CAAM,GAAN;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YAChB,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACrB,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAED,gDAAW,GAAX;QACE,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IACI,qCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,wCAAwC;oBAClD,QAAQ,EAAE,mBAAmB;oBAC7B,QAAQ,EAAE,GAAG;iBACd,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,yCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,iFAAkB,GAAG;QAC5B,EAAC,IAAI,EAAE,iEAAU,GAAG;QACpB,EAAC,IAAI,EAAE,iEAAS,GAAG;QACnB,EAAC,IAAI,EAAE,yEAAgB,GAAG;QAC1B,EAAC,IAAI,EAAE,0GAAsB,GAAG;KAC/B,EAN6F,CAM7F,CAAC;IACK,yCAAc,GAA2C;QAChE,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC5B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC9B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC/B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAChC,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,eAAe,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;KACnC,CAAC;IACF,iCAAC;CAAA;AAvOsC;;;;;;;;;;;ACXU;AAEjD;IAAA;IAIA,CAAC;IAHC,8BAAM,GAAN,UAAO,IAAU,EAAE,MAAc,EAAE,MAAc;QAC/C,MAAM,CAAC,6EAAU,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC;IACH,oBAAC;AAAD,CAAC;;;;;;;;;;;;ACND;AAAA,wCAAC;AASsB;AAE0B;AAEjD,gCAAgC;AAChC,gCAAgC;AAChC,0EAA0E;AAE1E;;;;;;;;;;;;;GAaG;AAGH;IAAA;QA0BE,kBAAa,GAAuB,IAAI,mEAAY,CAAO,SAAS,CAAC,CAAC;QAErE,WAAM,GAAuB,IAAI,mEAAY,CAAO,KAAK,CAAC,CAAC;QAG5D,qBAAgB,GAAuB,IAAI,mEAAY,CACrD,SAAS,CACV,CAAC;QAEF,YAAO,GAAQ,EAAE,CAAC;QAClB,cAAS,GAAQ,EAAE,CAAC;QACpB,aAAQ,GAAQ,EAAE,CAAC;QAET,UAAK,GAAa,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAC3C,kBAAa,GAAkB,IAAI,sEAAa,EAAE,CAAC;IA+V/D,CAAC;IAjVC,sBAAI,gDAAU;aAAd;YACE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;aAED,UAAe,KAAW;YACxB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QAC3B,CAAC;;;OAJA;IAMD,2CAA2C;IAC3C,2CAAQ,GAAR;QACE,kCAAkC;QAClC,IAAI,CAAC,QAAQ,GAAI,iBAAe,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,KAAK,CAAG,CAAC;QAEpE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YAClB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC;YAChC,IAAI,CAAC,YAAY,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACpC,CAAC;QAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC;YACzC,IAAI,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,8CAA8C;IAC9C,8CAAW,GAAX,UAAY,OAAsB;QAChC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACvD,CAAC;IAED,2FAA2F;IAC3F,8DAA2B,GAA3B,UAA4B,UAAe;QACzC,EAAE,CAAC,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC;YAC1C,IAAM,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;YAC/C,EAAE,CAAC,CACD,aAAa;gBACb,aAAa,YAAY,IAAI;gBAC7B,aAAa,CAAC,OAAO,EAAE,KAAK,UAAU,CAAC,YAAY,CAAC,OAAO,EAC7D,CAAC,CAAC,CAAC;gBACD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;IACH,CAAC;IAED,oDAAiB,GAAjB,UAAkB,OAAiB,EAAE,IAAY;QAC/C,EAAE,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC;YACnB,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC;QACnC,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC;YACrB,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC;QACrC,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC;QACpC,CAAC;IACH,CAAC;IAED,0CAAO,GAAP,UAAQ,KAAW,EAAE,KAAW;QAC9B,EAAE,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC;YAC/C,MAAM,CAAC,SAAS,CAAC;QACnB,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,KAAK,KAAK,IAAI,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAC5D,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC9C,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,KAAK,OAAO,IAAI,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;YAChE,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAChD,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,KAAK,MAAM,IAAI,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;YAC9D,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,CAAC;IAChB,CAAC;IAED,wDAAqB,GAArB,UAAsB,OAAiB,EAAE,IAAY;QACnD,EAAE,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC;YACnB,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAC;QACvC,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC;YACrB,IAAI,CAAC,uBAAuB,GAAG,OAAO,CAAC;QACzC,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,sBAAsB,GAAG,OAAO,CAAC;QACxC,CAAC;IACH,CAAC;IAED,8CAAW,GAAX;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,KAAK,KAAK,IAAI,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;YAChE,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC/B,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,KAAK,OAAO,IAAI,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;YACpE,IAAI,CAAC,uBAAuB,EAAE,CAAC;QACjC,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,KAAK,MAAM,IAAI,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;YAClE,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAChC,CAAC;IACH,CAAC;IAED,6CAAU,GAAV,UAAW,IAAU,EAAE,MAAc;QACnC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC;IAED,2CAAQ,GAAR,UAAS,UAAe;QACtB,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACzD,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,GAAG,CAAC;YAEnC,MAAM,CAAC,IAAI,CAAC;QACd,CAAC;QAED,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,mDAAgB,GAAhB,UAAiB,IAAU,EAAE,MAAc;QACzC,IAAM,UAAU,GAAQ,EAAE,CAAC;QAC3B,UAAU,CAAC,IAAI,GAAG,IAAI,IAAI,CACxB,IAAI,CAAC,WAAW,EAAE,EAClB,IAAI,CAAC,QAAQ,EAAE,EACf,IAAI,CAAC,OAAO,EAAE,CACf,CAAC;QACF,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACjD,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAClE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC5C,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC;QAC1D,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAErE,MAAM,CAAC,UAAU,CAAC;IACpB,CAAC;IAED,wCAAK,GAAL,UAAM,GAAU,EAAE,IAAY;QAC5B,IAAM,MAAM,GAAU,EAAE,CAAC;QACzB,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;QACnC,CAAC;QAED,MAAM,CAAC,MAAM,CAAC;IAChB,CAAC;IAED,6CAA6C;IAC7C,oEAAoE;IACpE,OAAO;IACP,mCAAmC;IACnC,mEAAmE;IACnE,sEAAsE;IACtE,8CAAW,GAAX,UAAY,IAAU;QACpB,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAE9B,MAAM,CAAC,IAAI,IAAI,CACb,IAAI,CAAC,WAAW,EAAE,EAClB,IAAI,CAAC,QAAQ,EAAE,EACf,IAAI,CAAC,OAAO,EAAE,EACd,KAAK,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,CAC7B,CAAC;IACJ,CAAC;IAED,yCAAM,GAAN,UAAO,IAAU,EAAE,QAAe;QAAf,0CAAe;QAChC,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YACzC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;gBACrB,IAAI,CAAC,UAAU,GAAG,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YAClD,CAAC;YAED,IAAI,CAAC,UAAU,GAAG,IAAI,IAAI,CACxB,IAAI,CAAC,WAAW,EAAE,EAClB,IAAI,CAAC,QAAQ,EAAE,EACf,IAAI,CAAC,OAAO,EAAE,CACf,CAAC;YACF,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACb,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;QAAC,IAAI,CAAC,CAAC;YACN,IAAI,CAAC,UAAU,GAAG,IAAI,IAAI,CACxB,IAAI,CAAC,WAAW,EAAE,EAClB,IAAI,CAAC,QAAQ,EAAE,EACf,IAAI,CAAC,OAAO,EAAE,CACf,CAAC;YACF,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACb,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAC9B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAC5C,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAClC,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,uCAAI,GAAJ,UAAK,SAAiB;QACpB,IAAI,YAAiB,CAAC;QACtB,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC;YAClC,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC;QAC9B,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,KAAK,OAAO,CAAC,CAAC,CAAC;YACpC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,KAAK,MAAM,CAAC,CAAC,CAAC;YACnC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,CAAC;QAED,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;YACjB,IAAM,IAAI,GACR,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,GAAG,SAAS,GAAG,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;YACxE,IAAM,KAAK,GACT,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,SAAS,GAAG,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;YACtE,IAAI,CAAC,UAAU,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;YAE3C,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,6CAAU,GAAV,UAAW,UAAkB;QAC3B,IAAM,SAAS,GAAG,UAAU,IAAI,CAAC,CAAC;QAElC,EAAE,CAAC,CACD,CAAC,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC,OAAO,IAAI,SAAS,KAAK,CAAC,CAAC;YACzD,CAAC,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC,OAAO,IAAI,SAAS,KAAK,CAAC,CAAC,CAC3D,CAAC,CAAC,CAAC;YACD,MAAM,CAAC;QACT,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAC9B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,SAAS,CACpD,CAAC;QACF,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAES,wDAAqB,GAA/B,UAAgC,IAAU;QAA1C,iBAiBC;QAhBC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YACtB,MAAM,CAAC,EAAE,CAAC;QACZ,CAAC;QACD,4DAA4D;QAC5D,IAAM,iBAAiB,GAInB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAC,WAAgB;YACzC,MAAM,CAAC,CACL,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,CAAC,OAAO,EAAE;gBAC7C,WAAW,CAAC,IAAI,KAAK,KAAI,CAAC,cAAc,CACzC,CAAC;QACJ,CAAC,EAAE,IAAI,CAAC,CAAC;QAET,MAAM,CAAC,iBAAiB,KAAK,SAAS,GAAG,EAAE,GAAG,iBAAiB,CAAC,KAAK,CAAC;IACxE,CAAC;IAES,sDAAmB,GAA7B,UACE,aAA2C,EAC3C,KAAW;QAEX,EAAE,CAAC,CAAC,aAAa,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC;YACvD,MAAM,CAAC,SAAS,CAAC;QACnB,CAAC;QAED,EAAE,CAAC,CAAC,aAAa,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAC3D,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC3D,CAAC;QAED,EAAE,CAAC,CAAC,aAAa,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;YAC/D,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC7D,CAAC;QAED,EAAE,CAAC,CAAC,aAAa,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;YAC7D,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,CAAC,SAAS,CAAC;IACnB,CAAC;IAES,6CAAU,GAApB,UAAqB,IAAU;QAA/B,iBAiBC;QAhBC,IAAI,cAAc,GAAG,KAAK,CAAC;QAC3B,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,YAAY,CAAC,OAAO,CACvB,UAAC,YAA0C;gBACzC,EAAE,CAAC,CAAC,KAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBACvD,cAAc,GAAG,IAAI,CAAC;gBACxB,CAAC;YACH,CAAC,CACF,CAAC;QACJ,CAAC;QAED,MAAM,CAAC,CACL,cAAc;YACd,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACtD,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CACvD,CAAC;IACJ,CAAC;IACI,mCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,kBAAkB;oBAC5B,QAAQ,EAAE,wNAKT;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,uCAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACK,uCAAc,GAA2C;QAChE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC5B,gBAAgB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACpC,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACjC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACjC,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAChC,iBAAiB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACrC,gBAAgB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACpC,kBAAkB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACtC,kBAAkB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACtC,qBAAqB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACzC,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACjC,eAAe,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACnC,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,eAAe,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QACpC,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC7B,kBAAkB,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QACvC,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;KAC/B,CAAC;IACF,+BAAC;CAAA;AAvYoC;;;;;;;;;;;;;;;AC1Bd;AACkD;AACD;AACjB;AAEhD,IAAM,oCAAyC;IACpD,OAAO,EAAE;IACT,2BAA2B;IAC3B,WAAW,EAAE,4EAAW,cAAM,8BAAoB;IAClD,KAAK,EAAE;CACR,CAAC;AAEF,oEAAoE;AAEpE,mEAAmE;AACnE;IA0EE,6BAAY,MAAwB;QAzEpC,6DAA6D;QAC5D,mBAAc,GAAG,KAAK,CAAC;QAWxB,2CAA2C;QAC1C,cAAS,GAAG,IAAI,CAAC;QAyClB,kBAAa,GAAuB,IAAI,mEAAY,CAAO,SAAS,CAAC,CAAC;QAEtE,yDAAyD;QAEzD,qBAAgB,GAAuB,IAAI,mEAAY,CACrD,SAAS,CACV,CAAC;QAKF,aAAQ,GAAQ,QAAQ,CAAC,SAAS,CAAC;QACnC,cAAS,GAAQ,QAAQ,CAAC,SAAS,CAAC;QAI1B,SAAI,GAAS,IAAI,IAAI,EAAE,CAAC;QAIhC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IA/BD,sBAAI,2CAAU;QAFd,4BAA4B;aAE5B;YACE,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,CAAC;QACvC,CAAC;aAED,UAAe,KAAW;YACxB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QAC3B,CAAC;;;OAJA;IA+BD,8CAAgB,GAAhB;QACE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IAED,sCAAQ,GAAR,UAAS,KAAU;QACjB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAED,6CAAe,GAAf,UAAgB,KAAW;QACzB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,gDAAkB,GAAlB,UAAmB,KAAW;QAC5B,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IACD,2BAA2B;IAC3B,wCAAU,GAAV,UAAW,KAAU;QACnB,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5D,MAAM,CAAC;QACT,CAAC;QACD,EAAE,CAAC,CAAC,KAAK,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,CAAC;YACnC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAEtC,MAAM,CAAC;QACT,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,KAAK,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;IACrD,CAAC;IAED,8CAAgB,GAAhB,UAAiB,EAAkB;QACjC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,+CAAiB,GAAjB,UAAkB,EAAY;QAC5B,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IACI,8BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,YAAY;oBACtB,QAAQ,EAAE,6jDA+BP;oBACH,SAAS,EAAE,CAAC,iCAAiC,CAAC;iBAC/C,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,kCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,4EAAgB,GAAG;KACzB,EAF6F,CAE7F,CAAC;IACK,kCAAc,GAA2C;QAChE,gBAAgB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACpC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACjC,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAChC,iBAAiB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACrC,gBAAgB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACpC,kBAAkB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACtC,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACjC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,kBAAkB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACtC,qBAAqB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACzC,eAAe,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACnC,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACjC,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAChC,eAAe,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QACpC,kBAAkB,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QACvC,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAS,EAAE,IAAI,EAAE,CAAC,6FAAwB,EAAG,EAAE,EAAE;KACxE,CAAC;IACF,0BAAC;CAAA;AA1L+B;;;;;;;;;;;ACtBW;AAG3C;IAAA;QACE,WAAM,GAAG,IAAI,CAAC;QACd,mBAAc,GAAG,KAAK,CAAC;QACvB,gBAAW,GAAG,CAAC,CAAC;QAChB,cAAS,GAAG,EAAE,CAAC;QACf,YAAO,GAAG,KAAK,CAAC;QAChB,YAAO,GAAG,MAAM,CAAC;QACjB,cAAS,GAAG,IAAI,CAAC;QACjB,cAAS,GAAG,IAAI,CAAC;QACjB,gBAAW,GAAG,MAAM,CAAC;QACrB,eAAU,GAAG,MAAM,CAAC;QACpB,oBAAe,GAAG,IAAI,CAAC;QACvB,mBAAc,GAAG,WAAW,CAAC;QAC7B,qBAAgB,GAAG,MAAM,CAAC;QAC1B,qBAAgB,GAAG,KAAK,CAAC;QACzB,kBAAa,GAAG,CAAC,CAAC;QAClB,iBAAY,GAAG,CAAC,CAAC;QACjB,wBAAmB,GAAG,KAAK,CAAC;IAO9B,CAAC;IANM,2BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,+BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,uBAAC;CAAA;AAxB4B;;;;;;;;;;;;;;;;;;;ACHkB;AACe;AACjB;AAE2B;AACX;AACF;AACI;AACF;AACN;AAGvD;IAAA;IA2BA,CAAC;IA1BQ,wBAAO,GAAd;QACE,MAAM,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC,4EAAgB,CAAC,EAAE,CAAC;IACvE,CAAC;IACI,2BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC,qEAAY,EAAE,mEAAW,CAAC;oBACpC,YAAY,EAAE;wBACZ,kFAAmB;wBACnB,6FAAwB;wBACxB,gFAAkB;wBAClB,oFAAoB;wBACpB,kFAAmB;qBACpB;oBACD,OAAO,EAAE;wBACP,kFAAmB;wBACnB,6FAAwB;wBACxB,gFAAkB;wBAClB,oFAAoB;wBACpB,kFAAmB;qBACpB;oBACD,eAAe,EAAE,CAAC,kFAAmB,CAAC;iBACvC,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,+BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,uBAAC;CAAA;AA3B4B;;;;;;;;;;;;ACZ7B;AAAA,cAAC;AACD,iBAAiB;AACiC;AACF;AACwB;AAGxE;IAOE,4BAAY,UAAoC;QANhD,WAAM,GAAU,EAAE,CAAC;QAEnB,SAAI,GAAU,EAAE,CAAC;QACjB,gBAAW,GAAa,EAAE,CAAC;QAIzB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,sBAAI,qCAAK;aAAT;YACE,MAAM,CAAC,CAAC,4EAAK,EAAE,CAAC;QAClB,CAAC;;;OAAA;IAED;;;QAGI;IACJ,qCAAQ,GAAR;QACE,IAAM,IAAI,GAAG,IAAI,CAAC;QAElB,IAAI,CAAC,UAAU,CAAC,OAAO,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QAExC,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC;YACpC,IAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;YAC3C,IAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;YACzC,IAAM,eAAe,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;YACjD,IAAM,UAAU,GAAG,IAAI,CAAC,WAAW,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC;YAC/D,IAAM,6BAA6B,GACjC,UAAU,GAAG,CAAC,GAAG,CAAC,GAAG,UAAU,GAAG,CAAC,UAAU,CAAC;YAChD,IAAM,SAAS,GAAG,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC;YAEtD,EAAE,CAAC,CAAC,6BAA6B,GAAG,CAAC,CAAC,CAAC,CAAC;gBACtC,SAAS,CAAC,OAAO,CAAC,CAAC,6BAA6B,GAAG,CAAC,CAAC,CAAC;YACxD,CAAC;YAED,kDAAkD;YAClD,IAAM,KAAK,GAAW,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACnD,IAAM,IAAI,GAAU,EAAE,CAAC;YACvB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5B,IAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;gBACpE,WAAW,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,KAAK,CAAC;gBACtD,WAAW,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ,GAAG,GAAG,GAAG,CAAC,CAAC;gBAC1C,IAAI,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC;YACxB,CAAC;YAED,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;YACjB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3B,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;gBACpB,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CACnC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EACZ,IAAI,CAAC,eAAe,CACrB,CAAC;gBACF,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC9D,CAAC;YAED,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;YACnE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAEhC,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;gBACnB,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;gBACtB,IAAM,aAAa,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBACrD,IAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;gBAClC,GAAG,CAAC,CAAC,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC;oBACpD,IAAI,CAAC,WAAW,CAAC,IAAI,CACnB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAClE,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC,EAAE,KAAK,CAAC,CAAC;QAEV,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,UAChC,KAAW,EACX,KAAW;YAEX,IAAM,EAAE,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5E,IAAM,EAAE,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5E,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;QACrC,CAAC,EAAE,KAAK,CAAC,CAAC;QAEV,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;IAChC,CAAC;IAES,qCAAQ,GAAlB,UAAmB,SAAe,EAAE,CAAS;QAC3C,IAAM,KAAK,GAAW,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;QACnC,IAAI,OAAO,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;QAC5C,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,IAAI,IAAU,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACb,IAAI,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;YACnC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACzC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;YAClB,OAAO,GAAG,IAAI,IAAI,CAChB,OAAO,CAAC,WAAW,EAAE,EACrB,OAAO,CAAC,QAAQ,EAAE,EAClB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CACtB,CAAC;QACJ,CAAC;QACD,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAES,iDAAoB,GAA9B,UAA+B,IAAU;QACvC,IAAM,SAAS,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3C,WAAW;QACX,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACvE,IAAM,IAAI,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC;QACjC,qBAAqB;QACrB,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QACtB,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACrB,MAAM,CAAC,CACL,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CACxE,CAAC;IACJ,CAAC;IAED,kCAAkC;IAC7B,6BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,WAAW;oBACrB,QAAQ,EAAE,8oGAiET;oBACD,MAAM,EAAE;wBACN,sMASD;qBACA;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,iCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,6FAAwB,GAAG;KACjC,EAF6F,CAE7F,CAAC;IACF,yBAAC;CAAA;AA3M8B;;;;;;;;;;;;;ACHyC;AACF;AACjB;AAE/C,0BACJ,YAAkB,EAClB,OAAyB;IAEzB,IAAM,QAAQ,GAAG,iGAAkB,CAAC,YAAY,CAAC,CAAC;IAClD,IAAM,WAAW,GAAG,kGAAwB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEhE,IAAM,aAAa,GAAG;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,WAAW;QACX,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE;KAClB,CAAC;IACF,IAAM,UAAU,GAAG,iFAAY,CAAO,aAAa,EAAE,cAAI,IAAI,WAAI,EAAJ,CAAI,CAAC,CAAC;IAEnE,MAAM,CAAC;QACL,UAAU;QACV,KAAK,EAAE,QAAQ;KAChB,CAAC;AACJ,CAAC;;;;;;;;;;;;;;ACtB2E;AACL;AACV;AACE;AAazD,0BACJ,cAAqC,EACrC,OAAgC;IAEhC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,UAAC,IAAmB,EAAE,SAAiB;QAClE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAC,GAAiB,EAAE,QAAgB;YACpD,aAAa;YACb,IAAM,YAAY,GAAG,CAAC,0FAAW,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;YAElE,IAAM,SAAS,GACb,CAAC,YAAY,IAAI,wFAAS,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;YAC5D,oBAAoB;YACpB,IAAM,gBAAgB,GACpB,CAAC,YAAY;gBACb,OAAO,CAAC,aAAa;gBACrB,wFAAS,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;YAChD,IAAM,cAAc,GAClB,CAAC,YAAY;gBACb,OAAO,CAAC,aAAa;gBACrB,wFAAS,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;YAEhD,IAAM,UAAU,GACd,CAAC,CAAC,YAAY,IAAI,wFAAS,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;gBAC5D,gBAAgB;gBAChB,cAAc,CAAC;YAEjB,IAAM,SAAS,GACb,CAAC,YAAY;gBACb,OAAO,CAAC,aAAa;gBACrB,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;YAEtE,IAAM,UAAU,GACd,OAAO,CAAC,UAAU;gBAClB,uFAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC;gBAC1C,sFAAO,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAE5C,uBAAuB;YACvB,IAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE;gBACpC,YAAY;gBACZ,SAAS;gBACT,UAAU;gBACV,gBAAgB;gBAChB,cAAc;gBACd,SAAS;gBACT,UAAU;aACX,CAAC,CAAC;YAEH,EAAE,CAAC,CACD,GAAG,CAAC,YAAY,KAAK,MAAM,CAAC,YAAY;gBACxC,GAAG,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS;gBAClC,GAAG,CAAC,UAAU,KAAK,MAAM,CAAC,UAAU;gBACpC,GAAG,CAAC,gBAAgB,KAAK,MAAM,CAAC,gBAAgB;gBAChD,GAAG,CAAC,cAAc,KAAK,MAAM,CAAC,cAAc;gBAC5C,GAAG,CAAC,UAAU,KAAK,MAAM,CAAC,UAAU;gBACpC,GAAG,CAAC,SAAS,KAAK,MAAM,CAAC,SAC3B,CAAC,CAAC,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;YAC/B,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,uCAAuC;IACvC,cAAc,CAAC,aAAa;QAC1B,OAAO,CAAC,UAAU;YAClB,CAAC,OAAO,CAAC,UAAU,GAAG,CAAC,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC;IAC3E,cAAc,CAAC,cAAc;QAC3B,OAAO,CAAC,UAAU;YAClB,CAAC,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC,aAAa;gBACzC,OAAO,CAAC,UAAU,GAAG,CAAC,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC;IAEtD,cAAc,CAAC,gBAAgB,GAAG,yFAAe,CAC/C,wFAAS,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAC9C,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,OAAO,CAChB,CAAC;IACF,cAAc,CAAC,iBAAiB,GAAG,yFAAe,CAChD,wFAAS,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAC7C,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,OAAO,CAChB,CAAC;IAEF,MAAM,CAAC,cAAc,CAAC;AACxB,CAAC;AAED,uBACE,IAAU,EACV,aAAqB,EACrB,WAAiB;IAEjB,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrB,MAAM,CAAC,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QAChB,MAAM,CAAC,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,WAAW,CAAC;IACxD,CAAC;IAED,MAAM,CAAC,KAAK,CAAC;AACf,CAAC;;;;;;;;;;;;;AC3HgE;AAKY;AACd;AAWzD,4BACJ,aAAsC,EACtC,OAAiC;IAEjC,aAAa,CAAC,MAAM,CAAC,OAAO,CAC1B,UAAC,MAA+B,EAAE,QAAgB;QAChD,MAAM,CAAC,OAAO,CAAC,UAAC,KAA4B,EAAE,UAAkB;YAC9D,IAAM,SAAS,GAAG,0FAAW,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;YAChE,IAAM,UAAU,GACd,OAAO,CAAC,UAAU;gBAClB,yFAAe,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YAChE,IAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE;gBAC5C,SAAS;gBACT,UAAU;aACX,CAAC,CAAC;YACH,EAAE,CAAC,CACD,KAAK,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS;gBACtC,KAAK,CAAC,UAAU,KAAK,QAAQ,CAAC,UAChC,CAAC,CAAC,CAAC;gBACD,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC;YACxD,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CACF,CAAC;IAEF,uCAAuC;IACvC,aAAa,CAAC,aAAa;QACzB,OAAO,CAAC,UAAU,GAAG,CAAC,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO,CAAC,aAAa,CAAC;IACzE,aAAa,CAAC,cAAc;QAC1B,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC,aAAa;YAC1C,OAAO,CAAC,UAAU,GAAG,CAAC,KAAK,OAAO,CAAC,aAAa,CAAC;IAEnD,aAAa,CAAC,gBAAgB,GAAG,wFAAc,CAC7C,wFAAS,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EACxD,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,OAAO,CAChB,CAAC;IACF,aAAa,CAAC,iBAAiB,GAAG,wFAAc,CAC9C,wFAAS,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EACvD,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,OAAO,CAChB,CAAC;IAEF,MAAM,CAAC,aAAa,CAAC;AACvB,CAAC;;;;;;;;;;;;;AC7D+D;AAEJ;AACG;AAWzD,2BACJ,aAAqC,EACrC,OAAiC;IAEjC,aAAa,CAAC,KAAK,CAAC,OAAO,CACzB,UAAC,KAA8B,EAAE,QAAgB;QAC/C,KAAK,CAAC,OAAO,CAAC,UAAC,IAA2B,EAAE,SAAiB;YAC3D,IAAM,SAAS,GAAG,yFAAU,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;YAC7D,IAAM,UAAU,GACd,OAAO,CAAC,UAAU;gBAClB,wFAAc,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YAE9D,IAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,SAAS,aAAE,UAAU,cAAE,CAAC,CAAC;YACxE,EAAE,CAAC,CACD,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS;gBACrC,IAAI,CAAC,UAAU,KAAK,QAAQ,CAAC,UAC/B,CAAC,CAAC,CAAC;gBACD,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC;YACtD,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CACF,CAAC;IAEF,uCAAuC;IACvC,aAAa,CAAC,aAAa;QACzB,OAAO,CAAC,SAAS,GAAG,CAAC,IAAI,OAAO,CAAC,SAAS,KAAK,OAAO,CAAC,aAAa,CAAC;IACvE,aAAa,CAAC,cAAc;QAC1B,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,aAAa;YACzC,OAAO,CAAC,SAAS,GAAG,CAAC,KAAK,OAAO,CAAC,aAAa,CAAC;IAElD,aAAa,CAAC,gBAAgB,GAAG,wFAAc,CAC7C,wFAAS,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EACvD,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,OAAO,CAChB,CAAC;IACF,IAAM,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IACzC,IAAM,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5C,aAAa,CAAC,iBAAiB,GAAG,wFAAc,CAC9C,wFAAS,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EACtD,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,OAAO,CAChB,CAAC;IAEF,MAAM,CAAC,aAAa,CAAC;AACvB,CAAC;;;;;;;;;;;;;ACrDmD;AACe;AAE7D,4BACJ,YAA+B,EAC/B,aAAsC,EACtC,UAAkB;IAElB,MAAM,CAAC;QACL,KAAK,EAAE,YAAY,CAAC,KAAK;QACzB,UAAU,EAAE,6EAAU,CACpB,YAAY,CAAC,KAAK,EAClB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,MAAM,CACrB;QACD,SAAS,EAAE,6EAAU,CACnB,YAAY,CAAC,KAAK,EAClB,aAAa,CAAC,SAAS,EACvB,aAAa,CAAC,MAAM,CACrB;QACD,WAAW,EAAE,cAAc,CACzB,YAAY,CAAC,UAAU,EACvB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,MAAM,CACrB;QACD,QAAQ,EAAE,4FAAS,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,aAAa,EAAc;QACrE,KAAK,EAAE,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,UAAC,IAAY,EAAE,SAAiB,IAAK,QAAC;YACvE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,UAAC,IAAU,EAAE,QAAgB,IAAK,QAAC;gBAChD,IAAI;gBACJ,KAAK,EAAE,6EAAU,CAAC,IAAI,EAAE,aAAa,CAAC,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC;gBACrE,UAAU;gBACV,SAAS;gBACT,QAAQ;aACT,CAAC,EAN+C,CAM/C,CAAC;SACJ,CAAC,EARsE,CAQtE,CAAC;KACJ,CAAC;AACJ,CAAC;AAEK,wBACJ,UAAoB,EACpB,MAAc,EACd,MAAc;IAEd,MAAM,CAAC,UAAU,CAAC,GAAG,CACnB,UAAC,IAAY,IAAK,QAAC,IAAI,CAAC,CAAC,CAAC,GAAG,6EAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,EAApD,CAAoD,CACvE,CAAC;AACJ,CAAC;;;;;;;;;;;;;AC9C4D;AACT;AACC;AAErD,IAAM,MAAM,GAAG,CAAC,CAAC;AACjB,IAAM,KAAK,GAAG,CAAC,CAAC;AAChB,IAAM,KAAK,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;AAErB,8BACJ,QAAc,EACd,aAAsC;IAEtC,IAAM,WAAW,GAAG,sFAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC9C,IAAM,aAAa,GAAG,EAAE,KAAK,SAAE,MAAM,UAAE,WAAW,eAAE,KAAK,SAAE,CAAC;IAC5D,IAAM,WAAW,GAAG,iFAAY,CAE9B,aAAa,EAAE,cAAI,IAAI,QAAC;QACxB,IAAI;QACJ,KAAK,EAAE,6EAAU,CAAC,IAAI,EAAE,aAAa,CAAC,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC;KACxE,CAAC,EAHuB,CAGvB,CAAC,CAAC;IAEJ,MAAM,CAAC;QACL,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,EAAE;QACd,SAAS,EAAE,6EAAU,CACnB,QAAQ,EACR,aAAa,CAAC,SAAS,EACvB,aAAa,CAAC,MAAM,CACrB;KACF,CAAC;AACJ,CAAC;;;;;;;;;;;;;;AC9B8D;AACX;AACC;AAErD,IAAM,MAAM,GAAG,CAAC,CAAC;AACjB,IAAM,KAAK,GAAG,CAAC,CAAC;AACT,IAAM,gBAAgB,GAAG,MAAM,GAAG,KAAK,CAAC;AAC/C,IAAM,YAAY,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AACjE,IAAM,KAAK,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AAEpB,6BACJ,QAAc,EACd,aAAsC;IAEtC,IAAM,WAAW,GAAG,wFAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;IAChE,IAAM,aAAa,GAAG,EAAE,KAAK,SAAE,MAAM,UAAE,WAAW,eAAE,KAAK,SAAE,CAAC;IAC5D,IAAM,WAAW,GAAG,iFAAY,CAE9B,aAAa,EAAE,cAAI,IAAI,QAAC;QACxB,IAAI;QACJ,KAAK,EAAE,6EAAU,CAAC,IAAI,EAAE,aAAa,CAAC,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC;KACvE,CAAC,EAHuB,CAGvB,CAAC,CAAC;IACJ,IAAM,SAAS,GAAG,oBAAoB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAEnE,MAAM,CAAC;QACL,KAAK,EAAE,WAAW;QAClB,UAAU,EAAE,EAAE;QACd,SAAS;KACV,CAAC;AACJ,CAAC;AAED,8BACE,WAAsC,EACtC,aAAsC;IAEtC,IAAM,IAAI,GAAG,6EAAU,CACrB,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EACtB,aAAa,CAAC,SAAS,EACvB,aAAa,CAAC,MAAM,CACrB,CAAC;IACF,IAAM,EAAE,GAAG,6EAAU,CACnB,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,EACvC,aAAa,CAAC,SAAS,EACvB,aAAa,CAAC,MAAM,CACrB,CAAC;IAEF,MAAM,CAAI,IAAI,WAAM,EAAI,CAAC;AAC3B,CAAC;;;;;;;;;;AClDK,uBAAwB,IAA0B;IACtD,MAAM,CAAC,IAAI,CAAC;AACd,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACJ4D;AACN;AACI;AACI;AACF;AACZ;AACM;AAEK;AACM;AACU;AAChB;;;;;;;;;ACyF5D;AAAA,sBAAsB;AACtB,SAAS;AACT,sBAAsB;AACtB,IAAY,qBAGX;AAHD,WAAY,qBAAqB;IAC/B,6DAAE;IACF,iEAAI;AACN,CAAC,EAHW,qBAAqB,KAArB,qBAAqB,QAGhC;;;;;;;;;;;;AC1GD;AAAA,cAAC;AACD,iBAAiB;AACiC;AAEF;AACwB;AAGxE;IAME,8BAAY,UAAoC;QAJhD,SAAI,GAAU,EAAE,CAAC;QAKf,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,sBAAI,uCAAK;aAAT;YACE,MAAM,CAAC,CAAC,4EAAK,EAAE,CAAC;QAClB,CAAC;;;OAAA;IAED,uCAAQ,GAAR;QACE,IAAM,IAAI,GAAG,IAAI,CAAC;QAElB,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QAEzC,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC;YACpC,IAAM,MAAM,GAAU,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC;YACpC,IAAM,IAAI,GAAW,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;YACnD,IAAI,IAAU,CAAC;YAEf,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5B,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC5B,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBAC9B,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC1D,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ,GAAG,GAAG,GAAG,CAAC,CAAC;YAC1C,CAAC;YAED,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACrE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QAChE,CAAC,EAAE,OAAO,CAAC,CAAC;QAEZ,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,UAChC,KAAW,EACX,KAAW;YAEX,IAAM,EAAE,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC3D,IAAM,EAAE,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC3D,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;QACrC,CAAC,EAAE,OAAO,CAAC,CAAC;QAEZ,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;IAChC,CAAC;IAED,kCAAkC;IAC7B,+BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,aAAa;oBACvB,QAAQ,EAAE,u0DAmCT;oBACD,MAAM,EAAE;wBACN,iFAID;qBACA;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,mCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,6FAAwB,GAAG;KACjC,EAF6F,CAE7F,CAAC;IACF,2BAAC;CAAA;AApGgC;;;;;;;;;;ACJ1B,IAAM,mBAAmB,GAAqB;IACnD,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,CAAC;CACV,CAAC;;;;;;;;;;;ACPyC;AAW3C;IAAA;IAyGA,CAAC;IAxFC,uCAAS,GAAT;QACE,MAAM,CAAC,EAAE,IAAI,EAAE,mBAAmB,CAAC,SAAS,EAAE,CAAC;IACjD,CAAC;IAED,oCAAM,GAAN;QACE,MAAM,CAAC,EAAE,IAAI,EAAE,mBAAmB,CAAC,MAAM,EAAE,CAAC;IAC9C,CAAC;IAED,kCAAI,GAAJ;QACE,MAAM,CAAC,EAAE,IAAI,EAAE,mBAAmB,CAAC,IAAI,EAAE,CAAC;IAC5C,CAAC;IAED,oCAAM,GAAN,UAAO,IAAU;QACf,MAAM,CAAC;YACL,IAAI,EAAE,mBAAmB,CAAC,MAAM;YAChC,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,4CAAc,GAAd,UAAe,KAA2B;QACxC,MAAM,CAAC;YACL,IAAI,EAAE,mBAAmB,CAAC,eAAe;YACzC,OAAO,EAAE,KAAK;SACf,CAAC;IACJ,CAAC;IAED,wCAAU,GAAV,UAAW,KAA4B;QACrC,MAAM,CAAC;YACL,IAAI,EAAE,mBAAmB,CAAC,WAAW;YACrC,OAAO,EAAE,KAAK;SACf,CAAC;IACJ,CAAC;IAED,0CAAY,GAAZ,UAAa,IAAc;QACzB,MAAM,CAAC;YACL,IAAI,EAAE,mBAAmB,CAAC,eAAe;YACzC,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,wCAAU,GAAV,UAAW,OAAgC;QACzC,MAAM,CAAC;YACL,IAAI,EAAE,mBAAmB,CAAC,WAAW;YACrC,OAAO,EAAE,OAAO;SACjB,CAAC;IACJ,CAAC;IAED,oBAAoB;IACpB,yCAAW,GAAX,UAAY,KAAa;QACvB,MAAM,CAAC;YACL,IAAI,EAAE,mBAAmB,CAAC,YAAY;YACtC,OAAO,EAAE,KAAK;SACf,CAAC;IACJ,CAAC;IAED,sCAAQ,GAAR,UAAS,KAAqB;QAC5B,MAAM,CAAC;YACL,IAAI,EAAE,mBAAmB,CAAC,KAAK;YAC/B,OAAO,EAAE,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI;SAClD,CAAC;IACJ,CAAC;IAED,qCAAO,GAAP,UAAQ,IAAU;QAChB,MAAM,CAAC;YACL,IAAI,EAAE,mBAAmB,CAAC,YAAY;YACtC,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,qCAAO,GAAP,UAAQ,IAAU;QAChB,MAAM,CAAC;YACL,IAAI,EAAE,mBAAmB,CAAC,YAAY;YACtC,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,wCAAU,GAAV,UAAW,KAAc;QACvB,MAAM,CAAC;YACL,IAAI,EAAE,mBAAmB,CAAC,eAAe;YACzC,OAAO,EAAE,KAAK;SACf,CAAC;IACJ,CAAC;IAjGe,6BAAS,GAAG,qCAAqC,CAAC;IAClD,0BAAM,GAAG,uCAAuC,CAAC;IACjD,wBAAI,GAAG,wBAAwB,CAAC;IAChC,0BAAM,GAAG,0BAA0B,CAAC;IACpC,mCAAe,GAAG,8BAA8B,CAAC;IACjD,+BAAW,GAAG,+BAA+B,CAAC;IAC9C,+BAAW,GAAG,oCAAoC,CAAC;IACnD,yBAAK,GAAG,yBAAyB,CAAC;IAClC,mCAAe,GAAG,+BAA+B,CAAC;IAElD,gCAAY,GAAG,2BAA2B,CAAC;IAC3C,gCAAY,GAAG,2BAA2B,CAAC;IAC3C,mCAAe,GAAG,8BAA8B,CAAC;IAEjD,gCAAY,GAAG,sCAAsC,CAAC;IAoFjE,8BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,kCAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,0BAAC;CAAA;AAzG+B;;;;;;;;;;;;;;;;;ACXW;AACT;AACH;AAE4C;AAcb;AAK9D;IAUE,6BAAoB,QAA6B;QAA7B,aAAQ,GAAR,QAAQ,CAAqB;QAFzC,UAAK,GAAmB,EAAE,CAAC;IAEiB,CAAC;IAErD,kCAAI,GAAJ,UAAK,kBAAqC;QACxC,IAAI,CAAC,MAAM,GAAG,kBAAkB,CAAC;QAEjC,MAAM,CAAC,IAAI,CAAC;IACd,CAAC;IAED,cAAc;IAEd,sCAAQ,GAAR,UAAS,KAAW;QAClB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,2CAAa,GAAb,UAAc,KAAa;QACzB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,wCAAU,GAAV,UAAW,KAAW;QACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QAEnD,MAAM,CAAC,IAAI,CAAC;IACd,CAAC;IAED,wCAAU,GAAV,UAAW,KAAW;QACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QAEnD,MAAM,CAAC,IAAI,CAAC;IACd,CAAC;IAED,yCAAW,GAAX,UAAY,KAAc;QACxB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;QAEtD,MAAM,CAAC,IAAI,CAAC;IACd,CAAC;IAED,2BAA2B;IAC3B,wCAAU,GAAV,UAAW,OAA2B;QACpC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;QAExD,MAAM,CAAC,IAAI,CAAC;IACd,CAAC;IAED,4BAA4B;IAC5B,yCAAW,GAAX,UAAY,SAAwC;QAClD,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM;aACjC,MAAM,CAAC,eAAK,IAAI,YAAK,CAAC,aAAa,EAAnB,CAAmB,CAAC;aACpC,MAAM,CAAC,gBAAM,IAAI,QAAC,CAAC,MAAM,EAAR,CAAQ,CAAC,CAAC;QAE9B,iBAAiB;QACjB,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM;aACnC,MAAM,CAAC,eAAK,IAAI,YAAK,CAAC,qBAAqB,EAA3B,CAA2B,CAAC;aAC5C,MAAM,CAAC,gBAAM,IAAI,QAAC,CAAC,MAAM,EAAR,CAAQ,CAAC,CAAC;QAE9B,gBAAgB;QAChB,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM;aAClC,MAAM,CAAC,eAAK,IAAI,YAAK,CAAC,oBAAoB,EAA1B,CAA0B,CAAC;aAC3C,MAAM,CAAC,eAAK,IAAI,QAAC,CAAC,KAAK,EAAP,CAAO,CAAC,CAAC;QAE5B,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,eAAK,IAAI,YAAK,CAAC,IAAI,CAAC,IAAI,EAAf,CAAe,CAAC,CAAC;QAElE,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM;aAC5B,MAAM,CAAC,eAAK,IAAI,YAAK,CAAC,eAAe,EAArB,CAAqB,CAAC;aACtC,GAAG,CAAC,yBAAe,IAAI,QAAC,EAAC,eAAe,mBAAC,CAAC,EAAnB,CAAmB,CAAC,CAAC;QAE/C,MAAM,CAAC,IAAI,CAAC;IACd,CAAC;IAED,qBAAqB;IACrB,8CAAgB,GAAhB,UAAiB,SAAwC;QAAzD,iBA4DC;QA3DC,SAAS,CAAC,WAAW,GAAG,UAAC,KAA2B;YAClD,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;QAC5D,CAAC,CAAC;QAEF,SAAS,CAAC,UAAU,GAAG,UAAC,KAAwB;YAC9C,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/D,CAAC,CAAC;QAEF,SAAS,CAAC,eAAe,GAAG,UAAC,KAAqB;YAChD,IAAM,KAAK,GAAG,KAAK,CAAC,IAAoB,CAAC;YACzC,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;gBAC3C,MAAM,CAAC;YACT,CAAC;YAED,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;YACpD,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACpC,CAAC,CAAC;QAEF,SAAS,CAAC,iBAAiB,GAAG,UAAC,KAAqB;YAClD,KAAK,CAAC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACzC,CAAC,CAAC;QAEF,SAAS,CAAC,gBAAgB,GAAG,UAAC,KAAqB;YACjD,KAAK,CAAC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACzC,CAAC,CAAC;QAEF,sBAAsB;QACtB,8DAA8D;QAC9D,8CAA8C;QAC9C,cAAc;QACd,MAAM;QACN,0DAA0D;QAC1D,KAAK;QAEL,SAAS,CAAC,kBAAkB,GAAG,UAAC,KAA4B;YAC1D,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;gBACrB,MAAM,CAAC;YACT,CAAC;YACD,KAAI,CAAC,MAAM,CAAC,QAAQ,CAClB,KAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;gBACvB,IAAI,EAAE,EAAC,KAAK,EAAE,uFAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAC;gBACnC,QAAQ,EAAE,KAAK;aAChB,CAAC,CACH,CAAC;QACJ,CAAC,CAAC;QAEF,SAAS,CAAC,iBAAiB,GAAG,UAAC,KAA4B;YACzD,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;gBACrB,MAAM,CAAC;YACT,CAAC;YACD,KAAI,CAAC,MAAM,CAAC,QAAQ,CAClB,KAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;gBACvB,IAAI,EAAE,EAAC,IAAI,EAAE,0FAAW,CAAC,KAAK,CAAC,IAAI,CAAC,EAAC;gBACrC,QAAQ,EAAE,OAAO;aAClB,CAAC,CACH,CAAC;QACJ,CAAC,CAAC;QAEF,MAAM,CAAC,IAAI,CAAC;IACd,CAAC;IAED,2DAA6B,GAA7B;QAAA,iBA+DC;QA9DC,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,eAAK,IAAI,YAAK,CAAC,IAAI,EAAV,CAAU,CAAC,CAAC,SAAS,CAAC,cAAI;YACpD,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;QAClD,CAAC,CAAC,CACH,CAAC;QAEF,+CAA+C;QAC/C,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,IAAI,CAAC,MAAM;aACR,MAAM,CAAC,eAAK,IAAI,YAAK,CAAC,WAAW,EAAjB,CAAiB,CAAC;aAClC,MAAM,CAAC,oBAAU,IAAI,QAAC,CAAC,UAAU,EAAZ,CAAY,CAAC;aAClC,SAAS,CAAC,eAAK,IAAI,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAA5C,CAA4C,CAAC,CACpE,CAAC;QAEF,kBAAkB;QAClB,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,IAAI,CAAC,MAAM;aACR,MAAM,CAAC,eAAK,IAAI,YAAK,CAAC,eAAe,EAArB,CAAqB,CAAC;aACtC,MAAM,CAAC,eAAK,IAAI,QAAC,CAAC,KAAK,EAAP,CAAO,CAAC;aACxB,SAAS,CAAC,eAAK,IAAI,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAA1C,CAA0C,CAAC,CAClE,CAAC;QAEF,kBAAkB;QAClB,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,IAAI,CAAC,MAAM;aACR,MAAM,CAAC,eAAK,IAAI,YAAK,CAAC,YAAY,EAAlB,CAAkB,CAAC;aACnC,MAAM,CAAC,sBAAY,IAAI,QAAC,CAAC,YAAY,EAAd,CAAc,CAAC;aACtC,SAAS,CAAC,sBAAY,IAAI,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAA1C,CAA0C,CAAC,CACzE,CAAC;QAEF,6BAA6B;QAC7B,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,IAAI,CAAC,MAAM;aACR,MAAM,CAAC,eAAK,IAAI,YAAK,CAAC,aAAa,EAAnB,CAAmB,CAAC;aACpC,MAAM,CAAC,uBAAa,IAAI,QAAC,CAAC,aAAa,EAAf,CAAe,CAAC;aACxC,SAAS,CAAC,uBAAa,IAAI,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAA1C,CAA0C,CAAC,CAC1E,CAAC;QAEF,iBAAiB;QACjB,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,IAAI,CAAC,MAAM;aACR,MAAM,CAAC,eAAK,IAAI,YAAK,CAAC,cAAc,EAApB,CAAoB,CAAC;aACrC,SAAS,CAAC,cAAM,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAA1C,CAA0C,CAAC,CAC/D,CAAC;QAEF,iBAAiB;QACjB,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,IAAI,CAAC,MAAM;aACR,MAAM,CAAC,eAAK,IAAI,YAAK,CAAC,kBAAkB,EAAxB,CAAwB,CAAC;aACzC,MAAM,CAAC,eAAK,IAAI,QAAC,CAAC,KAAK,EAAP,CAAO,CAAC;aACxB,SAAS,CAAC,cAAM,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAA1C,CAA0C,CAAC,CAC/D,CAAC;QAEF,WAAW;QACX,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,IAAI,CAAC,MAAM;aACR,MAAM,CAAC,eAAK,IAAI,YAAK,CAAC,WAAW,EAAjB,CAAiB,CAAC;aAClC,MAAM,CAAC,qBAAW,IAAI,QAAC,CAAC,WAAW,EAAb,CAAa,CAAC;aACpC,SAAS,CAAC,qBAAW,IAAI,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAA1C,CAA0C,CAAC,CACxE,CAAC;QAEF,MAAM,CAAC,IAAI,CAAC;IACd,CAAC;IAED,qCAAO,GAAP;QACE,GAAG,CAAC,CAAc,UAAU,EAAV,SAAI,CAAC,KAAK,EAAV,cAAU,EAAV,IAAU;YAAvB,IAAM,GAAG;YACZ,GAAG,CAAC,WAAW,EAAE,CAAC;SACnB;IACH,CAAC;IACI,8BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,kCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,mFAAmB,GAAG;KAC5B,EAF6F,CAE7F,CAAC;IACF,0BAAC;CAAA;AA1N+B;;;;;;;;;;;;;;;;;;;;;;ACvBhC;AAAA,qCAAqC;AAIN;AAE+B;AACE;AACI;AACJ;AACQ;AACpB;AACoB;AACJ;AAI3B;AACyB;AAKO;AACZ;AAEvD,6BACJ,KAA8B,EAC9B,MAAc;IADd,oHAA8B;IAG9B,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QACpB,KAAK,mFAAmB,CAAC,SAAS,EAAE,CAAC;YACnC,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;QAED,KAAK,mFAAmB,CAAC,MAAM,EAAE,CAAC;YAChC,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACtC,CAAC;QAED,KAAK,mFAAmB,CAAC,IAAI,EAAE,CAAC;YAC9B,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACpC,CAAC;QAED,KAAK,mFAAmB,CAAC,eAAe,EAAE,CAAC;YACzC,IAAM,IAAI,GAAG,wFAAS,CAAC,uFAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;YAC1E,IAAM,QAAQ,GAAG;gBACf,IAAI,EAAE;oBACJ,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI;oBACrB,IAAI;iBACL;aACF,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC;QAED,KAAK,mFAAmB,CAAC,WAAW,EAAE,CAAC;YACrC,IAAM,OAAO,GAA0B,MAAM,CAAC,OAAO,CAAC;YAEtD,IAAM,IAAI,GAAG,sFAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YACpD,IAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC;YAC9B,IAAM,QAAQ,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,QAAE,IAAI,QAAE,EAAE,CAAC;YAE1C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC;QAED,KAAK,mFAAmB,CAAC,eAAe,EAAE,CAAC;YACzC,EAAE,CAAC,CAAC,CAAC,gFAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBACnC,MAAM,CAAC,KAAK,CAAC;YACf,CAAC;YACD,IAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;YAC7B,IAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC;YAC5B,IAAM,QAAQ,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,QAAE,IAAI,QAAE,EAAE,CAAC;YAE1C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC;QAED,KAAK,mFAAmB,CAAC,KAAK,EAAE,CAAC;YAC/B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QACnE,CAAC;QAED,KAAK,mFAAmB,CAAC,MAAM,EAAE,CAAC;YAChC,IAAM,QAAQ,GAAG;gBACf,YAAY,EAAE,MAAM,CAAC,OAAO;gBAC5B,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC;YAEF,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;gBACnB,QAAQ,CAAC,IAAI,GAAG;oBACd,IAAI,EAAE,MAAM,CAAC,OAAO;oBACpB,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI;iBACtB,CAAC;YACJ,CAAC;YAED,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC;QAED,KAAK,mFAAmB,CAAC,WAAW,EAAE,CAAC;YACrC,IAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;YAChC,wBAAwB;YACxB,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;gBACnB,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;gBAC3B,EAAE,CAAC,CAAC,sFAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBAC5B,QAAQ,CAAC,IAAI,GAAG;wBACd,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI;wBACrB,IAAI,EAAE,0FAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI;qBAC9E,CAAC;oBACF,QAAQ,CAAC,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC;gBAC1C,CAAC;gBAAC,IAAI,CAAC,CAAC;oBACN,QAAQ,CAAC,IAAI,GAAG;wBACd,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI;wBACrB,IAAI,EAAE,QAAQ,CAAC,KAAK;qBACrB,CAAC;oBACF,QAAQ,CAAC,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC;gBACzC,CAAC;YACH,CAAC;YAED,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC;QAED,oBAAoB;QACpB,KAAK,mFAAmB,CAAC,YAAY,EAAE,CAAC;YACtC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QACrE,CAAC;QAED,KAAK,mFAAmB,CAAC,YAAY,EAAE,CAAC;YACtC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,OAAO,EAAE,MAAM,CAAC,OAAO;aACxB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,mFAAmB,CAAC,YAAY,EAAE,CAAC;YACtC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,OAAO,EAAE,MAAM,CAAC,OAAO;aACxB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,mFAAmB,CAAC,eAAe,EAAE,CAAC;YACzC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,UAAU,EAAE,MAAM,CAAC,OAAO;aAC3B,CAAC,CAAC;QACL,CAAC;QAED;YACE,MAAM,CAAC,KAAK,CAAC;IACjB,CAAC;AACH,CAAC;AAED,0BAA0B,KAAwB;IAChD,qBAAqB;IACrB,IAAM,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;IAC1C,gDAAgD;IAChD,IAAI,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;IAE/B,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC;QAC9B,IAAM,WAAW,GAAG,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;QAC7C,GAAG,CAAC,CAAC,IAAI,UAAU,GAAG,CAAC,EAAE,UAAU,GAAG,aAAa,EAAE,UAAU,EAAE,EAAE,CAAC;YAClE,iDAAiD;YACjD,WAAW,CAAC,UAAU,CAAC,GAAG,4FAAgB,CACxC,QAAQ,EACR,KAAK,CAAC,gBAAgB,CACvB,CAAC;YACF,QAAQ,GAAG,wFAAS,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,WAAW,eAAE,CAAC,CAAC;IACnD,CAAC;IAED,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC;QAChC,IAAM,cAAc,GAAG,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;QAChD,GAAG,CAAC,CACF,IAAI,aAAa,GAAG,CAAC,EACrB,aAAa,GAAG,aAAa,EAC7B,aAAa,EAAE,EACf,CAAC;YACD,iDAAiD;YACjD,cAAc,CAAC,aAAa,CAAC,GAAG,oGAAoB,CAClD,QAAQ,EACR,gBAAgB,CAAC,KAAK,CAAC,CACxB,CAAC;YACF,QAAQ,GAAG,wFAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,cAAc,kBAAE,CAAC,CAAC;IACtD,CAAC;IAED,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;QAC/B,IAAM,kBAAkB,GAAG,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;QAEpD,GAAG,CAAC,CACF,IAAI,aAAa,GAAG,CAAC,EACrB,aAAa,GAAG,aAAa,EAC7B,aAAa,EAAE,EACf,CAAC;YACD,iDAAiD;YACjD,kBAAkB,CAAC,aAAa,CAAC,GAAG,kGAAmB,CACrD,QAAQ,EACR,gBAAgB,CAAC,KAAK,CAAC,CACxB,CAAC;YACF,QAAQ,GAAG,wFAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,uFAAgB,EAAE,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,kBAAkB,sBAAE,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,CAAC,KAAK,CAAC;AACf,CAAC;AAED,uBACE,KAAwB,EACxB,MAAc;IAEd,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC;QAC9B,IAAM,eAAe,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,UAAC,KAAK,EAAE,UAAU;YAC9D,uGAAkB,CAAC,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;QAA9D,CAA8D,CAC/D,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,eAAe,mBAAE,CAAC,CAAC;IACvD,CAAC;IAED,qBAAqB;IACrB,IAAM,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;IAC1C,0BAA0B;IAC1B,gDAAgD;IAChD,IAAI,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;IAE/B,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC;QAChC,IAAM,cAAc,GAAG,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;QAChD,GAAG,CAAC,CACF,IAAI,aAAa,GAAG,CAAC,EACrB,aAAa,GAAG,aAAa,EAC7B,aAAa,EAAE,EACf,CAAC;YACD,iDAAiD;YACjD,cAAc,CAAC,aAAa,CAAC,GAAG,oGAAoB,CAClD,QAAQ,EACR,gBAAgB,CAAC,KAAK,CAAC,CACxB,CAAC;YACF,QAAQ,GAAG,wFAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,cAAc,kBAAE,CAAC,CAAC;IACtD,CAAC;IAED,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;QAC/B,IAAM,kBAAkB,GAAG,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;QACpD,GAAG,CAAC,CACF,IAAI,aAAa,GAAG,CAAC,EACrB,aAAa,GAAG,aAAa,EAC7B,aAAa,EAAE,EACf,CAAC;YACD,iDAAiD;YACjD,kBAAkB,CAAC,aAAa,CAAC,GAAG,kGAAmB,CACrD,QAAQ,EACR,gBAAgB,CAAC,KAAK,CAAC,CACxB,CAAC;YACF,QAAQ,GAAG,wFAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,kBAAkB,sBAAE,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,CAAC,KAAK,CAAC;AACf,CAAC;AAED,qBACE,KAAwB,EACxB,MAAc;IAEd,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC;QAC9B,IAAM,aAAa,GAAG,KAAK,CAAC,eAAe,CAAC,GAAG,CAC7C,UAAC,cAAc,EAAE,UAAU;YACzB,mGAAgB,CAAC,cAAc,EAAE;gBAC/B,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,aAAa,EAAE,KAAK,CAAC,aAAa;gBAClC,aAAa,EAAE,KAAK,CAAC,aAAa;gBAClC,UAAU;aACX,CAAC;QATF,CASE,CACL,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,aAAa,iBAAE,CAAC,CAAC;IACrD,CAAC;IAED,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC;QAChC,IAAM,qBAAqB,GAAG,KAAK,CAAC,cAAc,CAAC,GAAG,CACpD,UAAC,cAAc,EAAE,UAAU;YACzB,uGAAkB,CAAC,cAAc,EAAE;gBACjC,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,aAAa,EAAE,KAAK,CAAC,aAAa;gBAClC,UAAU;aACX,CAAC;QAPF,CAOE,CACL,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,qBAAqB,yBAAE,CAAC,CAAC;IAC7D,CAAC;IAED,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;QAC/B,IAAM,oBAAoB,GAAG,KAAK,CAAC,kBAAkB,CAAC,GAAG,CACvD,UAAC,cAAc,EAAE,SAAS;YACxB,sGAAiB,CAAC,cAAc,EAAE;gBAChC,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,aAAa,EAAE,KAAK,CAAC,aAAa;gBAClC,SAAS;aACV,CAAC;QAPF,CAOE,CACL,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,oBAAoB,wBAAE,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,CAAC,KAAK,CAAC;AACf,CAAC;AAED,0BAA0B,KAAwB;IAChD,MAAM,CAAC;QACL,MAAM,EAAE,KAAK,CAAC,MAAM;QAEpB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,SAAS,EAAE,KAAK,CAAC,SAAS;QAE1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,SAAS,EAAE,KAAK,CAAC,SAAS;QAE1B,WAAW,EAAE,KAAK,CAAC,WAAW;KAC/B,CAAC;AACJ,CAAC;;;;;;;;;;;;;AClUiD;AACW;AAO7D;IAAA;IAkDA,CAAC;IAAD,wBAAC;AAAD,CAAC;;AAED,IAAM,YAAY,GAA0B,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAEvE,IAAM,sBAAsB,GAAsB,MAAM,CAAC,MAAM,CACpE,IAAI,iFAAkB,EAAE,EACxB;IACE,IAAI,EAAE,YAAY;IAClB,aAAa,EAAE,EAAE;IACjB,gBAAgB,EAAE,sEAAmB;CACtC,CACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;AC/EyC;AACa;AAIzB;AACwB;AAEC;AACM;AAG9D;IAAuC,qCAA4B;IACjE;QAAA,iBAUC;QATC,IAAM,WAAW,GAAG,IAAI,qEAAe,CAAS;YAC9C,IAAI,EAAE,8BAA8B;SACrC,CAAC,CAAC;QACH,IAAM,KAAK,GAAG,IAAI,yEAAS,CACzB,oFAAsB,EACtB,WAAW,EACX,mFAAmB,CACpB,CAAC;QACF,0BAAM,WAAW,EAAE,mFAAmB,EAAE,KAAK,CAAC,SAAC;;IACjD,CAAC;IACI,4BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,gCAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,wBAAC;CAAA,CAlBsC,yEAAS,GAkB/C;AAlB6B;;;;;;;;;;;ACZY;AAG1C;IAAA;IAwBA,CAAC;IAxB8C,oCAAU,GAA0B;QACnF,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,oBAAoB;oBAC9B,QAAQ,EAAE,6cAeT;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,wCAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,gCAAC;CAAA;AAxBqC;;;;;;;;;;;ACHW;AAGjD;IAAA;IAcA,CAAC;IAZM,qCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,iBAAiB;oBAC3B,QAAQ,EAAE,gEAA8D;iBACzE,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,yCAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACK,yCAAc,GAA2C;QAChE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;KAC1B,CAAC;IACF,iCAAC;CAAA;AAdsC;;;;;;;;;;;ACHmC;AAQ1E;IAAA;IAsBA,CAAC;IAnBM,qCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,qBAAqB;oBAC/B,QAAQ,EAAE,gNAKT;oBACD,eAAe,EAAE,8EAAuB,CAAC,MAAM;iBAChD,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,yCAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACK,yCAAc,GAA2C;QAChE,oBAAoB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACxC,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;KAC3B,CAAC;IACF,iCAAC;CAAA;AAtBsC;;;;;;;;;;;;;;;;;;;;;;;;;;ACRoC;AACQ;AAEnB;AAEU;AACA;AACJ;AAItE;IAAoD,kDAA6B;IAQ/E,wCACU,OAA2B,EAC3B,MAAyB,EACzB,QAA6B,EACrC,QAA6B;QAJ/B,YAME,iBAAO,SAER;QAPS,aAAO,GAAP,OAAO,CAAoB;QAC3B,YAAM,GAAN,MAAM,CAAmB;QACzB,cAAQ,GAAR,QAAQ,CAAqB;QANvC,iBAAW,GAAuB,IAAI,mEAAY,EAAQ,CAAC;QAE3D,WAAK,GAAmB,EAAE,CAAC;QAQzB,KAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;;IAC3B,CAAC;IAdD,sBAAI,iDAAK;aAAT,UAAU,KAAW;YACnB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;;;OAAA;IAcD,iDAAQ,GAAR;QAAA,iBAmBC;QAlBC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;QAClD,IAAI,CAAC,QAAQ;aACV,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;aAEjB,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;aAExB,WAAW,CAAC,IAAI,CAAC;aAEjB,gBAAgB,CAAC,IAAI,CAAC;aACtB,6BAA6B,EAAE,CAAC;QAEnC,+BAA+B;QAC/B,0BAA0B;QAC1B,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,IAAI,CAAC,MAAM;aACR,MAAM,CAAC,eAAK,IAAI,YAAK,CAAC,YAAY,EAAlB,CAAkB,CAAC;aACnC,SAAS,CAAC,cAAI,IAAI,YAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAA3B,CAA2B,CAAC,CAClD,CAAC;IACJ,CAAC;IAED,yDAAgB,GAAhB,UAAiB,GAAiB;QAChC,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;YACvC,MAAM,CAAC;QACT,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IACvD,CAAC;IAED,oDAAW,GAAX;QACE,GAAG,CAAC,CAAc,UAAU,EAAV,SAAI,CAAC,KAAK,EAAV,cAAU,EAAV,IAAU;YAAvB,IAAM,GAAG;YACZ,GAAG,CAAC,WAAW,EAAE,CAAC;SACnB;QACD,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IACI,yCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,yBAAyB;oBACnC,SAAS,EAAE,CAAC,uFAAiB,EAAE,2FAAmB,CAAC;oBACnD,QAAQ,EAAE,y2DAAy2D;oBACn3D,IAAI,EAAE;wBACJ,SAAS,EAAE,0BAA0B;wBACrC,KAAK,EAAE,qCAAqC;qBAC7C;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,6CAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,iFAAkB,GAAG;QAC5B,EAAC,IAAI,EAAE,uFAAiB,GAAG;QAC3B,EAAC,IAAI,EAAE,2FAAmB,GAAG;QAC7B,EAAC,IAAI,EAAE,2FAAmB,GAAG;KAC5B,EAL6F,CAK7F,CAAC;IACF,qCAAC;CAAA,CAtEmD,oGAA6B,GAsEhF;AAtE0C;;;;;;;;;;;ACX+B;AAI1E;IAAA;IAwBA,CAAC;IAtBM,4CAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,4BAA4B;oBACtC,eAAe,EAAE,8EAAuB,CAAC,MAAM;oBAC/C,IAAI,EAAE;wBACJ,kBAAkB,EAAE,gBAAgB;wBACpC,wBAAwB,EAAE,eAAe;wBACzC,wBAAwB,EAAE,kBAAkB;wBAC5C,kBAAkB,EAAE,eAAe;wBACnC,sBAAsB,EAAE,sBAAsB;wBAC9C,oBAAoB,EAAE,oBAAoB;wBAC1C,kBAAkB,EAAE,gBAAgB;qBACrC;oBACD,QAAQ,EAAE,iBAAiB;iBAC5B,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,gDAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACK,gDAAc,GAA2C;QAChE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;KACxB,CAAC;IACF,wCAAC;CAAA;AAxB6C;;;;;;;;;;;;ACEvB;AAKK;AAG5B;IAAA;QAGG,eAAU,GAAG,IAAI,mEAAY,EAAyB,CAAC;QACvD,eAAU,GAAG,IAAI,mEAAY,EAAwB,CAAC;IA+CzD,CAAC;IA7CC,mDAAK,GAAL,UAAM,IAAa;QACjB,IAAI,CAAC,UAAU,CAAC,IAAI,CAClB,IAAI,GAAG,4EAAqB,CAAC,IAAI,GAAG,4EAAqB,CAAC,EAAE,CAC7D,CAAC;IACJ,CAAC;IAED,kDAAI,GAAJ,UAAK,QAA8B;QACjC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IACI,8CAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,+BAA+B;oBACzC,eAAe,EAAE,8EAAuB,CAAC,MAAM;oBAC/C,QAAQ,EAAE,ywBAqBT;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,kDAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACK,kDAAc,GAA2C;QAChE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QACjC,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;KAChC,CAAC;IACF,0CAAC;CAAA;AAnD+C;;;;;;;;;;;;;;;;;;;;;;;;;;ACd2B;AACQ;AACnB;AAEU;AACA;AACJ;AAItE;IAAyD,uDAA6B;IAUpF,6CACU,OAA2B,EAC3B,MAAyB,EACzB,QAA6B,EACrC,QAA6B;QAJ/B,YAME,iBAAO,SAER;QAPS,aAAO,GAAP,OAAO,CAAoB;QAC3B,YAAM,GAAN,MAAM,CAAmB;QACzB,cAAQ,GAAR,QAAQ,CAAqB;QAPvC,iBAAW,GAAG,IAAI,mEAAY,EAAU,CAAC;QAEzC,iBAAW,GAAW,EAAE,CAAC;QACzB,WAAK,GAAmB,EAAE,CAAC;QAQzB,KAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;;IAC3B,CAAC;IAhBD,sBAAI,sDAAK;aAAT,UAAU,KAAa;YACrB,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC;;;OAAA;IAgBD,sDAAQ,GAAR;QAAA,iBAoBC;QAnBC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;QAClD,IAAI,CAAC,QAAQ;aACV,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;aAGjB,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;aAExB,WAAW,CAAC,IAAI,CAAC;aAEjB,gBAAgB,CAAC,IAAI,CAAC;aACtB,6BAA6B,EAAE,CAAC;QAEnC,+BAA+B;QAC/B,0BAA0B;QAC1B,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,IAAI,CAAC,MAAM;aACR,MAAM,CAAC,eAAK,IAAI,YAAK,CAAC,aAAa,EAAnB,CAAmB,CAAC;aACpC,SAAS,CAAC,cAAI,IAAI,YAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAA3B,CAA2B,CAAC,CAClD,CAAC;IACJ,CAAC;IAED,8DAAgB,GAAhB,UAAiB,GAAiB;QAChC,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;YACvC,MAAM,CAAC;QACT,CAAC;QAED,uCAAuC;QACvC,mCAAmC;QACnC,gCAAgC;QAChC,uCAAuC;QACvC,wBAAwB;QACxB,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC;YAClC,IAAI,CAAC,WAAW;gBACd,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;sBAC3B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC;sBAC/B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC;YAClC,IAAI,CAAC,WAAW,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAElE,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC;YAClC,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACxB,CAAC;IACH,CAAC;IAED,yDAAW,GAAX;QACE,GAAG,CAAC,CAAc,UAAU,EAAV,SAAI,CAAC,KAAK,EAAV,cAAU,EAAV,IAAU;YAAvB,IAAM,GAAG;YACZ,GAAG,CAAC,WAAW,EAAE,CAAC;SACnB;QACD,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IACI,8CAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,8BAA8B;oBACxC,SAAS,EAAE,CAAC,uFAAiB,EAAE,2FAAmB,CAAC;oBACnD,QAAQ,EAAE,y2DAAy2D;oBACn3D,IAAI,EAAE;wBACJ,SAAS,EAAE,0BAA0B;wBACrC,KAAK,EAAE,qCAAqC;qBAC7C;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,kDAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,iFAAkB,GAAG;QAC5B,EAAC,IAAI,EAAE,uFAAiB,GAAG;QAC3B,EAAC,IAAI,EAAE,2FAAmB,GAAG;QAC7B,EAAC,IAAI,EAAE,2FAAmB,GAAG;KAC5B,EAL6F,CAK7F,CAAC;IACF,0CAAC;CAAA,CA9FwD,oGAA6B,GA8FrF;AA9F+C;;;;;;;;;;;;ACLzB;AASK;AAG5B;IAAA;QAIG,eAAU,GAAG,IAAI,mEAAY,EAAqB,CAAC;QACnD,eAAU,GAAG,IAAI,mEAAY,EAAwB,CAAC;QAEtD,aAAQ,GAAG,IAAI,mEAAY,EAAgB,CAAC;QAC5C,YAAO,GAAG,IAAI,mEAAY,EAAkB,CAAC;IAwEhD,CAAC;IAtEC,gDAAU,GAAV,UAAW,KAA4B;QACrC,IAAM,IAAI,GAAG,4EAAqB,CAAC,IAAI,KAAK,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QAC3D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,oDAAc,GAAd,UAAe,KAA2B;QACxC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED,+CAAS,GAAT,UAAU,KAAmB;QAC3B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,8CAAQ,GAAR,UAAS,IAAkB,EAAE,SAAkB;QAC7C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,QAAE,SAAS,aAAE,CAAC,CAAC;IACzC,CAAC;IACI,sCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,uBAAuB;oBACjC,mDAAmD;oBACnD,QAAQ,EAAE,uuCAoCT;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,0CAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACK,0CAAc,GAA2C;QAChE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QACjC,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QACjC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC/B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;KAC7B,CAAC;IACF,kCAAC;CAAA;AAhFuC;;;;;;;;;;;;ACjB+B;AAQ3C;AAG5B;IAAA;QAGG,eAAU,GAAG,IAAI,mEAAY,EAAqB,CAAC;QACnD,eAAU,GAAG,IAAI,mEAAY,EAAwB,CAAC;QAEtD,aAAQ,GAAG,IAAI,mEAAY,EAAyB,CAAC;QACrD,YAAO,GAAG,IAAI,mEAAY,EAAkB,CAAC;IAyDhD,CAAC;IAvDC,iDAAU,GAAV,UAAW,KAA4B;QACrC,IAAM,IAAI,GAAG,4EAAqB,CAAC,IAAI,KAAK,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QAC3D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,gDAAS,GAAT,UAAU,KAA4B;QACpC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,iDAAU,GAAV,UAAW,IAA2B,EAAE,SAAkB;QACxD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,QAAE,SAAS,aAAE,CAAC,CAAC;IACzC,CAAC;IAED,qDAAc,GAAd,UAAe,KAA2B;QACxC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IACI,uCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,wBAAwB;oBAClC,QAAQ,EAAE,szBAuBT;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,2CAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACK,2CAAc,GAA2C;QAChE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QACjC,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QACjC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC/B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;KAC7B,CAAC;IACF,mCAAC;CAAA;AAhEwC;;;;;;;;;;ACXzC;AAAA,iCAAC;AACyC;AAG1C;IAAA;QACE,SAAI,GAAG,IAAI,CAAC;QACZ,UAAK,GAAG,CAAC,CAAC;QACV,YAAO,GAAG,CAAC,CAAC;IA4Bd,CAAC;IA3BM,oCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,eAAe;oBACzB,QAAQ,EAAE,kqCAkBT;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,wCAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,gCAAC;CAAA;AA/BqC;;;;;;;;;;;;;ACJiC;AACD;AAQ1C;AAG5B;IAAA;QAGG,eAAU,GAAG,IAAI,mEAAY,EAAqB,CAAC;QACnD,eAAU,GAAG,IAAI,mEAAY,EAAwB,CAAC;QAEtD,aAAQ,GAAG,IAAI,mEAAY,EAAyB,CAAC;QACrD,YAAO,GAAG,IAAI,mEAAY,EAAkB,CAAC;IAyDhD,CAAC;IAvDC,iDAAU,GAAV,UAAW,KAA4B;QACrC,IAAM,IAAI,GAAG,4EAAqB,CAAC,IAAI,KAAK,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QAC3D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,uFAAgB,EAAE,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,+CAAQ,GAAR,UAAS,IAA2B;QAClC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,gDAAS,GAAT,UAAU,IAA2B,EAAE,SAAkB;QACvD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,QAAE,SAAS,aAAE,CAAC,CAAC;IACzC,CAAC;IAED,qDAAc,GAAd,UAAe,KAA2B;QACxC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IACI,uCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,wBAAwB;oBAClC,QAAQ,EAAE,0yBAuBT;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,2CAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACK,2CAAc,GAA2C;QAChE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QACjC,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QACjC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC/B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;KAC7B,CAAC;IACF,mCAAC;CAAA;AAhEwC;;;;;;;;;;;;;;;;ACTG;AACmB;AAInB;AACwB;AAE9D,kCACJ,IAAU,EACV,OAAoC;IAEpC,EAAE,CAAC,CAAC,+FAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC;IACd,CAAC;IAED,IAAM,OAAO,GAAG,2FAAY,CAAC,IAAI,CAAC,CAAC;IAEnC,MAAM,CAAC,wFAAS,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;AAC5C,CAAC;AAEK,yBAA0B,IAAU,EAAE,GAAS,EAAE,GAAS;IAC9D,IAAM,QAAQ,GAAG,GAAG,IAAI,6FAAc,CAAC,oFAAK,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IACzE,IAAM,QAAQ,GAAG,GAAG,IAAI,4FAAa,CAAC,sFAAO,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IAE1E,MAAM,CAAC,QAAQ,IAAI,QAAQ,CAAC;AAC9B,CAAC;AAEK,wBAAyB,IAAU,EAAE,GAAS,EAAE,GAAS;IAC7D,IAAM,QAAQ,GAAG,GAAG,IAAI,6FAAc,CAAC,oFAAK,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IACxE,IAAM,QAAQ,GAAG,GAAG,IAAI,4FAAa,CAAC,sFAAO,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IAEzE,MAAM,CAAC,QAAQ,IAAI,QAAQ,CAAC;AAC9B,CAAC;;;;;;;;;;;ACnC8D;AAWzD,sBACJ,OAAsB,EACtB,EAAqB;IAErB,IAAI,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC;IACpC,IAAM,MAAM,GAAU,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAChD,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACrC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAC7B,SAAS,GAAG,wFAAS,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED,MAAM,CAAC,MAAM,CAAC;AAChB,CAAC;;;;;;;;;;;;AC3BD;AAAA,cAAC;AACD,iBAAiB;AACiC;AAEF;AACwB;AAGxE;IAKE,6BAAY,UAAoC;QAFhD,SAAI,GAAU,EAAE,CAAC;QAGf,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,sBAAI,sCAAK;aAAT;YACE,MAAM,CAAC,CAAC,4EAAK,EAAE,CAAC;QAClB,CAAC;;;OAAA;IAED,sCAAQ,GAAR;QACE,IAAM,IAAI,GAAG,IAAI,CAAC;QAElB,IAAI,CAAC,UAAU,CAAC,QAAQ,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;QAEhE,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC;YACpC,IAAM,KAAK,GAAU,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/C,IAAI,IAAU,CAAC;YACf,IAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;YAElE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;gBACxC,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;gBACjC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBAC9B,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;gBACxD,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ,GAAG,GAAG,GAAG,CAAC,CAAC;YACzC,CAAC;YAED,IAAI,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CACjE,KAAK,CACN,CAAC;YACF,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QAC9D,CAAC,EAAE,MAAM,CAAC,CAAC;QAEX,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,UAChC,KAAW,EACX,KAAW;YAEX,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QACnD,CAAC,EAAE,MAAM,CAAC,CAAC;QAEX,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;IAChC,CAAC;IAES,6CAAe,GAAzB,UAA0B,IAAY;QACpC,iBAAiB;QACjB,MAAM,CAAC,CACL,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,CAAC,CACvE,CAAC;IACJ,CAAC;IACI,8BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,YAAY;oBACtB,QAAQ,EAAE,i0DAoCT;oBACD,MAAM,EAAE;wBACN,iFAID;qBACA;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,kCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,6FAAwB,GAAG;KACjC,EAF6F,CAE7F,CAAC;IACF,0BAAC;CAAA;AAzG+B;;;;;;;;;;;;ACDT;AAC+B;AAGtD;IASE,sCACU,MAAuB,EACvB,EAAqB,EACrB,SAAoB,EAC5B,QAAoB;QAJtB,iBA2BC;QA1BS,WAAM,GAAN,MAAM,CAAiB;QACvB,OAAE,GAAF,EAAE,CAAmB;QACrB,cAAS,GAAT,SAAS,CAAW;QAX9B,WAAM,GAAG,KAAK,CAAC;QAcb,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,UAAC,KAAc;YAChE,KAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACpB,IAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;YACxE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACb,KAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBAC1C,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;oBACvD,KAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;oBAClD,KAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;gBAClD,CAAC;gBACD,EAAE,CAAC,CAAC,KAAI,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC;oBAC5B,KAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;oBACjD,KAAI,CAAC,SAAS,CAAC,QAAQ,CACrB,QAAQ,EACR,WAAW,EACX,mBAAmB,CACpB,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,KAAI,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC;YACvB,KAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;IAjCD,sBAAI,mDAAS;aAAb;YACE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QAC/B,CAAC;;;OAAA;IAiCD,kDAAW,GAAX;QACE,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;IACnC,CAAC;IACI,uCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,uBAAuB;oBACjC,eAAe,EAAE,8EAAuB,CAAC,MAAM;oBAC/C,IAAI,EAAE;wBACJ,KAAK,EAAE,mCAAmC;qBAC3C;oBACD,QAAQ,EAAE,8MAKT;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,2CAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,2EAAe,GAAG;QACzB,EAAC,IAAI,EAAE,wEAAiB,GAAG;QAC3B,EAAC,IAAI,EAAE,iEAAS,GAAG;QACnB,EAAC,IAAI,EAAE,iEAAU,GAAG;KACnB,EAL6F,CAK7F,CAAC;IACF,mCAAC;CAAA;AA/DwC;;;;;;;;;;;;ACXgC;AACnB;AAGtD;IACE,iCACE,MAAuB,EACvB,cAAgC,EAChC,YAA8B;QAE9B,MAAM,CAAC,mBAAmB,CAAC;YACzB,WAAW,EAAE,YAAY;YACzB,aAAa,EAAE,cAAc;SAC9B,CAAC,CAAC;IACL,CAAC;IACI,kCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,iCAAiC;oBAC3C,QAAQ,EAAE,kBAAkB;iBAC7B,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,sCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,2EAAe,GAAG;QACzB,EAAC,IAAI,EAAE,yEAAgB,GAAG;QAC1B,EAAC,IAAI,EAAE,mEAAW,GAAG;KACpB,EAJ6F,CAI7F,CAAC;IACF,8BAAC;CAAA;AAvBmC;;;;;;;;;;;;ACEb;AAG+B;AAGtD;IAQE,mCAAoB,MAAuB,EAAU,QAAoB;QAAzE,iBAaC;QAbmB,WAAM,GAAN,MAAM,CAAiB;QAAU,aAAQ,GAAR,QAAQ,CAAY;QAPxE,eAAU,GAAY,IAAI,CAAC;QAKpB,mBAAc,GAAmB,EAAE,CAAC;QAG1C,gCAAgC;QAChC,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,CAChC,UAAC,KAAc,IAAK,QAAC,KAAI,CAAC,MAAM,GAAG,KAAK,CAAC,EAArB,CAAqB,CAC1C,CACF,CAAC;QACF,0BAA0B;QAC1B,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,SAAS,CACpC,UAAC,KAAc,IAAK,QAAC,KAAI,CAAC,UAAU,GAAG,KAAK,IAAI,IAAI,CAAC,EAAjC,CAAiC,CACtD,CACF,CAAC;IACJ,CAAC;IAGD,2CAAO,GAAP,UAAQ,KAAiB;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YACpB,MAAM,CAAC;QACT,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAGD,mDAAe,GAAf,UAAgB,KAAU;QACxB,EAAE,CAAC,CACD,IAAI,CAAC,MAAM,CAAC,SAAS;YACrB,KAAK,CAAC,MAAM,KAAK,CAAC;YAClB,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CACpD,CAAC,CAAC,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAGD,yCAAK,GAAL;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED,+CAAW,GAAX;QACE,GAAG,CAAC,CAAc,UAAmB,EAAnB,SAAI,CAAC,cAAc,EAAnB,cAAmB,EAAnB,IAAmB;YAAhC,IAAM,GAAG;YACZ,GAAG,CAAC,WAAW,EAAE,CAAC;SACnB;IACH,CAAC;IACI,oCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,qCAAqC;oBAC/C,QAAQ,EAAE,oBAAoB;oBAC9B,IAAI,EAAE;wBACJ,sBAAsB,EAAE,MAAM;qBAC/B;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,wCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,2EAAe,GAAG;QACzB,EAAC,IAAI,EAAE,iEAAU,GAAG;KACnB,EAH6F,CAG7F,CAAC;IACK,wCAAc,GAA2C;QAChE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,eAAe,EAAG,EAAE,EAAE;QACjE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,oBAAoB,EAAG,EAAE,EAAE;QAClE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,mEAAY,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAG,EAAE,EAAE;QACnE,iBAAiB,EAAE,CAAC,EAAE,IAAI,EAAE,mEAAY,EAAE,IAAI,EAAE,CAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC,EAAG,EAAE,EAAE;QACpF,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,mEAAY,EAAE,IAAI,EAAE,CAAC,WAAW,EAAG,EAAE,EAAE;KACxD,CAAC;IACF,gCAAC;CAAA;AA5EqC;;;;;;;;;;;ACZK;AAE3C,qCAAqC;AAErC;IAAA;QACE,6CAA6C;QAC7C,cAAS,GAAG,IAAI,CAAC;IAOnB,CAAC;IANM,2BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,+BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,uBAAC;CAAA;AAT4B;;;;;;;;;;;;;;;;;ACJ7B;AAAA,qCAAC;AAIsB;AAEW;AAC4C;AAEtB;AACyB;AAC3B;AAGN;AAGhD;IAyGE,6BAAoB,WAAuB,EACvB,SAAoB,EACpB,iBAAmC,EACnC,IAA4B,EAC5B,OAAyB,EACzB,MAAuB;QALvB,gBAAW,GAAX,WAAW,CAAY;QACvB,cAAS,GAAT,SAAS,CAAW;QACpB,sBAAiB,GAAjB,iBAAiB,CAAkB;QACnC,SAAI,GAAJ,IAAI,CAAwB;QAC5B,YAAO,GAAP,OAAO,CAAkB;QACzB,WAAM,GAAN,MAAM,CAAiB;QAnB3C,iCAAiC;QACzB,kBAAa,GAAG,KAAK,CAAC;QAUtB,mBAAc,GAAmB,EAAE,CAAC;QACpC,cAAS,GAAG,KAAK,CAAC;QAQxB,mCAAmC;QACnC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI;aACvB,YAAY,CACX,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,SAAS,CACf;aACA,OAAO,CAAC,EAAC,OAAO,EAAE,2EAAe,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAC,CAAC,CAAC;QAE9D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;QACtC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;QACxC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;QAE7C,yCAAyC;QACzC,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;IACjD,CAAC;IApGD,sBAAI,0CAAS;aAMb;YACE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QAC/B,CAAC;QAbD;;;WAGG;aAEH,UAAc,KAAc;YAC1B,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC;gBAC/B,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC;YAChC,CAAC;QACH,CAAC;;;OAAA;IAUD,sBAAI,2CAAU;aAQd;YACE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;QAdD;;WAEG;aAEH,UAAe,KAAc;YAC3B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YACzB,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBACV,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,CAAC;QACH,CAAC;;;OAAA;IAUD,sBAAI,uCAAM;QAJV;;WAEG;aAEH;YACE,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;gBACrB,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;YAC5B,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;QAChC,CAAC;aAED,UAAW,KAAc;YACvB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBACV,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,CAAC;YAAC,IAAI,CAAC,CAAC;gBACN,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,CAAC;QACH,CAAC;;;OARA;IAyBD,sBAAI,sCAAK;aAAT;YACE,MAAM,CAAC,CAAC,4EAAK,EAAE,CAAC;QAClB,CAAC;;;OAAA;IAKD,sBAAY,4CAAW;aAAvB;YACE,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;QACzB,CAAC;;;OAAA;IAgCD,sCAAQ,GAAR;QAAA,iBA0BC;QAzBC,wDAAwD;QACxD,uEAAuE;QACvE,yEAAyE;QACzE,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YACnB,MAAM,CAAC;QACT,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,uBAAuB;QACvB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;YACpB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,cAAM,YAAI,CAAC,IAAI,EAAE,EAAX,CAAW;SACxB,CAAC,CAAC;QAEH,4CAA4C;QAC5C,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,UAAC,KAAc,IAAK,YAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAlB,CAAkB,CAAC,CAC1E,CAAC;QAEF,6CAA6C;QAC7C,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,IAAI,CAAC,MAAM,CAAC,gBAAgB;aACzB,MAAM,CAAC,UAAC,KAAc,IAAK,YAAK,EAAL,CAAK,CAAC;aACjC,SAAS,CAAC,UAAC,KAAc,IAAK,YAAI,CAAC,IAAI,EAAE,EAAX,CAAW,CAAC,CAC9C,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,kCAAI,GAAJ;QAAA,iBAkDC;QAjDC,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YACnC,MAAM,CAAC;QACT,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YACrB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;gBACvB,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAC3B,UAAC,YAAqD;oBACpD,KAAI,CAAC,SAAS,CAAC,YAAY,CACzB,YAAY,CAAC,aAAa,EAC1B,YAAY,CAAC,WAAW,CACzB,CAAC;oBACF,KAAI,CAAC,YAAY,GAAG,KAAI,CAAC,SAAS,CAAC,cAAc,CAAC;oBAClD,KAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,CAAC,CACF;qBAEE,KAAK,EAAE,CAAC;YACb,CAAC;YACD,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxB,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEpC,MAAM,CAAC;QACT,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,sBAAY;YACxC,qDAAqD;YACrD,IAAM,OAAO,GACX,KAAI,CAAC,MAAM;gBACX,CAAC,OAAO,KAAI,CAAC,MAAM,KAAK,WAAW,IAAI,KAAI,CAAC,MAAM,CAAC,CAAC;YACtD,KAAI,CAAC,MAAM,CAAC,SAAS,GAAG,OAAO,GAAG,IAAI,GAAG,MAAM,CAAC;YAChD,IAAM,UAAU,GACd,KAAI,CAAC,SAAS,IAAI,CAAC,OAAO,GAAG,UAAU,GAAG,aAAa,CAAC,CAAC;YAE3D,gBAAgB;YAChB,KAAI,CAAC,SAAS;iBACX,MAAM,CAAC,sGAA4B,CAAC;iBACpC,EAAE,CAAC,KAAI,CAAC,SAAS,CAAC;iBAClB,QAAQ,CAAC,EAAC,UAAU,EAAE,UAAU,EAAC,CAAC;iBAClC,IAAI,CAAC;gBACJ,OAAO,EAAE,YAAY,CAAC,WAAW;gBACjC,SAAS,EAAE,UAAU;aACtB,CAAC,CAAC;YAEL,KAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC,CAAC;aAEC,KAAK,EAAE,CAAC;IACb,CAAC;IAED;;;OAGG;IACH,kCAAI,GAAJ;QACE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YACjB,MAAM,CAAC;QACT,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YACrB,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;YAC3B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QAAC,IAAI,CAAC,CAAC;YACN,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IAED;;;OAGG;IACH,oCAAM,GAAN,UAAO,KAAe;QACpB,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAC1B,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACrB,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IACrB,CAAC;IAED,yCAAW,GAAX;QACE,8CAA8C;QAC9C,GAAG,CAAC,CAAc,UAAmB,EAAnB,SAAI,CAAC,cAAc,EAAnB,cAAmB,EAAnB,IAAmB;YAAhC,IAAM,GAAG;YACZ,GAAG,CAAC,WAAW,EAAE,CAAC;SACnB;QACD,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAEO,6CAAe,GAAvB;QACE,EAAE,CAAC,CAAC,CAAC,4EAAK,EAAE,CAAC,CAAC,CAAC;YACb,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3B,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IAEO,0CAAY,GAApB;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACxD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAEO,6CAAe,GAAvB;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACxD,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAEO,iDAAmB,GAA3B;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACxD,IAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CACtE,qBAAqB,CACtB,CAAC;YACF,IAAI,CAAC,SAAS,CAAC,QAAQ,CACrB,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAC9B,MAAM,EACN,cAAc,GAAG,MAAM,GAAG,GAAG,CAC9B,CAAC;YACF,IAAI,CAAC,SAAS,CAAC,QAAQ,CACrB,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAC9B,OAAO,EACP,cAAc,GAAG,GAAG,GAAG,MAAM,CAC9B,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,yCAAW,GAAnB;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACxD,yDAAyD;YACzD,IAAM,KAAG,GAAG,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YACjE,IAAM,OAAO,GAAG,KAAG,KAAK,MAAM,IAAI,KAAG,KAAK,MAAM,CAAC;YACjD,IAAI,CAAC,SAAS,CAAC,QAAQ,CACrB,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAC9B,KAAK,EACL,IAAI,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,CAC9B,CAAC;YACF,IAAI,CAAC,SAAS,CAAC,QAAQ,CACrB,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAC9B,WAAW,EACX,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,GAAG,mBAAmB,GAAG,eAAe,CAChE,CAAC;QACJ,CAAC;IACH,CAAC;IACI,8BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,yBAAyB;oBACnC,QAAQ,EAAE,aAAa;oBACvB,SAAS,EAAE,CAAC,2EAAe,CAAC;oBAC5B,IAAI,EAAE;wBACJ,gBAAgB,EAAE,QAAQ;wBAC1B,cAAc,EAAE,QAAQ;wBACxB,cAAc,EAAE,iBAAiB;qBAClC;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,kCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,iEAAU,GAAG;QACpB,EAAC,IAAI,EAAE,iEAAS,GAAG;QACnB,EAAC,IAAI,EAAE,yEAAgB,GAAG;QAC1B,EAAC,IAAI,EAAE,iFAAsB,GAAG;QAChC,EAAC,IAAI,EAAE,6EAAgB,GAAG;QAC1B,EAAC,IAAI,EAAE,2EAAe,GAAG;KACxB,EAP6F,CAO7F,CAAC;IACK,kCAAc,GAA2C;QAChE,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC5B,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAChC,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC5B,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QACnC,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC9B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;KAC9B,CAAC;IACF,0BAAC;CAAA;AApV+B;;;;;;;;;;;;;;;;;;;ACjB8B;AACD;AAET;AAC6B;AACV;AACI;AACnB;AAEM;AACR;AAGtD;IAAA;IAkCA,CAAC;IAjCQ,wBAAO,GAAd,UAAe,MAAY;QACzB,MAAM,CAAC;YACL,QAAQ,EAAE,gBAAgB;YAC1B,SAAS,EAAE;gBACT,iFAAsB;gBACtB,wEAAkB;gBAClB,2EAAe;gBACf;oBACE,OAAO,EAAE,6EAAgB;oBACzB,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE;iBAChD;aACF;SACF,CAAC;IACJ,CAAC;IACI,2BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,YAAY,EAAE;wBACZ,4FAAuB;wBACvB,gGAAyB;wBACzB,sGAA4B;wBAC5B,mFAAmB;qBACpB;oBACD,OAAO,EAAE;wBACP,4FAAuB;wBACvB,gGAAyB;wBACzB,mFAAmB;qBACpB;oBACD,eAAe,EAAE,CAAC,sGAA4B,CAAC;iBAChD,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,+BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,uBAAC;CAAA;AAlC4B;;;;;;;;;;;ACb4B;AAIzD;IAaE;QAAA,iBAIC;QAhBD,cAAS,GAAkB,MAAM,CAAC;QAElC,iBAAY,GAAG,IAAI,mEAAY,EAAW,CAAC;QAC3C,qBAAgB,GAAG,IAAI,mEAAY,EAAW,CAAC;QAC/C,gBAAW,GAAG,IAAI,mEAAY,EAAW,CAAC;QASxC,IAAI,CAAC,YAAY,GAAG,IAAI,OAAO,CAAC,iBAAO;YACrC,KAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC;QACrC,CAAC,CAAC,CAAC;IACL,CAAC;IACI,0BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,8BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,sBAAC;CAAA;AAxB2B;;;;;;;;;;;;;;;;;;;;;;;ACJkC;AACS;AACI;AAGhC;AACW;AACE;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACRxD;AAAA,0CAAC;AAC6D;AACC;AACZ;AACM;AACG;AACA;AACM;AACD;AACd;AACe;AACG;AACf;AACV;AACI;AACkB;AACT;AACM;AACN;AAOpC;AAE8C;AAMhD;AAOC;AAE2C;AAWzC;AAUL;AAUG;AAOE;AAQC;AAEkC;AAQrC;AASJ;AAMM;AAOH;AAQE;AAOF;AAEmD;AAM1C;AAOL;AAEwC;AAE/D,IAAM,UAAU;IACd,oFAAe;IACf,wEAAW;IACX,8EAAa;IACb,iFAAc;IACd,iFAAc;IACd,uFAAgB;IAChB,sFAAgB;IAChB,wEAAW;IACX,uFAAgB;IAChB,2FAAiB;IACjB,+EAAa;IACb,4EAAY;IACZ,sEAAU;IACV,wFAAgB;IAChB,+EAAa;IACb,qFAAe;CAChB,CAAC;AAGF;IAAA;IA2BA,CAAC;IA3BiC,uBAAU,GAA0B;QACtE,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,OAAO,EAAE;wBACP,oFAAe,CAAC,OAAO,EAAE;wBACzB,wEAAW,CAAC,OAAO,EAAE;wBACrB,8EAAa,CAAC,OAAO,EAAE;wBACvB,iFAAc,CAAC,OAAO,EAAE;wBACxB,iFAAc,CAAC,OAAO,EAAE;wBACxB,uFAAgB,CAAC,OAAO,EAAE;wBAC1B,sFAAgB,CAAC,OAAO,EAAE;wBAC1B,wEAAW,CAAC,OAAO,EAAE;wBACrB,uFAAgB,CAAC,OAAO,EAAE;wBAC1B,2FAAiB,CAAC,OAAO,EAAE;wBAC3B,+EAAa,CAAC,OAAO,EAAE;wBACvB,4EAAY,CAAC,OAAO,EAAE;wBACtB,sEAAU,CAAC,OAAO,EAAE;wBACpB,wFAAgB,CAAC,OAAO,EAAE;wBAC1B,+EAAa,CAAC,OAAO,EAAE;wBACvB,qFAAe,CAAC,OAAO,EAAE;wBACzB,kEAAc,CAAC,OAAO,EAAE;qBACzB;oBACD,OAAO,EAAE,OAAO;iBACjB,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,2BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,mBAAC;CAAA;AA3BwB;AA8BzB;IAAA;IAUA,CAAC;IATQ,0BAAO,GAAd;QACE,MAAM,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC;IACpC,CAAC;IACI,6BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAG,EAAE;KACjD,CAAC;IACF,kBAAkB;IACX,iCAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,yBAAC;CAAA;AAV8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC5M/B;;GAEG;AACoD;AAGH;AACP;AACH;AAE1C;IAAkC,6BAAkB;IAClD,mBACE,aAAgB,EAChB,kBAAsC,EACtC,OAAyB;QAH3B,YAKE,kBAAM,aAAa,CAAC,SAgBrB;QAdC,IAAM,cAAc,GAAG,kEAAS,CAAC,IAAI,CAAC,kBAAkB,EAAE,2DAAK,CAAC,CAAC;QACjE,IAAM,MAAM,GAAG,wDAAI,CAAC,IAAI,CACtB,cAAc,EACd,UAAC,KAAQ,EAAE,MAAc;YACvB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;gBACZ,MAAM,CAAC,KAAK,CAAC;YACf,CAAC;YAED,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAChC,CAAC,EACD,aAAa,CACd,CAAC;QAEF,MAAM,CAAC,SAAS,CAAC,UAAC,KAAQ,IAAK,YAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAhB,CAAgB,CAAC,CAAC;;IACnD,CAAC;IACH,gBAAC;AAAD,CAAC,CAvBiC,qEAAe,GAuBhD;;;;;;;;;;;;;;;;;;;;;;;;;;;ACjCD;;GAEG;AAC0C;AAG6B;AAElC;AAGxC;IAAkC,6BAAa;IAC7C,mBACU,WAA6B,EAC7B,QAA4B,EACpC,MAAuB;QAHzB,YAKE,iBAAO,SAGR;QAPS,iBAAW,GAAX,WAAW,CAAkB;QAC7B,cAAQ,GAAR,QAAQ,CAAoB;QAKpC,KAAI,CAAC,MAAM,GAAG,MAAM,CAAC;;IACvB,CAAC;IAED,0BAAM,GAAN,UAAU,WAA4B;QACpC,IAAM,OAAO,GAAkB,sDAAG,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAE3D,MAAM,CAAC,wFAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,wBAAI,GAAJ,UAAQ,QAAwB;QAC9B,IAAM,KAAK,GAAG,IAAI,SAAS,CAAI,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACtE,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAE1B,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,4BAAQ,GAAR,UAAS,MAAc;QACrB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAED,wBAAI,GAAJ,UAAK,MAAc;QACjB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAED,yBAAK,GAAL,UAAM,GAAQ;QACZ,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED,4BAAQ,GAAR;QACE,QAAQ;IACV,CAAC;IACH,gBAAC;AAAD,CAAC,CAvCiC,2DAAU,GAuC3C;;;;;;;;;;;;AClD0C;AAG3C;IAAA;QAME;;WAEG;QACH,SAAI,GAAe,QAAQ,CAAC;IAO9B,CAAC;IANM,qBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,yBAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,iBAAC;CAAA;AAhBsB;;;;;;;;;;;;;;;;ACEA;AAG+D;AAClB;AACE;AAMvC;AACqB;AAGpD;IAuBE,wBAAY,eAAiC,EAAU,GAA2B;QAA3B,QAAG,GAAH,GAAG,CAAwB;QAtBlF,oBAAoB;QACpB,WAAM,GAAiB,iFAAmB,CAAC;QAE3C,WAAM,GAAsB,IAAI,mEAAY,EAAE,CAAC;QAC/C,YAAO,GAAsB,IAAI,mEAAY,EAAE,CAAC;QAChD,WAAM,GAAsB,IAAI,mEAAY,EAAE,CAAC;QAC/C,aAAQ,GAAsB,IAAI,mEAAY,EAAE,CAAC;QAEvC,sBAAiB,GAAG,KAAK,CAAC;QAC1B,wBAAmB,GAAG,CAAC,CAAC;QAExB,mBAAc,GAAG,CAAC,CAAC;QAIrB,gBAAW,GAAG,CAAC,CAAC;QAChB,sBAAiB,GAAG,EAAE,CAAC;QAEvB,YAAO,GAA+C,EAAE,CAAC;QAK/D,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAC1C,IAAI,EACJ,IAAI,EACJ,IAAI,CACL,CAAC;QACF,IAAI,CAAC,SAAS,GAAG,eAAe,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9D,CAAC;IAED,oBAAoB;IACpB,6BAAI,GAAJ,UAAK,OAAwC,EAAE,MAAY;QACzD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,iFAAmB,EAAE,MAAM,CAAC,CAAC;QAC7D,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAE9B,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED,6BAAI,GAAJ,UAAK,KAAa;QAAlB,iBAUC;QATC,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3B,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC;QACpE,UAAU,CAAC;YACT,KAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YACvB,KAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,kFAAoB,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,sCAAa,GAAb;QACE,IAAM,iBAAiB,GACrB,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC;QAC5D,IAAM,eAAe,GACnB,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC;QAE1D,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3B,IAAI,CAAC,cAAc,EAAE,CAAC;YAEtB,EAAE,CAAC,CAAC,iBAAiB,IAAI,eAAe,CAAC,CAAC,CAAC;gBACzC,IAAI,CAAC,eAAe;qBACjB,MAAM,CAAC,yFAAsB,CAAC;qBAC9B,EAAE,CAAC,MAAM,CAAC;qBACV,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC9C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC;YACxD,CAAC;QACH,CAAC;IACH,CAAC;IAED,sCAAa,GAAb;QAAA,iBAOC;QANC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YACtB,MAAM,CAAC;QACT,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;QAC1C,IAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,kFAAoB,CAAC,QAAQ,GAAG,CAAC,CAAC;QAC1E,UAAU,CAAC,cAAM,YAAI,CAAC,cAAc,EAAE,EAArB,CAAqB,EAAE,QAAQ,CAAC,CAAC;IACpD,CAAC;IAED,mCAAU,GAAV,UAAW,OAAY;QACrB,IAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1D,IAAM,UAAU,GAAG,IAAI,yEAAU,EAAE,CAAC;QACpC,IAAM,iBAAiB,GAAG,WAAW;aAClC,OAAO,CAAC,EAAE,OAAO,EAAE,0EAAY,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;aACzD,OAAO,CAAC,EAAE,OAAO,EAAE,yEAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;aACtD,MAAM,CAAC,2FAAuB,CAAC;aAC/B,EAAE,CAAC,MAAM,CAAC;aACV,IAAI,CAAC,EAAE,OAAO,WAAE,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QACvD,iBAAiB,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACzD,UAAU,CAAC,IAAI,GAAG;YAChB,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACpC,CAAC,CAAC;QACF,UAAU,CAAC,OAAO,GAAG,WAAW,CAAC,iBAAiB,EAAE,IAAI,IAAI,CAAC;QAE7D,MAAM,CAAC,UAAU,CAAC;IACpB,CAAC;IAED,mCAAU,GAAV,UAAW,KAAa;QACtB,IAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QAC5C,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;YAChB,WAAW,CAAC,IAAI,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IAED,uCAAc,GAAd;QACE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,yCAAgB,GAAhB,UAAiB,MAAc;QAC7B,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC;IAClC,CAAC;IAED,uCAAc,GAAd;QACE,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,6DAA6D;IAC7D,wBAAwB;IACxB,gBAAgB;IAChB,uCAAc,GAAd;QACE,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;QACvE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;IACjD,CAAC;IAED,qCAAY,GAAZ;QACE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,CAAC;QACT,CAAC;QAED,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CACjC,MAAM;aACH,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;aAC/B,gBAAgB,CAAC,eAAe,CAAC,IAAI,GAAG,EAC3C,EAAE,CACH,CAAC;QAEF,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAC3B,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAM,IAAI,CAAC,mBAAmB;gBAC5D,IAAI,CAAC,cAAc,OAAI,CAAC;QAC5B,CAAC;IACH,CAAC;IAEO,uCAAc,GAAtB;QACE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAM,IAAI,CAAC,mBAAmB,OAAI,CAAC;IACrE,CAAC;IAED,cAAc;IACN,0CAAiB,GAAzB;QACE,IAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACtD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,wEAAU,CAAC,kBAAkB,CAAC,CAAC;QAClE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACrD,IAAM,cAAc,GAAG,SAAS,CAAC,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;QACrE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAErD,MAAM,CAAC,cAAc,CAAC;IACxB,CAAC;IAEO,uCAAc,GAAtB;QACE,IAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAClC,IAAI,EACJ,IAAI,EACJ,IAAI,CACL,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAEO,sCAAa,GAArB,UAAsB,KAAa;QACjC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,OAAO,CAClB,UAAC,MAAgD,EAAE,CAAS;YAC1D,MAAM,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;QAChC,CAAC,CACF,CAAC;IACJ,CAAC;IAEO,kCAAS,GAAjB,UAAkB,IAAuB,EAAE,EAAqB;QAAhE,iBAIC;QAHC,IAAI,CAAC,SAAS,CAAC;YACb,EAAE,CAAC,IAAI,CAAC,KAAI,CAAC,iBAAiB,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;IACL,CAAC;IACI,yBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,6BAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,wEAAgB,GAAG;QAC1B,EAAC,IAAI,EAAE,0GAAsB,GAAG;KAC/B,EAH6F,CAG7F,CAAC;IACF,qBAAC;CAAA;AArM0B;;;;;;;;;;;;;;;;;;;;;;;;;ACpByB;AACY;AACM;AACF;AACf;AACF;AACN;AACO;;;;;;;;;;;;;;ACPqB;AAEtB;AACH;AACH;AAG7C,8EAA8E;AAE9E;IAgDE,gCAAY,OAAmB,EAAE,QAAmB;QAF1C,aAAQ,GAAG,KAAK,CAAC;QAGzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAlDD,sBAAI,8CAAU;aAAd;YACE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;aAED,UAAe,KAAc;YAC3B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YACzB,yFAAyF;QAC3F,CAAC;;;OALA;IAOD,sBAAI,2CAAO;aAAX;YACE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;aAED,UAAY,KAAc;YACxB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;YACtB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBACV,IAAI,CAAC,QAAQ,CAAC,QAAQ,CACpB,IAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,KAAG,wEAAU,CAAC,EAAI,CACnB,CAAC;YACJ,CAAC;YAAC,IAAI,CAAC,CAAC;gBACN,IAAI,CAAC,QAAQ,CAAC,WAAW,CACvB,IAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,KAAG,wEAAU,CAAC,EAAI,CACnB,CAAC;YACJ,CAAC;YACD,EAAE,CAAC,CAAC,CAAC,4EAAK,EAAE,CAAC,CAAC,CAAC;gBACb,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;oBACV,IAAI,CAAC,QAAQ,CAAC,QAAQ,CACpB,IAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,KAAG,wEAAU,CAAC,IAAM,CACrB,CAAC;gBACJ,CAAC;gBAAC,IAAI,CAAC,CAAC;oBACN,IAAI,CAAC,QAAQ,CAAC,WAAW,CACvB,IAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,KAAG,wEAAU,CAAC,IAAM,CACrB,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;;;OA5BA;IAyCD,yCAAQ,GAAR;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CACpB,IAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,KAAG,wEAAU,CAAC,IAAM,CACrB,CAAC;YACF,iEAAK,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC3C,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IACI,iCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,mBAAmB;oBAC7B,QAAQ,EAAE,GAAG;oBACb,IAAI,EAAE,EAAE,KAAK,EAAE,wEAAU,CAAC,QAAQ,EAAE;iBACrC,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,qCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,iEAAU,GAAG;QACpB,EAAC,IAAI,EAAE,iEAAS,GAAG;KAClB,EAH6F,CAG7F,CAAC;IACF,6BAAC;CAAA;AA3EkC;;;;;;;;;ACTnC;AAAA;IAGE,8BAAY,OAA6B;QAFzC,YAAO,GAAG,IAAI,CAAC;QAGb,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/B,CAAC;IACH,2BAAC;AAAD,CAAC;;;;;;;;;;;;;;ACCsB;AAMQ;AAC/B,OAAO,EAAE,gBAAe,MAAO,qBAAqB;AACJ;AAGhD;IAOE,iCAAY,OAAqB,EACX,QAAoB,EACtB,cAA8B,EAC9B,SAAoB;QAFlB,aAAQ,GAAR,QAAQ,CAAY;QACtB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,cAAS,GAAT,SAAS,CAAW;QARxC,YAAO,GAAG,KAAK,CAAC;QAGR,kBAAa,GAAG,KAAK,CAAC;QAM5B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED,0CAAQ,GAAR;QAAA,iBA0BC;QAzBC,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,SAAS,CAAC,QAAQ,CACrB,IAAI,CAAC,QAAQ,CAAC,aAAa,EAC3B,wEAAU,CAAC,IAAI,CAChB,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,QAAQ,CACrB,IAAI,CAAC,QAAQ,CAAC,aAAa,EAC3B,SAAS,EACT,OAAO,CACR,CAAC;QACF,UAAU,CAAC;YACT,KAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,KAAI,CAAC,SAAS,CAAC,QAAQ,CACrB,KAAI,CAAC,QAAQ,CAAC,aAAa,EAC3B,4EAAK,EAAE,GAAG,wEAAU,CAAC,EAAE,GAAG,wEAAU,CAAC,IAAI,CAC1C,CAAC;QACJ,CAAC,EAAE,IAAI,CAAC,UAAU,GAAG,kFAAoB,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QACxD,EAAE,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;YAC9B,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC/C,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC;gBACrC,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;YACrC,CAAC;YACD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,wEAAU,CAAC,IAAI,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAGD,yCAAO,GAAP,UAAQ,KAAU;QAChB,EAAE,CAAC,CACD,IAAI,CAAC,MAAM,CAAC,mBAAmB;YAC/B,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,QAAQ;YACjC,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,QAAQ,CAAC,aACjC,CAAC,CAAC,CAAC;YACD,MAAM,CAAC;QACT,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,6EAAe,CAAC,QAAQ,CAAC,CAAC;QAC/D,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAGD,uCAAK,GAAL;QACE,EAAE,CAAC,CACD,IAAI,CAAC,MAAM,CAAC,QAAQ;YACpB,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,cAAc,CAAC,cAAc,EACnD,CAAC,CAAC,CAAC;YACD,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,6EAAe,CAAC,GAAG,CAAC,CAAC;YAC1D,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC;IACH,CAAC;IAED,6CAAW,GAAX;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YACjB,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC;IACH,CAAC;IAED,sCAAI,GAAJ;QAAA,iBAqBC;QApBC,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YACxC,MAAM,CAAC;QACT,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,SAAS,CAAC,WAAW,CACxB,IAAI,CAAC,QAAQ,CAAC,aAAa,EAC3B,4EAAK,EAAE,GAAG,wEAAU,CAAC,EAAE,GAAG,wEAAU,CAAC,IAAI,CAC1C,CAAC;QACF,UAAU,CAAC;YACT,KAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,EAAE,CAAC,CACD,QAAQ;gBACR,QAAQ,CAAC,IAAI;gBACb,KAAI,CAAC,cAAc,CAAC,cAAc,EAAE,KAAK,CAC3C,CAAC,CAAC,CAAC;gBACD,KAAI,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,wEAAU,CAAC,IAAI,CAAC,CAAC;YAC7D,CAAC;YACD,KAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAI,CAAC,KAAK,CAAC,CAAC;YACrC,KAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC7B,CAAC,EAAE,IAAI,CAAC,UAAU,GAAG,kFAAoB,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IACvD,CAAC;IACI,kCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,iBAAiB;oBAC3B,QAAQ,EAAE,2MAMT;oBACD,IAAI,EAAE;wBACJ,KAAK,EAAE,OAAO;wBACd,IAAI,EAAE,QAAQ;wBACd,QAAQ,EAAE,IAAI;qBACf;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,sCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,0EAAY,GAAG;QACtB,EAAC,IAAI,EAAE,iEAAU,GAAG;QACpB,EAAC,IAAI,EAAE,cAAc,GAAG;QACxB,EAAC,IAAI,EAAE,iEAAS,GAAG;KAClB,EAL6F,CAK7F,CAAC;IACK,sCAAc,GAA2C;QAChE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,mEAAY,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAG,EAAE,EAAE;QACnE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,mEAAY,EAAE,IAAI,EAAE,CAAC,oBAAoB,EAAG,EAAE,EAAE;KACjE,CAAC;IACF,8BAAC;CAAA;AA1HmC;;;;;;;;;;;;;;;;AClBO;AAG3C;IAAA;IAkCA,CAAC;IANM,uBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,2BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,mBAAC;CAAA;AAlCwB;AA+BlB,IAAM,sBAAoC;IAO/C,QAAQ,EANE;IAOV,QAAQ,EANE;IAOV,KAAK,EANE;IAOP,IAAI,EANE;IAON,mBAAmB,EANE;IAOrB,KAAK,EANE;IAOP,QAAQ,EANE;CAOX,CANC;AAEK,IAAM,aAAkB;IAO7B,kBAAkB,EANE;IAOpB,QAAQ,EANE;IAOV,IAAI,EANE;IAON,IAAI,EANE;IAON,EAAE,EANE;IAOJ,IAAI,EANE,OAAO;CAOd,CANC;AAEK,IAAM,WAAgB;IAO3B,MAAM,EANE;IAOR,WAAW,EANE;IAOb,YAAY,EANE;IAOd,aAAa,EANE;CAOhB,CANC;AAEK,IAAM,uBAA4B;IAOvC,KAAK,EANE;IAOP,QAAQ,EANE;CAOX,CANC;AAEK,IAAM,kBAAkB;IAO7B,QAAQ,EANE;IAOV,GAAG,EANE;CAON,CANC;;;;;;;;;;;;;;;;ACpEF;AAAA,wCAAC;AACD,4CAA4C;AAC5C,yEAAyE;AACzE,yCAAyC;AAKlB;AAEoC;AAEX;AACH;AACuB;AAGrC;AAEuD;AAEtF,IAAM,sBAAsB,IAAI;AAChC,IAAM,+BAA+B,IAAI;AAEzC,iEAAiE;AAEjE;IA0DE,wBAAoB,QAAoB,EAC5B,iBAAmC,EAC3B,SAAoB,EAC5B,GAA2B;QAHnB,aAAQ,GAAR,QAAQ,CAAY;QAEpB,cAAS,GAAT,SAAS,CAAW;QAjDxC,8EAA8E;QAE9E,WAAM,GAAiC,IAAI,mEAAY,EAAkB,CAAC;QAC1E;;WAEG;QAEH,YAAO,GAAiC,IAAI,mEAAY,EAAkB,CAAC;QAC3E;;WAEG;QAEH,WAAM,GAAiC,IAAI,mEAAY,EAAkB,CAAC;QAC1E;;WAEG;QAEH,aAAQ,GAAiC,IAAI,mEAAY,EAAkB,CAAC;QAE5E,wBAAwB;QACxB,eAAU,GAAG,IAAI,CAAC;QAYR,aAAQ,GAAG,KAAK,CAAC;QAEjB,sBAAiB,GAAG,KAAK,CAAC;QAC1B,wBAAmB,GAAG,CAAC,CAAC;QACxB,mBAAc,GAAG,CAAC,CAAC;QAEnB,mBAAc,GAAQ,CAAC,CAAC;QACxB,oBAAe,GAAQ,CAAC,CAAC;QAM3B,aAAQ,GAAG,KAAK,CAAC;QAMvB,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,YAAY,CAC/B,QAAQ,EACR,iBAAiB,EACjB,SAAS,CACV,CAAC;IACJ,CAAC;IAhED,sBAAI,kCAAM;aAIV;YACE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;QARD,6DAA6D;aAE7D,UAAW,IAAkB;YAC3B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC;;;OAAA;IAiCD,sBAAI,mCAAO;aAAX;YACE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;;;OAAA;IA8BD,gCAAO,GAAP,UAAQ,KAAU;QAChB,EAAE,CAAC,CACD,IAAI,CAAC,MAAM,CAAC,mBAAmB;YAC/B,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,QAAQ;YACjC,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,QAAQ,CAAC,aACjC,CAAC,CAAC,CAAC;YACD,MAAM,CAAC;QACT,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,6EAAe,CAAC,QAAQ,CAAC;QAC9C,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IAED,6DAA6D;IAE7D,8BAAK,GAAL;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;YACzB,IAAI,CAAC,aAAa,GAAG,6EAAe,CAAC,GAAG,CAAC;YACzC,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC;IACH,CAAC;IAED,oCAAW,GAAX;QACE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;QACrB,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YAClB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;YACtB,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,iCAAQ,GAAR;QAAA,iBAOC;QANC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QAChD,UAAU,CAAC;YACT,EAAE,CAAC,CAAC,KAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;gBACtB,KAAI,CAAC,IAAI,EAAE,CAAC;YACd,CAAC;QACH,CAAC,EAAE,CAAC,CAAC,CAAC;IACR,CAAC;IAED,oBAAoB;IAEpB,iDAAiD;IACjD,+BAAM,GAAN;QACE,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IACnD,CAAC;IAED,oCAAoC;IACpC,6BAAI,GAAJ;QAAA,iBAyBC;QAxBC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvB,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YAClB,MAAM,CAAC;QACT,CAAC;QACD,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAClC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAEnC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QAErB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpB,EAAE,CAAC,CAAC,uEAAQ,IAAI,uEAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;YAC9B,EAAE,CAAC,CAAC,uEAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,wEAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACtD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACvB,CAAC;YAAC,IAAI,CAAC,CAAC;gBACN,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,uEAAQ,CAAC,IAAI,EAAE,wEAAU,CAAC,IAAI,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;QAED,IAAI,CAAC,YAAY,CAAC;YAChB,KAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,qCAAqC;IACrC,6BAAI,GAAJ,UAAK,KAAa;QAAlB,iBA8BC;QA7BC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YACV,KAAK,CAAC,cAAc,EAAE,CAAC;QACzB,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEvB,wCAAwC;QACxC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YACnB,MAAM,CAAC;QACT,CAAC;QAED,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAClC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAEnC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,wEAAU,CAAC,EAAE,CAAC,CAAC;QACvE,EAAE,CAAC,CAAC,CAAC,4EAAK,EAAE,CAAC,CAAC,CAAC;YACb,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,wEAAU,CAAC,IAAI,CAAC,CAAC;QAC3E,CAAC;QACD,4BAA4B;QAE5B,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,cAAc,GAAG,UAAU,CAC9B,cAAM,YAAI,CAAC,SAAS,EAAE,EAAhB,CAAgB,EACtB,mBAAmB,CACpB,CAAC;QACJ,CAAC;QAAC,IAAI,CAAC,CAAC;YACN,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;IAED,gCAAgC;IACtB,kCAAS,GAAnB,UAAoB,MAAqB;QACvC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,iFAAmB,EAAE,MAAM,CAAC,CAAC;IACxD,CAAC;IAED;;;OAGG;IACO,oCAAW,GAArB;QAAA,iBAkDC;QAjDC,iDAAiD;QACjD,EAAE,CAAC,CACD,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,UAAU;YACvC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,QAAQ,KAAK,IAAI,CAAC,YAC3D,CAAC,CAAC,CAAC;YACD,iCAAiC;YACjC,EAAE,CAAC,CAAC,uEAAQ,IAAI,uEAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC9B,uEAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,YAAY,CACzB,IAAI,CAAC,QAAQ,CAAC,aAAa,EAC3B,aAAa,EACb,OAAO,CACR,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,QAAQ,CACrB,IAAI,CAAC,QAAQ,CAAC,aAAa,EAC3B,SAAS,EACT,OAAO,CACR,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,WAAW,CACxB,IAAI,CAAC,QAAQ,CAAC,aAAa,EAC3B,WAAW,EACX,CAAC,CACF,CAAC;QAEF,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YACpB,iEAAK,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC5C,CAAC;QAED,2BAA2B;QAC3B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,wEAAU,CAAC,EAAE,CAAC,CAAC;QACpE,EAAE,CAAC,CAAC,CAAC,4EAAK,EAAE,CAAC,CAAC,CAAC;YACb,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,wEAAU,CAAC,IAAI,CAAC,CAAC;QACxE,CAAC;QAED,IAAM,kBAAkB,GAAG;YACzB,EAAE,CAAC,CAAC,KAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;gBACvB,KAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;YACtC,CAAC;YACD,KAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC1B,CAAC,CAAC;QAEF,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YACpB,UAAU,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;QACtD,CAAC;QAAC,IAAI,CAAC,CAAC;YACN,kBAAkB,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAED,gBAAgB;IACN,kCAAS,GAAnB;QAAA,iBAsBC;QArBC,IAAI,CAAC,SAAS,CAAC,YAAY,CACzB,IAAI,CAAC,QAAQ,CAAC,aAAa,EAC3B,aAAa,EACb,MAAM,CACP,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,QAAQ,CACrB,IAAI,CAAC,QAAQ,CAAC,aAAa,EAC3B,SAAS,EACT,MAAM,CACP,CAAC;QACF,IAAI,CAAC,YAAY,CAAC;YAChB,EAAE,CAAC,CAAC,CAAC,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACnB,EAAE,CAAC,CAAC,uEAAQ,IAAI,uEAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC9B,KAAI,CAAC,SAAS,CAAC,WAAW,CAAC,uEAAQ,CAAC,IAAI,EAAE,wEAAU,CAAC,IAAI,CAAC,CAAC;gBAC7D,CAAC;gBACD,KAAI,CAAC,cAAc,EAAE,CAAC;YACxB,CAAC;YACD,KAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,KAAI,CAAC,eAAe,EAAE,CAAC;YACvB,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,uEAAuE;IACvE,UAAU;IACV,gBAAgB;IACN,qCAAY,GAAtB,UAAuB,QAAmB;QAA1C,iBA6CC;QA5CC,EAAE,CAAC,CACD,IAAI,CAAC,QAAQ;YACb,IAAI,CAAC,MAAM,CAAC,QAAQ;YACpB,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CACpD,CAAC,CAAC,CAAC;YACD,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,IAAI,CAAC,SAAS;iBACX,MAAM,CAAC,yFAAsB,CAAC;iBAC9B,EAAE,CAAC,MAAM,CAAC;iBACV,IAAI,CAAC,EAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAC,CAAC,CAAC;YACvC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC;YAE7C,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,CAAC;YACT,CAAC;YAED,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;gBACrB,QAAQ,EAAE,CAAC;gBAEX,MAAM,CAAC;YACT,CAAC;YAED,UAAU,CAAC,QAAQ,EAAE,4BAA4B,CAAC,CAAC;QACrD,CAAC;QAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC3C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;YAEvC,IAAM,cAAc,GAAG;gBACrB,KAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;oBACb,QAAQ,EAAE,CAAC;gBACb,CAAC;YACH,CAAC,CAAC;YAEF,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;gBACtC,IAAI,CAAC,eAAe,GAAG,UAAU,CAC/B,cAAc,EACd,4BAA4B,CAC7B,CAAC;YACJ,CAAC;YAAC,IAAI,CAAC,CAAC;gBACN,cAAc,EAAE,CAAC;YACnB,CAAC;QACH,CAAC;QAAC,IAAI,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YACpB,QAAQ,EAAE,CAAC;QACb,CAAC;IACH,CAAC;IAED,gBAAgB;IACN,uCAAc,GAAxB;QACE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IACxB,CAAC;IAED,oBAAoB;IAEpB,iBAAiB;IACjB,oCAAoC;IACpC,kDAAkD;IAClD,8DAA8D;IAC9D,kCAAkC;IAClC,sBAAsB;IACtB,UAAU;IACV,SAAS;IACT,EAAE;IACF,iCAAiC;IACjC,kDAAkD;IAClD,MAAM;IACN,IAAI;IAEJ,oCAAoC;IACpC,6DAA6D;IAC7D,uBAAuB;IACvB,kEAAkE;IAClE,WAAW;IACX,gCAAgC;IAChC,IAAI;IACJ,IAAI;IAEM,wCAAe,GAAzB;QACE,IAAM,iBAAiB,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,aAAa,CAAC,gBAAgB,CAClF,cAAc,CACf,CAAC;QACF,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;YAC9B,MAAM,CAAC;QACT,CAAC;QACD,iBAAiB,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;IAC1D,CAAC;IAED,gBAAgB;IACN,yCAAgB,GAA1B;QACE,IAAI,CAAC,SAAS,CAAC,QAAQ,CACrB,IAAI,CAAC,QAAQ,CAAC,aAAa,EAC3B,aAAa,EACb,EAAE,CACH,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,QAAQ,CACrB,IAAI,CAAC,QAAQ,CAAC,aAAa,EAC3B,cAAc,EACd,EAAE,CACH,CAAC;IACJ,CAAC;IAED,wBAAwB;IACxB,gBAAgB;IACN,uCAAc,GAAxB;QACE,IAAI,CAAC,iBAAiB,GAAG,uEAAQ,CAAC,IAAI,CAAC,WAAW,GAAG,qEAAM,CAAC,UAAU,CAAC;QACvE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;IACjD,CAAC;IAES,qCAAY,GAAtB;QACE,EAAE,CAAC,CAAC,CAAC,uEAAQ,CAAC,CAAC,CAAC;YACd,MAAM,CAAC;QACT,CAAC;QAED,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CACjC,qEAAM;aACH,gBAAgB,CAAC,uEAAQ,CAAC,IAAI,CAAC;aAC/B,gBAAgB,CAAC,eAAe,CAAC,IAAI,CAAC,EACzC,EAAE,CACH,CAAC;QAEF,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAC3B,uEAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAM,IAAI,CAAC,mBAAmB;gBAC9D,IAAI,CAAC,cAAc,OAAI,CAAC;QAC1B,CAAC;IACH,CAAC;IAES,uCAAc,GAAxB;QACE,uEAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC;IAC9D,CAAC;IAED,cAAc;IACJ,0CAAiB,GAA3B;QACE,IAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACtD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,wEAAU,CAAC,kBAAkB,CAAC,CAAC;QAClE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,uEAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACrD,IAAM,cAAc,GAAG,SAAS,CAAC,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;QACrE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,uEAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAErD,MAAM,CAAC,cAAc,CAAC;IACxB,CAAC;IACI,yBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,WAAW;oBACrB,QAAQ,EAAE,UAAU;iBACrB,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,6BAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,iEAAU,GAAG;QACpB,EAAC,IAAI,EAAE,yEAAgB,GAAG;QAC1B,EAAC,IAAI,EAAE,iEAAS,GAAG;QACnB,EAAC,IAAI,EAAE,0GAAsB,GAAG;KAC/B,EAL6F,CAK7F,CAAC;IACK,6BAAc,GAA2C;QAChE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC5B,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC7B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC9B,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC7B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC/B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,mEAAY,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAG,EAAE,EAAE;QACnE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,mEAAY,EAAE,IAAI,EAAE,CAAC,aAAa,EAAG,EAAE,EAAE;KAC1D,CAAC;IACF,qBAAC;CAAA;AA5a0B;;;;;;;;;;;;;;;;;AC1BmC;AAEM;AACjB;AACC;AACS;AACS;AAClB;AAGpD;IAAA;IAqBA,CAAC;IApBQ,mBAAO,GAAd;QACE,MAAM,CAAC;YACL,QAAQ,EAAE,WAAW;YACrB,SAAS,EAAE,CAAC,yEAAc,EAAE,iFAAsB,EAAE,wEAAkB,CAAC;SACxE,CAAC;IACJ,CAAC;IACI,sBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,YAAY,EAAE;wBACZ,yFAAsB;wBACtB,wEAAc;wBACd,2FAAuB;qBACxB;oBACD,OAAO,EAAE,CAAC,yFAAsB,EAAE,wEAAc,CAAC;oBACjD,eAAe,EAAE,CAAC,yFAAsB,EAAE,2FAAuB,CAAC;iBACnE,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,0BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,kBAAC;CAAA;AArBuB;;;;;;;;;;;;;;;;;ACV2B;AACU;AACN;AACA;;;;;;;;;;;;;;ACMhC;AACkD;AAElB;AAEhD,IAAM,+BAAoC;IAC/C,OAAO,EAAE;IACT,2BAA2B;IAC3B,WAAW,EAAE,4EAAW,cAAM,yBAAe;IAC7C,KAAK,EAAE;CACR,CAAC;AAGF;IAuGE,wBAAY,QAAmB,EACnB,UAAsB,EACtB,gBAAkC;QA7E9C,sFAAsF;QACrF,aAAQ,GAAyB,IAAI,mEAAY,EAAU,CAAC;QAC7D;;WAEG;QAEH,gBAAW,GAAmC,IAAI,mEAAY,EAAoB,CAAC;QAsDnF,aAAQ,GAAQ,QAAQ,CAAC,SAAS,CAAC;QACnC,cAAS,GAAQ,QAAQ,CAAC,SAAS,CAAC;QAW1B,WAAM,GAAG,KAAK,CAAC;QACf,UAAK,GAAG,CAAC,CAAC;QAKlB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YACjB,IAAI,CAAC,gBAAgB,CACnB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,gBAAgB,CAAC,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC,CACjE,CAAC;QACJ,CAAC;IACH,CAAC;IA3ED,sBAAI,wCAAY;QAFhB,gGAAgG;aAEhG;YACE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;QAC5B,CAAC;aAED,UAAiB,CAAS;YACxB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;YACvB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC/C,CAAC;;;OALA;IASD,sBAAI,sCAAU;QAFd,yCAAyC;aAEzC;YACE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;aAED,UAAe,CAAS;YACtB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;YACrB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC/C,CAAC;;;OALA;IAOD,sBAAI,sCAAU;aAAd;YACE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;aAED,UAAe,CAAS;YACtB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACtB,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;gBAChB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;;;OARA;IAUD,sBAAI,gCAAI;aAcR;YACE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;aAhBD,UAAS,KAAa;YACpB,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;YAC7B,IAAI,CAAC,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,GAAG,KAAK,IAAI,CAAC,CAAC;YAEpE,EAAE,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,KAAK,IAAI,OAAO,SAAS,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjE,MAAM,CAAC;YACT,CAAC;YAED,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;gBACpB,IAAI,EAAE,IAAI,CAAC,KAAK;gBAChB,YAAY,EAAE,IAAI,CAAC,YAAY;aAChC,CAAC,CAAC;QACL,CAAC;;;OAAA;IAiCD,yCAAgB,GAAhB,UAAiB,MAAW;QAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED,iCAAQ,GAAR;QACE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC1E,oBAAoB;QACpB,IAAI,CAAC,OAAO;YACV,OAAO,IAAI,CAAC,OAAO,KAAK,WAAW,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;QAC3E,IAAI,CAAC,MAAM;YACT,OAAO,IAAI,CAAC,MAAM,KAAK,WAAW,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QACxE,IAAI,CAAC,aAAa;YAChB,OAAO,IAAI,CAAC,aAAa,KAAK,WAAW;kBACrC,IAAI,CAAC,aAAa;kBAClB,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;QAChC,IAAI,CAAC,cAAc;YACjB,OAAO,IAAI,CAAC,cAAc,KAAK,WAAW;kBACtC,IAAI,CAAC,cAAc;kBACnB,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;QACjC,IAAI,CAAC,YAAY;YACf,OAAO,IAAI,CAAC,YAAY,KAAK,WAAW;kBACpC,IAAI,CAAC,YAAY;kBACjB,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;QAE/B,aAAa;QACb,IAAI,CAAC,YAAY;YACf,OAAO,IAAI,CAAC,YAAY,KAAK,WAAW;kBACpC,IAAI,CAAC,YAAY;kBACjB,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;QAC/B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC7C,aAAa;QACb,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACvD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,mCAAU,GAAV,UAAW,KAAa;QACtB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACzD,CAAC;IAED,gCAAO,GAAP,UAAQ,GAAW;QACjB,MAAM,CAAE,IAAY,CAAI,GAAG,SAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAI,GAAG,SAAM,CAAC,CAAC;IAClE,CAAC;IAED,mCAAU,GAAV;QACE,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,+BAAM,GAAN;QACE,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,CAAC;IACvC,CAAC;IAED,yCAAgB,GAAhB,UAAiB,EAAkB;QACjC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,0CAAiB,GAAjB,UAAkB,EAAY;QAC5B,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IAED,mCAAU,GAAV,UAAW,IAAY,EAAE,KAAa;QACpC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YACV,KAAK,CAAC,cAAc,EAAE,CAAC;QACzB,CAAC;QAED,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YACnB,EAAE,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC1B,IAAM,MAAM,GAAQ,KAAK,CAAC,MAAM,CAAC;gBACjC,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACtB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,sCAAsC;IAC5B,iCAAQ,GAAlB,UAAmB,GAAW,EACX,IAAY,EACZ,MAAe;QAChC,MAAM,CAAC,EAAC,IAAI,QAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAAC,CAAC;IACrC,CAAC;IAES,iCAAQ,GAAlB,UAAmB,WAAmB,EAAE,UAAkB;QACxD,IAAM,KAAK,GAAU,EAAE,CAAC;QAExB,sBAAsB;QACtB,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,OAAO,GAAG,UAAU,CAAC;QACzB,IAAM,UAAU,GACd,OAAO,IAAI,CAAC,OAAO,KAAK,WAAW,IAAI,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;QAEnE,uBAAuB;QACvB,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;YACf,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;gBAChB,8DAA8D;gBAC9D,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACpE,OAAO,GAAG,SAAS,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;gBAEvC,8BAA8B;gBAC9B,EAAE,CAAC,CAAC,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC;oBACzB,OAAO,GAAG,UAAU,CAAC;oBACrB,SAAS,GAAG,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;gBACzC,CAAC;YACH,CAAC;YAAC,IAAI,CAAC,CAAC;gBACN,2CAA2C;gBAC3C,SAAS;oBACP,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;gBAEjE,wCAAwC;gBACxC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE,UAAU,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;QAED,wBAAwB;QACxB,GAAG,CAAC,CAAC,IAAI,GAAG,GAAG,SAAS,EAAE,GAAG,IAAI,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC;YAChD,IAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,GAAG,KAAK,WAAW,CAAC,CAAC;YACrE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;QAED,sCAAsC;QACtC,EAAE,CAAC,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YAC/B,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC;gBAClB,IAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;gBACnE,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;YACjC,CAAC;YAED,EAAE,CAAC,CAAC,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC;gBACzB,IAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;gBAC7D,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QAED,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,aAAa;IACH,4CAAmB,GAA7B;QACE,IAAM,UAAU,GACd,IAAI,CAAC,YAAY,GAAG,CAAC;cACjB,CAAC;cACD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;QAErD,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACtC,CAAC;IACI,yBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,OAAO;oBACjB,QAAQ,EAAE,6eAA6e;oBACvf,SAAS,EAAE,CAAC,4BAA4B,CAAC;iBAC1C,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,6BAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,iEAAS,GAAG;QACnB,EAAC,IAAI,EAAE,iEAAU,GAAG;QACpB,EAAC,IAAI,EAAE,4EAAgB,GAAG;KACzB,EAJ6F,CAI7F,CAAC;IACK,6BAAc,GAA2C;QAChE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC3B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,eAAe,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACnC,gBAAgB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACpC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC5B,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC/B,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAClC,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;KAC/B,CAAC;IACF,qBAAC;CAAA;AAjS0B;;;;;;;;;;;;;;ACbJ;AACkD;AAElB;AAOhD,IAAM,oCAAyC;IACpD,OAAO,EAAE;IACT,2BAA2B;IAC3B,WAAW,EAAE,4EAAW,cAAM,8BAAoB;IAClD,KAAK,EAAE;CACR,CAAC;AAGF;IAqGE,6BACE,QAAmB,EACnB,UAAsB,EACtB,gBAAkC;QA5EpC,sFAAsF;QACrF,aAAQ,GAAyB,IAAI,mEAAY,EAAU,CAAC;QAC7D;;WAEG;QAEH,gBAAW,GAAG,IAAI,mEAAY,EAAoB,CAAC;QAsDnD,aAAQ,GAAQ,QAAQ,CAAC,SAAS,CAAC;QACnC,cAAS,GAAQ,QAAQ,CAAC,SAAS,CAAC;QAS1B,WAAM,GAAG,KAAK,CAAC;QACf,UAAK,GAAG,CAAC,CAAC;QAOlB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YACjB,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAzED,sBAAI,6CAAY;QAFhB,gGAAgG;aAEhG;YACE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;QAC5B,CAAC;aAED,UAAiB,CAAS;YACxB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;YACvB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC/C,CAAC;;;OALA;IASD,sBAAI,2CAAU;QAFd,yCAAyC;aAEzC;YACE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;aAED,UAAe,CAAS;YACtB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;YACrB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC/C,CAAC;;;OALA;IAOD,sBAAI,2CAAU;aAAd;YACE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;aAED,UAAe,CAAS;YACtB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACtB,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;gBAChB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;;;OARA;IAUD,sBAAI,qCAAI;aAcR;YACE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;aAhBD,UAAS,KAAa;YACpB,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;YAC7B,IAAI,CAAC,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,GAAG,KAAK,IAAI,CAAC,CAAC;YAEpE,EAAE,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,KAAK,IAAI,OAAO,SAAS,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjE,MAAM,CAAC;YACT,CAAC;YAED,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;gBACpB,IAAI,EAAE,IAAI,CAAC,KAAK;gBAChB,YAAY,EAAE,IAAI,CAAC,YAAY;aAChC,CAAC,CAAC;QACL,CAAC;;;OAAA;IA+BD,8CAAgB,GAAhB,UAAiB,MAAW;QAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED,sCAAQ,GAAR;QACE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC1E,oBAAoB;QACpB,IAAI,CAAC,OAAO;YACV,OAAO,IAAI,CAAC,OAAO,KAAK,WAAW,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;QAC3E,IAAI,CAAC,MAAM;YACT,OAAO,IAAI,CAAC,MAAM,KAAK,WAAW,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QACxE,IAAI,CAAC,aAAa;YAChB,OAAO,IAAI,CAAC,aAAa,KAAK,WAAW;kBACrC,IAAI,CAAC,aAAa;kBAClB,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;QAChC,IAAI,CAAC,cAAc;YACjB,OAAO,IAAI,CAAC,cAAc,KAAK,WAAW;kBACtC,IAAI,CAAC,cAAc;kBACnB,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;QACjC,IAAI,CAAC,YAAY;YACf,OAAO,IAAI,CAAC,YAAY,KAAK,WAAW;kBACpC,IAAI,CAAC,YAAY;kBACjB,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;QAE/B,aAAa;QACb,IAAI,CAAC,YAAY;YACf,OAAO,IAAI,CAAC,YAAY,KAAK,WAAW;kBACpC,IAAI,CAAC,YAAY;kBACjB,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;QAC/B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC7C,aAAa;QACb,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACvD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,wCAAU,GAAV,UAAW,KAAa;QACtB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACzD,CAAC;IAED,qCAAO,GAAP,UAAQ,GAAW;QACjB,MAAM,CAAE,IAAY,CAAI,GAAG,SAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAI,GAAG,SAAM,CAAC,CAAC;IAClE,CAAC;IAED,wCAAU,GAAV;QACE,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,oCAAM,GAAN;QACE,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,CAAC;IACvC,CAAC;IAED,8CAAgB,GAAhB,UAAiB,EAAkB;QACjC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,+CAAiB,GAAjB,UAAkB,EAAY;QAC5B,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IAED,wCAAU,GAAV,UAAW,IAAY,EAAE,KAAa;QACpC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YACV,KAAK,CAAC,cAAc,EAAE,CAAC;QACzB,CAAC;QAED,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YACnB,EAAE,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC1B,IAAM,MAAM,GAAQ,KAAK,CAAC,MAAM,CAAC;gBACjC,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACtB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,sCAAsC;IAC5B,sCAAQ,GAAlB,UACE,GAAW,EACX,IAAY,EACZ,MAAe;QAEf,MAAM,CAAC,EAAE,IAAI,QAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAAE,CAAC;IACvC,CAAC;IAES,sCAAQ,GAAlB,UAAmB,WAAmB,EAAE,UAAkB;QACxD,IAAM,KAAK,GAAU,EAAE,CAAC;QAExB,sBAAsB;QACtB,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,OAAO,GAAG,UAAU,CAAC;QACzB,IAAM,UAAU,GACd,OAAO,IAAI,CAAC,OAAO,KAAK,WAAW,IAAI,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;QAEnE,uBAAuB;QACvB,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;YACf,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;gBAChB,8DAA8D;gBAC9D,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACpE,OAAO,GAAG,SAAS,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;gBAEvC,8BAA8B;gBAC9B,EAAE,CAAC,CAAC,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC;oBACzB,OAAO,GAAG,UAAU,CAAC;oBACrB,SAAS,GAAG,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;gBACzC,CAAC;YACH,CAAC;YAAC,IAAI,CAAC,CAAC;gBACN,2CAA2C;gBAC3C,SAAS;oBACP,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;gBAEjE,wCAAwC;gBACxC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE,UAAU,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;QAED,wBAAwB;QACxB,GAAG,CAAC,CAAC,IAAI,GAAG,GAAG,SAAS,EAAE,GAAG,IAAI,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC;YAChD,IAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,GAAG,KAAK,WAAW,CAAC,CAAC;YACrE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;QAED,sCAAsC;QACtC,EAAE,CAAC,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YAC/B,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC;gBAClB,IAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;gBACnE,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;YACjC,CAAC;YAED,EAAE,CAAC,CAAC,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC;gBACzB,IAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;gBAC7D,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QAED,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,aAAa;IACH,iDAAmB,GAA7B;QACE,IAAM,UAAU,GACd,IAAI,CAAC,YAAY,GAAG,CAAC;cACjB,CAAC;cACD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;QAErD,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACtC,CAAC;IACI,8BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,YAAY;oBACtB,QAAQ,EAAE,0pCAA0pC;oBACpqC,SAAS,EAAE,CAAC,iCAAiC,CAAC;iBAC/C,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,kCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,iEAAS,GAAG;QACnB,EAAC,IAAI,EAAE,iEAAU,GAAG;QACpB,EAAC,IAAI,EAAE,4EAAgB,GAAG;KACzB,EAJ6F,CAI7F,CAAC;IACK,kCAAc,GAA2C;QAChE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC3B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,eAAe,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACnC,gBAAgB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACpC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC5B,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC/B,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAClC,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;KAC/B,CAAC;IACF,0BAAC;CAAA;AAjS+B;;;;;;;;;;AC3BhC;AAAA,cAAC;AAC0C;AAE3C,kEAAkE;AAElE;IAAA;QACE,SAAI,GAAQ;YACV,OAAO,EAAE,KAAK,CAAC;YACf,YAAY,EAAE,EAAE;YAChB,aAAa,EAAE,KAAK;YACpB,cAAc,EAAE,IAAI;YACpB,SAAS,EAAE,OAAO;YAClB,YAAY,EAAE,UAAU;YACxB,QAAQ,EAAE,MAAM;YAChB,QAAQ,EAAE,MAAM;YAChB,YAAY,EAAE,EAAE;YAChB,MAAM,EAAE,IAAI;SACb,CAAC;QACF,UAAK,GAAQ;YACX,YAAY,EAAE,EAAE;YAChB,YAAY,EAAE,YAAY;YAC1B,QAAQ,EAAE,QAAQ;YAClB,YAAY,EAAE,EAAE;YAChB,KAAK,EAAE,IAAI;SACZ,CAAC;IAOJ,CAAC;IANM,2BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,+BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,uBAAC;CAAA;AA1B4B;;;;;;;;;;;;;;;ACLkB;AACe;AACP;AAEJ;AACU;AAG7D;IAAA;IAcA,CAAC;IAbQ,wBAAO,GAAd;QACE,MAAM,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC,4EAAgB,CAAC,EAAE,CAAC;IACvE,CAAC;IACI,2BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC,qEAAY,CAAC;oBACvB,YAAY,EAAE,CAAC,wEAAc,EAAE,kFAAmB,CAAC;oBACnD,OAAO,EAAE,CAAC,wEAAc,EAAE,kFAAmB,CAAC;iBAC/C,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,+BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,uBAAC;CAAA;AAd4B;;;;;;;;;;;;;;;;;ACR0B;AACN;AACA;AACyB;;;;;;;;;;;;;ACHA;AACzB;AACD;AAGhD;IASE,mCAAY,MAAqB;QAC/B,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAND,sBAAI,4CAAK;aAAT;YACE,MAAM,CAAC,4EAAK,EAAE,CAAC;QACjB,CAAC;;;OAAA;IAKI,oCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,mBAAmB;oBAC7B,eAAe,EAAE,8EAAuB,CAAC,MAAM;oBAC/C,2BAA2B;oBAC3B,IAAI,EAAE;wBACJ,SAAS,EACP,8GAA8G;wBAChH,cAAc,EAAE,QAAQ;wBACxB,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,gBAAgB;qBACxB;oBACD,MAAM,EAAE;wBACN,uNAOD;qBACA;oBACD,QAAQ,EAAE,sMAAsM;iBACjN,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,wCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,sEAAa,GAAG;KACtB,EAF6F,CAE7F,CAAC;IACK,wCAAc,GAA2C;QAChE,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;KAC1B,CAAC;IACF,gCAAC;CAAA;AA7CqC;;;;;;;;;;;ACLK;AAE3C;;;;;GAKG;AAEH;IAAA;QACE;;WAEG;QACH,cAAS,GAAG,KAAK,CAAC;QAClB;;;WAGG;QACH,aAAQ,GAAG,OAAO,CAAC;QAEnB,iBAAY,GAAG,KAAK,CAAC;IAYvB,CAAC;IANM,wBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,4BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,oBAAC;CAAA;AAvByB;;;;;;;;;;;;;;ACNH;AAC0B;AAC6B;AACJ;AAE1E;;GAEG;AAEH;IAiEE,0BAAY,WAAuB,EACvB,SAAoB,EACpB,iBAAmC,EACnC,OAAsB,EACtB,GAA2B;QApDvC;;WAEG;QACF,iBAAY,GAAG,KAAK,CAAC;QAYtB;;WAEG;QACF,mBAAc,GAAG,EAAE,CAAC;QA4Bb,cAAS,GAAG,KAAK,CAAC;QAOxB,IAAI,CAAC,QAAQ,GAAG,GAAG;aAChB,YAAY,CACX,WAAW,EACX,iBAAiB,EACjB,SAAS,CACV;aACA,OAAO,CAAC,EAAC,OAAO,EAAE,sEAAa,EAAE,QAAQ,EAAE,OAAO,EAAC,CAAC,CAAC;QACxD,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAEvC,0CAA0C;QAC1C,WAAW,CAAC,aAAa,CAAC,gBAAgB,CAAC,OAAO,EAAE;YAClD,IAAI,CAAC;gBACH,WAAW,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;YACpC,CAAC;YAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBACb,MAAM,CAAC;YACT,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAhDD,sBAAI,oCAAM;QAJV;;WAEG;aAEH;YACE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QAC/B,CAAC;aAED,UAAW,KAAc;YACvB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBACV,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,CAAC;YAAC,IAAI,CAAC,CAAC;gBACN,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,CAAC;QACH,CAAC;;;OARA;IAgDD;;;OAGG;IACH,+BAAI,GAAJ;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YAC1B,MAAM,CAAC;QACT,CAAC;QAED,IAAI,CAAC,QAAQ;aACV,MAAM,CAAC,+FAAyB,CAAC;aACjC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC;aAClB,QAAQ,CAAC,EAAC,UAAU,EAAE,IAAI,CAAC,SAAS,EAAC,CAAC;aACtC,IAAI,CAAC;YACJ,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,cAAc;YAC5B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,KAAK,EAAE,IAAI,CAAC,YAAY;YACxB,cAAc,EAAE,IAAI,CAAC,cAAc;SACpC,CAAC,CAAC;QACL,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,+BAAI,GAAJ;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACtB,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,iCAAM,GAAN;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YAChB,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACrB,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAED,mCAAQ,GAAR;QAAA,iBAcC;QAbC,wDAAwD;QACxD,uEAAuE;QACvE,yEAAyE;QACzE,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YACnB,MAAM,CAAC;QACT,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,IAAI,EAAE,cAAM,YAAI,CAAC,IAAI,EAAE,EAAX,CAAW;SACxB,CAAC,CAAC;IACL,CAAC;IAED,sCAAW,GAAX;QACE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IACI,2BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC,EAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAC,EAAG,EAAE;KAC7E,CAAC;IACF,kBAAkB;IACX,+BAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,iEAAU,GAAG;QACpB,EAAC,IAAI,EAAE,iEAAS,GAAG;QACnB,EAAC,IAAI,EAAE,yEAAgB,GAAG;QAC1B,EAAC,IAAI,EAAE,sEAAa,GAAG;QACvB,EAAC,IAAI,EAAE,iFAAsB,GAAG;KAC/B,EAN6F,CAM7F,CAAC;IACK,+BAAc,GAA2C;QAChE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,gBAAgB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACpC,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,gBAAgB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACpC,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC5B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC9B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;KAC9B,CAAC;IACF,uBAAC;CAAA;AApL4B;;;;;;;;;;;;;;;;;ACZiC;AACf;AAEc;AACT;AACH;AACM;AACmB;AAG1E;IAAA;IAkBA,CAAC;IAjBQ,qBAAO,GAAd;QACE,MAAM,CAAC;YACL,QAAQ,EAAE,aAAa;YACvB,SAAS,EAAE,CAAC,sEAAa,EAAE,iFAAsB,EAAE,wEAAkB,CAAC;SACvE,CAAC;IACJ,CAAC;IACI,wBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC,qEAAY,CAAC;oBACvB,YAAY,EAAE,CAAC,4EAAgB,EAAE,+FAAyB,CAAC;oBAC3D,OAAO,EAAE,CAAC,4EAAgB,CAAC;oBAC3B,eAAe,EAAE,CAAC,+FAAyB,CAAC;iBAC7C,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,4BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,oBAAC;CAAA;AAlByB;;;;;;;;;;;;;;ACVuC;AACc;;;;;;;;;;ACD/E;AAAA;;;GAGG;AAEH,oBAAoB;AACpB,iHAAiH;AACjH,iBAAiB;AACjB;IAAA;IA+OA,CAAC;IA9OQ,8BAAQ,GAAf,UAAgB,OAAoB,EAAE,KAAY;QAAZ,oCAAY;QAChD,IAAI,UAAsB,CAAC;QAC3B,IAAI,YAAY,GAAe;YAC7B,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC;YACT,GAAG,EAAE,CAAC;YACN,MAAM,EAAE,CAAC;YACT,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,CAAC;SACT,CAAC;QAEF,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC;YACnD,IAAM,MAAM,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;YAC/C,UAAU,GAAG;gBACX,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,KAAK,EAAE,MAAM,CAAC,KAAK;aACpB,CAAC;QACJ,CAAC;QAAC,IAAI,CAAC,CAAC;YACN,IAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAElD,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAEzC,EAAE,CAAC,CAAC,cAAc,KAAK,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC;gBAChD,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;YACpD,CAAC;YAED,YAAY,CAAC,GAAG,IAAI,cAAc,CAAC,SAAS,CAAC;YAC7C,YAAY,CAAC,IAAI,IAAI,cAAc,CAAC,UAAU,CAAC;QACjD,CAAC;QAED,UAAU,CAAC,GAAG,IAAI,YAAY,CAAC,GAAG,CAAC;QACnC,UAAU,CAAC,MAAM,IAAI,YAAY,CAAC,GAAG,CAAC;QACtC,UAAU,CAAC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC;QACrC,UAAU,CAAC,KAAK,IAAI,YAAY,CAAC,IAAI,CAAC;QAEtC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YACV,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YAC5C,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAClD,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAC9C,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAClD,CAAC;QAED,MAAM,CAAC,UAAU,CAAC;IACpB,CAAC;IAEM,4BAAM,GAAb,UAAc,OAAoB,EAAE,KAAY;QAAZ,oCAAY;QAC9C,IAAM,KAAK,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;QAC9C,IAAM,cAAc,GAAG;YACrB,GAAG,EAAE,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC,eAAe,CAAC,SAAS;YAC5D,IAAI,EAAE,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC,eAAe,CAAC,UAAU;SAC/D,CAAC;QAEF,IAAI,QAAQ,GAAG;YACb,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,OAAO,CAAC,YAAY;YAC5C,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,WAAW;YACzC,GAAG,EAAE,KAAK,CAAC,GAAG,GAAG,cAAc,CAAC,GAAG;YACnC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,cAAc,CAAC,GAAG;YACzC,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI;YACtC,KAAK,EAAE,KAAK,CAAC,KAAK,GAAG,cAAc,CAAC,IAAI;SACzC,CAAC;QAEF,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YACV,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC9C,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC5C,QAAQ,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YACxC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC9C,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC1C,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,CAAC,QAAQ,CAAC;IAClB,CAAC;IAEM,sCAAgB,GAAvB,UACE,WAAwB,EACxB,aAA0B,EAC1B,SAAiB,EACjB,YAAsB;QAEtB,IAAM,cAAc,GAAG,YAAY;cAC/B,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC;cAC/B,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QACtC,IAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;QACxD,IAAM,UAAU,GAAQ;YACtB,IAAI,EAAE,cAAc,CAAC,IAAI;YACzB,MAAM,EACJ,cAAc,CAAC,IAAI;gBACnB,cAAc,CAAC,KAAK,GAAG,CAAC;gBACxB,aAAa,CAAC,WAAW,GAAG,CAAC;YAC/B,KAAK,EAAE,cAAc,CAAC,IAAI,GAAG,cAAc,CAAC,KAAK;SAClD,CAAC;QACF,IAAM,WAAW,GAAQ;YACvB,GAAG,EAAE,cAAc,CAAC,GAAG;YACvB,MAAM,EACJ,cAAc,CAAC,GAAG;gBAClB,cAAc,CAAC,MAAM,GAAG,CAAC;gBACzB,aAAa,CAAC,YAAY,GAAG,CAAC;YAChC,MAAM,EAAE,cAAc,CAAC,GAAG,GAAG,cAAc,CAAC,MAAM;SACnD,CAAC;QACF,IAAM,WAAW,GAAG,aAAa,CAAC,qBAAqB,EAAE,CAAC;QAC1D,IAAI,gBAAgB,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC;QACxD,IAAM,kBAAkB,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC;QAE/D,IAAI,gBAAgB,GAAe;YACjC,MAAM,EAAE,WAAW,CAAC,MAAM,IAAI,aAAa,CAAC,YAAY;YACxD,KAAK,EAAE,WAAW,CAAC,KAAK,IAAI,aAAa,CAAC,WAAW;YACrD,GAAG,EAAE,CAAC;YACN,MAAM,EAAE,WAAW,CAAC,MAAM,IAAI,aAAa,CAAC,YAAY;YACxD,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,WAAW,CAAC,KAAK,IAAI,aAAa,CAAC,WAAW;SACtD,CAAC;QAEF,EAAE,CAAC,CAAC,gBAAgB,KAAK,MAAM,CAAC,CAAC,CAAC;YAChC,IAAI,mBAAmB,GAAG,IAAI,CAAC,YAAY,CACzC,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,kBAAkB,CACnB,CAAC;YACF,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC;gBACvB,mBAAmB,GAAG,IAAI,CAAC,YAAY,CACrC,gBAAgB,EAChB,cAAc,EACd,aAAa,CACd,CAAC;YACJ,EAAE,CAAC,CAAC,mBAAmB,CAAC;gBAAC,gBAAgB,GAAG,mBAAmB,CAAC;YAChE,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;YACzB,KAAK,KAAK;gBACR,gBAAgB,CAAC,GAAG;oBAClB,cAAc,CAAC,GAAG;wBAClB,CAAC,aAAa,CAAC,YAAY;4BACzB,UAAU,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC;gBAC7C,gBAAgB,CAAC,MAAM;oBACrB,cAAc,CAAC,GAAG,GAAG,aAAa,CAAC,YAAY,CAAC;gBAClD,gBAAgB,CAAC,IAAI,GAAG,UAAU,CAAC,kBAAkB,CAAC,CAAC;gBACvD,gBAAgB,CAAC,KAAK,IAAI,UAAU,CAAC,kBAAkB,CAAC,CAAC;gBACzD,KAAK,CAAC;YACR,KAAK,QAAQ;gBACX,gBAAgB,CAAC,GAAG,GAAG,WAAW,CAAC,gBAAgB,CAAC,CAAC;gBACrD,gBAAgB,CAAC,MAAM,IAAI,WAAW,CAAC,gBAAgB,CAAC,CAAC;gBACzD,gBAAgB,CAAC,IAAI,GAAG,UAAU,CAAC,kBAAkB,CAAC,CAAC;gBACvD,gBAAgB,CAAC,KAAK,IAAI,UAAU,CAAC,kBAAkB,CAAC,CAAC;gBACzD,KAAK,CAAC;YACR,KAAK,MAAM;gBACT,gBAAgB,CAAC,GAAG,GAAG,WAAW,CAAC,kBAAkB,CAAC,CAAC;gBACvD,gBAAgB,CAAC,MAAM,IAAI,WAAW,CAAC,kBAAkB,CAAC,CAAC;gBAC3D,gBAAgB,CAAC,IAAI;oBACnB,cAAc,CAAC,IAAI;wBACnB,CAAC,aAAa,CAAC,WAAW,GAAG,UAAU,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC;gBACvE,gBAAgB,CAAC,KAAK;oBACpB,cAAc,CAAC,IAAI,GAAG,aAAa,CAAC,WAAW,CAAC;gBAClD,KAAK,CAAC;YACR,KAAK,OAAO;gBACV,gBAAgB,CAAC,GAAG,GAAG,WAAW,CAAC,kBAAkB,CAAC,CAAC;gBACvD,gBAAgB,CAAC,MAAM,IAAI,WAAW,CAAC,kBAAkB,CAAC,CAAC;gBAC3D,gBAAgB,CAAC,IAAI,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;gBACrD,gBAAgB,CAAC,KAAK,IAAI,UAAU,CAAC,gBAAgB,CAAC,CAAC;gBACvD,KAAK,CAAC;QACV,CAAC;QAED,gBAAgB,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACxD,gBAAgB,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAC9D,gBAAgB,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC1D,gBAAgB,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAE5D,MAAM,CAAC,gBAAgB,CAAC;IAC1B,CAAC;IAEO,kCAAY,GAApB,UACE,gBAA4B,EAC5B,cAA0B,EAC1B,aAA0B,EAC1B,iBAA0B;QAE1B,EAAE,CAAC,CACD,CAAC,CAAC,iBAAiB,IAAI,iBAAiB,KAAK,OAAO,CAAC;YACrD,gBAAgB,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,GAAG,aAAa,CAAC,WAAW;gBACrE,CACJ,CAAC,CAAC,CAAC;YACD,MAAM,CAAC,OAAO,CAAC;QACjB,CAAC;QAAC,IAAI,CAAC,EAAE,CAAC,CACR,CAAC,CAAC,iBAAiB,IAAI,iBAAiB,KAAK,KAAK,CAAC;YACnD,gBAAgB,CAAC,MAAM;gBACrB,cAAc,CAAC,MAAM;gBACrB,aAAa,CAAC,YAAY;gBAC1B,MAAM,CAAC,WACX,CAAC,CAAC,CAAC;YACD,MAAM,CAAC,KAAK,CAAC;QACf,CAAC;QAAC,IAAI,CAAC,EAAE,CAAC,CACR,CAAC,CAAC,iBAAiB,IAAI,iBAAiB,KAAK,QAAQ,CAAC;YACtD,gBAAgB,CAAC,GAAG,GAAG,cAAc,CAAC,GAAG,GAAG,aAAa,CAAC,YAAY,GAAG,CAC3E,CAAC,CAAC,CAAC;YACD,MAAM,CAAC,QAAQ,CAAC;QAClB,CAAC;QAAC,IAAI,CAAC,EAAE,CAAC,CACR,CAAC,CAAC,iBAAiB,IAAI,iBAAiB,KAAK,MAAM,CAAC;YACpD,gBAAgB,CAAC,KAAK;gBACpB,cAAc,CAAC,KAAK;gBACpB,aAAa,CAAC,WAAW;gBACzB,MAAM,CAAC,UACX,CAAC,CAAC,CAAC;YACD,MAAM,CAAC,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,CAAC,IAAI,CAAC;IACd,CAAC;IAEO,kCAAY,GAApB,UAAqB,OAAoB;QACvC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;IAEO,8BAAQ,GAAhB,UAAiB,OAAoB,EAAE,IAAY;QACjD,MAAM,CAAE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAS,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IAEO,wCAAkB,GAA1B,UAA2B,OAAoB;QAC7C,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,QAAQ,CAAC,KAAK,QAAQ,CAAC;IACvE,CAAC;IAEO,kCAAY,GAApB,UAAqB,OAAoB;QACvC,IAAI,cAAc,GACH,OAAO,CAAC,YAAY,IAAI,QAAQ,CAAC,eAAe,CAAC;QAEhE,OACE,cAAc;YACd,cAAc,KAAK,QAAQ,CAAC,eAAe;YAC3C,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,EACvC,CAAC;YACD,cAAc,GAAgB,cAAc,CAAC,YAAY,CAAC;QAC5D,CAAC;QAED,MAAM,CAAC,cAAc,IAAI,QAAQ,CAAC,eAAe,CAAC;IACpD,CAAC;IACH,kBAAC;AAAD,CAAC;;AAED,IAAM,eAAe,GAAG,IAAI,WAAW,EAAE,CAAC;AAEpC,0BACJ,WAAwB,EACxB,aAA0B,EAC1B,SAAiB,EACjB,YAAsB;IAEtB,IAAM,GAAG,GAAG,eAAe,CAAC,gBAAgB,CAC1C,WAAW,EACX,aAAa,EACb,SAAS,EACT,YAAY,CACb,CAAC;IAEF,aAAa,CAAC,KAAK,CAAC,GAAG,GAAM,GAAG,CAAC,GAAG,OAAI,CAAC;IACzC,aAAa,CAAC,KAAK,CAAC,IAAI,GAAM,GAAG,CAAC,IAAI,OAAI,CAAC;AAC7C,CAAC;;;;;;;;;;;;AC1QsD;AACH;AAoCpD;IAAA;IAiBA,CAAC;IAhBC,qCAAQ,GAAR,UAAS,OAA2B;QAC3B,6BAAO,EAAE,uBAAM,EAAE,+BAAU,EAAE,mCAAY,CAAY;QAC5D,iFAAgB,CACd,eAAe,CAAC,MAAM,CAAC,EACvB,eAAe,CAAC,OAAO,CAAC,EACxB,UAAU,EACV,YAAY,CACb,CAAC;IACJ,CAAC;IAEI,6BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,iCAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,yBAAC;CAAA;AAjB8B;AAmB/B,yBANyB,OAAoC;IAO3D,kCAAkC;IAClC,EAAE,CAAC,CAAC,OANO,YAAY,SAAS,CAAC;QAO/B,MAAM,CANC,SAAS,aAAC,CAAa,OAAC,CAAW,CAAY;IAOxD,CAAC;IAED,EAAE,CAAC,CAAC,OANC,YAAkB,kEAAW,CAAC;QAOjC,MAAM,CANC,QAAQ,aAAC,CAAa;IAO/B,CAAC;IAED,MAAM,CANC,OAAW,CAAY;AAOhC,CAAC;;;;;;;;;;;;;AC5DsB;AAEkC;AACT;AAEhD,oBAAoB;AACpB,iCAAiC;AAEjC;IAqCE,sBAAa,QAA2B;QANxC,YAAO,GAAG,CAAC,CAAC;QAOV,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IA/BD,sBAAI,+BAAK;QAFT,oCAAoC;aAEpC;YACE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;aAED,UAAU,CAAS;YACjB,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAClB,MAAM,CAAC;YACT,CAAC;YACD,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YAChB,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC/B,CAAC;;;OARA;IAWD,sBAAI,qCAAW;aAAf;YACE,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAE7B,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QACxC,CAAC;;;OAAA;IAED,sBAAI,+BAAK;aAAT;YACE,MAAM,CAAC,4EAAK,EAAE,CAAC;QACjB,CAAC;;;OAAA;IAYD,+BAAQ,GAAR;QACE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,kCAAW,GAAX;QACE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,4CAAqB,GAArB;QACE,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAElE,IAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI;aACvC,MAAM,CAAC,UAAU,KAAa,EAAE,GAAiB;YAChD,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC;QAC7B,CAAC,EAAE,CAAC,CAAC,CAAC;QAER,EAAE,CAAC,CAAC,eAAe,GAAG,GAAG,CAAC,CAAC,CAAC;YAC1B,IAAI,CAAC,OAAO,IAAI,eAAe,GAAG,GAAG,CAAC;QACxC,CAAC;IACH,CAAC;IACI,uBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,KAAK;oBACf,QAAQ,EAAE,qZAAqZ;iBACha,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,2BAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,8EAAiB,EAAE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,2DAAI,EAAE,EAAG,EAAC;KACxD,EAF6F,CAE7F,CAAC;IACK,2BAAc,GAA2C;QAChE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC1B,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC3B,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,eAAe,EAAG,EAAE,EAAE;KACjE,CAAC;IACF,mBAAC;CAAA;AA5EwB;;;;;;;;;;;;;;;;;;;ACfsB;AACU;AACM;AACN;AACA;;;;;;;;;;;ACJK;AAI9D,qDAAqD;AACrD,iDAAiD;AAEjD;IAAA;QAkBG,aAAQ,GAAG,IAAI,CAAC;QAEjB,SAAI,GAAU,EAAE,CAAC;QAEP,SAAI,GAAG,GAAG,CAAC;IAuBvB,CAAC;IAtCC,sBAAI,kCAAG;QAHP,8CAA8C;aAG9C;YACE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;QACnB,CAAC;aAED,UAAQ,CAAS;YACf,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;YACd,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAC,GAAiB;gBAClC,GAAG,CAAC,qBAAqB,EAAE,CAAC;YAC9B,CAAC,CAAC,CAAC;QACL,CAAC;;;OAPA;IAeD,kCAAM,GAAN,UAAO,GAAiB;QACtB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YAClB,GAAG,CAAC,UAAU,GAAG,MAAM,CAAC;QAC1B,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACtB,CAAC;IAED,qCAAS,GAAT,UAAU,GAAiB;QACzB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;IACI,4BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,yBAAyB,EAAE,EAAG,EAAE;KACrE,CAAC;IACF,kBAAkB;IACX,gCAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACK,gCAAc,GAA2C;QAChE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,UAAU,EAAG,EAAE,EAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACrE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,gBAAgB,EAAG,EAAE,EAAE;KAC/D,CAAC;IACF,wBAAC;CAAA;AA7C6B;;;;;;;;;;;;;ACPmB;AACQ;AACxB;AAGjC;IAqBE,8BAAY,MAAyB;QANrC,cAAS,GAAG,KAAK,CAAC;QAOhB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAZD,sBAAI,uCAAK;QAJT;;WAEG;aAEH,UAAU,KAAqB;YAC7B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACtC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACtB,CAAC;;;OAAA;IAGD,sBAAI,uCAAK;aAAT;YACE,MAAM,CAAC,6DAAK,EAAE,CAAC;QACjB,CAAC;;;OAAA;IAKI,+BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,aAAa;oBACvB,QAAQ,EAAE,+VAA+V;oBACzW,MAAM,EAAE;wBACN,8CAID;qBACA;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,mCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,8EAAiB,GAAG;KAC1B,EAF6F,CAE7F,CAAC;IACK,mCAAc,GAA2C;QAChE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACzB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC1B,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;KAC1B,CAAC;IACF,2BAAC;CAAA;AA/CgC;;;;;;;;;;;ACLU;AAG3C;IAAA;QACE,qGAAqG;QACrG,YAAO,GAAY,IAAI,CAAC;QACxB,8CAA8C;QAC9C,QAAG,GAAG,GAAG,CAAC;IAOZ,CAAC;IANM,4BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,gCAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,wBAAC;CAAA;AAX6B;;;;;;;;;;;;;;;;ACHiB;AACe;AAEf;AACU;AACM;AACN;AAGzD;IAAA;IAcA,CAAC;IAbQ,yBAAO,GAAd;QACE,MAAM,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,CAAC,8EAAiB,CAAC,EAAE,CAAC;IACzE,CAAC;IACI,4BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC,qEAAY,CAAC;oBACvB,YAAY,EAAE,CAAC,8EAAiB,EAAE,oEAAY,EAAE,oFAAoB,CAAC;oBACrE,OAAO,EAAE,CAAC,8EAAiB,EAAE,oEAAY,EAAE,oFAAoB,CAAC;iBACjE,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,gCAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,wBAAC;CAAA;AAd6B;;;;;;;;;;;;;ACTuB;AACN;;;;;;;;;;;;;ACOxB;AACkD;AAElE,IAAM,gCAAqC;IAChD,OAAO,EAAE;IACT,2BAA2B;IAC3B,WAAW,EAAE,4EAAW,cAAM,0BAAgB;IAC9C,KAAK,EAAE;CACR,CAAC;AAGF;IAAA;QACE,sBAAsB;QACrB,QAAG,GAAG,CAAC,CAAC;QAOT,wEAAwE;QACvE,YAAO,GAAyB,IAAI,mEAAY,EAAE,CAAC;QACpD,8EAA8E;QAC7E,YAAO,GAAyB,IAAI,mEAAY,EAAE,CAAC;QAEpD,aAAQ,GAAQ,QAAQ,CAAC,SAAS,CAAC;QACnC,cAAS,GAAQ,QAAQ,CAAC,SAAS,CAAC;IAiGtC,CAAC;IA1FC,mCAAS,GAAT,UAAU,KAAU;QAClB,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACjD,MAAM,CAAC;QACT,CAAC;QAED,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAM,IAAI,GAAG,KAAK,CAAC,KAAK,KAAK,EAAE,IAAI,KAAK,CAAC,KAAK,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/D,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,kCAAQ,GAAR;QACE,IAAI,CAAC,GAAG,GAAG,OAAO,IAAI,CAAC,GAAG,KAAK,WAAW,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM;YACT,OAAO,IAAI,CAAC,MAAM,KAAK,WAAW,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;kBACxD,IAAI,CAAC,MAAM;kBACX,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnD,CAAC;IAED,gBAAgB;IAChB,oCAAU,GAAV,UAAW,KAAa;QACtB,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC;YACxB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC/B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;YAEtB,MAAM,CAAC;QACT,CAAC;QAED,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,+BAAK,GAAL,UAAM,KAAa;QACjB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,+BAAK,GAAL;QACE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC3B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,0CAAgB,GAAhB,UAAiB,EAAkB;QACjC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,2CAAiB,GAAjB,UAAkB,EAAY;QAC5B,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IAED,8BAAI,GAAJ,UAAK,KAAa;QAChB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YAC/D,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YACvB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAES,8CAAoB,GAA9B,UAA+B,GAAW;QACxC,IAAM,MAAM,GAAU,EAAE,CAAC;QACzB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7B,MAAM,CAAC,IAAI,CAAC;gBACR,KAAK,EAAE,CAAC;gBACR,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;aAC/B,CAAC,CAAC;QACP,CAAC;QAED,MAAM,CAAC,MAAM,CAAC;IAChB,CAAC;IACI,0BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,QAAQ;oBAClB,QAAQ,EAAE,4xBAA4xB;oBACtyB,SAAS,EAAE,CAAC,6BAA6B,CAAC;iBAC3C,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,8BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACK,8BAAc,GAA2C;QAChE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACzB,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC5B,gBAAgB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACpC,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC9B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC9B,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,mEAAY,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAG,EAAE,EAAE;KACtE,CAAC;IACF,sBAAC;CAAA;AAhH2B;;;;;;;;;;;;;ACnBmB;AACe;AACT;AAGrD;IAAA;IAiBA,CAAC;IAhBQ,oBAAO,GAAd;QACE,MAAM,CAAC;YACL,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,EAAE;SACd,CAAC;IACJ,CAAC;IACI,uBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC,qEAAY,CAAC;oBACvB,YAAY,EAAE,CAAC,0EAAe,CAAC;oBAC/B,OAAO,EAAE,CAAC,0EAAe,CAAC;iBAC3B,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,2BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,mBAAC;CAAA;AAjBwB;;;;;;;;;;;;;ACLkB;AACJ;AAIvC;IAAA;QAGU,cAAS,GAA2B,IAAI,qDAAO,EAAiB,CAAC;IAiC3E,CAAC;IA/BC,wCAAS,GAAT,UAAU,IAAmB;QAC3B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,sCAAO,GAAP;QACE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,0CAAW,GAAX,UAAY,aAAqB,EAAE,QAAgB;QACjD,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,KAAK,aAAa,CAAC,CAAC,CAAC;YACvD,IAAI,CAAC,aAAa,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;YACpE,IAAI,CAAC,aAAa,CAAC,aAAa,GAAG,aAAa,CAAC;YACjD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACxC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,aAAa,EAAE;gBACzD,aAAa;gBACb,CAAC,EAAE,QAAQ;aACZ,CAAC,CAAC;QACL,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,4CAAa,GAAb;QACE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IACI,+BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,mCAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,2BAAC;CAAA;AApCgC;;;;;;;;;;;;;;;ACLkB;AACoB;AACP;;;;;;;;;;;;;ACKzC;AACkD;AAET;AAEhE,oBAAoB;AAEpB,mBAAmB;AACnB;IA8DE,2BAAY,QAA8B;QAA1C,iBAMC;QA9DD,mCAAmC;QAClC,iBAAY,GAAG,EAAE,CAAC;QAEnB,qCAAqC;QACpC,iBAAY,GAA8B,EAAE,CAAC;QAE9C,0BAA0B;QACzB,cAAS,GAAG,EAAE,CAAC;QAEhB,4BAA4B;QAC3B,cAAS,GAA8B,EAAE,CAAC;QAE3C,iCAAiC;QAChC,oBAAe,GAAG,EAAE,CAAC;QAEtB,mCAAmC;QAClC,oBAAe,GAA8B,EAAE,CAAC;QAEjD,iCAAiC;QAChC,qBAAgB,GAAG,EAAE,CAAC;QAEvB,mCAAmC;QAClC,qBAAgB,GAA8B,EAAE,CAAC;QAElD,kEAAkE;QACjE,oBAAe,GAAG,EAAE,CAAC;QAKtB;;WAEG;QACF,aAAQ,GAAwB,IAAI,mEAAY,EAAS,CAAC;QAE3D,oBAAe,GAAG,KAAK,CAAC;QACxB,eAAU,GAAG,CAAC,CAAC,CAAC;QAahB,cAAS,GAAQ,QAAQ,CAAC,SAAS,CAAC;QACpC,cAAS,GAAQ,QAAQ,CAAC,SAAS,CAAC;QAOlC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,gBAAgB,GAAG,iBAAiB,CAAC,eAAe,EAAE,CAAC;QAC5D,IAAI,CAAC,QAAQ;aACV,aAAa,EAAE;aACf,SAAS,CAAC,UAAC,IAAmB,IAAK,YAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAjB,CAAiB,CAAC,CAAC;IAC3D,CAAC;IAxBD,sBAAI,oCAAK;aAAT;YACE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;aAED,UAAU,KAAqB;YAC7B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACpB,IAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAC,CAAe,IAAK,QAAC,CAAC,QAAQ,EAAV,CAAU,CAAC,CAAC;YAC5D,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACpB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;;;OAPA;IAwBD,2CAAe,GAAf,UACE,KAAgB,EAChB,IAAkB,EAClB,CAAS;QAET,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;YACtB,KAAK;YACL,IAAI;YACJ,CAAC;YACD,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,IAAI,CAAC,gBAAgB;YACpC,aAAa,EAAE,IAAI,CAAC,gBAAgB;SACrC,CAAC,CAAC;IACL,CAAC;IAED,0CAAc,GAAd,UAAe,KAAgB,EAAE,CAAS;QACxC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAC7B,MAAM,CAAC;QACT,CAAC;QACD,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CACxC,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,KAAK,CAAC,MAAM,CAClB,CAAC;QACF,IAAI,QAAQ,GAAU,EAAE,CAAC;QACzB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YACvB,QAAQ,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;QAAC,IAAI,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC1B,QAAQ,GACH,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;gBACzB,QAAQ,CAAC,IAAI;eACV,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAC/B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CACpC,CAAC;QACJ,CAAC;QAAC,IAAI,CAAC,CAAC;YACN,yBAAyB;YACzB,QAAQ,GACH,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,QAC/B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;gBAC1C,QAAQ,CAAC,IAAI;eACV,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAC3B,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;QACtB,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC;QACf,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,sBAAsB,EAAE,CAAC;IAChC,CAAC;IAED,uCAAW,GAAX,UAAY,KAAgB;QAC1B,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YACvC,MAAM,CAAC;QACT,CAAC;QACD,KAAK,CAAC,cAAc,EAAE,CAAC;IACzB,CAAC;IAED,kCAAM,GAAN,UAAO,IAAmB;QACxB,EAAE,CAAC,CACD,IAAI;YACJ,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,gBAAgB;YAC5C,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,gBAC9B,CAAC,CAAC,CAAC;YACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAC5B,UAAC,CAAe,EAAE,CAAS,IAAK,QAAC,KAAK,IAAI,CAAC,CAAC,EAAZ,CAAY,CAC7C,CAAC;YACF,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAChC,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;IAED,2CAAe,GAAf,UAAgB,KAAgB;QAC9B,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;IACvB,CAAC;IAED,4CAAgB,GAAhB,UAAiB,QAA0B;QACzC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC5B,CAAC;IAED,6CAAiB,GAAjB,UAAkB,QAAoB;QACpC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC5B,CAAC;IAED,sCAAU,GAAV,UAAW,KAAY;QAAvB,iBAWC;QAVC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YACV,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,UAAC,CAAM,EAAE,CAAS,IAAK,QAAC;gBAC7C,EAAE,EAAE,CAAC;gBACL,QAAQ,EAAE,CAAC;gBACX,KAAK,EAAE,KAAI,CAAC,SAAS,GAAG,CAAC,CAAC,KAAI,CAAC,SAAS,CAAC,GAAG,CAAC;aAC9C,CAAC,EAJ4C,CAI5C,CAAC,CAAC;QACN,CAAC;QAAC,IAAI,CAAC,CAAC;YACN,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,sBAAsB,EAAE,CAAC;IAChC,CAAC;IAED,kDAAsB,GAAtB;QACE,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC7C,CAAC;IAED,wCAAY,GAAZ,UAAa,QAAiB;QAC5B,MAAM,CAAC,QAAQ;cACX,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC;cACvD,IAAI,CAAC,SAAS,CAAC;IACrB,CAAC;IAED,2BAA2B;IACnB,8CAAkB,GAA1B,UAA2B,KAAgB;QACzC,8BAA8B;QAC9B,2EAA2E;QAC3E,UAAU;QACV,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACpD,CAAC;IAvLc,iCAAe,GAAG,CAAC,CAAC;IAwL9B,4BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,aAAa;oBACvB,QAAQ,EAAE,aAAa;oBACvB,QAAQ,EAAE,kqCA8BX;oBACC,SAAS,EAAE;wBACT;4BACE,OAAO,EAAE,yEAAiB;4BAC1B,WAAW,EAAE,2EAAU,CAAC,cAAM,wBAAiB,EAAjB,CAAiB,CAAC;4BAChD,KAAK,EAAE,IAAI;yBACZ;qBACF;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,gCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,qFAAoB,GAAG;KAC7B,EAF6F,CAE7F,CAAC;IACK,gCAAc,GAA2C;QAChE,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,iBAAiB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACrC,iBAAiB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACrC,kBAAkB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACtC,kBAAkB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACtC,iBAAiB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACrC,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;KAC9B,CAAC;IACF,wBAAC;CAAA;AAvP6B;;;;;;;;;;;;;;ACfgC;AACf;AAEU;AACO;AAGhE;IAAA;IAcA,CAAC;IAbQ,sBAAO,GAAd;QACE,MAAM,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC,qFAAoB,CAAC,EAAE,CAAC;IACzE,CAAC;IACI,yBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,YAAY,EAAE,CAAC,8EAAiB,CAAC;oBACjC,OAAO,EAAE,CAAC,qEAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,8EAAiB,CAAC;iBAC7B,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,6BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,qBAAC;CAAA;AAd0B;;;;;;;;;;;;;;;;;;;;;ACPuC;AACnB;AACe;AACT;AACN;AACJ;;;;;;;;;;;ACLqC;AAGhF;IAkBE,+BAAY,OAAyB;QACnC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAbD,sBAAI,+CAAY;aAOhB;YACE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;QAC5B,CAAC;aATD,UAAiB,WAA6B;YAC5C,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC;YACjC,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;gBAChB,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;;;OAAA;IASI,gCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,gBAAgB;iBAC3B,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,oCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,yEAAgB,GAAG;KACzB,EAF6F,CAE7F,CAAC;IACK,oCAAc,GAA2C;QAChE,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;KACjC,CAAC;IACF,4BAAC;CAAA;AAjCiC;;;;;;;;;;;;ACHqB;AAER;AAE/C,iFAAiF;AAEjF;IAGE,6BAAY,WAA6B,EAAE,GAAiB;QAC1D,GAAG,CAAC,UAAU,GAAG,WAAW,CAAC;IAC/B,CAAC;IACI,8BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAG,EAAE;KAC1D,CAAC;IACF,kBAAkB;IACX,kCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,mEAAW,GAAG;QACrB,EAAC,IAAI,EAAE,oEAAY,GAAG;KACrB,EAH6F,CAG7F,CAAC;IACF,0BAAC;CAAA;AAd+B;;;;;;;;;;;;ACKT;AAC8B;AAGrD;IA4EE,sBACE,MAAuB,EAChB,UAAsB,EACtB,QAAmB;QADnB,eAAU,GAAV,UAAU,CAAY;QACtB,aAAQ,GAAR,QAAQ,CAAW;QAjB5B,4FAA4F;QAC3F,WAAM,GAA+B,IAAI,mEAAY,EAAE,CAAC;QACzD,gGAAgG;QAC/F,aAAQ,GAA+B,IAAI,mEAAY,EAAE,CAAC;QAC3D,qFAAqF;QACpF,YAAO,GAA+B,IAAI,mEAAY,EAAE,CAAC;QAEzD,aAAQ,GAAG,IAAI,CAAC;QAYf,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAxED,sBAAI,qCAAW;QAFf,wDAAwD;aAExD;YACE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;aAED,UAAgB,WAAmB;YACjC,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,KAAK,WAAW,CAAC,CAAC,CAAC;gBAC3D,IAAI,CAAC,QAAQ,CAAC,WAAW,CACvB,IAAI,CAAC,UAAU,CAAC,aAAa,EAC7B,IAAI,CAAC,YAAY,CAClB,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;YAEhC,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;gBACtB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CACpB,IAAI,CAAC,UAAU,CAAC,aAAa,EAC7B,IAAI,CAAC,YAAY,CAClB,CAAC;YACJ,CAAC;QACH,CAAC;;;OAlBA;IAuBD,sBAAI,gCAAM;QAHV,8BAA8B;aAG9B;YACE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;aAED,UAAW,MAAe;YAA1B,iBAoBC;YAnBC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC;gBAC5B,MAAM,CAAC;YACT,CAAC;YACD,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;gBACzC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;oBAC5B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACzB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;gBACxB,CAAC;gBAED,MAAM,CAAC;YACT,CAAC;YAED,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;YACtB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAC,GAAiB;gBACzC,EAAE,CAAC,CAAC,GAAG,KAAK,KAAI,CAAC,CAAC,CAAC;oBACjB,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC;gBACrB,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;;;OAtBA;IA+CD,+BAAQ,GAAR;QACE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IAClC,CAAC;IAED,kCAAW,GAAX;QACE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAChE,CAAC;IACI,uBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAG,EAAE;KACxD,CAAC;IACF,kBAAkB;IACX,2BAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,0EAAe,GAAG;QACzB,EAAC,IAAI,EAAE,iEAAU,GAAG;QACpB,EAAC,IAAI,EAAE,iEAAS,GAAG;KAClB,EAJ6F,CAI7F,CAAC;IACK,2BAAc,GAA2C;QAChE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACxB,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACjC,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,cAAc,EAAG,EAAE,EAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC5E,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC7B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC/B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC9B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,gBAAgB,EAAG,EAAE,EAAE;KAC/D,CAAC;IACF,mBAAC;CAAA;AAjHwB;;;;;;;;;;;;;;;;;ACfsB;AACe;AAEI;AACJ;AACf;AACM;AACN;AAG/C;IAAA;IA2BA,CAAC;IA1BQ,kBAAO,GAAd;QACE,MAAM,CAAC;YACL,QAAQ,EAAE,UAAU;YACpB,SAAS,EAAE,CAAC,oEAAY,CAAC;SAC1B,CAAC;IACJ,CAAC;IACI,qBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC,qEAAY,CAAC;oBACvB,YAAY,EAAE;wBACZ,uFAAqB;wBACrB,oEAAY;wBACZ,0EAAe;wBACf,mFAAmB;qBACpB;oBACD,OAAO,EAAE;wBACP,oEAAY;wBACZ,0EAAe;wBACf,mFAAmB;wBACnB,uFAAqB;qBACtB;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,yBAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,iBAAC;CAAA;AA3BsB;;;;;;;;;;;;ACVkD;AAG1B;AAC/C,gCAAgC;AAChC,+EAA+E;AAE/E;IAyCE,yBAAY,MAAoB;QAV/B,UAAK,GAAG,IAAI,CAAC;QAEd,SAAI,GAAmB,EAAE,CAAC;QAC1B,aAAQ,GAAQ,EAAE,CAAC;QAQjB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAxCD,sBAAI,qCAAQ;QAFZ,6CAA6C;aAE7C;YACE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;aACD,UAAa,KAAc;YACzB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;;;OAJA;IAQD,sBAAI,sCAAS;QAFb,kEAAkE;aAElE;YACE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;QACzB,CAAC;aACD,UAAc,KAAc;YAC1B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;;;OAJA;IAQD,sBAAI,iCAAI;QAFR,kDAAkD;aAElD;YACE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;aACD,UAAS,KAAa;YACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;;;OAJA;IAoBD,qCAAW,GAAX;QACE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,gCAAM,GAAN,UAAO,GAAiB;QACtB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpB,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,WAAW,CAAC;IAC3E,CAAC;IAED,mCAAS,GAAT,UACE,GAAiB,EACjB,OAAwC;QAAxC,sCAAY,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;QAExC,IAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACrC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YACrC,MAAM,CAAC;QACT,CAAC;QACD,0EAA0E;QAC1E,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACnE,IAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACtD,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;QAC1C,CAAC;QACD,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YACjB,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC3B,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC;YAC5C,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,WAAW,CACjD,GAAG,CAAC,UAAU,CAAC,aAAa,CAC7B,CAAC;QACJ,CAAC;IACH,CAAC;IAES,4CAAkB,GAA5B,UAA6B,KAAa;QACxC,IAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QACpC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,CAAC,CAAC,CAAC,CAAC;QACZ,CAAC;QAED,GAAG,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,IAAI,UAAU,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;YACjD,IAAM,SAAS,GAAG,KAAK,GAAG,IAAI,CAAC;YAC/B,IAAM,SAAS,GAAG,KAAK,GAAG,IAAI,CAAC;YAC/B,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC3D,MAAM,CAAC,SAAS,CAAC;YACnB,CAAC;YACD,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC3D,MAAM,CAAC,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;QAED,MAAM,CAAC,CAAC,CAAC,CAAC;IACZ,CAAC;IAES,0CAAgB,GAA1B,UAA2B,KAAa;QACtC,IAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QACpC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,CAAC,KAAK,CAAC;QACf,CAAC;QAED,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC;gBAC1C,MAAM,CAAC,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAES,qCAAW,GAArB;QACE,IAAI,CAAC,QAAQ;gBACX,aAAa,EAAE,IAAI,CAAC,QAAQ;gBAC5B,aAAa,EAAE,IAAI,CAAC,QAAQ;gBAC5B,eAAe,EAAE,IAAI,CAAC,SAAS;;YAC/B,GAAC,SAAO,IAAI,CAAC,IAAM,IAAG,IAAI;eAC3B,CAAC;;IACJ,CAAC;IACI,0BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,QAAQ;oBAClB,QAAQ,EAAE,0oBAA0oB;iBACrpB,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,8BAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,oEAAY,GAAG;KACrB,EAF6F,CAE7F,CAAC;IACK,8BAAc,GAA2C;QAChE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC1B,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,kEAAW,EAAE,IAAI,EAAE,CAAC,qBAAqB,EAAG,EAAE,EAAE;KACjE,CAAC;IACF,sBAAC;CAAA;AAzI2B;;;;;;;;;;;ACPe;AAG3C;IAAA;QACE,mEAAmE;QACnE,SAAI,GAAG,MAAM,CAAC;IAOhB,CAAC;IANM,uBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,2BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,mBAAC;CAAA;AATwB;;;;;;;;;;;;;;;;;;;ACHoC;AACI;AACJ;AACN;AACA;;;;;;;;;;;ACJZ;AAS3C;IAAA;IAuDA,CAAC;IA/CC,sCAAU,GAAV,UAAW,KAAoB;QAC7B,MAAM,CAAC;YACL,IAAI,EAAE,iBAAiB,CAAC,WAAW;YACnC,OAAO,EAAE,KAAK;SACf,CAAC;IACJ,CAAC;IAED,uCAAW,GAAX,UAAY,KAAsB;QAChC,MAAM,CAAC;YACL,IAAI,EAAE,iBAAiB,CAAC,YAAY;YACpC,OAAO,EAAE,KAAK;SACf,CAAC;IACJ,CAAC;IAED,yCAAa,GAAb,UAAc,KAAsB;QAClC,MAAM,CAAC;YACL,IAAI,EAAE,iBAAiB,CAAC,cAAc;YACtC,OAAO,EAAE,KAAK;SACf,CAAC;IACJ,CAAC;IAED,yCAAa,GAAb,UAAc,KAAsB;QAClC,MAAM,CAAC;YACL,IAAI,EAAE,iBAAiB,CAAC,cAAc;YACtC,OAAO,EAAE,KAAK;SACf,CAAC;IACJ,CAAC;IAED,mCAAO,GAAP,UAAQ,KAAW;QACjB,MAAM,CAAC;YACL,IAAI,EAAE,iBAAiB,CAAC,aAAa;YACrC,OAAO,EAAE,KAAK;SACf,CAAC;IACJ,CAAC;IAED,0CAAc,GAAd,UAAe,KAA+B;QAC5C,MAAM,CAAC;YACL,IAAI,EAAE,iBAAiB,CAAC,eAAe;YACvC,OAAO,EAAE,KAAK;SACf,CAAC;IACJ,CAAC;IA/Ce,6BAAW,GAAG,wCAAwC,CAAC;IACvD,8BAAY,GAAG,2BAA2B,CAAC;IAC3C,gCAAc,GAAG,6BAA6B,CAAC;IAC/C,gCAAc,GAAG,6BAA6B,CAAC;IAC/C,+BAAa,GAAG,4BAA4B,CAAC;IAC7C,iCAAe,GAAG,8BAA8B,CAAC;IA2C5D,4BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,gCAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,wBAAC;CAAA;AAvD6B;;;;;;;;;;;;;;;;ACFO;AACmB;AAKE;AACD;AAEzD;IAAA;IAIA,CAAC;IAAD,sBAAC;AAAD,CAAC;;AAEM,IAAM,YAAY,GAAoB;IAC3C,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI,4EAAgB,EAAE;IAC9B,QAAQ,EAAE;QACR,iBAAiB,EAAE,IAAI;QACvB,mBAAmB,EAAE,IAAI;QACzB,mBAAmB,EAAE,IAAI;QAEzB,iBAAiB,EAAE,IAAI;QACvB,mBAAmB,EAAE,IAAI;QACzB,mBAAmB,EAAE,IAAI;KAC1B;CACF,CAAC;AAEI,2BAA4B,KAAoB,EAAE,MAAc;IAApC,4CAAoB;IACpD,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QACpB,KAAK,8EAAiB,CAAC,WAAW,EAAE,CAAC;YACnC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7D,CAAC;QAED,KAAK,8EAAiB,CAAC,YAAY,EAAE,CAAC;YACpC,EAAE,CAAC,CACD,CAAC,yFAAc,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC;gBAC7C,CAAC,yFAAc,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAChD,CAAC,CAAC,CAAC;gBACD,MAAM,CAAC,KAAK,CAAC;YACf,CAAC;YAED,IAAM,QAAQ,GAAG,6EAAU,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YAExE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,KAAK,8EAAiB,CAAC,cAAc,EAAE,CAAC;YACtC,EAAE,CAAC,CACD,CAAC,yFAAc,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC;gBAC7C,CAAC,2FAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAClD,CAAC,CAAC,CAAC;gBACD,MAAM,CAAC,KAAK,CAAC;YACf,CAAC;YAED,IAAM,QAAQ,GAAG,6EAAU,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YAE1E,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,KAAK,8EAAiB,CAAC,cAAc,EAAE,CAAC;YACtC,EAAE,CAAC,CACD,CAAC,yFAAc,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC;gBAC7C,CAAC,2FAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAClD,CAAC,CAAC,CAAC;gBACD,MAAM,CAAC,KAAK,CAAC;YACf,CAAC;YAED,IAAM,QAAQ,GAAG,6EAAU,CAAC,KAAK,CAAC,KAAK,EAAE;gBACvC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI;aAC7B,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,KAAK,8EAAiB,CAAC,aAAa,EAAE,CAAC;YACrC,EAAE,CAAC,CAAC,CAAC,yFAAc,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAClC,MAAM,CAAC,KAAK,CAAC;YACf,CAAC;YAED,IAAM,QAAQ,GAAG,0EAAO,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;YAEtD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,KAAK,8EAAiB,CAAC,eAAe,EAAE,CAAC;YACvC,IAAM,iBAAiB,GAAG,6FAAkB,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;YAC1E,IAAM,SAAS,GAAoB;gBACjC,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,MAAM,EAAE,MAAM,CAAC,OAAO;gBACtB,QAAQ,EAAE,iBAAiB;aAC5B,CAAC;YAEF,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,KAAK,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;gBAChE,SAAS,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1C,CAAC;YAED,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QAC7C,CAAC;QAED;YACE,MAAM,CAAC,KAAK,CAAC;IACjB,CAAC;AACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;AC/G0C;AAKb;AACyB;AAGC;AACA;AAGxD;IAAqC,mCAA0B;IAC7D;QAAA,iBAUC;QATC,IAAM,WAAW,GAAG,IAAI,qEAAe,CAAS;YAC9C,IAAI,EAAE,6BAA6B;SACpC,CAAC,CAAC;QACH,IAAM,KAAK,GAAG,IAAI,yEAAS,CACzB,yEAAY,EACZ,WAAW,EACX,8EAAiB,CAClB,CAAC;QACF,0BAAM,WAAW,EAAE,8EAAiB,EAAE,KAAK,CAAC,SAAC;;IAC/C,CAAC;IACI,0BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,8BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,sBAAC;CAAA,CAlBoC,yEAAS,GAkB7C;AAlB2B;;;;;;;;;;;;;;;;ACboB;AAO1C,wBACJ,KAA+B,EAC/B,KAAuB;IAEvB,EAAE,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;QACxB,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACV,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;YAClD,MAAM,CAAC,KAAK,CAAC;QACf,CAAC;QAED,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;YAC/C,MAAM,CAAC,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,MAAM,CAAC,IAAI,CAAC;AACd,CAAC;AAEK,wBACJ,KAAsB,EACtB,QAA4B;IAE5B,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAChB,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAClD,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAClD,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAC,IAAI,CAAC;AACd,CAAC;AAEK,0BACJ,KAAsB,EACtB,QAA4B;IAE5B,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAChB,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IACD,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IACD,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAC,IAAI,CAAC;AACd,CAAC;AAEK,0BACJ,KAAsB,EACtB,QAA4B;IAE5B,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAChB,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IACD,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IACD,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAC,IAAI,CAAC;AACd,CAAC;AAEK,0BACJ,KAA+B;IAG7B,6BAAQ,EACR,6BAAU,EACV,+BAAW,EACX,mCAAa,EACb,6BAAU,EACV,2BAAS,EACT,iCAAY,EACZ,iCAAY,EACZ,+BAAW,EACX,2BAAS,EACT,eAAG,EACH,eAAG,CACK;IAEV,MAAM,CAAC;QACL,QAAQ;QACR,UAAU;QACV,WAAW;QACX,aAAa;QACb,UAAU;QACV,SAAS;QACT,YAAY;QACZ,YAAY;QACZ,WAAW;QACX,SAAS;QACT,GAAG;QACH,GAAG;KACJ,CAAC;AACJ,CAAC;AAEK,4BACJ,KAAW,EACX,KAA+B;IAEvB,mBAAG,EAAE,eAAG,EAAE,yBAAQ,EAAE,6BAAU,EAAE,+BAAW,EAAE,+BAAW,CAAW;IAC3E,IAAM,GAAG,GAAuB;QAC9B,iBAAiB,EAAE,IAAI;QACvB,mBAAmB,EAAE,IAAI;QACzB,mBAAmB,EAAE,IAAI;QAEzB,iBAAiB,EAAE,IAAI;QACvB,mBAAmB,EAAE,IAAI;QACzB,mBAAmB,EAAE,IAAI;KAC1B,CAAC;IAEF,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACX,MAAM,CAAC,GAAG,CAAC;IACb,CAAC;IAED,gBAAgB;IAChB,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACR,IAAM,QAAQ,GAAG,6EAAU,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QACvD,GAAG,CAAC,iBAAiB,GAAG,GAAG,GAAG,QAAQ,CAAC;QAEvC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAC3B,IAAM,WAAW,GAAG,6EAAU,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;YAC9D,GAAG,CAAC,mBAAmB,GAAG,WAAW;kBACjC,GAAG,GAAG,WAAW;kBACjB,GAAG,IAAI,WAAW,CAAC;QACzB,CAAC;QAED,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC;YAC7B,IAAM,WAAW,GAAG,6EAAU,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;YAChE,GAAG,CAAC,mBAAmB,GAAG,GAAG,IAAI,WAAW,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACR,IAAM,QAAQ,GAAG,6EAAU,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxD,GAAG,CAAC,iBAAiB,GAAG,GAAG,GAAG,QAAQ,CAAC;QAEvC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAC3B,IAAM,WAAW,GAAG,6EAAU,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC;YAC/D,GAAG,CAAC,mBAAmB,GAAG,WAAW;kBACjC,GAAG,GAAG,WAAW;kBACjB,GAAG,IAAI,WAAW,CAAC;QACzB,CAAC;QAED,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC;YAC7B,IAAM,WAAW,GAAG,6EAAU,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;YACjE,GAAG,CAAC,mBAAmB,GAAG,GAAG,IAAI,WAAW,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,MAAM,CAAC,GAAG,CAAC;AACb,CAAC;;;;;;;;;;;;;;;;;AC1KD;AAAA,uDAAC;AAWsB;AACkD;AAER;AACJ;AACC;AACP;AAW3B;AAErB,IAAM,oCAAyC;IACpD,OAAO,EAAE;IACT,2BAA2B;IAC3B,WAAW,EAAE,4EAAW,cAAM,8BAAoB;IAClD,KAAK,EAAE;CACR,CAAC;AAGF;IA6DE,6BACE,OAAyB,EACzB,GAAsB,EACd,MAAuB,EACvB,kBAAqC;QAJ/C,iBAyBC;QAtBS,WAAM,GAAN,MAAM,CAAiB;QACvB,uBAAkB,GAAlB,kBAAkB,CAAmB;QAnC/C,0CAA0C;QACzC,YAAO,GAA0B,IAAI,mEAAY,EAAE,CAAC;QAYrD,sCAAsC;QACtC,iBAAY,GAAG,KAAK,CAAC;QACrB,mBAAc,GAAG,KAAK,CAAC;QACvB,mBAAc,GAAG,KAAK,CAAC;QAWvB,iCAAiC;QACjC,aAAQ,GAAQ,QAAQ,CAAC,SAAS,CAAC;QACnC,cAAS,GAAQ,QAAQ,CAAC,SAAS,CAAC;QAQlC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC7B,wBAAwB;QACxB,MAAM,CAAC,MAAM,CAAC,eAAK,IAAI,YAAK,CAAC,KAAK,EAAX,CAAW,CAAC,CAAC,SAAS,CAAC,eAAK;YACjD,mCAAmC;YACnC,KAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YACxB,KAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAErB,KAAI,CAAC,MAAM,CAAC,QAAQ,CAClB,KAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,2FAAgB,CAAC,KAAI,CAAC,CAAC,CAC/D,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,eAAK,IAAI,YAAK,CAAC,QAAQ,EAAd,CAAc,CAAC,CAAC,SAAS,CAAC,uBAAa;YAC5D,KAAI,CAAC,OAAO,CAAC,IAAI,CACf,+EAAY,CAAC,KAAI,CAAC,KAAK,EAAE,KAAI,CAAC,OAAO,EAAE,KAAI,CAAC,OAAO,EAAE,KAAI,CAAC,IAAI,EAAE,CAAC,CAClE,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,KAAI,EAAE,aAAa,CAAC,CAAC;YACnC,GAAG,CAAC,YAAY,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC;IA/CD,sBAAI,kDAAiB;aAArB;YACE,MAAM,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;QAClD,CAAC;;;OAAA;IA+CD,kCAAI,GAAJ;QACE,MAAM,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,qCAAO,GAAP,UAAQ,MAAW;QACjB,MAAM,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,uCAAS,GAAT,UAAU,MAAW;QACnB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;IACjD,CAAC;IAED,yCAAW,GAAX,UAAY,OAAsB;QAChC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAClB,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,2FAAgB,CAAC,IAAI,CAAC,CAAC,CAC/D,CAAC;IACJ,CAAC;IAED,yCAAW,GAAX,UAAY,IAAY,EAAE,MAA6B;QAA7B,oCAA6B;QACrD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,EAAE,IAAI,QAAE,MAAM,UAAE,CAAC,CAAC,CAAC;IAC9E,CAAC;IAED,2CAAa,GAAb,UAAc,IAAY,EAAE,MAA6B;QAA7B,oCAA6B;QACvD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAClB,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,EAAE,IAAI,QAAE,MAAM,UAAE,CAAC,CACxD,CAAC;IACJ,CAAC;IAED,2CAAa,GAAb,UAAc,IAAY,EAAE,MAA6B;QAA7B,oCAA6B;QACvD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAClB,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,EAAE,IAAI,QAAE,MAAM,UAAE,CAAC,CACxD,CAAC;IACJ,CAAC;IAED,yCAAW,GAAX,UAAY,KAAa;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,2CAAa,GAAb,UAAc,OAAe;QAC3B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,2CAAa,GAAb,UAAc,OAAe;QAC3B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,yCAAW,GAAX;QACE,EAAE,CAAC,CAAC,CAAC,+EAAY,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACvE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAEpB,MAAM,CAAC;QACT,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAClB,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC;YAC9B,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,MAAM,EAAE,IAAI,CAAC,OAAO;YACpB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;SAClB,CAAC,CACH,CAAC;IACJ,CAAC;IAED,4CAAc,GAAd;QACE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;YAC7C,MAAM,CAAC;QACT,CAAC;QAED,IAAM,gBAAgB,GAAG,EAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAClB,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC;YAClC,IAAI,EAAE,gBAAgB;YACtB,MAAM,EAAE,EAAE;SACX,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,wCAAU,GAAV,UAAW,GAAQ;QACjB,EAAE,CAAC,CAAC,8EAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACrB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,4EAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED;;OAEG;IACH,8CAAgB,GAAhB,UAAiB,EAAkB;QACjC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,+CAAiB,GAAjB,UAAkB,EAAY;QAC5B,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IAED;;;;;OAKG;IACH,8CAAgB,GAAhB,UAAiB,UAAmB;QAClC,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC;IAClC,CAAC;IAEO,yCAAW,GAAnB,UAAoB,KAAoB;QACtC,EAAE,CAAC,CAAC,CAAC,8EAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACxB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YAChB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;YAClB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;YAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAElC,MAAM,CAAC;QACT,CAAC;QAED,IAAM,MAAM,GAAG,4EAAS,CAAC,KAAK,CAAC,CAAC;QAChC,IAAM,gBAAgB,GAAG,EAAE,CAAC;QAC5B,IAAI,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAE/B,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,gBAAgB,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YACnE,MAAM,GAAG,MAAM,GAAG,gBAAgB,CAAC;YACnC,6BAA6B;YAC7B,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC;gBACjB,MAAM,GAAG,gBAAgB,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,4EAAS,CAAC,MAAM,CAAC,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,4EAAS,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO,GAAG,4EAAS,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC;IACnD,CAAC;IACI,8BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,YAAY;oBACtB,eAAe,EAAE,8EAAuB,CAAC,MAAM;oBAC/C,SAAS,EAAE,CAAC,iCAAiC,EAAE,kFAAe,CAAC;oBAC/D,QAAQ,EAAE,yqHAAyqH;oBACnrH,MAAM,EAAE,CAAC,6aAmBR,CAAC;oBACF,aAAa,EAAE,0EAAiB,CAAC,IAAI;iBACtC,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,kCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,4EAAgB,GAAG;QAC1B,EAAC,IAAI,EAAE,wEAAiB,GAAG;QAC3B,EAAC,IAAI,EAAE,kFAAe,GAAG;QACzB,EAAC,IAAI,EAAE,sFAAiB,GAAG;KAC1B,EAL6F,CAK7F,CAAC;IACK,kCAAc,GAA2C;QAChE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAChC,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACjC,eAAe,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACnC,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAChC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAClC,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACjC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACzB,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACzB,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;KAC7B,CAAC;IACF,0BAAC;CAAA;AAtR+B;;;;;;;;;;;ACtCW;AAE3C,2DAA2D;AAE3D;IAAA;QACE,wBAAwB;QACxB,aAAQ,GAAG,CAAC,CAAC;QACb,wBAAwB;QACxB,eAAU,GAAG,CAAC,CAAC;QACf,2BAA2B;QAC3B,gBAAW,GAAG,EAAE,CAAC;QACjB,+FAA+F;QAC/F,iBAAY,GAAG,IAAI,CAAC;QACpB,sCAAsC;QACtC,cAAS,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzB,wDAAwD;QACxD,kBAAa,GAAG,KAAK,CAAC;QACtB,sEAAsE;QACtE,eAAU,GAAG,IAAI,CAAC;QAClB,iFAAiF;QACjF,cAAS,GAAG,IAAI,CAAC;QACjB,sEAAsE;QACtE,iBAAY,GAAG,IAAI,CAAC;QACpB,iCAAiC;QACjC,gBAAW,GAAG,KAAK,CAAC;IAWtB,CAAC;IANM,2BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,+BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,uBAAC;CAAA;AA/B4B;;;;;;;;;;;;;;;;ACJiC;AACf;AAEc;AACI;AACV;AACM;AAG7D;IAAA;IAiBA,CAAC;IAhBQ,wBAAO,GAAd;QACE,MAAM,CAAC;YACL,QAAQ,EAAE,gBAAgB;YAC1B,SAAS,EAAE,CAAC,4EAAgB,EAAE,sFAAiB,EAAE,kFAAe,CAAC;SAClE,CAAC;IACJ,CAAC;IACI,2BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC,qEAAY,CAAC;oBACvB,YAAY,EAAE,CAAC,kFAAmB,CAAC;oBACnC,OAAO,EAAE,CAAC,kFAAmB,CAAC;iBAC/B,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,+BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,uBAAC;CAAA;AAjB4B;;;;;;;;;;;;;;;;;;;;ACP7B;AAAA,IAAM,GAAG,GAAG,EAAE,CAAC;AACf,IAAM,WAAW,GAAG,EAAE,CAAC;AACvB,IAAM,eAAe,GAAG,EAAE,CAAC;AAC3B,IAAM,cAAc,GAAG,EAAE,CAAC;AAC1B,IAAM,gBAAgB,GAAG,EAAE,CAAC;AAEtB,qBAAsB,KAAqB;IAC/C,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACX,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,EAAE,CAAC,CAAC,KAAK,YAAY,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC;QAC9B,MAAM,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACtC,CAAC;IAED,MAAM,CAAC,IAAI,CAAC;AACd,CAAC;AAEK,kBAAmB,KAAsB;IAC7C,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC;QAC9B,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC9B,CAAC;AAEK,kBAAmB,KAAa;IACpC,MAAM,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AACjC,CAAC;AAEK,oBACJ,KAAsB,EACtB,IAAY;IAAZ,mCAAY;IAEZ,IAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC7B,EAAE,CAAC,CACD,KAAK,CAAC,IAAI,CAAC;QACX,IAAI,GAAG,CAAC;QACR,IAAI,GAAG,CAAC,IAAI,GAAG,eAAe,GAAG,WAAW,CAC9C,CAAC,CAAC,CAAC;QACD,MAAM,CAAC,GAAG,CAAC;IACb,CAAC;IAED,MAAM,CAAC,IAAI,CAAC;AACd,CAAC;AAEK,sBAAuB,KAAsB;IACjD,IAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC;QAC3D,MAAM,CAAC,GAAG,CAAC;IACb,CAAC;IAED,MAAM,CAAC,MAAM,CAAC;AAChB,CAAC;AAEK,sBAAuB,KAAsB;IACjD,IAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChC,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,gBAAgB,CAAC,CAAC,CAAC;QAChE,MAAM,CAAC,GAAG,CAAC;IACb,CAAC;IAED,MAAM,CAAC,OAAO,CAAC;AACjB,CAAC;AAEK,mBAAoB,KAAoB;IAC5C,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC;QAC9B,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,KAAK,CAAC;AACf,CAAC;AAEK,oBAAqB,KAAW,EAAE,IAAU;IAChD,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACX,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC5B,IAAI,OAAO,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC;IACjC,IAAI,OAAO,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC;IAEjC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACd,IAAI,GAAG,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,WAAW,CAAC;QAClD,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;YACb,IAAI,IAAI,WAAW,CAAC;QACtB,CAAC;IACH,CAAC;IAED,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAChB,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QACjB,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACnD,CAAC;AAEK,iBAAkB,KAAW,EAAE,IAAU;IAC7C,IAAI,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjC,IAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACzC,IAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhD,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACd,IAAI,IAAI,eAAe,CAAC;IAC1B,CAAC;IAED,8CAA8C;IAC9C,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACX,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACnC,MAAM,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACjC,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC;AAEK,oBACJ,KAAW,EACX,KAAa,EACb,OAAe,EACf,OAAe;IAEf,8CAA8C;IAC9C,IAAM,MAAM,GAAG,KAAK,IAAI,IAAI,IAAI,EAAE,CAAC;IAEnC,MAAM,CAAC,IAAI,IAAI,CACb,MAAM,CAAC,WAAW,EAAE,EACpB,MAAM,CAAC,QAAQ,EAAE,EACjB,MAAM,CAAC,OAAO,EAAE,EAChB,KAAK,EACL,OAAO,EACP,OAAO,EACP,MAAM,CAAC,eAAe,EAAE,CACzB,CAAC;AACJ,CAAC;AAEK,mBAAoB,KAAa;IACrC,IAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;IAChC,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QACtB,MAAM,CAAC,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,MAAI,MAAQ,CAAC;AACtB,CAAC;AAEK,sBACJ,KAAa,EACb,OAAe,EACf,OAAa,EACb,IAAa;IADb,uCAAa;IAGb,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;WAClC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;WAC5B,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACrC,CAAC;;;;;;;;;;;;;;;;;ACxKyE;AACnB;AACN;AACA;;;;;;;;;;;;;ACC1B;AAC0B;AACD;AAGhD;IAUE,mCAAY,MAAqB;QAC/B,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAND,sBAAI,4CAAK;aAAT;YACE,MAAM,CAAC,4EAAK,EAAE,CAAC;QACjB,CAAC;;;OAAA;IAMD,mDAAe,GAAf;QACE,IAAI,CAAC,QAAQ,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QAC3C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;QACrC,IAAI,CAAC,QAAQ,CAAC,aAAW,IAAI,CAAC,SAAW,CAAC,GAAG,IAAI,CAAC;QAElD,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,IAAI,CAAC;QACxB,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;QAC5B,CAAC;QAED,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;YACxB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC;QAC5C,CAAC;IACH,CAAC;IACI,oCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,sBAAsB;oBAChC,eAAe,EAAE,8EAAuB,CAAC,MAAM;oBAC/C,2BAA2B;oBAC3B,IAAI,EAAE;wBACJ,SAAS,EACP,8GAA8G;wBAChH,cAAc,EAAE,QAAQ;wBACxB,IAAI,EAAE,SAAS;qBAChB;oBACD,MAAM,EAAE;wBACN,4QAUD;qBACA;oBACD,QAAQ,EAAE,yHAGP;iBACJ,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,wCAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,sEAAa,GAAG;KACtB,EAF6F,CAE7F,CAAC;IACF,gCAAC;CAAA;AA9DqC;;;;;;;;;;;ACTK;AAE3C,0CAA0C;AAE1C;IAAA;QACE,+EAA+E;QAC/E,cAAS,GAAG,KAAK,CAAC;QAClB,0DAA0D;QAC1D,aAAQ,GAAG,aAAa,CAAC;IAS3B,CAAC;IANM,wBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,iEAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,4BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,oBAAC;CAAA;AAbyB;;;;;;;;;;;;;;;;;;;;;;;;;ACJ1B,6BAAC;AAIsB;AACmD;AACzB;AAC6B;AAC/B;AACD;AAG9C;IA2JE,0BAAY,iBAAmC,EAC5B,SAAoB,EACpB,WAAuB,EACvB,GAA2B,EAC3B,MAAqB;QAxJxC,yCAAyC;QAEzC,kBAAa,GAA4C,IAAI,mEAAY,EAAE,CAAC;QAsC5E;;WAEG;QACF,mBAAc,GAAG,EAAE,CAAC;QAiErB,4DAA4D;QAC3D,eAAU,GAAG,IAAI,CAAC;QAcnB,kBAAkB;QACjB,WAAM,GAAG,CAAC,CAAC;QAEZ,kBAAkB;QACjB,kBAAa,GAAG,GAAG,CAAC;QAcrB,kBAAkB;QAElB,wBAAmB,GAA0B,IAAI,mEAAY,EAAW,CAAC;QAUvE,IAAI,CAAC,QAAQ,GAAG,GAAG;aAChB,YAAY,CACX,WAAW,EACX,iBAAiB,EACjB,SAAS,CACV;aACA,OAAO,CAAC,EAAC,OAAO,EAAE,sEAAa,EAAE,QAAQ,EAAE,MAAM,EAAC,CAAC,CAAC;QAEvD,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;IACzC,CAAC;IA7ID,sBAAI,oCAAM;QAJV;;WAEG;aAEH;YACE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QAC/B,CAAC;aAED,UAAW,KAAc;YACvB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBACV,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,CAAC;YAAC,IAAI,CAAC,CAAC;gBACN,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,CAAC;QACH,CAAC;;;OARA;IA+BD,sBAAI,yCAAW;QAFf,iDAAiD;aAEjD,UAAgB,KAAgC;YAC9C,0EAAQ,CAAC,0DAA0D,CAAC,CAAC;YACrE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,CAAC;;;OAAA;IAID,sBAAI,wCAAU;QAFd,mDAAmD;aAEnD,UAAe,KAAa;YAC1B,0EAAQ,CAAC,iEAAiE,CAAC,CAAC;YAC5E,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACzB,CAAC;;;OAAA;IAID,sBAAI,qCAAO;aAKX;YACE,0EAAQ,CAAC,2DAA2D,CAAC,CAAC;YACtE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;QAVD,+CAA+C;aAE/C,UAAY,KAAc;YACxB,0EAAQ,CAAC,2DAA2D,CAAC,CAAC;YACtE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACtB,CAAC;;;OAAA;IASD,sBAAI,qCAAO;aAKX;YACE,0EAAQ,CAAC,+DAA+D,CAAC,CAAC;YAC1E,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;QACzB,CAAC;QAVD,oDAAoD;aAEpD,UAAY,KAAc;YACxB,0EAAQ,CAAC,+DAA+D,CAAC,CAAC;YAC1E,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QAC1B,CAAC;;;OAAA;IASD,sBAAI,2CAAa;aAOjB;YACE,0EAAQ,CACN,2EAA2E,CAC5E,CAAC;YACF,MAAM,CAAC,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC;QACnC,CAAC;QAdD,0DAA0D;aAE1D,UAAkB,KAAc;YAC9B,0EAAQ,CACN,2EAA2E,CAC5E,CAAC;YACF,IAAI,CAAC,SAAS,GAAG,KAAK,GAAG,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC;QACnD,CAAC;;;OAAA;IAcD,sBAAI,yCAAW;QAFf,mDAAmD;aAEnD,UAAgB,KAAa;YAC3B,0EAAQ,CAAC,yBAAyB,CAAC,CAAC;QACtC,CAAC;;;OAAA;IAID,sBAAI,6CAAe;QAFnB,4BAA4B;aAE5B,UAAoB,KAAU;YAC5B,0EAAQ,CAAC,2BAA2B,CAAC,CAAC;QACxC,CAAC;;;OAAA;IAUD,sBAAI,6CAAe;QAFnB,mDAAmD;aAEnD;YACE,0EAAQ,CAAC,8DAA8D,CAAC,CAAC;YACzE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;aAED,UAAoB,KAAwB;YAC1C,0EAAQ,CAAC,8DAA8D,CAAC,CAAC;YACzE,IAAI,CAAC,QAAQ,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC3C,CAAC;;;OALA;IAgCD,mCAAQ,GAAR;QAAA,iBAUC;QATC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,cAAM,YAAI,CAAC,IAAI,EAAE,EAAX,CAAW;SACxB,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,UAAC,KAAU;YACtC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBACX,KAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACvB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,iCAAM,GAAN;QACE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YAChB,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACrB,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,+BAAI,GAAJ;QAAA,iBA4BC;QA3BC,EAAE,CAAC,CACD,IAAI,CAAC,MAAM;YACX,IAAI,CAAC,UAAU;YACf,IAAI,CAAC,eAAe;YACpB,CAAC,IAAI,CAAC,OACR,CAAC,CAAC,CAAC;YACD,MAAM,CAAC;QACT,CAAC;QAED,IAAM,WAAW,GAAG;YAClB,YAAI,CAAC,QAAQ;iBACV,MAAM,CAAC,+FAAyB,CAAC;iBACjC,EAAE,CAAC,KAAI,CAAC,SAAS,CAAC;iBAClB,QAAQ,CAAC,EAAC,UAAU,EAAE,KAAI,CAAC,SAAS,EAAC,CAAC;iBACtC,IAAI,CAAC;gBACJ,OAAO,EAAE,KAAI,CAAC,OAAO;gBACrB,SAAS,EAAE,KAAI,CAAC,SAAS;gBACzB,cAAc,EAAE,KAAI,CAAC,cAAc;aACpC,CAAC;QARJ,CAQI,CAAC;QAEP,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YAChB,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC;gBAChC,WAAW,EAAE,CAAC;YAChB,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAClB,CAAC;QAAC,IAAI,CAAC,CAAC;YACN,WAAW,EAAE,CAAC;QAChB,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,+BAAI,GAAJ;QAAA,iBAcC;QAbC,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;YACzB,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACnC,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;QACnC,CAAC;QAED,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YAC3B,MAAM,CAAC;QACT,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,GAAG,KAAK,CAAC;QAC3C,UAAU,CAAC;YACT,KAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IACzB,CAAC;IAED,sCAAW,GAAX;QACE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IACI,2BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,gEAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,0BAA0B;oBACpC,QAAQ,EAAE,YAAY;iBACvB,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,+BAAc,GAAmE,cAAM;QAC9F,EAAC,IAAI,EAAE,yEAAgB,GAAG;QAC1B,EAAC,IAAI,EAAE,iEAAS,GAAG;QACnB,EAAC,IAAI,EAAE,iEAAU,GAAG;QACpB,EAAC,IAAI,EAAE,iFAAsB,GAAG;QAChC,EAAC,IAAI,EAAE,sEAAa,GAAG;KACtB,EAN6F,CAM7F,CAAC;IACK,+BAAc,GAA2C;QAChE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC7B,eAAe,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QACpC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC9B,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC/B,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAC5B,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QAChC,gBAAgB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,EAAE;QACpC,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC9B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;QAC/B,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,IAAI,EAAE,CAAC,aAAa,EAAG,EAAE,EAAE;QAC1D,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,IAAI,EAAE,CAAC,kBAAkB,EAAG,EAAE,EAAE;QAC9D,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,IAAI,EAAE,CAAC,eAAe,EAAG,EAAE,EAAE;QACxD,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,IAAI,EAAE,CAAC,eAAe,EAAG,EAAE,EAAE;QACxD,eAAe,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,IAAI,EAAE,CAAC,qBAAqB,EAAG,EAAE,EAAE;QACpE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,IAAI,EAAE,CAAC,kBAAkB,EAAG,EAAE,EAAE;QAC9D,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,IAAI,EAAE,CAAC,cAAc,EAAG,EAAE,EAAE;QAC3D,iBAAiB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,IAAI,EAAE,CAAC,gBAAgB,EAAG,EAAE,EAAE;QACjE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,IAAI,EAAE,CAAC,mBAAmB,EAAG,EAAE,EAAE;QAC3D,eAAe,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,IAAI,EAAE,CAAC,qBAAqB,EAAG,EAAE,EAAE;QACpE,iBAAiB,EAAE,CAAC,EAAE,IAAI,EAAE,4DAAK,EAAE,IAAI,EAAE,CAAC,gBAAgB,EAAG,EAAE,EAAE;QACjE,qBAAqB,EAAE,CAAC,EAAE,IAAI,EAAE,6DAAM,EAAE,EAAE;KACzC,CAAC;IA7RA;QAFC,2EAAQ,EAAE;;qDAEwB;IA8RrC,uBAAC;CAAA;AApS4B;;;;;;;;;;;;;;;;;ACZkB;AACe;AACY;AACnB;AACN;AACY;AACT;AAGpD;IAAA;IAkBA,CAAC;IAjBQ,qBAAO,GAAd;QACE,MAAM,CAAC;YACL,QAAQ,EAAE,aAAa;YACvB,SAAS,EAAE,CAAC,sEAAa,EAAE,iFAAsB,EAAE,wEAAkB,CAAC;SACvE,CAAC;IACJ,CAAC;IACI,wBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,+DAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC,qEAAY,CAAC;oBACvB,YAAY,EAAE,CAAC,4EAAgB,EAAE,+FAAyB,CAAC;oBAC3D,OAAO,EAAE,CAAC,4EAAgB,CAAC;oBAC3B,eAAe,EAAE,CAAC,+FAAyB,CAAC;iBAC7C,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,4BAAc,GAAmE,cAAM,SAC7F,EAD6F,CAC7F,CAAC;IACF,oBAAC;CAAA;AAlByB;;;;;;;;;;;;;;;;;;;;;;;;;;ACTa;AACsB;AACJ;AAO9B;AACmD;AACnB;AACN;;;;;;;;;ACZrD;AAAA,wCAAwC;AACjC,IAAM,QAAQ,GAA8B;IACjD,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,CAAC,EA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","file":"main.bundle.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncatched exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tthrow new Error(\"Cannot find module '\" + req + \"'.\");\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"../../../../../src/$$_gendir lazy recursive\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/$$_gendir lazy\n// module id = ../../../../../src/$$_gendir lazy recursive\n// module chunks = main","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"\\r\\nbutton {\\r\\n margin-right: 30px;\\r\\n}\\r\\n.dropdown-header {\\r\\n font-weight: bold;\\r\\n}\\r\\n\", \"\"]);\n\n// exports\n\n\n/*** EXPORTS FROM exports-loader ***/\nmodule.exports = module.exports.toString();\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/app/app.component.css\n// module id = ../../../../../src/app/app.component.css\n// module chunks = main","module.exports = \"\\r\\n\\r\\n\\r\\nLoading\\r\\n\\r\\n\\r\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/app/app.component.html\n// module id = ../../../../../src/app/app.component.html\n// module chunks = main","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css']\r\n})\r\nexport class AppComponent {\r\n title = 'app';\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/app/app.component.ts","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\n\r\nimport { FormsModule } from '@angular/forms';\r\nimport { HttpModule } from '@angular/http'; \r\n\r\nimport { ComponentLoaderFactory, PositioningService } from './sheared/ngx-bootstrap';\r\nimport { AppComponent } from './app.component';\r\nimport { TypeaheadModule } from './sheared/ngx-bootstrap/typeahead';\r\nimport { SearchComponent } from './serchComponent/search.component';\r\nimport { ProductSearchService } from './services/productSearch.service';\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n SearchComponent\r\n ],\r\n imports: [\r\n BrowserModule,\r\n TypeaheadModule,\r\n FormsModule,\r\n HttpModule\r\n ],\r\n providers: [\r\n ComponentLoaderFactory,\r\n PositioningService,\r\n ProductSearchService\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n\n\n\n// WEBPACK FOOTER //\n// C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/app/app.module.ts","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"button {\\r\\n margin-right: 30px;\\r\\n}\\r\\n.nopadding{\\r\\n padding-left:0;\\r\\n padding-right:0;\\r\\n}\\r\\n.w50{\\r\\n width:50%;\\r\\n display:inline-block;\\r\\n}\\r\\n.fuzzy-text {\\r\\n color: red !important;\\r\\n}\\r\\n.dropdown-header{\\r\\n font-weight:bold;\\r\\n}\\r\\n\\r\\n\\r\\n\", \"\"]);\n\n// exports\n\n\n/*** EXPORTS FROM exports-loader ***/\nmodule.exports = module.exports.toString();\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/app/serchComponent/search.component.css\n// module id = ../../../../../src/app/serchComponent/search.component.css\n// module chunks = main","module.exports = \"\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n {{ model.Details }} \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n {{model.ParentValue}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/app/serchComponent/search.component.html\n// module id = ../../../../../src/app/serchComponent/search.component.html\n// module chunks = main","import { Component, OnInit } from '@angular/core';\r\nimport { Observable } from 'rxjs/Observable';\r\nimport 'rxjs/add/observable/of';\r\nimport { ProductSearchResponse } from './../sheared/entities/productSearchResponse';\r\nimport { ProductSearchService } from './../services/productSearch.service';\r\nimport { TypeaheadMatch } from \"../sheared/ngx-bootstrap\";\r\n\r\n@Component({\r\n selector: 'search',\r\n templateUrl: './search.component.html',\r\n styleUrls: ['./search.component.css']\r\n})\r\nexport class SearchComponent implements OnInit {\r\n public inputValue: string;\r\n public typeaheadNoResults: boolean;\r\n public dataSource: Observable;\r\n public model: any;\r\n public debounceTime: number;\r\n ngOnInit() {\r\n }\r\n public constructor(private productSearchService: ProductSearchService) {\r\n this.dataSource = Observable\r\n .create((observer: any) => {\r\n observer.next(this.inputValue);\r\n })\r\n .mergeMap((token: string) => this.productSearchService.getFiltered(token));\r\n this.debounceTime = 50;\r\n }\r\n public typeaheadOnSelect(e: TypeaheadMatch): void {\r\n var redirectUrl = this.encodeUrl(e.item.Url);\r\n window.location.href = redirectUrl;\r\n }\r\n public onEnterPress(): void {\r\n var redirectUrl = this.encodeUrl(\"/sok/\" + this.inputValue);\r\n window.location.href = redirectUrl;\r\n }\r\n private encodeUrl(value: string): string {\r\n var result = value.replace(/[ ]{1,}/g, '-');\r\n return result;\r\n }\r\n\r\n public fuzzyFiltering(result: string): string {\r\n result = this.fuzzyHighlight(result, this.inputValue);\r\n return result;\r\n }\r\n private processString(text: string): string {\r\n var result = text;\r\n while (result.indexOf(\" \") != -1) {\r\n result = result.replace(\" \", \"\");\r\n }\r\n while (result.indexOf(\"-\") != -1) {\r\n result = result.replace(\"-\", \"\");\r\n }\r\n return result;\r\n }\r\n public fuzzyHighlight(text: string, search: string): string {\r\n var searchString = this.processString(search).toLowerCase();\r\n if (searchString.length < 3) {\r\n return this.lowFuzzyHighlight(text, searchString);\r\n }\r\n var lowerText = text.toLowerCase();\r\n var searchArray = searchString.split(\"\");\r\n var tokens = [];\r\n for (var i = 0; i < lowerText.length; i++) {\r\n var isEntered = false;\r\n var subString = \"\";\r\n var k = 0;\r\n for (var j = 0; j < searchArray.length && i < lowerText.length; j++) {\r\n if ((lowerText[i + k] == ' ' || lowerText[i + k] == '-') &&\r\n lowerText[i + k + 1] && lowerText[i + k + 1] == searchArray[j] && isEntered) {\r\n subString += lowerText[i + k];\r\n k++;\r\n }\r\n if (lowerText[i + k] != searchArray[j] && isEntered && lowerText[i + k]) {\r\n tokens.push(subString);\r\n subString = \"\";\r\n isEntered = false;\r\n k = 0;\r\n }\r\n if (lowerText[i + k] == searchArray[j] && lowerText[i + k]) {\r\n isEntered = true;\r\n subString += lowerText[i + k];\r\n k++;\r\n }\r\n }\r\n if (subString.length > 0) {\r\n tokens.push(subString);\r\n }\r\n }\r\n var tokenIndexs = [];\r\n tokens.sort((a: string, b: string) => {\r\n if (a.length < b.length) {\r\n return 1;\r\n }\r\n if (a.length > b.length) {\r\n return -1;\r\n }\r\n return 0;\r\n });\r\n\r\n var response = text.toLowerCase();\r\n for (var i = 0; i < tokens.length; i++) {\r\n if (searchString.length < 1) {\r\n break;\r\n }\r\n var processTokenString = this.processString(tokens[i]);\r\n var responseIndexOfToken = response.indexOf(tokens[i]);\r\n var textIndexOfToken = text.toLowerCase().indexOf(tokens[i]);\r\n var substringIndex = searchString.indexOf(processTokenString);\r\n if (responseIndexOfToken == -1 || substringIndex == -1) {\r\n continue;\r\n }\r\n for (var g = 0; g < tokens[i].length; g++) {\r\n tokenIndexs.push(textIndexOfToken + g);\r\n }\r\n response = response.replace(tokens[i], \"\");\r\n searchString = searchString.replace(processTokenString, \"\");\r\n }\r\n\r\n var result = text.split(\"\");\r\n for (var n = 0; n < tokenIndexs.length; n++) {\r\n result[tokenIndexs[n]] = '' + result[tokenIndexs[n]] + '';\r\n }\r\n return result.join('');\r\n }\r\n public lowFuzzyHighlight(text: string, search: string): string {\r\n var searchArray = search;\r\n var tokens = this.processString(text).split(\"\");\r\n var isHighlighted = false;\r\n for (var n = 0; n < tokens.length - 1 && !isHighlighted; n++) {\r\n if (tokens[n].toLowerCase() == searchArray[0] && tokens[n + 1].toLowerCase() == searchArray[1]) {\r\n tokens[n] = '' + text[n] + '';\r\n tokens[n + 1] = '' + text[n + 1] + '';\r\n isHighlighted = true;\r\n }\r\n }\r\n for (var i = 0; i < tokens.length && !isHighlighted; i++) {\r\n if (tokens[i].toLowerCase() == searchArray[0] || tokens[i].toLowerCase() == searchArray[1]) {\r\n tokens[i] = '' + tokens[i] + '';\r\n isHighlighted = true;\r\n }\r\n }\r\n return tokens.join('');\r\n }\r\n}\r\n\r\n\r\n\n\n\n// WEBPACK FOOTER //\n// C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/app/serchComponent/search.component.ts","import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs/Rx';\r\nimport { Headers, RequestOptions, Http } from '@angular/http';\r\nimport { ProductSearchResponse } from './../sheared/entities/productSearchResponse';\r\n\r\n@Injectable()\r\nexport class ProductSearchService {\r\n\r\n constructor(private http: Http) {\r\n }\r\n\r\n getFiltered(filter: string): Observable {\r\n let headers = new Headers({ 'Content-Type': 'application/x-www-form-urlencoded' });\r\n let body = 'filter=' + filter;\r\n return this.http.post(\"/SearcherService.asmx/Products\", body, { headers: headers }).map(function (res)\r\n {\r\n var data = res.text();\r\n var jsonData = data.substring(data.indexOf('>') + 1, data.lastIndexOf('<')).substring(data.indexOf('>') + 1);;\r\n var result = new Array();\r\n result = JSON.parse(jsonData);\r\n return result;\r\n });\r\n }\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/app/services/productSearch.service.ts","import {\n Component, HostBinding, Inject, Input, OnDestroy, OnInit\n} from '@angular/core';\nimport { isBs3 } from '../utils/theme-provider';\nimport { AccordionComponent } from './accordion.component';\n\n/**\n * ### Accordion heading\n * Instead of using `heading` attribute on the `accordion-group`, you can use\n * an `accordion-heading` attribute on `any` element inside of a group that\n * will be used as group's header template.\n */\n\nexport class AccordionPanelComponent implements OnInit, OnDestroy {\n /** Clickable text in accordion's group header, check `accordion heading` below for using html in header */\n heading: string;\n /** Provides an ability to use Bootstrap's contextual panel classes\n * (`panel-primary`, `panel-success`, `panel-info`, etc...).\n * List of all available classes [available here]\n * (http://getbootstrap.com/components/#panels-alternatives)\n */\n panelClass: string;\n /** if true — disables accordion group */\n isDisabled: boolean;\n\n // Questionable, maybe .panel-open should be on child div.panel element?\n /** Is accordion group open or closed */\n \n \n get isOpen(): boolean {\n return this._isOpen;\n }\n\n set isOpen(value: boolean) {\n this._isOpen = value;\n if (value) {\n this.accordion.closeOtherPanels(this);\n }\n }\n\n get isBs3(): boolean {\n return isBs3();\n }\n\n protected _isOpen: boolean;\n protected accordion: AccordionComponent;\n\n constructor( accordion: AccordionComponent) {\n this.accordion = accordion;\n }\n\n ngOnInit(): any {\n this.panelClass = this.panelClass || 'panel-default';\n this.accordion.addGroup(this);\n }\n\n ngOnDestroy(): any {\n this.accordion.removeGroup(this);\n }\n\n toggleOpen(event: Event): any {\n if (!this.isDisabled) {\n this.isOpen = !this.isOpen;\n }\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'accordion-group, accordion-panel',\n template: \"
{{ heading }}
\",\n host: {\n class: 'panel',\n style: 'display: block'\n }\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: AccordionComponent, decorators: [{ type: Inject, args: [AccordionComponent, ] }, ]},\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'heading': [{ type: Input },],\n'panelClass': [{ type: Input },],\n'isDisabled': [{ type: Input },],\n'isOpen': [{ type: HostBinding, args: ['class.panel-open', ] },{ type: Input },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/accordion/accordion-group.component.ts","import { Component, Input } from '@angular/core';\nimport { AccordionPanelComponent } from './accordion-group.component';\nimport { AccordionConfig } from './accordion.config';\n\n/** Displays collapsible content panels for presenting information in a limited amount of space. */\n\nexport class AccordionComponent {\n /** if `true` expanding one item will close all others */\n closeOthers: boolean;\n\n protected groups: AccordionPanelComponent[] = [];\n\n constructor(config: AccordionConfig) {\n Object.assign(this, config);\n }\n\n closeOtherPanels(openGroup: AccordionPanelComponent): void {\n if (!this.closeOthers) {\n return;\n }\n\n this.groups.forEach((group: AccordionPanelComponent) => {\n if (group !== openGroup) {\n group.isOpen = false;\n }\n });\n }\n\n addGroup(group: AccordionPanelComponent): void {\n this.groups.push(group);\n }\n\n removeGroup(group: AccordionPanelComponent): void {\n const index = this.groups.indexOf(group);\n if (index !== -1) {\n this.groups.splice(index, 1);\n }\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'accordion',\n template: ``,\n host: {\n '[attr.aria-multiselectable]': 'closeOthers',\n role: 'tablist',\n class: 'panel-group',\n style: 'display: block'\n }\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: AccordionConfig, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'closeOthers': [{ type: Input },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/accordion/accordion.component.ts","import { Injectable } from '@angular/core';\n\n/**\n * Configuration service, provides default values for the AccordionComponent.\n */\n\nexport class AccordionConfig {\n /** Whether the other panels should be closed when a panel is opened */\n closeOthers: Boolean = false;\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/accordion/accordion.config.ts","import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\n\nimport { CollapseModule } from '../collapse/collapse.module';\nimport { AccordionPanelComponent } from './accordion-group.component';\nimport { AccordionComponent } from './accordion.component';\nimport { AccordionConfig } from './accordion.config';\n\n\nexport class AccordionModule {\n static forRoot(): ModuleWithProviders {\n return { ngModule: AccordionModule, providers: [AccordionConfig] };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule, CollapseModule],\n declarations: [AccordionComponent, AccordionPanelComponent],\n exports: [AccordionComponent, AccordionPanelComponent]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/accordion/accordion.module.ts","export { AccordionPanelComponent } from './accordion-group.component';\nexport { AccordionComponent } from './accordion.component';\nexport { AccordionModule } from './accordion.module';\nexport { AccordionConfig } from './accordion.config';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/accordion/index.ts","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { AlertConfig } from './alert.config';\nimport { OnChange } from '../utils/decorators';\n\n\nexport class AlertComponent implements OnInit {\n /** Alert type.\n * Provides one of four bootstrap supported contextual classes:\n * `success`, `info`, `warning` and `danger`\n */\n type = 'warning';\n /** If set, displays an inline \"Close\" button */\n @OnChange()\n \n dismissible = false;\n /** Number in milliseconds, after which alert will be closed */\n dismissOnTimeout: number | string;\n\n /** This event fires immediately after close instance method is called,\n * $event is an instance of Alert component.\n */\n onClose = new EventEmitter();\n /** This event fires when alert closed, $event is an instance of Alert component */\n onClosed = new EventEmitter();\n\n isClosed = false;\n classes = '';\n dismissibleChange: EventEmitter = new EventEmitter();\n\n constructor(_config: AlertConfig) {\n Object.assign(this, _config);\n this.dismissibleChange.subscribe((dismissible: boolean) => {\n this.classes = this.dismissible ? 'alert-dismissible' : '';\n });\n }\n\n ngOnInit(): void {\n if (this.dismissOnTimeout) {\n // if dismissOnTimeout used as attr without binding, it will be a string\n setTimeout(\n () => this.close(),\n parseInt(this.dismissOnTimeout as string, 10)\n );\n }\n }\n\n // todo: animation ` If the .fade and .in classes are present on the element,\n // the alert will fade out before it is removed`\n /**\n * Closes an alert by removing it from the DOM.\n */\n close(): void {\n if (this.isClosed) {\n return;\n }\n\n this.onClose.emit(this);\n this.isClosed = true;\n this.onClosed.emit(this);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'alert,bs-alert',\n template: \"
\"\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: AlertConfig, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'type': [{ type: Input },],\n'dismissible': [{ type: Input },],\n'dismissOnTimeout': [{ type: Input },],\n'onClose': [{ type: Output },],\n'onClosed': [{ type: Output },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/alert/alert.component.ts","import { Injectable } from '@angular/core';\n\n\nexport class AlertConfig {\n /** default alert type */\n type = 'warning';\n\n /** is alerts are dismissible by default */\n dismissible = false;\n\n /** default time before alert will dismiss */\n dismissOnTimeout?: number = undefined;\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/alert/alert.config.ts","import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\nimport { AlertComponent } from './alert.component';\nimport { AlertConfig } from './alert.config';\n\n\nexport class AlertModule {\n static forRoot(): ModuleWithProviders {\n return { ngModule: AlertModule, providers: [AlertConfig] };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n declarations: [AlertComponent],\n exports: [AlertComponent],\n entryComponents: [AlertComponent]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/alert/alert.module.ts","export { AlertComponent } from './alert.component';\nexport { AlertModule } from './alert.module';\nexport { AlertConfig } from './alert.config';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/alert/index.ts","import { Locale } from './locale/locale.class';\nimport { zeroFill } from './utils';\nimport { isFunction } from './utils/type-checks';\nimport { DateFormatterFn } from './types';\n\nexport let formatFunctions: {\n [key: string]: (date: Date, locale: Locale) => string;\n} = {};\nexport let formatTokenFunctions: { [key: string]: DateFormatterFn } = {};\n\n// tslint:disable-next-line\nexport const formattingTokens = /(\\[[^\\[]*\\])|(\\\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g;\n\n// token: 'M'\n// padded: ['MM', 2]\n// ordinal: 'Mo'\n// callback: function () { this.month() + 1 }\nexport function addFormatToken(\n token: string,\n padded: { [key: number]: any },\n ordinal: string,\n callback: DateFormatterFn\n): void {\n const func: DateFormatterFn = callback;\n if (token) {\n formatTokenFunctions[token] = func;\n }\n if (padded as { [key: number]: any }) {\n const key = padded[0] as string;\n formatTokenFunctions[key] = function(\n date: Date,\n format: string,\n locale?: Locale\n ): string {\n return zeroFill(\n func.apply(null, arguments),\n padded[1] as number,\n padded[2] as boolean\n );\n };\n }\n if (ordinal) {\n formatTokenFunctions[ordinal] = function(\n date: Date,\n format: string,\n locale: Locale\n ): string {\n // todo: fix this\n return locale.ordinal(func.apply(null, arguments), token);\n };\n }\n}\n\nexport function makeFormatFunction(\n format: string\n): (date: Date, locale: Locale) => string {\n const array: string[] = format.match(formattingTokens);\n const length = array.length;\n const formatArr: string[] | DateFormatterFn[] = new Array(length);\n for (let i = 0; i < length; i++) {\n formatArr[i] = formatTokenFunctions[array[i]]\n ? formatTokenFunctions[array[i]]\n : removeFormattingTokens(array[i]);\n }\n\n return function(date: Date, locale: Locale): string {\n let output = '';\n for (let j = 0; j < length; j++) {\n output += isFunction(formatArr[j] as DateFormatterFn)\n ? (formatArr[j] as DateFormatterFn).call(null, date, format, locale)\n : formatArr[j];\n }\n\n return output;\n };\n}\n\nfunction removeFormattingTokens(input: string): string {\n if (input.match(/\\[[\\s\\S]/)) {\n return input.replace(/^\\[|\\]$/g, '');\n }\n\n return input.replace(/\\\\/g, '');\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/bs-moment/format-functions.ts","// moment.js\n// version : 2.18.1\n// authors : Tim Wood, Iskren Chernev, Moment.js contributors\n// license : MIT\n// momentjs.com\n\nimport { formatFunctions, makeFormatFunction } from './format-functions';\nimport './locale';\nimport './units';\nimport { Locale } from './locale/locale.class';\nimport { getLocale } from './locale/locales.service';\nimport { isDateValid } from './utils/type-checks';\n\nexport function formatDate(date: Date, format: string, locale = 'en'): string {\n const _locale = getLocale(locale);\n if (!_locale) {\n throw new Error(\n `Locale \"${locale}\" is not defined, please add it with \"defineLocale(...)\"`\n );\n }\n const output = formatMoment(date, format, _locale);\n\n return _locale.postformat(output);\n}\n\n// format date using native date object\nexport function formatMoment(date: Date, _format: string, locale: Locale) {\n if (!isDateValid(date)) {\n return locale.invalidDate;\n }\n const format = expandFormat(_format, locale);\n formatFunctions[format] =\n formatFunctions[format] || makeFormatFunction(format);\n\n return formatFunctions[format](date, locale);\n}\n\nexport function expandFormat(_format: string, locale: Locale) {\n let format = _format;\n let i = 5;\n const localFormattingTokens = /(\\[[^\\[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g;\n\n const replaceLongDateFormatTokens = (input: any) => {\n return locale.formatLongDate(input) || input;\n };\n\n localFormattingTokens.lastIndex = 0;\n while (i >= 0 && localFormattingTokens.test(format)) {\n format = format.replace(localFormattingTokens, replaceLongDateFormatTokens);\n localFormattingTokens.lastIndex = 0;\n i -= 1;\n }\n\n return format;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/bs-moment/format.ts","export {\n defineLocale,\n getSetGlobalLocale,\n listLocales\n} from './locale/locales.service';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/bs-moment/index.ts","import { getSetGlobalLocale } from './locales.service';\nimport { toInt } from '../utils/type-checks';\n\ngetSetGlobalLocale('en', {\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal(num: number): string {\n const b = num % 10;\n const output =\n toInt((num % 100) / 10) === 1\n ? 'th'\n : b === 1 ? 'st' : b === 2 ? 'nd' : b === 3 ? 'rd' : 'th';\n return num + output;\n }\n});\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/locale/en.ts","import './en';\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/locale/index.ts","import { weekOfYear } from '../units/week-calendar-utils';\nimport { isArray, isFunction } from '../utils/type-checks';\nimport { getDayOfWeek, getMonth } from '../utils/date-getters';\n\nexport interface LocaleOptionsFormat {\n format: string[];\n standalone: string[];\n isFormat?: RegExp;\n}\n\nexport type LocaleOptions = string[] | LocaleOptionsFormat;\n\nconst MONTHS_IN_FORMAT = /D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?/;\nexport const defaultLocaleMonths = 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n);\nexport const defaultLocaleMonthsShort = 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split(\n '_'\n);\nexport const defaultLocaleWeekdays = 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n);\nexport const defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split(\n '_'\n);\nexport const defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_');\nexport const defaultLongDateFormat: { [index: string]: string } = {\n LTS: 'h:mm:ss A',\n LT: 'h:mm A',\n L: 'MM/DD/YYYY',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY h:mm A',\n LLLL: 'dddd, MMMM D, YYYY h:mm A'\n};\n\nexport interface LocaleData {\n [key: string]: any;\n\n invalidDate?: string;\n abbr?: string;\n\n months?: LocaleOptions;\n monthsShort?: LocaleOptions;\n weekdays?: LocaleOptions;\n weekdaysMin?: string[];\n weekdaysShort?: string[];\n week?: { dow: number; doy: number };\n\n dayOfMonthOrdinalParse?: RegExp;\n meridiemParse?: RegExp;\n\n ordinal?(num: number, token?: string): string;\n postformat?(num: string): string;\n}\n\nexport class Locale {\n [key: string]: any;\n _abbr: string;\n _config: LocaleData;\n invalidDate: string;\n\n private _months: LocaleOptions;\n private _monthsShort: LocaleOptions;\n\n private _weekdays: LocaleOptions;\n private _weekdaysShort: string[];\n private _weekdaysMin: string[];\n private _week: { dow: number; doy: number };\n private _longDateFormat: {[key: string]: any};\n\n private _ordinal: string;\n\n constructor(config: LocaleData) {\n if (!!config) {\n this.set(config);\n }\n }\n\n set(config: LocaleData): void {\n for (const i in config) {\n if (!config.hasOwnProperty(i)) {\n continue;\n }\n const prop = config[i];\n const key = isFunction(prop) ? i : `_${i}`;\n this[key] = prop;\n }\n\n this._config = config;\n }\n\n // Months\n // LOCALES\n months(date?: Date, format?: string): string | string[] {\n if (!date) {\n return isArray(this._months)\n ? this._months as string[]\n : (this._months as LocaleOptionsFormat).standalone;\n }\n\n if (isArray(this._months)) {\n return (this._months as string[])[getMonth(date)];\n }\n\n const key = ((this._months as LocaleOptionsFormat).isFormat ||\n MONTHS_IN_FORMAT)\n .test(format)\n ? 'format'\n : 'standalone';\n return ((this._months as any)[key] as string[])[getMonth(date)];\n }\n\n monthsShort(date?: Date, format?: string): string | string[] {\n if (!date) {\n return isArray(this._monthsShort)\n ? this._monthsShort as string[]\n : (this._monthsShort as LocaleOptionsFormat).standalone;\n }\n\n if (isArray(this._monthsShort)) {\n return (this._monthsShort as string[])[getMonth(date)];\n }\n const key = MONTHS_IN_FORMAT.test(format) ? 'format' : 'standalone';\n return ((this._monthsShort as any)[key] as string[])[getMonth(date)];\n }\n\n // Days of week\n // LOCALES\n\n weekdays(date?: Date, format?: string): string | string[] {\n const _isArray = isArray(this._weekdays as string[]);\n if (!date) {\n return _isArray\n ? this._weekdays as string[]\n : (this._weekdays as LocaleOptionsFormat).standalone;\n }\n\n if (_isArray) {\n return (this._weekdays as string[])[getDayOfWeek(date)];\n }\n\n const _key = (this._weekdays as LocaleOptionsFormat).isFormat.test(format)\n ? 'format'\n : 'standalone';\n return ((this._weekdays as any)[_key] as string[])[getDayOfWeek(date)];\n }\n\n weekdaysMin(date?: Date): string | string[] {\n return date ? this._weekdaysShort[getDayOfWeek(date)] : this._weekdaysShort;\n }\n\n weekdaysShort(date?: Date): string | string[] {\n return date ? this._weekdaysMin[getDayOfWeek(date)] : this._weekdaysMin;\n }\n\n week(date: Date): number {\n return weekOfYear(date, this._week.dow, this._week.doy).week;\n }\n\n firstDayOfWeek(): number {\n return this._week.dow;\n }\n\n firstDayOfYear(): number {\n return this._week.doy;\n }\n\n meridiem(hours: number, minutes: number, isLower: boolean): string {\n if (hours > 11) {\n return isLower ? 'pm' : 'PM';\n }\n\n return isLower ? 'am' : 'AM';\n }\n\n ordinal(num: number, token?: string): string {\n return this._ordinal.replace('%d', num.toString(10));\n }\n\n preparse(str: string) {\n return str;\n }\n\n postformat(str: string) {\n return str;\n }\n\n formatLongDate(key: string) {\n this._longDateFormat = this._longDateFormat ? this._longDateFormat : defaultLongDateFormat;\n const format = this._longDateFormat[key];\n const formatUpper = this._longDateFormat[key.toUpperCase()];\n\n if (format || !formatUpper) {\n return format;\n }\n\n this._longDateFormat[\n key\n ] = formatUpper.replace(/MMMM|MM|DD|dddd/g, (val: string) => {\n return val.slice(1);\n });\n\n return this._longDateFormat[key];\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/locale/locale.class.ts","import {\n defaultLocaleMonths,\n defaultLocaleMonthsShort,\n defaultLocaleWeekdays,\n defaultLocaleWeekdaysMin,\n defaultLocaleWeekdaysShort,\n LocaleData\n} from './locale.class';\n\nexport const defaultInvalidDate = 'Invalid date';\n\nexport const defaultLocaleWeek = {\n dow: 0, // Sunday is the first day of the week.\n doy: 6 // The week that contains Jan 1st is the first week of the year.\n};\n\nexport const defaultLocaleMeridiemParse = /[ap]\\.?m?\\.?/i;\n\nexport const baseConfig: LocaleData = {\n // calendar: defaultCalendar,\n // longDateFormat: defaultLongDateFormat,\n invalidDate: defaultInvalidDate,\n // ordinal: defaultOrdinal,\n // dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse,\n // relativeTime: defaultRelativeTime,\n\n months: defaultLocaleMonths,\n monthsShort: defaultLocaleMonthsShort,\n\n week: defaultLocaleWeek,\n\n weekdays: defaultLocaleWeekdays,\n weekdaysMin: defaultLocaleWeekdaysMin,\n weekdaysShort: defaultLocaleWeekdaysShort,\n\n meridiemParse: defaultLocaleMeridiemParse\n};\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/locale/locale.defaults.ts","// internal storage for locale config files\nimport { Locale, LocaleData } from './locale.class';\nimport { baseConfig } from './locale.defaults';\nimport { hasOwnProp, isObject, isUndefined } from '../utils/type-checks';\n\nconst locales: { [key: string]: Locale } = {};\nconst localeFamilies: { [key: string]: Locale } = {};\nlet globalLocale: Locale;\n\nfunction chooseLocale(name: string) {\n return locales[name];\n}\n\n// returns locale data\nexport function getLocale(key: string): Locale {\n if (!key) {\n return globalLocale;\n }\n\n return chooseLocale(key);\n}\n\nexport function listLocales(): string[] {\n return Object.keys(locales);\n}\n\nexport function mergeConfigs(\n parentConfig: LocaleData,\n childConfig: LocaleData\n) {\n const res: { [key: string]: any } = Object.assign({}, parentConfig);\n\n for (const childProp in childConfig) {\n if (!hasOwnProp(childConfig, childProp)) {\n continue;\n }\n if (isObject(parentConfig[childProp]) && isObject(childConfig[childProp])) {\n res[childProp] = {};\n Object.assign(res[childProp], parentConfig[childProp]);\n Object.assign(res[childProp], childConfig[childProp]);\n } else if (childConfig[childProp] != null) {\n res[childProp] = childConfig[childProp];\n } else {\n delete res[childProp];\n }\n }\n for (const parentProp in parentConfig) {\n if (\n hasOwnProp(parentConfig, parentProp) &&\n !hasOwnProp(childConfig, parentProp) &&\n isObject(parentConfig[parentProp])\n ) {\n // make sure changes to properties don't modify parent config\n res[parentProp] = Object.assign({}, res[parentProp]);\n }\n }\n return res;\n}\n\n// This function will load locale and then set the global locale. If\n// no arguments are passed in, it will simply return the current global\n// locale key.\nexport function getSetGlobalLocale(key: string, values?: LocaleData): string {\n let data: Locale;\n if (key) {\n data = isUndefined(values) ? getLocale(key) : defineLocale(key, values);\n\n if (data) {\n globalLocale = data;\n }\n }\n\n return globalLocale._abbr;\n}\n\nexport function defineLocale(name: string, config?: LocaleData): Locale {\n if (config === null) {\n // useful for testing\n delete locales[name];\n return null;\n }\n\n config.abbr = name;\n\n locales[name] = new Locale(mergeConfigs(baseConfig, config));\n\n if (localeFamilies[name]) {\n localeFamilies[name].forEach(function(x: Locale) {\n defineLocale(x.name, x.config);\n });\n }\n\n // backwards compat for now: also set the locale\n // make sure we set the locale AFTER all child locales have been\n // created, so we won't end up with the child locale set.\n getSetGlobalLocale(name);\n\n return locales[name];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/locale/locales.service.ts","import { addFormatToken } from '../format-functions';\nimport { getDate } from '../utils/date-getters';\n\naddFormatToken('D', ['DD', 2], 'Do', function(date: Date): string {\n return getDate(date).toString(10);\n});\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/units/day-of-month.ts","import { addFormatToken } from '../format-functions';\nimport { Locale } from '../locale/locale.class';\nimport { getDayOfWeek } from '../utils/date-getters';\n\n// FORMATTING\naddFormatToken('d', null, 'do', function(date: Date): string {\n return getDayOfWeek(date).toString(10);\n});\n\naddFormatToken('dd', null, null, function(\n date: Date,\n format: string,\n locale?: Locale\n): string {\n return locale.weekdaysShort(date) as string;\n});\n\naddFormatToken('ddd', null, null, function(\n date: Date,\n format: string,\n locale?: Locale\n): string {\n return locale.weekdaysMin(date) as string;\n});\n\naddFormatToken('dddd', null, null, function(\n date: Date,\n format: string,\n locale?: Locale\n): string {\n return locale.weekdays(date, format) as string;\n});\n\naddFormatToken('e', null, null, function(date: Date): string {\n return getDayOfWeek(date).toString(10);\n});\naddFormatToken('E', null, null, function(date: Date): string {\n return getISODayOfWeek(date).toString(10);\n});\n\nexport function getLocaleDayOfWeek(date: Date, locale: Locale): number {\n return (getDayOfWeek(date) + 7 - locale.firstDayOfWeek()) % 7;\n}\n\nexport function getISODayOfWeek(date: Date): number {\n return getDayOfWeek(date) || 7;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/units/day-of-week.ts","import { addFormatToken } from '../format-functions';\nimport { startOf } from '../utils/start-end-of';\n\n// FORMATTING\naddFormatToken('DDD', ['DDDD', 3], 'DDDo', function(date: Date): string {\n return getDayOfYear(date).toString(10);\n});\n\nexport function getDayOfYear(date: Date): number {\n const date1 = +startOf(date, 'day');\n const date2 = +startOf(date, 'year');\n const someDate = date1 - date2;\n const oneDay = 1000 * 60 * 60 * 24;\n\n return Math.round(someDate / oneDay) + 1;\n}\n\nexport function _getDayOfYear(date: Date): number {\n const start = new Date(date.getFullYear(), 0, 0);\n const diff = date.getTime() - start.getTime();\n const oneDay = 1000 * 60 * 60 * 24;\n\n return Math.round(diff / oneDay) + 1;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/units/day-of-year.ts","// import { makeGetSet } from '../moment/get-set';\n// import { addFormatToken } from '../format/format';\n// import { addUnitAlias } from './aliases';\n// import { addUnitPriority } from './priorities';\n// import { addRegexToken, match1to2, match2, match3to4, match5to6 } from '../parse/regex';\n// import { addParseToken } from '../parse/token';\n// import { HOUR, MINUTE, SECOND } from './constants';\n// import toInt from '../utils/to-int';\n// import zeroFill from '../utils/zero-fill';\n// import getParsingFlags from '../create/parsing-flags';\n\n// FORMATTING\n\nimport { getHours, getMinutes, getSeconds } from '../utils/date-getters';\nimport { addFormatToken } from '../format-functions';\nimport { zeroFill } from '../utils';\nimport { Locale } from '../locale/locale.class';\n\nfunction hFormat(date: Date): number {\n return getHours(date) % 12 || 12;\n}\n\nfunction kFormat(date: Date): number {\n return getHours(date) || 24;\n}\n\naddFormatToken('H', ['HH', 2], null, function(\n date: Date,\n format: string,\n locale?: Locale\n): string {\n return getHours(date).toString(10);\n});\naddFormatToken('h', ['hh', 2], null, function(\n date: Date,\n format: string,\n locale?: Locale\n): string {\n return hFormat(date).toString(10);\n});\naddFormatToken('k', ['kk', 2], null, function(\n date: Date,\n format: string,\n locale?: Locale\n): string {\n return kFormat(date).toString(10);\n});\n\naddFormatToken('hmm', null, null, function(\n date: Date,\n format: string,\n locale?: Locale\n): string {\n return `${hFormat(date)}${zeroFill(getMinutes(date), 2)}`;\n});\n\naddFormatToken('hmmss', null, null, function(\n date: Date,\n format: string,\n locale?: Locale\n): string {\n return `${hFormat(date)}${zeroFill(getMinutes(date), 2)}${zeroFill(\n getSeconds(date),\n 2\n )}`;\n});\n\naddFormatToken('Hmm', null, null, function(\n date: Date,\n format: string,\n locale?: Locale\n): string {\n return `${getHours(date)}${zeroFill(getMinutes(date), 2)}`;\n});\n\naddFormatToken('Hmmss', null, null, function(\n date: Date,\n format: string,\n locale?: Locale\n): string {\n return `${getHours(date)}${zeroFill(getMinutes(date), 2)}${zeroFill(\n getSeconds(date),\n 2\n )}`;\n});\n\nfunction meridiem(token: string, lowercase: boolean): void {\n addFormatToken(token, null, null, function(\n date: Date,\n format: string,\n locale?: Locale\n ): string {\n return locale.meridiem(getHours(date), getMinutes(date), lowercase);\n });\n}\n\nmeridiem('a', true);\nmeridiem('A', false);\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/units/hour.ts","import './day-of-month';\nimport './day-of-week';\nimport './day-of-year';\nimport './hour';\nimport './minute';\nimport './month';\nimport './second';\nimport './week';\nimport './week-calendar-utils';\nimport './year';\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/units/index.ts","import { addFormatToken } from '../format-functions';\nimport { getMinutes } from '../utils/date-getters';\n\naddFormatToken('m', ['mm', 2], null, function(date: Date) {\n return getMinutes(date).toString(10);\n});\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/units/minute.ts","import { addFormatToken } from '../format-functions';\nimport { isLeapYear } from './year';\nimport { Locale } from '../locale/locale.class';\nimport { mod } from '../utils';\nimport { getMonth } from '../utils/date-getters';\n\nexport function daysInMonth(year: number, month: number): number {\n if (isNaN(year) || isNaN(month)) {\n return NaN;\n }\n const modMonth = mod(month, 12);\n year += (month - modMonth) / 12;\n\n return modMonth === 1\n ? isLeapYear(year) ? 29 : 28\n : 31 - (modMonth % 7) % 2;\n}\n\n// FORMATTING\n\naddFormatToken('M', ['MM', 2], 'Mo', function(\n date: Date,\n format: string\n): string {\n return (getMonth(date) + 1).toString();\n});\n\naddFormatToken('MMM', null, null, function(\n date: Date,\n format: string,\n locale?: Locale\n): string {\n return locale.monthsShort(date, format) as string;\n});\n\naddFormatToken('MMMM', null, null, function(\n date: Date,\n format: string,\n locale?: Locale\n): string {\n return locale.months(date, format) as string;\n});\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/units/month.ts","import { addFormatToken } from '../format-functions';\nimport { getSeconds } from '../utils/date-getters';\n\naddFormatToken('s', ['ss', 2], null, function(date: Date): string {\n return getSeconds(date).toString(10);\n});\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/units/second.ts","/**\n *\n * @param {number} year\n * @param {number} dow - start-of-first-week\n * @param {number} doy - start-of-year\n * @returns {number}\n */\nimport { createUTCDate } from '../utils';\nimport { daysInYear } from './year';\nimport { getDayOfYear } from './day-of-year';\nimport { getFullYear } from '../utils/date-getters';\n\nfunction firstWeekOffset(year: number, dow: number, doy: number): number {\n // first-week day -- which january is always in the first week (4 for iso, 1 for other)\n const fwd = 7 + dow - doy;\n // first-week day local weekday -- which local weekday is fwd\n const fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7;\n\n return -fwdlw + fwd - 1;\n}\n\n// https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday\nexport function dayOfYearFromWeeks(\n year: number,\n week: number,\n weekday: number,\n dow: number,\n doy: number\n): { year: number; dayOfYear: number } {\n const localWeekday = (7 + weekday - dow) % 7;\n const weekOffset = firstWeekOffset(year, dow, doy);\n const dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset;\n let resYear: number;\n let resDayOfYear: number;\n\n if (dayOfYear <= 0) {\n resYear = year - 1;\n resDayOfYear = daysInYear(resYear) + dayOfYear;\n } else if (dayOfYear > daysInYear(year)) {\n resYear = year + 1;\n resDayOfYear = dayOfYear - daysInYear(year);\n } else {\n resYear = year;\n resDayOfYear = dayOfYear;\n }\n\n return {\n year: resYear,\n dayOfYear: resDayOfYear\n };\n}\n\nexport function weekOfYear(\n date: Date,\n dow: number,\n doy: number\n): { week: number; year: number } {\n const weekOffset = firstWeekOffset(getFullYear(date), dow, doy);\n const week = Math.floor((getDayOfYear(date) - weekOffset - 1) / 7) + 1;\n let resWeek: number;\n let resYear: number;\n\n if (week < 1) {\n resYear = getFullYear(date) - 1;\n resWeek = week + weeksInYear(resYear, dow, doy);\n } else if (week > weeksInYear(getFullYear(date), dow, doy)) {\n resWeek = week - weeksInYear(getFullYear(date), dow, doy);\n resYear = getFullYear(date) + 1;\n } else {\n resYear = getFullYear(date);\n resWeek = week;\n }\n\n return {\n week: resWeek,\n year: resYear\n };\n}\n\nexport function weeksInYear(year: number, dow: number, doy: number): number {\n const weekOffset = firstWeekOffset(year, dow, doy);\n const weekOffsetNext = firstWeekOffset(year + 1, dow, doy);\n return (daysInYear(year) - weekOffset + weekOffsetNext) / 7;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/units/week-calendar-utils.ts","import { addFormatToken } from '../format-functions';\nimport { Locale } from '../locale/locale.class';\nimport { weekOfYear } from './week-calendar-utils';\n\naddFormatToken('w', ['ww', 2], 'wo', function(\n date: Date,\n format: string,\n locale: Locale\n): string {\n return getWeek(date, locale).toString(10);\n});\naddFormatToken('W', ['WW', 2], 'Wo', function(date: Date): string {\n return getISOWeek(date).toString(10);\n});\n\nexport function getWeek(date: Date, locale: Locale): number {\n return locale.week(date);\n}\n\nexport function getISOWeek(date: Date): number {\n return weekOfYear(date, 1, 4).week;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/units/week.ts","import { addFormatToken } from '../format-functions';\nimport { getFullYear } from '../utils/date-getters';\n\n// FORMATTING\n\nfunction getYear(date: Date): string {\n return getFullYear(date).toString();\n}\n\naddFormatToken('Y', null, null, function(date: Date): string {\n const y = getFullYear(date);\n return y <= 9999 ? '' + y : '+' + y;\n});\n\naddFormatToken(null, ['YY', 2], null, function(date: Date): string {\n return (getFullYear(date) % 100).toString(10);\n});\n\naddFormatToken(null, ['YYYY', 4], null, getYear);\naddFormatToken(null, ['YYYYY', 5], null, getYear);\naddFormatToken(null, ['YYYYYY', 6, true], null, getYear);\n\nexport function daysInYear(year: number): number {\n return isLeapYear(year) ? 366 : 365;\n}\n\nexport function isLeapYear(year: number): boolean {\n return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/units/year.ts","export function zeroFill(\n num: number,\n targetLength: number,\n forceSign?: boolean\n): string {\n const absNumber = `${Math.abs(num)}`;\n const zerosToFill = targetLength - absNumber.length;\n const sign = num >= 0;\n return (\n (sign ? (forceSign ? '+' : '') : '-') +\n Math.pow(10, Math.max(0, zerosToFill))\n .toString()\n .substr(1) +\n absNumber\n );\n}\n\nexport function mod(n: number, x: number): number {\n return (n % x + x) % x;\n}\n\nexport function absFloor(number: number): number {\n return number < 0 ? Math.ceil(number) || 0 : Math.floor(number);\n}\n\nexport function createUTCDate(\n y?: number,\n m?: number,\n d?: number,\n h?: number,\n M?: number,\n s?: number,\n ms?: number\n) {\n const date = new Date(Date.UTC.apply(null, arguments));\n\n // the Date.UTC function remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0 && isFinite(date.getUTCFullYear())) {\n date.setUTCFullYear(y);\n }\n return date;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/bs-moment/utils.ts","import { UnitOfTime } from '../types';\nimport { endOf, startOf } from './start-end-of';\n\nexport function isAfter(\n date1: Date,\n date2: Date,\n units: UnitOfTime = 'milliseconds'\n): boolean {\n if (!date1 || !date2) {\n return false;\n }\n\n if (units === 'milliseconds') {\n return date1.valueOf() > date2.valueOf();\n }\n\n return date2.valueOf() < startOf(date1, units).valueOf();\n}\n\nexport function isBefore(\n date1: Date,\n date2: Date,\n units: UnitOfTime = 'milliseconds'\n): boolean {\n if (!date1 || !date2) {\n return false;\n }\n\n if (units === 'milliseconds') {\n return date1.valueOf() < date2.valueOf();\n }\n\n return endOf(date1, units).valueOf() < date2.valueOf();\n}\n\nexport function isBetween(\n date: Date,\n from: Date,\n to: Date,\n units: UnitOfTime,\n inclusivity = '()'\n): boolean {\n const leftBound =\n inclusivity[0] === '('\n ? isAfter(date, from, units)\n : !isBefore(date, from, units);\n const rightBound =\n inclusivity[1] === ')'\n ? isBefore(date, to, units)\n : !isAfter(date, to, units);\n\n return leftBound && rightBound;\n}\n\nexport function isSame(\n date1: Date,\n date2: Date,\n units: UnitOfTime = 'milliseconds'\n): boolean {\n if (!date1 || !date2) {\n return false;\n }\n\n if (units === 'milliseconds') {\n return date1.valueOf() === date2.valueOf();\n }\n\n const inputMs = date2.valueOf();\n\n return (\n startOf(date1, units).valueOf() <= inputMs &&\n inputMs <= endOf(date1, units).valueOf()\n );\n}\n\nexport function isSameOrAfter(\n date1: Date,\n date2: Date,\n units?: UnitOfTime\n): boolean {\n return isSame(date1, date2, units) || isAfter(date1, date2, units);\n}\n\nexport function isSameOrBefore(\n date1: Date,\n date2: Date,\n units?: UnitOfTime\n): boolean {\n return isSame(date1, date2, units) || isBefore(date1, date2, units);\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/utils/date-compare.ts","import { createDate } from './date-setters';\n\nexport function getHours(date: Date, isUTC = false): number {\n return isUTC ? date.getUTCHours() : date.getHours();\n}\n\nexport function getMinutes(date: Date, isUTC = false): number {\n return isUTC ? date.getUTCMinutes() : date.getMinutes();\n}\n\nexport function getSeconds(date: Date, isUTC = false): number {\n return isUTC ? date.getUTCSeconds() : date.getSeconds();\n}\n\nexport function getDayOfWeek(date: Date, isUTC = false): number {\n return isUTC ? date.getUTCDay() : date.getDay();\n}\n\nexport function getDate(date: Date, isUTC = false): number {\n return isUTC ? date.getUTCDate() : date.getDate();\n}\n\nexport function getMonth(date: Date, isUTC = false): number {\n return isUTC ? date.getUTCMonth() : date.getMonth();\n}\n\nexport function getFullYear(date: Date, isUTC = false): number {\n return isUTC ? date.getUTCFullYear() : date.getFullYear();\n}\n\nexport function getFirstDayOfMonth(date: Date): Date {\n return createDate(\n date.getFullYear(),\n date.getMonth(),\n 1,\n date.getHours(),\n date.getMinutes(),\n date.getSeconds()\n );\n}\n\nexport function daysInMonth(date: Date): number {\n return _daysInMonth(date.getFullYear(), date.getMonth());\n}\n\nexport function _daysInMonth(year: number, month: number): number {\n return new Date(Date.UTC(year, month + 1, 0)).getUTCDate();\n}\n\nexport function isFirstDayOfWeek(date: Date, firstDayOfWeek: number): boolean {\n return date.getDay() === firstDayOfWeek;\n}\n\nexport function isSameMonth(date1: Date, date2: Date) {\n if (!date1 || !date2) {\n return false;\n }\n\n return isSameYear(date1, date2) && getMonth(date1) === getMonth(date2);\n}\n\nexport function isSameYear(date1: Date, date2: Date) {\n if (!date1 || !date2) {\n return false;\n }\n\n return getFullYear(date1) === getFullYear(date2);\n}\n\nexport function isSameDay(date1: Date, date2: Date): boolean {\n if (!date1 || !date2) {\n return false;\n }\n\n return (\n isSameYear(date1, date2) &&\n isSameMonth(date1, date2) &&\n getDate(date1) === getDate(date2)\n );\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/utils/date-getters.ts","import { TimeUnit } from '../types';\n\nconst defaultTimeUnit: TimeUnit = {\n year: 0,\n month: 0,\n day: 0,\n hour: 0,\n minute: 0,\n seconds: 0\n};\n\nexport function createDate(\n year?: number,\n month = 0,\n day = 1,\n hour = 0,\n minute = 0,\n seconds = 0\n): Date {\n const _date = new Date();\n return new Date(\n year || _date.getFullYear(),\n month,\n day,\n hour,\n minute,\n seconds\n );\n}\n\nexport function shiftDate(date: Date, unit: TimeUnit): Date {\n const _unit = Object.assign({}, defaultTimeUnit, unit);\n\n return createDate(\n date.getFullYear() + _unit.year,\n date.getMonth() + _unit.month,\n date.getDate() + _unit.day,\n date.getHours() + _unit.hour,\n date.getMinutes() + _unit.minute,\n date.getSeconds() + _unit.seconds\n );\n}\n\nexport function setDate(date: Date, unit: TimeUnit): Date {\n return createDate(\n getNum(date.getFullYear(), unit.year),\n getNum(date.getMonth(), unit.month),\n getNum(date.getDate(), unit.day),\n getNum(date.getHours(), unit.hour),\n getNum(date.getMinutes(), unit.minute),\n getNum(date.getSeconds(), unit.seconds)\n );\n}\n\nfunction getNum(def: number, num: number): number {\n return typeof num === 'number' ? num : def;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/utils/date-setters.ts","import { TimeUnit, UnitOfTime } from '../types';\nimport { setDate, shiftDate } from './date-setters';\n\nexport function startOf(date: Date, units: UnitOfTime): Date {\n const unit = getDateShift(units);\n return setDate(date, unit);\n}\n\nexport function endOf(date: Date, units: UnitOfTime): Date {\n const start = startOf(date, units);\n const shift = { [units]: 1 };\n const change = shiftDate(start, shift);\n change.setMilliseconds(-1);\n\n return change;\n}\n\nfunction getDateShift(units: UnitOfTime): TimeUnit {\n const unit: TimeUnit = {};\n switch (units) {\n case 'year':\n unit.month = 0;\n /* falls through */\n case 'month':\n unit.day = 1;\n /* falls through */\n case 'week':\n case 'day':\n unit.hour = 0;\n /* falls through */\n case 'hour':\n unit.minute = 0;\n /* falls through */\n case 'minute':\n unit.seconds = 0;\n /* falls through */\n // case 'second':\n // this.milliseconds(0);\n }\n\n return unit;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/utils/start-end-of.ts","import { absFloor } from '../utils';\n\nexport function isDateValid(date: Date): boolean {\n return date && !isNaN(date.getTime());\n}\nexport function isFunction(fn: Function): fn is Function {\n return (\n fn instanceof Function ||\n Object.prototype.toString.call(fn) === '[object Function]'\n );\n}\n\nexport function isArray(input: any): boolean {\n return (\n input instanceof Array ||\n Object.prototype.toString.call(input) === '[object Array]'\n );\n}\n\nexport function hasOwnProp(a: any /*object*/, b: string | number): boolean {\n return Object.prototype.hasOwnProperty.call(a, b);\n}\n\nexport function isObject(input: any /*object*/): boolean {\n // IE8 will treat undefined and null as object if it wasn't for\n // input != null\n return (\n input != null && Object.prototype.toString.call(input) === '[object Object]'\n );\n}\n\nexport function isUndefined(input: any): boolean {\n return input === void 0;\n}\n\nexport function toInt(argumentForCoercion: string | number): number {\n const coercedNumber = +argumentForCoercion;\n let value = 0;\n\n if (coercedNumber !== 0 && isFinite(coercedNumber)) {\n value = absFloor(coercedNumber);\n }\n\n return value;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/bs-moment/utils/type-checks.ts","// tslint:disable:no-use-before-declare\nimport {\n Directive,\n HostBinding,\n HostListener,\n Input,\n OnInit,\n forwardRef\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n// TODO: config: activeClass - Class to apply to the checked buttons\n\nexport const CHECKBOX_CONTROL_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ButtonCheckboxDirective),\n multi: true\n};\n\n/**\n * Add checkbox functionality to any element\n */\n\nexport class ButtonCheckboxDirective implements ControlValueAccessor, OnInit {\n /** Truthy value, will be set to ngModel */\n btnCheckboxTrue: any = true;\n /** Falsy value, will be set to ngModel */\n btnCheckboxFalse: any = false;\n\n state = false;\n\n protected value: any;\n protected isDisabled: boolean;\n\n protected onChange: any = Function.prototype;\n protected onTouched: any = Function.prototype;\n\n // view -> model\n \n onClick(): void {\n if (this.isDisabled) {\n return;\n }\n\n this.toggle(!this.state);\n this.onChange(this.value);\n }\n\n ngOnInit(): any {\n this.toggle(this.trueValue === this.value);\n }\n\n protected get trueValue(): boolean {\n return typeof this.btnCheckboxTrue !== 'undefined'\n ? this.btnCheckboxTrue\n : true;\n }\n\n protected get falseValue(): boolean {\n return typeof this.btnCheckboxFalse !== 'undefined'\n ? this.btnCheckboxFalse\n : false;\n }\n\n toggle(state: boolean): void {\n this.state = state;\n this.value = this.state ? this.trueValue : this.falseValue;\n }\n\n // ControlValueAccessor\n // model -> view\n writeValue(value: any): void {\n this.state = this.trueValue === value;\n this.value = value ? this.trueValue : this.falseValue;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.isDisabled = isDisabled;\n }\n\n registerOnChange(fn: (_: any) => {}): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => {}): void {\n this.onTouched = fn;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[btnCheckbox]',\n providers: [CHECKBOX_CONTROL_VALUE_ACCESSOR]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'btnCheckboxTrue': [{ type: Input },],\n'btnCheckboxFalse': [{ type: Input },],\n'state': [{ type: HostBinding, args: ['class.active', ] },],\n'onClick': [{ type: HostListener, args: ['click', ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/buttons/button-checkbox.directive.ts","// tslint:disable:no-use-before-declare\nimport {\n ChangeDetectorRef, Directive, ElementRef, forwardRef, HostBinding,\n HostListener, Input, OnInit\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport const RADIO_CONTROL_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ButtonRadioDirective),\n multi: true\n};\n\n/**\n * Create radio buttons or groups of buttons.\n * A value of a selected button is bound to a variable specified via ngModel.\n */\n\nexport class ButtonRadioDirective implements ControlValueAccessor, OnInit {\n onChange: any = Function.prototype;\n onTouched: any = Function.prototype;\n\n /** Radio button value, will be set to `ngModel` */\n btnRadio: any;\n /** If `true` — radio button can be unchecked */\n uncheckable: boolean;\n /** Current value of radio component or group */\n value: any;\n\n \n get isActive(): boolean {\n return this.btnRadio === this.value;\n }\n\n constructor(private el: ElementRef, private cdr: ChangeDetectorRef) {\n }\n\n \n onClick(): void {\n if (this.el.nativeElement.attributes.disabled) {\n return;\n }\n\n if (this.uncheckable && this.btnRadio === this.value) {\n this.value = undefined;\n this.onTouched();\n this.onChange(this.value);\n\n return;\n }\n\n if (this.btnRadio !== this.value) {\n this.value = this.btnRadio;\n this.onTouched();\n this.onChange(this.value);\n }\n }\n\n ngOnInit(): void {\n this.uncheckable = typeof this.uncheckable !== 'undefined';\n }\n\n onBlur(): void {\n this.onTouched();\n }\n\n // ControlValueAccessor\n // model -> view\n writeValue(value: any): void {\n this.value = value;\n this.cdr.markForCheck();\n }\n\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[btnRadio]',\n providers: [RADIO_CONTROL_VALUE_ACCESSOR]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ElementRef, },\n{type: ChangeDetectorRef, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'btnRadio': [{ type: Input },],\n'uncheckable': [{ type: Input },],\n'value': [{ type: Input },],\n'isActive': [{ type: HostBinding, args: ['class.active', ] },],\n'onClick': [{ type: HostListener, args: ['click', ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/buttons/button-radio.directive.ts","import { NgModule, ModuleWithProviders } from '@angular/core';\n\nimport { ButtonCheckboxDirective } from './button-checkbox.directive';\nimport { ButtonRadioDirective } from './button-radio.directive';\n\n\nexport class ButtonsModule {\n static forRoot(): ModuleWithProviders {\n return { ngModule: ButtonsModule, providers: [] };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n declarations: [ButtonCheckboxDirective, ButtonRadioDirective],\n exports: [ButtonCheckboxDirective, ButtonRadioDirective]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/buttons/buttons.module.ts","export { ButtonCheckboxDirective } from './button-checkbox.directive';\nexport { ButtonRadioDirective } from './button-radio.directive';\nexport { ButtonsModule } from './buttons.module';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/buttons/index.ts","// tslint:disable:max-file-line-count\n/***\n * pause (not yet supported) (?string='hover') - event group name which pauses\n * the cycling of the carousel, if hover pauses on mouseenter and resumes on\n * mouseleave keyboard (not yet supported) (?boolean=true) - if false\n * carousel will not react to keyboard events\n * note: swiping not yet supported\n */\n/****\n * Problems:\n * 1) if we set an active slide via model changes, .active class remains on a\n * current slide.\n * 2) if we have only one slide, we shouldn't show prev/next nav buttons\n * 3) if first or last slide is active and noWrap is true, there should be\n * \"disabled\" class on the nav buttons.\n * 4) default interval should be equal 5000\n */\n\nimport {\n Component, EventEmitter, Input, NgZone, OnDestroy, Output\n} from '@angular/core';\n\nimport { isBs3, LinkedList } from '../utils';\nimport { SlideComponent } from './slide.component';\nimport { CarouselConfig } from './carousel.config';\n\nexport enum Direction {\n UNKNOWN,\n NEXT,\n PREV\n}\n\n/**\n * Base element to create carousel\n */\n\nexport class CarouselComponent implements OnDestroy {\n /** If `true` — carousel will not cycle continuously and will have hard stops (prevent looping) */\n noWrap: boolean;\n /** If `true` — will disable pausing on carousel mouse hover */\n noPause: boolean;\n\n /** Will be emitted when active slide has been changed. Part of two-way-bindable [(activeSlide)] property */\n \n activeSlideChange: EventEmitter = new EventEmitter(false);\n\n /** Index of currently displayed slide(started for 0) */\n \n set activeSlide(index: number) {\n if (this._slides.length && index !== this._currentActiveSlide) {\n this._select(index);\n }\n }\n\n get activeSlide(): number {\n return this._currentActiveSlide;\n }\n\n /**\n * Delay of item cycling in milliseconds. If false, carousel won't cycle\n * automatically.\n */\n \n get interval(): number {\n return this._interval;\n }\n\n set interval(value: number) {\n this._interval = value;\n this.restartTimer();\n }\n\n get slides(): SlideComponent[] {\n return this._slides.toArray();\n }\n\n protected _currentActiveSlide: number;\n protected _interval: number;\n protected _slides: LinkedList = new LinkedList();\n protected currentInterval: any;\n protected isPlaying: boolean;\n protected destroyed = false;\n\n get isBs4(): boolean {\n return !isBs3();\n }\n\n constructor(config: CarouselConfig, private ngZone: NgZone) {\n Object.assign(this, config);\n }\n\n ngOnDestroy(): void {\n this.destroyed = true;\n }\n\n /**\n * Adds new slide. If this slide is first in collection - set it as active\n * and starts auto changing\n * @param slide\n */\n addSlide(slide: SlideComponent): void {\n this._slides.add(slide);\n if (this._slides.length === 1) {\n this._currentActiveSlide = void 0;\n this.activeSlide = 0;\n this.play();\n }\n }\n\n /**\n * Removes specified slide. If this slide is active - will roll to another\n * slide\n * @param slide\n */\n removeSlide(slide: SlideComponent): void {\n const remIndex = this._slides.indexOf(slide);\n\n if (this._currentActiveSlide === remIndex) {\n // removing of active slide\n let nextSlideIndex: number = void 0;\n if (this._slides.length > 1) {\n // if this slide last - will roll to first slide, if noWrap flag is\n // FALSE or to previous, if noWrap is TRUE in case, if this slide in\n // middle of collection, index of next slide is same to removed\n nextSlideIndex = !this.isLast(remIndex)\n ? remIndex\n : this.noWrap ? remIndex - 1 : 0;\n }\n this._slides.remove(remIndex);\n\n // prevents exception with changing some value after checking\n setTimeout(() => {\n this._select(nextSlideIndex);\n }, 0);\n } else {\n this._slides.remove(remIndex);\n const currentSlideIndex = this.getCurrentSlideIndex();\n setTimeout(() => {\n // after removing, need to actualize index of current active slide\n this._currentActiveSlide = currentSlideIndex;\n this.activeSlideChange.emit(this._currentActiveSlide);\n }, 0);\n }\n }\n\n /**\n * Rolling to next slide\n * @param force: {boolean} if true - will ignore noWrap flag\n */\n nextSlide(force = false): void {\n this.activeSlide = this.findNextSlideIndex(Direction.NEXT, force);\n }\n\n /**\n * Rolling to previous slide\n * @param force: {boolean} if true - will ignore noWrap flag\n */\n previousSlide(force = false): void {\n this.activeSlide = this.findNextSlideIndex(Direction.PREV, force);\n }\n\n /**\n * Rolling to specified slide\n * @param index: {number} index of slide, which must be shown\n */\n selectSlide(index: number): void {\n this.activeSlide = index;\n }\n\n /**\n * Starts a auto changing of slides\n */\n play(): void {\n if (!this.isPlaying) {\n this.isPlaying = true;\n this.restartTimer();\n }\n }\n\n /**\n * Stops a auto changing of slides\n */\n pause(): void {\n if (!this.noPause) {\n this.isPlaying = false;\n this.resetTimer();\n }\n }\n\n /**\n * Finds and returns index of currently displayed slide\n * @returns {number}\n */\n getCurrentSlideIndex(): number {\n return this._slides.findIndex((slide: SlideComponent) => slide.active);\n }\n\n /**\n * Defines, whether the specified index is last in collection\n * @param index\n * @returns {boolean}\n */\n isLast(index: number): boolean {\n return index + 1 >= this._slides.length;\n }\n\n /**\n * Defines next slide index, depending of direction\n * @param direction: Direction(UNKNOWN|PREV|NEXT)\n * @param force: {boolean} if TRUE - will ignore noWrap flag, else will\n * return undefined if next slide require wrapping\n * @returns {any}\n */\n private findNextSlideIndex(direction: Direction, force: boolean): number {\n let nextSlideIndex = 0;\n\n if (\n !force &&\n (this.isLast(this.activeSlide) &&\n direction !== Direction.PREV &&\n this.noWrap)\n ) {\n return void 0;\n }\n\n switch (direction) {\n case Direction.NEXT:\n // if this is last slide, not force, looping is disabled\n // and need to going forward - select current slide, as a next\n nextSlideIndex = !this.isLast(this._currentActiveSlide)\n ? this._currentActiveSlide + 1\n : !force && this.noWrap ? this._currentActiveSlide : 0;\n break;\n case Direction.PREV:\n // if this is first slide, not force, looping is disabled\n // and need to going backward - select current slide, as a next\n nextSlideIndex =\n this._currentActiveSlide > 0\n ? this._currentActiveSlide - 1\n : !force && this.noWrap\n ? this._currentActiveSlide\n : this._slides.length - 1;\n break;\n default:\n throw new Error('Unknown direction');\n }\n\n return nextSlideIndex;\n }\n\n /**\n * Sets a slide, which specified through index, as active\n * @param index\n * @private\n */\n private _select(index: number): void {\n if (isNaN(index)) {\n this.pause();\n\n return;\n }\n const currentSlide = this._slides.get(this._currentActiveSlide);\n if (currentSlide) {\n currentSlide.active = false;\n }\n const nextSlide = this._slides.get(index);\n if (nextSlide) {\n this._currentActiveSlide = index;\n nextSlide.active = true;\n this.activeSlide = index;\n this.activeSlideChange.emit(index);\n }\n }\n\n /**\n * Starts loop of auto changing of slides\n */\n private restartTimer(): any {\n this.resetTimer();\n const interval = +this.interval;\n if (!isNaN(interval) && interval > 0) {\n this.currentInterval = this.ngZone.runOutsideAngular(() => {\n return setInterval(() => {\n const nInterval = +this.interval;\n this.ngZone.run(() => {\n if (\n this.isPlaying &&\n !isNaN(this.interval) &&\n nInterval > 0 &&\n this.slides.length\n ) {\n this.nextSlide();\n } else {\n this.pause();\n }\n });\n }, interval);\n });\n }\n }\n\n /**\n * Stops loop of auto changing of slides\n */\n private resetTimer(): void {\n if (this.currentInterval) {\n clearInterval(this.currentInterval);\n this.currentInterval = void 0;\n }\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'carousel',\n template: \" \"\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: CarouselConfig, },\n{type: NgZone, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'noWrap': [{ type: Input },],\n'noPause': [{ type: Input },],\n'activeSlideChange': [{ type: Output },],\n'activeSlide': [{ type: Input },],\n'interval': [{ type: Input },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/carousel/carousel.component.ts","import { Injectable } from '@angular/core';\n\n\nexport class CarouselConfig {\n /** Default interval of auto changing of slides */\n interval = 5000;\n\n /** Is loop of auto changing of slides can be paused */\n noPause = false;\n\n /** Is slides can wrap from the last to the first slide */\n noWrap = false;\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/carousel/carousel.config.ts","import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\n\nimport { CarouselComponent } from './carousel.component';\nimport { SlideComponent } from './slide.component';\nimport { CarouselConfig } from './carousel.config';\n\n\nexport class CarouselModule {\n static forRoot(): ModuleWithProviders {\n return { ngModule: CarouselModule, providers: [] };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n declarations: [SlideComponent, CarouselComponent],\n exports: [SlideComponent, CarouselComponent],\n providers: [CarouselConfig]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/carousel/carousel.module.ts","export { CarouselComponent } from './carousel.component';\nexport { CarouselModule } from './carousel.module';\nexport { SlideComponent } from './slide.component';\nexport { CarouselConfig } from './carousel.config';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/carousel/index.ts","import {\n Component,\n HostBinding,\n OnDestroy,\n Input,\n OnInit\n} from '@angular/core';\n\nimport { CarouselComponent } from './carousel.component';\n\n\nexport class SlideComponent implements OnInit, OnDestroy {\n /** Is current slide active */\n \n \n active: boolean;\n\n /** Wraps element by appropriate CSS classes */\n \n \n addClass = true;\n\n /** Link to Parent(container-collection) component */\n protected carousel: CarouselComponent;\n\n constructor(carousel: CarouselComponent) {\n this.carousel = carousel;\n }\n\n /** Fires changes in container collection after adding a new slide instance */\n ngOnInit(): void {\n this.carousel.addSlide(this);\n }\n\n /** Fires changes in container collection after removing of this slide instance */\n ngOnDestroy(): void {\n this.carousel.removeSlide(this);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'slide',\n template: `\n
\n \n
\n `\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: CarouselComponent, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'active': [{ type: HostBinding, args: ['class.active', ] },{ type: Input },],\n'addClass': [{ type: HostBinding, args: ['class.item', ] },{ type: HostBinding, args: ['class.carousel-item', ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/carousel/slide.component.ts","// todo: add animations when https://github.com/angular/angular/issues/9947 solved\nimport {\n Directive,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n Output,\n Renderer2\n} from '@angular/core';\n\n\nexport class CollapseDirective {\n /** This event fires as soon as content collapses */\n collapsed: EventEmitter = new EventEmitter();\n /** This event fires as soon as content becomes visible */\n expanded: EventEmitter = new EventEmitter();\n\n display: string;\n // shown\n \n \n \n isExpanded = true;\n // hidden\n isCollapsed = false;\n // stale state\n isCollapse = true;\n // animation state\n isCollapsing = false;\n\n /** A flag indicating visibility of content (shown or hidden) */\n \n set collapse(value: boolean) {\n this.isExpanded = value;\n this.toggle();\n }\n\n get collapse(): boolean {\n return this.isExpanded;\n }\n\n constructor(private _el: ElementRef, private _renderer: Renderer2) {\n }\n\n /** allows to manually toggle content visibility */\n toggle(): void {\n if (this.isExpanded) {\n this.hide();\n } else {\n this.show();\n }\n }\n\n /** allows to manually hide content */\n hide(): void {\n this.isCollapse = false;\n this.isCollapsing = true;\n\n this.isExpanded = false;\n this.isCollapsed = true;\n\n this.isCollapse = true;\n this.isCollapsing = false;\n\n this.display = 'none';\n this.collapsed.emit(this);\n }\n\n /** allows to manually show collapsed content */\n show(): void {\n this.isCollapse = false;\n this.isCollapsing = true;\n\n this.isExpanded = true;\n this.isCollapsed = false;\n\n this.display = 'block';\n // this.height = 'auto';\n this.isCollapse = true;\n this.isCollapsing = false;\n this._renderer.setStyle(\n this._el.nativeElement,\n 'overflow',\n 'visible'\n );\n this._renderer.setStyle(this._el.nativeElement, 'height', 'auto');\n this.expanded.emit(this);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[collapse]',\n exportAs: 'bs-collapse',\n host: {\n '[class.collapse]': 'true'\n }\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ElementRef, },\n{type: Renderer2, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'collapsed': [{ type: Output },],\n'expanded': [{ type: Output },],\n'display': [{ type: HostBinding, args: ['style.display', ] },],\n'isExpanded': [{ type: HostBinding, args: ['class.in', ] },{ type: HostBinding, args: ['class.show', ] },{ type: HostBinding, args: ['attr.aria-expanded', ] },],\n'isCollapsed': [{ type: HostBinding, args: ['attr.aria-hidden', ] },],\n'isCollapse': [{ type: HostBinding, args: ['class.collapse', ] },],\n'isCollapsing': [{ type: HostBinding, args: ['class.collapsing', ] },],\n'collapse': [{ type: Input },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/collapse/collapse.directive.ts","import { NgModule, ModuleWithProviders } from '@angular/core';\n\nimport { CollapseDirective } from './collapse.directive';\n\n\nexport class CollapseModule {\n static forRoot(): ModuleWithProviders {\n return { ngModule: CollapseModule, providers: [] };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n declarations: [CollapseDirective],\n exports: [CollapseDirective]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/collapse/collapse.module.ts","export { CollapseDirective } from './collapse.directive';\nexport { CollapseModule } from './collapse.module';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/collapse/index.ts","// tslint:disable:max-file-line-count\n// todo: add delay support\n// todo: merge events onShow, onShown, etc...\n// todo: add global positioning configuration?\nimport {\n ApplicationRef,\n ComponentFactory,\n ComponentFactoryResolver,\n ComponentRef,\n ElementRef,\n EmbeddedViewRef,\n EventEmitter,\n Injector,\n NgZone,\n Provider,\n ReflectiveInjector,\n Renderer2,\n TemplateRef,\n Type,\n ViewContainerRef\n} from '@angular/core';\nimport { PositioningOptions, PositioningService } from '../positioning';\nimport { listenToTriggersV2, registerOutsideClick } from '../utils/triggers';\nimport { ContentRef } from './content-ref.class';\nimport { ListenOptions } from './listen-options.model';\n\nexport class ComponentLoader {\n onBeforeShow: EventEmitter = new EventEmitter();\n onShown: EventEmitter = new EventEmitter();\n onBeforeHide: EventEmitter = new EventEmitter();\n onHidden: EventEmitter = new EventEmitter();\n\n instance: T;\n _componentRef: ComponentRef;\n _inlineViewRef: EmbeddedViewRef;\n\n private _providers: Provider[] = [];\n private _componentFactory: ComponentFactory;\n private _zoneSubscription: any;\n private _contentRef: ContentRef;\n private _innerComponent: ComponentRef;\n\n private _unregisterListenersFn: Function;\n\n get isShown(): boolean {\n if (this._isHiding) {\n return false;\n }\n\n return !!this._componentRef;\n }\n\n private _isHiding = false;\n\n /**\n * Placement of a component. Accepts: \"top\", \"bottom\", \"left\", \"right\"\n */\n private attachment: string;\n\n /**\n * A selector specifying the element the popover should be appended to.\n * Currently only supports \"body\".\n */\n private container: string | ElementRef | any;\n\n /**\n * Specifies events that should trigger. Supports a space separated list of\n * event names.\n */\n private triggers: string;\n\n private _listenOpts: ListenOptions = {};\n private _globalListener = Function.prototype;\n\n /**\n * Do not use this directly, it should be instanced via\n * `ComponentLoadFactory.attach`\n * @internal\n */\n // tslint:disable-next-line\n public constructor(\n private _viewContainerRef: ViewContainerRef,\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _injector: Injector,\n private _componentFactoryResolver: ComponentFactoryResolver,\n private _ngZone: NgZone,\n private _applicationRef: ApplicationRef,\n private _posService: PositioningService\n ) {}\n\n attach(compType: Type): ComponentLoader {\n this._componentFactory = this._componentFactoryResolver\n .resolveComponentFactory(compType);\n\n return this;\n }\n\n // todo: add behaviour: to target element, `body`, custom element\n to(container?: string): ComponentLoader {\n this.container = container || this.container;\n\n return this;\n }\n\n position(opts?: PositioningOptions): ComponentLoader {\n this.attachment = opts.attachment || this.attachment;\n this._elementRef = (opts.target as ElementRef) || this._elementRef;\n\n return this;\n }\n\n provide(provider: Provider): ComponentLoader {\n this._providers.push(provider);\n\n return this;\n }\n\n // todo: appendChild to element or document.querySelector(this.container)\n show(\n opts: {\n content?: string | TemplateRef;\n context?: any;\n [key: string]: any;\n } = {}\n ): ComponentRef {\n this._subscribePositioning();\n this._innerComponent = null;\n\n if (!this._componentRef) {\n this.onBeforeShow.emit();\n this._contentRef = this._getContentRef(opts.content, opts.context);\n const injector = ReflectiveInjector.resolveAndCreate(\n this._providers,\n this._injector\n );\n\n this._componentRef = this._componentFactory.create(\n injector,\n this._contentRef.nodes\n );\n this._applicationRef.attachView(this._componentRef.hostView);\n // this._componentRef = this._viewContainerRef\n // .createComponent(this._componentFactory, 0, injector, this._contentRef.nodes);\n this.instance = this._componentRef.instance;\n\n Object.assign(this._componentRef.instance, opts);\n\n if (this.container instanceof ElementRef) {\n this.container.nativeElement.appendChild(\n this._componentRef.location.nativeElement\n );\n }\n\n if (this.container === 'body' && typeof document !== 'undefined') {\n document\n .querySelector(this.container as string)\n .appendChild(this._componentRef.location.nativeElement);\n }\n\n if (\n !this.container &&\n this._elementRef &&\n this._elementRef.nativeElement.parentElement\n ) {\n this._elementRef.nativeElement.parentElement.appendChild(\n this._componentRef.location.nativeElement\n );\n }\n\n // we need to manually invoke change detection since events registered\n // via\n // Renderer::listen() are not picked up by change detection with the\n // OnPush strategy\n if (this._contentRef.componentRef) {\n this._innerComponent = this._contentRef.componentRef.instance;\n this._contentRef.componentRef.changeDetectorRef.markForCheck();\n this._contentRef.componentRef.changeDetectorRef.detectChanges();\n }\n this._componentRef.changeDetectorRef.markForCheck();\n this._componentRef.changeDetectorRef.detectChanges();\n this.onShown.emit(this._componentRef.instance);\n }\n\n this._registerOutsideClick();\n\n return this._componentRef;\n }\n\n hide(): ComponentLoader {\n if (!this._componentRef) {\n return this;\n }\n\n this.onBeforeHide.emit(this._componentRef.instance);\n\n const componentEl = this._componentRef.location.nativeElement;\n componentEl.parentNode.removeChild(componentEl);\n if (this._contentRef.componentRef) {\n this._contentRef.componentRef.destroy();\n }\n this._componentRef.destroy();\n if (this._viewContainerRef && this._contentRef.viewRef) {\n this._viewContainerRef.remove(\n this._viewContainerRef.indexOf(this._contentRef.viewRef)\n );\n }\n // this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._componentRef.hostView));\n //\n // if (this._contentRef.viewRef && this._viewContainerRef.indexOf(this._contentRef.viewRef) !== -1) {\n // this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._contentRef.viewRef));\n // }\n\n this._contentRef = null;\n this._componentRef = null;\n this._removeGlobalListener();\n\n this.onHidden.emit();\n\n return this;\n }\n\n toggle(): void {\n if (this.isShown) {\n this.hide();\n\n return;\n }\n\n this.show();\n }\n\n dispose(): void {\n if (this.isShown) {\n this.hide();\n }\n\n this._unsubscribePositioning();\n\n if (this._unregisterListenersFn) {\n this._unregisterListenersFn();\n }\n }\n\n listen(listenOpts: ListenOptions): ComponentLoader {\n this.triggers = listenOpts.triggers || this.triggers;\n this._listenOpts.outsideClick = listenOpts.outsideClick;\n listenOpts.target = listenOpts.target || this._elementRef.nativeElement;\n\n const hide = (this._listenOpts.hide = () =>\n listenOpts.hide ? listenOpts.hide() : void this.hide());\n const show = (this._listenOpts.show = (registerHide: Function) => {\n listenOpts.show ? listenOpts.show(registerHide) : this.show(registerHide);\n registerHide();\n });\n\n const toggle = (registerHide: Function) => {\n this.isShown ? hide() : show(registerHide);\n };\n\n this._unregisterListenersFn = listenToTriggersV2(this._renderer, {\n target: listenOpts.target,\n triggers: listenOpts.triggers,\n show,\n hide,\n toggle\n });\n\n return this;\n }\n\n _removeGlobalListener() {\n if (this._globalListener) {\n this._globalListener();\n this._globalListener = null;\n }\n }\n\n attachInline(\n vRef: ViewContainerRef,\n template: TemplateRef\n ): ComponentLoader {\n this._inlineViewRef = vRef.createEmbeddedView(template);\n\n return this;\n }\n\n _registerOutsideClick(): void {\n if (!this._componentRef || !this._componentRef.location) {\n return;\n }\n // why: should run after first event bubble\n if (this._listenOpts.outsideClick) {\n const target = this._componentRef.location.nativeElement;\n setTimeout(() => {\n this._globalListener = registerOutsideClick(this._renderer, {\n targets: [target, this._elementRef.nativeElement],\n outsideClick: this._listenOpts.outsideClick,\n hide: () => this._listenOpts.hide()\n });\n });\n }\n }\n\n getInnerComponent(): ComponentRef {\n return this._innerComponent;\n }\n\n private _subscribePositioning(): void {\n if (this._zoneSubscription || !this.attachment) {\n return;\n }\n\n this._zoneSubscription = this._ngZone.onStable.subscribe(() => {\n if (!this._componentRef) {\n return;\n }\n this._posService.position({\n element: this._componentRef.location,\n target: this._elementRef,\n attachment: this.attachment,\n appendToBody: this.container === 'body'\n });\n });\n }\n\n private _unsubscribePositioning(): void {\n if (!this._zoneSubscription) {\n return;\n }\n this._zoneSubscription.unsubscribe();\n this._zoneSubscription = null;\n }\n\n private _getContentRef(\n content: string | TemplateRef | any,\n context?: any\n ): ContentRef {\n if (!content) {\n return new ContentRef([]);\n }\n\n if (content instanceof TemplateRef) {\n if (this._viewContainerRef) {\n const _viewRef = this._viewContainerRef\n .createEmbeddedView>(content, context);\n _viewRef.markForCheck();\n\n return new ContentRef([_viewRef.rootNodes], _viewRef);\n }\n const viewRef = content.createEmbeddedView({});\n this._applicationRef.attachView(viewRef);\n\n return new ContentRef([viewRef.rootNodes], viewRef);\n }\n\n if (typeof content === 'function') {\n const contentCmptFactory = this._componentFactoryResolver.resolveComponentFactory(\n content\n );\n const modalContentInjector = ReflectiveInjector.resolveAndCreate(\n [...this._providers],\n this._injector\n );\n const componentRef = contentCmptFactory.create(modalContentInjector);\n this._applicationRef.attachView(componentRef.hostView);\n\n return new ContentRef(\n [[componentRef.location.nativeElement]],\n componentRef.hostView,\n componentRef\n );\n }\n\n return new ContentRef([[this._renderer.createText(`${content}`)]]);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/component-loader/component-loader.class.ts","import {\n ApplicationRef, ComponentFactoryResolver, ElementRef, Injectable, Injector,\n NgZone, Renderer2, ViewContainerRef\n} from '@angular/core';\nimport { ComponentLoader } from './component-loader.class';\nimport { PositioningService } from '../positioning';\n\n\nexport class ComponentLoaderFactory {\n constructor(private _componentFactoryResolver: ComponentFactoryResolver,\n private _ngZone: NgZone,\n private _injector: Injector,\n private _posService: PositioningService,\n private _applicationRef: ApplicationRef) {}\n\n /**\n *\n * @param _elementRef\n * @param _viewContainerRef\n * @param _renderer\n * @returns {ComponentLoader}\n */\n createLoader(_elementRef: ElementRef,\n _viewContainerRef: ViewContainerRef,\n _renderer: Renderer2): ComponentLoader {\n return new ComponentLoader(\n _viewContainerRef,\n _renderer,\n _elementRef,\n this._injector,\n this._componentFactoryResolver,\n this._ngZone,\n this._applicationRef,\n this._posService\n );\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ComponentFactoryResolver, },\n{type: NgZone, },\n{type: Injector, },\n{type: PositioningService, },\n{type: ApplicationRef, },\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/component-loader/component-loader.factory.ts","/**\n * @copyright Valor Software\n * @copyright Angular ng-bootstrap team\n */\n\nimport { ComponentRef, ViewRef } from '@angular/core';\n\nexport class ContentRef {\n nodes: any[];\n viewRef?: ViewRef;\n componentRef?: ComponentRef;\n\n constructor(\n nodes: any[],\n viewRef?: ViewRef,\n componentRef?: ComponentRef\n ) {\n this.nodes = nodes;\n this.viewRef = viewRef;\n this.componentRef = componentRef;\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/component-loader/content-ref.class.ts","export { ComponentLoader } from './component-loader.class';\nexport { ComponentLoaderFactory } from './component-loader.factory';\nexport { ContentRef } from './content-ref.class';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/component-loader/index.ts","// datepicker container component\n/* tslint:disable:no-empty */\nimport { BsCustomDates } from '../themes/bs/bs-custom-dates-view.component';\nimport { BsDatepickerEffects } from '../reducer/bs-datepicker.effects';\nimport { Observable } from 'rxjs/Observable';\nimport {\n BsDatepickerViewMode,\n BsNavigationEvent,\n CalendarCellViewModel,\n CellHoverEvent,\n DatepickerRenderOptions,\n DaysCalendarViewModel,\n DayViewModel,\n MonthsCalendarViewModel,\n YearsCalendarViewModel\n} from '../models/index';\n\nexport abstract class BsDatepickerAbstractComponent {\n containerClass: string;\n\n _effects: BsDatepickerEffects;\n _customRangesFish: BsCustomDates[] = [];\n\n set minDate(value: Date) {\n this._effects.setMinDate(value);\n }\n\n set maxDate(value: Date) {\n this._effects.setMaxDate(value);\n }\n\n set isDisabled(value: boolean) {\n this._effects.setDisabled(value);\n }\n\n viewMode: Observable;\n daysCalendar: Observable;\n monthsCalendar: Observable;\n yearsCalendar: Observable;\n options: Observable;\n\n setViewMode(event: BsDatepickerViewMode): void {}\n\n navigateTo(event: BsNavigationEvent): void {}\n\n dayHoverHandler(event: CellHoverEvent): void {}\n\n monthHoverHandler(event: CellHoverEvent): void {}\n\n yearHoverHandler(event: CellHoverEvent): void {}\n\n daySelectHandler(day: DayViewModel): void {}\n\n monthSelectHandler(event: CalendarCellViewModel): void {}\n\n yearSelectHandler(event: CalendarCellViewModel): void {}\n\n _stopPropagation(event: any): void {\n event.stopPropagation();\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/datepicker/base/bs-datepicker-container.ts","import {\n Directive, ElementRef, forwardRef, Host, OnInit, Renderer2\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { BsDatepickerComponent } from './bs-datepicker.component';\nimport { formatDate } from '../bs-moment/format';\nimport { getLocale } from '../bs-moment/locale/locales.service';\n\nconst BS_DATEPICKER_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n // tslint:disable-next-line\n useExisting: forwardRef(() => BsDatepickerInputDirective),\n multi: true\n};\n\n\nexport class BsDatepickerInputDirective\n implements OnInit, ControlValueAccessor {\n private _onChange = Function.prototype;\n private _onTouched = Function.prototype;\n\n constructor( private _picker: BsDatepickerComponent,\n private _renderer: Renderer2,\n private _elRef: ElementRef) {}\n\n ngOnInit(): void {\n this._picker.bsValueChange.subscribe((v: Date) => {\n const initialDate = formatDate(\n v,\n this._picker._config.dateInputFormat,\n this._picker._config.locale\n ) || '';\n this._renderer.setProperty(this._elRef.nativeElement, 'value', initialDate);\n this._onChange(v);\n });\n }\n\n onChange(event: any) {\n this.writeValue(event.target.value);\n this._onTouched();\n }\n\n writeValue(value: Date | string) {\n if (!value) {\n this._picker.bsValue = null;\n }\n const _locale = getLocale(this._picker._config.locale);\n if (!_locale) {\n throw new Error(\n `Locale \"${this._picker._config\n .locale}\" is not defined, please add it with \"defineLocale(...)\"`\n );\n }\n if (typeof value === 'string') {\n const date = new Date(_locale.preparse(value));\n this._picker.bsValue = isNaN(date.valueOf()) ? null : date;\n }\n\n if (value instanceof Date) {\n this._picker.bsValue = value;\n }\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._picker.isDisabled = isDisabled;\n this._renderer.setAttribute(this._elRef.nativeElement, 'disabled', 'disabled');\n }\n\n registerOnChange(fn: (value: any) => any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: () => any): void {\n this._onTouched = fn;\n }\n\n onBlur() {\n this._onTouched();\n }\n\n hide() {\n this._picker.hide();\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: `input[bsDatepicker]`,\n host: {\n '(change)': 'onChange($event)',\n '(keyup.esc)': 'hide()',\n '(blur)': 'onBlur()'\n },\n providers: [BS_DATEPICKER_VALUE_ACCESSOR]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: BsDatepickerComponent, decorators: [{ type: Host }, ]},\n{type: Renderer2, },\n{type: ElementRef, },\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/datepicker/bs-datepicker-input.directive.ts","import {\n Component, ComponentRef, ElementRef, EventEmitter, Input, OnChanges,\n OnDestroy, OnInit, Output, Renderer2, SimpleChanges, ViewContainerRef\n} from '@angular/core';\nimport { ComponentLoader } from '../component-loader/component-loader.class';\nimport { ComponentLoaderFactory } from '../component-loader/component-loader.factory';\nimport { BsDatepickerContainerComponent } from './themes/bs/bs-datepicker-container.component';\nimport { Subscription } from 'rxjs/Subscription';\nimport 'rxjs/add/operator/filter';\nimport { BsDatepickerConfig } from './bs-datepicker.config';\n\n\nexport class BsDatepickerComponent implements OnInit, OnDestroy, OnChanges {\n /**\n * Placement of a datepicker. Accepts: \"top\", \"bottom\", \"left\", \"right\"\n */\n placement: 'top' | 'bottom' | 'left' | 'right' = 'bottom';\n /**\n * Specifies events that should trigger. Supports a space separated list of\n * event names.\n */\n triggers = 'click';\n /**\n * Close datepicker on outside click\n */\n outsideClick = true;\n /**\n * A selector specifying the element the datepicker should be appended to.\n * Currently only supports \"body\".\n */\n container = 'body';\n\n /**\n * Returns whether or not the datepicker is currently being shown\n */\n \n get isOpen(): boolean {\n return this._datepicker.isShown;\n }\n\n set isOpen(value: boolean) {\n if (value) {\n this.show();\n } else {\n this.hide();\n }\n }\n\n /**\n * Emits an event when the datepicker is shown\n */\n onShown: EventEmitter;\n /**\n * Emits an event when the datepicker is hidden\n */\n onHidden: EventEmitter;\n\n _bsValue: Date;\n /**\n * Initial value of datepicker\n */\n \n set bsValue(value: Date) {\n if (this._bsValue === value) {\n return;\n }\n this._bsValue = value;\n this.bsValueChange.emit(value);\n }\n\n /**\n * Config object for datepicker\n */\n bsConfig: Partial;\n /**\n * Indicates whether datepicker is enabled or not\n */\n isDisabled: boolean;\n /**\n * Minimum date which is available for selection\n */\n minDate: Date;\n /**\n * Maximum date which is available for selection\n */\n maxDate: Date;\n /**\n * Emits when datepicker value has been changed\n */\n bsValueChange: EventEmitter = new EventEmitter();\n\n protected _subs: Subscription[] = [];\n\n private _datepicker: ComponentLoader;\n private _datepickerRef: ComponentRef;\n\n constructor(public _config: BsDatepickerConfig,\n _elementRef: ElementRef,\n _renderer: Renderer2,\n _viewContainerRef: ViewContainerRef,\n cis: ComponentLoaderFactory) {\n // todo: assign only subset of fields\n Object.assign(this, this._config);\n this._datepicker = cis.createLoader(\n _elementRef,\n _viewContainerRef,\n _renderer\n );\n this.onShown = this._datepicker.onShown;\n this.onHidden = this._datepicker.onHidden;\n }\n\n ngOnInit(): any {\n this._datepicker.listen({\n outsideClick: this.outsideClick,\n triggers: this.triggers,\n show: () => this.show()\n });\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (!this._datepickerRef || !this._datepickerRef.instance) {\n return;\n }\n\n if (changes.minDate) {\n this._datepickerRef.instance.minDate = this.minDate;\n }\n\n if (changes.maxDate) {\n this._datepickerRef.instance.maxDate = this.maxDate;\n }\n\n if (changes.isDisabled) {\n this._datepickerRef.instance.isDisabled = this.isDisabled;\n }\n }\n\n /**\n * Opens an element’s datepicker. This is considered a “manual” triggering of\n * the datepicker.\n */\n show(): void {\n if (this._datepicker.isShown) {\n return;\n }\n\n this._config = Object.assign({}, this._config, this.bsConfig, {\n value: this._bsValue,\n isDisabled: this.isDisabled,\n minDate: this.minDate || this._config.minDate,\n maxDate: this.maxDate || this._config.maxDate\n });\n\n this._datepickerRef = this._datepicker\n .provide({provide: BsDatepickerConfig, useValue: this._config})\n .attach(BsDatepickerContainerComponent)\n .to(this.container)\n .position({attachment: this.placement})\n .show({placement: this.placement});\n\n // if date changes from external source (model -> view)\n this._subs.push(\n this.bsValueChange.subscribe((value: Date) => {\n this._datepickerRef.instance.value = value;\n })\n );\n\n // if date changes from picker (view -> model)\n this._subs.push(\n this._datepickerRef.instance.valueChange.subscribe((value: Date) => {\n this.bsValue = value;\n this.hide();\n })\n );\n }\n\n /**\n * Closes an element’s datepicker. This is considered a “manual” triggering of\n * the datepicker.\n */\n hide(): void {\n if (this.isOpen) {\n this._datepicker.hide();\n }\n for (const sub of this._subs) {\n sub.unsubscribe();\n }\n }\n\n /**\n * Toggles an element’s datepicker. This is considered a “manual” triggering\n * of the datepicker.\n */\n toggle(): void {\n if (this.isOpen) {\n return this.hide();\n }\n\n this.show();\n }\n\n ngOnDestroy(): any {\n this._datepicker.dispose();\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bs-datepicker,[bsDatepicker]',\n exportAs: 'bsDatepicker',\n template: ''\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: BsDatepickerConfig, },\n{type: ElementRef, },\n{type: Renderer2, },\n{type: ViewContainerRef, },\n{type: ComponentLoaderFactory, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'placement': [{ type: Input },],\n'triggers': [{ type: Input },],\n'outsideClick': [{ type: Input },],\n'container': [{ type: Input },],\n'isOpen': [{ type: Input },],\n'onShown': [{ type: Output },],\n'onHidden': [{ type: Output },],\n'bsValue': [{ type: Input },],\n'bsConfig': [{ type: Input },],\n'isDisabled': [{ type: Input },],\n'minDate': [{ type: Input },],\n'maxDate': [{ type: Input },],\n'bsValueChange': [{ type: Output },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/datepicker/bs-datepicker.component.ts","import { Injectable } from '@angular/core';\nimport {\n DatepickerFormatOptions,\n DatepickerRenderOptions\n} from './models/index';\n\n\nexport class BsDatepickerConfig\n implements DatepickerRenderOptions, DatepickerFormatOptions {\n value?: Date | Date[];\n isDisabled?: boolean;\n /**\n * Default min date for all date/range pickers\n */\n minDate?: Date;\n /**\n * Default max date for all date/range pickers\n */\n maxDate?: Date;\n\n /** CSS class which will be applied to datepicker container,\n * usually used to set color theme\n */\n containerClass = 'theme-green';\n\n // DatepickerRenderOptions\n displayMonths = 1;\n /**\n * Allows to hide week numbers in datepicker\n */\n showWeekNumbers = true;\n\n dateInputFormat = 'L';\n // range picker\n rangeSeparator = ' - ';\n rangeInputFormat = 'L';\n\n // DatepickerFormatOptions\n /**\n * Allows to globally set default locale of datepicker,\n * see documentation on how to enable custom locales\n */\n locale = 'en';\n monthTitle = 'MMMM';\n yearTitle = 'YYYY';\n dayLabel = 'D';\n monthLabel = 'MMMM';\n yearLabel = 'YYYY';\n weekNumbers = 'w';\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/datepicker/bs-datepicker.config.ts","import { CommonModule } from '@angular/common';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\nimport { BsDatepickerActions } from './reducer/bs-datepicker.actions';\nimport { BsDatepickerStore } from './reducer/bs-datepicker.store';\nimport { BsDatepickerContainerComponent } from './themes/bs/bs-datepicker-container.component';\nimport { BsDatepickerNavigationViewComponent } from './themes/bs/bs-datepicker-navigation-view.component';\nimport { BsDaysCalendarViewComponent } from './themes/bs/bs-days-calendar-view.component';\nimport { BsDatepickerEffects } from './reducer/bs-datepicker.effects';\nimport { BsDaterangepickerContainerComponent } from './themes/bs/bs-daterangepicker-container.component';\nimport { BsDaterangepickerComponent } from './bs-daterangepicker.component';\nimport { BsDatepickerComponent } from './bs-datepicker.component';\nimport { ComponentLoaderFactory } from '../component-loader/component-loader.factory';\nimport { PositioningService } from '../positioning/positioning.service';\nimport { BsDatepickerDayDecoratorComponent } from './themes/bs/bs-datepicker-day-decorator.directive';\nimport { BsMonthCalendarViewComponent } from './themes/bs/bs-months-calendar-view.component';\nimport { BsYearsCalendarViewComponent } from './themes/bs/bs-years-calendar-view.component';\nimport { BsCustomDatesViewComponent } from './themes/bs/bs-custom-dates-view.component';\nimport { BsCurrentDateViewComponent } from './themes/bs/bs-current-date-view.component';\nimport { BsTimepickerViewComponent } from './themes/bs/bs-timepicker-view.component';\nimport { BsDatepickerConfig } from './bs-datepicker.config';\nimport { BsCalendarLayoutComponent } from './themes/bs/bs-calendar-layout.component';\nimport { BsDatepickerInputDirective } from './bs-datepicker-input.directive';\nimport { BsDaterangepickerInputDirective } from './bs-daterangepicker-input.directive';\n\nimport { warnOnce } from '../utils/warn-once';\n\nconst _exports = [\n BsDatepickerContainerComponent,\n BsDaterangepickerContainerComponent,\n\n BsDatepickerComponent,\n BsDatepickerInputDirective,\n\n BsDaterangepickerInputDirective,\n BsDaterangepickerComponent\n];\n\n\nexport class BsDatepickerModule {\n constructor() {\n warnOnce(`BsDatepickerModule is under development,\n BREAKING CHANGES are possible,\n PLEASE, read changelog`);\n }\n\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: BsDatepickerModule,\n providers: [\n ComponentLoaderFactory,\n PositioningService,\n BsDatepickerStore,\n BsDatepickerActions,\n BsDatepickerConfig,\n BsDatepickerEffects\n ]\n };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n declarations: [\n BsDatepickerDayDecoratorComponent,\n BsCurrentDateViewComponent,\n BsDatepickerNavigationViewComponent,\n BsTimepickerViewComponent,\n\n BsCalendarLayoutComponent,\n BsDaysCalendarViewComponent,\n BsMonthCalendarViewComponent,\n BsYearsCalendarViewComponent,\n\n BsCustomDatesViewComponent,\n\n ..._exports\n ],\n entryComponents: [\n BsDatepickerContainerComponent,\n BsDaterangepickerContainerComponent\n ],\n exports: _exports\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/datepicker/bs-datepicker.module.ts","import { Directive, ElementRef, forwardRef, Host, OnInit, Renderer2 } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { formatDate } from '../bs-moment/format';\nimport { getLocale } from '../bs-moment/locale/locales.service';\nimport { BsDaterangepickerComponent } from './bs-daterangepicker.component';\n\nconst BS_DATERANGEPICKER_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n // tslint:disable-next-line\n useExisting: forwardRef(() => BsDaterangepickerInputDirective),\n multi: true\n};\n\n\nexport class BsDaterangepickerInputDirective\n implements OnInit, ControlValueAccessor {\n private _onChange = Function.prototype;\n private _onTouched = Function.prototype;\n\n constructor( private _picker: BsDaterangepickerComponent,\n private _renderer: Renderer2,\n private _elRef: ElementRef) {}\n\n ngOnInit(): void {\n this._picker.bsValueChange.subscribe((v: Date[]) => {\n let range = '';\n if (v) {\n const start = formatDate(\n v[0],\n this._picker._config.rangeInputFormat,\n this._picker._config.locale\n ) || '';\n const end = formatDate(\n v[1],\n this._picker._config.rangeInputFormat,\n this._picker._config.locale\n ) || '';\n range = (start && end) ? start + this._picker._config.rangeSeparator + end : '';\n }\n this._renderer.setProperty(this._elRef.nativeElement, 'value', range);\n this._onChange(v);\n });\n }\n\n onChange(event: any) {\n this.writeValue(event.target.value);\n this._onTouched();\n }\n\n writeValue(value: Date[] | string) {\n if (!value) {\n this._picker.bsValue = null;\n return;\n }\n\n const _locale = getLocale(this._picker._config.locale);\n if (!_locale) {\n throw new Error(\n `Locale \"${this._picker._config\n .locale}\" is not defined, please add it with \"defineLocale(...)\"`\n );\n }\n if (typeof value === 'string') {\n this._picker.bsValue = value\n .split(this._picker._config.rangeSeparator)\n .map(date => new Date(_locale.preparse(date)))\n .map(date => (isNaN(date.valueOf()) ? null : date));\n }\n\n if (Array.isArray(value)) {\n this._picker.bsValue = value;\n }\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._picker.isDisabled = isDisabled;\n this._renderer.setAttribute(this._elRef.nativeElement, 'disabled', 'disabled');\n }\n\n registerOnChange(fn: (value: any) => any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: () => any): void {\n this._onTouched = fn;\n }\n\n onBlur() {\n this._onTouched();\n }\n\n hide() {\n this._picker.hide();\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: `input[bsDaterangepicker]`,\n host: {\n '(change)': 'onChange($event)',\n '(keyup.esc)': 'hide()',\n '(blur)': 'onBlur()'\n },\n providers: [BS_DATERANGEPICKER_VALUE_ACCESSOR]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: BsDaterangepickerComponent, decorators: [{ type: Host }, ]},\n{type: Renderer2, },\n{type: ElementRef, },\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/datepicker/bs-daterangepicker-input.directive.ts","import {\n Component, ComponentRef, ElementRef, EventEmitter, Input, OnChanges,\n OnDestroy, OnInit, Output, Renderer2, SimpleChanges, ViewContainerRef\n} from '@angular/core';\nimport { BsDaterangepickerContainerComponent } from './themes/bs/bs-daterangepicker-container.component';\nimport { Subscription } from 'rxjs/Subscription';\nimport { ComponentLoaderFactory } from '../component-loader/component-loader.factory';\nimport { ComponentLoader } from '../component-loader/component-loader.class';\nimport { BsDatepickerConfig } from './bs-datepicker.config';\n\n\nexport class BsDaterangepickerComponent\n implements OnInit, OnDestroy, OnChanges {\n /**\n * Placement of a daterangepicker. Accepts: \"top\", \"bottom\", \"left\", \"right\"\n */\n placement: 'top' | 'bottom' | 'left' | 'right' = 'bottom';\n /**\n * Specifies events that should trigger. Supports a space separated list of\n * event names.\n */\n triggers = 'click';\n /**\n * Close daterangepicker on outside click\n */\n outsideClick = true;\n /**\n * A selector specifying the element the daterangepicker should be appended\n * to. Currently only supports \"body\".\n */\n container = 'body';\n\n /**\n * Returns whether or not the daterangepicker is currently being shown\n */\n \n get isOpen(): boolean {\n return this._datepicker.isShown;\n }\n\n set isOpen(value: boolean) {\n if (value) {\n this.show();\n } else {\n this.hide();\n }\n }\n\n /**\n * Emits an event when the daterangepicker is shown\n */\n onShown: EventEmitter;\n /**\n * Emits an event when the daterangepicker is hidden\n */\n onHidden: EventEmitter;\n\n _bsValue: Date[];\n /**\n * Initial value of daterangepicker\n */\n \n set bsValue(value: Date[]) {\n if (this._bsValue === value) {\n return;\n }\n this._bsValue = value;\n this.bsValueChange.emit(value);\n }\n\n /**\n * Config object for daterangepicker\n */\n bsConfig: Partial;\n /**\n * Indicates whether daterangepicker is enabled or not\n */\n isDisabled: boolean;\n /**\n * Minimum date which is available for selection\n */\n minDate: Date;\n /**\n * Maximum date which is available for selection\n */\n maxDate: Date;\n /**\n * Emits when daterangepicker value has been changed\n */\n bsValueChange: EventEmitter = new EventEmitter();\n\n protected _subs: Subscription[] = [];\n\n private _datepicker: ComponentLoader;\n private _datepickerRef: ComponentRef;\n\n constructor(public _config: BsDatepickerConfig,\n _elementRef: ElementRef,\n _renderer: Renderer2,\n _viewContainerRef: ViewContainerRef,\n cis: ComponentLoaderFactory) {\n this._datepicker = cis.createLoader(\n _elementRef,\n _viewContainerRef,\n _renderer\n );\n Object.assign(this, _config);\n this.onShown = this._datepicker.onShown;\n this.onHidden = this._datepicker.onHidden;\n }\n\n ngOnInit(): any {\n this._datepicker.listen({\n outsideClick: this.outsideClick,\n triggers: this.triggers,\n show: () => this.show()\n });\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (!this._datepickerRef || !this._datepickerRef.instance) {\n return;\n }\n\n if (changes.minDate) {\n this._datepickerRef.instance.minDate = this.minDate;\n }\n\n if (changes.maxDate) {\n this._datepickerRef.instance.maxDate = this.maxDate;\n }\n\n if (changes.isDisabled) {\n this._datepickerRef.instance.isDisabled = this.isDisabled;\n }\n }\n\n /**\n * Opens an element’s datepicker. This is considered a “manual” triggering of\n * the datepicker.\n */\n show(): void {\n if (this._datepicker.isShown) {\n return;\n }\n\n this._config = Object.assign(\n {},\n this._config,\n {displayMonths: 2},\n this.bsConfig,\n {\n value: this._bsValue,\n isDisabled: this.isDisabled,\n minDate: this.minDate || this._config.minDate,\n maxDate: this.maxDate || this._config.maxDate\n }\n );\n\n this._datepickerRef = this._datepicker\n .provide({provide: BsDatepickerConfig, useValue: this._config})\n .attach(BsDaterangepickerContainerComponent)\n .to(this.container)\n .position({attachment: this.placement})\n .show({placement: this.placement});\n\n // if date changes from external source (model -> view)\n this._subs.push(\n this.bsValueChange.subscribe((value: Date[]) => {\n this._datepickerRef.instance.value = value;\n })\n );\n\n // if date changes from picker (view -> model)\n this._subs.push(\n this._datepickerRef.instance.valueChange\n .filter((range: Date[]) => range && range[0] && !!range[1])\n .subscribe((value: Date[]) => {\n this.bsValue = value;\n this.hide();\n })\n );\n }\n\n /**\n * Closes an element’s datepicker. This is considered a “manual” triggering of\n * the datepicker.\n */\n hide(): void {\n if (this.isOpen) {\n this._datepicker.hide();\n }\n for (const sub of this._subs) {\n sub.unsubscribe();\n }\n }\n\n /**\n * Toggles an element’s datepicker. This is considered a “manual” triggering\n * of the datepicker.\n */\n toggle(): void {\n if (this.isOpen) {\n return this.hide();\n }\n\n this.show();\n }\n\n ngOnDestroy(): any {\n this._datepicker.dispose();\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bs-daterangepicker,[bsDaterangepicker]',\n exportAs: 'bsDaterangepicker',\n template: ' '\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: BsDatepickerConfig, },\n{type: ElementRef, },\n{type: Renderer2, },\n{type: ViewContainerRef, },\n{type: ComponentLoaderFactory, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'placement': [{ type: Input },],\n'triggers': [{ type: Input },],\n'outsideClick': [{ type: Input },],\n'container': [{ type: Input },],\n'isOpen': [{ type: Input },],\n'onShown': [{ type: Output },],\n'onHidden': [{ type: Output },],\n'bsValue': [{ type: Input },],\n'bsConfig': [{ type: Input },],\n'isDisabled': [{ type: Input },],\n'minDate': [{ type: Input },],\n'maxDate': [{ type: Input },],\n'bsValueChange': [{ type: Output },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/datepicker/bs-daterangepicker.component.ts","import { formatDate } from '../bs-moment/format';\n\nexport class DateFormatter {\n format(date: Date, format: string, locale: string): string {\n return formatDate(date, format, locale);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/datepicker/date-formatter.ts","/* tslint:disable:max-file-line-count */\nimport {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges\n} from '@angular/core';\n\nimport { DateFormatter } from './date-formatter';\n\n// const MIN_DATE:Date = void 0;\n// const MAX_DATE:Date = void 0;\n// const DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\n\n/*\n const KEYS = {\n 13: 'enter',\n 32: 'space',\n 33: 'pageup',\n 34: 'pagedown',\n 35: 'end',\n 36: 'home',\n 37: 'left',\n 38: 'up',\n 39: 'right',\n 40: 'down'\n };\n */\n\n\nexport class DatePickerInnerComponent implements OnInit, OnChanges {\n locale: string;\n datepickerMode: string;\n startingDay: number;\n yearRange: number;\n\n minDate: Date;\n maxDate: Date;\n minMode: string;\n maxMode: string;\n showWeeks: boolean;\n formatDay: string;\n formatMonth: string;\n formatYear: string;\n formatDayHeader: string;\n formatDayTitle: string;\n formatMonthTitle: string;\n onlyCurrentMonth: boolean;\n shortcutPropagation: boolean;\n customClass: { date: Date; mode: string; clazz: string }[];\n monthColLimit: number;\n yearColLimit: number;\n dateDisabled: { date: Date; mode: string }[];\n initDate: Date;\n\n \n selectionDone: EventEmitter = new EventEmitter(undefined);\n\n update: EventEmitter = new EventEmitter(false);\n\n \n activeDateChange: EventEmitter = new EventEmitter(\n undefined\n );\n\n stepDay: any = {};\n stepMonth: any = {};\n stepYear: any = {};\n\n protected modes: string[] = ['day', 'month', 'year'];\n protected dateFormatter: DateFormatter = new DateFormatter();\n protected uniqueId: string;\n protected _activeDate: Date;\n protected selectedDate: Date;\n protected activeDateId: string;\n\n protected refreshViewHandlerDay: Function;\n protected compareHandlerDay: Function;\n protected refreshViewHandlerMonth: Function;\n protected compareHandlerMonth: Function;\n protected refreshViewHandlerYear: Function;\n protected compareHandlerYear: Function;\n\n \n get activeDate(): Date {\n return this._activeDate;\n }\n\n set activeDate(value: Date) {\n this._activeDate = value;\n }\n\n // todo: add formatter value to Date object\n ngOnInit(): void {\n // todo: use date for unique value\n this.uniqueId = `datepicker--${Math.floor(Math.random() * 10000)}`;\n\n if (this.initDate) {\n this.activeDate = this.initDate;\n this.selectedDate = new Date(this.activeDate.valueOf());\n this.update.emit(this.activeDate);\n } else if (this.activeDate === undefined) {\n this.activeDate = new Date();\n }\n }\n\n // this.refreshView should be called here to reflect the changes on the fly\n // tslint:disable-next-line:no-unused-variable\n ngOnChanges(changes: SimpleChanges): void {\n this.refreshView();\n this.checkIfActiveDateGotUpdated(changes.activeDate);\n }\n\n // Check if activeDate has been update and then emit the activeDateChange with the new date\n checkIfActiveDateGotUpdated(activeDate: any): void {\n if (activeDate && !activeDate.firstChange) {\n const previousValue = activeDate.previousValue;\n if (\n previousValue &&\n previousValue instanceof Date &&\n previousValue.getTime() !== activeDate.currentValue.getTime()\n ) {\n this.activeDateChange.emit(this.activeDate);\n }\n }\n }\n\n setCompareHandler(handler: Function, type: string): void {\n if (type === 'day') {\n this.compareHandlerDay = handler;\n }\n\n if (type === 'month') {\n this.compareHandlerMonth = handler;\n }\n\n if (type === 'year') {\n this.compareHandlerYear = handler;\n }\n }\n\n compare(date1: Date, date2: Date): number | undefined {\n if (date1 === undefined || date2 === undefined) {\n return undefined;\n }\n\n if (this.datepickerMode === 'day' && this.compareHandlerDay) {\n return this.compareHandlerDay(date1, date2);\n }\n\n if (this.datepickerMode === 'month' && this.compareHandlerMonth) {\n return this.compareHandlerMonth(date1, date2);\n }\n\n if (this.datepickerMode === 'year' && this.compareHandlerYear) {\n return this.compareHandlerYear(date1, date2);\n }\n\n return void 0;\n }\n\n setRefreshViewHandler(handler: Function, type: string): void {\n if (type === 'day') {\n this.refreshViewHandlerDay = handler;\n }\n\n if (type === 'month') {\n this.refreshViewHandlerMonth = handler;\n }\n\n if (type === 'year') {\n this.refreshViewHandlerYear = handler;\n }\n }\n\n refreshView(): void {\n if (this.datepickerMode === 'day' && this.refreshViewHandlerDay) {\n this.refreshViewHandlerDay();\n }\n\n if (this.datepickerMode === 'month' && this.refreshViewHandlerMonth) {\n this.refreshViewHandlerMonth();\n }\n\n if (this.datepickerMode === 'year' && this.refreshViewHandlerYear) {\n this.refreshViewHandlerYear();\n }\n }\n\n dateFilter(date: Date, format: string): string {\n return this.dateFormatter.format(date, format, this.locale);\n }\n\n isActive(dateObject: any): boolean {\n if (this.compare(dateObject.date, this.activeDate) === 0) {\n this.activeDateId = dateObject.uid;\n\n return true;\n }\n\n return false;\n }\n\n createDateObject(date: Date, format: string): any {\n const dateObject: any = {};\n dateObject.date = new Date(\n date.getFullYear(),\n date.getMonth(),\n date.getDate()\n );\n dateObject.label = this.dateFilter(date, format);\n dateObject.selected = this.compare(date, this.selectedDate) === 0;\n dateObject.disabled = this.isDisabled(date);\n dateObject.current = this.compare(date, new Date()) === 0;\n dateObject.customClass = this.getCustomClassForDate(dateObject.date);\n\n return dateObject;\n }\n\n split(arr: any[], size: number): any[] {\n const arrays: any[] = [];\n while (arr.length > 0) {\n arrays.push(arr.splice(0, size));\n }\n\n return arrays;\n }\n\n // Fix a hard-reproducible bug with timezones\n // The bug depends on OS, browser, current timezone and current date\n // i.e.\n // var date = new Date(2014, 0, 1);\n // console.log(date.getFullYear(), date.getMonth(), date.getDate(),\n // date.getHours()); can result in \"2013 11 31 23\" because of the bug.\n fixTimeZone(date: Date): Date {\n const hours = date.getHours();\n\n return new Date(\n date.getFullYear(),\n date.getMonth(),\n date.getDate(),\n hours === 23 ? hours + 2 : 0\n );\n }\n\n select(date: Date, isManual = true): void {\n if (this.datepickerMode === this.minMode) {\n if (!this.activeDate) {\n this.activeDate = new Date(0, 0, 0, 0, 0, 0, 0);\n }\n\n this.activeDate = new Date(\n date.getFullYear(),\n date.getMonth(),\n date.getDate()\n );\n if (isManual) {\n this.selectionDone.emit(this.activeDate);\n }\n } else {\n this.activeDate = new Date(\n date.getFullYear(),\n date.getMonth(),\n date.getDate()\n );\n if (isManual) {\n this.datepickerMode = this.modes[\n this.modes.indexOf(this.datepickerMode) - 1\n ];\n }\n }\n\n this.selectedDate = new Date(this.activeDate.valueOf());\n this.update.emit(this.activeDate);\n this.refreshView();\n }\n\n move(direction: number): void {\n let expectedStep: any;\n if (this.datepickerMode === 'day') {\n expectedStep = this.stepDay;\n }\n\n if (this.datepickerMode === 'month') {\n expectedStep = this.stepMonth;\n }\n\n if (this.datepickerMode === 'year') {\n expectedStep = this.stepYear;\n }\n\n if (expectedStep) {\n const year =\n this.activeDate.getFullYear() + direction * (expectedStep.years || 0);\n const month =\n this.activeDate.getMonth() + direction * (expectedStep.months || 0);\n this.activeDate = new Date(year, month, 1);\n\n this.refreshView();\n this.activeDateChange.emit(this.activeDate);\n }\n }\n\n toggleMode(_direction: number): void {\n const direction = _direction || 1;\n\n if (\n (this.datepickerMode === this.maxMode && direction === 1) ||\n (this.datepickerMode === this.minMode && direction === -1)\n ) {\n return;\n }\n\n this.datepickerMode = this.modes[\n this.modes.indexOf(this.datepickerMode) + direction\n ];\n this.refreshView();\n }\n\n protected getCustomClassForDate(date: Date): string {\n if (!this.customClass) {\n return '';\n }\n // todo: build a hash of custom classes, it will work faster\n const customClassObject: {\n date: Date;\n mode: string;\n clazz: string;\n } = this.customClass.find((customClass: any) => {\n return (\n customClass.date.valueOf() === date.valueOf() &&\n customClass.mode === this.datepickerMode\n );\n }, this);\n\n return customClassObject === undefined ? '' : customClassObject.clazz;\n }\n\n protected compareDateDisabled(\n date1Disabled: { date: Date; mode: string },\n date2: Date\n ): number {\n if (date1Disabled === undefined || date2 === undefined) {\n return undefined;\n }\n\n if (date1Disabled.mode === 'day' && this.compareHandlerDay) {\n return this.compareHandlerDay(date1Disabled.date, date2);\n }\n\n if (date1Disabled.mode === 'month' && this.compareHandlerMonth) {\n return this.compareHandlerMonth(date1Disabled.date, date2);\n }\n\n if (date1Disabled.mode === 'year' && this.compareHandlerYear) {\n return this.compareHandlerYear(date1Disabled.date, date2);\n }\n\n return undefined;\n }\n\n protected isDisabled(date: Date): boolean {\n let isDateDisabled = false;\n if (this.dateDisabled) {\n this.dateDisabled.forEach(\n (disabledDate: { date: Date; mode: string }) => {\n if (this.compareDateDisabled(disabledDate, date) === 0) {\n isDateDisabled = true;\n }\n }\n );\n }\n\n return (\n isDateDisabled ||\n (this.minDate && this.compare(date, this.minDate) < 0) ||\n (this.maxDate && this.compare(date, this.maxDate) > 0)\n );\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'datepicker-inner',\n template: `\n \n
\n \n
\n `\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'locale': [{ type: Input },],\n'datepickerMode': [{ type: Input },],\n'startingDay': [{ type: Input },],\n'yearRange': [{ type: Input },],\n'minDate': [{ type: Input },],\n'maxDate': [{ type: Input },],\n'minMode': [{ type: Input },],\n'maxMode': [{ type: Input },],\n'showWeeks': [{ type: Input },],\n'formatDay': [{ type: Input },],\n'formatMonth': [{ type: Input },],\n'formatYear': [{ type: Input },],\n'formatDayHeader': [{ type: Input },],\n'formatDayTitle': [{ type: Input },],\n'formatMonthTitle': [{ type: Input },],\n'onlyCurrentMonth': [{ type: Input },],\n'shortcutPropagation': [{ type: Input },],\n'customClass': [{ type: Input },],\n'monthColLimit': [{ type: Input },],\n'yearColLimit': [{ type: Input },],\n'dateDisabled': [{ type: Input },],\n'initDate': [{ type: Input },],\n'selectionDone': [{ type: Output },],\n'update': [{ type: Output },],\n'activeDateChange': [{ type: Output },],\n'activeDate': [{ type: Input },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/datepicker/datepicker-inner.component.ts","import {\n Component,\n EventEmitter,\n Input,\n Output,\n ViewChild,\n forwardRef\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { DatePickerInnerComponent } from './datepicker-inner.component';\nimport { DatepickerConfig } from './datepicker.config';\n\nexport const DATEPICKER_CONTROL_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n // tslint:disable-next-line\n useExisting: forwardRef(() => DatePickerComponent),\n multi: true\n};\n\n/* tslint:disable:component-selector-name component-selector-type */\n\n/* tslint:enable:component-selector-name component-selector-type */\nexport class DatePickerComponent implements ControlValueAccessor {\n /** sets datepicker mode, supports: `day`, `month`, `year` */\n datepickerMode = 'day';\n /** default date to show if `ng-model` value is not specified */\n initDate: Date;\n /** oldest selectable date */\n minDate: Date;\n /** latest selectable date */\n maxDate: Date;\n /** set lower datepicker mode, supports: `day`, `month`, `year` */\n minMode: string;\n /** sets upper datepicker mode, supports: `day`, `month`, `year` */\n maxMode: string;\n /** if false week numbers will be hidden */\n showWeeks = true;\n /** format of day in month */\n formatDay: string;\n /** format of month in year */\n formatMonth: string;\n /** format of year in year range */\n formatYear: string;\n /** format of day in week header */\n formatDayHeader: string;\n /** format of title when selecting day */\n formatDayTitle: string;\n /** format of title when selecting month */\n formatMonthTitle: string;\n /** starting day of the week from 0-6 (0=Sunday, ..., 6=Saturday) */\n startingDay: number;\n /** number of years displayed in year selection */\n yearRange: number;\n /** if true only dates from the currently displayed month will be shown */\n onlyCurrentMonth: boolean;\n /** if true shortcut`s event propagation will be disabled */\n shortcutPropagation: boolean;\n /** number of months displayed in a single row of month picker */\n monthColLimit: number;\n /** number of years displayed in a single row of year picker */\n yearColLimit: number;\n /** array of custom css classes to be applied to targeted dates */\n customClass: { date: Date; mode: string; clazz: string }[];\n /** array of disabled dates */\n dateDisabled: { date: Date; mode: string }[];\n\n /** currently active date */\n \n get activeDate(): Date {\n return this._activeDate || this._now;\n }\n\n set activeDate(value: Date) {\n this._activeDate = value;\n }\n\n \n selectionDone: EventEmitter = new EventEmitter(undefined);\n\n /** callback to invoke when the activeDate is changed. */\n \n activeDateChange: EventEmitter = new EventEmitter(\n undefined\n );\n\n \n _datePicker: DatePickerInnerComponent;\n\n onChange: any = Function.prototype;\n onTouched: any = Function.prototype;\n\n config: DatepickerConfig;\n\n protected _now: Date = new Date();\n protected _activeDate: Date;\n\n constructor(config: DatepickerConfig) {\n this.config = config;\n this.configureOptions();\n }\n\n configureOptions(): void {\n Object.assign(this, this.config);\n }\n\n onUpdate(event: any): void {\n this.activeDate = event;\n this.onChange(event);\n }\n\n onSelectionDone(event: Date): void {\n this.selectionDone.emit(event);\n }\n\n onActiveDateChange(event: Date): void {\n this.activeDateChange.emit(event);\n }\n // todo: support null value\n writeValue(value: any): void {\n if (this._datePicker.compare(value, this._activeDate) === 0) {\n return;\n }\n if (value && value instanceof Date) {\n this.activeDate = value;\n this._datePicker.select(value, false);\n\n return;\n }\n\n this.activeDate = value ? new Date(value) : void 0;\n }\n\n registerOnChange(fn: (_: any) => {}): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => {}): void {\n this.onTouched = fn;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'datepicker',\n template: `\n \n \n \n \n \n `,\n providers: [DATEPICKER_CONTROL_VALUE_ACCESSOR]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: DatepickerConfig, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'datepickerMode': [{ type: Input },],\n'initDate': [{ type: Input },],\n'minDate': [{ type: Input },],\n'maxDate': [{ type: Input },],\n'minMode': [{ type: Input },],\n'maxMode': [{ type: Input },],\n'showWeeks': [{ type: Input },],\n'formatDay': [{ type: Input },],\n'formatMonth': [{ type: Input },],\n'formatYear': [{ type: Input },],\n'formatDayHeader': [{ type: Input },],\n'formatDayTitle': [{ type: Input },],\n'formatMonthTitle': [{ type: Input },],\n'startingDay': [{ type: Input },],\n'yearRange': [{ type: Input },],\n'onlyCurrentMonth': [{ type: Input },],\n'shortcutPropagation': [{ type: Input },],\n'monthColLimit': [{ type: Input },],\n'yearColLimit': [{ type: Input },],\n'customClass': [{ type: Input },],\n'dateDisabled': [{ type: Input },],\n'activeDate': [{ type: Input },],\n'selectionDone': [{ type: Output },],\n'activeDateChange': [{ type: Output },],\n'_datePicker': [{ type: ViewChild, args: [DatePickerInnerComponent, ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/datepicker/datepicker.component.ts","import { Injectable } from '@angular/core';\n\n\nexport class DatepickerConfig {\n locale = 'en';\n datepickerMode = 'day';\n startingDay = 0;\n yearRange = 20;\n minMode = 'day';\n maxMode = 'year';\n showWeeks = true;\n formatDay = 'DD';\n formatMonth = 'MMMM';\n formatYear = 'YYYY';\n formatDayHeader = 'dd';\n formatDayTitle = 'MMMM YYYY';\n formatMonthTitle = 'YYYY';\n onlyCurrentMonth = false;\n monthColLimit = 3;\n yearColLimit = 5;\n shortcutPropagation = false;\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/datepicker/datepicker.config.ts","import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { DatePickerInnerComponent } from './datepicker-inner.component';\nimport { DatePickerComponent } from './datepicker.component';\nimport { DayPickerComponent } from './daypicker.component';\nimport { MonthPickerComponent } from './monthpicker.component';\nimport { YearPickerComponent } from './yearpicker.component';\nimport { DatepickerConfig } from './datepicker.config';\n\n\nexport class DatepickerModule {\n static forRoot(): ModuleWithProviders {\n return { ngModule: DatepickerModule, providers: [DatepickerConfig] };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule, FormsModule],\n declarations: [\n DatePickerComponent,\n DatePickerInnerComponent,\n DayPickerComponent,\n MonthPickerComponent,\n YearPickerComponent\n ],\n exports: [\n DatePickerComponent,\n DatePickerInnerComponent,\n DayPickerComponent,\n MonthPickerComponent,\n YearPickerComponent\n ],\n entryComponents: [DatePickerComponent]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/datepicker/datepicker.module.ts","// @deprecated\n// tslint:disable\nimport { Component, OnInit } from '@angular/core';\nimport { isBs3 } from '../utils/theme-provider';\nimport { DatePickerInnerComponent } from './datepicker-inner.component';\n\n\nexport class DayPickerComponent implements OnInit {\n labels: any[] = [];\n title: string;\n rows: any[] = [];\n weekNumbers: number[] = [];\n datePicker: DatePickerInnerComponent;\n\n constructor(datePicker: DatePickerInnerComponent) {\n this.datePicker = datePicker;\n }\n\n get isBs4(): boolean {\n return !isBs3();\n }\n\n /*protected getDaysInMonth(year:number, month:number) {\n return ((month === 1) && (year % 4 === 0) &&\n ((year % 100 !== 0) || (year % 400 === 0))) ? 29 : DAYS_IN_MONTH[month];\n }*/\n ngOnInit(): void {\n const self = this;\n\n this.datePicker.stepDay = { months: 1 };\n\n this.datePicker.setRefreshViewHandler(function(): void {\n const year = this.activeDate.getFullYear();\n const month = this.activeDate.getMonth();\n const firstDayOfMonth = new Date(year, month, 1);\n const difference = this.startingDay - firstDayOfMonth.getDay();\n const numDisplayedFromPreviousMonth =\n difference > 0 ? 7 - difference : -difference;\n const firstDate = new Date(firstDayOfMonth.getTime());\n\n if (numDisplayedFromPreviousMonth > 0) {\n firstDate.setDate(-numDisplayedFromPreviousMonth + 1);\n }\n\n // 42 is the number of days on a six-week calendar\n const _days: Date[] = self.getDates(firstDate, 42);\n const days: any[] = [];\n for (let i = 0; i < 42; i++) {\n const _dateObject = this.createDateObject(_days[i], this.formatDay);\n _dateObject.secondary = _days[i].getMonth() !== month;\n _dateObject.uid = this.uniqueId + '-' + i;\n days[i] = _dateObject;\n }\n\n self.labels = [];\n for (let j = 0; j < 7; j++) {\n self.labels[j] = {};\n self.labels[j].abbr = this.dateFilter(\n days[j].date,\n this.formatDayHeader\n );\n self.labels[j].full = this.dateFilter(days[j].date, 'EEEE');\n }\n\n self.title = this.dateFilter(this.activeDate, this.formatDayTitle);\n self.rows = this.split(days, 7);\n\n if (this.showWeeks) {\n self.weekNumbers = [];\n const thursdayIndex = (4 + 7 - this.startingDay) % 7;\n const numWeeks = self.rows.length;\n for (let curWeek = 0; curWeek < numWeeks; curWeek++) {\n self.weekNumbers.push(\n self.getISO8601WeekNumber(self.rows[curWeek][thursdayIndex].date)\n );\n }\n }\n }, 'day');\n\n this.datePicker.setCompareHandler(function(\n date1: Date,\n date2: Date\n ): number {\n const d1 = new Date(date1.getFullYear(), date1.getMonth(), date1.getDate());\n const d2 = new Date(date2.getFullYear(), date2.getMonth(), date2.getDate());\n return d1.getTime() - d2.getTime();\n }, 'day');\n\n this.datePicker.refreshView();\n }\n\n protected getDates(startDate: Date, n: number): Date[] {\n const dates: Date[] = new Array(n);\n let current = new Date(startDate.getTime());\n let i = 0;\n let date: Date;\n while (i < n) {\n date = new Date(current.getTime());\n date = this.datePicker.fixTimeZone(date);\n dates[i++] = date;\n current = new Date(\n current.getFullYear(),\n current.getMonth(),\n current.getDate() + 1\n );\n }\n return dates;\n }\n\n protected getISO8601WeekNumber(date: Date): number {\n const checkDate = new Date(date.getTime());\n // Thursday\n checkDate.setDate(checkDate.getDate() + 4 - (checkDate.getDay() || 7));\n const time = checkDate.getTime();\n // Compare with Jan 1\n checkDate.setMonth(0);\n checkDate.setDate(1);\n return (\n Math.floor(Math.round((time - checkDate.getTime()) / 86400000) / 7) + 1\n );\n }\n\n // todo: key events implementation\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'daypicker',\n template: `\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n \n \n \n \n
\n {{ labelz.abbr }}\n
\n {{ weekNumbers[index] }}\n \n \n
\n `,\n styles: [\n `\n :host .btn-secondary {\n color: #292b2c;\n background-color: #fff;\n border-color: #ccc;\n }\n :host .btn-info .text-muted {\n color: #292b2c !important;\n }\n `\n ]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: DatePickerInnerComponent, },\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/datepicker/daypicker.component.ts","// user and model input should handle parsing and validating input values\n// should accept some options\n// todo: split out formatting\nimport { DaysCalendarModel, MonthViewOptions } from '../models/index';\nimport { getFirstDayOfMonth } from '../../bs-moment/utils/date-getters';\nimport { getStartingDayOfCalendar } from '../utils/bs-calendar-utils';\nimport { createMatrix } from '../utils/matrix-utils';\n\nexport function calcDaysCalendar(\n startingDate: Date,\n options: MonthViewOptions\n): DaysCalendarModel {\n const firstDay = getFirstDayOfMonth(startingDate);\n const initialDate = getStartingDayOfCalendar(firstDay, options);\n\n const matrixOptions = {\n width: options.width,\n height: options.height,\n initialDate,\n shift: { day: 1 }\n };\n const daysMatrix = createMatrix(matrixOptions, date => date);\n\n return {\n daysMatrix,\n month: firstDay\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/datepicker/engine/calc-days-calendar.ts","import {\n DaysCalendarViewModel,\n DayViewModel,\n WeekViewModel\n} from '../models/index';\nimport { isSameDay, isSameMonth } from '../../bs-moment/utils/date-getters';\nimport { isAfter, isBefore } from '../../bs-moment/utils/date-compare';\nimport { isMonthDisabled } from '../utils/bs-calendar-utils';\nimport { shiftDate } from '../../bs-moment/utils/date-setters';\n\nexport interface FlagDaysCalendarOptions {\n isDisabled: boolean;\n minDate: Date;\n maxDate: Date;\n hoveredDate: Date;\n selectedDate: Date;\n selectedRange: Date[];\n displayMonths: number;\n monthIndex: number;\n}\n\nexport function flagDaysCalendar(\n formattedMonth: DaysCalendarViewModel,\n options: FlagDaysCalendarOptions\n): DaysCalendarViewModel {\n formattedMonth.weeks.forEach((week: WeekViewModel, weekIndex: number) => {\n week.days.forEach((day: DayViewModel, dayIndex: number) => {\n // datepicker\n const isOtherMonth = !isSameMonth(day.date, formattedMonth.month);\n\n const isHovered =\n !isOtherMonth && isSameDay(day.date, options.hoveredDate);\n // date range picker\n const isSelectionStart =\n !isOtherMonth &&\n options.selectedRange &&\n isSameDay(day.date, options.selectedRange[0]);\n const isSelectionEnd =\n !isOtherMonth &&\n options.selectedRange &&\n isSameDay(day.date, options.selectedRange[1]);\n\n const isSelected =\n (!isOtherMonth && isSameDay(day.date, options.selectedDate)) ||\n isSelectionStart ||\n isSelectionEnd;\n\n const isInRange =\n !isOtherMonth &&\n options.selectedRange &&\n isDateInRange(day.date, options.selectedRange, options.hoveredDate);\n\n const isDisabled =\n options.isDisabled ||\n isBefore(day.date, options.minDate, 'day') ||\n isAfter(day.date, options.maxDate, 'day');\n\n // decide update or not\n const newDay = Object.assign({}, day, {\n isOtherMonth,\n isHovered,\n isSelected,\n isSelectionStart,\n isSelectionEnd,\n isInRange,\n isDisabled\n });\n\n if (\n day.isOtherMonth !== newDay.isOtherMonth ||\n day.isHovered !== newDay.isHovered ||\n day.isSelected !== newDay.isSelected ||\n day.isSelectionStart !== newDay.isSelectionStart ||\n day.isSelectionEnd !== newDay.isSelectionEnd ||\n day.isDisabled !== newDay.isDisabled ||\n day.isInRange !== newDay.isInRange\n ) {\n week.days[dayIndex] = newDay;\n }\n });\n });\n\n // todo: add check for linked calendars\n formattedMonth.hideLeftArrow =\n options.isDisabled ||\n (options.monthIndex > 0 && options.monthIndex !== options.displayMonths);\n formattedMonth.hideRightArrow =\n options.isDisabled ||\n (options.monthIndex < options.displayMonths &&\n options.monthIndex + 1 !== options.displayMonths);\n\n formattedMonth.disableLeftArrow = isMonthDisabled(\n shiftDate(formattedMonth.month, { month: -1 }),\n options.minDate,\n options.maxDate\n );\n formattedMonth.disableRightArrow = isMonthDisabled(\n shiftDate(formattedMonth.month, { month: 1 }),\n options.minDate,\n options.maxDate\n );\n\n return formattedMonth;\n}\n\nfunction isDateInRange(\n date: Date,\n selectedRange: Date[],\n hoveredDate: Date\n): boolean {\n if (!date || !selectedRange[0]) {\n return false;\n }\n\n if (selectedRange[1]) {\n return date > selectedRange[0] && date <= selectedRange[1];\n }\n\n if (hoveredDate) {\n return date > selectedRange[0] && date <= hoveredDate;\n }\n\n return false;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/datepicker/engine/flag-days-calendar.ts","import { isSameMonth } from '../../bs-moment/utils/date-getters';\nimport {\n MonthsCalendarViewModel,\n CalendarCellViewModel\n} from '../models/index';\nimport { isMonthDisabled, isYearDisabled } from '../utils/bs-calendar-utils';\nimport { shiftDate } from '../../bs-moment/utils/date-setters';\n\nexport interface FlagMonthCalendarOptions {\n isDisabled: boolean;\n minDate: Date;\n maxDate: Date;\n hoveredMonth: Date;\n displayMonths: number;\n monthIndex: number;\n}\n\nexport function flagMonthsCalendar(\n monthCalendar: MonthsCalendarViewModel,\n options: FlagMonthCalendarOptions\n): MonthsCalendarViewModel {\n monthCalendar.months.forEach(\n (months: CalendarCellViewModel[], rowIndex: number) => {\n months.forEach((month: CalendarCellViewModel, monthIndex: number) => {\n const isHovered = isSameMonth(month.date, options.hoveredMonth);\n const isDisabled =\n options.isDisabled ||\n isMonthDisabled(month.date, options.minDate, options.maxDate);\n const newMonth = Object.assign(/*{},*/ month, {\n isHovered,\n isDisabled\n });\n if (\n month.isHovered !== newMonth.isHovered ||\n month.isDisabled !== newMonth.isDisabled\n ) {\n monthCalendar.months[rowIndex][monthIndex] = newMonth;\n }\n });\n }\n );\n\n // todo: add check for linked calendars\n monthCalendar.hideLeftArrow =\n options.monthIndex > 0 && options.monthIndex !== options.displayMonths;\n monthCalendar.hideRightArrow =\n options.monthIndex < options.displayMonths &&\n options.monthIndex + 1 !== options.displayMonths;\n\n monthCalendar.disableLeftArrow = isYearDisabled(\n shiftDate(monthCalendar.months[0][0].date, { year: -1 }),\n options.minDate,\n options.maxDate\n );\n monthCalendar.disableRightArrow = isYearDisabled(\n shiftDate(monthCalendar.months[0][0].date, { year: 1 }),\n options.minDate,\n options.maxDate\n );\n\n return monthCalendar;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/datepicker/engine/flag-months-calendar.ts","import { isSameYear } from '../../bs-moment/utils/date-getters';\nimport { YearsCalendarViewModel, CalendarCellViewModel } from '../models/index';\nimport { isYearDisabled } from '../utils/bs-calendar-utils';\nimport { shiftDate } from '../../bs-moment/utils/date-setters';\n\nexport interface FlagYearsCalendarOptions {\n isDisabled: boolean;\n minDate: Date;\n maxDate: Date;\n hoveredYear: Date;\n displayMonths: number;\n yearIndex: number;\n}\n\nexport function flagYearsCalendar(\n yearsCalendar: YearsCalendarViewModel,\n options: FlagYearsCalendarOptions\n): YearsCalendarViewModel {\n yearsCalendar.years.forEach(\n (years: CalendarCellViewModel[], rowIndex: number) => {\n years.forEach((year: CalendarCellViewModel, yearIndex: number) => {\n const isHovered = isSameYear(year.date, options.hoveredYear);\n const isDisabled =\n options.isDisabled ||\n isYearDisabled(year.date, options.minDate, options.maxDate);\n\n const newMonth = Object.assign(/*{},*/ year, { isHovered, isDisabled });\n if (\n year.isHovered !== newMonth.isHovered ||\n year.isDisabled !== newMonth.isDisabled\n ) {\n yearsCalendar.years[rowIndex][yearIndex] = newMonth;\n }\n });\n }\n );\n\n // todo: add check for linked calendars\n yearsCalendar.hideLeftArrow =\n options.yearIndex > 0 && options.yearIndex !== options.displayMonths;\n yearsCalendar.hideRightArrow =\n options.yearIndex < options.displayMonths &&\n options.yearIndex + 1 !== options.displayMonths;\n\n yearsCalendar.disableLeftArrow = isYearDisabled(\n shiftDate(yearsCalendar.years[0][0].date, { year: -1 }),\n options.minDate,\n options.maxDate\n );\n const i = yearsCalendar.years.length - 1;\n const j = yearsCalendar.years[i].length - 1;\n yearsCalendar.disableRightArrow = isYearDisabled(\n shiftDate(yearsCalendar.years[i][j].date, { year: 1 }),\n options.minDate,\n options.maxDate\n );\n\n return yearsCalendar;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/datepicker/engine/flag-years-calendar.ts","import {\n DatepickerFormatOptions,\n DaysCalendarModel,\n DaysCalendarViewModel\n} from '../models/index';\nimport { formatDate } from '../../bs-moment/format';\nimport { getLocale } from '../../bs-moment/locale/locales.service';\n\nexport function formatDaysCalendar(\n daysCalendar: DaysCalendarModel,\n formatOptions: DatepickerFormatOptions,\n monthIndex: number\n): DaysCalendarViewModel {\n return {\n month: daysCalendar.month,\n monthTitle: formatDate(\n daysCalendar.month,\n formatOptions.monthTitle,\n formatOptions.locale\n ),\n yearTitle: formatDate(\n daysCalendar.month,\n formatOptions.yearTitle,\n formatOptions.locale\n ),\n weekNumbers: getWeekNumbers(\n daysCalendar.daysMatrix,\n formatOptions.weekNumbers,\n formatOptions.locale\n ),\n weekdays: getLocale(formatOptions.locale).weekdaysShort() as string[],\n weeks: daysCalendar.daysMatrix.map((week: Date[], weekIndex: number) => ({\n days: week.map((date: Date, dayIndex: number) => ({\n date,\n label: formatDate(date, formatOptions.dayLabel, formatOptions.locale),\n monthIndex,\n weekIndex,\n dayIndex\n }))\n }))\n };\n}\n\nexport function getWeekNumbers(\n daysMatrix: Date[][],\n format: string,\n locale: string\n): string[] {\n return daysMatrix.map(\n (days: Date[]) => (days[0] ? formatDate(days[0], format, locale) : '')\n );\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/datepicker/engine/format-days-calendar.ts","import {\n DatepickerFormatOptions,\n MonthsCalendarViewModel,\n CalendarCellViewModel\n} from '../models/index';\nimport { startOf } from '../../bs-moment/utils/start-end-of';\nimport { formatDate } from '../../bs-moment/format';\nimport { createMatrix } from '../utils/matrix-utils';\n\nconst height = 4;\nconst width = 3;\nconst shift = { month: 1 };\n\nexport function formatMonthsCalendar(\n viewDate: Date,\n formatOptions: DatepickerFormatOptions\n): MonthsCalendarViewModel {\n const initialDate = startOf(viewDate, 'year');\n const matrixOptions = { width, height, initialDate, shift };\n const monthMatrix = createMatrix<\n CalendarCellViewModel\n >(matrixOptions, date => ({\n date,\n label: formatDate(date, formatOptions.monthLabel, formatOptions.locale)\n }));\n\n return {\n months: monthMatrix,\n monthTitle: '',\n yearTitle: formatDate(\n viewDate,\n formatOptions.yearTitle,\n formatOptions.locale\n )\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/datepicker/engine/format-months-calendar.ts","import {\n DatepickerFormatOptions,\n YearsCalendarViewModel,\n CalendarCellViewModel\n} from '../models/index';\nimport { shiftDate } from '../../bs-moment/utils/date-setters';\nimport { formatDate } from '../../bs-moment/format';\nimport { createMatrix } from '../utils/matrix-utils';\n\nconst height = 4;\nconst width = 4;\nexport const yearsPerCalendar = height * width;\nconst initialShift = (Math.floor(yearsPerCalendar / 2) - 1) * -1;\nconst shift = { year: 1 };\n\nexport function formatYearsCalendar(\n viewDate: Date,\n formatOptions: DatepickerFormatOptions\n): YearsCalendarViewModel {\n const initialDate = shiftDate(viewDate, { year: initialShift });\n const matrixOptions = { width, height, initialDate, shift };\n const yearsMatrix = createMatrix<\n CalendarCellViewModel\n >(matrixOptions, date => ({\n date,\n label: formatDate(date, formatOptions.yearLabel, formatOptions.locale)\n }));\n const yearTitle = formatYearRangeTitle(yearsMatrix, formatOptions);\n\n return {\n years: yearsMatrix,\n monthTitle: '',\n yearTitle\n };\n}\n\nfunction formatYearRangeTitle(\n yearsMatrix: CalendarCellViewModel[][],\n formatOptions: DatepickerFormatOptions\n): string {\n const from = formatDate(\n yearsMatrix[0][0].date,\n formatOptions.yearTitle,\n formatOptions.locale\n );\n const to = formatDate(\n yearsMatrix[height - 1][width - 1].date,\n formatOptions.yearTitle,\n formatOptions.locale\n );\n\n return `${from} - ${to}`;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/datepicker/engine/format-years-calendar.ts","import { BsDatepickerViewMode } from '../models/index';\n\nexport function canSwitchMode(mode: BsDatepickerViewMode): boolean {\n return true;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/datepicker/engine/view-mode.ts","export { DatePickerComponent } from './datepicker.component';\nexport { DatepickerModule } from './datepicker.module';\nexport { DayPickerComponent } from './daypicker.component';\nexport { MonthPickerComponent } from './monthpicker.component';\nexport { YearPickerComponent } from './yearpicker.component';\nexport { DateFormatter } from './date-formatter';\nexport { DatepickerConfig } from './datepicker.config';\n\nexport { BsDatepickerModule } from './bs-datepicker.module';\nexport { BsDatepickerComponent } from './bs-datepicker.component';\nexport { BsDaterangepickerComponent } from './bs-daterangepicker.component';\nexport { BsDatepickerConfig } from './bs-datepicker.config';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/datepicker/index.ts","import { TimeUnit } from '../../bs-moment/types';\n\nexport type BsDatepickerViewMode = 'day' | 'month' | 'year';\n\n/** *************** */\n// navigation bar settings\nexport interface NavigationViewModel {\n monthTitle: string;\n yearTitle: string;\n hideLeftArrow?: boolean;\n hideRightArrow?: boolean;\n disableLeftArrow?: boolean;\n disableRightArrow?: boolean;\n}\n\nexport interface CalendarCellViewModel {\n date: Date;\n label: string;\n isDisabled?: boolean;\n isHovered?: boolean;\n}\n\n/** *************** */\n// days matrix: day cell view model\nexport interface DayViewModel extends CalendarCellViewModel {\n isOtherMonth?: boolean;\n isInRange?: boolean;\n isSelectionStart?: boolean;\n isSelectionEnd?: boolean;\n isSelected?: boolean;\n // day index\n monthIndex?: number;\n weekIndex?: number;\n dayIndex?: number;\n}\n\nexport interface WeekViewModel {\n days: DayViewModel[];\n}\n\n// todo: split navigation settings\nexport interface DaysCalendarViewModel extends NavigationViewModel {\n weeks: WeekViewModel[];\n // additional information\n month: Date;\n weekNumbers: string[];\n weekdays: string[];\n}\n\n/** *************** */\n// months calendar\nexport interface MonthsCalendarViewModel extends NavigationViewModel {\n months: CalendarCellViewModel[][];\n}\n\n/** *************** */\n// years calendar\nexport interface YearsCalendarViewModel extends NavigationViewModel {\n years: CalendarCellViewModel[][];\n}\n\n/** *************** */\n\n// math model\n/** *************** */\n\n// days Date's array\nexport interface DaysCalendarModel {\n daysMatrix: Date[][];\n month: Date;\n}\n\n/** *************** */\n// some func options\nexport interface MonthViewOptions {\n width?: number;\n height?: number;\n firstDayOfWeek?: number;\n}\n\n/** *************** */\n// rendering options\nexport interface DatepickerFormatOptions {\n locale: string;\n\n monthTitle: string;\n yearTitle: string;\n\n dayLabel: string;\n monthLabel: string;\n yearLabel: string;\n\n weekNumbers: string;\n}\n\nexport interface DatepickerRenderOptions {\n showWeekNumbers?: boolean;\n displayMonths?: number;\n}\n\n/** *************** */\n// events\n/** *************** */\nexport enum BsNavigationDirection {\n UP,\n DOWN\n}\n\n// used for navigation events, to change view date in state\nexport interface BsNavigationEvent {\n direction?: BsNavigationDirection;\n step?: TimeUnit;\n}\n\nexport interface BsViewNavigationEvent {\n unit?: TimeUnit;\n viewMode: BsDatepickerViewMode;\n}\n\nexport interface CellHoverEvent {\n cell: CalendarCellViewModel;\n isHovered: boolean;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/datepicker/models/index.ts","// @deprecated\n// tslint:disable\nimport { Component, OnInit } from '@angular/core';\n\nimport { isBs3 } from '../utils/theme-provider';\nimport { DatePickerInnerComponent } from './datepicker-inner.component';\n\n\nexport class MonthPickerComponent implements OnInit {\n title: string;\n rows: any[] = [];\n datePicker: DatePickerInnerComponent;\n maxMode: string;\n\n constructor(datePicker: DatePickerInnerComponent) {\n this.datePicker = datePicker;\n }\n\n get isBs4(): boolean {\n return !isBs3();\n }\n\n ngOnInit(): void {\n const self = this;\n\n this.datePicker.stepMonth = { years: 1 };\n\n this.datePicker.setRefreshViewHandler(function(): void {\n const months: any[] = new Array(12);\n const year: number = this.activeDate.getFullYear();\n let date: Date;\n\n for (let i = 0; i < 12; i++) {\n date = new Date(year, i, 1);\n date = this.fixTimeZone(date);\n months[i] = this.createDateObject(date, this.formatMonth);\n months[i].uid = this.uniqueId + '-' + i;\n }\n\n self.title = this.dateFilter(this.activeDate, this.formatMonthTitle);\n self.rows = this.split(months, self.datePicker.monthColLimit);\n }, 'month');\n\n this.datePicker.setCompareHandler(function(\n date1: Date,\n date2: Date\n ): number {\n const d1 = new Date(date1.getFullYear(), date1.getMonth());\n const d2 = new Date(date2.getFullYear(), date2.getMonth());\n return d1.getTime() - d2.getTime();\n }, 'month');\n\n this.datePicker.refreshView();\n }\n\n // todo: key events implementation\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'monthpicker',\n template: `\n\n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n \n
\n \n
\n `,\n styles: [\n `\n :host .btn-info .text-success {\n color: #fff !important;\n }\n `\n ]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: DatePickerInnerComponent, },\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/datepicker/monthpicker.component.ts","import {\n MonthViewOptions\n} from '../models/index';\n\nexport const defaultMonthOptions: MonthViewOptions = {\n width: 7,\n height: 6\n};\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/datepicker/reducer/_defaults.ts","import { Injectable } from '@angular/core';\nimport { TimeUnit } from '../../bs-moment/types';\nimport { Action } from '../../mini-ngrx/index';\nimport {\n BsDatepickerViewMode,\n BsViewNavigationEvent,\n CellHoverEvent,\n DatepickerRenderOptions\n} from '../models/index';\n\n\nexport class BsDatepickerActions {\n static readonly CALCULATE = '[datepicker] calculate dates matrix';\n static readonly FORMAT = '[datepicker] format datepicker values';\n static readonly FLAG = '[datepicker] set flags';\n static readonly SELECT = '[datepicker] select date';\n static readonly NAVIGATE_OFFSET = '[datepicker] shift view date';\n static readonly NAVIGATE_TO = '[datepicker] change view date';\n static readonly SET_OPTIONS = '[datepicker] update render options';\n static readonly HOVER = '[datepicker] hover date';\n static readonly CHANGE_VIEWMODE = '[datepicker] switch view mode';\n\n static readonly SET_MIN_DATE = '[datepicker] set min date';\n static readonly SET_MAX_DATE = '[datepicker] set max date';\n static readonly SET_IS_DISABLED = '[datepicker] set is disabled';\n\n static readonly SELECT_RANGE = '[daterangepicker] select dates range';\n\n calculate(): Action {\n return { type: BsDatepickerActions.CALCULATE };\n }\n\n format(): Action {\n return { type: BsDatepickerActions.FORMAT };\n }\n\n flag(): Action {\n return { type: BsDatepickerActions.FLAG };\n }\n\n select(date: Date): Action {\n return {\n type: BsDatepickerActions.SELECT,\n payload: date\n };\n }\n\n changeViewMode(event: BsDatepickerViewMode): Action {\n return {\n type: BsDatepickerActions.CHANGE_VIEWMODE,\n payload: event\n };\n }\n\n navigateTo(event: BsViewNavigationEvent): Action {\n return {\n type: BsDatepickerActions.NAVIGATE_TO,\n payload: event\n };\n }\n\n navigateStep(step: TimeUnit): Action {\n return {\n type: BsDatepickerActions.NAVIGATE_OFFSET,\n payload: step\n };\n }\n\n setOptions(options: DatepickerRenderOptions): Action {\n return {\n type: BsDatepickerActions.SET_OPTIONS,\n payload: options\n };\n }\n\n // date range picker\n selectRange(value: Date[]): Action {\n return {\n type: BsDatepickerActions.SELECT_RANGE,\n payload: value\n };\n }\n\n hoverDay(event: CellHoverEvent): Action {\n return {\n type: BsDatepickerActions.HOVER,\n payload: event.isHovered ? event.cell.date : null\n };\n }\n\n minDate(date: Date): Action {\n return {\n type: BsDatepickerActions.SET_MIN_DATE,\n payload: date\n };\n }\n\n maxDate(date: Date): Action {\n return {\n type: BsDatepickerActions.SET_MAX_DATE,\n payload: date\n };\n }\n\n isDisabled(value: boolean): Action {\n return {\n type: BsDatepickerActions.SET_IS_DISABLED,\n payload: value\n };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/datepicker/reducer/bs-datepicker.actions.ts","import { Injectable } from '@angular/core';\nimport 'rxjs/add/operator/filter';\nimport 'rxjs/add/operator/map';\nimport { Observable } from 'rxjs/Observable';\nimport { getFullYear, getMonth } from '../../bs-moment/utils/date-getters';\nimport { BsDatepickerAbstractComponent } from '../base/bs-datepicker-container';\nimport { BsDatepickerConfig } from '../bs-datepicker.config';\nimport {\n BsDatepickerViewMode,\n BsNavigationEvent,\n CalendarCellViewModel,\n CellHoverEvent,\n DatepickerRenderOptions,\n DaysCalendarViewModel,\n DayViewModel,\n MonthsCalendarViewModel,\n YearsCalendarViewModel\n} from '../models/index';\nimport { BsDatepickerActions } from './bs-datepicker.actions';\nimport { BsDatepickerStore } from './bs-datepicker.store';\nimport { Subscription } from 'rxjs/Subscription';\n\n\nexport class BsDatepickerEffects {\n viewMode: Observable;\n daysCalendar: Observable;\n monthsCalendar: Observable;\n yearsCalendar: Observable;\n options: Observable;\n\n private _store: BsDatepickerStore;\n private _subs: Subscription[] = [];\n\n constructor(private _actions: BsDatepickerActions) {}\n\n init(_bsDatepickerStore: BsDatepickerStore): BsDatepickerEffects {\n this._store = _bsDatepickerStore;\n\n return this;\n }\n\n /** setters */\n\n setValue(value: Date): void {\n this._store.dispatch(this._actions.select(value));\n }\n\n setRangeValue(value: Date[]): void {\n this._store.dispatch(this._actions.selectRange(value));\n }\n\n setMinDate(value: Date): BsDatepickerEffects {\n this._store.dispatch(this._actions.minDate(value));\n\n return this;\n }\n\n setMaxDate(value: Date): BsDatepickerEffects {\n this._store.dispatch(this._actions.maxDate(value));\n\n return this;\n }\n\n setDisabled(value: boolean): BsDatepickerEffects {\n this._store.dispatch(this._actions.isDisabled(value));\n\n return this;\n }\n\n /* Set rendering options */\n setOptions(_config: BsDatepickerConfig): BsDatepickerEffects {\n this._store.dispatch(this._actions.setOptions(_config));\n\n return this;\n }\n\n /** view to mode bindings */\n setBindings(container: BsDatepickerAbstractComponent): BsDatepickerEffects {\n container.daysCalendar = this._store\n .select(state => state.flaggedMonths)\n .filter(months => !!months);\n\n // month calendar\n container.monthsCalendar = this._store\n .select(state => state.flaggedMonthsCalendar)\n .filter(months => !!months);\n\n // year calendar\n container.yearsCalendar = this._store\n .select(state => state.yearsCalendarFlagged)\n .filter(years => !!years);\n\n container.viewMode = this._store.select(state => state.view.mode);\n\n container.options = this._store\n .select(state => state.showWeekNumbers)\n .map(showWeekNumbers => ({showWeekNumbers}));\n\n return this;\n }\n\n /** event handlers */\n setEventHandlers(container: BsDatepickerAbstractComponent): BsDatepickerEffects {\n container.setViewMode = (event: BsDatepickerViewMode): void => {\n this._store.dispatch(this._actions.changeViewMode(event));\n };\n\n container.navigateTo = (event: BsNavigationEvent): void => {\n this._store.dispatch(this._actions.navigateStep(event.step));\n };\n\n container.dayHoverHandler = (event: CellHoverEvent): void => {\n const _cell = event.cell as DayViewModel;\n if (_cell.isOtherMonth || _cell.isDisabled) {\n return;\n }\n\n this._store.dispatch(this._actions.hoverDay(event));\n _cell.isHovered = event.isHovered;\n };\n\n container.monthHoverHandler = (event: CellHoverEvent): void => {\n event.cell.isHovered = event.isHovered;\n };\n\n container.yearHoverHandler = (event: CellHoverEvent): void => {\n event.cell.isHovered = event.isHovered;\n };\n\n /** select handlers */\n // container.daySelectHandler = (day: DayViewModel): void => {\n // if (day.isOtherMonth || day.isDisabled) {\n // return;\n // }\n // this._store.dispatch(this._actions.select(day.date));\n // };\n\n container.monthSelectHandler = (event: CalendarCellViewModel): void => {\n if (event.isDisabled) {\n return;\n }\n this._store.dispatch(\n this._actions.navigateTo({\n unit: {month: getMonth(event.date)},\n viewMode: 'day'\n })\n );\n };\n\n container.yearSelectHandler = (event: CalendarCellViewModel): void => {\n if (event.isDisabled) {\n return;\n }\n this._store.dispatch(\n this._actions.navigateTo({\n unit: {year: getFullYear(event.date)},\n viewMode: 'month'\n })\n );\n };\n\n return this;\n }\n\n registerDatepickerSideEffects(): BsDatepickerEffects {\n this._subs.push(\n this._store.select(state => state.view).subscribe(view => {\n this._store.dispatch(this._actions.calculate());\n })\n );\n\n // format calendar values on month model change\n this._subs.push(\n this._store\n .select(state => state.monthsModel)\n .filter(monthModel => !!monthModel)\n .subscribe(month => this._store.dispatch(this._actions.format()))\n );\n\n // flag day values\n this._subs.push(\n this._store\n .select(state => state.formattedMonths)\n .filter(month => !!month)\n .subscribe(month => this._store.dispatch(this._actions.flag()))\n );\n\n // flag day values\n this._subs.push(\n this._store\n .select(state => state.selectedDate)\n .filter(selectedDate => !!selectedDate)\n .subscribe(selectedDate => this._store.dispatch(this._actions.flag()))\n );\n\n // flag for date range picker\n this._subs.push(\n this._store\n .select(state => state.selectedRange)\n .filter(selectedRange => !!selectedRange)\n .subscribe(selectedRange => this._store.dispatch(this._actions.flag()))\n );\n\n // monthsCalendar\n this._subs.push(\n this._store\n .select(state => state.monthsCalendar)\n .subscribe(() => this._store.dispatch(this._actions.flag()))\n );\n\n // years calendar\n this._subs.push(\n this._store\n .select(state => state.yearsCalendarModel)\n .filter(state => !!state)\n .subscribe(() => this._store.dispatch(this._actions.flag()))\n );\n\n // on hover\n this._subs.push(\n this._store\n .select(state => state.hoveredDate)\n .filter(hoveredDate => !!hoveredDate)\n .subscribe(hoveredDate => this._store.dispatch(this._actions.flag()))\n );\n\n return this;\n }\n\n destroy(): void {\n for (const sub of this._subs) {\n sub.unsubscribe();\n }\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: BsDatepickerActions, },\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/datepicker/reducer/bs-datepicker.effects.ts","// tslint:disable:max-file-line-count\nimport {\n BsDatepickerState,\n initialDatepickerState\n} from './bs-datepicker.state';\nimport { Action } from '../../mini-ngrx/index';\nimport { BsDatepickerActions } from './bs-datepicker.actions';\nimport { calcDaysCalendar } from '../engine/calc-days-calendar';\nimport { formatDaysCalendar } from '../engine/format-days-calendar';\nimport { flagDaysCalendar } from '../engine/flag-days-calendar';\nimport { shiftDate, setDate } from '../../bs-moment/utils/date-setters';\nimport { canSwitchMode } from '../engine/view-mode';\nimport { formatMonthsCalendar } from '../engine/format-months-calendar';\nimport { flagMonthsCalendar } from '../engine/flag-months-calendar';\nimport {\n formatYearsCalendar,\n yearsPerCalendar\n} from '../engine/format-years-calendar';\nimport { flagYearsCalendar } from '../engine/flag-years-calendar';\nimport {\n BsViewNavigationEvent,\n DatepickerFormatOptions\n} from '../models/index';\nimport { isArray, isDateValid } from '../../bs-moment/utils/type-checks';\nimport { startOf } from '../../bs-moment/utils/start-end-of';\n\nexport function bsDatepickerReducer(\n state = initialDatepickerState,\n action: Action\n): BsDatepickerState {\n switch (action.type) {\n case BsDatepickerActions.CALCULATE: {\n return calculateReducer(state);\n }\n\n case BsDatepickerActions.FORMAT: {\n return formatReducer(state, action);\n }\n\n case BsDatepickerActions.FLAG: {\n return flagReducer(state, action);\n }\n\n case BsDatepickerActions.NAVIGATE_OFFSET: {\n const date = shiftDate(startOf(state.view.date, 'month'), action.payload);\n const newState = {\n view: {\n mode: state.view.mode,\n date\n }\n };\n\n return Object.assign({}, state, newState);\n }\n\n case BsDatepickerActions.NAVIGATE_TO: {\n const payload: BsViewNavigationEvent = action.payload;\n\n const date = setDate(state.view.date, payload.unit);\n const mode = payload.viewMode;\n const newState = { view: { date, mode } };\n\n return Object.assign({}, state, newState);\n }\n\n case BsDatepickerActions.CHANGE_VIEWMODE: {\n if (!canSwitchMode(action.payload)) {\n return state;\n }\n const date = state.view.date;\n const mode = action.payload;\n const newState = { view: { date, mode } };\n\n return Object.assign({}, state, newState);\n }\n\n case BsDatepickerActions.HOVER: {\n return Object.assign({}, state, { hoveredDate: action.payload });\n }\n\n case BsDatepickerActions.SELECT: {\n const newState = {\n selectedDate: action.payload,\n view: state.view\n };\n\n if (action.payload) {\n newState.view = {\n date: action.payload,\n mode: state.view.mode\n };\n }\n\n return Object.assign({}, state, newState);\n }\n\n case BsDatepickerActions.SET_OPTIONS: {\n const newState = action.payload;\n // looks not really good\n if (newState.value) {\n newState.view = state.view;\n if (isArray(newState.value)) {\n newState.view = {\n mode: state.view.mode,\n date: isDateValid(newState.value[0]) ? newState.value[0] : newState.view.date\n };\n newState.selectedRange = newState.value;\n } else {\n newState.view = {\n mode: state.view.mode,\n date: newState.value\n };\n newState.selectedDate = newState.value;\n }\n }\n\n return Object.assign({}, state, newState);\n }\n\n // date range picker\n case BsDatepickerActions.SELECT_RANGE: {\n return Object.assign({}, state, { selectedRange: action.payload });\n }\n\n case BsDatepickerActions.SET_MIN_DATE: {\n return Object.assign({}, state, {\n minDate: action.payload\n });\n }\n case BsDatepickerActions.SET_MAX_DATE: {\n return Object.assign({}, state, {\n maxDate: action.payload\n });\n }\n case BsDatepickerActions.SET_IS_DISABLED: {\n return Object.assign({}, state, {\n isDisabled: action.payload\n });\n }\n\n default:\n return state;\n }\n}\n\nfunction calculateReducer(state: BsDatepickerState): BsDatepickerState {\n // how many calendars\n const displayMonths = state.displayMonths;\n // use selected date on initial rendering if set\n let viewDate = state.view.date;\n\n if (state.view.mode === 'day') {\n const monthsModel = new Array(displayMonths);\n for (let monthIndex = 0; monthIndex < displayMonths; monthIndex++) {\n // todo: for unlinked calendars it will be harder\n monthsModel[monthIndex] = calcDaysCalendar(\n viewDate,\n state.monthViewOptions\n );\n viewDate = shiftDate(viewDate, { month: 1 });\n }\n\n return Object.assign({}, state, { monthsModel });\n }\n\n if (state.view.mode === 'month') {\n const monthsCalendar = new Array(displayMonths);\n for (\n let calendarIndex = 0;\n calendarIndex < displayMonths;\n calendarIndex++\n ) {\n // todo: for unlinked calendars it will be harder\n monthsCalendar[calendarIndex] = formatMonthsCalendar(\n viewDate,\n getFormatOptions(state)\n );\n viewDate = shiftDate(viewDate, { year: 1 });\n }\n\n return Object.assign({}, state, { monthsCalendar });\n }\n\n if (state.view.mode === 'year') {\n const yearsCalendarModel = new Array(displayMonths);\n\n for (\n let calendarIndex = 0;\n calendarIndex < displayMonths;\n calendarIndex++\n ) {\n // todo: for unlinked calendars it will be harder\n yearsCalendarModel[calendarIndex] = formatYearsCalendar(\n viewDate,\n getFormatOptions(state)\n );\n viewDate = shiftDate(viewDate, { year: yearsPerCalendar });\n }\n\n return Object.assign({}, state, { yearsCalendarModel });\n }\n\n return state;\n}\n\nfunction formatReducer(\n state: BsDatepickerState,\n action: Action\n): BsDatepickerState {\n if (state.view.mode === 'day') {\n const formattedMonths = state.monthsModel.map((month, monthIndex) =>\n formatDaysCalendar(month, getFormatOptions(state), monthIndex)\n );\n\n return Object.assign({}, state, { formattedMonths });\n }\n\n // how many calendars\n const displayMonths = state.displayMonths;\n // check initial rendering\n // use selected date on initial rendering if set\n let viewDate = state.view.date;\n\n if (state.view.mode === 'month') {\n const monthsCalendar = new Array(displayMonths);\n for (\n let calendarIndex = 0;\n calendarIndex < displayMonths;\n calendarIndex++\n ) {\n // todo: for unlinked calendars it will be harder\n monthsCalendar[calendarIndex] = formatMonthsCalendar(\n viewDate,\n getFormatOptions(state)\n );\n viewDate = shiftDate(viewDate, { year: 1 });\n }\n\n return Object.assign({}, state, { monthsCalendar });\n }\n\n if (state.view.mode === 'year') {\n const yearsCalendarModel = new Array(displayMonths);\n for (\n let calendarIndex = 0;\n calendarIndex < displayMonths;\n calendarIndex++\n ) {\n // todo: for unlinked calendars it will be harder\n yearsCalendarModel[calendarIndex] = formatYearsCalendar(\n viewDate,\n getFormatOptions(state)\n );\n viewDate = shiftDate(viewDate, { year: 16 });\n }\n\n return Object.assign({}, state, { yearsCalendarModel });\n }\n\n return state;\n}\n\nfunction flagReducer(\n state: BsDatepickerState,\n action: Action\n): BsDatepickerState {\n if (state.view.mode === 'day') {\n const flaggedMonths = state.formattedMonths.map(\n (formattedMonth, monthIndex) =>\n flagDaysCalendar(formattedMonth, {\n isDisabled: state.isDisabled,\n minDate: state.minDate,\n maxDate: state.maxDate,\n hoveredDate: state.hoveredDate,\n selectedDate: state.selectedDate,\n selectedRange: state.selectedRange,\n displayMonths: state.displayMonths,\n monthIndex\n })\n );\n\n return Object.assign({}, state, { flaggedMonths });\n }\n\n if (state.view.mode === 'month') {\n const flaggedMonthsCalendar = state.monthsCalendar.map(\n (formattedMonth, monthIndex) =>\n flagMonthsCalendar(formattedMonth, {\n isDisabled: state.isDisabled,\n minDate: state.minDate,\n maxDate: state.maxDate,\n hoveredMonth: state.hoveredMonth,\n displayMonths: state.displayMonths,\n monthIndex\n })\n );\n\n return Object.assign({}, state, { flaggedMonthsCalendar });\n }\n\n if (state.view.mode === 'year') {\n const yearsCalendarFlagged = state.yearsCalendarModel.map(\n (formattedMonth, yearIndex) =>\n flagYearsCalendar(formattedMonth, {\n isDisabled: state.isDisabled,\n minDate: state.minDate,\n maxDate: state.maxDate,\n hoveredYear: state.hoveredYear,\n displayMonths: state.displayMonths,\n yearIndex\n })\n );\n\n return Object.assign({}, state, { yearsCalendarFlagged });\n }\n\n return state;\n}\n\nfunction getFormatOptions(state: BsDatepickerState): DatepickerFormatOptions {\n return {\n locale: state.locale,\n\n monthTitle: state.monthTitle,\n yearTitle: state.yearTitle,\n\n dayLabel: state.dayLabel,\n monthLabel: state.monthLabel,\n yearLabel: state.yearLabel,\n\n weekNumbers: state.weekNumbers\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/datepicker/reducer/bs-datepicker.reducer.ts","import {\n BsDatepickerViewMode,\n DatepickerFormatOptions,\n DatepickerRenderOptions,\n DaysCalendarModel,\n DaysCalendarViewModel,\n MonthsCalendarViewModel,\n MonthViewOptions,\n YearsCalendarViewModel\n} from '../models/index';\nimport { defaultMonthOptions } from './_defaults';\nimport { BsDatepickerConfig } from '../bs-datepicker.config';\n\nexport interface BsDatepickerViewState {\n date: Date;\n mode: BsDatepickerViewMode;\n}\n\nexport class BsDatepickerState\n implements DatepickerRenderOptions, DatepickerFormatOptions {\n // date picker\n selectedDate?: Date;\n // daterange picker\n selectedRange?: Date[];\n\n // initial date of calendar, today by default\n view: BsDatepickerViewState;\n\n isDisabled?: boolean;\n // bounds\n minDate?: Date;\n maxDate?: Date;\n\n hoveredDate?: Date;\n hoveredMonth?: Date;\n hoveredYear?: Date;\n\n // days calendar\n monthsModel?: DaysCalendarModel[];\n formattedMonths?: DaysCalendarViewModel[];\n flaggedMonths?: DaysCalendarViewModel[];\n\n // months calendar\n monthsCalendar?: MonthsCalendarViewModel[];\n flaggedMonthsCalendar?: MonthsCalendarViewModel[];\n\n // years calendar\n yearsCalendarModel?: YearsCalendarViewModel[];\n yearsCalendarFlagged?: YearsCalendarViewModel[];\n\n // options\n monthViewOptions: MonthViewOptions;\n\n // DatepickerRenderOptions\n showWeekNumbers?: boolean;\n displayMonths?: number;\n\n // DatepickerFormatOptions\n locale: string;\n\n monthTitle: string;\n yearTitle: string;\n\n dayLabel: string;\n monthLabel: string;\n yearLabel: string;\n\n weekNumbers: string;\n}\n\nconst _initialView: BsDatepickerViewState = { date: new Date(), mode: 'day' };\n\nexport const initialDatepickerState: BsDatepickerState = Object.assign(\n new BsDatepickerConfig(),\n {\n view: _initialView,\n selectedRange: [],\n monthViewOptions: defaultMonthOptions\n }\n);\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/datepicker/reducer/bs-datepicker.state.ts","import { Injectable } from '@angular/core';\nimport { MiniStore } from '../../mini-ngrx/store.class';\nimport {\n BsDatepickerState,\n initialDatepickerState\n} from './bs-datepicker.state';\nimport { BehaviorSubject } from 'rxjs/BehaviorSubject';\nimport { Action } from '../../mini-ngrx/index';\nimport { MiniState } from '../../mini-ngrx/state.class';\nimport { bsDatepickerReducer } from './bs-datepicker.reducer';\n\n\nexport class BsDatepickerStore extends MiniStore {\n constructor() {\n const _dispatcher = new BehaviorSubject({\n type: '[datepicker] dispatcher init'\n });\n const state = new MiniState(\n initialDatepickerState,\n _dispatcher,\n bsDatepickerReducer\n );\n super(_dispatcher, bsDatepickerReducer, state);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/datepicker/reducer/bs-datepicker.store.ts","import { Component } from '@angular/core';\n\n\nexport class BsCalendarLayoutComponent {static decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bs-calendar-layout',\n template: `\n \n \n\n \n
\n \n
\n\n
\n \n
\n\n \n \n `\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../../.tmp/datepicker/themes/bs/bs-calendar-layout.component.ts","import { Component, Input } from '@angular/core';\n\n\nexport class BsCurrentDateViewComponent {\n title: string;\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bs-current-date',\n template: `
{{ title }}
`\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'title': [{ type: Input },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../../.tmp/datepicker/themes/bs/bs-current-date-view.component.ts","import { Component, ChangeDetectionStrategy, Input } from '@angular/core';\n\nexport interface BsCustomDates {\n label: string;\n value: Date | Date[];\n}\n\n\nexport class BsCustomDatesViewComponent {\n isCustomRangeShown: true;\n ranges: BsCustomDates[];\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bs-custom-date-view',\n template: `\n
\n \n \n
\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'isCustomRangeShown': [{ type: Input },],\n'ranges': [{ type: Input },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../../.tmp/datepicker/themes/bs/bs-custom-dates-view.component.ts","import { Component, EventEmitter, OnDestroy, OnInit } from '@angular/core';\nimport { BsDatepickerAbstractComponent } from '../../base/bs-datepicker-container';\n\nimport { BsDatepickerConfig } from '../../bs-datepicker.config';\nimport { DayViewModel } from '../../models/index';\nimport { BsDatepickerActions } from '../../reducer/bs-datepicker.actions';\nimport { BsDatepickerEffects } from '../../reducer/bs-datepicker.effects';\nimport { BsDatepickerStore } from '../../reducer/bs-datepicker.store';\nimport { Subscription } from 'rxjs/Subscription';\n\n\nexport class BsDatepickerContainerComponent extends BsDatepickerAbstractComponent\n implements OnInit, OnDestroy {\n set value(value: Date) {\n this._effects.setValue(value);\n }\n valueChange: EventEmitter = new EventEmitter();\n\n _subs: Subscription[] = [];\n constructor(\n private _config: BsDatepickerConfig,\n private _store: BsDatepickerStore,\n private _actions: BsDatepickerActions,\n _effects: BsDatepickerEffects\n ) {\n super();\n this._effects = _effects;\n }\n\n ngOnInit(): void {\n this.containerClass = this._config.containerClass;\n this._effects\n .init(this._store)\n // intial state options\n .setOptions(this._config)\n // data binding view --> model\n .setBindings(this)\n // set event handlers\n .setEventHandlers(this)\n .registerDatepickerSideEffects();\n\n // todo: move it somewhere else\n // on selected date change\n this._subs.push(\n this._store\n .select(state => state.selectedDate)\n .subscribe(date => this.valueChange.emit(date))\n );\n }\n\n daySelectHandler(day: DayViewModel): void {\n if (day.isOtherMonth || day.isDisabled) {\n return;\n }\n this._store.dispatch(this._actions.select(day.date));\n }\n\n ngOnDestroy(): void {\n for (const sub of this._subs) {\n sub.unsubscribe();\n }\n this._effects.destroy();\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bs-datepicker-container',\n providers: [BsDatepickerStore, BsDatepickerEffects],\n template: \"
1\\\" [calendar]=\\\"calendar\\\" [options]=\\\"options | async\\\" (onNavigate)=\\\"navigateTo($event)\\\" (onViewMode)=\\\"setViewMode($event)\\\" (onHover)=\\\"dayHoverHandler($event)\\\" (onSelect)=\\\"daySelectHandler($event)\\\" >
1\\\" [calendar]=\\\"calendar\\\" (onNavigate)=\\\"navigateTo($event)\\\" (onViewMode)=\\\"setViewMode($event)\\\" (onHover)=\\\"monthHoverHandler($event)\\\" (onSelect)=\\\"monthSelectHandler($event)\\\" >
1\\\" [calendar]=\\\"calendar\\\" (onNavigate)=\\\"navigateTo($event)\\\" (onViewMode)=\\\"setViewMode($event)\\\" (onHover)=\\\"yearHoverHandler($event)\\\" (onSelect)=\\\"yearSelectHandler($event)\\\" >
\",\n host: {\n '(click)': '_stopPropagation($event)',\n style: 'position: absolute; display: block;'\n }\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: BsDatepickerConfig, },\n{type: BsDatepickerStore, },\n{type: BsDatepickerActions, },\n{type: BsDatepickerEffects, },\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../../.tmp/datepicker/themes/bs/bs-datepicker-container.component.ts","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { DayViewModel } from '../../models/index';\n\n\nexport class BsDatepickerDayDecoratorComponent {\n day: DayViewModel;\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: '[bsDatepickerDayDecorator]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class.disabled]': 'day.isDisabled',\n '[class.is-highlighted]': 'day.isHovered',\n '[class.is-other-month]': 'day.isOtherMonth',\n '[class.in-range]': 'day.isInRange',\n '[class.select-start]': 'day.isSelectionStart',\n '[class.select-end]': 'day.isSelectionEnd',\n '[class.selected]': 'day.isSelected'\n },\n template: `{{ day.label }}`\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'day': [{ type: Input },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../../.tmp/datepicker/themes/bs/bs-datepicker-day-decorator.directive.ts","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output\n} from '@angular/core';\nimport {\n BsDatepickerViewMode,\n BsNavigationDirection,\n DaysCalendarViewModel\n} from '../../models/index';\n\n\nexport class BsDatepickerNavigationViewComponent {\n calendar: DaysCalendarViewModel;\n\n onNavigate = new EventEmitter();\n onViewMode = new EventEmitter();\n\n navTo(down: boolean): void {\n this.onNavigate.emit(\n down ? BsNavigationDirection.DOWN : BsNavigationDirection.UP\n );\n }\n\n view(viewMode: BsDatepickerViewMode): void {\n this.onViewMode.emit(viewMode);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bs-datepicker-navigation-view',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n \n\n \n\n \n\n \n `\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'calendar': [{ type: Input },],\n'onNavigate': [{ type: Output },],\n'onViewMode': [{ type: Output },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../../.tmp/datepicker/themes/bs/bs-datepicker-navigation-view.component.ts","import { Component, EventEmitter, OnDestroy, OnInit } from '@angular/core';\nimport { BsDatepickerAbstractComponent } from '../../base/bs-datepicker-container';\nimport { BsDatepickerConfig } from '../../bs-datepicker.config';\nimport { DayViewModel } from '../../models/index';\nimport { BsDatepickerActions } from '../../reducer/bs-datepicker.actions';\nimport { BsDatepickerEffects } from '../../reducer/bs-datepicker.effects';\nimport { BsDatepickerStore } from '../../reducer/bs-datepicker.store';\nimport { Subscription } from 'rxjs/Subscription';\n\n\nexport class BsDaterangepickerContainerComponent extends BsDatepickerAbstractComponent\n implements OnInit, OnDestroy {\n set value(value: Date[]) {\n this._effects.setRangeValue(value);\n }\n\n valueChange = new EventEmitter();\n\n _rangeStack: Date[] = [];\n _subs: Subscription[] = [];\n constructor(\n private _config: BsDatepickerConfig,\n private _store: BsDatepickerStore,\n private _actions: BsDatepickerActions,\n _effects: BsDatepickerEffects\n ) {\n super();\n this._effects = _effects;\n }\n\n ngOnInit(): void {\n this.containerClass = this._config.containerClass;\n this._effects\n .init(this._store)\n // intial state options\n // todo: fix this, split configs\n .setOptions(this._config)\n // data binding view --> model\n .setBindings(this)\n // set event handlers\n .setEventHandlers(this)\n .registerDatepickerSideEffects();\n\n // todo: move it somewhere else\n // on selected date change\n this._subs.push(\n this._store\n .select(state => state.selectedRange)\n .subscribe(date => this.valueChange.emit(date))\n );\n }\n\n daySelectHandler(day: DayViewModel): void {\n if (day.isOtherMonth || day.isDisabled) {\n return;\n }\n\n // if only one date is already selected\n // and user clicks on previous date\n // start selection from new date\n // but if new date is after initial one\n // than finish selection\n if (this._rangeStack.length === 1) {\n this._rangeStack =\n day.date >= this._rangeStack[0]\n ? [this._rangeStack[0], day.date]\n : [day.date];\n }\n\n if (this._rangeStack.length === 0) {\n this._rangeStack = [day.date];\n }\n\n this._store.dispatch(this._actions.selectRange(this._rangeStack));\n\n if (this._rangeStack.length === 2) {\n this._rangeStack = [];\n }\n }\n\n ngOnDestroy(): void {\n for (const sub of this._subs) {\n sub.unsubscribe();\n }\n this._effects.destroy();\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bs-daterangepicker-container',\n providers: [BsDatepickerStore, BsDatepickerEffects],\n template: \"
1\\\" [calendar]=\\\"calendar\\\" [options]=\\\"options | async\\\" (onNavigate)=\\\"navigateTo($event)\\\" (onViewMode)=\\\"setViewMode($event)\\\" (onHover)=\\\"dayHoverHandler($event)\\\" (onSelect)=\\\"daySelectHandler($event)\\\" >
1\\\" [calendar]=\\\"calendar\\\" (onNavigate)=\\\"navigateTo($event)\\\" (onViewMode)=\\\"setViewMode($event)\\\" (onHover)=\\\"monthHoverHandler($event)\\\" (onSelect)=\\\"monthSelectHandler($event)\\\" >
1\\\" [calendar]=\\\"calendar\\\" (onNavigate)=\\\"navigateTo($event)\\\" (onViewMode)=\\\"setViewMode($event)\\\" (onHover)=\\\"yearHoverHandler($event)\\\" (onSelect)=\\\"yearSelectHandler($event)\\\" >
\",\n host: {\n '(click)': '_stopPropagation($event)',\n style: 'position: absolute; display: block;'\n }\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: BsDatepickerConfig, },\n{type: BsDatepickerStore, },\n{type: BsDatepickerActions, },\n{type: BsDatepickerEffects, },\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../../.tmp/datepicker/themes/bs/bs-daterangepicker-container.component.ts","import {\n Component,\n EventEmitter,\n Input,\n Output\n} from '@angular/core';\nimport {\n BsDatepickerViewMode,\n BsNavigationDirection,\n BsNavigationEvent,\n CellHoverEvent,\n DatepickerRenderOptions,\n DaysCalendarViewModel,\n DayViewModel\n} from '../../models/index';\n\n\nexport class BsDaysCalendarViewComponent {\n calendar: DaysCalendarViewModel;\n options: DatepickerRenderOptions;\n\n onNavigate = new EventEmitter();\n onViewMode = new EventEmitter();\n\n onSelect = new EventEmitter();\n onHover = new EventEmitter();\n\n navigateTo(event: BsNavigationDirection): void {\n const step = BsNavigationDirection.DOWN === event ? -1 : 1;\n this.onNavigate.emit({ step: { month: step } });\n }\n\n changeViewMode(event: BsDatepickerViewMode): void {\n this.onViewMode.emit(event);\n }\n\n selectDay(event: DayViewModel): void {\n this.onSelect.emit(event);\n }\n\n hoverDay(cell: DayViewModel, isHovered: boolean): void {\n this.onHover.emit({ cell, isHovered });\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bs-days-calendar-view',\n // changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{ calendar.weekdays[i] }}\n
\n {{ calendar.weekNumbers[i] }}\n \n {{ day.label }}\n
\n\n
\n `\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'calendar': [{ type: Input },],\n'options': [{ type: Input },],\n'onNavigate': [{ type: Output },],\n'onViewMode': [{ type: Output },],\n'onSelect': [{ type: Output },],\n'onHover': [{ type: Output },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../../.tmp/datepicker/themes/bs/bs-days-calendar-view.component.ts","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport {\n BsDatepickerViewMode,\n BsNavigationDirection,\n BsNavigationEvent,\n CellHoverEvent,\n MonthsCalendarViewModel,\n CalendarCellViewModel\n} from '../../models/index';\n\n\nexport class BsMonthCalendarViewComponent {\n calendar: MonthsCalendarViewModel;\n\n onNavigate = new EventEmitter();\n onViewMode = new EventEmitter();\n\n onSelect = new EventEmitter();\n onHover = new EventEmitter();\n\n navigateTo(event: BsNavigationDirection): void {\n const step = BsNavigationDirection.DOWN === event ? -1 : 1;\n this.onNavigate.emit({ step: { year: step } });\n }\n\n viewMonth(month: CalendarCellViewModel) {\n this.onSelect.emit(month);\n }\n\n hoverMonth(cell: CalendarCellViewModel, isHovered: boolean) {\n this.onHover.emit({ cell, isHovered });\n }\n\n changeViewMode(event: BsDatepickerViewMode): void {\n this.onViewMode.emit(event);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bs-month-calendar-view',\n template: `\n \n \n\n \n \n \n \n \n \n
\n {{ month.label }}\n
\n
\n `\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'calendar': [{ type: Input },],\n'onNavigate': [{ type: Output },],\n'onViewMode': [{ type: Output },],\n'onSelect': [{ type: Output },],\n'onHover': [{ type: Output },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../../.tmp/datepicker/themes/bs/bs-months-calendar-view.component.ts","// tslint:disable:max-line-length\nimport { Component } from '@angular/core';\n\n\nexport class BsTimepickerViewComponent {\n ampm = 'ok';\n hours = 0;\n minutes = 0;\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bs-timepicker',\n template: `\n
\n
\n \n \n \n
\n
\n \n \n \n
\n \n
\n `\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../../.tmp/datepicker/themes/bs/bs-timepicker-view.component.ts","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { yearsPerCalendar } from '../../engine/format-years-calendar';\nimport {\n BsDatepickerViewMode,\n BsNavigationDirection,\n BsNavigationEvent,\n CalendarCellViewModel,\n CellHoverEvent,\n YearsCalendarViewModel\n} from '../../models/index';\n\n\nexport class BsYearsCalendarViewComponent {\n calendar: YearsCalendarViewModel;\n\n onNavigate = new EventEmitter();\n onViewMode = new EventEmitter();\n\n onSelect = new EventEmitter();\n onHover = new EventEmitter();\n\n navigateTo(event: BsNavigationDirection): void {\n const step = BsNavigationDirection.DOWN === event ? -1 : 1;\n this.onNavigate.emit({ step: { year: step * yearsPerCalendar } });\n }\n\n viewYear(year: CalendarCellViewModel) {\n this.onSelect.emit(year);\n }\n\n hoverYear(cell: CalendarCellViewModel, isHovered: boolean) {\n this.onHover.emit({ cell, isHovered });\n }\n\n changeViewMode(event: BsDatepickerViewMode): void {\n this.onViewMode.emit(event);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bs-years-calendar-view',\n template: `\n \n \n\n \n \n \n \n \n \n
\n {{ year.label }}\n
\n
\n `\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'calendar': [{ type: Input },],\n'onNavigate': [{ type: Output },],\n'onViewMode': [{ type: Output },],\n'onSelect': [{ type: Output },],\n'onHover': [{ type: Output },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../../.tmp/datepicker/themes/bs/bs-years-calendar-view.component.ts","import {\n getDayOfWeek,\n isFirstDayOfWeek\n} from '../../bs-moment/utils/date-getters';\nimport { shiftDate } from '../../bs-moment/utils/date-setters';\nimport {\n isSameOrAfter,\n isSameOrBefore\n} from '../../bs-moment/utils/date-compare';\nimport { endOf, startOf } from '../../bs-moment/utils/start-end-of';\n\nexport function getStartingDayOfCalendar(\n date: Date,\n options: { firstDayOfWeek?: number }\n): Date {\n if (isFirstDayOfWeek(date, options.firstDayOfWeek)) {\n return date;\n }\n\n const weekDay = getDayOfWeek(date);\n\n return shiftDate(date, { day: -weekDay });\n}\n\nexport function isMonthDisabled(date: Date, min: Date, max: Date): boolean {\n const minBound = min && isSameOrBefore(endOf(date, 'month'), min, 'day');\n const maxBound = max && isSameOrAfter(startOf(date, 'month'), max, 'day');\n\n return minBound || maxBound;\n}\n\nexport function isYearDisabled(date: Date, min: Date, max: Date): boolean {\n const minBound = min && isSameOrBefore(endOf(date, 'year'), min, 'day');\n const maxBound = max && isSameOrAfter(startOf(date, 'year'), max, 'day');\n\n return minBound || maxBound;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/datepicker/utils/bs-calendar-utils.ts","import { TimeUnit } from '../../bs-moment/types';\nimport { shiftDate } from '../../bs-moment/utils/date-setters';\n\nexport type CreateMatrixCb = (date: Date) => T;\n\nexport interface MatrixOptions {\n height: number;\n width: number;\n initialDate: Date;\n shift: TimeUnit;\n}\n\nexport function createMatrix(\n options: MatrixOptions,\n fn: CreateMatrixCb\n): T[][] {\n let prevValue = options.initialDate;\n const matrix: T[][] = new Array(options.height);\n for (let i = 0; i < options.height; i++) {\n matrix[i] = new Array(options.width);\n for (let j = 0; j < options.width; j++) {\n matrix[i][j] = fn(prevValue);\n prevValue = shiftDate(prevValue, options.shift);\n }\n }\n\n return matrix;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/datepicker/utils/matrix-utils.ts","// @deprecated\n// tslint:disable\nimport { Component, OnInit } from '@angular/core';\n\nimport { isBs3 } from '../utils/theme-provider';\nimport { DatePickerInnerComponent } from './datepicker-inner.component';\n\n\nexport class YearPickerComponent implements OnInit {\n datePicker: DatePickerInnerComponent;\n title: string;\n rows: any[] = [];\n\n constructor(datePicker: DatePickerInnerComponent) {\n this.datePicker = datePicker;\n }\n\n get isBs4(): boolean {\n return !isBs3();\n }\n\n ngOnInit(): void {\n const self = this;\n\n this.datePicker.stepYear = { years: this.datePicker.yearRange };\n\n this.datePicker.setRefreshViewHandler(function(): void {\n const years: any[] = new Array(this.yearRange);\n let date: Date;\n const start = self.getStartingYear(this.activeDate.getFullYear());\n\n for (let i = 0; i < this.yearRange; i++) {\n date = new Date(start + i, 0, 1);\n date = this.fixTimeZone(date);\n years[i] = this.createDateObject(date, this.formatYear);\n years[i].uid = this.uniqueId + '-' + i;\n }\n\n self.title = [years[0].label, years[this.yearRange - 1].label].join(\n ' - '\n );\n self.rows = this.split(years, self.datePicker.yearColLimit);\n }, 'year');\n\n this.datePicker.setCompareHandler(function(\n date1: Date,\n date2: Date\n ): number {\n return date1.getFullYear() - date2.getFullYear();\n }, 'year');\n\n this.datePicker.refreshView();\n }\n\n protected getStartingYear(year: number): number {\n // todo: parseInt\n return (\n (year - 1) / this.datePicker.yearRange * this.datePicker.yearRange + 1\n );\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'yearpicker',\n template: `\n\n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n \n \n
\n \n
\n `,\n styles: [\n `\n :host .btn-info .text-success {\n color: #fff !important;\n }\n `\n ]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: DatePickerInnerComponent, },\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/datepicker/yearpicker.component.ts","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n OnDestroy,\n Renderer2\n} from '@angular/core';\nimport { BsDropdownState } from './bs-dropdown.state';\n\n\nexport class BsDropdownContainerComponent implements OnDestroy {\n isOpen = false;\n\n get direction(): 'down' | 'up' {\n return this._state.direction;\n }\n\n private _subscription: any;\n\n constructor(\n private _state: BsDropdownState,\n private cd: ChangeDetectorRef,\n private _renderer: Renderer2,\n _element: ElementRef\n ) {\n this._subscription = _state.isOpenChange.subscribe((value: boolean) => {\n this.isOpen = value;\n const dropdown = _element.nativeElement.querySelector('.dropdown-menu');\n if (dropdown) {\n this._renderer.addClass(dropdown, 'show');\n if (dropdown.classList.contains('dropdown-menu-right')) {\n this._renderer.setStyle(dropdown, 'left', 'auto');\n this._renderer.setStyle(dropdown, 'right', '0');\n }\n if (this.direction === 'up') {\n this._renderer.setStyle(dropdown, 'top', 'auto');\n this._renderer.setStyle(\n dropdown,\n 'transform',\n 'translateY(-101%)'\n );\n }\n }\n this.cd.markForCheck();\n this.cd.detectChanges();\n });\n }\n\n ngOnDestroy(): void {\n this._subscription.unsubscribe();\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bs-dropdown-container',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n style: 'display:block;position: absolute;'\n },\n template: `\n
\n `\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: BsDropdownState, },\n{type: ChangeDetectorRef, },\n{type: Renderer2, },\n{type: ElementRef, },\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/dropdown/bs-dropdown-container.component.ts","import { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { BsDropdownState } from './bs-dropdown.state';\n\n\nexport class BsDropdownMenuDirective {\n constructor(\n _state: BsDropdownState,\n _viewContainer: ViewContainerRef,\n _templateRef: TemplateRef\n ) {\n _state.resolveDropdownMenu({\n templateRef: _templateRef,\n viewContainer: _viewContainer\n });\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[bsDropdownMenu],[dropdownMenu]',\n exportAs: 'bs-dropdown-menu'\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: BsDropdownState, },\n{type: ViewContainerRef, },\n{type: TemplateRef, },\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/dropdown/bs-dropdown-menu.directive.ts","import {\n Directive,\n ElementRef,\n HostBinding,\n HostListener,\n OnDestroy\n} from '@angular/core';\nimport { Subscription } from 'rxjs/Subscription';\n\nimport { BsDropdownState } from './bs-dropdown.state';\n\n\nexport class BsDropdownToggleDirective implements OnDestroy {\n isDisabled: boolean = null;\n\n // @HostBinding('class.active')\n isOpen: boolean;\n\n private _subscriptions: Subscription[] = [];\n\n constructor(private _state: BsDropdownState, private _element: ElementRef) {\n // sync is open value with state\n this._subscriptions.push(\n this._state.isOpenChange.subscribe(\n (value: boolean) => (this.isOpen = value)\n )\n );\n // populate disabled state\n this._subscriptions.push(\n this._state.isDisabledChange.subscribe(\n (value: boolean) => (this.isDisabled = value || null)\n )\n );\n }\n\n \n onClick(event: MouseEvent): void {\n event.stopPropagation();\n if (this.isDisabled) {\n return;\n }\n this._state.toggleClick.emit(true);\n }\n\n \n onDocumentClick(event: any): void {\n if (\n this._state.autoClose &&\n event.button !== 2 &&\n !this._element.nativeElement.contains(event.target)\n ) {\n this._state.toggleClick.emit(false);\n }\n }\n\n \n onEsc(): void {\n if (this._state.autoClose) {\n this._state.toggleClick.emit(false);\n }\n }\n\n ngOnDestroy(): void {\n for (const sub of this._subscriptions) {\n sub.unsubscribe();\n }\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[bsDropdownToggle],[dropdownToggle]',\n exportAs: 'bs-dropdown-toggle',\n host: {\n '[attr.aria-haspopup]': 'true'\n }\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: BsDropdownState, },\n{type: ElementRef, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'isDisabled': [{ type: HostBinding, args: ['attr.disabled', ] },],\n'isOpen': [{ type: HostBinding, args: ['attr.aria-expanded', ] },],\n'onClick': [{ type: HostListener, args: ['click', ['$event'], ] },],\n'onDocumentClick': [{ type: HostListener, args: ['document:click', ['$event'], ] },],\n'onEsc': [{ type: HostListener, args: ['keyup.esc', ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/dropdown/bs-dropdown-toggle.directive.ts","import { Injectable } from '@angular/core';\n\n/** Default dropdown configuration */\n\nexport class BsDropdownConfig {\n /** default dropdown auto closing behavior */\n autoClose = true;\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/dropdown/bs-dropdown.config.ts","// tslint:disable:max-file-line-count\nimport {\n Directive, ElementRef, EmbeddedViewRef, EventEmitter, Input, OnDestroy,\n OnInit, Output, Renderer2, ViewContainerRef\n} from '@angular/core';\nimport { Subscription } from 'rxjs/Subscription';\nimport 'rxjs/add/operator/filter';\nimport { ComponentLoader, ComponentLoaderFactory } from '../component-loader';\n\nimport { BsDropdownConfig } from './bs-dropdown.config';\nimport { BsDropdownContainerComponent } from './bs-dropdown-container.component';\nimport { BsDropdownState } from './bs-dropdown.state';\nimport { BsComponentRef } from '../component-loader/bs-component-ref.class';\nimport { BsDropdownMenuDirective } from './';\nimport { isBs3 } from '../utils/theme-provider';\n\n\nexport class BsDropdownDirective implements OnInit, OnDestroy {\n /**\n * Placement of a popover. Accepts: \"top\", \"bottom\", \"left\", \"right\"\n */\n placement: string;\n /**\n * Specifies events that should trigger. Supports a space separated list of\n * event names.\n */\n triggers: string;\n /**\n * A selector specifying the element the popover should be appended to.\n * Currently only supports \"body\".\n */\n container: string;\n\n /**\n * This attribute indicates that the dropdown should be opened upwards\n */\n dropup: boolean;\n\n /**\n * Indicates that dropdown will be closed on item or document click,\n * and after pressing ESC\n */\n \n set autoClose(value: boolean) {\n if (typeof value === 'boolean') {\n this._state.autoClose = value;\n }\n }\n\n get autoClose(): boolean {\n return this._state.autoClose;\n }\n\n /**\n * Disables dropdown toggle and hides dropdown menu if opened\n */\n \n set isDisabled(value: boolean) {\n this._isDisabled = value;\n this._state.isDisabledChange.emit(value);\n if (value) {\n this.hide();\n }\n }\n\n get isDisabled(): boolean {\n return this._isDisabled;\n }\n\n /**\n * Returns whether or not the popover is currently being shown\n */\n \n get isOpen(): boolean {\n if (this._showInline) {\n return this._isInlineOpen;\n }\n\n return this._dropdown.isShown;\n }\n\n set isOpen(value: boolean) {\n if (value) {\n this.show();\n } else {\n this.hide();\n }\n }\n\n /**\n * Emits an event when isOpen change\n */\n isOpenChange: EventEmitter;\n\n /**\n * Emits an event when the popover is shown\n */\n onShown: EventEmitter;\n\n /**\n * Emits an event when the popover is hidden\n */\n onHidden: EventEmitter;\n\n get isBs4(): boolean {\n return !isBs3();\n }\n\n // todo: move to component loader\n private _isInlineOpen = false;\n\n private get _showInline(): boolean {\n return !this.container;\n }\n\n private _inlinedMenu: EmbeddedViewRef;\n\n private _isDisabled: boolean;\n private _dropdown: ComponentLoader;\n private _subscriptions: Subscription[] = [];\n private _isInited = false;\n\n constructor(private _elementRef: ElementRef,\n private _renderer: Renderer2,\n private _viewContainerRef: ViewContainerRef,\n private _cis: ComponentLoaderFactory,\n private _config: BsDropdownConfig,\n private _state: BsDropdownState) {\n // create dropdown component loader\n this._dropdown = this._cis\n .createLoader(\n this._elementRef,\n this._viewContainerRef,\n this._renderer\n )\n .provide({provide: BsDropdownState, useValue: this._state});\n\n this.onShown = this._dropdown.onShown;\n this.onHidden = this._dropdown.onHidden;\n this.isOpenChange = this._state.isOpenChange;\n\n // set initial dropdown state from config\n this._state.autoClose = this._config.autoClose;\n }\n\n ngOnInit(): void {\n // fix: seems there are an issue with `routerLinkActive`\n // which result in duplicated call ngOnInit without call to ngOnDestroy\n // read more: https://github.com/valor-software/ngx-bootstrap/issues/1885\n if (this._isInited) {\n return;\n }\n this._isInited = true;\n\n // attach DOM listeners\n this._dropdown.listen({\n triggers: this.triggers,\n show: () => this.show()\n });\n\n // toggle visibility on toggle element click\n this._subscriptions.push(\n this._state.toggleClick.subscribe((value: boolean) => this.toggle(value))\n );\n\n // hide dropdown if set disabled while opened\n this._subscriptions.push(\n this._state.isDisabledChange\n .filter((value: boolean) => value)\n .subscribe((value: boolean) => this.hide())\n );\n }\n\n /**\n * Opens an element’s popover. This is considered a “manual” triggering of\n * the popover.\n */\n show(): void {\n if (this.isOpen || this.isDisabled) {\n return;\n }\n\n if (this._showInline) {\n if (!this._inlinedMenu) {\n this._state.dropdownMenu.then(\n (dropdownMenu: BsComponentRef) => {\n this._dropdown.attachInline(\n dropdownMenu.viewContainer,\n dropdownMenu.templateRef\n );\n this._inlinedMenu = this._dropdown._inlineViewRef;\n this.addBs4Polyfills();\n }\n )\n // swallow errors\n .catch();\n }\n this.addBs4Polyfills();\n this._isInlineOpen = true;\n this.onShown.emit(true);\n this._state.isOpenChange.emit(true);\n\n return;\n }\n this._state.dropdownMenu.then(dropdownMenu => {\n // check direction in which dropdown should be opened\n const _dropup =\n this.dropup ||\n (typeof this.dropup !== 'undefined' && this.dropup);\n this._state.direction = _dropup ? 'up' : 'down';\n const _placement =\n this.placement || (_dropup ? 'top left' : 'bottom left');\n\n // show dropdown\n this._dropdown\n .attach(BsDropdownContainerComponent)\n .to(this.container)\n .position({attachment: _placement})\n .show({\n content: dropdownMenu.templateRef,\n placement: _placement\n });\n\n this._state.isOpenChange.emit(true);\n })\n // swallow error\n .catch();\n }\n\n /**\n * Closes an element’s popover. This is considered a “manual” triggering of\n * the popover.\n */\n hide(): void {\n if (!this.isOpen) {\n return;\n }\n\n if (this._showInline) {\n this.removeShowClass();\n this._isInlineOpen = false;\n this.onHidden.emit(true);\n } else {\n this._dropdown.hide();\n }\n\n this._state.isOpenChange.emit(false);\n }\n\n /**\n * Toggles an element’s popover. This is considered a “manual” triggering of\n * the popover.\n */\n toggle(value?: boolean): void {\n if (this.isOpen || !value) {\n return this.hide();\n }\n\n return this.show();\n }\n\n ngOnDestroy(): void {\n // clean up subscriptions and destroy dropdown\n for (const sub of this._subscriptions) {\n sub.unsubscribe();\n }\n this._dropdown.dispose();\n }\n\n private addBs4Polyfills(): void {\n if (!isBs3()) {\n this.addShowClass();\n this.checkRightAlignment();\n this.checkDropup();\n }\n }\n\n private addShowClass(): void {\n if (this._inlinedMenu && this._inlinedMenu.rootNodes[0]) {\n this._renderer.addClass(this._inlinedMenu.rootNodes[0], 'show');\n }\n }\n\n private removeShowClass(): void {\n if (this._inlinedMenu && this._inlinedMenu.rootNodes[0]) {\n this._renderer.removeClass(this._inlinedMenu.rootNodes[0], 'show');\n }\n }\n\n private checkRightAlignment(): void {\n if (this._inlinedMenu && this._inlinedMenu.rootNodes[0]) {\n const isRightAligned = this._inlinedMenu.rootNodes[0].classList.contains(\n 'dropdown-menu-right'\n );\n this._renderer.setStyle(\n this._inlinedMenu.rootNodes[0],\n 'left',\n isRightAligned ? 'auto' : '0'\n );\n this._renderer.setStyle(\n this._inlinedMenu.rootNodes[0],\n 'right',\n isRightAligned ? '0' : 'auto'\n );\n }\n }\n\n private checkDropup(): void {\n if (this._inlinedMenu && this._inlinedMenu.rootNodes[0]) {\n // a little hack to not break support of bootstrap 4 beta\n const top = getComputedStyle(this._inlinedMenu.rootNodes[0]).top;\n const topAuto = top === 'auto' || top === '100%';\n this._renderer.setStyle(\n this._inlinedMenu.rootNodes[0],\n 'top',\n this.dropup ? 'auto' : '100%'\n );\n this._renderer.setStyle(\n this._inlinedMenu.rootNodes[0],\n 'transform',\n this.dropup && !topAuto ? 'translateY(-101%)' : 'translateY(0)'\n );\n }\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[bsDropdown],[dropdown]',\n exportAs: 'bs-dropdown',\n providers: [BsDropdownState],\n host: {\n '[class.dropup]': 'dropup',\n '[class.open]': 'isOpen',\n '[class.show]': 'isOpen && isBs4'\n }\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ElementRef, },\n{type: Renderer2, },\n{type: ViewContainerRef, },\n{type: ComponentLoaderFactory, },\n{type: BsDropdownConfig, },\n{type: BsDropdownState, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'placement': [{ type: Input },],\n'triggers': [{ type: Input },],\n'container': [{ type: Input },],\n'dropup': [{ type: Input },],\n'autoClose': [{ type: Input },],\n'isDisabled': [{ type: Input },],\n'isOpen': [{ type: Input },],\n'isOpenChange': [{ type: Output },],\n'onShown': [{ type: Output },],\n'onHidden': [{ type: Output },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/dropdown/bs-dropdown.directive.ts","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { ComponentLoaderFactory } from '../component-loader';\n\nimport { PositioningService } from '../positioning';\nimport { BsDropdownContainerComponent } from './bs-dropdown-container.component';\nimport { BsDropdownMenuDirective } from './bs-dropdown-menu.directive';\nimport { BsDropdownToggleDirective } from './bs-dropdown-toggle.directive';\nimport { BsDropdownConfig } from './bs-dropdown.config';\n\nimport { BsDropdownDirective } from './bs-dropdown.directive';\nimport { BsDropdownState } from './bs-dropdown.state';\n\n\nexport class BsDropdownModule {\n static forRoot(config?: any): ModuleWithProviders {\n return {\n ngModule: BsDropdownModule,\n providers: [\n ComponentLoaderFactory,\n PositioningService,\n BsDropdownState,\n {\n provide: BsDropdownConfig,\n useValue: config ? config : { autoClose: true }\n }\n ]\n };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n declarations: [\n BsDropdownMenuDirective,\n BsDropdownToggleDirective,\n BsDropdownContainerComponent,\n BsDropdownDirective\n ],\n exports: [\n BsDropdownMenuDirective,\n BsDropdownToggleDirective,\n BsDropdownDirective\n ],\n entryComponents: [BsDropdownContainerComponent]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/dropdown/bs-dropdown.module.ts","import { EventEmitter, Injectable } from '@angular/core';\nimport { BsComponentRef } from '../component-loader/bs-component-ref.class';\n\n\nexport class BsDropdownState {\n direction: 'down' | 'up' = 'down';\n autoClose: boolean;\n isOpenChange = new EventEmitter();\n isDisabledChange = new EventEmitter();\n toggleClick = new EventEmitter();\n\n /**\n * Content to be displayed as popover.\n */\n dropdownMenu: Promise>;\n resolveDropdownMenu: (componentRef: BsComponentRef) => void;\n\n constructor() {\n this.dropdownMenu = new Promise(resolve => {\n this.resolveDropdownMenu = resolve;\n });\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/dropdown/bs-dropdown.state.ts","export { BsDropdownDirective } from './bs-dropdown.directive';\nexport { BsDropdownMenuDirective } from './bs-dropdown-menu.directive';\nexport { BsDropdownToggleDirective } from './bs-dropdown-toggle.directive';\nexport {\n BsDropdownContainerComponent\n} from './bs-dropdown-container.component';\nexport { BsDropdownState } from './bs-dropdown.state';\nexport { BsDropdownConfig } from './bs-dropdown.config';\nexport { BsDropdownModule } from './bs-dropdown.module';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/dropdown/index.ts","/* tslint:disable: max-classes-per-file */\nimport { ModuleWithProviders, NgModule } from '@angular/core';\nimport { AccordionModule } from './accordion/accordion.module';\nimport { AlertModule } from './alert/alert.module';\nimport { ButtonsModule } from './buttons/buttons.module';\nimport { CarouselModule } from './carousel/carousel.module';\nimport { CollapseModule } from './collapse/collapse.module';\nimport { DatepickerModule } from './datepicker/datepicker.module';\nimport { BsDropdownModule } from './dropdown/bs-dropdown.module';\nimport { ModalModule } from './modal/modal.module';\nimport { PaginationModule } from './pagination/pagination.module';\nimport { ProgressbarModule } from './progressbar/progressbar.module';\nimport { RatingModule } from './rating/rating.module';\nimport { SortableModule } from './sortable';\nimport { TabsModule } from './tabs/tabs.module';\nimport { TimepickerModule } from './timepicker/timepicker.module';\nimport { TooltipModule } from './tooltip/tooltip.module';\nimport { TypeaheadModule } from './typeahead/typeahead.module';\nimport { PopoverModule } from './popover/popover.module';\n\nexport {\n AccordionComponent,\n AccordionConfig,\n AccordionModule,\n AccordionPanelComponent\n} from './accordion';\n\nexport { AlertComponent, AlertConfig, AlertModule } from './alert';\n\nexport {\n ButtonCheckboxDirective,\n ButtonRadioDirective,\n ButtonsModule\n} from './buttons';\n\nexport {\n CarouselComponent,\n CarouselConfig,\n CarouselModule,\n SlideComponent\n} from './carousel';\n\nexport { CollapseDirective, CollapseModule } from './collapse';\n\nexport {\n DateFormatter,\n DatePickerComponent,\n DatepickerConfig,\n DatepickerModule,\n DayPickerComponent,\n MonthPickerComponent,\n YearPickerComponent,\n BsDatepickerModule\n} from './datepicker';\n\nexport {\n ModalDirective,\n ModalOptions,\n ModalBackdropOptions,\n ModalBackdropComponent,\n ModalModule,\n BsModalRef,\n BsModalService\n} from './modal';\n\nexport {\n BsDropdownModule,\n BsDropdownConfig,\n BsDropdownState,\n BsDropdownContainerComponent,\n BsDropdownDirective,\n BsDropdownMenuDirective,\n BsDropdownToggleDirective\n} from './dropdown';\n\nexport {\n PagerComponent,\n PaginationComponent,\n PaginationConfig,\n PaginationModule\n} from './pagination';\n\nexport {\n BarComponent,\n ProgressbarComponent,\n ProgressbarConfig,\n ProgressbarModule,\n ProgressDirective\n} from './progressbar';\n\nexport { RatingComponent, RatingModule } from './rating';\n\nexport {\n DraggableItem,\n DraggableItemService,\n SortableItem,\n SortableComponent,\n SortableModule\n} from './sortable';\n\nexport {\n NgTranscludeDirective,\n TabDirective,\n TabHeadingDirective,\n TabsetComponent,\n TabsetConfig,\n TabsModule\n} from './tabs';\n\nexport {\n TimepickerComponent,\n TimepickerConfig,\n TimepickerModule\n} from './timepicker';\n\nexport {\n TooltipConfig,\n TooltipContainerComponent,\n TooltipDirective,\n TooltipModule\n} from './tooltip';\n\nexport {\n TypeaheadOptions,\n TypeaheadContainerComponent,\n TypeaheadDirective,\n TypeaheadMatch,\n TypeaheadModule\n} from './typeahead';\n\nexport {\n PopoverConfig,\n PopoverContainerComponent,\n PopoverDirective,\n PopoverModule\n} from './popover';\n\nexport { OnChange, LinkedList, isBs3, Trigger, Utils } from './utils';\n\nexport {\n ComponentLoader,\n ComponentLoaderFactory,\n ContentRef\n} from './component-loader';\n\nexport {\n Positioning,\n PositioningOptions,\n PositioningService,\n positionElements\n} from './positioning';\n\nexport { defineLocale, getSetGlobalLocale } from './bs-moment';\n\nconst MODULES = [\n AccordionModule,\n AlertModule,\n ButtonsModule,\n CarouselModule,\n CollapseModule,\n DatepickerModule,\n BsDropdownModule,\n ModalModule,\n PaginationModule,\n ProgressbarModule,\n PopoverModule,\n RatingModule,\n TabsModule,\n TimepickerModule,\n TooltipModule,\n TypeaheadModule\n];\n\n\nexport class BsRootModule {static decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [\n AccordionModule.forRoot(),\n AlertModule.forRoot(),\n ButtonsModule.forRoot(),\n CarouselModule.forRoot(),\n CollapseModule.forRoot(),\n DatepickerModule.forRoot(),\n BsDropdownModule.forRoot(),\n ModalModule.forRoot(),\n PaginationModule.forRoot(),\n ProgressbarModule.forRoot(),\n PopoverModule.forRoot(),\n RatingModule.forRoot(),\n TabsModule.forRoot(),\n TimepickerModule.forRoot(),\n TooltipModule.forRoot(),\n TypeaheadModule.forRoot(),\n SortableModule.forRoot()\n ],\n exports: MODULES\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\n\nexport class Ng2BootstrapModule {\n static forRoot(): ModuleWithProviders {\n return { ngModule: BsRootModule };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{ exports: MODULES }, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../.tmp/index.ts","/**\n * @copyright ngrx\n */\nimport { BehaviorSubject } from 'rxjs/BehaviorSubject';\nimport { Observable } from 'rxjs/Observable';\nimport { Action, ActionReducer } from './index';\nimport { observeOn } from 'rxjs/operator/observeOn';\nimport { queue } from 'rxjs/scheduler/queue';\nimport { scan } from 'rxjs/operator/scan';\n\nexport class MiniState extends BehaviorSubject {\n constructor(\n _initialState: T,\n actionsDispatcher$: Observable,\n reducer: ActionReducer\n ) {\n super(_initialState);\n\n const actionInQueue$ = observeOn.call(actionsDispatcher$, queue);\n const state$ = scan.call(\n actionInQueue$,\n (state: T, action: Action) => {\n if (!action) {\n return state;\n }\n\n return reducer(state, action);\n },\n _initialState\n );\n\n state$.subscribe((value: T) => this.next(value));\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/mini-ngrx/state.class.ts","/**\n * @copyright ngrx\n */\nimport { Observable } from 'rxjs/Observable';\nimport { Observer } from 'rxjs/Observer';\nimport { Operator } from 'rxjs/Operator';\nimport { distinctUntilChanged } from 'rxjs/operator/distinctUntilChanged';\n\nimport { map } from 'rxjs/operator/map';\nimport { Action, ActionReducer } from './index';\n\nexport class MiniStore extends Observable implements Observer {\n constructor(\n private _dispatcher: Observer,\n private _reducer: ActionReducer,\n state$: Observable\n ) {\n super();\n\n this.source = state$;\n }\n\n select(pathOrMapFn: (state: T) => R): Observable {\n const mapped$: Observable = map.call(this, pathOrMapFn);\n\n return distinctUntilChanged.call(mapped$);\n }\n\n lift(operator: Operator): MiniStore {\n const store = new MiniStore(this._dispatcher, this._reducer, this);\n store.operator = operator;\n\n return store;\n }\n\n dispatch(action: Action) {\n this._dispatcher.next(action);\n }\n\n next(action: Action) {\n this._dispatcher.next(action);\n }\n\n error(err: any) {\n this._dispatcher.error(err);\n }\n\n complete() {\n /*noop*/\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/mini-ngrx/store.class.ts","import { Injectable } from '@angular/core';\n\n\nexport class BsModalRef {\n /**\n * Reference to a component inside the modal. Null if modal's been created with TemplateRef\n */\n content?: any | null;\n\n /**\n * Hides the modal\n */\n hide: () => void = Function;\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/modal/bs-modal-ref.service.ts","import {\n ComponentRef,\n Injectable,\n TemplateRef,\n EventEmitter, Renderer2, RendererFactory2\n} from '@angular/core';\n\nimport { ComponentLoader } from '../component-loader/component-loader.class';\nimport { ComponentLoaderFactory } from '../component-loader/component-loader.factory';\nimport { ModalBackdropComponent } from './modal-backdrop.component';\nimport { ModalContainerComponent } from './modal-container.component';\nimport {\n CLASS_NAME,\n modalConfigDefaults,\n ModalOptions,\n TRANSITION_DURATIONS\n} from './modal-options.class';\nimport { BsModalRef } from './bs-modal-ref.service';\n\n\nexport class BsModalService {\n // constructor props\n config: ModalOptions = modalConfigDefaults;\n\n onShow: EventEmitter = new EventEmitter();\n onShown: EventEmitter = new EventEmitter();\n onHide: EventEmitter = new EventEmitter();\n onHidden: EventEmitter = new EventEmitter();\n\n protected isBodyOverflowing = false;\n protected originalBodyPadding = 0;\n\n protected scrollbarWidth = 0;\n\n protected backdropRef: ComponentRef;\n private _backdropLoader: ComponentLoader;\n private modalsCount = 0;\n private lastDismissReason = '';\n\n private loaders: ComponentLoader[] = [];\n\n private _renderer: Renderer2;\n\n constructor(rendererFactory: RendererFactory2, private clf: ComponentLoaderFactory) {\n this._backdropLoader = this.clf.createLoader(\n null,\n null,\n null\n );\n this._renderer = rendererFactory.createRenderer(null, null);\n }\n\n /** Shows a modal */\n show(content: string | TemplateRef | any, config?: any): BsModalRef {\n this.modalsCount++;\n this._createLoaders();\n this.config = Object.assign({}, modalConfigDefaults, config);\n this._showBackdrop();\n this.lastDismissReason = null;\n\n return this._showModal(content);\n }\n\n hide(level: number) {\n if (this.modalsCount === 1) {\n this._hideBackdrop();\n this.resetScrollbar();\n }\n this.modalsCount = this.modalsCount >= 1 ? this.modalsCount - 1 : 0;\n setTimeout(() => {\n this._hideModal(level);\n this.removeLoaders(level);\n }, this.config.animated ? TRANSITION_DURATIONS.BACKDROP : 0);\n }\n\n _showBackdrop(): void {\n const isBackdropEnabled =\n this.config.backdrop || this.config.backdrop === 'static';\n const isBackdropInDOM =\n !this.backdropRef || !this.backdropRef.instance.isShown;\n\n if (this.modalsCount === 1) {\n this.removeBackdrop();\n\n if (isBackdropEnabled && isBackdropInDOM) {\n this._backdropLoader\n .attach(ModalBackdropComponent)\n .to('body')\n .show({ isAnimated: this.config.animated });\n this.backdropRef = this._backdropLoader._componentRef;\n }\n }\n }\n\n _hideBackdrop(): void {\n if (!this.backdropRef) {\n return;\n }\n this.backdropRef.instance.isShown = false;\n const duration = this.config.animated ? TRANSITION_DURATIONS.BACKDROP : 0;\n setTimeout(() => this.removeBackdrop(), duration);\n }\n\n _showModal(content: any): BsModalRef {\n const modalLoader = this.loaders[this.loaders.length - 1];\n const bsModalRef = new BsModalRef();\n const modalContainerRef = modalLoader\n .provide({ provide: ModalOptions, useValue: this.config })\n .provide({ provide: BsModalRef, useValue: bsModalRef })\n .attach(ModalContainerComponent)\n .to('body')\n .show({ content, isAnimated: this.config.animated });\n modalContainerRef.instance.level = this.getModalsCount();\n bsModalRef.hide = () => {\n modalContainerRef.instance.hide();\n };\n bsModalRef.content = modalLoader.getInnerComponent() || null;\n\n return bsModalRef;\n }\n\n _hideModal(level: number): void {\n const modalLoader = this.loaders[level - 1];\n if (modalLoader) {\n modalLoader.hide();\n }\n }\n\n getModalsCount(): number {\n return this.modalsCount;\n }\n\n setDismissReason(reason: string) {\n this.lastDismissReason = reason;\n }\n\n removeBackdrop(): void {\n this._backdropLoader.hide();\n this.backdropRef = null;\n }\n\n /** AFTER PR MERGE MODAL.COMPONENT WILL BE USING THIS CODE */\n /** Scroll bar tricks */\n /** @internal */\n checkScrollbar(): void {\n this.isBodyOverflowing = document.body.clientWidth < window.innerWidth;\n this.scrollbarWidth = this.getScrollbarWidth();\n }\n\n setScrollbar(): void {\n if (!document) {\n return;\n }\n\n this.originalBodyPadding = parseInt(\n window\n .getComputedStyle(document.body)\n .getPropertyValue('padding-right') || '0',\n 10\n );\n\n if (this.isBodyOverflowing) {\n document.body.style.paddingRight = `${this.originalBodyPadding +\n this.scrollbarWidth}px`;\n }\n }\n\n private resetScrollbar(): void {\n document.body.style.paddingRight = `${this.originalBodyPadding}px`;\n }\n\n // thx d.walsh\n private getScrollbarWidth(): number {\n const scrollDiv = this._renderer.createElement('div');\n this._renderer.addClass(scrollDiv, CLASS_NAME.SCROLLBAR_MEASURER);\n this._renderer.appendChild(document.body, scrollDiv);\n const scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth;\n this._renderer.removeChild(document.body, scrollDiv);\n\n return scrollbarWidth;\n }\n\n private _createLoaders(): void {\n const loader = this.clf.createLoader(\n null,\n null,\n null\n );\n this.copyEvent(loader.onBeforeShow, this.onShow);\n this.copyEvent(loader.onShown, this.onShown);\n this.copyEvent(loader.onBeforeHide, this.onHide);\n this.copyEvent(loader.onHidden, this.onHidden);\n this.loaders.push(loader);\n }\n\n private removeLoaders(level: number): void {\n this.loaders.splice(level - 1, 1);\n this.loaders.forEach(\n (loader: ComponentLoader, i: number) => {\n loader.instance.level = i + 1;\n }\n );\n }\n\n private copyEvent(from: EventEmitter, to: EventEmitter) {\n from.subscribe(() => {\n to.emit(this.lastDismissReason);\n });\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: RendererFactory2, },\n{type: ComponentLoaderFactory, },\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/modal/bs-modal.service.ts","export { BsModalRef } from './bs-modal-ref.service';\nexport { ModalBackdropOptions } from './modal-backdrop.options';\nexport { ModalContainerComponent } from './modal-container.component';\nexport { ModalBackdropComponent } from './modal-backdrop.component';\nexport { ModalOptions } from './modal-options.class';\nexport { ModalDirective } from './modal.directive';\nexport { ModalModule } from './modal.module';\nexport { BsModalService } from './bs-modal.service';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/modal/index.ts","import { Component, ElementRef, OnInit, Renderer2 } from '@angular/core';\n\nimport { CLASS_NAME } from './modal-options.class';\nimport { isBs3 } from '../utils/theme-provider';\nimport { Utils } from '../utils/utils.class';\n\n\n/** This component will be added as background layout for modals if enabled */\n\nexport class ModalBackdropComponent implements OnInit {\n get isAnimated(): boolean {\n return this._isAnimated;\n }\n\n set isAnimated(value: boolean) {\n this._isAnimated = value;\n // this.renderer.setElementClass(this.element.nativeElement, `${ClassName.FADE}`, value);\n }\n\n get isShown(): boolean {\n return this._isShown;\n }\n\n set isShown(value: boolean) {\n this._isShown = value;\n if (value) {\n this.renderer.addClass(\n this.element.nativeElement,\n `${CLASS_NAME.IN}`\n );\n } else {\n this.renderer.removeClass(\n this.element.nativeElement,\n `${CLASS_NAME.IN}`\n );\n }\n if (!isBs3()) {\n if (value) {\n this.renderer.addClass(\n this.element.nativeElement,\n `${CLASS_NAME.SHOW}`\n );\n } else {\n this.renderer.removeClass(\n this.element.nativeElement,\n `${CLASS_NAME.SHOW}`\n );\n }\n }\n }\n\n element: ElementRef;\n renderer: Renderer2;\n\n protected _isAnimated: boolean;\n protected _isShown = false;\n\n constructor(element: ElementRef, renderer: Renderer2) {\n this.element = element;\n this.renderer = renderer;\n }\n\n ngOnInit(): void {\n if (this.isAnimated) {\n this.renderer.addClass(\n this.element.nativeElement,\n `${CLASS_NAME.FADE}`\n );\n Utils.reflow(this.element.nativeElement);\n }\n this.isShown = true;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bs-modal-backdrop',\n template: ' ',\n host: { class: CLASS_NAME.BACKDROP }\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ElementRef, },\n{type: Renderer2, },\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/modal/modal-backdrop.component.ts","export class ModalBackdropOptions {\n animate = true;\n\n constructor(options: ModalBackdropOptions) {\n Object.assign(this, options);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/modal/modal-backdrop.options.ts","import {\n Component,\n ElementRef,\n HostListener,\n OnDestroy,\n OnInit,\n Renderer2\n} from '@angular/core';\nimport {\n CLASS_NAME,\n DISMISS_REASONS,\n ModalOptions,\n TRANSITION_DURATIONS\n} from './modal-options.class';\nimport { BsModalService } from './bs-modal.service';\nimport { isBs3 } from '../utils/theme-provider';\n\n\nexport class ModalContainerComponent implements OnInit, OnDestroy {\n config: ModalOptions;\n isShown = false;\n level: number;\n isAnimated: boolean;\n private isModalHiding = false;\n\n constructor(options: ModalOptions,\n protected _element: ElementRef,\n private bsModalService: BsModalService,\n private _renderer: Renderer2) {\n this.config = Object.assign({}, options);\n }\n\n ngOnInit(): void {\n if (this.isAnimated) {\n this._renderer.addClass(\n this._element.nativeElement,\n CLASS_NAME.FADE\n );\n }\n this._renderer.setStyle(\n this._element.nativeElement,\n 'display',\n 'block'\n );\n setTimeout(() => {\n this.isShown = true;\n this._renderer.addClass(\n this._element.nativeElement,\n isBs3() ? CLASS_NAME.IN : CLASS_NAME.SHOW\n );\n }, this.isAnimated ? TRANSITION_DURATIONS.BACKDROP : 0);\n if (document && document.body) {\n if (this.bsModalService.getModalsCount() === 1) {\n this.bsModalService.checkScrollbar();\n this.bsModalService.setScrollbar();\n }\n this._renderer.addClass(document.body, CLASS_NAME.OPEN);\n }\n }\n\n \n onClick(event: any): void {\n if (\n this.config.ignoreBackdropClick ||\n this.config.backdrop === 'static' ||\n event.target !== this._element.nativeElement\n ) {\n return;\n }\n this.bsModalService.setDismissReason(DISMISS_REASONS.BACKRDOP);\n this.hide();\n }\n\n \n onEsc(): void {\n if (\n this.config.keyboard &&\n this.level === this.bsModalService.getModalsCount()\n ) {\n this.bsModalService.setDismissReason(DISMISS_REASONS.ESC);\n this.hide();\n }\n }\n\n ngOnDestroy(): void {\n if (this.isShown) {\n this.hide();\n }\n }\n\n hide(): void {\n if (this.isModalHiding || !this.isShown) {\n return;\n }\n this.isModalHiding = true;\n this._renderer.removeClass(\n this._element.nativeElement,\n isBs3() ? CLASS_NAME.IN : CLASS_NAME.SHOW\n );\n setTimeout(() => {\n this.isShown = false;\n if (\n document &&\n document.body &&\n this.bsModalService.getModalsCount() === 1\n ) {\n this._renderer.removeClass(document.body, CLASS_NAME.OPEN);\n }\n this.bsModalService.hide(this.level);\n this.isModalHiding = false;\n }, this.isAnimated ? TRANSITION_DURATIONS.MODAL : 0);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'modal-container',\n template: `\n
\n
\n \n
\n
\n `,\n host: {\n class: 'modal',\n role: 'dialog',\n tabindex: '-1'\n }\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ModalOptions, },\n{type: ElementRef, },\n{type: BsModalService, },\n{type: Renderer2, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'onClick': [{ type: HostListener, args: ['click', ['$event'], ] },],\n'onEsc': [{ type: HostListener, args: ['window:keydown.esc', ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/modal/modal-container.component.ts","import { Injectable } from '@angular/core';\n\n\nexport class ModalOptions {\n /**\n * Includes a modal-backdrop element. Alternatively,\n * specify static for a backdrop which doesn't close the modal on click.\n */\n backdrop?: boolean | 'static';\n /**\n * Closes the modal when escape key is pressed.\n */\n keyboard?: boolean;\n\n focus?: boolean;\n /**\n * Shows the modal when initialized.\n */\n show?: boolean;\n /**\n * Ignore the backdrop click\n */\n ignoreBackdropClick?: boolean;\n /**\n * Css class for opened modal\n */\n class?: string;\n /**\n * Toggle animation\n */\n animated?: boolean;\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\n\nexport const modalConfigDefaults: ModalOptions = {\n backdrop: true,\n keyboard: true,\n focus: true,\n show: false,\n ignoreBackdropClick: false,\n class: '',\n animated: true\n};\n\nexport const CLASS_NAME: any = {\n SCROLLBAR_MEASURER: 'modal-scrollbar-measure',\n BACKDROP: 'modal-backdrop',\n OPEN: 'modal-open',\n FADE: 'fade',\n IN: 'in', // bs3\n SHOW: 'show' // bs4\n};\n\nexport const SELECTOR: any = {\n DIALOG: '.modal-dialog',\n DATA_TOGGLE: '[data-toggle=\"modal\"]',\n DATA_DISMISS: '[data-dismiss=\"modal\"]',\n FIXED_CONTENT: '.navbar-fixed-top, .navbar-fixed-bottom, .is-fixed'\n};\n\nexport const TRANSITION_DURATIONS: any = {\n MODAL: 300,\n BACKDROP: 150\n};\n\nexport const DISMISS_REASONS = {\n BACKRDOP: 'backdrop-click',\n ESC: 'esc'\n};\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/modal/modal-options.class.ts","/* tslint:disable:max-file-line-count */\n// todo: should we support enforce focus in?\n// todo: in original bs there are was a way to prevent modal from showing\n// todo: original modal had resize events\n\nimport {\n ComponentRef, Directive, ElementRef, EventEmitter, HostListener, Input,\n OnDestroy, OnInit, Output, Renderer2, ViewContainerRef\n} from '@angular/core';\n\nimport { document, window } from '../utils/facade/browser';\n\nimport { isBs3 } from '../utils/theme-provider';\nimport { Utils } from '../utils/utils.class';\nimport { ModalBackdropComponent } from './modal-backdrop.component';\nimport {\n CLASS_NAME, DISMISS_REASONS, modalConfigDefaults, ModalOptions\n} from './modal-options.class';\nimport { ComponentLoader } from '../component-loader/component-loader.class';\nimport { ComponentLoaderFactory } from '../component-loader/component-loader.factory';\n\nconst TRANSITION_DURATION = 300;\nconst BACKDROP_TRANSITION_DURATION = 150;\n\n/** Mark any code with directive to show it's content in modal */\n\nexport class ModalDirective implements OnDestroy, OnInit {\n /** allows to set modal configuration via element property */\n \n set config(conf: ModalOptions) {\n this._config = this.getConfig(conf);\n }\n\n get config(): ModalOptions {\n return this._config;\n }\n\n /** This event fires immediately when the `show` instance method is called. */\n \n onShow: EventEmitter = new EventEmitter();\n /** This event is fired when the modal has been made visible to the user\n * (will wait for CSS transitions to complete)\n */\n \n onShown: EventEmitter = new EventEmitter();\n /** This event is fired immediately when\n * the hide instance method has been called.\n */\n \n onHide: EventEmitter = new EventEmitter();\n /** This event is fired when the modal has finished being\n * hidden from the user (will wait for CSS transitions to complete).\n */\n \n onHidden: EventEmitter = new EventEmitter();\n\n // seems like an Options\n isAnimated = true;\n /** This field contains last dismiss reason.\n * Possible values: `backdrop-click`, `esc` and `null`\n * (if modal was closed by direct call of `.hide()`).\n */\n dismissReason: string;\n\n get isShown(): boolean {\n return this._isShown;\n }\n\n protected _config: ModalOptions;\n protected _isShown = false;\n\n protected isBodyOverflowing = false;\n protected originalBodyPadding = 0;\n protected scrollbarWidth = 0;\n\n protected timerHideModal: any = 0;\n protected timerRmBackDrop: any = 0;\n\n // reference to backdrop component\n protected backdrop: ComponentRef;\n private _backdrop: ComponentLoader;\n\n private isNested = false;\n\n constructor(private _element: ElementRef,\n _viewContainerRef: ViewContainerRef,\n private _renderer: Renderer2,\n clf: ComponentLoaderFactory) {\n this._backdrop = clf.createLoader(\n _element,\n _viewContainerRef,\n _renderer\n );\n }\n\n \n onClick(event: any): void {\n if (\n this.config.ignoreBackdropClick ||\n this.config.backdrop === 'static' ||\n event.target !== this._element.nativeElement\n ) {\n return;\n }\n this.dismissReason = DISMISS_REASONS.BACKRDOP;\n this.hide(event);\n }\n\n // todo: consider preventing default and stopping propagation\n \n onEsc(): void {\n if (this.config.keyboard) {\n this.dismissReason = DISMISS_REASONS.ESC;\n this.hide();\n }\n }\n\n ngOnDestroy(): any {\n this.config = void 0;\n if (this._isShown) {\n this._isShown = false;\n this.hideModal();\n this._backdrop.dispose();\n }\n }\n\n ngOnInit(): any {\n this._config = this._config || this.getConfig();\n setTimeout(() => {\n if (this._config.show) {\n this.show();\n }\n }, 0);\n }\n\n /* Public methods */\n\n /** Allows to manually toggle modal visibility */\n toggle(): void {\n return this._isShown ? this.hide() : this.show();\n }\n\n /** Allows to manually open modal */\n show(): void {\n this.dismissReason = null;\n this.onShow.emit(this);\n if (this._isShown) {\n return;\n }\n clearTimeout(this.timerHideModal);\n clearTimeout(this.timerRmBackDrop);\n\n this._isShown = true;\n\n this.checkScrollbar();\n this.setScrollbar();\n\n if (document && document.body) {\n if (document.body.classList.contains(CLASS_NAME.OPEN)) {\n this.isNested = true;\n } else {\n this._renderer.addClass(document.body, CLASS_NAME.OPEN);\n }\n }\n\n this.showBackdrop(() => {\n this.showElement();\n });\n }\n\n /** Allows to manually close modal */\n hide(event?: Event): void {\n if (event) {\n event.preventDefault();\n }\n\n this.onHide.emit(this);\n\n // todo: add an option to prevent hiding\n if (!this._isShown) {\n return;\n }\n\n clearTimeout(this.timerHideModal);\n clearTimeout(this.timerRmBackDrop);\n\n this._isShown = false;\n this._renderer.removeClass(this._element.nativeElement, CLASS_NAME.IN);\n if (!isBs3()) {\n this._renderer.removeClass(this._element.nativeElement, CLASS_NAME.SHOW);\n }\n // this._addClassIn = false;\n\n if (this.isAnimated) {\n this.timerHideModal = setTimeout(\n () => this.hideModal(),\n TRANSITION_DURATION\n );\n } else {\n this.hideModal();\n }\n }\n\n /** Private methods @internal */\n protected getConfig(config?: ModalOptions): ModalOptions {\n return Object.assign({}, modalConfigDefaults, config);\n }\n\n /**\n * Show dialog\n * @internal\n */\n protected showElement(): void {\n // todo: replace this with component loader usage\n if (\n !this._element.nativeElement.parentNode ||\n this._element.nativeElement.parentNode.nodeType !== Node.ELEMENT_NODE\n ) {\n // don't move modals dom position\n if (document && document.body) {\n document.body.appendChild(this._element.nativeElement);\n }\n }\n\n this._renderer.setAttribute(\n this._element.nativeElement,\n 'aria-hidden',\n 'false'\n );\n this._renderer.setStyle(\n this._element.nativeElement,\n 'display',\n 'block'\n );\n this._renderer.setProperty(\n this._element.nativeElement,\n 'scrollTop',\n 0\n );\n\n if (this.isAnimated) {\n Utils.reflow(this._element.nativeElement);\n }\n\n // this._addClassIn = true;\n this._renderer.addClass(this._element.nativeElement, CLASS_NAME.IN);\n if (!isBs3()) {\n this._renderer.addClass(this._element.nativeElement, CLASS_NAME.SHOW);\n }\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.nativeElement.focus();\n }\n this.onShown.emit(this);\n };\n\n if (this.isAnimated) {\n setTimeout(transitionComplete, TRANSITION_DURATION);\n } else {\n transitionComplete();\n }\n }\n\n /** @internal */\n protected hideModal(): void {\n this._renderer.setAttribute(\n this._element.nativeElement,\n 'aria-hidden',\n 'true'\n );\n this._renderer.setStyle(\n this._element.nativeElement,\n 'display',\n 'none'\n );\n this.showBackdrop(() => {\n if (!this.isNested) {\n if (document && document.body) {\n this._renderer.removeClass(document.body, CLASS_NAME.OPEN);\n }\n this.resetScrollbar();\n }\n this.resetAdjustments();\n this.focusOtherModal();\n this.onHidden.emit(this);\n });\n }\n\n // todo: original show was calling a callback when done, but we can use\n // promise\n /** @internal */\n protected showBackdrop(callback?: Function): void {\n if (\n this._isShown &&\n this.config.backdrop &&\n (!this.backdrop || !this.backdrop.instance.isShown)\n ) {\n this.removeBackdrop();\n this._backdrop\n .attach(ModalBackdropComponent)\n .to('body')\n .show({isAnimated: this.isAnimated});\n this.backdrop = this._backdrop._componentRef;\n\n if (!callback) {\n return;\n }\n\n if (!this.isAnimated) {\n callback();\n\n return;\n }\n\n setTimeout(callback, BACKDROP_TRANSITION_DURATION);\n } else if (!this._isShown && this.backdrop) {\n this.backdrop.instance.isShown = false;\n\n const callbackRemove = () => {\n this.removeBackdrop();\n if (callback) {\n callback();\n }\n };\n\n if (this.backdrop.instance.isAnimated) {\n this.timerRmBackDrop = setTimeout(\n callbackRemove,\n BACKDROP_TRANSITION_DURATION\n );\n } else {\n callbackRemove();\n }\n } else if (callback) {\n callback();\n }\n }\n\n /** @internal */\n protected removeBackdrop(): void {\n this._backdrop.hide();\n }\n\n /** Events tricks */\n\n // no need for it\n // protected setEscapeEvent():void {\n // if (this._isShown && this._config.keyboard) {\n // $(this._element).on(Event.KEYDOWN_DISMISS, (event) => {\n // if (event.which === 27) {\n // this.hide()\n // }\n // })\n //\n // } else if (!this._isShown) {\n // $(this._element).off(Event.KEYDOWN_DISMISS)\n // }\n // }\n\n // protected setResizeEvent():void {\n // console.log(this.renderer.listenGlobal('', Event.RESIZE));\n // if (this._isShown) {\n // $(window).on(Event.RESIZE, $.proxy(this._handleUpdate, this))\n // } else {\n // $(window).off(Event.RESIZE)\n // }\n // }\n\n protected focusOtherModal() {\n const otherOpenedModals = this._element.nativeElement.parentElement.querySelectorAll(\n '.in[bsModal]'\n );\n if (!otherOpenedModals.length) {\n return;\n }\n otherOpenedModals[otherOpenedModals.length - 1].focus();\n }\n\n /** @internal */\n protected resetAdjustments(): void {\n this._renderer.setStyle(\n this._element.nativeElement,\n 'paddingLeft',\n ''\n );\n this._renderer.setStyle(\n this._element.nativeElement,\n 'paddingRight',\n ''\n );\n }\n\n /** Scroll bar tricks */\n /** @internal */\n protected checkScrollbar(): void {\n this.isBodyOverflowing = document.body.clientWidth < window.innerWidth;\n this.scrollbarWidth = this.getScrollbarWidth();\n }\n\n protected setScrollbar(): void {\n if (!document) {\n return;\n }\n\n this.originalBodyPadding = parseInt(\n window\n .getComputedStyle(document.body)\n .getPropertyValue('padding-right') || 0,\n 10\n );\n\n if (this.isBodyOverflowing) {\n document.body.style.paddingRight = `${this.originalBodyPadding +\n this.scrollbarWidth}px`;\n }\n }\n\n protected resetScrollbar(): void {\n document.body.style.paddingRight = this.originalBodyPadding;\n }\n\n // thx d.walsh\n protected getScrollbarWidth(): number {\n const scrollDiv = this._renderer.createElement('div');\n this._renderer.addClass(scrollDiv, CLASS_NAME.SCROLLBAR_MEASURER);\n this._renderer.appendChild(document.body, scrollDiv);\n const scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth;\n this._renderer.removeChild(document.body, scrollDiv);\n\n return scrollbarWidth;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[bsModal]',\n exportAs: 'bs-modal'\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ElementRef, },\n{type: ViewContainerRef, },\n{type: Renderer2, },\n{type: ComponentLoaderFactory, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'config': [{ type: Input },],\n'onShow': [{ type: Output },],\n'onShown': [{ type: Output },],\n'onHide': [{ type: Output },],\n'onHidden': [{ type: Output },],\n'onClick': [{ type: HostListener, args: ['click', ['$event'], ] },],\n'onEsc': [{ type: HostListener, args: ['keydown.esc', ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/modal/modal.directive.ts","import { NgModule, ModuleWithProviders } from '@angular/core';\n\nimport { ModalBackdropComponent } from './modal-backdrop.component';\nimport { ModalDirective } from './modal.directive';\nimport { PositioningService } from '../positioning';\nimport { ComponentLoaderFactory } from '../component-loader';\nimport { ModalContainerComponent } from './modal-container.component';\nimport { BsModalService } from './bs-modal.service';\n\n\nexport class ModalModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: ModalModule,\n providers: [BsModalService, ComponentLoaderFactory, PositioningService]\n };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n declarations: [\n ModalBackdropComponent,\n ModalDirective,\n ModalContainerComponent\n ],\n exports: [ModalBackdropComponent, ModalDirective],\n entryComponents: [ModalBackdropComponent, ModalContainerComponent]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/modal/modal.module.ts","export { PagerComponent } from './pager.component';\nexport { PaginationComponent } from './pagination.component';\nexport { PaginationModule } from './pagination.module';\nexport { PaginationConfig } from './pagination.config';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/pagination/index.ts","import {\n Component,\n ElementRef,\n OnInit,\n Renderer2,\n Input,\n Output,\n EventEmitter,\n forwardRef\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { PageChangedEvent } from './pagination.component';\nimport { PaginationConfig } from './pagination.config';\n\nexport const PAGER_CONTROL_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n // tslint:disable-next-line\n useExisting: forwardRef(() => PagerComponent),\n multi: true\n};\n\n\nexport class PagerComponent implements ControlValueAccessor, OnInit {\n config: any;\n /** if `true` aligns each link to the sides of pager */\n align: boolean;\n /** limit number for page links in pager */\n maxSize: number;\n /** if false first and last buttons will be hidden */\n boundaryLinks: boolean;\n /** if false previous and next buttons will be hidden */\n directionLinks: boolean;\n // labels\n /** first button text */\n firstText: string;\n /** previous button text */\n previousText: string;\n /** next button text */\n nextText: string;\n /** last button text */\n lastText: string;\n /** if true current page will in the middle of pages list */\n rotate: boolean;\n // css\n /** add class to
  • */\n pageBtnClass: string;\n\n /** if true pagination component will be disabled */\n disabled: boolean;\n\n /** fired when total pages count changes, $event:number equals to total pages count */\n numPages: EventEmitter = new EventEmitter();\n /** fired when page was changed, $event:{page, itemsPerPage} equals to\n * object with current page index and number of items per page\n */\n \n pageChanged: EventEmitter = new EventEmitter();\n\n /** maximum number of items per page. If value less than 1 will display all items on one page */\n \n get itemsPerPage(): number {\n return this._itemsPerPage;\n }\n\n set itemsPerPage(v: number) {\n this._itemsPerPage = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n /** total number of items in all pages */\n \n get totalItems(): number {\n return this._totalItems;\n }\n\n set totalItems(v: number) {\n this._totalItems = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n get totalPages(): number {\n return this._totalPages;\n }\n\n set totalPages(v: number) {\n this._totalPages = v;\n this.numPages.emit(v);\n if (this.inited) {\n this.selectPage(this.page);\n }\n }\n\n set page(value: number) {\n const _previous = this._page;\n this._page = value > this.totalPages ? this.totalPages : value || 1;\n\n if (_previous === this._page || typeof _previous === 'undefined') {\n return;\n }\n\n this.pageChanged.emit({\n page: this._page,\n itemsPerPage: this.itemsPerPage\n });\n }\n\n get page(): number {\n return this._page;\n }\n\n onChange: any = Function.prototype;\n onTouched: any = Function.prototype;\n\n renderer: Renderer2;\n elementRef: ElementRef;\n\n classMap: string;\n pages: any[];\n\n protected _itemsPerPage: number;\n protected _totalItems: number;\n protected _totalPages: number;\n protected inited = false;\n protected _page = 1;\n\n constructor(renderer: Renderer2,\n elementRef: ElementRef,\n paginationConfig: PaginationConfig) {\n this.renderer = renderer;\n this.elementRef = elementRef;\n if (!this.config) {\n this.configureOptions(\n Object.assign({}, paginationConfig.main, paginationConfig.pager)\n );\n }\n }\n\n configureOptions(config: any): void {\n this.config = Object.assign({}, config);\n }\n\n ngOnInit(): void {\n this.classMap = this.elementRef.nativeElement.getAttribute('class') || '';\n // watch for maxSize\n this.maxSize =\n typeof this.maxSize !== 'undefined' ? this.maxSize : this.config.maxSize;\n this.rotate =\n typeof this.rotate !== 'undefined' ? this.rotate : this.config.rotate;\n this.boundaryLinks =\n typeof this.boundaryLinks !== 'undefined'\n ? this.boundaryLinks\n : this.config.boundaryLinks;\n this.directionLinks =\n typeof this.directionLinks !== 'undefined'\n ? this.directionLinks\n : this.config.directionLinks;\n this.pageBtnClass =\n typeof this.pageBtnClass !== 'undefined'\n ? this.pageBtnClass\n : this.config.pageBtnClass;\n\n // base class\n this.itemsPerPage =\n typeof this.itemsPerPage !== 'undefined'\n ? this.itemsPerPage\n : this.config.itemsPerPage;\n this.totalPages = this.calculateTotalPages();\n // this class\n this.pages = this.getPages(this.page, this.totalPages);\n this.inited = true;\n }\n\n writeValue(value: number): void {\n this.page = value;\n this.pages = this.getPages(this.page, this.totalPages);\n }\n\n getText(key: string): string {\n return (this as any)[`${key}Text`] || this.config[`${key}Text`];\n }\n\n noPrevious(): boolean {\n return this.page === 1;\n }\n\n noNext(): boolean {\n return this.page === this.totalPages;\n }\n\n registerOnChange(fn: (_: any) => {}): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => {}): void {\n this.onTouched = fn;\n }\n\n selectPage(page: number, event?: Event): void {\n if (event) {\n event.preventDefault();\n }\n\n if (!this.disabled) {\n if (event && event.target) {\n const target: any = event.target;\n target.blur();\n }\n this.writeValue(page);\n this.onChange(this.page);\n }\n }\n\n // Create page object used in template\n protected makePage(num: number,\n text: string,\n active: boolean): { number: number; text: string; active: boolean } {\n return {text, number: num, active};\n }\n\n protected getPages(currentPage: number, totalPages: number): any[] {\n const pages: any[] = [];\n\n // Default page limits\n let startPage = 1;\n let endPage = totalPages;\n const isMaxSized =\n typeof this.maxSize !== 'undefined' && this.maxSize < totalPages;\n\n // recompute if maxSize\n if (isMaxSized) {\n if (this.rotate) {\n // Current page is displayed in the middle of the visible ones\n startPage = Math.max(currentPage - Math.floor(this.maxSize / 2), 1);\n endPage = startPage + this.maxSize - 1;\n\n // Adjust if limit is exceeded\n if (endPage > totalPages) {\n endPage = totalPages;\n startPage = endPage - this.maxSize + 1;\n }\n } else {\n // Visible pages are paginated with maxSize\n startPage =\n (Math.ceil(currentPage / this.maxSize) - 1) * this.maxSize + 1;\n\n // Adjust last page if limit is exceeded\n endPage = Math.min(startPage + this.maxSize - 1, totalPages);\n }\n }\n\n // Add page number links\n for (let num = startPage; num <= endPage; num++) {\n const page = this.makePage(num, num.toString(), num === currentPage);\n pages.push(page);\n }\n\n // Add links to move between page sets\n if (isMaxSized && !this.rotate) {\n if (startPage > 1) {\n const previousPageSet = this.makePage(startPage - 1, '...', false);\n pages.unshift(previousPageSet);\n }\n\n if (endPage < totalPages) {\n const nextPageSet = this.makePage(endPage + 1, '...', false);\n pages.push(nextPageSet);\n }\n }\n\n return pages;\n }\n\n // base class\n protected calculateTotalPages(): number {\n const totalPages =\n this.itemsPerPage < 1\n ? 1\n : Math.ceil(this.totalItems / this.itemsPerPage);\n\n return Math.max(totalPages || 0, 1);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'pager',\n template: \" \",\n providers: [PAGER_CONTROL_VALUE_ACCESSOR]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: Renderer2, },\n{type: ElementRef, },\n{type: PaginationConfig, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'align': [{ type: Input },],\n'maxSize': [{ type: Input },],\n'boundaryLinks': [{ type: Input },],\n'directionLinks': [{ type: Input },],\n'firstText': [{ type: Input },],\n'previousText': [{ type: Input },],\n'nextText': [{ type: Input },],\n'lastText': [{ type: Input },],\n'rotate': [{ type: Input },],\n'pageBtnClass': [{ type: Input },],\n'disabled': [{ type: Input },],\n'numPages': [{ type: Output },],\n'pageChanged': [{ type: Output },],\n'itemsPerPage': [{ type: Input },],\n'totalItems': [{ type: Input },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/pagination/pager.component.ts","import {\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnInit,\n Output,\n Renderer2,\n forwardRef\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { PaginationConfig } from './pagination.config';\n\nexport interface PageChangedEvent {\n itemsPerPage: number;\n page: number;\n}\n\nexport const PAGINATION_CONTROL_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n // tslint:disable-next-line\n useExisting: forwardRef(() => PaginationComponent),\n multi: true\n};\n\n\nexport class PaginationComponent implements ControlValueAccessor, OnInit {\n config: any;\n /** if `true` aligns each link to the sides of pager */\n align: boolean;\n /** limit number for page links in pager */\n maxSize: number;\n /** if false first and last buttons will be hidden */\n boundaryLinks: boolean;\n /** if false previous and next buttons will be hidden */\n directionLinks: boolean;\n // labels\n /** first button text */\n firstText: string;\n /** previous button text */\n previousText: string;\n /** next button text */\n nextText: string;\n /** last button text */\n lastText: string;\n /** if true current page will in the middle of pages list */\n rotate: boolean;\n // css\n /** add class to
  • */\n pageBtnClass: string;\n\n /** if true pagination component will be disabled */\n disabled: boolean;\n\n /** fired when total pages count changes, $event:number equals to total pages count */\n numPages: EventEmitter = new EventEmitter();\n /** fired when page was changed, $event:{page, itemsPerPage} equals to object\n * with current page index and number of items per page\n */\n \n pageChanged = new EventEmitter();\n\n /** maximum number of items per page. If value less than 1 will display all items on one page */\n \n get itemsPerPage(): number {\n return this._itemsPerPage;\n }\n\n set itemsPerPage(v: number) {\n this._itemsPerPage = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n /** total number of items in all pages */\n \n get totalItems(): number {\n return this._totalItems;\n }\n\n set totalItems(v: number) {\n this._totalItems = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n get totalPages(): number {\n return this._totalPages;\n }\n\n set totalPages(v: number) {\n this._totalPages = v;\n this.numPages.emit(v);\n if (this.inited) {\n this.selectPage(this.page);\n }\n }\n\n set page(value: number) {\n const _previous = this._page;\n this._page = value > this.totalPages ? this.totalPages : value || 1;\n\n if (_previous === this._page || typeof _previous === 'undefined') {\n return;\n }\n\n this.pageChanged.emit({\n page: this._page,\n itemsPerPage: this.itemsPerPage\n });\n }\n\n get page(): number {\n return this._page;\n }\n\n onChange: any = Function.prototype;\n onTouched: any = Function.prototype;\n renderer: Renderer2;\n elementRef: ElementRef;\n classMap: string;\n pages: any[];\n\n protected _itemsPerPage: number;\n protected _totalItems: number;\n protected _totalPages: number;\n protected inited = false;\n protected _page = 1;\n\n constructor(\n renderer: Renderer2,\n elementRef: ElementRef,\n paginationConfig: PaginationConfig\n ) {\n this.renderer = renderer;\n this.elementRef = elementRef;\n if (!this.config) {\n this.configureOptions(paginationConfig.main);\n }\n }\n\n configureOptions(config: any): void {\n this.config = Object.assign({}, config);\n }\n\n ngOnInit(): void {\n this.classMap = this.elementRef.nativeElement.getAttribute('class') || '';\n // watch for maxSize\n this.maxSize =\n typeof this.maxSize !== 'undefined' ? this.maxSize : this.config.maxSize;\n this.rotate =\n typeof this.rotate !== 'undefined' ? this.rotate : this.config.rotate;\n this.boundaryLinks =\n typeof this.boundaryLinks !== 'undefined'\n ? this.boundaryLinks\n : this.config.boundaryLinks;\n this.directionLinks =\n typeof this.directionLinks !== 'undefined'\n ? this.directionLinks\n : this.config.directionLinks;\n this.pageBtnClass =\n typeof this.pageBtnClass !== 'undefined'\n ? this.pageBtnClass\n : this.config.pageBtnClass;\n\n // base class\n this.itemsPerPage =\n typeof this.itemsPerPage !== 'undefined'\n ? this.itemsPerPage\n : this.config.itemsPerPage;\n this.totalPages = this.calculateTotalPages();\n // this class\n this.pages = this.getPages(this.page, this.totalPages);\n this.inited = true;\n }\n\n writeValue(value: number): void {\n this.page = value;\n this.pages = this.getPages(this.page, this.totalPages);\n }\n\n getText(key: string): string {\n return (this as any)[`${key}Text`] || this.config[`${key}Text`];\n }\n\n noPrevious(): boolean {\n return this.page === 1;\n }\n\n noNext(): boolean {\n return this.page === this.totalPages;\n }\n\n registerOnChange(fn: (_: any) => {}): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => {}): void {\n this.onTouched = fn;\n }\n\n selectPage(page: number, event?: Event): void {\n if (event) {\n event.preventDefault();\n }\n\n if (!this.disabled) {\n if (event && event.target) {\n const target: any = event.target;\n target.blur();\n }\n this.writeValue(page);\n this.onChange(this.page);\n }\n }\n\n // Create page object used in template\n protected makePage(\n num: number,\n text: string,\n active: boolean\n ): { number: number; text: string; active: boolean } {\n return { text, number: num, active };\n }\n\n protected getPages(currentPage: number, totalPages: number): any[] {\n const pages: any[] = [];\n\n // Default page limits\n let startPage = 1;\n let endPage = totalPages;\n const isMaxSized =\n typeof this.maxSize !== 'undefined' && this.maxSize < totalPages;\n\n // recompute if maxSize\n if (isMaxSized) {\n if (this.rotate) {\n // Current page is displayed in the middle of the visible ones\n startPage = Math.max(currentPage - Math.floor(this.maxSize / 2), 1);\n endPage = startPage + this.maxSize - 1;\n\n // Adjust if limit is exceeded\n if (endPage > totalPages) {\n endPage = totalPages;\n startPage = endPage - this.maxSize + 1;\n }\n } else {\n // Visible pages are paginated with maxSize\n startPage =\n (Math.ceil(currentPage / this.maxSize) - 1) * this.maxSize + 1;\n\n // Adjust last page if limit is exceeded\n endPage = Math.min(startPage + this.maxSize - 1, totalPages);\n }\n }\n\n // Add page number links\n for (let num = startPage; num <= endPage; num++) {\n const page = this.makePage(num, num.toString(), num === currentPage);\n pages.push(page);\n }\n\n // Add links to move between page sets\n if (isMaxSized && !this.rotate) {\n if (startPage > 1) {\n const previousPageSet = this.makePage(startPage - 1, '...', false);\n pages.unshift(previousPageSet);\n }\n\n if (endPage < totalPages) {\n const nextPageSet = this.makePage(endPage + 1, '...', false);\n pages.push(nextPageSet);\n }\n }\n\n return pages;\n }\n\n // base class\n protected calculateTotalPages(): number {\n const totalPages =\n this.itemsPerPage < 1\n ? 1\n : Math.ceil(this.totalItems / this.itemsPerPage);\n\n return Math.max(totalPages || 0, 1);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'pagination',\n template: \"
    \",\n providers: [PAGINATION_CONTROL_VALUE_ACCESSOR]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: Renderer2, },\n{type: ElementRef, },\n{type: PaginationConfig, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'align': [{ type: Input },],\n'maxSize': [{ type: Input },],\n'boundaryLinks': [{ type: Input },],\n'directionLinks': [{ type: Input },],\n'firstText': [{ type: Input },],\n'previousText': [{ type: Input },],\n'nextText': [{ type: Input },],\n'lastText': [{ type: Input },],\n'rotate': [{ type: Input },],\n'pageBtnClass': [{ type: Input },],\n'disabled': [{ type: Input },],\n'numPages': [{ type: Output },],\n'pageChanged': [{ type: Output },],\n'itemsPerPage': [{ type: Input },],\n'totalItems': [{ type: Input },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/pagination/pagination.component.ts","// todo: split\nimport { Injectable } from '@angular/core';\n\n/** Provides default values for Pagination and pager components */\n\nexport class PaginationConfig {\n main: any = {\n maxSize: void 0,\n itemsPerPage: 10,\n boundaryLinks: false,\n directionLinks: true,\n firstText: 'First',\n previousText: 'Previous',\n nextText: 'Next',\n lastText: 'Last',\n pageBtnClass: '',\n rotate: true\n };\n pager: any = {\n itemsPerPage: 15,\n previousText: '« Previous',\n nextText: 'Next »',\n pageBtnClass: '',\n align: true\n };\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/pagination/pagination.config.ts","import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\nimport { PaginationConfig } from './pagination.config';\n\nimport { PagerComponent } from './pager.component';\nimport { PaginationComponent } from './pagination.component';\n\n\nexport class PaginationModule {\n static forRoot(): ModuleWithProviders {\n return { ngModule: PaginationModule, providers: [PaginationConfig] };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n declarations: [PagerComponent, PaginationComponent],\n exports: [PagerComponent, PaginationComponent]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/pagination/pagination.module.ts","export { PopoverDirective } from './popover.directive';\nexport { PopoverModule } from './popover.module';\nexport { PopoverConfig } from './popover.config';\nexport { PopoverContainerComponent } from './popover-container.component';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/popover/index.ts","import { ChangeDetectionStrategy, Input, Component } from '@angular/core';\nimport { PopoverConfig } from './popover.config';\nimport { isBs3 } from '../utils/theme-provider';\n\n\nexport class PopoverContainerComponent {\n placement: string;\n title: string;\n containerClass: string;\n\n get isBs3(): boolean {\n return isBs3();\n }\n\n constructor(config: PopoverConfig) {\n Object.assign(this, config);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'popover-container',\n changeDetection: ChangeDetectionStrategy.OnPush,\n // tslint:disable-next-line\n host: {\n '[class]':\n '\"popover in popover-\" + placement + \" \" + \"bs-popover-\" + placement + \" \" + placement + \" \" + containerClass',\n '[class.show]': '!isBs3',\n role: 'tooltip',\n style: 'display:block;'\n },\n styles: [\n `\n :host.bs-popover-top .arrow, :host.bs-popover-bottom .arrow {\n left: calc(50% - 5px);\n }\n :host.bs-popover-left .arrow, :host.bs-popover-right .arrow {\n top: calc(50% - 2.5px);\n }\n `\n ],\n template: \"

    {{ title }}

    \"\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: PopoverConfig, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'placement': [{ type: Input },],\n'title': [{ type: Input },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/popover/popover-container.component.ts","import { Injectable } from '@angular/core';\n\n/**\n * Configuration service for the Popover directive.\n * You can inject this service, typically in your root component, and customize\n * the values of its properties in order to provide default values for all the\n * popovers used in the application.\n */\n\nexport class PopoverConfig {\n /**\n * Placement of a popover. Accepts: \"top\", \"bottom\", \"left\", \"right\", \"auto\"\n */\n placement = 'top';\n /**\n * Specifies events that should trigger. Supports a space separated list of\n * event names.\n */\n triggers = 'click';\n\n outsideClick = false;\n /**\n * A selector specifying the element the popover should be appended to.\n * Currently only supports \"body\".\n */\n container: string;\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/popover/popover.config.ts","import {\n Directive, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output,\n Renderer2, TemplateRef, ViewContainerRef\n} from '@angular/core';\nimport { PopoverConfig } from './popover.config';\nimport { ComponentLoader, ComponentLoaderFactory } from '../component-loader';\nimport { PopoverContainerComponent } from './popover-container.component';\n\n/**\n * A lightweight, extensible directive for fancy popover creation.\n */\n\nexport class PopoverDirective implements OnInit, OnDestroy {\n /**\n * Content to be displayed as popover.\n */\n popover: string | TemplateRef;\n /**\n * Context to be used if popover is a template.\n */\n popoverContext: any;\n /**\n * Title of a popover.\n */\n popoverTitle: string;\n /**\n * Placement of a popover. Accepts: \"top\", \"bottom\", \"left\", \"right\"\n */\n placement: 'top' | 'bottom' | 'left' | 'right' | 'auto';\n /**\n * Close popover on outside click\n */\n outsideClick = false;\n /**\n * Specifies events that should trigger. Supports a space separated list of\n * event names.\n */\n triggers: string;\n /**\n * A selector specifying the element the popover should be appended to.\n * Currently only supports \"body\".\n */\n container: string;\n\n /**\n * Css class for popover container\n */\n containerClass = '';\n\n /**\n * Returns whether or not the popover is currently being shown\n */\n \n get isOpen(): boolean {\n return this._popover.isShown;\n }\n\n set isOpen(value: boolean) {\n if (value) {\n this.show();\n } else {\n this.hide();\n }\n }\n\n /**\n * Emits an event when the popover is shown\n */\n onShown: EventEmitter;\n /**\n * Emits an event when the popover is hidden\n */\n onHidden: EventEmitter;\n\n private _popover: ComponentLoader;\n private _isInited = false;\n\n constructor(_elementRef: ElementRef,\n _renderer: Renderer2,\n _viewContainerRef: ViewContainerRef,\n _config: PopoverConfig,\n cis: ComponentLoaderFactory) {\n this._popover = cis\n .createLoader(\n _elementRef,\n _viewContainerRef,\n _renderer\n )\n .provide({provide: PopoverConfig, useValue: _config});\n Object.assign(this, _config);\n this.onShown = this._popover.onShown;\n this.onHidden = this._popover.onHidden;\n\n // fix: no focus on button on Mac OS #1795\n _elementRef.nativeElement.addEventListener('click', function () {\n try {\n _elementRef.nativeElement.focus();\n } catch (err) {\n return;\n }\n });\n }\n\n /**\n * Opens an element’s popover. This is considered a “manual” triggering of\n * the popover.\n */\n show(): void {\n if (this._popover.isShown) {\n return;\n }\n\n this._popover\n .attach(PopoverContainerComponent)\n .to(this.container)\n .position({attachment: this.placement})\n .show({\n content: this.popover,\n context: this.popoverContext,\n placement: this.placement,\n title: this.popoverTitle,\n containerClass: this.containerClass\n });\n this.isOpen = true;\n }\n\n /**\n * Closes an element’s popover. This is considered a “manual” triggering of\n * the popover.\n */\n hide(): void {\n if (this.isOpen) {\n this._popover.hide();\n this.isOpen = false;\n }\n }\n\n /**\n * Toggles an element’s popover. This is considered a “manual” triggering of\n * the popover.\n */\n toggle(): void {\n if (this.isOpen) {\n return this.hide();\n }\n\n this.show();\n }\n\n ngOnInit(): any {\n // fix: seems there are an issue with `routerLinkActive`\n // which result in duplicated call ngOnInit without call to ngOnDestroy\n // read more: https://github.com/valor-software/ngx-bootstrap/issues/1885\n if (this._isInited) {\n return;\n }\n this._isInited = true;\n\n this._popover.listen({\n triggers: this.triggers,\n outsideClick: this.outsideClick,\n show: () => this.show()\n });\n }\n\n ngOnDestroy(): any {\n this._popover.dispose();\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[popover]', exportAs: 'bs-popover'}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ElementRef, },\n{type: Renderer2, },\n{type: ViewContainerRef, },\n{type: PopoverConfig, },\n{type: ComponentLoaderFactory, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'popover': [{ type: Input },],\n'popoverContext': [{ type: Input },],\n'popoverTitle': [{ type: Input },],\n'placement': [{ type: Input },],\n'outsideClick': [{ type: Input },],\n'triggers': [{ type: Input },],\n'container': [{ type: Input },],\n'containerClass': [{ type: Input },],\n'isOpen': [{ type: Input },],\n'onShown': [{ type: Output },],\n'onHidden': [{ type: Output },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/popover/popover.directive.ts","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ComponentLoaderFactory } from '../component-loader';\nimport { PositioningService } from '../positioning';\nimport { PopoverConfig } from './popover.config';\nimport { PopoverDirective } from './popover.directive';\nimport { PopoverContainerComponent } from './popover-container.component';\n\n\nexport class PopoverModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: PopoverModule,\n providers: [PopoverConfig, ComponentLoaderFactory, PositioningService]\n };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n declarations: [PopoverDirective, PopoverContainerComponent],\n exports: [PopoverDirective],\n entryComponents: [PopoverContainerComponent]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/popover/popover.module.ts","export { positionElements, Positioning } from './ng-positioning';\nexport { PositioningService, PositioningOptions } from './positioning.service';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/positioning/index.ts","/**\n * @copyright Valor Software\n * @copyright Angular ng-bootstrap team\n */\n\n// previous version:\n// https://github.com/angular-ui/bootstrap/blob/07c31d0731f7cb068a1932b8e01d2312b796b4ec/src/position/position.js\n// tslint:disable\nexport class Positioning {\n public position(element: HTMLElement, round = true): ClientRect {\n let elPosition: ClientRect;\n let parentOffset: ClientRect = {\n width: 0,\n height: 0,\n top: 0,\n bottom: 0,\n left: 0,\n right: 0\n };\n\n if (this.getStyle(element, 'position') === 'fixed') {\n const bcRect = element.getBoundingClientRect();\n elPosition = {\n width: bcRect.width,\n height: bcRect.height,\n top: bcRect.top,\n bottom: bcRect.bottom,\n left: bcRect.left,\n right: bcRect.right\n };\n } else {\n const offsetParentEl = this.offsetParent(element);\n\n elPosition = this.offset(element, false);\n\n if (offsetParentEl !== document.documentElement) {\n parentOffset = this.offset(offsetParentEl, false);\n }\n\n parentOffset.top += offsetParentEl.clientTop;\n parentOffset.left += offsetParentEl.clientLeft;\n }\n\n elPosition.top -= parentOffset.top;\n elPosition.bottom -= parentOffset.top;\n elPosition.left -= parentOffset.left;\n elPosition.right -= parentOffset.left;\n\n if (round) {\n elPosition.top = Math.round(elPosition.top);\n elPosition.bottom = Math.round(elPosition.bottom);\n elPosition.left = Math.round(elPosition.left);\n elPosition.right = Math.round(elPosition.right);\n }\n\n return elPosition;\n }\n\n public offset(element: HTMLElement, round = true): ClientRect {\n const elBcr = element.getBoundingClientRect();\n const viewportOffset = {\n top: window.pageYOffset - document.documentElement.clientTop,\n left: window.pageXOffset - document.documentElement.clientLeft\n };\n\n let elOffset = {\n height: elBcr.height || element.offsetHeight,\n width: elBcr.width || element.offsetWidth,\n top: elBcr.top + viewportOffset.top,\n bottom: elBcr.bottom + viewportOffset.top,\n left: elBcr.left + viewportOffset.left,\n right: elBcr.right + viewportOffset.left\n };\n\n if (round) {\n elOffset.height = Math.round(elOffset.height);\n elOffset.width = Math.round(elOffset.width);\n elOffset.top = Math.round(elOffset.top);\n elOffset.bottom = Math.round(elOffset.bottom);\n elOffset.left = Math.round(elOffset.left);\n elOffset.right = Math.round(elOffset.right);\n }\n\n return elOffset;\n }\n\n public positionElements(\n hostElement: HTMLElement,\n targetElement: HTMLElement,\n placement: string,\n appendToBody?: boolean\n ): ClientRect {\n const hostElPosition = appendToBody\n ? this.offset(hostElement, false)\n : this.position(hostElement, false);\n const targetElStyles = this.getAllStyles(targetElement);\n const shiftWidth: any = {\n left: hostElPosition.left,\n center:\n hostElPosition.left +\n hostElPosition.width / 2 -\n targetElement.offsetWidth / 2,\n right: hostElPosition.left + hostElPosition.width\n };\n const shiftHeight: any = {\n top: hostElPosition.top,\n center:\n hostElPosition.top +\n hostElPosition.height / 2 -\n targetElement.offsetHeight / 2,\n bottom: hostElPosition.top + hostElPosition.height\n };\n const targetElBCR = targetElement.getBoundingClientRect();\n let placementPrimary = placement.split(' ')[0] || 'top';\n const placementSecondary = placement.split(' ')[1] || 'center';\n\n let targetElPosition: ClientRect = {\n height: targetElBCR.height || targetElement.offsetHeight,\n width: targetElBCR.width || targetElement.offsetWidth,\n top: 0,\n bottom: targetElBCR.height || targetElement.offsetHeight,\n left: 0,\n right: targetElBCR.width || targetElement.offsetWidth\n };\n\n if (placementPrimary === 'auto') {\n let newPlacementPrimary = this.autoPosition(\n targetElPosition,\n hostElPosition,\n targetElement,\n placementSecondary\n );\n if (!newPlacementPrimary)\n newPlacementPrimary = this.autoPosition(\n targetElPosition,\n hostElPosition,\n targetElement\n );\n if (newPlacementPrimary) placementPrimary = newPlacementPrimary;\n targetElement.classList.add(placementPrimary);\n }\n\n switch (placementPrimary) {\n case 'top':\n targetElPosition.top =\n hostElPosition.top -\n (targetElement.offsetHeight +\n parseFloat(targetElStyles.marginBottom));\n targetElPosition.bottom +=\n hostElPosition.top - targetElement.offsetHeight;\n targetElPosition.left = shiftWidth[placementSecondary];\n targetElPosition.right += shiftWidth[placementSecondary];\n break;\n case 'bottom':\n targetElPosition.top = shiftHeight[placementPrimary];\n targetElPosition.bottom += shiftHeight[placementPrimary];\n targetElPosition.left = shiftWidth[placementSecondary];\n targetElPosition.right += shiftWidth[placementSecondary];\n break;\n case 'left':\n targetElPosition.top = shiftHeight[placementSecondary];\n targetElPosition.bottom += shiftHeight[placementSecondary];\n targetElPosition.left =\n hostElPosition.left -\n (targetElement.offsetWidth + parseFloat(targetElStyles.marginRight));\n targetElPosition.right +=\n hostElPosition.left - targetElement.offsetWidth;\n break;\n case 'right':\n targetElPosition.top = shiftHeight[placementSecondary];\n targetElPosition.bottom += shiftHeight[placementSecondary];\n targetElPosition.left = shiftWidth[placementPrimary];\n targetElPosition.right += shiftWidth[placementPrimary];\n break;\n }\n\n targetElPosition.top = Math.round(targetElPosition.top);\n targetElPosition.bottom = Math.round(targetElPosition.bottom);\n targetElPosition.left = Math.round(targetElPosition.left);\n targetElPosition.right = Math.round(targetElPosition.right);\n\n return targetElPosition;\n }\n\n private autoPosition(\n targetElPosition: ClientRect,\n hostElPosition: ClientRect,\n targetElement: HTMLElement,\n preferredPosition?: string\n ) {\n if (\n (!preferredPosition || preferredPosition === 'right') &&\n targetElPosition.left + hostElPosition.left - targetElement.offsetWidth <\n 0\n ) {\n return 'right';\n } else if (\n (!preferredPosition || preferredPosition === 'top') &&\n targetElPosition.bottom +\n hostElPosition.bottom +\n targetElement.offsetHeight >\n window.innerHeight\n ) {\n return 'top';\n } else if (\n (!preferredPosition || preferredPosition === 'bottom') &&\n targetElPosition.top + hostElPosition.top - targetElement.offsetHeight < 0\n ) {\n return 'bottom';\n } else if (\n (!preferredPosition || preferredPosition === 'left') &&\n targetElPosition.right +\n hostElPosition.right +\n targetElement.offsetWidth >\n window.innerWidth\n ) {\n return 'left';\n }\n return null;\n }\n\n private getAllStyles(element: HTMLElement) {\n return window.getComputedStyle(element);\n }\n\n private getStyle(element: HTMLElement, prop: string): string {\n return (this.getAllStyles(element) as any)[prop];\n }\n\n private isStaticPositioned(element: HTMLElement): boolean {\n return (this.getStyle(element, 'position') || 'static') === 'static';\n }\n\n private offsetParent(element: HTMLElement): HTMLElement {\n let offsetParentEl =\n element.offsetParent || document.documentElement;\n\n while (\n offsetParentEl &&\n offsetParentEl !== document.documentElement &&\n this.isStaticPositioned(offsetParentEl)\n ) {\n offsetParentEl = offsetParentEl.offsetParent;\n }\n\n return offsetParentEl || document.documentElement;\n }\n}\n\nconst positionService = new Positioning();\n\nexport function positionElements(\n hostElement: HTMLElement,\n targetElement: HTMLElement,\n placement: string,\n appendToBody?: boolean\n): void {\n const pos = positionService.positionElements(\n hostElement,\n targetElement,\n placement,\n appendToBody\n );\n\n targetElement.style.top = `${pos.top}px`;\n targetElement.style.left = `${pos.left}px`;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/positioning/ng-positioning.ts","import { Injectable, ElementRef } from '@angular/core';\nimport { positionElements } from './ng-positioning';\n\nexport interface PositioningOptions {\n /** The DOM element, ElementRef, or a selector string of an element which will be moved */\n element?: HTMLElement | ElementRef | string;\n\n /** The DOM element, ElementRef, or a selector string of an element which the element will be attached to */\n target?: HTMLElement | ElementRef | string;\n\n /**\n * A string of the form 'vert-attachment horiz-attachment' or 'placement'\n * - placement can be \"top\", \"bottom\", \"left\", \"right\"\n * not yet supported:\n * - vert-attachment can be any of 'top', 'middle', 'bottom'\n * - horiz-attachment can be any of 'left', 'center', 'right'\n */\n attachment?: string;\n\n /** A string similar to `attachment`. The one difference is that, if it's not provided,\n * `targetAttachment` will assume the mirror image of `attachment`.\n */\n targetAttachment?: string;\n\n /** A string of the form 'vert-offset horiz-offset'\n * - vert-offset and horiz-offset can be of the form \"20px\" or \"55%\"\n */\n offset?: string;\n\n /** A string similar to `offset`, but referring to the offset of the target */\n targetOffset?: string;\n\n /** If true component will be attached to body */\n appendToBody?: boolean;\n}\n\n\nexport class PositioningService {\n position(options: PositioningOptions): void {\n const {element, target, attachment, appendToBody} = options;\n positionElements(\n _getHtmlElement(target),\n _getHtmlElement(element),\n attachment,\n appendToBody\n );\n }\n\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\nfunction _getHtmlElement(element: HTMLElement | ElementRef | string): HTMLElement {\n // it means that we got a selector\n if (typeof element === 'string') {\n return document.querySelector(element) as HTMLElement;\n }\n\n if (element instanceof ElementRef) {\n return element.nativeElement;\n }\n\n return element as HTMLElement;\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/positioning/positioning.service.ts","import {\n Component,\n Host,\n HostBinding,\n Input,\n OnDestroy,\n OnInit\n} from '@angular/core';\n\nimport { ProgressDirective } from './progress.directive';\nimport { isBs3 } from '../utils/theme-provider';\n\n// todo: number pipe\n// todo: use query from progress?\n\nexport class BarComponent implements OnInit, OnDestroy {\n max: number;\n\n /** provide one of the four supported contextual classes: `success`, `info`, `warning`, `danger` */\n type: string;\n\n /** current value of progress bar */\n \n get value(): number {\n return this._value;\n }\n\n set value(v: number) {\n if (!v && v !== 0) {\n return;\n }\n this._value = v;\n this.recalculatePercentage();\n }\n\n \n get setBarWidth() {\n this.recalculatePercentage();\n\n return this.isBs3 ? '' : this.percent;\n }\n\n get isBs3(): boolean {\n return isBs3();\n }\n\n percent = 0;\n transition: string;\n progress: ProgressDirective;\n\n protected _value: number;\n\n constructor( progress: ProgressDirective) {\n this.progress = progress;\n }\n\n ngOnInit(): void {\n this.progress.addBar(this);\n }\n\n ngOnDestroy(): void {\n this.progress.removeBar(this);\n }\n\n recalculatePercentage(): void {\n this.percent = +(this.value / this.progress.max * 100).toFixed(2);\n\n const totalPercentage = this.progress.bars\n .reduce(function (total: number, bar: BarComponent): number {\n return total + bar.percent;\n }, 0);\n\n if (totalPercentage > 100) {\n this.percent -= totalPercentage - 100;\n }\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bar',\n template: \"
    \"\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ProgressDirective, decorators: [{ type: Host }, ]},\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'type': [{ type: Input },],\n'value': [{ type: Input },],\n'setBarWidth': [{ type: HostBinding, args: ['style.width.%', ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/progressbar/bar.component.ts","export { BarComponent } from './bar.component';\nexport { ProgressDirective } from './progress.directive';\nexport { ProgressbarComponent } from './progressbar.component';\nexport { ProgressbarModule } from './progressbar.module';\nexport { ProgressbarConfig } from './progressbar.config';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/progressbar/index.ts","import { Directive, HostBinding, Input } from '@angular/core';\n\nimport { BarComponent } from './bar.component';\n\n// todo: progress element conflict with bootstrap.css\n// todo: need hack: replace host element with div\n\nexport class ProgressDirective {\n /** if `true` changing value of progress bar will be animated (note: not supported by Bootstrap 4) */\n animate: boolean;\n\n /** maximum total value of progress element */\n \n \n get max(): number {\n return this._max;\n }\n\n set max(v: number) {\n this._max = v;\n this.bars.forEach((bar: BarComponent) => {\n bar.recalculatePercentage();\n });\n }\n\n addClass = true;\n\n bars: any[] = [];\n\n protected _max = 100;\n\n addBar(bar: BarComponent): void {\n if (!this.animate) {\n bar.transition = 'none';\n }\n this.bars.push(bar);\n }\n\n removeBar(bar: BarComponent): void {\n this.bars.splice(this.bars.indexOf(bar), 1);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{ selector: 'bs-progress, [progress]' }, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'animate': [{ type: Input },],\n'max': [{ type: HostBinding, args: ['attr.max', ] },{ type: Input },],\n'addClass': [{ type: HostBinding, args: ['class.progress', ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/progressbar/progress.directive.ts","import { Component, Input } from '@angular/core';\nimport { ProgressbarConfig } from './progressbar.config';\nimport { isBs3 } from '../utils';\n\n\nexport class ProgressbarComponent {\n /** if `true` changing value of progress bar will be animated (note: not supported by Bootstrap 4) */\n animate: boolean;\n /** maximum total value of progress element */\n max: number;\n /** provide one of the four supported contextual classes: `success`, `info`, `warning`, `danger` */\n type: string;\n /** current value of progress bar. Could be a number or array of objects\n * like {\"value\":15,\"type\":\"info\",\"label\":\"15 %\"}\n */\n \n set value(value: number | any[]) {\n this.isStacked = Array.isArray(value);\n this._value = value;\n }\n isStacked = false;\n _value: number | any[];\n get isBs3(): boolean {\n return isBs3();\n }\n\n constructor(config: ProgressbarConfig) {\n Object.assign(this, config);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'progressbar',\n template: \"
    {{ item.label }}
    \",\n styles: [\n `\n :host {\n width: 100%;\n }\n `\n ]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ProgressbarConfig, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'animate': [{ type: Input },],\n'max': [{ type: Input },],\n'type': [{ type: Input },],\n'value': [{ type: Input },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/progressbar/progressbar.component.ts","import { Injectable } from '@angular/core';\n\n\nexport class ProgressbarConfig {\n /** if `true` changing value of progress bar will be animated (note: not supported by Bootstrap 4) */\n animate: Boolean = true;\n /** maximum total value of progress element */\n max = 100;\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/progressbar/progressbar.config.ts","import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\n\nimport { BarComponent } from './bar.component';\nimport { ProgressDirective } from './progress.directive';\nimport { ProgressbarComponent } from './progressbar.component';\nimport { ProgressbarConfig } from './progressbar.config';\n\n\nexport class ProgressbarModule {\n static forRoot(): ModuleWithProviders {\n return { ngModule: ProgressbarModule, providers: [ProgressbarConfig] };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n declarations: [ProgressDirective, BarComponent, ProgressbarComponent],\n exports: [ProgressDirective, BarComponent, ProgressbarComponent]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/progressbar/progressbar.module.ts","export { RatingComponent } from './rating.component';\nexport { RatingModule } from './rating.module';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/rating/index.ts","import {\n Component,\n EventEmitter,\n HostListener,\n Input,\n OnInit,\n Output,\n forwardRef, TemplateRef\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport const RATING_CONTROL_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n // tslint:disable-next-line\n useExisting: forwardRef(() => RatingComponent),\n multi: true\n};\n\n\nexport class RatingComponent implements ControlValueAccessor, OnInit {\n /** number of icons */\n max = 5;\n /** if true will not react on any user events */\n readonly: boolean;\n /** array of icons titles, default: ([\"one\", \"two\", \"three\", \"four\", \"five\"]) */\n titles: string[];\n /** custom template for icons */\n customTemplate: TemplateRef;\n /** fired when icon selected, $event:number equals to selected rating */\n onHover: EventEmitter = new EventEmitter();\n /** fired when icon selected, $event:number equals to previous rating value */\n onLeave: EventEmitter = new EventEmitter();\n\n onChange: any = Function.prototype;\n onTouched: any = Function.prototype;\n\n range: any[];\n value: number;\n protected preValue: number;\n\n \n onKeydown(event: any): void {\n if ([37, 38, 39, 40].indexOf(event.which) === -1) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n const sign = event.which === 38 || event.which === 39 ? 1 : -1;\n this.rate(this.value + sign);\n }\n\n ngOnInit(): void {\n this.max = typeof this.max !== 'undefined' ? this.max : 5;\n this.titles =\n typeof this.titles !== 'undefined' && this.titles.length > 0\n ? this.titles\n : ['one', 'two', 'three', 'four', 'five'];\n this.range = this.buildTemplateObjects(this.max);\n }\n\n // model -> view\n writeValue(value: number): void {\n if (value % 1 !== value) {\n this.value = Math.round(value);\n this.preValue = value;\n\n return;\n }\n\n this.preValue = value;\n this.value = value;\n }\n\n enter(value: number): void {\n if (!this.readonly) {\n this.value = value;\n this.onHover.emit(value);\n }\n }\n\n reset(): void {\n this.value = this.preValue;\n this.onLeave.emit(this.value);\n }\n\n registerOnChange(fn: (_: any) => {}): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => {}): void {\n this.onTouched = fn;\n }\n\n rate(value: number): void {\n if (!this.readonly && value >= 0 && value <= this.range.length) {\n this.writeValue(value);\n this.onChange(value);\n }\n }\n\n protected buildTemplateObjects(max: number): any[] {\n const result: any[] = [];\n for (let i = 0; i < max; i++) {\n result.push({\n index: i,\n title: this.titles[i] || i + 1\n });\n }\n\n return result;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'rating',\n template: \" {{index < value ? '★' : '☆'}} ({{ index < value ? '*' : ' ' }}) \",\n providers: [RATING_CONTROL_VALUE_ACCESSOR]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'max': [{ type: Input },],\n'readonly': [{ type: Input },],\n'titles': [{ type: Input },],\n'customTemplate': [{ type: Input },],\n'onHover': [{ type: Output },],\n'onLeave': [{ type: Output },],\n'onKeydown': [{ type: HostListener, args: ['keydown', ['$event'], ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/rating/rating.component.ts","import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\nimport { RatingComponent } from './rating.component';\n\n\nexport class RatingModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RatingModule,\n providers: []\n };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n declarations: [RatingComponent],\n exports: [RatingComponent]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/rating/rating.module.ts","import { Injectable } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport { DraggableItem } from './draggable-item';\n\n\nexport class DraggableItemService {\n private draggableItem: DraggableItem;\n\n private onCapture: Subject = new Subject();\n\n dragStart(item: DraggableItem): void {\n this.draggableItem = item;\n }\n\n getItem(): DraggableItem {\n return this.draggableItem;\n }\n\n captureItem(overZoneIndex: number, newIndex: number): DraggableItem {\n if (this.draggableItem.overZoneIndex !== overZoneIndex) {\n this.draggableItem.lastZoneIndex = this.draggableItem.overZoneIndex;\n this.draggableItem.overZoneIndex = overZoneIndex;\n this.onCapture.next(this.draggableItem);\n this.draggableItem = Object.assign({}, this.draggableItem, {\n overZoneIndex,\n i: newIndex\n });\n }\n\n return this.draggableItem;\n }\n\n onCaptureItem(): Subject {\n return this.onCapture;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/sortable/draggable-item.service.ts","export { SortableModule } from './sortable.module';\nexport { SortableComponent, SortableItem } from './sortable.component';\nexport { DraggableItemService } from './draggable-item.service';\nexport { DraggableItem } from './draggable-item';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/sortable/index.ts","import {\n Component,\n Input,\n Output,\n EventEmitter,\n forwardRef,\n TemplateRef\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\nimport { DraggableItem } from './draggable-item';\nimport { DraggableItemService } from './draggable-item.service';\n\n/* tslint:disable */\n\n/* tslint:enable */\nexport class SortableComponent implements ControlValueAccessor {\n private static globalZoneIndex = 0;\n\n /** field name if input array consists of objects */\n fieldName: string;\n\n /** class name for items wrapper */\n wrapperClass = '';\n\n /** style object for items wrapper */\n wrapperStyle: { [key: string]: string } = {};\n\n /** class name for item */\n itemClass = '';\n\n /** style object for item */\n itemStyle: { [key: string]: string } = {};\n\n /** class name for active item */\n itemActiveClass = '';\n\n /** style object for active item */\n itemActiveStyle: { [key: string]: string } = {};\n\n /** class name for placeholder */\n placeholderClass = '';\n\n /** style object for placeholder */\n placeholderStyle: { [key: string]: string } = {};\n\n /** placeholder item which will be shown if collection is empty */\n placeholderItem = '';\n\n /** used to specify a custom item template. Template variables: item and index; */\n itemTemplate: TemplateRef;\n\n /** fired on array change (reordering, insert, remove), same as ngModelChange.\n * Returns new items collection as a payload.\n */\n onChange: EventEmitter = new EventEmitter();\n\n showPlaceholder = false;\n activeItem = -1;\n\n get items(): SortableItem[] {\n return this._items;\n }\n\n set items(value: SortableItem[]) {\n this._items = value;\n const out = this.items.map((x: SortableItem) => x.initData);\n this.onChanged(out);\n this.onChange.emit(out);\n }\n\n onTouched: any = Function.prototype;\n onChanged: any = Function.prototype;\n\n private transfer: DraggableItemService;\n private currentZoneIndex: number;\n private _items: SortableItem[];\n\n constructor(transfer: DraggableItemService) {\n this.transfer = transfer;\n this.currentZoneIndex = SortableComponent.globalZoneIndex++;\n this.transfer\n .onCaptureItem()\n .subscribe((item: DraggableItem) => this.onDrop(item));\n }\n\n onItemDragstart(\n event: DragEvent,\n item: SortableItem,\n i: number\n ): void {\n this.initDragstartEvent(event);\n this.onTouched();\n this.transfer.dragStart({\n event,\n item,\n i,\n initialIndex: i,\n lastZoneIndex: this.currentZoneIndex,\n overZoneIndex: this.currentZoneIndex\n });\n }\n\n onItemDragover(event: DragEvent, i: number): void {\n if (!this.transfer.getItem()) {\n return;\n }\n event.preventDefault();\n const dragItem = this.transfer.captureItem(\n this.currentZoneIndex,\n this.items.length\n );\n let newArray: any[] = [];\n if (!this.items.length) {\n newArray = [dragItem.item];\n } else if (dragItem.i > i) {\n newArray = [\n ...this.items.slice(0, i),\n dragItem.item,\n ...this.items.slice(i, dragItem.i),\n ...this.items.slice(dragItem.i + 1)\n ];\n } else {\n // this.draggedItem.i < i\n newArray = [\n ...this.items.slice(0, dragItem.i),\n ...this.items.slice(dragItem.i + 1, i + 1),\n dragItem.item,\n ...this.items.slice(i + 1)\n ];\n }\n this.items = newArray;\n dragItem.i = i;\n this.activeItem = i;\n this.updatePlaceholderState();\n }\n\n cancelEvent(event: DragEvent): void {\n if (!this.transfer.getItem() || !event) {\n return;\n }\n event.preventDefault();\n }\n\n onDrop(item: DraggableItem): void {\n if (\n item &&\n item.overZoneIndex !== this.currentZoneIndex &&\n item.lastZoneIndex === this.currentZoneIndex\n ) {\n this.items = this.items.filter(\n (x: SortableItem, i: number) => i !== item.i\n );\n this.updatePlaceholderState();\n }\n this.resetActiveItem(undefined);\n }\n\n resetActiveItem(event: DragEvent): void {\n this.cancelEvent(event);\n this.activeItem = -1;\n }\n\n registerOnChange(callback: (_: any) => void): void {\n this.onChanged = callback;\n }\n\n registerOnTouched(callback: () => void): void {\n this.onTouched = callback;\n }\n\n writeValue(value: any[]): void {\n if (value) {\n this.items = value.map((x: any, i: number) => ({\n id: i,\n initData: x,\n value: this.fieldName ? x[this.fieldName] : x\n }));\n } else {\n this.items = [];\n }\n this.updatePlaceholderState();\n }\n\n updatePlaceholderState(): void {\n this.showPlaceholder = !this._items.length;\n }\n\n getItemStyle(isActive: boolean): {} {\n return isActive\n ? Object.assign({}, this.itemStyle, this.itemActiveStyle)\n : this.itemStyle;\n }\n\n // tslint:disable-next-line\n private initDragstartEvent(event: DragEvent): void {\n // it is necessary for mozilla\n // data type should be 'Text' instead of 'text/plain' to keep compatibility\n // with IE\n event.dataTransfer.setData('Text', 'placeholder');\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bs-sortable',\n exportAs: 'bs-sortable',\n template: `\n\n {{placeholderItem}}\n \n\n\n{{item.value}} \n`,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SortableComponent),\n multi: true\n }\n ]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: DraggableItemService, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'fieldName': [{ type: Input },],\n'wrapperClass': [{ type: Input },],\n'wrapperStyle': [{ type: Input },],\n'itemClass': [{ type: Input },],\n'itemStyle': [{ type: Input },],\n'itemActiveClass': [{ type: Input },],\n'itemActiveStyle': [{ type: Input },],\n'placeholderClass': [{ type: Input },],\n'placeholderStyle': [{ type: Input },],\n'placeholderItem': [{ type: Input },],\n'itemTemplate': [{ type: Input },],\n'onChange': [{ type: Output },],\n};\n}\n\nexport declare interface SortableItem {\n id: number;\n value: string;\n initData: any;\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/sortable/sortable.component.ts","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { SortableComponent } from './sortable.component';\nimport { DraggableItemService } from './draggable-item.service';\n\n\nexport class SortableModule {\n static forRoot(): ModuleWithProviders {\n return { ngModule: SortableModule, providers: [DraggableItemService] };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n declarations: [SortableComponent],\n imports: [CommonModule],\n exports: [SortableComponent]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/sortable/sortable.module.ts","export { NgTranscludeDirective } from './ng-transclude.directive';\nexport { TabDirective } from './tab.directive';\nexport { TabHeadingDirective } from './tab-heading.directive';\nexport { TabsetComponent } from './tabset.component';\nexport { TabsetConfig } from './tabset.config';\nexport { TabsModule } from './tabs.module';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/tabs/index.ts","import { Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core';\n\n\nexport class NgTranscludeDirective {\n viewRef: ViewContainerRef;\n\n protected _viewRef: ViewContainerRef;\n protected _ngTransclude: TemplateRef;\n\n \n set ngTransclude(templateRef: TemplateRef) {\n this._ngTransclude = templateRef;\n if (templateRef) {\n this.viewRef.createEmbeddedView(templateRef);\n }\n }\n\n get ngTransclude(): TemplateRef {\n return this._ngTransclude;\n }\n\n constructor(viewRef: ViewContainerRef) {\n this.viewRef = viewRef;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[ngTransclude]'\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ViewContainerRef, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'ngTransclude': [{ type: Input },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/tabs/ng-transclude.directive.ts","import { Directive, TemplateRef } from '@angular/core';\n\nimport { TabDirective } from './tab.directive';\n\n/** Should be used to mark element as a template for tab heading */\n\nexport class TabHeadingDirective {\n templateRef: TemplateRef;\n\n constructor(templateRef: TemplateRef, tab: TabDirective) {\n tab.headingRef = templateRef;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{ selector: '[tabHeading]' }, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TemplateRef, },\n{type: TabDirective, },\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/tabs/tab-heading.directive.ts","import {\n Directive,\n EventEmitter,\n HostBinding,\n Input,\n Output,\n TemplateRef,\n OnInit,\n OnDestroy,\n ElementRef,\n Renderer2\n} from '@angular/core';\nimport { TabsetComponent } from './tabset.component';\n\n\nexport class TabDirective implements OnInit, OnDestroy {\n /** tab header text */\n heading: string;\n /** tab id */\n id: string;\n /** if true tab can not be activated */\n disabled: boolean;\n /** if true tab can be removable, additional button will appear */\n removable: boolean;\n /** if set, will be added to the tab's class atribute */\n \n get customClass(): string {\n return this._customClass;\n }\n\n set customClass(customClass: string) {\n if (this._customClass && this._customClass !== customClass) {\n this.renderer.removeClass(\n this.elementRef.nativeElement,\n this._customClass\n );\n }\n\n this._customClass = customClass;\n\n if (this._customClass) {\n this.renderer.addClass(\n this.elementRef.nativeElement,\n this._customClass\n );\n }\n }\n\n /** tab active state toggle */\n \n \n get active(): boolean {\n return this._active;\n }\n\n set active(active: boolean) {\n if (this._active === active) {\n return;\n }\n if ((this.disabled && active) || !active) {\n if (this._active && !active) {\n this.deselect.emit(this);\n this._active = active;\n }\n\n return;\n }\n\n this._active = active;\n this.select.emit(this);\n this.tabset.tabs.forEach((tab: TabDirective) => {\n if (tab !== this) {\n tab.active = false;\n }\n });\n }\n\n /** fired when tab became active, $event:Tab equals to selected instance of Tab component */\n select: EventEmitter = new EventEmitter();\n /** fired when tab became inactive, $event:Tab equals to deselected instance of Tab component */\n deselect: EventEmitter = new EventEmitter();\n /** fired before tab will be removed, $event:Tab equals to instance of removed tab */\n removed: EventEmitter = new EventEmitter();\n\n addClass = true;\n\n headingRef: TemplateRef;\n tabset: TabsetComponent;\n protected _active: boolean;\n protected _customClass: string;\n\n constructor(\n tabset: TabsetComponent,\n public elementRef: ElementRef,\n public renderer: Renderer2\n ) {\n this.tabset = tabset;\n this.tabset.addTab(this);\n }\n\n ngOnInit(): void {\n this.removable = this.removable;\n }\n\n ngOnDestroy(): void {\n this.tabset.removeTab(this, { reselect: false, emit: false });\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{ selector: 'tab, [tab]' }, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TabsetComponent, },\n{type: ElementRef, },\n{type: Renderer2, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'heading': [{ type: Input },],\n'id': [{ type: Input },],\n'disabled': [{ type: Input },],\n'removable': [{ type: Input },],\n'customClass': [{ type: Input },],\n'active': [{ type: HostBinding, args: ['class.active', ] },{ type: Input },],\n'select': [{ type: Output },],\n'deselect': [{ type: Output },],\n'removed': [{ type: Output },],\n'addClass': [{ type: HostBinding, args: ['class.tab-pane', ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/tabs/tab.directive.ts","import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\n\nimport { NgTranscludeDirective } from './ng-transclude.directive';\nimport { TabHeadingDirective } from './tab-heading.directive';\nimport { TabDirective } from './tab.directive';\nimport { TabsetComponent } from './tabset.component';\nimport { TabsetConfig } from './tabset.config';\n\n\nexport class TabsModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: TabsModule,\n providers: [TabsetConfig]\n };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n declarations: [\n NgTranscludeDirective,\n TabDirective,\n TabsetComponent,\n TabHeadingDirective\n ],\n exports: [\n TabDirective,\n TabsetComponent,\n TabHeadingDirective,\n NgTranscludeDirective\n ]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/tabs/tabs.module.ts","import { Component, HostBinding, Input, OnDestroy } from '@angular/core';\n\nimport { TabDirective } from './tab.directive';\nimport { TabsetConfig } from './tabset.config';\n// todo: add active event to tab\n// todo: fix? mixing static and dynamic tabs position tabs in order of creation\n\nexport class TabsetComponent implements OnDestroy {\n /** if true tabs will be placed vertically */\n \n get vertical(): boolean {\n return this._vertical;\n }\n set vertical(value: boolean) {\n this._vertical = value;\n this.setClassMap();\n }\n\n /** if true tabs fill the container and have a consistent width */\n \n get justified(): boolean {\n return this._justified;\n }\n set justified(value: boolean) {\n this._justified = value;\n this.setClassMap();\n }\n\n /** navigation context class: 'tabs' or 'pills' */\n \n get type(): string {\n return this._type;\n }\n set type(value: string) {\n this._type = value;\n this.setClassMap();\n }\n\n clazz = true;\n\n tabs: TabDirective[] = [];\n classMap: any = {};\n\n protected isDestroyed: boolean;\n protected _vertical: boolean;\n protected _justified: boolean;\n protected _type: string;\n\n constructor(config: TabsetConfig) {\n Object.assign(this, config);\n }\n\n ngOnDestroy(): void {\n this.isDestroyed = true;\n }\n\n addTab(tab: TabDirective): void {\n this.tabs.push(tab);\n tab.active = this.tabs.length === 1 && typeof tab.active === 'undefined';\n }\n\n removeTab(\n tab: TabDirective,\n options = { reselect: true, emit: true }\n ): void {\n const index = this.tabs.indexOf(tab);\n if (index === -1 || this.isDestroyed) {\n return;\n }\n // Select a new tab if the tab to be removed is selected and not destroyed\n if (options.reselect && tab.active && this.hasAvailableTabs(index)) {\n const newActiveIndex = this.getClosestTabIndex(index);\n this.tabs[newActiveIndex].active = true;\n }\n if (options.emit) {\n tab.removed.emit(tab);\n }\n this.tabs.splice(index, 1);\n if (tab.elementRef.nativeElement.parentNode) {\n tab.elementRef.nativeElement.parentNode.removeChild(\n tab.elementRef.nativeElement\n );\n }\n }\n\n protected getClosestTabIndex(index: number): number {\n const tabsLength = this.tabs.length;\n if (!tabsLength) {\n return -1;\n }\n\n for (let step = 1; step <= tabsLength; step += 1) {\n const prevIndex = index - step;\n const nextIndex = index + step;\n if (this.tabs[prevIndex] && !this.tabs[prevIndex].disabled) {\n return prevIndex;\n }\n if (this.tabs[nextIndex] && !this.tabs[nextIndex].disabled) {\n return nextIndex;\n }\n }\n\n return -1;\n }\n\n protected hasAvailableTabs(index: number): boolean {\n const tabsLength = this.tabs.length;\n if (!tabsLength) {\n return false;\n }\n\n for (let i = 0; i < tabsLength; i += 1) {\n if (!this.tabs[i].disabled && i !== index) {\n return true;\n }\n }\n\n return false;\n }\n\n protected setClassMap(): void {\n this.classMap = {\n 'nav-stacked': this.vertical,\n 'flex-column': this.vertical,\n 'nav-justified': this.justified,\n [`nav-${this.type}`]: true\n };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'tabset',\n template: \"
    \"\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TabsetConfig, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'vertical': [{ type: Input },],\n'justified': [{ type: Input },],\n'type': [{ type: Input },],\n'clazz': [{ type: HostBinding, args: ['class.tab-container', ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/tabs/tabset.component.ts","import { Injectable } from '@angular/core';\n\n\nexport class TabsetConfig {\n /** provides default navigation context class: 'tabs' or 'pills' */\n type = 'tabs';\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/tabs/tabset.config.ts","export { TimepickerComponent } from './timepicker.component';\nexport { TimepickerActions } from './reducer/timepicker.actions';\nexport { TimepickerStore } from './reducer/timepicker.store';\nexport { TimepickerConfig } from './timepicker.config';\nexport { TimepickerModule } from './timepicker.module';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/timepicker/index.ts","import { Injectable } from '@angular/core';\nimport { Action } from '../../mini-ngrx/index';\nimport {\n TimeChangeEvent,\n TimepickerComponentState,\n Time\n} from '../timepicker.models';\n\n\nexport class TimepickerActions {\n static readonly WRITE_VALUE = '[timepicker] write value from ng model';\n static readonly CHANGE_HOURS = '[timepicker] change hours';\n static readonly CHANGE_MINUTES = '[timepicker] change minutes';\n static readonly CHANGE_SECONDS = '[timepicker] change seconds';\n static readonly SET_TIME_UNIT = '[timepicker] set time unit';\n static readonly UPDATE_CONTROLS = '[timepicker] update controls';\n\n writeValue(value: Date | string) {\n return {\n type: TimepickerActions.WRITE_VALUE,\n payload: value\n };\n }\n\n changeHours(event: TimeChangeEvent) {\n return {\n type: TimepickerActions.CHANGE_HOURS,\n payload: event\n };\n }\n\n changeMinutes(event: TimeChangeEvent) {\n return {\n type: TimepickerActions.CHANGE_MINUTES,\n payload: event\n };\n }\n\n changeSeconds(event: TimeChangeEvent): Action {\n return {\n type: TimepickerActions.CHANGE_SECONDS,\n payload: event\n };\n }\n\n setTime(value: Time): Action {\n return {\n type: TimepickerActions.SET_TIME_UNIT,\n payload: value\n };\n }\n\n updateControls(value: TimepickerComponentState): Action {\n return {\n type: TimepickerActions.UPDATE_CONTROLS,\n payload: value\n };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/timepicker/reducer/timepicker.actions.ts","import { Action } from '../../mini-ngrx/index';\nimport {\n canChangeHours,\n canChangeMinutes,\n canChangeSeconds,\n canChangeValue,\n timepickerControls\n} from '../timepicker-controls.util';\nimport { TimepickerConfig } from '../timepicker.config';\nimport {\n TimepickerComponentState,\n TimepickerControls\n} from '../timepicker.models';\nimport { changeTime, setTime } from '../timepicker.utils';\nimport { TimepickerActions } from './timepicker.actions';\n\nexport class TimepickerState {\n value: Date;\n config: TimepickerComponentState;\n controls: TimepickerControls;\n}\n\nexport const initialState: TimepickerState = {\n value: null,\n config: new TimepickerConfig(),\n controls: {\n canIncrementHours: true,\n canIncrementMinutes: true,\n canIncrementSeconds: true,\n\n canDecrementHours: true,\n canDecrementMinutes: true,\n canDecrementSeconds: true\n }\n};\n\nexport function timepickerReducer(state = initialState, action: Action) {\n switch (action.type) {\n case TimepickerActions.WRITE_VALUE: {\n return Object.assign({}, state, { value: action.payload });\n }\n\n case TimepickerActions.CHANGE_HOURS: {\n if (\n !canChangeValue(state.config, action.payload) ||\n !canChangeHours(action.payload, state.controls)\n ) {\n return state;\n }\n\n const _newTime = changeTime(state.value, { hour: action.payload.step });\n\n return Object.assign({}, state, { value: _newTime });\n }\n\n case TimepickerActions.CHANGE_MINUTES: {\n if (\n !canChangeValue(state.config, action.payload) ||\n !canChangeMinutes(action.payload, state.controls)\n ) {\n return state;\n }\n\n const _newTime = changeTime(state.value, { minute: action.payload.step });\n\n return Object.assign({}, state, { value: _newTime });\n }\n\n case TimepickerActions.CHANGE_SECONDS: {\n if (\n !canChangeValue(state.config, action.payload) ||\n !canChangeSeconds(action.payload, state.controls)\n ) {\n return state;\n }\n\n const _newTime = changeTime(state.value, {\n seconds: action.payload.step\n });\n\n return Object.assign({}, state, { value: _newTime });\n }\n\n case TimepickerActions.SET_TIME_UNIT: {\n if (!canChangeValue(state.config)) {\n return state;\n }\n\n const _newTime = setTime(state.value, action.payload);\n\n return Object.assign({}, state, { value: _newTime });\n }\n\n case TimepickerActions.UPDATE_CONTROLS: {\n const _newControlsState = timepickerControls(state.value, action.payload);\n const _newState: TimepickerState = {\n value: state.value,\n config: action.payload,\n controls: _newControlsState\n };\n\n if (state.config.showMeridian !== _newState.config.showMeridian) {\n _newState.value = new Date(state.value);\n }\n\n return Object.assign({}, state, _newState);\n }\n\n default:\n return state;\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/timepicker/reducer/timepicker.reducer.ts","import { Injectable } from '@angular/core';\nimport {\n timepickerReducer,\n TimepickerState,\n initialState\n} from './timepicker.reducer';\nimport { BehaviorSubject } from 'rxjs/BehaviorSubject';\n\nimport { Action } from '../../mini-ngrx/index';\nimport { MiniStore } from '../../mini-ngrx/store.class';\nimport { MiniState } from '../../mini-ngrx/state.class';\n\n\nexport class TimepickerStore extends MiniStore {\n constructor() {\n const _dispatcher = new BehaviorSubject({\n type: '[mini-ngrx] dispatcher init'\n });\n const state = new MiniState(\n initialState,\n _dispatcher,\n timepickerReducer\n );\n super(_dispatcher, timepickerReducer, state);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/timepicker/reducer/timepicker.store.ts","import { changeTime } from './timepicker.utils';\nimport {\n TimeChangeEvent,\n TimepickerComponentState,\n TimepickerControls\n} from './timepicker.models';\n\nexport function canChangeValue(\n state: TimepickerComponentState,\n event?: TimeChangeEvent\n): boolean {\n if (state.readonlyInput) {\n return false;\n }\n\n if (event) {\n if (event.source === 'wheel' && !state.mousewheel) {\n return false;\n }\n\n if (event.source === 'key' && !state.arrowkeys) {\n return false;\n }\n }\n\n return true;\n}\n\nexport function canChangeHours(\n event: TimeChangeEvent,\n controls: TimepickerControls\n): boolean {\n if (!event.step) {\n return false;\n }\n\n if (event.step > 0 && !controls.canIncrementHours) {\n return false;\n }\n\n if (event.step < 0 && !controls.canDecrementHours) {\n return false;\n }\n\n return true;\n}\n\nexport function canChangeMinutes(\n event: TimeChangeEvent,\n controls: TimepickerControls\n): boolean {\n if (!event.step) {\n return false;\n }\n if (event.step > 0 && !controls.canIncrementMinutes) {\n return false;\n }\n if (event.step < 0 && !controls.canDecrementMinutes) {\n return false;\n }\n\n return true;\n}\n\nexport function canChangeSeconds(\n event: TimeChangeEvent,\n controls: TimepickerControls\n): boolean {\n if (!event.step) {\n return false;\n }\n if (event.step > 0 && !controls.canIncrementSeconds) {\n return false;\n }\n if (event.step < 0 && !controls.canDecrementSeconds) {\n return false;\n }\n\n return true;\n}\n\nexport function getControlsValue(\n state: TimepickerComponentState\n): TimepickerComponentState {\n const {\n hourStep,\n minuteStep,\n secondsStep,\n readonlyInput,\n mousewheel,\n arrowkeys,\n showSpinners,\n showMeridian,\n showSeconds,\n meridians,\n min,\n max\n } = state;\n\n return {\n hourStep,\n minuteStep,\n secondsStep,\n readonlyInput,\n mousewheel,\n arrowkeys,\n showSpinners,\n showMeridian,\n showSeconds,\n meridians,\n min,\n max\n };\n}\n\nexport function timepickerControls(\n value: Date,\n state: TimepickerComponentState\n): TimepickerControls {\n const { min, max, hourStep, minuteStep, secondsStep, showSeconds } = state;\n const res: TimepickerControls = {\n canIncrementHours: true,\n canIncrementMinutes: true,\n canIncrementSeconds: true,\n\n canDecrementHours: true,\n canDecrementMinutes: true,\n canDecrementSeconds: true\n };\n\n if (!value) {\n return res;\n }\n\n // compare dates\n if (max) {\n const _newHour = changeTime(value, { hour: hourStep });\n res.canIncrementHours = max > _newHour;\n\n if (!res.canIncrementHours) {\n const _newMinutes = changeTime(value, { minute: minuteStep });\n res.canIncrementMinutes = showSeconds\n ? max > _newMinutes\n : max >= _newMinutes;\n }\n\n if (!res.canIncrementMinutes) {\n const _newSeconds = changeTime(value, { seconds: secondsStep });\n res.canIncrementSeconds = max >= _newSeconds;\n }\n }\n\n if (min) {\n const _newHour = changeTime(value, { hour: -hourStep });\n res.canDecrementHours = min < _newHour;\n\n if (!res.canDecrementHours) {\n const _newMinutes = changeTime(value, { minute: -minuteStep });\n res.canDecrementMinutes = showSeconds\n ? min < _newMinutes\n : min <= _newMinutes;\n }\n\n if (!res.canDecrementMinutes) {\n const _newSeconds = changeTime(value, { seconds: -secondsStep });\n res.canDecrementSeconds = min <= _newSeconds;\n }\n }\n\n return res;\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/timepicker/timepicker-controls.util.ts","/* tslint:disable:no-forward-ref max-file-line-count */\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n forwardRef,\n Input,\n OnChanges,\n Output,\n SimpleChanges, ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { TimepickerActions } from './reducer/timepicker.actions';\nimport { TimepickerStore } from './reducer/timepicker.store';\nimport { getControlsValue } from './timepicker-controls.util';\nimport { TimepickerConfig } from './timepicker.config';\nimport {\n TimeChangeSource,\n TimepickerComponentState,\n TimepickerControls\n} from './timepicker.models';\nimport {\n isValidDate,\n padNumber,\n parseTime,\n isInputValid\n} from './timepicker.utils';\n\nexport const TIMEPICKER_CONTROL_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n // tslint:disable-next-line\n useExisting: forwardRef(() => TimepickerComponent),\n multi: true\n};\n\n\nexport class TimepickerComponent\n implements ControlValueAccessor,\n TimepickerComponentState,\n TimepickerControls,\n OnChanges {\n /** hours change step */\n hourStep: number;\n /** hours change step */\n minuteStep: number;\n /** seconds change step */\n secondsStep: number;\n /** if true hours and minutes fields will be readonly */\n readonlyInput: boolean;\n /** if true scroll inside hours and minutes inputs will change time */\n mousewheel: boolean;\n /** if true up/down arrowkeys inside hours and minutes inputs will change time */\n arrowkeys: boolean;\n /** if true spinner arrows above and below the inputs will be shown */\n showSpinners: boolean;\n showMeridian: boolean;\n showSeconds: boolean;\n\n /** meridian labels based on locale */\n meridians: string[];\n\n /** minimum time user can select */\n min: Date;\n /** maximum time user can select */\n max: Date;\n\n /** emits true if value is a valid date */\n isValid: EventEmitter = new EventEmitter();\n\n // ui variables\n hours: string;\n minutes: string;\n seconds: string;\n meridian: string;\n\n get isSpinnersVisible(): boolean {\n return this.showSpinners && !this.readonlyInput;\n }\n\n // min\\max validation for input fields\n invalidHours = false;\n invalidMinutes = false;\n invalidSeconds = false;\n\n // time picker controls state\n canIncrementHours: boolean;\n canIncrementMinutes: boolean;\n canIncrementSeconds: boolean;\n\n canDecrementHours: boolean;\n canDecrementMinutes: boolean;\n canDecrementSeconds: boolean;\n\n // control value accessor methods\n onChange: any = Function.prototype;\n onTouched: any = Function.prototype;\n\n constructor(\n _config: TimepickerConfig,\n _cd: ChangeDetectorRef,\n private _store: TimepickerStore,\n private _timepickerActions: TimepickerActions\n ) {\n Object.assign(this, _config);\n // todo: add unsubscribe\n _store.select(state => state.value).subscribe(value => {\n // update UI values if date changed\n this._renderTime(value);\n this.onChange(value);\n\n this._store.dispatch(\n this._timepickerActions.updateControls(getControlsValue(this))\n );\n });\n\n _store.select(state => state.controls).subscribe(controlsState => {\n this.isValid.emit(\n isInputValid(this.hours, this.minutes, this.seconds, this.isPM())\n );\n Object.assign(this, controlsState);\n _cd.markForCheck();\n });\n }\n\n isPM(): boolean {\n return this.showMeridian && this.meridian === this.meridians[1];\n }\n\n prevDef($event: any) {\n $event.preventDefault();\n }\n\n wheelSign($event: any): number {\n return Math.sign($event.deltaY as number) * -1;\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this._store.dispatch(\n this._timepickerActions.updateControls(getControlsValue(this))\n );\n }\n\n changeHours(step: number, source: TimeChangeSource = ''): void {\n this._store.dispatch(this._timepickerActions.changeHours({ step, source }));\n }\n\n changeMinutes(step: number, source: TimeChangeSource = ''): void {\n this._store.dispatch(\n this._timepickerActions.changeMinutes({ step, source })\n );\n }\n\n changeSeconds(step: number, source: TimeChangeSource = ''): void {\n this._store.dispatch(\n this._timepickerActions.changeSeconds({ step, source })\n );\n }\n\n updateHours(hours: string): void {\n this.hours = hours;\n this._updateTime();\n }\n\n updateMinutes(minutes: string) {\n this.minutes = minutes;\n this._updateTime();\n }\n\n updateSeconds(seconds: string) {\n this.seconds = seconds;\n this._updateTime();\n }\n\n _updateTime() {\n if (!isInputValid(this.hours, this.minutes, this.seconds, this.isPM())) {\n this.onChange(null);\n\n return;\n }\n this._store.dispatch(\n this._timepickerActions.setTime({\n hour: this.hours,\n minute: this.minutes,\n seconds: this.seconds,\n isPM: this.isPM()\n })\n );\n }\n\n toggleMeridian(): void {\n if (!this.showMeridian || this.readonlyInput) {\n return;\n }\n\n const _hoursPerDayHalf = 12;\n this._store.dispatch(\n this._timepickerActions.changeHours({\n step: _hoursPerDayHalf,\n source: ''\n })\n );\n }\n\n /**\n * Write a new value to the element.\n */\n writeValue(obj: any): void {\n if (isValidDate(obj)) {\n this._store.dispatch(this._timepickerActions.writeValue(parseTime(obj)));\n }\n }\n\n /**\n * Set the function to be called when the control receives a change event.\n */\n registerOnChange(fn: (_: any) => {}): void {\n this.onChange = fn;\n }\n\n /**\n * Set the function to be called when the control receives a touch event.\n */\n registerOnTouched(fn: () => {}): void {\n this.onTouched = fn;\n }\n\n /**\n * This function is called when the control status changes to or from \"DISABLED\".\n * Depending on the value, it will enable or disable the appropriate DOM element.\n *\n * @param isDisabled\n */\n setDisabledState(isDisabled: boolean): void {\n this.readonlyInput = isDisabled;\n }\n\n private _renderTime(value: string | Date): void {\n if (!isValidDate(value)) {\n this.hours = '';\n this.minutes = '';\n this.seconds = '';\n this.meridian = this.meridians[0];\n\n return;\n }\n\n const _value = parseTime(value);\n const _hoursPerDayHalf = 12;\n let _hours = _value.getHours();\n\n if (this.showMeridian) {\n this.meridian = this.meridians[_hours >= _hoursPerDayHalf ? 1 : 0];\n _hours = _hours % _hoursPerDayHalf;\n // should be 12 PM, not 00 PM\n if (_hours === 0) {\n _hours = _hoursPerDayHalf;\n }\n }\n\n this.hours = padNumber(_hours);\n this.minutes = padNumber(_value.getMinutes());\n this.seconds = padNumber(_value.getUTCSeconds());\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'timepicker',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TIMEPICKER_CONTROL_VALUE_ACCESSOR, TimepickerStore],\n template: \"
             
     :   :     
             
    \",\n styles: [`\n .bs-chevron{\n border-style: solid;\n display: block;\n width: 9px;\n height: 9px;\n position: relative;\n border-width: 3px 0px 0 3px;\n }\n .bs-chevron-up{\n -webkit-transform: rotate(45deg);\n transform: rotate(45deg);\n top: 2px;\n }\n .bs-chevron-down{\n -webkit-transform: rotate(-135deg);\n transform: rotate(-135deg);\n top: -2px;\n }\n `],\n encapsulation: ViewEncapsulation.None\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TimepickerConfig, },\n{type: ChangeDetectorRef, },\n{type: TimepickerStore, },\n{type: TimepickerActions, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'hourStep': [{ type: Input },],\n'minuteStep': [{ type: Input },],\n'secondsStep': [{ type: Input },],\n'readonlyInput': [{ type: Input },],\n'mousewheel': [{ type: Input },],\n'arrowkeys': [{ type: Input },],\n'showSpinners': [{ type: Input },],\n'showMeridian': [{ type: Input },],\n'showSeconds': [{ type: Input },],\n'meridians': [{ type: Input },],\n'min': [{ type: Input },],\n'max': [{ type: Input },],\n'isValid': [{ type: Output },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/timepicker/timepicker.component.ts","import { Injectable } from '@angular/core';\n\n/** Provides default configuration values for timepicker */\n\nexport class TimepickerConfig {\n /** hours change step */\n hourStep = 1;\n /** hours change step */\n minuteStep = 5;\n /** seconds changes step */\n secondsStep = 10;\n /** if true works in 12H mode and displays AM/PM. If false works in 24H mode and hides AM/PM */\n showMeridian = true;\n /** meridian labels based on locale */\n meridians = ['AM', 'PM'];\n /** if true hours and minutes fields will be readonly */\n readonlyInput = false;\n /** if true scroll inside hours and minutes inputs will change time */\n mousewheel = true;\n /** if true up/down arrowkeys inside hours and minutes inputs will change time */\n arrowkeys = true;\n /** if true spinner arrows above and below the inputs will be shown */\n showSpinners = true;\n /** show seconds in timepicker */\n showSeconds = false;\n /** minimum time user can select */\n min: Date;\n /** maximum time user can select */\n max: Date;\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/timepicker/timepicker.config.ts","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { TimepickerComponent } from './timepicker.component';\nimport { TimepickerActions } from './reducer/timepicker.actions';\nimport { TimepickerConfig } from './timepicker.config';\nimport { TimepickerStore } from './reducer/timepicker.store';\n\n\nexport class TimepickerModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: TimepickerModule,\n providers: [TimepickerConfig, TimepickerActions, TimepickerStore]\n };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n declarations: [TimepickerComponent],\n exports: [TimepickerComponent]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/timepicker/timepicker.module.ts","import { Time } from './timepicker.models';\n\nconst dex = 10;\nconst hoursPerDay = 24;\nconst hoursPerDayHalf = 12;\nconst minutesPerHour = 60;\nconst secondsPerMinute = 60;\n\nexport function isValidDate(value?: string | Date): boolean {\n if (!value) {\n return false;\n }\n\n if (value instanceof Date && isNaN(value.getHours())) {\n return false;\n }\n\n if (typeof value === 'string') {\n return isValidDate(new Date(value));\n }\n\n return true;\n}\n\nexport function toNumber(value: string | number): number {\n if (typeof value === 'number') {\n return value;\n }\n\n return parseInt(value, dex);\n}\n\nexport function isNumber(value: string): boolean {\n return !isNaN(toNumber(value));\n}\n\nexport function parseHours(\n value: string | number,\n isPM = false\n): number {\n const hour = toNumber(value);\n if (\n isNaN(hour) ||\n hour < 0 ||\n hour > (isPM ? hoursPerDayHalf : hoursPerDay)\n ) {\n return NaN;\n }\n\n return hour;\n}\n\nexport function parseMinutes(value: string | number): number {\n const minute = toNumber(value);\n if (isNaN(minute) || minute < 0 || minute > minutesPerHour) {\n return NaN;\n }\n\n return minute;\n}\n\nexport function parseSeconds(value: string | number): number {\n const seconds = toNumber(value);\n if (isNaN(seconds) || seconds < 0 || seconds > secondsPerMinute) {\n return NaN;\n }\n\n return seconds;\n}\n\nexport function parseTime(value: string | Date): Date {\n if (typeof value === 'string') {\n return new Date(value);\n }\n\n return value;\n}\n\nexport function changeTime(value: Date, diff: Time): Date {\n if (!value) {\n return changeTime(createDate(new Date(), 0, 0, 0), diff);\n }\n\n let hour = value.getHours();\n let minutes = value.getMinutes();\n let seconds = value.getSeconds();\n\n if (diff.hour) {\n hour = (hour + toNumber(diff.hour)) % hoursPerDay;\n if (hour < 0) {\n hour += hoursPerDay;\n }\n }\n\n if (diff.minute) {\n minutes = minutes + toNumber(diff.minute);\n }\n\n if (diff.seconds) {\n seconds = seconds + toNumber(diff.seconds);\n }\n\n return createDate(value, hour, minutes, seconds);\n}\n\nexport function setTime(value: Date, opts: Time): Date {\n let hour = parseHours(opts.hour);\n const minute = parseMinutes(opts.minute);\n const seconds = parseSeconds(opts.seconds) || 0;\n\n if (opts.isPM) {\n hour += hoursPerDayHalf;\n }\n\n // fixme: unreachable code, value is mandatory\n if (!value) {\n if (!isNaN(hour) && !isNaN(minute)) {\n return createDate(new Date(), hour, minute, seconds);\n }\n\n return value;\n }\n\n if (isNaN(hour) || isNaN(minute)) {\n return value;\n }\n\n return createDate(value, hour, minute, seconds);\n}\n\nexport function createDate(\n value: Date,\n hours: number,\n minutes: number,\n seconds: number\n): Date {\n // fixme: unreachable code, value is mandatory\n const _value = value || new Date();\n\n return new Date(\n _value.getFullYear(),\n _value.getMonth(),\n _value.getDate(),\n hours,\n minutes,\n seconds,\n _value.getMilliseconds()\n );\n}\n\nexport function padNumber(value: number): string {\n const _value = value.toString();\n if (_value.length > 1) {\n return _value;\n }\n\n return `0${_value}`;\n}\n\nexport function isInputValid(\n hours: string,\n minutes: string,\n seconds = '0',\n isPM: boolean\n): boolean {\n return !(isNaN(parseHours(hours, isPM))\n || isNaN(parseMinutes(minutes))\n || isNaN(parseSeconds(seconds)));\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/timepicker/timepicker.utils.ts","export { TooltipContainerComponent } from './tooltip-container.component';\nexport { TooltipDirective } from './tooltip.directive';\nexport { TooltipModule } from './tooltip.module';\nexport { TooltipConfig } from './tooltip.config';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/tooltip/index.ts","import {\n AfterViewInit,\n Component,\n ChangeDetectionStrategy\n} from '@angular/core';\nimport { TooltipConfig } from './tooltip.config';\nimport { isBs3 } from '../utils/theme-provider';\n\n\nexport class TooltipContainerComponent implements AfterViewInit {\n classMap: any;\n placement: string;\n containerClass: string;\n animation: boolean;\n\n get isBs3(): boolean {\n return isBs3();\n }\n\n constructor(config: TooltipConfig) {\n Object.assign(this, config);\n }\n\n ngAfterViewInit(): void {\n this.classMap = { in: false, fade: false };\n this.classMap[this.placement] = true;\n this.classMap[`tooltip-${this.placement}`] = true;\n\n this.classMap.in = true;\n if (this.animation) {\n this.classMap.fade = true;\n }\n\n if (this.containerClass) {\n this.classMap[this.containerClass] = true;\n }\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bs-tooltip-container',\n changeDetection: ChangeDetectionStrategy.OnPush,\n // tslint:disable-next-line\n host: {\n '[class]':\n '\"tooltip in tooltip-\" + placement + \" \" + \"bs-tooltip-\" + placement + \" \" + placement + \" \" + containerClass',\n '[class.show]': '!isBs3',\n role: 'tooltip'\n },\n styles: [\n `\n :host.tooltip {\n display: block;\n }\n :host.bs-tooltip-top .arrow, :host.bs-tooltip-bottom .arrow {\n left: calc(50% - 2.5px);\n }\n :host.bs-tooltip-left .arrow, :host.bs-tooltip-right .arrow {\n top: calc(50% - 2.5px);\n }\n `\n ],\n template: `\n
    \n
    \n `\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TooltipConfig, },\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/tooltip/tooltip-container.component.ts","import { Injectable } from '@angular/core';\n\n/** Default values provider for tooltip */\n\nexport class TooltipConfig {\n /** tooltip placement, supported positions: 'top', 'bottom', 'left', 'right' */\n placement = 'top';\n /** array of event names which triggers tooltip opening */\n triggers = 'hover focus';\n /** a selector specifying the element the tooltip should be appended to. Currently only supports \"body\" */\n container: string;\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/tooltip/tooltip.config.ts","// tslint:disable:deprecation\nimport {\n Directive, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output,\n Renderer2, TemplateRef, ViewContainerRef\n} from '@angular/core';\nimport { TooltipContainerComponent } from './tooltip-container.component';\nimport { TooltipConfig } from './tooltip.config';\nimport { ComponentLoader, ComponentLoaderFactory } from '../component-loader';\nimport { OnChange } from '../utils/decorators';\nimport { warnOnce } from '../utils/warn-once';\n\n\nexport class TooltipDirective implements OnInit, OnDestroy {\n /**\n * Content to be displayed as tooltip.\n */\n @OnChange()\n \n tooltip: string | TemplateRef;\n /** Fired when tooltip content changes */\n \n tooltipChange: EventEmitter> = new EventEmitter();\n\n /**\n * Placement of a tooltip. Accepts: \"top\", \"bottom\", \"left\", \"right\"\n */\n placement: string;\n /**\n * Specifies events that should trigger. Supports a space separated list of\n * event names.\n */\n triggers: string;\n /**\n * A selector specifying the element the tooltip should be appended to.\n * Currently only supports \"body\".\n */\n container: string;\n\n /**\n * Returns whether or not the tooltip is currently being shown\n */\n \n get isOpen(): boolean {\n return this._tooltip.isShown;\n }\n\n set isOpen(value: boolean) {\n if (value) {\n this.show();\n } else {\n this.hide();\n }\n }\n\n /**\n * Allows to disable tooltip\n */\n isDisabled: boolean;\n\n /**\n * Css class for tooltip container\n */\n containerClass = '';\n\n /**\n * Emits an event when the tooltip is shown\n */\n onShown: EventEmitter;\n /**\n * Emits an event when the tooltip is hidden\n */\n onHidden: EventEmitter;\n\n /** @deprecated - please use `tooltip` instead */\n \n set htmlContent(value: string | TemplateRef) {\n warnOnce('tooltipHtml was deprecated, please use `tooltip` instead');\n this.tooltip = value;\n }\n\n /** @deprecated - please use `placement` instead */\n \n set _placement(value: string) {\n warnOnce('tooltipPlacement was deprecated, please use `placement` instead');\n this.placement = value;\n }\n\n /** @deprecated - please use `isOpen` instead*/\n \n set _isOpen(value: boolean) {\n warnOnce('tooltipIsOpen was deprecated, please use `isOpen` instead');\n this.isOpen = value;\n }\n\n get _isOpen(): boolean {\n warnOnce('tooltipIsOpen was deprecated, please use `isOpen` instead');\n return this.isOpen;\n }\n\n /** @deprecated - please use `isDisabled` instead */\n \n set _enable(value: boolean) {\n warnOnce('tooltipEnable was deprecated, please use `isDisabled` instead');\n this.isDisabled = value;\n }\n\n get _enable(): boolean {\n warnOnce('tooltipEnable was deprecated, please use `isDisabled` instead');\n return this.isDisabled;\n }\n\n /** @deprecated - please use `container=\"body\"` instead */\n \n set _appendToBody(value: boolean) {\n warnOnce(\n 'tooltipAppendToBody was deprecated, please use `container=\"body\"` instead'\n );\n this.container = value ? 'body' : this.container;\n }\n\n get _appendToBody(): boolean {\n warnOnce(\n 'tooltipAppendToBody was deprecated, please use `container=\"body\"` instead'\n );\n return this.container === 'body';\n }\n\n /** @deprecated - removed, will be added to configuration */\n _animation = true;\n\n /** @deprecated - will replaced with customClass */\n \n set _popupClass(value: string) {\n warnOnce('tooltipClass deprecated');\n }\n\n /** @deprecated - removed */\n \n set _tooltipContext(value: any) {\n warnOnce('tooltipContext deprecated');\n }\n\n /** @deprecated */\n _delay = 0;\n\n /** @deprecated */\n _fadeDuration = 150;\n\n /** @deprecated - please use `triggers` instead */\n \n get _tooltipTrigger(): string | string[] {\n warnOnce('tooltipTrigger was deprecated, please use `triggers` instead');\n return this.triggers;\n }\n\n set _tooltipTrigger(value: string | string[]) {\n warnOnce('tooltipTrigger was deprecated, please use `triggers` instead');\n this.triggers = (value || '').toString();\n }\n\n /** @deprecated */\n \n tooltipStateChanged: EventEmitter = new EventEmitter();\n protected _delayTimeoutId: number | any;\n\n private _tooltip: ComponentLoader;\n\n constructor(_viewContainerRef: ViewContainerRef,\n _renderer: Renderer2,\n _elementRef: ElementRef,\n cis: ComponentLoaderFactory,\n config: TooltipConfig) {\n this._tooltip = cis\n .createLoader(\n _elementRef,\n _viewContainerRef,\n _renderer\n )\n .provide({provide: TooltipConfig, useValue: config});\n\n Object.assign(this, config);\n this.onShown = this._tooltip.onShown;\n this.onHidden = this._tooltip.onHidden;\n }\n\n ngOnInit(): void {\n this._tooltip.listen({\n triggers: this.triggers,\n show: () => this.show()\n });\n this.tooltipChange.subscribe((value: any) => {\n if (!value) {\n this._tooltip.hide();\n }\n });\n }\n\n /**\n * Toggles an element’s tooltip. This is considered a “manual” triggering of\n * the tooltip.\n */\n toggle(): void {\n if (this.isOpen) {\n return this.hide();\n }\n\n this.show();\n }\n\n /**\n * Opens an element’s tooltip. This is considered a “manual” triggering of\n * the tooltip.\n */\n show(): void {\n if (\n this.isOpen ||\n this.isDisabled ||\n this._delayTimeoutId ||\n !this.tooltip\n ) {\n return;\n }\n\n const showTooltip = () =>\n this._tooltip\n .attach(TooltipContainerComponent)\n .to(this.container)\n .position({attachment: this.placement})\n .show({\n content: this.tooltip,\n placement: this.placement,\n containerClass: this.containerClass\n });\n\n if (this._delay) {\n this._delayTimeoutId = setTimeout(() => {\n showTooltip();\n }, this._delay);\n } else {\n showTooltip();\n }\n }\n\n /**\n * Closes an element’s tooltip. This is considered a “manual” triggering of\n * the tooltip.\n */\n hide(): void {\n if (this._delayTimeoutId) {\n clearTimeout(this._delayTimeoutId);\n this._delayTimeoutId = undefined;\n }\n\n if (!this._tooltip.isShown) {\n return;\n }\n\n this._tooltip.instance.classMap.in = false;\n setTimeout(() => {\n this._tooltip.hide();\n }, this._fadeDuration);\n }\n\n ngOnDestroy(): void {\n this._tooltip.dispose();\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[tooltip], [tooltipHtml]',\n exportAs: 'bs-tooltip'\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ViewContainerRef, },\n{type: Renderer2, },\n{type: ElementRef, },\n{type: ComponentLoaderFactory, },\n{type: TooltipConfig, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'tooltip': [{ type: Input },],\n'tooltipChange': [{ type: Output },],\n'placement': [{ type: Input },],\n'triggers': [{ type: Input },],\n'container': [{ type: Input },],\n'isOpen': [{ type: Input },],\n'isDisabled': [{ type: Input },],\n'containerClass': [{ type: Input },],\n'onShown': [{ type: Output },],\n'onHidden': [{ type: Output },],\n'htmlContent': [{ type: Input, args: ['tooltipHtml', ] },],\n'_placement': [{ type: Input, args: ['tooltipPlacement', ] },],\n'_isOpen': [{ type: Input, args: ['tooltipIsOpen', ] },],\n'_enable': [{ type: Input, args: ['tooltipEnable', ] },],\n'_appendToBody': [{ type: Input, args: ['tooltipAppendToBody', ] },],\n'_animation': [{ type: Input, args: ['tooltipAnimation', ] },],\n'_popupClass': [{ type: Input, args: ['tooltipClass', ] },],\n'_tooltipContext': [{ type: Input, args: ['tooltipContext', ] },],\n'_delay': [{ type: Input, args: ['tooltipPopupDelay', ] },],\n'_fadeDuration': [{ type: Input, args: ['tooltipFadeDuration', ] },],\n'_tooltipTrigger': [{ type: Input, args: ['tooltipTrigger', ] },],\n'tooltipStateChanged': [{ type: Output },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/tooltip/tooltip.directive.ts","import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\nimport { TooltipContainerComponent } from './tooltip-container.component';\nimport { TooltipDirective } from './tooltip.directive';\nimport { TooltipConfig } from './tooltip.config';\nimport { ComponentLoaderFactory } from '../component-loader';\nimport { PositioningService } from '../positioning';\n\n\nexport class TooltipModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: TooltipModule,\n providers: [TooltipConfig, ComponentLoaderFactory, PositioningService]\n };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n declarations: [TooltipDirective, TooltipContainerComponent],\n exports: [TooltipDirective],\n entryComponents: [TooltipContainerComponent]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/tooltip/tooltip.module.ts","export { latinMap } from './latin-map';\nexport { TypeaheadOptions } from './typeahead-options.class';\nexport { TypeaheadMatch } from './typeahead-match.class';\n\nexport {\n escapeRegexp,\n getValueFromObject,\n tokenize,\n latinize\n} from './typeahead-utils';\nexport { TypeaheadContainerComponent } from './typeahead-container.component';\nexport { TypeaheadDirective } from './typeahead.directive';\nexport { TypeaheadModule } from './typeahead.module';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/typeahead/index.ts","/* tslint:disable:max-file-line-count */\nexport const latinMap: { [key: string]: string } = {\n Á: 'A',\n Ă: 'A',\n Ắ: 'A',\n Ặ: 'A',\n Ằ: 'A',\n Ẳ: 'A',\n Ẵ: 'A',\n Ǎ: 'A',\n Â: 'A',\n Ấ: 'A',\n Ậ: 'A',\n Ầ: 'A',\n Ẩ: 'A',\n Ẫ: 'A',\n Ä: 'A',\n Ǟ: 'A',\n Ȧ: 'A',\n Ǡ: 'A',\n Ạ: 'A',\n Ȁ: 'A',\n À: 'A',\n Ả: 'A',\n Ȃ: 'A',\n Ā: 'A',\n Ą: 'A',\n Å: 'A',\n Ǻ: 'A',\n Ḁ: 'A',\n Ⱥ: 'A',\n Ã: 'A',\n Ꜳ: 'AA',\n Æ: 'AE',\n Ǽ: 'AE',\n Ǣ: 'AE',\n Ꜵ: 'AO',\n Ꜷ: 'AU',\n Ꜹ: 'AV',\n Ꜻ: 'AV',\n Ꜽ: 'AY',\n Ḃ: 'B',\n Ḅ: 'B',\n Ɓ: 'B',\n Ḇ: 'B',\n Ƀ: 'B',\n Ƃ: 'B',\n Ć: 'C',\n Č: 'C',\n Ç: 'C',\n Ḉ: 'C',\n Ĉ: 'C',\n Ċ: 'C',\n Ƈ: 'C',\n Ȼ: 'C',\n Ď: 'D',\n Ḑ: 'D',\n Ḓ: 'D',\n Ḋ: 'D',\n Ḍ: 'D',\n Ɗ: 'D',\n Ḏ: 'D',\n Dz: 'D',\n Dž: 'D',\n Đ: 'D',\n Ƌ: 'D',\n DZ: 'DZ',\n DŽ: 'DZ',\n É: 'E',\n Ĕ: 'E',\n Ě: 'E',\n Ȩ: 'E',\n Ḝ: 'E',\n Ê: 'E',\n Ế: 'E',\n Ệ: 'E',\n Ề: 'E',\n Ể: 'E',\n Ễ: 'E',\n Ḙ: 'E',\n Ë: 'E',\n Ė: 'E',\n Ẹ: 'E',\n Ȅ: 'E',\n È: 'E',\n Ẻ: 'E',\n Ȇ: 'E',\n Ē: 'E',\n Ḗ: 'E',\n Ḕ: 'E',\n Ę: 'E',\n Ɇ: 'E',\n Ẽ: 'E',\n Ḛ: 'E',\n Ꝫ: 'ET',\n Ḟ: 'F',\n Ƒ: 'F',\n Ǵ: 'G',\n Ğ: 'G',\n Ǧ: 'G',\n Ģ: 'G',\n Ĝ: 'G',\n Ġ: 'G',\n Ɠ: 'G',\n Ḡ: 'G',\n Ǥ: 'G',\n Ḫ: 'H',\n Ȟ: 'H',\n Ḩ: 'H',\n Ĥ: 'H',\n Ⱨ: 'H',\n Ḧ: 'H',\n Ḣ: 'H',\n Ḥ: 'H',\n Ħ: 'H',\n Í: 'I',\n Ĭ: 'I',\n Ǐ: 'I',\n Î: 'I',\n Ï: 'I',\n Ḯ: 'I',\n İ: 'I',\n Ị: 'I',\n Ȉ: 'I',\n Ì: 'I',\n Ỉ: 'I',\n Ȋ: 'I',\n Ī: 'I',\n Į: 'I',\n Ɨ: 'I',\n Ĩ: 'I',\n Ḭ: 'I',\n Ꝺ: 'D',\n Ꝼ: 'F',\n Ᵹ: 'G',\n Ꞃ: 'R',\n Ꞅ: 'S',\n Ꞇ: 'T',\n Ꝭ: 'IS',\n Ĵ: 'J',\n Ɉ: 'J',\n Ḱ: 'K',\n Ǩ: 'K',\n Ķ: 'K',\n Ⱪ: 'K',\n Ꝃ: 'K',\n Ḳ: 'K',\n Ƙ: 'K',\n Ḵ: 'K',\n Ꝁ: 'K',\n Ꝅ: 'K',\n Ĺ: 'L',\n Ƚ: 'L',\n Ľ: 'L',\n Ļ: 'L',\n Ḽ: 'L',\n Ḷ: 'L',\n Ḹ: 'L',\n Ⱡ: 'L',\n Ꝉ: 'L',\n Ḻ: 'L',\n Ŀ: 'L',\n Ɫ: 'L',\n Lj: 'L',\n Ł: 'L',\n LJ: 'LJ',\n Ḿ: 'M',\n Ṁ: 'M',\n Ṃ: 'M',\n Ɱ: 'M',\n Ń: 'N',\n Ň: 'N',\n Ņ: 'N',\n Ṋ: 'N',\n Ṅ: 'N',\n Ṇ: 'N',\n Ǹ: 'N',\n Ɲ: 'N',\n Ṉ: 'N',\n Ƞ: 'N',\n Nj: 'N',\n Ñ: 'N',\n NJ: 'NJ',\n Ó: 'O',\n Ŏ: 'O',\n Ǒ: 'O',\n Ô: 'O',\n Ố: 'O',\n Ộ: 'O',\n Ồ: 'O',\n Ổ: 'O',\n Ỗ: 'O',\n Ö: 'O',\n Ȫ: 'O',\n Ȯ: 'O',\n Ȱ: 'O',\n Ọ: 'O',\n Ő: 'O',\n Ȍ: 'O',\n Ò: 'O',\n Ỏ: 'O',\n Ơ: 'O',\n Ớ: 'O',\n Ợ: 'O',\n Ờ: 'O',\n Ở: 'O',\n Ỡ: 'O',\n Ȏ: 'O',\n Ꝋ: 'O',\n Ꝍ: 'O',\n Ō: 'O',\n Ṓ: 'O',\n Ṑ: 'O',\n Ɵ: 'O',\n Ǫ: 'O',\n Ǭ: 'O',\n Ø: 'O',\n Ǿ: 'O',\n Õ: 'O',\n Ṍ: 'O',\n Ṏ: 'O',\n Ȭ: 'O',\n Ƣ: 'OI',\n Ꝏ: 'OO',\n Ɛ: 'E',\n Ɔ: 'O',\n Ȣ: 'OU',\n Ṕ: 'P',\n Ṗ: 'P',\n Ꝓ: 'P',\n Ƥ: 'P',\n Ꝕ: 'P',\n Ᵽ: 'P',\n Ꝑ: 'P',\n Ꝙ: 'Q',\n Ꝗ: 'Q',\n Ŕ: 'R',\n Ř: 'R',\n Ŗ: 'R',\n Ṙ: 'R',\n Ṛ: 'R',\n Ṝ: 'R',\n Ȑ: 'R',\n Ȓ: 'R',\n Ṟ: 'R',\n Ɍ: 'R',\n Ɽ: 'R',\n Ꜿ: 'C',\n Ǝ: 'E',\n Ś: 'S',\n Ṥ: 'S',\n Š: 'S',\n Ṧ: 'S',\n Ş: 'S',\n Ŝ: 'S',\n Ș: 'S',\n Ṡ: 'S',\n Ṣ: 'S',\n Ṩ: 'S',\n Ť: 'T',\n Ţ: 'T',\n Ṱ: 'T',\n Ț: 'T',\n Ⱦ: 'T',\n Ṫ: 'T',\n Ṭ: 'T',\n Ƭ: 'T',\n Ṯ: 'T',\n Ʈ: 'T',\n Ŧ: 'T',\n Ɐ: 'A',\n Ꞁ: 'L',\n Ɯ: 'M',\n Ʌ: 'V',\n Ꜩ: 'TZ',\n Ú: 'U',\n Ŭ: 'U',\n Ǔ: 'U',\n Û: 'U',\n Ṷ: 'U',\n Ü: 'U',\n Ǘ: 'U',\n Ǚ: 'U',\n Ǜ: 'U',\n Ǖ: 'U',\n Ṳ: 'U',\n Ụ: 'U',\n Ű: 'U',\n Ȕ: 'U',\n Ù: 'U',\n Ủ: 'U',\n Ư: 'U',\n Ứ: 'U',\n Ự: 'U',\n Ừ: 'U',\n Ử: 'U',\n Ữ: 'U',\n Ȗ: 'U',\n Ū: 'U',\n Ṻ: 'U',\n Ų: 'U',\n Ů: 'U',\n Ũ: 'U',\n Ṹ: 'U',\n Ṵ: 'U',\n Ꝟ: 'V',\n Ṿ: 'V',\n Ʋ: 'V',\n Ṽ: 'V',\n Ꝡ: 'VY',\n Ẃ: 'W',\n Ŵ: 'W',\n Ẅ: 'W',\n Ẇ: 'W',\n Ẉ: 'W',\n Ẁ: 'W',\n Ⱳ: 'W',\n Ẍ: 'X',\n Ẋ: 'X',\n Ý: 'Y',\n Ŷ: 'Y',\n Ÿ: 'Y',\n Ẏ: 'Y',\n Ỵ: 'Y',\n Ỳ: 'Y',\n Ƴ: 'Y',\n Ỷ: 'Y',\n Ỿ: 'Y',\n Ȳ: 'Y',\n Ɏ: 'Y',\n Ỹ: 'Y',\n Ź: 'Z',\n Ž: 'Z',\n Ẑ: 'Z',\n Ⱬ: 'Z',\n Ż: 'Z',\n Ẓ: 'Z',\n Ȥ: 'Z',\n Ẕ: 'Z',\n Ƶ: 'Z',\n IJ: 'IJ',\n Œ: 'OE',\n ᴀ: 'A',\n ᴁ: 'AE',\n ʙ: 'B',\n ᴃ: 'B',\n ᴄ: 'C',\n ᴅ: 'D',\n ᴇ: 'E',\n ꜰ: 'F',\n ɢ: 'G',\n ʛ: 'G',\n ʜ: 'H',\n ɪ: 'I',\n ʁ: 'R',\n ᴊ: 'J',\n ᴋ: 'K',\n ʟ: 'L',\n ᴌ: 'L',\n ᴍ: 'M',\n ɴ: 'N',\n ᴏ: 'O',\n ɶ: 'OE',\n ᴐ: 'O',\n ᴕ: 'OU',\n ᴘ: 'P',\n ʀ: 'R',\n ᴎ: 'N',\n ᴙ: 'R',\n ꜱ: 'S',\n ᴛ: 'T',\n ⱻ: 'E',\n ᴚ: 'R',\n ᴜ: 'U',\n ᴠ: 'V',\n ᴡ: 'W',\n ʏ: 'Y',\n ᴢ: 'Z',\n á: 'a',\n ă: 'a',\n ắ: 'a',\n ặ: 'a',\n ằ: 'a',\n ẳ: 'a',\n ẵ: 'a',\n ǎ: 'a',\n â: 'a',\n ấ: 'a',\n ậ: 'a',\n ầ: 'a',\n ẩ: 'a',\n ẫ: 'a',\n ä: 'a',\n ǟ: 'a',\n ȧ: 'a',\n ǡ: 'a',\n ạ: 'a',\n ȁ: 'a',\n à: 'a',\n ả: 'a',\n ȃ: 'a',\n ā: 'a',\n ą: 'a',\n ᶏ: 'a',\n ẚ: 'a',\n å: 'a',\n ǻ: 'a',\n ḁ: 'a',\n ⱥ: 'a',\n ã: 'a',\n ꜳ: 'aa',\n æ: 'ae',\n ǽ: 'ae',\n ǣ: 'ae',\n ꜵ: 'ao',\n ꜷ: 'au',\n ꜹ: 'av',\n ꜻ: 'av',\n ꜽ: 'ay',\n ḃ: 'b',\n ḅ: 'b',\n ɓ: 'b',\n ḇ: 'b',\n ᵬ: 'b',\n ᶀ: 'b',\n ƀ: 'b',\n ƃ: 'b',\n ɵ: 'o',\n ć: 'c',\n č: 'c',\n ç: 'c',\n ḉ: 'c',\n ĉ: 'c',\n ɕ: 'c',\n ċ: 'c',\n ƈ: 'c',\n ȼ: 'c',\n ď: 'd',\n ḑ: 'd',\n ḓ: 'd',\n ȡ: 'd',\n ḋ: 'd',\n ḍ: 'd',\n ɗ: 'd',\n ᶑ: 'd',\n ḏ: 'd',\n ᵭ: 'd',\n ᶁ: 'd',\n đ: 'd',\n ɖ: 'd',\n ƌ: 'd',\n ı: 'i',\n ȷ: 'j',\n ɟ: 'j',\n ʄ: 'j',\n dz: 'dz',\n dž: 'dz',\n é: 'e',\n ĕ: 'e',\n ě: 'e',\n ȩ: 'e',\n ḝ: 'e',\n ê: 'e',\n ế: 'e',\n ệ: 'e',\n ề: 'e',\n ể: 'e',\n ễ: 'e',\n ḙ: 'e',\n ë: 'e',\n ė: 'e',\n ẹ: 'e',\n ȅ: 'e',\n è: 'e',\n ẻ: 'e',\n ȇ: 'e',\n ē: 'e',\n ḗ: 'e',\n ḕ: 'e',\n ⱸ: 'e',\n ę: 'e',\n ᶒ: 'e',\n ɇ: 'e',\n ẽ: 'e',\n ḛ: 'e',\n ꝫ: 'et',\n ḟ: 'f',\n ƒ: 'f',\n ᵮ: 'f',\n ᶂ: 'f',\n ǵ: 'g',\n ğ: 'g',\n ǧ: 'g',\n ģ: 'g',\n ĝ: 'g',\n ġ: 'g',\n ɠ: 'g',\n ḡ: 'g',\n ᶃ: 'g',\n ǥ: 'g',\n ḫ: 'h',\n ȟ: 'h',\n ḩ: 'h',\n ĥ: 'h',\n ⱨ: 'h',\n ḧ: 'h',\n ḣ: 'h',\n ḥ: 'h',\n ɦ: 'h',\n ẖ: 'h',\n ħ: 'h',\n ƕ: 'hv',\n í: 'i',\n ĭ: 'i',\n ǐ: 'i',\n î: 'i',\n ï: 'i',\n ḯ: 'i',\n ị: 'i',\n ȉ: 'i',\n ì: 'i',\n ỉ: 'i',\n ȋ: 'i',\n ī: 'i',\n į: 'i',\n ᶖ: 'i',\n ɨ: 'i',\n ĩ: 'i',\n ḭ: 'i',\n ꝺ: 'd',\n ꝼ: 'f',\n ᵹ: 'g',\n ꞃ: 'r',\n ꞅ: 's',\n ꞇ: 't',\n ꝭ: 'is',\n ǰ: 'j',\n ĵ: 'j',\n ʝ: 'j',\n ɉ: 'j',\n ḱ: 'k',\n ǩ: 'k',\n ķ: 'k',\n ⱪ: 'k',\n ꝃ: 'k',\n ḳ: 'k',\n ƙ: 'k',\n ḵ: 'k',\n ᶄ: 'k',\n ꝁ: 'k',\n ꝅ: 'k',\n ĺ: 'l',\n ƚ: 'l',\n ɬ: 'l',\n ľ: 'l',\n ļ: 'l',\n ḽ: 'l',\n ȴ: 'l',\n ḷ: 'l',\n ḹ: 'l',\n ⱡ: 'l',\n ꝉ: 'l',\n ḻ: 'l',\n ŀ: 'l',\n ɫ: 'l',\n ᶅ: 'l',\n ɭ: 'l',\n ł: 'l',\n lj: 'lj',\n ſ: 's',\n ẜ: 's',\n ẛ: 's',\n ẝ: 's',\n ḿ: 'm',\n ṁ: 'm',\n ṃ: 'm',\n ɱ: 'm',\n ᵯ: 'm',\n ᶆ: 'm',\n ń: 'n',\n ň: 'n',\n ņ: 'n',\n ṋ: 'n',\n ȵ: 'n',\n ṅ: 'n',\n ṇ: 'n',\n ǹ: 'n',\n ɲ: 'n',\n ṉ: 'n',\n ƞ: 'n',\n ᵰ: 'n',\n ᶇ: 'n',\n ɳ: 'n',\n ñ: 'n',\n nj: 'nj',\n ó: 'o',\n ŏ: 'o',\n ǒ: 'o',\n ô: 'o',\n ố: 'o',\n ộ: 'o',\n ồ: 'o',\n ổ: 'o',\n ỗ: 'o',\n ö: 'o',\n ȫ: 'o',\n ȯ: 'o',\n ȱ: 'o',\n ọ: 'o',\n ő: 'o',\n ȍ: 'o',\n ò: 'o',\n ỏ: 'o',\n ơ: 'o',\n ớ: 'o',\n ợ: 'o',\n ờ: 'o',\n ở: 'o',\n ỡ: 'o',\n ȏ: 'o',\n ꝋ: 'o',\n ꝍ: 'o',\n ⱺ: 'o',\n ō: 'o',\n ṓ: 'o',\n ṑ: 'o',\n ǫ: 'o',\n ǭ: 'o',\n ø: 'o',\n ǿ: 'o',\n õ: 'o',\n ṍ: 'o',\n ṏ: 'o',\n ȭ: 'o',\n ƣ: 'oi',\n ꝏ: 'oo',\n ɛ: 'e',\n ᶓ: 'e',\n ɔ: 'o',\n ᶗ: 'o',\n ȣ: 'ou',\n ṕ: 'p',\n ṗ: 'p',\n ꝓ: 'p',\n ƥ: 'p',\n ᵱ: 'p',\n ᶈ: 'p',\n ꝕ: 'p',\n ᵽ: 'p',\n ꝑ: 'p',\n ꝙ: 'q',\n ʠ: 'q',\n ɋ: 'q',\n ꝗ: 'q',\n ŕ: 'r',\n ř: 'r',\n ŗ: 'r',\n ṙ: 'r',\n ṛ: 'r',\n ṝ: 'r',\n ȑ: 'r',\n ɾ: 'r',\n ᵳ: 'r',\n ȓ: 'r',\n ṟ: 'r',\n ɼ: 'r',\n ᵲ: 'r',\n ᶉ: 'r',\n ɍ: 'r',\n ɽ: 'r',\n ↄ: 'c',\n ꜿ: 'c',\n ɘ: 'e',\n ɿ: 'r',\n ś: 's',\n ṥ: 's',\n š: 's',\n ṧ: 's',\n ş: 's',\n ŝ: 's',\n ș: 's',\n ṡ: 's',\n ṣ: 's',\n ṩ: 's',\n ʂ: 's',\n ᵴ: 's',\n ᶊ: 's',\n ȿ: 's',\n ɡ: 'g',\n ᴑ: 'o',\n ᴓ: 'o',\n ᴝ: 'u',\n ť: 't',\n ţ: 't',\n ṱ: 't',\n ț: 't',\n ȶ: 't',\n ẗ: 't',\n ⱦ: 't',\n ṫ: 't',\n ṭ: 't',\n ƭ: 't',\n ṯ: 't',\n ᵵ: 't',\n ƫ: 't',\n ʈ: 't',\n ŧ: 't',\n ᵺ: 'th',\n ɐ: 'a',\n ᴂ: 'ae',\n ǝ: 'e',\n ᵷ: 'g',\n ɥ: 'h',\n ʮ: 'h',\n ʯ: 'h',\n ᴉ: 'i',\n ʞ: 'k',\n ꞁ: 'l',\n ɯ: 'm',\n ɰ: 'm',\n ᴔ: 'oe',\n ɹ: 'r',\n ɻ: 'r',\n ɺ: 'r',\n ⱹ: 'r',\n ʇ: 't',\n ʌ: 'v',\n ʍ: 'w',\n ʎ: 'y',\n ꜩ: 'tz',\n ú: 'u',\n ŭ: 'u',\n ǔ: 'u',\n û: 'u',\n ṷ: 'u',\n ü: 'u',\n ǘ: 'u',\n ǚ: 'u',\n ǜ: 'u',\n ǖ: 'u',\n ṳ: 'u',\n ụ: 'u',\n ű: 'u',\n ȕ: 'u',\n ù: 'u',\n ủ: 'u',\n ư: 'u',\n ứ: 'u',\n ự: 'u',\n ừ: 'u',\n ử: 'u',\n ữ: 'u',\n ȗ: 'u',\n ū: 'u',\n ṻ: 'u',\n ų: 'u',\n ᶙ: 'u',\n ů: 'u',\n ũ: 'u',\n ṹ: 'u',\n ṵ: 'u',\n ᵫ: 'ue',\n ꝸ: 'um',\n ⱴ: 'v',\n ꝟ: 'v',\n ṿ: 'v',\n ʋ: 'v',\n ᶌ: 'v',\n ⱱ: 'v',\n ṽ: 'v',\n ꝡ: 'vy',\n ẃ: 'w',\n ŵ: 'w',\n ẅ: 'w',\n ẇ: 'w',\n ẉ: 'w',\n ẁ: 'w',\n ⱳ: 'w',\n ẘ: 'w',\n ẍ: 'x',\n ẋ: 'x',\n ᶍ: 'x',\n ý: 'y',\n ŷ: 'y',\n ÿ: 'y',\n ẏ: 'y',\n ỵ: 'y',\n ỳ: 'y',\n ƴ: 'y',\n ỷ: 'y',\n ỿ: 'y',\n ȳ: 'y',\n ẙ: 'y',\n ɏ: 'y',\n ỹ: 'y',\n ź: 'z',\n ž: 'z',\n ẑ: 'z',\n ʑ: 'z',\n ⱬ: 'z',\n ż: 'z',\n ẓ: 'z',\n ȥ: 'z',\n ẕ: 'z',\n ᵶ: 'z',\n ᶎ: 'z',\n ʐ: 'z',\n ƶ: 'z',\n ɀ: 'z',\n ff: 'ff',\n ffi: 'ffi',\n ffl: 'ffl',\n fi: 'fi',\n fl: 'fl',\n ij: 'ij',\n œ: 'oe',\n st: 'st',\n ₐ: 'a',\n ₑ: 'e',\n ᵢ: 'i',\n ⱼ: 'j',\n ₒ: 'o',\n ᵣ: 'r',\n ᵤ: 'u',\n ᵥ: 'v',\n ₓ: 'x'\n};\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/typeahead/latin-map.ts","import { Component, ElementRef, HostListener, TemplateRef } from '@angular/core';\nimport { isBs3 } from '../utils/theme-provider';\nimport { TypeaheadMatch } from './typeahead-match.class';\nimport { latinize } from './typeahead-utils';\nimport { TypeaheadDirective } from './typeahead.directive';\n\n\nexport class TypeaheadContainerComponent {\n parent: TypeaheadDirective;\n query: any;\n element: ElementRef;\n isFocused = false;\n top: string;\n left: string;\n display: string;\n placement: string;\n dropup: boolean;\n\n get isBs4(): boolean {\n return !isBs3();\n }\n\n protected _active: TypeaheadMatch;\n protected _matches: TypeaheadMatch[] = [];\n\n constructor(element: ElementRef) {\n this.element = element;\n }\n\n get active(): TypeaheadMatch {\n return this._active;\n }\n\n get matches(): TypeaheadMatch[] {\n return this._matches;\n }\n\n set matches(value: TypeaheadMatch[]) {\n this._matches = value;\n\n if (this._matches.length > 0) {\n this._active = this._matches[0];\n if (this._active.isHeader()) {\n this.nextActiveMatch();\n }\n }\n }\n\n get optionsListTemplate(): TemplateRef {\n return this.parent ? this.parent.optionsListTemplate : undefined;\n }\n\n get itemTemplate(): TemplateRef {\n return this.parent ? this.parent.typeaheadItemTemplate : undefined;\n }\n\n selectActiveMatch(): void {\n this.selectMatch(this._active);\n }\n\n prevActiveMatch(): void {\n const index = this.matches.indexOf(this._active);\n this._active = this.matches[\n index - 1 < 0 ? this.matches.length - 1 : index - 1\n ];\n if (this._active.isHeader()) {\n this.prevActiveMatch();\n }\n }\n\n nextActiveMatch(): void {\n const index = this.matches.indexOf(this._active);\n this._active = this.matches[\n index + 1 > this.matches.length - 1 ? 0 : index + 1\n ];\n if (this._active.isHeader()) {\n this.nextActiveMatch();\n }\n }\n\n selectActive(value: TypeaheadMatch): void {\n this.isFocused = true;\n this._active = value;\n }\n\n hightlight(match: TypeaheadMatch, query: any): string {\n let itemStr: string = match.value;\n let itemStrHelper: string = (this.parent && this.parent.typeaheadLatinize\n ? latinize(itemStr)\n : itemStr).toLowerCase();\n let startIdx: number;\n let tokenLen: number;\n // Replaces the capture string with the same string inside of a \"strong\" tag\n if (typeof query === 'object') {\n const queryLen: number = query.length;\n for (let i = 0; i < queryLen; i += 1) {\n // query[i] is already latinized and lower case\n startIdx = itemStrHelper.indexOf(query[i]);\n tokenLen = query[i].length;\n if (startIdx >= 0 && tokenLen > 0) {\n itemStr =\n `${itemStr.substring(0, startIdx)}${itemStr.substring(startIdx, startIdx + tokenLen)}` +\n `${itemStr.substring(startIdx + tokenLen)}`;\n itemStrHelper =\n `${itemStrHelper.substring(0, startIdx)} ${' '.repeat(tokenLen)} ` +\n `${itemStrHelper.substring(startIdx + tokenLen)}`;\n }\n }\n } else if (query) {\n // query is already latinized and lower case\n startIdx = itemStrHelper.indexOf(query);\n tokenLen = query.length;\n if (startIdx >= 0 && tokenLen > 0) {\n itemStr =\n `${itemStr.substring(0, startIdx)}${itemStr.substring(startIdx, startIdx + tokenLen)}` +\n `${itemStr.substring(startIdx + tokenLen)}`;\n }\n }\n\n return itemStr;\n }\n\n \n \n focusLost(): void {\n this.isFocused = false;\n }\n\n isActive(value: TypeaheadMatch): boolean {\n return this._active === value;\n }\n\n selectMatch(value: TypeaheadMatch, e: Event = void 0): boolean {\n if (e) {\n e.stopPropagation();\n e.preventDefault();\n }\n this.parent.changeModel(value);\n setTimeout(() => this.parent.typeaheadOnSelect.emit(value), 0);\n\n return false;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'typeahead-container',\n // tslint:disable-next-line\n template: \"
    • {{ match }}
    {{ match }}
    \",\n host: {\n class: 'dropdown open',\n '[class.dropdown-menu]': 'isBs4',\n '[class.dropup]': 'dropup',\n style: 'position: absolute;display: block;'\n }\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ElementRef, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'focusLost': [{ type: HostListener, args: ['mouseleave', ] },{ type: HostListener, args: ['blur', ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/typeahead/typeahead-container.component.ts","export class TypeaheadMatch {\n readonly value: string;\n readonly item: any;\n protected header: boolean;\n\n constructor(item: any, value: string = item, header = false) {\n this.item = item;\n this.value = value;\n this.header = header;\n }\n\n isHeader(): boolean {\n return this.header;\n }\n\n toString(): string {\n return this.value;\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/typeahead/typeahead-match.class.ts","import { TypeaheadDirective } from './typeahead.directive';\n\nexport class TypeaheadOptions {\n placement: string;\n animation: boolean;\n typeaheadRef: TypeaheadDirective;\n\n constructor(options: TypeaheadOptions) {\n Object.assign(this, options);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/typeahead/typeahead-options.class.ts","import { latinMap } from './latin-map';\n\nexport function latinize(str: string): string {\n if (!str) {\n return '';\n }\n\n return str.replace(/[^A-Za-z0-9\\[\\] ]/g, function (a: string): string {\n return latinMap[a] || a;\n });\n}\n\nexport function escapeRegexp(queryToEscape: string): string {\n // Regex: capture the whole query string and replace it with the string\n // that will be used to match the results, for example if the capture is\n // 'a' the result will be \\a\n return queryToEscape.replace(/([.?*+^$[\\]\\\\(){}|-])/g, '\\\\$1');\n}\n\n/* tslint:disable */\nexport function tokenize(str: string,\n wordRegexDelimiters = ' ',\n phraseRegexDelimiters = ''): Array {\n /* tslint:enable */\n const regexStr = `(?:[${phraseRegexDelimiters}])([^${phraseRegexDelimiters}]+)` +\n `(?:[${phraseRegexDelimiters}])|([^${wordRegexDelimiters}]+)`;\n const preTokenized: string[] = str.split(new RegExp(regexStr, 'g'));\n const result: string[] = [];\n const preTokenizedLength: number = preTokenized.length;\n let token: string;\n const replacePhraseDelimiters = new RegExp(`[${phraseRegexDelimiters}]+`, 'g');\n\n for (let i = 0; i < preTokenizedLength; i += 1) {\n token = preTokenized[i];\n if (token && token.length && token !== wordRegexDelimiters) {\n result.push(token.replace(replacePhraseDelimiters, ''));\n }\n }\n\n return result;\n}\n\nexport function getValueFromObject(object: any, option: string): string {\n if (!option || typeof object !== 'object') {\n return object.toString();\n }\n\n if (option.endsWith('()')) {\n const functionName = option.slice(0, option.length - 2);\n\n return object[functionName]().toString();\n }\n\n const properties: string = option\n .replace(/\\[(\\w+)\\]/g, '.$1')\n .replace(/^\\./, '');\n const propertiesArray: string[] = properties.split('.');\n\n for (const property of propertiesArray) {\n if (property in object) {\n // tslint:disable-next-line\n object = object[property];\n }\n }\n if (!object) {return ''; }\n\n return object.toString();\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/typeahead/typeahead-utils.ts","/* tslint:disable:max-file-line-count */\nimport {\n Directive,\n ElementRef,\n EventEmitter,\n HostListener,\n Input,\n OnDestroy,\n OnInit,\n Output,\n Renderer2,\n TemplateRef,\n ViewContainerRef\n} from '@angular/core';\nimport { NgControl } from '@angular/forms';\nimport 'rxjs/add/observable/from';\nimport 'rxjs/add/operator/debounceTime';\nimport 'rxjs/add/operator/filter';\nimport 'rxjs/add/operator/map';\nimport 'rxjs/add/operator/mergeMap';\nimport 'rxjs/add/operator/toArray';\n\nimport { Observable } from 'rxjs/Observable';\nimport { Subscription } from 'rxjs/Subscription';\nimport { ComponentLoader, ComponentLoaderFactory } from '../component-loader';\nimport { TypeaheadContainerComponent } from './typeahead-container.component';\nimport { TypeaheadMatch } from './typeahead-match.class';\nimport { getValueFromObject, latinize, tokenize } from './typeahead-utils';\n\n\nexport class TypeaheadDirective implements OnInit, OnDestroy {\n /** options source, can be Array of strings, objects or\n * an Observable for external matching process\n */\n typeahead: any;\n /** minimal no of characters that needs to be entered before\n * typeahead kicks-in. When set to 0, typeahead shows on focus with full\n * list of options (limited as normal by typeaheadOptionsLimit)\n */\n typeaheadMinLength: number = void 0;\n /** minimal wait time after last character typed before typeahead kicks-in */\n typeaheadWaitMs: number;\n /** maximum length of options items list */\n typeaheadOptionsLimit: number;\n /** when options source is an array of objects, the name of field\n * that contains the options value, we use array item as option in case\n * of this field is missing. Supports nested properties and methods.\n */\n typeaheadOptionField: string;\n /** when options source is an array of objects, the name of field that\n * contains the group value, matches are grouped by this field when set.\n */\n typeaheadGroupField: string;\n /** should be used only in case of typeahead attribute is array.\n * If true - loading of options will be async, otherwise - sync.\n * true make sense if options array is large.\n */\n typeaheadAsync: boolean = void 0;\n /** match latin symbols.\n * If true the word súper would match super and vice versa.\n */\n typeaheadLatinize = true;\n /** break words with spaces. If true the text \"exact phrase\"\n * here match would match with match exact phrase here\n * but not with phrase here exact match (kind of \"google style\").\n */\n typeaheadSingleWords = true;\n /** should be used only in case typeaheadSingleWords attribute is true.\n * Sets the word delimiter to break words. Defaults to space.\n */\n typeaheadWordDelimiters = ' ';\n /** should be used only in case typeaheadSingleWords attribute is true.\n * Sets the word delimiter to match exact phrase.\n * Defaults to simple and double quotes.\n */\n typeaheadPhraseDelimiters = '\\'\"';\n /** used to specify a custom item template.\n * Template variables exposed are called item and index;\n */\n typeaheadItemTemplate: TemplateRef;\n /** used to specify a custom options list template.\n * Template variables: matches, itemTemplate, query\n */\n optionsListTemplate: TemplateRef;\n\n /** fired when 'busy' state of this component was changed,\n * fired on async mode only, returns boolean\n */\n typeaheadLoading: EventEmitter = new EventEmitter();\n /** fired on every key event and returns true\n * in case of matches are not detected\n */\n \n typeaheadNoResults: EventEmitter = new EventEmitter();\n /** fired when option was selected, return object with data of this option */\n \n typeaheadOnSelect: EventEmitter = new EventEmitter();\n /** fired when blur event occurres. returns the active item */\n typeaheadOnBlur: EventEmitter = new EventEmitter();\n\n /**\n * A selector specifying the element the typeahead should be appended to.\n * Currently only supports \"body\".\n */\n container: string;\n\n /** This attribute indicates that the dropdown should be opened upwards */\n dropup = false;\n\n // not yet implemented\n /** if false restrict model values to the ones selected from the popup only will be provided */\n // @Input() protected typeaheadEditable:boolean;\n /** if false the first match automatically will not be focused as you type */\n // @Input() protected typeaheadFocusFirst:boolean;\n /** format the ng-model result after selection */\n // @Input() protected typeaheadInputFormatter:any;\n /** if true automatically select an item when there is one option that exactly matches the user input */\n // @Input() protected typeaheadSelectOnExact:boolean;\n /** if true select the currently highlighted match on blur */\n // @Input() protected typeaheadSelectOnBlur:boolean;\n /** if false don't focus the input element the typeahead directive is associated with on selection */\n // @Input() protected typeaheadFocusOnSelect:boolean;\n\n _container: TypeaheadContainerComponent;\n isTypeaheadOptionsListActive = false;\n\n protected keyUpEventEmitter: EventEmitter = new EventEmitter();\n protected _matches: TypeaheadMatch[];\n protected placement = 'bottom-left';\n // protected popup:ComponentRef;\n\n private _typeahead: ComponentLoader;\n private _subscriptions: Subscription[] = [];\n\n constructor(private ngControl: NgControl,\n private element: ElementRef,\n viewContainerRef: ViewContainerRef,\n renderer: Renderer2,\n cis: ComponentLoaderFactory) {\n this._typeahead = cis.createLoader(\n element,\n viewContainerRef,\n renderer\n );\n }\n\n ngOnInit(): void {\n this.typeaheadOptionsLimit = this.typeaheadOptionsLimit || 20;\n this.typeaheadMinLength =\n this.typeaheadMinLength === void 0 ? 1 : this.typeaheadMinLength;\n this.typeaheadWaitMs = this.typeaheadWaitMs || 0;\n\n // async should be false in case of array\n if (\n this.typeaheadAsync === undefined &&\n !(this.typeahead instanceof Observable)\n ) {\n this.typeaheadAsync = false;\n }\n\n if (this.typeahead instanceof Observable) {\n this.typeaheadAsync = true;\n }\n\n if (this.typeaheadAsync) {\n this.asyncActions();\n } else {\n this.syncActions();\n }\n }\n\n \n onChange(e: any): void {\n if (this._container) {\n // esc\n if (e.keyCode === 27) {\n this.hide();\n\n return;\n }\n\n // up\n if (e.keyCode === 38) {\n this._container.prevActiveMatch();\n\n return;\n }\n\n // down\n if (e.keyCode === 40) {\n this._container.nextActiveMatch();\n\n return;\n }\n\n // enter\n if (e.keyCode === 13) {\n this._container.selectActiveMatch();\n\n return;\n }\n }\n\n // For ``s, use the `value` property. For others that don't have a\n // `value` (such as ``), use either\n // `textContent` or `innerText` (depending on which one is supported, i.e.\n // Firefox or IE).\n const value =\n e.target.value !== undefined\n ? e.target.value\n : e.target.textContent !== undefined\n ? e.target.textContent\n : e.target.innerText;\n if (value != null && value.trim().length >= this.typeaheadMinLength) {\n this.typeaheadLoading.emit(true);\n this.keyUpEventEmitter.emit(e.target.value);\n } else {\n this.typeaheadLoading.emit(false);\n this.typeaheadNoResults.emit(false);\n this.hide();\n }\n }\n\n \n onFocus(): void {\n if (this.typeaheadMinLength === 0) {\n this.typeaheadLoading.emit(true);\n this.keyUpEventEmitter.emit('');\n }\n }\n\n \n onBlur(): void {\n if (this._container && !this._container.isFocused) {\n this.typeaheadOnBlur.emit(this._container.active);\n this.hide();\n }\n }\n\n \n onKeydown(e: any): void {\n // no container - no problems\n if (!this._container) {\n return;\n }\n\n // if items is visible - prevent form submition\n if (e.keyCode === 13) {\n e.preventDefault();\n\n return;\n }\n }\n\n changeModel(match: TypeaheadMatch): void {\n const valueStr: string = match.value;\n this.ngControl.viewToModelUpdate(valueStr);\n (this.ngControl.control).setValue(valueStr);\n this.hide();\n }\n\n get matches(): any[] {\n return this._matches;\n }\n\n show(): void {\n this._typeahead\n .attach(TypeaheadContainerComponent)\n // todo: add append to body, after updating positioning service\n .to(this.container)\n .position({attachment: `${this.dropup ? 'top' : 'bottom'} left`})\n .show({\n typeaheadRef: this,\n placement: this.placement,\n animation: false,\n dropup: this.dropup\n });\n\n this._container = this._typeahead.instance;\n this._container.parent = this;\n // This improves the speed as it won't have to be done for each list item\n const normalizedQuery = (this.typeaheadLatinize\n ? latinize(this.ngControl.control.value)\n : this.ngControl.control.value)\n .toString()\n .toLowerCase();\n this._container.query = this.typeaheadSingleWords\n ? tokenize(\n normalizedQuery,\n this.typeaheadWordDelimiters,\n this.typeaheadPhraseDelimiters\n )\n : normalizedQuery;\n this._container.matches = this._matches;\n this.element.nativeElement.focus();\n }\n\n hide(): void {\n if (this._typeahead.isShown) {\n this._typeahead.hide();\n this._container = null;\n }\n }\n\n ngOnDestroy(): any {\n // clean up subscriptions\n for (const sub of this._subscriptions) {\n sub.unsubscribe();\n }\n this._typeahead.dispose();\n }\n\n protected asyncActions(): void {\n this._subscriptions.push(\n this.keyUpEventEmitter\n .debounceTime(this.typeaheadWaitMs)\n .mergeMap(() => this.typeahead)\n .subscribe((matches: any[]) => {\n this.finalizeAsyncCall(matches);\n })\n );\n }\n\n protected syncActions(): void {\n this._subscriptions.push(\n this.keyUpEventEmitter\n .debounceTime(this.typeaheadWaitMs)\n .mergeMap((value: string) => {\n const normalizedQuery = this.normalizeQuery(value);\n\n return Observable.from(this.typeahead)\n .filter((option: any) => {\n return (\n option &&\n this.testMatch(this.normalizeOption(option), normalizedQuery)\n );\n })\n .toArray();\n })\n .subscribe((matches: any[]) => {\n this.finalizeAsyncCall(matches);\n })\n );\n }\n\n protected normalizeOption(option: any): any {\n const optionValue: string = getValueFromObject(\n option,\n this.typeaheadOptionField\n );\n const normalizedOption = this.typeaheadLatinize\n ? latinize(optionValue)\n : optionValue;\n\n return normalizedOption.toLowerCase();\n }\n\n protected normalizeQuery(value: string): any {\n // If singleWords, break model here to not be doing extra work on each\n // iteration\n let normalizedQuery: any = (this.typeaheadLatinize\n ? latinize(value)\n : value)\n .toString()\n .toLowerCase();\n normalizedQuery = this.typeaheadSingleWords\n ? tokenize(\n normalizedQuery,\n this.typeaheadWordDelimiters,\n this.typeaheadPhraseDelimiters\n )\n : normalizedQuery;\n\n return normalizedQuery;\n }\n\n protected testMatch(match: string, test: any): boolean {\n let spaceLength: number;\n\n if (typeof test === 'object') {\n spaceLength = test.length;\n for (let i = 0; i < spaceLength; i += 1) {\n if (test[i].length > 0 && match.indexOf(test[i]) < 0) {\n return false;\n }\n }\n\n return true;\n }\n\n return match.indexOf(test) >= 0;\n }\n\n protected finalizeAsyncCall(matches: any[]): void {\n this.prepareMatches(matches);\n\n this.typeaheadLoading.emit(false);\n this.typeaheadNoResults.emit(!this.hasMatches());\n\n if (!this.hasMatches()) {\n this.hide();\n\n return;\n }\n\n if (this._container) {\n // This improves the speed as it won't have to be done for each list item\n const normalizedQuery = (this.typeaheadLatinize\n ? latinize(this.ngControl.control.value)\n : this.ngControl.control.value)\n .toString()\n .toLowerCase();\n this._container.query = this.typeaheadSingleWords\n ? tokenize(\n normalizedQuery,\n this.typeaheadWordDelimiters,\n this.typeaheadPhraseDelimiters\n )\n : normalizedQuery;\n this._container.matches = this._matches;\n } else {\n this.show();\n }\n }\n\n protected prepareMatches(options: any[]): void {\n const limited: any[] = options.slice(0, this.typeaheadOptionsLimit);\n\n if (this.typeaheadGroupField) {\n let matches: TypeaheadMatch[] = [];\n\n // extract all group names\n const groups = limited\n .map((option: any) =>\n getValueFromObject(option, this.typeaheadGroupField)\n )\n .filter((v: string, i: number, a: any[]) => a.indexOf(v) === i);\n\n groups.forEach((group: string) => {\n // add group header to array of matches\n matches.push(new TypeaheadMatch(group, group, true));\n\n // add each item of group to array of matches\n matches = matches.concat(\n limited\n .filter(\n (option: any) =>\n getValueFromObject(option, this.typeaheadGroupField) === group\n )\n .map(\n (option: any) =>\n new TypeaheadMatch(\n option,\n getValueFromObject(option, this.typeaheadOptionField)\n )\n )\n );\n });\n\n this._matches = matches;\n } else {\n this._matches = limited.map(\n (option: any) =>\n new TypeaheadMatch(\n option,\n getValueFromObject(option, this.typeaheadOptionField)\n )\n );\n }\n }\n\n protected hasMatches(): boolean {\n return this._matches.length > 0;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[typeahead]', exportAs: 'bs-typeahead'}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: NgControl, },\n{type: ElementRef, },\n{type: ViewContainerRef, },\n{type: Renderer2, },\n{type: ComponentLoaderFactory, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'typeahead': [{ type: Input },],\n'typeaheadMinLength': [{ type: Input },],\n'typeaheadWaitMs': [{ type: Input },],\n'typeaheadOptionsLimit': [{ type: Input },],\n'typeaheadOptionField': [{ type: Input },],\n'typeaheadGroupField': [{ type: Input },],\n'typeaheadAsync': [{ type: Input },],\n'typeaheadLatinize': [{ type: Input },],\n'typeaheadSingleWords': [{ type: Input },],\n'typeaheadWordDelimiters': [{ type: Input },],\n'typeaheadPhraseDelimiters': [{ type: Input },],\n'typeaheadItemTemplate': [{ type: Input },],\n'optionsListTemplate': [{ type: Input },],\n'typeaheadLoading': [{ type: Output },],\n'typeaheadNoResults': [{ type: Output },],\n'typeaheadOnSelect': [{ type: Output },],\n'typeaheadOnBlur': [{ type: Output },],\n'container': [{ type: Input },],\n'dropup': [{ type: Input },],\n'onChange': [{ type: HostListener, args: ['keyup', ['$event'], ] },],\n'onFocus': [{ type: HostListener, args: ['focus', ] },],\n'onBlur': [{ type: HostListener, args: ['blur', ] },],\n'onKeydown': [{ type: HostListener, args: ['keydown', ['$event'], ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/typeahead/typeahead.directive.ts","import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\n\nimport { TypeaheadContainerComponent } from './typeahead-container.component';\nimport { TypeaheadDirective } from './typeahead.directive';\nimport { ComponentLoaderFactory } from '../component-loader';\nimport { PositioningService } from '../positioning';\n\n\nexport class TypeaheadModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: TypeaheadModule,\n providers: [ComponentLoaderFactory, PositioningService]\n };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n declarations: [TypeaheadContainerComponent, TypeaheadDirective],\n exports: [TypeaheadContainerComponent, TypeaheadDirective],\n entryComponents: [TypeaheadContainerComponent]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/typeahead/typeahead.module.ts","/*tslint:disable:no-invalid-this */\nexport function OnChange(defaultValue?: any): any {\n const sufix = 'Change';\n\n return function OnChangeHandler(target: any, propertyKey: string): void {\n const _key = ` __${propertyKey}Value`;\n Object.defineProperty(target, propertyKey, {\n get(): any {\n return this[_key];\n },\n set(value: any): void {\n const prevValue = this[_key];\n this[_key] = value;\n if (prevValue !== value && this[propertyKey + sufix]) {\n this[propertyKey + sufix].emit(value);\n }\n }\n });\n };\n}\n/* tslint:enable */\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/utils/decorators.ts","/*tslint:disable */\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * JS version of browser APIs. This library can only run in the browser.\n */\nvar win = (typeof window !== 'undefined' && window) || {};\n\nexport { win as window };\nexport var document = win.document;\nexport var location = win.location;\nexport var gc = win['gc'] ? () => win['gc']() : (): any => null;\nexport var performance = win['performance'] ? win['performance'] : null;\nexport const Event = win['Event'];\nexport const MouseEvent = win['MouseEvent'];\nexport const KeyboardEvent = win['KeyboardEvent'];\nexport const EventTarget = win['EventTarget'];\nexport const History = win['History'];\nexport const Location = win['Location'];\nexport const EventListener = win['EventListener'];\n\n\n\n// WEBPACK FOOTER //\n// ../../../.tmp/utils/facade/browser.ts","export { OnChange } from './decorators';\nexport { LinkedList } from './linked-list.class';\nexport { isBs3 } from './theme-provider';\nexport { Trigger } from './trigger.class';\nexport { Utils } from './utils.class';\nexport { setTheme } from './theme-provider';\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/utils/index.ts","export class LinkedList {\n length = 0;\n protected head: any;\n protected tail: any;\n protected current: any;\n protected asArray: T[] = [];\n\n get(position: number): T {\n if (this.length === 0 || position < 0 || position >= this.length) {\n return void 0;\n }\n\n let current = this.head;\n\n for (let index = 0; index < position; index++) {\n current = current.next;\n }\n\n return current.value;\n }\n\n add(value: T, position: number = this.length): void {\n if (position < 0 || position > this.length) {\n throw new Error('Position is out of the list');\n }\n\n const node = {\n value: value as any,\n next: undefined as any,\n previous: undefined as any\n };\n\n if (this.length === 0) {\n this.head = node;\n this.tail = node;\n this.current = node;\n } else {\n if (position === 0) {\n // first node\n node.next = this.head;\n this.head.previous = node;\n this.head = node;\n } else if (position === this.length) {\n // last node\n this.tail.next = node;\n node.previous = this.tail;\n this.tail = node;\n } else {\n // node in middle\n const currentPreviousNode = this.getNode(position - 1);\n const currentNextNode = currentPreviousNode.next;\n\n currentPreviousNode.next = node;\n currentNextNode.previous = node;\n\n node.previous = currentPreviousNode;\n node.next = currentNextNode;\n }\n }\n this.length++;\n this.createInternalArrayRepresentation();\n }\n\n remove(position = 0): void {\n if (this.length === 0 || position < 0 || position >= this.length) {\n throw new Error('Position is out of the list');\n }\n\n if (position === 0) {\n // first node\n this.head = this.head.next;\n\n if (this.head) {\n // there is no second node\n this.head.previous = undefined;\n } else {\n // there is no second node\n this.tail = undefined;\n }\n } else if (position === this.length - 1) {\n // last node\n this.tail = this.tail.previous;\n this.tail.next = undefined;\n } else {\n // middle node\n const removedNode = this.getNode(position);\n removedNode.next.previous = removedNode.previous;\n removedNode.previous.next = removedNode.next;\n }\n\n this.length--;\n this.createInternalArrayRepresentation();\n }\n\n set(position: number, value: T): void {\n if (this.length === 0 || position < 0 || position >= this.length) {\n throw new Error('Position is out of the list');\n }\n\n const node = this.getNode(position);\n node.value = value;\n this.createInternalArrayRepresentation();\n }\n\n toArray(): T[] {\n return this.asArray;\n }\n\n findAll(fn: any): any[] {\n let current = this.head;\n const result: any[] = [];\n for (let index = 0; index < this.length; index++) {\n if (fn(current.value, index)) {\n result.push({index, value: current.value});\n }\n current = current.next;\n }\n\n return result;\n }\n\n // Array methods overriding start\n push(...args: T[]): number {\n args.forEach((arg: any) => {\n this.add(arg);\n });\n\n return this.length;\n }\n\n pop(): T {\n if (this.length === 0) {\n return undefined;\n }\n const last = this.tail;\n this.remove(this.length - 1);\n\n return last.value;\n }\n\n unshift(...args: T[]): number {\n args.reverse();\n args.forEach((arg: any) => {\n this.add(arg, 0);\n });\n\n return this.length;\n }\n\n shift(): T {\n if (this.length === 0) {\n return undefined;\n }\n const lastItem = this.head.value;\n this.remove();\n\n return lastItem;\n }\n\n forEach(fn: any): void {\n let current = this.head;\n for (let index = 0; index < this.length; index++) {\n fn(current.value, index);\n current = current.next;\n }\n }\n\n indexOf(value: T): number {\n let current = this.head;\n let position = 0;\n\n for (let index = 0; index < this.length; index++) {\n if (current.value === value) {\n position = index;\n break;\n }\n current = current.next;\n }\n\n return position;\n }\n\n some(fn: any): boolean {\n let current = this.head;\n let result = false;\n while (current && !result) {\n if (fn(current.value)) {\n result = true;\n break;\n }\n current = current.next;\n }\n\n return result;\n }\n\n every(fn: any): boolean {\n let current = this.head;\n let result = true;\n while (current && result) {\n if (!fn(current.value)) {\n result = false;\n }\n current = current.next;\n }\n\n return result;\n }\n\n toString(): string {\n return '[Linked List]';\n }\n\n find(fn: any): T {\n let current = this.head;\n let result: T;\n for (let index = 0; index < this.length; index++) {\n if (fn(current.value, index)) {\n result = current.value;\n break;\n }\n current = current.next;\n }\n\n return result;\n }\n\n findIndex(fn: any): number {\n let current = this.head;\n let result: number;\n for (let index = 0; index < this.length; index++) {\n if (fn(current.value, index)) {\n result = index;\n break;\n }\n current = current.next;\n }\n\n return result;\n }\n\n protected getNode(position: number): any {\n if (this.length === 0 || position < 0 || position >= this.length) {\n throw new Error('Position is out of the list');\n }\n\n let current = this.head;\n\n for (let index = 0; index < position; index++) {\n current = current.next;\n }\n\n return current;\n }\n\n protected createInternalArrayRepresentation(): void {\n const outArray: any[] = [];\n let current = this.head;\n\n while (current) {\n outArray.push(current.value);\n current = current.next;\n }\n this.asArray = outArray;\n }\n\n // Array methods overriding END\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/utils/linked-list.class.ts","import { window } from './facade/browser';\n\nlet guessedVersion: 'bs3' | 'bs4';\n\nfunction _guessBsVersion(): 'bs3' | 'bs4' {\n if (typeof document === 'undefined') {\n return null;\n }\n const spanEl = document.createElement('span');\n spanEl.innerText = 'test bs version';\n document.body.appendChild(spanEl);\n spanEl.classList.add('d-none');\n const rect = spanEl.getBoundingClientRect();\n document.body.removeChild(spanEl);\n if (!rect) {\n return 'bs3';\n }\n\n return rect.top === 0 ? 'bs4' : 'bs3';\n}\n\nexport function setTheme(theme: 'bs3' | 'bs4'): void {\n guessedVersion = theme;\n}\n\n// todo: in ngx-bootstrap, bs4 will became a default one\nexport function isBs3(): boolean {\n if (typeof window === 'undefined') {\n return true;\n }\n\n if (typeof window.__theme === 'undefined') {\n if (guessedVersion) {\n return guessedVersion === 'bs3';\n }\n guessedVersion = _guessBsVersion();\n\n return guessedVersion === 'bs3';\n }\n\n return window.__theme !== 'bs4';\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/utils/theme-provider.ts","/**\n * @copyright Valor Software\n * @copyright Angular ng-bootstrap team\n */\n\nexport class Trigger {\n open: string;\n close?: string;\n\n constructor(open: string, close?: string) {\n this.open = open;\n this.close = close || open;\n }\n\n isManual(): boolean {\n return this.open === 'manual' || this.close === 'manual';\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/utils/trigger.class.ts","/**\n * @copyright Valor Software\n * @copyright Angular ng-bootstrap team\n */\nimport { Renderer2 } from '@angular/core';\nimport { Trigger } from './trigger.class';\nimport {\n BsEventCallback, ListenOptions\n} from '../component-loader/listen-options.model';\n\nconst DEFAULT_ALIASES = {\n hover: ['mouseover', 'mouseout'],\n focus: ['focusin', 'focusout']\n};\n\nexport function parseTriggers(triggers: string, aliases: any = DEFAULT_ALIASES): Trigger[] {\n const trimmedTriggers = (triggers || '').trim();\n\n if (trimmedTriggers.length === 0) {\n return [];\n }\n\n const parsedTriggers = trimmedTriggers\n .split(/\\s+/)\n .map((trigger: string) => trigger.split(':'))\n .map((triggerPair: string[]) => {\n const alias = aliases[triggerPair[0]] || triggerPair;\n\n return new Trigger(alias[0], alias[1]);\n });\n\n const manualTriggers = parsedTriggers.filter((triggerPair: Trigger) =>\n triggerPair.isManual()\n );\n\n if (manualTriggers.length > 1) {\n throw new Error('Triggers parse error: only one manual trigger is allowed');\n }\n\n if (manualTriggers.length === 1 && parsedTriggers.length > 1) {\n throw new Error('Triggers parse error: manual trigger can\\'t be mixed with other triggers');\n }\n\n return parsedTriggers;\n}\n\nexport function listenToTriggers(renderer: Renderer2,\n target: any,\n triggers: string,\n showFn: BsEventCallback,\n hideFn: BsEventCallback,\n toggleFn: BsEventCallback): Function {\n const parsedTriggers = parseTriggers(triggers);\n const listeners: any[] = [];\n\n if (parsedTriggers.length === 1 && parsedTriggers[0].isManual()) {\n return Function.prototype;\n }\n\n parsedTriggers.forEach((trigger: Trigger) => {\n if (trigger.open === trigger.close) {\n listeners.push(renderer.listen(target, trigger.open, toggleFn));\n\n return;\n }\n\n listeners.push(\n renderer.listen(target, trigger.open, showFn),\n renderer.listen(target, trigger.close, hideFn)\n );\n });\n\n return () => {\n listeners.forEach((unsubscribeFn: Function) => unsubscribeFn());\n };\n}\n\nexport function listenToTriggersV2(renderer: Renderer2,\n options: ListenOptions): Function {\n const parsedTriggers = parseTriggers(options.triggers);\n const target = options.target;\n // do nothing\n if (parsedTriggers.length === 1 && parsedTriggers[0].isManual()) {\n return Function.prototype;\n }\n\n // all listeners\n const listeners: any[] = [];\n\n // lazy listeners registration\n const _registerHide: Function[] = [];\n const registerHide = () => {\n // add hide listeners to unregister array\n _registerHide.forEach((fn: Function) => listeners.push(fn()));\n // register hide events only once\n _registerHide.length = 0;\n };\n\n // register open\\close\\toggle listeners\n parsedTriggers.forEach((trigger: Trigger) => {\n const useToggle = trigger.open === trigger.close;\n const showFn = useToggle ? options.toggle : options.show;\n\n if (!useToggle) {\n _registerHide.push(() =>\n renderer.listen(target, trigger.close, options.hide)\n );\n }\n\n listeners.push(\n renderer.listen(target, trigger.open, () => showFn(registerHide))\n );\n });\n\n return () => {\n listeners.forEach((unsubscribeFn: Function) => unsubscribeFn());\n };\n}\n\nexport function registerOutsideClick(renderer: Renderer2,\n options: ListenOptions) {\n if (!options.outsideClick) {\n return Function.prototype;\n }\n\n return renderer.listen('document', 'click', (event: any) => {\n if (options.target && options.target.contains(event.target)) {\n return;\n }\n if (\n options.targets &&\n options.targets.some(target => target.contains(event.target))\n ) {\n return;\n }\n\n options.hide();\n });\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/utils/triggers.ts","import { window } from './facade/browser';\n\nexport class Utils {\n static reflow(element: any): void {\n ((bs: any): void => bs)(element.offsetHeight);\n }\n\n // source: https://github.com/jquery/jquery/blob/master/src/css/var/getStyles.js\n static getStyles(elem: any): any {\n // Support: IE <=11 only, Firefox <=30 (#15098, #14150)\n // IE throws on elements created in popups\n // FF meanwhile throws on frame elements through \"defaultView.getComputedStyle\"\n let view = elem.ownerDocument.defaultView;\n\n if (!view || !view.opener) {\n view = window;\n }\n\n return view.getComputedStyle(elem);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/utils/utils.class.ts","import { isDevMode } from '@angular/core';\nconst _messagesHash: { [key: string]: boolean } = {};\nconst _hideMsg = typeof console === 'undefined' || !('warn' in console);\n\nexport function warnOnce(msg: string): void {\n if (!isDevMode() || _hideMsg || msg in _messagesHash) {\n return;\n }\n\n _messagesHash[msg] = true;\n /*tslint:disable-next-line*/\n console.warn(msg);\n}\n\n\n\n// WEBPACK FOOTER //\n// ../../.tmp/utils/warn-once.ts","// The file contents for the current environment will overwrite these during build.\r\n// The build system defaults to the dev environment which uses `environment.ts`, but if you do\r\n// `ng build --env=prod` then `environment.prod.ts` will be used instead.\r\n// The list of which env maps to which file can be found in `.angular-cli.json`.\r\n\r\nexport const environment = {\r\n production: false\r\n};\r\n\n\n\n// WEBPACK FOOTER //\n// C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/environments/environment.ts","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.log(err));\r\n\n\n\n// WEBPACK FOOTER //\n// C:/websites/emusic-search-WA/emusic2018/emusic2018/SPA/src/main.ts"],"sourceRoot":"webpack:///"}