{"version":3,"file":"next-to-go.feature-6jkidfn7.js","sources":["packages/sports/web/app/src/next-to-go/next-to-go.service.ts","packages/sports/web/app/src/next-to-go/next-to-go.tracking.service.ts","packages/sports/web/app/src/next-to-go/next-to-go-sports/sports-tab-bar.component.html","packages/sports/web/app/src/next-to-go/next-to-go-sports/sports-tab-bar.component.ts","packages/sports/web/app/src/next-to-go/next-to-go-option-group/next-to-go-option-group.component.html","packages/sports/web/app/src/next-to-go/next-to-go-option-group/next-to-go-option-group.component.ts","packages/sports/web/app/src/next-to-go/next-to-go-event/next-to-go-event.component.html","packages/sports/web/app/src/next-to-go/next-to-go-event/next-to-go-event.component.ts","packages/sports/web/app/src/next-to-go/next-to-go-show-more/next-to-go-show-more.component.ts","packages/sports/web/app/src/next-to-go/next-to-go-show-more/next-to-go-show-more.component.html","packages/sports/web/app/src/next-to-go/next-to-go.module.ts","packages/sports/web/app/src/next-to-go/widget/next-to-go-widget.component.html","packages/sports/web/app/src/next-to-go/widget/next-to-go-widget.component.ts","packages/sports/web/app/src/next-to-go/widget-registration.service.ts","packages/sports/web/app/src/next-to-go/next-to-go.feature.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\nimport { Fixture } from '@cds/betting-offer';\nimport { TagCount } from '@cds/betting-offer/tags';\nimport { NextToGoConfig, Sitecore } from '@frontend/sports/common/client-config-data-access';\nimport { toDictionary } from '@frontend/sports/common/core/utils/collection';\nimport { NumberDictionary, StringDictionary } from '@frontend/sports/common/core/utils/extended-types';\nimport { EventFactory } from '@frontend/sports/grid/core/feature/factories';\nimport { GridEvent } from '@frontend/sports/grid/core/feature/model';\nimport { entries, groupBy, min, orderBy, sortBy, sumBy } from 'lodash-es';\nimport { Observable, of } from 'rxjs';\n\nimport { TabBarItem } from '../tab-bar/tab-bar.models';\n\nexport enum NextToGoTabs {\n All = 0,\n}\n\n@Injectable()\nexport class NextToGoService {\n constructor(\n private nextToGoConfig: NextToGoConfig,\n private eventFactory: EventFactory,\n private sitecore: Sitecore,\n ) {}\n\n private get fixtureOrder(): NumberDictionary {\n const ids = this.nextToGoConfig.module.topCompetitionsOrder.concat(this.nextToGoConfig.module.participantIds);\n\n return toDictionary(\n ids,\n (id) => id,\n (_, index) => index,\n );\n }\n\n buildEvents(fixtures?: Fixture[], sports?: TagCount[]): Observable {\n const gridEvents: GridEvent[] = [];\n const sportsOrder = toDictionary(\n sports,\n (sport) => sport.tag.id,\n (_, index) => index,\n );\n\n if (fixtures) {\n const sortedFixtures = this.sortFixtures(fixtures, sportsOrder);\n\n return this.eventFactory.create(sortedFixtures);\n }\n\n return of(gridEvents);\n }\n\n marketGridGroupIds(): NumberDictionary {\n const groupIds: NumberDictionary = {};\n\n this.nextToGoConfig.module.sportDetails.map((sportDetail) => {\n groupIds[sportDetail.sportId] = sportDetail.gridGroupId;\n });\n\n return groupIds;\n }\n\n private sortFixtures(fixtures: Fixture[], sportsOrder: NumberDictionary): Fixture[] {\n const sortedFixtures: Fixture[] = [];\n\n const fixturesByDate = groupBy(fixtures, (fixture) => fixture.startDate) as StringDictionary;\n const groupedByDateKeyValuesPair = entries(fixturesByDate);\n\n groupedByDateKeyValuesPair.map((dateWithFixtures) => {\n if (dateWithFixtures[1].length > 1) {\n const groupedBySports = groupBy(dateWithFixtures[1], (fixture) => fixture.sport.id);\n\n const sportWithFixtures = entries(groupedBySports);\n const orderedSportWithFixtures = sortBy(sportWithFixtures, (sportFixture) => sportsOrder[sportFixture[0] as unknown as number]);\n\n orderedSportWithFixtures.forEach((item) => {\n const result = orderBy(item[1], [(fixture) => this.getOrder(fixture), (fixture) => fixture.name.value]);\n sortedFixtures.push(...result);\n });\n } else {\n sortedFixtures.push(...dateWithFixtures[1]);\n }\n });\n\n return sortedFixtures;\n }\n\n mapSportTabs(sports: TagCount[] | undefined): TabBarItem[] {\n if (!sports?.length) {\n return [];\n }\n\n let tabs: TabBarItem[] = [];\n const totalEvents = sumBy(sports, (sport) => sport.preMatch);\n\n if (sports.length > 1) {\n tabs.push({\n icon: 'sports-all',\n title: this.sitecore.globalMessages.AllSports,\n url: '',\n id: NextToGoTabs.All,\n count: totalEvents,\n });\n }\n\n tabs = tabs.concat(\n sports.map((sport) => ({\n id: sport.tag.id,\n title: sport.tag.name.value,\n icon: `sports-${sport.tag.id}`,\n count: sport.preMatch,\n })),\n );\n\n return tabs;\n }\n\n private getOrder(fixture: Fixture): number {\n const orderingIds = fixture.participants.map((p) => p.participantId);\n\n if (fixture.competition) {\n orderingIds.push(fixture.competition.id);\n }\n\n const orderedIndexes = orderingIds.map((id) => this.fixtureOrder[id]);\n\n return min(orderedIndexes)!;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { GridEvent } from '@frontend/sports/grid/core/feature/model';\nimport { NOT_APPLICABLE, TrackingService, trackingConstants } from '@frontend/sports/tracking/feature';\n\nimport { TabBarItem } from '../tab-bar/tab-bar.models';\nimport { ModularConfigAccessorService } from '../widget/core/modular-config-accessor.service';\n\n@Injectable()\nexport class NextToGoTrackingService {\n constructor(\n private trackingService: TrackingService,\n private accessorService: ModularConfigAccessorService,\n ) {}\n\n trackShowMoreClick(expanded: boolean, sportId: number | undefined): void {\n const details = expanded ? 'show more' : 'show less';\n\n const trackingData = {\n [trackingConstants.COMPONENT_CATEGORY_EVENT]: `${this.accessorService.getPage()?.toLowerCase()} grid widgets`,\n [trackingConstants.COMPONENT_LABEL_EVENT]: 'widget navigation',\n [trackingConstants.COMPONENT_ACTION_EVENT]: 'Click',\n [trackingConstants.COMPONENT_POSITION_EVENT]: NOT_APPLICABLE,\n [trackingConstants.COMPONENT_LOCATION_EVENT]: this.buildLocationEvent(sportId),\n [trackingConstants.COMPONENT_EVENT_DETAILS]: details,\n [trackingConstants.COMPONENT_URL_CLICKED]: NOT_APPLICABLE,\n };\n\n this.trackingService.track(trackingConstants.EVENT_TRACKING, trackingData);\n }\n\n trackTabSelected(tab: TabBarItem, index: number): void {\n const trackingData = {\n [trackingConstants.COMPONENT_CATEGORY_EVENT]: `${this.accessorService.getPage()?.toLowerCase()} grid widgets`,\n [trackingConstants.COMPONENT_LABEL_EVENT]: 'widget navigation',\n [trackingConstants.COMPONENT_ACTION_EVENT]: 'Click',\n [trackingConstants.COMPONENT_POSITION_EVENT]: 'Sport',\n [trackingConstants.COMPONENT_LOCATION_EVENT]: this.buildLocationEvent(tab.id),\n [trackingConstants.COMPONENT_EVENT_DETAILS]: tab.title,\n [trackingConstants.COMPONENT_CONTENT_POSITION]: index.toString(),\n [trackingConstants.SPORT_ID]: tab.id.toString(),\n };\n\n this.trackingService.track(trackingConstants.EVENT_TRACKING, trackingData);\n }\n\n trackEventClick(event: GridEvent, index: number): void {\n this.trackingService.track(trackingConstants.EVENT_TRACKING, {\n [trackingConstants.COMPONENT_CATEGORY_EVENT]: `${this.accessorService.getPage()?.toLowerCase()} grid widgets`,\n [trackingConstants.COMPONENT_LABEL_EVENT]: 'sport events',\n [trackingConstants.COMPONENT_ACTION_EVENT]: 'Click',\n [trackingConstants.COMPONENT_POSITION_EVENT]: NOT_APPLICABLE,\n [trackingConstants.COMPONENT_CONTENT_POSITION]: index.toString(),\n [trackingConstants.COMPONENT_LOCATION_EVENT]: this.buildLocationEvent(event.sport.id),\n [trackingConstants.COMPONENT_EVENT_DETAILS]: 'sport event',\n [trackingConstants.SPORT_EVENT_ID]: event.id,\n [trackingConstants.SPORT_ID]: event.sport.id.toString(),\n });\n }\n\n private buildLocationEvent(sportId: number | undefined): string {\n return [this.accessorService.getPage(), this.accessorService.getWidget()?.templateName, 'sport', sportId]\n .filter((seg) => seg)\n .join('/')\n .toLowerCase();\n }\n}\n","@if (sports.length) {\n \n
\n @for (item of sports; track item.id) {\n \n }\n
\n
\n}\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\n\nimport { ScrollAdapterComponent } from '@frontend/sports/common/core/feature/scroll-adapter';\nimport { IconCustomComponent } from '@frontend/vanilla/shared/icons';\nimport { DsPill } from 'packages/design-system/ui/pill/src/pill.component';\n\nimport { ScrollSelectedInViewDirective } from '../../directives/scroll-selected-in-view/scroll-selected-in-view.directive';\nimport { TabBarItem } from '../../tab-bar/tab-bar.models';\n\n@Component({\n selector: 'ms-sports-tab-bar',\n templateUrl: './sports-tab-bar.component.html',\n styleUrls: ['./sports-tab-bar.component.scss'],\n standalone: true,\n imports: [DsPill, ScrollAdapterComponent, IconCustomComponent, ScrollSelectedInViewDirective],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SportsTabBarComponent {\n @Input() sports: TabBarItem[] = [];\n @Output() selectedTab = new EventEmitter();\n\n get active(): TabBarItem | undefined {\n return this.sports && this.sports.filter((tab) => tab.active).pop();\n }\n\n eventSelected(sport: TabBarItem): void {\n this.sports = this.sports.map((item) => ({\n ...item,\n active: item.id === sport.id,\n }));\n const selectedSport = this.sports.find((e) => e.id === sport.id);\n this.selectedTab.emit(selectedSport);\n }\n}\n","\n @if (!(optionGroup.online && option.online)) {\n \n } @else {\n
\n
\n {{ getResultName(option) }}\n
\n
\n
\n \n
\n }\n\n","import { ChangeDetectionStrategy, Component, HostBinding, HostListener, Input } from '@angular/core';\n\nimport { EventModel, EventOption, EventOptionGroup } from '@frontend/sports/betting-offer/feature/model';\nimport { Sitecore } from '@frontend/sports/common/client-config-data-access';\nimport { TrackingSource } from '@frontend/sports/tracking/feature';\n\n@Component({\n selector: 'ms-next-to-go-option-group',\n templateUrl: './next-to-go-option-group.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NextToGoOptionGroupComponent {\n @Input() event: EventModel;\n @Input() optionGroup: EventOptionGroup;\n @Input() tracking: TrackingSource;\n @Input() showColumn = false;\n\n constructor(private sitecore: Sitecore) {}\n\n @HostBinding('class') className = 'grid-option';\n\n @HostListener('click', ['$event'])\n onClick(event: Event): void {\n event.preventDefault();\n if (!((event.target).className.indexOf('grid-option-selectable') > -1)) {\n event.stopPropagation();\n }\n }\n\n trackOption(index: number, option: EventOption): number {\n return option.id;\n }\n\n getResultName = (option: EventOption): string | undefined => {\n if (this.optionGroup.categoryAttribute) {\n const first = this.optionGroup.options.indexOf(option) === 0;\n const prefix = first ? this.sitecore.eventGrid.SixPack_TotalsOver : this.sitecore.eventGrid.SixPack_TotalsUnder;\n\n return `${prefix} ${this.optionGroup.categoryAttribute}`;\n } else if (this.showColumn) {\n return option.overridenName || '';\n } else if (option.optionAttribute) {\n return option.optionAttribute;\n } else {\n return option.overridenName || option.name;\n }\n };\n}\n","\n @if (!showOdds) {\n
\n @if (showCompetitionLogo && !hideCompetitionLogoOrSportIcon) {\n \n \n }\n\n @if (!showCompetitionLogo && !hideCompetitionLogoOrSportIcon) {\n \n }\n\n
\n \n
\n 1,\n }\">\n \n \n \n
\n \n } @else {\n @if (isWideScreen) {\n
\n @if (showCompetitionLogo && !hideCompetitionLogoOrSportIcon) {\n \n }\n @if (!showCompetitionLogo && !hideCompetitionLogoOrSportIcon) {\n \n }\n\n
\n \n
\n
\n
\n
\n @if (empty) {\n
\n \n
\n }\n @if (!empty) {\n \n }\n
\n
\n \n \n \n
\n
\n } @else {\n
\n @if (showCompetitionLogo && !hideCompetitionLogoOrSportIcon) {\n \n \n }\n @if (!showCompetitionLogo && !hideCompetitionLogoOrSportIcon) {\n \n }\n\n
\n \n \n \n
\n
\n
\n
\n @if (empty) {\n
\n \n \n
\n }\n @if (!empty) {\n
\n \n \n
\n }\n
\n
\n }\n }\n
\n","import { ChangeDetectionStrategy, Component, HostBinding, Input, OnChanges, OnInit } from '@angular/core';\n\nimport { EventOptionGroup } from '@frontend/sports/betting-offer/feature/model';\nimport { NextToGoConfig, Sitecore } from '@frontend/sports/common/client-config-data-access';\nimport { Nullable, NumberDictionary } from '@frontend/sports/common/core/utils/extended-types';\nimport { CompetitionLogosService } from '@frontend/sports/competition-logos/feature';\nimport { GridEvent } from '@frontend/sports/grid/core/feature/model';\nimport { TrackingSource } from '@frontend/sports/tracking/feature';\n\nimport { OptionGroupService } from '../../event-model/helpers/option-group.service';\nimport { EventLinkConfig, UrlHelperService } from '../../navigation-core/url-helper.service';\n\n@Component({\n selector: 'ms-next-to-go-event',\n templateUrl: './next-to-go-event.component.html',\n styleUrls: ['../next-to-go.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NextToGoEventComponent implements OnInit, OnChanges {\n @Input() event: GridEvent;\n @Input() linkConfig: EventLinkConfig = {\n emptyText: this.sitecore.eventGrid.emptyMarketLinkText,\n };\n\n @Input() eventsCount: number;\n @Input() isWideScreen: boolean;\n @Input() marketgridGroupIds: NumberDictionary;\n @Input() tracking: TrackingSource;\n @Input() oddsTimerGroupClass: string;\n\n eventUrl: string;\n shouldRemoveHref: Nullable;\n emptyText: string;\n showOdds: boolean;\n empty: boolean;\n sportsToDisplayCompetitionLogos: number[];\n intervalForRedPrematchTimer: number;\n showCompetitionLogo: boolean;\n optionGroup: EventOptionGroup;\n showParticipantImage: boolean;\n hideCompetitionLogoOrSportIcon: boolean;\n\n @HostBinding()\n get class(): string {\n return this.getHostClass();\n }\n\n constructor(\n public sitecore: Sitecore,\n private urlHelper: UrlHelperService,\n private nextToGoConfig: NextToGoConfig,\n private competitionLogoService: CompetitionLogosService,\n private optionGroupService: OptionGroupService,\n ) {\n this.showOdds = this.nextToGoConfig.showOdds;\n this.sportsToDisplayCompetitionLogos = this.nextToGoConfig.sportsToDisplayCompetitionLogo;\n this.intervalForRedPrematchTimer = this.nextToGoConfig.intervalForRedPreMatchTimer;\n this.showParticipantImage = this.nextToGoConfig.showParticipantLogoOrImage;\n }\n\n ngOnInit(): void {\n this.setLink();\n this.showCompetitionLogo = this.displayCompetitionLogo();\n const option = this.getOptionGroup(this.event);\n this.optionGroup = option ? option : {};\n this.shouldRemoveHref = this.urlHelper.shouldRemoveHref();\n }\n\n ngOnChanges(): void {\n const option = this.getOptionGroup(this.event);\n this.optionGroup = option ? option : {};\n this.hideCompetitionLogoOrSportIcon =\n this.showParticipantImage &&\n this.event.participants.some((x) => x.image) &&\n this.event.participants.length === 2 &&\n !this.event.isTournamentGame();\n }\n\n private setLink(): void {\n this.eventUrl = this.urlHelper.getEventUrl(this.event, this.linkConfig.extraParams);\n this.emptyText = this.linkConfig.emptyText;\n }\n\n private displayCompetitionLogo(): boolean {\n const isLogoVisible = this.sportsToDisplayCompetitionLogos.includes(this.event.sport.id);\n\n return isLogoVisible && this.competitionLogoService.hasLogo(this.event.sport.id, this.event.league.id);\n }\n\n private getHostClass(): string {\n if (this.isWideScreen && this.showOdds) {\n return 'next-to-go-event_odds ms-active-highlight';\n }\n if (this.isWideScreen && this.eventsCount === 1 && !this.showOdds) {\n return 'next-to-go-event_single ms-active-highlight';\n }\n\n return 'next-to-go-event ms-active-highlight';\n }\n\n private getOptionGroup(gridEvent: GridEvent): EventOptionGroup | undefined {\n const option = this.optionGroupService.get(gridEvent.optionGroups, this.marketgridGroupIds[this.event.sport.id]);\n if (!option) {\n this.empty = true;\n }\n\n return option;\n }\n}\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\n\nimport { Sitecore } from '@frontend/sports/common/client-config-data-access';\n\n@Component({\n selector: 'ms-next-to-go-show-more',\n templateUrl: './next-to-go-show-more.component.html',\n styleUrls: ['../next-to-go.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NextToGoShowMoreComponent {\n @Input() expand = false;\n @Output() expandChange: EventEmitter = new EventEmitter();\n\n constructor(public sitecore: Sitecore) {}\n\n toggled(): void {\n this.expand = !this.expand;\n this.expandChange.emit(this.expand);\n }\n\n get message(): string {\n return this.expand ? this.sitecore.globalMessages.ShowLess : this.sitecore.globalMessages.ShowMore;\n }\n}\n","
\n
\n\n \n
\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { FontResizerComponent } from '@frontend/sports/common/core/feature/font-resizer';\nimport { TrustPipe } from '@frontend/sports/common/core/utils/dom';\nimport { CompetitionLogoComponent } from '@frontend/sports/competition-logos/feature';\nimport { NativePriceFormatterPipe } from '@frontend/sports/odds/feature/native-price';\nimport { IconCustomComponent } from '@frontend/vanilla/shared/icons';\n\nimport { GridModule } from '../grid/grid.module';\nimport { NavigationCoreModule } from '../navigation-core/navigation-core.module';\nimport { EventPickComponent } from '../option-pick/event-pick.component';\nimport { TabBarModule } from '../tab-bar/tab-bar.module';\nimport { NextToGoEventComponent } from './next-to-go-event/next-to-go-event.component';\nimport { NextToGoOptionGroupComponent } from './next-to-go-option-group/next-to-go-option-group.component';\nimport { NextToGoShowMoreComponent } from './next-to-go-show-more/next-to-go-show-more.component';\n\n@NgModule({\n imports: [\n CommonModule,\n NavigationCoreModule,\n TabBarModule,\n GridModule,\n CompetitionLogoComponent,\n FontResizerComponent,\n TrustPipe,\n EventPickComponent,\n IconCustomComponent,\n NativePriceFormatterPipe,\n ],\n declarations: [NextToGoEventComponent, NextToGoShowMoreComponent, NextToGoOptionGroupComponent],\n exports: [NextToGoEventComponent, NextToGoShowMoreComponent],\n})\nexport class NextToGoModule {}\n","\n \n
\n
{{ sitecore.lobby.NextToGoEvents }}
\n
\n \n 1),\n 'next-to-go-events_odds': isWideScreen && showOdds,\n 'next-to-go-events_single': isWideScreen && selectedSportEventsCount === 1 && !showOdds,\n }\">\n \n \n \n \n
\n
\n","import { AsyncPipe, NgClass, NgFor, NgIf } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, HostBinding, OnInit } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { EventModel } from '@frontend/sports/betting-offer/feature/model';\nimport { CDNCachingConfig, NextToGoConfig, Sitecore, StylingGridConfiguration } from '@frontend/sports/common/client-config-data-access';\nimport { NumberDictionary } from '@frontend/sports/common/core/utils/extended-types';\nimport { EventSubscription } from '@frontend/sports/event-subscription/feature/base-subscription';\nimport { EventSubscriptionService } from '@frontend/sports/event-subscription/feature/event-subscription';\nimport { GridEvent } from '@frontend/sports/grid/core/feature/model';\nimport { WidgetContext, WidgetType } from '@frontend/sports/types/components/widget';\nimport { NextToGoPayload } from '@frontend/sports/types/components/widget/types';\nimport { MediaQueryService } from '@frontend/vanilla/core';\nimport { clone } from 'lodash-es';\nimport { BehaviorSubject, Observable, combineLatest } from 'rxjs';\nimport { filter, first, map, mergeMap, skip, take, tap } from 'rxjs/operators';\n\nimport { LiveFavouriteFixturesService } from '../../favourites/live-favourites-fixtures.service';\nimport { TabBarItem } from '../../tab-bar/tab-bar.models';\nimport { WidgetContextService } from '../../widget/common/widget-context.service';\nimport { WidgetComponent } from '../../widget/core/widget-registry.service';\nimport { SportsTabBarComponent } from '../next-to-go-sports/sports-tab-bar.component';\nimport { NextToGoModule } from '../next-to-go.module';\nimport { NextToGoService } from '../next-to-go.service';\nimport { NextToGoTrackingService } from '../next-to-go.tracking.service';\n\ninterface ViewModel {\n events: GridEvent[];\n tabs: TabBarItem[];\n}\n\n@Component({\n standalone: true,\n imports: [NgIf, NgFor, AsyncPipe, NgClass, NextToGoModule, SportsTabBarComponent],\n selector: 'ms-next-to-go-widget',\n templateUrl: './next-to-go-widget.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [NextToGoTrackingService],\n})\nexport class NextToGoWidgetComponent extends WidgetComponent implements OnInit {\n @HostBinding('class') className = 'next-to-go grid grid-wrapper';\n @HostBinding('class.bold-participant-names') get showParticipantBoldName(): boolean {\n return this.stylingGridConfig.showParticipantBoldName;\n }\n\n readonly viewModel$ = new BehaviorSubject({ events: [], tabs: [] });\n\n marketGroupIds: NumberDictionary;\n expand = false;\n isWideScreen: boolean;\n oddsTimerGroupClass: string;\n trackingSource: string;\n\n get selectedSportEventsCount(): number {\n return this.selectedTab?.count ?? 0;\n }\n\n get showExpander(): boolean {\n return this.selectedSportEventsCount > this.nextToGoConfig.minEventsPerSport;\n }\n\n get showOdds(): boolean {\n return this.nextToGoConfig.showOdds;\n }\n\n get marketGridGroupIds(): NumberDictionary {\n if (!this.marketGroupIds) this.marketGroupIds = this.nextToGoService.marketGridGroupIds();\n\n return this.marketGroupIds;\n }\n\n private eventSubscription?: EventSubscription;\n private selectedTab?: TabBarItem;\n private shouldIncludePayload = false;\n\n constructor(\n private nextToGoService: NextToGoService,\n public nextToGoConfig: NextToGoConfig,\n private mediaService: MediaQueryService,\n private eventSubscriptionService: EventSubscriptionService,\n private changeDetectorRef: ChangeDetectorRef,\n public sitecore: Sitecore,\n private nextToGoTrackingService: NextToGoTrackingService,\n private favouritesService: LiveFavouriteFixturesService,\n private context: WidgetContextService,\n private stylingGridConfig: StylingGridConfiguration,\n private cdnCachingConfig: CDNCachingConfig,\n ) {\n super();\n this.shouldIncludePayload = this.cdnCachingConfig.widgets.includes(WidgetType.NextToGo);\n this.destroyRef.onDestroy(() => this.unsubscribe());\n }\n\n ngOnInit(): void {\n combineLatest([this.mediaService.observe().pipe(skip(1)), this.nextToGoConfig.whenReady.pipe(first())])\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(([mediaService, _]) => this.onResize());\n\n this.viewModel$.pipe(skip(1), takeUntilDestroyed(this.destroyRef)).subscribe(() => this.changeDetectorRef.markForCheck());\n\n this.isWideScreen = this.mediaService.isActive('gt-xs');\n\n this.oddsTimerGroupClass = this.favouritesService.isLiveFavouriteEnabled() ? 'odds-timer-group-fav-enabled-x2' : 'odds-timer-group-x2';\n }\n\n protected override onData(data: NextToGoPayload): void {\n if (!data?.fixtures?.length) {\n this.getData(true).subscribe(this.renderData);\n } else {\n this.renderData(data);\n }\n }\n\n eventClicked(event: GridEvent, index: number): void {\n this.nextToGoTrackingService.trackEventClick(event, index);\n }\n\n renderData = (data: NextToGoPayload) => {\n if (data?.fixtures?.length) {\n this.prepareViewModel(data)\n .pipe(\n tap((model) => {\n this.setTrackingSource();\n this.subscribe(model.events);\n }),\n )\n .subscribe((model) => {\n this.viewModel$.next(model);\n this.hasData = true;\n this.setWidgetLoaded();\n });\n } else {\n this.hasData = false;\n this.setWidgetLoaded();\n this.logEmptyData();\n }\n };\n\n tabSelected(tab: TabBarItem): void {\n this.selectedTab = tab;\n this.expand = false;\n\n this.getData().subscribe((payload) => {\n if (payload?.fixtures?.length) {\n this.renderData(payload);\n } else {\n // when no events are returned while switching tabs, select by default the first tab if not already selected\n this.selectFirstTab();\n }\n });\n\n const tabIndex = this.viewModel$.value.tabs.findIndex((t) => t.id === tab.id);\n this.nextToGoTrackingService.trackTabSelected(tab, tabIndex);\n }\n\n private selectFirstTab(): void {\n const tabs = this.viewModel$.value.tabs;\n if (!tabs.length) {\n return;\n }\n\n tabs.forEach((t) => (t.active = false));\n this.selectedTab = tabs[0];\n\n this.getData().subscribe((payload) => this.renderData(payload));\n\n this.nextToGoTrackingService.trackTabSelected(this.selectedTab, 0);\n }\n\n showMoreToggle(isExpanded: boolean): void {\n this.expand = isExpanded;\n this.nextToGoTrackingService.trackShowMoreClick(this.expand, this.selectedTab?.id);\n\n this.getData().subscribe((data) => this.renderData(data));\n }\n\n trackOption(index: number, event: GridEvent): string {\n return event.id;\n }\n\n override getContext(): Partial {\n const pageSize = this.expand ? this.nextToGoConfig.maxEventsPerSport : this.nextToGoConfig.minEventsPerSport;\n\n const context = { ...super.getContext(), sportId: this.selectedTab?.id, take: pageSize };\n\n return !this.shouldIncludePayload ? context : { ...context, shouldIncludePayload: this.shouldIncludePayload };\n }\n\n private onResize(): void {\n const favouriteToggleVisible = this.favouritesService.isLiveFavouriteEnabled();\n\n this.isWideScreen = this.mediaService.isActive('gt-xs');\n this.oddsTimerGroupClass = favouriteToggleVisible ? 'odds-timer-group-fav-enabled-x2' : 'odds-timer-group-x2';\n\n this.viewModel$.next({ ...this.viewModel$.value, events: this.orderInTwoColumns(this.viewModel$.value.events) });\n }\n\n private getData(addSchemaMarkup: boolean = false): Observable {\n return this.nextToGoConfig.whenReady.pipe(\n mergeMap((_) => {\n return this.context.getWidget(this.getContext(), addSchemaMarkup).pipe(\n filter(({ payload }) => payload !== undefined),\n map(({ payload }) => payload as NextToGoPayload),\n takeUntilDestroyed(this.destroyRef),\n );\n }),\n );\n }\n\n private prepareViewModel(data: NextToGoPayload): Observable {\n return this.nextToGoConfig.whenReady.pipe(\n mergeMap((_) => {\n return this.nextToGoService.buildEvents(data.fixtures, data.tabs).pipe(\n take(1),\n map((events) => {\n const sportTabs = this.nextToGoService.mapSportTabs(data.tabs);\n this.setSelectedTab(sportTabs);\n\n const sortedEvents = this.orderInTwoColumns(events);\n\n return {\n events: sortedEvents,\n tabs: sportTabs,\n };\n }),\n );\n }),\n );\n }\n\n private setSelectedTab(tabs: TabBarItem[]): void {\n if (!tabs.length) {\n return;\n }\n\n tabs[0].active = true;\n\n if (tabs.length > 1 && this.selectedTab) {\n tabs.forEach((t) => (t.active = t.id === this.selectedTab?.id));\n }\n\n this.selectedTab = this.selectedTab ?? tabs.find((t) => t.active);\n }\n\n private orderInTwoColumns(events: GridEvent[]): GridEvent[] {\n const totalEvents = events.length;\n const rowCount = Math.ceil(totalEvents / 2);\n\n if (this.isWideScreen && !this.showOdds && this.selectedSportEventsCount > 1) {\n const result: GridEvent[] = [];\n\n for (let i = 0; i < rowCount; i++) {\n result.push(events[i]);\n\n if (i + rowCount < totalEvents) {\n result.push(events[i + rowCount]);\n }\n }\n\n return result;\n }\n\n return events;\n }\n\n private subscribe(events: GridEvent[]): void {\n this.unsubscribe();\n const callbacks = events.map((model, index) => ({\n event: model,\n callback: this.getCallback(index),\n }));\n\n if (callbacks.length) {\n this.eventSubscription = this.eventSubscriptionService.subscribe(callbacks);\n }\n }\n\n private getCallback(index: number): (updatedEvent: EventModel) => void {\n return (updatedEvent) => {\n if (!updatedEvent) {\n return;\n }\n\n if (updatedEvent.optionGroups.length) {\n const crtEvents = this.viewModel$.value.events;\n crtEvents[index] = clone(updatedEvent);\n this.viewModel$.next({\n ...this.viewModel$.value,\n });\n\n this.changeDetectorRef.markForCheck();\n }\n };\n }\n\n private unsubscribe(): void {\n this.eventSubscription?.unsubscribe();\n }\n\n private setTrackingSource(): void {\n this.trackingSource = `sport/${this.selectedTab?.id ?? ''}`;\n }\n}\n","import { Injectable, Injector } from '@angular/core';\n\nimport { WidgetType } from '@frontend/sports/types/components/widget';\nimport { OnFeatureInit } from '@frontend/vanilla/core';\n\nimport { WidgetRegistryService } from '../widget/core/widget-registry.service';\nimport { NextToGoWidgetComponent } from './widget/next-to-go-widget.component';\n\n@Injectable({ providedIn: 'root' })\nexport class NextToGoWidgetRegistration implements OnFeatureInit {\n constructor(\n private widgetRegistry: WidgetRegistryService,\n private injector: Injector,\n ) {}\n\n onFeatureInit(): void {\n this.widgetRegistry.registerLazy(WidgetType.NextToGo, NextToGoWidgetComponent, this.injector);\n }\n}\n","import { runOnFeatureInit } from '@frontend/vanilla/core';\n\nimport { NextToGoService } from './next-to-go.service';\nimport { NextToGoTrackingService } from './next-to-go.tracking.service';\nimport { NextToGoWidgetRegistration } from './widget-registration.service';\n\nexport function provide() {\n return [NextToGoService, NextToGoTrackingService, runOnFeatureInit(NextToGoWidgetRegistration)];\n}\n"],"names":["NextToGoTabs","NextToGoService","constructor","nextToGoConfig","eventFactory","sitecore","fixtureOrder","ids","module","topCompetitionsOrder","concat","participantIds","toDictionary","id","_","index","buildEvents","fixtures","sports","gridEvents","sportsOrder","sport","tag","sortedFixtures","sortFixtures","create","of","marketGridGroupIds","groupIds","sportDetails","map","sportDetail","sportId","gridGroupId","fixturesByDate","groupBy","fixture","startDate","groupedByDateKeyValuesPair","entries","dateWithFixtures","length","groupedBySports","sportWithFixtures","sortBy","sportFixture","forEach","item","result","orderBy","getOrder","name","value","push","mapSportTabs","tabs","totalEvents","sumBy","preMatch","icon","title","globalMessages","AllSports","url","All","count","orderingIds","participants","p","participantId","competition","orderedIndexes","min","ɵɵinject","NextToGoConfig","EventFactory","Sitecore","factory","ɵfac","_NextToGoService","NextToGoTrackingService","trackingService","accessorService","trackShowMoreClick","expanded","_a","details","trackingData","trackingConstants","COMPONENT_CATEGORY_EVENT","getPage","toLowerCase","COMPONENT_LABEL_EVENT","COMPONENT_ACTION_EVENT","COMPONENT_POSITION_EVENT","NOT_APPLICABLE","COMPONENT_LOCATION_EVENT","buildLocationEvent","COMPONENT_EVENT_DETAILS","COMPONENT_URL_CLICKED","track","EVENT_TRACKING","trackTabSelected","tab","COMPONENT_CONTENT_POSITION","toString","SPORT_ID","trackEventClick","event","SPORT_EVENT_ID","getWidget","templateName","filter","seg","join","TrackingService","ModularConfigAccessorService","n","w","_NextToGoTrackingService","ɵɵelementStart","ɵɵlistener","item_r2","ɵɵrestoreView","_r1","$implicit","ctx_r2","ɵɵnextContext","ɵɵresetView","eventSelected","ɵɵelement","ɵɵtext","ɵɵelementEnd","ɵɵproperty","active","be","ɵɵadvance","ɵɵtextInterpolate","ɵɵrepeaterCreate","SportsTabBarComponent_Conditional_0_For_3_Template","_forTrack0","m","ɵɵrepeater","SportsTabBarComponent","selectedTab","EventEmitter","pop","__spreadProps","__spreadValues","selectedSport","find","e","emit","selectors","inputs","outputs","standalone","features","ɵɵStandaloneFeature","decls","vars","consts","template","rf","ctx","ɵɵtemplate","SportsTabBarComponent_Conditional_0_Template","ɵɵconditional","DsPill","ScrollAdapterComponent","IconCustomComponent","ScrollSelectedInViewDirective","styles","changeDetection","_SportsTabBarComponent","ɵɵtextInterpolate1","ctx_r1","getResultName","option_r1","ɵɵpipeBind1","nativePrice","NextToGoOptionGroupComponent_ms_event_pick_0_Conditional_1_Template","NextToGoOptionGroupComponent_ms_event_pick_0_Conditional_2_Template","ɵɵclassProp","online","optionGroup","tracking","source","position","NextToGoOptionGroupComponent","showColumn","className","option","categoryAttribute","options","indexOf","eventGrid","SixPack_TotalsOver","SixPack_TotalsUnder","overridenName","optionAttribute","onClick","preventDefault","target","stopPropagation","trackOption","ɵɵdirectiveInject","hostVars","hostBindings","$event","ɵɵclassMap","NextToGoOptionGroupComponent_ms_event_pick_0_Template","U","Z","J","T","et","_NextToGoOptionGroupComponent","ɵɵpropertyInterpolate1","ctx_r0","league","NextToGoEventComponent_Conditional_1_Conditional_1_Template","NextToGoEventComponent_Conditional_1_Conditional_2_Template","showCompetitionLogo","hideCompetitionLogoOrSportIcon","showParticipantImage","ɵɵpureFunction2","_c0","eventsCount","live","scoreboard","intervalForRedPrematchTimer","emptyText","NextToGoEventComponent_Conditional_2_Conditional_0_Conditional_1_Template","NextToGoEventComponent_Conditional_2_Conditional_0_Conditional_2_Template","NextToGoEventComponent_Conditional_2_Conditional_0_Conditional_7_Template","NextToGoEventComponent_Conditional_2_Conditional_0_Conditional_8_Template","oddsTimerGroupClass","empty","ɵɵpureFunction1","_c1","showOdds","_c2","NextToGoEventComponent_Conditional_2_Conditional_1_Conditional_1_Template","NextToGoEventComponent_Conditional_2_Conditional_1_Conditional_2_Template","NextToGoEventComponent_Conditional_2_Conditional_1_Conditional_8_Template","NextToGoEventComponent_Conditional_2_Conditional_1_Conditional_9_Template","NextToGoEventComponent_Conditional_2_Conditional_0_Template","NextToGoEventComponent_Conditional_2_Conditional_1_Template","isWideScreen","NextToGoEventComponent","class","getHostClass","urlHelper","competitionLogoService","optionGroupService","linkConfig","emptyMarketLinkText","sportsToDisplayCompetitionLogos","sportsToDisplayCompetitionLogo","intervalForRedPreMatchTimer","showParticipantLogoOrImage","ngOnInit","setLink","displayCompetitionLogo","getOptionGroup","shouldRemoveHref","ngOnChanges","some","x","image","isTournamentGame","eventUrl","getEventUrl","extraParams","includes","hasLogo","gridEvent","get","optionGroups","marketgridGroupIds","UrlHelperService","CompetitionLogosService","OptionGroupService","Ne","NextToGoEventComponent_Conditional_1_Template","NextToGoEventComponent_Conditional_2_Template","ɵɵsanitizeUrl","z","nt","Ke","vt","pt","Q","_NextToGoEventComponent","NextToGoShowMoreComponent","expand","expandChange","toggled","message","ShowLess","ShowMore","ɵɵpipeBind2","ɵɵsanitizeHtml","qe","_NextToGoShowMoreComponent","NextToGoModule","Ee","Se","CommonModule","NavigationCoreModule","TabBarModule","GridModule","CompetitionLogoComponent","EventPickComponent","_NextToGoModule","ctx_r3","_r3","event_r5","i_r6","eventClicked","selectedSportEventsCount","trackingSource","_r7","showMoreToggle","ɵɵelementContainerStart","tabSelected","NextToGoWidgetComponent_ng_container_0_ng_container_1_ms_next_to_go_event_6_Template","NextToGoWidgetComponent_ng_container_0_ng_container_1_ms_next_to_go_show_more_7_Template","ce","lobby","NextToGoEvents","viewModel_r8","ɵɵpureFunction3","events","showExpander","NextToGoWidgetComponent_ng_container_0_ng_container_1_Template","NextToGoWidgetComponent","WidgetComponent","showParticipantBoldName","stylingGridConfig","minEventsPerSport","marketGroupIds","nextToGoService","mediaService","eventSubscriptionService","changeDetectorRef","nextToGoTrackingService","favouritesService","context","cdnCachingConfig","viewModel$","BehaviorSubject","shouldIncludePayload","renderData","data","prepareViewModel","pipe","tap","model","setTrackingSource","subscribe","next","hasData","setWidgetLoaded","logEmptyData","widgets","destroyRef","onDestroy","unsubscribe","combineLatest","observe","skip","whenReady","first","takeUntilDestroyed","onResize","markForCheck","isActive","isLiveFavouriteEnabled","onData","getData","payload","selectFirstTab","tabIndex","findIndex","t","isExpanded","getContext","pageSize","maxEventsPerSport","take","favouriteToggleVisible","orderInTwoColumns","addSchemaMarkup","mergeMap","undefined","sportTabs","setSelectedTab","rowCount","Math","ceil","i","callbacks","callback","getCallback","eventSubscription","updatedEvent","crtEvents","clone","MediaQueryService","EventSubscriptionService","ChangeDetectorRef","LiveFavouriteFixturesService","WidgetContextService","StylingGridConfiguration","CDNCachingConfig","ɵɵInheritDefinitionFeature","NextToGoWidgetComponent_ng_container_0_Template","NgIf","NgFor","AsyncPipe","NgClass","encapsulation","_NextToGoWidgetComponent","NextToGoWidgetRegistration","widgetRegistry","injector","onFeatureInit","registerLazy","WidgetRegistryService","Injector","providedIn","_NextToGoWidgetRegistration","provide","runOnFeatureInit"],"mappings":"qhEAcA,IAAYA,EAAAA,CAAZ,SAAYA,CAAAA,CAAY,CACpBA,OAAAA,EAAAA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,KADQA,CAAAA,CAEZ,EAFYA,EAAY,EAAA,EAAA,CAAA,CAKXC,CAAe,CAAA,CAAA,IAAA,CAAtB,IAAOA,CAAAA,CAAP,MAAOA,CAAe,CACxBC,WAAAA,CACYC,EACAC,CACAC,CAAAA,CAAAA,CAAkB,CAFlB,IAAA,CAAAF,cAAAA,CAAAA,CAAAA,CACA,KAAAC,YAAAA,CAAAA,CAAAA,CACA,IAAAC,CAAAA,QAAAA,CAAAA,EACT,CAEH,IAAYC,YAAY,EAAA,CACpB,IAAMC,CAAAA,CAAM,IAAKJ,CAAAA,cAAAA,CAAeK,MAAOC,CAAAA,oBAAAA,CAAqBC,MAAO,CAAA,IAAA,CAAKP,cAAeK,CAAAA,MAAAA,CAAOG,cAAc,CAAA,CAE5G,OAAOC,CACHL,CAAAA,CAAAA,CACCM,CAAOA,EAAAA,CAAAA,CACR,CAACC,CAAAA,CAAGC,IAAUA,CAAK,CAE3B,CAEAC,WAAAA,CAAYC,CAAsBC,CAAAA,CAAAA,CAAmB,CACjD,IAAMC,CAAAA,CAA0B,EAAA,CAC1BC,CAAcR,CAAAA,CAAAA,CAChBM,CACCG,CAAAA,CAAAA,EAAUA,CAAMC,CAAAA,GAAAA,CAAIT,EACrB,CAAA,CAACC,CAAGC,CAAAA,CAAAA,GAAUA,CAAK,CAGvB,CAAA,GAAIE,CAAU,CAAA,CACV,IAAMM,CAAAA,CAAiB,KAAKC,YAAaP,CAAAA,CAAAA,CAAUG,CAAW,CAAA,CAE9D,OAAO,IAAA,CAAKhB,aAAaqB,MAAOF,CAAAA,CAAc,CAClD,CAEA,OAAOG,EAAAA,CAAGP,CAAU,CACxB,CAEAQ,kBAAAA,EAAkB,CACd,IAAMC,CAAqC,CAAA,GAE3C,OAAKzB,IAAAA,CAAAA,cAAAA,CAAeK,MAAOqB,CAAAA,YAAAA,CAAaC,GAAKC,CAAAA,CAAAA,EAAe,CACxDH,CAASG,CAAAA,CAAAA,CAAYC,OAAO,CAAA,CAAID,CAAYE,CAAAA,YAChD,CAAC,CAEML,CAAAA,CACX,CAEQJ,YAAAA,CAAaP,CAAqBG,CAAAA,CAAAA,CAAqC,CAC3E,IAAMG,CAAAA,CAA4B,EAAA,CAE5BW,CAAiBC,CAAAA,EAAAA,CAAQlB,EAAWmB,CAAYA,EAAAA,CAAAA,CAAQC,SAAS,CAAA,CAGvEC,OAFmCC,EAAAA,CAAQL,CAAc,CAE9BJ,CAAAA,GAAAA,CAAKU,CAAoB,EAAA,CAChD,GAAIA,CAAAA,CAAiB,CAAC,CAAEC,CAAAA,MAAAA,CAAS,CAAG,CAAA,CAChC,IAAMC,EAAAA,CAAkBP,EAAQK,CAAAA,CAAAA,CAAiB,CAAC,CAAA,CAAIJ,CAAYA,EAAAA,CAAAA,CAAQf,KAAMR,CAAAA,EAAE,EAE5E8B,EAAoBJ,CAAAA,EAAAA,CAAQG,EAAe,CAAA,CAChBE,EAAOD,CAAAA,EAAAA,CAAoBE,GAAiBzB,CAAYyB,CAAAA,CAAAA,CAAa,CAAC,CAAsB,CAAC,CAAA,CAErGC,QAASC,CAAQ,EAAA,CACtC,IAAMC,EAAAA,CAASC,EAAQF,CAAAA,CAAAA,CAAK,CAAC,CAAA,CAAG,CAAEX,CAAAA,EAAY,IAAKc,CAAAA,QAAAA,CAASd,CAAO,CAAA,CAAIA,GAAYA,CAAQe,CAAAA,IAAAA,CAAKC,KAAK,CAAC,CACtG7B,CAAAA,CAAAA,CAAe8B,KAAK,GAAGL,EAAM,EACjC,CAAC,EACL,CAAA,KACIzB,EAAe8B,IAAK,CAAA,GAAGb,CAAiB,CAAA,CAAC,CAAC,EAElD,CAAC,CAAA,CAEMjB,CACX,CAEA+B,YAAapC,CAAAA,CAAAA,CAA8B,CACvC,GAAI,EAACA,CAAAA,EAAAA,IAAAA,EAAAA,CAAQuB,CAAAA,MAAAA,CAAAA,CACT,OAAO,GAGX,IAAIc,CAAAA,CAAqB,EAAA,CACnBC,CAAcC,CAAAA,EAAAA,CAAMvC,EAASG,CAAUA,EAAAA,CAAAA,CAAMqC,QAAQ,CAAA,CAE3D,OAAIxC,CAAAA,CAAOuB,OAAS,CAChBc,EAAAA,CAAAA,CAAKF,IAAK,CAAA,CACNM,IAAM,CAAA,YAAA,CACNC,MAAO,IAAKvD,CAAAA,QAAAA,CAASwD,cAAeC,CAAAA,SAAAA,CACpCC,GAAK,CAAA,EAAA,CACLlD,GAAIb,EAAagE,CAAAA,GAAAA,CACjBC,KAAOT,CAAAA,CAAAA,CACV,CAGLD,CAAAA,CAAAA,CAAOA,EAAK7C,MACRQ,CAAAA,CAAAA,CAAOY,GAAKT,CAAAA,CAAAA,GAAW,CACnBR,EAAAA,CAAIQ,CAAMC,CAAAA,GAAAA,CAAIT,EACd+C,CAAAA,KAAAA,CAAOvC,CAAMC,CAAAA,GAAAA,CAAI6B,IAAKC,CAAAA,KAAAA,CACtBO,KAAM,CAAUtC,OAAAA,EAAAA,CAAAA,CAAMC,GAAIT,CAAAA,EAAE,CAC5BoD,CAAAA,CAAAA,KAAAA,CAAO5C,EAAMqC,QACf,CAAA,CAAA,CAAC,CAGAH,CAAAA,CACX,CAEQL,QAAAA,CAASd,EAAgB,CAC7B,IAAM8B,CAAc9B,CAAAA,CAAAA,CAAQ+B,YAAarC,CAAAA,GAAAA,CAAKsC,CAAMA,EAAAA,CAAAA,CAAEC,aAAa,CAAA,CAE/DjC,CAAQkC,CAAAA,WAAAA,EACRJ,CAAYb,CAAAA,IAAAA,CAAKjB,EAAQkC,WAAYzD,CAAAA,EAAE,CAG3C,CAAA,IAAM0D,CAAiBL,CAAAA,CAAAA,CAAYpC,IAAKjB,CAAO,EAAA,IAAA,CAAKP,YAAaO,CAAAA,CAAE,CAAC,CAAA,CAEpE,OAAO2D,EAAID,CAAAA,CAAc,CAC7B,CAAA,CAAA,CAAA,CAAA,CAAA,SAAA,CAAA,SAAA,CAAA,CAAA,CAAA,OAAA,IAAA,CAAA,EA7GStE,CAAewE,EAAAA,EAAAA,CAAAC,EAAA,CAAA,CAAAD,EAAAE,CAAAA,EAAA,CAAAF,CAAAA,EAAAA,CAAAG,EAAA,CAAA,CAAA,CAAf3E,CAAAA,CAAAA,CAAAA,UAAAA,CAAAA,CAAAA,CAAAA,CAAAA,KAAAA,CAAAA,CAAAA,CAAe4E,OAAf5E,CAAAA,CAAAA,CAAe6E,SAAA,CAAA,EAAtB,IAAO7E,CAAAA,CAAP8E,CAAO9E,CAAAA,OAAAA,CAAe,CAAA,GAAA,CCV5B,IAAa+E,CAAuB,CAAA,CAAA,IAAA,CAA9B,IAAOA,GAAP,CAAA,MAAOA,CAAuB,CAChC9E,WACY+E,CAAAA,CAAAA,CACAC,CAA6C,CAAA,CAD7C,IAAAD,CAAAA,eAAAA,CAAAA,EACA,IAAAC,CAAAA,eAAAA,CAAAA,EACT,CAEHC,kBAAmBC,CAAAA,CAAAA,CAAmBpD,EAA2B,CAfrE,IAAAqD,CAgBQ,CAAA,IAAMC,CAAUF,CAAAA,CAAAA,CAAW,YAAc,WAEnCG,CAAAA,CAAAA,CAAe,CACjB,CAACC,CAAkBC,CAAAA,wBAAwB,EAAG,CAAA,EAAA,CAAGJ,CAAA,CAAA,IAAA,CAAKH,eAAgBQ,CAAAA,OAAAA,EAArB,GAAA,IAAA,CAAA,KAAA,CAAA,CAAAL,EAAgCM,WAAa,EAAA,CAAA,aAAA,CAAA,CAC9F,CAACH,CAAAA,CAAkBI,qBAAqB,EAAG,oBAC3C,CAACJ,CAAAA,CAAkBK,sBAAsB,EAAG,OAC5C,CAAA,CAACL,EAAkBM,wBAAwB,EAAGC,CAC9C,CAAA,CAACP,CAAkBQ,CAAAA,wBAAwB,EAAG,IAAA,CAAKC,kBAAmBjE,CAAAA,CAAO,CAC7E,CAAA,CAACwD,CAAkBU,CAAAA,uBAAuB,EAAGZ,CAC7C,CAAA,CAACE,CAAkBW,CAAAA,qBAAqB,EAAGJ,CAAAA,CAAAA,CAG/C,KAAKd,eAAgBmB,CAAAA,KAAAA,CAAMZ,CAAkBa,CAAAA,cAAAA,CAAgBd,CAAY,EAC7E,CAEAe,gBAAiBC,CAAAA,CAAAA,CAAiBxF,CAAa,CAAA,CA/BnD,IAAAsE,CAAAA,CAgCQ,IAAME,CAAAA,CAAe,CACjB,CAACC,CAAkBC,CAAAA,wBAAwB,EAAG,CAAA,EAAA,CAAGJ,EAAA,IAAKH,CAAAA,eAAAA,CAAgBQ,OAAO,EAAA,GAA5B,IAAAL,CAAAA,KAAAA,CAAAA,CAAAA,CAAAA,CAAgCM,aAAa,CAC9F,aAAA,CAAA,CAAA,CAACH,CAAkBI,CAAAA,qBAAqB,EAAG,mBAAA,CAC3C,CAACJ,CAAkBK,CAAAA,sBAAsB,EAAG,OAAA,CAC5C,CAACL,CAAAA,CAAkBM,wBAAwB,EAAG,OAAA,CAC9C,CAACN,CAAAA,CAAkBQ,wBAAwB,EAAG,KAAKC,kBAAmBM,CAAAA,CAAAA,CAAI1F,EAAE,CAAA,CAC5E,CAAC2E,CAAAA,CAAkBU,uBAAuB,EAAGK,CAAAA,CAAI3C,KACjD,CAAA,CAAC4B,CAAkBgB,CAAAA,0BAA0B,EAAGzF,CAAM0F,CAAAA,QAAAA,EACtD,CAAA,CAACjB,CAAkBkB,CAAAA,QAAQ,EAAGH,CAAAA,CAAI1F,EAAG4F,CAAAA,QAAAA,EAGzC,CAAA,CAAA,IAAA,CAAKxB,eAAgBmB,CAAAA,KAAAA,CAAMZ,EAAkBa,cAAgBd,CAAAA,CAAY,EAC7E,CAEAoB,eAAgBC,CAAAA,CAAAA,CAAkB7F,EAAa,CA9CnD,IAAAsE,CA+CQ,CAAA,IAAA,CAAKJ,eAAgBmB,CAAAA,KAAAA,CAAMZ,EAAkBa,cAAgB,CAAA,CACzD,CAACb,CAAAA,CAAkBC,wBAAwB,EAAG,CAAGJ,EAAAA,CAAAA,CAAAA,CAAA,IAAKH,CAAAA,eAAAA,CAAgBQ,OAAO,EAAA,GAA5B,IAAAL,CAAAA,KAAAA,CAAAA,CAAAA,CAAAA,CAAgCM,aAAa,CAC9F,aAAA,CAAA,CAAA,CAACH,CAAkBI,CAAAA,qBAAqB,EAAG,cAAA,CAC3C,CAACJ,CAAkBK,CAAAA,sBAAsB,EAAG,OAAA,CAC5C,CAACL,CAAAA,CAAkBM,wBAAwB,EAAGC,CAAAA,CAC9C,CAACP,CAAAA,CAAkBgB,0BAA0B,EAAGzF,CAAM0F,CAAAA,QAAAA,EACtD,CAAA,CAACjB,CAAkBQ,CAAAA,wBAAwB,EAAG,IAAA,CAAKC,mBAAmBW,CAAMvF,CAAAA,KAAAA,CAAMR,EAAE,CAAA,CACpF,CAAC2E,CAAAA,CAAkBU,uBAAuB,EAAG,aAAA,CAC7C,CAACV,CAAAA,CAAkBqB,cAAc,EAAGD,EAAM/F,EAC1C,CAAA,CAAC2E,CAAkBkB,CAAAA,QAAQ,EAAGE,CAAAA,CAAMvF,KAAMR,CAAAA,EAAAA,CAAG4F,QAAQ,EAAA,CACxD,EACL,CAEQR,kBAAmBjE,CAAAA,CAAAA,CAA2B,CA5D1D,IAAAqD,CAAAA,CA6DQ,OAAO,CAAC,IAAKH,CAAAA,eAAAA,CAAgBQ,SAAWL,CAAAA,CAAAA,CAAAA,CAAA,IAAKH,CAAAA,eAAAA,CAAgB4B,SAAS,EAAA,GAA9B,YAAAzB,CAAkC0B,CAAAA,YAAAA,CAAc,OAAS/E,CAAAA,CAAO,CACnGgF,CAAAA,MAAAA,CAAQC,CAAQA,EAAAA,CAAG,CACnBC,CAAAA,IAAAA,CAAK,GAAG,CAAA,CACRvB,WAAW,EACpB,2CAxDSX,GAAuBP,EAAAA,EAAAA,CAAA0C,CAAA,CAAA,CAAA1C,EAAA2C,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAAC,GAAA,CAAA,UAAA,CAAAC,CAAA,CAAA,CAAA,KAAA,CAAvBtC,GAAuBH,CAAAA,OAAAA,CAAvBG,GAAuBF,CAAAA,SAAA,CAAA,CAA9B,CAAA,IAAOE,CAAPuC,CAAAA,GAAAA,CAAAA,OAAOvC,CAAuB,CAAA,GCLpBwC,CAAAA,IAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA,EAAAA,CAAAA,SAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,EAAAA,EAAAA,CAAAA,EAAAA,CAAA,CAAA,CAAA,QAAA,CAAA,CAAA,CAAA,CAA0FC,EAAA,CAAA,OAAA,CAAA,UAAA,CAAA,IAAAC,CAAAC,CAAAA,EAAAA,CAAAC,CAAA,CAAA,CAAAC,UAAAC,CAAAC,CAAAA,EAAAA,CAAA,CAAA,CAAA,CAAA,OAAAC,EAAAA,CAASF,EAAAG,aAAAP,CAAAA,CAAA,CAAmB,CAAA,CAAA,CAAA,CAClHQ,EAAA,CAAA,CAAA,CAAA,SAAA,CAAA,CAAA,CACAV,CAAAA,EAAAA,CAAA,CAAA,CAAA,MAAA,EAAMW,EAAA,CAAA,CAAA,CAAgBC,CAAAA,EAAAA,EAAO,GAAA,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,CAAA,CAAA,CAAA,SAAA,CAFgCC,GAAA,UAAAX,CAAAA,CAAAA,CAAAY,MAAA,CAAA,CAAAC,EAAA,CAAA,mBAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAC7BC,EAAA,EAAA,CAAAH,GAAA,MAAAX,CAAAA,CAAAA,CAAA/D,IAAA,CAAA,CAC1B6E,EAAA,CAAA,CAAA,EAAAC,EAAAf,CAAAA,CAAAA,CAAA9D,KAAA,EAAA,CAAA,CAAA,SAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,GALtB4D,EAAA,CAAA,CAAA,CAAA,oBAAA,CAAA,CAAA,CAA4F,CAAA,CAAA,KAAA,CAAA,CAAA,CAAA,CAEpFkB,GAAA,CAAAC,CAAAA,EAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,QAAA,CAAA,CAAA,CAAAC,EAAA,CAMJR,CAAAA,EAAAA,EAAM,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,CAAAS,EAAA,EAAA,CARkCR,EAAA,CAAA,wBAAA,CAAAP,CAAAQ,CAAAA,MAAAA,EAAAR,CAAAQ,CAAAA,MAAAA,CAAAzH,EAAA,CAAA,CAEpC2H,EAAA,CAAA,CAAA,EAAAM,EAAAhB,CAAAA,CAAAA,CAAA5G,MAAA,EAAA,CAAA,CCcZ,IAAa6H,EAAAA,CAAAA,CAAqB,IAAA,CAA5B,IAAOA,CAAP,CAAA,MAAOA,CAAqB,CARlC7I,aAAA,CASa,IAAA,CAAAgB,MAAuB,CAAA,EACtB,CAAA,IAAA,CAAA8H,WAAc,CAAA,IAAIC,GAE5B,CAAA,IAAIX,MAAM,EAAA,CACN,OAAO,IAAA,CAAKpH,QAAU,IAAKA,CAAAA,MAAAA,CAAO8F,MAAQT,CAAAA,CAAAA,EAAQA,CAAI+B,CAAAA,MAAM,EAAEY,GAAG,EACrE,CAEAjB,aAAAA,CAAc5G,CAAiB,CAAA,CAC3B,KAAKH,MAAS,CAAA,IAAA,CAAKA,MAAOY,CAAAA,GAAAA,CAAKiB,CAAUoG,EAAAA,GAAAA,CAAAC,CAAA,CAAA,EAAA,CAClCrG,CADkC,CAAA,CAAA,CAErCuF,MAAQvF,CAAAA,CAAAA,CAAKlC,EAAOQ,GAAAA,CAAAA,CAAMR,IAC5B,CACF,CAAA,IAAMwI,CAAgB,CAAA,IAAA,CAAKnI,MAAOoI,CAAAA,IAAAA,CAAMC,GAAMA,CAAE1I,CAAAA,EAAAA,GAAOQ,CAAMR,CAAAA,EAAE,CAC/D,CAAA,IAAA,CAAKmI,YAAYQ,IAAKH,CAAAA,CAAa,EACvC,CAAA,CAAA,CAAA,CAAA,CAAA,SAAA,CAAA,SAAA,CAAA,CAAA,CAAA,OAAA,IAAA,CAAA,EAfSN,CAAqB,CAAA,CAAA,CAAA,CAAA,CAAA,SAAA,CAAAjI,EAAA,CAAA,CAAA,IAAA,CAArBiI,CAAqBU,CAAAA,SAAAA,CAAA,CAAA,CAAA,mBAAA,CAAA,CAAAC,CAAAA,MAAAA,CAAA,CAAAxI,MAAA,CAAA,QAAA,CAAAyI,CAAAA,OAAAA,CAAA,CAAAX,WAAAA,CAAA,aAAA,CAAAY,CAAAA,UAAAA,CAAA,CAAAC,CAAAA,CAAAA,QAAAA,CAAA,CAAAC,EAAA,EAAAC,KAAA,CAAA,CAAA,CAAAC,IAAA,CAAA,CAAA,CAAAC,MAAA,CAAA,CAAA,CAAA,CAAA,CAAA,kBAAA,CAAA,CAAA,CAAA,wBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,kBAAA,CAAA,CAAA,CAAA,SAAA,CAAA,EAAA,CAAA,MAAA,CAAA,QAAA,CAAA,EAAA,UAAA,CAAA,CAAA,CAAA,SAAA,CAAA,EAAA,CAAA,MAAA,CAAA,SAAA,CAAA,CAAA,OAAA,CAAA,UAAA,CAAA,CAAA,CAAA,MAAA,CAAA,OAAA,CAAA,MAAA,CAAA,IAAA,CAAA,CAAA,CAAA,MAAA,CAAA,CAAAC,CAAAA,QAAAA,CAAA,SAAAC,CAAAC,CAAAA,CAAAA,CAAA,CAAAD,CAAAA,CAAA,CDjBlCE,EAAAA,EAAAA,CAAA,EAAAC,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,mBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAAC,GAAAH,CAAAlJ,CAAAA,MAAAA,CAAAuB,MAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,YAAA,CAAA,CCcc+H,CAAQC,CAAAA,EAAAA,CAAwBC,CAAqBC,CAAAA,CAA6B,CAAAC,CAAAA,MAAAA,CAAA,CAAA,CAAA;AAAA,qFAAA,CAAA,CAAA,CAAAC,eAAA,CAAA,CAAA,CAAA,CAAA,CAG1F,IAAO9B,CAAP+B,CAAAA,CAAAA,CAAAA,OAAO/B,CAAqB,CAAA,0BCP1Bb,EAAA,CAAA,CAAA,CAAA,SAAA,CAAA,CAAA,6BAEAV,EAAA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAA,EAA6B,CAAA,CAAA,KAAA,CAAA,CAAA,CAAA,CAErBW,GAAA,CAAA,CAAA,CACJC,EAAA,EAAA,GAEJZ,EAAA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAA,EACIU,EAAA,CAAA,CAAA,CAAA,iBAAA,CAAA,CAAA,CACJE,CAAAA,EAAAA,CAAAA,CAAAA,CAAAA,wBAAAA,CAAAA,CAAAA,EAAAA,EALQI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,EAAAA,EAAAA,CAAAA,SAAAA,CAAAA,CAAAA,CAAAA,EAAAA,EAAAA,CAAAA,EAAAA,CAAA,CAAA,CAAAuC,CAAAA,EAAAA,CAAA,GAAAC,CAAAA,CAAAA,CAAAC,cAAAC,CAAA,CAAA,CAAA,GAAA,CAAA,CAI0C1C,GAAA,CAAA,CAAA,CAAAH,EAAA,CAAA,OAAA,CAAA8C,GAAA,CAAA,CAAA,CAAA,CAAAD,CAAAE,CAAAA,WAAA,CAAA,EAlB1D5D,CAAAA,CAAAA,SAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA,CAAAA,GAAAA,EAAAA,CAAA,CAAA,CAAA,eAAA,CAAA,CAAA,CASI6C,CAAAA,EAAAA,CAAA,CAAAgB,CAAAA,EAAAA,CAAA,EAAA,CAAA,CAAA,SAAA,CAAA,CAAA,CAAA,CAA8C,CAAAC,CAAAA,EAAAA,CAAA,CAAA,CAAA,CAAA,EAYlDlD,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,CAAA,CAAA,CAAA,SAAA,CAAA,CAAA,CAAAS,EAAA,EAAA,CAjBI0C,EAAA,CAAA,SAAA,CAAA,CAAAL,CAAAM,CAAAA,MAAA,CADAnD,CAAAA,EAAAA,CAAA,SAAA6C,CAAA,CAAA,CAAiB,OAAAF,CAAAA,CAAAA,CAAApE,KAAA,CAEF,CAAA,aAAA,CAAAoE,CAAAS,CAAAA,WAAA,EACY,gBAAAT,CAAAA,CAAAA,CAAAU,QAAA,EAAA,IAAA,CAAA,KAAAV,CAAAU,CAAAA,QAAAA,CAAAC,MAAA,CAAA,CACQ,mBAAAX,CAAAU,CAAAA,QAAAA,EAAA,IAAA,CAAA,IAAA,CAAAV,EAAAU,QAAAE,CAAAA,QAAA,CAEnCpD,CAAAA,EAAAA,GAAA+B,EAAAS,CAAAA,CAAAA,CAAAS,WAAAD,CAAAA,MAAAA,EAAAN,EAAAM,MAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CCEJ,IAAaK,EAA4B,CAAA,CAAA,IAAA,CAAnC,IAAOA,EAAP,MAAOA,CAA4B,CAMrC3L,WAAAA,CAAoBG,EAAkB,CAAlB,IAAA,CAAAA,QAAAA,CAAAA,CAAAA,CAFX,KAAAyL,UAAa,CAAA,CAAA,CAAA,CAIA,IAAAC,CAAAA,SAAAA,CAAY,cAclC,IAAAd,CAAAA,aAAAA,CAAiBe,CACT,EAAA,IAAA,CAAKP,WAAYQ,CAAAA,iBAAAA,CAIV,CAHO,EAAA,IAAA,CAAKR,YAAYS,OAAQC,CAAAA,OAAAA,CAAQH,CAAM,CAAA,GAAM,EACpC,IAAK3L,CAAAA,QAAAA,CAAS+L,SAAUC,CAAAA,kBAAAA,CAAqB,KAAKhM,QAAS+L,CAAAA,SAAAA,CAAUE,mBAE5E,CAAA,CAAA,EAAI,KAAKb,WAAYQ,CAAAA,iBAAiB,CAC/C,CAAA,CAAA,IAAA,CAAKH,WACLE,CAAOO,CAAAA,aAAAA,EAAiB,EACxBP,CAAAA,CAAAA,CAAOQ,gBACPR,CAAOQ,CAAAA,eAAAA,CAEPR,CAAOO,CAAAA,aAAAA,EAAiBP,EAAO7I,KA3BL,CAKzCsJ,OAAQ7F,CAAAA,CAAAA,CAAY,CAChBA,CAAAA,CAAM8F,cAAc,EAAA,CACJ9F,EAAM+F,MAAQZ,CAAAA,SAAAA,CAAUI,OAAQ,CAAA,wBAAwB,EAAI,CACxEvF,CAAAA,EAAAA,CAAAA,CAAMgG,eAAe,GAE7B,CAEAC,WAAY9L,CAAAA,CAAAA,CAAeiL,CAAmB,CAAA,CAC1C,OAAOA,CAAOnL,CAAAA,EAClB,CApBSgL,CAAAA,CAAAA,CAAAA,CAAAA,SAAAA,CAAAA,SAAAA,CAAAA,CAAAA,CAAAA,OAAAA,IAAAA,CAAAA,EAAAA,CAAAA,EAA4BiB,GAAAlI,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,SAAA,CAAA9D,EAAA,CAAA,CAAA,IAAA,CAA5B+K,EAA4BpC,SAAA,CAAA,CAAA,CAAA,4BAAA,CAAA,CAAAsD,CAAAA,QAAAA,CAAA,CAAAC,CAAAA,YAAAA,CAAA,SAAA7C,CAAAA,CAAAC,CAAA,CAAA,CAAAD,EAAA,CAA5B1C,EAAAA,EAAAA,CAAA,OAAA,CAAA,SAAAwF,EAAA,CAAA,OAAA7C,CAAAqC,CAAAA,OAAAA,CAAAQ,CAAA,CAAe,CAAA,CAAfC,CAAAA,CAAAA,CAAAA,CAAAA,EAAAA,EAAAA,CAAA9C,EAAA2B,SAAA,EAAA,CAAA,CAAA,MAAA,CAAA,CAAA,KAAA,CAAA,OAAA,CAAA,WAAA,CAAA,aAAA,CAAA,QAAA,CAAA,UAAA,CAAA,UAAA,CAAA,YAAA,CAAA,CAAA,KAAA,CAAA,CAAA,CAAA,IAAA,CAAA,CAAA,CAAA,MAAA,CAAA,CAAA,CAAA,OAAA,CAAA,wBAAA,CAAA,CAAA,CAAA,QAAA,CAAA,SAAA,CAAA,OAAA,CAAA,aAAA,CAAA,gBAAA,CAAA,kBAAA,CAAA,CAAA,CAAA,OAAA,CAAA,SAAA,CAAA,cAAA,CAAA,CAAA,CAAA,CAAA,CAAA,wBAAA,CAAA,CAAA,CAAA,QAAA,CAAA,OAAA,CAAA,aAAA,CAAA,gBAAA,CAAA,kBAAA,CAAA,CAAA,CAAA,MAAA,CAAA,gBAAA,CAAA,MAAA,CAAA,IAAA,CAAA,CAAA,CAAA,CAAA,CAAA,iBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,kBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,aAAA,CAAA,cAAA,CAAA,CAAA,CAAA,aAAA,CAAA,GAAA,CAAA,UAAA,CAAA,GAAA,CAAA,CAAA,CAAA,OAAA,CAAA,CAAA,CAAA,QAAA,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EDXb1B,EAAA,CAAA,CAAA,CAAA8C,GAAA,CAAA,CAAA,CAAA,CAAA,eAAA,CAAA,CAAA,OAEuB9E,EAAA,CAAA,SAAA,CAAA+B,CAAAqB,CAAAA,WAAAA,EAAA,KAAA,IAAArB,CAAAA,CAAAA,CAAAqB,WAAAS,CAAAA,OAAA,EAAyB,cAAA9B,CAAAA,CAAAA,CAAAyC,WAAA,EAAA,CAAA,CAAA,YAAA,CAAA,CAAAO,EAAA,CAAAC,GAAA,CAAAC,IAAA,CAAAC,CAAA,CAAAC,CAAA,CAAA,CAAA,aAAA,CAAA,CAAA,CAAA,eAAA,CAAA,CAAA,CAAA,CAAA,CCS1C,IAAO3B,CAAP4B,CAAAA,CAAAA,CAAAA,OAAO5B,CAA4B,CAAA,qKCPzB3D,EAAA,CAAA,CAAA,CAAA,qBAAA,CAAA,CAAA,mBAA6EwF,EAAA,CAAA,cAAA,CAAA,cAAAC,CAAAA,CAAAA,CAAA/G,MAAAvF,KAAAR,CAAAA,EAAAA,CAAA,EAAA,CAAA,CAAxDwH,GAAA,SAAAsF,CAAAA,CAAAA,CAAA/G,KAAAvF,CAAAA,KAAAA,CAAAR,EAAA,CAA0B,CAAA,UAAA,CAAA8M,CAAA/G,CAAAA,KAAAA,CAAAgH,OAAA/M,EAAA,EAAA,CAAA,CAAA,SAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,EAK/CqH,EAAA,CAAA,CAAA,CAAA,SAAA,CAAA,CAAA,CAAgDwF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAAA,CAAA,OAAA,SAAAC,CAAAA,CAAAA,CAAA/G,KAAAvF,CAAAA,KAAAA,CAAAR,GAAA,EAAA,EAAA,CAAA,CAAA,SAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,GAPxD2G,EAAA,CAAA,CAAA,CAAA,MAAA,CAAA,CAAA,CACI6C,EAAA,CAAA,CAAA,CAAAwD,GAAA,CAAA,CAAA,CAAA,CAAA,qBAAA,CAAA,CAAA,EAA8D,CAAAC,CAAAA,EAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,UAAA,CAAA,CAAA,CAS9DtG,EAAA,CAAA,CAAA,CAAA,MAAA,CAAA,CAAA,CACIU,EAAA,CAAA,CAAA,CAAA,eAAA,CAAA,CAAA,CACJE,CAAAA,EAAAA,GACAZ,EAAA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAA,EAKIU,EAAA,CAAA,CAAA,CAAA,gBAAA,CAAA,CAAA,EAOiB,CAAA,CAAA,SAAA,CAAA,CAAA,CAAA,CAErBE,IAAM,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,CAAAS,EAAA,EAAA,CA1BNL,EAAA,EAAA,CAAA+B,GAAAoD,CAAAI,CAAAA,mBAAAA,EAAA,CAAAJ,CAAAA,CAAAK,+BAAA,CAAA,CAAA,CAAA,CAAA,CAKAxF,CAAAA,EAAAA,GAAA+B,EAAA,CAAA,CAAAoD,CAAAI,CAAAA,mBAAAA,EAAA,CAAAJ,CAAAA,CAAAK,8BAAA,CAAA,CAAA,CAAA,EAAA,CAKmBxF,CAAAA,EAAAA,CAAA,CAAA,CAAA,CAAAH,GAAA,OAAAsF,CAAAA,CAAAA,CAAA/G,KAAA,CAAA,CAAe,uBAAA+G,CAAAM,CAAAA,oBAAA,CAG9BzF,CAAAA,EAAAA,GAAAH,EAAA,CAAA,SAAA,CAAA6F,EAAA,CAAA,EAAA,CAAAC,GAAAR,CAAAS,CAAAA,WAAAA,GAAA,CAAAT,CAAAA,CAAAA,CAAAS,YAAA,CAAA,CAAA,CAMI5F,CAAAA,EAAAA,GAAAH,EAAA,CAAA,MAAA,CAAAsF,CAAA/G,CAAAA,KAAAA,CAAAyH,IAAA,CAAmB,CAAA,OAAA,CAAAV,CAAA/G,CAAAA,KAAAA,CAAAvE,SAAA,CACM,CAAA,YAAA,CAAAsL,CAAA/G,CAAAA,KAAAA,CAAA0H,UAAA,CACM,CAAA,6BAAA,CAAAX,CAAAY,CAAAA,2BAAA,EAC4B,gBAAA,CAAA,CAAA,CAAA,EAU3DrG,CAAAA,CAAAA,SAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA,CAAAA,EAAAA,EAAAA,CAAA,EAAA,qBAAA,CAAA,EAAA,CAAqBG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAAA,CAAA,UAAAsF,CAAA/G,CAAAA,KAAAA,CAAAvF,KAAAR,CAAAA,EAAA,EAA0B,UAAA8M,CAAAA,CAAAA,CAAA/G,KAAAgH,CAAAA,MAAAA,CAAA/M,EAAA,EAG/CqH,CAAAA,CAAAA,SAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA,CAAAA,EAAAA,EAAAA,CAAA,CAAA,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,CAAAW,EAAA,CAAA,CAAA,CAAA,CAAgD6E,EAAA,CAAA,MAAA,CAAA,UAAAC,CAAA/G,CAAAA,KAAAA,CAAAvF,KAAAR,CAAAA,EAAAA,CAAA,EAAA,EAU5C2G,CAAAA,CAAAA,SAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA,CAAAA,GAAAA,EAAAA,CAAA,CAAA,CAAA,KAAA,CAAA,EAAA,CACIU,CAAAA,EAAAA,CAAA,CAAA,CAAA,iBAAA,CAAA,EAAA,CACJE,CAAAA,EAAAA,EAD2DI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAAA,GAAAH,EAAA,CAAA,OAAA,CAAAsF,CAAAa,CAAAA,SAAA,6BAI3DtG,EAAA,CAAA,CAAA,CAAA,4BAAA,CAAA,EAAA,mBAA4BG,EAAA,CAAA,aAAA,CAAAsF,CAAAlC,CAAAA,WAAA,CAA2B,CAAA,OAAA,CAAAkC,CAAA/G,CAAAA,KAAA,EAAgB,UAAA+G,CAAAA,CAAAA,CAAAjC,QAAA,EAAA,CAAA,CAAA,SAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,GApBnFlE,GAAA,CAAA,CAAA,KAAA,CAAA,CAAA,CAAA,CACI6C,GAAA,CAAAoE,CAAAA,EAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,sBAAA,EAAA,CAAA,CAA8D,CAAAC,CAAAA,EAAAA,CAAA,EAAA,CAAA,CAAA,SAAA,CAAA,CAAA,CAAA,CAO9DlH,GAAA,CAAA,CAAA,KAAA,CAAA,CAAA,CAAA,CACIU,GAAA,CAAA,CAAA,eAAA,CAAA,CAAA,CAAA,CACJE,EAAA,EAAA,EAEJZ,CAAAA,EAAAA,CAAA,EAAA,KAAA,CAAA,EAAA,CAAkE,CAAA,CAAA,CAAA,MAAA,EAAA,CAAA,CAE1D6C,EAAA,CAAA,CAAA,CAAAsE,GAAA,CAAA,CAAA,CAAA,CAAA,KAAA,CAAA,EAAA,EAAa,CAAAC,CAAAA,EAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,6BAAA,EAAA,CAAA,CAQjBxG,EAAA,EAAA,CACAZ,GAAA,CAAA,CAAA,KAAA,CAAA,EAAA,CAAA,CACIU,GAAA,EAAA,CAAA,gBAAA,CAAA,CAAA,CAAA,CAOiB,GAAA,SAAA,CAAA,EAAA,CAErBE,CAAAA,EAAAA,IAhCAI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAAA,EAAA+B,CAAAA,EAAAA,CAAAoD,EAAAI,mBAAA,EAAA,CAAAJ,CAAAK,CAAAA,8BAAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAGAxF,EAAA,EAAA,CAAA+B,GAAA,CAAAoD,CAAAA,CAAAI,mBAAA,EAAA,CAAAJ,EAAAK,8BAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAKmBxF,GAAA,CAAA,CAAA,CAAAH,EAAA,CAAA,OAAA,CAAAsF,EAAA/G,KAAA,CAAA,CAAe,sBAAA+G,CAAAA,CAAAA,CAAAM,oBAAA,CAAA,CAGJzF,EAAA,EAAA,CAAAH,GAAA,SAAAsF,CAAAA,CAAAA,CAAAkB,mBAAA,CAAA,CAE1BrG,GAAA,CAAA,CAAA,CAAA+B,EAAAoD,CAAAA,CAAAA,CAAAmB,MAAA,CAAA,CAAA,CAAA,CAAA,CAKAtG,CAAAA,EAAAA,GAAA+B,EAAAoD,CAAAA,CAAAA,CAAAmB,KAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAOItG,CAAAA,EAAAA,CAAA,CAAA,CAAA,CAAAH,GAAA,MAAAsF,CAAAA,CAAAA,CAAA/G,KAAAyH,CAAAA,IAAA,EAAmB,OAAAV,CAAAA,CAAAA,CAAA/G,KAAAvE,CAAAA,SAAA,CACM,CAAA,YAAA,CAAAsL,CAAA/G,CAAAA,KAAAA,CAAA0H,UAAA,CACM,CAAA,6BAAA,CAAAX,CAAAY,CAAAA,2BAAA,EAC4B,gBAAA,CAAA,CAAA,CAAA,EAS/DrG,CAAAA,CAAAA,SAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA,CAAAA,EAAAA,EAAAA,CAAA,EAAA,qBAAA,CAAA,EAAA,CAAqBG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAAA,CAAA,UAAAsF,CAAA/G,CAAAA,KAAAA,CAAAvF,KAAAR,CAAAA,EAAA,EAA0B,UAAA8M,CAAAA,CAAAA,CAAA/G,KAAAgH,CAAAA,MAAAA,CAAA/M,EAAA,CAA6B,CAAA,SAAA,CAAAkO,EAAA,CAAA,CAAA,CAAAC,GAAArB,CAAAsB,CAAAA,QAAA,CAAA,EAAA,CAAA,CAAA,SAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,EAI5E/G,EAAA,CAAA,CAAA,CAAA,SAAA,CAAA,EAAA,mBAGIwF,EAAA,CAAA,MAAA,CAAA,SAAAC,CAAAA,CAAAA,CAAA/G,MAAAvF,KAAAR,CAAAA,EAAAA,CAAA,EAAA,CAAA,CACAwH,GAAA,SAAA0G,CAAAA,EAAAA,CAAA,CAAAG,CAAAA,EAAAA,CAAAvB,EAAAsB,QAAA,CAAA,EAmBAzH,CAAAA,CAAAA,SAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA,CAAAA,GAAAA,EAAAA,CAAA,EAAA,KAAA,CAAA,EAAA,CACIU,CAAAA,EAAAA,CAAA,EAAA,iBAAA,CAAA,EAAA,CAA6F,CAAA,CAAA,CAAA,UAAA,EAAA,CAAA,CAEjGE,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,CAAAS,EAAA,CAAA,CAAA,CAAA,CAF2DL,IAAAH,CAAAA,EAAAA,CAAA,OAAAsF,CAAAA,CAAAA,CAAAa,SAAA,EAK3DhH,CAAAA,CAAAA,SAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA,CAAAA,GAAAA,EAAAA,CAAA,CAAA,CAAA,KAAA,CAAA,EAAA,CACIU,CAAAA,EAAAA,CAAA,CAAA,CAAA,4BAAA,CAAA,EAAA,CAEJE,CAAAA,EAAAA,EAFgCI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAAA,GAAAH,EAAA,CAAA,aAAA,CAAAsF,CAAAlC,CAAAA,WAAA,EAA2B,OAAAkC,CAAAA,CAAAA,CAAA/G,KAAA,CAAA,CAAgB,WAAA+G,CAAAjC,CAAAA,QAAA,EApCvFlE,CAAAA,CAAAA,SAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA,CAAAA,GAAAA,EAAAA,CAAA,EAAA,KAAA,CAAA,CAAA,CACI6C,CAAAA,EAAAA,CAAA,CAAA8E,CAAAA,EAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,sBAAA,EAAA,CAAA,CAA8D,CAAAC,CAAAA,EAAAA,CAAA,EAAA,CAAA,CAAA,SAAA,CAAA,EAAA,CAAA,CAY9D5H,GAAA,CAAA,CAAA,KAAA,CAAA,EAAA,CAAA,CACIU,GAAA,CAAA,CAAA,eAAA,CAAA,CAAA,CAAA,CAA6F,EAAA,gBAAA,CAAA,EAAA,CAUjGE,CAAAA,EAAAA,IAEJZ,CAAAA,EAAAA,CAAA,CAAA,CAAA,KAAA,CAAA,EAAA,CAAkE,CAAA,CAAA,CAAA,KAAA,CAAA,EAAA,CAE1D6C,CAAAA,EAAAA,CAAA,CAAAgF,CAAAA,EAAAA,CAAA,EAAA,CAAA,CAAA,KAAA,CAAA,EAAA,CAAA,CAAa,EAAAC,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAA,CAAA,EAAA,CAYjBlH,CAAAA,EAAAA,EAAM,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,CAAAS,EAAA,CAAA,CAAA,CAAA,CAvCNL,IAAA+B,CAAAA,EAAAA,CAAAoD,CAAAI,CAAAA,mBAAAA,EAAA,CAAAJ,CAAAK,CAAAA,8BAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAIAxF,EAAA,EAAA,CAAA+B,EAAA,CAAA,CAAAoD,EAAAI,mBAAA,EAAA,CAAAJ,CAAAK,CAAAA,8BAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CASmBxF,CAAAA,EAAAA,CAAA,CAAA,CAAAH,CAAAA,EAAAA,CAAA,OAAAsF,CAAAA,CAAAA,CAAA/G,KAAA,CAAe,CAAA,sBAAA,CAAA+G,CAAAM,CAAAA,oBAAA,EAQ1BzF,EAAA,EAAA,CAAA+C,EAAA,CAAA,sBAAA,CAAAoC,EAAAM,oBAAA,EAAA,CAAAN,CAAAK,CAAAA,8BAAA,EALA3F,EAAA,CAAA,MAAA,CAAAsF,CAAA/G,CAAAA,KAAAA,CAAAyH,IAAA,CAAmB,CAAA,OAAA,CAAAV,CAAA/G,CAAAA,KAAAA,CAAAvE,SAAA,CACM,CAAA,YAAA,CAAAsL,CAAA/G,CAAAA,KAAAA,CAAA0H,UAAA,CACM,CAAA,6BAAA,CAAAX,CAAAY,CAAAA,2BAAA,EAC4B,gBAAA,CAAA,CAAA,CAAA,CAMrC/F,CAAAA,EAAAA,GAAAH,EAAA,CAAA,SAAA,CAAAsF,CAAAkB,CAAAA,mBAAA,EAE1BrG,EAAA,CAAA,CAAA,CAAA+B,CAAAA,EAAAA,CAAAoD,EAAAmB,KAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAMAtG,IAAA+B,CAAAA,EAAAA,CAAAoD,CAAAmB,CAAAA,KAAAA,CAAA,GAAA,CAAA,EAAA,CAAA,CAAA,SAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,EAvEZzE,EAAA,CAAA,CAAA,CAAAkF,GAAA,EAAA,CAAA,EAAA,CAAoB,CAAA,CAAA,CAAAC,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,CAAA3G,EAAA,EAAA,CAApB0B,GAAAoD,CAAA8B,CAAAA,YAAAA,CAAA,CAAA,CAAA,CAAA,ICdR,IAAaC,EAAAA,CAAAA,CAAsB,IAAA,CAA7B,IAAOA,CAAP,CAAA,MAAOA,CAAsB,CAwB/B,IACIC,KAAK,EAAA,CACL,OAAO,IAAA,CAAKC,cAChB,CAEA1P,WACWG,CAAAA,CAAAA,CACCwP,EACA1P,CACA2P,CAAAA,CAAAA,CACAC,CAAsC,CAAA,CAJvC,KAAA1P,QAAAA,CAAAA,CAAAA,CACC,IAAAwP,CAAAA,SAAAA,CAAAA,CACA,CAAA,IAAA,CAAA1P,cAAAA,CAAAA,CAAAA,CACA,KAAA2P,sBAAAA,CAAAA,CAAAA,CACA,IAAAC,CAAAA,kBAAAA,CAAAA,EAhCH,IAAAC,CAAAA,UAAAA,CAA8B,CACnCxB,SAAAA,CAAW,KAAKnO,QAAS+L,CAAAA,SAAAA,CAAU6D,mBAiCnC,CAAA,CAAA,IAAA,CAAKhB,SAAW,IAAK9O,CAAAA,cAAAA,CAAe8O,QACpC,CAAA,IAAA,CAAKiB,gCAAkC,IAAK/P,CAAAA,cAAAA,CAAegQ,8BAC3D,CAAA,IAAA,CAAK5B,4BAA8B,IAAKpO,CAAAA,cAAAA,CAAeiQ,2BACvD,CAAA,IAAA,CAAKnC,qBAAuB,IAAK9N,CAAAA,cAAAA,CAAekQ,2BACpD,CAEAC,QAAQ,EAAA,CACJ,IAAKC,CAAAA,OAAAA,GACL,IAAKxC,CAAAA,mBAAAA,CAAsB,IAAKyC,CAAAA,sBAAAA,GAChC,IAAMxE,CAAAA,CAAS,IAAKyE,CAAAA,cAAAA,CAAe,KAAK7J,KAAK,CAAA,CAC7C,IAAK6E,CAAAA,WAAAA,CAAcO,GAAoC,EAAA,CACvD,IAAK0E,CAAAA,gBAAAA,CAAmB,KAAKb,SAAUa,CAAAA,gBAAAA,GAC3C,CAEAC,aAAW,CACP,IAAM3E,CAAS,CAAA,IAAA,CAAKyE,eAAe,IAAK7J,CAAAA,KAAK,CAC7C,CAAA,IAAA,CAAK6E,YAAcO,CAAoC,EAAA,EACvD,CAAA,IAAA,CAAKgC,+BACD,IAAKC,CAAAA,oBAAAA,EACL,IAAKrH,CAAAA,KAAAA,CAAMzC,aAAayM,IAAMC,CAAAA,CAAAA,EAAMA,CAAEC,CAAAA,KAAK,GAC3C,IAAKlK,CAAAA,KAAAA,CAAMzC,YAAa1B,CAAAA,MAAAA,GAAW,GACnC,CAAC,IAAA,CAAKmE,KAAMmK,CAAAA,gBAAAA,GACpB,CAEQR,OAAAA,EAAO,CACX,IAAA,CAAKS,SAAW,IAAKnB,CAAAA,SAAAA,CAAUoB,WAAY,CAAA,IAAA,CAAKrK,MAAO,IAAKoJ,CAAAA,UAAAA,CAAWkB,WAAW,CAAA,CAClF,IAAK1C,CAAAA,SAAAA,CAAY,IAAKwB,CAAAA,UAAAA,CAAWxB,UACrC,CAEQgC,sBAAAA,EAAsB,CAG1B,OAFsB,KAAKN,+BAAgCiB,CAAAA,QAAAA,CAAS,IAAKvK,CAAAA,KAAAA,CAAMvF,MAAMR,EAAE,CAAA,EAE/D,IAAKiP,CAAAA,sBAAAA,CAAuBsB,QAAQ,IAAKxK,CAAAA,KAAAA,CAAMvF,KAAMR,CAAAA,EAAAA,CAAI,KAAK+F,KAAMgH,CAAAA,MAAAA,CAAO/M,EAAE,CACzG,CAEQ+O,YAAY,EAAA,CAChB,OAAI,IAAA,CAAKH,cAAgB,IAAKR,CAAAA,QAAAA,CACnB,2CAEP,CAAA,IAAA,CAAKQ,YAAgB,EAAA,IAAA,CAAKrB,WAAgB,GAAA,CAAA,EAAK,CAAC,IAAKa,CAAAA,QAAAA,CAC9C,6CAGJ,CAAA,sCACX,CAEQwB,cAAeY,CAAAA,CAAAA,CAAoB,CACvC,IAAMrF,EAAS,IAAK+D,CAAAA,kBAAAA,CAAmBuB,GAAID,CAAAA,CAAAA,CAAUE,aAAc,IAAKC,CAAAA,kBAAAA,CAAmB,IAAK5K,CAAAA,KAAAA,CAAMvF,MAAMR,EAAE,CAAC,CAC/G,CAAA,OAAKmL,IACD,IAAK8C,CAAAA,KAAAA,CAAQ,CAGV9C,CAAAA,CAAAA,CAAAA,CACX,yCAzFS0D,CAAsB5C,EAAAA,EAAAA,CAAAlI,EAAA,CAAA,CAAAkI,EAAA2E,CAAAA,EAAA,CAAA3E,CAAAA,EAAAA,CAAApI,EAAA,CAAAoI,CAAAA,EAAAA,CAAA4E,CAAA,CAAA,CAAA5E,GAAA6E,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,SAAA,CAAA7Q,EAAA,CAAA,CAAA,IAAA,CAAtB4O,EAAsBjG,SAAA,CAAA,CAAA,CAAA,qBAAA,CAAA,CAAAsD,CAAAA,QAAAA,CAAA,CAAAC,CAAAA,YAAAA,CAAA,SAAA7C,CAAAC,CAAAA,CAAAA,CAAA,CAAAD,CAAAA,CAAA,GAAtB+C,EAAA9C,CAAAA,CAAAA,CAAAuF,KAAA,EAAA,CAAA,CAAA,MAAA,CAAA,CAAA,KAAA,CAAA,OAAA,CAAA,UAAA,CAAA,YAAA,CAAA,WAAA,CAAA,aAAA,CAAA,YAAA,CAAA,cAAA,CAAA,kBAAA,CAAA,oBAAA,CAAA,QAAA,CAAA,UAAA,CAAA,mBAAA,CAAA,qBAAA,CAAA,CAAA,QAAA,CAAA,CAAAiC,EAAA,CAAA,CAAA,KAAA,CAAA,CAAA,CAAA,IAAA,CAAA,CAAA,CAAA,MAAA,CAAA,CAAA,CAAA,CAAA,CAAA,oBAAA,CAAA,CAAA,CAAA,MAAA,CAAA,cAAA,CAAA,CAAA,CAAA,CAAA,CAAA,mBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,SAAA,CAAA,UAAA,CAAA,cAAA,CAAA,CAAA,CAAA,MAAA,CAAA,IAAA,CAAA,CAAA,CAAA,sBAAA,CAAA,CAAA,CAAA,MAAA,CAAA,CAAA,CAAA,CAAA,CAAA,mBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,CAAA,sBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA,CAAA,kBAAA,CAAA,CAAA,CAAA,MAAA,CAAA,OAAA,CAAA,YAAA,CAAA,6BAAA,CAAA,gBAAA,CAAA,CAAA,CAAA,MAAA,CAAA,aAAA,CAAA,MAAA,CAAA,IAAA,CAAA,CAAA,CAAA,2BAAA,CAAA,CAAA,CAAA,CAAA,CAAA,mBAAA,CAAA,OAAA,CAAA,CAAA,CAAA,CAAA,CAAA,SAAA,CAAA,UAAA,CAAA,CAAA,CAAA,CAAA,CAAA,sBAAA,CAAA,CAAA,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA,CAAA,sBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,mBAAA,CAAA,OAAA,CAAA,CAAA,CAAA,CAAA,CAAA,aAAA,CAAA,OAAA,CAAA,UAAA,CAAA,CAAA,CAAA,CAAA,CAAA,6BAAA,CAAA,CAAA,CAAA,MAAA,CAAA,aAAA,CAAA,MAAA,CAAA,IAAA,CAAA,CAAA,CAAA,sBAAA,CAAA,CAAA,CAAA,aAAA,CAAA,GAAA,CAAA,UAAA,CAAA,YAAA,CAAA,CAAA,CAAA,OAAA,CAAA,CAAA,CAAA,CAAA,CAAA,SAAA,CAAA,UAAA,CAAA,SAAA,CAAA,CAAA,CAAA,MAAA,CAAA,IAAA,CAAA,CAAA,CAAA,sBAAA,CAAA,CAAA,CAAA,MAAA,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA,CAAA,oCAAA,CAAA,CAAA,CAAA,CAAA,CAAA,yBAAA,CAAA,CAAA,CAAA,MAAA,CAAA,OAAA,CAAA,YAAA,CAAA,6BAAA,CAAA,gBAAA,CAAA,CAAA,CAAA,MAAA,CAAA,aAAA,CAAA,MAAA,CAAA,IAAA,CAAA,CAAA,CAAA,QAAA,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GDlBbpK,GAAA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,CACI6C,GAAA,CAAAwH,CAAAA,EAAAA,CAAA,CAAA,CAAA,EAAA,CAAA,MAAA,CAAA,CAAA,CAAiB,CAAAC,CAAAA,EAAAA,CAAA,EAAA,CAAA,CAAA,CAgHrB1J,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAjH8BmD,GAAA,OAAAnB,CAAAA,CAAAA,CAAA6D,oBAAA,CAAA,CAAqC5F,GAAA,MAAA+B,CAAAA,CAAAA,CAAA4G,QAAAe,CAAAA,EAAA,EAAiB,cAAA3H,CAAAA,CAAAA,CAAAsG,gBAAA,CAAA,CAChFlI,IAAA+B,CAAAA,EAAAA,CAAAH,CAAA6E,CAAAA,QAAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,YAAA,CAAA,CAAA+C,EAAA,CAAAC,GAAA,CAAAC,GAAA,CAAAC,EAAA,CAAAC,GAAA,CAAAC,CAAA,CAAAhF,GAAA,CAAAE,CAAA,CAAA,EAAA,CAAA,CAAA,MAAA,CAAA,CAAA,CAAA;ACiBE,uEAAA,CAAA,CAAA,CAAA,eAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAOmC,EAAP4C,CAAO5C,CAAAA,OAAAA,CAAsB,CAAA,GAAA,CCRnC,IAAa6C,EAAyB,CAAA,CAAA,IAAA,CAAhC,IAAOA,EAAP,MAAOA,CAAyB,CAIlCrS,WAAmBG,CAAAA,CAAAA,CAAkB,CAAlB,IAAAA,CAAAA,QAAAA,CAAAA,CAHV,CAAA,IAAA,CAAAmS,OAAS,CACR,CAAA,CAAA,IAAA,CAAAC,YAAsC,CAAA,IAAIxJ,GAEZ,CAExCyJ,OAAAA,EAAO,CACH,IAAA,CAAKF,OAAS,CAAC,IAAA,CAAKA,OACpB,IAAKC,CAAAA,YAAAA,CAAajJ,KAAK,IAAKgJ,CAAAA,MAAM,EACtC,CAEA,IAAIG,OAAO,EAAA,CACP,OAAO,IAAA,CAAKH,OAAS,IAAKnS,CAAAA,QAAAA,CAASwD,cAAe+O,CAAAA,QAAAA,CAAW,KAAKvS,QAASwD,CAAAA,cAAAA,CAAegP,QAC9F,CAbSN,CAAAA,CAAAA,CAAAA,CAAAA,SAAAA,CAAAA,SAAAA,CAAAA,CAAAA,CAAAA,OAAAA,IAAAA,CAAAA,EAAAA,CAAAA,EAAyBzF,GAAAlI,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,SAAA,CAAA9D,EAAA,CAAA,CAAA,IAAA,CAAzByR,EAAyB9I,SAAA,CAAA,CAAA,CAAA,yBAAA,CAAA,EAAAC,MAAA,CAAA,CAAA8I,MAAA,CAAA,QAAA,EAAA7I,OAAA,CAAA,CAAA8I,aAAA,cAAA,CAAA,CAAA1I,MAAA,CAAAC,CAAAA,IAAAA,CAAA,CAAAC,CAAAA,MAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,QAAA,CAAA,CAAA,CAAA,OAAA,CAAA,CAAA,CAAA,CAAA,CAAA,WAAA,EAAA,CAAA,MAAA,CAAA,MAAA,MAAA,CAAA,IAAA,CAAA,EAAA,0BAAA,CAAA,CAAA,CAAA,MAAA,CAAA,EAAAC,QAAA,CAAA,SAAAC,EAAAC,CAAA,CAAA,CAAAD,EAAA,CCVtC3C,GAAAA,EAAAA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAA,CAA8CC,CAAAA,EAAAA,CAAA,QAAA,UAAA,CAAA,OAAS2C,CAAAsI,CAAAA,OAAAA,EAAS,CAAA,EAC5DxK,EAAA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAA,kBAEAA,EAAA,CAAA,CAAA,CAAA,SAAA,CAAA,CAAA,EACJE,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAJoBmD,GAAA,UAAAnB,CAAAA,CAAAA,CAAAoI,MAAA,CACXhK,CAAAA,EAAAA,EAAAH,CAAAA,EAAAA,CAAA,YAAAyK,EAAA,CAAA,CAAA,CAAA,EAAA1I,CAAAuI,CAAAA,OAAAA,CAAA,MAAA,CAAAI,CAAAA,EAAA,CAE0DvK,CAAAA,EAAAA,CAAA,CAAA,CAAAH,CAAAA,EAAAA,CAAA,OAAA+B,CAAAoI,CAAAA,MAAAA,CAAA,WAAA,YAAA,CAAA,EAAA,CAAA,CAAA,YAAA,CAAA,CAAAjF,CAAA,CAAAyF,CAAA,CAAA,CAAA,MAAA,CAAA,CAAA,CAAA;ADO7D,uEAAA,CAAA,CAAA,CAAA,eAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAOT,EAAPU,CAAOV,CAAAA,OAAAA,CAAyB,CAAA,GAAA,CEuBtC,IAAaW,EAAc,CAAA,CAAA,IAAA,CAArB,IAAOA,EAAP,MAAOA,CAAc,yCAAdA,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,SAAA,CAAAC,EAAA,CAAA,CAAA,IAAA,CAAdD,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,SAAA,CAAAE,EAAA,CAAA,CAAA,OAAA,CAAA,CAdnBC,EACAC,CAAAA,CAAAA,CACAC,GACAC,EACAC,CAAAA,CAAAA,CAGAC,IACAhJ,CAAAA,CAAmB,CAAA,CAAA,CAAA,CAMrB,IAAOwI,CAAAA,CAAPS,SAAOT,CAAc,CAAA,4KCrBf1L,EAAA,CAAA,CAAA,CAAA,sBAAA,CAAA,CAAA,CAQIC,EAAA,CAAA,OAAA,CAAA,UAAA,CAAA,IAAAmM,CAAAjM,CAAAA,EAAAA,CAAAkM,CAAA,CAAAC,CAAAA,CAAAA,CAAAF,CAAA/L,CAAAA,SAAAA,CAAAkM,EAAAH,CAAA7S,CAAAA,KAAAA,CAAAiK,EAAAjD,EAAA,CAAA,CAAA,EAAA,OAAAC,EAAAA,CAASgD,CAAAgJ,CAAAA,YAAAA,CAAAF,EAAAC,CAAA,CAAsB,CAAA,CAAA,CAAA,CACnC3L,KAPIC,CAAAA,GAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,CAAAA,CAAAA,SAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,KAAAA,CAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAAA,CAAA,OAAAyL,CAAAA,CAAA,EAAe,aAAA9I,CAAAA,CAAAA,CAAAiJ,wBAAA,CACyB,CAAA,cAAA,CAAAjJ,EAAAyE,YAAA,CAAA,CACX,oBAAAzE,CAAAA,CAAAA,CAAArJ,kBAAA,CACY,CAAA,UAAA,CAAAuM,EAAA,CAAA,CAAA,CAAAc,GAAAhE,CAAAkJ,CAAAA,cAAAA,CAAAH,CAAA,CAAA,EACW,qBAAA/I,CAAAA,CAAAA,CAAA6D,mBAAA,EAK5DrH,CAAAA,CAAAA,SAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,EAAAA,EAAAA,CAAAA,EAAAA,CAAA,EAAA,yBAAA,CAAA,CAAA,CAAgEC,CAAAA,EAAAA,CAAA,eAAA,SAAAwF,CAAAA,CAAA,CAAAtF,EAAAA,CAAAwM,CAAA,CAAA,CAAA,IAAAnJ,CAAAjD,CAAAA,EAAAA,CAAA,CAAA,CAAA,CAAA,OAAAC,GAAgBgD,CAAAoJ,CAAAA,cAAAA,CAAAnH,CAAA,CAAsB,CAAA,CAAA,CAAA,CAAE7E,KAA1DC,CAAAA,GAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAAA,CAAA,QAAA2C,CAAAA,CAAAA,CAAAwH,MAAA,EAtBlD6B,CAAAA,CAAAA,SAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,EAAAA,EAAAA,CAAAA,EAAAA,CAAA,CAAA,CAAA,CACI7M,GAAA,CAAA,CAAA,KAAA,CAAA,CAAA,CAAsC,CAAA,CAAA,CAAA,MAAA,CAAA,CAAA,CACFW,EAAA,CAAA,CAAA,EAAmCC,EAAA,EAAA,GAEvEZ,EAAA,CAAA,CAAA,CAAA,oBAAA,CAAA,CAAA,CAA6CC,EAAA,CAAA,aAAA,CAAA,SAAAwF,CAAA,CAAA,CAAAtF,GAAAC,CAAA,CAAA,CAAA,IAAAoD,CAAAjD,CAAAA,EAAAA,CAAA,CAAA,CAAA,CAAA,OAAAC,EAAegD,CAAAA,CAAAA,CAAAsJ,WAAArH,CAAAA,CAAA,CAAmB,CAAA,CAAA,CAAE7E,CAAAA,EAAAA,GACjFZ,EAAA,CAAA,CAAA,CAAA,MAAA,CAAA,CAAA,CAMI6C,GAAA,CAAAkK,CAAAA,EAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,sBAAA,CAAA,CAAA,CAUJnM,EAAA,EAAA,CACAiC,GAAA,CAAAmK,CAAAA,EAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,0BAAA,CAAA,CAAA,CAAAC,EAAA,GAAA,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,CAAA5L,EAAA,EAAA,CAAA,IAAA,CAAA,CAAA,CAAAA,EAAA,EAAA,CApBoCL,GAAA,CAAA,CAAA,CAAAC,GAAAuC,CAAA3K,CAAAA,QAAAA,CAAAqU,KAAAC,CAAAA,cAAA,EAEjBnM,EAAA,EAAA,CAAAH,EAAA,CAAA,QAAA,CAAAuM,EAAArR,IAAA,CAAA,CAEfiF,EAAA,EAAA,CAAAH,GAAA,SAAAwM,CAAAA,EAAAA,CAAA,EAAA1G,EAAA,CAAA,CAAAnD,EAAAyE,YAAA,EAAA,CAAAzE,CAAAiE,CAAAA,QAAAA,EAAAjE,EAAAiJ,wBAAA,CAAA,CAAA,CAAAjJ,EAAAyE,YAAAzE,EAAAA,CAAAA,CAAAiE,SAAAjE,CAAAyE,CAAAA,YAAAA,EAAAzE,CAAAiJ,CAAAA,wBAAAA,GAAA,GAAA,CAAAjJ,CAAAA,CAAAiE,QAAA,CAAA,CAAA,CAMsBzG,IAAAH,CAAAA,EAAAA,CAAA,SAAAuM,CAAAA,CAAAA,CAAAE,MAAA,CAAqB,CAAA,cAAA,CAAA9J,CAAA6B,CAAAA,WAAA,EAUrBrE,EAAA,EAAA,CAAAH,EAAA,CAAA,MAAA,CAAA2C,EAAA+J,YAAA,EAAA,CAAA,CAAA,SAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,GAvBlCV,GAAA,CAAA,CAAA,CACIhK,GAAA,CAAA2K,CAAAA,EAAAA,CAAA,CAAA,CAAA,EAAA,CAAA,eAAA,CAAA,CAAA,CAAAP,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,CAAA,CAAA,CAAA,IAAA,CAAejM,IAAAH,CAAAA,EAAAA,CAAA,OAAAuM,CAAArR,CAAAA,IAAAA,CAAAd,MAAA,EAAA,CAAA,CCsCnB,IAAawS,EAAwB,CAAA,CAAA,IAAA,CAA/B,IAAOA,CAAAA,CAAP,MAAOA,CAAgCC,SAAAA,GAAgC,CAEzE,IAAiDC,yBAAuB,CACpE,OAAO,IAAKC,CAAAA,iBAAAA,CAAkBD,uBAClC,CAUA,IAAIlB,wBAAwB,EAAA,CArDhC,IAAA5O,CAsDQ,CAAA,OAAA,CAAA,CAAOA,EAAA,IAAK2D,CAAAA,WAAAA,GAAL,YAAA3D,CAAkBpB,CAAAA,KAAAA,GAAS,CACtC,CAEA,IAAI8Q,YAAY,EAAA,CACZ,OAAO,IAAKd,CAAAA,wBAAAA,CAA2B,KAAK9T,cAAekV,CAAAA,iBAC/D,CAEA,IAAIpG,UAAQ,CACR,OAAO,KAAK9O,cAAe8O,CAAAA,QAC/B,CAEA,IAAItN,kBAAAA,EAAkB,CAClB,OAAK,KAAK2T,cAAgB,GAAA,IAAA,CAAKA,cAAiB,CAAA,IAAA,CAAKC,gBAAgB5T,kBAAkB,EAAA,CAAA,CAEhF,IAAK2T,CAAAA,cAChB,CAMApV,WACYqV,CAAAA,CAAAA,CACDpV,EACCqV,CACAC,CAAAA,CAAAA,CACAC,EACDrV,CACCsV,CAAAA,EAAAA,CACAC,EACAC,CAAAA,EAAAA,CACAT,EACAU,EAAkC,CAAA,CAE1C,KAAK,EAAA,CAZG,KAAAP,eAAAA,CAAAA,CAAAA,CACD,IAAApV,CAAAA,cAAAA,CAAAA,EACC,IAAAqV,CAAAA,YAAAA,CAAAA,EACA,IAAAC,CAAAA,wBAAAA,CAAAA,EACA,IAAAC,CAAAA,iBAAAA,CAAAA,CACD,CAAA,IAAA,CAAArV,SAAAA,CACC,CAAA,IAAA,CAAAsV,uBAAAA,CAAAA,EAAAA,CACA,KAAAC,iBAAAA,CAAAA,EAAAA,CACA,IAAAC,CAAAA,OAAAA,CAAAA,GACA,IAAAT,CAAAA,iBAAAA,CAAAA,EACA,IAAAU,CAAAA,gBAAAA,CAAAA,GA9CU,IAAA/J,CAAAA,SAAAA,CAAY,8BAKzB,CAAA,IAAA,CAAAgK,WAAa,IAAIC,EAAAA,CAA2B,CAAElB,MAAQ,CAAA,GAAIvR,IAAM,CAAA,EAAE,CAAE,EAG7E,IAAAiP,CAAAA,MAAAA,CAAS,GAyBD,IAAAyD,CAAAA,oBAAAA,CAAuB,GA4C/B,IAAAC,CAAAA,UAAAA,CAAcC,CAAyB,EAAA,CArH3C,IAAA9Q,EAsHY8Q,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,EAAAA,IAAAA,CAAAA,KAAAA,CAAAA,CAAAA,EAAMlV,QAANkV,GAAAA,IAAAA,EAAAA,EAAgB1T,CAAAA,MAAAA,CAChB,KAAK2T,gBAAiBD,CAAAA,CAAI,EACrBE,IACGC,CAAAA,EAAAA,CAAKC,IAAS,CACV,IAAA,CAAKC,iBAAiB,EAAA,CACtB,KAAKC,SAAUF,CAAAA,EAAAA,CAAMzB,MAAM,EAC/B,CAAC,CAAC,CAEL2B,CAAAA,SAAAA,CAAWF,EAAS,EAAA,CACjB,KAAKR,UAAWW,CAAAA,IAAAA,CAAKH,EAAK,CAC1B,CAAA,IAAA,CAAKI,QAAU,CACf,CAAA,CAAA,IAAA,CAAKC,eAAe,GACxB,CAAC,CAEL,EAAA,IAAA,CAAKD,OAAU,CAAA,CAAA,CAAA,CACf,KAAKC,eAAe,EAAA,CACpB,IAAKC,CAAAA,YAAAA,IAEb,CA/CI,CAAA,IAAA,CAAKZ,qBAAuB,IAAKH,CAAAA,gBAAAA,CAAiBgB,QAAQ3F,QAAQ,CAAA,UAAA,CAClE,CAAA,IAAA,CAAK4F,WAAWC,SAAU,CAAA,IAAM,KAAKC,WAAW,EAAE,EACtD,CAEA3G,QAAAA,EAAQ,CACJ4G,EAAAA,CAAc,CAAC,IAAK1B,CAAAA,YAAAA,CAAa2B,SAAUd,CAAAA,IAAAA,CAAKe,GAAK,CAAC,CAAC,CAAG,CAAA,IAAA,CAAKjX,eAAekX,SAAUhB,CAAAA,IAAAA,CAAKiB,EAAK,EAAE,CAAC,CAAC,CAAA,CACjGjB,IAAKkB,CAAAA,EAAAA,CAAmB,KAAKR,UAAU,CAAC,EACxCN,SAAU,CAAA,CAAC,CAACjB,CAAc1U,CAAAA,CAAC,CAAM,GAAA,IAAA,CAAK0W,UAAU,CAAA,CAErD,IAAKzB,CAAAA,UAAAA,CAAWM,KAAKe,EAAK,CAAA,CAAC,CAAGG,CAAAA,EAAAA,CAAmB,KAAKR,UAAU,CAAC,EAAEN,SAAU,CAAA,IAAM,KAAKf,iBAAkB+B,CAAAA,YAAAA,EAAc,CAAA,CAExH,KAAKhI,YAAe,CAAA,IAAA,CAAK+F,YAAakC,CAAAA,QAAAA,CAAS,OAAO,CAEtD,CAAA,IAAA,CAAK7I,mBAAsB,CAAA,IAAA,CAAK+G,kBAAkB+B,sBAAsB,EAAA,CAAK,kCAAoC,sBACrH,CAEmBC,OAAOzB,CAAqB,CAAA,CAzGnD,IAAA9Q,CAAAA,CAAAA,CA0Ga8Q,EAAAA,CAAAA,EAAAA,IAAAA,CAAAA,KAAAA,CAAAA,CAAAA,EAAMlV,QAANkV,GAAAA,IAAAA,EAAAA,EAAgB1T,MAGjB,CAAA,IAAA,CAAKyT,UAAWC,CAAAA,CAAI,EAFpB,IAAK0B,CAAAA,OAAAA,CAAQ,EAAI,CAAEpB,CAAAA,SAAAA,CAAU,KAAKP,UAAU,EAIpD,CAEAlC,YAAAA,CAAapN,EAAkB7F,CAAa,CAAA,CACxC,IAAK4U,CAAAA,uBAAAA,CAAwBhP,gBAAgBC,CAAO7F,CAAAA,CAAK,EAC7D,CAuBAuT,YAAY/N,CAAe,CAAA,CACvB,KAAKyC,WAAczC,CAAAA,CAAAA,CACnB,KAAKiM,MAAS,CAAA,CAAA,CAAA,CAEd,IAAKqF,CAAAA,OAAAA,GAAUpB,SAAWqB,CAAAA,CAAAA,EAAW,CA9I7C,IAAAzS,CAAAA,CAAAA,CA+IgByS,EAAAA,CAAAA,EAAAA,IAAAA,CAAAA,KAAAA,CAAAA,CAAAA,CAAS7W,CAAAA,QAAAA,GAAT6W,MAAAA,CAAmBrV,CAAAA,MAAAA,CACnB,KAAKyT,UAAW4B,CAAAA,CAAO,EAGvB,IAAKC,CAAAA,cAAAA,GAEb,CAAC,EAED,IAAMC,CAAAA,CAAW,IAAKjC,CAAAA,UAAAA,CAAW3S,MAAMG,IAAK0U,CAAAA,SAAAA,CAAWC,CAAMA,EAAAA,CAAAA,CAAErX,KAAO0F,CAAI1F,CAAAA,EAAE,EAC5E,IAAK8U,CAAAA,uBAAAA,CAAwBrP,iBAAiBC,CAAKyR,CAAAA,CAAQ,EAC/D,CAEQD,gBAAc,CAClB,IAAMxU,EAAO,IAAKwS,CAAAA,UAAAA,CAAW3S,MAAMG,IAC9BA,CAAAA,CAAAA,CAAKd,MAIVc,GAAAA,CAAAA,CAAKT,QAASoV,CAAOA,EAAAA,CAAAA,CAAE5P,OAAS,CAAM,CAAA,CAAA,CACtC,KAAKU,WAAczF,CAAAA,CAAAA,CAAK,CAAC,CAAA,CAEzB,KAAKsU,OAAO,EAAA,CAAGpB,SAAWqB,CAAAA,CAAAA,EAAY,KAAK5B,UAAW4B,CAAAA,CAAO,CAAC,CAAA,CAE9D,KAAKnC,uBAAwBrP,CAAAA,gBAAAA,CAAiB,KAAK0C,WAAa,CAAA,CAAC,GACrE,CAEAoL,cAAAA,CAAe+D,CAAmB,CAAA,CAzKtC,IAAA9S,CA0KQ,CAAA,IAAA,CAAKmN,MAAS2F,CAAAA,CAAAA,CACd,KAAKxC,uBAAwBxQ,CAAAA,kBAAAA,CAAmB,IAAKqN,CAAAA,MAAAA,CAAAA,CAAQnN,EAAA,IAAK2D,CAAAA,WAAAA,GAAL,YAAA3D,CAAkBxE,CAAAA,EAAE,EAEjF,IAAKgX,CAAAA,OAAAA,EAAUpB,CAAAA,SAAAA,CAAWN,GAAS,IAAKD,CAAAA,UAAAA,CAAWC,CAAI,CAAC,EAC5D,CAEAtJ,WAAAA,CAAY9L,CAAe6F,CAAAA,CAAAA,CAAgB,CACvC,OAAOA,CAAAA,CAAM/F,EACjB,CAESuX,UAAAA,EAAU,CApLvB,IAAA/S,CAAAA,CAqLQ,IAAMgT,CAAAA,CAAW,KAAK7F,MAAS,CAAA,IAAA,CAAKrS,eAAemY,iBAAoB,CAAA,IAAA,CAAKnY,eAAekV,iBAErFQ,CAAAA,CAAAA,CAAU1M,GAAAC,CAAAA,CAAAA,CAAA,GAAK,KAAMgP,CAAAA,UAAAA,IAAX,CAAyBpW,OAAAA,CAAAA,CAASqD,EAAA,IAAK2D,CAAAA,WAAAA,GAAL,IAAA3D,CAAAA,KAAAA,CAAAA,CAAAA,CAAAA,CAAkBxE,GAAI0X,IAAMF,CAAAA,CAAQ,CAEtF,CAAA,CAAA,OAAQ,KAAKpC,oBAAiC9M,CAAAA,GAAAA,CAAAC,CAAA,CAAA,EAAA,CAAKyM,GAAL,CAAcI,oBAAAA,CAAsB,KAAKA,oBAAoB,CAAA,CAAA,CAAvEJ,CACxC,CAEQ2B,QAAAA,EAAQ,CACZ,IAAMgB,EAAyB,IAAK5C,CAAAA,iBAAAA,CAAkB+B,wBAEtD,CAAA,IAAA,CAAKlI,aAAe,IAAK+F,CAAAA,YAAAA,CAAakC,QAAS,CAAA,OAAO,EACtD,IAAK7I,CAAAA,mBAAAA,CAAsB2J,EAAyB,iCAAoC,CAAA,qBAAA,CAExF,KAAKzC,UAAWW,CAAAA,IAAAA,CAAKvN,GAAAC,CAAAA,CAAAA,CAAA,GAAK,IAAK2M,CAAAA,UAAAA,CAAW3S,KAArB,CAAA,CAAA,CAA4B0R,OAAQ,IAAK2D,CAAAA,iBAAAA,CAAkB,IAAK1C,CAAAA,UAAAA,CAAW3S,MAAM0R,MAAM,CAAC,EAAE,EACnH,CAEQ+C,QAAQa,CAA2B,CAAA,CAAA,CAAA,CAAK,CAC5C,OAAO,KAAKvY,cAAekX,CAAAA,SAAAA,CAAUhB,KACjCsC,EAAU7X,CAAAA,CAAAA,EACC,KAAK+U,OAAQ/O,CAAAA,SAAAA,CAA2B,IAAKsR,CAAAA,UAAAA,GAAcM,CAAe,CAAA,CAAErC,KAC/ErP,EAAO,CAAA,CAAC,CAAE8Q,OAAAA,CAAAA,CAAO,CAAOA,GAAAA,CAAAA,GAAYc,MAAS,CAC7C9W,CAAAA,EAAAA,CAAI,CAAC,CAAEgW,QAAAA,CAAO,CAAA,GAAOA,CAA0B,CAAA,CAC/CP,GAAmB,IAAKR,CAAAA,UAAU,CAAC,CAE1C,CAAC,CAEV,CAEQX,gBAAAA,CAAiBD,CAAqB,CAAA,CAC1C,OAAO,IAAKhW,CAAAA,cAAAA,CAAekX,SAAUhB,CAAAA,IAAAA,CACjCsC,GAAU7X,CACC,EAAA,IAAA,CAAKyU,eAAgBvU,CAAAA,WAAAA,CAAYmV,EAAKlV,QAAUkV,CAAAA,CAAAA,CAAK5S,IAAI,CAAE8S,CAAAA,IAAAA,CAC9DkC,KAAK,CAAC,CAAA,CACNzW,EAAKgT,CAAAA,CAAAA,EAAU,CACX,IAAM+D,CAAAA,CAAY,IAAKtD,CAAAA,eAAAA,CAAgBjS,aAAa6S,CAAK5S,CAAAA,IAAI,CAC7D,CAAA,OAAA,IAAA,CAAKuV,eAAeD,CAAS,CAAA,CAItB,CACH/D,MAHiB,CAAA,IAAA,CAAK2D,kBAAkB3D,CAAM,CAAA,CAI9CvR,IAAMsV,CAAAA,CAAAA,CAEd,CAAC,CAAC,CAET,CAAC,CAEV,CAEQC,eAAevV,CAA0B,CAAA,CACxCA,CAAKd,CAAAA,MAAAA,GAIVc,EAAK,CAAC,CAAA,CAAE+E,OAAS,CAEb/E,CAAAA,CAAAA,CAAAA,CAAKd,OAAS,CAAK,EAAA,IAAA,CAAKuG,WACxBzF,EAAAA,CAAAA,CAAKT,QAASoV,CAAC,EAAA,CA9O3B,IAAA7S,CAAAA,CA8OiC6S,SAAE5P,MAAS4P,CAAAA,CAAAA,CAAErX,EAAOwE,IAAAA,CAAAA,CAAAA,CAAA,KAAK2D,WAAL,GAAA,IAAA,CAAA,KAAA,CAAA,CAAA3D,EAAkBxE,EAAG,CAAA,CAAA,CAAA,CAGlE,KAAKmI,WAAc,CAAA,IAAA,CAAKA,WAAezF,EAAAA,CAAAA,CAAK+F,KAAM4O,CAAMA,EAAAA,CAAAA,CAAE5P,MAAM,CACpE,EAAA,CAEQmQ,kBAAkB3D,CAAmB,CAAA,CACzC,IAAMtR,CAAAA,CAAcsR,EAAOrS,MACrBsW,CAAAA,CAAAA,CAAWC,KAAKC,IAAKzV,CAAAA,CAAAA,CAAc,CAAC,CAE1C,CAAA,GAAI,IAAKiM,CAAAA,YAAAA,EAAgB,CAAC,IAAKR,CAAAA,QAAAA,EAAY,IAAKgF,CAAAA,wBAAAA,CAA2B,EAAG,CAC1E,IAAMjR,CAAsB,CAAA,GAE5B,IAASkW,IAAAA,CAAAA,CAAI,EAAGA,CAAIH,CAAAA,CAAAA,CAAUG,IAC1BlW,CAAOK,CAAAA,IAAAA,CAAKyR,CAAOoE,CAAAA,CAAC,CAAC,CAEjBA,CAAAA,CAAAA,CAAIH,EAAWvV,CACfR,EAAAA,CAAAA,CAAOK,KAAKyR,CAAOoE,CAAAA,CAAAA,CAAIH,CAAQ,CAAC,EAIxC,OAAO/V,CACX,CAEA,OAAO8R,CACX,CAEQ2B,SAAU3B,CAAAA,CAAAA,CAAmB,CACjC,IAAA,CAAKmC,aACL,CAAA,IAAMkC,CAAYrE,CAAAA,CAAAA,CAAOhT,IAAI,CAACyU,CAAAA,CAAOxV,CAAW,IAAA,CAC5C6F,MAAO2P,CACP6C,CAAAA,QAAAA,CAAU,KAAKC,WAAYtY,CAAAA,CAAK,GAClC,CAEEoY,CAAAA,CAAAA,CAAU1W,MACV,GAAA,IAAA,CAAK6W,kBAAoB,IAAK7D,CAAAA,wBAAAA,CAAyBgB,SAAU0C,CAAAA,CAAS,GAElF,CAEQE,WAAAA,CAAYtY,CAAa,CAAA,CAC7B,OAAQwY,CAAgB,EAAA,CACpB,GAAKA,CAIDA,EAAAA,CAAAA,CAAahI,aAAa9O,MAAQ,CAAA,CAClC,IAAM+W,CAAAA,CAAY,KAAKzD,UAAW3S,CAAAA,KAAAA,CAAM0R,MACxC0E,CAAAA,CAAAA,CAAUzY,CAAK,CAAI0Y,CAAAA,EAAAA,CAAMF,CAAY,CAAA,CACrC,KAAKxD,UAAWW,CAAAA,IAAAA,CAAKtN,EAAA,EACd,CAAA,IAAA,CAAK2M,WAAW3S,KACtB,CAAA,CAAA,CAED,IAAKsS,CAAAA,iBAAAA,CAAkB+B,eAC3B,CACJ,CACJ,CAEQR,WAAAA,EAAW,CAvSvB,IAAA5R,CAAAA,CAAAA,CAwSQA,CAAA,CAAA,IAAA,CAAKiU,oBAAL,IAAAjU,EAAAA,CAAAA,CAAwB4R,cAC5B,CAEQT,iBAAAA,EAAiB,CA3S7B,IAAAnR,CAAAA,CA4SQ,IAAK6O,CAAAA,cAAAA,CAAiB,WAAS7O,CAAA,CAAA,IAAA,CAAK2D,WAAL,GAAA,IAAA,CAAA,KAAA,CAAA,CAAA3D,EAAkBxE,EAAM,GAAA,EAAE,CAC7D,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,SAAA,CAAA,SAAA,CAAA,CAAA,CAAA,OAAA,IAAA,CAAA,EAtQSoU,GAAuBnI,EAAA7M,CAAAA,CAAA,EAAA6M,EAAApI,CAAAA,EAAA,EAAAoI,EAAA4M,CAAAA,EAAA,CAAA5M,CAAAA,EAAAA,CAAA6M,CAAA,CAAA7M,CAAAA,EAAAA,CAAA8M,EAAA,CAAA9M,CAAAA,EAAAA,CAAAlI,EAAA,CAAAkI,CAAAA,EAAAA,CAAA9H,CAAA,CAAA,CAAA8H,GAAA+M,EAAA,CAAA,CAAA/M,GAAAgN,GAAA,CAAA,CAAAhN,GAAAiN,EAAA,CAAA,CAAAjN,EAAAkN,CAAAA,IAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,SAAA,CAAAlZ,EAAA,CAAA,CAAA,IAAA,CAAvBmU,CAAuBxL,CAAAA,SAAAA,CAAA,CAAA,CAAA,sBAAA,CAAA,CAAA,CAAAsD,SAAA,CAAAC,CAAAA,YAAAA,CAAA,SAAA7C,CAAAC,CAAAA,CAAAA,CAAA,CAAAD,CAAA,CAAA,CAAA,GAAvB+C,EAAA9C,CAAAA,CAAAA,CAAA2B,SAAA,CAAAR,CAAAA,EAAAA,CAAA,yBAAAnB,CAAA+K,CAAAA,uBAAA,gCAFE,CAACnQ,CAAuB,CAAC,CAAA,CAAAiV,GAAAnQ,EAAA,CAAA,CAAAC,MAAA,CAAAC,CAAAA,IAAAA,CAAA,EAAAC,MAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MAAA,CAAA,qBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,aAAA,CAAA,QAAA,CAAA,CAAA,CAAA,EAAA,aAAA,CAAA,QAAA,EAAA,CAAA,CAAA,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,CAAA,aAAA,CAAA,cAAA,CAAA,qBAAA,UAAA,CAAA,qBAAA,CAAA,OAAA,CAAA,CAAA,CAAA,QAAA,SAAA,CAAA,cAAA,EAAA,CAAA,CAAA,CAAA,SAAA,cAAA,CAAA,CAAA,CAAA,MAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,CAAA,OAAA,CAAA,aAAA,CAAA,eAAA,oBAAA,CAAA,UAAA,CAAA,qBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,cAAA,CAAA,QAAA,CAAA,CAAA,CAAAC,SAAA,SAAAC,CAAAA,CAAAC,CAAA,CAAA,CAAAD,EAAA,CDrCxCE,GAAAA,EAAAA,CAAA,EAAA6P,EAAA,CAAA,CAAA,CAAA,EAAA,cAAA,CAAA,CAAA,CAAe7R,CAAAA,EAAAA,CAAAA,CAAAA,CAAAA,OAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAAA,EAAAA,CAAA,OAAA8C,EAAA,CAAA,CAAA,CAAA,EAAAf,CAAA2L,CAAAA,UAAA,CAAA,ECiCDoE,CAAAA,CAAAA,YAAAA,CAAAA,CAAAA,EAAAA,CAAMC,EAAOC,CAAAA,EAAAA,CAAWC,GAASpH,EAAcxD,CAAAA,EAAAA,CAAA6C,EAAExJ,CAAAA,EAAqB,EAAAwR,aAAA,CAAA,CAAA,CAAA1P,eAAA,CAAA,CAAA,CAAA,CAM9E,CAAA,IAAOoK,EAAPuF,CAAOvF,CAAAA,OAAAA,CAAwB,IC9BrC,CAAA,IAAawF,EAA0B,CAAA,CAAA,IAAA,CAAjC,IAAOA,CAAAA,CAAP,MAAOA,CAA0B,CACnCva,YACYwa,CACAC,CAAAA,CAAAA,CAAkB,CADlB,IAAA,CAAAD,eAAAA,CACA,CAAA,IAAA,CAAAC,SAAAA,EACT,CAEHC,eAAa,CACT,IAAA,CAAKF,cAAeG,CAAAA,YAAAA,CAAY,WAAsB5F,EAAyB,CAAA,IAAA,CAAK0F,QAAQ,EAChG,yCARSF,CAA0BhW,EAAAA,EAAAA,CAAAqW,GAAA,CAAA,CAAArW,GAAAsW,EAAA,CAAA,CAAA,CAA1BN,CAAAA,CAAAA,CAAAA,UAAAA,CAAAA,CAAAA,CAAAA,CAAAA,KAAAA,CAAAA,CAAAA,CAA0B5V,QAA1B4V,CAA0B3V,CAAAA,SAAAA,CAAAkW,UADb,CAAA,MAAM,CAAA,CAC1B,CAAA,IAAOP,EAAPQ,CAAOR,CAAAA,OAAAA,CAA0B,ICHjC,CAAA,SAAUS,EAAO,EAAA,CACnB,OAAO,CAACjb,CAAAA,CAAiB+E,EAAyBmW,EAAiBV,CAAAA,EAA0B,CAAC,CAClG"}