{"version":3,"sources":["../../types/dist/Account.js","../../types/dist/Language.js","../../types/dist/AccountManagement.js","../../types/dist/Application.js","../../types/dist/enums.js","../../types/dist/Blocks.js","../../types/dist/BlockSettings.js","../../types/dist/Cashiering.js","../../types/dist/Country.js","../../types/dist/Duration.js","../../types/dist/constants.js","../../types/dist/Entitlements.js","../../types/dist/Expirations.js","../../types/dist/Information.js","../../types/dist/Exceptions.js","../../types/dist/Layout.js","../../types/dist/Order.js","../../types/dist/OrderStatus.js","../../types/dist/Session.js","../../types/dist/State.js","../../types/dist/Quote.js","../../types/dist/ResponseCode.js","../../types/dist/schema/dashboard.js","../../types/dist/schema/block.js","../../types/dist/schema/order.js","../../types/dist/schema/db.js","../../types/dist/StateSync.js","../../types/dist/Strategy.js","../../types/dist/Streaming.js","../../types/dist/Token.js","../../types/dist/translations/index.js","../../types/dist/Urls.js","../../types/dist/User.js","../../types/dist/util.js","../../types/dist/index.js","components/dashboard/DashboardSymbolPicker.tsx","components/form/GenericField.tsx","data/global/actions/CashieringEventActions.ts","data/global/actions/admin/index.ts","data/global/actions.ts","assets/sounds/ok.mp3","assets/sounds/error.mp3","assets/sounds/updates.mp3","data/global/actions/AccountStatementsActions.ts","data/global/actions/QuoteActions.ts","data/global/selectors/transforms.ts","../../api/dist/utilities.js","../../api/dist/ApiClient.js","../../api/dist/blocks/blockUtilities.js","../../api/dist/commands/getPnLItem.js","../../api/dist/commands/account.js","../../api/dist/jsonEncode.js","../../api/dist/utilities/JwtUtilities.js","../../api/dist/commands/auth.js","../../api/dist/config.js","../../api/dist/feed/WebsocketFeedParser.js","../../api/dist/logger.js","../../api/dist/utilities/SymbolUtilities.js","../../api/dist/strategies/strikeValidator.js","../../api/dist/strategies/directionValidator.js","../../api/dist/strategies/strategyValidator.js","../../api/dist/strategies/spreadRatioValidation.js","../../api/dist/strategies/validation.js","../../api/dist/strategies/strategies.js","../../api/dist/strategies/CustomStrategy.js","../../api/dist/utilities/DateUtilities.js","../../api/dist/utilities/OrderUtilities.js","../../api/dist/orders/orderPrice.js","../../api/dist/orders/orderBuilder.js","../../api/dist/orders/orderStatusCategories.js","../../api/dist/orders/utility.js","../../api/dist/performance/pnl.js","../../api/dist/strategies/profitloss.js","../../api/dist/commands/getToken.js","../../api/dist/commands/getBalances.js","../../api/dist/commands/getBars.js","../../api/dist/commands/quote.js","../../api/dist/commands/symbols.js","../../api/dist/commands/positions.js","../../api/dist/commands/options.js","../../api/dist/commands/history.js","../../api/dist/commands/orderApi.js","../../api/dist/commands/application.js","../../api/dist/commands/userCommands.js","../../api/dist/commands/information.js","../../api/dist/commands/entitlements.js","../../api/dist/commands/downloads.js","../../api/dist/commands/historyGetBalance.js","../../api/dist/commands/nopass.js","../../api/dist/TradingBlockApi.js","../../api/dist/types.js","../../api/dist/utilities/ObjectUtilities.js","../../api/dist/utilities/SiteUtilities.js","../../api/dist/utilities/DocumentUtilities.js","../../api/dist/index.js","data/global/actions/admin/AdminClientActions.ts","data/feed/FeedState.tsx","data/feed/DataFeed.ts","data/feed/useFeedActions.ts","data/feed/context/DataFeedSymbolsContext.tsx","data/feed/DataFeedInitializer.tsx","data/quotes/QuoteRequestHandler.tsx","data/Initializer.tsx","data/async/dashboards.ts","blocks/Activity/state/ActivityActions.ts","blocks/Order/state/OrderActionUtility.ts","utilities/date.ts","blocks/Order/state/orderReducerUtilities.ts","blocks/Order/state/transforms/orderStateTransforms.ts","blocks/Order/state/reducers/OrderPreviewReducer.ts","blocks/Order/state/OrderReducer.ts","blocks/BlockStateFactory.ts","utilities/dashboard.ts","components/dashboard/hooks/useDefaultDashboards.ts","utilities/url.ts","components/dashboard/drawer/EditDashboardModal.tsx","components/dashboard/drawer/DashboardItem.tsx","components/dashboard/DashboardPresetCarousel.tsx","data/global/selectors/originSelector.ts","components/basic/TradingBlockLink.tsx","components/basic/SiteName.tsx","components/dashboard/DashboardDrawer.tsx","data/global/selectors/environmentSelector.ts","hooks/useVirtualTrading.tsx","data/global/initialState.ts","components/dashboard/DashboardSettings.tsx","hooks/useReduxConfiguration.tsx","components/DebugSettings.tsx","components/useDebugSettings.tsx","components/admin/Links.ts","components/dashboard/menu/UserNameAndEnvironment.tsx","components/basic/LogoutLink.tsx","components/dashboard/navigation/ToggleVirtualTradingButton.tsx","components/dashboard/Menu.tsx","components/notifications/NotificationWrapper.tsx","components/notifications/DashboardNotification.tsx","components/notifications/ClientNotifications.tsx","data/global/utilities/options.ts","utilities/activity.ts","data/global/utilities/activity.ts","data/global/utilities/notification.ts","data/global/selectors/orderSelector.ts","components/notifications/TradeOrderNotifications.tsx","components/dashboard/TradingStatus.tsx","components/dashboard/navigation/DashboardMarketClosedCountdown.tsx","components/basic/Logo.tsx","hooks/useQuoteData.tsx","components/dashboard/DashboardSymbolWidget.tsx","components/dashboard/DashboardNavigation.tsx","components/dashboard/DashboardContentWrapper.tsx","blocks/shared/useBboxDimensions.ts","blocks/shared/table/useBlockTableActions.tsx","blocks/shared/table/BlockTableContent.tsx","blocks/shared/table/useBlockTableSize.tsx","blocks/shared/BlockTable.tsx","blocks/Order/hooks/useOrderSettings.tsx","blocks/Order/state/useOrderState.ts","blocks/Order/data/orderSelectors.ts","blocks/Order/hooks/useOrderPrice.tsx","blocks/Order/state/useOrderActions.tsx","data/global/selectors/symbolSelector.ts","hooks/useSounds.tsx","blocks/Order/hooks/useOrderTotal.tsx","blocks/Order/components/Preview/useOrderPreview.tsx","data/global/selectors/expirationStrikeSelector.ts","blocks/Order/data/useOrderStatus.ts","blocks/Order/components/PriceComponent.tsx","blocks/Order/components/Preview/PreviewLimitPrice.tsx","blocks/Order/components/Preview/PreviewStopPrice.tsx","blocks/Order/components/Preview/PreviewOrderTotal.tsx","blocks/Order/components/DebitCreditToggle.tsx","blocks/Order/components/Preview/PreviewDebitOrCredit.tsx","blocks/Order/components/Preview/EstCommissionPreview.tsx","blocks/Order/components/Preview/PreviewContent.tsx","components/dashboard/DashboardWrapper.tsx","components/hotkeys/BlockHotkeys.tsx","components/hotkeys/DashboardHotkeys.tsx","components/hotkeys/GridHotkeys.tsx","components/blocks/BlockDataLoader.tsx","blocks/shared/useBlockDimensions.tsx","data/global/selectors/groupSelectors.ts","components/blocks/content/BlockContentWrapper.tsx","components/blocks/useBlockGroupSync.tsx","data/global/utilities.ts","components/blocks/BlockLinkingDropdown.tsx","components/blocks/BlockSettingsDropdown.tsx","components/blocks/VirtualTradingModal.tsx","blocks/OptionChain/data/useOptionChainSettings.tsx","components/blocks/content/BlockContentHeader.tsx","components/blocks/BlockLinkingMask.tsx","components/blocks/content/BlockLink.tsx","components/blocks/content/BlockContentHeaderTitle.tsx","components/blocks/content/BlockLoadingHeaderIndicator.tsx","components/blocks/Block.tsx","blocks/PriceChart/state/PriceChartSelectors.ts","context/GroupManager.tsx","hooks/useFavorite.tsx","components/blocks/FavoriteButton.tsx","blocks/shared/QuoteTime.tsx","components/basic/Directional.tsx","blocks/shared/SymbolPrice.tsx","blocks/shared/SymbolPickerHeader.tsx","blocks/PriceChart/PriceChartHeader.tsx","../../tradingview/dist/charting_library/charting_library.esm.js","../../tradingview/dist/ChartBuilder.js","../../tradingview/dist/streaming.js","../../tradingview/dist/DataFeed.js","blocks/PriceChart/PriceChartGraph.tsx","../../tradingview/dist/constants.js","data/charts/CachedApi.ts","blocks/PriceChart/hooks/useTradingviewDatafeed.tsx","blocks/PriceChart/options/overrides.ts","blocks/PriceChart/options/drawingOverrides.ts","blocks/PriceChart/PriceChartContent.tsx","blocks/PriceChart/PriceChartBlock.tsx","blocks/PriceChart/hooks/usePriceChartGroupHandler.ts","components/blocks/useBlockSubscriptions.ts","data/global/selectors/positionSelector.ts","data/global/selectors/performanceSelectors.ts","data/global/selectors/PnLSelectors.ts","blocks/shared/DirectionalCurrency.tsx","blocks/Positions/PositionHeader.tsx","components/blocks/hooks/useBlockLog.ts","blocks/shared/PositionSync.tsx","components/trading/DirectionalPrice.tsx","components/blocks/hooks/useOrderBlock.ts","components/blocks/hooks/usePriceChartBlock.ts","components/blocks/actions/OrderActionButtons.tsx","blocks/Positions/PositionActions.tsx","components/blocks/content/PrettySymbol.tsx","blocks/Positions/PositionLegActions.tsx","blocks/Positions/components/PositionLegDailyPL.tsx","blocks/Positions/hooks/usePositionInfo.ts","blocks/Positions/GroupedPositionLegActions.tsx","blocks/Positions/hooks/useAggregatedPositions.ts","blocks/Positions/PositionLeg.tsx","blocks/Positions/components/PositionDropdown.tsx","blocks/shared/SubAccountFilter.tsx","data/global/sliceReducers/performance/utilities.ts","data/global/sliceReducers/performance/performanceBySymbolReducer.ts","blocks/Positions/components/PositionTable.tsx","blocks/Positions/PositionBlockContent.tsx","blocks/Positions/PositionBlock.tsx","components/basic/Column.tsx","components/blocks/BlockColumn.tsx","data/global/utilities/balances.ts","blocks/Account/AccountBalanceView.tsx","blocks/Account/AccountContent.tsx","components/dashboard/hooks/useAccountSettings.tsx","blocks/Account/AccountHeader.tsx","blocks/Account/AccountBlock.tsx","blocks/AccountManagement/state/AccountManagementState.tsx","blocks/AccountManagement/state/AccountManagementBlockAction.ts","blocks/AccountManagement/modals/Validation.ts","blocks/AccountManagement/modals/AddressUpdate.tsx","blocks/AccountManagement/modals/EmailUpdate.tsx","blocks/AccountManagement/modals/PhoneUpdate.tsx","blocks/AccountManagement/modals/TrustedContactUpdate.tsx","components/basic/DetailFields.tsx","utilities/accountManagement.tsx","blocks/AccountManagement/modals/EmployInfoUpdate.tsx","blocks/AccountManagement/modals/RemoveTrustedContactOrTradeAuth.tsx","blocks/AccountManagement/modals/ResetPassword.tsx","blocks/AccountManagement/AccountDetails.tsx","blocks/AccountManagement/modals/FinancialUpdate.tsx","blocks/AccountManagement/modals/TradeExperience.tsx","blocks/AccountManagement/modals/components/RiskLevelIcon.tsx","blocks/AccountManagement/modals/SuitabilityUpdate.tsx","components/form/UploadMiscFile.tsx","hooks/useClearer.tsx","blocks/AccountManagement/modals/TradeGoalUpdate.tsx","blocks/AccountManagement/modals/FlexibilityTypeUpdate.tsx","blocks/AccountManagement/FinancialDetails.tsx","blocks/AccountManagement/modals/IndividualRepresentations.tsx","components/form/DateField.tsx","blocks/AccountManagement/modals/TradeAuthUpdate.tsx","blocks/AccountManagement/modals/IndustryEmployedUpdate.tsx","blocks/AccountManagement/modals/AccountDisclosuresUpdate.tsx","blocks/AccountManagement/modals/ServiceProfileUpdate.tsx","blocks/AccountManagement/AccountDisclosures.tsx","blocks/AccountManagement/modals/RemoveAllBeneficiaries.tsx","blocks/admin/Applications/services/formatters.ts","blocks/AccountManagement/Beneficiaries.tsx","blocks/AccountManagement/components/table/AuthHistoryTable.tsx","blocks/AccountManagement/Security.tsx","blocks/AccountManagement/modals/CommunicationPreferencesUpdate.tsx","blocks/AccountManagement/modals/MarketDataProfileReview.tsx","blocks/AccountManagement/Preferences.tsx","blocks/AccountManagement/AccountManagementContent.tsx","blocks/AccountManagement/AccountManagmentHeader.tsx","blocks/AccountManagement/AccountManagementBlock.tsx","components/basic/SymbolName.tsx","blocks/Favorites/FavoritesContent.tsx","blocks/Favorites/FavoritesHeader.tsx","blocks/Favorites/FavoritesBlock.tsx","blocks/Order/OrderHeader.tsx","blocks/Order/data/useExpirationStrikeData.tsx","utilities/order.ts","blocks/Order/hooks/useOrderPositionSync.ts","blocks/Order/components/OrderSentiment.tsx","blocks/Order/components/OrderStrategyMatch.tsx","blocks/Order/components/OrderValidationIcon.tsx","blocks/Order/components/Order/OrderQuantity.tsx","blocks/Order/components/OrderStrategyPicker.tsx","blocks/Order/state/useLegsActions.tsx","blocks/Order/components/AddOrderLeg.tsx","blocks/Order/components/AddOrderLegContent.tsx","blocks/Order/components/ClearOrder.tsx","blocks/Order/components/PriceAndQuoteSync.tsx","blocks/Order/components/OrderTypePicker.tsx","blocks/Order/components/OrderPrice.tsx","blocks/Order/components/PriceSlider.tsx","blocks/Order/components/DurationPicker.tsx","blocks/Order/components/StopOrderPrice.tsx","blocks/Order/components/content/OrderContentSettings.tsx","components/blocks/StrategyButton.tsx","blocks/Order/components/StrategyTemplateButtons.tsx","components/blocks/blockProp/BlockProp.tsx","blocks/Order/hooks/useStrikesFilteredForStrategy.ts","components/basic/Loading.tsx","blocks/Order/components/Legs/Expiration.tsx","blocks/Order/components/Legs/Strikes.tsx","blocks/Order/components/useLastPrice.tsx","blocks/Order/components/Legs/Action.tsx","blocks/Order/components/Legs/Quantity.tsx","blocks/Order/components/Legs/Position.tsx","blocks/Order/components/useBidAsk.tsx","components/symbol/Price.tsx","blocks/Order/components/Legs/BidAsk.tsx","blocks/Order/components/Leg.tsx","blocks/Order/state/useOrderLegData.tsx","blocks/Order/OrderLegs.tsx","blocks/Order/OrderContent.tsx","blocks/Order/state/useOrderSymbols.ts","blocks/Order/components/Preview/OrderPreviewActions.tsx","blocks/Order/components/Preview/PreviewPopupContent.tsx","blocks/Order/components/Preview/AdminCommissionOrderActions.tsx","blocks/Order/components/Preview/AdminBypassMargin.tsx","blocks/Order/components/Preview/PreviewPopup.tsx","blocks/Order/components/ProfitLoss.tsx","blocks/Order/OrderFooter.tsx","blocks/Order/OrderBlock.tsx","blocks/Order/hooks/useOrderBlockGroupHandler.ts","components/blocks/BlockAccessors.tsx","blocks/Activity/ActivityOrderStatusWrapper.tsx","blocks/Activity/components/orders/OrderActivityStatus.tsx","blocks/Activity/state/ActivitySelector.ts","blocks/Activity/useActivitySettings.tsx","blocks/Activity/data/useActivityTimeframe.tsx","blocks/Activity/state/ActivityState.ts","blocks/Activity/components/ActivityOrderEventsSubRow.tsx","blocks/Activity/components/ActivityOrdersTable.tsx","components/basic/TimeframePresets.tsx","components/basic/Timeframe.tsx","blocks/Activity/components/TimeframeContainer.tsx","blocks/Activity/components/ActivityOrderStats.tsx","blocks/Activity/components/ActivityOrderTimeframe.tsx","blocks/Activity/ActivityOrderContent.tsx","blocks/Activity/components/ActivityMessagesTable.tsx","blocks/Activity/ActivityMessages.tsx","blocks/Activity/components/ActivitySummaryTable.tsx","blocks/Activity/ActivitySummaryTotals.tsx","blocks/Activity/ActivitySummary.tsx","blocks/Activity/ActivityContent.tsx","components/blocks/BlockTabWell.tsx","blocks/Activity/ActivityBlock.tsx","blocks/Analytics/AnalyticsChart.tsx","blocks/Analytics/AnalyticsHelper.ts","blocks/Analytics/AnalyticsBalanceHistory.tsx","blocks/Analytics/AnalyticsCashFlow.tsx","blocks/Analytics/AnalyticsHeader.tsx","components/basic/CircularProgressBar.tsx","blocks/Analytics/AnalyticsBlock.tsx","utilities/cashiering.tsx","components/cashiering/CashieringEntityStatus.tsx","blocks/AccountTransfer/AccountTransferContent.tsx","blocks/AccountTransfer/AccountTransferNotSupportedContent.tsx","blocks/AccountTransfer/AccountTransferBlock.tsx","blocks/OptionChain/state/OptionChainState.tsx","blocks/OptionChain/state/OptionChainAction.tsx","blocks/OptionChain/state/useOptionChainActions.tsx","blocks/OptionChain/OptionChainHeader.tsx","blocks/OptionChain/data/useOptionChain.ts","blocks/OptionChain/state/OptionChainSelector.ts","blocks/OptionChain/components/OptionChainTableRow.tsx","blocks/OptionChain/OptionChainTypes.ts","blocks/OptionChain/components/RootExpirationRow.tsx","blocks/OptionChain/AddRemoveFavorite.tsx","blocks/OptionChain/OptionChainOrderDropdown.tsx","blocks/OptionChain/components/BidAsk.tsx","blocks/OptionChain/components/OptionPairVolume.tsx","blocks/shared/ExpirationsFilter.tsx","blocks/OptionChain/OptionChainTable.tsx","blocks/OptionChain/OptionChainContent.tsx","blocks/OptionChain/OptionChainBlock.tsx","blocks/OptionChain/data/useOptionChainSymbols.tsx","blocks/OptionChain/state/useOptionChainGroupHandler.ts","blocks/OptionChain/state/OptionChainReducer.tsx","blocks/QuoteExtended/QuoteHeader.tsx","components/blocks/TradeButton.tsx","blocks/QuoteExtended/SymbolInfo.tsx","blocks/QuoteExtended/SymbolOrders.tsx","blocks/QuoteExtended/Company.tsx","blocks/QuoteExtended/state/QuoteState.tsx","blocks/QuoteExtended/Summary.tsx","blocks/QuoteExtended/state/QuoteBlockAction.ts","blocks/QuoteExtended/Dividends.tsx","blocks/QuoteExtended/Earnings.tsx","blocks/QuoteExtended/QuoteContent.tsx","blocks/QuoteExtended/QuoteExtendedBlock.tsx","blocks/QuoteExtended/state/QuoteBlockReducer.ts","blocks/Info/state/InfoBlockAction.ts","blocks/Info/state/InfoBlockReducer.ts","blocks/Info/InfoHeader.tsx","blocks/Info/hooks/useInfoSettings.tsx","blocks/Info/utils/MarketSymbols.tsx","blocks/Info/MarketNews.tsx","blocks/Info/ActiveAlerts.tsx","blocks/Info/state/InfoState.tsx","data/global/utilities/infoUtilities.ts","data/global/selectors/infoSelectors.ts","blocks/Info/useInfo.tsx","blocks/Info/components/ReleaseNotesTable.tsx","blocks/Info/InfoContent.tsx","blocks/Info/InfoBlock.tsx","blocks/AccountManagement/state/AccountManagementReducer.ts","blocks/admin/state/AdminToolsState.tsx","blocks/admin/state/AdminToolsBlockAction.ts","data/global/utilities/accountManagementUtilities.ts","data/global/selectors/admin/accountManagementSelector.ts","blocks/admin/AccountManagement/useAccountManagement.tsx","blocks/admin/AccountManagement/components/AccountManagementUpdateStatus.tsx","blocks/admin/AccountManagement/components/table/AccountManagementItemCell.tsx","blocks/admin/AccountManagement/components/table/AccountManagementActionCell.tsx","blocks/admin/AccountManagement/components/AccountUpdateDetails.tsx","blocks/admin/AccountManagement/components/AccountManagementUserDetails.tsx","blocks/admin/AccountManagement/components/details/AccountUpdateEntityAuditItems.tsx","blocks/admin/AccountManagement/components/AccountManagementUpdateItemStatus.tsx","blocks/admin/AccountManagement/components/AccountManagementUpdateRequest.tsx","blocks/admin/AccountManagement/components/details/AccountUpdateEntityNotes.tsx","blocks/admin/AccountManagement/components/AccountManagementFinancialDetails.tsx","blocks/admin/AccountManagement/components/AccountManagementDocReview.tsx","blocks/admin/AccountManagement/AdminAccountManagementDetail.tsx","blocks/admin/AccountManagement/components/AccountManagementFilters.tsx","blocks/admin/AccountManagement/components/AccountManagementTable.tsx","blocks/admin/AccountManagement/AdminAccountManagementIndex.tsx","data/global/utilities/alertUtilities.ts","data/global/selectors/admin/alertsSelector.ts","blocks/admin/SystemAlerts/useAlertsData.tsx","blocks/admin/SystemAlerts/components/table/AlertsActionCell.tsx","blocks/admin/SystemAlerts/components/AddAlertMessage.tsx","blocks/admin/SystemAlerts/components/EditAlertMessage.tsx","blocks/admin/SystemAlerts/components/AlertsTable.tsx","data/global/utilities/entitlementsUtilities.ts","data/global/selectors/admin/entitlementsSelector.ts","blocks/admin/Entitlements/components/table/EntitlementsActionCell.tsx","blocks/admin/Entitlements/components/table/EntitlementsItemCell.tsx","blocks/admin/Entitlements/components/EntitlementsFooter.tsx","blocks/admin/Entitlements/components/EntitlementRequestDetails.tsx","blocks/admin/Entitlements/components/EntitlementRequestAccountDetails.tsx","blocks/admin/Entitlements/components/EntitlementRequestFinancialDetails.tsx","blocks/admin/Entitlements/AdminEntitlementsDetail.tsx","blocks/admin/Entitlements/components/EntitlementsTable.tsx","blocks/admin/Entitlements/useEntitlements.tsx","blocks/admin/Entitlements/AdminEntitlementsIndex.tsx","data/global/utilities/applicationUtilities.ts","data/global/selectors/admin/applicationsSelector.ts","blocks/admin/Applications/useApplications.tsx","blocks/admin/Applications/components/table/ApplicationsActionCell.tsx","blocks/admin/Applications/components/details/SecureAccount.tsx","blocks/admin/Applications/components/details/InvestingProfile.tsx","blocks/admin/Applications/components/details/AccountInformation.tsx","blocks/admin/Applications/components/details/BeneficiaryInformation.tsx","blocks/admin/Applications/components/details/DocumentsRequested.tsx","blocks/admin/Applications/components/details/Agreements.tsx","blocks/admin/Applications/services/getAllAgreementKeys.ts","blocks/admin/Applications/AdminApplicationsDetail.tsx","blocks/admin/Applications/components/ApplicationsFilters.tsx","blocks/admin/Applications/components/ApplicationsTable.tsx","blocks/admin/Applications/AdminApplicationsIndex.tsx","blocks/admin/ReleaseNotes/components/AddReleaseNotes.tsx","blocks/admin/ReleaseNotes/components/EditReleaseNotes.tsx","blocks/admin/ReleaseNotes/components/ReleaseNotesAdminTable.tsx","blocks/admin/ReleaseNotes/components/ReleaseNotesAdminIndex.tsx","blocks/admin/AdminToolsContent.tsx","blocks/admin/AdminToolsHeader.tsx","blocks/admin/AdminToolsBlock.tsx","blocks/admin/state/AdminToolsReducer.ts","blocks/AccountStatements/AccountStatementsHeader.tsx","data/global/selectors/accountStatementsSelectors.ts","blocks/AccountStatements/components/DownloadComponent.tsx","blocks/AccountStatements/tabs/AccountStatementsDailyConfirms.tsx","components/basic/YearPicker.tsx","blocks/AccountStatements/tabs/AccountStatementsMonthlyStatements.tsx","blocks/AccountStatements/tabs/AccountStatementsTaxDocuments.tsx","blocks/AccountStatements/AccountStatements.tsx","components/blocks/BlockFactory.tsx","components/dashboard/GridResizeSync.tsx","hooks/dom/useDocumentWidth.tsx","components/dashboard/DashboardGrid.tsx","components/hotkeys/AudioHotkeys.tsx","components/hotkeys/EnvironmentHotkeys.tsx","components/notifications/AlertMessage.tsx","pages/views/DashboardView.tsx","hooks/useDashboardDrawer.tsx","pages/views/cashiering/data/useCashieringData.ts","pages/views/cashiering/AuthorizeView.tsx","pages/views/cashiering/data/cashieringValidation.ts","pages/views/cashiering/WithdrawalAmountView.tsx","pages/views/cashiering/components/SelectCheckTransfer.tsx","pages/views/cashiering/components/GenericAccountList.tsx","pages/views/cashiering/components/AccountRenameForm.tsx","pages/views/cashiering/components/AchRelationshipForm.tsx","pages/views/cashiering/components/AchRelationshipVerifyForm.tsx","pages/views/cashiering/components/AchRelationshipList.tsx","pages/views/cashiering/components/SelectAchRelationshipTransfer.tsx","pages/views/cashiering/components/RecipientBankForm.tsx","pages/views/cashiering/components/RecipientBankList.tsx","pages/views/cashiering/components/SelectWireTransfer.tsx","hooks/useCurrentDayACHTransfers.tsx","pages/views/cashiering/components/AccountsList.tsx","pages/views/cashiering/WithdrawalTypeView.tsx","data/global/utilities/cashieringUtilities.ts","data/global/selectors/admin/cashieringSelectors.ts","components/cashiering/CashieringEntityOwnerNames.tsx","components/cashiering/CashieringEntityDetails.tsx","components/cashiering/AccountWithdrawalDisplay.tsx","pages/views/cashiering/WithdrawalReviewView.tsx","pages/views/cashiering/DepositAmountView.tsx","pages/views/cashiering/DepositTypeView.tsx","components/cashiering/AccountDepositDisplay.tsx","pages/views/cashiering/DepositReviewView.tsx","pages/views/cashiering/ManageView.tsx","pages/views/cashiering/OAuthPlaidRedirectView.tsx","pages/views/cashiering/data/useCashieringView.ts","pages/views/ScreenWrapper.tsx","pages/views/BaseCashieringView.tsx","components/SessionExpiredModal.tsx","components/ErrorModal.tsx","pages/wrappers/SessionWrapper.tsx","framework/WrappedRoute.tsx","components/account/SelectSubAccountButton.tsx","components/account/SubAccountTable.tsx","components/account/AccountSelectionButton.tsx","components/account/AccountTable.tsx","components/account/AccountSwitcher.tsx","pages/RootContentPage.tsx","data/feed/FeedSelectors.tsx","data/feed/FeedSync.tsx","data/feed/WebsocketHandler.tsx","data/feed/Feed.tsx","utilities/auth.ts","pages/AuthenticationPage.tsx","pages/LogoutPage.tsx","pages/admin/AdminRoot.tsx","pages/admin/cashiering/useCashiering.tsx","pages/admin/cashiering/components/table/CashieringTransactionCell.tsx","pages/admin/cashiering/components/table/CashieringActionCell.tsx","pages/admin/cashiering/components/table/CashieringMethodCell.tsx","pages/admin/cashiering/components/details/CashieringEntityNotes.tsx","pages/admin/cashiering/components/table/CashieringNoteCell.tsx","pages/admin/cashiering/components/CashieringTable.tsx","pages/admin/cashiering/components/CashieringFilters.tsx","hooks/useLatestPendingCashieringDate.tsx","pages/admin/cashiering/AdminCashieringIndex.tsx","data/global/selectors/admin/accountSelectors.ts","components/basic/ValueArray.tsx","pages/admin/cashiering/components/CustomerAccountDetails.tsx","pages/admin/cashiering/components/CashieringTransferDetails.tsx","pages/admin/cashiering/components/details/CashieringReviewFormActions.tsx","pages/admin/cashiering/components/CashieringReviewForm.tsx","pages/admin/cashiering/components/CashieringRelationshipDetails.tsx","pages/admin/cashiering/components/CashieringDetailError.tsx","pages/admin/cashiering/components/details/CashieringEntityAuditItems.tsx","pages/admin/cashiering/components/CashieringRelationshipStatus.tsx","pages/admin/cashiering/components/CashieringTransferStatus.tsx","pages/admin/cashiering/components/CashieringDocReview.tsx","pages/admin/cashiering/components/CashieringTransferInstructionDetails.tsx","pages/admin/cashiering/components/CashieringTransferInstructionStatus.tsx","pages/admin/cashiering/components/FilterForAccount.tsx","pages/admin/cashiering/AdminCashieringDetail.tsx","pages/admin/AdminRouter.tsx","pages/NoAccountPage.tsx","data/global/middleware/versioningMiddleware.ts","data/global/utilities/blockStateUtilities.ts","blocks/PriceChart/state/PriceChartActions.ts","data/global/middleware/groupMiddleware.ts","data/global/middleware/handlers/block.ts","data/global/middleware/handlers/feed.ts","data/global/middleware/dataRequestMiddleware.ts","data/global/middleware/handlers/orders.ts","data/global/middleware/debounceMiddleware.ts","data/global/middleware/throttleMiddleware.ts","data/global/middleware/notificationMiddleware.ts","data/global/middleware/crashReporterMiddleware.ts","data/global/middleware/eventLogMiddleware.ts","data/global/middleware/layoutMiddleware.ts","data/global/middleware/stateSyncMiddleware.ts","data/global/middleware/handlers/dashboard.ts","data/global/middleware/handlers/optionchain.ts","data/global/middleware/handlers/options.ts","data/global/middleware/handlers/settingsHandler.ts","data/global/middleware/handlers/favorites.ts","data/global/middleware/handlers/account.ts","data/global/utilities/accountUtilities.ts","data/global/selectors/admin/clientListSelectors.ts","data/global/middleware/handlers/quote.ts","data/global/middleware/handlers/chain.ts","data/global/middleware/handlers/tokenhandler.ts","data/global/middleware/handlers/cashieringEventMiddleware.ts","data/global/middleware/handlers/information.ts","data/global/middleware/handlers/accountManagement.ts","data/global/middleware/handlers/admin/adminAccountManagementHandler.ts","data/global/middleware/handlers/admin/adminEntitlementsHandler.ts","data/global/middleware/handlers/admin/adminAlertsHandler.ts","data/global/middleware/handlers/admin/adminApplicationHandler.ts","data/global/middleware/handlers/linkedAccounts.ts","data/global/middleware/handlers/accountStatements.ts","data/global/middleware/handlers/history.ts","data/global/middleware/handlers/index.ts","data/global/middleware/handlers/lifecycle.ts","data/global/middleware/handlers/cashiering.ts","data/global/middleware/handlers/admin/adminAccountHandler.ts","data/global/middleware/handlers/admin/adminCashieringHandler.ts","data/global/middleware/handlers/orderFeedMiddleware.ts","data/global/middleware/handlers/admin/adminClientHandler.ts","data/global/middleware/handlers/balances.ts","data/global/middleware/index.ts","data/global/reducers/expirationStrike.ts","data/global/reducers/optionchainReducer.ts","data/global/reducers/account.ts","data/global/reducers/block.ts","utilities/action.ts","data/global/reducers/quoteReducer.ts","data/global/reducers/admin/privateCashieringReducer.ts","data/global/reducers/admin/privateAccountReducer.ts","data/global/reducers/admin/privateClientReducer.ts","data/global/reducers/admin/privateAccountManagementReducer.ts","data/global/reducers/admin/privateEntitlementsReducer.ts","data/global/reducers/admin/privateAlertsReducer.ts","data/global/reducers/admin/privateApplicationsReducer.ts","data/global/reducers/admin/index.ts","data/global/reducers/environmentReducer.ts","data/global/sliceReducers/performance/performanceReducer.ts","data/global/accountDataReducer.ts","data/global/reducers/balances.ts","data/global/reducers/accountsBalances.ts","data/global/reducers/subAccountBalances.ts","data/global/reducer.ts","data/global/reducers/history.ts","data/global/reducers/linkedAccounts.ts","data/global/reducers/accountManagement.ts","data/global/reducers/settingsReducer.ts","data/global/reducers/positionsReducer.ts","data/global/reducers/layout.ts","data/global/reducers/cashieringReducer.ts","data/global/reducers/uiReducer.ts","data/global/reducers/symbolReducer.ts","data/global/reducers/informationReducer.ts","data/global/reducers/accountStatements.ts","data/global/sliceReducers/index.ts","data/async/blocks.ts","data/global/sagas/dashboards.ts","data/global/sagas.ts","data/global/store.ts","AppStoreProvider.tsx","data/global/utilities/storageListener.ts","data/global/selectors/cashieringSelectors.ts","components/cashiering/CashieringUpdatesPoll.tsx","pages/modals/AcceptModal.tsx","pages/UpdateConfirmationPage.tsx","App.tsx","hooks/usePageTitle.ts","serviceWorker.ts","index.tsx","data/global/actions/SettingsActions.ts","blocks/Positions/util.ts","utilities/position.ts","blocks/Order/state/OrderSettings.ts","blocks/Positions/usePositionSettings.tsx","blocks/Order/data/StrategyValidationMiddleware.ts","blocks/Order/state/cleanStateBeforePersist.ts","components/blocks/state/PersistMiddleware.tsx","components/blocks/state/LogMiddleware.ts","components/blocks/BlockReducer.ts","components/blocks/BlockState.tsx","../../api/dist/commands/utilities.js","data/global/actions/LinkedAccountsActions.ts","components/blocks/state/BlockState.ts","data/global/actions/admin/AdminCashieringTransferActions.ts","data/global/actions/admin/AdminCashieringRelationshipActions.ts","data/global/actions/admin/AdminCashieringActions.ts","blocks/Info/state/InfoSettings.ts","blocks/PriceChart/state/PriceChartSettings.ts","blocks/Favorites/useFavoriteSettings.tsx","data/global/actions/OrderActions.ts","data/global/utilities/strategyClassification.ts","blocks/OptionChain/state/OptionChainSettings.ts","data/global/actions/History.ts","data/global/hooks.tsx","data/global/actions/OrderFeedActions.ts","data/global/actions/EnvironmentActions.ts","../../storage/dist/storageProvider.js","utilities/admin.ts","utilities/account.tsx","../../api/dist/commands/cashiering.js","blocks/Order/state/OrderState.ts","components/blocks/useBlockState.tsx","data/global/actions/CashieringActions.ts","data/global/actionUtilities.ts","data/global/actions/PageActions.ts","components/blocks/state/blockTable/BlockTableActions.ts","context/Api.tsx","../../storage/dist/providers/httpProvider.js","data/global/actions/AccountManagementActions.ts","hooks/useSymbolSearch.ts","data/global/selectors/accountSelectors.ts","blocks/Order/state/OrderActions.ts","blocks/Order/state/OrderStateToOrder.ts","data/selectors.ts","data/global/actions/admin/AccountManagementActions.ts","../../storage/dist/providers/localStorageProvider.js","../../api/dist/constants.js","config.ts","data/api/apiClientFactory.ts","components/blocks/state/blockTable/BlockTableReducer.ts","../../components/dist/components/basic/AddIcon.js","../../components/dist/components/basic/Errors.js","../../components/dist/components/basic/Alert.js","../../components/dist/components/basic/Dropdown.js","../../components/dist/components/basic/FloatingLabel.js","../../components/dist/components/basic/FormGroup.js","../../components/dist/components/basic/Number.js","../../components/dist/components/basic/Pill.js","../../components/dist/components/basic/Svg.js","../../components/dist/components/basic/Wrapper.js","../../components/dist/components/basic/Tooltip.js","../../components/dist/components/block/AddBlock.js","../../components/dist/components/block/BlockComponents.js","../../components/dist/components/block/BlockDragHandle.js","../../components/dist/components/block/BlockHeader.js","../../components/dist/components/block/BlockTitle.js","../../components/dist/components/block/EmptyBlockContent.js","../../components/dist/components/common/Button.js","../../components/dist/components/common/Carousel.js","../../components/dist/utilities/SiteUtilities.js","../../components/dist/utilities/site.js","../../components/dist/utilities/document.js","../../components/dist/utilities/activityDector.js","../../components/dist/hooks/useActivityTimeout.js","../../components/dist/hooks/useAlerts.js","../../components/dist/utilities/block.js","../../components/dist/hooks/useAuthentication.js","../../components/dist/utilities/dom.js","../../components/dist/utilities/number.js","../../components/dist/utilities/style.js","../../components/dist/hooks/useDebug.js","../../components/dist/hooks/useElementPosition.js","../../components/dist/hooks/useInput.js","../../components/dist/hooks/useLocalize.js","../../components/dist/hooks/useSign.js","../../components/dist/hooks/useTableColumnWidths.js","../../components/dist/utilities/tableUtilities.js","../../components/dist/hooks/useToggle.js","../../components/dist/hooks/useWhyDidYouUpdate.js","../../components/dist/components/localize/Text.js","../../components/dist/components/common/ContactPhone.js","../../components/dist/components/common/ContactEmail.js","../../components/dist/components/common/Countdown.js","../../components/dist/hooks/useCountdown.js","../../components/dist/components/common/ExternalLink.js","../../components/dist/components/common/Loading.js","../../components/dist/components/common/Mask.js","../../components/dist/components/common/SiteLogo.js","../../components/dist/components/common/SiteName.js","../../components/dist/components/common/Toggle.js","../../components/dist/components/common/TradingBlockLink.js","../../components/dist/context/page/PageContext.js","../../components/dist/components/dashboard/DashboardNav.js","../../components/dist/components/dashboard/DashboardContent.js","../../components/dist/containers/Alerts.js","../../components/dist/containers/Autocomplete.js","../../components/dist/containers/BasicSelect.js","../../components/dist/containers/AsyncAutocomplete.js","../../components/dist/containers/HttpAutocomplete.js","../../components/dist/containers/Portal.js","../../components/dist/hooks/useScrollablePosition.js","../../components/dist/components/dropdown/Dropdown.js","../../components/dist/components/dropdown/BasicDropdown.js","../../components/dist/components/dropdown/Items.js","../../components/dist/components/dropdown/DropdownWrapper.js","../../components/dist/components/fields/Checkbox.js","../../components/dist/components/fields/CheckList.js","../../components/dist/context/page/WindowSizeContext.js","../../components/dist/components/fields/SelectDropdown.js","../../components/dist/components/fields/Slider.js","../../components/dist/components/fields/Stepper.js","../../components/dist/components/fields/Textbox.js","../../components/dist/components/hotkeys/Hotkey.js","../../components/dist/components/icons/Infinity.js","../../components/dist/components/layout/Grid.js","../../components/dist/components/localize/fields/Address.js","../../components/dist/components/localize/fields/CheckList.js","../../components/dist/components/localize/fields/Checkbox.js","../../components/dist/components/localize/fields/Currency.js","../../components/dist/components/localize/fields/SelectDropdown.js","../../components/dist/components/localize/fields/Stepper.js","../../components/dist/components/localize/fields/Textbox.js","../../components/dist/components/fields/Textarea.js","../../components/dist/components/localize/fields/Textarea.js","../../components/dist/components/localize/Button.js","../../components/dist/components/localize/HelpText.js","../../components/dist/components/modals/Modal.js","../../components/dist/components/localize/Loading.js","../../components/dist/components/localize/LocalizeProviderWrapper.js","../../components/dist/components/tables/TableRow.js","../../components/dist/components/tables/BaseTable.js","../../components/dist/components/tables/Paging.js","../../components/dist/components/tables/FreeHeaderTable.js","../../components/dist/components/tables/FrozenHeaderTable.js","../../components/dist/components/tables/Table.js","../../components/dist/components/tables/Responsive.js","../../components/dist/components/tables/Utilities.js","../../components/dist/components/tabs/TabWell.js","../../components/dist/hooks/useValueOrDefault.js","../../components/dist/components/tabs/Tabs.js","../../components/dist/context/GridContext.js","../../components/dist/context/NavigationContext.js","../../components/dist/constants.js","../../components/dist/lib.js","data/global/actions/InfoActions.ts","blocks/Order/state/OrderSelector.ts","utilities/block.ts","utilities/data.ts","components/form/GenericRadioButton.tsx","components/form/GenericChoiceField.tsx","components/form/renderGenericForm.tsx","data/global/actions/admin/EntitlementsActions.ts","data/global/actions/admin/AdminApplicationActions.ts","blocks/useGroupState.ts","data/global/actions/admin/AdminAccountActions.ts","blocks/Order/OrderUtilities.ts","data/global/dataSelectors.ts","data/global/actions/AccountActions.ts","blocks/Analytics/useAnalyticsSettings.tsx","data/global/selectors/settingSelectors.ts","hooks/useFeedQuote.tsx","data/global/selectors/quoteSelector.ts","../../api/dist/commands/accountManagement.js","components/blocks/settings/BlockSettings.tsx","components/blocks/settings/BlockSettingsTabs.tsx","context/Storage.tsx","blocks/Order/state/OrderLegSelector.ts","data/global/dispatcher.ts","../../storage/dist/useStorageProvider.js","../../storage/dist/hooks/useHttpStore.js","../../storage/dist/factory.js","../../storage/dist/index.js","hooks/useDashboardSettings.ts","constants.ts","data/global/actions/admin/AdminAlertActions.ts"],"names":["ClearerType","LanguageType","DefaultLanguageKeys","DefaultAccountDetails","accountNames","accountNumber","undefined","accountStatus","accountType","repCode","repFirstName","repLastName","repPhoneNumber","mailingAddress","address1","address2","city","state","postalCode","country","physicalAddress","email","homePhone","mobilePhone","workPhone","lastChanged","commissions","commissionCodeId","AccountManagementEntityType","AccountManagementInvestmentObjectives","AnnualIncomeOptions","DefaultAccountManagementDetails","DefaultAccountUpdateDetails","accountId","accountName","confirmedDate","created","userId","name","date","reason","firmRejected","firmReviewed","id","item","note","original","accountHolder","address","phones","phoneNumber","type","maritalStatus","dependents","birthCountry","citizenshipCountry","employmentType","jobPosition","yearsEmployed","employer","employerAddress","disclosures","govOfficial","industryEmployed","irsWithholding","stakeholder","disclosuresGovOfficialImmediateFamily","disclosuresGovOfficialPoliticalOrg","disclosuresIndustryEmployedFirmName","disclosuresStakeholderTickerSymbol","beneficiaries","flexibilityType","tradeGoalType","investmentObjectiveType","disclosuresForeignBankUSAgent","experience","bonds","tradesPerYear","years","commodities","margins","options","stocks","annualIncome","totalNetWorth","liquidNetWorth","characteristics","risk","bracket","horizon","liquidity","trustedContact","firstName","middleInitial","lastName","suffix","tradingAuthorization","dateOfBirth","foreignTaxIdCountry","foreignTaxIdNumber","ssnSecret","accountDisclosures","foreignBank","foreignFinancialInstitution","foreignShellBank","proprietarySecuritiesAccount","serviceProfile","issuerDirectCommunication","updated","uploadedDocuments","documentId","documentName","responseCode","DefaultUserUpdateAccountDetails","entityIssuesBearerShares","entityNegativeNews","entityPublicOfficials","entityServicesForeignShellBanks","accountHolders","jointTenantsInCommonInterestPercent","agreements","corporateCash","corporateMargin","customerAndPrivacyPolicy","entityMargin","entityOption","iRARothAdoption","iRASepAdoption","iRASimpleAdoption","iRACoverDellAdoption","jointCommunity","jointSurvivor","jointTenantsInCommon","jointTenantsInEntirety","limitedMargin","llcAccount","margin","option","riskDisclosure","electronicConsent","onlineServices","exchangeDataAgreement","clientRelationshipSummary","apiAgreement","rqdCustomerAgreement","rqdOption","rqdMargin","rqdLimitedMargin","rqdExecutionDisclosures","rqdClearingDisclosures","rqdCustomerInformationBrochure","rqdPrivacyPolicy","rqdPrivacyNotice","rqdResponsibilitiesOfIbAndCarryingBroker","rqdSpecialStatementForUncoveredOptionWriters","rqdPowerOfAttorney","rqdLimitedTradingAuthorization","entityAccountType","jointAccountType","jointCommunityPropertyState","phone","retirementAccountType","tradeAuthorization","tradeAuthorizationAgentName","clearer","communicationPreferences","deliveryType","preferredElectronicFormat","duplicateStatements","subscribeToPromotionalEmails","LessThan25K","Between25KAnd50K","Between50KAnd100K","Between100KAnd200K","Between200KAnd300K","Between300KAnd500K","Between500KAnd1Point2M","Over1Point2M","TimeHorizonType","RiskToleranceType","RiskLevel","MonetaryRangeType","LiquidityNeedType","InvestmentObjectiveType","InvestmentObjectiveDescription","InvestmentObjectiveLevel","IncomeRangeType","ExperienceYearType","TradeExperienceYearType","TaxbracketType","TradeExperienceUpdateType","UpdateStates","concat","TradeGoalType","AllTradeExperienceTypes","Bonds","Options","Stocks","Commodities","Margins","AllIncomeRangeTypes","MoreThan1Point2M","AllInvestmentObjectiveTypes","CapitalPreservation","Income","Growth","GrowthAndIncome","Speculation","AllLiquidityNeedTypes","VeryImportant","SomewhatImportant","NotImportant","AllMonetaryRangeTypes","LessThan50K","Between200KAnd500K","Between500KAnd1M","Between1MAnd5M","MoreThan5M","AllTimeHorizonTypes","Short","Average","Long","AllTaxbracketTypes","Bottom","Middle","Top","AllExperienceYearTypes","Zero","One","TwoToThree","FourToNine","TenOrMore","AllTradeExperienceYearTypes","OneToFive","SixToTen","ElevenToTwenty","MoreThanTwenty","AllRiskToleranceTypes","Low","Medium","High","TradeGoalTypeLevel","BooleanToggleType","AllTradeGoalTypes","StocksBonds","AllAbovePlusCallsPuts","AllAbovePlusOptionSpreads","AllAbovePlusPutWriting","AllAbovePlusAllOptionStrategies","MFAOptions","AllBooleanToggleTypes","Yes","No","EmploymentType","IssuerDirectCommunicationType","NoPass","SMS","YearsEmployed","AllIssuerDirectCommunicationTypes","Accept","Object","EmploymentTypes","Employed","Retired","Student","Unemployed","YearsEmployedDescription","AllYearsEmployed","BetweenZeroAndOne","BetweenTwoAndFive","BetweenFiveAndTen","BetweenTenAndTwenty","PhoneType","ErrorType","FlexibilityType","AllPhoneTypes","Home","Mobile","Work","ProSubType","AllFlexibilityTypes","Margin","CashOnly","RE_EMAIL","AccountManagementDocuments","AccountManagementBeneficiaryAccountType","AccountManagementBeneficiaryType","DefaultPhoneValues","InvestigationDocumentName","InvestigationDocuments","AccountApplicationState","AccountInvestigationState","UploadedDocumentState","AllAccountManagementBeneficiaryTypes","Individual","Trust","AllAccountManagementBeneficiaryAccountTypes","Primary","Contingent","ApplicationStep","ApplicationType","RetirementAccountType","JointAccountType","EntityAccountType","MaritalStatusType","VisaType","BusinessNature","AccountActivityType","SourceOfFundsType","WithdrawalFrequencyType","BeneficiaryAccountType","BeneficiaryType","BeneficiariesRelationshipsType","DefaultSecurityChallenge","securityQuestionType","answer","DeliveryType","ElectronicFormat","BeneficiariesRelationships","Spouse","Parent","Child","Other","Electronic","Paper","ProSubscriptionType","DuplicateStatements","AllElectronicFormats","Html","PlainText","TradeAuthorizationType","AllDuplicateStatementOptions","PostalMail","Email","AssetType","OrderAction","OrderActionDirection","PositionEffect","OrderType","OrderClass","DebitOrCredit","OptionType","StrategyType","SizeRatio","BlockType","AllTradeAuthorizationTypes","Full","Limited","DefaultPersonDetails","day","month","year","ssn","DefaultAccountHolder","assign","emailConfirm","differentMailingAddress","visaType","visaExpirationDate","foreignTaxWithholding","taxIdentificationNumber","letterOfExplanation","jurisdictionDoesNotIssueTIN","notIssuedForeignTIN","treatyCountry","foreignTINNotRequiredExplanation","DefaultApplicationModel","languageType","English","ownerUsername","password","passwordConfirm","securityChallenges","primaryAccountHolder","ownerCountry","retirementAccount","simpleIraPlanName","beneficiaryIraDecedentName","agreeToElectronicConsent","disclosuresEntityNegativeNewsInfo","disclosuresEntityPublicOfficials","rqdDisclosure","rqdLimitedMarginAgreement","marketData","employmentFunctions","personalUse","secCftcRegistration","associationRegistration","jobFunctions","investmentProfessional","capitalTrading","corporationTrading","benefitsReceived","marketDataType","signedNames","hearAboutUsId","foreignDueDiligence","expectedWithdrawalFrequency","initialContact","initialDepositAmount","initialDepositType","primaryBanking","referredName","referredRelationship","referredToBroker","AlertType","AccountRole","AccountType","BlockTypeValues","values","ActivityTimeframes","CashieringRoute","CashieringView","CashieringManageAction","WireType","WireAccountType","TransferBankIdentifierType","AllBlockTypes","Order","Activity","Account","PriceChart","Quote","Info","OptionChain","Positions","Favorites","AccountTransfer","AccountManagement","AdminTools","Analytics","AccountStatements","AllBlocksCategorized","front","middle","back","TransferRecipientBankState","TransferPendingStates","TransferStates","TransferStatesNotAffectingAchLimit","BankRiskScoreValues","CashieringSearchEntityType","CashieringDocumentType","CashieringPendingStates","Country","AllCashieringDocumentTypes","BankStatement","VoidedCheck","Durations","AllCountries","Afghanistan","AlandIslands","Albania","Algeria","AmericanSamoa","Andorra","Angola","Anguilla","Antarctica","AntiguaAndBarbuda","Argentina","Armenia","Aruba","Australia","Austria","Azerbaijan","Bahamas","Bahrain","Bangladesh","Barbados","Belarus","Belgium","Belize","Benin","Bermuda","Bhutan","BoliviaPlurinationalStateOf","BonaireSintEustatiusAndSaba","BosniaAndHerzegovina","Botswana","BouvetIsland","Brazil","BritishIndianOceanTerritory","BruneiDarussalam","Bulgaria","BurkinaFaso","Burundi","CaboVerde","Cambodia","Cameroon","Canada","CaymanIslands","CentralAfricanRepublic","Chad","Chile","China","ChristmasIsland","CocosKeelingIslands","Colombia","Comoros","CongoDemocraticRepublicOf","Congo","CookIslands","CostaRica","Croatia","Cuba","Curacao","Cyprus","Czechia","CoteDIvoire","Denmark","Djibouti","Dominica","DominicanRepublic","Ecuador","Egypt","ElSalvador","EquatorialGuinea","Eritrea","Estonia","Eswatini","Ethiopia","FalklandIslandsMalvinas","FaroeIslands","Fiji","Finland","France","FrenchGuiana","FrenchPolynesia","FrenchSouthernTerritories","Gabon","Gambia","Georgia","Germany","Ghana","Gibraltar","Greece","Greenland","Grenada","Guadeloupe","Guam","Guatemala","Guernsey","Guinea","GuineaBissau","Guyana","Haiti","HeardIslandAndMcDonaldIslands","HolySee","Honduras","HongKong","Hungary","Iceland","India","Indonesia","IranIslamicRepublicOf","Iraq","Ireland","IsleOfMan","Israel","Italy","Jamaica","Japan","Jersey","Jordan","Kazakhstan","Kenya","Kiribati","KoreaDemocraticPeoplesRepublicOf","KoreaRepublicOf","Kuwait","Kyrgyzstan","LaoPeoplesDemocraticRepublic","Latvia","Lebanon","Lesotho","Liberia","Libya","Liechtenstein","Lithuania","Luxembourg","Macao","Madagascar","Malawi","Malaysia","Maldives","Mali","Malta","MarshallIslands","Martinique","Mauritania","Mauritius","Mayotte","Mexico","MicronesiaFederatedStatesOf","MoldovaRepublicOf","Monaco","Mongolia","Montenegro","Montserrat","Morocco","Mozambique","Myanmar","Namibia","Nauru","Nepal","Netherlands","NewCaledonia","NewZealand","Nicaragua","Niger","Nigeria","Niue","NorfolkIsland","NorthMacedonia","NorthernMarianaIslands","Norway","Oman","Pakistan","Palau","PalestineStateOf","Panama","PapuaNewGuinea","Paraguay","Peru","Philippines","Pitcairn","Poland","Portugal","PuertoRico","Qatar","Romania","RussianFederation","Rwanda","Reunion","SaintBarthelemy","SaintHelenaAscensionAndTristandaCunha","SaintKittsAndNevis","SaintLucia","SaintMartin","SaintPierreAndMiquelon","SaintVincentAndGrenadines","Samoa","SanMarino","SaoTomeAndPrincipe","SaudiArabia","Senegal","Serbia","Seychelles","SierraLeone","Singapore","SintMaarten","Slovakia","Slovenia","SolomonIslands","Somalia","SouthAfrica","SouthGeorgiaAndSouthSandwichIslands","SouthSudan","Spain","SriLanka","Sudan","Suriname","SvalbardAndJanMayen","Sweden","Switzerland","SyrianArabRepublic","TaiwanProvinceOfChina","Tajikistan","TanzaniaUnitedRepublicOf","Thailand","TimorLeste","Togo","Tokelau","Tonga","TrinidadAndTobago","Tunisia","Turkey","Turkmenistan","TurksAndCaicosIslands","Tuvalu","Uganda","Ukraine","UnitedArabEmirates","UnitedKingdomOfGreatBritainAndNorthernIreland","UnitedStatesMinorOutlyingIslands","UnitedStatesOfAmerica","Uruguay","Uzbekistan","Vanuatu","VenezuelaBolivarianRepublicOf","VietNam","VirginIslandsBritish","VirginIslandsUS","WallisAndFutuna","WesternSahara","Yemen","Zambia","Zimbabwe","getCountryNameByCode","code","keys","find","key","replace","trim","BaseApiUrl","LoginApiUrl","subroot","objects","block","blocks","dashboard","dashboards","settings","debugSettings","StorageBlocksPath","dashboardId","StorageBlockPath","blockId","StorageSettingsBlockPath","StorageDashboardsPath","StorageDashboardPath","CreateDashboardPath","DefaultDashboardPath","DeleteDashboardPath","DashboardSettingsPath","AcceptedCountries","MarketDataEntitlementTypes","DefaultEntitlementsItem","AccountNumber","ApprovedUserMarketDataEntitlementType","ApprovingUserName","FirstName","LastName","PrimaryAccountIdAssociatedWithUser","RequestDateTime","RequestedMarketDataEntitlementType","UserId","UserLevel","UserName","Id","Undefined","ProfessionalUser","NonProfessionalUser","DelayedQuotesOnlyUser","OptionExpirationType","ExpirationType","ReleaseNoteIssueTypes","UserLevelTypes","AssetSymbolUndefinedException","error","message","AccountIdException","AlertStatusTypes","AllReleaseNoteIssueTypes","NewFeature","Improvement","BugFix","MarketHoliday","TechnicalAlert","OperationsAlert","CorporateActionAlert","AllUserLevelTypes","Admin","Branch","Firm","Region","Rep","SizeType","Active","Inactive","OrderStrategyTypeId","OrderStrategyType","DefaultGridLayout","breakpoint","lg","columns","gridColumnsSmall","gridColumnsMedium","gridColumnsLarge","width","ExpiredTokenCode","State","OrderStatuses","New","PartiallyFilled","Filled","DoneForDay","Cancelled","Replaced","PendingCancel","Rejected","PendingNew","Expired","PendingReplace","Saved","Initiated","ReplaceInitiated","CancelInitiated","CancelRejected","ReplaceRejected","Acknowledged","PartiallyCancelled","SymbolTypes","index","stock","ResponseCodes","0","description","98","99","100","101","102","103","104","105","106","107","108","109","110","111","112","113","114","119","200","202","207","208","209","211","300","301","lodash_default","a","302","305","307","390","500","501","502","503","504","505","506","507","508","509","510","511","512","550","600","702","DashboardInfoSchemaFields","es","title","isDeleted","notRequired","dataLastFetchedOn","LayoutSchemaFields","i","x","y","w","h","minW","maxW","minH","maxH","moved","static","isDraggable","isResizable","DashboardConfigurationSchemaFields","presetBlocks","UiSettingsSchemaFields","afterHoursTrading","muteAllSounds","showBannerSymbols","bannerSymbols","balancePollingThrottleMs","cashieringPollingIntervalMs","cashieringPollingInterval","cashieringPendingReminderInterval","cashieringPendingReminderMaxAttempts","hotkeys","DashboardInfoSchema","BlockInfoSchemaFields","required","groupId","TabOptionsSchemaFields","active","BlockSchemaFields","oneOf","subscriptions","quotes","tabs","BlockLayoutsSchemaFields","md","sm","xs","xxs","BlockConfigurationSchemaFields","layouts","data","autoFocus","BlockGroupSchemaFields","symbol","BlockConfigurationSchema","BlockGroupSchema","AssetSymbolSchemaFields","of","groups","provider","StateSync","ExpirationRules","DirectionRules","StrikeRules","AllStates","Alabama","Alaska","Arizona","Arkansas","California","Colorado","Connecticut","Delaware","DistrictOfColumbia","Florida","Hawaii","Idaho","Illinois","Indiana","Iowa","Kansas","Kentucky","Louisiana","Maine","Maryland","Massachusetts","Michigan","Minnesota","Mississippi","Missouri","Montana","Nebraska","Nevada","NewHampshire","NewJersey","NewMexico","NewYork","NorthCarolina","NorthDakota","Ohio","Oklahoma","Oregon","Pennsylvania","RhodeIsland","SouthCarolina","SouthDakota","Tennessee","Texas","Utah","Vermont","Virginia","Washington","WestVirginia","Wisconsin","Wyoming","SpreadType","pagesTranslations","fieldsTranslations","TradingBlockLegacyUrlEnum","TradingBlockUrlEnum","UIClientTypes","application","mobile","protectedTranslationKeys","translations_formatTranslationsData","formatTranslationsData","expandedKey","reduce","acc","val","includes","isString","defineProperty","en","pages","fields","errors","Error","Label","Text","AllLanguageTypes","Spanish","Chinese","allTranslations","zh","translations_getLocalizeOptions","languageTypes","languageNamesByKey","mapValues","l","n","languages","map","renderInnerHtml","renderToStaticMarkup","server_browser","UserProfileLevel","UserRole","SecurityQuestionType","MarketDataEntitlementTypeId","TradingBlockLegacyUrlsLookup","AchRelationshipPdfApplicationUrl","TB_CRS","MB_CRS","ETFDisclosureUrl","LegacySiteHomeUrl","LegacySiteLoginUrl","LegacySitePwdResetUrl","RiskDisclosuresUrl","RisksOfOptionsUrl","RisksOfDayTradingUrl","ServicesAgreementUrl","TradingBlockUrlsLookup","HomeUrl","VideoTourUrl","CustomerServiceUrl","OpenNewAccountUrl","TBFeesUrl","MBFeesUrl","isCustomStrategy","value","info","Name","isKnownStrategyType","isStrategy","strategy","stratName","isNil","s","toLower","util_getGroupedCountryOptions","sortBy","filter","c","indexOf","isResponseCodeDescription","get","__webpack_require__","d","__webpack_exports__","DashboardSymbolPicker","_ref","_ref$placeholder","placeholder","_ref$clearOptionsOnSe","clearOptionsOnSelect","focus","search","useSymbolSearch","symbolValue","settingsUpdater","useDashboardSettingsUpdater","useDashboardSettings","symbolQuote","useQuote","autoCompleteValue","useMemo","SymbolToOption","rest","buttonStyle","marginLeft","marginRight","marginTop","borderColor","borderWidth","borderRadius","borderStyle","padding","react_default","createElement","Fragment","length","style","lib","pillStyle","backgroundColor","onClear","minimumLength","limit","onBlur","onSelect","updateSettings","objectSpread","Array","from","Set","toConsumableArray","debounceTimeout","charLimit","rootPortalId","className","textDecoration","display","onClick","symbol_","newList","clearSymbolFromList","GenericField","label","usePortalForSelect","_useFormikContext","useFormikContext","setFieldValue","formikErrors","fieldprops","objectWithoutProperties","toggleOpposite","_","onChange","useCallback","e","defaultLabelId","fieldIdWithError","defaultQuantityForOptionsAndStrategies","defaultQuantityForShares","global","feedSyncIntervalMs","formik_esm","_ref2","form","props","startCase","onchange","every","o","isObject","menuPortalTargetId","checked","DashboardSymbolPicker_DashboardSymbolPicker","buildGenericRequestReceiveActions","REQUEST","RECEIVE","ERROR","CashieringEventActions","cashieringPendingSearchRequest","cashieringPendingSearchReceive","cashieringPendingSearchError","beginPollingForPending","createStandardAction","stopPollingForPending","AdminActions","AdminAccountActions","AdminAlertActions","AdminCashieringActions","AdminClientActions","AdminAccountManagementActions","AdminEntitlementsActions","AdminApplicationActions","buildApiActions","SymbolActions","requestWarning","receiveWarning","errorWarning","LifecycleActions","loadInitialData","Actions","AccountActions","signout","receiveCurrentAccountDetails","requestToken","receiveToken","refreshToken","requestSettings","receiveSettings","setClientVersion","clientVersionMismatch","setSettings","toggleSettings","setOrigin","requestInitialAccountBalances","requestAccountBalances","fetchBalances","receiveAccountBalances","requestBalancesForWithdrawal","fetchBalancesForWithdrawal","receiveBalancesForWithdrawal","requestLinkedAccountBalances","fetchLinkedAccountBalances","receiveLinkedAccountBalances","requestSubAccountBalances","fetchSubAccountBalances","receiveSubAccountBalances","requestPendingTransfers","fetchPendingTransfers","receivePendingTransfers","requestAccountHistory","receiveAccountHistory","requestAccountPnL","receiveAccountPnL","requestAccountOrders","receiveAccountOrders","requestMoreAccountOrders","setOrdersRequestPageIndex","setOrdersRequestPageSize","QuoteActions","setQuotes","PERSIST_DASHBOARDS","PersistActions","dashboardsFinished","favorites","ADD_DASHBOARD","UPDATE_DASHBOARD","DashboardAddUpdateActions","addDashboard","addEmptyDashboard","updateDashboard","DashboardActions","requestDashboards","receiveDashboards","setDashboard","BlockActions","requestBlocks","receiveBlocks","noBlocks","addBlock","addOrUpdateBlock","updateBlock","removeBlock","setBlocks","highlightBlocks","highlightGroup","clearHighlightedBlocks","addQuoteSubscription","setQuoteSubscription","linkBlock","unlinkBlock","setColoredLink","SharedBlockGroupActions","SetSymbolAndReset","BlockGroupActions","addGroupLeg","setGroupSymbol","createOrderFromGroup","GridActions","toggleLocked","toggleLinking","FeedActions","addSpread","removeSpread","addQuote","removeQuote","updateQuotes","feedClosed","feedErrored","connected","requestExpirationAction","requestStrikeAction","fetchStrikes","ExpirationStrikeActions","receiveExpirations","requestStrikes","receiveStrikes","QuoteDataActions","DataQuoteActions","DataActions","requestPositions","fetchingPositions","receivePositions","NotificationActions","add","hide","read","view","FavoriteActions","addFavorite","remove","request","receive","LayoutActions","setBreakpointAndColumns","setLayouts","setAllLayouts","OptionChainActions","setStrikeCount","requestOptionChainError","requestOptionExpirations","receiveOptionExpirations","requestOptionChain","receiveOptionChain","SessionActions","expired","resetError","UIActions","setDashboardDrawerOpen","toggleLockDashboard","setSubAccountFilterId","HistoryActions","EnvironmentActions","PageActions","SettingsActions","OrderActions","CashieringActions","InfoDataActions","AccountManagementDataActions","LinkedAccountsActions","AccountStatementsActions","module","exports","p","requestDailyAccountStatements","receiveDailyAccountStatements","errorDailyAccountStatements","requestMonthlyAccountStatements","receiveMonthlyAccountStatements","errorMonthlyAccountStatements","requestTaxAccountStatements","receiveTaxAccountStatements","errorTaxAccountStatements","requestDividends","receiveDividends","errorDividends","requestEarnings","receiveEarnings","errorEarnings","fetchingQuotes","requestQuote","receiveQuote","requestQuoteExtended","receiveQuoteExtended","errorQuoteExtended","QuoteDataToPartialQuote","quoteData","LastTradePrice","IsSettlementSet","ClosePrice","ClosePriceTMinus2","BestPriceCalculated","ChangePercentage","LastOrClosePrice","NetChange","Open","Symbol","UnderlyingSymbol","AskPrice","BidPrice","Multiplier","Description","positionToPerformance","position","feedQuote","ask","bid","change","changePercent","cost","CostBasis","OptionMultiplier","lastTradePrice","bestTradePrice","ValueBasis","quantity","OpenQuantity","toAssetSymbol","AssetTypeToSymbolType","rootSymbol","underlyingSymbol","gain","close","prevClose","getBestPrice","last","defaultValue","isSettlementSet","currentValue","changeCalculation","calculatedCost","calculatePositionCostValue","OpenPrice","Commission","calculatedChange","calculatedChangePercent","MoneyMarket","aggregatedSymbolPosition","positions","positionInfo","res","pos","quote","q","aggregated","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_objectSpread__WEBPACK_IMPORTED_MODULE_1__","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__","aggregatedSymbolQuote","sharesPositions","Equity","MutualFund","sumNumbers","pi","Option","shares","sharesSum","isEmpty","clients","utilities_createAxiosClient","url","token","client","axios_default","create","baseURL","headers","Authorization","esm","retries","retryCondition","isNetworkOrIdempotentRequestError","response","status","shouldResetTimeout","retryDelay","retryCount","retry_after","console","log","onRetry","requestConfig","utilities_formatUrl","querystringParams","delim","params","lib_default","stringify","indices","getIdNumber","toNumber","DateFormats","ApiFormat","DateTimeApiFormat","utilities_dateStringOrUndefined","dateOrString","format","dateValue","dayjs_min_default","toDate","toISOString","isInfinity","isExpiredToken","isOrderUpdate","isQuote","isSettlement","getOrderStatus","types_dist","k","v","toApiResponse","legacyResponse","payload","Payload","ResponseCode","Errors","ApiClient_ApiClient","ApiClient","rootUrl","authKey","classCallCheck","this","http","config","createClass","onResponse","onResponseError","interceptors","use","path","tslib_es6","regenerator_default","mark","_callee","combinedConfig","wrap","_context","prev","next","abrupt","then","stop","_callee2","_context2","responseType","_callee3","_a","queryParams","_context3","post","_callee4","_context4","put","ApiClient_UiApiClient","UiApiClient","withCredentials","func","_callee5","_context5","_callee6","_context6","blockUtilities_getMinBlockSize","minWidth","lodash","Math","max","blockUtilities_getDefaultBlockSize","isInvalidLayout","min","size","pnlHistory","api","apiResponse","sanitizedPnLItems","constants","sent","Items","closeAmount","Number","CloseAmount","closeOrderId","CloseOrderId","costBasis","dateClosed","DateClosed","dateOpened","DateOpened","openOrderId","OpenOrderId","Quantity","RequestHeaders","accounts","_this","all","authenticated","acctId","t0","warn","subaccounts","details","searchRequest","result","update","holder","getUpdate","confirm","confirmUpdate","getUserUpdates","_callee7","startDate","endDate","_context7","getUserUpdateDetails","_callee8","updateRequest","_context8","updateId","getUserAccountDetails","_callee9","_context9","firmApproveUpdate","_callee10","_context10","firmRejectUpdate","_callee11","_context11","entitlements","_callee12","_context12","jsonEncode_encode","source","crypto_js_default","AES","encrypt","JSON","toString","JwtUtilities_verify","clientType","algorithms","ignoreExpiration","clientTypes","isArray","Promise","resolve","reject","jsonwebtoken_default","verify","err","_jwt","expected","join","httpOptions","auth_auth","logout","_wrapRegExp","re","BabelRegExp","_RegExp","wrapNativeSuper","RegExp","_super","prototype","_groups","WeakMap","call","set","buildGroups","g","inherits","exec","str","substitution","args","push","apply","arguments","extend","customParseFormat_default","WebsocketFeedParser_WebsocketFeedParser","WebsocketFeedParser","ind","int","parseInt","float","parseFloat","success","getMessageType","typeVal","metadata","raw","parseExpiredTokenMessage","Code","DuplicateLogin","Unknown","Reason","isValid","parseQuote","QuoteTime","SymbolUtilities_isOCCSymbol","OrderUtilities_toRawOccSymbol","Volume","BidSize","AskSize","parseOrderUpdate","AccountId","OrderId","OrderTime","OrderQuantity","FilledQuantity","OrderPrice","OrderStatus","Expiration","CallPut","Strike","parseSettlement","CloseDate","parseHeartbeat","parseMap","HeartBeat","OrderUpdate","ExpiredToken","Spread","parseUnknown","Settlement","parse","parser","split","vv","matchVal","match","fieldkey","fieldvalue","_matchVal$groups","fKey","isNaN","logger_logger","subname","browser","SymbolUtilities_AssetTypeToSymbolType","assType","Index","SymbolUtilities_isIndex","first","SymbolUtilities_isIndexSymbol","assetType","symbolType","partSymb","SymbolUtilities_toAssetSymbolBySymbolType","occParseRegex","occSymbol","deriveRootSymbol","SymbolUtilities_deriveOptionExpirationType","toLocaleLowerCase","PM","AM","SymbolUtilities_isSymbolEqual","one","two","SymbolUtilities_parseOccSymbol","callput","price","expiration","Date","Put","Call","strike","strikeValidator_minStrike","legs","strikeValidator_maxStrike","strikeValidator_tryValidateRules","rule","strikes","isNumber","getStrikeErrors","sch","keyword","strikeValidator_buildStrikeErrors","getErrors","strikesShouldBeDifferent","DifferentStrikes","DifferentStrikesDescending","optionLegs","uniq","EquidistantStrikes","distances","currVal","nextVal","vals","dist","_isValid","hasDuplicateLegs","OrderUtilities_findDuplicateLegs","IronCondor","IronButterfly","K1","K2","K3","K4","isButterfly","isCondor","SameStrikes","CallHigherThanPut","putLeg","callLeg","callPutErrors","putVal","callVal","isFinite","IncreasingOrder","DecreasingOrder","isInc","prevStrike","EquidistantStrikesByTwos","firstGroup","take","firstDiff","secondGroup","drop","secondDiff","LowestCallEqualsHighestPut","LowestCallGreaterThanHighestPut","strikeValidator_validateRules","directionValidator_tryValidateRules","actions","Action","DifferentDirections","SameDirections","Butterfly","actionCounts","countBy","_isValid2","Buy","Sell","legsBySpreadRatio","SpreadRatio","highestSpreadRatioLeg","otherLegs","isValidLegs","Condor","_actionCounts","_isValid3","legsByStrike","middleTwoStrikes","slice","middleTwoStrikesActions","isValidStrikes","Iron","callLegs","putLegs","callActions","putActions","directionValidator_validateRules","strategyValidator_SchemaValidator","initial","ajv","ajv_default","allErrors","addKeyword","compile","strikeValidation","rules","ruleErrors","strikeValidator_strikeValidation","directionValidation","directionValidator_directionValidation","validate","ratios","shareRatio","optionRatios","getError","HundredToOneToOne","HundredToOne","optRatio","OneToOne","OneToOneToOneToOne","OneTwoOne","spreadRatioValidation_validateSpreadRatio","validateExpiration","SameExpiry","expirations","DifferentExpiries","_optionLegs","_expirations","rootSymbols","BuyWithLaterSellWithSooner","buyLeg","sellLeg","buyExpiration","sellExpiration","isAfter","metaSchema","strategyValidator_tryValidate","schema","validationRes","valid","errorMessage","errorsText","validation_orderSchemaBuilder","optionType","baseOccPattern","orderClass","legSchema","spreadRatio","moreProperties","merge","Direction","properties","const","Duration","enum","GTC","Day","Manual","Legs","minItems","maxItems","items","sizeRatio","action","requiredFields","isSpread","NA","anyOf","Close","validation_legSchemaBuilder","ratio","_MarginRequirements","_profile","_MarginRequirements2","_profile2","_MarginRequirements3","_profile3","_MarginRequirements4","_profile4","_MarginRequirements5","_profile5","_MarginRequirements6","_profile6","_MarginRequirements7","_profile7","_MarginRequirements8","_profile8","_MarginRequirements9","_profile9","_MarginRequirements10","_profile10","_MarginRequirements11","_profile11","_MarginRequirements12","_profile12","_MarginRequirements13","_profile13","_MarginRequirements14","_profile14","_MarginRequirements15","_profile15","_MarginRequirements16","_profile16","_MarginRequirements17","_profile17","validation_buildValidationSchemas","legsDef","profile","legSchem","additionalRules","Rules","buySchema","sellSchema","Bidirectional","ll","validation_tryValidateOrderForStrategy","order","schemas","_ref3","validationResults","inverseValidationResults","slicedToArray","sell","results","buy","Shares","LegsAmount","Strikes","PermissionLevel","SvgPath","IconKind","Single","Strength","Bull","Bear","isLimitOrder","offerPrice","isIRA","CoveredCall","Multileg","MarriedPut","CallCalendar","BidirectionalDebitCredit","Icon","Any","legsArray","PutCalendar","CallVertical","strikeDiff","abs","_margin","PutVertical","_margin2","CallButterfly","PutButterfly","Straddle","Volatility","K","Strangle","CallCondor","PutCondor","CallFirstPutsSecond","Strategies","IndexStrategies","CustomStrategy","isDayjs","lookup_convert","data_2012_2022","localizedFormat_default","utc_default","DateUtilities_getLocalDateFromTimezone","tz","timeZone","dateVal","localDate","timezone_support_dist","DateUtilities_getExpirationType","monthlyExpiration","dayOfWeek","weekOfMonth","firstDayOfMonth","firstDayOfWeek","weeksToAdd","isBefore","DateUtilities_getWeekdayOfMonth","isSame","Monthly","Weekly","DateUtilities_formatExpiration","dto","isWeekly","ExpirationFreqCode","isQuarterly","Quarterly","optionExpirationType","Time","RootSymbol","DateUtilities_toExpiration","DateUtilities_toShort","DateUtilities_ToUtcMidnight","DateUtilities_isBetweenInclusive","DateUtilities_isDateBetweenExclusive","DateUtilities_isBefore","curr","compDate","DateUtilities_TodayDate","hour","DateUtilities_isToday","Intl","DateTimeFormat","resolvedOptions","OCCSymbolToOptionData","OrderUtilities_DeriveLegAssetType","leg","OrderUtilities_GetOCCSymbol","symbolData","prefixSymbolName","otype","strikeVal","OrderUtilities_orderLegOccSymbol","OrderUtilities_toPrefixedOccSymbol","AllStrategies","OrderUtilities_getStrategy","OrderUtilities_getKnownStrategy","OrderUtilities_transformForApi","orderDesc","transformedOrder","kind","SubaccountId","subaccountId","effect","ClientRefId","referenceId","orderType","Price","Stop","AllOrNone","DebitCredit","Debit","OccSymbol","transformOrderForApi","OrderUtilities_getCallPutValue","legSymbol","symInfo","ordLegs","isPartialOrderWithLegs","_RatioForPrice","OrderUtilities_transformFromApi","OrderUtilities_getDurationFromCode","duration","OrderUtilities_BuildInitialOrder","partOrd","legAction","orderAction","positionEffect","OrderUtilities_buildOrderLeg","OrderUtilities_getNextLegId","existingLegs","uniqueId","orderToReplaceOrder","valOrUndef","OrderUtilities_FilterOrderByDate","orders","endDateVal","OrderUtilities_TodaysFilledOrders","OrderUtilities_OnlyFilledOrders","OrderUtilities_GetSymbolsFromOrders","orderSymbols","union","orderutility","toOrderLegsWithMetaData","flatMap","toOrderLegWithMetaData","OrderUtilities_isSymbolExpired","symbData","valueOf","getDefaultOrderQuantity","OrderUtilities_getCustomStrategyLegQuantity","partialLegs","currInd","eInd","isEqual","orderBuilder_LegBuilder","LegBuilder","expVal","dayjs_min","legState","act","_this$legState","OrderBuilderNoSymbolError","orderBuilder_OrderBuilder","OrderBuilder","ordDefaults","orderState","dirty","order_defaults","legBuilder","_this$orderState","legId","_strategy","strategyName","orderDefs","_symbol","defaultValues","RatioForPrice","toFixed","getLegMarketValueTotalForPrice","at","orderPrice_getAggregatedBidAsk","orderPrice_calculateOrderPrice","gcd","_option_legs","option_legs_keys","later_exp_option","earlier_exp_option","later_exp_option_quote","earlier_exp_option_quote","_bid","_ask","round","mid","totalMultiple","option_legs","maxRatio","legPrices","legQuote","legbid","legask","orderPrice_getLegBidAsk","shortLegs","longLegs","shorts","longs","bidValue","askValue","orderPrice_maxOrZero","orderPrice_getBestPrice","OrderStatusCategories","Cancellable","Replaceable","Executed","utility_isCalendar","pnl_pnlByPrice","priceBaseline","commission","PositionOnOpen","bestPrice","initialValue","pnl","commissionValue","pnl_getAvgPrice","totalQuantity","LegFillQuantity","sum","avgPrice","AverageLegFillPrice","total","pnl_orderLegTradingPnL","roundPrecision","legGroups","isBuy","buys","sells","lastPrice","tradingPnLValue","profitloss_absVal","getProfitLoss","profit","allStrikes","Px","Qty","profitloss_getProfitValue","loss","profitloss_getLoss","base64url","encodedSource","enc","Base64","Encrypt","txtUserName","_key","Utf8","iv","getUTCFullYear","getUTCMonth","getUTCDate","GenerateIV","ciphertext","keySize","mode","CBC","pad","Pkcs7","String","getTokenRequest","username","apikey","bearer","header","typ","alg","_username","_password","_apikey","_bearer","user","EndUser","Entity","Timestamp","generatePayload","_header","_payload","toSign","HmacSHA256","generateSignature","GetToken","JWS","GetAvailableFunds","GetBalances","GetBalancesForAccounts","GetBalancesForWithdrawal","GetBars","opts","starttime","endtime","GetQuotes","symbs","cancelToken","CancelToken","symbols","GetQuotesExtended","GetQuoteDividends","range","GetEarnings","period","GetQuotesCharting","quote_quotes","extended","dividends","earnings","getChartingFeed","GetSymbols","query","querystringRequest","catch","Symbols","warnings","positions_get","isOption","PositionId","isMutualFund","meta","options_getExpirations","expDates","isExpanded","options_getStrikes","time","strikeMin","strikeMax","options_getChain","strikeCount","fetchGreeks","strikeParams","chainData","chainDataResults","strikesAroundMarket","pairs","opsymbol","expirationStrikes","exp","op","options_options","optionchain","history_history","sanitizedHistoryItems","recordDate","amount","fillPrice","fillQuantity","orderApi_httpOptions","_create","_change","_cancel","orderId","orderApi_getOrders","optionValues","omit","dateFrom","utc","dateTo","orderApi_order","_this2","req","cancel","Application","getUserRequirements","utilities","getHeardAbout","siteConfigId","getApplicationStatus","createUser","uploadDocument","file","tag","TakenOn","lastModified","FormData","append","ImageName","filename","uploadApplicationDocument","accountHolderId","documentType","uploadFormData","DocumentName","uploadInvestigationDocument","investigationId","createAccount","duplicateAccountCheck","UserCommands","GetNewsFeed","updatedSince","channels","information_create","releaseNote","information_info","page","pageSize","createAlert","alert","getActiveAlerts","getAlertTemplates","updateAlert","news","createReleaseNote","updateReleaseNote","releaseDate","summary","restrictedToUserLevel","entitlements_Entitlements","getPendingUserMarketDataEntitlements","getAccountDetails","approvePendingUserMarketDataEntitlement","pendingId","rejectPendingUserMarketDataEntitlement","downloads_RequestHeaders","Downloads","getDailyConfirms","startDateString","endDateString","getDailyConfirm","requestedDate","getBinary","getMonthlyStatements","getMonthlyStatement","getTaxDocuments","taxYear","getTaxDocument","GetBalanceHistory","HistoryGetBalances","nopass_RequestHeaders","nopass","loginStart","loginFinish","authId","authid","getDevices","deleteDevice","deviceId","getAuthHistory","TradingBlockApi_TradingBlockAccountApi","TradingBlockAccountApi","availableFunds","balances","history","availableWithdrawalFunds","tradingblockApis","ApiFactory","tb_api","withResponseHandler","auth","accountManagement","getForAccounts","getForWithdrawals","getToken","getBars","getSymbols","cashiering","ach","securityQuestion","transfers","transferInstructions","documents","getBalanceHistory","getBalances","downloads","information","AccountApiFactory","UiApiFactory","ObjectUtilities_GetUrlParams","href","chain","nth","fromPairs","isMoneyBlockSite","NODE_ENV","PUBLIC_URL","REACT_APP_SCHEMA_VERSION","REACT_APP_UI_API_URL","REACT_APP_TRADING_API_URL","REACT_APP_TRADING_API_WS_URL","REACT_APP_AUTH_REDIRECT","REACT_APP_LOGIN_URL","REACT_APP_APPLICATION_URL","REACT_APP_LIVE_URL","REACT_APP_VIRTUAL_URL","REACT_APP_DEBUG","REACT_APP_ENVIRONMENT","REACT_APP_GA_4_TRACKING_CODE","REACT_APP_VT_GA_4_TRACKING_CODE","REACT_APP_IS_VIRTUAL","REACT_APP_TB_SUBDIRECTORY","REACT_APP_USPS_ID","REACT_APP_USPS_SECRET","REACT_APP_USPS_BASE_URL","REACT_APP_TB_SITE_GROUP","REACT_APP_TB_RAYGUN_API","TB_SITE_GROUP","SiteUtilities_isMoneyBlockAccount","getSiteLogo","logo","GetSiteName","toLowerCase","DocumentUtilities_getRequestedParticipantsDocuments","investigations","applications","participants","forEach","requestedDocumentDetailEntry","participantIndex","findIndex","participant","requestedCatagories","categories","appCategories","cipCategories","uploadedDocumentsNames","document","activeDocumentCategories","category","uploadedDocumentName","requestedDocuments","clientRequest","clientReceive","clientError","setSearch","setPage","setPageSize","setSortBy","FeedReducer","quoteQueue","count","_action$payload","existingQuote","combinedQuoteValue","mergeWith","b","lastMessage","_action$payload2","settlement","_action$payload3","existing","FeedInitialState","FeedActionContext","React","createContext","FeedStateContext","FeedSendContext","send","getFeedActions","dispatch","setStatus","onQuote","onOrderUpdate","onSettlement","dropFromQueue","getQuoteSubscription","apiToken","subs","unsubscribe","headerValues","orderedSubscriptions","orderBy","ss","spreadDefinition","allSymbols","sym","isOCCSymbol","toPrefixedOccSymbol","QuoteFeedType","SpreadFeedType","OrderUpdateFeedType","getSubscriptionData","getOrderUpdateSubscription","sub","subscription","useFeedActions","useLog","useContext","trySend","cmd","ex","subscribeQuote","unsubscribeQuote","subscribeOrderUpdates","unsubscribeOrderUpdates","useSubscribedSymbolsContext","constate","_useState","useState","_useState2","getFeedSubscription","spread","feedValues","quoteValues","DataFeedInitializer","_useSubscribedSymbols","_useSubscribedSymbols2","subscribedQuotes","setSubscribedQuotes","_useFeedActions","useStateSelector","blocksSelectors","allBlockQuotes","feedProviderStatus","feedProvider","selectedAccountId","account","selectedLinkedAccount","useWhyDidYouUpdate","quotesToAdd","incoming","difference","quotesToRemove","useEffect","shouldAdd","shouldRemove","updatedSubscribedQuotes","QuoteRequestInitializer","useDispatcher","DataInitializer","_useStateSelector","AuthenticationInfoSelector","isAuthenticated","useDispatch","dispatcher","accountRoles","userRoles","isUGMA","isPartnership","loadUserData","CashieringApproval","DataFeedInitializer_DataFeedInitializer","authToken","QuoteRequestHandler_QuoteRequestInitializer","trySaveDashboards","asyncToGenerator","storage","save","_x","_x2","tryCreateDashboard","createDashboard","_x3","_x4","ActivityActionTypes","setTimeframe","toggleActivityPopover","isLegacyOrderGroupAction","legacyOrderGroupActions","addOrderLeg","handleOrderGroupChange","getType","dayjs","timezone","HOLIDAYS_DATA","earlyClose","isSameDate","date1","date2","isToday","returnMarketHoliday","now","MarketOpenTime","utcOffset","minute","second","millisecond","TimeTillClose","isDST","holiday","isMarketOpen","dayInterval","marketOpen","timeTillClose","isBetween","PreviewisMarketOpen","isTodayOrAfter","expirationToDayjs","expirationUnixTimestamp","expirationValue","getSimpleDateString","DisplayTimeTilClose","parsed","hours","minutes","isStartingDateIn1970","startingDate","formatDate","formatDateWithoutTime","cleanDatePart","cleanDateModel","getOrderActionForCalendar","orderLegs","currentOrderAction","some","latestExpirationLeg","latestExp","latestValue","orderstate","wrapped","withLegError","legError","OrderPreviewReducer","clear","setSymbol","removeLeg","ValidationActions","startValidation","finishValidation","setPositionInfo","setOptionType","setLegQuantity","setExpiration","setStrike","setOrderAction","setLegAction","setStrategy","reset","addOrderLegFromGroup","isOrderAction","isActionOf","classifyStrategy","orderLegsToClassifiedStrategy","isComplete","numLegs","isOrderComplete","validation","recalculatePrice","debitCredit","Credit","preview","enabled","DefaultOrderState","orderSettings","validStrategies","Limit","isDirty","isValidating","tables","emptyValidation","field","emptyValidValidation","reduceLeg","assetSymbol","getLegPosition","reduceLegs","existingLeg","BaseOrderStateReducer","legReducer","ActActions","startDateValue","startOf","endDateValue","endOf","dataState","strat","orderActionValue","isCalendarStrategy","errMap","updatedError","firstError","legIds","SymbolForLeg","orderPlaced","legsWithoutCurrent","legsStillExist","blockSettings","isSymbolEqual","combinedBlockSettings","resetOrder","defaultToEmptyCustomIfSymbolChanges","isLoaded","defaultStrategy","defaultStrategyForSymbol","OrderStateFactory","Build","DeriveLegAssetType","existingSymbol","legValues","_legs","legKeys","getOwnPropertyNames","laterLegIndex","getCalendarLegAction","getStrategiesForSymbol","isGroupHandlingAction","vs","orderLeg","UniqueId","getNextLegId","reinitialize","currentLegs","newLeg","baseData","orderStrategy","orderQuant","_state$data","_payload2","reverseLegs","isCustom","updatedLegs","validStrats","stopPrice","isInitializing","_state$data2","inverseAction","stateStrategy","getStrategy","setAllStrikes","toArray","updatedLeg","updateAllLegs","shouldUpdateLegStrike","isCalendar","updateAllOptionLegs","legMatchesId","legIsOptionAndAllShouldUpdate","shouldUpdateExpiration","legExpiration","_action$payload4","hasOneLeg","_action$payload5","setQuantity","setPrice","_action$payload6","negativePrice","priceValue","currentDebitOrCredit","debitValue","debitCreditValue","allSells","allBuys","isCalendarMatch","latestExpiringLeg","maxBy","orderPrice","setStopPrice","setDebitCredit","setSubaccountId","setOrder","OrderToOrderState","updateQuote","quotesArray","OrderStateReducer","initialOrderState","baseBlockState","isBlockAction","blockReducer","intermediateState","BlockTablesReducer","Initial","DefaultOrderBlockSettings","strategyOrStrategyName","reverse","getKnownStrategy","defaultLegs","BuildInitialOrder","PriceChartStateFactory","Settings","DefaultPriceChartSettings","OptionChainStateFactory","QuoteStateFactory","InfoStateFactory","FactoryMap","DefaultInfoBlockSettings","isBlockTypeAllowed","blockType","isVirtualEnv","getPresetData","blocksWithIds","allowedBlocks","newId","getBlocksWithIds","presetLayouts","blockLayout","breakpointLayouts","getDashboardPreset","dashboardConfig","equalSize","floor","full","equal","left","right","presetBlockData","layout","initialData","initSymbol","minSize","getMinBlockSize","presetBlockLayoutAndData","getCreateDashboardRequest","board","dashboardTemplateId","defaultDashboardsSelector","createSelector","defaultDashboards","dashboardSettingsSelector","environment","isVirtual","ui","defState","lgColumns","dc","getDashboardPresetsForRepCode","isFetching","useDefaultDashboards","useMount","requestDefaultDashboards","isLocalhost","window","location","host","LoginRedirectUrl","Config","isProduction","authRedirect","EditDashboardModal","show","onSave","onDelete","onClose","validateOnMount","confirmDelete","setConfirmDelete","dashboardTitlesExcludingCurrent","useSelector","dashboardsSelectors","dashboardTitlesExcludingId","onValidate","onSubmit","cleanValues","onDeleteClick","initialValues","headerText","validateOnChange","enableReinitialize","handleSubmit","setShow","Modal","Header","onHide","closeButton","Title","Body","FormGroup","alertType","warning","component","TextboxField","Footer","Button","variant","confirmDeleteValue","onDeleteConfirmClick","DashboardItem","isSelected","isLocked","openInNewWindow","onSelectBoard","onSaveBoard","onDeleteBoard","children","showEditBoard","setShowEditBoard","onKeyDown","keyCode","preventDefault","stopPropagation","body","addEventListener","removeEventListener","onKeyPressHandler","getClassNames","role","tabIndex","onKeyPress","EditDashboardModal_EditDashboardModal","DashboardPresetCarousel","_useDefaultDashboards","_useDefaultDashboards2","selectedBoard","setSelectedBoard","dashboardTitles","onBoardSelected","saveValue","infinite","speed","slidesToShow","slidesToScroll","initialSlide","responsive","CarouselResponsiveOptions","DashboardItem_DashboardItem","origin","originSel","TradingBlockLink","originVal","SiteName","originValue","defaultDashboard","DashboardDrawer","isOpen","toggleIsOpen","store","useStore","_useDispatcher","notifications","useAlerts","userDashboards","currentDashboardId","showAddBoard","setShowAddBoard","canDeleteUserDashboard","exchangeBoards","t","onAddBoard","dashboardInfo","setAsActive","onUpdateBoard","onSelectPresetDashboard","newBoard","createRequest","dashboardSaved","onSelectExchangeDashboard","SiteName_SiteName","TradingBlockLink_TradingBlockLink","to","DashboardPresetCarousel_DashboardPresetCarousel","IsVirtualEnvironment","useVirtualTrading","InitialState","isExpired","dataEntitled","nickname","isFetchingHistory","isFetchingOrders","shouldLoadMoreOrders","orderErrorEvents","ordersUIState","showAccountSwitcher","hasMultipleAccounts","isSelectedLinkedAccountLoaded","accountDetails","balanceHistory","accountData","accountsBalances","subAccountsBalances","linkedAccounts","isLoading","accountManagementDetails","pendingAccountManagementUpdates","isPollingForPending","security","devices","authHistory","authenticationTimeout","Session","inactivityTimeout","loaded","locked","linking","isFetchingInitial","blockTypeSettings","DefaultOptionChainBlockSettings","DefaultPositionsBlockSettings","DefaultFavoriteBlockSettings","quoteMetadata","quoteExtended","bySymbol","forms","isSaving","transfer","achRelationships","entities","isFetchingBalances","isFetchingEntities","private","balancesForWithdrawal","updates","byQuery","sortByOrder","currentItem","isAccountFetching","accountInfo","isUpdated","documentUpdate","alerts","investigation","relationships","relationshipDetails","transferDetails","recipientBanks","wireInstructions","wireInstructionsDetails","entityUpdatesExist","entitlementItems","warningSymbols","drawerIsOpen","subAccountFilterId","performance","totals","positionValue","accountValue","tradedToday","trading","pnls","activeAlerts","releaseNotes","releaseNoteUpdate","marketNews","isPollingForMarketNews","accountStatements","dailyStatements","dataStartDate","dataEndDate","monthlyStatements","taxStatements","DashboardSettings","toggleModal","_useDashboardSettings","initialSettings","shouldResetSettings","setShouldResetSettings","_useState3","_useState4","shouldDisableSubmit","setShouldDisableSubmit","_useState5","_useState6","submitBtnDisabled","setSubmitBtnDisabled","_useState7","_useState8","submitBtnRef","setSubmitBtnRef","initialUiState","defaultDashboardSettings","approvedSettingsReset","tryReset","setSubmitting","onCancel","canViewCashieringAdmin","hasCashieringAdminPermission","genericNumberInputValidationSchema","Yup","transform","nullable","positive","integer","feedSyncIntervalMsInputErrorMsg","feedSyncIntervalMsInputValidationSchema","validationSchema","shape","_ref4","content","paddingLeft","ref","node","disabled","justifyContent","click","localStorageProvider","LocalStorageProvider","DebugSettings","_useDebugLevel","apiStore","debugLevel","setDebugLevel","level","debugLvl","setLogLevel","useDebugLevel","_useDebugLevel2","clientVersion","uiApiTokenAndVersion","version","initialvalues","debuglevel","_useReduxConfiguratio","setLoaded","enableRedux","setEnableRedux","LocalStorageKey","useReduxConfiguration","onDevToolsChange","previous","current","modifier","callback","AdminLinks","text","secondaryUrl","icon","roles","getAdminLinks","userLevel","al","hidden","canAccessAdminLink","UsernameAndEnvironment","userName","TradingEnvironment","getEnvironmentName","LogoutLink","timeout","Logout","clearTimeout","setTimeout","GetLogoutUrl","fontWeight","color","ToggleVirtualTradingButton","liveTradingUrl","virtualTradingUrl","onToggleClick","toggleIsVirtual","DashboardMenu","toggleMenu","uiApiTokenExpiresAt","untilTime","firstAndLastName","accountNickname","siteGroup","adminLinks","showSettings","useShowSettings","useShowAccountSwitcher","toggleAccountSwitcher","DebugSettings_DebugSettings","DashboardSettings_DashboardSettings","UserNameAndEnvironment_UsernameAndEnvironment","LogoutLink_LogoutLink","ToggleVirtualTradingButton_ToggleVirtualTradingButton","target","react_router_dom","seconds","formatted","until","intervalTime","schemaVersion","bottom","fontSize","NotificationWrapper","onClickAway","popoverRef","useRef","useClickAway","DashboardNotification","notificationClass","setClickedTarget","handleClickAway","handleClick","event","filterReadNotifications","filterHiddenNotifications","sortedNotifications","containerRef","targetRef","Overlay","container","placement","Popover","NotificationWrapper_NotificationWrapper","DashboardNotification_TradeOrderPopover","notification","TradeOrderPopover","hideNotification","ClientNotifications","getNotifications","isDisabled","DashboardNotification_DashboardNotification","optionToDetailString","_orderLegToDetails","orderLegToDetails","strikePrice","_OCCSymbolToOptionDat","deriveOptionExpirationType","isErrorActivity","formatOrderPrice","formatNumber","currency","stopValue","prefix","orderTypeString","Market","Stop_Limit","Stop_Market","Market_On_Close","orderTypeToString","isCancelledOrderStatus","orderStatus","isPartialOrderStatus","isFilledOrderStatus","isNewOrPartialOrderStatus","isNewOrderStatus","formatOrderLeg","showSymbol","detailFormattor","OrderStatusToString","orderToMessage","isOrderNotification","not","getOpenOrdersCount","getOrders","subAccountId","orderErrors","orderAct","orderApiStatus","activityDate","errorAct","createdOn","filtered_messages","filterOrderMessages","received","getOrdersByBlockId","getSpecificOrderMessages","areOrdersLoaded","OrderDetails","AverageFillPrice","createCachedSelector","accountIdValue","ordersExist","accountIsFetching","blocksFetchingInitial","getActivityOrderSymbolsWithoutExpired","symb","toRawOccSymbol","isSymbolExpired","getPositionAndOrderSymbols","PositionSymbolsSelector","positionSymbols","TradeOrderNotifications","orderCount","TradingStatusIconButton","cssClasses","TradingStatusIcon","onAddBlock","feedInfo","_s$feedProvider","isReconnecting","isClosed","isConnected","isError","isWarning","isPending","onAddOrHighlightBlockType","GetTradingBlockSiteName","TradingStatus_TradingStatusIconButton","before","relativeTime","DashboardMarketClosedCountdown","objectDestructuringEmpty","latestReceivedDate","latestReceivedTime","entitlement","nowHours","getHours","countdownTitle","marketClosed","marketOpens","quoteDataAsOf","fromNow","requestAccountEntitlement","requestAlertMessages","intervalId","setInterval","clearInterval","Logo","setBlockQuotes","symbolVal","quotesToFetch","allQuotes","fetchAndSubscribe","subscribe","useQuoteActions","useBlockState","setFeedQuotes","useQuoteSubscription","stringSymbols","useQuoteFeedSubscription","useQuoteSymbolSubscriptionFromGlobalState","selector","useQuoteSymbolSubscription","getSymbol","useBlockSelector","centeringStyle","alignItems","widgetSymbolsStyle","DashboardSymbolWidget","getQuoteMetadata","changePercentStyle","widgetContainerStyle","flexDirection","widgetCells","autoScrollToEnhanced","element","notChangedStepsCount","scrollInterval","scrollIntoView","behavior","inline","documentElement","scrollTop","innerHeight","scrollHeight","DashboardNavigation","menuRef","menuOpen","toggleDrawer","_useAuthenticationSel","useAuthenticationSelector","accountCanAccessCashiering","showAddBlock","setShowAddBlock","accountIsIRA","accountIsUGMA","accountIsPartnership","isDashboardLocked","selectedLinkedAccountId","subtitle","dev","beta","availableBlockTypes","currentBlockLength","newBlock","generateNewBlock","blockReference","querySelectorAll","classList","targetIsToggle","isChildNodeOfElement","isChildNodeOfModal","height","innerWidth","dimensions","setDimensions","viewPortResponse","handleResize","mobileBannerStyle","overflow","paddingRight","marginBottom","overflowX","elem","querySelector","calculateElementOffset","getBoundingClientRect","bannerValidation","bannerSymbols_","Logo_Logo","DashboardMarketClosedCountdown_DashboardMarketClosedCountdown","aria-hidden","TradingStatus_TradingStatusIcon","TradeOrderNotifications_TradeOrderNotifications","ClientNotifications_ClientNotifications","DashboardSymbolWidget_DashboardSymbolWidget","opacity","transition","toggleId","blockTypes","onAdd","DashboardContentWrapper","highlightBlockIds","highlightedAt","timeoutMs","highlightTimeoutMs","timeoutId","defaultDimensions","widthClassName","heightClassName","useBboxDimensions","_useBbox","bbox","setBbox","currBbox","updateTimeout","resizeObs","resizeObserver","observe","disconnect","useBbox","_useBbox2","windowSize","useWindowSizeContext","newDimensions","bboxWidth","bboxHeight","useBlockSize","widthOrHeight","defaultDataTableState","pageIndex","columnOrder","defaultAdminAccountManagementState","isAdminAccountManagementTable","blockTableStateSelector","tablesState","useBlockTable","BlockStateContext","initialState","useBaseBlockActionDispatch","setTable","table","BlockTableActions","setTableState","persist","BlockTableContent","onSizeChanged","onSort","tableKey","onPage","onPageSize","pageCount","getColumnOrder","expandRows","useParentSizeContext","_useBboxDimensions","_useBboxDimensions2","tableWidth","getTableSize","useBlockTableSize","blockTableState","handleonSort","sorts","handleOnColumnOrderChanged","useBlockId","tableState","handleOnPage","handleOnPageSize","onColumnOrderChanged","BlockTable","Provider","BlockTableContent_BlockTableContent","useOrderBlockSettings","useOrderSettings","useOrderState","useOrderData","useOrderSymbol","_useGroupState","useGroupState","useOrderSymbolOrUndefined","_useGroupState3","useOrderAssetSymbolOrUndefined","_useGroupState5","getOrderLegPrices","OrderSelectors","actionForPrice","GCD","calculateOrderPrice","selectorCreator","createDeepSelector","getOrderQuotes","orderLegSymbolSelector","createDeepArraySelector","orderLegOccSymbol","sort","orderBlockSymbols","legSymbols","symbolValues","orderDataSelector","useOrderPriceRawValues","useOrderDataSelector","LegSelector","LegsByOCC","_useOrderData","isCallVerticalMatch","isPutVerticalMatch","isCoveredCallMatch","isCallButterflyMatch","isPutButterflyMatch","isIronButterflyMatch","isIronCondorMatch","isCallCondorMatch","isPutCondorMatch","lowerStrikeLeg","minBy","shareLeg","orderLegPrices","marginCost","tradingStrategy","MarginRequirements","marginCostFormula","actionValue","marketPrices","useOrderPrice","useOrderBlockData","OrderSymbolListValues","uniqueQuoteSymbols","includesAllSymbols","areArraysEqual","_useOrderPriceRawValu","useOrderActions","useOrderDebug","useGroupAssetSymbol","_useBlockActionDispat","useBlockActionDispatchAndGenericActions","_useBlockActionDispat2","_useBlockActionDispat3","updateData","setField","clearOrder","orderInfo","setIsDirty","updateStateData","updateCreditOrDebit","setMatchingStrategies","matchingStrategy","setAction","actionVal","changeSymbol","symbolMismatch","baseLegs","DefaultLegs","updatedData","SymbolName","updateField","IsWarningSymbol","audioSrc","require","useSounds","_useAudio","useAudio","src","_useAudio2","successAudio","successControls","_useAudio3","_useAudio4","errorAudio","errorControls","useOrderTotal","isMatchCalendarStrategy","latestExpiringOptionLeg","_useOrderDataSelector","_useOrderPrice","totalResults","limitPrice","debitOrCredit","execDebitOrCredit","calculateStrategyTotal","useOrderPreview","isPreview","setIsPreview","_useSounds","disableSounds","togglePreview","previewClosed","play","audio","getOrderPreviewLegs","hasMultipleLegs","legToDto","adjustOrderQuantitiesAndRatios","hcf","adjustedOverallQuantity","adjustedRatios","adjustedRatio","useOrderPreviewOrder","initialPrice","setInitialPrice","setOrderId","_useOrderActions2","setOrderCallback","isAboveAccountLevel","currId","isWarningSymbol","isTradingblockOrder","finalOrder","allOptionLegs","_adjustOrderQuantitie","_adjustOrderQuantitie2","finalizeOrder","BypassWarnings","Vertical","Calendar","changeSubaccountId","changeLimitPrice","changeStopPrice","changeDebitCredit","requestPlaceOrder","requestChange","ExpirationSelectors","_state","symbolExp","getStrikeState","expKey","StrikeSelectors","expirationsBySymbol","symbolStrikes","strikesBySymbol","anyFetching","strState","strikeValues","useOrderStatus","areFetchingExpirations","complete","loading","PriceComponent","valueFinalized","isCustomStrategyOrCalendar","displayValue","setDisplayValue","setPriceValue","priceInputNumberRef","formattedDisplayValue","endsWith","adjustPenny","adjustment","numericValue","cursor","unselectable","aria-label","aria-disabled","inputValue","regex","sanitizedInputValue","test","blur","PreviewLimitPrice","_useOrderPreviewOrder","PreviewStopPrice","PreviewOrderTotal","orderTotal","DebitCreditToggleButton","baseClass","handleOnClick","isActive","decisionPrice","on","off","onstyle","offstyle","DebitCreditToggle","canEditDebitOrCredit","DebitCreditToggle_DebitCreditToggleButton","PreviewDebitOrCredit","DefaultCommissionDetails","minCharge","ticketCharge","percentOfTrade","perShare","mutualFunds","calculateEstCommission","orderAssetQuantities","commissionDetails","isStockTicket","isOptionTicket","isMutualFundTicket","stockCommissionDetails","optionsCommissionDetails","mutualFundsCommissionDetails","sharesCommission","optionsCommission","mutualFundsCommission","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","iterator","done","return","sharesMinCost","optionsMinCost","mutualFundsMinCost","EstCommissionPreview","useApi","accountIdSelector","selectedAccount","_useSWR","useSWR","estCommission","EstCommissionPreviewRender","getColumns","accessor","quant","PreviewContent","isCancelOrder","orderValue","useQuoteMetadata","tableColumns","tmpCols","widths","accountSel","subAccountIdSelector","subAccount","subAccountSelector","formattedAccName","AcctSuffix","previewFields","ord","PreviewOrderTotal_PreviewOrderTotal","PreviewStopPrice_PreviewStopPrice","PreviewLimitPrice_PreviewLimitPrice","PreviewDebitOrCredit_PreviewDebitOrCredit","Cell","f","quoteLegs","BlockTable_BlockTable","fieldTitle","isFunction","envClass","Dashboard","globalErrorOrWarningNotifications","getGlobalErrorOrWarning","globalMessage","getGlobalMessage","dashboardErrorClass","overlay","dashboardClasses","DashboardWrapper","showErrorInfo","setShowErrorInfo","bypassWarnings","setBypassWarnings","modalError","getModalError","failedOrder","notificationError","onCloseModal","alertClass","handleCheck","handleSendOrder","placeOrderError","errored","pathname","DashboardWrapper_Dashboard","paddingTop","dangerouslySetInnerHTML","__html","reload","PreviewContent_PreviewContent","BlockHotkeys","createOrderBlock","DashboardHotkeys","GridHotkeys","grid","showTooltip","tryLoadBlock","BlockDataLoader","storeKey","initializeData","useBlockActions","mounted","loadBlock","useBlockDimensions","blockDimensions","groupSymbol","blockGroupId","group","groupLinkedColor","linkedColor","BlockContentWrapper","matchingGroup","_useBlockMetadata","useBlockMetadata","setGroup","rootStateGroup","useBlockGroupSync","_useBboxDimensions2$","blockElement","isBlockHighlighted","isHighlighted","isLinked","highlightGroupId","highlightGroupAt","isGroupHighlighted","wasBlockTypeHighlighted","groupHasData","getLastOrClosePrice","LINK_COLORS_ARRAY","getLinkColorMapping","linkColor","BlockLinkingDropdown","getColor","setLinkColor","onStartBlockLinking","saveLinkColors","onUnlinkBlock","onToggleHighlightGroup","createLinkColorOptions","optionValue","onSelectLinkColor","BlockActionContext","dashboardIdSelector","settingsSaveData","BlockAction","setBlockSetting","buttonOptions","toggleButtonClassName","direction","BlockSettingsDropdown","toggleBlockSettings","hasSettings","openSettings","unlockGrid","VirtualTradingModal","useOptionChainSettings","optionChain","definitions","BlockContentHeader","isLinkable","settingFields","isRefreshable","onRefresh","useBlockSymbol","isOptionChainBlock","linkingDisabled","setShowSettings","virtualTradingModal","setVirtualTradingModal","toggleVirtualTradingModal","handleSetStrikeCount","bidUsesBuyOrderAction","BlockSettings","toggleVisibility","VirtualTradingModal_VirtualTradingModal","isSearchable","BlockLinkingDropdown_BlockLinkingDropdown","BlockSettingsDropdown_BlockSettingsDropdown","BlockLinkingMask","onCancelClick","sourceBlock","linkSourceBlock","targetBlock","linkTargetBlock","linkingCurrentGroup","isLinkableToGroup","isCancellable","linkStateIndex","BlockLink","onLinkBlock","onCancelLinking","BlockLinkingMask_BlockLinkingMask","BlockContentHeaderTitle","BlockLoading","isFetchingSelector","as","isRefreshing","Block","_useBlockActions","initialize","symbolForGroup","colorForGroup","useBlockData","allBlockData","blockData","contentId","setContentId","headerProps","BlockDataLoader_BlockDataLoader","BlockContentWrapper_BlockContentWrapper","BlockContentHeader_BlockContentHeader","BlockContentHeaderTitle_BlockContentHeaderTitle","BlockLoadingHeaderIndicator_BlockLoading","BlockLink_BlockLink","rootSelector","symbolSel","quoteSel","isFetchingSel","isLoadedSel","PriceChartSelectors","symbolName","GroupManager","observers","lastAction","observer","runLastAction","uniqBy","obs","useFavorite","symbolIsFavorite","isFavorite","addRemoveFavorite","FavoriteButton","_useFavorite","_useFavorite2","toggleFavorite","customParseFormat","quoteTime","useQuoteTime","showQuoteTimeInfo","setShowQuoteTimeInfo","timeValue","abbreviations","findTimeZone","zone","toLocaleTimeString","timeZoneName","timestampRef","useDirectionalClass","_useDirectionalClassV","upValue","downValue","useDirectionalClassValues","disableFlash","directionClass","setdirectionClass","resetTimeout","useDirectionalValue","setCurrentValue","setDirection","Directional","wrapperClass","DirectionalValue","threshold","setThreshold","_useState9","_useState10","Directional_Directional","SymbolPrice","useQuoteDirectionAndValue","Directional_DirectionalValue","SymbolPickerHeader","hidePrice","disableFavorite","hideTime","hidePercent","onSearch","getBlockTypeName","SymbolPrice_SymbolPrice","hideIcon","percent","FavoriteButton_FavoriteButton","QuoteTime_QuoteTime","PriceChartHeader","blockGroup","updateSymbol","SymbolPickerHeader_SymbolPickerHeader","ownKeys","object","enumerableOnly","getOwnPropertySymbols","getOwnPropertyDescriptor","enumerable","charting_library_esm_t","getOwnPropertyDescriptors","defineProperties","_objectSpread","_o","charting_library_esm_e","disabled_features","enabled_features","charting_library_esm_n","interval","library_path","locale","widgetbar","watchlist","watchlist_settings","default_symbols","overrides","mainSeriesProperties.showCountdown","studies_overrides","trading_customization","brokerConfig","configFlags","fullscreen","autosize","debug","time_frames","resolution","client_id","user_id","charts_storage_api_version","intervals","chartTypes","charting_library_esm_i","charting_library_esm_o","charting_library_esm_a","_id","random","substring","_ready","_readyHandlers","_onWindowResize","_autoResizeChart","bind","datafeed","_options","preset","_t","theme","loading_screen","_innerAPI","setDebugMode","_innerWindowLoaded","_innerWindow","headerReady","_doWhenInnerApiLoaded","onGrayedObjectClicked","_doWhenInnerWindowLoaded","createShortcutAction","chart","splice","_iFrame","parentNode","removeChild","closePopupsAndDialogs","selectLineTool","selectedLineTool","saveChart","loadChart","json","extendedData","getSavedCharts","loadChartFromServer","saveChartToServer","removeChartFromServer","onContextMenu","createButton","createDropdown","showNoticeDialog","showConfirmDialog","showLoadChartDialog","showSaveAsChartDialog","getSymbolInterval","mainSeriesPriceFormatter","getIntervals","getStudiesList","getStudyInputs","getStudyStyles","addCustomCSSFile","applyOverrides","applyStudiesOverrides","activeChart","chartsCount","setLayout","layoutName","changeTheme","getTheme","takeScreenshot","lockAllDrawingTools","hideAllDrawingTools","drawOnAllCharts","magnetEnabled","magnetMode","undoRedoState","setIntervalLinkingEnabled","setTimeFrame","symbolSync","intervalSync","crosshairSync","timeSync","getAllFeatures","clearUndoHistory","undo","redo","startFullscreen","exitFullscreen","takeClientScreenshot","getNavigationButtonsVisibility","getPaneButtonsVisibility","getDateFormat","supportedChartTypes","tradingViewApi","contentWindow","_this3","doWhenApiIsReady","_this4","_render","container_id","getElementById","innerHTML","widgetReady","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_step2","_iterator2","_t2","initializationFinished","customFormatters","custom_formatters","brokerFactory","broker_factory","studiesOverrides","tradingCustomization","disabledFeatures","enabledFeatures","broker_config","restConfig","numeric_formatting","rss_news_feed","newsProvider","news_provider","loadLastChart","load_last_chart","saveLoadAdapter","save_load_adapter","settingsAdapter","settings_adapter","getCustomIndicators","custom_indicators_getter","additionalSymbolInfoFields","additional_symbol_info_fields","headerWidgetButtonsMode","header_widget_buttons_mode","customTranslateFunction","custom_translate_function","symbolSearchComplete","symbol_search_complete","contextMenu","context_menu","settingsOverrides","settings_overrides","timeframe","saved_data","chartContent","saved_data_meta_info","chartContentExtendedData","URL","r","encodeURIComponent","language","iso","dir","_d","bundles","localeLanguage","htmlAttrs","libraryPath","charting_library_esm_s","Blob","createObjectURL","toolbar_bg","studies_access","drawings_access","charts_storage_url","custom_css_url","custom_font_family","auto_save_delay","snapshot_url","study_count_limit","symbol_search_request_delay","compare_symbols","time_scale","hash","TradingView","dayjs_dayjs_min_default","plugin_customParseFormat_default","channelToSubscription","Map","subscribeOnStream","symbolInfo","onRealtimeCallback","subscribeUID","onResetCacheNeededCallback","lastDailyBar","handler","channelString","exchange","subscriptionItem","handlers","streaming_handleUpdates","isHeikinAshi","ReceivedTime","bar","barTime","latestExistingBarTime","unix","isNextBar","haOpen","open","haClose","haHigh","haLow","high","low","volume","LastTradeVolume","plugin_utc_default","ChartType","AllSupportedResolutions","lastBarsCache","symbolInfoCache","listenerGUIDCache","DataFeed_TradingViewDataFeed","TradingViewDataFeed","onReady","supports_marks","supports_timescale_marks","supports_time","supported_resolutions","searchSymbols","userInput","onResult","newSymbols","isExchangeValid","PrimaryExchange","isFullSymbolContainsInput","toUpperCase","full_name","ticker","Type","resolveSymbol","onResolve","onError","_$split","lodash_lodash_default","_$split2","symbolRes","listed_exchange","session","minmov","minmove2","pricescale","has_intraday","has_daily","has_weekly_and_monthly","currency_code","data_status","getPeriodForResolution","periodParams","rangeStartDate","rangeEndDate","firstDataRequest","maxDate","minDate","bars","api_dist","marketClose","noData","nextTime","bdate","dateString","D","L","H","O","C","V","_x5","_x6","_x7","_x8","_x9","subscribeBars","onTick","listenerGuid","subscribeBarsCallback","resetCacheCallback","listenToQuotes","_x10","_x11","_x12","_x13","_x14","unsubscribeBars","handlerIndex","delete","unsubscribeFromStream","latestExistingDate","nextDate","resetCache","onQuoteChange","lastBarsCacheValue","_x15","_x16","_x17","emptyResponses","getAllBarsForPeriod","start","end","tryGetBars","barResult","CachedApi","tbapi","cache","cacheKey","symbolPeriodData","cachedResults","barResults","getQuotes","_ref5","chartType","HeikinAshi","PriceChartGraph","_useBlockData","savedData","showLeftToolbar","saveChartData","blockSymbol","PriceChartGraph_PriceChartGraphComponent","saveData","PriceChartGraphComponent","containerId","_props$symbol","chartRef","useTradingviewDatafeed","usePriceChartSettings","_React$useState","Candle","_React$useState2","chartTypeValue","setChartTypeValue","_React$useState3","_React$useState4","chartInterval","setChartInterval","_React$useState5","_React$useState6","studies","setStudies","visibilityChartSync","visibilityState","resetData","timeFrames","graphSettings","clientId","create_volume_indicator_by_default","process","enable_publishing","allow_symbol_change","hide_top_toolbar","save_image","primaryColor","Colors","primary","paneProperties.background","paneProperties.backgroundType","paneProperties.axisProperties.alignLabels","useLayoutEffect","onChartReady","setValue","_React$useState7","_React$useState8","disableChart","setDisableChart","timer","onAutoSave","autoSaveDelay","chartsStorageUrl","chartsStorageApiVersion","widgetOptions","tvWidget","onIntervalChanged","onChartTypeChanged","createTradingViewChart","lastPrices","useLastTradePricesOrUndefined","marketIsOpen","currentStudies","getAllStudies","PriceChartContent","tableElement","chartHeight","chartwidth","PriceChartGraph_PriceChartGraph","PriceChartBlock","selectors","loadedSymbol","setLoadedSymbol","_useBlockGroupInfo","useBlockGroupInfo","useBlockActionDispatch","attach","detach","onSymbolChange","incomingSymbol","useGroupStateHandler","fireOnGroupChange","usePriceChartGroupHandler","symbolTicker","getQuote","_api$quotes$get","_api$quotes$get2","quoteRequest","firstQuote","priceSettings","blockState","Block_Block","PriceChartSettingsFields","getBlockProps","PriceChartHeader_PriceChartHeader","PriceChartContent_PriceChartContent","useQuoteListener","useBlockSubscriptions","blockSymbols","getBlockQuoteSubscriptions","symbolVals","local","useGlobalStateQuoteListener","positionRootSelector","getPositionsFromSymbol","DEFAULTVALUE","isEquity","uniquePositionQuotesSelector","getPositionQuotes","quotesData","getAllPositionInfo","positionperformances","positionsWithPerformance","symPosition","posIds","sp","aggregatedPnl","pp","positionToInfo","initialPositionsAreLoading","positionCount","positionsExist","PerformanceSelectors","symbPos","todayTradingPnl","perfState","aggregatePositionPerformances","positionIds","perfs","pnlSelectors","pnlRange","pnlDataLoaded","OrderSymbols","ordersAndPositionsLoaded","ordSymbols","symbolsWithoutQuotes","filtered","FilterOrderByDate","timeframeOrdersSelector","currLeg","closePrice","buyPrices","sellPrices","avgBoughtPrice","avgSoldPrice","positionOnOpen","quantityBought","quantitySold","currentPosition","netQuantityChange","currentPositionValue","others","times","tradingPnL","positionPnL","totalPnL","previousSettle","isSummaryDataLoaded","ordersFetching","positionsFetching","DirectionalCurrency","currencyLabel","NavPrice","_useBlockStateSelecto","useBlockStateSelector","subnames","useBlockLog","DirectionalCurrency_DirectionalCurrency","PositionHeader","totalGain","dailyPnl","symbolAggregateList","totalGainValue","PositionHeader_NavPrice","handleExpandRowsClick","PositionSync","shouldReload","DirectionalPrice","precisionOverride","directionProps","useOrderBlockWithOrder","build","replaceFirstMatch","_useDispatcher2","globalOrderSettings","globalSettings","orderBlockDispatcher","addBlockAsNew","orderBlockData","addedAt","preserveGroupOrderData","asyncValidateOrder","getStrategyForLegs","firstLeg","sinfo","parseOccSymbol","useOrderCopyAction","blockSelectionOptions","setCustom","duplicateOrder","isSingleLeggedStrategyOrder","isSingleLeggedCustomOrder","blockSelectionOpts","handleTradeOrderBuilder","builder","baseBuilder","strategyProfile","strikeRule","firstLegHigher","adjustLegOrderForStrikeRules","calculatedQuantity","legQuantity","buildRes","PriceChartBuilder","priceChartState","useChartSymbolAction","fn","handleChartOrder","priceChartBlockData","priceChart","useChartBlockWithOrder","OrderActionButton","CancelOrderButton","OrderActionButtons_OrderActionButton","ReplaceOrderButton","TradeOrderButton","ChartButton","PositionActions","identity","maxVisibleActions","hasOverflowActions","primaryActions","secondaryActions","sa","PrettySymbolCondenscedView","expirationToString","ParseOCCStrike","ParseOCCOption","PrettySymbolDefaultView","PrettySymbol","condensced","expirationType","expirationTime","expirationDateValue","usePositionSymbolName","PrettySymbol_PrettySymbolCondenscedView","PrettySymbol_PrettySymbolDefaultView","PositionLegActions","tradeData","baseAssetSymbol","DtoToOrderleg","canRoll","openQuantity","optionData","isShort","buildRollOrder","handleRollClick","tradeOrderBuilder","handleTradeClick","handleCloseOrder","isSingleLeggedOrder","orderQuantity","ceil","useCloseOrderAction","PositionActions_PositionActions","PositionLegDailyPL","bold","getAggregatedQuotes","onlyShares","_changeCalculation","legLast","legClose","getPositionLeg","longOrShort","StrategyName","sortedStrategyLegs","sortedPositionsLegs","longStrategyValid","strategyLeg","legIndex","validatePositionLegs","determineLongOrShort","lastValue","closeValue","maxOrZero","_changeCalculation2","GroupedPositionLegActions","_position$","spreadRatioQuantities","lowest_common_denominator","shortStrategyValid","pureOrderLegs","toExpiration","orderBuilder","shares_quantity","share_leg","sharesQuantityAbsoluteValue","handleTradeOrder","useAggregatedPositions","symbolPositions","combineSameSymbols","groupPositionsByStrategy","shouldGroupByStrategy","positionValues","subIdsFromPositions","isMaster","isAll","filteredPositionValues","currentPositions","groupedPositions","groupBy","alteredPositions","inAlteredPositions","alteredPosition","positionValueBasis","PositionIds","currentCombinedPositionIndex","combinedPosition","sortedCustomOptionsFunction","position_1","position_2","option_1_details","option_2_details","avgPositionStrat","openCost","combined_by_net_quantities_positions","_loop","position_index","combined_by_net_quantities_position","option_positions","lowest_net_quantity_options","current_net","stock_positions","lowest_net_quantity_stock","PositionLeg","_usePositionSettingsV","usePositionSettingsValue","customPositions","gp","StrategyTypeId","sortedPositions","sortedCustomOptions","flat","PositionLeg_GroupedStrategyPosition","groupedPosition","Stock","gPos","PositionLeg_PositionLegRow","StrategySymbology","MarriedCall","CoveredPut","IronConder","Conversion","Box","_groupedPosition$","legPosition","positionOptionType","positionDirection","GroupedStrategyPosition","expandStratPosition","setExpandStratPosition","feedQuotes","posInfo","sharesCount","usesOptions","usePositionInfo","_usePositionSettingsV2","Change","Last","PrevClose","Ask","Bid","Gain","Cost","Percent","Value","PNL","AvgPrice","isValidStrategy","highest_denominator","isValidPositionStrategy","strategyCount","countValidStrategyPositions","sameSymbolAmongGroupedPositions","totalNumberOfContractsForGroupedPositions","numberOfContractsForGroupedPositions","subRowColumns","DirectionalPrice_DirectionalPrice","PositionLegDailyPL_PositionLegDailyPL","sortColumnsByOrder","col","indentMargin","PositionLegRow","useFeedQuoteWithMetadata","_usePositionSettingsV3","tdClass","getTableTdClass","isShare","combinedShares","PrettySymbol_PrettySymbol","PositionLegActions_PositionLegActions","column","PositionDropdown","arrow","setArrow","toggle","data-toggle","SubAccountFilter","setSubAccountId","accountOptions","Nickname","currentAccount","firstAccount","subAccountFilterIdAccount","onSubAccountChange","ol","SymbolPnLReducer","quoteState","allPositions","quo","symbolsWithPositions","symbolsWithOrders","quoteInfo","positionPnl","pnlByPrice","orderLegTradingPnL","PositionTable","setDailyPnl","setTotalGain","tableSize","setTableSize","wideTable","apiRootUrl","tradingApi","hasSubAccounts","subId","selectedSubAccountId","setSelectedSubAccountId","selectedSubAccountPositions","setSelectedSubAccountPositions","selectedSubAccountData","setSelectedSubAccountData","positionsRequested","setPositionsRequested","tableData","accountApi","positionSettingsValueObject","columnSettingsChange","entries","hiddenColumns","setSubAccountData","getSubAccountPositions","getSubAccountPositionsFromSymbol","subPositions","getSubAccountPositionQuotes","_ref6","uniquePositions","partialQuote","getSubAccountPositionsAndQuotes","_ref7","positionResponse","subQuotes","subData","todaysOrders","getSubAccountPositionsWithPerformance","TodaysFilledOrders","t1","getAggregatedTotals","_ref8","pnlMap","_ref9","_useState11","_useState12","tableStateColumnOrder","setTableStateColumnOrder","canSort","sortType","_ref10","row","getToggleRowExpandedProps","PositionDropdown_PositionDropdown","_Cell","_ref11","_Cell2","_ref12","_Cell3","_ref13","changePerc","_Cell4","_ref14","_Cell5","_ref15","_Cell6","_ref16","_Cell7","_ref17","_Cell8","_ref18","_Cell9","_ref19","_Cell10","_x18","_ref20","isUndefined","optionsCount","_Cell11","_x19","_ref21","_Cell12","_x20","_ref22","positionCostValue","_Cell13","_x21","_ref23","_Cell14","_x22","_ref24","_Cell15","_x23","_ref25","_Cell16","_x24","_ref26","_row$original","rawQuantity","orderAndLegAction","isOCC","priceChartBuilder","handleCloseClick","handleChartClick","positionActions","renderSubRow","tableOptions","PositionLeg_PositionLeg","getRowKey","columnWidths","useTableColumnWidths","SubAccountFilter_SubAccountFilter","sortable","frozenHeaders","numColumns","PositionBlockContent","blockisEmptyOrLoading","PositionSync_PositionSync","PositionTable_PositionTable","PositionBlock","GetPositionAndOrderSymbols","_usePositionSettings","usePositionSettings","setSelectedSubAccountTotalGain","setSelectedSubAccountDailyPnl","PositionHeader_PositionHeader","PositionBlockContent_PositionBlockContent","Column","titleClass","StackedColumn","valueAs","ValueElement","Column_Column","BlockColumn","signed","hidePrefix","getBalanceTotals","pendingTransfers","Balances","Securities","BuyingPower","balanceValue","getBalanceValue","getPositionValue","todaysChange","getTodaysChangeValue","todaysChangePercent","getChangePercent","ytdChangePercent","cashAndCashAlts","getCashAndCashAlts","ytdChange","pendingTransactions","getPendingTransactions","availableForTrading","getAvailableForTrading","availableForWithdrawal","getAvailableForWithdrawal","nonmarginableFunds","getNonmarginableFunds","cashBalance","CashBalance","marginBalance","MarginBalance","ShortBalance","securities","LongStockValue","ShortStockValue","LongOptionValue","ShortOptionValue","MutualFundsValue","BondsAndCDValue","CashBalanceTodaysChange","MarginBalanceTodaysChange","ShortBalanceTodaysChange","LongStockValueTodaysChange","ShortStockValueTodaysChange","LongOptionValueTodaysChange","ShortOptionValueTodaysChange","MutualFundsValueTodaysChange","BondsAndCDValueTodaysChange","MoneyMarketFundValueTodaysChange","balVal","MoneyMarketFundValue","buyingPower","PendingTransactions","AvailableFunds","WithdrawalAmount","marginRequirements","MarginableEquityPercent","AccountBalanceView","selectedSubAccountBalances","setSelectedSubAccountBalances","selectedSubAccountCashValue","setSelectedSubAccountCashValue","selectedSubAccountPositionValue","setSelectedSubAccountPositionValue","selectedSubAccountTotalValue","setSelectedSubAccountTotalValue","_useState13","_useState14","_useState15","_useState16","selectedSubAccountDailyPNL","setSelectedSubAccountDailyPNL","_useState17","_useState18","setSelectedSubAccountTradingPNL","getSubAccountBalances","getSubAccountPositionValue","getSubAccountCashValue","cashValue","balancesResponse","_positionValue","totalValue","_total","tradedSymbolsToday","t2","GetSymbolsFromOrders","BlockColumn_BlockColumn","AccountContent","accountBalances","AccountBalanceView_AccountBalanceView","accountInfoSelector","AccountSettingsFields","showRefresh","useAccountSettings","getSettings","AccountHeader","AccountBlock","_useAccountSettings","isRefreshingBlock","setIsRefreshingBlock","pendingRefresh","Account_AccountHeader","AccountContent_AccountContent","AccountManagementConstants","clientAcc","clientFin","clientDiscl","clientPref","clientBeneficiaries","AccountManagementBlockActions","setTab","getRequiredError","Required","getInvalidError","Invalid","getAmountError","Amount","getMismatchError","Mismatch","getStaleError","Stale","getUploadError","Upload","RE_PO_BOX","promisesParser","string","xml2js","parseString","uspsVerification","uspsId","xml","simplifyAddress","isFlipped","xmlText","xmlResult","AddressValidateResponse","Address","_Address$","City","Zip5","Zip4","Address1","Address2","_Error","_Error$","_Number","Source","address1Value","address2Value","uspsBaseUrl","Headers","Content-Type","Access-Control-Allow-Origin","Access-Control-Allow-Credentials","Access-Control-Allow-Methods","method","fetch","number","zip5","zip4","uspsAddress1","uspsAddress2","AddressUpdate","addressType","accountHolderIndex","_accountDetails$physi","initialAddressUpdateValues","resetForm","updateValues","requestMakeAccountUpdate","headerValue","localStorage","setItem","uspsResponse","isValidAddress","isMailing","stateOrPostalCodeRequired","uspsResponseFromStorage","getItem","_uspsResponse","formattedCityCapitalized","capitalize","startCaseCity","isCityEqual","isZipEqual","isStateEqual","getUSPS","_uspsResponse2","_errors","SelectDropdownField","getGroupedCountryOptions","optionsDefaultLabelId","EmailUpdate","initialEmailUpdateValues","emailValue","PhoneUpdate","phoneValue","phoneType","phoneConfirm","TrustedContactUpdate","initialTrustedContactValues","_errors3","_errors2","DetailFields","fieldList","chunk","rowIdx","fieldIdx","Column_StackedColumn","formatIncome","incomeDescription","displayString","formatTaxBracket","getRiskLevelForTradeGoalType","None","VeryLow","Moderate","getRiskLevelForInvestmentObjectiveType","formatYearsEmployed","formatYearsTrading","formatTradesPerYear","formatBoolean","booleanItem","formatBooleanForDisplay","formatPhoneNumber","formatAgentName","getAgentPhoneNumbersByType","EmployInfoUpdate","initialEmployInfoUpdateValues","RemoveTrustedContactOrTradeAuth","modalTitle","modalBody","ResetPassword","siteParam","authError","setAuthError","sentEmail","setSentEmail","setIsFetching","initialResetPasswordProps","touched","submitCount","applicationUrl","AccountDetails","pendingAccountUpdates","pendingEmailUpdate","u","pendingMailAddressUpdate","pendingPhoneUpdate","showAddressConfirm","setShowAddressConfirm","showEmailConfirm","setShowEmailConfirm","showPhoneConfirm","setShowPhoneConfirm","showTrustedContact","setShowTrustedContact","showEmploymentUpdate","setShowEmploymentUpdate","setAddressType","setAccountHolderIndex","showRemoveTrustedContact","setShowRemoveTrustedContact","showResetPassword","setShowResetPassword","requestAccountDetails","requestAccountManagementDetails","getAccountHolderName","getPhoneNumberByType","personalInfoFields","createDate","trustedContactInfoFields","employmentInfoFields","DetailFields_DetailFields","AddressUpdate_AddressUpdate","EmailUpdate_EmailUpdate","PhoneUpdate_PhoneUpdate","TrustedContactUpdate_TrustedContactUpdate","EmployInfoUpdate_EmployInfoUpdate","RemoveTrustedContactOrTradeAuth_RemoveTrustedContactOrTradeAuth","ResetPassword_ResetPassword","FinancialUpdate","_useStateSelector$cha","initialFinancialUpdateValues","TradeExperienceUpdate","instrumentType","initialTradeExperienceUpdateValues","RiskLevelIcon","withLocalize","translate","getTranslationId","useLocalize","SuitabilityUpdate","_accountManagementDet","initialSuitabilityUpdateValues","CheckListField","renderOption","opt","getDescriptionForInvestmentObjective","MiscUploadFileField","handleDocumentUpload","isCashieringDocument","recipientBankId","uploadingDocument","setUploadingDocument","fileName","setFileName","uploadSuccess","setUploadSuccess","setErrors","isRqdIdCard","DriversLicense","StateIdCard","RQD","processUploadResponse","maxFiles","_useDropzone","useDropzone","onDrop","onDropAccepted","acceptedFiles","upload","uploadMiscellaneousDocument","onDropRejected","fileRejections","maxSize","accept","getRootProps","getInputProps","errorIndex","useClearer","Apex","formatTradeGoalType","TradeGoalUpdate","clickedAgreements","setClickedAgreements","uploadIds","setUploadId","documentIds","numberOfUploads","setNumberOfUploads","onClickedAgreementLink","agreement","getAgreementDisabledOptions","formatBooleanToggleType","toggleType","isForeign","initialTradeGoalFlexUpdate","doc","StepperField","disabledOptions","textKey","SignatureImage","GovernmentId","FlexibilityTypeUpdate","duplicateAccountError","setDuplicateAccountError","handleDuplicateAccountCheckResponse","requestValues","accountIdToIgnore","primaryTaxIdSecret","secondaryTaxIdSecret","FinancialDetails","areDetailsLoaded","pendingSuitabilityUpdates","pendingTradeLevelUpdates","pendingFlexabilityUpdates","showAssetUpdate","setShowAssetUpdate","showExperienceUpdate","setShowExperienceUpdate","showSuitabilityUpdate","setShowSuitabilityUpdate","showTradeGoalUpdate","setShowTradeGoalUpdate","showFlexibilityTypeUpdate","setShowFlexibilityTypeUpdate","setAssets","updateType","setUpdateType","suitabilityFields","FinancialUpdate_FinancialUpdate","TradeExperience_TradeExperienceUpdate","SuitabilityUpdate_SuitabilityUpdate","TradeGoalUpdate_TradeGoalUpdate","FlexibilityTypeUpdate_FlexibilityTypeUpdate","IndividualRepresentationsUpdate","isDateFilled","isFieldValueFilled","getDatePartOptions","part","forPastDates","DateField","controlledLabel","onLabelStateChange","pickBy","startsWith","isFilled","floatingLabelState","setFloatingLabelState","updateFloatingLabelState","hasFocus","handleLabelStateChange","getFieldProps","useRawOptions","TradeAuthUpdate","showToolTip","setShowToolTip","apexTradeAuthLinks","limited","links","intitialTradeAuthUpdateValues","signedName","tradeAuthAgreement","limitedTradingAuthorization","fullTradingAuthorization","nameMatch","omitBy","tradeAuthorizationType","handleToolTipClick","inputMode","itin","allowUnmask","IndustryEmployedUpdate","uploadId","initialIndustryEmployedUpdateValues","AffiliateApproval","AccountDisclosuresUpdate","initialAccountDisclosuresUpdateValues","ServiceProfileUpdate","initailServiceProfileValues","AccountDisclosures","hasGrantedTradeAuth","grantedTradeAuthPriorToUpdates","agentName","pendingIndustryEmployedUpdate","pendingServiceProfileUpdates","showIndividualRepUpdate","setShowIndividualRepUpdate","showTradeAuthUpdate","setShowTradeAuthUpdate","showIndustryEmployedUpdate","setShowIndustryEmployedUpdate","showAccountDisclosuresUpdate","setShowAccountDisclosuresUpdate","showServiceProfileUpdate","setShowServiceProfileUpdate","showRemoveTradeAuth","setShowRemoveTradeAuth","tradeAuthFields","industryEmployedFields","firmName","disclosureFields","accountDisclosureFields","serviceProfileFields","IndividualRepresentations_IndividualRepresentationsUpdate","TradeAuthUpdate_TradeAuthUpdate","IndustryEmployedUpdate_IndustryEmployedUpdate","AccountDisclosuresUpdate_AccountDisclosuresUpdate","ServiceProfileUpdate_ServiceProfileUpdate","RemoveAllBeneficiaries","maskSSN","masked","unmaskedIdx","Beneficiaries","beneArr","isUpdateLoading","addOrEditBeneficiary","setAddOrEditBeneficiary","showRemoveAll","setShowRemoveAll","initialBeneficiariesValues","beneficiaryType","beneficiaryFields","beneficiaryAccountType","relationship","trustName","einSecret","primaryBeneficiaries","contingentBeneficiaries","totalPrimaryPercent","sumBy","totalContingentPercent","isInteger","setValues","totalPercentageError","render","arrayHelpers","beneficiary","onChanged","j","isIndividual","AddressField","labelPrefix","countryProps","stateProps","step","currentTarget","inverse","RemoveAllBeneficiaries_RemoveAllBeneficiaries","AuthHistoryTable","requestAuthHistory","AuthHistoryColumns","TimeStamp","hasPagination","responsiveDisabled","manualPagination","manualSortBy","AccountSecurity","isTwoFactorEnabled","AuthHistoryTable_AuthHistoryTable","CommunicationPreferencesUpdate","initialCommunicationPreferencesUpdateValues","requestDuplicateStatements","duplicateStatementsAddress","duplicateStatementsEmail","MarketDataProfileReview","initialMarketDataProfileReviewValues","isSubmitting","CheckListInput","Delayed","RealTime","Preferences","receivePaperStatements","receiveDuplicateStatements","showMarketDataProfileReview","setShowMarketDataProfileReview","showCommunicationPreferencesUpdate","setShowCommunicationPreferencesUpdate","toggleCommunicationPreferencesUpdate","tradingBlockDomain","GetTradingBlockDomain","legacyLink","GetTradingBlockFullUrl","rel","MarketDataProfileReview_MarketDataProfileReview","CommunicationPreferencesUpdate_CommunicationPreferencesUpdate","AccountManagementContent","isRetirementAccount","tab","defaultVal","useAccountManagementData","blockDispatch","ev","tabVal","requestPendingAccountManagementUpdates","Tabs_default","defaultActiveKey","Tab_default","eventKey","AccountDetails_AccountDetails","FinancialDetails_FinancialDetails","AccountDisclosures_AccountDisclosures","Preferences_Preferences","Security_AccountSecurity","Beneficiaries_Beneficiaries","AccountManagementHeader","accountTitle","AccountTitle","getAccountStatus","formattedStatus","AccountManagementContentBlock","AccountManagementContent_AccountManagementContent","AccountManagementBlock","AccountManagmentHeader_AccountManagementHeader","AccountManagementBlock_AccountManagementContentBlock","OptionSymbolName","symbolDate","SymbolName_OptionSymbolName","DefaultQuoteData","CalculatedNetChange","CalculatedChangePercent","FavoritesContent","sortDirection","setSortDirection","getFavorites","getFavoriteSymbols","setPageIndex","quoteMetaData","getQuotesBySymbols","AssetSymbol","getCurrentSortBy","newDesc","desc","tableColumnOrder","setTableColumnOrder","sortVal","asc","blocksLoading","SymbolName_SymbolName","roundDecimal","isIndexSymbol","isIndex","useTradeSymbolAction","OrderActionButtons_TradeOrderButton","handleChart","OrderActionButtons_ChartButton","_useFavoriteSettings","useFavoriteSettings","filterHiddenColumns","filterColumns","currentSortBy","chunkedData","FavoritesHeader","setSymbolFound","symbolFound","found","FavoritesBlock","dataAndBlockLoaded","FavoritesHeader_FavoritesHeader","FavoritesContent_FavoritesContent","OrderHeaderMemo","memo","useOptionDefaults","legExpirations","existingLegExpirationWithoutStrikes","strikeExp","loadExpirationStrikes","expirationValues","toSortedValues","useOrderPositionSync","OrderSymbolList","localPositions","OrderPositions","positionInfos","os","info2","areEqual","SentimentIcons","_SentimentIcons","_StrategyType$Bull","OrderStrength","icons","css","VeryHigh","_StrategyType$Bear","_StrategyType$Volatil","useStrategySentiment","orderSentiment","directionInfo","stratType","strengthVal","strength","overallSentimentClass","sentimentDef","sentimentClass","sentimentText","sentiment","OrderSentiment","_useStrategySentiment","assSymbol","invertSentiment","assetSymbolInfo","orderData","isCoveredCallOrMarriedPut","isButterflyCallOrPut","isSingleLeggedStrategy","isSingleLegStrategy","copy","shareLegRatio","createOrder","verboseSentiment","optionLegsHaveExpirationAndStrike","onscroll","scroll","ic","OrderStrategyMatch","assetSymbolValue","OrderValidationIcon","validationErrorMessage","OrderQuantitySelector","defaultOrderQuantity","defaultQuantity","useOrderQuantity","setOrderQuantity","_useOrderQuantity","precision","StrategyPicker","strategies","StrategyOptions","isCustomOrUndefinedStrategy","isCustomStrategyOrUndefined","useOrderStrategy","isStrategyInvalid","isOrderInvalid","hasLegs","classifiedStrategy","matchedStrategy","_useOrderActions","switchStrategy","matchStrat","selectedStrategy","hideStrategyBuyAndQuantity","strategyIsCustom","strategyHasSentiment","bidirectional","setActionValue","validationClass","selectedScrollPickItem","OrderQuantity_OrderQuantity","buttonclassName","OrderValidationIcon_OrderValidationIcon","OrderSentiment_OrderSentiment","OrderStrategyMatch_OrderStrategyMatch","OrderStrategyPicker","OrderStrategyPicker_StrategyPicker","useLegsActions","getCustomStrategyLegQuantity","settingsQuantity","originalLegKeys","updatedLegKeys","isOriginalLeg","remainingLegKey","remainingLeg","newQuantity","AddOrderLeg","maxLegs","canAddShares","maxReached","hasSharesLeg","dropdownContent","onItemClick","toggleDropdown","AddOrderLegContent","onAddEquityLeg","onAddOptionLeg","ClearOrder","showClearAll","border","PriceAndQuoteSync","recalculate","legInfo","useQuoteBidAskMetadata","useQuoteSync","orderTypePlaceholderDisplay","_orderTypePlaceholder","orderTypePickerOptions","OrderTypePicker","allowedOrderTypePickerOptions","setAllowedOrderTypePickerOptions","useParsedCountdown","areOptionLegsSet","setAreOptionLegsSet","isNegativePrice","isCustomOrder","isMatch","checkOptionLegs","PriceSlider","isMarketOrder","num_legs","priceSliderValue","midDiff","sizeDiff","rc_slider_es","adjustedValue","updatedPrice","priceParts","marks","OrderContent_MarkerLabel","styles","top","toLocaleString","isReversed","DurationPicker","StopOrderPrice","OrderContentSettings","StopOrderPrice_StopOrderPrice","OrderTypePicker_OrderTypePicker","DurationPicker_DurationPicker","OrderPrice_OrderPrice","DebitCreditToggle_DebitCreditToggle","PriceSlider_PriceSlider","StrategyButton","StrategyTemplateButtons","StrategyButton_StrategyButton","BlockPropTitle","short","strikesWithValidity","LoadingDropdownButton","OptionComponent","class","OrderLegExpiration","setNoExpirations","legsWithExpiration","orderedLegsWithExpiration","firstLegWithExpiration","currentLegAction","legActionById","firstExp","LegId","isDate","expirationRule","currLegIsBuy","_$reduce","keyVal","sellExpirations","buyExpirations","maxSell","minBuy","useFilteredExpirations","expirationsAreInvalid","fieldIsInvalid","weeklyExpirations","monthlyExpirations","quarterlyExpirations","yearlyExpirations","expirationOptionTypes","expDisplayInfo","expirationDisplayInfo","stringValue","searchValue","ExpirationToOption","filteredExpirationOptionTypes","eo","expirationFreqCode","currValue","onSelectExpiration","searchExpirations","Loading_LoadingDropdownButton","dropdownIcon","isClearable","StrikeToOption","deimcalSuffix","useDefaultStrikeValue","currentPrice","useLastTradepriceOrUndefined","useLastPrice","OrderLegStrikes","strikesAreInvalid","currentLegStrike","legStrikeById","legsWithStrike","orderedLegsWithStrike","firstLegWithStrike","firstStrike","strategyLegCount","strikeRules","shoudlValidate","otherLeg","otherStrike","otherLegHasLowerIndex","useFilteredStrikes","isStrikesFetching","strikeOptions","strikeOpt","LegAction","setOrderType","ot","Action_LegActionPicker","LegActionPicker","LegQuantity","legQuantityIsInvalid","invalidLegPosition","quantityValue","PositionMemo","positionClass","LegPosition","SymbolOccBasicSelector","accountPositionInfo","setAccountPositionInfo","positionsWithId","symbolKey","positionQuantity","subPosition","positionIsLong","useBidAsk","useQuoteBidAsk","feed","bids","asks","directionalClass","classes","getQuoteHigh","quoteSelectors","byId","getQuoteLow","LegPrice","CSS","DirectionalLegPrice","Price_Directional","LegPrices","BidAsk_DirectionalLegPrice","BidAsk_LegPrice","assetTypes","OrderLeg","invalid","_useOrderLegData","SymbolAsOCC","useOrderLegData","legAssetType","legOptionType","lastLeg","setLegStrike","strikeStored","setLegExpiration","enableLegQuantity","modernBidAskLabelOrientation","Action_LegAction","Quantity_LegQuantity","Position_LegPosition","Leg_LegOptionType","Expiration_OrderLegExpiration","Strikes_OrderLegStrikes","BlockProp_BlockPropTitle","LegOptionType","OrderLegData","OrderLegs","invalidLegIds","midPrice","diff","OrderLegs_OrderLegData","lid","Leg_OrderLeg","OrderContent","BlockDataContext","expirationsLoading","expirationsAreLoaded","loadExpirations","useExpirationLoader","useBlockGlobalData","currentLegSymbols","setOrderSymbols","legsymbolList","symbolsToRemove","symbolsToAdd","symbolChanges","useOrderSymbolData","setPositions","emptyCustomOrder","charAt","autoClose","OrderStrategyPicker_OrderStrategyPicker","OrderLegs_OrderLegs","AddOrderLegContent_AddOrderLegContent","StrategyTemplateButtons_StrategyTemplateButtons","PriceAndQuoteSync_PriceAndQuoteSync","AddOrderLeg_AddOrderLeg","ClearOrder_ClearOrder","OrderContentSettings_OrderContentSettings","MarkerLabel","maxWidth","OrderPreviewActions","setOrderStatusProcessed","btnClassName","processing","setIsProcessing","setIsComplete","handleOrderAction","requestCancel","PreviewPopupContent","subAccounts","warningNotAccepted","onWarningAccepted","passedAction","orderStatusProcessed","globalSubAccountId","orderSubAccountId","setOrderSubAccountId","isAdmin","actionName","subAccountOptions","legSubAccountId","orderSubaccount","subaccount","masterAccount","IsMaster","onSelectSubAccount","beforeSomeOptionsCloseTime","AdminCommissionOrderActions","setCommissionFilled","placeAs","setPlaceAs","executeAs","setExecuteAs","setCommission","commissionOverrideCode","setCommissionOverrideCode","currentUserProfileCommissionCodes","commissionCodes","handleSetCommissionFilled","PlacedAs","ExecutedAs","CommissionType","CommissionScheduleId","selectedOption","AdminBypassMargin","bypassMargin","setBypassMargin","handleBypassMargin","BypassMargin","OrderPreviewPopupContent","accountOrders","firstAccountOrder","ableToBypassMargin","BypassMarginCheck","ableToChangeCommission","setIsSaving","orderFillResponse","setOrderFillResponse","originalOrders","setWarningNotAccepted","commissionFilled","onSaveOrder","objectStatus","saveDisabled","orderQuote","orderAssetClass","AssetClass","isBond","PreviewPopupContent_PreviewPopupContent","orderFillResponseStyle","OrderPreviewActions_OrderPreviewActions","OrderPreviewPopup","PreviewPopup_OrderPreviewPopupContent","textAlign","legAndQuantitySelector","useProfitLoss","useOrderDataForProfitLoss","PriceOrInfinity","ProfitLoss","profitLossValues","ProfitLoss_PriceOrInfinity","OrderFooterPrice","_useOrderTotal","totalInfo","isDebit","priceVal","OrderFooter","noExpirations","_useOrderPreview","_useOrderPreview$audi","previewEnabled","tbOrder","tbOrderLegs","isPriceValid","setIsPriceValid","validatePrice","OrderFooter_OrderFooterPrice","ProfitLoss_ProfitLoss","PreviewPopup_OrderPreviewPopup","Content","useBlockGroupField","useOrderBlockGroupHandler","useOrderQuoteSymbolSubscription","hasOptionLegs","OrderContent_OrderContent","OrderFooter_OrderFooter","OrderBlock","initialLogin","setInitialLogin","blockprops","OrderBlockSettingsFields","OrderBlock_Content","useActiveBlockTab","ActivityOrderStatusWrapper","OrderLegsStatus","maxInd","filledQuantity","filledStatus","getLegFilledTotal","OrderActivityStatus","activity","partialStatus","partiallyCancelledStatus","statusClass","statusMore","Response","Message","ActivityStatusMessage","statusValue","showLegMore","ActivityOrderStatusWrapper_ActivityOrderStatusWrapper","OrderActivityStatus_OrderLegsStatus","TimeframePresetValues","startOfToday","endOfToday","today","timeframeKey","Today","Week","subtract","Month","Year","ActivityTimeFrameSelector","defaultTimeframe","_TimeframePresetValue","presetValue","tp","ActivitySettingsFields","tf","useActivitySettings","useActivitySettingsValue","workingOrdersOnly","useActivityBlockData","useActivityTimeframeValues","_useActivityDataSelec","select","useActivityDataSelector","ActivityOrderEventsSubRow","messages","includeOrderEvents","mutate","useDeepCompareEffect","sortedOrderEvents","OrderEvents","orderEvent","FillPrice","FillQuantity","ActivityOrdersTable","tabType","onReplace","onCancelOrder","isWorkingOrdersOnly","setWorkingOrders","_useActivityTimeframe","orderHistory","shouldBeHighlighted","timeFilteredMessages","trClass","latestOrderStates","_useActivityBlockData","isFetchingBlockOrders","numPages","utcReceivedHours","timeTillCloseHours","isAfterHours","_row$original2","OrderActivityStatus_OrderActivityStatus","getLocalDateFromTimezone","sortDescFirst","sortInverted","orderDate","dateExtract","_row$original3","underSymb","isFilledOrCancelled","encodingExtract","encodingExpirationFormatted","toDateString","OrderActionButtons_CancelOrderButton","OrderActionButtons_ReplaceOrderButton","rowClass","TimeframePresets","handleDatesChange","presets","_useMemo","useActivityTimeframes","PresetDateRangePicker_panel","flexWrap","PresetDateRangePicker_button","background","font","lineHeight","boxSizing",":active","outline","PresetDateRangePicker_button__selected","isDefaultSelected","sameEndDateOrUndefined","Timeframe","initialStartDate","initialEndDate","placeholderClassName","caret","focusedInput","setFocusedInput","moment","presetDismiss","setPresetDismiss","onPresetChange","onDatesChange","onFocusChange","calendarInfo","TimeframePresets_TimeframePresets","Timeframe_TimeframeButton","endingDate","OverlayTrigger","trigger","rootClose","popperConfig","modifiers","preventOverflow","boundariesElement","minHeight","react_dates","enableOutsideDays","numberOfMonths","renderCalendarInfo","hideKeyboardShortcutsPanel","TimeframeButton","daterangeToTimeframe","TimeframeContainer","useActivityActions","blockStyle","paddingBottom","Timeframe_Timeframe","ActivityOrderStats","accountHistory","getStatusCount","ordDate","isBetweenInclusive","countFilteredOrders","filledCount","cancelledCount","openCount","ActivityOrderTimeframe","TimeframeContainer_TimeframeContainer","handleChecked","ActivityOrderStats_ActivityOrderStats","ActivityOrders","setIsCancelOrder","setOrderValue","onReplaceOrder","ActivityOrderTimeframe_ActivityOrderTimeframe","ActivityOrdersTable_ActivityOrdersTable","ActivityOrderContent","ActivityOrderContent_ActivityOrders","ActivityMessagesTable","m","getOrderMessages","ActivityMessages","ActivityMessagesTable_ActivityMessagesTable","ActivitySummaryTable","ActivitySummaryTotals","todayPnL","notTradedPnL","ActivitySummaryView","ActivitySummaryTotals_ActivitySummaryTotals","ActivitySummaryTable_ActivitySummaryTable","ActivitySummary","ActivitySummary_ActivitySummaryView","ActivityContent","activeTab","isTradesTab","isMessagesTab","debounce","ActivityMessages_ActivityMessages","ActivityOrderContent_ActivityOrderContent","ActivitySummary_ActivitySummary","BlockTabWell","hasTabs","onTabClick","activeClass","ActivityTabs","ActivityBlock","_useActivitySettings","BlockTabWell_BlockTabWell","ActivityContent_ActivityContent","AnalyticsChart","MarkerTypes","dateRange","filteredBalances","chartContainerRef","getMarkerType","markerType","Deposit","Withdrawal","Dividend","CapitalGainsDistribution","Reinvestment","JournalEntry","Interest","createChart","clientWidth","clientHeight","textColor","vertLines","visible","horzLines","crosshair","CrosshairMode","Magnet","baseLineSeries","addBaselineSeries","baseValue","lineWidth","balanceHistoryMarkers","seenDates","filteredBalanceSeries","historyItem","cashieringTransfers","cashieringTransfer","seenDividendDates","dividend","isFirstDividend","has","setData","setMarkers","removeSeries","ResizeObserver","_entries$0$contentRec","contentRect","applyOptions","localization","priceFormatter","timeScale","fitContent","downloadFile","fileType","blob","anchor","download","clickEvent","MouseEvent","bubbles","cancelable","dispatchEvent","formatMoney","NumberFormat","exportToCsv","extractHeaders","extractRows","maxLength","headerName","columnData","groupChunks","chunkSize","dataArray","datum","_datum$","cashAvailable","moneyMarketValue","securitiesValue","cashTransfers","toLocaleDateString","AnalyticsBalanceHistory","handlePageChange","handleTimeFrame","handlePageSizeChange","onDateSort","accessData","AnalyticsCashFlow","cashFlows","balanceHistoryItem","getTime","identifier","identifierType","AnalyticsHeader","handleDownloadCSV","CircularProgressBar","progress","circumference","normalizedRadius","PI","strokeDashoffset","angle","indicatorX","radius","cos","indicatorY","sin","x1","y1","x2","y2","offset","stopColor","stopOpacity","in","stdDeviation","stroke","strokeWidth","cx","cy","fill","strokeDasharray","strokeLinecap","textAnchor","dy","fontFamily","AnalyticsBlock","setDateRange","subTab","setSubTab","currentPage","setCurrentPage","setCurrentChartPage","isChartDataLoaded","setIsChartDataLoaded","allBalances","setAllBalances","setProgress","timeoutRef","chartError","setChartError","balanceRequestParams","delay","timerRef","ms","clearDelay","useDelay","fetchDataForChart","perPage","totalItems","totalPages","currentProgress","sortedBalances","AnalyticsHeader_AnalyticsHeader","basic_CircularProgressBar","AnalyticsCashFlow_AnalyticsCashFlow","AnalyticsChart_AnalyticsChart","AnalyticsBalanceHistory_AnalyticsBalanceHistory","getCurrentTransferView","OAuthPlaidRedirect","getNextTransferView","route","Authorize","Accounts","Manage","Review","getViewPrimaryButtonContents","mechanism","objectType","defaultButton","AddOptions","Add","approvalMethod","plaidPublicToken","Rename","Delete","Verify","authorizeFailed","Withdraw","getTransferActionStyle","getTransferActionIconClass","getApprovalMethodLabel","isNotYetCreatedStatus","isPendingStatus","isRejectedStatus","isCancelledStatus","isNotYetCreatedOrPendingStatus","isRejectedOrCancelledStatus","getTransferStatusText","getTransferStatusName","estimatedFundsAvailableDate","getTransferBankIdentifierType","BIC","ABA","getTransferMethod","relatedData","recipientBank","transferMechanism","getTransferTypeLabel","achRelationshipId","achRelationship","bankAccount","memos","International","Domestic","getTransferWireType","getDeliveryMethodLabel","deliveryMethod","getFormattedAchRelationship","acct","nickName","bankName","getFormattedTransferInstruction","stateProvince","intermediary","StatusClassMap","CreateRejected","Canceled","Approved","PendingRepCreateApproval","PendingCreateApproval","PendingFirmCreateApproval","PendingFirmApproval","Pending","SentToBank","Complete","PendingPrinting","Void","Returned","StopPayment","CashieringEntityStatus","showWarning","fontStyle","AccountTransferContent","cashieringSelectors","newTransferId","isLoadingTransfers","dataIsLoading","isLoadingAchRelationships","isLoadingTransferInstructions","originalAccountId","originalAccount","targetedAccountStatuses","rejectMsg","currentAccountId","setCurrentAccountId","fetchData","setFetchData","transferIdToDelete","setTransferIdToDelete","comment","transferId","disbursementType","requestedAmount","CashieringEntityStatus_CashieringEntityStatus","backdrop","AccountTransferNotSupportedContent","isRQD","AccountTransferNotSupportedRQDContent","AccountTransferNotSupportedAPEXContent","AccountTransferBlock","blockContent","AccountTransferContent_AccountTransferContent","useOptionChainData","resetExpirations","setExpandedExpirations","expirationsSelector","expandedExpirations","expValues","useOptionChainActions","OptionChainHeader","useOptionChain","symbolExpirationStateSelector","optionChainSelectors","optionChainSymbol","isLoadingExpirations","getBidPriceOrLastPriceOrUndefined","_s$quotes$quoteMetada","OptionChainGlobalSelectors","strikeMoreThanBid","bidOrLastPrice","OptionChainTableRow","rowKey","onRowClick","tableInstance","closestToPriceRowRef","useBlockSymbolValue","tableTdClass","isClosestToPrice","trClassName","bidGreaterThanStrike","rowProps","getRowProps","renderRow","renderedRow","resolvedClass","cells","cell","isCallOption","priceClass","headerVal","tdClassName","cellProps","getCellProps","favoritesStyling","cellClass","columnWidth","isTableOptionPairData","ExpirationRowMemo","unitAmount","expanded","units","expirationTypeClass","expirationTypeLabel","colSpan","RootExpirationRow","dateForDiff","exDays","expandedStrs","ee","toggleExpandedExpiration","updatedExpanded","takeRight","MaxExpandedExpirations","multipleExist","multipleExpirationForDateExist","toShort","timeOfDay","expirationDisplay","RenderExpirationRow","RootExpirationRow_RootExpirationRow","AddRemoveFavorite","onFavoriteAdd","OptionChainOrderDropdown","orderActionForBid","orderBlocksExist","orderActionName","onAddLegToOrder","orderBlock","optionSymbol","AddRemoveFavorite_AddRemoveFavorite","favoritesBlock","SymbolBidAsk","linkableOrderBlockExists","bidAskValue","getQuoteBidAsk","optionChainDropdownProps","OptionChainOrderDropdown_OptionChainOrderDropdown","BidAskMemo","BidAsk_SymbolBidAsk","SymbolOptionPairVolume","GetOCCSymbol","quoteVolume","vol","getQuoteVolume","OptionPairVolumeMemo","OptionPairVolume_SymbolOptionPairVolume","ExpirationsFilter","selectorFunction","handleChange","expirationFrequency","isOrderBlock","dataOptionsWithoutStrikePriceCompare","changeClass","getCellOptionData","getCellOccSymbol","getColumnHeader","optionColumns","OptionChainTable","filteredOptionChain","columnsDisplayed","cols","substr","lastIndexOf","_ref2$cell","fieldName","isStrikeField","greeks","pairData","isMiddleColumn","cellSym","isOptionChainVolumeField","cellAssetSymbol","shift","simpleExpires","dataDisplayed","rows","rowValues","RootExpirationRow_RenderExpirationRow","matchingExpanded","matchingPairs","expandedRows","closestStrike","closestStrikeIndex","totalWidth","proportion","ExpirationsFilter_ExpirationsFilter","RowComponent","OptionChainContent","expandFirstExpiration","optionChainSettings","useOptionChainLoader","symbolExpirationSelector","expirationDates","firstExpiration","OptionChainTable_OptionChainTable","SymbolContent","useDebug","subscribedSymbols","setSubscribedSymbols","_useQuoteActions","loadedoptionChains","filteredChainData","symbolsForData","expPairs","pairSymbols","pair","useOptionChainSymbols","OptionChainContent_OptionChainContent","OptionChainBlock_SymbolContent","settingsFields","yesOptionLabel","noOptionLabel","fieldLabel","fieldNote","Delta","Theta","Gamma","IV","OptionChainBlock","_useOptionChainGroupH","currentSymbol","setCurrentSymbol","useOptionChainGroupHandler","OptionChainHeader_OptionChainHeader","OptionChainBlock_Content","OptionChainBlockReducer","QuoteHeader","TradeButton","linkableBlockExists","buttonTitle","delayShow","SymbolInfoTrade","createOrUpdateOrderBlock","addBlockToGroupId","isUnderlyingSymbol","initialBlockData","underlying","useOrderBlock","TradeButton_TradeButton","DirectionalSymbolPrice","SymbolInfo","hideNetChange","netChange","_useSign","useSign","_useSign2","changeUi","changePercVal","SymbolInfo_DirectionalSymbolPrice","SymbolInfo_SymbolInfoTrade","OrderField","cssClass","SymbolOrders","defaultQuote","SymbolOrders_OrderField","CompanyInfo","extendedQuote","quoteExtendedSelectors","companyName","zip","website","sector","industry","ceo","employees","QuoteBlockConstants","isQuoteTab","useQuoteData","SummaryInfo","earningsPeriod","symbolEarnings","isDateInPast","setHours","week52Low","week52High","avg10Volume","ttmEps","day200MovingAvg","day50MovingAvg","nextEarningsDate","numeral","marketCap","sharesOutstanding","peRatio","dividendYield","ttmDividendRate","nextDividendDate","QuoteBlockActions","setEarningsPeriod","setDividendsPeriod","dividendOptions","DividendsInfo","dividendsPeriod","setPeriod","currentTimeframeOption","currentTimeframe","onTimeframeChange","symbolDividends","dividendInfo","declaredDate","dividendPeriod","exDate","paymentDate","earningOptions","EarningsInfo","periodVal","reportDates","actualEps","consensusEps","epsSurpriseDollar","epsSurprisePercent","prevYearActualEps","prevYearActualEpsPercentChange","QuoteContent","SymbolInfo_SymbolInfo","SymbolOrders_SymbolOrders","Summary_SummaryInfo","Company_CompanyInfo","Earnings_EarningsInfo","Dividends_DividendsInfo","quoteMetaDataSel","QuoteContentBlock","QuoteContent_QuoteContent","QuoteExtendedBlock","setSymb","quoteSymbol","useQuoteBlockGroupHandler","QuoteHeader_QuoteHeader","QuoteExtendedBlock_QuoteContentBlock","QuoteBlockReducer","InfoBlockActions","setNoticePeriod","InfoBlockReducer","infoPeriod","noticesPeriod","InfoHeader","useInfoSettings","useInfoBlockSettings","DJISymbols","NASDAQSymbols","SP500Symbols","MarketNewsTab","positionsLoaded","isFetchingFavorites","favoriteSymbols","favorite","symbolArr","channelArray","channelMappings","dailyNewsfeed","corporateActionsDividends","earningsReports","rumorsAndIdeas","companyNews","sectorNews","ipos","economicsAndGovernment","theMarkets","etfCoverage","groupAsset","channelObj","_useStateSelector2","_useStateSelector2$da","allItems","setAllItems","socketResult","articleRefs","scrollRef","executeScroll","executeTopScroll","article","setArticle","isDJIA","isSPX","isNasdaq","isVIX","stopPollingForMarketNews","beginPollingForMarketNews","timeoutMS","pageSizes","array","getPageCount","pageSizeOptions","pageSizeLabel","onPageSizeChanged","pageSizeOption","pageNumber","paginate","el","articleEl","author","ActiveAlertsTab","isAlertsFetching","hasData","listStyleType","InfoBlockConstants","newFeatures","pressRelease","addReleaseNotes","useInfoData","releaseNotesRequestKey","qs","alphabeticalSort","releaseNotesRequestToQueryString","getReleaseNotesRequestKey","uiState","getReleaseNotesFilterData","requestKey","AccountManagementSearchRequestSelector","useReleaseNotesData","ReleaseNotesColumns","ReleaseNotesTable","_useReleaseNotesData","newReleaseNote","requestReleaseNotes","setReleaseNotesPage","setReleaseNotesPageSize","InfoContent","MarketNews_MarketNewsTab","ReleaseNotesTable_ReleaseNotesTable","ActiveAlerts_ActiveAlertsTab","InfoContentBlock","InfoContent_InfoContent","InfoBlock","useInfoBlockGroupHandler","InfoHeader_InfoHeader","InfoBlockSettingsFields","InfoBlock_InfoContentBlock","AccountManagementReducer","AdminToolsConstants","useAdminToolsData","AdminToolsBlockActions","accountManagementRequestToQueryString","accountManagementRequestKey","objectTypes","PhoneNumber","MailingAddress","Financial","TradeGoal","Employment","TrustedContact","Disclosures","Experience","IndustryEmployed","Suitability","Flexability","getEntityKey","getRequestKey","getAccountUpdateSearchEntities","queryState","allValues","ids","getAccountManagementSearchFilterdata","getAccountManagementSearchTotal","isFetchingAccountManagementSearchUpdates","qState","filterData","PendingConfirm","PendingFirmReview","AccountUpdateItemStatus","ItemCell","AccountManagementUpdateStatus_AccountUpdateItemStatus","AccountManagementActionCell","updateItem","AdminAccountManagementSearchActions","setCurrentItem","AccountUpdateDetails","updateDetails","AccountManagementUserDetails","secondaryOrUgmaBen","phoneNumberString","AccountUpdateEntityAuditItems","updateActions","accountActions","AccountUpdateEntityAuditItems_AccountUpdateEntityItem","statusAction","AccountUpdateEntityItem","AccountManagementUpdateItemStatus","AccountUpdateEntityAuditItems_AccountUpdateEntityAuditItems","AccountManagementUpdateRequest","isCompleteOrApproved","boolean","origEmail","isPrimary","phonesValue","updatedTypeValue","originalPhone","AccountUpdateEntityNotes","onEditToggle","toggleNote","setToggleNote","noteValue","setNoteValue","newVal","clearCurrentItem","requestFirmRejectUpdate","handleReject","requestFirmApproveUpdate","handleApproval","AccountManagementFinancialDetails","financialFields","AccountManagementDocReview","imageDocumentsRef","PendingReview","Submitted","getMiscellaneousDocument","clearDocUpdate","requestFirmRejectDoc","handleRejection","requestFirmApproveDoc","AdminAccountManagementDetail","currentItemRequest","requestUserAccountUpdateDetails","requestUserAccountDetails","AccountManagementUserDetails_AccountManagementUserDetails","AccountManagementFinancialDetails_AccountManagementFinancialDetails","AccountUpdateDetails_AccountUpdateDetails","AccountManagementUpdateRequest_AccountManagementUpdateRequest","AccountManagementDocReview_AccountManagementDocReview","AccountManagementUpdateItemStatus_AccountManagementUpdateItemStatus","AccountUpdateEntityNotes_AccountUpdateEntityNotes","typeOptions","PersonalInformation","Phone","RemoveTradeAuthorization","ServiceProfile","TradeAuthorization","statusOptions","AccountManagementFilters","_useAccountManagement","states","_useAccountManagement2","setType","useAccountManagementActions","setSearchSubmitted","onSearchSubmit","_useInput","useInput","onEnter","_useInput2","setSearchValue","inputProps","onClearSearch","currentSearch","currentType","firstType","defaultType","currentStatus","firstStatus","defaultStatus","onTypeChange","types","onStatusChange","AdminAccountManagementColumns","AccountManagementItemCell_ItemCell","disableSortBy","AccountManagementActionCell_AccountManagementActionCell","AccountManagementTable","requestUserAccountUpdates","refresh","sortData","entityKey","AccountManagementFilters_AccountManagementFilters","AdminAccountManagementDetail_AdminAccountManagementDetail","AdminAccountManagementIndex","AccountManagementTable_AccountManagementTable","alertRequestToQueryString","alertRequestKey","getAlertsSearchFilterData","getAlertsSearchTotal","AlertSearchRequestSelector","isFetchingAlerts","useAlertsData","esm_extends","AlertsActionCell","template","_useAlertsData","requestUpdateAlert","AddAlertMessage","initialAlertMessageValues","alertValues","requestCreateAlert","TextareaField","listStyle","EditAlertMessage","alertMessage","AdminAlertsColumns","showEditAlertMessage","setShowEditAlertMessage","EditAlertMessage_EditAlertMessage","AlertsActionCell_AlertsActionCell","AlertsTable","showAddAlertMessage","setShowAddAlertMessage","requestAlertTemplates","setAlertsPage","setAlertsPageSize","AddAlertMessage_AddAlertMessage","entitlementRequestToQueryString","entitlementRequestKey","entitlementUpdateKey","getEntitlementUpdateSearchEntities","getEntitlementsSearchFilterData","getEntitlementsSearchTotal","EntitlementsSearchRequestSelector","isFetchingEntitlements","EntitlementsActionCell","AdminEntitlementsSearchActions","EntitlementsItemCell","isRejected","AdminEntitlementsFooter","requestRejectUserMarketDataEntitlement","requestApproveUserMarketDataEntitlement","EntitlementRequestDetails","EntitlementRequestAccountDetails","EntitlementRequestFinancialDetails","AdminEntitlementsDetail","isCurrentItemFetching","requestEntitlementAccountDetails","EntitlementRequestDetails_EntitlementRequestDetails","EntitlementRequestAccountDetails_EntitlementRequestAccountDetails","EntitlementRequestFinancialDetails_EntitlementRequestFinancialDetails","EntitlementsFooter_AdminEntitlementsFooter","AdminEntitlementsColumns","MiddleInitial","Suffix","EntitlementsItemCell_EntitlementsItemCell","EntitlementsActionCell_EntitlementsActionCell","EntitlementsTable","_useEntitlementsData","useEntitlementsData","currentItemDetails","requestSent","setRequestSent","requestEntitlementUpdates","refreshEntitlements","setEntitlementsPage","setEntitlementsPageSize","AdminEntitlementsDetail_AdminEntitlementsDetail","AdminEntitlementsIndex","EntitlementsTable_EntitlementsTable","applicationRequestToQueryString","applicationRequestKey","applicationUpdateKey","visibleRepIds","repId","getApplicationSearchEntities","getApplicationSearchFilterData","getApplicationSearchTotal","isFetchingApplications","ApplicationsSearchRequestSelector","useApplicationsData","ApplicationsActionCell","setAppCurrentItem","ApplicationSecureAccount","Beneficiary","Simple","formatFlexibilityType","formatClearerType","ApplicationInvestingProfile","ApplicationAccountInformation","secondaryAccountHolder","birthDate","formatBirthDate","ApplicationBeneficiaryInformation","ein","ApplicationDocumentsRequested","requestedParticipantsDocuments","getRequestedParticipantsDocuments","areDocumentsRequested","areDocumentsUploaded","requestInvestigations","formatDocumentName","Passport","MilitaryId","SsnCard","SSNCard","SsaLetter","SSALetter","IrsItinLetter","IRSITINLetter","OtherGovernmentId","ForeignerGovermentId","CddDocument","AllPassingCipResults","IrsW9Form","IRSW9Form","ForeignerSignature","IdDocument","Document","requestedDoc","uploadedDocument","miscDocumentId","originalFileName","takenOn","ApplicationAgreements","agreementKeys","needsApiAgreement","isIra","isEntity","isMargin","isOptionsInTradeGoals","allAgreementKeys","Roth","CoverDell","LlcCCorporation","LlcSCorporation","CCorporation","SCorporation","Joint","getAllAgreementKeysForApplication","answeredMarketDataKeys","marketDataKeys","answeredMarketDataQs","getMarketDataResponses","agreementKey","getAgreementResponse","formatAgreementKey","marketDataFields","marketDataKey","getMarketDataResponse","formatMarketDataKey","AdminApplicationDetail","clearAppCurrentItem","SecureAccount_ApplicationSecureAccount","InvestingProfile_ApplicationInvestingProfile","AccountInformation_ApplicationAccountInformation","BeneficiaryInformation_ApplicationBeneficiaryInformation","DocumentsRequested_ApplicationDocumentsRequested","Agreements_ApplicationAgreements","stepOptions","SecureAccount","InvestingProfile","AccountInformation","Agreements","Sign","UGMA","ApplicationsFilters","_useApplicationsData","steps","_useApplicationsActio","AdminPendingApplicationActions","setAppSearch","setStep","setAppSearchStep","setAppSearchType","useApplicationsActions","currentStep","firstStep","defaultStep","onStepChange","AdminApplicationsColumns","_row$original$primary","lastSavedOn","latestStepSaved","lastStep","isSubmitted","applicationSentOn","docsRequired","setDocsRequired","setIsLoading","getInvestigations","ApplicationsActionCell_ApplicationsActionCell","ApplicationsTable","requestApplications","refreshApplications","setAppSortBy","setAppPage","setAppPageSize","ApplicationsFilters_ApplicationsFilters","AdminApplicationsDetail_AdminApplicationDetail","AdminApplicationsIndex","ApplicationsTable_ApplicationsTable","AddReleaseNotes","initialReleaseNotesValues","jiraIssueNumber","requestCreateRelease","EditReleaseNote","initialReleaseNoteValues","releaseNoteValues","requestUpdateRelease","showEditReleaseNotes","setShowEditReleaseNotes","EditReleaseNotes_EditReleaseNote","ReleaseNotesAdminTable","AdminReleaseNotesIndex","showAddReleaseNotes","setShowAddReleaseNotes","ReleaseNotesAdminTable_ReleaseNotesAdminTable","AddReleaseNotes_AddReleaseNotes","AdminToolsContent","currentApplicationItem","currentAccManagementItem","currentEntitlementsItem","AdminAccountManagementIndex_AdminAccountManagementIndex","AlertsTable_AlertsTable","AdminApplicationsIndex_AdminApplicationsIndex","AdminEntitlementsIndex_AdminEntitlementsIndex","ReleaseNotesAdminIndex_AdminReleaseNotesIndex","AdminToolsHeader","AdminToolsContentBlock","AdminToolsContent_AdminToolsContent","AdminToolsBlock","AdminToolsHeader_AdminToolsHeader","AdminToolsBlock_AdminToolsContentBlock","AdminToolsReducer","AccountStatementsHeader","accountStatementsSelectors","taxDocumentStatements","DownloadComponent","GenericErrorResponseCode","downloadStatus","setDownloadStatus","setErrorMessage","_row$original$documen","_row$original$documen2","formType","received_on","fileURL","link","setAttribute","appendChild","revokeObjectURL","AccountStatementsDailyConfirms","formattedDailyStatements","requestedStartDate","requestedEndDate","DownloadComponent_DownloadComponent","YearPicker","isRQDTaxStatementView","AccountStatementsMonthlyStatements","getFullYear","formattedMonthlyStatements","requestMonthlyAccountStatementsThrottleCallback","throttle","AccountStatementsTaxDocuments","taxDocument","setTaxDocument","taxDocuments","formattedTaxDocuments","requestTaxAccountStatementsThrottleCallback","selectedTaxDocument","AccountStatementsRender","BlockFactory","wrapperId","isActivityBlock","isInfoBlock","isAccountManagementBlock","isAdminToolsBlock","initData","tablesValue","typeFactory","blockStateFactory","defaultOrderBlockSettings","defaultOrderBlockSettingsSelector","defaultInfoBlockSettings","defaultInfoBlockSettingsSelector","BlockState","reducer","OrderBlock_OrderBlock","ActivityBlock_ActivityBlock","OptionChainBlock_OptionChainBlock","QuoteExtendedBlock_QuoteExtendedBlock","InfoBlock_InfoBlock","AccountManagementBlock_AccountManagementBlock","AdminToolsBlock_AdminToolsBlock","AccountStatements_AccountStatements","AccountBlock_AccountBlock","AccountTransferBlock_AccountTransferBlock","FavoritesBlock_FavoritesBlock","PositionBlock_PositionBlock","PriceChartBlock_PriceChartBlock","AnalyticsBlock_AnalyticsBlock","GridResizeSync","windowWidth","documentWidth","useDocumentWidth","hasVerticalScrollbar","Event","DashboardGrid","blockInfos","blockIdsAndTypesSelector","DashboardGrid_GridNotifications","DashboardGrid_GridWrapper","blockWrapperId","data-wrapper-id","BlockFactory_BlockFactory","GridNotifications","linkError","linkErroredAt","lockGrid","dismiss","borderLeft","borderRight","unClosable","GridWrapper","accountLoaded","sessionExpired","layoutSelectors","blockLayouts","getLayoutWithMinSize","onBreakpointChange","newBreakpoint","newCols","onLayoutChange","_newLayouts","allLayouts","allLayoutsWithType","newLayouts","correctInvalidLayoutItem","containerPadding","rowHeight","storageProvider","AudioHotkeys","onSuccess","EnvironmentHotkeys","toggleVirtualTrading","AlertMessage","DashboardView","_useToggle","useToggle","_useToggle2","_usePageNav","usePageNav","nav","_useDashboardDrawer","setDrawerIsOpen","toggleDrawerIsOpen","useDashboardDrawer","_useDashboardDrawer2","dashboardIdFromUrl","dashboardid","uiApiToken","addingDefaultDashboard","setAddingDefaultDashboard","redirectToDashboardId","firstDefaultDashboard","useLocalStorage","logoutOnClose","SyncTabStorageKey","sync","SIGNOUT","ExpireTokenInStorage","showAlerts","setShowAlerts","alertViewed","cookie","activeAlertsIds","cookieAlertIdsAsArray","dashboardClass","collapsed","react_router","DashboardWrapper_DashboardWrapper","DashboardNavigation_DashboardNavigation","DashboardContentWrapper_DashboardContentWrapper","editClass","linkingClass","DashboardView_Hotkeys","DashboardGrid_DashboardGrid","DashboardDrawer_DashboardDrawer","Menu_DashboardMenu","AlertMessage_AlertMessage","Hotkeys","AudioHotkeys_AudioHotkeys","BlockHotkeys_BlockHotkeys","DashboardHotkeys_DashboardHotkeys","GridHotkeys_GridHotkeys","EnvironmentHotkeys_EnvironmentHotkeys","useCashieringDataContext","formStatus","setFormStatus","closeScreen","setCloseScreen","submitted","gotoNextView","nextView","AuthorizeView","securityQuestionIsLoading","dataIsFetching","securityQuestionMessage","dataMessage","securityQuestionStatus","dataStatus","securityQuestionIsVerifying","dataIsSaving","balanceTotals","previousVerificationFailed","allVerificationsFailed","danger","securityResponses","showNextSecurityQuestion","resetStatus","autoComplete","validateAmount","amountNumber","parseNumber","validateTransferAmount","subAccountBalances","amountErrors","subAccountsValues","transfer.subAccountId","validatePositions","hasPositions","uniquePositionSymbols","closeAccount","transfer.closeAccount","validateTransferMechanism","instructionId","nameOnAccount","transfer.nameOnAccount","transfer.deliveryMethod","validateABARouting","validateBICSWIFT","validateAccountNumber","DisbursementTypeOptions","WithdrawalAmountViewContent","getAccountBalances","withdrawFullBalance","transferSubAccountId","setTransferSubAccountId","allAccounts","subAccs","onChangeDisbursementType","flex","CurrencyField","distributionReason","CheckboxField","WithdrawalAmountView","selectedSubAccount","selectedSubAccountDetails","WithdrawalAmountView_WithdrawalAmountViewContent","useWithdrawalAmountView","SelectCheckTransfer","SelectDropdownInput","createGenericAccountList","selectable","addBtn","renderName","renderIcon","renderStatus","renderFootnote","setDocumentType","intermediaryDocumentType","setIntermediaryDocumentType","isTransferInstructionField","bankIdsWithUploads","setBankIdsWithUploads","bankIdsWithMultipleUploads","setBankIdsWithMultipleUploads","bankIdsWithIntermediary","setBankIdsWithIntermediary","isFetchingDocuments","setIsFetchingDocuments","getDocType","isIntermediary","getDocumentIds","getId","getIntermediaryIds","htmlFor","onChangedAndSetValue","help","AccountRenameForm","AchRelationshipForm","plaidLinkToken","protocol","hostname","port","AchRelationshipForm_AchRelationshipPlaidForm","AchRelationshipForm_AchRelationshipMicroDepositForm","AchRelationshipPlaidForm","plaidMetadata","setPlaidMetadata","plaidFailed","setPlaidFailed","plaidSucceeded","plaidConfig","linkCustomizationName","onExit","_usePlaidLink","usePlaidLink","openPlaidLink","plaidReady","ready","onOpenPlaid","institution","subtype","onChangePlaidAccountId","plaidAccountId","mask","AchRelationshipMicroDepositForm","AchRelationshipVerifyForm","BaseAchRelationshipList","AchRelationshipList","onVerify","onRename","_useCashieringDataCon","isManageView","selectableAchRelationships","maxItemsWarning","setMaxItemsWarning","onCloseClick","onAddClick","Cashiering","MaxAchRelationships","gotoManageView","isEditing","getAccountName","getAccountIcon","verifyBtn","cancellation","getFootnote","pendingAchRelationships","AchRelationshipForm_AchRelationshipForm","AccountRenameForm_AccountRenameForm","AchRelationshipVerifyForm_AchRelationshipVerifyForm","SelectAchRelationshipTransfer","setManageAction","isRQDAccount","approvalMethods","showAddOptions","nextAction","onSelectApprovalMethod","bankAccountType","AchRelationshipList_AchRelationshipList","getApprovalMethodDescription","RecipientBankForm","showIntermediary","setShowIntermediary","bankIdentifierType","BaseTransferInstructionsList","RecipientBankList","selectableTransferInstructions","ti","RecipientBankForm_RecipientBankForm","SelectWireTransfer","APEXWireDetails","RQDWireDetails","RecipientBankList_RecipientBankList","AccountsList","_body","isSavingAchRelationships","currentDayACHTransfers","currentDay","getDate","getMonth","transferDate","transferDay","useCurrentDayACHTransfersLimit","isACHTransferLimitExceeded","transferMechanismOptions","exceedsDailyLimitText","fees","SelectAchRelationshipTransfer_SelectAchRelationshipTransfer","SelectWireTransfer_SelectWireTransfer","SelectCheckTransfer_SelectCheckTransfer","useCashieringAccountsList","_useCashieringDataCon2","account.approvalMethod","validateTransferAchRelationshipOptions","account.plaidAccountId","account.nickName","account.bankAccountType","bankRoutingNumber","account.bankRoutingNumber","account.bankName","account.bankAccount","bankAccountOwnerName","account.bankAccountOwnerName","validateTransferAchRelationship","account.name","account.identifier","account.accountNumber","account.city","account.stateProvince","account.postalCode","account.country","validateTransferRecipientBank","amount1Errors","amount1","amount2Errors","amount2","pick","secretData","bankAccountSecret","bankAccountOwnerNameSecret","approve","accountSecret","nameSecret","streetAddress1","streetAddress2","WithdrawalTypeView","_useWithdrawalAmountV","_useCashieringAccount","TransferAccountsList","cashieringRequestToQueryString","cashieringRequestKey","AchRelationship","Transfer","TransferRecipientBank","TransferWireInstruction","cashieringEntityKey","entityId","transferRecipientBank","transferRecipientBankId","relationshipId","transferWireInstruction","transferWireInstructionId","getEntityDetailKey","getCashieringSearchEntities","getCashieringSearchTotal","getCashieringSearchFilterData","isFetchingCashieringSearchEntities","searchEntitySelector","idNum","baseEntitySelector","transferById","relationshipById","recipientBankById","beneficiaryById","wireInstructionsById","transferData","relationshipData","recipientBankData","wireInstructionsData","transferSelectors","relationshipSelectors","recipientBankSelectors","detailType","entity","searchEntity","entityNote","adminNote","entityAdminNote","wireInstructionSelectors","entitySelector","searchEntityData","detailEntityData","isErrored","typeData","CashieringSearchRequestSelector","CashieringEntityOwnerNames","CashieringEntityDetails","transferInstruction","AccountWithdrawalDisplay","isPendingFullWithdrawal","adminReview","subAccountTransferValues","subAccountIds","subAccountDataAndValues","transferAmount","CashieringEntityOwnerNames_CashieringEntityOwnerNames","CashieringEntityDetails_CashieringEntityDetails","WithdrawalReviewViewContent","AccountWithdrawalDisplay_AccountWithdrawalDisplay","WithdrawalReviewView","WithdrawalReviewView_WithdrawalReviewViewContent","DepositAmountViewContent","DepositAmountView","DepositAmountView_DepositAmountViewContent","useDepositAmountView","DepositTypeView","_useDepositAmountView","AccountDepositDisplay","DepositReviewViewContent","AccountDepositDisplay_AccountDepositDisplay","DepositReviewView","DepositReviewView_DepositReviewViewContent","ManageView","OAuthAchRelationshipPlaidForm","receivedRedirectUri","OAuthPlaidRedirectView","OAuthPlaidRedirectView_OAuthAchRelationshipPlaidForm","useCashieringView","securityResponse","useAuthorizeView","_useCashieringAccount3","_useCashieringAccount4","onSubmitActions","onValidateActions","useWithdrawalTypeView","baseWithdrawal","achWithdrawal","achWithdrawals","wireWithdrawal","wireWithdrawals","checkWithdrawal","memo1","memo2","memo3","checkWithdrawals","useWithdrawalReviewView","useDepositTypeView","achDeposit","useDepositReviewView","useManageView","useOAuthPlaidRedirectView","ScreenContentWrapper","ScreenWrapper","ScreenWrapper_ScreenContentWrapper","ScreenWrapper_CloseScreenModal","CloseScreenModal","showConfirmClose","screenType","BaseCashieringView","BaseCashieringView_BaseCashieringViewContent","BaseCashieringViewContent","useHistory","_useCashieringData","isSavingAccountForm","isSavingTransferForm","isSavingAchRelationship","isSavingWireInstructions","isFetchingAchRelationships","isFetchingWireInstructions","statusAccountForm","statusTransferForm","statusAchRelationships","statusWireInstructions","messageAccountForm","messageTransferForm","messageAchRelationships","messageWireInstructions","savingInProgress","setSavingInProgress","useCashieringData","_useCashieringView","_useCashieringView2","TransferViewComponent","onViewSubmit","onViewValidate","more","isPrimaryButtonDisabled","routeTitle","getTransferRouteTitle","viewSubtitle","getTransferViewSubtitle","showCancel","onHandleSubmit","ScreenWrapper_ScreenWrapper","getAlertProps","primaryButton","isNull","showPrimaryButton","contents","getViewPrimaryButton","onHandleSubmitClick","SessionExpiredModal","expirationReason","reasonText","reasonIsLogout","ErrorModal","isAuthExpired","urlPaths","isTransferRequest","actionUrl","_actionUrl$split","showModal","closeModal","SessionWrapper","authTimeout","useActivityTimeout","Inactivity","SessionExpiredModal_SessionExpiredModal","ErrorModal_ErrorModal","usePageSettings","access","allowed","isAdminUserLevel","isRepUserLevel","SelectSubAccountButton","selected","isSelectedSubAccount","setSubAccount","formatAccountNumber","SubAccountTable","subAccountsIsFetching","accountBalance","linkedAccountsBalances","balanceIsFetching","SubAccountListColumns","SelectSubAccountButton_SelectSubAccountButton","balance","AvailableForTrade","getRowClass","AccountSelectionButton","selectedText","_ref$selected","onSelectedCallback","_ref$type","AccountsTable","multipleAccounts","totalAccounts","totalLinkedAccounts","linkedAccountBalances","persistSearchOptions","setPersistSearchOptions","searchOptions","setSortByOrder","statusFilter","setStatusFilter","optionsUpdateTimerId","requestLinkedAccounts","requestSubAccounts","AccountsTableRender","accountSelectedCallback","resetSearch","retrieveSetAccountData","searchOptionsPage","searchOptionsSearchTerm","statuses","isSelectedEqualToOriginal","accountsTableColumns","JTWROS","Traditional_IRA","IRA_RollOver","Roth_IRA","SEP_IRA","JTIC","Corporate","LLC","Partnership","Qualified_Plan","Sole_Proprietorship","InvestmentClub","TBE","CommunityProperty","Coverdell_IRA","formatAccountType","selectedFilter","visibility","searchTerm","AccountSwitcher","hasLinkedAccounts","setMultipleAccounts","keyboard","SubAccountTable_SubAccountTable","RootContentPage","userAccount","RepCode","SessionWrapper_SessionWrapper","Api","exact","AccountSwitcher_AccountSwitcher","getFeedStatus","getFeedQuoteQueue","FeedSync","useFeedQuoteQueue","quotesRef","intervalRef","combinedQuotes","canConnectToWebsocket","useWebsocket","websocket","shouldReconnect","setShouldReconnect","closeReason","setCloseReason","retryTimeoutMs","retryTimeout","dispatchers","globalDispatch","_getFeedActions","feedStatus","useFeedStatus","canConnect","closeSocket","trySetupWebsocket","WebSocket","tradingApiWebsockets","onopen","onclose","onmessage","setExtras","extra","msg","OrderFeedActions","receivedUpdate","onerror","createWebsocketError","socket","readyState","CLOSED","newTimeout","Websockets","ReconnectInterval","newTimeoutDisplay","closeMessage","closed","retryingInSeconds","OPEN","FeedSocketWrapper","socketRef","_useWebsocket","Feed","_useReducer","useReducer","_useReducer2","Feed_FeedSocketWrapper","FeedSync_FeedSync","tryVerify","publicKey","decoded","jwtValues","verifyToken","id_token","pubKey","uiApi","tryGetToken","tokenFromUrl","tokensFromState","tokenFromLS","tokenVal","tokenResult","tokenPayload","TokenFromStorage","SaveTokenInStorage","tryGetOrigin","originFromUrl","originFromState","originFromLS","parseOriginLS","AuthenticationPage","urlParams","refreshTokenSelector","nextPage","GetUrlParams","currentToken","setCurrentToken","tokenRes","pending","grp","originRes","redirectReps","loginUrl","LogoutPage","tokenFromState","AdminRoot","useCashieringActions","AdminCashieringSearchActions","TransactionCell","CashieringActionCell","CashieringMethodCell","getApprovalMethod","CashieringEntityNotes","wrapperClassName","bodyClassName","footerClassName","formattedName","editNoteType","setEditNoteType","adminNoteValue","setAdminNoteValue","recipientBankValue","setTransferWireInstructionValue","adminNotes","setAdminNotes","notes","setNotes","alertEmail","setAlertEmail","wireInstruction","toggleNoteField","noteType","editType","setNotesHelper","getNotes","getWireInstruction","saveHandler","noteField","updateAction","updateRelationshipRequest","alertRep","cashieringWireInstructionsUpdateRequest","updateTransferRequest","createBy","NoteRow","borderBottomWidth","borderBottomStyle","CashieringNoteCell","edit","setEdit","toggleShow","shouldShow","showVal","CashieringEntityNotes_CashieringEntityNotes","CashieringAdminReviewColumns","CashieringTransactionCell_TransactionCell","CashieringMethodCell_CashieringMethodCell","CashieringNoteCell_CashieringNoteCell","_row$original4","sessionStorage","CashieringActionCell_CashieringActionCell","_useCashieringActions","handleSetFilter","removeItem","handleSetSelectedRow","CashieringTableContent","CashieringDownloadCSVModal","downloadAction","setIncludeList","includeList","handleHide","_val","centerStyle","downloadCSVButtonStyle","CashieringTable","selectedRowIndex","cashieringSearch","rowClassName","cashieringSearchRequest","simplifiedData","cashieringItem","columnNames","DISPLAY_NAMES","accountname","accountnumber","repcode","accountstatus","excludedColumnsById","recordedModalColumns","checkboxListStyle","toSpliced","updateIncludeList","checkboxStyle","showSearchDate","setShowSearchDate","setStartDate","setEndDate","dateRef","handleDateInput","resetDateButtonStyle","csvMainActionButtonContainerStyle","csvMainActionButtonStyle","CashieringTable_CashieringDownloadCSVModal","_csvData","selectionList","num","csvData","transaction","banksignatory","transferamount","transferdirection","lowerKey","CashieringTable_CashieringTableContent","allOption","unshift","CashieringFilters","searchSubmitted","useLatestPendingCashieringDate","onLatestDateChange","onlyRunOnChange","prevDateValue","latestCashieringUpdate","latestPendingCashieringEventDate","CashieringHeader","newPendingRequestsExist","setNewPendingRequestsExist","handleNewCashieringRequests","refreshCashieringData","AdminCashieringIndex","setSelectedRowIndex","handleSetSelectedRowIndex","AdminCashieringIndex_CashieringHeader","CashieringFilters_CashieringFilters","CashieringTable_CashieringTable","accountById","balanceById","accountDetailsById","accountSelectors","balanceSelectors","accountDetailsSelectors","ValueArray","renderer","delimiter","CustomerAccountDetails","borderBottom","getBankRiskScore","score","formattedRiskScore","LowRisk","MediumRisk","HighRisk","formatLastUpdated","lastUpdated","bankAccountBalance","lastModifiedDate","bankAccountLastTransactionDate","approval","approvalTime","bankRiskScore","hasAllOwners","upperName","upperSecret","nameWords","word","secretWords","reviewAddresses","street","stateOrRegion","ValueArray_ValueArray","reviewEmails","reviewPhoneNumbers","CashieringTransferDetails","isFetchingDetails","_useCashieringTransfe","cashieringRelationshipRequest","cashieringWireInstructionsRequest","adminAvailableForWithdrawal","adminPendingFullBalanceWithdrawalsExist","useCashieringTransferData","detailsProps","CustomerAccountDetails_CustomerAccountDetails","RepStates","PendingApprovalStates","CancelledStates","TransferNotCancelableStates","CashieringReviewFormActions","entityType","onApprove","onReject","setAreDocumentsUploaded","entityStatus","SuccessResponseCode","isApprovalState","isCancelAllowed","hasPendingChildren","isWireInstructionsWithNoDocuments","permissions","entityTypeLabel","trimEnd","confirmCancel","setConfirmCancel","CashieringReviewForm","adminUserName","reviewLegacyRelationships","approveCreateRelationshipRequest","mapToRelationshipId","approveRepRequest","approveFirmRequest","approveRecipientBankRequest","cashieringWireInstructionsApproveRequest","rejectRelationshipRequest","rejectTransferRequest","rejectRecipientBankRequest","cashieringWireInstructionsRejectRequest","cancelRelationshipRequest","cancelTransferRequest","cashieringWireInstructionsCancelRequest","CashieringReviewFormActions_CashieringReviewFormActions","CashieringRelationshipDetails","CashieringDetailError","CashieringEntityAuditItems","transferInstructionDetails","CashieringEntityAuditItems_CashieringEntityAuditItem","repReviewed","rejected","returned","deleted","CashieringEntityAuditItem","CashieringRelationshipStatus","relationshipState","cancellationReason","cancellationComment","pendingMicroDeposit","CashieringEntityAuditItems_CashieringEntityAuditItems","CashieringTransferStatus","transferState","rejectReason","CashieringDocReview","intermediaryImageDocumentsRef","docsUploaded","setDocsUploaded","pdfsUploaded","setPdfsUploaded","resp","docId","getDocMetadata","imageName","getDoc","resArray","base64","fileUrl","intermediaryDocId","openPDF","refId","pdf","pdfWindow","write","isDocPDF","CashieringTransferInstructionDetails","CashieringDocReview_CashieringDocReview","CashieringTransferInstructionStatus","FilterForAccount","accountNumberValue","AdminCashieringDetail","_match$params","toInteger","isRelationship","isTransferWireInstruction","idValue","cashieringRelationshipDetailRequest","cashieringTransferDetailRequest","cashieringWireInstructionsDetailsRequest","entityInfo","editNote","setEditNote","saveState","setSaveState","FilterForAccount_FilterForAccount","CashieringRelationshipDetails_CashieringRelationshipDetails","CashieringTransferDetails_CashieringTransferDetails","CashieringTransferInstructionDetails_CashieringTransferInstructionDetails","CashieringRelationshipStatus_CashieringRelationshipStatus","CashieringTransferStatus_CashieringTransferStatus","CashieringTransferInstructionStatus_CashieringTransferInstructionStatus","CashieringDetailError_CashieringDetailError","CashieringReviewForm_CashieringReviewForm","AdminPageBase","sections","AdminRouter","AdminRouter_AdminPageBase","NoAccountPage","originLS","onSignUp","onSignOut","VersioningMiddleware","getState","viewed","cleanBlock","blockSettingsOrDefault","addBlockToBlocks","blockValue","SetBlockIds","getBlockAndGroupIdForUpdate","blockToReplace","bb","blockid","ChartInitializerActions","GroupMiddleware","prevState","OrderGroupActions","defaultOrderSettings","blockToUpdate","OrderInitializerActions","oldState","newState","oldBlockIds","getNewOrderBlock","isChartBlock","pricechart","getNewPriceChartBlock","handleBlockDeletion","handleDashboardBlocksRequest","apiRes","shouldFetch","stale","DataMiddleware","middleware","nextState","orderStatusId","apiTokenSelector","ApiProvider","totalNumOfAvailableItems","loadAccountOrders","shouldLoad","shouldLoadMorePositions","accountApiFromState","loadPositions","receiveCancel","Dispatcher","handleOrderCancel","handleFeedReconnect","debounced","debounceMiddleware","isDebouncedAction","throttleState","defaultActionThrottleState","throttled","actionType","setState","updateFunc","updatedState","timeFromNow","millisecondOffset","unit","timeoutFinished","runActionAfterTimeout","actionToRun","lastRun","throttleMiddleware","isThrottledAction","nextRunTimeMS","nextRunTime","diffms","notificationMiddleware","orderErrored","handleOrderError","handleOrderUpdates","APIAgreementResponseCode","APIAgreementResponseUpdateCode","legacySiteLoginLink","logoutLink","addNew","responseDefinition","isGenericError","responseMessage","notificationTitle","addOrderNotification","modal","_action$payload$order","orderSelector","statusIdMap","invert","isPartial","isPartiallyCancelled","newStatus","crashReporter","localforage","saveErr","isMetaAction","isWhitelisted","eventLogWhitelist","rg","tryLog","StorageProviderFactory","encode","eventLogMiddleware","isVerbose","verbose","updateLayouts","getUpdatedLayouts","layoutMiddleware","prevBlocks","_DefaultGridLayout$la","currLayouts","removedBlock","pb","newLayout","generateBlockClosestFitLayout","nextLayouts","handleAddBlock","bl","handleRemoveBlock","syncSessionExpired","wrappedAction","EXPIRATION","stateSyncMiddleware","syncTab","handleDashboardDeletion","handleCreateDashboard","tryLoadDashboards","persistBlocks","blockGroups","Sentry","tryPersistBlocks","actionMeta","getExistingOptionChainData","existingBlockData","existingBlockSymbolData","loadOptionChains","existingOptionChainData","_args2","existingChainData","tryLoadExpirations","symbolExpirations","tryLoadDefaultDashboards","defaultDashboardReceive","trySaveGlobalBlockSetting","blockSettingsSaveRequest","blockSettingsSaveReceive","blockSettingsSaveError","loadFavorites","favoriteValue","filteredFavoriteValue","StorageFavoritesPath","_symbol$symbol$split","_symbol$symbol$split2","contractInfo","expiry","handlePersistFavorites","tryLoadProfile","receiveUserProfile","errorUserProfile","tryLoadAccount","defaultAccounts","responseData","buildApiClient","defaultAccountId","APINotAuthorizedResponseCode","ApiTokenExpired","Roles","receiveAccounts","tryLoadSubAccounts","receiveSubAccounts","requestSubAccountsError","tryLoadAccountEntitlements","receiveAccountEntitlement","errorAccountEntitlement","setAccount","setLinkedAccountLoaded","requestAccounts","clientListRequestToQueryString","clientListRequestKey","clientList","filters","monitor","loadQuotes","currentSymbols","symbolsToLoad","diffSymbols","chunks","apiRequest","quotesWithSymbols","isLoadedFromApi","finish","loadQuotesExtended","quoteResponse","quoteWithSymbol","loadQuoteDividends","loadQuoteEarnings","strikeThrottle","queue","lastRan","requestStrike","strikeResponse","getRequestsWithinWindow","lastRequests","requestWindowMs","lr","getStrikeLastLoadedFromNowMs","symState","expState","lastLoaded","strikesLastLoaded","getStrikes","_RequestThrottle$getS","maxRequests","duplicateRequestIntervalMs","currentState","lastLoadedMs","lastRanWithinWindow","RequestThrottle","getStrike","tokenRefreshTimeout","existingTimer","handleTokenReceived","expiresAt","refreshAt","refreshFromNow_seconds","MINIMUM_REFRESHTOKEN_INTERVAL_MS","tryRefreshToken","_refreshTokenSelector","env","tokenResponse","accessToken","currentTokenIsValid","RefreshTokenPath","TokenStorageKey","handleTokenExpiration","cashieringUpdateTimeout","startPolling","previousState","stopPolling","marketNewsUpdateTimeout","loadInformation","receiveReleaseNotes","errorReleaseNotes","receiveCreateRelease","errorCreateRelease","receiveUpdateRelease","loadMarketNews","stateMarketNews","priorChannelRequest","priorSymbolRequest","channelsChanged","symbolsChanged","latestArticleUpdate","unixLatestArticleUpdate","isoStringLatestArticleUpdate","updatedSinceArticles","duplicatedArticles","newArticles","startIndex","deleteCount","receiveMarketNews","errorMarketNews","startPollingMarketNews","requestMarketNews","stopPollingMarketNews","loadAlertMessages","receiveAlertMessages","loadAccountDetails","receiveAccountDetails","errorAccountDetails","updateAccount","receiveMakeAccountUpdate","errorMakeAccountUpdate","getAccountUpdate","receiveAccountUpdate","errorAccountUpdate","confirmAccountUpdate","getAccountManagementDetails","receiveAccountManagementDetails","errorAccountManagementDetails","getPendingAccountManagementUpdates","getPendingUpdates","receivePendingAccountManagementUpdates","pendingItems","errorPendingAccountManagementUpdates","checkIsNoPassEnabled","checkNoPassEnabled","receiveCheckNoPassEnabled","errorCheckNoPassEnabled","getNoPassDevices","receiveNoPassDevices","requestNoPassDevices","errorNoPassDevices","deleteNoPassDevice","deviceid","receiveDeleteNoPassDevice","errorDeleteNoPassDevice","_x25","_x26","_x27","receiveAuthHistory","errorAuthHistory","_x28","_x29","_x30","receiveUserAccountUpdates","errorUserAccountUpdates","getUpdateDetails","receiveUserAccountUpdateDetails","errorUserAccountUpdateDetails","receiveUserAccountDetails","errorUserAccountDetails","receiveFirmApproveUpdate","errorFirmApproveUpdate","receiveFirmRejectUpdate","errorFirmRejectUpdate","getMiscDocument","errorMiscDoc","firmApproveDocument","receiveFirmApproveDoc","errorFirmApproveDoc","firmRejectDocument","receiveFirmRejectDoc","errorFirmRejectDoc","getMiscDocumentMetadata","getMiscellaneousDocumentMetadata","errorMiscDocMetadata","getEntitlementRequests","receiveEntitlementUpdates","errorEntitlementUpdates","receiveEntitlementAccountDetails","errorEntitlementAccountDetails","approveUserMarketDataEntitlement","receiveApproveUserMarketDataEntitlement","errorApproveUserMarketDataEntitlement","rejectUserMarketDataEntitlement","receiveRejectUserMarketDataEntitlement","errorRejectUserMarketDataEntitlement","loadAlertMessageTemplates","receiveAlertTemplates","createAlertMessage","updateAlertMessage","buildApplicationRequestURL","getPendingApplications","requestURL","receiveApplications","errorApplications","getApplicationInvestigations","receiveInvestigations","errorInvestigations","loadAccountDailyStatements","loadMonthlyAccountStatements","loadTaxAccountStatements","tryGetBalanceHistory","receiveHistoryGetBalances","HandlerMiddleware","requestGetBalanceHistory","requestHistoryGetBalances","place","orderRequest","receivePlaceOrder","receiveChange","errorChange","orderHandler","apiError","loadSymbolsWarning","requestUserProfile","dashboardData","securityQuestions","NoAvailableSecurityChallengesResponseCode","SecurityChallengeFailedResponseCode","getSecurityQuestions","load","withdrawalData","getTransfers","fetchPlaidLinkToken","redirectUri","getAchRelationships","getTransferInstructions","requestSecurityQuestion","requestVerifySecurityQuestion","receiveVerifySecurityQuestion","requestBalances","requestTransfers","requestAchWithdrawal","requestWireWithdrawal","requestCheckWithdrawal","requestAchDeposit","deleteTransferRequest","allAchRelationshipRequest","plaidLinkTokenRequest","createAchRelationshipRequest","approveAchRelationshipRequest","updateAchRelationshipRequest","deleteAchRelationshipRequest","createTransferInstructionsRequest","allTransferInstructionsRequest","updateTransferInstructionsRequest","deleteTransferInstructionsRequest","exception","expirationsThatShouldReload","countOfPairsForSymbolExpiration","defaultDashboardRequest","entityHandler","_get","getAccount","accountReceive","accountError","accountDetailsReceive","accountDetailsError","_balances","accountBalancesReceive","accountBalancesError","_balancesForWithdrawal","accountBalancesForWithdrawalReceive","accountBalancesForWithdrawalError","accountEntities","accountRequest","accountBalancesRequest","accountBalancesForWithdrawalRequest","cashieringSearchReceive","cashieringSearchError","entityAccountId","cashieringTransferReceive","cashieringTransferError","buildErrorObject","_details","cashieringTransferDetailReceive","cashieringTransferDetailError","cashieringTransferRequest","approveRep","_approveRep","rep","approveRepReceive","approveRepError","approveFirm","_approveFirm","firm","approveFirmReceive","approveFirmError","_update","updateTransferReceive","updateTransferError","_reject","rejectTransferReceive","rejectTransferError","cancelTransferReceive","cancelTransferError","_get2","linkedAccountId","cashieringRelationshipReceive","cashieringRelationshipError","_details2","cashieringRelationshipDetailReceive","cashieringRelationshipDetailError","_approve","approveCreate","approveCreateRelationshipReceive","approveCreateRelationshipError","_update2","updateRelationshipReceive","updateRelationshipError","_reject2","rejectCreate","rejectRelationshipReceive","rejectRelationshipError","_cancel2","_callee13","_context13","cancelRelationshipReceive","cancelRelationshipError","_get3","_callee14","_context14","cashieringWireInstructionsReceive","cashieringWireInstructionsError","_details3","_callee15","_context15","cashieringWireInstructionsDetailsReceive","cashieringWireInstructionsDetailsError","_update3","_callee16","_context16","cashieringWireInstructionsUpdateReceive","cashieringWireInstructionsUpdateError","_approve2","_callee17","_context17","cashieringWireInstructionsApproveReceive","cashieringWireInstructionsApproveError","_reject3","_callee18","_action$payload7","_context18","cashieringWireInstructionsRejectReceive","cashieringWireInstructionsRejectError","_cancel3","_callee19","_action$payload8","_context19","cashieringWireInstructionsCancelReceive","cashieringWireInstructionsCancelError","cashieringEntities","prevRequestKey","_CashieringSearchRequ","handleOrderFeedUpdates","clientSearch","_clientList$requestKe","debounceLoadQuotes","receiveAchWithdrawal","receiveCheckWithdrawal","receiveAchDeposit","receiveWireWithdrawal","loadAccountBalances","loadBalancesForWithdrawal","directions","loadPendingTransfers","accountIds","buildApiFromState","accountIdsBalances","loadLinkedAccountBalances","loadSubAccountBalances","searchHandler","_request","searchResults","latestDate","latest","eventsLaterThanLatest","_AccountManagementSea","requestAccountUpdate","requestConfirmUpdate","requestCheckNoPassEnabled","requestDeleteNoPassDevice","requestMiscDoc","requestMiscDocMetadata","_EntitlementsSearchRe","_AlertSearchRequestSe","_ApplicationsSearchRe","receiveLinkedAccounts","fetchLinkedAccounts","sagaMiddleware","createSagaMiddleware","updateStrikeState","symbolExpState","expirationKey","getSortedOrders","getSortedErrorEvents","updateGroup","updateOrAddGroupWithBlockInfo","allGroups","partialBlockData","blockOrder","cleanGroups","getResponseCodeDescription","defaultDescription","responseCodeObject","numOrZero","_len","firstNonNil","SETTLEMENT_RESET_TIME","entityTypeForAction","defaultQueryState","queryString","SearchError","accountDetailsRequest","privateReducer","combineReducers","updatedAccounts","accts","existingQueryState","querykey","errorAlertTemplates","incomingData","updatedUpdates","formattedApps","requestkey","updatedEntities","existingState","_action$payload$paylo","entityState","transferInstructionId","_action$payload$paylo2","updatedItems","ent","environmentReducer","positionPnLReducer","currkey","TodayDate","positionQuoteInfo","currPnL","performanceReducer","positionState","accountState","reducers","partialQuotes","AccountDataReducer","createTransferBeneficiaryReceive","DataReducer","marketDataEntitlementTypeId","isBoolean","allOrders","updatedOrders","orderExists","ordersWithoutExisting","updatedOrder","ordersLastRequestedAt","orderStatistics","isFill","orderIsKnown","newOrder","hearAboutUs","officeCode","last4Ssn","receiveGetBalanceHistory","dateModel","previousVersion","afterHourTrading","uiSettings","globalBlockSettings","targetBlockId","targetGroupId","sourceBlockInfo","sourceBlockId","sourceGroupId","sourceGroup","targetGroup","targetHasGroupMembers","sourceHasGroupMembers","addSourceToTarget","canBlockBeAddedToGroup","updatedBlocks","groupIndex","resetHighlight","previousGroup","highlightAt","isAdd","existingValues","allQuoteValues","matchingBlockInfo","blockToReplaceGroupId","blocksToReplace","groupsToReplace","blockWithSettings","updatedGroups","allMatches","blocksMatchingType","unlinkedBlocksMatchingType","blocksToHighlight","blockToRemove","blocksWithoutDeleted","allTypeKeys","updatedBlockTypeSettings","oldVal","DataLastFetchedOn","existingDashboards","filteredExistingDashboards","existingSymbolVal","existingRangeState","updatedQuoteData","existingSym","symbolDataAsObject","previousMeta","previousClosePrice","prevLastUpdate","closePriceLastUpdatedUnix","updateClosePrice","ToUtcMidnight","closePriceLastUpdate","CalculatedChangePercentage","existingValue","changeDirection","dateStr","errKey","feedNotification","existingNotificationsExceptFeed","Notifications","DataFeedKey","siteName","notificationKeys","uniqueSymbols","getExistingSubstate","expirationsWithMonthlyAndWeekly","subState","blockIds","updatedBlocksState","includesSymbol","existingBlockSymbolStateOptionChain","replaceExistingBlockOptionChain","optionchainState","stateVal","existingBlockSymbolState","updatedOptionChain","existingCount","skip","updatedSymbolSubstate","Expiry","alteredExpirationPairs","currentPair","callChange","putChange","CalculatedChange","updatedSymbolState","expirationState","existingSymbolState","allEntities","latestEventDate","receiveBalances","receiveTransfers","receiveSecurityQuestion","securityQuestionError","resetSecurityQuestionStatus","allAchRelationshipReceive","plaidLinkTokenReceive","createAchRelationshipReceive","errorObject","approveAchRelationshipReceive","approved","remainingTryCount","verification","verificationCount","approveAchRelationshipError","depositAchError","withdrawalAchError","withdrawalWireError","withdrawalCheckError","updateAchRelationshipError","deleteAchRelationshipError","transferType","updateAchRelationshipReceive","deleteAchRelationshipReceive","deleteTransferReceive","deleteTransferError","allTransferInstructionsReceive","createTransferInstructionsReceive","updateTransferInstructionsReceive","deleteTransferInstructionsReceive","successInstructionAction","dataInstruction","tr","messageInstruction","createTransferInstructionsError","updateTransferInstructionsError","deleteTransferInstructionsError","allTransferInstructionsError","queryKey","RootReducer","RootCrossSliceReducer","trySaveBlocks","persistDashboards","tryPersistDashboards","watchShouldPersistDashboardsCheck","watchDashboardChanges","isAddAction","getHttpStore","_marked","_marked2","takeLatest","_marked3","_marked4","rootSaga","sagas_marked","DataStore","composeEnhancers","enableDevTools","composeWithDevTools","predicate","compose","_setupMiddleware","applyMiddleware","storeVal","createStore","run","AppStoreContent","dataStore","react_redux_es","AppStoreProvider","AppStoreProvider_AppStoreContent","latestCashieringEvents","pendingEntitiesExist","CashieringUpdatesPollContent","audioRef","playUpdateSound","currAudioRef","_useReminder","fireReminder","pendingExists","reminderInterval","check","remaining","_useState2$","setReminderState","useReminder","onUpdateOccurs","CashieringUpdatesPoll","isCashieringAdmin","cashieringPendingReminderIntervalMs","cashieringCheckInterval","CashieringUpdatesPoll_CashieringUpdatesPollContent","AcceptModal","redirect","setRedirect","UpdateConfirmationPage","confirmString","encodeConfirm","urlString","searchParams","showAcceptModal","setShowAcceptModal","AcceptModal_AcceptModal","dsn","integrations","tracesSampleRate","replaysSessionSampleRate","replaysOnErrorSampleRate","TRACKING_ID","ga4VTTrackingCode","ga4TrackingCode","ReactGA","AppRouter","useLocation","setPageTitle","usePageTitle","basename","subdirectory","CashieringUpdatesPoll_CashieringUpdatesPoll","AppContentWithLocalize","addTranslationForLanguage","getLocalizeOptions","Feed_Feed","Initializer_DataInitializer","AppGATracking","App","pageview","App_AppGATracking","AppStoreProvider_AppStoreProvider","App_AppRouter","Boolean","ReactDOM","src_App_0","navigator","serviceWorker","registration","unregister","defaultDashboardError","DefaultDashboardActions","GlobalBlockSettingsActions","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_objectSpread__WEBPACK_IMPORTED_MODULE_0__","_tradingblock_api__WEBPACK_IMPORTED_MODULE_0__","_tradingblock_types__WEBPACK_IMPORTED_MODULE_1__","occ","numOfContracts","multiplier","multiplierFromAssetType","dayGain","defaultOrderBlockState","_components_blocks_BlockState__WEBPACK_IMPORTED_MODULE_0__","_data_global_dataSelectors__WEBPACK_IMPORTED_MODULE_1__","_data_global_selectors_settingSelectors__WEBPACK_IMPORTED_MODULE_2__","PositionSettingsFields","validateStrategy","SchemaValidator","classification","detectedStrategy","legType","legStrike","triggerValidation","StrategyValidationMiddleware","cleanOrderState","orderDataToPersist","shouldPersistAction","lastSavedState","debouncedPersist","storeApi","PersistMiddleware","prePersist","shouldPersist","stateToSave","statesAreEqual","_storage","LogMiddleware","debuglog","actType","after","BLOCK_IS_LOADING","isCurrentlyDirty","fromJS","toJS","BLOCK_INITIALIZE_DATA","dataValue","BlockReducerWithTables","baseReducer","baseState","defaultBlockState","GenericBlockActionContext","prePersistMap","_prePersistMap","Strategy","getMiddleware","defaultMiddleware","GenericBlockStateProvider","_createReducer","createReducer","_createReducer2","BlockStateProvider","_createReducer3","_createReducer4","setTitle","setSubstate","restOfState","blockSelector","buildActions","errorLinkedAccounts","typesafe_actions__WEBPACK_IMPORTED_MODULE_0__","blockIsLoading","actionBuilder","AdminCashieringTransferActions","AdminCashieringRelationshipActions","AdminCashieringEntityActions","defaultInfoBlockState","ChangePercent","Trade","Chart","Remove","FavoriteSettingsFields","genericActionBuilder","errorPlaceOrder","bubbleErrors","classifyOrderLeg","_orderLegs$sort","typePriority","CALL","PUT","actionPriority","BUY","SELL","expirationDiff","_orderLegs$sort2","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_0__","leg1","leg2","leg1_spread_ratio","leg2_spread_ratio","longTermLeg","shortTermLeg","higherStrikeLeg","classifyTwoLegStrategy","sortedLegs","_sortedLegs","lowLeg","midLeg","highLeg","isButterflyStructured","isCallButterfly","isPutButterfly","classifyThreeLegStrategy","_sortedLegs2","secondLeg","thirdLeg","fourthLeg","allCalls","allPuts","mixedTypes","isSequentialStrikes","isStrikesEqualDistance","uniqueStrikes","uniqueDates","uniqueSpreadRatios","strategyAction","throwEqualDistanceError","classifyFourLegStrategy","firstSetDistance","secondSetDistance","thirdSetDistance","legErrorMessage","errorGetBalanceHistory","errorHistoryGetBalances","react__WEBPACK_IMPORTED_MODULE_0__","react_redux__WEBPACK_IMPORTED_MODULE_1__","_dispatcher__WEBPACK_IMPORTED_MODULE_2__","createAction","HttpStorageEngineFactory","StorageProvider","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_2__","tslib__WEBPACK_IMPORTED_MODULE_3__","_providers_httpProvider__WEBPACK_IMPORTED_MODULE_4__","_providers_localStorageProvider__WEBPACK_IMPORTED_MODULE_5__","StorageEngineFactory","logEndpoint","axios","storeConfig","engineFactory","engine","lodash__WEBPACK_IMPORTED_MODULE_0__","lodash__WEBPACK_IMPORTED_MODULE_0___default","adminLink","react__WEBPACK_IMPORTED_MODULE_0___default","lodash__WEBPACK_IMPORTED_MODULE_1__","lodash__WEBPACK_IMPORTED_MODULE_1___default","subAccountSuffix","trimmedAccountNumber","formattedAccountNumber","Buffer","SecurityQuestion","Transfers","ACH","TransferInstructions","cashieringDetails","cashieringDocuments","tslib__WEBPACK_IMPORTED_MODULE_1__","lodash__WEBPACK_IMPORTED_MODULE_2__","lodash__WEBPACK_IMPORTED_MODULE_2___default","_tradingblock_types__WEBPACK_IMPORTED_MODULE_3__","___WEBPACK_IMPORTED_MODULE_4__","dayjs__WEBPACK_IMPORTED_MODULE_5__","dayjs__WEBPACK_IMPORTED_MODULE_5___default","transformTransfer","transferLike","achId","reIssue","imageBase64","reselect__WEBPACK_IMPORTED_MODULE_0__","_tradingblock_api__WEBPACK_IMPORTED_MODULE_2__","_components_blocks_BlockState__WEBPACK_IMPORTED_MODULE_3__","_BlockState__WEBPACK_IMPORTED_MODULE_1__","TransferActions","allAchRelationshipError","plaidLinkTokenError","createAchRelationshipError","AchRelationshipActions","getTransferBankRequest","getTransferBankReceive","getTransferBankError","allTransferBankRequest","allTransferBankReceive","allTransferBankError","createTransferBankRequest","createTransferBankReceive","createTransferBankError","updateTransferBankRequest","updateTransferBankReceive","updateTransferBankError","TransferRecipientBankActions","deleteTransferBankRequest","deleteTransferBankReceive","deleteTransferBankError","getTransferBeneficiaryRequest","getTransferBeneficiaryReceive","getTransferBeneficiaryError","allTransferBeneficiaryRequest","allTransferBeneficiaryReceive","allTransferBeneficiaryError","createTransferBeneficiaryRequest","createTransferBeneficiaryError","updateTransferBeneficiaryRequest","updateTransferBeneficiaryReceive","updateTransferBeneficiaryError","TransferBeneficiaryActions","deleteTransferBeneficiaryRequest","deleteTransferBeneficiaryReceive","deleteTransferBeneficiaryError","getTransferInstructionsRequest","getTransferInstructionsReceive","getTransferInstructionsError","TransferInstructionsActions","createPersistableAction","buildRequestReceiveActions","requestAction","receiveAction","errorAction","globalException","errAction","apiUrl","configUrl","buildAccountApi","useApiToken","useAccountApi","UseAccountApiProvider","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__","setup","react__WEBPACK_IMPORTED_MODULE_2___default","_tradingblock_components__WEBPACK_IMPORTED_MODULE_7__","getAxiosClient","HttpProvider","axios__WEBPACK_IMPORTED_MODULE_2__","axios__WEBPACK_IMPORTED_MODULE_2___default","patch","cv","getHttpProvider","receiveConfirmUpdate","errorConfirmUpdate","sortSymbols","Fuse","shouldSort","distance","maxPatternLength","minMatchCharLength","weight","sortedSymbols","toAssetSymbolBySymbolType","OrderActionTypes","OrderStrategyNameToOrderStrategyType","OrderStateToOrder","filteredLegs","legRes","existingPosition","existingPositionDirection","getPositionEffect","ordType","leg_res","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__","OrderStrategyTypeToOrderStrategyName","temp_legs","_utilities_data__WEBPACK_IMPORTED_MODULE_2__","createSelectorCreator","defaultMemoize","isArrayEqual","receiveMiscDoc","receiveMiscDocMetadata","localforage__WEBPACK_IMPORTED_MODULE_0__","localforage__WEBPACK_IMPORTED_MODULE_0___default","CreateAccountUrl","DocumentsUploadUrl","UserRequirementsUrl","GetHeardAboutUrl","GetApplicationInvestigationStatusUrl","UploadInvestigationDocumentUrl","UploadApplicationDocumentUrl","UploadMiscellaneousDocumentsUrl","GetMiscellaneousDocumentsUrl","GetMiscellaneousDocumentsMetadataUrl","DuplicateAccountCheckUrl","UploadCashieringDocumentUrl","GetTransferInstructionsDocumentsIdUrl","GetTransferInstructionsDocumentUrl","GetTransferInstructionsDocumentMetadataUrl","CreateUserUrl","GetSymbolsUrl","PlaceOrderUrl","ChangeOrderUrl","CancelOrderUrl","GetOrdersUrl","PositionsUrl","HistoryGetHistoryUrl","HistoryGetHistoryBalances","HistoryGetBalancesEndpoint","TokenRequestUrl","LogoutTokenUrl","ApprovePendingUserMarketDataEntitlement","RejectPendingUserMarketDataEntitlement","GetBalancesUrl","GetBalancesForAccountsURL","GetBalancesForWithdrawalURL","GetExpirationsUrl","GetAccountsUrl","GetSubaccountsUrl","GetAccountDetailsUrl","AccountsSearchUrl","GetAccountUpdateUrl","SearchAccountUpdatesUrl","GetAccountUpdateDetailsUrl","GetAccountManagementDetailsUrl","GetPendingUserMarketDataEntitlementsUrl","GetPendingAccountManagementUpdatesUrl","GetChainUrl","GetStrikesUrl","GetBarsUrl","GetQuoteUrl","GetQuoteExtendedUrl","GetQuoteDividendUrl","GetQuoteEarningsUrl","GetPnLUrl","SymbolsWithAMPMExpirations","GetReleaseNotesUrl","CreateReleaseNotesUrl","UpdateReleaseNotesUrl","GetNewsFeedUrl","AlertMessagesURL","GetAlertMessageTemplatesURL","UpdateAlertsURL","DownloadsDailyConfirms","DownloadsDailyConfirm","DownloadsMonthlyStatements","DownloadsMonthlyStatement","DownloadsTaxDocuments","DownloadsTaxDocument","NoPassEnabledURL","NoPassLoginStartUrl","NoPassLoginFinishUrl","NoPassDeleteDeviceURL","NoPassListDevicesURL","GetLoginHistory","isTruthyValue","getValue","envConfig","gaUaTrackingCode","REACT_APP_GA_UA_TRACKING_CODE","uspsSecret","notOverridableConfig","production","REACT_APP_IS_BETA","strVal","envVal","ApiIntercepts","_tradingblock_api__WEBPACK_IMPORTED_MODULE_1__","_tradingblock_types__WEBPACK_IMPORTED_MODULE_2__","_global_actions__WEBPACK_IMPORTED_MODULE_3__","_config__WEBPACK_IMPORTED_MODULE_4__","apis","dataTableState","defaultTableState","AddIcon_AddIcon","getFormikErrors","getFlattenedErrors","Errors_getFlattenedErrors","Alert_getAlertProps","formErrors","messageHeader","Alert_isAlertEmpty","Alert_Alert","Alert_AlertSection","Component","FloatingLabel_FloatingLabelWrapper","data-prefix","FloatingLabel_FloatingLabel","wrapperProps","FormGroup_FormGroup","_ref$toggleableHelp","toggleableHelp","react","showHelpText","setShowHelpText","LocalizeButton","HelpText_HelpIcon","iconSize","Number_NumberView","number_formatNumber","Number_BoldNumberView","Number_Number","BoldNumber","SignedNumber","Pill_Pill","Svg_Svg","rootPath","root","Wrapper_Wrapper","Tooltip_Tooltip","tooltipId","data-tip","data-for","dist_default","AddBlock_blockTypesAndIconsObjectBuilder","block_getBlockTypeName","block_getBlockTypeIcon","AddBlock_AddBlockModal","allBlocksCategorizedTypeMapping","blockTypesAndIconsFront","blockTypesAndIconsMiddle","blockTypesAndIconsBack","blockTypesAndIconsModalBodyBuilder","es_Modal","lowerCase","Modal_Modal","es_Button","BlockComponents_BlockBody","BlockDragHandle_BlockDragHandle","showDrag","setShowDrag","enableHover","disableHover","dragClassName","es2015","onMouseOver","onMouseOut","userSelect","BlockHeader_BlockHeader","BlockTitle_BlockTitle","EmptyBlockContent_EmptyBlockContent","Button_Button","Carousel_Carousel","dots","isMoneyBlockUrl","isMoneyBlockOrigin","site_GetTradingBlockSiteName","site_GetTradingBlockFullUrl","urlKey","domain","defaultRedirect","isDev","isBeta","fulldomain","isLegacyURL","site_GetLogoutUrl","GetSiteGrp","getDocumentOptions","visibilityChangeEvent","prefixes","ACTIVE","DEFAULT_ACTIVITY_EVENTS","DEFAULT_INACTIVITY_EVENTS","DEFAULT_IGNORED_EVENTS_WHEN_IDLE","utilities_activityDector","_listeners","_ref$activityEvents","activityEvents","_ref$inactivityEvents","inactivityEvents","_ref$ignoredEventsWhe","ignoredEventsWhenIdle","_ref$timeToIdle","timeToIdle","_ref$initialState","_ref$autoInit","autoInit","_getDocumentOptions","listeners","handleUserActivityEvent","handleUserInactivityEvent","handleVisibilityChangeEvent","init","firstState","eventName","listener","lastActiveTime","activityDector","useAlerts_useAlerts","getToastOptions","defaults","toastOptions","toastId","draggable","react_toastify","constate_es","setAuthToken","isAuthenticating","setIsAuthenticating","parent","contains","isChildNodeOfHtmlElement","isChildNodeOfModalRecursive","isModalNode","parentElement","getAttribute","valueAsNumber","minimumFractionDigits","maximumFractionDigits","dec","userLocale","localeOptions","getCurrencyType","roundedValue","number_formatPercent","isGreek","decimalSeparator","formatRegex","normalized","style_getClassNames","classNames","useDebug_useDebug","useDebug_extendLog","useDebug_setLogLevel","enable","useElementPosition","rect","scrollX","scrollY","evHandle","eventHandlers","targetValue","useLocalize_isFieldValueFilled","getCleanTranslationKey","useLocalize_getTranslationId","translateId","useLocalize_getFieldTranslationId","getFieldTranslationId","iconStyle","classNameSuffix","titleSuffix","iconClassName","useTableColumnWidths_useTableColumnWidths","fullWidth","widthPercent","tableUtilities_columnWidths","setOpen","previousProps","allKeys","changesObj","Text_Text","defaultPage","defaultData","ndash","onMissingTranslation","ContactPhone_ContactPhone","contactPhoneTextId","ContactEmail_ContactEmail","contactEmail","Countdown_useParsedCountdown","timeLeft","_options$intervalTime","_options$now","setTimeLeft","timerStart","timerClear","useCountdown_useCountdown","parse_ms_default","Countdown_CountdownTimer","_useParsedCountdown","titleVal","ExternalLink","ariaLabel","Loading_Loading","LoadingImage","Mask","Toggle_ToggleButton","activeState","setIsActive","activeValue","onToggle","newValue","react_bootstrap_toggle_dist_default","pageReducer","usePageContext","navActions","navCollapsed","PageContext_usePageNav","_usePageContext","_usePageContext2","DashboardNav_PageNav","pageNav","DashboardNav_PageNavPanel","DashboardNav_PageNavPrimary","DashboardNav_PageNavTertiary","DashboardNav_DashboardToggle","_usePageNav3","_usePageNav4","DashboardNav_PageNavToggleButton","DashboardContent_DashboardContent","cssName","Alerts_AlertsContainer","closeOnClick","Autocomplete_AutocompleteControlComponent","components","Control","Autocomplete_SelectDropdownIndicator","DropdownIndicator","topStyle","BasicSelect_SelectMenuPortal","MenuPortal","defaultStyles","menuPortal","provided","zIndex","singleValue","topDropdownStyles","BasicSelect_BasicSelect","selectRef","selectProps","classNamePrefix","menuPortalTarget","BasicSelect_useSelectProps","menuStyles","setMenuStyles","react_select_esm","control","max-width","onMenuOpen","portalRef","ReactSelectComponents","AsyncAutocomplete_DefaultOptionComponent","AsyncAutocomplete_LoadingResults","noResultsFound","AsyncAutocomplete_AsyncAutocomplete","setNoResultsFound","queryValue","setQueryValue","setInputValue","setIsOpen","minLength","initialSelectOpts","selectOptions","setOptions","setSelectOptions","debouncedQueryValue","onInputChange","getOptionValue","formatOptionLabel","labelMeta","context","inputFormat","menuPlacement","menuShouldBlockScroll","noOptionsMessage","NoOptionsMessage","HttpAutocomplete_HttpAutocomplete","Portal_Portal","scrollableParent","originalPosition","setPosition","scrollableParents","scrollable","nextParent","onScroll","useScrollablePosition_useScrollablePosition","react_dom_default","createPortal","isDefaultPrevented","Dropdown_Dropdown","dropDirectionClass","setParent","toggleClassName","wrapperClasses","menuClasses","Dropdown_SplitDropdown","parentClass","_useToggle3","_useToggle4","aria-haspopup","aria-expanded","rv","Dropdown_DropdownWrapper","_useToggle5","_useToggle6","BasicDropdown_BasicDropdown","innerValue","setInnerValue","dropdownValue","setDropdownValue","DropdownItem","hrefVal","Checkbox_CheckboxInput","onblur","inputType","inputClassName","checkboxValue","setCheckboxValue","Checkbox_BasicCheckboxInput","CheckList_CheckListInput","checklistValue","setChecklistValue","newValues","Infinity","SelectDropdown_SelectDropdownInput","selectValue","setSelectValue","raw_value","selectValues","selectStyles","narrowPage","inputId","onFocus","Range","Stepper_StepperInput","createSliderWithTooltip","stepperValue","setStepperValue","Textbox_TextboxInput","onfocus","preventPaste","inputRef","maskPassword","setMaskPassword","rawValue","onPaste","onDragDrop","fieldType","onDrag","Hotkey_Hotkey","chord","chordFactory","hotkeyCallback","dist_web","Infinity_InfinityIcon","ReactGridLayout","react_grid_layout","Grid_Grid","draggableHandle","Address_AddressField","addr1Help","getTextboxFieldProps","fieldProps","Textbox_TextboxField","CheckList_CheckListField","Checkbox_CheckboxField","onSetValue","fieldId","_e","Currency_CurrencyField","setHasFocus","formattedValue","currencyValue","overrideProps","readOnly","rawOptionLabels","_a$isSearchable","_useLocalize","getValueTranslationId","getOptionLabel","formattedId","Stepper_StepperField","translationId","isPhoneNumber","formatValue","Textarea_TextareaInput","Textarea_TextareaField","btnProps","localizeInitialized","setLocalizeInitialized","each","translations","lang","handleClose","dialogClassName","TableRow_TableRow","prepareRow","Utilities_getTableTdClass","ResponsiveTdMemo","BaseTable_BaseTable","_a$headersDraggable","headersDraggable","bodyProps","getTableProps","headerGroups","setColumnOrder","tableProps","tableClassName","Utilities_getTableClass","BaseTable_BaseTableHead","getCustomHeaderStyles","BaseTable_BaseTableBody","headerClassName","isSorted","isSortedDesc","isTableExpanded","expandedDepth","getItemStyle","draggableStyle","isDragging","isDropAnimating","transitionDuration","formatHeader","currentColOrder","currentHeader","headerGroup","trIdx","react_beautiful_dnd_esm","onDragStart","dragUpdateObj","draggableId","onDragEnd","destination","colOrder","sIndex","dIndex","droppableId","renderClone","snapshot","rubric","draggableProps","dragHandleProps","innerRef","verticalAlign","getHeaderGroupProps","thIdx","getHeaderProps","getSortByToggleProps","customHeaderStyles","customProps","isDragDisabled","baseRowProps","Paging_Paging","searchOptionPage","pageOptions","canPreviousPage","canNextPage","gotoPage","previousPage","_tableInstance$state","disabledProps","FreeHeaderTable_FreeHeaderTable","plugins","react_table","autoResetExpanded","autoResetSortBy","autoResetPage","useUpdateEffect_default","positionBlockHeadersMapObject","Daily P/L","(%)","Avg Price","FrozenHeaderTable_FrozenHeaderTable","getTableBodyProps","resyncPositionHeaders","table_","positionBlockHeaders","calculateColumnWidth","toggleAllRowsExpanded","Table_Table","Responsive_ResponsiveTd","Utilities_getTableSize","memoize","rowA","rowB","_columnId","numColumn","TabWell_TabWell","itemClass","linkClass","_useStringOrDefault","arg","def","useStringOrDefault","_useStringOrDefault2","wrapperCss","itemCss","linkCss","activeCss","TabWell_BlockTabs","Tabs_Tabs","Tabs","Tabs_Tab","Tab","GridContext_newId","uuid","GridContext_SetBlockIds","rc_input_number_es","errorAlertMessages","errorUpdateRelease","rootSel","sels","legArray","commissionOverrides","isSpreadOrder","legAmount","computed","orderIsComplete","orderActionSelector","allSell","allBuy","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_2__","legWithStrike","legWithExp","legExpirationById","legById","legsWithSymbols","symbolOcc","legField","legStrikes","legAcc","partialState","cachedOrder","strats","strategyIsValid","matchingStrategies","prices","unitPrice","positionIsInvalid","SymbolOccSelector","LinkableBlockTypes","RefreshableBlockTypes","isBlockLinkable","kebabCase","isBlockRefreshable","canBlockBeLinked","groupBlocks","gridColumns","minBlockWidth","unitWidth","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_objectSpread__WEBPACK_IMPORTED_MODULE_2__","layoutsArray","generate2DArrayOfBlockLayouts","getDefaultBlockSize","blockSizeArray","generate2DArray","defaultPosition","_loop2","bx","by","maxY","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__","_getDefaultBlockSize","objectDiff","equalRes","differenceWith","obj1","obj2","diffKeys","getGCD","input","len","isAMExpiration","symbolIsIndex","isMonthlyNonIndexExpiration","isQuarterlyNonIndexExpiration","localeCompare","GenericRadioButton","_useField","useField","_useField2","GenericChoiceField","renderGenericFormWithFilter","mapField","GenericChoiceField_GenericChoiceField","GenericRadioButton_GenericRadioButton","renderGenericForm","useBlockGroup","handleIfGroupChange","fireOnUndefined","fieldValue","currentFieldValue","setCurrentFieldValue","blockDefaultStrategy","globalBlockTypeSettings","singleLegStrategies","HasEquityLeg","BuildDefaultLeg","legSpreadRatio","HasOptionLeg","optType","defaultLeg","rootBlocksSelector","blocksState","lockedSel","bs","isLinkedSel","rootBlocksBlockSelector","linkableBlockSelector","groupedBlocks","currentBlock","currentGroup","isCurrentLinked","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_3__","linkableBlocks","linkable","rootLayoutSelector","rootCashieringSelector","accountFormData","transferFormData","dataType","linkToken","rootDashboardsSelector","dashboardTitlesSelector","sel","useAuthenticationToken","authState","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_2__","matchingInfo","allSymbolInfo","loadedChainsBySymbol","symbolState","allChains","expOpt","expirationOptionChain","currPairs","requestAccountsError","clearSetAccountSearchOptions","DefaultAnalyticBlockSettings","BlockSettingSelector","blockByBlockId","globalTypeSelector","blockTypeStr","blockIdKey","analytics","globals","defaultSettings","_i","_Object$keys","globalDefaultSettings","re_reselect__WEBPACK_IMPORTED_MODULE_1__","re_reselect__WEBPACK_IMPORTED_MODULE_1___default","_tradingblock_api__WEBPACK_IMPORTED_MODULE_3__","_tradingblock_components__WEBPACK_IMPORTED_MODULE_4__","_data_global_dataSelectors__WEBPACK_IMPORTED_MODULE_5__","_data_global_selectors_quoteSelector__WEBPACK_IMPORTED_MODULE_6__","_components_blocks_BlockState__WEBPACK_IMPORTED_MODULE_7__","_blocks_Order_state_OrderLegSelector__WEBPACK_IMPORTED_MODULE_8__","_blocks_Order_state_OrderState__WEBPACK_IMPORTED_MODULE_9__","dayjs__WEBPACK_IMPORTED_MODULE_10__","dayjs__WEBPACK_IMPORTED_MODULE_10___default","dayjs_plugin_customParseFormat__WEBPACK_IMPORTED_MODULE_11__","dayjs_plugin_customParseFormat__WEBPACK_IMPORTED_MODULE_11___default","getIdOrUndefined","tryGetLastPrice","tryGetLastPrices","timeMoment","minuteMod","formatReceivedTime","getQuoteDirectionAndValue","getQuoteData","getQuotesBidAskBySymbols","getLoadingAndLoadedSymbols","symbolsToCheck","getFilteredQuotes","quoteVal","BidAskMidPrice","getQuotesBidAsk","getQuotesVolumes","quoteSelector","extendedQuoteData","AccManagement","_constants__WEBPACK_IMPORTED_MODULE_2__","_utilities__WEBPACK_IMPORTED_MODULE_6__","GetAccountDetails","GetAccountUpdate","BlockSettingsModalViewContent","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_3__","onSelectTab","mapFields","react__WEBPACK_IMPORTED_MODULE_4___default","_tradingblock_components__WEBPACK_IMPORTED_MODULE_10__","react_bootstrap__WEBPACK_IMPORTED_MODULE_6__","_BlockSettingsTabs__WEBPACK_IMPORTED_MODULE_14__","thisBlockTab","allBlockTab","react_bootstrap__WEBPACK_IMPORTED_MODULE_7__","BlockSettingsModalView","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__","blockSettingsChanged","globalChanged","localAndGlobalSettingFields","_objectSpread2","globalField","blockField","orderBlockSettingsQuantityFieldValidationSchema","orderBlockSettingsValidationSchema","formik__WEBPACK_IMPORTED_MODULE_5__","formikProps","BlockSettingsModal","BlockSettingsTabs","_tradingblock_components__WEBPACK_IMPORTED_MODULE_1__","_tradingblock_storage__WEBPACK_IMPORTED_MODULE_2__","_tradingblock_storage_dist_storageProvider__WEBPACK_IMPORTED_MODULE_4__","_config__WEBPACK_IMPORTED_MODULE_5__","_data_global_dataSelectors__WEBPACK_IMPORTED_MODULE_6__","_data_global_actions__WEBPACK_IMPORTED_MODULE_7__","_data_api_apiClientFactory__WEBPACK_IMPORTED_MODULE_8__","HttpStorageFactory","responseIntercept","ClientVersionHeader","_uiApiTokenAndVersion","responseInterceptError","storeRef","orderLegSelector","assetSymbolSelector","legSelectorCacheFactory","legPropSelector","DefaultStrike","DefaultStrikeIfValid","orderLegsWithSymbols","__","legSymbolMap","LegsWithOCC","responseOrError","transferBeneficiary","requestExpirations","setConfig","buildStore","useStorageProvider_SaveTokenInStorage","useStorageProvider_ExpireTokenInStorage","useStorageContext","useHttpStore_getHttpStore","factory_HttpStorageFactory","factoryOptions","httpConfig","conf","httpProvider","_Object$entries","newSettings","receiveUpdateAlert","errorUpdateAlert","AdminAlertSearchActions","receiveCreateAlert","errorCreateAlert"],"mappings":"wFAAO,IAkCAA,EClCAC,EAQAC,EDRAC,EAAA,CACPC,aAAA,GACAC,mBAAAC,EACAC,mBAAAD,EACAE,iBAAAF,EACAG,aAAAH,EACAI,kBAAAJ,EACAK,iBAAAL,EACAM,oBAAAN,EACAO,eAAA,CACAC,cAAAR,EACAS,cAAAT,EACAU,UAAAV,EACAW,WAAAX,EACAY,gBAAAZ,EACAa,aAAAb,GAEAc,gBAAA,CACAN,cAAAR,EACAS,cAAAT,EACAU,UAAAV,EACAW,WAAAX,EACAY,gBAAAZ,EACAa,aAAAb,GAEAe,WAAAf,EACAgB,eAAAhB,EACAiB,iBAAAjB,EACAkB,eAAAlB,EACAmB,iBAAAnB,EACAoB,YAAA,CACAC,kBAAA,KAKA,SAAA3B,GACAA,EAAA,UACAA,EAAA,YAFA,CAGCA,MAAA,KCrCD,SAAAC,GACAA,EAAA,aACAA,EAAA,aACAA,EAAA,aAHA,CAICA,MAAA,KAID,SAAAC,GACAA,EAAA,cACAA,EAAA,cACAA,EAAA,YAHA,CAICA,MAAA,KCdM,IAgjBA0B,EAyBAC,EAUAC,EAnlBAC,EAAA,CACPV,WAAAf,EACAc,qBAAAd,EACAO,oBAAAP,EACAgB,eAAAhB,EACAiB,iBAAAjB,EACAkB,eAAAlB,GAEO0B,EAAA,CACPC,UAAA,EACAC,YAAA,GACA7B,cAAA,GACAY,MAAA,GACAkB,mBAAA7B,EACA8B,QAAA,CACAC,OAAA,EACAC,KAAA,GACAC,UAAAjC,EACAkC,OAAA,IAEAC,aAAA,CACAF,UAAAjC,EACAgC,KAAA,GACAE,OAAA,GACAH,OAAA,GAEAK,aAAA,CACAH,UAAAjC,EACAgC,KAAA,GACAE,OAAA,GACAH,OAAA,GAEAM,GAAA,EACAC,KAAA,GACAC,KAAA,GACAC,SAAA,CACAC,cAAA,CACA1B,MAAA,GACA2B,QAAA,CACAlC,SAAA,GACAC,SAAA,GACAC,KAAA,GACAG,QAAA,GACAD,WAAA,GACAD,MAAA,IAEAJ,eAAA,CACAC,SAAA,GACAC,SAAA,GACAC,KAAA,GACAG,QAAA,GACAD,WAAA,GACAD,MAAA,IAEAgC,OAAA,EACAC,YAAA,GACAC,KAAA,KAEAC,cAAA,GACAC,WAAA,EACAC,aAAA,GACAC,mBAAA,GACAC,eAAA,GACAC,YAAA,GACAC,cAAA,GACAC,SAAA,GACAC,gBAAA,CACA9C,SAAA,GACAC,SAAA,GACAC,KAAA,GACAG,QAAA,GACAD,WAAA,GACAD,MAAA,IAEA4C,YAAA,CACAC,aAAA,EACAC,kBAAA,EACAC,gBAAA,EACAC,aAAA,GAEAC,sCAAA,GACAC,mCAAA,GACAC,oCAAA,GACAC,mCAAA,IAEAC,cAAA,GACAC,gBAAA,GACAC,cAAA,GACAC,wBAAA,GACAC,8BAAA,GACAC,WAAA,CACAC,MAAA,CACAC,cAAA,GACAC,MAAA,IAEAC,YAAA,CACAF,cAAA,GACAC,MAAA,IAEAE,QAAA,CACAH,cAAA,GACAC,MAAA,IAEAG,QAAA,CACAJ,cAAA,GACAC,MAAA,IAEAI,OAAA,CACAL,cAAA,GACAC,MAAA,KAGAK,aAAA,GACAC,cAAA,GACAC,eAAA,GACAC,gBAAA,CACAC,KAAA,GACAC,QAAA,GACAC,QAAA,GACAC,UAAA,IAEAC,eAAA,CACA3C,QAAA,CACAlC,SAAA,GACAC,SAAA,GACAC,KAAA,GACAG,QAAA,GACAD,WAAA,GACAD,MAAA,IAEAI,MAAA,GACAuE,UAAA,GACAC,cAAA,GACAC,SAAA,GACAC,OAAA,GACA9C,OAAA,EACAC,YAAA,GACAC,KAAA,MAGA6C,qBAAA,CACAhD,QAAA,CACAlC,SAAA,GACAC,SAAA,GACAC,KAAA,GACAG,QAAA,GACAD,WAAA,GACAD,MAAA,IAEAsC,mBAAA,GACA0C,YAAA,GACApC,YAAA,CACAE,kBAAA,EACAE,aAAA,GAEAG,oCAAA,GACAC,mCAAA,GACAhD,MAAA,GACAsC,SAAA,GACAH,eAAA,GACAoC,UAAA,GACAC,cAAA,GACAE,OAAA,GACAG,oBAAA,GACAC,mBAAA,GACA1C,YAAA,GACAqC,SAAA,GACA7C,OAAA,EACAC,YAAA,GACAC,KAAA,KAEAiD,UAAA,GACAjD,KAAA,IAEAkD,mBAAA,CACAC,aAAA,EACAC,6BAAA,EACAC,kBAAA,EACAC,8BAAA,GAEAC,eAAA,CACAC,0BAAA,IAEA1F,MAAA,IAEA2F,QAAA,CACA7D,cAAA,CACA1B,MAAA,GACA2B,QAAA,CACAlC,SAAA,GACAC,SAAA,GACAC,KAAA,GACAG,QAAA,GACAD,WAAA,GACAD,MAAA,IAEAJ,eAAA,CACAC,SAAA,GACAC,SAAA,GACAC,KAAA,GACAG,QAAA,GACAD,WAAA,GACAD,MAAA,IAEAgC,OAAA,EACAC,YAAA,GACAC,KAAA,KAEAC,cAAA,GACAC,WAAA,EACAC,aAAA,GACAC,mBAAA,GACAC,eAAA,GACAC,YAAA,GACAC,cAAA,GACAC,SAAA,GACAC,gBAAA,CACA9C,SAAA,GACAC,SAAA,GACAC,KAAA,GACAG,QAAA,GACAD,WAAA,GACAD,MAAA,IAEA4C,YAAA,CACAC,aAAA,EACAC,kBAAA,EACAC,gBAAA,EACAC,aAAA,GAEAC,sCAAA,GACAC,mCAAA,GACAC,oCAAA,GACAC,mCAAA,IAEAC,cAAA,GACAC,gBAAA,GACAC,cAAA,GACAC,wBAAA,GACAC,8BAAA,GACAC,WAAA,CACAC,MAAA,CACAC,cAAA,GACAC,MAAA,IAEAC,YAAA,CACAF,cAAA,GACAC,MAAA,IAEAE,QAAA,CACAH,cAAA,GACAC,MAAA,IAEAG,QAAA,CACAJ,cAAA,GACAC,MAAA,IAEAI,OAAA,CACAL,cAAA,GACAC,MAAA,KAGAK,aAAA,GACAC,cAAA,GACAC,eAAA,GACAC,gBAAA,CACAC,KAAA,GACAC,QAAA,GACAC,QAAA,GACAC,UAAA,IAEAC,eAAA,CACA3C,QAAA,CACAlC,SAAA,GACAC,SAAA,GACAC,KAAA,GACAG,QAAA,GACAD,WAAA,GACAD,MAAA,IAEAI,MAAA,GACAuE,UAAA,GACAC,cAAA,GACAE,OAAA,GACAD,SAAA,GACA7C,OAAA,EACAC,YAAA,GACAC,KAAA,MAGA6C,qBAAA,CACAhD,QAAA,CACAlC,SAAA,GACAC,SAAA,GACAC,KAAA,GACAG,QAAA,GACAD,WAAA,GACAD,MAAA,IAEAsC,mBAAA,GACA0C,YAAA,GACApC,YAAA,CACAE,kBAAA,EACAE,aAAA,GAEAG,oCAAA,GACAC,mCAAA,GACAhD,MAAA,GACAsC,SAAA,GACAH,eAAA,GACAoC,UAAA,GACAC,cAAA,GACAK,oBAAA,GACAC,mBAAA,GACA1C,YAAA,GACAsC,OAAA,GACAD,SAAA,GACA7C,OAAA,EACAC,YAAA,GACAC,KAAA,KAEAiD,UAAA,GACAjD,KAAA,IAEAkD,mBAAA,CACAC,aAAA,EACAC,6BAAA,EACAC,kBAAA,EACAC,8BAAA,GAEAC,eAAA,CACAC,0BAAA,IAEAE,kBAAA,EACA9D,cAAA,EACA+D,WAAA,EACAC,aAAA,GACA9F,WAAAX,KAGA0G,aAAA,GAEOC,EAAA,CACPZ,mBAAA,CACAa,0BAAA,EACAC,oBAAA,EACAC,uBAAA,EACAC,iCAAA,EACAf,aAAA,EACAC,6BAAA,EACAC,kBAAA,EACAC,8BAAA,GAEAa,eAAA,EACAtE,QAAA,CACAlC,SAAA,GACAC,SAAA,GACAC,KAAA,GACAG,QAAA,GACAD,WAAA,GACAD,MAAA,IAEAqC,aAAA,GACAC,mBAAA,GACAF,WAAA,EACAQ,YAAA,CACAC,aAAA,EACAC,kBAAA,EACAC,gBAAA,EACAC,aAAA,GAEAC,sCAAA,GACAC,mCAAA,GACAC,oCAAA,GACAC,mCAAA,GACAhD,MAAA,GACAsC,SAAA,GACAC,gBAAA,CACA9C,SAAA,GACAC,SAAA,GACAC,KAAA,GACAG,QAAA,GACAD,WAAA,GACAD,MAAA,IAEAuC,eAAA,GACAoC,UAAA,GACAC,cAAA,GACApC,YAAA,GACA8D,oCAAA,EACAzB,SAAA,GACAC,OAAA,GACAlF,eAAA,CACAC,SAAA,GACAC,SAAA,GACAC,KAAA,GACAG,QAAA,GACAD,WAAA,GACAD,MAAA,IAEAmC,cAAA,GACAH,OAAA,EACAC,YAAA,GACAC,KAAA,KAEAiD,UAAA,GACA1C,cAAA,KAEAzB,UAAA,EACA5B,cAAA,GACAmH,WAAA,CACAC,cAAA,KACAC,gBAAA,KACAC,yBAAA,KACAC,aAAA,KACAC,aAAA,KACAC,gBAAA,KACAC,eAAA,KACAC,kBAAA,KACAC,qBAAA,KACAC,eAAA,KACAC,cAAA,KACAC,qBAAA,KACAC,uBAAA,KACAC,cAAA,KACAC,WAAA,KACAC,OAAA,KACAC,OAAA,KACAC,eAAA,KACAC,kBAAA,KACAC,eAAA,KACAC,sBAAA,KACAC,0BAAA,KACAC,aAAA,KACAC,qBAAA,KACAC,UAAA,KACAC,UAAA,KACAC,iBAAA,KACAC,wBAAA,KACAC,uBAAA,KACAC,+BAAA,KACAC,iBAAA,KACAC,iBAAA,KACAC,yCAAA,KACAC,6CAAA,KACAC,mBAAA,KACAC,+BAAA,MAEAzE,aAAA,GACAb,cAAA,GACAgB,gBAAA,CACAE,QAAA,GACAC,QAAA,GACAC,UAAA,GACAH,KAAA,IAEAb,8BAAA,GACAmF,kBAAA,GACAlF,WAAA,CACAC,MAAA,CACAC,cAAA,GACAC,MAAA,IAEAC,YAAA,CACAF,cAAA,GACAC,MAAA,IAEAE,QAAA,CACAH,cAAA,GACAC,MAAA,IAEAG,QAAA,CACAJ,cAAA,GACAC,MAAA,IAEAI,OAAA,CACAL,cAAA,GACAC,MAAA,KAGAP,gBAAA,GACAE,wBAAA,GACAqF,iBAAA,GACAC,4BAAA,GACAtI,YAAA,CACAuB,QAAA,GACA3B,MAAA,GACA2I,MAAA,IAEA3E,eAAA,GACA4E,sBAAA,GACA7E,cAAA,GACA8E,oBAAA,EACAC,4BAAA,GACAnE,qBAAA,CACAhD,QAAA,CACAlC,SAAA,GACAC,SAAA,GACAC,KAAA,GACAG,QAAA,GACAD,WAAA,GACAD,MAAA,IAEAsC,mBAAA,GACA0C,YAAA,GACApC,YAAA,CACAE,kBAAA,EACAE,aAAA,GAEAG,oCAAA,GACAC,mCAAA,GACAhD,MAAA,GACAsC,SAAA,GACAH,eAAA,GACAoC,UAAA,GACAC,cAAA,GACAE,OAAA,GACAG,oBAAA,GACAC,mBAAA,GACA1C,YAAA,GACAqC,SAAA,GACA7C,OAAA,EACAC,YAAA,GACAC,KAAA,KAEAiD,UAAA,GACAjD,KAAA,IAEAqB,cAAA,GACAmB,eAAA,CACA3C,QAAA,CACAlC,SAAA,GACAC,SAAA,GACAC,KAAA,GACAG,QAAA,GACAD,WAAA,GACAD,MAAA,IAEAI,MAAA,GACAuE,UAAA,GACAC,cAAA,GACAE,OAAA,GACAD,SAAA,GACA7C,OAAA,EACAC,YAAA,GACAC,KAAA,MAGAuD,eAAA,CACAC,0BAAA,IAEAxD,KAAA,GACAiH,QAAA,GACAC,yBAAA,CACAC,aAAA,GACAC,0BAAA,GACAC,oBAAA,GACAC,8BAAA,KAKA,SAAA7I,GACAA,EAAA,cACAA,EAAA,oBACAA,EAAA,kBACAA,EAAA,gCACAA,EAAA,sBACAA,EAAA,sBACAA,EAAA,wBACAA,EAAA,gCACAA,EAAA,0BACAA,EAAA,wCACAA,EAAA,wBACAA,EAAA,YACAA,EAAA,0BACAA,EAAA,wCACAA,EAAA,gCACAA,EAAA,oCACAA,EAAA,0BACAA,EAAA,8BACAA,EAAA,oDACAA,EAAA,0CApBA,CAqBCA,MAAA,KAID,SAAAC,GACAA,EAAA,0CACAA,EAAA,gBACAA,EAAA,gBACAA,EAAA,kCACAA,EAAA,0BALA,CAMCA,MAAA,KAID,SAAAC,GACAA,EAAA,4BACAA,EAAA,qCACAA,EAAA,uCACAA,EAAA,yCACAA,EAAA,yCACAA,EAAA,yCACAA,EAAA,+CACAA,EAAA,+BARA,CASCA,MAAA,KAEMA,EAAA4I,YAAA5I,EAAA6I,iBAAA7I,EAAA8I,kBAAA9I,EAAA+I,mBAAA/I,EAAAgJ,mBAAAhJ,EAAAiJ,mBAAAjJ,EAAAkJ,uBAAAlJ,EAAAmJ,aAAA,IAGAC,EAQAC,EAQAC,EAUAC,EAYAC,EAQAC,EAUAC,EAUAC,EAUAC,EAaAC,EAUAC,EASAC,EAQAC,EArHAC,EAAA,GAAAC,OADA,uDACA,wEAGP,SAAAd,GACAA,EAAA,kBACAA,EAAA,YACAA,EAAA,cAHA,CAICA,MAAA,KAID,SAAAC,GACAA,EAAA,YACAA,EAAA,UACAA,EAAA,gBAHA,CAICA,MAAA,KAID,SAAAC,GACAA,IAAA,eACAA,IAAA,qBACAA,IAAA,aACAA,IAAA,uBACAA,IAAA,eALA,CAMCA,MAAA,KAID,SAAAC,GACAA,EAAA,wCACAA,EAAA,gCACAA,EAAA,wCACAA,EAAA,oCACAA,EAAA,sCACAA,EAAA,0BACAA,EAAA,wBAPA,CAQCA,MAAA,KAID,SAAAC,GACAA,EAAA,4BACAA,EAAA,sCACAA,EAAA,8BAHA,CAICA,MAAA,KAID,SAAAC,GACAA,EAAA,0CACAA,EAAA,gBACAA,EAAA,kCACAA,EAAA,gBACAA,EAAA,0BALA,CAMCA,MAAA,KAID,SAAAC,GACAA,EAAA,gKACAA,EAAA,+IACAA,EAAA,4IACAA,EAAA,oGACAA,EAAA,yJALA,CAMCA,MAAA,KAID,SAAAC,GACAA,IAAA,6CACAA,IAAA,mBACAA,IAAA,qCACAA,IAAA,mBACAA,IAAA,6BALA,CAMCA,MAAA,KAID,SAAAC,GACAA,EAAA,wCACAA,EAAA,wCACAA,EAAA,oCACAA,EAAA,wCACAA,EAAA,gDACAA,EAAA,sCACAA,EAAA,0BACAA,EAAA,oCARA,CASCA,MAAA,KAID,SAAAC,GACAA,EAAA,wBACAA,EAAA,UACAA,EAAA,sBACAA,EAAA,wBACAA,EAAA,YALA,CAMCA,MAAA,KAID,SAAAC,GACAA,EAAA,gCACAA,EAAA,sBACAA,EAAA,oBACAA,EAAA,gCAJA,CAKCA,MAAA,KAID,SAAAC,GACAA,EAAA,gBACAA,EAAA,gBACAA,EAAA,UAHA,CAICA,MAAA,KAID,SAAAC,GACAA,EAAA,cACAA,EAAA,kBACAA,EAAA,gBACAA,EAAA,0BACAA,EAAA,kBALA,CAMCA,MAAA,KAEM,IAUAG,EAVAC,EAAA,CAAAJ,EAAAK,MAAAL,EAAAM,QAAAN,EAAAO,OAAAP,EAAAQ,YAAAR,EAAAS,SACAC,EAAA,CAAAd,EAAAhB,YAAAgB,EAAAf,iBAAAe,EAAAd,kBAAAc,EAAAb,mBAAAa,EAAAZ,mBAAAY,EAAAX,mBAAAW,EAAAV,uBAAAU,EAAAe,kBACAC,EAAA,CAAAnB,EAAAoB,oBAAApB,EAAAqB,OAAArB,EAAAsB,OAAAtB,EAAAuB,gBAAAvB,EAAAwB,aACAC,EAAA,CAAA1B,EAAA2B,cAAA3B,EAAA4B,kBAAA5B,EAAA6B,cACAC,EAAA,CAAA/B,EAAAgC,YAAAhC,EAAAT,kBAAAS,EAAAR,mBAAAQ,EAAAiC,mBAAAjC,EAAAkC,iBAAAlC,EAAAmC,eAAAnC,EAAAoC,YACAC,EAAA,CAAAxC,EAAAyC,MAAAzC,EAAA0C,QAAA1C,EAAA2C,MACAC,EAAA,CAAAjC,EAAAkC,OAAAlC,EAAAmC,OAAAnC,EAAAoC,KACAC,EAAA,CAAAvC,EAAAwC,KAAAxC,EAAAyC,IAAAzC,EAAA0C,WAAA1C,EAAA2C,WAAA3C,EAAA4C,WACAC,EAAA,CAAA5C,EAAA6C,UAAA7C,EAAA8C,SAAA9C,EAAA+C,eAAA/C,EAAAgD,gBACAC,EAAA,CAAA1D,EAAA2D,IAAA3D,EAAA4D,OAAA5D,EAAA6D,OAGP,SAAA/C,GACAA,EAAA,0BACAA,EAAA,8CACAA,EAAA,sDACAA,EAAA,gDACAA,EAAA,kEALA,CAMCA,MAAA,KAEM,IACAgD,EAUAC,EAXAC,EAAA,CAAAlD,EAAAmD,YAAAnD,EAAAoD,sBAAApD,EAAAqD,0BAAArD,EAAAsD,uBAAAtD,EAAAuD,kCAGP,SAAAP,GACAA,IAAA,6BACAA,IAAA,iDACAA,IAAA,yDACAA,IAAA,mDACAA,IAAA,qEALA,CAMCA,MAAA,KAID,SAAAC,GACAA,EAAA,QACAA,EAAA,UAFA,CAGCA,MAAA,KAEM,IACAO,EADAC,EAAA,CAAAR,EAAAS,IAAAT,EAAAU,KAGP,SAAAH,GACAA,EAAA,gBACAA,EAAA,UAFA,CAGCA,MAAA,KAEM,IACAI,EASAC,EAVAL,EAAAM,OAAAN,EAAAO,KAGP,SAAAH,GACAA,EAAA,oBACAA,EAAA,kBACAA,EAAA,kBACAA,EAAA,wBAJA,CAKCA,MAAA,KAID,SAAAC,GACAA,EAAA,gBACAA,EAAA,gBAFA,CAGCA,MAAA,KAEM,IAEAG,EAFAC,EAAA,CAAAJ,EAAAK,OAAAL,EAAAM,QACAC,EAAA,CAAAR,EAAAS,SAAAT,EAAAU,QAAAV,EAAAW,QAAAX,EAAAY,aAGP,SAAAR,GACAA,EAAA,sCACAA,EAAA,sCACAA,EAAA,sCACAA,EAAA,0CACAA,EAAA,gCALA,CAMCA,MAAA,KAEM,IACAS,EADAC,EAAA,CAAAV,EAAAW,kBAAAX,EAAAY,kBAAAZ,EAAAa,kBAAAb,EAAAc,oBAAAd,EAAArB,iBAGP,SAAA8B,GACAA,EAAA,mCACAA,EAAA,gCACAA,EAAA,iCACAA,EAAA,oCACAA,EAAA,2BALA,CAMCA,MAAA,KAEM,IACAM,GAEP,SAAAA,GACAA,EAAA,YACAA,EAAA,gBACAA,EAAA,YAHA,CAICA,MAAA,KAEM,IACAC,EAYAC,EAbAC,EAAA,CAAAH,EAAAI,KAAAJ,EAAAK,OAAAL,EAAAM,OAGP,SAAAL,GACAA,EAAA,gBACAA,EAAA,kBACAA,EAAA,oBACAA,EAAA,iBACAA,EAAA,cACAA,EAAA,gBACAA,EAAA,wBAPA,CAQCA,MAAA,KAID,SAAAC,GACAA,EAAA,oBACAA,EAAA,gBAFA,CAGCA,MAAA,KAEM,IAEAK,GAFAC,GAAA,CAAAN,EAAAO,OAAAP,EAAAQ,UACAC,GAAA,ibAGP,SAAAJ,GACAA,EAAA,kBACAA,EAAA,oBAFA,CAGCA,QAAA,KAEM,IAIAK,GAsBAC,GAOAC,GAjCAC,GAAA,CACP7O,YAAA,GACAC,KAAA,KAIA,SAAAyO,GACAA,EAAA,gCACAA,EAAA,0BACAA,EAAA,oBACAA,EAAA,wBACAA,EAAA,kBACAA,EAAA,sBACAA,EAAA,8BACAA,EAAA,sCACAA,EAAA,0BACAA,EAAA,4CACAA,EAAA,sBACAA,EAAA,gCACAA,EAAA,wBACAA,EAAA,sCACAA,EAAA,oBACAA,EAAA,cACAA,EAAA,4BAjBA,CAkBCA,QAAA,KAID,SAAAC,GACAA,EAAA,wBACAA,EAAA,kBAFA,CAGCA,QAAA,KAID,SAAAC,GACAA,EAAA,wBACAA,EAAA,cAFA,CAGCA,QAAA,KAEM,ICn4BAE,GAYAC,GAgBAC,GAmBAC,GAaAC,GDu0BAC,GAAA,CAAAP,GAAAQ,WAAAR,GAAAS,OACAC,GAAA,CAAAX,GAAAY,QAAAZ,GAAAa,aCl4BP,SAAAV,GACAA,EAAA,YACAA,EAAA,0BACAA,EAAA,cACAA,EAAA,kBACAA,EAAA,+BACAA,EAAA,oCACAA,EAAA,sCAPA,CAQCA,QAAA,KAID,SAAAC,GACAA,EAAA,gCACAA,EAAA,0BACAA,EAAA,oBACAA,EAAA,wBACAA,EAAA,kBACAA,EAAA,sBACAA,EAAA,sBACAA,EAAA,8BACAA,EAAA,+BACAA,EAAA,oCACAA,EAAA,sCAXA,CAYCA,QAAA,KAID,SAAAC,GACAA,EAAA,oBACAA,EAAA,UACAA,EAAA,kBACAA,EAAA,gDACAA,EAAA,wCACAA,EAAA,wBACAA,EAAA,4BACAA,EAAA,oBACAA,EAAA,gCACAA,EAAA,oBACAA,EAAA,sBACAA,EAAA,cACAA,EAAA,sBACAA,EAAA,8BAdA,CAeCA,QAAA,KAID,SAAAC,GACAA,EAAA,UACAA,EAAA,kBACAA,EAAA,8BACAA,EAAA,oBACAA,EAAA,oBACAA,EAAA,oBACAA,EAAA,cACAA,EAAA,sBARA,CASCA,QAAA,KAID,SAAAC,GACAA,EAAA,8BACAA,EAAA,sBACAA,EAAA,oBACAA,EAAA,oBAJA,CAKCA,QAAA,KAEM,IAIAO,GAaAC,GASAC,GAYAC,GASAC,GAYAC,GASAC,GAeAC,GAsBAC,GAQAC,GAQAC,GAQAC,GAOAC,GAOAC,GA/IAC,GAAA,CACPC,qBAAA,GACAC,OAAA,KAIA,SAAAhB,GACAA,EAAA,sBACAA,EAAA,wBACAA,EAAA,8BACAA,EAAA,0BACAA,EAAA,iCACAA,EAAA,6BACAA,EAAA,uBACAA,EAAA,YARA,CASCA,QAAA,KAID,SAAAC,GACAA,EAAA,gBACAA,EAAA,wBACAA,EAAA,cACAA,EAAA,YAJA,CAKCA,QAAA,KAID,SAAAC,GACAA,EAAA,0BACAA,EAAA,sBACAA,EAAA,oBACAA,EAAA,YACAA,EAAA,UACAA,EAAA,gBACAA,EAAA,0BAPA,CAQCA,QAAA,KAID,SAAAC,GACAA,EAAA,sBACAA,EAAA,oBACAA,EAAA,kCACAA,EAAA,sCAJA,CAKCA,QAAA,KAID,SAAAC,GACAA,EAAA,8BACAA,EAAA,4BACAA,EAAA,kCACAA,EAAA,kCACAA,EAAA,0BACAA,EAAA,8BACAA,EAAA,4BAPA,CAQCA,QAAA,KAID,SAAAC,GACAA,EAAA,oBACAA,EAAA,kBACAA,EAAA,gBACAA,EAAA,kBAJA,CAKCA,QAAA,KAID,SAAAC,GACAA,EAAA,QACAA,EAAA,QACAA,EAAA,QACAA,EAAA,QACAA,EAAA,QACAA,EAAA,QACAA,EAAA,UACAA,EAAA,QACAA,EAAA,QACAA,EAAA,UAVA,CAWCA,QAAA,KAID,SAAAC,GACAA,EAAA,0BACAA,EAAA,gCACAA,EAAA,4BACAA,EAAA,0BACAA,EAAA,kBACAA,EAAA,kBACAA,EAAA,oBACAA,EAAA,sBACAA,EAAA,8BACAA,EAAA,gBACAA,EAAA,4CACAA,EAAA,wBACAA,EAAA,0BACAA,EAAA,oCACAA,EAAA,oBACAA,EAAA,gCACAA,EAAA,gCAjBA,CAkBCA,QAAA,KAID,SAAAC,GACAA,EAAA,8BACAA,EAAA,sCACAA,EAAA,wCAHA,CAICA,QAAA,KAID,SAAAC,GACAA,EAAA,kCACAA,EAAA,sCACAA,EAAA,cAHA,CAICA,QAAA,KAID,SAAAC,GACAA,EAAA,oBACAA,EAAA,wBACAA,EAAA,YAHA,CAICA,QAAA,KAID,SAAAC,GACAA,EAAA,wBACAA,EAAA,kBAFA,CAGCA,QAAA,KAID,SAAAC,GACAA,EAAA,wBACAA,EAAA,cAFA,CAGCA,QAAA,KAID,SAAAC,GACAA,EAAA,gBACAA,EAAA,cACAA,EAAA,gBACAA,EAAA,cAJA,CAKCA,QAAA,KAEM,IACAI,GAOAC,GARAC,GAAA,CAAAN,GAAAO,OAAAP,GAAAQ,OAAAR,GAAAS,MAAAT,GAAAU,QAGP,SAAAN,GACAA,EAAA,wBACAA,EAAA,cAFA,CAGCA,QAAA,KAID,SAAAC,GACAA,EAAA,YACAA,EAAA,sBAFA,CAGCA,QAAA,KAEMD,GAAAO,WAAAP,GAAAQ,MAAA,IAEAC,GAOAC,GARAC,GAAA,CAAAV,GAAAW,KAAAX,GAAAY,YAGP,SAAAJ,GACAA,EAAA,kBACAA,EAAA,oBAFA,CAGCA,QAAA,KAID,SAAAC,GACAA,EAAA,YACAA,EAAA,wBACAA,EAAA,cAHA,CAICA,QAAA,KAEM,IACAI,GADAC,GAAA,CAAAL,GAAAM,WAAAN,GAAAO,QAGP,SAAAH,GACAA,EAAA,YACAA,EAAA,kBAFA,CAGCA,QAAA,KAEM,ICvQAI,GAWAC,GAOAC,GAOAC,GAOAC,GAyBAC,GAQAC,GAOAC,GAOAC,GAQAC,GAWAC,GDqKAC,GAAA,CAAAf,GAAAgB,KAAAhB,GAAAiB,SAaAC,GAAA,CACPhQ,UAAA,GACAE,SAAA,GACAD,cAAA,GACAE,OAAA,GACA1E,MAAA,GACA4E,YAAA,CACA4P,SAAAvV,EACAwV,WAAAxV,EACAyV,UAAAzV,GAEA0V,IAAA,GACAhT,QAxBO,CACP7B,QAAA,GACAL,SAAA,GACAC,SAAA,GACAG,WAAA,KACAF,KAAA,GACAC,MAAA,MAmBAgC,OAAA,CAjBO,CACPE,KAAA,GACAD,YAAA,MAiBO+S,GAAA7F,OAAA8F,OAAA,GAA2CN,GAAA,CAClDO,aAAA,GACA/S,cAAA,GACAC,WAAA,GACAC,aAAA,KACAC,mBAAA,KACAC,eAAA,GACAa,mCAAA,GACAD,oCAAA,GACAF,sCAAA,GACAC,mCAAA,GACAoD,oCAAA,EACA1D,YAAA,CACAC,YAAA,KACAC,iBAAA,KACAC,eAAA,KACAC,YAAA,MAEAmS,yBAAA,EACAvV,eAAA,KACA8C,SAAA,GACAC,gBAAA,CACA9C,SAAA,GACAC,SAAA,GACAC,KAAA,GACAG,QAAA,GACAF,MAAA,KACAC,WAAA,MAEAmV,SAAA,KACAC,mBAAA,KACA7S,YAAA,GACAC,cAAA,KACA6S,sBAAA,CACAC,wBAAA,KACAC,oBAAA,KACAC,4BAAA,KACAC,oBAAA,KACAC,cAAA,KACAC,iCAAA,QAGOC,GAAA,CAEPC,aAAgB9W,EAAY+W,QAC5BC,cAAA,GACAC,SAAA,GACAC,gBAAA,GACAC,mBAAA,CAAA3D,UAEAtQ,KAAAyP,GAAAN,WACA/N,gBAAmB2M,EAAeO,OAElCjN,cAAA,GACAC,wBAAA,GACAU,aAAA,GACAC,cAAA,GACAC,eAAA,GACAC,gBAAA,CACAC,KAAA,GACAC,QAAA,GACAC,QAAA,GACAC,UAAA,IAGA2R,qBAAApB,GACAqB,aAAA,GACAC,uBAAAjX,EACAkX,uBAAAlX,EACAmX,gCAAAnX,EACAwJ,sBAAAxJ,EAEAoX,yBAAA,KACApN,aAAAsJ,GAAAO,WACAzP,8BAAA,GACAiT,kCAAA,GACAC,iCAAA,GACAvR,mBAAA,CACAC,YAAA,KACAC,4BAAA,KACAE,6BAAA,KACAD,iBAAA,KACAU,yBAAA,KACAC,mBAAA,KACAC,sBAAA,KACAC,gCAAA,MAEAG,WAAA,CACAC,cAAA,KACAC,gBAAA,KACAC,yBAAA,KACAC,aAAA,KACAC,aAAA,KACAC,gBAAA,KACAC,eAAA,KACAC,kBAAA,KACAC,qBAAA,KACAC,eAAA,KACAC,cAAA,KACAC,qBAAA,KACAC,uBAAA,KACAC,cAAA,KACAC,WAAA,KACAC,OAAA,KACAC,OAAA,KACAC,eAAA,KACAC,kBAAA,KACAC,eAAA,KACAC,sBAAA,KACAC,0BAAA,KACAC,aAAA,KACA8O,cAAA,KACAxO,uBAAA,KACAL,qBAAA,KACAM,+BAAA,KACAF,wBAAA,KACA0O,0BAAA,KACAlO,+BAAA,KACAV,UAAA,KACAD,UAAA,KACAU,mBAAA,KACAH,iBAAA,KACAD,iBAAA,KACAE,yCAAA,KACAC,6CAAA,MAGA/E,WAAA,CACAI,YAAA,CACAD,WAAAxE,EACAuE,mBAAAvE,GAEAsE,MAAA,CACAE,WAAAxE,EACAuE,mBAAAvE,GAEA4E,OAAA,CACAJ,WAAAxE,EACAuE,mBAAAvE,GAEA2E,QAAA,CACAH,WAAAxE,EACAuE,mBAAAvE,GAEA0E,QAAA,CACAF,WAAAxE,EACAuE,mBAAAvE,IAIAyX,WAAA,CACAC,oBAAA,KACAC,YAAA,KACAC,oBAAA,KACAC,wBAAA,KACAC,aAAA,KACAC,uBAAA,KACAC,eAAA,KACAC,mBAAwBrJ,EAAiBU,GACzC4I,iBAAA,MAEAC,eAAA,KAEAC,YAAA,GACAC,mBAAArY,EACAgE,cAAA,GACAsU,oBAAA,CACAC,4BAAA,GACAC,eAAA,GACAC,qBAAA,EACAC,mBAAA,GACAC,eAAA,KACAC,aAAA,GACAC,qBAAA,GACAC,kBAAA,KC/cA,SAAAtE,GACAA,IAAA,mBACAA,IAAA,mBACAA,IAAA,2BACAA,IAAA,6BACAA,IAAA,eACAA,IAAA,iBANA,CAOCA,QAAA,KAID,SAAAC,GACAA,IAAA,aACAA,IAAA,eAFA,CAGCA,QAAA,KAID,SAAAC,GACAA,IAAA,eACAA,IAAA,iBAFA,CAGCA,QAAA,KAID,SAAAC,GACAA,IAAA,eACAA,IAAA,iBAFA,CAGCA,QAAA,KAID,SAAAC,GAIAA,IAAA,mBAIAA,IAAA,iBAIAA,IAAA,6BAIAA,IAAA,2BAIAA,IAAA,qCApBA,CAqBCA,QAAA,KAID,SAAAC,GACAA,IAAA,mBACAA,IAAA,uBAFA,CAGCA,QAAA,KAKD,SAAAC,GACAA,IAAA,iBACAA,IAAA,mBAFA,CAGCA,QAAA,KAID,SAAAC,GACAA,IAAA,eACAA,IAAA,aAFA,CAGCA,QAAA,KAID,SAAAC,GACAA,IAAA,eACAA,IAAA,eACAA,IAAA,2BAHA,CAICA,QAAA,KAID,SAAAC,GACAA,EAAA,QACAA,EAAA,qBACAA,EAAA,4BACAA,EAAA,eACAA,EAAA,kBACAA,EAAA,6BANA,CAOCA,QAAA,KAID,SAAAC,GACAA,EAAA,kBACAA,EAAA,sCACAA,EAAA,kCACAA,EAAA,oBACAA,EAAA,sBACAA,EAAA,0BACAA,EAAA,cACAA,EAAA,sBACAA,EAAA,wBACAA,EAAA,cACAA,EAAA,YACAA,EAAA,oBACAA,EAAA,wBACAA,EAAA,sBACAA,EAAA,sCAfA,CAgBCA,QAAA,KAEM,IACA6D,GASAC,GAMAC,GAhBAC,GAAApJ,OAAAqJ,OAAAjE,KAGP,SAAA6D,GACAA,EAAA,gBACAA,EAAA,YACAA,EAAA,kBACAA,EAAA,kBAJA,CAKCA,QAAA,KAID,SAAAC,GACAA,EAAA,wBADA,CAECA,QAAA,KAID,SAAAC,GAIAA,IAAA,2BAQAA,IAAA,mBAMAA,IAAA,qCAKAA,IAAA,iBAKAA,IAAA,+BAOAA,IAAA,uBASAA,IAAA,qBAQAA,IAAA,eAOAA,IAAA,yBAOAA,IAAA,cAOAA,IAAA,8BASAA,IAAA,oCAMAA,IAAA,8CAOAA,IAAA,oCAQAA,IAAA,cAOAA,IAAA,0CAOAA,IAAA,kCAOAA,IAAA,gBA5HA,CA6HCA,QAAA,KCnQM,ICFAG,GCAAC,GASAC,GAWAC,GAYAC,GAOAC,GAOAC,GF5CAC,GAAA,CAAqBzE,GAAS0E,MAAQ1E,GAAS2E,SAAW3E,GAAS4E,QAAU5E,GAAS6E,WAAa7E,GAAS8E,MAAQ9E,GAAS+E,KAAO/E,GAASgF,YAAchF,GAASiF,UAAYjF,GAASkF,UAAYlF,GAASmF,gBAAkBnF,GAASoF,kBAAoBpF,GAASqF,WAAarF,GAASsF,UAAYtF,GAASuF,mBACjTC,GAAA,CACPC,MAAA,CAAUzF,GAAS0E,MAAQ1E,GAAS8E,MAAQ9E,GAASgF,YAAchF,GAAS6E,WAAa7E,GAASkF,UAAYlF,GAAS+E,MACvHW,OAAA,CAAW1F,GAASiF,UAAYjF,GAAS2E,SAAW3E,GAASmF,iBAC7DQ,KAAA,CAAS3F,GAAS4E,QAAU5E,GAASuF,kBAAoBvF,GAASoF,kBAAoBpF,GAASsF,UAAYtF,GAASqF,cCJpH,SAAAnB,GACAA,IAAA,iBACAA,IAAA,eACAA,IAAA,iBACAA,IAAA,eACAA,IAAA,gCALA,CAMCA,QAAA,KCND,SAAAC,GACAA,EAAA,oBACAA,EAAA,kBACAA,EAAA,oBACAA,EAAA,2BAJA,CAKCA,QAAA,KAID,SAAAC,GACAA,EAAA,sBACAA,EAAA,gBACAA,EAAA,YACAA,EAAA,gBACAA,EAAA,gBACAA,EAAA,2BANA,CAOCA,QAAA,KAID,SAAAC,GACAA,EAAA,UACAA,EAAA,yBACAA,EAAA,gBACAA,EAAA,gBACAA,EAAA,gBACAA,EAAA,cACAA,EAAA,gBAPA,CAQCA,QAAA,KAID,SAAAC,GACAA,EAAA,oBACAA,EAAA,8BAFA,CAGCA,QAAA,KAID,SAAAC,GACAA,EAAA,uBACAA,EAAA,yBAFA,CAGCA,QAAA,KAID,SAAAC,GACAA,EAAA,UACAA,EAAA,UAFA,CAGCA,QAAA,KAEM,IAIAoB,GAJAC,GAAA,yDACAC,GAAA,GAAAtP,OAAAqP,GAAA,kJAEAE,GAAA,yFAGP,SAAAH,GACAA,EAAA,kBACAA,EAAA,0CACAA,EAAA,oBACAA,EAAA,oBAJA,CAKCA,QAAA,KAEM,IAEAI,GAQAC,GASAC,GAlBAC,GAAA,GAAA3P,OADA,kDACAqP,KAGP,SAAAG,GACAA,EAAA,kBACAA,EAAA,wBACAA,EAAA,oBAHA,CAICA,QAAA,KAID,SAAAC,GACAA,EAAA,oBACAA,EAAA,kCACAA,EAAA,8CACAA,EAAA,kDAJA,CAKCA,QAAA,KAID,SAAAC,GACAA,EAAA,8BACAA,EAAA,0BAFA,CAGCA,QAAA,KAEM,IC3FAE,GD2FAC,GAAA,CAAAH,GAAAI,cAAAJ,GAAAK,cCzFP,SAAAH,GACAA,EAAA,kBACAA,EAAA,mBACAA,EAAA,cACAA,EAAA,cACAA,EAAA,oBACAA,EAAA,cACAA,EAAA,aACAA,EAAA,eACAA,EAAA,iBACAA,EAAA,wBACAA,EAAA,gBACAA,EAAA,cACAA,EAAA,YACAA,EAAA,gBACAA,EAAA,cACAA,EAAA,iBACAA,EAAA,cACAA,EAAA,cACAA,EAAA,iBACAA,EAAA,eACAA,EAAA,cACAA,EAAA,cACAA,EAAA,aACAA,EAAA,YACAA,EAAA,cACAA,EAAA,aACAA,EAAA,kCACAA,EAAA,kCACAA,EAAA,2BACAA,EAAA,eACAA,EAAA,mBACAA,EAAA,aACAA,EAAA,kCACAA,EAAA,uBACAA,EAAA,eACAA,EAAA,kBACAA,EAAA,cACAA,EAAA,gBACAA,EAAA,eACAA,EAAA,eACAA,EAAA,aACAA,EAAA,oBACAA,EAAA,6BACAA,EAAA,WACAA,EAAA,YACAA,EAAA,YACAA,EAAA,sBACAA,EAAA,0BACAA,EAAA,eACAA,EAAA,cACAA,EAAA,gCACAA,EAAA,YACAA,EAAA,kBACAA,EAAA,gBACAA,EAAA,cACAA,EAAA,WACAA,EAAA,cACAA,EAAA,aACAA,EAAA,cACAA,EAAA,kBACAA,EAAA,cACAA,EAAA,eACAA,EAAA,eACAA,EAAA,wBACAA,EAAA,cACAA,EAAA,YACAA,EAAA,iBACAA,EAAA,uBACAA,EAAA,cACAA,EAAA,cACAA,EAAA,eACAA,EAAA,eACAA,EAAA,8BACAA,EAAA,mBACAA,EAAA,WACAA,EAAA,cACAA,EAAA,aACAA,EAAA,mBACAA,EAAA,sBACAA,EAAA,gCACAA,EAAA,YACAA,EAAA,aACAA,EAAA,cACAA,EAAA,cACAA,EAAA,YACAA,EAAA,gBACAA,EAAA,aACAA,EAAA,gBACAA,EAAA,cACAA,EAAA,iBACAA,EAAA,WACAA,EAAA,gBACAA,EAAA,eACAA,EAAA,aACAA,EAAA,mBACAA,EAAA,aACAA,EAAA,YACAA,EAAA,oCACAA,EAAA,cACAA,EAAA,eACAA,EAAA,eACAA,EAAA,cACAA,EAAA,cACAA,EAAA,YACAA,EAAA,gBACAA,EAAA,4BACAA,EAAA,WACAA,EAAA,cACAA,EAAA,gBACAA,EAAA,aACAA,EAAA,YACAA,EAAA,cACAA,EAAA,YACAA,EAAA,aACAA,EAAA,aACAA,EAAA,iBACAA,EAAA,YACAA,EAAA,eACAA,EAAA,uCACAA,EAAA,sBACAA,EAAA,aACAA,EAAA,iBACAA,EAAA,mCACAA,EAAA,aACAA,EAAA,cACAA,EAAA,cACAA,EAAA,cACAA,EAAA,YACAA,EAAA,oBACAA,EAAA,gBACAA,EAAA,iBACAA,EAAA,YACAA,EAAA,iBACAA,EAAA,aACAA,EAAA,eACAA,EAAA,eACAA,EAAA,WACAA,EAAA,YACAA,EAAA,sBACAA,EAAA,iBACAA,EAAA,iBACAA,EAAA,gBACAA,EAAA,cACAA,EAAA,aACAA,EAAA,kCACAA,EAAA,wBACAA,EAAA,aACAA,EAAA,eACAA,EAAA,iBACAA,EAAA,iBACAA,EAAA,cACAA,EAAA,iBACAA,EAAA,cACAA,EAAA,cACAA,EAAA,YACAA,EAAA,YACAA,EAAA,kBACAA,EAAA,mBACAA,EAAA,iBACAA,EAAA,gBACAA,EAAA,YACAA,EAAA,cACAA,EAAA,WACAA,EAAA,oBACAA,EAAA,qBACAA,EAAA,6BACAA,EAAA,aACAA,EAAA,WACAA,EAAA,eACAA,EAAA,YACAA,EAAA,uBACAA,EAAA,aACAA,EAAA,qBACAA,EAAA,eACAA,EAAA,WACAA,EAAA,kBACAA,EAAA,eACAA,EAAA,aACAA,EAAA,eACAA,EAAA,iBACAA,EAAA,YACAA,EAAA,cACAA,EAAA,wBACAA,EAAA,aACAA,EAAA,cACAA,EAAA,sBACAA,EAAA,4CACAA,EAAA,yBACAA,EAAA,iBACAA,EAAA,kBACAA,EAAA,6BACAA,EAAA,gCACAA,EAAA,YACAA,EAAA,gBACAA,EAAA,yBACAA,EAAA,kBACAA,EAAA,cACAA,EAAA,aACAA,EAAA,iBACAA,EAAA,kBACAA,EAAA,gBACAA,EAAA,kBACAA,EAAA,eACAA,EAAA,eACAA,EAAA,qBACAA,EAAA,cACAA,EAAA,kBACAA,EAAA,0CACAA,EAAA,iBACAA,EAAA,YACAA,EAAA,eACAA,EAAA,YACAA,EAAA,eACAA,EAAA,0BACAA,EAAA,aACAA,EAAA,kBACAA,EAAA,yBACAA,EAAA,4BACAA,EAAA,iBACAA,EAAA,+BACAA,EAAA,eACAA,EAAA,iBACAA,EAAA,WACAA,EAAA,cACAA,EAAA,YACAA,EAAA,wBACAA,EAAA,cACAA,EAAA,aACAA,EAAA,mBACAA,EAAA,4BACAA,EAAA,aACAA,EAAA,aACAA,EAAA,cACAA,EAAA,yBACAA,EAAA,oDACAA,EAAA,uCACAA,EAAA,4BACAA,EAAA,cACAA,EAAA,iBACAA,EAAA,cACAA,EAAA,oCACAA,EAAA,cACAA,EAAA,2BACAA,EAAA,sBACAA,EAAA,sBACAA,EAAA,oBACAA,EAAA,YACAA,EAAA,aACAA,EAAA,eAzPA,CA0PCA,QAAA,KAEM,IC1PAI,GD0PAC,GAAA,CAAAL,GAAAM,YAAAN,GAAAO,aAAAP,GAAAQ,QAAAR,GAAAS,QAAAT,GAAAU,cAAAV,GAAAW,QAAAX,GAAAY,OAAAZ,GAAAa,SAAAb,GAAAc,WAAAd,GAAAe,kBAAAf,GAAAgB,UAAAhB,GAAAiB,QAAAjB,GAAAkB,MAAAlB,GAAAmB,UAAAnB,GAAAoB,QAAApB,GAAAqB,WAAArB,GAAAsB,QAAAtB,GAAAuB,QAAAvB,GAAAwB,WAAAxB,GAAAyB,SAAAzB,GAAA0B,QAAA1B,GAAA2B,QAAA3B,GAAA4B,OAAA5B,GAAA6B,MAAA7B,GAAA8B,QAAA9B,GAAA+B,OAAA/B,GAAAgC,4BAAAhC,GAAAiC,4BAAAjC,GAAAkC,qBAAAlC,GAAAmC,SAAAnC,GAAAoC,aAAApC,GAAAqC,OAAArC,GAAAsC,4BAAAtC,GAAAuC,iBAAAvC,GAAAwC,SAAAxC,GAAAyC,YAAAzC,GAAA0C,QAAA1C,GAAA2C,UAAA3C,GAAA4C,SAAA5C,GAAA6C,SAAA7C,GAAA8C,OAAA9C,GAAA+C,cAAA/C,GAAAgD,uBAAAhD,GAAAiD,KAAAjD,GAAAkD,MAAAlD,GAAAmD,MAAAnD,GAAAoD,gBAAApD,GAAAqD,oBAAArD,GAAAsD,SAAAtD,GAAAuD,QAAAvD,GAAAwD,0BAAAxD,GAAAyD,MAAAzD,GAAA0D,YAAA1D,GAAA2D,UAAA3D,GAAA4D,QAAA5D,GAAA6D,KAAA7D,GAAA8D,QAAA9D,GAAA+D,OAAA/D,GAAAgE,QAAAhE,GAAAiE,YAAAjE,GAAAkE,QAAAlE,GAAAmE,SAAAnE,GAAAoE,SAAApE,GAAAqE,kBAAArE,GAAAsE,QAAAtE,GAAAuE,MAAAvE,GAAAwE,WAAAxE,GAAAyE,iBAAAzE,GAAA0E,QAAA1E,GAAA2E,QAAA3E,GAAA4E,SAAA5E,GAAA6E,SAAA7E,GAAA8E,wBAAA9E,GAAA+E,aAAA/E,GAAAgF,KAAAhF,GAAAiF,QAAAjF,GAAAkF,OAAAlF,GAAAmF,aAAAnF,GAAAoF,gBAAApF,GAAAqF,0BAAArF,GAAAsF,MAAAtF,GAAAuF,OAAAvF,GAAAwF,QAAAxF,GAAAyF,QAAAzF,GAAA0F,MAAA1F,GAAA2F,UAAA3F,GAAA4F,OAAA5F,GAAA6F,UAAA7F,GAAA8F,QAAA9F,GAAA+F,WAAA/F,GAAAgG,KAAAhG,GAAAiG,UAAAjG,GAAAkG,SAAAlG,GAAAmG,OAAAnG,GAAAoG,aAAApG,GAAAqG,OAAArG,GAAAsG,MAAAtG,GAAAuG,8BAAAvG,GAAAwG,QAAAxG,GAAAyG,SAAAzG,GAAA0G,SAAA1G,GAAA2G,QAAA3G,GAAA4G,QAAA5G,GAAA6G,MAAA7G,GAAA8G,UAAA9G,GAAA+G,sBAAA/G,GAAAgH,KAAAhH,GAAAiH,QAAAjH,GAAAkH,UAAAlH,GAAAmH,OAAAnH,GAAAoH,MAAApH,GAAAqH,QAAArH,GAAAsH,MAAAtH,GAAAuH,OAAAvH,GAAAwH,OAAAxH,GAAAyH,WAAAzH,GAAA0H,MAAA1H,GAAA2H,SAAA3H,GAAA4H,iCAAA5H,GAAA6H,gBAAA7H,GAAA8H,OAAA9H,GAAA+H,WAAA/H,GAAAgI,6BAAAhI,GAAAiI,OAAAjI,GAAAkI,QAAAlI,GAAAmI,QAAAnI,GAAAoI,QAAApI,GAAAqI,MAAArI,GAAAsI,cAAAtI,GAAAuI,UAAAvI,GAAAwI,WAAAxI,GAAAyI,MAAAzI,GAAA0I,WAAA1I,GAAA2I,OAAA3I,GAAA4I,SAAA5I,GAAA6I,SAAA7I,GAAA8I,KAAA9I,GAAA+I,MAAA/I,GAAAgJ,gBAAAhJ,GAAAiJ,WAAAjJ,GAAAkJ,WAAAlJ,GAAAmJ,UAAAnJ,GAAAoJ,QAAApJ,GAAAqJ,OAAArJ,GAAAsJ,4BAAAtJ,GAAAuJ,kBAAAvJ,GAAAwJ,OAAAxJ,GAAAyJ,SAAAzJ,GAAA0J,WAAA1J,GAAA2J,WAAA3J,GAAA4J,QAAA5J,GAAA6J,WAAA7J,GAAA8J,QAAA9J,GAAA+J,QAAA/J,GAAAgK,MAAAhK,GAAAiK,MAAAjK,GAAAkK,YAAAlK,GAAAmK,aAAAnK,GAAAoK,WAAApK,GAAAqK,UAAArK,GAAAsK,MAAAtK,GAAAuK,QAAAvK,GAAAwK,KAAAxK,GAAAyK,cAAAzK,GAAA0K,eAAA1K,GAAA2K,uBAAA3K,GAAA4K,OAAA5K,GAAA6K,KAAA7K,GAAA8K,SAAA9K,GAAA+K,MAAA/K,GAAAgL,iBAAAhL,GAAAiL,OAAAjL,GAAAkL,eAAAlL,GAAAmL,SAAAnL,GAAAoL,KAAApL,GAAAqL,YAAArL,GAAAsL,SAAAtL,GAAAuL,OAAAvL,GAAAwL,SAAAxL,GAAAyL,WAAAzL,GAAA0L,MAAA1L,GAAA2L,QAAA3L,GAAA4L,kBAAA5L,GAAA6L,OAAA7L,GAAA8L,QAAA9L,GAAA+L,gBAAA/L,GAAAgM,sCAAAhM,GAAAiM,mBAAAjM,GAAAkM,WAAAlM,GAAAmM,YAAAnM,GAAAoM,uBAAApM,GAAAqM,0BAAArM,GAAAsM,MAAAtM,GAAAuM,UAAAvM,GAAAwM,mBAAAxM,GAAAyM,YAAAzM,GAAA0M,QAAA1M,GAAA2M,OAAA3M,GAAA4M,WAAA5M,GAAA6M,YAAA7M,GAAA8M,UAAA9M,GAAA+M,YAAA/M,GAAAgN,SAAAhN,GAAAiN,SAAAjN,GAAAkN,eAAAlN,GAAAmN,QAAAnN,GAAAoN,YAAApN,GAAAqN,oCAAArN,GAAAsN,WAAAtN,GAAAuN,MAAAvN,GAAAwN,SAAAxN,GAAAyN,MAAAzN,GAAA0N,SAAA1N,GAAA2N,oBAAA3N,GAAA4N,OAAA5N,GAAA6N,YAAA7N,GAAA8N,mBAAA9N,GAAA+N,sBAAA/N,GAAAgO,WAAAhO,GAAAiO,yBAAAjO,GAAAkO,SAAAlO,GAAAmO,WAAAnO,GAAAoO,KAAApO,GAAAqO,QAAArO,GAAAsO,MAAAtO,GAAAuO,kBAAAvO,GAAAwO,QAAAxO,GAAAyO,OAAAzO,GAAA0O,aAAA1O,GAAA2O,sBAAA3O,GAAA4O,OAAA5O,GAAA6O,OAAA7O,GAAA8O,QAAA9O,GAAA+O,mBAAA/O,GAAAgP,8CAAAhP,GAAAiP,iCAAAjP,GAAAkP,sBAAAlP,GAAAmP,QAAAnP,GAAAoP,WAAApP,GAAAqP,QAAArP,GAAAsP,8BAAAtP,GAAAuP,QAAAvP,GAAAwP,qBAAAxP,GAAAyP,gBAAAzP,GAAA0P,gBAAA1P,GAAA2P,cAAA3P,GAAA4P,MAAA5P,GAAA6P,OAAA7P,GAAA8P,UACAC,GAAA,SAAAC,GAKP,OAJAxb,OAAAyb,KAAAjQ,IAAAkQ,KAAA,SAAAC,GACA,OAAAnQ,GAAAmQ,KAAAH,KACG,IAEHI,QAAA,kBAAAC,QEnQOC,GAAA,QAAAlgB,OADA,MAEAmgB,GAAA,SAAAC,GACP,SAAApgB,OAAAkgB,GAAA,KAAAlgB,OAAAogB,EAAA,GAAApgB,OAAAogB,EAAA,oBAGOC,GAAA,CACPC,MAAA,QACAC,OAAA,SACAC,UAAA,YACAC,WAAA,aACAC,SAAA,WACAC,cAAA,iBAEOC,GAAA,SAAAC,GACP,SAAA7gB,OAAAqgB,GAAAE,OAAA,KAAAvgB,OAAA6gB,IAEOC,GAAA,SAAAC,GACP,SAAA/gB,OAAAqgB,GAAAC,MAAA,KAAAtgB,OAAA+gB,IAKOC,GAAA,GAAAhhB,OAAAqgB,GAAAK,SAAA,UAOAO,GAAA,GAAAjhB,OAAAqgB,GAAAI,YACAS,GAAA,GAAAlhB,OAAAqgB,GAAAG,WACAW,GAAA,GAAAnhB,OAAAqgB,GAAAG,UAAA,QACAY,GAAA,GAAAphB,OAAAqgB,GAAAG,UAAA,aACAa,GAAA,SAAAR,GACP,SAAA7gB,OAAAqgB,GAAAG,UAAA,KAAAxgB,OAAA6gB,IAIOS,GAAA,GAAAthB,OAAAqgB,GAAAK,SAAA,cAKAa,GAAA,CAAyB3R,GAAOkP,sBAAwBlP,GAAOgP,8CAAgDhP,GAAOmB,UAAYnB,GAAOoK,aDtChJ,SAAAhK,GACAA,EAAA,UACAA,EAAA,UACAA,EAAA,gBAHA,CAICA,QAAA,KEXM,IAcAwR,GAdAC,GAAA,CACPC,cAAA,GACAC,sCAAA,GACAC,kBAAA,GACAC,UAAA,GACAC,SAAA,GACAC,mCAAA,EACAC,gBAAA,GACAC,mCAAA,GACAC,OAAA,EACAC,UAAA,EACAC,SAAA,GACAC,GAAA,IAIA,SAAAb,GACAA,EAAA,sBACAA,EAAA,oCACAA,EAAA,0CACAA,EAAA,8CAJA,CAKCA,QAAA,KAEMA,GAAAc,UAAAd,GAAAe,iBAAAf,GAAAgB,oBAAAhB,GAAAiB,sBAAA,ICvBAC,GAOAC,GCPAC,GAYAC,GCZAC,GAAA,CACPC,MAAA,4BACAC,QAAA,iCAEOC,GAAA,CACPF,MAAA,uBACAC,QAAA,yBFJA,SAAAN,GACAA,IAAA,WACAA,IAAA,WAFA,CAGCA,QAAA,KAID,SAAAC,GACAA,EAAA,YACAA,EAAA,WACAA,EAAA,cAHA,CAICA,QAAA,KCXD,SAAAC,GACAA,EAAA,wBACAA,EAAA,0BACAA,EAAA,gBACAA,EAAA,8BACAA,EAAA,gCACAA,EAAA,kCACAA,EAAA,4CAPA,CAQCA,QAAA,KAID,SAAAC,GACAA,EAAA,sBACAA,EAAA,cACAA,EAAA,YACAA,EAAA,gBACAA,EAAA,gBACAA,EAAA,UACAA,EAAA,kBAPA,CAQCA,QAAA,KAEM,IAEAK,GAFAC,GAAA,CAAAP,GAAAQ,WAAAR,GAAAS,YAAAT,GAAAU,OAAAV,GAAAW,cAAAX,GAAAY,eAAAZ,GAAAa,gBAAAb,GAAAc,sBACAC,GAAA,CAAAd,GAAAzU,QAAAyU,GAAAe,MAAAf,GAAAgB,OAAAhB,GAAAiB,KAAAjB,GAAAkB,OAAAlB,GAAAmB,IAAAnB,GAAAP,YAGP,SAAAY,GACAA,EAAA,gBACAA,EAAA,oBAFA,CAGCA,QAAA,KAEM,IEjCAe,GFiCAf,GAAAgB,OAAAhB,GAAAiB,UE/BP,SAAAF,GACAA,EAAA,QACAA,EAAA,QACAA,EAAA,QACAA,EAAA,QACAA,EAAA,UALA,CAMCA,QAAA,KAEM,ICVAG,GAmCAC,GDzBAC,GAAA,CACPC,WAAAN,GAAAO,GACAC,QAAA,EACAC,iBAAA,EACAC,kBAAA,EACAC,iBAAA,EACAC,MAAA,OCdA,SAAAT,GACAA,IAAA,yBACAA,IAAA,mBACAA,IAAA,uBACAA,IAAA,uBACAA,IAAA,uBACAA,IAAA,uBACAA,IAAA,yBACAA,IAAA,mBACAA,IAAA,iCACAA,IAAA,4BACAA,IAAA,cACAA,IAAA,8BACAA,IAAA,4BACAA,IAAA,4BACAA,IAAA,oBACAA,IAAA,oCACAA,IAAA,8BACAA,IAAA,8BACAA,IAAA,4BACAA,IAAA,wBACAA,IAAA,sCACAA,IAAA,kBACAA,IAAA,gBACAA,IAAA,4BACAA,IAAA,4BACAA,IAAA,8BACAA,IAAA,gCACAA,IAAA,8BACAA,IAAA,gBACAA,IAAA,cA9BA,CA+BCA,QAAA,KAID,SAAAC,GACAA,OAAA,eACAA,EAAA,sBACAA,EAAA,gBACAA,EAAA,oBACAA,EAAA,6BACAA,EAAA,2BACAA,EAAA,oBACAA,EAAA,6BACAA,EAAA,2BACAA,EAAA,oBACAA,EAAA,oBACAA,EAAA,sBACAA,EAAA,gBACAA,EAAA,8BACAA,EAAA,wBACAA,EAAA,UACAA,EAAA,0BACAA,EAAA,wBACAA,EAAA,wBACAA,EAAA,gBACAA,EAAA,gCACAA,EAAA,0BACAA,EAAA,0BACAA,EAAA,wBACAA,EAAA,oBACAA,EAAA,kCACAA,EAAA,cACAA,EAAA,YACAA,EAAA,wBACAA,EAAA,wBACAA,EAAA,0BACAA,EAAA,YACAA,EAAA,UACAA,EAAA,8BACAA,EAAA,4BACAA,EAAA,wBACAA,EAAA,sBArCA,CAsCCA,QAAA,KC3EM,ICAAS,GCAAC,GFAAC,GAAA,CAIPC,IAAA,EAIAC,gBAAA,EAIAC,OAAA,EACAC,WAAA,EAIAC,UAAA,EAIAC,SAAA,EAIAC,cAAA,EAIAC,SAAA,EAIAC,WAAA,GAIAC,QAAA,GAIAC,eAAA,GAIAC,MAAA,GAIAC,UAAA,GAIAC,iBAAA,GAIAC,gBAAA,GAIAC,eAAA,GAIAC,gBAAA,GAIAC,aAAA,GAIAC,mBAAA,IGzEOC,GAAA,CACPC,MAAA,QACAC,MAAA,4BCSOC,GAAA,CACPC,EAAA,CACAlwB,KAAA,UACAmwB,YAAA,0BAEAC,GAAA,CACApwB,KAAA,2BACAmwB,YAAA,uEAEAE,GAAA,CACArwB,KAAA,eACAmwB,YAAA,wCAEAG,IAAA,CACAtwB,KAAA,sBACAmwB,YAAA,+DAEAI,IAAA,CACAvwB,KAAA,0BACAmwB,YAAA,4CAEAK,IAAA,CACAxwB,KAAA,yBACAmwB,YAAA,2CAEAM,IAAA,CACAzwB,KAAA,kBACAmwB,YAAA,qCAEAO,IAAA,CACA1wB,KAAA,iBACAmwB,YAAA,yCAEAQ,IAAA,CACA3wB,KAAA,uBACAmwB,YAAA,8CAEAS,IAAA,CACA5wB,KAAA,gBACAmwB,YAAA,6BAEAU,IAAA,CACA7wB,KAAA,uBACAmwB,YAAA,mDAEAW,IAAA,CACA9wB,KAAA,uBACAmwB,YAAA,kCAEAY,IAAA,CACA/wB,KAAA,wBACAmwB,YAAA,mCAEAa,IAAA,CACAhxB,KAAA,6BACAmwB,YAAA,sEAEAc,IAAA,CACAjxB,KAAA,iDACAmwB,YAAA,qGAEAe,IAAA,CACAlxB,KAAA,gDACAmwB,YAAA,6EAEAgB,IAAA,CACAnxB,KAAA,2BACAmwB,YAAA,4MAEAiB,IAAA,CACApxB,KAAA,gCACAmwB,YAAA,oHAEAkB,IAAA,CACArxB,KAAA,6BACAmwB,YAAA,kCAEAmB,IAAA,CACAtxB,KAAA,kCACAmwB,YAAA,wCAEAoB,IAAA,CACAvxB,KAAA,sBACAmwB,YAAA,4BAEAqB,IAAA,CACAxxB,KAAA,mBACAmwB,YAAA,wBAEAsB,IAAA,CACAzxB,KAAA,gCACAmwB,YAAA,uDAEAuB,IAAA,CACA1xB,KAAA,sCACAmwB,YAAA,2CAEAwB,IAAA,CACA3xB,KAAA,qCACAmwB,YAAA,8KAEAyB,IAAA,CACA5xB,KAAA,cACAmwB,YAAA,SAAAzD,GACA,OAAAA,IAGAmF,IAAA,CACA7xB,KAAA,qBACAmwB,YAAA,SAAAzD,GACA,OAAaoF,GAAAC,EAACrI,QAAAgD,EAAA,4BAGdsF,IAAA,CACAhyB,KAAA,oBACAmwB,YAAA,qDAEA8B,IAAA,CACAjyB,KAAA,wBACAmwB,YAAA,0BAEA+B,IAAA,CACAlyB,KAAA,+CACAmwB,YAAA,6SAEAgC,IAAA,CACAnyB,KAAA,qBACAmwB,YAAA,2DAEAiC,IAAA,CACApyB,KAAA,0BACAmwB,YAAA,iDAEAkC,IAAA,CACAryB,KAAA,8CACAmwB,YAAA,6FAEAmC,IAAA,CACAtyB,KAAA,wCACAmwB,YAAA,wJAEAoC,IAAA,CACAvyB,KAAA,8BACAmwB,YAAA,qDAEAqC,IAAA,CACAxyB,KAAA,+BACAmwB,YAAA,sDAEAsC,IAAA,CACAzyB,KAAA,gCACAmwB,YAAA,wDAEAuC,IAAA,CACA1yB,KAAA,mBACAmwB,YAAA,yCAEAwC,IAAA,CACA3yB,KAAA,uCACAmwB,YAAA,qFAEAyC,IAAA,CACA5yB,KAAA,oCACAmwB,YAAA,6CAEA0C,IAAA,CACA7yB,KAAA,uCACAmwB,YAAA,+GAEA2C,IAAA,CACA9yB,KAAA,sDACAmwB,YAAA,oJAEA4C,IAAA,CACA/yB,KAAA,2BACAmwB,YAAA,qEAEA6C,IAAA,CACAhzB,KAAA,kDACAmwB,YAAA,sIAEA8C,IAAA,CACAjzB,KAAA,4BACAmwB,YAAA,oEAEA+C,IAAA,CACAlzB,KAAA,+BACAmwB,YAAA,mDAEAgD,IAAA,CACAnzB,KAAA,+BACAmwB,YAAA,qCCzMAiD,GAAA,CACA7I,YAAe8I,GAAA,IACfC,MAASD,GAAA,IACTE,UAAaF,GAAA,IAAWG,cACxBC,kBAAqBJ,GAAA,IAAQG,eAEtBE,GAAA,CACPC,EAAKN,GAAA,IAAUG,cACfI,EAAKP,GAAA,IACLQ,EAAKR,GAAA,IACLS,EAAKT,GAAA,IACLU,EAAKV,GAAA,IACLW,KAAQX,GAAA,IAAUG,cAClBS,KAAQZ,GAAA,IAAUG,cAClBU,KAAQb,GAAA,IAAUG,cAClBW,KAAQd,GAAA,IAAUG,cAKlBY,MAASf,GAAA,IAAWG,cAKpBa,OAAUhB,GAAA,IAAWG,cAKrBc,YAAejB,GAAA,IAAWG,cAK1Be,YAAelB,GAAA,IAAWG,eAE1BgB,GAAA1mB,OAAA8F,OAAA,GAAyDwf,GAAA,CACzDqB,aAAgBpB,GAAA,IAASG,gBAEzBkB,GAAA,CACAC,kBAAqBtB,GAAA,IACrBuB,cAAiBvB,GAAA,IACjBwB,kBAAqBxB,GAAA,IACrByB,cAAiBzB,GAAA,IACjB0B,yBAA4B1B,GAAA,IAC5B2B,4BAA+B3B,GAAA,IAC/B4B,0BAA6B5B,GAAA,IAC7B6B,kCAAqC7B,GAAA,IACrC8B,qCAAwC9B,GAAA,IACxC/E,iBAAoB+E,GAAA,IACpBhF,kBAAqBgF,GAAA,IACrBjF,iBAAoBiF,GAAA,IACpB+B,QAAW/B,GAAA,IACX9E,MAAS8E,GAAA,KAEFgC,GAA0BhC,GAAA,EAAUD,ICtD3CkC,IDuD0CjC,GAAA,EAAUmB,IAC1BnB,GAAA,EAAUK,IACNL,GAAA,EAAUqB,ICzDxC,CACAjK,QAAW4I,GAAA,IAAUkC,WACrBC,QAAWnC,GAAA,IAAUkC,aAErBE,GAAA,CACAnC,MAASD,GAAA,IACTqC,OAAUrC,GAAA,IAAWG,eAErBmC,GAAA7nB,OAAA8F,OAAA,GAAwC0hB,GAAA,CACxCz0B,KAAQwyB,GAAA,IAASuC,MAAS1e,IAAeqe,WACzCjC,MAASD,GAAA,IAAUG,cACnBqC,cAAiBxC,GAAA,EAAU,CAC3ByC,OAAYzC,GAAA,MACTG,cACHuC,KAAQ1C,GAAA,IAASG,gBAEjBwC,GAAA,CACA9H,GAAMmF,GAAA,EAAWK,IAAkBF,cACnCyC,GAAM5C,GAAA,EAAWK,IAAkBF,cACnC0C,GAAM7C,GAAA,EAAWK,IAAkBF,cACnC2C,GAAM9C,GAAA,EAAWK,IAAkBF,cACnC4C,IAAO/C,GAAA,EAAWK,IAAkBF,eAEpC6C,GAAAvoB,OAAA8F,OAAA,GAAqD+hB,GAAA,CACrDW,QAAWjD,GAAA,EAAU2C,IAAAxC,cACrB+C,KAAQlD,GAAA,IAASG,cACjB7wB,QAAW0wB,GAAA,EAAU,CACrBmD,UAAenD,GAAA,IAAWG,gBACvBA,gBAEHiD,GAAA,CACAjB,QAAWnC,GAAA,IACXqD,OAAUrD,GAAA,IAASG,eAMZmD,IAJsBtD,GAAA,EAAUiC,IACTjC,GAAA,EAAUoC,IACfpC,GAAA,EAAUsC,IACHtC,GAAA,EAAU2C,IACJ3C,GAAA,EAAUgD,KACzCO,GAAuBvD,GAAA,EAAUoD,ICzCxCI,ICGoCxD,GAAA,IAASyD,GAAMzB,IACfhC,GAAA,EAAU,CAC9CpJ,OAAUoJ,GAAA,IAASyD,GAAMH,IACzBI,OAAU1D,GAAA,IAASyD,GAAMF,MDNzB,CACA52B,KAAQqzB,GAAA,IACRqD,OAAUrD,GAAA,IACV2D,SAAY3D,GAAA,MAMmBA,GAAA,EAAUwD,KNRzC,SAAArI,GACAA,IAAA,qBACAA,IAAA,2BACAA,IAAA,qBACAA,IAAA,qCACAA,IAAA,oCACAA,IAAA,oBANA,CAOCA,QAAA,KCPD,SAAAC,GACAA,EAAA,aACAA,EAAA,YACAA,EAAA,aACAA,EAAA,cACAA,EAAA,gBACAA,EAAA,cACAA,EAAA,iBACAA,EAAA,cACAA,EAAA,wBACAA,EAAA,aACAA,EAAA,aACAA,EAAA,YACAA,EAAA,WACAA,EAAA,cACAA,EAAA,aACAA,EAAA,UACAA,EAAA,YACAA,EAAA,cACAA,EAAA,eACAA,EAAA,WACAA,EAAA,cACAA,EAAA,mBACAA,EAAA,cACAA,EAAA,eACAA,EAAA,iBACAA,EAAA,cACAA,EAAA,aACAA,EAAA,cACAA,EAAA,YACAA,EAAA,kBACAA,EAAA,eACAA,EAAA,eACAA,EAAA,aACAA,EAAA,mBACAA,EAAA,iBACAA,EAAA,UACAA,EAAA,cACAA,EAAA,YACAA,EAAA,kBACAA,EAAA,iBACAA,EAAA,mBACAA,EAAA,iBACAA,EAAA,eACAA,EAAA,WACAA,EAAA,UACAA,EAAA,aACAA,EAAA,cACAA,EAAA,gBACAA,EAAA,kBACAA,EAAA,eACAA,EAAA,aAnDA,CAoDCA,QAAA,KAEM,IOxDAwI,GCSAC,GAQAC,GAUAC,GR6BAC,GAAA,CAAA5I,GAAA6I,QAAA7I,GAAA8I,OAAA9I,GAAA+I,QAAA/I,GAAAgJ,SAAAhJ,GAAAiJ,WAAAjJ,GAAAkJ,SAAAlJ,GAAAmJ,YAAAnJ,GAAAoJ,SAAApJ,GAAAqJ,mBAAArJ,GAAAsJ,QAAAtJ,GAAA3P,QAAA2P,GAAAuJ,OAAAvJ,GAAAwJ,MAAAxJ,GAAAyJ,SAAAzJ,GAAA0J,QAAA1J,GAAA2J,KAAA3J,GAAA4J,OAAA5J,GAAA6J,SAAA7J,GAAA8J,UAAA9J,GAAA+J,MAAA/J,GAAAgK,SAAAhK,GAAAiK,cAAAjK,GAAAkK,SAAAlK,GAAAmK,UAAAnK,GAAAoK,YAAApK,GAAAqK,SAAArK,GAAAsK,QAAAtK,GAAAuK,SAAAvK,GAAAwK,OAAAxK,GAAAyK,aAAAzK,GAAA0K,UAAA1K,GAAA2K,UAAA3K,GAAA4K,QAAA5K,GAAA6K,cAAA7K,GAAA8K,YAAA9K,GAAA+K,KAAA/K,GAAAgL,SAAAhL,GAAAiL,OAAAjL,GAAAkL,aAAAlL,GAAAmL,YAAAnL,GAAAoL,cAAApL,GAAAqL,YAAArL,GAAAsL,UAAAtL,GAAAuL,MAAAvL,GAAAwL,KAAAxL,GAAAyL,QAAAzL,GAAA0L,SAAA1L,GAAA2L,WAAA3L,GAAA4L,aAAA5L,GAAA6L,UAAA7L,GAAA8L,UOtDP,SAAAtD,GACAA,EAAA,sBACAA,EAAA,4BAFA,CAGCA,QAAA,KCMD,SAAAC,GACAA,IAAA,2BACAA,IAAA,yCACAA,IAAA,2DAHA,CAICA,QAAA,KAID,SAAAC,GACAA,IAAA,6CACAA,IAAA,mCACAA,IAAA,yBACAA,IAAA,mBACAA,IAAA,eALA,CAMCA,QAAA,KAID,SAAAC,GACAA,IAAA,uCACAA,IAAA,2DACAA,IAAA,2CACAA,IAAA,6BACAA,IAAA,yCACAA,IAAA,qCACAA,IAAA,qCACAA,IAAA,6CACAA,IAAA,2DACAA,IAAA,sEACAA,IAAA,wDACAA,IAAA,4BACAA,IAAA,kCACAA,IAAA,cAdA,CAeCA,QAAA,KC5CM,IAIAoD,IAEP,SAAAA,GACAA,IAAA,mBACAA,IAAA,uBACAA,IAAA,uBACAA,IAAA,yBACAA,IAAA,mBACAA,IAAA,6BACAA,IAAA,2BACAA,IAAA,iCACAA,IAAA,uBACAA,IAAA,wBACAA,IAAA,4BACAA,IAAA,4BACAA,IAAA,8BAEAA,IAAA,4BAfA,CAgBCA,QAAA,KCtBM,ICSgBC,GAAAC,GCTvBC,GAiBAC,GFjBOC,GAAA,CACPC,YAAA,cACA5Q,UAAA,YACA6Q,OAAA,0DCIAC,GAAA,gBAUIC,GAAsB,SAAAC,EAAA3E,EAAA4E,GAC1B,OAASrJ,GAAAC,EAACqJ,OAAA7E,EAAA,SAAA8E,EAAAC,EAAA7R,GAUV,OATAA,IAAA0R,GAA+BrJ,GAAAC,EAACwJ,SAAAP,GAAAvR,GAChC4R,EAAA5R,GAAA6R,EACexJ,GAAAC,EAACyJ,SAAAF,GAChBD,EAAA5R,GAAiB3b,OAAA2tB,GAAA,EAAA3tB,CAAe,GAAGqtB,EAAAG,GAGnCD,EAAA5R,GAAAyR,EAAAI,EAAAH,GAGAE,GACG,KAGHK,IAvBuBjB,GAuBMkB,GAvBNjB,GAuBoBkB,GAtB3C,CACAC,OAAYZ,GAqB8CY,GArBHj+B,EAAmBk+B,OAC1EF,OAAYX,GAAsBP,GAAqB98B,EAAmBm+B,OAC1EJ,MAAWV,GAAsBR,GAAoB78B,EAAmBo+B,QAoBjEC,GAAA,CAAwBt+B,EAAY+W,QAAU/W,EAAYu+B,QAAUv+B,EAAYw+B,SAChFC,GAAA,CACPV,MACArI,GAAAqI,GACAW,GAAAX,IAEWY,GAAkB,SAAAC,GAC7B,IAAAC,EAA2B1K,GAAAC,EAACqJ,OAAQtJ,GAAAC,EAAC0K,UAAW9+B,EAAY,SAAA++B,GAC5D,OAAAA,IACG,SAAArB,EAAAqB,EAAAC,GAEH,OADAtB,EAAAqB,GAAAC,EACAtB,GACG,IAEH,OACAuB,UAAe9K,GAAAC,EAAC8K,IAAAN,EAAA,SAAAjT,GAChB,OACAA,OACAtpB,KAAAw8B,EAAAlT,MAGA3mB,QAAA,CACAm6B,iBAAA,EACAC,qBAA4BC,GAAA,yBCtD5B,SAAArC,GACAA,IAAA,uEACAA,IAAA,mBACAA,IAAA,mBAEAA,IAAA,uCACAA,IAAA,yCACAA,IAAA,2CACAA,IAAA,iDACAA,IAAA,2CACAA,IAAA,yCACAA,IAAA,+CACAA,IAAA,gDAZA,CAaCA,QAAA,KAID,SAAAC,GACAA,IAAA,qBACAA,IAAA,+BACAA,IAAA,2CACAA,IAAA,yCACAA,IAAA,yBACAA,IAAA,yBANA,CAOCA,QAAA,KAGM,IC7BAqC,GAYAC,GAaAC,GAcAC,GDVAC,GAAA,CACPC,iCAAA,mDACAC,OAAA,oDACAC,OAAA,kDACAC,iBAAA,kEACAC,kBAAA,gBACAC,mBAAA,gCACAC,sBAAA,mCACAC,mBAAA,mCACAC,kBAAA,gCACAC,qBAAA,+BACAC,qBAAA,gEAEOC,GAAAnwB,OAAA8F,OAAA,GAA6CypB,GAAA,CACpDa,QAAA,IACAC,aAAA,UACAC,mBAAA,WACAC,kBAAA,GACAC,UAAA,oBACAC,UAAA,eC9CA,SAAAtB,GACAA,EAAA,sBACAA,EAAA,cACAA,EAAA,YACAA,EAAA,gBACAA,EAAA,gBACAA,EAAA,UACAA,EAAA,kBAPA,CAQCA,QAAA,KAID,SAAAC,GACAA,EAAA,wCACAA,EAAA,sDACAA,EAAA,wCACAA,EAAA,wCACAA,EAAA,wCACAA,EAAA,wCACAA,EAAA,8CACAA,EAAA,sCARA,CASCA,QAAA,KAID,SAAAC,GACAA,EAAA,uBACAA,EAAA,mDACAA,EAAA,sCACAA,EAAA,6CACAA,EAAA,wCACAA,EAAA,6BACAA,EAAA,0CACAA,EAAA,wCACAA,EAAA,iEATA,CAUCA,QAAA,KAID,SAAAC,GACAA,IAAA,uCACAA,IAAA,6CACAA,IAAA,iDAHA,CAICA,QAAA,KCpCM,IAAAoB,GAAA,SAAAC,GACP,wBAAAA,EAAA,WAAAA,EAAA,WAAAA,EAAAC,KAAAC,MAEOC,GAAA,SAAAH,GACP,WAAAD,GAAAC,IAKO,SAAAI,GAAAC,EAAAC,GACP,OAAMjN,GAAAC,EAACiN,MAAAD,KAIP,kBAAAA,GACWjN,GAAAC,EAACwJ,SAAAuD,EAAAjC,IAAA,SAAAoC,GACZ,OAAanN,GAAAC,EAACmN,QAAAD,EAAAP,KAAAC,QACN7M,GAAAC,EAACmN,QAAAH,KAKF,IAAII,GAAwB,WACnC,OAASrN,GAAAC,EAACroB,OAAQooB,GAAAC,EAACqN,OAAQtN,GAAAC,EAACsN,OAAQ1lB,GAAY,SAAA2lB,GAChD,OAAWxN,GAAAC,EAACwJ,SAAUtQ,GAAiBqU,KACpC,SAAAA,GACH,OAAWxN,GAAAC,EAACwN,QAAStU,GAAiBqU,KACnC,OACDxN,GAAAC,EAACsN,OAAQ1lB,GAAY,SAAA2lB,GACvB,OAAYxN,GAAAC,EAACwJ,SAAUtQ,GAAiBqU,OAGjC,SAAAE,GAAAf,GACP,GAAM3M,GAAAC,EAACiN,MAAAP,GACP,SAGA,IAAAz+B,EAAa8xB,GAAAC,EAAC0N,IAAAhB,EAAA,YAAAzgC,GAEdmyB,EAAoB2B,GAAAC,EAAC0N,IAAAhB,EAAA,mBAAAzgC,GAGrB,wBAAAgC,IADA,kBAAAmwB,GAAA,oBAAAA,GClDAuP,EAAAC,EAAAC,EAAA,uBAAA/hC,IAAA6hC,EAAAC,EAAAC,EAAA,uBAAAliC,IAAAgiC,EAAAC,EAAAC,EAAA,uBAAAjwB,KAAA+vB,EAAAC,EAAAC,EAAA,sBAAAvvB,KAAAqvB,EAAAC,EAAAC,EAAA,sBAAAtvB,KAAAovB,EAAAC,EAAAC,EAAA,uBAAArvB,KAAAmvB,EAAAC,EAAAC,EAAA,uBAAAnvB,KAAAivB,EAAAC,EAAAC,EAAA,sBAAA5uB,KAAA0uB,EAAAC,EAAAC,EAAA,sBAAA3uB,KAAAyuB,EAAAC,EAAAC,EAAA,sBAAApuB,KAAAkuB,EAAAC,EAAAC,EAAA,uBAAAtuB,KAAAouB,EAAAC,EAAAC,EAAA,sBAAA3tB,KAAAytB,EAAAC,EAAAC,EAAA,uBAAA5tB,KAAA0tB,EAAAC,EAAAC,EAAA,sBAAAvtB,KAAAqtB,EAAAC,EAAAC,EAAA,uBAAAxtB,KAAAstB,EAAAC,EAAAC,EAAA,sBAAAzsB,KAAAusB,EAAAC,EAAAC,EAAA,uBAAAprB,KAAAkrB,EAAAC,EAAAC,EAAA,sBAAAjoB,KAAA+nB,EAAAC,EAAAC,EAAA,sBAAAlnB,KAAAgnB,EAAAC,EAAAC,EAAA,sBAAAxoB,KAAAsoB,EAAAC,EAAAC,EAAA,sBAAAvoB,KAAAqoB,EAAAC,EAAAC,EAAA,uBAAAtoB,KAAAooB,EAAAC,EAAAC,EAAA,sBAAAroB,KAAAmoB,EAAAC,EAAAC,EAAA,uBAAApoB,KAAAkoB,EAAAC,EAAAC,EAAA,uBAAAnoB,KAAAioB,EAAAC,EAAAC,EAAA,uBAAAloB,KAAAgoB,EAAAC,EAAAC,EAAA,uBAAA7mB,KAAA2mB,EAAAC,EAAAC,EAAA,uBAAA5mB,KAAA0mB,EAAAC,EAAAC,EAAA,uBAAA3mB,KAAAymB,EAAAC,EAAAC,EAAA,sBAAAvmB,KAAAqmB,EAAAC,EAAAC,EAAA,sBAAA1mB,KAAAwmB,EAAAC,EAAAC,EAAA,uBAAAzmB,KAAAumB,EAAAC,EAAAC,EAAA,sBAAArmB,KAAAmmB,EAAAC,EAAAC,EAAA,sBAAAhW,KAAA8V,EAAAC,EAAAC,EAAA,uBAAA/V,KAAA6V,EAAAC,EAAAC,EAAA,uBAAA7V,KAAA2V,EAAAC,EAAAC,EAAA,uBAAAtV,KAAAoV,EAAAC,EAAAC,EAAA,uBAAApV,KAAAkV,EAAAC,EAAAC,EAAA,uBAAAlV,KAAAgV,EAAAC,EAAAC,EAAA,uBAAAjV,KAAA+U,EAAAC,EAAAC,EAAA,uBAAAhV,KAAA8U,EAAAC,EAAAC,EAAA,uBAAA/U,KAAA6U,EAAAC,EAAAC,EAAA,uBAAA9U,KAAA4U,EAAAC,EAAAC,EAAA,uBAAA7U,KAAA2U,EAAAC,EAAAC,EAAA,sBxBsCO,cwBtCPF,EAAAC,EAAAC,EAAA,sBxBuCO,mBwBvCPF,EAAAC,EAAAC,EAAA,uBAAA5U,KAAA0U,EAAAC,EAAAC,EAAA,sBxB8CO,qBwB9CPF,EAAAC,EAAAC,EAAA,uBAAAtmB,KAAAomB,EAAAC,EAAAC,EAAA,uBAAAvW,KAAAqW,EAAAC,EAAAC,EAAA,uBAAAlmB,KAAAgmB,EAAAC,EAAAC,EAAA,uBAAAzU,KAAAuU,EAAAC,EAAAC,EAAA,sBAAAptB,KAAAktB,EAAAC,EAAAC,EAAA,uBAAAntB,KAAAitB,EAAAC,EAAAC,EAAA,uBAAAltB,KAAAgtB,EAAAC,EAAAC,EAAA,uBAAAjtB,KAAA+sB,EAAAC,EAAAC,EAAA,uBAAAhtB,KAAA8sB,EAAAC,EAAAC,EAAA,uBAAA/sB,KAAA6sB,EAAAC,EAAAC,EAAA,uBAAA9sB,KAAA4sB,EAAAC,EAAAC,EAAA,uBAAA7sB,KAAA2sB,EAAAC,EAAAC,EAAA,uBAAA5sB,KAAA0sB,EAAAC,EAAAC,EAAA,uBAAA3sB,KAAAysB,EAAAC,EAAAC,EAAA,sBAAA1sB,KAAAwsB,EAAAC,EAAAC,EAAA,sBAAA7oB,KAAA2oB,EAAAC,EAAAC,EAAA,sBAAA5oB,KAAA0oB,EAAAC,EAAAC,EAAA,sBAAA3oB,KAAAyoB,EAAAC,EAAAC,EAAA,sBAAApT,KAAAkT,EAAAC,EAAAC,EAAA,sBAAAjT,KAAA+S,EAAAC,EAAAC,EAAA,uBAAAxT,KAAAsT,EAAAC,EAAAC,EAAA,uBAAAvT,KAAAqT,EAAAC,EAAAC,EAAA,sBAAA/S,KAAA6S,EAAAC,EAAAC,EAAA,sBAAAvS,KAAAqS,EAAAC,EAAAC,EAAA,uBAAAjiC,IAAA+hC,EAAAC,EAAAC,EAAA,uBAAAhiC,IAAA8hC,EAAAC,EAAAC,EAAA,uBAAAjS,KAAA+R,EAAAC,EAAAC,EAAA,uBAAA5R,KAAA0R,EAAAC,EAAAC,EAAA,uBAAA9R,KAAA4R,EAAAC,EAAAC,EAAA,uBAAA7R,KAAA2R,EAAAC,EAAAC,EAAA,uBAAAlR,KAAAgR,EAAAC,EAAAC,EAAA,uBAAA9P,KAAA4P,EAAAC,EAAAC,EAAA,uBbEO,IaFPF,EAAAC,EAAAC,EAAA,sBbGO,MaHPF,EAAAC,EAAAC,EAAA,sBbIO,MaJPF,EAAAC,EAAAC,EAAA,sBbKO,MaLPF,EAAAC,EAAAC,EAAA,uBbMO,MaNPF,EAAAC,EAAAC,EAAA,uBbOO,MaPPF,EAAAC,EAAAC,EAAA,uBbQO,KaRPF,EAAAC,EAAAC,EAAA,uBAAA3P,KAAAyP,EAAAC,EAAAC,EAAA,uBAAApR,KAAAkR,EAAAC,EAAAC,EAAA,sBAAAvI,KAAAqI,EAAAC,EAAAC,EAAA,uBAAA3I,KAAAyI,EAAAC,EAAAC,EAAA,uBAAA1I,KAAAwI,EAAAC,EAAAC,EAAA,uBAAAzI,KAAAuI,EAAAC,EAAAC,EAAA,uBAAAxI,KAAAsI,EAAAC,EAAAC,EAAA,uBNAO,KMAPF,EAAAC,EAAAC,EAAA,uBNCO,KMDPF,EAAAC,EAAAC,EAAA,uBNEO,KMFPF,EAAAC,EAAAC,EAAA,uBAAA/E,KAAA6E,EAAAC,EAAAC,EAAA,sBAAA3D,KAAAyD,EAAAC,EAAAC,EAAA,uBAAAxD,KAAAsD,EAAAC,EAAAC,EAAA,uBAAAtD,KAAAoD,EAAAC,EAAAC,EAAA,uBAAAvC,KAAAqC,EAAAC,EAAAC,EAAA,uBAAA3B,KAAAyB,EAAAC,EAAAC,EAAA,uBAAA3C,KAAAyC,EAAAC,EAAAC,EAAA,uBAAA1C,KAAAwC,EAAAC,EAAAC,EAAA,uBAAAxC,KAAAsC,EAAAC,EAAAC,EAAA,uBAAApB,KAAAkB,EAAAC,EAAAC,EAAA,uBAAAhB,KAAAc,EAAAC,EAAAC,EAAA,uBAAAf,KAAAa,EAAAC,EAAAC,EAAA,uBAAAT,KAAAO,EAAAC,EAAAC,EAAA,uBAAAJ,KAAAE,EAAAC,EAAAC,EAAA,uBAAAngC,IAAAigC,EAAAC,EAAAC,EAAA,uBAAAlgC,IAAAggC,EAAAC,EAAAC,EAAA,uBAAAj7B,IAAA+6B,EAAAC,EAAAC,EAAA,sBAAAtgC,IAAAogC,EAAAC,EAAAC,EAAA,uBAAAn2B,IAAAi2B,EAAAC,EAAAC,EAAA,uBAAA/2B,IAAA62B,EAAAC,EAAAC,EAAA,uBAAA92B,IAAA42B,EAAAC,EAAAC,EAAA,uBAAA32B,IAAAy2B,EAAAC,EAAAC,EAAA,uBAAA12B,IAAAw2B,EAAAC,EAAAC,EAAA,uBAAAv2B,IAAAq2B,EAAAC,EAAAC,EAAA,sBAAAh2B,IAAA81B,EAAAC,EAAAC,EAAA,sBAAA11B,IAAAw1B,EAAAC,EAAAC,EAAA,sBAAAx1B,IAAAs1B,EAAAC,EAAAC,EAAA,sBAAAl1B,IAAAg1B,EAAAC,EAAAC,EAAA,sBAAA90B,IAAA40B,EAAAC,EAAAC,EAAA,sBAAAx0B,IAAAs0B,EAAAC,EAAAC,EAAA,sBAAAp0B,IAAAk0B,EAAAC,EAAAC,EAAA,sBAAAh0B,IAAA8zB,EAAAC,EAAAC,EAAA,sBAAA1zB,IAAAwzB,EAAAC,EAAAC,EAAA,sBAAArzB,IAAAmzB,EAAAC,EAAAC,EAAA,uBAAAj2B,IAAA+1B,EAAAC,EAAAC,EAAA,sBAAA/yB,IAAA6yB,EAAAC,EAAAC,EAAA,sBAAAhzB,IAAA8yB,EAAAC,EAAAC,EAAA,sBAAAxyB,IAAAsyB,EAAAC,EAAAC,EAAA,uBAAAryB,IAAAmyB,EAAAC,EAAAC,EAAA,sBAAAhyB,IAAA8xB,EAAAC,EAAAC,EAAA,uBAAA7xB,IAAA2xB,EAAAC,EAAAC,EAAA,sBAAAvxB,IAAAqxB,EAAAC,EAAAC,EAAA,uBAAAxxB,IAAAsxB,EAAAC,EAAAC,EAAA,sBAAA/wB,IAAA6wB,EAAAC,EAAAC,EAAA,uBAAAjxB,IAAA+wB,EAAAC,EAAAC,EAAA,uBAAAhxB,IAAA8wB,EAAAC,EAAAC,EAAA,sBAAA1wB,KAAAwwB,EAAAC,EAAAC,EAAA,uBAAAvwB,KAAAqwB,EAAAC,EAAAC,EAAA,uBAAA3wB,KAAAywB,EAAAC,EAAAC,EAAA,uBAAAnwB,KAAAiwB,EAAAC,EAAAC,EAAA,sBAAAtwB,KAAAowB,EAAAC,EAAAC,EAAA,sBAAA7vB,KAAA2vB,EAAAC,EAAAC,EAAA,sBAAA1vB,oLC4Ba2vB,EAAwD,SAAAC,GAK/D,IAJFpJ,EAIEoJ,EAJFpJ,OAIEqJ,EAAAD,EAHFE,mBAGE,IAAAD,EAHY,kBAGZA,EAAAE,EAAAH,EAFFI,4BAEE,IAAAD,KADFE,EACEL,EADFK,MAEMC,EAASC,cACTC,EAAc5J,EAASA,EAAOA,OAAS,GACvC6J,EAAkBC,cAClBpW,EAAWqW,cACXC,EAAcC,YAASL,GACvBM,EAAoBC,kBAAQ,WAC9B,OAAOnK,EAASoK,YAAepK,GAAQ,QAAQ14B,GAChD,CAAC04B,IACEqK,EAAOF,kBAAQ,WACjB,MAAO,CAAErK,UAAW2J,IACrB,CAACA,IAMEa,EAAc,CAChBC,WAAc,SACdC,YAAe,OACfC,UAAa,SACbC,YAAe,cACfC,YAAe,MACfC,aAAgB,MAChBC,YAAe,QACfC,QAAW,UA8Bf,OACIC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACKvX,EAAS0K,eAAiB1K,EAAS0K,cAAc8M,OAAS,EAAIH,EAAA1P,EAAA2P,cAAA,OAAKG,MAAO,CAAEtT,MAAS,QAClFkT,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAMC,UA7CA,CACdC,gBAAmB,qBA6CPP,EAAA1P,EAAA2P,cAAA,WACID,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACIG,QAnBR,aAoBQlB,KAAMA,EACNmB,cAAe,EACf9B,OAAQ,SAAC3B,EAAe0D,GAEpB,OAAO/B,EAAO3B,EAAO0D,IAEzBC,OA3BT,aA4BS3D,MAAOmC,EACPyB,SAtCP,SAAC/G,GACVA,GAAOA,EAAI/E,MAAQ+E,EAAI/E,KAAKG,QAAU4E,EAAI/E,KAAK11B,MAC/C0/B,EAAgB+B,eAAhBx0B,OAAAy0B,EAAA,EAAAz0B,CAAA,GACOsc,EADP,CAEI0K,cAAe0N,MAAMC,KAAK,IAAIC,IAAJ,GAAAh5B,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAYsc,EAAS0K,eAArB,CAAoCwG,EAAI/E,KAAKG,eAmC3DwJ,qBAAsBA,EACtBF,YAAaA,GAA4B,GACzC4C,gBAAiB,IACjBlM,OAAQ4J,EACRuC,UAAW,GACXC,aAAa,2BAGpBpM,GAAUgK,GACPe,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,2BACXtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UAAStB,EAAA1P,EAAA2P,cAAA,cAAShL,EAAOA,SACxC+K,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,cAAczP,MAAOoD,EAAO12B,MAAO02B,EAAO12B,SAIhEyhC,EAAA1P,EAAA2P,cAAA,OAAKG,MAAO,CAAEmB,eAAgB,cAA9B,sCACTvB,EAAA1P,EAAA2P,cAAA,OAAKG,MAAO,CAAEV,UAAa,WAAa/W,GAAYA,EAAS0K,eAAiB1K,EAAS0K,cAAc8M,OAAS,kBAAoB,IAClIH,EAAA1P,EAAA2P,cAAA,QAAMG,MA5DY,CACtBoB,QAAW,SA4DF7Y,GAAYA,EAAS0K,cAClB1K,EAAS0K,cAAc+H,IAAI,SAACnG,EAAgB3G,GAAjB,OAC1B0R,EAAA1P,EAAA2P,cAAA,UAAQ1hC,KAAM02B,EAAQ71B,KAAK,SAASkiC,UAAU,eAAelB,MAAOb,EAAavX,IAAKsG,EAAOmT,QAAS,kBA7CjF,SAACC,GACnC,GAAI/Y,GAAYA,EAAS0K,eAAiBqO,EAA1C,CACI,IAAMC,EAAUhZ,EAAS0K,cAAcuK,OAAO,SAAC3I,GAAD,OAAoByM,IAAYzM,IAC9E6J,EAAgB+B,eAAhBx0B,OAAAy0B,EAAA,EAAAz0B,CAAA,GACOsc,EADP,CAEI0K,cAAesO,MAwCkGC,CAAoB3M,KAAUA,KAC7H+K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,yCCjF3B,IAAM2B,EAA4C,SAAAxD,GAAmD,IAatGyD,EAbsDvjC,EAAgD8/B,EAAhD9/B,KAAMy+B,EAA0CqB,EAA1CrB,MAAOrU,EAAmC0V,EAAnC1V,SAAUoZ,EAAyB1D,EAAzB0D,mBAAyBC,EACxEC,cAA1BC,EADkGF,EAClGE,cAEFC,EAHoGH,EACnF5H,OAGNgI,GAAezZ,EAAxBvpB,KAJkGiN,OAAAg2B,EAAA,EAAAh2B,CAI1Esc,EAJ0E,WAKpG2Z,EAAiBC,IAAEvE,IAAIrV,EAAU,kBAAkB,GAEnDznB,EAAgDqhC,IAAEvE,IAAIrV,EAAU,eAAWpsB,GAC3EimC,EAAWC,sBAAY,SAACC,EAA+C1F,GAE3EkF,EAAc3jC,EADI+jC,GAAkBtF,EAAQA,IAE3C,IAYD8E,EAPCnZ,EAASga,gBAAoC,sBAAlBha,EAASpqB,MACnB,uBAAlBoqB,EAASpqB,MACS,eAAlBoqB,EAASpqB,MACS,gBAAlBoqB,EAASpqB,MACS,oCAAlBoqB,EAASpqB,MACS,qCAAlBoqB,EAASpqB,KAEDoqB,EAASga,eAETha,EAASmZ,MAGnB,IAqHMc,EArHgD,iDAelDja,EAASpqB,MACT4jC,GACAA,EAAa5Z,OACb4Z,EAAa5Z,MAAMsa,uCAlB+B,+CACd,mCAuBpCla,EAASpqB,MACT4jC,GACAA,EAAa5Z,OACb4Z,EAAa5Z,MAAMua,yBA1BiB,iCACe,kDA+BnDna,EAASpqB,MACT4jC,GACAA,EAAaY,QACbZ,EAAaY,OAAOF,uCAlC+B,gDACd,oCAuCrCla,EAASpqB,MACT4jC,GACAA,EAAaY,QACbZ,EAAaY,OAAOD,yBA1CiB,kCACJ,8BA+CjCna,EAASpqB,MACT4jC,GACAA,EAAa3O,0BAjDoB,4BACO,sCAsDxC7K,EAASpqB,MACT4jC,GACAA,EAAa1O,kCAxD2B,oCACG,yCA6D3C9K,EAASpqB,MACT4jC,GACAA,EAAazO,qCA/D8B,uCAClB,uBAoEzB/K,EAASpqB,MACT4jC,GACAA,EAAaa,mBAtEY,qBACF,qBA2EvBra,EAASpqB,MACT4jC,GACAA,EAAatV,iBA7EU,mBACC,sBAkFxBlE,EAASpqB,MACT4jC,GACAA,EAAavV,kBApFW,oBACD,qBAyFvBjE,EAASpqB,MACT4jC,GACAA,EAAaxV,iBA3FU,mBACX,UAgGZhE,EAASpqB,MACT4jC,GACAA,EAAarV,MAlGD,QAuGP,GAKT,OACEkT,EAAA1P,EAAA2P,cAACgD,EAAA,EAAD,CAAO1kC,KAAMA,GACV,SAAA2kC,GAA0BA,EAAvBC,KAAuB,IACrBC,EAAK/2B,OAAAy0B,EAAA,EAAAz0B,CAAA,GACJ+1B,EADI,CAEPN,MAAOA,GAASS,IAAEc,UAAU9kC,GAC5B+kC,SAAUd,IAGZ,OACExC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGh/B,GACC8+B,EAAA1P,EAAA2P,cAACI,EAAA,GAADh0B,OAAA8F,OAAA,CACEjR,QAASqhC,IAAEgB,MAAMriC,EAAS,SAAAsiC,GAAC,OAAIjB,IAAEkB,SAASD,KAAMtiC,EAAUqhC,IAAEnH,IAAIl6B,EAAS,SAAAsiC,GAAC,MAAK,CAAExG,MAAOwG,KACxFE,mBAAoB3B,EAAqB,mBAAgBxlC,EACzDygC,MAAOA,GACHoG,IAGW,YAAlBza,EAASvpB,MAAsB4gC,EAAA1P,EAAA2P,cAACI,EAAA,EAADh0B,OAAA8F,OAAA,CAAe/S,KAAK,WAAWukC,UAAW3G,GAAWoG,IAClE,WAAlBza,EAASvpB,MAAqB4gC,EAAA1P,EAAA2P,cAACI,EAAA,EAADh0B,OAAA8F,OAAA,CAAewxB,UAAW3G,GAAWoG,IACjD,WAAlBza,EAASvpB,OAAsBupB,EAASznB,SAAW8+B,EAAA1P,EAAA2P,cAACI,EAAA,GAADh0B,OAAA8F,OAAA,CAAc6qB,MAAOA,GAAWoG,IACjE,WAAlBza,EAASvpB,OAAsBupB,EAASznB,SACvC8+B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,GAADh0B,OAAA8F,OAAA,CAAc6qB,MAAOA,GAAWoG,EAAhC,CAAuChkC,KAAMupB,EAASvpB,KAAM4rB,MAAO4X,KA/I3B,iDAiJtCja,EAASpqB,MACT4jC,GACAA,EAAa5Z,OACb4Z,EAAa5Z,MAAMsa,wCACnB7C,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,SACba,EAAa5Z,MAAMsa,wCApJiB,kDAwJvCla,EAASpqB,MACT4jC,GACAA,EAAaY,QACbZ,EAAaY,OAAOF,wCACpB7C,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,SACba,EAAaY,OAAOF,wCA9JC,mCAkKxBla,EAASpqB,MACT4jC,GACAA,EAAa5Z,OACb4Z,EAAa5Z,MAAMua,0BACnB9C,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,SACba,EAAa5Z,MAAMua,0BArKG,oCAyKzBna,EAASpqB,MACT4jC,GACAA,EAAaY,QACbZ,EAAaY,OAAOD,0BACpB9C,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,SACba,EAAaY,OAAOD,0BA7KF,8BAiLrBna,EAASpqB,MACT4jC,GACAA,EAAa3O,2BACbwM,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACZa,EAAa3O,2BApLY,sCAwL5B7K,EAASpqB,MACT4jC,GACAA,EAAa1O,mCACbuM,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACZa,EAAa1O,mCA3Le,yCA+L/B9K,EAASpqB,MACT4jC,GACAA,EAAazO,sCACbsM,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACZa,EAAazO,sCAlMH,uBAsMb/K,EAASpqB,MACT4jC,GACAA,EAAaa,oBACbhD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,SACba,EAAaa,oBAzML,qBA6MXra,EAASpqB,MACT4jC,GACAA,EAAatV,kBACbmT,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACZa,EAAatV,kBAhNJ,sBAoNZlE,EAASpqB,MACT4jC,GACAA,EAAavV,mBACboT,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACZa,EAAavV,mBAvNL,qBA2NXjE,EAASpqB,MACT4jC,GACAA,EAAaxV,kBACbqT,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACZa,EAAaxV,kBA9NhB,UAkOAhE,EAASpqB,MACT4jC,GACAA,EAAarV,OACbkT,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACZa,EAAarV,QAKH,iBAAlBnE,EAASvpB,MAA2B4gC,EAAA1P,EAAA2P,cAAC2D,EAA0BR,qGC/SxES,YAAkC,CACpCC,QAZwC,qCAaxCC,QAZwC,qCAaxCC,MAZsC,oCASpCH,sBAMSI,EAAyB,CACpCC,oCACAC,oCACAC,kCACAC,uBAAwBC,+BAjBY,iCAiBZA,GACxBC,sBAAuBD,+BAjBY,gCAiBZA,kKCbZE,EAAYn4B,OAAAy0B,EAAA,EAAAz0B,CAAA,GACpBo4B,IACAC,IACAC,IACAC,IACAC,IACAC,IACAC,wzBCoCE,MAKgDC,YAAgB,CACrE,gCACA,gCACA,+BAHqDA,sBAM1CC,EAAgB,CAC3BC,oBACAC,oBACAC,mBAGWC,EAAmB,CAC9BC,gBAAiBhB,+BAAqB,wBAArBA,IAiCNiB,EAAOl5B,OAAAy0B,EAAA,EAAAz0B,CAAA,GACfm5B,IADe,CAElBC,QAASnB,+BAAoB,mBAApBA,GACToB,6BAA8BpB,+BATW,uCASXA,GAC9BqB,aAAcrB,+BAvDa,gBAuDbA,GACdsB,aAActB,+BAtDa,gBAsDbA,GACduB,aAAcvB,+BAAqB,yBAArBA,GAEdwB,gBAAiBxB,+BAnBqB,4BAmBrBA,GACjByB,gBAAiBzB,+BAnBqB,4BAmBrBA,GAEjB0B,iBAAkB1B,+BAAqB,2BAArBA,GAClB2B,sBAAuB3B,+BAAqB,sCAArBA,GAKvB4B,YAAa5B,+BA1BqB,gCA0BrBA,GACb6B,eAAgB7B,+BA1Ba,2BA0BbA,GAEhB8B,UAAW9B,+BA3Ba,sBA2BbA,GAEX+B,8BAA+B/B,+BApDO,oCAoDPA,GAC/BgC,uBAAwBhC,+BArDc,oCAqDdA,GACxBiC,cAAejC,+BArDqB,kCAqDrBA,GACfkC,uBAAwBlC,+BArDc,oCAqDdA,GAIxBmC,6BAA8BnC,+BAlCe,2CAkCfA,GAC9BoC,2BAA4BpC,+BAlCe,yCAkCfA,GAC5BqC,6BAA8BrC,+BAlCe,2CAkCfA,GAM9BsC,6BAA8BtC,+BAhEe,2CAgEfA,GAG9BuC,2BAA4BvC,+BAlEe,yCAkEfA,GAG5BwC,6BAA8BxC,+BApEe,2CAoEfA,GAK9ByC,0BAA2BzC,+BAxEe,wCAwEfA,GAI3B0C,wBAAyB1C,+BA3Ee,sCA2EfA,GAIzB2C,0BAA2B3C,+BA9Ee,wCA8EfA,GAM3B4C,wBAAyB5C,+BAnFc,qCAmFdA,GACzB6C,sBAAuB7C,+BAnFc,mCAmFdA,GACvB8C,wBAAyB9C,+BAnFc,qCAmFdA,GAKzB+C,sBAAuB/C,+BAvFc,2BAuFdA,GACvBgD,sBAAuBhD,+BAvFc,2BAuFdA,GAEvBiD,kBAAmBjD,+BAxFc,uBAwFdA,GACnBkD,kBAAmBlD,+BAxFc,uBAwFdA,GAEnBmD,qBAAsBnD,+BAzFc,kCAyFdA,GAetBoD,qBAAsBpD,+BAtGc,kCAsGdA,GAYtBqD,yBAA0BrD,+BAnHe,+BAmHfA,GAI1BsD,0BAA2BtD,+BAAqB,2BAArBA,GAI3BuD,yBAA0BvD,+BAAqB,gCAArBA,KAOfwD,EAAe,CAC1BC,UAAWzD,+BAFa,aAEbA,IAIA0D,EAAqB,qBAIrBC,EAAiB,CAC5Bzf,OAAQ8b,+BANoB,iBAMpBA,GACR5b,WAAY4b,+BAAqB0D,EAArB1D,GACZ4D,mBAAoB5D,+BANqB,8BAMrBA,GACpBzP,QAASyP,+BANoB,kBAMpBA,GACT6D,UAAW7D,+BANoB,oBAMpBA,IAGA8D,EAAgB,gBAEhBC,EAAmB,mBAC1BC,EAA4B,CAChCC,aAAcjE,+BAAqB8D,EAArB9D,GAIdkE,kBAAmBlE,+BAPc,sBAOdA,GACnBmE,gBAAiBnE,+BAAqB+D,EAArB/D,IASNoE,EAAgBr8B,OAAAy0B,EAAA,EAAAz0B,CAAA,GACxBi8B,EADwB,CAE3BK,kBAAmBrE,+BALa,qBAKbA,GACnBsE,kBAAmBtE,+BALa,qBAKbA,GACnBuE,aAAcvE,+BALa,gBAKbA,KAoBHwE,EAAe,CAC1BC,cAAezE,+BAhBM,wBAgBNA,GACf0E,cAAe1E,+BAhBM,wBAgBNA,GACf2E,SAAU3E,+BAAqB,mBAArBA,GACV4E,SAAU5E,+BAjBM,mBAiBNA,GACV6E,iBAAkB7E,+BAjBM,6BAiBNA,GASlB8E,YAAa9E,+BAzBM,sBAyBNA,GAIb+E,YAAa/E,+BA5BM,sBA4BNA,GACbgF,UAAWhF,+BA5BM,oBA4BNA,GACXiF,gBAAiBjF,+BA5BM,0BA4BNA,GAKjBkF,eAAgBlF,+BAhCM,yBAgCNA,GAChBmF,uBAAwBnF,+BAhCO,kCAgCPA,GACxBoF,qBAAsBpF,+BAhCa,sCAgCbA,GACtBqF,qBAAsBrF,+BAhCa,gCAgCbA,GACtBsF,UAAWtF,+BAhCO,qBAgCPA,GACXuF,YAAavF,+BAhCM,sBAgCNA,GACbwF,eAAgBxF,+BAhCK,wBAgCLA,IAULyF,EAA0B,CACrCC,kBAAmB1F,+BAJuB,iCAIvBA,IAMR2F,EAAiB59B,OAAAy0B,EAAA,EAAAz0B,CAAA,GACzB09B,EADyB,CAE5BG,YAAa5F,+BAbkB,sBAalBA,GACb6F,eAAgB7F,+BAZkB,yBAYlBA,GAChB8F,qBAAsB9F,+BAZuB,oCAYvBA,KASX+F,EAAc,CACzBC,aAAchG,+BAHa,sBAGbA,GACdiG,cAAejG,+BAHa,uBAGbA,IAeJkG,EAAc,CACzBC,UAAWnG,+BAPa,mBAObA,GACXoG,aAAcpG,+BAPa,sBAObA,GACdqG,SAAUrG,+BAXa,kBAWbA,GACVsG,YAAatG,+BAXa,qBAWbA,GACbuG,aAAcvG,+BATkB,sBASlBA,GAIdwG,WAAYxG,+BAZa,eAYbA,GACZyG,YAAazG,+BAZa,gBAYbA,GACb0G,UAAW1G,+BAZiB,kBAYjBA,IAOA2G,EAA0B3G,+BAJJ,wCAIIA,GAC1B4G,EAAsB5G,+BAHJ,wBAGIA,GACtB6G,EAAe7G,+BAAqB,sBAArBA,GACf8G,EAA0B,CACrCH,0BACAI,mBAAoB/G,+BARa,wCAQbA,GACpBgH,eAAgBJ,EAChBC,eACAI,eAAgBjH,+BATa,wBASbA,IAaLkH,EAAmBC,IACnBC,EAAWr/B,OAAAy0B,EAAA,EAAAz0B,CAAA,GACnBm/B,EADmB,CAEtBG,iBAAkBrH,+BANa,0BAMbA,GAIlBsH,kBAAmBtH,+BARa,2BAQbA,GACnBuH,iBAAkBvH,+BAVa,0BAUbA,KAWPwH,EAAsB,CACjCC,IAAKzH,+BAHyB,iCAGzBA,GACL0H,KAAM1H,+BAPyB,kCAOzBA,GACN2H,KAAM3H,+BAPyB,kCAOzBA,GACN4H,KAAM5H,+BAPyB,kCAOzBA,IAOK6H,EAAkB,CAC7BC,YAAa9H,+BALa,iBAKbA,GACb+H,OAAQ/H,+BALqB,oBAKrBA,GACRgI,QAAShI,+BALsB,qBAKtBA,GACTiI,QAASjI,+BALsB,qBAKtBA,IAMEkI,EAAgB,CAC3BC,wBAAyBnI,+BAJe,qCAIfA,GAIzBoI,WAAYpI,+BAPa,sBAObA,GACZqI,cAAerI,+BAPc,0BAOdA,IASJsI,GAAqB,CAChCC,eAAgBvI,+BAFa,+BAEbA,GAMhBwI,wBAAyBxI,+BATS,oCASTA,GAMzByI,yBAA0BzI,+BAnBc,0CAmBdA,GAC1B0I,yBAA0B1I,+BAnBc,0CAmBdA,GAK1B2I,mBAAoB3I,+BAvBc,oCAuBdA,GAMpB4I,mBAAoB5I,+BA5Bc,oCA4BdA,IAcT6I,GAAiB,CAC5BC,QAAS9I,+BALoB,mBAKpBA,GACTtZ,MAAOsZ,+BALoB,yBAKpBA,GACP+I,WAAY/I,+BAL4B,sCAK5BA,IAMDgJ,GAAY,CACvBC,uBAAwBjJ,+BAJc,4BAIdA,GACxBkJ,oBAAqBlJ,+BAAqB,2BAArBA,GACrBmJ,sBAAuBnJ,+BALkB,4BAKlBA,IAITj4B,OAAAy0B,EAAA,EAAAz0B,CAAA,GACXqhC,IACAC,IACAC,IACAC,IACAtI,EACAmD,EACA2B,EACAvC,EACAzC,EACAmF,EACAvC,EACAyD,EACAoC,IACAhC,EACAK,EACAf,EACAoB,EACAI,GACA9D,EACAmB,EACA8D,IACAZ,GACAlI,EACAqI,GACA9I,EACAP,IACA+J,IACAC,IACAC,IACAC,KAIOrF,EAAaI,SACVJ,EAAaO,YACbP,EAAaM,YACdoD,EAAcE,iCCniB5B0B,EAAAC,QAAiBpQ,EAAAqQ,EAAuB,qDCAxCF,EAAAC,QAAiBpQ,EAAAqQ,EAAuB,wDCAxCF,EAAAC,QAAiBpQ,EAAAqQ,EAAuB,yKCWpCzK,YAAkC,CACpCC,QATuC,yCAUvCC,QATuC,yCAUvCC,MATqC,wCAMnCH,sBAHF0K,OACAC,OACAC,SAgBE5K,YAAkC,CACpCC,QATyC,2CAUzCC,QATyC,2CAUzCC,MATuC,0CAMrCH,sBAHF6K,OACAC,OACAC,SAgBE/K,YAAkC,CACpCC,QATqC,uCAUrCC,QATqC,uCAUrCC,MATmC,sCAMjCH,sBAUSsK,EAA2B,CACtCI,gCACAC,gCACAC,8BACAC,kCACAC,kCACAC,gCACAC,iCACAC,iCACAC,8HCzC2DlL,YAAkC,CAAEC,QAR1D,gCAQ4FC,QAP5F,gCAO8HC,MANhI,+BAMwBH,sBAAtDmL,OAAkBC,OAAkBC,SACerL,YAAkC,CAAEC,QALxD,+BAKyFC,QAJzF,+BAI0HC,MAH5H,8BAGsBH,sBAAnDsL,OAAiBC,OAAiBC,OAE5B7D,EAAmB,CAC9B8D,eAAgBhL,+BAjBY,uBAiBZA,GAChBiL,aAAcjL,+BAnBa,sBAmBbA,GACdkL,aAAclL,+BAlBa,sBAkBbA,GAEdmL,qBAAsBnL,+BAnBc,+BAmBdA,GACtBoL,qBAAsBpL,+BAnBc,+BAmBdA,GACtBqL,mBAAoBrL,+BAnBc,6BAmBdA,GACpB0K,mBACAC,mBACAC,iBACAC,kBACAC,kBACAC,+NCnBWO,EAA0B,SACrCC,GAMA,OAAOtN,IAAEnH,IACPyU,EACA,SAAAxR,GAAA,IACEyR,EADFzR,EACEyR,eADF,MAgBkC,CAChCC,gBAjBF1R,EAEE0R,gBAgBAC,WAlBF3R,EAGE2R,WAgBAC,kBAnBF5R,EAIE4R,kBAgBAC,oBApBF7R,EAKE6R,oBAgBAJ,iBACAK,iBAtBF9R,EAME8R,iBAiBAC,iBAvBF/R,EAOE+R,iBAiBAC,UAxBFhS,EAQEgS,UAiBAC,KAzBFjS,EASEiS,KAiBAC,OA1BFlS,EAUEkS,OAiBAC,iBA3BFnS,EAWEmS,iBAiBAC,SA5BFpS,EAYEoS,SAiBAC,SA7BFrS,EAaEqS,SAiBAC,WA9BFtS,EAcEsS,WAiBAC,YA/BFvS,EAeEuS,gBAqBOC,EAAwB,SACnCC,EAcAC,GAOA,IAAKA,EACH,MAAO,CACLC,IAAK,EACLC,IAAK,EACLC,OAAQ,EACRC,cAAe,EACfC,KAAMN,EAASO,UAAYP,EAASQ,iBACpCC,eAAgB,EAChBC,eAAgB,EAChBxU,MAAO8T,EAASW,WAChBC,SAAUZ,EAASa,aACnB1c,OAAQ2c,aAAcd,EAASP,OAAQO,EAAS//B,UAAW8gC,YAAsBf,EAAS//B,WAAY,CACpG+gC,WAAYhB,EAASP,OACrBwB,iBAAkBjB,EAASN,mBAE7BuB,iBAAkBjB,EAASN,iBAC3BwB,KAAM,EACNC,MAAO,EACPvjB,YAAaoiB,EAASF,YACtBsB,UAAW,EACXnC,iBAAiB,EACjBE,kBAAmB,GA3BC,IAgCtBQ,EASEM,EATFN,SACAC,EAQEK,EARFL,SACAN,EAOEW,EAPFX,iBACAN,EAMEiB,EANFjB,eACAE,EAKEe,EALFf,WACAD,EAIEgB,EAJFhB,gBACAE,EAGEc,EAHFd,kBACAI,EAEEU,EAFFV,UACAF,EACEY,EADFZ,iBAKIqB,EAAiBW,YAAa,CAClCC,KAAMhC,GAAoB,EAC1BY,IAAKP,GAAY,EACjBQ,IAAKP,GAAY,EACjB2B,aAAc,YACdC,gBAAiBvC,IAGbwC,EAAef,EAAiBV,EAASW,WArDvBvO,EAuDUsP,YAChC1C,EACAE,EACAC,EACAS,EACAD,EACAK,EAASP,OACTR,IACG,CACHmB,YAAQ30C,EACR40C,mBAAe50C,GAVT20C,EAvDgBhO,EAuDhBgO,OAAQC,EAvDQjO,EAuDRiO,cAaVsB,EACJC,YACE5B,EAAS6B,UACT7B,EAASa,aACTb,EAAS//B,UACT+/B,EAASQ,kBACPR,EAAS8B,WA2Bf,MAzBiD,CAC/C5B,IAAKP,EACLQ,IAAKP,EACLQ,OAAQb,EACRc,cAAehB,EACf0C,iBAAkB3B,EAClB4B,wBAAyC,IAAhB3B,EACzBC,KAAMN,EAASO,UACfE,eAAgBT,EAAS//B,YAAcA,IAAUgiC,YAAc,EAAIjD,EACnE0B,eAAgBV,EAAS//B,YAAcA,IAAUgiC,YAAc,EAAIvB,EACnExU,MAAOuV,EACPb,SAAUZ,EAASa,aACnB1c,OAAQ2c,aAAcd,EAASP,OAAQO,EAAS//B,UAAW8gC,YAAsBf,EAAS//B,WAAY,CACpG+gC,WAAYhB,EAASP,OACrBwB,iBAAkBjB,EAASN,mBAE7BuB,iBAAkBjB,EAASN,iBAE3BwB,KAAMO,EAAeE,EACrBR,MAAOnB,EAAS//B,YAAcA,IAAUgiC,YAAc,EAAI/C,EAC1DthB,YAAaoiB,EAASF,YACtBsB,UAAWnC,EAAkBE,EAAoBD,EACjDD,gBAAiBA,EACjBE,kBAAmBA,IAKV+C,EAA2B,SACtCC,EACA5e,EACA0d,GAEA,IAAMmB,EAAe3Q,IAAE5I,OACrBsZ,EACA,SAACE,EAA4BC,GAE3B,IAAMC,EAAQ9Q,IAAExa,KAAKsM,EAAQ,SAAAif,GAAC,OAAIA,EAAE/C,SAAW6C,EAAI7C,OAAOtoB,QAAQ,IAAK,MACvE,IAAKorB,EACH,OAAOF,EAET,IAAMI,EAAUlnC,OAAAmnC,EAAA,EAAAnnC,CAAA,GACX+mC,EADW,CAEd3B,WAAY2B,EAAIzB,aAAeyB,EAAI9B,mBAErC,SAAArpC,OAAAoE,OAAAonC,EAAA,EAAApnC,CAAW8mC,GAAX,CAAgBtC,EAAsB0C,EAAYF,MAEpD,IAEIK,EAAwBnR,IAAExa,KAAKsM,EAAQ,SAAAif,GAAC,OAAIA,EAAE/C,SAAWwB,IACzD4B,EAAkBpR,IAAE3E,OACxBqV,EACA,SAAA3E,GAAC,OACCA,EAAEv9B,YAAcA,IAAU6iC,QAAUtF,EAAEv9B,YAAcA,IAAUgiC,aAAezE,EAAEv9B,YAAcA,IAAU8iC,aAG3G,MAAO,CACL5e,OAAQ2c,aACNG,EACA4B,EAAgBxT,OAAS,EAAIwT,EAAgB,GAAG5iC,UAAYkiC,EAAU,GAAGliC,UACzEsd,KAAYulB,OACZ,IAEF7B,iBAAkBA,EAClBX,KAAM0C,YAAWZ,EAAa9X,IAAI,SAAA2Y,GAAE,OAAIA,EAAG3C,QAC3CpU,MAAO8W,YAAWZ,EAAa9X,IAAI,SAAA2Y,GAAE,OAAIA,EAAG/W,SAC5C0U,SAAUoC,YAAWZ,EAAa9X,IAAI,SAAA2Y,GAAE,OAAIA,EAAGrC,YAC/CxwC,QAASqhC,IAAE3E,OAAOqV,EAAW,SAAA3E,GAAC,OAAIA,EAAEv9B,YAAcA,IAAUijC,SAAQ7T,OACpE8T,OAAQN,EAAgBxT,OACxB+T,UAAW3R,IAAE4R,QAAQR,QAAmBp3C,EAAYu3C,YAAWvR,IAAEnH,IAAIuY,EAAiB,SAAArF,GAAC,OAAIA,EAAEqD,gBAE7FK,KAAM8B,YAAWvR,IAAEnH,IAAI8X,EAAc,SAAAa,GAAE,OAAIA,EAAG/B,QAC9ChB,IAAK0C,EAAwBA,EAAsBjD,SAAW,EAC9DQ,IAAKyC,EAAwBA,EAAsBhD,SAAW,EAC9Da,eAAgBmC,EAAwBA,EAAsB5D,eAAiB,EAC/E0B,eAAgBkC,EAAwBA,EAAsBtD,iBAAmB,EACjFc,OAAQwC,EAAwBA,EAAsBrD,UAAY,EAClEc,cAAeuC,EAAwBA,EAAsBvD,iBAAmB,EAChF8B,MAAOyB,EAAwBA,EAAsB1D,WAAa,EAClEkC,UAAWwB,EAAwBA,EAAsBzD,kBAAoB,EAC7EF,kBAAiB2D,GAAwBA,EAAsB3D,gBAC/DrhB,YAAaglB,EAAwBA,EAAsB9C,YAAc,GACzEX,kBAAmByD,EAAwBA,EAAsBzD,kBAAoB,wQC7NzFmE,EAAA,GACWC,EAAiB,SAAAC,EAAAC,GAE5B,QAAAh4C,IAAA63C,EAAA,GAAAnsC,OAAAqsC,EAAA,KAAArsC,OAAAssC,IACA,OAAAH,EAAA,GAAAnsC,OAAAqsC,EAAA,KAAArsC,OAAAssC,IAGA,IAAAC,EAAeC,EAAAnkB,EAAKokB,OAAA,CACpBC,QAAAL,EACAM,QAAA,CACAC,cAAAN,EACAnoC,OAAA,sBA6BA,OA1BEC,OAAAyoC,EAAA,EAAAzoC,CAAUmoC,EAAA,CACZO,QAAA,EACAC,eAAA,SAAAtS,GACA,OAAaoS,EAAA,EAAUG,kCAAAvS,IAAA,MAAAA,EAAAwS,SAAAC,QAEvBC,oBAAA,EACAC,WAAA,SAAAC,EAAAtqB,GACA,GAAAA,EAAAkqB,eAAA34C,IAAAyuB,EAAAkqB,SAAAN,QAAA,CACA,IAAAW,EAAAvqB,EAAAkqB,SAAAN,QAAA,eAGA,GAFAY,QAAAC,IAAA,mBAAAF,GAEAA,EACA,WAAAA,EAKA,WAAAD,GAEAI,QAAA,SAAAJ,EAAAtqB,EAAA2qB,GACAH,QAAAC,IAAA,kBAAAxtC,OAAAqtC,EAAA,SAAArtC,OAAA0tC,EAAArB,MACAkB,QAAAC,IAAA,SAAAzqB,MAIAopB,EAAA,GAAAnsC,OAAAqsC,EAAA,KAAArsC,OAAAssC,IAAAC,EACAA,GAEWoB,EAAS,SAAAtB,EAAAuB,GACpB,IAAAC,EAAAxB,EAAAxW,QAAA,gBACAiY,EAAAF,EAAmCG,EAAA1lB,EAAE2lB,UAAAJ,EAAA,CACrCK,SAAA,IACG,KACH,SAAAjuC,OAAAqsC,GAAArsC,OAAA8tC,EAAAD,EAAAC,EAAA,KAEO,SAAAhc,EAAA5H,GACP,wBAAAA,EAEO,SAAAgkB,EAAAv3C,GACP,OAASyxB,EAAAC,EAAC8lB,SAAAx3C,GAEH,IAAAy3C,EAAA,CACPC,UAAA,aACAC,kBAAA,uBAEWC,EAAqB,SAAAC,EAAAC,GAEhC,IAAAC,OAAAp6C,IAAAk6C,GAAA1c,EAAA0c,GAAyEG,IAAKH,GAAAI,SAAAJ,EAE9E,YAAAl6C,IAAAm6C,EACWE,IAAKD,GAAAE,SAAAC,cAGPF,IAAKD,GAAAD,WAEP,SAAAK,EAAAld,GACP,mBAAAA,EAKO,SAAAmd,EAAAnd,GACP,uBAAAA,EAAAz6B,KAEO,SAAA63C,EAAApd,GACP,sBAAAA,EAAAz6B,KAEO,SAAA83C,EAAArd,GACP,gBAAAA,EAAAz6B,KAEO,SAAA+3C,EAAAtd,GACP,qBAAAA,EAAAz6B,KAEO,SAAAg4C,EAAAvd,GAUP,OATcxJ,EAAAC,EAAC8K,IAAKic,EAAA,GAAa,SAAA7Z,EAAA8Z,GACjC,OACAnC,OAAAmC,EACAta,MAAAQ,KAEGzV,KAAA,SAAAwvB,GACH,OAAAA,EAAAva,QAAAnD,ICtGA,SAAA2d,EAAAC,GACA,OACAC,QAAAD,EAAAE,QACA10C,aAAAw0C,EAAAG,aACAxd,OAAAqd,EAAAI,QAIO,IAAIC,EAEX,WAEA,SAAAC,EAAAC,EAAAC,GACI5rC,OAAA6rC,EAAA,EAAA7rC,CAAe8rC,KAAAJ,GAEnBI,KAAAH,UACAG,KAAAF,UACAE,KAAAC,KAAgB/D,EAAiB2D,EAAAC,GACjCE,KAAAE,OAAA,CACAzD,QAAA,IA4HA,OAxHEvoC,OAAAisC,EAAA,EAAAjsC,CAAY0rC,EAAA,EACd/vB,IAAA,gBACAgV,MAAA,SAAAib,GAEA,OADAE,KAAAE,OAAAzD,QAAA,cAAAqD,GAAAE,KAAAF,QACAE,OAEG,CACHnwB,IAAA,sBACAgV,MAAA,SAAAqB,GACA,IAAAka,EAAAla,EAAAka,WACAC,EAAAna,EAAAma,gBAEA,OADAL,KAAAC,KAAAK,aAAAvD,SAAAwD,IAAAH,EAAAC,GACAL,OAEG,CACHnwB,IAAA,MACAgV,MAAA,SAAA2b,EAAA5C,EAAA70C,GACA,OAAa03C,EAAA,EAAiBT,UAAA,SAExBU,EAAAvoB,EAAmBwoB,KAAA,SAAAC,IACzB,IAAAC,EACA,OAAeH,EAAAvoB,EAAmB2oB,KAAA,SAAAC,GAClC,OACA,OAAAA,EAAAC,KAAAD,EAAAE,MACA,OAEA,OADAJ,EAAA3sC,OAAA8F,OAAA,GAAiDgmC,KAAAE,OAAAn3C,GAAA,IACjDg4C,EAAAG,OAAA,SAAAlB,KAAAC,KAAApa,IAA+D4X,EAAS+C,EAAA5C,GAAAiD,GAAAM,KAAA,SAAAnG,GACxE,OAAAA,EAAAre,OACiBwkB,KAAA9B,IAEjB,OACA,UACA,OAAA0B,EAAAK,SAGSR,EAAAZ,WAGN,CACHnwB,IAAA,YACAgV,MAAA,SAAA2b,EAAA5C,EAAA70C,GACA,OAAa03C,EAAA,EAAiBT,UAAA,SAExBU,EAAAvoB,EAAmBwoB,KAAA,SAAAU,IACzB,IAAAR,EACA,OAAeH,EAAAvoB,EAAmB2oB,KAAA,SAAAQ,GAClC,OACA,OAAAA,EAAAN,KAAAM,EAAAL,MACA,OAEA,OADAJ,EAAA3sC,OAAA8F,OAAA,GAAiDgmC,KAAAE,OAAAn3C,GAAA,IACjDu4C,EAAAJ,OAAA,SAAAlB,KAAAC,KAAApa,IAAgE4X,EAAS+C,EAAA5C,GAAA1pC,OAAA8F,OAAA,GAAgC6mC,EAAA,CACzGU,aAAA,kBAGA,OACA,UACA,OAAAD,EAAAF,SAGSC,EAAArB,WAGN,CACHnwB,IAAA,OACAgV,MAAA,SAAA2b,EAAAjB,EAAAx2C,GACA,OAAa03C,EAAA,EAAiBT,UAAA,SAExBU,EAAAvoB,EAAmBwoB,KAAA,SAAAa,IACzB,IAAAC,EAAAC,EAAAxB,EAAAW,EAEA,OAAeH,EAAAvoB,EAAmB2oB,KAAA,SAAAa,GAClC,OACA,OAAAA,EAAAX,KAAAW,EAAAV,MACA,OAKA,OAFiBS,GAFjBD,EAAA14C,GAAA,CACA24C,iBAAAt9C,IACiBs9C,YAAAxB,EAAyCO,EAAA,EAAcgB,EAAA,iBACxEZ,EAAA3sC,OAAA8F,OAAA,GAAiDgmC,KAAAE,UACjDyB,EAAAT,OAAA,SAAAlB,KAAAC,KAAA2B,KAAiEnE,EAAS+C,EAAAkB,QAAAt9C,GAAAm7C,EAAAsB,GAAAM,KAAA,SAAAnG,GAC1E,OAAAA,EAAAre,OACiBwkB,KAAA9B,IAEjB,OACA,UACA,OAAAsC,EAAAP,SAGSI,EAAAxB,WAGN,CACHnwB,IAAA,MACAgV,MAAA,SAAA2b,EAAAjB,EAAAx2C,GACA,OAAa03C,EAAA,EAAiBT,UAAA,SAExBU,EAAAvoB,EAAmBwoB,KAAA,SAAAkB,IACzB,IAAAJ,EAAAC,EAAAxB,EAAAW,EAEA,OAAeH,EAAAvoB,EAAmB2oB,KAAA,SAAAgB,GAClC,OACA,OAAAA,EAAAd,KAAAc,EAAAb,MACA,OAKA,OAFiBS,GAFjBD,EAAA14C,GAAA,CACA24C,iBAAAt9C,IACiBs9C,YAAAxB,EAAyCO,EAAA,EAAcgB,EAAA,iBACxEZ,EAAA3sC,OAAA8F,OAAA,GAAiDgmC,KAAAE,UACjD4B,EAAAZ,OAAA,SAAAlB,KAAAC,KAAA8B,IAAgEtE,EAAS+C,EAAAkB,QAAAt9C,GAAAm7C,EAAAsB,GAAAM,KAAA,SAAAnG,GACzE,OAAAA,EAAAre,OACiBwkB,KAAA9B,IAEjB,OACA,UACA,OAAAyC,EAAAV,SAGSS,EAAA7B,aAKTJ,EArIA,GAuIWoC,EAEX,WAEA,SAAAC,EAAApC,EAAAC,GACI5rC,OAAA6rC,EAAA,EAAA7rC,CAAe8rC,KAAAiC,GAEnBjC,KAAAH,UACAG,KAAAF,UACAE,KAAAC,KAAgB/D,EAAiB2D,EAAAC,GACjCE,KAAAE,OAAA,CACAzD,QAAA,IAgFA,OA5EEvoC,OAAAisC,EAAA,EAAAjsC,CAAY+tC,EAAA,EACdpyB,IAAA,gBACAgV,MAAA,SAAAib,GAGA,OAFAE,KAAAE,OAAAzD,QAAA,cAAAqD,GAAAE,KAAAF,QACAE,KAAAE,OAAAgC,iBAAA,EACAlC,OAEG,CACHnwB,IAAA,OACAgV,MAAA,SAAAsd,GAGA,OAFAnC,KAAAE,OAAAiC,EAAAnC,KAAAE,QACAF,KAAAE,OAAAgC,gBACAlC,OAEG,CACHnwB,IAAA,sBACAgV,MAAA,SAAAkG,GACA,IAAAqV,EAAArV,EAAAqV,WACAC,EAAAtV,EAAAsV,gBAEA,OADAL,KAAAC,KAAAK,aAAAvD,SAAAwD,IAAAH,EAAAC,GACAL,OAEG,CACHnwB,IAAA,MACAgV,MAAA,SAAA2b,EAAA5C,EAAA70C,GACA,OAAa03C,EAAA,EAAiBT,UAAA,SAExBU,EAAAvoB,EAAmBwoB,KAAA,SAAAyB,IACzB,IAAAvB,EACA,OAAeH,EAAAvoB,EAAmB2oB,KAAA,SAAAuB,GAClC,OACA,OAAAA,EAAArB,KAAAqB,EAAApB,MACA,OAEA,OADAJ,EAAA3sC,OAAA8F,OAAA,GAAiDgmC,KAAAE,OAAAn3C,GAAA,IACjDs5C,EAAAnB,OAAA,SAAAlB,KAAAC,KAAApa,IAAgE4X,EAAS+C,EAAA5C,GAAAiD,GAAAM,KAAA,SAAAnG,GACzE,OAAAA,EAAAre,QAGA,OACA,UACA,OAAA0lB,EAAAjB,SAGSgB,EAAApC,WAGN,CACHnwB,IAAA,OACAgV,MAAA,SAAA2b,EAAAjB,EAAAx2C,GACA,OAAa03C,EAAA,EAAiBT,UAAA,SAExBU,EAAAvoB,EAAmBwoB,KAAA,SAAA2B,IACzB,IAAAb,EAAAC,EAAAxB,EAAAW,EAEA,OAAeH,EAAAvoB,EAAmB2oB,KAAA,SAAAyB,GAClC,OACA,OAAAA,EAAAvB,KAAAuB,EAAAtB,MACA,OAKA,OAFiBS,GAFjBD,EAAA14C,GAAA,CACA24C,iBAAAt9C,IACiBs9C,YAAAxB,EAAyCO,EAAA,EAAcgB,EAAA,iBACxEZ,EAAA3sC,OAAA8F,OAAA,GAAiDgmC,KAAAE,UACjDqC,EAAArB,OAAA,SAAAlB,KAAAC,KAAA2B,KAAiEnE,EAAS+C,EAAAkB,QAAAt9C,GAAAm7C,EAAAsB,GAAAM,KAAA,SAAAnG,GAC1E,OAAAA,EAAAre,QAGA,OACA,UACA,OAAA4lB,EAAAnB,SAGSkB,EAAAtC,aAKTiC,EAzFA,GC/IWO,EAAe,SAAAv7C,EAAAstB,EAAAF,GAE1B,IAAAouB,EAAA,OAAApuB,EAAuCngB,OAAAwuC,EAAA,KAAAxuC,CAAIqgB,EAAA,UAAAF,EAAsCngB,OAAAwuC,EAAA,KAAAxuC,CAAIqgB,EAAA,GAAAA,EAErF,OAAAttB,GACA,KAASi4C,EAAA,EAAShhC,QAElB,OACAic,EAAA,EACAD,EAAAyoB,KAAAC,IAAAH,EAAA,IAGA,QAEA,OACAtoB,EAAA,EACAD,EAAAyoB,KAAAC,IAAAH,EAAA,MAaWI,EAAmB,SAAA57C,EAAAstB,EAAAF,EAAAyuB,GAE9B,IAAAC,EAAYP,EAAev7C,EAAAstB,EAAAF,GAC3B2uB,EAAA,CACA1oB,KAAAyoB,EAAA5oB,EACAC,KAAA2oB,EAAA7oB,GAGA,GAAA4oB,EAEA,aAAAzuB,EACAngB,OAAA8F,OAAA,GAA6BgpC,EAAA,CAC7B7oB,EAAA,EACAD,EAAAyoB,KAAAC,IAAoB1uC,OAAAwuC,EAAA,KAAAxuC,CAAIqgB,EAAA,GAAAwuB,EAAA7oB,KAKxBhmB,OAAA8F,OAAA,GAA2BgpC,EAAA,CAC3B7oB,EAAA,EACAD,EAAA3F,IAKA,UAAAF,EACA,OAAAptB,GACA,KAAWi4C,EAAA,EAAS9gC,MACpB,KAAW8gC,EAAA,EAAS7gC,KACpB,KAAW6gC,EAAA,EAAS/gC,WAEpB,OAAAjK,OAAA8F,OAAA,GAA+BgpC,EAAA,CAC/B7oB,EAAA,EACAD,EAAA6oB,EAAA7oB,IAGA,KAAWglB,EAAA,EAAShhC,QAEpB,OAAAhK,OAAA8F,OAAA,GAA+BgpC,EAAA,CAC/B7oB,EAAA,EACAD,EAAA6oB,EAAA7oB,IAGA,QAEA,OAAAhmB,OAAA8F,OAAA,GAA+BgpC,EAAA,CAC/B7oB,EAAA,EACAD,EAAA3F,IAMA,OAAAttB,GACA,KAASi4C,EAAA,EAAShhC,QAElB,OAAAhK,OAAA8F,OAAA,GAA6BgpC,EAAA,CAC7B7oB,EAAA,EACAD,EAAAyoB,KAAAC,IAAoB1uC,OAAAwuC,EAAA,KAAAxuC,CAAIqgB,EAAA,GAAAwuB,EAAA7oB,KAGxB,QAEA,OAAAhmB,OAAA8F,OAAA,GAA6BgpC,EAAA,CAC7B7oB,EAAA,EACAD,EAAAyoB,KAAAC,IAAoB1uC,OAAAwuC,EAAA,KAAAxuC,CAAIqgB,EAAA,GAAAwuB,EAAA7oB,eC9CjB+oB,EAjDA,SAAAC,GACP,gBAAA/O,GACA,OAAWsM,EAAA,OATCr8C,OASsB,SAE9Bs8C,EAAAvoB,EAAmBwoB,KAAA,SAAAC,IACvB,IAAAuC,EAAAC,EACA,OAAa1C,EAAAvoB,EAAmB2oB,KAAA,SAAAC,GAChC,OACA,OAAAA,EAAAC,KAAAD,EAAAE,MACA,OAEA,OADAF,EAAAE,KAAA,EACAiC,EAAArd,IAA6Bwd,EAAA,EAASlP,GAEtC,OAoBA,OAnBAgP,EAAApC,EAAAuC,KACAF,EAAkClrB,EAAAC,EAAC8K,IAAAkgB,EAAA5D,QAAAgE,MAAA,SAAA78C,GACnC,IAAA88C,EAAAC,OAAA/8C,EAAAg9C,aACAC,EAAAF,OAAA/8C,EAAAk9C,cACAC,EAAAJ,OAAA/8C,EAAAwyC,WACA4K,EAAiCrF,IAAK/3C,EAAAq9C,YAAArF,SACtCsF,EAAiCvF,IAAK/3C,EAAAu9C,YAAAvF,SACtCwF,EAAAT,OAAA/8C,EAAAy9C,aACA5K,EAAAkK,OAAA/8C,EAAA09C,UACA,OAAAlwC,OAAA8F,OAAA,GAAuCtT,EAAA,CACvCg9C,YAAAF,EACAI,aAAAD,EACAzK,UAAA2K,EACAE,WAAAD,EACAG,WAAAD,EACAG,YAAAD,EACAE,SAAA7K,MAGAwH,EAAAG,OAAA,SAAAhtC,OAAA8F,OAAA,GAA+DmpC,EAAA,CAC/D5D,QAAA4D,EAAA5D,QAAArrC,OAAA8F,OAAA,GAA+DmpC,EAAA5D,QAAA,CAC/DgE,MAAAH,SACiBh/C,KAGjB,OACA,UACA,OAAA28C,EAAAK,SAGOR,QC9CPyD,EAAA,CACA5H,QAAA,CACAxoC,OAAA,qBAGO,SAAAqwC,EAAApB,GACP,IAAAqB,EAAAvE,KAEA,OACAwE,IAAA,WACA,OAAAtB,EAAAuB,gBAAA5e,IAAqCwd,EAAA,EAAc,GAAIgB,IAEvDxe,IAAA,SAAA6e,GACA,OAAajE,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAAC,IACzB,IAAA76C,EACA,OAAe26C,EAAAvoB,EAAmB2oB,KAAA,SAAAC,GAClC,OACA,OAAAA,EAAAC,KAAAD,EAAAE,MACA,OAIA,OAHAF,EAAAC,KAAA,EACAj7C,EAA4Bi4C,EAAW0G,GACvC3D,EAAAE,KAAA,EACAiC,EAAAuB,gBAAA5e,IAA+Cwd,EAAA,EAAc,CAC7Dt9C,aACiBs+C,GAEjB,OACA,OAAAtD,EAAAG,OAAA,SAAAH,EAAAuC,MAEA,OAIA,OAHAvC,EAAAC,KAAA,EACAD,EAAA4D,GAAA5D,EAAA,SACA1D,QAAAuH,KAAA,wCAAAF,GACA3D,EAAAG,OAAA,UACAp2C,aAAgCo0C,EAAA,GAChCK,QAAA,KAGA,QACA,UACA,OAAAwB,EAAAK,SAGSR,EAAA,kBAGTiE,YAAA,SAAAH,GACA,IAAA3+C,EAAsBi4C,EAAW0G,GACjC,OAAAxB,EAAAuB,gBAAA5e,IAAqCwd,EAAA,EAAiB,CACtDt9C,aACOs+C,IAEPS,QAAA,SAAAJ,GACA,OAAajE,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAAU,IACzB,IAAAt7C,EACA,OAAe26C,EAAAvoB,EAAmB2oB,KAAA,SAAAQ,GAClC,OACA,OAAAA,EAAAN,KAAAM,EAAAL,MACA,OAIA,OAHAK,EAAAN,KAAA,EACAj7C,EAA4Bi4C,EAAW0G,GACvCpD,EAAAL,KAAA,EACAiC,EAAAuB,gBAAA5e,IAA+Cwd,EAAA,EAAoB,CACnEt9C,aACiBs+C,GAEjB,OACA,OAAA/C,EAAAJ,OAAA,SAAAI,EAAAgC,MAEA,OAIA,OAHAhC,EAAAN,KAAA,EACAM,EAAAqD,GAAArD,EAAA,SACAjE,QAAAuH,KAAA,gDAAAF,GACApD,EAAAJ,OAAA,UACAp2C,aAAgCo0C,EAAA,GAChCK,QAA2BL,EAAA,KAG3B,QACA,UACA,OAAAoC,EAAAF,SAGSC,EAAA,kBAGT7a,OAAA,SAAA2N,GACA,OAAasM,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAAa,IACzB,IAAAuD,EAAAC,EACA,OAAetE,EAAAvoB,EAAmB2oB,KAAA,SAAAa,GAClC,OACA,OAAAA,EAAAX,KAAAW,EAAAV,MACA,OAGA,OAFA8D,EAAA7wC,OAAA8F,OAAA,GAAgDm6B,GAChDwN,EAAAV,KAAA,EACAiC,EAAAuB,gBAAA5e,IAA+Cwd,EAAA,EAAiB0B,EAAAV,GAEhE,OAEA,OADAW,EAAArD,EAAA2B,KACA3B,EAAAT,OAAA,SAAA8D,GAEA,OACA,UACA,OAAArD,EAAAP,SAGSI,OAGTyD,OAAA,SAAAP,EAAAvQ,GACA,OAAasM,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAAkB,IACzB,IAAAqD,EAAAF,EACA,OAAetE,EAAAvoB,EAAmB2oB,KAAA,SAAAgB,GAClC,OACA,OAAAA,EAAAd,KAAAc,EAAAb,MACA,OAGA,OAFAiE,EAAA/Q,EAAA+Q,OAAA/Q,EAAA+Q,OAAA,EACApD,EAAAb,KAAA,EACAiC,EAAAuB,gBAAA1C,IAAA,oCAAAjyC,OAAA40C,EAAA,YAAA50C,OAAAo1C,GAAA/Q,EAAAkQ,GAEA,OAEA,OADAW,EAAAlD,EAAAwB,KACAxB,EAAAZ,OAAA,SAAA8D,GAEA,OACA,UACA,OAAAlD,EAAAV,SAGSS,OAGTsD,UAAA,SAAAC,GACA,OAAa3E,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAAyB,IACzB,OAAe1B,EAAAvoB,EAAmB2oB,KAAA,SAAAuB,GAClC,OACA,OAAAA,EAAArB,KAAAqB,EAAApB,MACA,OAEA,OADAoB,EAAApB,KAAA,EACAiC,EAAAuB,gBAAA5e,IAAA,qCAAA/1B,OAAAs1C,GAAAf,GAEA,OACA,OAAAhC,EAAAnB,OAAA,SAAAmB,EAAAiB,MAEA,OACA,UACA,OAAAjB,EAAAjB,SAGSgB,OAGTiD,cAAA,SAAAD,GACA,OAAa3E,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAA2B,IACzB,OAAe5B,EAAAvoB,EAAmB2oB,KAAA,SAAAyB,GAClC,OACA,OAAAA,EAAAvB,KAAAuB,EAAAtB,MACA,OAEA,OADAsB,EAAAtB,KAAA,EACAiC,EAAAuB,gBAAA1C,IAAA,yCAAAjyC,OAAAs1C,KAAAf,GAEA,OACA,OAAA9B,EAAArB,OAAA,SAAAqB,EAAAe,MAEA,OACA,UACA,OAAAf,EAAAnB,SAGSkB,OAGTgD,eAAA,SAAAnR,GACA,OAAasM,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAA4E,IACzB,IAAAC,EAAAC,EAAAV,EACA,OAAerE,EAAAvoB,EAAmB2oB,KAAA,SAAA4E,GAClC,OACA,OAAAA,EAAA1E,KAAA0E,EAAAzE,MACA,OAQA,OAPAuE,EAA4BttB,EAAAC,EAACiN,MAAA+O,EAAAqR,gBAAAphD,EAAwCi6C,EAAqBlK,EAAAqR,UAAA,cAC1FC,EAA0BvtB,EAAAC,EAACiN,MAAA+O,EAAAsR,cAAArhD,EAAsCi6C,EAAqBlK,EAAAsR,QAAA,cACtFV,EAAA7wC,OAAA8F,OAAA,GAAgDm6B,EAAA,CAChDsR,UACAD,cAEAE,EAAAzE,KAAA,EACAiC,EAAAuB,gBAAA5e,IAA+Cwd,EAAA,GAAuB0B,EAAAV,GAEtE,OACA,OAAAqB,EAAAxE,OAAA,SAAAwE,EAAApC,MAEA,OACA,UACA,OAAAoC,EAAAtE,SAGSmE,OAGTI,qBAAA,SAAAxR,GACA,OAAasM,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAAiF,IACzB,IAAAC,EACA,OAAenF,EAAAvoB,EAAmB2oB,KAAA,SAAAgF,GAClC,OACA,OAAAA,EAAA9E,KAAA8E,EAAA7E,MACA,OAMA,OALA4E,EAAA,CACA9/C,UAAAouC,EAAApuC,UACAggD,SAAA5R,EAAA1tC,IAEAq/C,EAAA7E,KAAA,EACAiC,EAAAuB,gBAAA5e,IAA+Cwd,EAAA,EAA0BwC,EAAAxB,GAEzE,OACA,OAAAyB,EAAA5E,OAAA,SAAA4E,EAAAxC,MAEA,OACA,UACA,OAAAwC,EAAA1E,SAGSwE,OAGTI,sBAAA,SAAAjgD,GACA,OAAa06C,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAAsF,IACzB,OAAevF,EAAAvoB,EAAmB2oB,KAAA,SAAAoF,GAClC,OACA,OAAAA,EAAAlF,KAAAkF,EAAAjF,MACA,OAEA,OADAiF,EAAAjF,KAAA,EACAiC,EAAAuB,gBAAA5e,IAA+Cwd,EAAA,EAA8Bt9C,EAAAs+C,GAE7E,OACA,OAAA6B,EAAAhF,OAAA,SAAAgF,EAAA5C,MAEA,OACA,UACA,OAAA4C,EAAA9E,SAGS6E,OAGTE,kBAAA,SAAAhS,GACA,OAAasM,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAAyF,IACzB,OAAe1F,EAAAvoB,EAAmB2oB,KAAA,SAAAuF,GAClC,OACA,OAAAA,EAAArF,KAAAqF,EAAApF,MACA,OAEA,OADAoF,EAAApF,KAAA,EACAiC,EAAAuB,gBAAA1C,IAAA,+CAAAjyC,OAAAqkC,EAAApuC,UAAA,cAAA+J,OAAAqkC,EAAA4R,UAAA5R,UAAAkQ,GAEA,OACA,OAAAgC,EAAAnF,OAAA,SAAAmF,EAAA/C,MAEA,OACA,UACA,OAAA+C,EAAAjF,SAGSgF,OAGTE,iBAAA,SAAAnS,GACA,OAAasM,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAA4F,IACzB,OAAe7F,EAAAvoB,EAAmB2oB,KAAA,SAAA0F,GAClC,OACA,OAAAA,EAAAxF,KAAAwF,EAAAvF,MACA,OAEA,OADAuF,EAAAvF,KAAA,EACAiC,EAAAuB,gBAAA1C,IAAA,8CAAAjyC,OAAAqkC,EAAApuC,UAAA,cAAA+J,OAAAqkC,EAAA4R,UAAA5R,UAAAkQ,GAEA,OACA,OAAAmC,EAAAtF,OAAA,SAAAsF,EAAAlD,MAEA,OACA,UACA,OAAAkD,EAAApF,SAGSmF,OAGTE,aAAA,WACA,OAAahG,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAA+F,IACzB,OAAehG,EAAAvoB,EAAmB2oB,KAAA,SAAA6F,GAClC,OACA,OAAAA,EAAA3F,KAAA2F,EAAA1F,MACA,OAEA,OADA0F,EAAA1F,KAAA,EACAiC,EAAAuB,gBAAA5e,IAAA,2BAA0Ewe,GAE1E,OACA,OAAAsC,EAAAzF,OAAA,SAAAyF,EAAArD,MAEA,OACA,UACA,OAAAqD,EAAAvF,SAGSsF,8BC1UEE,EAAM,SAAAC,GACjB,OAASC,EAAA3uB,EAAQ4uB,IAAAC,QAAAC,KAAAnJ,UAAA+I,GAFjB,gBAEiBK,8BCDNC,EAAM,SAAAt3B,EAAAgV,EAAAqB,GACjB,IAAAkhB,EAAAlhB,EAAAkhB,WACAC,EAAAnhB,EAAAmhB,WACAC,EAAAphB,EAAAohB,iBACAC,EAAoBrvB,EAAAC,EAACqvB,QAAAJ,KAAA,CAAAA,GAErB,OAAAviB,EAIA,IAAA4iB,QAAA,SAAAC,EAAAC,GACA,OAAWC,EAAAzvB,EAAG0vB,OAAAhjB,EAAAhV,EAAA,CACdw3B,aACAC,oBACK,SAAAQ,EAAAvI,GACL,GAAAA,EAAA,CACA,IAAAwI,EAAAxI,EAEA,IAAAgI,EAAA5lB,SAAAomB,EAAAX,YAAA,CACA,IAAAY,EAAAT,EAAAU,KAAA,KACAN,EAAA,yBAAA73C,OAAAi4C,EAAAX,WAAA,iBAAAt3C,OAAAk4C,EAAA,MAGA,OAAAN,EAAAnI,GAGA,OADAlC,QAAAxqB,MAAA,0BAAAi1B,GACAJ,EAAA,UAnBAD,QAAAC,QAAA,OC0CA,IAAAQ,EAAA,CACAzL,QAAA,CACAxoC,OAAA,qBAGWk0C,EAAI,SAAAjF,GACf,OACAkF,OAAA,WACA,OAAa3H,EAAA,OAzDDr8C,OAyDwB,SAE9Bs8C,EAAAvoB,EAAmBwoB,KAAA,SAAAU,IACzB,OAAeX,EAAAvoB,EAAmB2oB,KAAA,SAAAQ,GAClC,OACA,OAAAA,EAAAN,KAAAM,EAAAL,MACA,OACA,OAAAK,EAAAJ,OAAA,SAAAgC,EAAAuB,gBAAA7C,KAA2EyB,EAAA,GAAc,GAAI6E,IAE7F,OACA,UACA,OAAA5G,EAAAF,SAGSC,SCvDT,8DCVA,SAAAgH,GAAAC,EAAAnrB,GAAkCkrB,GAAA,SAAAC,EAAAnrB,GAAiD,WAAAorB,EAAAD,EAAAnrB,IAAuC,IAAAqrB,EAAet0C,OAAAu0C,EAAA,EAAAv0C,CAAgBw0C,QAASC,EAAAD,OAAAE,UAA+BC,EAAA,IAAAC,QAA6B,SAAAP,EAAAD,EAAAnrB,GAAmC,IAAAonB,EAAAiE,EAAAO,KAAA/I,KAAAsI,GAAgE,OAA5BO,EAAAG,IAAAzE,EAAApnB,GAA4BonB,EAAu2B,SAAA0E,EAAAjE,EAAAsD,GAAmC,IAAAY,EAAAL,EAAAhjB,IAAAyiB,GAAyB,OAAAp0C,OAAAyb,KAAAu5B,GAAA1nB,OAAA,SAAArE,EAAA/2B,GAAuF,OAAhC+2B,EAAA/2B,GAAA4+C,EAAAkE,EAAA9iD,IAAgC+2B,GAAiBjpB,OAAAqoC,OAAA,OAAyB,OAAnhCroC,OAAAi1C,EAAA,EAAAj1C,CAASq0C,EAAAC,GAAuBD,EAAAK,UAAAQ,KAAA,SAAAC,GAA8C,IAAArE,EAAA2D,EAAAS,KAAAL,KAAA/I,KAAAqJ,GAAiG,OAAvDrE,MAAA7nB,OAAA8rB,EAAAjE,EAAAhF,OAAuDgF,GAAkBuD,EAAAK,UAAAxQ,OAAAtoB,SAAA,SAAAu5B,EAAAC,GAAuE,qBAAAA,EAAA,CAAwC,IAAAnsB,EAAA0rB,EAAAhjB,IAAAma,MAAgC,OAAA2I,EAAAvQ,OAAAtoB,SAAAi5B,KAAA/I,KAAAqJ,EAAAC,EAAAx5B,QAAA,wBAAAsa,EAAAhkC,GAAwG,UAAA+2B,EAAA/2B,MAAkC,uBAAAkjD,EAAA,CAA+C,IAAA/E,EAAAvE,KAAkB,OAAA2I,EAAAvQ,OAAAtoB,SAAAi5B,KAAA/I,KAAAqJ,EAAA,WAA4D,IAAAE,EAAA,GAAyI,OAA1HA,EAAAC,KAAAC,MAAAF,EAAAG,WAAkC,kBAAAH,IAAAvhB,OAAA,IAAiDuhB,EAAAC,KAAAP,EAAAM,EAAAhF,IAAuC+E,EAAAG,MAAAzJ,KAAAuJ,KAAoD,OAAAZ,EAAAvQ,OAAAtoB,SAAAi5B,KAAA/I,KAAAqJ,EAAAC,IAA+PjB,GAAAoB,MAAAzJ,KAAA0J,WAKr2CjL,EAAAtmB,EAAKwxB,OAAQC,EAAAzxB,GAGN,IAAI0xB,GAEX,WACA,SAAAC,EAAAjlB,GACA,IAAA0f,EAAAvE,KAEI9rC,OAAA6rC,EAAA,EAAA7rC,CAAe8rC,KAAA8J,GAEnB9J,KAAAqJ,IAAA,SAAAU,GACA,OAAAxF,EAAAhnC,OAAAwsC,IAGA/J,KAAAgK,IAAA,SAAAD,GACA,OAAAE,SAAA1F,EAAA8E,IAAAU,KAGA/J,KAAAkK,MAAA,SAAAH,GACA,OAAAI,WAAA5F,EAAA8E,IAAAU,KAGA/J,KAAA35C,KAAA,SAAA0jD,GACA,OAAatL,IAAK8F,EAAA8E,IAAAU,KAGlB/J,KAAAoK,QAAA,SAAAL,GACA,WAAAxF,EAAAyF,IAAAD,IAGA/J,KAAAqK,eAAA,SAAAC,GAGA,OAFA/F,EAAAyF,IAAAM,IAGA,SACA,OACA,kBAEA,OACA,cAEA,OACA,eAEA,OACA,oBAEA,OACA,mBAEA,QACA,qBAEA,QACA,SAIAtK,KAAAuK,SAAA,WACA,OACAH,QAAA7F,EAAA6F,QAAA,GACAnjD,KAAAs9C,EAAA8F,eAAA,GACAG,IAAAjG,EAAAiG,MAIAxK,KAAAyK,yBAAA,WACA,IAAAF,EAAAhG,EAAAgG,WAEAG,EAAA,KAAAnG,EAAAyF,IAAA,GAAuC9K,EAAA,GAAgByL,eAAkBzL,EAAA,GAAgB0L,QACzF,OAAA12C,OAAA8F,OAAA,GAA6BuwC,EAAA,CAC7BG,OACAG,OAAAtG,EAAA8E,IAAA,GACAyB,SAAA,KAIA9K,KAAA+K,WAAA,WACA,IAAAR,EAAAhG,EAAAgG,WAKAS,EAHA,CACAA,UAAAzG,EAAA8E,IAAA,IAEA2B,UAEAluB,EAAAynB,EAAA8E,IAAA,GAEAjR,EAAmB6S,GAAWnuB,GAAWouB,GAAcpuB,KACvD,OAAA5oB,OAAA8F,OAAA,GAA6BuwC,EAAA,CAC7BS,YACA5S,SACAT,eAAA4M,EAAA2F,MAAA,GACA3R,SAAAgM,EAAA2F,MAAA,GACA5R,SAAAiM,EAAA2F,MAAA,GACAhS,UAAAqM,EAAA2F,MAAA,GACAp3C,KAAAyxC,EAAA2F,MAAA,GACAt3C,IAAA2xC,EAAA2F,MAAA,GACAiB,OAAA5G,EAAA2F,MAAA,IACAlS,iBAAAuM,EAAA2F,MAAA,IACAkB,QAAA7G,EAAA2F,MAAA,IACAmB,QAAA9G,EAAA2F,MAAA,IACAY,QAAiBrM,IAAKuM,EAAA,uBAAAF,WAAgDrM,IAAKuM,EAAA,uBAAAnxC,QAA6C4kC,MAAK5kC,UAI7HmmC,KAAAsL,iBAAA,WACA,IAAAf,EAAAhG,EAAAgG,WAEA,OAAAr2C,OAAA8F,OAAA,GAA6BuwC,EAAA,CAC7BgB,UAAAhH,EAAAyF,IAAA,GACAwB,QAAAjH,EAAAyF,IAAA,GACAyB,UAAAlH,EAAAl+C,KAAA,GAAAq4C,SACAtG,OAAAmM,EAAA8E,IAAA,GACAqC,cAAAnH,EAAA2F,MAAA,GACAyB,eAAApH,EAAA2F,MAAA,GACA0B,WAAArH,EAAA2F,MAAA,GACArxC,YAAA0rC,EAAA8E,IAAA,GACAwC,YAAAtH,EAAAyF,IAAA,IACA8B,WAAAvH,EAAAl+C,KAAA,IAAAq4C,SACAqN,QAAAxH,EAAA8E,IAAA,IACA2C,OAAAzH,EAAA2F,MAAA,IACAY,SAAA,KAIA9K,KAAAiM,gBAAA,WACA,IAAA1B,EAAAhG,EAAAgG,WAEA,OAAAr2C,OAAA8F,OAAA,GAA6BuwC,EAAA,CAC7B2B,UAAA3H,EAAA8E,IAAA,GACAjR,OAAAmM,EAAA8E,IAAA,GACAxR,WAAA0M,EAAA2F,MAAA,GACApS,kBAAAyM,EAAA2F,MAAA,GACAtS,iBAAA,EACAkT,SAAA,KAIA9K,KAAAmM,eAAA,WACA,IAAA5B,EAAAhG,EAAAgG,WAEA,OAAAr2C,OAAA8F,OAAA,GAA6BuwC,EAAA,CAC7BO,SAAA,KAIA9K,KAAAoM,SAAA,CACAhuC,MAAA4hC,KAAA+K,WACAsB,UAAArM,KAAAmM,eACAG,YAAAtM,KAAAsL,iBACAiB,aAAAvM,KAAAyK,yBACA+B,OAAAxM,KAAAyM,aACAC,WAAA1M,KAAAiM,iBAGAjM,KAAA2M,MAAA,WACA,IAAAC,EAAArI,EAAA6H,SAEA7B,EAAAhG,EAAAgG,WAEA,GAAAqC,GAAArC,KAAAtjD,MAAA2lD,EAAArC,EAAAtjD,MACA,OAAA2lD,EAAArC,EAAAtjD,SAMA+4C,KAAAziC,OAAAsnB,EAAAgoB,MAAA,KAAArrB,OAAA,SAAAC,EAAAqrB,GACA,IAAAC,EAAAD,EAAAE,MAAA3E,GAAA,cACA4E,SAAA,EACAC,WAAA,KAGA,GAAUh1B,EAAAC,EAACiN,MAAA2nB,GACX,OAAAtrB,EAIA,IAAA0rB,EAAAJ,EAAA5vB,OACA8vB,EAAAE,EAAAF,SACAC,EAAAC,EAAAD,WAEAE,EAAiBl1B,EAAAC,EAAC8xB,SAAAgD,GAElB,OAAU/0B,EAAAC,EAACiN,MAAAgoB,IAAgBl1B,EAAAC,EAACk1B,MAAAD,GAC5B3rB,EAGAvtB,OAAA8F,OAAA,GAA6BynB,EAAOvtB,OAAA2tB,EAAA,EAAA3tB,CAAe,GAAGk5C,EAAAF,KACjD,IACLlN,KAAAwK,IAAA3lB,EAeA,OAVE3wB,OAAAisC,EAAA,EAAAjsC,CAAY41C,EAAA,EACdj6B,IAAA,eACAgV,MAAA,WACA,IAAA0lB,EAAAvK,KAAAuK,WACA,OAAAr2C,OAAA8F,OAAA,GAA6BuwC,EAAA,CAC7BO,SAAA,QAKAhB,EAzMA,aCjBWwD,GAAM,SAAAC,GACjB,IAAAjQ,EAAYppC,OAAAs5C,GAAA,MAAAt5C,CAAK,MAEjB,OAAAq5C,EACAjQ,EAAAqM,OAAA4D,GAGAjQ,YCJWmQ,GAAqB,SAAAC,GAChC,OAAAA,GACA,KAASxO,EAAA,EAASyO,MAElB,OAAezO,EAAA,GAAW/oB,MAG1B,KAAS+oB,EAAA,EAASzD,OAElB,OAAeyD,EAAA,GAAW9oB,MAG1B,QAEA,OAAe8oB,EAAA,EAASwO,KAKpBE,GAAO,SAAA9wB,GACX,MAAU,MAAD5E,EAAAC,EAAC01B,MAAA/wB,IAGCgxB,GAAa,SAAAhxB,GACxB,OAAS8E,EAAQ9E,GAAW8wB,GAAO9wB,WAAA71B,OAAoCi4C,EAAA,GAAW/oB,OAAUy3B,GAAO9wB,YAE5F2c,GAAA,SAAA3c,EAAAixB,EAAAC,EAAAC,GACP,OAAA/5C,OAAA8F,OAAA,CACA2/B,WAAA7c,EACA8c,iBAAA9c,EACA12B,KAAA02B,EACAM,SAAA,IACG6wB,GAAA,GAAgB,CACnBnxB,SACA71B,KAAA+mD,EACAD,eAGWG,GAAyB,SAAApxB,EAAAkxB,EAAAC,GACpC,OAAAxU,GAAA3c,EAAAkxB,IAA8C9O,EAAA,GAAW/oB,MAAS+oB,EAAA,EAASyO,MAASzO,EAAA,EAASzD,OAAAuS,EAAAC,IAEtFE,GAAA,mDACIlD,GAAW,SAAAmD,GACtB,IAAAzxB,EAAazE,EAAAC,EAACrI,QAAAs+B,EAAA,QAAApB,MAAAmB,IAEd,SAAAxxB,QAAAqL,QAAA,IAMOqmB,GAAA,SAAAvxB,GACP,IAAMmuB,GAAWnuB,GAOjB,OAAAA,EANA,IAAAH,EAAAG,EAAAkwB,MAAAmB,IAEA,OAAAxxB,QAAAqL,QAAA,EACArL,EAAA,QADA,GAOW2xB,GAA0B,SAAAxxB,EAAA8c,GACrC,GAAMqR,GAAWnuB,GACjB,OAAQumB,EAAA,GAA0B1hB,SAAAiY,GAClCyU,GAAAvxB,GAAA/M,OAAAw+B,sBAE4Br2B,EAAAC,EAACrI,QAAA8pB,EAAA,QAAA7pB,OAAAw+B,oBAEsBrP,EAAA,GAAoBsP,GAAMtP,EAAA,GAAoBuP,GAEpFvP,EAAA,GAAoBsP,IAMtBE,GAAa,SAAAC,EAAAC,GACxB,OAAM12B,EAAAC,EAACiN,MAAAupB,KAAez2B,EAAAC,EAACiN,MAAAwpB,KAIvBD,EAAA/U,mBAAAgV,EAAAhV,kBAAA+U,EAAAhV,aAAAiV,EAAAjV,YAAAgV,EAAA7xB,SAAA8xB,EAAA9xB,SAEW+xB,GAAc,SAAAT,GACzB,IAAAzxB,EAAAyxB,EAAApB,MAAAmB,IAEA,GAAAxxB,QAAAqL,QAAA,GACA,IAAAlL,EAAAH,EAAA,GAEA9iB,EAAA,IAAAowC,SAAAttB,EAAA,IAEA/iB,EAAAqwC,SAAAttB,EAAA,MACAhjB,EAAAswC,SAAAttB,EAAA,IACAmyB,EAAAnyB,EAAA,GACAoyB,EAAApyB,EAAA,GACA,OACAG,SACAkyB,WAAA,IAAAC,KAAAp1C,EAAAD,EAAAD,GACApN,OAAAuiD,EAAA,MAAAA,EAAAP,oBAA8DrP,EAAA,GAAUgQ,IAAOhQ,EAAA,GAAUiQ,UAAA/qD,EACzFgrD,OAAAL,EAAA9E,SAAA8E,GAAA,SAAA3qD,EACA2pD,UAAiB7O,EAAA,EAASrD,QAG1B,OACA/e,OAAAsxB,EACAL,UAAiB7O,EAAA,EAASzD,0CC1FtB4T,GAAS,SAAAC,EAAAroD,GACb,OAASixB,IAACo3B,GAAA7pB,OAAA,SAAA3C,GACV,OAAA77B,GAAA67B,EAAA3pB,aAAAlS,IACGg8B,IAAA,SAAAH,GACH,OAAAA,EAAAkpB,SACGjJ,OAGCwM,GAAS,SAAAD,EAAAroD,GACb,OAASixB,IAACo3B,GAAA7pB,OAAA,SAAA3C,GACV,OAAA77B,GAAA67B,EAAA3pB,aAAAlS,IACGg8B,IAAA,SAAAH,GACH,OAAAA,EAAAkpB,SACGpJ,OAiJC4M,GAAgB,SAAAC,EAAAH,GACpB,IAIAI,EAJmBx3B,EAAAC,EAACsN,OAAA6pB,EAAA,SAAAxsB,GACpB,OAAAA,KAAAlqB,YAAgCsmC,EAAA,EAASrD,QAAW3jB,EAAAC,EAACw3B,SAAA7sB,EAAAkpB,UAGrD/oB,IAAA,SAAAH,GACA,OAAAA,EAAAkpB,SAEA4D,EArLqB,SAAAF,EAAAG,GACrB,gBAAA/8B,GAUA,MATA,EACAg9B,QAAA,SACAh9B,UACA8qB,OAAA,CACA8R,UACAD,KAAcvQ,EAAA,GAAW2Q,OA8KDE,CAAiBL,EAAAD,GAEzC,IACA,OAzJiB,SAAAA,EAAAH,EAAAI,EAAAM,GACjB,IAAAC,EAAAR,IAA0CvQ,EAAA,GAAWgR,kBAAAT,IAA8BvQ,EAAA,GAAWiR,2BAE9FC,EAAmBl4B,EAAAC,EAACsN,OAAA6pB,EAAA,SAAAxsB,GACpB,OAAAA,KAAAlqB,YAAgCsmC,EAAA,EAASrD,QAAW3jB,EAAAC,EAACw3B,SAAA7sB,EAAAkpB,UAGrD4D,EAAAI,EAEA,GAAAC,GAGA,GAFkB/3B,EAAAC,EAACk4B,KAAAX,GAAA1nB,SAAAooB,EAAApoB,OAGnB,OAAA4nB,EAAA,mCAEG,GAAAH,IAAmBvQ,EAAA,GAAWoR,mBAAA,CACjC,IAAAC,EAAoBr4B,EAAAC,EAACqJ,OAAAkuB,EAAA,SAAAjuB,EAAA+uB,EAAAzG,GACrB,IAAA0G,EAAAf,EAAA3F,EAAA,GAEA,QAAA3lD,IAAAqsD,EACA,OAAAhvB,EAGA,IAAAivB,EAAA,CAAAF,EAAAC,GAEAE,EAAiBz4B,EAAAC,EAACyqB,IAAA8N,GAAax4B,EAAAC,EAAC4qB,IAAA2N,GAEhC,SAAA5gD,OAAuBoE,OAAA60B,GAAA,EAAA70B,CAAkButB,GAAA,CAAAkvB,KACpC,IAELC,EAAmB14B,EAAAC,EAACk4B,KAAAX,GAAA1nB,QAAA,GAA+B,IAAD9P,EAAAC,EAACk4B,KAAAE,GAAAvoB,OAEnD6oB,EAA2BC,GAAiBV,GAAApoB,OAAA,EAE5C,IAAA4oB,EACA,OAAAhB,EAAA,gCAGA,GAAAiB,EACA,OAAAjB,EAAA,0DAEG,GAAAH,IAAmBvQ,EAAA,GAAW6R,YAAAtB,IAAwBvQ,EAAA,GAAW8R,cAAA,CACpE,IAAAC,EAAAb,EAAA,GAAApE,OACAkF,EAAAd,EAAA,GAAApE,OACAmF,EAAAf,EAAA,GAAApE,OACAoF,EAAAhB,EAAA,GAAApE,OACAqF,EAAA5B,IAA+BvQ,EAAA,GAAW8R,cAC1CM,EAAA7B,IAA4BvQ,EAAA,GAAW6R,WAEvC,GAAAE,GAAAC,EACA,OAAAtB,EAAA,sBAAA9/C,OAAAohD,EAAA,+CAAAphD,OAAAmhD,EAAA,MACK,GAAAG,GAAAD,EACL,OAAAvB,EAAA,sBAAA9/C,OAAAshD,EAAA,0CAAAthD,OAAAqhD,EAAA,MACK,GAAAG,GAAAH,GAAAF,EACL,OAAArB,EAAA,uBAAA9/C,OAAAmhD,EAAA,+CAAAnhD,OAAAqhD,EAAA,MACK,GAAAE,GAAAF,IAAAF,EACL,OAAArB,EAAA,uBAAA9/C,OAAAmhD,EAAA,2CAAAnhD,OAAAqhD,EAAA,MACK,GAAAD,EAAAD,IAAAE,EAAAC,EACL,OAAAxB,EAAA,wCAAA9/C,OAAAohD,EAAAD,EAAA,qDAAAnhD,OAAAqhD,EAAAC,EAAA,WAEG,GAAA3B,IAAmBvQ,EAAA,GAAWqS,aAGjC,GAFqB,IAADr5B,EAAAC,EAACk4B,KAAAX,GAAA1nB,OAGrB,OAAA4nB,EAAA,iCAEG,GAAAH,IAAmBvQ,EAAA,GAAWsS,kBAAA,CACjC,IAAAC,EAAiBv5B,EAAAC,EAACvI,KAAAwgC,EAAA,SAAAttB,GAClB,OAAAA,EAAA3pB,aAA8B+lC,EAAA,GAAUgQ,MAGxCwC,EAAkBx5B,EAAAC,EAACvI,KAAAwgC,EAAA,SAAAttB,GACnB,OAAAA,EAAA3pB,aAA8B+lC,EAAA,GAAUiQ,OAGxCwC,OAAAvtD,EAEAqtD,GAAAC,IACAC,EAAA/B,EAAA,mCAGA,IAAAgC,EAAAH,EAAAzF,OACA6F,EAAAH,EAAA1F,OAUA,GARS9zB,EAAAC,EAAC25B,SAAAF,IAAsB15B,EAAAC,EAAC25B,SAAAD,KACjCF,EAAA/B,EAAA,oCAGAgC,GAAAC,IACAF,EAAA/B,EAAA,gDAGA+B,EACA,OAAAA,OAEG,GAAAlC,IAAmBvQ,EAAA,GAAW6S,iBAAAtC,IAA6BvQ,EAAA,GAAW8S,gBAAA,CACzE,IAAAC,EAAAxC,IAAyBvQ,EAAA,GAAW6S,gBAWpC,IATuB75B,EAAAC,EAACiT,MAAAskB,EAAA,SAAAN,EAAArF,GACxB,OAAAA,EACA,SAGA,IAAAmI,EAAAxC,EAAA3F,EAAA,GACA,OAAAkI,EAAAC,EAAA9C,EAAA8C,EAAA9C,IAIA,OAAAQ,EAAA,sBAAA9/C,OAAAmiD,EAAA,yCAEG,GAAAxC,IAAmBvQ,EAAA,GAAWiT,yBAAA,CACjC,IAAAC,EAAqBl6B,EAAAC,EAACk6B,KAAA3C,EAAA,GAEtB4C,EAAoBp6B,EAAAC,EAACyqB,IAAAwP,GAAmBl6B,EAAAC,EAAC4qB,IAAAqP,GAEzCG,EAAsBr6B,EAAAC,EAACq6B,KAAA9C,EAAA,GAEvB+C,EAAqBv6B,EAAAC,EAACyqB,IAAA2P,GAAoBr6B,EAAAC,EAAC4qB,IAAAwP,GAE3C,GAAAD,IAAAG,EACA,OAAA7C,EAAA,mCAAA9/C,OAAAwiD,EAAA,mDAAAxiD,OAAA2iD,EAAA,WAEG,GAAAhD,IAAmBvQ,EAAA,GAAWwT,4BAIjC,GAHqBrD,GAASe,EAAalR,EAAA,GAAUiQ,QAChCI,GAASa,EAAalR,EAAA,GAAUgQ,KAGrD,OAAAU,EAAA,yDAEG,GAAAH,IAAmBvQ,EAAA,GAAWyT,iCACXtD,GAASe,EAAalR,EAAA,GAAUiQ,OAEhCI,GAASa,EAAalR,EAAA,GAAUgQ,KAGtD,OAAAU,EAAA,8DAIA,YAcWgD,CAAanD,EAAAH,EAAAI,EAAAE,GACrB,MAAA9H,GACH,OAAA8H,EAAA,oCAAA9/C,OAAAm3C,KAAAnJ,UAAAgK,OC3EI+K,GAAgB,SAAApD,EAAAH,GACpB,IAlHwBI,EAAAG,EAkHxBiD,EAAAxD,EAAArsB,IAAA,SAAAH,GACA,OAAAA,EAAAiwB,SAEAnD,GArHwBF,EAqHoBoD,EArHpBjD,EAqHoBJ,EApH5C,SAAA38B,GAUA,MATA,EACAg9B,QAAA,SACAh9B,UACA8qB,OAAA,CACA8R,UACAD,KAAcvQ,EAAA,GAAc2Q,QAgH5B,IACA,OAzGiB,SAAAJ,EAAAH,EAAAwD,EAAA9C,GAGjB,GAFAP,IAAmCvQ,EAAA,GAAc8T,qBAKjD,GAFkB96B,EAAAC,EAACk4B,KAAAyC,GAAA9qB,SAAAsnB,EAAAtnB,OAGnB,OAAAgoB,EAAA,kCAEG,GAAAP,IAAmBvQ,EAAA,GAAc+T,gBAGpC,GAFoB,IAAD/6B,EAAAC,EAACk4B,KAAAyC,GAAA9qB,OAGpB,OAAAgoB,EAAA,iCAEG,GAAAP,IAAmBvQ,EAAA,GAAcgU,UAAA,CAEpC,IAAAC,EAAuBj7B,EAAAC,EAACi7B,QAAAN,GAExBO,EAA4C,IAA5CF,EAAiCjU,EAAA,GAAWoU,MAAuC,IAAvCH,EAA4BjU,EAAA,GAAWqU,OAAwC,IAAxCJ,EAA6BjU,EAAA,GAAWoU,MAAuC,IAAvCH,EAA4BjU,EAAA,GAAWqU,MAGlKC,EAA4Bt7B,EAAAC,EAACqN,OAAA8pB,EAAA,SAAAxsB,GAC7B,OAAAA,EAAA2wB,cAGAC,EAAgCx7B,EAAAC,EAAC8hB,KAAAuZ,GAEjCG,EAAoBz7B,EAAAC,EAACsN,OAAA+tB,EAAA,SAAA1wB,GACrB,OAAAA,IAAA4wB,IAIAE,EAAAF,EAAAX,SAAuD7T,EAAA,GAAWoU,IAAAK,EAAA,GAAAZ,SAA+B7T,EAAA,GAAWqU,MAAAI,EAAA,GAAAZ,SAAiC7T,EAAA,GAAWqU,KAAAI,EAAA,GAAAZ,SAAgC7T,EAAA,GAAWoU,KAAAK,EAAA,GAAAZ,SAAgC7T,EAAA,GAAWoU,IAE9O,IAAAD,EACA,OAAArD,EAAA,0FAGA,IAAA4D,EACA,OAAA5D,EAAA,gGAEG,GAAAP,IAAmBvQ,EAAA,GAAc2U,OAAA,CAEpC,IAAAC,EAAwB57B,EAAAC,EAACi7B,QAAAN,GAEzBiB,EAA6C,IAA7CD,EAAkC5U,EAAA,GAAWoU,MAAwC,IAAxCQ,EAA6B5U,EAAA,GAAWqU,MAGrFS,EAAuB97B,EAAAC,EAACqN,OAAA8pB,EAAA,SAAAxsB,GACxB,OAAAA,EAAAkpB,SAGAiI,EAA2B/7B,EAAAC,EAAC+7B,MAAAF,EAAA,KAE5BG,EAAkCj8B,EAAAC,EAAC8K,IAAAgxB,EAAA,SAAAnxB,GACnC,OAAAA,EAAAiwB,SAGAqB,EAA0B,IAADl8B,EAAAC,EAACk4B,KAAA8D,GAAAnsB,OAE1B,IAAA+rB,EACA,OAAA/D,EAAA,wFAGA,IAAAoE,EACA,OAAApE,EAAA,yDAEG,GAAAP,IAAmBvQ,EAAA,GAAcmV,KAAA,CAIpC,IAAAC,EAAmBp8B,EAAAC,EAACsN,OAAA6pB,EAAA,SAAAxsB,GACpB,OAAAA,EAAA3pB,aAA8B+lC,EAAA,GAAUiQ,OAGxCoF,EAAkBr8B,EAAAC,EAACsN,OAAA6pB,EAAA,SAAAxsB,GACnB,OAAAA,EAAA3pB,aAA8B+lC,EAAA,GAAUgQ,MAGxCsF,EAAsBt8B,EAAAC,EAAC8K,IAAAqxB,EAAA,SAAAxxB,GACvB,OAAAA,EAAAiwB,SAGA0B,EAAqBv8B,EAAAC,EAAC8K,IAAAsxB,EAAA,SAAAzxB,GACtB,OAAAA,EAAAiwB,SAKA,GAFA,IAAAyB,EAAAxsB,QAAA,IAAAysB,EAAAzsB,QAAAwsB,EAAA,KAAAA,EAAA,IAAAC,EAAA,KAAAA,EAAA,GAGA,OAAAzE,EAAA,yEAIA,YAUW0E,CAAajF,EAAAH,EAAAwD,EAAAlD,GACrB,MAAA9H,GACH,OAAA8H,EAAA,oCAAA9/C,OAAAm3C,KAAAnJ,UAAAgK,OChHW6M,GAAe,SAAAC,GAC1B,IAAAC,EAAAD,GAAA,IAA2BE,GAAA38B,EAAG,CAC9B48B,WAAA,IAwIA,OArIAF,EAAAG,WAAA,UACA/tD,KAAA,QACAguD,QAAA,SAAApF,GACA,OF8K2B,SAAAA,GAC3B,gBAAAqF,EAAAv4B,GACQzE,EAAAC,EAAC0N,IAAAqvB,EAAA,eAET,IAAA5F,EAAA3yB,EACAw4B,EAAgBj9B,EAAAC,EAACqvB,QAAAqI,KAAA,CAAAA,GAEjB5tB,EAAiB/J,EAAAC,EAACqJ,OAAA2zB,EAAA,SAAAlzB,EAAAwtB,GAClB,IAAA2F,EAAuB5F,GAAgBC,EAAAH,GAEvC,cAAA8F,EACAnzB,EAGa/J,EAAAC,EAACroB,OAAAmyB,EAAAmzB,IACT,IAEL,QAAAnzB,EAAA+F,OAAA,KACAktB,EAAA,OAAAjzB,GACA,IEjMaozB,CAAgBxF,IAE7B5tB,QAAA,IAEA4yB,EAAAG,WAAA,UACA/tD,KAAA,QACAguD,QAAA,SAAApF,GACA,ODqG8B,SAAAA,GAC9B,gBAAAyF,EAAA34B,GACQzE,EAAAC,EAAC0N,IAAAyvB,EAAA,eAET,IAAAhG,EAAA3yB,EACAw4B,EAAgBj9B,EAAAC,EAACqvB,QAAAqI,KAAA,CAAAA,GAEjB5tB,EAAiB/J,EAAAC,EAACqJ,OAAA2zB,EAAA,SAAAlzB,EAAAwtB,GAClB,IAAA2F,EAAuBvC,GAAgBpD,EAAAH,GAEvC,cAAA8F,EACAnzB,EAGa/J,EAAAC,EAACroB,OAAAmyB,EAAAmzB,IACT,IAEL,QAAAnzB,EAAA+F,OAAA,KACAstB,EAAA,OAAArzB,GACA,ICxHaszB,CAAmB1F,IAEhC5tB,QAAA,IAEA4yB,EAAAG,WAAA,SACA/tD,KAAA,QACAguD,QAAA,SAAApF,GACA,gBAAA2F,EAAA74B,GACA,IAAAsF,EClC8B,SAAA4tB,GAC9B,gBAAAlzB,GACA,IAAA84B,EAAiBv9B,EAAAC,EAAC8K,IAAAtG,EAAA,SAAAmG,GAClB,OAAAA,EAAA2wB,cAGAiC,EAAqBx9B,EAAAC,EAAC01B,MAAAlxB,EAAA8I,OAAA,SAAA3C,GACtB,OAAAA,EAAAlqB,YAA6BsmC,EAAA,EAASzD,SACjCxY,IAAA,SAAAH,GACL,OAAAA,EAAA2wB,eAGAkC,EAAAh5B,EAAA8I,OAAA,SAAA3C,GACA,OAAAA,EAAAlqB,YAA6BsmC,EAAA,EAASrD,SACjC5Y,IAAA,SAAAH,GACL,OAAAA,EAAA2wB,cAGAmC,EAAA,SAAA9iC,GACA,OACAg9B,QAAA,cACAh9B,UACA8qB,OAAA,CACA8X,aACAC,kBAKA,GAAA9F,IAAgB3Q,EAAA,GAAS2W,mBAAAhG,IAA8B3Q,EAAA,GAAS4W,aAAA,CAChE,IAAAJ,EACA,OAAAE,EAAA,6BAGA,GAAAD,EAAA3tB,OAAA,EACA,OAAA4tB,EAAA,8BAGA,IAAAG,EAAqB79B,EAAAC,EAACyqB,IAAA+S,GAEtB,GAAAD,EAAAK,IAAA,IACA,OAAAH,EAAA,yCAAA9lD,OAAA4lD,EAAAK,SAEK,IAAW7W,EAAA,GAAS8W,SAAW9W,EAAA,GAAS+W,oBAAAt0B,SAAAkuB,IAC7C,GAAW,IAAD33B,EAAAC,EAACk4B,KAAAoF,GAAAztB,OACX,OAAA4tB,EAAA,2BAEK,GAAA/F,IAAkB3Q,EAAA,GAASgX,UAAA,CAChC,GAAW,IAADh+B,EAAAC,EAACk4B,KAAAoF,GAAAztB,OACX,OAAA4tB,EAAA,sCAGA,GAAU19B,EAAAC,EAACyqB,IAAA6S,GAAev9B,EAAAC,EAAC4qB,IAAA0S,KAAA,EAC3B,OAAAG,EAAA,sBAIA,aDvBqBO,CAAmBtG,EAAnBsG,CAAmBx5B,GAExC,cAAAsF,IACAuzB,EAAA,OAAAvzB,GACA,KAMAA,QAAA,IAEA4yB,EAAAG,WAAA,cACA/tD,KAAA,QACAguD,QAAA,SAAApF,GACA,gBAAAuG,EAAAz5B,GACa,OAADzE,EAAAC,EAAC0N,IAAAuwB,EAAA,iBACbA,EAAA,WAGA,IAAA9G,EAAA3yB,EAEA,GAAAkzB,IAAoB3Q,EAAA,GAAemX,WAAA,CACnC,IAAAjG,EAA2Bl4B,EAAAC,EAACsN,OAAA6pB,EAAA,SAAAxsB,GAC5B,OAAAA,KAAAlqB,YAAwCsmC,EAAA,EAASrD,SAGjDya,EAA4Bp+B,EAAAC,EAACsN,OAAA2qB,EAAA,SAAAttB,GAC7B,YAAA1+B,IAAA0+B,EAAAgpB,YAAiDrN,IAAK3b,EAAAgpB,WAAAzlD,OAAuBo4C,IAAK3b,EAAAgpB,WAAAzlD,MAAAykD,YACvE7nB,IAAA,SAAAH,GACX,OAAmB2b,IAAK3b,EAAAgpB,WAAAzlD,MAAAk4C,OAAA,gBAGT,IAADrmB,EAAAC,EAACk4B,KAAAiG,GAAAtuB,QACfouB,EAAA,OAAA5M,KAAA,CACAsG,QAAA,aACAh9B,QAAA,8CAAAhjB,OAAAwmD,EAAArO,KAAA,UACArK,OAAA,CACA0Y,cACA7G,KAAsBvQ,EAAA,GAAe2Q,WAI5B,GAAAA,IAAkB3Q,EAAA,GAAeqX,kBAAA,CAC1C,IAAAC,EAA4Bt+B,EAAAC,EAACsN,OAAA6pB,EAAA,SAAAxsB,GAC7B,OAAAA,KAAAlqB,YAAwCsmC,EAAA,EAASrD,SAGjD4a,EAA6Bv+B,EAAAC,EAACsN,OAAA+wB,EAAA,SAAA1zB,GAC9B,YAAA1+B,IAAA0+B,EAAAgpB,YAAiDrN,IAAK3b,EAAAgpB,WAAAzlD,OAAuBo4C,IAAK3b,EAAAgpB,WAAAzlD,MAAAykD,YACvE7nB,IAAA,SAAAH,GACX,OAAmB2b,IAAK3b,EAAAgpB,WAAAzlD,MAAAk4C,OAAA,gBAGxB,GAAcrmB,EAAAC,EAACk4B,KAAAoG,GAAAzuB,SAAAwuB,EAAAxuB,OAAA,CAGf,IAAA0uB,EAA8Bx+B,EAAAC,EAACk4B,KAAAmG,EAAAvzB,IAAA,SAAAH,GAC/B,OAAAA,EAAAgpB,YAAAhpB,EAAAgpB,WAAAnS,cAIA7mB,GADA,IAAA4jC,EAAA1uB,OAAA0uB,EAAA,QAAAtyD,GACA,2DACAgyD,EAAA,OAAA5M,KAAA,CACAsG,QAAA,aACAh9B,UACA8qB,OAAA,CACA0Y,YAAAG,EACAhH,KAAsBvQ,EAAA,GAAe2Q,YAI5B,GAAAA,IAAkB3Q,EAAA,GAAeyX,2BAAA,CAC1C,IAAAC,EAAuB1+B,EAAAC,EAACvI,KAAA0/B,EAAA,SAAAxsB,GACxB,OAAAA,EAAAlqB,YAAmCsmC,EAAA,EAASrD,QAAA/Y,EAAAiwB,SAAwB7T,EAAA,GAAWoU,MAG/EuD,EAAwB3+B,EAAAC,EAACvI,KAAA0/B,EAAA,SAAAxsB,GACzB,OAAAA,EAAAlqB,YAAmCsmC,EAAA,EAASrD,QAAA/Y,EAAAiwB,SAAwB7T,EAAA,GAAWqU,OAG/EuD,EAAAF,IAAA9K,gBAAA1nD,EACA2yD,EAAAF,IAAA/K,gBAAA1nD,EAEA0yD,GAAAC,EAUsBtY,IAAKmY,EAAA9K,WAAAzlD,MAAA2wD,QAAAH,EAAA/K,WAAAzlD,OAC3B+vD,EAAA,OAAA5M,KAAA,CACAsG,QAAA,aACAh9B,QAAA,uDACA8qB,OAAA,CACAkZ,gBACAC,iBACAzH,UAhBA8G,EAAA,OAAA5M,KAAA,CACAsG,QAAA,aACAh9B,QAAA,gEACA8qB,OAAA,CACAkZ,gBACAC,iBACAzH,UAgBA,WAAA8G,EAAA,OAAApuB,SAGA/F,QAAA,EACAg1B,WAAA,CACAhwD,KAAA,YAGA4tD,GAEWqC,GAAW,SAAArC,EAAAsC,EAAAx6B,GACtB,OAAS8jB,EAAA,OAxJGr8C,OAwJoB,SAE9Bs8C,EAAAvoB,EAAmBwoB,KAAA,SAAAC,IACrB,IAAA4U,EAAA4B,EAAAC,EACA,OAAW3W,EAAAvoB,EAAmB2oB,KAAA,SAAAC,GAC9B,OACA,OAAAA,EAAAC,KAAAD,EAAAE,MACA,OAIA,GAHAuU,EAAAX,EAAAI,QAAAkC,GAGA,mBAFAC,EAAA5B,EAAA74B,IAEA,CACAokB,EAAAE,KAAA,EACA,MAGAF,EAAA4D,GAAAyS,EACArW,EAAAE,KAAA,EACA,MAEA,OAEA,OADAF,EAAAE,KAAA,EACAmW,EAEA,OACArW,EAAA4D,GAAA5D,EAAAuC,KAEA,OAIA,OAHA+T,EAAAtW,EAAA4D,QAEAvgD,EACA28C,EAAAG,OAAA,UACAmW,QACAxyB,MAAAlI,EACAsF,OAAAuzB,EAAAvzB,OACAq1B,kBALAlzD,EAMAkC,OAAAuuD,EAAA0C,WAAA/B,EAAAvzB,QACA4yB,IAAAW,IAGA,QACA,UACA,OAAAzU,EAAAK,SAGKR,OE1HD4W,IAnEG,WACP,IAAAC,EAAA/N,UAAA1hB,OAAA,QAAA5jC,IAAAslD,UAAA,GAAAA,UAAA,QACA,IAAAhB,OAAA,mDAAkE+O,EAAA,gBAG3DC,GA8De,SAAAC,EAAAC,EAAAC,EAAAC,GACtB,IAAArW,EAAWvpB,EAAAC,EAAC4/B,MAAAD,EAAA,CACZ9L,YAAA5nD,EACA0nD,gBAAA1nD,EACA4zD,eAAA5zD,IAEA4nD,EAAAvK,EAAAuK,OACAF,EAAArK,EAAAqK,WACAkM,EAAAvW,EAAAuW,UACA7wB,EAAasZ,EAAA,EAAcgB,EAAA,qCAE3B,OACA9lB,SAAA,iCACAs8B,WAAA/jD,OAAA8F,OAAA,CACAf,WAAA,CACAi/C,MAAAP,GAEAQ,SAAA,CACAC,KAAA,CAAelZ,EAAA,GAASmZ,IAAMnZ,EAAA,GAASoZ,IAAMpZ,EAAA,GAASqZ,SAEtDC,KAAA,CACAC,SAAAb,EAAA5vB,OACA0wB,SAAAd,EAAA5vB,OACA/gC,KAAA,QACA0xD,MAAezgC,EAAAC,EAAC8K,IAAA20B,EAAA,SAAA90B,GAChB,OAtF2B,SAAAoD,EAAA0yB,GAC3B1yB,EAAA2xB,YAAA,IACA9J,EAAA7nB,EAAA6nB,UACA8K,EAAA3yB,EAAA2yB,OACApB,EAAAvxB,EAAAuxB,WACAqB,EAAA,oEAEA/K,IAAoB7O,EAAA,EAASrD,SAC7Bid,EAAA,GAAAhpD,OAA+BoE,OAAA60B,GAAA,EAAA70B,CAAkB4kD,GAAA,0BAGjD,IAAAC,EAAAH,IAA+B1Z,EAAA,GAAS8Z,GA+CxC,OA7CAD,IACAD,EAAA,GAAAhpD,OAA+BoE,OAAA60B,GAAA,EAAA70B,CAAkB4kD,GAAA,kBAGjD,CACA7xD,KAAA,SACA00B,SAAAm9B,EACAb,WAAA,CACA5f,iBAAA,CACApxC,KAAA,UAEAwsD,YAAAsF,EAAA,CACA9xD,KAAA,UACO,CACPgyD,MAAA,EACAhyD,KAAA,UACS,CACTixD,WAAA9zD,KAGAwU,UAAA,CACAw/C,KAAclgC,EAAAC,EAACqvB,QAAAuG,KAAA,CAAAA,IAEf/B,OAAA+B,IAA4B7O,EAAA,EAASrD,OAAA,CACrC50C,KAAA,UACO,CACPixD,WAAA9zD,GAEA2uD,OAAc76B,EAAAC,EAACqvB,QAAAqR,GAAA,CACfT,KAAAS,GACO,CACP5xD,KAAA,UAEA8R,eAAA,CACAq/C,KAAA,CAAelZ,EAAA,GAAc/G,KAAO+G,EAAA,GAAcga,QAGlD9gB,OAAA,CACAnxC,KAAA,UAEAkS,WAAA,CACA++C,MAAAT,KAgCiB0B,CAAgBr2B,EAAA+0B,KAEjCzI,OAAApD,EACAgD,WAAAlD,EACAsN,MAAAvB,EACAgB,OAAAb,IAEK7wB,GAAA,OAYL,ICvHAkyB,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GDuHIC,GAAsB,SAAAr2B,GAC1B,IAAAs2B,EAAgBtjC,EAAAC,EAAC8K,IAAAiC,EAAAu2B,QAAAjD,KAAA,SAAA11B,GACjB,IAAA44B,EAAA,CACA3N,UAAAjrB,EAAAlqB,UACAi/C,YAAA/0B,EAAA2wB,YACAgE,WAAA30B,EAAA3pB,YAGA,OAAA2pB,EAAAk1B,UACA9jD,OAAA8F,OAAA,GAA6B0hD,EAAA,CAC7B7C,OAAA/1B,EAAAk1B,YAAgC9Y,EAAA,GAAoBvtC,KAAQutC,EAAA,GAAWoU,IAAOpU,EAAA,GAAWqU,OAIzFmI,IAGAC,EAAAz2B,EAAAu2B,QAAAG,MAAA,CACA5P,OAAA9mB,EAAAu2B,QAAAG,MAAA5P,OACAF,WAAA5mB,EAAAu2B,QAAAG,MAAA9P,WACAkM,UAAA9yB,EAAAu2B,QAAAG,MAAA5D,WACG,GAWH,OACA6D,UAXoBrE,GAAkBtyB,EAAAu2B,QAAAxiD,WAAAuiD,EAAAt2B,EAAAu2B,QAAAG,MAAAnI,YAAAkI,GAYtCG,WAXA52B,EAAAu2B,QAAAM,cAA4DvE,GAAkBtyB,EAAAu2B,QAAAxiD,WAAAuiD,EAAAv4B,IAAA,SAAA+4B,GAC9E,OAhCAt6B,EAgCAs6B,IA/Ba9jC,EAAAC,EAAC0N,IAAAnE,EAAA,aAgCdxtB,OAAA8F,OAAA,GAA6BgiD,EAAA,CAC7BnD,OAAAmD,EAAAnD,SAA8B3Z,EAAA,GAAWoU,IAAOpU,EAAA,GAAWqU,KAAQrU,EAAA,GAAWoU,MAI9E0I,EAtCA,IAAAt6B,IAuCGwD,EAAAu2B,QAAAG,MAAAnI,YAAAkI,QAAAv3D,IAOQ63D,GAA2B,SAAApH,EAAA3vB,EAAAg3B,GACtC,OAASzb,EAAA,OA5JGr8C,OA4JoB,SAE9Bs8C,EAAAvoB,EAAmBwoB,KAAA,SAAAC,IACrB,IAAAub,EAAApxB,EAAAqxB,EAAAC,EAAAC,EAEA,OAAW5b,EAAAvoB,EAAmB2oB,KAAA,SAAAC,GAC9B,OACA,OAAAA,EAAAC,KAAAD,EAAAE,MACA,OAGA,OAFAkb,EAAsBZ,GAAsBr2B,GAC5C6b,EAAAE,KAAA,EACAwG,QAAAjD,IAAA,CAAgC0S,GAAWrC,EAAAsH,EAAAN,UAAAK,GAAAC,EAAAL,WAAsD5E,GAAWrC,EAAAsH,EAAAL,WAAAI,GAAAzU,QAAAC,aAAAtjD,KAE5G,OAKA,OAJA2mC,EAAAgW,EAAAuC,KACA8Y,EAAoBloD,OAAAqoD,GAAA,EAAAroD,CAAc62B,EAAA,GAClCsxB,EAAAD,EAAA,GACAE,EAAAF,EAAA,GACArb,EAAAG,OAAA,UACAgb,QACAM,KAAA,CACA1R,WAAAwR,MAAAjF,OACAoF,QAAAH,GAEAI,IAAA,CACA5R,WAAAuR,MAAAhF,OACAoF,QAAAJ,KAIA,OACA,UACA,OAAAtb,EAAAK,SAGKR,OC3LE+b,GAAA,CACP73B,KAAA,CACAC,KAAA,SACAqT,OAAA,IACAwkB,WAAA,EACAC,QAAA,EACAC,gBAAA,EACAzjD,UAAe6lC,EAAA,GAAS8Z,GACxB+D,QAAA,SACAC,SAAA,OAEAvB,SAAAnC,GAAA,CACAsC,MAAA,CACAnI,YAAmBvU,EAAA,GAAS8Z,IAE5B//C,WAAgBimC,EAAA,GAAU+d,OAC1BlB,eAAA,EACAvD,KAAA,EACA/E,YAAA,EACA76C,UAAiBsmC,EAAA,EAASzD,OAC1Buc,UAAiB9Y,EAAA,GAAoBvtC,QAEhCuC,OAAA2tB,EAAA,EAAA3tB,CAAeolD,GAAWpa,EAAA,GAAoBvtC,KAAA,CACnDurD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYie,OACxBjpD,OAAA2tB,EAAA,EAAA3tB,CAAeolD,GAAWpa,EAAA,GAAoBztC,MAAA,CACpDyrD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYke,OACxBlpD,OAAA2tB,EAAA,EAAA3tB,CAAeolD,GAAA,sBAAAD,GAAA,GAA4DnlD,OAAA2tB,EAAA,EAAA3tB,CAAemlD,GAAsBna,EAAA,GAAoBvtC,KAAA,SAAA29C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAU1I,IAEAvjC,EAFA6e,EAAA3c,EAAA,GAAAoc,SACA2B,EAAA/d,EAAA,GAAAyb,eAiBA,OAZA3d,EAFAqjC,EACAxkB,EAAA,EACA8J,KAAAI,IAAAlK,EAAAykB,GAEAA,EAGAzkB,EAAA,EACAA,EAEAoB,GAIA,EAAAjgB,EAAA,GAAAA,IACM9lB,OAAA2tB,EAAA,EAAA3tB,CAAemlD,GAAsBna,EAAA,GAAoBztC,MAAA,SAAA69C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAO/D,IAEAvjC,EAFA8e,EAAA5c,EAAA,GAAAqc,SACA0B,EAAA/d,EAAA,GAAAyb,eASA,OALA3d,EADAqjC,EACA1a,KAAAC,IAAA9J,EAAAwkB,GAEA3a,KAAAC,IAAA9J,EAAAmB,IAGA,QAAAjgB,EAAA,EAAAA,IAAA,UAAAA,IACGq/B,KAAAC,KAEInK,GAAA,CAUPrqB,KAAA,CACAC,KAAA,OACAqT,OAAA,IACAwkB,WAAA,EACAC,QAAA,EACAC,gBAAA,EACAzjD,UAAe6lC,EAAA,GAAS8Z,GACxB+D,QAAA,OACAC,SAAA,OAEAvB,SAAAjC,GAAA,CACAoC,MAAA,CACAnI,YAAmBvU,EAAA,GAAS8Z,IAE5B+C,eAAA,EACA9iD,WAAgBimC,EAAA,GAAU+d,OAC1BzE,KAAA,EACA/E,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,KAC5B6I,UAAiB9Y,EAAA,GAAoBvtC,QAEhCuC,OAAA2tB,EAAA,EAAA3tB,CAAeslD,GAAYta,EAAA,GAAoBvtC,KAAA,CACpDurD,SAAA,GACA9jD,aAAkB8lC,EAAA,GAAYie,OACxBjpD,OAAA2tB,EAAA,EAAA3tB,CAAeslD,GAAYta,EAAA,GAAoBztC,MAAA,CACrDyrD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYke,OACxBlpD,OAAA2tB,EAAA,EAAA3tB,CAAeslD,GAAA,sBAAAD,GAAA,GAA8DrlD,OAAA2tB,EAAA,EAAA3tB,CAAeqlD,GAAuBra,EAAA,GAAoBvtC,KAAA,WAC7I,WACMuC,OAAA2tB,EAAA,EAAA3tB,CAAeqlD,GAAuBra,EAAA,GAAoBztC,MAAA,SAAA69C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAQhE,IAAAzgC,EAAAZ,EAAA,GAAAkc,OACAS,EAAA3c,EAAA,GAAAoc,SAEA,GAAApkC,OAAAqJ,OAAA+xC,GAAAtnB,QAAA,EACA,SAGA,IAAAonB,EAAAl7C,OAAAqJ,OAAA+xC,GAAA,GAAAtD,OACAhyB,EAAAkC,EAAA,GAAAyb,eAEA,OAAQmW,GAAahxB,GACrB6lB,KAAAC,IAAA,GAAA5oB,EAAA,KAAAA,EAAA2oB,KAAAC,IAAA,EAAAwM,EAAAp1B,MAEA6e,EAAA,IACA7e,EAAA2oB,KAAAC,IAAA5oB,EAAA6e,IAGA8J,KAAAC,IAAA,GAAA5oB,EAAA,IAAAA,EAAA2oB,KAAAC,IAAA,EAAAwM,EAAAp1B,QAEGu/B,KAAAC,KAEItK,GAAA,CAUPpqB,KAAA,CACAC,KAAA,MACAqT,OAAA,IACAwkB,WAAA,EACAC,QAAA,EACAC,gBAAA,EACAzjD,UAAe6lC,EAAA,GAAS8Z,GACxB+D,QAAA,MACAC,SAAA,OAEAvB,SAAA/B,GAAA,CACAkC,MAAA,CACAnI,YAAmBvU,EAAA,GAAS8Z,IAE5B+C,eAAA,EACA9iD,WAAgBimC,EAAA,GAAU+d,OAC1BzE,KAAA,EACA/E,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,IAC5B8I,UAAiB9Y,EAAA,GAAoBvtC,QAEhCuC,OAAA2tB,EAAA,EAAA3tB,CAAewlD,GAAYxa,EAAA,GAAoBvtC,KAAA,CACpDurD,SAAA,GACA9jD,aAAkB8lC,EAAA,GAAYke,OACxBlpD,OAAA2tB,EAAA,EAAA3tB,CAAewlD,GAAYxa,EAAA,GAAoBztC,MAAA,CACrDyrD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYie,OACxBjpD,OAAA2tB,EAAA,EAAA3tB,CAAewlD,GAAA,sBAAAD,GAAA,GAA8DvlD,OAAA2tB,EAAA,EAAA3tB,CAAeulD,GAAuBva,EAAA,GAAoBvtC,KAAA,WAE7I,WACMuC,OAAA2tB,EAAA,EAAA3tB,CAAeulD,GAAuBva,EAAA,GAAoBztC,MAAA,SAAA69C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAQhE,IAAAzgC,EAAAZ,EAAA,GAAAkc,OAEA,GAAAlkC,OAAAqJ,OAAA+xC,GAAAtnB,QAAA,EACA,SAGA,IAAAonB,EAAAl7C,OAAAqJ,OAAA+xC,GAAA,GAAAtD,OACAhyB,EAAAkC,EAAA,GAAAyb,eAEA,OAAQmW,GAAahxB,GACrB6lB,KAAAC,IAAA,GAAAwM,EAAA,KAAAp1B,EAAA2oB,KAAAC,IAAA,EAAA5oB,EAAAo1B,KAEAzM,KAAAC,IAAA,GAAAwM,EAAA,IAAAp1B,EAAA2oB,KAAAC,IAAA,EAAA5oB,EAAAo1B,OAEGqK,KAAAC,KAEI8D,GAAA,CACP14B,KAAA,CACAC,KAAA,eACAqT,OAAA,KACAwkB,WAAA,EACAC,QAAA,EACAC,gBAAA,EACAzjD,UAAe6lC,EAAA,GAAS4W,aACxBiH,QAAA,eACAC,SAAA,OAEAvB,SAAA7B,GAAA,CACA3gD,WAAgBimC,EAAA,GAAUue,SAC1B1B,eAAA,EACAvD,KAAA,EACA/E,YAAA,IACA76C,UAAiBsmC,EAAA,EAASzD,OAC1Buc,UAAiB9Y,EAAA,GAAoBvtC,MAChC,CACL8hD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,KAC5B6I,UAAiB9Y,EAAA,GAAoBztC,SAEhCyC,OAAA2tB,EAAA,EAAA3tB,CAAe0lD,GAAY1a,EAAA,GAAoBvtC,KAAA,CACpDurD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYie,OACxBjpD,OAAA2tB,EAAA,EAAA3tB,CAAe0lD,GAAY1a,EAAA,GAAoBztC,MAAA,CACrDyrD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYke,OACxBlpD,OAAA2tB,EAAA,EAAA3tB,CAAe0lD,GAAA,SACrBnG,YAAiBvU,EAAA,GAAS4W,aAC1BkC,UAAe9Y,EAAA,GAAc8T,sBACvB9+C,OAAA2tB,EAAA,EAAA3tB,CAAe0lD,GAAA,sBAAAD,GAAA,GAA8DzlD,OAAA2tB,EAAA,EAAA3tB,CAAeylD,GAAuBza,EAAA,GAAoBvtC,KAAA,SAAA29C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAiB7I,IAAA1kB,EAAA3c,EAAA,GAAAoc,SAEA,GAAApkC,OAAAqJ,OAAA+xC,GAAAtnB,QAAA,EACA,SAGA,IACAhO,EADAo1B,EAAAl7C,OAAAqJ,OAAA+xC,GAAA,GAAAtD,OAiBA,OAZAhyB,EAFAqjC,EACAxkB,EAAA,EACA8J,KAAAI,IAAAlK,EAAAykB,EAAA3a,KAAAC,IAAA,EAAA/J,EAAAuW,IAEAzM,KAAAI,IAAA7mB,EAAA,GAAAyb,eAAA2lB,EAAA3a,KAAAC,IAAA,EAAA1mB,EAAA,GAAAyb,eAAAyX,IAGAvW,EAAA,EACAA,EAEA3c,EAAA,GAAAyb,gBAIA,EAAA3d,EAAA,GAAAA,IACM9lB,OAAA2tB,EAAA,EAAA3tB,CAAeylD,GAAuBza,EAAA,GAAoBztC,MAAA,SAAA69C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAQhErhC,EAAA,GAAAkc,OAAA,IACAS,EAAA3c,EAAA,GAAAoc,SACApc,EAAA,GAAAqc,SAEA,GAAArkC,OAAAqJ,OAAA+xC,GAAAtnB,QAAA,EACA,SAGA,IAAAonB,EAAAl7C,OAAAqJ,OAAA+xC,GAAA,GAAAtD,OAEAhyB,EAAA,KAQA,OALAA,EADA6e,EAAA,EACAA,EAEA3c,EAAA,GAAAyb,eAGAgL,KAAAC,IAAA,GAAA5oB,EAAA2oB,KAAAI,IAAA,GAAAqM,EAAAzM,KAAAC,IAAA,EAAAwM,EAAAp1B,KAAA,QAAAA,EAAA,EAAAA,IAAA,UAAAA,MACG2/B,KAAAC,KAEI8D,GAAA,CACP54B,KAAA,CACAC,KAAA,cACAqT,OAAA,KACAwkB,WAAA,EACAC,QAAA,EACAC,gBAAA,EACAzjD,UAAe6lC,EAAA,GAAS4W,aACxBiH,QAAA,cACAC,SAAA,OAEAvB,SAAA3B,GAAA,CACA7gD,WAAgBimC,EAAA,GAAUue,SAC1B1B,eAAA,EACAvD,KAAA,EACA/E,YAAA,IACA76C,UAAiBsmC,EAAA,EAASzD,OAC1Buc,UAAiB9Y,EAAA,GAAoBvtC,MAChC,CACL8hD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,IAC5B8I,UAAiB9Y,EAAA,GAAoBvtC,QAEhCuC,OAAA2tB,EAAA,EAAA3tB,CAAe4lD,GAAY5a,EAAA,GAAoBvtC,KAAA,CACpDurD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYie,OACxBjpD,OAAA2tB,EAAA,EAAA3tB,CAAe4lD,GAAY5a,EAAA,GAAoBztC,MAAA,CACrDyrD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYke,OACxBlpD,OAAA2tB,EAAA,EAAA3tB,CAAe4lD,GAAA,SACrBrG,YAAiBvU,EAAA,GAAS4W,aAC1BkC,UAAe9Y,EAAA,GAAc+T,iBACvB/+C,OAAA2tB,EAAA,EAAA3tB,CAAe4lD,GAAA,sBAAAD,GAAA,GAA8D3lD,OAAA2tB,EAAA,EAAA3tB,CAAe2lD,GAAuB3a,EAAA,GAAoBvtC,KAAA,SAAA29C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAa7I,IAEAvjC,EAFA6e,EAAA3c,EAAA,GAAAoc,SACA2B,EAAA/d,EAAA,GAAAyb,eAiBA,OAZA3d,EAFAqjC,EACAxkB,EAAA,EACA8J,KAAAI,IAAAlK,EAAAykB,GAEA3a,KAAAI,IAAA9I,EAAAqjB,GAGAzkB,EAAA,EACAA,EAEAoB,GAIA,EAAAjgB,EAAA,GAAAA,IACM9lB,OAAA2tB,EAAA,EAAA3tB,CAAe2lD,GAAuB3a,EAAA,GAAoBztC,MAAA,SAAA69C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAQhE,IAEAvjC,EAFA6e,EAAA3c,EAAA,GAAAoc,SACA8W,EAAAl7C,OAAAqJ,OAAA+xC,GAAA,GAAAtD,OASA,OALAhyB,EADA6e,EAAA,EACAA,EAEA3c,EAAA,GAAAyb,eAGAgL,KAAAC,IAAA,GAAA5oB,EAAA2oB,KAAAC,IAAA,EAAAwM,EAAAp1B,KAAA,QAAAA,EAAA,EAAAA,IAAA,UAAAA,KACG6/B,KAAAC,KAEI6D,GAAA,CACP74B,KAAA,CACAC,KAAA,gBACAqT,OAAA,KACAwkB,WAAA,EACAC,QAAA,EACAC,gBAAA,EACAzjD,UAAe6lC,EAAA,GAAS8W,SACxB4H,0BAAA,EACAC,KAAA,sBACAb,SAAA,QAEAvB,SAAAzB,GAAA,CACA4B,MAAA,CACA9P,WAAkB5M,EAAA,GAAeqX,kBACjC9C,YAAmBvU,EAAA,GAAS8W,SAC5BgC,UAAiB9Y,EAAA,GAAc8T,oBAC/BhH,OAAc9M,EAAA,GAAW4e,KAEzB7kD,WAAgBimC,EAAA,GAAUue,SAC1B1B,eAAA,EACAvD,KAAA,EACA/E,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,MACvB,CACLsE,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,QAEvBj7C,OAAA2tB,EAAA,EAAA3tB,CAAe8lD,GAAY9a,EAAA,GAAoBvtC,KAAA,CACpDurD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYie,OACxBjpD,OAAA2tB,EAAA,EAAA3tB,CAAe8lD,GAAY9a,EAAA,GAAoBztC,MAAA,CACrDyrD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYke,OACxBlpD,OAAA2tB,EAAA,EAAA3tB,CAAe8lD,GAAA,sBAAAD,GAAA,GAA8D7lD,OAAA2tB,EAAA,EAAA3tB,CAAe6lD,GAAuB7a,EAAA,GAAoBvtC,KAAA,SAAA29C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAgB7I,IAAAQ,EAAA7pD,OAAAqJ,OAAA+xC,GAEA,GAAAyO,EAAA/1B,OAAA,EACA,SAGA,IAAAipB,EAAA8M,EAAA,GAAA/R,OACAkF,EAAA6M,EAAA,GAAA/R,OAEA,GAAAuR,EACA,OAAA5a,KAAAC,IAAA,EAAAsO,EAAAD,GAGA,IAAAj3B,EAAAkC,EAAA,GAAAyb,eACA7a,EAAAZ,EAAA,GAAAkc,OACAS,EAAA3c,EAAA,GAAAoc,SAEA,OAAQwV,GAAahxB,GACrB6lB,KAAAI,IAAAJ,KAAAC,IAAA,EAAAsO,EAAAD,GAAAtO,KAAAC,IAAA,GAAA5oB,EAAA,KAAAA,EAAA2oB,KAAAC,IAAA,EAAAsO,EAAAl3B,OAEA6e,EAAA,IACA7e,EAAA2oB,KAAAC,IAAA5oB,EAAA6e,IAGA8J,KAAAI,IAAAJ,KAAAC,IAAA,EAAAsO,EAAAD,GAAAtO,KAAAC,IAAA,GAAA5oB,EAAA,IAAAA,EAAA2oB,KAAAC,IAAA,EAAAsO,EAAAl3B,SAEM9lB,OAAA2tB,EAAA,EAAA3tB,CAAe6lD,GAAuB7a,EAAA,GAAoBztC,MAAA,SAAA69C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAahE,IAAAQ,EAAA7pD,OAAAqJ,OAAA+xC,GAEA,GAAAyO,EAAA/1B,OAAA,EACA,SAGA,IAAAipB,EAAA8M,EAAA,GAAA/R,OACAhyB,EAAAkC,EAAA,GAAAyb,eACA7a,EAAAZ,EAAA,GAAAkc,OAEA,GAAQ0V,GAAahxB,GACrB,OAAA6lB,KAAAC,IAAA,GAAA5oB,EAAA,KAAAA,EAAA2oB,KAAAC,IAAA,EAAAqO,EAAAj3B,KAEA,IAAA6e,EAAA3c,EAAA,GAAAoc,SAMA,OAJAO,EAAA,IACA7e,EAAA2oB,KAAAC,IAAA5oB,EAAA6e,IAGA8J,KAAAC,IAAA,GAAA5oB,EAAA,IAAAA,EAAA2oB,KAAAC,IAAA,EAAAqO,EAAAj3B,OAEG+/B,KAAAC,KAEIgE,GAAA,CACPl5B,KAAA,CACAC,KAAA,eACAqT,OAAA,KACAwkB,WAAA,EACAC,QAAA,EACAC,gBAAA,EACAzjD,UAAe6lC,EAAA,GAAS8W,SACxB4H,0BAAA,EACAC,KAAA,sBACAb,SAAA,QAEAvB,SAAAvB,GAAA,CACA0B,MAAA,CACA9P,WAAkB5M,EAAA,GAAeqX,kBACjC9C,YAAmBvU,EAAA,GAAS8W,SAC5BgC,UAAiB9Y,EAAA,GAAc8T,oBAC/BhH,OAAc9M,EAAA,GAAW4e,KAEzB7kD,WAAgBimC,EAAA,GAAUue,SAC1B1B,eAAA,EACAvD,KAAA,EACA/E,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,KACvB,CACLuE,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,OAEvBh7C,OAAA2tB,EAAA,EAAA3tB,CAAegmD,GAAYhb,EAAA,GAAoBvtC,KAAA,CACpDurD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYke,OACxBlpD,OAAA2tB,EAAA,EAAA3tB,CAAegmD,GAAYhb,EAAA,GAAoBztC,MAAA,CACrDyrD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYie,OACxBjpD,OAAA2tB,EAAA,EAAA3tB,CAAegmD,GAAA,sBAAAD,GAAA,GAA8D/lD,OAAA2tB,EAAA,EAAA3tB,CAAe+lD,GAAuB/a,EAAA,GAAoBvtC,KAAA,SAAA29C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAY7I,IAAAQ,EAAA7pD,OAAAqJ,OAAA+xC,GAEA,GAAAyO,EAAA/1B,OAAA,EACA,SAGA,IAAAipB,EAAA8M,EAAA,GAAA/R,OACAkF,EAAA6M,EAAA,GAAA/R,OAEA,GAAAuR,EACA,OAAA5a,KAAAC,IAAA,EAAAqO,EAAAC,GAEA,IAAAl3B,EAAAkC,EAAA,GAAAyb,eACA7a,EAAAZ,EAAA,GAAAkc,OAEA,OAAU0V,GAAahxB,GACvB6lB,KAAAI,IAAAJ,KAAAC,IAAA,EAAAqO,EAAAC,GAAAvO,KAAAC,IAAA,GAAAsO,EAAA,KAAAl3B,EAAA2oB,KAAAC,IAAA,EAAA5oB,EAAAk3B,MAEAvO,KAAAI,IAAAJ,KAAAC,IAAA,EAAAqO,EAAAC,GAAAvO,KAAAC,IAAA,GAAAsO,EAAA,IAAAl3B,EAAA2oB,KAAAC,IAAA,EAAA5oB,EAAAk3B,QAGMh9C,OAAA2tB,EAAA,EAAA3tB,CAAe+lD,GAAuB/a,EAAA,GAAoBztC,MAAA,SAAA69C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAUhE,IAAAQ,EAAA7pD,OAAAqJ,OAAA+xC,GAEA,GAAAyO,EAAA/1B,OAAA,EACA,SAGA,IAAAipB,EAAA8M,EAAA,GAAA/R,OACAhyB,EAAAkC,EAAA,GAAAyb,eACA7a,EAAAZ,EAAA,GAAAkc,OAEA,OAAQ0V,GAAahxB,GACrB6lB,KAAAC,IAAA,GAAAqO,EAAA,KAAAj3B,EAAA2oB,KAAAC,IAAA,EAAA5oB,EAAAi3B,KAEAtO,KAAAC,IAAA,GAAAqO,EAAA,IAAAj3B,EAAA2oB,KAAAC,IAAA,EAAA5oB,EAAAi3B,OAEGgJ,KAAAC,KAEI+D,GAAA,CACPn5B,KAAA,CACAC,KAAA,gBACAqT,OAAA,KACAwkB,WAAA,EACAC,QAAA,EACAC,gBAAA,EACAzjD,UAAe6lC,EAAA,GAAS8W,SACxB+G,QAAA,gBACAC,SAAA,OAEAvB,SAAArB,GAAA,CACAwB,MAAA,CACA9P,WAAkB5M,EAAA,GAAemX,WACjCrK,OAAc9M,EAAA,GAAW6S,gBACzB0B,YAAmBvU,EAAA,GAAS8W,SAC5BgC,UAAiB9Y,EAAA,GAAc8T,qBAE/B/5C,WAAgBimC,EAAA,GAAUue,SAC1B1B,eAAA,EACAvD,KAAA,EACA/E,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,KAC5B6I,UAAiB9Y,EAAA,GAAoBvtC,MAChC,CACL8hD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,KAC5B6I,UAAiB9Y,EAAA,GAAoBztC,SAEhCyC,OAAA2tB,EAAA,EAAA3tB,CAAekmD,GAAYlb,EAAA,GAAoBvtC,KAAA,CACpDurD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYie,OACxBjpD,OAAA2tB,EAAA,EAAA3tB,CAAekmD,GAAYlb,EAAA,GAAoBztC,MAAA,CACrDyrD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYke,OACxBlpD,OAAA2tB,EAAA,EAAA3tB,CAAekmD,GAAA,sBAAAD,GAAA,GAA8DjmD,OAAA2tB,EAAA,EAAA3tB,CAAeimD,GAAuBjb,EAAA,GAAoBvtC,KAAA,SAAA29C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAC7I,WACMrpD,OAAA2tB,EAAA,EAAA3tB,CAAeimD,GAAuBjb,EAAA,GAAoBztC,MAAA,SAAA69C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAehE,IAAAQ,EAAA7pD,OAAAqJ,OAAA+xC,GAEA,GAAAyO,EAAA/1B,OAAA,EACA,SAGA,IAAAipB,EAAA8M,EAAA,GAAA/R,OACAkF,EAAA6M,EAAA,GAAA/R,OACAkS,EAAAvb,KAAAwb,IAAAjN,EAAAD,GAEA,GAAAsM,EACA,OAAAW,EAGA,IAAAlkC,EAAAkC,EAAA,GAAAyb,eACA7a,EAAAZ,EAAA,GAAAkc,OACAS,EAAA3c,EAAA,GAAAoc,SAEA,GAAQwV,GAAahxB,GAAA,CACrB,IAAAxwB,EAAAq2C,KAAAC,IAAA,GAAA5oB,EAAA,KAAAA,EAAA2oB,KAAAC,IAAA,EAAAqO,EAAAj3B,KACA,OAAA2oB,KAAAI,IAAAmb,EAAA5xD,GAEAusC,EAAA,IACA7e,EAAA2oB,KAAAC,IAAA5oB,EAAA6e,IAGA,IAAAulB,EAAAzb,KAAAC,IAAA,GAAA5oB,EAAA,IAAAA,EAAA2oB,KAAAC,IAAA,EAAAqO,EAAAj3B,KAEA,OAAA2oB,KAAAI,IAAAmb,EAAAE,KAEGjE,KAAAC,KAEIiE,GAAA,CACPv5B,KAAA,CACAC,KAAA,eACAqT,OAAA,KACAwkB,WAAA,EACAC,QAAA,EACAC,gBAAA,EACAzjD,UAAe6lC,EAAA,GAAS8W,SACxB+G,QAAA,eACAC,SAAA,OAEAvB,SAAAnB,GAAA,CACAsB,MAAA,CACA9P,WAAkB5M,EAAA,GAAemX,WACjCrK,OAAc9M,EAAA,GAAW8S,gBACzByB,YAAmBvU,EAAA,GAAS8W,SAC5BgC,UAAiB9Y,EAAA,GAAc8T,qBAE/B/5C,WAAgBimC,EAAA,GAAUue,SAC1B1B,eAAA,EACAvD,KAAA,EACA/E,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,IAC5B8I,UAAiB9Y,EAAA,GAAoBvtC,MAChC,CACL8hD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,IAC5B8I,UAAiB9Y,EAAA,GAAoBztC,SAEhCyC,OAAA2tB,EAAA,EAAA3tB,CAAeomD,GAAYpb,EAAA,GAAoBvtC,KAAA,CACpDurD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYke,OACxBlpD,OAAA2tB,EAAA,EAAA3tB,CAAeomD,GAAYpb,EAAA,GAAoBztC,MAAA,CACrDyrD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYie,OACxBjpD,OAAA2tB,EAAA,EAAA3tB,CAAeomD,GAAA,sBAAAD,GAAA,GAA8DnmD,OAAA2tB,EAAA,EAAA3tB,CAAemmD,GAAuBnb,EAAA,GAAoBvtC,KAAA,SAAA29C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAC7I,WACMrpD,OAAA2tB,EAAA,EAAA3tB,CAAemmD,GAAuBnb,EAAA,GAAoBztC,MAAA,SAAA69C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAYhE,IAAAQ,EAAA7pD,OAAAqJ,OAAA+xC,GAEA,GAAAyO,EAAA/1B,OAAA,EACA,SAGA,IAAAipB,EAAA8M,EAAA,GAAA/R,OACAkF,EAAA6M,EAAA,GAAA/R,OACAkS,EAAAvb,KAAAwb,IAAAlN,EAAAC,GAEA,GAAAqM,EACA,OAAAW,EAGA,IAAAlkC,EAAAkC,EAAA,GAAAyb,eACA7a,EAAAZ,EAAA,GAAAkc,OAEA,GAAQ0V,GAAahxB,GAAA,CACrB,IAAAxwB,EAAAq2C,KAAAC,IAAA,GAAA5oB,EAAA,KAAAA,EAAA2oB,KAAAC,IAAA,EAAA5oB,EAAAi3B,KACA,OAAAtO,KAAAI,IAAAmb,EAAA5xD,GAEA,IAAAgyD,EAAA3b,KAAAC,IAAA,GAAA5oB,EAAA,IAAAA,EAAA2oB,KAAAC,IAAA,EAAA5oB,EAAAi3B,KAEA,OAAAtO,KAAAI,IAAAmb,EAAAI,KAEGjE,KAAAC,KAEIiE,GAAA,CACPz5B,KAAA,CACAC,KAAA,iBACAqT,OAAA,KACAwkB,WAAA,EACAC,QAAA,EACAC,gBAAA,EACAzjD,UAAe6lC,EAAA,GAASgX,UACxB6G,QAAA,iBACAC,SAAA,OAEAvB,SAAAjB,GAAA,CACAoB,MAAA,CACA9P,WAAkB5M,EAAA,GAAemX,WACjCrK,OAAc9M,EAAA,GAAWoR,mBACzBmD,YAAmBvU,EAAA,GAASgX,UAC5B8B,UAAiB9Y,EAAA,GAAcgU,WAE/Bj6C,WAAgBimC,EAAA,GAAUue,SAC1B1B,eAAA,EACAvD,KAAA,EACA/E,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,KAC5B6I,UAAiB9Y,EAAA,GAAoBvtC,MAChC,CACL8hD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,KAC5B6I,UAAiB9Y,EAAA,GAAoBztC,OAChC,CACLgiD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,KAC5B6I,UAAiB9Y,EAAA,GAAoBvtC,QAEhCuC,OAAA2tB,EAAA,EAAA3tB,CAAesmD,GAAatb,EAAA,GAAoBvtC,KAAA,CACrDurD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYie,OACxBjpD,OAAA2tB,EAAA,EAAA3tB,CAAesmD,GAAatb,EAAA,GAAoBztC,MAAA,CACtDyrD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYke,OACxBlpD,OAAA2tB,EAAA,EAAA3tB,CAAesmD,GAAA,sBAAAD,GAAA,GAAgErmD,OAAA2tB,EAAA,EAAA3tB,CAAeqmD,GAAwBrb,EAAA,GAAoBvtC,KAAA,SAAA29C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAChJ,WACMrpD,OAAA2tB,EAAA,EAAA3tB,CAAeqmD,GAAwBrb,EAAA,GAAoBztC,MAAA,SAAA69C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAEjE,IAAAQ,EAAA7pD,OAAAqJ,OAAA+xC,GAEA,GAAAyO,EAAA/1B,OAAA,EACA,SAGA,IAAAipB,EAAA8M,EAAA,GAAA/R,OACAkF,EAAA6M,EAAA,GAAA/R,OACA,OAAArJ,KAAAwb,IAAAjN,EAAAD,KACGsJ,KAAAC,KAEIgE,GAAA,CACP15B,KAAA,CACAC,KAAA,gBACAqT,OAAA,KACAwkB,WAAA,EACAC,QAAA,EACAC,gBAAA,EACAzjD,UAAe6lC,EAAA,GAASgX,UACxB6G,QAAA,gBACAC,SAAA,OAEAvB,SAAAf,GAAA,CACAkB,MAAA,CACA9P,WAAkB5M,EAAA,GAAemX,WACjCrK,OAAc9M,EAAA,GAAWoR,mBACzBmD,YAAmBvU,EAAA,GAASgX,UAC5B8B,UAAiB9Y,EAAA,GAAcgU,WAE/Bj6C,WAAgBimC,EAAA,GAAUue,SAC1B1B,eAAA,EACAvD,KAAA,EACA/E,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,IAC5B8I,UAAiB9Y,EAAA,GAAoBvtC,MAChC,CACL8hD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,IAC5B8I,UAAiB9Y,EAAA,GAAoBztC,OAChC,CACLgiD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,IAC5B8I,UAAiB9Y,EAAA,GAAoBvtC,QAEhCuC,OAAA2tB,EAAA,EAAA3tB,CAAewmD,GAAaxb,EAAA,GAAoBvtC,KAAA,CACrDurD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYke,OACxBlpD,OAAA2tB,EAAA,EAAA3tB,CAAewmD,GAAaxb,EAAA,GAAoBztC,MAAA,CACtDyrD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYie,OACxBjpD,OAAA2tB,EAAA,EAAA3tB,CAAewmD,GAAA,sBAAAD,GAAA,GAAgEvmD,OAAA2tB,EAAA,EAAA3tB,CAAeumD,GAAwBvb,EAAA,GAAoBvtC,KAAA,SAAA29C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAChJ,WACMrpD,OAAA2tB,EAAA,EAAA3tB,CAAeumD,GAAwBvb,EAAA,GAAoBztC,MAAA,SAAA69C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAEjE,IAAAQ,EAAA7pD,OAAAqJ,OAAA+xC,GAEA,GAAAyO,EAAA/1B,OAAA,EACA,SAGA,IAAAipB,EAAA8M,EAAA,GAAA/R,OACAkF,EAAA6M,EAAA,GAAA/R,OACA,OAAArJ,KAAAwb,IAAAlN,EAAAC,KACGuJ,KAAAC,KAEI+D,GAAA,CACP35B,KAAA,CACAC,KAAA,WACAqT,OAAA,KACAwkB,WAAA,EACAC,QAAA,EACAC,gBAAA,EACAzjD,UAAe6lC,EAAA,GAAS8W,SACxB+G,QAAA,WACAC,SAAA,OAEAvB,SAAAb,GAAA,CACA3hD,WAAgBimC,EAAA,GAAUue,SAC1B1B,eAAA,EACAvD,KAAA,EACA/E,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,KAC5B6I,UAAiB9Y,EAAA,GAAoBvtC,MAChC,CACL8hD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,IAC5B8I,UAAiB9Y,EAAA,GAAoBvtC,QAEhCuC,OAAA2tB,EAAA,EAAA3tB,CAAe0mD,GAAa1b,EAAA,GAAoBvtC,KAAA,CACrDurD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYwf,aACxBxqD,OAAA2tB,EAAA,EAAA3tB,CAAe0mD,GAAa1b,EAAA,GAAoBztC,MAAA,CACtDyrD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYwf,aACxBxqD,OAAA2tB,EAAA,EAAA3tB,CAAe0mD,GAAA,SACrB9O,WAAgB5M,EAAA,GAAemX,WAC/BrK,OAAY9M,EAAA,GAAWqS,YACvBkC,YAAiBvU,EAAA,GAAS8W,SAC1BgC,UAAe9Y,EAAA,GAAc+T,iBACvB/+C,OAAA2tB,EAAA,EAAA3tB,CAAe0mD,GAAA,sBAAAD,GAAA,GAAgEzmD,OAAA2tB,EAAA,EAAA3tB,CAAeymD,GAAwBzb,EAAA,GAAoBvtC,KAAA,SAAA29C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAChJ,WACMrpD,OAAA2tB,EAAA,EAAA3tB,CAAeymD,GAAwBzb,EAAA,GAAoBztC,MAAA,SAAA69C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAUjE,IAAAQ,EAAA7pD,OAAAqJ,OAAA+xC,GAEA,GAAAyO,EAAA/1B,QAAA,EACA,SAGA,IAAA22B,EAAAZ,EAAA,GAAA/R,OACAhyB,EAAAkC,EAAA,GAAAyb,eACA7a,EAAAZ,EAAA,GAAAkc,OAEA,GAAQ0V,GAAahxB,GACrB,OAAA6lB,KAAAC,IAAAD,KAAAC,IAAA,GAAA5oB,EAAA,IAAA2oB,KAAAC,IAAA,EAAA+b,EAAA3kC,IAAA2oB,KAAAC,IAAA,GAAA+b,EAAA,IAAAhc,KAAAC,IAAA,EAAA5oB,EAAA2kC,KAEA,IAAA9lB,EAAA3c,EAAA,GAAAoc,SAMA,OAJAO,EAAA,IACA7e,EAAA2oB,KAAAC,IAAA5oB,EAAA6e,IAGA8J,KAAAC,IAAAD,KAAAC,IAAA,GAAA5oB,EAAA,GAAA2oB,KAAAC,IAAA,EAAA+b,EAAA3kC,IAAA2oB,KAAAC,IAAA,GAAA+b,EAAA,GAAAhc,KAAAC,IAAA,EAAA5oB,EAAA2kC,OAEGhE,KAAAC,KAEIgE,GAAA,CACP95B,KAAA,CACAC,KAAA,WACAqT,OAAA,KACAwkB,WAAA,EACAC,QAAA,EACAC,gBAAA,EACAzjD,UAAe6lC,EAAA,GAAS8W,SACxB+G,QAAA,WACAC,SAAA,OAEAvB,SAAAX,GAAA,CACA7hD,WAAgBimC,EAAA,GAAUue,SAC1B1B,eAAA,EACAvD,KAAA,EACA/E,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,KAC5B6I,UAAiB9Y,EAAA,GAAoBvtC,MAChC,CACL8hD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,IAC5B8I,UAAiB9Y,EAAA,GAAoBvtC,QAEhCuC,OAAA2tB,EAAA,EAAA3tB,CAAe4mD,GAAa5b,EAAA,GAAoBvtC,KAAA,CACrDurD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYwf,aACxBxqD,OAAA2tB,EAAA,EAAA3tB,CAAe4mD,GAAa5b,EAAA,GAAoBztC,MAAA,CACtDyrD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYwf,aACxBxqD,OAAA2tB,EAAA,EAAA3tB,CAAe4mD,GAAA,SACrBhP,WAAgB5M,EAAA,GAAemX,WAC/BrK,OAAY9M,EAAA,GAAWsS,kBACvBiC,YAAiBvU,EAAA,GAAS8W,SAC1BgC,UAAe9Y,EAAA,GAAc+T,iBACvB/+C,OAAA2tB,EAAA,EAAA3tB,CAAe4mD,GAAA,sBAAAD,GAAA,GAAgE3mD,OAAA2tB,EAAA,EAAA3tB,CAAe2mD,GAAwB3b,EAAA,GAAoBvtC,KAAA,SAAA29C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAChJ,WACMrpD,OAAA2tB,EAAA,EAAA3tB,CAAe2mD,GAAwB3b,EAAA,GAAoBztC,MAAA,SAAA69C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAUjE,IAAAQ,EAAA7pD,OAAAqJ,OAAA+xC,GAEA,GAAAyO,EAAA/1B,OAAA,EACA,SAGA,IAAAipB,EAAA8M,EAAA,GAAA/R,OACAkF,EAAA6M,EAAA,GAAA/R,OACAhyB,EAAAkC,EAAA,GAAAyb,eACA7a,EAAAZ,EAAA,GAAAkc,OAEA,GAAQ0V,GAAahxB,GACrB,OAAA6lB,KAAAC,IAAAD,KAAAC,IAAA,GAAA5oB,EAAA,IAAA2oB,KAAAC,IAAA,EAAAqO,EAAAj3B,IAAA2oB,KAAAC,IAAA,GAAAsO,EAAA,IAAAvO,KAAAC,IAAA,EAAA5oB,EAAAk3B,KAEA,IAAArY,EAAA3c,EAAA,GAAAoc,SAMA,OAJAO,EAAA,IACA7e,EAAA2oB,KAAAC,IAAA5oB,EAAA6e,IAGA8J,KAAAC,IAAAD,KAAAC,IAAA,GAAA5oB,EAAA,GAAA2oB,KAAAC,IAAA,EAAAqO,EAAAj3B,IAAA2oB,KAAAC,IAAA,GAAAsO,EAAA,GAAAvO,KAAAC,IAAA,EAAA5oB,EAAAk3B,OAEG2J,KAAAC,KAEI+D,GAAA,CACP/5B,KAAA,CACAC,KAAA,cACAqT,OAAA,KACAwkB,WAAA,EACAC,QAAA,EACAC,gBAAA,EACAzjD,UAAe6lC,EAAA,GAAS+W,mBACxB8G,QAAA,cACAC,SAAA,OAEAvB,SAAAT,GAAA,CACA/hD,WAAgBimC,EAAA,GAAUue,SAC1B1B,eAAA,EACAvD,KAAA,EACA/E,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,KAC5B6I,UAAiB9Y,EAAA,GAAoBvtC,MAChC,CACL8hD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,KAC5B6I,UAAiB9Y,EAAA,GAAoBztC,OAChC,CACLgiD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,KAC5B6I,UAAiB9Y,EAAA,GAAoBztC,OAChC,CACLgiD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,KAC5B6I,UAAiB9Y,EAAA,GAAoBvtC,QAEhCuC,OAAA2tB,EAAA,EAAA3tB,CAAe8mD,GAAa9b,EAAA,GAAoBvtC,KAAA,CACrDurD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYie,OACxBjpD,OAAA2tB,EAAA,EAAA3tB,CAAe8mD,GAAa9b,EAAA,GAAoBztC,MAAA,CACtDyrD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYke,OACxBlpD,OAAA2tB,EAAA,EAAA3tB,CAAe8mD,GAAA,SACrBlP,WAAgB5M,EAAA,GAAemX,WAC/BrK,OAAA,CAAa9M,EAAA,GAAW6S,gBAAkB7S,EAAA,GAAWiT,0BACrDsB,YAAiBvU,EAAA,GAAS+W,mBAC1B+B,UAAe9Y,EAAA,GAAc2U,SACvB3/C,OAAA2tB,EAAA,EAAA3tB,CAAe8mD,GAAA,sBAAAD,GAAA,GAAgE7mD,OAAA2tB,EAAA,EAAA3tB,CAAe6mD,GAAwB7b,EAAA,GAAoBvtC,KAAA,SAAA29C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAChJ,WACMrpD,OAAA2tB,EAAA,EAAA3tB,CAAe6mD,GAAwB7b,EAAA,GAAoBztC,MAAA,SAAA69C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAEjE,IAAAQ,EAAA7pD,OAAAqJ,OAAA+xC,GAEA,GAAAyO,EAAA/1B,OAAA,EACA,SAGA,IAAAipB,EAAA8M,EAAA,GAAA/R,OACAkF,EAAA6M,EAAA,GAAA/R,OACA,OAAArJ,KAAAwb,IAAAjN,EAAAD,KACG8J,KAAAC,KAEI8D,GAAA,CACPh6B,KAAA,CACAC,KAAA,aACAqT,OAAA,KACAwkB,WAAA,EACAC,QAAA,EACAC,gBAAA,EACAzjD,UAAe6lC,EAAA,GAAS+W,mBACxB8G,QAAA,aACAC,SAAA,OAEAvB,SAAAP,GAAA,CACAjiD,WAAgBimC,EAAA,GAAUue,SAC1B1B,eAAA,EACAH,MAAA,CACA9P,WAAkB5M,EAAA,GAAemX,WACjCrK,OAAA,CAAe9M,EAAA,GAAW8S,gBAAkB9S,EAAA,GAAWiT,0BACvDsB,YAAmBvU,EAAA,GAAS+W,mBAC5B+B,UAAiB9Y,EAAA,GAAc2U,QAE/B2E,KAAA,EACA/E,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,IAC5B8I,UAAiB9Y,EAAA,GAAoBvtC,MAChC,CACL8hD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,IAC5B8I,UAAiB9Y,EAAA,GAAoBztC,OAChC,CACLgiD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,IAC5B8I,UAAiB9Y,EAAA,GAAoBztC,OAChC,CACLgiD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,IAC5B8I,UAAiB9Y,EAAA,GAAoBvtC,QAEhCuC,OAAA2tB,EAAA,EAAA3tB,CAAegnD,GAAahc,EAAA,GAAoBvtC,KAAA,CACrDurD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYke,OACxBlpD,OAAA2tB,EAAA,EAAA3tB,CAAegnD,GAAahc,EAAA,GAAoBztC,MAAA,CACtDyrD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYie,OACxBjpD,OAAA2tB,EAAA,EAAA3tB,CAAegnD,GAAA,sBAAAD,GAAA,GAAgE/mD,OAAA2tB,EAAA,EAAA3tB,CAAe+mD,GAAwB/b,EAAA,GAAoBvtC,KAAA,SAAA29C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAChJ,WACMrpD,OAAA2tB,EAAA,EAAA3tB,CAAe+mD,GAAwB/b,EAAA,GAAoBztC,MAAA,SAAA69C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAEjE,IAAAQ,EAAA7pD,OAAAqJ,OAAA+xC,GAEA,GAAAyO,EAAA/1B,OAAA,EACA,SAGA,IAAAipB,EAAA8M,EAAA,GAAA/R,OACAkF,EAAA6M,EAAA,GAAA/R,OACA,OAAArJ,KAAAwb,IAAAlN,EAAAC,KACG+J,KAAAC,KAEIlK,GAAA,CACPlsB,KAAA,CACAC,KAAA,iBACAqT,OAAA,KACAwkB,WAAA,EACAC,QAAA,EACAC,gBAAA,EACAzjD,UAAe6lC,EAAA,GAAS+W,mBACxB8G,QAAA,iBACAC,SAAA,OAEAvB,SAAAL,GAAA,CACAniD,WAAgBimC,EAAA,GAAUue,SAC1B1B,eAAA,EACAH,MAAA,CACA9P,WAAkB5M,EAAA,GAAemX,WACjCrK,OAAA,CAAe9M,EAAA,GAAW8R,cAAgB9R,EAAA,GAAWiT,yBAA2BjT,EAAA,GAAW6f,qBAC3FtL,YAAmBvU,EAAA,GAAS+W,mBAC5B+B,UAAiB9Y,EAAA,GAAcmV,MAE/BmE,KAAA,EACA/E,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,KAC5B6I,UAAiB9Y,EAAA,GAAoBztC,OAChC,CACLgiD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,KAC5B6I,UAAiB9Y,EAAA,GAAoBvtC,MAChC,CACL8hD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,IAC5B8I,UAAiB9Y,EAAA,GAAoBvtC,MAChC,CACL8hD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,IAC5B8I,UAAiB9Y,EAAA,GAAoBztC,SAEhCyC,OAAA2tB,EAAA,EAAA3tB,CAAeknD,GAAalc,EAAA,GAAoBvtC,KAAA,CACrDurD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYwf,aACxBxqD,OAAA2tB,EAAA,EAAA3tB,CAAeknD,GAAalc,EAAA,GAAoBztC,MAAA,CACtDyrD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYwf,aACxBxqD,OAAA2tB,EAAA,EAAA3tB,CAAeknD,GAAA,sBAAAD,GAAA,GAAgEjnD,OAAA2tB,EAAA,EAAA3tB,CAAeinD,GAAwBjc,EAAA,GAAoBvtC,KAAA,SAAA29C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAChJ,WACMrpD,OAAA2tB,EAAA,EAAA3tB,CAAeinD,GAAwBjc,EAAA,GAAoBztC,MAAA,SAAA69C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAEjE,IAAAQ,EAAA7pD,OAAAqJ,OAAA+xC,GAEA,GAAAyO,EAAA/1B,OAAA,EACA,SAGA,IAAAipB,EAAA8M,EAAA,GAAA/R,OACAkF,EAAA6M,EAAA,GAAA/R,OACA,OAAArJ,KAAAwb,IAAAlN,EAAAC,KACGiK,KAAAC,KAEIrK,GAAA,CACPjsB,KAAA,CACAC,KAAA,cACAqT,OAAA,KACAwkB,WAAA,EACAC,QAAA,EACAC,gBAAA,EACAzjD,UAAe6lC,EAAA,GAAS+W,mBACxB8G,QAAA,cACAC,SAAA,OAEAvB,SAAAH,GAAA,CACAriD,WAAgBimC,EAAA,GAAUue,SAC1B1B,eAAA,EACAH,MAAA,CACA9P,WAAkB5M,EAAA,GAAemX,WACjCrK,OAAA,CAAe9M,EAAA,GAAW6R,WAAa7R,EAAA,GAAWiT,yBAA2BjT,EAAA,GAAW6f,qBACxFtL,YAAmBvU,EAAA,GAAS+W,mBAC5B+B,UAAiB9Y,EAAA,GAAcmV,MAE/BmE,KAAA,EACA/E,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,KAC5B6I,UAAiB9Y,EAAA,GAAoBztC,OAChC,CACLgiD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUiQ,KAC5B6I,UAAiB9Y,EAAA,GAAoBvtC,MAChC,CACL8hD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,IAC5B8I,UAAiB9Y,EAAA,GAAoBvtC,MAChC,CACL8hD,YAAA,EACA76C,UAAiBsmC,EAAA,EAASrD,OAC1B1iC,WAAkB+lC,EAAA,GAAUgQ,IAC5B8I,UAAiB9Y,EAAA,GAAoBztC,SAEhCyC,OAAA2tB,EAAA,EAAA3tB,CAAeonD,GAAapc,EAAA,GAAoBvtC,KAAA,CACrDurD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYwf,aACxBxqD,OAAA2tB,EAAA,EAAA3tB,CAAeonD,GAAapc,EAAA,GAAoBztC,MAAA,CACtDyrD,SAAA,EACA9jD,aAAkB8lC,EAAA,GAAYwf,aACxBxqD,OAAA2tB,EAAA,EAAA3tB,CAAeonD,GAAA,sBAAAD,GAAA,GAAgEnnD,OAAA2tB,EAAA,EAAA3tB,CAAemnD,GAAwBnc,EAAA,GAAoBvtC,KAAA,SAAA29C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAChJ,WACMrpD,OAAA2tB,EAAA,EAAA3tB,CAAemnD,GAAwBnc,EAAA,GAAoBztC,MAAA,SAAA69C,EAAApzB,EAAAmhC,EAAAC,EAAAC,GAEjE,IAAAQ,EAAA7pD,OAAAqJ,OAAA+xC,GAEA,GAAAyO,EAAA/1B,OAAA,EACA,SAGA,IAAAipB,EAAA8M,EAAA,GAAA/R,OACAkF,EAAA6M,EAAA,GAAA/R,OACA,OAAArJ,KAAAwb,IAAAlN,EAAAC,KACGmK,KAAAC,KAgHI0D,GAAA,CAAArC,GAAAxN,GAAAD,GAAA+O,GAAAN,GAAAU,GAAAL,GAAAS,GAAAG,GAAApB,GAAAE,GAAAa,GAAAC,GAAAK,GAAAC,GAAA9N,GAAAD,IACAkO,GAAA,CAAA9P,GAAAD,GAAA+O,GAAAN,GAAAU,GAAAL,GAAAS,GAAAG,GAAAL,GAAAC,GAAAK,GAAAC,GAAA9N,GAAAD,ICr3CAmO,GAAA,CACPp6B,KAAA,CACAC,KAAA,mFCWA,SAAAo6B,GAAAp5B,GACA,YAAA3hC,IAAA2hC,GAIS0Y,EAAAtmB,EAAKgnC,QAAAp5B,GAVd0Y,EAAAtmB,EAAKwxB,OAAQC,EAAAzxB,GACbjkB,OAAAkrD,GAAA,kBAAAlrD,CAAkBmrD,IAClB5gB,EAAAtmB,EAAKwxB,OAAQ2V,GAAAnnC,GACbsmB,EAAAtmB,EAAKwxB,OAAQ4V,GAAApnC,GAUN,IAAIqnC,GAAwB,SAAAn5D,GACnC,IAAAo5D,EAAWvrD,OAAAkrD,GAAA,aAAAlrD,CAAYwrD,IACvBC,EAAAR,GAAA94D,KAAAq4C,SAAAr4C,GAAA,IAAA4oD,KACA2Q,EAAAH,EAAuBvrD,OAAAkrD,GAAA,kBAAAlrD,CAAkBA,OAAA2rD,GAAA,kBAAA3rD,CAAiByrD,MAC1D,OAASlhB,IAAKmhB,IAWHE,GAAiB,SAAAz5D,GAE5B,IAAAm4C,EAAkBC,EAAAtmB,EAAKgnC,QAAA94D,KAAAq4C,SAAAr4C,EACvB05D,EAZ4B,SAAA15D,EAAA25D,EAAAC,GAC5B,IAAAC,EAAwBzhB,IAAKp4C,QAAA,GAE7B85D,EAAuB1hB,IAAKyhB,GAAAvmD,IAAAqmD,GAE5BI,EAAAD,EAAAE,SAAAH,GAAAD,EAAA,EAAAA,EAEA,OAAAE,EAAAvsB,IAAAwsB,EAAA,UAK0BE,CAAiB9hB,EAAA,KAC3C,OAASC,IAAKD,GAAA+hB,OAAAR,EAAA,QAAgD7gB,EAAA,GAAcshB,QAAWthB,EAAA,GAAcuhB,QAE1FC,GAAgB,SAAAC,GAC3B,IAAAt6D,EAAao4C,IAAKkiB,EAAA1R,MAAAvQ,SAClBkiB,EAAA,MAAAD,EAAAE,oBAAA,OAAAF,EAAAE,oBAAA,OAAAF,EAAAE,oBAAAF,EAAAE,mBAAAl/B,SAAA,SAAAg/B,EAAAE,mBAAAl/B,SAAA,aAAAg/B,EAAAE,mBACAC,EAAA,iBAAAH,EAAAE,mBACA,OAAA3sD,OAAA8F,OAAA,GAAyB2mD,EAAA,CACzBt6D,OACAY,KAAA25D,EAAqB1hB,EAAA,GAAcuhB,OAAAK,EAAwB5hB,EAAA,GAAc6hB,UAAa7hB,EAAA,GAAcshB,QACpGQ,qBAAAL,EAAAM,KACAtnB,WAAAgnB,EAAAO,cAGWC,GAAY,SAAA96D,EAAAszC,EAAAqnB,GACvB,OACA36D,OACAY,KAAU64D,GAAiBz5D,GAC3B26D,wBAAkD9hB,EAAA,GAAoBsP,GACtE7U,eAGWynB,GAAO,SAAA/6D,GAClB,OAAA84D,GAAA94D,KAAiCo4C,IAAKp4C,IAAAk4C,OAAA,gBAE3B8iB,GAAa,SAAAh7D,GACxB,OAASo4C,IAAKp4C,GAAA,IAAA4oD,MAAAjG,IAAA,UAAAA,IAAA,YAAAA,IAAA,aAEHsY,GAAkB,SAAAj7D,EAAAm/C,EAAAC,GAC7B,GAAAp/C,EAAA,CACA,IAAA0/B,EAAY0Y,IAAKp4C,GACjB,OAAA0/B,EAAAixB,QAAAxR,EAAA,SAAAzf,EAAAs6B,SAAA5a,EAAA,SAAA1f,EAAAw6B,OAAA/a,EAAA,SAAAzf,EAAAw6B,OAAA9a,EAAA,QAGA,UAEW8b,GAAsB,SAAAl7D,EAAAm/C,EAAAC,GACjC,GAAAp/C,EAAA,CACA,IAAA0/B,EAAY0Y,IAAKp4C,GACjB,OAAA0/B,EAAAixB,QAAAxR,EAAA,SAAAzf,EAAAs6B,SAAA5a,EAAA,QAGA,UAEW+b,GAAQ,SAAAC,EAAAp7D,GACnB,IAAAq7D,EAAiBjjB,EAAAtmB,EAAKgnC,QAAA94D,KAAAq4C,SAAAr4C,EACtB,QAAAo7D,GAAgBhjB,IAAKgjB,GAAApB,SAAAqB,EAAA,SAEVC,GAAS,WACpB,OAASljB,IAAK,IAAAwQ,MAAA2S,KAAA,GAAAljB,UAEHmjB,GAAO,SAAAJ,GAClB,QAAAA,GAAgBhjB,IAAKgjB,GAAAlB,OAAcoB,KAAS,SAGrCjC,GAAAoC,KAAAC,iBAAAC,kBAAAtC,SCrFAuC,GAA4BpT,GACxBqT,GAAkB,SAAAC,GAC7B,OAAO,IAADjqC,EAAAC,EAACiN,MAAA+8B,EAAAhpD,YACI+lC,EAAA,EAASrD,OACPiS,GAAaqU,EAAA9pB,kBACf6G,EAAA,EAASyO,MAETzO,EAAA,EAASzD,QAGT2mB,GAAY,SAAAC,GACvB,IAAAzoB,EAAAyoB,EAAAzoB,iBACAoV,EAAAqT,EAAArT,WACAyI,EAAA4K,EAAA5K,WACArI,EAAAiT,EAAAjT,OACAkT,EAAAD,EAAAC,iBAEA,QAAAl+D,IAAA4qD,QAAA5qD,IAAAgrD,QAAAhrD,IAAAqzD,EACA,OAAA7d,EAGA,IAAA2oB,EAAA9K,IAA6BvY,EAAA,GAAUgQ,IAAA,QACvCvV,EAAAC,EACAD,EAAezhB,EAAAC,EAACrI,QAAA8pB,EAAA,QAEVkU,GAAalU,IAEnBoV,EAAAgS,uBAA4C9hB,EAAA,GAAoBsP,IAAA,UAAA7U,IAChEA,EAAA,GAAA7pC,OAAA6pC,EAAA,MAIA,IAAAgmB,EAAgBlhB,IAAKuQ,EAAA3oD,MAAAk4C,OAAA,UAErBikB,EAAA,IAAApT,EAEA,SAAAt/C,OADAwyD,EAAA,QACAxyD,OAAA6pC,EAAA,KAAA7pC,OAAA6vD,GAAA7vD,OAAAyyD,GAAAzyD,OAAA0yD,IAEWC,GAAiB,SAAA7oB,EAAAuoB,GAC5B,IAAArW,EAAAqW,EAAArW,WACA3yC,EAAAgpD,EAAAhpD,WACA6yC,EAAAmW,EAAAnW,OAiBA,OAdA7yC,GAAAgpD,EAAAvpD,YAAuCsmC,EAAA,EAASzD,OAE7CtiC,GAAA2yC,GAAAE,EACaoW,GAAY,CAC5BxoB,mBAAA9c,OACAkxB,WAAApU,EAAA3yC,KACA+nD,WAAAlD,EACA2L,WAAAt+C,EACAi2C,OAAApD,SAGA5nD,EAVAw1C,EAAA9c,QAeW4lC,GAAmB,SAAA5lC,GAC9B,MAAU,MAAD5E,EAAAC,EAAC01B,MAAA/wB,KAAA,IAAAhtB,OAAAgtB,IAECouB,GAAc,SAAApuB,GACzB,OAAS5E,EAAAC,EAACiN,MAAAtI,GAAA,GAAuB,MAAD5E,EAAAC,EAAC01B,MAAA/wB,GAAyB5E,EAAAC,EAACrI,QAAAgN,EAAA,QAAAA,GAEpD6lC,GAAA,GAAA7yD,OAA8BoE,OAAA60B,GAAA,EAAA70B,CAAmB8qD,IAAU,CAAIE,KAC3D0D,GAAW,SAAAx8D,GACtB,OAAS8xB,EAAAC,EAACvI,KAAA+yC,GAAA,SAAAt9B,GACV,OAAAA,EAAAP,KAAAC,OAAA3+B,KACQ84D,IAEG2D,GAAgB,SAAAz8D,GAC3B,OAAS8xB,EAAAC,EAACvI,KAAMovC,GAAU,SAAA35B,GAC1B,OAAAA,EAAAP,KAAAC,OAAA3+B,KAeW08D,GAAe,SAAAC,GAC1B,IAAAC,EAAA,WAAAD,EAAAE,KAAA,CACA1X,UAAAwX,EAAAh9D,UACAm9D,aAAAH,EAAAI,aACA9qB,iBAAA,GACAmgB,KAAA,EACA5/C,UAAAmqD,EAAAhV,UACA3V,OAAA2qB,EAAAjmC,OACAi2B,OAAAgQ,EAAAlK,OACA9/C,eAAAgqD,EAAAK,SAEAC,YAAAN,EAAAO,YACArqD,WAAgBimC,EAAA,GAAU+d,OAC1B7Y,SAAA2e,EAAAxpB,SACAvgC,UAAA+pD,EAAAQ,UACAC,MAAAT,EAAAhU,MACA0U,KAAAV,EAAA3hB,KACAsiB,WAAA,EACAvL,SAAcjZ,EAAA,GAAcoZ,IAC5B7f,YAAA,GACAkrB,YAAiBzkB,EAAA,GAAa0kB,OAC3B1vD,OAAA8F,OAAA,GAAmB+oD,EAAA,CACtBvK,KAAUtgC,EAAAC,EAAC8K,IAAA8/B,EAAAvK,KAAA,SAAA11B,GACX,OAAA5uB,OAAA8F,OAAA,GAA6B8oB,EAAA,CAC7BsV,OAAAtV,EAAA+gC,WAAA/gC,EAAAsV,aAKAurB,EADsBzrC,EAAAC,EAACxI,KAAAqzC,EAAAxK,MAAAxwB,OAAA,EACvBg7B,EAAAW,iBAAAv/D,EAIA,OAAA0/D,GAHA5vD,OAAA8F,OAAA,GAAmCgpD,EAAA,CACnCW,kBAKII,GAAe,SAAAjhC,GACnB,IAAAkhC,EAAAlhC,EAAA+gC,UAEA,QAAAz/D,IAAA4/D,EACA,YAGA,IAAAC,EAAgBpV,GAAcmV,GAE9B,OAAmBC,ETzBnBlW,YAA2B7O,EAAA,EAASrD,OS0BpCooB,EAAA13D,SAA8B2yC,EAAA,GAAUiQ,KAGxC,MASO,SAAA2U,GAAA5H,GACP,IAAAsH,EAAA7gB,KAAAwb,IAAAjC,EAAAsH,OAEA,GATA,SAAAtH,GACA,IAAAgI,EAAgBhsC,EAAAC,EAAC0N,IAAAq2B,EAAA,YAAA93D,GAEjB,SAAA83D,IAAkBhkC,EAAAC,EAACqvB,QAAA0c,IAMnBC,CAAAjI,GAAA,CACA,IAAA1D,EAAetgC,EAAAC,EAAC8K,IAAAi5B,EAAA1D,KAAA,SAAA11B,GAChB,OAAA5uB,OAAA8F,OAAA,GAA6B8oB,EAAA,CAC7BipB,QAAiBgY,GAAejhC,OAIhC,OAAA5uB,OAAA8F,OAAA,GAA2BkiD,EAAA,CAC3BsH,QACAhL,SAIA,OAAAtkD,OAAA8F,OAAA,GAAyBkiD,EAAA,CACzBsH,UAGO,IC7KPY,GD6KWC,GAAgB,SAAAnI,GAC3B,IAAA/D,EAAiBmM,GAAmBpI,EAAA/D,UACpC,OAAAjkD,OAAA8F,OAAA,GAAyBkiD,EAAA,CACzB/D,WACAK,KAAUtgC,EAAAC,EAAC8K,IAAAi5B,EAAA1D,KAAA,SAAA11B,GACX,OAAA5uB,OAAA8F,OAAA,GAA6B8oB,EAAA,CAC7BsV,OAAgB8S,GAAcpoB,EAAAsV,QAC9ByrB,UAAmBnB,GAAmB5/B,EAAAsV,eAMlCksB,GAAmB,SAAAC,GACvB,GAAMrsC,EAAAC,EAACw3B,SAAA4U,GAGP,OAFuBrsC,EAAAC,EAAC8lB,SAAAsmB,IAGxB,OACA,OAAerlB,EAAA,GAASoZ,IAExB,OACA,OAAepZ,EAAA,GAASmZ,IAExB,OACA,OAAenZ,EAAA,GAASqZ,OAIxB,OAAAgM,GAGWC,GAAiB,SAAAt/B,EAAAu/B,GAC5B,OACAxrD,WAAAisB,EAAAu2B,QAAAxiD,WACAu/C,KAAUtgC,EAAAC,EAAC8K,IAAAiC,EAAAu2B,QAAAjD,KAAA,SAAA2J,EAAApY,GACX,IAAA2a,EAAAvC,EAAAnK,YAAwC9Y,EAAA,GAAoBvtC,KAAQutC,EAAA,GAAWoU,IAAOpU,EAAA,GAAWqU,KAMjG,YAJAnvD,IAAA+9D,EAAAnK,YACA0M,EAAA,IAAA3a,EAAgC7K,EAAA,GAAWoU,IAAOpU,EAAA,GAAWqU,MAG7Dr/C,OAAA8F,OAAA,GAA6BmoD,EApIL,SAAAsC,EAAAE,EAAA5W,EAAA6W,EAAAnN,EAAA2B,GACxB,OACAhhB,OAAAqsB,EAAArsB,OACAC,iBAAAosB,EAAApsB,kBAAAosB,EAAArsB,OACAjmB,GAAQje,OAAAwuC,EAAA,SAAAxuC,GACRu/C,YAAA2F,EACAxgD,UAAAm1C,EACAgF,OAAA4R,EACA5rD,eAAA6rD,EACAzrD,WAAAs+C,GA2HoCoN,CAAaJ,EAAAC,EAAAvC,EAAAvpD,UAAoCsmC,EAAA,GAAc/G,KAAAgqB,EAAAhpD,WAAAgpD,EAAA1O,kBAIxFqR,GAAY,SAAAC,GAGvB,IAFA,IAAAt+D,EAAWyxB,EAAAC,EAAC6sC,SAAA,QAEH9sC,EAAAC,EAACxI,KAAAo1C,GAAApjC,SAAAl7B,IACVA,EAASyxB,EAAAC,EAAC6sC,SAAA,QAGV,OAAAv+D,GAEOw+D,GAAA,SAAA/I,GACP,IAAAgJ,EAAA,SAAAxjC,GACA,OAAAA,GAAA,IAAAA,SAAAt9B,GAGA,OACAmnD,UAAA2Q,EAAA3Q,UACAoY,YAAAzH,EAAAyH,YACAT,aAAAgC,EAAAhJ,EAAAgH,cACA1X,QAAA0Q,EAAA1Q,QACA6X,YAAA6B,EAAAhJ,EAAAmH,aACArqD,UAAAkjD,EAAAljD,UACAwqD,MAAAtH,EAAAsH,MACAC,KAAAyB,EAAAhJ,EAAAuH,QAmBW0B,GAAiB,SAAAC,EAAA5f,EAAAC,GAC5B,OAASvtB,EAAAC,EAACsN,OAAA2/B,EAAA,SAAAlJ,GACV,QAAA93D,IAAAohD,EACA,SAGA,IAAA6f,EAAA5f,GAAA,IAAAwJ,KACA,QAAWqS,GAAkBpF,EAAAjN,KAAAzJ,EAAA6f,MAGlBC,GAAkB,SAAAF,GAC7B,IAAA5f,EAAkB/G,IAAK,IAAAwQ,MAAA2S,KAAA,GAAAljB,SACvB+G,EAAgBhH,IAAK,IAAAwQ,MAAAvQ,SACrB,OA7B2B,SAAA0mB,GAC3B,OAASltC,IAACktC,GAAA3/B,OAAA,SAAA4F,GAGV,OAFAA,EAAAwgB,aAGA,KAAW3M,EAAA,GAAalqB,gBACxB,KAAWkqB,EAAA,GAAajqB,OAExB,SAGA,QACA,YAEG4P,QAeM0gC,CAAiBJ,GAAiBC,EAAA5f,EAAAC,KAEhC+f,GAAoB,SAAAJ,GAC/B,OAASltC,EAAAC,EAACqJ,OAAA4jC,EAAA,SAAA3jC,EAAA4J,GACV,IAAAmtB,EAAAntB,EAAAmtB,KACAiN,EAAAjN,EAA8BtgC,EAAAC,EAAC8K,IAAAu1B,EAAA,SAAA11B,GAC/B,OAAAA,EAAAsV,SACK,GAIL,OAFkBlgB,IAACuJ,GAAAikC,MAAAD,GAAApV,OAAAxrB,SAGhB,KAmBI8gC,GAAA,CACPC,wBAT2B,SAAAR,GAC3B,OAASltC,EAAAC,EAAC0tC,QAAAT,EAAA,SAAA/5B,GACV,OAAAA,EAAAmtB,KAAAv1B,IAAA,SAAAH,GACA,OAXA,SAAAuI,EAAAvI,GACA,OAAA5uB,OAAA8F,OAAA,GAAyB8oB,EAAA,CACzBuV,iBAAAhN,EAAAgN,iBACAmT,QAAAngB,EAAAmgB,QACAyD,KAAA5jB,EAAA4jB,OAOA6W,CAAAz6B,EAAAvI,SAQWijC,GAAe,SAAAjpC,GAC1B,IAAAkpC,EAAiBnX,GAAc/xB,GAE/B,SAAAkpC,EAAAhX,YAAAgX,EAAAhX,WAAAiX,YAAA,IAAAhX,MAAAgX,YAMOC,GAAA,SAAAhhC,EAAAgB,GACP,IAAAwE,EAAAxE,EAAAwE,uCACAC,EAAAzE,EAAAyE,yBAEA,iBAAAzF,QAAA9gC,IAAA8gC,EACA,EACG,WAAAA,EACHyF,GAAA,EAEAD,GAAA,GAGWy7B,GAA4B,SAAApY,EAAAhjB,GACvC,IAAAL,EAAAK,EAAAL,uCACAC,EAAAI,EAAAJ,yBAEA,OAAAojB,IAAoB7O,EAAA,EAASzD,OAC7B9Q,GAAA,EAEAD,GAAA,GAGWomB,GAAiB,SAAAxB,GAC5B,IAAA8W,EAAoBluC,EAAAC,EAAC8K,IAAAqsB,EAAA,SAAAxsB,GACrB,IAAAu/B,EAAqBxT,GAAc/rB,EAAAsV,QACnCzb,EAAA,CACAk7B,YAAA/0B,EAAA2wB,YACAzE,WAAAqT,EAAArT,WACAI,OAAAiT,EAAAjT,OACAqI,WAAA4K,EAAA91D,QAEA,OACAuwB,OAAAgG,EAAAsV,OACAgW,UAAAtrB,EAAA+gC,UACAlnC,UAIA,OAASzE,EAAAC,EAACsN,OAAA2gC,EAAA,SAAA3E,EAAA4E,GAKV,QAJanuC,EAAAC,EAACvI,KAAAw2C,EAAA,SAAA77B,EAAA+7B,GACd,OAAapuC,EAAAC,EAACouC,QAAAh8B,EAAA5N,KAAA8kC,EAAA9kC,OAAA2pC,IAAAD,OEjWHG,GAEX,WACA,SAAAC,EAAA9sB,EAAAlzC,GACA,IAAA89C,EAAAvE,KAEI9rC,OAAA6rC,EAAA,EAAA7rC,CAAe8rC,KAAAymB,GAEnBzmB,KAAAgP,WAAA,SAAAttB,EAAAs/B,GACA,IAAA0F,EAAmBC,EAAA,QAAajlC,KAAAgd,SAAA,IAAAuQ,KAAAvtB,GAChC,OAAA6iB,EAAAyE,IAAA,aAAqCmY,GAAYuF,EAAAniB,EAAA5K,WAAAqnB,KAGjDhhB,KAAA4mB,SAAA,GACA5mB,KAAArG,aACAqG,KAAAv5C,KA4EA,OAzEEyN,OAAAisC,EAAA,EAAAjsC,CAAYuyD,EAAA,EACd52C,IAAA,MACAgV,MAAA,SAAAsa,EAAAta,GAEA,OADAmb,KAAA4mB,SAAA1yD,OAAA8F,OAAA,GAAsCgmC,KAAA4mB,SAAiB1yD,OAAA2tB,EAAA,EAAA3tB,CAAe,GAAGirC,EAAAta,IACzEmb,OAEG,CACHnwB,IAAA,MACAgV,MAAA,SAAAsa,GACA,OAAAa,KAAA4mB,SAAAznB,KAEG,CACHtvB,IAAA,aACAgV,MAAA,SAAAnD,GACA,OAAAse,KAAAgJ,IAAA,aAAAtnB,KAEG,CACH7R,IAAA,iBACAgV,MAAA,SAAAnD,GACA,OAAAse,KAAAgJ,IAAA,iBAAAtnB,KAEG,CACH7R,IAAA,YACAgV,MAAA,SAAAnD,GACA,OAAAse,KAAAgJ,IAAA,YAAAtnB,KAEG,CACH7R,IAAA,SACAgV,MAAA,SAAAgiC,GACA,OAAA7mB,KAAAgJ,IAAA,SAAA6d,KAEG,CACHh3C,IAAA,WACAgV,MAAA,SAAAnD,GACA,OAAAse,KAAAgJ,IAAA,cAAAtnB,GAAA,KAEG,CACH7R,IAAA,SACAgV,MAAA,SAAAnD,GACA,OAAAse,KAAAgJ,IAAA,SAAAtnB,KAEG,CACH7R,IAAA,eACAgV,MAAA,SAAAnD,GACA,OAAAse,KAAAgJ,IAAA,eAAAtnB,KAEG,CACH7R,IAAA,MACAgV,MAAA,WACA,IAAAiiC,EAAA9mB,KAAA4mB,SACA5a,EAAA8a,EAAA9a,OACAF,EAAAgb,EAAAhb,WACA2H,EAAAqT,EAAArT,YACAV,EAAA+T,EAAA/T,OACAh6C,EAAA+tD,EAAA/tD,eACAH,EAAAkuD,EAAAluD,UACAO,EAAA2tD,EAAA3tD,WACA+pD,EAAA4D,EAAA5D,aACA,OACA/wC,GAAA6tB,KAAAv5C,GACA4xC,iBAAA2H,KAAArG,WACAmS,aACAE,SACAyH,cACAt6C,aACA45C,SACAn6C,YACAG,iBACAmqD,oBAKAuD,EAzFA,GA2FAM,GAAA,CACAl0C,MAAA,kDAEWm0C,GAEX,WACA,SAAAC,EAAAC,GACIhzD,OAAA6rC,EAAA,EAAA7rC,CAAe8rC,KAAAinB,GAEnBjnB,KAAAmnB,WAAA,GACAnnB,KAAAonB,MAAA,GACApnB,KAAAqnB,eAAAH,EAyFA,OAtFEhzD,OAAAisC,EAAA,EAAAjsC,CAAY+yD,EAAA,EACdp3C,IAAA,MACAgV,MAAA,SAAAsa,EAAAta,GAGA,OAFAmb,KAAAonB,MAAAjoB,IAAA,EACAa,KAAAmnB,WAAAjzD,OAAA8F,OAAA,GAAwCgmC,KAAAmnB,WAAmBjzD,OAAA2tB,EAAA,EAAA3tB,CAAe,GAAGirC,EAAAta,IAC7Emb,OAEG,CACHnwB,IAAA,MACAgV,MAAA,SAAAyiC,GACA,IAAAC,EAAAvnB,KAAAmnB,WACArqC,EAAAyqC,EAAAzqC,OACAwyB,EAAAiY,EAAAjY,KAEA,QAAAlrD,IAAA47C,KAAAmnB,WAAArqC,OACA,MAAAiqC,GAGA,IAAAhC,EAAAzV,GAAA,GACAkY,EAAkB1C,GAAYC,GAI9B,OAHA/kB,KAAAmnB,WAAAjzD,OAAA8F,OAAA,GAAwCgmC,KAAAmnB,WAAA,CACxC7X,KAAAp7C,OAAA8F,OAAA,GAA8B+qD,EAAgB7wD,OAAA2tB,EAAA,EAAA3tB,CAAe,GAAGszD,EAAAF,EAAA,IAAwBd,GAAU1pC,EAAA6c,WAAA6tB,IAAArF,UAElGniB,OAEG,CACHnwB,IAAA,WACAgV,MAAA,SAAAnD,GACA,OAAAse,KAAAgJ,IAAA,WAAAtnB,KAEG,CACH7R,IAAA,WACAgV,MAAA,SAAA4iC,GACA,IAAAC,EAAyB9lC,EAAQ6lC,OAAA3iC,KAAAC,KACjCr6B,EAAAs1C,KAAAgJ,IAAA,WAAA0e,GACAC,EAAA3nB,KAAAqnB,eAEA,OAAAM,IAAA3nB,KAAAonB,MAAA,SACA18D,EAAAs+C,IAAA,WAAuCkd,GAAuBwB,EAAAC,IAG9Dj9D,IAEG,CACHmlB,IAAA,SACAgV,MAAA,SAAA+iC,GACA,OAAA5nB,KAAAgJ,IAAA,SAAA4e,KAEG,CACH/3C,IAAA,WACAgV,MAAA,SAAAnD,GACA,OAAAse,KAAAgJ,IAAA,WAAAtnB,KAEG,CACH7R,IAAA,YACAgV,MAAA,SAAAnD,GACA,OAAAse,KAAAgJ,IAAA,YAAAtnB,KAEG,CACH7R,IAAA,gBACAgV,MAAA,SAAAnD,GACA,OAAAse,KAAAgJ,IAAA,cAAAtnB,KAEG,CACH7R,IAAA,SACAgV,MAAA,SAAAnD,GACA,OAAAse,KAAAgJ,IAAA,SAAAtnB,KAEG,CACH7R,IAAA,gBACAgV,MAAA,SAAAgjC,GAEA,OADA7nB,KAAAqnB,eAAAQ,EACA7nB,OAEG,CACHnwB,IAAA,QACAgV,MAAA,WACA,OAAAmb,KAAAmnB,aAEG,CACHt3C,IAAA,eACAgV,MAAA,SAAAnD,GACA,OAAAse,KAAAgJ,IAAA,eAAAtnB,OAIAulC,EA/FA,GDhGAa,IAAA1D,GAAA,GAA0ClwD,OAAA2tB,EAAA,EAAA3tB,CAAekwD,GAAiBllB,EAAA,EAASzD,OAAAssB,UAAA,KAA0B7zD,OAAA2tB,EAAA,EAAA3tB,CAAekwD,GAAiBllB,EAAA,EAASrD,OAAAksB,UAAA,GAAA3D,IAEtJ4D,GAAA,SAAA7F,EAAApT,GACA,IAAAkZ,EAAA9F,EAAAvpD,UAGA,OAFAkvD,GAAAG,EAAAF,YACA5F,EAAA1O,aAAA,GACA1E,GAGImZ,GAAmB,SAAA5Y,GACvB,OAASp3B,EAAAC,EAACqJ,OAAA8tB,EAAA,SAAA7tB,EAAAqB,GACV,OAAA5uB,OAAA8F,OAAA,GAA2BynB,EAAA,CAC3BqX,IAAArX,EAAAqX,IAAAhW,EAAAgW,IACAD,IAAApX,EAAAoX,IAAA/V,EAAA+V,OAEG,CACHC,IAAA,EACAD,IAAA,KAoCWsvB,GAAmB,SAAA7Y,EAAApzB,EAAA28B,EAAAuP,EAAAljC,GAC9B,oBAAAA,GAAA,kBAAAA,EAAA,CACA,IAAAmjC,EAAAn0D,OAAAqJ,OAAA+xC,GAAA7pB,OAAA,SAAA3C,GACA,OAAAA,EAAAlqB,YAA6BsmC,EAAA,EAASrD,SAGtCysB,EAAAp0D,OAAAyb,KAAA2/B,GAAA7pB,OAAA,SAAA3C,GACA,OAAAwsB,EAAAxsB,GAAAlqB,YAAmCsmC,EAAA,EAASrD,SAG5C,QAAAz3C,IAAAikE,GAAA,IAAAA,EAAArgC,aAAA5jC,IAAAikE,EAAA,SAAAjkE,IAAAikE,EAAA,SAAAjkE,IAAAikE,EAAA,GAAAvc,iBAAA1nD,IAAAikE,EAAA,GAAAvc,WAAA,CACA,IAAAyc,EAAAF,EAAA,GAAAvc,WAAAzlD,KAAAgiE,EAAA,GAAAvc,WAAAzlD,KAAA,IACAmiE,EAAAH,EAAA,GAAAvc,WAAAzlD,KAAAgiE,EAAA,GAAAvc,WAAAzlD,KAAA,IACAoiE,EAAAvsC,EAAAtM,KAAA,SAAAurB,GACA,OAAAA,EAAA/C,SAAAkwB,EAAAC,KAEAG,EAAAxsC,EAAAtM,KAAA,SAAAurB,GACA,OAAAA,EAAA/C,SAAAkwB,EAAAE,KAIA,QAAApkE,IAAAqkE,QAAArkE,IAAAskE,EAAA,CACA,IAAAC,EAAAF,EAAAlwB,SAAAmwB,EAAApwB,SAEAswB,EAAAH,EAAAnwB,SAAAowB,EAAAnwB,SAEA,OACAO,IAAe5gB,EAAAC,EAAC0wC,MAAAF,EAAA,GAChB9vB,IAAe3gB,EAAAC,EAAC0wC,MAAAD,EAAA,GAChBE,IAAe5wC,EAAAC,EAAC0wC,OAAAD,EAAAD,GAAA,EAAAA,EAAA,GAChBI,cAXA,IAYAX,SAMA,IArEa1X,EAqEbsY,EAAA90D,OAAAqJ,OAAA+xC,GAAA7pB,OAAA,SAAA3C,GACA,OAAAA,EAAAlqB,YAA2BsmC,EAAA,EAASrD,SAEpCotB,EAAiB/wC,EAAAC,EAACyqB,IAAK1qB,EAAAC,EAAC8K,IAAAqsB,EAAA,SAAAxsB,GACxB,OAAAglC,GAAAhlC,EAAAlqB,UAAAmvD,eACG,EACHmB,EAnEgB,SAAA5Z,EAAApzB,GAChB,OAAShE,EAAAC,EAACqJ,OAAA8tB,EAAA,SAAA7tB,EAAA0gC,EAAA6B,GACV,IAAAmF,EAAmBjxC,EAAAC,EAACvI,KAAAsM,EAAA,SAAAif,GACpB,OAAAA,EAAA/C,SAAA4rB,IAGA,GAAAmF,GAAAhH,GAAA6B,EAAA,CAIA,IAAAoF,EAAApB,GAAA7F,EAAAgH,EAAA5wB,UACA8wB,EAAArB,GAAA7F,EAAAgH,EAAA7wB,UACA,SAAAxoC,OAAuBoE,OAAA60B,GAAA,EAAA70B,CAAkButB,GAAA,EACzC0gC,MACArpB,IAAAswB,EACAvwB,IAAAwwB,EACAxQ,OAAAsJ,EAAApP,UAGA,OAAAtxB,GAEG,IA8Ce6nC,CAAYha,EAAApzB,GAE9BqtC,EAAkBrxC,EAAAC,EAACsN,OAAAyjC,EAAA,SAAApmC,GACnB,OAAAA,EAAA+1B,SAAwB3Z,EAAA,GAAWqU,OAGnCiW,EAAiBtxC,EAAAC,EAACsN,OAAAyjC,EAAA,SAAApmC,GAClB,OAAAA,EAAA+1B,SAAwB3Z,EAAA,GAAWoU,MAGnCmW,EAAevB,GAAmBqB,GAClCG,EAAcxB,GAAmBsB,GACjCG,EAAA9Q,IAA4B3Z,EAAA,GAAWoU,IAAAoW,EAAA5wB,IAAA2wB,EAAA5wB,IAAA4wB,EAAA3wB,IAAA4wB,EAAA7wB,IACvC+wB,EAAA/Q,IAA4B3Z,EAAA,GAAWoU,IAAAoW,EAAA7wB,IAAA4wB,EAAA3wB,IAAA2wB,EAAA5wB,IAAA6wB,EAAA5wB,IACvCA,GAzFa4X,EAyFQ,CAAAiZ,EAAAC,IAxFZ1xC,EAAAC,EAAC4qB,IAAA2N,IAAA,GAwFW0X,EAAAa,GACrBpwB,EAtFa,SAAA6X,GACb,OAASx4B,EAAAC,EAACyqB,IAAA8N,IAAA,EAqFEmZ,CAAS,CAAAF,EAAAC,IAAAxB,EAAAa,EACrBH,GAAAjwB,EAAAC,GAAA,EAAAA,EACAiwB,EAAAC,EAAAhhC,OAAA,QACA,OACA6Q,IAAS3gB,EAAAC,EAAC0wC,MAAAhwB,EAAA,GACVC,IAAS5gB,EAAAC,EAAC0wC,MAAA/vB,EAAA,GACVgwB,IAAS5wC,EAAAC,EAAC0wC,MAAAC,EAAA,GACVC,gBACAX,QAqPW0B,GAAY,SAAA5jC,GACvB,IAAA2S,EAAA3S,EAAA2S,IACAC,EAAA5S,EAAA4S,IACAmB,EAAA/T,EAAA+T,KACAC,EAAAhU,EAAAgU,aACAC,EAAAjU,EAAAiU,gBAEAyvB,EAAiB1xC,EAAAC,EAACiN,MAAAyT,GAAA,EAAAA,EAClB8wB,EAAiBzxC,EAAAC,EAACiN,MAAA0T,GAAA,EAAAA,EAElB,WAAAqB,EACAF,EAIA0vB,GAAA,GAAAC,EAAA,EAEA3vB,GAAA0vB,EACAA,EAEA1vB,EAAA2vB,EACAA,EAIA,cAAA1vB,EAGA,IAAAyvB,EAEAC,EAAA,GAAA3vB,EAAA2vB,EACAA,EAEA3vB,GAIA2vB,EAAAD,GAAA,EAIA1vB,EAIA2vB,GAAA,EAEA3vB,EAGA2vB,EAAA3vB,EACA2vB,EAEA3vB,GEnaO8vB,GAAA,CACPC,YANO,CAA2B9qB,EAAA,GAAanqB,IAAMmqB,EAAA,GAAalqB,gBAAkBkqB,EAAA,GAAa9pB,SAAW8pB,EAAA,GAAa7pB,cAAgB6pB,EAAA,GAAa3pB,WAAa2pB,EAAA,GAAazpB,eAAiBypB,EAAA,GAAaxpB,MAAQwpB,EAAA,GAAavpB,UAAYupB,EAAA,GAAatpB,iBAAmBspB,EAAA,GAAarpB,gBAAkBqpB,EAAA,GAAarpB,gBAAkBqpB,EAAA,GAAappB,eAAiBopB,EAAA,GAAanpB,iBAOxXk0C,YANO,CAA2B/qB,EAAA,GAAanqB,IAAMmqB,EAAA,GAAa9pB,SAAW8pB,EAAA,GAAazpB,eAAiBypB,EAAA,GAAaxpB,MAAQwpB,EAAA,GAAavpB,UAAYupB,EAAA,GAAatpB,iBAAmBspB,EAAA,GAAanpB,iBAOtMd,OANO,CAA2BiqB,EAAA,GAAajqB,OAASiqB,EAAA,GAAalqB,gBAAkBkqB,EAAA,GAAajpB,oBAOpGi0C,SANO,CAAwBhrB,EAAA,GAAajqB,OAASiqB,EAAA,GAAalqB,iBAOlEmjB,KANO,CAAoB+G,EAAA,GAAanqB,IAAMmqB,EAAA,GAAa3pB,WAAa2pB,EAAA,GAAa9pB,SAAW8pB,EAAA,GAAazpB,eAAiBypB,EAAA,GAAaxpB,MAAQwpB,EAAA,GAAavpB,UAAYupB,EAAA,GAAatpB,iBAAmBspB,EAAA,GAAarpB,gBAAkBqpB,EAAA,GAAappB,eAAiBopB,EAAA,GAAanpB,kBCH3Qo0C,GAAU,SAAAjlC,GACrB,OAAShxB,OAAAgrC,EAAA,GAAAhrC,CAAU,CAAEypD,GAAcK,IAAW94B,ICGnCklC,GAAU,SAAAlkC,EAAAmkC,EAAAC,GACrB,IAAAlyB,EAAAlS,EAAAkS,OACAE,EAAApS,EAAAoS,SACAC,EAAArS,EAAAqS,SACAN,EAAA/R,EAAA+R,iBACAsyB,EAAArkC,EAAAqkC,eACA/xB,EAAAtS,EAAAsS,WACA2B,EAAAjU,EAAAiU,gBACAqwB,EAAkBV,GAAY,CAC9B7vB,KAAAhC,GAAA,EACAY,IAAAP,EACAQ,IAAAP,EACA2B,aAAA,YACAC,oBAIAswB,EAAAJ,EAAAE,EADA,EAEAnwB,EAAAowB,EAAAD,EACAG,GAAAtwB,EAAAqwB,GAAAjyB,EAoBA,OAlBMtgB,EAAAC,EAACwJ,SAAAyW,EAAA,QACPiF,QAAAC,IAAA,GAAAxtC,OAAAsoC,GAAA,CACAoyB,YACAG,gBARA,EASAF,eACArwB,eACAswB,MACAL,gBACApyB,mBACAK,WACAC,WACAgyB,iBACA/xB,aACA2B,oBAKAuwB,GAYIE,GAAW,SAAAtb,GACf,IAAAub,EAAsB3yC,IAACo3B,GAAArsB,IAAA,SAAAH,GACvB,OAAAA,EAAAgoC,iBAAA,IACGC,MAEHC,EAAiB9yC,EAAAC,EAACqJ,OAAA8tB,EAAA,SAAA7tB,EAAAqB,GAGlB,OAAArB,GAFAqB,EAAAmoC,qBAAA,KACAnoC,EAAAgoC,iBAAA,GACAD,IACG,GAMH,MAJA,CACAK,MAAAL,EACAG,aAKWG,GAAkB,SAAA1pB,EAAA6N,GAC7B,IAAA8b,EAAA1hB,UAAA1hB,OAAA,QAAA5jC,IAAAslD,UAAA,GAAAA,UAAA,KAEApR,EAAAmJ,EAAAnJ,SACAC,EAAAkJ,EAAAlJ,SACAN,EAAAwJ,EAAAxJ,iBAEAO,GADAiJ,EAAA5J,WACA4J,EAAAjJ,YACAZ,EAAA6J,EAAA7J,gBAGAyzB,GAFa5qB,EAAA,EAAcgB,EAAA,wFAETvpB,EAAAC,EAACqJ,OAAA8tB,EAAA,SAAA7tB,EAAA0gC,GACnB,IACAmJ,EADAnJ,EAAApP,SAC2B7T,EAAA,GAAWoU,IACtC,OACAiY,KAAAD,EAAA,GAAAx7D,OAA8BoE,OAAA60B,GAAA,EAAA70B,CAAkButB,EAAA8pC,MAAA,CAAApJ,IAAA1gC,EAAA8pC,KAChDC,MAAAF,EAAA7pC,EAAA+pC,MAAA,GAAA17D,OAA2CoE,OAAA60B,GAAA,EAAA70B,CAAkButB,EAAA+pC,OAAA,CAAArJ,MAE1D,CACHoJ,KAAA,GACAC,MAAA,MAGAA,EAAcZ,GAAWS,EAAAG,OACzBD,EAAaX,GAAWS,EAAAE,MAKxBE,EAAkB3B,GAAY,CAC9B7vB,KAAAhC,GAAA,EACAY,IAAAP,EACAQ,IAAAP,EACA2B,aAAA,YACAC,gBAAAvC,IAEA8zB,GAAAH,EAAAL,OAAAO,EAAAF,EAAAP,UAAAQ,EAAAN,OAAAO,EAAAD,EAAAR,WAAAxyB,EACA,OACAkyB,IAASxyC,EAAAC,EAAC0wC,MAAA6C,EAAAN,GACVI,QACAD,SChCII,GAAM,SAAAjqC,GACV,OAASkd,EAAUld,KAAAihB,KAAAwb,IAAAz8B,IA6EZkqC,GAAA,SAAAlE,EAAAxL,EAAAhgC,GACP,IAAA2vC,EA3EkB,SAAAnE,EAAA38B,EAAA7O,GAClB,IAAA6yB,EAAAhkB,EAAAgkB,MACA3K,EAAArZ,EAAAqZ,SACAoU,EAAAztB,EAAAytB,KACAK,EAAA9tB,EAAA8tB,OAEAyS,GADAvgC,EAAAu/B,WACAzR,IAAyB3Z,EAAA,GAAWoU,KAEpCwY,EAAmB5zC,IAACsgC,GAAAv1B,IAAA,SAAAH,GACpB,OAAAA,EAAAkpB,SACGvmB,OAAA,SAAAJ,GACH,YAAAjhC,IAAAihC,GAAA,OAAAA,IACGR,QAEHknC,EAAAhd,EAIAid,EAAA5nB,GAHmBlsB,EAAAC,EAACiT,MAAAlP,EAAA,SAAAif,GACpB,WAAAA,EAAA3C,aACG,OAEHyY,EAAA6a,EAAA,GACA5a,EAAA4a,EAAA,GAEA,OAAApE,GACA,WACA,aACA,KAAS9I,GAAQ95B,KAAAC,KACjB,KAAS05B,GAAQ35B,KAAAC,KAEjB,OAAAumC,EAAA,WAAAS,EAGA,UACA,mBAEA,OAAAT,EAAAU,EAAA/a,EAAA8a,IAGA,kBAEA,OAAAT,EAAA,cAAAU,EAAA/a,EAAA8a,EAGA,oBACA,mBACA,KAASxN,GAAaz5B,KAAAC,KACtB,KAASy5B,GAAY15B,KAAAC,KACrB,KAAS85B,GAAU/5B,KAAAC,KACnB,KAAS+5B,GAASh6B,KAAAC,KAClB,KAASisB,GAAalsB,KAAAC,KACtB,KAASgsB,GAAUjsB,KAAAC,KAEnB,OAAAumC,EAAAU,EAAArpB,KAAAwb,IAAAlN,EAAAC,GAAA6a,IAGA,KAAS/N,GAAWl5B,KAAAC,KAEpB,OAAAumC,EAAAU,EAA6B9zC,EAAAC,EAACyqB,IAAA,GAAAqO,EAAAC,IAAA6a,EAAAC,EAAgC9zC,EAAAC,EAACyqB,IAAA,GAAAsO,EAAAD,IAAA8a,EAG/D,KAASpO,GAAY74B,KAAAC,KAErB,OAAAumC,EAAAU,EAA6B9zC,EAAAC,EAACyqB,IAAA,GAAAsO,EAAAD,IAAA8a,EAAAC,EAAgC9zC,EAAAC,EAACyqB,IAAA,GAAAqO,EAAAC,IAAA6a,EAM/D,QAEA,UAMeE,CAAcvE,EAAAxL,EAAAhgC,GAC7BgwC,EA9JW,SAAAxE,EAAAxhC,EAAAhK,GACX,IAAA6yB,EAAA7oB,EAAA6oB,MACA3K,EAAAle,EAAAke,SACAoU,EAAAtyB,EAAAsyB,KAEA8S,EADAplC,EAAA2yB,SACyB3Z,EAAA,GAAWoU,IAEpCwY,EAAmB5zC,IAACsgC,GAAAv1B,IAAA,SAAAH,GACpB,OAAAA,EAAAkpB,SACGvmB,OAAA,SAAAJ,GACH,YAAAjhC,IAAAihC,IACGR,QAEHknC,EAAAhd,EAKAid,EAAA5nB,GAHmBlsB,EAAAC,EAACiT,MAAAlP,EAAA,SAAAif,GACpB,WAAAA,EAAA3C,aACG,OAEHyY,EAAA6a,EAAA,GACA5a,EAAA4a,EAAA,GAEA,OAAApE,GACA,WACA,aACA,KAAS9I,GAAQ95B,KAAAC,KACjB,KAAS05B,GAAQ35B,KAAAC,KAEjB,OAAAumC,EAAAS,EAdA,EAcA,WAGA,UAEA,OAAAT,EAAAS,EAnBA,EAmBAA,EAAAC,EAAA/a,EAnBA,EAsBA,mBAEA,OAAAqa,EAAAS,EAxBA,GAwBAC,EAAA/a,EAAA8a,EAxBA,EA2BA,kBAEA,OAAAT,EAAAU,EAAA/a,EAAA8a,EA7BA,EA6BA,WAGA,oBACA,mBACA,KAASxN,GAAaz5B,KAAAC,KACtB,KAASy5B,GAAY15B,KAAAC,KACrB,KAAS85B,GAAU/5B,KAAAC,KACnB,KAAS+5B,GAASh6B,KAAAC,KAClB,KAASisB,GAAalsB,KAAAC,KACtB,KAASgsB,GAAUjsB,KAAAC,KAEnB,OAAAumC,EAAAS,EAzCA,GAyCAC,EAAArpB,KAAAwb,IAAAlN,EAAAC,GAAA6a,EAzCA,EA4CA,KAAS/N,GAAWl5B,KAAAC,KAEpB,OAAAumC,GAAAU,EAA8B9zC,EAAAC,EAACyqB,IAAA,GAAAsO,EAAAD,IAAA8a,EA9C/B,GA8C+BC,EAAsC9zC,EAAAC,EAACyqB,IAAA,GAAAqO,EAAAC,IAAA6a,EA9CtE,EAiDA,KAASpO,GAAY74B,KAAAC,KAErB,OAAAumC,GAAAU,EAA8B9zC,EAAAC,EAACyqB,IAAA,GAAAqO,EAAAC,IAAA6a,EAnD/B,GAmD+BC,EAAsC9zC,EAAAC,EAACyqB,IAAA,GAAAsO,EAAAD,IAAA8a,EAnDtE,EAyDA,QAEA,UAqFaI,CAAOzE,EAAAxL,EAAAhgC,GACpB,OACA2vC,OAAYF,GAAME,GAClBK,KAAUP,GAAMO,KCnKhB,SAAAE,GAAAvlB,GAEA,IAAAwlB,EAAsBvlB,EAAA3uB,EAAQm0C,IAAAC,OAAAzuB,UAAA+I,GAM9B,OADAwlB,GADAA,GAFAA,IAAAv8C,QAAA,WAEAA,QAAA,YACAA,QAAA,WAcA,SAAA08C,GAAAC,EAAAC,GACA,IAAA78C,EAAYi3B,EAAA3uB,EAAQm0C,IAAAK,KAAAhgB,MAAA+f,GACpBE,EAAW9lB,EAAA3uB,EAAQm0C,IAAAK,KAAAhgB,MAZnB,WACA,IAAAtmD,EAAA,IAAA4oD,KAKA,MADA,WAHA5oD,EAAAwmE,iBAAA3lB,YACA7gD,EAAAymE,cAAA,KAAAzmE,EAAAymE,cAAA,GAAA5lB,WAAA,KAAA7gD,EAAAymE,cAAA,KACAzmE,EAAA0mE,aAAA,EAAA1mE,EAAA0mE,aAAA7lB,WAAA,IAAA7gD,EAAA0mE,cAQmBC,IACnBC,EAAmBnmB,EAAA3uB,EAAQ4uB,IAAAC,QAAaF,EAAA3uB,EAAQm0C,IAAAK,KAAAhgB,MAAA8f,GAAA58C,EAAA,CAChDq9C,QAAA,IACAN,KACAO,KAAUrmB,EAAA3uB,EAAQg1C,KAAAC,IAClBxlC,QAAakf,EAAA3uB,EAAQk1C,IAAAC,QAErBhlB,EAAAilB,OAAAN,EAAA/lB,YAIA,OADAoB,GADAA,GADAA,IAAAx4B,QAAA,WACAA,QAAA,YACAA,QAAA,WA+CA,SAAA09C,GAAAC,EAAAzyD,EAAA0yD,EAAAC,GACA,IAAAC,EApCAxB,GAD0BtlB,EAAA3uB,EAAQm0C,IAAAK,KAAAhgB,MAAA1F,KAAAnJ,UAJlC,CACA+vB,IAAA,MACAC,IAAA,YAwCAvuB,EAtBA,SAAAwuB,EAAAC,EAAAC,EAAAC,GACA,IAAAC,EAAA,CACAV,SAAAM,EACA/yD,SAAAgzD,GAOAzuB,EAAA,CACA6uB,QAHA5B,GAFAvlB,KAAAnJ,UAAAqwB,GAEAF,GAIAI,OAAAH,EACAI,UAJA,IAAArf,MAQA,OADAmd,GAD2BtlB,EAAA3uB,EAAQm0C,IAAAK,KAAAhgB,MAAA1F,KAAAnJ,UAAAyB,KAOnCgvB,CAAAd,EAAAzyD,EAAA0yD,EAAAC,GAGA,OADAC,EAAA,IAAAruB,EAAA,IAjCA,SAAAivB,EAAAC,EAAAR,GACA,IAAAS,EAAAF,EAAA,IAAAC,EAGA,OADArC,GADkBtlB,EAAA3uB,EAAQw2C,WAAAD,EAAAT,IA8B1BW,CAAAhB,EAAAruB,EAAAmuB,GAKO,SAAAmB,GAAA3rB,GACP,gBAAAuqB,EAAAzyD,EAAA6U,EAAA89C,GACA,IAAAx5B,EAAAq5B,GAAAC,EAAAzyD,EAAA6U,EAAA89C,GAEA,OADAtwB,QAAAC,IAAA,wBAAAnJ,GACA+O,EAAAtB,KAAoByB,EAAA,GAAe,CACnCyrB,IAAA36B,IACKgN,KAAA,SAAAnG,GAKL,OAJA,IAAAA,EAAAlwC,cACAuyC,QAAAC,IAAA,oBAAAtC,GAGAA,KCrGO,SAAA+zB,GAAA7rB,GACP,gBAAAn9C,EAAAo9D,GACA,OAAAjgB,EAAAuB,gBAAA5e,IAAmCwd,EAAA,EAAc,CACjDt9C,YACAo9D,gBACK,CACL1mB,QAAA,CACAxoC,OAAA,uBAKO,SAAA+6D,GAAA9rB,GACP,gBAAAn9C,EAAAo9D,GACA,OAAAjgB,EAAAuB,gBAAA5e,IAAmCwd,EAAA,EAAc,CACjDt9C,YACAo9D,gBACK,CACL1mB,QAAA,CACAxoC,OAAA,uBAKO,SAAAg7D,GAAA/rB,GACP,gBAAAyV,GACA,OAAAzV,EAAAuB,gBAAA7C,KAAoCyB,EAAA,EAAyB,CAC7DsV,SACK,CACLlc,QAAA,CACAxoC,OAAA,uBAKO,SAAAi7D,GAAAhsB,GACP,gBAAAn9C,GACA,OAAAm9C,EAAAuB,gBAAA5e,IAAmC3xB,OAAAmvC,EAAA,EAAAnvC,CAA2BnO,GAAA,GAAe,CAC7E02C,QAAA,CACAxoC,OAAA,uBCtCO,SAAAk7D,GAAAjsB,GACP,gBAAAn6C,GACA,IAAAqmE,EAAAl7D,OAAA8F,OAAA,GAA+BjR,EAAA,CAC/BsmE,UAAiBhxB,EAAqBt1C,EAAAsmE,WACtCC,QAAejxB,EAAqBt1C,EAAAumE,WAEpC,OAAApsB,EAAArd,IAAmBwd,EAAA,EAAU+rB,ICJtB,SAAAG,GAAArsB,GACP,gBAAApmB,GACA,IAAA0yC,EAAgBt3C,EAAAC,EAACqvB,QAAA1qB,KAAA,CAAAA,GACjB2yC,EAAsBnzB,EAAAnkB,EAAKu3C,YAAA7oB,SAC3B,OAAA3D,EAAArd,IAAoBwd,EAAA,EAAW,CAC/BssB,QAAAH,EAAAvnB,KAAA,KACAwnB,cAAArzB,QACKqzB,IAGE,SAAAG,GAAA1sB,GACP,gBAAApmB,GACA,OAAAomB,EAAArd,IAAmBwd,EAAA,EAAmB,CACtCvmB,YAKA,SAAA+yC,GAAA3sB,GACA,gBAAA4sB,EAAAhzC,GACA,OAAAomB,EAAArd,IAAmBwd,EAAA,EAAmB,CACtCvmB,SACAgzC,WAKA,SAAAC,GAAA7sB,GACA,gBAAApmB,EAAAkzC,GACA,OAAA9sB,EAAArd,IAAmBwd,EAAA,EAAmB,CACtCvmB,SACAkzC,YAKO,SAAAC,GAAA/sB,GACP,gBAAApmB,GACA,IAAA0yC,EAAgBt3C,EAAAC,EAACqvB,QAAA1qB,KAAA,CAAAA,GACjB,OAAAomB,EAAArd,IAAmBwd,EAAA,EAAW,CAC9BssB,QAAAH,EAAAvnB,KAAA,QAIO,IAAIioB,GAAM,SAAAhtB,GACjB,OACArd,IAAA0pC,GAAArsB,GACAitB,SAAAP,GAAA1sB,GACAktB,UAAAP,GAAA3sB,GACAmtB,SAAAN,GAAA7sB,GACAotB,gBAAAL,GAAA/sB,KCpDO,SAAAqtB,GAAArtB,GACP,gBAAAstB,GACA,IAAAjoC,EAAAmhB,UAAA1hB,OAAA,QAAA5jC,IAAAslD,UAAA,GAAAA,UAAA,MACA+mB,EAA6Bv4C,EAAAC,EAACyJ,SAAA4uC,GAAA,CAC9BA,QACAjoC,SACKioC,EACL,OAAAttB,EAAAuB,gBAAA5e,IAAmCwd,EAAA,EAAaotB,EAAA,CAChDh0B,QAAA,CACAxoC,OAAA,sBAEKktC,KAAA,SAAAnG,GACL,OAAAA,EAAAuE,SAAA,KACKmxB,MAAA,SAAApqE,GAEL,OADA+2C,QAAAxqB,MAAA,gCAAAvsB,GACA,MAIO,SAAAqqE,GAAAztB,GACP,OACA1c,OAAA,SAAAgqC,GACA,IAAAjoC,EAAAmhB,UAAA1hB,OAAA,QAAA5jC,IAAAslD,UAAA,GAAAA,UAAA,MACA+mB,EAA+Bv4C,EAAAC,EAACyJ,SAAA4uC,GAAA,CAChCA,QACAjoC,SACOioC,EACP,OAAAttB,EAAAuB,gBAAA5e,IAAqCwd,EAAA,EAAaotB,EAAA,CAClDh0B,QAAA,CACAxoC,OAAA,sBAEOktC,KAAA,SAAAnG,GACP,OAAAA,EAAAuE,SAAA,KACOmxB,MAAA,SAAApqE,GAEP,OADA+2C,QAAAxqB,MAAA,gCAAAvsB,GACA,MAGAsqE,SAAA,WACA,OAAA1tB,EAAAuB,gBAAA5e,IAAA,2BAAgE,CAChE4W,QAAA,CACAxoC,OAAA,wBCzCA,IAQW48D,GAAG,SAAA3tB,GACd,gBAAAn9C,EAAAo9D,GACA,OAAW1iB,EAAA,OAVCr8C,OAUsB,SAE9Bs8C,EAAAvoB,EAAmBwoB,KAAA,SAAAC,IACvB,IAAA5F,EAAAuE,EAAAz0C,EAAA6xB,EACA,OAAa+jB,EAAAvoB,EAAmB2oB,KAAA,SAAAC,GAChC,OACA,OAAAA,EAAAC,KAAAD,EAAAE,MACA,OAEA,OADAF,EAAAE,KAAA,EACAiC,EAAArd,IAA6Bwd,EAAA,GAAY,CACzCt9C,YACAo9D,iBAGA,OAmBA,OAlBAnoB,EAAA+F,EAAAuC,KACA/D,EAAAvE,EAAAuE,QAAAz0C,EAAAkwC,EAAAlwC,aACA6xB,EAAqBzE,EAAAC,EAAC8K,IAAAsc,EAAA,SAAA5G,GACtB,IAAAm4B,EAAAn4B,EAAA//B,YAAsDsmC,EAAA,EAASrD,OAC/Dk1B,EAAA,GAAAjhE,OAAA6oC,EAAAP,OAAA,KAAAtoC,OAAwE2uC,IAAK9F,EAAAsL,YAAAgiB,UAAA,KAAAn2D,OAAA6oC,EAAA6S,SAC7EwlB,EAAAr4B,EAAA//B,YAA0DsmC,EAAA,EAASxD,YAAA/C,EAAA//B,YAAsCsmC,EAAA,EAAStE,YAWlH,OAVA1mC,OAAA8F,OAAA,GAA0C2+B,EAAA,CAC1Co4B,aACA34B,OAAA44B,EAAA,IAAAr4B,EAAAP,OAAAO,EAAAP,OACAC,iBAAA24B,EAAA,IAAAr4B,EAAAN,iBAAAM,EAAAN,iBACA44B,KAAA,CACAz+C,qBAAAs+C,EAAqDxiB,GAA0B3V,EAAAP,OAAAO,EAAAN,uBAAAj0C,EAC/E88D,WAAgC7S,GAAgB1V,EAAAP,QAChDK,YAAAE,EAAAF,iBAKAsI,EAAAG,OAAA,SAAAhtC,OAAA8F,OAAA,GAA+DghC,EAAA,CAC/DuE,QAAA5iB,EACA7xB,kBAGA,OACA,UACA,OAAAi2C,EAAAK,SAGOR,QC7CIswB,GAAc,SAAAhuB,GACzB,gBAAApmB,GACA,OAAW2jB,EAAA,OAVCr8C,OAUsB,SAE9Bs8C,EAAAvoB,EAAmBwoB,KAAA,SAAAC,IACvB,IAAA5F,EAAAm2B,EACA,OAAazwB,EAAAvoB,EAAmB2oB,KAAA,SAAAC,GAChC,OACA,OAAAA,EAAAC,KAAAD,EAAAE,MACA,OAEA,OADAF,EAAAE,KAAA,EACAiC,EAAArd,IAA6Bwd,EAAA,EAAiB,CAC9CzJ,iBAAA9c,EACAs0C,WAAA,SAGA,OAKA,OAJAp2B,EAAA+F,EAAAuC,KACA6tB,EAAyBj5C,EAAAC,EAAC8K,IAAA+X,EAAAuE,QAAAvE,EAAAuE,QAAA,YAAAxZ,GAC1B,OAAA7xB,OAAA8F,OAAA,GAAuC+rB,EAAK26B,GAAgB36B,MAE5Dgb,EAAAG,OAAA,UACAp2C,aAAAkwC,EAAAlwC,aACAy0C,QAAA4xB,IAGA,OACA,UACA,OAAApwB,EAAAK,SAGOR,QAIIywB,GAAU,SAAAnuB,GACrB,gBAAApmB,EAAAkyB,EAAAsiB,EAAAC,EAAAC,GACA,OAAW/wB,EAAA,OA7CCr8C,OA6CsB,SAE9Bs8C,EAAAvoB,EAAmBwoB,KAAA,SAAAU,IACvB,IAAAiV,EACA,OAAa5V,EAAAvoB,EAAmB2oB,KAAA,SAAAQ,GAChC,OACA,OAAAA,EAAAN,KAAAM,EAAAL,MACA,OAEA,OADAK,EAAAL,KAAA,EACAiC,EAAArd,IAA6Bwd,EAAA,EAAa,CAC1CzJ,iBAAA9c,EACAkyB,WAA4BvQ,IAAKuQ,GAAAzQ,OAAoBL,EAAWC,WAChEozB,YACAC,YACAF,SAGA,OAEA,OADAhb,EAAAhV,EAAAgC,KACAhC,EAAAJ,OAAA,SAAAoV,GAEA,OACA,UACA,OAAAhV,EAAAF,SAGOC,QAIIowB,GAAQ,SAAAvuB,GACnB,gBAAApmB,EAAAkyB,EAAA0iB,EAAAC,GACA,OAAWlxB,EAAA,OA7ECr8C,OA6EsB,SAE9Bs8C,EAAAvoB,EAAmBwoB,KAAA,SAAAa,IACvB,IAAA5H,EAAAg4B,EAAAC,EAAAC,EACA,OAAapxB,EAAAvoB,EAAmB2oB,KAAA,SAAAa,GAChC,OACA,OAAAA,EAAAX,KAAAW,EAAAV,MACA,OAOA,OALArH,EAAA9c,EACA80C,EAAA,IAAAF,EAAA,GAAmD,CACnDK,oBAAAL,EAAA,GAEA/vB,EAAAV,KAAA,EACAiC,EAAArd,IAA6Bwd,EAAA,EAAWnvC,OAAA8F,OAAA,CACxC4/B,mBACAoV,WAA4BvQ,IAAKuQ,GAAAzQ,OAAoBL,EAAWC,WAEhEwzB,eACeC,IAEf,OAcA,OAbAC,EAAAlwB,EAAA2B,KACAwuB,EAAiC55C,IAAC25C,EAAAtyB,SAAA/d,OAAA,SAAAwwC,EAAA1b,EAAA2b,GAClC,IAAAC,EAAwCh6C,IAACo+B,GAAAuP,QAAA,SAAAsM,GACzC,OAAyBj6C,EAAAC,EAAC0tC,QAAAsM,KACTlvC,IAAA,SAAAsH,GACjB,OAAAr2B,OAAA8F,OAAA,GAAyCuwB,EAAA,CACzCzN,OAAAm1C,EACAr4B,uBAEiB/U,QAEjB,OAAuB3M,EAAAC,EAACutC,MAAAsM,EAAAE,IACT,IACfvwB,EAAAT,OAAA,UACAvkB,KAAsBzE,EAAAC,EAACqN,OAAAssC,EAAA,SAAAM,GACvB,OAAAA,EAAApmB,SAEAlhD,aAAA+mE,EAAA/mE,eAGA,OACA,UACA,OAAA62C,EAAAP,SAGOI,QAII6wB,GAAO,SAAAnvB,GAClB,OACAoT,YAAiB4a,GAAchuB,GAC/BwM,QAAa2hB,GAAUnuB,GACvBovB,YAAiBb,GAAQvuB,KC1EdqvB,GAnDJ,SAAArvB,GACP,gBAAA/O,GACA,OAAWsM,EAAA,OATCr8C,OASsB,SAE9Bs8C,EAAAvoB,EAAmBwoB,KAAA,SAAAC,IACvB,IAAAuC,EAAAqvB,EACA,OAAa9xB,EAAAvoB,EAAmB2oB,KAAA,SAAAC,GAChC,OACA,OAAAA,EAAAC,KAAAD,EAAAE,MACA,OAEA,OADAF,EAAAE,KAAA,EACAiC,EAAArd,IAA6Bwd,EAAA,EAAoBlP,GAEjD,OAsBA,OArBAgP,EAAApC,EAAAuC,KACAkvB,EAAsCt6C,EAAAC,EAAC8K,IAAAkgB,EAAA5D,QAAAgE,MAAA,SAAA78C,GACvC,IAAA+rE,EAAiCh0B,IAAK/3C,EAAA+rE,YAAA/zB,SACtCg0B,EAAAjvB,OAAA/8C,EAAAgsE,QACApI,EAAA7mB,OAAA/8C,EAAA4jE,YACA3F,EAAA4I,OAAA7mE,EAAAi+D,aACAgO,EAAAlvB,OAAA/8C,EAAAisE,WACAp8C,EAAAg3C,OAAA7mE,EAAA6vB,aACAuG,EAAAywC,OAAA7mE,EAAAo2B,QACA81C,EAAAnvB,OAAA/8C,EAAAksE,cACA,OAAA1+D,OAAA8F,OAAA,GAAuCtT,EAAA,CACvC6vB,cACAuG,SACA6nC,cACAiO,eACAD,YACArI,aACAoI,SACAD,iBAGA1xB,EAAAG,OAAA,SAAAhtC,OAAA8F,OAAA,GAA+DmpC,EAAA,CAC/D3D,QAAA2D,EAAA5D,QAAArrC,OAAA8F,OAAA,GAA+DmpC,EAAA5D,QAAA,CAC/DgE,MAAAivB,SACiBpuE,KAGjB,OACA,UACA,OAAA28C,EAAAK,SAGOR,kBC9CHiyB,GAAW,CACfp2B,QAAA,CACAxoC,OAAA,qBAIA6+D,GAAA,SAAA5vB,GACA,gBAAA6f,GACA,IAAA7G,EAAgB4G,GAAeC,GAC/B,OAAA7f,EAAAuB,gBAAA7C,KAAoCyB,EAAA,GAAa6Y,EAAS2W,MAM1DE,GAAA,SAAA7vB,GACA,gBAAA6f,GACA,IAAA7G,EAAgB4H,GAAoBf,GACpC,OAAA7f,EAAAuB,gBAAA7C,KAAoCyB,EAAA,EAAc6Y,EAAS2W,MAM3DG,GAAA,SAAA9vB,GACA,gBAAA+vB,EAAAltE,GAEA,IAAA42B,EAAA,CACAs2C,UACAltE,aAEA,OAAAm9C,EAAAuB,gBAAA7C,KAAoCyB,EAAA,EAAc1mB,EAAQk2C,MAK/CK,GAAS,SAAAhwB,GACpB,gBAAAn6C,GACA,OAAW03C,EAAA,OA7CCr8C,OA6CsB,SAE9Bs8C,EAAAvoB,EAAmBwoB,KAAA,SAAAC,IACvB,IAAAzM,EAAAg/B,EAAAhwB,EACA,OAAazC,EAAAvoB,EAAmB2oB,KAAA,SAAAC,GAChC,OACA,OAAAA,EAAAC,KAAAD,EAAAE,MACA,OAQA,OANA9M,EAAwBjc,EAAAC,EAACi7C,KAAArqE,EAAA,aACzBoqE,EAAAj/D,OAAA8F,OAAA,GAA6Cm6B,EAAA,CAC7Ck/B,SAAAl/B,EAAAk/B,SAA6C50B,IAAKtK,EAAAk/B,UAAAC,MAAA50B,cAAAt6C,EAClDmvE,OAAAp/B,EAAAo/B,OAAyC90B,IAAKtK,EAAAo/B,QAAAD,MAAA50B,cAAAt6C,IAE9C28C,EAAAE,KAAA,EACAiC,EAAAuB,gBAAA5e,IAA6Cwd,EAAA,EAAY8vB,EAAgBN,IAEzE,OAEA,OADA1vB,EAAApC,EAAAuC,KACAvC,EAAAG,OAAA,SAAAhtC,OAAA8F,OAAA,GAA+DmpC,EAAA,CAC/D5D,QAAA4D,EAAA5D,QAAArrC,OAAA8F,OAAA,GAA+DmpC,EAAA5D,QAAA,CAC/DoZ,MAAyBzgC,EAAAC,EAAC8K,IAAAkgB,EAAA5D,QAAAoZ,MAAgC0L,WACzCjgE,KAGjB,OACA,UACA,OAAA28C,EAAAK,SAGOR,QAIA,SAAS4yB,GAAKtwB,GACrB,IAAAuwB,EAAAzzB,KAEA,gBAAAj6C,EAAAo9D,GACA,OACApqB,OAAA,SAAA26B,GACA,OAAejzB,EAAA,EAAiBgzB,OAAA,SAExB/yB,EAAAvoB,EAAmBwoB,KAAA,SAAAU,IAC3B,OAAiBX,EAAAvoB,EAAmB2oB,KAAA,SAAAQ,GACpC,OACA,OAAAA,EAAAN,KAAAM,EAAAL,MACA,OAEA,OADAK,EAAAL,KAAA,EACA8xB,GAAA7vB,EAAA6vB,CAAAW,GAEA,OACA,OAAApyB,EAAAJ,OAAA,SAAAI,EAAAgC,MAEA,OACA,UACA,OAAAhC,EAAAF,SAGWC,OAGX9E,OAAA,SAAAwmB,GACA,OAAetiB,EAAA,EAAiBgzB,OAAA,SAExB/yB,EAAAvoB,EAAmBwoB,KAAA,SAAAa,IAC3B,OAAiBd,EAAAvoB,EAAmB2oB,KAAA,SAAAa,GACpC,OACA,OAAAA,EAAAX,KAAAW,EAAAV,MACA,OACA,OAAAU,EAAAT,OAAA,SAAA4xB,GAAA5vB,EAAA4vB,CAAA5+D,OAAA8F,OAAA,GAAiF+oD,EAAA,CACjFxX,UAAAxlD,EACAk9D,KAAA,YAGA,OACA,UACA,OAAAthB,EAAAP,SAGWI,OAGX3b,IAAA,SAAAsO,GACA,OAAesM,EAAA,EAAiBgzB,OAAA,SAExB/yB,EAAAvoB,EAAmBwoB,KAAA,SAAAkB,IAC3B,OAAiBnB,EAAAvoB,EAAmB2oB,KAAA,SAAAgB,GACpC,OACA,OAAAA,EAAAd,KAAAc,EAAAb,MACA,OACA,OAAAa,EAAAZ,OAAA,SAAoDgyB,GAAShwB,EAATgwB,CAASh/D,OAAA8F,OAAA,GAAsBm6B,EAAA,CACnFpuC,YACAo9D,mBAGA,OACA,UACA,OAAArhB,EAAAV,SAGWS,OAGX8xB,OAAA,SAAAV,GACA,OAAexyB,EAAA,EAAiBgzB,OAAA,SAExB/yB,EAAAvoB,EAAmBwoB,KAAA,SAAAyB,IAC3B,OAAiB1B,EAAAvoB,EAAmB2oB,KAAA,SAAAuB,GACpC,OACA,OAAAA,EAAArB,KAAAqB,EAAApB,MACA,OACA,OAAAoB,EAAAnB,OAAA,SAAA8xB,GAAA9vB,EAAA8vB,CAAAC,EAAAltE,IAEA,OACA,UACA,OAAAs8C,EAAAjB,SAGWgB,uBCjKJ,SAAAwxB,GAAA1wB,GACP,OACA2wB,oBAAA,WACA,OAAA3wB,EAAArd,IAAqBwd,EAAA,QAAmBj/C,EAAa0vE,GAAA,IAErDC,cAAA,SAAAC,GACA,OAAA9wB,EAAArd,IAAqB3xB,OAAAmvC,EAAA,EAAAnvC,CAAgB8/D,GAAA,GAAoBF,GAAA,IAEzDG,qBAAA,SAAAluE,GACA,OAAAm9C,EAAAuB,gBAAA5e,IAAqC3xB,OAAAmvC,EAAA,EAAAnvC,CAAoCnO,QAAA3B,EAAwB0vE,GAAA,IAEjGI,WAAA,SAAAv3C,GACA,OAAAumB,EAAAtB,KAAsByB,EAAA,EAAa1mB,EAAQm3C,GAAA,IAE3CK,eAAA,SAAAC,EAAAC,GACA,IAAAC,EAAoB71B,IAAK21B,EAAAG,cAAAjB,MAAA/0B,OAAiCL,EAAWE,mBACrEzhB,EAAA,IAAA63C,SAQA,OAPA73C,EAAA83C,OAAA,WAAAxtB,KAAAnJ,UAAA,CACAu2B,MACAK,UAAAN,EAAAhuE,KACAkuE,aAEA33C,EAAA83C,OAAA,OAAAL,GAEAlxB,EAAAuB,gBAAA7C,KAAsCyB,EAAA,EAAkB1mB,GAAAwkB,KAAA,SAAAnG,GACxD,OAAA9mC,OAAA8F,OAAA,GAA+BghC,EAAA,CAC/BuE,QAAA,CACA94C,GAAAu0C,EAAAuE,QACAo1B,SAAAP,EAAAhuE,WAKAwuE,0BAAA,SAAAR,EAAAruE,EAAA8uE,EAAAC,GACA,IAAAR,EAAoB71B,IAAK21B,EAAAG,cAAAjB,MAAA/0B,OAAiCL,EAAWE,mBACrE22B,EAAA,IAAAP,SAOA,OANAO,EAAAN,OAAA,WAAAxtB,KAAAnJ,UAAA,CACAk3B,aAAAF,EACAJ,UAAAN,EAAAhuE,KACAkuE,aAEAS,EAAAN,OAAA,OAAAL,GACAlxB,EAAAuB,gBAAA7C,KAAsC1tC,OAAAmvC,EAAA,GAAAnvC,CAA4BnO,EAAA8uE,GAAAE,IAElEE,4BAAA,SAAAb,EAAAruE,EAAAmvE,EAAAJ,GACA,IAAAR,EAAoB71B,IAAK21B,EAAAG,cAAAjB,MAAA/0B,OAAiCL,EAAWE,mBACrE22B,EAAA,IAAAP,SAOA,OANAO,EAAAN,OAAA,WAAAxtB,KAAAnJ,UAAA,CACAk3B,aAAAF,EACAJ,UAAAN,EAAAhuE,KACAkuE,aAEAS,EAAAN,OAAA,OAAAL,GACAlxB,EAAAuB,gBAAA7C,KAAsC1tC,OAAAmvC,EAAA,GAAAnvC,CAA8BnO,EAAAmvE,GAAAH,IAEpEI,cAAA,SAAAx4C,GACA,OAAAumB,EAAAuB,gBAAA7C,KAAsCyB,EAAA,EAAgB1mB,EAAQm3C,GAAA,IAE9DsB,sBAAA,SAAAz4C,GACA,OAAAumB,EAAAuB,gBAAA7C,KAAsCyB,EAAA,EAAwB1mB,EAAQm3C,GAAA,KC9D/D,SAAAuB,GAAAnyB,GACP,OACAuY,QAAA,WACA,OAAAvY,EAAAuB,gBAAA5e,IAAA,qBAA4DiuC,GAAA,KCGrD,SAAAwB,GAAApyB,GACP,gBAAAysB,EAAA4F,EAAAC,GACA,IAAAhG,EAAgBt3C,EAAAC,EAACqvB,QAAAmoB,KAAA,CAAAA,GACjB,OAAAzsB,EAAArd,IAAmBwd,EAAA,EAAc,CACjCssB,QAAAH,EAAAvnB,KAAA,KACAstB,eACAC,cAIO,IAAIC,GAAM,SAAAvyB,GACjB,gBAAAwyB,GACA,OAAAxyB,EAAAuB,gBAAA7C,KAAoCyB,EAAA,EAAqBqyB,EAAA,CACzDj5B,QAAA,CACAxoC,OAAA,wBAKW0hE,GAAI,SAAAzyB,GACf,OACArd,IAAA,SAAAsO,GACA,OAAasM,EAAA,OA3BDr8C,OA2BwB,SAE9Bs8C,EAAAvoB,EAAmBwoB,KAAA,SAAAC,IACzB,IAAAg1B,EAAAC,EAAA9wB,EACA,OAAerE,EAAAvoB,EAAmB2oB,KAAA,SAAAC,GAClC,OACA,OAAAA,EAAAC,KAAAD,EAAAE,MACA,OAQA,OAPA20B,EAAAzhC,EAAAyhC,KAAAzhC,EAAAyhC,KAAA,EACAC,EAAA1hC,EAAA0hC,SAAA1hC,EAAA0hC,SAAA,EACA9wB,EAAA7wC,OAAA8F,OAAA,GAAgDm6B,EAAA,CAChDyhC,OACAC,aAEA90B,EAAAE,KAAA,EACAiC,EAAArd,IAA+Bwd,EAAA,EAAkB0B,GAEjD,OACA,OAAAhE,EAAAG,OAAA,SAAAH,EAAAuC,MAEA,OACA,UACA,OAAAvC,EAAAK,SAGSR,OAGTk1B,YAAA,SAAAC,GACA,OAAA7yB,EAAAuB,gBAAA7C,KAAsCyB,EAAA,EAAgB0yB,IAEtDC,gBAAA,SAAA7hC,GACA,OAAasM,EAAA,OA3DDr8C,OA2DwB,SAE9Bs8C,EAAAvoB,EAAmBwoB,KAAA,SAAAU,IACzB,OAAeX,EAAAvoB,EAAmB2oB,KAAA,SAAAQ,GAClC,OACA,OAAAA,EAAAN,KAAAM,EAAAL,MACA,OAEA,OADAK,EAAAL,KAAA,EACAiC,EAAArd,IAA+Bwd,EAAA,EAAgBlP,GAE/C,OACA,OAAAmN,EAAAJ,OAAA,SAAAI,EAAAgC,MAEA,OACA,UACA,OAAAhC,EAAAF,SAGSC,OAGT40B,kBAAA,SAAA9hC,GACA,OAAasM,EAAA,OAjFDr8C,OAiFwB,SAE9Bs8C,EAAAvoB,EAAmBwoB,KAAA,SAAAa,IACzB,OAAed,EAAAvoB,EAAmB2oB,KAAA,SAAAa,GAClC,OACA,OAAAA,EAAAX,KAAAW,EAAAV,MACA,OAEA,OADAU,EAAAV,KAAA,EACAiC,EAAArd,IAA+Bwd,EAAA,EAA2BlP,GAE1D,OACA,OAAAwN,EAAAT,OAAA,SAAAS,EAAA2B,MAEA,OACA,UACA,OAAA3B,EAAAP,SAGSI,OAGT00B,YAAA,SAAA/hC,GACA,OAAasM,EAAA,OAvGDr8C,OAuGwB,SAE9Bs8C,EAAAvoB,EAAmBwoB,KAAA,SAAAkB,IACzB,OAAenB,EAAAvoB,EAAmB2oB,KAAA,SAAAgB,GAClC,OACA,OAAAA,EAAAd,KAAAc,EAAAb,MACA,OAEA,OADAa,EAAAb,KAAA,EACAiC,EAAAuB,gBAAA1C,IAA+C7tC,OAAAmvC,EAAA,GAAAnvC,CAAeigC,EAAA1tC,GAAA0tC,EAAArY,QAAAqY,GAE9D,OACA,OAAA2N,EAAAZ,OAAA,SAAAY,EAAAwB,MAEA,OACA,UACA,OAAAxB,EAAAV,SAGSS,OAGTs0B,KAAAb,GAAApyB,GACAkzB,kBAAuBX,GAAMvyB,GAC7BmzB,kBAAA,SAAAX,GACA,OAAAxyB,EAAAuB,gBAAA1C,IAAqC7tC,OAAAmvC,EAAA,GAAAnvC,CAAqBwhE,EAAAjvE,IAAA,CAC1D6vE,YAAAZ,EAAAY,YACAC,QAAAb,EAAAa,QACAC,sBAAAd,EAAAc,sBACAvvE,KAAAyuE,EAAAzuE,oBC7HWwvE,GAAY,SAAAvzB,GACvB,OACAwzB,qCAAA,SAAAviC,GACA,OAAasM,EAAA,OATDr8C,OASwB,SAE9Bs8C,EAAAvoB,EAAmBwoB,KAAA,SAAAC,IACzB,OAAeF,EAAAvoB,EAAmB2oB,KAAA,SAAAC,GAClC,OACA,OAAAA,EAAAC,KAAAD,EAAAE,MACA,OAEA,OADAF,EAAAE,KAAA,EACAiC,EAAAuB,gBAAA5e,IAA+Cwd,EAAA,EAAuClP,GAEtF,OACA,OAAA4M,EAAAG,OAAA,SAAAH,EAAAuC,MAEA,OACA,UACA,OAAAvC,EAAAK,SAGSR,OAGT+1B,kBAAA,SAAA5wE,GACA,OAAa06C,EAAA,OA/BDr8C,OA+BwB,SAE9Bs8C,EAAAvoB,EAAmBwoB,KAAA,SAAAU,IACzB,OAAeX,EAAAvoB,EAAmB2oB,KAAA,SAAAQ,GAClC,OACA,OAAAA,EAAAN,KAAAM,EAAAL,MACA,OAEA,OADAK,EAAAL,KAAA,EACAiC,EAAAuB,gBAAA5e,IAA+Cwd,EAAA,EAA8Bt9C,EAAa+tE,GAAA,GAE1F,OACA,OAAAxyB,EAAAJ,OAAA,SAAAI,EAAAgC,MAEA,OACA,UACA,OAAAhC,EAAAF,SAGSC,OAGTu1B,wCAAA,SAAAziC,GACA,OAAasM,EAAA,OArDDr8C,OAqDwB,SAE9Bs8C,EAAAvoB,EAAmBwoB,KAAA,SAAAa,IACzB,OAAed,EAAAvoB,EAAmB2oB,KAAA,SAAAa,GAClC,OACA,OAAAA,EAAAX,KAAAW,EAAAV,MACA,OAEA,OADAU,EAAAV,KAAA,EACAiC,EAAAuB,gBAAA1C,IAA+C7tC,OAAAmvC,EAAA,EAAAnvC,CAAuCigC,EAAA0iC,WAAA,GAAyB/C,GAAA,GAE/G,OACA,OAAAnyB,EAAAT,OAAA,SAAAS,EAAA2B,MAEA,OACA,UACA,OAAA3B,EAAAP,SAGSI,OAGTs1B,uCAAA,SAAA3iC,GACA,OAAasM,EAAA,OA3EDr8C,OA2EwB,SAE9Bs8C,EAAAvoB,EAAmBwoB,KAAA,SAAAkB,IACzB,OAAenB,EAAAvoB,EAAmB2oB,KAAA,SAAAgB,GAClC,OACA,OAAAA,EAAAd,KAAAc,EAAAb,MACA,OAEA,OADAa,EAAAb,KAAA,EACAiC,EAAAuB,gBAAA1C,IAA+C7tC,OAAAmvC,EAAA,GAAAnvC,CAAsCigC,EAAA0iC,WAAA,GAAyB/C,GAAA,GAE9G,OACA,OAAAhyB,EAAAZ,OAAA,SAAAY,EAAAwB,MAEA,OACA,UACA,OAAAxB,EAAAV,SAGSS,SC7FLk1B,GAAc,CAClBt6B,QAAA,CACAxoC,OAAA,qBAGO,SAAA+iE,GAAA9zB,GACP,OACA+zB,iBAAA,SAAAlxE,EAAAy/C,EAAAC,GACA,IAAAyxB,EAA4Bz4B,IAAK+G,GAAAjH,OAAA,cACjC44B,EAA0B14B,IAAKgH,GAAAlH,OAAA,cAC/B,OAAA2E,EAAAuB,gBAAA5e,IAAqC3xB,OAAAmvC,EAAA,EAAAnvC,CAAsBnO,GAAA,CAC3Dy/C,UAAA0xB,EACAzxB,QAAA0xB,GACSJ,KAETK,gBAAA,SAAArxE,EAAAM,GACA,IAAAgxE,EAA0B54B,IAAKp4C,GAAAk4C,OAAA,cAC/B,OAAA2E,EAAAuB,gBAAA6yB,UAA2CpjE,OAAAmvC,EAAA,EAAAnvC,CAAqBnO,GAAA,CAChEM,KAAAgxE,GACSN,KAETQ,qBAAA,SAAAxxE,EAAAy/C,EAAAC,GACA,IAAAyxB,EAA4Bz4B,IAAK+G,GAAAjH,OAAA,cACjC44B,EAA0B14B,IAAKgH,GAAAlH,OAAA,cAC/B,OAAA2E,EAAAuB,gBAAA5e,IAAqC3xB,OAAAmvC,EAAA,EAAAnvC,CAA0BnO,GAAA,CAC/Dy/C,UAAA0xB,EACAzxB,QAAA0xB,GACSJ,KAETS,oBAAA,SAAAzxE,EAAAM,GACA,IAAAgxE,EAA0B54B,IAAKp4C,GAAAk4C,OAAA,cAC/B,OAAA2E,EAAAuB,gBAAA6yB,UAA2CpjE,OAAAmvC,EAAA,EAAAnvC,CAAyBnO,GAAA,CACpEM,KAAAgxE,GACSN,KAETU,gBAAA,SAAA1xE,EAAAilC,EAAA0sC,GACA,OAAAx0B,EAAAuB,gBAAA5e,IAAqC3xB,OAAAmvC,EAAA,EAAAnvC,CAAqBnO,EAAAilC,GAAA,CAC1D0sC,WACSX,KAETY,eAAA,SAAA5xE,EAAAilC,EAAA3kC,GACA,OAAA68C,EAAAuB,gBAAA6yB,UAA2CpjE,OAAAmvC,EAAA,EAAAnvC,CAAoBnO,EAAAilC,GAAA,CAC/D3kC,QACS0wE,MC5CF,SAAAa,GAAA10B,GACP,gBAAAn9C,GACA,OAAAm9C,EAAAuB,gBAAA5e,IAAmCwd,EAAA,EAAyB,CAC5Dt9C,aACK,CACL02C,QAAA,CACAxoC,OAAA,uBAKO,SAAA4jE,GAAA30B,GACP,gBAAA3D,GACA,OAAA2D,EAAAuB,gBAAA5e,IAAmCwd,EAAA,EAA0B9D,EAAA,CAC7D9C,QAAA,CACAxoC,OAAA,uBCbA,IAAI6jE,GAAc,CAClBr7B,QAAA,CACAxoC,OAAA,qBAGO,SAAA8jE,GAAA70B,GACP,IAAAqB,EAAAvE,KAEA,OACAg4B,WAAA,SAAAvK,GACA,OAAahtB,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAAC,IACzB,OAAeF,EAAAvoB,EAAmB2oB,KAAA,SAAAC,GAClC,OACA,OAAAA,EAAAC,KAAAD,EAAAE,MACA,OAEA,OADAF,EAAAE,KAAA,EACAiC,EAAAtB,KAAA,GAAA9xC,OAA0CuzC,EAAA,GAAmB,cAAAvzC,OAAA29D,GAAA,GAAsCqK,IAEnG,OACA,OAAA/2B,EAAAG,OAAA,SAAAH,EAAAuC,MAEA,OACA,UACA,OAAAvC,EAAAK,SAGSR,OAGTq3B,YAAA,SAAAC,GACA,OAAaz3B,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAAU,IACzB,OAAeX,EAAAvoB,EAAmB2oB,KAAA,SAAAQ,GAClC,OACA,OAAAA,EAAAN,KAAAM,EAAAL,MACA,OACA,OAAAK,EAAAJ,OAAA,SAAAgC,EAAArd,IAA0Dwd,EAAA,GAAoB,CAC9E80B,OAAAD,GACmBJ,KAEnB,OACA,UACA,OAAAx2B,EAAAF,SAGSC,OAGT+2B,WAAA,WACA,OAAa33B,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAAa,IACzB,OAAed,EAAAvoB,EAAmB2oB,KAAA,SAAAa,GAClC,OACA,OAAAA,EAAAX,KAAAW,EAAAV,MACA,OACA,OAAAU,EAAAT,OAAA,SAAAgC,EAAAuB,gBAAA5e,IAA0Ewd,EAAA,GAAoB,GAAMy0B,KAEpG,OACA,UACA,OAAAn2B,EAAAP,SAGSI,OAGT62B,aAAA,SAAAC,GACA,OAAa73B,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAAkB,IACzB,OAAenB,EAAAvoB,EAAmB2oB,KAAA,SAAAgB,GAClC,OACA,OAAAA,EAAAd,KAAAc,EAAAb,MACA,OACA,OAAAa,EAAAZ,OAAA,SAAAgC,EAAAuB,gBAAA7C,KAA2E1tC,OAAAmvC,EAAA,GAAAnvC,CAAqBokE,GAAA,GAAgBR,KAEhH,OACA,UACA,OAAAh2B,EAAAV,SAGSS,OAGT02B,eAAA,WACA,OAAa93B,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAAyB,IACzB,OAAe1B,EAAAvoB,EAAmB2oB,KAAA,SAAAuB,GAClC,OACA,OAAAA,EAAArB,KAAAqB,EAAApB,MACA,OACA,OAAAoB,EAAAnB,OAAA,SAAAgC,EAAAuB,gBAAA5e,IAA0Ewd,EAAA,GAAoB,GAAMy0B,KAEpG,OACA,UACA,OAAAz1B,EAAAjB,SAGSgB,QChFF,IAAIo2B,GAAsB,SAAAC,EAAAv1B,EAAAn9C,EAAAo9D,GACjC,IAAA5e,EAAAvE,KAEE9rC,OAAA6rC,EAAA,EAAA7rC,CAAe8rC,KAAAy4B,GAEjBz4B,KAAAkc,MAAA,WACA,OAAWzb,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAAC,IACvB,OAAaF,EAAAvoB,EAAmB2oB,KAAA,SAAAC,GAChC,OACA,OAAAA,EAAAC,KAAAD,EAAAE,MACA,OACA,OAAAF,EAAAG,OAAA,SAA+CsyB,GAAKxzB,KAAAkD,IAALswB,CAAKxzB,KAAAj6C,UAAAi6C,KAAAmjB,eAEpD,OACA,UACA,OAAApiB,EAAAK,SAGOR,EAAAZ,UAIPA,KAAA04B,eAAA,WACA,OAAWj4B,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAAU,IACvB,OAAaX,EAAAvoB,EAAmB2oB,KAAA,SAAAQ,GAChC,OACA,OAAAA,EAAAN,KAAAM,EAAAL,MACA,OACA,OAAAK,EAAAJ,OAAA,SAAgD6tB,GAAiB/uB,KAAAkD,IAAjB6rB,CAAiB/uB,KAAAj6C,UAAAi6C,KAAAmjB,eAEjE,OACA,UACA,OAAA7hB,EAAAF,SAGOC,EAAArB,UAIPA,KAAA24B,SAAA,WACA,OAAWl4B,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAAa,IACvB,OAAad,EAAAvoB,EAAmB2oB,KAAA,SAAAa,GAChC,OACA,OAAAA,EAAAX,KAAAW,EAAAV,MACA,OACA,OAAAU,EAAAT,OAAA,SAAgD8tB,GAAWhvB,KAAAkD,IAAX8rB,CAAWhvB,KAAAj6C,UAAAi6C,KAAAmjB,eAE3D,OACA,UACA,OAAAxhB,EAAAP,SAGOI,EAAAxB,UAIPA,KAAAlF,UAAA,WACA,OAAW2F,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAAkB,IACvB,OAAanB,EAAAvoB,EAAmB2oB,KAAA,SAAAgB,GAChC,OACA,OAAAA,EAAAd,KAAAc,EAAAb,MACA,OAEA,OADAa,EAAAb,KAAA,EACqB4vB,GAAa7wB,KAAAkD,IAAb2tB,CAAa7wB,KAAAj6C,UAAAi6C,KAAAmjB,cAElC,OACA,OAAArhB,EAAAZ,OAAA,SAAAY,EAAAwB,MAEA,OACA,UACA,OAAAxB,EAAAV,SAGOS,EAAA7B,UAIPA,KAAA44B,QAAA,SAAAzkC,GACA,OAAWsM,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAAyB,IACvB,OAAa1B,EAAAvoB,EAAmB2oB,KAAA,SAAAuB,GAChC,OACA,OAAAA,EAAArB,KAAAqB,EAAApB,MACA,OACA,OAAAoB,EAAAnB,OAAA,SAAgDqxB,GAAOvyB,KAAAkD,IAAPqvB,CAAOr+D,OAAA8F,OAAA,GAA+Bm6B,EAAA,CACtFpuC,UAAAi6C,KAAAj6C,cAGA,OACA,UACA,OAAAs8C,EAAAjB,SAGOgB,EAAApC,UAIPA,KAAA0qB,IAAA,SAAAv2B,GACA,OAAWsM,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAA2B,IACvB,OAAa5B,EAAAvoB,EAAmB2oB,KAAA,SAAAyB,GAChC,OACA,OAAAA,EAAAvB,KAAAuB,EAAAtB,MACA,OACA,OAAAsB,EAAArB,OAAA,SAAgD+B,EAAUjD,KAAAkD,IAAVD,CAAU/uC,OAAA8F,OAAA,GAA+Bm6B,EAAA,CACzFpuC,UAAAi6C,KAAAj6C,cAGA,OACA,UACA,OAAAw8C,EAAAnB,SAGOkB,EAAAtC,UAIPA,KAAA64B,yBAAA,WACA,OAAWp4B,EAAA,EAAiB8D,OAAA,SAExB7D,EAAAvoB,EAAmBwoB,KAAA,SAAA4E,IACvB,OAAa7E,EAAAvoB,EAAmB2oB,KAAA,SAAA4E,GAChC,OACA,OAAAA,EAAA1E,KAAA0E,EAAAzE,MACA,OACA,OAAAyE,EAAAxE,OAAA,SAAgDguB,GAAwBlvB,KAAAkD,IAAxBgsB,CAAwBlvB,KAAAj6C,YAExE,OACA,UACA,OAAA2/C,EAAAtE,SAGOmE,EAAAvF,UAIPA,KAAAj6C,YACAi6C,KAAAmjB,eACAnjB,KAAAkD,OA0CA,IAAA41B,GAAA,GACO,SAAAC,GAAAl5B,EAAAC,EAAAM,EAAAC,GACP,QAAAj8C,IAAA00E,GAAAj5B,EAAAC,GACA,OAAAg5B,GAAAj5B,EAAAC,GAGA,IA9COoD,EA8CP81B,GA9CO91B,EA8CP,IAAmCvD,EAASE,EAAAC,GAAAm5B,oBAAA,CAC5C74B,aACAC,oBA/CA,CACA64B,KAAU/wB,EAAIjF,GACdoB,SAAcA,EAAQpB,GACtBi2B,kBAAuBjlE,OAAAilE,GAAA,EAAAjlE,CAAagvC,GACpCy1B,SAAA,CACA9yC,IAAWmpC,GAAW9rB,GACtBk2B,eAAsBnK,GAAsB/rB,GAC5Cm2B,kBAAyBnK,GAAwBhsB,IAEjD7G,OAAA6G,EACAhiB,YAAiB0yC,GAAW1wB,GAC5Bo2B,SAAczK,GAAQ3rB,GACtBq2B,QAAapK,GAAOjsB,GACpBs2B,WAAgBjJ,GAAUrtB,GAC1Bu2B,WAAA,CACAC,IAAWxlE,OAAAulE,GAAA,EAAAvlE,CAAGgvC,GACdy1B,SAAgB3J,GAAW9rB,GAC3By2B,iBAAwBzlE,OAAAulE,GAAA,EAAAvlE,CAAgBgvC,GACxC02B,UAAiB1lE,OAAAulE,GAAA,EAAAvlE,CAASgvC,GAC1B22B,qBAA4B3lE,OAAAulE,GAAA,EAAAvlE,CAAoBgvC,GAChD1c,OAActyB,OAAAulE,GAAA,EAAAvlE,CAAgBgvC,GAAA1c,OAC9Bse,QAAe5wC,OAAAulE,GAAA,EAAAvlE,CAAiBgvC,GAChC42B,UAAiB5lE,OAAAulE,GAAA,EAAAvlE,CAAmBgvC,IAEpC01B,QAAA,CACAmB,kBAAyBnC,GAAiB10B,GAC1C82B,YAAmBnC,GAAkB30B,IAErC+2B,UAAejD,GAAS9zB,GACxBuD,aAAkBgwB,GAAYvzB,GAC9Bg3B,YAAiBvE,GAAIzyB,GACrB60B,OAAYA,GAAM70B,GAClBgZ,MAAWsX,GAAKtwB,GAChBn6C,QAAaspE,GAAOnvB,GACpBhnB,OAAYg0C,GAAMhtB,GAClBysB,QAAagB,GAAOztB,GACpBirB,KAAUkH,GAAYnyB,KActB,OADA41B,GAAAj5B,EAAAC,GAAAk5B,EACAA,EAEO,SAAAmB,GAAAt6B,EAAAC,EAAA/5C,EAAAo9D,GACP,WAAaqV,GAAsB,IAAK74B,EAASE,EAAAC,GAAA/5C,EAAAo9D,GAE1C,SAAAiX,GAAAv6B,EAAAC,GACP,WAAakC,EAAWnC,EAAAC,GCxOjB,ICmBIu6B,GAAY,SAAAC,GACvB,OAASpiD,EAAAC,EAACoiD,MAAAD,GAAAztB,MAAA,KAAA2tB,IAAA,GAAA3tB,MAAA,KAAA5pB,IAAA,SAAAmc,GACV,OAAWlnB,EAAAC,EAAC00B,MAAAzN,EAAA,SACTq7B,YAAA51C,SCTH61C,GAAA,SAAAJ,EAAAn2E,GACA,OAVAk5C,QAAAC,IAAA,kBAAiCppC,OAAA,CAAAymE,SAAA,aAAAC,WAAA,GAAAC,yBAAA,MAAAC,qBAAA,wCAAAC,0BAAA,sCAAAC,6BAAA,iCAAAC,wBAAA,8BAAAC,oBAAA,iCAAAC,0BAAA,iCAAAC,mBAAA,qCAAAC,sBAAA,8BAAAC,gBAAA,QAAAC,sBAAA,aAAAC,6BAAA,eAAAC,gCAAA,eAAAC,qBAAA,OAAAC,0BAAA,GAAAC,kBAAA,eAAAC,sBAAA,eAAAC,wBAAA,kEAAAC,wBAAA,KAAAC,wBAAA,2BAAWC,eAH5C,OAIS/nE,OAAA,CAAAymE,SAAA,aAAAC,WAAA,GAAAC,yBAAA,MAAAC,qBAAA,wCAAAC,0BAAA,sCAAAC,6BAAA,iCAAAC,wBAAA,8BAAAC,oBAAA,iCAAAC,0BAAA,iCAAAC,mBAAA,qCAAAC,sBAAA,8BAAAC,gBAAA,QAAAC,sBAAA,aAAAC,6BAAA,eAAAC,gCAAA,eAAAC,qBAAA,OAAAC,0BAAA,GAAAC,kBAAA,eAAAC,sBAAA,eAAAC,wBAAA,kEAAAC,wBAAA,KAAAC,wBAAA,2BAAWC,gBASpB93E,GAN8B,SAAAA,GAE9B,MAAU,QAAD+zB,EAAAC,EAACk6B,KAAAluD,EAAA,GAAA8jD,KAAA,IAI0Ci0B,CAAmB/3E,IAiBhEg4E,GAAA,SAAA7B,EAAArzE,EAAA9C,GAEP,YAAA8C,EACA,cAAA6I,OAAA7I,GAGA,IAAAm1E,EAAA,QAAAtsE,OApBO,SAAAwqE,EAAAn2E,GACP,OAAAu2E,GAAAJ,EAAAn2E,GACA,aAGA,eAeAk4E,CAAA/B,EAAAn2E,GAAAm4E,eAEA,OAAAr1E,EACA,GAAA6I,OAAAssE,EAAA,KAAAtsE,OAAA7I,GAGAm1E,GC1CWG,GAAiC,SAAAC,EAAAC,GAC5C,IAAAC,EAAA,GAkEA,MAhEA,GAAA5sE,OAAgDoE,OAAA60B,GAAA,EAAA70B,CAAkBsoE,GAAA,IAAwCtoE,OAAA60B,GAAA,EAAA70B,CAAkBuoE,GAAA,KAC5HE,QAAA,SAAAC,GAIA,IAAAC,EAAAH,EAAAI,UAAA,SAAAC,GACA,OAAAH,EAAAlzE,YAAAqzE,EAAArzE,WAAAkzE,EAAAhzE,WAAAmzE,EAAAnzE,YAGA,IAAAizE,GAGAH,EAAAlzB,KAAA,CACA9/C,UAAAkzE,EAAAlzE,UAAAkzE,EAAAlzE,UAAA,GACAC,cAAAizE,EAAAjzE,cAAAizE,EAAAjzE,cAAA,GACAC,SAAAgzE,EAAAhzE,SAAAgzE,EAAAhzE,SAAA,GACAC,OAAA+yE,EAAA/yE,OAAA+yE,EAAA/yE,OAAA,GACAgrE,gBAAA+H,EAAA/H,gBACAK,gBAAA0H,EAAA1H,gBACA8H,oBAAA,CACA97C,YAAA,GACAs7C,eAAA,IAEA7xE,kBAAA,KAGAkyE,EAAAH,EAAA10C,OAAA,KAEA00C,EAAAG,GAAAhI,iBAAA+H,EAAA/H,kBACA6H,EAAAG,GAAAhI,gBAAA+H,EAAA/H,iBAGA6H,EAAAG,GAAA3H,iBAAA0H,EAAA1H,kBACAwH,EAAAG,GAAA3H,gBAAA0H,EAAA1H,kBAKA,IAAA+H,EAAA,GAAAntE,OAA+BoE,OAAA60B,GAAA,EAAA70B,CAAkB0oE,EAAAM,cAAAN,EAAAM,cAAA,IAAgGhpE,OAAA60B,GAAA,EAAA70B,CAAkB0oE,EAAAO,cAAAP,EAAAO,cAAA,KAEnKC,EAAiClpE,OAAA60B,GAAA,EAAA70B,CAAkB,IAAA40B,IAAA8zC,EAAAjyE,kBAAAiyE,EAAAjyE,kBAAAs4B,IAAA,SAAAo6C,GACnD,OAAAA,EAAAxyE,eACK,KAELF,EAA4BuJ,OAAA60B,GAAA,EAAA70B,CAAkB,IAAA40B,IAAA8zC,EAAAjyE,kBAAAiyE,EAAAjyE,kBAAA,KAE9CA,EAAAq9B,OAAA,IACA00C,EAAAG,GAAAlyE,qBAIA,IAAA2yE,EAAAL,EAAAx3C,OAAA,SAAA83C,GACA,mBAAAA,EAAAx4E,OAAA,YAAAw4E,EAAAx4E,QAAAq4E,EAAAn6C,IAAA,SAAAu6C,GACA,OAAAD,EAAAE,mBAAA97C,SAAA67C,KACO77C,UAAA,KAIPi7C,EAAA1H,gBACAwH,EAAAG,GAAAG,oBAAAR,eAAAc,EAEAZ,EAAAG,GAAAG,oBAAA97C,YAAAo8C,IAGAZ,GCpEA52C,EAAAC,EAAAC,EAAA,uBAAAwc,IAAA1c,EAAAC,EAAAC,EAAA,sBAAA6c,IAAA/c,EAAAC,EAAAC,EAAA,sBAAAqd,EAAA,KAAAvd,EAAAC,EAAAC,EAAA,sBAAAqd,EAAA,IAAAvd,EAAAC,EAAAC,EAAA,sBAAAqd,EAAA,IAAAvd,EAAAC,EAAAC,EAAA,sBAAAqd,EAAA,KAAAvd,EAAAC,EAAAC,EAAA,sBAAAqd,EAAA,IAAAvd,EAAAC,EAAAC,EAAA,sBAAAqd,EAAA,IAAAvd,EAAAC,EAAAC,EAAA,sBAAAqd,EAAA,IAAAvd,EAAAC,EAAAC,EAAA,sBAAAqd,EAAA,IAAAvd,EAAAC,EAAAC,EAAA,sBAAAqd,EAAA,KAAAvd,EAAAC,EAAAC,EAAA,sBAAAqd,EAAA,IAAAvd,EAAAC,EAAAC,EAAA,sBAAAqd,EAAA,IAAAvd,EAAAC,EAAAC,EAAA,sBAAAqd,EAAA,IAAAvd,EAAAC,EAAAC,EAAA,sBAAAqd,EAAA,IAAAvd,EAAAC,EAAAC,EAAA,sBAAAqd,EAAA,IAAAvd,EAAAC,EAAAC,EAAA,sBAAAqd,EAAA,IAAAvd,EAAAC,EAAAC,EAAA,sBAAA6jB,KAAA/jB,EAAAC,EAAAC,EAAA,sBAAA4gB,IAAA9gB,EAAAC,EAAAC,EAAA,uBAAAsnB,KAAAxnB,EAAAC,EAAAC,EAAA,sBAAAghC,KAAAlhC,EAAAC,EAAAC,EAAA,sBAAAmiC,KAAAriC,EAAAC,EAAAC,EAAA,sBAAA8jC,KAAAhkC,EAAAC,EAAAC,EAAA,sBAAA+jC,KAAAjkC,EAAAC,EAAAC,EAAA,uBAAAmkC,KAAArkC,EAAAC,EAAAC,EAAA,uBAAAokC,KAAAtkC,EAAAC,EAAAC,EAAA,uBAAAmlC,KAAArlC,EAAAC,EAAAC,EAAA,sBAAA2uB,KAAA7uB,EAAAC,EAAAC,EAAA,sBAAA22B,KAAA72B,EAAAC,EAAAC,EAAA,sBAAAmpB,KAAArpB,EAAAC,EAAAC,EAAA,sBAAAkpB,KAAAppB,EAAAC,EAAAC,EAAA,sBAAA23B,KAAA73B,EAAAC,EAAAC,EAAA,sBAAAg4B,KAAAl4B,EAAAC,EAAAC,EAAA,sBAAAg5B,KAAAl5B,EAAAC,EAAAC,EAAA,sBAAAi5B,KAAAn5B,EAAAC,EAAAC,EAAA,uBAAA4lC,KAAA9lC,EAAAC,EAAAC,EAAA,uBAAAi2B,KAAAn2B,EAAAC,EAAAC,EAAA,sBAAAk5B,KAAAp5B,EAAAC,EAAAC,EAAA,sBAAA+yC,KAAAjzC,EAAAC,EAAAC,EAAA,sBAAAm0C,KAAAr0C,EAAAC,EAAAC,EAAA,sBAAAo0C,KAAAt0C,EAAAC,EAAAC,EAAA,uBAAApE,IAAAkE,EAAAC,EAAAC,EAAA,uBAAAgY,IAAAlY,EAAAC,EAAAC,EAAA,sBAAAkY,IAAApY,EAAAC,EAAAC,EAAA,sBAAAqY,IAAAvY,EAAAC,EAAAC,EAAA,uBAAA4Y,IAAA9Y,EAAAC,EAAAC,EAAA,uBAAA6Y,IAAA/Y,EAAAC,EAAAC,EAAA,uBAAA8Y,IAAAhZ,EAAAC,EAAAC,EAAA,uBAAA+Y,IAAAjZ,EAAAC,EAAAC,EAAA,uBAAAgZ,IAAAlZ,EAAAC,EAAAC,EAAA,uBAAAiZ,IAAAnZ,EAAAC,EAAAC,EAAA,uBAAAw5B,KAAA15B,EAAAC,EAAAC,EAAA,uBAAAm7B,KAAAr7B,EAAAC,EAAAC,EAAA,uBAAAo7B,KAAAt7B,EAAAC,EAAAC,EAAA,sBAAAq7B,KAAAv7B,EAAAC,EAAAC,EAAA,uBAAAs7B,KAAAx7B,EAAAC,EAAAC,EAAA,uBAAAu7B,KAAAz7B,EAAAC,EAAAC,EAAA,uBAAAw7B,KAAA17B,EAAAC,EAAAC,EAAA,sBAAA27B,KAAA77B,EAAAC,EAAAC,EAAA,uBAAA67B,KAAA/7B,EAAAC,EAAAC,EAAA,uBAAA05B,KAAA55B,EAAAC,EAAAC,EAAA,uBAAAmhB,IAAArhB,EAAAC,EAAAC,EAAA,sBAAAi8B,KAAAn8B,EAAAC,EAAAC,EAAA,sBAAAk8B,KAAAp8B,EAAAC,EAAAC,EAAA,sBAAAo8B,KAAAt8B,EAAAC,EAAAC,EAAA,uBAAAy8B,KAAA38B,EAAAC,EAAAC,EAAA,uBAAA08B,KAAA58B,EAAAC,EAAAC,EAAA,uBAAAklB,KAAAplB,EAAAC,EAAAC,EAAA,sBAAA28B,KAAA78B,EAAAC,EAAAC,EAAA,uBAAA48B,KAAA98B,EAAAC,EAAAC,EAAA,uBAAA68B,KAAA/8B,EAAAC,EAAAC,EAAA,uBAAA88B,KAAAh9B,EAAAC,EAAAC,EAAA,uBAAA89B,KAAAh+B,EAAAC,EAAAC,EAAA,uBAAAq+B,KAAAv+B,EAAAC,EAAAC,EAAA,sBAAAw+B,KAAA1+B,EAAAC,EAAAC,EAAA,uBAAA8+B,KAAAh/B,EAAAC,EAAAC,EAAA,uBAAAi/B,KAAAn/B,EAAAC,EAAAC,EAAA,sBAAAm/B,KAAAr/B,EAAAC,EAAAC,EAAA,sBAAAs/B,KAAAx/B,EAAAC,EAAAC,EAAA,sBAAAw/B,KAAA1/B,EAAAC,EAAAC,EAAA,uBAAA2/B,KAAA7/B,EAAAC,EAAAC,EAAA,uBAAA+/B,KAAAjgC,EAAAC,EAAAC,EAAA,sBAAAkgC,KAAApgC,EAAAC,EAAAC,EAAA,sBAAAmgC,KAAArgC,EAAAC,EAAAC,EAAA,sBAAA8qB,KAAAhrB,EAAAC,EAAAC,EAAA,sBAAAynB,KAAA3nB,EAAAC,EAAAC,EAAA,uBAAA8nB,KAAAhoB,EAAAC,EAAAC,EAAA,uBAAAyT,KAAA3T,EAAAC,EAAAC,EAAA,uBAAAkoB,KAAApoB,EAAAC,EAAAC,EAAA,uBAAAilB,KAAAnlB,EAAAC,EAAAC,EAAA,sBAAAsoB,KAAAxoB,EAAAC,EAAAC,EAAA,uBAAA0oB,KAAA5oB,EAAAC,EAAAC,EAAA,uBAAA6oB,KAAA/oB,EAAAC,EAAAC,EAAA,sBAAAq0C,KAAAv0C,EAAAC,EAAAC,EAAA,uBAAAm2C,KAAAr2C,EAAAC,EAAAC,EAAA,uBAAAu2C,KAAAz2C,EAAAC,EAAAC,EAAA,uBAAAokC,KAAAtkC,EAAAC,EAAAC,EAAA,uBAAAmlC,mGCoBoDz/B,YAAkC,CACpFC,QAV2B,6BAW3BC,QAV2B,6BAW3BC,MAVyB,4BAOyBH,sBAUvCe,EAAqB,CAChCixC,mBACAC,mBACAC,iBACAC,UAAW1xC,+BAlBwB,oCAkBxBA,GACX2xC,QAAS3xC,+BAnB0B,oCAmB1BA,GACT4xC,YAAa5xC,+BAnB2B,yCAmB3BA,GACb6xC,UAAW7xC,+BAnB0B,sCAmB1BA,oQC6BA8xC,EAAc,SAACl5E,EAAmC8zD,GAC7D,OAAQA,EAAO5xD,MACb,IAAK,YACH,OAAOiN,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEEi4C,OAAQ6b,EAAOtZ,UAEnB,IAAK,gBACH,OAAOrrC,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEEm5E,WAAY9zC,IAAEooB,KAAKztD,EAAMm5E,WAAYrlB,EAAOtZ,QAAQ4+B,SAGxD,IAAK,WAAY,IAAAC,EACQvlB,EAAOtZ,QAAtBrE,EADOkjC,EACPljC,MAAOsP,EADA4zB,EACA5zB,IACT6zB,EAAgBt5E,EAAMm3B,OAAOgf,EAAM9C,SAAW,GAC9CkmC,EAAqBl0C,IAAEm0C,UAAU,GAAIF,EAAenjC,EAAO,SAAC/iB,EAAGqmD,GAAJ,OAC/Dp0C,IAAEhF,MAAMo5C,IAAMp0C,IAAEijB,MAAMmxB,GAAKrmD,OAAI/zB,IAEjC,OAAO8P,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEEm3B,OAAOhoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EAAMm3B,OADLhoB,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEHgnC,EAAM9C,OAASkmC,IAElBJ,WAAU,GAAApuE,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAMnP,EAAMm5E,YAAZ,CAAwBI,IAClCG,YAAaj0B,IAGjB,IAAK,gBAAiB,IAAAk0B,EACQ7lB,EAAOtZ,QAA3Bo/B,EADYD,EACZC,WAAYn0B,EADAk0B,EACAl0B,IACd6zB,EAAgBt5E,EAAMm3B,OAAOyiD,EAAWvmC,SAAW,GACnDkmC,EAAqBl0C,IAAEm0C,UAAU,GAAIF,EAAeM,EAAY,SAACxmD,EAAGqmD,GAAJ,OACpEp0C,IAAEhF,MAAMo5C,IAAMp0C,IAAEijB,MAAMmxB,GAAKrmD,OAAI/zB,IAIjC,OADAk6E,EAAmB3mC,eAAiBgnC,EAAW9mC,WACxC3jC,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEEm3B,OAAOhoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EAAMm3B,OADLhoB,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEHyqE,EAAWvmC,OAASkmC,IAEvBJ,WAAU,GAAApuE,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAMnP,EAAMm5E,YAAZ,CAAwBI,IAClCG,YAAaj0B,IAGjB,IAAK,sBAAuB,IAAAo0B,EACH/lB,EAAOtZ,QAAtB2c,EADkB0iB,EAClB1iB,MAAO1R,EADWo0B,EACXp0B,IACPgB,EAAY0Q,EAAZ1Q,QACFqzB,EAAW95E,EAAMqgE,OAAO5Z,IAAY,CAAExO,OAAQkf,EAAO0c,QAAS,IACpE,OAAO1kE,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEEqgE,OAAOlxD,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EAAMqgE,OADLlxD,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEHs3C,EAFGt3C,OAAAy0B,EAAA,EAAAz0B,CAAA,GAGC2qE,EAHD,CAIF7hC,OAAQkf,EACR0c,QAAO,GAAA9oE,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAM2qE,EAASjG,SAAf,CAAwB1c,QAGnCuiB,YAAaj0B,IAIjB,QACE,OAAOzlD,IAIA+5E,EAA+C,CAC1DZ,WAAY,GACZhiD,OAAQ,GACRkpC,OAAQ,GACRqZ,YAAa,IAGFM,EAAoBC,IAAMC,cAA2C,cACrEC,EAAmBF,IAAMC,cAA0CH,GACnEK,EAAkBH,IAAMC,cAElC,CAAEG,KAAM,eAEEC,EAAiB,SAACC,GAE7B,MAAO,CACLC,UAFgB,SAACviC,GAAD,OAAgCsiC,EAAS,CAAEr4E,KAAM,YAAas4C,QAASvC,KAGvFwiC,QAAS,SAACtkC,EAAkBsP,GAAnB,OAAmC80B,EAAS,CAAEr4E,KAAM,WAAYs4C,QAAS,CAAErE,QAAOsP,UAC3Fi1B,cAAe,SAACvjB,EAAwB1R,GAAzB,OAAyC80B,EAAS,CAAEr4E,KAAM,sBAAuBs4C,QAAS,CAAE2c,QAAO1R,UAClHk1B,aAAc,SAACf,EAA4Bn0B,GAA7B,OAA6C80B,EAAS,CAAEr4E,KAAM,gBAAiBs4C,QAAS,CAAEo/B,aAAYn0B,UACpHm1B,cAAe,SAACxB,GAAD,OAAmBmB,EAAS,CAAEr4E,KAAM,gBAAiBs4C,QAAS,CAAE4+B,sBCvI5E,IAAMyB,EAAuB,SAClCC,EACA95E,EACA+5E,EACAC,GAEA,IAAMC,EAAe,MAAAlwE,OAAM+vE,GAAN,KAAA/vE,OAAuB/J,GAAag6E,EAAc,MAAQ,OAAOt6C,OAAO,SAAA2Z,GAAC,YAAUh7C,IAANg7C,IAC5F6gC,EAAuB71C,IAAE81C,QAAQJ,EAAM,SAAAz6C,GAAC,OAAIA,IAC/CI,OAAO,SAAA06C,GAAE,MACI,UAAZA,EAAGld,KAAmBkd,EAAGxQ,QAAQ3nC,OAAS,EAAgB,WAAZm4C,EAAGld,MAAoBkd,EAAGC,iBAAiBp4C,OAAS,IAEnG/E,IAAI,SAAAk9C,GAAE,OA1BX,SAA6B96C,GAC3B,OAAQA,EAAE49B,MACR,IAAK,QACH,IAAMod,EAAaj2C,IAAEnH,IAAIoC,EAAEsqC,QAAS,SAAA2Q,GAAG,OAAKC,aAAYD,GAAOE,aAAoBF,GAAOA,IAAMr4B,KAAK,KACrG,OAAO5iB,EAAEsqC,QAAQ3nC,OAAS,EAAnB,GAAAl4B,OAA0B2wE,KAA1B,KAAA3wE,OAA2CuwE,GAAe,GAEnE,IAAK,SACH,OAAOh7C,GAAKA,EAAE+6C,kBAAoB/6C,EAAE+6C,iBAAiBp4C,OAAS,EAAvD,GAAAl4B,OACA4wE,KADA,KAAA5wE,OACkBm3C,KAAKnJ,UAAUzY,EAAE+6C,mBACtC,GACN,IAAK,cACH,SAAAtwE,OAAU6wE,KAAV,OAeSC,CAAoBT,KACjC,GAAIN,GAAYC,GAAQG,EAAqBj4C,OAAS,EAEpD,OADwBoC,IAAEs7B,MAAMsa,EAAcC,GAAsBh4B,KAAK,MAKhE44B,EAA6B,SAAChB,EAAkB95E,EAA4Bg6E,GACvF,IAAMl7C,GAAwB,IAAhBk7C,EAAuB,EAAI,EACzC,WAAAjwE,OAAY+vE,EAAZ,OAAA/vE,OAA0B/J,EAA1B,QAAA+J,OAA0C+0B,IClCtC20C,EAAa,SAACsH,GAClB,IAAMC,EAAe32C,IAAEod,QAAQs5B,GAAOA,EAAM,CAACA,GAC7C,OAAO12C,IAAEy7B,QAAQkb,EAAc,SAAA17C,GAAC,MAAgB,UAAXA,EAAE49B,KAAmB59B,EAAEsqC,QAAU,MAGjE,SAASqR,EAAenB,GAC7B,IAAMviC,EAAM2jC,aAAO,YACX7B,EAAS8B,qBAAW/B,GAApBC,KACF+B,EAAU72C,sBACd,SAAC82C,GACC,IACE,GAAIA,EAEF,OADAhC,EAAKgC,IACE,EAET,MAAOC,GACPhkC,QAAQuH,KAAK,2DAA4Dw8B,EAAK,MAAOC,GAGvF,OAAO,GAET,CAACjC,IAmCH,MAAO,CAAEkC,eAjCch3C,sBACrB,SAACvkC,EAA4B+6E,GAC3B,IAAMC,EAAe32C,IAAEod,QAAQs5B,GAAOA,EAAM,CAACA,GACvCM,EAAMxB,EAAqBC,EAAU95E,EAAWg7E,GAEtD,OADAzjC,EAAIqM,OAAO,YAAXrM,CAAA,KAA8B,CAAEqyB,QAAS6J,EAAWsH,GAAMhuD,QAASsuD,IAC5DD,EAAQC,IAGjB,CAACD,EAAStB,IAyBa0B,iBAvBAj3C,sBACvB,SAACvkC,EAA4B+6E,GAC3B,IAAMM,EAAMxB,EAAqBC,EAAU95E,EAAWqkC,IAAEod,QAAQs5B,GAAOA,EAAM,CAACA,IAAM,GAEpF,OADAxjC,EAAIqM,OAAO,cAAXrM,CAAA,KAAgC,CAAEqyB,QAAS6J,EAAWsH,GAAMhuD,QAASsuD,IAC9DD,EAAQC,IAGjB,CAACD,EAAStB,IAgB+B2B,sBAdbl3C,sBAC5B,SAACvkC,GACC,IAAMq7E,EAAMP,EAA2BhB,EAAU95E,GACjD,OAAOo7E,EAAQC,IAEjB,CAACD,EAAStB,IASsD4B,wBAPlCn3C,sBAC9B,SAACvkC,GACC,IAAMq7E,EAAMP,EAA2BhB,EAAU95E,GAAW,GAC5D,OAAOo7E,EAAQC,IAEjB,CAACD,EAAStB,kBC1DD6B,EAA8BC,YAAS,WAAM,IAAAC,EACRC,mBAAmB,IADXC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAGxD,MAAO,CAHiDE,EAAA,GAAAA,EAAA,MCM7CC,EAAsB,SAAA77C,GAA8E,IAA3EhK,EAA2EgK,EAA3EhK,OAAQ8lD,EAAmE97C,EAAnE87C,OACxCC,EAAqC,GACzC,GAAI/lD,EAAQ,CACV,IAAMgmD,EAAc93C,IAAEod,QAAQtrB,GAAUA,EAAS,CAACA,GAClD+lD,EAAU,GAAAnyE,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAO+tE,GAAP,CAAmB,CAAEhf,KAAM,QAAS0M,QAASuS,KAKzD,OAHIF,IACFC,EAAU,GAAAnyE,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAO+tE,GAAP,CAAmB,CAAEhf,KAAM,SAAUmd,iBAAkB,CAAC4B,OAE7DC,GAGH3kC,EAAM2jC,aAAO,uBACNkB,EAA4F,SAAAp3C,GAGnG,IAFJ80C,EAEI90C,EAFJ80C,SACA95E,EACIglC,EADJhlC,UACIq8E,EAE4CV,IAF5CW,EAAAnuE,OAAAqoD,EAAA,EAAAroD,CAAAkuE,EAAA,GAEGE,EAFHD,EAAA,GAEqBE,EAFrBF,EAAA,GAAAG,EAIyFxB,EAAenB,GAApGyB,EAJJkB,EAIIlB,eAAgBC,EAJpBiB,EAIoBjB,iBAAkBC,EAJtCgB,EAIsChB,sBACpCtlD,GALFsmD,EAI6Df,wBAClDgB,YAAiBC,IAAgBC,iBAC1CC,EAAqBH,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEw9C,aAAa7lC,SAC1D8lC,EAAoBL,YACxB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQC,uBAAyB39C,EAAE09C,QAAQC,sBAAsBj9E,YAG1Ek9E,aAAmB,sBAAuB,CAAE3lC,MAAKglC,mBAAkBzC,WAAU95E,YAAWm2B,SAAQ0mD,uBAEhG,IAAMM,EAAcj8C,kBAAQ,WAE1B,OADAqW,EAAI,YAAa,CAAEglC,mBAAkBa,SAAUjnD,IACxCkO,IAAEimB,KAAKjmB,IAAEg5C,WAAWlnD,GAAU,GAAIomD,GAAoB,KAAO,KACnE,CAACA,EAAkBpmD,EAAQohB,IAExB+lC,EAAiBp8C,kBAAQ,WAC7B,OAAOmD,IAAEg5C,WAAWd,GAAoB,GAAIpmD,GAAU,KAAO,IAC5D,CAAComD,EAAkBpmD,IA0DtB,OAxDAonD,oBAAU,WACJV,GAA6C,SAAvBA,IACxBpB,EAAsBz7E,GAClBu8E,GAAoBA,EAAiBt6C,OAAS,GAChDs5C,EAAev7E,EAAWg8E,EAAoB,CAAE7lD,OAAQomD,GAAoB,QAG/E,CAACM,IAEJU,oBAAU,WACJV,GAA6C,SAAvBA,GACpBE,IACFzlC,QAAQC,IAAI,0BAA2BwlC,GACvCtB,EAAsBsB,KAGzB,CAACA,IAEJQ,oBAAU,WACR,IAAMC,EAAYL,GAAeA,EAAYl7C,OAAS,EAChDw7C,EAAeH,GAAkBA,EAAer7C,OAAS,EAC3Dy7C,EAA0BnB,EAC1BiB,IAGsBjC,EAAev7E,EAAWg8E,EAAoB,CAAE7lD,OAAQgnD,GAAe,OAG7FO,EAA0Br5C,IAAEimB,KAAF,GAAAvgD,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAWuvE,GAAXvvE,OAAA60B,EAAA,EAAA70B,CAAuCgvE,KACjE5lC,EAAI,0BAA2B4lC,IAE/B5lC,EAAI,mCAAoC4lC,IAGxCM,IAEmBjC,EAAiBx7E,EAAWg8E,EAAoB,CAAE7lD,OAAQmnD,GAAkB,OAE/FI,EAA0Br5C,IAAE3E,OAAOg+C,EAAyB,SAAAtoC,GAC1D,OAAQkoC,EAAe1hD,SAASwZ,KAGlCmC,EAAI,8BAA+B+lC,IAEnC/lC,EAAI,uCAAwC+lC,KAG5CG,GAAgBD,IAKlBhB,EAAoBkB,IAErB,CAACP,EAAaZ,EAAkBhB,EAAgBv7E,EAAWs9E,EAAgB/lC,EAAKikC,IAE5E15C,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,wBC7FI27C,GADDzC,aAAO,uBAKd,SAAA/6C,GAA6BA,EAA1B25C,SAA0B,IAAhB95E,EAAgBmgC,EAAhBngC,UACRu5E,EAAaqE,cAAbrE,SAEFpjD,EAASumD,YAAiBC,IAAgBC,gBAQhD,OANAW,oBAAU,WACJpnD,GAAUA,EAAO8L,OAAS,GAC5Bs3C,EAASjsC,IAAiB+D,aAAa,CAAEta,OAAO5oB,OAAA60B,EAAA,EAAA70B,CAAK,IAAI40B,IAAI5M,QAE9D,CAACA,EAAQn2B,EAAWu5E,IAEhBz3C,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,gBCfI67C,EAAgC,WAAM,IAAAC,EACOpB,YAAiBqB,KAAjEC,EADyCF,EACzCE,gBAAiBlE,EADwBgE,EACxBhE,SAAUzjC,EADcynC,EACdznC,MAAOr2C,EADO89E,EACP99E,UACpCu5E,EAAW0E,cACTC,EAAeN,cAAfM,WACFC,EAAezB,YAAiBM,IAAQoB,WACxC5mB,EAAQklB,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQxlB,QACxC6mB,EAAS3B,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQqB,SACzCC,EAAgB5B,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQsB,gBAoBtD,OAlBAf,oBAAU,WACJS,IAEFzE,EAASjyC,IAAei3C,aAAa,CAAEv+E,eACvCu5E,EAASpyC,IAAiBC,qBAE3B,CAACmyC,EAAUyE,EAAiBh+E,IAC/Bu9E,oBAAU,WACJS,GAAmBh+E,QACA3B,IAAjB8/E,KACEA,EAAaviD,SAAS2B,KAASihD,qBAAwBhnB,GAAU6mB,GAAWC,GAC9EJ,EAAWtL,SAAS5pC,4BAKzB,CAACk1C,EAAYF,EAAiBG,IAG/Br8C,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG83C,GAAYkE,GAAmB3nC,GAAS2mC,KAAWh9E,GAClD8hC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAC08C,EAAD,CAAqB3E,SAAUA,EAAU4E,UAAWroC,EAAOr2C,UAAWA,IACtE8hC,EAAA1P,EAAA2P,cAAC48C,EAAD,CAAyB7E,SAAUA,EAAU4E,UAAWroC,EAAOr2C,UAAWA,iECvCvE4+E,EAAiB,eAAAz+C,EAAAhyB,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAC,EAAOikC,EAAyBt0D,GAAhC,OAAAmwB,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAC,KAAA,EAAAD,EAAAG,OAAA,SAEtB2jC,EAAQC,KAAsB/zD,KAAuBR,GAAY4wB,KAAK,SAAAnG,GAAG,OAAK5Q,IAAEod,QAAQxM,GAAOA,EAAM,MAF/E,cAAA+F,EAAAC,KAAA,EAAAD,EAAA4D,GAAA5D,EAAA,SAI7B1D,QAAQxqB,MAAM,oBAAdkuB,EAAA4D,IAJ6B5D,EAAAG,OAAA,SAKtBuG,QAAQC,QAAQ,KALM,wBAAA3G,EAAAK,SAAAR,EAAA,iBAAH,gBAAAmkC,EAAAC,GAAA,OAAA9+C,EAAAujB,MAAAzJ,KAAA0J,YAAA,GASjBu7B,EAAkB,eAAAl6C,EAAA72B,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAU,EAAOwjC,EAAyBK,GAAhC,OAAAxkC,EAAAvoB,EAAA2oB,KAAA,SAAAQ,GAAA,cAAAA,EAAAN,KAAAM,EAAAL,MAAA,cAAAK,EAAAN,KAAA,EAAAM,EAAAJ,OAAA,SAEvB2jC,EAAQC,KAAK7zD,KAAqBi0D,IAFX,cAAA5jC,EAAAN,KAAA,EAAAM,EAAAqD,GAAArD,EAAA,SAI9BjE,QAAQxqB,MAAM,sBAAdyuB,EAAAqD,IAJ8BrD,EAAAJ,OAAA,SAKvBuG,QAAQC,aAAQtjD,IALO,wBAAAk9C,EAAAF,SAAAC,EAAA,iBAAH,gBAAA8jC,EAAAC,GAAA,OAAAr6C,EAAA0e,MAAAzJ,KAAA0J,YAAA,sCCRzB27B,GAAsB,CAC1BC,aAAc,eACdC,sBAAuB,yBAEZn4C,GAAU,CACrBk4C,aAAcn5C,gCAAqBk5C,GAAoBC,aAAzCn5C,GACdo5C,sBAAuBp5C,gCAAqBk5C,GAAoBE,sBAAzCp5C,mCCFlB,SAASq5C,GACd3sB,GAEA,MAAO,CAAC4sB,KAAwBC,YAAaD,KAAwBE,wBAClE1iD,IAAI,SAAA9K,GAAC,OAAIytD,mBAAQztD,KACjBwJ,SAASk3B,EAAO5xD,wECNrB4+E,KAAMl8B,OAAO2pB,MACbuS,KAAMl8B,OAAOm8B,MASb,IAAMC,GAA2B,CAC/B,CACE3/E,KAAM,iBACNC,KAAM,aACN2/E,YAAY,EACZlzD,QAAS,wBAEX,CACE1sB,KAAM,8BACNC,KAAM,aACN2/E,YAAY,EACZlzD,QAAS,wBAEX,CACE1sB,KAAM,wBACNC,KAAM,aACN2/E,YAAY,EACZlzD,QAAS,wBAEX,CACE1sB,KAAM,cACNC,KAAM,aACN2/E,YAAY,EACZlzD,QAAS,wBAEX,CACE1sB,KAAM,eACNC,KAAM,aACN2/E,YAAY,EACZlzD,QAAS,wBAEX,CACE1sB,KAAM,uCACNC,KAAM,aACN2/E,YAAY,EACZlzD,QAAS,wBAEX,CACE1sB,KAAM,mBACNC,KAAM,aACN2/E,YAAY,EACZlzD,QAAS,6BAEX,CACE1sB,KAAM,mBACNC,KAAM,aACN2/E,YAAY,EACZlzD,QAAS,wBAEX,CACE1sB,KAAM,mBACNC,KAAM,aACN2/E,YAAY,EACZlzD,QAAS,wBAEX,CACE1sB,KAAM,qBACNC,KAAM,aACN2/E,YAAY,EACZlzD,QAAS,6BAEX,CACE1sB,KAAM,gBACNC,KAAM,aACN2/E,YAAY,EACZlzD,QAAS,6BAEX,CACE1sB,KAAM,gBACNC,KAAM,aACN2/E,YAAY,EACZlzD,QAAS,yBAIAmzD,GAAa,SAACC,EAAuCC,GAChE,SAAID,IAASC,IACJN,KAAMK,GAAO3lB,OAAO4lB,EAAO,SAK/B,SAASC,GAAQ//E,GACtB,QAAOA,GAAO4/E,GAAW5/E,EAAM,IAAI4oD,MAG9B,SAASo3B,KACd,IAAMC,EAAMT,KAAMvS,MAAM50B,SAExB,OAAOqnC,GAAcn2D,KAAK,SAAAuK,GAAC,OAAI0rD,KAAM1rD,EAAE9zB,MAAMk6D,OAAO+lB,EAAK,SAGpD,IAAMC,GAAiB,WAC5B,IACI3kB,GADmE,MAAzDikB,KAAMpmB,QAAGr7D,EAAW,oBAAoBoiF,YACnC,GAAK,GAExB,OAAOX,KACJvS,MACA1R,KAAKA,GACL6kB,OAAO,IACPC,OAAO,GACPC,YAAY,IAGJC,GAAgB,WAC3B,IAAMC,GAAiE,MAAzDhB,KAAMpmB,QAAGr7D,EAAW,oBAAoBoiF,YAChDM,EAAUT,KACZzkB,EAAOilB,EAAQ,GAAK,GAMxB,OAFIC,GAAWA,EAAQd,aAAYpkB,EAAOilB,EAAQ,GAAK,IAEhDhB,KACJvS,MACAtqB,IAAI,OAAQ4Y,GACZ5Y,IAAI,SAAU,GACdA,IAAI,SAAU,IAqBN+9B,GAAe,SAACC,GAC3B,IAAMV,EAAMT,KAAMvS,MAAM50B,SAClBooC,EAAUT,KAKhB,GAAIW,EACF,OAAO,EAGT,IAAMC,EAAaV,KAAiB7nC,SAC9BwoC,EAAgBN,KAAgBloC,SAItC,QAAIooC,IAAYA,EAAQd,aAEjBmB,GAAUb,EAAKW,EAAYC,IAEvBE,GAAsB,WACjC,IAAMd,EAAMT,KAAMvS,MAAM50B,SAClBuoC,EAAaV,KAAiB7nC,SAC9BwoC,IAxCiE,MAAzDrB,KAAMpmB,QAAGr7D,EAAW,oBAAoBoiF,YAG7CX,KACJvS,MACAtqB,IAAI,OAAQ,IACZA,IAAI,SAAU,IACdA,IAAI,SAAU,GAGZ68B,KACJvS,MACAtqB,IAAI,OAAQ,IACZA,IAAI,SAAU,IACdA,IAAI,SAAU,IA0B4BtK,SAE7C,OAAOyoC,GAAUb,EAAKW,EAAYC,IAEvBG,GAAiB,SAAChhF,GAAD,OAE3B4/E,GAAW5/E,EAAMw/E,SAAYA,OAAQxlB,SAASumB,OAAqBf,OAAQxlB,SAASh6D,IAKhF,IAAMihF,GAAoB,SAACjhF,GAChC,OAJ8Bw+B,EAIbx+B,EAHV+jC,IAAEza,KAAKkV,GAAOlD,SAAS,QAIrBkkD,KAAMx/E,EAAKA,MAEbw/E,KAAMx/E,GAPR,IAAyBw+B,GASnB0iD,GAA0B,SAAClhF,GAAD,YAC5BjC,IAATiC,GAAsB,EAAIihF,GAAkBjhF,GAAM4/D,WAIvCuhB,GAAkB,SAACnhF,GAC9B,SAAAyJ,OAJiC,SAACzJ,GAClC,OAAOihF,GAAkBjhF,GAAMk4C,OAAO,iBAG5BkpC,CAAoBphF,GAA9B,KAAAyJ,OAAuC0iB,KAAqBnsB,EAAK26D,wBAKtD0mB,GAAsB,SAACC,GAClC,SAAA73E,OAAU63E,EAAOC,MAAjB,SAAA93E,OAA+C,IAAjB63E,EAAOC,MAAc,GAAK,IAAxD,MAAA93E,OAAgE63E,EAAOE,QAAvE,WAAA/3E,OACqB,IAAnB63E,EAAOE,QAAgB,GAAK,MAWnBV,GAAY,SAAC9gF,EAAwBm/C,EAAiBC,GACjE,GAAIp/C,EAAM,CACR,IAAM0/B,EAAI8/C,KAAMx/E,GAChB,OAAO0/B,EAAEixB,QAAQxR,IAAczf,EAAEs6B,SAAS5a,GAE5C,OAAO,GAIIqiC,GAAuB,SAACC,GACnC,OAA+B,OAAxBA,EAAaluE,QA2Bf,IAAMmuE,GAAa,SAAC3hF,GACzB,OAAQ+jC,IAAExI,SAASv7B,GAAQw/E,KAAMx/E,GAAQA,GAAMk4C,OAAO,uBAG3C0pC,GAAwB,SAAC5hF,GACpC,OAAQ+jC,IAAExI,SAASv7B,GAAQw/E,KAAMx/E,GAAQA,GAAMk4C,OAAO,gBAG3C2pC,GAAgB,SAACrjD,GAC5B,OAAOA,GAAK,GAAA/0B,OAAO+0B,EAAQ,GAAK,IAAM,IAA1B/0B,OAA+B+0B,IAGhCsjD,GAAiB,SAACtjD,GAC7B,OAAIA,EACF,GAAA/0B,OAAUo4E,GAAcrjD,EAAMhrB,MAA9B,KAAA/J,OAAuCo4E,GAAcrjD,EAAMjrB,OAA3D,KAAA9J,OAAqEo4E,GAAcrjD,EAAMlrB,MAEpF,MC5QIyuE,GAA4B,SAACC,EAAiBC,GACzD,GAAIl+C,IAAEm+C,KAAKF,EAAW,SAAAvlD,GAAC,YAAqB1+B,IAAjB0+B,EAAEgpB,aAC3B,OAAOw8B,EAET,IAAME,EAAsBp+C,IAAEi+C,GAAW7mD,OACvC,SAACinD,EAA6B3lD,GAC5B,IAAM4lD,EAAcnB,GAAwBkB,EAAU38B,YAChD1R,EAAemtC,GAAwBzkD,EAAEgpB,YAC/C,YAAkB1nD,IAAdqkF,GAA2BruC,EAAesuC,EACrC5lD,EAEF2lD,IAGX,OAAOD,EAAsBA,EAAoBz1B,OAASu1B,GCF/CK,GAAa,SAASxhB,GAAT,OAbV,SAAVyhB,EAAmBzhB,GAAT,MAAqD,CACnEtiC,MAAO,kBAAMsiC,GACb0hB,aAAc,SAAC/gC,GACb,OAAO8gC,EAAQ10E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACVizD,EADS,CAEZxqC,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAizD,EAAWxqC,KADZ,CAEFmsD,SAAUhhC,SAM4D8gC,CAAQzhB,cCgCzE4hB,GAAsB,SAAChkF,EAAwB8zD,GAC1D,OAAQA,EAAO5xD,MACb,IAAK,iBACL,KAAK2+E,mBAAQx4C,KAAQ47C,OACrB,KAAKpD,mBAAQx4C,KAAQ67C,WACrB,KAAKrD,mBAAQx4C,KAAQ87C,WACrB,KAAKtD,mBAAQuD,KAAkBC,iBAC/B,KAAKxD,mBAAQuD,KAAkBE,kBAC/B,KAAKzD,mBAAQx4C,KAAQk8C,iBACrB,KAAK1D,mBAAQx4C,KAAQm8C,eACrB,KAAK3D,mBAAQx4C,KAAQo8C,gBACrB,KAAK5D,mBAAQx4C,KAAQq8C,eACrB,KAAK7D,mBAAQx4C,KAAQs8C,WACrB,KAAK9D,mBAAQx4C,KAAQu8C,gBACrB,KAAK/D,mBAAQx4C,KAAQw8C,cACrB,KAAKhE,mBAAQx4C,KAAQs4C,aACrB,KAAKE,mBAAQx4C,KAAQy8C,aACrB,KAAKjE,mBAAQx4C,KAAQu4C,wBACrB,KAAKC,mBAAQx4C,KAAQ08C,OACrB,KAAKlE,mBAAQx4C,KAAQyE,mBACrB,KAAK+zC,mBAAQx4C,KAAQ28C,sBACnB,IAAMC,EAAgBC,sBAAW78C,KAAQu8C,eAAgB9wB,GACjDvJ,EAASvqD,EAAM43B,KAAf2yB,KAEF46B,EAAmBC,aAA8Bj2E,OAAOqJ,OAAO+xC,IAC/D86B,EA7CY,SAACrlF,GACvB,IAAMuqD,EAAOvqD,EAAMuqD,KACb+6B,EAAUjgD,IAAE7sB,OAAO+xC,GAAMtnB,OAC/B,OAAIoC,IAAEhF,MAAMkqB,IAAmC,IAA1BllB,IAAE7sB,OAAO+xC,GAAMtnB,QAG7BoC,IAAEgB,MAAMkkB,EAAM,SAAAppB,GAAqD,IAAlD/sB,EAAkD+sB,EAAlD/sB,WAAY6yC,EAAsC9lB,EAAtC8lB,OAAQF,EAA8B5lB,EAA9B4lB,WAAY2H,EAAkBvtB,EAAlButB,YACtD,QAAIrpB,IAAEhF,MAAMjsB,KAIM,IAAZkxE,EACKjgD,IAAEgB,MAAM,CAAC4gB,EAAQF,GAAa,SAAA1M,GAAC,OAAKhV,IAAEhF,MAAMga,KAE5ChV,IAAEgB,MAAM,CAAC4gB,EAAQF,EAAY2H,GAAc,SAAArU,GAAC,OAAKhV,IAAEhF,MAAMga,QA+B/CkrC,CAAgBvlF,EAAM43B,MACnCmuB,EAAU/lD,EAAM43B,KAAK4tD,WAAWlzB,MAClCmzB,GAAmB,EAYvB,OAVEA,GADER,EASFjlF,EAAM43B,KAAK8tD,aAA4C,QAA5BP,EAAiBrxB,QAAoB3/C,KAAc0qD,OAAU1qD,KAAcwxE,OAEjGx2E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEF6tD,mBACAC,YAAa1lF,EAAM43B,KAAK8tD,YACxBE,QAAS,CAEPC,WAAS9/B,IAAWs/B,QAM5B,QACE,OAAOrlF,wBCrCA8lF,GAAoB,SAC/BC,EACA5lD,GAF+B,MAGf,CAChB6lD,gBAAiBpoB,IACjB4B,SAAUzkD,KAAUw4C,IACpBiL,UAAWvqD,KAAUgyE,MACrB17B,KAAM,GACNk7B,kBAAkB,EAClBjxC,SAAUrU,EAAWghC,YAAwBhhC,EAAU4lD,GAAiB,EACxEjyB,OAAQhgD,KAAYy6C,IACpB23B,SAAS,EACTnwC,UAAW,GACX2vC,YAAavxE,KAAc0qD,MAC3B1nC,OAAQ,GACRyuD,QAAS,CACPC,SAAS,GAEXL,WAAY,CACVW,cAAc,EACdjpD,OAAQ,IAEVkpD,OAAQ,KAGJC,GAAkB,CACtBnpD,OAAQ,GACRnP,aAAS1uB,EACTizD,WAAOjzD,EACP4oD,WAAO5oD,EACP8mF,cAAc,EACdG,WAAOjnF,GAGHknF,GAAoBp3E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACrBk3E,GADqB,CAExB/zB,OAAO,IAqBF,SAASk0B,GAAqCzwC,GACnD,OAAO,SAACqnB,EAAQqpB,GACd,OAAOt3E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFiuD,EADL,CAEEppD,eAAgB0yE,aAAe3wC,EAAWqnB,EAAKqpB,MAK9C,SAASE,GAAW5wC,EAAyB0wC,GAClD,IAAMhqD,EAAS+pD,GAAUzwC,GACzB,OAAO,SAACwU,GACN,OAAOllB,IAAEklB,GACN3/B,OACA6R,OAAO,SAACC,EAAWh7B,GAClB,IAAMklF,EAAclqD,EAAIh7B,GAExB,OAAOklF,EAAWz3E,OAAAy0B,EAAA,EAAAz0B,CAAA,GAETutB,EAFSvtB,OAAA2tB,EAAA,EAAA3tB,CAAA,GAGXzN,EAAK+6B,EAAOmqD,EAAaH,KAE5B/pD,GACH6tB,IAIF,IAAMs8B,GAAwB,SAACzkB,EAA6BtO,GACjE,IAAM9zD,EAAQoiE,EACR0kB,EAAaN,GAAUxmF,EAAM43B,KAAKme,WAExC,OAAQ+d,EAAO5xD,MAEb,KAAK2+E,mBAAQkG,GAAWxG,cAAe,IAAAp/C,EACN2yB,EAAOtZ,QAA9BiG,EAD6Btf,EAC7Bsf,UAAWC,EADkBvf,EAClBuf,QAIfsmC,EAAiBlG,KAAMrgC,GACxBwmC,QAAQ,OACRttC,SACCutC,EAAepG,KAAMpgC,GACtBymC,MAAM,OACNxtC,SASH,OARIqtC,GAAkBE,GAAgBpG,KAAMoG,GAAc5rB,SAAS0rB,KACjEE,EAAepG,KAAMkG,GAClBG,MAAM,OACNxtC,SACHqtC,EAAiBlG,KAAMoG,GACpBD,QAAQ,OACRttC,UAEExqC,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEF6oB,UAAWumC,EACXtmC,QAASwmC,MAIf,IAAK,iBACH,IAAME,EAAYpnF,EAAM43B,KAClByvD,EAAQD,EAAUjnD,SACpBmnD,EACFD,GAASE,aAAmBF,GACxBhE,GAA0B+D,EAAU78B,KAAMvqD,EAAM43B,KAAKk8B,QACrD9zD,EAAM43B,KAAKk8B,OACjB,OAAO3kD,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFk8B,OAAQwzB,EACRvD,cAAU1kF,EACVmmF,WAAWr2E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACNk3E,QAKX,KAAKxF,mBAAQx4C,KAAQ47C,OACnB,OAAO90E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEF2yB,KAAM,GACNw5B,cAAU1kF,EACV2qD,WAAO3qD,EACPmmF,WAAWr2E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACNk3E,GADK,CAERF,cAAc,QAKtB,IAAK,kBACH,OAAOh3E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEF4tD,WAAWr2E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACNk3E,GADK,CAERF,cAAc,QAKtB,IAAK,mBAAoB,IAAA9M,EACEvlB,EAAOtZ,QAAxB8X,EADe+mB,EACf/mB,MAAOrK,EADQoxB,EACRpxB,MACT/qB,EAAiCmI,IAAE3E,OAAOozB,EAAOtZ,QAAQtd,OAAQ,SAAAsI,GAAC,YAAUnmC,IAANmmC,IACtEgiD,EAAiCniD,IAAE5I,OACvCS,EACA,SAACR,EAA6B2d,GAC5B,IAAMtiB,EAAS8E,aAASwd,QAAKh7C,EAAYgmC,IAAEvE,IAAIuZ,EAAG,cAAUh7C,GACtD0uB,EAAU8O,aAASwd,GAAKA,EAAIA,EAAEtsB,QAC9B05D,EAAgD,oBAAXptC,EAAEn4C,KAAFiN,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAoCkrC,EAApC,CAAuCtsB,UAASgK,WAAWsiB,EACtG,SAAAtvC,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAWutB,GAAX,CAAgB+qD,KAElB,IAEIC,EAAaF,EAASniD,IAAEyjB,MAAM0+B,QAAUnoF,EAC1C0uB,OAA8B1uB,EAC9BinF,OAAqDjnF,EACrDsoF,EAAmB,GACvB,GAAID,EAAY,CAEd,GADA35D,EAAU25D,EAAW35D,QACG,oBAApB25D,EAAWxlF,KAEbokF,EAD2D,WAA1CoB,EAAWpB,MAAMt7D,OAAOusD,cAA6B,SAAYmQ,EAAWpB,OAGjF,IAAVh0B,GAAuC,kBAApBo1B,EAAWxlF,OAChCylF,EAAStiD,IAAE3E,OAAO1gC,EAAM43B,KAAK2yB,KAAM,SAAAxsB,GAEjC,OADkB6pD,aAAa7pD,EAAG/9B,EAAM43B,KAAKG,UACxB2vD,EAAW3vD,SAC/BmG,IAAI,SAAAH,GAAC,OAAIA,EAAE3Q,MAIlB,OAAOje,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFmsD,cAAU1kF,EACVmmF,WAAY,CACVtoD,SACAnP,UACAukC,QACArK,QACAq+B,QACAH,cAAc,EACdwB,cAKR,KAAK9G,mBAAQx4C,KAAQw/C,aAInB,OAHY14E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACPnP,GAIP,KAAK6gF,mBAAQx4C,KAAQ87C,WAAY,IACvBziF,EAAOoyD,EAAOtZ,QAAd94C,GACFomF,EAAqBziD,IAAE5I,OAC3Bz8B,EAAM43B,KAAK2yB,KACX,SAAC7tB,EAAWoD,EAAoBhV,GAC9B,OAAIA,IAAQppB,EACHg7B,GAETA,EAAI5R,GAAOgV,EACJpD,IAET,IAEIqrD,EAAiB1iD,IAAEza,KAAKk9D,GAAoB7kD,OAAS,EAC3D,OAAO9zB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEF2yB,KAAMu9B,EACNrC,iBAAkBsC,EAClB/9B,MAAO+9B,EAAiB/nF,EAAM43B,KAAKoyB,WAAQ3qD,MAIjD,KAAKwhF,mBAAQx4C,KAAQ67C,WAAY,IAAAvK,EACH7lB,EAAOtZ,QAA3BziB,EADuB4hD,EACvB5hD,OAAQ/zB,EADe21E,EACf31E,QACRynB,EAAaznB,EAAbynB,SAEFu8D,EAAgBhoF,EAAMyrB,SAC5B,GAAIw8D,aAAclwD,EAAQ/3B,EAAM43B,KAAKG,QACnC,OAAO/3B,EAET,IAAMkoF,EAAqB/4E,OAAAy0B,EAAA,EAAAz0B,CAAA,GAASsc,GAAY,GAASu8D,GAAiB,IACpEG,GAA6D,IAAhDnkF,EAAQokF,oCAC3B,QAAe/oF,IAAX04B,GAAwBowD,EAQ1B,OAPgBh5E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACXnP,EADW,CAEd43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACA22E,GAAkBoC,EAAuBloF,EAAM43B,KAAKuI,UADrD,CAEFkoD,UAAU,MAKhB,IAAIC,EAAkBC,aAAyBxwD,EAAQiwD,EAAcM,gBAAiB78D,GAEtF,QAAwBpsB,IAApBipF,EACF,OAAOn5E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACA22E,GAAkBoC,GADnB,CAEFG,UAAU,MAIhB,IAAI99B,EAAOtqB,aAAoBqoD,GAAmBE,GAAkBC,MAAMH,EAAiBvwD,GAAQwyB,KAAO,GAK1G,OAJI49B,IACF59B,EAAO,GACP+9B,EAAkB,UAEbn5E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFmsD,cAAU1kF,EACVm1C,SAAU2sB,YAAwBmnB,EAAiBJ,GACnDl+B,WAAO3qD,EACPomF,kBAAkB,EAClB3xB,OAAQhgD,KAAYy6C,IACpBx2B,OAAQA,EACRoI,SAAUmoD,EACV/9B,OACAy7B,gBAAiBpoB,IACjB4nB,WAAYe,OAIlB,KAAK1F,mBAAQx4C,KAAQyE,mBACnB,IAAM0N,EAAWsZ,EAAiCtZ,QAC5CziB,EAASyiB,EAAQziB,OACjBqlC,EAAM5iB,EAAQ4iB,IAEdj9B,EAAWooD,aAAyBxwD,EAAQ/3B,EAAMyrB,SAAS68D,iBACjE,OAAOn5E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAGE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFsuD,SAAS,EACT37B,KAAKp7C,OAAAy0B,EAAA,EAAAz0B,CAAA,GARU,GAQXA,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEDiuD,EAAIhwC,GAAK05D,EAAW33E,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAKiuD,EAAN,CAAWvpD,UAAW60E,YAAmBtrB,KAAQrlC,KAEvEA,SACAoI,WACA4jD,cAAU1kF,EACVomF,kBAAkB,EAClBD,WAAWr2E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACNk3E,GADK,CAERF,cAAc,QAKtB,KAAKtF,mBAAQx4C,KAAQ28C,sBAAuB,IAClC5nB,EAAStJ,EAAoCtZ,QAA7C4iB,IACJ7S,EAAOvqD,EAAM43B,KAAK2yB,KAChBo+B,EAAiB3oF,GAASA,EAAM43B,MAAQ53B,EAAM43B,KAAKG,OAAS/3B,EAAM43B,KAAKG,YAAS14B,EAQtF,OAPIwhF,mBAAQx4C,KAAQ28C,wBAA0BlxB,EAAO5xD,QAC9CymF,GAAmBvrB,EAAI9pB,kBAAoB8pB,EAAI9pB,mBAAqBq1C,EAAe9zC,mBACtFyD,QAAQuH,KAAK,+CAKbxa,IAAE4Y,KAAKsM,IAAS,EACXq5B,GAAW5jF,GACf8jF,aAAa,uCACbhkD,QAGE3wB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAGE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFsuD,SAAS,EACT37B,KAAKp7C,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAo7C,EADDp7C,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEDiuD,EAAIhwC,GAAK05D,EAAW33E,OAAAy0B,EAAA,EAAAz0B,CAAA,GAEdiuD,EAFa,CAGhBvpD,UAAW60E,YAAmBtrB,KAEhCurB,KAGJxoD,SAAUg6B,IAAep6B,KAAKC,KAC9B+jD,cAAU1kF,EACVomF,kBAAkB,EAClBD,WAAWr2E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACNk3E,GADK,CAERF,cAAc,QAMtB,KAAKtF,mBAAQx4C,KAAQ08C,OAAQ,IAAArb,EACwC5V,EAAiCtZ,QAA5Fra,EADmBupC,EACnBvpC,SAAUpI,EADS2xC,EACT3xC,OAAQwyB,EADCmf,EACDnf,KAAM/V,EADLk1B,EACKl1B,SAAU/oB,EADfi+C,EACej+C,SAAU+yC,EADzBkL,EACyBlL,UAC9CoB,EAAc9L,EAAOtZ,QAAQsZ,OAC7B80B,GAAYvjD,IAAE5I,OAClB8tB,EACA,SAAC9K,EAAK1hB,GACJ,OAAO5uB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFswC,EADLtwC,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEG4uB,EAAE3Q,GAFLje,OAAAy0B,EAAA,EAAAz0B,CAAA,GAGO4uB,EAHP,CAIIuV,iBAAkBvb,EAASA,EAAO8c,iBAAmB9W,EAAEuV,sBAI7D,IAmBEoyC,GAAc9lB,IAAgB9rD,KAAYy6C,IAAMp6C,KAAc0qD,MAAQ1qD,KAAcwxE,OAwBxF,OAvBkBx2E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACbnP,EADa,CAEhB43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACA22E,GAAkBr6D,GADnB,CAEF+oB,WACArU,WACApI,SACAymC,UAAWA,EACXjU,KAAMq+B,GACN5C,gBAAiBpoB,IACjBmmB,cAAU1kF,EACVgpF,UAAU,EACV5C,kBAAkB,EAClBz7B,WAAO3qD,EACPqmF,eACA5xB,OACE3zB,GAAYA,EAASvD,SAAS,aAAeztB,OAAOyb,KAAK2/B,GAAMtnB,OAlCxC,SAAC4lD,GAE5B,IAAMC,EAAU35E,OAAO45E,oBAAoBx+B,GAE3C,GAAIA,EAAKu+B,EAAQ,IAAI/hC,YAAcwD,EAAKu+B,EAAQ,IAAI/hC,WAAY,CAC9D,IAAMiiC,EACJ,IAAI9+B,KAAKK,EAAKu+B,EAAQ,IAAI/hC,WAAYzlD,MAAQ,IAAI4oD,KAAKK,EAAKu+B,EAAQ,IAAI/hC,WAAYzlD,MAChFwnF,EAAQ,GACRA,EAAQ,GAEd,OAAOv+B,EAAKy+B,GAAeh7B,QAyBrBi7B,GACArpB,GAEA9rD,KAAYy6C,QAKxB,KAAKsyB,mBAAQx4C,KAAQs4C,aACrB,KAAKE,mBAAQx4C,KAAQu4C,wBAAyB,IACpCn1D,GAAaqoC,EAAOtZ,QAApB/uB,SACFsM,GAAS0oD,GAAyB3sB,IAAWA,EAAOtZ,QAAQziB,OAAS+7B,EAAOtZ,QAAQziB,YAAS14B,EAC7F2mF,GAAkBkD,aAAuBnxD,IAC3CoI,GL3eH,SAA2D2zB,GAChE,MAAO,CAAC4sB,KAAwBE,wBAAwB1iD,IAAI,SAAA9K,GAAC,OAAIytD,mBAAQztD,KAAIwJ,SAASk3B,EAAO5xD,MK0e1EinF,CAAsBr1B,GAAUA,EAAOtZ,QAAQra,cAAW9gC,OAE1DA,IAAb8gC,SACyE9gC,IAAzEgmC,IAAExa,KAAKm7D,GAAiB,SAAAoD,GAAE,OAAIjpD,IAAYipD,EAAGrpD,KAAKC,OAASG,OAE3DA,GAAWooD,aAAyBxwD,GAAQ/3B,EAAMyrB,SAAS68D,kBAE7D,IAAMe,GACJ5I,GAAyB3sB,IAAWA,EAAOtZ,QAAQ4iB,IAAMtJ,EAAOtZ,QAAQ4iB,SAAM/9D,EAC1EsgE,GAAY0pB,IAAYA,GAAWA,GAASr7B,YAAS3uD,EACrDugE,GAAc9L,EAAOtZ,QAAQsZ,QAAU6L,IAAa3/D,EAAM43B,KAAKk8B,OAC/Dtf,GAAWsf,EAAOtZ,QAAQhG,UAAYx0C,EAAM43B,KAAK4c,SACjDiuB,GAAQ4mB,KACVA,GAASj8D,IAAMi8D,GAASC,WACxBC,aAAavpF,EAAM43B,KAAK2yB,MAEtBi/B,GADqB/I,GAAyB3sB,KAAwD,IAA7Cm0B,aAAclwD,GAAQ/3B,EAAM43B,KAAKG,QAG1F0xD,GAAezpF,EAAM43B,KAAKuI,UAAoC,WAAxBngC,EAAM43B,KAAKuI,SAA6BngC,EAAM43B,KAAK2yB,KAAhB,GAGzEvB,GAAYn1C,IAAUijC,OAG5B,IAAK0yC,SAA0BnqF,IAAVojE,IAAuBp9B,IAAEm+C,KAAKiG,GAAa,SAAA1rD,GAAC,OAAIA,EAAEurD,WAAa7mB,IAAS1kC,EAAE3Q,KAAOq1C,KACpG,OAAOtzD,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFmsD,cAAU1kF,MAMhB,GAAIgmC,IAAE4Y,KAAKwrC,KAAgB,EACzB,OAAOt6E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFmsD,SAAU,0CAIhB,IAAM2F,GAA0DL,GAAQl6E,OAAAy0B,EAAA,EAAAz0B,CAAA,CAElEie,GAAIq1C,GAEJ5uD,UAAWm1C,IACRqgC,SAELhqF,EACAsqF,GAAW3pF,EAAM43B,KACjB4xD,IAAgBxpF,EAAM43B,KAAKG,SAAWA,KACxC4xD,GAAW7D,GAAkBr6D,KAE/B,IAAM8+B,GAAOm/B,GAAMv6E,OAAAy0B,EAAA,EAAAz0B,CAAA,GAEVs6E,GAFUt6E,OAAA2tB,EAAA,EAAA3tB,CAAA,GAGZszD,GAAQqkB,EAAW4C,GAAQ3xD,MAE9B0xD,GACEG,GAAgBzpD,IAAYngC,EAAM43B,KAAKuI,SACvC0pD,GAAar1C,KAEfo1C,GACAzoB,YAAwByoB,GAAe5pF,EAAMyrB,UAC7C,GACJ,OAAOtc,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAGE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAw6E,GADD,CAEFzD,SAAS,EACTF,gBAAiBpoB,IACjB9J,OAAQ8L,GACRprB,SAAUq1C,GACV1pD,SAAUypD,GACV7xD,OAAQA,IAAU/3B,EAAM43B,KAAKG,OAC7BgsD,cAAU1kF,EACVkrD,QAEAk7B,kBAAkB,EAClBD,WAAWr2E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACNk3E,GADK,CAERF,cAAc,QAKtB,KAAKtF,mBAAQx4C,KAAQy8C,aAAc,IAAAgF,GACC9pF,EAAM43B,KAAhC2yB,GADyBu/B,GACzBv/B,KAAMy7B,GADmB8D,GACnB9D,gBADmB+D,GAEoBj2B,EAAkDtZ,QAA/FziB,GAFyBgyD,GAEzBhyD,OAAQoI,GAFiB4pD,GAEjB5pD,SAAU6pD,GAFOD,GAEPC,YAAav+D,GAFNs+D,GAEMt+D,SACjCw+D,GAAWpqD,aAAiBM,IAC5By/B,GAAcqqB,GAAWn2E,KAAYy6C,IAAMvuD,EAAM43B,KAAKk8B,OACxDo2B,GAAc3/B,GACZ4/B,GAAcnE,GAAgB/iD,OAAS,EAAI+iD,GAAkBkD,aAAuBnxD,IAC1F,OACEoyD,GAAYlnD,OAAS,QAC0D5jC,IAA/EgmC,IAAExa,KAAKs/D,GAAa,SAAAf,GAAE,OAAIjpD,IAAYipD,EAAGrpD,KAAKC,OAASG,GAASJ,KAAKC,OAE9DhgC,EAELA,EAAM43B,KAAKuI,UAAYngC,EAAM43B,KAAKuI,WAAaA,GAASJ,KAAKC,KACxDhgC,GAELiqF,GACFC,GAAc,GACLnyD,KAAW8H,aAAiBM,MACrC+pD,GAAc1B,GAAkBC,MAAMtoD,GAAUpI,GAAQiyD,IAAaz/B,MAE3Dp7C,OAAAy0B,EAAA,EAAAz0B,CAAA,GACPnP,EADO,CAEV43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFouD,gBAAiBpoB,IACjBz9B,SAAUA,GAASJ,KAAKC,KACxB+jD,cAAU1kF,EACV2qD,WAAO3qD,EACP+qF,eAAW/qF,EACXomF,kBAAkB,EAClB4E,gBAAgB,EAChB9/B,KAAM2/B,GACN11C,SAAU2sB,YAAwBhhC,GAASJ,KAAKC,KAAMvU,IACtDqoC,OAAQ8L,GACR4lB,WAAWr2E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACNk3E,GADK,CAERF,cAAc,SAMtB,KAAKtF,mBAAQx4C,KAAQu8C,gBACrB,KAAK/D,mBAAQx4C,KAAQw8C,cAAe,IAAAyF,GACPtqF,EAAM43B,KAAzBuI,GAD0BmqD,GAC1BnqD,SAAUoqB,GADgB+/B,GAChB//B,KACVkY,GAAU3O,EAAOtZ,QAAjBioB,MACFwnB,GAAW9pD,IAAYN,aAAiBM,IACxCy/B,GAAcqqB,GAChBjqF,EAAM43B,KAAKk8B,OACX9zD,EAAM43B,KAAKk8B,SAAWhgD,KAAYy6C,IAClCz6C,KAAY06C,KACZ16C,KAAYy6C,IACV27B,GAAc7kD,IAAE5I,OACpB8tB,GACA,SAAC7tB,EAAWC,GACV,IAAM4tD,EAAgB5tD,EAAIqxB,SAAWl6C,KAAYy6C,IAAMz6C,KAAY06C,KAAO16C,KAAYy6C,IAClFoR,EAAYhjC,EAAIqxB,OAMpB,OALIyU,IAASwnB,IAAYttD,EAAIvP,KAAOq1C,GAClC9C,EAAY7L,EAAOtZ,QAAQsZ,OAASA,EAAOtZ,QAAQsZ,OAASy2B,EAClDN,KACVtqB,EAAYhjC,EAAIqxB,SAAWl6C,KAAYy6C,IAAMz6C,KAAY06C,KAAO16C,KAAYy6C,KAEvEp/C,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFutB,EADLvtB,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEGwtB,EAAIvP,GAAK05D,EAAW33E,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAKwtB,EAAN,CAAWqxB,OAAQ2R,IAAa3/D,EAAM43B,KAAKG,WAGnE,IAGF,OAAO5oB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAGE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFsuD,SAAS,EACTpyB,OAAQ8L,GACRmkB,cAAU1kF,EACVkrD,KAAKp7C,OAAAy0B,EAAA,EAAAz0B,CAAA,GACA+6E,IAELlgC,WAAO3qD,MAKb,IAAK,YAAa,IAAAw6E,GACU/lB,EAAOtZ,QAAzB6P,GADQwvB,GACRxvB,OAAQoY,GADAoX,GACApX,MACRtiC,GAAangC,EAAM43B,KAAnBuI,SACFqqD,GAAgBrqD,GAAWsqD,aAAYtqD,SAAY9gC,EACrDqrF,GACFF,KACC3qD,aAAiB2qD,KAClBG,aAAQH,GAAc9zB,QAAQG,MAAM5P,QAAQrqB,SAASnE,KAAY+zB,aAC7DjC,GAhkBU,SAACA,EAAYrK,GACjC,OAAO7a,IAAE5I,OACP8tB,EACA,SAAC9K,EAAK2d,GACJ,IAAMwtB,EAAa1qC,EAAOkd,GAC1B,OAAOjuD,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFswC,EADLtwC,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEGiuD,EAAIhwC,GAFPje,OAAAy0B,EAAA,EAAAz0B,CAAA,GAGOiuD,EACAwtB,MAIT,IAmjBeC,CAAc7qF,EAAM43B,KAAK2yB,KAAM,SAAAuvB,GAC1C,IAAMgR,GAA0C,IAAlBJ,IAA0B5Q,EAAS1sD,KAAOq1C,GACxE,OAAOqkB,EAAW33E,OAAAy0B,EAAA,EAAAz0B,CAAA,GAEX2qE,EAFU,CAGb7yB,OAAQ6jC,EAAwBzgC,GAASyvB,EAAS7yB,SAEpDjnD,EAAM43B,KAAKG,UAGf,OAAO5oB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEF6tD,kBAAkB,EAClB1B,cAAU1kF,EACVkrD,KAAKp7C,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KAAK2yB,KACXA,QAMX,KAAKs2B,mBAAQx4C,KAAQq8C,eAAgB,IAC3BjiB,GAAU3O,EAAOtZ,QAAjBioB,MACFxY,GAAyB6J,EAAOtZ,QAAQyP,WACtC9pB,GAAangC,EAAM43B,KAAnBuI,SACFqqD,GAAgBrqD,GAAWsqD,aAAYtqD,SAAY9gC,EACnD0rF,GAAaP,IAAiBjD,aAAmBiD,IACjDlH,GAAYtjF,EAAM43B,KAAK2yB,KACzBygC,GAAsBR,KAAkB3qD,aAAiB2qD,MAAmBO,GAC1Eb,GAAoB7kD,IAAE5I,OAC1B6mD,GACA,SAAC7jC,EAAK2d,GACJ,IAAM6tB,EAAexoB,KAAUrF,EAAIhwC,GAC7B89D,EAAgCF,IAAuB5tB,EAAIvpD,YAAcA,IAAUijC,OACnFq0C,EAAyBF,GAAgBC,EACzCE,EAAgBD,EAAyBlhC,GAAamT,EAAIrW,WAChE,OAAO53C,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFswC,EADLtwC,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEGiuD,EAAIhwC,GAAK05D,EAAW33E,OAAAy0B,EAAA,EAAAz0B,CAAA,GAEdiuD,EAFa,CAGhBrW,WAAYqkC,EACZnkC,OAAQkkC,OAAyB9rF,EAAY+9D,EAAInW,SAEnDjnD,EAAM43B,KAAKG,WAIjB,IAGEuvD,GAAmByD,GAAa1H,GAA0B6G,GAAalqF,EAAM43B,KAAKk8B,QAAU9zD,EAAM43B,KAAKk8B,OAE3G,OAAO3kD,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAGE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFsuD,SAAS,EACTpyB,OAAQwzB,GACRt9B,WAAO3qD,EACPomF,kBAAkB,EAClB1B,cAAU1kF,EACVkrD,KAAM2/B,OAKZ,IAAK,iBAAkB,IAAAmB,GACOv3B,EAAOtZ,QAA3BioB,GADa4oB,GACb5oB,MAAOjuB,GADM62C,GACN72C,SACP+V,GAASvqD,EAAM43B,KAAf2yB,KACF+gC,GAAoC,IAAxBjmD,IAAEza,KAAK2/B,IAAMtnB,OAC/B,OAAO9zB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAGE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFsuD,SAAS,EACTnC,cAAU1kF,EACVomF,kBAAkB6F,GAClB/gC,KAAKp7C,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KAAK2yB,KADZp7C,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEDszD,GAAQqkB,EAAW33E,OAAAy0B,EAAA,EAAAz0B,CAAA,GAEZnP,EAAM43B,KAAK2yB,KAAKuJ,EAAOtZ,QAAQioB,QAAU,GAF9B,CAGf/T,YAAa48B,QAAYjsF,EAAYm1C,KAEvCx0C,EAAM43B,KAAKG,cAOrB,IAAK,gBAAiB,IAAAwzD,GACUz3B,EAAOtZ,QAA7BioB,GADY8oB,GACZ9oB,MAAO/P,GADK64B,GACL74B,WACf,OAAOvjD,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEF6tD,kBAAkB,EAClB1B,cAAU1kF,EACVkrD,KAAKp7C,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KAAK2yB,KADZp7C,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEDszD,GAAQqkB,EAAW33E,OAAAy0B,EAAA,EAAAz0B,CAAA,GAEZnP,EAAM43B,KAAK2yB,KAAKuJ,EAAOtZ,QAAQioB,QAAU,GAF9B,CAGfruD,WAAYs+C,KAEd1yD,EAAM43B,KAAKG,cAMrB,KAAK8oD,mBAAQx4C,KAAQk8C,iBACnB,IAAMxuC,GAAY+d,EAAOtZ,QAAQza,KAEjC,OAAO5wB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFme,aACAwU,KAAMo8B,GAAW5wC,GAAW/1C,EAAM43B,KAAKG,OAAjC4uD,CAAyC3mF,EAAM43B,KAAK2yB,UAIhE,KAAKs2B,mBAAQx4C,KAAQmjD,aACnB,IAAMh3C,GAAWsf,EAAOtZ,QAAQhG,SAChC,OAAOrlC,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAGE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFsuD,SAAS,EACT1xC,gBAIN,KAAKqsC,mBAAQx4C,KAAQojD,UACnB,GAAKvG,sBAAW78C,KAAQojD,SAAU33B,GAE3B,KAAA43B,GAC4B53B,EAAOtZ,QAAhCwP,GADH0hC,GACG1hC,MAAO2hC,GADVD,GACUC,cACXC,GAAa5hC,GAEX6hC,GAAuB7rF,EAAM43B,KAAK8tD,YAEpCiG,IAAiBC,IAAcA,GAAa,GAA6B,WAAxB5rF,EAAM43B,KAAKuI,WAC9DyrD,KAA2B,GAG7B,IAWIE,GAmBAC,GA9BE5G,GAAmBC,aAA8Bj2E,OAAOqJ,OAAOxY,EAAM43B,KAAK2yB,OAE1EyhC,GAAW3mD,IAAEgB,MAAMrmC,EAAM43B,KAAK2yB,KAAM,SAAAxsB,GAAC,OAAIA,EAAEiwB,SAAWl6C,KAAY06C,OAClEy9B,GAAU5mD,IAAEgB,MAAMrmC,EAAM43B,KAAK2yB,KAAM,SAAAxsB,GAAC,OAAIA,EAAEiwB,SAAWl6C,KAAYy6C,MAGjE07B,GAAmC,WAAxBjqF,EAAM43B,KAAKuI,SACtB+rD,GAAkB/G,GAAiB9jF,KAAKu7B,SAAS,aAAuC,WAAxB58B,EAAM43B,KAAKuI,SAC3E4qD,GAAa5F,GAAiB9jF,KAAKu7B,SAAS,aAAuC,WAAxB58B,EAAM43B,KAAKuI,SACtEgsD,GAAoB9mD,IAAE+mD,MAAMj9E,OAAOqJ,OAAOxY,EAAM43B,KAAK2yB,MAAO,SAAAxsB,GAAC,OAAIA,EAAEgpB,YAAchpB,EAAEgpB,WAAWzlD,OAGhG+qF,GAAaT,IAAc,EAoC/B,OAlCIb,IAAcoB,GAEhBL,GACEO,GAAa,EACTF,GAAkBn+B,SAAWl6C,KAAYy6C,IACvCp6C,KAAc0qD,MACd1qD,KAAcwxE,OAChBwG,GAAkBn+B,SAAWl6C,KAAYy6C,IACzCp6C,KAAcwxE,OACdxxE,KAAc0qD,MACXqtB,KAETJ,GAAaO,GAAa,EAAIl4E,KAAc0qD,MAAQ1qD,KAAcwxE,QAMlEoG,QADiB1sF,IAAfysF,GACiBA,GAIjB3G,GAAiB9jF,KAAKu7B,SAAS,cAAiBovD,KAAaC,IAAqC,WAA1B9G,GAAiB9jF,KACrFwqF,GAC4B,QAA5B1G,GAAiBrxB,OACjB3/C,KAAc0qD,MACd1qD,KAAcwxE,OAIlBiG,IAAcA,GAAa,IAAMb,KAAemB,KAAoBjC,KACtE2B,GAAa,GAGRz8E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFoyB,MAAO4hC,GACPlG,YAAaqG,GACbtG,kBAAkB,MAjEtB,OAAOzlF,EAsEX,KAAK6gF,mBAAQx4C,KAAQikD,cACnB,OAAOn9E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFwyD,UAAWt2B,EAAOtZ,QAAQwP,UAIhC,KAAK62B,mBAAQx4C,KAAQkkD,gBACnB,IAAM7G,GAAcR,sBAAW78C,KAAQkkD,eAAgBz4B,GAAUA,EAAOtZ,QAAQkrC,iBAAcrmF,EACxF8lF,GAAmBC,aAA8Bj2E,OAAOqJ,OAAOxY,EAAM43B,KAAK2yB,OAC1EyhC,GAAW3mD,IAAEgB,MAAMrmC,EAAM43B,KAAK2yB,KAAM,SAAAxsB,GAAC,OAAIA,EAAEiwB,SAAWl6C,KAAY06C,OAClEy9B,GAAU5mD,IAAEgB,MAAMrmC,EAAM43B,KAAK2yB,KAAM,SAAAxsB,GAAC,OAAIA,EAAEiwB,SAAWl6C,KAAYy6C,MAEvE,OAAOp/C,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEF8tD,YACEP,GAAiB9jF,KAAKu7B,SAAS,cAAiBovD,KAAaC,IAAqC,WAA1B9G,GAAiB9jF,KACrFqkF,GAC4B,QAA5BP,GAAiBrxB,OACjB3/C,KAAc0qD,MACd1qD,KAAcwxE,WAI1B,KAAK9E,mBAAQx4C,KAAQmkD,iBACnB,IAAMpuB,GAAetK,EAAOtZ,QAAQ4jB,aACpC,OAAOjvD,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFwmC,oBAIN,KAAKyiB,mBAAQx4C,KAAQokD,UACnB,IAAMt1B,GAAQrD,EAAOtZ,QAAQ2c,MACvBiL,GAAasqB,aAAkBv1B,IACrC,OAAOhoD,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KACNwqC,MAIT,KAAKye,mBAAQx4C,KAAQskD,aACnB,IAAMC,GAAc1H,sBAAW78C,KAAQskD,YAAa74B,GAAUzuB,IAAE7sB,OAAOs7C,EAAOtZ,SAAW,GACnFrjB,GAAqCkO,IAAE5I,OAC3CmwD,GACA,SAAClwD,EAAK2d,GACJ,OAAOlrC,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFutB,EADLvtB,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEGkrC,EAAEhH,OAASgH,KAGhB,IAEF,OAAOlrC,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFT,cAIN,KAAK0pD,mBAAQx4C,KAAQqF,aACnB,IAAM5iB,GAAMo6D,sBAAW78C,KAAQqF,YAAaomB,GAAUA,EAAOtZ,aAAUn7C,EACjE83B,GAAqCkO,IAAErlC,EAAM43B,KAAKT,QACrDuJ,OAAO,SAAA0V,GAAC,OAAIA,EAAE/C,SAAWvoB,KACzB2R,OAAO,SAACC,EAAiC2d,GAAlC,OAAAlrC,OAAAy0B,EAAA,EAAAz0B,CAAA,GAA8CutB,EAA9CvtB,OAAA2tB,EAAA,EAAA3tB,CAAA,GAAoDkrC,EAAEhH,OAASgH,KAAM,IAC/E,OAAOlrC,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFT,cAIN,QACE,OAAOn3B,IAIA6sF,GAAoB,SAACC,EAAoCh5B,GACpE,IAAMi5B,EAAiBC,aAAcl5B,GACjCm5B,aAA6CH,EAAmBh5B,GAChEg5B,EACEI,EAAqCrG,GAAsBkG,EAAgBj5B,GAC3EsO,EAAa4hB,GAAoBkJ,EAAmBp5B,GAE1D,OADwBq5B,aAAmB/qB,EAAYtO,kCCn8B5C00B,GAAoB,CAC/B4E,QAAStH,GAAkBuH,KAA2B,UACtD5E,MAAO,SACL6E,EACAv1D,GAEe,IADfw1D,EACe5oC,UAAA1hB,OAAA,QAAA5jC,IAAAslD,UAAA,IAAAA,UAAA,GACTxkB,EAC8B,kBAA3BmtD,EAAsCE,aAAiBF,GAA0BA,EAC1F,GAAIntD,GAAYA,EAASu2B,QAAS,CAChC,IAAM+2B,EAAcC,YAAkBvtD,EAAU,CAAEkT,OAAQtb,EAAOA,SAAU07B,KACrElJ,EAAOllB,IAAE5I,OACbgxD,EACA,SAAC/wD,EAAWC,GACV,IAAMgjC,EAAY4tB,EACd5wD,EAAIqxB,SAAWl6C,KAAYy6C,IACzBz6C,KAAY06C,KACZ16C,KAAYy6C,IACd5xB,EAAIqxB,OACR,OAAO7+C,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAKutB,EAAZvtB,OAAA2tB,EAAA,EAAA3tB,CAAA,GAAkBwtB,EAAIvP,GAAtBje,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAgCwtB,EAAhC,CAAqCqxB,OAAQ2R,OAE/C,IAEF,OAAOxwD,OAAAy0B,EAAA,EAAAz0B,CAAA,GACF22E,GAAkBuH,KAA2BltD,EAASJ,KAAKC,MADhE,CAEEjI,SACAwyB,OACApqB,SAAUA,EAASJ,KAAKC,OAG5B,OAAO7wB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACF22E,GAAkBuH,KAA2B,UADlD,CAEEt1D,SACAoI,SAAU,aAIHwtD,GAA4E,CACvFP,QAAS,GACT3E,MAAO,SAAC1wD,GACN,MAAO,CACLA,SACAmuD,SAAS,IAGb0H,SAAUC,MAECC,GAEJ,SAAC/1D,GACN,MAAO,CACLmuD,SAAS,IAIF6H,GAEJ,SAACh2D,GACN,MAAO,CACLA,SACAmuD,SAAS,IAIF8H,GAEJ,SAACj2D,GACN,MAAO,CACLA,SACAmuD,SAAS,IAYT+H,IATMC,KASI/+E,OAAA2tB,EAAA,EAAA3tB,CAAA,GACboF,IAAU6E,WAAau0E,KCjFnB,IAAMQ,GAAqB,SAACC,EAAsBC,GACvD,OAAIA,IAGChpD,IAAEzI,SAAS,CAACroB,IAAUmF,iBAAkB00E,KACxC/oD,IAAEzI,SAAS,CAACroB,IAAUoF,mBAAoBy0E,KAC1C/oD,IAAEzI,SAAS,CAACroB,IAAUqF,YAAaw0E,KACnC/oD,IAAEzI,SAAS,CAACroB,IAAUuF,mBAAoBs0E,IAW3CE,GAAgB,SAAChjE,EAAuB+iE,GAC5C,IAAME,EANiB,SAACjjE,EAA+C+iE,GACvE,IAAMG,EAAgBnpD,IAAE3E,OAAOpV,EAAQ,SAAAmuD,GAAC,OAAI0U,GAAmB1U,EAAEv3E,KAAMmsF,KACvE,OAAOhpD,IAAEnH,IAAIswD,EAAe,SAAA/U,GAAC,OAAAtqE,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAUsqE,EAAV,CAAa3tD,QAAS2iE,eAAS53D,QAAS4iD,EAAE5iD,SAAW43D,mBAI5DC,CAAiBpjE,EAAQ+iE,GAEzCM,EAAgBtpD,IAAE5I,OACtB8xD,EACA,SAAC52D,EAAkBtM,GACjB,OAAOga,IAAE5I,OACPpR,EAAMsM,SAAW,GACjB,SAAC+E,EAAckyD,EAAat/D,GAC1B,IAAMu/D,EAAiB,GAAA9jF,OAAAoE,OAAA60B,EAAA,EAAA70B,CACjButB,EAAIpN,IAAe,IADF,CAAAngB,OAAAy0B,EAAA,EAAAz0B,CAAA,GAEhBy/E,EAFgB,CAEH55D,EAAG3J,EAAMS,QAAS5pB,KAAMmpB,EAAMnpB,SAElD,OAAOiN,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAKutB,EAAZvtB,OAAA2tB,EAAA,EAAA3tB,CAAA,GAAkBmgB,EAAau/D,KAEjCl3D,IAGJ,IAIF,MAAO,CACL7B,aAFmBuP,IAAEnH,IAAIqwD,EAAe,SAAA9U,GAAC,OAAIp0C,IAAEgpC,KAAKoL,EAAG,aAGvDkV,kBAuCEG,GAAqB,SACzBt/D,EACAu/D,EACAV,EACA/+D,GAEA,IAAM0/D,EAAYpxC,KAAKqxC,MAAgB,GAAVz/D,GAIvBmI,EAAU,CACdu3D,KAAM,CAAE/5D,EAAG3F,EAASyF,EAAG,GACvBk6D,MAAO,CACLC,KAAM,CAAEj6D,EAAG65D,EAAW/5D,EAAG,GACzBo6D,MAAO,CAAEl6D,EAAG3F,EAAUw/D,EAAW/5D,EAAG+5D,KAQlCM,EAzDyB,SAAC9/D,EAAiBF,GAAlB,OAA2C,SAACptB,EAAiBqtF,GAAlB,OAAqC,SAC/G9V,GAGA,GADgBA,EAAEv3E,OAASA,EACd,CACX,IAAI01B,EAAY6hD,EAAE+V,YACZC,EAAahW,EAAE+V,YAAYz3D,OAC7B71B,IAASqS,IAAU6E,WACrBwe,EAAO+1D,GAAuBlF,MAAMhP,EAAE+V,YAAYz3D,QACzC03D,GAAcvtF,IAASqS,IAAUgF,YAC1Cqe,EAAOk2D,GAA8B2B,GAC5BA,GAAcvtF,IAASqS,IAAU0E,MAC1C2e,EAAO4wD,GAAkBC,MAAM7wB,IAAQ63B,GAC9BA,GAAcvtF,IAASqS,IAAU8E,MAC1Cue,EAAOm2D,GAAwB0B,GACtBA,GAAcvtF,IAASqS,IAAU+E,OAC1Cse,EAAOo2D,GAAuByB,IAGhC,IAAMC,EAAUC,aAAgBztF,EAAMstB,EAASF,GACzCqI,EAAU0N,IAAE5I,OAChB4I,IAAE7sB,OAAOwW,MACT,SAAC0N,EAAmB+8C,GAApB,OAAAtqE,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAgCutB,EAAhCvtB,OAAA2tB,EAAA,EAAA3tB,CAAA,GAAsCsqE,EAAtCtqE,OAAAy0B,EAAA,EAAAz0B,CAAA,GAA+CogF,EAA/C,CAAuDrtF,OAAMmzB,KAAMq6D,EAAQv6D,EAAGI,KAAMm6D,EAAQt6D,OAC5F,IAEF,OAAOjmB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFsqE,EADL,CAEE9hD,UACAC,SAIJ,OAAO6hD,IAyBiBmW,CAAyBpgE,EAASF,GAE1D,OAAQy/D,EAAgBp6D,OACtB,IAAK,kBACH,OAAOxlB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACF4/E,EACAT,GACDS,EAAgBzjE,OACb4S,IAAIoxD,EAAgB/6E,IAAUkF,UAAXtK,OAAAy0B,EAAA,EAAAz0B,CAAA,GAA2BwoB,EAAQw3D,MAAMC,KAAzC,CAA+Ch6D,EAAG,EAAGF,EAAG,MAC3EgJ,IAAIoxD,EAAgB/6E,IAAUkF,UAAXtK,OAAAy0B,EAAA,EAAAz0B,CAAA,GAA2BwoB,EAAQw3D,MAAMC,KAAzC,CAA+Ch6D,EAAG,EAAGF,EAAG,MAC3EgJ,IAAIoxD,EAAgB/6E,IAAUoF,kBAAXxK,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAmCwoB,EAAQw3D,MAAMC,KAAjD,CAAuDh6D,EAAG,EAAGF,EAAG,MACnFgJ,IAAIoxD,EAAgB/6E,IAAUuF,kBAAX3K,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAmCwoB,EAAQw3D,MAAMC,KAAjD,CAAuDh6D,EAAG,EAAGF,EAAG,MACnFgJ,IAAIoxD,EAAgB/6E,IAAU4E,QAAXhK,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAyBwoB,EAAQw3D,MAAME,MAAvC,CAA8Cj6D,EAAG,EAAGF,EAAG,MAC1EgJ,IAAIoxD,EAAgB/6E,IAAUiF,UAAXrK,OAAAy0B,EAAA,EAAAz0B,CAAA,GAA2BwoB,EAAQw3D,MAAME,MAAzC,CAAgDj6D,EAAG,EAAGF,EAAG,MAC5EgJ,IAAIoxD,EAAgB/6E,IAAU0E,MAAX9J,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAuBwoB,EAAQw3D,MAAME,MAArC,CAA4Cj6D,EAAG,EAAGF,EAAG,MACxEgJ,IAAIoxD,EAAgB/6E,IAAUmF,gBAAXvK,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAiCwoB,EAAQw3D,MAAME,MAA/C,CAAsDj6D,EAAG,EAAGF,EAAG,MACrFm5D,IAIN,IAAK,WACH,OAAOl/E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACF4/E,EACAT,GACDS,EAAgBzjE,OACb4S,IAAIoxD,EAAgB/6E,IAAUkF,UAAXtK,OAAAy0B,EAAA,EAAAz0B,CAAA,GAA2BwoB,EAAQw3D,MAAMC,KAAzC,CAA+Ch6D,EAAG,EAAGF,EAAG,MAC3EgJ,IAAIoxD,EAAgB/6E,IAAUgF,YAAXpK,OAAAy0B,EAAA,EAAAz0B,CAAA,GAA6BwoB,EAAQw3D,MAAMC,KAA3C,CAAiDh6D,EAAG,EAAGF,EAAG,MAC7EgJ,IAAIoxD,EAAgB/6E,IAAU+E,KAAXnK,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAsBwoB,EAAQw3D,MAAMC,KAApC,CAA0Ch6D,EAAG,EAAGF,EAAG,MACtEgJ,IAAIoxD,EAAgB/6E,IAAU4E,QAAXhK,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAyBwoB,EAAQw3D,MAAME,MAAvC,CAA8Cj6D,EAAG,EAAGF,EAAG,MAC1EgJ,IAAIoxD,EAAgB/6E,IAAU6E,WAAXjK,OAAAy0B,EAAA,EAAAz0B,CAAA,GAA4BwoB,EAAQw3D,MAAME,MAA1C,CAAiDj6D,EAAG,EAAGF,EAAG,MAC7EgJ,IAAIoxD,EAAgB/6E,IAAU8E,MAAXlK,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAuBwoB,EAAQw3D,MAAME,MAArC,CAA4Cj6D,EAAG,EAAGF,EAAG,MAC3Em5D,IAIN,IAAK,UACH,OAAOl/E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACF4/E,EACAT,GACDS,EAAgBzjE,OACb4S,IAAIoxD,EAAgB/6E,IAAU0E,MAAX9J,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAuBwoB,EAAQw3D,MAAMC,KAArC,CAA2Ch6D,EAAG,EAAGF,EAAG,MACvEgJ,IAAIoxD,EAAgB/6E,IAAU2E,SAAX/J,OAAAy0B,EAAA,EAAAz0B,CAAA,GAA0BwoB,EAAQw3D,MAAMC,KAAxC,CAA8Ch6D,EAAG,EAAGF,EAAG,MAC1EgJ,IAAIoxD,EAAgB/6E,IAAUgF,YAAXpK,OAAAy0B,EAAA,EAAAz0B,CAAA,GAA6BwoB,EAAQw3D,MAAMC,KAA3C,CAAiDh6D,EAAG,EAAGF,EAAG,MAC7EgJ,IAAIoxD,EAAgB/6E,IAAU4E,QAAXhK,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAyBwoB,EAAQw3D,MAAME,MAAvC,CAA8Cj6D,EAAG,EAAGF,EAAG,MAC1EgJ,IAAIoxD,EAAgB/6E,IAAUiF,UAAXrK,OAAAy0B,EAAA,EAAAz0B,CAAA,GAA2BwoB,EAAQw3D,MAAME,MAAzC,CAAgDj6D,EAAG,EAAGF,EAAG,MAC5EgJ,IAAIoxD,EAAgB/6E,IAAU6E,WAAXjK,OAAAy0B,EAAA,EAAAz0B,CAAA,GAA4BwoB,EAAQw3D,MAAME,MAA1C,CAAiDj6D,EAAG,EAAGF,EAAG,MAChFm5D,IAKR,OAAOl/E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACF4/E,EACAT,GAAcS,EAAgBzjE,OAAQ+iE,KAmBhCwB,GAA4B,SAACC,GAA0D,IAC1Fh6D,EAAyCg6D,EAAzCh6D,aAAc64D,EAA2BmB,EAA3BnB,cAAkB5uD,EAD0D5wB,OAAAg2B,GAAA,EAAAh2B,CACjD2gF,EADiD,kCAElG,MAAO,CACL/vD,OACAzU,OAAQwK,EACR6B,QAASg3D,EACTpjE,UAAW,CAAEwkE,oBAAqBhwD,EAAKgwD,gCCrMrCC,GAA4BC,0BAChC,SAAC3vD,GAAD,OAAkBA,EAAE7U,SAASykE,mBAC7B,SAAC5vD,GAAD,OAAkB6vD,aAA0B7vD,GAAG9Q,QAAQD,IACvD,SAAC+Q,GAAD,OAAkBA,EAAE8vD,YAAYC,WAChC,SAAC/vD,GAAD,OAAkBA,EAAE7U,SAAS6kE,GAAGhhE,YAChC,SAACihE,EAAUC,EAAWH,EAAW/gE,GAG/B,MAAO,CACL9D,WDuKuC,SAC3ChsB,EACAgwB,EACAu/D,EACAV,EACA/+D,GAEA,OAAI9vB,EAEK,GAGFuvF,EAAgB7wD,IAAI,SAAAuyD,GAAE,OAAI3B,GAAmBt/D,EAASihE,EAAIpC,EAAc/+D,KCrL1DohE,CAA8B,GAAIF,EADlCD,EAAS/kE,YAAc,GACkC6kE,EAAW/gE,GAGrFqhE,WAAYJ,EAASI,cAKdC,GAAuB,WAA2C,IAAA9R,EAC1CpB,YAAiBsS,IAA5CxkE,EADqEszD,EACrEtzD,WAAYmlE,EADyD7R,EACzD6R,WAEZzR,EAAeN,cAAfM,WAQR,OAPA2R,IAAS,WACHF,GAAenlE,GAAcA,EAAWyX,OAAS,GAGnDi8C,EAAWzzD,SAASqlE,6BAGjB,CAACtlE,EAAYmlE,+DC/BTI,GAAc,kBAAM1rD,IAAEzI,SAASo0D,OAAOC,SAASC,KAAM,cAIrDC,IAFgBC,KAAOC,aAEP,GAAAtmF,OAAMqmF,KAAOE,aAAb,UCgBhBC,GAA8D,SAAApwD,GAA6E,IAA1E0nC,EAA0E1nC,EAA1E0nC,OAAQt9C,EAAkE4V,EAAlE5V,UAAWimE,EAAuDrwD,EAAvDqwD,KAAMC,EAAiDtwD,EAAjDswD,OAAQC,EAAyCvwD,EAAzCuwD,SAAUC,EAA+BxwD,EAA/BwwD,QAASC,EAAsBzwD,EAAtBywD,gBAAsB/U,EAC5GC,oBAAS,GADmGC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAC/IgV,EAD+I9U,EAAA,GAChI+U,EADgI/U,EAAA,GAEhJgV,EAAkCC,YAAY,SAAC1xD,GAAD,OAAkB2xD,IAAoBC,2BAA2B5xD,EAAG/U,EAAUK,eAC5HumE,EAAa5sD,sBACjB,SAAC/sB,GAEC,OAAKA,EAAOmc,MAGRo9D,EAAgCn1D,SAASpkB,EAAOmc,MAAM60B,oBAAoBx+B,QACrE,CAAE2J,MAAO,+DAEX,GALE,CAAEA,MAAO,sBAOpB,CAACo9D,IAEGK,EAAW7sD,sBACf,SAAC/sB,GACC,IAAMmc,EAAQnc,EAAOmc,MACf09D,EAAWljF,OAAAy0B,EAAA,EAAAz0B,CAAA,GACZqJ,EADY,CAEfmc,MAAOA,GAASkI,aAASlI,GAASA,EAAM3J,OAAS2J,IAEnD88D,EAAOtiF,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAKoc,EAAc8mE,IAE1BV,KAEF,CAACpmE,EAAWomE,EAASF,IAEjBa,EAAgB,WAChBZ,GAAYX,MACdW,IACAC,KAEAG,GAAiB,IAWfS,EAAqCrwD,kBAAQ,iBAAO,CAAEvN,MAAOpJ,EAAYA,EAAUoJ,MAAQ,GAAIk9D,cAAe,KAAO,CAACtmE,IACtHinE,EAAatwD,kBAAQ,WACzB,OAAI2mC,GAGF,GAAA99D,OAAU8mF,EAAgB,SAAWtmE,GAAaA,EAAUK,YAAc,OAAS,MAAnF,eAED,CAACimE,EAAetmE,EAAWs9C,IAC9B,OAAK2oB,EAKH1uD,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACE0qB,SAAU0hC,EAEVP,gBAAiBvsD,IAAEhF,MAAMuxD,KAAwC,IAApBA,EAC7Ca,kBAAkB,EAClBF,cAAeA,EACfG,oBAAoB,EACpBN,SAAUA,GAET,SAAApsD,GAAA,IAAGxtB,EAAHwtB,EAAGxtB,OAAQm6E,EAAX3sD,EAAW2sD,aAAcz1D,EAAzB8I,EAAyB9I,OAAzB,OACC4F,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMjB,GAASH,MAAI,GACjC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBC,OAAQpB,EAASqB,aAAW,GACjDlwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,KAAuBT,IAEzB1vD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,QAAMrhC,GAAG,aAAa0wF,SAAUO,GAC9B7vD,EAAA1P,EAAA2P,cAACowD,GAAA,EAAD,KAEErwD,EAAA1P,EAAA2P,cAAC4B,GAAA,EAAD,CAActjC,KAAK,QAAQy+B,MAAOtnB,EAAOmc,MAAOlJ,SAAU,CAAEvpB,KAAM,SAAU0iC,MAAO,kBAAmB9W,MAAOoP,EAAOvI,SACnHuI,EAAOvI,OAASmO,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOiwD,UAAWh7E,IAAUi7E,QAAStlE,QAASmP,EAAOvI,SAGvE+8D,GAAYG,GACX/uD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACowD,GAAA,EAAD,KACErwD,EAAA1P,EAAA2P,cAAA,+DACqDD,EAAA1P,EAAA2P,cAAA,wBADrD,sBAGAD,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAc7xF,GAAG,gBAAgB2/B,YAAY,iCAMzEyB,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,KACG9B,GACC5uD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MACI6uD,GACA/uD,EAAA1P,EAAA2P,cAAA,UAAQ7gC,KAAK,SAASkiC,UAAU,uBAAuBG,QAAS+tD,GAAhE,oBAIDT,GACC/uD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,YAAYnvD,QAAS,kBAAMutD,GAAiB,KAA5D,UAGAhvD,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,SAASnvD,QAAS,kBApEvB,SAAC/rB,GAC5B,IAAMm7E,EAAqBn7E,EAAOq5E,cAC9BH,GAAYiC,GAAwE,WAAlDA,EAAmBnqC,oBAAoBx+B,SAC3E0mE,IACAI,GAAiB,GACjBH,KA+DsDiC,CAAqBp7E,KAA7D,aAONq5E,GACA/uD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,YAAYnvD,QAASotD,GAArC,UAGA7uD,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,kBAAMouD,MAAzC,aA/DL,MCzEEkB,GAQR,SAAA1yD,GAA+G,IAA5G5V,EAA4G4V,EAA5G5V,UAAWuoE,EAAiG3yD,EAAjG2yD,WAAYC,EAAqF5yD,EAArF4yD,SAAUC,EAA2E7yD,EAA3E6yD,gBAAiBC,EAA0D9yD,EAA1D8yD,cAAeC,EAA2C/yD,EAA3C+yD,YAAaC,EAA8BhzD,EAA9BgzD,cAAeC,EAAejzD,EAAfizD,SAAevX,EACxEC,oBAAS,GAD+DC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAC3GwX,EAD2GtX,EAAA,GAC5FuX,EAD4FvX,EAAA,GAE5GwX,EAAY,SAAC/uD,GAEb6uD,GAA+B,KAAd7uD,EAAEgvD,UACrBhvD,EAAEivD,iBACFjvD,EAAEkvD,kBACEL,GACFC,GAAiB,KAKvB/V,oBAAU,WAGR,OADAjG,SAASqc,KAAKC,iBAAiB,UAAWL,GACnC,WACLjc,SAASqc,KAAKE,oBAAoB,UAAWN,MAGjD,IAAMO,EAAoBvvD,sBAAY,aAAU,IAE1CnB,EAAY2wD,aAAc,CAAC,cAAejB,EAAa,sBAAwB,OACrF,OACEhxD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAWA,EAAWG,QAAS0vD,EAAee,KAAK,SAASC,SAAU,EAAGC,WAAYJ,GACxFhyD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,qBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,qBAAqB7Y,GAAaA,EAAUoJ,QAE5Dm/D,GACChxD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,gDACdtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,8BACbtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,yCAGhB2vD,GACCjxD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,oBACbtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,wBAAwBzP,MAAM,mBAIhDy/D,EACAF,GACCpxD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,oBACbtB,EAAA1P,EAAA2P,cAAA,UAAQ7gC,KAAK,SAASkiC,UAAU,WAAWG,QAAS,kBAAM+vD,GAAiB,KACzExxD,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,qBADf,gBAIFtB,EAAA1P,EAAA2P,cAACoyD,GAAD,CAAoB5pE,UAAWA,EAAWimE,KAAM6C,EAAe5C,OAAQyC,EAAaxC,SAAUyC,EAAexC,QAAS,kBAAM2C,GAAiB,OAGhJN,GAAmBzoE,EAAUK,aAC5BkX,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,oBACbtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoyC,KAAI,IAAAxqE,OAAMwgB,EAAUK,cAChCkX,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,+BADf,wBC3DCgxD,GAA+G,SAAAj0D,GAAuB,IAApB8yD,EAAoB9yD,EAApB8yD,cAAoBoB,EACzGzE,KADyG0E,EAAAnmF,OAAAqoD,EAAA,EAAAroD,CAAAkmF,EAAA,GAC1InF,EAD0IoF,EAAA,GACvH3E,EADuH2E,EAAA,GAAAzY,EAEvGC,qBAFuGC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAE1I0Y,EAF0IxY,EAAA,GAE3HyY,EAF2HzY,EAAA,GAG3I0Y,EAAkBzD,YAAYC,IAAoBwD,iBAClDC,EAAkBnwD,sBACtB,SAACuqD,GACK2F,GAAmBA,EAAgB74D,SAASkzD,EAAMn7D,MAAM60B,oBAAoBx+B,QAC9EwqE,EAAiB1F,GAEjBmE,EAAcnE,IAGlB,CAAC2F,EAAiBxB,IAGdtC,EAAUpsD,sBAAY,WAC1BiwD,OAAiBn2F,IAChB,IACGoyF,EAASlsD,sBACb,SAACuqD,GACC,IAAM6F,EAAYJ,EAAapmF,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAQomF,EAAR,CAAuB5gE,MAAOm7D,EAAMn7D,aAAUt1B,EAC7Em2F,OAAiBn2F,GACbs2F,GACF1B,EAAc0B,IAGlB,CAAC1B,EAAesB,IAElB,OACEzyD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,iCAEFD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,WACG,IAAfusD,GAAuB,cACR,IAAfA,GACC7tD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAUyyD,UAAU,EAAOC,MAAO,IAAKC,aAAc,EAAGC,eAAgB,EAAGC,aAAc,EAAGC,WAAYC,KACrGhG,EAAkBhyD,IAAI,SAAA8C,GAAC,OACtB8B,EAAA1P,EAAA2P,cAACozD,GAAD,CAAerrE,IAAKkW,EAAEpV,YAAaL,UAAWyV,EAAGizD,cAAe,kBAAMyB,EAAgB10D,SAGzFu0D,GAAiBzyD,EAAA1P,EAAA2P,cAACoyD,GAAD,CAAoBtsB,OAAQ,YAAat9C,UAAWgqE,EAAe/D,MAAM,EAAMC,OAAQA,EAAQE,QAASA,iBChDzHyE,GAAMjnF,OAAAy0B,EAAA,EAAAz0B,CAAA,GACdknF,IADc,CAEjBD,OAAQ,SAAC91D,GAAD,OAAkBA,EAAE6zC,KAAKiiB,UCCtBE,GAA8E,SAAAn1D,GAA4B,IAAzBizD,EAAyBjzD,EAAzBizD,SAAaluD,EAAY/2B,OAAAg2B,GAAA,EAAAh2B,CAAAgyB,EAAA,cAC/G/hC,EAAgB4yF,YAAYhU,KAAQ5+E,eACpCm3F,EAAYvE,YAAYoE,GAAOA,QACrC,OACEtzD,EAAA1P,EAAA2P,cAACI,EAAA,GAADh0B,OAAA8F,OAAA,CAAsB7V,cAAeA,EAAeg3F,OAAQG,GAAerwD,GACxEkuD,ICJMoC,GAAqB,WAChC,IAAMp3F,EAAgB4yF,YAAYhU,KAAQ5+E,eACpCq3F,EAAczE,YAAYoE,GAAOA,QAEvC,OAAOtzD,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc/jC,cAAeA,EAAeg3F,OAAQK,KCYvDC,GAAkC,CACtC9qE,YAAa6iE,eACb95D,MAAO,IAGIgiE,GAAiE,SAAAx1D,GAA8B,IAA3By1D,EAA2Bz1D,EAA3By1D,OAAQC,EAAmB11D,EAAnB01D,aACjFC,EAAQC,cAD4FC,EAEzEpY,cAAzBrE,EAFkGyc,EAElGzc,SAAU2E,EAFwF8X,EAExF9X,WACZ+X,EAAgBC,eAEhBC,EAAiBnF,YAAYC,IAAoBzmE,YACjD4rE,EAAqBpF,YAAYC,IAAoBrmE,aAN+CixD,EAOlEC,oBAAS,GAPyDC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAOnGwa,EAPmGta,EAAA,GAOrFua,EAPqFva,EAAA,GASpGwa,EAAyBr1D,kBAAQ,WAErC,QAAOi1D,GAAiB9xD,IAAE4Y,KAAKk5C,GAAkB,GAChD,CAACA,IAGEK,EAAiBnyD,IAAEnH,IAAI,CAAC,cAAe,kBAAmB,SAAAu5D,GAAC,MAAK,CAAE9iE,MAAO8iE,EAAG7rE,YAAa,MAEzF8rE,EAAanyD,sBAAY,SAAC/sB,GAC9B,IAAMm/E,EAA+B,CAAEhjE,MAAOnc,EAAOmc,MAAO/I,YAAa6iE,gBACzElU,EAAS/uC,IAAiBF,kBAAkB,CAAE/f,UAAWosE,EAAeC,aAAa,MACpF,IAEGC,EAAgBtyD,sBACpB,SAACuqD,GACC5Q,EAAW1zD,WAAW+f,gBAAgBukD,IAExC,CAAC5Q,EAAW1zD,aAGR2oE,EAAgB5uD,sBACpB,SAACuqD,GACC5Q,EAAW1zD,WAAW+f,gBAAtBp8B,OAAAy0B,EAAA,EAAAz0B,CAAA,GAA2C2gF,EAA3C,CAAkDl7D,WAAW,MAE/D,CAACsqD,EAAW1zD,aAQRssE,EAA0BvyD,sBAC9B,SAACuqD,GACC,IAAMiI,EAAQ5oF,OAAAy0B,EAAA,EAAAz0B,CAAA,GACT2gF,EADS,CAEZlkE,YAAa6iE,iBAETuJ,EAAgBnI,GAA0BkI,GAEhD7X,EAAmB4W,EAAOkB,GAAe57C,KAAK,SAAA67C,GACvCA,GACH3/C,QAAQuH,KAAK,4BAA6Bk4C,GAE5C7Y,EAAW1zD,WAAWmgB,aAAa,CAAEpgB,UAAUpc,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAM4oF,QAGzD,CAACjB,EAAO5X,EAAW1zD,aAGf0sE,EAA4B3yD,sBAAWp2B,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAC,SAAAC,IAAA,OAAAF,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAC5C+6C,EAAcl3D,KAAK,uCAAwC,CAAEr+B,GAAI,oBADrB,wBAAAs6C,EAAAK,SAAAR,MAE3C,CAACo7C,IAEE1C,EAAY,SAAC/uD,GAEboxD,GAAwB,KAAdpxD,EAAEgvD,UACdhvD,EAAEivD,iBACFjvD,EAAEkvD,kBACE2C,EACFC,GAAgB,GAEhBT,MAYN,OAPAtY,oBAAU,WAER,OADAjG,SAASsc,iBAAiB,UAAWL,GAC9B,WACLjc,SAASuc,oBAAoB,UAAWN,MAK1CzxD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,oBACbtB,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,2BAChBtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OAAf,qBACqB,IACnBtB,EAAA1P,EAAA2P,cAAA,cACED,EAAA1P,EAAA2P,cAACo1D,GAAD,OACQ,IAJZ,6DAK8D,IAC5Dr1D,EAAA1P,EAAA2P,cAACq1D,GAAD,CAAkBC,GAAG,gBACnBv1D,EAAA1P,EAAA2P,cAAA,sCAKND,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,kCADF,YAEED,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,gBAAgBliC,KAAK,SAASqiC,QAAS,kBAAM+yD,GAAgB,KAC7Ex0D,EAAA1P,EAAA2P,cAAA,cACED,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,gBADf,uBAKJtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UACbtB,EAAA1P,EAAA2P,cAACoyD,GAAD,CACE5pE,UAAWmrE,GACXlF,KAAM6F,EACN5F,OAAQiG,EACR/F,QAAS,kBAAM2F,GAAgB,IAC/B1F,iBAAiB,EACjB/oB,OAAO,cACT/lC,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEyyD,UAAU,EACVC,MAAO,IACPC,aAAc,EACdC,eAAgB,EAChBC,aAAc,EACdC,WAAYC,KACX7wD,IAAEnH,IAAIi5D,EAAgB,SAACn2D,EAAGhM,GAAJ,OACrB8N,EAAA1P,EAAA2P,cAACozD,GAAD,CACErrE,IAAG,cAAA/f,OAAgBiqB,GACnBzJ,UAAWyV,EACXgzD,iBAAe,EACfF,WAAY9yD,EAAEpV,cAAgBwrE,EAC9BnD,cAAe,kBA3FAnE,EA2FwB9uD,OA1FjDk+C,EAAW1zD,WAAWmgB,aAAa,CAAEpgB,UAAWukE,IADxB,IAACA,GA4FfoE,YAAa,SAAApE,GAAK,OAAI+H,EAAc1oF,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAK6xB,EAAM8uD,KAC/CqE,cAAeoD,EAAyB,kBAAMpD,EAAcnzD,SAAK3hC,QAKzEyjC,EAAA1P,EAAA2P,cAACu1D,GAAD,CAAyBrE,cAAe6D,IAEvCN,EAAev0D,OAAS,GACvBH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,+BAEFD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UACbtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEyyD,UAAU,EACVC,MAAO,IACPC,aAAc,EACdC,eAAgB,EAChBC,aAAc,EACdC,WAAYC,KACXsB,EAAet5D,IAAI,SAACu7C,EAAGzkD,GAAJ,OAClB8N,EAAA1P,EAAA2P,cAACozD,GAAD,CACErrE,IAAG,kBAAA/f,OAAoBiqB,GACvBzJ,UAAWkuD,EACXwa,cAAe,kBAAMiE,KACrBnE,UAAU,oBCnLfwE,GAAuBtI,0BAClC,SAAC3vD,GAAD,OAAkBA,EAAE8vD,YAAYC,WAChC,SAAAA,GACE,OAAOA,ICFEmI,GAAoB,WAC/B,IAAMnK,EAAe3Q,YAAiB6a,IAEtC,OAAOr2D,kBAAQ,iBAAO,CAAEmsD,iBAAiB,CAACA,4CCI/BoK,GAA0B,CACrCtkB,KAAM,CACJ6K,iBAAiB,EACjB0Z,WAAW,EACXtC,OAAQ,IAEVpY,QAAS,CACP2a,kBAAct5F,EACdu5F,SAAU,GACVpgC,OAAO,EACP6mB,QAAQ,EACRC,eAAe,EACft+E,WAAY,EACZ5B,cAAe,GACfuxF,YAAY,EACZ3S,aAAS3+E,EACTygD,YAAa,CAAE6wC,YAAY,GAC3B9c,QAAS,GACTlO,IAAK,GACLjP,QAAS,CACPi6B,YAAY,GAEdkI,mBAAmB,EACnBC,kBAAkB,EAClBC,sBAAsB,EACtB14B,YAAQhhE,EACR25F,iBAAkB,GAClBC,cAAe,GACfC,qBAAqB,EACrBC,qBAAqB,EACrBC,+BAA+B,EAC/BC,oBAAgBh6F,GAElBw0E,QAAS,CACPylB,eAAgB,IAElBC,YAAa,CACX3lB,SAAU,CAAE+c,YAAY,GACxB6I,iBAAkB,GAClBC,oBAAqB,IAEvBl6C,SAAU,CAAEoxC,YAAY,GACxB+I,eAAgB,CACdn6C,SAAU,GACVsxB,KAAM,EACNC,SAAU,EACV3K,MAAO,EACPwqB,YAAY,GAEdvc,kBAAmB,CACjBilB,eAAgB,CACdhR,UAAU,EACVzwD,KAAM,CACJx3B,MAAO,GACPC,UAAW,GACXC,YAAa,GACbC,UAAW,GACXX,eAAgB,CACdC,SAAU,GACVC,SAAU,GACVC,KAAM,GACNC,MAAO,GACPC,WAAY,GACZC,QAAS,IAEXC,gBAAiB,CACfN,SAAU,GACVC,SAAU,GACVC,KAAM,GACNC,MAAO,GACPC,WAAY,GACZC,QAAS,MAIfggD,OAAQ,CACNy5C,WAAW,EACXtR,UAAU,EACVzwD,UAAMv4B,GAERu6F,yBAA0B,CACxB75C,QAAS/5C,KACT2qF,YAAY,EACZ7iE,MAAO,MAET+rE,gCAAiC,CAC/BlJ,YAAY,EACZ/4D,KAAM,KACN9J,MAAO,MAETgsE,qBAAqB,EACrBC,SAAU,CACRpJ,YAAY,EACZqJ,QAAS,GACTlsE,MAAO,MAETmsE,YAAa,CACXriE,KAAM,GACN+4D,YAAY,EACZ7iE,MAAO,OAGXsiE,YAAa,CAAEC,UAAWe,KAAOf,WACjCnzD,OAAQ,GACR+N,UAAW,CACT0lD,YAAY,EACZ/lB,QAAS,IAEXkT,aAAc,GAEdyR,OAAQ,GACRlvB,OAAQ,CACNswB,YAAY,GAEdllE,SAAU,CACRyuE,sBAAuBC,KAAQC,kBAC/B9J,GAAGnhF,OAAAy0B,EAAA,EAAAz0B,CAAA,GACEkgB,KADH,CAEA4G,eAAe,EACfC,mBAAmB,EACnBy6D,YAAY,EACZx6D,cAAe,GACfH,mBAAmB,EACnBI,yBAA0B,IAC1B0P,mBAAoB,IACpBxP,0BAA2B,IAC3BC,kCAAmC,IACnCC,qCAAsC,GACtCC,SAAS,IAEXy5D,kBAAmB,CACjBS,YAAY,IAGhB56C,UAAW,CAAE46C,YAAY,EAAO56C,UAAW,GAAImwC,SAAS,EAAOnmD,KAAM,GAAIs6D,QAAQ,GACjF/uE,OAAQ,CACNqlE,YAAY,EACZrlE,OAAQ,GACRgvE,QAAQ,EACRC,SAAS,EACTC,mBAAmB,EACnBpiE,OAAQ,GACRqiE,kBAAmB,CACjBxhF,MAAOo0E,KACP9zE,YAAamhF,KACbphF,KAAM40E,KACN10E,UAAWmhF,KACXlhF,UAAWmhF,OAGfpvE,WAAY,CAAEmlE,YAAY,GAC1Bx5D,OAAQ,CACN0jE,cAAe,CACblK,YAAY,EACZ/4D,KAAM,GACNwzC,SAAU,IAEZ0vB,cAAe,CACbnK,YAAY,EACZ/4D,KAAM,IAERyzC,UAAW,GACXC,SAAU,IAEZ2rB,cAAe,GACf1pB,YAAa,CACXwtB,SAAU,IAEZxpC,YAAa,GACb5G,QAAS,GACT+pB,WAAY,CACVsmB,MAAO,CACLhd,QAAS,CAAE2S,YAAY,EAAOsK,UAAU,GACxCC,SAAU,CAAEvK,YAAY,EAAOsK,UAAU,IAE3CrmB,iBAAkB,CAAE+b,YAAY,EAAOsK,UAAU,GACjDrnB,SAAU,GACViB,UAAW,CAAE8b,YAAY,EAAOsK,UAAU,GAC1CE,iBAAkB,CAAExK,YAAY,EAAOsK,UAAU,GACjDnmB,qBAAsB,CAAE6b,YAAY,EAAOsK,UAAU,GACrDG,SAAU,GACVC,oBAAoB,EACpBC,oBAAoB,EACpBxB,qBAAqB,GAEvByB,QAAS,CACPvd,QAAS,CACPz+B,SAAU,GACVq0B,SAAU,GACVylB,eAAgB,GAChBmC,sBAAuB,IAEzBpnB,kBAAmB,CACjBuc,YAAY,EACZ8K,QAAS,GACT3tE,MAAO,KACP4tE,QAAS,GACTpL,GAAI,CACFzf,KAAM,EACNC,SAAU,GACVrwC,OAAQ,OACRk7D,YAAa,QAEfC,YAAa,CACXxsD,QAAS,GACT2Q,QAASh/C,KACT4vF,YAAY,EACZkL,mBAAmB,EACnB/tE,MAAO,KACPguE,YAAa91F,KACb+1F,WAAW,EACXC,gBAAgB,IAGpBC,OAAQ,CACNtL,YAAY,EACZL,GAAI,CACFzf,KAAM,EACNC,SAAU,IAEZmrB,OAAQ,GACRnuE,WAAOzuB,EACPq8F,QAAS,IAEXhkB,aAAc,CACZiZ,YAAY,EACZjZ,aAAc,GACd4Y,GAAI,CACFzf,KAAM,EACNC,SAAU,GACVrwC,OAAQ,iBACRk7D,YAAa,QAEfC,YAAa,CACXz/D,YAAa,GACb+/D,cAAe,CACbvL,YAAY,EACZ34C,SAAU,KAGdlqB,WAAOzuB,EACPq8F,QAAS,IAEXhnB,WAAY,CACVynB,cAAe,GACfC,oBAAqB,GACrBvnB,UAAW,GACXwnB,gBAAiB,GACjBh5F,cAAe,GACfi5F,eAAgB,GAChBC,iBAAkB,GAClBC,wBAAyB,GACzBpB,SAAU,GACVqB,oBAAoB,EACpBf,QAAS,GACTpL,GAAI,CACFxf,SAAU,GACVD,KAAM,EACNpwC,OAAQ,OACRk7D,YAAa,SAGjBzkD,QAAS,CACPwkD,QAAS,GACTxkD,QAAS,GACTo5C,GAAI,CACFxf,SAAU,GACVD,KAAM,EACNpwC,OAAQ,cACRk7D,YAAa,QAGjBj6C,aAAc,CACZg7C,iBAAkB,GAClB/L,YAAY,EACZ7iE,MAAO,KACP4tE,QAAS,GACTpL,GAAI,CACFxf,SAAU,GACVD,KAAM,GAER+qB,YAAa,CACXxsD,QAAS,CACPniB,OAAQ,EACRR,cAAe,IAEjBkkE,YAAY,EACZkL,mBAAmB,EACnB/tE,MAAO,KACPiyB,QAAS,GACT+7C,YAAa91F,KACb+1F,WAAW,KAIjBnxB,QAAS,CACP+lB,YAAY,EACZgM,eAAgB,IAElBrM,GAAI,CACF/kE,UAAW,CACTqxE,cAAc,EACd7I,UAAU,EACV8I,wBAAoBx9F,IAGxBy9F,YAAa,CACX/B,SAAU,GACVhlD,UAAW,GACXgnD,OAAQ,CACNC,cAAe,EACfC,aAAc,EACdC,YAAa,CAAEC,QAAS,EAAGvpD,SAAU,EAAGuyB,MAAO,EAAGi3B,KAAM,IACxD39C,IAAK,CAAE09C,QAAS,EAAGvpD,SAAU,EAAGuyB,MAAO,EAAGi3B,KAAM,MAGpDjoB,YAAa,CACX8mB,OAAQ,CACNtL,YAAY,EACZ0M,aAAc,IAEhBC,aAAc,GACdhN,GAAI,CACFzf,KAAM,EACNC,SAAU,GAEZysB,mBAAmB,EACnBC,WAAY,GACZC,wBAAwB,GAE1BC,kBAAmB,CACjBC,gBAAiB,CACfC,cAAe,IAAI1zC,KACnB2zC,YAAa,IAAI3zC,KACjBtyB,KAAM,IAERkmE,kBAAmB,CACjBF,cAAe,IAAI1zC,KACnB2zC,YAAa,IAAI3zC,KACjBtyB,KAAM,IAERmmE,cAAe,CACbH,cAAe,IAAI1zC,KACnB2zC,YAAa,IAAI3zC,KACjBtyB,KAAM,MCjVComE,GAA2E,SAAA78D,GAA2B,IAAxBqwD,EAAwBrwD,EAAxBqwD,KAAMyM,EAAkB98D,EAAlB88D,YAAkBC,EACzEp8D,eAApBq8D,GAD6FD,EACzG1uE,QADyGrgB,OAAAg2B,GAAA,EAAAh2B,CAAA+uF,EAAA,cAEzGv6D,EAAmB9B,eAAnB8B,eACA0qD,EAAiBmK,KAAjBnK,aACAnP,EAAeN,cAAfM,WAJyGrC,EAK3DC,oBAAS,GALkDC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAK1GuhB,EAL0GrhB,EAAA,GAKrFshB,EALqFthB,EAAA,GAAAuhB,EAM3DxhB,oBAAS,GANkDyhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAM1GE,EAN0GD,EAAA,GAMrFE,EANqFF,EAAA,GAO3G3yE,EAAcomE,YAAYC,IAAoBrmE,aAC9C5qB,EAAY08E,YAAiBM,IAAQh9E,WACrC81F,EAAQC,cATmG2H,EAU/D5hB,oBAAkB,GAV6C6hB,EAAAxvF,OAAAqoD,EAAA,EAAAroD,CAAAuvF,EAAA,GAU1GE,EAV0GD,EAAA,GAUvFE,EAVuFF,EAAA,GAAAG,EAWzEhiB,mBAAmC,MAXsCiiB,EAAA5vF,OAAAqoD,EAAA,EAAAroD,CAAA2vF,EAAA,GAW1GE,EAX0GD,EAAA,GAW5FE,EAX4FF,EAAA,GAa3GG,EAAiBzG,GAAahtE,SAAS6kE,GACvC6O,EAAwBhwF,OAAAy0B,EAAA,EAAAz0B,CAAA,GACzBkgB,KADyB,CAE5B4G,cAAeipE,EAAejpE,cAC9BC,kBAAmBgpE,EAAehpE,kBAClCC,cAAe+oE,EAAe/oE,cAC9BH,kBAAmBkpE,EAAelpE,kBAClCI,yBAA0B8oE,EAAe9oE,yBACzC0P,mBAAoBo5D,EAAep5D,mBACnCxP,0BAA2B4oE,EAAe5oE,0BAC1CC,kCAAmC2oE,EAAe3oE,kCAClDC,qCAAsC0oE,EAAe1oE,qCACrDC,QAASyoE,EAAezoE,UAG1B8nD,oBAAU,WAaR,OADIuY,GAAUsH,GAXA,eAAAp4D,EAAA72B,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAC,IAAA,IAAAujD,EAAA,OAAAzjD,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OACTkjD,EAAwBhB,GAAuBpN,OAAO3wC,QAC1D,iHAEEz0B,GAAewzE,GACbp+F,GACFk+E,EAAWzzD,SAASud,YAAYhoC,EAAWm+F,GAG3CC,GAAuBnB,IATZ,wBAAAjiD,EAAAK,SAAAR,MAAH,yBAAA7V,EAAA0e,MAAAzJ,KAAA0J,YAAA,EAWsB06C,GAC7B,WACLZ,GAAuB,GACvBJ,GAAuB,KAExB,CAACzyE,EAAawyE,EAAqBI,EAAqB1H,EAAOmH,IAElE,IAAM7L,EAAW7sD,sBACf,SAAC/sB,EAAD6+C,GAA2CA,EAApBioC,cAAoB,IACnC7zE,EAAQtc,OAAAy0B,EAAA,EAAAz0B,CAAA,GACTqJ,EADS,CAEZmX,iBAAkB0V,IAAE6T,SAAS1gC,EAAOmX,kBACpCD,kBAAmB2V,IAAE6T,SAAS1gC,EAAOkX,mBACrCD,iBAAkB4V,IAAE6T,SAAS1gC,EAAOiX,kBACpCG,MAAOyV,IAAE6T,SAAS1gC,EAAOoX,OACzBkW,mBAAoBT,IAAE6T,SAAS1gC,EAAOstB,oBACtCxP,0BAA2B+O,IAAE6T,SAAS1gC,EAAO8d,2BAC7CC,kCAAmC8O,IAAE6T,SAAS1gC,EAAO+d,mCACrDC,qCAAsC6O,IAAE6T,SAAS1gC,EAAOge,yCAEzDgoE,GAAuB76D,EAAelY,IACtC+yE,GAAuBP,KAE1B,CAACt6D,EAAgBs6D,IAEbsB,EAAWh6D,sBAAY,WAC3B04D,KACC,CAACA,IACEuB,EAAyB9hB,YAAiBM,IAAQyhB,8BAIlDC,EAAqCC,OAE1CC,UAAU,SAAC9/D,GAAD,OAAWwoB,MAAMxoB,GAAS,KAAOA,IAC3C+/D,WACAjpE,SALkC,sDAMlCkpE,SANkC,sDAOlCC,QAPkC,sDAW7BC,EAA+B,mCAAAj1F,OAFG,IAEH,SAAAA,OADG,IACH,KAC/Bk1F,EAA0CN,OAE7CC,UAAU,SAAC9/D,GAAD,OAAWwoB,MAAMxoB,GAAS,KAAOA,IAC3C+/D,WACAjpE,SAASopE,GACTF,SAASE,GACTD,QAAQC,GACRhiD,IAVqC,IAUAgiD,GACrCniD,IAVqC,IAUAmiD,GAWxC,OACEl9D,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEwsD,cAAe4L,EACfzL,oBAAoB,EACpBD,kBAAgB,EAChByN,iBAAkBP,OAEfQ,MAAM,CACL1wE,iBAAkBiwE,EAClB/vE,iBAAkB+vE,EAClBhwE,kBAAmBgwE,EACnB9vE,MAAO8vE,EACPppE,0BAA2BopE,EAC3BnpE,kCAAmCmpE,EACnClpE,qCAAsCkpE,EACtC55D,mBAAoBm6D,IAGxB7N,SAAUA,GAET,SAAAgO,GAAA,IAAG5nF,EAAH4nF,EAAG5nF,OAAQ0kB,EAAXkjE,EAAWljE,OAAQy1D,EAAnByN,EAAmBzN,aAAnB,OACC7vD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,4BAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,QAAMrhC,GAAG,WAAW0wF,SAAU,SAAC5sD,GAC7BA,EAAEivD,iBACF9B,MAEA7vD,EAAA1P,EAAA2P,cAAA,kBACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAAC4B,GAAA,EAAD,CACEtjC,KA1Ca,mBA2Cby+B,MAAOtnB,EAAOmX,iBACdlE,SAAU,CACRvpB,KAAM,SACN0iC,MAAO,iCACPvjC,KA/CW,mBAgDX28C,IAAK,OAGTlb,EAAA1P,EAAA2P,cAAC4B,GAAA,EAAD,CACEtjC,KAnDc,oBAoDdy+B,MAAOtnB,EAAOkX,kBACdjE,SAAU,CACRvpB,KAAM,SACN0iC,MAAO,kCACPvjC,KAxDY,oBAyDZ28C,IAAK,OAGTlb,EAAA1P,EAAA2P,cAAC4B,GAAA,EAAD,CACEtjC,KA5Da,mBA6Dby+B,MAAOtnB,EAAOiX,iBACdhE,SAAU,CACRvpB,KAAM,SACN0iC,MAAO,iCACPvjC,KAjEW,mBAkEX28C,IAAK,OAGTlb,EAAA1P,EAAA2P,cAAC4B,GAAA,EAAD,CACEtjC,KArEE,QAsEFy+B,MAAOtnB,EAAOoX,MACdnE,SAAU,CACRvpB,KAAM,SACN0iC,MAAO,aACPvjC,KA1EA,QA2EA28C,IAAK,QAIXlb,EAAA1P,EAAA2P,cAAA,qBACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,MACIiuD,KAAOC,cACPvuD,EAAA1P,EAAA2P,cAAC4B,GAAA,EAAD,CACEtjC,KAAK,oBACLy+B,MAAOtnB,EAAOwd,kBACdvK,SAAU,CAAEvpB,KAAM,UAAW0iC,MAAO,wCAI1C9B,EAAA1P,EAAA2P,cAAA,kBACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAAC4B,GAAA,EAAD,CACEtjC,KA3Fe,qBA4Ffy+B,MAAOtnB,EAAOstB,mBACdra,SAAU,CACRvpB,KAAM,SACN0iC,MAAO,uCACPvjC,KAhGa,qBAiGb28C,IAlHsB,KAkHemE,WACrCtE,IAlHsB,IAkHesE,eAI3Crf,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACGq8D,GACC18D,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAC4B,GAAA,EAAD,CACEtjC,KAzGkB,4BA0GlBy+B,MAAOtnB,EAAO8d,0BACd7K,SAAU,CACRvpB,KAAM,SACN0iC,MAAO,4CACPvjC,KA9GgB,4BA+GhB28C,IAAK,OAGTlb,EAAA1P,EAAA2P,cAAC4B,GAAA,EAAD,CACEtjC,KAlH0B,oCAmH1By+B,MAAOtnB,EAAO+d,kCACd9K,SAAU,CACRvpB,KAAM,SACN0iC,MAAO,uDACPvjC,KAvHwB,oCAwHxB28C,IAAK,OAGTlb,EAAA1P,EAAA2P,cAAC4B,GAAA,EAAD,CACEtjC,KA3H6B,uCA4H7By+B,MAAOtnB,EAAOge,qCACd/K,SAAU,CACRvpB,KAAM,SACN0iC,MAAO,iDACPvjC,KAhI2B,uCAiI3B28C,IAAK,SAMflb,EAAA1P,EAAA2P,cAAA,mCACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAAC4B,GAAA,EAAD,CACEtjC,KAAK,oBACLy+B,MAAOtnB,EAAO2d,cACd1K,SAAU,CAAEvpB,KAAM,mBAGtB4gC,EAAA1P,EAAA2P,cAAA,2BACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAAC4B,GAAA,EAAD,CACEtjC,KAAK,UACLy+B,MAAOtnB,EAAOie,QACdhL,SAAU,CAAEvpB,KAAM,UAAW0iC,MAAO,oBAEtC9B,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACEk7B,OAAO,QACP38D,GAAG,iBACH2+F,QACEv9D,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAAA,2CACAD,EAAA1P,EAAA2P,cAAA,+CACAD,EAAA1P,EAAA2P,cAAA,yCAGJ7gC,KAAK,SAEL4gC,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,MAAMliC,KAAK,SAASghC,MAAO,CAAEo9D,YAAa,IAA5D,2BAIFx9D,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAC4B,GAAA,EAAD,CACEtjC,KAAK,gBACLy+B,MAAOtnB,EAAOyd,cACdxK,SAAU,CAAEvpB,KAAM,UAAW0iC,MAAO,qBAEtC9B,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAC4B,GAAA,EAAD,CACEtjC,KAAK,oBACLy+B,MAAOtnB,EAAO0d,kBACdzK,SAAU,CAAEvpB,KAAM,UAAW0iC,MAAO,2BAEtC9B,EAAA1P,EAAA2P,cAAA,YAQFD,EAAA1P,EAAA2P,cAAA,UACE7gC,KAAK,SACLghC,MAAO,CAAEoB,QAAS,QAClBi8D,IAAK,SAACC,GACJ3B,KAAwB2B,IAAQA,EAAKC,WACrCxB,EAAgBuB,IAElBC,SAAUtxF,OAAOyb,KAAKsS,GAAQ+F,OAAS,KAG3CH,EAAA1P,EAAA2P,cAAA,QAAMG,MAAO,CAAEoB,QAAS,OAAQo8D,eAAgB,UAC5CtP,KAAOC,eAAiBhD,GACxBvrD,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,WAAWliC,KAAK,SAASqiC,QAAS,kBAAM85D,GAAuB,KAC/Ev7D,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,sBADf,qBAMNtB,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,YAAYnvD,QAASg7D,GAArC,UAGAz8D,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CACEC,QAAQ,UACRnvD,QAAS,kBAAMy6D,GAAgBA,EAAa2B,SAC5CF,SAAU7B,EACVx6D,UAAU,uBAJZ,aCjUNw8D,GAAuBC,YAAqB,ICOrCC,GAA8B,WAAM,IAAAC,ECPpB,WAC3B,IAAMC,EAAWjK,cADiDla,EAE9BC,mBAAiB,IAFaC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAE3DokB,EAF2DlkB,EAAA,GAE/CmkB,EAF+CnkB,EAAA,GAmBlE,OAhBAwB,oBAAU,WACRyiB,EAASlgE,IAAmB1V,KAAQM,eAAe0wB,KAAK,SAAAnG,GAClDA,GACFirD,EAAcjrD,EAAIkrD,OAAS,OAG9B,IAUI,CAACF,EATS17D,sBACf,SAAC47D,GACC,IAAMC,EAAWD,GAAS,GAC1BE,aAAYD,GACZF,EAAcE,GACdJ,EAASjhB,KAAK30D,KAAQM,cAAe,CAAEy1E,MAAOC,KAEhD,CAACF,KDTiCI,GADWC,EAAApyF,OAAAqoD,EAAA,EAAAroD,CAAA4xF,EAAA,GACxCE,EADwCM,EAAA,GAC5BL,EAD4BK,EAAA,GAAA1kB,EAEvBC,oBAAS,GAFcC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAExC2U,EAFwCzU,EAAA,GAElC6V,EAFkC7V,EAAA,GAGvCtmD,EAAYqL,eAAZrL,QACF8jD,EAAW0E,cACXuiB,EAAgB9jB,YAAiB,SAAAp9C,GAAC,OAAImhE,YAAqBnhE,GAAGohE,UAC9DC,EAAgBz/D,kBAAQ,iBAAO,CAAE0/D,WAAYX,EAAYS,QAASF,GAAiB,KAAO,CAC9FP,EACAO,IAR6CK,EDLZ,WAAM,IAAAhlB,EACbC,oBAAkB,GADLC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAClCwd,EADkCtd,EAAA,GAC1B+kB,EAD0B/kB,EAAA,GAAAuhB,EAEHxhB,oBAAkBsU,KAAOC,cAFtBkN,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAElCyD,EAFkCxD,EAAA,GAErByD,EAFqBzD,EAAA,GAgBzC,OAbAhgB,oBAAU,WACRqiB,GAAqB9/D,IAAamhE,KAAgBF,aAAa3lD,KAAK,SAAAnG,QACtD52C,IAAR42C,GACF+rD,EAAe/rD,GAEjB6rD,GAAU,MAEX,IAMI,CACLC,cACA1H,SACAp2C,IARU1e,sBAAY,SAAC5I,GACvBikE,GAAqB7gB,KAAKkiB,KAAgBF,YAAaplE,GAAKyf,KAAK,WAC/D4lD,EAAerlE,MAEhB,KCA0BulE,GAArBH,EAVuCF,EAUvCE,YAAa99C,EAV0B49C,EAU1B59C,IAEfk+C,EAAmB58D,sBACvB,SAACC,EAA+C1F,GAC9CmkB,KAAInkB,IAAmB,IAAVA,KAEf,CAACmkB,IAGGmuC,EAAW7sD,sBACf,SAAApE,GAAsE,IAAnEygE,EAAmEzgE,EAAnEygE,WAAYF,EAAuDvgE,EAAvDugE,QAEbR,EAAcU,GACdhP,GAAQ,GACJ4O,IAAkBE,GAAWF,GAC/BjnB,EAASlyC,IAAQU,sBAAsB,CAAEq5D,SAAUZ,EAAea,QAASX,MAG/E,CAACF,IAGH,OACE1+D,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGvM,GACCqM,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQvY,KAAK,IAAI03E,SAAS,MAAMC,SAAU,kBAAM3P,GAAQ,MACxD9vD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQvY,KAAK,IAAI03E,SAAS,MAAMC,SAAU,kBAAMhoB,EAASlyC,IAAQM,oBAIrE7F,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,SAAAgE,GAAM,OAAIhE,EAAQgE,IAASpF,KAAMA,GAC/C1uD,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAQwsD,cAAeoP,EAAevP,SAAUA,GAC7C,SAAApsD,GAAA,IAAG2sD,EAAH3sD,EAAG2sD,aAAH,OACC7vD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,4BAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,QAAMrhC,GAAG,WAAW0wF,SAAUO,GAC5B7vD,EAAA1P,EAAA2P,cAAA,mBACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACElO,WAAW,EACXwJ,YAAa,OACbiyD,UAAWC,KACXlyF,KAAM,aACNK,GAAI,aACJkjC,MAAM,iBAIV9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACE1E,YAAa,sBACbiyD,UAAWC,KACXlyF,KAAM,UACNK,GAAI,UACJkjC,MAAM,oBAIV9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEsD,QAASs7D,EACT7/F,KAAK,WACLb,KAAK,UACLujC,MAAM,mBACNwB,SAAU+7D,OAKlBr/D,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,YAAYnvD,QAAS,kBAAMquD,GAAQ,KAAnD,UAGA9vD,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,kBAAMouD,MAAzC,yBE9FV6P,GAA0B,CAC9B,CACEC,KAAM,QACNrrD,IAAK,uCACLsrD,aAAc,qCACdC,KAAM,uBACNC,WAAOvjG,GAET,CACEojG,KAAM,oBACNrrD,IAAK,oBACLurD,KAAM,cACNC,MAAO,CAACrkE,KAASihD,sBAIRqjB,GAAgB,SAC3BC,EACA1jB,GAEA,OAAO/5C,IAAE3E,OAAO8hE,GAAY,SAAAO,GAAE,OAAKA,EAAGC,QAAUC,aAAmBF,EAAID,EAAW1jB,MCTvE8jB,GAAyB,WACpC,IAAMC,EAAWzlB,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE6zC,KAAKgvB,WAC9C,OACErgE,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACb++D,EADH,KAduB,WACzB,OAAQ/R,KAAOgS,oBACb,IAAK,MACH,MAAO,cACT,IAAK,OACH,MAAO,OACT,QACE,MAAO,cAQMC,GADf,MCXSC,GAGR,SAAAniE,GAAkB,IAGjBoiE,EAHEnP,EAAejzD,EAAfizD,SACAh1F,EAAgB4yF,YAAYhU,KAAQ5+E,eACpCm7E,EAAW0E,cAkBjB,OACEn8C,EAAA1P,EAAA2P,cAAA,UAAQwB,QAAS,kBAhBjBg2C,EACEtqC,IAAeC,QAAQ,CACrBvlB,KAAMkF,KAAiB2zE,OACvBjiG,OAAQ,qEAIRgiG,GACFE,aAAaF,QAGfA,EAAUG,WAAW,WACnB1S,OAAOC,SAAS1b,KAAOouB,YAAavkG,IACnC,QAGmCglC,UAAU,uBAAuBlB,MAAO,CAAE0gE,WAAY,OAAQC,MAAO,YACxGzP,ICxBM0P,GAAyF,SAAA3iE,GAAsC,IAAnCiD,EAAmCjD,EAAnCiD,UAAWG,EAAwBpD,EAAxBoD,QAAS6vD,EAAejzD,EAAfizD,SACnH/F,EAAiBmK,KAAjBnK,aAEF9Y,EAAOrzC,kBAAQ,kBAAOmsD,EAAe+C,KAAO2S,eAAiB3S,KAAO4S,mBAAoB,CAAC3V,IAEvFnP,EAAeN,cAAfM,WAEF+kB,EAAgB1+D,sBACpB,SAACC,GACKurD,MAAiBxb,EAAK34C,SAASo0D,OAAOC,SAASC,QACjD1rD,EAAEivD,iBACFvV,EAAWkR,YAAY8T,mBAErB3/D,GACFA,EAAQiB,IAGZ,CAAC+vC,EAAM2J,EAAY36C,IAGrB,OACEzB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAciB,UAAWA,GAAa,WAAYmxC,KAAMA,EAAMhxC,QAAS0/D,GACpE7P,ICSM+P,GAA8C,SAAAn+D,GAAoB,IAAjBo+D,EAAiBp+D,EAAjBo+D,WACpDllB,EAAeN,cAAfM,WAEFmlB,EAAsB3mB,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE6zC,KAAKkwB,sBACnDC,EAAYpiE,kBAAQ,kBAAMmiE,GAAuB,IAAIn6C,KAAmC,KAA7Bm6C,EAAsB,OAAc,CACnGA,IAGMhW,EAAiBmK,KAAjBnK,aAEFyU,EAAY9Q,YAAYhU,KAAQ8kB,WAChC1jB,EAAY4S,YAAYhU,KAAQoB,WAChCmlB,EAAmBvS,YAAYhU,KAAQumB,kBACvCC,EAAkBxS,YAAYhU,KAAQwmB,iBACtCpO,EAAS1Y,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE6zC,KAAKiiB,SACtC+C,EAAsBnH,YAAYhU,KAAQmb,qBAC1CsL,EAAuB,OAAXrO,EAAkB,eAAiB,aAE/CsO,EAAaxiE,kBAAQ,kBAAM2gE,GAAcC,EAAW1jB,IAAY,CAAC0jB,EAAW1jB,IAE5EulB,EAAeC,cACf37D,EAAiB1D,sBAAY,kBAAM25C,EAAWzzD,SAASwd,kBAAkB,CAACi2C,EAAWzzD,WAErFytE,EAAsB2L,cACtBC,EAAwBv/D,sBAAY,kBAAM25C,EAAWlB,QAAQ8mB,yBAAyB,CAAC5lB,EAAWlB,UAQxG,OANAO,oBAAU,WACH2a,GACHkL,GAAW,IAEZ,CAAClL,IAGFp2D,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACgiE,GAAD,MACCJ,GAAgB7hE,EAAA1P,EAAA2P,cAACiiE,GAAD,CAAmBxT,KAAMmT,EAAc1G,YAAah1D,IAErEnG,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,0BACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,oBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UACbtB,EAAA1P,EAAA2P,cAACkiE,GAAD,OAEFniE,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UACbtB,EAAA1P,EAAA2P,cAACmiE,GAAD,CAAY9gE,UAAU,QAAtB,cAKNtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,mBACbtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,sBACdtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,kCACbtB,EAAA1P,EAAA2P,cAAA,sBACCo2D,GACCr2D,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,4BACbtB,EAAA1P,EAAA2P,cAAA,UAAQ7gC,KAAK,SAASkiC,UAAU,wBAAwBG,QAASugE,GAAjE,YAMNhiE,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,wBAAwBmgE,GACvCzhE,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,4BACZ+0D,EACCr2D,EAAA1P,EAAA2P,cAAA,UAAQ7gC,KAAK,SAASkiC,UAAU,WAAWG,QAASugE,GACjDN,GAGH1hE,EAAA1P,EAAA2P,cAAA,YAAOyhE,KAKb1hE,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,sBACdtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,sBACbtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,OACZtB,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,WAAWliC,KAAK,SAASqiC,QAAS0E,GAClDnG,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,sBACdtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAKsY,KAAK,mBACJ,IAHV,yBASN3Y,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,sBAEdtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uBACZiqD,EACCvrD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,+BACbtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,UACXtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,WACdtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,wBADf,gCAIFtB,EAAA1P,EAAA2P,cAACoiE,GAAD,CAA4B5gE,QAAS,kBAAM6/D,MACzCthE,EAAA1P,EAAA2P,cAAA,gDACiCD,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,iCAKlDtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,4BACbtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,QAAb,4CACAtB,EAAA1P,EAAA2P,cAACoiE,GAAD,CAA4B5gE,QAAS,kBAAM6/D,MACzCthE,EAAA1P,EAAA2P,cAAA,2CAC4BD,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,kCAOjDtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,sBAEdtB,EAAA1P,EAAA2P,cAAA,mCACAD,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,uBACZtB,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAACq1D,GAAD,CAAkBC,GAAG,gBACnBv1D,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,gBADf,iCAIa,iBAAdqgE,GACC3hE,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoyC,KAAI,kDAChBzyC,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,yBADf,+BAONtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,sBACdtB,EAAA1P,EAAA2P,cAAA,2BACAD,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,uBACZtB,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAACq1D,GAAD,CAAkBC,GAAG,sBACnBv1D,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,mBADf,qBAIFtB,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAACq1D,GAAD,CAAkBC,GAAG,sBACnBv1D,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,oBADf,2BAKFiB,IAAE4R,QAAQytD,IACV5hE,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,sBACdtB,EAAA1P,EAAA2P,cAAA,0BACAD,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,uBACXsgE,EAAWxmE,IAAI,SAAC6kE,EAAIj4E,GACnB,MAAgB,UAAZi4E,EAAGN,KAEH3/D,EAAA1P,EAAA2P,cAAA,OAAKjY,IAAKA,GACRgY,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAAA,KAAGwyC,KAAiB,OAAX6gB,EAAkB2M,EAAG3rD,IAAM2rD,EAAGL,aAAc0C,OAAQ,UAC3DtiE,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAW2+D,EAAGJ,OADnB,IAC6BI,EAAGN,QAOpC3/D,EAAA1P,EAAA2P,cAAA,OAAKjY,IAAKi4E,EAAGN,MACX3/D,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAACsiE,EAAA,EAAD,CAAMhN,GAAI0K,EAAG3rD,KACXtU,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAW2+D,EAAGJ,OADnB,IAC6BI,EAAGN,OAGlC3/D,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAAA,KACEwyC,KACa,OAAX6gB,EACI,8CACA,4CAENgP,OAAQ,UAERtiE,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eARf,6BAkBhBtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,sBACdtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,uBACZtB,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAACq1D,GAAD,CAAkBC,GAAG,sBACnBv1D,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,yBADf,sBAIFtB,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAACq1D,GAAD,CAAkBC,GAAG,sBACnBv1D,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,oBADf,kBAYFgtD,KAAOC,cAAgBiT,GACvBxhE,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,4BACbtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,iCACAtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEqW,OAAQ,SAAAopC,GACN,IAAMC,EAAQx9C,IAAEwY,IAAI,CAAC+kC,EAAOC,MAAO,KAAO,EACpCC,EAAUz9C,IAAEwY,IAAI,CAAC+kC,EAAOE,QAAS,KAAO,EACxCwiB,EAAUjgE,IAAEwY,IAAI,CAAC+kC,EAAO0iB,QAAS,KAAO,EACxCC,EACJ1iB,EAAQ,EAAR,GAAA93E,OACO83E,EADP,KAAA93E,OACgB+3E,EAAU,GAAK,IAAM,IADrC/3E,OAC0C+3E,EAD1C,KAAA/3E,OACqDu6F,EAAU,GAAK,IAAM,IAD1Ev6F,OAC+Eu6F,EAD/E,QAEIxiB,GAAW,EAAX,SAAA/3E,OACSu6F,EAAU,GAAK,IAAM,IAD9Bv6F,OACmCu6F,EADnC,cAAAv6F,OAEM+3E,EAAU,GAAK,IAAM,IAF3B/3E,OAEgC+3E,EAFhC,KAAA/3E,OAE2Cu6F,EAAU,GAAK,IAAM,IAFhEv6F,OAEqEu6F,EAFrE,QAGN,UAAAv6F,OAAWw6F,IAEbC,MAAOlB,EACPmB,aAAc,IACdrhE,UAAW,eAEXtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,sBACdtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAKsY,KAAK,kBAMjB21C,KAAOsU,eACN5iE,EAAA1P,EAAA2P,cAAA,MACEqB,UAAU,yBACVlB,MAAO,CAAEyiE,OAAQ,MAAOC,SAAU,UAAWhyD,SAAU,QAASy7C,MAAO,SAFzE,WAIW+B,KAAOsU,2DCpRbG,GAA4E,SAAA1kE,GAA+B,IAA5BizD,EAA4BjzD,EAA5BizD,SAAU0R,EAAkB3kE,EAAlB2kE,YAC9FC,EAAaC,iBAAO,MAE1B,OADAC,KAAaF,EAAYD,GAEvBhjE,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,eAAem8D,IAAKwF,GAChC3R,ICSM8R,GAA6E,SAAA/kE,GAA8E,IAA3EizD,EAA2EjzD,EAA3EizD,SAAUz/D,EAAiEwM,EAAjExM,MAAOwxE,EAA0DhlE,EAA1DglE,kBAAmBlP,EAAuC91D,EAAvC81D,cAAewJ,EAAwBt/D,EAAxBs/D,SAAUl8D,EAAcpD,EAAdoD,QAChJ26C,EAAeN,cAAfM,WAD8JrC,EAEzIC,qBAApBspB,EAF6Jj3F,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,MAAAyhB,EAG9IxhB,oBAAS,GAHqIyhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAG/J9M,EAH+J+M,EAAA,GAGzJ3L,EAHyJ2L,EAAA,GAIhK8H,EAAkB9gE,sBAAY,WAClCqtD,GAAQ,GACRwT,OAAiB/mG,IAChB,IAEGinG,EAAc/gE,sBAClB,SAACghE,GACC3T,GAASpB,GACTtS,EAAW+X,cAAcloD,KAAKkoD,GAC9BmP,EAAiBG,EAAMnB,QACnB7gE,GACFA,KAGJ,CAAC26C,EAAW+X,cAAeA,EAAe1yD,EAASitD,IAiB/CgV,EAA0BvP,EAAcv2D,OAAO,SAAA1C,GAAC,OAAe,IAAXA,EAAE+Q,OACtD03D,EAAmF,IAAvDxP,EAAcv2D,OAAO,SAAA1C,GAAC,OAAe,IAAXA,EAAE8Q,OAAgB7L,OACxEyjE,EAAsBrhE,IAAEmwC,MAAMyhB,GACjCv2D,OAAO,SAAA1C,GAAC,OAAe,IAAXA,EAAE8Q,OACdrO,OAAO,SAAAzC,GAAC,OAAIA,EAAEuuC,OACdghB,UACAztD,QACG6mE,EAAeX,iBAAuB,MACtCY,EAAYZ,iBAA0B,MAC5C,OACEljE,EAAA1P,EAAA2P,cAAA,OAAKw9D,IAAKoG,GACR7jE,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,4CAA4Cq8D,SAAUA,EAAUl8D,QAAS+hE,EAAapkG,KAAK,SAASq+F,IAAKqG,GACzH9jE,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,qEAAqEzP,MAAOA,GACzFy/D,EACDtxD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAS,yBAAAr5B,OAA2Bo7F,GAAqBnD,OAA2C,IAAnCwD,EAAwBvjE,QAC5FujE,EAAwBvjE,UAI/BH,EAAA1P,EAAA2P,cAAA,WACG6jE,EAAUvE,SAAWsE,EAAatE,SACjCv/D,EAAA1P,EAAA2P,cAAC8jE,GAAA,EAAD,CAASC,UAAWH,EAAatE,QAAS0E,UAAU,SAAS3B,OAAQwB,EAAUvE,QAAS7Q,KAAMA,GAAQoV,EAAUvE,SAAWoE,GACzH3jE,EAAA1P,EAAA2P,cAACikE,GAAA,EAAD,CAAStlG,GAAG,sBAAsB0iC,UAAU,iBAC1CtB,EAAA1P,EAAA2P,cAACkkE,GAAD,CAAqBnB,YAAaO,GAC/BK,EAAoBxoE,IAAI,SAAAF,GACvB,OAAO8E,EAAA1P,EAAA2P,cAACmkE,GAAD,CAAmBp8E,IAAKkT,EAAElT,IAAKq8E,aAAcnpE,YAWhEopE,GAA6E,SAAAphE,GAAsB,IAAnBmhE,EAAmBnhE,EAAnBmhE,aAC5EjoB,EAAeN,cAAfM,WACFmoB,EAAmB9hE,sBAAY,WACnC25C,EAAW+X,cAAcloD,KAAKo4D,GAC9BjoB,EAAW+X,cAAcnoD,KAAKq4D,IAC7B,CAACjoB,EAAYioB,IAEhB,OACErkE,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,oCAAoC4+D,OAAQmE,EAAar4D,MACtEhM,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,kBACbtB,EAAA1P,EAAA2P,cAAA,SAAIokE,EAAalvD,QACjBnV,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,QAAQ08C,KAAMqmB,EAAa56B,MAAM/yB,OAAzB,qBAEvB1W,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,oBACbtB,EAAA1P,EAAA2P,cAAA,SACED,EAAA1P,EAAA2P,cAAA,cAASokE,EAAaxyE,OADxB,IACyCwyE,EAAap5E,UAGxD+U,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACbtB,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,WAAWliC,KAAK,SAASyyB,MAAM,SAAS4P,QAAS8iE,GACjEvkE,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,kCCtGVkjE,GAA+C,WAC1D,IAAMrQ,EAAgBvZ,YAAiB6pB,KAGjCC,EAAatlE,kBAAQ,kBAAMmD,IAAE4R,QAAQggD,IAAgB,CAACA,IAE5D,OACEn0D,EAAA1P,EAAA2P,cAAC0kE,GAAD,CAAuB9yE,MAAM,gBAAgBwxE,kBAAkB,sCAAsClP,cAAeA,EAAewJ,SAAU+G,GAC3I1kE,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAKsY,KAAK,oCCMT,SAASisD,GAAyCtqC,EAAQjG,GAAqD,IAC5G9X,EAA+B8X,EAA/B9X,SAAU/L,EAAqB6jB,EAArB7jB,iBACVyyB,EAAoB3I,EAApB2I,gBAF4G4hC,EAGrEC,GAAkBxqC,EAAK9pB,GAAoB,IAAlFz+B,EAH4G8yF,EAG5G9yF,MAAOD,EAHqG+yF,EAGrG/yF,IAAKizF,EAHgGF,EAGhGE,YAAarpC,EAHmFmpC,EAGnFnpC,UAC3BpoB,EAAI2vB,GAAoC1mB,EAC9C,OAAI+d,EAAIvpD,YAAcA,IAAU6iC,OAC9B,GAAA3rC,OAAUqrC,EAAI,EAAI,OAAS,OAE7B,GAAArrC,OAAU8J,EAAV,KAAA9J,OAAmB6J,EAAnB,MAAA7J,OAA2B88F,EAA3B,KAAA98F,OAA0CyzD,GAQrC,SAASopC,GAAsCxqC,EAAQvoB,GAC5D,IAAMwU,EAAY+T,EAAI0B,UAAY1B,EAAI0B,UAAY1B,EAAI/pB,OADiDy0D,EAE7C5qC,YAAsB7T,GAAxEtxB,EAF+F+vE,EAE/F/vE,OAAQkyB,EAFuF69C,EAEvF79C,WAAYjB,EAF2E8+C,EAE3E9+C,UAAWqB,EAFgEy9C,EAEhEz9C,OAAQ7iD,EAFwDsgG,EAExDtgG,OAC/C,GAAIwhD,IAAcn1C,IAAU6iC,OAC1B,MAAO,CACL3e,OAAQA,GAIZ,IAAMiJ,EAAI8/C,KAAM72B,GACVgS,EAAuB8rC,YAA2B3qC,EAAI/pB,OAAQwB,GAC9DjgC,EAAMosB,EAAEwY,OAAO,MAIrB,MAAO,CACL5kC,IAHAqnD,IAAyBxuC,KAAqBi8B,GAA9C,GAAA3+C,OAAsD6J,EAAtD,KAAA7J,OAA6D0iB,KAAqBwuC,IAA0BrnD,EAI5GC,MAAOmsB,EAAEwY,OAAO,OAChB1kC,KAAMksB,EAAEwY,OAAO,MACfquD,YAAaxiE,IAAE8c,SAASkI,GACxBmU,UAAWh3D,EAAS4M,KAAW5M,QAAUnI,EACzCm1C,SAAUnP,IAAE8c,SAASib,EAAI2I,iBACzBhuC,OAAQA,GCvDL,SAASiwE,GAAgBlmC,GAE9B,MAA0B,UADHz8B,IAAEvE,IAAIghC,EAAK,sBAAkBziE,GC+D/C,SAAS4oG,GAAiB9wC,GAAiF,IACxGsH,EAAuCtH,EAAvCsH,MAAOrL,EAAgC+D,EAAhC/D,SAAUwL,EAAsBzH,EAAtByH,YAAaF,EAASvH,EAATuH,KAChCF,EAAYrH,EAAMljD,UACxB,GAAIoxB,IAAEhF,MAAMo+B,GACV,MAAO,GAGT,IAAMmtB,EAAahuC,KAAKwb,IAAIqF,GACtBzU,EAAQk+C,aAAatc,EAAY,CAAEuc,UAAU,IAC7CC,EAAY1pC,EAAO9gB,KAAKwb,IAAIsF,QAAQr/D,EACpCg9C,EAAO+rD,EAAYF,aAAaE,EAAW,CAAED,UAAU,IAAU,GACjEE,EAASzpC,EAAeA,IAAgBzqD,KAAc0qD,MAAQ,MAAQ,OAAU,GAChFypC,EA7BR,SAA2B9pC,GACzB,OAAQA,GACN,KAAKvqD,KAAUs0F,OACb,MAAO,MACT,KAAKt0F,KAAUgyE,MACb,MAAO,MACT,KAAKhyE,KAAUu0F,WACb,MAAO,WACT,KAAKv0F,KAAUw0F,YACb,MAAO,WACT,KAAKx0F,KAAUy0F,gBACb,MAAO,eACT,QACE,MAAO,OAgBaC,CAAkBnqC,GACpCgB,EAAWpM,IAAar4C,KAAUu4C,IAAM,OAAS,GAEvD,OAAIkL,IAAcvqD,KAAUu0F,WAC1B,GAAAz9F,OAAUsxC,EAAV,KAAAtxC,OAAkBu9F,EAAlB,KAAAv9F,OAAqCi/C,EAArC,KAAAj/C,OAA8Cs9F,EAA9C,KAAAt9F,OAAwDy0D,GAC/ChB,IAAcvqD,KAAUw0F,YACjC,GAAA19F,OAAUsxC,EAAV,KAAAtxC,OAAkBu9F,EAAlB,KAAAv9F,OAAqCs9F,EAArC,KAAAt9F,OAA+Cy0D,GACtChB,IAAcvqD,KAAUs0F,OACjC,GAAAx9F,OAAUu9F,EAAV,KAAAv9F,OAA6Bs9F,EAA7B,KAAAt9F,OAAuCy0D,GAEvC,GAAAz0D,OAAUi/C,EAAV,KAAAj/C,OAAmBu9F,EAAnB,KAAAv9F,OAAsCs9F,EAAtC,KAAAt9F,OAAgDy0D,GAiC7C,SAASopC,GAAuBC,GACrC,OAAOxjE,IAAEzI,SAAS,CAAC7M,KAAcK,WAAYy4E,GAOxC,SAASC,GAAqBD,GACnC,OAAOxjE,IAAEzI,SAAS,CAAC7M,KAAcE,iBAAkB44E,GAW9C,SAASE,GAAoBF,GAClC,OAAOxjE,IAAEzI,SAAS,CAAC7M,KAAcG,QAAS24E,GAOrC,SAASG,GAA0BH,GACxC,OArCK,SAA0BA,GAC/B,OAAOxjE,IAAEzI,SAAS,MAACv9B,EAAW0wB,KAAcC,IAAKD,KAAcS,WAAYT,KAAca,WAAYi4E,GAoC9FI,CAAiBJ,IAAgBC,GAAqBD,GAiCxD,SAASK,GACd9rC,EACArd,EACAoX,GAEA,IADAgyC,EACAxkD,UAAA1hB,OAAA,QAAA5jC,IAAAslD,UAAA,IAAAA,UAAA,GACQtF,EAA0B8X,EAA1B9X,SAAUyH,EAAgBqQ,EAAhBrQ,YACV4H,EAAgB0O,EAAhB1O,YACJkR,EAAc,GAEd2G,EAAoC,QAA5BzyD,KAAYspD,EAAIpP,QAE1B4R,EADEooC,GAAgB7wC,GACP,SAAApsD,OAAYw7D,EAAQ,SAAW,WACjClhC,IAAEhF,MAAMtQ,QAAmB+2B,EACtB,GACLke,IAAsB90C,OAAO0M,SAASkqB,GACjCyf,EAAQ,SAAW,OAEnBA,EAAQ,MAAQ,OAE5Bzf,IAAgB/2B,KAAca,YAChCgvC,EAAW,aAAA70D,OAAgBs6B,IAAE9E,QAAQq/B,KAGvC,IAAMp6B,EAAIxxB,KAAeopD,EAAIppD,gBACvBssB,EAAI88B,EAAIvpD,YAAcA,IAAU6iC,OAAS0mB,EAAI/pB,OAAS0M,EAAQhoB,OAC9Dqe,EAAIiJ,GAAYqP,GAAe,GAE/B15B,EAAI0yE,GAAqBtqC,EAAKjG,GACpC,SAAApsD,OAAU60D,EAAV,QAAA70D,OAA4By6B,EAA5B,KAAAz6B,OAAiCo+F,EAAa7oE,EAAI,GAAlD,KAAAv1B,OAAwDqrC,EAAxD,MAAArrC,OAA8DiqB,GAQzD,SAASo0E,GAAgBhsC,EAAevoB,GAC7C,OAAO+yD,GAAkBxqC,EAAKvoB,GASzB,SAASw0D,GAAoBpxD,GAClC,OAAQA,GACN,KAAKloB,KAAcC,IACjB,MAAO,MACT,KAAKD,KAAcE,gBACjB,MAAO,UACT,KAAKF,KAAcG,OACjB,MAAO,SACT,KAAKH,KAAcK,UACjB,MAAO,YACT,KAAKL,KAAcM,SACjB,MAAO,WACT,KAAKN,KAAcO,cACjB,MAAO,iBACT,KAAKP,KAAcQ,SACjB,MAAO,WACT,KAAKR,KAAcS,WACjB,MAAO,cACT,KAAKT,KAAcU,QACjB,MAAO,UACT,KAAKV,KAAcW,eACjB,MAAO,kBACT,KAAKX,KAAcY,MACjB,MAAO,QACT,KAAKZ,KAAca,UACjB,MAAO,YACT,KAAKb,KAAcc,iBACjB,MAAO,oBACT,KAAKd,KAAce,gBACjB,MAAO,mBACT,KAAKf,KAAcgB,eACjB,MAAO,kBACT,KAAKhB,KAAciB,gBACjB,MAAO,mBACT,KAAKjB,KAAcI,WACjB,MAAO,eACT,KAAKJ,KAAckB,aACjB,MAAO,eACT,KAAKlB,KAAcmB,mBACjB,MAAO,sBAmBT,QACE,MAAO,IAmBN,SAASo4E,GAAenyC,GAC7B,IAAMtiB,EAAmBsiB,EAAM7jB,iBAC/B,YAAyBj0C,IAArBw1C,EACK,GAEFxP,IAAEnH,IAAIi5B,EAAM1D,KAAM,SAAA92B,GACvB,OAAOusE,GAAevsE,EAAKysE,GAAgBzsE,EAAKkY,GAAmBsiB,GAAO,KCzTvE,SAASoyC,GAAoBC,GAClC,MAAoB,UAAbA,EAAItnG,KCeN,IAAMunG,GAAqBxZ,0BAChC,SAACjwF,GAAD,OAAsBA,EAAMg+E,QAAQ3d,QAAU,IAC9C,SAAAA,GACE,OAAOh7B,IAAE3E,OAAO2/B,EAAQ,SAAAl/B,GAAA,IAAG2lB,EAAH3lB,EAAG2lB,YAAH,QACtBA,GAAcke,IAAsB5xB,KAAKxW,SAASkqB,KAClD7jB,SAIOymE,GAAYzZ,0BACvB,SAACjwF,GAAD,OAAsBA,EAAMg+E,QAAQ3d,QAAU,IAC9C,SAACrgE,GAAD,OAAsBA,EAAMg+E,QAAQgb,kBAAoB,IACxD,SAACh5F,GAAD,OAAsBA,EAAMg+E,QAAQh9E,WACpC,SAAChB,GAAD,OAAsBA,EAAMg+E,QAAQ2rB,cACpC,SAACtpC,EAAQupC,EAAa5oG,EAAW2oG,GAC/B,IAAME,EAA4BxkE,IAAEnH,IAAImiC,EAAQ,SAAA/5B,GAAC,OAAAn3B,OAAAy0B,EAAA,EAAAz0B,CAAA,GAC5Cm3B,EAD4C,CAE/CwjE,eAAgB,OAChBC,aAAcjpB,KAAMx6C,EAAE4jB,MAAMvQ,aAExBqwD,EAA4B3kE,IAAEnH,IAAI0rE,EAAa,SAAAtjE,GACnD,IAAMmT,EAAYnT,EAAE6wB,MAAMjN,MAAQ5jB,EAAE2jE,UACpC,OAAO96F,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFm3B,EAAE6wB,MADP,CAEE4yC,aAAcjpB,KAAMrnC,GAAWE,SAC/B6M,UAAWxlD,EACX8oG,eAAgB,QAChBlyE,KAAM0O,EACN4jB,KAAMzQ,MASNywD,EANgC7kE,IAAE81C,QAAF,GAAApwE,OAAAoE,OAAA60B,EAAA,EAAA70B,CAC9B06F,GAD8B16F,OAAA60B,EAAA,EAAA70B,CACjB66F,IACjB,SAAA1jE,GAAC,OAAKA,EAAEyjE,aAAezjE,EAAEyjE,aAAa7oC,UAAY,GAClD,QAWF,YAPkB7hE,IAAd2B,IACFkpG,EAAoBA,EAAkBxpE,OAAO,SAAA4F,GAAC,OAAIA,EAAEkgB,WAAalgB,EAAEkgB,YAAcxlD,UAE9D3B,IAAjBsqG,IACFO,EAAoBA,EAAkBxpE,OAAO,SAAA4F,GAAC,OAAIA,EAAE63B,cAAgB73B,EAAE63B,eAAiBwrC,KAGlFO,IAILC,GAAsB,SAC1B9pC,EACA42B,EACAj2F,EACA2oG,GAGA,IAAKtpC,IAAW42B,EACd,MAAO,GAET,IA6BIiT,EA7B6B7kE,IAC/Bg7B,EAAOniC,IAAI,SAAAoI,GACT,MAAO,CACL5kC,GAAI4kC,EAAEmgB,UAAY,EAClBxO,OAAM,SAAAltC,OAAWs+F,GAAoB/iE,EAAEwgB,cACvC/4B,QAASu7E,GAAehjE,GACxB9U,YAAa8U,EAAEoN,aAAe,GAC9B02D,SAAUtpB,KAAMx6C,EAAE4jB,MAAMvQ,SACxBwd,MAAO7wB,MAIVq6B,MACCs2B,EAAc/4D,IAAI,SAAAF,GAChB,IAAMsI,EAAItI,EAAEm5B,MACZ,MAAO,CACLz1D,GAAI4kC,EAAEmgB,UAAY,EAClBxO,OAAQja,EAAErJ,MACV5G,QAASiQ,EAAEjQ,QAAU,CAACiQ,EAAEjQ,SAAWu7E,GAAehjE,GAClD9U,YAAa8U,EAAEoN,aAAe,GAC9B02D,SAAUtpB,KAAMx6C,EAAE4jB,MAAQlsB,EAAEuuC,MAAM5yB,SAClCwd,MAAO7wB,MAKZ60C,QAAQ,SAAA9gC,GAAC,OAAKA,EAAE+vD,SAAW/vD,EAAE+vD,SAASlpC,WAAa,GAAI,CAAC,SACxDphC,QAUH,YAPkBzgC,IAAd2B,IACFkpG,EAAoBA,EAAkBxpE,OAAO,SAAA4F,GAAC,OAAIA,EAAE6wB,MAAM3Q,WAAalgB,EAAE6wB,MAAM3Q,YAAcxlD,UAE1E3B,IAAjBsqG,IACFO,EAAoBA,EAAkBxpE,OAAO,SAAA4F,GAAC,OAAIA,EAAE6wB,MAAMgH,cAAgB73B,EAAE6wB,MAAMgH,eAAiBwrC,KAG9FO,GAWIG,GAAqB,SAACv+E,GAAD,OAChCmkE,0BACE,SAACjwF,GAAD,OAAsBA,EAAMg+E,QAAQib,cAAcntE,IAClD,SAAC9rB,GAAD,OAAsBA,EAAMg+E,QAAQgb,kBAAoB,IACxD,SAACh5F,GAAD,OAAsBA,EAAMg+E,QAAQh9E,WACpC,SAAChB,GAAD,OAAsBA,EAAMg+E,QAAQ2rB,cACpC,SAACvnC,EAAYwnC,EAAa5oG,EAAW2oG,GACnC,IAAKvnC,IAAeA,EAAW/B,OAC7B,MAAO,GAET,IAAMwpC,EAA4BxkE,IAAEnH,IAAIkkC,EAAW/B,OAAQ,SAAA/5B,GAAC,OAAAn3B,OAAAy0B,EAAA,EAAAz0B,CAAA,GACvDm3B,EADuD,CAE1DwjE,eAAgB,OAChBC,aAAcjpB,KAAMx6C,EAAE4jB,MAAMvQ,aAExBqwD,EAA4B3kE,IAAEnH,IAAI0rE,EAAa,SAAAtjE,GACnD,IAAMmT,EAAYnT,EAAE6wB,MAAMjN,MAAQ5jB,EAAE2jE,UACpC,OAAO96F,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFm3B,EAAE6wB,MADP,CAEE4yC,aAAcjpB,KAAMrnC,GAAWE,SAC/BmwD,eAAgB,QAChBlyE,KAAM0O,EACN4jB,KAAMzQ,MASNywD,EANgC7kE,IAAE81C,QAAF,GAAApwE,OAAAoE,OAAA60B,EAAA,EAAA70B,CAC9B06F,GAD8B16F,OAAA60B,EAAA,EAAA70B,CACjB66F,IACjB,SAAA1jE,GAAC,OAAKA,EAAEyjE,aAAezjE,EAAEyjE,aAAa7oC,UAAY,GAClD,QAWF,YAPkB7hE,IAAd2B,IACFkpG,EAAoBA,EAAkBxpE,OAAO,SAAA4F,GAAC,OAAIA,EAAEkgB,WAAalgB,EAAEkgB,YAAcxlD,UAE9D3B,IAAjBsqG,IACFO,EAAoBA,EAAkBxpE,OAAO,SAAA4F,GAAC,OAAIA,EAAE63B,cAAgB73B,EAAE63B,eAAiBwrC,KAGlFO,KAIAI,GAA2B,SAACp8B,GAAD,OACtC+hB,0BACE,CACE,SAAAjwF,GAAK,OAAIA,GACT,SAACA,GAAD,OAAsBA,EAAMg+E,QAAQ3d,QAAU,IAC9C,SAACrgE,GAAD,OAAsBA,EAAMi3F,cAAcv2D,OAAO6oE,KACjD,SAACvpG,GAAD,OAAsBA,EAAMg+E,QAAQh9E,WACpC,SAAChB,GAAD,OAAsBA,EAAMg+E,QAAQ2rB,eAEtC,SAAC3pG,EAAOqgE,EAA2B42B,EAAej2F,EAAW2oG,GAE3D,OADqBQ,GAAoB9pC,EAAQ42B,EAAej2F,EAAW2oG,GACvDjpE,OAAO,SAAAy2B,GAAK,OAAIA,EAAMz1D,KAAOwsE,OAoD1Cq8B,IAzBoBta,0BAC/B,SAACjwF,GAAD,OAAsBA,EAAMg+E,QAAQ3d,QAAU,IAC9C,SAACA,GACC,OAAOh7B,IAAEnH,IAAImiC,EAAQ,SAAAlJ,GAInB,MAAO,CACL9jB,OAAQ8jB,EAAM7jB,iBACdk3D,aAAcrzC,EAAMzjB,YACpB+qB,MAAOtH,EAAMszC,kBAAoBtzC,EAAMsH,WAKRisC,KACrC,SAAC1qG,GAAD,OAAsBA,GACtB,SAACA,GACC,OAAOA,EAAMg+E,QAAQ8a,kBAHc4R,CAQrCC,KAE6BD,KAC7B,SAAC1qG,GAAD,SAAuBA,EAAMg+E,QAAQ3d,QAAUrgE,EAAMg+E,QAAQ3d,OAAOp9B,OAAS,IAC7E,SAACjjC,GAAD,OAAsBA,EAAMg+E,QAAQ8a,kBACpC,SAAC94F,GAAD,OAAsBA,EAAMsrB,OAAOkvE,mBACnC,SAACoQ,EAAaC,EAAmBC,GAC/B,QAAIF,IAG8B,IAAtBC,IAAyD,IAA1BC,GARhBJ,CAc7BC,MAeWI,IAbuBL,KAClC,SAAC1qG,GAAD,OAAsBA,GACtB,SAACA,GACC,SAAOA,EAAMg+E,QAAQ3d,SAAUrgE,EAAMg+E,QAAQ+a,uBAHb2R,CAQlCC,KAKmD1a,0BACnD,SAACjwF,GAAD,OAAsB4gE,KAAaC,wBAAwB7gE,EAAMg+E,QAAQ3d,QAAU,KACnF,SAACijB,GACC,IAAM5iB,EAAer7B,IAAEi+C,GAAW7mD,OAAO,SAACC,EAAeqB,GACvD,IAAMitE,EAAOjtE,EAAE+gC,UAAYmsC,aAAeltE,EAAE+gC,WAAa/gC,EAAEsV,QAAUtV,EAAEuV,iBAEvE,OAAIjO,IAAEhF,MAAM2qE,GACHtuE,EAILwuE,aAAgBF,GACXtuE,EAET,GAAA3xB,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAWutB,GAAX,CAAgBsuE,KACf,IAEH,OAAO3lE,IAAEimB,KAAKoV,MAILyqC,GAA6BT,KACxC,SAACpqE,GAAD,OAAkB8qE,YAAwB9qE,IAC1CyqE,GACA,SAACM,EAAiB3qC,GAChB,OAAOr7B,IAAEgmE,GAAmB,IACzB1qC,MAAMD,GAAgB,IACtBpV,OACA6vB,UACAr7C,SARmC4qE,CAUxC,SAACpqE,GAAD,gCCxRWgrE,GAAiF,SAAAnqE,GAAiB,IAAdoD,EAAcpD,EAAdoD,QACzFgnE,EAAa7tB,YAAiB,SAAAp9C,GAAC,OAAImpE,GAAmBnpE,KAE5D,OACEwC,EAAA1P,EAAA2P,cAAC0kE,GAAD,CAAuB9yE,MAAK,SAAA5pB,OAAWwgG,EAAU,MAAAxgG,OAASwgG,EAAT,SAA6B,IAAMpF,kBAAkB,+BAA+BlP,cAAe,GAAI1yD,QAASA,GAC/JzB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,4BACdtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAKsY,KAAK,oBAEZ3Y,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,4BACdtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAKsY,KAAK,eAEXpW,IAAEulB,SAAS2gD,IAAeA,EAAa,GAAKzoE,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,sDAAsDmnE,cCdnHC,GAA2F,SAAArqE,GAI3F,IAHJxM,EAGIwM,EAHJxM,MACA82E,EAEItqE,EAFJsqE,WACA9I,EACIxhE,EADJwhE,KAEA,OACE7/D,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,4CAA4CliC,KAAK,SAASqiC,QAAS,cACnFzB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAS,sDAAAr5B,OAAwD0gG,GAAc,IAAM92E,MAAOA,GAChGmO,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,4BACdtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAKsY,KAAK,oBAEZ3Y,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,4BACdtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAKsY,KAAI,QAAA1wC,OAAU43F,SAOhB+I,GAAmE,SAAA1lE,GAAoB,IAAjB2lE,EAAiB3lE,EAAjB2lE,WAC3ErgF,EAASoyD,YAAiB,SAAAp9C,GAAC,OAAIq9C,IAAgBryD,OAAOgV,KACtDsrE,EAAWluB,YAAiB,SAAAp9C,GAAK,IAAAurE,EACOvrE,EAAEw9C,aAAtC7lC,EAD6B4zD,EAC7B5zD,OAAQlqB,EADqB89E,EACrB99E,QAAS+9E,EADYD,EACZC,eACnBC,EAAsB,WAAX9zD,EAIjB,MAAO,CAAEA,SAAQlqB,UAASi+E,YAHK,SAAX/zD,EAGmBg0D,QAFZ,UAAXh0D,MAA4B8zD,IAA+B,IAAnBD,GAERI,UAAWH,EAAUI,eAAsB9sG,IAAX44C,KAE1EinC,EAAeN,cAAfM,WACFktB,EAA4B7mE,sBAChC,SAAC6oD,GACK/oD,IAAEm+C,KAAKl4D,EAAQ,SAAAmuD,GAAC,OAAIA,EAAEv3E,OAASksF,IAEjClP,EAAW7zD,MAAMghB,gBAAgB+hD,GAGjCud,EAAWvd,IAGf,CAAC9iE,EAAQ4zD,EAAW7zD,MAAOsgF,IAGvBF,EAAaG,EAASK,QAAU,MAAQL,EAASM,UAAY,OAASN,EAASO,UAAY,UAAY,GACvGx3E,EAAQi3E,EAAS79E,QACnB69E,EAAS79E,QACT69E,EAASO,UACP,gBADF,qBAAAphG,OAEuBshG,cAFvB,QAGJ,OACEvpE,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MACI4oE,EAASK,SAAWL,EAASM,WAAaN,EAASO,YACnDrpE,EAAA1P,EAAA2P,cAACupE,GAAD,CAAyB3J,KAAK,YAAY8I,WAAYA,EAAY92E,MAAOA,IAE1Ei3E,EAASI,aACRlpE,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEqiE,MAAO3jB,KAAgBloC,SACvB0mD,QAAS,SAACkM,GAAD,OACPzpE,EAAA1P,EAAA2P,cAAA,UACEqB,UAAU,4CACVliC,KAAK,SACLqiC,QAAS,kBAAM6nE,EAA0B73F,IAAU0E,SAEnD6pB,EAAA1P,EAAA2P,cAAA,QACEqB,UAAU,qDACVzP,MAAO43E,EAAS,eAAiB,kBAEjCzpE,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,4BACdtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAKsY,KAAK,oBAEZ3Y,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,4BACdtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAKsY,KAAM8wD,EAAS,eAAiB,8DCnEvDzrB,KAAMl8B,OAAO4nD,MAEN,IAAMC,GAAyC,SAAAtrE,GAAUhyB,OAAAu9F,GAAA,EAAAv9F,CAAAgyB,GAC9D,IAAMo5C,EAAW0E,cACX0tB,EAAqBjvB,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEnJ,OAAO0jE,cAAc+R,qBAClEC,EAAcnvB,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQ2a,eAC9CD,EAAYhb,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE6zC,KAAKukB,YAGzCzpB,EAA0B,OADjByO,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE6zC,KAAKiiB,SACL,EAAI,EACrClU,EAAaF,KAGb8qB,EADMhsB,KAAMvS,MAAM50B,SACHozD,WACfhrB,EAAUT,KAEV0rB,EAAiBznE,sBACrB,SAACq9C,GACC,IAAMqqB,EACJrqB,EAAOC,OAAS,GAAKD,EAAOE,SAAW,EACnC,qBADJ,yBAAA/3E,OAE6B43E,GAAoBC,IAG7CsqB,EAAW,wBAAAniG,OAA2B43E,GAAoBC,IAC5DuqB,EAAgB,kCACf9nE,IAAEhF,MAAMssE,KAGTQ,EAFUrsB,OAAQ5f,WACTyrC,EACO,+BAEH,cAAA5hG,OAAiB+1E,KAAM6rB,GAAoBS,YAG5D,OAAIlrB,EACF,GAAAn3E,OAAUkiG,EAAV,MAAAliG,OAA2BoiG,EAA3B,KAEA,GAAApiG,OAAUmiG,EAAV,MAAAniG,OAA0BoiG,EAA1B,MAGJ,CAACR,EAAoBzqB,IAiCvB,OApBA3D,oBAAU,WACRhE,EAASjyC,IAAe+kE,0BAA0B,KAClD9yB,EAASzpC,KAAgBw8D,qBAAqB,CAAEr+B,mBAC/C,IAEHsP,oBAAU,WACR,IAAIgvB,OAAyCluG,EAO7C,OANKq5F,IACH6U,EAAaC,YAAY,WACvBjzB,EAASzpC,KAAgBw8D,qBAAqB,CAAEr+B,mBAC/C,MAGE,gBACc5vE,IAAfkuG,GACFE,cAAcF,KAGjB,CAAC7U,EAAWxW,IAGbp/C,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGk/C,GACCp/C,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACExO,MAAOq4E,EACPxzD,OAAQ,SAAAopC,GAAM,OACZA,EAAOC,MAAQ,EAAf,GAAA93E,OACO63E,EAAOC,MADd,KAAA93E,OACuB63E,EAAOE,QAAU,GAAK,IAAM,IADnD/3E,OACwD63E,EAAOE,QAD/D,QAEIF,EAAOE,SAAW,EAChB,SADF,GAAA/3E,OAEK63E,EAAOE,QAFZ,UAIN0iB,MAAO1kB,KAAMe,KAAgBloC,UAAU9K,IAAI,EAAG,WAAW8K,SACzDvV,UAAW,qDAEV29C,GAAWA,EAAQd,YAClBn+C,EAAA1P,EAAA2P,cAAA,QACEG,MAAO,CACLX,YAAa,IAGdw/C,EAAQh0D,QALX,IAKqBg0D,EAAQ1gF,OAG7B0gF,GAAW8qB,IAAgBpuE,KAA4BjR,uBACvDsV,EAAA1P,EAAA2P,cAAA,QACEG,MAAO,CACLX,YAAa,IAFjB,uDAQFO,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,WACdtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAKsY,KAAK,kBAIdymC,GACAp/C,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACExO,MAAOq4E,EACPxzD,OAAQ,SAAAopC,GAAM,MAAI,UAClB4iB,MAAO1kB,KAvETgsB,EAAW,GACNhsB,KAAMU,MACV3yC,IAAI,EAAG,OACP8K,SAEI6nC,KAAiB7nC,UAkEW9K,IAAI,EAAG,WAAW8K,SACjDvV,UAAW,qDAEV29C,GACCj/C,EAAA1P,EAAA2P,cAAA,QACEG,MAAO,CACLX,YAAa,IAGdw/C,EAAQh0D,QALX,IAKqBg0D,EAAQ1gF,MAG/ByhC,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,WACdtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAKsY,KAAK,mBCzITiyD,GAAO,WAClB,OAAO5qE,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAKsY,KAAK,YAAY7W,MAAM,yBCcxB+oE,GAAiB,SAAC7hF,EAAiBozD,GAAlB,OAAyD,SAAC0uB,GACtF,GAAKA,EAAL,CAGA,IAAIC,EAA0B,GAC1BC,EAAsB,GACtBjxE,aAAS+wE,IACXC,EAAgB,CAACD,GACjBE,EAAY,CAACF,IACJvoE,IAAEod,QAAQmrD,IACnBC,EAAgBD,EAChBE,EAAYF,IAEZC,EAAgBD,EAAUG,mBAAqB,GAC/CD,EAAYzoE,IAAEs7B,MAAMitC,EAAUI,UAAWJ,EAAUG,mBAAqB,KAEtEF,EAAc5qE,OAIlBi8C,EAAW7zD,MAAMohB,qBAAqB3gB,EAASgiF,MAIpCG,GAAkB,WAAM,IAC3B/uB,EAAeN,cAAfM,WACFpzD,EAAUoiF,aAAc,WAY9B,MAAO,CACLrjE,UAAWtF,sBAAYooE,GAAe7hF,EAASozD,GAAa,CAACA,EAAYpzD,IACzEqiF,cAAe5oE,sBANK,SAACqoE,GACrB,IAAMhjC,EAAUvlC,IAAEod,QAAQmrD,GAAaA,EAAY,CAACA,GACpD1uB,EAAW7zD,MAAMohB,qBAAqB3gB,EAAS8+C,IAIL,CAACsU,IAC3CzxC,SAAUlI,sBAbK,SAACqoE,GAChB,IAAMhjC,EAAUvlC,IAAEod,QAAQmrD,GAAaA,EAAY,CAACA,GAEpD1uB,EAAW7zD,MAAMmhB,qBAAqB1gB,EAAS8+C,IAUf,CAACsU,MAmB/BkvB,GAAuB,SAACR,GAC5B,IAAM/iE,EAhBgC,WAAM,IACpCA,EAAcojE,KAAdpjE,UAWR,OAV8BtF,sBAC5B,SAACqoE,GACC,IAAMhjC,EAAUvlC,IAAExI,SAAS+wE,GAAa,CAACA,GAAavoE,IAAEod,QAAQmrD,GAAaA,EAAY,GACnFS,EAAgBhpE,IAAE3E,OAAOkqC,EAASvlC,IAAExI,UACtCwxE,EAAcprE,OAAS,GACzB4H,EAAUwjE,IAGd,CAACxjE,IAMeyjE,GAElB/vB,oBAAU,WACR1zC,EAAU+iE,IACT,CAACA,KAGOW,GAA4C,SAACC,GACxD,IAAMZ,EAAYlwB,YAAiB8wB,GAEnC,OADAJ,GAAqBR,GACdA,GAEIa,GAA6B,SAA4BC,GAEpE,IAAMd,EAAYe,aAAiBD,GAEnCN,GAAqBR,ICjFjBgB,GAAiB,CAAEtO,YAAa,OAAQuO,WAAY,UACpDC,GAAqB,CAAEjL,MAAO,aAAcD,WAAY,QAEjDmL,GAAwD,SAAA5tE,GAA6B,IAA1BpJ,EAA0BoJ,EAA1BpJ,OAChEoe,EAAqBunC,YAAiB,SAAAp9C,GAAC,OAAI0uE,aAAiB1uE,EAAGvI,GAAkB,MACjFk3E,EAAqB,CAAEpL,MAAO1tD,GAASA,EAAMhD,UAAY,EAAM,cAAgB,iBAC7EonC,EAAaqE,cAAbrE,SAHwF2jB,GAIzEtf,cAAfM,WACqCp9C,gBAArC5L,EALwFgoE,EAKxFhoE,kBAAmBC,EALqE+nE,EAKrE/nE,cACnBsX,EAAawgE,KAAbxgE,SACFyhE,EAAoB//F,OAAAy0B,EAAA,EAAAz0B,CAAA,CACxBm1B,QAAS,OACT6qE,cAAe,MACfvJ,SAAQ,WACLgJ,IAGC9zB,EAAW4C,YAAiB,SAAA19E,GAAK,OAAIA,EAAMm0E,KAAK2G,WAChD95E,EAAY08E,YAAiB,SAAA19E,GAAK,OAAIA,EAAMg+E,QAAQh9E,YAClDu7E,EAAmBN,EAAenB,GAAY,IAA9CyB,eAERgC,oBAAU,WACRhE,EAASjsC,IAAiB+D,aAAa,CAAEta,OAAQ5B,KACjDsX,EAAS1V,GAAkB,IAC3BwkD,EAAev7E,EAAW,CAAEk9D,KAAM,QAAS0M,QAAS,CAACz0C,MACpD,CAACokD,EAAUpkD,IAEd,IAAM6d,EAASgyD,iBAAO,GAElB7vD,GAASA,EAAMhD,YACjBa,EAAOquD,QAAUlsD,EAAMhD,UAAYgD,EAAMhD,UAAY,GAGvD,IAAMi8D,EAAcj5D,EAClBrT,EAAA1P,EAAA2P,cAAA,QAAMG,MAAOgsE,GACXpsE,EAAA1P,EAAA2P,cAAA,QAAMG,MAAO4rE,IACV/2E,EADH,OAGGmwE,aAAa/xD,EAAMjD,iBAAkB,CAAEi1D,UAAU,IAAQp9E,QAAQ,IAAK,IAHzE,OAIE+X,EAAA1P,EAAA2P,cAAA,QAAMG,MAAO+rE,GACVj7D,EAAOquD,SACNv/D,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAS,yBAAAr5B,OAA2BipC,EAAOquD,QAAU,EAAM,uBAAyB,MAExF6F,aAAal0D,EAAOquD,YAK3Bv/D,EAAA1P,EAAA2P,cAAA,OAAKG,MAAK/zB,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAOy/F,GAAmBM,EAA1B,CAAgDtJ,SAAU,aAClE9iE,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAS8a,KAAK,WAGlB,OAAK/nB,EACOk5E,EADmBtsE,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,OClBpBqsE,GAAuB,SAACC,GACnC,IAAIC,EAAuB,EACrBC,EAAiBhC,YAAY,WAC7B8B,GAEF7B,cAAc+B,GACdF,EAAQG,eAAe,CAAEC,SAAU,SAAUrkF,MAAO,MAAOskF,OAAQ,SAC1Dr3B,SAASs3B,gBAAgBC,UAAY7e,OAAO8e,cAAgBx3B,SAASs3B,gBAAgBG,cAE9FR,EAAuB,EACvBj3B,SAASs3B,gBAAgBC,UAAYv3B,SAASs3B,gBAAgBG,cACrDR,EAAuB,GAEhC9B,cAAc+B,GAGdD,KAED,KAGQS,GAA0D,SAAA7uE,GAMjE,IALJ8uE,EAKI9uE,EALJ8uE,QACAC,EAII/uE,EAJJ+uE,SACAtT,EAGIz7D,EAHJy7D,aACAwH,EAEIjjE,EAFJijE,WACA+L,EACIhvE,EADJgvE,aAEQjxB,EAAeN,cAAfM,WADJkxB,EAEmCC,cAA/BrxB,EAFJoxB,EAEIpxB,gBAAiBh+E,EAFrBovG,EAEqBpvG,UACnBwjG,EAAkBxS,YAAYhU,KAAQwmB,iBACtC8L,EAA6Bte,YAAYhU,KAAQsyB,4BACjD/kF,EAAYymE,YAAYC,IAAoB1mE,WAC5CD,EAASoyD,YAAiB,SAAAp9C,GAAC,OAAIq9C,IAAgBryD,OAAOgV,KACtD+tD,EAAe3Q,YAAiB6a,IAChCuK,EAAY9Q,YAAYhU,KAAQ8kB,WAChC3jB,EAAezB,YAAiBM,KAAQoB,WAT1CvC,EAUoCC,oBAAS,GAV7CC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAUG0zB,EAVHxzB,EAAA,GAUiByzB,EAVjBzzB,EAAA,GAWEvkB,EAAQklB,YAAiBM,KAAQyyB,cACjCpxB,EAAS3B,YAAiBM,KAAQ0yB,eAClCpxB,EAAgB5B,YAAiBM,KAAQ2yB,sBACzCC,EAAoBlzB,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEgwD,GAAG/kE,UAAUwoE,WACzD8c,EAA0BnzB,YAC9B,SAAA19E,GAAK,OAAIA,EAAMg+E,QAAQC,uBAAyBj+E,EAAMg+E,QAAQC,sBAAsBj9E,YAEhFm4F,EAAsBzb,YAAiBM,KAAQmb,qBAC/C5e,EAAW0E,cACX6lB,EAAwBv/D,sBAAY,kBAAM25C,EAAWlB,QAAQ8mB,yBAAyB,CAAC5lB,EAAWlB,UAChG7nD,EAAkB2L,eAAlB3L,cACF26E,EAAW5uE,kBAAQ,WACvB,OAAQkvD,KAAOgS,oBACb,KAAKA,KAAmB2N,IACtB,MAAO,MACT,KAAK3N,KAAmB4N,KACtB,MAAO,OACT,QACE,SAEH,IAKGC,EAAsB/uE,kBAAQ,WAWlC,OAVyBlpB,IAAc0nB,OAAO,SAAA3mB,GAC5C,QAAKo0E,GAAmBp0E,EAAsBs0E,KAG1Ct0E,IAAyBxF,IAAUqF,YAC9BkpF,IAAcxkE,KAAiBnlB,YAMzC,CAACH,IAAes3F,EAA4BjiB,EAAcyU,IAG7DvkB,oBAAU,WACJS,SACmB3/E,IAAjB8/E,KAEAA,EAAaviD,SAAS2B,KAASihD,qBAC9BhnB,GACA6mB,GACAC,GACAuxB,GAED3xB,EAAWtL,SAAS5pC,2BAGxBk1C,EAAWtL,SAASxkC,UAChB/J,IAAEulB,SAAS5pD,KAAe6vG,EAC5B3xB,EAAW/nB,MAAM/nB,QAAQyhE,GAAoD7vG,GACpEqkC,IAAEulB,SAASimD,IACpB3xB,EAAW/nB,MAAM/nB,QAAQyhE,KAG5B,CAAC7xB,EAAiBh+E,EAAW6vG,EAAyB16E,IAEzD,IAAM+6E,EAAqBlL,iBAAO16E,EAAO2X,QACnC0oE,EAAapmE,sBACjB,SAACrjC,GACCgvG,EAAmB7O,QAAU/2E,EAAO2X,OACpC,IAAMkuE,EAAWC,aAAiBlvG,GAClCg9E,EAAW7zD,MAAM2gB,SAASmlE,GAC1BX,GAAgB,GACZ5T,GACFuT,KAGJ,CAACjxB,EAAW7zD,MAAOuxE,EAAcuT,EAAc7kF,EAAQ4lF,EAAmB7O,UAG5E9jB,oBAAU,WACR,IAAM8yB,EAAiB/4B,SAASg5B,iBAAiB,mBAAmBJ,EAAmB7O,SACvFgP,GAAkBA,EAAeE,UAAU1iE,IAAI,wBAC/CwgE,GAAqBgC,IACpB,CAACH,EAAmB7O,UAEvB,IAAM+J,EAA4B7mE,sBAChC,SAAC6oD,GACK/oD,IAAEm+C,KAAKl4D,EAAQ,SAAAmuD,GAAC,OAAIA,EAAEv3E,OAASksF,IAEjClP,EAAW7zD,MAAMghB,gBAAgB+hD,GAGjCud,EAAWvd,IAGf,CAAC9iE,EAAQ4zD,EAAW7zD,MAAOsgF,IAG7B1F,KAAagK,EAAS,SAAA1J,GACpB,IAAMiL,KACJjL,GAASA,EAAMnB,QAAUqM,aAAqBlL,EAAMnB,OAlJrC,iBAmJb8K,GAAasB,GAAmBE,aAAmBnL,GAASA,EAAMnB,SACpEhB,MAIJ7lB,oBAAU,WACR6lB,GAAW,IACV,CAACA,IAEJ,IAAM7P,EAAY,SAAC/uD,GAEC,KAAdA,EAAEgvD,SACA+b,IACF/qE,EAAEivD,iBACFjvD,EAAEkvD,kBACF8b,GAAgB,KAKhBlgE,EAAsB/K,sBAAY,WACtCg1C,EAASnqC,IAAUE,oBAAoB,MACtC,CAACsgE,IAEJryB,oBAAU,WAER,OADAjG,SAASsc,iBAAiB,UAAWL,GAC9B,WACLjc,SAASuc,oBAAoB,UAAWN,MAxIxC,IAAA+J,EA4IgCxhB,mBAAS,CAC3C60B,OAAQ3gB,OAAO8e,YACflgF,MAAOohE,OAAO4gB,aA9IZrT,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GA4IGuT,EA5IHtT,EAAA,GA4IeuT,EA5IfvT,EAAA,GAkJEwT,EAAmB7vE,kBAAQ,WAC/B,OAAO2vE,GACN,CAACA,EAAWjiF,QAEf2uD,oBAAU,WACR,IAAMyzB,EAAe,WACnBF,EAAc,CACZH,OAAQ3gB,OAAO8e,YACflgF,MAAOohE,OAAO4gB,cAIlB,OADA5gB,OAAO4D,iBAAiB,SAAUod,GAC3B,WACLhhB,OAAO6D,oBAAoB,SAAUmd,KAEtC,CAAChhB,OAAQ8gB,EAAeD,IAE3B,IAAMI,EAAoB,CACxBC,SAAU,OACVC,aAAc,MACd3vE,UAAW,MACX4vE,aAAc,MACdC,UAAW,UAOPC,EAAOh6B,SAASi6B,cAAc,QAC9BC,GAAyBjtE,sBAAY,WACzC,OAAO+sE,EACHA,EAAKG,wBAAwBx9E,GACD,IAAzBkB,EAAc8M,OAAe,EALf,IAKmB9M,EAAc8M,QAPpC,IASd,GACH,CAACqvE,EAAMP,EAAiBniF,QAErB8iF,GAAmB,SAACC,GACxB,OAA8B,IAA1BA,EAAe1vE,QAAgB8uE,EAAiBniF,MAAQ,IACnD,GACK+iF,GAGhB,OAEI7vE,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,KACEL,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,KACEL,EAAA1P,EAAA2P,cAAA,UACEqB,UAAU,6BACV1iC,GAAG,wBACHizB,MAAM,aACN4P,QAAS4rE,EACTjuG,KAAK,UAEL4gC,EAAA1P,EAAA2P,cAAC6vE,GAAD,OAEF9vE,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,sCACbtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,2BAA2B7Y,GAAaA,EAAUoJ,QAChEm8E,GAAYziB,IACZvrD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,6BACb0sE,EAAQ,GAAA/lG,OAAM+lG,EAAN,KAAoB,GAC5BziB,GAAgBvrD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,MAAhB,sBAKzBtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,+CACbtB,EAAA1P,EAAA2P,cAAC8vE,GAAD,MACA/vE,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iCAAiC0uE,cAAY,QAA5D,KAGAhwE,EAAA1P,EAAA2P,cAACgwE,GAAD,CAAmBpH,WAAYA,IAC/B7oE,EAAA1P,EAAA2P,cAACiwE,GAAD,CAAyBzuE,QAAS,kBAAM6nE,EAA0B73F,IAAU2E,aAC5E4pB,EAAA1P,EAAA2P,cAACkwE,GAAD,MACAnwE,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG7M,IACE47E,EAAiBniF,MAAQ4iF,KACxB1vE,EAAA1P,EAAA2P,cAAA,QAAMG,MAAO+uE,GACVS,GAAiBv8E,GAAe+H,IAAI,SAACnG,EAAQ3G,GAAT,OACnC0R,EAAA1P,EAAA2P,cAACmwE,GAAD,CAAuBpoF,IAAKsG,EAAO2G,OAAQA,OAI/C26E,GAAiBv8E,GAAe+H,IAAI,SAACnG,EAAQ3G,GAAT,OAClC0R,EAAA1P,EAAA2P,cAACmwE,GAAD,CAAuBpoF,IAAKsG,EAAO2G,OAAQA,SAKrD+K,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,KACEL,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,gCACbtB,EAAA1P,EAAA2P,cAAA,UACE7gC,KAAK,SACLkiC,UAAU,6BACVG,QAAS,kBAAM+L,KACf3b,MAAOi8E,EAAoB,mBAAqB,kBAE/CA,EACC9tE,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,wBAAwBlB,MAAO,CAAE2gE,MAAO,YAErD/gE,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,6BAA6BlB,MAAO,CAAE2gE,MAAO,WAG7D1K,GACCr2D,EAAA1P,EAAA2P,cAAA,UACE7gC,KAAK,SACLkiC,UAAU,6BACVG,QAASugE,EACTnwE,MAAM,kBAENmO,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,uBAGfwsE,EAWA9tE,EAAA1P,EAAA2P,cAAA,UACE7gC,KAAK,SACLghC,MAAO,CAAEiwE,QAAS,GAAKtP,MAAO,OAAQuP,WAAY,wBAClDhvE,UAAU,6BACVzP,MAAM,mBACN8rE,UAAU,GAEV39D,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,8BAjBftB,EAAA1P,EAAA2P,cAAA,UACE7gC,KAAK,SACLkiC,UAAU,6BACVlB,MAAO,CAAEiwE,QAAS,EAAGC,WAAY,wBACjC7uE,QAAS,kBAAMisE,GAAgB,IAC/B77E,MAAM,aAENmO,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,8BAcjBtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAqBkwE,SAhUZ,cAgUoC9uE,QAAS6/D,EAAYzvE,MAAO6vE,MAI7E1hE,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEmwE,WAAYrC,EACZzf,KAAM+e,EACNgD,MAAO5H,EACPpM,SAAU,kBAAMiR,GAAgB,QCvW7BgD,GAAuG,SAAAryE,GAA4B,IAAzBizD,EAAyBjzD,EAAzBizD,SAAaluD,EAAY/2B,OAAAg2B,GAAA,EAAAh2B,CAAAgyB,EAAA,cACxIm5D,EAAS5c,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEhV,OAAOgvE,SACxCC,EAAU7c,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEhV,OAAOivE,UAEzCkZ,EAAoB/1B,YAAiBC,IAAgB81B,mBACrDC,EAAgBh2B,YAAiBC,IAAgB+1B,eACjDC,EAAYj2B,YAAiBC,IAAgBi2B,oBAE3C10B,EAAeN,cAAfM,WACF3yC,EAAyBhH,sBAAY,kBAAM25C,EAAW7zD,MAAMkhB,0BAA0B,CAAC2yC,EAAW7zD,QAElGwoF,EAAY7N,mBAclB,OAbAznB,oBAAU,WAER,GAAIk1B,GAAqBC,EAAe,CACtC,IAAMrC,EAAiB/4B,SAASi6B,cAAT,iBAAAxnG,OAAwC0oG,EAAkB,GAA1D,MACvBpE,GAAqBgC,GACrBrgB,OAAOyS,aAAaoQ,EAAUxR,SAC9BwR,EAAUxR,QAAUrR,OAAO0S,WAAWn3D,EAAwBonE,GAAa,KAE7E,OAAO,WACL3iB,OAAOyS,aAAaoQ,EAAUxR,WAE/B,CAACwR,EAAWJ,EAAmBC,EAAeC,EAAWpnE,IAG1DzJ,EAAA1P,EAAA2P,cAACI,EAAA,EAADh0B,OAAA8F,OAAA,GAAsBixB,EAAtB,CAA6Bo0D,OAAQA,EAAQC,QAASA,IACnDnG,ICkBP,IAAM0f,GAAqC,CACzClkF,MAAOZ,KAASO,GAChBoiF,OAAQ3iF,KAASO,GACjBwkF,eAAc,iBACdC,gBAAe,mBAEV,SAASC,GAAqC1Q,GAAuE,IAAA2Q,EAnD5H,SAAoC3Q,GAClC,IAAMhD,EAAMyF,iBAAU,MADiHnpB,EAG/GC,qBAH+GC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAGhIs3B,EAHgIp3B,EAAA,GAG1Hq3B,EAH0Hr3B,EAAA,GA0CvI,OArCAwB,oBAAU,WACR,IAAMt6B,EAAM,WACV,GAAIs8C,EAAI8B,QAAS,CACf,IAAMgS,EAAW9T,EAAI8B,QAAQoQ,wBAC7B,IAAKptE,IAAEm8B,QAAQ2yC,EAAME,GACnB,OAAOD,EAAQ7T,GAAOA,EAAI8B,QAAU,CAAEzyE,MAAOykF,EAASzkF,MAAO+hF,OAAQ0C,EAAS1C,aAAWtyG,KAI/F4kD,IACA,IAAIqwD,OAA4Cj1G,EAChD,GAAIkhG,GAAOA,EAAI8B,QAAS,CACtB,IAAMkS,EAAYlvE,IAAEvE,IAAIkwD,OAAQ,sBAAkB3xF,GAClD,GAAyB,oBAAdk1G,EAA0B,CACnC,IAAIC,EAAwC,IAAID,EAAU,WACpDD,GACF7Q,aAAa6Q,GAEfA,EAAgB5Q,WAAW,kBAAMz/C,KAAOs/C,GAAW,OAGrD,OADAiR,EAAeC,QAAQlU,EAAI8B,SACpB,WACDiS,GACF7Q,aAAa6Q,GAEVE,IAILA,EAAeE,aACfF,EAAiB,UAKtB,CAACjR,IAEG,CAAC4Q,EAAM5T,GAUMoU,CAAWpR,GAD2FqR,EAAAzlG,OAAAqoD,EAAA,EAAAroD,CAAA+kG,EAAA,GACnHC,EADmHS,EAAA,GAC7GrU,EAD6GqU,EAAA,GAGpHC,EAAaC,eAHuGxW,EAItFxhB,mBAA0Bg3B,IAJ4DvV,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAInHuT,EAJmHtT,EAAA,GAIvGuT,EAJuGvT,EAAA,GAsC1H,OAjCAhgB,oBAAU,WACR,IAAI3uD,EAAkBiiF,EAAWjiF,MAC7B+hF,EAAmBE,EAAWjiF,MAC9BukF,GAAQU,IAERjlF,EADEukF,EAAKvkF,OAASukF,EAAKvkF,MAAQ,IACrBZ,KAASuI,GACR48E,EAAKvkF,OAASukF,EAAKvkF,MAAQ,IAC5BZ,KAASsI,GAETtI,KAASO,GAGjBoiF,EADEwC,EAAKxC,QAAUwC,EAAKxC,OAAS,IACtB3iF,KAASuI,GACT48E,EAAKvkF,OAASukF,EAAKxC,OAAS,IAC5B3iF,KAASsI,GAETtI,KAASO,IAGtB,IAAMwlF,EAAgB,CACpBnlF,QACA+hF,SACAqD,UAAWb,GAAQA,EAAKvkF,MACxBqlF,WAAYd,GAAQA,EAAKxC,OACzBoC,eAAc,eAAAhpG,OAAiB6kB,GAC/BokF,gBAAe,gBAAAjpG,OAAkB4mG,IAE9BtsE,IAAEm8B,QAAQqwC,EAAYkD,IACzBjD,EAAciD,IAEf,CAACZ,EAAMtC,EAAYgD,IAEtB32B,aAAmB,oBAAqB,CAAEi2B,OAAMU,aAAYhD,aAAYtR,QACjE,CAACsR,EAAYtR,GAGf,SAAS2U,GAAyBrD,EAA6BsD,EAAmC38F,GACvG,OAAIq5F,EAAWsD,KAAmBnmF,KAASuI,GAClC/e,EAAO,GACLq5F,EAAWsD,KAAmBnmF,KAASsI,GACzC9e,EAAO,GAEPA,EAAO,iBC/FZ48F,GAAwC,CAAE30E,OAAQ,GAAIqwC,SAAU,GAAIukC,UAAW,EAAGC,YAAa,IAC/FC,GAAqD,CAAE90E,OAAQ,GAAIqwC,SAAU,GAAIukC,UAAW,EAAGC,YAAa,IAC5GE,GAAgC,SAAC1qF,GASrC,MARuB,CACrB,6BACA,yBACA,2BACA,eACA,4BAGoB8R,SAAS9R,IAG3B2qF,GAA0B/K,KAC9B,SAACpqE,EAA6CxV,GAA9C,OAA+DwV,EAAE1I,KAAKwuD,OAAS9lD,EAAE1I,KAAKwuD,OAAOt7D,QAAOzrB,GACpG,SAACihC,EAA6CxV,GAA9C,OAA8DA,GAC9D,SAAC4qF,EAAa5qF,GACZ,OAAIua,IAAEhF,MAAMq1E,KAAiBF,GAA8B1qF,GAClDsqF,GAEL/vE,IAAEhF,MAAMq1E,IAAgBF,GAA8B1qF,GACjDyqF,GAGJC,GAA8B1qF,GAG1B3b,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAKomG,GAAuCG,GAF5CvmG,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAKimG,GAA0BM,IAZZhL,CAiB9B,SAACpqE,EAAGxV,GAAJ,qBAAA/f,OAAmCu1B,EAAExU,QAArC,KAAA/gB,OAAgD+f,KAIrC6qF,GAAgB,SAAC7qF,GAC5B,IAAM9qB,EAAkDm8E,qBAAWy5B,MAC7DC,EAAeJ,GAAwBz1G,EAAO8qB,GAC9CyvD,EAAWu7B,eAOjB,MAAO,CAAE91G,MAAO61G,EAAcE,SANbxwE,sBACf,SAACywE,GACCz7B,EAAS07B,KAAkBC,cAAc,CAAEprF,IAAKA,EAAKkrF,SAAS,CAAEG,SAAS,MAE3E,CAAC57B,MC3CQ67B,GAA8D,SAAAj1E,GAUrE,IATJk1E,EASIl1E,EATJk1E,cACAC,EAQIn1E,EARJm1E,OACAC,EAOIp1E,EAPJo1E,SACAC,EAMIr1E,EANJq1E,OACAC,EAKIt1E,EALJs1E,WACAC,EAIIv1E,EAJJu1E,UACAC,EAGIx1E,EAHJw1E,eACAC,EAEIz1E,EAFJy1E,WACG1wE,EACC/2B,OAAAg2B,GAAA,EAAAh2B,CAAAgyB,EAAA,uGACEs4C,EAAIo9B,eADNC,EAEqB7C,GAAkC,KAFvD8C,EAAA5nG,OAAAqoD,EAAA,EAAAroD,CAAA2nG,EAAA,GAEKlnF,EAFLmnF,EAAA,GAEKnnF,MAAS2wE,EAFdwW,EAAA,GAGE94D,ECnBD,SAA2B+4D,GAAgC,IACxDpnF,EAAUklF,eAAVllF,MAER,OADasS,kBAAQ,kBAAM+0E,aAAaD,EAAYpnF,IAAQ,CAACA,EAAOonF,IDiBvDE,CAAkBtnF,GACzBunF,EAAkBxB,GAAcY,GAChCa,EAAe7xE,sBACnB,SAAC8xE,GACKf,GACFA,EAAOe,GAETF,EAAgBpB,SAAS,CAAEt1E,OAAQ42E,KAErC,CAACf,EAAQa,EAAgBpB,WAErBuB,EAA6B/xE,sBACjC,SAAC+vE,GACC6B,EAAgBpB,SAAS,CAAET,iBAE7B,CAAC6B,EAAgBpB,WAEnBx3B,oBAAU,WACJ83B,GACFA,EAAcp4D,IAEf,CAACA,EAAMo4D,IAEV,IAAMvqF,EAAUyrF,eAChBr5B,aAAkB,GAAAnzE,OAAI+gB,EAAJ,eAAA3c,OAAAy0B,EAAA,EAAAz0B,CAAA,CAA4B8uC,OAAMsiD,MAAKz0E,WAAYoa,IACrE,IAAM2vE,EAAe3zE,kBAAQ,WAC3B,IAAMs1E,EAAaL,EAAgBn3G,MACnC,OAAOmP,OAAAy0B,EAAA,EAAAz0B,CAAA,GACDqoG,GAAc,GACdtxE,EAAM2vE,cAAgB,GAF5B,CAGEP,YAAakC,EAAWlC,aAAgBpvE,EAAM2vE,cAAgB3vE,EAAM2vE,aAAaP,YACjF70E,OAAQ+2E,EAAW/2E,QAAWyF,EAAM2vE,cAAgB3vE,EAAM2vE,aAAap1E,UAExE,CAACyF,EAAM2vE,aAAcsB,EAAgBn3G,QAExCu+E,oBAAU,WACJo4B,GACFA,EAAeQ,EAAgBn3G,MAAMs1G,cAEtC,CAACqB,EAAgBQ,EAAgBn3G,MAAMs1G,cAM1C/2B,oBAAU,WAENs3B,EAAaR,YAAc8B,EAAgBn3G,MAAMq1G,WACjDmB,GACa,WAAbD,GACa,kBAAbA,GAEAC,EAAOW,EAAgBn3G,MAAMq1G,WAG7BQ,EAAa/kC,WAAaqmC,EAAgBn3G,MAAM8wE,UAChD2lC,GACa,WAAbF,GACa,kBAAbA,GAEAE,EAAWU,EAAgBn3G,MAAM8wE,WAElC,CAACqmC,EAAgBn3G,MAAMq1G,UAAW8B,EAAgBn3G,MAAM8wE,WAE3D,IAAM2mC,EAAelyE,sBACnB,SAAC8vE,GACKmB,GACFA,EAAOnB,GAET8B,EAAgBpB,SAAS,CAAEV,eAE7B,CAACmB,EAAQW,EAAgBpB,WAGrB2B,EAAmBnyE,sBACvB,SAACurC,GACK2lC,GACFA,EAAW3lC,GAEbqmC,EAAgBpB,SAAS,CAAEjlC,cAE7B,CAAC2lC,EAAYU,EAAgBpB,WAEzBnF,EAAoBlzB,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEgwD,GAAG/kE,UAAUwoE,WAC/D,OACEjxD,EAAA1P,EAAA2P,cAAA,OAAKw9D,IAAKA,EAAKn8D,UAAU,uBACvBtB,EAAA1P,EAAA2P,cAACI,EAAA,GAADh0B,OAAA8F,OAAA,GACMixB,EADN,CAEEvQ,aAAci7E,EACdiF,aAAcA,EACd53D,KAAMA,EACN42D,WAAYp7B,EACZ68B,OAAQc,EACRO,qBAAsBL,EACtBd,OAAQiB,EACRhB,WAAYiB,EACZhB,UAAWA,EACXH,SAAUA,EACVK,WAAYA,OEnHPgB,GAAuD,SAAA1xE,GAClE,OACEpD,EAAA1P,EAAA2P,cAACI,EAAA,GAAqB00E,SAAtB,KACE/0E,EAAA1P,EAAA2P,cAAC+0E,GAAsB5xE,cCHhB6xE,GAAwB,SAACjsF,GACpC,OAAO4xD,YAAiB,SAAAp9C,GAAC,OAAI0nD,KAAc7wB,MAAM72B,EAAGxU,MAEzCksF,GAAmB,WAC9B,IAAMlsF,EAAUyrF,eAChB,OAAOQ,GAAsBjsF,sBCJxB,SAASmsF,GAA0C3xB,GAKxD,OADc4xB,aAAa,SAAA53E,GAAC,OAAIA,EAAEgmD,KAQ7B,IAAM6xB,GAAiB,WAAM,IAAAC,EACjBC,aAAc,UAAxBtgF,EAD2B5oB,OAAAqoD,EAAA,EAAAroD,CAAAipG,EAAA,MAElC,OAAOrgF,EAASA,EAAOA,OAAS,IAGrBugF,GAA4B,WAAM,IAAAC,EAC5BF,aAAc,UAAxBtgF,EADsC5oB,OAAAqoD,EAAA,EAAAroD,CAAAopG,EAAA,MAE7C,OAAOxgF,EAASA,EAAOA,YAAS14B,GAGrBm5G,GAAiC,WAAM,IAAAC,EACjCJ,aAAc,UAAxBtgF,EAD2C5oB,OAAAqoD,EAAA,EAAAroD,CAAAspG,EAAA,MAElD,OAAO1gF,QAAkB14B,+BCpBdq5G,GAAoBhO,KAC/B,SAAC1qG,GAAD,OAA0BA,EAAMuqD,MAChC,SAACvqD,GAAD,OAA0BA,EAAMm3B,QAChC,SAAAgK,GAAA,IAAGy+B,EAAHz+B,EAAGy+B,YAAaz/B,EAAhBgB,EAAgBhB,SAAUoqB,EAA1BppB,EAA0BopB,KAA1B,OACEouD,KAAeC,eAAe,CAAEz4E,WAAU2zB,OAAQ8L,EAAarV,UACjE,SAACvqD,GAAD,OAA0B64G,aAAIxzE,IAAEnH,IAAIl+B,EAAMuqD,KAAM,SAAAxsB,GAAC,OAAIA,EAAE2wB,aAAe,MAAO,GAC7E,SAAC1uD,GAAD,OAA0BA,EAAMmgC,UAChC,SAACoqB,EAAYpzB,EAAqB28B,EAAqBuP,EAAaljC,GAClE,OAAO24E,YAAoBvuD,EAAMpzB,EAAQ28B,EAAQuP,EAAKljC,IARzBuqE,CAU/B,SAACpqE,EAAkBxU,GAAnB,OAAuCA,GAAW,WAAW,CAAEitF,gBAAiBC,OAGrEC,GAAiBvO,KAC5B,SAACpqE,EAAexU,GAAhB,OAAoCuZ,IAAE7sB,OAAO8nB,EAAEnJ,SAC/C,SAAAA,GAAM,OAAIA,GAFkBuzE,CAG5B,SAACrlE,EAAGvZ,GAAJ,qBAAA/gB,OAAuC+gB,KAEnCotF,GAAyBC,aAC7B,SAAC74E,GAAD,OAAmBA,EAAEiqB,MACrB,SAACjqB,GAAD,OAAmBA,EAAEvI,QACrB,SAACwyB,EAAMxyB,GACL,YAAe14B,IAAX04B,EACK,GAGUwyB,EACfllB,IAAE5I,OACA8tB,EACA,SAAC7tB,EAAeqB,GACd,IAAMkhC,EAAYm6C,aAAkBrhF,EAAQgG,GAC5C,YAAkB1+B,IAAd4/D,EACKviC,EAEF2I,IAAEimB,KAAF,GAAAvgD,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAWutB,GAAX,CAAgBuiC,KAAYo6C,QAErC,IAEF,KAKKC,GAAoB5O,KAC/B,SAACpqE,EAAexU,GAAhB,OAAqCwU,EAAEvI,OAASuI,EAAEvI,OAAOA,YAAS14B,GAClE,SAACihC,GAAD,OAAoBA,EAAEvI,OAASuI,EAAEvI,OAAO8c,sBAAmBx1C,GAC3D65G,GACA,SAACnhF,EAAQ8c,EAAkB0kE,GACzB,IAAIC,EAAyB,GAW7B,OAVIzhF,IACFyhF,EAAY,GAAAzuG,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAOqqG,GAAP,CAAqBzhF,KAE/B8c,IACF2kE,EAAY,GAAAzuG,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAOqqG,GAAP,CAAqB3kE,KAE/B0kE,GAAcA,EAAWt2E,OAAS,IACpCu2E,EAAY,GAAAzuG,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAOqqG,GAAPrqG,OAAA60B,EAAA,EAAA70B,CAAwBoqG,KAG/Bl0E,IAAEimB,KAAKkuD,IAhBe9O,CAkB/B,SAACpqE,EAAGxU,GAAJ,SAAA/gB,OAA2B+gB,EAA3B,uBCtDI2tF,GAAoB/O,KACxB,SAACpqE,EAAexU,GAAhB,OAAoCwU,EAAEH,UACtC,SAACG,GAAD,OAAmBA,EAAEk+B,WACrB,SAACl+B,GAAD,OAAmBA,EAAEwzB,QACrB,SAAC3zB,EAAUq+B,EAAWoB,GAAtB,MAAuC,CAAEz/B,WAAUq+B,YAAWoB,gBAJtC8qC,CAKxB,SAACpqE,EAAexU,GAAhB,2BAAA/gB,OAAyD+gB,KAErD4tF,GAAyB,SAACviF,EAAsBovC,GACpD,IAAMz6C,EAAUyrF,eACRvtD,EAAU2vD,aAAqB,SAAAr5E,GAAC,MAAK,CAC3C0pB,MAAO1pB,EAAE0pB,SADHA,MAGFsO,EAAeqhD,aAAqB,SAAAr5E,GAAC,OAAIA,EAAEk+B,YAAcvqD,KAAUgyE,QACnEztB,EAAQw5B,YAAYhU,KAAQyyB,cAC5BlmD,EAAO2tD,aAAa,SAAA53E,GAAC,OAAIs5E,KAAYC,UAAUv5E,EAAGxU,KAPgCguF,EAQ3C5B,aAAa,SAAA53E,GAAC,OAAIm5E,GAAkBn5E,EAAGxU,KAA5EqU,EARgF25E,EAQhF35E,SAAUq+B,EARsEs7C,EAQtEt7C,UAAWoB,EAR2Dk6C,EAQ3Dl6C,YACvB3X,EAAQiwD,aAAa,SAAA53E,GAAC,OAAIA,EAAEklD,YAAcllD,EAAEklD,WAAWv9B,QA+BvDpoB,EAAgC,WAAbM,EACnB45E,EAAsB9xD,GAA6B,kBAApBA,EAAMloB,KAAKC,KAC1Cg6E,EAAqB/xD,GAA6B,iBAApBA,EAAMloB,KAAKC,KACzCi6E,EAAqBhyD,GAA6B,iBAApBA,EAAMloB,KAAKC,KACzCk6E,EAAuBjyD,GAA6B,mBAApBA,EAAMloB,KAAKC,KAC3Cm6E,EAAsBlyD,GAA6B,kBAApBA,EAAMloB,KAAKC,KAC1Co6E,EAAuBnyD,GAA6B,mBAApBA,EAAMloB,KAAKC,KAC3Cq6E,EAAoBpyD,GAA6B,gBAApBA,EAAMloB,KAAKC,KACxCs6E,EAAoBryD,GAA6B,gBAApBA,EAAMloB,KAAKC,KACxCu6E,EAAmBtyD,GAA6B,eAApBA,EAAMloB,KAAKC,KAEzCsnD,EAAmB1nB,EAEvB,GAAI//B,GAAoBk6E,EAAqB,CAI3C,IAAMS,EAAiBn1E,IAAEo1E,MAAMtrG,OAAOqJ,OAAO+xC,GAAO,SAAAxsB,GAAC,OAAIA,EAAEkpB,SACvDuzD,IAEAlzB,EADEkzB,EAAexsD,SAAWl6C,KAAYy6C,IACrBz6C,KAAYy6C,IAEZz6C,KAAY06C,MAKrC,GAAI3uB,GAAoBm6E,EAAoB,CAI1C,IAAMQ,EAAiBn1E,IAAEo1E,MAAMtrG,OAAOqJ,OAAO+xC,GAAO,SAAAxsB,GAAC,OAAIA,EAAEkpB,SACvDuzD,IAEAlzB,EADEkzB,EAAexsD,SAAWl6C,KAAYy6C,IACrBz6C,KAAY06C,KAEZ16C,KAAYy6C,KAKrC,GAAI1uB,GAAoBo6E,EAAoB,CAG1C,IAAMS,EAAWvrG,OAAOqJ,OAAO+xC,GAAM1/B,KAAK,SAAAkT,GAAC,OAAIA,EAAElqB,YAAcA,IAAU6iC,SACrEgkE,IAEApzB,EADEozB,EAAS1sD,SAAWl6C,KAAYy6C,IACfz6C,KAAYy6C,IAEZz6C,KAAY06C,MAKrC,GAAI3uB,GAAoBq6E,EAAsB,CAI5C,IAAMM,EAAiBn1E,IAAEo1E,MAAMtrG,OAAOqJ,OAAO+xC,GAAO,SAAAxsB,GAAC,OAAIA,EAAEkpB,SACvDuzD,IAEAlzB,EADEkzB,EAAexsD,SAAWl6C,KAAYy6C,IACrBz6C,KAAYy6C,IAEZz6C,KAAY06C,MAKrC,GAAI3uB,GAAoBs6E,EAAqB,CAI3C,IAAMK,EAAiBn1E,IAAEo1E,MAAMtrG,OAAOqJ,OAAO+xC,GAAO,SAAAxsB,GAAC,OAAIA,EAAEkpB,SACvDuzD,IAEAlzB,EADEkzB,EAAexsD,SAAWl6C,KAAYy6C,IACrBz6C,KAAYy6C,IAEZz6C,KAAY06C,MAKrC,GAAI3uB,GAAoBu6E,EAAsB,CAI5C,IAAMI,EAAiBn1E,IAAEo1E,MAAMtrG,OAAOqJ,OAAO+xC,GAAO,SAAAxsB,GAAC,OAAIA,EAAEkpB,SACvDuzD,IAEAlzB,EADEkzB,EAAexsD,SAAWl6C,KAAYy6C,IACrBz6C,KAAY06C,KAEZ16C,KAAYy6C,KAKrC,GAAI1uB,GAAoBw6E,EAAmB,CAGzC,IAAMG,EAAiBn1E,IAAEo1E,MAAMtrG,OAAOqJ,OAAO+xC,GAAO,SAAAxsB,GAAC,OAAIA,EAAEkpB,SACvDuzD,IAEAlzB,EADEkzB,EAAexsD,SAAWl6C,KAAYy6C,IACrBz6C,KAAY06C,KAEZ16C,KAAYy6C,KAKrC,GAAI1uB,GAAoBy6E,EAAmB,CAGzC,IAAME,EAAiBn1E,IAAEo1E,MAAMtrG,OAAOqJ,OAAO+xC,GAAO,SAAAxsB,GAAC,OAAIA,EAAEkpB,SACvDuzD,IAEAlzB,EADEkzB,EAAexsD,SAAWl6C,KAAYy6C,IACrBz6C,KAAYy6C,IAEZz6C,KAAY06C,MAKrC,GAAI3uB,GAAoB06E,EAAkB,CAGxC,IAAMC,EAAiBn1E,IAAEo1E,MAAMtrG,OAAOqJ,OAAO+xC,GAAO,SAAAxsB,GAAC,OAAIA,EAAEkpB,SACvDuzD,IAEAlzB,EADEkzB,EAAexsD,SAAWl6C,KAAYy6C,IACrBz6C,KAAYy6C,IAEZz6C,KAAY06C,MAKrC,IAAMmsD,EAAiBjC,GAAkB,CACvCnuD,OACApzB,OAAQA,EACRqnC,YACAoB,YAAa0nB,EACbnnD,aAEEy6E,EAAa,EAEjB,QAAiBv7G,IAAb8gC,GAAuC,WAAbA,GAAyBqtD,aAAiBrtD,GAAW,CACjF,IAAM06E,EAAkBrtB,aAAiBrtD,GACzC,GAAI06E,GAAmBA,EAAgBnkD,QAAQokD,mBAAoB,CAEjE,IAAMC,EAAoBF,EAAgBnkD,QAAQokD,mBAAmBl7C,GAEjEm7C,GAAqB5rG,OAAOqJ,OAAO+xC,GAAMtnB,OAAS,GAAK9L,EAAO8L,OAAS,IAEzE23E,EAAaG,EAAkBxwD,EAAMpzB,EAAQmhC,EAActO,GAAgB,EAAGwO,KAKpF,QAAiBn5D,IAAb8gC,GAAuC,WAAbA,GAAyB8nB,GAASA,EAAMyO,SAAWzO,EAAMyO,QAAQokD,mBAAoB,CACjH,IAAME,EAAcz0C,EAAQzyD,KAAYy6C,IAAMz6C,KAAY06C,KACpDqsD,EAAkBrtB,aAAiBvlC,EAAMloB,KAAKC,MACpD,GAAI66E,GAAmBA,EAAgBnkD,QAAQokD,mBAAoB,CACjE,IAAMC,EAAoBF,EAAgBnkD,QAAQokD,mBAAmBE,GAEjED,GAAqB5rG,OAAOqJ,OAAO+xC,GAAMtnB,OAAS,GAAK9L,EAAO8L,OAAS,IACzE23E,EAAaG,EAAkBxwD,EAAMpzB,EAAQmhC,EAActO,GAAgB,EAAGwO,KAKpF,QAAuBn5D,IAAnBs7G,EACF,MAAO,CACL5mE,IAAK,EACLD,IAAK,EACLiwB,IAAK,EACLC,cAAe,EACfX,IAAK,EACLu3C,WAAY,GAxNwE,IA2NhF7mE,EAAmC4mE,EAAnC5mE,IAAKD,EAA8B6mE,EAA9B7mE,IAAKiwB,EAAyB42C,EAAzB52C,IAAQk3C,EA3N8D9rG,OAAAg2B,GAAA,EAAAh2B,CA2N7CwrG,EA3N6C,qBA4NxF,OAAOxrG,OAAAy0B,EAAA,EAAAz0B,CAAA,GACF8rG,EADL,CAEEl3C,MACAjwB,MACAC,MACA6mE,gBAISM,GAAgB,SAAC30C,GAC5B,IAAMz6C,EAAUyrF,eACV72C,EAAey6C,aAAkBC,MACjCjkF,EAAS+gF,aAAa,SAAC53E,GAAD,OAAmB24E,GAAe34E,EAAGxU,KAC3DuvF,EAAqBh2E,IAAEimB,KAAKn0B,EAAO+G,IAAI,SAAAkY,GAAC,OAAIA,EAAE/C,UAC9CioE,EAAqBC,aAAeF,EAAoB36C,GALoC86C,EAMxC9B,GAAuBviF,EAAQovC,GACzF,MAAO,CAAExyB,IAPyFynE,EAM1FznE,IACMD,IAPoF0nE,EAMrF1nE,IACMiwB,IAP+Ey3C,EAMhFz3C,IACMC,cAP0Ew3C,EAM3Ex3C,cACgBs3C,qBAAoBj4C,IAPuCm4C,EAM5Dn4C,IAC0Bu3C,WAPkCY,EAMvDZ,aCrOtC,SAASa,KACd,IAAMljE,EAAMmjE,aAAc,sBAEpBj1B,EAAck1B,eACd5jF,EAASogF,KACPj5B,EAAeN,cAAfM,WACFpzD,EAAUoiF,aAAc,WACxBziF,EAAWssF,GAAsBjsF,GACjCy+B,EAAO2tD,aAAa,SAAC53E,GAAD,OAAmBA,EAAEiqB,MAAQ,KAE/CwZ,EAAQm3C,KAARn3C,IAVwB63C,EAaaC,eAbbC,EAAA3sG,OAAAqoD,EAAA,EAAAroD,CAAAysG,EAAA,GAAAG,EAAAD,EAAA,GAavBE,EAbuBD,EAavBC,WAAYC,EAbWF,EAaXE,SAAY1hC,EAbDuhC,EAAA,GAc1BI,EAAa32E,sBAAY,WAC7B,OAAOg1C,EAASlyC,KAAQ47C,MAAM,CAAEjgF,QAAS,CAAEmyG,SAAS,IAAU,CAAEA,SAAS,MACxE,CAAC57B,IACEoK,EAAYp/C,sBAChB,SAACk9B,EAAepY,GACd,OAAOkwB,EAASlyC,KAAQs8C,UAAU,CAAEliB,QAAOpY,SAAQrmD,QAAS,CAAEmyG,SAAS,IAAU,CAAEA,SAAS,MAE9F,CAAC57B,IAEG2J,EAAY3+C,sBAChB,SAACxN,EAAsBqwD,EAA+CpkF,GACpE,OAAOu2E,EACLlyC,KAAQ67C,UACN,CAAEnsD,SAAQ/zB,QAAS,CAAEokF,sCAAqC38D,aAC1DznB,GAAW,CAAEmyG,SAAS,MAI5B,CAAC57B,EAAU9uD,IAUPm1D,EAAyBr7C,sBAC7B,SAACxN,EAAqBokF,GACpB,OAAO5hC,EAASlyC,KAAQu4C,uBAARzxE,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAoCgtG,EAApC,CAA+CpkF,SAAQ/zB,QAAS,CAAEmyG,SAAS,GAAQ1qF,gBAErG,CAAC8uD,EAAU9uD,IAEPo5D,EAAet/C,sBACnB,SAACk9B,EAAe3O,EAAsB9vD,GACpC,OAAOu2E,EAASlyC,KAAQw8C,aAAa,CAAEpiB,QAAO3O,SAAQ9vD,WAAW,CAAEmyG,SAAS,MAE9E,CAAC57B,IAEGmK,EAAgBn/C,sBACpB,SAACk9B,EAAexY,GACd,OAAOswB,EAASlyC,KAAQq8C,cAAc,CAAEjiB,QAAOxY,cAAc,CAAEksD,SAAS,MAE1E,CAAC57B,IAEGiK,EAAgBj/C,sBACpB,SAACk9B,EAAe/P,GACd,OAAO6nB,EAASlyC,KAAQm8C,cAAc,CAAE/hB,QAAO/P,cAAc,CAAEyjD,SAAS,MAE1E,CAAC57B,IAEGkK,EAAiBl/C,sBACrB,SAACk9B,EAAejuB,GACd,OAAO+lC,EAASlyC,KAAQo8C,eAAe,CAAEhiB,QAAOjuB,YAAY,CAAE2hE,SAAS,MAEzE,CAAC57B,IAEG6hC,EAAa72E,sBACjB,SAAC88B,GACC25C,EAAW,CAAE91B,QAAS7jB,KAExB,CAAC25C,IAEGp3B,EAAiBr/C,sBACrB,SAACuuB,GACC,OAAOymB,EAASlyC,KAAQu8C,eAAe,CAAE9wB,UAAU,CAAEqiD,SAAS,MAEhE,CAAC57B,IAEG8hC,EAAkBn6E,kBACtB,kBAAM,SAACpC,EAA4B97B,GAEjC,OADAu0C,EAAI,iBAAkBzY,GACfk8E,EAAW7sG,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAK2wB,GAAS97B,KAElC,CAACg4G,EAAYzjE,IAGTusC,EAAcv/C,sBAClB,SACE8hD,EACArjF,GACG,IAAAm9B,EACsCn9B,GAAW,CAClD8vD,YAAQz0D,EACR2qF,iBAAa3qF,EACb6mF,aAAS7mF,GAHHy0D,EADL3yB,EACK2yB,OAAQk2B,EADb7oD,EACa6oD,YAAa9D,EAD1B/kD,EAC0B+kD,QAMzBO,GAAmC,WAApBY,EAAMtnD,KAAKC,KAC5Bu6C,EACElyC,KAAQy8C,YACN,CAAEhxB,SAAQk2B,cAAa9D,UAAS/lD,SAAUknD,EAAOtvD,OAAQ0uD,EAAah7D,YACtE,CAAE0qF,SAAS,KAIf79D,QAAQxqB,MAAM,0BAEhBysD,EAAS,CAAEr4E,KAAM2+E,mBAAQx4C,KAAQojD,UAAWjxC,QAAS,CAAEwP,WAAO3qD,EAAWi9G,qBAAqB,EAAMv4C,IAAKA,KACzGwW,EAAS,CAAEr4E,KAAM2+E,mBAAQx4C,KAAQikD,cAAe9xC,QAAS,CAAEwP,WAAO3qD,EAAWi9G,qBAAqB,MAEpG,CAAC71B,EAAalM,EAAU9uD,IAEpB8wF,EAAwBh3E,sBAC5B,SAAC8hD,EAA0BrjF,GACrB+zB,GACFskF,EAAgB,CAAEG,iBAAkBn1B,GAASrjF,IAGjD,CAACq4G,EAAiBtkF,IAEd0kF,EAAYl3E,sBAChB,SAACm3E,EAAwB14G,GACvB,IAAMkmF,EAAoB7kD,IAAE5I,OAC1B8tB,EACA,SAAC7tB,EAAWC,EAAkB7R,GAA9B,OAAA3b,OAAAy0B,EAAA,EAAAz0B,CAAA,GACKutB,EADLvtB,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEGwtB,EAAIvP,IAAMtC,EAFb3b,OAAAy0B,EAAA,EAAAz0B,CAAA,GAEwBwtB,EAFxB,CAE6BqxB,OAAQrxB,EAAIqxB,SAAWl6C,KAAYy6C,IAAMz6C,KAAY06C,KAAO16C,KAAYy6C,SAErG,IAEF8tD,EAAgB,CAAEvoD,OAAQ4oD,EAAWnyD,KAAM2/B,GAAelmF,IAE5D,CAACq4G,EAAiB9xD,IAEd85B,EAAkB9+C,sBACtB,SAACpF,GACCo6C,EAAS,CAAEr4E,KAAM,kBAAmBs4C,QAAS,CAAEra,eAEjD,CAACo6C,IAEGgK,EAAkBh/C,sBAAY,SAACxF,GAAD,OAAwBw6C,EAASlyC,KAAQk8C,gBAAgB,CAAExkD,WAAU,CAACw6C,IAEpGoiC,EAAep3E,sBACnB,SAACxN,EAAyB4J,EAA0B39B,EAAuB44G,GACzE,IAAMC,EAAWx3E,IAAEza,KAAK2/B,GAAMtnB,OAAS,EAAIsnB,EAAOuyD,aAAY,GAAI/kF,GAElEmnD,EAAW7zD,MAAMohB,qBAAqB3gB,EAAS,CAAC6V,EAAY5J,SAE5D,IAAMglF,EAAc,CAClB/yD,WAAO3qD,EACP04B,OAAQ4J,EACR4oB,KAAOqyD,EAgBH,GAfAv3E,IAAE5I,OACFogF,EACA,SAACngF,EAAW0gC,EAAkB17D,GAC5B,OAAOyN,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFutB,EADLvtB,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEGzN,EAFHyN,OAAAy0B,EAAA,EAAAz0B,CAAA,GAGOiuD,EAHP,CAII4/C,WAAYr7E,EAAY5J,OACxBsb,OAAQ1R,EAAY5J,OACpBub,iBAAkB3R,EAAY5J,YAIpC,KAINskF,EAAgBU,EAAa/4G,IAE/B,CAAC8nB,EAASy+B,EAAM8xD,EAAiBn9B,IAE7B+9B,EAA+B13E,sBACnC,SAA6B+gD,EAAUxmD,EAAsB97B,GAA7D,OACEi4G,EAAS31B,EAAOxmD,EAAO97B,IACzB,CAACi4G,IAEGzwB,EAAcjmD,sBAClB,SAACiP,EAAkBxwC,GACjB,OAAOu2E,EAASlyC,KAAQmjD,YAAY,CAAEh3C,YAAY,CAAE2hE,SAAS,MAE/D,CAAC57B,IAEGsN,EAActiD,sBAAY,kBAAMg1C,EAAS,CAAEr4E,KAAM2+E,mBAAQx4C,KAAQw/C,aAAcrtC,QAAS,MAAO,CAAC+/B,IAChGkR,EAAWlmD,sBACf,SAACykB,EAA2BsyD,EAA8B3wB,GAA1D,OACEpR,EAAS,CAAEr4E,KAAM2+E,mBAAQx4C,KAAQojD,UAAWjxC,QAAS,CAAEwP,QAAOsyD,sBAAqB3wB,oBACrF,CAACpR,IAEG+R,EAAe/mD,sBACnB,SAACykB,GAAD,OAAoBuwB,EAAS,CAAEr4E,KAAM2+E,mBAAQx4C,KAAQikD,cAAe9xC,QAAS,CAAEwP,YAC/E,CAACuwB,IAEGgS,EAAiBhnD,sBACrB,SAACmgD,GAAD,OAAiCnL,EAASlyC,KAAQkkD,eAAe,CAAE7G,eAAe,CAAEywB,SAAS,MAC7F,CAAC57B,IAeH,MAAO,CACLqG,yBACAlzC,YAdkBnI,sBAAY,SAACza,GAAD,OAAiByvD,EAAS,CAAEr4E,KAAM2+E,mBAAQx4C,KAAQqF,aAAc8M,QAAS1vB,KAAQ,CAC/GyvD,IAcAgS,iBACAC,gBAZsBjnD,sBAAY,SAACokE,GACnCpvB,EAASlyC,KAAQmkD,gBAAgB,CAAEpuB,aAAcurC,MAChD,CAACpvB,IAWFkR,WACAa,eACAzE,cACA2D,cACAjH,kBACAK,iBACAs3B,aACA73B,kBACAH,YACAM,gBACAC,iBACAC,gBACAC,YACAG,cACAm4B,cACAR,YACAE,eACAP,aACAG,wBACA13B,eACA4H,SA7BelnD,sBAAY,SAAC4xB,GAC5BojB,EAASlyC,KAAQokD,SAAS,CAAEt1B,YAC3B,CAACojB,KCjPC,IAAM2iC,GAAkBxS,KAC7B,SAACpqE,EAAcuU,GAAf,OAA6CvU,EAAEsqC,QAAQ+xB,gBACvD,SAACr8D,EAAcuU,GAAf,OAA6CA,GAC7C,SAAC8nD,EAAgB5kE,GACf,YAAe14B,IAAX04B,MAGC4kE,KAGEA,EAAez+D,IAAI,SAAAoC,GAAC,OAAIA,EAAEkpB,sBAAqB3+B,KAAK,SAAAyV,GAAC,OAAIA,IAAMvI,EAAOyxB,wBAVlDkhD,CAY7B,SAACpqE,EAAGuU,GAAJ,OAAyBA,GAAoB,iCCdlCsoE,GAAW,CACtB93D,QAAS+3D,EAAQ,MACjBtvF,MAAOsvF,EAAQ,MACf3hB,QAAS2hB,EAAQ,OAGNC,GAAY,WAAM,IAAAC,EACaC,KAAS,CACjDC,IAAKL,GAAS93D,UAFao4D,EAAAtuG,OAAAqoD,EAAA,EAAAroD,CAAAmuG,EAAA,GACtBI,EADsBD,EAAA,GACNE,EADMF,EAAA,GAAAG,EAISL,KAAS,CAC7CC,IAAKL,GAASrvF,QALa+vF,EAAA1uG,OAAAqoD,EAAA,EAAAroD,CAAAyuG,EAAA,GAO7B,MAAO,CACLF,eACAC,kBACAG,WAV2BD,EAAA,GAW3BE,cAX2BF,EAAA,KCyDlBG,GAAgB,WAC3B,IAAMp+C,EAAc+5C,aAAqB,SAAAr5E,GAAC,OAAIA,EAAEwzB,SAC1C0K,EAAYm7C,aAAqB,SAAAr5E,GAAC,OAAIA,EAAEk+B,YACxClG,EAAeqhD,aAAqB,SAAAr5E,GAAC,OAAIA,EAAEk+B,YAAcvqD,KAAUgyE,QACnE9lD,EAAWw5E,aAAqB,SAAAr5E,GAAC,OAAIA,EAAEH,WACvC8nB,EAAQ0xD,aAAqB,SAAAr5E,GAAC,OAAIA,EAAEklD,YAAcllD,EAAEklD,WAAWv9B,QAC/DsC,EAAOovD,aAAqB,SAAAr5E,GAAC,OAAIA,EAAEiqB,OACnC0/B,EAAwB,WAAb9pD,EACX89E,EACJh0B,GAAYhiC,IAA8B,kBAApBA,EAAMloB,KAAKC,MAAgD,iBAApBioB,EAAMloB,KAAKC,MACpE+5E,EAAsB9vB,GAAYhiC,GAA6B,kBAApBA,EAAMloB,KAAKC,KACtDg6E,EAAqB/vB,GAAYhiC,GAA6B,iBAApBA,EAAMloB,KAAKC,KACrDi6E,EAAqBhwB,GAAYhiC,GAA6B,iBAApBA,EAAMloB,KAAKC,KACrDk6E,EAAuBjyD,GAA6B,mBAApBA,EAAMloB,KAAKC,KAC3Cm6E,EAAsBlyD,GAA6B,kBAApBA,EAAMloB,KAAKC,KAC1Co6E,EAAuBnyD,GAA6B,mBAApBA,EAAMloB,KAAKC,KAC3Cq6E,EAAoBpyD,GAA6B,gBAApBA,EAAMloB,KAAKC,KACxCs6E,EAAoBryD,GAA6B,gBAApBA,EAAMloB,KAAKC,KACxCu6E,EAAmBtyD,GAA6B,eAApBA,EAAMloB,KAAKC,KAEvCk+E,EAA0Bh8E,kBAAQ,WACtC,GAAI+7E,GAA2B1zD,EAC7B,OAAOllB,IAAE+mD,MAAMj9E,OAAOqJ,OAAO+xC,GAAO,SAAAxsB,GAAC,OAAIA,EAAEgpB,YAAchpB,EAAEgpB,WAAWzlD,QAGvE,CAAC28G,EAAyB1zD,IAEvBiwD,EAAiBt4E,kBAAQ,WAC7B,IACG63E,GACCC,GACAE,GACAC,GACAC,GACAC,GACAC,GACAC,IACFhwD,EAEA,OAAOllB,IAAEo1E,MAAMtrG,OAAOqJ,OAAO+xC,GAAO,SAAAxsB,GAAC,OAAIA,EAAEkpB,UAG5C,CACD8yD,EACAC,EACAE,EACAC,EACAC,EACAC,EACAC,EACAC,EACAhwD,IAGImwD,EAAWx4E,kBAAQ,WACvB,GAAI+3E,GAAsB1vD,EACxB,OAAOllB,IAAExa,KAAK1b,OAAOqJ,OAAO+xC,GAAO,SAAAxsB,GAAC,OAAIA,EAAElqB,YAAcA,IAAU6iC,UAGnE,CAACujE,EAAoB1vD,IA3DS4zD,EA4DmBxE,aAAqB,SAAAr5E,GAAC,MAAK,CAC7E0pB,MAAO1pB,EAAE0pB,MACTogC,UAAW9pD,EAAE8pD,UACb51C,SAAUnP,IAAE0nB,SAASzsB,EAAEkU,UAAYlU,EAAEkU,SAAW,EAChDkxC,YAAaplD,EAAEolD,eAJTlxC,EA5DyB2pE,EA4DzB3pE,SAAUkxC,EA5Dey4B,EA4Dfz4B,YAAa17B,EA5DEm0D,EA4DFn0D,MAAOogC,EA5DL+zB,EA4DK/zB,UAMhC7jB,EAAQrkC,kBAAQ,WACpB,OAAQ+nD,EAEJg0B,EACAr+C,IAAgB9rD,KAAYy6C,IAC5BwrD,EACAS,GAAkBA,EAAexsD,SAAWl6C,KAAYy6C,IACxDyrD,EACAQ,GAAkBA,EAAexsD,SAAWl6C,KAAY06C,KACxDyrD,EACAS,GAAYA,EAAS1sD,SAAWl6C,KAAYy6C,IAC5C2rD,EACAM,GAAkBA,EAAexsD,SAAWl6C,KAAYy6C,IACxD4rD,EACAK,GAAkBA,EAAexsD,SAAWl6C,KAAYy6C,IACxD6rD,EACAI,GAAkBA,EAAexsD,SAAWl6C,KAAYy6C,IACxD8rD,EACAG,GAAkBA,EAAexsD,SAAWl6C,KAAY06C,KACxD8rD,EACAE,GAAkBA,EAAexsD,SAAWl6C,KAAYy6C,IACxDgsD,EACAC,GAAkBA,EAAexsD,SAAWl6C,KAAYy6C,IACxDlpB,IAAEgB,MAAMkkB,EAAM,SAAAxsB,GAAC,OAAIA,EAAEiwB,SAAWl6C,KAAYy6C,OAAQlpB,IAAEm+C,KAAKj5B,EAAM,SAAAxsB,GAAC,OAAIA,EAAEiwB,SAAWl6C,KAAYy6C,MArB/FqR,IAAgB9rD,KAAYy6C,KAsB/B,CACD07B,EACArqB,EACAs+C,EACA1D,EACAE,EACAnwD,EACAwvD,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,IAvG+B+D,EA0GoBlD,GAAc30C,GAA3DzyB,EA1GyBsqE,EA0GzBtqE,IAAKC,EA1GoBqqE,EA0GpBrqE,IAAKiwB,EA1Geo6C,EA0Gfp6C,cAAeX,EA1GA+6C,EA0GA/6C,IAAKu3C,EA1GLwD,EA0GKxD,WAEtC,OAAO14E,kBAAQ,WACb,IAAMm8E,EAxKqB,SAC7B/lD,EACAkG,EACAoB,EACA9rB,EACAC,EACAS,EACAwvB,EACAX,EACAi7C,EACAl0B,EACAjqD,EACAo+E,EACAh4C,GAEA,IAAI8lB,EAAiC,EACjCmyB,OAA+Cn/G,EAE/Cm/D,IAAcvqD,KAAUw0F,YAC1Bpc,EAAajC,EACJ5rB,IAAcvqD,KAAUu0F,WACjCnc,EAAaiyB,EACJhmD,QAA+Bj5D,IAAfi/G,EAQrBE,EAPAj4C,QAAmBlnE,IAAVknE,GAET8lB,EADEkyB,IAAkBpqG,KAAc0qD,MACrBjhB,KAAKI,IAAIlK,EAAKwqE,GAEd1gE,KAAKI,IAAIlK,GAAMwqE,KAEZ,EACInqG,KAAc0qD,MAEd1qD,KAAcwxE,QAIlC0G,EADEkyB,IAAkBpqG,KAAcwxE,OACrB/nC,KAAKC,IAAI9J,EAAKuqE,GAEd1gE,KAAKC,IAAI9J,GAAMuqE,KAEZ,EACInqG,KAAcwxE,OAEdxxE,KAAc0qD,MAItCwtB,EADS/zB,OACIj5D,EAEAknE,EAAQzyB,EAAMC,EAG7B,IAAMoyB,EAAQkmB,GAAchnD,IAAE0nB,SAASs/B,GAAc73C,EAAW63C,EAAaroB,EAAgBX,EAAM,EACnG,MAAO,CACL8C,MAAOvoB,KAAKwb,IAAI+M,GAChBq4C,qBAiHqBC,CACnBnmD,EACAkG,EACAoB,EACA9rB,EACAC,EACAS,EACAwvB,EACAX,OACUhkE,IAAV2qD,EAAsBpM,KAAKwb,IAAIpP,GAASA,OAC1B3qD,IAAd+qF,EAA0BxsC,KAAKwb,IAAIgxB,GAAaA,EAChDjqD,OACgB9gC,IAAhBqmF,EAA4BvxE,KAAc0qD,MAAQ6mB,EAClDnf,GAGF,OAAOp3D,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAKkvG,EAAZ,CAA0B34B,cAAak1B,WAAYA,EAAapmE,EAAWwvB,EAAgBX,KAC1F,CACD/K,EACAsH,EACA9rB,EACAC,EACAS,EACAwvB,EACAX,EACArZ,EACAigC,EACAvE,EACA0E,EACA7jB,EACAhc,EACApqB,KCzKSu+E,GAAkB,WAAM,IAAA7hC,EACDC,oBAAS,GADRC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAC5B8hC,EAD4B5hC,EAAA,GACjB6hC,EADiB7hC,EAAA,GAAA8hC,EAGkCxB,KAA7DM,EAH2BkB,EAG3BlB,gBAAiBI,EAHUc,EAGVd,cAAeL,EAHLmB,EAGKnB,aAAcI,EAHnBe,EAGmBf,WAC9CgB,EAAkB9G,KAAlB8G,cACAj3B,EAAgB4zB,KAAhB5zB,YACA5xD,EAAkB6L,eAAlB7L,cACF8oF,EAAgBx5E,sBAAY,kBAAMq5E,GAAcD,IAAY,CAACA,IAE7DK,EAAgBz5E,sBACpB,SAAC0a,GACC2+D,GAAa,IACS,IAAlBE,GAA4C,iBAAlB7+D,EAAO6T,SAClC79B,GACE,WACC,IAAMgpF,EAAOtB,EAAgBsB,YAChB5/G,IAAT4/G,GACFA,EAAKtzC,MAAM,cAHd,GASHkc,MAC2B,IAAlBi3B,GAA4C,UAAlB7+D,EAAO6T,SACzC79B,GACE,WACC,IAAMgpF,EAAOlB,EAAckB,YACd5/G,IAAT4/G,GACFA,EAAKtzC,MAAM,cAHd,IAaP,CAACizC,EAAcjB,EAAiBI,EAAee,IAGjD,OAAO58E,kBAAQ,iBAAO,CAAEy8E,YAAWI,gBAAeC,gBAAeE,MAAO,CAAExB,eAAcI,gBAAiB,CACvGa,EACAI,EACAC,EACAtB,EACAI,KAISqB,GAAsB,SAAChoD,GAClC,IAAMioD,EAAkBjoD,EAAM1D,MAAQ0D,EAAM1D,KAAKxwB,OAAS,EAE1D,OAAOoC,IAAE8xB,EAAM1D,MACZ/yB,OAAO,SAAA3C,GACN,OAAIsH,IAAEhF,MAAMtC,EAAEsV,UAGV+rE,KACKrhF,EAAEsV,SAAUtV,EAAE2wB,eACZ3wB,EAAEsV,UAKdnV,IAAImhF,MACJv/E,SAGCw/E,GAAiC,SAACnoD,GACtC,IAAKA,EACH,MAAO,CAAC,EAAG,IAGb,IASMooD,EAAcpoD,EAAM1D,KAAKv1B,IAAI,SAAAH,GAAC,OAAIA,EAAE2wB,aAAe,IAH5CjyB,OAAO,SAACrJ,EAAGqmD,GAAJ,OANR,SAANpW,EAAOjwC,EAAWqmD,GACtB,OAAa,IAANA,EAAUrmD,EAAIiwC,EAAIoW,EAAGrmD,EAAIqmD,GAKJpW,CAAIjwC,EAAGqmD,KAK/B+lC,EAA0BroD,EAAM9X,SAAWkgE,EAE3CE,EAAiBtoD,EAAM1D,KAAKv1B,IAAI,SAAAH,GACpC,IACM2hF,GADQ3hF,EAAE2wB,aAAe,GACD6wD,EAC9B,OAAOpwG,OAAAy0B,EAAA,EAAAz0B,CAAA,GACF4uB,EADL,CAEE2wB,YAAagxD,EACbrgE,SAAUmgE,EAA0BE,MAIxC,MAAO,CAACF,EAAyBC,IAkC5B,IAAME,GAAuB,SAAC7rD,GACnC,IAAMqD,EAAQgkD,aAAkBxC,KAAexhD,OADemnC,EAEtBxhB,qBAFsByhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAEvDshB,EAFuDrhB,EAAA,GAEzCshB,EAFyCthB,EAAA,GAAAG,EAGhC5hB,qBAHgC6hB,EAAAxvF,OAAAqoD,EAAA,EAAAroD,CAAAuvF,EAAA,GAGvDxwB,EAHuDywB,EAAA,GAG9CmhB,EAH8CnhB,EAAA,GAAAohB,EAIkCtE,KAAxFnvB,EAJsDyzB,EAItDzzB,aAAcb,EAJwCs0B,EAIxCt0B,SAAUc,EAJ8BwzB,EAI9BxzB,eAAgBC,EAJcuzB,EAIdvzB,gBAA2BwzB,EAJbD,EAIGtzB,SAC3DzrF,EAAY08E,YAAiB,SAAA19E,GAAK,OAAIA,EAAMg+E,QAAQh9E,YACpD01D,EAAUgnB,YAAiB,SAAA19E,GAAK,OAAIA,EAAMg+E,QAAQtnB,UAClDosC,EAAYpsC,GAAWA,EAAQ2rC,SAAW3rC,EAAQ2rC,QAAQlB,MAC1D8e,EAAsBnd,GAAaA,IAAcxkE,KAAiBnlB,QAExEolE,oBAAU,WACR,IAAM8N,EAAal1B,EAAQA,EAAMsH,WAAQp/D,EACnC6gH,EAAS/oD,EAAQA,EAAM1Q,aAAUpnD,EACnC83D,SAA2B93D,IAAjBugH,GAA8B1xC,IAAYgyC,IAAW7zB,IACjEwzB,EAAgBxzB,GAChByzB,EAAWI,KAEZ,CAAC/oD,EAAOyoD,IAGX,IAAMr1D,EAAOroB,kBAAQ,WACnB,OAAIi1B,EACKgoD,GAAoBhoD,GAEtB,IACN,CAACA,IAEEknD,EAAeL,KACfmC,EAAkBziC,YAAiB,SAAAp9C,GAAC,OAAI48E,GAAgB58E,EAAG62B,EAAQA,EAAM7jB,iBAAmB,MAE5F8sE,EAAsBl+E,kBAAQ,WAClC,QAAIi1B,GAC2C,UAArCA,EAA4B+G,MAGrC,CAAC/G,IAEEkpD,EAAan+E,kBAAQ,WACzB,IAAImD,IAAEhF,MAAM82B,GAAZ,CAGA,IAAMonD,EAAgBpnD,EAAMyH,aAAey/C,EAAa34B,YAGxD,OA3EJ,SACEvuB,EACAn2D,EACAu9G,EACAngD,GAGA,IAAM6rB,EAAkC,cAAvB9yB,EAAM9iD,aAEjBisG,EAAgBnpD,EAAM1D,KAAKptB,MAAM,SAAAtI,GAAC,OAAIA,EAAElqB,YAAcA,IAAUijC,SACtE,GAAImzC,GAAYq2B,GAAiBnpD,GAASA,EAAM1D,MAAQ0D,EAAM1D,KAAKxwB,OAAS,EAAG,KAAAs9E,EAC3BjB,GAA+BnoD,GADJqpD,EAAArxG,OAAAqoD,EAAA,EAAAroD,CAAAoxG,EAAA,GACtEf,EADsEgB,EAAA,GAC7Cf,EAD6Ce,EAAA,GAG7E,OAAOrxG,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFgoD,EADL,CAEE3Q,UAAWxlD,EACX49D,YAAa2/C,EACbpgD,aAAcC,EACd/e,SAAUmgE,EACV/rD,KAAMgsD,IAIV,OAAOtwG,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFgoD,EADL,CAEE3Q,UAAWxlD,EACX49D,YAAa2/C,EACbpgD,aAAcC,IAgDPqiD,CAActxG,OAAAy0B,EAAA,EAAAz0B,CAAA,GAEdgoD,EAFa,CAGhBupD,eAAgBP,EAChB9rG,aACE8iD,EAAM9iD,cAAgBgxB,IAAEzI,SAASu6B,EAAM9iD,aAAc,YACjD+a,KAAkBuxF,SAClBxpD,EAAM9iD,cAAgBgxB,IAAEzI,SAASu6B,EAAM9iD,aAAc,YACrD+a,KAAkBwxF,SAClBzpD,EAAM9iD,cAAgB8iD,EAAM9iD,eAAiB+a,KAAkBg7B,KAC/Dh7B,KAAkB8oC,OAClBf,EAAM9iD,cAAgB8iD,EAAM9iD,eAAiB+a,KAAkB+6B,IAC/D/6B,KAAkB8oC,OAClBf,EAAM9iD,cAAgBgxB,IAAEzI,SAASu6B,EAAM9iD,aAAc,aACrD+a,KAAkB++B,UAClBgJ,EAAM9iD,cAAgBgxB,IAAEzI,SAASu6B,EAAM9iD,aAAc,UACrD+a,KAAkB0/B,OAClBqI,EAAM9iD,eAEd8iD,EAAM3Q,WAAaxlD,EACnBu9G,EACApnD,EAAMgH,gBAEP,CAAChH,IAEE0pD,EAAqBt7E,sBACzB,SAAC7jC,QACerC,IAAV83D,GAGJq1B,EAAgB9qF,IAElB,CAAC8qF,EAAiBr1B,IAGd2pD,EAAmBv7E,sBACvB,SAACykB,QACe3qD,IAAV83D,GAGU,OAAVnN,GACFyhC,EAASzhC,GAAO,IAGpB,CAACmN,IAGG4pD,EAAkBx7E,sBACtB,SAACykB,QACe3qD,IAAV83D,GAGU,OAAVnN,GACFsiC,EAAatiC,IAGjB,CAACmN,IAGG6pD,EAAoBz7E,sBACxB,SAAC5I,QACet9B,IAAV83D,GAGJo1B,EAAe5vD,IAEjB,CAACw6B,IAGKojB,EAAaqE,cAAbrE,SACFkX,EAASlsD,sBAAY,WACrB86E,IAEEJ,IACFI,EAAWK,gBAAiB,GAG1BL,EAAW5sD,MAAmC,IAA3B4sD,EAAW5sD,KAAKxwB,SACrCo9E,EAAW5sD,KAAK,GAAG/E,iBAAcrvD,GAEpB,YAAXy0D,QAAmCz0D,IAAXy0D,EAC1BymB,EAAS3pC,IAAaqwE,kBAAkBZ,IACpB,YAAXvsD,GACTymB,EAAS3pC,IAAaswE,cAAchhD,aAAoBmgD,KAEtDA,EAAW5hD,OACbohD,EAAgBQ,EAAW5hD,SAG9B,CAACtH,EAAOrD,EAAQqsD,EAAiB9B,EAAcr9G,EAAWu5E,IAEvDkS,EAAWlnD,sBACf,SAAC4xB,GACC6oD,EAAiB7oD,IAEnB,CAACA,IAGH,MAAO,CACLA,QACA5M,OACAuJ,SACA8rD,eACAO,kBACAC,sBACA3zB,WACAo0B,qBACAG,oBACAF,mBACAC,kBACAtvB,WChTS0vB,WAXiBzW,KAC5B,SAAC1qG,GAAD,OAAsBA,EAAMuxD,aAC5B,SAAC6vD,EAAmBrpF,GAApB,OAAuCA,GACvC,SAAC/3B,EAAO+3B,GAKN,OAJkB/3B,EAAM+3B,IAAW,CACjC44D,YAAY,EACZp/B,iBAAalyD,IANWqrG,CAU5B,SAACrlE,EAAGtN,GAAJ,OAAeA,IACkB,CACjCw5B,YAAam5C,KACX,SAAC1qG,GAAD,OAAsBA,EAAMuxD,aAC5B,SAAC6vD,EAAmBrpF,GAApB,OAAuCA,GACvC,SAAC/3B,EAAO+3B,GACN,IAAMspF,EAAYrhH,EAAM+3B,IAAW,CACjC44D,YAAY,EACZp/B,iBAAalyD,GAEf,OAAOgiH,EAAU9vD,YAAc8vD,EAAU9vD,iBAAclyD,GAR9CqrG,CAUX,SAACrlE,EAAGtN,GAAJ,OAAeA,IACjB44D,WAAY+Z,KACV,SAAC1qG,GAAD,OAAsBA,EAAMuxD,aAC5B,SAAC6vD,EAAmBrpF,GAApB,OAAuCA,GACvC,SAAC/3B,EAAO+3B,GAKN,OAJkB/3B,EAAM+3B,IAAW,CACjC44D,YAAY,EACZp/B,iBAAalyD,IAEEsxF,YART+Z,CAUV,SAACrlE,EAAGtN,GAAJ,OAAeA,MAEbupF,GAAiB,SACrBthH,EAGA+3B,EACAkyB,GAEA,IAAMs3D,EAAS9+B,GAAgBx4B,GAE/B,OADoBjqD,EAAM+3B,IAAW,IAClBwpF,IAAW,CAAE5wB,YAAY,EAAOhmC,aAAStrD,EAAW04B,SAAQkyB,eAGpEu3D,GAAkB,CAC7BC,oBAAqBxxB,0BACnB,SAACjwF,GAAD,OAAsBA,GACtB,SAACohH,EAAmBrpF,GAApB,OAAuCA,GACvC,SAAC/3B,EAAkB+3B,GACjB,IAAM2pF,EACJ1hH,EAAM2qD,SAAW3qD,EAAM2qD,QAAQ5yB,GAAUsN,IAAE7sB,OAAOxY,EAAM2qD,QAAQ5yB,IAAW,GAC7E,OAAOsN,IAAEnH,IAAIwjF,EAAe,SAAAtmC,GAAE,OAAIA,EAAGnxB,eAGzC03D,gBAAiBjX,KACf,SAAC1qG,GAAD,OAAsBA,EAAM2qD,SAC5B,SAACy2D,EAAmBrpF,GAApB,OAAuCA,GACvC,SAAC/3B,EAA0D+3B,GAEzD,OAD0C/3B,GAASA,EAAM+3B,GAAUsN,IAAE7sB,OAAOxY,EAAM+3B,IAAW,IAJhF2yE,CAOf,SAACrlE,EAAGtN,GAAJ,OAAeA,IACjB4yB,QAAS+/C,KACP,SAAC1qG,GAAD,OAAsBA,EAAM2qD,SAC5B,SAACy2D,EAAmBC,GAApB,OAA8EA,GAC9E,SAACrhH,EAAOqhH,GAAc,IACZp3D,EAAuBo3D,EAAvBp3D,WAAYlyB,EAAWspF,EAAXtpF,OACpB,OAAOupF,GAAethH,EAAO+3B,EAAQkyB,GAAYU,SAL5C+/C,CAOP,SAACrlE,EAADlE,GAAA,IAAMpJ,EAANoJ,EAAMpJ,OAAQkyB,EAAd9oB,EAAc8oB,WAAd,SAAAl/C,OAAkCgtB,EAAlC,KAAAhtB,OAA4C03E,GAAgBx4B,MAC9D0mC,WAAY+Z,KACV,SAAC1qG,GAAD,OAAsBA,EAAM2qD,SAC5B,SAACy2D,EAAmBC,GAApB,OAA8EA,GAC9E,SAACrhH,EAAOqhH,GAAc,IACZp3D,EAAuBo3D,EAAvBp3D,WAAYlyB,EAAWspF,EAAXtpF,OACpB,OAAOupF,GAAethH,EAAO+3B,EAAQkyB,GAAY0mC,YALzC+Z,CAOV,SAACrlE,EAADW,GAAA,IAAMjO,EAANiO,EAAMjO,OAAQkyB,EAAdjkB,EAAcikB,WAAd,SAAAl/C,OAAkCgtB,EAAlC,KAAAhtB,OAA4C03E,GAAgBx4B,MAC9D23D,YAAalX,KACX,SAAC1qG,GAAD,OAAsBA,EAAM2qD,SAC5B,SAAC3qD,EAAkB+3B,GAAnB,OAAsCA,GACtC,SACE8pF,EAGA9pF,GAEA,IAAM+pF,EAAeD,EAAS9pF,IAAW,GACzC,OAAOsN,IAAEm+C,KAAKs+B,EAAc,SAACznE,EAAGD,GAAJ,OAA2B,IAAjBC,EAAEs2C,cAV/B+Z,CAYX,SAACrlE,EAAGtN,GAAJ,OAAeA,KC7FNgqF,GAAiB,WAC5B,IAAM18B,EAAa6yB,aAAaS,KAAetzB,YACzCttD,EAASogF,KACT6J,EAAyBtkC,YAAiB,SAAA19E,GAAK,OAAImhH,GAAoBxwB,WAAW3wF,EAAO+3B,GAAU,MAGzG,MAAO,CACLkqF,SAAU58B,EACV68B,QAJyBxkC,YAAiB,SAAC19E,GAAD,OAAsBwhH,GAAgBI,YAAY5hH,EAAO+3B,GAAU,OACvEiqF,ICgG3B,SAASG,GAAT9qD,GAMS,IALtBh2B,EAKsBg2B,EALtBh2B,YAEU+gF,GAGY/qD,EAJtBgrD,2BAIsBhrD,EAHtB/xB,UACAm7D,EAEsBppC,EAFtBopC,SACA3gE,EACsBu3B,EADtBv3B,MACsB+8C,EACkBC,mBAAiB,IADnCC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GACfylC,EADevlC,EAAA,GACDwlC,EADCxlC,EAAA,GAAAuhB,EAEcxhB,mBAAiBh9C,GAAS,GAFxCy+D,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAEf1S,EAFe2S,EAAA,GAEHikB,EAFGjkB,EAAA,GAGhBkkB,EAAsBzc,iBAAgC,MACpDic,EAAaF,KAAbE,SAGR1jC,oBAAU,WACR,GAAc,OAAVz+C,EACFyiF,EAAgB,SAChBC,EAAc,GACdJ,EAAe,QACV,QAAc/iH,IAAVygC,EACTyiF,EAAgB,IAChBC,EAAc,OACT,CAEL,IAAIE,EAAqB,IAAA33G,OAAO6yC,KAAKwb,IAAIt5B,GAAOkjC,QAAQ,IACpD0/C,EAAsBC,SAAS,QACjCD,EAAwBA,EAAsBvzD,MAAM,GAAI,IAE1DozD,EAAgBG,GAChBF,EAAc1iF,KAEf,CAACA,IAMJ,IA0CM8iF,EAAc,SAACC,GACnB,KAAmB,IAAfj3B,GAAoBi3B,EAAa,GAArC,CAIGj3B,EAAa,IACdi3B,IAA2B,GAI7B,IAAIC,EAAellE,KAAKkmB,MAAkC,KAA3B8nB,EAAai3B,IAAuB,IACnEL,EAAcM,GAGd,IAAIJ,EAAqB,IAAA33G,OAAO6yC,KAAKwb,IAAI0pD,GAAc9/C,QAAQ,IAC3D0/C,EAAsBC,SAAS,QACjCD,EAAwBA,EAAsBvzD,MAAM,GAAI,IAE1DozD,EAAgBG,GAChBN,EAAeU,KAwBjB,OACEhgF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,+BACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,mBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,gCACbtB,EAAA1P,EAAA2P,cAAA,UACE09D,SAAUA,EACVv9D,MAAO,CACLL,QAAS,MACTkgF,OAAQd,EAAW,UAAY,eAEjC19E,QA5BO,kBAAMq+E,EAAY,MA6BzBI,aAAa,KACbhuB,KAAK,SACLiuB,aAAW,iBACXC,gBAAc,QACd9+E,UAAU,sDACVtB,EAAA1P,EAAA2P,cAAA,QAAMigF,aAAa,KAAK5+E,UAAU,sCAEpCtB,EAAA1P,EAAA2P,cAAA,UACE09D,SAAUA,EACVv9D,MAAO,CACLL,QAAS,MACTkgF,OAAQd,EAAW,UAAY,eAEjC19E,QArCY,kBAAMq+E,GAAa,MAsC/BI,aAAa,KACbhuB,KAAK,SACLiuB,aAAW,iBACXC,gBAAc,QACd9+E,UAAU,wDAEVtB,EAAA1P,EAAA2P,cAAA,QAAMigF,aAAa,KAAK5+E,UAAU,yCAGtCtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,8BACbtB,EAAA1P,EAAA2P,cAAA,SACEiyD,KAAK,aACL3zD,YAAaA,EACb6B,MAAO,CACL6/E,OAAQd,EAAW,OAAS,eAE9B79E,UAAU,wBACVq8D,SAAUA,EACVv+F,KAAK,OACLojC,SAjIa,SAACE,GACtB,IAAM29E,EAAa39E,EAAE4/D,OAAOtlE,MAEtBsjF,EAAQ,IAAIz/D,OAAO,wBAGrB0/D,EAAsBF,EAAWp4F,QAAQ,SAAU,SAACk9B,GAAD,MAAqB,OAAVA,GAA4B,QAAVA,EAAkB,KAAO,MAE7G,KAAIo7D,EAAoBpgF,OAAS,MAKL,MAAxBogF,GAA+BD,EAAME,KAAKD,IAAsB,CAClE,IAAMP,EAAe19D,WAAW+9D,EAAWp4F,QAAQ,WAAY,MAAQ,EACvEw3F,EAAgBc,GAChBb,EAAcM,KAkHRhjF,MAAOwiF,EACP7+E,OA3GW,SAAC+B,GACpB,IAAI29E,EAAa39E,EAAE4/D,OAAOtlE,MAAM/U,QAAQ,WAAY,IAChD+3F,EAAe19D,WAAW+9D,IAAe,EAGzCT,EAAqB,IAAA33G,OAAO6yC,KAAKwb,IAAI0pD,GAAc9/C,QAAQ,IAC3D0/C,EAAsBC,SAAS,QACjCD,EAAwBA,EAAsBvzD,MAAM,GAAI,IAE1DozD,EAAgBG,GAChBF,EAAcM,GACdV,EAAeU,IAiGPvuB,UAtDY,SAAC/uD,GACP,UAAVA,EAAE1a,KAAmB23F,EAAoBpgB,SAC3CogB,EAAoBpgB,QAAQkhB,QAqDtBhjB,IAAKkiB,OCjRV,IAAMe,GAA0D,SAAAriF,GAAgB,IAAb2yB,EAAa3yB,EAAb2yB,OAAa2vD,EACjD9D,GAAqB7rD,GAAjDqD,EAD6EssD,EAC7EtsD,MAAO2pD,EADsE2C,EACtE3C,iBAEf,OACEh+E,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGm0B,GACCr0B,EAAA1P,EAAA2P,cAACo/E,GAAD,CACE78E,SAAUw7E,EACV3rE,aAAcgiB,EAAMsH,OAAS,EAC7B3+B,MAAOq3B,EAAMsH,MAAQ7gB,KAAKwb,IAAIjC,EAAMsH,OAAS,MCT1CilD,GAAyD,SAAAviF,GAAgB,IAAb2yB,EAAa3yB,EAAb2yB,OAAa2vD,EACjD9D,GAAqB7rD,GAAhDqD,EAD4EssD,EAC5EtsD,MAAO4pD,EADqE0C,EACrE1C,gBAEf,OACEj+E,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGm0B,GACCr0B,EAAA1P,EAAA2P,cAACo/E,GAAD,CACE78E,SAAUy7E,EACV5rE,aAAcgiB,EAAMuH,MAAQ,EAC5B5+B,MAAOq3B,EAAMuH,KAAO9gB,KAAKwb,IAAIjC,EAAMuH,MAAQ,MCRxCilD,GAAiD,SAAAxiF,GAAe,IAAZg2B,EAAYh2B,EAAZg2B,MACzDknD,EAAeL,KACf4F,EAAa1hF,kBAAQ,kBAAMm8E,GAAgBA,EAAal4C,OAAO,CAACk4C,IAEtE,OACEv7E,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGm0B,GAASysD,GACR9gF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAW+yB,EAAMyH,cAAgBzqD,KAAc0qD,MAAQ,MAAQ,OAClE/7B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAYrD,MAAO8jF,EAAYzb,UAAQ,IADzC,IAC8ChxC,EAAMyH,cAAgBzqD,KAAc0qD,MAAQ,QAAU,YCJ/FglD,GAOR,SAAA1iF,GAAkE,IAA/DrB,EAA+DqB,EAA/DrB,MAAOysD,EAAwDprD,EAAxDorD,eAAgB1G,EAAwC1kD,EAAxC0kD,QAASi+B,EAA+B3iF,EAA/B2iF,UAAWl0F,EAAoBuR,EAApBvR,MAAOkkC,EAAa3yB,EAAb2yB,OAChD23B,EAAagwB,KAAbhwB,SAEFlE,EAAqB2wB,aAAa,SAAC53E,GAAD,MAA2B,kBAAfA,EAAEH,UAA+C,iBAAfG,EAAEH,WAClFN,EAAmBq4E,aAAa,SAAC53E,GAAD,MAA2B,WAAfA,EAAEH,WAC9C8nB,EAAQiwD,aAAa,SAAC53E,GAAD,OAAYA,EAAEklD,YAAcllD,EAAEklD,WAAWv9B,QAC9DikC,EACJrsD,GAAoBooB,IAA8B,kBAApBA,EAAMloB,KAAKC,MAAgD,iBAApBioB,EAAMloB,KAAKC,MAC5EgqB,EAAQkuD,aAAa,SAAC53E,GAAD,OAAYA,EAAE0pB,QAR4Bo0D,EAS3ClD,KAAlBnnE,EAT6DqqE,EAS7DrqE,IAAKgwB,EATwDq6C,EASxDr6C,IAAKjwB,EATmDsqE,EASnDtqE,IAEZiwE,EAAgBx+E,sBACpB,SAACy+E,GACCz3B,EAAey3B,EAAW7vG,KAAcwxE,OAASxxE,KAAc0qD,QAC1D0oB,GAAsB2E,IAAoBliC,GAC7CyhC,GAAUzhC,GAAO,GAAO,IAG5B,CAACuiC,IA6BH,OAzBAhO,oBAAU,WACR,IAAKv0B,EAAO,CACV,IAAIi6D,EAAwB,OAARlgD,QAAwB1kE,IAAR0kE,EAAoB,EAAIA,EAG7C,CAAChwB,EAAKgwB,EAAKjwB,GAAKzN,MAAM,SAAA1J,GAAG,OAAIA,GAAO,KAAM,CAACoX,EAAKgwB,EAAKjwB,GAAKzN,MAAM,SAAA1J,GAAG,OAAIA,GAAO,KAEnE,OAARoX,QAAwB10C,IAAR00C,GAA+B,OAARD,QAAwBz0C,IAARy0C,EAG5C,IAAlBmwE,GAAgC,IAARlwE,GAAqB,IAARD,IAE9CmwE,EAAwB,IAARlwE,EAAYA,EAAMD,GAHlCmwE,EAAgBnwD,IAAWhgD,KAAYy6C,IAAMxa,EAAMD,EAMjDggB,IAAWhgD,KAAYy6C,IAEzBg+B,EAAe03B,EAAgB,EAAI9vG,KAAc0qD,MAAQ1qD,KAAcwxE,QAGvE4G,EAAe03B,EAAgB,EAAI9vG,KAAcwxE,OAASxxE,KAAc0qD,SAG3E,CAAC7U,EAAOjW,EAAKgwB,EAAKjwB,EAAKggB,IAGxBhxB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACEpM,OAAQ+I,IAAU3rB,KAAcwxE,OAChC8a,UAAW5a,EACXq+B,GAAG,OACHC,IAAI,MACJC,QAAO,UAAAr5G,OAAY+4G,GAAa,YAChCO,SAAQ,SAAAt5G,OAAW+4G,GAAa,YAChCl0F,MAAOA,GAAS,OAChB2U,QAASw/E,KAKFO,GAAoB,WAC/B,IAAMz+B,EAAUs1B,aAAkBxC,KAAe4L,sBAAsB,GACjE7+B,EAAcy1B,aAAkBxC,KAAe4F,cAAepqG,KAAc0qD,OAC1E0tB,EAAmBkvB,KAAnBlvB,eACAz4B,EAAWokD,aAAa,SAAA53E,GAAC,OAAIA,IAA7BwzB,OACR,OACEhxB,EAAA1P,EAAA2P,cAACyhF,GAAD,CAAyB1kF,MAAO4lD,EAAa5xB,OAAQA,EAAQy4B,eAAgBA,EAAgB1G,QAASA,KC7E7F4+B,GAA6D,SAAAtjF,GAAgB,IAAb2yB,EAAa3yB,EAAb2yB,OAAa2vD,EACnD9D,GAAqB7rD,GAAlDqD,EADgFssD,EAChFtsD,MAAO6pD,EADyEyC,EACzEzC,kBACTzC,EAAgBpnD,GAASA,EAAMyH,YAAczH,EAAMyH,iBAAcv/D,EACjEwmF,KACJ1uB,GACA9xB,IAAExa,KAAKssC,EAAM1D,KAAM,SAAA11B,GAAC,OAAIA,EAAEiwB,SAAWl6C,KAAYy6C,OACjDlpB,IAAExa,KAAKssC,EAAM1D,KAAM,SAAA11B,GAAC,OAAIA,EAAEiwB,SAAWl6C,KAAY06C,QAInD,OACE1rB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGm0B,GACCr0B,EAAA1P,EAAA2P,cAACyhF,GAAD,CACE50F,MAAO,MACPk0F,UAAW,cACXhkF,MAAOy+E,EACPhyB,eAAgBy0B,EAChBn7B,QAASA,gBChBN6+B,GAA0D,CACrEhkH,iBAAkB,EAClBuD,OAAQ,CACN0gH,UAAW,EACXC,aAAc,EACdC,eAAgB,EAChBC,SAAU,MAEZ9gH,QAAS,CACP2gH,UAAW,EACXC,aAAc,EACdC,eAAgB,EAChBC,SAAU,IAEZC,YAAa,CACXJ,UAAW,EACXC,aAAc,GACdC,eAAgB,EAChBC,SAAU,IASP,SAASE,GAAuBC,EAA4CC,GACjF,QAA0B7lH,IAAtB6lH,GAAyD,OAAtBA,EAAvC,CAGA,IAAI3/C,EAAa,EACb4/C,GAAgB,EAChBC,GAAiB,EACjBC,GAAqB,EACnBC,EAAyBJ,EAAkBjhH,OAC3CshH,EAA2BL,EAAkBlhH,QAC7CwhH,EAA+BN,EAAkBH,YAEnDU,EAAmB,EACnBC,EAAoB,EACpBC,EAAwB,EAd4HC,GAAA,EAAAC,GAAA,EAAAC,OAAAzmH,EAAA,IAgBxJ,QAAA0mH,EAAAC,EAAoCf,EAApC5xE,OAAA4yE,cAAAL,GAAAG,EAAAC,EAAA9pE,QAAAgqE,MAAAN,GAAA,EAA0D,KAAA5/E,EAAA+/E,EAAAjmF,MAA/CkpB,EAA+ChjB,EAA/CgjB,UAAWxU,EAAoCxO,EAApCwO,SAChBwU,IAAcn1C,IAAU6iC,QAAUlC,GAAY8wE,IAChDH,GAAgB,OACwB9lH,IAApCimH,EAAuBR,WACzBW,GAAoBjxE,EAAW8wE,EAAuBR,WAKtD97D,IAAcn1C,IAAUijC,QAAUtC,GAAY+wE,QAAkElmH,IAAtCkmH,EAAyBT,WACrGM,GAAiB,EACjBM,GAAqBlxE,EAAW+wE,EAAyBT,UAGvD97D,IAAcn1C,IAAU8iC,YAAcnC,GAAYgxE,QAA0EnmH,IAA1CmmH,EAA6BV,WACjHO,GAAqB,EACrBM,GAAyBnxE,EAAWgxE,EAA6BV,WAhCmF,MAAA/hE,GAAA8iE,GAAA,EAAAC,EAAA/iE,EAAA,YAAA6iE,GAAA,MAAAI,EAAAG,QAAAH,EAAAG,SAAA,WAAAN,EAAA,MAAAC,GAoCxJ,IAAIM,EAAgB,EAChBd,QAA+DjmH,IAArCimH,EAAuBX,YAEjDyB,OAD0C/mH,IAAxCimH,EAAuBV,cAA8BU,EAAuBV,aAAeU,EAAuBX,UACpGW,EAAuBV,aAEvBU,EAAuBX,UAGvCp/C,GADE4/C,GAAiBM,EAAmBW,EACxBA,EAEAX,GAIlB,IAAIY,EAAiB,EACjBd,QAAmElmH,IAAvCkmH,EAAyBZ,YAErD0B,OAD4ChnH,IAA1CkmH,EAAyBX,cAA8BW,EAAyBX,aAAeW,EAAyBZ,UACzGY,EAAyBX,aAEzBW,EAAyBZ,UAG1Cp/C,GADE6/C,GAAkBM,EAAoBW,EAC1BA,EAEAX,GAIlB,IAAIY,EAAqB,EAczB,OAbId,QAA2EnmH,IAA3CmmH,EAA6Bb,YAE7D2B,OADgDjnH,IAA9CmmH,EAA6BZ,cAA8BY,EAA6BZ,aAAeY,EAA6Bb,UACjHa,EAA6BZ,aAE7BY,EAA6Bb,UAGlDp/C,GADE8/C,GAAsBM,EAAwBW,EAClCA,EAEAX,GAIXpgD,GAOM,SAASghD,GAATlvD,GAAoE,IAApCF,EAAoCE,EAApCF,MACvChZ,EAAMqoE,cACNxlH,EAAY08E,YAAiB+oC,KAC7BC,EAAkBhpC,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQC,wBAHyB0oC,EAMzDC,aACtBF,EAAkBA,EAAgB1lH,UAAYA,EAC9Cm9C,EAAIoB,SAASQ,SAFPnoB,EANyE+uF,EAMzE/uF,KAAM9J,EANmE64F,EAMnE74F,MAOR83C,EAAkB1jC,kBAAQ,WAC9B,IAAIqjC,EAAqB,EAEzB,GAAI3tC,GAAQu/B,EAAO,CACjB,IAAI8tD,EAAuB9tD,EAAM1D,KAAKv1B,IAAI,SAAAH,GAAC,MAAK,CAAEirB,UAAWjrB,EAAElqB,UAAW2gC,SAAUzW,EAAEshB,SAAWthB,EAAEshB,SAAW,KAC1GwnE,OAAgBxnH,EACa,OAA7Bu4B,EAAK4iB,QAAQ/5C,kBAAqDpB,IAA7Bu4B,EAAK4iB,QAAQ/5C,aACpD63C,QAAQxqB,MAAM,+CACd+4F,EAAgB7B,GAAuBC,EAAsBP,KAE7DmC,EAAgB7B,GAAuBC,EAAsBrtF,EAAK4iB,QAAQ/5C,aAE5E8kE,EAAashD,GAAgC,EAE/C,OAAO3e,aAAa3iC,EAAY,CAAE4iC,UAAU,KAC3C,CAAChxC,EAAOv/B,IAEX,YAAcv4B,IAAV83D,GAEF7e,QAAQuH,KAAK,iDAEX/c,EAAA1P,EAAA2P,cAAA,gCAKFD,EAAA1P,EAAA2P,cAAC+jF,GAAD,CAA4B5E,aAAkB7iH,IAATu4B,EAAoB9J,MAAOA,EAAO83C,gBAAiBA,IAUrF,SAASkhD,GAAT1mB,GAA0F,IAApDx6B,EAAoDw6B,EAApDx6B,gBAC3C,OACE9iC,EAAA1P,EAAA2P,cAAA,0BACe6iC,GCxInB,IAAMmhD,GAAa,SAACvyE,EAAkBK,GACpC,MAAO,CACL,CACEi+C,OAAQ,aACRpxF,GAAI,aACJslH,SAAU,SAAC5pD,GACT,OAAIA,EAAIvpD,YAAcA,IAAU6iC,OACvB,SAEFgxD,GAAqBv4F,OAAAy0B,EAAA,EAAAz0B,CAAA,GACrBiuD,EADoB,CACf/pB,OAAQ+pB,EAAI0B,WAAajqB,GAAoB,KACvD,CAAEwK,SAAU7K,EAAUlB,iBAAkBuB,MAI9C,CACEi+C,OAAQ,aACRk0B,SAAU,SAAC5pD,GACT,OAAOA,EAAI9pB,iBAAmB8pB,EAAI9pB,iBAAmB8pB,EAAI0B,UAAY1B,EAAI0B,UAAY,IAEvFp9D,GAAI,UAEN,CACEoxF,OAAQ,SACRk0B,SAAU,SAAC5pD,GACT,OAAOA,EAAI0B,UAAY1B,EAAI0B,UAAY,IAEzCp9D,GAAI,aAEN,CACEoxF,OAAQ,SACRk0B,SAAU,SAAC5pD,GACT,SAAAryD,OAAU+I,KAAYspD,EAAIpP,QAA1B,SAAAjjD,OAAyCiJ,KAAeopD,EAAIppD,gBAA5D,MAEFtS,GAAI,UAEN,CACEoxF,OAAQ,MACRpxF,GAAI,MACJslH,SAAU,SAAC5pD,GAET,GAAI1e,OAAO4J,MAAM9T,SAA8Bn1C,IAAjB+9D,EAAI/d,SAAwB,CACxD,IAAM4nE,GAAS7pD,EAAI1O,aAAe,GAAKla,EACvC,SAAAzpC,OAAUk8G,EAAM9kE,WAAhB,KAIF,GAAIib,EAAI1O,YAAa,CACnB,IAAMu4D,EAAQzyE,EAAW4oB,EAAI1O,YAC7B,SAAA3jD,OAAUk8G,EAAM9kE,WAAhB,KAGF,IAAM8kE,EAAQ7pD,EAAI/d,SAClB,SAAAt0C,OAAUk8G,EAAM9kE,WAAhB,OAGJ,CACE2wC,OAAQ,QACRpxF,GAAI,QACJslH,SAAU,SAAA5pD,GACR,YAAuB/9D,IAAnB+9D,EAAItqB,WACC,GAET,GAAA/nC,OAAUm9F,aAAa9qC,EAAItqB,WAAY,CAAEq1D,UAAU,OAGvD,CACErV,OAAQ,OACRpxF,GAAI,OACJslH,SAAU,SAAA5pD,GACR,YAA6B/9D,IAAzB+9D,EAAIlqB,iBACC,GAET,GAAAnoC,OAAUm9F,aAAa9qC,EAAIlqB,iBAAkB,CAAEi1D,UAAU,OAG7D,CACErV,OAAQ,MACRpxF,GAAI,MACJslH,SAAU,SAAA5pD,GACR,YAAqB/9D,IAAjB+9D,EAAI5pB,eAA0Cn0C,IAAhB+9D,EAAI/W,QAC7B,GAET,GAAAt7C,OAAUm9F,aAAa9qC,EAAI5pB,SAAU,CAAE20D,UAAU,IAAjD,OAAAp9F,OAA8DqyD,EAAI/W,WAGtE,CACEysC,OAAQ,MACRpxF,GAAI,MACJslH,SAAU,SAAA5pD,GACR,YAAqB/9D,IAAjB+9D,EAAI7pB,eAA0Cl0C,IAAhB+9D,EAAI9W,QAC7B,GAET,GAAAv7C,OAAUm9F,aAAa9qC,EAAI7pB,SAAU,CAAE40D,UAAU,IAAjD,OAAAp9F,OAA8DqyD,EAAI9W,aAyG7D4gE,GAOR,SAAA/lF,GAAsE,IAAnEg2B,EAAmEh2B,EAAnEg2B,MAAO5M,EAA4DppB,EAA5DopB,KAAMuJ,EAAsD3yB,EAAtD2yB,OAAQ8rD,EAA8Cz+E,EAA9Cy+E,aAAcuH,EAAgChmF,EAAhCgmF,cAAeC,EAAiBjmF,EAAjBimF,WAChDjpD,EAA6ChH,EAA7CgH,aAAc9e,EAA+B8X,EAA/B9X,SAAU/L,EAAqB6jB,EAArB7jB,iBAC1Bnc,EAASkwF,aAAiB98D,EAAKrsB,IAAI,SAACH,GAAD,OAAaA,EAAEsV,OAAStV,EAAEsV,OAAS,MACtEi0E,EAAeplF,kBAAQ,WAC3B,IAAIqlF,EAEFA,EADa,YAAXzzD,GAAwBszD,EAChBL,GAAWK,EAAW/nE,SAAU+nE,EAAW9zE,kBAE3CyzE,GAAW1nE,EAAU/L,GAEjC,IAAMk0E,EAAS,CAAC,KAAM,MAAO,MAAO,MAAO,OAC3C,OAAOD,EAAQrpF,IAAI,SAACyC,EAAGqkB,GACrB,OAAO71C,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFwxB,EADL,CAEEuC,MAAM/zB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAwxB,EAAEuC,OAAS,GADZ,CAEHtT,MAAO43F,EAAOxiE,SAAQ3lD,SAI3B,CAACggD,EAAU/L,EAAkBwgB,EAAQszD,IAElC7iB,EAAmB7mB,YAAiB+pC,IAAWljB,kBAC/CC,EAAkB9mB,YAAiB+pC,IAAWjjB,iBAC9CmF,EAAejsB,YAAiBgqC,KAChCC,EAAajqC,YAAiBkqC,YAAmBzpD,GAAgBwrC,IACjEke,EAAgB,GAAA98G,OAAMw5F,EAAN,KAAAx5F,OAA0By5F,GAA1Bz5F,OAA4C48G,EAAU,MAAA58G,OAAS48G,EAAWG,YAAe,IAEzGC,EAAgB7lF,kBACpB,kBACEmD,IAAE3E,OAxIO,SACbozB,EACA8rD,EACA3+G,EACAkmH,EACA3oD,GALa,MAMV,CACH,CACE98D,GAAI,QACJizB,MAAkB,YAAXm/B,GAAyBqzD,EAA2C,QAA3B,yBAChDrnF,MAAO,SAACkoF,GACN,IAAM37B,EAAwB,YAAXv4B,GAAwBk0D,EAAMA,EAAIvpD,MAAQmhD,EAC7D,QAAYvgH,IAAR2oH,EACF,MAAO,KAET,OAAQA,EAAI/zG,WACV,KAAKA,KAAUgyE,MACb,gBAAAl7E,OAAiBshF,GAAc6b,aAAatqD,KAAKwb,IAAIizB,GAAa,CAAE8b,UAAU,KAChF,KAAKl0F,KAAUu0F,WACb,OACE1lE,EAAA1P,EAAA2P,cAAA,WACED,EAAA1P,EAAA2P,cAAA,0BAAAh4B,OAAqBi9G,EAAItpD,MAAQwpC,aAAatqD,KAAKwb,IAAI4uD,EAAItpD,MAAO,CAAEypC,UAAU,MAC9ErlE,EAAA1P,EAAA2P,cAAA,2BAAAh4B,OAAsBshF,GAAc6b,aAAatqD,KAAKwb,IAAIizB,GAAa,CAAE8b,UAAU,OAGzF,KAAKl0F,KAAUs0F,OACb,MAAO,SACT,KAAKt0F,KAAUw0F,YACb,sBAAA19F,OAAuBi9G,EAAItpD,MAAQwpC,aAAatqD,KAAKwb,IAAI4uD,EAAItpD,MAAO,CAAEypC,UAAU,KAClF,KAAKl0F,KAAUy0F,gBACb,wBACF,QACE,MAAO,QAIf,CACEhnG,GAAI,SACJizB,MAAO,YACPmL,MAAO,SAACkoF,GACN,YAAY3oH,IAAR2oH,EACK,IAELA,EAAI50D,WAAar4C,KAAUw4C,IAEtB,MAET,GAAAxoD,OAAUgQ,KAAUitG,EAAI50D,aAG5B,CACE1xD,GAAI,aACJqsD,QAAS,CAAC,WACVp5B,MAAO,kBACPmL,MAAO,SAACkoF,GAAD,OAAiBllF,EAAA1P,EAAA2P,cAACwjF,GAAD,CAAsBpvD,MAAO6wD,MAEvD,CACEtmH,GAAI,UACJizB,MAAO,UACPmL,MAAO,SAACkoF,GAAD,OAAiB/mH,IAE1B,CACES,GAAI,QACJqsD,QAAS,CAAC,WACVp5B,MAAO,aACPmL,MAAO,SAACkoF,GAAD,OAAiBllF,EAAA1P,EAAA2P,cAACklF,GAAD,CAAmB9wD,MAAO6wD,MAGpD,CACEtmH,GAAI,YACJqsD,QAAS,CAAC,WACVp5B,OAAQwyF,GAAiB3oD,IAAcvqD,KAAUu0F,YAAc,aAC/D1oE,MAAO,SAACkoF,GACN,OACGb,QACO9nH,IAAR2oH,GACAA,EAAI/zG,YAAcA,KAAUu0F,YAAc1lE,EAAA1P,EAAA2P,cAACmlF,GAAD,CAAkBp0D,OAAQA,MAI1E,CACEpyD,GAAI,QACJqsD,QAAS,CAAC,WACVp5B,OAAQwyF,GAAiB,cACzBrnF,MAAO,SAACkoF,GAAD,OAAkBb,GAAiBrkF,EAAA1P,EAAA2P,cAAColF,GAAD,CAAmBr0D,OAAQA,MAEvE,CACEpyD,GAAI,gBACJqsD,QAAS,CAAC,WACVp5B,OAAQwyF,GAAiB,kBACzBrnF,MAAO,SAACkoF,GACN,OAAQb,QAAyB9nH,IAAR2oH,GAAqBllF,EAAA1P,EAAA2P,cAACqlF,GAAD,CAAsBt0D,OAAQA,KAE9Eu0D,KAAM,SAACniF,GACL,OAAOpD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MAAImkF,GAAiBrkF,EAAA1P,EAAA2P,cAACqlF,GAAD,CAAsBt0D,OAAQA,QA2CxD72B,CAAO62B,EAAQ8rD,EAAciI,EAAkBV,EAAehwD,EAAMljD,WACpE,SAAAq0G,GAAC,YAAkBjpH,IAAdipH,EAAEv6D,SAAyBu6D,EAAEv6D,QAAQnxB,SAASk3B,MAEvD,CAACA,EAAQ8rD,EAAciI,IAGnBU,EAAYrmF,kBAChB,kBACEqoB,EAAKrsB,IAAI,SAAAk/B,GACP,OAAOjuD,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFiuD,EACAjmC,EAAOtM,KAAK,SAAAurB,GAAC,OAAIA,EAAE/C,SAAY+pB,EAAY/pB,aAGpD,CAACkX,IAGH,OACEznB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACylF,GAAD,CAAYjS,SAAS,gBAAgB/mF,QAAS83F,EAAc1vF,KAAM2wF,EAAWluB,QAAQ,IACrFv3D,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,0CACXiB,IAAEnH,IAAI6pF,EAAe,SAACzhC,EAAOthC,GAC5B,IAAMyjE,EAAapjF,IAAEqjF,WAAWpiC,EAAM3xD,OAAS2xD,EAAM3xD,MAAMwiC,GAASmvB,EAAM3xD,MAC1E,OACEmO,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,cAActZ,IAAG,SAAA/f,OAAWi6C,GAAOtjD,GAAE,SAAAqJ,OAAWi6C,IAC5DliB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,mBAAmBqkF,GACnC3lF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAckiD,EAAMxmD,MAAMq3B,UCtRlDwxD,GAAW,WAEf,OADYv3B,KAAOgS,oBAEjB,KAAKA,KAAmB2N,IACtB,MAAO,UACT,KAAK3N,KAAmB4N,KACtB,MAAO,WACT,QACE,MAAO,aAIP4X,GAA6C,SAAAznF,GAA6B,IAA1BiD,EAA0BjD,EAA1BiD,UAAWgwD,EAAejzD,EAAfizD,SACzDy0B,EAAoCnrC,YAAiBorC,KACrDC,EAAgBrrC,YAAiBsrC,KACjCtwB,EAAYhb,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE6zC,KAAKukB,YAEzCuwB,EAAsB/mF,kBAAQ,WAClC,OAAI2mF,IAAsCnwB,EACxC,aAAA3tF,OAAoB89G,EAAkCK,QAAU,WAAa,IACpEH,EACT,aAAAh+G,OAAoBg+G,EAAcG,QAAU,WAAa,IAElD,IAER,CAACL,EAAmCE,IACjC16B,EAAe3Q,YAAiB6a,IAChC4wB,EAAmBjnF,kBAAQ,WAC/B,OAAO6yD,aAAc,CACnB,YACA1G,EAAe,QAAU,MACzBjqD,EACA6kF,EACAN,KACAt6B,EAAe,cAAgB,MAEhC,CAACjqD,EAAW6kF,EAAqB56B,IACpC,OAAOvrD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAW+kF,GAAmB/0B,IAG/Bg1B,GAAoD,SAAApjF,GAA6B,IAA1B5B,EAA0B4B,EAA1B5B,UAAWgwD,EAAepuD,EAAfouD,SACrElV,EAAeN,cAAfM,WAEFwZ,EAAYhb,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE6zC,KAAKukB,YAH6C7b,EAIlDC,oBAAS,GAJyCC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAIrFwsC,EAJqFtsC,EAAA,GAItEusC,EAJsEvsC,EAAA,GAKtF8rC,EAAoCnrC,YAAiBorC,KACrDC,EAAgBrrC,YAAiBsrC,KANqD1qB,EAOhDxhB,oBAAS,GAPuCyhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAOrFirB,EAPqFhrB,EAAA,GAOrEirB,EAPqEjrB,EAAA,GAQtFhkB,EAAW0E,cAEXwqC,EAAa/rC,YAAiBgsC,KAC9BC,EAAcznF,kBAAQ,WAC1B,IAAM0nF,EAAoBH,EAC1B,GAAIG,GAAgD,UAA3BA,EAAkB1nH,KACzC,OAAO0nH,EAAkBzyD,OAG1B,CAACsyD,IAEEI,EAAetkF,sBAAY,WAC3BkkF,IACFvqC,EAAW+X,cAAcjoD,KAAKy6E,GACN,MAApBA,EAAW9+F,MACb6+F,GAAkB,KAGrB,CAACC,EAAYvqC,IAEV4qC,EAAa5nF,kBAAQ,WACzB,OAAKmD,IAAEhF,MAAMwoF,IAAsCA,EACA,UAA7CA,EAAkC5wE,OACpC,wBACsD,SAA7C4wE,EAAkC5wE,OAC3C,uBAEA,kBAEQ5S,IAAEhF,MAAM0oF,GAGX,GAFP,wBAKD,CAACF,EAAmCE,IAEjCgB,EAAcxkF,sBAClB,SAACghE,EAAOzmE,GACN0pF,EAAkB1pF,IAEpB,CAACypF,IAGGS,EAAkBzkF,sBAAY,WAClC,GAAIokF,EAAa,CACf,IAAMtJ,EAAUlxG,OAAAy0B,EAAA,EAAAz0B,CAAA,GACXw6G,EADW,CAEdjJ,eAAgB6I,IAElB,IACEhvC,EAAS3pC,IAAaqwE,kBAAkBZ,IACxC3c,WAAW,WACTmmB,KACC,KACH,MAAOI,GACP/qC,EAAW/nB,MAAM+yD,QAAQP,EAAaM,GACtC3xE,QAAQxqB,MAAM,sBAAuBm8F,IAIzCJ,KACC,CAACF,EAAaJ,IAGjB,MAAiC,YAA7Bv4B,OAAOC,SAASk5B,SACX,KAGPrnF,EAAA1P,EAAA2P,cAACqnF,GAAD,CAAWhmF,UAAWA,GACnBykF,IAAsCnwB,GACrC51D,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAW0lF,GACbjB,EAAkCl0F,MAClCk0F,EAAkC96F,SACjC+U,EAAA1P,EAAA2P,cAAA,UACEqB,UAAU,eACVliC,KAAK,SACLghC,MAAO,CAAEmnF,WAAY,OACrB9lF,QAAS,kBAAM+kF,GAAiB,KAJlC,aASDT,EAAkC96F,SACjC+U,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS02B,EAAkB93B,KAAM63B,GACtCvmF,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,KAAuB41B,EAAkCl0F,QAE3DmO,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,OAAKunF,wBAAyB,CAAEC,OAAQ1B,EAAkC96F,cAMnFg7F,GACCjmF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAW0lF,GACbf,EAAcp0F,OAAS,GAD1B,IAC+Bo0F,EAAch7F,QAC1Cg7F,EAAch7F,SACb+U,EAAA1P,EAAA2P,cAAA,KACEqB,UAAU,eACVliC,KAAK,SACLghC,MAAO,CAAEmnF,WAAY,OACrB9lF,QAAS,kBAAMysD,OAAOC,SAASu5B,WAJjC,WAYLf,GAAcE,GACb7mF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAO8oE,SAAS,EAAMza,MAAM,EAAMoB,QAASi3B,GACzC/mF,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,KAAuBw2B,EAAW90F,QAEpCmO,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,uEACAD,EAAA1P,EAAA2P,cAAA,KAAGunF,wBAAyB,CAAEC,OAAQd,EAAW17F,SAAW,MAC5D+U,EAAA1P,EAAA2P,cAAC0nF,GAAD,CACEtD,eAAe,EACfhwD,MAAOwyD,EACPp/D,KAAM40D,GAAoBwK,GAC1B71D,OAAO,UAEY,MAApB21D,EAAW9+F,MACVmY,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAoBsD,QAAS8iF,EAAgBnjF,SAAU2jF,EAAa3lF,UAAU,QAA9E,oBAKJtB,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,MACI+1B,GACAzmF,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAASslF,GAAnC,SAIDN,GACCzmF,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAASylF,GAAnC,eAGAlnF,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,YAAYnvD,QAASslF,GAArC,YASTz1B,ICrNMs2B,GAAuE,SAAAvpF,GAAkB,IAAfmhE,EAAenhE,EAAfmhE,SAC7EpjB,EAAeN,cAAfM,WACFyrC,EAAmBplF,sBAAY,kBAAM25C,EAAW7zD,MAAM2gB,SAASolE,aAAiB78F,IAAU0E,MAAO,CAAE4e,WAAW,MAAU,CAACqnD,IAC/H,OACEp8C,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQvY,KAAK,IAAI03E,SAAUA,EAAUC,SAAUooB,MCNxCC,GAA2E,SAAAzpF,GAAkB,IAAfmhE,EAAenhE,EAAfmhE,SACjFpjB,EAAeN,cAAfM,WACFj2C,EAAiB1D,sBAAY,kBAAM25C,EAAWzzD,SAASwd,kBAAkB,CAACi2C,IAChF,OACEp8C,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQvY,KAAK,IAAI03E,SAAUA,EAAUC,SAAUt5D,MCNxC4hF,GAAsE,SAAA1pF,GAAkB,IAAfmhE,EAAenhE,EAAfmhE,SAC5EpjB,EAAeN,cAAfM,WACF9xC,EAAe7H,sBAAY,kBAAM25C,EAAW4rC,KAAK19E,aAAa,CAAE29E,aAAa,KAAU,CAAC7rC,IAC9F,OACEp8C,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQvY,KAAK,IAAI03E,SAAUA,EAAUC,SAAUn1D,2CCHtC49E,qFAAf,SAAA1uE,EAA+BwjC,EAA2Bh1D,GAA1D,OAAA6wB,EAAAvoB,EAAA2oB,KAAA,SAAAQ,GAAA,cAAAA,EAAAN,KAAAM,EAAAL,MAAA,cAAAK,EAAAN,KAAA,EAAAM,EAAAJ,OAAA,SAEW2jC,EAAQh/C,IAAOhW,IAF1B,cAAAyxB,EAAAN,KAAA,EAAAM,EAAAqD,GAAArD,EAAA,SAAAA,EAAAJ,OAAA,SAIWuG,QAAQC,aAAQtjD,IAJ3B,wBAAAk9C,EAAAF,SAAAC,EAAA,wCAQO,IAAM2uE,GAGR,SAAA9pF,GAAkC,IAA/B21D,EAA+B31D,EAA/B21D,MAAOhrE,EAAwBqV,EAAxBrV,QAASsoE,EAAejzD,EAAfizD,SAChB82B,EAAWr/F,aAAiBC,GAC1Bq/F,EAAmBC,eAAnBD,eAEF5yE,EAAM2jC,aAAO,mBAsBnB,OArBAqC,oBAAU,WACR,IAAI8sC,GAAU,EAed,OAde,eAAArlF,EAAA72B,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAC,IAAA,IAAAxwB,EAAA,OAAAswB,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACI8uE,GAA8Bl0B,EAAOo0B,GADzC,QACV7/F,EADU2wB,EAAAuC,OAGdhG,EAAI,+CAAgDzsB,GAElDu/F,EACFF,EAAe9/F,GAAS,IAExBitB,QAAQuH,KAAK,eAAgB/zB,EAAS,6CARxB,wBAAAkwB,EAAAK,SAAAR,MAAH,yBAAA7V,EAAA0e,MAAAzJ,KAAA0J,YAAA,EAYf2mE,GAEO,WAELD,GAAU,IAEX,IACIvoF,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KAAGoxD,ICvCCm3B,GAAqB3uC,YAAS,SAACi1B,GAAgC,IAAAh1B,EACjCC,mBAAS+0B,GADwB90B,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GACnE2uC,EADmEzuC,EAAA,GAClD+0B,EADkD/0B,EAAA,GAG1E,OADAwB,oBAAU,kBAAMuzB,EAAcD,IAAa,CAACA,IACrC3vE,kBAAQ,kBAAMspF,GAAiB,CAACA,MCG5BC,IADmBC,IACLhhB,KACzB,SAAC1qG,EAAkB62B,GAAnB,OAAuCwO,IAAExa,KAAK7qB,EAAMsrB,OAAO8M,OAAQ,SAAA+rB,GAAC,OAAIA,EAAEttB,UAAYA,KACtF,SAAC80F,GAAD,OAAyCA,EAAQA,EAAM5zF,YAAS14B,GAFvCqrG,CAGzB,SAACrlE,EAAG3jC,GAAJ,yBAAAqJ,OAA8BrJ,MACnBkqH,GAAmBlhB,KAC9B,SAAC1qG,EAAkB62B,GAAnB,OAAuCwO,IAAExa,KAAK7qB,EAAMsrB,OAAO8M,OAAQ,SAAA+rB,GAAC,OAAIA,EAAEttB,UAAYA,KACtF,SAAC80F,GAAD,OAAyCA,EAAQA,EAAME,iBAAcxsH,GAFvCqrG,CAG9B,SAACrlE,EAAG3jC,GAAJ,wBAAAqJ,OAA6BrJ,KCNlBoqH,IDOuBphB,KAClC,SAAC1qG,GAAD,OAAsBA,EAAMsrB,OAAO8M,QACnCszF,IACA,SAACtzF,EAAQvB,GACP,QAAgBx3B,IAAZw3B,EAAJ,CAGA,IAAMk1F,EAAgB1mF,IAAExa,KAAKuN,EAAQ,SAAA+rB,GAAC,OAAIA,EAAEttB,UAAYA,IACxD,OAAOk1F,EAAgBA,EAAch0F,YAAS14B,IARdqrG,CAUlC,SAACrlE,EAAG3jC,GAAJ,6BAAAqJ,OAAkCrJ,KCjB2C,SAAAy/B,GAA6B,IAA1BiD,EAA0BjD,EAA1BiD,UAAWgwD,EAAejzD,EAAfizD,UCL5D,WAAM,IAAA43B,EACRC,eAArBngG,EAD6BkgG,EAC7BlgG,QAAS+K,EADoBm1F,EACpBn1F,QACTq1F,EAAad,eAAbc,SACFC,EAAiBzuC,YAAiB,SAAAp9C,GAAC,OAAIorF,YAAaprF,EAAGxU,KAC7DyyD,oBAAU,WACJ4tC,GAAkBt1F,IAAYs1F,GAChCD,EAASC,IAEV,CAACt1F,EAASs1F,EAAgBD,IDF7BE,GAD0G,IAAAJ,EAE7EC,eAArBngG,EAFkGkgG,EAElGlgG,QAAS+K,EAFyFm1F,EAEzFn1F,QAFyFigF,EAGzC7C,KAHyC8C,EAAA5nG,OAAAqoD,EAAA,EAAAroD,CAAA2nG,EAAA,GAAAuV,EAAAtV,EAAA,GAGvElF,GAHuEwa,EAGjGrX,UAHiGqX,EAGtFpX,WAHsF9lG,OAAAg2B,GAAA,EAAAh2B,CAAAk9G,EAAA,6BAGzDC,EAHyDvV,EAAA,GAKpGwV,EAAqB7uC,YAAiB,SAAAp9C,GAAC,OAAIq9C,IAAgB6uC,cAAclsF,EAA9Bq9C,CAAiC7xD,KAC5E4nF,EAAkCh2B,YAAiB,SAAAp9C,GAAC,OAAIq9C,IAAgB+1B,cAAcpzE,KAEtFmsF,EAAW/uC,YAAiB,SAAAp9C,GAAC,OAAIq9C,IAAgB8uC,SAASnsF,EAAzBq9C,CAA4B7xD,KAC7D4gG,EAAmBhvC,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEhV,OAAOohG,mBAClDC,EAAmBjvC,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEhV,OAAOqhG,mBAElDC,EAAqB1qF,kBAAQ,kBAAMrL,IAAY61F,GAAkB,CAAC71F,EAAS61F,IAC3EG,EAA0B3qF,kBAAQ,kBAAMwxE,GAAiBiZ,GAAoBjZ,EAAgBiZ,GAAkB,CAACjZ,EAAeiZ,IAE/Hd,EAAcnuC,YAAiB,SAAAp9C,GAAC,OAAIsrF,GAAiBtrF,EAAGzJ,GAAW,MAEnE40E,EAAavpE,kBAAQ,WACzB,OAAO6yD,aAAc,CACnB,QACA3wD,EACAytE,EAAWmC,gBACXnC,EAAWkC,eACX0Y,GAAYG,IAAuBL,EAAnC,gBAAAxhH,OAEI8hH,EAA0B,GAAH,YAAA9hH,OACX8gH,SAEdxsH,EACFktH,EACE,kCACAltH,KAEH,CAAC+kC,EAAWytE,EAAWmC,gBAAiBnC,EAAWkC,eAAgB0Y,EAAUG,EAAoBL,EAAoBM,EAAyBhB,IAIjJ,OAFA3tC,aAAkB,GAAAnzE,OAAI+gB,EAAJ,wBAAmC,CAAE2/E,aAAYmhB,qBAAoB9gG,UAASsY,YAAWmoF,qBAAoBE,WAAUC,mBAAkBC,mBAAkB9a,eAG3K/uE,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAWqnE,EAAYlL,IAAK+rB,GAC/BxpF,EAAA1P,EAAA2P,cAACwoF,GAAmB1T,SAAahG,EAAazd,gBE9CvC04B,GAAe,SAACnB,GAAD,OAA6BtmF,IAAEhF,MAAMsrF,EAAM5zF,UAAYsN,IAAEhF,MAAMsrF,EAAMx0D,QAEpF41D,GAAsB,SACjCl5E,GACG,IACKf,EAAgDe,EAAhDf,WAAYF,EAAoCiB,EAApCjB,eACpB,OADwDiB,EAApBhB,gBAE3BC,EAEAF,EAAiB,EAAIA,EAAiBE,GAIpCk6E,GAAuC,CAAC,QAAS,MAAO,QAAS,OAAQ,SAAU,UACnFC,GAAsB,SAACC,GAClC,OAAQA,GACN,IAAK,QACH,MAAO,mBAET,IAAK,MACH,MAAO,UAET,IAAK,QACH,MAAO,aAET,IAAK,OACH,MAAO,UAET,IAAK,SACH,MAAO,mBAET,IAAK,SACH,MAAO,UAET,QAEE,MAAO,gBC/BAC,GAA0F,SAAAhsF,GAA4B,IAAzBsrF,EAAyBtrF,EAAzBsrF,SAAUhsB,EAAet/D,EAAfs/D,SAAeurB,EACpGC,eAArBngG,EADyHkgG,EACzHlgG,QAAS+K,EADgHm1F,EAChHn1F,QACTqoD,EAAeN,cAAfM,WACFwtC,EAAmBhvC,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEhV,OAAOohG,mBAClDF,EAAiB31F,IAAY61F,EAC7BU,EAAW1vC,YAAiB,SAAAp9C,GAAC,OAAIsrF,GAAiBtrF,EAAGzJ,GAAW,MAL2DgmD,EAM/FC,mBAAsC,QANyDC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAM1HqwC,EAN0HnwC,EAAA,GAM/GswC,EAN+GtwC,EAAA,GAQjIwB,oBAAU,WACR8uC,EAAaD,IACZ,CAACA,IAEJ,IAAME,EAAsB/nF,sBAAY,WACtC25C,EAAW4rC,KAAKz9E,eAAc,EAAM,CAAEvhB,UAAS+K,YAC/CqoD,EAAW7zD,MAAMgiG,aAAaH,EAAW,CAAEr2F,YAC3C02F,EAAeL,IACd,CAACphG,EAAS+K,EAASqoD,EAAW4rC,KAAMoC,IAEjCM,EAAgBjoF,sBAAY,WAChC25C,EAAW7zD,MAAMshB,YAAY7gB,IAE5B,CAACA,EAASozD,EAAW7zD,MAAO6hG,IAEzBO,EAAyBloF,sBAAY,WACzC25C,EAAW7zD,MAAMihB,eAAekgF,OAAgBntH,EAAYw3B,IAC3D,CAAC21F,EAAe31F,EAASqoD,EAAW7zD,MAAO6hG,IAQxCQ,EAAyB,WAC7B,OACE5qF,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGgqF,GAAkB9uF,IAAI,SAACyvF,EAA8Bv8F,GAA/B,OACpB0R,EAAA1P,EAAA2P,cAAA,UAAQwB,QAAS,kBAVA,SAACopF,GACzBzuC,EAAW7zD,MAAMgiG,aAAaM,EAAa,CAAE92F,YAC7Cw2F,EAAaM,GACbJ,EAAeI,GAOeC,CAAkBD,IAAc7iG,IAAKsG,GAA5D,OAAyE0R,EAAA1P,EAAA2P,cAAA,KAAGG,MAAO,CAAE2gE,MAAOopB,GAAoBU,IAAgBvpF,UAAU,qBAK7Im2C,EAAW4B,qBAAW0xC,MACtBjiG,EAAc8xD,YAAiBowC,KAC7B5rH,EAAS+pH,eAAT/pH,KACFqrH,EAAiB,SAACL,GAEtB,GAAIphG,GAAWF,EAAa,CAC1B,IAAMmiG,EAAmB,CACvBniG,YAAaA,EACbE,QAASA,EACTsiE,UAAWlsF,EACX8lF,cAAe,IAEjBzN,EAASyzC,KAAYhlF,YAAY+kF,EAAiB/lC,gBAClD9I,EAAWzzD,SAASJ,MAAM4iG,gBAAgBF,KAG9C,OACEjrF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACE+qF,cAAe,CACbC,sBAAuB,sBACvBx5F,MAAO83F,EAAW,SAAW,QAE/B2B,UAAU,QACV/tB,QAASv9D,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,iCACpBlB,OAAQupF,GAAcC,IAAoBF,OACwCntH,EAAhF,CAAEwkG,MAAOopB,QAAiC5tH,IAAb+tH,EAAyBA,EAAWF,QAEnET,GAAa3pF,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KAAEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoB,QAAS+oF,EAAqBlpF,UAAWq8D,EAAW,WAAa,IAA/E,yBACf39D,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,kBAEGuqF,MAGJjB,GACC3pF,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoB,QAAS+oF,EAAqBlpF,UAAWq8D,EAAW,WAAa,IAA/E,sBACA39D,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoB,QAASipF,GAAvB,qBACA1qF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoB,QAASkpF,GAAyBjB,EAAgB,mBAAqB,oBACrF1pF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,kBAEGuqF,QChFAW,GAA6E,SAAAltF,GAA0C,IAAvCmtF,EAAuCntF,EAAvCmtF,oBAAqBC,EAAkBptF,EAAlBotF,YACxGziG,EAAYmgG,eAAZngG,QACAozD,EAAeN,cAAfM,WAEF/yC,EAAc+yC,EAAW7zD,MAAM8gB,YAC/BykE,EAAoBlzB,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEgwD,GAAG/kE,UAAUwoE,WACzDy6B,EAAejpF,sBAAY,WAC/B+oF,KACC,CAACA,IAEEG,EAAalpF,sBAAY,WAC7B25C,EAAW4rC,KAAK19E,aAAa,CAAEktD,QAAQ,KACtC,CAACpb,EAAW4rC,OAEf,OACEhoF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACE+qF,cAAe,CACbC,sBAAuB,sBACvBx5F,MAAO,WAETy5F,UAAU,QACV/tB,QAASv9D,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,uBAErBmqF,GAAezrF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoB,QAASiqF,GAAvB,mBACd5d,GAAqB9tE,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoB,QAASkqF,GAAvB,qBACrB7d,GAAqB9tE,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoB,QAAS,kBAAM4H,EAAYrgB,KAAzC,UACtB8kF,GAAqB9tE,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,gCAAwCL,EAAA1P,EAAA2P,cAAA,KAAGG,MAAO,CAAE2gE,MAAO,iBAAmBz/D,UAAU,kBC1BvGsqF,GAA0D,SAAAvtF,GAAuB,IAApBqwD,EAAoBrwD,EAApBqwD,KAAMG,EAAcxwD,EAAdwwD,QAC9E,OAAKH,EAKH1uD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMjB,GAASH,MAAI,GACjC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBC,OAAQpB,EAASqB,aAAW,GACjDlwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,yBAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,SACED,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,MAAlB,+BAEFtB,EAAA1P,EAAA2P,cAAA,kGACAD,EAAA1P,EAAA2P,cAAA,6CAEFD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,YAAYnvD,QAASotD,GAArC,SAGA7uD,EAAA1P,EAAA2P,cAACoiE,GAAD,CAA4B/gE,UAAU,kBAAkBG,QAAS,kBAAMotD,MAAvE,iCAnBG,MCREg9B,GAAyB,WACpC,IAAM7iG,EAAUyrF,eAGhB,MAAO,CACLlV,QAFc3kB,YAAiB,SAAAp9C,GAAC,OAAI0nD,KAAc4mC,YAAYtuF,EAAGxU,MAE7C,GACpB+iG,YAAan0B,OCOJo0B,GAAuE,SAAA3tF,GAM9E,IALJ4tF,EAKI5tF,EALJ4tF,WACAC,EAII7tF,EAJJ6tF,cACA56B,EAGIjzD,EAHJizD,SACA66B,EAEI9tF,EAFJ8tF,cACAC,EACI/tF,EADJ+tF,UACIlD,EACqCC,eAAjCngG,EADJkgG,EACIlgG,QAAS+K,EADbm1F,EACan1F,QAAS30B,EADtB8pH,EACsB9pH,KAAM01B,EAD5Bo0F,EAC4Bp0F,KAC1BG,EAASo3F,eACT/gC,EAAYlsF,EAEZy/B,EAAcO,kBAAQ,WAC1B,OAAOnK,EAAS,CAAE6M,MAAO7M,EAAOA,OAAQH,KAAMG,GAAW,IACxD,CAACH,IAEIsnD,EAAeN,cAAfM,WAGF3E,EAAW4B,qBAAW0xC,MACtBjiG,EAAc8xD,YAAiBowC,KAC/BsB,EAAqBhhC,IAAc75E,IAAUgF,YAC3C8oF,EAAYssB,KAAZtsB,QASFhU,EAAe3Q,YAAiB6a,IAEhCk0B,EAAW/uC,YAAiB,SAAAp9C,GAAC,OAAIq9C,IAAgB8uC,SAASnsF,EAAzBq9C,CAA4B7xD,KAC7DujG,EAAkB3xC,YAAiB,SAAAp9C,GAAC,OAAIq9C,IAAgB0xC,gBAAgB/uF,EAAGxU,KAE3EwhG,EAAsB/nF,sBAAY,WACtC25C,EAAW4rC,KAAKz9E,eAAc,EAAM,CAAEvhB,UAAS+K,aAC9C,CAAC/K,EAAS+K,IA/BTgmD,EAiCoCC,oBAAS,GAjC7CC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAiCG8nB,EAjCH5nB,EAAA,GAiCiBuyC,EAjCjBvyC,EAAA,GAmCE9zC,EAAiB1D,sBAAY,WACjC+pF,GAAiB3qB,IAChB,CAACA,EAAc2qB,IArCdhxB,EAuCkDxhB,oBAAS,GAvC3DyhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAuCGixB,EAvCHhxB,EAAA,GAuCwBixB,EAvCxBjxB,EAAA,GAwCEkxB,EAA4BlqF,sBAAY,WAC5CiqF,GAAwBD,IACvB,CAACA,EAAqBC,IAEzBtxC,aAAkB,GAAAnzE,OAAI+gB,EAAJ,uBAAkC,CAClD64E,eACA74E,UACAijG,aACAC,gBACAvC,WACA4C,oBAKF,IAAMK,EAAuBnqF,sBAC3B,SAAC/9B,GACC,GAAIm6B,EAAa,CACf,IAAMosF,EAAmB,CACvBniG,YAAaA,GAAe,GAC5BE,UACAsiE,YACApG,cAAc74E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACTkzF,EADQ,CAEXstB,sBAAuBttB,EAAQstB,uBAC5B3nC,KAHQ,CAIXrb,YAAanlE,EAAOs4B,SAIxBy6C,EAASyzC,KAAYhlF,YAAY+kF,EAAiB/lC,gBAClD9I,EAAWzzD,SAASJ,MAAM4iG,gBAAgBF,KAG9C,CAACpsF,EAAaqmD,KAAel8D,EAASsiE,EAAWxiE,EAAa2uD,EAAU2E,IAGpEqvC,EAAcrsF,kBAAQ,uBAAwB7iC,IAAlB2vH,GAA+B3pF,IAAEza,KAAKokG,GAAe/rF,OAAS,GAAG,CAAC+rF,IACpG,OACElsF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KAAaixD,GACbtxD,EAAA1P,EAAA2P,cAAC6sF,GAAA,mBAAD,CAAoBp+B,KAAMmT,EAAckrB,iBAAkB5mF,EAAgB+lF,cAAeA,IACzFlsF,EAAA1P,EAAA2P,cAAC+sF,GAAD,CAAqBt+B,KAAM+9B,EAAqB59B,QAAS89B,IACzD3sF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACbtB,EAAA1P,EAAA2P,cAAA,UACGqsF,GACCtsF,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,UACZtB,EAAA1P,EAAA2P,cAAA,WACED,EAAA1P,EAAA2P,cAAA,8BACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEiB,UAAU,wCACVpgC,QA5EI,CACpB,CAAE4gC,MAAO,KAAM9E,MAAO,IACtB,CAAE8E,MAAO,KAAM9E,MAAO,IACtB,CAAE8E,MAAO,KAAM9E,MAAO,IACtB,CAAE8E,MAAO,MAAO9E,MAAO,KACvB,CAAE8E,MAAO,MAAO9E,MAAO,IAwEPwF,SAAU,SAAC99B,GAAD,OAA8CkoH,EAAqBloH,IAC7Es4B,MAAOuiE,EAAQ11B,YACftrC,YAAqC,IAAxBghE,EAAQ11B,YAAoB,MAAQ01B,EAAQ11B,YACzDojD,cAAc,OAMvB1hC,GACCvrD,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAAA,UACEqB,UAAU,sBACVzP,MAAM,6BACN4P,QAASkrF,GAET3sF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,6BAIlB2qF,GAActC,GACb3pF,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAACitF,GAAD,CAAsBvD,SAAUA,EAAUhsB,SAAU4uB,OAGrDN,IAAetC,IAChB3pF,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAAA,UACEqB,UAAS,uBAAAr5B,OAAyBgkH,IAAeM,EAAkB,GAAK,YACxE16F,MAAOo6F,EAAa,eAAiB,4BACrCtuB,UAAWsuB,GAAcM,EACzB9qF,QAASwqF,IAAeM,EAAkB/B,OAAsBjuH,EAChE6C,KAAK,UAEL4gC,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,qCAIlB6qF,GACCnsF,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAS,sBAAyBzP,MAAO,UAAW4P,QAAS2qF,EAAWhtH,KAAK,UACnF4gC,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,kBAInBtB,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAACktF,GAAD,CAAuB1B,YAAaA,EAAaD,oBAAqBrlF,SCvJrEinF,GAAmE,SAAA/uF,GAA4D,IAAzDj/B,EAAyDi/B,EAAzDj/B,KAAM6sH,EAAmD5tF,EAAnD4tF,WAAYtC,EAAuCtrF,EAAvCsrF,SAAUloF,EAA6BpD,EAA7BoD,QAAS4rF,EAAoBhvF,EAApBgvF,cAAoBnE,EAC7GC,eAArBngG,EADkIkgG,EAClIlgG,QAAS+K,EADyHm1F,EACzHn1F,QACXu5F,EAAc1yC,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEhV,OAAO+kG,kBAC7CC,EAAc5yC,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEhV,OAAOilG,kBAC7CC,EAAsBJ,GAAev5F,IAAYu5F,EAAYv5F,QAC7D45F,EAAoB1B,IAAeyB,KAAyBF,GAAepuH,IAASouH,EAAYpuH,MAChGwuH,EAAgBF,GAAuBJ,GAAeA,EAAYtkG,UAAYA,EAC9E6kG,EAAiBzuF,kBAAQ,WAC7B,OAAIuuF,EACK,EAELC,EACK,EAEF,GACN,CAACD,EAAmBC,IAEvB,OACE5tF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAS,6BAAAr5B,OAA+Bs6B,IAAEvE,IAAI,CAAC,GAAI,GAAI,oBAAqB6vF,IAAnE5lH,OAAqF0hH,GAAY+D,EAAsB,iBAAmB,IAAMjsF,QAASc,IAAEvE,IAAI,CAACyD,EAAS4rF,OAAe9wH,GAAYsxH,GAAiBh8F,MAAO0Q,IAAEvE,IAAI,CAAC,qBAAsB,iBAAkB,6BAA8B6vF,IACrT7tF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAS,OAAAr5B,OAASs6B,IAAEvE,IAAI,CAAC,UAAW,UAAW,aAAc6vF,QCtBzDC,GAAsC,SAAAzvF,GAA0B,IAAvBj/B,EAAuBi/B,EAAvBj/B,KAAM6sH,EAAiB5tF,EAAjB4tF,WAAiB/C,EAC9CC,eAArBngG,EADmEkgG,EACnElgG,QAAS+K,EAD0Dm1F,EAC1Dn1F,QACTqoD,EAAeN,cAAfM,WACF2xC,EAActrF,sBAAY,WAE9B25C,EAAW7zD,MAAMqhB,UAAU5gB,EAAS+K,IACnC,CAAC/K,EAAS+K,IACPi6F,EAAkBvrF,sBAAY,WAElC25C,EAAW4rC,KAAKz9E,eAAc,IAC7B,IACGo/E,EAAW/uC,YAAiB,SAAAp9C,GAAC,OAAIq9C,IAAgB8uC,SAASnsF,EAAzBq9C,CAA4B7xD,KACnE,OACEgX,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,8CACbtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,uBAEftB,EAAA1P,EAAA2P,cAACguF,GAAD,CAAkB7uH,KAAMA,EAAM6sH,WAAYA,EAAYtC,SAAUA,EAAUloF,QAASssF,EAAaV,cAAeW,MCpBxGE,GAAgF,SAAA7vF,GAAgB,IAAb0nC,EAAa1nC,EAAb0nC,OACtF/8C,EAAYmgG,eAAZngG,QAIR,OAFAoyD,aAAkB,GAAAnzE,OAAI+gB,EAAJ,4BAAuC,CAAEA,UAAS+8C,WAE/DA,EAGE/lC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KAAGqC,IAAExI,SAASgsC,GAAU/lC,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KAAkB0lC,GAA4BA,GAFpE,MCREooD,GAGR,SAAA9vF,GAAgC,IAA7B+vF,EAA6B/vF,EAA7B+vF,mBAAoBC,EAAShwF,EAATgwF,GACpBC,EAAe1zC,YAAiBwzC,GAA0C,SAAClxH,GAAD,OAAsB,IACtG,OACE8iC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGouF,GAAuB,OAAPD,GACfruF,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,YACZtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,iCAAiCzP,MAAM,mBAGvDy8F,GAAuB,QAAPD,GACfruF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,YACbtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,iCAAiCzP,MAAM,qBCYjD08F,GAAkC,SAAAlwF,GAYzC,IAXJizD,EAWIjzD,EAXJizD,SACA5E,EAUIruD,EAVJquD,YACAp4D,EASI+J,EATJ/J,KACA3L,EAQI0V,EARJ1V,SACA2Y,EAOIjD,EAPJiD,UACA2qF,EAMI5tF,EANJ4tF,WACAE,EAKI9tF,EALJ8tF,cACAC,EAII/tF,EAJJ+tF,UACArmD,EAGI1nC,EAHJ0nC,OAEG3iC,GACC/E,EAFJ+vF,mBAEI/hH,OAAAg2B,GAAA,EAAAh2B,CAAAgyB,EAAA,kIACErV,EAAUoiF,aAAc,WAD1BojB,EAEkClG,eAA9BmG,EAFJD,EAEIC,WAAsBttE,EAF1BqtE,EAEgBrV,SACdplF,EAAU6mD,YAAiB,SAAAp9C,GAAC,OAAIorF,YAAaprF,EAAGxU,KAChD0lG,EAAiB9zC,YAAiB,SAAAp9C,GAAC,OAAImrF,GAAYnrF,EAAGzJ,GAAW,MACjE46F,EAAgB/zC,YAAiB,SAAAp9C,GAAC,OAAIsrF,GAAiBtrF,EAAGzJ,GAAW,MACnEkB,EAAW25F,eAAX35F,OAKF45F,EAAmBD,eACjBn3C,EAAaqE,cAAbrE,SACRgE,oBAAU,WACR,GAAIizC,GAAkBz5F,GAAUy5F,EAAez5F,SAAWA,EAAOA,OAAQ,CAEvEksB,EAAI,SAAUutE,EAAgB,CAAErb,SAAS,IACzC,IAAMyb,EAAY,CAChBh6F,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAwiH,EADD,CAEF55F,OAAQy5F,KAIZj3C,EAAS3uC,IAAaM,YAAY,CAAEpgB,UAAS8lG,aAAa,CAAEzb,SAAS,OAEtE,CAACqb,EAAgBz5F,IACpBwmD,oBAAU,WACJkzC,IACFxtE,EAAI,cAAewtE,EAAe,CAAEtb,SAAS,IAC7C57B,EACE3uC,IAAaM,YACX,CAAEpgB,UAAS8lG,UAAW,CAAEh6F,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAMwiH,EAAP,CAAqB9F,YAAa4F,MAC9D,CAAEtb,SAAS,OAIhB,CAACsb,IACJ,IAAM36B,EAAQC,cACdlG,IAAS,YAEHrB,GAAep4D,GAAQ3L,IAEzB8lG,EADc,CAAE35F,KAAM43D,GAAe,GAAIp4D,KAFzBA,GAAc,GAE4B3L,eAK9DyyD,aAAkB,GAAAnzE,OAAI+gB,EAAJ,UAAA3c,OAAAy0B,EAAA,EAAAz0B,CAAA,GAA0B+2B,IA/CxC,IAAA22C,EAgD8BC,mBAASz3C,IAAE46B,SAASn0C,IAhDlDixD,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAgDGg1C,EAhDH90C,EAAA,GAgDc+0C,EAhDd/0C,EAAA,GAuDEg1C,EAAc,CAClBhD,aACAG,UARoB3pF,sBAAY,WAChCusF,EAAazsF,IAAE46B,SAASn0C,IACpBojG,GACFA,KAED,CAACA,IAIFD,iBAGF,OACEnsF,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACivF,GAAD,CAAiBlmG,QAASA,EAASgrE,MAAOA,IAC1Ch0D,EAAA1P,EAAA2P,cAACkvF,GAAD,CAAqB7tF,UAAWA,GAC9BtB,EAAA1P,EAAA2P,cAACmvF,GAAD/iH,OAAA8F,OAAA,GAAwBixB,EAAW6rF,GACjCjvF,EAAA1P,EAAA2P,cAACovF,GAAD,CAAyBtpD,OAAQA,IACjC/lC,EAAA1P,EAAA2P,cAACqvF,GAAD,CAAcjB,GAAG,MAAMD,mBAAoB,kBAAM,MAEnDpuF,EAAA1P,EAAA2P,cAACD,EAAA1P,EAAM4P,SAAP,CAAgBlY,IAAK+mG,GAAYz9B,GACjCtxD,EAAA1P,EAAA2P,cAACsvF,GAAD,CAAWnwH,KAAMgkC,EAAMhkC,KAAM6sH,WAAYA,OC5G3CuD,GAAe,SAACtyH,GAAD,OAA4BA,GAC3CuyH,GAAYtiC,0BAChBqiC,GACA,SAAAj4E,GAAC,OAAIA,EAAEtiB,SAEHy6F,GAAWxZ,YAAmBsZ,GAAc,SAAAj4E,GAAC,OAAIA,EAAElE,QACnDs8E,GAAgBzZ,YAAmBsZ,GAAc,SAAAj4E,GAAC,OAAIA,EAAEs2C,aACxD+hC,GAAc1Z,YAAmBsZ,GAAc,SAAAj4E,GAAC,OAAIA,EAAEguC,WAC/CsqC,GAAsB,CACjC56F,OAAQw6F,GACRK,WAAY5Z,YAAmBuZ,GAAW,SAAAl4E,GAAC,OAAKA,EAAIA,EAAEtiB,YAAS14B,IAC/D82C,MAAO6iE,YAAmBwZ,GAAU,SAAAp8E,GAAC,OAAKA,QAAQ/2C,IAClDsxF,WAAYqoB,YAAmByZ,GAAe,SAAAnK,GAAC,OAAIA,IACnDjgC,SAAU2wB,YAAmBuZ,GAAWG,GAAa,SAACpyF,EAAGtL,GACvD,OAAa,IAANA,QAAoB31B,IAANihC,uBCkBZuyF,GAAe,sDAzBlBC,UAA6B,QAC7BC,WAAiD,uDAC3CC,EAAyBC,GACrCh4E,KAAK63E,UAAYztF,IAAE6tF,OAAF,GAAAnoH,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAa8rC,KAAK63E,WAAlB,CAA6BE,IAAW,SAAA1sF,GAAC,OAAIA,EAAExa,UAChE,IAAMopB,EAAO+F,KAAK83E,WAAWC,EAASn8F,SAClCo8F,GAAiB/9E,GACnB89E,EAASz4C,SAASrlC,kCAGRppB,GACZmvB,KAAK63E,UAAYztF,IAAE3E,OAAOua,KAAK63E,UAAW,SAAAxsF,GAAC,OAAIA,EAAExa,UAAYA,qCAE/C+K,EAAiBi9B,GAC/B,IAAMq/D,EAAMl4E,KAAK63E,UAAUpyF,OAAO,SAAA4F,GAAC,OAAIA,EAAEzP,UAAYA,IACrDokB,KAAK83E,WAAWl8F,GAAWi9B,EACvBq/D,GAAOA,EAAIlwF,OAAS,EACtBkwF,EAAIv7C,QAAQ,SAAAtxC,GACVA,EAAEi0C,SAASzmB,KAGbxb,QAAQC,IAAI,6BAA8Bub,EAAQ,WAAYj9B,uBCtBvDu8F,GAAc,SAACr7F,GAC1B,IAAMs7F,EAAmB31C,YAAiB,SAACp9C,GAAD,OAAkBgzF,YAAWhzF,EAAGvI,EAAOA,UAEzEmnD,EAAeN,cAAfM,WACFq0C,EAAoBhuF,sBAAY,WAChCxN,IACEs7F,EACFn0C,EAAWj0C,UAAUkE,OAAOpX,EAAOA,QAEnCmnD,EAAWj0C,UAAU4D,IAAI9W,KAG5B,CAACmnD,EAAYm0C,EAAkBt7F,IAClC,MAAO,CAACs7F,EAAkBE,IClBfC,GAA4E,SAAAryF,GAA2B,IAAxBpJ,EAAwBoJ,EAAxBpJ,OAAQqM,EAAgBjD,EAAhBiD,UAAgBqvF,EAEvEL,GAAYr7F,GAF2D27F,EAAAvkH,OAAAqoD,EAAA,EAAAroD,CAAAskH,EAAA,GAE3GJ,EAF2GK,EAAA,GAEzFC,EAFyFD,EAAA,GAclH,OACE5wF,EAAA1P,EAAA2P,cAAA,UAAQwB,QAASovF,EAAgBzxH,KAAK,SAASkiC,UAAWA,GACxDtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAS,GAAAr5B,OAAKsoH,EAAmB,MAAQ,MAAhC,+CCXlBvyC,KAAMl8B,OAAOgvE,MAEN,IAAM3tE,GAA0C,SAAA9kB,GAAgB,IAAbpJ,EAAaoJ,EAAbpJ,OAClD87F,EAAYC,aAAa/7F,GADsC8kD,EAEnBC,oBAAS,GAFUC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAE9Dk3C,EAF8Dh3C,EAAA,GAE3Ci3C,EAF2Cj3C,EAAA,GAG/DxQ,EAAOrqC,kBAAQ,kBAAO2xF,QAAwBx0H,GAAY,CAACw0H,IAE3DvyH,EAAOw/E,KAAM+yC,EAAW,uBAAuBr6E,OAAO,uBAAyB,IAG/Ey6E,EAAY1nD,GAAQuU,KAAMvU,EAAM,uBAAuB/yB,OAAO,uBAAyB,IACvFC,EAAkB,IAAIyQ,KAAK5oD,GAGzB4yH,EADQC,wBAAax5D,MACrBu5D,cAEJE,GAAO,IAAIlqE,MAAOmqE,mBAAmB,QAAS,CAAEC,aAAc,UAAWxsE,MAAM,KAAK,GAElFysE,EAAevuB,iBAAuB,MAE5C,OACEljE,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG6wF,GACC/wF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,WAAWm8D,IAAKg0B,GAC7BzxF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,oBACbtB,EAAA1P,EAAA2P,cAAA,UAAQ7gC,KAAK,SAASqiC,QAAS,kBAAMyvF,GAAqB,MACtD3yC,GAAQ5nC,IAAc3W,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,kBAAkB08C,KAAMmzC,GAAWz6E,OAAO,gBAClF1W,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,kBACb08C,KAAMmzC,GAAWz6E,OAAO,aAAc,IACtC46E,IAAcF,GAAiBA,EAAgBA,EAAc,GAAGnpG,QAAQ,IAAY,IAAM,UAWrG+X,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAASohC,EAAsBxiC,KAAMuiC,GAC1CjxF,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,6BAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,WACED,EAAA1P,EAAA2P,cAAA,0KC5CCyxF,GAAsB,SAACpG,EAAsCtuF,EAA2B97B,GAAiC,IAAAywH,EAN7F,SAACzwH,GAGxC,MAAO,CAAE0wH,QAFO1wH,GAAWA,EAAQ0wH,QAAU1wH,EAAQ0wH,QAAU,WAE7CC,UADA3wH,GAAWA,EAAQ2wH,UAAY3wH,EAAQ2wH,UAAY,YAKtCC,CAA0B5wH,GAAjD0wH,EAD4HD,EAC5HC,QAASC,EADmHF,EACnHE,UACXE,KAAe7wH,IAAWA,EAAQ6wH,cAF4Fh4C,EAGxFC,mBAAS,IAH+EC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAG7Hi4C,EAH6H/3C,EAAA,GAG7Gg4C,EAH6Gh4C,EAAA,GAI9Hi4C,EAAehvB,mBA8BrB,OA7BAznB,oBAAU,WACR,GAAI6vC,EAAW,CASb2G,OAPkB11H,IAAd+uH,EACS,GACY,SAAdA,EACEuG,EAEAD,IAGQ,IAAjBG,IACEG,GAAgBA,EAAa3yB,SAC/BoB,aAAauxB,EAAa3yB,SAG5B2yB,EAAa3yB,QAAUqB,WAAW,WAChCqxB,EAAiB,UAhCA,MAqCvB,OAAO,WACDC,GAAgBA,EAAa3yB,SAC/BoB,aAAauxB,EAAa3yB,WAG7B,CAAC+rB,EAAWuG,EAAWD,EAAS50F,IAE5Bg1F,GAEIG,GAAsB,SAACn1F,EAA2B97B,GAAiC,IAAAs6F,EACtDxhB,qBADsDyhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GACvFjpD,EADuFkpD,EAAA,GACzE22B,EADyE32B,EAAA,GAAAG,EAE5D5hB,qBAF4D6hB,EAAAxvF,OAAAqoD,EAAA,EAAAroD,CAAAuvF,EAAA,GAEvF0vB,EAFuFzvB,EAAA,GAE5Ew2B,EAF4Ex2B,EAAA,GAe9F,OAZApgB,oBAAU,WACJz+C,GAASA,IAAUuV,SACAh2C,IAAjBg2C,EACF8/E,OAAa91H,GACJg2C,EAAevV,EACxBq1F,EAAa,QACJ9/E,EAAevV,GACxBq1F,EAAa,MAEfD,EAAgBp1F,KAEjB,CAACA,EAAOuV,IACJm/E,GAAoBpG,EAAWtuF,EAAO97B,IAElCoxH,GAAsJ,SAAAj0F,GAA2D,IAAxDrB,EAAwDqB,EAAxDrB,MAAOsuF,EAAiDjtF,EAAjDitF,UAAWpqH,EAAsCm9B,EAAtCn9B,QAASqxH,EAA6Bl0F,EAA7Bk0F,aAAcjhC,EAAejzD,EAAfizD,SACvM0gC,EAAiBN,GAAoBpG,EAAWtuF,QAASzgC,EAAW2E,GAC1E,OAAO8+B,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAS,GAAAr5B,OAAK+pH,EAAL,KAAA/pH,OAAuBsqH,GAAgB,KAAOjhC,IAYxDkhC,GAAmE,SAAAtvF,GAA0D,IAAvDlG,EAAuDkG,EAAvDlG,MAAOs0D,EAAgDpuD,EAAhDouD,SAAUpwF,EAAsCgiC,EAAtChiC,QAASqxH,EAA6BrvF,EAA7BqvF,aAAiBnvF,EAAY/2B,OAAAg2B,GAAA,EAAAh2B,CAAA62B,EAAA,+CAAA84D,EACtGhiB,mBAAS52C,EAAMqvF,WADuFx2B,EAAA5vF,OAAAqoD,EAAA,EAAAroD,CAAA2vF,EAAA,GACjIy2B,EADiIx2B,EAAA,GACtHy2B,EADsHz2B,EAAA,GAAA02B,EAEtG34C,qBAFsG44C,EAAAvmH,OAAAqoD,EAAA,EAAAroD,CAAAsmH,EAAA,GAEjIrH,EAFiIsH,EAAA,GAEtHP,EAFsHO,EAAA,GAkBxI,OAfAn3C,oBAAU,WACJz+C,GAASA,IAAUy1F,SACHl2H,IAAdk2H,EACFJ,OAAa91H,GACJk2H,EAAYz1F,EACrBq1F,EAAa,QACJI,EAAYz1F,GACrBq1F,EAAa,WAES91H,IAApB6mC,EAAMqvF,WACRC,EAAa11F,KAGhB,CAACA,EAAOy1F,IAGTzyF,EAAA1P,EAAA2P,cAAC4yF,GAAD,CAAa71F,MAAOA,EAAOsuF,UAAWA,EAAWpqH,QAASA,EAASqxH,aAAcA,GAK9EjhC,ICjGMwhC,GAA2D,SAAAz0F,GAAgB,IAAbpJ,EAAaoJ,EAAbpJ,OACjEiyB,EAAU6rE,aAA0B99F,GAApCiyB,MAER,OACElnB,EAAA1P,EAAA2P,cAAC+yF,GAAD,CAAkBh2F,MAAOkqB,GACvBlnB,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,UAChBtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,YAAhB,KACAtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOkqB,EAAOxQ,QAAM,OCsBvBu8E,GAAuE,SAAA50F,GAe9E,IAdJ60F,EAcI70F,EAdJ60F,UACA5nC,EAaIjtD,EAbJitD,UACAr2D,EAYIoJ,EAZJpJ,OACAswD,EAWIlnD,EAXJknD,SACA3kD,EAUIvC,EAVJuC,SACArC,EASIF,EATJE,YACAE,EAQIJ,EARJI,qBACAC,EAOIL,EAPJK,MACA8B,EAMInC,EANJmC,QACA2yF,EAKI90F,EALJ80F,gBACAC,EAII/0F,EAJJ+0F,SACAC,EAGIh1F,EAHJg1F,YACAC,EAEIj1F,EAFJi1F,SACA3yF,EACItC,EADJsC,OAEMhC,EAASC,eACTC,EAAc5J,EAASA,EAAOA,OAAS,GACvCgK,EAAcC,aAASL,GACvBM,EAAoBC,kBAAQ,WAChC,OAAOnK,EAASoK,aAAepK,GAAQ,QAAQ14B,GAC9C,CAAC04B,IACEqK,EAAOF,kBAAQ,WACnB,MAAO,CAAErK,UAAW2J,IACnB,CAACA,IAEJ,OACEsB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACbtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAiBiB,UAAU,YAAYiyF,aAAiBjoC,IACxDtrD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,YACbtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,KACGklD,GACCvlD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEG,QAASA,EACTlB,KAAMA,EACNmB,cAAe,EACf9B,OAAQ,SAAC3B,EAAe0D,GAKtB,YAJiBnkC,IAAb+2H,GACFA,EAASt2F,EAAO0D,GAGX/B,EAAO3B,EAAO0D,IAEvBC,OAAQA,EACR3D,MAAOmC,EACPyB,SAAUA,EACVnC,qBAAsBA,EACtBF,YAAaA,EACbtJ,OAAQ4J,EACRuC,UAAW,OAKlBnM,GAAUgK,GACTe,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,2BACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UACbtB,EAAA1P,EAAA2P,cAAA,cAAShL,EAAOA,SAElB+K,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,cAAczP,MAAOoD,EAAO12B,MACxC02B,EAAO12B,QAGG,IAAd20H,GACClzF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,sBACbtB,EAAA1P,EAAA2P,cAACuzF,GAAD,CAAav+F,OAAQA,EAAOA,SAC5B+K,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,oBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,cACbtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAcrD,MAAOiC,EAAYoR,UAAYpR,EAAYoR,UAAY,EAAGg1D,UAAQ,EAACouB,UAAQ,MAE1E,IAAhBJ,GACCrzF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,cACbtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACErD,MAAOiC,EAAYkR,iBAAmBlR,EAAYkR,iBAAmB,EACrEujF,SAAO,EACPD,UAAQ,QAOlBN,GACAnzF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,YACbtB,EAAA1P,EAAA2P,cAAC0zF,GAAD,CAAgB1+F,OAAQA,MAGd,IAAbm+F,GAAqBpzF,EAAA1P,EAAA2P,cAAC2zF,GAAD,CAAW3+F,OAAQA,EAASA,EAAOA,OAAS,KAAQ,OC1GvE4+F,GAAoD,SAAAx1F,GAAmBA,EAAhB+iD,UAAgB,IAC1EmE,EAAaqpC,eAAbrpC,SACFtwD,EAASo3F,eACPrjG,EAAYmgG,eAAZngG,QACF+K,EAAU6mD,YAAiB,SAAAp9C,GAAC,OAAIorF,YAAaprF,EAAGxU,KAEhDmhB,EADiB2xC,cAAfM,WAC0B03C,WAAW1yC,UACvC2yC,EAAetxF,sBACnB,SAACqtF,EAAoBjxF,GACf9K,GACFoW,EAAepW,EAAS8K,IAG5B,CAACsL,EAAgBpW,IAEb6M,EAAW6B,sBACf,SAACzF,GACC,IAAM6B,EAAc7B,EAAQA,EAAMlI,UAAOv4B,EACnCuzH,EAAajxF,GAAeA,EAAY5J,OAC1C66F,GAAcjxF,GAChBk1F,EAAajE,EAAYjxF,IAG7B,CAACk1F,IAEGvzF,EAAUiC,sBAAY,WAC1BsxF,EAAa,QAAIx3H,IAChB,CAACw3H,IACJ,OACE/zF,EAAA1P,EAAA2P,cAAC+zF,GAAD,CAAoB1oC,UAAW75E,IAAU6E,WAAY2e,OAAQA,EAAQswD,SAAUA,EAAU3kD,SAAUA,EAAUJ,QAASA,KCzC1H,SAAAyzF,GAAAC,EAAAC,GAA0C,IAAArsG,EAAAzb,OAAAyb,KAAAosG,GAAgC,GAAA7nH,OAAA+nH,sBAAA,CAAoC,IAAAtsD,EAAAz7D,OAAA+nH,sBAAAF,GAAoDC,IAAArsD,IAAAlqC,OAAA,SAAA66C,GAA8D,OAAApsE,OAAAgoH,yBAAAH,EAAAz7C,GAAA67C,cAAoExsG,EAAA65B,KAAAC,MAAA95B,EAAAggD,GAAkC,OAAAhgD,EAItU,SAASysG,GAAC7xF,EAAAxH,GACV,IAAAhJ,EAHA,SAAAowE,GAAgC,QAAApwE,EAAA,EAAgBA,EAAA2vB,UAAA1hB,OAAsBjO,IAAA,CAAO,IAAA8sB,EAAA,MAAA6C,UAAA3vB,GAAA2vB,UAAA3vB,GAAA,GAAuDA,EAAA,EAAa+hG,GAAAj1E,GAAA,GAAA81B,QAAA,SAAA9sD,GAAgD3b,OAAA2tB,EAAA,EAAA3tB,CAAei2F,EAAAt6E,EAAAg3B,EAAAh3B,MAAiC3b,OAAAmoH,0BAA6CnoH,OAAAooH,iBAAAnyB,EAAAj2F,OAAAmoH,0BAAAx1E,IAAoFi1E,GAAAj1E,GAAA81B,QAAA,SAAA9sD,GAAyC3b,OAAA2tB,eAAAsoE,EAAAt6E,EAAA3b,OAAAgoH,yBAAAr1E,EAAAh3B,MAA0F,OAAAs6E,EAGrfoyB,CAAA,GAA0BhyF,GAE1B,QAAAiyF,KAAAz5F,EACA,iBAAAwH,EAAAiyF,IAAA,OAAAjyF,EAAAiyF,IAAA5zF,MAAA4e,QAAAjd,EAAAiyF,SAAA,IAAAz5F,EAAAy5F,KAAAziG,EAAAyiG,GAAAz5F,EAAAy5F,IAAAziG,EAAAyiG,GAAuHJ,GAAC7xF,EAAAiyF,GAAAz5F,EAAAy5F,IAGxH,OAAAziG,EAGA,IAAI0iG,GAAC,CACLt7F,OAAA,CACAu7F,kBAAA,uIACAC,iBAAA,KAGIC,GAAC,CACLjoG,MAAA,IACA+hF,OAAA,IACAmmB,SAAA,KACA/2C,SAAA,UACA+lB,UAAA,GACAixB,aAAA,GACAC,OAAA,KACAC,UAAA,CACAl4E,SAAA,EACAm4E,WAAA,EACAC,mBAAA,CACAC,gBAAA,KAGAC,UAAA,CACAC,sCAAA,GAEAC,kBAAA,GACAC,sBAAA,CACA5kF,SAAA,GACAujB,MAAA,IAEAshE,aAAA,CACAC,YAAA,IAEAC,YAAA,EACAC,UAAA,EACAjB,kBAAA,GACAC,iBAAA,GACAiB,OAAA,EACAxhD,KAAA,GACAyhD,YAAA,EACAr2B,KAAA,KACAs2B,WAAA,MACG,CACHt2B,KAAA,KACAs2B,WAAA,MACG,CACHt2B,KAAA,KACAs2B,WAAA,OACG,CACHt2B,KAAA,KACAs2B,WAAA,MACG,CACHt2B,KAAA,KACAs2B,WAAA,MACG,CACHt2B,KAAA,KACAs2B,WAAA,KACG,CACHt2B,KAAA,KACAs2B,WAAA,MAEAC,UAAA,IACAC,QAAA,IACAC,2BAAA,MACAjuF,UAAA,CACAkuF,UAAA,GACAC,WAAA,KAGIC,IAAC,EAEL,SAASC,GAAC7hC,GACV,IAAAjyD,EACAxH,EAAA,cAAAqmB,KAAAozC,GACA,mCAAA1sF,OAAA0sF,EAAA,+BAAA1sF,OAAA,QAAAy6B,EAAA,MAAAxH,OAAA,EAAAA,EAAA,cAAAwH,IAAA,mCA0DA,IAAI+zF,GAEJ,WACA,SAAAnmG,EAAAkT,GAGA,IAAAhG,EACA,GAHInxB,OAAA6rC,GAAA,EAAA7rC,CAAe8rC,KAAA7nB,GAGnB6nB,KAAAu+E,IAAA,eAAAzuH,QAAA,WAAA6yC,KAAA67E,UAAA,GAAAt3E,SAAA,IAAAu3E,UAAA,IAAAz+E,KAAA0+E,QAAA,EAAA1+E,KAAA2+E,eAAA,GAAA3+E,KAAA4+E,gBAAA5+E,KAAA6+E,iBAAAC,KAAA9+E,OAAA3U,EAAA0zF,SAAA,UAAA78F,MAAA,2BAEA,YAAAmD,EAAAgG,EAAA+xF,iBAAA,IAAA/3F,OAAA,EAAAA,EAAA,yDAAAgY,QAAAuH,KAAA,kHAAAvZ,EAAA+xF,UAAA,uDAAAp9E,KAAAg/E,SAAgV5C,GAAEQ,GAACvxF,KAAA4zF,OAAA,CACnV,IAAAC,EAAezC,GAACpxF,EAAA4zF,QAChBC,QAAA,IAAAl/E,KAAAg/E,SAAAtC,kBAAA18E,KAAAg/E,SAAAtC,kBAAA18E,KAAAg/E,SAAAtC,kBAAA5sH,OAAAovH,EAAAxC,mBAAA18E,KAAAg/E,SAAAtC,kBAAAwC,EAAAxC,uBAAA,IAAA18E,KAAAg/E,SAAArC,iBAAA38E,KAAAg/E,SAAArC,iBAAA38E,KAAAg/E,SAAArC,iBAAA7sH,OAAAovH,EAAAvC,kBAAA38E,KAAAg/E,SAAArC,iBAAAuC,EAAAvC,kBAAAt/E,QAAAuH,KAAA,oBAAAvZ,EAAA4zF,OAAA,KAGA,SAAAj/E,KAAAg/E,SAAAG,YAAA,IAAAn/E,KAAAg/E,SAAAI,iBAAAp/E,KAAAg/E,SAAAI,eAAA,CACAh3F,gBAAA,YACK4X,KAAAg/E,SAAApB,QAA2BQ,KAAMA,IAAC,EAAA/gF,QAAAC,IAAA,wEAAA0C,KAAA8yB,UAygBvC,OAtgBE5+D,OAAAisC,GAAA,EAAAjsC,CAAYikB,EAAA,EACdtI,IAAA,eACAgV,MAAA,SAAA23D,GACAx8C,KAAAq/E,YAAAC,aAAA9iC,KAEG,CACH3sE,IAAA,eACAgV,MAAA,SAAA23D,GACAx8C,KAAA0+E,OAAAliC,EAAAzzC,KAAA/I,WAAA2+E,eAAAn1E,KAAAgzC,KAEG,CACH3sE,IAAA,cACAgV,MAAA,WACA,IAAA0f,EAAAvE,KAEA,OAAAA,KAAAu/E,mBAAAp+E,KAAA,WACA,OAAAoD,EAAAi7E,eAAAC,kBAGG,CACH5vG,IAAA,wBACAgV,MAAA,SAAA23D,GACAx8C,KAAA0/E,sBAAA,SAAAn1F,GACAA,EAAAo1F,sBAAAnjC,OAGG,CACH3sE,IAAA,aACAgV,MAAA,SAAA23D,EAAAjyD,GACAyV,KAAA4/E,yBAAA,SAAA78F,GACAA,EAAA88F,qBAAArjC,EAAAjyD,OAGG,CACH1a,IAAA,YACAgV,MAAA,SAAA23D,EAAAjyD,GACAyV,KAAA0/E,sBAAA,SAAA38F,GACAA,EAAAgwE,UAAAvW,EAAAjyD,OAGG,CACH1a,IAAA,cACAgV,MAAA,SAAA23D,EAAAjyD,GACAyV,KAAA0/E,sBAAA,SAAA38F,GACAA,EAAAg9C,YAAAyc,EAAAjyD,OAGG,CACH1a,IAAA,QACAgV,MAAA,SAAA23D,GACA,OAAAx8C,KAAAq/E,YAAAS,MAAAtjC,KAEG,CACH3sE,IAAA,cACAgV,MAAA,WACA,OAAAmb,KAAAg/E,SAAAjC,SAEG,CACHltG,IAAA,YACAgV,MAAA,SAAA23D,EAAAjyD,EAAAxH,GACAid,KAAAq/E,YAAA3d,aAAAllB,EAAAjyD,EAAAxH,KAEG,CACHlT,IAAA,SACAgV,MAAA,WACAkxD,OAAA6D,oBAAA,SAAA55C,KAAA4+E,iBAAA5+E,KAAA2+E,eAAAoB,OAAA,EAAA//E,KAAA2+E,eAAA32F,eAAA+tD,OAAA/1C,KAAAu+E,KAAAv+E,KAAAggF,QAAAC,YAAAjgF,KAAAggF,QAAAC,WAAAC,YAAAlgF,KAAAggF,WAEG,CACHnwG,IAAA,wBACAgV,MAAA,WACAmb,KAAA0/E,sBAAA,SAAAljC,GACAA,EAAA2jC,4BAGG,CACHtwG,IAAA,iBACAgV,MAAA,SAAA23D,EAAAjyD,GACAyV,KAAAq/E,YAAAe,eAAA5jC,EAAAjyD,KAEG,CACH1a,IAAA,mBACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAAgB,qBAEG,CACHxwG,IAAA,OACAgV,MAAA,SAAA23D,GACAx8C,KAAAq/E,YAAAiB,UAAA9jC,KAEG,CACH3sE,IAAA,OACAgV,MAAA,SAAA23D,EAAAjyD,GACAyV,KAAAq/E,YAAAkB,UAAA,CACAC,KAAAhkC,EACAikC,aAAAl2F,MAGG,CACH1a,IAAA,iBACAgV,MAAA,SAAA23D,GACAx8C,KAAAq/E,YAAAqB,eAAAlkC,KAEG,CACH3sE,IAAA,sBACAgV,MAAA,SAAA23D,GACAx8C,KAAAq/E,YAAAsB,oBAAAnkC,KAEG,CACH3sE,IAAA,oBACAgV,MAAA,SAAA23D,EAAAjyD,EAAAxH,GACAid,KAAAq/E,YAAAuB,kBAAApkC,EAAAjyD,EAAAxH,KAEG,CACHlT,IAAA,wBACAgV,MAAA,SAAA23D,EAAAjyD,GACAyV,KAAAq/E,YAAAwB,sBAAArkC,EAAAjyD,KAEG,CACH1a,IAAA,gBACAgV,MAAA,SAAA23D,GACAx8C,KAAA0/E,sBAAA,SAAAn1F,GACAA,EAAAu2F,cAAAtkC,OAGG,CACH3sE,IAAA,eACAgV,MAAA,SAAA23D,GACA,OAAAx8C,KAAAw/E,eAAAuB,aAAAvkC,KAEG,CACH3sE,IAAA,iBACAgV,MAAA,SAAA23D,GACA,OAAAx8C,KAAAw/E,eAAAwB,eAAAxkC,KAEG,CACH3sE,IAAA,mBACAgV,MAAA,SAAA23D,GACAx8C,KAAA0/E,sBAAA,SAAAn1F,GACAA,EAAA02F,iBAAAzkC,OAGG,CACH3sE,IAAA,oBACAgV,MAAA,SAAA23D,GACAx8C,KAAA0/E,sBAAA,SAAAn1F,GACAA,EAAA22F,kBAAA1kC,OAGG,CACH3sE,IAAA,sBACAgV,MAAA,WACAmb,KAAAq/E,YAAA8B,wBAEG,CACHtxG,IAAA,wBACAgV,MAAA,WACAmb,KAAAq/E,YAAA+B,0BAEG,CACHvxG,IAAA,iBACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAAgC,sBAEG,CACHxxG,IAAA,2BACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAAiC,6BAEG,CACHzxG,IAAA,eACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAAkC,iBAEG,CACH1xG,IAAA,iBACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAAmC,mBAEG,CACH3xG,IAAA,iBACAgV,MAAA,SAAA23D,GACA,OAAAx8C,KAAAq/E,YAAAoC,eAAAjlC,KAEG,CACH3sE,IAAA,iBACAgV,MAAA,SAAA23D,GACA,OAAAx8C,KAAAq/E,YAAAqC,eAAAllC,KAEG,CACH3sE,IAAA,mBACAgV,MAAA,SAAA23D,GACAx8C,KAAAw/E,eAAAmC,iBAAAnlC,KAEG,CACH3sE,IAAA,iBACAgV,MAAA,SAAA0F,GACAyV,KAAAg/E,SAAsB5C,GAACp8E,KAAAg/E,SAAA,CACvB5B,UAAA7yF,IACOyV,KAAA4/E,yBAAA,SAAApjC,GACPA,EAAAolC,eAAAr3F,OAGG,CACH1a,IAAA,wBACAgV,MAAA,SAAA23D,GACAx8C,KAAA4/E,yBAAA,SAAAr1F,GACAA,EAAAs3F,sBAAArlC,OAGG,CACH3sE,IAAA,YACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAApC,cAEG,CACHptG,IAAA,OACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAAlpD,SAEG,CACHtmD,IAAA,YACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAArC,cAEG,CACHntG,IAAA,cACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAAyC,gBAEG,CACHjyG,IAAA,cACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAA0C,gBAEG,CACHlyG,IAAA,SACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAA/qC,WAEG,CACHzkE,IAAA,YACAgV,MAAA,SAAA23D,GACAx8C,KAAAq/E,YAAA2C,UAAAxlC,KAEG,CACH3sE,IAAA,aACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAA4C,eAEG,CACHpyG,IAAA,cACAgV,MAAA,SAAA23D,EAAAjyD,GACA,OAAAyV,KAAAw/E,eAAA0C,YAAA1lC,EAAAjyD,KAEG,CACH1a,IAAA,WACAgV,MAAA,WACA,OAAAmb,KAAAw/E,eAAA2C,aAEG,CACHtyG,IAAA,iBACAgV,MAAA,WACAmb,KAAA0/E,sBAAA,SAAAljC,GACAA,EAAA4lC,qBAGG,CACHvyG,IAAA,sBACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAAgD,wBAEG,CACHxyG,IAAA,sBACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAAiD,wBAEG,CACHzyG,IAAA,kBACAgV,MAAA,SAAA23D,GACAx8C,KAAAq/E,YAAAkD,gBAAA/lC,KAEG,CACH3sE,IAAA,gBACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAAmD,kBAEG,CACH3yG,IAAA,aACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAAoD,eAEG,CACH5yG,IAAA,gBACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAAqD,kBAEG,CACH7yG,IAAA,4BACAgV,MAAA,SAAA23D,GACAx8C,KAAAq/E,YAAAsD,0BAAAnmC,KAEG,CACH3sE,IAAA,eACAgV,MAAA,SAAA23D,GACAx8C,KAAAq/E,YAAAuD,aAAApmC,KAEG,CACH3sE,IAAA,aACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAAwD,eAEG,CACHhzG,IAAA,eACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAAyD,iBAEG,CACHjzG,IAAA,gBACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAA0D,kBAEG,CACHlzG,IAAA,WACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAA2D,aAEG,CACHnzG,IAAA,iBACAgV,MAAA,WACA,OAAAmb,KAAAw/E,eAAAyD,mBAEG,CACHpzG,IAAA,mBACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAA6D,qBAEG,CACHrzG,IAAA,OACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAA8D,SAEG,CACHtzG,IAAA,OACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAA+D,SAEG,CACHvzG,IAAA,kBACAgV,MAAA,WACAmb,KAAAq/E,YAAAgE,oBAEG,CACHxzG,IAAA,iBACAgV,MAAA,WACAmb,KAAAq/E,YAAAiE,mBAEG,CACHzzG,IAAA,uBACAgV,MAAA,SAAA23D,GACA,OAAAx8C,KAAAq/E,YAAAkE,qBAAA/mC,KAEG,CACH3sE,IAAA,8BACAgV,MAAA,WACA,OAAAmb,KAAAw/E,eAAAgE,mCAEG,CACH3zG,IAAA,wBACAgV,MAAA,WACA,OAAAmb,KAAAw/E,eAAAiE,6BAEG,CACH5zG,IAAA,aACAgV,MAAA,WACA,OAAAmb,KAAAw/E,eAAAkE,kBAEG,CACH7zG,IAAA,sBACAgV,MAAA,WACA,OAAAmb,KAAAq/E,YAAAsE,wBAEG,CACH9zG,IAAA,YACAgV,MAAA,WACA,OAAAmb,KAAAw/E,eAAAoE,iBAEG,CACH/zG,IAAA,eACAgV,MAAA,WACA,OAAAmb,KAAAggF,QAAA6D,gBAEG,CACHh0G,IAAA,2BACAgV,MAAA,SAAA23D,GACA,IAAA/oB,EAAAzzB,KAEAA,KAAA0+E,OAAAliC,EAAAx8C,KAAAw/E,gBAAAx/E,KAAAu/E,mBAAAp+E,KAAA,WACAq7C,EAAA/oB,EAAA+rD,oBAGG,CACH3vG,IAAA,wBACAgV,MAAA,SAAA23D,GACA,IAAAsnC,EAAA9jF,KAEAA,KAAA4/E,yBAAA,SAAAr1F,GACAA,EAAAw5F,iBAAA,WACA,OAAAvnC,EAAAsnC,EAAAzE,mBAIG,CACHxvG,IAAA,mBACAgV,MAAA,WACAmb,KAAAg/E,SAAAtB,aAAA19E,KAAAggF,QAAA/3F,MAAAyuE,OAAA3gB,OAAA8e,YAAA,QAEG,CACHhlF,IAAA,UACAgV,MAAA,WACA,IAAAm/F,EAAAhkF,KAEAw8C,EAAAx8C,KAAAikF,UAEAjkF,KAAAg/E,SAAAkF,cAAA7mF,QAAAuH,KAAA,uHACA,IAAAra,EAAAyV,KAAAg/E,SAAAkF,cAAAlkF,KAAAg/E,SAAAnzB,UACA9oE,EAAA,iBAAAwH,EAAA8yC,SAAA8mD,eAAA55F,KACA,UAAAxH,EAAA,UAAAb,MAAA,+BAAApyB,OAAAkwC,KAAAg/E,SAAAnzB,YACA9oE,EAAAqhG,UAAA5nC,EAAAx8C,KAAAggF,QAAAj9F,EAAAu0E,cAAA,IAAAxnG,OAAAkwC,KAAAu+E,MACA,IAAAxkG,EAAAimB,KAAAggF,SACAhgF,KAAAg/E,SAAArB,UAAA39E,KAAAg/E,SAAAtB,cAAA3jG,EAAAkO,MAAAtT,MAAA,OAAAqrB,KAAAg/E,SAAAtB,aAAA3jG,EAAAkO,MAAAyuE,OAAA,SAAA3gB,OAAA4D,iBAAA,SAAA35C,KAAA4+E,iBAAA5+E,KAAA4+E,kBAAA5+E,KAAAu/E,mBAAA,IAAA93E,QAAA,SAAA+0C,GAKAziE,EAAA4/D,iBAAA,OAJA,SAAApvD,IACAxQ,EAAA6/D,oBAAA,OAAArvD,GAAA,GAAAiyD,MAGA,KACOx8C,KAAAu/E,mBAAAp+E,KAAA,WACP6iF,EAAAxE,eAAA6E,YAAA,WACAL,EAAAtF,QAAA,EACA,IAAA4F,GAAA,EACAC,GAAA,EACAC,OAAApgI,EAEA,IACA,QAAAqgI,EAAAC,EAAAV,EAAArF,eAAAvmF,OAAA4yE,cAAmFsZ,GAAAG,EAAAC,EAAAzjF,QAAAgqE,MAAmEqZ,GAAA,GACtJ,IAAAK,EAAAF,EAAA5/F,MAEA,IACA8/F,EAAA57E,KAAAi7E,GACe,MAAAxnC,GACfn/C,QAAAxqB,MAAA2pE,KAGW,MAAA10C,GACXy8E,GAAA,EACAC,EAAA18E,EACW,QACX,IACAw8E,GAAA,MAAAI,EAAAxZ,QACAwZ,EAAAxZ,SAEa,QACb,GAAAqZ,EACA,MAAAC,GAKAR,EAAAxE,eAAAoF,+BAIG,CACH/0G,IAAA,UACAgV,MAAA,WACA,IAAA23D,EAAAzG,OACA,GAAAyG,EAAAx8C,KAAAu+E,KAAA,CACAQ,SAAA/+E,KAAAg/E,SAAAD,SACA8F,iBAAA7kF,KAAAg/E,SAAA8F,mBAAA9kF,KAAAg/E,SAAA6F,iBACAE,cAAA/kF,KAAAg/E,SAAAgG,gBAAAhlF,KAAAg/E,SAAA+F,cACA3H,UAAAp9E,KAAAg/E,SAAA5B,UACA6H,iBAAAjlF,KAAAg/E,SAAA1B,kBACA4H,qBAAAllF,KAAAg/E,SAAAzB,sBACA4H,iBAAAnlF,KAAAg/E,SAAAtC,kBACA0I,gBAAAplF,KAAAg/E,SAAArC,iBACAa,aAAAx9E,KAAAg/E,SAAAqG,eAAArlF,KAAAg/E,SAAAxB,aACA8H,WAAAtlF,KAAAg/E,SAAAsG,WACAt1F,UAAAgQ,KAAAg/E,SAAAhvF,UACAosC,KAAAp8B,KAAAg/E,SAAA5iD,KACAmpD,mBAAAvlF,KAAAg/E,SAAAuG,mBACAC,cAAAxlF,KAAAg/E,SAAAwG,cACAC,aAAAzlF,KAAAg/E,SAAA0G,cACAC,cAAA3lF,KAAAg/E,SAAA4G,gBACAC,gBAAA7lF,KAAAg/E,SAAA8G,kBACA1G,eAAAp/E,KAAAg/E,SAAAI,eACA2G,gBAAA/lF,KAAAg/E,SAAAgH,iBACAC,oBAAAjmF,KAAAg/E,SAAAkH,yBACAC,2BAAAnmF,KAAAg/E,SAAAoH,8BACAC,wBAAArmF,KAAAg/E,SAAAsH,2BACAC,wBAAAvmF,KAAAg/E,SAAAwH,0BACAC,qBAAAzmF,KAAAg/E,SAAA0H,uBACAC,YAAA3mF,KAAAg/E,SAAA4H,aACAC,kBAAA7mF,KAAAg/E,SAAA8H,mBACAC,UAAA/mF,KAAAg/E,SAAA+H,WACO/mF,KAAAg/E,SAAAgI,WAAAxqC,EAAAx8C,KAAAu+E,KAAA0I,aAAA,CACPzG,KAAAxgF,KAAAg/E,SAAAgI,YACOhnF,KAAAg/E,SAAAkI,uBAAA1qC,EAAAx8C,KAAAu+E,KAAA4I,yBAAAnnF,KAAAg/E,SAAAkI,2BAAoH,IAAAlnF,KAAAg/E,SAAA4G,kBAAA5lF,KAAAg/E,SAAAliG,OAAA,UAAAoF,MAAA,kFAC3H8d,KAAAg/E,SAAAlC,eAAA98E,KAAAg/E,SAAAlC,aAAApV,SAAA,MAAArqE,QAAAuH,KAAA,+DACA,IAAAra,EArkBA,SAAUiyD,EAAAjyD,GACV,IA+CApQ,EA/CA4I,EAAA,IAAAqkG,IAAA,GAAAt3H,OAAA0sF,GAAA,IAAAxG,SAAA1b,WACAvgD,EAAAktB,KAAA0F,MAAA,sWACAtnB,EAAA4hB,KAAA0F,MAAA,onCACA06E,EAAAC,mBAAA/8F,GACApS,EAAAkN,EAAAzV,KAAA,SAAA4sE,GACA,OAAAA,EAAA+qC,WAAAF,IAEAthG,EAAA,SAAAj2B,OAAAqoB,EAAAqvG,IAAA,WAAA13H,OAAAqoB,EAAAsvG,IAAA,KACA3kG,EAAA,KAAAhzB,OAAA,SAAA0sF,EAAAjyD,GACA,YAAAiyD,EAAA,SACA,IAAAz5D,EAAA,GACAhJ,EAAA,GACAsL,EAAA,GACAgiG,EAAA,UACAlvG,EAAA,eACAwyF,GAAA,EACAC,GAAA,EACAC,OAAAzmH,EAEA,IACA,QAAA0mH,EAAAC,EAAAvuB,EAAApkD,OAAA4yE,cAAuDL,GAAAG,EAAAC,EAAA9pE,QAAAgqE,MAAgEN,GAAA,GACvH,IAAA+c,EAAA5c,EAAAjmF,MACA6iG,EAAAhgB,SAAA,OAAA3tF,EAAAyvB,KAAA,8CAAA15C,OAAA43H,EAAA,iBAAAL,EAAAhf,KAAAqf,IAAAn9F,IAAApS,EAAAkwF,KAAAqf,GAAAriG,EAAAmkB,KAAA,+BAAA15C,OAAA43H,EAAA,qCAAArf,KAAAqf,IAAA3kG,EAAAymB,KAAqQ60E,GAACqJ,KAEjQ,MAAA5/E,GACL8iE,GAAA,EACAC,EAAA/iE,EACK,QACL,IACA6iE,GAAA,MAAAI,EAAAG,QACAH,EAAAG,SAEO,QACP,GAAAN,EACA,MAAAC,GAKA,SAAA/6G,OAAAizB,EAAAhJ,EAAAsL,GAAA4iB,KAAA,MA/BA,CAgCGluB,EAAA,QAAA5B,EAAAsvG,KAAA,MACH,8BAAA33H,QAAAqqB,EAAA,CACAwtG,QAAA7kG,EACA8kG,eAAAP,EACAQ,UAAA9hG,EACA+hG,YAAA/kG,IACG8kG,UAAA,uBAAA/3H,OAAAqqB,EAAA2tG,YAAA,gHAAAh4H,OAAAqqB,EAAAytG,eAAA,+DAAA93H,OAAAqqB,EAAAwtG,QAAA,ggMAshBWI,CAAC/nF,KAAAg/E,SAAAlC,cAAA,GAAA98E,KAAAg/E,SAAAjC,QACfh6F,EAAA,IAAAilG,KAAA,CAAAz9F,GAAA,CACAtjC,KAAA,cAEA8yB,EAAAqtG,IAAAa,gBAAAllG,GACAsI,EAAA,IAAA+7F,IAAArtG,GACAstG,EAAA,UAAAC,mBAAAtnF,KAAAg/E,SAAAliG,QAAA,iBAAAwqG,mBAAAtnF,KAAAg/E,SAAAnC,WAAA78E,KAAAg/E,SAAAkJ,WAAA,cAAAZ,mBAAAtnF,KAAAg/E,SAAAkJ,WAAAp4G,QAAA,cAAAkwB,KAAAg/E,SAAAmJ,eAAA,kBAAAb,mBAAArgF,KAAAnJ,UAAAkC,KAAAg/E,SAAAmJ,iBAAA,kBAAAb,mBAAArgF,KAAAnJ,UAAAkC,KAAAg/E,SAAAhC,aAAAh9E,KAAAg/E,SAAAoJ,gBAAA,mBAAAd,mBAAArgF,KAAAnJ,UAAAkC,KAAAg/E,SAAAoJ,kBAAA,mBAAAd,mBAAArgF,KAAAnJ,UAAAkC,KAAAg/E,SAAAnB,cAAA,WAAAyJ,mBAAAtnF,KAAAg/E,SAAAjC,QAAA,QAAAuK,mBAAAtnF,KAAAu+E,KAAA,aAAA+I,mBAAA/5D,OAAAvtB,KAAAg/E,SAAAjB,YAAA,WAAAuJ,mBAAA/5D,OAAAvtB,KAAAg/E,SAAAhB,WAAAh+E,KAAAg/E,SAAAqJ,mBAAA,qBAAAf,mBAAAtnF,KAAAg/E,SAAAqJ,oBAAA,KAAAroF,KAAAg/E,SAAAf,2BAAA,qBAAAqJ,mBAAAtnF,KAAAg/E,SAAAf,4BAAA,KAAAj+E,KAAAg/E,SAAAsJ,eAAA,cAAAhB,mBAAAtnF,KAAAg/E,SAAAsJ,gBAAA,KAAAtoF,KAAAg/E,SAAAuJ,mBAAA,qBAAAjB,mBAAAtnF,KAAAg/E,SAAAuJ,oBAAA,KAAAvoF,KAAAg/E,SAAAwJ,gBAAA,kBAAAlB,mBAAA/5D,OAAAvtB,KAAAg/E,SAAAwJ,kBAAA,cAAAlB,mBAAA/5D,OAAAvtB,KAAAg/E,SAAApB,SAAA59E,KAAAg/E,SAAAyJ,aAAA,gBAAAnB,mBAAAtnF,KAAAg/E,SAAAyJ,cAAA,KAAAzoF,KAAAg/E,SAAAl5C,SAAA,aAAAwhD,mBAAAtnF,KAAAg/E,SAAAl5C,UAAA,KAAA9lC,KAAAg/E,SAAA0J,kBAAA,oBAAApB,mBAAA/5D,OAAAvtB,KAAAg/E,SAAA0J,oBAAA,KAAA1oF,KAAAg/E,SAAA2J,4BAAA,eAAArB,mBAAA/5D,OAAAvtB,KAAAg/E,SAAA2J,8BAAA,KAAA3oF,KAAAg/E,SAAA4J,gBAAA,mBAAAtB,mBAAArgF,KAAAnJ,UAAAkC,KAAAg/E,SAAA4J,kBAAA,KAAA5oF,KAAAg/E,SAAAG,MAAA,UAAAmI,mBAAA/5D,OAAAvtB,KAAAg/E,SAAAG,QAAA,KAAAn/E,KAAAg/E,SAAAsH,2BAAA,+BAAAgB,mBAAA/5D,OAAAvtB,KAAAg/E,SAAAsH,6BAAA,KAAAtmF,KAAAg/E,SAAA6J,WAAA,eAAAvB,mBAAArgF,KAAAnJ,UAAAkC,KAAAg/E,SAAA6J,aAAA,IACA,OAAAx9F,EAAAy9F,KAAAzB,EAAA,uBAAAv3H,OAAAkwC,KAAAu+E,IAAA,YAAAzuH,OAAAkwC,KAAAu+E,IAAA,WAAAzuH,OAAAu7B,EAAAivC,KAAA,2BAAAxqE,OAAAu3H,EAAA,aAAAv3H,OAAAkwC,KAAAg/E,SAAArB,UAAA39E,KAAAg/E,SAAAtB,WAAA,aAAA5tH,OAAAkwC,KAAAg/E,SAAArqG,MAAA,cAAA7kB,OAAAkwC,KAAAg/E,SAAAtoB,OAAA,oJAIAv+E,EAvhBA,GA0hBA49D,OAAAgzC,YAAAhzC,OAAAgzC,aAAA,GAA6ChzC,OAAAgzC,YAAAtiC,QAhiB7C,WACA,sECjJO,4GCCPuiC,GAAA7wG,EAAKwxB,OAAQs/E,GAAA9wG,GACb,IAAA+wG,GAAA,IAAAC,IACOC,GAAA,SAAAC,EAAAvL,EAAAwL,EAAAC,EAAAC,EAAAC,GACP,IAAAC,EAAA,CACAjjI,GAAA8iI,EACAjiC,SAAAgiC,GAEAK,EAAA,KAAA75H,OAAAu5H,EAAAO,SAAA,KAAA95H,OAAAu5H,EAAAjjI,KAAA,KAAA0J,OAAAu5H,EAAAjjI,KAAA,KAAA0J,OAAAguH,GACA+L,EAAAX,GAAArjG,IAAA8jG,GAEAE,EACAA,EAAAC,SAAAtgF,KAAAkgF,IAIAG,EAAA,CACAN,eACAzL,aACA2L,eACAK,SAAA,CAAAJ,IAEAR,GAAAlgF,IAAA2gF,EAAAE,KAEWE,GAAa,SAAAV,EAAAvL,EAAAwL,EAAAC,EAAAC,EAAAtuF,EAAA8uF,GACxB,IAAAryF,EAAAuD,EAAAvD,eACAsyF,EAAA/uF,EAAA+uF,aACAN,EAAA,KAAA75H,OAAAu5H,EAAAO,SAAA,KAAA95H,OAAAu5H,EAAAjjI,KAAA,KAAA0J,OAAAu5H,EAAAjjI,KAAA,KAAA0J,OAAAguH,GACA+L,EAAAX,GAAArjG,IAAA8jG,GAEA,QAAAvlI,IAAAylI,EAAA,CAIA,IAOAK,EAPAC,EAAgBnB,KAAKiB,EAAA,uBAAA1rF,OAAA,2BACrBl4C,EAAA,IAAA4oD,KAAAk7E,GACA3rF,EAAkBwqF,KAAK3iI,GACvB+jI,EAA8BpB,KAAKa,EAAAJ,aAAAn4D,MACnCA,EAAA84D,EAAAC,OAAA7rF,EAAA6rF,OAAAD,EAAA5rF,EACAirF,EAAAI,EAAAJ,aACAa,EAAA9rF,EAAA6rF,QAAAD,EAAAC,OAGAE,GAAAd,EAAAe,KAAAf,EAAA3vF,OAAA,EACA2wF,GAAAvvF,EAAAvD,eAAAuD,EAAAvD,eAAAuD,EAAAvD,eAAAuD,EAAAvD,gBAAA,EACA+yF,EAAA/nF,KAAAC,IAAA1H,EAAAvD,eAAA8xF,EAAAe,KAAAf,EAAA3vF,OACA6wF,EAAAhoF,KAAAI,IAAA7H,EAAAvD,eAAA8xF,EAAAe,KAAAf,EAAA3vF,OAGAowF,EADAI,EACA,CACAh5D,OAAArL,UACAukE,KAAA,OAAA1M,EAAA2L,EAAAe,KAAAR,EAAAO,EAAA5yF,EACAizF,KAAA,OAAA9M,EAAA2L,EAAAmB,KAAAZ,EAAAU,EAAA/yF,EACAkzF,IAAA,OAAA/M,EAAA2L,EAAAoB,IAAAb,EAAAW,EAAAhzF,EACAmC,MAAAkwF,EAAAS,EAAA9yF,EACAmzF,OAAA,OAAAhN,EAAA2L,EAAAqB,OAAAd,EAAA9uF,EAAA6vF,gBAAAtB,EAAAqB,OAAA5vF,EAAA6vF,iBAGA72H,OAAA8F,OAAA,GAA0ByvH,EAAA,CAC1BmB,KAAAjoF,KAAAC,IAAA6mF,EAAAmB,KAAAjzF,GACAkzF,IAAAloF,KAAAI,IAAA0mF,EAAAoB,IAAAlzF,GACAmC,MAAAnC,EACA25B,OAAArL,UACA6kE,OAAArB,EAAAqB,OAAA5vF,EAAA6vF,kBAIAlB,EAAAJ,aAAAS,EACAL,EAAAC,SAAAntD,QAAA,SAAA+sD,GACAA,EAAApiC,SAAA4iC,OCzDAlB,GAAA7wG,EAAKwxB,OAAQs/E,GAAA9wG,GACb6wG,GAAA7wG,EAAKwxB,OAAQ2V,GAAAnnC,GACb6wG,GAAA7wG,EAAKwxB,OAAQqhF,GAAA7yG,GACb,ICeY8yG,GDfZC,GAAA,8BACAC,GAAA,IAAAhC,IACAiC,GAAA,IAAAjC,IACAkC,GAAA,IAAAlC,IACWmC,GAAmB,SAAAC,EAAAroF,GAC9B,IAAAqB,EAAAvE,KAEE9rC,OAAA6rC,GAAA,EAAA7rC,CAAe8rC,KAAAurF,GAEjBvrF,KAAAwrF,QAAA,SAAAlkC,GACA,IAAApnD,EAAA,CACAurF,gBAAA,EACAC,0BAAA,EACAC,eAAA,EACAC,sBAAAV,IAEAziC,WAAA,WACA,OAAAnB,EAAApnD,MAIAF,KAAA6rF,cAEA,WACA,IAAA3lG,EAAehyB,OAAA0wE,EAAA,EAAA1wE,CAEXwsC,EAAAvoB,EAAmBwoB,KAAA,SAAAC,EAAAkrF,EAAAlC,EAAA57E,EAAA+9E,GACvB,IAAAv7D,EAAAb,EAAAq8D,EAAArvG,EACA,OAAa+jB,EAAAvoB,EAAmB2oB,KAAA,SAAAC,GAChC,OACA,OAAAA,EAAAC,KAAAD,EAAAE,MACA,OAGA,OAFAuvB,EAAAs7D,IAAA/7G,OAAA,GACAgxB,EAAAE,KAAA,EACAsD,EAAArB,IAAAs2B,WAAA,CACAhJ,SACe,KAEf,OACAb,EAAA5uB,EAAAuC,KACA0oF,EAAAr8D,EAAAlqC,OAAA,SAAA3I,GACA,IAAAmvG,EAAA,KAAArC,GAAA9sG,EAAAovG,kBAAAtC,EACAuC,GAAA,IAAArvG,EAAAsb,OAAAzS,QAAA6qC,EAAA47D,eACA,OAAAH,GAAAE,IAEAxvG,EAAAqvG,EAAA/oG,IAAA,SAAAnG,GACA,OACAA,SAAAsb,OACAi0F,UAAAvvG,EAAAsb,OACA7hB,YAAAuG,EAAA2b,YACAmxF,SAAA9sG,EAAAovG,gBACAI,OAAAxvG,EAAAsb,OACAnxC,KAAA61B,EAAAyvG,QAGAR,EAAApvG,GAEA,OACA,UACA,OAAAokB,EAAAK,SAGOR,MAGP,gBAAAmkC,EAAAC,EAAAG,EAAAC,GACA,OAAAl/C,EAAAujB,MAAAzJ,KAAA0J,YA3CA,GA+CA1J,KAAAwsF,cAAA,SAAA1vG,EAAA2vG,EAAAC,GACA,IAAAC,EAAkBC,GAAAz0G,EAAC00B,MAAA/vB,EAAA,KACnB+vG,EAAmB34H,OAAAqoD,EAAA,EAAAroD,CAAcy4H,EAAA,GAKjCjmG,GAJAmmG,EAAA,GACAA,EAAA,IAGA/vG,GAEAynB,EAAArB,IAAAs2B,WAAA,CACAhJ,MAAA9pC,GACK,GAAAya,KAAA,SAAA2rF,GACL,IAIAhwG,EAJkB8vG,GAAAz0G,EAACvI,KAAAk9G,EAAA,SAAAznG,GACnB,OAAAA,EAAA+S,QAAA1R,GAAArB,EAAA+S,OAAAroB,OAAAusD,gBAAA51C,EAAA3W,OAAAusD,iBAG4BswD,GAAAz0G,EAAC01B,MAAAi/E,GAE7B,GAAAhwG,EAAA,CACAynB,EAAAznB,SAAAsb,OACA,IAAA4C,EAAA,CACAuD,OAAA,QACAn4C,KAAA02B,EAAAsb,OACAi0F,UAAAvvG,EAAAsb,OACA7hB,YAAAuG,EAAA2b,YACA6zF,OAAAxvG,EAAAsb,OACAwxF,SAAA9sG,EAAAovG,gBACAa,gBAAAjwG,EAAAovG,gBACAN,sBAAAV,GACAjkI,KAAA61B,EAAAyvG,KACAS,QEpHO,YFqHPC,OAAA,EACAC,SAAA,EACAC,WAAA,IACArnD,SAAA,mBACAsnD,cAAA,EACAC,WAAA,EACAC,wBAAA,EACAC,cAAA,IACAC,YAAA,aAEAf,EAAAzxF,QAEA0xF,EAAA,0BAKA1sF,KAAAytF,uBAAA,SAAAzyF,GACA,0BAAArZ,SAAAqZ,GACA,IAAAlrC,OAAAkrC,GACK,OAAAA,EACL,KAEA,OAIAgF,KAAAu5B,QAEA,WACA,IAAAxuC,EAAgB72B,OAAA0wE,EAAA,EAAA1wE,CAEZwsC,EAAAvoB,EAAmBwoB,KAAA,SAAAU,EAAAgoF,EAAAvL,EAAA4P,EAAA3B,EAAAW,GACvB,IAAAiB,EAAAC,EAAAC,EAAA79D,EAAAX,EAAAC,EAAAw+D,EAAAC,EAAApxG,EAAAqxG,EACA,OAAattF,EAAAvoB,EAAmB2oB,KAAA,SAAAQ,GAChC,OACA,OAAAA,EAAAN,KAAAM,EAAAL,MACA,OAcA,OAbA0sF,EAAAD,EAAA7kG,KAAA+kG,EAAAF,EAAAtwC,GAAAywC,EAAAH,EAAAG,iBACA79D,EAAAzrB,EAAAkpF,uBAAA3P,GACAzuD,EAA0Bn7D,OAAA+5H,EAAA,GAAA/5H,CAAyB80H,GAAA7wG,EAAKkyG,KAAAsD,IAAAjvF,UACxD4wB,EAAwBp7D,OAAA+5H,EAAA,GAAA/5H,CAAyB80H,GAAA7wG,EAAKkyG,KAAAuD,IAAAlvF,UAEtDunB,UAAA1hB,EAAArB,IAAAgrF,YAAAjoE,YACAqJ,EAAA/qB,EAAArB,IAAAgrF,aAGAJ,OAAA1pI,EACA2pI,OAAA3pI,EACAk9C,EAAAN,KAAA,EACAM,EAAAL,KAAA,GACAsD,EAAArB,IAAAq2B,QAAA,CACAz8C,OAAAusG,EAAAjjI,KACA4pE,SACAX,YACAC,YAGA,QAIA,KAHA3yC,EAAA2kB,EAAAgC,MAGAtb,QACA+jG,EAAA,IACAoC,QAAA,EACAC,SAAAT,EAAA,UAIAK,EAAA,GACArxG,EAAAggD,QAAA,SAAAutD,GACA,IAAAmE,EACAC,EAAApE,EAAAqE,EAAArnF,WAGAmnF,EADoBn6H,OAAA+5H,EAAA,GAAA/5H,CAAOg2H,EAAAqE,GACDr6H,OAAA+5H,EAAA,GAAA/5H,CAAyB80H,KAAKsF,IAE9Bp6H,OAAA+5H,EAAA,GAAA/5H,CAAyB80H,KAAKkB,EAAAqE,IAGxDT,OAAA1pI,IAAA0pI,EAAAO,IAAAP,EAAAO,EAAAP,EACAC,OAAA3pI,IAAA2pI,GAAAM,EAAAN,EAAAM,EAAAN,EACAC,EAAA,GAAAl+H,OAAiCoE,OAAA60B,EAAA,EAAA70B,CAAkB85H,GAAA,EACnD18D,KAAA+8D,EAAA/6D,MAAArN,UACA4kE,IAAAX,EAAAsE,EACA5D,KAAAV,EAAAuE,EACAjE,KAAAN,EAAAwE,EACA50F,MAAAowF,EAAAyE,EACA7D,OAAAZ,EAAA0E,KAEArqF,EAAAypF,SAGAH,QAEAzpI,IAAA4pI,IAAAhmG,OAAA,IACAmjG,GAAAniF,IAAA,GAAAl5C,OAAAu5H,EAAAjjI,KAAA,KAAA0J,OAAAguH,GAAAkQ,IAAAhmG,OAAA,IAIA+jG,EAAAiC,EAAA,CACAG,QAAA,IAEA7sF,EAAAL,KAAA,GACA,MAEA,QACAK,EAAAN,KAAA,GACAM,EAAAqD,GAAArD,EAAA,SACAorF,EAAAprF,EAAAqD,IAEA,QACA,UACA,OAAArD,EAAAF,SAGOC,EAAA,kBAGP,gBAAAwtF,EAAAC,EAAAC,EAAAC,EAAAC,GACA,OAAAlkG,EAAA0e,MAAAzJ,KAAA0J,YA3FA,GA+FA1J,KAAAkvF,cAEA,WACA,IAAA9yE,EAAgBloD,OAAA0wE,EAAA,EAAA1wE,CAEZwsC,EAAAvoB,EAAmBwoB,KAAA,SAAAa,EAAA6nF,EAAAvL,EAAAqR,EAAAC,EAAA5F,GACvB,OAAa9oF,EAAAvoB,EAAmB2oB,KAAA,SAAAa,GAChC,OACA,OAAAA,EAAAX,KAAAW,EAAAV,MACA,OACAsD,EAAA8qF,sBAAAF,EACA5qF,EAAA+qF,mBAAA9F,EACAjlF,EAAAu5E,aACAv5E,EAAAgrF,gBAAA,EACAnE,GAAApiF,IAAA,GAAAl5C,OAAAu5H,EAAAjjI,KAAA,KAAA0J,OAAAguH,GAAAuL,GACAgC,GAAAriF,IAAA,GAAAl5C,OAAAu5H,EAAAjjI,KAAA,KAAA0J,OAAAguH,GAAAsR,GAEA7qF,EAAAorB,QAAAnmB,KAAA6/E,EAAAjjI,MAEcgjI,GAAiBC,EAAAvL,EAAAqR,EAAAC,EAAA5F,EAAA2B,GAAAtlG,IAAA,GAAA/1B,OAAAu5H,EAAAjjI,KAAA,KAAA0J,OAAAguH,KAE/B,OACA,UACA,OAAAn8E,EAAAP,SAGOI,MAGP,gBAAAguF,EAAAC,EAAAC,EAAAC,EAAAC,GACA,OAAAxzE,EAAA3S,MAAAzJ,KAAA0J,YA5BA,GAgCA1J,KAAA6vF,gBAAA,SAAAT,GACA7qF,EAAAgrF,gBAAA,EACAhrF,EAAAypF,KAAA,GD5MO,SAAAzE,GACP,IAAA5e,GAAA,EACAC,GAAA,EACAC,OAAAzmH,EAEA,IACA,QAAA0mH,EAAAC,EAAAme,GAAAv5G,OAAAyoB,OAAA4yE,cAAgFL,GAAAG,EAAAC,EAAA9pE,QAAAgqE,MAAgEN,GAAA,GAChJ,IAAAgf,EAAA7e,EAAAjmF,MACAglG,EAAAX,GAAArjG,IAAA8jG,GACAmG,EAAAjG,EAAAC,SAAAhtD,UAAA,SAAA4sD,GACA,OAAAA,EAAAjjI,KAAA8iI,IAGA,QAAAuG,IACAjG,EAAAC,SAAA/J,OAAA+P,EAAA,GAEA,IAAAjG,EAAAC,SAAA9hG,QAAA,CACAkhG,GAAA6G,OAAApG,GACA,QAIG,MAAA7hF,GACH8iE,GAAA,EACAC,EAAA/iE,EACG,QACH,IACA6iE,GAAA,MAAAI,EAAAG,QACAH,EAAAG,SAEK,QACL,GAAAN,EACA,MAAAC,IC6KImlB,CAAqBZ,IAGzBpvF,KAAAsqF,UAAA,SAAA2F,EAAAC,EAAApS,GACA,OAAAmS,EAAA5F,OAAA6F,EAAA7F,QAGArqF,KAAAmwF,WAAA,WACA5rF,EAAA+qF,oBACA/qF,EAAA+qF,sBAIAtvF,KAAAowF,cAEA,WACA,IAAAjrC,EAAgBjxF,OAAA0wE,EAAA,EAAA1wE,CAEZwsC,EAAAvoB,EAAmBwoB,KAAA,SAAAkB,EAAA3lB,EAAA2gG,EAAAmN,GAEvB,OAAatpF,EAAAvoB,EAAmB2oB,KAAA,SAAAgB,GAChC,OACA,OAAAA,EAAAd,KAAAc,EAAAb,MACA,OAEA/sC,OAAAyb,KAAAuM,GAAA+G,IAAA,SAAApT,GACA,OAAAqM,EAAArM,KAEA8sD,QAAA,SAAAzhC,GACA,GAAAA,KAAA9C,OAAA,CAIA,IAAAtb,EAAAoe,EAAA9C,OACAixF,EAAA+B,GAAAvlG,IAAA,GAAA/1B,OAAAgtB,EAAA,KAAAhtB,OAAAy0C,EAAAu5E,aACAsR,EAAA/D,GAAAxlG,IAAA,GAAA/1B,OAAAgtB,EAAA,KAAAhtB,OAAAy0C,EAAAu5E,aACAuS,EAAAlF,GAAAtlG,IAAA,GAAA/1B,OAAAgtB,EAAA,KAAAhtB,OAAAy0C,EAAAu5E,aAEA,IAAAuL,IAAA+F,IAAAiB,EAYA,OAXAhzF,QAAAC,IAAA,qBACApC,QACAmuF,aACA+F,eACAiB,qBACAvS,WAAAv5E,EAAAu5E,WACAsN,mBACAC,qBACAF,wBAEA9tF,QAAAugF,MAAA,YAAA9tH,OAAAgtB,EAAA,KAAAhtB,OAAAy0C,EAAAu5E,WAAA,yEAIgBiM,GAAaV,EAAAxM,EAAAt4E,EAAA8qF,sBAAAD,EAAA7qF,EAAA+qF,mBAAAp0F,EAAA8uF,MAG7B,OACA,UACA,OAAAloF,EAAAV,SAGOS,MAGP,gBAAAyuF,EAAAC,EAAAC,GACA,OAAArrC,EAAA17C,MAAAzJ,KAAA0J,YAlDA,GAsDA1J,KAAAkD,MACAlD,KAAAguF,KAAA,GACAhuF,KAAAuvF,gBAAA,EACAvvF,KAAA1C,IAAappC,OAAA+5H,EAAA,GAAA/5H,CAAM,YACnB8rC,KAAAywF,eAAA,EACAzwF,KAAA2vB,QAAA,IG5UM/Z,GAAW,SAACtvD,GAAD,MAAqB,CAAEA,WAElCoqI,GAAmB,eAAAxqG,EAAAhyB,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAC,EAC1BsC,EACApmB,EACA/zB,GAH0B,IAAAsmE,EAAAC,EAAAU,EAAAg+D,EAAA2C,EAAAC,EAAAC,EAAA9lG,EAAAwU,EAAAuxF,EAAA,OAAApwF,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAKlBouB,EAAqCtmE,EAArCsmE,UAAWC,EAA0BvmE,EAA1BumE,QAASU,EAAiBjnE,EAAjBinE,OAAQg+D,EAASjlI,EAATilI,KAC9B2C,EAAQ9qD,KAAMxW,GAAa,IAAIpgB,MAC/B2hF,EAAMthE,EAAUuW,KAAMvW,QAAWlrE,EAEjCysI,EAAa,SAAChoG,EAAmBu0D,GACrC,OAAOl6C,EAAIq2B,QAAQ,CACjBz8C,SACAkzC,SACAg+D,OACA3+D,UAAWxmC,EAAK6V,SAChB4wB,QAAS8tB,EAAG1+C,YAfUqC,EAAAE,KAAA,EAkBA4vF,EAAWF,EAAOC,GAAO/qD,KAAM,IAAI52B,OAlBnC,cAAAlkB,EAAAgW,EAAAuC,KAkBlB/D,EAlBkBxU,EAkBlBwU,QACJuxF,EAAmBvxF,EAAOrrC,OAAA60B,EAAA,EAAA70B,CAAOqrC,GAAW,GAnBtBwB,EAAAG,OAAA,SAiCnB4vF,GAjCmB,yBAAA/vF,EAAAK,SAAAR,MAAH,gBAAAmkC,EAAAC,EAAAG,GAAA,OAAAj/C,EAAAujB,MAAAzJ,KAAA0J,YAAA,GAoCZqnF,GAGX,SAAAA,EAAmBC,GAAyB,IAAAzsF,EAAAvE,KAE1C,GAF0C9rC,OAAA6rC,GAAA,EAAA7rC,CAAA8rC,KAAA+wF,GAAA/wF,KAFpCkD,SAEoC,EAAAlD,KADpCixF,WACoC,EAAAjxF,KAOrCkuF,YAActnD,KAAgBloC,SAPOsB,KAQrCw5B,WAAa,SAAChJ,GAAD,IAAuBjoC,EAAvBmhB,UAAA1hB,OAAA,QAAA5jC,IAAAslD,UAAA,GAAAA,UAAA,GAAuC,GAAvC,OAA8CnF,EAAKrB,IAAIs2B,WAAWhJ,EAAOjoC,IARjDyX,KASrCu5B,QATqC,eAAAnd,EAAAloD,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAS3B,SAAAU,EAAOt4C,GAAP,IAAA+zB,EAAAuyC,EAAAC,EAAAU,EAAA2iC,EAAAu+B,EAAA7uE,EAAAsuE,EAAAC,EAAAO,EAAAC,EAAApD,EAAA,OAAAttF,EAAAvoB,EAAA2oB,KAAA,SAAAQ,GAAA,cAAAA,EAAAN,KAAAM,EAAAL,MAAA,UACPnkB,EAAuC/zB,EAAvC+zB,OAAQuyC,EAA+BtmE,EAA/BsmE,UAAWC,EAAoBvmE,EAApBumE,QAASU,EAAWjnE,EAAXinE,YAElB5rE,KADZuuG,EAAYvoE,IAAExI,SAAS9E,GAAUA,EAASsN,IAAEyjB,MAAM/wB,IAFzC,CAAAwkB,EAAAL,KAAA,cAIP2U,GAAS,sBAJF,OAKc,kBAAX94B,GAChBugB,QAAQuH,KAAK,uBAAwB9nB,GANxB,UAQTo0G,EARS,GAAAphI,OAQK6iG,EARL,KAAA7iG,OAQkBkgE,GAC3B3N,EAAa9d,EAAK0sF,MAAMC,GAExBP,EAAQ9qD,KAAMxW,GAAa,IAAIpgB,WACnB7qD,IAAdirE,EAZW,CAAA/tB,EAAAL,KAAA,eAaP2U,GAAS,yBAbF,eAeTg7E,EAAM/qD,KAAMvW,GAAW,IAAIrgB,OAC3BkiF,EAAmB9uE,EAAaj4B,IAAEvE,IAAIw8B,EAAY2N,OAAQ5rE,QAAaA,IACrDyhF,KAAMsrD,EAAiBtoG,MAAMo9B,WAAa0qE,EAAM1qE,gBAKhD7hE,KAJhBgtI,OACUhtI,IAAdirE,EACI8hE,EAAiBnD,KACjB5jG,IAAE3E,OAAO0rG,EAAiBnD,KAAM,SAAAxvD,GAAC,OAAIqH,KAAMrH,EAAE+vD,IAAMoC,GAAS9qD,KAAMrH,EAAE+vD,IAAMqC,MACpB,IAAzBQ,EAAcppG,QAC/CqV,QAAQvY,KAAR,mBAAAh1B,OACqBgtB,EADrB,OAAAhtB,OACiCkgE,EADjC,gDAEEohE,GAzBS9vF,EAAAL,KAAA,GA8BIyvF,GAAoBnsF,EAAKrB,IAAKyvD,EAAW5pG,GAASo4C,KAAK,SAAAkwF,GACxE,OAAOjnG,IAAEnH,IAAIouG,EAAY,SAAA7yD,GACvB,OAAOtqE,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFsqE,EADL,CAGEkwD,EAAGtkG,IAAEy+B,MAAM2V,EAAEkwD,EAAG,GAEhBD,EAAGrkG,IAAEy+B,MAAM2V,EAAEiwD,EAAG,GAEhBD,EAAGpkG,IAAEy+B,MAAM2V,EAAEgwD,EAAG,GAEhBG,EAAGvkG,IAAEy+B,MAAM2V,EAAEmwD,EAAG,GAEhBC,EAAGxkG,IAAEy+B,MAAM2V,EAAEowD,EAAG,SA3CP,eA8BTZ,EA9BS1sF,EAAAgC,KA+CfiB,EAAK0sF,MAAL/8H,OAAAy0B,EAAA,EAAAz0B,CAAA,GACKqwC,EAAK0sF,MADV/8H,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEGg9H,EAFHh9H,OAAAy0B,EAAA,EAAAz0B,CAAA,GAGOmuD,EAHPnuD,OAAA2tB,EAAA,EAAA3tB,CAAA,GAIK87D,EAAS,CACRnnC,KAAM8nG,EAAMjyF,SACZ0+C,GAAIwzC,EAAIlyF,SACRsvF,YAtDS1sF,EAAAJ,OAAA,SA0DR8sF,GA1DQ,yBAAA1sF,EAAAF,SAAAC,MAT2B,gBAAA+jC,GAAA,OAAAhpB,EAAA3S,MAAAzJ,KAAA0J,YAAA,GAAA1J,KAqErCsxF,UArEqC,eAAAnsC,EAAAjxF,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAqEzB,SAAAa,EAAOmuB,GAAP,IAAA4hE,EAAAhyF,EAAA,OAAAmB,EAAAvoB,EAAA2oB,KAAA,SAAAa,GAAA,cAAAA,EAAAX,KAAAW,EAAAV,MAAA,cAAAU,EAAAV,KAAA,EACSsD,EAAKrB,IAAIhnB,OAAOo0C,gBAAgBX,GADzC,cAAA4hE,EAAA5vF,EAAA2B,KACT/D,EADSgyF,EACThyF,QADSoC,EAAAT,OAAA,SAEV3B,GAFU,wBAAAoC,EAAAP,SAAAI,MArEyB,gBAAAqtF,GAAA,OAAA1pC,EAAA17C,MAAAzJ,KAAA0J,YAAA,GAC1C1J,KAAKkD,IAAM8tF,GACNA,EACH,MAAMp7E,GAAS,2BAEjB5V,KAAKixF,MAAQ,cFnCLhG,+TAiBZ,IAAMjB,GAAe,SAACwH,GACpB,OAAOA,IAAcvG,GAAUwG,YAGpBC,GAAkD,SAAAzmG,GAAS,IAAA0mG,EACQlb,eAAtErpC,EAD8DukD,EAC9DvkD,SAAUwkD,EADoDD,EACpDC,UAAW/U,EADyC8U,EACzC9U,SAAUgV,EAD+BF,EAC/BE,gBAAiBL,EADcG,EACdH,UAAW10G,EADG60G,EACH70G,OACjDksB,EAAQmnE,eAAlBnP,SAEF8wB,EAAgBxnG,sBAAY,SAACza,EAA4B8M,GAC7DqsB,EAAIn5B,EAAK8M,EAAM,CAAEu+E,SAAS,KACzB,IACG62B,EAAcj1G,GAAUA,EAAO6c,WAGrC,OAAKi4F,GAAcxkD,EAMjBvlD,EAAA1P,EAAA2P,cAACkqG,GAAD99H,OAAA8F,OAAA,GACMixB,EADN,CAEE2mG,UAAWA,EACX/U,SAAUA,EACVgV,gBAAiBA,EACjBI,SAAUH,EACVN,UAAWA,EACXO,YAAaA,MAZf10F,QAAQxqB,MAAM,qEAAsE,CAAEu6D,WAAUwkD,cACzF,OAuBLM,GAAoE,SAAAjnG,GAAS,IACzEknG,EAAwFlnG,EAAxFknG,YAAaP,EAA2E3mG,EAA3E2mG,UAAW/U,EAAgE5xF,EAAhE4xF,SAAUgV,EAAsD5mG,EAAtD4mG,gBAAiBL,EAAqCvmG,EAArCumG,UAAWS,EAA0BhnG,EAA1BgnG,SAAUF,EAAgB9mG,EAAhB8mG,YADCK,EAEpDnnG,EAAMnO,OAA3BA,EAFyEs1G,EAEzEt1G,OAAQM,EAFiEg1G,EAEjEh1G,SAEVi1G,EAAWtnC,mBACXg0B,EGvF8B,WACpC,IAAM77E,EAAMqoE,cAGZ,OADatkF,kBAAQ,kBAAM,IAAIskG,GAAoB,IAAIwF,GAAU7tF,KAAO,CAACA,IHoFxDovF,GACT1U,EAAU2U,eAAV3U,MACFjuD,EAAUvlC,IAAEimB,KAAK0uE,EAASpvD,SAC1B2P,EAAW0E,cACTxxC,EAAawgE,KAAbxgE,SATyEggG,EAUrCxzD,IAAM6C,SAAoB2vD,GAAavG,GAAUwH,QAVZC,EAAAx+H,OAAAqoD,EAAA,EAAAroD,CAAAs+H,EAAA,GAU1EG,EAV0ED,EAAA,GAU1DE,EAV0DF,EAAA,GAAAG,EAWvC7zD,IAAM6C,SAAiBg7C,GAtE3C,KA2D2DiW,EAAA5+H,OAAAqoD,EAAA,EAAAroD,CAAA2+H,EAAA,GAW1EE,EAX0ED,EAAA,GAW3DE,EAX2DF,EAAA,GAAAG,GAYnExwD,YAAiB,SAAA19E,GAAK,OAAIA,IACVi6E,IAAM6C,SAAuB,KAbsBqxD,EAAAh/H,OAAAqoD,EAAA,EAAAroD,CAAA++H,EAAA,GAa1EE,EAb0ED,EAAA,GAajEE,EAbiEF,EAAA,GAejF5vD,oBAAU,WACJ3T,EAAQ3nC,OAAS,IACnBs3C,EAASjsC,IAAiB+D,aAAa,CAAEta,OAAQ6yC,KACjDn9B,EAASm9B,KAEV,CAACovD,EAAUpvD,EAAQ3nC,OAAQs3C,IAE9B,IAAM+zD,EAAsB,WAC1B,GAAiC,YAA7Bh2D,SAASi2D,iBACPjB,GAAYA,EAASjrC,SACnB23B,GAAYsT,QAAiCjuI,IAArBiuI,EAASjrC,QAAuB,CAE1D,GADA23B,EAASoR,cACJkC,QAAiCjuI,IAArBiuI,EAASjrC,QACxB,OACSirC,QAAiCjuI,IAArBiuI,EAASjrC,cAA4DhjG,IAAnCiuI,EAASjrC,QAAQ06B,eACxEuQ,EAASjrC,QAAQ06B,cAAcyR,cAOzCjwD,oBAAU,WAER,OADAjG,SAASsc,iBAAiB,mBAAoB05C,GACvC,WACLh2D,SAASuc,oBAAoB,mBAAoBy5C,KAElD,CAAChB,EAAUtT,IAEd,IAAMyU,EAA8B,CAClC,CAAEhsC,KAAM,KAAMs2B,WAAY,KAA0BvnG,YAAa,YACjE,CAAEixE,KAAM,KAAMs2B,WAAY,KAA0BvnG,YAAa,WACjE,CAAEixE,KAAM,KAAMs2B,WAAY,IAAyBvnG,YAAa,UAChE,CAAEixE,KAAM,KAAMs2B,WAAY,IAAyBvnG,YAAa,UAG5Dk9G,EAAgBxsG,kBAAiC,WACrD,MAAO,CACL81F,OAAQ,KACR+K,YAAa,qBAGb4L,SAAU,kBACVvtI,OAAQ,iBACRu2H,kBAAmB,CACjB,gCACA,gBACA,oBACA,uBACA,cACA,aACA,eAEFiX,oCAAoC,EACpChX,iBAAkB,CAAC,yBAA0B,gCAC7Ce,YAAY,EACZuH,iBAAkB,GAClBlG,WACAnB,OAAO,EACPD,UAAU,EACV7gG,OAAM,GAAAhtB,OAAKstB,EAAL,KAAAttB,OAAiBgtB,GACvB80G,YAEA/U,SAAWA,GAzIO,IA0IlB/2C,SAAUpmB,KACVy/D,MAAO,OACPl3F,MAAO,IACPqgG,eAAc,GAAAx4H,OAAK8jI,GAAL,2BACdC,mBAAmB,EACnBC,qBAAqB,EACrBC,kBAAkB,EAClBC,YAAY,EACZ7B,cACAtmC,UAAW,qBACXuxB,UAAUlpH,OAAAy0B,EAAA,EAAAz0B,CAAA,II7KYgyB,EJ8KJ,CAAE+tG,aAAcC,KAAOC,SIzKtC,CACLC,4BAN8DluG,EAAnC+tG,aAO3BI,gCAAiC,QACjCC,6CAA6C,ICsDxC,ILmHHzW,YAAa2V,GIjLS,IAAAttG,GJoLvB,CAAC64F,EAAUnB,EAAOuU,IAQrBoC,0BAAgB,WACVlC,GAAYA,EAASjrC,SACvBirC,EAASjrC,QAAQotC,aAAa,WACxBnC,QAAiCjuI,IAArBiuI,EAASjrC,SACvBirC,EAASjrC,QAAQk7B,sBAAsBmS,UAAU5C,MAItD,CAACA,IAGJvuD,oBAAU,WACJkuD,GAAaA,IAAcmB,GAAkBN,QAAiCjuI,IAArBiuI,EAASjrC,SACpEirC,EAASjrC,QAAQotC,aAAa,WAC5BnB,IACAT,EAAkBpB,MAGrB,CAACA,EAAWmB,EAAgBN,EAASjrC,UA1HyC,IAAAstC,EA4HzC11D,IAAM6C,UAAkB,GA5HiB8yD,EAAAzgI,OAAAqoD,EAAA,EAAAroD,CAAAwgI,EAAA,GA4H1EE,EA5H0ED,EAAA,GA4H5DE,EA5H4DF,EAAA,GA+HjFrxD,oBAAU,WACR,IAAMw8C,EAAQziD,SAASg5B,iBAAiB,sBACpCwmB,GAAYwV,QAAiCjuI,IAArBiuI,EAASjrC,SAAyB04B,EAAM93F,OAAS,GAC3EqqG,EAASjrC,QAAQotC,aAAa,WAC5BnB,IACAL,EAAiBnW,GACjBgY,GAAgB,GAEhB/U,EAAMnjD,QAAQ,SAAC03B,GACbA,EAAQiC,UAAU1iE,IAAI,kBACtB,IAAMkhG,EAAQrsC,WAAW,WACvBosC,GAAgB,GAChBxgC,EAAQiC,UAAUpiE,OAAO,mBACxB,KAEH,OAAO,kBAAMs0D,aAAassC,SAI/B,CAACjY,EAAUkW,EAAeV,EAASjrC,QAASurC,EAAgBnB,EAAWa,IAE1E/uD,oBAAU,WACJ+uD,QAAiCjuI,IAArBiuI,EAASjrC,SACvBirC,EAASjrC,QAAQotC,aAAa,WACxBnC,QAAiCjuI,IAArBiuI,EAASjrC,SAAyBtqE,QAAuB14B,IAAbg5B,GAC1Di1G,EAASjrC,QAAQne,UAAjB,GAAAn5E,OAA8BstB,EAA9B,KAAAttB,OAA0CgtB,GAAW+/F,GAnNvC,IAmN4E,cAExFwV,QAAiCjuI,IAArBiuI,EAASjrC,SAAyBh9D,IAAEzI,SAAS7E,EAAQ,MACnEu1G,EAASjrC,QAAQne,UAAjB,GAAAn5E,OAA8BstB,EAA9B,KAAAttB,OAA0CgtB,GAAW+/F,GAtNvC,IAsN4E,iBAI/F,CAAC//F,EAAQM,EAAUy/F,IAEtBv5C,oBAAU,WAMR,OALI+uD,QAAiCjuI,IAArBiuI,EAASjrC,UACvB/pD,QAAQuH,KAAK,8BAA+B9nB,EAAQ,mBAAoB22G,EAAc7B,WACtFS,EAASjrC,QH1PkB,SAAAn8D,EAAA8pG,GACjC,IAAA5C,EAAAlnG,EAAAknG,YAEApT,GADA9zF,EAAA4gE,UACA5gE,EAAA8zF,UACAjiG,EAAAmO,EAAAnO,OACA+/F,EAAA5xF,EAAA4xF,SACA+U,EAAA3mG,EAAA2mG,UACAoD,EAAA/pG,EAAA+pG,cACAtX,EAAAzyF,EAAAyyF,WACAC,EAAA1yF,EAAA0yF,SACAmK,EAAA78F,EAAA68F,YACAmN,EAAAhqG,EAAAgqG,iBACAC,EAAAjqG,EAAAiqG,wBACAxB,EAAAzoG,EAAAyoG,SACAvtI,EAAA8kC,EAAA9kC,OACA8+H,EAAAh6F,EAAAg6F,iBACAkQ,EAAAjhI,OAAA8F,OAAA,GAAsCixB,EAAA,CACtCnO,SAEAiiG,WACAlC,WACAmK,WAAA4K,EACApJ,gBAAAwM,EACAtX,aACAC,WACA9xB,UAAAsmC,EACArV,aAAAgL,EAEA/K,OAAA,KACAsL,mBAAA4M,EACAhX,2BAAAiX,EACAnX,UAAA2V,EACA1V,QAAA73H,EACAm3H,kBAAA2H,IAEAmQ,EAAA,IAAqB9W,GAAM6W,GA8B3B,OA7BAC,EAAAZ,aAAA,WACAY,EAAAriC,UAAA,8BACAqiC,EAAAtwD,KAAA,SAAAnoD,GACA,OAAAo4G,EAAA,YAAAp4G,OAGA,IAAAmlG,EAAAsT,EAAAtT,cAEAA,IACAA,EAAAuT,oBAAAtiC,UAAA,cAAA8pB,GACAkY,EAAA,WAAAlY,KAEAiF,EAAAwT,qBAAAviC,UAAA,cAAAy+B,GACAuD,EAAA,YAAAvD,MAOA4D,EAAAriC,UAAA,0BAAAhL,GACAgtC,EAAA,mBAAAhtC,KAGA+5B,IACAiT,EAAA,YAAAjT,EAAA0P,aACAuD,EAAA,WAAAjT,EAAAhE,iBAGAsX,EGyLyBG,CAAuB9B,EAAexB,IAGpD,WACDI,QAAiCjuI,IAArBiuI,EAASjrC,UACvBirC,EAASjrC,QAAQlzD,SACjBm+F,EAASjrC,aAAUhjG,KAGtB,CAACqvI,EAAexB,EAAUI,IAE7B/uD,oBAAU,WAEJ+uD,QAAiCjuI,IAArBiuI,EAASjrC,cAAyChjG,IAAhB2tI,GAA6BA,IAAgBj1G,IAC7FugB,QAAQuH,KAAK,2EAA4EmtF,GACzFM,EAASjrC,QAAQotC,aAAa,WACxBnC,QAAiCjuI,IAArBiuI,EAASjrC,cAAyChjG,IAAhB2tI,GAChDM,EAASjrC,QAAQne,UAAjB,GAAAn5E,OAA8BstB,EAA9B,KAAAttB,OAA0CiiI,GAAgBlV,GAhP5C,IAgPiF,kBAIpG,CAACkV,EAAalV,EAAUz/F,EAAUN,IAIrC,IAAM04G,EAAaC,aAA8B9lE,EAASq6D,GAAawH,GAAa,GAAI3U,GAxPlE,KA6PhB6Y,GAHcjzD,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQ2a,eACdl6D,KAA4BjR,sBAE7Cw0D,GAA2B,OAAd81C,IAwClC,OAtCAv5C,oBAAU,WACJkyD,GAAcE,GAChB3W,EAASqR,cAAcoF,EAAY3Y,EAAUmN,GAAawH,GAAa,KAExE,CAACgE,EAAYzW,EAAUlC,EAAU6Y,IAKpCpyD,oBAAU,WAEJ+uD,QAAiCjuI,IAArBiuI,EAASjrC,SAEvBirC,EAASjrC,QAAQotC,aAAa,WAG5B,GAAInC,QAAiCjuI,IAArBiuI,EAASjrC,cAA4DhjG,IAAnCiuI,EAASjrC,QAAQ06B,cAA6B,CAE9F,IAAM6T,EAAiBtD,EAASjrC,QAAQ06B,cAAc8T,gBAEtDxC,EAAWuC,GAGNvrG,IAAEm8B,QAAQovE,EAAgBxC,KAG7BC,EAAWuC,GACXtD,EAASjrC,QAAQtiB,KAAK,SAAC8sD,GAGrBK,EAAS,YAAaL,UAM/B,CAACS,EAASjrC,QAASouC,IAGpB3tG,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,gCACbtB,EAAA1P,EAAA2P,cAAA,OAAKrhC,GAAIwkC,EAAMknG,YAAahpG,UAAU,oBAEpCtB,EAAA1P,EAAA2P,cAAA,OAAKrhC,GAAG,yBAGZohC,EAAA1P,EAAA2P,cAAA,WAAM8sG,GAAgB/sG,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,SMlUf2tG,GAAwD,SAAA3vG,GAAgB,IAAbpJ,EAAaoJ,EAAbpJ,OAChEjM,EAAUoiF,aAAc,WADqD4I,EAEhD7C,KAFgD8C,EAAA5nG,OAAAqoD,EAAA,EAAAroD,CAAA2nG,EAAA,GAE5EjF,EAF4EkF,EAAA,GAEhEg6B,EAFgEh6B,EAAA,GAG7Ei6B,EAAc97B,GAAarD,EAAY,SAAU,CAAC,IAAK,IAAK,MAC5Do/B,EAAa/7B,GAAarD,EAAY,QAAS,CAAC,IAAK,IAAK,MAC1Du7B,EAAclrG,kBAAQ,sCAAAn3B,OAA2B+gB,IAAW,CAACA,IAInE,OACEgX,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,8DAA8Dm8D,IAAKwwC,GAChFjuG,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,eACZrM,GACC+K,EAAA1P,EAAA2P,cAACmuG,GAAD/hI,OAAA8F,OAAA,CACEm4H,YAAaA,EACbr1G,OAAQA,GACJ,CAAE45E,OAAQq/B,EAAaphH,MAAOqhH,SCNnCE,GAAgC,WAC3C,IAAMnxI,EAAQ0xH,eAER35F,EAASq5G,GAAUr5G,OAAO/3B,GACdikD,EAAQmnE,eAAlBnP,SACAj9B,EAAoBqxB,cAApBrxB,gBALyCnC,EAMTC,qBANSC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAM1Cw0D,EAN0Ct0D,EAAA,GAM5Bu0D,EAN4Bv0D,EAAA,GAO3C5+B,EAAMqoE,eChB2B,WAAM,IAAA+qB,EAChBC,eAArB1lH,EADqCylH,EACrCzlH,QAAS+K,EAD4B06G,EAC5B16G,QACX0jD,EAAWk3D,eACT15G,EAAW25F,eAAX35F,OACUksB,EAAQmnE,eAAlBnP,SAEF/3B,EAAY3+C,sBAAY,SAACg2C,GAAD,OAAsBt3B,EAAI,SAAUs3B,EAAK,CAAE46B,SAAS,KAAS,CAAClyD,IAE5Fs6B,oBAAU,WAQR,OAPI1nD,IACFg8F,GAAa6e,OAAO,CAAE5lH,UAAS+K,UAAS0jD,aAAY,GAChDxiD,GACFmsD,EAAUnsD,IAIP,WACL86F,GAAa8e,OAAO7lH,KAErB,CAAC+K,IAEJ,IAAM+6G,EAAiBrsG,sBACrB,SAACssG,IACKA,GAAoB95G,GAAUA,EAAOA,SAAW85G,EAAe95G,QACjEmsD,EAAU2tD,IAGd,CAAC95G,EAAQmsD,IAGX4tD,aAAqB,SAAUF,EAAgB,CAAEG,mBAAmB,IDbpEC,GACA,IAAMC,EAAe/vG,kBAAQ,kBAAOnK,EAASA,EAAOA,YAAS14B,GAAY,CAAC04B,IAE1EwmD,oBAAU,WACR,IAAM2zD,EAAQ,eAAA/wG,EAAAhyB,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAC,EAAO+2E,GAAP,IAAAuf,EAAAC,EAAAC,EAAAp8F,EAAAq8F,EAAA,OAAA32F,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cACf+H,EAAI,cAAc,GADHkuF,EAEQh0F,EAAIhnB,OAAO2J,IAAI8xF,GAFvBwf,EAAAjjI,OAAAqoD,EAAA,EAAAroD,CAAAgjI,EAAA,GAERE,EAFQD,EAAA,GAAAp2F,EAAAE,KAAA,EAGGm2F,EAHH,QAGTp8F,EAHS+F,EAAAuC,OAIJtI,EAAIuE,SAAWvE,EAAIuE,QAAQ,KAC9B83F,EAAar8F,EAAIuE,QAAQ,GAC/ByJ,EAAI,QAASquF,IAEfruF,EAAI,cAAc,GARH,wBAAAjI,EAAAK,SAAAR,MAAH,gBAAAmkC,GAAA,OAAA7+C,EAAAujB,MAAAzJ,KAAA0J,YAAA,GAUVstF,GAAgBjzD,GAAmBqyD,IAAiBY,IACtDX,EAAgBW,GAChBC,EAASD,KAEV,CAACA,EAAchuF,EAAK+6B,EAAiB7gC,EAAKkzF,IAG7C,IAAM5lH,EAAW+hH,eACX+E,EAAiBnhD,KAAOC,kBAA+DhyF,EAAvE8P,OAAAy0B,EAAA,EAAAz0B,CAAA,GAA4B0+E,KAA8BpiE,GAKhF,OAJAgjF,GAA4C,SAAC+jC,GAAD,OAC1CA,EAAWz6G,OAASy6G,EAAWz6G,OAAOA,YAAS14B,IAI/CyjC,EAAA1P,EAAA2P,cAAC0vG,GAADtjI,OAAA8F,OAAA,CACEg6G,eAAe,EACfxjG,SAAU8mH,EACVvjB,cAAe0jB,MACXC,aACFp+H,IAAU6E,WACV0pB,EAAA1P,EAAA2P,cAAC6vG,GAAD,CAAkB1uD,UAAW,SAAC3I,GAAD,OAAsBt3B,EAAI,SAAUs3B,EAAK,CAAE46B,SAAS,SAGnFrzE,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAAC8vG,GAAD,CAAmB96G,OAAQA,OEtC5B,SAAS+6G,GAAiBloE,GAC/B,IAAM9+C,EAAUoiF,aAAc,WACtBrjE,EAnBH,WAAiC,IAC9Bq0C,EAAeN,cAAfM,WAEFpzD,EAAUoiF,aAAc,WAS9B,MAAO,CACLrjE,UARgBtF,sBAChB,SAACqlC,GACC,IAAM4uC,EAAen0E,IAAEod,QAAQmoB,GAAWA,EAAU,CAACA,GACrDsU,EAAW7zD,MAAMohB,qBAAqB3gB,EAAS0tF,IAEjD,CAAC1tF,EAASozD,KASU6zD,GAAdloG,UACFmoG,EAAet1D,YAAiB,SAAAp9C,GAAC,OAAIq9C,IAAgBs1D,2BAA2B3yG,EAAGxU,KAOzF,OANAyyD,oBAAU,WACR,IAAM20D,EAAatoE,EAAWvlC,IAAEod,QAAQmoB,GAAWA,EAAU,CAACA,QAAYvrE,EACtE6zI,IAAe33B,aAAe23B,EAAYF,IAC5CnoG,EAAUqoG,IAEX,CAACtoE,EAASooE,EAAcnoG,IACpB,CAAEsoG,MAAOvoE,EAAS/kC,OAAQmtG,GAQ5B,SAASI,GAA4B5kC,GAE1C,OAAOskC,GADSp1D,YAAiB8wB,+BC1B7B6kC,GAAuB,SAACrzI,GAAD,OAAsBA,EAAM+1C,UAAUA,WAItDu9F,GAAyBrjD,0BACpC,SAACjwF,GAAD,OAAsBqzI,GAAqBrzI,IAC3C,SAAC+1C,GACC,OAAO1Q,IAAE5I,OACPsZ,EACA,SAACrZ,EAAsBwZ,GAGrB,IAAMrB,EAAmBqB,EAAI5C,iBACvBigG,EAAe,CAAEx8F,OAAQ,EAAGjX,MAAO,EAAGiW,UAAW,GAAIhe,OAAQ8c,EAAkB7wC,QAAS,GAC1F29B,EAAcjF,EAAImY,IAAqB0+F,EAIrCC,EAAWt9F,EAAIriC,YAAcA,IAAU6iC,OAE7C,OAAOvnC,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFutB,EADLvtB,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEG0lC,EAFH1lC,OAAAy0B,EAAA,EAAAz0B,CAAA,GAGOwyB,EAHP,CAIIoV,OAAQy8F,EAAW7xG,EAAYoV,OAASb,EAAIzB,aAAe9S,EAAYoV,OACvE/yC,QAASwvI,EAAW7xG,EAAY39B,QAAU29B,EAAY39B,QAAUkyC,EAAIzB,aAEpEsB,UAAS,GAAAhrC,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAMwyB,EAAYoU,WAAlB,CAA6BG,SAI5C,MAIAu9F,GAA+BxjD,0BACnCojD,GACA,SAAAt9F,GACE,OAAO1Q,IAAE0Q,GACN7X,IAAI,SAAAkT,GAAC,MAAI,CAACA,EAAEiC,OAAQjC,EAAEkC,oBACtBwtB,UACAxV,OACAxrB,UAGM4zG,GAAoBzjD,0BAC/B,SAAC3vD,GAAD,OAAkBA,EAAEnJ,OAAO0jE,cAAcjjE,MACzC67G,GACA,SAACt8G,EAAQyzC,GACP,IAAM+oE,EAAatuG,IAAE3E,OAAOvJ,EAAQ,SAACkjB,EAAGD,GAAJ,OAAkBwwB,EAAQhuC,SAASwd,KACvE,OAAO1H,aAAwBihG,KAItBC,GAAqB3jD,0BAChCqjD,GACAI,GACA,SAACpzG,GAAD,OAAkBA,EAAEw8D,YAAY/mD,WAChC,SAACA,EAAW5e,EAAQ08G,GAClB,IAAMC,EAA2BzuG,IAAE5I,OACjCsZ,EACA,SAACE,EAAK89F,EAA6BjpH,GACjC,IAAMy6C,EAAalgC,IAAE5I,OACnBs3G,EAAYh+F,UACZ,SAACrZ,EAAK0U,GACJ,OAAO1U,EAAM0U,EAAEsE,YAEjB,GAEIs+F,EAAS3uG,IAAEnH,IAAI61G,EAAYh+F,UAAW,SAAAk+F,GAAE,OAAIA,EAAGjoE,aAC/CkoE,EAAgB7uG,IAAE5I,OACtBo3G,EACA,SAACn3G,EAAKy3G,EAAIrpH,GACR,OAAKkpH,EAAOp3G,SAASyI,IAAE8c,SAASr3B,IAIzB,CACL66C,IAAKjpC,EAAIipC,IAAMwuE,EAAGxuE,KAJXjpC,GAOX,CAAEipC,IAAK,IAEHjJ,EAAgCvtD,OAAAy0B,EAAA,EAAAz0B,CAAA,GACjC2mC,aAAyBi+F,EAAYh+F,UAAW5e,EAAQrM,GADvB,CAEpC66C,IAAKuuE,EAAcvuE,IACnBJ,eAEF,OAAOp2D,OAAAy0B,EAAA,EAAAz0B,CAAA,GACF8mC,EADL9mC,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEG2b,EAAM4xC,KAGX,IAEF,OAAOr3B,IAAEnH,IAAI41G,EAA0B,SAACz5F,EAAGD,GACzC,OAAOg6F,aAAe/5F,OAafg6F,IATmBpkD,0BAC9B2jD,GACA,SAAA19F,GACE,OAAO7Q,IAAE6Q,GACNhY,IAAI,SAACkT,GAAD,OAAgCA,EAAEtR,QACtCkmC,QAImCiqB,0BACxC,SAACjwF,GAAD,OAAsBA,EAAM+1C,UAAUA,UAAU9S,QAChD,SAACjjC,GAAD,OAAsBA,EAAM+1C,UAAU46C,YACtC,SAAC3wF,GAAD,OAAsBA,EAAM+1C,UAAUskD,QACtC,SAACi6C,EAAe3jD,EAAY0J,GAC1B,IAAMk6C,EAAiBD,EAAgB,IAAWj6C,QAAiBh7F,EACnE,MAAO,CACL02C,UAAW,CAAE+jC,SAAUy6D,EAAgB5jD,cACvCuxB,aAA4B7iH,IAAnBk1I,IAA+C,IAAf5jD,MClIlC6jD,IDuIwBvkD,0BACnC,CAACqjD,GAAwB,SAACtzI,EAAkB+3B,GAAnB,OAAsCA,IAC/D,SAAC08G,EAA0B18G,GAA3B,OAA8C08G,EAAQ18G,KAG9Ck4D,0BACN,SAACjwF,GAAD,OAAsBA,EAAM+1C,UAAUskD,QACtC,SAAAA,GAAM,OAAIA,IC9IsB,CAClCq6C,gBAAiBzkD,0BACf,SAAC3vD,GAAD,OAAkBA,EAAEw8D,YAAY/B,UAChC,SAAA45C,GAAS,OACPtvG,IAAEsvG,GACCn8H,SACA0lB,IAAI,SAAAmc,GAAC,OAAIA,EAAE8iD,UACXn3B,OAAS,IAEhB4uE,8BAA+BlqC,KAC7B,SAACpqE,EAAcu0G,GAAf,OAAyCxvG,IAAE3E,OAAOJ,EAAEw8D,YAAY/mD,UAAW,SAACsE,EAAGD,GAAJ,OAAUy6F,EAAYj4G,SAASwd,MAC1G,SAAA06F,GACE,OAAOA,EAAMr4G,OACX,SAACC,EAAK4D,GACJ,OAAOnxB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFutB,EADL,CAEEipC,IAAKjpC,EAAIipC,IAAMrlC,EAAEqlC,OAGrB,CAAEA,IAAK,KAVkB+kC,CAa7B,SAACpqE,EAAcu0G,GAAf,sBAAA9pI,OAAyD8pI,EAAYx7B,OAAOn2D,KAAK,QACnF63C,SAAU2P,KACR,SAAC1qG,EAAkB+3B,GAAnB,OAAsC/3B,EAAM88F,YAAY/B,SAAShjE,IACjE,SAAC/3B,EAAkB+3B,GAAnB,OAAsCA,GACtC,SAAC4tC,EAAK5tC,GAEJ,OADY4tC,GAAO,CAAE5tC,WAJf2yE,CAOR,SAAC1qG,EAAkB+3B,GAAnB,aAAAhtB,OAA6CgtB,KAC/CglE,OAAQ,CACNt9C,IAAKwwC,0BACH,SAACjwF,GAAD,OAAsBA,EAAM88F,YAAYC,QACxC,SAAAA,GACE,OAAOA,EAAOt9C,MAGlBy9C,YAAajN,0BACX,SAACjwF,GAAD,OAAsBA,EAAM88F,YAAYC,QACxC,SAAAA,GAAM,OAAIA,EAAOG,iBCyCV63C,IA5EgBrqC,KAC3B,SAAC1qG,GAAD,OAAsBA,EAAMg+E,QAAQrY,KACpC,SAAAA,GAGE,OAFUtgC,IAAEy7B,QAAQ6E,EAAK,SAAAqvE,GAAQ,OAAIA,EAAS92F,cAHrBwsD,CAS3BC,KAGkCD,KAClC,SAAC1qG,GAAD,OAAsBA,EAAMg+E,QAAQrY,KACpC,SAAAA,GAIE,OAAOtgC,IAAE5I,OACPkpC,GAAO,GACP,SAAC1pB,EAAMygB,GACL,OAAOvtD,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAKutD,EAAZ,CAAkBi0B,WAAY10C,EAAK00C,YAAcj0B,EAAKi0B,cAExD,CAAEA,YAAY,IACdA,YAZ8B+Z,CAgBlCC,KAGyBD,KACzB,SAAC1qG,GAAD,OAAsBA,GACtB,SAACohH,GAAD,OAAuBA,GACvB,SAAAphH,GACE,YAA6BX,IAAtBW,EAAMg+E,QAAQrY,KAJE+kC,CAQzBC,KAqC0B,CAC1BsqC,cAAehlD,0BACb,SAAC3vD,GAAD,OACiC,IAA/BA,EAAE09C,QAAQ8a,mBAAyD,IAA3Bx4D,EAAEyV,UAAU46C,aAA+C,IAAvBrwD,EAAEyV,UAAUskD,QAC1F66C,IACA9pC,IACA,SAACprG,GAAD,OAAsBA,EAAMm3B,OAAO0jE,cAAcjjE,MACjD,SAACu9G,EAA0BC,EAAY/pC,EAAiBl0E,GACtD,IAAiC,IAA7Bg+G,EACF,MAAO,CAAE9sD,UAAU,EAAO9mF,OAAQ,kCAEpC,IAAM8zI,EAAuBhwG,IAAE+vG,GAC5Bz0E,MAAM0qC,GACN//C,OACA5qB,OAAO,SAAAJ,GAAC,OAAK4qE,aAAgB5qE,KAC7BI,OAAO,SAAAJ,GAEN,YAAiBjhC,IADHgmC,IAAExa,KAAKsM,EAAQ,SAAAif,GAAC,OAAIA,EAAE/C,SAAW/S,MAGhDR,QAEH,OADkE,IAAhCu1G,EAAqBpyG,OAG9C,CAAEolD,UAAU,EAAO9mF,OAAQ,iCAAkC8zI,wBAE/D,CAAEhtD,UAAU,KAGvB8U,QAASuN,KACP,SAAC1qG,EAAkBgE,GAAnB,OA/D4B,SAAChE,EAAkBgE,GACjD,IAAMq8D,EAASrgE,EAAMg+E,QAAQ3d,QAAU,GACjCspC,EAAe3pG,EAAMg+E,QAAQ2rB,aAC7B2rC,EAAW3rC,EAAetpC,EAAO3/B,OAAO,SAAA4F,GAAC,OAAIA,EAAE63B,cAAgB73B,EAAE63B,eAAiBwrC,IAAgBtpC,EACxG,OAAOk1E,YAAkBD,EAAUtxI,EAAQy8C,UAAWz8C,EAAQ08C,SA2DO80F,CAAwBx1I,EAAOgE,IAClG,SAAChE,GAAD,OAAsBA,EAAMm3B,OAAO0jE,cAAcjjE,MACjD,SAAC53B,GAAD,OAAsBA,EAAM+1C,UAAUhW,MACtC,SAAC//B,GAAD,OAAsBA,EAAM88F,aAC5B,SAAC98F,GAAD,OAAsBA,EAAMg+E,QAAQqb,gBACpC,SAACh5B,EAAQlpC,EAAQ4e,EAAW+mD,EAAazD,GAAzC,OACEh0D,IAAEy7B,QAAQT,EAAQ,SAAA/5B,GAAC,OAAIA,EAAEmtB,OAAMh3B,OAAO,SAACC,EAAoB+4G,GACzD,IAAMlvE,EAAQkvE,EAAQznF,SAAWl6C,KAAYy6C,IACvCsf,EAAe4nE,EAAQ1vE,iBAAmB,EAChD,GAAqB,IAAjB8H,EACF,OAAOnxC,EAET,IAAMyZ,EAAQhf,EAAOs+G,EAAQpiG,cAAWh0C,EAN4C8hC,EAOvBgV,GAAS,CACpE5C,SAAU,EACVC,SAAU,EACVN,iBAAkB,EAClBO,WAAY,GAJNF,EAP4EpS,EAO5EoS,SAAUC,EAPkErS,EAOlEqS,SAAUN,EAPwD/R,EAOxD+R,iBAAkBO,EAPsCtS,EAOtCsS,WAMxCiiG,EACJv/F,GAASA,EAAMrD,WAAaqD,EAAMrD,WAAaqD,GAASA,EAAMjD,iBAAmBiD,EAAMjD,iBAAmB,EAEtG4mC,EAAWz0C,IAAExa,KAAK6R,EAAK,SAAA2d,GAAC,OAAIA,EAAEtiB,SAAW09G,EAAQpiG,UAAW,CAChEsiG,UAAW,GACXC,WAAY,GACZC,eAAgB,EAChBC,aAAc,EACd/9G,OAAQ09G,EAAQpiG,OAChB0iG,eAAgB,EAChBC,eAAgB,EAChBC,aAAc,EACdC,gBAAiB,EACjBrvB,mBAAexnH,GAGX22I,EAAiBzvE,EAAQuT,EAASk8D,eAAiBnoE,EAAeiM,EAASk8D,eAC3EC,EAAgB1vE,EAAyDuT,EAASm8D,aAA1Dn8D,EAASm8D,aAAer4F,KAAKwb,IAAIyU,GACzDsoE,EAAoBH,EAAiBC,EACrCG,EAAuBrgG,EAAU0/F,EAAQpiG,QAC3C6iG,EAAkB,EAClBE,IACFF,EAAkBE,EAAqB5hG,UAGzC,IAAMixB,EAAYxwB,YAAa,CAC7BC,KAAMhC,GAAoB,EAC1BY,IAAKP,EACLQ,IAAKP,EACL2B,aAAc,cAEVkhG,EAAShxG,IAAE3E,OAAOhE,EAAK,SAAA2d,GAAC,OAAIA,EAAEtiB,SAAW09G,EAAQpiG,SACjD0iG,EAAiBG,EAAkBC,EACnCR,EAAsBpvE,EAAK,GAAAx7D,OAAAoE,OAAA60B,EAAA,EAAA70B,CACzB2qE,EAAS67D,WADgBxmI,OAAA60B,EAAA,EAAA70B,CACFk2B,IAAEixG,MAAczoE,EAAc,kBAAM4nE,EAAQvvE,qBAAuB,MAC9F4T,EAAS67D,UACPC,EAAwBrvE,EAE1BuT,EAAS87D,WAFgB,GAAA7qI,OAAAoE,OAAA60B,EAAA,EAAA70B,CACrB2qE,EAAS87D,YADYzmI,OAAA60B,EAAA,EAAA70B,CACGk2B,IAAEixG,MAAczoE,EAAc,kBAAM4nE,EAAQvvE,qBAAuB,MAE7F2vE,EAAiBG,EAAiB,EAAI3wG,IAAE2gC,IAAI2vE,GAAaK,EAAiB,EAC1EF,EAAeG,EAAe,EAAI5wG,IAAE2gC,IAAI4vE,GAAcK,EAAe,EAErEM,GACHP,GAAkBvwE,EAAYowE,GAAkBI,GAAgBxwE,EAAYqwE,IAAiBriG,EAC1F+iG,EAAcT,GAAkBtwE,EAAYiwE,GAAcjiG,EAC1DgjG,EAAWF,EAAaC,EAE1BjxE,OAAalmE,EAqBjB,YApBuBA,IAAnBg6F,IACF9zB,EAAay/C,GACX,CACE,CACEh8D,UAAWysF,EAAQ5hI,UACnB2gC,SAAUoJ,KAAKwb,IAAI+8E,KAGvB98C,EAAe54F,mBAIYpB,IAA3By6E,EAAS+sC,qBACQxnH,IAAfkmE,EACFjtB,QAAQuH,KAAR,+CAAA90C,OAA4D0qI,EAAQpiG,OAApE,kCAEAkyB,EAAauU,EAAS+sC,cAAgBthD,GAI1C,GAAAx6D,OAAAoE,OAAA60B,EAAA,EAAA70B,CACKknI,GADL,CAEE,CACEV,YACAC,aACA79G,OAAQ09G,EAAQpiG,OAChBiB,eAAgBmxB,EAChBpxB,eAAgB8B,EAAMvD,eACtB8jG,eAAgBhB,EAChBK,iBACAC,iBACAC,eACAE,oBACAD,kBACAL,iBACAC,eACAS,aACAC,cACAC,WACA5vB,cAAethD,MAGlB,KA9GEmlC,CA+GP,SAAC1qG,EAAkBgE,GACnB,IAAM4nI,EAAQ9qD,KAAM98E,EAAQy8C,WAAWjH,OAAO,KACxCqyF,EAAM/qD,KAAM98E,EAAQ08C,SAASlH,OAAO,KAC1C,qBAAAzuC,OAAsB6gI,EAAtB,KAAA7gI,OAA+B8gI,OAItB8K,GAAsB1mD,0BACjC,SAACjwF,GAAD,OAAsBA,EAAMqgE,OAAOswB,YACnC,SAAC3wF,GAAD,OAAsBA,EAAM+1C,UAAU46C,YACtC,SAACimD,EAAgBC,GACf,OAAOD,IAAkBC,ICzOhBC,GAA2E,SAAA31G,GAAwB,IAArBrB,EAAqBqB,EAArBrB,MAAO97B,EAAcm9B,EAAdn9B,QAC1F+yI,EAA0B,IAAVj3G,EAAc,IAAMA,GAAS,EAAI,KAAO,KAC9D,OACEgD,EAAA1P,EAAA2P,cAAC+yF,GAAD,CAAkBh2F,MAAOA,EAAOy1F,UAAW,EAAGvxH,QAASA,GACrD8+B,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,UAChBtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,YAAY2yG,GAC5Bj0G,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO8d,KAAKwb,IAAIt5B,GAAQ0Z,QAAM,iBCKxCw9F,GAAuF,SAAA71G,GAIvF,IAHJxM,EAGIwM,EAHJxM,MACA0zD,EAEIlnD,EAFJknD,SACAvoD,EACIqB,EADJrB,MAEMimB,GAAW1gB,IAAEhF,MAAMP,KAAWuF,IAAEijB,MAAMxoB,GAG5C,OCnByB,SAAC0oB,GAAqB,IAAAyuF,EACrBC,aAAsB,SAAA52G,GAAC,MAAK,CAAExU,QAASwU,EAAExU,QAAS5pB,KAAMo+B,EAAEp+B,QAA5E4pB,EADuCmrH,EACvCnrH,QAAS5pB,EAD8B+0I,EAC9B/0I,KACXi1I,EAAW3uF,EAAU,CAACtmD,EAAMsmD,EAAS18B,GAAW,CAAC5pB,EAAM4pB,GAE7D,OADYowD,aAAOi7D,GDcPC,CAAY,UACxB7+F,CAAI,KAAM,CAAEzY,UAEVgD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,YACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,eAAezP,IAEhCmO,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,sBACZ2hB,GAAWsiC,GAAYhjD,IAAEulB,SAAS9qB,GACjCgD,EAAA1P,EAAA2P,cAACs0G,GAAD,CAAqBv3G,MAAOA,EAAO97B,QAAS,CAAE6wH,cAAc,KAE5D/xF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACdtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAS8a,KAAK,cAQbq5F,GAIR,SAAAtxG,GAAyC,IAAtCuxG,EAAsCvxG,EAAtCuxG,UAAWC,EAA2BxxG,EAA3BwxG,SAAU5gC,EAAiB5wE,EAAjB4wE,WACnBzwC,EAAUuX,YAAiB82D,GAAqBz3C,OAAOt9C,KAAvD0mB,MACFsxE,EAAsB/5D,YAAiBk2D,IACvC8D,EAAiBx1G,kBACrB,kBACEu1G,GACA7gG,aACEvR,IAAEnH,IAAIu5G,EAAqB,SAAArmG,GACzB,OAAIA,EAAErZ,OAAOixB,YAAcn1C,IAAUgiC,YAC5B,EAEFzE,EAAEm0B,WAAan0B,EAAEmmG,UAAYnmG,EAAEm0B,WAAan0B,EAAEmmG,cAG3D,CAACE,IAEG56C,EAAqBnf,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEgwD,GAAG/kE,UAAUsxE,qBAC1DgU,EAA0BnzB,YAC9B,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQC,uBAAyB39C,EAAE09C,QAAQC,sBAAsBj9E,YAIpEqnF,EADS3K,YAAiBq3D,GAAaE,eACrB5sD,SAClB9N,EAAW4B,qBAAW0xC,MACpB3uC,EAAeN,cAAfM,WAEFtzD,EAAc8xD,YAAiBowC,KA1BO9B,EA2BlBC,eAAlBngG,EA3BoCkgG,EA2BpClgG,QACFsiE,EA5BsC49B,EA2B3B9pH,KAEXupB,EAAWiyD,YAAiB,SAAAp9C,GAAC,OAAI0nD,KAAcp0C,SAAStT,EAAGxU,KA+BjE,OAdAyyD,oBAAU,WACR,IAAMwvC,EAAmB,CACvBniG,YAAaA,GAAe,GAC5BE,UACAsiE,YACApG,cAAc74E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACTsc,EADQ,CAEXmrF,YAAY,KAGhBr8B,EAASyzC,KAAYhlF,YAAY+kF,EAAiB/lC,gBAClD9I,EAAWzzD,SAASJ,MAAM4iG,gBAAgBF,IACzC,CAACld,EAAyBhU,IAG3B/5D,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACbtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAiBiB,UAAU,YAAYiyF,aAAiB9hH,IAAUiF,YAClEspB,EAAA1P,EAAA2P,cAAC40G,GAAD,CACE73G,MAAoB,IAAb03G,EAAiB,EAAIA,GAAY36C,EAAqB26C,EAAWrxE,EACxEkiB,SAAUA,EACV1zD,MAAO,cAETmO,EAAA1P,EAAA2P,cAAC40G,GAAD,CACE73G,MAAqB,IAAdy3G,EAAkB,EAAIA,GAAa16C,EAAqB06C,EAAYG,EAC3ErvD,SAAUA,EACV1zD,MAAO,eAETmO,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEiB,UAAU,uCACVqC,QAASmwE,IAAc,EACvBxwE,SAAU,SAAAZ,IA7Cc,WAC5B,IAAMuoF,EAAmB,CACvBniG,YAAaA,GAAe,GAC5BE,UACAsiE,YACApG,cAAc74E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACTsc,EADQ,CAEXmrF,YAAaA,KAGjBr8B,EAASyzC,KAAYhlF,YAAY+kF,EAAiB/lC,gBAClD9I,EAAWzzD,SAASJ,MAAM4iG,gBAAgBF,GAmCpC6pB,IAEF11I,KAAK,YANP,sBEjHO21I,GAA4C,WACvD,IAAMC,EAAep6D,YAAiB,SAAAp9C,GAAC,OAA4B,IAAxBA,EAAEyV,UAAUmwC,UAA+C,IAA3B5lD,EAAEyV,UAAU46C,aAC/EzR,EAAeN,cAAfM,WAKR,OAJAhB,aAAmB,eAAgB,CAAE45D,iBACrCv5D,oBAAU,WACRW,EAAWtnD,KAAKme,UAAU3G,WACzB,CAAC8vC,EAAWtnD,KAAKme,YACbjT,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,OCRI+0G,GAAmE,SAAA52G,GAAqD,IAAlDrB,EAAkDqB,EAAlDrB,MAAOk4G,EAA2C72G,EAA3C62G,kBAAsBC,EAAqB9oI,OAAAg2B,GAAA,EAAAh2B,CAAAgyB,EAAA,+BACnI,OACE2B,EAAA1P,EAAA2P,cAAC+yF,GAAD3mH,OAAA8F,OAAA,GAAuBgjI,EAAvB,CAAuCn4G,MAAOA,IAC5CgD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOA,EAAOuoE,OAAQ4vC,EAAe5vC,OAAS4vC,EAAe5vC,OAAS,GAAI2vC,kBAAmBA,EAAmB7vC,UAAQ,MCmGzH+vC,GAAyB,SACpCC,EACAC,GACG,IAAAC,EAC8Bz5D,cAAzBM,EADLm5D,EACKn5D,WAAY3E,EADjB89D,EACiB99D,SACd+9D,EAAsB56D,YAAiB66D,KAAephF,OAFzDykD,EAGgCC,eAHhCC,EAAA3sG,OAAAqoD,EAAA,EAAAroD,CAAAysG,EAAA,GAAAzsG,OAAAu9F,GAAA,EAAAv9F,CAAA2sG,EAAA,QAGQ08B,EAHR18B,EAAA,GA4BH,OAxB0Bv2E,sBACxB,SAACkzG,GACC,IAAMC,EAAiBP,EAAM,IAAIj2E,IAAao2E,GAAqB9jG,SAAS,IAAI2iB,QAC1Eg6C,EAAWC,aAAiB78F,IAAU0E,MAAOy/H,GAGnDn+D,EACE3uC,IAAaK,iBACX,CACE5gB,MAAO8lF,EACPwnC,QAAS73D,OAAQnnC,SACjBi/F,wBAAwB,EACxBR,mBAAqC,IAAlBK,OAAyBp5I,EAAY+4I,GAE1D,CAAEjiC,SAAS,KAIfqiC,EAAqB,CAAEt2I,KAAM2+E,mBAAQx4C,KAAQwwG,oBAAqBr+F,QAAS,MAE7E,CAAC49F,EAAmBl5D,EAAW7zD,MAAOmtH,EAAsBj+D,KAOnDu+D,GAAqB,SAACvuF,GACjC,IAAMwuF,EAAW1zG,IAAEyjB,MAAMyB,GACzB,GAAoB,IAAhBA,EAAKtnB,QAAgB81G,EAAU,CACjC,IAAMC,EAAQC,aAAeF,EAASj6E,WAAai6E,EAAS1lG,QAC5D,OAAI2lG,EAAMhwF,YAAcn1C,IAAUijC,OACzBkiG,EAAMxxI,SAAW4M,KAAW+1C,IAAMA,IAAMC,IAExCwN,IAGX,OAAOuC,KA6KI++E,GAAqB,SAChC/hF,EACAp/B,EACAohH,EACA38B,EACA48B,EACAC,GACG,IACKh6F,EAAsC8X,EAAtC9X,SAAUoU,EAA4B0D,EAA5B1D,KAAMx/C,EAAsBkjD,EAAtBljD,UAAW+5C,EAAWmJ,EAAXnJ,OAC/B7tB,EAAWi5G,EAAYj/E,IAAiB2+E,GAAmBrlF,GACzDw2B,EAAW9pD,EAASJ,KAAKC,OAASm6B,IAAep6B,KAAKC,KACtDs5G,GAA+BrvD,GAA4B,IAAhBx2B,EAAKxwB,OAChDs2G,EAA4BtvD,GAA4B,IAAhBx2B,EAAKxwB,OAC7C81G,EAAWtlF,EAAK,GAElBw2B,GAAYuyB,GAAoBA,EAAiBz8E,KAAKC,OACxDG,EAAWq8E,GAiCb,IA+EMg9B,EAAqBL,GAAyB,GAE9CM,EAA0BvB,GA5DP,SAACwB,GACxB,IAAIC,EAAcD,EACd95E,EAAc5R,GAAkBl6C,KAAYy6C,IAE5C+qF,GAA+BP,IACjCn5E,EAAcm5E,EAAS/qF,SAAWl6C,KAAYy6C,IAAMz6C,KAAYy6C,IAAMz6C,KAAY06C,MAGhF,YAAaruB,GA7BkB,SAACszB,EAAammF,GACjD,GAAoB,IAAhBnmF,EAAKxwB,OAAT,CAIA,IAAM42G,EAAaD,GAAmBA,EAAgB/iF,OAAS+iF,EAAgB/iF,MAAM5P,OACrF,GAAK4yF,EAAL,CAIA,IAAMC,EAAiBrmF,EAAK,GAAGxM,OAASwM,EAAK,GAAGxM,QAI7C4yF,IAAephH,KAAYu0B,iBAAmB8sF,GAC9CD,IAAephH,KAAYw0B,kBAAoB6sF,IAEhDrmF,EAAK85B,YAaLwsD,CAA6BtmF,EAAMtzB,EAASu2B,SAG9C,IAAIsjF,EAAqBZ,EAAaG,EAA4Bl6F,EAAW,EAAKA,EASlF,OAPAs6F,EAAcA,EACX5hH,OAAOA,GACPymC,UAAUvqD,GACV6/C,OAAO8L,GACPz/B,SAASA,GACTqU,SAASwlG,GAEL30G,IAAE5I,OACPg3B,EACA,SAACgmB,EAAG17C,GACuCA,EAAjCgoC,gBADA,IACiBrX,EAAgB3wB,EAAhB2wB,YAMnBurF,EACJhwD,IAAaovD,EACTE,EACEl6F,EACAqP,GAAe,EACjBu7B,GAAYovD,GACX3qF,GAAe,GAAKrP,EACrB,EACN,OAAOo6B,EAAErc,IAAI,SAAAnG,GACX,IAAMqtE,EAAa2U,aAAel7G,EAAEsV,QAC9B6mG,EAAWjjF,EACdjO,UAAUs7E,EAAWt7E,WACrB8K,OAAO/1B,EAAEiwB,QACTxZ,SAASylG,GAEZ,OAAI3V,EAAWt7E,YAAcn1C,IAAU6iC,OAC9BwjG,EAEFA,EACJxnF,WAAW4xE,EAAW98H,QAAU4M,KAAWg2C,MAC3CH,WAAWq6E,EAAWr6E,YACtBI,OAAOi6E,EAAWj6E,WAGzBsvF,IAMkDxqI,OAAAy0B,EAAA,EAAAz0B,CAAA,CACpDi/E,UAAW75E,IAAU0E,OAClBugI,IAEL,OAAOt3G,kBAAQ,kBAAMu3G,GAAyB,CAACtiF,EAAOp/B,KCxb3CoiH,GAAb,WAGE,SAAAA,IAAehrI,OAAA6rC,GAAA,EAAA7rC,CAAA8rC,KAAAk/F,GAAAl/F,KAFPm/F,qBAEM,EAAAn/F,KADNonB,WACM,EACZpnB,KAAKm/F,gBAAkB,GACvBn/F,KAAKonB,MAAQ,GALjB,OAAAlzD,OAAAisC,GAAA,EAAAjsC,CAAAgrI,EAAA,EAAArvH,IAAA,MAAAgV,MAAA,SAOkDsa,EAAMta,GAMpD,OALAmb,KAAKonB,MAAMjoB,IAAK,EAChBa,KAAKm/F,gBAALjrI,OAAAy0B,EAAA,EAAAz0B,CAAA,GACK8rC,KAAKm/F,gBADVjrI,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEGirC,EAAIta,IAEAmb,OAbX,CAAAnwB,IAAA,SAAAgV,MAAA,SAAA+iC,GAAA,SAAA9qC,EAAAioD,GAAA,OAAAnd,EAAAne,MAAAzJ,KAAA0J,WAAA,OAAA5sB,EAAAoqB,SAAA,kBAAA0gB,EAAA1gB,YAAApqB,EAAA,UAeSA,GACL,OAAOkjB,KAAKgJ,IAAI,SAAUlsB,MAhB9B,CAAAjN,IAAA,aAAAgV,MAAA,WAmBI,OAAOmb,KAAKm/F,oBAnBhBD,EAAA,GAuGaE,GAAuB,SAClCtiH,EACAuiH,EACAnB,GAEA,IAIMK,EAAqBL,GAAyB,GAE9CoB,EAzC8B,SACpCpC,EACAC,GACG,IAAAC,EAC8Bz5D,cAAzBM,EADLm5D,EACKn5D,WAAY3E,EADjB89D,EACiB99D,SAuBpB,OAtB+Bh1C,sBAC7B,SAACkzG,GACC,IAAM+B,EAAsBrC,EAAM,IAAIgC,IAAqBM,aACrDtpC,EAAWC,aAAiB78F,IAAU6E,WAAYohI,GAGxDjgE,EACE3uC,IAAaK,iBACX,CACE5gB,MAAO8lF,EACPwnC,QAAS73D,OAAQnnC,SACjBi/F,wBAAwB,EACxBR,mBAAqC,IAAlBK,OAAyBp5I,EAAY+4I,GAE1D,CAAEjiC,SAAS,MAIjB,CAACiiC,EAAmBl5D,EAAW7zD,QAkBRqvH,CAND,SAAChB,GACvB,IAAMC,EAAcD,EAAQ3hH,OAAOA,GACnC,OAAOuiH,EAAGX,IAImCxqI,OAAAy0B,EAAA,EAAAz0B,CAAA,CAC7Ci/E,UAAW75E,IAAU6E,YAClBogI,IAEL,OAAOt3G,kBAAQ,kBAAMq4G,GAAkB,CAACD,EAAIviH,KC7HjC4iH,GAAsD,SAAAx5G,GAA8B,IAA3BoD,EAA2BpD,EAA3BoD,QAASo+D,EAAkBxhE,EAAlBwhE,KAAMhuE,EAAYwM,EAAZxM,MACnF,OACEmO,EAAA1P,EAAA2P,cAAA,KAAGpO,MAAOA,EAAO4P,QAASA,GACxBzB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,YACdtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,iCACbtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAS,mBAAAr5B,OAAqB43F,QAO5Bi4C,GAAgD,SAAA10G,GAAK,OAChEpD,EAAA1P,EAAA2P,cAAC83G,GAAD1rI,OAAA8F,OAAA,CAAmB0f,MAAM,eAAeguE,KAAK,gBAAmBz8D,KAErD40G,GAAiD,SAAA50G,GAAK,OACjEpD,EAAA1P,EAAA2P,cAAC83G,GAAD1rI,OAAA8F,OAAA,CAAmB0f,MAAM,gBAAgBguE,KAAK,aAAgBz8D,KAEnD60G,GAA+C,SAAA70G,GAAK,OAC/DpD,EAAA1P,EAAA2P,cAAC83G,GAAD1rI,OAAA8F,OAAA,CAAmB0f,MAAM,QAAQguE,KAAK,YAAez8D,KAmB1C80G,GAA0C,SAAA90G,GAAK,OAC1DpD,EAAA1P,EAAA2P,cAAC83G,GAAD1rI,OAAA8F,OAAA,CAAmB0f,MAAM,QAAQguE,KAAK,iBAAoBz8D,KC9B/C+0G,GAIR,SAAA95G,GAA8C,IAA3C4sB,EAA2C5sB,EAA3C4sB,QAASmtF,EAAkC/5G,EAAlC+5G,SAAUC,EAAwBh6G,EAAxBg6G,kBACnBC,EAAqBl5G,kBAAQ,kBAAM6rB,EAAQ9qB,OAASk4G,GAAmB,CAACptF,EAASotF,IAEjFE,EAAiBn5G,kBAAQ,WAC7B,OAAOk5G,EAAqB/1G,IAAEioB,KAAKS,EAASotF,GAAqBptF,GAChE,CAACA,EAASqtF,EAAoBD,IAE3BG,EAAmBp5G,kBAAQ,WAC/B,OAAOk5G,EAAqB/1G,IAAEooB,KAAKM,EAASotF,GAAqB,IAChE,CAACptF,EAASqtF,EAAoBD,IAEjC,OACEr4G,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,kBACXi3G,EAAen9G,IAAI,SAAC41B,EAAQ9O,GAAT,OAClBliB,EAAA1P,EAAA2P,cAAA,MAAIjY,IAAG,GAAA/f,OAAKmwI,EAAL,aAAAnwI,OAAyBi6C,IAC9BliB,EAAA1P,EAAA2P,cAAC83G,GAAsB/mF,MAG1BwnF,EAAiBr4G,OAAS,GACzBH,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEk9D,QAASv9D,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,qBACtBgqF,UAAU,QACVF,cAAe,CAAEC,sBAAuB,2CAEvCmtB,EAAiBp9G,IAAI,SAACq9G,EAAIv2F,GAAL,OACpBliB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoB,QAASg3G,EAAGh3G,QAASzZ,IAAG,GAAA/f,OAAKmwI,EAAL,eAAAnwI,OAA2Bi6C,IAC/DliB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,YACdtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,iCACbtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAS,mBAAAr5B,OAAqBwwI,EAAG54C,SAErC44C,EAAG5mH,uBC/CP6mH,GAAuF,SAAAr6G,GAG9F,IAFJpJ,EAEIoJ,EAFJpJ,OACA0jH,EACIt6G,EADJs6G,mBAEM17G,EAAOm9B,YAAsBnlC,GACnC,OACE+K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,cAAShD,EAAKhI,QACd+K,EAAA1P,EAAA2P,cAAA,WACChD,EAAKipB,YAAcn1C,IAAUijC,QAC5BhU,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGy4G,EADH,IACwBC,aAAe3jH,GADvC,IACgD+K,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQu3G,aAAe5jH,OAOlF6jH,GAAoF,SAAA51G,GAG3F,IAFJjO,EAEIiO,EAFJjO,OACA0jH,EACIz1G,EADJy1G,mBAEA,OACE34G,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGy4G,EACD34G,EAAA1P,EAAA2P,cAAA,WACC24G,aAAe3jH,GAHlB,IAG2B+K,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQu3G,aAAe5jH,MAoBzD8jH,GAKR,SAAAxkF,GAA0D,IAAvDykF,EAAuDzkF,EAAvDykF,WAAYC,EAA2C1kF,EAA3C0kF,eAAgB98F,EAA2BoY,EAA3BpY,WAC5Btd,EADuDxyB,OAAAg2B,GAAA,EAAAh2B,CAAAkoD,EAAA,8CACnCt/B,OACpB0jH,EAtB6B,SACnC95G,EACAo6G,EACA98F,GAEA,OAAO/c,kBAAQ,WACb,IAAM85G,EAAiBD,GAAkBA,IAAmBtuH,KAAqBi8B,GAAK,UAAOrqD,EAD1EyoG,EAEY5qC,YAAsBv7B,GAA7CsoB,EAFW69C,EAEX79C,WACFgyF,GAHan0C,EAEC/vE,OACQ+oD,KAAM72B,GAAchL,GAAYzF,OAAO,gBACnE,OAAOnU,IAAE,CAAC42G,EAAqBD,IAC5Bt7G,OAAO,SAAA2Z,GAAC,YAAUh7C,IAANg7C,IACZ6I,KAAK,MACP,CAACjE,EAAY88F,EAAgBp6G,IAULu6G,CAAsBv6G,EAAao6G,EAAgB98F,GAC9E,OACEnc,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG84G,GAAch5G,EAAA1P,EAAA2P,cAACo5G,GAAD,CAA4BpkH,OAAQ4J,EAAa85G,mBAAoBA,KAClFK,GAAch5G,EAAA1P,EAAA2P,cAACq5G,GAAD,CAAyBrkH,OAAQ4J,EAAa85G,mBAAoBA,MC9C3EY,GAA+C,SAAAl7G,GAAgD,IAA7Cm7G,EAA6Cn7G,EAA7Cm7G,UAAW1oG,EAAkCzS,EAAlCyS,SAAUunG,EAAwBh6G,EAAxBg6G,kBAC1EtkH,EAAY26G,eAAZ36G,QADkGmP,EAE5D,CAAC4N,EAASP,OAAQO,EAASN,iBAAkBM,EAAS//B,WAA7FkkB,EAFmGiO,EAAA,GAE3F6O,EAF2F7O,EAAA,GAEzEgjB,EAFyEhjB,EAAA,GAGpGygD,EAAcvkD,kBAClB,kBACEwS,aAAcd,EAASP,OAAQ2V,EAAWrU,YAAsBqU,GAAY,CAC1E3nD,KAAMwzC,EACNA,mBACAD,WAAYC,KAEhB,CAACjB,EAASP,OAAQ2V,EAAWnU,IAEzB0nG,EAAkBr6G,kBACtB,kBACEwS,aAAcG,EAAkBmU,EAAWrU,YAAsBqU,GAAY,CAC3E3nD,KAAMwzC,EACNA,mBACAD,WAAYC,KAEhB,CAACjB,EAASP,OAAQ2V,EAAWnU,IAEzByuC,EAAYj+C,IAAEnH,IAAIo+G,EAAU/xF,KAAM,SAAAxsB,GAAC,OAAIy+G,aAAcz+G,EAAG0oD,KACxDg2D,EAC8B,IAAlCp3G,IAAEza,KAAK0xH,EAAU/xF,MAAMtnB,QAAgBoC,IAAEm+C,KAAK84D,EAAU/xF,KAAM,SAAClQ,EAAGD,GAAJ,OAAUC,EAAExmC,YAAcA,IAAUijC,SAC9F4lG,EAAe9+F,KAAKwb,IAAIxlB,EAASa,cACjCkoG,EAAaz6G,kBAAQ,kBAAMg7B,YAAsBnlC,IAAS,CAACA,IAC3D6kH,EAAUhpG,EAASa,aAAe,EAClC2pB,EAAexqB,EAASuqB,aAExB0+E,EAAiBt3G,sBACrB,SAACm0G,GACC,IAAMhnF,EAAaiqF,EAAWn1I,OACxB6iD,EAASsyF,EAAWtyF,OACpBJ,EAAa0yF,EAAW1yF,WAG9B,OAAIyI,EACKgnF,EACJ3hH,OAAOwkH,GACPp8G,SAAS,UACTqU,SAAS,GACTsf,OAAOhgD,KAAYy6C,KACnB6O,IAAI,SAAAr/B,GAAC,OACJA,EACGirB,UAAUn1C,IAAUijC,QACpBgd,OAAO8oF,EAAU9oI,KAAYy6C,IAAMz6C,KAAY06C,MAC/Cha,SAASkoG,GACTzyF,WAAWA,GACXyI,WAAWA,GACXrI,OAAOA,KAEX+S,IAAI,SAAAr/B,GAAC,OACJA,EACGirB,UAAUn1C,IAAUijC,QACpBgd,OAAO8oF,EAAU9oI,KAAY06C,KAAO16C,KAAYy6C,KAChD/Z,SAASkoG,GACThqF,WAAWA,KAGbgnF,GAET,CAAC9lG,EAAU+oG,IAEPG,EAAkB5E,GAAuB2E,EAAgB,CAAEzuD,UAAW75E,IAAU0E,MAAO4d,YAEvFkmH,EAAoBx3G,sBACxB,SAACm0G,GACC,IAAM95E,EAAcg9E,EAAU9oI,KAAY06C,KAAO16C,KAAYy6C,IACvD/Z,EAAWoJ,KAAKwb,IAAIsjF,GACpB/C,EAAcD,EACjB3hH,OAAOwkH,GACPp8G,SAAS24G,GAAmBx1D,IAC5BxvB,OAAO8L,GACPprB,SAASA,GACZ,OAAOnP,IAAE5I,OACP6mD,EACA,SAAC7J,EAAG17C,GACF,OAAO07C,EAAErc,IAAI,SAAAnG,GACX,IAAMqtE,EAAa2U,aAAel7G,EAAEsV,QAC9B6mG,EAAWjjF,EAAGjO,UAAUs7E,EAAWt7E,WAAW8K,OAAO8L,GAC3D,OAAI0kE,EAAWt7E,YAAcn1C,IAAU6iC,OAC9BwjG,EACJxnF,WAAW4xE,EAAW98H,QAAU4M,KAAWg2C,MAC3CH,WAAWq6E,EAAWr6E,YACtBzV,SAAS,GACT6V,OAAOi6E,EAAWj6E,QAEhB6vF,KAGXP,IAGJ,CAAC+C,EAAcp5D,EAAWs5D,EAASL,IAG/BS,EAAmB9E,GAAuB6E,EAAmB,CAAE3uD,UAAW75E,IAAU0E,MAAO4d,YAC3FomH,ELsC2B,SACjC9lF,EACAp/B,EACAohH,EACA/6E,GACG,IACK/e,EAAmB8X,EAAnB9X,SAAUoU,EAAS0D,EAAT1D,KACZtzB,EAAoC24G,GAAmBrlF,GACvDw2B,EAAW9pD,IAAag6B,IACxB+iF,EAAsC,IAAhBzpF,EAAKxwB,OAC3B81G,EAAW1zG,IAAEyjB,MAAM2K,GAuDnB+lF,EAAqBL,GAAyB,GAE9C8D,EAAmB/E,GAvDD,SAACwB,GAGvB,IAAIC,EACAwD,EAAgBlzD,EAAW,EAAIrsC,KAAKwb,IAAI/Z,GACxCugB,EAA2B9rD,KAAYy6C,IAqB3C,MAnB2B,WAAvBpuB,EAASJ,KAAKC,OAEdm9G,EADEA,EAAgB,EACFv/F,KAAKw/F,KAAKD,GAEVv/F,KAAKqxC,MAAMkuD,IAI3BD,GAAuBnE,IACzBn5E,EAAcm5E,EAAS/qF,QAGzB2rF,EAAcD,EACX3hH,OAAOA,GACPoI,SAASA,GACT2zB,OAAO8L,GACPprB,SAAS2oG,GACT/+E,aAAaA,IAA+B,GAExC/4B,IAAE5I,OACPg3B,EACA,SAACgmB,EAAG17C,GACF,IAAMk8G,EAAchwD,EAAWrsC,KAAKwb,IAAI/Z,GAAY,EAEpD,OAAOo6B,EAAErc,IAAI,SAAAnG,GACX,IAAMqtE,EAAa2U,aAAel7G,EAAEsV,QAC9B6mG,EAAWjjF,EACdjO,UAAUs7E,EAAWt7E,WACrB8K,OAAO/1B,EAAEiwB,QACTxZ,SAASylG,GACT77E,aAAaA,GAEhB,OAAIkmE,EAAWt7E,YAAcn1C,IAAU6iC,OAC9BwjG,EAEFA,EACJxnF,WAAW4xE,EAAW98H,QAAU4M,KAAWg2C,MAC3CH,WAAWq6E,EAAWr6E,YACtBI,OAAOi6E,EAAWj6E,QAClB+T,aAAaA,MAGpBu7E,IAM2CxqI,OAAAy0B,EAAA,EAAAz0B,CAAA,CAC7Ci/E,UAAW75E,IAAU0E,OAClBugI,IAEL,OAAOt3G,kBAAQ,kBAAM+6G,GAAkB,CAAC9lF,EAAOp/B,IK7GtBslH,CACvB,CAAEh+F,SAAUq9F,EAAcjpF,KAAM6vB,GAChCi5D,EACA,CACE1lH,WAEFunC,GAEIrQ,EAAU7rB,kBAAQ,WACtB,IAAI+T,EAAM,CAAC,CAAEthB,MAAO,iBAAkB4P,QAAS,kBAAM04G,KAAoBt6C,KAAM,KAK/E,OAJI85C,IACFxmG,EAAG,GAAAlrC,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAO8mC,GAAP,CAAY,CAAEthB,MAAO,gBAAiB4P,QAAS,kBAAMu4G,KAAmBn6C,KAAM,cAEnF1sD,EAAG,GAAAlrC,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAO8mC,GAAP,CAAY,CAAEthB,MAAO,QAAS4P,QAAS,kBAAMy4G,KAAoBr6C,KAAM,eAEzE,CAACs6C,EAAkBR,EAASK,EAAiBE,IAChD,OACEl6G,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACu6G,GAAD,CACEvvF,QAASA,EACTmtF,SAAQ,GAAAnwI,OAAK6oC,EAASP,OAAd,KAAAtoC,OAAwB6oC,EAASsL,WAAWgiB,WACpDi6E,kBAAmBA,MClIdoC,GAAoD,SAAAp8G,GAAqB,IAAlB0zG,EAAkB1zG,EAAlB0zG,YAC5DlvE,EAAM+X,YAAiB,SAAAp9C,GAAC,OAAIk0G,GAAqBI,8BAA8Bt0G,EAAGu0G,KACxF,OAAO/xG,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MAAIqC,IAAEijB,MAAMqd,EAAIA,MAAQ7iC,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAcrD,MAAO6lC,EAAIA,IAAK63E,MAAI,EAACr1C,UAAQ,EAACouB,UAAQ,MCW/ExzD,IAAa1D,GAAA,GAAAlwD,OAAA2tB,EAAA,EAAA3tB,CAAAkwD,GAChBxrD,IAAU6iC,OAAOssB,UAAY,KADb7zD,OAAA2tB,EAAA,EAAA3tB,CAAAkwD,GAEhBxrD,IAAUijC,OAAOksB,UAAY,GAFb3D,IAIb4D,GAAiC,SAAC7F,EAA4BpT,GAClE,IAAMkZ,EAAK9F,EAAIvpD,UAGf,OAFmBkvD,GAAcG,EAAGF,WAEhBhZ,GADsB,MAAzBoT,EAAIhpB,iBAA2B,EAAI,MAGhDqpG,GAAsB,SAAClzF,GAC3B,OAAOllB,IAAE5I,OACP8tB,EACA,SAAC7tB,EAAKqB,GACJ,OAAO5uB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFutB,EADL,CAEEqX,IAAKrX,EAAIqX,IAAMhW,EAAEgW,IACjBD,IAAKpX,EAAIoX,IAAM/V,EAAE+V,IACjBoB,KAAMxY,EAAIwY,KAAOnX,EAAEmX,KACnBH,MAAOrY,EAAIqY,MAAQhX,EAAEgX,MACrBC,UAAWtY,EAAIsY,UAAYjX,EAAEiX,aAGjC,CAAEjB,IAAK,EAAGD,IAAK,EAAGoB,KAAM,EAAGH,MAAO,EAAGC,UAAW,KA2IpD,IAAM0kE,GAAyB,SAAC3jE,EAAoC5e,GAClE,IAAMumH,EAAa3nG,EAAUrV,OAAO,SAAAkT,GAAQ,OAAIA,EAAS//B,YAAcA,IAAUijC,SAAQ7T,QAAU,EAC7FsiC,EAAaxvB,EAAUtZ,OAAO,SAACC,EAAK0U,GAAN,OAAa1U,EAAO0U,EAAEsE,YAAa,GACvE,GAAIgoG,GAAc3nG,EAAU9S,OAAS,GAAK9L,EAAO8L,OAAS,EAAG,CAE3D,IAAMkT,EAAQhf,EAAO,GAFsCwmH,EAGzBroG,aAChCa,EAAMvD,eACNuD,EAAMrD,WACNqD,EAAMpD,kBACNoD,EAAM3C,SACN2C,EAAM5C,SACN4C,EAAM9C,OACN8C,EAAMtD,iBAPAmB,EAHmD2pG,EAGnD3pG,OAAQC,EAH2C0pG,EAG3C1pG,cAUhB,MAAO,CACLH,IAAKqC,EAAM5C,SACXQ,IAAKoC,EAAM3C,SACX0B,KAAMiB,EAAMvD,eACZmC,MAAOoB,EAAMrD,WACbkB,OAAQmC,EAAMhD,UACdc,cAAekC,EAAMlD,iBACrB0C,iBAAkB3B,EAClB4B,wBAAyC,IAAhB3B,EACzBmB,gBAAiBe,EAAMtD,gBACvBmC,UAAWmB,EAAMpD,kBACjBwyB,WAAYA,GAIhB,IAvKiB5Z,EAuKXxV,EAAQhf,EAAO,GAEf+sC,EAAW7+B,IAAEwY,IAAIxY,IAAEnH,IAAI6X,EAAW,SAAAhY,GAAC,OAAIglC,GAAchlC,EAAElqB,UAAUmvD,eAAgB,EACjFmB,EAxKe,SAACpuB,EAAoC5e,GAC1D,OAAO4e,EAAUtZ,OACf,SAACC,EAAKkX,GACJ,IAAMwwB,EAAW/+B,IAAExa,KAAKsM,EAAQ,SAAAif,GAAC,OAAIA,EAAE/C,SAAWO,EAASP,SAC3D,GAAI+wB,GAAYxwB,GAAYA,EAASP,OAAQ,CAI3C,IAAMgxB,EAASpB,GAA+BrvB,EAAUwwB,EAAS5wB,UAC3D8wB,EAASrB,GAA+BrvB,EAAUwwB,EAAS7wB,UAC3DqqG,EAAU36E,GAA+BrvB,EAAUwwB,EAASxxB,gBAC5DirG,EAAW56E,GAA+BrvB,EAAUwwB,EAAStxB,YAC7DkC,EAAYiuB,GAA+BrvB,EAAUwwB,EAASrxB,mBACpE,SAAAhoC,OAAAoE,OAAA60B,EAAA,EAAA70B,CACKutB,GADL,CAEE,CACEkX,WACAG,IAAKswB,EACLvwB,IAAKwwB,EACLpvB,KAAM0oG,EACN7oG,MAAO8oG,EACP7oG,UAAWA,EACX8e,OAAQlgB,EAASa,aAAe,EAAI3gC,KAAYy6C,IAAMz6C,KAAY06C,QAItE,OAAO9xB,GAGX,IA2IgBohH,CAAe/nG,EAAW5e,GACtCqtC,EAAYn/B,IAAE3E,OAAOyjC,EAAW,SAAApmC,GAAC,OAAIA,EAAE+1B,SAAWhgD,KAAY06C,OAC9DiW,EAAWp/B,IAAE3E,OAAOyjC,EAAW,SAAApmC,GAAC,OAAIA,EAAE+1B,SAAWhgD,KAAYy6C,MAC7DmW,EAAS+4E,GAAoBj5E,GAC7BG,EAAQ84E,GAAoBh5E,GAC5Bs5E,EA5IR,SAA8BhoG,GAC5B,GAAyB,IAArBA,EAAU9S,OACZ,OAAO8S,EAAU,GAAGtB,aAAe,EAAI3gC,KAAYy6C,IAAMz6C,KAAY06C,KAGvE,IAAMpuB,EAAY49G,GAAajoG,GAC/B,GAAkB,WAAd3V,EACF,OAAOtsB,KAAYy6C,IAErB,IAAMpuB,EAAW85B,IAAWpvC,KAAK,SAAAyV,GAAC,OAAIA,EAAEP,KAAKC,OAASI,IAEtD,QAAiB/gC,IAAb8gC,GAA0B4V,EAAU9S,SAAW9C,EAASu2B,QAAQjD,KAAKxwB,OACvE,OAAOnvB,KAAYy6C,IAIrB,IAAI0vF,EAAqB99G,EAASu2B,QAAQjD,KAAK4lD,KAAK,SAACjmF,EAAGqmD,GAyBtD,OAvBErmD,EAAEvf,YAAcA,IAAU6iC,OACtB,EACAtjB,EAAEhf,aAAeA,KAAWg2C,MAAQh3B,EAAE6/B,YAAcl/C,KAAqBnH,KACzE,EACAwmB,EAAEhf,aAAeA,KAAWg2C,MAAQh3B,EAAE6/B,YAAcl/C,KAAqBrH,MACzE,EACA0mB,EAAEhf,aAAeA,KAAW+1C,KAAO/2B,EAAE6/B,YAAcl/C,KAAqBnH,KACxE,EACAwmB,EAAEhf,aAAeA,KAAW+1C,KAAO/2B,EAAE6/B,YAAcl/C,KAAqBrH,MACxE,EACA,IAEJ+sE,EAAE5lE,YAAcA,IAAU6iC,OACtB,EACA+iC,EAAErlE,aAAeA,KAAWg2C,MAAQh3B,EAAE6/B,YAAcl/C,KAAqBnH,KACzE,EACA6sE,EAAErlE,aAAeA,KAAWg2C,MAAQh3B,EAAE6/B,YAAcl/C,KAAqBrH,MACzE,EACA+sE,EAAErlE,aAAeA,KAAW+1C,KAAO/2B,EAAE6/B,YAAcl/C,KAAqBnH,KACxE,EACA6sE,EAAErlE,aAAeA,KAAW+1C,KAAO/2B,EAAE6/B,YAAcl/C,KAAqBrH,MACxE,EACA,KAGFwxI,EAAsBnoG,EAAUsjE,KAAK,SAACjmF,EAAGqmD,GAyB7C,OAvBErmD,EAAEvf,YAAcA,IAAU6iC,OACtB,EACAtjB,EAAEsgB,YAAY9W,SAAS,SAAWxJ,EAAEqhB,aAAe,EACnD,EACArhB,EAAEsgB,YAAY9W,SAAS,SAAWxJ,EAAEqhB,aAAe,EACnD,EACArhB,EAAEsgB,YAAY9W,SAAS,QAAUxJ,EAAEqhB,aAAe,EAClD,EACArhB,EAAEsgB,YAAY9W,SAAS,QAAUxJ,EAAEqhB,aAAe,EAClD,EACA,IAEJglC,EAAE5lE,YAAcA,IAAU6iC,OACtB,EACA+iC,EAAE/lC,YAAY9W,SAAS,SAAWxJ,EAAEqhB,aAAe,EACnD,EACAglC,EAAE/lC,YAAY9W,SAAS,SAAWxJ,EAAEqhB,aAAe,EACnD,EACAglC,EAAE/lC,YAAY9W,SAAS,QAAUxJ,EAAEqhB,aAAe,EAClD,EACAglC,EAAE/lC,YAAY9W,SAAS,QAAUxJ,EAAEqhB,aAAe,EAClD,EACA,KAOF0pG,EAAoBF,EAAmB53G,MAAM,SAAC+3G,EAAaC,GAE/D,OAAOC,GAAqBF,EAAaF,EAAoBG,MAK/D,OAAIl+G,EAASu2B,QAAQM,gBAEnBinF,EAAqBA,EAAmB//G,IAAI,SAAAk/B,GAAG,OAAAjuD,OAAAy0B,EAAA,EAAAz0B,CAAA,GAC1CiuD,EAD0C,CAE7CnK,UAAWmK,EAAInK,YAAcl/C,KAAqBnH,KAAOmH,KAAqBrH,MAAQqH,KAAqBnH,UAErEy5B,MAAM,SAAC+3G,EAAaC,GAE1D,OAAOC,GAAqBF,EAAaF,EAAoBG,MAGtDvqI,KAAY06C,KAGnB2vF,EACKrqI,KAAYy6C,IAEdz6C,KAAY06C,KA0CC+vF,CAAqBxoG,GAEnCstB,EAAMw1C,aAAIxzE,IAAEnH,IAAI6X,EAAW,SAAAhY,GAAC,OAAIA,EAAEqW,kBAAoB,MAAO,EAE7DwwB,EAAWm5E,IAAgBjqI,KAAY06C,KAAOmW,EAAM5wB,IAAM2wB,EAAO5wB,IAAM4wB,EAAO3wB,IAAM4wB,EAAM7wB,IAC1F+wB,EAAWk5E,IAAgBjqI,KAAY06C,KAAOmW,EAAM7wB,IAAM4wB,EAAO3wB,IAAM2wB,EAAO5wB,IAAM6wB,EAAM5wB,IAC1FyqG,GACHT,IAAgBjqI,KAAY06C,MAAqC,GAA7BmW,EAAMzvB,KAAOwvB,EAAOxvB,MAAawvB,EAAOxvB,KAAOyvB,EAAMzvB,MAAQgvB,EAC9Fu6E,GACHV,IAAgBjqI,KAAY06C,MAAuC,GAA/BmW,EAAM5vB,MAAQ2vB,EAAO3vB,OAAc2vB,EAAO3vB,MAAQ4vB,EAAM5vB,OAASmvB,EAClGlvB,GACH+oG,IAAgBjqI,KAAY06C,MACe,GAAvCmW,EAAM3vB,UAAY0vB,EAAO1vB,WAC1B0vB,EAAO1vB,UAAY2vB,EAAM3vB,WAAakvB,EACtCnwB,GA7LW4X,EA6LK,CAACiZ,EAAUC,IA7LGx/B,IAAE2Y,IAAI2N,IAAS,GA6LL0X,EAAMa,GAC9CpwB,EA7LU,SAAC6X,GAAD,OAAoBtmB,IAAEwY,IAAI8N,IAAS,EA6LvC+yF,CAAU,CAAC95E,EAAUC,IAAaxB,EAAMa,EAtD6Cy6E,EAuD/DrpG,aAChCkpG,EACAC,EACAzpG,EACAjB,EACAD,EACAiC,EAAU,GAAG1C,OACb8C,EAAMtD,iBAPAmB,EAvDyF2qG,EAuDzF3qG,OAAQC,EAvDiF0qG,EAuDjF1qG,cAUhB,MAAO,CACLH,IAAKzO,IAAEy+B,MAAMhwB,EAAK,GAClBC,IAAK1O,IAAEy+B,MAAM/vB,EAAK,GAClBmB,KAAMspG,EACNzpG,MAAO0pG,EACPzqG,OAAQmC,EAAMhD,UACdc,cAAekC,EAAMlD,iBACrB0C,iBAAkB3B,EAClB4B,wBAAyC,IAAhB3B,EACzBmB,gBAAiBe,EAAMtD,gBACvBmC,UAAWmB,EAAMpD,kBACjBwyB,WAAYA,IC3NT,SAASq5E,GAATz9G,GAAiF,IAA5CyS,EAA4CzS,EAA5CyS,SAA4CirG,EAC3BjrG,EAAS,GAA5DN,EAD8EurG,EAC9EvrG,iBAA6B0V,EADiD61F,EAC5DhrI,UAAsBw/B,EADsCwrG,EACtCxrG,OACxCxc,EAAY26G,eAAZ36G,QACF0lH,EAAkBr6G,kBACtB,kBACEwS,aAAcpB,EAAkB0V,EAAWrU,YAAsBqU,GAAY,CAC3E3nD,KAAMiyC,EACNuB,iBAAkBvB,EAClBsB,WAAYtB,KAEhB,CAACD,EAAQx/B,IAAWy/B,IAGhBlT,EAAY49G,GAAapqG,GAC3BzT,EAAW85B,IAAWpvC,KAAK,SAAAyV,GAAC,OAAIA,EAAEP,KAAKC,OAASI,IAGhDD,GAAYA,EAASu2B,QAAQG,MAAM5D,YAAcz6B,KAAey1B,sBAClE9tB,EAASu2B,QAAQjD,KAAK,GAAGR,UAAYl/C,KAAqBnH,KAC1DuzB,EAASu2B,QAAQjD,KAAK,GAAGR,UAAYl/C,KAAqBrH,OAI5D,IAAIuxI,EACF99G,GACAA,EAASu2B,QAAQjD,KAAK4lD,KAAK,SAACjmF,EAAGqmD,GAyB7B,OAvBErmD,EAAEvf,YAAcA,IAAU6iC,OACtB,EACAtjB,EAAEhf,aAAeA,KAAWg2C,MAAQh3B,EAAE6/B,YAAcl/C,KAAqBnH,KACzE,EACAwmB,EAAEhf,aAAeA,KAAWg2C,MAAQh3B,EAAE6/B,YAAcl/C,KAAqBrH,MACzE,EACA0mB,EAAEhf,aAAeA,KAAW+1C,KAAO/2B,EAAE6/B,YAAcl/C,KAAqBnH,KACxE,EACAwmB,EAAEhf,aAAeA,KAAW+1C,KAAO/2B,EAAE6/B,YAAcl/C,KAAqBrH,MACxE,EACA,IAEJ+sE,EAAE5lE,YAAcA,IAAU6iC,OACtB,EACA+iC,EAAErlE,aAAeA,KAAWg2C,MAAQh3B,EAAE6/B,YAAcl/C,KAAqBnH,KACzE,EACA6sE,EAAErlE,aAAeA,KAAWg2C,MAAQh3B,EAAE6/B,YAAcl/C,KAAqBrH,MACzE,EACA+sE,EAAErlE,aAAeA,KAAW+1C,KAAO/2B,EAAE6/B,YAAcl/C,KAAqBnH,KACxE,EACA6sE,EAAErlE,aAAeA,KAAW+1C,KAAO/2B,EAAE6/B,YAAcl/C,KAAqBrH,MACxE,EACA,KAGJwxI,EAAsBtqG,EAASylE,KAAK,SAACjmF,EAAGqmD,GAyB5C,OAvBErmD,EAAEvf,YAAcA,IAAU6iC,OACtB,EACAtjB,EAAEsgB,YAAY9W,SAAS,SAAWxJ,EAAEqhB,aAAe,EACnD,EACArhB,EAAEsgB,YAAY9W,SAAS,SAAWxJ,EAAEqhB,aAAe,EACnD,EACArhB,EAAEsgB,YAAY9W,SAAS,QAAUxJ,EAAEqhB,aAAe,EAClD,EACArhB,EAAEsgB,YAAY9W,SAAS,QAAUxJ,EAAEqhB,aAAe,EAClD,EACA,IAEJglC,EAAE5lE,YAAcA,IAAU6iC,OACtB,EACA+iC,EAAE/lC,YAAY9W,SAAS,SAAWxJ,EAAEqhB,aAAe,EACnD,EACAglC,EAAE/lC,YAAY9W,SAAS,SAAWxJ,EAAEqhB,aAAe,EACnD,EACAglC,EAAE/lC,YAAY9W,SAAS,QAAUxJ,EAAEqhB,aAAe,EAClD,EACAglC,EAAE/lC,YAAY9W,SAAS,QAAUxJ,EAAEqhB,aAAe,EAClD,EACA,KAGFqqG,EAAwBb,EAC1BA,EAAmB//G,IAAI,SAACkgH,EAAaC,GAAd,OACrBzgG,KAAKqxC,MACFivD,EAAoBG,IAAaH,EAAoBG,GAAU5pG,cAC9D,GAAK2pG,EAAY1vF,YAAc0vF,EAAY1vF,YAAc,MAG/D,GAEAqwF,EAA4BnhG,KAAKI,IAAL0G,MAAA9G,KAAIzuC,OAAA60B,EAAA,EAAA70B,CAAQ2vI,IAIxCE,GAFsBphG,KAAKC,IAAL6G,MAAA9G,KAAIzuC,OAAA60B,EAAA,EAAA70B,CAAQ2vI,KAEb,QACRz/I,IAAb8gC,GAA0BA,EAASu2B,QAAQM,gBAE7CinF,EAAqBA,EACjBA,EAAmB//G,IAAI,SAAAk/B,GAAG,OAAAjuD,OAAAy0B,EAAA,EAAAz0B,CAAA,GACrBiuD,EADqB,CAExBnK,UACEmK,EAAInK,YAAcl/C,KAAqBnH,KAAOmH,KAAqBrH,MAAQqH,KAAqBnH,SAEpG,GACJoyI,EAAqBf,EAAmB53G,MAAM,SAAC+3G,EAAaC,GAE1D,OAAOC,GAAqBF,EAAaF,EAAoBG,OAIjE,IAAMY,EAAgB/8G,kBAAQ,WA8B5B,OA7BsB0R,EAASnX,OAC7B,SAACC,EAAKwZ,GACJ,IAAMymG,EAAaz/E,YAAsBhnB,EAAI7C,QACvCqf,EAAaiqF,EAAWn1I,OACxB6iD,EAASsyF,EAAWtyF,OACpBJ,EAAa0yF,EAAW1yF,WAGxBjB,GADepL,KAAKwb,IAAIljB,EAAIzB,cAChBie,EAAa7+C,IAAUijC,OAASjjC,IAAU6iC,QACtDod,EAAS5d,EAAIzB,aAAe,EAAI3gC,KAAY06C,KAAO16C,KAAYy6C,IAC/D0N,EAAuB8rC,YAC3Bw0C,EAAgBxkH,OAChBwkH,EAAgB1nG,kBAAoB,IAEhC0V,EAAOuyD,aAAY,GAAIy/B,EAAiB,CAC5CvzF,YACA0J,aACAkN,YAAa9L,EACbzJ,SACAJ,WAAYA,EAAai1F,aAAaj1F,EAAYsyF,EAAgBxkH,OAAQkkC,QAAwB58D,IAGpG,OAAO8P,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFutB,EACA6tB,IAGP,KAGD,CAAC3W,IAEEqpG,EAAmB/E,GACvB,SAACiH,GAeC,GAdAA,EAAapnH,OAAOwkH,GACpB4C,EAAah/G,cAAsB9gC,IAAb8gC,EAAyBA,EAAWg6B,UAEzC96D,IAAb8gC,GACgB,WAAdC,IAEgB,kBAAdA,GAA+C,iBAAdA,EACnC++G,EAAarrF,OAAOkrF,EAAqBlrI,KAAY06C,KAAO16C,KAAYy6C,KAExE4wF,EAAarrF,OAAOkrF,EAAqBlrI,KAAYy6C,IAAMz6C,KAAY06C,MAEzE2wF,EAAa3qG,SAASoJ,KAAKwb,IAAI2lF,KAGjB,WAAd3+G,EAAwB,CAC1B,IAAMg/G,EAAkBxrG,EAASnX,OAC/B,SAAC2iH,EAAiBC,GAAlB,OAAgCD,EAAkBC,EAAU5qG,cAC5D,GAEI6qG,EAA8B1hG,KAAKwb,IAAIgmF,GAC7CD,EAAa3qG,SAAS8qG,EAA8B,EAAI1hG,KAAKw/F,KAAKkC,GAA+B1hG,KAAKqxC,MAAMqwD,IAC5GH,EAAarrF,OACXsrF,EAAkB,EAAItrI,KAAY06C,KAAO16C,KAAYy6C,IAAMz6C,KAAYy6C,IAAMz6C,KAAY06C,MAE3F2wF,EAAa/hF,IAAI,SAAAmF,GACf,IAAM+hE,EAAa2U,aAAerlG,EAAS,GAAGP,QAI9C,OAHiBkvB,EACdvZ,UAAUs7E,EAAWt7E,WACrB8K,OAAOsrF,EAAkB,EAAItrI,KAAY06C,KAAO16C,KAAYy6C,YAIjEp/C,OAAOqJ,OAAOymI,GAAernE,QAAQ,SAACxa,EAAKhsC,GACzC+tH,EAAa/hF,IAAI,SAAAmF,GACf,IAAM+hE,EAAa2U,aAAerlG,EAASxiB,GAAOiiB,QAC5CmB,OACSn1C,IAAb8gC,EACIA,EAASu2B,QAAQjD,KAAKriC,SAAuD/xB,IAA7C8gC,EAASu2B,QAAQjD,KAAKriC,GAAOs9B,YAC3DvuB,EAASu2B,QAAQjD,KAAKriC,IAAU+O,EAASu2B,QAAQjD,KAAKriC,GAAOs9B,YAC7D,EACF9a,EAASxiB,GAAOqjB,aAEhBylG,EAAW33E,EACdvZ,UAAUs7E,EAAWt7E,WACrB8K,OAAOsJ,EAAIpP,QACXxZ,SAASA,EAAWoJ,KAAKwb,IAAI5kB,GAAY,GAC5C,OAAI8vF,EAAWt7E,YAAcn1C,IAAU6iC,OAC9BwjG,EAEFA,EACJxnF,WAAW4xE,EAAW98H,QAAU4M,KAAWg2C,MAC3CH,WAAWq6E,EAAWr6E,YACtBI,OAAOi6E,EAAWj6E,YAK3B,OAAO80F,GAET,CACE/wD,UAAW75E,IAAU0E,MACrB4d,YAIE0oH,EAAmBrH,GACvB,SAACiH,GAQC,OAPAA,EAAapnH,OAAOwkH,GACpB4C,EAAah/G,cAAsB9gC,IAAb8gC,EAAyBA,EAAWg6B,UACzC96D,IAAb8gC,IACFg/G,EAAarrF,OAAOhgD,KAAYy6C,KAChC4wF,EAAa3qG,SAAS,IAGN,WAAdpU,GACF++G,EAAa/hF,IAAI,SAAAmF,GACf,IAAM+hE,EAAa2U,aAAerlG,EAAS,GAAGP,QAK9C,OAJiBkvB,EACdvZ,UAAUs7E,EAAWt7E,WACrB8K,OAAOhgD,KAAYy6C,KACnB/Z,SAASoJ,KAAKwb,IAAIxlB,EAAS,GAAGa,iBAG5B0qG,IAGThwI,OAAOqJ,OAAOymI,GAAernE,QAAQ,SAACxa,EAAKhsC,GACzC+tH,EAAa/hF,IAAI,SAAAmF,GACf,IAAM+hE,EAAa2U,aAAerlG,EAASxiB,GAAOiiB,QAC5CmB,OACSn1C,IAAb8gC,EACIA,EAASu2B,QAAQjD,KAAKriC,SAAuD/xB,IAA7C8gC,EAASu2B,QAAQjD,KAAKriC,GAAOs9B,YAC3DvuB,EAASu2B,QAAQjD,KAAKriC,IAAU+O,EAASu2B,QAAQjD,KAAKriC,GAAOs9B,YAC7D,EACF9a,EAASxiB,GAAOqjB,aAChBylG,EAAW33E,EACdvZ,UAAUs7E,EAAWt7E,WACrB8K,OAAOsJ,EAAIpP,SAAWl6C,KAAYy6C,IAAMz6C,KAAY06C,KAAO16C,KAAYy6C,KACvE/Z,SAASoJ,KAAKwb,IAAI5kB,EAAWoJ,KAAKwb,IAAI5kB,GAAY,IACrD,OAAI8vF,EAAWt7E,YAAcn1C,IAAU6iC,OAC9BwjG,EAEFA,EACJxnF,WAAW4xE,EAAW98H,QAAU4M,KAAWg2C,MAC3CH,WAAWq6E,EAAWr6E,YACtBI,OAAOi6E,EAAWj6E,YAGlB80F,IAET,CACE/wD,UAAW75E,IAAU0E,MACrB4d,YAIJ,OACEiM,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACu6G,GAAD,CACEvvF,QAAS,CACP,CAAEp5B,MAAO,iBAAkB4P,QAAS,kBAAM04G,KAAoBt6C,KAAM,IACpE,CAAEhuE,MAAO,QAAS4P,QAAS,kBAAMg7G,KAAoB58C,KAAM,aAE7Du4C,SAAUtnG,EAAS1V,IAAI,SAAAkT,GAAC,OAAIA,EAAEiC,OAAS,IAAMjC,EAAEqD,eAAcyO,KAAK,KAClEi4F,kBAAmB,KC3SZ,SAASqE,GACtB3qG,EACA4qG,GAIA,IAHAC,IAGA/6F,UAAA1hB,OAAA,QAAA5jC,IAAAslD,UAAA,KAAAA,UAAA,GAFAg7F,IAEAh7F,UAAA1hB,OAAA,QAAA5jC,IAAAslD,UAAA,KAAAA,UAAA,GADAglD,EACAhlD,UAAA1hB,OAAA,EAAA0hB,UAAA,QAAAtlD,EACMugJ,GAAyBD,EAC/B,OAAOz9G,kBAAiC,WACtC,IAAM29G,EAAiBJ,EAAgB5qG,GAAoB4qG,EAAgB5qG,GAAkBkB,UAAY,GAEnG+pG,EAAsBz6G,IAAEimB,KAAKu0F,EAAe3hH,IAAI,SAAAkT,GAAC,OAAIA,EAAE+sB,gBACvD4hF,EAAWp2C,IAAiBm2C,EAAoBljH,SAAS+sE,GACzDq2C,GAA0B,IAAlBr2C,EACRs2C,EAA0BF,EAE5BF,EAAen/G,OAAO,SAAA0Q,GAAC,OAAwB,IAApBA,EAAE+sB,eAD7B0hF,EAAen/G,OAAO,SAAA0Q,GAAC,OAAIA,EAAE+sB,eAAiBwrC,IAE5Cu2C,GACHv2C,GAAgBq2C,EACb36G,IAAE3E,OAAOm/G,EAAgB,SAAAzuG,GAAC,OAAIA,EAAEkC,mBAAqBuB,IACrDxP,IAAE3E,OAAOu/G,EAAwB,SAAA7uG,GAAC,OAAIA,EAAEkC,mBAAqBuB,IAC7DsrG,EAAmB96G,IAAE+6G,QAAQF,EAAkB,SAAA9uG,GAAC,OAAIA,EAAEqV,UAyF5D,OAtF+Cy5F,EAC5CzjH,OAAO,SAAC4jH,EAA2CzsG,GAElD,IAAM0sG,GAKG,IAJPD,EAAiBtoE,UACf,SAAAwoE,GAAe,OACbA,EAAgBltG,SAAWO,EAASP,UACnCusG,GAA6E,IAArDO,EAAiBI,EAAgB95F,SAASxjB,UAInEu9G,EAAqB5sG,EAASa,aAAeb,EAASQ,iBAG5D,GAAIsrG,GAAsBY,EAAoB,CAG5C,GAAIV,GAAyBO,EAAiBvsG,EAAS6S,SAASxjB,OAAS,EACvE,SAAAl4B,OAAAoE,OAAA60B,EAAA,EAAA70B,CACKkxI,GADL,CAAAlxI,OAAAy0B,EAAA,EAAAz0B,CAAA,GAGOykC,EAHP,CAIIW,WAAYisG,EACZC,YAAa,CAAC7sG,EAASo4B,gBAK7B,IAAM00E,EAA+BL,EAAiBtoE,UACpD,SAAA4oE,GAAgB,OACdA,EAAiBttG,SAAWO,EAASP,UACpCusG,GAA8E,IAAtDO,EAAiBQ,EAAiBl6F,SAASxjB,UAGxE,IAAsC,IAAlCy9G,EAEF,OAAIL,EAAiBK,GAA8BviF,eAAiBvqB,EAASuqB,aAC3E,GAAApzD,OAAAoE,OAAA60B,EAAA,EAAA70B,CACKkxI,GADL,CAAAlxI,OAAAy0B,EAAA,EAAAz0B,CAAA,GAEOykC,EAFP,CAEiBW,WAAYisG,EAAoBC,YAAa,CAAC7sG,EAASo4B,iBAKtEq0E,EAAiBK,GAA8BD,YAAYx9G,QAAU,IACvEo9G,EAAiBK,GAAjBvxI,OAAAy0B,EAAA,EAAAz0B,CAAA,GACKkxI,EAAiBK,GADtB,CAEEjrG,UACE4qG,EAAiBK,GAA8BjrG,UAC/C4qG,EAAiBK,GAA8BjsG,gBAGrD4rG,EAAiBK,GAAjBvxI,OAAAy0B,EAAA,EAAAz0B,CAAA,GACKkxI,EAAiBK,GADtB,CAEEjsG,aAAc4rG,EAAiBK,GAA8BjsG,aAAeb,EAASa,aACrFN,UAAWksG,EAAiBK,GAA8BvsG,UAAYP,EAASO,UAC/EI,WAAY8rG,EAAiBK,GAA8BnsG,WAAaisG,EACxE/qG,UACE4qG,EAAiBK,GAA8BjrG,UAAY7B,EAAS6B,UAAY7B,EAASa,aAC3FgsG,YAAW,GAAA11I,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAMkxI,EAAiBK,GAA8BD,aAArD,CAAkE7sG,EAASo4B,eAEjFq0E,GAKX,SAAAt1I,OAAAoE,OAAA60B,EAAA,EAAA70B,CACKkxI,GADL,CAAAlxI,OAAAy0B,EAAA,EAAAz0B,CAAA,GAGOykC,EAHP,CAIIW,WAAYisG,EACZC,YAAa,CAAC7sG,EAASo4B,iBAG1B,IACF9tC,IAAI,SAAA6X,GAEH,OAAI2pG,GAAsB3pG,EAAU0qG,YAAYx9G,OAAS,EAChD9zB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACF4mC,EADL,CAEEN,UAAWM,EAAUN,UAAYM,EAAUtB,eAGxCsB,KAIV,CAAC0pG,EAAiB5qG,EAAkB6qG,EAAoBC,EAA0Bh2C,IAGhF,SAASi3C,GAA4BC,EAAmCC,GAC7E,GAAID,EAAWhtI,YAAcA,IAAU6iC,OACrC,OAAQ,EAEV,GAAIoqG,EAAWjtI,YAAcA,IAAU6iC,OACrC,OAAO,EAGT,GAAImqG,EAAWhtI,YAAcA,IAAUijC,QAAUgqG,EAAWjtI,YAAcA,IAAUijC,OAAQ,CAC1F,IAAMiqG,EAAmB9H,aAAe4H,EAAWxtG,QAC7C2tG,EAAmB/H,aAAe6H,EAAWztG,QAGnD,GACE0tG,EAAiB92F,YACjB+2F,EAAiB/2F,YACjB82F,EAAiB92F,WAAWiX,YAAc8/E,EAAiB/2F,WAAWiX,UAGtE,OACE6/E,EAAiBv5I,SAAW4M,KAAWg2C,MACvC42F,EAAiBx5I,SAAW4M,KAAWg2C,MACvC22F,EAAiB12F,QACjB22F,EAAiB32F,OAEV02F,EAAiB12F,OAAS22F,EAAiB32F,OAKlD02F,EAAiBv5I,SAAW4M,KAAW+1C,KACvC62F,EAAiBx5I,SAAW4M,KAAW+1C,KACvC42F,EAAiB12F,QACjB22F,EAAiB32F,OAEV22F,EAAiB32F,OAAS02F,EAAiB12F,OAIhD02F,EAAiBv5I,SAAW4M,KAAWg2C,MAAQ42F,EAAiBx5I,SAAW4M,KAAW+1C,KAChF,EAED,EAGJ,GAAI42F,EAAiB92F,YAAc+2F,EAAiB/2F,WACzD,OAAO82F,EAAiB92F,WAAWiX,UAAY8/E,EAAiB/2F,WAAWiX,UAG/E,OAAQ,ECpHH,SAAS+/E,GAAiBlrG,GAC/B,QAAkB12C,IAAd02C,GAA2BA,EAAU9S,QAAU,EACjD,OAAO,EAET,IAAIi+G,EAAWnrG,EACZ7X,IAAI,SAAA0V,GAAQ,OAAIA,EAAS6B,UAAY7B,EAASa,aAAeb,EAASQ,mBACtE3X,OAAO,SAACrJ,EAAGinB,GAAJ,OAAUjnB,EAAIinB,IAEpB8mG,EAAgE,GARDv7B,GAAA,EAAAC,GAAA,EAAAC,OAAAzmH,EAAA,IASnE,IATmE,IASnE0mH,EATmEq7B,EAAA,eAS1DxtG,EAT0DmyE,EAAAjmF,MAU7DuhH,EAAiBF,EAAqCppE,UACxD,SAAAupE,GAAmC,OAAIA,EAAoCjuG,SAAWO,EAASP,UAEzE,IAApBguG,EACFF,EAAqC18F,KAArCt1C,OAAAy0B,EAAA,EAAAz0B,CAAA,GAA+CykC,EAA/C,CAAyDa,aAAcmJ,KAAKwb,IAAIxlB,EAASa,iBAEzF0sG,EAAqCE,GAAgB5sG,cAAgBmJ,KAAKwb,IAAIxlB,EAASa,eAP3FuxE,EAAqBjwE,EAArB1C,OAAA4yE,cAAAL,GAAAG,EAAAC,EAAA9pE,QAAAgqE,MAAAN,GAAA,EAAgCw7B,IATmC,MAAAr+F,GAAA8iE,GAAA,EAAAC,EAAA/iE,EAAA,YAAA6iE,GAAA,MAAAI,EAAAG,QAAAH,EAAAG,SAAA,WAAAN,EAAA,MAAAC,GAoBnE,IAAMy7B,EAAmBJ,EAAqCzgH,OAC5D,SAAAkT,GAAQ,OAAIA,EAAS//B,YAAcA,IAAUijC,SAE3C0qG,EAA8BD,EAAiB9kH,OACjD,SAACglH,EAAa7tG,GACZ,OAAIA,EAASa,aAAeb,EAASQ,iBAAmBqtG,EAC/C7jG,KAAKwb,IAAIqoF,GAEX7tG,EAASa,aAAeb,EAASQ,kBAE1CmtG,EAAiBt+G,OAAS,EAAIs+G,EAAiB,GAAG9sG,aAAe8sG,EAAiB,GAAGntG,iBAAmB,GAGpGstG,EAAkBP,EAAqCzgH,OAC3D,SAAAkT,GAAQ,OAAIA,EAAS//B,YAAcA,IAAUijC,SAE3C6qG,EAA4BD,EAAgBjlH,OAC9C,SAACglH,EAAa7tG,GACZ,OAAIA,EAASa,aAAeb,EAASQ,iBAAmBqtG,EAC/C7jG,KAAKwb,IAAIqoF,GAEX7tG,EAASa,aAAeb,EAASQ,kBAE1CstG,EAAgBz+G,OAAS,EAAIy+G,EAAgB,GAAGjtG,aAAeitG,EAAgB,GAAGttG,iBAAmB,GAGvG,OAAuC,IAAhCotG,EACH5jG,KAAKwb,IAAI8nF,EAAWtjG,KAAKwb,IAAIooF,IACC,IAA9BG,EACA/jG,KAAKwb,IAAI8nF,EAAWtjG,KAAKwb,IAAIuoF,IAC7B,EAMC,IAAMC,GAMR,SAAAzgH,GAA8E,IAA3E0T,EAA2E1T,EAA3E0T,iBAAkBoJ,EAAyD9c,EAAzD8c,KAAMk9F,EAAmDh6G,EAAnDg6G,kBAAmBxxC,EAAgCxoE,EAAhCwoE,aAAc2L,EAAkBn0E,EAAlBm0E,YAAkBusC,EACZC,eAA7DpC,EADyEmC,EACzEnC,mBAAoBC,EADqDkC,EACrDlC,yBAA0B/oC,EAD2BirC,EAC3BjrC,WAChDnrF,EAAW,CACfi0H,mBAAoBA,IAAsB,EAC1CC,yBAA0BA,IAA4B,EACtD/oC,WAAYA,IAAc,EAC1BtB,YAAa,IAETsqC,GAAyBn0H,EAASk0H,yBAGlC5pG,EAAqCypG,GACzC3qG,EAHuC6oC,YAAiB41D,IAKxD7nH,EAASi0H,mBACTj0H,EAASk0H,yBACTh2C,GAGIw2C,EAAmB96G,IAAE+6G,QAAQrqG,EAAW,SAAA3E,GAAC,OAAIA,EAAEqV,UAC/Cs7F,EAAkB18G,IAAE+6G,QAAQD,EAAkB,SAAA6B,GAAE,OAAkB,IAAdA,EAAG/+G,cAC7B5jC,IAA5B0iJ,EAAe,WAAyD1iJ,IAA/B0iJ,EAAe,KAAS,KACnEA,EAAe,KAAS,GAAG,GAAGE,eAAiB9yH,KAAoB9B,WAGrE,IAAI60H,EAAkBhgH,kBAAQ,WAC5B,OAAO6T,EAAUsjE,KAAKunC,KACrB,CAAC7qG,IAEEosG,EAA+CjgH,kBAAQ,WAC3D,YAAgC7iC,IAA5B0iJ,EAAe,KAC8BA,EAAe,KAC3DK,OACA1hH,OAAO,SAAAwV,GAAG,OAAIA,EAAIriC,YAAcA,IAAU6iC,SACxB2iE,KAAKunC,IAErB,IACN,CAACmB,EAAe,OAEnB,OAAInC,EAEA98G,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,UAC+B3jC,IAA5B0iJ,EAAe,MACdA,EAAe,KAASK,OAAO1hH,OAAO,SAAAwV,GAAG,OAAIA,EAAIriC,YAAcA,IAAU6iC,SAAQzT,OAAS,GACxFH,EAAA1P,EAAA2P,cAACs/G,GAAD,CACEC,gBAAiBP,EAAe,KAC7BK,OACA1hH,OAAO,SAAAwV,GAAG,OAAIA,EAAIriC,YAAcA,IAAU6iC,SAC1CxY,IAAI,SAAAgY,GAAG,OAAA/mC,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAU+mC,EAAV,CAAe+rG,eAAgB9yH,KAAoBozH,UAC7DtkG,KAAMA,EACNk9F,kBAAmBA,EACnB7lC,YAAaA,EACbxqF,IAAK,mBACL8rF,WAAYA,EACZjN,aAAcA,SAGUtqG,IAA7B0iJ,EAAe,OACdA,EAAe,MAAUK,OAAOn/G,OAAS,GACzC9zB,OAAOqJ,OAAOupI,EAAe,OAAW7jH,IAAI,SAACskH,EAAMxtH,GAAP,OAC1C8N,EAAA1P,EAAA2P,cAACs/G,GAAD,CACEC,gBAAiBE,EACjBvkG,KAAMA,EACNk9F,kBAAmBA,EACnB7lC,YAAaA,EACbxqF,IAAK,OAASkK,EACd4hF,WAAYA,EACZjN,aAAcA,WAGKtqG,IAAxB8iJ,GACCA,EAAoBl/G,OAAS,GAC7Bk/G,EAAoBjkH,IAAI,SAAC0V,EAAU5e,GAAX,OACtB8N,EAAA1P,EAAA2P,cAAC0/G,GAAD,CACE33H,IAAG,GAAA/f,OAAK6oC,EAASP,OAAd,SAAAtoC,OAA4BiqB,GAC/B4e,SAAUA,EACVqK,KAAMA,EACNk9F,kBAAmBA,EACnB7lC,YAAaA,EACb3L,aAAcA,OAQxB7mE,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGk/G,EAAgBhkH,IAAI,SAACkT,EAAGpc,GACvB,OACE8N,EAAA1P,EAAA2P,cAAC0/G,GAAD,CACE33H,IAAG,GAAA/f,OAAKqmC,EAAEiC,OAAP,SAAAtoC,OAAqBiqB,GACxB4e,SAAUxC,EACV6M,KAAMA,EACNk9F,kBAAmBA,EACnB7lC,YAAaA,QAQzB,SAASotC,GAAkBJ,GAA0C,IAE/DniH,EAAW,SACf,OAF2BmiH,EAAgB,GAAnCL,gBAGN,KAAK9yH,KAAoBozH,MAEvB,OADApiH,EAAW,SAET2C,EAAA1P,EAAA2P,cAAA,WACED,EAAA1P,EAAA2P,cAAA,WAAM5C,IAGZ,KAAKhR,KAAoB+oC,OACvB/3B,EAAQ,GAAAp1B,OAAMu3I,EAAgBpkH,IAAI,SAAAkT,GAAC,OAAIA,EAAEsC,YAAY9W,SAAS,SAAQA,UAAS,GAAQ,MAAQ,QAC/F,MACF,KAAKzN,KAAoBspC,YAGzB,KAAKtpC,KAAoBwzH,YACvBxiH,EAAW,eACX,MACF,KAAKhR,KAAoBwpC,WAGzB,KAAKxpC,KAAoByzH,WACvBziH,EAAW,cACX,MACF,KAAKhR,KAAoBwxF,SACvBxgF,EAAQ,GAAAp1B,OAAMu3I,EAAgBpkH,IAAI,SAAAkT,GAAC,OAAIA,EAAEsC,YAAY9W,SAAS,SAAQA,UAAS,GAAQ,MAAQ,OAAvF,aACR,MACF,KAAKzN,KAAoByxF,SACvBzgF,EAAQ,GAAAp1B,OAAMu3I,EAAgBpkH,IAAI,SAAAkT,GAAC,OAAIA,EAAEsC,YAAY9W,SAAS,SAAQA,UAAS,GAAQ,MAAQ,OAAvF,aACR,MACF,KAAKzN,KAAoBuqC,SACvBv5B,EAAW,WACX,MACF,KAAKhR,KAAoB0qC,SACvB15B,EAAW,WACX,MACF,KAAKhR,KAAoBg/B,UACvBhuB,EAAQ,GAAAp1B,OAAMu3I,EAAgBpkH,IAAI,SAAAkT,GAAC,OAAIA,EAAEsC,YAAY9W,SAAS,SAAQA,UAAS,GAAQ,MAAQ,OAAvF,cACR,MACF,KAAKzN,KAAoB2/B,OACvB3uB,EAAQ,GAAAp1B,OAAMu3I,EAAgBpkH,IAAI,SAAAkT,GAAC,OAAIA,EAAEsC,YAAY9W,SAAS,SAAQA,UAAS,GAAQ,MAAQ,OAAvF,WACR,MACF,KAAKzN,KAAoB88B,cACvB9rB,EAAW,iBACX,MACF,KAAKhR,KAAoB0zH,WACvB1iH,EAAW,cACX,MACF,KAAKhR,KAAoB2zH,WACvB3iH,EAAW,aACX,MACF,KAAKhR,KAAoB9B,UACvB8S,EAAW,WACX,MACF,KAAKhR,KAAoB4zH,IACvB5iH,EAAW,aAIf,OACE2C,EAAA1P,EAAA2P,cAAA,WACED,EAAA1P,EAAA2P,cAAA,cAAAh4B,OACMs6B,IAAEimB,KACJg3F,EAAgBpkH,IAAI,SAAAkT,GAAC,OACnB0vC,KAAMm4D,aAAe7nG,EAAEiC,QAAQ4W,WAAagvF,aAAe7nG,EAAEiC,QAAQ4W,WAAa7Y,EAAE8N,YAAY1F,OAC9F,aAGJ0J,KAAK,QAETpgB,EAAA1P,EAAA2P,cAAA,WAAM5C,GACN2C,EAAA1P,EAAA2P,cAAA,cAAAh4B,OACMu3I,EACDpkH,IAAI,SAAAkT,GAAC,OAAK6nG,aAAe7nG,EAAEiC,QAAQgX,OAAS4uF,aAAe7nG,EAAEiC,QAAQgX,OAA3D,GAAAt/C,OAAuEqmC,EAAEqD,aAAzE,aACVyO,KAAK,SAMT,SAAS86F,GAAasE,GAA0C,IAAAU,EAClCV,EAAgB,GAC/CniH,GAFiE6iH,EAC7D3vG,OACO,UACf,OAHqE2vG,EACrDf,gBAGd,KAAK9yH,KAAoBozH,MACvBpiH,EAAW,SACX,MACF,KAAKhR,KAAoB+oC,OACvB/3B,EAAQ,GAAAp1B,OAAMu3I,EAAgBpkH,IAAI,SAAAkT,GAAC,OAAIA,EAAEsC,YAAY9W,SAAS,SAAQA,UAAS,GAAQ,MAAQ,QAC/F,MACF,KAAKzN,KAAoBspC,YAGzB,KAAKtpC,KAAoBwzH,YACvBxiH,EAAW,eACX,MACF,KAAKhR,KAAoBwpC,WAGzB,KAAKxpC,KAAoByzH,WACvBziH,EAAW,cACX,MACF,KAAKhR,KAAoBwxF,SACvBxgF,EAAQ,GAAAp1B,OAAMu3I,EAAgBpkH,IAAI,SAAAkT,GAAC,OAAIA,EAAEsC,YAAY9W,SAAS,SAAQA,UAAS,GAAQ,MAAQ,OAAvF,aACR,MACF,KAAKzN,KAAoByxF,SACvBzgF,EAAQ,GAAAp1B,OAAMu3I,EAAgBpkH,IAAI,SAAAkT,GAAC,OAAIA,EAAEsC,YAAY9W,SAAS,SAAQA,UAAS,GAAQ,MAAQ,OAAvF,aACR,MACF,KAAKzN,KAAoBuqC,SACvBv5B,EAAW,WACX,MACF,KAAKhR,KAAoB0qC,SACvB15B,EAAW,WACX,MACF,KAAKhR,KAAoBg/B,UACvBhuB,EAAQ,GAAAp1B,OAAMu3I,EAAgBpkH,IAAI,SAAAkT,GAAC,OAAIA,EAAEsC,YAAY9W,SAAS,SAAQA,UAAS,GAAQ,MAAQ,OAAvF,cACR,MACF,KAAKzN,KAAoB2/B,OACvB3uB,EAAQ,GAAAp1B,OAAMu3I,EAAgBpkH,IAAI,SAAAkT,GAAC,OAAIA,EAAEsC,YAAY9W,SAAS,SAAQA,UAAS,GAAQ,MAAQ,OAAvF,WACR,MACF,KAAKzN,KAAoB88B,cACvB9rB,EAAW,iBACX,MACF,KAAKhR,KAAoB0zH,WACvB1iH,EAAW,cACX,MACF,KAAKhR,KAAoB2zH,WACvB3iH,EAAW,aACX,MACF,KAAKhR,KAAoB9B,UACvB8S,EAAW,WACX,MACF,KAAKhR,KAAoB4zH,IACvB5iH,EAAW,aAGf,OAAOA,EAkMF,SAASm+G,GAAqBF,EAAiC6E,GACpE,GAAI7E,EAAY1vF,aAAeu0F,EAAYxuG,aAAe2pG,EAAY1vF,cAAgB,EACpF,OAAO,EAGT,GAAI0vF,EAAYvqI,YAAcA,IAAU6iC,QAAUusG,EAAYpvI,YAAcA,IAAU6iC,OACpF,OAAO,EAGT,IAAMwsG,EAAiCD,EAAYvvG,YAAY9W,SAAS,QAAUxoB,KAAWg2C,KAAOh2C,KAAW+1C,IACzGg5F,EACJF,EAAYxuG,aAAe,EAAI1gC,KAAqBnH,KAAOmH,KAAqBrH,MAClF,OACE0xI,EAAYvqI,YAAcovI,EAAYpvI,WACtCuqI,EAAYhqI,aAAe8uI,GAC3B9E,EAAYnrF,YAAckwF,EAI9B,IAAMC,GAA0B,SAAAp9G,GAc1B,IAbJs8G,EAaIt8G,EAbJs8G,gBACArkG,EAYIjY,EAZJiY,KACAk9F,EAWIn1G,EAXJm1G,kBACA7lC,EAUItvE,EAVJsvE,YACAsB,EASI5wE,EATJ4wE,WACAjN,EAQI3jE,EARJ2jE,aAQI9sB,EACkDC,oBAAkB,GADpEC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GACGwmE,EADHtmE,EAAA,GACwBumE,EADxBvmE,EAAA,GAEEwmE,EAAal8B,aAAiBi7B,EAAgBpkH,IAAI,SAAAkT,GAAC,OAAIA,EAAEiC,UACzDypD,EAAc56D,kBAClB,kBACE4T,aACEwsG,EACA5vG,aAAwB6wG,GACxBjB,EAAgB,GAAGhvG,mBAEvB,CAACgvG,EAAiBiB,IAEdC,EH9UuB,SAACztG,GAC9B,IAAM5e,EAASkwF,aAAiBtxE,EAAU7X,IAAI,SAAAkT,GAAC,OAAIA,EAAEiC,UAC/CowG,EAAc1tG,EAAUtZ,OAAO,SAACC,EAAK0U,GAAN,OAAa1U,GAAO0U,EAAEv9B,YAAcA,IAAU6iC,OAAStF,EAAEqD,aAAe,IAAI,GAC3GivG,EAAc3tG,EAAUytC,KAAK,SAAApyC,GAAC,OAAIA,EAAEv9B,YAAcA,IAAUijC,SAElE,OAAO3nC,OAAAy0B,EAAA,EAAAz0B,CAAA,CACLs0I,cACAC,eACGhqC,GAAuB3jE,EAAW5e,IGsUvBwsH,CAAgBrB,GAZ5BsB,EA6BA9B,eAfF+B,EAdED,EAcFC,OACAnwG,EAfEkwG,EAeFlwG,YACAowG,EAhBEF,EAgBFE,KACAC,EAjBEH,EAiBFG,UACAC,EAlBEJ,EAkBFI,IACA7vF,EAnBEyvF,EAmBFzvF,MACA8vF,EApBEL,EAoBFK,IACAC,EArBEN,EAqBFM,KACA/4I,EAtBEy4I,EAsBFz4I,QACAg5I,EAvBEP,EAuBFO,KACAC,EAxBER,EAwBFQ,QACAC,EAzBET,EAyBFS,MACAzsF,EA1BEgsF,EA0BFhsF,OACA0sF,EA3BEV,EA2BFU,IACAC,EA5BEX,EA4BFW,SAE6B,IAA3BjC,EAAgBr/G,SACbq/G,EAAgB,GAAG5uG,cACtB4uG,EAAgB,GAAG5uG,YAAc,QACjC4uG,EAAgB,GAAGL,eAAiB9yH,KAAoBozH,OAEtDD,EAAgB,GAAG5uG,YAAY9W,SAAS,QAC1C0lH,EAAgB,GAAGL,eAAiB9yH,KAAoB+oC,OAC/CoqF,EAAgB,GAAG5uG,YAAY9W,SAAS,OACjD0lH,EAAgB,GAAGL,eAAiB9yH,KAAoB+oC,OAExDoqF,EAAgB,GAAGL,eAAiB9yH,KAAoBozH,OAI5D,IAAMiC,EAAkBtiH,kBAAQ,WAC9B,OA7Q4B,SAAC6T,GAC/B,IAAM3V,EAAY49G,GAAajoG,GAC/B,GAAkB,WAAd3V,EACF,OAAO,EAET,GAAkB,WAAdA,EACF,OAAO,EAET,IAAID,EAAW85B,IAAWpvC,KAAK,SAAAyV,GAAC,OAAIA,EAAEP,KAAKC,OAASI,IACpD,QAAiB/gC,IAAb8gC,GAA0B4V,EAAU9S,SAAW9C,EAASu2B,QAAQjD,KAAKxwB,OACvE,OAAO,EAIL9C,EAASu2B,QAAQG,MAAM5D,YAAcz6B,KAAey1B,sBACtD9tB,EAASu2B,QAAQjD,KAAK,GAAGR,UAAYl/C,KAAqBnH,KAC1DuzB,EAASu2B,QAAQjD,KAAK,GAAGR,UAAYl/C,KAAqBrH,OAI5D,IAAIuxI,EAAqB99G,EAASu2B,QAAQjD,KAAK4lD,KAAK,SAACjmF,EAAGqmD,GAyBtD,OAvBErmD,EAAEvf,YAAcA,IAAU6iC,OACtB,EACAtjB,EAAEhf,aAAeA,KAAWg2C,MAAQh3B,EAAE6/B,YAAcl/C,KAAqBnH,KACzE,EACAwmB,EAAEhf,aAAeA,KAAWg2C,MAAQh3B,EAAE6/B,YAAcl/C,KAAqBrH,MACzE,EACA0mB,EAAEhf,aAAeA,KAAW+1C,KAAO/2B,EAAE6/B,YAAcl/C,KAAqBnH,KACxE,EACAwmB,EAAEhf,aAAeA,KAAW+1C,KAAO/2B,EAAE6/B,YAAcl/C,KAAqBrH,MACxE,EACA,IAEJ+sE,EAAE5lE,YAAcA,IAAU6iC,OACtB,EACA+iC,EAAErlE,aAAeA,KAAWg2C,MAAQh3B,EAAE6/B,YAAcl/C,KAAqBnH,KACzE,EACA6sE,EAAErlE,aAAeA,KAAWg2C,MAAQh3B,EAAE6/B,YAAcl/C,KAAqBrH,MACzE,EACA+sE,EAAErlE,aAAeA,KAAW+1C,KAAO/2B,EAAE6/B,YAAcl/C,KAAqBnH,KACxE,EACA6sE,EAAErlE,aAAeA,KAAW+1C,KAAO/2B,EAAE6/B,YAAcl/C,KAAqBrH,MACxE,EACA,KAGFwxI,EAAsBnoG,EAAUsjE,KAAK,SAACjmF,EAAGqmD,GAyB7C,OAvBErmD,EAAEvf,YAAcA,IAAU6iC,OACtB,EACAtjB,EAAEsgB,YAAY9W,SAAS,SAAWxJ,EAAEqhB,aAAe,EACnD,EACArhB,EAAEsgB,YAAY9W,SAAS,SAAWxJ,EAAEqhB,aAAe,EACnD,EACArhB,EAAEsgB,YAAY9W,SAAS,QAAUxJ,EAAEqhB,aAAe,EAClD,EACArhB,EAAEsgB,YAAY9W,SAAS,QAAUxJ,EAAEqhB,aAAe,EAClD,EACA,IAEJglC,EAAE5lE,YAAcA,IAAU6iC,OACtB,EACA+iC,EAAE/lC,YAAY9W,SAAS,SAAWxJ,EAAEqhB,aAAe,EACnD,EACAglC,EAAE/lC,YAAY9W,SAAS,SAAWxJ,EAAEqhB,aAAe,EACnD,EACAglC,EAAE/lC,YAAY9W,SAAS,QAAUxJ,EAAEqhB,aAAe,EAClD,EACAglC,EAAE/lC,YAAY9W,SAAS,QAAUxJ,EAAEqhB,aAAe,EAClD,EACA,KAKFqqG,EAAwBb,EAAmB//G,IAAI,SAACkgH,EAAaC,GAAd,OACnDzgG,KAAKqxC,MAAMivD,EAAoBG,GAAU5pG,cAAgB2pG,EAAY1vF,YAAc0vF,EAAY1vF,YAAc,MAG3GqwF,EAA4BnhG,KAAKwb,IAAIxb,KAAKI,IAAL0G,MAAA9G,KAAIzuC,OAAA60B,EAAA,EAAA70B,CAAQ2vI,KAEjD2F,EAAsB7mG,KAAKwb,IAAIxb,KAAKC,IAAL6G,MAAA9G,KAAIzuC,OAAA60B,EAAA,EAAA70B,CAAQ2vI,KAEzCX,EAAoBF,EAAmB53G,MAAM,SAAC+3G,EAAaC,GAE/D,OAAOC,GAAqBF,EAAaF,EAAoBG,MAI3DW,GAAqB,EAazB,OAZI7+G,EAASu2B,QAAQM,gBAMnBgoF,GAJAf,EAAqBA,EAAmB//G,IAAI,SAAAk/B,GAAG,OAAAjuD,OAAAy0B,EAAA,EAAAz0B,CAAA,GAC1CiuD,EAD0C,CAE7CnK,UAAWmK,EAAInK,YAAcl/C,KAAqBnH,KAAOmH,KAAqBrH,MAAQqH,KAAqBnH,UAErEy5B,MAAM,SAAC+3G,EAAaC,GAE1D,OAAOC,GAAqBF,EAAaF,EAAoBG,QAIzDF,GAAqBa,IAAuBD,IAA8B0F,EAsKzEC,CAAwBpC,IAC9B,CAACA,IACEqC,EAAgBziH,kBAAQ,WAC5B,OAtKG,SAAqC6T,GAC1C,IAAM3V,EAAY49G,GAAajoG,GAC/B,GAAkB,WAAd3V,EACF,OAAO,EAET,GAAkB,WAAdA,EACF,OAAO,EAET,IAAID,EAAW85B,IAAWpvC,KAAK,SAAAyV,GAAC,OAAIA,EAAEP,KAAKC,OAASI,IACpD,QAAiB/gC,IAAb8gC,GAA0B4V,EAAU9S,SAAW9C,EAASu2B,QAAQjD,KAAKxwB,OACvE,OAAO,EAIL9C,EAASu2B,QAAQG,MAAM5D,YAAcz6B,KAAey1B,sBACtD9tB,EAASu2B,QAAQjD,KAAK,GAAGR,UAAYl/C,KAAqBnH,KAC1DuzB,EAASu2B,QAAQjD,KAAK,GAAGR,UAAYl/C,KAAqBrH,OAI5D,IAAIuxI,EAAqB99G,EAASu2B,QAAQjD,KAAK4lD,KAAK,SAACjmF,EAAGqmD,GAyBtD,OAvBErmD,EAAEvf,YAAcA,IAAU6iC,OACtB,EACAtjB,EAAEhf,aAAeA,KAAWg2C,MAAQh3B,EAAE6/B,YAAcl/C,KAAqBnH,KACzE,EACAwmB,EAAEhf,aAAeA,KAAWg2C,MAAQh3B,EAAE6/B,YAAcl/C,KAAqBrH,MACzE,EACA0mB,EAAEhf,aAAeA,KAAW+1C,KAAO/2B,EAAE6/B,YAAcl/C,KAAqBnH,KACxE,EACAwmB,EAAEhf,aAAeA,KAAW+1C,KAAO/2B,EAAE6/B,YAAcl/C,KAAqBrH,MACxE,EACA,IAEJ+sE,EAAE5lE,YAAcA,IAAU6iC,OACtB,EACA+iC,EAAErlE,aAAeA,KAAWg2C,MAAQh3B,EAAE6/B,YAAcl/C,KAAqBnH,KACzE,EACA6sE,EAAErlE,aAAeA,KAAWg2C,MAAQh3B,EAAE6/B,YAAcl/C,KAAqBrH,MACzE,EACA+sE,EAAErlE,aAAeA,KAAW+1C,KAAO/2B,EAAE6/B,YAAcl/C,KAAqBnH,KACxE,EACA6sE,EAAErlE,aAAeA,KAAW+1C,KAAO/2B,EAAE6/B,YAAcl/C,KAAqBrH,MACxE,EACA,KAGFwxI,EAAsBnoG,EAAUsjE,KAAK,SAACjmF,EAAGqmD,GAyB7C,OAvBErmD,EAAEvf,YAAcA,IAAU6iC,OACtB,EACAtjB,EAAEsgB,YAAY9W,SAAS,SAAWxJ,EAAEqhB,aAAe,EACnD,EACArhB,EAAEsgB,YAAY9W,SAAS,SAAWxJ,EAAEqhB,aAAe,EACnD,EACArhB,EAAEsgB,YAAY9W,SAAS,QAAUxJ,EAAEqhB,aAAe,EAClD,EACArhB,EAAEsgB,YAAY9W,SAAS,QAAUxJ,EAAEqhB,aAAe,EAClD,EACA,IAEJglC,EAAE5lE,YAAcA,IAAU6iC,OACtB,EACA+iC,EAAE/lC,YAAY9W,SAAS,SAAWxJ,EAAEqhB,aAAe,EACnD,EACAglC,EAAE/lC,YAAY9W,SAAS,SAAWxJ,EAAEqhB,aAAe,EACnD,EACAglC,EAAE/lC,YAAY9W,SAAS,QAAUxJ,EAAEqhB,aAAe,EAClD,EACAglC,EAAE/lC,YAAY9W,SAAS,QAAUxJ,EAAEqhB,aAAe,EAClD,EACA,KAKFqqG,EAAwBb,EAAmB//G,IAAI,SAACkgH,EAAaC,GAAd,OACnDzgG,KAAKqxC,MAAMivD,EAAoBG,GAAU5pG,cAAgB2pG,EAAY1vF,YAAc0vF,EAAY1vF,YAAc,MAK/G,OAFgC9Q,KAAKwb,IAAIxb,KAAKI,IAAL0G,MAAA9G,KAAIzuC,OAAA60B,EAAA,EAAA70B,CAAQ2vI,KAsF5C8F,CAA4BtC,IAClC,CAACA,IAEE7C,EAAmC/hE,YAAiB41D,IACfkM,GACzC8C,EAAgB,GAAGhvG,iBACnBmsG,GACA,GACA,EACA91C,GAGgCltE,OAAO,SAACC,EAAKkX,GAC7C,OAAOlX,EAAMkX,EAAS8B,YACrB,GAEH6oC,oBAAU,WAEN+kE,IADE1sC,IAKH,CAACA,IAEJ,IAAMiuC,EAAkC3iH,kBAAQ,kBAAMogH,EAAgBj8G,MAAM,SAACuN,GAAD,OAAcA,EAASP,SAAWivG,EAAgB,GAAGjvG,UAAS,CAACivG,IACrIwC,EAA4C5iH,kBAAQ,kBAAMogH,EAAgB7lH,OAC9E,SAACsoH,EAAsCnxG,GAAvC,OAAoDmxG,EAAuCnxG,EAASa,cACpG,IACC,CAAC6tG,IA4BE0C,EAAgB9iH,kBAAQ,WAC5B,IAAM1S,EAAU,CACdsT,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACE0lC,OAAO,aACPnnE,GAAG,WACH0iC,UAAU,UACVG,QAAS,WACP++G,GAAwBD,KAG1BvgH,EAAA1P,EAAA2P,cAAA,OACEG,MAAO,CACLoB,QAAS,OACT6qE,cAAe,MACfN,WAAY,WAGd/rE,EAAA1P,EAAA2P,cAAA,KACEG,MAAO,CACLX,YAAa,EACbqjE,SAAU,IAEZxhE,UAAS,gBAAAr5B,OAAkBs4I,EAAsB,OAAS,WAE3DmB,EACC9B,GAAkBJ,GAElBx/G,EAAA1P,EAAA2P,cAAA,WACED,EAAA1P,EAAA2P,cAAA,cAAAh4B,OACMs6B,IAAEimB,KACJg3F,EAAgBpkH,IAAI,SAAAkT,GAAC,OACnB0vC,KACEm4D,aAAe7nG,EAAEiC,QAAQ4W,WAAagvF,aAAe7nG,EAAEiC,QAAQ4W,WAAa7Y,EAAE8N,YAC9E1F,OAAO,aAEX0J,KAAK,QAETpgB,EAAA1P,EAAA2P,cAAA,WAAM,UACND,EAAA1P,EAAA2P,cAAA,cAAAh4B,OACMu3I,EACDpkH,IAAI,SAAAkT,GAAC,OACJ6nG,aAAe7nG,EAAEiC,QAAQgX,OAAS4uF,aAAe7nG,EAAEiC,QAAQgX,OAA3D,GAAAt/C,OAAuEqmC,EAAEqD,aAAzE,aAEDyO,KAAK,WAMlBpgB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAAStvD,EAAam1B,OAAO,cAAcnnE,GAAG,gBAC5DohC,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAAS8gD,EAAMj7E,OAAO,OAAOnnE,GAAG,QAC3C4mD,MAAMk7F,EAAQtuG,MACbpS,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAS8a,KAAM,UAEfnb,EAAA1P,EAAA2P,cAACkiH,GAAD,CAAkBjN,mBAAmB,EAAM3vC,OAAQ,IAAKvoE,MAAO0jH,EAAQtuG,QAG3EpS,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAAS6gD,EAAQh7E,OAAO,SAASnnE,GAAG,SAASwhC,MAAO,CAAEwa,SAAU,SAC5E5a,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc60G,mBAAmB,EAAMl4G,MAAO0jH,EAAQxvG,OAASwvG,EAAQxvG,OAAS,EAAGwpG,MAAI,EAACr1C,UAAQ,EAACouB,UAAQ,KAE3GzzF,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAASohD,EAASv7E,OAAO,MAAMnnE,GAAG,KAC9CohC,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACE60G,mBAAmB,EACnBl4G,MAAO0jH,EAAQvvG,cAAgBuvG,EAAQvvG,cAAgB,EACvDupG,MAAI,EACJhnB,SAAO,EACPD,UAAQ,KAGZzzF,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAASihD,EAAKp7E,OAAO,MAAMnnE,GAAG,OAC1CohC,EAAA1P,EAAA2P,cAACkiH,GAAD,CAAkBnlH,MAAO0jH,EAAQzvG,OAEnCjR,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAASghD,EAAKn7E,OAAO,MAAMnnE,GAAG,OAC1CohC,EAAA1P,EAAA2P,cAACkiH,GAAD,CAAkBnlH,MAAO0jH,EAAQ1vG,OAEnChR,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAAS+gD,EAAWl7E,OAAO,QAAQnnE,GAAG,SACjD4mD,MAAMk7F,EAAQzuG,OACbjS,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAS8a,KAAM,UACbulG,EAAQC,YAAc,IAA6B,IAAxBD,EAAQE,aAAyBF,EAAQpuG,gBACtEtS,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQ60G,mBAAmB,EAAM3vC,OAAQ,IAAKvoE,MAAO0jH,EAAQxuG,UAAWmzD,UAAQ,IAEhFrlE,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQ60G,mBAAmB,EAAM3vC,OAAQ,IAAKvoE,MAAO0jH,EAAQzuG,MAAOozD,UAAQ,KAGhFrlE,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAAS7uC,EAAO0U,OAAO,aAAannE,GAAG,eACtB,IAA5B8hJ,EAAQpuG,gBACPtS,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQ60G,mBAAmB,EAAM3vC,OAAQ,IAAKvoE,MAAO0jH,EAAQzuG,MAAOozD,UAAQ,KAC9C,IAA5Bq7C,EAAQpuG,gBACVtS,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,0BAA0BzP,MAAM,wCAE7CmO,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,OAGJF,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAASuhD,EAAU17E,OAAO,YAAYnnE,GAAG,aACrDohC,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOmhH,GAAiBqB,GAAkBn6C,UAAQ,KAE5DrlE,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAASprC,EAAQiR,OAAO,SAASnnE,GAAG,SAAS0iC,UAAS,eACjEo/G,EAAQC,aAAe3gH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO0jH,EAAQC,YAAa1jD,SAAO,KAErEj9D,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAAS73F,EAAS09D,OAAO,UAAUnnE,GAAG,UAAU0iC,UAAS,eACpEo/G,EAAQE,YACPc,EACE1hH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO6kH,EAAe5kD,SAAO,IAErCj9D,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,iBAGftB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,OAKJF,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAASmhD,EAAMt7E,OAAO,OAAOnnE,GAAG,QAC5CohC,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MA1IR+kH,EACKrvG,aACLyrG,GAAiBqB,GACjBwC,EACAxC,EAAgB,GAAGzuI,UACnByuI,EAAgB,GAAGluG,kBAIhB0oD,EAAY5oD,KAAOsvG,EAAQj+E,WAiIuB4iC,UAAQ,KAE/DrlE,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAASqhD,EAAOx7E,OAAO,QAAQnnE,GAAG,SAC9CohC,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOg9D,EAAYh9D,MAAOqoE,UAAQ,KAI5CrlE,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAASkhD,EAAMr7E,OAAO,OAAOnnE,GAAG,QAC5CohC,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAcrD,MArId+kH,EACK/nD,EAAYh9D,MAAQ0V,aACzByrG,GAAiBqB,GACjBwC,EACAxC,EAAgB,GAAGzuI,UACnByuI,EAAgB,GAAGluG,kBAIhB0oD,EAAYhoD,KAAO0uG,EAAQj+E,WA4H6Bi4E,MAAI,EAACr1C,UAAQ,EAACouB,UAAQ,KAEnFzzF,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAASshD,EAAKz7E,OAAO,YAAYnnE,GAAG,aAChDohC,EAAA1P,EAAA2P,cAACmiH,GAAD,CAAoBrQ,YAAayN,EAAgBpkH,IAAI,SAAAkT,GAAC,OAAIA,EAAEqvG,cAAa2B,UAE3Et/G,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc0lC,OAAO,UAAUnnE,GAAG,WAChCohC,EAAA1P,EAAA2P,cAAC67G,GAAD,CACE9zH,IAAG,GAAA/f,OAAKu3I,EAAgBpkH,IAAI,SAAAkT,GAAC,OAAIA,EAAEqvG,cAAav9F,KAAK,MACrDtP,SAAU0uG,MAMhB,OADA6C,aAAmB31H,EAAS8lF,GAA4B,IACjD9lF,GACN,CAAC8yH,EAAiBkB,EAAS1mD,EAAaumD,EAAqB/tC,IAEhE,OACExyE,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,MACEqB,UAAU,uBACVlB,MAAO,CACLG,gBAAiB,UACjB0/E,OAAQ,YAGTiiC,EAAc9mH,IAAI,SAACknH,EAAKpwH,GAAN,OACjB8N,EAAA1P,EAAA2P,cAACD,EAAA1P,EAAM4P,SAAP,CAAgBlY,IAAKkK,GAAIowH,MAG5B/B,GACCf,EAAgBpkH,IAAI,SAACkT,EAAQpc,GAAT,OAClB8N,EAAA1P,EAAA2P,cAAC0/G,GAAD,CACE4C,aAAc,GACdv6H,IAAG,GAAA/f,OAAKqmC,EAAEiC,OAAP,SAAAtoC,OAAqBiqB,GACxB4e,SAAUxC,EACV6M,KAAMA,EACNk9F,kBAAmBA,EACnB7lC,YAAaA,QAOnBgwC,GAQD,SAAAjuF,GAA2F,IAAxFzjB,EAAwFyjB,EAAxFzjB,SAAUqK,EAA8EoZ,EAA9EpZ,KAAMk9F,EAAwE9jF,EAAxE8jF,kBAAmBt3C,EAAqDxsC,EAArDwsC,MAAOwhD,EAA8ChuF,EAA9CguF,aAAc/vC,EAAgCj+C,EAAhCi+C,YAAgClV,GAAA/oC,EAAnBsyC,aAC7B,CAAC/1D,EAASP,OAAQO,EAASN,iBAAkBM,EAAS//B,YAA7FkkB,EADuFqoE,EAAA,GAC/EvrD,EAD+EurD,EAAA,GAC7Dp3C,EAD6Do3C,EAAA,GAExFvsD,EAAY0xG,aAAyBxtH,EAAOhN,QAAQ,IAAK,KAF+By6H,EAmB1F1D,eAfF+B,EAJ4F2B,EAI5F3B,OACAnwG,EAL4F8xG,EAK5F9xG,YACAowG,EAN4F0B,EAM5F1B,KACAE,EAP4FwB,EAO5FxB,IACAD,EAR4FyB,EAQ5FzB,UACA5vF,EAT4FqxF,EAS5FrxF,MACA8vF,EAV4FuB,EAU5FvB,IACAC,EAX4FsB,EAW5FtB,KACA/4I,EAZ4Fq6I,EAY5Fr6I,QACAg5I,EAb4FqB,EAa5FrB,KACAC,EAd4FoB,EAc5FpB,QACAC,EAf4FmB,EAe5FnB,MACAzsF,EAhB4F4tF,EAgB5F5tF,OACA0sF,EAjB4FkB,EAiB5FlB,IACAC,EAlB4FiB,EAkB5FjB,SAEI99D,EAAcvkD,kBAClB,kBACEwS,aAAcd,EAASP,OAAQ2V,EAAWrU,YAAsBqU,GAAY,CAC1E3nD,KAAMwzC,EACNA,mBACAD,WAAYC,KAEhB,CAACjB,EAASP,OAAQ2V,EAAWnU,IAEzBioD,EAAc56D,kBAAQ,kBAAMyR,aAAsBC,EAAUC,IAAY,CAACD,EAAUC,IACnF8oG,EAAaz6G,kBAAQ,kBAAMg7B,YAAsBnlC,IAAS,CAACA,IAE3DukH,EAAYp6G,kBAAQ,WACxB,IAAMwwB,EAAaiqF,EAAWn1I,OACxB6iD,EAASsyF,EAAWtyF,OACpBJ,EAAa0yF,EAAW1yF,WAExByyF,EAAe9+F,KAAKwb,IAAIxlB,EAASa,cACjCuU,EAAY0J,EAAa7+C,IAAUijC,OAASjjC,IAAU6iC,OACtDod,EAASlgB,EAASa,aAAe,EAAI3gC,KAAY06C,KAAO16C,KAAYy6C,IACpE0N,EAAuB8rC,YAA2BthB,EAAY1uD,OAAQ0uD,EAAY5xC,kBAAoB,IAQ5G,MAAO,CAAE0V,KAPIuyD,aAAY,GAAIr2B,EAAa,CACxCz9B,YACA0J,aACAkN,YAAa9L,EACbzJ,SACAJ,WAAYA,EAAai1F,aAAaj1F,EAAYw8B,EAAY1uD,OAAQkkC,QAAwB58D,IAEjFy0D,SAAQtf,SAAUkoG,IAChC,CAACj2D,EAAa7yC,EAAU+oG,IAErB8I,EAAUC,aAAgBznG,GACxByhG,EAAuBoC,eAAvBpC,mBAEFiG,EAAUzjH,kBAAQ,kBAAMmD,IAAEhF,MAAMuT,EAASs4B,KAAKz+C,uBAAuB,CAACmmB,IACtEgyG,EAAiBlG,GAAsBiG,EAEvCX,EAAgB9iH,kBAAQ,WAC5B,IAAM1S,EAAU,CACdsT,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACE0lC,OAAO,aACPnnE,GAAG,WACH0iC,UAAWqhH,EACXviH,WAAwB7jC,IAAjBgmJ,EAA6B,CAAE/kD,YAAa+kD,GAAiB,IAEnEO,GAAkB9iH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KAAG4Q,EAASP,SAC7BuyG,GACA9iH,EAAA1P,EAAA2P,cAAC8iH,GAAD,CACE9tH,OAAQ6b,EAASP,OACjB0oG,eAAgBnoG,EAASs4B,KAAKz+C,qBAC9BwxB,WAAYrL,EAASsL,aAGxBs8B,aAAYzjD,IAAW+K,EAAA1P,EAAA2P,cAAC0zF,GAAD,CAAgB1+F,OAAQ0uD,KAElD3jD,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAAStvD,EAAam1B,OAAO,cAAcnnE,GAAG,cAAc0iC,UAAWqhH,IACrF3iH,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAAS8gD,EAAMj7E,OAAO,OAAOnnE,GAAG,OAAO0iC,UAAWqhH,GAC9D3iH,EAAA1P,EAAA2P,cAACkiH,GAAD,CAAkBjN,mBAAmB,EAAM3vC,OAAQ,IAAKvoE,MAAOg9D,EAAYzoD,kBAE7EvR,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAAS6gD,EAAQh7E,OAAO,SAASnnE,GAAG,SAAS0iC,UAAWqhH,GACpE3iH,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACE60G,mBAAmB,EACnBl4G,MAAOg9D,EAAY9oD,OAAS8oD,EAAY9oD,OAAS,EACjDwpG,MAAI,EACJr1C,UAAQ,EACRouB,UAAQ,KAGZzzF,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAASohD,EAASv7E,OAAO,MAAMnnE,GAAG,IAAI0iC,UAAWqhH,GAC7D3iH,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACE60G,mBAAmB,EACnBl4G,MAAOg9D,EAAY7oD,cAAgB6oD,EAAY7oD,cAAgB,EAC/DupG,MAAI,EACJhnB,SAAO,EACPD,UAAQ,KAGZzzF,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAASihD,EAAKp7E,OAAO,MAAMnnE,GAAG,MAAM0iC,UAAWqhH,GAC1D7xG,EAAS//B,YAAcA,IAAUgiC,aAAejC,EAAS//B,YAAcA,IAAU8iC,YAChF7T,EAAA1P,EAAA2P,cAACkiH,GAAD,CAAkBnlH,MAAOg9D,EAAY/oD,OAGzCjR,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAASghD,EAAKn7E,OAAO,MAAMnnE,GAAG,MAAM0iC,UAAWqhH,GAC1D7xG,EAAS//B,YAAcA,IAAUgiC,aAAejC,EAAS//B,YAAcA,IAAU8iC,YAChF7T,EAAA1P,EAAA2P,cAACkiH,GAAD,CAAkBnlH,MAAOg9D,EAAYhpD,OAGzChR,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAAS+gD,EAAWl7E,OAAO,QAAQnnE,GAAG,QAAQ0iC,UAAWqhH,IACpC,IAAhC3oD,EAAYjqD,gBACX/P,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQ60G,mBAAmB,EAAM3vC,OAAQ,IAAKvoE,MAAOg9D,EAAY9nD,UAAWmzD,UAAQ,IAEpFrlE,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQ60G,mBAAmB,EAAM3vC,OAAQ,IAAKvoE,MAAOg9D,EAAY/nD,MAAOozD,UAAQ,KAGpFrlE,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAAS7uC,EAAO0U,OAAO,aAAannE,GAAG,eAClB,IAAhCo7F,EAAYjqD,iBACX/P,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQ60G,mBAAmB,EAAM3vC,OAAQ,IAAKvoE,MAAOg9D,EAAY/nD,MAAOozD,UAAQ,KAEjD,IAAhCrL,EAAYjqD,iBACX/P,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,0BAA0BzP,MAAM,yCAGjDmO,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAASuhD,EAAU17E,OAAO,YAAYnnE,GAAG,YAAY0iC,UAAWqhH,GAC5E3iH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO8T,EAAS6B,UAAW0yD,UAAQ,KAE7CrlE,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAASprC,EAAQiR,OAAO,SAASnnE,GAAG,SAAS0iC,UAAS,GAAAr5B,OAAK06I,EAAL,kBAChE9I,EAAWn1I,QACXs7B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACErD,MAAOg9D,EAAYtoD,SACnBurD,QAASnsD,EAAS//B,YAAcA,IAAUgiC,aAAejC,EAAS//B,YAAcA,IAAU8iC,cAIhG7T,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAAS73F,EAAS09D,OAAO,UAAUnnE,GAAG,UAAU0iC,UAAS,GAAAr5B,OAAK06I,EAAL,iBACpE9I,EAAWn1I,QAAUs7B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOg9D,EAAYtoD,SAAUurD,SAAO,KAEpEj9D,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAASmhD,EAAMt7E,OAAO,OAAOnnE,GAAG,OAAO0iC,UAAWqhH,GAE9D3iH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO0V,aAA2B5B,EAAS6B,UAAW7B,EAASa,aAAcb,EAAS//B,UAAW+/B,EAASQ,kBAAmB+zD,UAAQ,KAE/IrlE,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAASqhD,EAAOx7E,OAAO,QAAQnnE,GAAG,QAAQ0iC,UAAWqhH,GACjE3iH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOg9D,EAAYh9D,MAAOqoE,UAAQ,KAE5CrlE,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAASkhD,EAAMr7E,OAAO,OAAOnnE,GAAG,OAAO0iC,UAAWqhH,GAE7D7xG,EAAS//B,YAAcA,IAAUgiC,aAAejC,EAAS//B,YAAcA,IAAU8iC,WAChF7T,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACErD,MAAOg9D,EAAYh9D,MAAQ0V,aAA2B5B,EAAS6B,UAAW7B,EAASa,aAAcb,EAAS//B,UAAW+/B,EAASQ,kBAC9HopG,MAAI,EACJr1C,UAAQ,EACRouB,UAAQ,IAGVzzF,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAcrD,MAAO,EAAG09G,MAAI,EAACr1C,UAAQ,EAACouB,UAAQ,KAGlDzzF,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc6/D,QAASshD,EAAKz7E,OAAO,YAAYnnE,GAAG,YAAY0iC,UAAWqhH,GACvE3iH,EAAA1P,EAAA2P,cAACmiH,GAAD,CAAoBrQ,YAAajhG,EAAS6sG,eAE5C39G,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc0lC,OAAO,UAAUnnE,GAAG,UAAU0iC,UAAWqhH,GACpD7xG,EAAS//B,YAAcA,IAAUgiC,aAAejC,EAAS//B,YAAcA,IAAU8iC,WAChF7T,EAAA1P,EAAA2P,cAAA,WACED,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAkBk1D,GAAI,sBACpBv1D,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,wCADf,yBAKFtB,EAAA1P,EAAA2P,cAAC+iH,GAAD,CACEh7H,IAAG,GAAA/f,OAAK6oC,EAAS6sG,YAAYv9F,KAAK,MAClCo5F,UAAWA,EACX1oG,SAAUA,EACVunG,kBAAmBA,MAM3B,OADAgK,aAAmB31H,EAAS8lF,GAA4B,IACjD9lF,GACN,CACDokB,EACA0oG,EACAK,EACAiJ,EACA3nG,EACAonG,EACAvoD,EACAq+C,EACA7lC,EACAoqC,IAEF,OACE58G,EAAA1P,EAAA2P,cAAA,MACEqB,UAAU,uBACVlB,WACY7jC,IAAVwkG,EACI,CACExgE,gBAAiBwgE,GAEnB,IAGLmhD,EAAc9mH,IAAI,SAAC6nH,EAAQ/wH,GAAT,OACjB8N,EAAA1P,EAAA2P,cAACD,EAAA1P,EAAM4P,SAAP,CAAgBlY,IAAKkK,GAAI+wH,OCliCpBC,GAAuB,SAAA7kH,GAAkB,IAAfizD,EAAejzD,EAAfizD,SAAevX,EAC1BC,mBAAS,SADiBC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAC7CopE,EAD6ClpE,EAAA,GACtCmpE,EADsCnpE,EAAA,GAE9CopE,EAAS5gH,sBAAY,WACzB2gH,EAAmB,UAAVD,EAAoB,OAAS,UACrC,CAACA,EAAOC,IAEX,OACEpjH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,uBAAuBgiH,cAAY,WAAWzxH,MAAM,UAAU4P,QAAS4hH,EAAQjkJ,KAAK,UACpG4gC,EAAA1P,EAAA2P,cAAA,cAAQD,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAS,gBAAAr5B,OAAkBk7I,KAAtC,IAAmD7xD,MCP9CiyD,GAER,SAAAllH,GAAyB,IAAtBmlH,EAAsBnlH,EAAtBmlH,gBAUAC,GATc7oE,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQl+B,YAAYA,eAAgB,IAC9C5hB,IAAI,SAAAoC,GAAK,IACjClT,EAAiBkT,EAAjBlT,GACR,MAAO,CACLwX,MAFuBtE,EAAbkmH,SAGV9kJ,GAAI0rB,EAAG+0B,WACPvqB,KAAMxK,EAAG+0B,cAIVjkB,IAAI,SAACoC,GAAD,MAAa,CAChBR,MAAOQ,EAAE5+B,GACTkjC,MAAOtE,EAAEsE,MACThN,KAAM0I,EAAE1I,QAET21D,UACAxiF,OAAO,CAAC,CAAE+0B,MAAO,MAAO8E,MAAO,MAAOhN,KAAM,QAC5C21D,UAEGk5D,EAAiBvkH,kBAAQ,WAC7B,IAAMwkH,EAAerhH,IAAEyjB,MAAMy9F,GAC7B,GAAIG,EACF,OAAOA,EAAa9hH,MAGtB,MADuB,CAAE9E,MAAO,MAAO8E,MAAO,MAAOhN,KAAM,OAE1D,CAAC2uH,IAEEhsE,EAAW0E,cACX4d,EAAqBnf,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEgwD,GAAG/kE,UAAUsxE,qBAC1D8pD,EAA4B9pD,EAC9B0pD,EAAe17H,KAAK,SAAAuI,GAAC,OAAIA,EAAE0M,QAAU+8D,EAAmB16C,cAAe,CAAEriB,MAAO,MAAO8E,MAAO,MAAOhN,KAAM,MAC3G,KAEEgvH,EAAqBrhH,sBACzB,SAAC5I,GACC,IAAMgtE,EAAetkE,IAAEhF,MAAM1D,QAAOt9B,EAAY6lD,SAASvoB,EAAI/E,MACzD+xE,IACF28C,EAAgB38C,GAChBpvB,EAASnqC,IAAUG,sBAAsB,CAAE7uC,GAAIioG,OAGnD,CAAC28C,IASH,OANA/nE,oBAAU,WACJse,GACFypD,EAAgBzpD,IAEjB,CAACA,IAGF/5D,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,sDACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,2BACbtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEiB,UAAU,wCACVpgC,QAASuiJ,EACTjhH,SAAUshH,EACVvlH,YAAaolH,EACb3mH,MAAO6mH,OC5DJ53E,GACW,SAACxkB,GAAD,OACpBllB,IAAEklB,GACCrsB,IAAI,SAAAH,GAAC,OAAKA,EAAEiwB,SAAWl6C,KAAYy6C,IAAMxwB,EAAEgoC,iBAAmB,GAAK,GAAKhoC,EAAEgoC,iBAAmB,KAC7FC,OAAS,GAJH+I,GAMQ,SAAC/uE,GAAD,OAAwB,SAAC+3B,GAAD,OAAoBsN,IAAExa,KAAK7qB,EAAM66F,cAAcjjE,KAAM,SAAAwe,GAAC,OAAIA,EAAE/C,SAAWtb,MANvGg3C,GAOgB,SAAC1O,GAAD,OAAqBh7B,IAAEy7B,QAAQT,EAAQ,SAAA/5B,GAAC,OAAIA,EAAEmtB,KAAKv1B,IAAI,SAAAH,GAAC,OAAA5uB,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAU4uB,EAAV,CAAauV,iBAAkBhN,EAAEgN,iBAAkBmT,QAASngB,EAAEmgB,QAASyD,KAAM5jB,EAAE4jB,WAAUxpB,OAAO,SAAAmmH,GAAE,OAAKxhH,IAAEhF,MAAMwmH,EAAG9gF,kBAA2C,IAAvB8gF,EAAG9gF,mBCVjN+gF,GAAmB,SAC9BC,EACA1mF,EACA2mF,GAEA,IAAMC,EAAMl4E,GAA4Bg4E,GAClCzjE,EAAYvU,GAAoC1O,GAChD6mF,EAAuBF,EAAa9oH,IAAI,SAAAkT,GAAC,OAAIA,EAAEiC,SAC/C8zG,EAAoB9hH,IAAEnH,IAAIolD,EAAW,SAAAh9C,GAAC,OAAIA,EAAE+M,SAE5CioC,EAAaj2C,IAAE6hH,GAClBvmF,MAAMwmF,GACN77F,OACAxrB,QAqFH,OApFsCuF,IAAEi2C,GAAY7+C,OAAO,SAACC,EAAwB3E,GAClF,IAAMge,EAAYixG,EAAatmH,OAAO,SAAA0Q,GAAC,OAAIA,EAAEiC,SAAWtb,IAClDwyB,EAAOllB,IAAE3E,OAAO4iD,EAAW,SAAAh9C,GAAC,OAAIA,EAAE+M,SAAWtb,IAC7C8c,EACJkB,EAAU9S,OAAS,EAAI8S,EAAU,GAAGzC,iBAAmBiX,EAAKtnB,OAAS,EAAIsnB,EAAK,GAAGjX,iBAAmBvb,EAChGo+G,EAAoBpnE,GAA+BxkB,GAEnDwrF,GADsB1wG,IAAE2gC,IAAIjwB,EAAU7X,IAAI,SAAAkT,GAAC,OAAIA,EAAEqD,iBAAkB,GAC5B0hG,EACvChgG,EAAQ8wG,EAAIlvH,GAEZ29G,GADmBv/F,GAASA,EAAM1C,YAAa0C,EAAM1C,WAEzD0C,GAASA,EAAMtD,gBAAkBsD,EAAMpD,kBAAoBoD,GAASA,EAAMrD,WAAaqD,EAAMrD,WAAaqD,GAASA,EAAMjD,iBAAmBiD,EAAMjD,iBAAmB,GACvK,GAAI7N,IAAEhF,MAAM8V,GAEV,OAAOzZ,EAET,GAAyB,IAArBqZ,EAAU9S,QAAgC,IAAhBsnB,EAAKtnB,OACjC,OAAOvG,EAGT,IAAM0qH,EAAY,CAChB7zG,SAAU4C,EAAM5C,SAChBC,SAAU2C,EAAM3C,SAChBN,iBAAkBiD,EAAMjD,iBACxBO,WAAY0C,EAAM1C,WAClB2B,gBAAiBe,EAAMtD,iBAErBw0G,EAAcC,aAAWn4I,OAAAy0B,EAAA,EAAAz0B,CAAA,GAEtBi4I,EAFqB,CAGxB5hF,eAAgBuwE,EAChB1iG,OAAQtb,IAEV29G,GAIIv4C,EADiBoqD,aAAmBpxG,EAAOoU,GAClBob,IAEzBQ,EAAQg3B,EAAUkqD,EAkBxB,OAjBIhiH,IAAEijB,MAAM++F,GAiBLl4I,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFutB,EADLvtB,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEG4oB,EAAS,CAAEolE,UAASvpD,SAAUyzG,EAAalhF,QAAOpuC,OAAQA,EAAQ8c,uBAEpE,KCtBQ2yG,GAGR,SAAArmH,GAAmC,IAAhCsmH,EAAgCtmH,EAAhCsmH,YAAaC,EAAmBvmH,EAAnBumH,aACX7wH,EAAY26G,eAAZ36G,QACFe,EAAO8lD,YAAiBk2D,IAFQ/2D,EAGJC,qBAHIC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAG/B8qE,EAH+B5qE,EAAA,GAGpB6qE,EAHoB7qE,EAAA,GAIhC8qE,EAAY3lH,kBAAQ,kBAAMylH,IAAc34H,KAASO,IAAI,CAACo4H,IACtDxM,EAAoBj5G,kBAAQ,kBAAO2lH,EAAY,EAAI,GAAI,CAACA,IAGxD7mJ,EAAYgxF,YAAYhU,KAAQh9E,WAChC8mJ,EAAa12D,KAAO22D,WACpB1wG,EAAQqmC,YAAiB,SAAA19E,GAAK,OAAIA,EAAMm0E,KAAK2G,iBAAaz7E,EAG1D83B,EAASumD,YAAiB,SAAA19E,GAAK,OAAIA,EAAMm3B,OAAO0jE,cAAcjjE,OAC9DklE,EAAcpf,YAAiB,SAAA19E,GAAK,OAAIA,EAAM88F,YAAY/mD,YAC1DiyG,EAAiBtqE,YACrB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQl+B,YAAYA,aAAexf,EAAE09C,QAAQl+B,YAAYA,YAAY7c,OAAS,IAEjFglH,EAAQvqE,YAAiB,SAAA19E,GAAK,OAAIA,EAAMg+E,QAAQ2rB,eAChDtpC,EAASqd,YAAiB,SAAA19E,GAAK,OAAIA,EAAMg+E,QAAQ3d,SACjD0mF,EAAarpE,YAAiB,SAAA19E,GAAK,OAAIA,EAAMm3B,SAC7C0lE,EAAqBnf,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEgwD,GAAG/kE,UAAUsxE,qBArB1ByB,EAwBkBxhB,wBAA6Bz9E,GAxB/Ck/F,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAwB/B4pD,EAxB+B3pD,EAAA,GAwBT4pD,EAxBS5pD,EAAA,GAAAG,EAyBgC5hB,mBAAwB,IAzBxD6hB,EAAAxvF,OAAAqoD,EAAA,EAAAroD,CAAAuvF,EAAA,GAyB/B0pD,EAzB+BzpD,EAAA,GAyBF0pD,EAzBE1pD,EAAA,GAAAG,EA0BsBhiB,mBAAoC,IA1B1DiiB,EAAA5vF,OAAAqoD,EAAA,EAAAroD,CAAA2vF,EAAA,GA0B/BwpD,EA1B+BvpD,EAAA,GA0BPwpD,EA1BOxpD,EAAA,GAAA02B,EA2Bc34C,oBAAS,GA3BvB44C,EAAAvmH,OAAAqoD,EAAA,EAAAroD,CAAAsmH,EAAA,GA2B/B+yB,EA3B+B9yB,EAAA,GA2BX+yB,EA3BW/yB,EAAA,GA8BhCgzB,EAAaR,EAA8BI,EAAP1wH,EACpC+wH,EAAazmH,kBAAQ,WACzB,OAAIlhC,GAAaq2C,IAAU6wG,EAClB9yE,YAAkB0yE,EAAYzwG,EAAOr2C,GAE1CA,GAAa8mJ,GAAczwG,GAAS6wG,EAC/B9yE,YAAkB0yE,EAAYzwG,EAAOr2C,EAAWknJ,QADzD,GAGC,CAACA,IAEEU,EAA8B9G,eAC9B+G,GAAuB3mH,kBAC3B,kBAAM0mH,GAA+Bz5I,OAAO25I,QAAQF,GAA6BxG,KAAK,IACtF,CAACwG,IAEG/yC,GAAe3zE,kBAAQ,WAC3B,MAAO,CACLmzE,UAAW,EACX50E,OAAQ,CAAC,YACTsoH,cAAe,EACZH,EAA4Bl1G,aAAe,eAC3Ck1G,EAA4B9E,MAAQ,QACpC8E,EAA4B/E,QAAU,UACtC+E,EAA4BxE,SAAW,KACvCwE,EAA4BtE,KAAO,aACnCsE,EAA4B1E,MAAQ,QACpC0E,EAA4BvE,OAAS,SACrCuE,EAA4BzE,MAAQ,QACpCyE,EAA4Bz9I,SAAW,WACvCy9I,EAA4BhxF,QAAU,UACtCgxF,EAA4BrE,UAAY,aACxCqE,EAA4Bz0F,OAAS,cACrCy0F,EAA4B7E,WAAa,SACzC6E,EAA4B5E,KAAO,OACnC4E,EAA4B3E,KAAO,SAGvC,CAAC4E,KAEJtqE,oBAAU,WACHse,IACHsrD,OAAwB9oJ,GACxBqoJ,OAAaroJ,GACbooJ,OAAYpoJ,GACZgpJ,EAA+B,IAC/BI,GAAsB,KAEvB,CAAC5rD,IAGJ,IAAMypD,GAAe,eAAAtgH,EAAA72B,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAC,EAAO8tD,GAAP,OAAAhuD,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAClBytD,KACoB,IAAlBA,GACFw+C,OAAwB9oJ,GACxBqoJ,OAAaroJ,GACbooJ,OAAYpoJ,IAEZ8oJ,EAAwBx+C,GAE1B0+C,EAA+B,IAC/BI,GAAsB,IAVF,wBAAAzsG,EAAAK,SAAAR,MAAH,gBAAAmkC,GAAA,OAAAh6C,EAAA0e,MAAAzJ,KAAA0J,YAAA,GAcfqkG,GAAiB,eAAA3xF,EAAAloD,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAU,EAAO1kB,GAAP,OAAA+jB,EAAAvoB,EAAA2oB,KAAA,SAAAQ,GAAA,cAAAA,EAAAN,KAAAM,EAAAL,MAAA,OACpBtkB,GACF2wH,EAA0B3wH,GAFJ,wBAAA2kB,EAAAF,SAAAC,MAAH,gBAAA2jC,GAAA,OAAA5oB,EAAA3S,MAAAzJ,KAAA0J,YAAA,GAMjBskG,GAAsB,eAAA7oD,EAAAjxF,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAa,IAAA,IAAA1G,EAAA,OAAA4F,EAAAvoB,EAAA2oB,KAAA,SAAAa,GAAA,cAAAA,EAAAX,KAAAW,EAAAV,MAAA,WACzBysG,IAAcT,GAA+D,IAAvCE,EAA4BnlH,QAAiBulH,EAD1D,CAAA5rG,EAAAV,KAAA,eAAAU,EAAAV,KAAA,EAEHysG,EAAW5yG,YAFR,cAErBA,EAFqB6G,EAAA2B,KAG3B8pG,EAA+BtyG,EAAUyE,SACzCiuG,GAAsB,GAJK7rG,EAAAT,OAAA,SAKpBpG,EAAUyE,SALU,wBAAAoC,EAAAP,SAAAI,MAAH,yBAAA2jD,EAAA17C,MAAAzJ,KAAA0J,YAAA,GAStBukG,GAAgC,eAAA1c,EAAAr9H,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAkB,EAAO/G,GAAP,IAAAozG,EAAA,OAAAxtG,EAAAvoB,EAAA2oB,KAAA,SAAAgB,GAAA,cAAAA,EAAAd,KAAAc,EAAAb,MAAA,cACjCitG,EAAe9jH,IAAE5I,OACrBsZ,EACA,SAACrZ,EAAsBwZ,GAGrB,IAAMrB,EAAmBqB,EAAI5C,iBACvBigG,EAAe,CAAEx8F,OAAQ,EAAGjX,MAAO,EAAGiW,UAAW,GAAIhe,OAAQ8c,EAAkB7wC,QAAS,GAC1F29B,EAAcjF,EAAImY,IAAqB0+F,EAIrCC,EAAWt9F,EAAIriC,YAAcA,IAAU6iC,OAE7C,OAAOvnC,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFutB,EADLvtB,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEG0lC,EAFH1lC,OAAAy0B,EAAA,EAAAz0B,CAAA,GAGOwyB,EAHP,CAIIoV,OAAQy8F,EAAW7xG,EAAYoV,OAASb,EAAIzB,aAAe9S,EAAYoV,OACvE/yC,QAASwvI,EAAW7xG,EAAY39B,QAAU29B,EAAY39B,QAAUkyC,EAAIzB,aAEpEsB,UAAS,GAAAhrC,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAMwyB,EAAYoU,WAAlB,CAA6BG,SAI5C,IAzBqC6G,EAAAZ,OAAA,SA2BhCgtG,GA3BgC,wBAAApsG,EAAAV,SAAAS,MAAH,gBAAAsjC,GAAA,OAAAosD,EAAA9nF,MAAAzJ,KAAA0J,YAAA,GA8BhCykG,GAA2B,eAAAC,EAAAl6I,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAyB,EAAOlmB,EAA2B4e,GAAlC,IAAAuzG,EAAA3V,EAAA4V,EAAA,OAAA5tG,EAAAvoB,EAAA2oB,KAAA,SAAAuB,GAAA,cAAAA,EAAArB,KAAAqB,EAAApB,MAAA,cAC5BotG,EAAkBjkH,IAAE0Q,GACvB7X,IAAI,SAAAkT,GAAC,MAAI,CAACA,EAAEiC,OAAQjC,EAAEkC,oBACtBwtB,UACAxV,OACAxrB,QACG6zG,EAAatuG,IAAE3E,OAAOvJ,EAAQ,SAACkjB,EAAGD,GAAJ,OAAkBkvG,EAAgB1sH,SAASwd,KACzEmvG,EAAe72G,aAAwBihG,GAPXr2F,EAAAnB,OAAA,SAQ3BotG,GAR2B,wBAAAjsG,EAAAjB,SAAAgB,MAAH,gBAAAgjC,EAAAypD,GAAA,OAAAuf,EAAA3kG,MAAAzJ,KAAA0J,YAAA,GAW3B6kG,GAA+B,eAAAC,EAAAt6I,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAA2B,IAAA,IAAAmsG,EAAAP,EAAAQ,EAAAC,EAAAC,EAAA9uD,EAAAt7C,EAAA0mB,EAAA,OAAAxqB,EAAAvoB,EAAA2oB,KAAA,SAAAyB,GAAA,cAAAA,EAAAvB,KAAAuB,EAAAtB,MAAA,WAClCysG,IAAcT,EADoB,CAAA1qG,EAAAtB,KAAA,cAGlCksG,GAA+BA,EAA4BnlH,OAAS,GAHlC,CAAAua,EAAAtB,KAAA,QAAAsB,EAAAoC,GAI9BwoG,EAJ8B5qG,EAAAtB,KAAA,sBAAAsB,EAAAtB,KAAA,EAKxB+sG,KALwB,OAAAzrG,EAAAoC,GAAApC,EAAAe,KAAA,YAE9BmrG,EAF8BlsG,EAAAoC,IAAA,CAAApC,EAAAtB,KAAA,gBAAAsB,EAAAtB,KAAA,GAQPgtG,GAAiCQ,GAR1B,eAQ5BP,EAR4B3rG,EAAAe,KAAAf,EAAAtB,KAAA,GASVktG,GAA4BjyH,EAAQuyH,GAT1B,eAS5BC,EAT4BnsG,EAAAe,KAAAf,EAAAtB,KAAA,GAUZ4tG,GAAsCX,EAAcQ,GAVxC,WAU5BC,EAV4BpsG,EAAAe,KAY5BsrG,EACJxpF,GACA0pF,YAAmB1pF,GAAQ3/B,OAAO,SAAA4F,GAAC,OACP,IAA1B4hH,EAA8B5hH,EAAE63B,eAAiB+pF,EAAuB5hH,IAGtEy0D,EAAW8uD,GAAgB/C,GAAiBC,EAAY8C,EAAcH,GAlB1ClsG,EAAAwsG,GAoBtBjvD,GApBsBv9C,EAAAwsG,GAAA,CAAAxsG,EAAAtB,KAAA,gBAAAsB,EAAAtB,KAAA,GAoBH+tG,GAAoBlvD,GApBjB,QAAAv9C,EAAAwsG,GAAAxsG,EAAAe,KAAA,eAoB5BkB,EApB4BjC,EAAAwsG,MAuBxB7jF,EAAU1mB,EAAV0mB,MACRshF,EAAYthF,IAxBoB3oB,EAAArB,OAAA,SA0B3BytG,GA1B2B,yBAAApsG,EAAAnB,SAAAkB,MAAH,yBAAAksG,EAAA/kG,MAAAzJ,KAAA0J,YAAA,GA+B/BslG,GAAmB,eAAAC,EAAA/6I,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAA4E,EAAO2pG,GAAP,OAAAxuG,EAAAvoB,EAAA2oB,KAAA,SAAA4E,GAAA,cAAAA,EAAA1E,KAAA0E,EAAAzE,MAAA,cAAAyE,EAAAxE,OAAA,SAC1B9W,IAAE5I,OACA0tH,EACA,SAACztH,EAA+B2d,GAC9B,IAAM8iD,EAAUzgE,EAAIygE,QAAU9iD,EAAE8iD,QAC1BvpD,EAAWlX,EAAIkX,SAAWyG,EAAEzG,SAC5BuyB,EAAQg3B,EAAUvpD,EACxB,MAAO,CACLwpD,KAAI,GAAAryF,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAMutB,EAAI0gE,MAAV,CAAgB/iD,IACpB8iD,UACAvpD,WACAuyB,UAGJ,CAAEg3B,QAAS,EAAGvpD,SAAU,EAAGuyB,MAAO,EAAGi3B,KAAM,MAdnB,wBAAAz8C,EAAAtE,SAAAmE,MAAH,gBAAAupF,GAAA,OAAAmgB,EAAAxlG,MAAAzJ,KAAA0J,YAAA,GAiBnBmlG,GAAqC,eAAAM,EAAAj7I,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAiF,EAAOsoG,EAA+BQ,GAAtC,IAAA7V,EAAAl8G,EAAA2/G,EAAA,OAAA57F,EAAAvoB,EAAA2oB,KAAA,SAAAgF,GAAA,cAAAA,EAAA9E,KAAA8E,EAAA7E,MAAA,cACtC43F,EAA2BzuG,IAAE5I,OACjC0sH,EACA,SAAClzG,EAAKC,EAAqBprB,GACzB,IAAMkpH,EAAS3uG,IAAEnH,IAAIgY,EAAIH,UAAW,SAAA3E,GAAC,OAAIA,EAAE46B,aACrCkoE,EAAgB7uG,IAAE5I,OACtBqgE,EACA,SAACpgE,EAAKy3G,EAAIrpH,GACR,OAAKkpH,EAAOp3G,SAASyI,IAAE8c,SAASr3B,IAIzB,CACL66C,IAAKjpC,EAAIipC,IAAMwuE,EAAGxuE,KAJXjpC,GAOX,CAAEipC,IAAK,IAEHjJ,EAAgCvtD,OAAAy0B,EAAA,EAAAz0B,CAAA,GACjC2mC,aAAyBI,EAAIH,UAAW4zG,EAAW7+H,GADlB,CAEpC66C,IAAKuuE,EAAcvuE,MAErB,OAAOx2D,OAAAy0B,EAAA,EAAAz0B,CAAA,GACF8mC,EADL9mC,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEG2b,EAAM4xC,KAGX,IAEI9kC,EAAOyN,IAAEnH,IAAI41G,EAA0B,SAACz5F,EAAGD,GAC/C,OAAOg6F,aAAe/5F,KA9BoB0G,EAAA7E,KAAA,EAgCtC8sG,GAAkBpxH,GAhCoB,cAkCtC2/G,EACJ3/G,GACAgf,aACEvR,IAAEnH,IAAItG,EAAM,SAAAoJ,GACV,OAAIA,EAAEjJ,OAAOixB,YAAcn1C,IAAUgiC,YAC5B,EAEF7U,EAAEu2G,aAGfmQ,EAAanQ,GA5C+Bx2F,EAAA5E,OAAA,SA6CrCvkB,GA7CqC,wBAAAmpB,EAAA1E,SAAAwE,MAAH,gBAAAmpF,EAAAC,GAAA,OAAAmgB,EAAA1lG,MAAAzJ,KAAA0J,YAAA,GAtML0lG,GAsPoBvtE,mBAAmB,IAtPvCwtE,GAAAn7I,OAAAqoD,EAAA,EAAAroD,CAAAk7I,GAAA,GAsP/BE,GAtP+BD,GAAA,GAsPRE,GAtPQF,GAAA,GAuPhC3zC,GAAiBpxE,sBACrB,SAAC+vE,GACCk1C,GAAyBl1C,IAE3B,CAACk1C,GAA0B5B,IAGvBp5H,GAAiB0S,kBACrB,iBAAM,CACJ,CACE4wD,OAAQ,SACRk0B,SAAU,SAAC5zF,GAAD,OAAgCA,EAAEyhB,kBAC5CnzC,GAAI,WACJ+oJ,SAAS,EACTC,SAAU,eACVriC,KAAM,SAAAsiC,GAAmE,IAAhEC,EAAgED,EAAhEC,IACP,OACE9nH,EAAA1P,EAAA2P,cAAA,OAAU6nH,EAAIC,4BACZ/nH,EAAA1P,EAAA2P,cAAC+nH,GAAD,KAAmBF,EAAI/oJ,SAASgzC,qBAKxC,CACEi+C,OAAQ,cACRk0B,SAAU,SAAC5zF,GAAD,OAAgCA,EAAE5B,aAC5C9vB,GAAI,cACJkuB,MAAO,EACP66H,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAA0iC,GAAA,SAAA1iC,EAAA6hB,GAAA,OAAA6gB,EAAArmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA4oG,EAAA5oG,YAAAkmE,EAAA,CAAE,SAAA2iC,GAA4C,IAAzCJ,EAAyCI,EAAzCJ,IACP,OAAO9nH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KAAG4nH,EAAI/oJ,SAAS2vB,gBAG3B,CACEshE,OAAQ,OACRk0B,SAAU,SAAC5zF,GAAD,OAAgCA,EAAEihB,gBAC5C3yC,GAAI,OACJ+oJ,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAA4iC,GAAA,SAAA5iC,EAAAoiB,GAAA,OAAAwgB,EAAAvmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA8oG,EAAA9oG,YAAAkmE,EAAA,CAAE,SAAA6iC,GAAA,IAAGN,EAAHM,EAAGN,IAAH,OACJ9nH,EAAA1P,EAAA2P,cAACkiH,GAAD,CAAkBjN,mBAAmB,EAAM3vC,OAAQ,IAAKvoE,MAAO8qH,EAAI/oJ,SAASwyC,oBAGhF,CACEy+C,OAAQ,SACRk0B,SAAU,SAAC5zF,GAAD,OAAgCA,EAAE4gB,QAC5CtyC,GAAI,SACJ2mH,KAAI,SAAA8iC,GAAA,SAAA9iC,EAAAqiB,GAAA,OAAAygB,EAAAzmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAgpG,EAAAhpG,YAAAkmE,EAAA,CAAE,SAAA+iC,GAA4C,IAAzCR,EAAyCQ,EAAzCR,IACP,OAAItiG,MAAMsiG,EAAI/oJ,SAASmyC,QAAgBlR,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAS8a,KAAM,UAC/Cnb,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc60G,mBAAmB,EAAMl4G,MAAO8qH,EAAI/oJ,SAASmyC,OAAQwpG,MAAI,EAACr1C,UAAQ,OAG3F,CACErV,OAAQ,MACRk0B,SAAU,SAAC5zF,GAAD,OAAgCA,EAAEi4H,YAC5C3pJ,GAAI,IACJkuB,MAAO,GACP66H,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAAijC,GAAA,SAAAjjC,EAAAsiB,GAAA,OAAA2gB,EAAA5mG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAmpG,EAAAnpG,YAAAkmE,EAAA,CAAE,SAAAkjC,GAA4C,IAAzCX,EAAyCW,EAAzCX,IACP,OAAItiG,MAAMsiG,EAAI/oJ,SAASwpJ,YAAoBvoH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAS8a,KAAM,UACnDnb,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc60G,mBAAmB,EAAMl4G,MAAO8qH,EAAI/oJ,SAASwpJ,WAAY7N,MAAI,EAAChnB,SAAO,EAACD,UAAQ,OAGvG,CACEzjC,OAAQ,MACRk0B,SAAU,SAAC5zF,GAAD,OAAgCA,EAAE2gB,KAC5CryC,GAAI,MACJ+oJ,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAAmjC,GAAA,SAAAnjC,EAAAuiB,GAAA,OAAA4gB,EAAA9mG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAqpG,EAAArpG,YAAAkmE,EAAA,CAAE,SAAAojC,GAA4C,IAAzCb,EAAyCa,EAAzCb,IACP,OACEA,EAAI/oJ,SAASk2B,OAAOixB,YAAcn1C,IAAUgiC,aAC5C+0G,EAAI/oJ,SAASk2B,OAAOixB,YAAcn1C,IAAU8iC,WAErC7T,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MAEFF,EAAA1P,EAAA2P,cAACkiH,GAAD,CAAkBnlH,MAAO8qH,EAAI/oJ,SAASkyC,SAGjD,CACE++C,OAAQ,MACRk0B,SAAU,SAAC5zF,GAAD,OAAgCA,EAAE0gB,KAC5CpyC,GAAI,MACJkuB,MAAO,GACP66H,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAAqjC,GAAA,SAAArjC,EAAAwiB,GAAA,OAAA6gB,EAAAhnG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAupG,EAAAvpG,YAAAkmE,EAAA,CAAE,SAAAsjC,GAA4C,IAAzCf,EAAyCe,EAAzCf,IACP,OACEA,EAAI/oJ,SAASk2B,OAAOixB,YAAcn1C,IAAUgiC,aAC5C+0G,EAAI/oJ,SAASk2B,OAAOixB,YAAcn1C,IAAU8iC,WAErC7T,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MAEFF,EAAA1P,EAAA2P,cAACkiH,GAAD,CAAkBnlH,MAAO8qH,EAAI/oJ,SAASiyC,SAGjD,CACEg/C,OAAQ,cACRk0B,SAAU,SAAC5zF,GAAD,OAAgCA,EAAE2hB,OAC5CrzC,GAAI,QACJ+oJ,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAAujC,GAAA,SAAAvjC,EAAAkjB,GAAA,OAAAqgB,EAAAlnG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAypG,EAAAzpG,YAAAkmE,EAAA,CAAE,SAAAwjC,GAA4C,IAAzCjB,EAAyCiB,EAAzCjB,IACP,OAAIA,EAAI/oJ,SAASgxC,gBACR/P,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQ60G,mBAAmB,EAAM3vC,OAAQ,IAAKvoE,MAAO8qH,EAAI/oJ,SAASmzC,UAAWmzD,UAAQ,IAChFrlE,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQ60G,mBAAmB,EAAM3vC,OAAQ,IAAKvoE,MAAO8qH,EAAI/oJ,SAASkzC,MAAOozD,UAAQ,OAGnG,CACErV,OAAQ,QACRk0B,SAAU,SAAC5zF,GAAD,OAAgCA,EAAEyf,iBAC5CnxC,GAAI,aACJ+oJ,SAAS,EACTpiC,KAAI,SAAAyjC,GAAA,SAAAzjC,EAAAmjB,GAAA,OAAAsgB,EAAApnG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA2pG,EAAA3pG,YAAAkmE,EAAA,CAAE,SAAA0jC,GAA4C,IAAzCnB,EAAyCmB,EAAzCnB,IAEP,OADkBA,EAAI/oJ,SAASgxC,gBAE7B/P,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQ60G,mBAAmB,EAAMl4G,MAAO8qH,EAAI/oJ,SAASkzC,MAAOozD,UAAQ,IAEpErlE,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,0BAA0BzP,MAAM,2CAInD,CACEm+D,OAAQ,YACRk0B,SAAU,SAAC5zF,GAAD,OAAgCA,EAAE2gB,KAC5CryC,GAAI,YACJ+oJ,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAA2jC,GAAA,SAAA3jC,EAAAojB,GAAA,OAAAugB,EAAAtnG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA6pG,EAAA7pG,YAAAkmE,EAAA,CAAE,SAAA4jC,GAA4C,IAAzCrB,EAAyCqB,EAAzCrB,IACDnL,EAAmC/hE,YAAiB41D,IACpDv9F,EAAqCypG,GACzCoL,EAAI/oJ,SAASgzC,iBACb4qG,GACA,GACA,EACAyI,GAGF,OAAInyG,EAAU9S,OAAS,EACdH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MAGFF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOmhH,GAAiBlrG,GAAYoyD,UAAQ,OAI/D,CACErV,OAAQ,WACN,OAAOhwD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,eAAf,WAET4iF,SAAU,SAAC5zF,GAAD,OAAgCA,EAAEohB,UAC5C9yC,GAAI,SACJkuB,MAAO,GACP66H,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAA6jC,GAAA,SAAA7jC,EAAA8jC,GAAA,OAAAD,EAAAxnG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA+pG,EAAA/pG,YAAAkmE,EAAA,CAAE,SAAA+jC,GAA4C,IAAzCxB,EAAyCwB,EAAzCxB,IACP,OACEA,EAAI/oJ,SAASk2B,OAAOixB,YAAcn1C,IAAUgiC,aAC5C+0G,EAAI/oJ,SAASk2B,OAAOixB,YAAcn1C,IAAU8iC,WAG1C7T,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,gBACXiB,IAAEgnH,YAAYzB,EAAI/oJ,SAASm1C,YAAclU,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO8qH,EAAI/oJ,SAASm1C,aAM3ElU,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,gBACXiB,IAAEgnH,YAAYzB,EAAI/oJ,SAASm1C,YAAclU,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO8qH,EAAI/oJ,SAASm1C,UAAW+oD,SAAO,QAKjG,CACEjN,OAAQ+0D,EAAY,UAAY,OAChC7gC,SAAU,SAAC5zF,GAAD,OAAgCA,EAAEk5H,cAC5C5qJ,GAAI,UACJkuB,MAAO,GACP66H,SAAS,EACTC,SAAU,eACVtmH,UAAW,cACXikF,KAAI,SAAAkkC,GAAA,SAAAlkC,EAAAmkC,GAAA,OAAAD,EAAA7nG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAoqG,EAAApqG,YAAAkmE,EAAA,CAAE,SAAAokC,GAAA,IAAG7B,EAAH6B,EAAG7B,IAAH,OACJ9nH,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,eAAewmH,EAAI/oJ,SAASyqJ,aAAe,GAAKxpH,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,qBAGhF,CACE0uD,OAAQ,OACRk0B,SAAU,SAAC5zF,GAAD,OAAgCA,EAAE8gB,MAC5CxyC,GAAI,OACJ+oJ,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAAqkC,GAAA,SAAArkC,EAAAskC,GAAA,OAAAD,EAAAhoG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAuqG,EAAAvqG,YAAAkmE,EAAA,CAAE,SAAAukC,GAA4C,IAAzChC,EAAyCgC,EAAzChC,IAKHiC,EAAoB,EAElBpN,EAAmC/hE,YAAiB41D,IACpDv9F,EAAqCypG,GACzCoL,EAAI/oJ,SAASgzC,iBACb4qG,GACA,GACA,EACAyI,GAcF,OAVE2E,EADuB,IAArB92G,EAAU9S,OACQuS,aAClByrG,GAAiBlrG,GACjBA,EAAU,GAAGtB,aACbsB,EAAU,GAAGliC,UACbkiC,EAAU,GAAG3B,kBAGKw2G,EAAI/oJ,SAAS0jE,WAAaqlF,EAAI/oJ,SAASqyC,KAAO02G,EAAI/oJ,SAAS0jE,WAAaqlF,EAAI/oJ,SAASqyC,KAIzGpR,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACErD,MAAO+sH,EACP1kD,UAAQ,OAKhB,CACErV,OAAQ,QACRk0B,SAAU,SAAC5zF,GAAD,OAAgCA,EAAE0M,OAC5Cp+B,GAAI,QACJkuB,MAAO,IACP66H,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAAykC,GAAA,SAAAzkC,EAAA0kC,GAAA,OAAAD,EAAApoG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA2qG,EAAA3qG,YAAAkmE,EAAA,CAAE,SAAA2kC,GAAA,IAAGpC,EAAHoC,EAAGpC,IAAH,OAA4C9nH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO8qH,EAAI/oJ,SAASi+B,MAAOqoE,UAAQ,OAE/F,CACErV,OAAQ,OACRk0B,SAAU,SAAC5zF,GAAD,OAAgCA,EAAEmkH,WAC5C71I,GAAI,OACJkuB,MAAO,IACPy4F,KAAI,SAAA4kC,GAAA,SAAA5kC,EAAA6kC,GAAA,OAAAD,EAAAvoG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA8qG,EAAA9qG,YAAAkmE,EAAA,CAAE,SAAA8kC,GAA4C,IAAzCvC,EAAyCuC,EAAzCvC,IACDnL,EAAmC/hE,YAAiB41D,IACpDv9F,EAAqCypG,GACzCoL,EAAI/oJ,SAASgzC,iBACb4qG,GACA,GACA,EACAyI,GAGF,GAAI0C,EAAI/oJ,SAASk2B,OAAOixB,YAAcn1C,IAAUgiC,YAC9C,OAAO/S,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAcrD,MAAO,EAAG09G,MAAI,EAACr1C,UAAQ,EAACouB,UAAQ,IAOvD,IAAIzhF,EAAO,EAeX,OAZEA,EADuB,IAArBiB,EAAU9S,OACL2nH,EAAI/oJ,SAASi+B,MAAQ0V,aAC1ByrG,GAAiBlrG,GACjBA,EAAU,GAAGtB,aACbsB,EAAU,GAAGliC,UACbkiC,EAAU,GAAG3B,kBAGRw2G,EAAI/oJ,SAAS0jE,WAChBqlF,EAAI/oJ,SAAS01I,UAAYqT,EAAI/oJ,SAAS0jE,WACtCqlF,EAAI/oJ,SAAS01I,UAGZz0G,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAcrD,MAAOgV,EAAM0oG,MAAI,EAACr1C,UAAQ,EAACouB,UAAQ,OAG5D,CACEzjC,OAAQ,YACRk0B,SAAU,SAAC5zF,GAAD,OAAgCA,EAAEuyC,KAC5CjkE,GAAI,YACJ2mH,KAAI,SAAA+kC,GAAA,SAAA/kC,EAAAglC,GAAA,OAAAD,EAAA1oG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAirG,EAAAjrG,YAAAkmE,EAAA,CAAE,SAAAilC,GAA4C,IAAzC1C,EAAyC0C,EAAzC1C,IACP,GAAIA,EAAI/oJ,SAASk2B,OAAOixB,YAAcn1C,IAAUgiC,YAC9C,OAAO/S,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAcrD,MAAO,EAAG09G,MAAI,EAACr1C,UAAQ,EAACouB,UAAQ,IAEvD,IAAM5wD,EAAMilF,EAAI/oJ,SAAS8jE,IACzB,OAAOtgC,IAAEijB,MAAMqd,GAAO7iC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MAAQF,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAcrD,MAAO8qH,EAAI/oJ,SAAS8jE,IAAK63E,MAAI,EAACr1C,UAAQ,EAACouB,UAAQ,OAG/F,CACEzjC,OAAQ,UACRk0B,SAAU,SACVp3F,MAAOi4H,EAAY,IAAM,GACzBnmJ,GAAI,UACJ2mH,KAAI,SAAAklC,GAAA,SAAAllC,EAAAmlC,GAAA,OAAAD,EAAA7oG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAorG,EAAAprG,YAAAkmE,EAAA,CAAE,SAAAolC,GAA4C,IAAzC7C,EAAyC6C,EAAzC7C,IAAyC8C,EAClB9C,EAAI/oJ,SAA1Bk2B,EADwC21H,EACxC31H,OAAQif,EADgC02G,EAChC12G,UAEV22G,EAAc32G,GAAa,EAE3B42G,EADUD,EAAc,SAFItuJ,IAAd23C,GAAyC,IAAdA,GAGIljC,KAAYy6C,IAAMz6C,KAAY06C,KAC3Ei4B,EAAcmkE,EAAI/oJ,SAASk2B,OAC3B8c,EAAmB4xC,EAAY5xC,kBAAoB4xC,EAAY1uD,OAC/DwkH,EAAkB7nG,aACtBG,EACA4xC,EAAYz9B,UACZrU,YAAsB8xC,EAAYz9B,WAClC,CAAE3nD,KAAMwzC,EAAkBA,mBAAkBD,WAAYC,IAEpDg5G,EAAQryE,aAAYiL,EAAY1uD,QAChC+1H,EAAoBvoH,sBAAY,SAACm0G,GACrC,OAAOA,GACN,IAEGqU,EAAmB7V,GACvB,SAACwB,GACC,IAAIllG,EAAWoJ,KAAKwb,IAAIu0F,GAQxB,OALEn5G,EADEA,EAAW,EACFoJ,KAAKw/F,KAAK5oG,GAEVoJ,KAAKqxC,MAAMz6C,GAGjBklG,EACJ3hH,OAAOA,GACPoI,SAASy3B,KACTpjB,SAASA,GACTsf,OAAO85F,GACPxwF,IAAI,SAAAr/B,GAAC,OAAIA,EAAEirB,UAAUn1C,IAAU6iC,QAAQod,OAAO85F,MAEnD,CAAEx/D,UAAW75E,IAAU0E,MAAO4d,YAG1BmmH,EAAmB9E,GACvB,SAACwB,GACC,OAAOA,EACJ3hH,OAAOA,GACPoI,SAASg6B,KACT3lB,SAAS,GACTsf,OAAOhgD,KAAYy6C,MAExB,CAAE6/B,UAAW75E,IAAU0E,MAAO4d,YAG1Bm3H,EAAmB3T,GAAqBkC,EAAiBuR,EAAmB,CAAEj3H,YAE9Eo3H,EAAkB/rH,kBAAQ,WAC9B,OAAI2rH,EACc,CAAC,CAAEl5H,MAAO,QAAS4P,QAAS,kBAAMy4G,KAAoBr6C,KAAM,aAG5D,CACd,CAAEhuE,MAAO,iBAAkB4P,QAAS,kBAAMwpH,KAAoBprD,KAAM,IACpE,CAAEhuE,MAAO,QAAS4P,QAAS,kBAAMy4G,KAAoBr6C,KAAM,YAC3D,CAAEhuE,MAAO,QAAS4P,QAAS,kBAAMypH,KAAoBrrD,KAAM,mBAI9D,CAACorD,EAAkB/Q,EAAkBgR,IAExC,OACEpD,EAAI/oJ,SAASk2B,OAAOixB,YAAcn1C,IAAUgiC,aAC5C+0G,EAAI/oJ,SAASk2B,OAAOixB,YAAcn1C,IAAU8iC,WAG1C7T,EAAA1P,EAAA2P,cAAA,WACED,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAkBk1D,GAAI,sBACpBv1D,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,wCADf,yBAQJtB,EAAA1P,EAAA2P,cAACu6G,GAAD,CACEvvF,QAASkgG,EACT/S,SAAQ,GAAAnwI,OAAKgtB,EAAOA,OAAZ,YACRojH,kBAAmBA,SAM7B,CAACtkH,EAASgxH,EAAW1M,EAAmBoP,GAAuB3B,IAG3DsF,GAAe3oH,sBACnB,SAACqlH,EAAmCuD,GAClC,OACErrH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACqrH,GAAD,CACEv5G,iBAAkB+1G,EAAI/oJ,SAASgzC,iBAC/BoJ,KAAMkwG,EAAalwG,KACnBk9F,kBAAmBA,EACnBxxC,aAAcu+C,EACd5yC,YAAai1C,OAKrB,CAACpP,EAAmB+M,EAAsBqC,GAAuB3B,IAG7DyF,GAAY9oH,sBAAY,SAAC3N,GAAD,SAAA7sB,OAAsC6sB,EAAKG,SAAU,IAEnFwmD,oBAAU,WACJoqE,GAAcT,IAAyBD,GACzCuB,MAED,CAACb,EAAYT,EAAsB/wH,EAAQ8wH,IAE9C,IAAMqG,GAAeC,aAAqB/+H,IAE1C,OACEsT,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGglH,IAAmBC,GAClBnlH,EAAA1P,EAAA2P,cAACyrH,GAAD,CAAkBlI,gBAAiBA,KAEpCoC,GAAaA,EAAUzlH,OAAS,GAC/BH,EAAA1P,EAAA2P,cAACylF,GAAD,CACEjS,SAAS,YACT/mF,QAASA,GACToI,KAAM8wH,EACNwF,aAAcA,GACdG,UAAWA,GACXh4C,cAAeuxC,EACf6G,UAAQ,EACRC,eAAa,EACbC,WAAYtpH,IAAE4Y,KAAKzuB,IACnBqmF,aAAcA,GACdy4C,aAAcA,GACd33C,eAAgBA,GAChBC,WAAYgyC,EAA4BhyC,cAG1C8xC,GAAkC,IAArBA,EAAUzlH,QACvBH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,iCCnuBKyrH,GAGR,SAAAztH,GAAmC,IAAhCumH,EAAgCvmH,EAAhCumH,aAAcD,EAAkBtmH,EAAlBsmH,YAAkB3oE,EACPpB,YAAiB22D,IAAxCnyB,EAD8BpjC,EAC9BojC,QACF2sC,GAA+C,IAFf/vE,EACrB/oC,UACuB+jC,SACxC,OACEh3C,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAAC+rH,GAAD,MACAhsH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MAC6B,IAA1B6rH,EACC/rH,EAAA1P,EAAA2P,cAACgsH,GAAD,CAAerH,aAAcA,EAAcD,YAAaA,IAExD3kH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KAAoB++E,EAAUp/E,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,MAAc,6BCJzC6rH,GAA6C,WAAM,IACtD9vE,EAAeN,cAAfM,WACR2R,IAAS,kBAAM3R,EAAWtnD,KAAKme,UAAU3G,YACzCm/D,GAA0C0gD,KAC1C7b,GAA4B6b,KAC5B,IAAM/9B,EAAqB3rF,sBAAY,SAACvlC,GAEtC,OADoBq0I,GAA2Br0I,GAAvCkiH,SAEP,IAR2DgtC,EAS7BC,eAAzB9sD,EATsD6sD,EAStD7sD,QAASwsB,EAT6CqgC,EAS7CrgC,YACTjY,EAAevU,EAAfuU,WAVsD/5B,EAa5BC,wBAA6Bz9E,GAbD09E,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAavD06D,EAbuDx6D,EAAA,GAa5C2qE,EAb4C3qE,EAAA,GAAAuhB,EAc9BxhB,wBAA6Bz9E,GAdCk/F,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAcvDk5C,EAduDj5C,EAAA,GAc7CkpD,EAd6ClpD,EAAA,GAgBxD6wD,EAA8B,eAAAjuH,EAAAhyB,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAC,EAAO07F,GAAP,OAAA57F,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OACrCwrG,EAAanQ,GADwB,wBAAAv7F,EAAAK,SAAAR,MAAH,gBAAAmkC,GAAA,OAAA7+C,EAAAujB,MAAAzJ,KAAA0J,YAAA,GAI9B0qG,EAA6B,eAAArpH,EAAA72B,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAU,EAAOk7F,GAAP,OAAA77F,EAAAvoB,EAAA2oB,KAAA,SAAAQ,GAAA,cAAAA,EAAAN,KAAAM,EAAAL,MAAA,OACpCurG,EAAYjQ,GADwB,wBAAAj7F,EAAAF,SAAAC,MAAH,gBAAA2jC,GAAA,OAAAj6C,EAAA0e,MAAAzJ,KAAA0J,YAAA,GAInC,OACE7hB,EAAA1P,EAAA2P,cAAC0vG,GAADtjI,OAAA8F,OAAA,GACM09H,aAAcp+H,IAAUiF,eAAWna,GADzC,CAEEwpE,OAAQ/lC,EAAA1P,EAAA2P,cAACusH,GAAD,CAAgB/X,UAAWA,EAAWC,SAAUA,EAAU5gC,WAAYA,IAC9Esa,mBAAoBA,EACpBzlG,SAAU42E,EACV2sB,cAAeH,IAEf/rF,EAAA1P,EAAA2P,cAACwsH,GAAD,CAAsB7H,aAAc0H,EAAgC3H,YAAa4H,MC/C1EG,GAA2E,SAAAruH,GAAA,IAAGxM,EAAHwM,EAAGxM,MAAO86H,EAAVtuH,EAAUsuH,WAAYr7D,EAAtBjzD,EAAsBizD,SAAtB,OACtFtxD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,gBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAS,cAAAr5B,OAAgB0kJ,IAAe96H,GAC5Cy/D,KAWMs7D,GAA6D,SAAA1pH,GAA6C,IAA1CrR,EAA0CqR,EAA1CrR,MAAOg7H,EAAmC3pH,EAAnC2pH,QAASvrH,EAA0B4B,EAA1B5B,UAAWgwD,EAAepuD,EAAfouD,SAChGw7D,EAAeD,GAAW,MAChC,OACE7sH,EAAA1P,EAAA2P,cAAC8sH,GAAD,CAAQl7H,MAAOA,GACbmO,EAAA1P,EAAA2P,cAAC6sH,EAAD,CAAcxrH,UAAWA,GAAa,cAAegwD,KCjB9C07D,GAOR,SAAA3uH,GAA+D,IAA5DxM,EAA4DwM,EAA5DxM,MAAOmL,EAAqDqB,EAArDrB,MAAOiwH,EAA8C5uH,EAA9C4uH,OAAQp2D,EAAsCx4D,EAAtCw4D,UAAW48B,EAA2Bp1F,EAA3Bo1F,SAAUy5B,EAAiB7uH,EAAjB6uH,WAC3CjqG,IAAW1gB,IAAEhF,MAAMP,IAAWuF,IAAEijB,MAAMxoB,KAAUuF,IAAEulB,SAAS9qB,IAEjE,OACEgD,EAAA1P,EAAA2P,cAAC8sH,GAAD,CAAQl7H,MAAOA,EAAO86H,WAAW,QAC/B3sH,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,eACE,IAAdu1D,GAAsB5zC,EACrBjjB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG+sH,EACCjtH,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAcrD,MAAOA,EAAOy2F,SAAUA,EAAUy5B,WAAYA,EAAYx2G,QAAM,EAAC2uD,UAAQ,IAEvFrlE,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOA,EAAO0Z,QAAM,EAAC2uD,UAAQ,KAIzCrlE,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACdtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAS8a,KAAK,cCxBbgyG,GAAmB,SAACr8E,EAAoBs8E,GAAiD,IAC5FC,EAA0Dv8E,EAA1Du8E,SAAUC,EAAgDx8E,EAAhDw8E,WAAYC,EAAoCz8E,EAApCy8E,YAAav1C,EAAuBlnC,EAAvBknC,mBAGrCw1C,EAAeC,GAAgBJ,GAE/BnzD,EAAgBwzD,GAAiBJ,GAEjCnzD,EAAeqzD,EAAetzD,EAE9ByzD,EAAeC,GAAqBP,EAAUC,GAK9CO,EAAsBC,aAAiB3zD,EAAcwzD,GACrDI,EAAmBD,aAAiB3zD,EAHxB,GAyBlB,MAAO,CACLA,eACAD,gBACA8zD,gBAvBsBC,GAAmBn9E,GAwBzC68E,eACAO,UA9BgB,EA+BhBL,sBACAE,mBACAI,oBA1B0BC,GAAuBb,GA2BjDc,oBAzB0BC,GAAuBf,GA0BjDgB,uBAxB6BC,GAA0B19E,GAyBvD29E,mBAvByBC,GAAsBrB,EAAUr1C,GAwBzD22C,YAtBkBtB,EAASuB,YAuB3BC,cArBoBxB,EAASyB,gBA2B3BrB,GAAkB,SAAC38E,GACvB,OAAIA,EACKA,EAASg+E,cAAgBh+E,EAASi+E,aAAej+E,EAAS89E,YAE5D,GAGHlB,GAAmB,SAACsB,GACxB,OAAIA,EAEAA,EAAWC,eACXD,EAAWE,gBACXF,EAAWG,gBACXH,EAAWI,iBACXJ,EAAWK,iBACXL,EAAWM,gBAGR,GAGH1B,GAAuB,SAAC98E,EAAgCk+E,GAC5D,IAAIhyH,EAAQ,EAcZ,OAbI8zC,IACF9zC,GAAS8zC,EAASy+E,wBAA0Bz+E,EAAS0+E,0BAA4B1+E,EAAS2+E,0BAExFT,IACFhyH,GACEgyH,EAAWU,2BACXV,EAAWW,4BACXX,EAAWY,4BACXZ,EAAWa,6BACXb,EAAWc,6BACXd,EAAWe,4BACXf,EAAWgB,kCAERhzH,GAGIixH,GAAqB,SAACn9E,GACjC,IAAMm/E,EAASxC,GAAgB38E,EAASu8E,UACxC,OAAIv8E,EAASw8E,WACJ2C,EAASn/E,EAASw8E,WAAW4C,qBAE/BD,GAGH7B,GAAyB,SAAC+B,GAC9B,OAAIA,EACKA,EAAYC,oBAEd,GAGH9B,GAAyB,SAAC6B,GAC9B,OAAIA,EACKA,EAAYE,eAEd,GAGH7B,GAA4B,SAAC19E,GACjC,OAAIA,EAASu8E,SACJv8E,EAASu8E,SAASiD,iBAEpB,GAGH5B,GAAwB,SAC5B59E,EACAy/E,GAEA,OAAIz/E,GAAYy/E,EACPz/E,EAASg+E,eAAiB,EAAIyB,EAAmBC,yBAEnD,GC1GIC,GAAoD,SAAApyH,GAAgB,IAAb47D,EAAa57D,EAAb47D,OAE5D/7F,EAAYgxF,YAAYhU,KAAQh9E,WAChC8mJ,EAAa12D,KAAO22D,WACpB1wG,EAAQqmC,YAAiB,SAAA19E,GAAK,OAAIA,EAAMm0E,KAAK2G,iBAAaz7E,EAG1D4oJ,EAAQvqE,YAAiB,SAAA19E,GAAK,OAAIA,EAAMg+E,QAAQ2rB,eAChDxyE,EAASumD,YAAiB,SAAA19E,GAAK,OAAIA,EAAMm3B,OAAO0jE,cAAcjjE,OAC9DolE,EAAgBtf,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEw8D,YAAYC,OAAOC,gBACzD72B,EAAUuX,YAAiB82D,GAAqBz3C,OAAOt9C,KAAvD0mB,MACFk0B,EAAS3c,YAAiBq3D,GAAaE,eAEvC8R,GADMrpE,YAAiB82D,GAAqBE,iBAC/Bh3D,YAAiB,SAAA19E,GAAK,OAAIA,EAAMm3B,UAC7CkpC,EAASqd,YAAiB,SAAA19E,GAAK,OAAIA,EAAMg+E,QAAQ3d,SACjD2nF,EAAiBtqE,YACrB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQl+B,YAAYA,aAAexf,EAAE09C,QAAQl+B,YAAYA,YAAY7c,OAAS,IAEjFg6D,EAAevf,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEw8D,YAAYC,OAAOE,eAC1DJ,EAAqBnf,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEgwD,GAAG/kE,UAAUsxE,qBAnBehgB,EAsBvBC,wBAA6Bz9E,GAtBN09E,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAsBxEqrE,EAtBwEnrE,EAAA,GAsBlDorE,EAtBkDprE,EAAA,GAAAuhB,EAuBXxhB,wBAA+Bz9E,GAvBpBk/F,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAuBxEk1D,EAvBwEj1D,EAAA,GAuB5Ck1D,EAvB4Cl1D,EAAA,GAAAG,EAwBT5hB,mBAAwB,IAxBf6hB,EAAAxvF,OAAAqoD,EAAA,EAAAroD,CAAAuvF,EAAA,GAwBxE0pD,EAxBwEzpD,EAAA,GAwB3C0pD,EAxB2C1pD,EAAA,GAAAG,EAyBThiB,wBAA6Bz9E,GAzBpB0/F,EAAA5vF,OAAAqoD,EAAA,EAAAroD,CAAA2vF,EAAA,GAyBxE40D,EAzBwE30D,EAAA,GAyB3C40D,EAzB2C50D,EAAA,GAAA02B,EA0BD34C,wBAA6Bz9E,GA1B5Bq2H,EAAAvmH,OAAAqoD,EAAA,EAAAroD,CAAAsmH,EAAA,GA0BxEm+B,EA1BwEl+B,EAAA,GA0BvCm+B,EA1BuCn+B,EAAA,GAAA20B,EA2BPvtE,wBAA6Bz9E,GA3BtBirJ,EAAAn7I,OAAAqoD,EAAA,EAAAroD,CAAAk7I,EAAA,GA2BxEyJ,EA3BwExJ,EAAA,GA2B1CyJ,EA3B0CzJ,EAAA,GAAA0J,EA4B3Bl3E,oBAAS,GA5BkBm3E,EAAA9kJ,OAAAqoD,EAAA,EAAAroD,CAAA6kJ,EAAA,GA4BxExL,EA5BwEyL,EAAA,GA4BpDxL,GA5BoDwL,EAAA,GAAAC,GA6BXp3E,wBAA6Bz9E,GA7BlB80J,GAAAhlJ,OAAAqoD,EAAA,EAAAroD,CAAA+kJ,GAAA,GA6BxEE,GA7BwED,GAAA,GA6B5CE,GA7B4CF,GAAA,GAAAG,GA8BPx3E,wBAA6Bz9E,GA9BtBk1J,GAAAplJ,OAAAqoD,EAAA,EAAAroD,CAAAmlJ,GAAA,GA8B1CE,IA9B0CD,GAAA,GAAAA,GAAA,IAgC/Eh2E,oBAAU,WACHse,IACHsrD,OAAwB9oJ,GACxBo0J,OAA8Bp0J,GAC9BgpJ,EAA+B,IAC/BwL,OAAmCx0J,GACnCs0J,OAA+Bt0J,GAC/B00J,OAAgC10J,GAChCg1J,QAA8Bh1J,GAC9Bm1J,QAAgCn1J,KAEjC,CAACw9F,IAEJ,IAAMypD,GAAe,eAAAtgH,EAAA72B,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAC,EAAO8tD,GAAP,OAAAhuD,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAClBytD,IAEAw+C,GADoB,IAAlBx+C,OACsBtqG,EAEAsqG,GAE1B0+C,EAA+B,IAC/BsL,OAA+Bt0J,GAC/Bw0J,OAAmCx0J,GACnC00J,OAAgC10J,GAChCg1J,QAA8Bh1J,GAC9Bm1J,QAAgCn1J,GAChCo0J,OAA8Bp0J,GAC9BopJ,IAAsB,IAdF,wBAAAzsG,EAAAK,SAAAR,MAAH,gBAAAmkC,GAAA,OAAAh6C,EAAA0e,MAAAzJ,KAAA0J,YAAA,GAkBfgkG,GAAazmH,kBAAQ,WACzB,OAAIlhC,GAAaq2C,IAAU6wG,EAClB9yE,YAAkB0yE,EAAYzwG,EAAOr2C,GAE1CA,GAAaq2C,IAAmC,IAA1B6wG,EACjB9yE,YAAkB0yE,EAAYzwG,EAAOr2C,GAE1CA,GAAa8mJ,GAAczwG,GAAS6wG,EAC/B9yE,YAAkB0yE,EAAYzwG,EAAOr2C,EAAWknJ,QADzD,GAGC,CAACA,EAAsBlnJ,EAAW8mJ,EAAYzwG,IAE3C4xG,GAAsB,eAAA5xF,EAAAloD,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAU,IAAA,IAAAvG,EAAA,OAAA4F,EAAAvoB,EAAA2oB,KAAA,SAAAQ,GAAA,cAAAA,EAAAN,KAAAM,EAAAL,MAAA,WACzBysG,KAAcT,GAA+D,IAAvCE,EAA4BnlH,QAAiBulH,EAD1D,CAAAjsG,EAAAL,KAAA,eAAAK,EAAAL,KAAA,EAEHysG,GAAW5yG,YAFR,cAErBA,EAFqBwG,EAAAgC,KAG3B8pG,EAA+BtyG,EAAUyE,SACzCiuG,IAAsB,GAJKlsG,EAAAJ,OAAA,SAKpBpG,EAAUyE,SALU,wBAAA+B,EAAAF,SAAAC,MAAH,yBAAA+a,EAAA3S,MAAAzJ,KAAA0J,YAAA,GAStB8vG,GAAqB,eAAAr0D,EAAAjxF,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAa,IAAA,IAAAm3B,EAAA,OAAAj4B,EAAAvoB,EAAA2oB,KAAA,SAAAa,GAAA,cAAAA,EAAAX,KAAAW,EAAAV,MAAA,WACxBysG,KAAcT,GAAyBsL,EADf,CAAA52G,EAAAV,KAAA,eAAAU,EAAAV,KAAA,EAEHysG,GAAW/0E,WAFR,cAEpBA,EAFoBh3B,EAAA2B,KAG1Bk1G,EAA8B7/E,EAASp5B,SAHboC,EAAAT,OAAA,SAInBy3B,EAASp5B,SAJU,wBAAAoC,EAAAP,SAAAI,MAAH,yBAAA2jD,EAAA17C,MAAAzJ,KAAA0J,YAAA,GAQrBykG,GAA2B,eAAA5c,EAAAr9H,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAkB,EAAO3lB,EAA2B4e,GAAlC,IAAAuzG,EAAA3V,EAAA4V,EAAA,OAAA5tG,EAAAvoB,EAAA2oB,KAAA,SAAAgB,GAAA,cAAAA,EAAAd,KAAAc,EAAAb,MAAA,cAC5BotG,EAAkBjkH,IAAE0Q,GACvB7X,IAAI,SAAAkT,GAAC,MAAI,CAACA,EAAEiC,OAAQjC,EAAEkC,oBACtBwtB,UACAxV,OACAxrB,QACG6zG,EAAatuG,IAAE3E,OAAOvJ,EAAQ,SAACkjB,EAAGD,GAAJ,OAAkBkvG,EAAgB1sH,SAASwd,KACzEmvG,EAAe72G,aAAwBihG,GAPX52F,EAAAZ,OAAA,SAQ3BotG,GAR2B,wBAAAxsG,EAAAV,SAAAS,MAAH,gBAAAmjC,EAAAG,GAAA,OAAAosD,EAAA9nF,MAAAzJ,KAAA0J,YAAA,GAW3B+vG,GAA0B,eAAArL,EAAAl6I,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAyB,EAAOtH,EAA0B4zG,GAAjC,IAAA3sD,EAAA,OAAArhD,EAAAvoB,EAAA2oB,KAAA,SAAAuB,GAAA,cAAAA,EAAArB,KAAAqB,EAAApB,MAAA,cAC3B8gD,EAAgB33D,IAAE0Q,GACrB7X,IAAI,SAAAkT,GAAC,OAAI0E,aAAyB,CAAC1E,GAAIu4G,EAAWv4G,EAAEkC,kBAAkBxT,QACtEkmC,MAH8B1oB,EAAAnB,OAAA,SAK1B6gD,GAL0B,wBAAA1/C,EAAAjB,SAAAgB,MAAH,gBAAAgjC,EAAAypD,GAAA,OAAAuf,EAAA3kG,MAAAzJ,KAAA0J,YAAA,GAQ1BgwG,GAAsB,eAAAlL,EAAAt6I,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAA2B,EAAOq2B,GAAP,IAAAghF,EAAA,OAAAj5G,EAAAvoB,EAAA2oB,KAAA,SAAAyB,GAAA,cAAAA,EAAAvB,KAAAuB,EAAAtB,MAAA,cACvB04G,EAAY7D,GAAmBn9E,GADRp2B,EAAArB,OAAA,SAEtBy4G,GAFsB,wBAAAp3G,EAAAnB,SAAAkB,MAAH,gBAAAwsF,GAAA,OAAA0f,EAAA/kG,MAAAzJ,KAAA0J,YAAA,GAKtBslG,GAAmB,eAAAC,EAAA/6I,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAA4E,EAAO2pG,GAAP,OAAAxuG,EAAAvoB,EAAA2oB,KAAA,SAAA4E,GAAA,cAAAA,EAAA1E,KAAA0E,EAAAzE,MAAA,cAAAyE,EAAAxE,OAAA,SAC1B9W,IAAE5I,OACA0tH,EACA,SAACztH,EAA+B2d,GAC9B,IAAM8iD,EAAUzgE,EAAIygE,QAAU9iD,EAAE8iD,QAC1BvpD,EAAWlX,EAAIkX,SAAWyG,EAAEzG,SAC5BuyB,EAAQg3B,EAAUvpD,EACxB,MAAO,CACLwpD,KAAI,GAAAryF,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAMutB,EAAI0gE,MAAV,CAAgB/iD,IACpB8iD,UACAvpD,WACAuyB,UAGJ,CAAEg3B,QAAS,EAAGvpD,SAAU,EAAGuyB,MAAO,EAAGi3B,KAAM,MAdnB,wBAAAz8C,EAAAtE,SAAAmE,MAAH,gBAAAwpF,GAAA,OAAAkgB,EAAAxlG,MAAAzJ,KAAA0J,YAAA,GAiBnB6kG,GAA+B,eAAAY,EAAAj7I,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAiF,IAAA,IAAA6oG,EAAAmL,EAAAlL,EAAAmL,EAAAF,EAAAG,EAAAlL,EAAA9uD,EAAAt7C,EAAAu1G,EAAAC,EAAA/3D,EAAA,OAAAvhD,EAAAvoB,EAAA2oB,KAAA,SAAAgF,GAAA,cAAAA,EAAA9E,KAAA8E,EAAA7E,MAAA,YAClCysG,IAAcT,GAAwBrrD,GADJ,CAAA97C,EAAA7E,KAAA,cAGlCksG,GAA+BA,EAA4BnlH,OAAS,GAHlC,CAAA8d,EAAA7E,KAAA,QAAA6E,EAAAnB,GAI9BwoG,EAJ8BrnG,EAAA7E,KAAA,sBAAA6E,EAAA7E,KAAA,EAKxB+sG,KALwB,OAAAloG,EAAAnB,GAAAmB,EAAAxC,KAAA,UAE9BmrG,EAF8B3oG,EAAAnB,GAAAmB,EAAAipG,GAOXwJ,EAPWzyG,EAAAipG,GAAA,CAAAjpG,EAAA7E,KAAA,gBAAA6E,EAAA7E,KAAA,GAO0Bu4G,KAP1B,QAAA1zG,EAAAipG,GAAAjpG,EAAAxC,KAAA,WAO9Bs2G,EAP8B9zG,EAAAipG,IAShCN,IAAoBmL,EATY,CAAA9zG,EAAA7E,KAAA,gBAAA6E,EAAA7E,KAAA,GAUVktG,GAA4BjyH,EAAQuyH,GAV1B,eAU5BC,EAV4B5oG,EAAAxC,KAAAwC,EAAA7E,KAAA,GAYNw4G,GAA2BhL,EAAkBC,GAZvC,eAY5B3sD,EAZ4Bj8C,EAAAxC,KAAAwC,EAAA7E,KAAA,GAcVy4G,GAAuBE,GAdb,WAc5BD,EAd4B7zG,EAAAxC,KAgB5Bw2G,EAAa/3D,EAAgB43D,EACnCf,EAAmC72D,GACnC22D,EAA+BiB,GAC/Bb,EAAgCgB,GAE1BlL,EACJxpF,GACA0pF,YAAmB1pF,GAAQ3/B,OAAO,SAAA4F,GAAC,OACP,IAA1B4hH,EAA8B5hH,EAAE63B,eAAiB+pF,EAAuB5hH,IAGtEy0D,EAAW8uD,GAAgB/C,GAAiBC,EAAY8C,EAAcH,GA3B1C3oG,EAAAm0G,GA6BtBn6D,GA7BsBh6C,EAAAm0G,GAAA,CAAAn0G,EAAA7E,KAAA,gBAAA6E,EAAA7E,KAAA,GA6BH+tG,GAAoBlvD,GA7BjB,QAAAh6C,EAAAm0G,GAAAn0G,EAAAxC,KAAA,eA6B5BkB,EA7B4BsB,EAAAm0G,MAgCxB/uF,EAAU1mB,EAAV0mB,MACRkuF,GAA8BluF,IAE1B8uF,EAA+BE,YAAqBtL,GAA8B,IAnCtD9oG,EAAA7E,KAAA,GAqCR+tG,GACxB5kH,IAAE5I,OACAs+D,EACA,SAACr+D,EAAK2d,EAAGD,GACP,OAAI66G,EAAmBr4H,SAASyd,EAAEtiB,QACzB5oB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFutB,EADLvtB,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEGirC,EAAIC,IAGF3d,GAET,KAjD8B,SAqC5BwgE,EArC4Bn8C,EAAAxC,OAsDhCi2G,GAAgCt3D,EAAYC,SAtDZ,yBAAAp8C,EAAA1E,SAAAwE,MAAH,yBAAAupG,EAAA1lG,MAAAzJ,KAAA0J,YAAA,GAkErC,OANA45B,oBAAU,WACJoqE,IAAcT,IAAyBD,GACzCuB,MAED,CAACtB,EAAsBS,GAAYV,EAAO5nF,EAAQ0mF,IAGnDjkH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MACIilH,GAASD,GACTllH,EAAA1P,EAAA2P,cAAA,WACED,EAAA1P,EAAA2P,cAACyrH,GAAD,CAAkBlI,gBAAiBA,MAGvCxjH,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OACbtB,EAAA1P,EAAA2P,cAACqyH,GAAD,CACEzgI,MAAM,gBACNmL,MAAwC,IAAjCg0H,EAAqC,EAAIA,GAAgC72D,IAElFn6D,EAAA1P,EAAA2P,cAACqyH,GAAD,CACEzgI,MAAM,iBACNmL,MAA2C,IAApC8zH,EAAwC,EAAIA,GAAmC52D,MAI5Fl6D,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OACbtB,EAAA1P,EAAA2P,cAACqyH,GAAD,CACEzgI,MAAM,YACNmL,MAAsC,IAA/Bs0H,GAAmC,EAAIA,IAA8BjuF,EAC5E4pF,QAAM,EACNp2D,WAA+B,IAApBU,EAAOhS,aAIxBvlD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OACbtB,EAAA1P,EAAA2P,cAACqyH,GAAD,CACEzgI,MAAM,iBACNmL,MAAuC,IAAhC4zH,EAAoC,EAAIA,GAA+B32D,EAAO+zD,kBAEvFhuH,EAAA1P,EAAA2P,cAACqyH,GAAD,CACEzgI,MAAM,wBACNmL,MACE0zH,EAC8D,IAA1DA,EAA2BnD,YAAY8C,eACrC,EACAK,EAA2BnD,YAAY8C,eACzCp2D,EAAOo0D,qBAAuB,EAEpCpB,QAAQ,EACRx5B,UAAU,EACVy5B,YAAY,QC5QXqF,GAA8C,WACzD,IAAMt4D,EAAS/K,YAAYsjE,IAAgBv4D,QACrCpM,EAAaqB,YAAYsjE,IAAgB3kE,YAE/C,OAAKoM,EAGEj6D,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KAAG+5D,GAAUj6D,EAAA1P,EAAA2P,cAACwyH,GAAD,CAAoBx4D,OAAQA,KAFvCpM,EAAa7tD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,MAAmB,MCErCqyH,GAAsBvlE,0BAC1Bw2B,IACA,SAACnmF,GAAD,OAAkBA,EAAE7U,SAAS6kE,GAAG+J,QAChC,SAACr5F,EAAWq5F,GAAZ,MAAwB,CAAEr5F,YAAWq5F,YAG1Bo7D,GAAyD,CACpEC,YAAa,CACXxzJ,KAAM,UACN0iC,MAAO,wBAIE+wH,GAAqB,WAChC,IAAMp7E,EAAW0E,cADqBH,EAERpB,YAAiB83E,IAAvCx0J,EAF8B89E,EAE9B99E,UAAWq5F,EAFmBvb,EAEnBub,OACbva,EAAUiX,cAChBxY,oBAAU,WAMJv9E,IAAwB,IAAXq5F,GALA,eAAAl5D,EAAAhyB,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAC,EAAOn6C,GAAP,IAAA+pB,EAAA,OAAAkwB,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAClBq+B,EAASlyC,IAAQO,gBAAgB,CAAE5nC,UAAWU,KAD5Bs6C,EAAAE,KAAA,EAEK4jC,EAAQh/C,IAAgBzU,MAF7B,OAEZZ,EAFYuwB,EAAAuC,KAGlBg8B,EAASlyC,IAAQQ,gBAAgB,CAAE7nC,UAAWU,EAAI+pB,SAAUA,GAAQtc,OAAAy0B,EAAA,EAAAz0B,CAAA,GAASspF,GAAahtE,SAAS6kE,OAHjF,wBAAAt0C,EAAAK,SAAAR,MAAH,gBAAAmkC,GAAA,OAAA7+C,EAAAujB,MAAAzJ,KAAA0J,YAAA,EAKiBixG,CAAY50J,IAC7C,CAACq5F,EAAQr5F,IAEZ,IAAM8qB,EAAUyrF,eAGhB,MAAO,CACLlV,QAFc3kB,YAAiB,SAAAp9C,GAAC,OAAI0nD,KAAchK,QAAQ19C,EAAGxU,MAEzC,CAAE4pI,aAAa,GACnC7mC,YAAa4mC,KCNFI,GA5Bc,SAAA10H,GAAyC,IAAtCu0H,EAAsCv0H,EAAtCu0H,YAEtBn7E,EAAW4B,qBAAW0xC,MACpB3uC,EAAeN,cAAfM,WACFtzD,EAAc8xD,YAAiBowC,KAJ6B9B,EAKxCC,eAAlBngG,EAL0DkgG,EAK1DlgG,QACFsiE,EAN4D49B,EAKjD9pH,KAGXupB,EAAWiyD,YAAiB,SAAAp9C,GAAC,OAAI0nD,KAAchK,QAAQ19C,EAAGxU,KAiBhE,OAfAoW,kBAAQ,WACJ,IAAM6rF,EAAmB,CACrBniG,YAAaA,GAAe,GAC5BE,UACAsiE,YACApG,cAAc74E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACPsc,EADM,CAETiqI,YAAaA,KAGrBn7E,EAASyzC,KAAYhlF,YAAY+kF,EAAiB/lC,gBAClD9I,EAAWzzD,SAASJ,MAAM4iG,gBAAgBF,IAE3C,CAAC2nC,IAEI5yH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,kBChBC2yH,GAA4C,WAAM,IACrD52E,EAAeN,cAAfM,WACAF,EAAoBqxB,cAApBrxB,gBAFqD+2E,EAG5BJ,KAAzBtzD,EAHqD0zD,EAGrD1zD,QAASwsB,EAH4CknC,EAG5ClnC,YACX1vC,EAAezB,YAAiBM,KAAQoB,WACxC5mB,EAAQklB,YAAiBM,KAAQyyB,cACjCpxB,EAAS3B,YAAiBM,KAAQ0yB,eAClCpxB,EAAgB5B,YAAiBM,KAAQ2yB,sBAPc9zB,EAQXC,oBAAS,GAREC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAQtDm5E,EARsDj5E,EAAA,GAQnCk5E,EARmCl5E,EAAA,GAiBvDm5E,EAAiB,WACrBD,GAAqB,QAPA52J,IAAjB8/E,IAA8BA,EAAaviD,SAAS2B,KAASihD,qBAAwBhnB,GAAU6mB,GAAWC,GAC5GJ,EAAWtL,SAAS5pC,0BAEtBk1C,EAAWtL,SAASxkC,UACpB8vC,EAAWtnD,KAAKme,UAAU3G,UAK1Bs0D,WAAW,WACTuyD,GAAqB,IACpB,MAiBL,OAdAplE,IAAS,WACH7R,SACmB3/E,IAAjB8/E,KACEA,EAAaviD,SAAS2B,KAASihD,qBAAwBhnB,GAAU6mB,GAAWC,GAC9EJ,EAAWtL,SAAS5pC,2BAGxBk1C,EAAWtL,SAASxkC,UACpB8vC,EAAWtnD,KAAKme,UAAU3G,aAI9Bm/D,GAA0C0gD,KAC1C7b,GAA4B6b,KAE1BnsH,EAAA1P,EAAA2P,cAAC0vG,GAADtjI,OAAA8F,OAAA,GAAW09H,aAAcp+H,IAAU4E,SAAnC,CAA6C81G,cAAe5sB,EAAQqzD,YAAaxmC,UAAW,kBAAMgnC,KAAkBrtF,OAAQ/lC,EAAA1P,EAAA2P,cAACozH,GAAD,CAAeT,YAAarzD,EAAQqzD,cAAiBjqI,SAAU42E,EAAS2sB,cAAeH,IACjN/rF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACG6yH,EAAoBlzH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,uBACnBL,EAAA1P,EAAA2P,cAACqzH,GAAD,kDClDGC,GAET,CACFj/H,KAAM,CACJk/H,UAAW,YACXC,UAAW,YACXC,YAAa,cACbC,WAAY,aACZC,oBAAqB,sBACrB38D,SAAU,aClBP,mBAAM48D,GAAgC,CAC3CC,OAAQxvH,gCAAqB,iBAArBA,kCCKGypB,GAAW,SAAC/wB,EAAkBhS,GACzC,IAAKgS,IAAUuF,IAAEulB,SAAS9qB,GACxB,OAAOhS,GAKE+oI,GAAmB,SAAC/2H,GAC/B,OAAO+wB,GAAS/wB,EAAO9vB,KAAU8mJ,WAGtBC,GAAkB,SAACj3H,GAC9B,OAAO+wB,GAAS/wB,EAAO9vB,KAAUgnJ,UAGtBC,GAAiB,SAACn3H,GAC7B,OAAO+wB,GAAS/wB,EAAO9vB,KAAUknJ,SAOtBC,GAAmB,SAACr3H,GAC/B,OAAO+wB,GAAS/wB,EAAO9vB,KAAUonJ,WAOtBC,GAAgB,SAACv3H,GAC5B,OAAO+wB,GAAS/wB,EAAO9vB,KAAUsnJ,QAGtBC,GAAiB,SAACz3H,GAC7B,OAAO+wB,GAAS/wB,EAAO9vB,KAAUwnJ,SAGtBC,GAAY,gPAGnBC,GAAiB,SAACC,GACtB,OAAO,IAAIj1G,QAAQ,SAASC,EAASC,GACnCg1G,KAAOC,YAAYF,EAAQ,SAAC50G,EAAK9C,GAC/B,OAAI8C,EACKH,EAAOG,GAEPJ,EAAQ1C,QAMV63G,GAAgB,eAAA32H,EAAAhyB,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAC,EAAOrjC,GAAP,IAAAi/B,EAAAsgH,EAAAt/G,EAAA54C,EAAAC,EAAAC,EAAAC,EAAAE,EAAAD,EAAA+3J,EAAAC,EAAAC,EAAAlgH,EAAAmgH,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAA1oI,EAAA2oI,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAtlH,EAAAulH,EAAAC,EAAAlzH,EAAA,OAAA2V,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,UACxBzE,EAAU25C,KAAO+nE,YACjBpB,EAAS3mE,KAAO2mE,OAEhBt/G,EAAgB,CACpB2gH,QAAS,CACPC,eAAgB,WAChBC,8BAA+B,IAC/BC,mCAAoC,OACpCC,+BAAgC,OAElCC,OAAQ,OAGF55J,EAAyD2Y,EAAzD3Y,SAAUC,EAA+C0Y,EAA/C1Y,SAAUC,EAAqCyY,EAArCzY,KAAMC,EAA+BwY,EAA/BxY,MAAOE,EAAwBsY,EAAxBtY,QAASD,EAAeuY,EAAfvY,WAG5C+3J,EAjBwB,mCAAAjtJ,OAiBiBgtJ,EAjBjB,gCAAAhtJ,OAiBsDw3H,mBAClF1iI,GAlB4B,yBAAAkL,OAmBLw3H,mBACvBziI,GApB4B,qBAAAiL,OAqBThL,EArBS,kBAAAgL,OAqBY/K,EArBZ,kBAAA+K,OAqBkC9K,EArBlC,2DAyBxBg4J,EAAkB,SAACl2J,GACvB,OAAOA,EACJslI,cACAt8G,QACC,mOACA,IAEDA,QAAQ,yCAA0C,IAClDA,QAAQ,oDAAqD,IAC7DA,QAAQ,OAAQ,KAChBC,QAICktI,EAAY,SAACr4J,EAAkBC,GACnC,OAAOulC,IAAEzI,SAASq7H,EAAgBp4J,GAAWo4J,EAAgBn4J,KAxCjCk8C,EAAAC,KAAA,IA4CxBp8C,GAAYE,GAAQC,GAASE,IAAYya,KAAQkP,uBA5CzB,CAAAmyB,EAAAE,KAAA,gBAAAF,EAAAE,KAAA,GA6CHw9G,MAAK,GAAA3uJ,OAAI0sC,GAAJ1sC,OAAcitJ,GAAOv/G,GA7CvB,eA6CpBT,EA7CoBgE,EAAAuC,KAAAvC,EAAAE,KAAA,GA8CJlE,EAASyqD,OA9CL,eA8CpB01D,EA9CoBn8G,EAAAuC,KAAAvC,EAAAE,KAAA,GA+CGw7G,GAAeS,GA/ClB,WA+CpBC,EA/CoBp8G,EAAAuC,KAgDlB85G,EAA4BD,EAA5BC,wBACAC,EAAYD,EAAZC,QAjDkBC,EAmDqCD,EAAQ,GAA/DE,EAnDkBD,EAmDlBC,KAAM1oI,EAnDYyoI,EAmDZzoI,MAAO2oI,EAnDKF,EAmDLE,KAAMC,EAnDDH,EAmDCG,KAAMC,EAnDPJ,EAmDOI,SAAUC,EAnDjBL,EAmDiBK,WAAUz7H,EAnD3Bo7H,EAmD2Bp7H,OAnD3B,CAAA6e,EAAAE,KAAA,gBAAA48G,EAsDgB37H,EAAM,GAAtCuhB,EAtDgBo6G,EAsDhBp6G,OAAQs6G,EAtDQF,EAsDRE,OAAQtlH,EAtDAolH,EAsDAplH,YAtDAsI,EAAAG,OAAA,SAuDjB,CACLruB,MAAO,CACL6rI,OAAQj7G,EAAO,GACfoD,OAAQk3G,EAAO,GACfxnI,YAAakiB,EAAY,MA3DL,eAgEpBulH,EAAgBN,EAAWA,EAAS,GAAK,KACzCO,EAAgBN,EAAWA,EAAS,GAAK,KAGxCK,EAGMN,GAAYT,EAAUr4J,EAAUq5J,KAExCD,GAFwDjzH,EAExB,CAACkzH,EAAeD,IAFQ,GAEzCC,EAFyClzH,EAAA,KAFzDizH,EAAgBC,EAChBA,EAAgB,MAtEMl9G,EAAAG,OAAA,SA6EjB,CACLp8C,KAAMy4J,EAAK,IAAM,GACjBx4J,MAAO8vB,EAAM,IAAM,GACnB8pI,KAAMnB,EAAK,IAAM,GACjBoB,KAAMnB,EAAK,IAAM,GACjBoB,aAAcb,GAAiB,GAC/Bc,aAAcb,GAAiB,OAnFT,QAAAl9G,EAAAE,KAAA,iBAAAF,EAAAC,KAAA,GAAAD,EAAA4D,GAAA5D,EAAA,SAwF5B1D,QAAQxqB,MAARkuB,EAAA4D,IAxF4B,yBAAA5D,EAAAK,SAAAR,EAAA,kBAAH,gBAAAmkC,GAAA,OAAA7+C,EAAAujB,MAAAzJ,KAAA0J,YAAA,GCpDhBq1G,GAMR,SAAA74H,GAA4E,IAAzEqwD,EAAyErwD,EAAzEqwD,KAAMyM,EAAmE98D,EAAnE88D,YAAag8D,EAAsD94H,EAAtD84H,YAAaC,EAAyC/4H,EAAzC+4H,mBAAoB7gE,EAAqBl4D,EAArBk4D,eACpDr4F,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEif,SAASy+B,SAAW19C,EAAEif,SAASy+B,QAAQx3B,YAC3E+zB,EAAW0E,cAF8Dk7E,EAGO9gE,EAA9El5F,gBAAmBN,EAHoDs6J,EAGpDt6J,SAAUC,EAH0Cq6J,EAG1Cr6J,SAAUC,EAHgCo6J,EAGhCp6J,KAAMG,EAH0Bi6J,EAG1Bj6J,QAASD,EAHiBk6J,EAGjBl6J,WAAYD,EAHKm6J,EAGLn6J,MAEpEopE,EADqBsU,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBwlB,yBAAyB75C,UAAtF15C,eACoB6zJ,GACtBE,EAAsD,CAC1Dv6J,SAAUupE,EAAKrnE,QAAQlC,SAAWupE,EAAKrnE,QAAQlC,SAAW,GAC1DC,SAAUspE,EAAKrnE,QAAQjC,SAAWspE,EAAKrnE,QAAQjC,SAAW,GAC1DC,KAAMqpE,EAAKrnE,QAAQhC,KAAOqpE,EAAKrnE,QAAQhC,KAAO,GAC9CC,MAAOopE,EAAKrnE,QAAQ/B,MAAQopE,EAAKrnE,QAAQ/B,MAAQ,GACjDC,WAAYmpE,EAAKrnE,QAAQ9B,WAAampE,EAAKrnE,QAAQ9B,WAAa,GAChEC,QAASkpE,EAAKrnE,QAAQ7B,QAAUkpE,EAAKrnE,QAAQ7B,QAAU,GACvD+5J,YAAa,IAGXpxF,EAAS,GAEb,OAAQoxF,GACN,IAAK,WACHpxF,EAAS,mBACT,MACF,IAAK,OACHA,EAAS,kBAOb,IA0GMupB,EAAW7sD,sBACf,SAAC/sB,EAAD6wI,GAA2B,IAAhBgR,EAAgBhR,EAAhBgR,UACDx6J,EAAyD2Y,EAAzD3Y,SAAUC,EAA+C0Y,EAA/C1Y,SAAUC,EAAqCyY,EAArCzY,KAAMG,EAA+BsY,EAA/BtY,QAASD,EAAsBuY,EAAtBvY,WAAYD,EAAUwY,EAAVxY,MACnDs6J,EAAe,GAEJ,qBAAXzxF,IACFyxF,EAAe,CACb34J,KAAM,UACNG,cAAe,CACbC,QAAS,CACPlC,SAAUA,EACVC,SAAUA,EACVC,KAAMA,EACNG,QAASA,EACTD,WAAYA,EACZD,MAAOA,IAGXmgD,OAAQ+5G,IAGG,oBAAXrxF,IACFyxF,EAAe,CACb34J,KAAM,iBACNG,cAAe,CACblC,eAAgB,CACdC,SAAUA,EACVC,SAAUA,EACVC,KAAMA,EACNG,QAASA,EACTD,WAAYA,EACZD,MAAOA,IAGXmgD,OAAQ+5G,IAIZ3/E,EACExpC,KAA6BwpH,yBAAyB,CACpDv5J,UAAWA,EACXouC,QAASkrH,KAGbD,IACAp8D,IACA,IAAMu8D,EAAyB,qBAAX3xF,EAAgC,WAAa,OACjE4xF,aAAaC,QAAb,uBAAA3vJ,OAA4CyvJ,EAA5C,KAAAzvJ,OAA2DmvJ,GAAsB,cAEnF,CAACj8D,EAAap+F,EAAUC,EAAUC,EAAMG,EAASD,EAAYD,EAAOu6E,IAGtE,OACEz3C,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEwsD,cAAe6nE,EACfhoE,SAAUA,EACV3hC,SAlKe,SAACj4C,GAAoC,IAElDmiJ,EACAC,EAmFYx6D,EASMosC,EA9Fd3sI,EAAgD2Y,EAAhD3Y,SAAUE,EAAsCyY,EAAtCzY,KAAMC,EAAgCwY,EAAhCxY,MAAOE,EAAyBsY,EAAzBtY,QAGzBs6J,GAHkDhiJ,EAAhByhJ,YAGT,qBAAXpxF,EAAgC,WAAa,QAC3DgyF,EAA4B,SAAhBL,EACZM,EAA4B56J,IAAYya,KAAQkP,sBAEhDkxI,EAA0BN,aAAaO,QAAb,uBAAAjwJ,OAA4CyvJ,EAA5C,KAAAzvJ,OAA2DmvJ,IAE3F,GAAIa,GAAuD,cAA5BA,EAAyC,KAAAE,EACtEN,EAAez4G,KAAK0F,MAAMmzG,GAClBh7J,EAF8Dk7J,EAE9Dl7J,KAAMC,EAFwDi7J,EAExDj7J,MAAO45J,EAFiDqB,EAEjDrB,KAAM9rI,EAF2CmtI,EAE3CntI,MACrBotI,EAA2B71H,IAAE81H,WAAWp7J,GACxCq7J,EAAgB/1H,IAAEc,UAAU+0H,GAC5BG,EAAch2H,IAAE9E,QAAQ66H,KAAmB/1H,IAAE9E,QAAQ/nB,EAAOzY,MAC5Du7J,EAAa1B,IAASphJ,EAAOvY,WAC7Bs7J,EAAev7J,IAAUwY,EAAOxY,MAGlB46J,IAFM9sI,IAASutI,IAAeC,IAAcC,GAK9D17J,GAAYE,GAAQC,GAASE,IAAYya,KAAQkP,wBAA0B+wI,GAChE,eAAA50H,EAAA72B,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAC,IAAA,OAAAF,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACR,IAAIwG,QAAQ,SAAAC,GAAO,OAAI+gD,WAAW/gD,EAAS,OADnC,cAAA3G,EAAAE,KAAA,EAED47G,GAAiBt/I,GAFhB,cAAAwjC,EAAAG,OAAA,SAAAH,EAAAuC,MAAA,wBAAAvC,EAAAK,SAAAR,MAAH,yBAAA7V,EAAA0e,MAAAzJ,KAAA0J,YAAA,EAKb62G,GAAUp/G,KAAK,SAAA6D,GACbw6G,aAAaC,QAAb,uBAAA3vJ,OAA4CyvJ,EAA5C,KAAAzvJ,OAA2DmvJ,GAAsBh4G,KAAKnJ,UAAUkH,MAIpG,GAAI06G,EAAc,KAGkEtjG,EAHlEokG,EACqBd,EAA7B56J,EADQ07J,EACR17J,KAAMC,EADEy7J,EACFz7J,MAAO45J,EADL6B,EACK7B,KAAM9rI,EADX2tI,EACW3tI,MAE3B,GAAIA,GAAStV,EAAO3Y,UAAY2Y,EAAOzY,MAAQyY,EAAOxY,OAASwY,EAAOvY,WACpE,OAAAo3D,EAAA,GAAAloD,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,gBAAAtsD,OACqB+iB,EAAM0D,YAAYxG,OADvC,wCAAA7b,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,UAAAtsD,OAEe+iB,EAAM0D,YAAYxG,OAFjC,wCAAA7b,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,WAAAtsD,OAGgB+iB,EAAM0D,YAAYxG,OAHlC,wCAAA7b,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,cAAAtsD,OAImB+iB,EAAM0D,YAAYxG,OAJrC,wCAAAqsC,EAYF,GAJK7+C,EAAO3Y,UAAa2Y,EAAOzY,MAC9B06J,aAAaC,QAAb,uBAAA3vJ,OAA4CyvJ,EAA5C,KAAAzvJ,OAA2DmvJ,GAAsB,aAG/En6J,GAAQC,GAAS45J,EAAM,KAAA8B,EACnBR,EAA2B71H,IAAE81H,WAAWp7J,GACxCq7J,EAAgB/1H,IAAEc,UAAU+0H,GAC5BG,EAAch2H,IAAE9E,QAAQ66H,KAAmB/1H,IAAE9E,QAAQ/nB,EAAOzY,MAC5Du7J,EAAa1B,IAASphJ,EAAOvY,WAC7Bs7J,EAAev7J,IAAUwY,EAAOxY,MAIhCk9B,GAAkBw+H,EAAA,GAAAvsJ,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EACrB,UAAY7E,GAAiBr+I,EAAOtY,UADfiP,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAErB,WACC7E,GAAiBr+I,EAAO3Y,YAAcg7J,EAClC9D,IAAiBU,GAAUn0C,KAAK9qG,EAAO3Y,gBACvCR,GALgB8P,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAMrB,WAAaljJ,EAAO1Y,WAAa+6J,EAAY9D,IAAiBU,GAAUn0C,KAAK9qG,EAAO1Y,gBAAaT,GAN5E8P,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAOrB,aACC7E,IAAiBiE,GAA4BtiJ,EAAOvY,cAAuBq7J,EAA3E,uDAAAvwJ,OAC2D6uJ,QACvDv6J,GAVgB8P,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAWrB,OACC7E,GAAiBr+I,EAAOzY,QAAUs7J,EAAlC,+CAAAtwJ,OACmDqwJ,QAC/C/7J,GAdgB8P,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAerB,QACC7E,IAAiBiE,GAA4BtiJ,EAAOxY,SAAkBu7J,EAAtE,iDAAAxwJ,OACqD/K,QACjDX,GAlBgBq8J,GAuBxB,OAFAvsJ,OAAOyb,KAAKsS,GAAQ06C,QAAQ,SAAA9sD,GAAG,YAAqBzrB,IAAhB69B,EAAOpS,UAA4BoS,EAAOpS,GAAO,KAE9EoS,GAIX,OAAK29H,EASMA,GACTruB,EAAA,GAAAr9H,OAAA2tB,EAAA,EAAA3tB,CAAAq9H,EAAA,UACeqqB,GAAiBr+I,EAAOtY,UADvCiP,OAAA2tB,EAAA,EAAA3tB,CAAAq9H,EAAA,WAEgBqqB,GAAiBr+I,EAAO3Y,WAFxCsP,OAAA2tB,EAAA,EAAA3tB,CAAAq9H,EAAA,aAGkBqqB,IAAiBiE,GAA4BtiJ,EAAOvY,aAHtEkP,OAAA2tB,EAAA,EAAA3tB,CAAAq9H,EAAA,OAIYqqB,GAAiBr+I,EAAOzY,OAJpCoP,OAAA2tB,EAAA,EAAA3tB,CAAAq9H,EAAA,QAKaqqB,IAAiBiE,GAA4BtiJ,EAAOxY,QALjEwsI,QADK,GARLpsC,EAAA,GAAAjxF,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,UACey2D,GAAiBr+I,EAAOtY,UADvCiP,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,WAEgBy2D,GAAiBr+I,EAAO3Y,WAAak3J,IAAiBU,GAAUn0C,KAAK9qG,EAAO3Y,YAF5FsP,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,WAGgB5nF,EAAO1Y,UAAYi3J,IAAiBU,GAAUn0C,KAAK9qG,EAAO1Y,YAH1EqP,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,aAIkBy2D,IAAiBiE,GAA4BtiJ,EAAOvY,aAJtEkP,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,OAKYy2D,GAAiBr+I,EAAOzY,OALpCoP,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,QAMay2D,IAAiBiE,GAA4BtiJ,EAAOxY,QANjEogG,IA4EA3N,kBAAkB,GAEjB,SAAAg3D,GAAA,IAAG92D,EAAH82D,EAAG92D,aAAc0nE,EAAjB5Q,EAAiB4Q,UAAW7hJ,EAA5BixI,EAA4BjxI,OAA5BixI,EAAoCvsH,OAApC,OACC4F,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,wBAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,UAAK8lC,GACL/lC,EAAA1P,EAAA2P,cAAA,QAAMrhC,GAAG,gBAAgB0wF,SAAUO,GACjC7vD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXt6J,KAAM,UACNK,GAAI,UACJkjC,MAAM,UACN5gC,QAAS43J,eACTC,sBAAsB,aAG1B/4H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAM,WAAYK,GAAI,WAAYkjC,MAAM,eAE1E9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAM,WAAYK,GAAI,WAAYkjC,MAAM,eAE1E9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAM,OAAQK,GAAI,OAAQkjC,MAAM,UAElE9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACG3qB,EAAOtY,UAAYya,KAAQkP,uBAC1BiZ,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXt6J,KAAM,QACNK,GAAI,QACJkjC,MAAM,QACN5gC,QAAS00B,IACTmjI,sBAAsB,UAGzBrjJ,EAAOtY,UAAYya,KAAQkP,uBAA4C,KAAnBrR,EAAOtY,SAC1D4iC,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAM,QAASK,GAAI,QAASkjC,MAAM,cAGtE9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAM,aAAcK,GAAI,aAAckjC,MAAM,kBAG/D,SAAhBq1H,GACCn3H,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,wGAKJtB,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CACEC,QAAQ,YACRnvD,QAAS,WACP81H,IACAp8D,IACA,IAAMu8D,EAAyB,qBAAX3xF,EAAgC,WAAa,OACjE4xF,aAAaC,QAAb,uBAAA3vJ,OAA4CyvJ,EAA5C,KAAAzvJ,OAA2DmvJ,GAAsB,eANrF,UAWAp3H,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,KAAjE,eCzQCsjJ,GAIR,SAAA36H,GAA+C,IAA5CqwD,EAA4CrwD,EAA5CqwD,KAAMyM,EAAsC98D,EAAtC88D,YAAai8D,EAAyB/4H,EAAzB+4H,mBAKnB95J,EAH2Bs9E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBwlB,yBAAyB75C,UAC5F15C,eACoB6zJ,GACT95J,MACb27J,EAAkD,CACtDC,WAAY57J,GAAgB,GAC5B8U,aAAc,IAEVlU,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEif,SAASy+B,SAAW19C,EAAEif,SAASy+B,QAAQx3B,YAC3E+zB,EAAW0E,cA8CXmT,EAAW7sD,sBACf,SAAC/sB,EAAD0xI,GAA2B,IAAhBmQ,EAAgBnQ,EAAhBmQ,UAEHC,EAAkC,CACtC34J,KAAM,QACNG,cAAe,CACb1B,MAJmBoY,EAAfwjJ,YAMN77G,OAAQ+5G,GAGV3/E,EACExpC,KAA6BwpH,yBAAyB,CACpDv5J,UAAWA,EACXouC,QAASkrH,KAGbD,IACAp8D,KAEF,CAACA,IAGH,OACEn7D,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAQwsD,cAAewpE,EAA0B3pE,SAAUA,EAAU3hC,SApEpD,SAACj4C,GAAkC,IAGnCwtB,EAOEqxB,EAOa+oC,EAOEosC,EAvB1BwvB,EAA6BxjJ,EAA7BwjJ,WAAY9mJ,EAAiBsD,EAAjBtD,aAEpB,OAAK8mJ,EAOA9mJ,EAOAxE,KAAS4yG,KAAK04C,GAOdtrJ,KAAS4yG,KAAKpuG,GAOf8mJ,IAAe9mJ,EACV/F,OAAA2tB,EAAA,EAAA3tB,CAAA,kBACagoJ,GAAiBjiJ,IAAiB8mJ,IAIpDA,IAAe57J,EACV+O,OAAA2tB,EAAA,EAAA3tB,CAAA,kBACakoJ,GAAc2E,IAAe57J,SAFnD,GAZEosI,EAAA,GAAAr9H,OAAA2tB,EAAA,EAAA3tB,CAAAq9H,EAAA,aACkBuqB,GAAgBrmJ,KAAS4yG,KAAK04C,KADhD7sJ,OAAA2tB,EAAA,EAAA3tB,CAAAq9H,EAAA,eAEoBuqB,GAAgBrmJ,KAAS4yG,KAAKpuG,KAFlDs3H,IAPApsC,EAAA,GAAAjxF,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,aACkB22D,GAAgBrmJ,KAAS4yG,KAAK04C,KADhD7sJ,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,eAEoB22D,GAAgBrmJ,KAAS4yG,KAAKpuG,KAFlDkrF,IAPA/oC,EAAA,GAAAloD,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,aACkBw/F,GAAiBmF,IADnC7sJ,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,eAEoBw/F,GAAiB3hJ,IAFrCmiD,IAPArxB,EAAA,GAAA72B,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,aACkB6wH,GAAiBmF,IADnC7sJ,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,eAEoB6wH,GAAiB3hJ,IAFrC8wB,IAgEyFysD,kBAAkB,GAC1G,SAAA23D,GAAA,IAAGz3D,EAAHy3D,EAAGz3D,aAAc0nE,EAAjBjQ,EAAiBiQ,UAAjB,OACCv3H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,sBAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,QAAMrhC,GAAG,cAAc0wF,SAAUO,GAC/B7vD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAM,aAAcK,GAAI,aAAckjC,MAAM,qBAE9E9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAM,eAAgBK,GAAI,eAAgBkjC,MAAM,wBAGpF9B,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,4MAKFtB,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CACEC,QAAQ,YACRnvD,QAAS,WACP81H,IACAp8D,MAJJ,UASAn7D,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,KAAjE,eCnHCyjJ,GAIR,SAAA96H,GAA+C,IAA5CqwD,EAA4CrwD,EAA5CqwD,KAAMyM,EAAsC98D,EAAtC88D,YAAai8D,EAAyB/4H,EAAzB+4H,mBAMnBl5J,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEif,SAASy+B,SAAW19C,EAAEif,SAASy+B,QAAQx3B,YAC3E+zB,EAAW0E,cACXoa,EAAiB3b,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBilB,eAAezhE,OACxEv3B,EAAsCg5F,EAAtCh5F,UAAWE,EAA2B84F,EAA3B94F,UAAWD,EAAgB+4F,EAAhB/4F,YA8CxB8xF,EAAW7sD,sBACf,SAAC/sB,EAAD0xI,GAA2B,IAAhBmQ,EAAgBnQ,EAAhBmQ,UAEHC,EAAkC,CACtC34J,KAAM,cACNG,cAAe,CACbE,OAAQ,CACN,CACEC,YAN0BuW,EAA1B0jJ,WAOAh6J,KAP0BsW,EAAd2jJ,aAWlBh8G,OAAQ+5G,GAEV3/E,EACExpC,KAA6BwpH,yBAAyB,CACpDv5J,UAAWA,EACXouC,QAASkrH,KAIbD,IACAp8D,KAEF,CAACA,IAGH,OACEn7D,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAQwsD,cAnF8C,CACtD2pE,WAAY,GACZE,aAAc,GACdD,UAAW,IAgFsC/pE,SAAUA,EAAU3hC,SAvEpD,SAACj4C,GAAkC,IAEJwtB,EAcQo6D,EAfhD87D,EAAwC1jJ,EAAxC0jJ,WAAYE,EAA4B5jJ,EAA5B4jJ,aAAcD,EAAc3jJ,EAAd2jJ,UAClC,OAAKD,GAAeE,GAAiBD,EAQjCD,IAAeE,EACVjtJ,OAAA2tB,EAAA,EAAA3tB,CAAA,kBACagoJ,GAAiBiF,IAAiBF,IAIpDA,EAAWj5H,OAAS,IAAMm5H,EAAan5H,OAAS,IAClDm9D,EAAA,GAAAjxF,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,aACkB22D,GAAgBmF,EAAWj5H,OAAS,KADtD9zB,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,eAEoB22D,GAAgBqF,EAAan5H,OAAS,KAF1Dm9D,GAMgB,SAAd+7D,GAAwBD,IAAe37J,EAClC4O,OAAA2tB,EAAA,EAAA3tB,CAAA,kBACakoJ,GAAc6E,IAAe37J,IAIjC,WAAd47J,GAA0BD,IAAe57J,EACpC6O,OAAA2tB,EAAA,EAAA3tB,CAAA,kBACakoJ,GAAc6E,IAAe57J,IAIjC,SAAd67J,GAAwBD,IAAe77J,EAClC8O,OAAA2tB,EAAA,EAAA3tB,CAAA,kBACakoJ,GAAc6E,IAAe77J,SAFnD,GAhCE2lC,EAAA,GAAA72B,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,aACkB6wH,GAAiBqF,IADnC/sJ,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,eAEoB6wH,GAAiBuF,IAFrCjtJ,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,YAGiB6wH,GAAiBsF,IAHlCn2H,IAoEyFysD,kBAAkB,GAC1G,SAAA23D,GAAA,IAAGz3D,EAAHy3D,EAAGz3D,aAAc0nE,EAAjBjQ,EAAiBiQ,UAAjB,OACCv3H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,6BAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,UAhFG,IAiFHD,EAAA1P,EAAA2P,cAAA,QAAMrhC,GAAG,cAAc0wF,SAAUO,EAAcvuD,UAAU,eACvDtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWqoE,KAAqBj6J,GAAE,YAAesC,QAASkM,IAAe00B,MAAO,gBAEzF9B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACXlyF,KAAM,aACNK,GAAI,aACJkjC,MAAM,4BAGV9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACXlyF,KAAM,eACNK,GAAI,eACJkjC,MAAM,gCAKd9B,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,wGAIFtB,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CACEC,QAAQ,YACRnvD,QAAS,WACP81H,IACAp8D,MAJJ,UASAn7D,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,KAAjE,eC/HC6jJ,GAGR,SAAAl7H,GAA2B,IAAxBqwD,EAAwBrwD,EAAxBqwD,KAAMyM,EAAkB98D,EAAlB88D,YACNj9F,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEif,SAASy+B,SAAW19C,EAAEif,SAASy+B,QAAQx3B,YAC3E+zB,EAAW0E,cAFaH,EAGiDpB,YAC7E,SAAAp9C,GAAC,OACCA,EAAE8zC,kBAAkBwlB,yBAAyB75C,QAAQr7C,gBAAkB,CACrEC,UAAW,GACXC,cAAe,GACfE,OAAQ,GACRD,SAAU,GACV9C,QAAS,CACPlC,SAAU,GACVC,SAAU,GACVC,KAAM,GACNC,MAAO,GACPC,WAAY,GACZC,QAAS,IAEXE,MAAO,GACP4B,OAAQ,CACN,CACEE,KAAM,UACND,YAAa,QAnBf0C,EAHsBm6E,EAGtBn6E,UAAWC,EAHWk6E,EAGXl6E,cAAeE,EAHJg6E,EAGIh6E,OAAQD,EAHZi6E,EAGYj6E,SAAU9C,EAHtB+8E,EAGsB/8E,QAASC,EAH/B88E,EAG+B98E,OAAQ5B,EAHvC0+E,EAGuC1+E,MAyB/Dk8J,EAAwD,CAC5D33J,UAAWA,GAAwB,GACnCC,cAAeA,GAAgC,GAC/CE,OAAQA,GAAkB,GAC1BD,SAAUA,GAAsB,GAChChF,SAAsB,OAAZkC,GAAoBA,EAAQlC,SAAWkC,EAAQlC,SAAW,GACpEC,SAAsB,OAAZiC,GAAoBA,EAAQjC,SAAWiC,EAAQjC,SAAW,GACpEC,KAAkB,OAAZgC,GAAoBA,EAAQhC,KAAOgC,EAAQhC,KAAO,GACxDC,MAAmB,OAAZ+B,GAAoBA,EAAQ/B,MAAQ+B,EAAQ/B,MAAQ,GAC3DC,WAAwB,OAAZ8B,GAAoBA,EAAQ9B,WAAa8B,EAAQ9B,WAAa,GAC1EC,QAAqB,OAAZ6B,GAAoBA,EAAQ7B,QAAU6B,EAAQ7B,QAAU,GACjE8B,OAAQA,EAAMmN,OAAA60B,EAAA,EAAA70B,CAAOnN,GAAU,CAAC8O,MAChC1Q,MAAOA,GAAgB,IAoHnBgyF,EAAW7sD,sBACf,SAAC/sB,EAAD4nF,GAA2B,IAerBk6D,EAfKD,EAAgBj6D,EAAhBi6D,UAEPx6J,EAYE2Y,EAZF3Y,SACAC,EAWE0Y,EAXF1Y,SACAC,EAUEyY,EAVFzY,KACAG,EASEsY,EATFtY,QACAD,EAQEuY,EARFvY,WACAD,EAOEwY,EAPFxY,MACA2E,EAME6T,EANF7T,UACAC,EAKE4T,EALF5T,cACAC,EAIE2T,EAJF3T,SACAC,EAGE0T,EAHF1T,OACA9C,EAEEwW,EAFFxW,OAKFs4J,EAAe,CACb34J,KAAM,iBACN+C,eAAgB,CACdC,YACAC,gBACAC,WACAC,SACA/C,QAAS,CACPlC,WACAC,WACAC,OACAG,UACAD,aACAD,SAEFI,MAlBAoY,EADFpY,MAoBE4B,OAAQ,CACN,CACEE,KAAM,UACND,YAAaD,EAAO,GAAGC,gBAK/Bs4E,EACExpC,KAA6BwpH,yBAAyB,CACpDv5J,UAAWA,EACXouC,QAASkrH,KAGbD,IACAp8D,IAEAw8D,aAAaC,QAAQ,qBAAsB,cAE7C,CAACz8D,IAGH,OACEn7D,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEwsD,cAAe+pE,EACflqE,SAAUA,EACVK,kBAAkB,EAClBhiC,SA7Ke,SAACj4C,GAAqC,IAAA+jJ,EAEnD5B,EACAC,EAFI/6J,EAAmF2Y,EAAnF3Y,SAAUE,EAAyEyY,EAAzEzY,KAAMG,EAAmEsY,EAAnEtY,QAASD,EAA0DuY,EAA1DvY,WAAYD,EAA8CwY,EAA9CxY,MAAO2E,EAAuC6T,EAAvC7T,UAAWE,EAA4B2T,EAA5B3T,SAAU7C,EAAkBwW,EAAlBxW,OAAQ5B,EAAUoY,EAAVpY,MAG3E06J,EAA4B56J,IAAYya,KAAQkP,sBAEhDkxI,EAA0BN,aAAaO,QAAQ,sBAErD,GAAID,GAAuD,cAA5BA,EAAyC,KAAAE,EACtEN,EAAez4G,KAAK0F,MAAMmzG,GAClBh7J,EAF8Dk7J,EAE9Dl7J,KAAMC,EAFwDi7J,EAExDj7J,MAAO45J,EAFiDqB,EAEjDrB,KAAM9rI,EAF2CmtI,EAE3CntI,MACrBotI,EAA2B71H,IAAE81H,WAAWp7J,GACxCq7J,EAAgB/1H,IAAEc,UAAU+0H,GAC5BG,EAAch2H,IAAE9E,QAAQ66H,KAAmB/1H,IAAE9E,QAAQ/nB,EAAOzY,MAC5Du7J,EAAa1B,IAAS35J,EACtBs7J,EAAev7J,IAAUwY,EAAOxY,MAGlB46J,IAFM9sI,IAASutI,IAAeC,IAAcC,GAK9D17J,GAAYE,GAAQC,GAASE,IAAYya,KAAQkP,wBAA0B+wI,GAChE,eAAA50H,EAAA72B,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAC,IAAA,OAAAF,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACR,IAAIwG,QAAQ,SAAAC,GAAO,OAAI+gD,WAAW/gD,EAAS,OADnC,cAAA3G,EAAAE,KAAA,EAED47G,GAAiBt/I,GAFhB,cAAAwjC,EAAAG,OAAA,SAAAH,EAAAuC,MAAA,wBAAAvC,EAAAK,SAAAR,MAAH,yBAAA7V,EAAA0e,MAAAzJ,KAAA0J,YAAA,EAKb62G,GAAUp/G,KAAK,SAAA6D,GACbw6G,aAAaC,QAAQ,qBAAsBx4G,KAAKnJ,UAAUkH,MAI9D,GAAI06G,EAAc,KAGkEtjG,EAHlEokG,EACqBd,EAA7B56J,EADQ07J,EACR17J,KAAMC,EADEy7J,EACFz7J,MAAO45J,EADL6B,EACK7B,KAAM9rI,EADX2tI,EACW3tI,MAE3B,GAAIA,GAAStV,EAAO3Y,UAAY2Y,EAAOzY,MAAQyY,EAAOxY,OAASwY,EAAOvY,WACpE,OAAAo3D,EAAA,GAAAloD,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,gBAAAtsD,OACqB+iB,EAAM0D,YAAYxG,OADvC,wCAAA7b,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,UAAAtsD,OAEe+iB,EAAM0D,YAAYxG,OAFjC,wCAAA7b,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,WAAAtsD,OAGgB+iB,EAAM0D,YAAYxG,OAHlC,wCAAA7b,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,cAAAtsD,OAImB+iB,EAAM0D,YAAYxG,OAJrC,wCAAAqsC,EAYF,GAJK7+C,EAAO3Y,UAAa2Y,EAAOzY,MAC9B06J,aAAaC,QAAQ,qBAAsB,aAGzC36J,GAAQC,GAAS45J,EAAM,KAAA4C,EACnBtB,EAA2B71H,IAAE81H,WAAWp7J,GACxCq7J,EAAgB/1H,IAAEc,UAAU+0H,GAC5BG,EAAch2H,IAAE9E,QAAQ66H,KAAmB/1H,IAAE9E,QAAQ/nB,EAAOzY,MAC5Du7J,EAAa1B,IAASphJ,EAAOvY,WAC7Bs7J,EAAev7J,IAAUwY,EAAOxY,MAGhCk9B,GAAkBs/H,EAAA,GAAArtJ,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAAA,YACP3F,GAAiBlyJ,IADVwK,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAAA,WAER3F,GAAiBhyJ,IAFTsK,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAAA,gBAIpBhkJ,EAAO5T,eAAiB4T,EAAO5T,cAAcq+B,OAAS,EAClD,mDACA5jC,GANgB8P,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAAA,SASpBhkJ,EAAO1T,SAAW,eAAew+G,KAAK9qG,EAAO1T,QAAU,uCAAoCzF,GATvE8P,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAAA,QAUX3F,GAAiBz2J,IAVN+O,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAAA,wBAWK3F,GAAiB70J,EAAO,GAAGC,cAXhCkN,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAAA,WAYR3F,GAAiBh3J,IAZTsP,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAAA,UAaT3F,GAAiB32J,IAbRiP,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAAA,OAepB3F,GAAiB92J,KAAUs7J,EAA3B,+CAAAtwJ,OACmDqwJ,QAC/C/7J,GAjBgB8P,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAAA,QAmBpB3F,GAAiB72J,KAAWu7J,EAA5B,iDAAAxwJ,OACqD/K,QACjDX,GArBgB8P,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAAA,aAuBpB3F,GAAiB52J,KAAgBq7J,EAAjC,uDAAAvwJ,OAC2D6uJ,QACvDv6J,GAzBgBm9J,GA8BxB,OAFArtJ,OAAOyb,KAAKsS,GAAQ06C,QAAQ,SAAA9sD,GAAG,YAAqBzrB,IAAhB69B,EAAOpS,UAA4BoS,EAAOpS,GAAO,KAE9EoS,GAGX,IAAMA,GAAkBq/H,EAAA,GAAAptJ,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,YACP1F,GAAiBlyJ,IADVwK,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,gBAGpB/jJ,EAAO5T,eAAiB4T,EAAO5T,cAAcq+B,OAAS,EAClD,mDACA5jC,GALgB8P,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,SAOV/jJ,EAAO1T,SAAW,eAAew+G,KAAK9qG,EAAO1T,QAAU,uCAAoCzF,GAPjF8P,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,WAQR1F,GAAiBhyJ,IARTsK,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,QASX1F,GAAiBz2J,IATN+O,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,wBAUK1F,GAAiB70J,EAAO,GAAGC,cAVhCkN,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,WAWR1F,GAAiBh3J,IAXTsP,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,UAYT1F,GAAiB32J,IAZRiP,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,OAaZ1F,GAAiB92J,IAbLoP,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,QAcX1F,IAAiBiE,GAA4B96J,IAdlCmP,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,aAeN1F,IAAiBiE,GAA4B76J,IAfvCs8J,GAoBxB,OAFAptJ,OAAOyb,KAAKsS,GAAQ06C,QAAQ,SAAA9sD,GAAG,YAAqBzrB,IAAhB69B,EAAOpS,UAA4BoS,EAAOpS,GAAO,KAE9EoS,IAkEJ,SAAAsvG,GAAA,IAAG75C,EAAH65C,EAAG75C,aAAc0nE,EAAjB7tB,EAAiB6tB,UAAW7hJ,EAA5Bg0H,EAA4Bh0H,OAA5B,OACCsqB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,gCAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,QAAMrhC,GAAG,gBAAgB0wF,SAAUO,GACjC7vD,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,gBAAd,wCACAtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAK,YAAYK,GAAG,YAAYkjC,MAAM,gBAExE9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAK,gBAAgBK,GAAG,gBAAgBkjC,MAAM,oBAEhF9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAK,WAAWK,GAAG,WAAWkjC,MAAM,eAEtE9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAK,SAASK,GAAG,SAASkjC,MAAM,YAElE9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAK,QAAQK,GAAG,QAAQkjC,MAAM,WAEhE9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAK,QAAQK,GAAG,wBAAwBkjC,MAAM,0BAEhF9B,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,gBAAd,2BACAtB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXt6J,KAAM,UACNK,GAAI,UACJkjC,MAAM,UACN5gC,QAAS43J,eACTC,sBAAsB,aAG1B/4H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAM,WAAYK,GAAI,WAAYkjC,MAAM,eAE1E9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAM,WAAYK,GAAI,WAAYkjC,MAAM,eAE1E9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAM,OAAQK,GAAI,OAAQkjC,MAAM,UAElE9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACG3qB,EAAOtY,UAAYya,KAAQkP,uBAC1BiZ,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXt6J,KAAM,QACNK,GAAI,QACJkjC,MAAM,QACN5gC,QAAS00B,IACTmjI,sBAAsB,UAGzBrjJ,EAAOtY,UAAYya,KAAQkP,uBAA4C,KAAnBrR,EAAOtY,SAC1D4iC,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAM,QAASK,GAAI,QAASkjC,MAAM,cAGtE9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAM,aAAcK,GAAI,aAAckjC,MAAM,oBAKpF9B,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CACEC,QAAQ,YACRnvD,QAAS,WACP81H,IACAp8D,IACAw8D,aAAaC,QAAQ,qBAAsB,eAL/C,UAUA53H,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,KAAjE,eC9SCikJ,GAA2D,SAAAt7H,GAA4B,IAAzBu7H,EAAyBv7H,EAAzBu7H,UAAW/M,EAAcxuH,EAAdwuH,QAC9E1yH,EAASiF,kBAAQ,WACrB,OAAOmD,IAAEq3H,GACNC,MAAM,GACN78H,SACF,CAAC48H,IAEJ,OACE55H,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG/F,EAAOiB,IAAI,SAACw+B,EAAMkgG,GAAP,OACV95H,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,MAAMtZ,IAAG,gBAAA/f,OAAkB6xJ,IACvCv3H,IAAEnH,IAAIw+B,EAAM,SAAA12B,EAAoC62H,GAAa,IAA9CloI,EAA8CqR,EAA9CrR,MAAO0vH,EAAuCr+G,EAAvCq+G,MAAOjgH,EAAgC4B,EAAhC5B,UAAW0K,EAAqB9I,EAArB8I,KACvC,OACEhM,EAAA1P,EAAA2P,cAAC+5H,GAAD,CACEnoI,MAAOma,OAAOzvC,EAAYs1B,EAC1Bg7H,QAASA,GAAoB,IAC7BvrH,UAAWA,EACXtZ,IAAG,gBAAA/f,OAAkB6xJ,EAAlB,KAAA7xJ,OAA4B8xJ,KAE7B/tH,GAAQhM,EAAA1P,EAAA2P,cAACshH,EAAD,cCzBb0Y,GAAe,SAACC,GAC3B,IAAIC,EAAwB,GAC5B,OAAQD,GACN,IAAK,qBACHC,EAAgB,sBAChB,MACF,IAAK,qBACHA,EAAgB,sBAChB,MACF,IAAK,mBACHA,EAAgB,oBAChB,MACF,IAAK,qBACHA,EAAgB,sBAChB,MACF,IAAK,yBACHA,EAAgB,wBAChB,MACF,IAAK,oBACHA,EAAgB,qBAChB,MACF,IAAK,cACHA,EAAgB,oBAChB,MACF,IAAK,mBACHA,EAAgB,uBAChB,MACF,IAAK,iBACHA,EAAgB,0BAChB,MACF,IAAK,qBACHA,EAAgB,sBAChB,MACF,IAAK,mBACHA,EAAgB,wBAChB,MACF,IAAK,cACHA,EAAgB,oBAChB,MACF,IAAK,aACHA,EAAgB,uBAChB,MACF,QACEA,EAAgB,MAGpB,OAAOA,GAGIC,GAAmB,SAAC34J,GAC/B,IAAI04J,EAAwB,GAC5B,OAAQ14J,GACN,IAAK,SACH04J,EAAgB,SAChB,MACF,IAAK,SACHA,EAAgB,SAChB,MACF,IAAK,MACHA,EAAgB,SAChB,MACF,QACEA,EAAgB,MAGpB,OAAOA,GAGIE,GAA+B,SAACj7J,GAC3C,OAAQA,GACN,KAAK8I,KAAcmD,YACjB,OAAOhE,KAAUizJ,KACnB,KAAKpyJ,KAAcoD,sBACjB,OAAOjE,KAAUkzJ,QACnB,KAAKryJ,KAAcqD,0BACjB,OAAOlE,KAAU0D,IACnB,KAAK7C,KAAcsD,uBACjB,OAAOnE,KAAUmzJ,SACnB,KAAKtyJ,KAAcuD,gCACjB,OAAOpE,KAAU4D,KACnB,QACE,MAAM,IAAIovB,MAAM,0BAA4Bj7B,KAIrCq7J,GAAyC,SAACr7J,GACrD,OAAQA,GACN,KAAKoI,KAAwBoB,oBAC7B,KAAKpB,KAAwBqB,OAC7B,KAAKrB,KAAwBsB,OAC7B,KAAKtB,KAAwBuB,gBAC3B,OAAO1B,KAAUmzJ,SACnB,KAAKhzJ,KAAwBwB,YAC3B,OAAO3B,KAAU4D,KACnB,QACE,MAAM,IAAIovB,MAAM,oCAAsCj7B,KAqB/Cs7J,GAAsB,SAACt7J,GAClC,OAAQA,GACN,IAAK,oBACH,OAAOuN,KAAyBE,kBAClC,IAAK,oBACH,OAAOF,KAAyBG,kBAClC,IAAK,oBACH,OAAOH,KAAyBI,kBAClC,IAAK,sBACH,OAAOJ,KAAyBK,oBAClC,IAAK,iBACH,OAAOL,KAAyB9B,eAClC,QACE,MAAM,IAAIwvB,MAAM,0BAA4Bj7B,KAIrCu7J,GAAqB,SAACv7J,GACjC,OAAQA,GACN,IAAK,OACH,MAAO,OACT,IAAK,MACH,MAAO,MACT,IAAK,aACH,MAAO,cACT,IAAK,aACH,MAAO,cACT,IAAK,YACH,MAAO,YACT,QACE,MAAM,IAAIi7B,MAAM,yBAA2Bj7B,KAIpCw7J,GAAsB,SAACx7J,GAClC,OAAQA,GACN,IAAK,YACH,MAAO,oBACT,IAAK,WACH,MAAO,qBACT,IAAK,iBACH,MAAO,sBACT,IAAK,iBACH,MAAO,kBACT,QACE,MAAM,IAAIi7B,MAAM,0BAA4Bj7B,KAKrCy7J,GAAgB,SAACC,GAC5B,MAAoB,QAAhBA,GAOOC,GAA0B,SAACD,GACtC,OAAIA,EACK,MACK,MAIHE,GAAoB,SAACh+H,GAChC,IAAKA,EAAO,OAAOA,EAEnB,GAAc,QAAVA,EAAiB,OAAOA,EAE5B,IAAM79B,EAAc69B,EAAM/U,QAAQ,SAAU,IAE5C,OAAI9oB,EAAYghC,OAAS,EAAUhhC,EAE/BA,EAAYghC,OAAS,EACvB,GAAAl4B,OAAU9I,EAAYktD,MAAM,EAAG,GAA/B,KAAApkD,OAAqC9I,EAAYktD,MAAM,IAGrDltD,EAAYghC,QAAU,GACxB,GAAAl4B,OAAU9I,EAAYktD,MAAM,EAAG,GAA/B,KAAApkD,OAAqC9I,EAAYktD,MAAM,EAAG,GAA1D,KAAApkD,OAAgE9I,EAAYktD,MAAM,IAGzD,KAAvBltD,EAAYghC,OACd,GAAAl4B,OAAU9I,EAAYktD,MAAM,EAAG,GAA/B,KAAApkD,OAAqC9I,EAAYktD,MAAM,EAAG,GAA1D,KAAApkD,OAAgE9I,EAAYktD,MAAM,EAAG,GAArF,KAAApkD,OAA2F9I,EAAYktD,MAAM,IAG/G,GAAApkD,OAAU9I,EAAYktD,MAAM,EAAG,GAA/B,KAAApkD,OAAqC9I,EAAYktD,MAAM,EAAG,GAA1D,KAAApkD,OAAgE9I,EAAYktD,MAAM,KAIvE4uG,GAAkB,SAAC18J,EAAqB8yE,GACnD,OAAIA,EACK9yE,EAEA,kBA+BE28J,GAA6B,SAAC97J,EAAc6C,GACvD,IAAMgE,EAAQhE,EAAqB/C,OAAS+C,EAAqB/C,OAAO0+B,OAAO,SAAA33B,GAAK,OAAIA,EAAM7G,OAASA,IAAQ,GAC/G,OAAI6G,EAAMk6B,OAAS,EACVl6B,EAAM,GAAG9G,YAEX,OC7OIg8J,GAIR,SAAA98H,GAA+C,IAA5CqwD,EAA4CrwD,EAA5CqwD,KAAMyM,EAAsC98D,EAAtC88D,YAAai8D,EAAyB/4H,EAAzB+4H,mBACnBl5J,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEif,SAASy+B,SAAW19C,EAAEif,SAASy+B,QAAQx3B,YAC3E+zB,EAAW0E,cAEX7V,EADqBsU,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBwlB,yBAAyB75C,UAAtF15C,eACoB6zJ,GACtBgE,EAA4D,CAChE37J,eAAgB6mE,EAAOA,EAAK7mE,eAAiB,GAC7CG,SAAU0mE,EAAOA,EAAK1mE,SAAW,GACjCF,YAAa4mE,EAAOA,EAAK5mE,YAAc,GACvCC,cAAe2mE,EAAOA,EAAK3mE,cAAgB,GAC3CE,gBAAiB,CACf9C,SAAUupE,EAAOA,EAAKrnE,QAAQlC,SAAW,GACzCC,SAAUspE,EAAOA,EAAKrnE,QAAQjC,SAAW,GACzCI,QAASkpE,EAAOA,EAAKrnE,QAAQ7B,QAAU,GACvCF,MAAOopE,EAAOA,EAAKrnE,QAAQ/B,MAAQ,GACnCD,KAAMqpE,EAAOA,EAAKrnE,QAAQhC,KAAO,GACjCE,WAAYmpE,EAAOA,EAAKrnE,QAAQ9B,WAAa,KAoH3CmyF,EAAW7sD,sBACf,SAAC/sB,EAADg0H,GAA2B,IAAhB6tB,EAAgB7tB,EAAhB6tB,UACD93J,EAA0EiW,EAA1EjW,eAAgBG,EAA0D8V,EAA1D9V,SAAUF,EAAgDgW,EAAhDhW,YAAaC,EAAmC+V,EAAnC/V,cAAeE,EAAoB6V,EAApB7V,gBACtD9C,EAAyD8C,EAAzD9C,SAAUC,EAA+C6C,EAA/C7C,SAAUI,EAAqCyC,EAArCzC,QAASF,EAA4B2C,EAA5B3C,MAAOD,EAAqB4C,EAArB5C,KAAME,EAAe0C,EAAf1C,WAC9Cq6J,EAAe,GAEnB,OAAQ/3J,GACN,IAAK,WACH+3J,EAAe,CACb34J,KAAM,aACNG,cAAe,CACbS,iBACAG,WACAF,cACAC,gBACAE,gBAAiB,CACf9C,WACAC,WACAI,UACAF,QACAD,OACAE,eAGJkgD,OAAQ+5G,GAEV,MACF,IAAK,UACL,IAAK,aACL,IAAK,UACHI,EAAe,CACb34J,KAAM,aACNG,cAAe,CACbS,iBACAG,SAAU,GACVF,YAAa,GACbC,cAAe,GACfE,gBAAiB,CACf9C,SAAU,GACVC,SAAU,GACVI,QAAS,MACTF,MAAO,KACPD,KAAM,GACNE,WAAY,QAGhBkgD,OAAQ+5G,GAOd3/E,EACExpC,KAA6BwpH,yBAAyB,CACpDv5J,UAAWA,EACXouC,QAASkrH,KAIbD,IACAp8D,IAEAw8D,aAAaC,QAAb,mBAAA3vJ,OAAwCmvJ,GAAsB,cAEhE,CAACj8D,EAAaj9F,EAAWk5J,EAAoB3/E,IAG/C,OACEz3C,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAQwsD,cAAe2rE,EAA+B9rE,SAAUA,EAAU3hC,SApLzD,SAACj4C,GAAuC,IAAA4nF,EAGrDu6D,EACAC,EAHIr4J,EAA0EiW,EAA1EjW,eAAgBG,EAA0D8V,EAA1D9V,SAAUF,EAAgDgW,EAAhDhW,YAAaC,EAAmC+V,EAAnC/V,cAAeE,EAAoB6V,EAApB7V,gBACtD9C,EAAmC8C,EAAnC9C,SAAUK,EAAyByC,EAAzBzC,QAASF,EAAgB2C,EAAhB3C,MAAOD,EAAS4C,EAAT5C,KAG5B+6J,EAA4Bn4J,EAAgBzC,UAAYya,KAAQkP,sBAEhEkxI,EAA0BN,aAAaO,QAAb,mBAAAjwJ,OAAwCmvJ,IAExE,IAAK33J,EACH,MAAO,CAAEA,eAAgBs0J,GAAiB,mBAG5C,GAAIt0J,GAAkBA,IAAmBqM,KAAeS,SACtD,MAAO,GAGT,GAAI0rJ,GAAuD,cAA5BA,EAAyC,KAAAE,EACtEN,EAAez4G,KAAK0F,MAAMmzG,GAClBh7J,EAF8Dk7J,EAE9Dl7J,KAAMC,EAFwDi7J,EAExDj7J,MAAO45J,EAFiDqB,EAEjDrB,KAAM9rI,EAF2CmtI,EAE3CntI,MACrBotI,EAA2B71H,IAAE81H,WAAWp7J,GACxCq7J,EAAgB/1H,IAAEc,UAAU+0H,GAC5BG,EAAch2H,IAAE9E,QAAQ66H,KAAmB/1H,IAAE9E,QAAQ59B,EAAgB5C,MACrEu7J,EAAa1B,IAASj3J,EAAgB1C,WACtCs7J,EAAev7J,IAAU2C,EAAgB3C,MAG3B46J,IAFM9sI,IAASutI,IAAeC,IAAcC,GAK9D17J,GAAYE,GAAQC,GAASE,IAAYya,KAAQkP,wBAA0B+wI,GAChE,eAAA50H,EAAA72B,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAC,IAAA,OAAAF,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACR,IAAIwG,QAAQ,SAAAC,GAAO,OAAI+gD,WAAW/gD,EAAS,OADnC,cAAA3G,EAAAE,KAAA,EAED47G,GAAiBn1J,GAFhB,cAAAq5C,EAAAG,OAAA,SAAAH,EAAAuC,MAAA,wBAAAvC,EAAAK,SAAAR,MAAH,yBAAA7V,EAAA0e,MAAAzJ,KAAA0J,YAAA,EAKb62G,GAAUp/G,KAAK,SAAA6D,GACbw6G,aAAaC,QAAb,mBAAA3vJ,OAAwCmvJ,GAAsBh4G,KAAKnJ,UAAUkH,MAIjF,GAAI06G,EAAc,KASdtjG,EATcokG,EACqBd,EAA7B56J,EADQ07J,EACR17J,KAAMC,EADEy7J,EACFz7J,MAAO45J,EADL6B,EACK7B,KAAM9rI,EADX2tI,EACW3tI,MAE3B,GACEA,GACAnrB,EAAgB9C,UAChB8C,EAAgB5C,MAChB4C,EAAgB3C,OAChB2C,EAAgB1C,WAEhB,OAAAo3D,EAAA,GAAAloD,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,gBAAAtsD,OACqB+iB,EAAM0D,YAAYxG,OADvC,wCAAA7b,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,UAAAtsD,OAEe+iB,EAAM0D,YAAYxG,OAFjC,wCAAA7b,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,WAAAtsD,OAGgB+iB,EAAM0D,YAAYxG,OAHlC,wCAAA7b,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,cAAAtsD,OAImB+iB,EAAM0D,YAAYxG,OAJrC,wCAAAqsC,EAYF,GAJK10D,EAAgB9C,UAAa8C,EAAgB5C,MAChD06J,aAAaC,QAAb,mBAAA3vJ,OAAwCmvJ,GAAsB,aAG5Dn6J,GAAQC,GAAS45J,EAAM,KAAA8B,EACnBR,EAA2B71H,IAAE81H,WAAWp7J,GACxCq7J,EAAgB/1H,IAAEc,UAAU+0H,GAC5BG,EAAch2H,IAAE9E,QAAQ66H,KAAmB/1H,IAAE9E,QAAQ59B,EAAgB5C,MACrEu7J,EAAa1B,IAASj3J,EAAgB1C,WACtCs7J,EAAev7J,IAAU2C,EAAgB3C,MAGzCk9B,GAAkBw+H,EAAA,GAAAvsJ,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EACrB,0BAA4B7E,GAAiBl0J,EAAgBzC,UADxCiP,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAErB,2BAA6B7E,GAAiBl0J,EAAgB9C,WAFzCsP,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAGrB,uBACC7E,GAAiBl0J,EAAgB5C,QAAUs7J,EAA3C,+CAAAtwJ,OACmDqwJ,QAC/C/7J,GANgB8P,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAOrB,wBACC7E,IAAiBiE,GAA4Bn4J,EAAgB3C,SAAkBu7J,EAA/E,iDAAAxwJ,OACqD/K,QACjDX,GAVgB8P,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAWrB,6BACC7E,IAAiBiE,GAA4Bn4J,EAAgB1C,cAAuBq7J,EAApF,uDAAAvwJ,OAC2D6uJ,QACvDv6J,GAdgB8P,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,iBAeF7E,GAAiBt0J,IAff4M,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,WAgBR7E,GAAiBn0J,IAhBTyM,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,cAiBL7E,GAAiBr0J,IAjBZ2M,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,gBAkBH7E,GAAiBp0J,IAlBdi5J,GAuBxB,OAFAvsJ,OAAOyb,KAAKsS,GAAQ06C,QAAQ,SAAA9sD,GAAG,YAAqBzrB,IAAhB69B,EAAOpS,UAA4BoS,EAAOpS,GAAO,KAE9EoS,GAIX,OAAAkjE,EAAA,GAAAjxF,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,iBACsBy2D,GAAiBt0J,IADvC4M,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,WAEgBy2D,GAAiBn0J,IAFjCyM,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,cAGmBy2D,GAAiBr0J,IAHpC2M,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,gBAIqBy2D,GAAiBp0J,IAJtC0M,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,2BAKgCy2D,GAAiBh3J,IALjDsP,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,uBAM4By2D,GAAiB92J,IAN7CoP,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,wBAO6By2D,GAAiB72J,IAP9CmP,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,0BAQ+By2D,GAAiB32J,IARhDiP,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,6BASkCy2D,IAAiBiE,GAA4Bn4J,EAAgB1C,aAT/FmgG,IAmFG,SAAAipD,GAAA,IAAG7wI,EAAH6wI,EAAG7wI,OAAQm6E,EAAX02D,EAAW12D,aAAc0nE,EAAzBhR,EAAyBgR,UAAzB,OACCv3H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,uCAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,QAAMrhC,GAAG,kBAAkB0wF,SAAUO,EAAcvuD,UAAU,mBAC3DtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACX5rC,cAAc,EACdruH,GAAG,iBACHsC,QAASoL,KACTw1B,MAAM,qBAGV9B,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,yEAC2B,aAA1B5rB,EAAOjW,gBACNugC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,iCACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXt6J,KAAM,UACNK,GAAI,0BACJkjC,MAAM,UACN5gC,QAAS43J,eACTC,sBAAsB,aAG1B/4H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACXlyF,KAAM,WACNK,GAAI,2BACJkjC,MAAM,eAGV9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACXlyF,KAAM,WACNK,GAAI,2BACJkjC,MAAM,eAGV9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAM,OAAQK,GAAI,uBAAwBkjC,MAAM,UAElF9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXt6J,KAAM,QACNK,GAAI,wBACJkjC,MAAM,QACN5gC,QAAS00B,IACTmjI,sBAAsB,WAG1B/4H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACXlyF,KAAM,aACNK,GAAI,6BACJkjC,MAAM,iBAGV9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAc7xF,GAAG,cAAcL,KAAM,cAAeujC,MAAM,eAE9E9B,EAAA1P,EAAA2P,cAAA,8BACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAc7xF,GAAG,WAAWL,KAAM,WAAYujC,MAAM,mBAExE9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACX5rC,cAAc,EACdruH,GAAG,gBACHsC,QAAS0L,IACTk1B,MAAM,uBAOlB9B,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CACEC,QAAQ,YACRnvD,QAAS,WACP81H,IACAp8D,IACAw8D,aAAaC,QAAb,mBAAA3vJ,OAAwCmvJ,GAAsB,eALlE,UAUAp3H,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,KAAjE,eC3TC2lJ,GAIR,SAAAh9H,GAAiC,IAA9BqwD,EAA8BrwD,EAA9BqwD,KAAMyM,EAAwB98D,EAAxB88D,YAAa/7F,EAAWi/B,EAAXj/B,KACnBlB,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEif,SAASy+B,SAAW19C,EAAEif,SAASy+B,QAAQx3B,YAC3E+zB,EAAW0E,cAWXm/E,EAAsB,yBAATl8J,EAAkC,0BAA4B,8BAC3Em8J,EACK,yBAATn8J,EACI,wDACA,4DAEN,OACE4gC,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,KAAuBmrE,IAEzBt7H,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,SAAIs7H,IAENv7H,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,KACE1wD,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,YAAYnvD,QAAS,kBAAM05D,MAA3C,UAGAn7D,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QA3BhB,WACd,IAAM+1H,EAAe,CACnB34J,KAAe,yBAATO,EAAkC,uBAAyB,4BAGnEq4E,EAASxpC,KAA6BwpH,yBAAyB,CAAEv5J,YAAWouC,QAASkrH,KACrFr8D,MAqBI,aCzBKqgE,GAIR,SAAAn9H,GAA+C,IAA5CqwD,EAA4CrwD,EAA5CqwD,KAAMyM,EAAsC98D,EAAtC88D,YACN5N,GAD4ClvD,EAAzB+4H,mBACPx8E,YAAiB6a,KAC7BhC,EAAY7Y,YAAiB0Y,GAAOA,QACtCu1B,EAAsB,OAAdp1B,EAAqB,KAAO,KAClCuxD,EAAa12D,KAAO22D,iBAAc1oJ,EAClCk/J,EAA0B,OAAdhoE,EAAA,QAAAxrF,OAA6B4gH,GAAU,GALP9uC,EAOhBC,qBAPgBC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAO3C2hF,EAP2CzhF,EAAA,GAOhC0hF,EAPgC1hF,EAAA,GAAAuhB,EAQhBxhB,oBAAkB,GARFyhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAQ3CogE,EAR2CngE,EAAA,GAQhCogE,EARgCpgE,EAAA,GAAAG,EASd5hB,oBAAkB,GATJ6hB,EAAAxvF,OAAAqoD,EAAA,EAAAroD,CAAAuvF,EAAA,GAS3C/N,EAT2CgO,EAAA,GAS/BigE,EAT+BjgE,EAAA,GAgB5C/E,EAA2Blc,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBilB,eAAezhE,OACpFinI,EAA4B,CAChC1xI,SAAU,GACVvZ,MAAOgmF,EAAyBx5F,MAAQw5F,EAAyBx5F,MAAQ,IAerEgyF,EAAW7sD,sBAAW,eAAAinG,EAAAr9H,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAC,SAAAU,EAAO9jC,EAAP4nF,GAAA,IAAAi6D,EAAA,OAAA1+G,EAAAvoB,EAAA2oB,KAAA,SAAAQ,GAAA,cAAAA,EAAAN,KAAAM,EAAAL,MAAA,cAA6Bm+G,EAA7Bj6D,EAA6Bi6D,UACxDuE,GAAc,GADariH,EAAAL,KAAA,EAErBw9G,MAAK,GAAA3uJ,OAAI+8I,EAAJ,wCAAA/8I,OAAqD4gH,GAAS,CACvE8tC,OAAQ,OACR/hH,QAAS,CACP2hH,eAAgB,oBAElB1kE,KAAMzyC,KAAKnJ,UAAU,CACnB5rB,SAAU3U,EAAO2U,SACjBvZ,MAAO4E,EAAO5E,UAEfwoC,KATG,eAAAitG,EAAAl6I,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KASE,SAAAC,EAAM7D,GAAN,OAAA2D,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,UACkB,MAApBlE,EAASC,OADP,CAAA+D,EAAAE,KAAA,eAEJ0iH,GAAc,GAFV5iH,EAAAE,KAAA,EAGkBlE,EAASyjF,OAH3B,OAIyB,IAJzBz/E,EAAAuC,KAIQ7D,cACV+jH,EAAa,IACbG,GAAc,GACdD,GAAa,KAEbC,GAAc,GACdD,GAAa,IAEftE,IAZI,wBAAAr+G,EAAAK,SAAAR,MATF,gBAAAukC,GAAA,OAAAipE,EAAA3kG,MAAAzJ,KAAA0J,YAAA,IAFqB,wBAAApI,EAAAF,SAAAC,MAAD,gBAAA0jC,EAAAC,GAAA,OAAAusD,EAAA9nF,MAAAzJ,KAAA0J,YAAA,GA0BzB,IAgBH,OAZA45B,oBAAU,WACR,GAAImgF,EAAW,CACb,IAAM3uB,EAAQrsC,WAAW,WACvBi7D,GAAa,GACTntE,GACFyM,KAED,KACH,OAAO,kBAAMwF,aAAassC,MAE3B,CAAC2uB,IAGF57H,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,wBAEDtC,GAAc7tD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,OACbu7H,IAAc/tE,GACd7tD,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAQwsD,cAAessE,EAA2BzsE,SAAUA,EAAU3hC,SA7D3D,SAACj4C,GACqB,IAAAwtB,EAAvC,OAAKxtB,EAAO2U,UAAa3U,EAAO5E,MAG5B4E,EAAO5E,QAAU,4CAA4C0vG,KAAK9qG,EAAO5E,OACpEzE,OAAA2tB,EAAA,EAAA3tB,CAAA,WAAa,0BAEf,IALL62B,EAAA,GAAA72B,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,WAAuB,yBAAvB72B,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,QAA2D,sBAA3DA,KA4DO,SAAAyjH,KAAGvsH,OAAHusH,EAAWqV,QAAXrV,EAAoBsV,YAApB,IAAiCpsE,EAAjC82D,EAAiC92D,aAAc0nE,EAA/C5Q,EAA+C4Q,UAA/C5Q,EAA0DjxI,OAA1D,OACCsqB,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACG7C,GACCvtD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,iFACwE,IACtED,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoyC,KAAM6b,KAAO4tE,eAAiBT,GAA5C,qCAIFz7H,EAAA1P,EAAA2P,cAAA,mFAGJD,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,UAAb,uFAGAtB,EAAA1P,EAAA2P,cAAA,YACED,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAc7xF,GAAG,WAAW2/B,YAAY,WAAWxJ,WAAW,KAElFiL,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAc7xF,GAAG,QAAQ2/B,YAAY,QAAQxJ,WAAW,MAG9EiL,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CACEC,QAAQ,YACRnvD,QAAS,WACP81H,IACAp8D,MAJJ,UASAn7D,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUxxF,KAAK,SAASqiC,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,KAA/E,cAQTkmJ,GACC57H,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,gBAAd,+BACAtB,EAAA1P,EAAA2P,cAAA,sMAIAD,EAAA1P,EAAA2P,cAAA,SACED,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,MACAL,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcshE,UAAWrT,KAAOqT,cAGpC3hE,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,KACE1wD,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUxxF,KAAK,SAASqiC,QAAS,kBAAM05D,MAAvD,WAMLugE,GACC17H,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,KACEqB,UAAU,QACVlB,MAAO,CAAEkvE,aAAc,EAAG5vE,UAAW,QACrC8nF,wBAAyB,CACvBC,OAAQi0C,SChKXS,GAA8C,WACzD,IAAMj+J,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQh9E,YAC5Cq4F,EAAiB3b,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBilB,eAAezhE,OAC1EywD,EAAW3K,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBilB,eAAehR,WAGpE62E,EAAwBxhF,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBylB,gCAAgCjiE,OAClGunI,EAAqBD,GAAyBA,EAAsBx+H,OAAO,SAAA0+H,GAAC,MAAe,UAAXA,EAAEz9J,OAClF09J,EACJH,GAAyBA,EAAsBx+H,OAAO,SAAA0+H,GAAC,MAAe,mBAAXA,EAAEz9J,OACzD29J,EAAqBJ,GAAyBA,EAAsBx+H,OAAO,SAAA0+H,GAAC,MAAe,gBAAXA,EAAEz9J,OAElFi4F,EAA2Blc,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBwlB,yBAAyB75C,UAC5F15C,EAAmBuzF,EAAnBvzF,eAEA3B,EAAmBk1F,EAAnBl1F,eACFisF,EAAajT,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBwlB,yBAAyBjJ,aAChFkgB,EAA0BnzB,YAC9B,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQC,uBAAyB39C,EAAE09C,QAAQC,sBAAsBj9E,YAGpEu5E,EAAW0E,cArB8CpC,EAsBXC,oBAAS,GAtBEC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAsBxD0iF,EAtBwDxiF,EAAA,GAsBpCyiF,EAtBoCziF,EAAA,GAAAuhB,EAuBfxhB,oBAAS,GAvBMyhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAuBxDmhE,EAvBwDlhE,EAAA,GAuBtCmhE,EAvBsCnhE,EAAA,GAAAG,EAwBf5hB,oBAAS,GAxBM6hB,EAAAxvF,OAAAqoD,EAAA,EAAAroD,CAAAuvF,EAAA,GAwBxDihE,EAxBwDhhE,EAAA,GAwBtCihE,EAxBsCjhE,EAAA,GAAAG,EAyBXhiB,oBAAS,GAzBEiiB,EAAA5vF,OAAAqoD,EAAA,EAAAroD,CAAA2vF,EAAA,GAyBxD+gE,EAzBwD9gE,EAAA,GAyBpC+gE,EAzBoC/gE,EAAA,GAAA02B,EA0BP34C,oBAAS,GA1BF44C,EAAAvmH,OAAAqoD,EAAA,EAAAroD,CAAAsmH,EAAA,GA0BxDsqC,EA1BwDrqC,EAAA,GA0BlCsqC,EA1BkCtqC,EAAA,GAAA20B,EA2BzBvtE,mBAAS,IA3BgBwtE,EAAAn7I,OAAAqoD,EAAA,EAAAroD,CAAAk7I,EAAA,GA2BxD4P,EA3BwD3P,EAAA,GA2B3C2V,EA3B2C3V,EAAA,GAAA0J,EA4BXl3E,mBAAiB,GA5BNm3E,EAAA9kJ,OAAAqoD,EAAA,EAAAroD,CAAA6kJ,EAAA,GA4BxDkG,EA5BwDjG,EAAA,GA4BpCiM,EA5BoCjM,EAAA,GAAAC,EA6BCp3E,oBAAS,GA7BVq3E,EAAAhlJ,OAAAqoD,EAAA,EAAAroD,CAAA+kJ,EAAA,GA6BxDiM,EA7BwDhM,EAAA,GA6B9BiM,EA7B8BjM,EAAA,GAAAG,EA8Bbx3E,oBAAkB,GA9BLy3E,EAAAplJ,OAAAqoD,EAAA,EAAAroD,CAAAmlJ,EAAA,GA8BxD+L,GA9BwD9L,EAAA,GA8BrC+L,GA9BqC/L,EAAA,GA+BzDv4C,GAAat+B,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBl0B,OAAOtoB,OAEpE2mD,oBAAU,YACH8J,GAAYrnF,IACX6vG,GACFt2B,EAASxpC,KAA6BwvH,sBAAsB,CAAEv/J,UAAW6vG,KACzEt2B,EAASxpC,KAA6ByvH,gCAAgC,CAAEx/J,UAAW6vG,OAEnFt2B,EAASxpC,KAA6BwvH,sBAAsB,CAAEv/J,eAC9Du5E,EAASxpC,KAA6ByvH,gCAAgC,CAAEx/J,kBAG3E,CAACA,EAAWu5E,EAAU8N,EAAUwoB,EAAyBmL,KAE5D,IAAM1V,GAAc,SAACC,GAEnB,OADAA,EAAM9R,iBACE8R,EAAMnB,OAAO1jG,IACnB,IAAK,UACHw+J,EAAsB,GACtBR,GAAoB,GACpB,MACF,IAAK,UACHQ,EAAsB,GACtBR,GAAoB,GACpB,MACF,IAAK,gBACHO,EAAe,YACfC,EAAsB,GACtBV,GAAsB,GACtB,MACF,IAAK,gBACHS,EAAe,YACfC,EAAsB,GACtBV,GAAsB,GACtB,MACF,IAAK,gBACHS,EAAe,QACfC,EAAsB,GACtBV,GAAsB,GACtB,MACF,IAAK,gBACHS,EAAe,QACfC,EAAsB,GACtBV,GAAsB,GACtB,MACF,IAAK,iBACHM,GAAsB,GACtB,MACF,IAAK,mBACHI,EAAsB,GACtBF,GAAwB,GACxB,MACF,IAAK,mBACHE,EAAsB,GACtBF,GAAwB,GACxB,MACF,IAAK,gBACHE,EAAsB,GACtBN,GAAoB,GACpB,MACF,IAAK,gBACHM,EAAsB,GACtBN,GAAoB,GACpB,MACF,IAAK,uBACHQ,GAA4B,GAC5B,MACF,IAAK,gBACHE,IAAqB,KAmCrBG,GAAuB,SAACrvI,GAC5B,OAAI/qB,EAAe+qB,GAAOzsB,WAAa0B,EAAe+qB,GAAOvsB,SAC3D,GAAAkG,OAAU1E,EAAe+qB,GAAOzsB,UAAhC,KAAAoG,OAA6C1E,EAAe+qB,GAAOxsB,eAAiB,GAApF,KAAAmG,OACE1E,EAAe+qB,GAAOvsB,SADxB,KAAAkG,OAEI1E,EAAe+qB,GAAOtsB,QAAU,IAE/B,kBAGH47J,GAAuB,SAACtvI,EAAelvB,GAC3C,IAAM6G,EAAQ1C,EAAe+qB,GAAOpvB,OAASqE,EAAe+qB,GAAOpvB,OAAO0+B,OAAO,SAAA33B,GAAK,OAAIA,EAAM7G,OAASA,IAAQ,GACjH,OAAI6G,EAAMk6B,OAAS,EACVl6B,EAAM,GAAG9G,YAEX,OAGH0+J,GAAqBz+H,kBAAQ,WACjC,IAAIw6H,EAA2B,GAqL/B,OApLIrjE,GAAkBO,IAA6BjJ,GAActI,GAC/DhiF,EAAe63B,IAAI,SAACp8B,EAAesvB,GACjCsrI,EAAS,GAAA3xJ,OAAAoE,OAAA60B,EAAA,EAAA70B,CACJutJ,GADI,CAGP,CACErY,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,oCADf,0BAC2E,IACzEtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQq8H,GAAqBrvI,MAGjDgT,UAAW,gBAGb,CAAEigH,MAAO,kBAAM,OAEf,CACEA,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,eACdtB,EAAA1P,EAAA2P,cAAA,gCACAD,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,cAAc1iC,GAAE,SAAAqJ,OAAWqmB,GAASmT,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,KAApF,aAIFzjE,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQtiC,EAAc1B,MAAQ0B,EAAc1B,MAAQ,8BACpE0iC,EAAA1P,EAAA2P,cAAA,WACCo8H,GAAsBA,EAAmBl8H,OAAS,GACjDH,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,kBACdtB,EAAA1P,EAAA2P,cAAA,qDACAD,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,cACG+9C,KAAMq+E,EAAmBA,EAAmBl8H,OAAS,GAAG29H,YAAYpnH,OACnE,6BASd,CACE6qG,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,cACED,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,aAEFtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACdtB,EAAA1P,EAAA2P,cAAA,UAAQrhC,GAAI,gBAAiB6iC,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,KAA3D,sBAQR,CACE89C,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,eACdtB,EAAA1P,EAAA2P,cAAA,kCACAD,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,cAAc1iC,GAAE,eAAAqJ,OAAiBqmB,GAASmT,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,KAA1F,aAIFzjE,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbtiC,EAAclC,eAAeC,SAAWiC,EAAclC,eAAeC,SAAW,OAEnFijC,EAAA1P,EAAA2P,cAAA,WACCjhC,EAAclC,eAAeE,UAC5BgjC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQtiC,EAAclC,eAAeE,UACrDgjC,EAAA1P,EAAA2P,cAAA,YAGJD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbtiC,EAAclC,eAAeG,KAAO+B,EAAclC,eAAeG,KAAO,GAD3E,IACgF,IAC7E+B,EAAclC,eAAeI,MAAQ8B,EAAclC,eAAeI,MAAQ,GAAI,IAC9E8B,EAAclC,eAAeK,WAAa6B,EAAclC,eAAeK,WAAa,IAEvF6iC,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbtiC,EAAclC,eAAeM,QAAU4B,EAAclC,eAAeM,QAAU,MAAO,KAExF4iC,EAAA1P,EAAA2P,cAAA,WACCs8H,GAA4BA,EAAyBp8H,OAAS,GAC7DH,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,kBACdtB,EAAA1P,EAAA2P,cAAA,qDACAD,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,cACG+9C,KAAMu+E,EAAyBA,EAAyBp8H,OAAS,GAAG29H,YAAYpnH,OAC/E,6BASd,CACE6qG,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,eACdtB,EAAA1P,EAAA2P,cAAA,mCACAD,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,cAAc1iC,GAAE,eAAAqJ,OAAiBqmB,GAASmT,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,KAA1F,aAIFzjE,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQtiC,EAAcC,QAAQlC,SAAWiC,EAAcC,QAAQlC,SAAW,OAC1FijC,EAAA1P,EAAA2P,cAAA,WACCjhC,EAAcC,QAAQjC,UACrBgjC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQtiC,EAAcC,QAAQjC,UAC9CgjC,EAAA1P,EAAA2P,cAAA,YAIJD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbtiC,EAAcC,QAAQhC,KAAO+B,EAAcC,QAAQhC,KAAO,GAD7D,IACkE,IAC/D+B,EAAcC,QAAQ/B,MAAQ8B,EAAcC,QAAQ/B,MAAQ,GAAI,IAChE8B,EAAcC,QAAQ9B,WAAa6B,EAAcC,QAAQ9B,WAAa,OAEzE6iC,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQtiC,EAAcC,QAAQ7B,QAAU4B,EAAcC,QAAQ7B,QAAU,MAAxF,QAKN,CACEmkJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cACdtB,EAAA1P,EAAA2P,cAAA,gCACAD,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,cAAc1iC,GAAE,eAAAqJ,OAAiBqmB,GAASmT,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,KAA1F,aAIFzjE,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UACdtB,EAAA1P,EAAA2P,cAAA,sBACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQ05H,GAAkB4C,GAAqBtvI,EAAO,UAAiB,KAEzF0R,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UACdtB,EAAA1P,EAAA2P,cAAA,wBACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQ05H,GAAkB4C,GAAqBtvI,EAAO,YAAmB,KAE3F0R,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UACdtB,EAAA1P,EAAA2P,cAAA,sBACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQ05H,GAAkB4C,GAAqBtvI,EAAO,UAAiB,KAEzF0R,EAAA1P,EAAA2P,cAAA,WACCu8H,GAAsBA,EAAmBr8H,OAAS,GACjDH,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,kBACdtB,EAAA1P,EAAA2P,cAAA,qDACAD,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,cACGu8H,EAAmBA,EAAmBr8H,OAAS,IAC9C69C,KAAMw+E,EAAmBA,EAAmBr8H,OAAS,GAAG29H,YAAYpnH,OAClE,6BAShB,CACE6qG,MAAO,kBAAM,WAKdqY,GACN,CACDr2J,EACAgzF,EACAhR,EACAsI,EACAuuE,EACAI,EACAD,EACAF,IAGI0B,GAA2B3+H,kBAAQ,WACvC,IAAIw6H,EAA2B,GA2G/B,OAzGIrjE,GAAkBO,IAA6BjJ,GAActI,IAC/Dq0E,EAAS,GAAA3xJ,OAAAoE,OAAA60B,EAAA,EAAA70B,CACJutJ,GADI,CAGP,CACErY,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,uCADf,mBACuE,IACrEtB,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,cAAc1iC,GAAG,iBAAiB6iC,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,KAAlF,cAKJniE,UAAW,gBAGb,CAAEigH,MAAO,kBAAM,OAEf,CACEA,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAhB,mCAGJ0K,KAAyB,OAAnBpqC,GAGR,CAAE2/I,MAAO,kBAAM,OAEf,CACEA,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,cACED,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,SAEFtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACb1/B,EAAeC,UADlB,IAC8BD,EAAeE,eAAiB,GAD9D,IACmEF,EAAeG,SAAU,IACzFH,EAAeI,QAAU,MAIhCgqC,KAAyB,OAAnBpqC,GAGR,CACE2/I,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,cACED,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,UAEFtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQ1/B,EAAetE,SAG3C0uC,KAAyB,OAAnBpqC,GAGR,CACE2/I,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,cACED,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,YAEFtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQ1/B,EAAe3C,SAAW2C,EAAe3C,QAAQlC,UACzEijC,EAAA1P,EAAA2P,cAAA,WACCr+B,EAAe3C,SAAW2C,EAAe3C,QAAQjC,UAChDgjC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQ1/B,EAAe3C,QAAQjC,WAGnDgjC,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACb1/B,EAAe3C,SAAW2C,EAAe3C,QAAQhC,KADpD,IAC2D,IACxD2E,EAAe3C,SAAW2C,EAAe3C,QAAQ/B,MAAO,IACxD0E,EAAe3C,SAAW2C,EAAe3C,QAAQ9B,YAEpD6iC,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQ1/B,EAAe3C,SAAW2C,EAAe3C,QAAQ7B,WAG7E4uC,KAAyB,OAAnBpqC,GAAsD,OAA3BA,EAAe3C,SAGlD,CACEsiJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,cACED,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,iBAEFtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQ05H,GAAkBp5J,EAAe1C,OAAO,GAAGC,gBAGvE6sC,KAAyB,OAAnBpqC,GAAqD,OAA1BA,EAAe1C,QAElD,CACEqiJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,cAAc1iC,GAAG,uBAAuB6iC,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,KAAxF,YAKJz3D,KAAyB,OAAnBpqC,MAKLg4J,GACN,CAACh4J,EAAgB20F,EAAgB1I,EAAYtI,IAE1Cy4E,GAAuB5+H,kBAAQ,WACnC,IAAIw6H,EAA2B,GA6G/B,OA5GIrjE,GAAkBO,IAA6BjJ,GAActI,GAC/DhiF,EAAe63B,IAAI,SAACp8B,EAAesvB,GACjCsrI,EAAS,GAAA3xJ,OAAAoE,OAAA60B,EAAA,EAAA70B,CACJutJ,GADI,CAGP,CACErY,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,mCADf,4BAC4E,IAC1EtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQq8H,GAAqBrvI,IAAe,IAC5D0R,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,cAAc1iC,GAAE,kBAAAqJ,OAAoBqmB,GAASmT,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,KAA7F,cAKJniE,UAAW,gBAGb,CAAEigH,MAAO,kBAAM,OAEf,CACEA,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,cACED,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,oBAEFtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQtiC,EAAcS,kBAG1CusC,MAAOhtC,EAAcS,gBAGvB,CACE8hJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,cACED,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,kBAEFtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQtiC,EAAcY,YAG1CosC,KAAuC,aAAjChtC,EAAcS,iBAAkCT,EAAcY,UAGtE,CACE2hJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,cACED,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,cAEFtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQtiC,EAAcU,eAG1CssC,KAAuC,aAAjChtC,EAAcS,iBAAkCT,EAAcU,aAGtE,CACE6hJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,cACED,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,mBAEFtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbtiC,EAAcW,cAAgB+6J,GAAoB17J,EAAcW,eAAiB,oBAIxFqsC,KAAuC,aAAjChtC,EAAcS,gBAGtB,CACE8hJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,cACED,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,uBAEFtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbtiC,EAAca,iBAAmBb,EAAca,gBAAgB9C,UAC9DijC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGlhC,EAAca,gBAAgB9C,SAC/BijC,EAAA1P,EAAA2P,cAAA,YAGHjhC,EAAca,iBAAmBb,EAAca,gBAAgB7C,UAC9DgjC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGlhC,EAAca,gBAAgB7C,SAC/BgjC,EAAA1P,EAAA2P,cAAA,YAGHjhC,EAAca,iBAAmBb,EAAca,gBAAgB5C,KAC/D+B,EAAca,iBAAmBb,EAAca,gBAAgB3C,MAC5D,KAAO8B,EAAca,gBAAgB3C,MACrC,GAAI,IACP8B,EAAca,iBAAmBb,EAAca,gBAAgB1C,WAChE6iC,EAAA1P,EAAA2P,cAAA,WACCjhC,EAAca,iBAAmBb,EAAca,gBAAgBzC,WAItE4uC,KAAuC,aAAjChtC,EAAcS,iBAAkCT,EAAca,iBAEtE,CACE0hJ,MAAO,kBAAM,WAMdqY,GACN,CAACr2J,EAAgBgzF,EAAgB1I,EAAYtI,IAEhD,OAAKA,IAAYsI,GAAeiJ,EAG9B92D,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uBACbtB,EAAA1P,EAAA2P,cAACg+H,GAAD,CAAcrE,UAAWiE,MAE3B79H,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uBACbtB,EAAA1P,EAAA2P,cAACg+H,GAAD,CAAcrE,UAAWoE,MAE3Bh+H,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uBACbtB,EAAA1P,EAAA2P,cAACg+H,GAAD,CAAcrE,UAAWmE,MAE3B/9H,EAAA1P,EAAA2P,cAACi+H,GAAD,CACE/iE,YA7dsB,WACLuhE,GAArBD,IA6dI/tE,KAAM+tE,EACNtF,YAAaA,EACbC,mBAAoBA,EACpB7gE,eAAgBA,IAElBv2D,EAAA1P,EAAA2P,cAACk+H,GAAD,CAAahjE,YA/dS,WACLyhE,GAAnBD,IA8d+CjuE,KAAMiuE,EAAkBvF,mBAAoBA,IACzFp3H,EAAA1P,EAAA2P,cAACm+H,GAAD,CAAajjE,YA5dS,WACL2hE,GAAnBD,IA2d+CnuE,KAAMmuE,EAAkBzF,mBAAoBA,IACzFp3H,EAAA1P,EAAA2P,cAACo+H,GAAD,CAAsBljE,YAzdG,WACN6hE,GAArBD,IAwd2DruE,KAAMquE,IAC/D/8H,EAAA1P,EAAA2P,cAACq+H,GAAD,CACEnjE,YAvdyB,WACN+hE,GAAvBD,IAudIvuE,KAAMuuE,EACN7F,mBAAoBA,IAEtBp3H,EAAA1P,EAAA2P,cAACs+H,GAAD,CACEpjE,YAxd6B,WACNmiE,GAA3BD,IAwdI3uE,KAAM2uE,EACNj+J,KAAK,yBAEP4gC,EAAA1P,EAAA2P,cAACu+H,GAAD,CACErjE,YAzd0B,WACVqiE,IAApBD,KAydI7uE,KAAM6uE,GACNnG,mBAAoBA,KApCuCp3H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,OCxjBtDo+H,GAIR,SAAApgI,GAA2B,IAAxBqwD,EAAwBrwD,EAAxBqwD,KAAMyM,EAAkB98D,EAAlB88D,YACN1jB,EAAW0E,cACXj+E,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEif,SAASy+B,SAAW19C,EAAEif,SAASy+B,QAAQx3B,YAFnDs4B,EAGiEpB,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBwlB,yBAAyB75C,UAA1J77C,EAHsB46E,EAGtB56E,aAAcC,EAHQ26E,EAGR36E,cAAeC,EAHP06E,EAGO16E,eAHPo9J,EAAA1iF,EAGuBz6E,gBAAmBE,EAH1Ci9J,EAG0Cj9J,QAASC,EAHnDg9J,EAGmDh9J,QAC3Ei9J,EAA0D,CAC9Dv9J,aAAcA,GAA8B,GAC5CC,cAAeA,GAAgC,GAC/CC,eAAgBA,GAAkC,GAClDC,gBAAiB,CACfE,QAASA,GAAoB,GAC7BC,QAASA,GAAoB,KAmB3B4tF,EAAW7sD,sBACf,SAAC/sB,EAAD6+C,GAA2B,IAGrBijG,EAHKD,EAAgBhjG,EAAhBgjG,UACDn2J,EAAiEsU,EAAjEtU,aAAcC,EAAmDqU,EAAnDrU,cAAeC,EAAoCoU,EAApCpU,eAAgBC,EAAoBmU,EAApBnU,gBAGrDi2J,EAAe,CACb34J,KAAM,YACNuC,aAAcA,EACdC,cAAeA,EACfC,eAAgBA,EAChBC,gBAAiB,CACfE,QARyBF,EAArBE,QASJC,QATyBH,EAAZG,UAYjB+1E,EAASxpC,KAA6BwpH,yBAAyB,CAAEv5J,UAAWA,EAAWouC,QAASkrH,KAChGr8D,IACAo8D,KAEF,CAACp8D,EAAa/5F,EAAcA,EAAcC,EAAeC,EAAgBG,EAASC,EAAS+1E,IAG7F,OACEz3C,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAQwsD,cAAekvE,EAA8BrvE,SAAUA,EAAU3hC,SAtCxD,SAACj4C,GAAsC,IAIwBwtB,EAHxE9hC,EAAiEsU,EAAjEtU,aAAcC,EAAmDqU,EAAnDrU,cAAeC,EAAoCoU,EAApCpU,eAAgBC,EAAoBmU,EAApBnU,gBAC7CE,EAAqBF,EAArBE,QAASC,EAAYH,EAAZG,QAEjB,IAAKN,IAAiBC,IAAkBC,IAAmBG,IAAYC,EACrE,OAAAwhC,EAAA,GAAA72B,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,eACoB6wH,GAAiB3yJ,IADrCiL,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,gBAEqB6wH,GAAiB1yJ,IAFtCgL,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,iBAGsB6wH,GAAiBzyJ,IAHvC+K,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,0BAI+B6wH,GAAiBtyJ,IAJhD4K,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,0BAK+B6wH,GAAiBryJ,IALhDwhC,IAkCC,SAAAo6D,GAAA,IAAGzN,EAAHyN,EAAGzN,aAAc0nE,EAAjBj6D,EAAiBi6D,UAAjB,OACCv3H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,8CAGFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,QAAMrhC,GAAG,kBAAkB0wF,SAAUO,EAAcvuD,UAAU,mBAC3DtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXj6J,GAAG,eACHsC,QAASuH,IACTswJ,sBAAsB,qBAG1B/4H,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,4FAIAtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXj6J,GAAG,gBACHsC,QAASmI,IACT0vJ,sBAAsB,oBACtBj3H,MAAM,MAGV9B,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,wFAIAtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXj6J,GAAG,iBACHsC,QAASmI,IACT0vJ,sBAAsB,uBAG1B/4H,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,oFAIAtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWqoE,KAAqBj6J,GAAG,0BAA0BsC,QAAS6I,OAE/Ei2B,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,mDAEAtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWqoE,KAAqBj6J,GAAG,0BAA0BsC,QAASyI,OAE/Eq2B,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,qDAGJtB,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CACEC,QAAQ,YACRnvD,QAAS,WACP81H,IACAp8D,MAJJ,UASAn7D,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,KAAjE,eC3HCkpJ,GAIR,SAAAvgI,GAA2B,IAAxBqwD,EAAwBrwD,EAAxBqwD,KAAMyM,EAAkB98D,EAAlB88D,YACN1jB,EAAW0E,cAEXj+E,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEif,SAASy+B,SAAW19C,EAAEif,SAASy+B,QAAQx3B,YAE3E4rC,EAAW7sD,sBACf,SAAC/sB,EAADwtB,GAA2B,IAAhBq0H,EAAgBr0H,EAAhBq0H,UACDx2J,EAAyC2U,EAAzC3U,MAAOD,EAAkC4U,EAAlC5U,cAAe+9J,EAAmBnpJ,EAAnBmpJ,eAE1BrH,EAAe,CACjB34J,KAAM,aACN+B,WAAWyL,OAAA2tB,EAAA,EAAA3tB,CAAA,MAAApE,OACL42J,GAAmB,CACrB99J,QACAD,cAAeC,IAAU6G,KAAmBwC,KAAO,KAAOtJ,KAKhE22E,EAASxpC,KAA6BwpH,yBAAyB,CAAEv5J,UAAWA,EAAWouC,QAASkrH,KAChGD,IACAp8D,KAEF,CAACA,IA+BG2jE,EAAsE,CAC1ED,oBAAgBtiK,EAChBwE,WAAOxE,EACPuE,mBAAevE,GAGjB,OACEyjC,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAQwsD,cAAeqvE,EAAoCxvE,SAAUA,EAAU3hC,SAnC9D,SAACj4C,GAA4C,IAShC4nF,EARtBuhE,EAAyCnpJ,EAAzCmpJ,eAAgB99J,EAAyB2U,EAAzB3U,MAAOD,EAAkB4U,EAAlB5U,cAE/B,OAAK+9J,EAMDA,IAAmB99J,GACrBu8F,EAAA,GAAAjxF,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,QACay2D,GAAiBhzJ,IAD9BsL,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,gBAEqBy2D,GAAiBjzJ,IAFtCw8F,GAKEuhE,GAAkB99J,GAASA,IAAU6G,KAAmBwC,OAAStJ,OAArE,EAII+9J,GAAkB99J,IAAUD,EACvBuL,OAAA2tB,EAAA,EAAA3tB,CAAA,mBACc0nJ,GAAiBjzJ,IAIjC,GArBEuL,OAAA2tB,EAAA,EAAA3tB,CAAA,oBACe0nJ,GAAiB8K,MA+BtC,SAAAtY,GAAA,IAAG7wI,EAAH6wI,EAAG7wI,OAAQm6E,EAAX02D,EAAW12D,aAAc0nE,EAAzBhR,EAAyBgR,UAAzB,OACCv3H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,yCAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,gBAAd,2BACAtB,EAAA1P,EAAA2P,cAAA,QAAMrhC,GAAG,mBAAmB0wF,SAAUO,GACpC7vD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAWiB,UAAU,mBACnBtB,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXj6J,GAAE,iBACFsC,QAASiH,IACT25B,MAAO,oBAGT9B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXj6J,GAAE,QACFsC,QAASiJ,IACT23B,MAAO,UAERpsB,EAAO3U,QAAU6G,KAAmBwC,MACnC41B,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXj6J,GAAI,gBACJsC,QAASuJ,IACTq3B,MAAO,oBAGX9B,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,8HAQRtB,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CACEC,QAAQ,YACRnvD,QAAS,WACP81H,IACAp8D,MAJJ,UASAn7D,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,KAAjE,eCtGCqpJ,GAAgBC,YApBuD,SAAA3gI,GAA0B,IAAvBggE,EAAuBhgE,EAAvBggE,MAAO4gE,EAAgB5gI,EAAhB4gI,UACpFC,EAAqBC,eAArBD,iBAEFrtI,EAAQuN,kBAAQ,WACpB,IAAMugE,EAAOs/D,EAAUC,EAAiB,CAAEtgK,GAAE,aAAAqJ,OAAeo2F,MAC3D,OAAO97D,IAAExI,SAAS4lE,GAAQA,EAAnB,UAAA13F,OAAoCo2F,EAApC,MACN,CAACA,EAAO4gE,EAAWC,IAEtB,OACEl/H,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,aAAazP,MAAOA,GAClCmO,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAS,+CAAAr5B,OAAiDo2F,IAC9Dr+D,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAS,uBAAAr5B,OAAyBo2F,SCEhC+gE,GAGR,SAAA/gI,GAA2B,IAAxBqwD,EAAwBrwD,EAAxBqwD,KAAMyM,EAAkB98D,EAAlB88D,YACN1jB,EAAW0E,cAEXj+E,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEif,SAASy+B,SAAW19C,EAAEif,SAASy+B,QAAQx3B,YAC3EozC,EAA2Blc,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBwlB,yBAAyB75C,UAC5Fv8C,EAAkEo2F,EAAlEp2F,wBALsB2+J,EAK4CvoE,EAAzCv1F,gBAAmBI,EALtB09J,EAKsB19J,UAAWH,EALjC69J,EAKiC79J,KACzD89J,EAA8D,CAClE5+J,wBAAyBA,GAAoD,GAC7Ea,gBAAiB,CACfI,UAAWA,GAAwB,GACnCH,KAAMA,GAAc,KAiBlB8tF,EAAW7sD,sBACf,SAAC/sB,EAAD6+C,GAA2B,IAAhBgjG,EAAgBhjG,EAAhBgjG,UACD72J,EAA6CgV,EAA7ChV,wBAAyBa,EAAoBmU,EAApBnU,gBACzBC,EAAoBD,EAApBC,KAAMG,EAAcJ,EAAdI,UACV61J,EAAe,CACjB34J,KAAM,cACN0C,gBAAiB,CACfC,OACAG,aAEFjB,2BAGF,GACEA,IAA4Bo2F,EAAyBp2F,yBACrDc,IAASs1F,EAAyBv1F,gBAAgBC,MAClDG,IAAcm1F,EAAyBv1F,gBAAgBI,UAIvD,OAFA41J,SACAp8D,IAIF1jB,EAASxpC,KAA6BwpH,yBAAyB,CAAEv5J,UAAWA,EAAWouC,QAASkrH,KAEhGD,IACAp8D,KAEF,CAACA,IAGH,OACEn7D,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAQwsD,cAAe6vE,EAAgChwE,SAAUA,EAAU3hC,SA7C1D,SAACj4C,GAAwC,IAILwtB,EAH7CxiC,EAA6CgV,EAA7ChV,wBAAyBa,EAAoBmU,EAApBnU,gBACzBI,EAAoBJ,EAApBI,UAAWH,EAASD,EAATC,KAEnB,IAAKd,IAA4Bc,IAASG,EACxC,OAAAuhC,EAAA,GAAA72B,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,0BAC+B6wH,GAAiBrzJ,IADhD2L,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,uBAE4B6wH,GAAiBvyJ,IAF7C6K,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,4BAGiC6wH,GAAiBpyJ,IAHlDuhC,IAyCC,SAAAo6D,GAAA,IAAGzN,EAAHyN,EAAGzN,aAAcn6E,EAAjB4nF,EAAiB5nF,OAAQ6hJ,EAAzBj6D,EAAyBi6D,UAAzB,OACCv3H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,8CAGFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,QAAMrhC,GAAG,oBAAoB0wF,SAAUO,EAAcvuD,UAAU,qBAC7DtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAAA,kCACAD,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAW+uE,IACX3gK,GAAG,0BACHsC,QAASqhC,IAAEnH,IAAIzyB,IAA6B,SAAAgsF,GAAC,MAAK,CAChD33D,MAAO23D,EACPkL,KAAM7/D,EAAA1P,EAAA2P,cAAC8+H,GAAD,CAAe1gE,MAAOo8D,GAAuC9lE,QAErEv1F,KAAK,QACLkiC,UAAU,yBACVk+H,aAAc,SAACC,GAAD,OACZz/H,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,YAAOw/H,EAAIziI,MAAQyiI,EAAIziI,MAAM/U,QAAQ,WAAY,OAAOC,OAAS,aACjE8X,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,eRAc,SAACliC,GACnD,OAAQA,GACN,KAAKoI,KAAwBoB,oBAC3B,OAAOnB,KAA+BmB,oBACxC,KAAKpB,KAAwBqB,OAC3B,OAAOpB,KAA+BoB,OACxC,KAAKrB,KAAwBsB,OAC3B,OAAOrB,KAA+BqB,OACxC,KAAKtB,KAAwBuB,gBAC3B,OAAOtB,KAA+BsB,gBACxC,KAAKvB,KAAwBwB,YAC3B,OAAOvB,KAA+BuB,YACxC,QACE,MAAM,IAAIqxB,MAAM,oCAAsCj7B,IQbPsgK,CAAqCD,EAAIziI,YAI9EgD,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,qCACoC,gBAAnCvqB,EAAOhV,yBACNs/B,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWqoE,KAAqBj6J,GAAG,uBAAuBsC,QAAS4J,MAExC,gBAAnC4K,EAAOhV,yBACNs/B,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWqoE,KAAqBj6J,GAAG,uBAAuBsC,QAAS,CAACkG,KAAkB6D,QAG/F+0B,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWqoE,KAAqBj6J,GAAG,4BAA4BsC,QAAS+H,MAC/E+2B,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,mDACAtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,+FAMNtB,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CACEC,QAAQ,YACRnvD,QAAS,WACP81H,IACAp8D,MAJJ,UASAn7D,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,KAAjE,yBCvGCiqJ,GAA0D,SAAAthI,GAUjE,IATJngC,EASImgC,EATJngC,UACA0hK,EAQIvhI,EARJuhI,qBACA3yF,EAOI5uC,EAPJ4uC,aACAv+C,EAMI2P,EANJ3P,YACA0oI,EAKI/4H,EALJ+4H,mBACAyI,EAIIxhI,EAJJwhI,qBACAC,EAGIzhI,EAHJyhI,gBACAniE,EAEIt/D,EAFJs/D,SACAt3F,EACIg4B,EADJh4B,QAGMg1C,EAAMqoE,cAFR3pC,EAK8CC,oBAAkB,GALhEC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAKGgmF,EALH9lF,EAAA,GAKsB+lF,EALtB/lF,EAAA,GAAAuhB,EAM4BxhB,mBAAiB,IAN7CyhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAMGykE,EANHxkE,EAAA,GAMaykE,EANbzkE,EAAA,GAAAG,EAOsC5hB,oBAAkB,GAPxD6hB,EAAAxvF,OAAAqoD,EAAA,EAAAroD,CAAAuvF,EAAA,GAOGukE,EAPHtkE,EAAA,GAOkBukE,EAPlBvkE,EAAA,GAAAG,EAQwBhiB,mBAAsB,IAR9CiiB,EAAA5vF,OAAAqoD,EAAA,EAAAroD,CAAA2vF,EAAA,GAQG5hE,EARH6hE,EAAA,GAQWokE,EARXpkE,EAAA,GASEqkE,GACHrzF,IAAiBp/D,IAA2B0yJ,gBAC3CtzF,IAAiBp/D,IAA2B2yJ,cAC9Cn6J,IAAYpK,KAAYwkK,IAGpBC,EAAwBj+H,sBAAY,SAACyS,GAEX,IAA1BA,EAASjyC,cACX+8J,GAAqB,GACrBK,EAAU,CACR,CACEp1I,QAASuD,KAAc0mB,EAASjyC,cAAcyrB,YAC9C7G,KAAM2G,KAAc0mB,EAASjyC,cAAc1E,UAK/C6hK,GAAiB,GACjBR,EAAqB1qH,EAASwC,QAAS0/G,EAAoBnqF,GAC3DozF,EAAU,MAEX,IAEGM,EAAWL,EAAc,EAAI,EAjC/BM,EAoCoCC,aAAY,CAClDC,OAAQ,WACNd,GAAqB,IAEvBe,eAAgB,SAAAC,GAEdd,EAAYc,EAAc,GAAGziK,MACxBshK,EAmBMA,GAAwBC,IAC7BQ,EACFjlH,EAAIu2B,WAAWK,UACZgvF,OAAOD,EAAc,GAAI9iK,EAAW4hK,EAAiB7yF,EAAcv+C,GACnE4qB,KAAK,SAAApE,GACJwrH,EAAsBxrH,GACtBmG,EAAIu2B,WAAWK,UACZgvF,OAAOD,EAAc,GAAI9iK,EAAW4hK,EAAiB7yF,EAAcv+C,GACnE4qB,KAAK,SAAApE,GACJwrH,EAAsBxrH,OAI9BmG,EAAIu2B,WAAWK,UACZgvF,OAAOD,EAAc,GAAI9iK,EAAW4hK,EAAiB7yF,EAAcv+C,GACnE4qB,KAAK,SAAApE,GACJwrH,EAAsBxrH,MAlCxBorH,EACFjlH,EAAIi2B,kBACD4vF,4BAA4BF,EAAc,GAAI9iK,EAAW+uE,EAAcv+C,GACvE4qB,KAAK,SAAApE,GACJwrH,EAAsBxrH,GACtBmG,EAAIi2B,kBACD4vF,4BAA4BF,EAAc,GAAI9iK,EAAW+uE,EAAcv+C,GACvE4qB,KAAK,SAAApE,GACJwrH,EAAsBxrH,OAI9BmG,EAAIi2B,kBACD4vF,4BAA4BF,EAAc,GAAI9iK,EAAW+uE,EAAcv+C,GACvE4qB,KAAK,SAAApE,GACJwrH,EAAsBxrH,MAyBhCisH,eAAgB,SAAAC,GACdpB,GAAqB,GACrBK,EAAUe,EAAe,GAAGhnI,SAE9BinI,QAAS,SACTV,SAAUA,EACVW,OAAQ,iFAtDFC,EApCJX,EAoCIW,aAAcC,EApClBZ,EAoCkBY,cAyDtB,OACExhI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACIigI,EA6BAngI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,YACED,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,qCADf,iCACmF2+H,GAEnFjgI,EAAA1P,EAAA2P,cAAA,YAjCFD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,MAASshI,IACPvhI,EAAA1P,EAAA2P,cAAA,QAAWuhI,KACTzB,EAiBA//H,EAAA1P,EAAA2P,cAAA,YACED,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,sCAAuC,IACpDtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAMzhC,GAAI,gCAAiCQ,KAAM,WAlBnD4gC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQgN,SAAUA,GAChB39D,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,qBADf,oBAGCg/H,GACCtgI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAhB,2GAwBblH,EAAO+F,OAAS,GACfH,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UACbtB,EAAA1P,EAAA2P,cAAA,UACG7F,EAAOgB,IAAI,SAACpQ,EAAOy2I,GAAR,OACVzhI,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,QAAQtZ,IAAG,SAAA/f,OAAWw5J,IACjCz2I,EAAMC,eCpLVy2I,GAAa,WACxB,IAAMplK,EAAgBs+E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQ5+E,gBAEtD,OAAKA,EAIEA,EAAcw9B,SAAS,QAAU79B,KAAYwkK,IAAMxkK,KAAY0lK,KAH7D,+CCwBEC,GAAsB,SAACnhK,GAClC,OAAQA,GACN,IAAK,cACH,MAAO,iBACT,IAAK,wBACH,MAAO,gCACT,IAAK,4BACH,MAAO,8CACT,IAAK,yBACH,MAAO,2DACT,IAAK,kCACH,MAAO,kFACT,QACE,OAAOA,EAAcwnB,QAAQ,WAAY,OAAOC,SAIzC25I,GAGR,SAAAxjI,GAA2B,IAAxBqwD,EAAwBrwD,EAAxBqwD,KAAMyM,EAAkB98D,EAAlB88D,YAEN1jB,EAAW0E,cAGXj+E,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEif,SAASy+B,SAAW19C,EAAEif,SAASy+B,QAAQx3B,YAC3EozC,EAA2Blc,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBwlB,yBAAyB75C,UAC5F15C,EAAmBuzF,EAAnBvzF,eAPsBw2E,EAUoBC,mBAAmB,IAVvCC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAUvB+nF,EAVuB7nF,EAAA,GAUJ8nF,EAVI9nF,EAAA,GAAAuhB,EAWGxhB,mBAA+D,IAXlEyhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAWvBwmE,EAXuBvmE,EAAA,GAWZwmE,EAXYxmE,EAAA,GAYxBymE,EAIA,GAhBwBtmE,EAiBgB5hB,mBAAiB,GAjBjC6hB,EAAAxvF,OAAAqoD,EAAA,EAAAroD,CAAAuvF,EAAA,GAiBvBumE,EAjBuBtmE,EAAA,GAiBNumE,EAjBMvmE,EAAA,GAoBxB+jE,EAAuB,SAC3B78J,EACAq0J,EACAnqF,GAEIlqE,IACFk/J,EAAW,GAAAh6J,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAK21J,GAAL,CAAgB,CAAE5K,qBAAoBr0J,iBACjDm/J,EAAYvgH,KAAK,CAAE5+C,aAAYq0J,qBAAoBnqF,iBACnDm1F,EAAmB,SAAAD,GAAe,OAAIA,EAAkB,MAMtDE,EAAyB5/H,sBAC7B,SAAC6/H,GACCP,EAAoB,GAAA95J,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAKy1J,GAAL,CAAwBQ,MAE9C,CAACR,IAIGS,EAA8B9/H,sBAClC,SAAC6/H,GAEC,IAAK//H,IAAEzI,SAASgoI,EAAmBQ,GACjC,OAAO32J,KAIX,CAACm2J,IAIGz7J,EAAUq7J,KAOVc,EAA0B,SAACC,GAC/B,MAAmB,QAAfA,GAiBAC,EARsBn/J,EAAeq6B,OACvC,SAAAyf,GAAM,OAAIA,EAAO79C,qBAAuBqY,KAAQkP,wBAE5BoZ,OAAS,EAa3BwiI,EAAwD,CAC5DliK,mBAAelE,EACfkH,WAAY,CACViB,OAAQ,OAwCN4qF,EAAW7sD,sBACf,SAAC/sB,EAADixI,GAA2B,IAErB6Q,EAFKD,EAAgB5Q,EAAhB4Q,UACD92J,EAAkBiV,EAAlBjV,cA2BR,GAzBA+2J,EAAe,CACb34J,KAAM,YACN4B,gBACAgD,WAAY,CACViB,OAAQ89J,EAAwB9sJ,EAAOjS,WAAWiB,UAIlDg+J,IACFlL,EAAe,CACb34J,KAAM,YACN4B,gBACAgD,WAAY,CACViB,OAAQ89J,EAAwB9sJ,EAAOjS,WAAWiB,SAEpD5B,kBAAmBo/J,EAAY9mI,IAAI,SAAAwnI,GACjC,MAAO,CACL5jK,cAAe4jK,EAAIxL,mBACnBr0J,WAAY6/J,EAAI7/J,WAChBC,aAAc4/J,EAAI31F,kBAMtBxsE,IAAkBq2F,EAAyBr2F,cAG7C,OAFA82J,SACAp8D,IAIF1jB,EAASxpC,KAA6BwpH,yBAAyB,CAAEv5J,UAAWA,EAAWouC,QAASkrH,KAChGD,IACAp8D,KAEF,CAACA,IAGH,OACEn7D,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAQwsD,cAAekzE,EAA4BrzE,SAAUA,EAAU3hC,SA9EtD,SAACj4C,GAAsC,IAChDjV,EAA8BiV,EAA9BjV,cACAiE,EAD8BgR,EAAfjS,WACfiB,OAER,OAAKjE,EAKDA,IAAkByH,KAAcmD,aAAgB3G,EAMhDjE,IAAkByH,KAAcmD,aAAe3G,GAAUA,IAAWyG,IAAkBS,IACjFS,OAAA2tB,EAAA,EAAA3tB,CAAA,uBACkB4nJ,IAAgB,IAIvCyO,GAA+C,UAAlC5rE,EAAyB13F,MAAoB+iK,EAAkB,EACvE91J,OAAA2tB,EAAA,EAAA3tB,CAAA,qBACgBooJ,IAAe,IAIpCiO,GAA+C,UAAlC5rE,EAAyB13F,MAAoB+iK,EAAkB,EACvE91J,OAAA2tB,EAAA,EAAA3tB,CAAA,uBACkBooJ,IAAe,SAF1C,EAjBSpoJ,OAAA2tB,EAAA,EAAA3tB,CAAA,uBACkB0nJ,GAAiBrvJ,IANnC2H,OAAA2tB,EAAA,EAAA3tB,CAAA,mBACc0nJ,GAAiBtzJ,MAyErC,SAAA2mJ,GAAA,IAAGv3D,EAAHu3D,EAAGv3D,aAAcn6E,EAAjB0xI,EAAiB1xI,OAAQ0kB,EAAzBgtH,EAAyBhtH,OAAQ6hI,EAAjC7U,EAAiC6U,YAAa1E,EAA9CnQ,EAA8CmQ,UAA9C,OACCv3H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,8CAGFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,QAAMrhC,GAAG,sBAAsB0wF,SAAUO,EAAcvuD,UAAU,mBAC/DtB,EAAA1P,EAAA2P,cAAA,+BACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAW+uE,IACX3gK,GAAG,gBACHsC,QAASqhC,IAAEnH,IAAIhwB,IAAmB,SAAAupF,GAAC,MAAK,CACtC33D,MAAO23D,EACPkL,KAAM7/D,EAAA1P,EAAA2P,cAAC8+H,GAAD,CAAe1gE,MAAOg8D,GAA6B1lE,QAE3Dv1F,KAAK,QACLkiC,UAAU,yBACVk+H,aAAc,SAACC,GAAD,OACZz/H,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,YAAOw/H,EAAIziI,MAAQ4kI,GAAoBnC,EAAIziI,OAAS,iBAI1DgD,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,gNAIAtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,+FAID5rB,EAAOjV,eAAiBiV,EAAOjV,gBAAkByH,KAAcmD,aAC9D20B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEiB,UAAU,OACVmxC,KAAMpsE,IAAYpK,KAAY0lK,KA1JrC,sFACG,wFA0JIlgI,QAAS,kBAAM4gI,EAAuB,YAEtCriI,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,oBALf,qBAMgB,KAElBtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAE,oBACFsC,QAASyK,IACTm3J,gBAAiBP,EAA4B,UAC7C5/H,eAAe,iBAKtBjtB,EAAOjV,eAAiBiiK,GACvB1iI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,iLAIClH,EAAOt3B,qBAAuBm5J,GAC7Bj8H,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,SACdtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAMzhC,GAAI,oBAAqBmkK,QAAO,YAAe3jK,KAAM,WAE7D4gC,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,YAGH18B,EAAe63B,IAAI,SAACiiB,EAAQnrB,GAAT,OAClB8N,EAAA1P,EAAA2P,cAAA,OAAKjY,IAAKkK,GACR8N,EAAA1P,EAAA2P,cAAA,UACGod,EAAOx7C,UADV,IACsBw7C,EAAOv7C,eAAiB,GAD9C,IACmDu7C,EAAOt7C,SAD1D,IACqEs7C,EAAOr7C,QAAU,IAEtFg+B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAAA,SAAOqB,UAAU,eAAjB,mBACAtB,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWmvE,GACX/gK,GAAE,mBAAAqJ,OAAqBiqB,GACvBh0B,UAAWA,EACXk5J,mBAAoBllI,EACpBxD,YAAa,iBACbu+C,aAAcp/D,IAA2Bm1J,eACzCpD,qBAAsBA,EACtBv5J,QAASA,IAEX25B,EAAA1P,EAAA2P,cAAA,SAAOqB,UAAU,eAAjB,iBACAtB,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWmvE,GACX/gK,GAAE,mBAAAqJ,OAAqBiqB,GACvBh0B,UAAWA,EACXk5J,mBAAoBllI,EACpBxD,YAAa,eACbu+C,aAAcp/D,IAA2Bo1J,aACzCrD,qBAAsBA,EACtBv5J,QAASA,QAKjB25B,EAAA1P,EAAA2P,cAAA,cAKRD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CACEC,QAAQ,YACRnvD,QAAS,WACP81H,IACAp8D,MAJJ,UASAn7D,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,KAAjE,eCrTCwtJ,GAGR,SAAA7kI,GAA2B,IAAxBqwD,EAAwBrwD,EAAxBqwD,KAAMyM,EAAkB98D,EAAlB88D,YAEN1jB,EAAW0E,cAFapC,EAKoBC,mBAAmB,IALvCC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAKvB+nF,EALuB7nF,EAAA,GAKJ8nF,EALI9nF,EAAA,GAAAuhB,EAMGxhB,mBAA+D,IANlEyhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAMvBwmE,EANuBvmE,EAAA,GAMZwmE,EANYxmE,EAAA,GAAAG,EAOgB5hB,mBAAiB,GAPjC6hB,EAAAxvF,OAAAqoD,EAAA,EAAAroD,CAAAuvF,EAAA,GAOvBumE,EAPuBtmE,EAAA,GAONumE,EAPMvmE,EAAA,GAUxBqmE,EAIA,GAGAtC,EAAuB,SAC3B78J,EACAq0J,EACAnqF,GAEIlqE,IACFk/J,EAAW,GAAAh6J,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAK21J,GAAL,CAAgB,CAAE5K,qBAAoBr0J,iBACjDm/J,EAAYvgH,KAAK,CAAE5+C,aAAYq0J,qBAAoBnqF,iBACnDm1F,EAAmB,SAAAD,GAAe,OAAIA,EAAkB,MAMtDE,EAAyB5/H,sBAC7B,SAAC6/H,GACCP,EAAoB,GAAA95J,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAKy1J,GAAL,CAAwBQ,MAE9C,CAACR,IAIGS,EAA8B9/H,sBAClC,SAAC6/H,GAEC,IAAK//H,IAAEzI,SAASgoI,EAAmBQ,GACjC,OAAO32J,KAIX,CAACm2J,IAIGz7J,EAAUq7J,KAQVxjK,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEif,SAASy+B,SAAW19C,EAAEif,SAASy+B,QAAQx3B,YAC3E6yC,EAAiB3b,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBwlB,yBAAyB75C,UAClF15C,EAAmBgzF,EAAnBhzF,eAEF83C,EAAMqoE,cA/DkBinB,EAgE4BxzD,IAAM6C,SAAwB,MAhE1D6wD,EAAAx+H,OAAAqoD,EAAA,EAAAroD,CAAAs+H,EAAA,GAgEvBw4B,EAhEuBt4B,EAAA,GAgEAu4B,EAhEAv4B,EAAA,GAkExBw4B,EAAsC5gI,sBAAY,SAACyS,GACzB,IAA1BA,EAASjyC,cACXmgK,EAAyBluH,EAASwC,QAAQ,KAI3C,IASGirH,EAA6D,CACjEniK,qBAAiBjE,EACjBkH,WAAY,CACVgB,OAAQ,OAIN+9J,EAA0B,SAACC,GAC/B,MAAmB,QAAfA,GAkBAC,EATsBn/J,EAAeq6B,OACvC,SAAAyf,GAAM,OAAIA,EAAO79C,qBAAuBqY,KAAQkP,wBAE5BoZ,OAAS,EAS3BmvD,EAAW7sD,sBACf,SAAC/sB,EAADwtB,GAA2B,IAErBs0H,EAFKD,EAAgBr0H,EAAhBq0H,UACD/2J,EAAoBkV,EAApBlV,gBA6BR,GA3BAg3J,EAAe,CACb34J,KAAM,cACN2B,kBACAiD,WAAY,CACVgB,OAAQ+9J,EAAwB9sJ,EAAOjS,WAAWgB,UAKlDi+J,IACFlL,EAAe,CACb34J,KAAM,cACN2B,kBACAiD,WAAY,CACVgB,OAAQ+9J,EAAwB9sJ,EAAOjS,WAAWgB,SAEpD3B,kBAAmBo/J,EAAY9mI,IAAI,SAAAwnI,GACjC,MAAO,CACL5jK,cAAe4jK,EAAIxL,mBACnBr0J,WAAY6/J,EAAI7/J,WAChBC,aAAc4/J,EAAI31F,kBAOtBzsE,IAAoB+1F,EAAe/1F,gBAGrC,OAFA+2J,SACAp8D,IAKF1jB,EAASxpC,KAA6BwpH,yBAAyB,CAAEv5J,UAAWA,EAAWouC,QAASkrH,KAGhGD,IACAp8D,KAEF,CAACA,IA8FH,OACEn7D,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAQwsD,cAAekzE,EAA4BrzE,SAAUA,EAAU3hC,SA3FtD,SAACj4C,GAA2C,IAKvD4tJ,EAJE9iK,EAAgCkV,EAAhClV,gBACAiE,EADgCiR,EAAfjS,WACjBgB,OAEJiR,EAAOlV,kBAYmB,eAAxB+1F,EAAen3F,MAA0BsjK,IAC3CY,EAAgB,CACdC,kBAAmBrlK,EACnBsC,gBAAiBkV,EAAOlV,gBACxBgjK,mBAAoBjgK,EAAe,GAAGlB,UACtC6D,sBAAuBqwF,EAAerwF,sBAAwBqwF,EAAerwF,sBAAwB,KACrG9G,KAAMm3F,EAAen3F,MAGvBi8C,EAAIhiB,YAAYk0C,sBAAsB+1F,GAAehqH,KAAK,SAAApE,GACxDmuH,EAAoCnuH,MAGX,UAAxBqhD,EAAen3F,MAA4C,SAAxBm3F,EAAen3F,MAAqBsjK,IAC1EY,EAAgB,CACdC,kBAAmBrlK,EACnBsC,gBAAiBkV,EAAOlV,gBACxBgjK,mBAAoBjgK,EAAe,GAAGlB,UACtCohK,qBAAsBlgK,EAAe,GAAGlB,UACxC6D,sBAAuBqwF,EAAerwF,sBAAwBqwF,EAAerwF,sBAAwB,KACrG9G,KAAMm3F,EAAen3F,MAGvBi8C,EAAIhiB,YAAYk0C,sBAAsB+1F,GAAehqH,KAAK,SAAApE,GACxDmuH,EAAoCnuH,OAK1C,OAAK10C,GAKAkiK,GAAaS,EACT92J,OAAA2tB,EAAA,EAAA3tB,CAAA,qBACgB82J,QAAgD5mK,GAGrEiE,IAAoB2M,KAAgBO,QAAWjJ,EAM/CjE,IAAoB2M,KAAgBO,QAAUjJ,GAAUA,IAAW0G,IAAkBS,IAChFS,OAAA2tB,EAAA,EAAA3tB,CAAA,uBACkB4nJ,IAAgB,IAIvCyO,GAAqC,UAAxBnsE,EAAen3F,MAAoB+iK,EAAkB,EAC7D91J,OAAA2tB,EAAA,EAAA3tB,CAAA,qBACgBooJ,IAAe,IAIpCiO,GAAqC,UAAxBnsE,EAAen3F,MAAoB+iK,EAAkB,EAC7D91J,OAAA2tB,EAAA,EAAA3tB,CAAA,uBACkBooJ,IAAe,SAF1C,EAjBSpoJ,OAAA2tB,EAAA,EAAA3tB,CAAA,uBACkB0nJ,GAAiBtvJ,IAXnC4H,OAAA2tB,EAAA,EAAA3tB,CAAA,qBACgB0nJ,GAAiBvzJ,MA6CvC,SAAA8mJ,GAAA,IAAGz3D,EAAHy3D,EAAGz3D,aAAcn6E,EAAjB4xI,EAAiB5xI,OAAQ0kB,EAAzBktH,EAAyBltH,OAAQ6hI,EAAjC3U,EAAiC2U,YAAa1E,EAA9CjQ,EAA8CiQ,UAA9C,OACCv3H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,8CAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,QAAMrhC,GAAG,aAAa0wF,SAAUO,GAC9B7vD,EAAA1P,EAAA2P,cAAA,iCACAD,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,iDACAtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,uEACAtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,2KAIAtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWqyE,KAAcjkK,GAAG,kBAAkBsC,QAASuM,OAGpC,WAA3BiI,EAAOlV,iBACNw/B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEiB,UAAU,OACVmxC,KAAMpsE,IAAYpK,KAAY0lK,KA1NrC,8EACG,iGA0NIlgI,QAAS,kBAAM4gI,EAAuB,YAEtCriI,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,oBALf,qBAMgB,KAElBtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAE,oBACFsC,QAASyK,IACTm3J,gBAAiBP,EAA4B,UAC7C5/H,eAAe,iBAKtBjtB,EAAOlV,iBAAmBkiK,GACzB1iI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,2KAIClH,EAAOt3B,qBAAuBm5J,GAC7Bj8H,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,SACdtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAMzhC,GAAI,oBAAqBmkK,QAAO,YAAe3jK,KAAM,WAE7D4gC,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,YAGH18B,EAAe63B,IAAI,SAACiiB,EAAQnrB,GAAT,OAClB8N,EAAA1P,EAAA2P,cAAA,OAAKjY,IAAKkK,GACR8N,EAAA1P,EAAA2P,cAAA,UACGod,EAAOx7C,UADV,IACsBw7C,EAAOv7C,eAAiB,GAD9C,IACmDu7C,EAAOt7C,SAD1D,IACqEs7C,EAAOr7C,QAAU,IAEtFg+B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAAA,SAAOqB,UAAU,eAAjB,mBACAtB,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWmvE,GACX/gK,GAAE,mBAAAqJ,OAAqBiqB,GACvBh0B,UAAWA,EACXk5J,mBAAoBllI,EACpBxD,YAAa,iBACbu+C,aAAcp/D,IAA2Bm1J,eACzCpD,qBAAsBA,EACtBv5J,QAASA,IAEX25B,EAAA1P,EAAA2P,cAAA,SAAOqB,UAAU,eAAjB,iBACAtB,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWmvE,GACX/gK,GAAE,mBAAAqJ,OAAqBiqB,GACvBh0B,UAAWA,EACXk5J,mBAAoBllI,EACpBxD,YAAa,eACbu+C,aAAcp/D,IAA2Bo1J,aACzCrD,qBAAsBA,EACtBv5J,QAASA,QAKjB25B,EAAA1P,EAAA2P,cAAA,cAKRD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CACEC,QAAQ,YACRnvD,QAAS,WACP81H,IACAp8D,MAJJ,UASAn7D,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,KAAjE,eC/WCguJ,GAAgD,WAC3D,IAAM5sE,EAA2Blc,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBwlB,yBAAyB75C,UAC9F4wC,EAAajT,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBwlB,yBAAyBjJ,aAChF81E,EAAmB/oF,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBilB,eAAehR,WAHjBlnD,EAc7Dy4D,GAA4B94F,KAT9BuD,EAL+D88B,EAK/D98B,gBACAH,EAN+Di9B,EAM/Dj9B,aACAE,EAP+D+8B,EAO/D/8B,eACAD,EAR+Dg9B,EAQ/Dh9B,cACAX,EAT+D29B,EAS/D39B,wBACAE,EAV+Dy9B,EAU/Dz9B,WACAlD,EAX+D2gC,EAW/D3gC,YACA+C,EAZ+D49B,EAY/D59B,cACAD,EAb+D69B,EAa/D79B,gBAEIutG,EAA0BnzB,YAC9B,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQC,uBAAyB39C,EAAE09C,QAAQC,sBAAsBj9E,YAIpEk+J,EAAwBxhF,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBylB,gCAAgCjiE,OAClG8uI,EACJxH,GAAyBA,EAAsBx+H,OAAO,SAAA0+H,GAAC,MAAe,gBAAXA,EAAEz9J,OACzDglK,EAA2BzH,GAAyBA,EAAsBx+H,OAAO,SAAA0+H,GAAC,MAAe,cAAXA,EAAEz9J,OACxFilK,EACJ1H,GAAyBA,EAAsBx+H,OAAO,SAAA0+H,GAAC,MAAe,gBAAXA,EAAEz9J,OACvD2C,EAAsCD,EAAtCC,KAAMC,EAAgCF,EAAhCE,QAASC,EAAuBH,EAAvBG,QAASC,EAAcJ,EAAdI,UAC1BzD,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQh9E,YAE1C2C,EAAiDD,EAAjDC,MAAOK,EAA0CN,EAA1CM,QAASC,EAAiCP,EAAjCO,OAAQH,EAAyBJ,EAAzBI,YAAaC,EAAYL,EAAZK,QACrChC,EAAmBvB,EAAnBuB,QAASgH,EAAUvI,EAAVuI,MA9BgD8zE,EAgCnBC,oBAAS,GAhCUC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAgC1DgqF,EAhC0D9pF,EAAA,GAgCzC+pF,EAhCyC/pF,EAAA,GAAAuhB,EAiCTxhB,oBAAS,GAjCAyhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAiC1DyoE,EAjC0DxoE,EAAA,GAiCpCyoE,EAjCoCzoE,EAAA,GAAAG,EAkCP5hB,oBAAS,GAlCF6hB,EAAAxvF,OAAAqoD,EAAA,EAAAroD,CAAAuvF,EAAA,GAkC1DuoE,EAlC0DtoE,EAAA,GAkCnCuoE,EAlCmCvoE,EAAA,GAAAG,EAmCXhiB,oBAAS,GAnCEiiB,EAAA5vF,OAAAqoD,EAAA,EAAAroD,CAAA2vF,EAAA,GAmC1DqoE,EAnC0DpoE,EAAA,GAmCrCqoE,EAnCqCroE,EAAA,GAAA02B,GAoCC34C,oBAAS,GApCV44C,GAAAvmH,OAAAqoD,EAAA,EAAAroD,CAAAsmH,GAAA,GAoC1D4xC,GApC0D3xC,GAAA,GAoC/B4xC,GApC+B5xC,GAAA,GAqC3D1Z,GAAat+B,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBl0B,OAAOtoB,OArCHyyH,GA2DlCvtE,mBAAS,IA3DyBwtE,GAAAn7I,OAAAqoD,EAAA,EAAAroD,CAAAk7I,GAAA,GA2D1DrhG,GA3D0DshG,GAAA,GA2D/Cid,GA3D+Cjd,GAAA,GAAA0J,GA4D7Bl3E,mBAAS,IA5DoBm3E,GAAA9kJ,OAAAqoD,EAAA,EAAAroD,CAAA6kJ,GAAA,GA4D1DwT,GA5D0DvT,GAAA,GA4D9CwT,GA5D8CxT,GAAA,GA8D3D15E,GAAW0E,cAEjBV,oBAAU,YACHkoF,GAAoBzlK,IACnB6vG,GACFt2B,GAASxpC,KAA6BwvH,sBAAsB,CAAEv/J,UAAW6vG,KACzEt2B,GAASxpC,KAA6ByvH,gCAAgC,CAAEx/J,UAAW6vG,OAEnFt2B,GAASxpC,KAA6BwvH,sBAAsB,CAAEv/J,eAC9Du5E,GAASxpC,KAA6ByvH,gCAAgC,CAAEx/J,kBAG3E,CAACu5E,GAAUv5E,EAAWg7G,GAAYyqD,EAAkB51D,IAEvD,IAAMvK,GAAc,SAACC,GAEnB,OADAA,EAAM9R,iBACE8R,EAAMnB,OAAO1jG,IACnB,IAAK,uBACH6lK,GAAUhhE,EAAMnB,OAAO1jG,IACvBolK,GAAmB,GACnB,MACF,IAAK,kBACHW,GAAclhE,EAAMnB,OAAO1jG,IAC3BslK,GAAwB,GACxB,MACF,IAAK,cACHE,GAAyB,GACzB,MACF,IAAK,gBACHE,GAAuB,GACvB,MACF,IAAK,kBACHE,IAA6B,KAO7BrqI,GAASiF,kBAAQ,WACrB,IAAIw6H,EAA2B,GAkK/B,OAjKI9iE,IACF8iE,EAAS,GAAA3xJ,OAAAoE,OAAA60B,EAAA,EAAA70B,CACJutJ,GADI,CAEP,CACErY,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,yCADf,yBAC+E,IAC7EtB,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,cAAc1iC,GAAG,uBAAuB6iC,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,KAAxF,cAKJniE,UAAW,gBAEb,CACEigH,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,qCADf,oBACsE,IACpEtB,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,cAAc1iC,GAAG,kBAAkB6iC,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,KAAnF,cAKJniE,UAAW,gBAGb,CACEigH,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,iBAEAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQ24H,GAAa74J,OAK3C,CACEmgJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,SACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,kBAA+C,IAC/CtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,eAAeq5H,GAAmB95J,EAAME,QAAe,IACtEF,EAAMC,eACLk/B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,oBAAiD,IACjDtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,eAAes5H,GAAoB/5J,EAAMC,oBAOnE,CACEygJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,mBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQ24H,GAAa54J,IAAuB,OAKlE,CACEkgJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,WACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,kBAA+C,IAC/CtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,eAAeq5H,GAAmBz5J,EAAQH,QAAe,IACxEG,EAAQJ,eACPk/B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,oBAAiD,IACjDtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,eAAes5H,GAAoB15J,EAAQJ,oBAOrE,CACEygJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,oBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQ24H,GAAa34J,IAAwB,OAKnE,CACEigJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,UACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,kBAA+C,IAC/CtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,eAAeq5H,GAAmBx5J,EAAOJ,QAAe,IACvEI,EAAOL,eACNk/B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,oBAAiD,IACjDtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,eAAes5H,GAAoBz5J,EAAOL,oBAOpE,CACEygJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,eAEAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQ84H,GAAiB34J,OAK/C,CACE8/I,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,eACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,kBAA+C,IAC/CtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,eAAeq5H,GAAmB35J,EAAYD,QAAe,IAC5EC,EAAYF,eACXk/B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,oBAAiD,IACjDtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,eAAes5H,GAAoB55J,EAAYF,gBAAuB,QAOhG,CACEygJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,sBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQ5/B,GAAoB,OAAc,OAKhE,CACE6/I,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,WACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,kBAA+C,IAC/CtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,eAAeq5H,GAAmB15J,EAAQF,QACzDE,EAAQH,eACPk/B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,oBAAiD,IACjDtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,eAAes5H,GAAoB35J,EAAQH,oBAOrE,CAAEygJ,MAAO,kBAAM,UAGZqY,GACN,CACDx4J,EACAC,EACAC,EACAZ,EACAc,EACAC,EACAC,EACAC,EACAd,EACAK,EACAC,EACAlC,EACAgH,IAGI2+J,GAAoBxlI,kBAAQ,WAChC,IAAIw6H,EAA2B,GAkI/B,OAjII9iE,IACF8iE,EAAS,GAAA3xJ,OAAAoE,OAAA60B,EAAA,EAAA70B,CACJutJ,GADI,CAEP,CACErY,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,qCADf,2BAC6E,IAC3EtB,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,cAAc1iC,GAAG,cAAc6iC,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,KAA/E,cAKJniE,UAAW,gBAEb,CACEigH,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,mCADf,qBAIFA,UAAW,gBAEb,CACEigH,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,wBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACb5gC,EACGA,EAAwBunB,QAAQ,WAAY,OAAOC,OACnD,sCACE,OAId,CACEq5H,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,uBACuB,IACrBtB,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,cAAc1iC,GAAG,gBAAgB6iC,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,KAAjF,aAIFzjE,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACb7gC,EAAgBmhK,GAAoBnhK,GAAiB,4BAChD,IACRu/B,EAAA1P,EAAA2P,cAAA,WACC4jI,GAA4BA,EAAyB1jI,OAAS,GAC7DH,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,kBACdtB,EAAA1P,EAAA2P,cAAA,qDACAD,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,cACG+9C,KAAM6lF,EAAyBA,EAAyB1jI,OAAS,GAAG29H,YAAYpnH,OAC/E,6BAQd,CACE6qG,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,kBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQ9/B,GAAc,OAAc,OAI1D,CACE+/I,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,eACe,IACbtB,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,cAAc1iC,GAAG,kBAAkB6iC,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,KAAnF,aAKFzjE,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACb9gC,EAAkBA,EAAgBynB,QAAQ,WAAY,OAAOC,OAAS,6BAExE47I,GAA6BA,EAA0B3jI,OAAS,GAC/DH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,kBACdtB,EAAA1P,EAAA2P,cAAA,qDACAD,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,cACG+9C,KAAM8lF,EAA0BA,EAA0B3jI,OAAS,GAAG29H,YAAYpnH,OACjF,8BAShB,CACE6qG,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,wBAEAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACb3/B,EAAYA,EAAUsmB,QAAQ,WAAY,OAAOC,OAAS,iCAG5D07I,GAA6BA,EAA0BzjI,OAAS,GAC/DH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,kBACdtB,EAAA1P,EAAA2P,cAAA,qDACAD,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,cACG+9C,KAAM4lF,EAA0BA,EAA0BzjI,OAAS,GAAG29H,YAAYpnH,OACjF,iCAYbkjH,GACN,CACDj4J,EACAlB,EACAe,EACAhB,EACAE,EACA07J,EACAyH,EACAC,EACAF,IAGF,OAAKD,IAAoB91E,GAAeiJ,EAGtC92D,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uBACbtB,EAAA1P,EAAA2P,cAACg+H,GAAD,CAAcrE,UAAWz/H,MAE3B6F,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uBACbtB,EAAA1P,EAAA2P,cAACg+H,GAAD,CAAcrE,UAAWgL,MAE3B5kI,EAAA1P,EAAA2P,cAAC4kI,GAAD,CAAiB1pE,YA5YK,WACN6oE,GAAlBD,IA2YmDr1E,KAAMq1E,EAAiB79G,UAAWA,KACnFlmB,EAAA1P,EAAA2P,cAAC6kI,GAAD,CACE3pE,YA1YyB,WACN+oE,GAAvBD,IA0YIv1E,KAAMu1E,EACNpF,eAAgB6F,KAElB1kI,EAAA1P,EAAA2P,cAAC8kI,GAAD,CAAmB5pE,YA1YS,WACNipE,GAAxBD,IAyY2Dz1E,KAAMy1E,IAC/DnkI,EAAA1P,EAAA2P,cAAC+kI,GAAD,CAAiB7pE,YAvYS,WACNmpE,GAAtBD,IAsYuD31E,KAAM21E,IAC3DrkI,EAAA1P,EAAA2P,cAACglI,GAAD,CAAuB9pE,YApYS,WACNqpE,IAA5BD,KAmYmE71E,KAAM61E,MAlBFvkI,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,OC7a9D6kI,GAIR,SAAA7mI,GAA+C,IAA5CqwD,EAA4CrwD,EAA5CqwD,KAAMyM,EAAsC98D,EAAtC88D,YAAai8D,EAAyB/4H,EAAzB+4H,mBACnB3/E,EAAW0E,cAEXj+E,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEif,SAASy+B,SAAW19C,EAAEif,SAASy+B,QAAQx3B,YAuD3E4rC,EAAW7sD,sBACf,SAAC/sB,EAADg0H,GAA2B,IAAhB6tB,EAAgB7tB,EAAhB6tB,UAEPr3J,EAMEwV,EANFxV,YACAI,EAKEoV,EALFpV,mCACAH,EAIEuV,EAJFvV,sCACAC,EAGEsV,EAHFtV,mCACAH,EAEEyV,EAFFzV,eACAF,EACE2V,EADF3V,YAGEy3J,EAAe,CACjB34J,KAAM,cACNG,cAAe,CACbc,YAAa,CACXI,YAAa26J,GAAc36J,GAC3BH,YAAa86J,GAAc96J,GAC3BE,eAAgB46J,GAAc56J,IAEhCK,qCACAH,wCACAC,sCAEFi9C,OAAQ+5G,GAGV3/E,EAASxpC,KAA6BwpH,yBAAyB,CAAEv5J,UAAWA,EAAWouC,QAASkrH,KAEhGD,IACAp8D,KAEF,CAACA,IAGH,OACEn7D,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAQwsD,cAxFgF,CACxFvvF,YAAa,KACbI,mCAAoC,GACpCH,sCAAuC,GACvCF,eAAgB,KAChBF,YAAa,KACbK,mCAAoC,IAkF2BkvF,SAAUA,EAAU3hC,SA/ElE,SAACj4C,GAAsD,IAUNwtB,EAW0CqxB,EAWvD+oC,EA9BnDp9F,EAMEwV,EANFxV,YACAC,EAKEuV,EALFvV,sCACAC,EAIEsV,EAJFtV,mCACAE,EAGEoV,EAHFpV,mCACAL,EAEEyV,EAFFzV,eACAF,EACE2V,EADF3V,YAGF,MAAoB,QAAhBG,GAA0BI,EAWV,QAAhBP,GAA0BI,GAA0CC,EAWnEF,GAAgBD,GAAmBF,OAAxC,GACEu9F,EAAA,GAAAjxF,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,cACmBy2D,GAAiB7zJ,IADpCmM,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,iBAEsBy2D,GAAiB9zJ,IAFvCoM,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,cAGmBy2D,GAAiBh0J,IAHpCsM,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,wCAI6Cy2D,GAAiB5zJ,IAJ9DkM,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,qCAK0Cy2D,GAAiB3zJ,IAL3DiM,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,qCAM0Cy2D,GAAiBzzJ,IAN3Dg9F,IAXA/oC,EAAA,GAAAloD,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,wCAC6Cw/F,GAAiB5zJ,IAD9DkM,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,qCAE0Cw/F,GAAiB3zJ,IAF3DiM,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,qCAG0Cw/F,GAAiBzzJ,IAH3D+L,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,cAImBw/F,GAAiB7zJ,IAJpCmM,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,iBAKsBw/F,GAAiB9zJ,IALvCoM,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,cAMmBw/F,GAAiBh0J,IANpCw0D,IAXArxB,EAAA,GAAA72B,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,qCAC0C6wH,GAAiBzzJ,IAD3D+L,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,cAEmB6wH,GAAiB7zJ,IAFpCmM,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,iBAGsB6wH,GAAiB9zJ,IAHvCoM,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,cAImB6wH,GAAiBh0J,IAJpCsM,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,wCAK6C6wH,GAAiB5zJ,IAL9DkM,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,qCAM0C6wH,GAAiB3zJ,IAN3D8iC,KAqEC,SAAAqjH,GAAA,IAAG12D,EAAH02D,EAAG12D,aAAcn6E,EAAjB6wI,EAAiB7wI,OAAQ6hJ,EAAzBhR,EAAyBgR,UAAzB,OACCv3H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,8CAGFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,QAAMrhC,GAAG,kCAAkC0wF,SAAUO,GACnD7vD,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,gBAAd,8BACAtB,EAAA1P,EAAA2P,cAAA,iGACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAG,cACHsC,QAASyK,IACTg3B,eAAe,YAEhBjtB,EAAOxV,cAAgBiL,IAAkBS,KACxCo0B,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAc7xF,GAAG,wCAGvCohC,EAAA1P,EAAA2P,cAAA,sHAIAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAG,cACHsC,QAASyK,IACTg3B,eAAe,YAEhBjtB,EAAO3V,cAAgBoL,IAAkBS,KACxCo0B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAc7xF,GAAG,0CAEnCohC,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAc7xF,GAAG,yCAIzCohC,EAAA1P,EAAA2P,cAAA,iFACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAG,iBACHsC,QAASyK,IACTg3B,eAAe,eAKvB3C,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CACEC,QAAQ,YACRnvD,QAAS,WACP81H,IACAp8D,MAJJ,UASAn7D,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,KAAjE,eC/JCyvJ,GAAe,SAACnoI,GAC3B,QACIA,IAAUooI,aAAmBpoI,EAAMjrB,QAAUqzJ,aAAmBpoI,EAAMlrB,MAAQszJ,aAAmBpoI,EAAMhrB,QAIhGqzJ,GAAqB,SAACC,EAAuBC,GACxD,IAAMrqH,EAAe,SAAToqH,EAAmBC,EAAe,KAAOvnF,OAAQhsE,OAAU,EACjE+oC,EAAe,SAATuqH,EAAmBC,EAAevnF,OAAQhsE,OAAS,KAAiB,QAATszJ,EAAiB,GAAK,GACvFpkK,EAAUqhC,IAAEnH,IAAImH,IAAE0lC,MAAM/sB,EAAKH,EAAM,GAAI,SAAAxD,GAAC,OAAIA,IAClD,MAAa,SAAT+tH,GAAmBC,EACdhjI,IAAEkoD,QAAQvpF,GAEZA,GAGIskK,GAAsC,SAAAnnI,GAO7C,IANJ8E,EAMI9E,EANJ8E,KACAvkC,EAKIy/B,EALJz/B,GACA++F,EAIIt/D,EAJJs/D,SACAh7D,EAGItE,EAHJsE,eACA8iI,EAEIpnI,EAFJonI,gBACAC,EACIrnI,EADJqnI,mBAEQhwJ,EAAyCytB,EAAzCztB,OAAQsmJ,EAAiC74H,EAAjC64H,QAAS5hI,EAAwB+I,EAAxB/I,OAAQ6hI,EAAgB94H,EAAhB84H,YAC3Bj/H,EAAQoC,kBAAQ,kBAAMmD,IAAEvE,IAAItoB,EAAQ9W,IAAK,CAAC8W,EAAQ9W,IAClDosB,EAAQuX,IAAEvE,IAAIg+H,EAASp9J,GAAM2jC,IAAEojI,OAAOvrI,EAAQ,SAAC6lB,EAAKj4B,GAAN,OAAci4B,GAAO1d,IAAEqjI,WAAW59I,EAAKppB,UAAOrC,EAC5FgpK,EAAenmI,kBAAQ,kBAAMmD,IAAEs9E,SAASjhH,EAAI,gBAAkB2jC,IAAEs9E,SAASjhH,EAAI,gBAAgB,CAACA,IAJhGm7E,EAKgDC,mBAA6B,CAAE6rF,SAAUV,GAAanoI,KALtGi9C,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAKG+rF,EALH7rF,EAAA,GAKuB8rF,EALvB9rF,EAAA,GAME+rF,EAA2BvjI,sBAC/B,SAACvlC,GACC6oK,EAAsB7oK,GAClBwoK,GACFA,EAAmBxoK,IAGvB,CAACwoK,IAEHjqF,oBAAU,WACHgqF,GACHO,EAAyB,CAAEH,SAAUV,GAAanoI,GAAQipI,SAAUH,EAAmBG,YAExF,CAACjpI,EAAOyoI,EAAiBK,EAAmBG,SAAUD,IACzD,IAAME,EAAyB,SAAChpK,GAC9B8oK,EAAyB,CACvBH,SAAUV,GAAanoI,GACvBipI,SAAW1jI,IAAEgnH,YAAYrsJ,EAAM+oK,UAA6BH,EAAmBG,SAApC/oK,EAAM+oK,YAG/CE,EAAgB,SAACn+I,GACrB,MAAO,CACLwoE,UAAWqoE,KACXj6J,GAAE,GAAAqJ,OAAKrJ,EAAL,KAAAqJ,OAAW+f,GACb9mB,QAASmkK,GAAmBr9I,EAAKu9I,GACjC5nE,WACAh7D,eAAgBA,GAAc,GAAA16B,OAAO06B,EAAP,KAAA16B,OAAyB+f,GACvD+wI,sBAAuB/wI,EACvBo+I,cAAuB,QAARp+I,GAAyB,SAARA,EAChCy9I,iBAAiB,EACjBC,mBAAoBQ,IAIxB,OACElmI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEiB,UAAS,gBAAAr5B,OAAmBs6B,IAAE4R,QAAQnpB,GAAqB,GAAZ,WAC/C9tB,MAAO4oK,EACPnoE,SAAUA,GAEV39D,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,SACbtB,EAAA1P,EAAA2P,cAACgD,GAAA,EAAUkjI,EAAc,WAE3BnmI,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,SACbtB,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD52B,OAAA8F,OAAA,GAAWg0J,EAAc,OAAzB,CAAiC5gE,OAAO,QAE1CvlE,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,SACbtB,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD52B,OAAA8F,OAAA,GAAWg0J,EAAc,QAAzB,CAAkC5gE,OAAO,WAI7ChjE,IAAE4R,QAAQnpB,MAAYixI,GACtBj8H,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,SACdtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAMzhC,GAAIA,EAAImkK,QAAS,QAAS3jK,KAAM,aChEnCinK,GAGR,SAAAhoI,GAA2B,IAAxBqwD,EAAwBrwD,EAAxBqwD,KAAMyM,EAAkB98D,EAAlB88D,YACN1jB,EAAW0E,cAEXj+E,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEif,SAASy+B,SAAW19C,EAAEif,SAASy+B,QAAQx3B,YAHnDinF,EAIQxzD,IAAM6C,UAAS,GAJvB6wD,EAAAx+H,OAAAqoD,EAAA,EAAAroD,CAAAs+H,EAAA,GAIvB27B,EAJuBz7B,EAAA,GAIV07B,EAJU17B,EAAA,GAYxBxkI,EAAUq7J,KAEV//D,EAAuB,OADd/mB,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE6zC,KAAKiiB,SACR,eAAiB,aAC/CkzE,EAAqB,CACzBC,QAAO,eAAAx+J,OAAiB05F,EAAjB,sEACPvV,KAAI,eAAAnkF,OAAiB05F,EAAjB,oEAOA+kE,EAAQrgK,IAAYpK,KAAY0lK,KAAO6E,EAJnB,CACxBC,QAAO,iGACPr6E,KAAI,sFAtBwBrS,EAqCoBC,mBAAmB,IArCvCC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAqCvB+nF,EArCuB7nF,EAAA,GAqCJ8nF,EArCI9nF,EAAA,GAwCxBooF,EAAyB5/H,sBAC7B,SAAC6/H,GACCP,EAAoB,GAAA95J,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAKy1J,GAAL,CAAwBQ,MAE9C,CAACR,IAGGS,EAA8B9/H,sBAClC,SAAC6/H,GAEC,IAAK//H,IAAEzI,SAASgoI,EAAmBQ,GACjC,OAAO32J,KAIX,CAACm2J,IAIG6E,EAA2D,CAC/DxgK,wBAAoB5J,EACpB0C,QAAS,CACPlC,SAAU,GACVC,SAAU,GACVC,KAAM,GACNC,MAAO,GACPE,QAAS,GACTD,WAAY,IAEdqC,mBAAoB,GACpB0C,YAAa,GACbpC,YAAa,CACXE,sBAAkBzD,EAClB2D,iBAAa3D,GAEf8D,yCAAqC9D,EACrC+D,wCAAoC/D,EACpCe,MAAO,GACPsC,SAAU,GACVH,eAAgB,GAChBoC,UAAW,GACXC,cAAe,GACfK,oBAAqB,GACrBC,mBAAoB,GACpB1C,YAAa,GACbqC,SAAU,GACVC,OAAQ,GACR9C,OAAQ,CACN,CACEE,KAAM,GACND,YAAa,KAGjBkD,UAAW,GACXjD,KAAM,GACNwnK,WAAY,GACZC,wBAAoBtqK,GAGhB+yF,EAAW7sD,sBACf,SAAC/sB,EAADwtB,GAA2B,IAAhBq0H,EAAgBr0H,EAAhBq0H,UAiBLC,EAAe,CACjB34J,KAAM,qBACN4E,WAjBIiS,EAAOtW,OAASuR,KAAuBiB,QAClCvL,IAAYpK,KAAY0lK,KAC3B,CACEmF,4BAA6BjM,GAAcnlJ,EAAOmxJ,qBAEpD,CACEhhK,+BAAgCg1J,GAAcnlJ,EAAOmxJ,qBAGzDnxJ,EAAOtW,OAASuR,KAAuBgB,KAClC,CACLo1J,yBAA0BlM,GAAcnlJ,EAAOmxJ,0BAFnD,EASA5kK,qBAAsB,CACpBhD,QAAS,CACPlC,SAAU2Y,EAAOzW,QAAQlC,SACzBC,SAAU0Y,EAAOzW,QAAQjC,eAAYT,EACrCU,KAAMyY,EAAOzW,QAAQhC,KACrBC,MAAOwY,EAAOzW,QAAQ/B,MACtBE,QAASsY,EAAOzW,QAAQ7B,QACxBD,WAAYuY,EAAOzW,QAAQ9B,YAE7BqC,mBAAoBkW,EAAOlW,mBAC3B0C,YAAao+E,GAAe5qE,EAAOxT,aACnCpC,YAAa,CACXE,iBAAkB66J,GAAcnlJ,EAAO5V,YAAYE,wBAAqBzD,EACxE2D,YAAa26J,GAAcnlJ,EAAO5V,YAAYI,mBAAgB3D,GAEhE8D,oCAAqCqV,EAAOrV,0CAAuC9D,EACnF+D,mCAAoCoV,EAAOpV,yCAAsC/D,EACjFe,MAAOoY,EAAOpY,MACdsC,SAAU8V,EAAO9V,eAAYrD,EAC7BkD,eAAgBiW,EAAOjW,eACvBoC,UAAW6T,EAAO7T,UAClBM,oBAAqBuT,EAAOvT,0BAAuB5F,EACnD6F,mBAAoBsT,EAAOtT,yBAAsB7F,EACjDmD,YAAagW,EAAOhW,YACpBqC,SAAU2T,EAAO3T,SACjB7C,OAAQ,CACN,CACEE,KAAMsW,EAAOxW,OAAO,GAAGE,KACvBD,YAAauW,EAAOxW,OAAO,GAAGC,cAGlCkD,UAAWqT,EAAOrT,UAClBjD,KAAMsW,EAAOtW,OAIjBq4E,EAASxpC,KAA6BwpH,yBAAyB,CAAEv5J,YAAWouC,QAASkrH,KAErFD,IACAp8D,KAEF,CAACA,IAoNH,OACEn7D,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAQwsD,cAAek3E,EAA+Br3E,SAAUA,EAAU3hC,SAlNzD,SAACj4C,GAAsC,IAUpDmiJ,EACAC,EATI8O,EAAoClxJ,EAApCkxJ,WAAY/kK,EAAwB6T,EAAxB7T,UAAWE,EAAa2T,EAAb3T,SACzBilK,EAAY,GAAA/+J,OAAGpG,EAAH,KAAAoG,OAAgBlG,KAAe6kK,EAKzCzgK,EAAsCuP,EAAtCvP,mBAAoB/G,EAAkBsW,EAAlBtW,KAAMH,EAAYyW,EAAZzW,QAC1BlC,EAA+CkC,EAA/ClC,SAAUE,EAAqCgC,EAArChC,KAAMC,EAA+B+B,EAA/B/B,MAAOE,EAAwB6B,EAAxB7B,QAIzB46J,GAJiD/4J,EAAf9B,WAINC,IAAYya,KAAQkP,uBAGhDkxI,EAA0BN,aAAaO,QAAb,uBAAAjwJ,OAJZ,cAOpB,GAAIgwJ,GAAuD,cAA5BA,EAAyC,KAAAE,EACtEN,EAAez4G,KAAK0F,MAAMmzG,GAClBh7J,EAF8Dk7J,EAE9Dl7J,KAAMC,EAFwDi7J,EAExDj7J,MAAO45J,EAFiDqB,EAEjDrB,KAAM9rI,EAF2CmtI,EAE3CntI,MACrBotI,EAA2B71H,IAAE81H,WAAWp7J,GACxCq7J,EAAgB/1H,IAAEc,UAAU+0H,GAG5BG,EAAch2H,IAAE9E,QAAQ66H,KAAmB/1H,IAAE9E,QAAQ/nB,EAAOzW,QAAQhC,MACpEu7J,EAAa1B,IAASphJ,EAAOzW,QAAQ9B,WACrCs7J,EAAev7J,IAAUwY,EAAOzW,QAAQ/B,MAI1B46J,IAHM9sI,IAASutI,IAAeC,IAAcC,GAO9D17J,GAAYE,GAAQC,GAASE,IAAYya,KAAQkP,wBAA0B+wI,GAChE,eAAAvjG,EAAAloD,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAC,IAAA,OAAAF,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACR,IAAIwG,QAAQ,SAAAC,GAAO,OAAI+gD,WAAW/gD,EAAS,OADnC,cAAA3G,EAAAE,KAAA,EAED47G,GAAiBt/I,EAAOzW,SAFvB,cAAAi6C,EAAAG,OAAA,SAAAH,EAAAuC,MAAA,wBAAAvC,EAAAK,SAAAR,MAAH,yBAAAwb,EAAA3S,MAAAzJ,KAAA0J,YAAA,EAKb62G,GAAUp/G,KAAK,SAAA6D,GACbw6G,aAAaC,QAAb,uBAAA3vJ,OA/BgB,aA+B2Cm3C,KAAKnJ,UAAUkH,MAI9E,GAAI06G,EAAc,KAUdv6D,EAVcq7D,EACqBd,EAA7B56J,EADQ07J,EACR17J,KAAMC,EADEy7J,EACFz7J,MAAO45J,EADL6B,EACK7B,KAAM9rI,EADX2tI,EACW3tI,MAG3B,GACEA,GACAtV,EAAOzW,QAAQlC,UACf2Y,EAAOzW,QAAQhC,MACfyY,EAAOzW,QAAQ/B,OACfwY,EAAOzW,QAAQ9B,WAEf,OAAAmgG,EAAA,GAAAjxF,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,wBAAAr1F,OAC6B+iB,EAAM0D,YAAYxG,OAD/C,wCAAA7b,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,kBAAAr1F,OAEuB+iB,EAAM0D,YAAYxG,OAFzC,wCAAA7b,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,mBAAAr1F,OAGwB+iB,EAAM0D,YAAYxG,OAH1C,wCAAA7b,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,sBAAAr1F,OAI2B+iB,EAAM0D,YAAYxG,OAJ7C,wCAAAo1E,EAcF,GALK5nF,EAAOzW,QAAQlC,UAAa2Y,EAAOzW,QAAQhC,MAC9C06J,aAAaC,QAAb,uBAAA3vJ,OAxDgB,aAwD2C,aAIzDhL,GAAQC,GAAS45J,EAAM,KAAA8B,EACnBR,EAA2B71H,IAAE81H,WAAWp7J,GACxCq7J,EAAgB/1H,IAAEc,UAAU+0H,GAC5BG,EAAch2H,IAAE9E,QAAQ66H,KAAmB/1H,IAAE9E,QAAQ/nB,EAAOzW,QAAQhC,MACpEu7J,EAAa1B,IAASphJ,EAAOzW,QAAQ9B,WACrCs7J,EAAev7J,IAAUwY,EAAOzW,QAAQ/B,MAExCk9B,GAAkBw+H,EAAA,GAAAvsJ,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,kBACD7E,GAAiBr+I,EAAOzW,QAAQ7B,UAD/BiP,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,mBAEA7E,GAAiBr+I,EAAOzW,QAAQlC,WAFhCsP,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAGrB,qBACC7E,IAAiBiE,GAA4BtiJ,EAAOzW,QAAQ9B,cAAuBq7J,EAAnF,uDAAAvwJ,OAC2D6uJ,QACvDv6J,GANgB8P,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAOrB,eACC7E,GAAiBr+I,EAAOzW,QAAQhC,QAAUs7J,EAA1C,+CAAAtwJ,OACmDqwJ,QAC/C/7J,GAVgB8P,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAWrB,gBACC7E,IAAiBiE,GAA4BtiJ,EAAOzW,QAAQ/B,SAAkBu7J,EAA9E,iDAAAxwJ,OACqD/K,QACjDX,GAdgB8P,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,OAeZ7E,GAAiB30J,IAfLiN,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,qBAgBE7E,GAAiBr+I,EAAOlW,qBAhB1B6M,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,cAiBL7E,GAAiBr+I,EAAOxT,cAjBnBmK,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,QAkBX7E,GAAiBr+I,EAAOpY,QAlBb+O,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,WAmBR7E,GAAiBr+I,EAAOjW,iBAAmBqM,KAAeS,UAAWmJ,EAAO9V,WAnBpEyM,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,iBAoBF7E,GAAiBr+I,EAAOjW,iBApBtB4M,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,YAqBP7E,GAAiBr+I,EAAO7T,YArBjBwK,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,cAsBL7E,GACfr+I,EAAOjW,iBAAmBqM,KAAeS,UAAWmJ,EAAOhW,cAvBvC2M,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,WAyBR7E,GAAiBr+I,EAAO3T,WAzBhBsK,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,iBA0BF7E,GAAiBr+I,EAAOxW,OAAO,GAAGE,OA1BhCiN,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,wBA2BK7E,GAAiBr+I,EAAOxW,OAAO,GAAGC,cA3BvCkN,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,YA4BP7E,GAAiBr+I,EAAOrT,YA5BjBgK,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,aA6BN7E,GAAiBr+I,EAAOkxJ,aAAevS,GAAiB2S,IA7BlD36J,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,sBA8BG7E,GACvBr+I,EAAOlW,qBAAuBqY,KAAQkP,uBAAwBrR,EAAOvT,sBA/BjDkK,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,qBAiCE7E,GACtBr+I,EAAOlW,qBAAuBqY,KAAQkP,uBAAwBrR,EAAOtT,qBAlCjDiK,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,+BAoCY7E,GAChCr+I,EAAOtW,OAASuR,KAAuBgB,MAAO+D,EAAO5V,YAAYE,mBArC7CqM,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,0BAuCO7E,GAC3Br+I,EAAOtW,OAASuR,KAAuBgB,MAAO+D,EAAO5V,YAAYI,cAxC7CmM,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,sCA0CmB7E,GACvCr+I,EAAOtW,OAASuR,KAAuBgB,MAAgD,QAAxC+D,EAAO5V,YAAYE,kBAC9D0V,EAAOrV,sCA5CSgM,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,qCA+CkB7E,GACtCr+I,EAAOtW,OAASuR,KAAuBgB,MAA2C,QAAnC+D,EAAO5V,YAAYI,aAC9DwV,EAAOpV,qCAjDS+L,OAAA2tB,EAAA,EAAA3tB,CAAAusJ,EAAA,qBAqDpB7E,GAAiBr+I,EAAOmxJ,qBAAuBnxJ,EAAOmxJ,qBAAuB17J,IAAkBU,GAC3FooJ,IAAgB,QAChB13J,GAvDgBq8J,GA4DxB,OAFAvsJ,OAAOyb,KAAKsS,GAAQ06C,QAAQ,SAAA9sD,GAAG,YAAqBzrB,IAAhB69B,EAAOpS,UAA4BoS,EAAOpS,GAAO,KAE9EoS,GAIX,IAAKj0B,EACH,OAAOkG,OAAA2tB,EAAA,EAAA3tB,CAAA,wBACmB0nJ,GAAiB5tJ,IAI7C,GAA2B,QAAvBA,EAA8B,KAAAszJ,EAC1Br/H,GAAMq/H,EAAA,GAAAptJ,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,OACA1F,GAAiB30J,IADjBiN,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,mBAEY1F,GAAiBr+I,EAAOzW,QAAQlC,WAF5CsP,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,eAGQ1F,GAAiBr+I,EAAOzW,QAAQhC,OAHxCoP,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,gBAIS1F,GAAiBr+I,EAAOzW,QAAQ/B,QAJzCmP,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,kBAKW1F,GAAiBr+I,EAAOzW,QAAQ7B,UAL3CiP,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,qBAMc1F,GAAiBr+I,EAAOzW,QAAQ9B,aAN9CkP,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,qBAOc1F,GAAiBr+I,EAAOlW,qBAPtC6M,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,cAQO1F,GAAiBr+I,EAAOxT,cAR/BmK,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,QASC1F,GAAiBr+I,EAAOpY,QATzB+O,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,WAUI1F,GAAiBr+I,EAAOjW,iBAAmBqM,KAAeS,UAAWmJ,EAAO9V,WAVhFyM,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,iBAWU1F,GAAiBr+I,EAAOjW,iBAXlC4M,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,YAYK1F,GAAiBr+I,EAAO7T,YAZ7BwK,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,cAaO1F,GACfr+I,EAAOjW,iBAAmBqM,KAAeS,UAAWmJ,EAAOhW,cAdnD2M,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,gBAkBR/jJ,EAAO5T,eAAiB4T,EAAO5T,cAAcq+B,OAAS,EAAI,6CAA+C,MAlBjG9zB,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,WAmBI1F,GAAiBr+I,EAAO3T,WAnB5BsK,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,SAqBE/jJ,EAAO1T,SAAW,iBAAiBw+G,KAAK9qG,EAAO1T,QAAU,8BAAgC,MArB3FqK,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,iBAsBU1F,GAAiBr+I,EAAOxW,OAAO,GAAGE,OAtB5CiN,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,wBAuBiB1F,GAAiBr+I,EAAOxW,OAAO,GAAGC,cAvBnDkN,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,YAwBK1F,GAAiBr+I,EAAOrT,YAxB7BgK,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,aAyBM1F,GAAiBr+I,EAAOkxJ,aAAevS,GAAiB2S,IAzB9D36J,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,sBA0Be1F,GACvBr+I,EAAOlW,qBAAuBqY,KAAQkP,uBAAwBrR,EAAOvT,sBA3B7DkK,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,qBA6Bc1F,GACtBr+I,EAAOlW,qBAAuBqY,KAAQkP,uBAAwBrR,EAAOtT,qBA9B7DiK,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,+BAgCwB1F,GAChCr+I,EAAOtW,OAASuR,KAAuBgB,MAAO+D,EAAO5V,YAAYE,mBAjCzDqM,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,0BAmCmB1F,GAC3Br+I,EAAOtW,OAASuR,KAAuBgB,MAAO+D,EAAO5V,YAAYI,cApCzDmM,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,sCAsC+B1F,GACvCr+I,EAAOtW,OAASuR,KAAuBgB,MAAgD,QAAxC+D,EAAO5V,YAAYE,kBAC9D0V,EAAOrV,sCAxCHgM,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,qCA2C8B1F,GACtCr+I,EAAOtW,OAASuR,KAAuBgB,MAA2C,QAAnC+D,EAAO5V,YAAYI,aAC9DwV,EAAOpV,qCA7CH+L,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,qBAiDR1F,GAAiBr+I,EAAOmxJ,qBACvBnxJ,EAAOmxJ,qBAAuB17J,IAAkBS,KAAOqoJ,IAAgB,IAlDhEwF,GAuDZ,OAFsBl3H,IAAE0kI,OAAO7sI,EAAQmI,IAAEhF,OAElCgF,IAAE0kI,OAAO7sI,EAAQmI,IAAEhF,UAMzB,SAAAgpH,GAAA,IA7VuB2gB,EA6VpBr3E,EAAH02D,EAAG12D,aAAcn6E,EAAjB6wI,EAAiB7wI,OAAjB6wI,EAAyBnsH,OAAzBmsH,EAAiCgR,UAAjC,OACCv3H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,0CAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,gBAAd,gCACAtB,EAAA1P,EAAA2P,cAAA,yEACAD,EAAA1P,EAAA2P,cAAA,QAAMrhC,GAAG,kBAAkB0wF,SAAUO,EAAcvuD,UAAU,mBAC3DtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAG,qBACHsC,QAASyK,IACTg3B,eAAe,aAGlBjtB,EAAOvP,qBAAuBgF,IAAkBS,KAC/Co0B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,kFACyE,IACvED,EAAA1P,EAAA2P,cAAA,UAAQwB,QAAS,SAAAiB,GAAC,OAtYT,SAACA,GAC1BA,EAAEivD,iBACF40E,GAAgBD,GAoYsBa,CAAmBzkI,KACvC1C,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,4CAGhBglI,GACCtmI,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,sNAMFtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAG,OACHsC,QAASwQ,IACTixB,eAAe,wBAGjBJ,IAAE4R,QAAQz+B,EAAOtW,OACjB4gC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,gBAAd,yCACAtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAK,YAAYK,GAAG,YAAYkjC,MAAM,gBAExE9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACXlyF,KAAK,gBACLK,GAAG,gBACHkjC,MAAM,oBAGV9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAK,WAAWK,GAAG,WAAWkjC,MAAM,eAEtE9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAK,SAASK,GAAG,SAASkjC,MAAM,YAElE9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAK,QAAQK,GAAG,QAAQkjC,MAAM,WAEhE9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWg1E,GAAW5mK,GAAE,cAAiB+jC,eAAe,iBAEjE3C,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXt6J,KAAM,UACNK,GAAI,kBACJkjC,MAAM,UACN5gC,QAAS43J,eACTC,sBAAsB,aAG1B/4H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAM,WAAYK,GAAI,mBAAoBkjC,MAAM,eAElF9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAM,WAAYK,GAAI,mBAAoBkjC,MAAM,eAElF9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAM,OAAQK,GAAI,eAAgBkjC,MAAM,UAE1E9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACG3qB,EAAOzW,QAAQ7B,UAAYya,KAAQkP,uBAClCiZ,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXt6J,KAAM,QACNK,GAAI,gBACJkjC,MAAM,QACN5gC,QAAS00B,IACTmjI,sBAAsB,UAGzBrjJ,EAAOzW,QAAQ7B,UAAYya,KAAQkP,uBAAoD,KAA3BrR,EAAOzW,QAAQ7B,SAC1E4iC,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAM,QAASK,GAAI,gBAAiBkjC,MAAM,cAG9E9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACXlyF,KAAM,aACNK,GAAI,qBACJkjC,MAAM,iBAGV9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACX33J,QAASkM,IACT7O,KAAM,YACNK,GAAI,iBACJm6J,sBAAsB,YACtBj3H,MAAM,eAER9B,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACXlyF,KAAM,QACNK,GAAI,wBACJkjC,MAAM,eACN1iC,KAAK,MACLgoK,UAAU,SAGdpnI,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXt6J,KAAM,qBACNK,GAAI,qBACJkjC,MAAM,sBACN5gC,QAAS43J,eACTC,sBAAsB,aAGzBrjJ,EAAOlW,qBAAuBqY,KAAQkP,uBACrCiZ,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACX7xF,GAAE,YACFkjC,MAAO9B,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAMzhC,GAAG,eAAeQ,KAAK,QAAQ01B,KAAM,CAAEuyI,KAAMrnI,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAMzhC,GAAG,kBACnEQ,KAAK,WACLkoK,aAAa,KAIlB5xJ,EAAOlW,qBAAuBqY,KAAQkP,uBACrCiZ,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACX7xF,GAAE,qBACF+jC,eAAe,6BAGnB3C,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXj6J,GAAE,sBACFsC,QAAS43J,eACTn2H,eAAe,gBACfo2H,sBAAsB,cAM9B/4H,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,gBAAd,2CACAtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAE,iBACFsC,QAASoL,KACTq2B,eAAe,oBAGlBjtB,EAAOjW,iBAAmBqM,KAAeS,UACxCyzB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAc7xF,GAAE,WAAc+jC,eAAe,cAEjE3C,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAc7xF,GAAE,cAAiB+jC,eAAe,kBAKvEjtB,EAAOtW,OAASuR,KAAuBgB,MACtCquB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,gBAAd,gCACAtB,EAAA1P,EAAA2P,cAAA,2KAIAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAG,+BACHsC,QAASyK,IACTg3B,eAAe,aAGlBjtB,EAAO5V,aAAe4V,EAAO5V,YAAYE,mBAAqBmL,IAAkBS,KAC/Eo0B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACX7xF,GAAG,sCACH+jC,eAAe,yCAIrB3C,EAAA1P,EAAA2P,cAAA,uGAGAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAG,0BACHsC,QAASyK,IACTg3B,eAAe,aAGlBjtB,EAAO5V,aAAe4V,EAAO5V,YAAYI,cAAgBiL,IAAkBS,KAC1Eo0B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACX7xF,GAAG,qCACH+jC,eAAe,yCAMzB3C,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,gBAAd,8BACAtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAc7xF,GAAG,aAAa+jC,eAAe,yBAEjE3C,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEiB,UAAU,OACVmxC,KAAM/8D,EAAOtW,OAASuR,KAAuBgB,KAAO+0J,EAAMt6E,KAAOs6E,EAAMD,QACvEhlI,QAAS,kBAAM4gI,EAAuB,wBAEtCriI,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,oBALf,KA5kBM4lI,EAilBkDxxJ,EAAOtW,QAhlBpDuR,KAAuBiB,QAC7CvL,IAAYpK,KAAY0lK,KAAO,gCAAkC,oCAEtEuF,IAA2Bv2J,KAAuBgB,KAC7CtL,IAAYpK,KAAY0lK,KAC3B,6BACA,sDAHN,GA8kBoC,KAElB3hI,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAE,qBACFsC,QAASyK,IACTm3J,gBAAiBP,EAA4B,sBAC7C5/H,eAAe,oBAS/B3C,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CACEC,QAAQ,YACRnvD,QAAS,WACP05D,MAHJ,UAQAn7D,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,KAAjE,eC/oBC6xJ,GAIR,SAAAlpI,GAA+C,IAA5CqwD,EAA4CrwD,EAA5CqwD,KAAMyM,EAAsC98D,EAAtC88D,YAAai8D,EAAyB/4H,EAAzB+4H,mBAEnB3/E,EAAW0E,cAGXj+E,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEif,SAASy+B,SAAW19C,EAAEif,SAASy+B,QAAQx3B,YAEzEngD,EADyBq3E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBwlB,yBAAyB75C,UAC5F15C,eACF8C,EAAUq7J,KARkC3nF,EAWlBC,qBAXkBC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAW3CytF,EAX2CvtF,EAAA,GAWjCgoF,EAXiChoF,EAAA,GAa5C2lF,EAAuB,SAAC78J,GAC5Bk/J,EAAYl/J,IAUR0kK,EAAwE,CAC5EznK,sBAAkBzD,EAClB8D,oCAAqC,IAIjCivF,EAAW7sD,sBACf,SAAC/sB,EAADwtB,GAA2B,IAAhBq0H,EAAgBr0H,EAAhBq0H,UACDv3J,EAA0D0V,EAA1D1V,iBAAkBK,EAAwCqV,EAAxCrV,oCAEtBm3J,EAAe,CACjB34J,KAAM,mBACNG,cAAe,CACbc,YAAa,CACXE,iBAAkB66J,GAAc76J,IAElCK,uCAEFg9C,OAAQ+5G,EACRt0J,kBAAmB,CACjB,CACE9D,cAAeo4J,EACfr0J,WAAYykK,EACZxkK,aAAc6K,IAA2B65J,qBAM/C,GAAI7M,GAAc76J,KAAsBuD,EAAe6zJ,GAAoBt3J,YAAYE,iBAGrF,OAFAu3J,SACAp8D,IAGF1jB,EACExpC,KAA6BwpH,yBAAyB,CACpDv5J,YACAouC,QAASkrH,KAMbD,IACAp8D,KAGF,CAACA,EAAaqsE,IA0BhB,OACExnI,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAQwsD,cAAeg4E,EAAqCn4E,SAAUA,EAAU3hC,SAxB/D,SAACj4C,GAA6C,IAGxC6+C,EAFfv0D,EAA0D0V,EAA1D1V,iBAAkBK,EAAwCqV,EAAxCrV,oCAE1B,OAAKL,EAOoB,QAArBA,GAA+BK,EAMV,QAArBL,GAA+BwnK,OAAnC,EACSn7J,OAAA2tB,EAAA,EAAA3tB,CAAA,uBACkBooJ,GAAe+S,IAPjCn7J,OAAA2tB,EAAA,EAAA3tB,CAAA,yCACoC0nJ,GAAiB1zJ,KAR5Dk0D,EAAA,GAAAloD,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,mBACwBw/F,GAAiB/zJ,IADzCqM,OAAA2tB,EAAA,EAAA3tB,CAAAkoD,EAAA,sCAE2Cw/F,GAAiB1zJ,IAF5Dk0D,KAqBC,SAAAgyF,GAAA,IAAG12D,EAAH02D,EAAG12D,aAAcn6E,EAAjB6wI,EAAiB7wI,OAAQ0kB,EAAzBmsH,EAAyBnsH,OAAQ6hI,EAAjC1V,EAAiC0V,YAAa1E,EAA9ChR,EAA8CgR,UAA9C,OACCv3H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,0CAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,sKAIAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAG,mBACHsC,QAASyK,IACTg3B,eAAe,aAIlBjtB,EAAO1V,mBAAqBmL,IAAkBS,KAC7Co0B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAc7xF,GAAG,yCAErCohC,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWmvE,GACX/gK,GAAG,oBACHV,UAAWA,EACXwwB,YAAa,4BACbu+C,aAAcp/D,IAA2B65J,kBACzC9H,qBAAsBA,EACtBv5J,QAASA,IAEV+zB,EAAOt3B,qBAAuBm5J,IAAgBuL,GAC7CxnI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,SACdtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAMzhC,GAAI,oBAAqBmkK,QAAO,oBAAuB3jK,KAAM,aAK3E4gC,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,0PAQNtB,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CACEC,QAAQ,YACRnvD,QAAS,WACP81H,IACAp8D,MAJJ,UASAn7D,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,KAAjE,eCrLCiyJ,GAGR,SAAAtpI,GAA2B,IAAxBqwD,EAAwBrwD,EAAxBqwD,KAAMyM,EAAkB98D,EAAlB88D,YACN1jB,EAAW0E,cAEXj+E,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEif,SAASy+B,SAAW19C,EAAEif,SAASy+B,QAAQx3B,YAE3EkkH,EAA4E,CAChFrlK,iBAAahG,EACbiG,iCAA6BjG,EAC7BkG,sBAAkBlG,EAClBmG,kCAA8BnG,EAC9BoE,8BAA+B,IA6B3B2uF,EAAW7sD,sBACf,SAAC/sB,EAAD4nF,GAA2B,IAAhBi6D,EAAgBj6D,EAAhBi6D,UAEPh1J,EAKEmT,EALFnT,YACAE,EAIEiT,EAJFjT,iBACAD,EAGEkT,EAHFlT,4BACAE,EAEEgT,EAFFhT,6BACA/B,EACE+U,EADF/U,8BAGE62J,EAAe,CACjB34J,KAAM,qBACNyD,mBAAoB,CAClBC,YAAas4J,GAAct4J,GAC3BE,iBAAkBo4J,GAAcp4J,GAChCD,4BAA6Bq4J,GAAcr4J,GAC3CE,6BAA8Bm4J,GAAcn4J,IAE9C/B,iCAGF82E,EAASxpC,KAA6BwpH,yBAAyB,CAAEv5J,YAAWouC,QAASkrH,KAErFD,IACAp8D,KAYF,CAACA,IAGH,OACEn7D,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAQwsD,cAAem4E,EAAuCt4E,SAAUA,EAAU3hC,SAlEjE,SAACj4C,GAA+C,IASuCwtB,EAPtG3gC,EAKEmT,EALFnT,YACAE,EAIEiT,EAJFjT,iBACAD,EAGEkT,EAHFlT,4BACAE,EAEEgT,EAFFhT,6BACA/B,EACE+U,EADF/U,8BAGF,OAAK4B,GAAgBE,GAAqBD,GAAgCE,EAUtD,QAAhBH,GAA0B5B,OAA9B,EACS0L,OAAA2tB,EAAA,EAAA3tB,CAAA,mCAC8B0nJ,GAAiBpzJ,KAXtDuiC,EAAA,GAAA72B,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,cACmB6wH,GAAiBxxJ,IADpC8J,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,mBAEwB6wH,GAAiBtxJ,IAFzC4J,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,8BAGmC6wH,GAAiBvxJ,IAHpD6J,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,+BAIoC6wH,GAAiBrxJ,IAJrD2J,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EAAA,gCAKqC6wH,GAAiBpzJ,IALtDuiC,KAyDC,SAAAwmG,GAAA,IAAG75C,EAAH65C,EAAG75C,aAAcn6E,EAAjBg0H,EAAiBh0H,OAAQ6hJ,EAAzB7tB,EAAyB6tB,UAAzB,OACCv3H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,4CAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,YACED,EAAA1P,EAAA2P,cAAA,oEACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAG,cACHsC,QAASyK,IACTg3B,eAAe,aAGlBjtB,EAAOnT,cAAgB4I,IAAkBS,KACxCo0B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAc7xF,GAAG,oCAIzCohC,EAAA1P,EAAA2P,cAAA,0EACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAG,mBACHsC,QAASyK,IACTg3B,eAAe,aAGnB3C,EAAA1P,EAAA2P,cAAA,qFACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAG,8BACHsC,QAASyK,IACTg3B,eAAe,aAGnB3C,EAAA1P,EAAA2P,cAAA,4HAIAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAG,+BACHsC,QAASyK,IACTg3B,eAAe,eAKvB3C,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CACEC,QAAQ,YACRnvD,QAAS,WACP81H,IACAp8D,MAJJ,UASAn7D,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,KAAjE,eCrJCmyJ,GAGR,SAAAxpI,GAA2B,IAAxBqwD,EAAwBrwD,EAAxBqwD,KAAMyM,EAAkB98D,EAAlB88D,YACNj9F,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEif,SAASy+B,SAAW19C,EAAEif,SAASy+B,QAAQx3B,YAC3E+zB,EAAW0E,cAEX2rF,EAAwD,CAC5DllK,+BAA2BrG,GAavB+yF,EAAW7sD,sBACf,SAAC/sB,EAAD6+C,GAA2B,IAAhBgjG,EAAgBhjG,EAAhBgjG,UAGHC,EAAe,CACnB34J,KAAM,iBACN8D,eAAgB,CACdC,0BALkC8S,EAA9B9S,4BASR60E,EACExpC,KAA6BwpH,yBAAyB,CACpDv5J,YACAouC,QAASkrH,KAIbD,IACAp8D,KAEF,CAACA,IAGH,OACEn7D,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEwsD,cAAeq4E,EACfx4E,SAAUA,EACVK,kBAAkB,EAClBhiC,SAvCe,SAACj4C,GAAqC,IAC/C9S,EAA8B8S,EAA9B9S,0BAER,IAAKA,EACH,OAAOyJ,OAAA2tB,EAAA,EAAA3tB,CAAA,+BAC0B0nJ,GAAiBnxJ,MAoCjD,SAAA06F,GAAA,IAAGzN,EAAHyN,EAAGzN,aAAc0nE,EAAjBj6D,EAAiBi6D,UAAjBj6D,EAA4B5nF,OAA5B,OACCsqB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,gCAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,QAAMrhC,GAAG,gBAAgB0wF,SAAUO,GACjC7vD,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,gBAAd,+BACAtB,EAAA1P,EAAA2P,cAAA,+VAMAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAG,4BACHsC,QAASiL,IACTw2B,eAAe,iCAKvB3C,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CACEC,QAAQ,YACRnvD,QAAS,WACP81H,IACAp8D,MAJJ,UASAn7D,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,KAAjE,eC1ECqyJ,GAAkD,WAC7D,IAAM7pK,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQh9E,YAC5CqnF,EAAW3K,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBilB,eAAehR,WACpEuR,EAA2Blc,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBwlB,yBAAyB75C,UAC9F4wC,EAAajT,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBwlB,yBAAyBjJ,aAChFqrB,EAAat+B,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBl0B,OAAOtoB,OAGlEvxB,EAKEuzF,EALFvzF,eACAtB,EAIE60F,EAJF70F,qBACAK,EAGEw0F,EAHFx0F,mBACA3B,EAEEm2F,EAFFn2F,8BACAgC,EACEm0F,EADFn0F,eAIAJ,EAIED,EAJFC,YACAC,EAGEF,EAHFE,4BACAC,EAEEH,EAFFG,iBACAC,EACEJ,EADFI,6BAGME,EAA8BD,EAA9BC,0BACFolK,EAAwD,OAAzB/lK,EAC/BgmK,EAA0ChmK,GAAuD,OAA/BA,EAAqB3E,MACvF4qK,EAAYjmK,GAAwBA,EAAqBJ,UAAY,IAAMI,EAAqBF,SAGhGq6J,EAAwBxhF,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBylB,gCAAgCjiE,OAClGqzI,EACJ/L,GAAyBA,EAAsBx+H,OAAO,SAAA0+H,GAAC,MAAe,qBAAXA,EAAEz9J,OACzDupK,EACJhM,GAAyBA,EAAsBx+H,OAAO,SAAA0+H,GAAC,MAAe,mBAAXA,EAAEz9J,OACzDkvG,EAA0BnzB,YAC9B,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQC,uBAAyB39C,EAAE09C,QAAQC,sBAAsBj9E,YAGpEu5E,EAAW0E,cArCkDpC,EAsCLC,oBAAS,GAtCJC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAsC5DsuF,EAtC4DpuF,EAAA,GAsCnCquF,EAtCmCruF,EAAA,GAAAuhB,EAuCbxhB,oBAAS,GAvCIyhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAuC5D+sE,EAvC4D9sE,EAAA,GAuCvC+sE,EAvCuC/sE,EAAA,GAAAG,EAwCC5hB,oBAAS,GAxCV6hB,EAAAxvF,OAAAqoD,EAAA,EAAAroD,CAAAuvF,EAAA,GAwC5D6sE,EAxC4D5sE,EAAA,GAwChC6sE,EAxCgC7sE,EAAA,GAAAG,EAyCKhiB,oBAAS,GAzCdiiB,EAAA5vF,OAAAqoD,EAAA,EAAAroD,CAAA2vF,EAAA,GAyC5D2sE,EAzC4D1sE,EAAA,GAyC9B2sE,EAzC8B3sE,EAAA,GAAA02B,EA0CH34C,oBAAS,GA1CN44C,EAAAvmH,OAAAqoD,EAAA,EAAAroD,CAAAsmH,EAAA,GA0C5Dk2C,EA1C4Dj2C,EAAA,GA0ClCk2C,EA1CkCl2C,EAAA,GAAA20B,EA2CfvtE,mBAAiB,GA3CFwtE,EAAAn7I,OAAAqoD,EAAA,EAAAroD,CAAAk7I,EAAA,GA2C5D6P,EA3C4D5P,EAAA,GA2CxC4V,GA3CwC5V,EAAA,GAAA0J,GA4Cbl3E,oBAAS,GA5CIm3E,GAAA9kJ,OAAAqoD,EAAA,EAAAroD,CAAA6kJ,GAAA,GA4C5D6X,GA5C4D5X,GAAA,GA4CvC6X,GA5CuC7X,GAAA,GA8C7DwM,GAAuB,SAACrvI,GAC5B,OAAI/qB,EAAe+qB,GAAOzsB,WAAa0B,EAAe+qB,GAAOvsB,SAC3D,GAAAkG,OAAU1E,EAAe+qB,GAAOzsB,UAAhC,KAAAoG,OAA6C1E,EAAe+qB,GAAOxsB,eAAiB,GAApF,KAAAmG,OACE1E,EAAe+qB,GAAOvsB,SADxB,KAAAkG,OAEI1E,EAAe+qB,GAAOtsB,QAAU,IAE/B,kBAGTy5E,oBAAU,YACH8J,GAAYrnF,IACX6vG,GACFt2B,EAASxpC,KAA6BwvH,sBAAsB,CAAEv/J,UAAW6vG,KACzEt2B,EAASxpC,KAA6ByvH,gCAAgC,CAAEx/J,UAAW6vG,OAEnFt2B,EAASxpC,KAA6BwvH,sBAAsB,CAAEv/J,eAC9Du5E,EAASxpC,KAA6ByvH,gCAAgC,CAAEx/J,kBAG3E,CAACu5E,EAAUyhC,EAAYh7G,EAAWqnF,EAAUwoB,IAE/C,IAAMvK,GAAc,SAACC,GAEnB,OADAA,EAAM9R,iBACE8R,EAAMnB,OAAO1jG,IACnB,IAAK,qBACH4pK,GAAuB,GACvB,MACF,IAAK,qBACHpL,GAAsB,GACtBsL,GAA8B,GAC9B,MACF,IAAK,qBACHtL,GAAsB,GACtBsL,GAA8B,GAC9B,MACF,IAAK,qBACHE,GAAgC,GAChC,MACF,IAAK,mBACHxL,GAAsB,GACtBkL,GAA2B,GAC3B,MACF,IAAK,mBACHlL,GAAsB,GACtBkL,GAA2B,GAC3B,MACF,IAAK,iBACHQ,GAA4B,GAC5B,MACF,IAAK,kBACHE,IAAuB,KAgCvBC,GAAkB7pI,kBAAQ,WAC9B,IAAIw6H,EAA2B,GA8O/B,OA5OI9iE,IACF8iE,EAAS,GAAA3xJ,OAAAoE,OAAA60B,EAAA,EAAA70B,CACJutJ,GADI,CAGP,CACErY,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,uCADf,uBAC2E,IACzEtB,EAAA1P,EAAA2P,cAAA,UACEqB,UAAU,cACV1iC,GAAG,qBACH6iC,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,IAC9BvD,OAAQ8nE,GAJV,cAUJ1mI,UAAW,gBAGb,CAAEigH,MAAO,kBAAM,OAEf,CACEA,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,2CACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQ0mI,EAAsB,MAAQ,MAAa,OAKzE,CACEzmB,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,cAEAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQ25H,GAAgBiN,EAAWF,UAOzDA,IAAwBC,IAC1BrO,EAAS,GAAA3xJ,OAAAoE,OAAA60B,EAAA,EAAA70B,CACJutJ,GADI,CAEP,CACErY,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,4BACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQr/B,EAAqB7C,SAInD,CACEmiJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,SACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQr/B,EAAqB3E,UAInD,CACEikJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,WACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbr/B,EAAqBhD,SAAWgD,EAAqBhD,QAAQlC,SAC1DkF,EAAqBhD,QAAQlC,SAC7B,OAENijC,EAAA1P,EAAA2P,cAAA,WACCh+B,EAAqBhD,SAAWgD,EAAqBhD,QAAQjC,UAC5DgjC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQr/B,EAAqBhD,QAAQjC,UACrDgjC,EAAA1P,EAAA2P,cAAA,YAGJD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbr/B,EAAqBhD,SAAWgD,EAAqBhD,QAAQhC,KAC1DgF,EAAqBhD,QAAQhC,KAC7B,GAHN,IAII,IACDgF,EAAqBhD,SAAWgD,EAAqBhD,QAAQ/B,MAC1D+E,EAAqBhD,QAAQ/B,MAC7B,GAAI,IACP+E,EAAqBhD,SAAWgD,EAAqBhD,QAAQ9B,WAC1D8E,EAAqBhD,QAAQ9B,WAC7B,IAEN6iC,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbr/B,EAAqBhD,SAAWgD,EAAqBhD,QAAQ7B,QAC1D6E,EAAqBhD,QAAQ7B,QAC7B,MAAO,QAKnB,CACEmkJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,iBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UACdtB,EAAA1P,EAAA2P,cAAA,sBACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACb05H,GAAkBE,GAA2B,OAAQj5J,KAChD,KAEV+9B,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UACdtB,EAAA1P,EAAA2P,cAAA,wBACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACb05H,GAAkBE,GAA2B,SAAUj5J,KAClD,KAEV+9B,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UACdtB,EAAA1P,EAAA2P,cAAA,sBACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACb05H,GAAkBE,GAA2B,OAAQj5J,KAChD,QAKhB,CACEs/I,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,mBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQr/B,EAAqBxC,mBAInD,CACE8hJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,iBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQr/B,EAAqBrC,SAAWqC,EAAqBrC,SAAW,UAI9F,CACE2hJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,uBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQr/B,EAAqBzC,oBAC5CyC,EAAqBzC,qBAAuBqY,KAAQkP,uBACnDiZ,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,0BACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQr/B,EAAqBE,qBAC7C69B,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,kBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQr/B,EAAqBG,wBAMvD,CACEm/I,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,iBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbr/B,EAAqBC,YAClBk+E,GAAsBn+E,EAAqBC,aAC3C,qBAKZ,CACEq/I,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,eACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,iKAE0D,IACxDtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbr/B,EAAqBnC,aAAemC,EAAqBnC,YAAYE,iBAAmB,MAAQ,OAIpGiC,EAAqBnC,aAAemC,EAAqBnC,YAAYE,kBACpEggC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,cACatB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQr/B,EAAqB5B,uCAI9D2/B,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,6FAC6F,IAC3FtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbr/B,EAAqBnC,aAAemC,EAAqBnC,YAAYI,YAAc,MAAQ,OAG/F+B,EAAqBnC,aAAemC,EAAqBnC,YAAYI,aACpE8/B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,iBACiB,IACftB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbr/B,EAAqBnC,aAAemC,EAAqB3B,wCAOtE0rC,KAAM/pC,EAAqB7C,OAASuR,KAAuBiB,YAK7Do2J,IACFpO,EAAS,GAAA3xJ,OAAAoE,OAAA60B,EAAA,EAAA70B,CACJutJ,GADI,CAGP,CACErY,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,cAAc1iC,GAAG,kBAAkB6iC,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,KAAnF,YAKJz3D,KAA+B,OAAzB/pC,MAKL23J,GACN,CAAC33J,IAEEinK,GAAyB9pI,kBAAQ,WACrC,IAAIw6H,EAA2B,GA6D/B,OA3DI9iE,IAA6BjJ,GAActI,GAC7ChiF,EAAe63B,IAAI,SAACp8B,EAAesvB,GACjCsrI,EAAS,GAAA3xJ,OAAAoE,OAAA60B,EAAA,EAAA70B,CACJutJ,GADI,CAGP,CACErY,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,qCADf,uBACyE,IACvEtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQq8H,GAAqBrvI,IAAe,IAC5D0R,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,cAAc1iC,GAAE,oBAAAqJ,OAAsBqmB,GAASmT,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,KAA/F,cAKJniE,UAAW,gBAGb,CAAEigH,MAAO,kBAAM,OACf,CACEA,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,6JAKAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQy5H,GAAwB/7J,EAAcc,YAAYE,mBACzEmoK,GAAiCA,EAA8BhoI,OAAS,GACvEH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,kBACdtB,EAAA1P,EAAA2P,cAAA,qDACAD,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,cACG+9C,KACCmqF,EAA8BA,EAA8BhoI,OAAS,GAAG29H,YACxEpnH,OAAO,8BAQvB,CACE6qG,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,+BAEAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QpB5Nb,QADoB6nI,EoB8NGnqK,EAAcqB,qCpB5N7C,iBAEF8oK,IAJ6B,IAACA,QoBsO5BvP,GACN,CAACr2J,EAAgBsqF,EAAYtI,EAAU4iF,IAEpCiB,GAAmBhqI,kBAAQ,WAC/B,IAAIw6H,EAA2B,GAiG/B,OAhGI9iE,IAA6BjJ,GAActI,GAC7ChiF,EAAe63B,IAAI,SAACp8B,EAAesvB,GACjCsrI,EAAS,GAAA3xJ,OAAAoE,OAAA60B,EAAA,EAAA70B,CACJutJ,GADI,CAGP,CACErY,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,+BADf,gCAC4E,IAC1EtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQq8H,GAAqBrvI,IAAe,IAC5D0R,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,cAAc1iC,GAAE,kBAAAqJ,OAAoBqmB,GAASmT,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,KAA7F,cAKJniE,UAAW,gBAGb,CAAEigH,MAAO,kBAAM,OAEf,CACEA,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,yFAIAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQy5H,GAAwB/7J,EAAcc,YAAYI,cACzElB,EAAcc,YAAYI,aACzB8/B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WAEAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,kBACkB,IAChBtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbtiC,EAAcsB,mCACXtB,EAAcsB,mCACd,YASlB,CACEihJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,wEAEAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQy5H,GAAwB/7J,EAAcc,YAAYG,oBAKhF,CACEshJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,6GAKAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQy5H,GAAwB/7J,EAAcc,YAAYC,cACzEf,EAAcc,YAAYC,aACzBigC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,oBACoB,IAClBtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbtiC,EAAcmB,sCACXnB,EAAcmB,sCACd,QAEA,IACR6/B,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,gBACgB,IACdtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbtiC,EAAcoB,mCACXpB,EAAcoB,mCACd,QAEA,QAMlB,CACEmhJ,MAAO,kBAAM,WAKdqY,GACN,CAACr2J,EAAgBsqF,EAAYtI,IAE1B8jF,GAA0BjqI,kBAAQ,WACtC,IAAIw6H,EAA2B,GAuE/B,OAtEI9iE,IACF8iE,EAAS,GAAA3xJ,OAAAoE,OAAA60B,EAAA,EAAA70B,CACJutJ,GADI,CAGP,CACErY,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,+BADf,uBACmE,IACjEtB,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,cAAc1iC,GAAG,qBAAqB6iC,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,KAAtF,cAKJniE,UAAW,gBAGb,CAAEigH,MAAO,kBAAM,OAEf,CACEA,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,2DACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQy5H,GAAwBx4J,IAAqB,IACpEA,GACCy9B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,qCACqC,IACnCtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQ3gC,GAAiC,uBAQrE,CACE4gJ,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,iEACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQy5H,GAAwBt4J,IAA0B,OAKhF,CACE8+I,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,4EAGAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQy5H,GAAwBv4J,IAAqC,OAK3F,CACE++I,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,mHAIAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQy5H,GAAwBr4J,IAAsC,UAOzFk3J,GACN,CACDr3J,EACAE,EACAD,EACAE,EACA/B,IAGI2oK,GAAuBlqI,kBAAQ,WACnC,IAAIw6H,EAA2B,GA4C/B,OA3CIj3J,IACFi3J,EAAS,GAAA3xJ,OAAAoE,OAAA60B,EAAA,EAAA70B,CACJutJ,GADI,CAEP,CACErY,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,+BADf,mBAC+D,IAC7DtB,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,cAAc1iC,GAAG,iBAAiB6iC,QAAS,SAAAgiE,GAAK,OAAID,GAAYC,KAAlF,cAKJniE,UAAW,gBAGb,CAAEigH,MAAO,kBAAM,OAEf,CACEA,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAhB,yDAEAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQ1+B,GAAwD,OAC/EwlK,GAAgCA,EAA6BjoI,OAAS,GACrEH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,kBACdtB,EAAA1P,EAAA2P,cAAA,qDACAD,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,cACG+9C,KAAMoqF,EAA6BA,EAA6BjoI,OAAS,GAAG29H,YAAYpnH,OACvF,iCAYbkjH,GACN,CAACh3J,EAA2BwlK,IAE/B,OAAK7iF,IAAYsI,GAAeiJ,EAG9B92D,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uBACbtB,EAAA1P,EAAA2P,cAACg+H,GAAD,CAAcrE,UAAWsP,MAE3BlpI,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uBACbtB,EAAA1P,EAAA2P,cAACg+H,GAAD,CAAcrE,UAAWwP,MAE3BppI,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uBACbtB,EAAA1P,EAAA2P,cAACg+H,GAAD,CAAcrE,UAAWyP,MAE3BrpI,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uBACbtB,EAAA1P,EAAA2P,cAACg+H,GAAD,CAAcrE,UAAWqP,MAE3BjpI,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uBACbtB,EAAA1P,EAAA2P,cAACg+H,GAAD,CAAcrE,UAAW0P,MAE3BtpI,EAAA1P,EAAA2P,cAACspI,GAAD,CACEpuE,YArkB4B,WAChCmtE,GAA4BD,IAqkBxB35E,KAAM25E,EACNjR,mBAAoBA,IAEtBp3H,EAAA1P,EAAA2P,cAACupI,GAAD,CAAiBruE,YArkBS,WAC5BqtE,GAAwBD,IAokB+B75E,KAAM65E,IAC3DvoI,EAAA1P,EAAA2P,cAACwpI,GAAD,CACEtuE,YAnkB+B,WACnCutE,GAA+BD,IAmkB3B/5E,KAAM+5E,EACNrR,mBAAoBA,IAEtBp3H,EAAA1P,EAAA2P,cAACypI,GAAD,CAA0BvuE,YAnkBS,WACrCytE,GAAiCD,IAkkBwCj6E,KAAMi6E,IAC7E3oI,EAAA1P,EAAA2P,cAAC0pI,GAAD,CAAsBxuE,YAhkBS,WACN2tE,GAA3BD,IA+jBiEn6E,KAAMm6E,IACrE7oI,EAAA1P,EAAA2P,cAACs+H,GAAD,CACEpjE,YA9jBwB,WACN6tE,IAAtBD,KA8jBIr6E,KAAMq6E,GACN3pK,KAAK,8BAnCsD4gC,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,OCxqBtDupI,GAGR,SAAAvrI,GAA2B,IAAxBqwD,EAAwBrwD,EAAxBqwD,KAAMyM,EAAkB98D,EAAlB88D,YACNj9F,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEif,SAASy+B,SAAW19C,EAAEif,SAASy+B,QAAQx3B,YAC3E+zB,EAAW0E,cAWjB,OACEn8C,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,mCAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,SACED,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,2BAA4B,IACzCtB,EAAA1P,EAAA2P,cAAA,8EAGJD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,KACE1wD,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,YAAYnvD,QAAS,kBAAM05D,MAA3C,UAGAn7D,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,SAASnvD,QAxBf,WAKdg2C,EAASxpC,KAA6BwpH,yBAAyB,CAAEv5J,YAAWouC,QAJvD,CACnBztC,KAAM,0BAIRs8F,MAkBI,aCyEK0uE,GAAU,SAAC53J,GACtB,IAAM63J,EAAS73J,GAAO,GAEhB83J,EAAcD,EAAO3pI,OAAS,EACpC,MAFe,WAEC2pI,EAAOlzC,UAAUmzC,ICxEtBC,GAA6C,WACxD,IAAM9rK,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQh9E,YAC5CqC,EAAgBq6E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBwlB,yBAAyB75C,QAAQ18C,gBAC3F0pK,EAAU1pK,GAAiB,GAC3Bk3E,EAAW0E,cACX+tF,EAAkBtvF,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBl0B,OAAOy5C,YACnEqiB,EAAat+B,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBl0B,OAAOtoB,OAC9Di5E,EAA0BnzB,YAC9B,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQC,uBAAyB39C,EAAE09C,QAAQC,sBAAsBj9E,YAEpEqnF,EAAW3K,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBilB,eAAehR,WAVZxL,EAYNC,oBAAS,GAZHC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAYvDowF,EAZuDlwF,EAAA,GAYjCmwF,EAZiCnwF,EAAA,GAAAuhB,EAapBxhB,oBAAS,GAbWyhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAavD6uE,EAbuD5uE,EAAA,GAaxC6uE,EAbwC7uE,EAAA,GAkB9DhgB,oBAAU,YACH8J,GAAYrnF,IACX6vG,GACFt2B,EAASxpC,KAA6BwvH,sBAAsB,CAAEv/J,UAAW6vG,KACzEt2B,EAASxpC,KAA6ByvH,gCAAgC,CAAEx/J,UAAW6vG,OAEnFt2B,EAASxpC,KAA6BwvH,sBAAsB,CAAEv/J,eAC9Du5E,EAASxpC,KAA6ByvH,gCAAgC,CAAEx/J,kBAG3E,CAACA,EAAWu5E,EAAUyhC,EAAY3zB,EAAUwoB,IAE/C,IAAMw8D,EAAsE,CAC1EhqK,cAAe0pK,EACflvH,IAAK,IAGDu0C,EAAW7sD,sBACf,SAAC/sB,EAAD2oB,GAA2B,IAAhBk5H,EAAgBl5H,EAAhBk5H,UAWLC,EAAe,CACjB34J,KAAM,gBACN0B,cAZ6BmV,EAAOnV,cAAc66B,IAAI,SAACu7C,GAOvD,OANIA,EAAEz0E,aAAey0E,EAAE6zF,kBAAoBh7J,IAAgBjB,aACzDooE,EAAEz0E,YAAco+E,GAAe3J,EAAEz0E,cAE/By0E,EAAEz0E,aAAey0E,EAAE6zF,kBAAoBh7J,IAAgBhB,QACzDmoE,EAAEz0E,YAAc,MAEXy0E,KAQTc,EAASxpC,KAA6BwpH,yBAAyB,CAAEv5J,YAAWouC,QAASkrH,KAEhF0S,IACH3S,IACA6S,GAAwB,KAG5B,CAAClsK,EAAWu5E,IAmLRgzF,EAAoBrrI,kBAAQ,WAChC,IAAIw6H,EAA2B,GAgH/B,OA/GIr5J,GACFA,EAAc66B,IAAI,SAACu7C,EAAGzkD,GACpB0nI,EAAS,GAAA3xJ,OAAAoE,OAAA60B,EAAA,EAAA70B,CACJutJ,GADI,CAEP,CACErY,MAAO,kBACLvhH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGy2C,EAAE6zF,kBAAoBh7J,IAAgBjB,YACrCyxB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAS,yBAAAr5B,OAA2BiqB,IACxC8N,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbq1C,EAAE90E,UADL,IACiB80E,EAAE50E,SADnB,IAC6Bi+B,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,UAAhB,IAA2Bq1C,EAAE+zF,uBAA7B,MAE7B1qI,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,6BACgBD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQq1C,EAAEg0F,aAAeh0F,EAAEg0F,aAAe,cAE1E3qI,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,6BACiB,IACfD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbq1C,EAAEz0E,aACD89B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGy2C,EAAEz0E,YAAY6P,MADjB,IACyB4kE,EAAEz0E,YAAY4P,IADvC,IAC6C6kE,EAAEz0E,YAAY8P,QAKjEguB,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,yBACYD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQq1C,EAAEt0E,UAAYwnK,GAAQlzF,EAAEt0E,WAAa,cAEzE29B,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,wBACWD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQq1C,EAAE+8C,QAAU/8C,EAAE+8C,QAAU,cAE3D1zF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,sBAEED,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbq1C,GAAKA,EAAE13E,SAAW03E,EAAE13E,QAAQlC,UAC3BijC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGy2C,GAAKA,EAAE13E,SAAW03E,EAAE13E,QAAQlC,SAC7BijC,EAAA1P,EAAA2P,cAAA,YAGH02C,GAAKA,EAAE13E,SAAW03E,EAAE13E,QAAQjC,UAC3BgjC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGy2C,EAAE13E,QAAQjC,SACXgjC,EAAA1P,EAAA2P,cAAA,YAGH02C,GAAKA,EAAE13E,SAAW03E,EAAE13E,QAAQhC,KAC5B05E,GAAKA,EAAE13E,SAAW03E,EAAE13E,QAAQ/B,MAAQ,KAAOy5E,EAAE13E,QAAQ/B,MAAQ,GAAI,IACjEy5E,GAAKA,EAAE13E,SAAW03E,EAAE13E,QAAQ9B,WAC7B6iC,EAAA1P,EAAA2P,cAAA,WACC02C,GAAKA,EAAE13E,SAAW03E,EAAE13E,QAAQ7B,WAKpCu5E,EAAE6zF,kBAAoBh7J,IAAgBhB,OACrCwxB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAS,oBAAAr5B,OAAsBiqB,IACnC8N,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,eACbq1C,EAAE+zF,uBADL,MACgC/zF,EAAE6zF,iBAElCxqI,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbq1C,EAAEi0F,UAAYj0F,EAAEi0F,UAAY,YAC7B5qI,EAAA1P,EAAA2P,cAAA,WACC02C,EAAEk0F,UAAYl0F,EAAEk0F,UAAY,aAE/B7qI,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,wBACWD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQq1C,EAAE+8C,QAAU/8C,EAAE+8C,QAAU,cAE3D1zF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,sBAEED,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbq1C,GAAKA,EAAE13E,SAAW03E,EAAE13E,QAAQlC,UAC3BijC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGy2C,GAAKA,EAAE13E,SAAW03E,EAAE13E,QAAQlC,SAC7BijC,EAAA1P,EAAA2P,cAAA,YAGH02C,GAAKA,EAAE13E,SAAW03E,EAAE13E,QAAQjC,UAC3BgjC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGy2C,EAAE13E,QAAQjC,SACXgjC,EAAA1P,EAAA2P,cAAA,YAGH02C,GAAKA,EAAE13E,SAAW03E,EAAE13E,QAAQhC,KAC5B05E,GAAKA,EAAE13E,SAAW03E,EAAE13E,QAAQ/B,MAAQ,KAAOy5E,EAAE13E,QAAQ/B,MAAQ,GAAI,IACjEy5E,GAAKA,EAAE13E,SAAW03E,EAAE13E,QAAQ9B,WAC7B6iC,EAAA1P,EAAA2P,cAAA,WACC02C,GAAKA,EAAE13E,SAAW03E,EAAE13E,QAAQ7B,kBAW1Cw8J,GACN,CAACr5J,IAEJ,OACEy/B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGgqI,GACClqI,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,sBACbtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,gBAAd,kBAEFtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,QAGF6pI,GACAlqI,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uBACZ/gC,GAAiBA,EAAc4/B,OAAS,IAAMgqI,GAC7CnqI,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,sBACbtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,gBACZtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,gCADf,kBAGAtB,EAAA1P,EAAA2P,cAACg+H,GAAD,CAAcrE,UAAW6Q,IAEzBzqI,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,wBACbtB,EAAA1P,EAAA2P,cAAA,UACEqB,UAAU,sBACVG,QAAS,SAAAiB,GACPA,EAAEivD,iBACF24E,GAAiB,KAJrB,4BASAtqI,EAAA1P,EAAA2P,cAAA,UACEqB,UAAU,sCACVG,QAAS,SAAAiB,GACPA,EAAEivD,iBACFy4E,GAAwB,KAJ5B,6BAYqB,IAAzB7pK,EAAc4/B,QAAgBgqI,IAC9BnqI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG3/B,EAAc4/B,OAAS,GACtBH,EAAA1P,EAAA2P,cAAA,SACED,EAAA1P,EAAA2P,cAAA,UACEqB,UAAU,gBACVG,QAAS,SAAAiB,GACPA,EAAEivD,iBACFy4E,GAAwB,KAG1BpqI,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,sBAPf,YAYJtB,EAAA1P,EAAA2P,cAAA,SACED,EAAA1P,EAAA2P,cAAA,iEAGFD,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAQwsD,cAAe86E,EAA4Bj7E,SAAUA,EAAU3hC,SAhWhE,SAACj4C,GAClB,IAAIo1J,EAAuBp1J,EAAOnV,cAC9BmV,EAAOnV,cAAcq9B,OAAO,SAAA+4C,GAAC,OAAIA,EAAE+zF,yBAA2Bn7J,IAAuBb,UACrF,GACAq8J,EAA0Br1J,EAAOnV,cACjCmV,EAAOnV,cAAcq9B,OAAO,SAAA+4C,GAAC,OAAIA,EAAE+zF,yBAA2Bn7J,IAAuBZ,aACrF,GAEAq8J,EAAsBzoI,IAAE0oI,MAAMH,EAAsB,SAAAn0F,GAAC,OAAIp0C,IAAE6T,SAASugC,EAAE+8C,WACtEw3C,EAAyB3oI,IAAE0oI,MAAMF,EAAyB,SAAAp0F,GAAC,OAAIp0C,IAAE6T,SAASugC,EAAE+8C,WAChF,OAAOh+G,EAAOnV,cAAco5B,OAC1B,SAACC,EAAK+8C,EAAGzkD,GAAM,IAET2lI,EACAC,EAFI74J,EAAY03E,EAAZ13E,QAIFg5J,EAA0BN,aAAaO,QAAb,sBAAAjwJ,OAA2CiqB,IAE3E,GAAI+lI,GAAuD,cAA5BA,EAAyC,KAAAE,EACtEN,EAAez4G,KAAK0F,MAAMmzG,GAClBh7J,EAF8Dk7J,EAE9Dl7J,KAAMC,EAFwDi7J,EAExDj7J,MAAO45J,EAFiDqB,EAEjDrB,KAAM9rI,EAF2CmtI,EAE3CntI,MAErBotI,EAA2B71H,IAAE81H,WAAWp7J,GACxCq7J,EAAgB/1H,IAAEc,UAAU+0H,GAC5BG,EAAch2H,IAAE9E,QAAQ66H,KAAmB/1H,IAAE9E,QAAQk5C,EAAE13E,QAAQhC,MAC/Du7J,EAAa1B,IAASngF,EAAE13E,QAAQ9B,WAChCs7J,EAAev7J,IAAUy5E,EAAE13E,QAAQ/B,MAGrB46J,IAFM9sI,IAASutI,IAAeC,IAAcC,GAsBlE,GAhBE9hF,EAAE13E,QAAQlC,UACV45E,EAAE13E,QAAQhC,MACV05E,EAAE13E,QAAQ/B,OACVy5E,EAAE13E,QAAQ7B,UAAYya,KAAQkP,wBAC7B+wI,GAEY,eAAA50H,EAAA72B,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAC,IAAA,OAAAF,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACR,IAAIwG,QAAQ,SAAAC,GAAO,OAAI+gD,WAAW/gD,EAAS,OADnC,cAAA3G,EAAAE,KAAA,EAED47G,GAAiB/1J,GAFhB,cAAAi6C,EAAAG,OAAA,SAAAH,EAAAuC,MAAA,wBAAAvC,EAAAK,SAAAR,MAAH,yBAAA7V,EAAA0e,MAAAzJ,KAAA0J,YAAA,EAKb62G,GAAUp/G,KAAK,SAAA6D,GACbw6G,aAAaC,QAAb,sBAAA3vJ,OAA2CiqB,GAAKktB,KAAKnJ,UAAUkH,MAI/D06G,EAAc,KAAAc,EACqBd,EAA7B56J,EADQ07J,EACR17J,KAAMC,EADEy7J,EACFz7J,MAAO45J,EADL6B,EACK7B,KAAM9rI,EADX2tI,EACW3tI,MAiB3B,GAfIA,GAAS/rB,EAAQlC,UAAYkC,EAAQhC,MAAQgC,EAAQ/B,OAAS+B,EAAQ9B,aACxEy8B,EAAG,iBAAA3xB,OACgBiqB,EADhB,yBAAH,GAAAjqB,OAEO+iB,EAAM0D,YAAYxG,OAFzB,uCAGA0R,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,mBAAH,GAAAjqB,OAA6C+iB,EAAM0D,YAAYxG,OAA/D,uCACA0R,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,oBAAH,GAAAjqB,OAA8C+iB,EAAM0D,YAAYxG,OAAhE,uCACA0R,EAAG,iBAAA3xB,OACgBiqB,EADhB,uBAAH,GAAAjqB,OAEO+iB,EAAM0D,YAAYxG,OAFzB,wCAKGjpB,EAAQlC,UAAakC,EAAQhC,MAChC06J,aAAaC,QAAb,sBAAA3vJ,OAA2CiqB,GAAK,aAG9Cj1B,GAAQC,GAAS45J,EAAM,CACzB,IAAMsB,EAA2B71H,IAAE81H,WAAWp7J,GACxCq7J,EAAgB/1H,IAAEc,UAAU+0H,GAC5BG,EAAch2H,IAAE9E,QAAQ66H,KAAmB/1H,IAAE9E,QAAQx+B,EAAQhC,MAC7Du7J,EAAa1B,IAAS73J,EAAQ9B,WAC9Bs7J,EAAev7J,IAAU+B,EAAQ/B,MAIlC08B,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,mBAFPqmI,OAE8Ch8J,EAD1C,2CAAA0L,OAAqFqwJ,GAKrF1+H,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,yBAFPsmI,OAEoDj8J,EADhD,8CAAA0L,OAA8F6uJ,GAK9Fl9H,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,oBAFPumI,OAE+Cl8J,EAD3C,6CAAA0L,OAAwF/K,IAsFjG,OAjFKy5E,EAAE+zF,wBAA2B/zF,EAAE6zF,kBAClC5wI,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,6BAAiD6hI,GAAiBp9E,EAAE+zF,wBACvE9wI,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,sBAA0C6hI,GAAiBp9E,EAAE6zF,kBAE9D7zF,EAAE+8C,UACA/8C,EAAE+zF,yBAA2Bn7J,IAAuBb,SAAmC,MAAxBs8J,EACjEpxI,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,cAAkCiiI,IAAe,GAC3Cx9E,EAAE+zF,yBAA2Bn7J,IAAuBZ,YAAyC,MAA3Bu8J,EAC3EtxI,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,cAAkCiiI,IAAe,GACnB,MAAxB6W,GAA+BE,EAAyB,IACjEtxI,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,c7BhLN67B,I6BgL2D,E7BhL3C7gD,KAAUyB,c6BoLvBgoE,EAAE6zF,kBAAoBh7J,IAAgBjB,aACnCooE,EAAE90E,YACL+3B,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,gBAAoC6hI,GAAiBp9E,EAAE90E,YAExD80E,EAAE70E,eAAiB60E,EAAE70E,cAAcq+B,OAAS,IAC9CvG,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,oBAAwC+hI,GAAgBt9E,EAAE70E,gBAE1D60E,EAAE50E,WACL63B,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,eAAmC6hI,GAAiBp9E,EAAE50E,WAGvD40E,EAAE30E,SAAW,gBAAgBw+G,KAAK7pC,EAAE30E,UACtC43B,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,aAAiC+hI,GAAgBt9E,EAAE30E,SAEnD20E,EAAEt0E,YACLu3B,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,gBAAoC6hI,GAAiBp9E,EAAEt0E,YAEvDs0E,EAAEg0F,eACL/wI,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,mBAAuC6hI,GAAiBp9E,EAAEg0F,eAE1Dh0F,EAAEz0E,YAAY4P,MACjB8nB,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,kBAAsC6hI,GAAiBp9E,EAAEz0E,YAAY4P,MAErE6kE,EAAEz0E,YAAY6P,QACjB6nB,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,kBAAsC6hI,GAAiBp9E,EAAEz0E,YAAY6P,QAErE4kE,EAAEz0E,YAAY8P,OACjB4nB,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,kBAAsC6hI,GAAiBp9E,EAAEz0E,YAAY8P,QAIxE2kE,EAAE6zF,kBAAoBh7J,IAAgBhB,QACnCmoE,EAAEi0F,YACLhxI,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,gBAAoC6hI,GAAiBp9E,EAAEi0F,YAEvDj0F,EAAEk0F,YACLjxI,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,gBAAoC6hI,GAAiBp9E,EAAEk0F,aAIzDl0F,EAAE13E,QAAQlC,WACb68B,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,uBAA2C6hI,GAAiBp9E,EAAE13E,QAAQlC,WAEtE45E,EAAE13E,QAAQhC,OACb28B,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,mBAAuC6hI,GAAiBp9E,EAAE13E,QAAQhC,OAElE05E,EAAE13E,QAAQ7B,UACbw8B,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,sBAA0C6hI,GAAiBp9E,EAAE13E,QAAQ7B,UAEtEu5E,EAAE13E,QAAQ7B,UAAYya,KAAQkP,uBAA0B4vD,EAAE13E,QAAQ/B,QACpE08B,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,oBAAwC6hI,GAAiBp9E,EAAE13E,QAAQ/B,QAEpEy5E,EAAE13E,QAAQ7B,UAAYya,KAAQkP,uBAA0B4vD,EAAE13E,QAAQ9B,aACpEy8B,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,yBAA6C6hI,GAAiBp9E,EAAE13E,QAAQ9B,aAEzEw5E,EAAE13E,QAAQ7B,UAAYya,KAAQkP,uBAA0B4vD,EAAE13E,QAAQ/B,QACpE08B,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,oBAAwC6hI,GAAiBp9E,EAAE13E,QAAQ/B,QAEnEy5E,EAAE+8C,UACL95F,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,cAAkC6hI,GAAiBp9E,EAAE+8C,UAEtD/8C,EAAE+8C,UAAYnxF,IAAE4oI,UAAUx0F,EAAE+8C,WAC9B95F,EAAG,iBAAA3xB,OAAkBiqB,EAAlB,cAAkC+hI,GAAgBt9E,EAAE+8C,UAGzDrnH,OAAOyb,KAAK8R,GAAKk7C,QAAQ,SAAA9sD,GAAG,YAAkBzrB,IAAbq9B,EAAI5R,UAA4B4R,EAAI5R,GAAO,KAErE4R,GAET,MAsLW,SAAA26B,GAAiD,IAA9C7+C,EAA8C6+C,EAA9C7+C,OAAQ01J,EAAsC72G,EAAtC62G,UAAWhxI,EAA2Bm6B,EAA3Bn6B,OAAQy1D,EAAmBt7B,EAAnBs7B,aACvBxsB,EAAQ9gC,IAAE4Y,KAAKzlC,EAAOnV,eACtB8qK,EAAuBjxI,EAAO75B,cAC9Bw6C,EAAMrlC,EAAOqlC,IAEnB,OACE/a,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,aACbtB,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACE1kC,KAAK,gBACL+sK,OAAQ,SAAAC,GAAY,OAClBvrI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGxqB,EAAOnV,cAAc66B,IAAI,SAACowI,EAAal9I,GAAd,OACxB0R,EAAA1P,EAAA2P,cAAA,OACEjY,IAAG,cAAA/f,OAAgBqmB,GACnBgT,UAAU,oDAEVtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OACbtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,gBAAd,mCAA8DhT,EAAQ,IAExE0R,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,YACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UACbtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEjhC,KAAK,SACLqiC,QAAS,WAC6B,IAAhC/rB,EAAOnV,cAAc4/B,QAAyC,IAAzB5/B,EAAc4/B,QACrDiqI,GAAwB,GAE1BmB,EAAal/H,OAAO/d,IAEtB6jE,UAAW,GAEXnyD,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,kCAMrBtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAE,iBAAAqJ,OAAmBqmB,EAAnB,4BACFptB,QAASuN,OAGbuxB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqyE,KACXjkK,GAAE,iBAAAqJ,OAAmBqmB,EAAnB,qBACFptB,QAASoN,IACTw0J,gBAAiB,CAACtzJ,IAAgBhB,OAClCi9J,UAAW,SAACjB,GAAD,OACTY,EAAU/+J,OAAAy0B,EAAA,EAAAz0B,CAAA,GACLqJ,EADI,CAEPnV,cAAegiC,IAAEnH,IAAI1lB,EAAOnV,cAAe,SAACo2E,EAAG+0F,GAC7C,GAAIp9I,IAAUo9I,EAAG,CACf,IAAMC,EAAenB,IAAoBh7J,IAAgBjB,WACzD,OAAOlC,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFsqE,EADL,CAEE6zF,kBACAG,aAAcgB,EAAeh1F,EAAEg0F,kBAAepuK,EAC9CsF,UAAW8pK,EAAeh1F,EAAE90E,UAAY,GACxCE,SAAU4pK,EAAeh1F,EAAE50E,SAAW,GACtCG,YAAaypK,EAAeh1F,EAAEz0E,YAAc,GAC5CG,UAAWspK,EAAeh1F,EAAEt0E,UAAY,GACxCuoK,UAAWe,OAAepvK,EAAYo6E,EAAEi0F,UACxCC,UAAWc,OAAepvK,EAAYo6E,EAAEk0F,YAG5C,OAAOl0F,WAMhB60F,EAAYhB,kBAAoBh7J,IAAgBjB,YAC/CyxB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXj6J,GAAE,iBAAAqJ,OAAmBqmB,EAAnB,kBACF2+F,cAAc,EACd/rH,QAAS6O,IACT4yB,eAAe,eACfo2H,sBAAsB,6BAG1B/4H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACX7xF,GAAE,iBAAAqJ,OAAmBqmB,EAAnB,eACFqU,eAAe,eAGnB3C,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACX7xF,GAAE,iBAAAqJ,OAAmBqmB,EAAnB,mBACFqU,eAAe,mBAGnB3C,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACX7xF,GAAE,iBAAAqJ,OAAmBqmB,EAAnB,cACFqU,eAAe,cAGnB3C,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACX7xF,GAAE,iBAAAqJ,OAAmBqmB,EAAnB,YACFqU,eAAe,YAGnB3C,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWg1E,GACX5mK,GAAE,iBAAAqJ,OAAmBqmB,EAAnB,iBACFqU,eAAe,iBAGnB3C,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACX7xF,GAAE,iBAAAqJ,OAAmBqmB,EAAnB,eACFwT,MAAO,WACP1iC,KAAK,WACLkoK,aAAa,MAKpBkE,EAAYhB,kBAAoBh7J,IAAgBhB,OAC/CwxB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAc7xF,GAAE,iBAAAqJ,OAAmBqmB,EAAnB,kBAEpC0R,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACX7xF,GAAE,iBAAAqJ,OAAmBqmB,EAAnB,eACFlvB,KAAK,WACLkoK,aAAa,MAKrBtnI,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWo7E,IACXhtK,GAAE,iBAAAqJ,OAAmBqmB,EAAnB,aACFu9I,YAAa,cACbC,aAAc,CACZ5qK,QAAS43J,eACTn2H,eAAgB,kBAChBo2H,sBAAuB,UACvB8S,YAAa,eAEfE,WAAY,CACV7qK,QAAS00B,IACT+M,eAAgB,gBAChBo2H,sBAAuB,QACvB8S,YAAa,iBAGjB7rI,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWC,KACX7xF,GAAE,iBAAAqJ,OAAmBqmB,EAAnB,aACFlvB,KAAK,SACL87C,IAAI,IACJH,IAAI,MACJixH,KAAK,OAGRX,GACCrrI,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,SACXtB,EAAA1P,EAAA2P,cAAA,cAASorI,GAA+B,IACxCrrI,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAMzhC,GAAI,wBAAyBmkK,aAASxmK,EAAW6C,KAAM,cAKpE27C,GAAOsoB,EAAQtoB,GACd/a,EAAA1P,EAAA2P,cAAA,SACED,EAAA1P,EAAA2P,cAAA,UACEwB,QAAS,SAAAgiE,GACPA,EAAMwoE,cAAcxrD,OACpBhd,EAAM9R,iBACN45E,EAAa5pH,KAAK,CAChB1iD,QAAS,CACPlC,SAAU,GACVC,SAAU,GACVC,KAAM,GACNE,WAAY,KACZC,QAAS,GACTF,MAAO,MAETwtK,uBAAwB,GACxBF,gBAAiB,GACjBtoK,YAAa,CACX4P,SAAKvV,EACLwV,WAAOxV,EACPyV,UAAMzV,GAERsuK,UAAW,GACXhpK,UAAW,GACXC,cAAe,GACfC,SAAU,GACVC,OAAQ,GACR0xH,QAAS,KACTi3C,aAAc,GACdtoK,UAAW,GACXuoK,UAAW,KAEbR,GAAwB,IAE1BhrK,KAAK,UAEL4gC,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAS6rI,SAAS,IAClBlsI,EAAA1P,EAAA2P,cAAA,kCACQ,IACVD,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACEzhC,GAAE,oBAAAqJ,OAAsBo7D,EAAQ,EAAI,UAAY,OAChDvuC,KAAM,CAAEimB,MAAKuxC,KAAMvxC,EAAMsoB,MAI9B8mG,GACCnqI,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,wBACZ/gC,EAAc4/B,OAAS,GACtBH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,UACEqB,UAAU,qBACVG,QAAS,SAAAiB,GACPA,EAAEivD,iBACFy4E,GAAwB,KAG1BpqI,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,sBAPf,YAaJtB,EAAA1P,EAAA2P,cAAA,UACEqB,UAAU,sCACVliC,KAAK,SACLqiC,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,KAHzC,iBAmBtBsqB,EAAA1P,EAAA2P,cAACksI,GAAD,CAAwBhxE,YA1pBJ,WACVmvE,GAAhBD,IAypBgE37E,KAAM27E,OC3sB7D+B,GAAgD,SAAA/tI,GAAShyB,OAAAu9F,GAAA,EAAAv9F,CAAAgyB,GAIxDqlF,cAAZ,IACMjsC,EAAW0E,cAGXvW,EAAWgV,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE6zC,KAAKgvB,WACxClJ,EAAcvc,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkB6lB,YAAYriE,OACpE+4D,EAAajT,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkB6lB,YAAYtJ,aAQzEpS,oBAAU,WAJRhE,EAASxpC,KAA6Bo+H,mBAAmB,CAAEzmG,eAM1D,IAGH,IAAM0mG,EAAqBltI,kBACzB,iBAAM,CACJ,CACE4wD,OAAQ,OACRk0B,SAAU,SAAC5zF,GAAD,OAAYA,EAAEi8I,WACxB3kB,SAAU,WACVriC,KAAM,SAACuiC,GACL,OAAO9pE,KAAM8pE,EAAI9qH,MAAQ,KAAK0Z,OAAO,gBAGzC,CACEs5C,OAAQ,OACRk0B,SAAU,SAAC5zF,GAAD,OAAYA,EAAEi8I,WACxB3kB,SAAU,WACVriC,KAAM,SAACuiC,GACL,OAAO9pE,KAAM8pE,EAAI9qH,MAAQ,KAAK0Z,OAAO,eAGzC,CACEs5C,OAAQ,aACRk0B,SAAU,YACVqB,KAAM,SAACuiC,GAEL,OAAKA,EAAI9qH,MAGA8qH,EAAI9qH,MAFJgD,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,wBAO5B,IAGIyxE,EAAe3zE,kBAAQ,WAC3B,MAAO,CACL4uC,SAAU,GACVukC,UAAW,EACX50E,OAAQ,GACR60E,YAAa,KAEd,IAGH,OACExyE,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG2tD,GACC7tD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,mBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,MAAMlB,MAAO,CAAE2rE,WAAY,aACxC/rE,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,6CADf,IAC6DtB,EAAA1P,EAAA2P,cAAA,6BAE7DD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OACbtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAS8a,KAAK,WADhB,IAC4Bnb,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,aAAhB,iBAI9BusD,GAAcsJ,GAAsC,IAAvBA,EAAYh3D,QAAgBH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,OACzDwtD,GAAcsJ,GAAeA,EAAYh3D,OAAS,GAClDH,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,mBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,MAAMlB,MAAO,CAAE2rE,WAAY,aACxC/rE,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,6CACbtB,EAAA1P,EAAA2P,cAAA,6BAEFD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OACbtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACEozE,SAAS,eACTo4C,WAAYygB,EAAmBnsI,OAC/BzT,QAAS4/I,EACTx3I,KAAMqiE,EACNq0D,aAAc,CAAC,MAAO,MAAO,OAC7BghB,eAAe,EACfz5D,aAAcA,EACd05D,oBAAoB,EACpB9gB,UAAQ,EACR+gB,kBAAkB,EAClBC,cAAc,EACdrrI,UAAU,oBAGdtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,YACbtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAb,iFC1GCsrI,GAA+C,SAAAvuI,GAAShyB,OAAAu9F,GAAA,EAAAv9F,CAAAgyB,GAAA,IAAAssG,EACfxzD,IAAM6C,UAAS,GADD6wD,EAAAx+H,OAAAqoD,EAAA,EAAAroD,CAAAs+H,EAAA,GAC3DkiC,EAD2DhiC,EAAA,GAAAG,GAAAH,EAAA,GAEpB1zD,IAAM6C,UAAS,IAFKixD,EAAA5+H,OAAAqoD,EAAA,EAAAroD,CAAA2+H,EAAA,GAAAC,EAAA,GAAAA,EAAA,GAQ/C7rG,kBAAQ,WACzB,OAAOytI,EAAqB,UAAY,YACvC,CAACA,IAEJ,OACE7sI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,mBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OAkBbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,SACbtB,EAAA1P,EAAA2P,cAAC6sI,GAAD,OAEF9sI,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,SAIbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,mBACbtB,EAAA1P,EAAA2P,cAAA,oDACAD,EAAA1P,EAAA2P,cAAA,oJAIAD,EAAA1P,EAAA2P,cAAA,wCACAD,EAAA1P,EAAA2P,cAAA,oNAIAD,EAAA1P,EAAA2P,cAAA,+BACAD,EAAA1P,EAAA2P,cAAA,8IAIAD,EAAA1P,EAAA2P,cAAA,0BACAD,EAAA1P,EAAA2P,cAAA,0ICvCD8sI,GAGR,SAAA1uI,GAA2B,IAAxBqwD,EAAwBrwD,EAAxBqwD,KAAMyM,EAAkB98D,EAAlB88D,YACN1jB,EAAW0E,cAEXj+E,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEif,SAASy+B,SAAW19C,EAAEif,SAASy+B,QAAQx3B,YAE3EspH,EAAqF,CACzFzmK,kBAAchK,EACd0wK,gCAA4B1wK,EAC5BkK,yBAAqBlK,EACrB2wK,2BAA4B,CAC1BnwK,SAAU,GACVC,SAAU,GACVC,KAAM,GACNC,MAAO,GACPC,WAAY,GACZC,QAAS,IAEX+vK,8BAA0B5wK,EAC1BiK,+BAA2BjK,EAC3BmK,kCAA8BnK,GAsK1B+yF,EAAW7sD,sBACf,SAAC/sB,EAADg0H,GAA2B,IAAhB6tB,EAAgB7tB,EAAhB6tB,UAGHC,EAAqD,CACzD34J,KAAM,2BACNyH,yBAA0B,CACxBC,aAAcmP,EAAOnP,eAAiB4E,IAAkBS,IAAMiE,KAAaQ,MAAQR,KAAaO,WAChG3J,oBAAqBiP,EAAOjP,oBAC5BymK,2BAA4Bx3J,EAAOw3J,2BACnCC,yBAA0Bz3J,EAAOy3J,yBACjC3mK,0BAA2BkP,EAAOlP,0BAClCE,6BAA8Bm0J,GAAcnlJ,EAAOhP,gCAMlDgP,EAAOw3J,mCACH1V,EAAalxJ,yBAAyB4mK,2BAE1Cx3J,EAAOy3J,iCACH3V,EAAalxJ,yBAAyB6mK,yBAE3Cz3J,EAAOjP,sBAAwB8J,KAAoBM,mBAC9C2mJ,EAAalxJ,yBAAyB4mK,2BAE3Cx3J,EAAOu3J,6BAA+B9hK,IAAkBU,KAC1D2rJ,EAAalxJ,yBAAyBG,oBAAsB8J,KAAoB+pJ,MAGlF7iF,EACExpC,KAA6BwpH,yBAAyB,CACpDv5J,YACAouC,QAASkrH,KAGbD,IACAp8D,IAEAw8D,aAAaC,QAAb,iDAAuE,cAEzE,CAACz8D,IAGH,OACEn7D,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEwsD,cAAeu9E,EACf19E,SAAUA,EACV3hC,SApNe,SAACj4C,GAAkD,IAAA+jJ,EAUhE5B,EACAC,EAXgE50H,EAC7BxtB,EAA/Bw3J,4BAEiE,CACvEnwK,SAAU,GACVE,KAAM,GACNC,MAAO,GACPE,QAAS,IAJHL,EAH4DmmC,EAG5DnmC,SAAUE,EAHkDimC,EAGlDjmC,KAAMC,EAH4CgmC,EAG5ChmC,MAAOE,EAHqC8lC,EAGrC9lC,QASzB46J,EAA4B56J,IAAYya,KAAQkP,sBAChDkxI,EAA0BN,aAAaO,QAAb,kDAEhC,GAAID,GAAuD,cAA5BA,EAAyC,KAAAE,EACtEN,EAAez4G,KAAK0F,MAAMmzG,GAClBh7J,EAF8Dk7J,EAE9Dl7J,KAAMC,EAFwDi7J,EAExDj7J,MAAO45J,EAFiDqB,EAEjDrB,KAAM9rI,EAF2CmtI,EAE3CntI,MACrBotI,EAA2B71H,IAAE81H,WAAWp7J,GACxCq7J,EAAgB/1H,IAAEc,UAAU+0H,GAC5BG,EACJ7iJ,EAAOw3J,4BACP3qI,IAAE9E,QAAQ66H,KAAmB/1H,IAAE9E,QAAQ/nB,EAAOw3J,2BAA2BjwK,MACrEu7J,EAAa9iJ,EAAOw3J,4BAA8BpW,IAASphJ,EAAOw3J,2BAA2B/vK,WAC7Fs7J,EAAe/iJ,EAAOw3J,4BAA8BhwK,IAAUwY,EAAOw3J,2BAA2BhwK,MAGlF46J,IAFM9sI,IAASutI,IAAeC,IAAcC,GAK9D17J,GAAYE,GAAQC,GAASE,IAAYya,KAAQkP,wBAA0B+wI,GAChE,eAAAvjG,EAAAloD,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAC,IAAA,OAAAF,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACR,IAAIwG,QAAQ,SAAAC,GAAO,OAAI+gD,WAAW/gD,EAAS,OADnC,UAETnqC,EAAOw3J,2BAFE,CAAAh0H,EAAAE,KAAA,eAAAF,EAAAG,OAAA,wBAAAH,EAAAE,KAAA,EAKD47G,GAAiBt/I,EAAOw3J,4BALvB,cAAAh0H,EAAAG,OAAA,SAAAH,EAAAuC,MAAA,wBAAAvC,EAAAK,SAAAR,MAAH,yBAAAwb,EAAA3S,MAAAzJ,KAAA0J,YAAA,EAQb62G,GAAUp/G,KAAK,SAAA6D,GACbw6G,aAAaC,QAAb,iDAAuEx4G,KAAKnJ,UAAUkH,MAI1F,GAAI06G,EAAc,KAUdv6D,EAVcq7D,EACqBd,EAA7B56J,EADQ07J,EACR17J,KAAMC,EADEy7J,EACFz7J,MAAO45J,EADL6B,EACK7B,KAAM9rI,EADX2tI,EACW3tI,MAE3B,GACEA,GACAtV,EAAOw3J,4BACPx3J,EAAOw3J,2BAA2BnwK,UAClC2Y,EAAOw3J,2BAA2BjwK,MAClCyY,EAAOw3J,2BAA2BhwK,OAClCwY,EAAOw3J,2BAA2B/vK,WAElC,OAAAmgG,EAAA,GAAAjxF,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,2CAAAr1F,OACgD+iB,EAAM0D,YAAYxG,OADlE,wCAAA7b,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,qCAAAr1F,OAE0C+iB,EAAM0D,YAAYxG,OAF5D,wCAAA7b,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,sCAAAr1F,OAG2C+iB,EAAM0D,YAAYxG,OAH7D,wCAAA7b,OAAA2tB,EAAA,EAAA3tB,CAAAixF,EAAA,yCAAAr1F,OAI8C+iB,EAAM0D,YAAYxG,OAJhE,wCAAAo1E,EAeF,IANG5nF,EAAOw3J,6BAA+Bx3J,EAAOw3J,2BAA2BnwK,UACxE2Y,EAAOw3J,6BAA+Bx3J,EAAOw3J,2BAA2BjwK,OAEzE06J,aAAaC,QAAb,iDAAuE,aAGrE36J,GAAQC,GAAS45J,EAAM,KAAA4C,EACnBtB,EAA2B71H,IAAE81H,WAAWp7J,GACxCq7J,EAAgB/1H,IAAEc,UAAU+0H,GAC5BG,EACJ7iJ,EAAOw3J,4BACP3qI,IAAE9E,QAAQ66H,KAAmB/1H,IAAE9E,QAAQ/nB,EAAOw3J,2BAA2BjwK,MACrEu7J,EAAa9iJ,EAAOw3J,4BAA8BpW,IAASphJ,EAAOw3J,2BAA2B/vK,WAC7Fs7J,EAAe/iJ,EAAOw3J,4BAA8BhwK,IAAUwY,EAAOw3J,2BAA2BhwK,MAIhGk9B,GAAkBs/H,EAAA,GAAArtJ,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EACrB,qCAAuC3F,GACtCr+I,EAAOw3J,4BAA8Bx3J,EAAOw3J,2BAA2B9vK,UAFnDiP,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAIrB,sCAAwC3F,GACvCr+I,EAAOw3J,4BAA8Bx3J,EAAOw3J,2BAA2BnwK,WALnDsP,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAOrB,wCACC3F,IACEiE,GACItiJ,EAAOw3J,4BAA8Bx3J,EAAOw3J,2BAA2B/vK,cAEvEq7J,EAJN,uDAAAvwJ,OAK2D6uJ,QACvDv6J,GAdgB8P,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAerB,kCACC3F,GAAiBr+I,EAAOw3J,4BAA8Bx3J,EAAOw3J,2BAA2BjwK,QACvFs7J,EADD,+CAAAtwJ,OAEmDqwJ,QAC/C/7J,GAnBgB8P,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAoBrB,mCACC3F,IACEiE,GACItiJ,EAAOw3J,4BAA8Bx3J,EAAOw3J,2BAA2BhwK,SAEvEu7J,EAJN,iDAAAxwJ,OAKqD/K,QACjDX,GA3BgB8P,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAAA,eA4BJ3F,GAAiBr+I,EAAOnP,eA5BpB8F,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAAA,sBA6BG3F,GAAiBr+I,EAAOjP,sBA7B3B4F,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAAA,4BA8BS3F,GAAiBr+I,EAAOlP,4BA9BjC6F,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAAA,+BA+BY3F,GAAiBr+I,EAAOhP,+BA/BpC2F,OAAA2tB,EAAA,EAAA3tB,CAAAqtJ,EAAA,6BAgCU3F,GAAiBr+I,EAAOu3J,6BAhClCvT,GAqCxB,OAFArtJ,OAAOyb,KAAKsS,GAAQ06C,QAAQ,SAAA9sD,GAAG,YAAqBzrB,IAAhB69B,EAAOpS,UAA4BoS,EAAOpS,GAAO,KAE9EoS,GAGX,IAAMA,GAAMq/H,EAAA,GAAAptJ,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,eACQ1F,GAAiBr+I,EAAOnP,eADhC8F,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,sBAGR/jJ,EAAOu3J,6BAA+B9hK,IAAkBS,IACpDmoJ,GAAiBr+I,EAAOjP,0BACxBlK,GALI8P,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,4BAMqB1F,GAAiBr+I,EAAOlP,4BAN7C6F,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,+BAOwB1F,GAAiBr+I,EAAOhP,+BAPhD2F,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,6BAQsB1F,GAAiBr+I,EAAOu3J,6BAR9C5gK,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,qCAS8B1F,GACtCr+I,EAAOjP,sBAAwB8J,KAAoBM,YAC/C6E,EAAOw3J,4BAA8Bx3J,EAAOw3J,2BAA2B9vK,UAXnEiP,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,sCAc+B1F,GACvCr+I,EAAOjP,sBAAwB8J,KAAoBM,YAC/C6E,EAAOw3J,4BAA8Bx3J,EAAOw3J,2BAA2BnwK,WAhBnEsP,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,wCAmBiC1F,GACzCr+I,EAAOjP,sBAAwB8J,KAAoBM,YAC/C6E,EAAOw3J,4BAA8Bx3J,EAAOw3J,2BAA2B/vK,aArBnEkP,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,kCAwB2B1F,GACnCr+I,EAAOjP,sBAAwB8J,KAAoBM,YAC/C6E,EAAOw3J,4BAA8Bx3J,EAAOw3J,2BAA2BjwK,OA1BnEoP,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,mCA6B4B1F,GACpCr+I,EAAOjP,sBAAwB8J,KAAoBM,YAC/C6E,EAAOw3J,4BAA8Bx3J,EAAOw3J,2BAA2BhwK,QA/BnEmP,OAAA2tB,EAAA,EAAA3tB,CAAAotJ,EAAA,2BAkCoB1F,GAC5Br+I,EAAOjP,sBAAwB8J,KAAoBO,OAAQ4E,EAAOy3J,2BAnC1D1T,GAuCZ,OADsBl3H,IAAE0kI,OAAO7sI,EAAQmI,IAAEhF,QAsDvCoyD,kBAAkB,GAEjB,SAAA42D,GAAA,IAAG12D,EAAH02D,EAAG12D,aAAcn6E,EAAjB6wI,EAAiB7wI,OAAgB6hJ,GAAjChR,EAAyBnsH,OAAzBmsH,EAAiCgR,WAAjC,OACCv3H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOyvD,QAAS,kBAAMqL,KAAezM,KAAMA,GACzC1uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,0CAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,QAAMqvD,SAAUO,GACd7vD,EAAA1P,EAAA2P,cAAA,0EACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,eACH4xF,UAAWqyE,KACX3hK,QAASyK,IACTg3B,eAAe,aAGnB3C,EAAA1P,EAAA2P,cAAA,wDACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,4BACH4xF,UAAWqyE,KACX3hK,QAASsP,IACTmyB,eAAe,sBAGnB3C,EAAA1P,EAAA2P,cAAA,4DACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,6BACH4xF,UAAWqyE,KACX3hK,QAASyK,IACTg3B,eAAe,sBAGlBjtB,EAAOu3J,6BAA+B9hK,IAAkBS,KACvDo0B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,gEACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,sBACH4xF,UAAWqyE,KACX3hK,QAAS0P,IACT+xB,eAAe,yBAGlBjtB,EAAOjP,sBAAwB8J,KAAoBO,OAClDkvB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOrkC,GAAG,2BAA2B4xF,UAAWC,KAAc3uD,MAAM,WAGvEpsB,EAAOjP,sBAAwB8J,KAAoBM,YAClDmvB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,6CACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXt6J,KAAM,qCACNK,GAAI,qCACJkjC,MAAM,UACN5gC,QAAS43J,eACTC,sBAAsB,aAG1B/4H,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,sCACHL,KAAK,sCACLiyF,UAAWC,KACX3uD,MAAM,eAGV9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,sCACHL,KAAK,sCACLiyF,UAAWC,KACX3uD,MAAM,eAGV9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,kCACHL,KAAK,kCACLiyF,UAAWC,KACX3uD,MAAM,UAGV9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACG3qB,EAAOw3J,4BACNx3J,EAAOw3J,2BAA2B9vK,UAAYya,KAAQkP,uBACpDiZ,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACEutD,UAAWqoE,KACXt6J,KAAM,mCACNK,GAAI,mCACJkjC,MAAM,QACN5gC,QAAS00B,IACTmjI,sBAAsB,UAG3BrjJ,EAAOw3J,4BACNx3J,EAAOw3J,2BAA2B9vK,UAAYya,KAAQkP,uBACR,KAA9CrR,EAAOw3J,2BAA2B9vK,SAChC4iC,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAOutD,UAAWC,KAAclyF,KAAM,QAASK,GAAI,QAASkjC,MAAM,cAGxE9B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,wCACHL,KAAK,wCACLiyF,UAAWC,KACX3uD,MAAM,mBAOlB9B,EAAA1P,EAAA2P,cAAA,0DACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,+BACH4xF,UAAWqyE,KACX3hK,QAASyK,IACTg3B,eAAe,eAKvB3C,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CACEC,QAAQ,YACRnvD,QAAS,WACP81H,IACAp8D,MAJJ,UASAn7D,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,KAAjE,eCpYC03J,GAGR,SAAA/uI,GAA2B,IAAxBqwD,EAAwBrwD,EAAxBqwD,KAAMyM,EAAkB98D,EAAlB88D,YAUNkyE,EAAgF,CACpFrtK,sBAAkBzD,EAClBgG,iBAAahG,EACbkG,sBAAkBlG,EAClBiG,iCAA6BjG,EAC7BmG,kCAA8BnG,EAC9B2X,iBAAa3X,EACb4X,yBAAqB5X,EACrB6X,6BAAyB7X,EACzB8X,kBAAc9X,GAOV+yF,EAAW7sD,sBACf,SAAC/sB,EAADwtB,IAGEq0H,EAHyBr0H,EAAhBq0H,aAITp8D,KAEF,CAACA,IAGH,OACEn7D,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CAAQwsD,cAAe49E,EAAsC/9E,SAAUA,EAAU3hC,SAfhE,SAACj4C,GAClB,MAAO,KAeJ,SAAA6+C,GAAA,IAAGs7B,EAAHt7B,EAAGs7B,aAAcy9E,EAAjB/4G,EAAiB+4G,aAAc53J,EAA/B6+C,EAA+B7+C,OAA/B,OACCsqB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOquD,KAAMA,EAAMoB,QAAS,kBAAMqL,MAChCn7D,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,yCAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,CAAqB9uD,UAAU,UAC7BtB,EAAA1P,EAAA2P,cAAA,wKAKAD,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAAA,sEACAD,EAAA1P,EAAA2P,cAAA,yFACAD,EAAA1P,EAAA2P,cAAA,mFAGFD,EAAA1P,EAAA2P,cAAA,mKAIAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,mBACH+jC,eAAe,UACf6tD,UAAWqyE,KACX3hK,QAASyK,IACTgyF,SAAU2vE,KAGb53J,EAAO1V,mBAAqBmL,IAAkBS,KAC7Co0B,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,sCACH+jC,eAAe,sCACf6tD,UAAWC,KACXkN,SAAU2vE,EACV/uI,YAAY,eAIlByB,EAAA1P,EAAA2P,cAAA,4EAEAD,EAAA1P,EAAA2P,cAAA,4BACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,cACH+jC,eAAe,UACf6tD,UAAWqyE,KACX3hK,QAASyK,IACTgyF,SAAU2vE,KAIdttI,EAAA1P,EAAA2P,cAAA,kCACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,mBACH+jC,eAAe,UACf6tD,UAAWqyE,KACX3hK,QAASyK,IACTgyF,SAAU2vE,KAIdttI,EAAA1P,EAAA2P,cAAA,6CACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,8BACH+jC,eAAe,UACf6tD,UAAWqyE,KACX3hK,QAASyK,IACTgyF,SAAU2vE,KAIdttI,EAAA1P,EAAA2P,cAAA,+EACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,+BACH+jC,eAAe,UACf6tD,UAAWqyE,KACX3hK,QAASyK,IACTgyF,SAAU2vE,KAIdttI,EAAA1P,EAAA2P,cAAA,4EACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,cACH+jC,eAAe,UACf6tD,UAAWqyE,KACX3hK,QAASyK,IACTgyF,SAAU2vE,KAGb53J,EAAOxB,cAAgB/I,IAAkBS,KACxCo0B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,mEACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,sBACH+jC,eAAe,UACf6tD,UAAWqyE,KACX3hK,QAASyK,IACTgyF,SAAU2vE,KAGdttI,EAAA1P,EAAA2P,cAAA,6PAKAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,0BACH+jC,eAAe,UACf6tD,UAAWqyE,KACX3hK,QAASyK,IACTgyF,SAAU2vE,KAGdttI,EAAA1P,EAAA2P,cAAA,oTAKAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,eACH+jC,eAAe,UACf6tD,UAAWqyE,KACX3hK,QAASyK,IACTgyF,SAAU2vE,MAKlBttI,EAAA1P,EAAA2P,cAAA,8EACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACgD,GAAA,EAAD,CACErkC,GAAG,iBACH+jC,eAAe,iBACf6tD,UAAW+8E,IACXrsK,QAAS,CACP,CACE4gC,MAAO,wBACP9E,MAAOxvB,KAAWggK,SAEpB,CACE1rI,MAAO,uCACP9E,MAAOxvB,KAAWigK,WAGtB9vE,SAAU2vE,MAIhBttI,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,KACE1wD,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,YAAYnvD,QAAS,kBAAM05D,MAA3C,UAGAn7D,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,UAAUnvD,QAAS,SAAC/rB,GAAD,OAAiBm6E,EAAan6E,IAASioF,SAAU2vE,GAApF,eC5MCI,GAA2C,SAAArvI,GAAShyB,OAAAu9F,GAAA,EAAAv9F,CAAAgyB,GAC/D,IA6DyCqY,EA7DnCp6C,EAAgBs+E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQ5+E,gBAChDipF,EAAW3K,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBilB,eAAehR,WACpEuR,EAA2Blc,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBwlB,yBAAyB75C,UAC9F4wC,EAAajT,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBwlB,yBAAyBjJ,aAG9EvnF,EAAyCwwF,EAAzCxwF,yBACAtB,EADyC8xF,EAAfrzF,WAC1BuB,aAENuB,EAMED,EANFC,aACAE,EAKEH,EALFG,oBACAymK,EAIE5mK,EAJF4mK,2BACAC,EAGE7mK,EAHF6mK,yBACA3mK,EAEEF,EAFFE,0BACAE,EACEJ,EADFI,6BAIIinK,EAAyBpnK,IAAiBsJ,KAAaQ,MAAQ,MAAQ,KACvEu9J,EAA6BnnK,IAAwB8J,KAAoB+pJ,KAAO,MAAQ,KApBhCvgF,EAsCQC,oBAAS,GAtCjBC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAsCvD8zF,EAtCuD5zF,EAAA,GAsC1B6zF,EAtC0B7zF,EAAA,GAAAuhB,EAuCsBxhB,oBAAS,GAvC/ByhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAuCvDuyE,EAvCuDtyE,EAAA,GAuCnBuyE,EAvCmBvyE,EAAA,GA6CxDwyE,EAAuC,WAC3CD,GAAuCD,IAInCG,EAAqBC,YAAsB7xK,GAC3C8xK,EACJpuI,EAAA1P,EAAA2P,cAAA,KACEwyC,KAAM47F,YAAuB,qBAAsBH,GACnD5rE,OAAO,SACPgsE,IAAI,uBAEHJ,GAwBL,OAAK3oF,GAAYsI,EAAmB7tD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,MAGlCL,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,mBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,aACbtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,gBACXtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,sCADf,gCAKJtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OAAf,gEAEEtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,QAAQqsI,IAEvB3tI,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OAAf,oEAEEtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,QAAQssI,GACW,QAA/BA,GACC5tI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,iCAEEF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,QACV76B,IAAwB8J,KAAoBM,WAAa,cAAgBpK,GAE3EA,IAAwB8J,KAAoBM,YAAcq8J,GACzDltI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,oCAEEF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,aAAa4rI,EAA2BnwK,UACpDmwK,EAA2BlwK,UAC1BgjC,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,QAAQ4rI,EAA2BlwK,UAElDgjC,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,QACV4rI,EAA2BjwK,KAD9B,KACsCiwK,EAA2BhwK,MAAO,IACrEgwK,EAA2B/vK,aAIjCsJ,IAAwB8J,KAAoBO,OAASq8J,GACpDntI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,kCAEEF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,QAAQ6rI,OAOjCntI,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OAAf,8CAEEtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,QAvER,eADwBoV,EAwEwBlwC,GAtEtD,aAEM,SAAXkwC,EACK,OAEF,SAmEC1W,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OAAf,oCAEEtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,QAAQy5H,GAAwBr0J,MAGjDs5B,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OACbtB,EAAA1P,EAAA2P,cAAA,UACEqB,UAAU,kBACVlB,MAAO,CAAEiiB,MAAO,SAChB5gB,QAAS,kBAAMwsI,MAHjB,cAWRjuI,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,mBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,aACbtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,gBACXtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,oCADf,0BAMJtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OAMbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,SAAf,kBACiBtB,EAAA1P,EAAA2P,cAAA,cAAoCj7B,IAAgB,EAhGpE,WAEF,aA+FKA,GACAg7B,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,oBAAb,mHAEe8sI,EAFf,oEAONpuI,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UAGnBtB,EAAA1P,EAAA2P,cAACsuI,GAAD,CAAyB7/E,KAAMm/E,EAA6B1yE,YA7I1B,WACpC2yE,GAAgCD,MA6I9B7tI,EAAA1P,EAAA2P,cAACuuI,GAAD,CACE9/E,KAAMq/E,EACN5yE,YAAa8yE,SC5KjB1a,GAA2Bj/H,KAN7Bk/H,gBACAC,gBACAC,kBACAC,iBACAC,0BACA38D,eAGWw3E,GAAwD,SAAApwI,GAAShyB,OAAAu9F,GAAA,EAAAv9F,CAAAgyB,GAC5E,IAAMo5C,EAAW0E,cACXj+E,EAAY08E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQh9E,YAC5CsV,EAAoBonE,YACxB,SAAAp9C,GAAC,OAAIA,EAAE8zC,kBAAkBwlB,yBAAyB75C,QAAQ/2C,wBAEtDwoK,KAAsBl7J,GAA2C,KAAtBA,GAC3Cm7J,ErCND,SAAqCjjE,EAAsCkjE,GAChF,IACMz7H,EAAMu4D,EADCkjB,gBAEb,OAAOxvF,kBAAQ,kBAAQmD,IAAEgnH,YAAYqlB,IAAersI,IAAEhF,MAAM4V,GAAOy7H,EAAaz7H,GAAM,CAACy7H,EAAYz7H,IqCGvF07H,CAAyB,SAAArxI,GAAC,OAAIA,EAAEmxI,KAAO,cAPwB71D,EAQjDC,eAAjB+1D,EARkEziK,OAAAqoD,EAAA,EAAAroD,CAAAysG,EAAA,MAYrEg7C,EAASrxH,sBACb,SAACssI,GrCPE,IAAgCC,IqCQND,ErCPxBxsI,IAAEnH,IAAIm4H,GAA2Bj/H,KAAM,SAACijB,EAAGD,GAAJ,OAAUA,IAAGxd,SAASk1I,IqCQ9DF,EAAcjb,GAA8BC,OAAOib,KAGvD,CAACD,IASH,OANArzF,oBAAU,WACJv9E,GACFu5E,EAASxpC,KAA6BghI,uCAAuC,CAAE/wK,gBAEhF,CAACA,EAAWu5E,IAGbz3C,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACbtB,EAAA1P,EAAA2P,cAACivI,GAAA5+I,EAAD,CAAM6+I,iBAAkBR,EAAK/vK,GAAG,oBAAoBgiC,SAAU,SAACmuI,GAAD,OAAgBjb,EAAOib,KACnF/uI,EAAA1P,EAAA2P,cAACmvI,GAAA9+I,EAAD,CAAK++I,SAAU7b,GAAW3hI,MAAM,iBAC7B88I,IAAQnb,IAAaxzH,EAAA1P,EAAA2P,cAACqvI,GAAD,OAExBtvI,EAAA1P,EAAA2P,cAACmvI,GAAA9+I,EAAD,CAAK++I,SAAU5b,GAAW5hI,MAAM,qBAC7B88I,IAAQlb,IAAazzH,EAAA1P,EAAA2P,cAACsvI,GAAD,OAExBvvI,EAAA1P,EAAA2P,cAACmvI,GAAA9+I,EAAD,CAAK++I,SAAU3b,GAAa7hI,MAAM,uBAC/B88I,IAAQjb,IAAe1zH,EAAA1P,EAAA2P,cAACuvI,GAAD,OAE1BxvI,EAAA1P,EAAA2P,cAACmvI,GAAA9+I,EAAD,CAAK++I,SAAU1b,GAAY9hI,MAAM,eAC9B88I,IAAQhb,IAAc3zH,EAAA1P,EAAA2P,cAACwvI,GAAD,OAEzBzvI,EAAA1P,EAAA2P,cAACmvI,GAAA9+I,EAAD,CAAK++I,SAAUp4E,GAAUplE,MAAM,YAC5B88I,IAAQ13E,IAAYj3D,EAAA1P,EAAA2P,cAACyvI,GAAD,OAEtBhB,GACC1uI,EAAA1P,EAAA2P,cAACmvI,GAAA9+I,EAAD,CAAK++I,SAAUzb,GAAqB/hI,MAAM,iBACvC88I,IAAQ/a,IAAuB5zH,EAAA1P,EAAA2P,cAAC0vI,GAAD,WCrEjCC,GAAgE,SAAAvxI,GAAmB,IAAhBitD,EAAgBjtD,EAAhBitD,UACxEukF,EAAej1F,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQA,SAAW19C,EAAE09C,QAAQA,QAAQ40F,eAC5ExzK,EAAgBs+E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQ5+E,gBAChDE,EAAgBo+E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQqb,gBAAkB/4D,EAAE09C,QAAQqb,eAAe/5F,gBAG3FuzK,EAAmBttI,sBAAY,SAAC0S,GAEpC,IAAM66H,EAAkB76H,EAAOltB,QAAQ,WAAY,OAAOC,OAC1D,OAAQitB,GACN,IAAK,SACH,OAAOnV,EAAA1P,EAAA2P,cAAA,QAAMG,MAAO,CAAE2gE,MAAO,eAAgBD,WAAY,MAAQkvE,GACnE,IAAK,WAEL,IAAK,SACH,OAAOhwI,EAAA1P,EAAA2P,cAAA,QAAMG,MAAO,CAAE2gE,MAAO,gBAAiBD,WAAY,MAAQkvE,GACpE,IAAK,yBACH,OACEhwI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,OAAOlB,MAAO,CAAE0gE,WAAY,MACzCkvE,GAEHhwI,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,eAAhB,wBACuBtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAc/jC,cAAeA,IADpD,4CAKN,QACE,OACE0jC,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,OAAOlB,MAAO,CAAE0gE,WAAY,MACzCkvE,KAIR,IAEH,OACEhwI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACbtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAiBiB,UAAU,YAAYiyF,aAAiBjoC,GAAxD,MAEFtrD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,eACdtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QACbuuI,EADH,OACqBvzK,EADrB,KACsC,KAC9B,IACPyzK,EAAiBvzK,GAAiB,OC/C9ByzK,GAA6D,WACxE,OACEjwI,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAACiwI,GAAD,QAKOC,GAAsD,WACjE,OACEnwI,EAAA1P,EAAA2P,cAAC0vG,GACKE,aACFp+H,IAAUoF,kBACVmpB,EAAA1P,EAAA2P,cAACmwI,GAAD,CAAyB9kF,UAAW75E,IAAUoF,qBAGhDmpB,EAAA1P,EAAA2P,cAACowI,GAAD,QClBAC,GAA2E,SAAAjyI,GAAkC,IAA/BpJ,EAA+BoJ,EAA/BpJ,OAAQ8c,EAAuB1T,EAAvB0T,iBAAuBizD,EAC1E5qC,YAAsBnlC,GAArDkyB,EADyG69C,EACzG79C,WAAYI,EAD6Fy9C,EAC7Fz9C,OAAQ7iD,EADqFsgG,EACrFtgG,OACtBy0D,EAAuB8rC,YAA2BhwE,EAAQ8c,GAAoB,IAC9Ew+H,EAAanxI,kBAAQ,kBAAMmD,IAAE,CAACy7C,KAAM72B,GAAYzQ,OAAO,SAAUyiB,IAAyBxuC,KAAqBi8B,GAAK,MAAQ,KAAKxG,KAAK,KAAK,CAAC+G,EAAYgS,IAC9J,OACEn5B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,UAAUyQ,GAC5B/R,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,gBAAgBivI,GAChCvwI,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,gBACbimB,EADH,IACY7iD,IAAW4M,KAAWg2C,KAAO,OAAS,SAM3C4yD,GAAqE,SAAAh3E,GAAkC,IAA/BjO,EAA+BiO,EAA/BjO,OAAQ8c,EAAuB7O,EAAvB6O,iBAC3F,OACE/R,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGw4C,aAAYzjD,IAAW+K,EAAA1P,EAAA2P,cAACuwI,GAAD,CAAkBv7I,OAAQA,EAAQ8c,iBAAkBA,KAC1E2mC,aAAYzjD,IAAW+K,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,UAAUrM,KCqBrDw7I,GAAmB,CACvBlgI,OAAQ,GACRT,eAAgB,EAChBO,UAAW,EACXF,iBAAkB,EAClBO,SAAU,EACVD,SAAU,EACVH,KAAM,EACNrlC,KAAM,EACNF,IAAK,EACLilC,WAAY,EACZC,kBAAmB,EACnBF,iBAAiB,EACjB2gI,oBAAqB,EACrBC,wBAAyB,GAGdC,GAAgD,WAAM,IACzD1zK,EAAU21G,GAAc,aAAxB31G,MADyD68E,EAErCC,wBAA6Bz9E,GAFQ09E,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAE1Dp8C,EAF0Ds8C,EAAA,GAElD9D,EAFkD8D,EAAA,GAAAuhB,EAGvBxhB,wBAAqCz9E,GAHdk/F,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAG1Dq1E,EAH0Dp1E,EAAA,GAG3Cq1E,EAH2Cr1E,EAAA,GAIzD1nE,EAAY26G,eAAZ36G,QAJyDioD,EAKlCpB,YAAiB,SAAAp9C,GAAC,MAAK,CACpD2K,UAAW4oI,YAAavzI,GACxBsqC,QAASkpG,YAAmBxzI,MAFtB2K,EALyD6zC,EAKzD7zC,UAAW2/B,EAL8CkU,EAK9ClU,QAL8C8zB,EAS/B5hB,mBAAS98E,EAAMq1G,WATgB1W,EAAAxvF,OAAAqoD,EAAA,EAAAroD,CAAAuvF,EAAA,GAS1D2W,EAT0D1W,EAAA,GAS/Co1E,EAT+Cp1E,EAAA,GAAAG,EAUjChiB,mBAAS98E,EAAM8wE,UAVkBiuB,EAAA5vF,OAAAqoD,EAAA,EAAAroD,CAAA2vF,EAAA,GAU1DhuB,EAV0DiuB,EAAA,GAUhD/lB,EAVgD+lB,EAAA,GAW3D54B,EAAQ9gC,IAAE4Y,KAAKhT,GAEbi0C,EAAeN,cAAfM,WACF/vC,EAAS5J,sBACb,SAACxN,GACCmnD,EAAWj0C,UAAUkE,OAAOpX,IAE9B,CAACmnD,EAAWj0C,YAGR+oI,EAAgBt2F,YAAiB,SAAAp9C,GAAC,OAAI2zI,aAAmB3zI,EAAGsqC,KAE5DhzC,EAAOsK,kBAAQ,WACnB,OAAOmD,IAAE3E,OACP2E,IAAEnH,IAAI+M,EAAW,SAAAq9E,GACf,IAAM31E,EAAYtN,IAAExa,KAAKmpJ,EAAe,SAAA59H,GAAC,OAAIA,EAAE/C,SAAWi1E,EAAEvwF,UAAWw7I,GAErElgI,EAYEV,EAZFU,OACAT,EAWED,EAXFC,eACAO,EAUER,EAVFQ,UACAF,EASEN,EATFM,iBACAH,EAQEH,EARFG,WACAM,EAOET,EAPFS,KACArlC,EAME4kC,EANF5kC,KACAF,EAKE8kC,EALF9kC,IACA2lC,EAIEb,EAJFa,SACAD,EAGEZ,EAHFY,SACAV,EAEEF,EAFFE,gBACAE,EACEJ,EADFI,kBAdkB4qG,EAiBcroG,aAChC1C,EACAE,EACAC,EACAS,EACAD,EACAF,EACAR,GAPMmB,EAjBY2pG,EAiBZ3pG,OAAQC,EAjBI0pG,EAiBJ1pG,cAShB,MAAO,CACLZ,SACA6gI,YAAa5rD,EACb11E,iBACAO,YACAF,mBACAO,WACAD,WACAH,OACArlC,OACAF,MACAilC,aACAC,oBACAF,kBACA2gI,oBAAqBx/H,EACrBy/H,wBAAyC,IAAhBx/H,KAG7B,SAAAjT,GAAC,QAAMA,EAAEqS,UAEV,CAAC2gI,IAEE3lB,EAAY9oH,sBAAY,SAAC3N,GAAD,SAAA7sB,OAA+B6sB,EAAKyb,SAAU,IAEtE8gI,EAAmB5uI,sBACvB,SAAC6uI,GACC,GAAI3zI,EACF,MAAO,CAAE/+B,GAAI++B,EAAQ4zI,KAAOhvI,IAAEgnH,YAAY+nB,GAAuC,SAAlBT,EAAVS,IAIzD,CAAC3zI,EAAQkzI,IAlFsDl+C,EAqFjB34C,mBAAmB,IArFF44C,EAAAvmH,OAAAqoD,EAAA,EAAAroD,CAAAsmH,EAAA,GAqF1D6+C,EArF0D5+C,EAAA,GAqFxC6+C,EArFwC7+C,EAAA,GAuF3Dpf,EAAS/wE,sBACb,SAAC8zE,GACC,IAAMm7D,EAAUnvI,IAAEyjB,MAAMuwD,IAAS86D,EAAmC,QAAlBR,GAClD,GAAIa,EAAS,KACH9yK,EAAkB8yK,EAAlB9yK,GAAI2yK,EAAcG,EAAdH,KAAMI,EAAQD,EAARC,IAClBx7F,EAAUv3E,GACVkyK,EAAiBS,EAAO,OAASI,EAAM,WAAQp1K,KAGnD,CAACi1K,IAOKxoJ,EAAYmgG,eAAZngG,QACFF,EAAc8xD,YAAiBowC,KAC7B5rH,EAAS+pH,eAAT/pH,KACAq4E,EAAaqE,cAAbrE,SACF6T,EAAYlsF,EACZwyK,EAAgBh3F,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEhV,OAAOqlE,aAErDpS,oBAAU,WACR,IAAMwvC,EAAmB,CACvBniG,YAAaA,GAAe,GAC5BE,UACAsiE,YACApG,cAAc74E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACTkzF,KAKP,OAFA9nB,EAASyzC,KAAYhlF,YAAY+kF,EAAiB/lC,gBAClD9I,EAAWzzD,SAASJ,MAAM4iG,gBAAgBF,GACnC,WACLxzC,EAASyzC,KAAYhlF,YAAY+kF,EAAiB/lC,gBAClD9I,EAAWzzD,SAASJ,MAAM4iG,gBAAgBF,KAE3C,CAACumD,EAAkB7zI,IAEtB,IAAMi2E,EAAYx0E,kBAAQ,WACxB,OAAI4uC,EACyC,IAApCzrC,IAAE+3G,MAAMj3E,GAAS,GAAK2K,GAAkB,EAAIzrC,IAAE+3G,MAAMj3E,GAAS,GAAK2K,GAEpE,GACN,CAAC3K,EAAO2K,IAEL0lC,EAASjxE,sBAAY,SAAC8vE,GAC1B0+D,EAAa1+D,IACZ,IAEGoB,EAAalxE,sBAAY,SAACurC,GAC9BkI,EAAYlI,IACX,IAEGthD,EAAiB0S,kBACrB,iBAAM,CACJ,CACE4wD,OAAQ,SACRk0B,SAAU,SACVyjC,SAAS,EACTpiC,KAAM,SAAAlnF,GAAA,IAAGypH,EAAHzpH,EAAGypH,IAAH,OACJ9nH,EAAA1P,EAAA2P,cAAC4xI,GAAD,CACE58I,OAAQ6yH,EAAI/oJ,SAASwxC,OACrBwB,iBAAkB+1G,EAAI/oJ,SAASqyK,YAAYr/H,kBAAoB+1G,EAAI/oJ,SAASwxC,WAIlF,CACEy/C,OAAQ,OACRk0B,SAAU,iBACVyjC,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAA0iC,GAAA,SAAA1iC,EAAAroC,GAAA,OAAA+qE,EAAArmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA4oG,EAAA5oG,YAAAkmE,EAAA,CAAE,SAAAriF,GAAA,IAAG4kH,EAAH5kH,EAAG4kH,IAAH,OAAqC9nH,EAAA1P,EAAA2P,cAACkiH,GAAD,CAAkBnlH,MAAO8qH,EAAI/oJ,SAAS+wC,oBAEnF,CACEkgD,OAAQ,SACRk0B,SAAU,YACVyjC,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAA4iC,GAAA,SAAA5iC,EAAApoC,GAAA,OAAAgrE,EAAAvmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA8oG,EAAA9oG,YAAAkmE,EAAA,CAAE,SAAAhxD,GAAqC,IAAlCuzF,EAAkCvzF,EAAlCuzF,IACDjuH,EAAMqpE,iBAAO,GAEnB,OADI4kD,EAAI/oJ,SAASsxC,YAAWxW,EAAI0lE,QAAUuoD,EAAI/oJ,SAASsxC,WAChDrQ,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAcrD,MAAOnD,EAAI0lE,QAASm7C,MAAI,EAACr1C,UAAQ,EAACysE,aAAc,OAGzE,CACE9hF,OAAQ,MACRk0B,SAAU,SAAC5zF,GAAD,OAAyBA,EAAE6f,kBACrCw3G,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAA8iC,GAAA,SAAA9iC,EAAAjoC,GAAA,OAAA+qE,EAAAzmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAgpG,EAAAhpG,YAAAkmE,EAAA,CAAE,SAAAjoB,GAAqC,IAAlCwqD,EAAkCxqD,EAAlCwqD,IACDjuH,EAAMqpE,iBAAO,GAEnB,OADI4kD,EAAI/oJ,SAASoxC,mBAAkBtW,EAAI0lE,QAAUuoD,EAAI/oJ,SAASoxC,kBACvDnQ,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAcrD,MAAOnD,EAAI0lE,QAASm7C,MAAI,EAAChnB,SAAO,EAACD,UAAQ,OAGlE,CACEzjC,OAAQ,MACRk0B,SAAU,WACVyjC,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAAijC,GAAA,SAAAjjC,EAAAhoC,GAAA,OAAAirE,EAAA5mG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAmpG,EAAAnpG,YAAAkmE,EAAA,CAAE,SAAAmkB,GAAqC,IAAlCoe,EAAkCpe,EAAlCoe,IACP,OAAOiqB,aAAcjqB,EAAI/oJ,SAASwxC,QAAU,GAAKvQ,EAAA1P,EAAA2P,cAACkiH,GAAD,CAAkBnlH,MAAO8qH,EAAI/oJ,SAAS2xC,cAG3F,CACEs/C,OAAQ,MACRk0B,SAAU,WACVyjC,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAAmjC,GAAA,SAAAnjC,EAAAyhB,GAAA,OAAA0hB,EAAA9mG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAqpG,EAAArpG,YAAAkmE,EAAA,CAAE,SAAAghC,GAAqC,IAAlCuB,EAAkCvB,EAAlCuB,IACP,OAAOiqB,aAAcjqB,EAAI/oJ,SAASwxC,QAAU,GAAKvQ,EAAA1P,EAAA2P,cAACkiH,GAAD,CAAkBnlH,MAAO8qH,EAAI/oJ,SAAS0xC,cAG3F,CACEu/C,OAAQ,OACRk0B,SAAU,OACVyjC,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAAqjC,GAAA,SAAArjC,EAAA0hB,GAAA,OAAA2hB,EAAAhnG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAupG,EAAAvpG,YAAAkmE,EAAA,CAAE,SAAAohC,GAAqC,IAAlCmB,EAAkCnB,EAAlCmB,IACD7+E,EAAW6+E,EAAI/oJ,SAASqyK,YAAYn8I,OAAO+vB,MAAM,KAAK7kB,OAAS,EAC/D6xI,EAAUlqB,EAAI/oJ,SAASqyK,YAAYlrH,YAAcn1C,IAAU+0C,MACjE,OAAImjB,GAAY+oG,EAAgBhyI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MACzBF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO8qH,EAAI/oJ,SAASuxC,KAAM+0D,UAAQ,OAGrD,CACErV,OAAQ,cACRk0B,SAAU,aACVyjC,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAAujC,GAAA,SAAAvjC,EAAA2hB,GAAA,OAAA4hB,EAAAlnG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAypG,EAAAzpG,YAAAkmE,EAAA,CAAE,SAAA6hC,GAAqC,IAAlCU,EAAkCV,EAAlCU,IACP,OACE9nH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACErD,MAAO8qH,EAAI/oJ,SAASgxC,gBAAkB+3G,EAAI/oJ,SAASkxC,kBAAoB63G,EAAI/oJ,SAASixC,WACpFq1D,UAAQ,OAKhB,CACErV,OAAQ,QACR23D,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAAyjC,GAAA,SAAAzjC,EAAA4hB,GAAA,OAAA6hB,EAAApnG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA2pG,EAAA3pG,YAAAkmE,EAAA,CAAE,SAAA+hC,GAAqC,IAAlCQ,EAAkCR,EAAlCQ,IACP,OAAIA,EAAI/oJ,SAASqyK,YAAYlrH,YAAcn1C,IAAU+0C,MAC5C9lB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MAEL4nH,EAAI/oJ,SAASgxC,gBACR/P,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO8qH,EAAI/oJ,SAASixC,WAAYq1D,UAAQ,IAEhDrlE,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,0BAA0BzP,MAAM,2CAI1D,CACEm+D,OAAQ,OACRk0B,SAAU,OACVyjC,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAA2jC,GAAA,SAAA3jC,EAAA6hB,GAAA,OAAA8hB,EAAAtnG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA6pG,EAAA7pG,YAAAkmE,EAAA,CAAE,SAAAsiC,GAAA,IAAGC,EAAHD,EAAGC,IAAH,OAAqC9nH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO8qH,EAAI/oJ,SAASkM,KAAMo6F,UAAQ,OAEvF,CACErV,OAAQ,MACRk0B,SAAU,MACVyjC,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAA6jC,GAAA,SAAA7jC,EAAAoiB,GAAA,OAAAyhB,EAAAxnG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA+pG,EAAA/pG,YAAAkmE,EAAA,CAAE,SAAA2iC,GAAA,IAAGJ,EAAHI,EAAGJ,IAAH,OAAqC9nH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO8qH,EAAI/oJ,SAASgM,IAAKs6F,UAAQ,OAEtF,CACErV,OAAQ,QACRpxF,GAAI,QACJ2mH,KAAI,SAAAkkC,GAAA,SAAAlkC,EAAAqiB,GAAA,OAAA6hB,EAAA7nG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAoqG,EAAApqG,YAAAkmE,EAAA,CAAE,SAAA6iC,GAAqC,IACnCzkE,EADmCykE,EAAlCN,IACiB/oJ,SAASqyK,YAC3Br/H,EAAmB4xC,EAAY5xC,kBAAoB4xC,EAAY1uD,OAU/DilH,EnE5GoB,SAClCjlH,EACAuiH,EACAnB,GAEA,IAQMK,EAAqBL,GAAyB,GAE9CoG,EAAmBrH,GAVD,SAACwB,GAEvB,IAAMC,EAAcD,EACjB3hH,OAAOA,GACPoI,SAASg6B,KACT3lB,SAAS,GACZ,OAAO8lG,EAAGX,IAImCxqI,OAAAy0B,EAAA,EAAAz0B,CAAA,CAC7Ci/E,UAAW75E,IAAU0E,OAClBugI,IAGL,OAAOt3G,kBAAQ,kBAAMq9G,GAAkB,CAACjF,EAAIviH,ImEwFXg9I,CATDrgI,aACtBG,EACA4xC,EAAYz9B,UACZrU,YAAsB8xC,EAAYz9B,WAClC,CAAE3nD,KAAMolF,EAAYplF,KAAMwzC,mBAAkBD,WAAYC,IAErCtP,sBAAY,SAACm0G,GAChC,OAAOA,EAAQ5lF,OAAOhgD,KAAYy6C,MACjC,IAC0E,CAAE13B,YAC/E,OAAOiM,EAAA1P,EAAA2P,cAACiyI,GAAD,CAAkBzwI,QAAS,kBAAMy4G,UAG5C,CACElqD,OAAQ,QACRpxF,GAAI,QACJ2mH,KAAI,SAAAqkC,GAAA,SAAArkC,EAAAsiB,GAAA,OAAA+hB,EAAAhoG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAuqG,EAAAvqG,YAAAkmE,EAAA,CAAE,SAAA+iC,GAAqC,IACnC3kE,EADmC2kE,EAAlCR,IACiB/oJ,SAASqyK,YAC3Br/H,EAAmB4xC,EAAY5xC,kBAAoB4xC,EAAY1uD,OAC/DwkH,EAAkB7nG,aACtBG,EACA4xC,EAAYz9B,UACZrU,YAAsB8xC,EAAYz9B,WAClC,CAAE3nD,KAAMolF,EAAYplF,KAAMwzC,mBAAkBD,WAAYC,IAEpDg5G,EAAQryE,aAAYiL,EAAY1uD,QAChC+1H,EAAoBvoH,sBAAY,SAACm0G,GACrC,OAAOA,GACN,IACGu7B,EAAc56B,GAAqBkC,EAAiBuR,EAAmB,CAAEj3H,YAM/E,OAAIg3H,EACK,KAEF/qH,EAAA1P,EAAA2P,cAACmyI,GAAD,CAAa3wI,QARA,WAClB0wI,IACAp+I,GAAWqoD,EAAW03C,WAAW1yC,UAAUrtD,EAAS4vD,SAS1D,CACEqM,OAAQ,SACRpxF,GAAI,qBACJ0iC,UAAW,aACXikF,KAAI,SAAAykC,GAAA,SAAAzkC,EAAAuiB,GAAA,OAAAkiB,EAAApoG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA2qG,EAAA3qG,YAAAkmE,EAAA,CAAE,SAAAkjC,GAAA,IAAGX,EAAHW,EAAGX,IAAH,OACJ9nH,EAAA1P,EAAA2P,cAAA,UACEqB,UAAU,2BACVzP,MAAM,SACN4P,QAAS,WACP4K,EAAOy7G,EAAI/oJ,SAASwxC,SAEtBnxC,KAAK,UAEL4gC,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,8BAKrB,CAAC+K,EAAQtY,EAASqoD,EAAWj0C,UAAUmE,QAASklI,IAlUea,EAqUxBC,eAAjCC,GArUyDF,EAqUzDE,oBAAqBhzE,GArUoC8yE,EAqUpC9yE,QACvBizE,GAAgB/vI,sBAAY,kBAAM8vI,GAAoB7lJ,EAAS6yE,KAAU,CAACA,GAAS7yE,EAAS8kJ,IAE5Fz+D,GAAe3zE,kBAAQ,WAC3B,IAAMqzI,EAAgBpB,IACtB,MAAO,CACLrjG,SAAUzrC,IAAEgnH,YAAYv7E,GAAY,GAAKA,EACzCukC,UAAWA,GAAa,EACxB50E,OAAQ80I,EAAgB,CAACA,GAAiB,GAC1CjgE,YAAa,KAEd,CAACxkC,EAAUukC,EAAWlvC,IAGnBqvG,GAActzI,kBAAQ,WAC1B,GAAiB,IAAb4uC,EACF,OAAOl5C,EAET,IAAMg0G,EAAQv2B,EAAYvkC,EACpB+6D,EAAMD,EAAQ96D,EACpB,OAAOl5C,EAAKu3B,MAAMy8E,EAAOC,IACxB,CAACj0G,EAAMy9E,EAAWvkC,IAErB,OACEhuC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGpL,GAAQA,EAAKqL,OAAS,IAAMyxI,GAC3B5xI,EAAA1P,EAAA2P,cAACylF,GAAD,CACEjS,SAAS,YACT/mF,QAAS8lJ,KACT19I,KAAM49I,GACNnnB,UAAWA,EACXI,UAAQ,EACRC,eAAa,EACb4gB,eAAa,EACbE,kBAAgB,EAChBl5D,OAAQA,EACRI,UAAWA,EACXF,OAAQA,EACRX,aAAcA,GACdY,WAAYA,EACZk4C,WAAYtpH,IAAE4Y,KAAKzuB,GACnBmnF,eA3Qe,SAACnnF,GACtB,OAAO+kJ,EAAoB/kJ,IA2QrB6qE,QAAQ,KAGVziE,GAAyB,IAAhBA,EAAKqL,QAAgBH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,+BAC/BuxI,GAAiB5xI,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,QC3aXsyI,GAAkB,WAAM,IAC3Bv2F,EAAeN,cAAfM,WAEFx7C,EAAW6B,sBACf,SAACzF,GACC,IAAM8yF,EAAa9yF,EAAQA,EAAMlI,UAAOv4B,EACpCuzH,GACF1zC,EAAWj0C,UAAU4D,IAAI+jF,GAE3B8iD,GAAe,IAEjB,CAACx2F,EAAWj0C,YAGNA,EAAcyyC,YAAiB,SAAAp9C,GAAC,MAAK,CAC3C2K,UAAW4oI,YAAavzI,MADlB2K,UAd2B4xC,EAkBGC,oBAAS,GAlBZC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAkB5B84F,EAlB4B54F,EAAA,GAkBf24F,EAlBe34F,EAAA,GAoBnC,OACEj6C,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKG,MAAO,CAAEoB,QAAS,SACrBxB,EAAA1P,EAAA2P,cAAA,WACED,EAAA1P,EAAA2P,cAAC+zF,GAAD,CACE1oC,UAAW75E,IAAUkF,UACrBse,YAAQ14B,EACRgpF,UAAU,EACV3kD,SAAUA,EACVD,OAAQ,kBAAMiyI,GAAe,IAC7Bt/C,SAAU,SAAC3qD,GACT,GAAKA,EAEE,CACL,IAAMmqG,EAAQ3qI,EAAUpgB,KAAK,SAACy9F,GAAD,OAAOA,EAAEvwF,OAAOw/C,gBAAkB9L,EAAM8L,gBACrEm+F,OAAyBr2K,IAAVu2K,QAHfF,GAAe,IAMnBr0I,YAAY,SACZE,sBAAsB,KAG1BuB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,SACZuxI,GAAe7yI,EAAA1P,EAAA2P,cAAA,+CCpCb8yI,GAA8C,WACzDtnE,GAA0CulE,KAC1C,IAAMzrF,EAAW3K,YAAiB,SAAA19E,GAAK,OAAuC,IAAnCA,EAAMsrB,OAAOkvE,oBAClDH,EAAS68C,aAAsB,SAAA52G,GAAC,OAAwB,IAApBA,EAAE1I,KAAKywD,WAC3CytF,GAAkC,IAAbztF,IAAgC,IAAXgS,EAE1C62B,EAAqB3rF,sBAAY,SAACvlC,GAEtC,OADoBq0I,GAA2Br0I,GAAvCkiH,SAEP,IAT4DizD,EAW9BC,eAAzB/yE,EAXuD8yE,EAWvD9yE,QAASwsB,EAX8CsmD,EAW9CtmD,YAEjB,OACE/rF,EAAA1P,EAAA2P,cAAC0vG,GAADtjI,OAAA8F,OAAA,GACM09H,aAAcp+H,IAAUkF,eAAWpa,GADzC,CAEEwpE,OAAQ/lC,EAAA1P,EAAA2P,cAACgzI,GAAD,MACR7kD,mBAAoBA,EACpBzlG,SAAU42E,EACV4sB,eAAe,EACfD,cAAeH,IAEf/rF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACG2yI,GAAsBhzI,EAAA1P,EAAA2P,cAACizI,GAAD,OACrBF,GAAsBhzI,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KAAoBL,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,UCyBvC8yI,GAAkBh8F,IAAMi8F,KAjDkB,WAAM,IAAA99D,EAC1CC,aAAc,UAAxBtgF,EADoD5oB,OAAAqoD,EAAA,EAAAroD,CAAAipG,EAAA,MAEnD/vB,EAAaqpC,eAAbrpC,SACAv8D,EAAYmgG,eAAZngG,QACF+K,EAAU6mD,YAAiB,SAAAp9C,GAAC,OAAIorF,YAAaprF,EAAGxU,KAEhDmhB,EADiB2xC,cAAfM,WAC0B03C,WAAW1yC,UACrCA,EAAcu3B,KAAdv3B,UAEFxgD,EAAW6B,sBACf,SAACzF,GACC,IAAM6B,EAAc7B,EAAQA,EAAMlI,UAAOv4B,GACtBsiC,EAAcA,EAAY5J,YAAS14B,IACpCsiC,GAAe9K,IAE/BqtD,EAAUviD,GAAa,EAAO,CAAEw0E,SAAS,IACzClpE,EAAepW,EAAS8K,KAG5B,CAAC9K,IAQGyM,EAAUiC,sBAAY,gBAEVlmC,IAAZw3B,GACFqtD,OAAU7kF,GAAW,EAAO,CAAE82G,SAAS,IACvClpE,EAAepW,OAASx3B,IAExBi5C,QAAQC,IAAI,kDAEb,CAACtL,EAAgBpW,IAEpB,OACEiM,EAAA1P,EAAA2P,cAAC+zF,GAAD,CACE1oC,UAAW75E,IAAU0E,MACrB8e,OAAQA,EACRswD,SAAUA,EACV3kD,SAAUA,EACVlC,OAAO,EACP8B,QAASA,MCqCF6yI,GAAoB,SAACp+I,GAChC,IAAMq+I,EAAiBl+D,aAAaS,KAAey9D,gBAC7C30D,EAAoC/jC,YAAiB,SAAA19E,GAAK,OAC9DwhH,GAAgBC,oBAAoBzhH,EAAO+3B,KAEvCs+I,EAAsCn0I,kBAAQ,WAKlD,OAJYmD,IAAE3E,OAAO01I,EAAgB,SAAAhpG,GAEnC,OADwB/nC,IAAExa,KAAK42F,EAAqB,SAAA60D,GAAS,O9LqGlCn1F,E8LrGuDm1F,E9LqGpCl1F,E8LrG+ChU,EAAInjB,W9LsGrGw4B,GAAgBtB,KAAWsB,GAAgBrB,GADb,IAACD,EAAmBC,O8LjG/C,CAACg1F,EAAgB30D,IAEZviC,GADIsnC,cACW5nC,cAAfM,YAERX,oBAAU,WACR,IAAMg4F,EAAqB,eAAAvwI,EAAA72B,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAU,EAAOk6H,GAAP,IAAA7rH,EAAAoc,EAAA,OAAAprB,EAAAvoB,EAAA2oB,KAAA,SAAAQ,GAAA,cAAAA,EAAAN,KAAAM,EAAAL,MAAA,cACtByO,EAAUtlB,IAAEnH,IAAIs4I,EAAkB,SAAAppG,GACtC8R,EAAWv0B,QAAQvb,QAAQrX,EAAQq1C,KAFT7wB,EAAAL,KAAA,EAKHwG,QAAQjD,IAAIkL,GALT,cAKtBoc,EALsBxqB,EAAAgC,KAAAhC,EAAAJ,OAAA,SAMrB4qB,GANqB,wBAAAxqB,EAAAF,SAAAC,MAAH,gBAAA2jC,GAAA,OAAAj6C,EAAA0e,MAAAzJ,KAAA0J,YAAA,GASvB0xH,EAAoCpzI,OAAS,GAC/CszI,EAAsBF,EAAoCn4I,IAAI,SAAAsH,GAAC,OAAIA,EAAEykB,eAEtE,CAAClyB,EAAQs+I,KCvHRI,GAAiB,SAAC12I,GAAD,OACrBsF,IAAEtF,GACC7B,IAAI,SAACmc,EAAGD,GAAJ,OAAAjrC,OAAAy0B,EAAA,EAAAz0B,CAAA,CAAa4oB,OAAQqiB,GAAMC,KAC/B8gC,QAAQ,SAAA9gC,GAAC,OAAIA,EAAEtiB,SACf+H,SCEQ42I,GAAuB,WAClC,IAAM5qJ,EAAUyrF,eACRhzB,EAAoBk3B,KAApBl3B,gBACF7jB,EAAew3C,aAAa,SAAA53E,GAAC,OAAIq2I,aAAgBr2I,EAAGxU,KACpD8qJ,EAAiB1+D,aAAa,SAAA53E,GAAC,OAAIu2I,aAAev2I,EAAGxU,KAErDkqB,EAAe0nC,YAAiB,SAAAp9C,GAAC,OAAIw2I,YAAcx2I,EAAGogC,EAAaxiC,IAAI,SAAA64I,GAAE,OAAIA,EAAGh/I,SAASjM,KAE/FoyD,aAAmB,uBAAwB,CAAEloC,eAAc4gI,iBAAgBl2G,eAAc50C,YACzFyyD,oBAAU,WACJq4F,IDVgB,SAAC72I,EAAoBi3I,GAC3C,IAAMluH,EAAQ2tH,GAAe12I,GACvB4hD,EAAS80F,GAAeO,GAC9B,OAAOz7D,aAAezyD,EAAO64B,GCOJs1F,CAASL,EAAgB5gI,IAC9CuuC,EAAgBvuC,IAEjB,CAACA,EAAcuuC,EAAiB7jB,EAAck2G,KCc7CM,IAAyCC,GAAA,GAAAhoK,OAAA2tB,EAAA,EAAA3tB,CAAAgoK,GAC5C9iK,KAAa+jD,MAD+Bg/G,GAAA,GAAAjoK,OAAA2tB,EAAA,EAAA3tB,CAAAioK,GAE1CC,KAAcxpK,IAAM,CAAEypK,MAAO,CAAE30E,KAAI,kBAAqB40E,IAAK,OAAS90E,KAAM,mBAAoB80E,IAAK,QAF3DpoK,OAAA2tB,EAAA,EAAA3tB,CAAAioK,GAG1CC,KAAcvpK,OAAS,CACtBwpK,MAAO,CAAE30E,KAAI,iBAAoB40E,IAAK,OACtC90E,KAAM,UACN80E,IAAK,QANoCpoK,OAAA2tB,EAAA,EAAA3tB,CAAAioK,GAQ1CC,KAActpK,KAAO,CACpBupK,MAAO,CAAC,CAAE30E,KAAI,kBAAqB40E,IAAK,OAAS,CAAE50E,KAAI,iBAAoB40E,IAAK,QAChF90E,KAAM,eACN80E,IAAK,QAXoCpoK,OAAA2tB,EAAA,EAAA3tB,CAAAioK,GAa1CC,KAAcG,SAAW,CACxBF,MAAO,CAAC,CAAE30E,KAAI,iBAAoB40E,IAAK,OAAS,CAAE50E,KAAI,iBAAoB40E,IAAK,QAC/E90E,KAAM,eACN80E,IAAK,QAhBoCH,KAAAjoK,OAAA2tB,EAAA,EAAA3tB,CAAAgoK,GAmB5C9iK,KAAagkD,MAnB+Bo/G,GAAA,GAAAtoK,OAAA2tB,EAAA,EAAA3tB,CAAAsoK,GAoB1CJ,KAAcxpK,IAAM,CACnBypK,MAAO,CAAE30E,KAAI,gCAAmC40E,IAAK,OACrD90E,KAAM,mBACN80E,IAAK,QAvBoCpoK,OAAA2tB,EAAA,EAAA3tB,CAAAsoK,GAyB1CJ,KAAcvpK,OAAS,CACtBwpK,MAAO,CAAE30E,KAAI,+BAAkC40E,IAAK,OACpD90E,KAAM,UACN80E,IAAK,QA5BoCpoK,OAAA2tB,EAAA,EAAA3tB,CAAAsoK,GA8B1CJ,KAActpK,KAAO,CACpBupK,MAAO,CACL,CAAE30E,KAAI,gCAAmC40E,IAAK,OAC9C,CAAE50E,KAAI,+BAAkC40E,IAAK,QAE/C90E,KAAM,eACN80E,IAAK,QApCoCpoK,OAAA2tB,EAAA,EAAA3tB,CAAAsoK,GAsC1CJ,KAAcG,SAAW,CACxBF,MAAO,CACL,CAAE30E,KAAI,+BAAkC40E,IAAK,OAC7C,CAAE50E,KAAI,+BAAkC40E,IAAK,QAE/C90E,KAAM,eACN80E,IAAK,QA5CoCE,KAAAtoK,OAAA2tB,EAAA,EAAA3tB,CAAAgoK,GA+C5C9iK,KAAaslD,YA/C+B+9G,GAAA,GAAAvoK,OAAA2tB,EAAA,EAAA3tB,CAAAuoK,GAgD1CL,KAAcxpK,IAAM,CACnBypK,MAAO,CAAC,CAAE30E,KAAI,kBAAqB40E,IAAK,OAAS,CAAE50E,KAAI,gCAAmC40E,IAAK,QAC/F90E,KAAM,mBAlDmCtzF,OAAA2tB,EAAA,EAAA3tB,CAAAuoK,GAoD1CL,KAAcvpK,OAAS,CACtBwpK,MAAO,CAAC,CAAE30E,KAAI,kBAAqB40E,IAAK,OAAS,CAAE50E,KAAI,gCAAmC40E,IAAK,QAC/F90E,KAAM,mBAtDmCtzF,OAAA2tB,EAAA,EAAA3tB,CAAAuoK,GAwD1CL,KAActpK,KAAO,CACpBupK,MAAO,CAAC,CAAE30E,KAAI,iBAAoB40E,IAAK,OAAS,CAAE50E,KAAI,+BAAkC40E,IAAK,QAC7F90E,KAAM,oBA1DmCtzF,OAAA2tB,EAAA,EAAA3tB,CAAAuoK,GA4D1CL,KAAcG,SAAW,CACxBF,MAAO,CAAC,CAAE30E,KAAI,iBAAoB40E,IAAK,OAAS,CAAE50E,KAAI,+BAAkC40E,IAAK,QAC7F90E,KAAM,oBA9DmCi1E,KAAAP,IAmElCQ,GAAuB,SAACx3I,GACnC,IAAM2zB,EAASokD,aAAaS,KAAe7kD,QACrC8jH,EAAiB11I,kBAAQ,WAC7B,GAAK/B,GAAa2zB,IAGdj0B,aAAiBM,KAAaonD,aAAmBpnD,GAArD,CAGA,IAAMuiG,EAAM5uE,IAAWhgD,KAAYy6C,IAAMx6C,KAAqBnH,KAAOmH,KAAqBrH,MACpFmrK,EAAgB13I,EAASu2B,QAAQgsE,GACjCo1C,EAAYD,EAAgBA,EAAcxjK,kBAAehV,EACzD04K,EAAcF,EAAgBA,EAAc1/G,cAAW94D,EAC7D,GAAKy4K,QAA6Bz4K,IAAhB04K,EAAlB,CAGeV,KAAcxpK,IAW7B,MAAO,CACLmqK,SAXED,GAAe,EACNV,KAAcxpK,IAChBkqK,GAAe,EACbV,KAAcvpK,OAChBiqK,GAAe,EACbV,KAActpK,KAEdspK,KAAcG,SAKzBt1K,KAAM41K,EACNG,sBAJ0BH,IAAczjK,KAAa+jD,KAAO,MAAQ0/G,IAAczjK,KAAagkD,KAAO,MAAQ,OAM/G,CAACvE,EAAQ3zB,IAEN+3I,EAAeh2I,kBACnB,kBAAO01I,EAAiBV,GAAeU,EAAe11K,MAAM01K,EAAeI,eAAY34K,GACvF,CAACu4K,IAGGO,EAAiBj2I,kBAAQ,kBAAOg2I,GAAgBA,EAAaX,IAAMW,EAAaX,IAAM,IAAK,CAACW,IAC5FE,EAAgBl2I,kBAAQ,kBAAOg2I,GAAgBA,EAAaz1E,KAAOy1E,EAAaz1E,KAAO,IAAK,CAACy1E,IAE7FZ,EAAQp1I,kBAAQ,WACpB,OAAOg2I,EAAgB7yI,IAAEod,QAAQy1H,EAAaZ,OAASY,EAAaZ,MAAQ,CAACY,EAAaZ,OAAU,IACnG,CAACY,IAEJ,MAAO,CACLG,UAAWT,EACXN,QACAa,iBACAC,kBAISE,GAGR,SAAAn3I,GAAwB,IAArBhB,EAAqBgB,EAArBhB,SAAUoqB,EAAWppB,EAAXopB,KAAWguH,EACsBZ,GAAqBx3I,GAA9Dm3I,EADmBiB,EACnBjB,MAAOc,EADYG,EACZH,cAAeD,EADHI,EACGJ,eACtBthJ,EAAY26G,eAAZ36G,QAEF2hJ,EAAY9jI,aAChB6V,EAAKtnB,OAAS,EAAIsnB,EAAK,GAAGjX,iBAAmB,GAC7Cz/B,IAAU6iC,OACV/B,YAAsB9gC,IAAU6iC,QAChC,CACEr1C,KAAMkpD,EAAKtnB,OAAS,EAAIsnB,EAAK,GAAGjX,sBAAmBj0C,EACnDw1C,iBAAkB0V,EAAKtnB,OAAS,EAAIsnB,EAAK,GAAGjX,sBAAmBj0C,EAC/Du1C,WAAY2V,EAAKtnB,OAAS,EAAIsnB,EAAK,GAAGjX,sBAAmBj0C,IAIvDo5K,EAA6B,IADpBvgE,aAAaS,KAAe7kD,QACJ,CAAE8rC,UAAW,aAAgB,CAAEA,UAAW,cAC3EnZ,EAAc+xB,KACdkgE,EAAkBrzI,IAAEgpC,KAAKoY,EAAa,CAAC,OAAQ,aAC/CkyF,EAAYzgE,aAAa,SAAA53E,GAAC,OAAIA,IAC9ByqD,EAAaxD,aAAmBpnD,GAChCy4I,EAAmD,iBAAvBz4I,EAASJ,KAAKC,MAAkD,gBAAvBG,EAASJ,KAAKC,KACnF64I,EAA8C,mBAAvB14I,EAASJ,KAAKC,MAAoD,kBAAvBG,EAASJ,KAAKC,KAChF84I,EAAyB5gE,aAAaS,KAAeogE,qBAiCrDC,EAAO9/B,GA/BO,WAClB,IAAI1kG,EAAWoJ,KAAKC,IAAL6G,MAAA9G,KAAI,CAAS+6H,EAAUnkI,UAAnBzpC,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAgCo7C,EAAKrsB,IAAI,SAAAH,GAAC,OAAKA,EAAE2wB,YAAc3wB,EAAE2wB,YAAc,OAElG,GAAIkqH,EAA2B,CAC7B,IAAMl+D,EAAWnwD,EAAK1/B,KAAK,SAAAkT,GAAC,OAAIA,EAAElqB,YAAcA,IAAU6iC,SACpDuiI,EAAgBv+D,EAAWA,EAAShsD,YAAc,IACxDla,EAAWykI,EAAgBA,EAAgB,IAAM,EAGnD,MAAO,CACLxlH,KAAMlJ,EAAKrsB,IAAI,SAAAk/B,GAAG,OAAAjuD,OAAAy0B,EAAA,EAAAz0B,CAAA,GACbqtI,aAAcp/E,EAAKs7G,GADN,CAEhBhqH,YAAaoqH,OACTz5K,EACAu5K,EACAx7G,EAAIvpD,YAAcA,IAAUijC,OAC1B6hI,EAAUnkI,SACV,IAAMmkI,EAAUnkI,SAClBqkI,EACAz7G,EAAI1O,aAAe0O,EAAI1O,YAAciqH,EAAUnkI,SAC/CmkI,EAAUnkI,aAEhBtgC,WAAYq2C,EAAKtnB,OAAS,EAAI/uB,KAAWwkD,SAAWxkD,KAAWgkD,OAC/D9E,SAAUulH,EAAUn5G,SACpBngB,SAAU7K,EACVvgC,UAAW0kK,EAAUn6G,UACrBG,WAAW,EACXjrB,YAAa,IAIewlI,GAAezyF,GAAe+xF,EAAW,CAAE3hJ,gBAAWx3B,GAAW,GAEzF85K,EAAqBnhE,KAArBmhE,iBACFC,EAAoCl3I,kBAAQ,WAChD,OACEqoB,EAAK7pB,OAAO,SAAA08B,GAAG,OAAIA,EAAIvpD,YAAcA,IAAUijC,SAAQ7T,SACvDsnB,EAAK7pB,OAAO,SAAA08B,GAAG,OAAIA,EAAIvpD,YAAcA,IAAUijC,QAAUsmB,EAAInW,QAAUmW,EAAIrW,aAAY9jB,QAExF,CAACsnB,EAAMkuH,IAEV,OACE31I,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,UACEqB,UAAU,0CACVG,QAAS,WACPysD,OAAOqoF,SAAW,WAChBroF,OAAOsoF,OAAO,EAAG,IAfHN,KAmBlBv4E,UAAW24E,EACXzkJ,MACEykJ,EACI,8BACA,0FAGNl2I,MAAO,CACLiwE,QAASimE,EAAoC,EAAI,GACjDr2D,OAAQq2D,EAAoC,UAAY,gBAGzDD,GACCr2I,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,0BACbtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,kBACbkzI,EAAMp5I,IAAI,SAACq7I,EAAIv0H,GAAL,OACTliB,EAAA1P,EAAA2P,cAAA,QAAMjY,IAAKk6B,EAAI7C,WAAY/d,UAAWm1I,EAAGhC,KACvCz0I,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAS,GAAAr5B,OAAKwuK,EAAG52E,KAAR,eAGf5X,IAAeouF,GACdr2I,EAAA1P,EAAA2P,cAAA,YACED,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,6BAMvBtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,2BACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,4BACZ+0I,GACCr2I,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,mBAAf,aACAtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAS,cAAAr5B,OAAgBotK,IAAmBC,IAGpDrtF,GAAcouF,GAAoBr2I,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,cAAf,cAGvCtB,EAAA1P,EAAA2P,cAAA,YACG5C,GACC2C,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QACEG,MAAQ/C,EAASJ,KAAKC,KAAKpD,SAAS,YAAgC,GAAlB67I,EAClDr0I,UAAU,2BAE8B,QAAtCjE,EAASJ,KAAKk4B,SACdn1B,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,iBACdtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAKsY,KAAI,YAAA1wC,OAAco1B,EAASJ,KAAKi4B,YAGvCl1B,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAWjE,EAASJ,KAAK+4B,QAGhCh2B,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,sCAAsC,SCtRvDo1I,GAAwF,SAAAr4I,GAG/F,IAFJhB,EAEIgB,EAFJhB,SACAoqB,EACIppB,EADJopB,KACIguH,EACsCZ,GAAqBx3I,GAAvDg4I,EADJI,EACIJ,eACAthJ,GAFJ0hJ,EACoBH,cACJ5mC,eAAZ36G,SAEF4iJ,EAAmB/kI,aACvB6V,EAAK,GAAGjX,iBACRz/B,IAAU6iC,OACV/B,YAAsB9gC,IAAU6iC,QAChC,CACEr1C,KAAMkpD,EAAK,GAAGjX,iBACduB,iBAAkB0V,EAAK,GAAGjX,iBAC1BsB,WAAY2V,EAAK,GAAGjX,mBAIlBmzC,EAAc+xB,MAAoCihE,EAClDf,EAAkBrzI,IAAEgpC,KAAKoY,EAAa,CAAC,OAAQ,aAC/CkyF,EAAYzgE,aAAa,SAAA53E,GAAC,OAAIA,IAEhCs/B,EADgBu7C,aAAkBxC,KAAe4F,cAAepqG,KAAc0qD,SAChD1qD,KAAc0qD,MAAQ/qD,KAAYy6C,IAAMz6C,KAAY06C,KAiJhFwqH,EAAO9/B,GA/IO,WAMlB,IAAI1kG,EAAWoJ,KAAKC,IAAL6G,MAAA9G,KAAI,CAAS+6H,EAAUnkI,UAAnBzpC,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAgCo7C,EAAKrsB,IAAI,SAAAH,GAAC,OAAKA,EAAE2wB,YAAc3wB,EAAE2wB,YAAc,OAC5FkqH,EAAmD,iBAAvBz4I,EAASJ,KAAKC,MAAkD,gBAAvBG,EAASJ,KAAKC,KACnF64I,EAA8C,mBAAvB14I,EAASJ,KAAKC,MAAoD,kBAAvBG,EAASJ,KAAKC,KAEtF,GAAI44I,EAA2B,CAC7B,IAAMl+D,EAAWnwD,EAAK1/B,KAAK,SAAAkT,GAAC,OAAIA,EAAElqB,YAAcA,IAAU6iC,SACpDuiI,EAAgBv+D,EAAWA,EAAShsD,YAAc,IAExDla,EAAWykI,EAAgBA,EAAgB,IAAM,EAGnD,GAAIJ,EAAsB,CAGxB,IAAMlqH,EACJpE,GAAQA,EAAK1/B,KAAK,SAAAkT,GAAC,OAAIA,EAAE2wB,cAAgB9Q,KAAKC,IAAL6G,MAAA9G,KAAIzuC,OAAA60B,EAAA,EAAA70B,CAASo7C,EAAKrsB,IAAI,SAAAH,GAAC,OAAIA,EAAE2wB,kBAEpEC,GAAyBA,EAAsBD,cACjDla,EAAWma,EAAsBD,aAAeC,EAAsBD,YAAc,GAOxF,GAAIvuB,GAAmC,kBAAvBA,EAASJ,KAAKC,KAA0B,CAEtD,IAAMw6E,EAAiBjwD,GAAQA,EAAK1/B,KAAK,SAAAkT,GAAC,OAAIA,EAAEkpB,SAAWrJ,KAAKI,IAAL0G,MAAA9G,KAAIzuC,OAAA60B,EAAA,EAAA70B,CAASo7C,EAAKrsB,IAAI,SAAAH,GAAC,OAAIA,EAAEkpB,aAEpFuzD,IAEA56C,EADE46C,EAAexsD,SAAWl6C,KAAYy6C,IAC1Bz6C,KAAYy6C,IAEZz6C,KAAY06C,MAIhC,GAAIruB,GAAmC,iBAAvBA,EAASJ,KAAKC,KAAyB,CAErD,IAAMw6E,EAAiBjwD,GAAQA,EAAK1/B,KAAK,SAAAkT,GAAC,OAAIA,EAAEkpB,SAAWrJ,KAAKI,IAAL0G,MAAA9G,KAAIzuC,OAAA60B,EAAA,EAAA70B,CAASo7C,EAAKrsB,IAAI,SAAAH,GAAC,OAAIA,EAAEkpB,aAEpFuzD,IAEA56C,EADE46C,EAAexsD,SAAWl6C,KAAYy6C,IAC1Bz6C,KAAY06C,KAEZ16C,KAAYy6C,KAMhC,GAAIpuB,IAAoC,mBAAvBA,EAASJ,KAAKC,MAAoD,kBAAvBG,EAASJ,KAAKC,MAA2B,CAEnG,IAAM2uB,EACJpE,GAAQA,EAAK1/B,KAAK,SAAAkT,GAAC,OAAIA,EAAE2wB,cAAgB9Q,KAAKC,IAAL6G,MAAA9G,KAAIzuC,OAAA60B,EAAA,EAAA70B,CAASo7C,EAAKrsB,IAAI,SAAAH,GAAC,OAAIA,EAAE2wB,kBAEpEC,GAAyBA,EAAsBX,SAAWl6C,KAAY06C,OACxEoR,EAAc9rD,KAAYy6C,KAIxBI,GAAyBA,EAAsBX,SAAWl6C,KAAYy6C,MACxEqR,EAAc9rD,KAAY06C,MAK9B,GAAIruB,IAAoC,gBAAvBA,EAASJ,KAAKC,MAAiD,eAAvBG,EAASJ,KAAKC,MAAwB,CAI7F,IAAMivB,EAAe5pB,IAAE5E,OAAO8pB,EAAM,SAAAxsB,GAAC,OAAIA,EAAEkpB,SACrCiI,EAAmB7pB,IAAE8pB,MAAMF,EAAc,EAAG,GAC5CG,EAA0B/pB,IAAEnH,IAAIgxB,EAAkB,SAAAnxB,GAAC,OAAIA,EAAEiwB,SACoB,IAA3C3oB,IAAEimB,KAAK8D,GAAyBnsB,SAElEmsB,EAAwB,KAAOt7C,KAAYy6C,MAC7CqR,EAAc9rD,KAAY06C,MAExBY,EAAwB,KAAOt7C,KAAY06C,OAC7CoR,EAAc9rD,KAAYy6C,MAQhC,GAAIpuB,GAAmC,iBAAvBA,EAASJ,KAAKC,KAAyB,CAErD,IAAM06E,EAAWnwD,EAAK1/B,KAAK,SAAAkT,GAAC,OAAIA,EAAElqB,YAAcA,IAAU6iC,SACtDgkE,IAEA96C,EADE86C,EAAS1sD,SAAWl6C,KAAYy6C,IACpBz6C,KAAYy6C,IAEZz6C,KAAY06C,MAQhC,GAAIruB,GAAmC,gBAAvBA,EAASJ,KAAKC,KAAwB,CAEpD,IAAM+tB,EAAUxD,EAAKrsB,IAAI,SAAAH,GAAC,OAAIA,EAAEiwB,SACmB,IAA3B3oB,IAAEimB,KAAKyC,GAAS9qB,SAGpC28B,EADE7R,EAAQ,KAAOj6C,KAAYy6C,IACfz6C,KAAYy6C,IAEZz6C,KAAY06C,MAKhC,MAAO,CACLiF,KAAMlJ,EAAKrsB,IAAI,SAAAk/B,GAAG,OAAAjuD,OAAAy0B,EAAA,EAAAz0B,CAAA,GACbqtI,aAAcp/E,EAAKs7G,GADN,CAEhBhqH,YAAakqH,EACTx7G,EAAIvpD,YAAcA,IAAUijC,OAC1B,EACA,IACF+hI,EACAz7G,EAAI1O,aAAe0O,EAAI1O,YAAcla,EACrC,MAENtgC,WAAYisB,EAASu2B,QAAQxiD,WAC7Bk/C,SAAUulH,EAAUn5G,SACpBngB,SAAU7K,EACVvgC,UAAW0kK,EAAUn6G,UACrBG,WAAW,EACXjrB,YAAa,GACbsa,OAAQ4R,GAIoBs5G,GAAezyF,EAAa,CAAE5vD,WAAWsJ,GAGzE,OACE2C,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,UACEqB,UAAU,gEACVzP,MAAO,oBACP4P,QAAS,kBAPSy0I,MASlBl2I,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,qBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,0BACbtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,kBACdtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAS,gBAAAr5B,OAAkBotK,EAAlB,eAIlBr1I,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,2BACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,4BACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,wBAAf,WACAtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAS,cAAAr5B,OAAgBotK,IAAmBh4I,EAASJ,KAAKC,WCjM9D05I,GAAoC,WAC/C,IAAM5tJ,EAAUyrF,eACVxpF,EAAUmqF,aAAa,SAAA53E,GAAC,OAAIq4E,KAAeghE,uBAAuBr5I,EAAGxU,KAE3E,OAAKiC,EAKH+U,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,yCACbtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACEk7B,OAAO,QACP38D,GAAG,yBACH2+F,QACEv9D,EAAA1P,EAAA2P,cAAA,WACED,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,qCACZrW,GAGL7rB,KAAK,SAEL4gC,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,uBAAuBliC,KAAK,UAC5C4gC,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,wCAjBZtB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,OCFL42I,GAAwBlvE,KAC5B,SAACpqE,EAAeu5I,GAAhB,OAA8Cv5I,EAAEkU,UAChD,SAAClU,EAAeu5I,GAAhB,OAA8CA,GAC9C,SAACrlI,EAAkBslI,GACjB,OAAIz0I,IAAEulB,SAASpW,GACNA,EAELnP,IAAEulB,SAASkvH,GACNA,EAEF,GAVmBpvE,CAY5B,mCAEWqvE,GAAmB,WAAM,IAC5BvuF,EAAgBiwB,KAAhBjwB,YACA7lD,EAA2CqyE,KAA3CryE,uCAaR,MAAO,CAAE6O,SAZQ0jE,aAAa,SAAC53E,GAAD,OAAmBs5I,GAAsBt5I,EAAGqF,KAYvDq0I,iBAXMz0I,sBACvB,SAACzF,GACC,IAAInD,EAAMmD,EACNnD,EAAM,IACRA,EAAM,GAER6uD,EAAY7uD,IAEd,CAAC6uD,MAMQ7kC,GAA2C,SAAAxlB,GAAY,IAATz/B,EAASy/B,EAATz/B,GAASu4K,EAC3BF,KAA/BvlI,EAD0DylI,EAC1DzlI,SAAUwlI,EADgDC,EAChDD,iBACZlB,EAAyB5gE,aAAaS,KAAeogE,qBACnDt0F,EAAmBg3B,KAAnBh3B,eASR,OACE3hD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAS,+BACZtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAa6a,IAAK,EAAGle,MAAO0U,EAAU0lI,UAAW,EAAGpL,KAAM,EAAGxpI,SAThD,SAACxF,GAChBk6I,EAAiBl6I,GACbg5I,GAA0Bp3K,GAC5B+iF,EAAe/iF,EAAIo+B,QCjCnBq6I,GAAsE,SAAAh5I,GAAoB,IAAjBi5I,EAAiBj5I,EAAjBi5I,WACvEtuJ,EAAUyrF,eACV8iE,EAAkBn4I,kBAAQ,kBAAMk4I,EAAWl8I,IAAI,SAAAoC,GAAC,OAAIA,EAAEP,KAAKC,KAAKmiB,cAAa,CAACi4H,IAC9EE,EAA8BpiE,aAAaS,KAAe4hE,6BAC1Dp6I,EAAWq6I,eACXxyF,EAAgBgwB,KACd1vB,EAAsFN,EAAtFM,gBAAiB3iD,EAAqEqiD,EAArEriD,uCAAwCC,EAA6BoiD,EAA7BpiD,yBAC3D60I,EAAoBviE,aAAa,SAAA53E,GAAC,OAAIq4E,KAAe8hE,kBAAkBn6I,EAAGxU,KAC1E4uJ,EAAiBxiE,aAAa,SAAA53E,GAAC,OAAIA,EAAEklD,aAAqC,IAAvBllD,EAAEklD,WAAWlzB,QAEhEqoH,GADQziE,aAAa,SAAA53E,GAAC,OAAIA,EAAEklD,YAAcllD,EAAEklD,WAAWv9B,QAC7CiwD,aAAa,SAAA53E,GAAC,OAAIq4E,KAAegiE,QAAQr6I,EAAGxU,MACtDu5D,EAAa6yB,aAAa,SAAA53E,GAAC,OAAIq4E,KAAetzB,WAAW/kD,KACzDiqB,EAAO2tD,aAAaS,KAAepuD,MACnCioF,EAAat6B,aAAa,SAAA53E,GAAC,OAAIA,IAE/Bs6I,EAAqBx1F,aAA8B76B,GACnDuJ,EAAuC,QAA9B8mH,EAAmB9mH,OAAmBhgD,KAAYy6C,IAAMz6C,KAAY06C,KAC7EqsH,EAAkB5gH,IAAWpvC,KAAK,SAAAyV,GAAC,OAAIA,EAAEP,KAAKC,OAAS46I,EAAmBv5K,OAjBcy5K,EAkBtDr/D,KAAhC32B,EAlBsFg2F,EAkBtFh2F,YAAaF,EAlByEk2F,EAkBzEl2F,eACfqF,EAAmC,WAAxBuoD,EAAWryG,SAEtB46I,EAAiBx1I,sBACrB,SAAC8hD,GAEC,IAAM2zF,EAAaZ,EAAWvvJ,KAAK,SAAAyV,GAAC,OAAIA,EAAEP,KAAKC,OAASqnD,EAAMhmF,OAE1D25K,GACFl2F,EAAYk2F,EAAY,CACtBlnH,OAAQA,EACRk2B,YAAal2B,IAAWhgD,KAAY06C,OAASy7B,EAC7C/D,SAAS,KAIf,CAACpB,EAAas1F,EAAYtmH,IAGtBmnH,EAAmB/4I,kBAAQ,WAC/B,OAAI/B,GACKk6I,EAAgBxvJ,KAAK,SAAAyV,GAAC,OAAIA,IAAMH,EAASJ,KAAKC,QAEhDsoD,GACN,CAAC+xF,EAAiBl6I,IAEf24I,EAAyB5gE,aAAaS,KAAeogE,qBACrDmC,EAA6Bh5I,kBACjC,oBAAO/B,IAAaN,aAAiBM,KAAa24I,IAClD,CAAC34I,EAAU24I,IAGPqC,EAAmBj5I,kBAAQ,oBAAO/B,IAAYN,aAAiBM,KAA2B,CAC9FA,EACAN,OAGIu7I,EAAuBl5I,kBAAQ,kBAAM/B,IAAam6I,GAA6B,CACnFn6I,EACAm6I,IAGIe,EAAgBn5I,kBACpB,mBAAO/B,IAAaN,aAAiBM,KAAYA,EAASu2B,QAAQM,eAClE,CAAC72B,IAGG66E,EAAc94E,kBAAQ,kBAAO4xB,IAAWhgD,KAAYy6C,KAAqB,CAACuF,IAE1EwnH,EAAiB/1I,sBACrB,SAACy+E,GAAD,OAAuBp/B,EAAeo/B,EAAWlwG,KAAYy6C,IAAMz6C,KAAY06C,OAC/E,CAACo2B,IAGG22F,EAAkBr5I,kBAAQ,kBAA6B,IAAtBu4I,EAA6B,UAAY,IAAK,CAACA,IAEtFl8F,oBAAU,WAEHp+C,GACH2kD,EACE,CAAE/kD,KAAM,CAAEC,KAAMsoD,IAChB,CACEx0B,OAAQA,EACRk2B,YAAal2B,IAAWhgD,KAAY06C,OAASy7B,EAC7C/D,SAAS,IAKX/lD,IAAaw6I,GACf71F,EACE,CAAE/kD,KAAM,CAAEC,KAAM,WAChB,CACE8zB,OAAQA,EACRk2B,YAAal2B,IAAWhgD,KAAY06C,OAASy7B,EAC7C/D,SAAS,KAId,CAAC/lD,IAEJ,IAnG8F08C,EAiHlCC,mBAASm+F,GAjHyBl+F,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAiHvF2+F,EAjHuFz+F,EAAA,GAAAuhB,GAAAvhB,EAAA,GAkHhED,mBAAS0+F,IAlHuDj9E,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAAAI,GAAAH,EAAA,GAAAA,EAAA,GAmH5CzhB,mBAAS,KAnHmC6hB,EAAAxvF,OAAAqoD,EAAA,EAAAroD,CAAAuvF,EAAA,GAAAC,EAAA,GAAAA,EAAA,GAyH9F,OAJApgB,oBAAU,WACRw8F,EAAe,CAAE15K,KAAMm6K,EAAwB17I,MAAO07I,KACrD,CAACA,EAAwB71I,EAAwCC,IAGlE9C,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,cACX82I,GACAp4I,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uCACbtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACE+gF,GAAG,MACHC,IAAI,OACJC,QAAQ,MACRC,SAAS,OACTz0F,MAAM,OACN6wE,UAAW46E,EACX92I,QAAS+2I,EACTvkJ,OAAQikF,KAKdl4E,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,sBACX82I,GAIAp4I,EAAA1P,EAAA2P,cAAC04I,GAAD,CAAe/5K,GAAI6oD,EAAK,IAAMA,EAAK,GAAGn9B,MAG1C0V,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAS,yCAGZtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEu4I,gBAAe,yDAAA3wK,OAA2DwwK,GAC1E/iK,OAAQ6hK,EACRv6I,MAAOm7I,EACPvrC,SAAUqrC,MAoBM,IAAnBL,GAA2B53I,EAAA1P,EAAA2P,cAAC44I,GAAD,MAC3BP,IAAyBX,IAAsBC,GAAkBr1F,GAChEviD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,yCACbtB,EAAA1P,EAAA2P,cAAC64I,GAAD,CAAgBrxH,KAAMA,EAAMpqB,SAAUA,KAGzC06I,GAAmBM,IAAqBT,GAAkBr1F,GACzDviD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,yCAEbtB,EAAA1P,EAAA2P,cAAC84I,GAAD,CAAoBtxH,KAAMA,EAAMpqB,SAAU06I,OAOvCiB,GAAgC,WAC3C,IAAM1B,EAAaliE,aAAa,SAAA5xE,GAAC,OAAIA,EAAE0/C,kBAEvC,OAAOljD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KAAGo3I,EAAWn3I,OAAS,GAAKH,EAAA1P,EAAA2P,cAACg5I,GAAD,CAAgB3B,WAAYA,MCtLpD4B,GAAiB,WAC5B,IAAMjkJ,EAAS4jF,eACTlwF,EAAWusF,KAFiB40B,EAGPlb,eAAnBnnE,EAH0BqiF,EAG1BriF,KAAM/V,EAHoBo4F,EAGpBp4F,SAHoBonE,EAICC,eAJDC,EAAA3sG,OAAAqoD,EAAA,EAAAroD,CAAAysG,EAAA,GAIzBI,EAJyBF,EAAA,GAIzBE,WAAczhC,EAJWuhC,EAAA,GAAAg/D,EAKMr/D,KAAhClvB,EAL0BuuF,EAK1BvuF,eAAgBf,EALUsvF,EAKVtvF,YAoHxB,MAAO,CACL38C,IA/FUtJ,sBACV,SAACyjB,EAAsBhlD,GACrB,IAAMuuF,EAAgB,CACpBvpC,YACA8J,YAAampH,YAA6BjzH,EAAWv9B,IAGjDy+D,EAAW/6E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACZo7C,EACAuyD,aAAYvyD,EAAMxyB,EAAQw6D,IAIzB2pF,EACJlzH,IAAcn1C,IAAUijC,OACpBrrB,EAASka,uCACTla,EAASma,yBAETu2I,EAAkBhtK,OAAOyb,KAAK2/B,GAC9B6xH,EAAiBjtK,OAAOyb,KAAKs/D,GAE/BkyF,EAAen5I,OAAS,GAC1Bm5I,EAAexkG,QAAQ,SAAAnV,GACrB,IAAMrF,EAAM8sB,EAAYznB,GAClB45G,EAAgBF,EAAgBv/I,SAAS6lC,GAGhB,IAA3B05G,EAAgBl5I,OAClBm6B,EAAI1O,YAAc2tH,EAAgB7nI,EAAW0nI,EAE7C9+G,EAAI1O,YAAc0O,EAAI1O,aAAe,IAM3CstD,EACE,CACExnE,SAAqC,IAA3B2nI,EAAgBl5I,OAAei5I,EAAmB,EAC5D3xH,KAAM2/B,EACNzE,kBAAkB,GAEpBzhF,IAGJ,CAACg4G,EAAYzxD,EAAMxyB,EAAQtM,IAmD3B0jB,OAhDa5J,sBACb,SAAC7jC,GACC,IAAMonF,EAAU35E,OAAOyb,KAAK2/B,GAG5B,GAAuB,IAAnBu+B,EAAQ7lD,OAAc,CAExB,IAAMq5I,EAAkBxzF,EAAQj+D,KAAK,SAAAC,GAAG,OAAIA,IAAQppB,IAEpD,GAAI46K,EAAiB,CAEnB,IAAMC,EAAehyH,EAAK+xH,GAE1B,GAAIC,EAAc,CAEhB,IAAMC,EAAcD,EAAa7tH,aAAe,EAChD88B,EAAYgxF,EAAa,CAAErmE,SAAS,IAGpC6F,EACE,CACEzxD,KAAKp7C,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAo7C,EADDp7C,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEDmtK,EAFCntK,OAAAy0B,EAAA,EAAAz0B,CAAA,GAGGotK,EAHH,CAIA7tH,YAAa,EACbrP,SAAUm9H,EAAchoI,MAG5BixC,kBAAkB,GAEpB,CAAE0wB,SAAS,MAOnB57B,EAASlyC,KAAQ87C,UAAU,CAAEziF,MAAM,CAAEy0G,SAAS,KAG9C5pB,KAEF,CAACyvB,EAAYzxD,EAAMgwB,EAAUgS,EAAgBf,EAAah3C,MCxIjDioI,GAA6C,SAAAt7I,GAAiB,IAAdu7I,EAAcv7I,EAAdu7I,QACnD7tI,EAAQmtI,KAARntI,IACF0rI,EAA8BriE,aAAaS,KAAe4hE,6BAC1DoC,EAAezkE,aAAa,SAAA5xE,GAAC,OAAIA,EAAE0/C,gBAAgBxC,KAAK,SAAAljD,GAAC,OAAIA,EAAEP,KAAKC,OAAS43B,IAAO73B,KAAKC,SAEzF48I,EADS1kE,aAAaS,KAAehxB,QACjB1kD,QAAUy5I,EAC9BG,EAAe3kE,aAAaS,KAAekkE,cAC3CtpE,EAAQhuE,sBACZ,WAAwC,IAAvCrjC,EAAuCyiD,UAAA1hB,OAAA,QAAA5jC,IAAAslD,UAAA,GAAAA,UAAA,GAArB9wC,IAAUijC,OACvB8lI,GACFtkI,QAAQxqB,MAAM,0CAEhB+gB,EAAI3sC,EAAM,CAAEi0G,SAAS,KAEvB,CAACtnE,EAAK+tI,IAEO95I,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MAEf,OACEF,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MACI65I,GACA/5I,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACE+qF,cAAe,CACbv5F,MAAOioJ,EAAa,0BAA4B,eAChDzuD,sBAAqB,iBAAApjH,OAAmB6xK,EAAa,WAAa,KAEpExuD,UAAU,OACV3tB,SAAUm8E,IAAerC,EACzBl6E,QAASv9D,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAS8a,KAAK,KAAK+wH,SAAO,IACnC8N,gBAAiB,SAAC/uH,GAChB,IAAMgvH,EAAc,SAAC75G,GAAD,OAAmB,WACrCqwC,EAAMrwC,GACNnV,EAAQivH,mBAEV,OACEl6I,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG25I,GAAgB75I,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoB,QAASw4I,EAAYlpK,IAAU6iC,SAA7C,kBACjB5T,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoB,QAASw4I,EAAYlpK,IAAUijC,SAA7C,sBAOT+lI,GACC/5I,EAAA1P,EAAA2P,cAAA,UACEqB,UAAU,gBACVzP,MAAOioJ,EAAa,0BAA4B,eAChDr4I,QAAS,kBAAMgvE,EAAM1/F,IAAUijC,SAC/B2pD,SAAUm8E,IAAerC,EACzBr4K,KAAK,UAEL4gC,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAS8a,KAAK,KAAK+wH,SAAO,OCtDvBiO,GAAmC,WAAM,IAC5CpuI,EAAQmtI,KAARntI,IACF8tI,EAAezkE,aAAa,SAAA5xE,GAAC,OAAIA,EAAE0/C,gBAAgBxC,KAAK,SAAAljD,GAAC,OAAIA,EAAEP,KAAKC,OAAS43B,IAAO73B,KAAKC,SAEzFk9I,EAAiB33I,sBAAY,WACjCsJ,EAAIh7B,IAAU6iC,OAAQ,CAAEy/D,SAAS,KAChC,CAACtnE,IACEsuI,EAAiB53I,sBAAY,WACjCsJ,EAAIh7B,IAAUijC,OAAQ,CAAEq/D,SAAS,KAChC,CAACtnE,IAEJ,OACE/L,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,SACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,eAAf,kBACAtB,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,wBAAwBG,QAAS44I,EAAgBj7K,KAAK,UACtE4gC,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,gBADf,oBAGCu4I,GACC75I,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,wBAAwBG,QAAS24I,EAAgBh7K,KAAK,UACtE4gC,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,gBADf,qBClBKg5I,GAAa,WACxB,IAAMrlJ,EAASugF,KACP4D,EAAeT,KAAfS,WACFq+D,EAA8BriE,aAAaS,KAAe4hE,6BAC1D8C,EAAen7I,kBAAQ,kBAAMq4I,QAA0Cl7K,IAAX04B,GAAsB,CACtFwiJ,EACAxiJ,IAGF,OACE+K,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,mBACZi5I,GACCv6I,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,gBAAgBlB,MAAO,CACvCo6I,OAAQ,YACRz6I,QAAS,WACR0B,QAAS23E,EAAYh6G,KAAK,UAC3B4gC,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,iBAJf,gBCMKm5I,GAAoB,WAC/B,IAAMvzH,EAAQkuD,aAAa,SAAA53E,GAAC,OAAIA,EAAE0pB,QAC5BwU,EAAY05C,aAAa,SAAA53E,GAAC,OAAIA,EAAEk+B,YAChCg/G,EAActlE,aAAa,SAAA53E,GAAC,OAAIA,EAAEmlD,mBAClCg4F,EAAUtiE,aAAkBC,OAff,WACnB,IAAMtvF,EAAUyrF,eACV72C,EAAew3C,aAAa,SAAA53E,GAAC,OAAI86E,aAAsB96E,EAAGxU,KAC1DqL,EAAuBumJ,eACvBnjG,EAAWk3D,eAEjBlzD,oBAAU,WACRhE,EAASlyC,KAAQskD,YAAYx1D,KAC5B,CAACA,EAAQupC,IAQZi9G,GALqC,IAM7BlyF,EAAagwB,KAAbhwB,SAN6B2yB,EAODlD,KAA5Bn3C,EAP6Bq6C,EAO7Br6C,IAAKu3C,EAPwB8C,EAOxB9C,mBACL2G,EAAaF,KAAbE,SACAhG,EAAamP,eAAbnP,SAYR,OAVA19B,oBAAU,iBACuBl/E,IAAV2qD,IAAuC,IAAhBwzH,KAEvBn4I,IAAEhF,MAAM0jC,IAAQk+C,GAAY3G,GAC3C98C,IAAcvqD,KAAUu0F,YAC1B/c,OAASpsF,GAAW,IAGvB,CAACm+K,EAAaz5G,EAAKu3C,EAAoBtxD,EAAOi4D,EAAUx2B,EAAUgyF,IACrEv/F,aAAmB,YAAa,CAAEna,MAAK/Z,QAAOi4D,WAAUhG,aACjDn5E,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,OCpCH46I,IAA2BC,GAAA,GAAA1uK,OAAA2tB,EAAA,EAAA3tB,CAAA0uK,GAC9B5pK,KAAUs0F,OAAS,OADWp5F,OAAA2tB,EAAA,EAAA3tB,CAAA0uK,GAE9B5pK,KAAUgyE,MAAQ,OAFY92E,OAAA2tB,EAAA,EAAA3tB,CAAA0uK,GAG9B5pK,KAAUw0F,YAAc,WAHMt5F,OAAA2tB,EAAA,EAAA3tB,CAAA0uK,GAI9B5pK,KAAUu0F,WAAa,WAJOr5F,OAAA2tB,EAAA,EAAA3tB,CAAA0uK,GAK9B5pK,KAAUy0F,gBAAkB,cALEm1E,IAQ3BC,GAAyB,CAC7B,CACEl5I,MAAO,SACP9E,MAAO7rB,KAAUs0F,OACjB3wE,KAAM3jB,KAAUs0F,QAElB,CACE3jE,MAAO,QACP9E,MAAO7rB,KAAUgyE,MACjBruD,KAAM3jB,KAAUgyE,OAElB,CACErhD,MAAO,cACP9E,MAAO7rB,KAAUw0F,YACjB7wE,KAAM3jB,KAAUw0F,aAElB,CACE7jE,MAAO,aACP9E,MAAO7rB,KAAUu0F,WACjB5wE,KAAM3jB,KAAUu0F,YAElB,CACE5jE,MAAO,kBACP9E,MAAO7rB,KAAUy0F,gBACjB9wE,KAAM3jB,KAAUy0F,kBAIPq1E,GAAqF,SAAA58I,GAE5F,IADJiD,EACIjD,EADJiD,UACIy4C,EACsEC,mBAASghG,IAD/E/gG,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GACGmhG,EADHjhG,EAAA,GACkCkhG,EADlClhG,EAAA,GAEEve,EAAY05C,aAAa,SAAC53E,GAAD,OAAmBA,EAAEk+B,WAAWvqD,KAAUgyE,OACnE17B,EAAO2tD,aAAa,SAAC53E,GAAD,OAAmBA,EAAEiqB,OAC7BtG,EAAQmnE,eAAlBnP,SAJJ6+D,EAK+Br/D,KAA3BnvB,EALJwuF,EAKIxuF,aAAcb,EALlBqvF,EAKkBrvF,SAEd7I,EAAWs7F,aAAmBr8F,KAAgBloC,SAAU,KAAxDipC,OACA5sD,EAAsB8L,eAAtB9L,kBAGF05G,GAFaxtG,kBAAQ,kBAAM0gD,EAAOE,SAAW,IAA2B,IAAtB9sD,GAA4B,CAAC4sD,EAAQ5sD,IAE5EuP,sBACf,SAAAS,GAAmDA,EAAhDpB,MAAgDoB,EAAzClG,MAAyC,IAAlClI,EAAkCoO,EAAlCpO,KACfqsB,EAAI,YAAarsB,EAAM,CAAEu+E,SAAS,IAC9Bv+E,IAAS3jB,KAAUu0F,YAAc5wE,IAAS3jB,KAAUw0F,cACtDhd,OAASpsF,GAAW,GACpBitF,OAAajtF,KAGjB,CAAC4kD,EAAKwnC,KAgBR,OAbAlN,oBAAU,WAEJpvE,OAAOqJ,OAAO+xC,GAAMtnB,OAAS,GAC3Bu7B,IAAcvqD,KAAUu0F,YAAchqC,IAAcvqD,KAAUw0F,aAAejqC,IAAcvqD,KAAUy0F,kBACvGzkD,EAAI,YAAahwC,KAAUgyE,MAAO,CAAEkwB,SAAS,IAC7C7pB,OAAajtF,IAEf4+K,EAAiCH,GAAuBp9I,OAAO,SAAA22B,GAAA,IAAS7vD,EAAT6vD,EAAGz/B,KAAH,OAAsBpwB,IAAWyM,KAAUu0F,YAAchhG,IAAWyM,KAAUw0F,aAAejhG,IAAWyM,KAAUy0F,oBAEjLu1E,EAAiCH,KAElC,CAACvzH,IAGFznB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEiB,UAAS,8CAAAr5B,OAAgDq5B,GACzDtE,MAAO0+B,EACPn9B,YAAau8I,GAA4Bp/G,GACzCx6D,QAASg6K,EACT14I,SAAUoqG,EACV3f,cAAc,KCjFPlpE,GAA2B,WAAM,IAAAi0H,EACPr/D,KAA7BhwB,EADoCqvF,EACpCrvF,SADoCgiD,GAAAqtC,EAC1BvuF,eAC8BtS,IAAM6C,UAAS,IAFnB6wD,EAAAx+H,OAAAqoD,EAAA,EAAAroD,CAAAs+H,EAAA,GAErC0wC,EAFqCxwC,EAAA,GAEnBywC,EAFmBzwC,EAAA,GAAAG,EAGE7zD,IAAM6C,UAAS,GAHjBixD,EAAA5+H,OAAAqoD,EAAA,EAAAroD,CAAA2+H,EAAA,GAGrCuwC,EAHqCtwC,EAAA,GAKtCxjF,GALsCwjF,EAAA,GAK/B71B,aAAa,SAAC53E,GAAD,OAAmBA,EAAEiqB,WAAMlrD,IAC/CugE,EAAcs4C,aAAa,SAAA53E,GAAC,OAAIA,EAAEwzB,SAGlC7L,GAFciwD,aAAa,SAAA53E,GAAC,OAAIA,EAAEolD,cACRvxE,KAAc0qD,MAChCq5C,aAAa,SAAA53E,GAAC,OAAIA,EAAEklD,YAAcllD,EAAEklD,WAAWv9B,SACvDq2H,OAA0Bj/K,IAAV4oD,EAChBo6D,EAA6BngF,kBACjC,kBAAO+lB,IAA4B,kBAApBA,EAAMloB,KAAKC,MAAgD,iBAApBioB,EAAMloB,KAAKC,MAA2Bs+I,IAC5F,CAACr2H,IAEG+B,EAAQkuD,aAAa,SAAC53E,GAC1B,YAAmBjhC,IAAZihC,EAAE0pB,MAAoD1pB,EAAE0pB,WAAmB3qD,IAE9E4+G,EACJqgE,GAAiBr2H,IAA8B,kBAApBA,EAAMloB,KAAKC,MAAgD,iBAApBioB,EAAMloB,KAAKC,MACzE+5E,EAAsBukE,GAAiBr2H,GAA6B,kBAApBA,EAAMloB,KAAKC,KAC3Dg6E,EAAqBskE,GAAiBr2H,GAA6B,iBAApBA,EAAMloB,KAAKC,KAC1Di6E,EAAqBqkE,GAAiBr2H,GAA6B,iBAApBA,EAAMloB,KAAKC,KAC1Dk6E,EAAuBjyD,GAA6B,mBAApBA,EAAMloB,KAAKC,KAC3Cm6E,EAAsBlyD,GAA6B,kBAApBA,EAAMloB,KAAKC,KAC1Co6E,EAAuBnyD,GAA6B,mBAApBA,EAAMloB,KAAKC,KAC3Cq6E,EAAoBpyD,GAA6B,gBAApBA,EAAMloB,KAAKC,KACxCs6E,EAAoBryD,GAA6B,gBAApBA,EAAMloB,KAAKC,KACxCu6E,EAAmBtyD,GAA6B,eAApBA,EAAMloB,KAAKC,KAEvCk+E,EAA0Bh8E,kBAAQ,WACtC,GAAI+7E,GAA2B1zD,EAC7B,OAAOllB,IAAE+mD,MAAMj9E,OAAOqJ,OAAO+xC,GAAO,SAAAxsB,GAAC,OAAIA,EAAEgpB,YAAchpB,EAAEgpB,WAAWzlD,QAGvE,CAAC28G,EAAyB1zD,IAEvBiwD,EAAiBt4E,kBAAQ,WAC7B,IACG63E,GACCC,GACAE,GACAC,GACAC,GACAC,GACAC,GACAC,IACFhwD,EAEA,OAAOllB,IAAEo1E,MAAMtrG,OAAOqJ,OAAO+xC,GAAO,SAAAxsB,GAAC,OAAIA,EAAEkpB,UAG5C,CACD8yD,EACAC,EACAE,EACAC,EACAC,EACAC,EACAC,EACAC,EACAhwD,IAGImwD,EAAWx4E,kBAAQ,WACvB,GAAI+3E,GAAsB1vD,EACxB,OAAOllB,IAAExa,KAAK1b,OAAOqJ,OAAO+xC,GAAO,SAAAxsB,GAAC,OAAIA,EAAElqB,YAAcA,IAAU6iC,UAGnE,CAACujE,EAAoB1vD,IA0BlBg0H,GAxBSD,EAEXrgE,EACAC,IAA2BA,EAAwBlwD,OAAWl6C,KAAYy6C,KAC1EwrD,EACAS,IAAkBA,EAAexsD,OAAWl6C,KAAYy6C,KACxDyrD,EACAQ,IAAkBA,EAAexsD,OAAWl6C,KAAY06C,MACxDyrD,EACAS,IAAYA,EAAS1sD,OAAWl6C,KAAYy6C,KAC5C2rD,EACAM,IAAkBA,EAAexsD,OAAWl6C,KAAYy6C,KACxD4rD,EACAK,IAAkBA,EAAexsD,OAAWl6C,KAAYy6C,KACxD6rD,EACAI,IAAkBA,EAAexsD,OAAWl6C,KAAYy6C,KACxD8rD,EACAG,IAAkBA,EAAexsD,OAAWl6C,KAAY06C,MACxD8rD,EACAE,IAAkBA,EAAexsD,OAAWl6C,KAAYy6C,KACxDgsD,EACAC,IAAkBA,EAAexsD,OAAWl6C,KAAYy6C,KACxDlpB,IAAEgB,MAAMkkB,EAAM,SAAAxsB,GAAC,OAAIA,EAAEiwB,SAAWl6C,KAAYy6C,OAAQlpB,IAAEm+C,KAAKj5B,EAAM,SAAAxsB,GAAC,OAAIA,EAAEiwB,SAAWl6C,KAAYy6C,MArB/Ez6C,KAAYy6C,IAwB9B0vD,GACAlE,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GAOIj1E,EAAWC,sBACf,SAACzF,GACC2rD,EACY,OAAV3rD,OAAiBzgC,GAAagjH,GAA8BviF,EAAQ,EAAI,EAAIA,GAC5E,GACCy+I,GAAUF,IAGf,CAACE,EAASF,EAAiBh8D,IAGvBh3D,EAAal8C,OAAOqJ,OAAO+xC,GAAM7pB,OAAO,SAAA08B,GAAG,OAAIA,EAAIhpD,aAqBzD,OAJAmqE,oBAAU,YAdc,WACtB,GAAIh0B,GACEc,EAAWpoB,OAAS,EAAG,CACzB,IAAM0nB,EAAUU,EAAW3qB,OAAO,SAAA08B,GAAG,YAAmB/9D,IAAf+9D,EAAInW,SACvCsK,EAAclG,EAAW3qB,OAAO,SAAA08B,GAAG,YAAuB/9D,IAAnB+9D,EAAIrW,aAC7C4D,EAAQ1nB,SAAWooB,EAAWpoB,QAAUsuB,EAAYtuB,SAAWooB,EAAWpoB,OAC5Em7I,GAAoB,GAEpBA,GAAoB,IAO1BI,IACC,CAACnzH,IAGFvoB,EAAA1P,EAAA2P,cAACo/E,GAAD,CACEriF,MAAOkqB,EACP1kB,SAAUA,EACVjE,YAAY,iBACZghF,2BAA4BA,EAC5B5hB,SAAUp1C,GAAcA,EAAWpoB,OAAS,IAAMk7I,oCChJ3CM,GAAwB,WAAM,IAAAt9I,EAAA6E,EAAAo4E,EACflD,KAAlBnnE,EADiCqqE,EACjCrqE,IAAKgwB,EAD4Bq6C,EAC5Br6C,IAAKjwB,EADuBsqE,EACvBtqE,IADuBgnI,EAEKr/D,KAAtChwB,EAFiCqvF,EAEjCrvF,SAAUa,EAFuBwuF,EAEvBxuF,aACZ9tB,GAHmCs8G,EAETr+D,UACdxE,GAAc,cAC1Br4C,EAAcq4C,GAAc,UAC5BqmE,EAAgBpmE,aAAa,SAAC53E,GAAD,MAAkC,WAAfA,EAAEH,WAClDoqB,EAAO2tD,aAAa,SAAC53E,GAAD,OAAmBA,EAAEiqB,WAAMlrD,GAC/C4oD,EAAQiwD,aAAa,SAAA53E,GAAC,OAAIA,EAAEklD,YAAcllD,EAAEklD,WAAWv9B,QACvDlC,EAAUmyD,aAAa,SAAA53E,GAAC,OAAIA,EAAEklD,YAAcllD,EAAEklD,WAAWlzB,QAEzD2rD,EACJqgE,GAAiBr2H,IAA8B,kBAApBA,EAAMloB,KAAKC,MAAgD,iBAApBioB,EAAMloB,KAAKC,MACzE+5E,EAAsB9xD,GAA6B,kBAApBA,EAAMloB,KAAKC,KAC1Cg6E,EAAqB/xD,GAA6B,iBAApBA,EAAMloB,KAAKC,KACzCi6E,EAAqBhyD,GAA6B,iBAApBA,EAAMloB,KAAKC,KACzCk6E,EAAuBjyD,GAA6B,mBAApBA,EAAMloB,KAAKC,KAC3Cm6E,EAAsBlyD,GAA6B,kBAApBA,EAAMloB,KAAKC,KAC1Co6E,EAAuBnyD,GAA6B,mBAApBA,EAAMloB,KAAKC,KAC3Cq6E,EAAoBpyD,GAA6B,gBAApBA,EAAMloB,KAAKC,KACxCs6E,EAAoBryD,GAA6B,gBAApBA,EAAMloB,KAAKC,KACxCu6E,EAAmBtyD,GAA6B,eAApBA,EAAMloB,KAAKC,KASvCw6E,GAP0Bt4E,kBAAQ,WACtC,GAAI+7E,GAA2B1zD,EAC7B,OAAOllB,IAAE+mD,MAAMj9E,OAAOqJ,OAAO+xC,GAAO,SAAAxsB,GAAC,OAAIA,EAAEgpB,YAAchpB,EAAEgpB,WAAWzlD,QAGvE,CAAC28G,EAAyB1zD,IAENroB,kBAAQ,WAC7B,IACG63E,GACCC,GACAE,GACAC,GACAC,GACAC,GACAC,GACAC,IACFhwD,EAEA,OAAOllB,IAAEo1E,MAAMtrG,OAAOqJ,OAAO+xC,GAAO,SAAAxsB,GAAC,OAAIA,EAAEkpB,UAG5C,CACD8yD,EACAC,EACAE,EACAC,EACAC,EACAC,EACA9vD,EACA+vD,EACAC,KAGIG,EAAWx4E,kBAAQ,WACvB,GAAI+3E,GAAsB1vD,EACxB,OAAOllB,IAAExa,KAAK1b,OAAOqJ,OAAO+xC,GAAO,SAAAxsB,GAAC,OAAIA,EAAElqB,YAAcA,IAAU6iC,UAGnE,CAACujE,EAAoB1vD,IAElBgc,EAAS+3G,EAEXrgE,EACAr+C,IAAgB9rD,KAAYy6C,IAC5BwrD,EACAS,GAAkBA,EAAexsD,SAAWl6C,KAAYy6C,IACxDyrD,EACAQ,GAAkBA,EAAexsD,SAAWl6C,KAAY06C,KACxDyrD,EACAS,GAAYA,EAAS1sD,SAAWl6C,KAAYy6C,IAC5C2rD,EACAM,GAAkBA,EAAexsD,SAAWl6C,KAAYy6C,IACxD4rD,EACAK,GAAkBA,EAAexsD,SAAWl6C,KAAYy6C,IACxD6rD,EACAI,GAAkBA,EAAexsD,SAAWl6C,KAAYy6C,IACxD8rD,EACAG,GAAkBA,EAAexsD,SAAWl6C,KAAY06C,KACxD8rD,EACAE,GAAkBA,EAAexsD,SAAWl6C,KAAYy6C,IACxDgsD,EACAC,GAAkBA,EAAexsD,SAAWl6C,KAAYy6C,IACxDlpB,IAAEgB,MAAMkkB,EAAM,SAAAxsB,GAAC,OAAIA,EAAEiwB,SAAWl6C,KAAYy6C,OAAQlpB,IAAEm+C,KAAKj5B,EAAM,SAAAxsB,GAAC,OAAIA,EAAEiwB,SAAWl6C,KAAYy6C,MArB/FqR,IAAgB9rD,KAAYy6C,IAsBxB0zD,EAAaF,KAAbE,SACFy8D,EAAgBlgH,IAAcvqD,KAAUs0F,OACxCo2E,EAAWp0H,EAAOp7C,OAAOqJ,OAAO+xC,GAAMtnB,OAAS,EAC/C+mB,EAAQkuD,aAAa,SAAC53E,GAAD,OAAmBA,EAAE0pB,YAAO3qD,GA+CjDu/K,EAAmB18I,kBAAQ,WAC/B,QAAc7iC,IAAV2qD,GAAuB00H,EACzB,OAAO,EAGT,GAAI10H,IAAUjW,EACZ,OAAOwyB,EAAQ,GAAK,GACf,GAAIvc,IAAU+Z,EACnB,OAAO,GACF,GAAI/Z,IAAUlW,EACnB,OAAOyyB,EAAQ,GAAK,GAGtB,IAAMs4G,EAAU/6G,MAAOhwB,EAAMC,GAAO,EAAG,GAEjC+qI,GAAY90H,GAASjW,EAAM8qI,MADb/qI,EAAM+qI,GAAW9qI,EAAM8qI,IAAY,KAEnD5oI,EAAM6oI,EASV,OAPE7oI,EADE+T,EAAQ60H,EAAU/qI,EACd,IACGkW,EAAQjW,EAAM8qI,EACjB,EAEAC,EAGDv4G,EAAQ3oB,KAAKwb,IAAInjB,GAAO,IAAM2H,KAAKwb,IAAInjB,IAC7C,CAAClC,EAAKgwB,EAAKjwB,EAAKkW,EAAOuc,IAlKeq1C,EAoKlBC,eApKkBC,EAAA3sG,OAAAqoD,EAAA,EAAAroD,CAAAysG,EAAA,GAAAzsG,OAAAu9F,GAAA,EAAAv9F,CAAA2sG,EAAA,IAAAA,EAAA,GAsKzC,OACEh5E,EAAA1P,EAAA2P,cAACg8I,GAAA,EAAD,CACEjQ,KAAM,EACN1qI,UAAWmiC,EAAQ,GAAK,qBACxBvoB,IAAK,EACLH,IAAK,IACL/d,MAAO8+I,EACPt5I,SApEuB,SAACxF,GAC1B,GAAqB,kBAAVA,IAAmC,IAAbmiF,GAAsBzjD,IAAcvqD,KAAUs0F,OAAQ,CAErF,IAAMy2E,EAAgBz4G,EAAQzmC,EAAQ,IAAMA,EAExC6lE,EAAS5xD,EAAM,EAAIA,EAAMA,EAAM,GAAKA,EAAMA,EAAM,GAEhDkrI,EAAe75H,YAAa45H,EAAgB,MADtClrI,EAAM,EAAIA,EAAMA,EAAM,GAAKA,EAAMA,EAAM,IACa6xD,GAAUA,GAAQ3iC,QAAQ,IAElE,KAAlBg8G,EACFC,EAAelrI,EACY,KAAlBirI,EACTC,EAAel7G,EACY,KAAlBi7G,IACTC,EAAenrI,GAGjB,IAAIorI,EAAaD,EAAa98H,WAAW2F,MAAM,KAE3Co3H,EAAWj8I,OAAS,GAAKi8I,EAAW,GAAGj8I,OAAS,IAClDg8I,EAAe75H,WAAW65H,EAAaj8G,QAAQ,KAE7CxE,IAAcvqD,KAAUw0F,aAC1Bhd,EAASwzF,GAAc,EAAMA,EAAe,GAC5C3yF,EAAa2yF,IAEbxzF,EAASwzF,GAAc,EAAMA,EAAe,KA2C9Cx+E,SAAUi+E,IAAkB34H,IAAYk8D,EACxC10B,SAAUhnB,EACV44G,MACE54G,GAAKplC,EAAA,GAAAhyB,OAAA2tB,EAAA,EAAA3tB,CAAAgyB,EAEE,GAAK,CACJyD,MACE9B,EAAA1P,EAAA2P,cAACq8I,GAAD,CACEC,OAAQ,CACNC,IAAKX,EAAW,EAAI,UAAY,WAElChqJ,OAAQgqJ,EAAW,EAAI,SAAW,IAAM,MACxC7+I,OACe,IAAbmiF,EAAqB,IAAMluE,EAAIwrI,oBAAelgL,EAAW,CAAE8oG,SAAU,MAAOjlE,MAAO,eAIzFA,MAAO,KAdV/zB,OAAA2tB,EAAA,EAAA3tB,CAAAgyB,EAgBE,GAAK,CACJyD,MACE9B,EAAA1P,EAAA2P,cAACq8I,GAAD,CACEC,OAAQ,CACNC,IAAKX,EAAW,EAAI,UAAY,WAElChqJ,OAAQgqJ,EAAW,EAAI,SAAW,IAAM,MACxC7+I,OACe,IAAbmiF,EAAqB,IAAMl+C,EAAIw7G,oBAAelgL,EAAW,CAAE8oG,SAAU,MAAOjlE,MAAO,eAIzFA,MAAO,KA5BV/zB,OAAA2tB,EAAA,EAAA3tB,CAAAgyB,EA8BE,GAAK,CACJyD,MACE9B,EAAA1P,EAAA2P,cAACq8I,GAAD,CACEC,OAAQ,CACNC,IAAKX,EAAW,EAAI,UAAY,WAElChqJ,OAAQgqJ,EAAW,EAAI,SAAW,IAAM,MACxC7+I,OACe,IAAbmiF,EAAqB,IAAMnuE,EAAIyrI,oBAAelgL,EAAW,CAAE8oG,SAAU,MAAOjlE,MAAO,eAIzFA,MAAO,KA1CV/B,IAAA6E,EAAA,GAAA72B,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EA8CE,GAAK,CACJpB,MACE9B,EAAA1P,EAAA2P,cAACq8I,GAAD,CACEC,OAAQ,CACNC,IAAKX,EAAW,EAAI,UAAY,WAElChqJ,OAAQgqJ,EAAW,EAAI,SAAW,IAAM,MACxC7+I,OACe,IAAbmiF,EAAqB,IAAMnuE,EAAIyrI,oBAAelgL,EAAW,CAAE8oG,SAAU,MAAOjlE,MAAO,aAErFs8I,YAAY,IAGhBt8I,MAAO,KA3DV/zB,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EA6DE,GAAK,CACJpB,MACE9B,EAAA1P,EAAA2P,cAACq8I,GAAD,CACEC,OAAQ,CACNC,IAAKX,EAAW,EAAI,UAAY,WAElChqJ,OAAQgqJ,EAAW,EAAI,SAAW,IAAM,MACxC7+I,OACe,IAAbmiF,EAAqB,IAAMl+C,EAAIw7G,oBAAelgL,EAAW,CAAE8oG,SAAU,MAAOjlE,MAAO,aAErFs8I,YAAY,IAGhBt8I,MAAO,KA1EV/zB,OAAA2tB,EAAA,EAAA3tB,CAAA62B,EA4EE,GAAK,CACJpB,MACE9B,EAAA1P,EAAA2P,cAACq8I,GAAD,CACEC,OAAQ,CACNC,IAAKX,EAAW,EAAI,UAAY,WAElChqJ,OAAQgqJ,EAAW,EAAI,SAAW,IAAM,MACxC7+I,OACe,IAAbmiF,EAAqB,IAAMluE,EAAIwrI,oBAAelgL,EAAW,CAAE8oG,SAAU,MAAOjlE,MAAO,aAErFs8I,YAAY,IAGhBt8I,MAAO,KAzFV8C,MC1JAy5I,GAA+B,WAC1C,IAAMjgH,EAAW04C,aAAa,SAAC53E,GAAD,OAAmBA,EAAEk/B,UAAUzkD,KAAUw4C,KAErDtP,EAAQmnE,eAAlBnP,SAEFyzB,EAAWnqG,sBACf,SAACy+E,GACC//D,EAAI,WAAY+/D,EAAWjpG,KAAUw4C,IAAMx4C,KAAUu4C,IAAK,CAAE6iD,SAAS,KAEvE,CAAClyD,IAGH,OACEnhB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACE+gF,GAAInpG,KAAUA,KAAUw4C,KACxB4wD,IAAKppG,KAAUA,KAAUu4C,KACzB8wD,QAAQ,OACRC,SAAS,OACTz0F,MAAM,OACN6wE,UAAU,EACVl8D,QAASmrG,EACT34G,OAAQyoC,IAAazkD,KAAUw4C,OCrDxBmsH,GAA+B,WAAM,IACxCpzF,EAAiBmvB,KAAjBnvB,aACFtiC,EAAQkuD,aAAa,SAAC53E,GAAD,OAAmBA,EAAE8pD,UAAY9pD,EAAE8pD,eAAY/qF,IAK1E,OAAOyjC,EAAA1P,EAAA2P,cAACo/E,GAAD,CACLriF,WAAiBzgC,IAAV2qD,EAAsB,KAAOA,EACpC1kB,SANe,SAACxF,GAChBwsD,EAAuB,OAAVxsD,OAAiBzgC,EAAYygC,EAAQ,EAAI,EAAI8d,KAAKwb,IAAIt5B,KAMnEuB,YAAY,mBCLHs+I,GAAqC,WAChD,IAAMnhH,EAAY05C,aAAa,SAAA53E,GAAC,OAAIA,EAAEk+B,YAEtC,OACE17B,EAAA1P,EAAA2P,cAAA,WACED,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uBACbtB,EAAA1P,EAAA2P,cAAA,YAAWD,EAAA1P,EAAA2P,cAAA,YACXD,EAAA1P,EAAA2P,cAAA,WACGy7B,IAAcvqD,KAAUu0F,YAAc1lE,EAAA1P,EAAA2P,cAAC68I,GAAD,QAG3C98I,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,kBACbtB,EAAA1P,EAAA2P,cAAC88I,GAAD,CACEz7I,UAAS,uDAEXtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,0BACbtB,EAAA1P,EAAA2P,cAAC+8I,GAAD,OAEFh9I,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,qDACZo6B,IAAcvqD,KAAUw0F,aAAe3lE,EAAA1P,EAAA2P,cAAC68I,GAAD,QACrCphH,IAAcvqD,KAAUw0F,aAAejqC,IAAcvqD,KAAUu0F,YAAchqC,IAAcvqD,KAAUs0F,QAAU/pC,IAAcvqD,KAAUy0F,kBAAoB5lE,EAAA1P,EAAA2P,cAACg9I,GAAD,MAC7JvhH,IAAcvqD,KAAUu0F,YAAc1lE,EAAA1P,EAAA2P,cAACg9I,GAAD,OAEzCj9I,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,8DACbtB,EAAA1P,EAAA2P,cAACi9I,GAAD,OAEFl9I,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,wDACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UACbtB,EAAA1P,EAAA2P,cAACk9I,GAAD,WChCCC,GAAsF,SAAAh6I,GACjG,IAAM9F,EAAY8F,EAAM/F,SAClBA,EAAWqtD,aAAiBptD,GAC1B0kD,EAAgB22B,KAAhB32B,YACFvgD,EAAUgB,sBAAY,kBAAMu/C,EAAY3kD,EAAU,CAAE2zB,OAAQhgD,KAAYy6C,IAAKy7B,aAAa,EAAO9D,SAAS,KAAU,CAAC/lD,IAE3H,OAAO2C,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,wBAAwBG,QAASA,GACxDzB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,2BACc,QAA3BjE,EAASJ,KAAKk4B,SACbn1B,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,iBACdtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAKsY,KAAI,YAAA1wC,OAAco1B,EAASJ,KAAKi4B,YAGvCl1B,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAWjE,EAASJ,KAAK+4B,QAGhCh2B,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,4BAA4BjE,EAASJ,KAAKC,QCbjDmgJ,GAAmD,SAAAh/I,GAC9D,OAD+EA,EAAd2zI,QAG7DhyI,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,sBACXiB,IAAEnH,IAAIg8B,IAAiB,SAAA55B,GAAC,OACvBwC,EAAA1P,EAAA2P,cAAA,MAAIjY,IAAKwV,EAAEP,KAAKC,MACd8C,EAAA1P,EAAA2P,cAACq9I,GAAD,CAAgBjgJ,SAAUG,EAAEP,KAAKC,WAQzC8C,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,sBACXiB,IAAEnH,IAAI+7B,IAAY,SAAA35B,GAAC,OAClBwC,EAAA1P,EAAA2P,cAAA,MAAIjY,IAAKwV,EAAEP,KAAKC,MACd8C,EAAA1P,EAAA2P,cAACq9I,GAAD,CAAgBjgJ,SAAUG,EAAEP,KAAKC,YCzB9BqgJ,GAAsD,SAAAl/I,GAAqB,IAAlBm/I,EAAkBn/I,EAAlBm/I,MAAOpxF,EAAW/tD,EAAX+tD,KAC3E,OACEpsD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,SACdtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,aAAazP,MAAOu6D,GACjCoxF,GAEHx9I,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAc8qD,KCW9BqxF,GAAsB,SAAC51H,EAAmB5E,GAC9C,OAAO1gB,IAAEnH,IAAIysB,EAAS,SAACrqB,GACrB,MAAO,CACLR,MAAOQ,EACPylB,SAASA,GAAUA,EAAQzlB,OCpBpBkgJ,GAAuE,SAAAr/I,GAAiB,IAAdpT,EAAcoT,EAAdpT,QACrF,OACE+U,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,wDAAwDq8D,UAAQ,EAACv+F,KAAK,UACtF4gC,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,qCACfrW,GAAW,eCoCP0yJ,GAAkB,SAAAt/I,GAA4C,IAAzCvJ,EAAyCuJ,EAAzCvJ,KAASwK,EAAgCjzB,OAAAg2B,GAAA,EAAAh2B,CAAAgyB,EAAA,UACnEiD,EAAS,GAAAr5B,OAAMs6B,IAAEvE,IAAIsB,EAAM,YAAa,IAA/B,KAAAr3B,OAAsC6sB,EAAKA,KAAK8oJ,OAC/D,OAAO59I,EAAA1P,EAAA2P,cAACI,EAAA,GAAsB2T,OAAvB3nC,OAAA8F,OAAA,GAAkCmtB,EAAlC,CAAwCxK,KAAMA,EAAMwM,UAAWA,MAG3Du8I,GAAwD,SAAA36I,GAM/D,IALJy8B,EAKIz8B,EALJy8B,MACA1qC,EAIIiO,EAJJjO,OACAkyB,EAGIjkB,EAHJikB,WACAy6B,EAEI1+C,EAFJ0+C,cACAk8F,EACI56I,EADJ46I,iBAGM90J,EAAUyrF,eACRxzC,EAAQm3C,KAARn3C,IACFxS,EFe8B,SAACkR,GAAkB,IAAA81C,EACtCF,aAAc,UAAxBtgF,EADgD5oB,OAAAqoD,EAAA,EAAAroD,CAAAopG,EAAA,MAEjDp4E,EAAWq6I,eACX1uJ,EAAUyrF,eACVspE,EAAqB3oE,aAAa,SAAA53E,GAAC,OAAIq4E,KAAemoE,0BAA0BxgJ,EAAGxU,KACnFi1J,EAAyB7oE,aAAa,SAAA53E,GAAC,OAAIq4E,KAAeooE,uBAAuBzgJ,EAAGxU,KACpFk1J,EAAmB9oE,aAAa,SAAA53E,GAAC,OAAIq4E,KAAesoE,cAAc3gJ,EAAGxU,EAAS22C,KAC9Ey+G,EAAWH,EAAyBA,EAAuBh6H,gBAAa1nD,EAExEkyD,EAAcmsB,YAClB,SAAA19E,GAAK,OAAK+3B,EAASopF,GAAoB5vD,YAAYvxD,EAAO+3B,EAAOA,QAAU,KAAO,KAG9E62B,EAAYvpB,IAAE5I,OAClBokJ,EACA,SAACnkJ,EAA0BqB,GACzB,OAAIA,EAAEojJ,QAAU1+G,EACP/lC,EAET,GAAA3xB,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAWutB,GAAX,CAAgBqB,KAElB,IAGF,GAAIoC,IAAaN,aAAiBM,IAAa4gJ,GAA0B17I,IAAE+7I,OAAOF,GAAW,CAC3F,IAAMG,EAAiBlhJ,EAASu2B,QAAQG,MAAM9P,WAC9C,GAAIs6H,IAAmB9oJ,KAAgBi5B,kBACrC,OAAOnsB,IAAE3E,OAAO6wB,EAAa,SAAA/rB,GAAC,OAAKopB,EAAU1wB,IAAI,SAAAsH,GAAC,OAAIA,EAAEuhB,WAAWzlD,KAAK4/D,YAAWtkC,SAAS4I,EAAElkC,KAAK4/D,aAC9F,GAAImgH,IAAmB9oJ,KAAgBq5B,2BAA4B,CAExE,IAAM0vH,KAAeN,GAAoBA,IAAqBltK,KAAYy6C,KAFFgzH,EAG5Bl8I,IAAE5I,OAC5CmyB,EACA,SAAClyB,EAAKqB,GACJ,IAAMyjJ,EAASzjJ,EAAEiwB,SAAWl6C,KAAYy6C,IAAM,iBAAmB,kBACjE,OAAOp/C,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFutB,EADLvtB,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEGqyK,EAFH,GAAAz2K,OAAAoE,OAAA60B,EAAA,EAAA70B,CAEgButB,EAAI8kJ,IAFpB,CAE6BzjJ,EAAEgpB,gBAGjC,CAAE06H,gBAAiB,GAAcC,eAAgB,KAT3CD,EAHgEF,EAGhEE,gBAAiBC,EAH+CH,EAG/CG,eAWnBC,EAAUt8I,IAAEo8I,GACfvjJ,IAAI,SAAAsH,GAAC,OAAIA,EAAE07B,YACXrjB,MACG+jI,EAASv8I,IAAEq8I,GACdxjJ,IAAI,SAAAsH,GAAC,OAAIA,EAAE07B,YACXljB,MACH,OAAO3Y,IAAEksB,GACN7wB,OAAO,SAAA8E,GACN,OAAI87I,GACKK,GAAUn8I,EAAElkC,KAAK4/D,UAAYygH,GAE7BC,GAASp8I,EAAElkC,KAAK4/D,UAAY0gH,IAItC9hJ,SAGP,OAAOuF,IAAE81C,QAAQ5pB,EAAa,SAAAlX,GAAC,OAAIA,EAAE/4C,KAAK4/D,YE3EtB2gH,CAAuBp/G,GACrCkuB,EAAajT,YAAiB,SAAA19E,GAAK,OAAImhH,GAAoBxwB,WAAW3wF,EAAO+3B,EAAOA,UACpF+pJ,EAAwB5pE,aAAa,SAAA53E,GAAC,OAAIq4E,KAAeopE,eAAezhJ,EAAGxU,EAAS,gBAEpFL,EAAWiyD,YAAiB,SAAAp9C,GAAC,OAAI0nD,KAAc7wB,MAAM72B,EAAGxU,KACtDk2J,EAAmFv2J,EAAnFu2J,kBAAmBC,EAAgEx2J,EAAhEw2J,mBAAoBC,EAA4Cz2J,EAA5Cy2J,qBAAsBC,EAAsB12J,EAAtB02J,kBAC/DC,EAAwBlgJ,kBAAQ,WAEpC,OAD4BqvB,GAAe,IAAIrzB,IAAI,SAAAsH,GAAC,OA5C7B,SAAC82C,EAAgBvkD,GAC1C,IAAMiJ,EAAI8/C,KAAMxE,EAAGh7E,MACb+gL,EAAiBC,aAAsBhmG,EAAIvkD,GAC3CwqJ,EAAW,GAAAx3K,OAAMi2B,EAAEwY,OAAO,WAAf,KAAAzuC,OAA6Bs3K,EAAez9I,OAO7D,MAN8B,CAC5BA,MAAO29I,EACPziJ,MAAOyiJ,EACP3qJ,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAMmtE,EAAP,CAAWokG,MAAO2B,EAAe3B,QACrC8B,YAAW,GAAAz3K,OAAKi2B,EAAEwY,OAAO,WAAd,KAAAzuC,OAA4Bi2B,EAAEwY,OAAO,kBAArC,KAAAzuC,OAA0Ds3K,EAAez9I,QAoC5B69I,CAAmBj9I,EAAGzN,MAE7E,CAACw5B,EAAax5B,IAEX2qJ,EAAgCxgJ,kBAAQ,WA2B5C,OA1BiBkgJ,EAAsB1hJ,OAAO,SAAAiiJ,GAC5C,IAAMC,EAAqBD,EAAG/qJ,KAAKkkC,mBAkBnC,OAfyB,MAAvB8mH,GACuB,OAAvBA,GACuB,OAAvBA,GACCA,GAAsBA,EAAmBhmJ,SAAS,SAClDgmJ,GAAsBA,EAAmBhmJ,SAAS,OAYtColJ,IATU,MAAvBY,GACuB,OAAvBA,GACuB,YAAvBA,GACuB,OAAvBA,GACuB,OAAvBA,IAMcX,GAL2B,iBAAvBW,GAMFV,GALsB,WAAvBU,GAMFT,KAIhB,CAACC,IAEES,EAAY3gJ,kBAAQ,WAMxB,OALa+nB,EACTy4H,EAA8B73J,KAAK,SAAA83J,GACjC,OAAO14H,GAAcA,EAAW3oD,MAAQmhF,GAAgBkgG,EAAG/qJ,QAAU6qD,GAAgBx4B,UAEvF5qD,GAEH,CAACqjL,EAA+Bz4H,IApD/B2xD,EAsDmBC,eAtDnBC,EAAA3sG,OAAAqoD,EAAA,EAAAroD,CAAAysG,EAAA,GAAAzsG,OAAAu9F,GAAA,EAAAv9F,CAAA2sG,EAAA,QAsDOvhC,EAtDPuhC,EAAA,GAwDEgnE,EAAqBv9I,sBACzB,SAAC5I,GACC,IAAMsrB,EAAQy6H,EAA8B73J,KAAK,SAAA83J,GAAE,OAAIlgG,GAAgBkgG,EAAG/qJ,QAAU6qD,GAAgB9lD,EAAI/E,QACpG+E,GAAOsrB,GACTsyB,EAAS,CACPr4E,KAAM2+E,mBAAQx4C,KAAQojD,UACtBjxC,QAAS,CAAEwP,WAAO3qD,EAAWi9G,qBAAqB,EAAMv4C,IAAKA,KAE/DwW,EAAS,CAAEr4E,KAAM2+E,mBAAQx4C,KAAQikD,cAAe9xC,QAAS,CAAEwP,WAAO3qD,EAAWi9G,qBAAqB,KAClG53B,EAAc/nD,EAAI/E,OAElB0gB,QAAQuH,KAAK,mCAAoCljB,IAGrD,CAAC+nD,EAAeg+F,IAGZK,EAAoBx9I,sBAAW,eAAA8xB,EAAAloD,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KACnC,SAAAC,EAAOxW,GAAP,OAAAsW,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAG,OAAA,SACSuG,QAAQC,QAAQ+/H,IADzB,wBAAA1mI,EAAAK,SAAAR,MADmC,gBAAAmkC,GAAA,OAAA3oB,EAAA3S,MAAAzJ,KAAA0J,YAAA,GAInC,CAAC+9H,IAUH,OANAnkG,oBAAU,WACJqiG,GACFA,EAA0D,IAAzC8B,EAA8Bz/I,SAEhD,CAACy/I,EAA+B9B,IAGjC99I,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MACkB,IAAf2tD,GAAwB7tD,EAAA1P,EAAA2P,cAACigJ,GAAD,OACT,IAAfryF,GACC7tD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAS,mDAAAr5B,OAAqD+2K,EAAwB,UAAY,KACrGh/I,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEs9I,gBAAiBA,GACjBp/K,KAAI,cAAA0J,OAAgB03D,GACpBstD,cAAc,EACdkzD,aAAuD,IAAzCP,EAA8Bz/I,OAAe,GAAK,kBAChE5B,YAC2C,IAAzCqhJ,EAA8Bz/I,OAAe,wCAA0C,gBAEzFnD,MAAO+iJ,EACPK,aAAa,EACb3wF,cAAemwF,EACfn/I,cAAe,EACf9B,OAAQshJ,EACRr/I,SAAUo/I,OCrIhBK,GAAiB,SAAC94H,GACtB,IAAMkxB,EAA0B,CAC9B32C,MAAOylB,EAAOvqB,MAAMqiB,WACpBriB,MAAOuqB,EAAOvqB,MAAMqiB,WACpBvqB,KAAMyyB,EAAOvqB,MACb0iJ,YAAan4H,EAAOvqB,MAAMqiB,YAO5B,GAAIo5B,EAAI32C,MAAM3B,OAJY,EAIgB,CAExC,IAAMmgJ,EAAgB7nG,EAAI32C,MAAMkjB,MAAM,KAAK,GAAGqH,MAAM,EAL5B,GAWxB,OAJAosB,EAAI32C,MAAQ22C,EAAI32C,MACbkjB,MAAM,KAAK,GACX/8C,OAAO,KACPA,OAAOq4K,GACH7nG,EAET,OAAOA,GAGH8nG,GAAwB,SAACtrJ,EAAgB4yB,GAC7C,IAAM24H,EClDoB,SAACvrJ,GAC3B,OAAOwrJ,aAA6BxrJ,GDiDfyrJ,CAAazrJ,GAClC,QAAqB14B,IAAjBikL,EAGJ,OAAOj+I,IAAEslB,GACNwwB,QAAQ,SAAA76C,GAAC,OAAIsd,KAAKwb,IAAIkqH,EAAa1wI,eAAiBtS,EAAE1I,QACtDkxB,SAGQ26H,GAAkD,SAAAtiJ,GAAsD,IAAnDshC,EAAmDthC,EAAnDshC,MAAO1qC,EAA4CoJ,EAA5CpJ,OAAQkyB,EAAoC9oB,EAApC8oB,WAAYI,EAAwBlpB,EAAxBkpB,OAAQs6B,EAAgBxjD,EAAhBwjD,UAE3F74D,EAAYmgG,eAAZngG,QACAi4C,EAAQm3C,KAARn3C,IACF2/G,EAAoBxrE,aAAa,SAAA53E,GAAC,OAAIq4E,KAAeopE,eAAezhJ,EAAGxU,EAAS,YAEhF6+B,EHxC0B,SAAC8X,EAAexY,GAA4B,IAAAmuD,EAC3DC,aAAc,UAAxBtgF,EADqE5oB,OAAAqoD,EAAA,EAAAroD,CAAAipG,EAAA,MAEtEj4E,EAAWq6I,eACX1uJ,EAAUyrF,eACVosE,EAAmBzrE,aAAa,SAAA53E,GAAC,OAAIq4E,KAAeirE,cAActjJ,EAAGxU,EAAS22C,KAC9EohH,EAAiB3rE,aAAa,SAAA53E,GAAC,OAAIq4E,KAAemrE,sBAAsBxjJ,EAAGxU,KAC3Ei4J,EAAqB1+I,IAAEyjB,MAAM+6H,GAC7BG,EAAcD,EAAqBA,EAAmB98H,YAAS5nD,EAE/D4kL,EAAmB9jJ,IAAaN,aAAiBM,GAAYA,EAASJ,KAAK83B,WAAa,EACxFlN,EAAU+yB,YAAiB,SAAC19E,GAAD,OAC/BiqD,GAAclyB,GAASypF,GAAgB72D,QAAQ3qD,EAAO,CAAE+3B,OAAQA,EAAOA,OAAQkyB,WAAYA,KAAsB,KAE7Gi6H,EAAc/jJ,IAAaN,aAAiBM,GAAYwqD,aAAQxqD,EAASu2B,QAAQG,MAAM5P,QAAU,GACjGk9H,OAAsC9kL,IAArBskL,IAAmCO,EAAYtnJ,SAASnE,KAAY+zB,aAE3F,IAAKrsB,GAAYN,aAAiBM,GAChC,OAAOogJ,GAAoB51H,GACtB,GAAIu5H,EAAYtnJ,SAASnE,KAAYsgC,KAC1C,OAAOwnH,GAAoB51H,GACtB,GAAIw5H,GAAuC,IAArBF,GAA0BF,GAAsB1+I,IAAEulB,SAASo5H,GAAc,CACpG,IAAMI,EAAW/+I,IAAExa,KAAKg5J,EAAgB,SAAA9lJ,GAAC,OAAIA,EAAEojJ,QAAU1+G,IACnD4hH,EAAcD,EAAWA,EAASn9H,YAAS5nD,EACjD,QAAiBA,IAAb+kL,QAA0C/kL,IAAhBglL,EAC5B,OAAO9D,GAAoB51H,GAE7B,IAAM25H,EAA2C,IAAnBF,EAASx7H,MAEvC,GAAIs7H,EAAYtnJ,SAASnE,KAAY+zB,aACnC,OAAO+zH,GAAoB51H,GACtB,GAAIu5H,EAAYtnJ,SAASnE,KAAY0yB,kBAC1C,OAAOo1H,GAAoB51H,EAAS,SAAArqB,GAAC,OAAIA,IAAM+jJ,IAC1C,GAAIH,EAAYtnJ,SAASnE,KAAYg0B,mBAC1C,OAAO8zH,GAAoB51H,EAAS,SAAArqB,GAAC,OACnC8jJ,EAAShwK,aAAeA,KAAWg2C,KAAO9pB,EAAI+jJ,EAAc/jJ,EAAI+jJ,IAE7D,GAAIH,EAAYtnJ,SAASnE,KAAYw0B,iBAC1C,OAAOszH,GAAoB51H,EAAS,SAAArqB,GAAC,OAAKgkJ,EAAwBhkJ,EAAI+jJ,EAAc/jJ,EAAI+jJ,IACnF,GAAIH,EAAYtnJ,SAASnE,KAAYu0B,iBAC1C,OAAOuzH,GAAoB51H,EAAS,SAAArqB,GAAC,OAAKgkJ,EAAwBhkJ,EAAI+jJ,EAAc/jJ,EAAI+jJ,IAI5F,OAAO9D,GAAoB51H,GGHX45H,CAAmB9hH,EAAOxY,GACpCu6H,EAAoB9mG,YAAiB,SAAC19E,GAAD,OACzCiqD,EAAau3D,GAAgB7wB,WAAW3wF,EAAO,CAAE+3B,SAAQkyB,oBAAgB5qD,IAQrEolL,EAAgBviJ,kBAAQ,kBAAMmD,IAAE3E,OAAOiqB,EAAS,SAAArqB,GAAC,OAAIA,EAAEylB,UAAS7nB,IAAIilJ,KAAiB,CAACx4H,EAASN,IAE/Fw4H,EAAY3gJ,kBAAQ,kBAAOmoB,EAASo6H,EAAc55J,KAAK,SAAA65J,GAAS,OAAIA,EAAU9sJ,OAASyyB,SAAUhrD,GAAY,CACjHolL,EACAp6H,IApBiHuxD,EAuB5FC,eAvB4FC,EAAA3sG,OAAAqoD,EAAA,EAAAroD,CAAAysG,EAAA,GAAAzsG,OAAAu9F,GAAA,EAAAv9F,CAAA2sG,EAAA,QAuBxGvhC,EAvBwGuhC,EAAA,GAyB7G4zB,EAAWnqG,sBACf,SAAC5I,GACC,IAAMsrB,EAAQw8H,EAAc55J,KAAK,SAAAyV,GAAC,OAAIA,EAAE1I,OAAS+E,EAAI/E,OACjDqwB,IACFsyB,EAAS,CACPr4E,KAAM2+E,mBAAQx4C,KAAQojD,UACtBjxC,QAAS,CAAEwP,WAAO3qD,EAAWi9G,qBAAqB,EAAMv4C,IAAKA,KAE/DwW,EAAS,CAAEr4E,KAAM2+E,mBAAQx4C,KAAQikD,cAAe9xC,QAAS,CAAEwP,WAAO3qD,EAAWi9G,qBAAqB,KAClG33B,EAAU18B,EAAMrwB,QAGpB,CAAC+sD,EAAW8/F,IAGRhjJ,EAAS8D,sBAAW,eAAAS,EAAA72B,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KACxB,SAAAC,EAAO/b,GAAP,OAAA6b,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAG,OAAA,SACSuG,QAAQC,QAAQ8hI,IADzB,wBAAAzoI,EAAAK,SAAAR,MADwB,gBAAAmkC,GAAA,OAAAh6C,EAAA0e,MAAAzJ,KAAA0J,YAAA,GAIxB,CAAC8/H,IAEGtvI,EAAekuI,GAAsBtrJ,EAAQ0sJ,GAEnD,OACE3hJ,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MACyB,IAAtBwhJ,GAA+B1hJ,EAAA1P,EAAA2P,cAACigJ,GAAD,OAOT,IAAtBwB,GACC1hJ,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAS,mDAAAr5B,OAAqD24K,EAAoB,UAAY,KACjG5gJ,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEgS,aAAcA,EACd46E,cAAc,EACdkzD,aAAa,kBACb5hJ,YAAY,YACZvB,MAAO+iJ,EACPK,aAAa,EACb3wF,cAAekyF,EACflhJ,cAAe,EACf9B,OAAQA,EACRiC,SAAUgsG,OEhHTi1C,GAAsC,SAAAxjJ,GAAY,IAATz/B,EAASy/B,EAATz/B,GAC9C64K,EAA8BriE,aAAaS,KAAe4hE,6BACxD11F,EAAiB42B,KAAjB52B,aAEF+/F,EAAer/I,sBACnB,SAACs/I,GACKtK,EACF11F,EAAanjF,EAAImjL,GAEjBhgG,EAAanjF,IAGjB,CAACA,EAAI64K,EAA6B11F,IAGpC,OAAO/hD,EAAA1P,EAAA2P,cAAC+hJ,GAAD,CAAiBpjL,GAAIA,EAAIkjL,aAAcA,KAG1CG,GAAsF,SAAA/+I,GAA0B,IAAvBtkC,EAAuBskC,EAAvBtkC,GAAIkjL,EAAmB5+I,EAAnB4+I,aAAmBhpE,EAC7FC,eAD6FC,EAAA3sG,OAAAqoD,EAAA,EAAAroD,CAAAysG,EAAA,GAAAzsG,OAAAu9F,GAAA,EAAAv9F,CAAA2sG,EAAA,QACzGvhC,EADyGuhC,EAAA,GAE7G/3C,EAAOm3C,KAAPn3C,IAEDjQ,EAAS8lD,KAAY5rD,OAAO0jE,eAA4BhwH,GACxD45K,EAAiB/1I,sBACrB,SAACy+E,GAEC4gE,EAAa9wH,IAAWhgD,KAAYy6C,IAAMz6C,KAAY06C,KAAO16C,KAAYy6C,KACzEgsB,EAAS,CAAEr4E,KAAM2+E,mBAAQx4C,KAAQojD,UAAWjxC,QAAS,CAAEwP,WAAO3qD,EAAWi9G,qBAAqB,EAAMv4C,IAAKA,KACzGwW,EAAS,CAAEr4E,KAAM2+E,mBAAQx4C,KAAQikD,cAAe9xC,QAAS,CAAEwP,WAAO3qD,EAAWi9G,qBAAqB,MAEpG,CAACsoE,EAAc9wH,IAEXknD,EAAc94E,kBAAQ,kBAAO4xB,IAAWhgD,KAAYy6C,KAAqB,CAACuF,IAGhF,OACEhxB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACE+gF,GAAG,MACHC,IAAI,OACJC,QAAQ,MACRC,SAAS,OACTz0F,MAAM,OACN6wE,UAAU,EACVl8D,QAAS+2I,EACTvkJ,OAAQikF,KChDDgqE,GAA4D,SAAA7jJ,GAAsB,IAAnBz/B,EAAmBy/B,EAAnBz/B,GAAI++F,EAAet/D,EAAfs/D,SACxEwkF,EAAuB/sE,aAAa,SAAA53E,GAAC,OAAIq4E,KAAeusE,mBAAmB5kJ,EAAG5+B,KAC5E+iF,EAAmBg3B,KAAnBh3B,eACAjwC,EAAaulI,KAAbvlI,SACFse,EAAc8mD,KAAYlrD,YAAYgjE,eAA4BhwH,GAChEqiE,EAAQm3C,KAARn3C,IAEFohH,EAAgBjjJ,kBAAQ,WAC5B,OAAOu+D,EAAWjsD,EAAWse,EAAcA,GAC1C,CAACA,EAAate,IAT4EonE,EAWtEC,eAXsEC,EAAA3sG,OAAAqoD,EAAA,EAAAroD,CAAAysG,EAAA,GAAAzsG,OAAAu9F,GAAA,EAAAv9F,CAAA2sG,EAAA,QAWlFvhC,EAXkFuhC,EAAA,GAavFx2E,EAAWC,sBACf,SAACzF,GACCy6C,EAAS,CACPr4E,KAAM2+E,mBAAQx4C,KAAQojD,UACtBjxC,QAAS,CAAEwP,WAAO3qD,EAAWi9G,qBAAqB,EAAMv4C,IAAKA,KAE/D0gB,EAAe/iF,EAAIo+B,IAErB,CAAC2kD,EAAgB/iF,IAEnB,OACEohC,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAS,+BAAAr5B,OAAiCk6K,EAAuB,UAAY,KAChFniJ,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAa6a,IAAK,EAAGle,MAAOqlJ,EAAejL,UAAW,EAAGpL,KAAM,EAAGxpI,SAAUA,EAAUm7D,SAAUA,MCHhG2kF,GAAenrG,IAAMi8F,KA3BV,SAAA/0I,GAA6E,IAA1EyS,EAA0EzS,EAA1EyS,SAAUY,EAAgErT,EAAhEqT,SACtB2wI,EAAgBjjJ,kBAAQ,kBAAoB,IAAbsS,EAAA,IAAAzpC,OAAqBypC,EAArB,KAAmC,IAAK,CAACA,IACxE45E,EAAYlsF,kBAAQ,kBAAO0R,IAAa5/B,KAAeo/B,KAAO,OAAS,SAAU,CAACQ,IAClFkhF,EAAiB5yF,kBAAQ,kBAAO0R,IAAa5/B,KAAeo/B,KAAO,MAAQ,OAAQ,CAACQ,IACpFyxI,EAAgBnjJ,kBAAQ,WAC5B,OAAIsS,EAAW,EACN,MACEA,EAAW,EACb,MACe,IAAbA,EACF,QADF,GAGN,CAACA,IAEJ,OAAOZ,EACL9Q,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,4BACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAS,sBACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAhB,YACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAS,GAAAr5B,OAAKs6K,IAApB,IAAuCF,GAAsB,KAE/DriJ,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAS,cAAAr5B,OAAgB+pH,IAA9B,MAAoD1G,IAGtDtrF,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,QAMSsiJ,GAAqE,SAAAt/I,GAA0B,IAAvBy8B,EAAuBz8B,EAAvBy8B,MAAO1sB,EAAgB/P,EAAhB+P,UACpFy8F,EAAa9gB,eACbroE,EAAYnnB,kBAAQ,kBAAMqjJ,aAAuB/yC,EAAY/vE,IAAU,IAAI,CAACA,EAAO+vE,IAFiB31D,EAKpDC,mBAAuB,IAL6BC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAKnG2oG,EALmGzoG,EAAA,GAK9E0oG,EAL8E1oG,EAAA,GAQpGkrE,EAAQvqE,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQ2rB,eAE9CprB,oBAAU,WACR,GAAIxoC,EAAW,CACb,IAAM2vI,EAAkB3vI,EAAU7X,IAAI,SAAAkT,GACpC,OAAOjiC,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFiiC,KAGDrR,EAAOsF,IAAE5I,OACbipJ,EACA,SAAChpJ,EAAmB0U,GAClB,IAAMu0I,EAAYv0I,EAAEiC,OACdymC,EAAWp9C,EAAIipJ,IAAc,CAAEnxI,SAAU,GACzC45E,EACJh9E,EAAEqD,aAAeqlC,EAAStlC,SAAW,EAAIzgC,KAAqBrH,MAAQqH,KAAqBnH,KACvF4nC,EAAWslC,EAAStlC,SAAWpD,EAAEqD,aACvC,OAAOtlC,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFutB,EADLvtB,OAAA2tB,EAAA,EAAA3tB,CAAA,GAEGw2K,EAAY,CACX9wI,iBAAkBzD,EAAEkC,iBACpBkB,WACA45E,gBAIN,IAGEruF,GACF0lJ,EAAuB1lJ,KAG1B,IAEH,IAAM6lJ,EAAmBloG,YAAiB,SAAAp9C,GAAK,IACrCkU,EAAawB,YAAa1V,EAAG+oB,GAA7B7U,SACFzU,EAAOylJ,EAAoBn8H,GAGjC,OAFsB4+F,GAASloH,EAAOA,EAAKyU,SAAWA,IAKlDyuG,EAAc/gH,kBAAQ,WAC1B,IAKI2jJ,EALEjyI,EAAWgmE,KAAY5lG,eAAew+H,EAAY/vE,GAClD3O,EAAS8lD,KAAY5rD,OAAOwkF,EAAY/vE,GACxC1iC,EAAOylJ,EAAoBn8H,GAE3By8H,EAAiB/lJ,GAAQA,EAAKyU,SAAW,EAe/C,OAZIsxI,GAAkBhyH,IAAWhgD,KAAYy6C,IAC3Cs3H,EAAc7xK,KAAeo/B,KACpB0yI,GAAkBhyH,IAAWhgD,KAAY06C,KAClDq3H,EAAc7xK,KAAemgD,MACnB2xH,GAAkBhyH,IAAWhgD,KAAYy6C,IAEzCu3H,GAAkBhyH,IAAWhgD,KAAY06C,OACnDq3H,EAAc7xK,KAAeo/B,MAF7ByyI,EAAc7xK,KAAemgD,OAKT8zF,GAASloH,EAAO8lJ,EAAcjyI,IAE5B5/B,KAAeo/B,MACtC,CAACqvB,EAAO+vE,EAAYyV,EAAOu9B,IAE9B,OAAO1iJ,EAAA1P,EAAA2P,cAACqiJ,GAAD,CAAcxxI,SAAUqvG,EAAazuG,SAAUoxI,KCvG3CG,GAAY,SAACtjH,GACxB,IAAM+vE,EAAa9gB,eAEbroE,EAAYnnB,kBAAQ,kBAAMqjJ,aAAuB/yC,EAAY/vE,IAAU,IAAI,CAACA,EAAO+vE,IACnFr8F,EAAQunC,YAAiB,SAAAp9C,GAAC,OAAI0uE,aAAiB1uE,EAAG+oB,KAClDxV,EAAYmyI,aAAe38H,GAejC,OAXennB,kBAAQ,WACrB,IAAM+jJ,EAAOpyI,GAAa,CAAEL,cAAUn0C,EAAWk0C,cAAUl0C,GACrD4nJ,EAAM9wG,GAAS,CAAE3C,cAAUn0C,EAAWk0C,cAAUl0C,GAChD6mL,EAAO,CAACD,EAAKzyI,SAAUyzG,EAAIzzG,UAC3B2yI,EAAO,CAACF,EAAK1yI,SAAU0zG,EAAI1zG,UACjC,MAAO,CACLQ,IAAK1O,IAAExa,KAAKq7J,EAAM,SAAA7rI,GAAC,OAAIhV,IAAEulB,SAASvQ,KAClCvG,IAAKzO,IAAExa,KAAKs7J,EAAM,SAAA9rI,GAAC,OAAIhV,IAAEulB,SAASvQ,OAEnC,CAAClE,EAAOtC,KCtBAuhF,GAAyE,SAAAj0F,GAIhF,IAHJrB,EAGIqB,EAHJrB,MACAsE,EAEIjD,EAFJiD,UACAgwD,EACIjzD,EADJizD,SAEMgyF,EAAmBnxD,GAAoB5vF,IAAEulB,SAAS9qB,GAASA,OAAQzgC,GACnEgnL,EAAUtxF,aAAc,CAAC3wD,EAAWgiJ,IAC1C,OAAOtjJ,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAWiiJ,GAAUjyF,ICC7BkyF,GAAe57E,KAAqB67E,KAAeC,KAAM,SAAArwI,GAAK,OAAKA,EAAQA,EAAMpoC,UAAO1O,GAAzEqrG,CACnB,SAACrlE,EAAG3jC,GAAJ,SAAAqJ,OAAcrJ,EAAd,WAEI+kL,GAAc/7E,KAAqB67E,KAAeC,KAAM,SAAArwI,GAAK,OAAKA,EAAQA,EAAMtoC,SAAMxO,GAAxEqrG,CAClB,SAACrlE,EAAG3jC,GAAJ,SAAAqJ,OAAcrJ,EAAd,UAMIglL,IAJgBh8E,KAAqB67E,KAAeC,KAAM,SAAArwI,GAAK,OAAKA,EAAQA,EAAMrD,gBAAazzC,GAA/EqrG,CACpB,SAACrlE,EAAG3jC,GAAJ,SAAAqJ,OAAcrJ,EAAd,YAG6C,SAAAy/B,GAAe,IAAZrB,EAAYqB,EAAZrB,MAChD,OACEgD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MACIqC,IAAEhF,MAAMP,IACRgD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAWuiJ,IAAIzgJ,MAAMpG,OACxBgD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOA,EAAOqoE,UAAQ,QAOlCy+E,GAAoD,SAAA5gJ,GAAe,IAAZlG,EAAYkG,EAAZlG,MAC3D,OACEgD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MACIqC,IAAEhF,MAAMP,IACRgD,EAAA1P,EAAA2P,cAAC8jJ,GAAD,CAAa/mJ,MAAOA,EAAOsE,UAAWuiJ,IAAIzgJ,MAAMpG,OAC9CgD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOA,EAAOqoE,UAAQ,OA0C3B2+E,GAnCoC,SAAAzvH,GAAe,IAAZoL,EAAYpL,EAAZoL,MAC1C1uB,EAAQgyI,GAAUtjH,GAAlB1uB,IACR,OAAOjR,EAAA1P,EAAA2P,cAACgkJ,GAAD,CAAqBjnJ,MAAOiU,KAiCxB+yI,GA9BoC,SAAA1mF,GAAe,IAAZ39B,EAAY29B,EAAZ39B,MAC1C3uB,EAAQiyI,GAAUtjH,GAAlB3uB,IACR,OAAOhR,EAAA1P,EAAA2P,cAACgkJ,GAAD,CAAqBjnJ,MAAOgU,KA4BxBgzI,GAzBqC,SAAAt6C,GAAe,IAAZ/pE,EAAY+pE,EAAZ/pE,MAC7C+vE,EAAa9gB,eACbroE,EAAYk8H,aAAuB/yC,EAAY/vE,GAC/C10D,EAAO2vE,YAAiB,SAAAp9C,GAAC,OAAIgmJ,GAAahmJ,EAAG+oB,GAAa,MAChE,OAAOvmB,EAAA1P,EAAA2P,cAACikJ,GAAD,CAAUlnJ,MAAO/xB,KAqBb+4K,GAlBoC,SAAAz9B,GAAe,IAAZ5mF,EAAY4mF,EAAZ5mF,MAC5C+vE,EAAa9gB,eACbroE,EAAYk8H,aAAuB/yC,EAAY/vE,GAC/C50D,EAAM6vE,YAAiB,SAAAp9C,GAAC,OAAImmJ,GAAYnmJ,EAAG+oB,GAAa,MAC9D,OAAOvmB,EAAA1P,EAAA2P,cAACikJ,GAAD,CAAUlnJ,MAAOjyB,KCtCpBo5K,GAA6B,CACjC,CAAE5lL,KAAM,SAAUy+B,MAAO,SAAU59B,KAAM2R,IAAU6iC,QACnD,CAAEgc,WAAYt+C,KAAWg2C,KAAM/oD,KAAM,OAAQy+B,MAAO,OAAQ59B,KAAM2R,IAAUijC,QAC5E,CAAE4b,WAAYt+C,KAAW+1C,IAAK9oD,KAAM,MAAOy+B,MAAO,MAAO59B,KAAM2R,IAAUijC,SAmB9DowI,GAMR,SAAA/lJ,GAAyD,IAAtDz/B,EAAsDy/B,EAAtDz/B,GAAWylL,GAA2ChmJ,EAAlD6oB,MAAkD7oB,EAA3CgmJ,SAASpxI,EAAkC5U,EAAlC4U,UAAW6qI,EAAuBz/I,EAAvBy/I,iBAC/B7oJ,EAAS4jF,eAET4+D,EAA8BriE,aAAaS,KAAe4hE,6BAC1DzB,EAAyB5gE,aAAaS,KAAeogE,qBAJC+B,EAMvBr/D,KAA7B/2B,EANoDo2F,EAMpDp2F,cAAeC,EANqCm2F,EAMrCn2F,UANqCyiG,ECpD/B,SAAC1lL,GAC9B,IAAM8wI,EAAa9gB,eAOnB,MAAO,CACLznE,WAPyC/nB,kBACzC,kBAAOswG,EAAWjoF,KAAK7oD,GAAM8wI,EAAWjoF,KAAK7oD,GAAIqlD,gBAAa1nD,GAC9D,CAACmzI,EAAY9wI,IAMb2oD,OAJauvD,KAAY3yD,OAAOurF,EAAY9wI,GAK5C2nD,UAAWuwD,KAAYytE,YAAY70C,EAAY,CAAE9wI,QDiDpB4lL,CAAgB5lL,GAAvC2oD,EARoD+8H,EAQpD/8H,OAAQJ,EAR4Cm9H,EAQ5Cn9H,WACR9a,EAAW6sI,KAAX7sI,OACFo4I,EAAe3tE,KAAY/lG,UAAU69G,eAA4BhwH,GACjE8lL,EAAgB5tE,KAAYxlG,WAAWs9G,eAA4BhwH,GAEnEsnD,EAAY9mB,kBAChB,kBAAM+kJ,GAAWp8J,KAAK,SAAAq4C,GAAE,OAAIA,EAAGhhE,OAASqlL,GAAgBrkH,EAAGxQ,aAAe80H,KAAkBP,GAAW,IACvG,CAACM,EAAcC,IAGXz7G,EAAW7pC,kBAAQ,kBAAMnK,GAAUixB,GAAaA,EAAU9mD,OAAS2R,IAAUijC,QAAQ,CAACkS,EAAWjxB,IACjGoI,EAAW+3E,aAAa,SAAC53E,GAAD,OAAmBA,EAAEH,WAC7C8pD,EAAW/nD,kBAAQ,wBAAoB7iC,IAAb8gC,IAA0BN,aAAiBM,KAA2B,CAACA,IAEjGsnJ,EAAUvvE,aAAaS,KAAepuD,MAAMtnB,OAAS,IAAK,EAI1DykJ,EAAeniJ,sBACnB,SAACzF,GACC26H,aAAaC,QAAb,cAAA3vJ,OAAmCrJ,GAAMwgD,KAAKnJ,UAAUjZ,IACxD6kD,EAAUjjF,EAAIo+B,IAEhB,CAAC6kD,EAAWjjF,IAEVimL,EAAoBltB,aAAaO,QAAb,cAAAjwJ,OAAmCrJ,IACrDkmL,EAAmBriJ,sBACvB,SAACjkC,GACCojF,EAAchjF,EAAIJ,IAEpB,CAACojF,EAAehjF,IAGlB68E,oBAAU,WACHl0B,GACHs6B,EAAUjjF,EAAIwgD,KAAK0F,MAAM+/H,KAE1B,IAEH,IAAMpM,EAAkBr5I,kBAAQ,kBAAOilJ,EAAU,WAAa,IAAK,CAACA,IAE9DU,EAAoB3lJ,kBAAQ,WAChC,OAAO+nD,GAAY6uF,GAClB,CAAC7uF,EAAU6uF,IAENgP,EAAiC9vE,KAAjC8vE,6BAER,OACEhlJ,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAS,YAAAr5B,OAAcwwK,IAC1Bz4I,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uCACbtB,EAAA1P,EAAA2P,cAACglJ,GAAD,CAAWrmL,GAAIA,KAKjBohC,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,sBACX00I,GAA0Bh2I,EAAA1P,EAAA2P,cAACilJ,GAAD,CAAatmL,GAAIA,EAAI++F,UAAWonF,IAC3D/O,GAA0Bh2I,EAAA1P,EAAA2P,cAAC04I,GAAD,CAAe/5K,GAAIA,KAEhDohC,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,wCACbtB,EAAA1P,EAAA2P,cAACklJ,GAAD,CAAalyI,UAAWA,EAAW0sB,MAAO/gE,KAE5CohC,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,uCACZ2nC,EACCjpC,EAAA1P,EAAA2P,cAACmlJ,GAAD,CAAexmL,GAAIA,EAAI++F,UAAW85E,IAElCz3I,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc+gF,GAAG,OAAOC,IAAI,GAAGC,QAAQ,SAASC,SAAS,GAAGz0F,MAAM,OAAO6wE,UAAU,KAIvF39D,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,sCACZ2nC,GAAYh0C,GACX+K,EAAA1P,EAAA2P,cAAColJ,GAAD,CACE1lH,MAAO/gE,EACPq2B,OAAQA,EACRkyB,WAAYA,EACZy6B,cAAekjG,EACfhH,iBAAkBA,KAKxB99I,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,mCACZ2nC,GAAYh0C,GAAUkyB,GACrBnnB,EAAA1P,EAAA2P,cAACqlJ,GAAD,CACE3lH,MAAO/gE,EACPq2B,OAAQA,EAAOA,OACfkyB,WAAYA,EACZI,OAAQA,EACRs6B,UAAW+iG,KAKhBI,GACChlJ,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,sCACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,oBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UACbtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,yCACZtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,2BACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,mBACdtB,EAAA1P,EAAA2P,cAACslJ,GAAD,CAAgB/H,MAAM,IAAIpxF,KAAK,SAEjCpsD,EAAA1P,EAAA2P,cAAC+jJ,GAAD,CAAerkH,MAAO/gE,KAExBohC,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,2BACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,mBACdtB,EAAA1P,EAAA2P,cAACslJ,GAAD,CAAgB/H,MAAM,IAAIpxF,KAAK,SAEjCpsD,EAAA1P,EAAA2P,cAAC+jJ,GAAD,CAAerkH,MAAO/gE,OAU5BohC,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UACbtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,yCACZtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,2BACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,mBACdtB,EAAA1P,EAAA2P,cAACslJ,GAAD,CAAgB/H,MAAM,IAAIpxF,KAAK,UAEjCpsD,EAAA1P,EAAA2P,cAAC+jJ,GAAD,CAAgBrkH,MAAO/gE,KAEzBohC,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,2BACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,mBACdtB,EAAA1P,EAAA2P,cAACslJ,GAAD,CAAgB/H,MAAM,IAAIpxF,KAAK,SAEjCpsD,EAAA1P,EAAA2P,cAAC+jJ,GAAD,CAAerkH,MAAO/gE,UAQhComL,GACAhlJ,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,sCACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,oBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UACbtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,yCACZtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,2BACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,mBACdtB,EAAA1P,EAAA2P,cAACslJ,GAAD,CAAgB/H,MAAM,IAAIpxF,KAAK,SAEjCpsD,EAAA1P,EAAA2P,cAAC+jJ,GAAD,CAAerkH,MAAO/gE,KAExBohC,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,2BACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,mBACdtB,EAAA1P,EAAA2P,cAACslJ,GAAD,CAAgB/H,MAAM,IAAIpxF,KAAK,SAEjCpsD,EAAA1P,EAAA2P,cAAC+jJ,GAAD,CAAerkH,MAAO/gE,OAU5BohC,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UACbtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,yCACZtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,2BACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,mBACdtB,EAAA1P,EAAA2P,cAACslJ,GAAD,CAAgB/H,MAAM,IAAIpxF,KAAK,SAEjCpsD,EAAA1P,EAAA2P,cAAC+jJ,GAAD,CAAerkH,MAAO/gE,KAExBohC,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,2BACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,mBACdtB,EAAA1P,EAAA2P,cAACslJ,GAAD,CAAgB/H,MAAM,IAAIpxF,KAAK,UAEjCpsD,EAAA1P,EAAA2P,cAAC+jJ,GAAD,CAAgBrkH,MAAO/gE,SAQnCohC,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,sCACZm2I,GAA+BkN,GAC9B3kJ,EAAA1P,EAAA2P,cAAA,UACEqB,UAAU,2BACVzP,MAAM,SACN4P,QAAS,kBAAM4K,EAAOztC,IACtB++F,UAAW85E,EACXr4K,KAAK,UAEL4gC,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,4BAQnBkkJ,GAA6D,SAAAtiJ,GAAsB,IAAnBtkC,EAAmBskC,EAAnBtkC,GAAI++F,EAAez6D,EAAfy6D,SAAesf,EACvCtE,KAAxCW,EAD+E2D,EAC/E3D,WAAY53B,EADmEu7B,EACnEv7B,cAAeiH,EADoDs0B,EACpDt0B,SAC7B3rD,EAAQ85E,KAAYxlG,WAAWs9G,eAA4BhwH,GAC3DguI,EAAWnqG,sBACf,SAACy+E,GACCx/B,EAAc9iF,EAAIsiH,EAAW5vG,KAAWg2C,KAAOh2C,KAAW+1C,KAC1DshC,OAASpsF,GAAW,GACpB+8G,GAAW,IAEb,CAAC16G,EAAI8iF,EAAe43B,IAEhB4H,EAAW9hF,kBAAQ,kBAAMpC,IAAU1rB,KAAWg2C,MAAM,CAACtqB,IAE3D,OACEgD,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACE+gF,GAAG,OACHC,IAAI,MACJC,QAAQ,OACRC,SAAS,MACTz0F,MAAM,OACN6wE,SAAUA,EACVl8D,QAASmrG,EACT34G,OAAQitF,KErRRukE,GAA6C,SAAApnJ,GAAgB,IAAbpJ,EAAaoJ,EAAbpJ,OAEpD,OADAo+I,GAAkBp+I,GACX+K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,OAGIwlJ,GAIR,SAAAxiJ,GAA6C,IAA1CjO,EAA0CiO,EAA1CjO,OAAQge,EAAkC/P,EAAlC+P,UAAW6qI,EAAuB56I,EAAvB46I,iBACnB90J,EAAUyrF,eACV5vB,EAASuwB,aAAaS,KAAehxB,QACrC5lD,EAAcwjH,aAAyBxtH,GACvC0wJ,EAAgBvwE,aAAa,SAAA53E,GAAC,OAAIq4E,KAAe8vE,cAAcnoJ,EAAGxU,KAClE48J,EAAWxmJ,kBAAQ,WACvB,GAAKH,EAAL,CAGA,IAAM4mJ,EAAO5mJ,EAAYwR,SAAWxR,EAAYyR,SAC1CuwB,EAAMhiC,EAAYyR,SAAWm1I,EACnC,OAAOtjJ,IAAEulB,SAASmZ,IAAQ1+B,IAAE0nB,SAASgX,GAAOA,OAAM1kE,IACjD,CAAC0iC,IAGEwoB,EAAO0tD,GAAc,QAEL/1E,kBAAQ,WAC5B,OAAOmD,IAAEm+C,KAAKj5B,EAAM,SAAA6S,GAAG,OAAIA,EAAIvpD,YAAcA,IAAUijC,UACtD,CAACyT,IAEJ,OACEznB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGjL,GAAU+K,EAAA1P,EAAA2P,cAAC6lJ,GAAD,CAAc7wJ,OAAQA,IAChCA,GACC4vD,EAAOzpD,IAAI,SAAA2qJ,GAAG,OACZ/lJ,EAAA1P,EAAA2P,cAAC+lJ,GAAD,CACEh+J,IAAK+9J,EACLnnL,GAAImnL,EACJ9yI,UAAWA,EACXiU,MAAO0+H,IAAa,EACpBvB,QAASsB,EAAc7rJ,SAASisJ,GAChCjI,iBAAkBA,QCzBjBmI,GAAuE,SAAA5nJ,GAA0B,IAAvBy/I,EAAuBz/I,EAAvBy/I,iBAAuB50D,EAGlFC,eAAlBngG,EAHoGkgG,EAGpGlgG,QAAS8L,EAH2Fo0F,EAG3Fp0F,KACXG,EAASugF,KACT7xB,EAAc+xB,KACdkgE,EAAkBrzI,IAAEgpC,KAAKoY,EAAa,CAAC,OAAQ,aAG/CjoB,GAFU2d,qBAAW6sG,MAET9wE,aAAa,SAAA53E,GAAC,OAAIA,EAAEk+B,aAChCulB,EAAWm0B,aAAa,SAAA53E,GAAC,OAAIA,EAAEyjD,WAE/B42F,GADYz4I,kBAAQ,kBAAMs8B,IAAcvqD,KAAUs0F,QAAQ,CAAC/pC,IACjD05C,aAAa,SAAA53E,GAAC,OAAIq4E,KAAegiE,QAAQr6I,EAAGxU,MACtDyuJ,EAA8BriE,aAAaS,KAAe4hE,8BpCf/B,SAACxiJ,GAClC,IAAMw5B,EAAcmsB,YAAiB,SAAA19E,GAAK,OAAImhH,GAAoB5vD,YAAYvxD,EAAO+3B,KAC/EkxJ,EAAqBvrG,YAAiB,SAAA19E,GAAK,OAAImhH,GAAoBxwB,WAAW3wF,EAAO+3B,KACrFmxJ,EAAuBhnJ,kBAAQ,kBAAMqvB,GAAeA,EAAYtuB,OAAS,GAAG,CAACsuB,IAC3E2tB,EAAeN,cAAfM,WACF/gC,EAAMqoE,cACZjoC,oBAAU,YAWJxmD,GAAWmxJ,GAAyBD,GAVnB,eAAA9nJ,EAAAhyB,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAC,EAAO+xD,GAAP,OAAAjyD,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OACtB,IACEgjC,EAAW3tB,YAAYniB,QAAQw+D,GAI/B,MAAO7qD,GACPzK,QAAQuH,KAAK,8BAPO,wBAAA7D,EAAAK,SAAAR,MAAH,gBAAAmkC,GAAA,OAAA7+C,EAAAujB,MAAAzJ,KAAA0J,YAAA,EAWnBwkI,CAAgBpxJ,IAEjB,CAACA,IACJmmD,aAAmB,4BAA6B,CAC9CnmD,SACAw5B,cACA03H,qBACAC,uBACAhqG,aACA/gC,QoCXFirI,CAAoBrxJ,GAAU,IC/BE,WAChC,IAAMwgB,EAAMmjE,aAAc,sBAClB7wE,EAAcojE,KAAdpjE,UACA1T,EAAWkyJ,eAAXlyJ,OACFrL,EAAUyrF,eACV+xE,EAAoBpxE,aAAa,SAAA53E,GAAC,OAAIq2I,aAAgBr2I,EAAGxU,KALzB+wD,EAOEC,mBAAmB,IAPrBC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAO/Bnc,EAP+Bqc,EAAA,GAOjBwsG,EAPiBxsG,EAAA,GAStCwB,oBAAU,WACR,IAAMirG,EAAgBF,EAAkBprJ,IAAI,SAAAoC,GAAC,OAAIA,EAAEvI,SAAQ2I,OAAO,SAAA06C,GAAE,YAAW/7E,IAAP+7E,IAClEquG,EAAkBpkJ,IAAEg5C,WAAW3d,GAAgB,GAAI8oH,GAAiB,IACpEE,EAAerkJ,IAAEg5C,WAAWmrG,EAAeryJ,GAC3CwyJ,EAAgBtkJ,IAAEs7B,MAAM8oH,EAAiBC,GAC1CC,GAAiBA,EAAc1mJ,OAAS,IAAOs4E,aAAe76C,EAAc8oH,IAC/EjxI,EAAI,2BAA4B,CAAEixI,gBAAe9oH,iBACjD71B,EAAU2+I,GACVD,EAAgB7oH,IAEhBnoB,EAAI,wCAAyC,CAAEixI,gBAAe9oH,kBAG/D,CAACA,EAAc4oH,IAElBprG,aAAmB,2BAA4B,CAC7Cxd,eACA4oH,oBACAC,kBACApyJ,SACA0T,YACA0N,QDEFqxI,GACAlT,KACA,IAAMz/E,EAAgBC,eAjBsFu2C,EAkB1ExzD,IAAM6C,SAAwB,IAlB4C6wD,EAAAx+H,OAAAqoD,EAAA,EAAAroD,CAAAs+H,EAAA,GAkBrG13F,EAlBqG43F,EAAA,GAkB1Fk8C,EAlB0Fl8C,EAAA,GAmBtGm8C,IAAoBnP,IAAW5iJ,GAC/B+8I,EAA0C,MAAhCzvI,IAAE9E,QAAQxI,GAAQgyJ,OAAO,GAEnC/oL,EAAYgxF,YAAYhU,IAAQh9E,WAChC8mJ,EAAa12D,KAAO22D,WACpB1wG,EAAQqmC,YAAiB,SAAA19E,GAAK,OAAIA,EAAMm0E,KAAK2G,iBAAaz7E,EAE1DspJ,EAAazmH,kBAAQ,WACzB,GAAIlhC,GAAaq2C,EACf,OAAO+9B,YAAkB0yE,EAAYzwG,EAAOr2C,IAG7C,CAACA,EAAW8mJ,EAAYzwG,IAE3BknC,oBAAU,WAEJwF,GACFkT,EAAcnpE,MAAMi2D,EAAU,CAAEriF,GAAI,kBAAmBsoL,UAAW,OAEnE,CAACjmG,IAEJxF,oBAAU,WAKJoqE,GACFA,EAAW5yG,YAAYqG,KAAK,SAAA5B,GAC1BqvI,EAAarvI,EAAQA,YAGxB,IAlDyG,IAwDpGmiE,EAAiBlB,KAAjBkB,aACAV,EAAamP,eAAbnP,SAWR,OAVA19B,oBAAU,WACJxmD,GAAUH,GAAQA,EAAKG,QAAUA,IAAWH,EAAKG,OAAO8c,kBAC1D4xC,GAAek2B,EAAa+7D,EAAiBjyF,EAAa,CAAE0vB,SAAS,IAAQ,IAE9E,CAACp+E,EAAQH,EAAKG,SAEjBwmD,oBAAU,WACR09B,EAAS,YAAahoG,KAAUgyE,MAAO,CAAEkwB,SAAS,KACjD,CAACp+E,IAGF+K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGjL,GACC+K,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACbtB,EAAA1P,EAAA2P,cAACknJ,GAAD,MACCtP,GAAW5iJ,GAAU+K,EAAA1P,EAAA2P,cAACmnJ,GAAD,CAAWn0I,UAAWA,EAAWhe,OAAQA,EAAQ6oJ,iBAAkBA,IACxFkJ,GACChnJ,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAConJ,GAAD,MACArnJ,EAAA1P,EAAA2P,cAAA,uCACAD,EAAA1P,EAAA2P,cAACqnJ,GAAD,CAAyBtV,QAASA,MAMzC/8I,GACC+K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACsnJ,GAAD,MACC1P,GACC73I,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,kBACZm2I,GAA+BxiJ,GAAU+K,EAAA1P,EAAA2P,cAACunJ,GAAD,CAAa5N,QAAS,KAGlE55I,EAAA1P,EAAA2P,cAACwnJ,GAAD,OAGH5P,GAAW73I,EAAA1P,EAAA2P,cAACynJ,GAAD,SAOTC,GAKR,SAAAzkJ,GAA0C,IAAvCrR,EAAuCqR,EAAvCrR,MAAOmL,EAAgCkG,EAAhClG,MAAOu/I,EAAyBr5I,EAAzBq5I,OACdn8I,EADuC8C,EAAjBw5I,WACJrwK,OAAAy0B,EAAA,EAAAz0B,CAAA,GAEfkwK,EAFe,CAGlBz/E,UAAW,kBACXvQ,MAAO,MACPq7F,SAAU,QALQv7K,OAAAy0B,EAAA,EAAAz0B,CAAA,GAQfkwK,EARe,CASlBz/E,UAAW,mBACXxQ,KAAM,MACNs7F,SAAU,QAGhB,OACE5nJ,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,iBACdtB,EAAA1P,EAAA2P,cAAA,QAAMG,MAAOA,EAAOkB,UAAU,0BAC3BzP,GAEHmO,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,wBAAwBtE,KEpJjC6qJ,GAOT,SAAAxpJ,GAAmG,IAAhG69E,EAAgG79E,EAAhG69E,cAAevtB,EAAiFtwD,EAAjFswD,OAAQgP,EAAyEt/D,EAAzEs/D,SAAUxF,EAA+D95D,EAA/D85D,SAAUksB,EAAqDhmF,EAArDgmF,cAAerzD,EAAsC3yB,EAAtC2yB,OAAQ82H,EAA8BzpJ,EAA9BypJ,wBACjEv8F,EAAe3Q,YAAiB6a,IAChCsyF,EAAe3oJ,kBAAQ,kBAAOmsD,EAAe,cAAH,OAAAtjF,OAA0Bo8G,EAAgB,SAAW,YAAc,CACjH94B,IAEMnP,EAAeN,cAAfM,WACA/nB,EAAUwoD,GAAqB7rD,GAA/BqD,MAN6F0lB,EAO/DC,oBAAS,GAPsDC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAO9FiuG,EAP8F/tG,EAAA,GAOlFguG,EAPkFhuG,EAAA,GAAAuhB,EAQnExhB,oBAAS,GAR0DyhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAQ9F2jB,EAR8F1jB,EAAA,GAQpFysF,EARoFzsF,EAAA,GAU/F0sF,EAAoB1lJ,sBACxB,SAAA4xB,GACM8qD,IAAa6oE,EACf9rE,EAAc,CAAElrD,OAAQ,WACdqzD,EAODhwD,EAAM1Q,UACfskI,GAAgB,GAChBrnF,WAAW,WACTxkB,EAAW/nB,MAAM+zH,cAAc/zH,EAAM1Q,SACrCskI,GAAgB,GAChBC,GAAc,GACdJ,GAAwB,IACvB,OAbHG,GAAgB,GAChBrnF,WAAW,WACTjS,IACAs5F,GAAgB,GAChBC,GAAc,IACb,OAWP,CAAC/oE,EAAU6oE,EAAY3zH,EAAOs6B,IAGhC,OACE3uD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAU,gBAAgBG,QAAS,kBAAMy6E,EAAc,CAAElrD,OAAQ,YAAa5xD,KAAK,UACzF4gC,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,sBADf,iBAGAtB,EAAA1P,EAAA2P,cAAA,UACEqB,UAAS,OAAAr5B,OAAUk3G,EAA0B,cAAf4oE,EAArB,KAAA9/K,OAAqD01F,EAAW,WAAa,IACtFA,SAAUA,EACVl8D,QAAS,kBAAM0mJ,EAAkB9zH,IACjCj0B,MAAO,CAAEkwE,WAAY,wBACrBlxG,KAAK,WAEH+4F,GACAn4D,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,cAAUk/E,EAA4D,IAAhDkF,EAAgB,SAAW,QAAU,SAA3D,KAAoF,IACpFrkF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,yBAGf62D,GAAY6vF,IACZhoJ,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,qCACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,sCAGnB69E,GACCn/E,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,kCC7DCooJ,GAQR,SAAAhqJ,GAQC,IAPJiqJ,EAOIjqJ,EAPJiqJ,YACAC,EAMIlqJ,EANJkqJ,mBACAC,EAKInqJ,EALJmqJ,kBACAnkE,EAIIhmF,EAJJgmF,cACQokE,EAGJpqJ,EAHJ2yB,OACA03H,EAEIrqJ,EAFJqqJ,qBACApkE,EACIjmF,EADJimF,WACI3D,EASA9D,GAAqB4rE,GAA8B,WAPrDp0H,EAFEssD,EAEFtsD,MACA5M,EAHEk5D,EAGFl5D,KACAuJ,EAJE2vD,EAIF3vD,OACA8rD,EALE6D,EAKF7D,aACAO,EANEsD,EAMFtD,gBACAC,EAPEqD,EAOFrD,oBACAS,EARE4C,EAQF5C,mBAGI4qE,EAAqB/tG,YAAiBgqC,KAXxC7qC,EAY8CC,qBAZ9CC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAYG6uG,EAZH3uG,EAAA,GAYsB4uG,EAZtB5uG,EAAA,GAaE+lB,EAAY9Q,YAAYhU,IAAQ8kB,WAChC8oF,EAAU9oF,GAAaA,IAAcxkE,KAAiB3P,MAEtDuzD,EAAaG,KAEbgM,EAAe3Q,YAAiB6a,IAEhCszF,EAAwB,YAAX/3H,EAAuB,YAAc,cAElDg4H,EAAoB5pJ,kBAAQ,WAChC,OAAOmD,IAAEnH,IAAIktJ,EAAa,SAAA7vC,GAAE,MAAK,CAC/Bz7G,MAAOy7G,EAAGnuH,GACVwX,MAAK,GAAA75B,OAAKwwI,EAAGiL,SAAR,MAAAz7I,OAAqBwwI,EAAGzzB,WAAxB,SAEN,CAACsjE,IAEEW,EAAkB1mJ,IAAEvE,IAAIypB,EAAK,GAAI,gBACjCyhI,EAAkB70H,EAAMgH,aAC1B2tH,EAAkBjhK,KAAK,SAAAohK,GAAU,OAAIA,EAAWnsJ,QAAUq3B,EAAMgH,eAChE,GACE+tH,EAAgB7mJ,IAAExa,KAAKugK,EAAa,SAAA7vC,GAAE,OAAIA,EAAG4wC,WAEnD5tG,oBAAU,WACJpnB,IACEipD,EACEqrE,GAEFE,EAAqBF,GACrB5qE,EAAmB4qE,IAGfM,IAAwC,IAArBA,EACjBG,IACFP,EAAqBO,EAAc9+J,IACnCyzF,EAAmBqrE,EAAc9+J,KAE1B2+J,GACTJ,EAAqBI,GACrBlrE,EAAmBkrE,IAEnBlrE,OAAmBxhH,GAGd83D,EAAMgH,cAEfwtH,EAAqBx0H,EAAMgH,gBAG9B,IAEH,IAAMiuH,EAAqB7mJ,sBACzB,SAAC7jC,GACCiqL,EAAqBjqL,GACrBm/G,EAAmBn/G,IAErB,CAACiqL,EAAsB9qE,IAGnBwrE,EAA6BvrG,OAChCvS,KAAI,GACJtqB,IAAI,OAAQ,IACZA,IAAI,SAAU,IACdA,IAAI,UAAW,GAelB,OAbAs6B,oBAAU,WAEJqtG,GAAWzrE,GACbmrE,KAED,CAACM,EAASzrE,IAEb5hC,oBAAU,WACJpnB,EAAMgH,eAAiBgpD,GAA4B,YAAXrzD,IAC1Cs4H,EAAmBj1H,EAAMgH,eAE1B,IAGDr7B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,6DACoDokF,EAAa,+BAAAp8G,OAAoC8gL,GADrG,MAIE3pG,GACAp/C,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,gBACXtB,EAAA1P,EAAA2P,cAAA,yCACC+9C,OACEvS,KAAI,GACJjT,SAAS+wH,GACR,yKACA,4GAELl1H,IAAUA,EAAMsH,OACf37B,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,gBACXtB,EAAA1P,EAAA2P,cAAA,0BADF,kGAOJsC,IAAE4R,QAAQm0I,IAAiBjkE,GAAgC,gBAAf0kE,GAa3CxmJ,IAAE4R,QAAQm0I,KACVjkE,GAAgC,gBAAf0kE,IAChB/oJ,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAWxO,MAAM,wBACfmO,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACE9hC,KAAK,wBACLujC,MAAM,cACNuQ,aAAc62I,EAAkBA,EAAgBpnJ,MAAQknJ,EAAkB,GAAGlnJ,MAC7E5gC,QAAS,CAAEgoL,EAAyCA,GAAqC,GAA5DF,EAAkB,IAC/CrrF,UAAU,KApBhB39D,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAWxO,MAAM,wBACfmO,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACE9hC,KAAK,wBACLujC,MAAM,cACN5gC,QAAS8nL,EACThsJ,MAAO4rJ,EACPjrF,cAAiCphG,IAAvBosL,IAAqCrrE,KAAyBorE,EACxEplJ,SAAU,SAACZ,EAAGmkE,GAAJ,OAAqByiF,EAAmBziF,OAkBvDxyC,GACCr0B,EAAA1P,EAAA2P,cAAC0nF,GAAD,CACEtzD,MAAOA,EACPgwD,cAAeA,EACf58D,KAAMA,EACNq1D,aAAczoD,EAAMsH,OAASmhD,EAC7B9rD,OAAQA,EACRszD,WAAYA,IAGf/4B,GACCvrD,EAAA1P,EAAA2P,cAAA,SACED,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,WACdtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,wBADf,qBAKH+7E,IAAoByrE,GACnB9oJ,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,0HAGED,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAACq1D,GAAD,CAAkBC,GAAG,oBAArB,eAEFv1D,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAoBsD,SAAU4kJ,EAAoBjlJ,SAAUklJ,GAA5D,8DCxLK,SAASgB,GAATnrJ,GAIsB,IAHnCg2B,EAGmCh2B,EAHnCg2B,MACAs1B,EAEmCtrD,EAFnCsrD,SACA8/F,EACmCprJ,EADnCorJ,oBAIMX,EAAwB,UADZluG,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQtnB,QAAQ2rC,SAAW/hE,EAAE09C,QAAQtnB,QAAQ2rC,QAAQlB,QAF5DtkB,EAILC,mBAAoE8uG,OAAUvsL,EAAY,eAJrF09E,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAI5B2vG,EAJ4BzvG,EAAA,GAInB0vG,EAJmB1vG,EAAA,GAAAuhB,EAKDxhB,mBAA8C,SAL7CyhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAK5BouF,EAL4BnuF,EAAA,GAKjBouF,EALiBpuF,EAAA,GAAAG,EAMC5hB,mBAA2D,UAN5D6hB,EAAAxvF,OAAAqoD,EAAA,EAAAroD,CAAAuvF,EAAA,GAM5Bn5B,EAN4Bo5B,EAAA,GAMhBiuF,EANgBjuF,EAAA,GAAAG,EAOyBhiB,qBAPzBiiB,EAAA5vF,OAAAqoD,EAAA,EAAAroD,CAAA2vF,EAAA,GAO5B+tF,EAP4B9tF,EAAA,GAOJ+tF,EAPI/tF,EAAA,GAQ7BguF,EAAoCrvG,YAAiB,SAAA19E,GAAK,OAC9DA,EAAMg+E,QAAQtnB,QAAQ2rC,QAAUriG,EAAMg+E,QAAQtnB,QAAQ2rC,QAAQ2qF,qBAAkB3tL,IAE5E2tL,EAAkB9qJ,kBAAQ,WAC9B,OAAO6qJ,EACH59K,OAAO25I,QAAQikC,GAAmC7uJ,IAAI,SAAA8H,GAAA,IAAAqxB,EAAAloD,OAAAqoD,EAAA,EAAAroD,CAAA62B,EAAA,SAAwC,CAC9FpB,MADsDyyB,EAAA,GAEtDv3B,MAFsDu3B,EAAA,WAItDh4D,GACH,CAAC0tL,IAGEE,GAFYvvG,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQh9E,YAEhBukC,sBAChC,SAACzF,GACCysJ,EAAoBzsJ,IAEtB,CAACysJ,KAgCH,OA7BAhuG,oBAAU,gBACMl/E,IAAV83D,GAME81H,OAJY5tL,IAAZmtL,GAAuC,cAAdE,GAA4C,cAAfnnH,IAGrC,aAAfA,QAAwDlmE,IAA3BwtL,KASpC,CAACL,EAASE,EAAWnnH,EAAYsnH,IAEpCtuG,oBAAU,gBACMl/E,IAAV83D,GACFs1B,EAASt9E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACJgoD,EADG,CAEN+1H,SAAUV,EACVW,WAAYT,EACZU,eAAgB7nH,EAChB8nH,qBAAsBR,EAAyBA,EAAuB/sJ,WAAQzgC,MAGjF,IAGDyjC,EAAA1P,EAAA2P,cAAA,WACED,EAAA1P,EAAA2P,cAAA,WACED,EAAA1P,EAAA2P,cAAA,0BACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACErD,MAAO0sJ,EACPpmJ,SAAU,SAACf,EAAGvF,QACEzgC,IAAV83D,IACFs1H,EAAW3sJ,GACX2sD,EAASt9E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACJgoD,EADG,CAEN+1H,SAAUptJ,OAIhB59B,KAAK,QACL8B,QAAS,CACP,CACE87B,MAAO,cACP8E,MAAO,eAET,CACE9E,MAAO,YACP8E,MAAO,aAET,CACE9E,MAAO,gBACP8E,MAAO,qBAKf9B,EAAA1P,EAAA2P,cAAA,WACED,EAAA1P,EAAA2P,cAAA,4BACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACErD,MAAO4sJ,EACPtmJ,SAAU,SAACf,EAAGvF,QACEzgC,IAAV83D,IACFw1H,EAAa7sJ,GACb2sD,EAASt9E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACJgoD,EADG,CAENg2H,WAAYrtJ,OAIlB59B,KAAK,QACL8B,QAAS,CACP,CACE87B,MAAO,QACP8E,MAAO,SAET,CACE9E,MAAO,YACP8E,MAAO,iBAKf9B,EAAA1P,EAAA2P,cAAA,WACED,EAAA1P,EAAA2P,cAAA,2BACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACErD,MAAOylC,EACPn/B,SAAU,SAACf,EAAGvF,QACEzgC,IAAV83D,IACFy1H,EAAc9sJ,GACd2sD,EAASt9E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACJgoD,EADG,CAENi2H,eAAgBttJ,OAItB59B,KAAK,QACL8B,QAAS,CACP,CACE87B,MAAO,SACP8E,MAAO,UAET,CACE9E,MAAO,WACP8E,MAAO,YAET,CACE9E,MAAO,WACP8E,MAAO,eAIG,aAAf2gC,GAA6BynH,GAC5BlqJ,EAAA1P,EAAA2P,cAAA,OACEG,MAAO,CACL0Q,SAAU,WACV0rI,IAAK,QACLlwF,KAAM,QACNx/D,MAAO,gBAGTkT,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEiB,UAAU,wCACVpgC,QAASgpL,EACTltJ,MAAO+sJ,EACPvnJ,SAAU,SAACgoJ,QACKjuL,IAAV83D,IACF21H,EAA0BQ,GAC1B7gG,EAASt9E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACJgoD,EADG,CAENk2H,qBAAsBC,EAAextJ,WAI3CiwF,cAAc,OC5Kb,SAASw9D,GAATpsJ,GAAwE,IAA3Cg2B,EAA2Ch2B,EAA3Cg2B,MAAOs1B,EAAoCtrD,EAApCsrD,SAAoC5P,EAC7CC,oBAAkB,GAD2BC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAC9E2wG,EAD8EzwG,EAAA,GAChE0wG,EADgE1wG,EAAA,GAG/E2wG,EAAqBnoJ,sBACzB,SAACghE,EAAOzmE,QACQzgC,IAAV83D,IACFs2H,EAAgB3tJ,GAChB2sD,EAASt9E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACJgoD,EADG,CAENw2H,aAAc7tJ,OAIpB,CAAC0tJ,EAAcr2H,EAAOs1B,IAGxB,OACE3pD,EAAA1P,EAAA2P,cAAA,WACED,EAAA1P,EAAA2P,cAAA,cACED,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,QAAb,2FAEFtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAoBsD,QAAS+mJ,EAAcpnJ,SAAUsnJ,GAArD,kBCNC,IAAME,GAAgF,SAAAzsJ,GAOvF,IANJqwD,EAMIrwD,EANJqwD,KACA21B,EAKIhmF,EALJgmF,cACAnI,EAII79E,EAJJ69E,cACQusE,EAGJpqJ,EAHJ2yB,OACAszD,EAEIjmF,EAFJimF,WAGMymE,GADF1+K,OAAAg2B,GAAA,EAAAh2B,CAAAgyB,EAAA,gEACkBu8C,YAAiB,SAAAp9C,GAAC,OAAIopE,GAAUppE,MAChDwtJ,EAAoBD,EAAc,GAClC/qF,EAAY9Q,YAAYhU,KAAQ8kB,WAChC1jB,EAAY4S,YAAYhU,KAAQoB,WAChC2uG,IAAqB3uG,GAAYA,EAAUxiD,SAAS2B,KAASyvJ,mBAC7DC,EAAuC,YAAdnrF,GAAyC,cAAdA,EACpDsoF,EAAc1tG,YAAiBM,KAAQotG,aAPzCvuG,EAS4BC,oBAAkB,GAT9CC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GASGoe,EATHle,EAAA,GASamxG,EATbnxG,EAAA,GAAAuhB,EAUoDxhB,oBAAS,GAV7DyhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAUGktF,EAVHjtF,EAAA,GAUyBqsF,EAVzBrsF,EAAA,GAAAG,EAW8C5hB,mBAG/C,CACD+rB,YAAa,GACb7wD,UAAU,IAhBR2mD,EAAAxvF,OAAAqoD,EAAA,EAAAroD,CAAAuvF,EAAA,GAWGyvF,EAXHxvF,EAAA,GAWsByvF,EAXtBzvF,EAAA,GAAAG,EAkBwChiB,mBAAS+wG,GAlBjD9uF,EAAA5vF,OAAAqoD,EAAA,EAAAroD,CAAA2vF,EAAA,GAkBGuvF,EAlBHtvF,EAAA,GAAA0kB,GAAA1kB,EAAA,GAmByD4gB,GAAqB4rE,IAA1Ep0H,EAnBJssD,EAmBItsD,MAAOrD,EAnBX2vD,EAmBW3vD,OAAQqsD,EAnBnBsD,EAmBmBtD,gBAAiB1uB,EAnBpCgyB,EAmBoChyB,OAAQhF,EAnB5Cg3B,EAmB4Ch3B,SACxCvN,EAAeN,cAAfM,WApBJu2C,EAqBgD34C,mBAASqjC,GArBzDuV,EAAAvmH,OAAAqoD,EAAA,EAAAroD,CAAAsmH,EAAA,GAqBG41D,EArBH31D,EAAA,GAqBuB44D,EArBvB54D,EAAA,GAAA20B,EAuB4CvtE,oBAASmxG,GAvBrD3jC,EAAAn7I,OAAAqoD,EAAA,EAAAroD,CAAAk7I,EAAA,GAuBGkkC,EAvBHjkC,EAAA,GAuBqBiiC,EAvBrBjiC,EAAA,GAyBEkkC,GAAcjpJ,sBAAY,WAC9B,GAAI4xB,GAAoB,YAAXrD,EAAsB,CACjCo6H,GAAY,GACZ,IACEz8F,IACAy8F,GAAY,GACZzhG,EAASt9E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACJgoD,EADG,CAENw2H,kBAActuL,EACdguL,0BAAsBhuL,EACtB+tL,oBAAgB/tL,EAChB8tL,gBAAY9tL,EACZ6tL,cAAU7tL,KAEZ,MAAO4qH,GACPjL,EAAc,CAAElrD,OAAQ,QAAShmC,MAAOm8F,IACxCikE,GAAY,GACZhvG,EAAW/nB,MAAM+yD,QAAQ/yD,EAAO8yD,GAdlC,QAgBE2gE,GAAwB,SAErB,GAAIxjE,GAAyB,YAAXtzD,EAAsB,CAC7Co6H,GAAY,GACZ,IACEz8F,IACAy8F,GAAY,GACZzhG,EAASt9E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACJi4G,EADG,CAENumE,kBAActuL,EACdguL,0BAAsBhuL,EACtB+tL,oBAAgB/tL,EAChB8tL,gBAAY9tL,EACZ6tL,cAAU7tL,KAEZ,MAAO4qH,GACPjL,EAAc,CAAElrD,OAAQ,QAAShmC,MAAOm8F,IACxCikE,GAAY,GACZhvG,EAAW/nB,MAAM+yD,QAAQ9C,EAAY6C,GAdvC,QAgBE2gE,GAAwB,MAG3B,CAACzzH,EAAO6nD,EAAevtB,EAAQvS,IAE5ByS,GAAUpsD,sBACd,SAACisD,GACC,OAAOwtB,EAAc,CAAElrD,OAAQ,YAEjC,CAACkrD,IAGHzgC,oBAAU,WACR,IAAMsqB,EAAcilF,GAAqBA,EAAkBhnI,aAAegnI,EAAkBhnI,YACtF2nI,EAAsC,kBAAhB5lF,GAA4B3uD,aAAe2uD,IAEpE2iF,GAAwBqC,EAAc5qJ,SAAWorJ,EAAeprJ,QACrD,YAAX6wB,GAAwB+5H,EAAc5qJ,SAAWorJ,EAAeprJ,SAEjEmrJ,EAAqB,CAAEvlF,YAAa,CAAE5wD,OAAQw2I,GAAgBA,EAAax2I,QAAUD,UAAU,KAEhG,CAAC61I,EAAeA,EAAc5qJ,OAAQuoJ,IAEzC,IAAMF,GAAoB/lJ,sBAAY,WACpC+oJ,GAAuBjD,IACtB,CAACA,EAAoBiD,IAElBI,GAAexsJ,kBAAQ,kBAAM+4D,IAAmC,IAAvBowF,GAA6B,CAACpwF,EAAUowF,IAEjFsD,GAAa3sJ,aAASm1B,GAASA,EAAM7jB,iBAAmB6jB,EAAM7jB,iBAAmB,IACjFs7I,GAAkB1sJ,kBAAQ,WAC9B,OAAIi1B,GAASA,EAAM7jB,kBAAoBq7I,GACdA,GAAfE,WAGH,IACN,CAAC13H,GAASA,EAAM7jB,iBAAkBq7I,KAE/B1iH,GAAwB/pC,kBAAQ,WACpC,SAAIi1B,IAASA,EAAM7jB,mBACV6jB,EAAM7jB,iBAAiBo1H,WAAW,MAG1C,CAACvxG,IAEE23H,GAAS5sJ,kBAAQ,WACrB,OAA2B,KAApB0sJ,IACN,CAACA,KAEJ,OACE9rJ,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAO8a,KAAM,KAAMuzC,KAAMA,EAAMoB,QAASjB,IACtC7uD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,CAAuBE,aAAW,GAChClwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,MAAwBk0B,EAAgB,SAAW,WAAa,WAElErkF,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAACgsJ,GACK,CACF3D,cACAC,qBACAC,qBACAnkE,gBACArzD,OAAQy3H,EACRC,uBACApkE,eAIHokE,GAAwB2C,EAAkBn2I,WAAqD,IAAzCm2I,EAAkBtlF,YAAY5wD,QACnFnV,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OAAOlB,MAAO8rJ,IAA7B,+BAC8BlsJ,EAAA1P,EAAA2P,cAAA,cAASylC,OAAO2lH,EAAkBtlF,YAAY5wD,QAAQovF,cAAtD,KAC5BvkG,EAAA1P,EAAA2P,cAAA,WAFF,OAGMD,EAAA1P,EAAA2P,cAAA,kDAHN,2BAMwB,IAAzByoJ,IAC0C,IAAzC2C,EAAkBtlF,YAAY5wD,SACC,IAA/Bk2I,EAAkBn2I,UAAqBlV,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MAExCirJ,IAA2B9mE,GAC1BrkF,EAAA1P,EAAA2P,cAACupJ,GAAD,CAA6BC,oBAAqBA,EAAqBp1H,MAAOA,EAAOs1B,SAAUA,IAEhGshG,GAAsBjrJ,EAAA1P,EAAA2P,cAACwqJ,GAAD,CAAmBp2H,MAAOA,EAAOs1B,SAAUA,KAEpE3pD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAACksJ,GAAD,CACE9nE,cAAeA,EACfnI,cAAeA,EACf/jB,SAAUA,EACV2vF,wBAAyBA,EACzBn5F,OAAQ+8F,GACR/tF,UACI0mB,GAAiB8mE,IAA2BM,IAC5ClpJ,IAAE4R,QAAQm0I,IAAgBj0H,QAAgC93D,IAAvB83D,EAAMgH,cAC3CuwH,IACAziH,IACA6iH,GAEFt9F,MAAM,EACN19B,OAAQA,KAGXmY,IACCnpC,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,QACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,mCACbtB,EAAA1P,EAAA2P,cAAA,wBACAD,EAAA1P,EAAA2P,cAAA,iJAOL+rJ,IACChsJ,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,QACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,mCACbtB,EAAA1P,EAAA2P,cAAA,wBACAD,EAAA1P,EAAA2P,cAAA,uIAIAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,UAQC+rJ,GAAsD,SAAAlpJ,GAM7D,IALJmhF,EAKInhF,EALJmhF,cACA31B,EAIIxrD,EAJJwrD,KACAwtB,EAGIh5E,EAHJg5E,cACAlrD,EAEI9tB,EAFJ8tB,OACAszD,EACIphF,EADJohF,WAEQjwD,EAAUwoD,GAAqB7rD,GAA/BqD,MACR,OACEr0B,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGm0B,GACCr0B,EAAA1P,EAAA2P,cAACosJ,GAADhgL,OAAA8F,OAAA,CACEkyG,cAAeA,GACX,CAAE31B,OAAMwtB,gBAAe7nD,QAAOrD,SAAQszD,kBAOvC4nE,GAAyB,CACpC3rJ,gBAAiB,mBACjBR,QAAS,OACTF,aAAc,MACdijE,SAAU,OACVwpF,UAAW,SACX7nL,OAAQ,SACRi7B,UAAW,OACX4vE,aAAc,QChPVi9E,GAAyB3kF,KAC7B,SAACpqE,EAADa,KAAkBrV,QAAlBqV,EAA2B6oB,MAA3B,OAA2E1pB,EAAEiqB,MAC7E,SAACjqB,GAAD,OAAmBA,EAAEkU,UACrB,SAAClU,GAAD,OAAmBA,EAAEwzB,QACrB,SAACxzB,EAAD0F,KAAkBla,QAAlB,OAAAka,EAA2BgkB,OAC3B,SAACO,EAAY/V,EAAkBsf,EAAqB9J,GAClD,MAAO,CACLyJ,KAAMpuB,IAAE7sB,OAAO+xC,GACflL,SAAU7K,EACVsf,SACA9J,QACAub,WAAY,IAXamlC,CAc7B,SAACpqE,EAAD+2B,GAAA,IAAkBvrC,EAAlBurC,EAAkBvrC,QAAlBurC,EAA2BrN,MAA3B,oBAAAj/C,OAAyF+gB,KAWrFwjK,GAAgB,WACpB,IAAM3W,EAV0B,WAAM,IAC9BxyG,EAAU63C,KAAV73C,MAEFr6C,EAAUyrF,eAGhB,OAFqBW,aAAa,SAAA53E,GAAC,OAAI+uJ,GAAuB/uJ,EAAG,CAAExU,UAASk+B,MAAOmc,GAAS,MAM1EopH,GACZpvJ,EAAWq6I,eACXrjJ,EAAS+gF,aAAa,SAAA53E,GAAC,OAAIA,EAAEnJ,SAKnC,OAJmB+K,kBACjB,kBAAO/B,IAAaN,aAAiBM,GAAY0mC,aAAc1mC,EAASJ,KAAKC,KAAM24I,EAAWxhJ,QAAU93B,GACxG,CAAC8gC,EAAUw4I,KAKT6W,GAAyD,SAAApvF,GAAe,IAAZtgE,EAAYsgE,EAAZtgE,MAChE,OAAO+Z,aAAW/Z,GAASgD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,MAAmBL,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOA,EAAOqoE,UAAQ,KAGjEsnF,GAA2B,WACtC,IAAMC,EAAmBJ,KACjBrtE,EAAaF,KAAbE,SAER,OACEn/E,EAAA1P,EAAA2P,cAAA,SACG2sJ,GAAoBztE,GACnBn/E,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAW,OAAjB,eACctB,EAAA1P,EAAA2P,cAAC4sJ,GAAD,CAAiB7vJ,MAAO4vJ,EAAiB5oH,UAC/C,IACRhkC,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAW,OAAjB,aACYtB,EAAA1P,EAAA2P,cAAC4sJ,GAAD,CAAiB7vJ,MAAO4vJ,EAAiBvoH,WC/CzDyoH,GAAmB,WAAM,IAAAC,EACc7xE,KAAnC73C,EADqB0pH,EACrB1pH,MAAOuf,EADcmqG,EACdnqG,YAAak1B,EADCi1E,EACDj1E,WACtBk1E,EAAY5tJ,kBAAQ,WACxB,IAAM6tJ,EAAUrqG,IAAgBvxE,KAAc0qD,MACxCmxH,EAAW3qJ,IAAEulB,SAASub,GAASvoB,KAAKwb,IAAI+M,GAASA,EACvD,OAAO4pH,EACH,CACAttF,KAAM,aACNqyB,eAAgB,MAChB9qE,MAAOgmI,GAEP,CACAvtF,KAAM,cACNqyB,eAAgB,MAChB9qE,MAAOgmI,IAEV,CAAC7pH,EAAOuf,IAEX,OACE5iD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,YACG+sJ,EAAUrtF,KACX3/D,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAW0rJ,EAAUh7D,gBACzBhyF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAYklE,OAAO,IAAIvoE,MAAOgwJ,EAAU9lI,MAAOm+C,UAAQ,MAG3DrlE,EAAA1P,EAAA2P,cAAA,YACG,wBACDD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAW,OACftB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAYklE,OAAO,IAAIvoE,MAAO86E,EAAYzS,UAAQ,QA2B/C8nF,IApBgBvlF,KAC3B,SAACpqE,EAAexU,GAAhB,OAAoCwU,EAAEklD,WAAWlzB,OACjD,SAAChyB,EAAexU,GACd,IAAMy+B,EAAOjqB,EAAEiqB,KACf,OAAIllB,IAAEhF,MAAMkqB,IAAmC,IAA1BllB,IAAE7sB,OAAO+xC,GAAMtnB,QAG7BoC,IAAEgB,MAAMkkB,EAAM,SAAAppB,GAAqD,IAAlD/sB,EAAkD+sB,EAAlD/sB,WAAY6yC,EAAsC9lB,EAAtC8lB,OAAQF,EAA8B5lB,EAA9B4lB,WAAY2H,EAAkBvtB,EAAlButB,YACtD,QAAIrpB,IAAEhF,MAAMjsB,IAGHixB,IAAEgB,MAAM,CAAC4gB,EAAQF,EAAY2H,GAAc,SAAArU,GAAC,OAAKhV,IAAEhF,MAAMga,QAItE,SAACiY,EAAO2vD,GACN,MAAO,CAAE3vD,QAAO2vD,aAhBSvX,CAkB3B,SAACpqE,EAAexU,GAAhB,OAAoCA,IAE4C,SAAAka,GAAuB,IAApBkqJ,EAAoBlqJ,EAApBkqJ,cAAoBC,EAMnGzxE,KAJFC,EAFqGwxE,EAErGxxE,UACAI,EAHqGoxE,EAGrGpxE,cACAC,EAJqGmxE,EAIrGnxE,cAJqGoxE,EAAAD,EAKrGjxE,MAASxB,EAL4F0yE,EAK5F1yE,aAAcI,EAL8EsyE,EAK9EtyE,WAGnB/vF,EAAUmqF,aAAa,SAAA53E,GAAC,OAAIA,EAAEklD,WAAWz3D,UACzCsiK,EAAiBn4E,aAAa,SAAA53E,GAAC,OAAIA,EAAEslD,QAAQC,UAC7CyqG,EAAUn1E,aAAkBxC,KAAexhD,OAC3Co5H,EAAcp1E,aAAkBxC,KAAepuD,MAC/CokI,EAAa3sJ,aAASsuJ,EAAQh9I,iBAAmBg9I,EAAQh9I,iBAAmB,IAC1Erd,EAAkB6L,eAAlB7L,cACF24J,EAAkB1sJ,kBAAQ,WAC9B,OAAIouJ,EAAQh9I,kBAAoBq7I,EACPA,EAAfE,WAGH,IACN,CAACyB,EAAQh9I,iBAAkBq7I,IApByElhD,EAqB/DxzD,IAAM6C,UAAS,GArBgD6wD,EAAAx+H,OAAAqoD,EAAA,EAAAroD,CAAAs+H,EAAA,GAqBhG+iD,EArBgG7iD,EAAA,GAqBlF8iD,EArBkF9iD,EAAA,GAuBjG1hE,EAAe/pC,kBAAQ,WAC3B,OAAOouJ,GAAWA,EAAQh9I,kBAAoBg9I,EAAQh9I,iBAAiBo1H,WAAW,MAAQ6nB,EAAYttJ,OAAS,GAC9G,CAACqtJ,IAEExB,EAAS5sJ,kBAAQ,WACrB,OAA2B,KAApB0sJ,GAA0B2B,EAAYttJ,OAAS,GACrD,CAAC2rJ,IAEJ1wG,aAAmB,cAAe,CAAEnwD,UAASsiK,mBAgC7C,OANA9xG,oBAAU,WACJ+xG,GAnBgB,SAACn5H,GAA6B,IAC1CsH,EAAgBtH,EAAhBsH,MAAOC,EAASvH,EAATuH,KACXvH,EAAMljD,YAAcA,KAAUs0F,QAAUpxC,EAAMljD,YAAcA,KAAUy0F,gBACjE+nF,GAAgB,GACdt5H,EAAMljD,YAAcA,KAAUgyE,MAChCwqG,EAAgBprJ,IAAEulB,SAAS6T,IACzBtH,EAAMljD,YAAcA,KAAUw0F,YAChCgoF,EAAgBprJ,IAAEulB,SAAS8T,IACzBvH,EAAMljD,YAAcA,KAAUu0F,YAChCioF,EAAgBprJ,IAAEulB,SAAS6T,IAAUp5B,IAAEulB,SAAS8T,IAWvDgyH,CAAcJ,IAEf,CAACA,EAAQ7xH,MAAO6xH,EAAQ5xH,KAAM4xH,EAAQr8K,YAGvC6uB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MACI/M,GAAiBynF,GACjBznF,GAAiB6nF,EACnBh7E,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,sBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,qCACbtB,EAAA1P,EAAA2P,cAAC4tJ,GAAD,MACA7tJ,EAAA1P,EAAA2P,cAAC6tJ,GAAD,OAED3kH,GACCnpC,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iDACbtB,EAAA1P,EAAA2P,cAAA,wBACAD,EAAA1P,EAAA2P,cAAA,wFAGH+rJ,GACChsJ,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iDACbtB,EAAA1P,EAAA2P,cAAA,wBACAD,EAAA1P,EAAA2P,cAAA,+EACAD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcshE,UAAWrT,KAAOqT,aAGpC3hE,EAAA1P,EAAA2P,cAAA,UACEqB,UAAU,+CACVG,QAASw6E,EACTte,UAAW4vF,GAAkBH,IAAkBM,EAC/C77J,MAAO5G,EACP7rB,KAAK,UAEL4gC,EAAA1P,EAAA2P,cAAA,yBAPF,IAO2BD,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,yBAGzCu6E,GAAa77E,EAAA1P,EAAA2P,cAAC8tJ,GAAD,CAAmBr/F,KAAMmtB,EAAWK,cAAeA,EAAemI,eAAe,OC1I/F2pE,GAAwB,WAAM,IAAA14E,EACZC,aAAc,UAA7B5xB,EAD2Bt3E,OAAAqoD,EAAA,EAAAroD,CAAAipG,EAAA,MAE5B/vB,EAAW4vB,GAAc,YACzB1tD,EAAO0tD,GAAc,SCtBY,WAAM,IAAAs5B,EAChBC,eAArB1lH,EADqCylH,EACrCzlH,QAAS+K,EAD4B06G,EAC5B16G,QAD4BikJ,EAECr/D,KAAtCv3B,EAFqC42F,EAErC52F,UAAWtD,EAF0Bk6F,EAE1Bl6F,uBACbrG,EAAWk3D,eACX9vG,EAAcovJ,aAAmB,UAEvCxyG,oBAAU,WAMR,OALI1nD,IACFg8F,GAAa6e,OAAO,CAAE5lH,UAAS+K,UAAS0jD,aAAY,GACpD2J,EAAUviD,GAAa,EAAM,CAAEw0E,SAAS,KAGnC,WACL0c,GAAa8e,OAAO7lH,KAErB,CAAC+K,IA8BJqnD,aAAmB,4BAA6B,CAAEgG,YAAWtD,yBAAwBj/C,gBDtBrFqvJ,GATsC,WACtC,IAAMllK,EAAUyrF,eAChB9I,GAAuC,SAAAnuE,GAAC,OAAIg5E,GAAkBh5E,EAAGxU,KAQjEmlK,GACA/yG,aAAmB,eAAgB,CAAEmK,WAAU5B,gBAE/C,IAAMyqG,EAAgBhvJ,kBAAQ,WAC5B,OAAOmD,IAAEm+C,KAAKj5B,EAAM,SAAA6S,GAAG,OAAIA,EAAIvpD,YAAcA,IAAUijC,UACtD,CAACyT,IAV8BkjF,EAYQxzD,IAAM6C,UAAS,GAZvB6wD,EAAAx+H,OAAAqoD,EAAA,EAAAroD,CAAAs+H,EAAA,GAY3ByiD,EAZ2BviD,EAAA,GAYZizC,EAZYjzC,EAAA,GAoBlC,OANApvD,oBAAU,WACH2yG,GACHtQ,GAAiB,IAElB,CAACsQ,IAGFpuJ,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACGsjD,EACC3jD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACouJ,GAAD,CAAcvQ,iBAAkBA,KAGlC99I,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KAAoBklD,EAAW,sBAAwBvlD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,QAG3DL,EAAA1P,EAAA2P,cAACquJ,GAAD,CAAar5J,OAAQ0uD,EAAcA,EAAY1uD,OAAS,GAAIm4J,cAAeA,MAKpEmB,GAA2B,WACtC,IAAM5lK,EAAWusF,KACT94B,EAAeN,cAAfM,WAFoC4uD,EAGJ7zD,IAAM6C,UAAS,GAHXixD,EAAA5+H,OAAAqoD,EAAA,EAAAroD,CAAA2+H,EAAA,GAGrCwjD,EAHqCvjD,EAAA,GAGvBwjD,EAHuBxjD,EAAA,GAK5CxvD,oBAAU,WACJ+yG,IACF7lK,EAASu2J,mBAAoB,EAC7Bv2J,EAASw2J,oBAAqB,EAC9Bx2J,EAASy2J,sBAAuB,EAChCz2J,EAAS02J,mBAAoB,EAC7BoP,GAAgB,KAEjB,IAEH1gG,IAAS,kBAAM3R,EAAWtnD,KAAKme,UAAU3G,YACzC,IAAMoiJ,EAAatvJ,kBAAQ,kBAAMywG,aAAcp+H,IAAU0E,MAAO6pB,EAAA1P,EAAA2P,cAACkzI,GAAD,QAAsB,IACtF,OACEnzI,EAAA1P,EAAA2P,cAAC0vG,GAADtjI,OAAA8F,OAAA,CAAOwW,SAAUA,EAAUujG,cAAeyiE,MAA8BD,GACtE1uJ,EAAA1P,EAAA2P,cAAC2uJ,GAAD,QEhFC,SAASC,KAAoB,IAC1Bv6J,EAAS+kD,qBAAWy5B,MAApBx+E,KAWR,OAVY8K,kBAAQ,WAClB,QAAa7iC,IAAT+3B,EACA,MAAO,CACLzC,MAAO,SACPoC,QAAQ,GAGd,IAAMA,EAASsO,IAAExa,KAAKuM,GAAQ,GAAI,SAAAqgE,GAAC,OAAiB,IAAbA,EAAE1gE,SACzC,OAAOA,QAAkB13B,GACxB,CAAC+3B,ICZC,IAAMw6J,GAA2E,SAAAzwJ,GAA0B,IAAvB8W,EAAuB9W,EAAvB8W,OAAQm8C,EAAejzD,EAAfizD,SACjG,OACEtxD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAA2C,cAAhCilE,GAAoBpxD,GAA0B,OAAS,IAAKm8C,KCkB5Ey9F,GAAoG,SAAA1wJ,GAIpG,IAHJopB,EAGIppB,EAHJopB,KACA4yF,EAEIh8G,EAFJg8G,cACAt0C,EACI1nE,EADJ0nE,YAEMipF,EAASzsJ,IAAE4Y,KAAKsM,GAAQ,EAC9B,OACEznB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGqC,IAAEnH,IAAIqsB,EAAM,SAACxsB,EAAGinB,GACf,IAAM+sI,EAlBY,SAACh0J,EAAao/G,EAAuBt0C,GAC7D,IAAMmpF,EAAejpF,GAAoBF,GACjCn6C,EAAgB3wB,EAAhB2wB,YACR,OAAIsjI,EACK70C,GAAiBzuF,GAAe,GAElC3wB,EAAEgoC,iBAAmB,EAYCksH,CAAkBl0J,EAAGo/G,EAAet0C,GACrD/iC,GAAiB/nC,EAAE2wB,aAAe,GAAKyuF,EAC7C,OACEr6G,EAAA1P,EAAA2P,cAAA,OAAKjY,IAAKk6B,GAAV,GAAAj6C,OACMgnL,EADN,OAAAhnL,OAC0B+6D,GACvBgsH,EAAS9sI,GAAOliB,EAAA1P,EAAA2P,cAAA,gBAQhBmvJ,GAAuD,SAAAlsJ,GAAkB,I9MwFtC6iE,E8MxFuBspF,EAAensJ,EAAfmsJ,SAC7DrrI,EAAgCqrI,EAAhCrrI,YAAa2M,EAAmB0+H,EAAnB1+H,KAAMpU,EAAa8yI,EAAb9yI,SACrBpH,EAASoxD,GAAoBviD,GAC7BkrI,EAAejpF,GAAoBjiD,GACnCsrI,EAAgBtpF,GAAqBhiD,GACrCurI,G9MmFwCxpF,E8MnFmB/hD,E9MoF1DzhB,IAAEzI,SAAS,CAAC7M,KAAcmB,oBAAqB23E,I8MnFlDypF,OAAcjzL,EACZkzL,E9MiP6B,SAACJ,GACpC,GAAInqF,GAAgBmqF,GAClB,OAAIA,EAASv6J,KAAK9J,MACTqkK,EAASv6J,KAAK9J,MAEhBqkK,EAASv6J,KAAK46J,SAAWL,EAASv6J,KAAK46J,SAASC,aAAUpzL,E8MtPhDqzL,CAAsBP,GACrCQ,EAAc16I,EACd+5I,EACFM,EAAc,MACLF,GAAiBC,EAC1BC,EAAc,UACLtqF,GAAgBmqF,KACzBQ,EAAc,QACdL,EAAc,OAGhB,IACMM,GAD8C,IAA9B5qF,GAAgBmqF,IACDI,EACrC,OACEzvJ,EAAA1P,EAAA2P,cAAC8vJ,GAAD,CAA4B56I,OAAQ6O,GAClChkB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAWkuJ,GAAcK,GAC9BC,GACC9vJ,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,YACEivJ,GAAgBI,IAChBtvJ,EAAA1P,EAAA2P,cAAC+vJ,GAAD,CAAiBjqF,YAAa/hD,EAAayD,KAAMkJ,EAAM0pF,cAAe99F,KAEtE2yI,IAAiBI,GAAiBG,GAAczvJ,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KAAGuvJ,MCrElDQ,GAAwB,SAACC,EAA2BC,GAC/D,IAAMC,EAAQ,CACZzwF,KAAM,QACN0wF,aAAc16K,IAAmB26K,MACjCxnD,MAAOonD,EACPnnD,IAAKonD,GAEP,MAAO,CACLC,QACAzzI,IAAK,CACHyzI,EACA,CACEzwF,KAAM,OACN0wF,aAAc16K,IAAmB46K,KACjCznD,MAAO9qD,KAAMkyG,GAAcM,SAAS,EAAG,QACvCznD,IAAKonD,GAEP,CACExwF,KAAM,QACN0wF,aAAc16K,IAAmB86K,MACjC3nD,MAAO9qD,KAAMkyG,GAAcM,SAAS,EAAG,SACvCznD,IAAKonD,GAEP,CACExwF,KAAM,OACN0wF,aAAc16K,IAAmB+6K,KACjC5nD,MAAO9qD,KAAMkyG,GAAcM,SAAS,EAAG,QACvCznD,IAAKonD,GAEP,CACExwF,KAAM,KACN0wF,aAAc16K,IAAmB,eACjCmzH,MAAO9qD,KAAMkyG,GAAcM,SAAS,EAAG,QACvCznD,IAAKonD,MAMAQ,GAA4B/oF,KACvC,SAAAvpE,EAAwCrV,EAAiB4nK,GAAzD,MAA+G,CAC7GA,mBACAjzI,UAFFtf,EAAGsf,UAGDC,QAHFvf,EAAcuf,UAKd,SAAA1a,GAA8C,IAA3Cya,EAA2Cza,EAA3Cya,UAAWC,EAAgC1a,EAAhC0a,QAASgzI,EAAuB1tJ,EAAvB0tJ,iBACfV,EAAelyG,OAAQmG,QAAQ,OAC/BgsG,EAAanyG,OAAQqG,MAAM,OAFWwsG,EAGrBZ,GAAsBC,EAAcC,GAAnDxzI,EAHoCk0I,EAGpCl0I,IAAKyzI,EAH+BS,EAG/BT,MAEPU,EAAcF,EAAmBj0I,EAAI50B,KAAK,SAAAgpK,GAAE,OAAIA,EAAGV,eAAiBO,SAAoBr0L,EAC9F,OAAIgmC,IAAEhF,MAAMogB,IAAcpb,IAAEhF,MAAMqgB,GAC5Brb,IAAEhF,MAAMuzJ,GACH,CACLnzI,UAAWyyI,EAAMtnD,MAAQsnD,EAAMtnD,MAAMjyF,cAAWt6C,EAChDqhD,QAASwyI,EAAMrnD,IAAMqnD,EAAMrnD,IAAIlyF,cAAWt6C,GAGvC,CACLohD,UAAWmzI,EAAYhoD,MAAQgoD,EAAYhoD,MAAMjyF,cAAWt6C,EAC5DqhD,QAASkzI,EAAY/nD,IAAM+nD,EAAY/nD,IAAIlyF,cAAWt6C,GAInD,CAAEohD,YAAWC,YAzBiBgqD,CA2BvC,SAAC1qG,EAAO8rB,GAAR,OAAoBA,ICjETgoK,GAA2D,CACtE9xD,UAAW,CACT9/H,KAAM,SACNsW,OAAQ6sB,IAAEnH,IACR,CACEzlB,IAAmB26K,MACnB36K,IAAmB46K,KACnB56K,IAAmB86K,MACnB96K,IAAmB+6K,KACnB/6K,IAAmB,gBAErB,SAAAs7K,GACE,MAAO,CACLj0J,MAAOi0J,EACPnvJ,MAAOnsB,IAAmBs7K,QAOvBC,GAAsB,WAGjC,IAAMloK,EAAUyrF,eAEhB,MAAO,CACLlV,QAFc3kB,YAAiB,SAAAp9C,GAAC,OAAI0nD,KAAcmqG,SAAS7xJ,EAAGxU,KAG9D+iG,YAAailE,KAIJG,GAA2B,WAItC,OADoBD,KAAZ3xF,SACU,CAAE2/B,eAAW3iI,EAAW60L,mBAAmB,IAGlDC,GAAuB,WAClC,IAAMroK,EAAUyrF,eACVi7B,EAAa90D,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQib,cAAcntE,KACjE,OAAK0mH,EAGE,CACL1hE,SAAU0hE,EAAW1hE,UAAY,GACjCukC,UAAWm9B,EAAWn9B,WAAa,EACnClvC,MAAOqsE,EAAWrsE,OALX,CAAE2K,SAAU,GAAIukC,UAAW,EAAGlvC,MAAO,IC3CzC,IASMiuH,GAA6B,WACxC,IAAMtoK,EAAUyrF,eACRyqB,EAAciyD,KAAdjyD,UAFsCqyD,ECUzC,SAAoC7lF,EAAqCkjE,GAC9E,IAAM95I,EAAO85F,eAKPz7E,EAJSg6C,0BACb,SAAC3vD,GAAD,OAAsBA,GACtBkuE,EAEU8lF,CAAO18J,GACnB,OAAO85I,GAAcrsI,IAAEhF,MAAM4V,GAAOy7H,EAAaz7H,EDdlBs+I,CAAwB,SAAAj0J,GAAC,OAAImzJ,GAA0BnzJ,EAAGxU,EAASk2G,KAA1FvhF,EAHsC4zI,EAGtC5zI,UAAWC,EAH2B2zI,EAG3B3zI,QAEbyxB,EAAkBjwC,kBAAQ,kBAAOue,aAAqByJ,KAAOzJ,EAAU7G,cAAgB,IAAIsQ,MAAS,CAACzJ,IACrG2xB,EAAgBlwC,kBAAQ,kBAAOwe,aAAmBwJ,KAAOxJ,EAAQ9G,cAAgB,IAAIsQ,MAAS,CAACxJ,IAIrG,MAAO,CAAED,UAFSve,kBAAQ,kBAAMue,GAAW,CAAC0xB,IAEbzxB,QADfxe,kBAAQ,kBAAMwe,GAAS,CAAC0xB,2BEN3B,SAASoiH,GAATrzJ,GAA4E,IAAvCypH,EAAuCzpH,EAAvCypH,IAC5CzsG,EAAMqoE,cACNxlH,EAAY08E,YAAiB+oC,KAC7BroD,EAAesf,YAAiBgqC,KAChC+sE,EAAW/2G,YAAiB4sB,GAAyBsgD,EAAInkG,UACzDuhG,EAAiBh2D,YAAYhU,KAAQgqE,gBAL8CrhC,EAOzDC,aAC9B,CACE5lH,UAAWA,EACXo9D,aAAcA,EACd8P,QAAS08E,EAAInkG,QACbiuI,oBAAoB,GAEtBv2I,EAAIgZ,MAAMn2D,EAAWo9D,GAAct9B,KAP7BlJ,EAPiF+uF,EAOjF/uF,KAAM9J,EAP2E64F,EAO3E74F,MAAO6mK,EAPoEhuE,EAOpEguE,OAgBrB,GANAC,KAAqB,WAEnBD,KACC,CAACF,KAGC3mK,IAAU8J,EACb,OACEkL,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAAA,yBAKN,GAAIjV,EACF,OACEgV,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAAA,uBAKN,IAAM8xJ,EACJj9J,GAAQA,EAAK4iB,SAAW5iB,EAAK4iB,QAAQoZ,MAAM,IAAMh8B,EAAK4iB,QAAQoZ,MAAM,GAAGkhI,YACnEzvJ,IAAE5E,OAAO7I,EAAK4iB,QAAQoZ,MAAM,GAAGkhI,YAAa,aAAavnG,UACzD,GAEN,OAAiC,IAA7BsnG,EAAkB5xJ,OAElBH,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAAA,+BAMJD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG6xJ,EAAkB32J,IAAI,SAAC62J,EAAY//J,GAClC,OACE8N,EAAA1P,EAAA2P,cAAA,MACEG,MAAO,CACLG,gBAAiB,mBAEnBvY,IAAKkK,GAEL8N,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc0lC,OAAO,UACS,UAA3BksH,EAAWrhJ,aAAsD,aAA3BqhJ,EAAWrhJ,YAAjD,GAAA3oC,OACMgqL,EAAW1hJ,OADjB,KAAAtoC,OAC2BgqL,EAAWrhJ,aACnCqhJ,EAAWrhJ,YACXqhJ,EAAWrhJ,YACXqhJ,EAAW1hJ,QAEjBvQ,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc0lC,OAAO,WAAW+hF,EAAInkG,SACnCuhG,GAAkBllH,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc0lC,OAAO,kBACxC/lC,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc0lC,OAAO,eAClBwgC,GAAqB0rF,EAAWjuI,cAEnChkB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc0lC,OAAO,SACnB/lC,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAYrD,MAAOi1J,EAAW9uG,MAAOkiB,UAAQ,KAE/CrlE,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc0lC,OAAO,aAClBksH,EAAWjuI,cAAgB/2B,KAAcG,QAAU4S,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAYrD,MAAOi1J,EAAWC,UAAW7sF,UAAQ,KAEvGrlE,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc0lC,OAAO,oBACrB/lC,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc0lC,OAAO,iBACjBksH,EAAWjuI,cAAgB/2B,KAAcE,iBACzC8kK,EAAWjuI,cAAgB/2B,KAAcG,SACzC4S,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAS,GAAAr5B,OAAKgqL,EAAWjuI,cAAgB/2B,KAAcE,gBAAkB,UAAY,QACvF8kK,EAAWjuI,cAAgB/2B,KAAcE,gBAAkB,eAAiB,UAE/E6S,EAAA1P,EAAA2P,cAAA,YAAOgyJ,EAAWE,gBAIxBnyJ,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc0lC,OAAO,aAClBiY,KAAMi0G,EAAW1lB,WAAW71H,OAC3B6nC,aAAQ0zG,EAAW1lB,WAAa,gBAAkB,2BAGtDvsI,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAc0lC,OAAO,eC9D1B,IAAMqsH,GAMR,SAAA/zJ,GAAkF,IAA/Eg0J,EAA+Eh0J,EAA/Eg0J,QAASC,EAAsEj0J,EAAtEi0J,UAAWC,EAA2Dl0J,EAA3Dk0J,cAAeC,EAA4Cn0J,EAA5Cm0J,oBAAqBC,EAAuBp0J,EAAvBo0J,iBACtD1+J,EAAY26G,eAAZ36G,QACF/K,EAAUyrF,eAFqEi+E,EAKtDpB,KAAvB3zI,EAL6E+0I,EAK7E/0I,UAAWC,EALkE80I,EAKlE90I,QAEb+0I,EAAe/3G,YAAiB2sB,GAAmBv+E,IAEnD2lJ,GADgB/zF,YAAiB,SAAA19E,GAAK,OAAIA,EAAMg+E,QAAQ5+E,gBAClDuyL,MACNvG,EAAc1tG,YAAiBM,KAAQotG,aACvCsK,EAAsB,SAAC9qC,GAC3B,OAAO5hD,GAA0B4hD,EAAI/oJ,SAASilD,aAAe,WAAa,IAE5Ey3B,oBAAU,WAER,OADI42G,GAASI,GAAiB,GACvB,WACLA,GAAiB,KAElB,CAACJ,EAASI,IAEb,IAAMltG,EAAW3K,YAAiB6sB,IAC5BorF,EAAuBzzJ,kBAAQ,WACnC,OAAOmD,IAAE3E,OAAO+0J,EAAc,SAACz3J,GAC7B,SACEs3J,GACC70I,IAAwBC,QACXrhD,IAAdohD,QACYphD,IAAZqhD,IAIK0hC,GAAUpkD,EAAEksB,KAAMzJ,EAAWC,KAEnCxiB,IAAI,SAAA8C,GAAC,OAAA7xB,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAU6xB,EAAV,CAAasD,QAAS,CAAEsxJ,QAAS,QACtCv8E,KAAK,SAACjmF,EAAGqmD,GAAJ,OAAUqH,KAAMrH,EAAEvvB,MAAMgX,UAAY4f,KAAM1tD,EAAE82B,MAAMgX,aAEzD,CAACxgB,EAAS+0I,EAAch1I,EAAW60I,EAAqBH,IAErDv9J,EAAOsK,kBAAQ,WACnB,IAAI2zJ,EAAoBxwJ,IAAE6tF,OAAOyiE,EAAsB,SAAAt7I,GAAC,OAAIA,EAAEoM,UAQ9D,OAP4BphB,IAAE3E,OAAOm1J,EAAmB,SAAC73J,GACvD,MAAmB,WAAZm3J,EACHpsF,GAAoB/qE,EAAE8oB,aACV,WAAZquI,EACAU,EACA9sF,GAAoB/qE,EAAE8oB,gBAG3B,CAACrG,EAAWC,EAASi1I,EAAsBlkB,IAExCvsD,EAAoBxnC,YAAiB,SAAAp9C,GAAC,OAC1CA,EAAE09C,QAAQqb,eAAiB/4D,EAAE09C,QAAQqb,eAAe54F,iBAAcpB,IApDiBy2L,EAsD9C3B,KAA/BrjH,EAtD6EglH,EAsD7EhlH,SAAUukC,EAtDmEygF,EAsDnEzgF,UAAWlvC,EAtDwD2vH,EAsDxD3vH,MACvB4vH,EAAwBr4G,YAC5B,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQib,cAAcntE,IAAYwU,EAAE09C,QAAQib,cAAcntE,GAAS6kE,aAEpEpW,EAAaqE,cAAbrE,SACFytE,EAAiBh2D,YAAYhU,KAAQgqE,gBACrCnyC,EAAe3zE,kBAAQ,WAC3B,IAAM8zJ,EAAWp4I,KAAKw/F,MAAMj3E,GAAS,GAAK2K,GAK1C,OAD+BukC,EAAY2gF,EAAW,EAE7C,CACLllH,SAAU,GACVukC,UAAW,EACX50E,OAAQ,GACR60E,YAAa,IAGV,CACLxkC,SAAUzrC,IAAEgnH,YAAYv7E,GAAY,GAAKA,EACzCukC,UAAWA,GAAa,EACxB50E,OAAQ,GACR60E,YAAa,KAEd,CAACxkC,EAAUukC,EAAWlvC,IAEnBuwC,EAAYx0E,kBAAQ,WACxB,OAAI4uC,EACyC,IAApCzrC,IAAE+3G,MAAMj3E,GAAS,GAAK2K,GAAkB,EAAIzrC,IAAE+3G,MAAMj3E,GAAS,GAAK2K,GAEpE,GACN,CAAC3K,EAAO2K,IAEL0lC,EAASjxE,sBAAY,SAAC8vE,GAC1B96B,EAASlyC,IAAQqC,0BAA0B,CAAE2qE,YAAWvpF,cACvD,IAEG2qF,EAAalxE,sBAAY,SAACurC,GAC9ByJ,EAASlyC,IAAQsC,yBAAyB,CAAEmmC,WAAUhlD,cACrD,IA/FkF+wD,EAiG3BC,mBAAmB,IAjGQC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAiG9E0tE,EAjG8ExtE,EAAA,GAiGvDytE,EAjGuDztE,EAAA,GAmG/EmxE,EAAe3oH,sBACnB,SAACqlH,EAAKuD,GACJ,OAAOrrH,EAAA1P,EAAA2P,cAACyxJ,GAAD,CAA2B5pC,IAAKA,EAAI/oJ,YAE7C,CAAC0oJ,EAAuBwrC,IAGpB1nC,EAAY9oH,sBAAY,SAACyiF,GAC7B,OAAO3iF,IAAE8c,SAAS6lE,EAAIvhE,SAAWuhE,EAAI1pD,aAAe,UACnD,IAEGq4C,EAAiBpxE,sBACrB,SAAC+vE,GACCk1C,EAAyBl1C,IAE3B,CAACk1C,IAGGh7H,EAAU0S,kBACd,iBAAM,CACJ,CACE4wD,OAAQ,SACRk0B,SAAU,SAAC5zF,GACT,OAAQA,EAAEkgB,iBAA4B6O,YAExC7d,QAAS,SAAA0B,GAAA,IAAG4kH,EAAH5kH,EAAG4kH,IAAH,OACNhiD,GAAuBgiD,EAAI/oJ,SAASilD,aAAe,OAAS,IAAM,IAAM4uI,EAAoB9qC,IAC/FH,SAAS,EACTC,SAAU,eACVhpJ,GAAI,WACJkuB,MAAO,IACPy4F,KAAM,SAAAhxD,GAAiD,IAA9CuzF,EAA8CvzF,EAA9CuzF,IACP,OACE9nH,EAAA1P,EAAA2P,cAAA,OAAU6nH,EAAIC,4BACZ/nH,EAAA1P,EAAA2P,cAAC+nH,GAAD,KAAmBF,EAAI/oJ,SAASyxC,qBAKxC,CACEw/C,OAAQ,WACRpxF,GAAI,UACJ+oJ,SAAS,EACTzjC,SAAU,SAAC5zF,GACT,OAAOA,GAETi1F,KAAI,SAAA0iC,GAAA,SAAA1iC,EAAAroC,GAAA,OAAA+qE,EAAArmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA4oG,EAAA5oG,YAAAkmE,EAAA,CAAE,SAAAjoB,GAAA,IAAGwqD,EAAHxqD,EAAGwqD,IAAH,OAAkC9nH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KAAG4nH,EAAI/oJ,SAAS4kD,YAE1D,CACEqsC,OAAQ,gBACR23D,SAAS,EACTC,SAAU,eACV57G,MAAOk5G,EACPhhC,SAAU,SAAC5zF,GACT,OAAOA,EAAE+qC,cAEXz8D,GAAI,gBACJ2mH,KAAI,SAAA4iC,GAAA,SAAA5iC,EAAApoC,GAAA,OAAAgrE,EAAAvmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA8oG,EAAA9oG,YAAAkmE,EAAA,CAAE,SAAAmkB,GAA0B,IACxByb,EADwBzb,EAAvBoe,IACW/oJ,SAASs8D,aAC3B,GAAI8pF,GAASmjC,EAAa,CACxB,IAAMptG,EAAUotG,EAAYvgK,KAAK,SAAAmsG,GAAM,OAAIA,EAAM,KAAWixB,GAASjxB,EAAM,WAC3E,OAAOl0F,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KAAGg7C,EAAUA,EAAQwoE,SAAWyB,GAEzC,OAAO,QAGX,CACEn1D,OAAQ,gBACRljE,MAAO,EACP66H,SAAS,EACTzjC,SAAU,SAAC5zF,GACT,OAAOA,GAETkR,QAAS,SAAA+kH,GAAA,IAAGuB,EAAHvB,EAAGuB,IAAH,OACNhiD,GAAuBgiD,EAAI/oJ,SAASilD,aAAe,OAAS,IAAM,IAAM4uI,EAAoB9qC,IAC/FlpJ,GAAI,UACJ2mH,KAAI,SAAA8iC,GAAA,SAAA9iC,EAAAjoC,GAAA,OAAA+qE,EAAAzmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAgpG,EAAAhpG,YAAAkmE,EAAA,CAAE,SAAAohC,GAAiD,IAA9CmB,EAA8CnB,EAA9CmB,IAA8C8C,EACS9C,EAAI/oJ,SAA1D4xD,EAD6Ci6F,EAC7Cj6F,KAAM3M,EADuC4mG,EACvC5mG,YAAaxT,EAD0Bo6G,EAC1Bp6G,iBAAkBy2D,EADQ2jD,EACR3jD,aACvC7nB,EAAaF,KACbi0G,EAAmBn1G,KAAMvS,IAAIw7B,GAAcltC,OAC3Cq5H,EAAqBr0G,KAAgBhlB,OACrCs5H,GACHj0G,GAAc+zG,GAAoBC,GAAsBtrC,EAAI/oJ,SAASilD,cAAgB/2B,KAAcC,IACtG,YAAyB3wB,IAArBi0C,EACK,CAACxQ,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,8BAEHywB,EAAKv1B,IAAI,SAACvB,EAAKvL,GACpB,OACE0R,EAAA1P,EAAA2P,cAACD,EAAA1P,EAAM4P,SAAP,CAAgBlY,IAAK6R,EAAI0W,OAAS,IAAMjiB,GACtC0R,EAAA1P,EAAA2P,cAAC8vJ,GAAD,CAA4B56I,OAAQ6O,GACjCoiD,GAAevsE,EAAKysE,GAAgBzsE,EAAK2W,GAAmBs3G,EAAI/oJ,UACjEihC,EAAA1P,EAAA2P,cAAA,WACCozJ,GACCrzJ,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,gBACdtB,EAAA1P,EAAA2P,cAAA,gCADF,2CAWd,CACE+vD,OAAQ,cACR23D,SAAS,EACTC,SAAU,eACV1jC,SAAU,SAAC5zF,GACT,OAAOA,GAETkR,QAAS,SAAA4lH,GAAA,IAAGU,EAAHV,EAAGU,IAAH,OACNhiD,GAAuBgiD,EAAI/oJ,SAASilD,aAAe,OAAS,IAAM,IAAM4uI,EAAoB9qC,IAC/FlpJ,GAAI,cACJkuB,MAAO,EACPy4F,KAAI,SAAAijC,GAAA,SAAAjjC,EAAAhoC,GAAA,OAAAirE,EAAA5mG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAmpG,EAAAnpG,YAAAkmE,EAAA,CAAE,SAAA+hC,GAA0B,IAAvBQ,EAAuBR,EAAvBQ,IAAuBwrC,EACYxrC,EAAI/oJ,SAAtCilD,EADsBsvI,EACtBtvI,YACR,YAAyBznD,IAFK+2L,EACT9iJ,iBAEZxQ,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,6BAGPF,EAAA1P,EAAA2P,cAAC8vJ,GAAD,CAA4B56I,OAAQ6O,GACjCmhD,GAAiB2iD,EAAI/oJ,cAK9B,CACEixF,OAAQ,aACRk0B,SAAU,SAAC5zF,GACT,OAAOA,EAAEq3E,iBAAmBr3E,EAAEq3E,iBAAmB,GAEnDnmE,QAAS,SAAAqmH,GAAA,IAAGC,EAAHD,EAAGC,IAAH,OACNhiD,GAAuBgiD,EAAI/oJ,SAASilD,aAAe,OAAS,IAAM,IAAM4uI,EAAoB9qC,IAC/FH,SAAS,EACTC,SAAU,eACVhpJ,GAAI,aACJ2mH,KAAI,SAAAmjC,GAAA,SAAAnjC,EAAAyhB,GAAA,OAAA0hB,EAAA9mG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAqpG,EAAArpG,YAAAkmE,EAAA,CAAE,SAAA2iC,GAA0B,IAAvBJ,EAAuBI,EAAvBJ,IACC9jG,EAAgB8jG,EAAI/oJ,SAApBilD,YAER,OACEhkB,EAAA1P,EAAA2P,cAAC8vJ,GAAD,CAA4B56I,OAAQ2yG,EAAI/oJ,SAASilD,aAC9CA,GAAe,CAAC/2B,KAAcG,QAAQ0M,SAASkqB,IAAgB8jG,EAAI/oJ,SAAS4oG,kBAC3E3nE,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAYrD,MAAO8d,KAAKwb,IAAIwxF,EAAI/oJ,SAAS4oG,kBAAmBtC,UAAQ,QAM9E,CACErV,OAAQ,kBACR23D,SAAS,EACT/oJ,GAAI,gBACJ2mH,KAAI,SAAAqjC,GAAA,SAAArjC,EAAA0hB,GAAA,OAAA2hB,EAAAhnG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAupG,EAAAvpG,YAAAkmE,EAAA,CAAE,SAAA6iC,GAA0B,IACxB/zF,EADwB+zF,EAAvBN,IACW/oJ,SACd0jE,OAAiClmE,EAErC,GAAI6lH,GAAqB/tD,EAAO,CAC9B,IAII0vD,EAAgB7B,GAJO7tD,EAAM1D,KAAKv1B,IAAI,SAAAH,GAAC,MAAK,CAC9CirB,UAAWjrB,EAAElqB,UACb2gC,SAAUzW,EAAEgoC,gBAAkBhoC,EAAEgoC,gBAAkB,KAEam/C,GACjE3/C,EAAashD,GAAgC,EAK/C,YAHmBxnH,IAAfkmE,GACFjtB,QAAQuH,KAAK,sFAER/c,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAYrD,MAAOylC,EAAY4iC,UAAQ,OAGlD,CACErV,OAAQ,SACRk0B,SAAU,SAAC5zF,GAAD,OAAci2E,GAAoBj2E,EAAE0zB,cAC9CxiB,QAAS,SAAA8mH,GAAA,IAAGR,EAAHQ,EAAGR,IAAH,OACNhiD,GAAuBgiD,EAAI/oJ,SAASilD,aAAe,OAAS,IAAM,IAAM4uI,EAAoB9qC,IAC/FH,SAAS,EACTC,SAAU,QACVhpJ,GAAI,SACJ2mH,KAAI,SAAAujC,GAAA,SAAAvjC,EAAA2hB,GAAA,OAAA4hB,EAAAlnG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAypG,EAAAzpG,YAAAkmE,EAAA,CAAE,SAAAkjC,GAAkC,IAA/BX,EAA+BW,EAA/BX,IACP,OAAO9nH,EAAA1P,EAAA2P,cAACszJ,GAAD,CAAqBlE,SAAUvnC,EAAI/oJ,cAG9C,CACEixF,OAAQ,aACRljE,MAAO,IACPo3F,SAAU,SAAC5zF,GACT,QAAe/zB,IAAX+zB,EAAE82B,KACN,OAAOosI,aAAyB,IAAIpsI,KAAK92B,EAAE82B,OAAO1Q,OAAO,2BAE3DlV,QAAS,SAAAmnH,GAAA,IAAGb,EAAHa,EAAGb,IAAH,OACNhiD,GAAuBgiD,EAAI/oJ,SAASilD,aAAe,OAAS,IAAM,IAAM4uI,EAAoB9qC,IAC/FH,SAAS,EACT8rC,eAAe,EACfC,cAAc,EACd90L,GAAI,aACJ2mH,KAAI,SAAAyjC,GAAA,SAAAzjC,EAAA4hB,GAAA,OAAA6hB,EAAApnG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA2pG,EAAA3pG,YAAAkmE,EAAA,CAAE,SAAAsjC,GAA0B,IAAvBf,EAAuBe,EAAvBf,IACD6rC,EAAY7rC,EAAI/oJ,SAASqoD,KAC/B,OAAIusI,EAEA3zJ,EAAA1P,EAAA2P,cAAC8vJ,GAAD,CAA4B56I,OAAQ2yG,EAAI/oJ,SAASilD,aAC9Cg6B,KAAM21G,GAAWj9I,OAAO6nC,GAAQo1G,GAAa,gBAAkB,2BAI/D,KAET/rC,SAAU,SAEZ,CACE53D,OAAQ,UACRljE,MAAO,IACPo3F,SAAU,SAAC5zF,GAAD,OAAcA,GACxB1xB,GAAI,UACJ2mH,KAAI,SAAA2jC,GAAA,SAAA3jC,EAAA6hB,GAAA,OAAA8hB,EAAAtnG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA6pG,EAAA7pG,YAAAkmE,EAAA,CAAE,SAAAwjC,GAA0B,IAmB1B6qC,EAnBG9rC,EAAuBiB,EAAvBjB,IAAuB+rC,EACkB/rC,EAAI/oJ,SAA5CyxC,EADsBqjJ,EACtBrjJ,iBAAkBwT,EADI6vI,EACJ7vI,YAAa2M,EADTkjI,EACSljI,KACjCmjI,EAAYtjJ,GAAoB,GAChCklI,EAAY9jI,aAAckiJ,EAAW/iL,IAAU6iC,OAAQ/B,YAAsB9gC,IAAU6iC,QAAS,CACpGr1C,KAAMu1L,EACN/hJ,iBAAkB+hJ,EAClBhiJ,WAAYgiJ,IAERx5H,EAAM/3B,IAAEnH,IAAIu1B,EAAM,SAAA11B,GAAC,OAAA5uB,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAU4uB,KAC7BwhH,EAAmBrG,GAAmB/pI,OAAAy0B,EAAA,EAAAz0B,CAAA,GACrCy7I,EAAI/oJ,SADgC,CACtB4xD,KAAM2J,IACzBo7G,EACA,CAAE3hJ,gBACFx3B,OACAA,GACA,GAEIw3L,EAAsBjuF,GAAuB9hD,IAAgBiiD,GAAoBjiD,GACjF8vC,EAASvxD,IAAEzI,SAASooC,IAAsB5xB,KAAM0T,GAIpDuhC,GACAuiE,GACAA,EAAI/oJ,UACJ+oJ,EAAI/oJ,SAAS4xD,MACbm3F,EAAI/oJ,SAAS4xD,KAAKxwB,OAAS,GAC3B2nH,EAAI/oJ,SAAS4xD,KAAK,GAAGpgB,SAErBqjJ,EAAc9rC,EAAI/oJ,SAAS4xD,KAAK,GAAGpgB,OAAOyU,MAAM,KAAK,IAEvD,IAAMgvI,EAAkBJ,GAAeA,EAAYh9D,UAAU,EAAG,GAC1Dq9D,EAA8BD,EAChCA,EAAgBp9D,UAAU,EAAG,GAC7B,IACAo9D,EAAgBp9D,UAAU,GAC1B,IACAo9D,EAAgBp9D,UAAU,EAAG,GAC7B,GACEhhC,EACJ5X,KAAMi2G,GAA6Bz7H,UAAS,IAAIpR,MAAO8sI,iBACpB,IAAnCpsC,EAAI/oJ,SAAS4xD,KAAK,GAAG5/C,UACvB,OACEivB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG8jB,GACChkB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGgiC,IAAsBC,YAAYroC,SAASkqB,IAC1ChkB,EAAA1P,EAAA2P,cAACk0J,GAAD,CAAmB1yJ,QAAS,kBAAM8wJ,EAAczqC,EAAI/oJ,aAErDmjE,IAAsBE,YAAYtoC,SAASkqB,IAC1ChkB,EAAA1P,EAAA2P,cAACm0J,GAAD,CAAoB3yJ,QAAS,kBAAM6wJ,EAAUxqC,EAAI/oJ,cAErC,WAAZszL,GAAwB0B,GAAuBjgG,KAAY8B,GAC3D51D,EAAA1P,EAAA2P,cAAC83G,GAAD,CAAmBt2G,QAAS,kBAAMg7G,KAAoB5qH,MAAM,kBAAkBguE,KAAK,oBASnG,CAAC9rE,EAAS0zH,EAAuBvC,KAI9BA,GAAkB3iH,IAAExa,KAAK2E,EAAS,CAAE9tB,GAAI,mBAC3C8tB,EAAQwrG,OAAO,EAAG,GAGpB,IAAMszB,EAAeC,aAAqB/+H,GAE1C,OAAOumK,EACLjzJ,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,MACEvL,EAAKqL,OACPH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEozE,SAAS,SACT/mF,QAASA,EACT0+H,aAAcA,EACdS,WAAYn/H,EAAQyT,OACpBqrH,aAAcA,EAEd33C,eAAgBA,EAChB/+E,KAAMA,EACNi+E,aAAcA,EACdxb,OAAQhS,EACRomE,UAAQ,EACR0oC,SAAUzB,EACVrnC,UAAWA,EACXihB,eAAa,EACbE,kBAAgB,EAChB94D,UAAWA,EACXF,OAAQA,EACRC,WAAYA,EACZi4C,eAAe,IAGjB5rH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,2GCvcSi0J,GAAoD,SAAAj2J,GAA+C,IAA5Csf,EAA4Ctf,EAA5Csf,UAAWC,EAAiCvf,EAAjCuf,QAAS22I,EAAwBl2J,EAAxBk2J,kBAChFrwG,EAAiB9kD,kBAAQ,kBAAMue,GAAaqgC,KAAMrgC,IAAY,CAACA,IAC/DymC,EAAehlD,kBAAQ,kBAAMwe,GAAWogC,KAAMpgC,IAAU,CAACA,IAEvD42I,EJZ2B,WACnC,IAAMtE,EAAelyG,OAAQmG,QAAQ,OAC/BgsG,EAAanyG,OAAQqG,MAAM,OAFQowG,EAGlBr1J,kBAAQ,WAC7B,OAAO6wJ,GAAsBC,EAAcC,IAC1C,CAACD,EAAcC,IAFVxzI,EAHiC83I,EAGjC93I,IAHiC83I,EAG5BrE,MAGb,MAAO,CAAEoE,QAAS73I,GIME+3I,GAAZF,QAKFjY,EAAS,CACboY,4BAA6B,CAC3BnzJ,QAAS,OACTo8D,eAAgB,SAChB79D,QAAS,MACT60J,SAAU,QAEZC,6BAA8B,CAC5B/jJ,SAAU,WACV+9D,OAAQ,OACRy9E,UAAW,SACXwI,WAAY,OACZta,OAAM,2BACNz5E,MAAO,iBACPhhE,QAAS,WACTL,UAAW,EACXD,YAAa,EACbs1J,KAAM,UACNj0F,WAAY,IACZk0F,WAAY,SACZ5lF,SAAU,UACV6lF,UAAW,aACXh1E,OAAQ,UAERi1E,UAAW,CACTC,QAAS,IAGbC,uCAAwC,CACtCr0F,MAAO,QACP+zF,WAAY,mBAIV7zE,EAAgBx+E,sBACpB,SAAAS,GAAsG,IAAnGya,EAAmGza,EAAnGya,UAAWC,EAAwF1a,EAAxF0a,QACZ22I,EAAkB,CAAE52I,YAAWC,aAEjC,CAAC22I,IAGH,OACEv0J,EAAA1P,EAAA2P,cAAA,MAASw0I,eAAI8H,EAAOoY,6BACjBH,EAAQp5J,IAAI,SAAAm5B,GAA0B,IAAvBorC,EAAuBprC,EAAvBorC,KAAMmpC,EAAiBv0E,EAAjBu0E,MAAOC,EAAUx0E,EAAVw0E,IACrBssD,GAAqBvsD,IAAU5kD,IAAmB6kD,IAAQ3kD,EAC1DkxG,EACJl3G,GAAW2qD,EAAK3kD,SAA0B7nF,IAARwsI,QAAsCxsI,IAAjB6nF,EACnD4M,EAAaqkG,GAAsBj3G,GAAW0qD,EAAO5kD,IAAmBoxG,EAC9E,OACEt1J,EAAA1P,EAAA2P,cAAA,SAAA5zB,OAAA8F,OAAA,CACE6V,IAAK23E,GACD80E,eAAI8H,EAAOsY,6BAA8B7jG,GAAcurF,EAAO6Y,wCAFpE,CAGEh2L,KAAK,SACLqiC,QAAS,kBAAMw/E,EAAc,CAAEtjE,UAAWmrF,EAAOlrF,QAASmrF,OAEzDppC,OCvDA41F,GAAqD,SAAAl3J,GAA6F,IAA1Fm3J,EAA0Fn3J,EAA1Fm3J,iBAAkBC,EAAwEp3J,EAAxEo3J,eAAgB1N,EAAwD1pJ,EAAxD0pJ,aAAc2N,EAA0Cr3J,EAA1Cq3J,qBAAsBC,EAAoBt3J,EAApBs3J,MAAOhnG,EAAatwD,EAAbswD,OAAa5U,EACrHC,mBAAS,aAD4GC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GACtJ67G,EADsJ37G,EAAA,GACxI47G,EADwI57G,EAAA,GAGvJt8B,EAAYve,kBAAQ,kBAAOo2J,EAAmBM,KAAON,GAAoB,MAAO,CAACA,IACjF53I,EAAUxe,kBAAQ,kBAAOq2J,EAAiBK,KAAOL,GAAkB,MAAO,CAACA,IAE3ElB,EAAoB9xJ,sBAAY,SAAAS,GAAgF,IAA7Eya,EAA6Eza,EAA7Eya,UAAWC,EAAkE1a,EAAlE0a,QAClD+wC,EAAOhxC,EAAYA,EAAU9G,SAAW8G,EAAWC,EAAUA,EAAQ/G,SAAW+G,IAEhF,CAAC+wC,IAT0J6M,EAYnHxhB,oBAAS,GAZ0GyhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAYtJu6F,EAZsJt6F,EAAA,GAYvIu6F,EAZuIv6F,EAAA,GAa7JhgB,oBAAU,WACR,OAAO,kBAAMu6G,GAAiB,KAC7B,CAACD,IAEJ,IAAME,EAAiBxzJ,sBACrB,SAAC20F,GACCm9D,EAAkBn9D,GAClB4+D,GAAiB,IAEnB,CAACzB,EAAmBwB,IAGhBG,EAAgBzzJ,sBACpB,SAACif,GACC,IAAMonF,EAAQpnF,EAAK/D,UACborF,EAAMrnF,EAAK9D,QACXD,EAAYmrF,EAAQ9qD,KAAM8qD,EAAMjyF,eAAYt6C,EAC5CqhD,EAAUmrF,EAAM/qD,KAAM+qD,EAAIlyF,eAAYt6C,EAC5Cg4L,EAAkB,CAAE52I,YAAWC,aAEjC,CAAC22I,IAGG4B,EAAgB1zJ,sBAAY,SAACmzJ,GACjCC,EAAiBD,GAAe,cAC/B,IAEGQ,EAAe3zJ,sBAAY,WAC/B,OAAOzC,EAAA1P,EAAA2P,cAACo2J,GAAD,CAAkB14I,UAAW63I,EAAkB53I,QAAS63I,EAAgBlB,kBAAmB0B,KACjG,CAACT,EAAkBC,EAAgBlB,IAEtC,OAAOwB,EACL/1J,EAAA1P,EAAA2P,cAACq2J,GAAD,CACEp2G,aAAcs1G,EACde,WAAYd,EACZ1N,aAAcA,EACd2N,qBAAsBA,EACtBC,MAAOA,EACPl0J,QAAS,kBAAMu0J,GAAiB,MAElCh2J,EAAA1P,EAAA2P,cAACu2J,GAAA,EAAD,CACEvyF,UAAU,QACVwyF,QAAS,QACTC,WAAW,EACXC,aAAc,CACZC,UAAW,CACTC,gBAAiB,CACf9zG,SAAS,EACT+zG,kBAAmB,YAIzB1wE,QACEpmF,EAAA1P,EAAA2P,cAACikE,GAAA,EAAD,CAAS9jE,MAAO,CACdwa,SAAU,IACVm8I,UAAW,KACVn4L,GAAI,gBACLohC,EAAA1P,EAAA2P,cAAC+2J,GAAA,yBAAD,CACEr5I,UAAWA,EACXC,QAASA,EACTs4I,cAAeA,EACfN,aAAcA,EACdO,cAAeA,EACfc,mBAAmB,EACnBC,eAAgB,EAChBC,mBAAoBf,EACpBgB,4BAA0B,MAKhCp3J,EAAA1P,EAAA2P,cAACq2J,GAAD,CACEp2G,aAAcs1G,EACde,WAAYd,EACZ1N,aAAcA,EACd2N,qBAAsBA,EACtBC,MAAOA,EACPl0J,QAAS,SAYX41J,GAAiE,SAAA9iI,GAAsF,IAAnF9yB,EAAmF8yB,EAAnF9yB,QAASy+C,EAA0E3rB,EAA1E2rB,aAAcq2G,EAA4DhiI,EAA5DgiI,WAAYxO,EAAgDxzH,EAAhDwzH,aAAc2N,EAAkCnhI,EAAlCmhI,qBAAsBC,EAAYphI,EAAZohI,MACzIz2D,EAAY9/F,kBAAQ,kBvPyGrB,SACL8gD,EACAq2G,GAEA,IAAKr2G,IAAiBq2G,GAAct2G,GAAqBC,GACvD,MAAO,MAET,IAAMkwG,EAAQpyG,OACd,OAAII,GAAW8B,EAAckwG,IAAUhyG,GAAWm4G,EAAYnG,GACrD,QAELhyG,GAAW8B,EAAckwG,EAAMI,SAAS,EAAG,UAAYpyG,GAAWm4G,EAAYnG,GACzE,OAELhyG,GAAW8B,EAAckwG,EAAMI,SAAS,EAAG,WAAapyG,GAAWm4G,EAAYnG,GAC1E,QAELhyG,GAAW8B,EAAckwG,EAAMI,SAAS,EAAG,UAAYpyG,GAAWm4G,EAAYnG,GACzE,OAGT,GAAAnoL,OAAUi4E,EAAaxpC,OADR,UACf,OAAAzuC,OAA2CsuL,EAAW7/I,OADvC,WuP7HiB4gJ,CAAqBp3G,GAAgBlC,KAAMkC,GAAeq2G,GAAcv4G,KAAMu4G,KAAc,CAACr2G,EAAcq2G,IAC3I,OACEv2J,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQoB,QAASA,EAASH,UAAWymJ,GAAgB,qBACnD/nJ,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAWo0J,GACdx2D,EADH,IACey2D,KC9HR4B,GAAkD,SAAAl5J,GAAwB,IAArBizD,EAAqBjzD,EAArBizD,SAAUlyF,EAAWi/B,EAAXj/B,KAAWszL,EACtDpB,KAAvB3zI,EAD6E+0I,EAC7E/0I,UAAWC,EADkE80I,EAClE90I,QACX6/B,E1POH,WACL,IAAMhG,EAAWk3D,eAEjB,OAAOvvG,kBACL,iBAAO,CACLq+C,aAAc,SAAC9/B,EAA6BC,GAC1C,OAAO65B,EAAS,CAAEr4E,KAAMo+E,GAAoBC,aAAc/lC,QAAS,CAAEiG,UAAWA,EAAWC,QAASA,QAGxG,CAAC65B,I0PhBsB+/G,GAAjB/5G,aAEJg6G,EAAa,oCASjB,OANIr4L,GACE,CAAC,uBAAwB,0BAA0B06B,SAAS16B,KAC9Dq4L,EAAaA,EAAWzyI,MAAM,KAAK,GAAG98B,QAKxC8X,EAAA1P,EAAA2P,cAAA,OAAKG,MAAO,CAAEs3J,cAAe,QAAUp2J,UAAWm2J,GAChDz3J,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,OACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,YACbtB,EAAA1P,EAAA2P,cAAC03J,GAAD,CAAWnC,iBAAkB73I,EAAW83I,eAAgB73I,EAAS+wC,OAAQlR,EAAck4G,MAAO31J,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,yBAE5GgwD,KCfIsmG,GAA6B,WACxC,IAAM5uK,EAAUyrF,eACVojF,EAAiBj9G,YAAiB2sB,GAAmBv+E,IAFb0pK,EAGfpB,KAAvB3zI,EAHsC+0I,EAGtC/0I,UAAWC,EAH2B80I,EAG3B90I,QAkBbk6I,EAhBsBr1J,sBAC1B,SAAC86B,GAAD,OAA6B,SAACpoB,GAC5B,OAAOooB,EAAO3/B,OAAO,SAACy2B,GACpB,GAAIkyC,GAAoBlyC,EAAMrQ,eAAiB7O,EAAQ,CACrD,GAAKwI,IAAwBC,QAAkCrhD,IAAdohD,QAAuCphD,IAAZqhD,EAC1E,OAAO,EAET,IAAMm6I,EAAU1jI,EAAMjN,KACtB,QAAO2wI,GAAUC,aAAmBD,EAASp6I,EAAWC,GAE1D,OAAO,IACNzd,SAEL,CAACwd,EAAWC,GAGSq6I,CAAoBJ,GACrCK,EAAcJ,EAAe,UAC7BK,EAAiBL,EAAe,aAChCM,EAAYx9G,YAAiB,SAAAp9C,GAAC,OAAImpE,GAAmBnpE,KAC3D,OACEwC,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,8BACbtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,mBAAyB,IAAdm4J,EAAkB,EAAIA,GACjCp4J,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,OAAhB,WADF,IACwD,IAAhB42J,EAAoB,EAAIA,GAEhEl4J,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAhB,cADF,IAC+D,IAAnB62J,EAAuB,EAAIA,MCjClEE,GAAiJ,SAAAh6J,GAAwD,IAArDg0J,EAAqDh0J,EAArDg0J,QAASG,EAA4Cn0J,EAA5Cm0J,oBAAqBC,EAAuBp0J,EAAvBo0J,iBAEvLh7G,EAAW4B,qBAAW0xC,MACpB3uC,EAAeN,cAAfM,WACFtzD,EAAc8xD,YAAiBowC,KAJ+K9B,EAK1LC,eAAlBngG,EAL4MkgG,EAK5MlgG,QAAS5pB,EALmM8pH,EAKnM9pH,KACXupB,EAAWiyD,YAAiB,SAAAp9C,GAAC,OAAI0nD,KAAcp0C,SAAStT,EAAGxU,KAejE,OACEgX,EAAA1P,EAAA2P,cAACq4J,GAAD,CAAoBl5L,KAAK,0BACV,WAAZizL,GAAwBryJ,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAoBiB,UAAU,WAAWqC,QAAS6uJ,EAAqBlvJ,SAAU,kBAhBxF,WACpB,IAAM2nF,EAAmB,CACvBniG,YAAaA,GAAe,GAC5BE,UACAsiE,UAAWlsF,EACX8lF,cAAc74E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACTsc,EADQ,CAEXyoK,mBAAoBoB,KAGxB/6G,EAASyzC,KAAYhlF,YAAY+kF,EAAiB/lC,gBAClD9I,EAAWzzD,SAASJ,MAAM4iG,gBAAgBF,GAC1CwnE,GAAkBD,GAIgG+F,KAAvF,uBAGzBv4J,EAAA1P,EAAA2P,cAAA,OAAKG,MAAO,CAAEZ,WAAY,SACxBQ,EAAA1P,EAAA2P,cAACu4J,GAAD,SC3BFC,GAID,SAAAp6J,GAAwD,IAArDg0J,EAAqDh0J,EAArDg0J,QAASG,EAA4Cn0J,EAA5Cm0J,oBAAqBC,EAAuBp0J,EAAvBo0J,iBAAuB14G,EACjBC,oBAAS,GADQC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GACpDsqC,EADoDpqC,EAAA,GACrCy+G,EADqCz+G,EAAA,GAAAuhB,EAEvBxhB,qBAFuByhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAEpD8oB,EAFoD7oB,EAAA,GAExCk9F,EAFwCl9F,EAAA,GAGnDtoE,EAAkB6L,eAAlB7L,cAHmDk6J,EASvDzxE,KAJFC,EALyDwxE,EAKzDxxE,UACAI,EANyDoxE,EAMzDpxE,cACAC,EAPyDmxE,EAOzDnxE,cAPyDoxE,EAAAD,EAQzDjxE,MAASxB,EARgD0yE,EAQhD1yE,aAAcI,EARkCsyE,EAQlCtyE,WARkC2F,EAU9B9D,GAAqB,WAA1ClzB,EAVmDg3B,EAUnDh3B,SAAU34B,EAVyC2vD,EAUzC3vD,OACZ4nI,EAAiBn2J,sBACrB,SAAC4xB,GACCskI,EAActkI,GACds1B,EAASt1B,GACTqkI,GAAiB,GACjBz8E,KAEF,CAACtyB,EAAUsyB,IAEPs2E,EAAgB9vJ,sBACpB,SAAC4xB,GACCs1B,EAASt1B,GACTqkI,GAAiB,GACjBz8E,KAEF,CAACtyB,EAAUsyB,IAGb,OACEj8E,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MACI/M,GAAiBynF,GACjBznF,GAAiB6nF,EAClBa,GACC77E,EAAA1P,EAAA2P,cAAC8tJ,GAAD,CACEr/F,KAAMmtB,EACNwI,cAAeA,EACfnI,cAAeA,EACflrD,OAAQA,EACRszD,WAAYA,IAGhBtkF,EAAA1P,EAAA2P,cAAC44J,GAAD,CACExG,QAASA,EACTI,iBAAkBA,EAClBD,oBAAqBA,IAEvBxyJ,EAAA1P,EAAA2P,cAAC64J,GAAD,CACEzG,QAASA,EACTI,iBAAkBA,EAClBD,oBAAqBA,EACrBD,cAAeA,EACfD,UAAWsG,MAMNG,GAIR,SAAA31J,GACH,OAAOpD,EAAA1P,EAAA2P,cAAC+4J,GAAmB51J,ICtDhB61J,GAAwB,WAAM,IACjCxhH,EAAaqE,cAAbrE,SACFzuD,EAAUyrF,eAFyBi+E,EAIVpB,KAAvB3zI,EAJiC+0I,EAIjC/0I,UAAWC,EAJsB80I,EAItB90I,QACbthD,EAAgBs+E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQ5+E,gBALb02L,EAMF3B,KAA/BrjH,EANiCglH,EAMjChlH,SAAUukC,EANuBygF,EAMvBzgF,UAAWlvC,EANY2vH,EAMZ3vH,MACvB4vH,EAAwBr4G,YAC5B,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQib,cAAcntE,IAAYwU,EAAE09C,QAAQib,cAAcntE,GAAS6kE,aAGtEklB,EAAe3zE,kBAAQ,WAC3B,OAAI4uC,EAAWukC,EAAYlvC,GACzBoU,EAASlyC,IAAQqC,0BAA0B,CAAE2qE,UAAW,EAAGvpF,aACpD,CACLglD,SAAUA,EACVukC,UAAW,EACX50E,OAAQ,GACR60E,YAAa,KAGR,CACLxkC,SAAUzrC,IAAEgnH,YAAYv7E,GAAY,GAAKA,EACzCukC,UAAWA,GAAa,EACxB50E,OAAQ,GACR60E,YAAa,KAEhB,CAACxkC,EAAUukC,EAAWlvC,IAEnBuwC,EAAYx0E,kBAAQ,WACxB,OAAI4uC,EACyC,IAApCzrC,IAAE+3G,MAAMj3E,GAAS,GAAK2K,GAAkB,EAAIzrC,IAAE+3G,MAAMj3E,GAAS,GAAK2K,GAEpE,GACN,CAAC3K,EAAO2K,IAEL0lC,EAASjxE,sBAAY,SAAC8vE,GAC1B96B,EAASlyC,IAAQqC,0BAA0B,CAAE2qE,YAAWvpF,cACvD,IAEG2qF,EAAalxE,sBAAY,SAACurC,GAC9ByJ,EAASlyC,IAAQsC,yBAAyB,CAAEmmC,WAAUhlD,cACrD,IAEG0D,EAAU0S,kBACd,iBAAM,CACJ,CACE4wD,OAAQ,UACR23D,SAAS,EACTzjC,SAAU,SAAC5zF,GAAD,OAAqBA,EAAE5B,aACjC9vB,GAAI,UACJ2mH,KAAM,SAAAlnF,GAAiC,IAA9BypH,EAA8BzpH,EAA9BypH,IAA8B8C,EACP9C,EAAI/oJ,SAA1BksB,EAD6B2/H,EAC7B3/H,QAASq8E,EADoBsjD,EACpBtjD,SACX6rF,EAAmBn1G,KAAMvS,IAAI67B,GAAUvtC,OACvCq5H,EAAqBr0G,KAAgBhlB,OAErCs5H,GADan0G,MAEFi0G,GAAoBC,GAA8C,cAAxBtrC,EAAI/oJ,SAASo2C,OAClEw8I,EAAW53J,aAAS9O,GAAW,CAACA,GAAWA,EACjD,OACE+U,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG4nH,EAAI/oJ,SAASo2C,OAAQ,IACrBw8I,EAASv2J,IAAI,SAAC89J,EAAGhnK,GAAJ,OACZ8N,EAAA1P,EAAA2P,cAACD,EAAA1P,EAAM4P,SAAP,CAAgBlY,IAAG,GAAA/f,OAAK6/I,EAAIlpJ,GAAT,KAAAqJ,OAAeiqB,IAChC8N,EAAA1P,EAAA2P,cAAA,WACCi5J,EACA7F,GACCrzJ,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,gBAAhB,+FAWhB,CACE0uD,OAAQ,UACRk0B,SAAU,kBAAM5nH,GAChBsC,GAAI,gBACJ+oJ,SAAS,GAEX,CACE33D,OAAQ,WACRk0B,SAAU,SAAC5zF,GAAD,OAAqBA,EAAE1xB,IACjC+oJ,SAAS,EACTC,SAAU,eACVhpJ,GAAI,UACJ2mH,KAAI,SAAA0iC,GAAA,SAAA1iC,EAAAroC,GAAA,OAAA+qE,EAAArmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA4oG,EAAA5oG,YAAAkmE,EAAA,CAAE,SAAAriF,GAAiC,IAA9B4kH,EAA8B5kH,EAA9B4kH,IACP,OAA4B,IAArBA,EAAI/oJ,SAASH,GAAY,GAAKkpJ,EAAI/oJ,SAASH,MAGtD,CACEoxF,OAAQ,cACRk0B,SAAU,SAAC5zF,GAAD,OAAqB0tD,KAAM1tD,EAAEg3E,UAAU5wD,OAAO,2BACxD93C,GAAI,cACJ+oJ,SAAS,EACTC,SAAU,QACVriC,KAAI,SAAA4iC,GAAA,SAAA5iC,EAAApoC,GAAA,OAAAgrE,EAAAvmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA8oG,EAAA9oG,YAAAkmE,EAAA,CAAE,SAAAhxD,GAAiC,IAA9BuzF,EAA8BvzF,EAA9BuzF,IAIP,OAHmB9pE,KAAM8pE,EAAI/oJ,SAASuoG,UAAU5wD,OAC9C6nC,GAAQupE,EAAI/oJ,SAASuoG,UAAY,gBAAkB,+BAM3D,IAEIqqF,EAAW/2G,YzNjBa,SAAC5xD,GAAD,OAC9BmkE,0BACE,SAACjwF,GAAD,OAAuBA,EAAMg+E,QAAQib,cAAcntE,IAAY9rB,EAAMg+E,QAAQib,cAAcntE,GAASu0C,QAAW,IAC/G,SAACrgE,GAAD,OAAsBA,EAAMi3F,cAAcv2D,OAAO6oE,KACjD,SAACvpG,GAAD,OAAsBA,EAAMg+E,QAAQh9E,WACpC,SAAChB,GAAD,OAAsBA,EAAMg+E,QAAQ2rB,cACpCQ,IyNWgC8xF,CAAiBnwK,IAC7C6pK,EAAuBzzJ,kBAAQ,WACnC,OAAOmD,IAAE3E,OAAO+zJ,EAAU,SAACz2J,GACzB,OAAKyiB,IAAwBC,QAAkCrhD,IAAdohD,QAAuCphD,IAAZqhD,GAGrE0hC,GAAUpkD,EAAEosE,SAAU3pD,EAAWC,KAEvCxiB,IAAI,SAAA8C,GAAC,OAAA7xB,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAU6xB,EAAV,CAAasD,QAAS,CAAEsxJ,QAAS,QACtCv8E,KAAK,SAACjmF,EAAGqmD,GAAJ,OAAUqH,KAAMrH,EAAE2wB,UAAUlpC,UAAY4f,KAAM1tD,EAAEg3E,UAAUlpC,aACjE,CAACxgB,EAAS+zI,EAAUh0I,IACjB45C,EAASn4D,kBAAQ,uBAA+B7iC,IAAzBs2L,GAAoC,CAACA,IAC5DznC,EAAej0E,IAAM10C,YACzB,SAACqlH,GAAD,OACE9nH,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,wBACZtB,EAAA1P,EAAA2P,cAAA,UAAK6nH,KAGT,IAGF,OACE9nH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MACI+yJ,IACAJ,EAAqB1yJ,OACnBH,EAAA1P,EAAA2P,cAACylF,GAAD,CACEjS,SAAS,SACT/mF,QAASA,EACTm/H,WAAYn/H,EAAQyT,OACpBrL,KAAM+9J,EACN9/E,aAAcA,EACdq4C,aAAcA,EACd7zD,OAAQA,EACRo0D,UAAQ,EACR6gB,eAAa,EACbE,kBAAgB,EAChB94D,UAAWA,EACXF,OAAQA,EACRC,WAAYA,EACZi4C,eAAe,IAEf5rH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,8CC1KC+4J,GAAgD,WAC3D,OACEp5J,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACq4J,GAAD,CAAoBl5L,KAAK,yBACzB4gC,EAAA1P,EAAA2P,cAACo5J,GAAD,QCwBA3sK,GAAiB,CACrB,CACEsjE,OAAQ,SACR23D,SAAS,EACTzjC,SAAU,SAAC5zF,GACT,OAAOA,EAAE2E,QAEXr2B,GAAI,SACJ2mH,KAAM,SAAAriF,GAAA,IAAG4kH,EAAH5kH,EAAG4kH,IAAH,OAAgC9nH,EAAA1P,EAAA2P,cAAC8iH,GAAD,CAAc9tH,OAAQ6yH,EAAI/oJ,SAASk2B,OAAQ+jH,YAAY,MAG/F,CACEhpD,OAAQ,aACRk0B,SAAU,SAAC5zF,GAAD,OAAoBA,EAAEihB,gBAChC3yC,GAAI,YACJ+oJ,SAAS,EACTC,SAAU,eACVriC,KAAI,SAAA0iC,GAAA,SAAA1iC,EAAAroC,GAAA,OAAA+qE,EAAArmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA4oG,EAAA5oG,YAAAkmE,EAAA,CAAE,SAAAhxD,GAAA,IAAGuzF,EAAHvzF,EAAGuzF,IAAH,OAAgC9nH,EAAA1P,EAAA2P,cAACkiH,GAAD,CAAkBnlH,MAAO8qH,EAAI/oJ,SAASwyC,oBAG9E,CACEy+C,OAAQ,kBACR23D,SAAS,EACTzjC,SAAU,SAAC5zF,GACT,OAAOA,EAAEsjH,gBAEXh1I,GAAI,aACJ2mH,KAAI,SAAA4iC,GAAA,SAAA5iC,EAAApoC,GAAA,OAAAgrE,EAAAvmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA8oG,EAAA9oG,YAAAkmE,EAAA,CAAE,SAAAjoB,GAAgC,IAA7BwqD,EAA6BxqD,EAA7BwqD,IACP,OAAO9nH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO8qH,EAAI/oJ,SAAS60I,eAAgBvuC,UAAQ,OAG/D,CACErV,OAAQ,mBACR23D,SAAS,EACTzjC,SAAU,SAAC5zF,GACT,OAAOA,EAAE2iH,gBAEXr0I,GAAI,UACJ2mH,KAAI,SAAA8iC,GAAA,SAAA9iC,EAAAjoC,GAAA,OAAA+qE,EAAAzmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAgpG,EAAAhpG,YAAAkmE,EAAA,CAAE,SAAAmkB,GACJ,OADoCA,EAA7Boe,IACI/oJ,SAASk0I,kBAGxB,CACEjjD,OAAQ,aACR23D,SAAS,EACTzjC,SAAU,SAAC5zF,GACT,OAAOA,EAAE4iH,gBAEXt0I,GAAI,aAEN,CACEoxF,OAAQ,WACR23D,SAAS,EACTzjC,SAAU,SAAC5zF,GACT,OAAOA,EAAE6iH,cAEXv0I,GAAI,WAEN,CACEoxF,OAAQ,iBACR23D,SAAS,EACTzjC,SAAU,SAAC5zF,GACT,OAAOA,EAAE+iH,mBAEXz0I,GAAI,aAEN,CACEoxF,OAAQ,mBACR23D,SAAS,EACTzjC,SAAU,SAAC5zF,GACT,OAAOA,EAAE8iH,iBAEXx0I,GAAI,mBAEN,CACEoxF,OAAQ,mBACR23D,SAAS,EACTzjC,SAAU,SAAC5zF,GACT,OAAOiS,IAAEy+B,MAAM1wC,EAAEyiH,eAAgB,IAEnCn0I,GAAI,iBACJ2mH,KAAI,SAAAijC,GAAA,SAAAjjC,EAAAhoC,GAAA,OAAAirE,EAAA5mG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAmpG,EAAAnpG,YAAAkmE,EAAA,CAAE,SAAAghC,GAAA,IAAGuB,EAAHvB,EAAGuB,IAAH,OACJ9nH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KAAmC,IAAhC4nH,EAAI/oJ,SAASg0I,gBAAwB/yG,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO8qH,EAAI/oJ,SAASg0I,eAAgB1tC,UAAQ,QAGhG,CACErV,OAAQ,iBACR23D,SAAS,EACTzjC,SAAU,SAAC5zF,GACT,OAAOiS,IAAEy+B,MAAM1wC,EAAE0iH,aAAc,IAEjCp0I,GAAI,eACJ2mH,KAAI,SAAAmjC,GAAA,SAAAnjC,EAAAyhB,GAAA,OAAA0hB,EAAA9mG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAqpG,EAAArpG,YAAAkmE,EAAA,CAAE,SAAAohC,GAAA,IAAGmB,EAAHnB,EAAGmB,IAAH,OACJ9nH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KAAiC,IAA9B4nH,EAAI/oJ,SAASi0I,cAAsBhzG,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO8qH,EAAI/oJ,SAASi0I,aAAc3tC,UAAQ,QAG5F,CACErV,OAAQ,cACR23D,SAAS,EACTzjC,SAAU,SAAC5zF,GACT,OAAOA,EAAEmjH,YAEX70I,GAAI,aACJ2mH,KAAI,SAAAqjC,GAAA,SAAArjC,EAAA0hB,GAAA,OAAA2hB,EAAAhnG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAupG,EAAAvpG,YAAAkmE,EAAA,CAAE,SAAA6hC,GAAgC,IAA7BU,EAA6BV,EAA7BU,IAA6B9rE,EACCpB,YAAiB,SAAAp9C,GAAC,OAAIk0G,GAAqBz5C,SAASz6D,EAAGsqH,EAAI/oJ,SAASk2B,UAAjGolE,EAD4Bre,EAC5Bqe,QAD4Bre,EACnBlrC,SADmBkrC,EACT3Y,MAC3B,OACErjC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAcrD,MAAOq9D,EAASgL,UAAQ,EAACouB,UAAQ,QAMvD,CACEzjC,OAAQ,eACR23D,SAAS,EACTzjC,SAAU,SAAC5zF,GAAD,OAAoBA,EAAEojH,aAChC90I,GAAI,cACJ2mH,KAAI,SAAAujC,GAAA,SAAAvjC,EAAA2hB,GAAA,OAAA4hB,EAAAlnG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAypG,EAAAzpG,YAAAkmE,EAAA,CAAE,SAAA+hC,GAAgC,IAA7BQ,EAA6BR,EAA7BQ,IACCh3G,EAAa8pC,YAAiB,SAAAp9C,GAAC,OAAIk0G,GAAqBz5C,SAASz6D,EAAGsqH,EAAI/oJ,SAASk2B,UAAjF6b,SACR,OACE9Q,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAcrD,MAAO8T,EAAUu0D,UAAQ,EAACouB,UAAQ,QAMxD,CACEzjC,OAAQ,YACR23D,SAAS,EACTzjC,SAAU,SAAC5zF,GAAD,OAAoBA,EAAEqjH,UAChC/0I,GAAI,WACJ2mH,KAAI,SAAAyjC,GAAA,SAAAzjC,EAAA4hB,GAAA,OAAA6hB,EAAApnG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA2pG,EAAA3pG,YAAAkmE,EAAA,CAAE,SAAAsiC,GAAgC,IAA7BC,EAA6BD,EAA7BC,IACCzkF,EAAUuX,YAAiB,SAAAp9C,GAAC,OAAIk0G,GAAqBz5C,SAASz6D,EAAGsqH,EAAI/oJ,SAASk2B,UAA9EouC,MACR,OACErjC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAcrD,MAAOqmC,EAAOgiC,UAAQ,EAACouB,UAAQ,QAMrD,CACEzjC,OAAQ,kBACR23D,SAAS,EACTzjC,SAAU,SAAC5zF,GAAD,OAAoBA,EAAEqjH,UAChC/0I,GAAI,gBACJ2mH,KAAI,SAAA2jC,GAAA,SAAA3jC,EAAA6hB,GAAA,OAAA8hB,EAAAtnG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA6pG,EAAA7pG,YAAAkmE,EAAA,CAAE,SAAA2iC,GAAgC,IAA7BJ,EAA6BI,EAA7BJ,IACP,OACE9nH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO8qH,EAAI/oJ,SAASglH,cAAe1e,UAAQ,SAOhDi0F,GAAuB,WAElC,IAAMxkK,EAAO8lD,YAAiB,SAAAp9C,GAAC,OAC7By0G,GAAa53C,QAAQ78D,EAAG,CACtBmgB,UAAWqgC,KAAM,IAAI52B,MAClB2S,KAAK,GACLljB,SACH+G,QAASogC,KAAM,IAAI52B,MAAQvQ,aAGzB0uC,EAAW3K,YAAiBi5D,IAClC,OACE7zG,EAAA1P,EAAA2P,cAACylF,GAAD,CACEjS,SAAS,UACTlc,OAAQhS,EACRomE,UAAQ,EACRj/H,QAASA,GACToI,KAAMA,EACNu/J,SAAS,WACTzoC,eAAe,KC7MR2tC,GAA4B,WACvC,IAAMC,EAAW5+G,YAAiB,SAAAp9C,GAAC,OAAIk0G,GAAqBz3C,OAAOG,YAAY58D,GAAG6lC,QAC5EswE,EAAW/4D,YAAiB,SAAAp9C,GAAC,OAAIk0G,GAAqBz3C,OAAOt9C,IAAInf,GAAG6lC,QACpEo2H,EAAe9lD,EAAW6lD,EAChC,OACEx5J,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,wBACaD,EAAA1P,EAAA2P,cAAA,uBADb,cAEED,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAcrD,MAAOy8J,EAAc/iJ,QAAM,EAAC2uD,UAAQ,EAACouB,UAAQ,KAE7DzzF,EAAA1P,EAAA2P,cAAA,6BAEED,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAcrD,MAAO22G,EAAUj9F,QAAM,EAAC2uD,UAAQ,EAACouB,UAAQ,OCNzDimE,GAAmD,WAAM,IACrDr2H,EAAUuX,YAAiB82D,GAAqBz3C,OAAOG,aAAvD/2B,MACR,OACErjC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KAEEF,EAAA1P,EAAA2P,cAAA,OAAKG,MAAO,CAAEs3J,cAAe,QAAUp2J,UAAU,uBAC/CtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,+BACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,YAAf,kBACiBtB,EAAA1P,EAAA2P,cAAA,uBADjB,cAEED,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAcrD,MAAOqmC,EAAO3sB,QAAM,EAAC2uD,UAAQ,EAACouB,UAAQ,KAEtDzzF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,2BACbtB,EAAA1P,EAAA2P,cAAC05J,GAAD,SAKN35J,EAAA1P,EAAA2P,cAAC25J,GAAD,QAKOC,GAA+C,WAK1D,OAJA9rG,IAAS,cAIF/tD,EAAA1P,EAAA2P,cAAC65J,GAAD,OCxBIC,GAA+C,WAC1D,IAAMC,EAAYnL,KACZ3wL,EAAY08E,YAAiB+oC,KAC7BroD,EAAesf,YAAiBgqC,KAChC57F,EAAUyrF,eACVs2E,EAAgBnwG,YAAiBgsB,IAC/BwqF,EAAsBD,KAAtBC,kBANwDr3G,EAOhBC,oBAAS,GAPOC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAOzDy4G,EAPyDv4G,EAAA,GAOpCw4G,EAPoCx4G,EAAA,GAAAy4G,EAQjCpB,KAAvB3zI,EARwD+0I,EAQxD/0I,UAAWC,EAR6C80I,EAQ7C90I,QAR6Co1I,EAShC3B,KAAxBrjH,EATwDglH,EASxDhlH,SAAUukC,EAT8CygF,EAS9CzgF,UACZ96B,EAAW0E,cACXwyF,EAAMvvI,kBAAQ,kBAAO46J,EAAYA,EAAUnoK,WAAQt1B,GAAY,CAACy9L,EAAYA,EAAUnoK,WAAQt1B,IAC9F09L,EAAc76J,kBAAQ,iBAAc,WAARuvI,GAAkB,CAACA,IAC/CurB,EAAwB,aAARvrB,EAEtBlzF,oBAAU,WAEJv9E,GACFu5E,EACElyC,IAAQkC,qBACN,CACEvpC,YACAo9D,eACAkQ,SAAU7tB,EACV+tB,OAAQ9tB,EACRg0I,qBAAoBsI,EACpBlsH,WACAukC,YACAvpF,UACAixK,cACA7I,kBAAmBoB,GAErB,CAAE2H,cAAU59L,MAIjB,CACDwuL,EACAqG,EACAoB,EACA70I,EACAC,EACAowB,EACAukC,EACAr0G,EACAo9D,EACA2+H,EACAC,IAGF,IAAM30G,EAAW3K,YAAiB6sB,IAClC,OACEznE,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGqlD,EACCvlD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACW,aAARyuI,GAAsB3uI,EAAA1P,EAAA2P,cAACm6J,GAAD,MACd,WAARzrB,GACC3uI,EAAA1P,EAAA2P,cAACo6J,GAAD,CACE7H,oBAAqBA,EACrBC,iBAAkBA,EAClBJ,QAAQ,WAGH,WAAR1jB,GACC3uI,EAAA1P,EAAA2P,cAACo6J,GAAD,CACE7H,oBAAqBA,EACrBC,iBAAkBA,EAClBJ,QAAQ,WAGH,YAAR1jB,GAAqB3uI,EAAA1P,EAAA2P,cAACq6J,GAAD,OAGxBt6J,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KAAoBL,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,SClFfk6J,GAAwC,WAAM,IAAArxE,EACjCC,eAAhBt3F,EADiDq3F,EACjDr3F,MAAOyC,EAD0C40F,EAC1C50F,KACPw/H,EAAWxrC,eAAXwrC,OAEF0mC,EAAUp7J,kBAAQ,kBAAM9K,GAAQA,EAAK6L,OAAS,GAAG,CAAC7L,IAClDmmK,EAAah4J,sBAAY,SAACksI,GAAD,OAAqB7a,EAAO6a,IAAM,CAAC7a,IAClE,OACE9zH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MACIs6J,GAAW3oK,EACZ2oK,GAAWlmK,GAAQ0L,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAW/L,KAAMA,EAAMmmK,WAAYA,EAAYC,YAAa,aCDhFC,GAA6B,CACjC,CAAE9oK,MAAO,SAAUoC,QAAQ,GAC3B,CAAEpC,MAAO,UACT,CAAEA,MAAO,YACT,CAAEA,MAAO,YAGE+oK,GAA6C,WACxDnvF,GAA0CpD,IAC1CioC,GAA4BjoC,IAFkC,IAAAwyF,EAG7B3J,KAAzB3xF,EAHsDs7F,EAGtDt7F,QAASwsB,EAH6C8uE,EAG7C9uE,YACjB,OACE/rF,EAAA1P,EAAA2P,cAAC0vG,GAADtjI,OAAA8F,OAAA,GACM09H,aAAcp+H,IAAU2E,SAAU4pB,EAAA1P,EAAA2P,cAAC66J,GAAD,MAAkBH,IAD1D,CAEEhyK,SAAU42E,EACV2sB,cAAeH,IAEf/rF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAWiB,UAAW,cACpBtB,EAAA1P,EAAA2P,cAAC+rH,GAAD,MACAhsH,EAAA1P,EAAA2P,cAAC86J,GAAD,mBCnBKC,GAAgD,SAAA38J,GAGrB,IAKjC48J,EAPLC,EAEsC78J,EAFtC68J,UACAC,EACsC98J,EADtC88J,iBAEMC,EAAoBl4F,iBAA8B,IAClD+0B,EAAQ/0B,iBAAyB,MACjCwO,EAAiBxO,iBAAuB,KAHR,SAKjC+3F,KALiC,YAKjCA,EALiC,eAKjCA,EALiC,eAKjCA,EALiC,8BAKjCA,EALiC,kBAKjCA,EALiC,kBAKjCA,EALiC,cAKjCA,MALiC,KAetC,IAAMI,EAAgB,SAACC,GACrB,OAAQA,GACN,IAAK,UACH,OAAOL,EAAYM,QACrB,IAAK,aACH,OAAON,EAAYO,WACrB,IAAK,WACH,OAAOP,EAAYQ,SACrB,IAAK,2BACH,OAAOR,EAAYS,yBACrB,IAAK,eACH,OAAOT,EAAYU,aACrB,IAAK,eACH,OAAOV,EAAYW,aACrB,IAAK,WACH,OAAOX,EAAYY,SACrB,QACE,MAAO,KAqIb,OAjIApgH,oBAAU,WACRw8C,EAAM14B,QAAUu8F,aAAYV,EAAkB77F,QAAS,CACrDzyE,MAAOsuK,EAAkB77F,QAAQw8F,YACjCltF,OAAQusF,EAAkB77F,QAAQy8F,aAClCvvG,OAAQ,CACNlsD,gBAAiB,iBACjB07J,UAAW,2BACXn5F,SAAU,IAEZklB,KAAM,CACJk0E,UAAW,CACTC,SAAS,GAEXC,UAAW,CACTD,SAAS,IAGbE,UAAW,CACT/2H,KAAMg3H,KAAcC,WAGvB,IAEH9gH,oBAAU,WACR,GAAI0/G,EAAiBh7J,QAA4B,OAAlB83F,EAAM14B,QAAkB,CACrD,IAAMi9F,EAAiBvkE,EAAM14B,QAAQk9F,kBAAkB,CACrDC,UAAW,CAAEt9L,KAAM,QAAS8nD,MAAO,GACnCy1I,UAAW,IAGPC,EAA8C,GAE9CC,EAAY,IAAI57J,IAClB67J,EAAwB3B,EACzB//J,IAAI,SAAA2hK,GAqBH,GApBwC,OAApCA,EAAYC,0BAAoEzgM,IAApCwgM,EAAYC,qBAC1DD,EAAYC,oBAAoBloH,QAAQ,SAAAmoH,GACtCL,EAAsBj7I,KAAK,CACzB8nB,KAAMszH,EAAYnyH,WAClB95B,SAA2C,aAAjCmsJ,EAAmB3xE,UAA2B,WAAa,WACrEvqB,MAAwC,aAAjCk8F,EAAmB3xE,UAA2B,qBAAuB,mBAC5EjuB,MAAwC,aAAjC4/F,EAAmB3xE,UAA2B,UAAY,YACjE3rB,KAAI,GAAA13F,OAC+B,aAAjCg1L,EAAmB3xE,UAA2B2vE,EAAYO,WAAaP,EAAYM,QADjF,KAAAtzL,QAEkC,aAAjCg1L,EAAmB3xE,UAA2B,IAAM,IACvD,IACA2xE,EAAmBpyH,OAChB3K,QAAQ,GACR7gB,WACAp3B,QAAQ,wBAAyB,MACtCkzB,KAAM,OAKkB,OAA1B4hJ,EAAYx0H,gBAAgDhsE,IAA1BwgM,EAAYx0H,UAAyB,CACzE,IAAM20H,EAAoB,IAAIj8J,IAC9B87J,EAAYx0H,UAAUuM,QAAQ,SAAAqoH,GAE5B,IAAMC,GAAmBF,EAAkBG,IAAIN,EAAYnyH,YAC3DwyH,GAAmBF,EAAkBnxJ,IAAIgxJ,EAAYnyH,YACrDgyH,EAAsBj7I,KAAK,CACzB8nB,KAAMszH,EAAYnyH,WAClB95B,SAAUqsJ,EAAStyH,OAAS,EAAI,WAAa,WAC7Ck2B,MAAOo8F,EAAStyH,OAAS,EAAI,mBAAqB,qBAClDwyB,MAAO+/F,EAAmBD,EAAStyH,OAAS,EAAI,YAAc,UAAa,SAC3E80B,KAAI,GAAA13F,OAAKozL,EAAc8B,EAAS/9L,MAA5B,OAAA6I,OAAuCk1L,EAAStyH,OACjD3K,QAAQ,GACR7gB,WACAp3B,QAAQ,wBAAyB,MACpCkzB,KAAMiiJ,EAAkB,GAAM,OAKpC,MAAO,CACL3zH,KAAMszH,EAAYnyH,WAClB5tC,MAAO+/J,EAAY5iG,gBAItBv8D,OAAO,SAAAm/J,GACN,OAAKF,EAAUQ,IAAIN,EAAYtzH,QAC7BozH,EAAU9wJ,IAAIgxJ,EAAYtzH,OACnB,KAUb,OAJA+yH,EAAec,QAAQR,GAGvBN,EAAee,WAAWX,GACnB,WAEiB,OAAlB3kE,EAAM14B,SACR04B,EAAM14B,QAAQi+F,aAAahB,MAIhC,CAACrB,EAAkBD,EAAWjjE,IAGjCx8C,oBAAU,WACR,GAAI0/G,EAAiBh7J,QAA4B,OAAlB83F,EAAM14B,QAqBnC,OApBAmS,EAAenS,QAAU,IAAIk+F,eAAe,SAAAz3C,GAAW,IAAA03C,EAC3B13C,EAAQ,GAAG23C,YAA7B7wK,EAD6C4wK,EAC7C5wK,MAAO+hF,EADsC6uF,EACtC7uF,OAGf,GAAsB,OAAlBopB,EAAM14B,QAAkB,CAO1B04B,EAAM14B,QAAQq+F,aAAa,CAAEC,aAAc,CAAEC,eANtB,SAAC52I,GAAD,MACrB,IACAA,EACGgZ,QAAQ,GACR7gB,WACAp3B,QAAQ,wBAAyB,OACyC6E,QAAO+hF,WACtFjO,WAAW,WACa,OAAlBq3B,EAAM14B,SACR04B,EAAM14B,QAAQw+F,YAAYC,cAE3B,MAGPtsF,EAAenS,QAAQoS,QAAQypF,EAAkB77F,SAC1C,kBAAMmS,EAAenS,QAAQqS,eAErC,CAACupF,EAAkBD,EAAWjjE,IAC1Bj4F,EAAA1P,EAAA2P,cAAA,OAAKw9D,IAAK29F,EAAkE95J,UAAU,mBClLzF28J,GAAyB,SAAA5/J,GAQnB,IAPVvJ,EAOUuJ,EAPVvJ,KACAmrI,EAMU5hI,EANV4hI,SACAi+B,EAKU7/J,EALV6/J,SAOMC,EAAO,IAAIh+D,KAAK,CAACrrG,GAAO,CAAE11B,KAAM8+L,IAGhCE,EAAS5oH,SAASv1C,cAAc,KACtCm+J,EAAOC,SAAWp+B,EAClBm+B,EAAO3rH,KAAOyb,OAAOqxC,IAAIa,gBAAgB+9D,GACzC,IAAMG,EAAa,IAAIC,WAAW,QAAS,CACzCryJ,KAAMgiD,OACNswG,SAAS,EACTC,YAAY,IAEdL,EAAOM,cAAcJ,GACrBF,EAAO/xJ,UAGIsyJ,GAAwB,SAAC7pK,GACpC,OAAOmlC,KAAK2kI,aAAa,QAAS,CAAEx+J,MAAO,WAAYilE,SAAU,QAAS3uD,OAAO5hB,IAItE+pK,GAAwB,SAAC/pK,EAA+Bw2D,EAAkCtjE,GAErG,GAAIA,GAAe,oBAARA,QAA2CzrB,IAAd+uF,EAAyB,CAC/D,IAAMwzG,EAA2B,GAC3BC,EAAqB,GACvBC,EAAY,EAEhB3yL,OAAO25I,QAAQlxH,GAAasG,IAAI,SAAA8H,GAA8B,IAAAqxB,EAAAloD,OAAAqoD,EAAA,EAAAroD,CAAA62B,EAAA,GAA5B+7J,EAA4B1qI,EAAA,GAAhB2qI,EAAgB3qI,EAAA,GACtDz/B,GAAQoqK,GAAeA,EAAkB/+J,SAC3C2+J,EAAen9I,KAAKs9I,GACpBD,EAAYlkJ,KAAKC,IAAIikJ,EAAYE,EAAkB/+J,WAGzD,IAAK,IAAI8iH,EAAS,EAAGA,EAAS+7C,EAAW/7C,IAEvC,IAAK,IAAI6E,EAAM,EAAGA,EAAMg3C,EAAe3+J,OAAQ2nH,IAC7Ci3C,EAAYp9I,KAAK,KAAA15C,OAAM6sB,EAAYgqK,EAAeh3C,IAAa7E,GAA9C,MAA0D5jG,YAK/E,IAFA,IAAM8/I,EAAmB,GACnBC,EAAYN,EAAe3+J,OACxBjO,EAAI,EAAGA,EAAI6sK,EAAY5+J,OAAQjO,GAAKktK,EACzCD,EAAYx9I,KAAKo9I,EAAY1yI,MAAMn6B,EAAGA,EAAIktK,IAE9CnB,GAAa,CACTnpK,KAAM,CAAEgqK,EAAe1jK,IAAI,SAACvB,GAAD,OAAS0I,IAAE81H,WAAWx+H,MAA3C5xB,OAAsDk3L,GAAa/+I,KAAK,MAC9E6/G,SAAQ,gCAAAh4J,QAAkC,IAAIm/C,MAAOq1H,iBAA7C,QACRyhB,SAAU,kBAGT,GAAkB,cAAd5yG,EAA2B,CACpC,IAEI+zG,EAAYvqK,EACXzoB,OAAO25I,QAAQlxH,GAAM6E,OAAO,SAAC0lK,EAAqBC,GAAe,IAAAC,EAC+CD,EAAM,GAA/G10H,EAD0D20H,EAC1D30H,WAAY40H,EAD8CD,EAC9CC,cAAeC,EAD+BF,EAC/BE,iBAAkBC,EADaH,EACbG,gBAAiBvlG,EADJolG,EACIplG,aAAc5xB,EADlBg3H,EACkBh3H,UAAWo3H,EAD7BJ,EAC6BI,cAY/F,OAXEN,EAAU19I,KACR,CACE,IAAIyF,KAAKwjB,GAAYg1H,qBADvB,IAAA33L,OAEM02L,GAAYa,GAFlB,SAAAv3L,OAGM02L,GAAYc,GAHlB,SAAAx3L,OAIM02L,GAAYe,GAJlB,SAAAz3L,OAKM02L,GAAYxkG,GALlB,SAAAlyF,OAMM02L,GAAYp2H,GANlB,SAAAtgE,OAOMu9C,MAAMm5I,GAAYgB,IAAkB,MAAQhB,GAAYgB,GAP9D,MAQEv/I,KAAK,MAEJi/I,GACN,IACD,GACJpB,GAAa,CACXnpK,KAAM,CApB8B,CAAC,yGAoB/B7sB,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAyBgzL,IAAWj/I,KAAK,MAC/C6/G,SAAQ,0BAAAh4J,QAA4B,IAAIm/C,MAAOq1H,iBAAvC,QACRyhB,SAAU,eCtEH2B,GAAkE,SAAAxhK,GAQ9B,IAP/C88J,EAO+C98J,EAP/C88J,iBACAntH,EAM+C3vC,EAN/C2vC,SACAukC,EAK+Cl0E,EAL/Ck0E,UACAlvC,EAI+ChlC,EAJ/CglC,MAEAy8H,GAE+CzhK,EAH/C0hK,gBAG+C1hK,EAF/CyhK,kBACAE,EAC+C3hK,EAD/C2hK,qBAEMjtF,EAAe3zE,kBAAQ,WAC3B,MAAO,CACL4uC,cAAuBzxE,IAAbyxE,EAAyB,GAAKA,EACxCukC,UAAWA,GAAa,EACxB50E,OAAQ,GACR60E,YAAa,KAEd,CAACxkC,EAAUukC,IAERqB,EAAYx0E,kBAAQ,WACxB,OAAI4uC,EAC4C,IAAvClzB,KAAKw/F,MAAMj3E,GAAS,GAAK2K,GAAkB,EAAIlzB,KAAKw/F,MAAMj3E,GAAS,GAAK2K,GAE1E,GACN,CAAC3K,EAAO2K,IAELthD,EAAU0S,kBACd,iBAAM,CACJ,CACE4wD,OAAQ,OACR23D,SAAS,EACTC,SAAUq4C,KACV/7E,SAAU,SAACg8E,GACT,OAAO,IAAI94I,KAAK84I,EAAWt1H,YAAYg1H,sBAEzChhM,GAAI,QAEN,CACEoxF,OAAQ,iBACRk0B,SAAU,SAACg8E,GACT,OAAOvB,GAAYuB,EAAWV,gBAEhC5gM,GAAI,iBAEN,CACEoxF,OAAQ,qBACRk0B,SAAU,SAACg8E,GACT,OAAOvB,GAAYuB,EAAWT,mBAEhC7gM,GAAI,oBAEN,CACEoxF,OAAQ,mBACRk0B,SAAU,SAACg8E,GACT,OAAOvB,GAAYuB,EAAWR,kBAEhC9gM,GAAI,mBAEN,CACEoxF,OAAQ,YACRk0B,SAAU,SAACg8E,GAIT,OAAIA,EAAW33H,WAAa23H,EAAW33H,UAAUpoC,OAAS,EACjDw+J,GACLuB,EAAW33H,UAAU5uC,OAAO,SAACC,EAAaujK,GACxC,OAAIA,EAAStyH,OAAS,EACbjxC,EAAMujK,EAAStyH,OAEjBjxC,GACN,IAGE+kK,GAAY,IAGvB//L,GAAI,aAEN,CACEoxF,OAAQ,gBACRk0B,SAAU,SAACg8E,GACT,OAAOvB,GAAYuB,EAAW/lG,eAEhCv7F,GAAI,oBAGR,CAACu8L,IAEGrtF,EAAoBlzB,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEgwD,GAAG/kE,UAAUwoE,WAC/D,OACEjxD,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CACExN,aAAci7E,EACd2F,SAAS,iBACT+3C,aAAc,CAAC,SAAU,SAAU,SAAU,SAAU,SAAU,UACjEG,UAAU,EACVj/H,QAASA,EACT8/I,eAAe,EACf54D,UAAWA,EACXb,aAAcA,EACdj+E,KAAMqmK,EACNvvC,eAAa,EACbl4C,OAAQosF,EACRnsF,WAAYqsF,EACZtzB,kBAAkB,KC/FXyzB,GAAsD,SAAA9hK,GAQxB,IAPzC88J,EAOyC98J,EAPzC88J,iBACAD,EAMyC78J,EANzC68J,UAEAltH,GAIyC3vC,EALzC0hK,gBAKyC1hK,EAJzC2vC,UACAukC,EAGyCl0E,EAHzCk0E,UACAlvC,EAEyChlC,EAFzCglC,MACA28H,EACyC3hK,EADzC2hK,qBACyCr1D,EACjBxzD,IAAM6C,SAAS,GADE6wD,EAAAx+H,OAAAqoD,EAAA,EAAAroD,CAAAs+H,EAAA,GAClC58D,EADkC88D,EAAA,GAC5B50D,EAD4B40D,EAAA,GAGnC93B,EAAe3zE,kBAAQ,WAC3B,MAAO,CACL4uC,cAAuBzxE,IAAbyxE,EAAyB,GAAKA,EACxCukC,UAAWxkC,GAAQ,EACnBpwC,OAAQ,GACR60E,YAAa,KAEd,CAACxkC,EAAUukC,IACRqB,EAAYx0E,kBAAQ,WACxB,OAAI4uC,EAC4C,IAAvClzB,KAAKw/F,MAAMj3E,GAAS,GAAK2K,GAAkB,EAAIlzB,KAAKw/F,MAAMj3E,GAAS,GAAK2K,GAE1E,GACN,CAAC3K,EAAO2K,IAEPoyH,EAAiB,GAErBjF,EAAiBv9J,OAAO,SAAAyiK,GACtB,OAA+C,OAA3CA,EAAmBrD,0BAA2EzgM,IAA3C8jM,EAAmBrD,qBACxEqD,EAAmBrD,oBAAoBloH,QAAQ,SAAAmoH,GAC7CmD,EAAUz+I,KAAVt1C,OAAAy0B,EAAA,EAAAz0B,CAAA,CACEu+D,WAAYy1H,EAAmBz1H,YAC5BqyH,MAGAoD,EAAmBrD,qBAES,OAAjCqD,EAAmB93H,gBAAuDhsE,IAAjC8jM,EAAmB93H,WAC9D83H,EAAmB93H,UAAUuM,QAAQ,SAAAqoH,GACnCiD,EAAUz+I,KAAVt1C,OAAAy0B,EAAA,EAAAz0B,CAAA,CACEu+D,WAAYy1H,EAAmBz1H,YAC5BuyH,MAGAkD,EAAmB93H,gBAP5B,IAYF63H,EAAU7pF,KAAK,SAACjmF,EAAQqmD,GACtB,OAAO,IAAIvvB,KAAKuvB,EAAE/L,YAAY01H,UAAY,IAAIl5I,KAAK92B,EAAEs6C,YAAY01H,YAGnE,IAAM5zK,EAAU0S,kBACd,iBAAM,CACJ,CACE4wD,OAAQ,OACR23D,SAAS,EACTC,SAAUq4C,KACV/7E,SAAU,SAACg8E,GACT,OAAO,IAAI94I,KAAK84I,EAAWt1H,YAAYg1H,sBAEzChhM,GAAI,cAEN,CACEoxF,OAAQ,SACRk0B,SAAU,SAACg8E,GACT,OAAOvB,GAAYuB,EAAWr1H,SAEhCjsE,GAAI,SACJ2mH,KAAI,SAAA0iC,GAAA,SAAA1iC,EAAAroC,GAAA,OAAA+qE,EAAArmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA4oG,EAAA5oG,YAAAkmE,EAAA,CAAE,SAAAriF,GAAqB,IAAlBlG,EAAkBkG,EAAlBlG,MACP,OAAOgD,EAAA1P,EAAA2P,cAAA,WAAMjD,MAGjB,CACEgzD,OAAQ,OACRk0B,SAAU,SAACg8E,GACT,OAAKA,EAAW9gM,KAGP8gM,EAAW9gM,KAFX8gM,EAAW50E,WAKtB1sH,GAAI,OACJ2mH,KAAI,SAAA4iC,GAAA,SAAA5iC,EAAApoC,GAAA,OAAAgrE,EAAAvmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA8oG,EAAA9oG,YAAAkmE,EAAA,CAAE,SAAAhxD,GAAqB,IAAlBv3B,EAAkBu3B,EAAlBv3B,MACP,OACEgD,EAAA1P,EAAA2P,cAAA,OACEG,MAAO,CACL2gE,MACY,aAAV/jE,GACU,YAAVA,GACU,aAAVA,GACU,6BAAVA,GACU,aAAVA,EACI,iBACA,oBAIPA,GAASA,EAAM/U,QAAQ,WAAY,OAAOC,WAKnD,CACE8nE,OAAQ,cACRk0B,SAAU,SAACg8E,GACT,OAAIA,EAAW50E,UACN,CACL58F,YAAa,gBACb6xK,WAAY,GACZC,eAAgB,IAGX,CACL9xK,YAAawxK,EAAWxxK,YACxB6xK,WAAYL,EAAWK,WACvBC,eAAgBN,EAAWM,iBAIjC5hM,GAAI,cACJ2mH,KAAI,SAAA8iC,GAAA,SAAA9iC,EAAAjoC,GAAA,OAAA+qE,EAAAzmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAgpG,EAAAhpG,YAAAkmE,EAAA,CAAE,SAAAjoB,GAAqB,IAAlBtgE,EAAkBsgE,EAAlBtgE,MACP,OACEgD,EAAA1P,EAAA2P,cAAA,WACGjD,EAAMtO,aAAN,GAAAzmB,OAAwB+0B,EAAMtO,YAA9B,KACAsO,EAAMujK,YAAN,IAAAt4L,OAAwB+0B,EAAMujK,WAA9B,MACyB,UAAzBvjK,EAAMwjK,eAAN,IAAAv4L,OAAuC+0B,EAAMwjK,eAA7C,KAAiE,SAM5E,CAACrF,EAAkBD,IAGrB,OACEl7J,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGkgK,EAAUjgK,OAAS,GAClBH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEozE,SAAS,WACTk4C,UAAU,EACVH,aAAc,CAAC,MAAO,MAAO,MAAO,OACpC9+H,QAASA,EACT8/I,eAAe,EACf54D,UAAWA,EACXb,aAAcA,EACdj+E,KAAMsrK,EACNx0C,eAAe,EACfl4C,OAAQ,kBAAMz9B,EAAQlI,EAAO,IAC7B4lC,WAAYqsF,KAII,IAArBI,EAAUjgK,QACTH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAmBxO,MAAM,2BACvBmO,EAAA1P,EAAA2P,cAAA,QAAMG,MAAO,CAAEoB,QAAS,OAAQuqE,WAAY,SAAUnO,eAAgB,WACpE59D,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,+BADf,6DC/KGm/J,GAAkD,SAAApiK,GAAA,IAAGqiK,EAAHriK,EAAGqiK,kBAAH,OAE3D1gK,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,2BACXtB,EAAA1P,EAAA2P,cAAC66J,GAAD,MACA96J,EAAA1P,EAAA2P,cAAA,UAAQwB,QAASi/J,GAAmB1gK,EAAA1P,EAAA2P,cAAA,KAAGpO,MAAM,mBAAmByP,UAAU,uBC6DnEq/J,GAtEa,SAAAtiK,GAAwC,IAArCuiK,EAAqCviK,EAArCuiK,SAKvBC,EAAgBC,IAAuBhmJ,KAAKimJ,GAC5CC,EAAmBH,EAAiBD,EAAW,IAAOC,EAGtDI,EAAS,EAAInmJ,KAAKimJ,GAAKH,EAAY,IACnCM,EATS,IAGUC,GAMsBrmJ,KAAKsmJ,IAAIH,GAClDI,EAVS,IAGUF,GAOsBrmJ,KAAKwmJ,IAAIL,GAExD,OACEjhK,EAAA1P,EAAA2P,cAAA,OAAK4uE,OAAQsyF,IAAYr0K,MAAOq0K,KAC9BnhK,EAAA1P,EAAA2P,cAAA,YACED,EAAA1P,EAAA2P,cAAA,kBAAgBrhC,GAAG,mBAAmB2iM,GAAG,KAAKC,GAAG,KAAKC,GAAG,OAAOC,GAAG,MACjE1hK,EAAA1P,EAAA2P,cAAA,QAAM0hK,OAAO,KAAKvhK,MAAO,CAAEwhK,UAAW,UAAWC,YAAa,KAC9D7hK,EAAA1P,EAAA2P,cAAA,QAAM0hK,OAAO,OAAOvhK,MAAO,CAAEwhK,UAAW,UAAWC,YAAa,MAElE7hK,EAAA1P,EAAA2P,cAAA,UAAQrhC,GAAG,QACTohC,EAAA1P,EAAA2P,cAAA,kBAAgB6hK,GAAG,gBAAgBC,aAAa,IAAI5kJ,OAAO,SAC3Dnd,EAAA1P,EAAA2P,cAAA,eACED,EAAA1P,EAAA2P,cAAA,eAAa6hK,GAAG,SAChB9hK,EAAA1P,EAAA2P,cAAA,eAAa6hK,GAAG,qBAItB9hK,EAAA1P,EAAA2P,cAAA,UACE+hK,OAAO,UACPC,YA5Bc,GA6BdC,GA9BS,IA+BTC,GA/BS,IAgCT3iE,EA7BmB2hE,GA8BnBiB,KAAK,YAEPpiK,EAAA1P,EAAA2P,cAAA,UACE+hK,OAAO,yBACPI,KAAK,cACLH,YArCc,GAsCdI,gBAAiBxB,EAAgB,IAAMA,EACvCzgK,MAAO,CAAE4gK,mBAAkB1wF,WAAY,kCACvCkvB,EAtCmB2hE,GAuCnBe,GA1CS,IA2CTC,GA3CS,IA4CTvkK,OAAO,aACP0kK,cAAc,UAEhBtiK,EAAA1P,EAAA2P,cAAA,UACEiiK,GAAIhB,EACJiB,GAAId,EACJ7hE,EAhDkB,EAiDlB4iE,KAAK,YAEPpiK,EAAA1P,EAAA2P,cAAA,QACE9N,EAAE,MACFC,EAAE,MACFmwK,WAAW,SACXC,GAAG,OACH1/F,SAAS,OACT2/F,WAAW,QACXL,KAAK,UACLthG,WAAY,KARd,GAAA74F,OAUM24L,EAVN,QCnCO8B,GAA2B,WAAmB,IAAA3oH,EACvBC,mBAAS,CACzC8uD,MAAO,IAAI1hF,KAAK42B,OAAQhsE,OAAS,EAAGgsE,OAAQjsE,QAASisE,OAAQx/E,QAC7DuqI,IAAK,IAAI3hF,KAAK42B,OAAQhsE,OAAQgsE,OAAQjsE,QAASisE,OAAQx/E,UAHAy7E,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAClDmhH,EADkDjhH,EAAA,GACvC0oH,EADuC1oH,EAAA,GAAAuhB,EAK7BxhB,mBAAS,SALoByhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAKlDonG,EALkDnnG,EAAA,GAK1ConG,EAL0CpnG,EAAA,GAAAo/F,EAMxB3J,KAAzB3xF,EANiDs7F,EAMjDt7F,QAASwsB,EANwC8uE,EAMxC9uE,YACXiuE,EAAYnL,KACZlgB,EAAMvvI,kBAAQ,kBAAO46J,EAAYA,EAAUnoK,MAAQ,mBAAoB,CAACmoK,IAExE+F,EAAkB,eAACj3D,EAADjnF,UAAA1hB,OAAA,QAAA5jC,IAAAslD,UAAA,GAAAA,UAAA,GAAS,IAAIuF,KAAQ2hF,EAArBlnF,UAAA1hB,OAAA,QAAA5jC,IAAAslD,UAAA,GAAAA,UAAA,GAA2B,IAAIuF,KAA/B,OAAgDu7I,EAAa,CAAE75D,MAAOA,EAAOC,IAAKA,KACpG9tD,EAAoBL,YAAiB+oC,KAXc/nB,EAanB5hB,mBAAS,GAbU6hB,EAAAxvF,OAAAqoD,EAAA,EAAAroD,CAAAuvF,EAAA,GAalDknG,EAbkDjnG,EAAA,GAarCknG,EAbqClnG,EAAA,GAAAG,EAcThiB,mBAAS,GAdAiiB,EAAA5vF,OAAAqoD,EAAA,EAAAroD,CAAA2vF,EAAA,GAchCgnG,GAdgC/mG,EAAA,GAAAA,EAAA,IAAA02B,EAezB34C,mBAA2B,IAfF44C,EAAAvmH,OAAAqoD,EAAA,EAAAroD,CAAAsmH,EAAA,GAelD3kD,EAfkD4kD,EAAA,GAexC18C,EAfwC08C,EAAA,GAgBnD10H,EAAY08E,YAAiB+oC,KAhBsB4jC,EAiBPvtE,oBAAS,GAjBFwtE,EAAAn7I,OAAAqoD,EAAA,EAAAroD,CAAAk7I,EAAA,GAiBlD07C,EAjBkDz7C,EAAA,GAiB/B07C,EAjB+B17C,EAAA,GAAA0J,EAkBnBl3E,mBAA2B,IAlBRm3E,EAAA9kJ,OAAAqoD,EAAA,EAAAroD,CAAA6kJ,EAAA,GAkBlDiyC,EAlBkDhyC,EAAA,GAkBrCiyC,EAlBqCjyC,EAAA,GAAAC,EAmBzBp3E,mBAAS,GAnBgBq3E,EAAAhlJ,OAAAqoD,EAAA,EAAAroD,CAAA+kJ,EAAA,GAmBlDwvC,EAnBkDvvC,EAAA,GAmBxCgyC,EAnBwChyC,EAAA,GAoBnDiyC,EAAapgG,iBAAsB,MApBgBsuD,EAqBrBx3E,wBAA6Bz9E,GArBRk1J,EAAAplJ,OAAAqoD,EAAA,EAAAroD,CAAAmlJ,EAAA,GAqBlD+xC,EArBkD9xC,EAAA,GAqBtC+xC,GArBsC/xC,EAAA,GA2BnDrtE,GAAe7F,GAAQ28G,EAAUnyD,KACnC/qD,KAAMk9G,EAAUnyD,KACbynD,SAAS,EAAG,OACZ95I,OAAO,cACVsnC,KAAMk9G,EAAUnyD,KAAK55E,QAAQ6uB,QAC7BA,OACGwyG,SAAS,EAAG,OACZ95I,OAAO,cACVsnC,KAAMk9G,EAAUnyD,KAAKryF,OAAO,cAE1B+sJ,GAAiD,CACrDvlM,UAAWA,EACXy/C,UAAWqgC,KAAMk9G,EAAUpyD,OAAOpyF,OAAO,cACzCkH,QAASwmC,GACTzmD,OAAQ,aACRk7D,YAAa,OACb9qB,KAAM+0H,EACN90H,SAAUA,GAGN3yB,GAAMqoE,cA/C6CG,GAgDtBC,aAAO2/E,GAAsBpoJ,GAAI01B,QAAQoB,aAApEr9C,GAhDiD+uF,GAgDjD/uF,KAAM9J,GAhD2C64F,GAgD3C74F,MAAO6rE,GAhDoCgtB,GAgDpChtB,UAEfskG,GAAmBrmK,IAAQA,GAAK4iB,SAAW5iB,GAAK4iB,QAAQ5iB,KAAOA,GAAK4iB,QAAQ5iB,KAAO,GA2CnF4uK,GAzBW,WACf,IAAMC,EAAWzgG,iBAAsB,MAEjCwgG,EAAQjhK,sBAAY,SAACmhK,GACzB,OAAO,IAAIhkJ,QAAc,SAAAC,GACvB8jJ,EAASpkG,QAAUrR,OAAO0S,WAAW/gD,EAAS+jJ,MAE/C,IAEGC,EAAaphK,sBAAY,WACzBkhK,EAASpkG,UACXoB,aAAagjG,EAASpkG,SACtBokG,EAASpkG,QAAU,OAEpB,IAQH,OANA9jB,oBAAU,WACR,OAAO,WACLooH,MAED,CAACA,IAEGH,EAGKI,GAMRC,GAAiB,eAAA1lK,EAAAhyB,OAAA0wE,EAAA,EAAA1wE,CAAAwsC,EAAAvoB,EAAAwoB,KAAG,SAAAC,IAAA,IAAAoqJ,EAAAL,EAAAkB,EAAAC,EAAAC,EAAAhhK,EAAAwU,EAAAysJ,EAAA,OAAAtrJ,EAAAvoB,EAAA2oB,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OACpB+pJ,EAAgC,GAChCL,EAAc,EACZkB,EAAU,GACVC,EAAanvK,IAAQA,GAAK4iB,SAAW5iB,GAAK4iB,QAAQ2rB,MAClD6gI,EAAaD,GAAcnpJ,KAAKw/F,KAAK2pD,EAAaD,GALhC,YAOjBE,GAAcpB,GAAeoB,GAAcD,GAAcd,EAAYhjK,OAAS8jK,GAP7D,CAAA/qJ,EAAAE,KAAA,gBAAAF,EAAAC,KAAA,EAAAD,EAAAE,KAAA,EASMiC,GAAI01B,QAAQoB,YAAZ9lE,OAAAy0B,EAAA,EAAAz0B,CAAA,GACrBo3L,GADqB,CAExB11H,KAAM+0H,EACN90H,SAAUg2H,KAZQ,cAAA9gK,EAAAgW,EAAAuC,KASZ/D,EATYxU,EASZwU,QAKRyrJ,EAAcA,EAAYl7L,OAAOyvC,EAAQ5iB,MAEzCkuK,IADAF,GAEMqB,EAAkBrpJ,KAAKkmB,MAAO8hI,EAAcoB,EAAc,KAChEb,EAAYc,GAlBQjrJ,EAAAE,KAAA,GAoBdsqJ,GAAM,KApBQ,QAAAxqJ,EAAAE,KAAA,wBAAAF,EAAAC,KAAA,GAAAD,EAAA4D,GAAA5D,EAAA,SAsBpBsqJ,GAAc,gFACdH,EAAY,GACZL,EAAoB,GACpBE,GAAqB,GAzBDhqJ,EAAAG,OAAA,oBAAAH,EAAAE,KAAA,uBA8BxBkqJ,EAAW/jG,QAAUrR,OAAO0S,WAAW,WACrCyiG,EAAY,MACX,KAEHD,EAAeD,GACfD,GAAqB,GAnCGhqJ,EAAAG,OAAA,SAoCjB8pJ,GApCiB,yBAAAjqJ,EAAAK,SAAAR,EAAA,kBAAH,yBAAA1a,EAAAujB,MAAAzJ,KAAA0J,YAAA,GAuCvB45B,oBAAU,WACR,GAAI3mD,IAAQA,GAAK4iB,SAAW5iB,GAAK4iB,QAAQ2rB,QAAU4/H,EAGjD,OAFAc,KAEO,WACDT,EAAW/jG,SACboB,aAAa2iG,EAAW/jG,WAI7B,CAACzqE,GAAMmuK,IAGVxnH,oBAAU,WACRynH,GAAqB,GACrBE,EAAe,IACfJ,EAAoB,IACnB,CAAC9H,GAAaA,EAAUpyD,MAAOoyD,GAAaA,EAAUnyD,IAAK9tD,IAE9DQ,oBAAU,WAES,MAAbmlH,IACF0C,EAAW/jG,QAAUrR,OAAO0S,WAAW,WACrCyiG,EAAY,IACX,OAEJ,CAACzC,IAKJ,IAAMwD,GACJjB,GAAe92L,OAAA60B,EAAA,EAAA70B,CAAI82L,GAAa5sF,KAAK,SAACjmF,EAAGqmD,GAAJ,OAAU,IAAIvvB,KAAK92B,EAAEs6C,YAAY01H,UAAY,IAAIl5I,KAAKuvB,EAAE/L,YAAY01H,YAMrGN,GAAuB,SAAChyH,GAC5BkI,EAAYlI,IAGd,OACEhuC,EAAA1P,EAAA2P,cAAC0vG,GAADtjI,OAAA8F,OAAA,CACEg6G,eAAe,GACX0jB,aACFp+H,IAAUsF,UACVipB,EAAA1P,EAAA2P,cAACokK,GAAD,CAAiB3D,kBAAmB,kBAAM7B,GAAY1D,GAAkB1pL,IAAUsF,cAhLrD,CAAC,CAAE8a,MAAO,kBAAmBoC,QAAQ,GAAQ,CAAEpC,MAAO,eA4KvF,CAOElJ,SAAU42E,EACV2sB,cAAeH,IAEf/rF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAWiB,UAAU,+BACjBu1D,SAAsBt6F,IAATu4B,KAAuBkL,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,OACpCw2D,SAAsBt6F,IAATu4B,KAAuB9J,IACpCgV,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACED,EAAA1P,EAAA2P,cAAC03J,GAAD,CACElC,eAAgByF,EAAUnyD,IAC1BysD,iBAAkB0F,EAAUpyD,MAC5B6sD,MAAO31J,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAW,sBACrBqtD,OAAQoxG,IAED,oBAARpxB,GACC3uI,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,gCACdtB,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAM8uI,iBAAkByzB,EAAQhkM,GAAG,oBAAoBgiC,SAAU,SAACmuI,GAAD,OAAgB8zB,EAAU9zB,KACzF/uI,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAKgvI,SAAU,QAASx9I,MAAM,UAC9BmO,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAKgvI,SAAU,QAASx9I,MAAM,cAOxB,UAAX+wK,GAA8B,oBAARj0B,GAAsC,cAARA,IACrDwsB,IAC4B,IAA5BA,GAAiBh7J,SAChB8iK,GACCjjK,EAAA1P,EAAA2P,cAAA,OACEG,MAAO,CACLoB,QAAS,OACTo8D,eAAgB,SAChBmO,WAAY,SACZ8C,OAAQ,OACR/hF,MAAO,OACPu/E,cAAe,WAGjBrsE,EAAA1P,EAAA2P,cAACqkK,GAAD,CAAqB1D,SAAUA,IAC/B5gK,EAAA1P,EAAA2P,cAAA,uCAIG,cAAR0uI,GAAwBwsB,IAAoBA,GAAiBh7J,OAAS,GACrEH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG+iK,GACCjjK,EAAA1P,EAAA2P,cAACskK,GAAD,CACExE,gBAAiBA,EACjB7E,UAAW,CAAEnyD,IAAKmyD,EAAUnyD,IAAMD,MAAOoyD,EAAUpyD,OACnDqyD,iBAAkBiJ,IAAkC,GACpD7xF,UAAWuwF,EACX90H,SAAUA,EACVgyH,qBAAsBA,GACtB38H,MAAOvuC,GAAK4iB,QAAQ2rB,eAKL9mE,IAArB4+L,IAAmCA,IAAgD,IAA5BA,GAAiBh7J,SACxEH,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBAAf,+BAGQ,UAAXshK,GAA8B,oBAARj0B,GAA6BwsB,IAAgD,IAA5BA,GAAiBh7J,QACvFH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG+iK,GACCjjK,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGqjK,GACCvjK,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,gBAAgBlB,MAAO,CAAE2gE,MAAO,QAC5CwiG,IAGHA,GACAvjK,EAAA1P,EAAA2P,cAACukK,GAAD,CACErJ,iBAAkBiJ,IAAkC,GACpDlJ,UAAW,CAAEnyD,IAAKmyD,EAAUnyD,IAAMD,MAAOoyD,EAAUpyD,WAOnD,UAAX85D,GAA8B,oBAARj0B,GAA6BwsB,IAAoBA,GAAiBh7J,OAAS,GAChGH,EAAA1P,EAAA2P,cAACwkK,GAAD,CACE1E,gBAAiBA,EACjB5E,iBAAkBA,GAClB5oF,UAAWuwF,EACX90H,SAAUA,EACV8xH,iBAzGW,SAACvtF,GACxBwwF,EAAexwF,IAyGHytF,qBAAsBA,GACtB38H,MAAOvuC,GAAK4iB,QAAQ2rB,QAGvBr4C,IAASgV,EAAA1P,EAAA2P,cAAA,qCCrRTykK,GAAyB,WACpC,GAAgC,mBAA5Bx2G,OAAOC,SAASk5B,SAClB,OAAOxxG,KAAe8uL,mBAGxB,IAAMz4J,EAAOgiD,OAAOC,SAAS8yC,KAAKh5G,QAAQ,KAAM,IAChD,OAAIsa,IAAEzI,SAASyI,IAAE7sB,OAAOG,MAAiBq2B,GAChCA,OADT,GAMW04J,GAAsB,SAAC14J,EAAkC24J,GACpE,OAAQ34J,GACN,KAAKr2B,KAAeivL,UAClB,OAAOD,IAAUjvL,IAAgBmvL,SAAWlvL,KAAemvL,OAASnvL,KAAeu+I,OACrF,KAAKv+I,KAAeu+I,OAClB,OAAOv+I,KAAe6uH,KACxB,KAAK7uH,KAAe6uH,KAClB,OAAO7uH,KAAeovL,OACxB,KAAKpvL,KAAe8uL,mBAClB,OAAO9uL,KAAemvL,OACxB,QACE,SAmCAE,GAA+B,SAAChkM,GAAkC,IAC9DgrC,EAAgChrC,EAAhCgrC,KAAM24J,EAA0B3jM,EAA1B2jM,MAAO7zI,EAAmB9vD,EAAnB8vD,OAAQt7C,EAAWxU,EAAXwU,OACvByvL,EAAYzvL,GAAUA,EAAO0iF,UAAY1iF,EAAO0iF,SAAS+sG,UACzDC,EAA2B,QAAdD,EAAsB,UAAY,OAC/CE,EACJrlK,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,iBACWF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,wBAG1B,GAAI0vB,IAAWl7C,IAAuBwvL,WACpC,OAAOD,EAET,GAAIr0I,IAAWl7C,IAAuByvL,IAAK,CACzC,IAAMC,EAAiB9vL,GAAUA,EAAOwlE,SAAWxlE,EAAOwlE,QAAQsqH,eAC5DC,EAAmB/vL,GAAUA,EAAOwlE,SAAWxlE,EAAOwlE,QAAQuqH,iBACpE,MAAuB,QAAnBD,EACK,KAEc,UAAnBA,GAA+BC,EAG5BzlK,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,QAAAj4B,OAAoB,QAAdk9L,EAAsB,OAAS,OAArC,KAAAl9L,OAA+Cm9L,IAF7C,KAIX,GAAIp0I,IAAWl7C,IAAuB4vL,OACpC,OAAO1lK,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,aAAAj4B,OAAWm9L,IAEpB,GAAIp0I,IAAWl7C,IAAuB6vL,OACpC,OAAO3lK,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,eAAAj4B,OAAam9L,IAEtB,GAAIp0I,IAAWl7C,IAAuB8vL,OACpC,OAAO5lK,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,uBAET,GAAI8wB,IAAWl7C,IAAuBu7C,MACpC,OAAOrxB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,cAGT,OAAQgM,GACN,KAAKr2B,KAAeivL,UAClB,OAAIpvL,GAAUA,EAAOmwL,gBACZ,KAEFR,EACT,KAAKxvL,KAAemvL,OAClB,OAAOhlK,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,cACT,KAAKrqB,KAAeovL,OAClB,OAAOjlK,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,eAAU2kK,IAAUjvL,IAAgBkwL,SAAW,aAAe,WACvE,QACE,OAAOT,IA2DAU,GAAyB,SACpC/0I,GAEG,IADHhpC,EACG65B,UAAA1hB,OAAA,QAAA5jC,IAAAslD,UAAA,GAAAA,UAAA,GADgC,QAEnC,OAAImP,IAAWl7C,IAAuB4vL,OAC7Br5L,OAAA2tB,EAAA,EAAA3tB,CAAA,GAAG2b,EAAM,wBAEdgpC,IAAWl7C,IAAuB6vL,OAC7Bt5L,OAAA2tB,EAAA,EAAA3tB,CAAA,GAAG2b,EAAM,mBADlB,GAMWg+K,GAA6B,SAACh1I,GACzC,OAAIA,IAAWl7C,IAAuB4vL,OAC7B,YAEL10I,IAAWl7C,IAAuB6vL,OAC7B,gBADT,GAwEWM,GAAyB,SAACT,GACrC,OAAQA,GACN,IAAK,QACH,OACExlK,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,qCADF,kBAIJ,IAAK,eACH,OAAOD,EAAA1P,EAAA2P,cAAA,+CACT,IAAK,MACH,OAAOD,EAAA1P,EAAA2P,cAAA,yDAyBAimK,GAAwB,SAAC/wJ,GAAD,MAA6C,0BAAXA,GAC1DgxJ,GAAkB,SAAChxJ,GAAD,MAClB,YAAXA,GAAmC,wBAAXA,GAEbixJ,GAAmB,SAACjxJ,GAAD,MACnB,mBAAXA,GAA0C,aAAXA,GACpBkxJ,GAAoB,SAAClxJ,GAAD,MAA6C,cAAXA,GACtDmxJ,GAAiC,SAACnxJ,GAAD,OAC5C+wJ,GAAsB/wJ,IAAWgxJ,GAAgBhxJ,IACtCoxJ,GAA8B,SAACpxJ,GAAD,OACzCixJ,GAAiBjxJ,IAAWkxJ,GAAkBlxJ,IAOnCqxJ,GAAwB,SAACpuG,GACpC,IAAIt2D,EAhGwB,SAACs2D,GAC7B,OAAIA,GAA+B,aAAnBA,EAASl7F,MAChB,YAELk7F,GAA+B,aAAnBA,EAASl7F,MAChB,YAELk7F,IAAa71D,IAAEqjI,WAAWxtE,EAASl7F,MAAO,WACrCqlC,IAAEc,UAAU+0D,EAASl7F,OAGvB,UAqFKupM,CAAsBruG,GAUlC,MATc,YAAVt2D,IACFA,GACEs2D,GAAYA,EAASsuG,4BACjB,cAAgB1oH,KAAMoa,EAASsuG,6BAA6BhwJ,OAAO,SACnE,IAEM,cAAV5U,IACFA,EAAK,IAAA75B,OAAO65B,EAAP,MAEAA,GAiBI6kK,GAAgC,SAAC7xK,GAC5C,OAAIA,EAAK0rK,iBAAmBvqL,KAA2B2wL,IAC9C3wL,KAA2B2wL,IAE7B3wL,KAA2B4wL,KAGvBC,GAAoB,SAC/BhyK,EACAiyK,GAEA,IAlBmDC,EAkB7CllK,EA9J4B,SAACmlK,GACnC,OAAQA,GACN,IAAK,MACH,MAAO,iBACT,IAAK,QACH,MAAO,cACT,IAAK,OACH,MAAO,QAuJGC,CAAqBpyK,EAAKqwK,WACxC,OAAQrwK,EAAKqwK,WACX,IAAK,MACH,IAAMgC,EAAoB5kK,IAAEvE,IAAIlJ,EAAM,mBAChCsyK,EACJL,EAAY1uG,kBAAoB91D,IAAExa,KAAKg/K,EAAY1uG,iBAAkB,SAAAmnC,GAAC,OAAIA,EAAE5gI,KAAOuoM,IACrF,OACEnnK,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG4B,EACD9B,EAAA1P,EAAA2P,cAAA,WACCmnK,GAAmBA,EAAgBC,aAG1C,IAAK,QACH,OACErnK,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG4B,EACD9B,EAAA1P,EAAA2P,cAAA,WACCsC,IAAE6d,KAAK7d,IAAE3E,OAAO9I,EAAKwyK,MAAO,SAAApO,GAAC,QAAMA,IAAI,OAG9C,IAAK,OACH,IAAM95L,EACJ2nM,EAAYvtG,kBAzCiCwtG,EA0CRzkK,IAAExa,KAAKg/K,EAAYvtG,eAAgB,SAAA7iB,GAAC,OAAIA,EAAE/3E,KAAOk2B,EAAKgrI,oBAzC5EknC,EAAcxG,iBAAmBvqL,KAA2B2wL,IACxE7wL,KAASwxL,cAEXxxL,KAASyxL,UAuCZ,OACExnK,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG4B,EACD9B,EAAA1P,EAAA2P,cAAA,WACC7gC,GAAQmjC,IAAEc,UAtDc,SAACjkC,GAClC,OAAIA,IAAS2W,KAASwxL,cACbxxL,KAASwxL,cAEXxxL,KAASyxL,SAkDaC,CAAoBroM,OAMtCsoM,GAAyB,SAACC,GACrC,OAAQA,GACN,IAAK,YACH,MAAO,yBACT,IAAK,WACH,MAAO,oBAaAC,GAA8B,SAACC,GAC1C,OACE7nK,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,QAAf,aACaumK,EAAKC,SAChB9nK,EAAA1P,EAAA2P,cAAA,WACC4nK,EAAKE,SACJ/nK,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,sBACiB2nK,EAAKE,SADtB,KACkCF,EAAKR,YADvC,KAIAQ,EAAKR,cAsCAW,GAAkC,SAACH,GAC9C,OACE7nK,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,aAAf,aACaumK,EAAKC,SAChB9nK,EAAA1P,EAAA2P,cAAA,WAFF,gBAGgB4nK,EAAKb,eAAiBa,EAAKb,cAAczG,WACtDsH,EAAKtpM,MACJyhC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WADF,SAES4nK,EAAKtpM,MAGfspM,EAAK5qM,MACJ+iC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACC4nK,EAAK5qM,KACL4qM,EAAK5qM,MAAQ4qM,EAAKI,cAAgB,KAAO,GACzCJ,EAAKI,cAJR,IAIwBJ,EAAK1qM,WAC3B6iC,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAAMzhC,GAAE,oBAAAqJ,OAAsB4/L,EAAKzqM,SAAWgC,KAAK,WAGtDyoM,EAAKK,cACJloK,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WADF,sBC1eKkoK,GAA4D,CACvE16K,SAAU,MACV26K,eAAgB,MAChBC,SAAU,OACVC,SAAU,MACVC,yBAA0B,UAC1BC,sBAAuB,UACvBC,0BAA2B,UAC3BC,oBAAqB,UACrBC,QAAS,UACTC,WAAY,OACZC,SAAU,MACVC,gBAAiB,UACjBC,KAAM,OACNC,SAAU,OACVC,YAAa,OACb37K,UAAW,OAGA47K,GAAwG,SAAA7qK,GAK/G,IAJJ8W,EAII9W,EAJJ8W,OACA7T,EAGIjD,EAHJiD,UACAgwD,EAEIjzD,EAFJizD,SACA63G,EACI9qK,EADJ8qK,YAEM3Z,EAAcr6I,GAASgzJ,GAAehzJ,IAAgB,GAC5D,OACEnV,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAS,GAAAr5B,OAAKunL,EAAL,KAAAvnL,OAAoBq5B,IAAcgwD,GAAY/uD,IAAEc,UAAU8R,IACxD,YAAhBq6I,GAA6B2Z,GAC5BnpK,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WAEAD,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAclB,MAAO,CAAEgpK,UAAW,WAAlD,iFCvBGC,GAAsD,WAAM,IAC/DjtH,EAAeN,cAAfM,WAEFl+E,EAAYgxF,YAAYy0B,KACxBtjB,EAAWzlB,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE6zC,KAAKgvB,WAExCmN,EAA6Bte,YAAYhU,IAAQsyB,4BACjDz7B,EAAYmd,YAAYo6G,IAAoBv3H,WAC5Cw3H,EAAgBr6G,YAAYo6G,IAAoBC,eAChDC,EAAqB5uH,YAAiB,SAAAp9C,GAAC,OAAI8rK,IAAoBG,cAAcjsK,EAAG,eAChF66D,EAAmBnJ,YAAYo6G,IAAoBjxG,kBACnDqxG,EAA4B9uH,YAAiB,SAAAp9C,GAAC,OAAI8rK,IAAoBG,cAAcjsK,EAAG,sBACvFw0C,EAAuBkd,YAAYo6G,IAAoBt3H,sBACvD23H,EAAgC/uH,YAAiB,SAAAp9C,GAAC,OACtD8rK,IAAoBG,cAAcjsK,EAAG,0BAEjCosK,EAAoBhvH,YACxB,SAAAp9C,GAAC,OAAIA,EAAE09C,SAAW19C,EAAE09C,QAAQC,uBAAyB39C,EAAE09C,QAAQC,sBAAsB0uH,gBAAgB3rM,YAEjG1B,EAAgBo+E,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE09C,QAAQqb,gBAAkB/4D,EAAE09C,QAAQqb,eAAe/5F,gBAC3FstM,EAA4C,aAAlBttM,GAAkD,WAAlBA,GAAgD,wBAAlBA,EACxFutM,EAAY,gJArBqDhwH,EAuBvBC,qBAvBuBC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAuBhEiwH,EAvBgE/vH,EAAA,GAuB9CgwH,EAvB8ChwH,EAAA,GAAAuhB,EAwBrCxhB,oBAAS,GAxB4ByhB,EAAApvF,OAAAqoD,EAAA,EAAAroD,CAAAmvF,EAAA,GAwBhE0uG,EAxBgEzuG,EAAA,GAwBrD0uG,EAxBqD1uG,EAAA,GAyBvEhgB,oBAAU,WACJv9E,IAAc8rM,IAChBC,EAAoB/rM,GACpBisM,GAAa,KAEd,CAACjsM,EAAW8rM,EAAkB5tH,EAAWxK,aA9B2B,IAAAgqB,EAgCnB5hB,qBAhCmB6hB,EAAAxvF,OAAAqoD,EAAA,EAAAroD,CAAAuvF,EAAA,GAgChEwuG,EAhCgEvuG,EAAA,GAgC5CwuG,EAhC4CxuG,EAAA,GAkCvEpgB,oBAAU,WACJmuH,GAAqBA,IAAsB1rM,GAAagsM,IACrDV,GACHptH,EAAWxK,WAAWG,UAAUp1B,IAAIrQ,UAEjCo9J,GACHttH,EAAWxK,WAAWymB,iBAAiB17C,IAAIrQ,QAAQpuC,GAEhDyrM,GACHvtH,EAAWxK,WAAWI,qBAAqBr1B,IAAIrQ,QAAQpuC,GAEzDisM,GAAa,KAEd,CACDjsM,EACA0rM,EACAJ,EACAE,EACAC,EACAvtH,EAAWxK,WACXs4H,IAGFzuH,oBAAU,WAGNv9E,IACCsrM,KACED,IAAkBx3H,GAAew3H,IAAkBhnK,IAAEm+C,KAAK3O,EAAW,SAAA4iB,GAAC,OAAIA,EAAE/1F,KAAO2qM,MAEtFntH,EAAWxK,WAAWG,UAAUp1B,IAAIrQ,WAErC,CAACpuC,EAAW6zE,EAAWw3H,EAAeC,EAAoBptH,EAAWxK,aAExE6J,oBAAU,YAEJv9E,GAAcwrM,GAA8BrxG,GAC9Cjc,EAAWxK,WAAWymB,iBAAiB17C,IAAIrQ,QAAQpuC,IAEpD,CAACA,EAAWm6F,EAAkBqxG,EAA2BttH,EAAWxK,aAEvE6J,oBAAU,YAEJv9E,GAAcyrM,GAAkC33H,GAClDoK,EAAWxK,WAAWI,qBAAqBr1B,IAAIrQ,QAAQpuC,IAExD,CAACA,EAAW8zE,EAAsB23H,EAA+BvtH,EAAWxK,aAE/E,IAAMgd,EAAWnsD,sBAAY,WAC3B,GAAI2nK,EAAoB,CACtB,IAAME,EAAO,wBAAAriM,OAA2Bo4F,EAA3B,KACbjkB,EAAWxK,WAAWG,UAAUm2D,OAAO57F,QAAQ,CAAEpuC,YAAWqsM,WAAYH,EAAoBE,YAC5FD,OAAsB9tM,KAEvB,CAAC2B,EAAWmiG,EAAU+pG,EAAoBhuH,EAAWxK,aAElDllD,EAAU0S,kBACd,iBAAM,CACJ,CACE4wD,OAAQ,cACRpxF,GAAI,cACJ2mH,KAAM,SAAAlnF,GAAA,IAAGypH,EAAHzpH,EAAGypH,IAAH,OACJ9nH,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MACG4nH,EAAI/oJ,SAASyrM,kBACqB,gBAAlC1iD,EAAI/oJ,SAASyrM,kBACsB,+BAAlC1iD,EAAI/oJ,SAASyrM,iBAEXplG,aACE0iD,EAAI/oJ,SAAS8rE,OACTi9E,EAAI/oJ,SAAS8rE,OACbi9E,EAAI/oJ,SAAS0rM,gBACb3iD,EAAI/oJ,SAAS0rM,gBACb,EACJ,CAAEplG,UAAU,IAPd,eAQG,IACPrlE,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAmC,aAA3BwmH,EAAI/oJ,SAASusH,UAA2B,aAAe,WAC/EtrF,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAACyqK,GAAD,CAAwBv1J,OAAQ2yG,EAAI/oJ,SAAS7B,OAC1CspM,GAAsB1+C,EAAI/oJ,cAKnC,CACEixF,OAAQ,QACRpxF,GAAI,OACJ2mH,KAAI,SAAA0iC,GAAA,SAAA1iC,EAAAroC,GAAA,OAAA+qE,EAAArmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA4oG,EAAA5oG,YAAAkmE,EAAA,CAAE,SAAAriF,GAAA,IAAG4kH,EAAH5kH,EAAG4kH,IAAH,OAA6B9nH,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,QAAQwmH,EAAI/oJ,SAASD,SAE1E,CACEkxF,OAAQ,SACRpxF,GAAI,SACJ2mH,KAAI,SAAA4iC,GAAA,SAAA5iC,EAAApoC,GAAA,OAAAgrE,EAAAvmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAA8oG,EAAA9oG,YAAAkmE,EAAA,CAAE,SAAAhxD,GAAA,IAAGuzF,EAAHvzF,EAAGuzF,IAAH,OAA6Bg/C,GAAkBh/C,EAAI/oJ,SAAU,CAAEs5F,wBAEvE,CACErI,OAAQ,mBACRpxF,GAAI,aACJ+oJ,SAAS,EACTC,SAAUq4C,KACVxM,eAAe,EACfC,cAAc,EACdnuE,KAAI,SAAA8iC,GAAA,SAAA9iC,EAAAjoC,GAAA,OAAA+qE,EAAAzmG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAgpG,EAAAhpG,YAAAkmE,EAAA,CAAE,SAAAjoB,GAAA,IAAGwqD,EAAHxqD,EAAGwqD,IAAH,OAA6B9pE,KAAM8pE,EAAI/oJ,SAAS++J,YAAYpnH,OAAO,sBAE3E,CACEs5C,OAAQ,IACRpxF,GAAI,UACJ2mH,KAAI,SAAAijC,GAAA,SAAAjjC,EAAAhoC,GAAA,OAAAirE,EAAA5mG,MAAAzJ,KAAA0J,WAAA,OAAA0jE,EAAAlmE,SAAA,kBAAAmpG,EAAAnpG,YAAAkmE,EAAA,CAAE,SAAAmkB,GAA6B,IAA1Boe,EAA0Bpe,EAA1Boe,IACP,MAA2B,6BAAvBA,EAAI/oJ,SAAS7B,MAEb8iC,EAAA1P,EAAA2P,cAAA,UACEqB,UAAU,gBACVliC,KAAK,SACLyyB,MAAM,SACN4P,QAAS,kBAAM4oK,EAAsBviD,EAAI/oJ,SAASH,MAElDohC,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,+BAIZ,QAIb,CAAC+2D,IAGGvjE,EAAOsK,kBAAQ,WACnB,OAAOmD,IAAEnH,IAAImH,IAAE81C,QAAQtG,EAAW,SAAA4iB,GAAC,OAAIA,EAAEmpE,YAAY,QAAS,SAAAnpE,GAAC,OAAAtoF,OAAAy0B,EAAA,EAAAz0B,CAAA,GAC1DsoF,EAD0D,CAE7DnzD,QAAqB,aAAZmzD,EAAEz3F,MAAuB,CAAE41L,QAAS,aAAWv2L,OAEzD,CAACw1E,IAEJ,OACE/xC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGstE,IAA+Bs8F,GAC9B9pK,EAAA1P,EAAA2P,cAAA,SACED,EAAA1P,EAAA2P,cAACsiE,EAAA,EAAD,CAAMjhE,UAAU,wBAAwBi0D,GAAE,IAAAttF,OAAM2N,IAAgBkwL,SAAtB,KAAA79L,OAAkC4N,KAAeivL,YACzF9kK,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,qBADf,mBAEQ,IACRtB,EAAA1P,EAAA2P,cAACsiE,EAAA,EAAD,CAAMjhE,UAAU,wBAAwBi0D,GAAE,IAAAttF,OAAM2N,IAAgB2lL,QAAtB,KAAAtzL,OAAiC4N,KAAeivL,YACxF9kK,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,oBADf,iBAEQ,IACRtB,EAAA1P,EAAA2P,cAACsiE,EAAA,EAAD,CAAMjhE,UAAU,wBAAwBi0D,GAAE,IAAAttF,OAAM2N,IAAgBmvL,SAAtB,KAAA98L,OAAkC4N,KAAeivL,YACzF9kK,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,sBADf,oBAEQ,KAGVywC,GAAkC,IAArBA,EAAU5xC,QAAgB2pK,GACvC9pK,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,QACVyoK,EADH,IACc/pK,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,SAGb0xC,GAAay3H,IAAuBxpK,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAS8a,KAAK,UACpD42B,GAAkC,IAArBA,EAAU5xC,OACtBH,EAAA1P,EAAA2P,cAACylF,GAAD,CACEjS,SAAS,YACTk4C,UAAQ,EACRH,aAAc,CAAC,MAAO,MAAO,MAAO,MAAO,MAC3CI,eAAa,EACbC,WAAYtpH,IAAE4Y,KAAKzuB,GACnBA,QAASA,EACToI,KAAMA,IAGTg1K,EACG9pK,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,2CAAuDL,EAAA1P,EAAA2P,cAAA,WAAM8pK,EAA7D,IAAwE/pK,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,OAExEL,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,4CAIH+pK,GACCpqK,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAOquD,MAAM,EAAMoB,QAAS,kBAAM,GAAM66G,SAAS,UAC/C3qK,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeC,OAAhB,KACEhwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeI,MAAhB,iBAEFnwD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeK,KAAhB,KACEpwD,EAAA1P,EAAA2P,cAAA,4DAEFD,EAAA1P,EAAA2P,cAAC8vD,GAAA,EAAeW,OAAhB,CAAuBpvD,UAAU,0BAC/BtB,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,YAAYnvD,QAAS,kBAAM4oK,OAAsB9tM,KAAjE,WAGAyjC,EAAA1P,EAAA2P,cAAC0wD,GAAA,EAAD,CAAQC,QAAQ,SAASnvD,QAASmtD,GAAlC,uBC/NG,SAASg8G,KACtB,IACMC,EADUnpC,OACUzlK,KAAYwkK,IAEtC,OACEzgI,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAAA,+LAEuE,IACrED,EAAA1P,EAAA2P,cAAA,KAAGwyC,KAAK,oBAAR,kBAHF,2CAGwF,IACtFzyC,EAAA1P,EAAA2P,cAAA,KAAGwyC,KAAK,oBAAR,kBAJF,kBAI+D,IAC7DzyC,EAAA1P,EAAA2P,cAAA,KAAGwyC,KAAK,mCAAR,4BALF,KAOCo4H,EAAS7qK,EAAA1P,EAAA2P,cAAC6qK,GAAD,MAA8C9qK,EAAA1P,EAAA2P,cAAC8qK,GAAD,OAKvD,SAASD,KACd,OACE9qK,EAAA1P,EAAA2P,cAAA,SACED,EAAA1P,EAAA2P,cAAA,KAAGqiE,OAAO,SAAS7vB,KAAK,0EAA0E5gD,MAAM,gCAAxG,gCACAmO,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,KAAGqiE,OAAO,SAAS7vB,KAAK,sFAAsF5gD,MAAM,yBAApH,yBACAmO,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,KAAGqiE,OAAO,SAAS7vB,KAAK,sFAAsF5gD,MAAM,yBAApH,yBACAmO,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,KAAGqiE,OAAO,SAAS7vB,KAAK,qFAAqF5gD,MAAM,wBAAnH,wBACAmO,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,KAAGqiE,OAAO,SAAS7vB,KAAK,mFAAmF5gD,MAAM,sBAAjH,sBACAmO,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,KAAGqiE,OAAO,SAAS7vB,KAAK,gGAAgG5gD,MAAM,8BAA9H,+BAKC,SAASk5K,KACd,OACE/qK,EAAA1P,EAAA2P,cAAA,SACID,EAAA1P,EAAA2P,cAAA,KACEqiE,OAAO,SACP7vB,KAAK,wFACL5gD,MAAM,+CAHR,+CAOAmO,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,KACEqiE,OAAO,SACP7vB,KAAK,0FACL5gD,MAAM,gCAHR,gCAOAmO,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,KACEqiE,OAAO,SACP7vB,KAAK,uFACL5gD,MAAM,yBAHR,yBAOAmO,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,KACEqiE,OAAO,SACP7vB,KAAK,oGACL5gD,MAAM,gDAHR,gDAOAmO,EAAA1P,EAAA2P,cAAA,WACAD,EAAA1P,EAAA2P,cAAA,KACEqiE,OAAO,SACP7vB,KAAK,yFACL5gD,MAAM,8BAHR,+BCpED,IAAMm5K,GAAoD,WAC/D,IAAMvuM,EAAcm+E,YAAiBM,KAAQ97E,MAEvCyrM,EAAoB,QADVnpC,KAEVhsG,EACHj5D,GAA0C,mBAA3BA,EAAY4iD,YAC3B5iD,GAA0C,iBAA3BA,EAAY4iD,YAC3B5iD,GAA0C,aAA3BA,EAAY4iD,YAC3B5iD,GAA0C,YAA3BA,EAAY4iD,YAC3B5iD,GAA0C,kBAA3BA,EAAY4iD,YAC3B5iD,GAA0C,SAA3BA,EAAY4iD,YAC3B5iD,GAA0C,yBAA3BA,EAAY4iD,WAGxB4rJ,EAAe7rK,kBAAQ,WAC3B,QAAoB7iC,IAAhBE,EACF,OAAOujC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,MAET,OAAQzjC,EAAY4iD,YAClB,IAAK,kBACL,IAAK,eACL,IAAK,WACL,IAAK,UACL,IAAK,gBACL,IAAK,OACL,IAAK,uBACH,OAAOrf,EAAA1P,EAAA2P,cAAC2qK,GAAD,MACT,QACE,OAAO5qK,EAAA1P,EAAA2P,cAACirK,GAAD,QAEV,CAACzuM,EAAaouM,EAAOn1I,IACxB,OACE11B,EAAA1P,EAAA2P,cAAC0vG,GAAUE,aAAcp+H,IAAUmF,iBACjCopB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KAAY4qK,KC/BX,SAASE,GAAsBz/F,EAAsCkjE,GAC1E,IACMz7H,EAAMu4D,EADCkjB,gBAEb,OAAOxvF,kBAAQ,kBAAQmD,IAAEgnH,YAAYqlB,IAAersI,IAAEhF,MAAM4V,GAAOy7H,EAAaz7H,GAAM,CAACy7H,EAAYz7H,ICZrG,IAOavG,GAAkBvgC,OAAAy0B,EAAA,EAAAz0B,CAAA,GAC1B6+G,KAD0B,CAE7BkgF,iBAAkB9mK,gCATM,gCASNA,GAClB+mK,uBAAwB/mK,gCATO,sCASPA,KCApBgnK,GAAsB1jG,KAC1B,SAAC1qG,EAAyB+3B,EAAiCjM,GAA3D,OAA+E9rB,EAAMquM,qBACrF,SAACruM,EAAyB+3B,EAAiCjM,GAA3D,OAA+EiM,GAC/E,SAACs2K,EAA8Dt2K,GAC7D,IAAMu2K,EAAYD,GAA4C,GAC9D,OAAOhpK,IAAEipK,GACN5tK,OAAO,SAAA8E,GAAC,OAAKzN,GAASyN,EAAEqP,mBAAqB9c,EAAO8c,mBACpDsmC,QACC,SAAA31C,GAAC,SAAAz6B,OAAOy6B,EAAElkC,KAAK6gD,WAAd,KAAAp3C,OAA4By6B,EAAEy2B,qBAAuBxuC,KAAqB+X,EAAEy2B,sBAAwB,MAEtGn8B,SAVqB4qE,CAa1B,SAACrlE,EAAGtN,EAAiCjM,GAArC,SAAA/gB,OACK+gB,EADL,KAAA/gB,OACgBgtB,EAASA,EAAO8c,iBAAmB,GADnD,0BAIK,SAAS05J,KAAwB,IAAA3yF,EACOC,eADPC,EAAA3sG,OAAAqoD,EAAA,EAAAroD,CAAAysG,EAAA,GAAAG,EAAAD,EAAA,GAC7BE,EAD6BD,EAC7BC,WAAYC,EADiBF,EACjBE,SAAY1hC,EADKuhC,EAAA,GAKhCvjE,EAAM2jC,aAAO,yBACbkgC,EAAa72E,sBACjB,SAAC88B,GACC25C,EAAW,CAAE91B,QAAS7jB,KAExB,CAAC25C,IAEGiB,EAA+B13E,sBACnC,SAAmC+gD,EAAUxmD,EAA4B97B,GAAzE,OACEi4G,EAAS31B,EAAOxmD,EAAO97B,IACzB,CAACi4G,IAEGlkF,EAASo3F,eAoBf,MAAO,CAAElS,cAAab,aAAY+xF,uBAnBH5oK,sBAC7B,SAAC/sB,GACC,IAAM4yD,EAAiC/lC,IAAEnH,IAAI1lB,GAAU,GAAI,SAAA6hC,GAAC,OAAAlrC,OAAAy0B,EAAA,EAAAz0B,CAAA,GACvDkrC,EADuD,CAE1DxF,iBAAkB9c,GAAUA,EAAO8c,iBAAmB9c,EAAO8c,iBAAmB,cAElF0D,EAAG,6BAA+B6yB,GAElCmP,EAAS7qC,GAAmBy+J,uBAAuB,CAAE58I,YAAa6Z,MAQpE,CAACmP,EAAUxiD,KCxDR,IAAMy2K,GAAiD,WAAM,IAC1D1iL,EAAYmgG,eAAZngG,QACAu8D,EAAaqpC,eAAbrpC,SACFtwD,EAASo3F,eACPg/E,EAA2BI,KAA3BJ,uBAEFlhK,EADiB2xC,cAAfM,WAC0B03C,WAAW1yC,UACvCrtD,EAAU6mD,YAAiB,SAAAp9C,GAAC,OAAIorF,YAAaprF,EAAGxU,KAChD+qG,EAAetxF,sBACnB,SAACqtF,EAAoBjxF,GACnBwsK,EAAuB,MACnBt3K,GACFoW,EAAepW,EAAS8K,IAG5B,CAACsL,EAAgBpW,EAASs3K,IAEtBzqK,EAAW6B,sBACf,SAACzF,GACC,IAAM6B,EAAc7B,EAAQA,EAAMlI,UAAOv4B,EACnCuzH,EAAajxF,GAAeA,EAAY5J,OAC1C66F,GAAcjxF,GAChBk1F,EAAajE,EAAYjxF,IAG7B,CAACk1F,IAEGvzF,EAAUiC,sBAAY,WAC1BsxF,EAAa,QAAIx3H,IAChB,CAACw3H,IACJ,OACE/zF,EAAA1P,EAAA2P,cAAC+zF,GAAD,CACE1oC,UAAW75E,IAAUgF,YACrBwe,OAAQA,EACRswD,SAAUA,EACV3kD,SAAUA,EACVJ,QAASA,KCtCFmrK,GAAiB,SAAC12K,GAC7B,IAAMjM,EAAUyrF,eACVhmD,EAAcmsB,YAAiB,SAAAp9C,GAAC,OAAIouK,YAA8BpuK,EAAGvI,GAAU,MAC/Ew1C,EAAcmQ,YAAiB,SAAAp9C,GAAC,OAAIquK,IAAqBC,kBAAkBtuK,EAAGvI,GAAU,GAAIjM,KAC1Fu2E,EAAYssB,KAAZtsB,QACFwsG,EAAuB3sK,kBAAQ,kBAAMqvB,GAAeA,EAAYo/B,YAAY,CAACp/B,IAE7E88I,EAAsBJ,GAAmB,SAAA3tK,GAAC,OAAIA,EAAE+tK,sBAE9CnvH,EAAeN,cAAfM,WAQR,OAPAX,oBAAU,WACR,IAAM58C,EAAc5J,QAAkB14B,EAClCsiC,GACFu9C,EAAW3R,YAAY59B,eAAe7jB,EAAS6V,EAAa0gE,EAAQ11B,YAAa0hI,GAAuB,KAEzG,CAAChsG,EAAQ11B,cAEL,CAAEY,cAAashI,yBCtBXC,GAAoC,SAACxuK,EAAc4F,GAC9D,QAAkD7mC,IAA9CihC,EAAEnJ,OAAO0jE,cAAcjjE,KAAKsO,EAAMnO,QAAtC,CAD6G,IAAAg3K,EAIxEzuK,EAAEnJ,OAAO0jE,cAAcjjE,KAAKsO,EAAMnO,QAA/Dyb,EAJqGu7J,EAIrGv7J,SAAUZ,EAJ2Fm8J,EAI3Fn8J,eAClB,OAAIY,GAAYA,EAAW,EAClBA,EAEFZ,IAGIo8J,GAA6B,CACxCC,kBAAmBvkG,KACjB,CAACokG,GAAmC,SAACxuK,EAAc4F,GAAf,OAA6DA,EAAMmkB,SACvG,SAAC6kJ,EAAoC7kJ,GACnC,YAA0BhrD,IAAnB6vM,GAAsCA,EAAiB7kJ,GAH/CqgD,CAKjB,SAACpqE,EAAc4F,GAAf,2BAAAn7B,OAAkEm7B,EAAMnO,UAC1E+2K,kCAAmCpkG,KACjC,CAACokG,IACD,SAACI,GAAD,OAAwCA,GAFPxkG,CAGjC,SAACpqE,EAAc4F,GAAf,2CAAAn7B,OAAkFm7B,EAAMnO,WCjB/Eo3K,GAAuD,SAAAhuK,GAW9D,IAVJypH,EAUIzpH,EAVJypH,IACAx5H,EASI+P,EATJ/P,MACAg+K,EAQIjuK,EARJiuK,OACAjY,EAOIh2J,EAPJg2J,SACAkY,EAMIluK,EANJkuK,WACApxJ,EAKI9c,EALJ8c,KACAsxH,EAIIpuI,EAJJouI,mBACA+/B,EAGInuK,EAHJmuK,cACA3gD,EAEIxtH,EAFJwtH,WACAL,EACIntH,EADJmtH,aAGMihD,EAAuBt1H,IAAM+rB,OAA4B,MACzDjuE,EAASy3K,eAETC,EAAe/pD,aAAgBznG,GALjCyvG,EAM0C9C,EAAI/oJ,SAA1CyiC,EANJopH,EAMIppH,QAAS2iB,EANbymG,EAMazmG,OAAQyoJ,EANrBhiD,EAMqBgiD,iBAGzBnxH,oBAAU,WACJmxH,GACFH,EAAqBltG,SACnBktG,EAAqBltG,QAAQoN,eAAe,CAAEC,SAAU,SAAUrkF,MAAO,YAE5E,IAEH,IAAMskL,EAActqK,IAAEvE,IAAIwD,EAAS,UAAW,IACxCmhH,EAAUpgH,IAAEvE,IAAIwD,EAAS,eAAWjlC,GACpCuwM,EAAuBlyH,YAAiB,SAAAp9C,GAAC,OAC7C0uK,GAA2BC,kBAAkB3uK,EAAG,CAAEvI,SAAQsyB,OAAQpD,IAAW,MAEzE4oJ,EAAWjlD,EAAIklD,cACfC,EAAY1qK,IAAEvE,IAAIwD,EAAS,iBAAajlC,GACxC2wM,EAAc3qK,IAAEqjF,WAAWqnF,GAAaA,EAAUnlD,EAAKx5H,EAAOy+K,QAAYxwM,EAChF,GAAI2wM,EACF,OAAOA,EAET,IAAMC,EAAgB9Y,EAAY9xJ,IAAEqjF,WAAWyuE,GAAYA,EAASvsC,GAAOusC,EAAYwY,EAEvF,OACE7sK,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,KAAA5zB,OAAA8F,OAAA,GACM46L,EADN,CAEE/kL,IAAKskL,EACLhrK,UAAW6rK,EACX1rK,QAAS8qK,EAAa,SAAA7pK,GAAC,OAAI6pK,EAAW7pK,EAAGolH,SAAOvrJ,EAChDkhG,IAAKmvG,EAAmBH,OAAuBlwM,IAE9CurJ,EAAIslD,MAAMhyK,IAAI,SAACiyK,EAAW/+K,GACzB,IAAMg/K,EAAe/qK,IAAEzI,SAASuzK,EAAKpqD,OAAOrkJ,GAAI,SAE1C2uM,EADkC,WAAnBF,EAAKpqD,OAAOrkJ,GACC,GAAKkuM,IAAyBQ,EAAe,UAAY,WACrFE,EAAYH,EAAKpqD,OAAOjzD,OACxBjqB,EAASxjC,IAAEqjF,WAAW4nF,GAAaA,EAAUnhM,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAKmgM,EAAN,CAAqBvpD,OAAQ,MAAeuqD,EACxFC,EAAclrK,IAAEqjF,WAAW+8B,GAAWA,EAAQ0qD,GAAQ1qD,EACtD+qD,EAAYL,EAAKM,eACjBC,EAAsC,uBAAnBP,EAAKpqD,OAAOrkJ,GAA8B,kBAAerC,EAC5EsxM,EAAY57G,aAAc,CAC9B06G,EACApqK,IAAEvE,IAAI0vK,EAAW,iBAAanxM,GAC9BkxM,EACAF,EACAK,IAEIE,EAActiD,IAAiBjpH,IAAE4R,QAAQq3G,GAAgBA,EAAal9H,QAAS/xB,EAC/EyrB,EAAMua,IAAEvE,IAAI0vK,EAAW,MAAjB,MAAAzlM,OAA8BqmB,IAC1C,OACE0R,EAAA1P,EAAA2P,cAACI,EAAA,GAADh0B,OAAA8F,OAAA,CACE6V,IAAKA,GACD0lL,EAFN,CAGEI,YAAaA,EACbjiD,WAAYA,EACZ9lF,OAAQ0mG,OAAqBlwK,EAAYwpE,EACzCzkC,UAAWusK,IAEVR,EAAK/hC,OAAO,cCvDpB,SAASyiC,GAAsBl0K,GACpC,YAAyCt9B,IAAlCgmC,IAAEvE,IAAInE,EAAK,YAAQt9B,SAAwCA,IAAZs9B,EAAIwtB,ICA5D,IA6BM2mJ,GAAoB72H,IAAMi8F,KA7BgB,SAAA/0I,GAS1C,IARJ4vK,EAQI5vK,EARJ4vK,WACAxsK,EAOIpD,EAPJoD,QACAosD,EAMIxvD,EANJwvD,WACAqgH,EAKI7vK,EALJ6vK,SACAznE,EAIIpoG,EAJJooG,WACA0nE,EAGI9vK,EAHJ8vK,MACAC,EAEI/vK,EAFJ+vK,oBACAC,EACIhwK,EADJgwK,oBAEM/sK,EAAYlC,kBAAQ,oBAAAn3B,OAASmmM,EAAT,cAAyC,CAACA,IACpE,OACEpuK,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAWA,EAAWG,QAASA,GACjCzB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,aAAagtK,QAAS,IACjCJ,GAAYluK,EAAA1P,EAAA2P,cAAA,WACZiuK,GAAYluK,EAAA1P,EAAA2P,cAAA,QAAMG,MAAO,CAAE2gE,MAAO,SAAWz/D,UAAU,YAA3C,SACLtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,wBAEpBusD,GAAc7tD,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,6BACfF,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAS,gBAAAr5B,OAAkBimM,EAAW,OAAS,WANpD,IAMmEznE,EANnE,IAMgF4nE,EANhF,KAMsH,IAAfJ,EAAmB,EAAIA,EAAa,EAAG,IAC3IE,EAPH,KAOYtgH,GAAc7tD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,MACvB6tK,GAAYluK,EAAA1P,EAAA2P,cAAA,QAAMG,MAAO,CAAE2gE,MAAO,SAAWz/D,UAAU,2BACtDtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,sBADF,aAUfitK,GAA0D,SAAArrK,GAAoB,IAAjBikB,EAAiBjkB,EAAjBikB,WAC3Dn+B,EAAUyrF,eACVx/E,EAASo3F,eACT5hD,EAAcmQ,YAAiB,SAAAp9C,GAAC,OACpCquK,IAAqBC,kBAAkBtuK,EAAGvI,EAASA,EAAOA,OAAS,GAAIjM,KAEnE6kE,EAAatrD,IAAEm+C,KAAKjW,EAAa,SAAA5sC,GAAC,OAAIA,EAAEspB,WAAW3oD,OAAS2oD,EAAW3oD,MAAQq/B,EAAEgwD,aACjF2gH,EAAcxwH,OAAQxlB,SAASumB,MAAmBf,OAAQjyC,KAAK,EAAG,OAASiyC,OAC3EywH,EAASzwH,KAAM72B,EAAW3oD,MAAMqnL,KAAK7nG,KAAMwwH,EAAY93J,OAAO,eAAgB,OAC9E60J,EAAsBJ,GAAmB,SAAA3tK,GAAC,OAAIA,EAAE+tK,sBAChDmD,EAAensK,IAAEnH,IAAImwK,EAAqB,SAAAoD,GAAE,OAAIhvH,GAAgBgvH,KAChET,EAAW3rK,IAAEzI,SAAS40K,EAAc/uH,GAAgBx4B,IAClDkkJ,EAA2BI,KAA3BJ,uBACFuD,EAA2BnsK,sBAAY,WAC3C,GAAIyrK,EACF7C,EAAuB9oK,IAAE3E,OAAO2tK,EAAqB,SAAArtK,GAAC,OAAIyhD,GAAgBzhD,KAAOyhD,GAAgBx4B,UAC5F,CAEL,IAAM0nJ,EAAkBtsK,IAAEusK,UAAF,GAAA7mM,OAAAoE,OAAA60B,EAAA,EAAA70B,CACjBk/L,GAAuB,IADN,CACWpkJ,IACjC1wC,KAAYs4L,wBAEd1D,EAAuBwD,KAExB,CAACX,EAAU7C,EAAwBE,EAAqBpkJ,IACrD6nJ,EAAgBp0H,YAAiB,SAAAp9C,GAAC,OACtCyxK,YAA+BzxK,EAAG,CAAEvI,OAAQA,EAASA,EAAOA,OAAS,GAAIkyB,WAAYA,EAAW3oD,SAE5FqzB,EAAQuN,kBAAQ,WACpB,IAAMvF,EAAMq1K,aAAQ/nJ,EAAW3oD,MACzB2wM,EAAYnxH,KAAM72B,EAAW3oD,MAAM2wD,QAAQ6uB,KAAM72B,EAAW3oD,MAAM2iD,IAAI,OAAQ,KAAO,IAAM,GACjG,OAAO6tJ,EAAa,GAAA/mM,OAAM4xB,EAAN,KAAA5xB,OAAaknM,GAAct1K,GAC9C,CAACstB,EAAY6nJ,IACVI,EAAoBhwK,kBAAQ,kBAAMogJ,aAAsBr4H,EAAYlyB,IAAS,CAACkyB,EAAYlyB,IAChG,OACE+K,EAAA1P,EAAA2P,cAAC+tK,GAAD,CACEK,oBAAqBe,EAAkBttK,MACvCssK,oBAAqBgB,EAAkBxxB,MACvCswB,SAAUA,EACVrgH,WAAYA,EACZpsD,QAASmtK,EACTnoE,WAAY50G,EACZo8K,WAAYQ,EACZN,MAAkB,IAAXM,EAAe,MAAQ,UAKvBY,GAA8C,SAAA96I,GAAa,IAAVuzF,EAAUvzF,EAAVuzF,IAE5D,OAAO9nH,EAAA1P,EAAA2P,cAACqvK,GAAD,CAAmBnoJ,WAAY2gG,EAAI/oJ,SAASooD,cCzGxCooJ,GAAsF,SAAAlxK,GAA+B,IAA5BpJ,EAA4BoJ,EAA5BpJ,OAAQu6K,EAAoBnxK,EAApBmxK,cAAoB7+E,EACrFL,GAAYr7F,GADyE27F,EAAAvkH,OAAAqoD,EAAA,EAAAroD,CAAAskH,EAAA,GACzHJ,EADyHK,EAAA,GACvGC,EADuGD,EAAA,GAE1H/+F,EAAQuN,kBAAQ,kBAAOmxF,EAAmB,kBAAoB,oBAAqB,CAACA,IAK1F,OAAOvwF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoB,QAJgB,WAEnC,MADc,qBAAV5P,GAA8B29K,IAC3B3+E,MAEoDh/F,ICYlD49K,GAAmF,SAAApxK,GAAiH,IAA9GkoB,EAA8GloB,EAA9GkoB,UAAWtxB,EAAmGoJ,EAAnGpJ,OAAQuuD,EAA2FnlD,EAA3FmlD,MAAO5zB,EAAoFvxB,EAApFuxB,WAAYzI,EAAwE9oB,EAAxE8oB,WAAYI,EAA4DlpB,EAA5DkpB,OAAQmoJ,EAAoDrxK,EAApDqxK,kBAAmBC,EAAiCtxK,EAAjCsxK,iBAAkBr+G,EAAejzD,EAAfizD,SAAe43B,EAClLC,eAArBngG,EADuMkgG,EACvMlgG,QAAS+K,EAD8Lm1F,EAC9Ln1F,QACX41F,EAAW/uC,YAAiB,SAAAp9C,GAAC,OAAIq9C,IAAgB8uC,SAASnsF,EAAzBq9C,CAA4B7xD,EAASvX,IAAU0E,SAChF2mD,EAA2B19B,kBAAQ,WACvC,MAAe,QAAVokD,KAAsBksH,IAAsB1+L,KAAYy6C,KACpDz6C,KAAYy6C,IAEdz6C,KAAY06C,MAClB,CAAC83B,EAAOksH,IACLE,EAAkBxwK,kBAAQ,kBAAO09B,IAAgB9rD,KAAYy6C,IAAM,MAAQ,QAAS,CAACqR,IAToHo3B,EAW9KpY,cAAzBM,EAXuM8X,EAWvM9X,WAAY3E,EAX2Lyc,EAW3Lzc,SAEd8O,EAA0BnnD,kBAAQ,WACtC,IAAMxgC,EAAK+sF,eACX,MAAO,CACLnF,SAAU5nF,EACV0rB,GAAI1rB,EACJ0S,WAAYs+C,EACZ1E,OAAQ4R,EACR3Y,OAAQoD,EACRtD,WAAYkD,EACZ3W,iBAAkBvb,EAAOA,OACzBlkB,UAAW6+C,EAAa7+C,IAAUijC,OAASjjC,IAAU6iC,OACrDgY,YAAa,IAEd,CAACgE,EAAYkN,EAAa7nC,EAAOA,OAAQkyB,EAAYI,IAElDsoJ,EAAkBptK,sBACtB,SAAC6iC,GACC,GAAa,QAATA,EAAgB,CAGlB,IAAMwqI,EAAaxhG,aAAiB78F,IAAU0E,MAAX9J,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAuB,CAAEo7C,KAAKp7C,OAAA2tB,EAAA,EAAA3tB,CAAA,GAAIk6E,EAASj8D,GAAKi8D,GAAYlpD,SAAUg6B,IAAep6B,KAAKC,KAAMwU,SAAU,GAA1G,CAA+Gzc,YAClJmnD,EAAW7zD,MAAM4gB,iBAAjB98B,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAuCyjM,EAAvC,CAAmD/7K,aAAW,OAIjD,SAATuxC,GAEFmS,EAASxtC,IAAkBD,kBAAkB,CAAEswB,IAAKisB,EAAUxyD,UAASkB,YACvEmnD,EAAW4rC,KAAKz9E,eAAc,EAAM,CAAEvhB,UAAS+K,WAAW,CAAE30B,KAAMqS,IAAU0E,SAE5EimE,EAAW03C,WAAW5pF,YAAYnW,EAASwyD,IAMjD,CAACv9D,EAAS+K,EAASkB,EAAQsxD,IAQvBwpH,EAAe3wK,kBAAQ,kBAAA/yB,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAY4oB,EAAZ,CAAoBA,OAAQsxB,KAAc,CAACtxB,IACxE,OACE+K,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAUk9D,QAASjM,EAAUg6B,UAAW17D,IAAet+C,KAAW+1C,IAAM,QAAU,OAAQ+jE,cAAe,CAAEC,sBAAuB,sBAC9H1B,GAAY3pF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoB,QAAS,kBAAMouK,EAAgB,SAA7C,qBAAwED,EAAxE,MACZjmF,GAAYgmF,GAAoB3vK,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoB,QAAS,kBAAMouK,EAAgB,UAA7C,gCACjClmF,GAAY3pF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoB,QAAS,kBAAMouK,MAA7B,iBAA+DD,EAA/D,UACDrzM,IAAX04B,GAAwB+K,EAAA1P,EAAA2P,cAAC+vK,GAAD,CAAmBR,cAX1B,WACpB,IAAMS,EAAiB3hG,aAAiB78F,IAAUkF,WAClDylE,EAAW7zD,MAAM4gB,iBAAjB98B,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAuC4jM,EAAvC,CAAuDl8K,aAAW,EAAM,CAAEu3D,UAAW75E,IAAUkF,aASnBse,OAAQ86K,MC5ElFG,GAAmM,SAAA7xK,GAA0F,IAAvFuxB,EAAuFvxB,EAAvFuxB,WAAY4zB,EAA2EnlD,EAA3EmlD,MAAOksH,EAAoErxK,EAApEqxK,kBAAmBvoJ,EAAiD9oB,EAAjD8oB,WAAYI,EAAqClpB,EAArCkpB,OAAQo8B,EAA6BtlD,EAA7BslD,YAAap9B,EAAgBloB,EAAhBkoB,UACzQv9B,EAAYmgG,eAAZngG,QACF2mL,EAAmB/0H,YAAiB,SAAAp9C,GAAC,OAAIq9C,IAAgBs1H,yBAAyB3yK,EAAGxU,KACrFonL,EAAcx1H,YAAiB,SAAAp9C,GACnC,IAAM6V,EAAQg9J,aAAe7yK,EAAG+oB,GAChC,OAAIhkB,IAAEhF,MAAM8V,GACH,EAEQ,QAAVmwC,EAAkBnwC,EAAM5C,SAAW4C,EAAM3C,WAgB5C4/J,EAA2B,CAC/BnpJ,aACAI,SACAhB,aAEF,OACEvmB,EAAA1P,EAAA2P,cAACswK,GAADlkM,OAAA8F,OAAA,CAA0BqxE,MAAOA,EAAOvuD,OAAQ0uD,EAAa/zB,WAAYA,EAAY+/I,iBAAkBA,EAAkBD,kBAAmBA,GAAuBY,GACjKtwK,EAAA1P,EAAA2P,cAAC+yF,GAAD,CAAkBh2F,MAAOozK,GACvBpwK,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOozK,OAYVI,GAAar5H,IAAMi8F,KANsI,SAAAlwI,GAA0B,IAAvBjO,EAAuBiO,EAAvBjO,OAAWmO,EAAY/2B,OAAAg2B,GAAA,EAAAh2B,CAAA62B,EAAA,YAExLygD,EAAc0oC,eACpB,OAAOrsF,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KAAGyjD,GAAe3jD,EAAA1P,EAAA2P,cAACwwK,GAADpkM,OAAA8F,OAAA,GAAkBixB,EAAlB,CAAyBugD,YAAaA,EAAap9B,UAAWtxB,QC3CnFy7K,GAAiI,SAAAryK,GAAqD,IAAlDuxB,EAAkDvxB,EAAlDuxB,WAAYzI,EAAsC9oB,EAAtC8oB,WAAYI,EAA0BlpB,EAA1BkpB,OAAQo8B,EAAkBtlD,EAAlBslD,YAChK1uD,EAAiB0uD,EAAjB1uD,OAAQ71B,EAASukF,EAATvkF,KACVmnD,EAAYoqJ,YAAa,CAAE5+J,iBAAkB9c,EAAQkxB,WAAY/mD,EAAM+nD,WAAYA,EAAYyI,aAAYrI,WAC3GqpJ,EAAch2H,YAAiB,SAAAp9C,GACnC,IAAMqzK,EAAMC,aAAetzK,EAAG+oB,GAC9B,OAAIhkB,IAAEhF,MAAMszK,GACH,EAEFA,EAAIvtJ,SAGb,OAAOtjB,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KAAGjL,GAAU+K,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQqW,QAAM,EAAC1Z,MAAO4zK,EAAa3zG,SAAS,MASrD8zG,GAAuB55H,IAAMi8F,KAN6D,SAAAhwI,GAErG,IAAMnO,EAASo3F,eACf,OAAOrsF,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KAAGjL,GAAU+K,EAAA1P,EAAA2P,cAAC+wK,GAAD3kM,OAAA8F,OAAA,GAA4BixB,EAA5B,CAAmCugD,YAAa1uD,QCjBzDg8K,GAAiD,SAAA5yK,GAAShyB,OAAAu9F,GAAA,EAAAv9F,CAAAgyB,GACrE,IAAMo5C,EAAW4B,qBAAW0xC,MACpB3uC,EAAeN,cAAfM,WAF4D8sC,EAI1CC,eAAlBngG,EAJ4DkgG,EAI5DlgG,QAAS5pB,EAJmD8pH,EAInD9pH,KACXksF,EAAYlsF,EACZ0pB,EAAc8xD,YAAiBowC,KAE/BkmF,EACJ5lH,IAAc75E,IAAUgF,YACpB,SAAC+mB,GAAD,OAAkB0nD,KAAc4mC,YAAYtuF,EAAGxU,IAC/C,SAACwU,GAAD,OAAkB0nD,KAAc7wB,MAAM72B,EAAGxU,IAGzCL,EAAWiyD,YAAiBs2H,GAE1BhyB,EAAmFv2J,EAAnFu2J,kBAAmBC,EAAgEx2J,EAAhEw2J,mBAAoBC,EAA4Cz2J,EAA5Cy2J,qBAAsBC,EAAsB12J,EAAtB02J,kBAE/D8xB,EAAe,SAACC,GACpB,IAAInmF,EAAmB,CACrBniG,YAAaA,GAAe,GAC5BE,UACAsiE,YACApG,cAAc74E,OAAAy0B,EAAA,EAAAz0B,CAAA,GACTsc,IAKP,OAAQyoL,GACN,IAAK,oBACH,GAAIlyB,IAAsBC,IAAuBC,IAAyBC,EACxE,OAEFp0D,EAAiB/lC,cAAcg6F,mBAAqBA,EACpD,MACF,IAAK,qBACH,IAAKA,GAAqBC,IAAuBC,IAAyBC,EACxE,OAEFp0D,EAAiB/lC,cAAci6F,oBAAsBA,EACrD,MACF,IAAK,uBACH,IAAKD,IAAsBC,GAAsBC,IAAyBC,EACxE,OAEFp0D,EAAiB/lC,cAAck6F,sBAAwBA,EACvD,MACF,IAAK,oBACH,IAAKF,IAAsBC,IAAuBC,GAAwBC,EACxE,OAEFp0D,EAAiB/lC,cAAcm6F,mBAAqBA,EAIxD5nG,EAASyzC,KAAYhlF,YAAY+kF,EAAiB/lC,gBAClD9I,EAAWzzD,SAASJ,MAAM4iG,gBAAgBF,IAGtComF,EAAejyM,IAASqS,IAAU0E,MAClCshF,EAAU7c,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEhV,OAAOivE,UAoB/C,OAnBAhc,oBAAU,WACR,GAAIgc,GAAW45G,EAAc,CAC3B,IAAIpmF,EAAmB,CACrBniG,YAAaA,GAAe,GAC5BE,UACAsiE,YACApG,cAAc74E,OAAAy0B,EAAA,EAAAz0B,CAAA,CACZ6yK,mBAAmB,EACnBC,oBAAoB,EACpBC,sBAAsB,EACtBC,mBAAmB,GAChB12J,IAGP8uD,EAASyzC,KAAYhlF,YAAY+kF,EAAiB/lC,gBAClD9I,EAAWzzD,SAASJ,MAAM4iG,gBAAgBF,KAE3C,CAACxzB,EAAS45G,IAGXrxK,EAAA1P,EAAA2P,cAAA,OACEqB,UAAU,qBACVlB,MAAO,CACLw9D,eAAgByzG,EAAe,aAAe,WAC9C9pF,WAAY8pF,EAAe,YAAS90M,IAGtCyjC,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,2BACdtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,kDAAmD,IAChEtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAA0B+vK,GAAgB,UAA1D,iBAEFrxK,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEiB,UAAU,iCACVqC,QAASu7I,EACT57I,SAAU,WACR6tK,EAAa,uBAGfnxK,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,mBAAhB,WAGFtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEiB,UAAU,iCACVqC,QAASw7I,EACT77I,SAAU,WACR6tK,EAAa,wBAGfnxK,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,mBAAhB,YAGFtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEiB,UAAU,iCACVqC,QAASy7I,EACT97I,SAAU,WACR6tK,EAAa,0BAGfnxK,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,mBAAhB,cAGFtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEiB,UAAU,iCACVqC,QAAS07I,EACT/7I,SAAU,WACR6tK,EAAa,uBAGfnxK,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,mBAAhB,aC7FFgwK,GAAuC,CAC3C3uD,QAAS,SAAC0qD,GACR,GAHgB,WAGZA,EAAKpqD,OAAOrkJ,GACd,MAAO,wBAET,IAAM0uM,EAAe/qK,IAAEzI,SAASuzK,EAAKpqD,OAAOrkJ,GAAI,SAE1C2yM,EADahvK,IAAEzI,SAASuzK,EAAKpqD,OAAOrkJ,GAAI,YAAc2jC,IAAEzI,SAASuzK,EAAKpqD,OAAOrkJ,GAAI,UACrDyuM,EAAKrwK,MAAQ,EAAI,MAAQqwK,EAAKrwK,MAAQ,EAAI,MAAQ,GAAM,GAC1F,qBAAA/0B,OAAsBqlM,EAAe,OAAS,MAA9C,KAAArlM,OAAuDspM,KAI3D,SAASC,GAAiDzyM,GACxD,MAAO,CAAEooD,WAAYpoD,EAASooD,WAAYI,OAAQxoD,EAASolD,QAE7D,SAASstJ,GAAgD1yM,EAAaK,GACpE,OAAOA,IAASkS,KAAWg2C,KAAOvoD,EAASuoD,KAAK/W,OAASxxC,EAASsoD,IAAI9W,OAGxE,IAAMmhK,GAAkB,SAACzuD,GACvB,MAAe,sBAAXA,EACK,KAEM,iBAAXA,EACK,YAEFA,GAIH0uD,GAAgB,CACpB,MACA,MACA,OACA,SACA,QACA,QACA,QACA,QACA,oBACA,UAGIjlL,GAAc,GAAAzkB,OAAAoE,OAAA60B,EAAA,EAAA70B,CAEfk2B,IAAEnH,IAAIu2K,GAAe,SAAA9zK,GACtB,MAAO,CACLmyD,OAAQ0hH,GAAgB7zK,GACxBqmF,SAAQ,QAAAj8G,OAAU41B,OALJ,CAQlB,CACEmyD,OAAQhwD,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UArDP,UAsDhB4iF,SAtDgB,WA4CA73G,OAAA60B,EAAA,EAAA70B,CAafk2B,IAAEnH,IAAIu2K,GAAe,SAAA9zK,GAAC,MAAK,CAC5BmyD,OAAQ0hH,GAAgB7zK,GACxBqmF,SAAQ,OAAAj8G,OAAS41B,QAMR+zK,GAIR,SAAAvzK,GAA0C,IAAvCqxK,EAAuCrxK,EAAvCqxK,kBAAmB5iL,EAAoBuR,EAApBvR,MAAOmI,EAAaoJ,EAAbpJ,OAAai0F,EAChBC,eAArBngG,EADqCkgG,EACrClgG,QAAS+K,EAD4Bm1F,EAC5Bn1F,QACXpL,EAAWiyD,YAAiB,SAAAp9C,GAAC,OAAI0nD,KAAc4mC,YAAYtuF,EAAGxU,KAE5Dk2J,EAAmFv2J,EAAnFu2J,kBAAmBC,EAAgEx2J,EAAhEw2J,mBAAoBC,EAA4Cz2J,EAA5Cy2J,qBAAsBC,EAAsB12J,EAAtB02J,kBAE/DksB,EAAsBJ,GAAmB,SAAA3tK,GAAC,OAAIA,EAAE+tK,sBAC9C9gI,EAAgBkhI,GAAe12K,EAAOA,QAAtCw1C,YACA80B,EAAYssB,KAAZtsB,QACAnjB,EAAeN,cAAfM,WAEFy1H,EAAsBzyK,kBAAQ,WA4BlC,OA1BiBmD,IAAE3E,OAAO6sC,EAAa,SAAAjnC,GACrC,IAAMs8I,EAAqBt8I,EAAE2jB,WAAW6R,mBAkBxC,OAfyB,MAAvB8mH,GACuB,OAAvBA,GACuB,OAAvBA,GACCA,GAAsBA,EAAmBhmJ,SAAS,SAClDgmJ,GAAsBA,EAAmBhmJ,SAAS,OAYtColJ,IATU,MAAvBY,GACuB,OAAvBA,GACuB,YAAvBA,GACuB,OAAvBA,GACuB,OAAvBA,IAMcX,GAL2B,iBAAvBW,GAMFV,GALsB,WAAvBU,GAMFT,KAIhB,CAAC50G,EAAay0G,EAAmBC,EAAoBC,EAAsBC,IAExEn4H,EAAQ0zB,YAAiB,SAAAp9C,GAAC,OAC9B0uK,GAA2BF,kCAAkCxuK,EAAG,CAAEvI,OAAQA,EAASA,EAAOA,OAAS,OAG/Fu6K,EAAgB,WACpB,IAAMS,EAAiB3hG,aAAiB78F,IAAUkF,WAClDylE,EAAW7zD,MAAM4gB,iBAAjB98B,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAuC4jM,EAAvC,CAAuDl8K,aAAW,EAAM,CAAEu3D,UAAW75E,IAAUkF,aAG3Fm7L,EAA2C1yK,kBAAQ,WAEvD,IAAM6mH,EAAuB,GAAAh+I,OAAAoE,OAAA60B,EAAA,EAAA70B,CAEvBygB,IAAUZ,KAASO,GAAK,CAAC,QAAS,oBAAqB,QAAS,QAAS,UAAY,IAF9DpgB,OAAA60B,EAAA,EAAA70B,CAIvBygB,IAAUZ,KAASO,IAAMK,IAAUZ,KAASsI,GAAK,CAAC,OAAQ,SAAU,SAAW,KAIjFu9K,EAAOxvK,IAAE3E,OAAOlR,GAAS,SAAAmR,GAAC,OAAK0E,IAAEzI,SAASmsH,EAAepoH,EAAEqmF,SAAS8tF,OAAOn0K,EAAEqmF,SAAS+tF,YAAY,KAAO,MAS7G,OARAF,EAAOA,EAAKn0K,OAAO,SAAAqlH,GACjB,IAAMl9E,EAAS2rI,GAAgBzuD,EAAOjzD,QACtC,MAAwB,WAApBizD,EAAO/+B,SACF++B,EAEF1jD,EAAQx5B,KAGVxjC,IAAEnH,IAAI22K,EAAM,SAAAl0K,GAAC,OAAAxxB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACfwxB,EADe,CAElB/Q,MAAO,EACPy4F,KAAM,SAAAriF,GAA8D,IPnKvCrJ,EOmKuCq4K,EAAAhvK,EAA3DmqK,KAAQrwK,EAAmDk1K,EAAnDl1K,MAAO8qH,EAA4CoqD,EAA5CpqD,IAChBqqD,EAAYt0K,EAAEqmF,SACdlzD,EAASmhJ,EAAUH,OAAOG,EAAUr0K,QAAQ,KAAO,GACnD8xB,EACoC,SAAxCuiJ,EAAUlqL,QAAQ,IAAM+oC,EAAQ,IAAiB1/C,KAAWg2C,KAAOh2C,KAAW+1C,IAE1Ek+C,EAAShjE,IAAEzI,SAASq4K,EAAW,YAAcn1K,EAAQ,EAAI,IAAM,GAC/DigE,EAAU16D,IAAEzI,SAASq4K,EAAW,YAAc5vK,IAAEzI,SAASq4K,EAAW,iBACpEz+E,EAAUnxF,IAAEzI,SAASq4K,EAAW,sBAChCC,EAvJM,WAuJUD,EAChBE,EACJ9vK,IAAEzI,SAASq4K,EAAW,WACtB5vK,IAAEzI,SAASq4K,EAAW,WACtB5vK,IAAEzI,SAASq4K,EAAW,WACtB5vK,IAAEzI,SAASq4K,EAAW,sBAClB9E,EAAO8E,EAAUr4K,SAAS,UAC9BkG,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KAAGlD,EAAMkjC,QAAQ,IAEjBlgC,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACErD,MAAOA,EACPuoE,OAAQA,EACR7uD,QAAM,EACNumD,QAASA,EACTo1G,OAAQA,EACR3+E,QAASA,EACT0+E,cAAeA,IAIbE,EAAWxqD,EAAI/oJ,SACfwzM,EA5KM,WA4KWJ,EACvB,GPlM2Bt4K,EOkMJm3B,EPjMM,CAAC,MAAO,OAC7B51B,IAAI,SAAAoqF,GAAC,OAAIA,EAAEnmE,aAAYvlB,SAASD,IOgMN5E,GAAU84K,GAAsBuE,GAAW,CAC3E,IAAMz4D,EAAa23D,GAAkBc,GAC/BE,EAAUf,GAAiBa,EAAU1iJ,GAC3C,OACE5vB,EAAA1P,EAAA2P,cAACuwK,GAADnkM,OAAA8F,OAAA,CACE8iB,OAAQu9K,EACR5iJ,WAAYA,EACZ4zB,MAAOxyB,EACP0+I,kBAAmBA,GACf71D,EALN,CAME1yF,WAAY0yF,EAAW1yF,cAGtB,GPvMR,SAAkCttB,GAEvC,MADyB,CAAC,UACZuB,IAAI,SAAAoqF,GAAC,OAAIA,EAAEnmE,aAAYvlB,SAASD,GOqM7B44K,CAAyBzhJ,IAAW/7B,GAAU84K,GAAsBuE,GAAW,CACxF,IAAMz4D,EAAa23D,GAAkBc,GACrC,OAAOtyK,EAAA1P,EAAA2P,cAAC8wK,GAAD1kM,OAAA8F,OAAA,CAAsBy9C,WAAYA,GAAgBiqF,IACpD,IAAIk0D,GAAsBuE,IAAcC,EAa7C,OAAOlF,EAZP,QAAe9wM,IAAX04B,EAAsB,CACxB,IAAMy9K,EAAermM,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAQ4oB,EAAR,CAAgBA,OAAQw8K,GAAiBa,EAAU1iJ,KACxE,OACE5vB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEirF,UAAU,OACV/tB,QAASv9D,EAAA1P,EAAA2P,cAAC+vK,GAAD,CAAmBR,cAAeA,EAAev6K,OAAQy9K,KAEjErF,GAOT,OAAOA,QAGV,CAACvgL,EAAOmI,EAAQy6K,EAAmBnwG,EAASgsG,GAAuBA,EAAoB,KACpFphI,EAAoC/qC,kBAAQ,WAC5CmsK,GAAuBA,EAAoBprK,OAAS,GAAGorK,EAAoBoH,QAC/E,IAAMC,EAAgBrwK,IAAEnH,IAAImwK,EAAqB,SAAAoD,GAAE,OAAIhvH,GAAgBgvH,KACvE,OAAOpsK,IAAEsvK,GACN7zI,QAAQ,SAAAx6B,GAAC,OACRovK,EAAc94K,SAAS6lD,GAAgBn8C,EAAE2jB,aACrC5kB,IAAEnH,IAAIoI,EAAE2mC,MAAO,SAAA77B,GAAC,OAAAjiC,OAAAy0B,EAAA,EAAAz0B,CAAA,GAAUiiC,EAAV,CAAa6Y,WAAY3jB,EAAE2jB,eAC3C,KAELnqB,SACF,CAAC60K,EAAqBtG,IACnBsH,EAAgBzzK,kBAAQ,WAE5B,IAEMw1B,EAAUryB,IAAE5I,OAChBk4K,EACA,SAACiB,EAAiB50K,GAChB,GAAIshD,GAAethD,EAAEipB,WAAW3oD,MAAO,CAGrC,IAMIu0M,EAAuB,CANgB1mM,OAAAy0B,EAAA,EAAAz0B,CAAA,GACtC6xB,EADsC,CAEzCsD,QAAS,CACPyrK,UAAW,SAACnlD,GAAD,OAAc9nH,EAAA1P,EAAA2P,cAAC+yK,GAAD,CAAqBlrD,IAAKA,SAKjDmrD,EAAmB1wK,IAAExa,KACzBwjL,EACA,SAAA7oK,GAAC,OAAIi9C,GAAgBj9C,KAAOi9C,GAAgBzhD,EAAEipB,cAEhD,GAAI8rJ,EAAkB,CACpB,IAAMC,EAAgB3wK,IAAE3E,OACtBusC,EACA,SAAA77B,GAAC,OACCqxC,GAAgBrxC,EAAE6Y,cAAgBw4B,GAAgBzhD,EAAEipB,aACpD7Y,EAAErZ,SAAWg+K,EAAiBnhK,aAE5BqhK,EAAsC5wK,IAAEnH,IAAI83K,EAAe,SAAA/gL,GAAC,OAAA9lB,OAAAy0B,EAAA,EAAAz0B,CAAA,GAC7D8lB,EAD6D,CAEhEg1B,WAAYjpB,EAAEipB,WACd3lB,QAAS8vK,OAIX,GAFAyB,EAAS,GAAA9qM,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAO0mM,GAAP1mM,OAAA60B,EAAA,EAAA70B,CAAqB8mM,IAE1BjsJ,EAAO,CACT,IAAMksJ,EAAgB7wK,IAAEo1E,MAAMw7F,EAAc,SAAA3zE,GAAC,OAAI1kF,KAAKwb,IAAIkpE,EAAEr7E,OAAS+C,KAErE,GAAIksJ,EAAe,CACjB,IAAMC,EAAqB9wK,IAAE0yC,UAAUk+H,EAAc,SAAA3zE,GAAC,OAAIA,EAAEr7E,SAAWivJ,EAAcjvJ,SACjFkvJ,GAAsB,IACxBF,EAAaE,GAAoBzG,kBAAmB,KAK5D,SAAA3kM,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAWymM,GAAXzmM,OAAA60B,EAAA,EAAA70B,CAAoB0mM,IAGtB,OAAOD,GAhDmC,IAoD9C,OAAOvwK,IAAE81C,QAAQzjB,EAAS,SAAArd,GAAC,OAAIooC,GAAgBpoC,EAAE4P,eAEhD,CAAC0qJ,EAAqBtG,EAAqB+F,GAAsCnnI,IAC9EukB,EAAOnsD,IAAE4Y,KAAK03J,GAAiB,EAC/BrnD,EAAepsH,kBAAQ,WAC3B,IAAMk0K,EAAa/wK,IAAE0oI,MAAM6mC,EAAkB,SAAAj0K,GAAC,OAAIA,EAAE/Q,OAAS,IAC7D,OAAOyV,IAAEnH,IAAI02K,EAAkB,SAAAj0K,GAC7B,IAAM01K,GAAc11K,EAAE/Q,OAAS,GAAKwmL,EACpC,SAAArrM,OAAuB,IAAbsrM,EAAV,QAED,CAACzB,IAEJ,OACE9xK,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACuzK,GAAD,MACC9kH,GACC1uD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACEmrH,aAAcA,EACdioD,aAAcpH,GACd/qK,UAAU,QACVmyE,SAAS,eACTg5D,oBAAoB,EACpB//I,QAASolL,EACTh9K,KAAM+9K,KAGRnkH,GACA1uD,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAmBxO,MAAM,wBACvBmO,EAAA1P,EAAA2P,cAAA,QAAMG,MAAO,CAAEoB,QAAS,OAAQuqE,WAAY,SAAUnO,eAAgB,WACpE59D,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,+BADf,8GC5UGoyK,GAAmF,SAAAr1K,GAE1F,IADJs1K,EACIt1K,EADJs1K,uBbyDK,WACL,IAAMl+J,EAAM2jC,aAAO,wBACXpwD,EAAYmgG,eAAZngG,QACF4qL,EAAsB/nF,KACtB52F,EAASo3F,eACPjwC,EAAeN,cAAfM,WACFmvH,EAAsBJ,GAAmB,SAAA3tK,GAAC,OAAI8tK,GAAoB9tK,EAAGvI,EAAQjM,KACnFyyD,oBAAU,WACR,IAAM58C,EAAc5J,EAASA,EAAOA,YAAS14B,EAC7Ck5C,EAAG,eAAiB,CAAE81J,sBAAqBt2K,WACvC2+K,QAAuCr3M,IAAhBsiC,GAA6B0sK,GAAuBA,EAAoBprK,OAAS,GAC1Gi8C,EAAW3R,YAAYx9B,mBACrBjkB,EACA6V,EACA0sK,EACAqI,EAAoBr0G,QAAQ11B,cAG/B,CAAC0hI,EAAqBt2K,EAAQ2+K,EAAoBr0G,QAAQ11B,cazE7DgqI,GACA,IAAM5+K,EAASo3F,eACT59D,EAAcmsB,YAAiB,SAAAp9C,GAAC,OAAIs2K,YAAyBt2K,EAAGvI,EAASA,EAAOA,OAAS,MACvF82K,EAAyBJ,GAAe12K,EAASA,EAAOA,YAAS14B,GAAjEwvM,qBACAxsG,EAAYssB,KAAZtsB,QACAzyE,EAAU27F,KAAV37F,MACF4iL,EAAoBnwG,EAAQstB,sBAAwB77G,KAAYy6C,IAAMz6C,KAAY06C,KAClF6/I,EAAsBJ,GAAmB,SAAA3tK,GAAC,OAAIA,EAAE+tK,sBAC9CF,EAA2BI,KAA3BJ,uBAqBR,OAnBA5vH,oBAAU,WAER,GACEl5C,IAAEhF,MAAMguK,KACNhpK,IAAE4R,QAAQo3J,KAAyBhpK,IAAEm+C,KAAK6qH,EAAqB,SAAA/xH,GAAE,OAAIgG,GAAehG,EAAGh7E,QACzF,CACA,IAAMu1M,EAAkBtlJ,EAClBulJ,EAAkBzxK,IAAEyjB,MAAMzjB,IAAE3E,OAAOm2K,EAAiB,SAAAv6H,GAAE,OAAIgG,GAAehG,MAC3Ew6H,GAAmBL,EAErBtI,EAAuB,CAAC2I,KACdD,GAAmBxxK,IAAE4R,QAAQ4/J,KAAsBJ,IAC7DtI,EAAuB,MAK1B,CAAC58I,EAAaklJ,EAAuBpI,EAAqBF,IAG3DrrK,EAAA1P,EAAA2P,cAAA,WACG8rK,GAAwB/rK,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,MACA,IAAxBkC,IAAE4Y,KAAKsT,KAAuBs9I,IAAyBxpK,IAAEgnH,YAAY96F,IACpEzuB,EAAA1P,EAAA2P,cAAA,oCAA4BhL,EAAM,QAAAhtB,OAAWgtB,EAAOA,QAAW,IAEhEA,GAAU+K,EAAA1P,EAAA2P,cAACg0K,GAAD,CAAkBnnL,MAAOA,EAAO4iL,kBAAmBA,EAAmBz6K,OAAQA,MCxCzFi/K,GAAkE,SAAA71K,GAAgB,IAAbpJ,EAAaoJ,EAAbpJ,OAEzE,OCDmC,SAAC0uD,GAA6B,IACzDvH,EAAeN,cAAfM,WACAnnD,EAAW0uD,EAAX1uD,OACFwgB,EAAM0+J,aAAS,yBACfnrL,EAAUyrF,eAJiD16B,EAKfC,mBAAmB,IALJC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAK1Dq6H,EAL0Dn6H,EAAA,GAKvCo6H,EALuCp6H,EAAA,GAAAq6H,EAMjCnpG,KAAxBpjE,EANyDusK,EAMzDvsK,UAAW4C,EAN8C2pK,EAM9C3pK,SACXtW,EAAWkyJ,eAAXlyJ,OACFk3K,EAAsBJ,GAAmB,SAAA3tK,GAAC,OAAIA,EAAE+tK,sBAEhD9gI,EAAcmQ,YAAiB,SAAAp9C,GAAC,OAAI+2K,YAAmB/2K,EAAGvI,GAAU,GAAIjM,KACxEwrL,EAAoBjyK,IAAE3E,OAAO6sC,EAAa,SAACvsC,GAAD,OAA6BqE,IAAEzI,SAASyI,IAAEnH,IAAImwK,EAAqB5rH,IAAkBA,GAAgBzhD,EAAEipB,eACjJstJ,EAAiBr1K,kBAAQ,WAC7B,OAAKnK,EAGEsN,IAAE5I,OACP66K,EACA,SAAC1sI,EAAmB3gB,GAClB,IAAMutJ,EAAWnyK,IAAE5I,OACjBwtB,EAAWgjB,MACX,SAACwqI,EAAuBC,GACtB,SAAA3sM,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAWsoM,GAAX,CAAwBC,EAAKttJ,KAAK/W,OAAQqkK,EAAKvtJ,IAAI9W,UAErD,IAEF,OAAOhO,IAAEs7B,MAAMiK,EAAS4sI,IAE1B,IAdO,IAgBR,CAACF,EAAmBv/K,IACvBwmD,oBAAU,WACJxmD,GACF0V,EAAS1V,IAEV,CAACA,EAAQ0V,IACZ8wC,oBAAU,WACHg9B,aAAe27F,EAAmBK,GAI3BpgL,EAAOyF,SAAS7E,IAC1B8S,EAAU9S,IAJVwgB,EAAI,mBAAoB,CAAEw1D,kBAAmB,CAACh2E,GAASi2E,UAAWupG,IAClEJ,EAAqBI,GACrB1sK,EAAU,CAAEmjE,UAAS,GAAAjjG,OAAAoE,OAAA60B,EAAA,EAAA70B,CAAMooM,GAAN,CAAsBx/K,QAK5C,CAACw/K,EAAgBx/K,IAEpBwmD,oBAAU,WACRW,EAAW3tB,YAAYniB,QAAQrX,IAC9B,CAACA,IDjDJ4/K,CAAsB5/K,GAEpB+K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,UACc3jC,IAAX04B,GACC+K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KACEL,EAAA1P,EAAA2P,cAAC60K,GAAD,UAQN9mB,GAA4D,SAAA9qJ,GAAgB,IAAbjO,EAAaiO,EAAbjO,OACnE,OAAO+K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,UAAc3jC,IAAX04B,GAAwB+K,EAAA1P,EAAA2P,cAAC80K,GAAD,CAAe9/K,OAAQA,MAErD+/K,GAAsD,CAC1DnrI,YAAa,CACXzqE,KAAM,SACNsW,OAAQ,CAAC,CAAEsnB,MAAO,IAAM,CAAEA,MAAO,IAAM,CAAEA,MAAO,IAAM,CAAEA,MAAO,KAAO,CAAEA,MAAO,EAAG8E,MAAO,SAE3F+qF,sBAAuB,CACrBztH,KAAM,QACN61M,eAAgB,MAChBC,cAAe,OACfC,WAAY,wCACZC,UAAW,SAACp4K,GAAD,0DAAA/0B,OAAwE+0B,EAAQ,OAAS,MAAzF,OAEbmkH,IAAK,CACH/hJ,KAAM,WAER8hJ,IAAK,CACH9hJ,KAAM,WAER4hJ,KAAM,CACJ5hJ,KAAM,WAER2hJ,OAAQ,CACN3hJ,KAAM,WAERiyD,MAAO,CACLjyD,KAAM,WAERi2M,MAAO,CACLj2M,KAAM,WAERk2M,MAAO,CACLl2M,KAAM,WAERm2M,MAAO,CACLn2M,KAAM,WAERkkD,OAAQ,CACNlkD,KAAM,WAERo2M,GAAI,CACFp2M,KAAM,WAER8/K,kBAAmB,CACjB9/K,KAAM,QACN+1M,WAAY,2BACZF,eAAgB,MAChBC,cAAe,MAEjB/1B,mBAAoB,CAClB//K,KAAM,QACN+1M,WAAY,4BACZF,eAAgB,MAChBC,cAAe,MAEjB91B,qBAAsB,CACpBhgL,KAAM,QACN+1M,WAAY,8BACZF,eAAgB,MAChBC,cAAe,MAEjB71B,kBAAmB,CACjBjgL,KAAM,QACN+1M,WAAY,2BACZF,eAAgB,MAChBC,cAAe,OAGNO,GAAgD,WAAM,IAAAC,EE5FzB,WAAM,IAAA37H,EAEJC,qBAFIC,EAAA5tE,OAAAqoD,EAAA,EAAAroD,CAAA0tE,EAAA,GAEvC47H,EAFuC17H,EAAA,GAExB27H,EAFwB37H,EAAA,GAGtCoxH,EAA2BI,KAA3BJ,uBAEFv8D,EAAiBrsG,sBACrB,SAACssG,IACKA,GAAoB4mE,GAAiBA,EAAc1gL,SAAW85G,EAAe95G,SAC/Eo2K,EAAuB,MACvBuK,EAAiB7mE,KAKrB,CAAC4mE,EAAetK,IAGlB,OADAr8D,aAAqB,SAAUF,EAAgB,CAAEG,mBAAmB,IAC7D,CAAC0mE,GF4ESE,GAAV5gL,EAD0D5oB,OAAAqoD,EAAA,EAAAroD,CAAAqpM,EAAA,MAE3D/sL,EAAWkjG,KAEjB,OACE7rF,EAAA1P,EAAA2P,cAAC0vG,GAADtjI,OAAA8F,OAAA,CACEwW,SAAUA,EACVujG,cAAe8oF,IACXnlE,aAAcp+H,IAAUgF,YAAaupB,EAAA1P,EAAA2P,cAAC61K,GAAD,QAEzC91K,EAAA1P,EAAA2P,cAAC81K,GAAD,CAAS9gL,OAAQA,MGpGV+gL,GAA0B,SAACtmE,EAAmC1+E,GACzE,IAAM9zD,EAAQgtF,aAAcl5B,GAAUm5B,aAAoDulD,EAAY1+E,GAAU0+E,EAEhH,OAAQ1+E,EAAO5xD,MACb,KAAK2+E,mBAAQmtC,KAAY7C,gBACvB,OAAOh8G,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFy2K,oBAAqB,OAI3B,KAAKxtH,mBAAQnxC,GAAmBy+J,wBAAyB,IAC/C58I,EAAgBuC,EAAOtZ,QAAvB+W,YACR,OAAOpiD,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFy2K,oBAAqB98I,MAI3B,KAAKsvB,mBAAQnxC,GAAmBw+J,kBAC9B,OAAO/+L,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFy2K,oBAAqB,OAK3B,QACE,OAAOruM,IC1BA+4M,GAAyD,SAAA53K,GAA8B,IAA3B+iD,EAA2B/iD,EAA3B+iD,UAC/DmE,GAD0FlnD,EAAhBitD,UAC7DsjC,eAAbrpC,UACFtwD,EAASo3F,eAETliF,EADiB2xC,cAAfM,WAC0B03C,WAAW1yC,UACrCp4D,EAAYmgG,eAAZngG,QACF+K,EAAU6mD,YAAiB,SAAAp9C,GAAC,OAAIorF,YAAaprF,EAAGxU,KAChD4X,EAAW6B,sBACf,SAACzF,GACKA,GAASA,EAAMlI,OACjBssD,EAAUpkD,EAAMlI,MACZf,GACFoW,EAAepW,EAASiJ,EAAMlI,QAIpC,CAACssD,EAAWrtD,IAERggG,EAAetxF,sBACnB,SAACqtF,EAAoBjxF,GACf9K,GACFoW,EAAepW,EAAS8K,IAG5B,CAACsL,EAAgBpW,IAEbyM,EAAUiC,sBAAY,WAC1BsxF,EAAa,QAAIx3H,IAChB,CAACw3H,IACJ,OAAO/zF,EAAA1P,EAAA2P,cAAC+zF,GAAD,CAAoBd,WAAW,EAAM5nC,UAAW75E,IAAU8E,MAAO0e,OAAQA,EAAQswD,SAAUA,EAAU3kD,SAAUA,EAAUuyF,iBAAiB,EAAM3yF,QAASA,KChCrJ01K,GAAyD,SAAA73K,GAA8E,IAA3E83K,EAA2E93K,EAA3E83K,oBAAqB70K,EAAsDjD,EAAtDiD,UAAW44G,EAA2C77G,EAA3C67G,iBAAkBroH,EAAyBwM,EAAzBxM,MAAOnD,EAAkB2P,EAAlB3P,YAC1H0nL,EAAch3K,kBAAQ,kBAAMvN,GAAS,SAAS,CAACA,IAIrD,OAAIskL,EAEAn2K,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACE+qF,cAAe,CACbC,sBAAqB,yBAAApjH,OAA2Bq5B,GAChDzP,MAAOukL,GAET9qF,UAAU,OACV/tB,QAAS64G,GAETp2K,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoB,QAAS,kBAAMy4G,MAA7B,2BACAl6G,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAcoB,QAAS,kBAAMy4G,GAAiB,KAA9C,uBAMJl6G,EAAA1P,EAAA2P,cAACI,EAAA,GAAD,CAASg2K,UAAW,IAAKz3M,GAAI2jC,IAAE46B,SAAS,eAAgBogC,QAAS7uE,GAAe0nL,GAC9Ep2K,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQiB,UAAWA,EAAWG,QAAS,kBAAMy4G,MAC1Ck8D,KCfHE,GAAoE,SAAAj4K,GAAgB,IAAbpJ,EAAaoJ,EAAbpJ,OAAai0F,EAC3DC,eAArBngG,EADgFkgG,EAChFlgG,QAAS+K,EADuEm1F,EACvEn1F,QACX41F,EAAW/uC,YAAiB,SAAAp9C,GAAC,OAAIq9C,IAAgB8uC,SAASnsF,EAAzBq9C,CAA4B7xD,EAASvX,IAAU0E,SAChFw5L,EAAmB/0H,YAAiB,SAAAp9C,GAAC,OAAIq9C,IAAgBs1H,yBAAyB3yK,EAAGxU,KACrF6sJ,EAAYz2I,kBAAQ,WACxB,MAAO,CAAEqoB,KAAM,KACd,IACK8uJ,E/KkBmB,SAAAl4K,GAMD,IAL1BkoB,EAK0BloB,EAL1BkoB,UACAiwJ,EAI0Bn4K,EAJ1Bm4K,kBACA1hL,EAG0BuJ,EAH1BvJ,KACA2kH,EAE0Bp7G,EAF1Bo7G,gBACAg9D,EAC0Bp4K,EAD1Bo4K,mBAEQr6H,EAAeN,cAAfM,WACFo5D,EAAsB56D,YAAiB66D,KAAephF,OAEtDp1B,EAAcwjH,aAAyBl8F,GAAa,IACpDtxB,EAAkCmK,kBAAQ,WAC9C,OAESq6G,GAGR,CAACx6G,EAAaw6G,IAoCjB,MAAO,CAAE88D,yBAlCwB9zK,sBAC/B,SAACkzG,GACC,IAAM+gE,EAAmB5hL,GAAQ,CAC/B2yB,KAAMuyD,aAAY,GAAI/kF,EAAQ,CAAE26B,gBAAYrzD,EAAWgrD,YAAQhrD,EAAW4qD,gBAAY5qD,KAIpF8gC,EAAwCg6B,IAAep6B,KAAKC,KAC1Dy5K,EAAa1hL,EAAO8c,iBACtB0kK,GAAsBE,IACxBt5K,EAAWooD,aAAyBkxH,OAAYp6M,EAAWi5I,IAK7D,IAAMnnC,EAAWC,aAAiB78F,IAAU0E,MAAX9J,OAAAy0B,EAAA,EAAAz0B,CAAA,GAC5BqqM,EAD4B,CAE/BzhL,SACAoI,SAAUA,EACVqU,SAAU2sB,YAAwBhhC,EAAUm4G,MAE9CnnC,EAASt6E,QAAUyiL,GAAqB,GAGxCp6H,EAAW7zD,MAAM4gB,iBACfklE,GACA,EACAsnC,OAAgBp5I,EAAY,CAAE+uF,UAAW75E,IAAU0E,MAAO4d,QAASyiL,KAGvE,CAAC1hL,EAAMG,EAAQuhL,EAAmBp6H,EAAW7zD,MAAOitH,K+KnEjBohE,CAAc,CACjDrwJ,UAAWtxB,GAAUA,EAAOA,OAC5BH,KAAM+gJ,EACN2gC,kBAAmBziL,EACnB0lH,gBAAiBxkH,EACjBwhL,oBAAoB,IALdF,yBAOR,OAAOv2K,EAAA1P,EAAA2P,cAAC42K,GAAD,CAAav1K,UAAU,6BAA6B60K,qBAAsBxsF,GAAYgmF,EAAkBz1D,iBAAkBq8D,KAG7HO,GAA4D,SAAA5zK,GAAe,IAAZlG,EAAYkG,EAAZlG,MAC7DsmJ,EAAmBnxD,GAAoB5vF,IAAEulB,SAAS9qB,GAASA,OAAQzgC,GACzE,OACEyjC,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAS,GAAAr5B,OAAKq7K,IACjBtjJ,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAS,UACftB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,YAAhB,KACAtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOA,EAAO0Z,QAAM,OAMvBqgK,GAAuD,SAAAxiJ,GAA+B,IAA5Bt/B,EAA4Bs/B,EAA5Bt/B,OAAQ+hL,EAAoBziJ,EAApByiJ,cACvE/3K,EAAcwjH,aAAyBxtH,EAASA,EAAOA,OAAS,IAC9DiyB,EAAU6rE,aAA0B99F,EAASA,EAAOA,OAAS,IAA7DiyB,MAEFgqH,EAAgBt2F,YAAiB,SAAAp9C,GAAC,OAAI0uE,aAAiB1uE,EAAGvI,EAASA,EAAOA,OAAS,MACnFgiL,EAAY73K,kBAAQ,kBAAOH,EAAcA,EAAYoR,UAAY,GAAI,CAACpR,IALqBi4K,EAMtEC,aAAQF,GAN8DG,EAAA/qM,OAAAqoD,EAAA,EAAAroD,CAAA6qM,EAAA,GAM1FhmK,EAN0FkmK,EAAA,GAMlFC,EANkFD,EAAA,GAO3FjmK,EAAgB/R,kBAAQ,WAE5B,IAAMk4K,EAAgBr4K,EAAYkR,iBAClC,OAAO5N,IAAEijB,MAAM8xJ,QAAiB/6M,EAAY+6M,GAC3C,CAACpmC,EAAe+lC,IAEnB,OACEj3K,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,kBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,+BACZrM,GACC+K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGjL,EAAOA,OAAS,IACjB+K,EAAA1P,EAAA2P,cAAC0zF,GAAD,CAAgB1+F,OAAQA,EAAQqM,UAAU,0BAF5C,IAEuEtB,EAAA1P,EAAA2P,cAACs3K,GAAD,CAAwBv6K,MAAOkqB,MAKzGjoB,GACCe,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,wBACbtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,uBACO,IAAlB01K,GACCh3K,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAW+1K,EAAS/1K,WAC1BtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQklE,OAAQ8xG,EAAS9xG,OAAQF,UAAQ,EAACroE,MAAOkU,MAItD3O,IAAEulB,SAAS3W,KAAoC,IAAlB6lK,GAC5Bh3K,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAAA,UAAQqB,UAAW+1K,EAAS/1K,WAC1BtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQklE,OAAQ8xG,EAAS9xG,OAAQvoE,MAAOmU,EAAeuiF,SAAO,MAInEz+F,GACC+K,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAACu3K,GAAD,CAAiBviL,OAAQA,SCtFnCwiL,GAA2E,SAAAp5K,GAAA,IAAGyD,EAAHzD,EAAGyD,MAAO41K,EAAVr5K,EAAUq5K,SAAUpmH,EAApBjzD,EAAoBizD,SAApB,OAC/EtxD,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAWo2K,GACb13K,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,mBAAmBQ,GADrC,IACmD9B,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAcgwD,KAItEqmH,GAAiE,SAAAz0K,GAAgB,IAAbjO,EAAaiO,EAAbjO,OACzE8b,EAAY0xG,aAAyBxtH,EAASA,EAAOA,OAAS,IAC9DgK,EAAcG,kBAAQ,WAC1B,IAAMw4K,EAAe,CAAElnK,cAAUn0C,EAAW0O,KAAM,KAAMwlC,cAAUl0C,EAAWwO,IAAK,KAAMu4C,OAAQ,MAChG,OAAIruB,GACK8b,GAEF6mK,GACN,CAAC7mK,EAAW9b,IACT+8I,EAAUD,aAAc98I,GAE9B,OACE+K,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,gCACZtB,EAAA1P,EAAA2P,cAAC43K,GAAD,CAAY/1K,MAAM,MAAM41K,SAAS,iCAC7B1lC,GACAhyI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACkiH,GAAD,CAAkBnlH,MAAOiC,EAAYyR,SAAU6hF,aAAa,UAAW,IACvEvyF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,aAAhB,KACItB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO+T,EAAUwS,QAAS05C,SAAO,OAKnDj9D,EAAA1P,EAAA2P,cAAC43K,GAAD,CAAY/1K,MAAM,MAAM41K,SAAS,iCAC7B1lC,GACAhyI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACkiH,GAAD,CAAkBnlH,MAAOiC,EAAYwR,SAAU8hF,aAAa,UAAW,IACvEvyF,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,aAAhB,KACItB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO+T,EAAUyS,QAASy5C,SAAO,OAKnDj9D,EAAA1P,EAAA2P,cAAC43K,GAAD,CAAY/1K,MAAM,OAAO41K,SAAS,iCAChC13K,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO+T,EAAUT,KAAM+0D,UAAQ,KAEzCrlE,EAAA1P,EAAA2P,cAAC43K,GAAD,CAAY/1K,MAAM,OAAO41K,SAAS,iCAChC13K,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOiC,EAAYh0B,KAAMo6F,UAAQ,KAE3CrlE,EAAA1P,EAAA2P,cAAC43K,GAAD,CAAY/1K,MAAM,MAAM41K,SAAS,gCAC/B13K,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOiC,EAAYl0B,IAAKs6F,UAAQ,KAE1CrlE,EAAA1P,EAAA2P,cAAC43K,GAAD,CAAY/1K,MAAM,cAAc41K,SAAS,kCACvC13K,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO+T,EAAUf,WAAYq1D,UAAQ,OClDxCyyG,GAA2D,SAAAz5K,GAAgB,IAAbpJ,EAAaoJ,EAAbpJ,OACnE8iL,EAAgBn9H,YAAiB,SAAAp9C,GAAC,OAAIw6K,KAAuB3kK,MAAM7V,EAAGvI,KACtE4hE,EAAYjc,YAAiB,SAAAp9C,GAAC,OAAIw6K,KAAuBnhH,UAAUr5D,EAAGvI,KAE5E,OACE+K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG22D,QAA+Bt6F,IAAlBw7M,GAA+B/3K,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,MAC5C03K,GACC/3K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,SACED,EAAA1P,EAAA2P,cAAA,cAAS83K,EAAcE,cAGzBj4K,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,oBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UACbtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,6BACZtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BACdtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,wBAAwBzP,MAAM,oBAE7CmO,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cACby2K,EAAch7M,UAAYg7M,EAAc96M,MAAQ86M,EAAc76M,OAC7D8iC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACG63K,EAAch7M,SACfijC,EAAA1P,EAAA2P,cAAA,WACC83K,EAAc/6M,SAAW+6M,EAAc/6M,UAAYgjC,EAAA1P,EAAA2P,cAAA,WAAS,KAC5D83K,EAAc96M,KAJjB,KAIyB86M,EAAc76M,MAJvC,IAI+C66M,EAAcG,IAC3Dl4K,EAAA1P,EAAA2P,cAAA,WACC83K,EAAc36M,WAKvB4iC,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BACdtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAezP,MAAM,WAEpCmO,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cACdtB,EAAA1P,EAAA2P,cAAA,KAAGwyC,KAAK,6BAA6BslI,EAAc9xM,SAGvD+5B,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BACdtB,EAAA1P,EAAA2P,cAAA,KAAGqB,UAAU,eAAezP,MAAM,aAEpCmO,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cACdtB,EAAA1P,EAAA2P,cAAA,KAAGwyC,KAAMslI,EAAcI,QAAS71G,OAAO,QAAQzwE,MAAOkmL,EAAcE,aACjEF,EAAcI,aAMzBn4K,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UACbtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,uBACZtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAAhB,UACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAcy2K,EAAcK,SAE9Cp4K,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAAhB,YACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAcy2K,EAAcM,WAE9Cr4K,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAAhB,OACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAcy2K,EAAcO,MAE9Ct4K,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAAhB,aACCy2K,EAAcQ,WACbv4K,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cACdtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO+6K,EAAcQ,UAAW7hK,QAAM,EAACumD,SAAO,iCCpE/Du7G,GAET,CACFlkL,KAAM,CACJo6C,QAAS,UACT9a,QAAS,UACT4U,SAAU,WACVD,UAAW,cAIR,SAASkwI,GAAWzpC,GACzB,OAAOzsI,IAAEnH,IAAIo9K,GAAoBlkL,KAAM,SAACijB,EAAGD,GAAJ,OAAUA,IAAGxd,SAASk1I,GAaxD,SAAS0pC,GAAgBhtG,EAAsCkjE,GACpE,IACMz7H,EAAMu4D,EADCkjB,gBAEb,OAAOxvF,kBAAQ,kBAAQmD,IAAEgnH,YAAYqlB,IAAersI,IAAEhF,MAAM4V,GAAOy7H,EAAaz7H,GAAM,CAACy7H,EAAYz7H,IC1B9F,IAAMwlK,GAA2D,SAAAt6K,GAAgB,IAAbpJ,EAAaoJ,EAAbpJ,OAEnEwiD,EAAW0E,cACX47H,EAAgBn9H,YAAiB,SAAAp9C,GAAC,OAAIw6K,KAAuB3kK,MAAM7V,EAAGvI,KACtE8b,EAAY0xG,aAAyBxtH,GAAkB,IACvDkzC,EAASuwI,GAAa,SAAAl7K,GAAC,OAAIA,EAAEo7K,gBAAkB,YAC7C/hH,EAAcjc,YAAiB,SAAAp9C,GAAC,OAAIimJ,KAAej7G,SAASqwI,eAAer7K,EAAG,CAAEvI,SAAQkzC,aAAxF0uB,UACF53D,EAAcG,kBAAQ,WAC1B,IAAMw4K,EAAe,CAAElnK,SAAU,KAAMzlC,KAAM,KAAMwlC,SAAU,KAAM1lC,IAAK,KAAMu4C,OAAQ,MACtF,OAAIruB,GACK8b,GAEF6mK,GACN,CAAC7mK,EAAW9b,IAET6jL,EAAe,SAACt6M,GAGpB,OAFoB,IAAI4oD,KAAK5oD,GAAMu6M,SAAS,EAAG,EAAG,EAAG,KACvC,IAAI3xJ,MAAO2xJ,SAAS,EAAG,EAAG,EAAG,IAQ7C,OAJAt9H,oBAAU,WACRhE,EAASjsC,IAAiB2D,gBAAgB,CAAEla,OAAQA,EAAQkzC,aAC3D,CAAClzC,IAGF+K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACI22D,QAA+Bt6F,IAAlBw7M,GAAgC/3K,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,MAC9C03K,IAAkBlhH,GACjB72D,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,oBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UACbtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,2CACZtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAAhB,iBACCy2K,GACC/3K,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cACdtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO+6K,EAAciB,UAAW3zG,UAAQ,IADlD,KACwD,IACtDrlE,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO+6K,EAAckB,WAAY5zG,UAAQ,MAIvDrlE,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAAhB,UACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cACdtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOiC,EAAYqkB,OAAQ5M,QAAM,EAACumD,SAAO,MAGrDj9D,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAAhB,wBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cACdtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO+6K,EAAcmB,YAAaxiK,QAAM,EAACumD,SAAO,MAG5Dj9D,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAAhB,aACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cACdtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO+6K,EAAcoB,OAAQ9zG,UAAQ,MAGjDrlE,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAAhB,0BACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cACdtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO+6K,EAAcqB,gBAAiB/zG,UAAQ,MAG1DrlE,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAAhB,yBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cACdtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO+6K,EAAcsB,eAAgBh0G,UAAQ,MAGzDrlE,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAAhB,sBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cACby2K,EAAcuB,mBACZR,EAAaf,EAAcuB,mBAC5Bt7H,KAAM+5H,EAAcuB,kBAAkB5iK,OAAO,kBAKvD1W,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,UACbtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,2CACZtB,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAAhB,cACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,2BAA2Bi4K,KAAQxB,EAAcyB,WAAW9iK,OAAO,aAErF1W,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAAhB,sBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,2BACbi4K,KAAQxB,EAAc0B,mBAAmB/iK,OAAO,YAGrD1W,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAAhB,mBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cACdtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO+6K,EAAc2B,YAGjC15K,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAAhB,QACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cACdtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO+6K,EAAc7pG,SAGjCluE,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAAhB,wBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cAAci4K,KAAQxB,EAAc4B,eAAejjK,OAAO,WAE5E1W,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAAhB,uBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cACdtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAO+6K,EAAc6B,gBAAiBv0G,UAAQ,MAG1DrlE,EAAA1P,EAAA2P,cAAA,MAAIqB,UAAU,eACZtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,0BAAhB,yBACAtB,EAAA1P,EAAA2P,cAAA,QAAMqB,UAAU,cACby2K,EAAc8B,mBACZf,EAAaf,EAAc8B,mBAC5B77H,KAAM+5H,EAAc8B,kBAAkBnjK,OAAO,sBChItDojK,GAAoB,CAC/BhmD,OAAQxvH,gCAAqB,iBAArBA,GACRy1K,kBAAmBz1K,gCAAqB,6BAArBA,GACnB01K,mBAAoB11K,gCAAqB,8BAArBA,ICaT21K,GAAyD,CACpE,CAAEj9K,MAAO,WAAY8E,MAAO,WAAYhN,KAAM,MAC9C,CAAEkI,MAAO,WAAY8E,MAAO,WAAYhN,KAAM,MAC9C,CAAEkI,MAAO,YAAa8E,MAAO,YAAahN,KAAM,OAGrColL,GAA6D,SAAAh3K,GAAgB,IAAbjO,EAAaiO,EAAbjO,OACrEwiD,EAAW0E,cACXhU,EAASuwI,GAAa,SAAAl7K,GAAC,OAAIA,EAAE28K,iBAAmB,OAFkCrhG,EAG5DC,eAH4DC,EAAA3sG,OAAAqoD,EAAA,EAAAroD,CAAAysG,EAAA,GAG7Eg2D,GAH6E91D,EAAA,GAAAA,EAAA,IAIlFohG,EAAY33K,sBAChB,SAACssI,GAAD,OAAiCD,EAAcgrC,GAAkBE,mBAAmBjrC,KACpF,CAACD,IAEGurC,EAAyBj7K,kBAAQ,WACrC,IAAMw6B,EAAOr3B,IAAExa,KAAKkyL,GAAiB,SAAAz2K,GAAC,OAAIA,EAAE1O,OAASqzC,IACrD,OAAOvO,GAAcqgJ,GAAgB,IACpC,CAAC9xI,EAAQ8xI,KACNK,EAAmBl7K,kBAAQ,kBAAMi7K,EAAuBv4K,OAAO,CAACu4K,IAOtE5+H,oBAAU,WACJxmD,GACFwiD,EAASjsC,IAAiBwD,iBAAiB,CAAE/Z,OAAQA,EAAQgzC,MAAOE,MAErE,CAAClzC,EAAQkzC,EAAQsP,IACpB,IAAM8iI,EAAoB93K,sBAAY,SAACg9H,GACrC,IAAMx3F,EAAQw3F,EAAI3qI,KAClBslL,EAAUnyI,GACVwP,EAASjsC,IAAiBwD,iBAAiB,CAAE/Z,OAAQA,EAAQgzC,YAC5D,IA5BqF+T,EA6BpDpB,YAAiB,SAAAp9C,GAAC,OACpDimJ,KAAel7G,UAAUiyI,gBAAgBh9K,EAAG,CAAEvI,SAAQkzC,aADhD0uB,EA7BgF7a,EA6BhF6a,UAAW4jH,EA7BqEz+H,EA6BrEy+H,aAGnB,OACEz6K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,qCACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,+BACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,YACbtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACErD,MAAOq9K,EACP73K,SAAU+3K,EACVh8K,YAAa+7K,EACbh5K,UAAU,kDACVpgC,QAAS+4M,GACT75B,aAAa,EACbnzD,cAAc,OAKrBp2B,GAAa72D,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,OACZw2D,GACA72D,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,aACED,EAAA1P,EAAA2P,cAAA,aACED,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAAA,yBACAD,EAAA1P,EAAA2P,cAAA,oBACAD,EAAA1P,EAAA2P,cAAA,kBACAD,EAAA1P,EAAA2P,cAAA,qBACAD,EAAA1P,EAAA2P,cAAA,oBACAD,EAAA1P,EAAA2P,cAAA,uBAGJD,EAAA1P,EAAA2P,cAAA,aACGw6K,GACCz6K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGu6K,EAAa78K,OAAO,SAAA/+B,GAAI,OAAoB,IAAhBA,EAAKgsE,SAAczvC,IAAI,SAACv8B,EAAMyvB,GAAP,OAClD0R,EAAA1P,EAAA2P,cAAA,MAAIjY,IAAG,YAAA/f,OAAckgE,EAAd,KAAAlgE,OAAwBpJ,EAAKD,IAAM0vB,IACxC0R,EAAA1P,EAAA2P,cAAA,MAAIjY,IAAG,eAAA/f,OAAiBqmB,IAAUzvB,EAAK67M,aAAe18H,KAAMn/E,EAAK67M,cAAchkK,OAAO,cAAgB,IACtG1W,EAAA1P,EAAA2P,cAAA,MAAIjY,IAAG,UAAA/f,OAAYqmB,IACjB0R,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOn+B,EAAKgsE,OAAQw6B,UAAQ,KAEtCrlE,EAAA1P,EAAA2P,cAAA,MAAIjY,IAAG,aAAA/f,OAAeqmB,IA1DnB,SAACgsL,GAEtB,MAD+B,gBAApBA,EAAqCA,EAAmB,UAyDjBK,CAAeL,IAC/Ct6K,EAAA1P,EAAA2P,cAAA,MAAIjY,IAAG,UAAA/f,OAAYqmB,IAAUzvB,EAAK+7M,OAAS58H,KAAMn/E,EAAK+7M,QAAQlkK,OAAO,cAAgB,IACrF1W,EAAA1P,EAAA2P,cAAA,MAAIjY,IAAG,cAAA/f,OAAgBqmB,IAAUzvB,EAAK+rE,WAAaoT,KAAMn/E,EAAK+rE,YAAYl0B,OAAO,cAAgB,IACjG1W,EAAA1P,EAAA2P,cAAA,MAAIjY,IAAG,eAAA/f,OAAiBqmB,IAAUzvB,EAAKg8M,YAAc78H,KAAMn/E,EAAKg8M,aAAankK,OAAO,cAAgB,aClF7GokK,GAAwD,CACnE,CAAE99K,MAAO,UAAW8E,MAAO,YAAahN,KAAM,WAC9C,CAAEkI,MAAO,SAAU8E,MAAO,SAAUhN,KAAM,WAG/BimL,GAA4D,SAAA73K,GAAgB,IAAbjO,EAAaiO,EAAbjO,OACpEwiD,EAAW0E,cACXhU,EAASuwI,GAAa,SAAAl7K,GAAC,OAAIA,EAAEo7K,gBAAkB,YAFkC9/F,EAG3DC,eAH2DC,EAAA3sG,OAAAqoD,EAAA,EAAAroD,CAAAysG,EAAA,GAG5Eg2D,GAH4E91D,EAAA,GAAAA,EAAA,IAIjFohG,EAAY33K,sBAChB,SAACssI,GAAD,OAAiCD,EAAcgrC,GAAkBC,kBAAkBhrC,KACnF,CAACD,IAEGurC,EAAyBj7K,kBAAQ,WAErC,OADamD,IAAExa,KAAK+yL,GAAgB,SAAAt3K,GAAC,OAAIA,EAAE1O,OAASqzC,KAEnD,CAACA,IACEmyI,EAAmBl7K,kBAAQ,kBAAOi7K,EAAyBA,EAAuBv4K,MAAQ,aAAc,CAC5Gu4K,IAEF5+H,oBAAU,WACRhE,EAASjsC,IAAiB2D,gBAAgB,CAAEla,OAAQA,EAAQkzC,aAC3D,CAAClzC,EAAQkzC,EAAQsP,IACpB,IAAM8iI,EAAoB93K,sBAAY,SAACg9H,GACrC,IAAMu7C,EAAYv7C,EAAI3qI,KACtBslL,EAAUY,GACVvjI,EAASjsC,IAAiB2D,gBAAgB,CAAEla,OAAQA,EAAQkzC,OAAQ6yI,MACnE,IAtBoFh/H,EAuBvDpB,YAAiB,SAAAp9C,GAAC,OAAIimJ,KAAej7G,SAASqwI,eAAer7K,EAAG,CAAEvI,SAAQkzC,aAAlG0uB,EAvB+E7a,EAuB/E6a,UAAWruB,EAvBoEwT,EAuBpExT,SAEnB,OACExoC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,qCACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,+BACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,YACbtB,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CACErD,MAAOq9K,EACP73K,SAAU+3K,EACVh8K,YAAa+7K,EACbh5K,UAAU,kDACVpgC,QAAS45M,GACT16B,aAAa,EACbnzD,cAAc,OAKrBp2B,GAAa72D,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,OACZw2D,GACA72D,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,aACED,EAAA1P,EAAA2P,cAAA,aACED,EAAA1P,EAAA2P,cAAA,UACED,EAAA1P,EAAA2P,cAAA,2BACAD,EAAA1P,EAAA2P,cAAA,wBAEsB,cAArBq6K,GACCt6K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,2BACAD,EAAA1P,EAAA2P,cAAA,uBAIJD,EAAA1P,EAAA2P,cAAA,oBACsB,cAArBq6K,GACCt6K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,8BAKRD,EAAA1P,EAAA2P,cAAA,aACGuoC,GACCxoC,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACGsoC,EAASptC,IAAI,SAACv8B,EAAMyvB,GAAP,OACZ0R,EAAA1P,EAAA2P,cAAA,MAAIjY,IAAG,GAAA/f,OAAKgtB,EAAL,cAAAhtB,OAAwBqmB,IAC7B0R,EAAA1P,EAAA2P,cAAA,UACGphC,EAAKo8M,YACFj9H,KAAMn/E,EAAKo8M,aAAep8M,EAAKo8M,YAAY,IAAIvkK,OAAO,cACtD,gBAGN1W,EAAA1P,EAAA2P,cAAA,YACKulB,MAAM3mD,EAAKq8M,YAAc34K,IAAEhF,MAAM1+B,EAAKq8M,aACvCl7K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOn+B,EAAKq8M,UAAW71G,UAAQ,MAKvB,cAArBi1G,GACCt6K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,YACKulB,MAAM3mD,EAAKs8M,eAAiB54K,IAAEhF,MAAM1+B,EAAKs8M,gBAC1Cn7K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOn+B,EAAKs8M,aAAc91G,UAAQ,MAKhDrlE,EAAA1P,EAAA2P,cAAA,YACKulB,MAAM3mD,EAAKu8M,oBAAsB74K,IAAEhF,MAAM1+B,EAAKu8M,uBAC7C51J,MAAM3mD,EAAKw8M,qBAAuB94K,IAAEhF,MAAM1+B,EAAKw8M,sBAC/Cr7K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOn+B,EAAKu8M,kBAAmB/1G,UAAQ,IADjD,KAEErlE,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOn+B,EAAKw8M,mBAAoB3nF,SAAO,IAFjD,OASY,cAArB4mF,GACCt6K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,UAAKphC,EAAKspE,SAIQ,WAArBmyI,GACCt6K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,UAAKphC,EAAKspE,OAAOyuD,UAAU,KAIT,cAArB0jF,GACCt6K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,WACI1C,gBAAM1+B,EAAKy8M,qBACV91J,MAAM3mD,EAAKy8M,qBACX/9K,gBAAM1+B,EAAK08M,kCACX/1J,MAAM3mD,EAAK08M,iCACVv7K,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOn+B,EAAKy8M,kBAAmBj2G,UAAQ,IADjD,KAEErlE,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,CAAQrD,MAAOn+B,EAAK08M,+BAAgC7nF,SAAO,IAF7D,mBCpIkB8kF,GAAoBlkL,KAA9Do6C,cAAS9a,cAAS4U,eAAUD,gBAEvBizI,GAAiE,SAAAn9K,GAAgB,IAAbpJ,EAAaoJ,EAAbpJ,OACzEwiD,EAAW0E,cACXwyF,EAAM+pC,GAAa,SAAAl7K,GAAC,OAAIA,EAAEmxI,KAAO,YACvClzF,oBAAU,WACJxmD,GACFwiD,EAASjsC,IAAiBiE,qBAAqB,CAAExa,OAAQA,EAAOA,WAEjE,CAACA,IAPwF,IAAA6jF,EAQhEC,eARgEC,EAAA3sG,OAAAqoD,EAAA,EAAAroD,CAAAysG,EAAA,GAQjFg2D,GARiF91D,EAAA,GAAAA,EAAA,IAStF86C,EAASrxH,sBAAY,SAACssI,GAAD,OAAgBD,EAAcgrC,GAAkBhmD,OAAOib,KAAM,CAACD,IACzF,OACE9uI,EAAA1P,EAAA2P,cAAAD,EAAA1P,EAAA4P,SAAA,KACEF,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,sBACbtB,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,8BAA8BrM,GAAU+K,EAAA1P,EAAA2P,cAACw7K,GAAD,CAAYxmL,OAAQA,KAC3E+K,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,gCAAgCrM,GAAU+K,EAAA1P,EAAA2P,cAACy7K,GAAD,CAAczmL,OAAQA,MAIjF+K,EAAA1P,EAAA2P,cAAA,OAAKqB,UAAU,iBACbtB,EAAA1P,EAAA2P,cAACivI,GAAA5+I,EAAD,CAAM6+I,iBAAkBR,EAAK/vK,GAAG,2BAA2BgiC,SAAU,SAACmuI,GAAD,OAAgBjb,EAAOib,KAC1F/uI,EAAA1P,EAAA2P,cAACmvI,GAAA9+I,EAAD,CAAK++I,SAAU3gG,GAAS78C,MAAM,WAC3BoD,GAAU05I,IAAQjgG,IAAW1uC,EAAA1P,EAAA2P,cAAC07K,GAAD,CAAa1mL,OAAQA,EAAOA,UAE5D+K,EAAA1P,EAAA2P,cAACmvI,GAAA9+I,EAAD,CAAK++I,SAAUz7G,GAAS/hC,MAAM,WAC3BoD,GAAU05I,IAAQ/6G,IAAW5zB,EAAA1P,EAAA2P,cAAC27K,GAAD,CAAa3mL,OAAQA,EAAOA,UAE5D+K,EAAA1P,EAAA2P,cAACmvI,GAAA9+I,EAAD,CAAK++I,SAAU7mG,GAAU32C,MAAM,YAC5BoD,GAAU05I,IAAQnmG,IAAYxoC,EAAA1P,EAAA2P,cAAC47K,GAAD,CAAc5mL,OAAQA,EAAOA,UAE9D+K,EAAA1P,EAAA2P,cAACmvI,GAAA9+I,EAAD,CAAK++I,SAAU9mG,GAAW12C,MAAM,aAC7BoD,GAAU05I,IAAQpmG,IAAavoC,EAAA1P,EAAA2P,cAAC67K,GAAD,CAAe7mL,OAAQA,EAAOA,cCnCpEu6F,GAAe,SAACtyH,GAAD,OAAuBA,GACtCuyH,GAAYtiC,0BAChBqiC,GACA,SAAAj4E,GAAC,OAAIA,EAAEtiB,SAEH8mL,GAAmB7lG,YAAmBsZ,GAAc,SAAAj4E,GAAC,OAAIA,EAAE25H,gBAC3DthD,GAAc1Z,YAAmBsZ,GAAc,SAAAj4E,GAAC,OAAIA,EAAEguC,WACtD+oD,GAAY,CAChBr5G,OAAQw6F,GACRK,WAAY5Z,YAAmBuZ,GAAW,SAAAl4E,GAAC,OAAKA,EAAIA,EAAEtiB,YAAS14B,IAC/DgpF,SAAU2wB,YAAmBuZ,GAAWG,GAAa,SAACpyF,EAAGtL,GACvD,OAAa,IAANA,QAAoB31B,IAANihC,IAEvB0zI,cAAe6qC,IAoBJC,GAAsE,SAAA39K,GAAgB,IAAbpJ,EAAaoJ,EAAbpJ,OAC9Ei8I,EAAgBt2F,YAAiB,SAAAp9C,GAAC,OAAI0uE,aAAiB1uE,EAAGvI,EAAOA,UACvE,OAAO+K,EAAA1P,EAAA2P,cAACI,EAAA,EAAD,KAAY6wI,GAAiBlxI,EAAA1P,EAAA2P,cAACg8K,GAAD,CAAchnL,OAAQA,MAG/CinL,GAAkD,WAC7D,IAAMh/M,EAAQ0xH,eACIztE,EAAQmnE,eAAlBnP,SAEFgjG,EAAU15K,sBAAY,SAACg2C,GAC3Bt3B,EAAI,SAAUs3B,EAAK,CAAE46B,SAAS,KAC7B,IACGp+E,EAASq5G,GAAUr5G,OAAO/3B,IA7BO,WACvC,IAAMA,EAAQ0xH,eACRwtF,EAAc9tE,GAAUr5G,OAAO/3B,GACnBikD,EAAQmnE,eAAlBnP,SAEF/3B,EAAY3+C,sBAAY,SAACg2C,GAAD,OAAsBt3B,EAAI,SAAUs3B,EAAK,CAAE46B,SAAS,KAAS,CAAClyD,IACtF2tF,EAAiBrsG,sBACrB,SAACxN,IACKA,GAAYmnL,GAAeA,EAAYnnL,SAAWA,EAAOA,QAC3DmsD,EAAUnsD,IAGd,CAACmnL,EAAah7H,IAEhB4tD,aAAqB,SAAUF,EAAgB,CAAEG,mBAAmB,IAiBpEotE,GAOA,IAAM9kH,EAASn4D,kBAAQ,kBAAyB,IAAnBliC,EAAMqoF,UAAmB,CAACroF,EAAMqoF,WAK7D,OAFAomB,GAAuC,SAAC+jC,GAAD,OAA6BA,EAAWz6G,OAASy6G,EAAWz6G,OAAOA,YAAS14B,IAE5GyjC,EAAA1P,EAAA2P,cAAC0vG,GAAUE,aAAcp+H,IAAU8E,MAAOypB,EAAA1P,EAAA2P,cAACq8K,GAAD,CAAahxH,UAAW75E,IAAU8E,MAAO6qE,UAAW+6H,KAAe5kH,GAAUtiE,GAAU+K,EAAA1P,EAAA2P,cAACs8K,GAAD,CAAmBtnL,OAAQA,MClExJunL,GAAoB,SAAC9sE,EAA6B1+E,GAC7D,IAAM9zD,EAAQgtF,aAAcl5B,GAAUm5B,aAA6BulD,EAAY1+E,GAAU0+E,EAEzF,OAAQ1+E,EAAO5xD,MACb,KAAK2+E,mBAAQ+7H,GAAkBhmD,QAC7B,IAAMkb,EAASh+G,EAAOtZ,QACtB,OAAOrrC,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEF65I,IAAK8pC,GAAWzpC,GAAUA,EAASwpC,GAAoBlkL,KAAKo6C,YAIlE,KAAKqP,mBAAQ+7H,GAAkBC,mBAC7B,OAAO1tM,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEF8jL,eAAgB5nJ,EAAOtZ,YAI7B,KAAKqmC,mBAAQ+7H,GAAkBE,oBAC7B,OAAO3tM,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEFqlL,gBAAiBnpJ,EAAOtZ,YAK9B,QACE,OAAOx6C,ICtCAu/M,GAAmB,CAC9B3oD,OAAQxvH,gCAAqB,iBAArBA,GACRo4K,gBAAiBp4K,gCAAqB,4BAArBA,ICDNq4K,GAAmB,SAACjtE,EAA4B1+E,GAC3D,IAAM9zD,EAAQgtF,aAAcl5B,GAAUm5B,aAAqCulD,EAAY1+E,GAAU0+E,EAEjG,OAAQ1+E,EAAO5xD,MACb,KAAK2+E,mBAAQ0+H,GAAiB3oD,QAC5B,IAAMkb,EAASh+G,EAAOtZ,QACtB,OAAOrrC,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEF65I,IAAKK,MAIX,KAAKjxF,mBAAQ0+H,GAAiBC,iBAC5B,IAAME,EAAa5rJ,EAAOtZ,QAC1B,OAAOrrC,OAAAy0B,EAAA,EAAAz0B,CAAA,GACFnP,EADL,CAEE43B,KAAKzoB,OAAAy0B,EAAA,EAAAz0B,CAAA,GACAnP,EAAM43B,KADP,CAEF+nL,cAAeD,MAKrB,QACE,OAAO1/M,ICdA4/M,GAAmD,SAAAz+K,GAA8B,IAA3B+iD,EAA2B/iD,EAA3B+iD,UAAWkK,EAAgBjtD,EAAhBitD,UACtEr2D,EAAW25F,eAAX35F,OACEmnD,EAAeN,cAAfM,WAEApzD,GADSmzD,cACGgtC,eAAZngG,SACFmhB,EAAiBiyC,EAAW03C,WAAW1yC,UACvCrtD,EAAU6mD,YAAiB,SAAAp9C,GAAC,OAAIorF,YAAaprF,EAAGxU,KAEhD4X,EAAW6B,sBACf,SAACzF,GACC,IAAM8yF,EAAa9yF,EAAQA,EAAMlI,UAAOv4B,EACpCuzH,IACF1uC,EAAU0uC,GACN/7F,GACFoW,EAAepW,EAAS+7F,IAGvBA,IACH1uC,EAAU,MACNrtD,GACFoW,EAAepW,EAAS,QAI9B,CAACqtD,EAAWrtD,IAGRyM,EAAUiC,sBAAY,gBACVlmC,IAAZw3B,IACFqtD,OAAU7kF,GACV4tC,EAAepW,OAASx3B,KAEzB,CAAC4tC,EAAgBpW,IAEpB,OACEiM,EAAA1P,EAAA2P,cAAC+zF,GAAD,CACEd,WAAW,EACX5nC,UAAWA,EACXr2D,OAAQA,QAAU14B,EAClBgpF,UAAU,EACV3kD,SAAUA,EACVrC,YAAY,YACZE,sBAAsB,EACtB+B,QAASA,EACT4yF,UAAU,EACVC,aAAa,KCtDN0pF,GAAkB,WAE7B,OALkC,SAAC/zL,GACnC,OAAO4xD,YAAiB,SAAAp9C,GAAC,OAAI0nD,KAAcjoD,KAAKO,EAAGxU,KAI5Cg0L,CADSvoG,iBCTLwoG,GAAa,CACxB,MACA,MACA,OACA,OACA,KACA,MACA,MACA,OACA,KACA,MACA,KACA,KACA,MACA,MACA,OACA,MACA,MACA,MACA,MACA,OACA,MACA,KACA,MACA,MACA,MACA,KACA,IACA,MACA,MACA,MACA,OAGWC,GAAgB,CAC3B,OACA,OACA,OACA,KACA,QACA,OACA,OACA,OACA,OACA,OACA,OACA,QACA,OACA,OACA,MACA,OACA,OACA,OACA,MACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,MACA,KACA,OACA,MACA,OACA,OACA,MACA,OACA,OACA,OACA,MACA,OACA,OACA,MACA,OACA,OACA,OACA,OACA,OACA,KACA,OACA,OACA,MACA,OACA,OACA,MACA,OACA,OACA,OACA,OACA,OACA,MACA,OACA,OACA,OACA,KACA,OACA,OACA,MACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,MACA,MACA,OACA,MACA,OACA,QAGWC,GAAe,CAC1B,MACA,MACA,OACA,OACA,MACA,OACA,OACA,MACA,MACA,MACA,MACA,IACA,MACA,OACA,MACA,MACA,MACA,OACA,OACA,OACA,MACA,MACA,QACA,OACA,KACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,MACA,MACA,OACA,OACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,MACA,OACA,MACA,MACA,IACA,MACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,KACA,MACA,MACA,QACA,MACA,OACA,MACA,KACA,OACA,MACA,MACA,MACA,MACA,OACA,KACA,OACA,OACA,MACA,OACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,MACA,OACA,OACA,MACA,KACA,MACA,MACA,OACA,KACA,OACA,OACA,MACA,MACA,KACA,MACA,KACA,MACA,OACA,OACA,OACA,IACA,MACA,OACA,MACA,MACA,MACA,KACA,OACA,KACA,QACA,MACA,MACA,MACA,MACA,KACA,MACA,MACA,OACA,MACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,KACA,MACA,OACA,MACA,OACA,MACA,MACA,QACA,QACA,OACA,KACA,OACA,IACA,MACA,MACA,MACA,MACA,MACA,MACA,KACA,MACA,OACA,MACA,MACA,OACA,MACA,MACA,KACA,KACA,MACA,MACA,MACA,MACA,OACA,MACA,MACA,KACA,OACA,KACA,KACA,MACA,OACA,OACA,MACA,MACA,OACA,KACA,OACA,MACA,MACA,MACA,OACA,KACA,MACA,OACA,MACA,OACA,MACA,MACA,IACA,OACA,MACA,OACA,OACA,MACA,MACA,MACA,MACA,OACA,KACA,KACA,KACA,MACA,KACA,MACA,OACA,KACA,MACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,OACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,MACA,MACA,OACA,OACA,MACA,OACA,OACA,KACA,OACA,MACA,MACA,KACA,MACA,MACA,OACA,OACA,MACA,OACA,MACA,MACA,OACA,IACA,OACA,MACA,MACA,MACA,MACA,OACA,MACA,IACA,MACA,OACA,MACA,MACA,MACA,OACA,MACA,IACA,KACA,KACA,MACA,KACA,OACA,KACA,MACA,MACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,IACA,MACA,MACA,MACA,MACA,MACA,OACA,MACA,MACA,MACA,MACA,KACA,MACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,KACA,OACA,MACA,MACA,MACA,OACA,OACA,MACA,KACA,MACA,MACA,OACA,MACA,OACA,MACA,OACA,OACA,MACA,MACA,OACA,MACA,MACA,OACA,MACA,KACA,MACA,OACA,MACA,OACA,OACA,MACA,MACA,OACA,MACA,OACA,MACA,OACA,MACA,MACA,OACA,OACA,MACA,KACA,OACA,OACA,OACA,MACA,OACA,MACA,MACA,OACA,MACA,KACA,MACA,MACA,MACA,MACA,OACA,MACA,MACA,MACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,MACA,OACA,MACA,KACA,MACA,MACA,IACA,MACA,OACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,MACA,OACA,MACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,MACA,MACA,KACA,MACA,MACA,OACA,MACA,MACA,MACA,OACA,MACA,OACA,MACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,MACA,OACA,MACA,MACA,OACA,MACA,OACA,MACA,MACA,OACA,MACA,MACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,KACA,OACA,MACA,OACA,IACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,KACA,MACA,MACA,MACA,OACA,MACA,MACA,KACA,MACA,KACA,MACA,MACA,OACA,OACA,MACA,MACA,OACA,MACA,MACA,OACA,MACA,OACA,OC7mBWC,GAA6C,SAAA/+K,GAAUhyB,OAAAu9F,GAAA,EAAAv9F,CAAAgyB,GAAD,IAAA29C,EAElCpB,YAAiB,SAAAp9C,GAAC,MAAK,CACpD2K,UAAW4oI,YAAavzI,GACxBsqC,QAASkpG,YAAmBxzI,MAFtB2K,EAFyD6zC,EAEzD7zC,UAAW2/B,EAF8CkU,EAE9ClU,QAIb70B,EAAY2nC,YAAiBk2D,IAE7BusE,GADsBziI,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE60C,YAAYsoB,yBACxC/f,YAAiB,SAAAp9C,GAAC,OAAIA,EAAEyV,UAAUskD,UACpD+lH,EAAsB1iI,YAAiB,SAAAp9C,GAAC,OAAIA,EAAE2K,UAAU0lD,aAGxD0a,EAAkBt1D,EAAU7X,IAAI,SAAA0V,GAAQ,OAAIA,EAASiB,mBACrDwrK,EAAkBp1K,EAAU/M,IAAI,SAAAoiL,GAAQ,OAAIA,EAASvoL,SACpC,IAAnB6yC,EAAQ3nC,QAAqC,IAArB8S,EAAU9S,SACpC2nC,EAA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","file":"static/js/main.766e061c.chunk.js","sourcesContent":["export var DefaultAccountDetails = {\n accountNames: [],\n accountNumber: undefined,\n accountStatus: undefined,\n accountType: undefined,\n repCode: undefined,\n repFirstName: undefined,\n repLastName: undefined,\n repPhoneNumber: undefined,\n mailingAddress: {\n address1: undefined,\n address2: undefined,\n city: undefined,\n state: undefined,\n postalCode: undefined,\n country: undefined\n },\n physicalAddress: {\n address1: undefined,\n address2: undefined,\n city: undefined,\n state: undefined,\n postalCode: undefined,\n country: undefined\n },\n email: undefined,\n homePhone: undefined,\n mobilePhone: undefined,\n workPhone: undefined,\n lastChanged: undefined,\n commissions: {\n commissionCodeId: -1\n }\n};\nexport var ClearerType;\n\n(function (ClearerType) {\n ClearerType[\"RQD\"] = \"RQD\";\n ClearerType[\"Apex\"] = \"Apex\";\n})(ClearerType || (ClearerType = {}));","export var LanguageType;\n\n(function (LanguageType) {\n LanguageType[\"Chinese\"] = \"zh\";\n LanguageType[\"English\"] = \"en\";\n LanguageType[\"Spanish\"] = \"es\";\n})(LanguageType || (LanguageType = {}));\n\nexport var DefaultLanguageKeys;\n\n(function (DefaultLanguageKeys) {\n DefaultLanguageKeys[\"Error\"] = \"error\";\n DefaultLanguageKeys[\"Label\"] = \"label\";\n DefaultLanguageKeys[\"Text\"] = \"text\";\n})(DefaultLanguageKeys || (DefaultLanguageKeys = {}));","export var DefaultAccountManagementDetails = {\n email: undefined,\n physicalAddress: undefined,\n mailingAddress: undefined,\n homePhone: undefined,\n mobilePhone: undefined,\n workPhone: undefined\n};\nexport var DefaultAccountUpdateDetails = {\n accountId: 0,\n accountName: '',\n accountNumber: '',\n state: '',\n confirmedDate: undefined,\n created: {\n userId: 0,\n name: '',\n date: undefined,\n reason: ''\n },\n firmRejected: {\n date: undefined,\n name: '',\n reason: '',\n userId: 0\n },\n firmReviewed: {\n date: undefined,\n name: '',\n reason: '',\n userId: 0\n },\n id: 0,\n item: '',\n note: '',\n original: {\n accountHolder: {\n email: '',\n address: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n mailingAddress: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n phones: [{\n phoneNumber: '',\n type: ''\n }],\n maritalStatus: '',\n dependents: 0,\n birthCountry: '',\n citizenshipCountry: '',\n employmentType: '',\n jobPosition: '',\n yearsEmployed: '',\n employer: '',\n employerAddress: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n disclosures: {\n govOfficial: false,\n industryEmployed: false,\n irsWithholding: false,\n stakeholder: false\n },\n disclosuresGovOfficialImmediateFamily: '',\n disclosuresGovOfficialPoliticalOrg: '',\n disclosuresIndustryEmployedFirmName: '',\n disclosuresStakeholderTickerSymbol: ''\n },\n beneficiaries: [],\n flexibilityType: '',\n tradeGoalType: '',\n investmentObjectiveType: '',\n disclosuresForeignBankUSAgent: '',\n experience: {\n bonds: {\n tradesPerYear: '',\n years: ''\n },\n commodities: {\n tradesPerYear: '',\n years: ''\n },\n margins: {\n tradesPerYear: '',\n years: ''\n },\n options: {\n tradesPerYear: '',\n years: ''\n },\n stocks: {\n tradesPerYear: '',\n years: ''\n }\n },\n annualIncome: '',\n totalNetWorth: '',\n liquidNetWorth: '',\n characteristics: {\n risk: '',\n bracket: '',\n horizon: '',\n liquidity: ''\n },\n trustedContact: {\n address: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n email: '',\n firstName: '',\n middleInitial: '',\n lastName: '',\n suffix: '',\n phones: [{\n phoneNumber: '',\n type: ''\n }]\n },\n tradingAuthorization: {\n address: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n citizenshipCountry: '',\n dateOfBirth: '',\n disclosures: {\n industryEmployed: false,\n stakeholder: false\n },\n disclosuresIndustryEmployedFirmName: '',\n disclosuresStakeholderTickerSymbol: '',\n email: '',\n employer: '',\n employmentType: '',\n firstName: '',\n middleInitial: '',\n suffix: '',\n foreignTaxIdCountry: '',\n foreignTaxIdNumber: '',\n jobPosition: '',\n lastName: '',\n phones: [{\n phoneNumber: '',\n type: ''\n }],\n ssnSecret: '',\n type: ''\n },\n accountDisclosures: {\n foreignBank: false,\n foreignFinancialInstitution: false,\n foreignShellBank: false,\n proprietarySecuritiesAccount: false\n },\n serviceProfile: {\n issuerDirectCommunication: ''\n },\n state: ''\n },\n updated: {\n accountHolder: {\n email: '',\n address: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n mailingAddress: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n phones: [{\n phoneNumber: '',\n type: ''\n }],\n maritalStatus: '',\n dependents: 0,\n birthCountry: '',\n citizenshipCountry: '',\n employmentType: '',\n jobPosition: '',\n yearsEmployed: '',\n employer: '',\n employerAddress: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n disclosures: {\n govOfficial: false,\n industryEmployed: false,\n irsWithholding: false,\n stakeholder: false\n },\n disclosuresGovOfficialImmediateFamily: '',\n disclosuresGovOfficialPoliticalOrg: '',\n disclosuresIndustryEmployedFirmName: '',\n disclosuresStakeholderTickerSymbol: ''\n },\n beneficiaries: [],\n flexibilityType: '',\n tradeGoalType: '',\n investmentObjectiveType: '',\n disclosuresForeignBankUSAgent: '',\n experience: {\n bonds: {\n tradesPerYear: '',\n years: ''\n },\n commodities: {\n tradesPerYear: '',\n years: ''\n },\n margins: {\n tradesPerYear: '',\n years: ''\n },\n options: {\n tradesPerYear: '',\n years: ''\n },\n stocks: {\n tradesPerYear: '',\n years: ''\n }\n },\n annualIncome: '',\n totalNetWorth: '',\n liquidNetWorth: '',\n characteristics: {\n risk: '',\n bracket: '',\n horizon: '',\n liquidity: ''\n },\n trustedContact: {\n address: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n email: '',\n firstName: '',\n middleInitial: '',\n suffix: '',\n lastName: '',\n phones: [{\n phoneNumber: '',\n type: ''\n }]\n },\n tradingAuthorization: {\n address: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n citizenshipCountry: '',\n dateOfBirth: '',\n disclosures: {\n industryEmployed: false,\n stakeholder: false\n },\n disclosuresIndustryEmployedFirmName: '',\n disclosuresStakeholderTickerSymbol: '',\n email: '',\n employer: '',\n employmentType: '',\n firstName: '',\n middleInitial: '',\n foreignTaxIdCountry: '',\n foreignTaxIdNumber: '',\n jobPosition: '',\n suffix: '',\n lastName: '',\n phones: [{\n phoneNumber: '',\n type: ''\n }],\n ssnSecret: '',\n type: ''\n },\n accountDisclosures: {\n foreignBank: false,\n foreignFinancialInstitution: false,\n foreignShellBank: false,\n proprietarySecuritiesAccount: false\n },\n serviceProfile: {\n issuerDirectCommunication: ''\n },\n uploadedDocuments: [{\n accountHolder: 0,\n documentId: 0,\n documentName: '',\n state: undefined\n }]\n },\n responseCode: 0\n};\nexport var DefaultUserUpdateAccountDetails = {\n accountDisclosures: {\n entityIssuesBearerShares: false,\n entityNegativeNews: false,\n entityPublicOfficials: false,\n entityServicesForeignShellBanks: false,\n foreignBank: false,\n foreignFinancialInstitution: false,\n foreignShellBank: false,\n proprietarySecuritiesAccount: false\n },\n accountHolders: [{\n address: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n birthCountry: '',\n citizenshipCountry: '',\n dependents: 0,\n disclosures: {\n govOfficial: false,\n industryEmployed: false,\n irsWithholding: false,\n stakeholder: false\n },\n disclosuresGovOfficialImmediateFamily: '',\n disclosuresGovOfficialPoliticalOrg: '',\n disclosuresIndustryEmployedFirmName: '',\n disclosuresStakeholderTickerSymbol: '',\n email: '',\n employer: '',\n employerAddress: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n employmentType: '',\n firstName: '',\n middleInitial: '',\n jobPosition: '',\n jointTenantsInCommonInterestPercent: 0,\n lastName: '',\n suffix: '',\n mailingAddress: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n maritalStatus: '',\n phones: [{\n phoneNumber: '',\n type: ''\n }],\n ssnSecret: '',\n yearsEmployed: ''\n }],\n accountId: 0,\n accountNumber: '',\n agreements: {\n corporateCash: null,\n corporateMargin: null,\n customerAndPrivacyPolicy: null,\n entityMargin: null,\n entityOption: null,\n iRARothAdoption: null,\n iRASepAdoption: null,\n iRASimpleAdoption: null,\n iRACoverDellAdoption: null,\n jointCommunity: null,\n jointSurvivor: null,\n jointTenantsInCommon: null,\n jointTenantsInEntirety: null,\n limitedMargin: null,\n llcAccount: null,\n margin: null,\n option: null,\n riskDisclosure: null,\n electronicConsent: null,\n onlineServices: null,\n exchangeDataAgreement: null,\n clientRelationshipSummary: null,\n apiAgreement: null,\n rqdCustomerAgreement: null,\n rqdOption: null,\n rqdMargin: null,\n rqdLimitedMargin: null,\n rqdExecutionDisclosures: null,\n rqdClearingDisclosures: null,\n rqdCustomerInformationBrochure: null,\n rqdPrivacyPolicy: null,\n rqdPrivacyNotice: null,\n rqdResponsibilitiesOfIbAndCarryingBroker: null,\n rqdSpecialStatementForUncoveredOptionWriters: null,\n rqdPowerOfAttorney: null,\n rqdLimitedTradingAuthorization: null\n },\n annualIncome: '',\n beneficiaries: [],\n characteristics: {\n bracket: '',\n horizon: '',\n liquidity: '',\n risk: ''\n },\n disclosuresForeignBankUSAgent: '',\n entityAccountType: '',\n experience: {\n bonds: {\n tradesPerYear: '',\n years: ''\n },\n commodities: {\n tradesPerYear: '',\n years: ''\n },\n margins: {\n tradesPerYear: '',\n years: ''\n },\n options: {\n tradesPerYear: '',\n years: ''\n },\n stocks: {\n tradesPerYear: '',\n years: ''\n }\n },\n flexibilityType: '',\n investmentObjectiveType: '',\n jointAccountType: '',\n jointCommunityPropertyState: '',\n lastChanged: {\n address: '',\n email: '',\n phone: ''\n },\n liquidNetWorth: '',\n retirementAccountType: '',\n totalNetWorth: '',\n tradeAuthorization: false,\n tradeAuthorizationAgentName: '',\n tradingAuthorization: {\n address: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n citizenshipCountry: '',\n dateOfBirth: '',\n disclosures: {\n industryEmployed: false,\n stakeholder: false\n },\n disclosuresIndustryEmployedFirmName: '',\n disclosuresStakeholderTickerSymbol: '',\n email: '',\n employer: '',\n employmentType: '',\n firstName: '',\n middleInitial: '',\n suffix: '',\n foreignTaxIdCountry: '',\n foreignTaxIdNumber: '',\n jobPosition: '',\n lastName: '',\n phones: [{\n phoneNumber: '',\n type: ''\n }],\n ssnSecret: '',\n type: ''\n },\n tradeGoalType: '',\n trustedContact: {\n address: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n email: '',\n firstName: '',\n middleInitial: '',\n suffix: '',\n lastName: '',\n phones: [{\n phoneNumber: '',\n type: ''\n }]\n },\n serviceProfile: {\n issuerDirectCommunication: ''\n },\n type: '',\n clearer: '',\n communicationPreferences: {\n deliveryType: '',\n preferredElectronicFormat: '',\n duplicateStatements: '',\n subscribeToPromotionalEmails: false\n }\n};\nexport var AccountManagementEntityType;\n\n(function (AccountManagementEntityType) {\n AccountManagementEntityType[\"Email\"] = \"Email\";\n AccountManagementEntityType[\"Phone\"] = \"PhoneNumber\";\n AccountManagementEntityType[\"Address\"] = \"Address\";\n AccountManagementEntityType[\"MailingAddress\"] = \"MailingAddress\";\n AccountManagementEntityType[\"TradeGoal\"] = \"TradeGoal\";\n AccountManagementEntityType[\"Financial\"] = \"Financial\";\n AccountManagementEntityType[\"Employment\"] = \"Employment\";\n AccountManagementEntityType[\"TrustedContact\"] = \"TrustedContact\";\n AccountManagementEntityType[\"Disclosures\"] = \"Disclosures\";\n AccountManagementEntityType[\"AccountDisclosures\"] = \"AccountDisclosures\";\n AccountManagementEntityType[\"Experience\"] = \"Experience\";\n AccountManagementEntityType[\"Test\"] = \"test\";\n AccountManagementEntityType[\"Flexability\"] = \"Flexibility\";\n AccountManagementEntityType[\"TradeAuthorization\"] = \"TradeAuthorization\";\n AccountManagementEntityType[\"ServiceProfile\"] = \"ServiceProfile\";\n AccountManagementEntityType[\"IndustryEmployed\"] = \"IndustryEmployed\";\n AccountManagementEntityType[\"Suitability\"] = \"Suitability\";\n AccountManagementEntityType[\"Beneficiaries\"] = \"Beneficiaries\";\n AccountManagementEntityType[\"RemoveTradeAuthorization\"] = \"RemoveTradeAuthorization\";\n AccountManagementEntityType[\"PersonalInformation\"] = \"PersonalInformation\";\n})(AccountManagementEntityType || (AccountManagementEntityType = {}));\n\nexport var AccountManagementInvestmentObjectives;\n\n(function (AccountManagementInvestmentObjectives) {\n AccountManagementInvestmentObjectives[\"CapitalPreservation\"] = \"CapitalPreservation\";\n AccountManagementInvestmentObjectives[\"Income\"] = \"Income\";\n AccountManagementInvestmentObjectives[\"Growth\"] = \"Growth\";\n AccountManagementInvestmentObjectives[\"GrowthandIncome\"] = \"GrowthandIncome\";\n AccountManagementInvestmentObjectives[\"Speculation\"] = \"Speculation\";\n})(AccountManagementInvestmentObjectives || (AccountManagementInvestmentObjectives = {}));\n\nexport var AnnualIncomeOptions;\n\n(function (AnnualIncomeOptions) {\n AnnualIncomeOptions[\"LessThan25K\"] = \"Under $25,000\";\n AnnualIncomeOptions[\"Between25KAnd50K\"] = \"$25,000 - $50,000\";\n AnnualIncomeOptions[\"Between50KAnd100K\"] = \"$50,000 - $100,000\";\n AnnualIncomeOptions[\"Between100KAnd200K\"] = \"$100,000 - $200,000\";\n AnnualIncomeOptions[\"Between200KAnd300K\"] = \"$200,000 - $300,000\";\n AnnualIncomeOptions[\"Between300KAnd500K\"] = \"$300,000 - $500,000\";\n AnnualIncomeOptions[\"Between500KAnd1Point2M\"] = \"$500,000 - $1,200,000\";\n AnnualIncomeOptions[\"Over1Point2M\"] = \"Over $1,200,000\";\n})(AnnualIncomeOptions || (AnnualIncomeOptions = {}));\n\nexport var AllAnnualIncomeOptions = [AnnualIncomeOptions.LessThan25K, AnnualIncomeOptions.Between25KAnd50K, AnnualIncomeOptions.Between50KAnd100K, AnnualIncomeOptions.Between100KAnd200K, AnnualIncomeOptions.Between200KAnd300K, AnnualIncomeOptions.Between300KAnd500K, AnnualIncomeOptions.Between500KAnd1Point2M, AnnualIncomeOptions.Over1Point2M];\nexport var UpdatePendingStates = ['PendingConfirm', 'PendingFirmReview', 'PendingReview'];\nexport var UpdateStates = [].concat(UpdatePendingStates, ['Approved', 'Complete', 'Rejected', 'Canceled', 'Cancelled', 'Submitted']);\nexport var TimeHorizonType;\n\n(function (TimeHorizonType) {\n TimeHorizonType[\"Average\"] = \"Average\";\n TimeHorizonType[\"Long\"] = \"Long\";\n TimeHorizonType[\"Short\"] = \"Short\";\n})(TimeHorizonType || (TimeHorizonType = {}));\n\nexport var RiskToleranceType;\n\n(function (RiskToleranceType) {\n RiskToleranceType[\"High\"] = \"High\";\n RiskToleranceType[\"Low\"] = \"Low\";\n RiskToleranceType[\"Medium\"] = \"Medium\";\n})(RiskToleranceType || (RiskToleranceType = {}));\n\nexport var RiskLevel;\n\n(function (RiskLevel) {\n RiskLevel[RiskLevel[\"None\"] = 0] = \"None\";\n RiskLevel[RiskLevel[\"VeryLow\"] = 1] = \"VeryLow\";\n RiskLevel[RiskLevel[\"Low\"] = 2] = \"Low\";\n RiskLevel[RiskLevel[\"Moderate\"] = 3] = \"Moderate\";\n RiskLevel[RiskLevel[\"High\"] = 4] = \"High\";\n})(RiskLevel || (RiskLevel = {}));\n\nexport var MonetaryRangeType;\n\n(function (MonetaryRangeType) {\n MonetaryRangeType[\"Between100KAnd200K\"] = \"Between100KAnd200K\";\n MonetaryRangeType[\"Between1MAnd5M\"] = \"Between1MAnd5M\";\n MonetaryRangeType[\"Between200KAnd500K\"] = \"Between200KAnd500K\";\n MonetaryRangeType[\"Between500KAnd1M\"] = \"Between500KAnd1M\";\n MonetaryRangeType[\"Between50KAnd100K\"] = \"Between50KAnd100K\";\n MonetaryRangeType[\"LessThan50K\"] = \"LessThan50K\";\n MonetaryRangeType[\"MoreThan5M\"] = \"MoreThan5M\";\n})(MonetaryRangeType || (MonetaryRangeType = {}));\n\nexport var LiquidityNeedType;\n\n(function (LiquidityNeedType) {\n LiquidityNeedType[\"NotImportant\"] = \"NotImportant\";\n LiquidityNeedType[\"SomewhatImportant\"] = \"SomewhatImportant\";\n LiquidityNeedType[\"VeryImportant\"] = \"VeryImportant\";\n})(LiquidityNeedType || (LiquidityNeedType = {}));\n\nexport var InvestmentObjectiveType;\n\n(function (InvestmentObjectiveType) {\n InvestmentObjectiveType[\"CapitalPreservation\"] = \"CapitalPreservation\";\n InvestmentObjectiveType[\"Growth\"] = \"Growth\";\n InvestmentObjectiveType[\"GrowthAndIncome\"] = \"GrowthAndIncome\";\n InvestmentObjectiveType[\"Income\"] = \"Income\";\n InvestmentObjectiveType[\"Speculation\"] = \"Speculation\";\n})(InvestmentObjectiveType || (InvestmentObjectiveType = {}));\n\nexport var InvestmentObjectiveDescription;\n\n(function (InvestmentObjectiveDescription) {\n InvestmentObjectiveDescription[\"CapitalPreservation\"] = \"Protect initial investment through securities that minimize potential loss of principal. Returns may not be adequate to offest inflation.\";\n InvestmentObjectiveDescription[\"Growth\"] = \"Increase value over time through securities with historically moderate to above-average risk of principal loss and higher volatility.\";\n InvestmentObjectiveDescription[\"GrowthAndIncome\"] = \"Dual investment strategy that seeks both capital appreciation and current income generated through dividends or interest.\";\n InvestmentObjectiveDescription[\"Income\"] = \"Generate current income through securities with a historically low risk of principal loss.\";\n InvestmentObjectiveDescription[\"Speculation\"] = \"Assume a higher risk of loss and potentially higher-than-average gain by taking advantage of expected price changes and higher volatility.\";\n})(InvestmentObjectiveDescription || (InvestmentObjectiveDescription = {}));\n\nexport var InvestmentObjectiveLevel;\n\n(function (InvestmentObjectiveLevel) {\n InvestmentObjectiveLevel[InvestmentObjectiveLevel[\"CapitalPreservation\"] = 3] = \"CapitalPreservation\";\n InvestmentObjectiveLevel[InvestmentObjectiveLevel[\"Growth\"] = 3] = \"Growth\";\n InvestmentObjectiveLevel[InvestmentObjectiveLevel[\"GrowthAndIncome\"] = 3] = \"GrowthAndIncome\";\n InvestmentObjectiveLevel[InvestmentObjectiveLevel[\"Income\"] = 3] = \"Income\";\n InvestmentObjectiveLevel[InvestmentObjectiveLevel[\"Speculation\"] = 5] = \"Speculation\";\n})(InvestmentObjectiveLevel || (InvestmentObjectiveLevel = {}));\n\nexport var IncomeRangeType;\n\n(function (IncomeRangeType) {\n IncomeRangeType[\"Between100KAnd200K\"] = \"Between100KAnd200K\";\n IncomeRangeType[\"Between200KAnd300K\"] = \"Between200KAnd300K\";\n IncomeRangeType[\"Between25KAnd50K\"] = \"Between25KAnd50K\";\n IncomeRangeType[\"Between300KAnd500K\"] = \"Between300KAnd500K\";\n IncomeRangeType[\"Between500KAnd1Point2M\"] = \"Between500KAnd1Point2M\";\n IncomeRangeType[\"Between50KAnd100K\"] = \"Between50KAnd100K\";\n IncomeRangeType[\"LessThan25K\"] = \"LessThan25K\";\n IncomeRangeType[\"MoreThan1Point2M\"] = \"MoreThan1Point2M\";\n})(IncomeRangeType || (IncomeRangeType = {}));\n\nexport var ExperienceYearType;\n\n(function (ExperienceYearType) {\n ExperienceYearType[\"FourToNine\"] = \"FourToNine\";\n ExperienceYearType[\"One\"] = \"One\";\n ExperienceYearType[\"TenOrMore\"] = \"TenOrMore\";\n ExperienceYearType[\"TwoToThree\"] = \"TwoToThree\";\n ExperienceYearType[\"Zero\"] = \"Zero\";\n})(ExperienceYearType || (ExperienceYearType = {}));\n\nexport var TradeExperienceYearType;\n\n(function (TradeExperienceYearType) {\n TradeExperienceYearType[\"ElevenToTwenty\"] = \"ElevenToTwenty\";\n TradeExperienceYearType[\"OneToFive\"] = \"OneToFive\";\n TradeExperienceYearType[\"SixToTen\"] = \"SixToTen\";\n TradeExperienceYearType[\"MoreThanTwenty\"] = \"MoreThanTwenty\";\n})(TradeExperienceYearType || (TradeExperienceYearType = {}));\n\nexport var TaxbracketType;\n\n(function (TaxbracketType) {\n TaxbracketType[\"Bottom\"] = \"Bottom\";\n TaxbracketType[\"Middle\"] = \"Middle\";\n TaxbracketType[\"Top\"] = \"Top\";\n})(TaxbracketType || (TaxbracketType = {}));\n\nexport var TradeExperienceUpdateType;\n\n(function (TradeExperienceUpdateType) {\n TradeExperienceUpdateType[\"Bonds\"] = \"Bonds\";\n TradeExperienceUpdateType[\"Options\"] = \"Options\";\n TradeExperienceUpdateType[\"Stocks\"] = \"Stocks\";\n TradeExperienceUpdateType[\"Commodities\"] = \"Commodities\";\n TradeExperienceUpdateType[\"Margins\"] = \"Margins\";\n})(TradeExperienceUpdateType || (TradeExperienceUpdateType = {}));\n\nexport var AllTradeExperienceTypes = [TradeExperienceUpdateType.Bonds, TradeExperienceUpdateType.Options, TradeExperienceUpdateType.Stocks, TradeExperienceUpdateType.Commodities, TradeExperienceUpdateType.Margins];\nexport var AllIncomeRangeTypes = [IncomeRangeType.LessThan25K, IncomeRangeType.Between25KAnd50K, IncomeRangeType.Between50KAnd100K, IncomeRangeType.Between100KAnd200K, IncomeRangeType.Between200KAnd300K, IncomeRangeType.Between300KAnd500K, IncomeRangeType.Between500KAnd1Point2M, IncomeRangeType.MoreThan1Point2M];\nexport var AllInvestmentObjectiveTypes = [InvestmentObjectiveType.CapitalPreservation, InvestmentObjectiveType.Income, InvestmentObjectiveType.Growth, InvestmentObjectiveType.GrowthAndIncome, InvestmentObjectiveType.Speculation];\nexport var AllLiquidityNeedTypes = [LiquidityNeedType.VeryImportant, LiquidityNeedType.SomewhatImportant, LiquidityNeedType.NotImportant];\nexport var AllMonetaryRangeTypes = [MonetaryRangeType.LessThan50K, MonetaryRangeType.Between50KAnd100K, MonetaryRangeType.Between100KAnd200K, MonetaryRangeType.Between200KAnd500K, MonetaryRangeType.Between500KAnd1M, MonetaryRangeType.Between1MAnd5M, MonetaryRangeType.MoreThan5M];\nexport var AllTimeHorizonTypes = [TimeHorizonType.Short, TimeHorizonType.Average, TimeHorizonType.Long];\nexport var AllTaxbracketTypes = [TaxbracketType.Bottom, TaxbracketType.Middle, TaxbracketType.Top];\nexport var AllExperienceYearTypes = [ExperienceYearType.Zero, ExperienceYearType.One, ExperienceYearType.TwoToThree, ExperienceYearType.FourToNine, ExperienceYearType.TenOrMore];\nexport var AllTradeExperienceYearTypes = [TradeExperienceYearType.OneToFive, TradeExperienceYearType.SixToTen, TradeExperienceYearType.ElevenToTwenty, TradeExperienceYearType.MoreThanTwenty];\nexport var AllRiskToleranceTypes = [RiskToleranceType.Low, RiskToleranceType.Medium, RiskToleranceType.High];\nexport var TradeGoalType;\n\n(function (TradeGoalType) {\n TradeGoalType[\"StocksBonds\"] = \"StocksBonds\";\n TradeGoalType[\"AllAbovePlusCallsPuts\"] = \"AllAbovePlusCallsPuts\";\n TradeGoalType[\"AllAbovePlusOptionSpreads\"] = \"AllAbovePlusOptionSpreads\";\n TradeGoalType[\"AllAbovePlusPutWriting\"] = \"AllAbovePlusPutWriting\";\n TradeGoalType[\"AllAbovePlusAllOptionStrategies\"] = \"AllAbovePlusAllOptionStrategies\";\n})(TradeGoalType || (TradeGoalType = {}));\n\nexport var AllTradeGoalTypes = [TradeGoalType.StocksBonds, TradeGoalType.AllAbovePlusCallsPuts, TradeGoalType.AllAbovePlusOptionSpreads, TradeGoalType.AllAbovePlusPutWriting, TradeGoalType.AllAbovePlusAllOptionStrategies];\nexport var TradeGoalTypeLevel;\n\n(function (TradeGoalTypeLevel) {\n TradeGoalTypeLevel[TradeGoalTypeLevel[\"StocksBonds\"] = 0] = \"StocksBonds\";\n TradeGoalTypeLevel[TradeGoalTypeLevel[\"AllAbovePlusCallsPuts\"] = 1] = \"AllAbovePlusCallsPuts\";\n TradeGoalTypeLevel[TradeGoalTypeLevel[\"AllAbovePlusOptionSpreads\"] = 2] = \"AllAbovePlusOptionSpreads\";\n TradeGoalTypeLevel[TradeGoalTypeLevel[\"AllAbovePlusPutWriting\"] = 3] = \"AllAbovePlusPutWriting\";\n TradeGoalTypeLevel[TradeGoalTypeLevel[\"AllAbovePlusAllOptionStrategies\"] = 4] = \"AllAbovePlusAllOptionStrategies\";\n})(TradeGoalTypeLevel || (TradeGoalTypeLevel = {}));\n\nexport var BooleanToggleType;\n\n(function (BooleanToggleType) {\n BooleanToggleType[\"No\"] = \"no\";\n BooleanToggleType[\"Yes\"] = \"yes\";\n})(BooleanToggleType || (BooleanToggleType = {}));\n\nexport var AllBooleanToggleTypes = [BooleanToggleType.Yes, BooleanToggleType.No];\nexport var MFAOptions;\n\n(function (MFAOptions) {\n MFAOptions[\"NoPass\"] = \"nopass\";\n MFAOptions[\"SMS\"] = \"sms\";\n})(MFAOptions || (MFAOptions = {}));\n\nexport var AllMFAOptions = [MFAOptions.NoPass, MFAOptions.SMS];\nexport var EmploymentType;\n\n(function (EmploymentType) {\n EmploymentType[\"Employed\"] = \"Employed\";\n EmploymentType[\"Retired\"] = \"Retired\";\n EmploymentType[\"Student\"] = \"Student\";\n EmploymentType[\"Unemployed\"] = \"Unemployed\";\n})(EmploymentType || (EmploymentType = {}));\n\nexport var IssuerDirectCommunicationType;\n\n(function (IssuerDirectCommunicationType) {\n IssuerDirectCommunicationType[\"Accept\"] = \"Accept\";\n IssuerDirectCommunicationType[\"Object\"] = \"Object\";\n})(IssuerDirectCommunicationType || (IssuerDirectCommunicationType = {}));\n\nexport var AllIssuerDirectCommunicationTypes = [IssuerDirectCommunicationType.Accept, IssuerDirectCommunicationType.Object];\nexport var EmploymentTypes = [EmploymentType.Employed, EmploymentType.Retired, EmploymentType.Student, EmploymentType.Unemployed];\nexport var YearsEmployed;\n\n(function (YearsEmployed) {\n YearsEmployed[\"BetweenZeroAndOne\"] = \"BetweenZeroAndOne\";\n YearsEmployed[\"BetweenTwoAndFive\"] = \"BetweenTwoAndFive\";\n YearsEmployed[\"BetweenFiveAndTen\"] = \"BetweenFiveAndTen\";\n YearsEmployed[\"BetweenTenAndTwenty\"] = \"BetweenTenAndTwenty\";\n YearsEmployed[\"MoreThanTwenty\"] = \"MoreThanTwenty\";\n})(YearsEmployed || (YearsEmployed = {}));\n\nexport var AllYearsEmployed = [YearsEmployed.BetweenZeroAndOne, YearsEmployed.BetweenTwoAndFive, YearsEmployed.BetweenFiveAndTen, YearsEmployed.BetweenTenAndTwenty, YearsEmployed.MoreThanTwenty];\nexport var YearsEmployedDescription;\n\n(function (YearsEmployedDescription) {\n YearsEmployedDescription[\"BetweenZeroAndOne\"] = \"1 year or less\";\n YearsEmployedDescription[\"BetweenTwoAndFive\"] = \"2 - 5 years\";\n YearsEmployedDescription[\"BetweenFiveAndTen\"] = \"5 - 10 years\";\n YearsEmployedDescription[\"BetweenTenAndTwenty\"] = \"10 - 20 years\";\n YearsEmployedDescription[\"MoreThanTwenty\"] = \"20+ years\";\n})(YearsEmployedDescription || (YearsEmployedDescription = {}));\n\nexport var MaxNumberOfPhones = 5;\nexport var PhoneType;\n\n(function (PhoneType) {\n PhoneType[\"Home\"] = \"Home\";\n PhoneType[\"Mobile\"] = \"Mobile\";\n PhoneType[\"Work\"] = \"Work\";\n})(PhoneType || (PhoneType = {}));\n\nexport var AllPhoneTypes = [PhoneType.Home, PhoneType.Mobile, PhoneType.Work];\nexport var ErrorType;\n\n(function (ErrorType) {\n ErrorType[\"Amount\"] = \"amount\";\n ErrorType[\"Invalid\"] = \"invalid\";\n ErrorType[\"Mismatch\"] = \"mismatch\";\n ErrorType[\"Required\"] = \"error\";\n ErrorType[\"Stale\"] = \"stale\";\n ErrorType[\"Upload\"] = \"upload\";\n ErrorType[\"Contingent\"] = \"contingent\";\n})(ErrorType || (ErrorType = {}));\n\nexport var FlexibilityType;\n\n(function (FlexibilityType) {\n FlexibilityType[\"CashOnly\"] = \"CashOnly\";\n FlexibilityType[\"Margin\"] = \"Margin\";\n})(FlexibilityType || (FlexibilityType = {}));\n\nexport var AllFlexibilityTypes = [FlexibilityType.Margin, FlexibilityType.CashOnly];\nexport var RE_EMAIL = /^(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)\\])$/i;\nexport var ProSubType;\n\n(function (ProSubType) {\n ProSubType[\"Delayed\"] = \"Delayed\";\n ProSubType[\"RealTime\"] = \"Realtime\";\n})(ProSubType || (ProSubType = {}));\n\nexport var DefaultPhoneValues = {\n phoneNumber: '',\n type: ''\n};\nexport var AccountManagementDocuments;\n\n(function (AccountManagementDocuments) {\n AccountManagementDocuments[\"DriversLicense\"] = \"DriversLicense\";\n AccountManagementDocuments[\"StateIdCard\"] = \"StateIdCard\";\n AccountManagementDocuments[\"Passport\"] = \"Passport\";\n AccountManagementDocuments[\"MilitaryId\"] = \"MilitaryId\";\n AccountManagementDocuments[\"SsnCard\"] = \"SsnCard\";\n AccountManagementDocuments[\"SsaLetter\"] = \"SsaLetter\";\n AccountManagementDocuments[\"IrsItinLetter\"] = \"IrsItinLetter\";\n AccountManagementDocuments[\"OtherGovernmentId\"] = \"OtherGovernmentId\";\n AccountManagementDocuments[\"CddDocument\"] = \"CddDocument\";\n AccountManagementDocuments[\"AllPassingCipResults\"] = \"AllPassingCipResults\";\n AccountManagementDocuments[\"IrsW9Form\"] = \"IrsW9Form\";\n AccountManagementDocuments[\"SignatureImage\"] = \"SignatureImage\";\n AccountManagementDocuments[\"IdDocument\"] = \"IdDocument\";\n AccountManagementDocuments[\"AffiliateApproval\"] = \"AffiliateApproval\";\n AccountManagementDocuments[\"Document\"] = \"Document\";\n AccountManagementDocuments[\"Other\"] = \"Other\";\n AccountManagementDocuments[\"GovernmentId\"] = \"GovernmentId\";\n})(AccountManagementDocuments || (AccountManagementDocuments = {}));\n\nexport var AccountManagementBeneficiaryAccountType;\n\n(function (AccountManagementBeneficiaryAccountType) {\n AccountManagementBeneficiaryAccountType[\"Contingent\"] = \"Contingent\";\n AccountManagementBeneficiaryAccountType[\"Primary\"] = \"Primary\";\n})(AccountManagementBeneficiaryAccountType || (AccountManagementBeneficiaryAccountType = {}));\n\nexport var AccountManagementBeneficiaryType;\n\n(function (AccountManagementBeneficiaryType) {\n AccountManagementBeneficiaryType[\"Individual\"] = \"Individual\";\n AccountManagementBeneficiaryType[\"Trust\"] = \"Trust\";\n})(AccountManagementBeneficiaryType || (AccountManagementBeneficiaryType = {}));\n\nexport var AllAccountManagementBeneficiaryTypes = [AccountManagementBeneficiaryType.Individual, AccountManagementBeneficiaryType.Trust];\nexport var AllAccountManagementBeneficiaryAccountTypes = [AccountManagementBeneficiaryAccountType.Primary, AccountManagementBeneficiaryAccountType.Contingent];","import { LanguageType } from './Language';\nimport { BooleanToggleType, FlexibilityType } from './AccountManagement';\nexport var InvestigationDocumentName;\n\n(function (InvestigationDocumentName) {\n InvestigationDocumentName[\"Name\"] = \"Name\";\n InvestigationDocumentName[\"DateOfBirth\"] = \"DateOfBirth\";\n InvestigationDocumentName[\"TaxId\"] = \"TaxId\";\n InvestigationDocumentName[\"Address\"] = \"Address\";\n InvestigationDocumentName[\"ForeignerSignature\"] = \"Signature\";\n InvestigationDocumentName[\"ForeignerGovermentId\"] = \"GovernmentId\";\n InvestigationDocumentName[\"AffiliateApproval\"] = \"AffiliateApproval\";\n})(InvestigationDocumentName || (InvestigationDocumentName = {}));\n\nexport var InvestigationDocuments;\n\n(function (InvestigationDocuments) {\n InvestigationDocuments[\"DriversLicense\"] = \"DriversLicense\";\n InvestigationDocuments[\"StateIdCard\"] = \"StateIdCard\";\n InvestigationDocuments[\"Passport\"] = \"Passport\";\n InvestigationDocuments[\"MilitaryId\"] = \"MilitaryId\";\n InvestigationDocuments[\"SSNCard\"] = \"SsnCard\";\n InvestigationDocuments[\"IRSW9Form\"] = \"IrsW9Form\";\n InvestigationDocuments[\"SSALetter\"] = \"SsaLetter\";\n InvestigationDocuments[\"IRSITINLetter\"] = \"IrsItinLetter\";\n InvestigationDocuments[\"ForeignerSignature\"] = \"Signature\";\n InvestigationDocuments[\"ForeignerGovermentId\"] = \"GovernmentId\";\n InvestigationDocuments[\"AffiliateApproval\"] = \"AffiliateApproval\";\n})(InvestigationDocuments || (InvestigationDocuments = {}));\n\nexport var AccountApplicationState;\n\n(function (AccountApplicationState) {\n AccountApplicationState[\"Accepted\"] = \"Accepted\";\n AccountApplicationState[\"New\"] = \"New\";\n AccountApplicationState[\"Pending\"] = \"Pending\";\n AccountApplicationState[\"InvestigationSubmitted\"] = \"InvestigationSubmitted\";\n AccountApplicationState[\"ReadyForBackOffice\"] = \"ReadyForBackOffice\";\n AccountApplicationState[\"BackOffice\"] = \"BackOffice\";\n AccountApplicationState[\"AccountSetup\"] = \"AccountSetup\";\n AccountApplicationState[\"Complete\"] = \"Complete\";\n AccountApplicationState[\"ActionRequired\"] = \"ActionRequired\";\n AccountApplicationState[\"Rejected\"] = \"Rejected\";\n AccountApplicationState[\"Suspended\"] = \"Suspended\";\n AccountApplicationState[\"Error\"] = \"Error\";\n AccountApplicationState[\"Cancelled\"] = \"Cancelled\";\n AccountApplicationState[\"PendingSubmit\"] = \"PendingSubmit\";\n})(AccountApplicationState || (AccountApplicationState = {}));\n\nexport var AccountInvestigationState;\n\n(function (AccountInvestigationState) {\n AccountInvestigationState[\"New\"] = \"New\";\n AccountInvestigationState[\"Pending\"] = \"Pending\";\n AccountInvestigationState[\"Indeterminate\"] = \"Indeterminate\";\n AccountInvestigationState[\"Accepted\"] = \"Accepted\";\n AccountInvestigationState[\"Rejected\"] = \"Rejected\";\n AccountInvestigationState[\"Appealed\"] = \"Appealed\";\n AccountInvestigationState[\"Error\"] = \"Error\";\n AccountInvestigationState[\"Cancelled\"] = \"Cancelled\";\n})(AccountInvestigationState || (AccountInvestigationState = {}));\n\nexport var UploadedDocumentState;\n\n(function (UploadedDocumentState) {\n UploadedDocumentState[\"PendingReview\"] = \"PendingReview\";\n UploadedDocumentState[\"Submitted\"] = \"Submitted\";\n UploadedDocumentState[\"Rejected\"] = \"Rejected\";\n UploadedDocumentState[\"Accepted\"] = \"Accepted\";\n})(UploadedDocumentState || (UploadedDocumentState = {}));\n\nexport var DefaultSecurityChallenge = {\n securityQuestionType: '',\n answer: ''\n};\nexport var ApplicationStep;\n\n(function (ApplicationStep) {\n ApplicationStep[\"AccountType\"] = \"account\";\n ApplicationStep[\"Agreements\"] = \"agreements\";\n ApplicationStep[\"Beneficiaries\"] = \"beneficiaries\";\n ApplicationStep[\"ClearerType\"] = \"clearerType\";\n ApplicationStep[\"AccountInformation\"] = \"information\";\n ApplicationStep[\"InvestingProfile\"] = \"investing\";\n ApplicationStep[\"SecureAccount\"] = \"secure\";\n ApplicationStep[\"Sign\"] = \"sign\";\n})(ApplicationStep || (ApplicationStep = {}));\n\nexport var ApplicationType;\n\n(function (ApplicationType) {\n ApplicationType[\"Entity\"] = \"Entity\";\n ApplicationType[\"Individual\"] = \"Individual\";\n ApplicationType[\"Joint\"] = \"Joint\";\n ApplicationType[\"UGMA\"] = \"Ugma\";\n})(ApplicationType || (ApplicationType = {}));\n\nexport var RetirementAccountType;\n\n(function (RetirementAccountType) {\n RetirementAccountType[\"Beneficiary\"] = \"Beneficiary\";\n RetirementAccountType[\"CoverDell\"] = \"CoverDell\";\n RetirementAccountType[\"Rollover\"] = \"Rollover\";\n RetirementAccountType[\"Roth\"] = \"Roth\";\n RetirementAccountType[\"SEP\"] = \"SEP\";\n RetirementAccountType[\"Simple\"] = \"Simple\";\n RetirementAccountType[\"Traditional\"] = \"Traditional\";\n})(RetirementAccountType || (RetirementAccountType = {}));\n\nexport var JointAccountType;\n\n(function (JointAccountType) {\n JointAccountType[\"Community\"] = \"Community\";\n JointAccountType[\"Survivor\"] = \"Survivor\";\n JointAccountType[\"TenantsInCommon\"] = \"TenantsInCommon\";\n JointAccountType[\"TenantsInEntirety\"] = \"TenantsInEntirety\";\n})(JointAccountType || (JointAccountType = {}));\n\nexport var EntityAccountType;\n\n(function (EntityAccountType) {\n EntityAccountType[\"BusinessTrust\"] = \"BusinessTrust\";\n EntityAccountType[\"CCorporation\"] = \"CCorporation\";\n EntityAccountType[\"LlcCCorporation\"] = \"LlcCCorporation\";\n EntityAccountType[\"LlcSCorporation\"] = \"LlcSCorporation\";\n EntityAccountType[\"Partnership\"] = \"Partnership\";\n EntityAccountType[\"PersonalTrust\"] = \"PersonalTrust\";\n EntityAccountType[\"SCorporation\"] = \"SCorporation\";\n})(EntityAccountType || (EntityAccountType = {}));\n\nexport var MaritalStatusType;\n\n(function (MaritalStatusType) {\n MaritalStatusType[\"Divorced\"] = \"Divorced\";\n MaritalStatusType[\"Married\"] = \"Married\";\n MaritalStatusType[\"Single\"] = \"Single\";\n MaritalStatusType[\"Widowed\"] = \"Widowed\";\n})(MaritalStatusType || (MaritalStatusType = {}));\n\nexport var VisaType;\n\n(function (VisaType) {\n VisaType[\"E1\"] = \"E1\";\n VisaType[\"E2\"] = \"E2\";\n VisaType[\"E3\"] = \"E3\";\n VisaType[\"F1\"] = \"F1\";\n VisaType[\"K1\"] = \"K1\";\n VisaType[\"G4\"] = \"G4\";\n VisaType[\"H1B\"] = \"H1B\";\n VisaType[\"L1\"] = \"L1\";\n VisaType[\"O1\"] = \"O1\";\n VisaType[\"TN1\"] = \"TN1\";\n})(VisaType || (VisaType = {}));\n\nexport var BusinessNature;\n\n(function (BusinessNature) {\n BusinessNature[\"Agriculture\"] = \"Agriculture\";\n BusinessNature[\"Communications\"] = \"Communications\";\n BusinessNature[\"Construction\"] = \"Construction\";\n BusinessNature[\"ElectricGas\"] = \"ElectricGas\";\n BusinessNature[\"Finance\"] = \"Finance\";\n BusinessNature[\"Fishing\"] = \"Fishing\";\n BusinessNature[\"Forestry\"] = \"Forestry\";\n BusinessNature[\"Insurance\"] = \"Insurance\";\n BusinessNature[\"Manufacturing\"] = \"Manufacturing\";\n BusinessNature[\"Mining\"] = \"Mining\";\n BusinessNature[\"PublicAdministration\"] = \"PublicAdministration\";\n BusinessNature[\"RealEstate\"] = \"RealEstate\";\n BusinessNature[\"RetailTrade\"] = \"RetailTrade\";\n BusinessNature[\"SanitaryServices\"] = \"SanitaryServices\";\n BusinessNature[\"Services\"] = \"Services\";\n BusinessNature[\"Transportation\"] = \"Transportation\";\n BusinessNature[\"WholesaleTrade\"] = \"WholesaleTrade\";\n})(BusinessNature || (BusinessNature = {}));\n\nexport var AccountActivityType;\n\n(function (AccountActivityType) {\n AccountActivityType[\"ActiveTrading\"] = \"ActiveTrading\";\n AccountActivityType[\"LongTermInvesting\"] = \"LongTermInvesting\";\n AccountActivityType[\"ShortTermInvesting\"] = \"ShortTermInvesting\";\n})(AccountActivityType || (AccountActivityType = {}));\n\nexport var SourceOfFundsType;\n\n(function (SourceOfFundsType) {\n SourceOfFundsType[\"CorporateIncome\"] = \"CorporateIncome\";\n SourceOfFundsType[\"InvestmentCapital\"] = \"InvestmentCapital\";\n SourceOfFundsType[\"Other\"] = \"Other\";\n})(SourceOfFundsType || (SourceOfFundsType = {}));\n\nexport var WithdrawalFrequencyType;\n\n(function (WithdrawalFrequencyType) {\n WithdrawalFrequencyType[\"Frequent\"] = \"Frequent\";\n WithdrawalFrequencyType[\"Occasional\"] = \"Occasional\";\n WithdrawalFrequencyType[\"Rare\"] = \"Rare\";\n})(WithdrawalFrequencyType || (WithdrawalFrequencyType = {}));\n\nexport var BeneficiaryAccountType;\n\n(function (BeneficiaryAccountType) {\n BeneficiaryAccountType[\"Contingent\"] = \"Contingent\";\n BeneficiaryAccountType[\"Primary\"] = \"Primary\";\n})(BeneficiaryAccountType || (BeneficiaryAccountType = {}));\n\nexport var BeneficiaryType;\n\n(function (BeneficiaryType) {\n BeneficiaryType[\"Individual\"] = \"Individual\";\n BeneficiaryType[\"Trust\"] = \"Trust\";\n})(BeneficiaryType || (BeneficiaryType = {}));\n\nexport var BeneficiariesRelationshipsType;\n\n(function (BeneficiariesRelationshipsType) {\n BeneficiariesRelationshipsType[\"Spouse\"] = \"Spouse\";\n BeneficiariesRelationshipsType[\"Child\"] = \"Child\";\n BeneficiariesRelationshipsType[\"Parent\"] = \"Parent\";\n BeneficiariesRelationshipsType[\"Other\"] = \"Other\";\n})(BeneficiariesRelationshipsType || (BeneficiariesRelationshipsType = {}));\n\nexport var BeneficiariesRelationships = [BeneficiariesRelationshipsType.Spouse, BeneficiariesRelationshipsType.Parent, BeneficiariesRelationshipsType.Child, BeneficiariesRelationshipsType.Other];\nexport var DeliveryType;\n\n(function (DeliveryType) {\n DeliveryType[\"Electronic\"] = \"Electronic\";\n DeliveryType[\"Paper\"] = \"Paper\";\n})(DeliveryType || (DeliveryType = {}));\n\nexport var ElectronicFormat;\n\n(function (ElectronicFormat) {\n ElectronicFormat[\"Html\"] = \"Html\";\n ElectronicFormat[\"PlainText\"] = \"PlainText\";\n})(ElectronicFormat || (ElectronicFormat = {}));\n\nexport var AllDeliveryTypes = [DeliveryType.Electronic, DeliveryType.Paper];\nexport var AllElectronicFormats = [ElectronicFormat.Html, ElectronicFormat.PlainText];\nexport var ProSubscriptionType;\n\n(function (ProSubscriptionType) {\n ProSubscriptionType[\"Delayed\"] = \"Delayed\";\n ProSubscriptionType[\"RealTime\"] = \"Realtime\";\n})(ProSubscriptionType || (ProSubscriptionType = {}));\n\nexport var DuplicateStatements;\n\n(function (DuplicateStatements) {\n DuplicateStatements[\"None\"] = \"None\";\n DuplicateStatements[\"PostalMail\"] = \"PostalMail\";\n DuplicateStatements[\"Email\"] = \"Email\";\n})(DuplicateStatements || (DuplicateStatements = {}));\n\nexport var AllDuplicateStatementOptions = [DuplicateStatements.PostalMail, DuplicateStatements.Email];\nexport var TradeAuthorizationType;\n\n(function (TradeAuthorizationType) {\n TradeAuthorizationType[\"Full\"] = \"Full\";\n TradeAuthorizationType[\"Limited\"] = \"Limited\";\n})(TradeAuthorizationType || (TradeAuthorizationType = {}));\n\nexport var AllTradeAuthorizationTypes = [TradeAuthorizationType.Full, TradeAuthorizationType.Limited];\nexport var DefaultAddress = {\n country: '',\n address1: '',\n address2: '',\n postalCode: null,\n city: '',\n state: null\n};\nexport var DefaultPhone = {\n type: '',\n phoneNumber: ''\n};\nexport var DefaultPersonDetails = {\n firstName: '',\n lastName: '',\n middleInitial: '',\n suffix: '',\n email: '',\n dateOfBirth: {\n day: undefined,\n month: undefined,\n year: undefined\n },\n ssn: '',\n address: DefaultAddress,\n phones: [DefaultPhone]\n};\nexport var DefaultAccountHolder = Object.assign({}, DefaultPersonDetails, {\n emailConfirm: '',\n maritalStatus: '',\n dependents: '',\n birthCountry: null,\n citizenshipCountry: null,\n employmentType: '',\n disclosuresStakeholderTickerSymbol: '',\n disclosuresIndustryEmployedFirmName: '',\n disclosuresGovOfficialImmediateFamily: '',\n disclosuresGovOfficialPoliticalOrg: '',\n jointTenantsInCommonInterestPercent: 0,\n disclosures: {\n govOfficial: null,\n industryEmployed: null,\n irsWithholding: null,\n stakeholder: null\n },\n differentMailingAddress: false,\n mailingAddress: null,\n employer: '',\n employerAddress: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n state: null,\n postalCode: null\n },\n visaType: null,\n visaExpirationDate: null,\n jobPosition: '',\n yearsEmployed: null,\n foreignTaxWithholding: {\n taxIdentificationNumber: null,\n letterOfExplanation: null,\n jurisdictionDoesNotIssueTIN: null,\n notIssuedForeignTIN: null,\n treatyCountry: null,\n foreignTINNotRequiredExplanation: null\n }\n});\nexport var DefaultApplicationModel = {\n // Secure Account\n languageType: LanguageType.English,\n ownerUsername: '',\n password: '',\n passwordConfirm: '',\n securityChallenges: [DefaultSecurityChallenge, DefaultSecurityChallenge, DefaultSecurityChallenge],\n // Account Type\n type: ApplicationType.Individual,\n flexibilityType: FlexibilityType.Margin,\n // Investor Profile\n tradeGoalType: '',\n investmentObjectiveType: '',\n annualIncome: '',\n totalNetWorth: '',\n liquidNetWorth: '',\n characteristics: {\n risk: '',\n bracket: '',\n horizon: '',\n liquidity: ''\n },\n // Account Information\n primaryAccountHolder: DefaultAccountHolder,\n ownerCountry: '',\n retirementAccount: undefined,\n simpleIraPlanName: undefined,\n beneficiaryIraDecedentName: undefined,\n jointAccountType: undefined,\n // Agreements & Disclosures\n agreeToElectronicConsent: null,\n deliveryType: DeliveryType.Electronic,\n disclosuresForeignBankUSAgent: '',\n disclosuresEntityNegativeNewsInfo: '',\n disclosuresEntityPublicOfficials: [],\n accountDisclosures: {\n foreignBank: null,\n foreignFinancialInstitution: null,\n proprietarySecuritiesAccount: null,\n foreignShellBank: null,\n entityIssuesBearerShares: null,\n entityNegativeNews: null,\n entityPublicOfficials: null,\n entityServicesForeignShellBanks: null\n },\n agreements: {\n corporateCash: null,\n corporateMargin: null,\n customerAndPrivacyPolicy: null,\n entityMargin: null,\n entityOption: null,\n iRARothAdoption: null,\n iRASepAdoption: null,\n iRASimpleAdoption: null,\n iRACoverDellAdoption: null,\n jointCommunity: null,\n jointSurvivor: null,\n jointTenantsInCommon: null,\n jointTenantsInEntirety: null,\n limitedMargin: null,\n llcAccount: null,\n margin: null,\n option: null,\n riskDisclosure: null,\n electronicConsent: null,\n onlineServices: null,\n exchangeDataAgreement: null,\n clientRelationshipSummary: null,\n apiAgreement: null,\n rqdDisclosure: null,\n rqdClearingDisclosures: null,\n rqdCustomerAgreement: null,\n rqdCustomerInformationBrochure: null,\n rqdExecutionDisclosures: null,\n rqdLimitedMarginAgreement: null,\n rqdLimitedTradingAuthorization: null,\n rqdMargin: null,\n rqdOption: null,\n rqdPowerOfAttorney: null,\n rqdPrivacyNotice: null,\n rqdPrivacyPolicy: null,\n rqdResponsibilitiesOfIbAndCarryingBroker: null,\n rqdSpecialStatementForUncoveredOptionWriters: null\n },\n // Trade Experience\n experience: {\n commodities: {\n years: undefined,\n tradesPerYear: undefined\n },\n bonds: {\n years: undefined,\n tradesPerYear: undefined\n },\n stocks: {\n years: undefined,\n tradesPerYear: undefined\n },\n options: {\n years: undefined,\n tradesPerYear: undefined\n },\n margins: {\n years: undefined,\n tradesPerYear: undefined\n }\n },\n // Market Data Questionnaire\n marketData: {\n employmentFunctions: null,\n personalUse: null,\n secCftcRegistration: null,\n associationRegistration: null,\n jobFunctions: null,\n investmentProfessional: null,\n capitalTrading: null,\n corporationTrading: BooleanToggleType.No,\n benefitsReceived: null\n },\n marketDataType: null,\n // Sign & Submit\n signedNames: [],\n hearAboutUsId: undefined,\n beneficiaries: [],\n foreignDueDiligence: {\n expectedWithdrawalFrequency: '',\n initialContact: '',\n initialDepositAmount: 0,\n initialDepositType: '',\n primaryBanking: [''],\n referredName: '',\n referredRelationship: '',\n referredToBroker: true\n }\n};","export var AssetType;\n\n(function (AssetType) {\n AssetType[AssetType[\"Equity\"] = 1] = \"Equity\";\n AssetType[AssetType[\"Option\"] = 2] = \"Option\";\n AssetType[AssetType[\"MutualFund\"] = 3] = \"MutualFund\";\n AssetType[AssetType[\"MoneyMarket\"] = 4] = \"MoneyMarket\";\n AssetType[AssetType[\"Bond\"] = 5] = \"Bond\";\n AssetType[AssetType[\"Index\"] = 6] = \"Index\";\n})(AssetType || (AssetType = {}));\n\nexport var OrderAction;\n\n(function (OrderAction) {\n OrderAction[OrderAction[\"Buy\"] = 1] = \"Buy\";\n OrderAction[OrderAction[\"Sell\"] = 2] = \"Sell\";\n})(OrderAction || (OrderAction = {}));\n\nexport var OrderActionDirection;\n\n(function (OrderActionDirection) {\n OrderActionDirection[OrderActionDirection[\"Long\"] = 1] = \"Long\";\n OrderActionDirection[OrderActionDirection[\"Short\"] = 2] = \"Short\";\n})(OrderActionDirection || (OrderActionDirection = {}));\n\nexport var PositionEffect;\n\n(function (PositionEffect) {\n PositionEffect[PositionEffect[\"Open\"] = 1] = \"Open\";\n PositionEffect[PositionEffect[\"Close\"] = 2] = \"Close\";\n})(PositionEffect || (PositionEffect = {}));\n\nexport var OrderType;\n\n(function (OrderType) {\n /// \n /// Buy or sell at the current price, whatever that price may be\n /// \n OrderType[OrderType[\"Market\"] = 1] = \"Market\"; /// \n /// Buy or sell at a specific price or better\n /// \n\n OrderType[OrderType[\"Limit\"] = 2] = \"Limit\"; /// \n /// Converts the order to a market order if the price of the security reaches a certain threshold\n /// \n\n OrderType[OrderType[\"Stop_Market\"] = 3] = \"Stop_Market\"; /// \n /// Converts the order to a limit order if the price of the security reaches a certain threshold\n /// \n\n OrderType[OrderType[\"Stop_Limit\"] = 4] = \"Stop_Limit\"; /// \n /// Marks the order to be executed immediately before the market close as a market order\n /// \n\n OrderType[OrderType[\"Market_On_Close\"] = 5] = \"Market_On_Close\";\n})(OrderType || (OrderType = {}));\n\nexport var OrderClass;\n\n(function (OrderClass) {\n OrderClass[OrderClass[\"Single\"] = 1] = \"Single\";\n OrderClass[OrderClass[\"Multileg\"] = 2] = \"Multileg\";\n})(OrderClass || (OrderClass = {})); // export type OrderClass = keyof typeof OrderClasses;\n\n\nexport var DebitOrCredit;\n\n(function (DebitOrCredit) {\n DebitOrCredit[DebitOrCredit[\"Debit\"] = 1] = \"Debit\";\n DebitOrCredit[DebitOrCredit[\"Credit\"] = 2] = \"Credit\";\n})(DebitOrCredit || (DebitOrCredit = {}));\n\nexport var OptionType;\n\n(function (OptionType) {\n OptionType[OptionType[\"Call\"] = 1] = \"Call\";\n OptionType[OptionType[\"Put\"] = 2] = \"Put\";\n})(OptionType || (OptionType = {}));\n\nexport var StrategyType;\n\n(function (StrategyType) {\n StrategyType[StrategyType[\"Bull\"] = 1] = \"Bull\";\n StrategyType[StrategyType[\"Bear\"] = 2] = \"Bear\";\n StrategyType[StrategyType[\"Volatility\"] = 3] = \"Volatility\";\n})(StrategyType || (StrategyType = {}));\n\nexport var SizeRatio;\n\n(function (SizeRatio) {\n SizeRatio[\"NA\"] = \"NA\";\n SizeRatio[\"HundredToOne\"] = \"100:1\";\n SizeRatio[\"HundredToOneToOne\"] = \"100:1:1\";\n SizeRatio[\"OneToOne\"] = \"1:1\";\n SizeRatio[\"OneTwoOne\"] = \"1:2:1\";\n SizeRatio[\"OneToOneToOneToOne\"] = \"1:1:1:1\";\n})(SizeRatio || (SizeRatio = {}));\n\nexport var BlockType;\n\n(function (BlockType) {\n BlockType[\"Account\"] = \"Account\";\n BlockType[\"AccountManagement\"] = \"AccountManagement\";\n BlockType[\"AccountTransfer\"] = \"AccountTransfer\";\n BlockType[\"Activity\"] = \"Activity\";\n BlockType[\"Favorites\"] = \"Favorites\";\n BlockType[\"OptionChain\"] = \"OptionChain\";\n BlockType[\"Order\"] = \"Order\";\n BlockType[\"Positions\"] = \"Positions\";\n BlockType[\"PriceChart\"] = \"PriceChart\";\n BlockType[\"Quote\"] = \"Quote\";\n BlockType[\"Info\"] = \"Info\";\n BlockType[\"Strategy\"] = \"Strategy\";\n BlockType[\"AdminTools\"] = \"AdminTools\";\n BlockType[\"Analytics\"] = \"Analytics\";\n BlockType[\"AccountStatements\"] = \"AccountStatements\";\n})(BlockType || (BlockType = {}));\n\nexport var BlockTypeValues = Object.values(BlockType);\nexport var AlertType;\n\n(function (AlertType) {\n AlertType[\"danger\"] = \"danger\";\n AlertType[\"info\"] = \"info\";\n AlertType[\"success\"] = \"success\";\n AlertType[\"warning\"] = \"warning\";\n})(AlertType || (AlertType = {}));\n\nexport var AccountRole;\n\n(function (AccountRole) {\n AccountRole[\"Cashiering\"] = \"Cashiering\";\n})(AccountRole || (AccountRole = {}));\n\nexport var AccountType;\n\n(function (AccountType) {\n /// \n /// An individual account is an account that is owned by one person.\n /// \n AccountType[AccountType[\"Individual\"] = 1] = \"Individual\"; /// \n /// Joint Tenants with Rights of Survivorship accounts are accounts where all the assets\n /// are transferred into the name of the surviving party in the event of one tenant's\n /// death. The surviving party becomes the sole owner of the assets in the account. Both\n /// parties on the account have an equal and undivided interest in the assets in the\n /// account.\n /// \n\n AccountType[AccountType[\"JTWROS\"] = 2] = \"JTWROS\"; /// \n /// Traditional individual retirement accounts allow individuals to direct pretax income\n /// towards investments that can grow tax-deferred; no capital gains or dividend income\n /// is taxed until it is withdrawn.\n /// \n\n AccountType[AccountType[\"Traditional_IRA\"] = 3] = \"Traditional_IRA\"; /// \n /// An account that is opened by an individual and managed by a designated trustee for\n /// the benefit of a third-party in accordance with agreed-upon terms.\n /// \n\n AccountType[AccountType[\"Trust\"] = 4] = \"Trust\"; /// \n /// Individual retirement arrangement rollover accounts are a transfer of funds from a\n /// retirement account into a traditional IRA or a Roth IRA.\n /// \n\n AccountType[AccountType[\"IRA_RollOver\"] = 5] = \"IRA_RollOver\"; /// \n /// Roth individual retirement accounts are a type of qualified retirement plan that\n /// is very similar to a traditional IRA, but is taxed differently. Roth IRAs are funded\n /// with after-tax dollars so contributions are not tax deductible, but when you start\n /// withdrawing funds, qualified distributions are tax free.\n /// \n\n AccountType[AccountType[\"Roth_IRA\"] = 6] = \"Roth_IRA\"; /// \n /// Simplified employee pension plan IRAs are retirement savings plans established by\n /// employers, including self-employed individuals, for the benefit of their employees.\n /// Employers may make tax-deductible contributions on behalf of eligible employees,\n /// and are made on a discrtionary basis. If the employer does contribute, it must\n /// contribute the same percentage of compensation to all employees eligible for the\n /// plan.\n /// \n\n AccountType[AccountType[\"SEP_IRA\"] = 7] = \"SEP_IRA\"; /// \n /// Joint Tenants in Common accounts are owned by at least two people with no rights of\n /// survivorship afforded to any of the account holders. In these accounts, a surviving\n /// tenant of the account does not necessarily acquire the rights and assets of the\n /// deceased person. Instead, each tenant can stipulate in a written will how his/her\n /// assets will be distributed upon his/her death.\n /// \n\n AccountType[AccountType[\"JTIC\"] = 8] = \"JTIC\"; /// \n /// The corporate resolution will specify which officers may trade in the corporation's\n /// account. In addition, a certified copy of the corporate charter and the company's\n /// bylaws are required to open a margin account. There are two sub-categories:\n /// S-Corp and C-Corp.\n /// \n\n AccountType[AccountType[\"Corporate\"] = 9] = \"Corporate\"; /// \n /// Limited Liability Company is a corporate structure whereby the members of the\n /// company cannot be held personally liable for the company's debts or liabilities.\n /// LLCs are essentially hybrid entities that combine the characteristics of a\n /// corporation and a partnership or sole proprietorship.\n /// \n\n AccountType[AccountType[\"LLC\"] = 10] = \"LLC\"; /// \n /// Partnerships are an arrangement by which two or more persons agree to share in all\n /// assets, profits and financial and legal liabilities of a business. Such partnerships\n /// have unlimited liability, which means their personal assets are liable to the\n /// partnership's obligations.\n /// \n\n AccountType[AccountType[\"Partnership\"] = 11] = \"Partnership\"; /// \n /// Qualified Plans meet Internal Revenue Code Section 401(1) and are therefore eligible\n /// to receive certain tax benefits. They are established by an employer for the benefit\n /// of the company's employees, and give employers a tax break for the contributions\n /// they make for their employees. They may also allow employees to defer a portion of\n /// their salaries into the plan to reduce employees' present income-tax liability by\n /// reducing taxable income.\n /// \n\n AccountType[AccountType[\"Qualified_Plan\"] = 12] = \"Qualified_Plan\"; /// \n /// If the taxpayer is a sole business owner or professional in their own practice, they\n /// are usually practicing as a sole proprietor. In this type of entity, you report\n /// business profit or loss on your personal tax return.\n /// \n\n AccountType[AccountType[\"Sole_Proprietorship\"] = 13] = \"Sole_Proprietorship\"; /// \n /// An Investment Club is a group of people who pool their money to make investments.\n /// Usually, investment clubs are organized as partnerships and after the members study\n /// different investments, the group decides to buy or sell based on a majority vote of\n /// the members.\n /// \n\n AccountType[AccountType[\"InvestmentClub\"] = 14] = \"InvestmentClub\"; /// \n /// Tenants by Entirety accounts are joint accounts in which married couples can hold\n /// the title to a property. In order for one spouse to modify his or her interest in\n /// the property in any way, the consent of both spouses is required by tenants by\n /// entirety. It also provides that when one spouse passes away, the surviving spouse\n /// gains full ownership of the property.\n /// \n\n AccountType[AccountType[\"TBE\"] = 15] = \"TBE\"; /// \n /// Joint Community Property (also known as marital property) accounts refer to a U.S.\n /// state-level legal distinction of a married individual's assets. Property acquired\n /// by either spouse during a marriage is considered community property, belonging to\n /// both partners of marriage.\n /// \n\n AccountType[AccountType[\"CommunityProperty\"] = 16] = \"CommunityProperty\"; /// \n /// Coverdell / Educational IRAs allow individuals to contribute up to $2,000 in\n /// after-tax dollars to an educational IRA for each student under the age of 18\n /// years of age. The money is allowed to grow tax deferred and the growth may be\n /// withdrawn tax free, as long as the money is used for educational purposes.\n /// \n\n AccountType[AccountType[\"Coverdell_IRA\"] = 17] = \"Coverdell_IRA\"; /// \n /// Uniform Gifts to Minors Act (UGMA) and Uniform Trasfers to Minors Act (UTMA)\n /// allow minors to own assets including securities. Individuals can establish UGMA\n /// accounts on behalf of minors or beneficiaries, eliminating the need for an\n /// attorney to establish a special trust fund.\n /// \n\n AccountType[AccountType[\"UGMA\"] = 18] = \"UGMA\";\n})(AccountType || (AccountType = {}));","import { BlockType } from './enums'; // all available block types, in custom order\n\nexport var AllBlockTypes = [BlockType.Order, BlockType.Activity, BlockType.Account, BlockType.PriceChart, BlockType.Quote, BlockType.Info, BlockType.OptionChain, BlockType.Positions, BlockType.Favorites, BlockType.AccountTransfer, BlockType.AccountManagement, BlockType.AdminTools, BlockType.Analytics, BlockType.AccountStatements];\nexport var AllBlocksCategorized = {\n front: [BlockType.Order, BlockType.Quote, BlockType.OptionChain, BlockType.PriceChart, BlockType.Favorites, BlockType.Info],\n middle: [BlockType.Positions, BlockType.Activity, BlockType.AccountTransfer],\n back: [BlockType.Account, BlockType.AccountStatements, BlockType.AccountManagement, BlockType.Analytics, BlockType.AdminTools]\n};","export var ActivityTimeframes;\n\n(function (ActivityTimeframes) {\n ActivityTimeframes[ActivityTimeframes[\"Today\"] = 0] = \"Today\";\n ActivityTimeframes[ActivityTimeframes[\"Week\"] = 1] = \"Week\";\n ActivityTimeframes[ActivityTimeframes[\"Month\"] = 2] = \"Month\";\n ActivityTimeframes[ActivityTimeframes[\"Year\"] = 3] = \"Year\";\n ActivityTimeframes[ActivityTimeframes[\"Three Years\"] = 4] = \"Three Years\";\n})(ActivityTimeframes || (ActivityTimeframes = {}));","export var CashieringRoute;\n\n(function (CashieringRoute) {\n CashieringRoute[\"Withdraw\"] = \"withdraw\";\n CashieringRoute[\"Deposit\"] = \"deposit\";\n CashieringRoute[\"Accounts\"] = \"accounts\";\n CashieringRoute[\"OAuthPlaidRedirect\"] = \"oauth\";\n})(CashieringRoute || (CashieringRoute = {}));\n\nexport var CashieringView;\n\n(function (CashieringView) {\n CashieringView[\"Authorize\"] = \"authorize\";\n CashieringView[\"Amount\"] = \"amount\";\n CashieringView[\"Type\"] = \"type\";\n CashieringView[\"Review\"] = \"review\";\n CashieringView[\"Manage\"] = \"manage\";\n CashieringView[\"OAuthPlaidRedirect\"] = \"oauth\";\n})(CashieringView || (CashieringView = {}));\n\nexport var CashieringManageAction;\n\n(function (CashieringManageAction) {\n CashieringManageAction[\"Add\"] = \"add\";\n CashieringManageAction[\"AddOptions\"] = \"add-options\";\n CashieringManageAction[\"Verify\"] = \"verify\";\n CashieringManageAction[\"Rename\"] = \"rename\";\n CashieringManageAction[\"Delete\"] = \"delete\";\n CashieringManageAction[\"Close\"] = \"close\";\n CashieringManageAction[\"Upload\"] = \"upload\";\n})(CashieringManageAction || (CashieringManageAction = {}));\n\nexport var WireType;\n\n(function (WireType) {\n WireType[\"Domestic\"] = \"domestic\";\n WireType[\"International\"] = \"international\";\n})(WireType || (WireType = {}));\n\nexport var WireAccountType;\n\n(function (WireAccountType) {\n WireAccountType[\"SelfOwned\"] = \"self-owned\";\n WireAccountType[\"ThirdParty\"] = \"third-party\";\n})(WireAccountType || (WireAccountType = {}));\n\nexport var TransferBankIdentifierType;\n\n(function (TransferBankIdentifierType) {\n TransferBankIdentifierType[\"ABA\"] = \"ABA\";\n TransferBankIdentifierType[\"BIC\"] = \"BIC\";\n})(TransferBankIdentifierType || (TransferBankIdentifierType = {}));\n\nexport var TransferPendingStates = ['PendingRepCreateApproval', 'PendingFirmCreateApproval'];\nexport var TransferStates = [].concat(TransferPendingStates, ['Rejected', 'Canceled', 'Approved', 'FundsHeld', 'FundsPosted', 'SentToBank', 'Complete', 'Void', 'Returned', 'StopPayment', 'Pending', 'PendingPrinting']); // All transfer states that do not impact the current day ACH limit\n\nexport var TransferStatesNotAffectingAchLimit = ['Rejected', 'CreateRejected', 'Canceled', 'Void', 'Returned', 'StopPayment', 'FailedAtBank'];\nexport var TransferRecipientBankState;\n\n(function (TransferRecipientBankState) {\n TransferRecipientBankState[\"Pending\"] = \"Pending\";\n TransferRecipientBankState[\"PendingFirmApproval\"] = \"PendingFirmApproval\";\n TransferRecipientBankState[\"Approved\"] = \"Approved\";\n TransferRecipientBankState[\"Rejected\"] = \"Rejected\";\n})(TransferRecipientBankState || (TransferRecipientBankState = {}));\n\nexport var AchRelationshipPendingStates = ['PendingCreateApproval', 'PendingCancelApproval'];\nexport var CashieringPendingStates = [].concat(AchRelationshipPendingStates, TransferPendingStates);\nexport var BankRiskScoreValues;\n\n(function (BankRiskScoreValues) {\n BankRiskScoreValues[\"LowRisk\"] = \"LowRisk\";\n BankRiskScoreValues[\"MediumRisk\"] = \"MediumRisk\";\n BankRiskScoreValues[\"HighRisk\"] = \"HighRisk\";\n})(BankRiskScoreValues || (BankRiskScoreValues = {}));\n\nexport var CashieringSearchEntityType;\n\n(function (CashieringSearchEntityType) {\n CashieringSearchEntityType[\"Transfer\"] = \"Transfer\";\n CashieringSearchEntityType[\"AchRelationship\"] = \"AchRelationship\";\n CashieringSearchEntityType[\"TransferRecipientBank\"] = \"TransferRecipientBank\";\n CashieringSearchEntityType[\"TransferWireInstruction\"] = \"TransferWireInstruction\";\n})(CashieringSearchEntityType || (CashieringSearchEntityType = {}));\n\nexport var CashieringDocumentType;\n\n(function (CashieringDocumentType) {\n CashieringDocumentType[\"BankStatement\"] = \"BankStatement\";\n CashieringDocumentType[\"VoidedCheck\"] = \"VoidedCheck\";\n})(CashieringDocumentType || (CashieringDocumentType = {}));\n\nexport var AllCashieringDocumentTypes = [CashieringDocumentType.BankStatement, CashieringDocumentType.VoidedCheck];","// https://www.iso.org\nexport var Country;\n\n(function (Country) {\n Country[\"Afghanistan\"] = \"AFG\";\n Country[\"AlandIslands\"] = \"ALA\";\n Country[\"Albania\"] = \"ALB\";\n Country[\"Algeria\"] = \"DZA\";\n Country[\"AmericanSamoa\"] = \"ASM\";\n Country[\"Andorra\"] = \"AND\";\n Country[\"Angola\"] = \"AGO\";\n Country[\"Anguilla\"] = \"AIA\";\n Country[\"Antarctica\"] = \"ATA\";\n Country[\"AntiguaAndBarbuda\"] = \"ATG\";\n Country[\"Argentina\"] = \"ARG\";\n Country[\"Armenia\"] = \"ARM\";\n Country[\"Aruba\"] = \"ABW\";\n Country[\"Australia\"] = \"AUS\";\n Country[\"Austria\"] = \"AUT\";\n Country[\"Azerbaijan\"] = \"AZE\";\n Country[\"Bahamas\"] = \"BHS\";\n Country[\"Bahrain\"] = \"BHR\";\n Country[\"Bangladesh\"] = \"BGD\";\n Country[\"Barbados\"] = \"BRB\";\n Country[\"Belarus\"] = \"BLR\";\n Country[\"Belgium\"] = \"BEL\";\n Country[\"Belize\"] = \"BLZ\";\n Country[\"Benin\"] = \"BEN\";\n Country[\"Bermuda\"] = \"BMU\";\n Country[\"Bhutan\"] = \"BTN\";\n Country[\"BoliviaPlurinationalStateOf\"] = \"BOL\";\n Country[\"BonaireSintEustatiusAndSaba\"] = \"BES\";\n Country[\"BosniaAndHerzegovina\"] = \"BIH\";\n Country[\"Botswana\"] = \"BWA\";\n Country[\"BouvetIsland\"] = \"BVT\";\n Country[\"Brazil\"] = \"BRA\";\n Country[\"BritishIndianOceanTerritory\"] = \"IOT\";\n Country[\"BruneiDarussalam\"] = \"BRN\";\n Country[\"Bulgaria\"] = \"BGR\";\n Country[\"BurkinaFaso\"] = \"BFA\";\n Country[\"Burundi\"] = \"BDI\";\n Country[\"CaboVerde\"] = \"CPV\";\n Country[\"Cambodia\"] = \"KHM\";\n Country[\"Cameroon\"] = \"CMR\";\n Country[\"Canada\"] = \"CAN\";\n Country[\"CaymanIslands\"] = \"CYM\";\n Country[\"CentralAfricanRepublic\"] = \"CAF\";\n Country[\"Chad\"] = \"TCD\";\n Country[\"Chile\"] = \"CHL\";\n Country[\"China\"] = \"CHN\";\n Country[\"ChristmasIsland\"] = \"CXR\";\n Country[\"CocosKeelingIslands\"] = \"CCK\";\n Country[\"Colombia\"] = \"COL\";\n Country[\"Comoros\"] = \"COM\";\n Country[\"CongoDemocraticRepublicOf\"] = \"COD\";\n Country[\"Congo\"] = \"COG\";\n Country[\"CookIslands\"] = \"COK\";\n Country[\"CostaRica\"] = \"CRI\";\n Country[\"Croatia\"] = \"HRV\";\n Country[\"Cuba\"] = \"CUB\";\n Country[\"Curacao\"] = \"CUW\";\n Country[\"Cyprus\"] = \"CYP\";\n Country[\"Czechia\"] = \"CZE\";\n Country[\"CoteDIvoire\"] = \"CIV\";\n Country[\"Denmark\"] = \"DNK\";\n Country[\"Djibouti\"] = \"DJI\";\n Country[\"Dominica\"] = \"DMA\";\n Country[\"DominicanRepublic\"] = \"DOM\";\n Country[\"Ecuador\"] = \"ECU\";\n Country[\"Egypt\"] = \"EGY\";\n Country[\"ElSalvador\"] = \"SLV\";\n Country[\"EquatorialGuinea\"] = \"GNQ\";\n Country[\"Eritrea\"] = \"ERI\";\n Country[\"Estonia\"] = \"EST\";\n Country[\"Eswatini\"] = \"SWZ\";\n Country[\"Ethiopia\"] = \"ETH\";\n Country[\"FalklandIslandsMalvinas\"] = \"FLK\";\n Country[\"FaroeIslands\"] = \"FRO\";\n Country[\"Fiji\"] = \"FJI\";\n Country[\"Finland\"] = \"FIN\";\n Country[\"France\"] = \"FRA\";\n Country[\"FrenchGuiana\"] = \"GUF\";\n Country[\"FrenchPolynesia\"] = \"PYF\";\n Country[\"FrenchSouthernTerritories\"] = \"ATF\";\n Country[\"Gabon\"] = \"GAB\";\n Country[\"Gambia\"] = \"GMB\";\n Country[\"Georgia\"] = \"GEO\";\n Country[\"Germany\"] = \"DEU\";\n Country[\"Ghana\"] = \"GHA\";\n Country[\"Gibraltar\"] = \"GIB\";\n Country[\"Greece\"] = \"GRC\";\n Country[\"Greenland\"] = \"GRL\";\n Country[\"Grenada\"] = \"GRD\";\n Country[\"Guadeloupe\"] = \"GLP\";\n Country[\"Guam\"] = \"GUM\";\n Country[\"Guatemala\"] = \"GTM\";\n Country[\"Guernsey\"] = \"GGY\";\n Country[\"Guinea\"] = \"GIN\";\n Country[\"GuineaBissau\"] = \"GNB\";\n Country[\"Guyana\"] = \"GUY\";\n Country[\"Haiti\"] = \"HTI\";\n Country[\"HeardIslandAndMcDonaldIslands\"] = \"HMD\";\n Country[\"HolySee\"] = \"VAT\";\n Country[\"Honduras\"] = \"HND\";\n Country[\"HongKong\"] = \"HKG\";\n Country[\"Hungary\"] = \"HUN\";\n Country[\"Iceland\"] = \"ISL\";\n Country[\"India\"] = \"IND\";\n Country[\"Indonesia\"] = \"IDN\";\n Country[\"IranIslamicRepublicOf\"] = \"IRN\";\n Country[\"Iraq\"] = \"IRQ\";\n Country[\"Ireland\"] = \"IRL\";\n Country[\"IsleOfMan\"] = \"IMN\";\n Country[\"Israel\"] = \"ISR\";\n Country[\"Italy\"] = \"ITA\";\n Country[\"Jamaica\"] = \"JAM\";\n Country[\"Japan\"] = \"JPN\";\n Country[\"Jersey\"] = \"JEY\";\n Country[\"Jordan\"] = \"JOR\";\n Country[\"Kazakhstan\"] = \"KAZ\";\n Country[\"Kenya\"] = \"KEN\";\n Country[\"Kiribati\"] = \"KIR\";\n Country[\"KoreaDemocraticPeoplesRepublicOf\"] = \"PRK\";\n Country[\"KoreaRepublicOf\"] = \"KOR\";\n Country[\"Kuwait\"] = \"KWT\";\n Country[\"Kyrgyzstan\"] = \"KGZ\";\n Country[\"LaoPeoplesDemocraticRepublic\"] = \"LAO\";\n Country[\"Latvia\"] = \"LVA\";\n Country[\"Lebanon\"] = \"LBN\";\n Country[\"Lesotho\"] = \"LSO\";\n Country[\"Liberia\"] = \"LBR\";\n Country[\"Libya\"] = \"LBY\";\n Country[\"Liechtenstein\"] = \"LIE\";\n Country[\"Lithuania\"] = \"LTU\";\n Country[\"Luxembourg\"] = \"LUX\";\n Country[\"Macao\"] = \"MAC\";\n Country[\"Madagascar\"] = \"MDG\";\n Country[\"Malawi\"] = \"MWI\";\n Country[\"Malaysia\"] = \"MYS\";\n Country[\"Maldives\"] = \"MDV\";\n Country[\"Mali\"] = \"MLI\";\n Country[\"Malta\"] = \"MLT\";\n Country[\"MarshallIslands\"] = \"MHL\";\n Country[\"Martinique\"] = \"MTQ\";\n Country[\"Mauritania\"] = \"MRT\";\n Country[\"Mauritius\"] = \"MUS\";\n Country[\"Mayotte\"] = \"MYT\";\n Country[\"Mexico\"] = \"MEX\";\n Country[\"MicronesiaFederatedStatesOf\"] = \"FSM\";\n Country[\"MoldovaRepublicOf\"] = \"MDA\";\n Country[\"Monaco\"] = \"MCO\";\n Country[\"Mongolia\"] = \"MNG\";\n Country[\"Montenegro\"] = \"MNE\";\n Country[\"Montserrat\"] = \"MSR\";\n Country[\"Morocco\"] = \"MAR\";\n Country[\"Mozambique\"] = \"MOZ\";\n Country[\"Myanmar\"] = \"MMR\";\n Country[\"Namibia\"] = \"NAM\";\n Country[\"Nauru\"] = \"NRU\";\n Country[\"Nepal\"] = \"NPL\";\n Country[\"Netherlands\"] = \"NLD\";\n Country[\"NewCaledonia\"] = \"NCL\";\n Country[\"NewZealand\"] = \"NZL\";\n Country[\"Nicaragua\"] = \"NIC\";\n Country[\"Niger\"] = \"NER\";\n Country[\"Nigeria\"] = \"NGA\";\n Country[\"Niue\"] = \"NIU\";\n Country[\"NorfolkIsland\"] = \"NFK\";\n Country[\"NorthMacedonia\"] = \"MKD\";\n Country[\"NorthernMarianaIslands\"] = \"MNP\";\n Country[\"Norway\"] = \"NOR\";\n Country[\"Oman\"] = \"OMN\";\n Country[\"Pakistan\"] = \"PAK\";\n Country[\"Palau\"] = \"PLW\";\n Country[\"PalestineStateOf\"] = \"PSE\";\n Country[\"Panama\"] = \"PAN\";\n Country[\"PapuaNewGuinea\"] = \"PNG\";\n Country[\"Paraguay\"] = \"PRY\";\n Country[\"Peru\"] = \"PER\";\n Country[\"Philippines\"] = \"PHL\";\n Country[\"Pitcairn\"] = \"PCN\";\n Country[\"Poland\"] = \"POL\";\n Country[\"Portugal\"] = \"PRT\";\n Country[\"PuertoRico\"] = \"PRI\";\n Country[\"Qatar\"] = \"QAT\";\n Country[\"Romania\"] = \"ROU\";\n Country[\"RussianFederation\"] = \"RUS\";\n Country[\"Rwanda\"] = \"RWA\";\n Country[\"Reunion\"] = \"REU\";\n Country[\"SaintBarthelemy\"] = \"BLM\";\n Country[\"SaintHelenaAscensionAndTristandaCunha\"] = \"SHN\";\n Country[\"SaintKittsAndNevis\"] = \"KNA\";\n Country[\"SaintLucia\"] = \"LCA\";\n Country[\"SaintMartin\"] = \"MAF\";\n Country[\"SaintPierreAndMiquelon\"] = \"SPM\";\n Country[\"SaintVincentAndGrenadines\"] = \"VCT\";\n Country[\"Samoa\"] = \"WSM\";\n Country[\"SanMarino\"] = \"SMR\";\n Country[\"SaoTomeAndPrincipe\"] = \"STP\";\n Country[\"SaudiArabia\"] = \"SAU\";\n Country[\"Senegal\"] = \"SEN\";\n Country[\"Serbia\"] = \"SRB\";\n Country[\"Seychelles\"] = \"SYC\";\n Country[\"SierraLeone\"] = \"SLE\";\n Country[\"Singapore\"] = \"SGP\";\n Country[\"SintMaarten\"] = \"SXM\";\n Country[\"Slovakia\"] = \"SVK\";\n Country[\"Slovenia\"] = \"SVN\";\n Country[\"SolomonIslands\"] = \"SLB\";\n Country[\"Somalia\"] = \"SOM\";\n Country[\"SouthAfrica\"] = \"ZAF\";\n Country[\"SouthGeorgiaAndSouthSandwichIslands\"] = \"SGS\";\n Country[\"SouthSudan\"] = \"SSD\";\n Country[\"Spain\"] = \"ESP\";\n Country[\"SriLanka\"] = \"LKA\";\n Country[\"Sudan\"] = \"SDN\";\n Country[\"Suriname\"] = \"SUR\";\n Country[\"SvalbardAndJanMayen\"] = \"SJM\";\n Country[\"Sweden\"] = \"SWE\";\n Country[\"Switzerland\"] = \"CHE\";\n Country[\"SyrianArabRepublic\"] = \"SYR\";\n Country[\"TaiwanProvinceOfChina\"] = \"TWN\";\n Country[\"Tajikistan\"] = \"TJK\";\n Country[\"TanzaniaUnitedRepublicOf\"] = \"TZA\";\n Country[\"Thailand\"] = \"THA\";\n Country[\"TimorLeste\"] = \"TLS\";\n Country[\"Togo\"] = \"TGO\";\n Country[\"Tokelau\"] = \"TKL\";\n Country[\"Tonga\"] = \"TON\";\n Country[\"TrinidadAndTobago\"] = \"TTO\";\n Country[\"Tunisia\"] = \"TUN\";\n Country[\"Turkey\"] = \"TUR\";\n Country[\"Turkmenistan\"] = \"TKM\";\n Country[\"TurksAndCaicosIslands\"] = \"TCA\";\n Country[\"Tuvalu\"] = \"TUV\";\n Country[\"Uganda\"] = \"UGA\";\n Country[\"Ukraine\"] = \"UKR\";\n Country[\"UnitedArabEmirates\"] = \"ARE\";\n Country[\"UnitedKingdomOfGreatBritainAndNorthernIreland\"] = \"GBR\";\n Country[\"UnitedStatesMinorOutlyingIslands\"] = \"UMI\";\n Country[\"UnitedStatesOfAmerica\"] = \"USA\";\n Country[\"Uruguay\"] = \"URY\";\n Country[\"Uzbekistan\"] = \"UZB\";\n Country[\"Vanuatu\"] = \"VUT\";\n Country[\"VenezuelaBolivarianRepublicOf\"] = \"VEN\";\n Country[\"VietNam\"] = \"VNM\";\n Country[\"VirginIslandsBritish\"] = \"VGB\";\n Country[\"VirginIslandsUS\"] = \"VIR\";\n Country[\"WallisAndFutuna\"] = \"WLF\";\n Country[\"WesternSahara\"] = \"ESH\";\n Country[\"Yemen\"] = \"YEM\";\n Country[\"Zambia\"] = \"ZMB\";\n Country[\"Zimbabwe\"] = \"ZWE\";\n})(Country || (Country = {}));\n\nexport var AllCountries = [Country.Afghanistan, Country.AlandIslands, Country.Albania, Country.Algeria, Country.AmericanSamoa, Country.Andorra, Country.Angola, Country.Anguilla, Country.Antarctica, Country.AntiguaAndBarbuda, Country.Argentina, Country.Armenia, Country.Aruba, Country.Australia, Country.Austria, Country.Azerbaijan, Country.Bahamas, Country.Bahrain, Country.Bangladesh, Country.Barbados, Country.Belarus, Country.Belgium, Country.Belize, Country.Benin, Country.Bermuda, Country.Bhutan, Country.BoliviaPlurinationalStateOf, Country.BonaireSintEustatiusAndSaba, Country.BosniaAndHerzegovina, Country.Botswana, Country.BouvetIsland, Country.Brazil, Country.BritishIndianOceanTerritory, Country.BruneiDarussalam, Country.Bulgaria, Country.BurkinaFaso, Country.Burundi, Country.CaboVerde, Country.Cambodia, Country.Cameroon, Country.Canada, Country.CaymanIslands, Country.CentralAfricanRepublic, Country.Chad, Country.Chile, Country.China, Country.ChristmasIsland, Country.CocosKeelingIslands, Country.Colombia, Country.Comoros, Country.CongoDemocraticRepublicOf, Country.Congo, Country.CookIslands, Country.CostaRica, Country.Croatia, Country.Cuba, Country.Curacao, Country.Cyprus, Country.Czechia, Country.CoteDIvoire, Country.Denmark, Country.Djibouti, Country.Dominica, Country.DominicanRepublic, Country.Ecuador, Country.Egypt, Country.ElSalvador, Country.EquatorialGuinea, Country.Eritrea, Country.Estonia, Country.Eswatini, Country.Ethiopia, Country.FalklandIslandsMalvinas, Country.FaroeIslands, Country.Fiji, Country.Finland, Country.France, Country.FrenchGuiana, Country.FrenchPolynesia, Country.FrenchSouthernTerritories, Country.Gabon, Country.Gambia, Country.Georgia, Country.Germany, Country.Ghana, Country.Gibraltar, Country.Greece, Country.Greenland, Country.Grenada, Country.Guadeloupe, Country.Guam, Country.Guatemala, Country.Guernsey, Country.Guinea, Country.GuineaBissau, Country.Guyana, Country.Haiti, Country.HeardIslandAndMcDonaldIslands, Country.HolySee, Country.Honduras, Country.HongKong, Country.Hungary, Country.Iceland, Country.India, Country.Indonesia, Country.IranIslamicRepublicOf, Country.Iraq, Country.Ireland, Country.IsleOfMan, Country.Israel, Country.Italy, Country.Jamaica, Country.Japan, Country.Jersey, Country.Jordan, Country.Kazakhstan, Country.Kenya, Country.Kiribati, Country.KoreaDemocraticPeoplesRepublicOf, Country.KoreaRepublicOf, Country.Kuwait, Country.Kyrgyzstan, Country.LaoPeoplesDemocraticRepublic, Country.Latvia, Country.Lebanon, Country.Lesotho, Country.Liberia, Country.Libya, Country.Liechtenstein, Country.Lithuania, Country.Luxembourg, Country.Macao, Country.Madagascar, Country.Malawi, Country.Malaysia, Country.Maldives, Country.Mali, Country.Malta, Country.MarshallIslands, Country.Martinique, Country.Mauritania, Country.Mauritius, Country.Mayotte, Country.Mexico, Country.MicronesiaFederatedStatesOf, Country.MoldovaRepublicOf, Country.Monaco, Country.Mongolia, Country.Montenegro, Country.Montserrat, Country.Morocco, Country.Mozambique, Country.Myanmar, Country.Namibia, Country.Nauru, Country.Nepal, Country.Netherlands, Country.NewCaledonia, Country.NewZealand, Country.Nicaragua, Country.Niger, Country.Nigeria, Country.Niue, Country.NorfolkIsland, Country.NorthMacedonia, Country.NorthernMarianaIslands, Country.Norway, Country.Oman, Country.Pakistan, Country.Palau, Country.PalestineStateOf, Country.Panama, Country.PapuaNewGuinea, Country.Paraguay, Country.Peru, Country.Philippines, Country.Pitcairn, Country.Poland, Country.Portugal, Country.PuertoRico, Country.Qatar, Country.Romania, Country.RussianFederation, Country.Rwanda, Country.Reunion, Country.SaintBarthelemy, Country.SaintHelenaAscensionAndTristandaCunha, Country.SaintKittsAndNevis, Country.SaintLucia, Country.SaintMartin, Country.SaintPierreAndMiquelon, Country.SaintVincentAndGrenadines, Country.Samoa, Country.SanMarino, Country.SaoTomeAndPrincipe, Country.SaudiArabia, Country.Senegal, Country.Serbia, Country.Seychelles, Country.SierraLeone, Country.Singapore, Country.SintMaarten, Country.Slovakia, Country.Slovenia, Country.SolomonIslands, Country.Somalia, Country.SouthAfrica, Country.SouthGeorgiaAndSouthSandwichIslands, Country.SouthSudan, Country.Spain, Country.SriLanka, Country.Sudan, Country.Suriname, Country.SvalbardAndJanMayen, Country.Sweden, Country.Switzerland, Country.SyrianArabRepublic, Country.TaiwanProvinceOfChina, Country.Tajikistan, Country.TanzaniaUnitedRepublicOf, Country.Thailand, Country.TimorLeste, Country.Togo, Country.Tokelau, Country.Tonga, Country.TrinidadAndTobago, Country.Tunisia, Country.Turkey, Country.Turkmenistan, Country.TurksAndCaicosIslands, Country.Tuvalu, Country.Uganda, Country.Ukraine, Country.UnitedArabEmirates, Country.UnitedKingdomOfGreatBritainAndNorthernIreland, Country.UnitedStatesMinorOutlyingIslands, Country.UnitedStatesOfAmerica, Country.Uruguay, Country.Uzbekistan, Country.Vanuatu, Country.VenezuelaBolivarianRepublicOf, Country.VietNam, Country.VirginIslandsBritish, Country.VirginIslandsUS, Country.WallisAndFutuna, Country.WesternSahara, Country.Yemen, Country.Zambia, Country.Zimbabwe];\nexport var getCountryNameByCode = function getCountryNameByCode(code) {\n var countryName = Object.keys(Country).find(function (key) {\n return Country[key] === code;\n }) || ''; // Insert space before each capital letter and trim the leading space if any\n\n return countryName.replace(/([A-Z])/g, ' $1').trim();\n};","export var DurationValues = {\n GTC: 'GTC',\n Day: 'Day',\n Manual: 'Manual'\n};\nexport var Durations;\n\n(function (Durations) {\n Durations[\"GTC\"] = \"GTC\";\n Durations[\"Day\"] = \"Day\";\n Durations[\"Manual\"] = \"Manual\";\n})(Durations || (Durations = {}));","import { Country } from './Country';\nexport var BaseApiVersion = 'v1';\nexport var BaseApiUrl = \"/api/\".concat(BaseApiVersion);\nexport var LoginApiUrl = function LoginApiUrl(subroot) {\n return \"\".concat(BaseApiUrl, \"/\").concat(subroot ? \"\".concat(subroot, \"/login\") : 'login');\n};\nexport var StorageGridPath = \"grid\";\nexport var objects = {\n block: 'block',\n blocks: 'blocks',\n dashboard: 'dashboard',\n dashboards: 'dashboards',\n settings: 'settings',\n debugSettings: 'debugsettings'\n};\nexport var StorageBlocksPath = function StorageBlocksPath(dashboardId) {\n return \"\".concat(objects.blocks, \"/\").concat(dashboardId);\n};\nexport var StorageBlockPath = function StorageBlockPath(blockId) {\n return \"\".concat(objects.block, \"/\").concat(blockId);\n};\nexport var StorageBlockSettingsPath = function StorageBlockSettingsPath(blockId) {\n return \"\".concat(objects.block, \"/\").concat(blockId, \"/\").concat(objects.settings);\n};\nexport var StorageSettingsBlockPath = \"\".concat(objects.settings, \"/block\");\nexport var StorageSettingsFieldPath = function StorageSettingsFieldPath(field) {\n return \"\".concat(objects.settings, \"/\").concat(field);\n};\nexport var StorageSettingsBlockTypeFieldPath = function StorageSettingsBlockTypeFieldPath(type) {\n return StorageSettingsFieldPath(\"\".concat(objects.block, \"-\").concat(type));\n};\nexport var StorageDashboardsPath = \"\".concat(objects.dashboards);\nexport var StorageDashboardPath = \"\".concat(objects.dashboard);\nexport var CreateDashboardPath = \"\".concat(objects.dashboard, \"/new\");\nexport var DefaultDashboardPath = \"\".concat(objects.dashboard, \"/defaults\");\nexport var DeleteDashboardPath = function DeleteDashboardPath(dashboardId) {\n return \"\".concat(objects.dashboard, \"/\").concat(dashboardId);\n};\nexport var StorageFavoritesPath = \"favorites\";\nexport var RefreshTokenPath = \"/refresh_token\";\nexport var DashboardSettingsPath = \"\".concat(objects.settings, \"/dashboard\");\nexport var PendingApplicationsPath = '/db/applications';\nexport var StorageStrategyPath = \"resource/strategy\";\nexport var MAX_TRANSFER_AMOUNT = 50000; // accepted countries of residence for accts\n\nexport var AcceptedCountries = [Country.UnitedStatesOfAmerica, Country.UnitedKingdomOfGreatBritainAndNorthernIreland, Country.Australia, Country.NewZealand];\nexport var ClientVersionHeader = 'x-client-version';\nexport var PERSIST_BLOCKS_DEBOUNCE_MS = 1000;","export var DefaultEntitlementsItem = {\n AccountNumber: '',\n ApprovedUserMarketDataEntitlementType: '',\n ApprovingUserName: '',\n FirstName: '',\n LastName: '',\n PrimaryAccountIdAssociatedWithUser: 0,\n RequestDateTime: '',\n RequestedMarketDataEntitlementType: '',\n UserId: 0,\n UserLevel: 0,\n UserName: '',\n Id: 0\n};\nexport var MarketDataEntitlementTypes;\n\n(function (MarketDataEntitlementTypes) {\n MarketDataEntitlementTypes[\"Undefined\"] = \"Undefined\";\n MarketDataEntitlementTypes[\"ProfessionalUser\"] = \"ProfessionalUser\";\n MarketDataEntitlementTypes[\"NonProfessionalUser\"] = \"NonProfessionalUser\";\n MarketDataEntitlementTypes[\"DelayedQuotesOnlyUser\"] = \"DelayedQuotesOnlyUser\";\n})(MarketDataEntitlementTypes || (MarketDataEntitlementTypes = {}));\n\nexport var AllMarketDataEntitlementTypes = [MarketDataEntitlementTypes.Undefined, MarketDataEntitlementTypes.ProfessionalUser, MarketDataEntitlementTypes.NonProfessionalUser, MarketDataEntitlementTypes.DelayedQuotesOnlyUser];","export var OptionExpirationType;\n\n(function (OptionExpirationType) {\n OptionExpirationType[OptionExpirationType[\"AM\"] = 1] = \"AM\";\n OptionExpirationType[OptionExpirationType[\"PM\"] = 2] = \"PM\";\n})(OptionExpirationType || (OptionExpirationType = {}));\n\nexport var ExpirationType;\n\n(function (ExpirationType) {\n ExpirationType[\"Monthly\"] = \"M\";\n ExpirationType[\"Weekly\"] = \"W\";\n ExpirationType[\"Quarterly\"] = \"Q\";\n})(ExpirationType || (ExpirationType = {}));","export var ReleaseNoteIssueTypes;\n\n(function (ReleaseNoteIssueTypes) {\n ReleaseNoteIssueTypes[\"NewFeature\"] = \"NewFeature\";\n ReleaseNoteIssueTypes[\"Improvement\"] = \"Improvement\";\n ReleaseNoteIssueTypes[\"BugFix\"] = \"BugFix\";\n ReleaseNoteIssueTypes[\"MarketHoliday\"] = \"MarketHoliday\";\n ReleaseNoteIssueTypes[\"TechnicalAlert\"] = \"TechnicalAlert\";\n ReleaseNoteIssueTypes[\"OperationsAlert\"] = \"OperationsAlert\";\n ReleaseNoteIssueTypes[\"CorporateActionAlert\"] = \"CorporateActionAlert\";\n})(ReleaseNoteIssueTypes || (ReleaseNoteIssueTypes = {}));\n\nexport var UserLevelTypes;\n\n(function (UserLevelTypes) {\n UserLevelTypes[\"Undefined\"] = \"Undefined\";\n UserLevelTypes[\"Admin\"] = \"Admin\";\n UserLevelTypes[\"Firm\"] = \"Firm\";\n UserLevelTypes[\"Region\"] = \"Region\";\n UserLevelTypes[\"Branch\"] = \"Branch\";\n UserLevelTypes[\"Rep\"] = \"Rep\";\n UserLevelTypes[\"Account\"] = \"Account\";\n})(UserLevelTypes || (UserLevelTypes = {}));\n\nexport var AllReleaseNoteIssueTypes = [ReleaseNoteIssueTypes.NewFeature, ReleaseNoteIssueTypes.Improvement, ReleaseNoteIssueTypes.BugFix, ReleaseNoteIssueTypes.MarketHoliday, ReleaseNoteIssueTypes.TechnicalAlert, ReleaseNoteIssueTypes.OperationsAlert, ReleaseNoteIssueTypes.CorporateActionAlert];\nexport var AllUserLevelTypes = [UserLevelTypes.Account, UserLevelTypes.Admin, UserLevelTypes.Branch, UserLevelTypes.Firm, UserLevelTypes.Region, UserLevelTypes.Rep, UserLevelTypes.Undefined];\nexport var AlertStatusTypes;\n\n(function (AlertStatusTypes) {\n AlertStatusTypes[\"Active\"] = \"Active\";\n AlertStatusTypes[\"Inactive\"] = \"Inactive\";\n})(AlertStatusTypes || (AlertStatusTypes = {}));\n\nexport var AllAlertStatusTypes = [AlertStatusTypes.Active, AlertStatusTypes.Inactive];","export var AssetSymbolUndefinedException = {\n error: \"AssetSymbol was undefined\",\n message: \"AssetSymbol must have a value\"\n};\nexport var AccountIdException = {\n error: \"Account is undefined\",\n message: \"Account is undefined\"\n};\nexport var ExpirationUndefinedException = {\n error: \"Expiration was undefined\",\n message: \"Expiration must have a value\"\n};\nexport var toException = function toException(error, data) {\n return Object.assign({}, error, {\n data: data\n });\n};","export var SizeType;\n\n(function (SizeType) {\n SizeType[\"lg\"] = \"lg\";\n SizeType[\"md\"] = \"md\";\n SizeType[\"sm\"] = \"sm\";\n SizeType[\"xs\"] = \"xs\";\n SizeType[\"xxs\"] = \"xxs\";\n})(SizeType || (SizeType = {}));\n\nexport var DefaultGridLayout = {\n breakpoint: SizeType.lg,\n columns: 6,\n gridColumnsSmall: 2,\n gridColumnsMedium: 4,\n gridColumnsLarge: 6,\n width: 1200\n};","export var OrderStrategyTypeId;\n\n(function (OrderStrategyTypeId) {\n OrderStrategyTypeId[OrderStrategyTypeId[\"Undefined\"] = 0] = \"Undefined\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Single\"] = 1] = \"Single\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Vertical\"] = 2] = \"Vertical\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Calendar\"] = 3] = \"Calendar\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Straddle\"] = 5] = \"Straddle\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Strangle\"] = 6] = \"Strangle\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Butterfly\"] = 7] = \"Butterfly\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Condor\"] = 8] = \"Condor\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"IronButterfly\"] = 9] = \"IronButterfly\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"IronConder\"] = 10] = \"IronConder\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Box\"] = 11] = \"Box\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"CoveredCall\"] = 13] = \"CoveredCall\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"MarriedPut\"] = 14] = \"MarriedPut\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Conversion\"] = 15] = \"Conversion\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Collar\"] = 16] = \"Collar\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"SyntheticCombo\"] = 17] = \"SyntheticCombo\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"CreateMyOwn\"] = 18] = \"CreateMyOwn\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"HedgeCollar\"] = 19] = \"HedgeCollar\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Contingent\"] = 20] = \"Contingent\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Trailing\"] = 21] = \"Trailing\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"OneCancelsOther\"] = 22] = \"OneCancelsOther\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Stock\"] = 23] = \"Stock\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Bond\"] = 24] = \"Bond\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"MutualFund\"] = 25] = \"MutualFund\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"CoveredPut\"] = 26] = \"CoveredPut\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"MarriedCall\"] = 27] = \"MarriedCall\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"CallCalendar\"] = 28] = \"CallCalendar\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"PutCalendar\"] = 29] = \"PutCalendar\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Call\"] = 30] = \"Call\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Put\"] = 31] = \"Put\";\n})(OrderStrategyTypeId || (OrderStrategyTypeId = {}));\n\nexport var OrderStrategyType;\n\n(function (OrderStrategyType) {\n OrderStrategyType[\"undefined\"] = \"Undefined\";\n OrderStrategyType[\"Undefined\"] = \"Undefined\";\n OrderStrategyType[\"Single\"] = \"Single\";\n OrderStrategyType[\"Vertical\"] = \"Vertical\";\n OrderStrategyType[\"CallVertical\"] = \"Call Vertical\";\n OrderStrategyType[\"PutVertical\"] = \"Put Vertical\";\n OrderStrategyType[\"Calendar\"] = \"Calendar\";\n OrderStrategyType[\"CallCalendar\"] = \"Call Calendar\";\n OrderStrategyType[\"PutCalendar\"] = \"Put Calendar\";\n OrderStrategyType[\"Straddle\"] = \"Straddle\";\n OrderStrategyType[\"Strangle\"] = \"Strangle\";\n OrderStrategyType[\"Butterfly\"] = \"Butterfly\";\n OrderStrategyType[\"Condor\"] = \"Condor\";\n OrderStrategyType[\"IronButterfly\"] = \"IronButterfly\";\n OrderStrategyType[\"IronConder\"] = \"IronConder\";\n OrderStrategyType[\"Box\"] = \"Box\";\n OrderStrategyType[\"CoveredCall\"] = \"CoveredCall\";\n OrderStrategyType[\"MarriedPut\"] = \"MarriedPut\";\n OrderStrategyType[\"Conversion\"] = \"Conversion\";\n OrderStrategyType[\"Collar\"] = \"Collar\";\n OrderStrategyType[\"SyntheticCombo\"] = \"SyntheticCombo\";\n OrderStrategyType[\"CreateMyOwn\"] = \"CreateMyOwn\";\n OrderStrategyType[\"HedgeCollar\"] = \"HedgeCollar\";\n OrderStrategyType[\"Contingent\"] = \"Contingent\";\n OrderStrategyType[\"Trailing\"] = \"Trailing\";\n OrderStrategyType[\"OneCancelsOther\"] = \"OneCancelsOther\";\n OrderStrategyType[\"Stock\"] = \"Stock\";\n OrderStrategyType[\"Bond\"] = \"Bond\";\n OrderStrategyType[\"MutualFund\"] = \"MutualFund\";\n OrderStrategyType[\"CoveredPut\"] = \"CoveredPut\";\n OrderStrategyType[\"MarriedCall\"] = \"MarriedCall\";\n OrderStrategyType[\"Call\"] = \"Call\";\n OrderStrategyType[\"Put\"] = \"Put\";\n OrderStrategyType[\"CallButterfly\"] = \"CallButterfly\";\n OrderStrategyType[\"PutButterfly\"] = \"PutButterfly\";\n OrderStrategyType[\"CallCondor\"] = \"CallCondor\";\n OrderStrategyType[\"PutCondor\"] = \"PutCondor\";\n})(OrderStrategyType || (OrderStrategyType = {}));","export var OrderStatuses = {\n /// \n /// Order is live. Cannot be set by user.\n /// \n New: 1,\n /// \n /// Order is still live and is partially filled. Cannot be set by user.\n /// \n PartiallyFilled: 2,\n /// \n /// Order is done and completely filled. Cannot be set by user.\n /// \n Filled: 3,\n DoneForDay: 4,\n /// \n /// Order is done and cancelled. Cannot be set by user.\n /// \n Cancelled: 5,\n /// \n /// Order is live and has been replaced. Cannot be set by user.\n /// \n Replaced: 6,\n /// \n /// Cancel request has been received by the exchange and is pending to receive a response status. Cannot be set by user.\n /// \n PendingCancel: 7,\n /// \n /// Last request received for the given order by the exchange was rejected. Cannot be set by user.\n /// \n Rejected: 9,\n /// \n /// New order request has been received by the exchange and is pending to receive a response status. Cannot be set by user.\n /// \n PendingNew: 11,\n /// \n /// Not used\n /// \n Expired: 13,\n /// \n /// Replace order request has been received by the exchange and is pending to receive a response status. Cannot be set by user.\n /// \n PendingReplace: 14,\n /// \n /// Order details are saved internally to be used at a future time. Not sent to the exchange.\n /// \n Saved: 15,\n /// \n /// New order request that has not yet been sent to the exchange.\n /// \n Initiated: 20,\n /// \n /// Replace order request that has not yet been sent to the exchange.\n /// \n ReplaceInitiated: 21,\n /// \n /// Cancel order request that has not yet been sent to the exchange.\n /// \n CancelInitiated: 22,\n /// \n /// Cancel order request has been rejected by the exchange. Cannot be set by user.\n /// \n CancelRejected: 23,\n /// \n /// Replace order request has been rejected by the exchange. Cannot be set by user.\n /// \n ReplaceRejected: 24,\n /// \n /// Order has been acknowledged by the exchange and is pending to be sent to the market. Cannot be set by user.\n /// \n Acknowledged: 27,\n /// \n /// Order has been partially filled by the exchange and then subsequently cancelled by the user.\n /// \n PartiallyCancelled: 28\n};","export var ExpiredTokenCode;\n\n(function (ExpiredTokenCode) {\n ExpiredTokenCode[ExpiredTokenCode[\"Unknown\"] = 0] = \"Unknown\";\n ExpiredTokenCode[ExpiredTokenCode[\"Inactivity\"] = 1] = \"Inactivity\";\n ExpiredTokenCode[ExpiredTokenCode[\"Expired\"] = 2] = \"Expired\";\n ExpiredTokenCode[ExpiredTokenCode[\"ApiTokenExpired\"] = 3] = \"ApiTokenExpired\";\n ExpiredTokenCode[ExpiredTokenCode[\"DuplicateLogin\"] = 10] = \"DuplicateLogin\";\n ExpiredTokenCode[ExpiredTokenCode[\"Logout\"] = 11] = \"Logout\";\n})(ExpiredTokenCode || (ExpiredTokenCode = {}));","export var State;\n\n(function (State) {\n State[\"Alabama\"] = \"AL\";\n State[\"Alaska\"] = \"AK\";\n State[\"Arizona\"] = \"AZ\";\n State[\"Arkansas\"] = \"AR\";\n State[\"California\"] = \"CA\";\n State[\"Colorado\"] = \"CO\";\n State[\"Connecticut\"] = \"CT\";\n State[\"Delaware\"] = \"DE\";\n State[\"DistrictOfColumbia\"] = \"DC\";\n State[\"Florida\"] = \"FL\";\n State[\"Georgia\"] = \"GA\";\n State[\"Hawaii\"] = \"HI\";\n State[\"Idaho\"] = \"ID\";\n State[\"Illinois\"] = \"IL\";\n State[\"Indiana\"] = \"IN\";\n State[\"Iowa\"] = \"IA\";\n State[\"Kansas\"] = \"KS\";\n State[\"Kentucky\"] = \"KY\";\n State[\"Louisiana\"] = \"LA\";\n State[\"Maine\"] = \"ME\";\n State[\"Maryland\"] = \"MD\";\n State[\"Massachusetts\"] = \"MA\";\n State[\"Michigan\"] = \"MI\";\n State[\"Minnesota\"] = \"MN\";\n State[\"Mississippi\"] = \"MS\";\n State[\"Missouri\"] = \"MO\";\n State[\"Montana\"] = \"MT\";\n State[\"Nebraska\"] = \"NE\";\n State[\"Nevada\"] = \"NV\";\n State[\"NewHampshire\"] = \"NH\";\n State[\"NewJersey\"] = \"NJ\";\n State[\"NewMexico\"] = \"NM\";\n State[\"NewYork\"] = \"NY\";\n State[\"NorthCarolina\"] = \"NC\";\n State[\"NorthDakota\"] = \"ND\";\n State[\"Ohio\"] = \"OH\";\n State[\"Oklahoma\"] = \"OK\";\n State[\"Oregon\"] = \"OR\";\n State[\"Pennsylvania\"] = \"PA\";\n State[\"RhodeIsland\"] = \"RI\";\n State[\"SouthCarolina\"] = \"SC\";\n State[\"SouthDakota\"] = \"SD\";\n State[\"Tennessee\"] = \"TN\";\n State[\"Texas\"] = \"TX\";\n State[\"Utah\"] = \"UT\";\n State[\"Vermont\"] = \"VT\";\n State[\"Virginia\"] = \"VA\";\n State[\"Washington\"] = \"WA\";\n State[\"WestVirginia\"] = \"WV\";\n State[\"Wisconsin\"] = \"WI\";\n State[\"Wyoming\"] = \"WY\";\n})(State || (State = {}));\n\nexport var AllStates = [State.Alabama, State.Alaska, State.Arizona, State.Arkansas, State.California, State.Colorado, State.Connecticut, State.Delaware, State.DistrictOfColumbia, State.Florida, State.Georgia, State.Hawaii, State.Idaho, State.Illinois, State.Indiana, State.Iowa, State.Kansas, State.Kentucky, State.Louisiana, State.Maine, State.Maryland, State.Massachusetts, State.Michigan, State.Minnesota, State.Mississippi, State.Missouri, State.Montana, State.Nebraska, State.Nevada, State.NewHampshire, State.NewJersey, State.NewMexico, State.NewYork, State.NorthCarolina, State.NorthDakota, State.Ohio, State.Oklahoma, State.Oregon, State.Pennsylvania, State.RhodeIsland, State.SouthCarolina, State.SouthDakota, State.Tennessee, State.Texas, State.Utah, State.Vermont, State.Virginia, State.Washington, State.WestVirginia, State.Wisconsin, State.Wyoming];","export var SymbolTypes = {\n index: 'index',\n stock: 'stock'\n};","/* eslint-disable @typescript-eslint/camelcase */\nimport _ from 'lodash';\nexport var SuccessResponseCode = 0;\nexport var APINotAuthorizedResponseCode = 200;\nexport var APIAgreementResponseCode = 202;\nexport var APIAgreementResponseUpdateCode = 207;\nexport var NoAvailableSecurityChallengesResponseCode = 208;\nexport var SecurityChallengeFailedResponseCode = 209;\nexport var GenericErrorResponseCode = 99;\nexport var ApplicationDuplicateUsernameResponseCode = 600;\nexport var ApplicationDuplicateAccountTypeSSNResponseCode = 211;\nexport var ResponseCodes = {\n 0: {\n name: 'Success',\n description: 'Request was successful'\n },\n 98: {\n name: 'InvalidRequestParameters',\n description: 'One or more request parameters are invalid for this type of request'\n },\n 99: {\n name: 'GenericError',\n description: 'Generic failure response for request'\n },\n 100: {\n name: 'IncorrectUserOrPass',\n description: 'Username or password supplied when logging in was incorrect'\n },\n 101: {\n name: 'FailedToDecryptUserPass',\n description: 'Password supplied could not be decrypted'\n },\n 102: {\n name: 'FailedToDecryptMessage',\n description: 'Message supplied could not be decrypted'\n },\n 103: {\n name: 'IncorrectEntity',\n description: 'Entity name supplied is incorrect'\n },\n 104: {\n name: 'ExpiredRequest',\n description: 'Timestamp in login request is expired'\n },\n 105: {\n name: 'FailedToParsePayload',\n description: 'Could not parse payload into correct parts'\n },\n 106: {\n name: 'MessageIsNull',\n description: 'Message supplied was null'\n },\n 107: {\n name: 'FailedToSplitMessage',\n description: 'Could not split message into required JWS parts'\n },\n 108: {\n name: 'FailedToDecodeHeader',\n description: 'Could not decode header in JWS'\n },\n 109: {\n name: 'FailedToDecodePayload',\n description: 'Could not decode payload in JWS'\n },\n 110: {\n name: 'TooManyFailedLoginAttempts',\n description: 'There were too many unsuccessful login attempts for the given user'\n },\n 111: {\n name: 'EndUserPasswordDoesNotMeetSecurityRequirements',\n description: \"End user's password does not meet our current security requirements; password needs to be changed\"\n },\n 112: {\n name: 'EndUserPasswordIsTemporaryAndNeedsToBeChanged',\n description: \"End user's password is a temporary password; password needs to be changed\"\n },\n 113: {\n name: 'EndUserPasswordIsExpired',\n description: 'Your password has expired as part of our annual security measures to keep your account safe. Please click the \"Reset password\" button below and follow the on-screen instructions to set a new password.'\n },\n 114: {\n name: 'EndUserHasNoSecurityQuestions',\n description: 'Please contact Account Services at 1-800-494-0451 to reset your login credentials.'\n },\n 119: {\n name: 'AuthTokenDestructureFailed',\n description: 'Auth token destructure failed.'\n },\n 200: {\n name: 'APINotAuthorizedForGivenRequest',\n description: 'API not authorized for given request'\n },\n 202: {\n name: 'APIAgreementMissing',\n description: 'API Agreement is missing'\n },\n 207: {\n name: 'AgreementMissing',\n description: 'Agreement is missing'\n },\n 208: {\n name: 'NoAvailableSecurityChallenges',\n description: 'All security challenges have been marked as failed.'\n },\n 209: {\n name: 'SecurityChallengeFailedVerification',\n description: 'Security challenge verification failed.'\n },\n 211: {\n name: 'ApplicationDuplicateAccountTypeSSN',\n description: 'An account with this account type and SSN already exists. Please change the account type or reach out to Account Services at 1-800-494-0451.'\n },\n 300: {\n name: 'Order error',\n description: function description(message) {\n return message;\n }\n },\n 301: {\n name: 'Margin check error',\n description: function description(message) {\n return _.replace(message, 'Margin check error.', '');\n }\n },\n 302: {\n name: 'Restricted symbol',\n description: 'This symbol is currently not allowed for trading.'\n },\n 305: {\n name: 'Order placement error',\n description: 'Order Validation Error'\n },\n 307: {\n name: 'Leveraged, Inverse, or Commodity ETF Warning',\n description: \"Warning: Leveraged, Inverse, and Commodity ETFs carry unique risks and may not be suitable for all investors. CLICK HERE to learn more. To proceed, click \\\"Bypass Warnings\\\".\"\n },\n 390: {\n name: 'Insufficient Funds',\n description: 'Insufficient funds to complete the requested operation.'\n },\n 500: {\n name: 'AchRelationshipNotFound',\n description: 'The requested ACH relationship was not found.'\n },\n 501: {\n name: 'AchRelationshipIsInInvalidStateForOperation',\n description: 'The requested ACH relationship is in a State that is invalid for the requested operation.'\n },\n 502: {\n name: 'AchRelationshipApprovalMethodMismatch',\n description: 'The Approval Method specified in the operation does not match the Approval Method of the ACH relationship. Only MicroDeposit is currently supported.'\n },\n 503: {\n name: 'TransferBeneficiaryNotFound',\n description: 'The requested transfer beneficiary was not found.'\n },\n 504: {\n name: 'TransferIntermediaryNotFound',\n description: 'The requested transfer intermediary was not found.'\n },\n 505: {\n name: 'TransferRecipientBankNotFound',\n description: 'The requested transfer recipient bank was not found.'\n },\n 506: {\n name: 'TransferNotFound',\n description: 'The requested transfer was not found.'\n },\n 507: {\n name: 'TransferIsInInvalidStateForOperation',\n description: 'The requested transfer is in a State that is invalid for the requested operation.'\n },\n 508: {\n name: 'CashieringRequestFailedValidation',\n description: 'The Cashiering request failed validation.'\n },\n 509: {\n name: 'TransferBeneficiaryMechanismMismatch',\n description: 'The transfer beneficiary Mechanism specified in the operation does not match the Mechanism of the transfer.'\n },\n 510: {\n name: 'TransferApprovalWithUnapprovedAchRelationshipFailed',\n description: 'Cannot approve this transfer as it has an unapproved ACH relationship. First approve the relationship before attempting to approve the transfer.'\n },\n 511: {\n name: 'AchRelationshipDuplicate',\n description: 'This ACH relationship is a duplicate of an existing relationship.'\n },\n 512: {\n name: 'AchRelationshipDeleteWithPendingTransfersFailed',\n description: 'Cannot delete this ACH relationship as it has pending transfers. Remove those first, before attempting to delete the relationship.'\n },\n 550: {\n name: 'ApexSentinelServiceFailed',\n description: 'The Apex Sentinel service failed while processing the operation.'\n },\n 600: {\n name: 'ApplicationDuplicateUsername',\n description: 'The Username you entered is already being used.'\n },\n 702: {\n name: 'MiscellaneousFileUploadError',\n description: 'The file upload failed.'\n }\n};","import * as yup from 'yup';\nvar DashboardInfoSchemaFields = {\n dashboardId: yup.string(),\n title: yup.string(),\n isDeleted: yup.boolean().notRequired(),\n dataLastFetchedOn: yup.date().notRequired()\n};\nexport var LayoutSchemaFields = {\n i: yup.string().notRequired(),\n x: yup.number(),\n y: yup.number(),\n w: yup.number(),\n h: yup.number(),\n minW: yup.number().notRequired(),\n maxW: yup.number().notRequired(),\n minH: yup.number().notRequired(),\n maxH: yup.number().notRequired(),\n\n /**\n * set by DragEvents (onDragStart, onDrag, onDragStop) and ResizeEvents (onResizeStart, onResize, onResizeStop)\n */\n moved: yup.boolean().notRequired(),\n\n /**\n * If true, equal to `isDraggable: false` and `isResizable: false`.\n */\n static: yup.boolean().notRequired(),\n\n /**\n * If false, will not be draggable. Overrides `static`.\n */\n isDraggable: yup.boolean().notRequired(),\n\n /**\n * If false, will not be resizable. Overrides `static`.\n */\n isResizable: yup.boolean().notRequired()\n};\nvar DashboardConfigurationSchemaFields = Object.assign({}, DashboardInfoSchemaFields, {\n presetBlocks: yup.array().notRequired()\n});\nvar UiSettingsSchemaFields = {\n afterHoursTrading: yup.boolean(),\n muteAllSounds: yup.boolean(),\n showBannerSymbols: yup.boolean(),\n bannerSymbols: yup.array(),\n balancePollingThrottleMs: yup.number(),\n cashieringPollingIntervalMs: yup.number(),\n cashieringPollingInterval: yup.number(),\n cashieringPendingReminderInterval: yup.number(),\n cashieringPendingReminderMaxAttempts: yup.number(),\n gridColumnsLarge: yup.number(),\n gridColumnsMedium: yup.number(),\n gridColumnsSmall: yup.number(),\n hotkeys: yup.boolean(),\n width: yup.number()\n};\nexport var DashboardInfoSchema = yup.object(DashboardInfoSchemaFields);\nexport var DashboardConfigurationSchema = yup.object(DashboardConfigurationSchemaFields);\nexport var LayoutSchema = yup.object(LayoutSchemaFields);\nexport var UiSettingsSchema = yup.object(UiSettingsSchemaFields); // export type DashboardInfo = yup.InferType;\n// export type DashboardConfiguration = yup.InferType;\n// export type Layout = yup.InferType;\n// export type UiSettings = yup.InferType;","import * as yup from 'yup';\nimport { BlockTypeValues } from '../enums';\nimport { LayoutSchemaFields } from './dashboard';\nvar BlockInfoSchemaFields = {\n blockId: yup.string().required(),\n groupId: yup.string().required()\n};\nvar TabOptionsSchemaFields = {\n title: yup.string(),\n active: yup.boolean().notRequired()\n};\nvar BlockSchemaFields = Object.assign({}, BlockInfoSchemaFields, {\n type: yup.mixed().oneOf(BlockTypeValues).required(),\n title: yup.string().notRequired(),\n subscriptions: yup.object({\n quotes: yup.array()\n }).notRequired(),\n tabs: yup.array().notRequired()\n});\nvar BlockLayoutsSchemaFields = {\n lg: yup.object(LayoutSchemaFields).notRequired(),\n md: yup.object(LayoutSchemaFields).notRequired(),\n sm: yup.object(LayoutSchemaFields).notRequired(),\n xs: yup.object(LayoutSchemaFields).notRequired(),\n xxs: yup.object(LayoutSchemaFields).notRequired()\n};\nvar BlockConfigurationSchemaFields = Object.assign({}, BlockSchemaFields, {\n layouts: yup.object(BlockLayoutsSchemaFields).notRequired(),\n data: yup.mixed().notRequired(),\n options: yup.object({\n autoFocus: yup.boolean().notRequired()\n }).notRequired()\n});\nvar BlockGroupSchemaFields = {\n groupId: yup.string(),\n symbol: yup.mixed().notRequired()\n};\nexport var BlockInfoSchema = yup.object(BlockInfoSchemaFields);\nexport var TabOptionsSchema = yup.object(TabOptionsSchemaFields);\nexport var BlockSchema = yup.object(BlockSchemaFields);\nexport var BlockLayoutsSchema = yup.object(BlockLayoutsSchemaFields);\nexport var BlockConfigurationSchema = yup.object(BlockConfigurationSchemaFields);\nexport var BlockGroupSchema = yup.object(BlockGroupSchemaFields); // export type BlockInfo = yup.InferType;\n// export type TabOptions = yup.InferType;\n// export type Block = yup.InferType;\n// export type BlockLayouts = yup.InferType;\n// export type BlockConfiguration = yup.InferType;\n// export type BlockGroup = yup.InferType;","import * as yup from 'yup';\nvar AssetSymbolSchemaFields = {\n name: yup.string(),\n symbol: yup.string(),\n provider: yup.string()\n}; // const Schemas = {\n// OrderAction: yup.number().oneOf([OrderAction.Buy, OrderAction.Sell]),\n// PositionEffect: yup.number().oneOf([PositionEffect.Open, PositionEffect.Close]),\n// };\n\nexport var AssetSymbolSchema = yup.object(AssetSymbolSchemaFields); // export type AssetSymbol = yup.InferType;","import * as yup from 'yup';\nimport { BlockConfigurationSchema } from '.';\nimport { BlockGroupSchema } from './block';\nimport { DashboardInfoSchema, UiSettingsSchema } from './dashboard';\nexport var DashboardDbValueSchema = yup.array().of(DashboardInfoSchema);\nexport var BlockGridDbValueSchema = yup.object({\n blocks: yup.array().of(BlockConfigurationSchema),\n groups: yup.array().of(BlockGroupSchema)\n});\nexport var UiSettingsDbValueSchema = UiSettingsSchema;","export var StateSync;\n\n(function (StateSync) {\n StateSync[\"SIGNOUT\"] = \"syncSignout\";\n StateSync[\"EXPIRATION\"] = \"syncExpiration\";\n})(StateSync || (StateSync = {}));","import { OrderActionDirection } from '.'; // export enum TradingStrategyRisk {\n// Price,\n// ValueOfStrike,\n// DifferencesBetweenStrikes,\n// ValueOfBiggestStrike,\n// ValueOfSmallestStrike,\n// Infinite,\n// }\n\nexport var ExpirationRules;\n\n(function (ExpirationRules) {\n ExpirationRules[ExpirationRules[\"SameExpiry\"] = 1] = \"SameExpiry\";\n ExpirationRules[ExpirationRules[\"DifferentExpiries\"] = 2] = \"DifferentExpiries\";\n ExpirationRules[ExpirationRules[\"BuyWithLaterSellWithSooner\"] = 3] = \"BuyWithLaterSellWithSooner\";\n})(ExpirationRules || (ExpirationRules = {}));\n\nexport var DirectionRules;\n\n(function (DirectionRules) {\n DirectionRules[DirectionRules[\"DifferentDirections\"] = 0] = \"DifferentDirections\";\n DirectionRules[DirectionRules[\"SameDirections\"] = 1] = \"SameDirections\";\n DirectionRules[DirectionRules[\"Butterfly\"] = 2] = \"Butterfly\";\n DirectionRules[DirectionRules[\"Condor\"] = 3] = \"Condor\";\n DirectionRules[DirectionRules[\"Iron\"] = 4] = \"Iron\";\n})(DirectionRules || (DirectionRules = {}));\n\nexport var StrikeRules;\n\n(function (StrikeRules) {\n StrikeRules[StrikeRules[\"DifferentStrikes\"] = 1] = \"DifferentStrikes\";\n StrikeRules[StrikeRules[\"DifferentStrikesDescending\"] = 2] = \"DifferentStrikesDescending\";\n StrikeRules[StrikeRules[\"EquidistantStrikes\"] = 3] = \"EquidistantStrikes\";\n StrikeRules[StrikeRules[\"SameStrikes\"] = 4] = \"SameStrikes\";\n StrikeRules[StrikeRules[\"CallHigherThanPut\"] = 5] = \"CallHigherThanPut\";\n StrikeRules[StrikeRules[\"IncreasingOrder\"] = 6] = \"IncreasingOrder\";\n StrikeRules[StrikeRules[\"DecreasingOrder\"] = 7] = \"DecreasingOrder\";\n StrikeRules[StrikeRules[\"CallFirstPutsSecond\"] = 8] = \"CallFirstPutsSecond\";\n StrikeRules[StrikeRules[\"LowestCallEqualsHighestPut\"] = 9] = \"LowestCallEqualsHighestPut\";\n StrikeRules[StrikeRules[\"LowestCallGreaterThanHighestPut\"] = 10] = \"LowestCallGreaterThanHighestPut\";\n StrikeRules[StrikeRules[\"EquidistantStrikesByTwos\"] = 11] = \"EquidistantStrikesByTwos\";\n StrikeRules[StrikeRules[\"IronCondor\"] = 12] = \"IronCondor\";\n StrikeRules[StrikeRules[\"IronButterfly\"] = 13] = \"IronButterfly\";\n StrikeRules[StrikeRules[\"Any\"] = 14] = \"Any\";\n})(StrikeRules || (StrikeRules = {}));","export var QuoteFeedType = 10;\nexport var SpreadFeedType = 11;\nexport var OrderUpdateFeedType = 13;\nexport var BarUpdateFeedType = 14;\nexport var SpreadType;\n\n(function (SpreadType) {\n SpreadType[SpreadType[\"Custom\"] = 0] = \"Custom\";\n SpreadType[SpreadType[\"Vertical\"] = 2] = \"Vertical\";\n SpreadType[SpreadType[\"Calendar\"] = 3] = \"Calendar\";\n SpreadType[SpreadType[\"Butterfly\"] = 4] = \"Butterfly\";\n SpreadType[SpreadType[\"Condor\"] = 5] = \"Condor\";\n SpreadType[SpreadType[\"CoveredCall\"] = 6] = \"CoveredCall\";\n SpreadType[SpreadType[\"IronCondor\"] = 7] = \"IronCondor\";\n SpreadType[SpreadType[\"IronButterfly\"] = 8] = \"IronButterfly\";\n SpreadType[SpreadType[\"Straddle\"] = 9] = \"Straddle\";\n SpreadType[SpreadType[\"Strangle\"] = 10] = \"Strangle\";\n SpreadType[SpreadType[\"MarriedPut\"] = 11] = \"MarriedPut\";\n SpreadType[SpreadType[\"CoveredPut\"] = 12] = \"CoveredPut\";\n SpreadType[SpreadType[\"MarriedCall\"] = 13] = \"MarriedCall\"; // Collar = 14,\n\n SpreadType[SpreadType[\"Conversion\"] = 15] = \"Conversion\";\n})(SpreadType || (SpreadType = {})); // export interface Spread\n// {\n// Leg[] Legs { get; set; }\n// public double Bid { get; set; }\n// public double Ask { get; set; }\n// public double Last { get; set; }\n// public double Change { get; set; }\n// public SpreadType Type { get; set; }\n// public DateTime SpreadTime { get; set; }\n// }","export var UIClientTypes = {\n application: 'application',\n dashboard: 'dashboard',\n mobile: 'mobile'\n};","import _defineProperty from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/defineProperty\";\nimport { renderToStaticMarkup } from 'react-dom/server';\nimport _ from 'lodash';\nimport { LanguageType, DefaultLanguageKeys } from '../Language';\nimport englishErrors from './en/errors.json';\nimport englishFields from './en/fields.json';\nimport englishPages from './en/pages.json';\nvar protectedTranslationKeys = ['description'];\n\nvar getTranslationsData = function getTranslationsData(pagesTranslations, fieldsTranslations, errorsTranslations) {\n return {\n errors: formatTranslationsData(errorsTranslations, DefaultLanguageKeys.Error),\n fields: formatTranslationsData(fieldsTranslations, DefaultLanguageKeys.Label),\n pages: formatTranslationsData(pagesTranslations, DefaultLanguageKeys.Text)\n };\n};\n\nvar formatTranslationsData = function formatTranslationsData(data, expandedKey) {\n return _.reduce(data, function (acc, val, key) {\n if (key === expandedKey || _.includes(protectedTranslationKeys, key)) {\n acc[key] = val;\n } else if (_.isString(val)) {\n acc[key] = _defineProperty({}, expandedKey, val);\n } else {\n // recurse\n acc[key] = formatTranslationsData(val, expandedKey);\n }\n\n return acc;\n }, {});\n};\n\nvar en = getTranslationsData(englishPages, englishFields, englishErrors);\nexport var AllLanguageTypes = [LanguageType.English, LanguageType.Spanish, LanguageType.Chinese];\nexport var allTranslations = {\n en: en,\n es: en,\n zh: en\n};\nexport var getLocalizeOptions = function getLocalizeOptions(languageTypes) {\n var languageNamesByKey = _.reduce(_.mapValues(LanguageType, function (l) {\n return l;\n }), function (acc, l, n) {\n acc[l] = n;\n return acc;\n }, {});\n\n return {\n languages: _.map(languageTypes, function (code) {\n return {\n code: code,\n name: languageNamesByKey[code]\n };\n }),\n options: {\n renderInnerHtml: true,\n renderToStaticMarkup: renderToStaticMarkup\n }\n };\n};","var TradingBlockLegacyUrlEnum;\n\n(function (TradingBlockLegacyUrlEnum) {\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"AchRelationshipPdfApplicationUrl\"] = 0] = \"AchRelationshipPdfApplicationUrl\";\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"TB_CRS\"] = 1] = \"TB_CRS\";\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"MB_CRS\"] = 2] = \"MB_CRS\"; // CustomerServiceUrl,\n\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"ETFDisclosureUrl\"] = 3] = \"ETFDisclosureUrl\";\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"LegacySiteHomeUrl\"] = 4] = \"LegacySiteHomeUrl\";\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"LegacySiteLoginUrl\"] = 5] = \"LegacySiteLoginUrl\";\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"LegacySitePwdResetUrl\"] = 6] = \"LegacySitePwdResetUrl\";\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"RiskDisclosuresUrl\"] = 7] = \"RiskDisclosuresUrl\";\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"RisksOfOptionsUrl\"] = 8] = \"RisksOfOptionsUrl\";\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"RisksOfDayTradingUrl\"] = 9] = \"RisksOfDayTradingUrl\";\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"ServicesAgreementUrl\"] = 10] = \"ServicesAgreementUrl\";\n})(TradingBlockLegacyUrlEnum || (TradingBlockLegacyUrlEnum = {}));\n\nvar TradingBlockUrlEnum;\n\n(function (TradingBlockUrlEnum) {\n TradingBlockUrlEnum[TradingBlockUrlEnum[\"HomeUrl\"] = 0] = \"HomeUrl\";\n TradingBlockUrlEnum[TradingBlockUrlEnum[\"VideoTourUrl\"] = 1] = \"VideoTourUrl\";\n TradingBlockUrlEnum[TradingBlockUrlEnum[\"CustomerServiceUrl\"] = 2] = \"CustomerServiceUrl\";\n TradingBlockUrlEnum[TradingBlockUrlEnum[\"OpenNewAccountUrl\"] = 3] = \"OpenNewAccountUrl\";\n TradingBlockUrlEnum[TradingBlockUrlEnum[\"TBFeesUrl\"] = 4] = \"TBFeesUrl\";\n TradingBlockUrlEnum[TradingBlockUrlEnum[\"MBFeesUrl\"] = 5] = \"MBFeesUrl\";\n})(TradingBlockUrlEnum || (TradingBlockUrlEnum = {})); // these urls are currently hosted on the legacy site\n\n\nexport var TradingBlockLegacyUrlsLookup = {\n AchRelationshipPdfApplicationUrl: '/admin/forms/apex/cashiering/ACH_Application.pdf',\n TB_CRS: '/Docs/Agreements/tb/AOS_TradingBlock_Form_CRS.pdf',\n MB_CRS: '/Docs/Agreements/mb/AOS_MoneyBlock_Form_CRS.pdf',\n ETFDisclosureUrl: '/Docs/Agreements/Leveraged_Inverse_Commodity_ETF_Disclosure.pdf',\n LegacySiteHomeUrl: '/default.aspx',\n LegacySiteLoginUrl: '/account/securitieslogin.aspx',\n LegacySitePwdResetUrl: '/account/passwordresetlogin.aspx',\n RiskDisclosuresUrl: '/account/riskanddisclosures.aspx',\n RisksOfOptionsUrl: '/docs/agreements/riskstoc.pdf',\n RisksOfDayTradingUrl: '/account/disclosureview.aspx',\n ServicesAgreementUrl: '/docs/agreements/Online_Services_Agreement_v1.4_20140713.pdf'\n};\nexport var TradingBlockUrlsLookup = Object.assign({}, TradingBlockLegacyUrlsLookup, {\n HomeUrl: '/',\n VideoTourUrl: '/videos',\n CustomerServiceUrl: '/contact',\n OpenNewAccountUrl: '',\n TBFeesUrl: '/pricing-policies',\n MBFeesUrl: '/policies'\n});","export var UserProfileLevel;\n\n(function (UserProfileLevel) {\n UserProfileLevel[\"Undefined\"] = \"Undefined\";\n UserProfileLevel[\"Admin\"] = \"Admin\";\n UserProfileLevel[\"Firm\"] = \"Firm\";\n UserProfileLevel[\"Region\"] = \"Region\";\n UserProfileLevel[\"Branch\"] = \"Branch\";\n UserProfileLevel[\"Rep\"] = \"Rep\";\n UserProfileLevel[\"Account\"] = \"Account\";\n})(UserProfileLevel || (UserProfileLevel = {}));\n\nexport var UserRole;\n\n(function (UserRole) {\n UserRole[\"CashieringApproval\"] = \"CashieringApproval\";\n UserRole[\"AccountManagementApproval\"] = \"AccountManagementApproval\";\n UserRole[\"AccountApprovalFIB\"] = \"AccountApprovalFIB\";\n UserRole[\"AccountApprovalGSP\"] = \"AccountApprovalGSP\";\n UserRole[\"AccountApprovalREP\"] = \"AccountApprovalREP\";\n UserRole[\"AccountApprovalROP\"] = \"AccountApprovalROP\";\n UserRole[\"ManageCommissionCodes\"] = \"ManageCommissionCodes\";\n UserRole[\"BypassMarginCheck\"] = \"BypassMarginCheck\";\n})(UserRole || (UserRole = {}));\n\nexport var SecurityQuestionType;\n\n(function (SecurityQuestionType) {\n SecurityQuestionType[\"BirthCity\"] = \"birth-city\";\n SecurityQuestionType[\"ChildhoodFutureJobWish\"] = \"childhood-future-job-wish\";\n SecurityQuestionType[\"ChildhoodPetName\"] = \"childhood-pet-name\";\n SecurityQuestionType[\"DriversLicenseLast4\"] = \"drivers-license-last-4\";\n SecurityQuestionType[\"FathersMiddleName\"] = \"fathers-middle-name\";\n SecurityQuestionType[\"FavoriteBook\"] = \"favorite-book\";\n SecurityQuestionType[\"FavoriteSportsTeam\"] = \"favorite-sports-team\";\n SecurityQuestionType[\"MothersMaidenName\"] = \"mothers-maiden-name\";\n SecurityQuestionType[\"PaternalGrandmothersFirstName\"] = \"paternal-grandmothers-first-name\";\n})(SecurityQuestionType || (SecurityQuestionType = {}));\n\nexport var MarketDataEntitlementTypeId;\n\n(function (MarketDataEntitlementTypeId) {\n MarketDataEntitlementTypeId[MarketDataEntitlementTypeId[\"ProfessionalUser\"] = 1] = \"ProfessionalUser\";\n MarketDataEntitlementTypeId[MarketDataEntitlementTypeId[\"NonProfessionalUser\"] = 2] = \"NonProfessionalUser\";\n MarketDataEntitlementTypeId[MarketDataEntitlementTypeId[\"DelayedQuotesOnlyUser\"] = 3] = \"DelayedQuotesOnlyUser\";\n})(MarketDataEntitlementTypeId || (MarketDataEntitlementTypeId = {}));","import _ from 'lodash';\nimport { AllCountries } from './Country';\nimport { AcceptedCountries } from './constants';\nexport function strEnum(o) {\n return o.reduce(function (res, key) {\n res[key] = key;\n return res;\n }, Object.create(null));\n}\nexport var isCustomStrategy = function isCustomStrategy(value) {\n return typeof value === 'string' ? value === 'Custom' : value.info.Name === 'Custom';\n};\nexport var isKnownStrategyType = function isKnownStrategyType(value) {\n return isCustomStrategy(value) === false;\n};\nexport var isKnownStrategy = function isKnownStrategy(value) {\n return isCustomStrategy(value) === false;\n};\nexport function isStrategy(strategy, stratName) {\n if (_.isNil(stratName)) {\n return false;\n }\n\n if (typeof stratName === 'string') {\n return _.includes(strategy.map(function (s) {\n return _.toLower(s.info.Name);\n }), _.toLower(stratName));\n }\n\n return false;\n}\nexport var getGroupedCountryOptions = function getGroupedCountryOptions() {\n return _.concat(_.sortBy(_.filter(AllCountries, function (c) {\n return _.includes(AcceptedCountries, c);\n }), function (c) {\n return _.indexOf(AcceptedCountries, c);\n }), [null], // separator\n _.filter(AllCountries, function (c) {\n return !_.includes(AcceptedCountries, c);\n }));\n};\nexport function isResponseCodeDescription(value) {\n if (_.isNil(value)) {\n return false;\n }\n\n var name = _.get(value, 'name', undefined);\n\n var description = _.get(value, 'description', undefined);\n\n var descriptionisValid = typeof description === 'string' || typeof description === 'function';\n return typeof name === 'string' && descriptionisValid;\n}","export * from './Account';\nexport * from './Application';\nexport * from './Blocks';\nexport * from './BlockSettings';\nexport * from './Cashiering';\nexport * from './constants';\nexport * from './Country';\nexport * from './DataFeed';\nexport * from './Duration';\nexport * from './Entitlements';\nexport * from './Environment';\nexport * from './enums';\nexport * from './Exceptions';\nexport * from './Expirations';\nexport * from './Information';\nexport * from './Language';\nexport * from './Layout';\nexport * from './Order';\nexport * from './OrderStatus';\nexport * from './Quote';\nexport * from './ResponseCode';\nexport * from './schema/index';\nexport * from './Session';\nexport * from './State';\nexport * from './StateSync';\nexport * from './Strategy';\nexport * from './Streaming'; // export * from './transformations';\n\nexport * from './Token';\nexport * from './translations';\nexport * from './Urls';\nexport * from './User';\nexport * from './util';\nexport * from './AccountManagement';","import React, { useMemo, FC } from 'react';\nimport { AssetSymbol, BlockType } from '@tradingblock/types';\nimport {\n HttpAutocomplete,\n OptionType,\n Pill,\n} from '@tradingblock/components';\nimport { SymbolToOption, useSymbolSearch } from '../../hooks/useSymbolSearch';\nimport { useQuote } from '../../hooks/useFeedQuote';\nimport { useDashboardSettings, useDashboardSettingsUpdater } from '../../hooks/useDashboardSettings';\n\ninterface DashboardSymbolPickerProps {\n blockType?: BlockType;\n symbol?: AssetSymbol | undefined;\n onSelect?: (value: OptionType) => void;\n onClear?: () => void;\n placeholder?: string;\n clearOptionsOnSelect?: boolean;\n focus?: boolean;\n disableFavorite?: boolean;\n hidePrice?: boolean;\n hideTime?: boolean;\n hidePercent?: boolean;\n onSearch?: (value: string, limit?: number | undefined) => void;\n onBlur?: () => void;\n onChange?: () => void;\n}\n\nexport const DashboardSymbolPicker: FC = ({\n symbol,\n placeholder = 'Search symbol..',\n clearOptionsOnSelect = true,\n focus\n}) => {\n const search = useSymbolSearch();\n const symbolValue = symbol ? symbol.symbol : '';\n const settingsUpdater = useDashboardSettingsUpdater();\n const settings = useDashboardSettings();\n const symbolQuote = useQuote(symbolValue);\n const autoCompleteValue = useMemo(() => {\n return symbol ? SymbolToOption(symbol, true) : undefined;\n }, [symbol]);\n const rest = useMemo(() => {\n return { autoFocus: focus };\n }, [focus]);\n\n const pillStyle = {\n 'backgroundColor': 'var(--dark-blue)'\n }\n\n const buttonStyle = {\n 'marginLeft': '0.2rem',\n 'marginRight': '0rem',\n 'marginTop': '0.3rem',\n 'borderColor': 'var(--blue)',\n 'borderWidth': '1px',\n 'borderRadius': '5px',\n 'borderStyle': 'solid',\n 'padding': 'revert',\n }\n\n const symbolButtonStyle = {\n 'display': 'flex'\n }\n\n const onSelect = (val: any) => {\n if (val && val.data && val.data.symbol && val.data.type) {\n settingsUpdater.updateSettings({\n ...settings,\n bannerSymbols: Array.from(new Set([...settings.bannerSymbols, val.data.symbol]))\n })\n }\n }\n\n const onBlur = () => { }\n const onClear = () => { }\n const onSearch = (value: string, limit: number | undefined) => {\n\n }\n const clearSymbolFromList: Function = (symbol_: any): void => {\n if (settings && settings.bannerSymbols && symbol_) {\n const newList = settings.bannerSymbols.filter((symbol: string) => symbol_ !== symbol);\n settingsUpdater.updateSettings({\n ...settings,\n bannerSymbols: newList\n })\n } else return\n }\n return (\n <>\n {settings.bannerSymbols && settings.bannerSymbols.length < 4 ?
\n \n
\n {\n if (onSearch !== undefined) onSearch(value, limit);\n return search(value, limit)\n }}\n onBlur={onBlur}\n value={autoCompleteValue}\n onSelect={onSelect}\n clearOptionsOnSelect={clearOptionsOnSelect}\n placeholder={placeholder ? placeholder : ''}\n debounceTimeout={500}\n symbol={symbolValue}\n charLimit={20}\n rootPortalId='dashboardSymbolPicker'\n />\n
\n {symbol && symbolQuote && (\n
\n
{symbol.symbol}
\n
{symbol.name}
\n
\n )}\n
\n
:
Remove a symbol to search. (Max 4)
}\n
{settings && settings.bannerSymbols && settings.bannerSymbols.length ? 'Remove symbols:' : ''}
\n \n {settings && settings.bannerSymbols ?\n settings.bannerSymbols.map((symbol: string, index: number) =>\n ()) : <>}\n \n \n );\n};\n","import React, { useCallback } from 'react';\nimport { Field, FieldProps, FormikErrors, useFormikContext } from 'formik';\nimport _ from 'lodash';\nimport {\n TextboxInput,\n SelectDropdownInput,\n CheckboxInput,\n BaseInputProps,\n InputOption,\n} from '@tradingblock/components';\nimport { DashboardSymbolPicker } from '../dashboard/DashboardSymbolPicker';\nimport { OrderDefaults, UiSettings } from '@tradingblock/types';\n\nexport interface BasicSettingsField extends Partial {\n type?: 'boolean' | 'toggle' | 'string' | 'number' | 'symbolPicker';\n toggleOpposite?: boolean;\n options?: string[] | InputOption[];\n}\nexport type SettingsField = BasicSettingsField | RadioSettingsField | ChoiceSettingsField;\nexport type BlockSettingsField = SettingsFields;\nexport interface ChoiceSettingsField extends Partial {\n type: 'choice';\n values: { value: T; label?: string }[];\n}\ntype stringFunc = (value: boolean) => string;\nexport interface RadioSettingsField extends Partial {\n type: 'radio';\n fieldLabel: string;\n yesOptionLabel: string;\n noOptionLabel: string;\n fieldNote?: string | stringFunc;\n}\nexport type SettingsFields = {\n [K in keyof T]?: F;\n};\n\ninterface GenericFieldProps {\n name: string;\n settings: SettingsField;\n value: any;\n parentFieldName?: string;\n usePortalForSelect?: boolean;\n}\n\nexport const GenericField: React.FC = ({ name, value, settings, usePortalForSelect }) => {\n const { setFieldValue, errors } = useFormikContext();\n // As we add more validation on forms using this component we will need to update the type below.\n const formikErrors = errors as FormikErrors<{ block: OrderDefaults, global: OrderDefaults, } & UiSettings>;\n const { type, ...fieldprops } = settings;\n const toggleOpposite = _.get(settings, 'toggleOpposite', false);\n\n const options: string[] | InputOption[] | undefined = _.get(settings, 'options', undefined);\n const onChange = useCallback((e: React.ChangeEvent | undefined, value?: any) => {\n const nextValue = toggleOpposite ? !value : value;\n setFieldValue(name, nextValue);\n }, []);\n\n let label: any;\n\n if (\n (settings.defaultLabelId && settings.name === 'block.etfCoverage') ||\n settings.name === 'global.etfCoverage' ||\n settings.name === 'block.ipos' ||\n settings.name === 'global.ipos' ||\n settings.name === 'block.corporateActionsDividends' ||\n settings.name === 'global.corporateActionsDividends'\n ) {\n label = settings.defaultLabelId;\n } else {\n label = settings.label;\n }\n\n const blockDefaultQuantityForOptionsAndStrategiesId = 'block.defaultQuantityForOptionsAndStrategies';\n const blockDefaultQuantityForSharesId = 'block.defaultQuantityForShares';\n const globalDefaultQuantityForOptionsAndStrategiesId = 'global.defaultQuantityForOptionsAndStrategies';\n const globalDefaultQuantityForSharesId = 'global.defaultQuantityForShares';\n const cashieringPollingIntervalId = 'cashieringPollingInterval';\n const cashieringPendingReminderIntervalId = 'cashieringPendingReminderInterval';\n const cashieringPendingReminderMaxAttemptsId = 'cashieringPendingReminderMaxAttempts';\n const feedSyncIntervalMsId = 'feedSyncIntervalMs';\n const gridColumnsLargeId = 'gridColumnsLarge';\n const gridColumnsMediumId = 'gridColumnsMedium';\n const gridColumnsSmallId = 'gridColumnsSmall';\n const widthId = 'width';\n \n const getFieldIdWithError = (): string => {\n if (\n settings.name === blockDefaultQuantityForOptionsAndStrategiesId &&\n formikErrors &&\n formikErrors.block &&\n formikErrors.block.defaultQuantityForOptionsAndStrategies\n ) {\n return blockDefaultQuantityForOptionsAndStrategiesId;\n }\n\n if (\n settings.name === blockDefaultQuantityForSharesId &&\n formikErrors &&\n formikErrors.block &&\n formikErrors.block.defaultQuantityForShares\n ) {\n return blockDefaultQuantityForSharesId;\n }\n\n if (\n settings.name === globalDefaultQuantityForOptionsAndStrategiesId &&\n formikErrors &&\n formikErrors.global &&\n formikErrors.global.defaultQuantityForOptionsAndStrategies\n ) {\n return globalDefaultQuantityForOptionsAndStrategiesId;\n }\n\n if (\n settings.name === globalDefaultQuantityForSharesId &&\n formikErrors &&\n formikErrors.global &&\n formikErrors.global.defaultQuantityForShares\n ) {\n return globalDefaultQuantityForSharesId;\n }\n\n if (\n settings.name === cashieringPollingIntervalId &&\n formikErrors &&\n formikErrors.cashieringPollingInterval\n ) {\n return cashieringPollingIntervalId;\n }\n\n if (\n settings.name === cashieringPendingReminderIntervalId &&\n formikErrors &&\n formikErrors.cashieringPendingReminderInterval\n ) {\n return cashieringPendingReminderIntervalId;\n }\n\n if (\n settings.name === cashieringPendingReminderMaxAttemptsId &&\n formikErrors &&\n formikErrors.cashieringPendingReminderMaxAttempts\n ) {\n return cashieringPendingReminderMaxAttemptsId;\n }\n\n if (\n settings.name === feedSyncIntervalMsId &&\n formikErrors &&\n formikErrors.feedSyncIntervalMs\n ) {\n return feedSyncIntervalMsId;\n }\n\n if (\n settings.name === gridColumnsLargeId &&\n formikErrors &&\n formikErrors.gridColumnsLarge\n ) {\n return gridColumnsLargeId;\n }\n\n if (\n settings.name === gridColumnsMediumId &&\n formikErrors &&\n formikErrors.gridColumnsMedium\n ) {\n return gridColumnsMediumId;\n }\n\n if (\n settings.name === gridColumnsSmallId &&\n formikErrors &&\n formikErrors.gridColumnsSmall\n ) {\n return gridColumnsSmallId;\n }\n\n if (\n settings.name === widthId &&\n formikErrors &&\n formikErrors.width\n ) {\n return widthId;\n }\n\n return ''\n }\n\n const fieldIdWithError = getFieldIdWithError();\n\n return (\n \n {({ form }: FieldProps) => {\n let props = {\n ...fieldprops,\n label: label || _.startCase(name),\n onchange: onChange,\n };\n\n return (\n <>\n {options && (\n _.isObject(o)) ? options : _.map(options, o => ({ value: o }))}\n menuPortalTargetId={usePortalForSelect ? 'portal-root' : undefined}\n value={value}\n {...props}\n />\n )}\n {settings.type === 'boolean' && }\n {settings.type === 'toggle' && }\n {settings.type === 'string' && !settings.options && }\n {settings.type === 'number' && !settings.options && (\n <>\n \n {\n settings.name === blockDefaultQuantityForOptionsAndStrategiesId &&\n formikErrors &&\n formikErrors.block &&\n formikErrors.block.defaultQuantityForOptionsAndStrategies &&\n \n {formikErrors.block.defaultQuantityForOptionsAndStrategies}\n \n }\n {\n settings.name === globalDefaultQuantityForOptionsAndStrategiesId &&\n formikErrors &&\n formikErrors.global &&\n formikErrors.global.defaultQuantityForOptionsAndStrategies &&\n \n {formikErrors.global.defaultQuantityForOptionsAndStrategies}\n \n }\n {\n settings.name === blockDefaultQuantityForSharesId &&\n formikErrors &&\n formikErrors.block &&\n formikErrors.block.defaultQuantityForShares &&\n \n {formikErrors.block.defaultQuantityForShares}\n \n }\n {\n settings.name === globalDefaultQuantityForSharesId &&\n formikErrors &&\n formikErrors.global &&\n formikErrors.global.defaultQuantityForShares &&\n \n {formikErrors.global.defaultQuantityForShares}\n \n }\n {\n settings.name === cashieringPollingIntervalId &&\n formikErrors &&\n formikErrors.cashieringPollingInterval &&\n
\n {formikErrors.cashieringPollingInterval}\n
\n }\n {\n settings.name === cashieringPendingReminderIntervalId &&\n formikErrors &&\n formikErrors.cashieringPendingReminderInterval &&\n
\n {formikErrors.cashieringPendingReminderInterval}\n
\n }\n {\n settings.name === cashieringPendingReminderMaxAttemptsId &&\n formikErrors &&\n formikErrors.cashieringPendingReminderMaxAttempts &&\n
\n {formikErrors.cashieringPendingReminderMaxAttempts}\n
\n }\n {\n settings.name === feedSyncIntervalMsId &&\n formikErrors &&\n formikErrors.feedSyncIntervalMs &&\n \n {formikErrors.feedSyncIntervalMs}\n \n }\n {\n settings.name === gridColumnsLargeId &&\n formikErrors &&\n formikErrors.gridColumnsLarge &&\n
\n {formikErrors.gridColumnsLarge}\n
\n }\n {\n settings.name === gridColumnsMediumId &&\n formikErrors &&\n formikErrors.gridColumnsMedium &&\n
\n {formikErrors.gridColumnsMedium}\n
\n }\n {\n settings.name === gridColumnsSmallId &&\n formikErrors &&\n formikErrors.gridColumnsSmall &&\n
\n {formikErrors.gridColumnsSmall}\n
\n }\n {\n settings.name === widthId &&\n formikErrors &&\n formikErrors.width &&\n
\n {formikErrors.width}\n
\n }\n \n )}\n {settings.type === 'symbolPicker' && }\n \n );\n }}\n
\n );\n};\n","import { createStandardAction, ActionType } from 'typesafe-actions';\nimport { CashieringSearchResponse, ApiResponse, CashieringSearchRequest } from '@tradingblock/types';\nimport { buildGenericRequestReceiveActions } from '../actionUtilities';\n\nconst CASHIERING_SEARCH_PENDING_REQUEST = '@cashiering/search/pending/REQUEST';\nconst CASHIERING_SEARCH_PENDING_RECEIVE = '@cashiering/search/pending/RECEIVE';\nconst CASHIERING_SEARCH_PENDING_ERROR = '@cashiering/search/pending/ERROR';\n\nconst CASHIERING_PENDING_POLL_START = '@cashiering/pending/poll/START';\nconst CASHIERING_PENDING_POLL_STOP = '@cashiering/pending/poll/STOP';\n\nconst [\n cashieringPendingSearchRequest,\n cashieringPendingSearchReceive,\n cashieringPendingSearchError,\n] = buildGenericRequestReceiveActions({\n REQUEST: CASHIERING_SEARCH_PENDING_REQUEST,\n RECEIVE: CASHIERING_SEARCH_PENDING_RECEIVE,\n ERROR: CASHIERING_SEARCH_PENDING_ERROR,\n}); request: CashieringSearchRequest }>();\n\nexport const CashieringEventActions = {\n cashieringPendingSearchRequest,\n cashieringPendingSearchReceive,\n cashieringPendingSearchError,\n beginPollingForPending: createStandardAction(CASHIERING_PENDING_POLL_START)<{ timeoutMS: number }>(),\n stopPollingForPending: createStandardAction(CASHIERING_PENDING_POLL_STOP)(),\n};\n\nexport type CashieringEventAction = ActionType;\n","import { ActionType } from 'typesafe-actions';\nimport { AdminAccountActions } from './AdminAccountActions';\nimport { AdminCashieringActions } from './AdminCashieringActions';\nimport { AdminClientActions } from './AdminClientActions';\nimport { AdminAccountManagementActions } from './AccountManagementActions';\nimport { AdminEntitlementsActions } from './EntitlementsActions';\nimport { AdminAlertActions } from './AdminAlertActions';\nimport { AdminApplicationActions } from './AdminApplicationActions';\n\nexport interface AdminIdRequest {\n id: number | string;\n}\n\nexport const AdminActions = {\n ...AdminAccountActions,\n ...AdminAlertActions,\n ...AdminCashieringActions,\n ...AdminClientActions,\n ...AdminAccountManagementActions,\n ...AdminEntitlementsActions,\n ...AdminApplicationActions,\n};\n\nexport type AdminAction = ActionType;\n","import { ActionType, createStandardAction } from 'typesafe-actions';\r\nimport {\r\n ActionMetaOrUndefined,\r\n LoginJwtValue,\r\n ActionMetadata,\r\n FeedQuote,\r\n UiSettings,\r\n AllNotificationType,\r\n Notification,\r\n IFeedSpread,\r\n DashboardInfo,\r\n Layouts,\r\n BlockConfiguration,\r\n HistoryItem,\r\n ResponseCode,\r\n BlockType,\r\n BlockInfo,\r\n Order,\r\n Balances,\r\n Transfer,\r\n SizeType,\r\n Expiration,\r\n GroupOrderLeg,\r\n AssetSymbol,\r\n ExpiredTokenCode,\r\n DebounceMetadata,\r\n PnLItem,\r\n FeedEventData,\r\n AssetSymbolInfo,\r\n OptionPairWithSymbol,\r\n DashboardBlocksResponse,\r\n SubAccount,\r\n AccountDetails,\r\n GroupLinkColors,\r\n BalancesForWithdrawal,\r\n} from '@tradingblock/types';\r\nimport { SymbolQuote, SymbolDividendData, SymbolQuoteExtended, PositionDTO } from '@tradingblock/api';\r\nimport { buildActions, actionBuilder, buildApiActions } from './actionUtilities';\r\nimport { CashieringActions } from './actions/CashieringActions';\r\nimport { SettingsActions } from './actions/SettingsActions';\r\nimport { PageActions } from './actions/PageActions';\r\nimport { OrderActions } from './actions/OrderActions';\r\nimport { AdminActions } from './actions/admin';\r\nimport { AccountActions } from './actions/AccountActions';\r\nimport { QuoteDataActions as DataQuoteActions } from './actions/QuoteActions';\r\nimport { EnvironmentActions } from './actions/EnvironmentActions';\r\nimport { CashieringEventActions } from './actions/CashieringEventActions';\r\nimport { InfoDataActions } from './actions/InfoActions';\r\nimport { AccountManagementDataActions } from './actions/AccountManagementActions';\r\nimport { BalanceState } from './state';\r\nimport { LinkedAccountsActions } from './actions/LinkedAccountsActions';\r\nimport { AccountStatementsActions } from './actions/AccountStatementsActions';\r\nimport { HistoryActions } from './actions/History';\r\nexport * from './actions/OrderActions';\r\n\r\n// eslint-disable-next-line @typescript-eslint/camelcase\r\nexport const REQUEST_Token = 'REQUEST_Token';\r\n// eslint-disable-next-line @typescript-eslint/camelcase\r\nexport const RECEIVE_Token = 'RECEIVE_Token';\r\nexport const RECEIVE_AUTH_TOKEN = 'RECEIVE_AUTH_Token';\r\n\r\nconst [requestWarning, receiveWarning, errorWarning] = buildApiActions([\r\n '@data/symbols/warning/REQUEST',\r\n '@data/symbols/warning/RECEIVE',\r\n '@data/symbols/warning/ERROR',\r\n])<{}, string[]>();\r\n\r\nexport const SymbolActions = {\r\n requestWarning,\r\n receiveWarning,\r\n errorWarning,\r\n};\r\n\r\nexport const LifecycleActions = {\r\n loadInitialData: createStandardAction('@data/initial/REQUEST')(),\r\n};\r\n\r\nexport const REQUEST_ACCOUNT_BALANCES = '@account/REQUEST_ACCOUNT_BALANCES';\r\nexport const FETCH_ACCOUNT_BALANCES = '@account/FETCH_ACCOUNT_BALANCES';\r\nexport const RECEIVE_ACCOUNT_BALANCES = '@account/RECEIVE_ACCOUNT_BALANCES';\r\nexport const REQUEST_LINKED_ACCOUNT_BALANCES = '@account/REQUEST_LINKED_ACCOUNT_BALANCES';\r\nexport const FETCH_LINKED_ACCOUNT_BALANCES = '@account/FETCH_LINKED_ACCOUNT_BALANCES';\r\nexport const RECEIVE_LINKED_ACCOUNT_BALANCES = '@account/RECEIVE_LINKED_ACCOUNT_BALANCES';\r\nexport const REQUEST_SUB_ACCOUNT_BALANCES = '@account/REQUEST_SUB_ACCOUNT_BALANCES';\r\nexport const FETCH_SUB_ACCOUNT_BALANCES = '@account/FETCH_SUB_ACCOUNT_BALANCES';\r\nexport const RECEIVE_SUB_ACCOUNT_BALANCES = '@account/RECEIVE_SUB_ACCOUNT_BALANCES';\r\nexport const REQUEST_PENDING_TRNASFERS = '@account/REQUEST_PENDING_TRNASFERS';\r\nexport const FETCH_PENDING_TRNASFERS = '@account/FETCH_PENDING_TRNASFERS';\r\nexport const RECEIVE_PENDING_TRNASFERS = '@account/RECEIVE_PENDING_TRNASFERS';\r\nexport const REQUEST_ACCOUNT_HISTORY = '@account/REQUEST_HISTORY';\r\nexport const RECEIVE_ACCOUNT_HISTORY = '@account/RECEIVE_HISTORY';\r\nexport const REQUEST_ACCOUNT_PNL = '@account/REQUEST_PNL';\r\nexport const RECEIVE_ACCOUNT_PNL = '@account/RECEIVE_PNL';\r\nexport const REQUEST_ACCOUNT_ORDERS = '@account/REQUEST_ACCOUNT_ORDERS';\r\nexport const REQUEST_MORE_ACCOUNT_ORDERS = '@account/orders/REQUEST_MORE';\r\nexport const RECEIVE_ACCOUNT_ORDERS = '@account/RECEIVE_ACCOUNT_ORDERS';\r\nexport const REQUEST_ACCOUNT_SETTINGS = '@account/REQUEST_SETTINGS';\r\nexport const RECEIVE_ACCOUNT_SETTINGS = '@account/RECEIVE_SETTINGS';\r\nexport const SET_ACCOUNT_SETTINGS = '@account/SET_ACCOUNT_SETTINGS';\r\nexport const TOGGLE_SETTINGS = '@account/TOGGLE_SETTINGS';\r\nexport const SET_ORIGIN = '@account/SET_ORIGIN';\r\nexport const SET_CURRENT_ACCOUNT_DETAILS = '@account/SET_CURRENT_ACCOUNT_DETAILS';\r\nexport const REQUEST_BALANCES_FOR_WITHDRAWAL = '@account/REQUEST_BALANCES_FOR_WITHDRAWAL';\r\nexport const FETCH_BALANCES_FOR_WITHDRAWAL = '@account/FETCH_BALANCES_FOR_WITHDRAWAL';\r\nexport const RECEIVE_BALANCES_FOR_WITHDRAWAL = '@account/RECEIVE_BALANCES_FOR_WITHDRAWAL';\r\n\r\n// CLASSIC API\r\nexport const Actions = {\r\n ...AccountActions,\r\n signout: createStandardAction(`@account/signout`)(),\r\n receiveCurrentAccountDetails: createStandardAction(SET_CURRENT_ACCOUNT_DETAILS)(),\r\n requestToken: createStandardAction(REQUEST_Token)(),\r\n receiveToken: createStandardAction(RECEIVE_Token)(),\r\n refreshToken: createStandardAction('@account/token/refresh')(),\r\n\r\n requestSettings: createStandardAction(REQUEST_ACCOUNT_SETTINGS)<{ accountId: number }>(),\r\n receiveSettings: createStandardAction(RECEIVE_ACCOUNT_SETTINGS)<{ accountId: number; settings: UiSettings }>(),\r\n\r\n setClientVersion: createStandardAction('@application/version/SET')<{ version: string }>(),\r\n clientVersionMismatch: createStandardAction('@application/version/MISMATCH_ERROR')<{\r\n previous: string;\r\n current: string;\r\n }>(),\r\n\r\n setSettings: createStandardAction(SET_ACCOUNT_SETTINGS)<{ accountId: number; settings: UiSettings }>(),\r\n toggleSettings: createStandardAction(TOGGLE_SETTINGS)<{ show?: boolean }>(),\r\n\r\n setOrigin: createStandardAction(SET_ORIGIN)<{ origin: string }>(),\r\n\r\n requestInitialAccountBalances: createStandardAction(REQUEST_ACCOUNT_BALANCES)<{ throttle: boolean }>(),\r\n requestAccountBalances: createStandardAction(REQUEST_ACCOUNT_BALANCES)<{ throttle: boolean }>(),\r\n fetchBalances: createStandardAction(FETCH_ACCOUNT_BALANCES)<{}, ActionMetadata>(),\r\n receiveAccountBalances: createStandardAction(RECEIVE_ACCOUNT_BALANCES)<{\r\n data: Balances;\r\n responseCode: ResponseCode;\r\n }>(),\r\n requestBalancesForWithdrawal: createStandardAction(REQUEST_BALANCES_FOR_WITHDRAWAL)<{ throttle: boolean }>(),\r\n fetchBalancesForWithdrawal: createStandardAction(FETCH_BALANCES_FOR_WITHDRAWAL)<{}, ActionMetadata>(),\r\n receiveBalancesForWithdrawal: createStandardAction(RECEIVE_BALANCES_FOR_WITHDRAWAL)<{\r\n data: BalancesForWithdrawal;\r\n responseCode: ResponseCode;\r\n }>(),\r\n\r\n //Related to fetching linked account balances\r\n requestLinkedAccountBalances: createStandardAction(REQUEST_LINKED_ACCOUNT_BALANCES)<{\r\n accountIds?: number[];\r\n }>(),\r\n fetchLinkedAccountBalances: createStandardAction(FETCH_LINKED_ACCOUNT_BALANCES)<{\r\n accountIds?: number[];\r\n }>(),\r\n receiveLinkedAccountBalances: createStandardAction(RECEIVE_LINKED_ACCOUNT_BALANCES)<{\r\n accountId: number;\r\n balance: Balances;\r\n }>(),\r\n\r\n requestSubAccountBalances: createStandardAction(REQUEST_SUB_ACCOUNT_BALANCES)<{\r\n accountId: number;\r\n subAccounts: SubAccount[];\r\n }>(),\r\n fetchSubAccountBalances: createStandardAction(FETCH_SUB_ACCOUNT_BALANCES)<{\r\n accountId: number;\r\n subAccounts: SubAccount[];\r\n }>(),\r\n receiveSubAccountBalances: createStandardAction(RECEIVE_SUB_ACCOUNT_BALANCES)<{\r\n accountId: number;\r\n subAccountId: number;\r\n balance: Balances;\r\n }>(),\r\n\r\n requestPendingTransfers: createStandardAction(REQUEST_PENDING_TRNASFERS)<{ throttle: boolean }>(),\r\n fetchPendingTransfers: createStandardAction(FETCH_PENDING_TRNASFERS)<{}, ActionMetadata>(),\r\n receivePendingTransfers: createStandardAction(RECEIVE_PENDING_TRNASFERS)<{\r\n data: Transfer[];\r\n responseCode: ResponseCode;\r\n }>(),\r\n\r\n requestAccountHistory: createStandardAction(REQUEST_ACCOUNT_HISTORY)<{ accountId: number; subaccountId?: number }>(),\r\n receiveAccountHistory: createStandardAction(RECEIVE_ACCOUNT_HISTORY)<{ accountId: number; history: HistoryItem[] }>(),\r\n\r\n requestAccountPnL: createStandardAction(REQUEST_ACCOUNT_PNL)<{ accountId: number; subaccountId?: number }>(),\r\n receiveAccountPnL: createStandardAction(RECEIVE_ACCOUNT_PNL)<{ accountId: number; pnlHistory: PnLItem[] }>(),\r\n\r\n requestAccountOrders: createStandardAction(REQUEST_ACCOUNT_ORDERS)<\r\n {\r\n accountId: number;\r\n subaccountId?: number;\r\n dateFrom?: Date;\r\n dateTo?: Date;\r\n includeOrderEvents?: boolean;\r\n pageSize?: number;\r\n pageIndex?: number;\r\n blockId?: string;\r\n isTradesTab?: boolean;\r\n workingOrdersOnly?: boolean;\r\n },\r\n ActionMetadata\r\n >(),\r\n receiveAccountOrders: createStandardAction(RECEIVE_ACCOUNT_ORDERS)<{\r\n accountId: number;\r\n orders: Order[];\r\n date: Date;\r\n dateTo?: Date;\r\n dateFrom?: Date;\r\n total?: number;\r\n pageSize?: number;\r\n pageIndex?: number;\r\n blockId?: string;\r\n isTradesTab?: boolean;\r\n }>(),\r\n requestMoreAccountOrders: createStandardAction(REQUEST_MORE_ACCOUNT_ORDERS)<{\r\n accountId: number;\r\n subaccountId?: number;\r\n }>(),\r\n setOrdersRequestPageIndex: createStandardAction('@account/orders/SET_PAGE')<{\r\n pageIndex: number;\r\n blockId: string;\r\n }>(),\r\n setOrdersRequestPageSize: createStandardAction('@account/orders/SET_PAGE_SIZE')<{\r\n pageSize: number;\r\n blockId: string;\r\n }>(),\r\n};\r\n\r\nexport const SET_QUOTES = 'SET_QUOTES';\r\nexport const QuoteActions = {\r\n setQuotes: createStandardAction(SET_QUOTES)(),\r\n};\r\n\r\nexport const PERSIST_BLOCKS = 'PERSIST_BLOCKS';\r\nexport const PERSIST_DASHBOARDS = 'PERSIST_DASHBOARDS';\r\nexport const PERSIST_DASHBOARDS_FINISHED = 'PERSIST_DASHBOARDS_FINISHED';\r\nexport const PERSIST_LAYOUTS = 'PERSIST_LAYOUTS';\r\nexport const PERSIST_FAVORITES = 'PERSIST_FAVORITES';\r\nexport const PersistActions = {\r\n blocks: createStandardAction(PERSIST_BLOCKS)(),\r\n dashboards: createStandardAction(PERSIST_DASHBOARDS)(),\r\n dashboardsFinished: createStandardAction(PERSIST_DASHBOARDS_FINISHED)(),\r\n layouts: createStandardAction(PERSIST_LAYOUTS)(),\r\n favorites: createStandardAction(PERSIST_FAVORITES)(),\r\n};\r\n\r\nexport const ADD_DASHBOARD = 'ADD_DASHBOARD';\r\nexport const ADD_EMPTY_DASHBOARD = 'ADD_EMPTY_DASHBOARD';\r\nexport const UPDATE_DASHBOARD = 'UPDATE_DASHBOARD';\r\nconst DashboardAddUpdateActions = {\r\n addDashboard: createStandardAction(ADD_DASHBOARD)<\r\n { dashboard: DashboardInfo; blocks: BlockConfiguration[] },\r\n ActionMetaOrUndefined\r\n >(),\r\n addEmptyDashboard: createStandardAction(ADD_EMPTY_DASHBOARD)<{ dashboard: DashboardInfo; setAsActive: boolean }>(),\r\n updateDashboard: createStandardAction(UPDATE_DASHBOARD)<\r\n { dashboardId: string; dashboardData: Partial },\r\n ActionMetaOrUndefined\r\n >(),\r\n};\r\n\r\nexport const REQUEST_DASHBOARDS = 'REQUEST_DASHBOARDS';\r\nexport const RECEIVE_DASHBOARDS = 'RECEIVE_DASHBOARDS';\r\nexport const SET_DASHBOARD = 'SET_DASHBOARD';\r\nexport const DashboardActions = {\r\n ...DashboardAddUpdateActions,\r\n requestDashboards: createStandardAction(REQUEST_DASHBOARDS)(),\r\n receiveDashboards: createStandardAction(RECEIVE_DASHBOARDS)(),\r\n setDashboard: createStandardAction(SET_DASHBOARD)<{ dashboard: DashboardInfo; addDashboard?: boolean }>(),\r\n};\r\nexport type AddDashboardAction = ActionType;\r\nexport type UpdateDashboardAction = ActionType;\r\n\r\nconst REQUEST_BLOCKS = '@block/REQUEST_BLOCKS';\r\nconst RECEIVE_BLOCKS = '@block/RECEIVE_BLOCKS';\r\nconst ADD_BLOCK = '@block/ADD_BLOCK';\r\nconst ADDORUPDATE_BLOCK = '@block/ADD_OR_UPDATE_BLOCK';\r\nconst UPDATE_BLOCK = '@block/UPDATE_BLOCK';\r\nconst REMOVE_BLOCK = '@block/REMOVE_BLOCK';\r\nconst SET_BLOCKS = '@block/SET_BLOCKS';\r\nconst HIGHLIGHT_BLOCKS = '@block/HIGHLIGHT_BLOCKS';\r\nconst HIGHLIGHT_GROUP = '@block/HIGHLIGHT_GROUP';\r\nconst CLEAR_HIGHLIGHTED_BLOCKS = '@block/CLEAR_HIGHLIGHTED_BLOCKS';\r\nconst ADD_BLOCK_QUOTE_SUBSCRIPTION = '@block/ADD_BLOCK_QUOTE_SUBSCRIPTION';\r\nconst SET_BLOCK_QUOTE_SUBSCRIPTION = '@block/SET_QUOTE_SUBSCRIPTION';\r\nconst LINK_BLOCKS = '@block/LINK_BLOCKS';\r\nconst UNLINK_BLOCK = '@block/UNLINK_BLOCK';\r\nconst SET_LINK_COLOR = '@block/SET_LINK_COLOR';\r\nexport const BlockActions = {\r\n requestBlocks: createStandardAction(REQUEST_BLOCKS)(),\r\n receiveBlocks: createStandardAction(RECEIVE_BLOCKS)(),\r\n noBlocks: createStandardAction('@block/NO_BLOCKS')(),\r\n addBlock: createStandardAction(ADD_BLOCK)<{ block: BlockConfiguration; addedAt: Date }, ActionMetaOrUndefined>(),\r\n addOrUpdateBlock: createStandardAction(ADDORUPDATE_BLOCK)<\r\n {\r\n block: BlockConfiguration;\r\n addedAt: Date;\r\n preserveGroupOrderData?: boolean;\r\n replaceFirstMatch?: { blockType: BlockType; groupId?: string };\r\n },\r\n ActionMetaOrUndefined\r\n >(),\r\n updateBlock: createStandardAction(UPDATE_BLOCK)<\r\n { blockId: string; blockData: Partial },\r\n ActionMetaOrUndefined\r\n >(),\r\n removeBlock: createStandardAction(REMOVE_BLOCK)(),\r\n setBlocks: createStandardAction(SET_BLOCKS)<{ blocks: BlockConfiguration[] }, ActionMetaOrUndefined>(),\r\n highlightBlocks: createStandardAction(HIGHLIGHT_BLOCKS)<{\r\n blockType: BlockType;\r\n highlightedAt: Date;\r\n options?: { activeTab?: string; allMatches?: boolean; timeoutMs?: number };\r\n }>(),\r\n highlightGroup: createStandardAction(HIGHLIGHT_GROUP)<{ groupId: string | undefined; highlightAt: Date }>(),\r\n clearHighlightedBlocks: createStandardAction(CLEAR_HIGHLIGHTED_BLOCKS)(),\r\n addQuoteSubscription: createStandardAction(ADD_BLOCK_QUOTE_SUBSCRIPTION)<{ blockId: string; symbols: string[] }>(),\r\n setQuoteSubscription: createStandardAction(SET_BLOCK_QUOTE_SUBSCRIPTION)<{ blockId: string; symbols: string[] }>(),\r\n linkBlock: createStandardAction(LINK_BLOCKS)<{ blockId: string; groupId: string }>(),\r\n unlinkBlock: createStandardAction(UNLINK_BLOCK)<{ blockId: string }>(),\r\n setColoredLink: createStandardAction(SET_LINK_COLOR)<{\r\n linkColor: GroupLinkColors | undefined;\r\n blockData: { groupId: string };\r\n }>(),\r\n};\r\n\r\nexport const BLOCKGROUP_ADDLEG = '@block/group/ADDLEG';\r\nexport const BLOCKGROUP_SetSymbolAndReset = '@block/group/SetSymbolAndReset';\r\nexport const BLOCKGROUP_SETSYMBOL = '@block/group/SETSYMBOL';\r\nexport const BLOCKGROUP_CREATEORDERFROMGROUP = '@block/group/createOrderFromGroup';\r\nexport const SharedBlockGroupActions = {\r\n SetSymbolAndReset: createStandardAction(BLOCKGROUP_SetSymbolAndReset)<{\r\n leg: GroupOrderLeg;\r\n groupId: string;\r\n symbol: AssetSymbol;\r\n }>(),\r\n};\r\nexport const BlockGroupActions = {\r\n ...SharedBlockGroupActions,\r\n addGroupLeg: createStandardAction(BLOCKGROUP_ADDLEG)<{ leg: GroupOrderLeg; groupId: string }>(),\r\n setGroupSymbol: createStandardAction(BLOCKGROUP_SETSYMBOL)<{ symbol: AssetSymbol | undefined; groupId: string }>(),\r\n createOrderFromGroup: createStandardAction(BLOCKGROUP_CREATEORDERFROMGROUP)<\r\n { leg: GroupOrderLeg; groupId: string },\r\n { persist: true }\r\n >(),\r\n};\r\nexport type BlockGroupAction = ActionType;\r\n\r\nexport const TOGGLE_LOCKED = '@grid/TOGGLE_LOCKED';\r\nexport const TOGGLE_LINKING = '@grid/TOGGLE_LINKING';\r\nexport const GridActions = {\r\n toggleLocked: createStandardAction(TOGGLE_LOCKED)<{ locked?: boolean; showTooltip?: boolean }>(),\r\n toggleLinking: createStandardAction(TOGGLE_LINKING)<{\r\n enabled: boolean | undefined;\r\n sourceBlock: BlockInfo | undefined;\r\n targetBlock: { type: BlockType } | undefined;\r\n }>(),\r\n};\r\n\r\nexport const ADD_QUOTE = '@feed/ADD_QUOTE';\r\nexport const REMOVE_QUOTE = '@feed/REMOVE_QUOTE';\r\nexport const ADD_SPREAD = '@feed/ADD_SPREAD';\r\nexport const REMOVE_SPREAD = '@feed/REMOVE_SPREAD';\r\nexport const FEED_QUOTES_UPDATE = '@feed/quotes/UDPATE';\r\nexport const FEED_CLOSED = '@feed/CLOSED';\r\nexport const FEED_ERRORED = '@feed/ERRORED';\r\nexport const FEED_CONNECTED = '@feed/CONNECTED';\r\nexport const FeedActions = {\r\n addSpread: createStandardAction(ADD_SPREAD)(),\r\n removeSpread: createStandardAction(REMOVE_SPREAD)(),\r\n addQuote: createStandardAction(ADD_QUOTE)(),\r\n removeQuote: createStandardAction(REMOVE_QUOTE)(),\r\n updateQuotes: createStandardAction(FEED_QUOTES_UPDATE)<\r\n { quotes: { [symbol: string]: FeedQuote } },\r\n ActionMetaOrUndefined\r\n >(),\r\n feedClosed: createStandardAction(FEED_CLOSED)(),\r\n feedErrored: createStandardAction(FEED_ERRORED)(),\r\n connected: createStandardAction(FEED_CONNECTED)(),\r\n};\r\n\r\nexport const REQUEST_EXPIRATIONS = '@data/expirations/REQUEST_EXPIRATIONS';\r\nexport const RECEIVE_EXPIRATIONS = '@data/expirations/RECEIVE_EXPIRATIONS';\r\nexport const REQUEST_STRIKES = '@data/REQUEST_STRIKES';\r\nexport const RECEIVE_STRIKES = '@data/RECEIVE_STRIKES';\r\nexport const requestExpirationAction = createStandardAction(REQUEST_EXPIRATIONS)<{ symbol: string }>();\r\nexport const requestStrikeAction = createStandardAction(REQUEST_STRIKES)<{ symbol: string; expiration: Expiration }>();\r\nexport const fetchStrikes = createStandardAction('@data/FETCH_STRIKES')<{ symbol: string; expiration: Expiration }>();\r\nexport const ExpirationStrikeActions = {\r\n requestExpirationAction,\r\n receiveExpirations: createStandardAction(RECEIVE_EXPIRATIONS)<{ symbol: string; expirations: Expiration[] }>(),\r\n requestStrikes: requestStrikeAction,\r\n fetchStrikes,\r\n receiveStrikes: createStandardAction(RECEIVE_STRIKES)<{\r\n strikes: number[];\r\n symbol: string;\r\n expiration: Expiration;\r\n }>(),\r\n};\r\nexport type ExpirationStrikeAction = ActionType;\r\nexport type RequestExpirationAction = ActionType;\r\nexport type RequestStrikeAction = ActionType;\r\n\r\nexport const REQUEST_POSITIONS = '@data/REQUEST_POSITIONS';\r\nexport const RECEIVE_POSITIONS = '@data/RECEIVE_POSITIONS';\r\nexport const FETCHING_POSITIONS = '@data/FETCHING_POSITIONS';\r\nexport const QuoteDataActions = DataQuoteActions;\r\nexport const DataActions = {\r\n ...QuoteDataActions,\r\n requestPositions: createStandardAction(REQUEST_POSITIONS)<\r\n { accountId?: number; subaccountId?: number; more?: boolean },\r\n Partial\r\n >(),\r\n fetchingPositions: createStandardAction(FETCHING_POSITIONS)<{ accountId?: number; subaccountId?: number }>(),\r\n receivePositions: createStandardAction(RECEIVE_POSITIONS)(),\r\n};\r\n\r\nexport type OrderUpdateEventAction = ActionType;\r\nexport type OrderCancelEventAction = ActionType;\r\n\r\nexport const HIDE_NOTIFICATION = '@notification/HIDE_NOTIFICATION';\r\nexport const READ_NOTIFICATION = '@notification/READ_NOTIFICATION';\r\nexport const VIEW_NOTIFICATION = '@notification/VIEW_NOTIFICATION';\r\nexport const ADD_NOTIFICATION = '@notification/ADD_NOTIFICATION';\r\nexport const ADD_WARNING_NOTIFICATION = '@notification/ADD_WARNING_NOTIFICATION';\r\nexport const NotificationActions = {\r\n add: createStandardAction(ADD_NOTIFICATION)(),\r\n hide: createStandardAction(HIDE_NOTIFICATION)(),\r\n read: createStandardAction(READ_NOTIFICATION)(),\r\n view: createStandardAction(VIEW_NOTIFICATION)(),\r\n};\r\n\r\nexport const ADD_FAVORITE = '@favorites/ADD';\r\nexport const REMOVE_FAVORITE = '@favorites/REMOVE';\r\nexport const REQUEST_FAVORITES = '@favorites/REQUEST';\r\nexport const RECEIVE_FAVORITES = '@favorites/RECEIVE';\r\nexport const FavoriteActions = {\r\n addFavorite: createStandardAction(ADD_FAVORITE)(),\r\n remove: createStandardAction(REMOVE_FAVORITE)(),\r\n request: createStandardAction(REQUEST_FAVORITES)(),\r\n receive: createStandardAction(RECEIVE_FAVORITES)<{ value: AssetSymbolInfo[] }>(),\r\n};\r\n\r\nexport const SET_BREAKPOINT_AND_COLUMNS = '@layout/SET_BREAKPOINT_AND_COLUMNS';\r\nexport const SET_LAYOUTS = '@layout/SET_LAYOUTS';\r\nexport const SET_ALL_LAYOUTS = '@layout/SET_ALL_LAYOUTS';\r\nexport const LayoutActions = {\r\n setBreakpointAndColumns: createStandardAction(SET_BREAKPOINT_AND_COLUMNS)<{\r\n breakpoint: SizeType;\r\n columns: number;\r\n }>(),\r\n setLayouts: createStandardAction(SET_LAYOUTS)<{ layouts: Layouts }, ActionMetaOrUndefined>(),\r\n setAllLayouts: createStandardAction(SET_ALL_LAYOUTS)<{ layouts: Layouts }, ActionMetaOrUndefined>(),\r\n};\r\n\r\nexport const REQUEST_OPTION_EXPIRATIONS = '@optionchain/REQUEST_OPTION_EXPIRATIONS';\r\nexport const RECEIVE_OPTION_EXPIRATIONS = '@optionchain/RECEIVE_OPTION_EXPIRATIONS';\r\nexport const REQUEST_OPTION_CHAIN = '@optionchain/REQUEST_OPTION_CHAIN';\r\nexport const RECEIVE_OPTION_CHAIN = '@optionchain/RECEIVE_OPTION_CHAIN';\r\nexport const REQUEST_OPTION_ERROR = '@optionchain/REQUEST_OPTION_ERROR';\r\nexport const SET_STRIKECOUNT = '@optionchain/SET_STRIKECOUNT';\r\nexport const OptionChainActions = {\r\n setStrikeCount: createStandardAction(SET_STRIKECOUNT)<{\r\n blockId: string;\r\n symbol: string;\r\n strikeCount: number;\r\n expirations: Expiration[];\r\n }>(),\r\n requestOptionChainError: createStandardAction(REQUEST_OPTION_ERROR)<{\r\n blockId: string;\r\n symbol: string;\r\n expiration: Expiration;\r\n responseCode: number;\r\n }>(),\r\n requestOptionExpirations: createStandardAction(REQUEST_OPTION_EXPIRATIONS)<{ blockId: string; symbol: string }>(),\r\n receiveOptionExpirations: createStandardAction(RECEIVE_OPTION_EXPIRATIONS)<{\r\n blockId: string;\r\n symbol: string;\r\n expirations: Expiration[];\r\n }>(),\r\n requestOptionChain: createStandardAction(REQUEST_OPTION_CHAIN)<{\r\n blockId: string;\r\n symbol: string;\r\n expirations: Expiration[];\r\n strikeCount?: number;\r\n }>(),\r\n receiveOptionChain: createStandardAction(RECEIVE_OPTION_CHAIN)<{\r\n blockId: string;\r\n symbol: string;\r\n expiration: Expiration;\r\n pairs: OptionPairWithSymbol[];\r\n minStrike?: number;\r\n maxStrike?: number;\r\n }>(),\r\n};\r\n\r\nexport const SESSION_EXPIRED = '@session/EXPIRED';\r\nexport const SESSION_ERROR = '@session/SESSION_ERROR';\r\nexport const RESET_UNAUTHORIZED_REQUEST = '@session/RESET_UNAUTHORIZED_REQUEST';\r\n\r\nexport const SessionActions = {\r\n expired: createStandardAction(SESSION_EXPIRED)<{ code: ExpiredTokenCode; reason?: string; syncTab?: boolean }>(),\r\n error: createStandardAction(SESSION_ERROR)<{ code: number; url?: string; message?: string; reason?: string }>(),\r\n resetError: createStandardAction(RESET_UNAUTHORIZED_REQUEST)<{}>(),\r\n};\r\n\r\nexport const UI_DASHBOARD_DRAWER_OPEN = '@ui/dashboard/drawer/open';\r\nexport const UI_SET_SUBACCOUNT_FILTER_ID = '@ui/setSubaccountFilterId';\r\n\r\nexport const UIActions = {\r\n setDashboardDrawerOpen: createStandardAction(UI_DASHBOARD_DRAWER_OPEN)<{ open: boolean }>(),\r\n toggleLockDashboard: createStandardAction('@ui/dashboard/toggleLock')<{}>(),\r\n setSubAccountFilterId: createStandardAction(UI_SET_SUBACCOUNT_FILTER_ID)<{ id: number | undefined }>(),\r\n};\r\n\r\nexport type CashieringAction = ActionType;\r\nconst allActions = {\r\n ...HistoryActions,\r\n ...EnvironmentActions,\r\n ...PageActions,\r\n ...SettingsActions,\r\n ...Actions,\r\n ...DashboardActions,\r\n ...GridActions,\r\n ...QuoteActions,\r\n ...LifecycleActions,\r\n ...FeedActions,\r\n ...PersistActions,\r\n ...DataActions,\r\n ...OrderActions,\r\n ...NotificationActions,\r\n ...FavoriteActions,\r\n ...ExpirationStrikeActions,\r\n ...LayoutActions,\r\n ...OptionChainActions,\r\n ...BlockActions,\r\n ...BlockGroupActions,\r\n ...CashieringActions,\r\n ...SessionActions,\r\n ...SymbolActions,\r\n ...UIActions,\r\n ...AdminActions,\r\n ...CashieringEventActions,\r\n ...InfoDataActions,\r\n ...AccountManagementDataActions,\r\n ...LinkedAccountsActions,\r\n ...AccountStatementsActions,\r\n};\r\n\r\nconst gridPersistActions = {\r\n addBlock: BlockActions.addBlock,\r\n removeBlock: BlockActions.removeBlock,\r\n updateBlock: BlockActions.updateBlock,\r\n setLayouts: LayoutActions.setLayouts,\r\n};\r\nexport type PersistActions = ActionType;\r\nexport type RootAction = ActionType;\r\n","module.exports = __webpack_public_path__ + \"static/media/ok.0a2c73b5.mp3\";","module.exports = __webpack_public_path__ + \"static/media/error.ce710465.mp3\";","module.exports = __webpack_public_path__ + \"static/media/updates.8e011c65.mp3\";","import { buildGenericRequestReceiveActions } from '../actionUtilities';\n\n// Account Daily Statements Actions\nconst REQUEST_DAILY_ACCOUNT_STATEMENTS = '@data/REQUEST/DAILY_ACCOUNT_STATEMENTS';\nconst RECEIVE_DAILY_ACCOUNT_STATEMENTS = '@data/RECEIVE/DAILY_ACCOUNT_STATEMENTS';\nconst ERROR_DAILY_ACCOUNT_STATEMENTS = '@data/ERROR/DAILY_ACCOUNT_STATEMENTS';\n\nconst [\n requestDailyAccountStatements,\n receiveDailyAccountStatements,\n errorDailyAccountStatements,\n] = buildGenericRequestReceiveActions({\n REQUEST: REQUEST_DAILY_ACCOUNT_STATEMENTS,\n RECEIVE: RECEIVE_DAILY_ACCOUNT_STATEMENTS,\n ERROR: ERROR_DAILY_ACCOUNT_STATEMENTS,\n})<{ accountId: number; requestedStartDate: Date; requestedEndDate: Date }, { data: any }, { error: any }>();\n\n// Account Monthly Statements Actions\nconst REQUEST_MONTHLY_ACCOUNT_STATEMENTS = '@data/REQUEST/MONTHLY_ACCOUNT_STATEMENTS';\nconst RECEIVE_MONTHLY_ACCOUNT_STATEMENTS = '@data/RECEIVE/MONTHLY_ACCOUNT_STATEMENTS';\nconst ERROR_MONTHLY_ACCOUNT_STATEMENTS = '@data/ERROR/MONTHLY_ACCOUNT_STATEMENTS';\n\nconst [\n requestMonthlyAccountStatements,\n receiveMonthlyAccountStatements,\n errorMonthlyAccountStatements,\n] = buildGenericRequestReceiveActions({\n REQUEST: REQUEST_MONTHLY_ACCOUNT_STATEMENTS,\n RECEIVE: RECEIVE_MONTHLY_ACCOUNT_STATEMENTS,\n ERROR: ERROR_MONTHLY_ACCOUNT_STATEMENTS,\n})<{ accountId: number; requestedStartDate: Date; requestedEndDate: Date }, { data: any }, { error: any }>();\n\n// Account Tax Statements Actions\nconst REQUEST_TAX_ACCOUNT_STATEMENTS = '@data/REQUEST/TAX_ACCOUNT_STATEMENTS';\nconst RECEIVE_TAX_ACCOUNT_STATEMENTS = '@data/RECEIVE/TAX_ACCOUNT_STATEMENTS';\nconst ERROR_TAX_ACCOUNT_STATEMENTS = '@data/ERROR/TAX_ACCOUNT_STATEMENTS';\n\nconst [\n requestTaxAccountStatements,\n receiveTaxAccountStatements,\n errorTaxAccountStatements,\n] = buildGenericRequestReceiveActions({\n REQUEST: REQUEST_TAX_ACCOUNT_STATEMENTS,\n RECEIVE: RECEIVE_TAX_ACCOUNT_STATEMENTS,\n ERROR: ERROR_TAX_ACCOUNT_STATEMENTS,\n})<\n { accountId: number; taxDocument: string; taxYear: number },\n { data: any },\n { error: any }\n>();\n\nexport const AccountStatementsActions = {\n requestDailyAccountStatements,\n receiveDailyAccountStatements,\n errorDailyAccountStatements,\n requestMonthlyAccountStatements,\n receiveMonthlyAccountStatements,\n errorMonthlyAccountStatements,\n requestTaxAccountStatements,\n receiveTaxAccountStatements,\n errorTaxAccountStatements,\n};\n","import { createStandardAction } from 'typesafe-actions';\nimport { SymbolQuote, SymbolQuoteExtended, SymbolDividendData, ApiResponse, SymbolEarningData } from '@tradingblock/api';\nimport { DividendTimeframeValues, EarningsTimeframeValues } from '@tradingblock/types';\nimport { actionBuilder, buildGenericRequestReceiveActions } from '../actionUtilities';\n\nexport const REQUEST_QUOTE = '@data/REQUEST_QUOTE';\nexport const FETCHING_QUOTE = '@data/FETCHING_QUOTE';\nexport const RECEIVE_QUOTE = '@data/RECEIVE_QUOTE';\nexport const REQUEST_QUOTE_EXTENDED = '@data/REQUEST_QUOTE_EXTENDED';\nexport const RECEIVE_QUOTE_EXTENDED = '@data/RECEIVE_QUOTE_EXTENDED';\nexport const ERROR_QUOTE_EXTENDED = '@data/ERROR_QUOTE_EXTENDED';\nexport const REQUEST_QUOTE_DIVIDENDS = '@data/REQUEST/QUOTE_DIVIDENDS';\nexport const RECEIVE_QUOTE_DIVIDENDS = '@data/RECEIVE/QUOTE_DIVIDENDS';\nexport const ERROR_QUOTE_DIVIDENDS = '@data/ERROR/QUOTE_DIVIDENDS';\n\nexport const REQUEST_QUOTE_EARNINGS = '@data/REQUEST/QUOTE_EARNINGS';\nexport const RECEIVE_QUOTE_EARNINGS = '@data/RECEIVE/QUOTE_EARNINGS';\nexport const ERROR_QUOTE_EARNINGS = '@data/ERROR/QUOTE_EARNINGS';\n\nconst [requestDividends, receiveDividends, errorDividends] = buildGenericRequestReceiveActions({ REQUEST: REQUEST_QUOTE_DIVIDENDS, RECEIVE: RECEIVE_QUOTE_DIVIDENDS, ERROR: ERROR_QUOTE_DIVIDENDS })<{ symbol: string; range: DividendTimeframeValues }, { symbol: string; range: DividendTimeframeValues; dividends: SymbolDividendData[] }, { symbol: string; range: DividendTimeframeValues; error?: string }>();\nconst [requestEarnings, receiveEarnings, errorEarnings] = buildGenericRequestReceiveActions({ REQUEST: REQUEST_QUOTE_EARNINGS, RECEIVE: RECEIVE_QUOTE_EARNINGS, ERROR: ERROR_QUOTE_EARNINGS })<{ symbol: string; period: EarningsTimeframeValues }, { symbol: string; period: EarningsTimeframeValues; earnings: SymbolEarningData[] }, { symbol: string; error?: string; period: EarningsTimeframeValues }>();\n\nexport const QuoteDataActions = {\n fetchingQuotes: createStandardAction(FETCHING_QUOTE)<{ symbol: string | string[] }>(),\n requestQuote: createStandardAction(REQUEST_QUOTE)<{ symbol: string | string[] }>(),\n receiveQuote: createStandardAction(RECEIVE_QUOTE)<{ symbol: string; quote: SymbolQuote }[]>(),\n\n requestQuoteExtended: createStandardAction(REQUEST_QUOTE_EXTENDED)<{ symbol: string }>(),\n receiveQuoteExtended: createStandardAction(RECEIVE_QUOTE_EXTENDED)<{ symbol: string; quote: SymbolQuoteExtended }>(),\n errorQuoteExtended: createStandardAction(ERROR_QUOTE_EXTENDED)<{ symbol: string; }>(),\n requestDividends,\n receiveDividends,\n errorDividends,\n requestEarnings,\n receiveEarnings,\n errorEarnings,\n};\n","import { AssetType, PositionPerformance, Position, SymbolTypes, Fetchable } from '@tradingblock/types';\nimport {\n SymbolQuoteAndChangeData,\n SymbolQuote,\n PartialQuote,\n toAssetSymbol,\n getBestPrice,\n AggregatedPositionDTO,\n AssetTypeToSymbolType,\n} from '@tradingblock/api';\n\nimport _ from 'lodash';\nimport { sumNumbers } from '../../../utilities/data';\nimport { changeCalculation } from '../../../utilities/position';\nimport { calculatePositionCostValue } from '../../../blocks/Positions/util';\n\nexport const QuoteDataToPartialQuote = (\n quoteData: Fetchable<\n SymbolQuoteAndChangeData & {\n isLoaded: boolean;\n }\n >[]\n) => {\n return _.map(\n quoteData,\n ({\n LastTradePrice,\n IsSettlementSet,\n ClosePrice,\n ClosePriceTMinus2,\n BestPriceCalculated,\n ChangePercentage,\n LastOrClosePrice,\n NetChange,\n Open,\n Symbol,\n UnderlyingSymbol,\n AskPrice,\n BidPrice,\n Multiplier,\n Description,\n }: SymbolQuote): PartialQuote => ({\n IsSettlementSet,\n ClosePrice,\n ClosePriceTMinus2,\n BestPriceCalculated,\n LastTradePrice,\n ChangePercentage,\n LastOrClosePrice,\n NetChange,\n Open,\n Symbol,\n UnderlyingSymbol,\n AskPrice,\n BidPrice,\n Multiplier,\n Description,\n })\n );\n};\n\nexport const positionToPerformance = (\n position: Pick<\n AggregatedPositionDTO,\n | 'OpenPrice'\n | 'DateOpened'\n | 'OpenQuantity'\n | 'ValueBasis'\n | 'CostBasis'\n | 'Symbol'\n | 'UnderlyingSymbol'\n | 'AssetType'\n | 'OptionMultiplier'\n | 'Description'\n | 'Commission'\n >,\n feedQuote: PartialQuote\n): PositionPerformance => {\n /* \n TODO: Review bug causing white screens for account switcher. Default values of 0 are being used for now but this is a workaround.\n Errors being seen through recorder scripts show that values AskPrice, BidPrice, etc. not being set are leading to white screens.\n */\n\n if (!feedQuote) {\n return {\n ask: 0,\n bid: 0,\n change: 0,\n changePercent: 0,\n cost: position.CostBasis * position.OptionMultiplier,\n lastTradePrice: 0,\n bestTradePrice: 0,\n value: position.ValueBasis,\n quantity: position.OpenQuantity,\n symbol: toAssetSymbol(position.Symbol, position.AssetType, AssetTypeToSymbolType(position.AssetType), {\n rootSymbol: position.Symbol,\n underlyingSymbol: position.UnderlyingSymbol,\n }),\n underlyingSymbol: position.UnderlyingSymbol,\n gain: 0,\n close: 0,\n description: position.Description,\n prevClose: 0,\n IsSettlementSet: false,\n ClosePriceTMinus2: 0,\n };\n }\n\n const {\n AskPrice,\n BidPrice,\n LastOrClosePrice,\n LastTradePrice,\n ClosePrice,\n IsSettlementSet,\n ClosePriceTMinus2,\n NetChange,\n ChangePercentage,\n } = feedQuote;\n\n let close_or_settled = IsSettlementSet ? ClosePriceTMinus2 : ClosePrice;\n\n const bestTradePrice = getBestPrice({\n last: LastOrClosePrice || 0,\n ask: AskPrice || 0,\n bid: BidPrice || 0,\n defaultValue: 'avgBidAsk',\n isSettlementSet: IsSettlementSet,\n });\n\n const currentValue = bestTradePrice * position.ValueBasis;\n\n const { change, changePercent } = changeCalculation(\n LastTradePrice,\n ClosePrice,\n ClosePriceTMinus2,\n BidPrice,\n AskPrice,\n position.Symbol,\n IsSettlementSet\n ) || {\n change: undefined,\n changePercent: undefined,\n };\n\n const calculatedCost =\n calculatePositionCostValue(\n position.OpenPrice,\n position.OpenQuantity,\n position.AssetType,\n position.OptionMultiplier\n ) + position.Commission;\n\n const positionPerformance: PositionPerformance = {\n ask: AskPrice,\n bid: BidPrice,\n change: NetChange,\n changePercent: ChangePercentage,\n calculatedChange: change,\n calculatedChangePercent: changePercent * 100,\n cost: position.CostBasis,\n lastTradePrice: position.AssetType === AssetType.MoneyMarket ? 1 : LastTradePrice, //TODO: Need to pull this from quote, but right now the feed system is not supporting moneymarkets\n bestTradePrice: position.AssetType === AssetType.MoneyMarket ? 1 : bestTradePrice,\n value: currentValue,\n quantity: position.OpenQuantity,\n symbol: toAssetSymbol(position.Symbol, position.AssetType, AssetTypeToSymbolType(position.AssetType), {\n rootSymbol: position.Symbol,\n underlyingSymbol: position.UnderlyingSymbol,\n }),\n underlyingSymbol: position.UnderlyingSymbol,\n // TBFE-1537 - This change is connected to TBFE-1515. Once the backend is returning the correct position cost value we can revert to using the position cost value provided by the backend.\n gain: currentValue - calculatedCost,\n close: position.AssetType === AssetType.MoneyMarket ? 1 : ClosePrice,\n description: position.Description,\n prevClose: IsSettlementSet ? ClosePriceTMinus2 : ClosePrice,\n IsSettlementSet: IsSettlementSet,\n ClosePriceTMinus2: ClosePriceTMinus2,\n };\n return positionPerformance;\n};\n\nexport const aggregatedSymbolPosition = (\n positions: Position[],\n quotes: PartialQuote[],\n underlyingSymbol: string\n): PositionPerformance => {\n const positionInfo = _.reduce(\n positions,\n (res: PositionPerformance[], pos: Position) => {\n // Replace the fund symbol with the underlying symbol by removing \";\"\n const quote = _.find(quotes, q => q.Symbol === pos.Symbol.replace(';', ''));\n if (!quote) {\n return res;\n }\n const aggregated = {\n ...pos,\n ValueBasis: pos.OpenQuantity * pos.OptionMultiplier,\n };\n return [...res, positionToPerformance(aggregated, quote)];\n },\n []\n );\n const aggregatedSymbolQuote = _.find(quotes, q => q.Symbol === underlyingSymbol);\n const sharesPositions = _.filter(\n positions,\n p =>\n p.AssetType === AssetType.Equity || p.AssetType === AssetType.MoneyMarket || p.AssetType === AssetType.MutualFund\n );\n\n return {\n symbol: toAssetSymbol(\n underlyingSymbol,\n sharesPositions.length > 0 ? sharesPositions[0].AssetType : positions[0].AssetType,\n SymbolTypes.Equity,\n {}\n ),\n underlyingSymbol: underlyingSymbol,\n cost: sumNumbers(positionInfo.map(pi => pi.cost)),\n value: sumNumbers(positionInfo.map(pi => pi.value)),\n quantity: sumNumbers(positionInfo.map(pi => pi.quantity)),\n options: _.filter(positions, p => p.AssetType === AssetType.Option).length,\n shares: sharesPositions.length,\n sharesSum: _.isEmpty(sharesPositions) ? undefined : sumNumbers(_.map(sharesPositions, p => p.OpenQuantity)),\n\n gain: sumNumbers(_.map(positionInfo, pi => pi.gain)),\n ask: aggregatedSymbolQuote ? aggregatedSymbolQuote.AskPrice : 0,\n bid: aggregatedSymbolQuote ? aggregatedSymbolQuote.BidPrice : 0,\n lastTradePrice: aggregatedSymbolQuote ? aggregatedSymbolQuote.LastTradePrice : 0,\n bestTradePrice: aggregatedSymbolQuote ? aggregatedSymbolQuote.LastOrClosePrice : 0,\n change: aggregatedSymbolQuote ? aggregatedSymbolQuote.NetChange : 0,\n changePercent: aggregatedSymbolQuote ? aggregatedSymbolQuote.ChangePercentage : 0,\n close: aggregatedSymbolQuote ? aggregatedSymbolQuote.ClosePrice : 0,\n prevClose: aggregatedSymbolQuote ? aggregatedSymbolQuote.ClosePriceTMinus2 : 0,\n IsSettlementSet: aggregatedSymbolQuote ? aggregatedSymbolQuote.IsSettlementSet : false,\n description: aggregatedSymbolQuote ? aggregatedSymbolQuote.Description : '',\n ClosePriceTMinus2: aggregatedSymbolQuote ? aggregatedSymbolQuote.ClosePriceTMinus2 : 0,\n };\n};\n","import axios from 'axios';\nimport _ from 'lodash';\nimport dayjs from 'dayjs';\nimport qs from 'qs';\nimport { OrderStatuses } from '@tradingblock/types';\nimport axiosRetry from 'axios-retry'; // export function toApiResponse(resp: ApiResponse | LegacyApiResponse): ApiResponse {\n// const payload: D = _.get(resp, 'Payload', undefined) || _.get(resp, 'payload', undefined);\n// const responseCode: ResponseCode = _.get(resp, 'ResponseCode', undefined) || _.get(resp, 'responseCode', undefined);\n// return {\n// payload,\n// responseCode,\n// };\n// }\n\nvar clients = {};\nexport var createAxiosClient = function createAxiosClient(url, token) {\n // Check if we already have a client instance for this url and token\n if (clients[\"\".concat(url, \"-\").concat(token)] !== undefined) {\n return clients[\"\".concat(url, \"-\").concat(token)];\n }\n\n var client = axios.create({\n baseURL: url,\n headers: {\n Authorization: token,\n Accept: 'application/json'\n }\n });\n axiosRetry(client, {\n retries: 6,\n retryCondition: function retryCondition(e) {\n return axiosRetry.isNetworkOrIdempotentRequestError(e) || e.response.status === 429;\n },\n shouldResetTimeout: true,\n retryDelay: function retryDelay(retryCount, error) {\n if (error.response && error.response.headers !== undefined) {\n var retry_after = error.response.headers['retry-after'];\n console.log('Retrying after: ', retry_after);\n\n if (retry_after) {\n return retry_after * 1000;\n }\n } // Can also just return 0 here for no delay if one isn't specified\n\n\n return retryCount * 2000;\n },\n onRetry: function onRetry(retryCount, error, requestConfig) {\n console.log(\"Retry attempt #\".concat(retryCount, \" for \").concat(requestConfig.url));\n console.log(\"Error \", error);\n }\n }); //Create a cache version of clients to prevent multiple clients from being created\n\n clients[\"\".concat(url, \"-\").concat(token)] = client;\n return client;\n};\nexport var formatUrl = function formatUrl(url, querystringParams) {\n var delim = url.indexOf('?') > -1 ? '&' : '?';\n var params = querystringParams ? qs.stringify(querystringParams, {\n indices: false\n }) : null;\n return \"\".concat(url).concat(params ? delim + params : '');\n};\nexport function isString(x) {\n return typeof x === 'string';\n}\nexport function getIdNumber(id) {\n return _.toNumber(id);\n}\nexport var DateFormats = {\n ApiFormat: 'MM-DD-YYYY',\n DateTimeApiFormat: 'YYYY-MM-DD hh:mm:ss'\n};\nexport var dateStringOrUndefined = function dateStringOrUndefined(dateOrString, format) {\n //if (dateOrString === undefined || isString(dateOrString)) return dateOrString;\n var dateValue = dateOrString === undefined || isString(dateOrString) ? dayjs(dateOrString).toDate() : dateOrString;\n\n if (format === undefined) {\n return dayjs(dateValue).toDate().toISOString();\n }\n\n return dayjs(dateValue).format(format);\n};\nexport function isInfinity(val) {\n return val === 'Infinity';\n}\nexport function isHeartbeat(val) {\n return val.type === 'HeartBeat';\n}\nexport function isExpiredToken(val) {\n return val.type === 'ExpiredToken';\n}\nexport function isOrderUpdate(val) {\n return val.type === 'OrderUpdate';\n}\nexport function isQuote(val) {\n return val.type === 'Quote';\n}\nexport function isSettlement(val) {\n return val.type === 'Settlement';\n}\nexport function getOrderStatus(val) {\n var match = _.map(OrderStatuses, function (s, k) {\n return {\n status: k,\n value: s\n };\n }).find(function (v) {\n return v.value === val;\n });\n\n return match;\n}","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\nimport _classCallCheck from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport * as tslib_1 from \"tslib\";\nimport { createAxiosClient, formatUrl } from './utilities';\n\nfunction toApiResponse(legacyResponse) {\n return {\n payload: legacyResponse.Payload,\n responseCode: legacyResponse.ResponseCode,\n errors: legacyResponse.Errors\n };\n}\n\nexport var ApiClient =\n/*#__PURE__*/\nfunction () {\n // eslint-disable-next-line @typescript-eslint/explicit-member-accessibility\n function ApiClient(rootUrl, authKey) {\n _classCallCheck(this, ApiClient);\n\n this.rootUrl = rootUrl;\n this.authKey = authKey;\n this.http = createAxiosClient(rootUrl, authKey);\n this.config = {\n headers: {}\n };\n }\n\n _createClass(ApiClient, [{\n key: \"authenticated\",\n value: function authenticated(authKey) {\n this.config.headers['Authorization'] = authKey || this.authKey;\n return this;\n }\n }, {\n key: \"withResponseHandler\",\n value: function withResponseHandler(_ref) {\n var onResponse = _ref.onResponse,\n onResponseError = _ref.onResponseError;\n this.http.interceptors.response.use(onResponse, onResponseError);\n return this;\n }\n }, {\n key: \"get\",\n value: function get(path, params, options) {\n return tslib_1.__awaiter(this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var combinedConfig;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n combinedConfig = Object.assign({}, this.config, options || {});\n return _context.abrupt(\"return\", this.http.get(formatUrl(path, params), combinedConfig).then(function (res) {\n return res.data;\n }).then(toApiResponse));\n\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n }\n }, {\n key: \"getBinary\",\n value: function getBinary(path, params, options) {\n return tslib_1.__awaiter(this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n var combinedConfig;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n combinedConfig = Object.assign({}, this.config, options || {});\n return _context2.abrupt(\"return\", this.http.get(formatUrl(path, params), Object.assign({}, combinedConfig, {\n responseType: 'arraybuffer'\n })));\n\n case 2:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n }\n }, {\n key: \"post\",\n value: function post(path, payload, options) {\n return tslib_1.__awaiter(this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n var _a, queryParams, config, combinedConfig;\n\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _a = options || {\n queryParams: undefined\n }, queryParams = _a.queryParams, config = tslib_1.__rest(_a, [\"queryParams\"]);\n combinedConfig = Object.assign({}, this.config, config);\n return _context3.abrupt(\"return\", this.http.post(formatUrl(path, queryParams || undefined), payload, combinedConfig).then(function (res) {\n return res.data;\n }).then(toApiResponse));\n\n case 3:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, this);\n }));\n }\n }, {\n key: \"put\",\n value: function put(path, payload, options) {\n return tslib_1.__awaiter(this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4() {\n var _a, queryParams, config, combinedConfig;\n\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _a = options || {\n queryParams: undefined\n }, queryParams = _a.queryParams, config = tslib_1.__rest(_a, [\"queryParams\"]);\n combinedConfig = Object.assign({}, this.config, config);\n return _context4.abrupt(\"return\", this.http.put(formatUrl(path, queryParams || undefined), payload, combinedConfig).then(function (res) {\n return res.data;\n }).then(toApiResponse));\n\n case 3:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4, this);\n }));\n }\n }]);\n\n return ApiClient;\n}();\nexport var UiApiClient =\n/*#__PURE__*/\nfunction () {\n // eslint-disable-next-line @typescript-eslint/explicit-member-accessibility\n function UiApiClient(rootUrl, authKey) {\n _classCallCheck(this, UiApiClient);\n\n this.rootUrl = rootUrl;\n this.authKey = authKey;\n this.http = createAxiosClient(rootUrl, authKey);\n this.config = {\n headers: {}\n };\n }\n\n _createClass(UiApiClient, [{\n key: \"authenticated\",\n value: function authenticated(authKey) {\n this.config.headers['Authorization'] = authKey || this.authKey;\n this.config.withCredentials = true;\n return this;\n }\n }, {\n key: \"with\",\n value: function _with(func) {\n this.config = func(this.config);\n this.config.withCredentials;\n return this;\n }\n }, {\n key: \"withResponseHandler\",\n value: function withResponseHandler(_ref2) {\n var onResponse = _ref2.onResponse,\n onResponseError = _ref2.onResponseError;\n this.http.interceptors.response.use(onResponse, onResponseError);\n return this;\n }\n }, {\n key: \"get\",\n value: function get(path, params, options) {\n return tslib_1.__awaiter(this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee5() {\n var combinedConfig;\n return _regeneratorRuntime.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n combinedConfig = Object.assign({}, this.config, options || {});\n return _context5.abrupt(\"return\", this.http.get(formatUrl(path, params), combinedConfig).then(function (res) {\n return res.data;\n }));\n\n case 2:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5, this);\n }));\n }\n }, {\n key: \"post\",\n value: function post(path, payload, options) {\n return tslib_1.__awaiter(this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee6() {\n var _a, queryParams, config, combinedConfig;\n\n return _regeneratorRuntime.wrap(function _callee6$(_context6) {\n while (1) {\n switch (_context6.prev = _context6.next) {\n case 0:\n _a = options || {\n queryParams: undefined\n }, queryParams = _a.queryParams, config = tslib_1.__rest(_a, [\"queryParams\"]);\n combinedConfig = Object.assign({}, this.config, config);\n return _context6.abrupt(\"return\", this.http.post(formatUrl(path, queryParams || undefined), payload, combinedConfig).then(function (res) {\n return res.data;\n }));\n\n case 3:\n case \"end\":\n return _context6.stop();\n }\n }\n }, _callee6, this);\n }));\n }\n }]);\n\n return UiApiClient;\n}();","import { BlockType } from '@tradingblock/types';\nimport { ceil } from 'lodash';\n/**\n * Calculates the minimum block size based on the block type, number of columns, and screen size.\n * @param {BlockType} type - The type of block.\n * @param {number} columns - The number of columns in the grid.\n * @param {SizeType} breakpoint - The current screen size breakpoint.\n * @returns An object containing the minimum height (h) and width (w) for the block.\n */\n\nexport var getMinBlockSize = function getMinBlockSize(type, columns, breakpoint) {\n // Calculate minWidth based on the breakpoint, adjusting for screen size\n var minWidth = breakpoint === 'lg' ? ceil(columns / 3) : breakpoint === 'md' ? ceil(columns / 2) : columns; // 100% width for small screens, 50% for medium screens, 33% for large screens\n\n switch (type) {\n case BlockType.Account:\n // Specific handling for 'Account' block type\n return {\n h: 2,\n w: Math.max(minWidth, 1)\n };\n\n default:\n // Default handling for other block types\n return {\n h: 5,\n w: Math.max(minWidth, 1)\n };\n }\n};\n/**\n * Determines the default block size based on type, columns, and breakpoint.\n * This function uses getMinBlockSize for calculating the minimum required size and adjusts it based on additional rules.\n * @param {BlockType} type - The type of block.\n * @param {number} columns - The number of columns in the grid.\n * @param {SizeType} breakpoint - The current screen size breakpoint.\n * @returns An object containing the adjusted height (h) and width (w) for the block.\n */\n\nexport var getDefaultBlockSize = function getDefaultBlockSize(type, columns, breakpoint, isInvalidLayout) {\n // Get the minimum block size for the given parameters\n var min = getMinBlockSize(type, columns, breakpoint);\n var size = {\n minH: min.h,\n minW: min.w\n };\n\n if (isInvalidLayout) {\n // for lg screens, we need to adjust the width to 50% if the layout is invalid\n if (breakpoint === 'lg') {\n return Object.assign({}, size, {\n h: 5,\n w: Math.max(ceil(columns / 2), min.w)\n });\n } // for anything smaller, we need to adjust the width to 100% if the layout is invalid\n\n\n return Object.assign({}, size, {\n h: 5,\n w: columns\n });\n } // Adjust width for screens smaller than 'lg'\n\n\n if (breakpoint !== 'lg') {\n switch (type) {\n case BlockType.Quote:\n case BlockType.Info:\n case BlockType.PriceChart:\n // Specific handling for Quote, Info, and PriceChart block types\n return Object.assign({}, size, {\n h: 5,\n w: min.w\n });\n\n case BlockType.Account:\n // Specific handling for Account block type\n return Object.assign({}, size, {\n h: 2,\n w: min.w\n });\n\n default:\n // Default handling for other block types on smaller screens\n return Object.assign({}, size, {\n h: 5,\n w: columns\n });\n }\n } // Handling for 'lg' (large) screens and above\n\n\n switch (type) {\n case BlockType.Account:\n // Specific handling for Account block type on larger screens\n return Object.assign({}, size, {\n h: 2,\n w: Math.max(ceil(columns / 3), min.w)\n });\n\n default:\n // Default handling for other block types on larger screens\n return Object.assign({}, size, {\n h: 5,\n w: Math.max(ceil(columns / 2), min.w)\n });\n }\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport { GetPnLUrl } from '../constants';\nimport _ from 'lodash';\nimport dayjs from 'dayjs';\n\nvar get = function get(api) {\n return function (request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var apiResponse, sanitizedPnLItems;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return api.get(GetPnLUrl, request);\n\n case 2:\n apiResponse = _context.sent;\n sanitizedPnLItems = _.map(apiResponse.payload.Items, function (item) {\n var closeAmount = Number(item.CloseAmount);\n var closeOrderId = Number(item.CloseOrderId);\n var costBasis = Number(item.CostBasis);\n var dateClosed = dayjs(item.DateClosed).toDate();\n var dateOpened = dayjs(item.DateOpened).toDate();\n var openOrderId = Number(item.OpenOrderId);\n var quantity = Number(item.Quantity);\n return Object.assign({}, item, {\n CloseAmount: closeAmount,\n CloseOrderId: closeOrderId,\n CostBasis: costBasis,\n DateClosed: dateClosed,\n DateOpened: dateOpened,\n OpenOrderId: openOrderId,\n Quantity: quantity\n });\n });\n return _context.abrupt(\"return\", Object.assign({}, apiResponse, {\n payload: apiResponse.payload ? Object.assign({}, apiResponse.payload, {\n Items: sanitizedPnLItems\n }) : undefined\n }));\n\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n };\n};\n\nexport var pnlHistory = {\n get: get\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\nimport * as tslib_1 from \"tslib\";\nimport _ from 'lodash';\nimport { GenericErrorResponseCode, DefaultAccountDetails } from '@tradingblock/types';\nimport { GetAccountsUrl, GetAccountDetailsUrl, AccountsSearchUrl, GetSubaccountsUrl, SearchAccountUpdatesUrl, GetAccountUpdateDetailsUrl, GetAccountManagementDetailsUrl } from '../constants';\nimport { getIdNumber } from '..';\nimport { dateStringOrUndefined } from '..';\nvar RequestHeaders = {\n headers: {\n Accept: 'application/json'\n }\n};\nexport function accounts(api) {\n var _this = this;\n\n return {\n all: function all() {\n return api.authenticated().get(GetAccountsUrl, {}, RequestHeaders);\n },\n get: function get(acctId) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var accountId;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.prev = 0;\n accountId = getIdNumber(acctId);\n _context.next = 4;\n return api.authenticated().get(GetAccountsUrl, {\n accountId: accountId\n }, RequestHeaders);\n\n case 4:\n return _context.abrupt(\"return\", _context.sent);\n\n case 7:\n _context.prev = 7;\n _context.t0 = _context[\"catch\"](0);\n console.warn('error requesting account by accountId', acctId);\n return _context.abrupt(\"return\", {\n responseCode: GenericErrorResponseCode,\n payload: []\n });\n\n case 11:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[0, 7]]);\n }));\n },\n subaccounts: function subaccounts(acctId) {\n var accountId = getIdNumber(acctId);\n return api.authenticated().get(GetSubaccountsUrl, {\n accountId: accountId\n }, RequestHeaders);\n },\n details: function details(acctId) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n var accountId;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.prev = 0;\n accountId = getIdNumber(acctId);\n _context2.next = 4;\n return api.authenticated().get(GetAccountDetailsUrl, {\n accountId: accountId\n }, RequestHeaders);\n\n case 4:\n return _context2.abrupt(\"return\", _context2.sent);\n\n case 7:\n _context2.prev = 7;\n _context2.t0 = _context2[\"catch\"](0);\n console.warn('error requesting account details by accountId', acctId);\n return _context2.abrupt(\"return\", {\n responseCode: GenericErrorResponseCode,\n payload: DefaultAccountDetails\n });\n\n case 11:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, null, [[0, 7]]);\n }));\n },\n search: function search(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n var searchRequest, result;\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n searchRequest = Object.assign({}, request);\n _context3.next = 3;\n return api.authenticated().get(AccountsSearchUrl, searchRequest, RequestHeaders);\n\n case 3:\n result = _context3.sent;\n return _context3.abrupt(\"return\", result);\n\n case 5:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n },\n update: function update(acctId, request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4() {\n var holder, result;\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n holder = request.holder ? request.holder : 0;\n _context4.next = 3;\n return api.authenticated().put(\"Accounts/UpdateAccount?accountId=\".concat(acctId, \"&holder=\").concat(holder), request, RequestHeaders);\n\n case 3:\n result = _context4.sent;\n return _context4.abrupt(\"return\", result);\n\n case 5:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n },\n getUpdate: function getUpdate(confirm) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee5() {\n return _regeneratorRuntime.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n _context5.next = 2;\n return api.authenticated().get(\"Accounts/GetAccountUpdate?confirm=\".concat(confirm), RequestHeaders);\n\n case 2:\n return _context5.abrupt(\"return\", _context5.sent);\n\n case 3:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5);\n }));\n },\n confirmUpdate: function confirmUpdate(confirm) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee6() {\n return _regeneratorRuntime.wrap(function _callee6$(_context6) {\n while (1) {\n switch (_context6.prev = _context6.next) {\n case 0:\n _context6.next = 2;\n return api.authenticated().put(\"Accounts/ConfirmAccountUpdate?confirm=\".concat(confirm), confirm, RequestHeaders);\n\n case 2:\n return _context6.abrupt(\"return\", _context6.sent);\n\n case 3:\n case \"end\":\n return _context6.stop();\n }\n }\n }, _callee6);\n }));\n },\n getUserUpdates: function getUserUpdates(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee7() {\n var startDate, endDate, searchRequest;\n return _regeneratorRuntime.wrap(function _callee7$(_context7) {\n while (1) {\n switch (_context7.prev = _context7.next) {\n case 0:\n startDate = _.isNil(request.startDate) ? undefined : dateStringOrUndefined(request.startDate, 'YYYY-MM-DD');\n endDate = _.isNil(request.endDate) ? undefined : dateStringOrUndefined(request.endDate, 'YYYY-MM-DD');\n searchRequest = Object.assign({}, request, {\n endDate: endDate,\n startDate: startDate\n });\n _context7.next = 5;\n return api.authenticated().get(SearchAccountUpdatesUrl, searchRequest, RequestHeaders);\n\n case 5:\n return _context7.abrupt(\"return\", _context7.sent);\n\n case 6:\n case \"end\":\n return _context7.stop();\n }\n }\n }, _callee7);\n }));\n },\n getUserUpdateDetails: function getUserUpdateDetails(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee8() {\n var updateRequest;\n return _regeneratorRuntime.wrap(function _callee8$(_context8) {\n while (1) {\n switch (_context8.prev = _context8.next) {\n case 0:\n updateRequest = {\n accountId: request.accountId,\n updateId: request.id\n };\n _context8.next = 3;\n return api.authenticated().get(GetAccountUpdateDetailsUrl, updateRequest, RequestHeaders);\n\n case 3:\n return _context8.abrupt(\"return\", _context8.sent);\n\n case 4:\n case \"end\":\n return _context8.stop();\n }\n }\n }, _callee8);\n }));\n },\n getUserAccountDetails: function getUserAccountDetails(accountId) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee9() {\n return _regeneratorRuntime.wrap(function _callee9$(_context9) {\n while (1) {\n switch (_context9.prev = _context9.next) {\n case 0:\n _context9.next = 2;\n return api.authenticated().get(GetAccountManagementDetailsUrl, accountId, RequestHeaders);\n\n case 2:\n return _context9.abrupt(\"return\", _context9.sent);\n\n case 3:\n case \"end\":\n return _context9.stop();\n }\n }\n }, _callee9);\n }));\n },\n firmApproveUpdate: function firmApproveUpdate(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee10() {\n return _regeneratorRuntime.wrap(function _callee10$(_context10) {\n while (1) {\n switch (_context10.prev = _context10.next) {\n case 0:\n _context10.next = 2;\n return api.authenticated().put(\"Accounts/FirmApproveAccountUpdate?accountId=\".concat(request.accountId, \"&updateId=\").concat(request.updateId), request.request, RequestHeaders);\n\n case 2:\n return _context10.abrupt(\"return\", _context10.sent);\n\n case 3:\n case \"end\":\n return _context10.stop();\n }\n }\n }, _callee10);\n }));\n },\n firmRejectUpdate: function firmRejectUpdate(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee11() {\n return _regeneratorRuntime.wrap(function _callee11$(_context11) {\n while (1) {\n switch (_context11.prev = _context11.next) {\n case 0:\n _context11.next = 2;\n return api.authenticated().put(\"Accounts/FirmRejectAccountUpdate?accountId=\".concat(request.accountId, \"&updateId=\").concat(request.updateId), request.request, RequestHeaders);\n\n case 2:\n return _context11.abrupt(\"return\", _context11.sent);\n\n case 3:\n case \"end\":\n return _context11.stop();\n }\n }\n }, _callee11);\n }));\n },\n entitlements: function entitlements() {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee12() {\n return _regeneratorRuntime.wrap(function _callee12$(_context12) {\n while (1) {\n switch (_context12.prev = _context12.next) {\n case 0:\n _context12.next = 2;\n return api.authenticated().get(\"/User/GetEntitlements\", {}, RequestHeaders);\n\n case 2:\n return _context12.abrupt(\"return\", _context12.sent);\n\n case 3:\n case \"end\":\n return _context12.stop();\n }\n }\n }, _callee12);\n }));\n }\n };\n}","import CryptoJS from 'crypto-js';\nvar UNSAFE_KEY = 'tradingblock';\nexport var encode = function encode(source) {\n return CryptoJS.AES.encrypt(JSON.stringify(source), UNSAFE_KEY).toString();\n};\nexport var decode = function decode(text) {\n try {\n var bytes = CryptoJS.AES.decrypt(text, UNSAFE_KEY);\n var jsonStr = bytes.toString(CryptoJS.enc.Utf8);\n return JSON.parse(jsonStr);\n } catch (err) {\n return undefined;\n }\n};","import jwt from 'jsonwebtoken';\nimport _ from 'lodash';\nexport var verify = function verify(key, value, _ref) {\n var clientType = _ref.clientType,\n algorithms = _ref.algorithms,\n ignoreExpiration = _ref.ignoreExpiration;\n var clientTypes = _.isArray(clientType) ? clientType : [clientType];\n\n if (!value) {\n return Promise.resolve(null);\n }\n\n return new Promise(function (resolve, reject) {\n return jwt.verify(value, key, {\n algorithms: algorithms,\n ignoreExpiration: ignoreExpiration\n }, function (err, payload) {\n if (payload) {\n var _jwt = payload;\n\n if (!clientTypes.includes(_jwt.clientType)) {\n var expected = clientTypes.join('|');\n reject(\"Incorrect clientType '\".concat(_jwt.clientType, \"'. Expected '\").concat(expected, \"'\"));\n }\n\n return resolve(payload);\n } else {\n console.error('jwt verification failed', err);\n return resolve(null);\n }\n });\n });\n};\nexport var sign = function sign(key, value, opts) {\n try {\n return jwt.sign(value, key, opts);\n } catch (err) {\n console.error('jwt signing error', err);\n }\n\n return null;\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport { encode } from '../jsonEncode';\nimport { BaseApiUrl, LoginApiUrl, UIClientTypes } from '@tradingblock/types';\nimport { LogoutTokenUrl, NoPassLoginFinishUrl, NoPassLoginStartUrl } from '../constants';\nimport { verify } from '../utilities/JwtUtilities';\n\nfunction isString(x) {\n return typeof x === 'string';\n}\n\nexport function TryLogin(values, options) {\n return tslib_1.__awaiter(this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var host, loginUrl;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n host = options.host || '';\n loginUrl = host + (options.subdirectory ? options.subdirectory : '') + LoginApiUrl(options.subroot);\n _context.next = 4;\n return fetch(loginUrl, {\n method: 'post',\n body: JSON.stringify({\n encoded: encode(values)\n }),\n headers: {\n 'Content-Type': 'application/json'\n }\n }).then(function (res) {\n return res.json();\n }).then(function (json) {\n return json;\n });\n\n case 4:\n return _context.abrupt(\"return\", _context.sent);\n\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n}\nvar httpOptions = {\n headers: {\n Accept: 'application/json'\n }\n};\nexport var auth = function auth(api) {\n return {\n logout: function logout() {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n return _context2.abrupt(\"return\", api.authenticated().post(LogoutTokenUrl, {}, httpOptions));\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n }\n };\n};\n\nvar tryVerify = function tryVerify(publicKey, token) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n var decoded, jwtValues;\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _context3.prev = 0;\n _context3.next = 3;\n return verify(publicKey, token, {\n clientType: UIClientTypes.dashboard,\n algorithms: ['RS256'],\n ignoreExpiration: false\n });\n\n case 3:\n decoded = _context3.sent;\n\n if (!(!decoded || isString(decoded))) {\n _context3.next = 9;\n break;\n }\n\n console.warn('jwt response was invalid, an object was expected', decoded);\n return _context3.abrupt(\"return\", null);\n\n case 9:\n jwtValues = decoded;\n return _context3.abrupt(\"return\", {\n value: token,\n decoded: jwtValues\n });\n\n case 11:\n _context3.next = 17;\n break;\n\n case 13:\n _context3.prev = 13;\n _context3.t0 = _context3[\"catch\"](0);\n console.warn('token verification failed:', _context3.t0);\n return _context3.abrupt(\"return\", null);\n\n case 17:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, null, [[0, 13]]);\n }));\n};\n\nexport var verifyToken = function verifyToken(id_token, uiApi) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4() {\n var pubKey;\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _context4.next = 2;\n return fetch(\"\".concat(BaseApiUrl, \"/publickey\")).then(function (res) {\n return res.json();\n });\n\n case 2:\n pubKey = _context4.sent;\n _context4.next = 5;\n return tryVerify(pubKey.key, id_token);\n\n case 5:\n return _context4.abrupt(\"return\", _context4.sent);\n\n case 6:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n};\nexport function TryNoPassLogin(values, host, loginUrl, setImage, setRequestInProgress, setNoPassError) {\n return tslib_1.__awaiter(this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee5() {\n var username, password, apiToken, clientType, noPassLoginStartUrl, noPassLoginFinishUrl, data1, authId, image, data2, tokenPayload, uiTokenData, tokenResult, value, decoded;\n return _regeneratorRuntime.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n username = values.username, password = values.password, apiToken = values.apiToken, clientType = values.clientType;\n noPassLoginStartUrl = host + '/' + NoPassLoginStartUrl + '?username=' + values.username;\n noPassLoginFinishUrl = host + '/' + NoPassLoginFinishUrl + '?authid=';\n setRequestInProgress(true);\n _context5.prev = 4;\n _context5.next = 7;\n return fetch(\"\".concat(noPassLoginStartUrl), {\n method: 'post',\n body: JSON.stringify({\n encoded: encode(values)\n }),\n headers: {\n 'Content-Type': 'application/json'\n }\n }).then(function (res) {\n return res.json();\n });\n\n case 7:\n data1 = _context5.sent;\n\n if (!(data1.Payload && data1.Payload.AuthId)) {\n _context5.next = 33;\n break;\n }\n\n authId = data1.Payload.AuthId;\n image = data1.Payload.Image;\n setImage(image);\n _context5.next = 14;\n return fetch(\"\".concat(noPassLoginFinishUrl + authId)).then(function (res) {\n return res.json();\n });\n\n case 14:\n data2 = _context5.sent;\n tokenPayload = data2.Payload;\n\n if (!tokenPayload) {\n _context5.next = 32;\n break;\n }\n\n _context5.next = 19;\n return TryLogin({\n username: username,\n password: '',\n apiToken: tokenPayload,\n clientType: clientType\n }, {\n host: loginUrl\n });\n\n case 19:\n uiTokenData = _context5.sent;\n _context5.next = 22;\n return verifyToken(uiTokenData.token, loginUrl);\n\n case 22:\n tokenResult = _context5.sent;\n\n if (!tokenResult) {\n _context5.next = 29;\n break;\n }\n\n setRequestInProgress(false);\n value = tokenResult.value, decoded = tokenResult.decoded;\n return _context5.abrupt(\"return\", Object.assign({}, decoded, {\n apiToken: tokenPayload,\n token: value\n }));\n\n case 29:\n setNoPassError('NoPass Authentication Failed');\n\n case 30:\n _context5.next = 33;\n break;\n\n case 32:\n setNoPassError('User is not registered or the request has been denied.');\n\n case 33:\n _context5.next = 39;\n break;\n\n case 35:\n _context5.prev = 35;\n _context5.t0 = _context5[\"catch\"](4);\n console.error('⬤ NoPass Authentication Error', _context5.t0);\n setNoPassError(\"NoPass Authentication Error: \".concat(_context5.t0));\n\n case 39:\n setRequestInProgress(false);\n return _context5.abrupt(\"return\", null);\n\n case 41:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5, null, [[4, 35]]);\n }));\n}","import * as _ from 'lodash';\n\nvar getEnvValue = function getEnvValue(key) {\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var keyVal = \"\".concat(prefix).concat(key);\n var strVal = process.env[keyVal];\n return strVal;\n};\n\nfunction getValueOrDefault(key, prefix, getValue) {\n return function (defaultValue) {\n var keyVal = \"\".concat(prefix).concat(key);\n var strVal = process.env[keyVal];\n var envVal = getValue ? getValue(strVal) : strVal;\n return _.isNil(envVal) ? defaultValue : envVal;\n };\n}\n\nvar value = function value(key, getValue) {\n return getValueOrDefault(key, '', getValue);\n};\n\nvar isTrue = function isTrue(value) {\n return value && ['1', 'true', 'True', 'TRUE', 'yes'].includes(value) ? true : false;\n};\n\nexport var ConfigUtils = {\n value: value,\n getValueOrDefault: getValueOrDefault,\n getEnvValue: getEnvValue,\n isTrue: isTrue\n};","import _defineProperty from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/defineProperty\";\nimport _inherits from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/inherits\";\nimport _possibleConstructorReturn from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _getPrototypeOf from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/getPrototypeOf\";\nimport _wrapNativeSuper from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper\";\nimport _classCallCheck from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/createClass\";\n\nfunction _wrapRegExp(re, groups) { _wrapRegExp = function _wrapRegExp(re, groups) { return new BabelRegExp(re, groups); }; var _RegExp = _wrapNativeSuper(RegExp); var _super = RegExp.prototype; var _groups = new WeakMap(); function BabelRegExp(re, groups) { var _this = _RegExp.call(this, re); _groups.set(_this, groups); return _this; } _inherits(BabelRegExp, _RegExp); BabelRegExp.prototype.exec = function (str) { var result = _super.exec.call(this, str); if (result) result.groups = buildGroups(result, this); return result; }; BabelRegExp.prototype[Symbol.replace] = function (str, substitution) { if (typeof substitution === \"string\") { var groups = _groups.get(this); return _super[Symbol.replace].call(this, str, substitution.replace(/\\$<([^>]+)>/g, function (_, name) { return \"$\" + groups[name]; })); } else if (typeof substitution === \"function\") { var _this = this; return _super[Symbol.replace].call(this, str, function () { var args = []; args.push.apply(args, arguments); if (typeof args[args.length - 1] !== \"object\") { args.push(buildGroups(args, _this)); } return substitution.apply(this, args); }); } else { return _super[Symbol.replace].call(this, str, substitution); } }; function buildGroups(result, re) { var g = _groups.get(re); return Object.keys(g).reduce(function (groups, name) { groups[name] = result[g[name]]; return groups; }, Object.create(null)); } return _wrapRegExp.apply(this, arguments); }\n\nimport { ExpiredTokenCode } from '@tradingblock/types';\nimport dayjs from 'dayjs';\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\ndayjs.extend(customParseFormat);\nimport _ from 'lodash';\nimport { toRawOccSymbol, isOCCSymbol } from '..';\nexport var WebsocketFeedParser =\n/*#__PURE__*/\nfunction () {\n function WebsocketFeedParser(value) {\n var _this = this;\n\n _classCallCheck(this, WebsocketFeedParser);\n\n this.str = function (ind) {\n return _this.values[ind];\n };\n\n this.int = function (ind) {\n return parseInt(_this.str(ind));\n };\n\n this.float = function (ind) {\n return parseFloat(_this.str(ind));\n };\n\n this.date = function (ind) {\n return dayjs(_this.str(ind));\n };\n\n this.success = function (ind) {\n return _this.int(ind) === 0 ? true : false;\n };\n\n this.getMessageType = function (typeVal) {\n var typeValInt = _this.int(typeVal);\n\n switch (typeValInt) {\n case 100:\n case 0:\n return 'HeartBeat';\n\n case 1:\n return 'Quote';\n\n case 2:\n return 'Spread';\n\n case 3:\n return 'OrderUpdate';\n\n case 4:\n return 'Settlement';\n\n case 90:\n return 'ExpiredToken';\n\n default:\n return undefined;\n }\n };\n\n this.metadata = function () {\n return {\n success: _this.success(0),\n type: _this.getMessageType(1),\n raw: _this.raw\n };\n };\n\n this.parseExpiredTokenMessage = function () {\n var metadata = _this.metadata();\n\n var Code = _this.int(2) === 10 ? ExpiredTokenCode.DuplicateLogin : ExpiredTokenCode.Unknown;\n return Object.assign({}, metadata, {\n Code: Code,\n Reason: _this.str(3),\n isValid: true\n });\n };\n\n this.parseQuote = function () {\n var metadata = _this.metadata();\n\n var _QuoteTime = {\n QuoteTime: _this.str(2)\n },\n QuoteTime = _QuoteTime.QuoteTime;\n\n var symbol = _this.str(3);\n\n var Symbol = isOCCSymbol(symbol) ? toRawOccSymbol(symbol) : symbol;\n return Object.assign({}, metadata, {\n QuoteTime: QuoteTime,\n Symbol: Symbol,\n LastTradePrice: _this.float(4),\n BidPrice: _this.float(5),\n AskPrice: _this.float(6),\n NetChange: _this.float(7),\n High: _this.float(8),\n Low: _this.float(9),\n Volume: _this.float(10),\n ChangePercentage: _this.float(11),\n BidSize: _this.float(12),\n AskSize: _this.float(13),\n isValid: dayjs(QuoteTime, 'MM/DD/YYYY HH:mm:ss').isValid() && dayjs(QuoteTime, 'MM/DD/YYYY HH:mm:ss').year() >= dayjs().year()\n });\n };\n\n this.parseOrderUpdate = function () {\n var metadata = _this.metadata();\n\n return Object.assign({}, metadata, {\n AccountId: _this.int(2),\n OrderId: _this.int(3),\n OrderTime: _this.date(4).toDate(),\n Symbol: _this.str(5),\n OrderQuantity: _this.float(6),\n FilledQuantity: _this.float(7),\n OrderPrice: _this.float(8),\n OrderAction: _this.str(9),\n OrderStatus: _this.int(10),\n Expiration: _this.date(11).toDate(),\n CallPut: _this.str(12),\n Strike: _this.float(13),\n isValid: true\n });\n };\n\n this.parseSettlement = function () {\n var metadata = _this.metadata();\n\n return Object.assign({}, metadata, {\n CloseDate: _this.str(2),\n Symbol: _this.str(3),\n ClosePrice: _this.float(4),\n ClosePriceTMinus2: _this.float(5),\n IsSettlementSet: true,\n isValid: true\n });\n };\n\n this.parseHeartbeat = function () {\n var metadata = _this.metadata();\n\n return Object.assign({}, metadata, {\n isValid: true\n });\n };\n\n this.parseMap = {\n Quote: this.parseQuote,\n HeartBeat: this.parseHeartbeat,\n OrderUpdate: this.parseOrderUpdate,\n ExpiredToken: this.parseExpiredTokenMessage,\n Spread: this.parseUnknown,\n Settlement: this.parseSettlement\n };\n\n this.parse = function () {\n var parser = _this.parseMap;\n\n var metadata = _this.metadata();\n\n if (parser && metadata && metadata.type && parser[metadata.type]) {\n return parser[metadata.type]();\n }\n\n return undefined;\n };\n\n this.values = value.split('|').reduce(function (acc, vv) {\n var matchVal = vv.match(_wrapRegExp(/(\\d+)=(.*)/, {\n fieldkey: 1,\n fieldvalue: 2\n }));\n\n if (_.isNil(matchVal)) {\n return acc;\n } // vv.replace(/(\\d+)=/, '')\n\n\n var _matchVal$groups = matchVal.groups,\n fieldkey = _matchVal$groups.fieldkey,\n fieldvalue = _matchVal$groups.fieldvalue;\n\n var fKey = _.parseInt(fieldkey);\n\n if (_.isNil(fKey) || _.isNaN(fKey)) {\n return acc;\n }\n\n return Object.assign({}, acc, _defineProperty({}, fKey, fieldvalue));\n }, {});\n this.raw = value; // if (vals.length < 12) {\n // console.warn('quote string from feed has less fields than expected', value);\n // }\n }\n\n _createClass(WebsocketFeedParser, [{\n key: \"parseUnknown\",\n value: function parseUnknown() {\n var metadata = this.metadata();\n return Object.assign({}, metadata, {\n isValid: true\n });\n }\n }]);\n\n return WebsocketFeedParser;\n}();","import { debug } from 'debug';\nexport var logger = function logger(subname) {\n var log = debug(\"tb\");\n\n if (subname) {\n return log.extend(subname);\n }\n\n return log;\n};\nexport var setLogLevel = function setLogLevel(val) {\n return debug.enable(val);\n};","import { AssetType, SymbolTypes, OptionExpirationType, OptionType } from '@tradingblock/types';\nimport _ from 'lodash';\nimport { SymbolsWithAMPMExpirations } from '../constants';\nimport { isString } from '../utilities';\nexport var AssetTypeToSymbolType = function AssetTypeToSymbolType(assType) {\n switch (assType) {\n case AssetType.Index:\n {\n return SymbolTypes.index;\n }\n\n case AssetType.Equity:\n {\n return SymbolTypes.stock;\n }\n\n default:\n {\n return AssetType[assType];\n }\n }\n};\n\nvar isIndex = function isIndex(symbol) {\n return _.first(symbol) === '$';\n};\n\nexport var isIndexSymbol = function isIndexSymbol(symbol) {\n return isString(symbol) ? isIndex(symbol) : symbol ? symbol.type === SymbolTypes.index || isIndex(symbol.symbol) : false;\n};\nexport var toAssetSymbol = function toAssetSymbol(symbol, assetType, symbolType, partSymb) {\n return Object.assign({\n rootSymbol: symbol,\n underlyingSymbol: symbol,\n name: symbol,\n provider: ''\n }, partSymb || {}, {\n symbol: symbol,\n type: symbolType,\n assetType: assetType\n });\n};\nexport var toAssetSymbolBySymbolType = function toAssetSymbolBySymbolType(symbol, symbolType, partSymb) {\n return toAssetSymbol(symbol, symbolType === SymbolTypes.index ? AssetType.Index : AssetType.Equity, symbolType, partSymb);\n};\nexport var occParseRegex = /([\\w]{1,4})[\\s]*(\\d{2})(\\d{2})(\\d{2})([PC])(\\d*)/;\nexport var isOCCSymbol = function isOCCSymbol(occSymbol) {\n var data = _.replace(occSymbol, '.', '').match(occParseRegex);\n\n if (data && data && data.length >= 5) {\n return true;\n }\n\n return false;\n};\nexport var deriveRootSymbol = function deriveRootSymbol(symbol) {\n if (isOCCSymbol(symbol)) {\n var data = symbol.match(occParseRegex);\n\n if (data && data && data.length >= 5) {\n return data[1];\n }\n } else {\n return symbol;\n }\n};\nexport var deriveOptionExpirationType = function deriveOptionExpirationType(symbol, underlyingSymbol) {\n if (isOCCSymbol(symbol)) {\n if (SymbolsWithAMPMExpirations.includes(underlyingSymbol)) {\n var cleanRootSymbol = deriveRootSymbol(symbol).trim().toLocaleLowerCase();\n\n var cleanUnderlying = _.replace(underlyingSymbol, '$', '').trim().toLocaleLowerCase();\n\n return cleanRootSymbol !== cleanUnderlying ? OptionExpirationType.PM : OptionExpirationType.AM;\n } else {\n return OptionExpirationType.PM;\n }\n }\n\n return undefined;\n};\nexport var isSymbolEqual = function isSymbolEqual(one, two) {\n if (_.isNil(one) || _.isNil(two)) {\n return false;\n }\n\n return one.underlyingSymbol === two.underlyingSymbol && one.rootSymbol === two.rootSymbol && one.symbol === two.symbol;\n};\nexport var parseOccSymbol = function parseOccSymbol(occSymbol) {\n var data = occSymbol.match(occParseRegex);\n\n if (data && data && data.length >= 5) {\n var symbol = data[1]; // since year match is 2 digits, ensure full year is 20** (otherwise Date will parse 2 digit year as 19**)\n\n var year = 2000 + parseInt(data[2]); // Date object uses zero-indexed month\n\n var month = parseInt(data[3]) - 1;\n var day = parseInt(data[4]);\n var callput = data[5];\n var price = data[6];\n return {\n symbol: symbol,\n expiration: new Date(year, month, day),\n option: callput ? callput.toLocaleLowerCase() === 'p' ? OptionType.Put : OptionType.Call : undefined,\n strike: price ? parseInt(price) / 1000 : undefined,\n assetType: AssetType.Option\n };\n } else {\n return {\n symbol: occSymbol,\n assetType: AssetType.Equity\n };\n }\n};\nexport function isOptionSymbol(val) {\n return parseOccSymbol(val).assetType === AssetType.Option;\n}\nexport function isOptionAsset(val) {\n return val.assetType === AssetType.Option;\n}\nexport function isMutualFundSymbol(val) {\n return val.startsWith(':');\n}","import _toConsumableArray from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/toConsumableArray\";\nimport _ from 'lodash';\nimport { StrikeRules, AssetType, OptionType } from '@tradingblock/types';\nimport { findDuplicateLegs } from '..';\n\nvar buildStrikeErrors = function buildStrikeErrors(strikes, sch) {\n return function (message) {\n var errs = [{\n keyword: 'strike',\n message: message,\n params: {\n strikes: strikes,\n rule: StrikeRules[sch]\n }\n }]; // currentValidatorFunc.errores = currentValidatorFunc.errores ? [...currentValidatorFunc.errores, ...errs] : errs;\n\n return errs;\n };\n};\n\nvar minStrike = function minStrike(legs, type) {\n return _(legs).filter(function (l) {\n return type ? l.OptionType === type : true;\n }).map(function (l) {\n return l.Strike;\n }).min();\n};\n\nvar maxStrike = function maxStrike(legs, type) {\n return _(legs).filter(function (l) {\n return type ? l.OptionType === type : true;\n }).map(function (l) {\n return l.Strike;\n }).max();\n};\n\nvar validateRules = function validateRules(rule, legs, strikes, getErrors) {\n var strikesShouldBeDifferent = rule === StrikeRules.DifferentStrikes || rule === StrikeRules.DifferentStrikesDescending;\n\n var optionLegs = _.filter(legs, function (l) {\n return l && l.AssetType === AssetType.Option && _.isNumber(l.Strike);\n });\n\n var getStrikeErrors = getErrors;\n\n if (strikesShouldBeDifferent) {\n var isValid = _.uniq(strikes).length === optionLegs.length;\n\n if (!isValid) {\n return getStrikeErrors('Strikes must be different.');\n }\n } else if (rule === StrikeRules.EquidistantStrikes) {\n var distances = _.reduce(strikes, function (acc, currVal, ind) {\n var nextVal = strikes[ind + 1];\n\n if (nextVal === undefined) {\n return acc;\n }\n\n var vals = [currVal, nextVal];\n\n var dist = _.max(vals) - _.min(vals);\n\n return [].concat(_toConsumableArray(acc), [dist]);\n }, []);\n\n var _isValid = _.uniq(strikes).length >= 2 && _.uniq(distances).length === 1;\n\n var hasDuplicateLegs = findDuplicateLegs(optionLegs).length > 0;\n\n if (!_isValid) {\n return getStrikeErrors('Strikes must be equidistant.');\n }\n\n if (hasDuplicateLegs) {\n return getStrikeErrors('Cannot have two identical legs in the same order.');\n }\n } else if (rule === StrikeRules.IronCondor || rule === StrikeRules.IronButterfly) {\n var K1 = optionLegs[1].Strike;\n var K2 = optionLegs[0].Strike;\n var K3 = optionLegs[2].Strike;\n var K4 = optionLegs[3].Strike;\n var isButterfly = rule === StrikeRules.IronButterfly;\n var isCondor = rule === StrikeRules.IronCondor; //K1 < K2, K3 > K4; K2 - K1 = K3 - K4; K1 > K3\n\n if (K1 >= K2) {\n return getStrikeErrors(\"First CALL strike (\".concat(K2, \") must be greater than second CALL strike (\").concat(K1, \")\"));\n } else if (K4 >= K3) {\n return getStrikeErrors(\"Second PUT strike (\".concat(K4, \") must be less than first PUT strike (\").concat(K3, \")\"));\n } else if (isCondor && K3 >= K1) {\n return getStrikeErrors(\"Lowest CALL strike (\".concat(K1, \") must be greater than highest PUT strike (\").concat(K3, \")\"));\n } else if (isButterfly && K3 !== K1) {\n return getStrikeErrors(\"Lowest CALL strike (\".concat(K1, \") must be equal to highest PUT strike (\").concat(K3, \")\"));\n } else if (K2 - K1 !== K3 - K4) {\n return getStrikeErrors(\"The difference between CALL strikes (\".concat(K2 - K1, \") must equal the difference between PUT strikes (\").concat(K3 - K4, \")\"));\n }\n } else if (rule === StrikeRules.SameStrikes) {\n var _isValid2 = _.uniq(strikes).length === 1;\n\n if (!_isValid2) {\n return getStrikeErrors('Strikes must be the same');\n }\n } else if (rule === StrikeRules.CallHigherThanPut) {\n var putLeg = _.find(optionLegs, function (l) {\n return l.OptionType === OptionType.Put;\n });\n\n var callLeg = _.find(optionLegs, function (l) {\n return l.OptionType === OptionType.Call;\n });\n\n var callPutErrors = undefined;\n\n if (!putLeg || !callLeg) {\n callPutErrors = getStrikeErrors('Must have PUT leg and CALL leg');\n }\n\n var putVal = putLeg.Strike;\n var callVal = callLeg.Strike;\n\n if (!_.isFinite(putVal) || !_.isFinite(callVal)) {\n callPutErrors = getStrikeErrors('Strikes must have finite values');\n }\n\n if (putVal >= callVal) {\n callPutErrors = getStrikeErrors('CALL strike must be greater than PUT strike');\n }\n\n if (callPutErrors) {\n return callPutErrors;\n }\n } else if (rule === StrikeRules.IncreasingOrder || rule === StrikeRules.DecreasingOrder) {\n var isInc = rule === StrikeRules.IncreasingOrder;\n\n var correctOrder = _.every(strikes, function (strike, ind) {\n if (ind === 0) {\n return true;\n }\n\n var prevStrike = strikes[ind - 1];\n return isInc ? prevStrike < strike : prevStrike > strike;\n });\n\n if (!correctOrder) {\n return getStrikeErrors(\"Strikes must be in \".concat(isInc ? 'ascending' : 'descending', \" order\"));\n }\n } else if (rule === StrikeRules.EquidistantStrikesByTwos) {\n var firstGroup = _.take(strikes, 2);\n\n var firstDiff = _.max(firstGroup) - _.min(firstGroup);\n\n var secondGroup = _.drop(strikes, 2);\n\n var secondDiff = _.max(secondGroup) - _.min(secondGroup);\n\n if (firstDiff !== secondDiff) {\n return getStrikeErrors(\"Distance between first strikes (\".concat(firstDiff, \") isnt equal to distance between last strikes (\").concat(secondDiff, \")\"));\n }\n } else if (rule === StrikeRules.LowestCallEqualsHighestPut) {\n var lowestCall = minStrike(optionLegs, OptionType.Call);\n var highestPut = maxStrike(optionLegs, OptionType.Put);\n\n if (lowestCall !== highestPut) {\n return getStrikeErrors(\"Lowest CALL Strike must equal highest PUT Strike\");\n }\n } else if (rule === StrikeRules.LowestCallGreaterThanHighestPut) {\n var _lowestCall = minStrike(optionLegs, OptionType.Call);\n\n var _highestPut = maxStrike(optionLegs, OptionType.Put);\n\n if (_lowestCall <= _highestPut) {\n return getStrikeErrors(\"Lowest CALL Strike must be greater than highest PUT Strike\");\n }\n }\n\n return null;\n};\n\nvar tryValidateRules = function tryValidateRules(rule, legs) {\n var optionLegs = _.filter(legs, function (l) {\n return l && l.AssetType === AssetType.Option && _.isNumber(l.Strike);\n });\n\n var strikes = optionLegs.map(function (l) {\n return l.Strike;\n });\n var getStrikeErrors = buildStrikeErrors(strikes, rule);\n\n try {\n return validateRules(rule, legs, strikes, getStrikeErrors);\n } catch (err) {\n return getStrikeErrors(\"Error occurred while validating: \".concat(JSON.stringify(err)));\n }\n};\n\nexport var strikeValidation = function strikeValidation(sch) {\n return function strikeValidation(data) {\n if (_.get(strikeValidation, 'errors', null) === null) {}\n\n var legs = data;\n var rules = _.isArray(sch) ? sch : [sch];\n\n var errors = _.reduce(rules, function (errors, rule) {\n var ruleErrors = tryValidateRules(rule, legs);\n\n if (ruleErrors === null) {\n return errors;\n }\n\n return _.concat(errors, ruleErrors);\n }, []);\n\n if (errors.length > 0) {\n strikeValidation['errors'] = errors;\n return false;\n }\n\n return true;\n };\n};","import _ from 'lodash';\nimport { OptionType, DirectionRules, OrderAction } from '@tradingblock/types';\n\nvar buildDirectionErrors = function buildDirectionErrors(strikes, sch) {\n return function (message) {\n var errs = [{\n keyword: 'action',\n message: message,\n params: {\n strikes: strikes,\n rule: DirectionRules[sch]\n }\n }]; // currentValidatorFunc.errores = currentValidatorFunc.errores ? [...currentValidatorFunc.errores, ...errs] : errs;\n\n return errs;\n };\n};\n\nvar validateRules = function validateRules(rule, legs, actions, getErrors) {\n var shouldBeDifferent = rule === DirectionRules.DifferentDirections;\n\n if (shouldBeDifferent) {\n var isValid = _.uniq(actions).length === legs.length;\n\n if (!isValid) {\n return getErrors('Actions must be different');\n }\n } else if (rule === DirectionRules.SameDirections) {\n var _isValid = _.uniq(actions).length === 1;\n\n if (!_isValid) {\n return getErrors('Actions must be the same');\n }\n } else if (rule === DirectionRules.Butterfly) {\n // butterfly should have two legs with the same action and one leg with the opposite action\n var actionCounts = _.countBy(actions);\n\n var _isValid2 = actionCounts[OrderAction.Buy] === 2 && actionCounts[OrderAction.Sell] === 1 || actionCounts[OrderAction.Buy] === 1 && actionCounts[OrderAction.Sell] === 2; // in addition, the leg with the opposite action must be the leg with the highest spread ratio\n\n\n var legsBySpreadRatio = _.sortBy(legs, function (l) {\n return l.SpreadRatio;\n });\n\n var highestSpreadRatioLeg = _.last(legsBySpreadRatio);\n\n var otherLegs = _.filter(legsBySpreadRatio, function (l) {\n return l !== highestSpreadRatioLeg;\n }); // if the highest spread ratio leg is a buy, then the other two legs must be sells and vice versa\n\n\n var isValidLegs = highestSpreadRatioLeg.Action === OrderAction.Buy ? otherLegs[0].Action === OrderAction.Sell && otherLegs[1].Action === OrderAction.Sell : otherLegs[0].Action === OrderAction.Buy && otherLegs[1].Action === OrderAction.Buy;\n\n if (!_isValid2) {\n return getErrors('Butterfly must have two legs with the same action and one leg with the opposite action');\n }\n\n if (!isValidLegs) {\n return getErrors('The leg with the highest spread ratio must be the opposite action of the other two legs');\n }\n } else if (rule === DirectionRules.Condor) {\n // condor should have two legs with the same action and two legs with the opposite action\n var _actionCounts = _.countBy(actions);\n\n var _isValid3 = _actionCounts[OrderAction.Buy] === 2 && _actionCounts[OrderAction.Sell] === 2; // in addition, the middle two strikes must have the same action\n\n\n var legsByStrike = _.sortBy(legs, function (l) {\n return l.Strike;\n });\n\n var middleTwoStrikes = _.slice(legsByStrike, 1, 3);\n\n var middleTwoStrikesActions = _.map(middleTwoStrikes, function (l) {\n return l.Action;\n });\n\n var isValidStrikes = _.uniq(middleTwoStrikesActions).length === 1;\n\n if (!_isValid3) {\n return getErrors('Condor must have two legs with the same action and two legs with the opposite action');\n }\n\n if (!isValidStrikes) {\n return getErrors('The middle two strikes must have the same action');\n }\n } else if (rule === DirectionRules.Iron) {\n // iron butterfly/condor consists of four legs, 2 calls and 2 puts\n // the calls should have opposite actions as should the puts\n // Sell Call, Buy Call, Sell Put, Buy Put\n var callLegs = _.filter(legs, function (l) {\n return l.OptionType === OptionType.Call;\n });\n\n var putLegs = _.filter(legs, function (l) {\n return l.OptionType === OptionType.Put;\n });\n\n var callActions = _.map(callLegs, function (l) {\n return l.Action;\n });\n\n var putActions = _.map(putLegs, function (l) {\n return l.Action;\n });\n\n var _isValid4 = callActions.length === 2 && putActions.length === 2 && callActions[0] !== callActions[1] && putActions[0] !== putActions[1];\n\n if (!_isValid4) {\n return getErrors('Iron Butterfly must have two calls and two puts with opposite actions');\n }\n }\n\n return null;\n};\n\nvar tryValidateRules = function tryValidateRules(rule, legs) {\n var actions = legs.map(function (l) {\n return l.Action;\n });\n var getStrikeErrors = buildDirectionErrors(actions, rule);\n\n try {\n return validateRules(rule, legs, actions, getStrikeErrors);\n } catch (err) {\n return getStrikeErrors(\"Error occurred while validating: \".concat(JSON.stringify(err)));\n }\n};\n\nexport var directionValidation = function directionValidation(sch) {\n return function directionValidation(data) {\n if (_.get(directionValidation, 'errors', null) === null) {}\n\n var legs = data;\n var rules = _.isArray(sch) ? sch : [sch];\n\n var errors = _.reduce(rules, function (errors, rule) {\n var ruleErrors = tryValidateRules(rule, legs);\n\n if (ruleErrors === null) {\n return errors;\n }\n\n return _.concat(errors, ruleErrors);\n }, []);\n\n if (errors.length > 0) {\n directionValidation['errors'] = errors;\n return false;\n }\n\n return true;\n };\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport Ajv from 'ajv'; // import betterAjvErrors from 'better-ajv-errors';\n\nimport { AssetType, OrderAction, ExpirationRules } from '@tradingblock/types';\nimport _ from 'lodash';\nimport dayjs from 'dayjs';\nimport { strikeValidation } from './strikeValidator';\nimport { validateSpreadRatio } from './spreadRatioValidation';\nimport { directionValidation } from './directionValidator';\nexport var SchemaValidator = function SchemaValidator(initial) {\n var ajv = initial || new Ajv({\n allErrors: true\n }); // options can be passed, e.g. {allErrors: true}\n\n ajv.addKeyword('strike', {\n type: 'array',\n compile: function compile(sch) {\n return strikeValidation(sch);\n },\n errors: true\n });\n ajv.addKeyword('action', {\n type: 'array',\n compile: function compile(sch) {\n return directionValidation(sch);\n },\n errors: true\n });\n ajv.addKeyword('ratio', {\n type: 'array',\n compile: function compile(sch) {\n return function validate(data) {\n var errors = validateSpreadRatio(sch)(data);\n\n if (errors !== null) {\n validate['errors'] = errors;\n return false;\n }\n\n return true;\n };\n },\n errors: true\n });\n ajv.addKeyword('expiration', {\n type: 'array',\n compile: function compile(sch) {\n return function validateExpiration(data) {\n if (_.get(validateExpiration, 'errors', null) === null) {\n validateExpiration['errors'] = [];\n }\n\n var legs = data;\n\n if (sch === ExpirationRules.SameExpiry) {\n var optionLegs = _.filter(legs, function (l) {\n return l && l.AssetType === AssetType.Option;\n });\n\n var expirations = _.filter(optionLegs, function (l) {\n return l.Expiration !== undefined && dayjs(l.Expiration.date) && dayjs(l.Expiration.date).isValid();\n }).map(function (l) {\n return dayjs(l.Expiration.date).format('YYYY/MM/DD');\n });\n\n if (_.uniq(expirations).length !== 1) {\n validateExpiration['errors'].push({\n keyword: 'expiration',\n message: \"Leg Expirations must be the same. Values: [\".concat(expirations.join(','), \"]\"),\n params: {\n expirations: expirations,\n rule: ExpirationRules[sch]\n }\n });\n }\n } else if (sch === ExpirationRules.DifferentExpiries) {\n var _optionLegs = _.filter(legs, function (l) {\n return l && l.AssetType === AssetType.Option;\n });\n\n var _expirations = _.filter(_optionLegs, function (l) {\n return l.Expiration !== undefined && dayjs(l.Expiration.date) && dayjs(l.Expiration.date).isValid();\n }).map(function (l) {\n return dayjs(l.Expiration.date).format('YYYY/MM/DD');\n });\n\n if (_.uniq(_expirations).length !== _optionLegs.length) {\n // if the root symbols are different, then we need to have the message read 'Expiration dates must differ.';\n // otherwise, we need to have the message read 'Expirations must differ.'\n var rootSymbols = _.uniq(_optionLegs.map(function (l) {\n return l.Expiration && l.Expiration.rootSymbol;\n }));\n\n var rootSymbol = rootSymbols.length === 1 ? rootSymbols[0] : undefined;\n var message = !rootSymbol ? \"Expiration dates must differ.\" : \"Expirations must differ.\";\n validateExpiration['errors'].push({\n keyword: 'expiration',\n message: message,\n params: {\n expirations: _expirations,\n rule: ExpirationRules[sch]\n }\n });\n }\n } else if (sch === ExpirationRules.BuyWithLaterSellWithSooner) {\n var buyLeg = _.find(legs, function (l) {\n return l.AssetType === AssetType.Option && l.Action === OrderAction.Buy;\n });\n\n var sellLeg = _.find(legs, function (l) {\n return l.AssetType === AssetType.Option && l.Action === OrderAction.Sell;\n });\n\n var buyExpiration = buyLeg ? buyLeg.Expiration : undefined;\n var sellExpiration = sellLeg ? sellLeg.Expiration : undefined;\n\n if (!buyExpiration || !sellExpiration) {\n validateExpiration['errors'].push({\n keyword: 'expiration',\n message: \"Order must have both buy and sell legs with valid expirations\",\n params: {\n buyExpiration: buyExpiration,\n sellExpiration: sellExpiration,\n legs: legs\n }\n });\n } else if (!dayjs(buyLeg.Expiration.date).isAfter(sellLeg.Expiration.date)) {\n validateExpiration['errors'].push({\n keyword: 'expiration',\n message: \"Buy leg expiration must be after sell leg expiration\",\n params: {\n buyExpiration: buyExpiration,\n sellExpiration: sellExpiration,\n legs: legs\n }\n });\n }\n }\n\n return validateExpiration['errors'].length === 0;\n };\n },\n errors: true,\n metaSchema: {\n type: 'number'\n }\n });\n return ajv;\n};\nexport var tryValidate = function tryValidate(ajv, schema, data) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var validate, validationRes, valid, errorMessage;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n validate = ajv.compile(schema);\n validationRes = validate(data);\n\n if (!(typeof validationRes === 'boolean')) {\n _context.next = 6;\n break;\n }\n\n _context.t0 = validationRes;\n _context.next = 9;\n break;\n\n case 6:\n _context.next = 8;\n return validationRes;\n\n case 8:\n _context.t0 = _context.sent;\n\n case 9:\n valid = _context.t0;\n // var errorMessage = valid ? undefined : betterAjvErrors(schema, data, validate.errors);\n errorMessage = undefined;\n return _context.abrupt(\"return\", {\n valid: valid,\n value: data,\n errors: validate.errors,\n errorMessage: errorMessage,\n reason: ajv.errorsText(validate.errors),\n ajv: validate\n });\n\n case 12:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n};","import { AssetType, SizeRatio } from '@tradingblock/types';\nimport _ from 'lodash';\nexport var validateSpreadRatio = function validateSpreadRatio(sch) {\n return function (data) {\n var ratios = _.map(data, function (l) {\n return l.SpreadRatio;\n });\n\n var shareRatio = _.first(data.filter(function (l) {\n return l.AssetType === AssetType.Equity;\n }).map(function (l) {\n return l.SpreadRatio;\n }));\n\n var optionRatios = data.filter(function (l) {\n return l.AssetType === AssetType.Option;\n }).map(function (l) {\n return l.SpreadRatio;\n });\n\n var getError = function getError(message) {\n return {\n keyword: 'spreadratio',\n message: message,\n params: {\n shareRatio: shareRatio,\n optionRatios: optionRatios\n }\n };\n };\n\n if (sch === SizeRatio.HundredToOneToOne || sch === SizeRatio.HundredToOne) {\n if (!shareRatio) {\n return getError('Order must have share leg');\n }\n\n if (optionRatios.length < 1) {\n return getError('Order must have option leg');\n }\n\n var optRatio = _.max(optionRatios);\n\n if (shareRatio / optRatio !== 100) {\n return getError(\"Share ratio/Option ratio isnt 100:1 - \".concat(shareRatio / optRatio));\n }\n } else if ([SizeRatio.OneToOne, SizeRatio.OneToOneToOneToOne].includes(sch)) {\n if (_.uniq(ratios).length !== 1) {\n return getError('Ratios are not 1:1');\n }\n } else if (sch === SizeRatio.OneTwoOne) {\n if (_.uniq(ratios).length !== 2) {\n return getError('There must only be 2 unique ratios');\n }\n\n if (_.max(ratios) / _.min(ratios) !== 2) {\n return getError('Ratios must be 2:1');\n }\n }\n\n return null;\n };\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\nimport _slicedToArray from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/slicedToArray\";\nimport _toConsumableArray from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/toConsumableArray\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport _ from 'lodash';\nimport { Durations, AssetType, OrderAction, PositionEffect, OrderActionDirection, SizeRatio } from '@tradingblock/types';\nimport { tryValidate, SchemaValidator } from './strategyValidator';\nexport var baseOccPattern = function baseOccPattern() {\n var optionType = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'PC';\n return new RegExp('([\\\\s]{3})([\\\\w]{3,6})(\\\\d{2})(\\\\d{2})(\\\\d{2})([' + optionType + '])(\\\\d{5,8})');\n}; //export const occSymbolPattern = /([\\s]{3})([\\w]{3,6})(\\d{2})(\\d{2})(\\d{2})([PC])(\\d{5,8})/g;\n\nexport var occSymbolPattern = baseOccPattern();\nexport var legSchemaBuilder = function legSchemaBuilder(_ref, sizeRatio) {\n var spreadRatio = _ref.spreadRatio,\n assetType = _ref.assetType,\n action = _ref.action,\n optionType = _ref.optionType;\n var requiredFields = ['UnderlyingSymbol', 'AssetType', 'Action', 'PositionEffect', 'Symbol'];\n\n if (assetType === AssetType.Option) {\n requiredFields = [].concat(_toConsumableArray(requiredFields), ['Expiration', 'Strike']);\n }\n\n var isSpread = sizeRatio !== SizeRatio.NA;\n\n if (isSpread) {\n requiredFields = [].concat(_toConsumableArray(requiredFields), ['SpreadRatio']);\n }\n\n var legSchema = {\n type: 'object',\n required: requiredFields,\n properties: {\n UnderlyingSymbol: {\n type: 'string'\n },\n SpreadRatio: isSpread ? {\n type: 'number'\n } : {\n anyOf: [{\n type: 'number'\n }, {\n const: undefined\n }]\n },\n AssetType: {\n enum: _.isArray(assetType) ? assetType : [assetType]\n },\n Strike: assetType === AssetType.Option ? {\n type: 'number'\n } : {\n const: undefined\n },\n Action: _.isArray(action) ? {\n enum: action\n } : {\n type: 'number'\n },\n PositionEffect: {\n enum: [PositionEffect.Open, PositionEffect.Close]\n },\n // Strike: assetType === AssetType.Option ? { type: 'number' } : undefined,\n Symbol: {\n type: 'string'\n },\n OptionType: {\n const: optionType\n }\n }\n };\n return legSchema;\n};\n\nvar orderSchemaBuilder = function orderSchemaBuilder(orderClass, legSchema, spreadRatio, moreProperties) {\n var _a = _.merge(moreProperties, {\n Strike: undefined,\n Expiration: undefined,\n Direction: undefined\n }),\n Strike = _a.Strike,\n Expiration = _a.Expiration,\n Direction = _a.Direction,\n rest = tslib_1.__rest(_a, [\"Strike\", \"Expiration\", \"Direction\"]);\n\n return {\n required: ['OrderClass', 'Duration', 'Legs'],\n properties: Object.assign({\n OrderClass: {\n const: orderClass\n },\n Duration: {\n enum: [Durations.GTC, Durations.Day, Durations.Manual]\n },\n Legs: {\n minItems: legSchema.length,\n maxItems: legSchema.length,\n type: 'array',\n items: _.map(legSchema, function (l) {\n return legSchemaBuilder(l, spreadRatio);\n }),\n strike: Strike,\n expiration: Expiration,\n ratio: spreadRatio,\n action: Direction\n }\n }, rest || {})\n };\n};\n\nfunction isActionLegSchema(val) {\n if (val && _.get(val, 'action', false)) {\n return true;\n }\n\n return false;\n}\n\nvar buildValidationSchemas = function buildValidationSchemas(strategy) {\n var legsDef = _.map(strategy.profile.Legs, function (l) {\n var legSchem = {\n assetType: l.AssetType,\n spreadRatio: l.SpreadRatio,\n optionType: l.OptionType\n };\n\n if (l.Direction) {\n return Object.assign({}, legSchem, {\n action: l.Direction === OrderActionDirection.Long ? OrderAction.Buy : OrderAction.Sell\n });\n }\n\n return legSchem;\n });\n\n var additionalRules = strategy.profile.Rules ? {\n Strike: strategy.profile.Rules.Strike,\n Expiration: strategy.profile.Rules.Expiration,\n Direction: strategy.profile.Rules.Direction\n } : {};\n var orderSchema = orderSchemaBuilder(strategy.profile.OrderClass, legsDef, strategy.profile.Rules.SpreadRatio, additionalRules);\n var inverseOrderSchema = strategy.profile.Bidirectional ? orderSchemaBuilder(strategy.profile.OrderClass, legsDef.map(function (ll) {\n if (isActionLegSchema(ll)) {\n return Object.assign({}, ll, {\n action: ll.action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy\n });\n }\n\n return ll;\n }), strategy.profile.Rules.SpreadRatio, additionalRules) : undefined;\n return {\n buySchema: orderSchema,\n sellSchema: inverseOrderSchema\n };\n};\n\nexport var tryValidateOrderForStrategy = function tryValidateOrderForStrategy(ajv, strategy, order) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var schemas, _ref2, _ref3, validationResults, inverseValidationResults;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n schemas = buildValidationSchemas(strategy);\n _context.next = 3;\n return Promise.all([tryValidate(ajv, schemas.buySchema, order), schemas.sellSchema ? tryValidate(ajv, schemas.sellSchema, order) : Promise.resolve(undefined)]);\n\n case 3:\n _ref2 = _context.sent;\n _ref3 = _slicedToArray(_ref2, 2);\n validationResults = _ref3[0];\n inverseValidationResults = _ref3[1];\n return _context.abrupt(\"return\", {\n order: order,\n sell: {\n isValid: inverseValidationResults && inverseValidationResults.valid ? true : false,\n results: inverseValidationResults\n },\n buy: {\n isValid: validationResults && validationResults.valid ? true : false,\n results: validationResults\n }\n });\n\n case 8:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n};\nexport var tryValidateOrder = function tryValidateOrder(ajv, strategy, order) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n var schemas, res, inverse, isVal, isInverseValid;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n schemas = buildValidationSchemas(strategy);\n _context2.next = 3;\n return tryValidate(ajv, schemas.buySchema, order);\n\n case 3:\n res = _context2.sent;\n\n if (!schemas.sellSchema) {\n _context2.next = 10;\n break;\n }\n\n _context2.next = 7;\n return tryValidate(ajv, schemas.sellSchema, order);\n\n case 7:\n _context2.t0 = _context2.sent;\n _context2.next = 11;\n break;\n\n case 10:\n _context2.t0 = undefined;\n\n case 11:\n inverse = _context2.t0;\n isVal = res.valid ? res.valid : inverse ? inverse.valid : false;\n isInverseValid = isVal && inverse && inverse.valid ? true : false; // console.log(strategy.info.Name, res, inverse);\n\n return _context2.abrupt(\"return\", {\n isInverse: isInverseValid,\n valid: isVal,\n validationResults: res,\n inverseValidationResults: inverse\n });\n\n case 15:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n};\nexport var validateOrder = function validateOrder(strategy, order) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _context3.next = 2;\n return tryValidateOrder(SchemaValidator(), strategy, order);\n\n case 2:\n return _context3.abrupt(\"return\", _context3.sent);\n\n case 3:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n};\nexport var validateOrderForStrategy = function validateOrderForStrategy(strategy, order) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4() {\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _context4.next = 2;\n return tryValidateOrderForStrategy(SchemaValidator(), strategy, order);\n\n case 2:\n return _context4.abrupt(\"return\", _context4.sent);\n\n case 3:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n};\nexport var isValid = function isValid(strategy, order) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee5() {\n return _regeneratorRuntime.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n _context5.next = 2;\n return validateOrder(strategy, order).then(function (res) {\n return res.valid;\n });\n\n case 2:\n return _context5.abrupt(\"return\", _context5.sent);\n\n case 3:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5);\n }));\n};","import _defineProperty from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/defineProperty\";\n\nvar _MarginRequirements, _profile, _MarginRequirements2, _profile2, _MarginRequirements3, _profile3, _MarginRequirements4, _profile4, _MarginRequirements5, _profile5, _MarginRequirements6, _profile6, _MarginRequirements7, _profile7, _MarginRequirements8, _profile8, _MarginRequirements9, _profile9, _MarginRequirements10, _profile10, _MarginRequirements11, _profile11, _MarginRequirements12, _profile12, _MarginRequirements13, _profile13, _MarginRequirements14, _profile14, _MarginRequirements15, _profile15, _MarginRequirements16, _profile16, _MarginRequirements17, _profile17;\n\nimport { OrderClass, AssetType, SizeRatio, StrategyType, OrderActionDirection, OptionType, StrikeRules, ExpirationRules, DirectionRules } from '@tradingblock/types';\nimport { isIndexSymbol } from '..';\nexport { validateOrder } from './validation';\nexport { SchemaValidator } from './strategyValidator';\nexport var Shares = {\n info: {\n Name: 'Shares',\n Symbol: 'S',\n LegsAmount: 1,\n Strikes: 0,\n PermissionLevel: 0,\n SizeRatio: SizeRatio.NA,\n SvgPath: 'shares',\n IconKind: 'svg'\n },\n profile: (_profile = {\n Rules: {\n SpreadRatio: SizeRatio.NA\n },\n OrderClass: OrderClass.Single,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Equity,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile, OrderActionDirection.Long, {\n Strength: 9,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile, OrderActionDirection.Short, {\n Strength: 8,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile, \"MarginRequirements\", (_MarginRequirements = {}, _defineProperty(_MarginRequirements, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // if isLimitOrder\n // then \tif MktAsk(S) > 0 // if there is available market offer in S greater than 0\n // then X = Min( MktAsk(S), Px(S)) // Px(S) is the client’s specified price for the strategy\n // else X = Px(S)\n // else \tif MktAsk(S) > 0\n // \tthen X = MktAsk(S) // Market best offer will be a good estimate for execution price\n // \telse X = Last(S) // Last price will be a good estimate for execution price X\n // fi\n // margin = ( X < 5 ? X : 0.5 * X ) * quantity;\n var ask = quotes[0].AskPrice;\n var last = quotes[0].LastTradePrice;\n var x;\n\n if (isLimitOrder) {\n if (ask > 0) {\n x = Math.min(ask, offerPrice);\n } else {\n x = offerPrice;\n }\n } else {\n if (ask > 0) {\n x = ask;\n } else {\n x = last;\n }\n }\n\n return x < 5 ? x : 0.5 * x;\n }), _defineProperty(_MarginRequirements, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // margin value is based on estimated execution price X of selling shares\n // if isLimitOrder\n // \tthen\tX = Max( MktBid(S), Px(S))) // Px(S) is the client’s specified price for the strategy\n // \telse\tX = Max( MktBid(S), Last(S)) // conservative estimate of the execution price X\n // fi\n // margin = ( X < 2.5 ? 2.5 : ( X < 5 ? X : (X < 50 /3.0 ? 5 : 0.3 * X ) ) ) * quantity\n var bid = quotes[0].BidPrice;\n var last = quotes[0].LastTradePrice;\n var x;\n\n if (isLimitOrder) {\n x = Math.max(bid, offerPrice);\n } else {\n x = Math.max(bid, last);\n }\n\n return x < 2.5 ? 2.5 : x < 5 ? x : x < 50 / 3 ? 5 : 0.3 * x;\n }), _MarginRequirements)), _profile)\n};\nexport var Call = {\n // validation: {\n // orderSchema: orderSchemaBuilder(OrderClass.Single, [\n // {\n // assetType: AssetType.Option,\n // action: [OrderAction.Buy, OrderAction.Sell],\n // spreadRatio: 1,\n // },\n // ]),\n // },\n info: {\n Name: 'Call',\n Symbol: 'C',\n LegsAmount: 1,\n Strikes: 1,\n PermissionLevel: 1,\n SizeRatio: SizeRatio.NA,\n SvgPath: 'call',\n IconKind: 'svg'\n },\n profile: (_profile2 = {\n Rules: {\n SpreadRatio: SizeRatio.NA\n },\n Bidirectional: true,\n OrderClass: OrderClass.Single,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile2, OrderActionDirection.Long, {\n Strength: 10,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile2, OrderActionDirection.Short, {\n Strength: 9,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile2, \"MarginRequirements\", (_MarginRequirements2 = {}, _defineProperty(_MarginRequirements2, OrderActionDirection.Long, function () {\n return 0;\n }), _defineProperty(_MarginRequirements2, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // X = Last(S)\n // if S is Index\n // then\tmargin = Max( 0.1 * X, 0.15 * (X – Max( 0, K – X ) ) ) * quantity * Multiplier\n // else\t// Missing MktAsk shall be treated as zero\n // \tif MktAsk > 0 then X = Max( Last(S), MktAsk(S) ) // MktAsk(S) cannot be infinity either\n // margin = Max( 0.1 * X, 0.20 * (X – Max( 0, K – X ) ) ) * quantity * Multiplier\n // fi\n var symbol = quotes[0].Symbol;\n var ask = quotes[0].AskPrice;\n\n if (Object.values(legs).length <= 0) {\n return 0;\n }\n\n var strike = Object.values(legs)[0].Strike;\n var x = quotes[0].LastTradePrice;\n\n if (isIndexSymbol(symbol)) {\n return Math.max(0.1 * x, 0.15 * (x - Math.max(0, strike - x)));\n } else {\n if (ask > 0) {\n x = Math.max(x, ask);\n }\n\n return Math.max(0.1 * x, 0.2 * (x - Math.max(0, strike - x)));\n }\n }), _MarginRequirements2)), _profile2)\n};\nexport var Put = {\n // validation: {\n // orderSchema: orderSchemaBuilder(OrderClass.Single, [\n // {\n // assetType: AssetType.Option,\n // action: [OrderAction.Buy, OrderAction.Sell],\n // spreadRatio: 1,\n // },\n // ]),\n // },\n info: {\n Name: 'Put',\n Symbol: 'P',\n LegsAmount: 1,\n Strikes: 1,\n PermissionLevel: 1,\n SizeRatio: SizeRatio.NA,\n SvgPath: 'put',\n IconKind: 'svg'\n },\n profile: (_profile3 = {\n Rules: {\n SpreadRatio: SizeRatio.NA\n },\n Bidirectional: true,\n OrderClass: OrderClass.Single,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile3, OrderActionDirection.Long, {\n Strength: 10,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile3, OrderActionDirection.Short, {\n Strength: 8,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile3, \"MarginRequirements\", (_MarginRequirements3 = {}, _defineProperty(_MarginRequirements3, OrderActionDirection.Long, function () {\n // 0\n return 0;\n }), _defineProperty(_MarginRequirements3, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // margin is based on estimate of current value X of the underlying symbol S\n // X = Last(S)\n // if S is Index\n // then margin = Max( 0.1 * K, 0.15 * (X – Max( 0, X - K ) ) )\n // else margin = Max( 0.1 * K, 0.20 * (X – Max( 0, X - K ) ) )\n // fi\n //TODO: Ask Milan about how the user set price plays a role in the the margin calculation\n var symbol = quotes[0].Symbol;\n\n if (Object.values(legs).length <= 0) {\n return 0;\n }\n\n var strike = Object.values(legs)[0].Strike;\n var x = quotes[0].LastTradePrice;\n\n if (isIndexSymbol(symbol)) {\n return Math.max(0.1 * strike, 0.15 * (x - Math.max(0, x - strike)));\n } else {\n return Math.max(0.1 * strike, 0.2 * (x - Math.max(0, x - strike)));\n }\n }), _MarginRequirements3)), _profile3)\n};\nexport var CoveredCall = {\n info: {\n Name: 'Covered Call',\n Symbol: 'CC',\n LegsAmount: 2,\n Strikes: 1,\n PermissionLevel: 1,\n SizeRatio: SizeRatio.HundredToOne,\n SvgPath: 'covered-call',\n IconKind: 'svg'\n },\n profile: (_profile4 = {\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 100,\n AssetType: AssetType.Equity,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Short\n }]\n }, _defineProperty(_profile4, OrderActionDirection.Long, {\n Strength: 6,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile4, OrderActionDirection.Short, {\n Strength: 7,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile4, \"Rules\", {\n SpreadRatio: SizeRatio.HundredToOne,\n Direction: DirectionRules.DifferentDirections\n }), _defineProperty(_profile4, \"MarginRequirements\", (_MarginRequirements4 = {}, _defineProperty(_MarginRequirements4, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // buying stock and selling call\n // // margin value is based on estimated price X of shares\n // // Px(S) is the client’s specified price for the strategy\n // if isLimitOrder\n // then\n // if MktAsk(S) > 0 // if there is available market offer in S greater than 0\n // then X = Min( MktAsk(S), Px(S) + Max(0, MktAsk(S) - K)\n // // Px(S) is the client’s specified price for the strategy\n // else X = Min( Last(S), Px(S) + Max(0, Last(S) - K)\n // else\n // if MktAsk(S) > 0\n // \t then X = MktAsk(S) // Market best offer will be a good estimate for execution price\n // \t else X = Last(S) // Last price will be a good estimate for execution price X\n // fi\n // margin = ( X < 5 ? X : 0.5 * X ) * quantity * Multiplier;\n // TODO: ask what should be the default value of X, inferred last price\n var ask = quotes[0].AskPrice;\n\n if (Object.values(legs).length <= 1) {\n return 0;\n }\n\n var strike = Object.values(legs)[1].Strike;\n var x;\n\n if (isLimitOrder) {\n if (ask > 0) {\n x = Math.min(ask, offerPrice + Math.max(0, ask - strike));\n } else {\n x = Math.min(quotes[0].LastTradePrice, offerPrice + Math.max(0, quotes[0].LastTradePrice - strike));\n }\n } else {\n if (ask > 0) {\n x = ask;\n } else {\n x = quotes[0].LastTradePrice;\n }\n }\n\n return x < 5 ? x : 0.5 * x;\n }), _defineProperty(_MarginRequirements4, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // selling stock and buying call\n // // margin value is based on estimated price X of shares\n // if MktAsk(S) > 0\n // then \tX = MktAsk(S)\n // else \tX = Last(S)\n // fi\n // margin = MAX( 0.5 * X, Min(0.1 * K + Max(0, K-X), X < 2.5 ? 2.5 : ( X < 5 ? X : (X < 50 /3.0 ? 5 : 0.3 * X ) ) ) * quantity * Multiplier\n var symbol = quotes[0].Symbol;\n var ask = quotes[0].AskPrice;\n var bid = quotes[0].BidPrice;\n\n if (Object.values(legs).length <= 1) {\n return 0;\n }\n\n var strike = Object.values(legs)[1].Strike;\n var qty = 1;\n var x = null;\n\n if (ask > 0) {\n x = ask;\n } else {\n x = quotes[0].LastTradePrice;\n }\n\n return Math.max(0.5 * x, Math.min(0.1 * strike + Math.max(0, strike - x), x < 2.5 ? 2.5 : x < 5 ? x : x < 50 / 3.0 ? 5 : 0.3 * x));\n }), _MarginRequirements4)), _profile4)\n};\nexport var MarriedPut = {\n info: {\n Name: 'Married Put',\n Symbol: 'MP',\n LegsAmount: 2,\n Strikes: 1,\n PermissionLevel: 1,\n SizeRatio: SizeRatio.HundredToOne,\n SvgPath: 'married-put',\n IconKind: 'svg'\n },\n profile: (_profile5 = {\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 100,\n AssetType: AssetType.Equity,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile5, OrderActionDirection.Long, {\n Strength: 7,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile5, OrderActionDirection.Short, {\n Strength: 6,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile5, \"Rules\", {\n SpreadRatio: SizeRatio.HundredToOne,\n Direction: DirectionRules.SameDirections\n }), _defineProperty(_profile5, \"MarginRequirements\", (_MarginRequirements5 = {}, _defineProperty(_MarginRequirements5, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // buying stock and buying put\n // // margin value is based on estimated price X of shares\n // if isLimitOrder\n // then \tif MktAsk(S) > 0 // if there is available market offer in S greater than 0\n // then X = Min( MktAsk(S), Px(S)) // Px(S) is the client’s specified price for the strategy\n // else X = Min( Last(S), Px(S) )\n // else \tif MktAsk(S) > 0\n // \tthen X = MktAsk(S) // Market best offer will be a good estimate for execution price\n // \telse X = Last(S) // Last price will be a good estimate for execution price X\n // \tfi\n // fi\n // margin = ( X < 5 ? X : 0.5 * X ) * quantity * Multiplier;\n var ask = quotes[0].AskPrice;\n var last = quotes[0].LastTradePrice;\n var x;\n\n if (isLimitOrder) {\n if (ask > 0) {\n x = Math.min(ask, offerPrice);\n } else {\n x = Math.min(last, offerPrice);\n }\n } else {\n if (ask > 0) {\n x = ask;\n } else {\n x = last;\n }\n }\n\n return x < 5 ? x : 0.5 * x;\n }), _defineProperty(_MarginRequirements5, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // selling stock and selling put\n // // margin value is based on estimated price X of shares\n // if MktAsk(S) > 0\n // then \tX = MktAsk(S)\n // else \tX = Last(S)\n // fi\n // margin = MAX( 0.5 * X + MAX( 0, K – X ), X < 2.5 ? 2.5 : ( X < 5 ? X : (X < 50 /3.0 ? 5 : 0.3 * X ) ) ) * quantity * Multiplier\n var ask = quotes[0].AskPrice;\n var strike = Object.values(legs)[0].Strike;\n var x;\n\n if (ask > 0) {\n x = ask;\n } else {\n x = quotes[0].LastTradePrice;\n }\n\n return Math.max(0.5 * x + Math.max(0, strike - x), x < 2.5 ? 2.5 : x < 5 ? x : x < 50 / 3.0 ? 5 : 0.3 * x);\n }), _MarginRequirements5)), _profile5)\n};\nexport var CallCalendar = {\n info: {\n Name: 'Call Calendar',\n Symbol: 'CT',\n LegsAmount: 2,\n Strikes: 2,\n PermissionLevel: 1,\n SizeRatio: SizeRatio.OneToOne,\n BidirectionalDebitCredit: true,\n Icon: 'fal fa-calendar-alt',\n IconKind: 'icon'\n },\n profile: (_profile6 = {\n Rules: {\n Expiration: ExpirationRules.DifferentExpiries,\n SpreadRatio: SizeRatio.OneToOne,\n Direction: DirectionRules.DifferentDirections,\n Strike: StrikeRules.Any\n },\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call\n }]\n }, _defineProperty(_profile6, OrderActionDirection.Long, {\n Strength: 4,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile6, OrderActionDirection.Short, {\n Strength: 4,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile6, \"MarginRequirements\", (_MarginRequirements6 = {}, _defineProperty(_MarginRequirements6, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // buying later expiring call with strike K1 and selling earlier expiring call with strike K2\n // if IRA Aaccount\n // \tthen \t// margin is the maximum of zero and strike difference\n // \tmargin = Max( 0, K2 – K1 ) * quantity * Multiplier\n // else\n // \tX = Last(S)\n // \tif S is Index then\n // \t\tmargin = Min( Max( 0, K2 – K1 ), Max( 0.1 * X, 0.15 * (X – Max( 0, K2 – X ) ) ) ) * quantity * Multiplier\n // \telse\t// Missing MktAsk shall be treated as zero\n // \t\tif MktAsk > 0 then\n // \t\t\tX = Max( Last(S), MktAsk(S) )\n // \t\tfi\n // \t\tmargin = Min( Max( 0, K2 – K1 ), Max( 0.1 * X, 0.20 * (X – Max( 0, K2 – X ) ) ) ) * quantity * Multiplier\n // \tfi\n // fi\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n\n if (isIRA) {\n return Math.max(0, K2 - K1);\n }\n\n var x = quotes[0].LastTradePrice;\n var symbol = quotes[0].Symbol;\n var ask = quotes[0].AskPrice;\n\n if (isIndexSymbol(symbol)) {\n return Math.min(Math.max(0, K2 - K1), Math.max(0.1 * x, 0.15 * (x - Math.max(0, K2 - x))));\n } else {\n if (ask > 0) {\n x = Math.max(x, ask);\n }\n\n return Math.min(Math.max(0, K2 - K1), Math.max(0.1 * x, 0.2 * (x - Math.max(0, K2 - x))));\n }\n }), _defineProperty(_MarginRequirements6, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // selling later expiring call with strike K1 and buying earlier expiring call with strike K2\n // // margin is the margin of the short call with strike K1 based on estimate of current value X of the\n // // underlying symbol S\n // X = Last(S)\n // if S is Index then\n // \tmargin = Max( 0.1 * X, 0.15 * (X – Max( 0, K1 – X ) ) ) * quantity * Multiplier\n // else\t// Missing MktAsk shall be treated as zero\n // \tif MktAsk > 0 then\n // \t\tX = Max( Last(S), MktAsk(S) )\n // \tfi\n // \tmargin = Max( 0.1 * X, 0.20 * (X – Max( 0, K1 – X ) ) ) * quantity * Multiplier\n // fi\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var x = quotes[0].LastTradePrice;\n var symbol = quotes[0].Symbol;\n\n if (isIndexSymbol(symbol)) {\n return Math.max(0.1 * x, 0.15 * (x - Math.max(0, K1 - x)));\n } else {\n var ask = quotes[0].AskPrice;\n\n if (ask > 0) {\n x = Math.max(x, ask);\n }\n\n return Math.max(0.1 * x, 0.2 * (x - Math.max(0, K1 - x)));\n }\n }), _MarginRequirements6)), _profile6)\n};\nexport var PutCalendar = {\n info: {\n Name: 'Put Calendar',\n Symbol: 'PT',\n LegsAmount: 2,\n Strikes: 2,\n PermissionLevel: 1,\n SizeRatio: SizeRatio.OneToOne,\n BidirectionalDebitCredit: true,\n Icon: 'fal fa-calendar-alt',\n IconKind: 'icon'\n },\n profile: (_profile7 = {\n Rules: {\n Expiration: ExpirationRules.DifferentExpiries,\n SpreadRatio: SizeRatio.OneToOne,\n Direction: DirectionRules.DifferentDirections,\n Strike: StrikeRules.Any\n },\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put\n }]\n }, _defineProperty(_profile7, OrderActionDirection.Long, {\n Strength: 4,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile7, OrderActionDirection.Short, {\n Strength: 4,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile7, \"MarginRequirements\", (_MarginRequirements7 = {}, _defineProperty(_MarginRequirements7, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // buying later expiring put with strike K1 and selling earlier expiring put with strike K2\n // if IRA Aaccount then \t// margin is the maximum of zero and strike difference\n // \tmargin = Max( 0, K1 – K2 ) * quantity * Multiplier\n // else\n // \tX = Last(S)\n // \tif S is Index then\n // \t\tmargin = Min( Max( 0, K1 – K2 ), Max( 0.1 * K2, 0.15 * (X – Max( 0, X – K2 ) ) ) ) * quantity * Multiplier\n // \telse\n // \t\tmargin = Min( Max( 0, K1 – K2 ), Max( 0.1 * K2, 0.20 * (X – Max( 0, X – K2 ) ) ) ) * quantity * Multiplier\n // \tfi\n // fi\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n\n if (isIRA) {\n return Math.max(0, K1 - K2);\n } else {\n var x = quotes[0].LastTradePrice;\n var symbol = quotes[0].Symbol;\n\n if (isIndexSymbol(symbol)) {\n return Math.min(Math.max(0, K1 - K2), Math.max(0.1 * K2, 0.15 * (x - Math.max(0, x - K2))));\n } else {\n return Math.min(Math.max(0, K1 - K2), Math.max(0.1 * K2, 0.2 * (x - Math.max(0, x - K2))));\n }\n }\n }), _defineProperty(_MarginRequirements7, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // selling later expiring put with strike K1 and buying earlier expiring put with strike K2\n // // margin is the margin of the short put with strike K1 based on estimate of current value X of the\n // // underlying symbol S\n // X = Last(S)\n // if S is Index then\n // \tmargin = Max( 0.1 * K1, 0.15 * (X – Max( 0, X – K1 ) ) ) * quantity * Multiplier\n // else\n // \tmargin = Max( 0.1 * K1, 0.20 * (X – Max( 0, X – K1 ) ) ) * quantity * Multiplier\n // fi\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var x = quotes[0].LastTradePrice;\n var symbol = quotes[0].Symbol;\n\n if (isIndexSymbol(symbol)) {\n return Math.max(0.1 * K1, 0.15 * (x - Math.max(0, x - K1)));\n } else {\n return Math.max(0.1 * K1, 0.2 * (x - Math.max(0, x - K1)));\n }\n }), _MarginRequirements7)), _profile7)\n};\nexport var CallVertical = {\n info: {\n Name: 'Call Vertical',\n Symbol: 'CV',\n LegsAmount: 2,\n Strikes: 2,\n PermissionLevel: 1,\n SizeRatio: SizeRatio.OneToOne,\n SvgPath: 'call-vertical',\n IconKind: 'svg'\n },\n profile: (_profile8 = {\n Rules: {\n Expiration: ExpirationRules.SameExpiry,\n Strike: StrikeRules.IncreasingOrder,\n SpreadRatio: SizeRatio.OneToOne,\n Direction: DirectionRules.DifferentDirections\n },\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Short\n }]\n }, _defineProperty(_profile8, OrderActionDirection.Long, {\n Strength: 8,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile8, OrderActionDirection.Short, {\n Strength: 6,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile8, \"MarginRequirements\", (_MarginRequirements8 = {}, _defineProperty(_MarginRequirements8, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements8, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // selling call with lower strike K1 and buying call with higher strike K2, same expiration\n // if IRA Aaccount then \t// margin is the maximum risk\n // \tmargin = | K2 – K1 | * quantity * Multiplier\n // else \t// margin will be the margin of the short call with the strike K1\n // \tX = Last(S)\n // \tif S is Index then\n // \t\tmargin = Max( 0.1 * X, 0.15 * (X – Max( 0, K1 – X ) ) ) * quantity * Multiplier\n // \telse\t// Missing MktAsk shall be treated as zero\n // \t\tif MktAsk > 0 then\n // \t\t\tX = Max( Last(S), MktAsk(S) )\n // \t\tfi\n // \t\tmargin = Max( 0.1 * X, 0.20 * (X – Max( 0, K1 – X ) ) ) * quantity * Multiplier\n // \tfi\n // fi\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n var strikeDiff = Math.abs(K2 - K1);\n\n if (isIRA) {\n return strikeDiff;\n }\n\n var x = quotes[0].LastTradePrice;\n var symbol = quotes[0].Symbol;\n var ask = quotes[0].AskPrice;\n\n if (isIndexSymbol(symbol)) {\n var margin = Math.max(0.1 * x, 0.15 * (x - Math.max(0, K1 - x)));\n return Math.min(strikeDiff, margin);\n } else {\n if (ask > 0) {\n x = Math.max(x, ask);\n }\n\n var _margin = Math.max(0.1 * x, 0.2 * (x - Math.max(0, K1 - x)));\n\n return Math.min(strikeDiff, _margin);\n }\n }), _MarginRequirements8)), _profile8)\n};\nexport var PutVertical = {\n info: {\n Name: 'Put Vertical',\n Symbol: 'PV',\n LegsAmount: 2,\n Strikes: 2,\n PermissionLevel: 1,\n SizeRatio: SizeRatio.OneToOne,\n SvgPath: 'put-vertical',\n IconKind: 'svg'\n },\n profile: (_profile9 = {\n Rules: {\n Expiration: ExpirationRules.SameExpiry,\n Strike: StrikeRules.DecreasingOrder,\n SpreadRatio: SizeRatio.OneToOne,\n Direction: DirectionRules.DifferentDirections\n },\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Short\n }]\n }, _defineProperty(_profile9, OrderActionDirection.Long, {\n Strength: 8,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile9, OrderActionDirection.Short, {\n Strength: 6,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile9, \"MarginRequirements\", (_MarginRequirements9 = {}, _defineProperty(_MarginRequirements9, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements9, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // selling put with higher strike K1 and buying put with lower strike K2, same expiration\n // if IRA Aaccount then \t// margin is the maximum risk\n // \tmargin = | K1 – K2 | * quantity * Multiplier\n // else \t// margin will be the margin of the short put with the strike K1\n // \tX = Last(S)\n // \tif S is Index then\n // \t\tmargin = Max( 0.1 * K, 0.15 * (X – Max( 0, X - K1 ) ) ) * quantity * Multiplier\n // \telse\n // \t\tmargin = Max( 0.1 * K, 0.20 * (X – Max( 0, X – K1 ) ) ) * quantity * Multiplier\n // \tfi\n // fi\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n var strikeDiff = Math.abs(K1 - K2);\n\n if (isIRA) {\n return strikeDiff;\n }\n\n var x = quotes[0].LastTradePrice;\n var symbol = quotes[0].Symbol;\n\n if (isIndexSymbol(symbol)) {\n var margin = Math.max(0.1 * x, 0.15 * (x - Math.max(0, x - K1)));\n return Math.min(strikeDiff, margin);\n } else {\n var _margin2 = Math.max(0.1 * x, 0.2 * (x - Math.max(0, x - K1)));\n\n return Math.min(strikeDiff, _margin2);\n }\n }), _MarginRequirements9)), _profile9)\n};\nexport var CallButterfly = {\n info: {\n Name: 'Call Butterfly',\n Symbol: 'CF',\n LegsAmount: 3,\n Strikes: 3,\n PermissionLevel: 4,\n SizeRatio: SizeRatio.OneTwoOne,\n SvgPath: 'call-butterfly',\n IconKind: 'svg'\n },\n profile: (_profile10 = {\n Rules: {\n Expiration: ExpirationRules.SameExpiry,\n Strike: StrikeRules.EquidistantStrikes,\n SpreadRatio: SizeRatio.OneTwoOne,\n Direction: DirectionRules.Butterfly\n },\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 2,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Short\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile10, OrderActionDirection.Long, {\n Strength: 4,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile10, OrderActionDirection.Short, {\n Strength: 3,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile10, \"MarginRequirements\", (_MarginRequirements10 = {}, _defineProperty(_MarginRequirements10, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements10, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n //|K2 - K1|\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n return Math.abs(K2 - K1);\n }), _MarginRequirements10)), _profile10)\n};\nexport var PutButterfly = {\n info: {\n Name: 'Put Butterfly',\n Symbol: 'PF',\n LegsAmount: 3,\n Strikes: 3,\n PermissionLevel: 2,\n SizeRatio: SizeRatio.OneTwoOne,\n SvgPath: 'put-butterfly',\n IconKind: 'svg'\n },\n profile: (_profile11 = {\n Rules: {\n Expiration: ExpirationRules.SameExpiry,\n Strike: StrikeRules.EquidistantStrikes,\n SpreadRatio: SizeRatio.OneTwoOne,\n Direction: DirectionRules.Butterfly\n },\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 2,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Short\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile11, OrderActionDirection.Long, {\n Strength: 4,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile11, OrderActionDirection.Short, {\n Strength: 3,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile11, \"MarginRequirements\", (_MarginRequirements11 = {}, _defineProperty(_MarginRequirements11, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements11, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n //|K1 - K2|\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n return Math.abs(K1 - K2);\n }), _MarginRequirements11)), _profile11)\n};\nexport var Straddle = {\n info: {\n Name: 'Straddle',\n Symbol: 'SD',\n LegsAmount: 2,\n Strikes: 1,\n PermissionLevel: 4,\n SizeRatio: SizeRatio.OneToOne,\n SvgPath: 'straddle',\n IconKind: 'svg'\n },\n profile: (_profile12 = {\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile12, OrderActionDirection.Long, {\n Strength: 7,\n StrategyType: StrategyType.Volatility\n }), _defineProperty(_profile12, OrderActionDirection.Short, {\n Strength: 0,\n StrategyType: StrategyType.Volatility\n }), _defineProperty(_profile12, \"Rules\", {\n Expiration: ExpirationRules.SameExpiry,\n Strike: StrikeRules.SameStrikes,\n SpreadRatio: SizeRatio.OneToOne,\n Direction: DirectionRules.SameDirections\n }), _defineProperty(_profile12, \"MarginRequirements\", (_MarginRequirements12 = {}, _defineProperty(_MarginRequirements12, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements12, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // selling a call and a put with the same strike\n // X = Last(S)\n // if S is Index then\n // \tmargin = Max( Max( 0.1*X, 0.15*(X–Max(0,K–X))) , Max(0.1*K, 0.15*(X–Max(0,X-K)))) * quantity * Multiplier\n // else\t// Missing MktAsk shall be treated as zero\n // \tif MktAsk > 0 then\n // \t\tX = Max( Last(S), MktAsk(S) ) // MktAsk(S) cannot be infinity either\n // \tmargin = Max( Max( 0.1*X, 0.20*(X–Max(0,K–X))), Max(0.1*K, 0.20*(X–Max(0,X-K)))) * quantity * Multiplier\n // fi\n var legsArray = Object.values(legs);\n\n if (legsArray.length <= 0) {\n return 0;\n }\n\n var K = legsArray[0].Strike;\n var x = quotes[0].LastTradePrice;\n var symbol = quotes[0].Symbol;\n\n if (isIndexSymbol(symbol)) {\n return Math.max(Math.max(0.1 * x, 0.15 * Math.max(0, K - x)), Math.max(0.1 * K, 0.15 * Math.max(0, x - K)));\n } else {\n var ask = quotes[0].AskPrice;\n\n if (ask > 0) {\n x = Math.max(x, ask);\n }\n\n return Math.max(Math.max(0.1 * x, 0.2 * Math.max(0, K - x)), Math.max(0.1 * K, 0.2 * Math.max(0, x - K)));\n }\n }), _MarginRequirements12)), _profile12)\n};\nexport var Strangle = {\n info: {\n Name: 'Strangle',\n Symbol: 'SG',\n LegsAmount: 2,\n Strikes: 2,\n PermissionLevel: 4,\n SizeRatio: SizeRatio.OneToOne,\n SvgPath: 'strangle',\n IconKind: 'svg'\n },\n profile: (_profile13 = {\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile13, OrderActionDirection.Long, {\n Strength: 7,\n StrategyType: StrategyType.Volatility\n }), _defineProperty(_profile13, OrderActionDirection.Short, {\n Strength: 1,\n StrategyType: StrategyType.Volatility\n }), _defineProperty(_profile13, \"Rules\", {\n Expiration: ExpirationRules.SameExpiry,\n Strike: StrikeRules.CallHigherThanPut,\n SpreadRatio: SizeRatio.OneToOne,\n Direction: DirectionRules.SameDirections\n }), _defineProperty(_profile13, \"MarginRequirements\", (_MarginRequirements13 = {}, _defineProperty(_MarginRequirements13, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements13, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // selling a call and a put with different strikes, K1 Call strike, K2 Put Strike\n // X = Last(S)\n // if S is Index then\n // \tmargin = Max( Max( 0.1*X, 0.15*(X–Max(0,K1–X))) , Max(0.1*K2, 0.15*(X–Max(0,X-K2)))) * quantity * Multiplier\n // else\t// Missing MktAsk shall be treated as zero\n // \tif MktAsk > 0 then\n // \t\tX = Max( Last(S), MktAsk(S) ) // MktAsk(S) cannot be infinity either\n // \tmargin = Max( Max( 0.1*X, 0.20*(X–Max(0,K1–X))), Max(0.1*K2, 0.20*(X–Max(0,X-K2)))) * quantity * Multiplier\n // fi\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n var x = quotes[0].LastTradePrice;\n var symbol = quotes[0].Symbol;\n\n if (isIndexSymbol(symbol)) {\n return Math.max(Math.max(0.1 * x, 0.15 * Math.max(0, K1 - x)), Math.max(0.1 * K2, 0.15 * Math.max(0, x - K2)));\n } else {\n var ask = quotes[0].AskPrice;\n\n if (ask > 0) {\n x = Math.max(x, ask);\n }\n\n return Math.max(Math.max(0.1 * x, 0.2 * Math.max(0, K1 - x)), Math.max(0.1 * K2, 0.2 * Math.max(0, x - K2)));\n }\n }), _MarginRequirements13)), _profile13)\n};\nexport var CallCondor = {\n info: {\n Name: 'Call Condor',\n Symbol: 'CR',\n LegsAmount: 4,\n Strikes: 4,\n PermissionLevel: 4,\n SizeRatio: SizeRatio.OneToOneToOneToOne,\n SvgPath: 'call-condor',\n IconKind: 'svg'\n },\n profile: (_profile14 = {\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Short\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Short\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile14, OrderActionDirection.Long, {\n Strength: 5,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile14, OrderActionDirection.Short, {\n Strength: 4,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile14, \"Rules\", {\n Expiration: ExpirationRules.SameExpiry,\n Strike: [StrikeRules.IncreasingOrder, StrikeRules.EquidistantStrikesByTwos],\n SpreadRatio: SizeRatio.OneToOneToOneToOne,\n Direction: DirectionRules.Condor\n }), _defineProperty(_profile14, \"MarginRequirements\", (_MarginRequirements14 = {}, _defineProperty(_MarginRequirements14, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements14, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n //|K2 - K1|\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n return Math.abs(K2 - K1);\n }), _MarginRequirements14)), _profile14)\n};\nexport var PutCondor = {\n info: {\n Name: 'Put Condor',\n Symbol: 'PR',\n LegsAmount: 4,\n Strikes: 4,\n PermissionLevel: 4,\n SizeRatio: SizeRatio.OneToOneToOneToOne,\n SvgPath: 'put-condor',\n IconKind: 'svg'\n },\n profile: (_profile15 = {\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Rules: {\n Expiration: ExpirationRules.SameExpiry,\n Strike: [StrikeRules.DecreasingOrder, StrikeRules.EquidistantStrikesByTwos],\n SpreadRatio: SizeRatio.OneToOneToOneToOne,\n Direction: DirectionRules.Condor\n },\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Short\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Short\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile15, OrderActionDirection.Long, {\n Strength: 5,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile15, OrderActionDirection.Short, {\n Strength: 4,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile15, \"MarginRequirements\", (_MarginRequirements15 = {}, _defineProperty(_MarginRequirements15, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements15, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n //|K1 - K2|\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n return Math.abs(K1 - K2);\n }), _MarginRequirements15)), _profile15)\n};\nexport var IronButterfly = {\n info: {\n Name: 'Iron Butterfly',\n Symbol: 'IF',\n LegsAmount: 4,\n Strikes: 3,\n PermissionLevel: 4,\n SizeRatio: SizeRatio.OneToOneToOneToOne,\n SvgPath: 'iron-butterfly',\n IconKind: 'svg'\n },\n profile: (_profile16 = {\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Rules: {\n Expiration: ExpirationRules.SameExpiry,\n Strike: [StrikeRules.IronButterfly, StrikeRules.EquidistantStrikesByTwos, StrikeRules.CallFirstPutsSecond],\n SpreadRatio: SizeRatio.OneToOneToOneToOne,\n Direction: DirectionRules.Iron\n },\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Short\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Short\n }]\n }, _defineProperty(_profile16, OrderActionDirection.Long, {\n Strength: 6,\n StrategyType: StrategyType.Volatility\n }), _defineProperty(_profile16, OrderActionDirection.Short, {\n Strength: 2,\n StrategyType: StrategyType.Volatility\n }), _defineProperty(_profile16, \"MarginRequirements\", (_MarginRequirements16 = {}, _defineProperty(_MarginRequirements16, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements16, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // |K1 - K2|\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n return Math.abs(K1 - K2);\n }), _MarginRequirements16)), _profile16)\n};\nexport var IronCondor = {\n info: {\n Name: 'Iron Condor',\n Symbol: 'IR',\n LegsAmount: 4,\n Strikes: 4,\n PermissionLevel: 4,\n SizeRatio: SizeRatio.OneToOneToOneToOne,\n SvgPath: 'iron-condor',\n IconKind: 'svg'\n },\n profile: (_profile17 = {\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Rules: {\n Expiration: ExpirationRules.SameExpiry,\n Strike: [StrikeRules.IronCondor, StrikeRules.EquidistantStrikesByTwos, StrikeRules.CallFirstPutsSecond],\n SpreadRatio: SizeRatio.OneToOneToOneToOne,\n Direction: DirectionRules.Iron\n },\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Short\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Short\n }]\n }, _defineProperty(_profile17, OrderActionDirection.Long, {\n Strength: 5,\n StrategyType: StrategyType.Volatility\n }), _defineProperty(_profile17, OrderActionDirection.Short, {\n Strength: 3,\n StrategyType: StrategyType.Volatility\n }), _defineProperty(_profile17, \"MarginRequirements\", (_MarginRequirements17 = {}, _defineProperty(_MarginRequirements17, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements17, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // |K1 - K2|\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n return Math.abs(K1 - K2);\n }), _MarginRequirements17)), _profile17)\n}; // export const Collar: TradingStrategy = {\n// info: {\n// Name: 'Collar',\n// Symbol: 'CO',\n// LegsAmount: 3,\n// Strikes: 2,\n// PermissionLevel: 4,\n// SizeRatio: SizeRatio.HundredToOneToOne,\n// SvgPath: 'collar',\n// IconKind: 'svg',\n// },\n// profile: {\n// OrderClass: OrderClass.Multileg,\n// Bidirectional: true,\n// Legs: [\n// {\n// SpreadRatio: 100,\n// AssetType: AssetType.Equity,\n// Direction: OrderActionDirection.Long,\n// },\n// {\n// SpreadRatio: 1,\n// AssetType: AssetType.Option,\n// OptionType: OptionType.Call,\n// Direction: OrderActionDirection.Short,\n// },\n// {\n// SpreadRatio: 1,\n// AssetType: AssetType.Option,\n// OptionType: OptionType.Put,\n// Direction: OrderActionDirection.Long,\n// },\n// ],\n// [OrderActionDirection.Long]: {\n// Strength: 8,\n// StrategyType: StrategyType.Bull,\n// },\n// [OrderActionDirection.Short]: {\n// Strength: 8,\n// StrategyType: StrategyType.Bear,\n// },\n// Rules: {\n// Expiration: ExpirationRules.SameExpiry,\n// Strike: StrikeRules.CallHigherThanPut,\n// SpreadRatio: SizeRatio.HundredToOneToOne,\n// },\n// MarginRequirements: {\n// [OrderActionDirection.Long]: (legs, quotes, isLimitOrder, offerPrice, isIRA) => {\n// // // buying shares and selling a call with strike K1 and buying a put with strike K2\n// // // margin is the same as for covered call\n// // // margin value is based on estimated price X of shares\n// // // Px(S) is the client’s specified price for the strategy\n// // if isLimitOrder then\n// // \tif MktAsk(S) > 0 then\n// // \t\tX = Min( MktAsk(S), Px(S) + Max(0, MktAsk(S) – K1) // if there is available market offer in S greater than 0\n// // \telse // Px(S) is the client’s specified price for the strategy\n// // \t\tX = Min( Last(S), Px(S) + Max(0, Last(S) – K1)\n// // \tfi\n// // else\n// // \tif MktAsk(S) > 0 then\n// // \t\tX = MktAsk(S) // Market best offer will be a good estimate for execution price\n// // \telse\n// // \t\tX = Last(S) // Last price will be a good estimate for execution price X\n// // \tfi\n// // fi\n// // margin = ( X < 5 ? X : 0.5 * X ) * quantity * Multiplier;\n// const legsArray = Object.values(legs);\n// if (legsArray.length < 2) {\n// return 0;\n// }\n// const K1 = (legsArray[0] as OrderLegDTOState).Strike;\n// let x: number;\n// const ask = quotes[0].AskPrice;\n// if (isLimitOrder) {\n// if (ask > 0) {\n// x = Math.min(ask, offerPrice + Math.max(0, ask - K1));\n// } else {\n// x = Math.min(quotes[0].LastTradePrice, offerPrice + Math.max(0, quotes[0].LastTradePrice - K1));\n// }\n// } else {\n// if (ask > 0) {\n// x = ask;\n// } else {\n// x = quotes[0].LastTradePrice;\n// }\n// }\n// return x < 5 ? x : 0.5 * x;\n// },\n// [OrderActionDirection.Short]: (legs, quotes, isLimitOrder, offerPrice, isIRA) => {\n// // if MktAsk(S) > 0 then\n// // \tX = MktAsk(S)\n// // else\n// // \tX = Last(S)\n// // fi\n// // margin = MAX( 0.5 * X + MAX( 0, K2 – X ), X < 2.5 ? 2.5 : ( X < 5 ? X : (X < 50 /3.0 ? 5 : 0.3 * X ) ) )\n// const legsArray = Object.values(legs);\n// if (legsArray.length < 2) {\n// return 0;\n// }\n// let x: number = quotes[0].LastTradePrice;\n// const ask = quotes[0].AskPrice;\n// const K2 = (legsArray[1] as OrderLegDTOState).Strike;\n// if (ask > 0) {\n// x = ask;\n// }\n// return Math.max(0.5 * x + Math.max(0, K2 - x), x < 2.5 ? 2.5 : x < 5 ? x : x < 50 / 3.0 ? 5 : 0.3 * x);\n// },\n// },\n// },\n// };\n\nexport var Strategies = [Shares, Call, Put, CallVertical, CallCalendar, PutVertical, PutCalendar, Straddle, Strangle, CoveredCall, MarriedPut, CallButterfly, PutButterfly, CallCondor, PutCondor, IronButterfly, IronCondor];\nexport var IndexStrategies = [Call, Put, CallVertical, CallCalendar, PutVertical, PutCalendar, Straddle, Strangle, CallButterfly, PutButterfly, CallCondor, PutCondor, IronButterfly, IronCondor];","export var CustomStrategy = {\n info: {\n Name: 'Custom'\n }\n};","import { ExpirationType, OptionExpirationType } from '@tradingblock/types';\nimport dayjs from 'dayjs';\nimport LocalizedFormat from 'dayjs/plugin/localizedFormat';\nimport utc from 'dayjs/plugin/utc';\nimport { populateTimeZones, findTimeZone, convertTimeToDate } from 'timezone-support/dist/lookup-convert';\nimport * as tzdata from 'timezone-support/dist/data-2012-2022';\nimport { convertDateToTime } from 'timezone-support';\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\ndayjs.extend(customParseFormat);\npopulateTimeZones(tzdata);\ndayjs.extend(LocalizedFormat);\ndayjs.extend(utc);\n\nfunction isDayjs(d) {\n if (d === undefined) {\n return false;\n }\n\n return dayjs.isDayjs(d);\n}\n\nexport var getLocalDateFromTimezone = function getLocalDateFromTimezone(date) {\n var tz = findTimeZone(timeZone);\n var dateVal = isDayjs(date) ? date.toDate() : date || new Date();\n var localDate = tz ? convertTimeToDate(convertDateToTime(dateVal)) : dateVal;\n return dayjs(localDate);\n};\nexport var getWeekdayOfMonth = function getWeekdayOfMonth(date, dayOfWeek, weekOfMonth) {\n var firstDayOfMonth = dayjs(date).date(1); // start on 1st of month, then set day of week (starts at 'Sunday' === 0)\n\n var firstDayOfWeek = dayjs(firstDayOfMonth).day(dayOfWeek); // add extra week if setting day of week above shifted to previous month\n\n var weeksToAdd = firstDayOfWeek.isBefore(firstDayOfMonth) ? weekOfMonth + 1 : weekOfMonth; // shift date to week of the month (one less since starting in first week)\n\n return firstDayOfWeek.add(weeksToAdd - 1, 'week');\n};\nexport var getExpirationType = function getExpirationType(date) {\n // monthly expirations are on 3rd friday of the month ('Friday' === 5)\n var dateValue = dayjs.isDayjs(date) ? date.toDate() : date;\n var monthlyExpiration = getWeekdayOfMonth(dateValue, 5, 3);\n return dayjs(dateValue).isSame(monthlyExpiration, 'date') ? ExpirationType.Monthly : ExpirationType.Weekly;\n};\nexport var formatExpiration = function formatExpiration(dto) {\n var date = dayjs(dto.Date).toDate();\n var isWeekly = dto.ExpirationFreqCode === 'W' || dto.ExpirationFreqCode === 'MW' || dto.ExpirationFreqCode === 'WW' || dto.ExpirationFreqCode.includes('Week') || dto.ExpirationFreqCode.includes('W') || dto.ExpirationFreqCode === 'ME';\n var isQuarterly = dto.ExpirationFreqCode === 'QuarterlyEOM';\n return Object.assign({}, dto, {\n date: date,\n type: isWeekly ? ExpirationType.Weekly : isQuarterly ? ExpirationType.Quarterly : ExpirationType.Monthly,\n optionExpirationType: dto.Time,\n rootSymbol: dto.RootSymbol\n });\n};\nexport var toExpiration = function toExpiration(date, rootSymbol, optionExpirationType) {\n return {\n date: date,\n type: getExpirationType(date),\n optionExpirationType: optionExpirationType || OptionExpirationType.PM,\n rootSymbol: rootSymbol\n };\n};\nexport var toShort = function toShort(date) {\n return (isDayjs(date) ? date : dayjs(date)).format('MMM D, YYYY');\n};\nexport var ToUtcMidnight = function ToUtcMidnight(date) {\n return dayjs(date || new Date()).set('hour', 0).set('minute', 0).set('second', 0);\n};\nexport var isBetweenInclusive = function isBetweenInclusive(date, startDate, endDate) {\n if (date) {\n var d = dayjs(date);\n return d.isAfter(startDate, 'date') && d.isBefore(endDate, 'date') || d.isSame(startDate, 'date') || d.isSame(endDate, 'date');\n }\n\n return false;\n};\nexport var isDateBetweenExclusive = function isDateBetweenExclusive(date, startDate, endDate) {\n if (date) {\n var d = dayjs(date);\n return d.isAfter(startDate, 'date') && d.isBefore(endDate, 'date');\n }\n\n return false;\n};\nexport var isBefore = function isBefore(curr, date) {\n var compDate = dayjs.isDayjs(date) ? date.toDate() : date;\n return curr ? dayjs(curr).isBefore(compDate, 'date') : false;\n};\nexport var TodayDate = function TodayDate() {\n return dayjs(new Date()).hour(0).toDate();\n};\nexport var isToday = function isToday(curr) {\n return curr ? dayjs(curr).isSame(TodayDate(), 'date') : false;\n}; // TODO: type fix\n\nexport var timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;","import _toConsumableArray from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/toConsumableArray\";\nimport _, { uniqueId } from 'lodash';\nimport dayjs from 'dayjs';\nimport { OptionType, AssetType, OptionExpirationType, OrderStatuses } from '@tradingblock/types';\nimport { OrderAction, PositionEffect, OrderActionDirection, OrderClass, Durations as DurationValues, Durations, DebitOrCredit } from '@tradingblock/types';\nimport { isIndexSymbol, parseOccSymbol, isOptionAsset } from './SymbolUtilities';\nimport { Strategies } from '../strategies/strategies';\nimport { CustomStrategy } from '../strategies/CustomStrategy';\nimport { isBetweenInclusive } from './DateUtilities';\nexport var OCCSymbolToOptionData = parseOccSymbol;\nexport var DeriveLegAssetType = function DeriveLegAssetType(leg) {\n if (_.isNil(leg.OptionType) === false) {\n return AssetType.Option;\n } else if (isIndexSymbol(leg.UnderlyingSymbol)) {\n return AssetType.Index;\n } else {\n return AssetType.Equity;\n }\n};\nexport var GetOCCSymbol = function GetOCCSymbol(symbolData) {\n var underlyingSymbol = symbolData.underlyingSymbol,\n expiration = symbolData.expiration,\n optionType = symbolData.optionType,\n strike = symbolData.strike,\n prefixSymbolName = symbolData.prefixSymbolName;\n\n if (expiration === undefined || strike === undefined || optionType === undefined) {\n return underlyingSymbol;\n }\n\n var otype = optionType === OptionType.Put ? 'P' : 'C';\n var rootSymbol = underlyingSymbol;\n rootSymbol = _.replace(underlyingSymbol, '$', '');\n\n if (isIndexSymbol(underlyingSymbol)) {\n // rootSymbol = _.replace(underlyingSymbol, '$', '');\n if (expiration.optionExpirationType === OptionExpirationType.PM && rootSymbol !== 'NANOS') {\n rootSymbol = \"\".concat(rootSymbol, \"W\");\n }\n }\n\n var dateVal = dayjs(expiration.date).format('YYMMDD'); //const strikeVal = _.padStart((strike * 1000).toString(), 6, '0');\n\n var strikeVal = strike * 1000;\n var prefix = prefixSymbolName ? '.' : '';\n return \"\".concat(prefix).concat(rootSymbol, \" \").concat(dateVal).concat(otype).concat(strikeVal);\n};\nexport var orderLegOccSymbol = function orderLegOccSymbol(underlyingSymbol, leg) {\n var Expiration = leg.Expiration,\n OptionType = leg.OptionType,\n Strike = leg.Strike;\n var symbolOcc = undefined;\n\n if (!OptionType || leg.AssetType === AssetType.Equity) {\n symbolOcc = underlyingSymbol.symbol;\n } else if (OptionType && Expiration && Strike) {\n symbolOcc = GetOCCSymbol({\n underlyingSymbol: underlyingSymbol.symbol,\n symbolType: underlyingSymbol.type,\n expiration: Expiration,\n optionType: OptionType,\n strike: Strike\n });\n } else {\n symbolOcc = undefined;\n }\n\n return symbolOcc;\n};\nexport var toPrefixedOccSymbol = function toPrefixedOccSymbol(symbol) {\n return _.first(symbol) === '.' ? symbol : \".\".concat(symbol);\n};\nexport var toRawOccSymbol = function toRawOccSymbol(symbol) {\n return _.isNil(symbol) ? '' : _.first(symbol) === '.' ? _.replace(symbol, '.', '') : symbol;\n};\nexport var AllStrategies = [].concat(_toConsumableArray(Strategies), [CustomStrategy]);\nexport var getStrategy = function getStrategy(name) {\n return _.find(AllStrategies, function (s) {\n return s.info.Name === name;\n }) || CustomStrategy;\n};\nexport var getKnownStrategy = function getKnownStrategy(name) {\n return _.find(Strategies, function (s) {\n return s.info.Name === name;\n });\n};\nexport var buildOrderLeg = function buildOrderLeg(partOrd, orderAction, assetType, positionEffect, optionType, ratio) {\n return {\n Symbol: partOrd.Symbol,\n UnderlyingSymbol: partOrd.UnderlyingSymbol || partOrd.Symbol,\n Id: uniqueId(),\n SpreadRatio: ratio,\n AssetType: assetType,\n Action: orderAction,\n PositionEffect: positionEffect,\n OptionType: optionType\n };\n};\nexport var transformForApi = function transformForApi(orderDesc) {\n var transformedOrder = orderDesc.kind === 'simple' ? {\n AccountId: orderDesc.accountId,\n SubaccountId: orderDesc.subaccountId,\n UnderlyingSymbol: '',\n Legs: [{\n AssetType: orderDesc.assetType,\n Symbol: orderDesc.symbol,\n Action: orderDesc.action,\n PositionEffect: orderDesc.effect\n }],\n ClientRefId: orderDesc.referenceId,\n OrderClass: OrderClass.Single,\n Quantity: orderDesc.quantity,\n OrderType: orderDesc.orderType,\n Price: orderDesc.price,\n Stop: orderDesc.stop,\n AllOrNone: false,\n Duration: DurationValues.Day,\n Description: '',\n DebitCredit: DebitOrCredit.Debit\n } : Object.assign({}, orderDesc, {\n Legs: _.map(orderDesc.Legs, function (l) {\n return Object.assign({}, l, {\n Symbol: l.OccSymbol || l.Symbol\n });\n })\n });\n var isSpreadOrder = _.keys(transformedOrder.Legs).length > 1 ? true : false;\n var DebitCredit = isSpreadOrder ? transformedOrder.DebitCredit : undefined;\n var finalorder = Object.assign({}, transformedOrder, {\n DebitCredit: DebitCredit\n });\n return transformOrderForApi(finalorder);\n};\n\nvar getCallPutValue = function getCallPutValue(l) {\n var legSymbol = l.OccSymbol;\n\n if (legSymbol === undefined) {\n return null;\n }\n\n var symInfo = parseOccSymbol(legSymbol);\n\n if (isOptionAsset(symInfo)) {\n return symInfo.option === OptionType.Call ? true : false;\n }\n\n return null;\n};\n\nfunction isPartialOrderWithLegs(order) {\n var ordLegs = _.get(order, 'Legs', undefined);\n\n return order && _.isArray(ordLegs) ? true : false;\n}\n\nexport function transformOrderForApi(order) {\n var Price = Math.abs(order.Price);\n\n if (isPartialOrderWithLegs(order)) {\n var Legs = _.map(order.Legs, function (l) {\n return Object.assign({}, l, {\n CallPut: getCallPutValue(l)\n });\n });\n\n return Object.assign({}, order, {\n Price: Price,\n Legs: Legs\n });\n }\n\n return Object.assign({}, order, {\n Price: Price\n });\n}\nexport var transformFromApi = function transformFromApi(order) {\n var Duration = getDurationFromCode(order.Duration);\n return Object.assign({}, order, {\n Duration: Duration,\n Legs: _.map(order.Legs, function (l) {\n return Object.assign({}, l, {\n Symbol: toRawOccSymbol(l.Symbol),\n OccSymbol: toPrefixedOccSymbol(l.Symbol)\n });\n })\n });\n};\n\nvar getDurationFromCode = function getDurationFromCode(duration) {\n if (_.isNumber(duration)) {\n var durationCode = _.toNumber(duration);\n\n switch (durationCode) {\n case 1:\n return Durations.Day;\n\n case 2:\n return Durations.GTC;\n\n case 3:\n return Durations.Manual;\n }\n }\n\n return duration;\n};\n\nexport var BuildInitialOrder = function BuildInitialOrder(strategy, partOrd) {\n return {\n OrderClass: strategy.profile.OrderClass,\n Legs: _.map(strategy.profile.Legs, function (leg, ind) {\n var legAction = leg.Direction === OrderActionDirection.Long ? OrderAction.Buy : OrderAction.Sell;\n\n if (leg.Direction === undefined) {\n legAction = ind === 0 ? OrderAction.Buy : OrderAction.Sell;\n }\n\n return Object.assign({}, leg, buildOrderLeg(partOrd, legAction, leg.AssetType, PositionEffect.Open, leg.OptionType, leg.SpreadRatio));\n })\n };\n};\nexport var getNextLegId = function getNextLegId(existingLegs) {\n var id = _.uniqueId('leg_');\n\n while (_.keys(existingLegs).includes(id)) {\n id = _.uniqueId('leg_');\n }\n\n return id;\n};\nexport var orderToReplaceOrder = function orderToReplaceOrder(order) {\n var valOrUndef = function valOrUndef(val) {\n return val && val !== 0 ? val : undefined;\n };\n\n return {\n AccountId: order.AccountId,\n DebitCredit: order.DebitCredit,\n SubaccountId: valOrUndef(order.SubaccountId),\n OrderId: order.OrderId,\n ClientRefId: valOrUndef(order.ClientRefId),\n OrderType: order.OrderType,\n Price: order.Price,\n Stop: valOrUndef(order.Stop)\n };\n};\nexport var OnlyFilledOrders = function OnlyFilledOrders(orders) {\n return _(orders).filter(function (o) {\n var orderStatus = o.OrderStatus;\n\n switch (orderStatus) {\n case OrderStatuses.PartiallyFilled:\n case OrderStatuses.Filled:\n {\n return true;\n }\n\n default:\n return false;\n }\n }).value();\n};\nexport var FilterOrderByDate = function FilterOrderByDate(orders, startDate, endDate) {\n return _.filter(orders, function (order) {\n if (startDate === undefined) {\n return true;\n }\n\n var endDateVal = endDate || new Date();\n return isBetweenInclusive(order.Date, startDate, endDateVal) ? true : false;\n });\n};\nexport var TodaysFilledOrders = function TodaysFilledOrders(orders) {\n var startDate = dayjs(new Date()).hour(0).toDate();\n var endDate = dayjs(new Date()).toDate();\n return OnlyFilledOrders(FilterOrderByDate(orders, startDate, endDate));\n};\nexport var GetSymbolsFromOrders = function GetSymbolsFromOrders(orders) {\n return _.reduce(orders, function (acc, o) {\n var Legs = o.Legs;\n var orderSymbols = Legs ? _.map(Legs, function (l) {\n return l.Symbol;\n }) : [];\n\n var updated = _(acc).union(orderSymbols).uniq().value();\n\n return updated;\n }, []);\n};\n\nvar toOrderLegWithMetaData = function toOrderLegWithMetaData(o, l) {\n return Object.assign({}, l, {\n UnderlyingSymbol: o.UnderlyingSymbol,\n OrderId: o.OrderId,\n Date: o.Date\n });\n};\n\nvar toOrderLegsWithMetaData = function toOrderLegsWithMetaData(orders) {\n return _.flatMap(orders, function (o) {\n return o.Legs.map(function (l) {\n return toOrderLegWithMetaData(o, l);\n });\n });\n};\n\nexport var orderutility = {\n toOrderLegsWithMetaData: toOrderLegsWithMetaData\n};\nexport var isSymbolExpired = function isSymbolExpired(symbol) {\n var symbData = parseOccSymbol(symbol); //not expired\n\n if (symbData.expiration && symbData.expiration.valueOf() <= new Date().valueOf()) {\n return true;\n }\n\n return false;\n};\nexport var getDefaultOrderQuantity = function getDefaultOrderQuantity(strategy, _ref) {\n var defaultQuantityForOptionsAndStrategies = _ref.defaultQuantityForOptionsAndStrategies,\n defaultQuantityForShares = _ref.defaultQuantityForShares;\n\n if (strategy === 'Custom' || strategy === undefined) {\n return 1;\n } else if (strategy === 'Shares') {\n return defaultQuantityForShares || 1;\n } else {\n return defaultQuantityForOptionsAndStrategies || 1;\n }\n};\nexport var getCustomStrategyLegQuantity = function getCustomStrategyLegQuantity(assetType, _ref2) {\n var defaultQuantityForOptionsAndStrategies = _ref2.defaultQuantityForOptionsAndStrategies,\n defaultQuantityForShares = _ref2.defaultQuantityForShares;\n\n if (assetType === AssetType.Equity) {\n return defaultQuantityForShares || 1;\n } else {\n return defaultQuantityForOptionsAndStrategies || 1;\n }\n};\nexport var findDuplicateLegs = function findDuplicateLegs(legs) {\n var partialLegs = _.map(legs, function (l) {\n var symbolData = parseOccSymbol(l.Symbol);\n var data = {\n spreadRatio: l.SpreadRatio,\n expiration: symbolData.expiration,\n strike: symbolData.strike,\n optionType: symbolData.option\n };\n return {\n symbol: l.Symbol,\n occSymbol: l.OccSymbol,\n data: data\n };\n });\n\n return _.filter(partialLegs, function (curr, currInd) {\n var eq = _.find(partialLegs, function (e, eInd) {\n return _.isEqual(e.data, curr.data) && eInd !== currInd;\n });\n\n return eq ? true : false;\n });\n};","import _toConsumableArray from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/toConsumableArray\";\nimport _defineProperty from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/defineProperty\";\n\nvar _RatioForPrice;\n\nimport { OrderAction, AssetType, DebitOrCredit } from '@tradingblock/types';\nimport _ from 'lodash';\nimport { isCalendar } from '..';\nvar RatioForPrice = (_RatioForPrice = {}, _defineProperty(_RatioForPrice, AssetType.Equity.toFixed(), 0.01), _defineProperty(_RatioForPrice, AssetType.Option.toFixed(), 1), _RatioForPrice);\n\nvar getLegMarketValueTotalForPrice = function getLegMarketValueTotalForPrice(leg, price) {\n var at = leg.AssetType;\n var priceRatio = RatioForPrice[at.toFixed()];\n var quantity = leg.SpreadRatio || 1;\n return priceRatio * quantity * price;\n};\n\nvar getAggregatedBidAsk = function getAggregatedBidAsk(legs) {\n return _.reduce(legs, function (acc, l) {\n return Object.assign({}, acc, {\n bid: acc.bid + l.bid,\n ask: acc.ask + l.ask\n });\n }, {\n bid: 0,\n ask: 0\n });\n};\n\nvar minOrZero = function minOrZero(vals) {\n return _.min(vals) || 0;\n};\n\nvar maxOrZero = function maxOrZero(vals) {\n return _.max(vals) || 0;\n};\n\nvar getLegBidAsk = function getLegBidAsk(legs, quotes) {\n return _.reduce(legs, function (acc, leg, legSymbol) {\n var legQuote = _.find(quotes, function (q) {\n return q.Symbol === legSymbol;\n });\n\n if (legQuote && leg && legSymbol) {\n // const isBuy = leg.Action === OrderAction.Buy;\n // const marketBidPrice = isBuy ? legQuote.BidPrice : legQuote.AskPrice;\n // const marketAskPrice = isBuy ? legQuote.AskPrice : legQuote.BidPrice;\n var legbid = getLegMarketValueTotalForPrice(leg, legQuote.BidPrice);\n var legask = getLegMarketValueTotalForPrice(leg, legQuote.AskPrice);\n return [].concat(_toConsumableArray(acc), [{\n leg: leg,\n bid: legbid,\n ask: legask,\n action: leg.Action\n }]);\n } else {\n return acc;\n }\n }, []);\n};\n\nexport var calculateOrderPrice = function calculateOrderPrice(legs, quotes, action, gcd, strategy) {\n if (strategy === 'Put Calendar' || strategy === 'Call Calendar') {\n var _option_legs = Object.values(legs).filter(function (l) {\n return l.AssetType === AssetType.Option;\n });\n\n var option_legs_keys = Object.keys(legs).filter(function (l) {\n return legs[l].AssetType === AssetType.Option;\n });\n\n if (_option_legs !== undefined && _option_legs.length === 2 && _option_legs[0] !== undefined && _option_legs[1] !== undefined && _option_legs[0].Expiration !== undefined && _option_legs[1].Expiration !== undefined) {\n var later_exp_option = _option_legs[0].Expiration.date > _option_legs[1].Expiration.date ? 0 : 1;\n var earlier_exp_option = _option_legs[0].Expiration.date < _option_legs[1].Expiration.date ? 0 : 1;\n var later_exp_option_quote = quotes.find(function (q) {\n return q.Symbol === option_legs_keys[later_exp_option];\n });\n var earlier_exp_option_quote = quotes.find(function (q) {\n return q.Symbol === option_legs_keys[earlier_exp_option];\n });\n var _totalMultiple = 100;\n\n if (later_exp_option_quote !== undefined && earlier_exp_option_quote !== undefined) {\n var _bid = later_exp_option_quote.BidPrice - earlier_exp_option_quote.AskPrice;\n\n var _ask = later_exp_option_quote.AskPrice - earlier_exp_option_quote.BidPrice;\n\n return {\n bid: _.round(_bid, 2),\n ask: _.round(_ask, 2),\n mid: _.round((_ask - _bid) / 2 + _bid, 3),\n totalMultiple: _totalMultiple,\n gcd: gcd\n };\n }\n }\n }\n\n var option_legs = Object.values(legs).filter(function (l) {\n return l.AssetType === AssetType.Option;\n });\n var maxRatio = _.max(_.map(legs, function (l) {\n return RatioForPrice[l.AssetType.toFixed()];\n })) || 1;\n var legPrices = getLegBidAsk(legs, quotes);\n\n var shortLegs = _.filter(legPrices, function (l) {\n return l.action === OrderAction.Sell;\n });\n\n var longLegs = _.filter(legPrices, function (l) {\n return l.action === OrderAction.Buy;\n });\n\n var shorts = getAggregatedBidAsk(shortLegs);\n var longs = getAggregatedBidAsk(longLegs);\n var bidValue = action === OrderAction.Buy ? longs.bid - shorts.ask : shorts.bid - longs.ask;\n var askValue = action === OrderAction.Buy ? longs.ask - shorts.bid : shorts.ask - longs.bid;\n var bid = minOrZero([bidValue, askValue]) / gcd / maxRatio;\n var ask = maxOrZero([bidValue, askValue]) / gcd / maxRatio;\n var mid = (ask - bid) / 2 + bid;\n var totalMultiple = option_legs.length > 0 ? 100 : 1;\n return {\n ask: _.round(ask, 2),\n bid: _.round(bid, 2),\n mid: _.round(mid, 2),\n totalMultiple: totalMultiple,\n gcd: gcd\n };\n};\nexport var getDebitOrCredit = function getDebitOrCredit(data) {\n var action = data.action,\n strategy = data.strategy,\n currentDebitOrCredit = data.currentDebitOrCredit,\n price = data.price,\n updateCreditOrDebit = data.updateCreditOrDebit,\n legs = data.legs,\n mid = data.mid,\n match = data.match;\n var orderActionValue = isCalendar(strategy) ? OrderAction.Buy : action;\n var defaultDebitOrCredit = orderActionValue === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n var debitCredit = currentDebitOrCredit;\n var isCalendarMatch = match && (match.info.Name === 'Call Calendar' || match.info.Name === 'Put Calendar');\n var isCallVerticalMatch = match && match.info.Name === 'Call Vertical';\n var isPutVerticalMatch = match && match.info.Name === 'Put Vertical';\n var isCoveredCallMatch = match && match.info.Name === 'Covered Call';\n var isCallButterflyMatch = match && match.info.Name === 'Call Butterfly';\n var isPutButterflyMatch = match && match.info.Name === 'Put Butterfly';\n var isIronButterflyMatch = match && match.info.Name === 'Iron Butterfly';\n var isIronCondorMatch = match && match.info.Name === 'Iron Condor';\n var isCallCondorMatch = match && match.info.Name === 'Call Condor';\n var isPutCondorMatch = match && match.info.Name === 'Put Condor';\n var isCall = match && match.info.Name === 'Call';\n var isPut = match && match.info.Name === 'Put';\n\n if (strategy === 'Custom' && _.every(legs, function (l) {\n return l.Action === OrderAction.Buy;\n })) {\n debitCredit = DebitOrCredit.Debit;\n } else if (strategy === 'Custom' && _.every(legs, function (l) {\n return l.Action === OrderAction.Sell;\n })) {\n debitCredit = DebitOrCredit.Credit;\n } else if (updateCreditOrDebit && (mid !== undefined && mid < 0 || price < 0)) {\n debitCredit = defaultDebitOrCredit === DebitOrCredit.Debit ? DebitOrCredit.Credit : DebitOrCredit.Debit;\n } else if (updateCreditOrDebit && (mid !== undefined && mid >= 0 || price >= 0)) {\n debitCredit = defaultDebitOrCredit;\n }\n\n if (strategy === 'Call Calendar' || strategy === 'Put Calendar') {\n if (price !== undefined) {\n if (price > 0 && action === OrderAction.Buy) {\n debitCredit = DebitOrCredit.Debit;\n } else if (price > 0 && action === OrderAction.Sell) {\n debitCredit = DebitOrCredit.Credit;\n }\n\n if (price < 0 && action === OrderAction.Buy) {\n debitCredit = DebitOrCredit.Credit;\n } else if (price < 0 && action === OrderAction.Sell) {\n debitCredit = DebitOrCredit.Debit;\n }\n }\n } // find the latest expiring leg\n\n\n var findLatestExpiration = function findLatestExpiration(legs) {\n var latestExpiration = null;\n var latestExpirationDate = new Date(0); // Initialize with a very early date\n\n for (var legKey in legs) {\n var leg = legs[legKey];\n var expirationDate = new Date(leg.Expiration.date);\n\n if (expirationDate > latestExpirationDate) {\n latestExpirationDate = expirationDate;\n latestExpiration = leg;\n }\n }\n\n return latestExpiration;\n }; // find the lowest strike leg\n\n\n var findLowestStrike = function findLowestStrike(legs) {\n var lowestStrike = null;\n var lowestStrikeValue = 0;\n\n for (var legKey in legs) {\n var leg = legs[legKey];\n var strike = leg.Strike;\n\n if (lowestStrike === null || strike < lowestStrikeValue) {\n lowestStrikeValue = strike;\n lowestStrike = leg;\n }\n }\n\n return lowestStrike;\n };\n\n var findShareLeg = function findShareLeg(legs) {\n var shareLeg = null;\n\n for (var legKey in legs) {\n var leg = legs[legKey];\n\n if (leg.AssetType === AssetType.Equity) {\n shareLeg = leg;\n break;\n }\n }\n\n return shareLeg;\n };\n\n if (isCall) {\n var lowestStrikeLeg = findLowestStrike(legs);\n\n if (lowestStrikeLeg) {\n if (updateCreditOrDebit) {\n debitCredit = lowestStrikeLeg.Action === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n }\n }\n }\n\n if (isPut) {\n var _lowestStrikeLeg = findLowestStrike(legs);\n\n if (_lowestStrikeLeg) {\n if (updateCreditOrDebit) {\n debitCredit = _lowestStrikeLeg.Action === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n }\n }\n }\n\n if (isCallVerticalMatch) {\n // use the lowest strike leg action to determine the debit or credit\n var _lowestStrikeLeg2 = findLowestStrike(legs);\n\n if (_lowestStrikeLeg2) {\n if (updateCreditOrDebit) {\n // for a call vertical the order is considered a buy if you are buying the lower strike and selling the higher strike\n debitCredit = _lowestStrikeLeg2.Action === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n }\n }\n }\n\n if (isPutVerticalMatch) {\n // use the lowest strike leg action to determine the debit or credit\n var _lowestStrikeLeg3 = findLowestStrike(legs);\n\n if (_lowestStrikeLeg3) {\n if (updateCreditOrDebit) {\n // for a put vertical the order is considered a buy if you are buying the higher strike and selling the lower strike\n debitCredit = _lowestStrikeLeg3.Action === OrderAction.Buy ? DebitOrCredit.Credit : DebitOrCredit.Debit;\n }\n }\n }\n\n if (isCoveredCallMatch) {\n // use the share leg action to determine the debit or credit\n var shareLeg = findShareLeg(legs);\n\n if (shareLeg) {\n if (updateCreditOrDebit) {\n // for a covered call the order is considered a buy if you are buying the share and selling the call\n debitCredit = shareLeg.Action === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n }\n }\n }\n\n if (isCallButterflyMatch) {\n // use the lowest strike leg action to determine the debit or credit\n var _lowestStrikeLeg4 = findLowestStrike(legs);\n\n if (_lowestStrikeLeg4) {\n if (updateCreditOrDebit) {\n // for a call butterfly the order is considered a buy if you are buying the lower strike and higher strike and selling the middle strike\n debitCredit = _lowestStrikeLeg4.Action === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n }\n }\n }\n\n if (isPutButterflyMatch) {\n // use the lowest strike leg action to determine the debit or credit\n var _lowestStrikeLeg5 = findLowestStrike(legs);\n\n if (_lowestStrikeLeg5) {\n if (updateCreditOrDebit) {\n // for a put butterfly the order is considered a buy if you are buying the middle strike and selling the lower strike and higher strike\n debitCredit = _lowestStrikeLeg5.Action === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n }\n }\n }\n\n if (isIronButterflyMatch) {\n // use the lowest strike leg action to determine the debit or credit\n var _lowestStrikeLeg6 = findLowestStrike(legs);\n\n if (_lowestStrikeLeg6) {\n if (updateCreditOrDebit) {\n // for an iron butterfly the order is considered a buy if you are buying the lower strike and higher strike and selling the middle strike\n debitCredit = _lowestStrikeLeg6.Action === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n }\n }\n }\n\n if (isIronCondorMatch) {\n // use the lowest strike leg action to determine the debit or credit\n var _lowestStrikeLeg7 = findLowestStrike(legs);\n\n if (_lowestStrikeLeg7) {\n if (updateCreditOrDebit) {\n // for an iron condor the order is considered a buy if you are buying the lower strike and higher strike and selling the middle strike\n debitCredit = _lowestStrikeLeg7.Action === OrderAction.Sell ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n }\n }\n }\n\n if (isCallCondorMatch) {\n // use the lowest strike leg action to determine the debit or credit\n var _lowestStrikeLeg8 = findLowestStrike(legs);\n\n if (_lowestStrikeLeg8) {\n if (updateCreditOrDebit) {\n if (price > 0) {\n debitCredit = _lowestStrikeLeg8.Action === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n } else if (price < 0) {\n debitCredit = _lowestStrikeLeg8.Action === OrderAction.Buy ? DebitOrCredit.Credit : DebitOrCredit.Debit;\n }\n }\n }\n }\n\n if (isPutCondorMatch) {\n // use the lowest strike leg action to determine the debit or credit\n var _lowestStrikeLeg9 = findLowestStrike(legs);\n\n if (_lowestStrikeLeg9) {\n if (updateCreditOrDebit) {\n if (price > 0) {\n debitCredit = _lowestStrikeLeg9.Action === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n } else if (price < 0) {\n debitCredit = _lowestStrikeLeg9.Action === OrderAction.Buy ? DebitOrCredit.Credit : DebitOrCredit.Debit;\n }\n }\n }\n }\n\n return debitCredit;\n};\nexport var getBestPrice = function getBestPrice(_ref) {\n var ask = _ref.ask,\n bid = _ref.bid,\n last = _ref.last,\n defaultValue = _ref.defaultValue,\n isSettlementSet = _ref.isSettlementSet;\n // Normalize ask and bid values to 0 if they are undefined or null, assuming negative prices are invalid\n var askValue = _.isNil(ask) ? 0 : ask;\n var bidValue = _.isNil(bid) ? 0 : bid; // If the settlement is set, return the last price immediately\n\n if (isSettlementSet === true) {\n return last;\n } // If both bid and ask prices are non-negative\n\n\n if (bidValue >= 0 && askValue > 0) {\n // If the last price is less than or equal to the bid, return the bid value\n if (last <= bidValue) {\n return bidValue;\n } // Else if the last price is greater than the ask, return the ask value\n else if (last > askValue) {\n return askValue;\n } // If the default value is set to 'average', compute the average of ask and bid\n\n\n if (defaultValue === 'avgBidAsk') {\n // If the bid value is 0, askValue is greater than 0, and last is greater than askValue,\n // return askValue, otherwise return the last price\n if (bidValue === 0) {\n // If ask is greater than 0, and last is greater than ask, return ask, otherwise return last\n if (askValue > 0 && last > askValue) {\n return askValue;\n } else {\n return last;\n }\n } else {\n // Otherwise, return the average of ask and bid\n return (askValue + bidValue) / 2;\n }\n } else {\n // Else if not averaging, return the last price\n return last;\n }\n } else {\n // Else if the bid or ask values are not in the expected range\n if (askValue <= 0) {\n // And ask value is non-positive, return the last price\n return last;\n } else {\n // Else if the ask value is positive but less than the last, return ask, otherwise return last\n if (askValue < last) {\n return askValue;\n } else {\n return last;\n }\n }\n }\n};","import _defineProperty from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/defineProperty\";\nimport _classCallCheck from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport * as dayjs from 'dayjs';\nimport { toExpiration, getNextLegId, isString } from '..';\nimport { getDefaultOrderQuantity } from '../utilities/OrderUtilities';\nexport var LegBuilder =\n/*#__PURE__*/\nfunction () {\n function LegBuilder(rootSymbol, id) {\n var _this = this;\n\n _classCallCheck(this, LegBuilder);\n\n this.expiration = function (val, optionExpirationType) {\n var expVal = dayjs.isDayjs(val) ? val.toDate() : new Date(val);\n return _this.set('Expiration', toExpiration(expVal, _this.rootSymbol, optionExpirationType));\n };\n\n this.legState = {};\n this.rootSymbol = rootSymbol;\n this.id = id;\n }\n\n _createClass(LegBuilder, [{\n key: \"set\",\n value: function set(k, value) {\n this.legState = Object.assign({}, this.legState, _defineProperty({}, k, value));\n return this;\n }\n }, {\n key: \"get\",\n value: function get(k) {\n return this.legState[k];\n }\n }, {\n key: \"optionType\",\n value: function optionType(val) {\n return this.set('OptionType', val);\n }\n }, {\n key: \"positionEffect\",\n value: function positionEffect(val) {\n return this.set('PositionEffect', val);\n }\n }, {\n key: \"assetType\",\n value: function assetType(val) {\n return this.set('AssetType', val);\n }\n }, {\n key: \"action\",\n value: function action(act) {\n return this.set('Action', act);\n }\n }, {\n key: \"quantity\",\n value: function quantity(val) {\n return this.set('SpreadRatio', val || 1);\n }\n }, {\n key: \"strike\",\n value: function strike(val) {\n return this.set('Strike', val);\n }\n }, {\n key: \"subaccountId\",\n value: function subaccountId(val) {\n return this.set('SubaccountId', val);\n }\n }, {\n key: \"leg\",\n value: function leg() {\n var _this$legState = this.legState,\n Strike = _this$legState.Strike,\n Expiration = _this$legState.Expiration,\n SpreadRatio = _this$legState.SpreadRatio,\n Action = _this$legState.Action,\n PositionEffect = _this$legState.PositionEffect,\n AssetType = _this$legState.AssetType,\n OptionType = _this$legState.OptionType,\n SubaccountId = _this$legState.SubaccountId;\n return {\n Id: this.id,\n UnderlyingSymbol: this.rootSymbol,\n Expiration: Expiration,\n Strike: Strike,\n SpreadRatio: SpreadRatio,\n OptionType: OptionType,\n Action: Action,\n AssetType: AssetType,\n PositionEffect: PositionEffect,\n SubaccountId: SubaccountId\n };\n }\n }]);\n\n return LegBuilder;\n}();\nvar OrderBuilderNoSymbolError = {\n error: 'you must set order symbol before creating legs'\n};\nexport var OrderBuilder =\n/*#__PURE__*/\nfunction () {\n function OrderBuilder(ordDefaults) {\n _classCallCheck(this, OrderBuilder);\n\n this.orderState = {};\n this.dirty = {};\n this.order_defaults = ordDefaults;\n }\n\n _createClass(OrderBuilder, [{\n key: \"set\",\n value: function set(k, value) {\n this.dirty[k] = true;\n this.orderState = Object.assign({}, this.orderState, _defineProperty({}, k, value));\n return this;\n }\n }, {\n key: \"leg\",\n value: function leg(legBuilder) {\n var _this$orderState = this.orderState,\n symbol = _this$orderState.symbol,\n legs = _this$orderState.legs;\n\n if (this.orderState.symbol === undefined) {\n throw OrderBuilderNoSymbolError;\n }\n\n var existingLegs = legs || {};\n var legId = getNextLegId(existingLegs);\n this.orderState = Object.assign({}, this.orderState, {\n legs: Object.assign({}, existingLegs, _defineProperty({}, legId, legBuilder(new LegBuilder(symbol.rootSymbol, legId)).leg()))\n });\n return this;\n }\n }, {\n key: \"duration\",\n value: function duration(val) {\n return this.set('duration', val);\n }\n }, {\n key: \"strategy\",\n value: function strategy(_strategy) {\n var strategyName = isString(_strategy) ? _strategy : _strategy.info.Name;\n var updated = this.set('strategy', strategyName);\n var orderDefs = this.order_defaults;\n\n if (orderDefs && !this.dirty['quantity']) {\n return updated.set('quantity', getDefaultOrderQuantity(strategyName, orderDefs));\n }\n\n return updated;\n }\n }, {\n key: \"symbol\",\n value: function symbol(_symbol) {\n return this.set('symbol', _symbol);\n }\n }, {\n key: \"quantity\",\n value: function quantity(val) {\n return this.set('quantity', val);\n }\n }, {\n key: \"orderType\",\n value: function orderType(val) {\n return this.set('orderType', val);\n }\n }, {\n key: \"creditOrDebit\",\n value: function creditOrDebit(val) {\n return this.set('debitCredit', val);\n }\n }, {\n key: \"action\",\n value: function action(val) {\n return this.set('action', val);\n }\n }, {\n key: \"orderDefaults\",\n value: function orderDefaults(defaultValues) {\n this.order_defaults = defaultValues;\n return this;\n }\n }, {\n key: \"order\",\n value: function order() {\n return this.orderState;\n }\n }, {\n key: \"subaccountId\",\n value: function subaccountId(val) {\n return this.set('subaccountId', val);\n }\n }]);\n\n return OrderBuilder;\n}();","import { OrderStatuses } from '@tradingblock/types';\nexport var CancellableStatuses = [OrderStatuses.New, OrderStatuses.PartiallyFilled, OrderStatuses.Replaced, OrderStatuses.PendingCancel, OrderStatuses.PendingNew, OrderStatuses.PendingReplace, OrderStatuses.Saved, OrderStatuses.Initiated, OrderStatuses.ReplaceInitiated, OrderStatuses.CancelInitiated, OrderStatuses.CancelInitiated, OrderStatuses.CancelRejected, OrderStatuses.ReplaceRejected];\nexport var ReplaceableStatuses = [OrderStatuses.New, OrderStatuses.Replaced, OrderStatuses.PendingReplace, OrderStatuses.Saved, OrderStatuses.Initiated, OrderStatuses.ReplaceInitiated, OrderStatuses.ReplaceRejected];\nexport var OrderFilledStatuses = [OrderStatuses.Filled, OrderStatuses.PartiallyFilled, OrderStatuses.PartiallyCancelled];\nexport var ExecutedStatuses = [OrderStatuses.Filled, OrderStatuses.PartiallyFilled];\nexport var OpenStatuses = [OrderStatuses.New, OrderStatuses.PendingNew, OrderStatuses.Replaced, OrderStatuses.PendingReplace, OrderStatuses.Saved, OrderStatuses.Initiated, OrderStatuses.ReplaceInitiated, OrderStatuses.CancelInitiated, OrderStatuses.CancelRejected, OrderStatuses.ReplaceRejected];\nexport var OrderStatusCategories = {\n Cancellable: CancellableStatuses,\n Replaceable: ReplaceableStatuses,\n Filled: OrderFilledStatuses,\n Executed: ExecutedStatuses,\n Open: OpenStatuses\n};","import { isStrategy } from '@tradingblock/types';\nimport { CallCalendar, PutCalendar } from '..';\nexport var isCalendar = function isCalendar(strategy) {\n return isStrategy([CallCalendar, PutCalendar], strategy);\n};","import _toConsumableArray from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/toConsumableArray\";\nimport * as tslib_1 from \"tslib\";\nimport dayjs from 'dayjs';\nimport { getBestPrice } from '../orders/orderPrice';\nimport { OrderAction } from '@tradingblock/types';\nimport _ from 'lodash';\nexport var pnlByPrice = function pnlByPrice(_ref, priceBaseline, commission) {\n var Symbol = _ref.Symbol,\n AskPrice = _ref.AskPrice,\n BidPrice = _ref.BidPrice,\n LastOrClosePrice = _ref.LastOrClosePrice,\n PositionOnOpen = _ref.PositionOnOpen,\n Multiplier = _ref.Multiplier,\n isSettlementSet = _ref.isSettlementSet;\n var bestPrice = getBestPrice({\n last: LastOrClosePrice || 0,\n ask: AskPrice,\n bid: BidPrice,\n defaultValue: 'avgBidAsk',\n isSettlementSet: isSettlementSet\n }); // const commissionValue = commission === undefined ? 0 : commission;\n\n var commissionValue = 0;\n var initialValue = priceBaseline * PositionOnOpen + commissionValue;\n var currentValue = bestPrice * PositionOnOpen;\n var pnl = (currentValue - initialValue) * Multiplier;\n\n if (_.includes(Symbol, 'HUT')) {\n console.log(\"\".concat(Symbol), {\n bestPrice: bestPrice,\n commissionValue: commissionValue,\n initialValue: initialValue,\n currentValue: currentValue,\n pnl: pnl,\n priceBaseline: priceBaseline,\n LastOrClosePrice: LastOrClosePrice,\n AskPrice: AskPrice,\n BidPrice: BidPrice,\n PositionOnOpen: PositionOnOpen,\n Multiplier: Multiplier,\n isSettlementSet: isSettlementSet\n });\n } // const pnl = currentValue - initialValue;\n\n\n return pnl;\n};\nexport var orderLegNetQuantityChange = function orderLegNetQuantityChange(_ref2) {\n var Action = _ref2.Action,\n LegFillQuantity = _ref2.LegFillQuantity;\n var isBuy = Action === OrderAction.Buy;\n var fillQuantity = _.isNumber(LegFillQuantity) ? LegFillQuantity : 0;\n var quantityBought = isBuy ? fillQuantity : 0;\n var quantitySold = !isBuy ? Math.abs(fillQuantity) : 0;\n return quantityBought - quantitySold;\n};\n\nvar getAvgPrice = function getAvgPrice(legs) {\n var totalQuantity = _(legs).map(function (l) {\n return l.LegFillQuantity || 0;\n }).sum();\n\n var avgPrice = _.reduce(legs, function (acc, l) {\n var avgPrice = l.AverageLegFillPrice || 0;\n var quantity = l.LegFillQuantity || 0;\n return acc + avgPrice * (quantity / totalQuantity);\n }, 0);\n\n var priceInfo = {\n total: totalQuantity,\n avgPrice: avgPrice\n };\n return priceInfo;\n};\n\nexport var orderLegTradingPnL = function orderLegTradingPnL(_a, legs) {\n var roundPrecision = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 4;\n\n var AskPrice = _a.AskPrice,\n BidPrice = _a.BidPrice,\n LastOrClosePrice = _a.LastOrClosePrice,\n ClosePrice = _a.ClosePrice,\n Multiplier = _a.Multiplier,\n IsSettlementSet = _a.IsSettlementSet,\n rest = tslib_1.__rest(_a, [\"AskPrice\", \"BidPrice\", \"LastOrClosePrice\", \"ClosePrice\", \"Multiplier\", \"IsSettlementSet\"]);\n\n var legGroups = _.reduce(legs, function (acc, leg) {\n var Action = leg.Action;\n var isBuy = Action === OrderAction.Buy;\n return {\n buys: isBuy ? [].concat(_toConsumableArray(acc.buys), [leg]) : acc.buys,\n sells: isBuy ? acc.sells : [].concat(_toConsumableArray(acc.sells), [leg])\n };\n }, {\n buys: [],\n sells: []\n });\n\n var sells = getAvgPrice(legGroups.sells);\n var buys = getAvgPrice(legGroups.buys); // const buyPrices: number[] = isBuy ? _.times(fillQuantity, () => AverageLegFillPrice || 0) : [];\n // const avgBoughtPrice = quantityBought > 0 ? _.sum(buyPrices) / quantityBought : 0;\n // const sellPrices: number[] = !isBuy ? _.times(fillQuantity, () => AverageLegFillPrice || 0) : [];\n // const avgSoldPrice = quantitySold > 0 ? _.sum(sellPrices) / quantitySold : 0;\n\n var lastPrice = getBestPrice({\n last: LastOrClosePrice || 0,\n ask: AskPrice,\n bid: BidPrice,\n defaultValue: 'avgBidAsk',\n isSettlementSet: IsSettlementSet\n });\n var tradingPnLValue = (buys.total * (lastPrice - buys.avgPrice) - sells.total * (lastPrice - sells.avgPrice)) * Multiplier;\n return {\n pnl: _.round(tradingPnLValue, roundPrecision),\n sells: sells,\n buys: buys\n };\n};\nexport var PositionPnLInfo = function PositionPnLInfo(position) {\n var roundPrecision = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 4;\n var DateOpened = position.DateOpened,\n OpenPrice = position.OpenPrice,\n ClosePrice = position.ClosePrice;\n var dailyPLPriceBaseline = dayjs(DateOpened).isSame(new Date(), 'date') ? OpenPrice : ClosePrice || 0;\n var isToday = dayjs(DateOpened).isSame(new Date(), 'date');\n\n var pnl = _.round(pnlByPrice(position, dailyPLPriceBaseline), roundPrecision);\n\n return {\n trading: isToday ? pnl : 0,\n position: isToday ? 0 : pnl,\n total: pnl\n };\n}; // export const ExistingPositionsPnL = () => {\n// const positionPnL = positionDailyPnL();\n// }\n// export const PositionPnL = () => {\n// const positionsTradedToday = (quantityBought * (lastPrice - avgBoughtPrice) - quantitySold * (lastPrice - avgSoldPrice)) * (isOption ? 100 : 1);\n// const positionsExistingBeforeToday = positionOnOpen * (lastPrice - closePrice) * (isOption ? 100 : 1);\n// const combined = tradingPnL + positionPnL;\n// return {\n// positionsTradedToday,\n// positionsExistingBeforeToday,\n// combined,\n// }\n// }","import { PutCalendar, CallCalendar, Straddle, CallButterfly, Strangle, PutButterfly, CallCondor, PutCondor, IronButterfly, IronCondor } from './strategies';\nimport { OrderAction } from '@tradingblock/types';\nimport _ from 'lodash';\nimport { isInfinity } from '..';\n\nvar getLoss = function getLoss(strategyName, _ref, quotes) {\n var price = _ref.price,\n Quantity = _ref.Quantity,\n Legs = _ref.Legs,\n action = _ref.action;\n var isBuy = action === OrderAction.Buy;\n\n var allStrikes = _(Legs).map(function (l) {\n return l.Strike;\n }).filter(function (s) {\n return s !== undefined;\n }).value();\n\n var Px = price;\n var Cx = 0;\n var multiplier = _.every(quotes, function (q) {\n return q.Multiplier === 1;\n }) ? 1 : 100;\n var Qty = Quantity * multiplier;\n var K1 = allStrikes[0];\n var K2 = allStrikes[1];\n\n switch (strategyName) {\n case 'Call':\n case 'Shares':\n case Strangle.info.Name:\n case Straddle.info.Name:\n {\n return isBuy ? Px + Cx : 'Infinity';\n }\n\n case 'Put':\n {\n return isBuy ? Px + Cx : Px - Qty * K1 - Cx;\n }\n\n case 'Covered Call':\n {\n return isBuy ? Px + Cx : -Qty * K1 + Px - Cx;\n }\n\n case 'Married Put':\n {\n return isBuy ? Qty * K1 - Px - Cx : 'Infinity';\n }\n\n case 'Call Vertical':\n case 'Put Vertical':\n case CallButterfly.info.Name:\n case PutButterfly.info.Name:\n case CallCondor.info.Name:\n case PutCondor.info.Name:\n case IronButterfly.info.Name:\n case IronCondor.info.Name:\n {\n return isBuy ? Px + Cx : -Qty * Math.abs(K1 - K2) + Px - Cx;\n }\n\n case PutCalendar.info.Name:\n {\n return isBuy ? -Qty * _.max([0, K2 - K1]) - Px - Cx : -Qty * _.max([0, K1 - K2]) + Px - Cx;\n }\n\n case CallCalendar.info.Name:\n {\n return isBuy ? -Qty * _.max([0, K1 - K2]) - Px - Cx : -Qty * _.max([0, K2 - K1]) + Px - Cx;\n }\n // case Collar.info.Name: {\n // return isBuy ? Qty * _.min([K1, K2]) - Px - Cx : -Qty * _.max([K1, K2]) + Px - Cx;\n // }\n\n default:\n {\n return 0;\n }\n }\n};\n\nvar absVal = function absVal(val) {\n return isInfinity(val) ? val : Math.abs(val);\n};\n\nvar getProfitValue = function getProfitValue(strategyName, _ref2, quotes) {\n var price = _ref2.price,\n Quantity = _ref2.Quantity,\n Legs = _ref2.Legs,\n action = _ref2.action,\n commission = _ref2.commission;\n var isBuy = action === OrderAction.Buy;\n\n var allStrikes = _(Legs).map(function (l) {\n return l.Strike;\n }).filter(function (s) {\n return s !== undefined && s !== null;\n }).value();\n\n var Px = price;\n var multiplier = _.every(quotes, function (q) {\n return q.Multiplier === 1;\n }) ? 1 : 100;\n var Qty = Quantity * multiplier;\n var K1 = allStrikes[0];\n var K2 = allStrikes[1];\n\n switch (strategyName) {\n case 'Call':\n case 'Shares':\n case Strangle.info.Name:\n case Straddle.info.Name:\n {\n return isBuy ? 'Infinity' : Px;\n }\n\n case 'Put':\n case 'Covered Call':\n {\n return isBuy ? Qty * K1 - Px : Px;\n }\n\n case 'Married Put':\n {\n return isBuy ? 'Infinity' : -1 * Qty * K1 + Px;\n }\n\n case 'Call Vertical':\n case 'Put Vertical':\n case CallButterfly.info.Name:\n case PutButterfly.info.Name:\n case CallCondor.info.Name:\n case PutCondor.info.Name:\n case IronButterfly.info.Name:\n case IronCondor.info.Name:\n {\n return isBuy ? Qty * Math.abs(K1 - K2) - Px : Px;\n }\n\n case PutCalendar.info.Name:\n {\n return isBuy ? Qty * _.max([0, K1 - K2]) + Px : Qty * _.max([0, K2 - K1]) - Px;\n }\n\n case CallCalendar.info.Name:\n {\n return isBuy ? Qty * _.max([0, K2 - K1]) + Px : Qty * _.max([0, K1 - K2]) - Px;\n }\n // case Collar.info.Name: {\n // return isBuy ? Qty * _.max([0, K1 - K2]) - Px - Cx : -Qty * _.min([K1, K2]) + Px - Cx;\n // }\n\n default:\n {\n return 0;\n }\n }\n};\n\nexport var getProfitLoss = function getProfitLoss(strategyName, order, quotes) {\n var profit = getProfitValue(strategyName, order, quotes);\n var loss = getLoss(strategyName, order, quotes);\n return {\n profit: absVal(profit),\n loss: absVal(loss)\n };\n};","import { TokenRequestUrl } from '../constants';\nimport CryptoJS from 'crypto-js';\n\nfunction base64url(source) {\n // Encode in classical base64\n var encodedSource = CryptoJS.enc.Base64.stringify(source); // Remove padding equal characters\n\n encodedSource = encodedSource.replace(/=+$/, ''); // Replace characters according to base64url specifications\n\n encodedSource = encodedSource.replace(/\\+/g, '-');\n encodedSource = encodedSource.replace(/\\//g, '_');\n return encodedSource;\n}\n\nfunction GenerateIV() {\n var date = new Date();\n var ivyear = date.getUTCFullYear().toString();\n var ivmonth = date.getUTCMonth() + 1 > 9 ? (date.getUTCMonth() + 1).toString() : '0' + (date.getUTCMonth() + 1);\n var ivday = date.getUTCDate() > 9 ? date.getUTCDate().toString() : '0' + date.getUTCDate();\n var ivstr = 'TBAPIENT' + ivyear + ivmonth + ivday;\n return ivstr;\n} //helper function for encrypt message\n\n\nfunction Encrypt(txtUserName, _key) {\n var key = CryptoJS.enc.Utf8.parse(_key);\n var iv = CryptoJS.enc.Utf8.parse(GenerateIV());\n var ciphertext = CryptoJS.AES.encrypt(CryptoJS.enc.Utf8.parse(txtUserName), key, {\n keySize: 128,\n iv: iv,\n mode: CryptoJS.mode.CBC,\n padding: CryptoJS.pad.Pkcs7\n });\n var re = String(ciphertext.toString());\n re = re.replace(/=+$/, '');\n re = re.replace(/\\+/g, '-');\n re = re.replace(/\\//g, '_');\n return re;\n} //--------------------------------------------------------------------------------\n// STEP 1: generate JWT header this part should provide a static output as: \"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9\"\n\n\nfunction generateHeader() {\n var header = {\n typ: 'JWT',\n alg: 'HS256'\n };\n var stringifiedHeader = CryptoJS.enc.Utf8.parse(JSON.stringify(header));\n var encodedHeader = base64url(stringifiedHeader);\n return encodedHeader;\n} //----------------------------------------------------\n//STEP 3: Generate Signature\n\n\nfunction generateSignature(_header, _payload, _apikey) {\n var toSign = _header + '.' + _payload;\n var signature = CryptoJS.HmacSHA256(toSign, _apikey);\n var encodedSignature = base64url(signature);\n return encodedSignature;\n} //------------------------------------------------------\n//STEP 2: generate Payload\n\n\nfunction generatePayload(_username, _password, _apikey, _bearer) {\n var user = {\n username: _username,\n password: _password\n }; //encode user\n\n var stringedUser = JSON.stringify(user); //encode user json and use AES to encrypt with api key.\n\n var ciphertext = Encrypt(stringedUser, _apikey);\n var date = new Date();\n var payload = {\n EndUser: ciphertext,\n Entity: _bearer,\n Timestamp: date\n };\n var stringifiedPayload = CryptoJS.enc.Utf8.parse(JSON.stringify(payload));\n var encodedPayload = base64url(stringifiedPayload);\n return encodedPayload;\n}\n\nfunction getTokenRequest(username, password, apikey, bearer) {\n var header = generateHeader();\n var payload = generatePayload(username, password, apikey, bearer);\n var signature = generateSignature(header, payload, apikey);\n var request = header + '.' + payload + '.' + signature;\n return request;\n}\n\nexport function GetToken(api) {\n return function (username, password, key, bearer) {\n var request = getTokenRequest(username, password, key, bearer);\n console.log('GetToken :: payload: ', request);\n return api.post(TokenRequestUrl, {\n JWS: request\n }).then(function (res) {\n if (res.responseCode !== 0) {\n console.log('GetToken Response', res);\n }\n\n return res;\n });\n };\n}","import { GetBalancesForAccountsURL, GetBalancesForWithdrawalURL, GetBalancesUrl } from '../constants';\nexport function GetAvailableFunds(api) {\n return function (accountId, subaccountId) {\n return api.authenticated().get(GetBalancesUrl, {\n accountId: accountId,\n subaccountId: subaccountId\n }, {\n headers: {\n Accept: 'application/json'\n }\n });\n };\n}\nexport function GetBalances(api) {\n return function (accountId, subaccountId) {\n return api.authenticated().get(GetBalancesUrl, {\n accountId: accountId,\n subaccountId: subaccountId\n }, {\n headers: {\n Accept: 'application/json'\n }\n });\n };\n}\nexport function GetBalancesForAccounts(api) {\n return function (items) {\n return api.authenticated().post(GetBalancesForAccountsURL, {\n items: items\n }, {\n headers: {\n Accept: 'application/json'\n }\n });\n };\n}\nexport function GetBalancesForWithdrawal(api) {\n return function (accountId) {\n return api.authenticated().get(GetBalancesForWithdrawalURL(accountId), {}, {\n headers: {\n Accept: 'application/json'\n }\n });\n };\n}","import { GetBarsUrl } from '../constants';\nimport { dateStringOrUndefined } from '../utilities';\nexport function GetBars(api) {\n return function (options) {\n var opts = Object.assign({}, options, {\n starttime: dateStringOrUndefined(options.starttime),\n endtime: dateStringOrUndefined(options.endtime)\n });\n return api.get(GetBarsUrl, opts);\n };\n}","import { GetQuoteUrl, GetQuoteDividendUrl, GetQuoteEarningsUrl } from '../constants';\nimport { GetQuoteExtendedUrl } from '../constants';\nimport _ from 'lodash';\nimport Axios from 'axios';\nexport function GetQuotes(api) {\n return function (symbol) {\n var symbs = _.isArray(symbol) ? symbol : [symbol];\n var cancelToken = Axios.CancelToken.source();\n return [api.get(GetQuoteUrl, {\n symbols: symbs.join(','),\n cancelToken: cancelToken.token\n }), cancelToken];\n };\n}\nexport function GetQuotesExtended(api) {\n return function (symbol) {\n return api.get(GetQuoteExtendedUrl, {\n symbol: symbol\n });\n };\n}\n\nfunction GetQuoteDividends(api) {\n return function (range, symbol) {\n return api.get(GetQuoteDividendUrl, {\n symbol: symbol,\n range: range\n });\n };\n}\n\nfunction GetEarnings(api) {\n return function (symbol, period) {\n return api.get(GetQuoteEarningsUrl, {\n symbol: symbol,\n period: period\n });\n };\n}\n\nexport function GetQuotesCharting(api) {\n return function (symbol) {\n var symbs = _.isArray(symbol) ? symbol : [symbol];\n return api.get(GetQuoteUrl, {\n symbols: symbs.join(',')\n });\n };\n}\nexport var quotes = function quotes(api) {\n return {\n get: GetQuotes(api),\n extended: GetQuotesExtended(api),\n dividends: GetQuoteDividends(api),\n earnings: GetEarnings(api),\n getChartingFeed: GetQuotesCharting(api)\n };\n};","import { GetSymbolsUrl } from '../constants';\nimport _ from 'lodash';\nexport function GetSymbols(api) {\n return function (query) {\n var limit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 10;\n var querystringRequest = _.isString(query) ? {\n query: query,\n limit: limit\n } : query;\n return api.authenticated().get(GetSymbolsUrl, querystringRequest, {\n headers: {\n Accept: 'application/json'\n }\n }).then(function (res) {\n return res.payload || [];\n }).catch(function (reason) {\n console.error('Error trying to fetch symbols', reason);\n return [];\n });\n };\n}\nexport function Symbols(api) {\n return {\n search: function search(query) {\n var limit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 10;\n var querystringRequest = _.isString(query) ? {\n query: query,\n limit: limit\n } : query;\n return api.authenticated().get(GetSymbolsUrl, querystringRequest, {\n headers: {\n Accept: 'application/json'\n }\n }).then(function (res) {\n return res.payload || [];\n }).catch(function (reason) {\n console.error('Error trying to fetch symbols', reason);\n return [];\n });\n },\n warnings: function warnings() {\n return api.authenticated().get('Symbol/WarningSymbols', {}, {\n headers: {\n Accept: 'application/json'\n }\n });\n }\n };\n}","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport _ from 'lodash';\nimport dayjs from 'dayjs';\nimport { AssetType } from '@tradingblock/types';\nimport { PositionsUrl } from '../constants';\nimport { deriveRootSymbol, deriveOptionExpirationType } from '../utilities/SymbolUtilities';\nexport var get = function get(api) {\n return function (accountId, subaccountId) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var res, payload, responseCode, data;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return api.get(PositionsUrl, {\n accountId: accountId,\n subaccountId: subaccountId\n });\n\n case 2:\n res = _context.sent;\n payload = res.payload, responseCode = res.responseCode;\n data = _.map(payload, function (position) {\n var isOption = position.AssetType === AssetType.Option;\n var PositionId = \"\".concat(position.Symbol, \"-\").concat(dayjs(position.DateOpened).valueOf(), \"-\").concat(position.OrderId);\n var isMutualFund = position.AssetType === AssetType.MutualFund || position.AssetType === AssetType.MoneyMarket;\n var res = Object.assign({}, position, {\n PositionId: PositionId,\n Symbol: isMutualFund ? ':' + position.Symbol : position.Symbol,\n UnderlyingSymbol: isMutualFund ? ':' + position.UnderlyingSymbol : position.UnderlyingSymbol,\n meta: {\n OptionExpirationType: isOption ? deriveOptionExpirationType(position.Symbol, position.UnderlyingSymbol) : undefined,\n RootSymbol: deriveRootSymbol(position.Symbol),\n Description: position.Description\n }\n });\n return res;\n });\n return _context.abrupt(\"return\", Object.assign({}, res, {\n payload: data,\n responseCode: responseCode\n }));\n\n case 6:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n };\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport _ from 'lodash';\nimport dayjs from 'dayjs';\nimport { GetExpirationsUrl, GetStrikesUrl, GetChainUrl } from '../constants';\nimport { formatExpiration } from '../utilities/DateUtilities';\nimport { DateFormats } from '..';\nexport var getExpirations = function getExpirations(api) {\n return function (symbol) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var res, expDates;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return api.get(GetExpirationsUrl, {\n underlyingSymbol: symbol,\n isExpanded: 'true'\n });\n\n case 2:\n res = _context.sent;\n expDates = _.map(res.payload ? res.payload : [], function (d) {\n return Object.assign({}, d, formatExpiration(d));\n });\n return _context.abrupt(\"return\", {\n responseCode: res.responseCode,\n payload: expDates\n });\n\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n };\n};\nexport var getStrikes = function getStrikes(api) {\n return function (symbol, expiration, time, strikeMin, strikeMax) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n var expirations;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return api.get(GetStrikesUrl, {\n underlyingSymbol: symbol,\n expiration: dayjs(expiration).format(DateFormats.ApiFormat),\n strikeMin: strikeMin,\n strikeMax: strikeMax,\n time: time\n });\n\n case 2:\n expirations = _context2.sent;\n return _context2.abrupt(\"return\", expirations);\n\n case 4:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n };\n};\nexport var getChain = function getChain(api) {\n return function (symbol, expiration, strikeCount, fetchGreeks) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n var underlyingSymbol, strikeParams, chainData, chainDataResults;\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n // if strike count == 0, fetch all strikes\n underlyingSymbol = symbol;\n strikeParams = strikeCount === 0 ? {} : {\n strikesAroundMarket: strikeCount / 2\n };\n _context3.next = 4;\n return api.get(GetChainUrl, Object.assign({\n underlyingSymbol: underlyingSymbol,\n expiration: dayjs(expiration).format(DateFormats.ApiFormat),\n // pass date part only without time\n fetchGreeks: fetchGreeks\n }, strikeParams));\n\n case 4:\n chainData = _context3.sent;\n chainDataResults = _(chainData.payload).reduce(function (pairs, expirations, opsymbol) {\n var expirationStrikes = _(expirations).flatMap(function (exp) {\n return _.flatMap(exp);\n }).map(function (e) {\n return Object.assign({}, e, {\n symbol: opsymbol,\n underlyingSymbol: underlyingSymbol\n });\n }).value();\n\n return _.union(pairs, expirationStrikes);\n }, []);\n return _context3.abrupt(\"return\", {\n data: _.sortBy(chainDataResults, function (op) {\n return op.Strike;\n }),\n responseCode: chainData.responseCode\n });\n\n case 7:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n };\n};\nexport var options = function options(api) {\n return {\n expirations: getExpirations(api),\n strikes: getStrikes(api),\n optionchain: getChain(api)\n };\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport { HistoryGetHistoryUrl } from '../constants';\nimport _ from 'lodash';\nimport dayjs from 'dayjs';\n\nvar get = function get(api) {\n return function (request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var apiResponse, sanitizedHistoryItems;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return api.get(HistoryGetHistoryUrl, request);\n\n case 2:\n apiResponse = _context.sent;\n sanitizedHistoryItems = _.map(apiResponse.payload.Items, function (item) {\n var recordDate = dayjs(item.recordDate).toDate();\n var amount = Number(item.amount);\n var commission = Number(item.commission);\n var orderAction = String(item.orderAction);\n var fillPrice = Number(item.fillPrice);\n var description = String(item.description);\n var symbol = String(item.symbol);\n var fillQuantity = Number(item.fillQuantity);\n return Object.assign({}, item, {\n description: description,\n symbol: symbol,\n orderAction: orderAction,\n fillQuantity: fillQuantity,\n fillPrice: fillPrice,\n commission: commission,\n amount: amount,\n recordDate: recordDate\n });\n });\n return _context.abrupt(\"return\", Object.assign({}, apiResponse, {\n Payload: apiResponse.payload ? Object.assign({}, apiResponse.payload, {\n Items: sanitizedHistoryItems\n }) : undefined\n }));\n\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n };\n};\n\nexport var history = {\n get: get\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport _ from 'lodash';\nimport { PlaceOrderUrl, GetOrdersUrl, CancelOrderUrl, ChangeOrderUrl } from '../constants';\nimport { transformForApi, transformFromApi, transformOrderForApi } from '..';\nimport dayjs from 'dayjs';\nvar httpOptions = {\n headers: {\n Accept: 'application/json'\n }\n};\n\nvar _create = function create(api) {\n return function (orderDesc) {\n var order = transformForApi(orderDesc);\n return api.authenticated().post(PlaceOrderUrl, order, httpOptions);\n };\n};\n\nexport { _create as create };\n\nvar _change = function change(api) {\n return function (orderDesc) {\n var order = transformOrderForApi(orderDesc);\n return api.authenticated().post(ChangeOrderUrl, order, httpOptions);\n };\n};\n\nexport { _change as change };\n\nvar _cancel = function cancel(api) {\n return function (orderId, accountId) {\n // might need to pass subaccountId, clientRefId params at some point: https://ny4staging.tradingblock.com/RestHub/swagger-ui#/Orders/CancelOrder\n var data = {\n orderId: orderId,\n accountId: accountId\n };\n return api.authenticated().post(CancelOrderUrl, data, httpOptions);\n };\n};\n\nexport { _cancel as cancel };\nexport var getOrders = function getOrders(api) {\n return function (options) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var request, optionValues, apiResponse;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n // remove blockId from request & format dates dayjs(options.dateFrom).utc().toDate()\n request = _.omit(options, ['blockId']);\n optionValues = Object.assign({}, request, {\n dateFrom: request.dateFrom ? dayjs(request.dateFrom).utc().toDate() : undefined,\n dateTo: request.dateTo ? dayjs(request.dateTo).utc().toDate() : undefined\n });\n _context.next = 4;\n return api.authenticated().get(GetOrdersUrl, optionValues, httpOptions);\n\n case 4:\n apiResponse = _context.sent;\n return _context.abrupt(\"return\", Object.assign({}, apiResponse, {\n payload: apiResponse.payload ? Object.assign({}, apiResponse.payload, {\n items: _.map(apiResponse.payload.items, transformFromApi)\n }) : undefined\n }));\n\n case 6:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n };\n};\nexport function order(api) {\n var _this2 = this;\n\n return function (accountId, subaccountId) {\n return {\n change: function change(req) {\n return tslib_1.__awaiter(_this2, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return _change(api)(req);\n\n case 2:\n return _context2.abrupt(\"return\", _context2.sent);\n\n case 3:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n },\n create: function create(orderDesc) {\n return tslib_1.__awaiter(_this2, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n return _context3.abrupt(\"return\", _create(api)(Object.assign({}, orderDesc, {\n AccountId: accountId,\n kind: 'order'\n })));\n\n case 1:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n },\n get: function get(request) {\n return tslib_1.__awaiter(_this2, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4() {\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n return _context4.abrupt(\"return\", getOrders(api)(Object.assign({}, request, {\n accountId: accountId,\n subaccountId: subaccountId\n })));\n\n case 1:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n },\n cancel: function cancel(orderId) {\n return tslib_1.__awaiter(_this2, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee5() {\n return _regeneratorRuntime.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n return _context5.abrupt(\"return\", _cancel(api)(orderId, accountId));\n\n case 1:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5);\n }));\n }\n };\n };\n}","import dayjs from 'dayjs';\nimport { CreateUserUrl, CreateAccountUrl, UserRequirementsUrl, DocumentsUploadUrl, GetHeardAboutUrl, GetApplicationInvestigationStatusUrl, UploadApplicationDocumentUrl, UploadInvestigationDocumentUrl, DuplicateAccountCheckUrl } from '../constants';\nimport { DateFormats } from '..';\nimport { RequestHeaders } from './utilities';\nexport function Application(api) {\n return {\n getUserRequirements: function getUserRequirements() {\n return api.get(UserRequirementsUrl, undefined, RequestHeaders);\n },\n getHeardAbout: function getHeardAbout(siteConfigId) {\n return api.get(GetHeardAboutUrl(siteConfigId), {}, RequestHeaders);\n },\n getApplicationStatus: function getApplicationStatus(accountId) {\n return api.authenticated().get(GetApplicationInvestigationStatusUrl(accountId), undefined, RequestHeaders);\n },\n createUser: function createUser(data) {\n return api.post(CreateUserUrl, data, RequestHeaders);\n },\n uploadDocument: function uploadDocument(file, tag) {\n var TakenOn = dayjs(file.lastModified).utc().format(DateFormats.DateTimeApiFormat);\n var data = new FormData();\n data.append('metaData', JSON.stringify({\n tag: tag,\n ImageName: file.name,\n TakenOn: TakenOn\n }));\n data.append('file', file); // NOTE: when posting multipart/form-data, not passing Accept: 'application/json' header (see: https://stackoverflow.com/a/35206069)\n\n return api.authenticated().post(DocumentsUploadUrl, data).then(function (res) {\n return Object.assign({}, res, {\n payload: {\n id: res.payload,\n filename: file.name\n }\n });\n });\n },\n uploadApplicationDocument: function uploadApplicationDocument(file, accountId, accountHolderId, documentType) {\n var TakenOn = dayjs(file.lastModified).utc().format(DateFormats.DateTimeApiFormat);\n var uploadFormData = new FormData();\n uploadFormData.append('metaData', JSON.stringify({\n DocumentName: documentType,\n ImageName: file.name,\n TakenOn: TakenOn\n }));\n uploadFormData.append('file', file);\n return api.authenticated().post(UploadApplicationDocumentUrl(accountId, accountHolderId), uploadFormData);\n },\n uploadInvestigationDocument: function uploadInvestigationDocument(file, accountId, investigationId, documentType) {\n var TakenOn = dayjs(file.lastModified).utc().format(DateFormats.DateTimeApiFormat);\n var uploadFormData = new FormData();\n uploadFormData.append('metaData', JSON.stringify({\n DocumentName: documentType,\n ImageName: file.name,\n TakenOn: TakenOn\n }));\n uploadFormData.append('file', file);\n return api.authenticated().post(UploadInvestigationDocumentUrl(accountId, investigationId), uploadFormData);\n },\n createAccount: function createAccount(data) {\n return api.authenticated().post(CreateAccountUrl, data, RequestHeaders);\n },\n duplicateAccountCheck: function duplicateAccountCheck(data) {\n return api.authenticated().post(DuplicateAccountCheckUrl, data, RequestHeaders);\n }\n };\n}","import { RequestHeaders } from './utilities';\nexport function UserCommands(api) {\n return {\n profile: function profile() {\n return api.authenticated().get(\"User/GetProfile\", {}, RequestHeaders);\n }\n };\n}","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport { GetReleaseNotesUrl, GetNewsFeedUrl, AlertMessagesURL, GetAlertMessageTemplatesURL, UpdateAlertsURL, CreateReleaseNotesUrl, UpdateReleaseNotesUrl } from '../constants';\nimport _ from 'lodash';\nexport function GetNewsFeed(api) {\n return function (symbols, updatedSince, channels) {\n var symbs = _.isArray(symbols) ? symbols : [symbols];\n return api.get(GetNewsFeedUrl, {\n symbols: symbs.join(','),\n updatedSince: updatedSince,\n channels: channels\n });\n };\n}\nexport var create = function create(api) {\n return function (releaseNote) {\n return api.authenticated().post(CreateReleaseNotesUrl, releaseNote, {\n headers: {\n Accept: 'application/json'\n }\n });\n };\n};\nexport var info = function info(api) {\n return {\n get: function get(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var page, pageSize, searchRequest;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n page = request.page ? request.page : 0;\n pageSize = request.pageSize ? request.pageSize : 5;\n searchRequest = Object.assign({}, request, {\n page: page,\n pageSize: pageSize\n });\n _context.next = 5;\n return api.get(GetReleaseNotesUrl, searchRequest);\n\n case 5:\n return _context.abrupt(\"return\", _context.sent);\n\n case 6:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n },\n createAlert: function createAlert(alert) {\n return api.authenticated().post(AlertMessagesURL, alert);\n },\n getActiveAlerts: function getActiveAlerts(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return api.get(AlertMessagesURL, request);\n\n case 2:\n return _context2.abrupt(\"return\", _context2.sent);\n\n case 3:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n },\n getAlertTemplates: function getAlertTemplates(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _context3.next = 2;\n return api.get(GetAlertMessageTemplatesURL, request);\n\n case 2:\n return _context3.abrupt(\"return\", _context3.sent);\n\n case 3:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n },\n updateAlert: function updateAlert(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4() {\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _context4.next = 2;\n return api.authenticated().put(UpdateAlertsURL(request.id, request.active), request);\n\n case 2:\n return _context4.abrupt(\"return\", _context4.sent);\n\n case 3:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n },\n news: GetNewsFeed(api),\n createReleaseNote: create(api),\n updateReleaseNote: function updateReleaseNote(releaseNote) {\n return api.authenticated().put(UpdateReleaseNotesUrl(releaseNote.id), {\n releaseDate: releaseNote.releaseDate,\n summary: releaseNote.summary,\n restrictedToUserLevel: releaseNote.restrictedToUserLevel,\n type: releaseNote.type\n });\n }\n };\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport { GetAccountManagementDetailsUrl, GetPendingUserMarketDataEntitlementsUrl } from '../constants';\nimport { RequestHeaders } from './utilities';\nimport { ApprovePendingUserMarketDataEntitlement, RejectPendingUserMarketDataEntitlement } from '..';\nexport var Entitlements = function Entitlements(api) {\n return {\n getPendingUserMarketDataEntitlements: function getPendingUserMarketDataEntitlements(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return api.authenticated().get(GetPendingUserMarketDataEntitlementsUrl, request);\n\n case 2:\n return _context.abrupt(\"return\", _context.sent);\n\n case 3:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n },\n getAccountDetails: function getAccountDetails(accountId) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return api.authenticated().get(GetAccountManagementDetailsUrl, accountId, RequestHeaders);\n\n case 2:\n return _context2.abrupt(\"return\", _context2.sent);\n\n case 3:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n },\n approvePendingUserMarketDataEntitlement: function approvePendingUserMarketDataEntitlement(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _context3.next = 2;\n return api.authenticated().put(ApprovePendingUserMarketDataEntitlement(request.pendingId), {}, RequestHeaders);\n\n case 2:\n return _context3.abrupt(\"return\", _context3.sent);\n\n case 3:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n },\n rejectPendingUserMarketDataEntitlement: function rejectPendingUserMarketDataEntitlement(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4() {\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _context4.next = 2;\n return api.authenticated().put(RejectPendingUserMarketDataEntitlement(request.pendingId), {}, RequestHeaders);\n\n case 2:\n return _context4.abrupt(\"return\", _context4.sent);\n\n case 3:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n }\n };\n};","import { DownloadsDailyConfirm, DownloadsDailyConfirms, DownloadsMonthlyStatement, DownloadsMonthlyStatements, DownloadsTaxDocument, DownloadsTaxDocuments } from '..';\nimport dayjs from 'dayjs';\nvar RequestHeaders = {\n headers: {\n Accept: 'application/json'\n }\n};\nexport function Downloads(api) {\n return {\n getDailyConfirms: function getDailyConfirms(accountId, startDate, endDate) {\n var startDateString = dayjs(startDate).format('YYYY-MM-DD');\n var endDateString = dayjs(endDate).format('YYYY-MM-DD');\n return api.authenticated().get(DownloadsDailyConfirms(accountId), {\n startDate: startDateString,\n endDate: endDateString\n }, RequestHeaders);\n },\n getDailyConfirm: function getDailyConfirm(accountId, date) {\n var requestedDate = dayjs(date).format('YYYY-MM-DD');\n return api.authenticated().getBinary(DownloadsDailyConfirm(accountId), {\n date: requestedDate\n }, RequestHeaders);\n },\n getMonthlyStatements: function getMonthlyStatements(accountId, startDate, endDate) {\n var startDateString = dayjs(startDate).format('YYYY-MM-DD');\n var endDateString = dayjs(endDate).format('YYYY-MM-DD');\n return api.authenticated().get(DownloadsMonthlyStatements(accountId), {\n startDate: startDateString,\n endDate: endDateString\n }, RequestHeaders);\n },\n getMonthlyStatement: function getMonthlyStatement(accountId, date) {\n var requestedDate = dayjs(date).format('YYYY-MM-DD');\n return api.authenticated().getBinary(DownloadsMonthlyStatement(accountId), {\n date: requestedDate\n }, RequestHeaders);\n },\n getTaxDocuments: function getTaxDocuments(accountId, form, taxYear) {\n return api.authenticated().get(DownloadsTaxDocuments(accountId, form), {\n taxYear: taxYear\n }, RequestHeaders);\n },\n getTaxDocument: function getTaxDocument(accountId, form, date) {\n return api.authenticated().getBinary(DownloadsTaxDocument(accountId, form), {\n date: date\n }, RequestHeaders);\n }\n };\n}","import { HistoryGetBalancesEndpoint, HistoryGetHistoryBalances } from '../constants';\nexport function GetBalanceHistory(api) {\n return function (accountId) {\n return api.authenticated().get(HistoryGetHistoryBalances, {\n accountId: accountId\n }, {\n headers: {\n Accept: 'application/json'\n }\n });\n };\n}\nexport function HistoryGetBalances(api) {\n return function (payload) {\n return api.authenticated().get(HistoryGetBalancesEndpoint, payload, {\n headers: {\n Accept: 'application/json'\n }\n });\n };\n}","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\nimport * as tslib_1 from \"tslib\";\nimport { NoPassLoginStartUrl, NoPassLoginFinishUrl, NoPassListDevicesURL, NoPassDeleteDeviceURL } from '../constants';\nvar RequestHeaders = {\n headers: {\n Accept: 'application/json'\n }\n};\nexport function nopass(api) {\n var _this = this;\n\n return {\n loginStart: function loginStart(username) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return api.post(\"\".concat(NoPassLoginStartUrl, \"?username=\").concat(username), {}, RequestHeaders);\n\n case 2:\n return _context.abrupt(\"return\", _context.sent);\n\n case 3:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n },\n loginFinish: function loginFinish(authId) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n return _context2.abrupt(\"return\", api.get(NoPassLoginFinishUrl, {\n authid: authId\n }, RequestHeaders));\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n },\n getDevices: function getDevices() {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n return _context3.abrupt(\"return\", api.authenticated().get(NoPassListDevicesURL, {}, RequestHeaders));\n\n case 1:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n },\n deleteDevice: function deleteDevice(deviceId) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4() {\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n return _context4.abrupt(\"return\", api.authenticated().post(NoPassDeleteDeviceURL(deviceId), {}, RequestHeaders));\n\n case 1:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n },\n getAuthHistory: function getAuthHistory() {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee5() {\n return _regeneratorRuntime.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n return _context5.abrupt(\"return\", api.authenticated().get(NoPassListDevicesURL, {}, RequestHeaders));\n\n case 1:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5);\n }));\n }\n };\n}","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\nimport _classCallCheck from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport * as tslib_1 from \"tslib\";\nimport { ApiClient, UiApiClient } from './ApiClient';\nimport { GetToken } from './commands/getToken';\nimport { accounts } from './commands/account';\nimport { GetAvailableFunds, GetBalances, GetBalancesForAccounts, GetBalancesForWithdrawal } from './commands/getBalances';\nimport { GetBars } from './commands/getBars';\nimport { quotes } from './commands/quote';\nimport { GetSymbols, Symbols } from './commands/symbols';\nimport * as positions from './commands/positions';\nimport { options } from './commands/options';\nimport { history } from './commands/history';\nimport { ACH, Transfers, cashieringSearch, cashieringDetails, SecurityQuestion, cashieringDocuments, TransferInstructions } from './commands/cashiering';\nimport { pnlHistory } from './commands/getPnLItem';\nimport { order } from './commands/orderApi';\nimport { Application } from './commands/application';\nimport { UserCommands } from './commands/userCommands';\nimport { auth } from './commands/auth';\nimport { info } from './commands/information';\nimport { AccManagement } from './commands/accountManagement';\nimport { Entitlements } from './commands/entitlements';\nimport { Downloads } from './commands/downloads';\nimport { GetBalanceHistory, HistoryGetBalances } from './commands/historyGetBalance';\nimport { nopass } from './commands/nopass';\nexport var TradingBlockAccountApi = function TradingBlockAccountApi(api, accountId, subaccountId) {\n var _this = this;\n\n _classCallCheck(this, TradingBlockAccountApi);\n\n this.order = function () {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n return _context.abrupt(\"return\", order(this.api)(this.accountId, this.subaccountId));\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n };\n\n this.availableFunds = function () {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n return _context2.abrupt(\"return\", GetAvailableFunds(this.api)(this.accountId, this.subaccountId));\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n };\n\n this.balances = function () {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n return _context3.abrupt(\"return\", GetBalances(this.api)(this.accountId, this.subaccountId));\n\n case 1:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, this);\n }));\n };\n\n this.positions = function () {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4() {\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _context4.next = 2;\n return positions.get(this.api)(this.accountId, this.subaccountId);\n\n case 2:\n return _context4.abrupt(\"return\", _context4.sent);\n\n case 3:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4, this);\n }));\n };\n\n this.history = function (request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee5() {\n return _regeneratorRuntime.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n return _context5.abrupt(\"return\", history.get(this.api)(Object.assign({}, request, {\n accountId: this.accountId\n })));\n\n case 1:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5, this);\n }));\n };\n\n this.pnl = function (request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee6() {\n return _regeneratorRuntime.wrap(function _callee6$(_context6) {\n while (1) {\n switch (_context6.prev = _context6.next) {\n case 0:\n return _context6.abrupt(\"return\", pnlHistory.get(this.api)(Object.assign({}, request, {\n accountId: this.accountId\n })));\n\n case 1:\n case \"end\":\n return _context6.stop();\n }\n }\n }, _callee6, this);\n }));\n };\n\n this.availableWithdrawalFunds = function () {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee7() {\n return _regeneratorRuntime.wrap(function _callee7$(_context7) {\n while (1) {\n switch (_context7.prev = _context7.next) {\n case 0:\n return _context7.abrupt(\"return\", GetBalancesForWithdrawal(this.api)(this.accountId));\n\n case 1:\n case \"end\":\n return _context7.stop();\n }\n }\n }, _callee7, this);\n }));\n };\n\n this.accountId = accountId;\n this.subaccountId = subaccountId;\n this.api = api;\n};\nexport function TradingBlockApi(api) {\n return {\n auth: auth(api),\n accounts: accounts(api),\n accountManagement: AccManagement(api),\n balances: {\n get: GetBalances(api),\n getForAccounts: GetBalancesForAccounts(api),\n getForWithdrawals: GetBalancesForWithdrawal(api)\n },\n client: api,\n application: Application(api),\n getToken: GetToken(api),\n getBars: GetBars(api),\n getSymbols: GetSymbols(api),\n cashiering: {\n ach: ACH(api),\n balances: GetBalances(api),\n securityQuestion: SecurityQuestion(api),\n transfers: Transfers(api),\n transferInstructions: TransferInstructions(api),\n search: cashieringSearch(api).search,\n details: cashieringDetails(api),\n documents: cashieringDocuments(api)\n },\n history: {\n getBalanceHistory: GetBalanceHistory(api),\n getBalances: HistoryGetBalances(api)\n },\n downloads: Downloads(api),\n entitlements: Entitlements(api),\n information: info(api),\n nopass: nopass(api),\n order: order(api),\n options: options(api),\n quotes: quotes(api),\n symbols: Symbols(api),\n user: UserCommands(api)\n };\n}\nvar tradingblockApis = {};\nexport function ApiFactory(rootUrl, authKey, onResponse, onResponseError) {\n if (tradingblockApis[rootUrl + authKey] !== undefined) {\n return tradingblockApis[rootUrl + authKey];\n }\n\n var tb_api = TradingBlockApi(new ApiClient(rootUrl, authKey).withResponseHandler({\n onResponse: onResponse,\n onResponseError: onResponseError\n }));\n tradingblockApis[rootUrl + authKey] = tb_api;\n return tb_api;\n}\nexport function AccountApiFactory(rootUrl, authKey, accountId, subaccountId) {\n return new TradingBlockAccountApi(new ApiClient(rootUrl, authKey), accountId, subaccountId);\n}\nexport function UiApiFactory(rootUrl, authKey) {\n return new UiApiClient(rootUrl, authKey);\n}","export var Periods = ['M1', 'M5', 'M15', 'M30', 'H1', 'Day'];","import _ from 'lodash';\nexport var stringifyObject = function stringifyObject(obj) {\n var cache = [];\n var res = JSON.stringify(obj, function (key, value) {\n if (typeof value === 'object' && value !== null) {\n if (cache.indexOf(value) !== -1) {\n // Circular reference found, discard key\n return;\n } // Store value in our collection\n\n\n cache.push(value);\n }\n\n return value;\n });\n cache = null;\n return res;\n};\nexport var GetUrlParams = function GetUrlParams(href) {\n return _.chain(href).split('?').nth(1).split('&').map(function (v) {\n return _.split(v, '=', 2);\n }).fromPairs().value();\n};","import _ from 'lodash';\nvar MoneyBlockSiteGrp = 'mb';\n\nvar isMoneyBlockUrl = function isMoneyBlockUrl(href) {\n console.log('isMoneyBlockUrl', process.env.TB_SITE_GROUP);\n return process.env.TB_SITE_GROUP === MoneyBlockSiteGrp;\n};\n\nexport var isMoneyBlockAccount = function isMoneyBlockAccount(accountNumber) {\n // MoneyBlock account numbers start with \"3OD\"\n return _.take(accountNumber, 3).join('') === '3OD';\n};\n\nvar isMoneyBlockSite = function isMoneyBlockSite(href, accountNumber) {\n return isMoneyBlockUrl(href) && !accountNumber || isMoneyBlockAccount(accountNumber);\n};\n\nexport var GetSiteName = function GetSiteName(href, accountNumber) {\n if (isMoneyBlockSite(href, accountNumber)) {\n return 'MoneyBlock';\n }\n\n return 'TradingBlock';\n};\nexport var GetSiteGrp = function GetSiteGrp(href, accountNumber) {\n if (isMoneyBlockSite(href, accountNumber)) {\n return MoneyBlockSiteGrp;\n }\n\n return '';\n};\nexport var getSiteLogo = function getSiteLogo(href, type, accountNumber) {\n // for logo mark, site branding not needed\n if (type === 'mark') {\n return \"logo-\".concat(type);\n }\n\n var logo = \"logo-\".concat(GetSiteName(href, accountNumber).toLowerCase());\n\n if (type) {\n return \"\".concat(logo, \"-\").concat(type);\n }\n\n return logo;\n};","import _toConsumableArray from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/toConsumableArray\";\nexport var getRequestedParticipantsDocuments = function getRequestedParticipantsDocuments(investigations, applications) {\n var participants = []; // Create a union on CIP and Application investigation data structure\n\n var applicationRequestedDocuments = [].concat(_toConsumableArray(investigations ? investigations : []), _toConsumableArray(applications ? applications : []));\n applicationRequestedDocuments.forEach(function (requestedDocumentDetailEntry) {\n // Check if we have an entry for the participant of the applications\n // We need to do this since accounts can have multiple people like\n // Joint accounts.\n var participantIndex = participants.findIndex(function (participant) {\n return requestedDocumentDetailEntry.firstName === participant.firstName && requestedDocumentDetailEntry.lastName === participant.lastName;\n });\n\n if (participantIndex === -1) {\n // If we do not have an entry for the participant base on the first name\n // and last name. Then, we create one.\n participants.push({\n firstName: requestedDocumentDetailEntry.firstName ? requestedDocumentDetailEntry.firstName : '',\n middleInitial: requestedDocumentDetailEntry.middleInitial ? requestedDocumentDetailEntry.middleInitial : '',\n lastName: requestedDocumentDetailEntry.lastName ? requestedDocumentDetailEntry.lastName : '',\n suffix: requestedDocumentDetailEntry.suffix ? requestedDocumentDetailEntry.suffix : '',\n accountHolderId: requestedDocumentDetailEntry.accountHolderId,\n investigationId: requestedDocumentDetailEntry.investigationId,\n requestedCatagories: {\n application: [],\n investigations: []\n },\n uploadedDocuments: []\n }); // set the participantIndex to the new entry\n\n participantIndex = participants.length - 1;\n } else {\n if (!participants[participantIndex].accountHolderId && requestedDocumentDetailEntry.accountHolderId) {\n participants[participantIndex].accountHolderId = requestedDocumentDetailEntry.accountHolderId;\n }\n\n if (participants[participantIndex].investigationId && requestedDocumentDetailEntry.investigationId) {\n participants[participantIndex].investigationId = requestedDocumentDetailEntry.investigationId;\n }\n } //Union the requested document categories\n\n\n var categories = [].concat(_toConsumableArray(requestedDocumentDetailEntry.appCategories ? requestedDocumentDetailEntry.appCategories : []), _toConsumableArray(requestedDocumentDetailEntry.cipCategories ? requestedDocumentDetailEntry.cipCategories : [])); // Uniquely read all documentNames that have been uploaded\n\n var uploadedDocumentsNames = _toConsumableArray(new Set(requestedDocumentDetailEntry.uploadedDocuments ? requestedDocumentDetailEntry.uploadedDocuments.map(function (document) {\n return document.documentName;\n }) : []));\n\n var uploadedDocuments = _toConsumableArray(new Set(requestedDocumentDetailEntry.uploadedDocuments ? requestedDocumentDetailEntry.uploadedDocuments : []));\n\n if (uploadedDocuments.length > 0) {\n participants[participantIndex].uploadedDocuments = uploadedDocuments;\n } // If current category is accepted and the\n\n\n var activeDocumentCategories = categories.filter(function (category) {\n return category.state !== 'Accepted' && category.state !== 'Pending' && !uploadedDocumentsNames.map(function (uploadedDocumentName) {\n return category.requestedDocuments.includes(uploadedDocumentName);\n }).includes(true);\n }); // If we have an investigationId then we need to set the investigations\n // otherwise it is an application request.\n\n if (requestedDocumentDetailEntry.investigationId) {\n participants[participantIndex].requestedCatagories.investigations = activeDocumentCategories;\n } else {\n participants[participantIndex].requestedCatagories.application = activeDocumentCategories;\n }\n });\n return participants;\n};","import * as ApiClient from './ApiClient';\nexport * from './blocks';\nexport * from './commands/getPnLItem';\nexport * from './commands/account';\nexport * from './commands/auth';\nexport * from './config';\nexport * from './constants';\nexport * from './feed/WebsocketFeedParser';\nexport * from './jsonEncode';\nexport * from './logger';\nexport * from './orders';\nexport * from './performance';\nexport * from './strategies/strategies';\nexport * from './strategies/profitloss';\nexport * from './strategies/validation';\nexport * from './strategies/CustomStrategy';\nexport * from './TradingBlockApi';\nexport * from './types';\nexport * from './utilities';\nexport * from './utilities/DateUtilities';\nexport * from './utilities/JwtUtilities';\nexport * from './utilities/OrderUtilities';\nexport * from './utilities/SymbolUtilities';\nexport * from './utilities/ObjectUtilities';\nexport * from './utilities/positionUtilities';\nexport * from './utilities/QuoteUtilities';\nexport * from './utilities/SiteUtilities';\nexport * from './utilities/DocumentUtilities';\nexport * from './performance';\nexport default {\n ApiClient: ApiClient\n};","import { ActionType, createStandardAction } from 'typesafe-actions';\nimport {\n ApiResponse,\n ClientEntity,\n GenericError,\n SearchAccountsRequest,\n SearchAccountsResponse,\n} from '@tradingblock/types';\nimport { buildGenericRequestReceiveActions } from '../../actionUtilities';\nimport { AdminIdRequest } from '.';\n\nconst ADMIN_CLIENT_REQUEST = '@admin/clients/get/REQUEST';\nconst ADMIN_CLIENT_RECEIVE = '@admin/clients/get/RECEIVE';\nconst ADMIN_CLIENT_ERROR = '@admin/clients/get/ERROR';\n\nconst ADMIN_CLIENT_SEARCH_SET_SEARCH = '@admin/clients/search/ui/SET_SEARCH';\nconst ADMIN_CLIENT_SEARCH_SET_PAGE = '@admin/clients/search/ui/SET_PAGE';\nconst ADMIN_CLIENT_SEARCH_SET_PAGE_SIZE = '@admin/clients/search/ui/SET_PAGE_SIZE';\nconst ADMIN_CLIENT_SEARCH_SET_SORTBY = '@admin/clients/search/ui/SET_SORTBY';\n\nconst [clientRequest, clientReceive, clientError] = buildGenericRequestReceiveActions({\n REQUEST: ADMIN_CLIENT_REQUEST,\n RECEIVE: ADMIN_CLIENT_RECEIVE,\n ERROR: ADMIN_CLIENT_ERROR,\n})<\n SearchAccountsRequest,\n { response: ApiResponse; request: SearchAccountsRequest },\n GenericError\n>();\n\nexport const AdminClientActions = {\n clientRequest,\n clientReceive,\n clientError,\n setSearch: createStandardAction(ADMIN_CLIENT_SEARCH_SET_PAGE)>(),\n setPage: createStandardAction(ADMIN_CLIENT_SEARCH_SET_PAGE)>(),\n setPageSize: createStandardAction(ADMIN_CLIENT_SEARCH_SET_PAGE_SIZE)>(),\n setSortBy: createStandardAction(ADMIN_CLIENT_SEARCH_SET_SORTBY)<\n Pick\n >(),\n};\n\nexport type AdminClientAction = ActionType;\n","import React, { useContext, useMemo } from 'react';\nimport _ from 'lodash';\nimport { FeedQuote, IFeedSpread, ConnectionStatusType, FeedOrderUpdate, FeedSettlement } from '@tradingblock/types';\nimport { FeedProviderStatus } from '../../types';\nimport dayjs from 'dayjs';\nimport { SymbolQuote } from '@tradingblock/api/src/types';\n\nexport interface TradingblockWebsocketState {\n status?: FeedProviderStatus;\n quotes: { [key: string]: FeedQuote };\n quoteQueue: FeedQuote[];\n orders: {\n [orderId: string]: { status: FeedOrderUpdate; history: FeedOrderUpdate[] };\n };\n lastMessage: string;\n}\n\n/// Redux state object that we use to create data for FeedDataState\n// List req = new List();\n\n// Spread spread = new Spread();\n// spread.Type = SpreadType.Vertical;\n// spread.Legs = new Leg[2];\n\n// Leg leg = new Leg();\n// leg.Symbol = \".IWM 190215C134000\";\n// leg.AssetType = enumAssetType.Option;\n\n// spread.Legs[0] = leg;\n\n// leg = new Leg();\n// leg.Symbol = \".IWM 190215C139000\";\n// leg.AssetType = enumAssetType.Option;\n\n// spread.Legs[1] = leg;\n\n// req.Add(spread);\n\nexport interface FeedState {\n quotes: string[];\n spreads: IFeedSpread[];\n connectionStatus?: ConnectionStatusType;\n}\n\nexport type FeedActions =\n | {\n type: 'setStatus';\n payload: FeedProviderStatus;\n }\n | {\n type: 'setQuote';\n payload: { quote: FeedQuote; raw: string };\n }\n | {\n type: 'dropFromQueue';\n payload: { count: number };\n }\n | {\n type: 'receivedOrderUpdate';\n payload: { order: FeedOrderUpdate; raw: string };\n }\n | {\n type: 'setSettlement';\n payload: { settlement: FeedSettlement; raw: string };\n };\n\nexport const FeedReducer = (state: TradingblockWebsocketState, action: FeedActions): TradingblockWebsocketState => {\n switch (action.type) {\n case 'setStatus':\n return {\n ...state,\n status: action.payload,\n };\n case 'dropFromQueue': {\n return {\n ...state,\n quoteQueue: _.drop(state.quoteQueue, action.payload.count),\n };\n }\n case 'setQuote': {\n const { quote, raw } = action.payload;\n const existingQuote = state.quotes[quote.Symbol] || {};\n const combinedQuoteValue = _.mergeWith({}, existingQuote, quote, (a, b) =>\n _.isNil(b) || _.isNaN(b) ? a : undefined\n );\n return {\n ...state,\n quotes: {\n ...state.quotes,\n [quote.Symbol]: combinedQuoteValue,\n },\n quoteQueue: [...state.quoteQueue, combinedQuoteValue],\n lastMessage: raw,\n };\n }\n case 'setSettlement': {\n const { settlement, raw } = action.payload;\n const existingQuote = state.quotes[settlement.Symbol] || {};\n const combinedQuoteValue = _.mergeWith({}, existingQuote, settlement, (a, b) =>\n _.isNil(b) || _.isNaN(b) ? a : undefined\n );\n // Set the quotes Last Trade Price to be from the settlement close price sent over\n combinedQuoteValue.LastTradePrice = settlement.ClosePrice;\n return {\n ...state,\n quotes: {\n ...state.quotes,\n [settlement.Symbol]: combinedQuoteValue,\n },\n quoteQueue: [...state.quoteQueue, combinedQuoteValue],\n lastMessage: raw,\n };\n }\n case 'receivedOrderUpdate': {\n const { order, raw } = action.payload;\n const { OrderId } = order;\n const existing = state.orders[OrderId] || { status: order, history: [] };\n return {\n ...state,\n orders: {\n ...state.orders,\n [OrderId]: {\n ...existing,\n status: order,\n history: [...existing.history, order],\n },\n },\n lastMessage: raw,\n };\n }\n\n default:\n return state;\n }\n};\n\nexport const FeedInitialState: TradingblockWebsocketState = {\n quoteQueue: [],\n quotes: {},\n orders: {},\n lastMessage: '',\n};\n\nexport const FeedActionContext = React.createContext>(() => { });\nexport const FeedStateContext = React.createContext(FeedInitialState);\nexport const FeedSendContext = React.createContext<{\n send(data: string | ArrayBufferLike | Blob | ArrayBufferView): void;\n}>({ send: () => { } });\n\nexport const getFeedActions = (dispatch: React.Dispatch) => {\n const setStatus = (status: FeedProviderStatus) => dispatch({ type: 'setStatus', payload: status });\n return {\n setStatus,\n onQuote: (quote: FeedQuote, raw: string) => dispatch({ type: 'setQuote', payload: { quote, raw } }),\n onOrderUpdate: (order: FeedOrderUpdate, raw: string) => dispatch({ type: 'receivedOrderUpdate', payload: { order, raw } }),\n onSettlement: (settlement: FeedSettlement, raw: string) => dispatch({ type: 'setSettlement', payload: { settlement, raw } }),\n dropFromQueue: (count: number) => dispatch({ type: 'dropFromQueue', payload: { count } }),\n };\n};\n\nexport const useFeedActions = () => {\n const dispatch = useContext(FeedActionContext);\n return useMemo(() => getFeedActions(dispatch), [dispatch]);\n};\n","import _ from 'lodash';\nimport { DataFeedSubscription, QuoteFeedType, SpreadFeedType, OrderUpdateFeedType } from '@tradingblock/types';\nimport { isOCCSymbol, toPrefixedOccSymbol } from '@tradingblock/api';\n\nexport const DATA_FEED_PREFIX = 'tradingblockfeed';\n\nfunction getSubscriptionData(s: DataFeedSubscription) {\n switch (s.kind) {\n case 'Quote': {\n const allSymbols = _.map(s.symbols, sym => (isOCCSymbol(sym) ? toPrefixedOccSymbol(sym) : sym)).join(',');\n return s.symbols.length > 0 ? `${QuoteFeedType}=${allSymbols}` : '';\n }\n case 'Spread':\n return s && s.spreadDefinition && s.spreadDefinition.length > 0\n ? `${SpreadFeedType}=${JSON.stringify(s.spreadDefinition)}`\n : '';\n case 'OrderUpdate':\n return `${OrderUpdateFeedType}=1`;\n }\n}\n\nexport const getQuoteSubscription = (\n apiToken: string,\n accountId: string | number,\n subs: DataFeedSubscription[],\n unsubscribe?: boolean\n) => {\n const headerValues = [`0=${apiToken}`, `1=${accountId}`, unsubscribe ? '9=0' : '9=1'].filter(v => v !== undefined);\n const orderedSubscriptions = _.orderBy(subs, s => s)\n .filter(ss =>\n ss.kind === 'Quote' ? ss.symbols.length > 0 : ss.kind === 'Spread' ? ss.spreadDefinition.length > 0 : true\n )\n .map(ss => getSubscriptionData(ss));\n if (apiToken && subs && orderedSubscriptions.length > 0) {\n const subscriptString = _.union(headerValues, orderedSubscriptions).join('|');\n return subscriptString;\n }\n return undefined;\n};\nexport const getOrderUpdateSubscription = (apiToken: string, accountId: string | number, unsubscribe?: boolean) => {\n const value = unsubscribe === true ? 0 : 1;\n return `0=${apiToken}|1=${accountId}|13=${value}`;\n};\n\n/*\n\n 0 = 1 (Success)\n 1 = 1 (i.e. single leg quote. any instrument)\n 2 = QuoteTime\n 3 = Symbol\n 4 = LastTradePrice\n 5 = BidPrice\n 6 = AskPrice\n 7 = NetChange\n 8 = High\n 9 = Low\n 10 = Volume\n 11 = Change Percentage\n\nexample:\n\n 0=0|1=1|2=07/24/2019 18:35:38|3=TSLA|4=240.3|5=240.3|6=240.59|7=-19.87|8=266.07|9=258.1601|10=10494992|11=-7.64\n\n*/\n\nexport const tryParseMessage = (message: string) => {};\n\n// const parser = (value: string) => {\n// const vals = value.split('|').map(vv => vv.replace(/\\d+=/, ''));\n// if (vals.length < 12) {\n// console.warn('quote string from feed has less fields than expected', value);\n// }\n// const str = (ind: number) => vals[ind];\n// const int = (ind: number) => parseInt(str(ind));\n// const float = (ind: number) => parseFloat(str(ind));\n// const success = (ind: number) => (int(ind) === 0 ? true : false);\n// const mtype = (typeVal: number): FeedMessageType => (typeVal === 0 ? 'HeartBeat' : typeVal === 1 ? 'Quote' : typeVal === 2 ? 'Spread' : typeVal === 3 ? 'OrderUpdate' : undefined);\n// const result = {\n// success: success(0),\n// type: mtype(1),\n// };\n// return {\n// str,\n// int,\n// float,\n// success,\n// mtype,\n// result,\n// };\n// };\n\n// export const parseQuote = (quote: string): FeedData => {\n// const { str, float, result } = parser(quote);\n// return {\n// ...result,\n// QuoteTime: str(2),\n// Symbol: str(3),\n// LastTradePrice: float(4),\n// BidPrice: float(5),\n// AskPrice: float(6),\n// NetChange: float(7),\n// High: float(8),\n// Low: float(9),\n// Volume: float(10),\n// ChangePercentage: float(11),\n// raw: quote,\n// };\n// };\n","import { useContext, useCallback } from 'react';\nimport _ from 'lodash';\nimport { DataFeedSubscription } from '@tradingblock/types';\nimport { useLog } from '@tradingblock/components';\nimport { FeedSendContext } from './FeedState';\nimport { getQuoteSubscription, getOrderUpdateSubscription } from './DataFeed';\n\nconst getSymbols = (sub: DataFeedSubscription | DataFeedSubscription[]) => {\n const subscription = _.isArray(sub) ? sub : [sub];\n return _.flatMap(subscription, s => (s.kind === 'Quote' ? s.symbols : []));\n};\n\nexport function useFeedActions(apiToken: string) {\n const log = useLog('DataFeed');\n const { send } = useContext(FeedSendContext);\n const trySend = useCallback(\n (cmd: string | undefined) => {\n try {\n if (cmd) {\n send(cmd);\n return true;\n }\n } catch (ex) {\n console.warn('useFeedActions :: Caught error trying to send feed cmd \"', cmd, '\": ', ex);\n // throw ex;\n }\n return false;\n },\n [send]\n );\n const subscribeQuote = useCallback(\n (accountId: string | number, sub: DataFeedSubscription | DataFeedSubscription[]) => {\n const subscription = _.isArray(sub) ? sub : [sub];\n const cmd = getQuoteSubscription(apiToken, accountId, subscription);\n log.extend('subscribe')(`%o`, { symbols: getSymbols(sub), message: cmd });\n return trySend(cmd);\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [trySend, apiToken]\n );\n const unsubscribeQuote = useCallback(\n (accountId: string | number, sub: DataFeedSubscription | DataFeedSubscription[]) => {\n const cmd = getQuoteSubscription(apiToken, accountId, _.isArray(sub) ? sub : [sub], true);\n log.extend('unsubscribe')(`%o`, { symbols: getSymbols(sub), message: cmd });\n return trySend(cmd);\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [trySend, apiToken]\n );\n const subscribeOrderUpdates = useCallback(\n (accountId: string | number) => {\n const cmd = getOrderUpdateSubscription(apiToken, accountId);\n return trySend(cmd);\n },\n [trySend, apiToken]\n );\n const unsubscribeOrderUpdates = useCallback(\n (accountId: string | number) => {\n const cmd = getOrderUpdateSubscription(apiToken, accountId, true);\n return trySend(cmd);\n },\n [trySend, apiToken]\n );\n return { subscribeQuote, unsubscribeQuote, subscribeOrderUpdates, unsubscribeOrderUpdates };\n}\n","import constate from 'constate';\nimport { useState } from 'react';\n\nexport const useSubscribedSymbolsContext = constate(() => {\n const [subscribedQuotes, setSubscribedQuotes] = useState([]);\n\n return [subscribedQuotes, setSubscribedQuotes] as [string[], typeof setSubscribedQuotes];\n});\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useEffect, useMemo } from 'react';\nimport _ from 'lodash';\nimport { IFeedSpread, DataFeedSubscription } from '@tradingblock/types';\nimport { useLog, useWhyDidYouUpdate } from '@tradingblock/components';\nimport { useStateSelector, blocksSelectors } from '../global/dataSelectors';\nimport { useFeedActions } from './useFeedActions';\nimport { useSubscribedSymbolsContext } from './context/DataFeedSymbolsContext';\n\nexport const getFeedSubscription = ({ quotes, spread }: { quotes?: string | string[]; spread?: IFeedSpread }) => {\n let feedValues: DataFeedSubscription[] = [];\n if (quotes) {\n const quoteValues = _.isArray(quotes) ? quotes : [quotes];\n feedValues = [...feedValues, { kind: 'Quote', symbols: quoteValues }];\n }\n if (spread) {\n feedValues = [...feedValues, { kind: 'Spread', spreadDefinition: [spread] }];\n }\n return feedValues;\n};\n\nconst log = useLog('DataFeedInitializer');\nexport const DataFeedInitializer: React.FC<{ apiToken: string; accountId: number; authToken: string }> = ({\n apiToken,\n accountId,\n}) => {\n // const [subscribedQuotes, setSubscribedQuotes] = useState([]);\n const [subscribedQuotes, setSubscribedQuotes] = useSubscribedSymbolsContext();\n\n const { subscribeQuote, unsubscribeQuote, subscribeOrderUpdates, unsubscribeOrderUpdates } = useFeedActions(apiToken);\n const quotes = useStateSelector(blocksSelectors.allBlockQuotes);\n const feedProviderStatus = useStateSelector(s => s.feedProvider.status);\n const selectedAccountId = useStateSelector(\n s => s.account.selectedLinkedAccount && s.account.selectedLinkedAccount.accountId\n );\n\n useWhyDidYouUpdate('DataFeedInitializer', { log, subscribedQuotes, apiToken, accountId, quotes, feedProviderStatus });\n\n const quotesToAdd = useMemo(() => {\n log('quotes %o', { subscribedQuotes, incoming: quotes });\n return _.uniq(_.difference(quotes || [], subscribedQuotes || []) || []);\n }, [subscribedQuotes, quotes, log]);\n\n const quotesToRemove = useMemo(() => {\n return _.difference(subscribedQuotes || [], quotes || []) || [];\n }, [subscribedQuotes, quotes]);\n\n useEffect(() => {\n if (feedProviderStatus && feedProviderStatus === 'open') {\n subscribeOrderUpdates(accountId);\n if (subscribedQuotes && subscribedQuotes.length > 0) {\n subscribeQuote(accountId, getFeedSubscription({ quotes: subscribedQuotes || [] }));\n }\n }\n }, [feedProviderStatus]);\n\n useEffect(() => {\n if (feedProviderStatus && feedProviderStatus === 'open') {\n if (selectedAccountId) {\n console.log('selected linked account', selectedAccountId);\n subscribeOrderUpdates(selectedAccountId);\n }\n }\n }, [selectedAccountId]);\n\n useEffect(() => {\n const shouldAdd = quotesToAdd && quotesToAdd.length > 0;\n const shouldRemove = quotesToRemove && quotesToRemove.length > 0;\n let updatedSubscribedQuotes = subscribedQuotes;\n if (shouldAdd) {\n //const subscribeResult = true;\n //***UNCOMMENT THIS ONCE QUOTE SUBSCRIBE/UNSUBSCRIBE IS DEPLOYED****\n const subscribeResult = subscribeQuote(accountId, getFeedSubscription({ quotes: quotesToAdd || [] }));\n\n if (subscribeResult) {\n updatedSubscribedQuotes = _.uniq([...updatedSubscribedQuotes, ...quotesToAdd]);\n log('subscribed to quotes %o', quotesToAdd);\n } else {\n log('failed to subscribe to quotes %o', quotesToAdd);\n }\n }\n if (shouldRemove) {\n //const removeResult = true;\n const removeResult = unsubscribeQuote(accountId, getFeedSubscription({ quotes: quotesToRemove || [] }));\n if (removeResult) {\n updatedSubscribedQuotes = _.filter(updatedSubscribedQuotes, q => {\n return !quotesToRemove.includes(q);\n });\n\n log('unsubscribed from quotes %o', quotesToRemove);\n } else {\n log('failed to unsubscribe from quotes %o', quotesToRemove);\n }\n }\n if (shouldRemove || shouldAdd) {\n //***REMOVE THIS ONCE QUOTE SUBSCRIBE/UNSUBSCRIBE IS DEPLOYED****\n //const result = subscribe(accountId, getFeedSubscription({ quotes: updatedSubscribedQuotes || [] }));\n //log('subscribed to quotes %o', result);\n\n setSubscribedQuotes(updatedSubscribedQuotes);\n }\n }, [quotesToAdd, subscribedQuotes, subscribeQuote, accountId, quotesToRemove, log, unsubscribeQuote]);\n\n return <>;\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useEffect, useMemo, useState, useRef } from 'react';\nimport _ from 'lodash';\nimport { useStateSelector, blocksSelectors } from '../global/dataSelectors';\nimport { useLog } from '@tradingblock/components';\nimport { useDispatcher } from '../global/hooks';\nimport { RequestDebounceMS } from '../../constants';\nimport { QuoteDataActions } from '../global/actions/QuoteActions';\n\nconst log = useLog('QuoteRequestHandler');\nexport const QuoteRequestInitializer: React.FunctionComponent<{\n apiToken: string;\n accountId: number;\n authToken: string;\n}> = ({ apiToken, accountId }) => {\n const { dispatch } = useDispatcher();\n\n const quotes = useStateSelector(blocksSelectors.allBlockQuotes);\n\n useEffect(() => {\n if (quotes && quotes.length > 0) {\n dispatch(QuoteDataActions.requestQuote({ symbol: [...new Set(quotes)] }));\n }\n }, [quotes, accountId, dispatch]);\n\n return <>;\n};\n","import React, { useEffect } from 'react';\nimport { useDispatch } from 'react-redux';\nimport { LifecycleActions } from './global/actions';\nimport { useStateSelector, AuthenticationInfoSelector, account } from './global/dataSelectors';\nimport { DataFeedInitializer } from './feed/DataFeedInitializer';\nimport { useDispatcher } from './global/hooks';\nimport { QuoteRequestInitializer } from './quotes/QuoteRequestHandler';\nimport { AccountActions } from './global/actions/AccountActions';\nimport { UserRole } from '@tradingblock/types';\n\nexport const DataInitializer: React.FC<{}> = () => {\n const { isAuthenticated, apiToken, token, accountId } = useStateSelector(AuthenticationInfoSelector);\n const dispatch = useDispatch();\n const { dispatcher } = useDispatcher();\n const accountRoles = useStateSelector(account.userRoles);\n const isIRA = useStateSelector(s => s.account.isIRA);\n const isUGMA = useStateSelector(s => s.account.isUGMA);\n const isPartnership = useStateSelector(s => s.account.isPartnership);\n\n useEffect(() => {\n if (isAuthenticated) {\n //dispatch(Actions.requestAccounts({ id: accountId }));\n dispatch(AccountActions.loadUserData({ accountId }));\n dispatch(LifecycleActions.loadInitialData());\n }\n }, [dispatch, isAuthenticated, accountId]);\n useEffect(() => {\n if (isAuthenticated && accountId) {\n if (accountRoles !== undefined) {\n if (accountRoles.includes(UserRole.CashieringApproval) && !isIRA && !isUGMA && !isPartnership) {\n dispatcher.balances.requestPendingTransfers();\n }\n }\n // dispatcher.balances.request();\n }\n }, [dispatcher, isAuthenticated, accountRoles]);\n\n return (\n <>\n {apiToken && isAuthenticated && token && account && accountId && (\n <>\n \n \n \n )}\n \n );\n};\n","import _ from 'lodash';\nimport { IStorageEngine, CreateDashboardPath, StorageDashboardPath, StorageDashboardsPath, DashboardInfo, CreateDashboardRequest } from '@tradingblock/types';\n\nexport const trySaveDashboards = async (storage: IStorageEngine, dashboards: DashboardInfo[]) => {\n try {\n return storage.save(StorageDashboardsPath, dashboards).then(res => (_.isArray(res) ? res : []));\n } catch (ex) {\n console.error('trySaveDashboards', ex);\n return Promise.resolve([]);\n }\n};\n\nexport const tryCreateDashboard = async (storage: IStorageEngine, createDashboard: CreateDashboardRequest) => {\n try {\n return storage.save(CreateDashboardPath, createDashboard);\n } catch (ex) {\n console.error('tryCreateDashboards', ex);\n return Promise.resolve(undefined);\n }\n};\n\nexport const tryCreateEmptyDashboard = async (storage: IStorageEngine, dashboard: DashboardInfo) => {\n try {\n await storage.save(StorageDashboardPath, dashboard);\n return dashboard;\n } catch (ex) {\n console.error('tryCreateEmptyDashboard', ex);\n return Promise.resolve(undefined);\n }\n};\n","import { createStandardAction, ActionType } from 'typesafe-actions';\nimport { useBlockActionDispatch } from '../../../components/blocks/BlockState';\nimport { useMemo } from 'react';\n\nconst ActivityActionTypes = {\n setTimeframe: 'setTimeframe',\n toggleActivityPopover: 'toggleActivityPopover',\n};\nexport const Actions = {\n setTimeframe: createStandardAction(ActivityActionTypes.setTimeframe)<{ startDate: Date | undefined; endDate: Date | undefined }>(),\n toggleActivityPopover: createStandardAction(ActivityActionTypes.toggleActivityPopover)<{}>(),\n};\nexport type ActivityActions = ActionType;\n\nexport function useActivityActions() {\n const dispatch = useBlockActionDispatch();\n\n return useMemo(\n () => ({\n setTimeframe: (startDate: Date | undefined, endDate: Date | undefined) => {\n return dispatch({ type: ActivityActionTypes.setTimeframe, payload: { startDate: startDate, endDate: endDate } });\n },\n }),\n [dispatch]\n );\n}\n","import { ActionType, getType } from 'typesafe-actions';\nimport { legacyOrderGroupActions, LegacyOrderGroupAction } from './OrderActions';\n\ntype GroupAction = ActionType;\nexport function isGroupHandlingAction(action: T | GroupAction): action is GroupAction {\n return [legacyOrderGroupActions.handleOrderGroupChange].map(a => getType(a)).includes(action.type);\n}\n\nexport function isLegacyOrderGroupAction(\n action: T | LegacyOrderGroupAction\n): action is LegacyOrderGroupAction {\n return [legacyOrderGroupActions.addOrderLeg, legacyOrderGroupActions.handleOrderGroupChange]\n .map(a => getType(a))\n .includes(action.type);\n}\n","import dayjs, { Dayjs } from 'dayjs';\nimport parseMs from 'parse-ms';\nimport { DateValueModel, Expiration, OptionExpirationType } from '@tradingblock/types';\nimport _ from 'lodash';\nimport utc from 'dayjs/plugin/utc';\nimport timezone from 'dayjs/plugin/timezone';\n\ndayjs.extend(utc);\ndayjs.extend(timezone);\n\ntype Holiday = {\n name: string;\n date: string;\n earlyClose: boolean;\n message: string;\n};\n\nconst HOLIDAYS_DATA: Holiday[] = [\n {\n name: \"New Year's Day\",\n date: '2024-01-01',\n earlyClose: false,\n message: 'Market Closed Due to',\n },\n {\n name: 'Martin Luther King, Jr. Day',\n date: '2024-01-15',\n earlyClose: false,\n message: 'Market Closed Due to',\n },\n {\n name: \"Washington's Birthday\",\n date: '2024-02-19',\n earlyClose: false,\n message: 'Market Closed Due to',\n },\n {\n name: 'Good Friday',\n date: '2024-03-29',\n earlyClose: false,\n message: 'Market Closed Due to',\n },\n {\n name: 'Memorial Day',\n date: '2024-05-27',\n earlyClose: false,\n message: 'Market Closed Due to',\n },\n {\n name: 'Juneteenth National Independence Day',\n date: '2024-06-19',\n earlyClose: false,\n message: 'Market Closed Due to',\n },\n {\n name: 'Independence Eve',\n date: '2024-07-03',\n earlyClose: true,\n message: 'Early Market Close Due to',\n },\n {\n name: 'Independence Day',\n date: '2024-07-04',\n earlyClose: false,\n message: 'Market Closed Due to',\n },\n {\n name: 'Thanksgiving Day',\n date: '2024-11-28',\n earlyClose: false,\n message: 'Market Closed Due to',\n },\n {\n name: 'After Thanksgiving',\n date: '2024-11-29',\n earlyClose: true,\n message: 'Early Market Close Due to',\n },\n {\n name: 'Christmas Eve',\n date: '2024-12-24',\n earlyClose: true,\n message: 'Early Market Close Due to',\n },\n {\n name: 'Christmas Day',\n date: '2024-12-25',\n earlyClose: false,\n message: 'Market Closed Due to',\n },\n];\n\nexport const isSameDate = (date1: Date | dayjs.Dayjs | undefined, date2: Date | dayjs.Dayjs | undefined) => {\n if (date1 && date2) {\n return dayjs(date1).isSame(date2, 'date');\n }\n return false;\n};\n\nexport function isToday(date: Date | undefined): boolean {\n return date ? isSameDate(date, new Date()) : false;\n}\n\nexport function returnMarketHoliday(): Holiday | undefined {\n const now = dayjs.utc().toDate();\n //Check to see if today is a holiday, if so, return Holiday object. If not, return undefined\n return HOLIDAYS_DATA.find(h => dayjs(h.date).isSame(now, 'day'));\n}\n\nexport const MarketOpenTime = () => {\n const isDST = dayjs.tz(undefined, 'America/New_York').utcOffset() === -240 ? true : false;\n let hour = isDST ? 12 : 13;\n\n return dayjs\n .utc()\n .hour(hour)\n .minute(30)\n .second(0)\n .millisecond(0);\n};\n\nexport const TimeTillClose = () => {\n const isDST = dayjs.tz(undefined, 'America/New_York').utcOffset() === -240 ? true : false;\n const holiday = returnMarketHoliday();\n let hour = isDST ? 20 : 21;\n\n // if today is a holiday with early close, set hours to 1 pm EST (check for DST)\n // See isMarketOpen to see when the market is closed fully on the holiday.\n if (holiday && holiday.earlyClose) hour = isDST ? 17 : 18;\n\n return dayjs\n .utc()\n .set('hour', hour)\n .set('minute', 0)\n .set('second', 0);\n};\n\nexport const PreviewTimeTillClose = () => {\n const isDST = dayjs.tz(undefined, 'America/New_York').utcOffset() === -240 ? true : false;\n\n if (isDST) {\n return dayjs\n .utc()\n .set('hour', 20)\n .set('minute', 15)\n .set('second', 0);\n }\n\n return dayjs\n .utc()\n .set('hour', 21)\n .set('minute', 15)\n .set('second', 0);\n};\n\nexport const isMarketOpen = (dayInterval?: boolean) => {\n const now = dayjs.utc().toDate();\n const holiday = returnMarketHoliday();\n\n // if day interval return true\n // otherwise afterhours the current day's bar will not build\n // TODO: need to determine if a bar has been built for after hours 1D interval, if so return false otherwise we will return all quotes received after hours\n if (dayInterval) {\n return true;\n }\n\n const marketOpen = MarketOpenTime().toDate();\n const timeTillClose = TimeTillClose().toDate();\n\n // Check to see if today is a holiday. If so, return false if market is fully closed.\n // See TimeTillClose for when the market is partially open\n if (holiday && !holiday.earlyClose) return false;\n\n return isBetween(now, marketOpen, timeTillClose);\n};\nexport const PreviewisMarketOpen = () => {\n const now = dayjs.utc().toDate();\n const marketOpen = MarketOpenTime().toDate();\n const timeTillClose = PreviewTimeTillClose().toDate();\n\n return isBetween(now, marketOpen, timeTillClose);\n};\nexport const isTodayOrAfter = (date: Date | dayjs.Dayjs) =>\n // assuming that if today, should be before market closes\n (isSameDate(date, dayjs()) && dayjs().isBefore(TimeTillClose())) || dayjs().isBefore(date);\n\nexport function isExpiration(value: Expiration | T): value is Expiration {\n return _.keys(value).includes('date');\n}\nexport const expirationToDayjs = (date: Date | Expiration) => {\n if (isExpiration(date)) {\n return dayjs(date.date);\n }\n return dayjs(date);\n};\nexport const expirationUnixTimestamp = (date: Date | Expiration | undefined) =>\n date === undefined ? -1 : expirationToDayjs(date).valueOf();\nexport const getSimpleDateString = (date: Date | Expiration) => {\n return expirationToDayjs(date).format('YYMMDD:HHmmss');\n};\nexport const expirationValue = (date: Expiration) => {\n return `${getSimpleDateString(date)} ${OptionExpirationType[date.optionExpirationType]}`;\n};\nexport const isSameExpiration = (date1: Expiration, date2: Expiration) =>\n expirationValue(date1) === expirationValue(date2);\n\nexport const DisplayTimeTilClose = (parsed: parseMs.Parsed) => {\n return `${parsed.hours} hour${parsed.hours === 1 ? '' : 's'}, ${parsed.minutes} minute${\n parsed.minutes === 1 ? '' : 's'\n }`;\n};\n\n/**\n * Checks to see whether or not the given date is between two dates\n *\n * @param date the Date to be checked\n * @param startDate start of date range\n * @param endDate end of date range\n */\nexport const isBetween = (date: Date | undefined, startDate: Date, endDate: Date) => {\n if (date) {\n const d = dayjs(date);\n return d.isAfter(startDate) && d.isBefore(endDate);\n }\n return false;\n};\n\n// is startingDate in year of 1970\nexport const isStartingDateIn1970 = (startingDate: Dayjs) => {\n return startingDate.year() === 1970;\n};\n\nexport function daterangeToTimeframe(\n startingDate: dayjs.Dayjs | null | undefined,\n endingDate: dayjs.Dayjs | null | undefined\n): string {\n if (!startingDate || !endingDate || isStartingDateIn1970(startingDate)) {\n return 'All';\n }\n const today = dayjs();\n if (isSameDate(startingDate, today) && isSameDate(endingDate, today)) {\n return 'Today';\n }\n if (isSameDate(startingDate, today.subtract(1, 'week')) && isSameDate(endingDate, today)) {\n return 'Week';\n }\n if (isSameDate(startingDate, today.subtract(1, 'month')) && isSameDate(endingDate, today)) {\n return 'Month';\n }\n if (isSameDate(startingDate, today.subtract(1, 'year')) && isSameDate(endingDate, today)) {\n return 'Year';\n }\n const format = 'M/D/YY';\n return `${startingDate.format(format)} - ${endingDate.format(format)}`;\n}\n\nexport const formatDate = (date: dayjs.Dayjs | string) => {\n return (_.isString(date) ? dayjs(date) : date).format('MMM D, YYYY h:mm A');\n};\n\nexport const formatDateWithoutTime = (date: dayjs.Dayjs | string) => {\n return (_.isString(date) ? dayjs(date) : date).format('MMM D, YYYY');\n};\n\nexport const cleanDatePart = (value: number | undefined) => {\n return value && `${value < 10 ? '0' : ''}${value}`;\n};\n\nexport const cleanDateModel = (value: DateValueModel | null | undefined) => {\n if (value) {\n return `${cleanDatePart(value.year)}-${cleanDatePart(value.month)}-${cleanDatePart(value.day)}`;\n }\n return null;\n};\n","import _ from 'lodash';\nimport { Legs, OrderLegDTOState, OrderAction } from '@tradingblock/types';\nimport { expirationUnixTimestamp } from '../../../utilities/date';\n\nexport const getOrderActionForCalendar = (orderLegs: Legs, currentOrderAction: OrderAction): OrderAction => {\n if (_.some(orderLegs, l => l.Expiration === undefined)) {\n return currentOrderAction;\n }\n const latestExpirationLeg = _(orderLegs).reduce(\n (latestExp: OrderLegDTOState, l): OrderLegDTOState => {\n const latestValue = expirationUnixTimestamp(latestExp.Expiration);\n const currentValue = expirationUnixTimestamp(l.Expiration);\n if (latestExp === undefined || currentValue > latestValue) {\n return l;\n }\n return latestExp;\n }\n );\n return latestExpirationLeg ? latestExpirationLeg.Action : currentOrderAction;\n};\n","import { IBlockState } from '@tradingblock/types';\r\nimport { OrderState, OrderBlockState } from '../OrderState';\r\n\r\nconst wrapped = (orderState: IBlockState) => ({\r\n value: () => orderState,\r\n withLegError: (err?: string) => {\r\n return wrapped({\r\n ...orderState,\r\n data: {\r\n ...orderState.data,\r\n legError: err,\r\n },\r\n });\r\n },\r\n});\r\n\r\nexport const orderstate = (orderState: IBlockState) => wrapped(orderState);\r\n","import _ from 'lodash';\nimport { getType, isActionOf } from 'typesafe-actions';\nimport { OrderBlockState, OrderState } from '../OrderState';\nimport { OrderActions, Actions, AllOrderActions, ValidationActions } from '../OrderActions';\nimport { DebitOrCredit, OrderAction, isCustomStrategy } from '@tradingblock/types';\nimport { orderLegsToClassifiedStrategy } from '../../../../data/global/utilities/strategyClassification';\nimport { Strategies } from '@tradingblock/api';\n\n// const isOrderValidSelector = createCachedSelector(\n// (s: OrderState, blockId: string) => s.validation.valid,\n// (s: OrderState, blockId: string) => {\n// const legs = s.legs;\n// if (_.isNil(legs) || _.values(legs).length === 0) {\n// return false;\n// }\n// return _.every(legs, ({ OptionType, Strike, Expiration, SpreadRatio }) => {\n// if (_.isNil(OptionType)) {\n// return true;\n// } else {\n// return _.every([Strike, Expiration, SpreadRatio], v => !_.isNil(v));\n// }\n// });\n// },\n// (valid, complete) => {\n// return { valid, complete };\n// }\n// )((s: OrderState, blockId: string) => blockId);\n\nconst isOrderComplete = (state: OrderState) => {\n const legs = state.legs;\n const numLegs = _.values(legs).length;\n if (_.isNil(legs) || _.values(legs).length === 0) {\n return false;\n }\n return _.every(legs, ({ OptionType, Strike, Expiration, SpreadRatio }) => {\n if (_.isNil(OptionType)) {\n return true;\n } else {\n // only check SpreadRatio for multi-leg orders\n if (numLegs === 1) {\n return _.every([Strike, Expiration], v => !_.isNil(v));\n } else {\n return _.every([Strike, Expiration, SpreadRatio], v => !_.isNil(v));\n }\n }\n });\n};\n\nexport const OrderPreviewReducer = (state: OrderBlockState, action: AllOrderActions): OrderBlockState => {\n switch (action.type) {\n case 'initializeData':\n case getType(Actions.clear):\n case getType(Actions.setSymbol):\n case getType(Actions.removeLeg):\n case getType(ValidationActions.startValidation):\n case getType(ValidationActions.finishValidation):\n case getType(Actions.setPositionInfo):\n case getType(Actions.setOptionType):\n case getType(Actions.setLegQuantity):\n case getType(Actions.setExpiration):\n case getType(Actions.setStrike):\n case getType(Actions.setOrderAction):\n case getType(Actions.setLegAction):\n case getType(Actions.addOrderLeg):\n case getType(Actions.setStrategy):\n case getType(Actions.handleOrderGroupChange):\n case getType(Actions.reset):\n case getType(Actions.SetSymbolAndReset):\n case getType(Actions.addOrderLegFromGroup): {\n const isOrderAction = isActionOf(Actions.setOrderAction, action);\n const { legs } = state.data;\n\n const classifyStrategy = orderLegsToClassifiedStrategy(Object.values(legs) as any);\n const isComplete = isOrderComplete(state.data);\n const isValid = state.data.validation.valid;\n let recalculatePrice = true;\n if (isOrderAction) {\n recalculatePrice = false;\n } else {\n recalculatePrice = true;\n }\n\n let debitCredit;\n\n debitCredit =\n state.data.debitCredit || (classifyStrategy.action === 'BUY' && DebitOrCredit.Debit) || DebitOrCredit.Credit;\n\n return {\n ...state,\n data: {\n ...state.data,\n recalculatePrice,\n debitCredit: state.data.debitCredit,\n preview: {\n // status: isComplete === false ? 'incomplete' : isValid === false ? 'invalid' : 'complete',\n enabled: isValid && isComplete ? true : false,\n },\n },\n };\n }\n\n default:\n return state;\n }\n};\n","import { getType, isActionOf, ActionType } from 'typesafe-actions';\r\nimport { Actions as ActActions } from '../../Activity/state/ActivityActions';\r\nimport _ from 'lodash';\r\nimport {\r\n Legs,\r\n OrderLegDTO,\r\n isCustomStrategy,\r\n OrderAction,\r\n AssetType,\r\n Order,\r\n StrikeRules,\r\n PositionInfo,\r\n DebitOrCredit,\r\n GroupOrderLeg,\r\n AssetSymbolInfo,\r\n Expiration,\r\n OrderValidationError,\r\n OrderBlockSettings,\r\n isKnownStrategyType,\r\n TradingStrategyNameOrCustom,\r\n Durations,\r\n OrderType,\r\n} from '@tradingblock/types';\r\nimport {\r\n DeriveLegAssetType,\r\n CustomStrategy,\r\n getStrategy,\r\n isSymbolEqual,\r\n getDebitOrCredit,\r\n isString,\r\n AllStrategies,\r\n getDefaultOrderQuantity,\r\n Strategies,\r\n} from '@tradingblock/api';\r\nimport { toArray } from '../../../utilities/data';\r\nimport { OrderStateFactory } from '../../BlockStateFactory';\r\nimport {\r\n OrderActions,\r\n Actions,\r\n OrderInitializeAction,\r\n addOrderLegFromGroupType,\r\n SetSymbolAndResetType,\r\n AllOrderActions,\r\n} from './OrderActions';\r\nimport { OrderState, OrderBlockState, OrderQuote } from './OrderState';\r\nimport {\r\n isCalendarStrategy,\r\n getNextLegId,\r\n getLegPosition,\r\n getStrategiesForSymbol,\r\n defaultStrategyForSymbol,\r\n SymbolForLeg,\r\n} from '../OrderUtilities';\r\nimport { isLegacyOrderGroupAction, isGroupHandlingAction } from './OrderActionUtility';\r\nimport { getOrderActionForCalendar } from './orderReducerUtilities';\r\nimport { orderstate } from './transforms/orderStateTransforms';\r\nimport { OrderPreviewReducer } from './reducers/OrderPreviewReducer';\r\nimport { blockReducer, isBlockAction } from '../../../components/blocks/BlockState';\r\nimport { BlockTablesReducer } from '../../../components/blocks/state/blockTable/BlockTableReducer';\r\nimport { BlockTableAction } from '../../../components/blocks/state/blockTable/BlockTableActions';\r\nimport { OrderToOrderState } from './OrderStateToOrder';\r\nimport dayjs from 'dayjs';\r\nimport { orderLegsToClassifiedStrategy } from '../../../data/global/utilities/strategyClassification';\r\nimport { useBidAsk } from '../components/useBidAsk';\r\n\r\nexport const DefaultOrderState = (\r\n orderSettings: OrderBlockSettings,\r\n strategy?: TradingStrategyNameOrCustom\r\n): OrderState => ({\r\n validStrategies: AllStrategies,\r\n duration: Durations.Day,\r\n orderType: OrderType.Limit,\r\n legs: {},\r\n recalculatePrice: false,\r\n quantity: strategy ? getDefaultOrderQuantity(strategy, orderSettings) : 1,\r\n action: OrderAction.Buy,\r\n isDirty: false,\r\n positions: {},\r\n debitCredit: DebitOrCredit.Debit,\r\n quotes: {},\r\n preview: {\r\n enabled: false,\r\n },\r\n validation: {\r\n isValidating: false,\r\n errors: [],\r\n },\r\n tables: {},\r\n});\r\n\r\nconst emptyValidation = {\r\n errors: [],\r\n message: undefined,\r\n valid: undefined,\r\n match: undefined,\r\n isValidating: false,\r\n field: undefined,\r\n};\r\n\r\nconst emptyValidValidation = {\r\n ...emptyValidation,\r\n valid: true,\r\n};\r\n\r\nconst updateAllLegs = (legs: Legs, update: (existing: OrderLegDTO) => Partial) => {\r\n return _.reduce(\r\n legs,\r\n (all, leg) => {\r\n const updatedLeg = update(leg);\r\n return {\r\n ...all,\r\n [leg.Id]: {\r\n ...leg,\r\n ...updatedLeg,\r\n },\r\n };\r\n },\r\n {}\r\n );\r\n};\r\n\r\ntype OrderLegInfoDto = Omit;\r\nexport function reduceLeg(positions: PositionInfo) {\r\n return (leg: T, assetSymbol: AssetSymbolInfo | undefined) => {\r\n return {\r\n ...leg,\r\n PositionEffect: getLegPosition(positions, leg, assetSymbol),\r\n };\r\n };\r\n}\r\n\r\nexport function reduceLegs(positions: PositionInfo, assetSymbol: AssetSymbolInfo | undefined) {\r\n const reduce = reduceLeg(positions);\r\n return (legs: Legs) => {\r\n return _(legs)\r\n .keys()\r\n .reduce((acc: Legs, id: string) => {\r\n const existingLeg = acc[id];\r\n\r\n return existingLeg\r\n ? {\r\n ...acc,\r\n [id]: reduce(existingLeg, assetSymbol),\r\n }\r\n : acc;\r\n }, legs);\r\n };\r\n}\r\n\r\nexport const BaseOrderStateReducer = (orderState: OrderBlockState, action: OrderActions): OrderBlockState => {\r\n const state = orderState;\r\n const legReducer = reduceLeg(state.data.positions);\r\n\r\n switch (action.type) {\r\n // I Do not like that we technically now how both activity reducer and order reducer here... but we do now...\r\n case getType(ActActions.setTimeframe): {\r\n const { startDate, endDate } = action.payload as {\r\n startDate: Date | undefined;\r\n endDate: Date | undefined;\r\n };\r\n let startDateValue = dayjs(startDate)\r\n .startOf('day')\r\n .toDate();\r\n let endDateValue = dayjs(endDate)\r\n .endOf('day')\r\n .toDate();\r\n if (startDateValue && endDateValue && dayjs(endDateValue).isBefore(startDateValue)) {\r\n endDateValue = dayjs(startDateValue)\r\n .endOf('day')\r\n .toDate();\r\n startDateValue = dayjs(endDateValue)\r\n .startOf('day')\r\n .toDate();\r\n }\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n startDate: startDateValue,\r\n endDate: endDateValue,\r\n },\r\n } as any;\r\n }\r\n case 'initializeData': {\r\n const dataState = state.data;\r\n const strat = dataState.strategy;\r\n let orderActionValue =\r\n strat && isCalendarStrategy(strat)\r\n ? getOrderActionForCalendar(dataState.legs, state.data.action)\r\n : state.data.action;\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n action: orderActionValue,\r\n legError: undefined,\r\n validation: {\r\n ...emptyValidation,\r\n },\r\n },\r\n };\r\n }\r\n case getType(Actions.clear): {\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n legs: {},\r\n legError: undefined,\r\n price: undefined,\r\n validation: {\r\n ...emptyValidation,\r\n isValidating: false,\r\n },\r\n },\r\n };\r\n }\r\n case 'startValidation': {\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n validation: {\r\n ...emptyValidation,\r\n isValidating: true,\r\n },\r\n },\r\n };\r\n }\r\n case 'finishValidation': {\r\n const { valid, match } = action.payload;\r\n const errors: OrderValidationError[] = _.filter(action.payload.errors, e => e !== undefined);\r\n const errMap: OrderValidationError[] = _.reduce(\r\n errors,\r\n (acc: OrderValidationError[], v: OrderValidationError): OrderValidationError[] => {\r\n const symbol = isString(v) ? undefined : _.get(v, 'symbol', undefined);\r\n const message = isString(v) ? v : v.message;\r\n const updatedError: OrderValidationError = v.type === 'OrderFieldError' ? { ...v, message, symbol } : v;\r\n return [...acc, updatedError];\r\n },\r\n []\r\n );\r\n const firstError = errMap ? _.first(errMap) : undefined;\r\n let message: string | undefined = undefined;\r\n let field: keyof Order | keyof OrderLegDTO | undefined = undefined;\r\n let legIds: string[] = [];\r\n if (firstError) {\r\n message = firstError.message;\r\n if (firstError.type === 'OrderFieldError') {\r\n const fieldVal = firstError.field.trim().toLowerCase() === 'strike' ? 'Strike' : (firstError.field as any);\r\n field = fieldVal;\r\n }\r\n if (valid === false && firstError.type === 'OrderLegError') {\r\n legIds = _.filter(state.data.legs, l => {\r\n const occSymbol = SymbolForLeg(l, state.data.symbol);\r\n return occSymbol === firstError.symbol;\r\n }).map(l => l.Id);\r\n }\r\n }\r\n\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n legError: undefined,\r\n validation: {\r\n errors,\r\n message,\r\n valid,\r\n match,\r\n field,\r\n isValidating: false,\r\n legIds,\r\n },\r\n },\r\n };\r\n }\r\n case getType(Actions.orderPlaced): {\r\n const result = {\r\n ...state,\r\n };\r\n return result;\r\n }\r\n case getType(Actions.removeLeg): {\r\n const { id } = action.payload;\r\n const legsWithoutCurrent = _.reduce(\r\n state.data.legs,\r\n (acc: Legs, value: OrderLegDTO, key: string) => {\r\n if (key === id) {\r\n return acc;\r\n }\r\n acc[key] = value;\r\n return acc;\r\n },\r\n {}\r\n );\r\n const legsStillExist = _.keys(legsWithoutCurrent).length > 0;\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n legs: legsWithoutCurrent,\r\n recalculatePrice: legsStillExist,\r\n price: legsStillExist ? state.data.price : undefined,\r\n },\r\n };\r\n }\r\n case getType(Actions.setSymbol): {\r\n const { symbol, options } = action.payload;\r\n const { settings } = options;\r\n\r\n const blockSettings = state.settings;\r\n if (isSymbolEqual(symbol, state.data.symbol)) {\r\n return state;\r\n }\r\n const combinedBlockSettings = { ...(settings || {}), ...(blockSettings || {}) };\r\n const resetOrder = options.defaultToEmptyCustomIfSymbolChanges === true;\r\n if (symbol === undefined && resetOrder) {\r\n const resetState = {\r\n ...state,\r\n data: {\r\n ...DefaultOrderState(combinedBlockSettings, state.data.strategy),\r\n isLoaded: true,\r\n },\r\n };\r\n return resetState;\r\n }\r\n let defaultStrategy = defaultStrategyForSymbol(symbol, blockSettings.defaultStrategy, settings);\r\n\r\n if (defaultStrategy === undefined) {\r\n return {\r\n ...state,\r\n data: {\r\n ...DefaultOrderState(combinedBlockSettings),\r\n isLoaded: true,\r\n },\r\n };\r\n }\r\n let legs = isKnownStrategyType(defaultStrategy) ? OrderStateFactory.Build(defaultStrategy, symbol).legs : {};\r\n if (resetOrder) {\r\n legs = {};\r\n defaultStrategy = 'Custom';\r\n }\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n legError: undefined,\r\n quantity: getDefaultOrderQuantity(defaultStrategy, combinedBlockSettings),\r\n price: undefined,\r\n recalculatePrice: true,\r\n action: OrderAction.Buy,\r\n symbol: symbol,\r\n strategy: defaultStrategy,\r\n legs,\r\n validStrategies: AllStrategies,\r\n validation: emptyValidValidation,\r\n },\r\n };\r\n }\r\n case getType(Actions.SetSymbolAndReset): {\r\n const payload = (action as SetSymbolAndResetType).payload;\r\n const symbol = payload.symbol;\r\n const leg = payload.leg;\r\n const legs: Legs = {};\r\n const strategy = defaultStrategyForSymbol(symbol, state.settings.defaultStrategy);\r\n return {\r\n ...state,\r\n\r\n data: {\r\n ...state.data,\r\n isDirty: true,\r\n legs: {\r\n ...legs,\r\n [leg.Id]: legReducer({ ...leg, AssetType: DeriveLegAssetType(leg) }, symbol),\r\n },\r\n symbol,\r\n strategy,\r\n legError: undefined,\r\n recalculatePrice: true,\r\n validation: {\r\n ...emptyValidation,\r\n isValidating: false,\r\n },\r\n },\r\n };\r\n }\r\n case getType(Actions.addOrderLegFromGroup): {\r\n const { leg } = (action as addOrderLegFromGroupType).payload;\r\n let legs = state.data.legs;\r\n const existingSymbol = state && state.data && state.data.symbol ? state.data.symbol : undefined;\r\n if (getType(Actions.addOrderLegFromGroup) === action.type) {\r\n if (!existingSymbol || (leg.UnderlyingSymbol && leg.UnderlyingSymbol !== existingSymbol.underlyingSymbol)) {\r\n console.warn('not adding leg, incorrect underlying symbol');\r\n }\r\n }\r\n\r\n // set leg error if already max # of custom legs\r\n if (_.size(legs) >= 4) {\r\n return orderstate(state)\r\n .withLegError('Maximum legs already added to order')\r\n .value();\r\n }\r\n\r\n return {\r\n ...state,\r\n\r\n data: {\r\n ...state.data,\r\n isDirty: true,\r\n legs: {\r\n ...legs,\r\n [leg.Id]: legReducer(\r\n {\r\n ...leg,\r\n AssetType: DeriveLegAssetType(leg),\r\n },\r\n existingSymbol\r\n ),\r\n },\r\n strategy: CustomStrategy.info.Name,\r\n legError: undefined,\r\n recalculatePrice: true,\r\n validation: {\r\n ...emptyValidation,\r\n isValidating: false,\r\n },\r\n },\r\n };\r\n }\r\n // this is the {type: 'initialize', ...} action!\r\n case getType(Actions.reset): {\r\n const { strategy, symbol, legs, quantity, settings, orderType } = (action as OrderInitializeAction).payload;\r\n const orderAction = action.payload.action;\r\n const legValues = _.reduce(\r\n legs,\r\n (all, l) => {\r\n return {\r\n ...all,\r\n [l.Id]: {\r\n ...l,\r\n UnderlyingSymbol: symbol ? symbol.underlyingSymbol : l.UnderlyingSymbol,\r\n },\r\n };\r\n },\r\n {}\r\n );\r\n const getCalendarLegAction = (_legs: Legs | { [legId: string]: GroupOrderLeg }) => {\r\n // Get id values for legs. leg_## is the format\r\n const legKeys = Object.getOwnPropertyNames(legs);\r\n // Compare dates. Choose the leg reference by their latest date. Acchtopess the leg using the OwnProperties lookup.\r\n if (legs[legKeys[0]].Expiration && legs[legKeys[1]].Expiration) {\r\n const laterLegIndex =\r\n new Date(legs[legKeys[0]].Expiration!.date) > new Date(legs[legKeys[1]].Expiration!.date)\r\n ? legKeys[0]\r\n : legKeys[1];\r\n // Return that legs action when updating the component\r\n return legs[laterLegIndex].Action;\r\n }\r\n };\r\n // Action buttons in positions/activities tables reset the order block with updatedState.\r\n // Previously, closing a long position incorrectly showed a debit when selling.\r\n // This fix resets the order block to reflect the typical debit/credit for the order action.\r\n // In unusual cases (like negative prices), debit/credit is recalculated after setting the price.\r\n let debitCredit = orderAction === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\r\n const updatedState = {\r\n ...state,\r\n data: {\r\n ...DefaultOrderState(settings),\r\n quantity,\r\n strategy,\r\n symbol,\r\n orderType: orderType,\r\n legs: legValues,\r\n validStrategies: AllStrategies,\r\n legError: undefined,\r\n isLoaded: true,\r\n recalculatePrice: true,\r\n price: undefined,\r\n debitCredit,\r\n action:\r\n strategy && strategy.includes('Calendar') && Object.keys(legs).length\r\n ? getCalendarLegAction(legs)\r\n : orderAction\r\n ? orderAction\r\n : OrderAction.Buy,\r\n },\r\n };\r\n return updatedState;\r\n }\r\n case getType(Actions.addOrderLeg):\r\n case getType(Actions.handleOrderGroupChange): {\r\n const { settings } = action.payload;\r\n const symbol = isLegacyOrderGroupAction(action) && action.payload.symbol ? action.payload.symbol : undefined;\r\n const validStrategies = getStrategiesForSymbol(symbol);\r\n let strategy = isGroupHandlingAction(action) ? action.payload.strategy : undefined;\r\n if (\r\n strategy === undefined ||\r\n _.find(validStrategies, vs => strategy && vs.info.Name === strategy) === undefined\r\n ) {\r\n strategy = defaultStrategyForSymbol(symbol, state.settings.defaultStrategy);\r\n }\r\n const orderLeg: GroupOrderLeg | undefined =\r\n isLegacyOrderGroupAction(action) && action.payload.leg ? action.payload.leg : undefined;\r\n const legAction = orderLeg && orderLeg ? orderLeg.Action : undefined;\r\n const orderAction = action.payload.action || legAction || state.data.action;\r\n const quantity = action.payload.quantity || state.data.quantity;\r\n const legId = orderLeg\r\n ? orderLeg.Id || orderLeg.UniqueId || getNextLegId(state.data.legs)\r\n : getNextLegId(state.data.legs);\r\n const groupSymbolChanged = isLegacyOrderGroupAction(action) && isSymbolEqual(symbol, state.data.symbol) !== true;\r\n const reinitialize = groupSymbolChanged;\r\n // reset legs if current strategy isn't custom\r\n const currentLegs = !state.data.strategy || state.data.strategy !== 'Custom' ? {} : state.data.legs;\r\n\r\n // what should asset type be?\r\n const assetType = AssetType.Option;\r\n\r\n // short circuit if leg already part of order\r\n if (!reinitialize && legId !== undefined && _.some(currentLegs, l => l.UniqueId === legId || l.Id === legId)) {\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n legError: undefined,\r\n },\r\n };\r\n }\r\n\r\n // set leg error if already max # of custom legs\r\n if (_.size(currentLegs) >= 4) {\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n legError: 'Maximum legs already added to order',\r\n },\r\n };\r\n }\r\n const newLeg: Omit | undefined = orderLeg\r\n ? {\r\n Id: legId,\r\n\r\n AssetType: assetType,\r\n ...orderLeg,\r\n }\r\n : undefined;\r\n let baseData = state.data;\r\n if (reinitialize && state.data.symbol !== symbol) {\r\n baseData = DefaultOrderState(settings);\r\n }\r\n const legs = newLeg\r\n ? {\r\n ...currentLegs,\r\n [legId]: legReducer(newLeg, symbol),\r\n }\r\n : currentLegs;\r\n const orderStrategy = strategy || state.data.strategy;\r\n const orderQuant = quantity\r\n ? quantity\r\n : orderStrategy\r\n ? getDefaultOrderQuantity(orderStrategy, state.settings)\r\n : 1;\r\n return {\r\n ...state,\r\n\r\n data: {\r\n ...baseData,\r\n isDirty: true,\r\n validStrategies: AllStrategies,\r\n action: orderAction,\r\n quantity: orderQuant,\r\n strategy: orderStrategy,\r\n symbol: symbol || state.data.symbol,\r\n legError: undefined,\r\n legs,\r\n // price: undefined,\r\n recalculatePrice: true,\r\n validation: {\r\n ...emptyValidation,\r\n isValidating: false,\r\n },\r\n },\r\n };\r\n }\r\n case getType(Actions.setStrategy): {\r\n const { legs, validStrategies } = state.data;\r\n const { symbol, strategy, reverseLegs, settings } = (action as ActionType).payload;\r\n const isCustom = isCustomStrategy(strategy);\r\n const orderAction = isCustom ? OrderAction.Buy : state.data.action;\r\n let updatedLegs = legs;\r\n const validStrats = validStrategies.length > 0 ? validStrategies : getStrategiesForSymbol(symbol);\r\n if (\r\n validStrats.length > 0 &&\r\n _.find(validStrats, vs => strategy && vs.info.Name === strategy.info.Name) === undefined\r\n ) {\r\n return state;\r\n }\r\n if (state.data.strategy && state.data.strategy === strategy.info.Name) {\r\n return state;\r\n }\r\n if (isCustom) {\r\n updatedLegs = {};\r\n } else if (symbol && !isCustomStrategy(strategy)) {\r\n updatedLegs = OrderStateFactory.Build(strategy, symbol, reverseLegs).legs;\r\n }\r\n const result = {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n validStrategies: AllStrategies,\r\n strategy: strategy.info.Name,\r\n legError: undefined,\r\n price: undefined,\r\n stopPrice: undefined,\r\n recalculatePrice: true,\r\n isInitializing: true,\r\n legs: updatedLegs,\r\n quantity: getDefaultOrderQuantity(strategy.info.Name, settings),\r\n action: orderAction,\r\n validation: {\r\n ...emptyValidation,\r\n isValidating: false,\r\n },\r\n },\r\n };\r\n return result;\r\n }\r\n case getType(Actions.setOrderAction):\r\n case getType(Actions.setLegAction): {\r\n const { strategy, legs } = state.data;\r\n const { legId } = action.payload;\r\n const isCustom = strategy && isCustomStrategy(strategy);\r\n const orderAction = isCustom\r\n ? state.data.action\r\n : state.data.action === OrderAction.Buy\r\n ? OrderAction.Sell\r\n : OrderAction.Buy;\r\n const updatedLegs = _.reduce(\r\n legs,\r\n (acc: Legs, val: OrderLegDTO): Legs => {\r\n const inverseAction = val.Action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy;\r\n let legAction = val.Action;\r\n if (legId && isCustom && val.Id === legId) {\r\n legAction = action.payload.action ? action.payload.action : inverseAction;\r\n } else if (!isCustom) {\r\n legAction = val.Action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy;\r\n }\r\n return {\r\n ...acc,\r\n [val.Id]: legReducer({ ...val, Action: legAction }, state.data.symbol),\r\n };\r\n },\r\n {}\r\n );\r\n\r\n return {\r\n ...state,\r\n\r\n data: {\r\n ...state.data,\r\n isDirty: true,\r\n action: orderAction,\r\n legError: undefined,\r\n legs: {\r\n ...updatedLegs,\r\n },\r\n price: undefined,\r\n },\r\n };\r\n }\r\n\r\n case 'setStrike': {\r\n const { strike, legId } = action.payload;\r\n const { strategy } = state.data;\r\n const stateStrategy = strategy ? getStrategy(strategy) : undefined;\r\n let setAllStrikes =\r\n stateStrategy &&\r\n !isCustomStrategy(stateStrategy) &&\r\n toArray(stateStrategy.profile.Rules.Strike).includes(StrikeRules.SameStrikes);\r\n const legs = updateAllLegs(state.data.legs, existing => {\r\n const shouldUpdateLegStrike = setAllStrikes === true || existing.Id === legId;\r\n return legReducer(\r\n {\r\n ...existing,\r\n Strike: shouldUpdateLegStrike ? strike : existing.Strike,\r\n },\r\n state.data.symbol\r\n );\r\n });\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n recalculatePrice: true,\r\n legError: undefined,\r\n legs: {\r\n ...state.data.legs,\r\n ...legs,\r\n },\r\n },\r\n };\r\n }\r\n\r\n case getType(Actions.setExpiration): {\r\n const { legId } = action.payload;\r\n const expiration: Expiration = action.payload.expiration;\r\n const { strategy } = state.data;\r\n const stateStrategy = strategy ? getStrategy(strategy) : undefined;\r\n const isCalendar = stateStrategy && isCalendarStrategy(stateStrategy);\r\n const orderLegs = state.data.legs;\r\n let updateAllOptionLegs = stateStrategy && !isCustomStrategy(stateStrategy) && !isCalendar;\r\n const updatedLegs: Legs = _.reduce(\r\n orderLegs,\r\n (all, leg): Legs => {\r\n const legMatchesId = legId === leg.Id;\r\n const legIsOptionAndAllShouldUpdate = updateAllOptionLegs && leg.AssetType === AssetType.Option;\r\n const shouldUpdateExpiration = legMatchesId || legIsOptionAndAllShouldUpdate;\r\n const legExpiration = shouldUpdateExpiration ? expiration : leg.Expiration;\r\n return {\r\n ...all,\r\n [leg.Id]: legReducer(\r\n {\r\n ...leg,\r\n Expiration: legExpiration,\r\n Strike: shouldUpdateExpiration ? undefined : leg.Strike,\r\n },\r\n state.data.symbol\r\n ),\r\n };\r\n },\r\n {}\r\n );\r\n\r\n let orderActionValue = isCalendar ? getOrderActionForCalendar(updatedLegs, state.data.action) : state.data.action;\r\n\r\n return {\r\n ...state,\r\n\r\n data: {\r\n ...state.data,\r\n isDirty: true,\r\n action: orderActionValue,\r\n price: undefined,\r\n recalculatePrice: true,\r\n legError: undefined,\r\n legs: updatedLegs,\r\n },\r\n };\r\n }\r\n\r\n case 'setLegQuantity': {\r\n const { legId, quantity } = action.payload;\r\n const { legs } = state.data;\r\n const hasOneLeg = _.keys(legs).length === 1;\r\n return {\r\n ...state,\r\n\r\n data: {\r\n ...state.data,\r\n isDirty: true,\r\n legError: undefined,\r\n recalculatePrice: hasOneLeg ? false : true,\r\n legs: {\r\n ...state.data.legs,\r\n [legId]: legReducer(\r\n {\r\n ...(state.data.legs[action.payload.legId] || {}),\r\n SpreadRatio: hasOneLeg ? undefined : quantity,\r\n },\r\n state.data.symbol\r\n ),\r\n },\r\n },\r\n };\r\n }\r\n\r\n case 'setOptionType': {\r\n const { legId, optionType } = action.payload;\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n recalculatePrice: true,\r\n legError: undefined,\r\n legs: {\r\n ...state.data.legs,\r\n [legId]: legReducer(\r\n {\r\n ...(state.data.legs[action.payload.legId] || {}),\r\n OptionType: optionType,\r\n },\r\n state.data.symbol\r\n ),\r\n },\r\n },\r\n };\r\n }\r\n case getType(Actions.setPositionInfo): {\r\n const positions = action.payload.info as PositionInfo;\r\n\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n positions,\r\n legs: reduceLegs(positions, state.data.symbol)(state.data.legs),\r\n },\r\n };\r\n }\r\n case getType(Actions.setQuantity): {\r\n const quantity = action.payload.quantity as number;\r\n return {\r\n ...state,\r\n\r\n data: {\r\n ...state.data,\r\n isDirty: true,\r\n quantity,\r\n },\r\n };\r\n }\r\n case getType(Actions.setPrice): {\r\n if (!isActionOf(Actions.setPrice, action)) {\r\n return state;\r\n } else {\r\n const { price, negativePrice } = action.payload;\r\n let priceValue = price;\r\n\r\n const currentDebitOrCredit = state.data.debitCredit;\r\n\r\n if (negativePrice && priceValue && priceValue > 0 && state.data.strategy === 'Custom') {\r\n priceValue = priceValue * -1;\r\n }\r\n\r\n const classifyStrategy = orderLegsToClassifiedStrategy(Object.values(state.data.legs) as any);\r\n\r\n const allSells = _.every(state.data.legs, l => l.Action === OrderAction.Sell);\r\n const allBuys = _.every(state.data.legs, l => l.Action === OrderAction.Buy);\r\n\r\n // if the strategy is a calendar, then we need to determine debit/credit based on the price and the legs to determine if the cost is positive or negative\r\n const isCustom = state.data.strategy === 'Custom';\r\n const isCalendarMatch = classifyStrategy.name.includes('Calendar') && state.data.strategy === 'Custom';\r\n const isCalendar = classifyStrategy.name.includes('Calendar') && state.data.strategy !== 'Custom';\r\n const latestExpiringLeg = _.maxBy(Object.values(state.data.legs), l => l.Expiration && l.Expiration.date);\r\n\r\n let debitValue;\r\n let orderPrice = priceValue || 0;\r\n\r\n if (isCalendar && latestExpiringLeg) {\r\n // Consolidate the logic for debit/credit when isCalendar is true\r\n debitValue =\r\n orderPrice > 0\r\n ? latestExpiringLeg.Action === OrderAction.Buy\r\n ? DebitOrCredit.Debit\r\n : DebitOrCredit.Credit\r\n : latestExpiringLeg.Action === OrderAction.Buy\r\n ? DebitOrCredit.Credit\r\n : DebitOrCredit.Debit;\r\n } else if (isCalendarMatch) {\r\n // Directly assign debit or credit based on the price value for isCalendarMatch\r\n debitValue = orderPrice > 0 ? DebitOrCredit.Debit : DebitOrCredit.Credit;\r\n }\r\n\r\n // Assuming the rest of the logic for setting `debitCreditValue` remains applicable only if `debitValue` is defined\r\n let debitCreditValue;\r\n if (debitValue !== undefined) {\r\n debitCreditValue = debitValue;\r\n } else {\r\n // Fallback or other logic if neither isCalendar nor isCalendarMatch conditions are met\r\n debitCreditValue =\r\n classifyStrategy.name.includes('Calendar') || (!allSells && !allBuys && classifyStrategy.name === 'Custom')\r\n ? currentDebitOrCredit\r\n : classifyStrategy.action === 'BUY'\r\n ? DebitOrCredit.Debit\r\n : DebitOrCredit.Credit;\r\n }\r\n // Only allow negative prices for calendar strategies or custom strategies that match the calendar strategy\r\n // If the price is negative and the strategy is not a calendar strategy, set the price to 0\r\n if (priceValue && priceValue < 0 && !isCalendar && !isCalendarMatch && !isCustom) {\r\n priceValue = 0;\r\n }\r\n\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n price: priceValue,\r\n debitCredit: debitCreditValue,\r\n recalculatePrice: false,\r\n },\r\n };\r\n }\r\n }\r\n case getType(Actions.setStopPrice): {\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n stopPrice: action.payload.price,\r\n },\r\n };\r\n }\r\n case getType(Actions.setDebitCredit): {\r\n const debitCredit = isActionOf(Actions.setDebitCredit, action) ? action.payload.debitCredit : undefined;\r\n const classifyStrategy = orderLegsToClassifiedStrategy(Object.values(state.data.legs) as any);\r\n const allSells = _.every(state.data.legs, l => l.Action === OrderAction.Sell);\r\n const allBuys = _.every(state.data.legs, l => l.Action === OrderAction.Buy);\r\n\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n debitCredit:\r\n classifyStrategy.name.includes('Calendar') || (!allSells && !allBuys && classifyStrategy.name === 'Custom')\r\n ? debitCredit\r\n : classifyStrategy.action === 'BUY'\r\n ? DebitOrCredit.Debit\r\n : DebitOrCredit.Credit,\r\n },\r\n };\r\n }\r\n case getType(Actions.setSubaccountId): {\r\n const subaccountId = action.payload.subaccountId;\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n subaccountId,\r\n },\r\n };\r\n }\r\n case getType(Actions.setOrder): {\r\n const order = action.payload.order;\r\n const orderState = OrderToOrderState(order);\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n ...orderState,\r\n },\r\n };\r\n }\r\n case getType(Actions.updateQuote): {\r\n const quotesArray = isActionOf(Actions.updateQuote, action) ? _.values(action.payload) : [];\r\n const quotes: Record = _.reduce(\r\n quotesArray,\r\n (acc, v) => {\r\n return {\r\n ...acc,\r\n [v.Symbol]: v,\r\n };\r\n },\r\n {}\r\n );\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n quotes,\r\n },\r\n };\r\n }\r\n case getType(Actions.removeQuote): {\r\n const key = isActionOf(Actions.removeQuote, action) ? action.payload : undefined;\r\n const quotes: Record = _(state.data.quotes)\r\n .filter(q => q.Symbol !== key)\r\n .reduce((acc: Record, v) => ({ ...acc, [v.Symbol]: v }), {});\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n quotes,\r\n },\r\n };\r\n }\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nexport const OrderStateReducer = (initialOrderState: OrderBlockState, action: AllOrderActions) => {\r\n const baseBlockState = isBlockAction(action)\r\n ? blockReducer(initialOrderState, action)\r\n : initialOrderState;\r\n const intermediateState: OrderBlockState = BaseOrderStateReducer(baseBlockState, action as any);\r\n const orderState = OrderPreviewReducer(intermediateState, action);\r\n const finalOrderState = BlockTablesReducer(orderState, action as BlockTableAction);\r\n return finalOrderState;\r\n};\r\n","import _ from 'lodash';\nimport {\n AssetSymbol,\n Legs,\n OrderAction,\n TradingStrategy,\n OrderLegDTO,\n BlockType,\n IBlockDataState,\n PriceChartSettings,\n TradingStrategyNameOrCustom,\n TradingStrategyName,\n InfoBlockSettings,\n} from '@tradingblock/types';\nimport { BuildInitialOrder, getKnownStrategy } from '@tradingblock/api';\nimport { OrderState } from './Order/state/OrderState';\nimport { DefaultOrderState } from './Order/state/OrderReducer';\nimport { DefaultOrderBlockSettings } from './Order/state/OrderSettings';\nimport { PriceChartState } from './PriceChart/state/PriceChartState';\nimport { DefaultPriceChartSettings } from './PriceChart/state/PriceChartSettings';\nimport { OptionChainState } from './OptionChain/state/OptionChainState';\nimport { QuoteState } from './QuoteExtended/state/QuoteState';\nimport { InfoBlockDataState } from './Info/state/InfoState';\nimport { DefaultInfoBlockSettings } from './Info/state/InfoSettings';\nexport const OrderStateFactory = {\n Initial: DefaultOrderState(DefaultOrderBlockSettings, 'Custom'),\n Build: (\n strategyOrStrategyName: TradingStrategy | TradingStrategyName,\n symbol: AssetSymbol,\n reverse: boolean = false\n ): OrderState => {\n const strategy =\n typeof strategyOrStrategyName === 'string' ? getKnownStrategy(strategyOrStrategyName) : strategyOrStrategyName;\n if (strategy && strategy.profile) {\n const defaultLegs = BuildInitialOrder(strategy, { Symbol: symbol.symbol }).Legs;\n const legs = _.reduce(\n defaultLegs,\n (acc: Legs, val: OrderLegDTO) => {\n const legAction = reverse\n ? val.Action === OrderAction.Buy\n ? OrderAction.Sell\n : OrderAction.Buy\n : val.Action;\n return { ...acc, [val.Id]: { ...val, Action: legAction } };\n },\n {}\n );\n return {\n ...DefaultOrderState(DefaultOrderBlockSettings, strategy.info.Name),\n symbol,\n legs,\n strategy: strategy.info.Name,\n };\n }\n return {\n ...DefaultOrderState(DefaultOrderBlockSettings, 'Custom'),\n symbol,\n strategy: 'Custom',\n };\n },\n};\nexport const PriceChartStateFactory: StateFactory = {\n Initial: {},\n Build: (symbol: AssetSymbol): PriceChartState => {\n return {\n symbol,\n isDirty: false,\n };\n },\n Settings: DefaultPriceChartSettings,\n};\nexport const OptionChainStateFactory = {\n Initial: {},\n Build: (symbol: AssetSymbol): OptionChainState => {\n return {\n isDirty: false,\n };\n },\n};\nexport const QuoteStateFactory = {\n Initial: {},\n Build: (symbol: AssetSymbol): QuoteState => {\n return {\n symbol,\n isDirty: false,\n };\n },\n};\nexport const InfoStateFactory: StateFactory = {\n Initial: {},\n Build: (symbol: AssetSymbol): InfoBlockDataState => {\n return {\n symbol,\n isDirty: false,\n };\n },\n Settings: DefaultInfoBlockSettings,\n};\ninterface StateSettingsFactory {\n Settings: SET;\n}\ninterface StateFactory extends StateSettingsFactory {\n Initial: Partial;\n Build: (...args: any[]) => S;\n}\nconst FactoryMap = {\n [BlockType.PriceChart]: PriceChartStateFactory,\n};\nexport function blockStateFactory(type: T): StateSettingsFactory {\n const defaultFactory: StateSettingsFactory = { Settings: {} };\n return _.get(FactoryMap, type, defaultFactory);\n}\n","import _ from 'lodash';\nimport {\n BlockConfiguration,\n DashboardConfiguration,\n Layout,\n BlockType,\n Layouts,\n SizeType,\n BlockLayouts,\n DefaultDashboardConfiguration,\n BlockTypeConfiguration,\n CreateDashboardRequest,\n} from '@tradingblock/types';\nimport { Shares, getMinBlockSize } from '@tradingblock/api';\nimport { newId } from '@tradingblock/components';\nimport {\n OrderStateFactory,\n PriceChartStateFactory,\n OptionChainStateFactory,\n QuoteStateFactory,\n InfoStateFactory,\n} from '../blocks/BlockStateFactory';\n\ntype BlockPreset = Pick;\n\nexport const isBlockTypeAllowed = (blockType: BlockType, isVirtualEnv: boolean) => {\n if (isVirtualEnv) {\n // some block types are not allowed in virtual env\n return (\n !_.includes([BlockType.AccountTransfer], blockType) &&\n !_.includes([BlockType.AccountManagement], blockType) &&\n !_.includes([BlockType.AdminTools], blockType) &&\n !_.includes([BlockType.AccountStatements], blockType)\n );\n }\n return true;\n};\n\nconst getBlocksWithIds = (blocks: Omit[], isVirtualEnv: boolean) => {\n const allowedBlocks = _.filter(blocks, b => isBlockTypeAllowed(b.type, isVirtualEnv));\n return _.map(allowedBlocks, b => ({ ...b, blockId: newId(), groupId: b.groupId || newId() }));\n};\n\nconst getPresetData = (blocks: BlockPreset[], isVirtualEnv: boolean) => {\n const blocksWithIds = getBlocksWithIds(blocks, isVirtualEnv);\n // separate out layouts from blocks\n const presetLayouts = _.reduce(\n blocksWithIds,\n (layouts: Layouts, block) => {\n return _.reduce(\n block.layouts || {},\n (acc: Layouts, blockLayout, breakpoint) => {\n const breakpointLayouts = [\n ...(acc[breakpoint] || []),\n { ...blockLayout, i: block.blockId, type: block.type },\n ];\n return { ...acc, [breakpoint]: breakpointLayouts };\n },\n layouts\n );\n },\n {}\n );\n // remove layouts from each block\n const presetBlocks = _.map(blocksWithIds, b => _.omit(b, 'layouts'));\n return {\n presetBlocks,\n presetLayouts,\n };\n};\n\nconst presetBlockLayoutAndData = (columns: number, breakpoint: SizeType) => (type: BlockType, layout: Layout) => (\n b: BlockTypeConfiguration\n) => {\n const isMatch = b.type === type;\n if (isMatch) {\n let data: any = b.initialData;\n const initSymbol = b.initialData.symbol;\n if (type === BlockType.PriceChart) {\n data = PriceChartStateFactory.Build(b.initialData.symbol);\n } else if (initSymbol && type === BlockType.OptionChain) {\n data = OptionChainStateFactory.Build(initSymbol);\n } else if (initSymbol && type === BlockType.Order) {\n data = OrderStateFactory.Build(Shares, initSymbol);\n } else if (initSymbol && type === BlockType.Quote) {\n data = QuoteStateFactory.Build(initSymbol);\n } else if (initSymbol && type === BlockType.Info) {\n data = InfoStateFactory.Build(initSymbol);\n }\n\n const minSize = getMinBlockSize(type, columns, breakpoint);\n const layouts = _.reduce(\n _.values(SizeType),\n (acc: BlockLayouts, b) => ({ ...acc, [b]: { ...layout, type, minW: minSize.w, minH: minSize.h } }),\n {}\n );\n return {\n ...b,\n layouts,\n data,\n };\n }\n\n return b;\n};\n\nconst getDashboardPreset = (\n columns: number,\n dashboardConfig: DefaultDashboardConfiguration,\n isVirtualEnv: boolean,\n breakpoint: SizeType\n) => {\n const equalSize = Math.floor(columns * 0.5);\n // const narrowSize = Math.floor(columns * 0.45);\n\n // calculate w/x for block layouts based on columns\n const layouts = {\n full: { w: columns, x: 0 },\n equal: {\n left: { w: equalSize, x: 0 },\n right: { w: columns - equalSize, x: equalSize },\n },\n // offset: {\n // left: { w: narrowSize, x: 0 },\n // right: { w: columns - narrowSize, x: narrowSize },\n // },\n };\n\n const presetBlockData = presetBlockLayoutAndData(columns, breakpoint);\n\n switch (dashboardConfig.title) {\n case 'Account Summary':\n return {\n ...dashboardConfig,\n ...getPresetData(\n dashboardConfig.blocks\n .map(presetBlockData(BlockType.Favorites, { ...layouts.equal.left, h: 7, y: 1 }))\n .map(presetBlockData(BlockType.Favorites, { ...layouts.equal.left, h: 7, y: 1 }))\n .map(presetBlockData(BlockType.AccountManagement, { ...layouts.equal.left, h: 5, y: 2 }))\n .map(presetBlockData(BlockType.AccountStatements, { ...layouts.equal.left, h: 4, y: 3 }))\n .map(presetBlockData(BlockType.Account, { ...layouts.equal.right, h: 2, y: 1 }))\n .map(presetBlockData(BlockType.Positions, { ...layouts.equal.right, h: 4, y: 2 }))\n .map(presetBlockData(BlockType.Order, { ...layouts.equal.right, h: 6, y: 3 }))\n .map(presetBlockData(BlockType.AccountTransfer, { ...layouts.equal.right, h: 4, y: 4 })),\n isVirtualEnv\n ),\n };\n\n case 'Research':\n return {\n ...dashboardConfig,\n ...getPresetData(\n dashboardConfig.blocks\n .map(presetBlockData(BlockType.Favorites, { ...layouts.equal.left, h: 6, y: 1 }))\n .map(presetBlockData(BlockType.OptionChain, { ...layouts.equal.left, h: 5, y: 2 }))\n .map(presetBlockData(BlockType.Info, { ...layouts.equal.left, h: 5, y: 3 }))\n .map(presetBlockData(BlockType.Account, { ...layouts.equal.right, h: 2, y: 1 }))\n .map(presetBlockData(BlockType.PriceChart, { ...layouts.equal.right, h: 9, y: 2 }))\n .map(presetBlockData(BlockType.Quote, { ...layouts.equal.right, h: 5, y: 3 })),\n isVirtualEnv\n ),\n };\n\n case 'Trading': {\n return {\n ...dashboardConfig,\n ...getPresetData(\n dashboardConfig.blocks\n .map(presetBlockData(BlockType.Order, { ...layouts.equal.left, h: 6, y: 1 }))\n .map(presetBlockData(BlockType.Activity, { ...layouts.equal.left, h: 4, y: 2 }))\n .map(presetBlockData(BlockType.OptionChain, { ...layouts.equal.left, h: 6, y: 3 }))\n .map(presetBlockData(BlockType.Account, { ...layouts.equal.right, h: 2, y: 1 }))\n .map(presetBlockData(BlockType.Positions, { ...layouts.equal.right, h: 6, y: 2 }))\n .map(presetBlockData(BlockType.PriceChart, { ...layouts.equal.right, h: 8, y: 3 })),\n isVirtualEnv\n ),\n };\n }\n }\n return {\n ...dashboardConfig,\n ...getPresetData(dashboardConfig.blocks, isVirtualEnv),\n };\n};\n\nexport const getDashboardPresetsForRepCode = (\n repCode: string | undefined,\n columns: number,\n dashboardConfig: DefaultDashboardConfiguration[],\n isVirtualEnv: boolean,\n breakpoint: SizeType\n): DashboardConfiguration[] => {\n if (repCode) {\n // preset dashboards for specific rep codes not defined yet...\n return [];\n }\n // default preset dashboards (rep code not defined)\n return dashboardConfig.map(dc => getDashboardPreset(columns, dc, isVirtualEnv, breakpoint));\n};\n\nexport const getCreateDashboardRequest = (board: DashboardConfiguration): CreateDashboardRequest => {\n const { presetBlocks, presetLayouts, ...info } = board;\n return {\n info,\n blocks: presetBlocks,\n layouts: presetLayouts,\n dashboard: { dashboardTemplateId: info.dashboardTemplateId },\n };\n};\n","import useMount from 'react-use/lib/useMount';\nimport { createSelector } from 'reselect';\nimport { DashboardConfiguration } from '@tradingblock/types';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { DataState } from '../../../data/global/state';\nimport { useDispatcher } from '../../../data/global/hooks';\nimport { getDashboardPresetsForRepCode } from '../../../utilities/dashboard';\nimport { dashboardSettingsSelector } from '../../../hooks/useDashboardSettings';\n\nconst defaultDashboardsSelector = createSelector(\n (s: DataState) => s.settings.defaultDashboards,\n (s: DataState) => dashboardSettingsSelector(s).columns.lg,\n (s: DataState) => s.environment.isVirtual,\n (s: DataState) => s.settings.ui.breakpoint,\n (defState, lgColumns, isVirtual, breakpoint) => {\n const dashValues = defState.dashboards || [];\n const dashboards = getDashboardPresetsForRepCode('', lgColumns, dashValues, isVirtual, breakpoint);\n return {\n dashboards,\n isFetching: defState.isFetching,\n };\n }\n);\n\nexport const useDefaultDashboards = (): [DashboardConfiguration[], boolean] => {\n const { dashboards, isFetching } = useStateSelector(defaultDashboardsSelector);\n\n const { dispatcher } = useDispatcher();\n useMount(() => {\n if (isFetching || (dashboards && dashboards.length > 0)) {\n return;\n } else {\n dispatcher.settings.requestDefaultDashboards();\n }\n });\n return [dashboards, isFetching];\n};\n","/* eslint-disable @typescript-eslint/camelcase */\nimport _ from 'lodash';\nimport { Config } from '../config';\n\nexport const isLocalhost = () => _.includes(window.location.host, 'localhost');\n\nexport const IsDevelopment = Config.isProduction === false;\n\nexport const LoginRedirectUrl = `${Config.authRedirect}/auth`;\n","import React, { useState, useMemo, useCallback } from 'react';\nimport { useSelector } from 'react-redux';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport { Modal as BootstrapModal, Button, FormGroup } from 'react-bootstrap';\nimport { Modal, TextboxField, Alert } from '@tradingblock/components';\nimport { DashboardInfo, AlertType } from '@tradingblock/types';\nimport { isString } from '@tradingblock/api';\nimport { dashboardsSelectors } from '../../../data/global/dataSelectors';\nimport { DataState } from '../../../data/global/state';\nimport { GenericField } from '../../form/GenericField';\nimport { isLocalhost } from '../../../utilities/url';\n\nexport interface EditBoardProps {\n validateOnMount?: boolean;\n dashboard: DashboardInfo;\n header?: string;\n show: boolean;\n onSave: (board: DashboardInfo) => void;\n onDelete?: () => void;\n onClose: () => void;\n}\n\ntype DashboardFormValues = Pick & { confirmDelete: string };\nexport const EditDashboardModal: React.FunctionComponent = ({ header, dashboard, show, onSave, onDelete, onClose, validateOnMount }) => {\n const [confirmDelete, setConfirmDelete] = useState(false);\n const dashboardTitlesExcludingCurrent = useSelector((s: DataState) => dashboardsSelectors.dashboardTitlesExcludingId(s, dashboard.dashboardId));\n const onValidate = useCallback(\n (values: DashboardFormValues) => {\n // console.warn('EditBoard :: validate values ', values);\n if (!values.title) {\n return { title: 'Title is required' };\n }\n if (dashboardTitlesExcludingCurrent.includes(values.title.toLocaleLowerCase().trim())) {\n return { title: 'This title is already in use. Please rename your dashboard.' };\n }\n return {};\n },\n [dashboardTitlesExcludingCurrent]\n );\n const onSubmit = useCallback(\n (values: DashboardFormValues) => {\n const title = values.title;\n const cleanValues = {\n ...values,\n title: title && isString(title) ? title.trim() : title,\n };\n onSave({ ...dashboard, ...cleanValues });\n\n onClose();\n },\n [dashboard, onClose, onSave]\n );\n const onDeleteClick = () => {\n if (onDelete && isLocalhost()) {\n onDelete();\n onClose();\n } else {\n setConfirmDelete(true);\n }\n };\n const onDeleteConfirmClick = (values: DashboardFormValues) => {\n const confirmDeleteValue = values.confirmDelete;\n if (onDelete && confirmDeleteValue && confirmDeleteValue.toLocaleLowerCase().trim() === 'delete') {\n onDelete();\n setConfirmDelete(false);\n onClose();\n }\n };\n const initialValues: DashboardFormValues = useMemo(() => ({ title: dashboard ? dashboard.title : '', confirmDelete: '' }), [dashboard]);\n const headerText = useMemo(() => {\n if (header) {\n return header;\n } else {\n return `${confirmDelete ? 'Delete' : dashboard && dashboard.dashboardId ? 'Edit' : 'Add'} dashboard`;\n }\n }, [confirmDelete, dashboard, header]);\n if (!show) {\n return null;\n }\n\n return (\n \n {({ values, handleSubmit, errors }) => (\n onClose} show>\n \n {headerText}\n \n \n
\n \n {/* */}\n \n {errors.title && }\n \n\n {onDelete && confirmDelete && (\n <>\n \n

\n To confirm deletion of this dashboard, please type DELETE in the box below.\n

\n \n
\n \n )}\n
\n
\n \n {onDelete && (\n <>\n {!confirmDelete && (\n \n )}\n {confirmDelete && (\n <>\n \n \n \n )}\n \n )}\n {!confirmDelete && (\n <>\n \n \n \n )}\n \n
\n )}\n \n );\n};\n","import React, { useState, useEffect, useCallback } from 'react';\nimport { DashboardInfo } from '@tradingblock/types';\nimport { ExternalLink, getClassNames } from '@tradingblock/components';\nimport { EditDashboardModal } from './EditDashboardModal';\n\nexport const DashboardItem: React.FunctionComponent<{\n dashboard: DashboardInfo;\n isSelected?: boolean;\n isLocked?: boolean;\n openInNewWindow?: boolean;\n onSelectBoard?: () => void;\n onSaveBoard?: (board: DashboardInfo) => void;\n onDeleteBoard?: () => void;\n}> = ({ dashboard, isSelected, isLocked, openInNewWindow, onSelectBoard, onSaveBoard, onDeleteBoard, children }) => {\n const [showEditBoard, setShowEditBoard] = useState(false);\n const onKeyDown = (e: KeyboardEvent) => {\n // if modals open while pressing ESC, close them\n if (showEditBoard && e.keyCode === 27) {\n e.preventDefault();\n e.stopPropagation();\n if (showEditBoard) {\n setShowEditBoard(false);\n }\n }\n };\n\n useEffect(() => {\n // NOTE: we add listener to body, instead of document (since dashboard drawer listens on document, and this inner listener should fire first)\n document.body.addEventListener('keydown', onKeyDown);\n return () => {\n document.body.removeEventListener('keydown', onKeyDown);\n };\n });\n const onKeyPressHandler = useCallback(() => {}, []);\n\n const className = getClassNames(['board-thumb', isSelected ? 'board-thumb-current' : null]);\n return (\n <>\n
\n
\n
{dashboard && dashboard.title}
\n
\n {isSelected && (\n \n \n \n \n )}\n {isLocked && (\n
\n \n
\n )}\n
\n {children}\n {onSaveBoard && (\n <>\n
\n \n
\n setShowEditBoard(false)} />\n \n )}\n {openInNewWindow && dashboard.dashboardId && (\n <>\n
\n \n Open in new tab\n \n
\n \n )}\n \n );\n};\n","import React, { useCallback, useState } from 'react';\nimport { useSelector } from 'react-redux';\nimport { Carousel, CarouselResponsiveOptions } from '@tradingblock/components';\nimport { DashboardInfo, DashboardConfiguration } from '@tradingblock/types';\nimport { useDefaultDashboards } from './hooks/useDefaultDashboards';\nimport { DashboardItem } from './drawer/DashboardItem';\nimport { EditDashboardModal } from './drawer/EditDashboardModal';\nimport { dashboardsSelectors } from '../../data/global/dataSelectors';\n\nexport const DashboardPresetCarousel: React.FunctionComponent<{ onSelectBoard: (board: DashboardConfiguration) => void }> = ({ onSelectBoard }) => {\n const [defaultDashboards, isFetching] = useDefaultDashboards();\n const [selectedBoard, setSelectedBoard] = useState();\n const dashboardTitles = useSelector(dashboardsSelectors.dashboardTitles);\n const onBoardSelected = useCallback(\n (board: DashboardConfiguration) => {\n if (dashboardTitles && dashboardTitles.includes(board.title.toLocaleLowerCase().trim())) {\n setSelectedBoard(board);\n } else {\n onSelectBoard(board);\n }\n },\n [dashboardTitles, onSelectBoard]\n );\n\n const onClose = useCallback(() => {\n setSelectedBoard(undefined);\n }, []);\n const onSave = useCallback(\n (board: DashboardInfo) => {\n const saveValue = selectedBoard ? { ...selectedBoard, title: board.title } : undefined;\n setSelectedBoard(undefined);\n if (saveValue) {\n onSelectBoard(saveValue);\n }\n },\n [onSelectBoard, selectedBoard]\n );\n return (\n <>\n

\n Starter boards\n

\n
\n {isFetching === true && 'Loading...'}\n {isFetching === false && (\n <>\n \n {defaultDashboards.map(d => (\n onBoardSelected(d)} />\n ))}\n \n {selectedBoard && }\n \n )}\n
\n \n );\n};\n","import { DataState } from '../state';\nimport { origin as originSel } from '../dataSelectors';\n\nexport const origin = {\n ...originSel,\n origin: (s: DataState) => s.auth.origin,\n};\n","import React from 'react';\nimport { useSelector } from 'react-redux';\nimport { TradingBlockLink as BaseTradingBlockLink, TradingBlockLinkProps } from '@tradingblock/components';\nimport { account } from '../../data/global/selectors/accountSelectors';\nimport { origin } from '../../data/global/selectors/originSelector';\n\nexport const TradingBlockLink: React.FC> = ({ children, ...props }) => {\n const accountNumber = useSelector(account.accountNumber);\n const originVal = useSelector(origin.origin);\n return (\n \n {children}\n \n );\n};\n","import React from 'react';\nimport { useSelector } from 'react-redux';\nimport _ from 'lodash';\nimport { SiteName as BaseSiteName } from '@tradingblock/components';\nimport { account } from '../../data/global/selectors/accountSelectors';\nimport { origin } from '../../data/global/selectors/originSelector';\n\nexport const SiteName: React.FC = () => {\n const accountNumber = useSelector(account.accountNumber);\n const originValue = useSelector(origin.origin);\n\n return ;\n};\n","import React, { useCallback, useState, useEffect, useMemo } from 'react';\nimport { useSelector } from 'react-redux';\nimport _ from 'lodash';\nimport { Carousel, CarouselResponsiveOptions, useAlerts, newId } from '@tradingblock/components';\nimport { DashboardInfo, DashboardConfiguration } from '@tradingblock/types';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { dashboardsSelectors } from '../../data/global/dataSelectors';\nimport { useStore } from '../../context/Storage';\nimport { tryCreateDashboard } from '../../data/async/dashboards';\nimport { DashboardPresetCarousel } from './DashboardPresetCarousel';\nimport { EditDashboardModal } from './drawer/EditDashboardModal';\nimport { DashboardItem } from './drawer/DashboardItem';\nimport { DashboardActions } from '../../data/global/actions';\nimport { TradingBlockLink } from '../basic/TradingBlockLink';\nimport { SiteName } from '../basic/SiteName';\nimport { getCreateDashboardRequest } from '../../utilities/dashboard';\nimport Config from '../../config';\n\ninterface DashboardDrawerProps {\n isOpen: boolean;\n toggleIsOpen: () => void;\n}\n\nconst defaultDashboard: DashboardInfo = {\n dashboardId: newId(),\n title: '',\n};\n\nexport const DashboardDrawer: React.FunctionComponent = ({ isOpen, toggleIsOpen }) => {\n const store = useStore();\n const { dispatch, dispatcher } = useDispatcher();\n const notifications = useAlerts();\n\n const userDashboards = useSelector(dashboardsSelectors.dashboards);\n const currentDashboardId = useSelector(dashboardsSelectors.dashboardId);\n const [showAddBoard, setShowAddBoard] = useState(false);\n\n const canDeleteUserDashboard = useMemo(() => {\n // on production, can't delete last dashboard (so there is always at least one)\n return userDashboards ? _.size(userDashboards) > 1 : false;\n }, [userDashboards]);\n\n // hardcoded exchange boards\n const exchangeBoards = _.map(['Research #1', 'Trade Ideas #2'], t => ({ title: t, dashboardId: '' }));\n\n const onAddBoard = useCallback((values: DashboardInfo) => {\n const dashboardInfo: DashboardInfo = { title: values.title, dashboardId: newId() };\n dispatch(DashboardActions.addEmptyDashboard({ dashboard: dashboardInfo, setAsActive: true }));\n }, []);\n\n const onUpdateBoard = useCallback(\n (board: DashboardInfo) => {\n dispatcher.dashboards.updateDashboard(board);\n },\n [dispatcher.dashboards]\n );\n\n const onDeleteBoard = useCallback(\n (board: DashboardInfo) => {\n dispatcher.dashboards.updateDashboard({ ...board, isDeleted: true });\n },\n [dispatcher.dashboards]\n );\n\n const onSelectDashboard = (board: DashboardInfo) => {\n dispatcher.dashboards.setDashboard({ dashboard: board });\n // toggleIsOpen();\n };\n\n const onSelectPresetDashboard = useCallback(\n (board: DashboardConfiguration) => {\n const newBoard = {\n ...board,\n dashboardId: newId(),\n };\n const createRequest = getCreateDashboardRequest(newBoard);\n\n tryCreateDashboard(store, createRequest).then(dashboardSaved => {\n if (!dashboardSaved) {\n console.warn('saving dashboard failed! ', newBoard);\n }\n dispatcher.dashboards.setDashboard({ dashboard: { ...newBoard } });\n });\n },\n [store, dispatcher.dashboards]\n );\n\n const onSelectExchangeDashboard = useCallback(async () => {\n notifications.info('Exchange boards not yet available...', { id: 'exchange-boards' });\n }, [notifications]);\n\n const onKeyDown = (e: KeyboardEvent) => {\n // if drawer open while pressing ESC, close drawer\n if (isOpen && e.keyCode === 27) {\n e.preventDefault();\n e.stopPropagation();\n if (showAddBoard) {\n setShowAddBoard(false);\n } else {\n toggleIsOpen();\n }\n }\n };\n\n useEffect(() => {\n document.addEventListener('keydown', onKeyDown);\n return () => {\n document.removeEventListener('keydown', onKeyDown);\n };\n });\n\n return (\n
\n
\n
\n Welcome to the new{' '}\n \n \n {' '}\n – designed to let you configure it just how you like.{' '}\n \n TAKE A VIDEO TOUR\n \n
\n
\n\n

\n My custom boards   \n \n

\n
\n setShowAddBoard(false)}\n validateOnMount={false}\n header=\"Add board\" />\n \n {_.map(userDashboards, (d, i) => (\n onSelectDashboard(d)}\n onSaveBoard={board => onUpdateBoard({ ...d, ...board })}\n onDeleteBoard={canDeleteUserDashboard ? () => onDeleteBoard(d) : undefined} />\n ))}\n \n
\n\n \n\n {exchangeBoards.length > 0 && (\n <>\n

\n The Exchange\n

\n
\n \n {exchangeBoards.map((b, i) => (\n onSelectExchangeDashboard()}\n isLocked={true} />\n ))}\n \n
\n \n )}\n
\n );\n};\n","import { createSelector } from 'reselect';\nimport { DataState } from '../state';\n\nexport const IsVirtualEnvironment = createSelector(\n (s: DataState) => s.environment.isVirtual,\n isVirtual => {\n return isVirtual;\n }\n);\n","import { useMemo } from 'react';\nimport { useStateSelector } from '../data/global/dataSelectors';\nimport { IsVirtualEnvironment } from '../data/global/selectors/environmentSelector';\n\nexport const useVirtualTrading = () => {\n const isVirtualEnv = useStateSelector(IsVirtualEnvironment);\n\n return useMemo(() => ({ isVirtualEnv }), [isVirtualEnv]);\n};\n","import { DataState } from './state';\nimport { DefaultGridLayout } from '@tradingblock/types';\nimport { DefaultOrderBlockSettings } from '../../blocks/Order/state/OrderSettings';\nimport Config from '../../config';\nimport { Session } from '../../constants';\nimport { DefaultAccountUpdateDetails, DefaultUserUpdateAccountDetails } from '@tradingblock/types';\nimport { DefaultOptionChainBlockSettings } from '../../blocks/OptionChain/state/OptionChainSettings';\nimport { DefaultInfoBlockSettings } from '../../blocks/Info/state/InfoSettings';\nimport { DefaultPositionsBlockSettings } from '../../blocks/Positions/usePositionSettings';\nimport { DefaultFavoriteBlockSettings } from '../../blocks/Favorites/useFavoriteSettings';\n\nexport const InitialState: DataState = {\n auth: {\n isAuthenticated: false,\n isExpired: false,\n origin: '',\n },\n account: {\n dataEntitled: undefined,\n nickname: '',\n isIRA: false,\n isUGMA: false,\n isPartnership: false,\n accountId: -1,\n accountNumber: '',\n isFetching: false,\n account: undefined,\n subaccounts: { isFetching: false },\n history: [],\n pnl: [],\n profile: {\n isFetching: false,\n },\n isFetchingHistory: false,\n isFetchingOrders: false,\n shouldLoadMoreOrders: false,\n orders: undefined,\n orderErrorEvents: [],\n ordersUIState: {},\n showAccountSwitcher: false,\n hasMultipleAccounts: false,\n isSelectedLinkedAccountLoaded: true,\n accountDetails: undefined,\n },\n history: {\n balanceHistory: [],\n },\n accountData: {\n balances: { isFetching: false },\n accountsBalances: {},\n subAccountsBalances: {},\n },\n accounts: { isFetching: false },\n linkedAccounts: {\n accounts: [],\n page: 0,\n pageSize: 0,\n total: 0,\n isFetching: false,\n },\n accountManagement: {\n accountDetails: {\n isLoaded: false,\n data: {\n email: '',\n homePhone: '',\n mobilePhone: '',\n workPhone: '',\n mailingAddress: {\n address1: '',\n address2: '',\n city: '',\n state: '',\n postalCode: '',\n country: '',\n },\n physicalAddress: {\n address1: '',\n address2: '',\n city: '',\n state: '',\n postalCode: '',\n country: '',\n },\n },\n },\n update: {\n isLoading: false,\n isLoaded: false,\n data: undefined,\n },\n accountManagementDetails: {\n details: DefaultUserUpdateAccountDetails,\n isFetching: false,\n error: null,\n },\n pendingAccountManagementUpdates: {\n isFetching: false,\n data: null,\n error: null,\n },\n isPollingForPending: false,\n security: {\n isFetching: false,\n devices: [],\n error: null,\n },\n authHistory: {\n data: [],\n isFetching: false,\n error: null,\n },\n },\n environment: { isVirtual: Config.isVirtual },\n errors: {},\n favorites: {\n isFetching: false,\n symbols: [],\n },\n feedProvider: {},\n //info: {},\n layout: {},\n orders: {\n isFetching: false,\n },\n settings: {\n authenticationTimeout: Session.inactivityTimeout,\n ui: {\n ...DefaultGridLayout,\n muteAllSounds: false,\n showBannerSymbols: true,\n isFetching: false,\n bannerSymbols: [],\n afterHoursTrading: false,\n balancePollingThrottleMs: 1000 * 5,\n feedSyncIntervalMs: 500,\n cashieringPollingInterval: 120,\n cashieringPendingReminderInterval: 15 * 60,\n cashieringPendingReminderMaxAttempts: 16,\n hotkeys: true,\n },\n defaultDashboards: {\n isFetching: false,\n },\n },\n positions: { isFetching: false, positions: [], isDirty: false, info: {}, loaded: false },\n blocks: {\n isFetching: false,\n blocks: [],\n locked: true,\n linking: false,\n isFetchingInitial: false,\n groups: [],\n blockTypeSettings: {\n Order: DefaultOrderBlockSettings,\n OptionChain: DefaultOptionChainBlockSettings,\n Info: DefaultInfoBlockSettings,\n Positions: DefaultPositionsBlockSettings,\n Favorites: DefaultFavoriteBlockSettings,\n },\n },\n dashboards: { isFetching: false },\n quotes: {\n quoteMetadata: {\n isFetching: false,\n data: {},\n extended: {},\n },\n quoteExtended: {\n isFetching: false,\n data: {},\n },\n dividends: {},\n earnings: {},\n },\n notifications: [],\n optionchain: {\n bySymbol: {},\n },\n expirations: {},\n strikes: {},\n cashiering: {\n forms: {\n account: { isFetching: false, isSaving: false },\n transfer: { isFetching: false, isSaving: false },\n },\n securityQuestion: { isFetching: false, isSaving: false },\n balances: {},\n transfers: { isFetching: false, isSaving: false },\n achRelationships: { isFetching: false, isSaving: false },\n transferInstructions: { isFetching: false, isSaving: false },\n entities: {},\n isFetchingBalances: false,\n isFetchingEntities: false,\n isPollingForPending: false,\n },\n private: {\n account: {\n accounts: {},\n balances: {},\n accountDetails: {},\n balancesForWithdrawal: {},\n },\n accountManagement: {\n isFetching: false,\n updates: {},\n error: null,\n byQuery: {},\n ui: {\n page: 0,\n pageSize: 10,\n sortBy: 'Date',\n sortByOrder: 'desc',\n },\n currentItem: {\n request: {},\n details: DefaultAccountUpdateDetails,\n isFetching: false,\n isAccountFetching: false,\n error: null,\n accountInfo: DefaultUserUpdateAccountDetails,\n isUpdated: false,\n documentUpdate: false,\n },\n },\n alerts: {\n isFetching: false,\n ui: {\n page: 0,\n pageSize: 10,\n },\n alerts: [],\n error: undefined,\n byQuery: {},\n },\n applications: {\n isFetching: false,\n applications: {},\n ui: {\n page: 0,\n pageSize: 10,\n sortBy: 'createdOnValue',\n sortByOrder: 'desc',\n },\n currentItem: {\n application: {},\n investigation: {\n isFetching: false,\n response: {},\n },\n },\n error: undefined,\n byQuery: {},\n },\n cashiering: {\n relationships: {},\n relationshipDetails: {},\n transfers: {},\n transferDetails: {},\n beneficiaries: {},\n recipientBanks: {},\n wireInstructions: {},\n wireInstructionsDetails: {},\n entities: {},\n entityUpdatesExist: false,\n byQuery: {},\n ui: {\n pageSize: 25,\n page: 0,\n sortBy: 'Date',\n sortByOrder: 'desc',\n },\n },\n clients: {\n byQuery: {},\n clients: {},\n ui: {\n pageSize: 25,\n page: 0,\n sortBy: 'AccountName',\n sortByOrder: 'asc',\n },\n },\n entitlements: {\n entitlementItems: {},\n isFetching: false,\n error: null,\n byQuery: {},\n ui: {\n pageSize: 10,\n page: 0,\n },\n currentItem: {\n request: {\n UserId: 0,\n AccountNumber: '',\n },\n isFetching: false,\n isAccountFetching: false,\n error: null,\n details: {},\n accountInfo: DefaultUserUpdateAccountDetails,\n isUpdated: false,\n },\n },\n },\n symbols: {\n isFetching: false,\n warningSymbols: [],\n },\n ui: {\n dashboard: {\n drawerIsOpen: false,\n isLocked: false,\n subAccountFilterId: undefined,\n },\n },\n performance: {\n bySymbol: {},\n positions: {},\n totals: {\n positionValue: 0,\n accountValue: 0,\n tradedToday: { trading: 0, position: 0, total: 0, pnls: [] },\n all: { trading: 0, position: 0, total: 0, pnls: [] },\n },\n },\n information: {\n alerts: {\n isFetching: false,\n activeAlerts: [],\n },\n releaseNotes: {},\n ui: {\n page: 0,\n pageSize: 5,\n },\n releaseNoteUpdate: false,\n marketNews: {},\n isPollingForMarketNews: false,\n },\n accountStatements: {\n dailyStatements: {\n dataStartDate: new Date(),\n dataEndDate: new Date(),\n data: [],\n },\n monthlyStatements: {\n dataStartDate: new Date(),\n dataEndDate: new Date(),\n data: [],\n },\n taxStatements: {\n dataStartDate: new Date(),\n dataEndDate: new Date(),\n data: [],\n },\n },\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useCallback, useEffect, useState } from 'react';\nimport _ from 'lodash';\nimport { Formik } from 'formik';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport * as Yup from 'yup';\nimport { FormGroup, Modal, Tooltip, } from '@tradingblock/components';\nimport { DefaultGridLayout, UiSettings } from '@tradingblock/types';\nimport { useDispatcher } from './../../data/global/hooks';\nimport { useStateSelector, account, dashboardsSelectors } from '../../data/global/dataSelectors';\nimport { useStore } from './../../context/Storage';\nimport { useDashboardSettings, useDashboardSettingsUpdater } from './../../hooks/useDashboardSettings';\nimport { GenericField } from '../form/GenericField';\nimport { Config } from '../../config';\nimport { useVirtualTrading } from '../../hooks/useVirtualTrading';\nimport { useSelector } from 'react-redux';\nimport { InitialState } from '../../data/global/initialState';\n\nexport const DashboardSettings: React.FC<{ show?: boolean; toggleModal: () => void }> = ({ show, toggleModal }) => {\n const { columns, ...initialSettings } = useDashboardSettings();\n const { updateSettings } = useDashboardSettingsUpdater();\n const { isVirtualEnv } = useVirtualTrading();\n const { dispatcher } = useDispatcher();\n const [shouldResetSettings, setShouldResetSettings] = useState(false);\n const [shouldDisableSubmit, setShouldDisableSubmit] = useState(false);\n const dashboardId = useSelector(dashboardsSelectors.dashboardId);\n const accountId = useStateSelector(account.accountId);\n const store = useStore();\n const [submitBtnDisabled, setSubmitBtnDisabled] = useState(false);\n const [submitBtnRef, setSubmitBtnRef] = useState(null);\n\n const initialUiState = InitialState.settings.ui;\n const defaultDashboardSettings = {\n ...DefaultGridLayout,\n muteAllSounds: initialUiState.muteAllSounds,\n showBannerSymbols: initialUiState.showBannerSymbols,\n bannerSymbols: initialUiState.bannerSymbols,\n afterHoursTrading: initialUiState.afterHoursTrading,\n balancePollingThrottleMs: initialUiState.balancePollingThrottleMs,\n feedSyncIntervalMs: initialUiState.feedSyncIntervalMs,\n cashieringPollingInterval: initialUiState.cashieringPollingInterval,\n cashieringPendingReminderInterval: initialUiState.cashieringPendingReminderInterval,\n cashieringPendingReminderMaxAttempts: initialUiState.cashieringPendingReminderMaxAttempts,\n hotkeys: initialUiState.hotkeys,\n };\n\n useEffect(() => {\n const tryReset = async () => {\n const approvedSettingsReset = shouldResetSettings && window.confirm(\n 'Are you sure you want to reset dashboard settings?\\nAll settings will be return to default values.\\nContinue?'\n );\n if (dashboardId && approvedSettingsReset) {\n if (accountId) {\n dispatcher.settings.setSettings(accountId, defaultDashboardSettings);\n }\n }\n if (approvedSettingsReset) toggleModal();\n };\n if (store && (shouldResetSettings)) tryReset();\n return () => {\n setShouldDisableSubmit(false);\n setShouldResetSettings(false);\n }\n }, [dashboardId, shouldResetSettings, shouldDisableSubmit, store, toggleModal]);\n\n const onSubmit = useCallback(\n (values: UiSettings, { setSubmitting }) => {\n const settings = {\n ...values,\n gridColumnsLarge: _.toNumber(values.gridColumnsLarge),\n gridColumnsMedium: _.toNumber(values.gridColumnsMedium),\n gridColumnsSmall: _.toNumber(values.gridColumnsSmall),\n width: _.toNumber(values.width),\n feedSyncIntervalMs: _.toNumber(values.feedSyncIntervalMs),\n cashieringPollingInterval: _.toNumber(values.cashieringPollingInterval),\n cashieringPendingReminderInterval: _.toNumber(values.cashieringPendingReminderInterval),\n cashieringPendingReminderMaxAttempts: _.toNumber(values.cashieringPendingReminderMaxAttempts),\n };\n !shouldDisableSubmit && updateSettings(settings);\n !shouldDisableSubmit && toggleModal();\n },\n [updateSettings, toggleModal]\n );\n const onCancel = useCallback(() => {\n toggleModal();\n }, [toggleModal]);\n const canViewCashieringAdmin = useStateSelector(account.hasCashieringAdminPermission);\n\n // Validation\n const genericNumberInputErrorMsg = 'Please enter a positive integer greater than zero.'\n const genericNumberInputValidationSchema = Yup\n .number()\n .transform((value) => isNaN(value) ? null : value)\n .nullable()\n .required(genericNumberInputErrorMsg)\n .positive(genericNumberInputErrorMsg)\n .integer(genericNumberInputErrorMsg);\n \n const feedSyncIntervalMsInputMinValue = 500;\n const feedSyncIntervalMsInputMaxValue = 1000000000;\n const feedSyncIntervalMsInputErrorMsg = `Please enter an integer between ${feedSyncIntervalMsInputMinValue} and ${feedSyncIntervalMsInputMaxValue}.`\n const feedSyncIntervalMsInputValidationSchema = Yup\n .number()\n .transform((value) => isNaN(value) ? null : value)\n .nullable()\n .required(feedSyncIntervalMsInputErrorMsg)\n .positive(feedSyncIntervalMsInputErrorMsg)\n .integer(feedSyncIntervalMsInputErrorMsg)\n .min(feedSyncIntervalMsInputMinValue, feedSyncIntervalMsInputErrorMsg)\n .max(feedSyncIntervalMsInputMaxValue, feedSyncIntervalMsInputErrorMsg);\n\n const gridColumnsLargeName = 'gridColumnsLarge';\n const gridColumnsMediumName = 'gridColumnsMedium';\n const gridColumnsSmallName = 'gridColumnsSmall';\n const widthName = 'width';\n const feedSyncIntervalMsName = 'feedSyncIntervalMs';\n const cashieringPollingIntervalName = 'cashieringPollingInterval';\n const cashieringPendingReminderIntervalName = 'cashieringPendingReminderInterval';\n const cashieringPendingReminderMaxAttemptsName = 'cashieringPendingReminderMaxAttempts';\n\n return (\n \n {({ values, errors, handleSubmit }) => (\n toggleModal()} show={show}>\n \n Dashboard settings\n \n \n
{\n e.preventDefault()\n handleSubmit()\n }}>\n
Grid
\n \n \n \n \n \n \n
Trading
\n \n {!Config.isProduction && (\n \n )}\n \n
Data
\n \n \n \n \n {canViewCashieringAdmin && (\n <>\n \n \n \n \n )}\n \n
Search Banner Symbols
\n \n \n \n
Miscellaneous
\n \n \n \n
  • ALT+E - Toggle Dashboard lock
  • \n
  • ALT+S - Toggle Dashboard settings
  • \n
  • ALT+O - Create Order block
  • \n \n }\n type=\"light\"\n >\n \n \n
    \n \n
    \n \n
    \n
    \n {/* TODO: In order to keep the buttons in the footer in order to have the placement of the buttons fixed so they do not scroll */}\n {/* in the body of the modal and since we need the Formik context the invisible button below was added which hooks into */}\n {/* the Formik context. The ref from the button is then used to pass the click handler and the disabled state to the button in the footer. */}\n {/* The ref prop is using a function instead of useRef in order to get the latest ref state (node) to set the applicable items in the */}\n {/* component state in order to get the component to rerender so that it has the latest versions of the attributes of the node. */}\n {/* We should look into refactoring how we setup the forms using Formik in order to avoid this hack. */}\n {\n setSubmitBtnDisabled(!!(node && node.disabled));\n setSubmitBtnRef(node)\n }}\n disabled={Object.keys(errors).length > 0}\n />\n \n \n {!Config.isProduction && !isVirtualEnv && (\n \n )}\n \n
    \n \n \n submitBtnRef && submitBtnRef.click()}\n disabled={submitBtnDisabled}\n className=\"settings-submit-btn\"\n >\n Save\n \n \n
    \n )}\n \n );\n};\n","import { useEffect, useState, useCallback } from 'react';\nimport { LocalStorageProvider } from '@tradingblock/storage';\nimport { LocalStorageKey } from '../constants';\nimport { Config } from '../config';\n\nconst localStorageProvider = LocalStorageProvider({});\n\nexport const useReduxConfiguration = () => {\n const [loaded, setLoaded] = useState(false);\n const [enableRedux, setEnableRedux] = useState(Config.isProduction ? false : true);\n useEffect(() => {\n localStorageProvider.get(LocalStorageKey.enableRedux).then(res => {\n if (res !== undefined) {\n setEnableRedux(res);\n }\n setLoaded(true);\n });\n }, []);\n const set = useCallback((val: boolean) => {\n localStorageProvider.save(LocalStorageKey.enableRedux, val).then(() => {\n setEnableRedux(val);\n });\n }, []);\n return {\n enableRedux,\n loaded,\n set,\n };\n};\n","import React, { useState, useCallback, useMemo } from 'react';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { useDispatch } from 'react-redux';\nimport { Formik, Field } from 'formik';\nimport _ from 'lodash';\nimport { Modal, FormGroup, TextboxField, Hotkey, setLogLevel, CheckboxInput } from '@tradingblock/components';\nimport { useDashboardSettings } from '../hooks/useDashboardSettings';\nimport { useReduxConfiguration } from '../hooks/useReduxConfiguration';\nimport { useStateSelector, uiApiTokenAndVersion } from '../data/global/dataSelectors';\nimport { Actions } from '../data/global/actions';\nimport { useDebugLevel } from './useDebugSettings';\n\nexport const DebugSettings: React.FC<{}> = () => {\n const [debugLevel, setDebugLevel] = useDebugLevel();\n const [show, setShow] = useState(false);\n const { hotkeys } = useDashboardSettings();\n const dispatch = useDispatch();\n const clientVersion = useStateSelector(s => uiApiTokenAndVersion(s).version);\n const initialvalues = useMemo(() => ({ debuglevel: debugLevel, version: clientVersion || '' }), [\n debugLevel,\n clientVersion,\n ]);\n const { enableRedux, set } = useReduxConfiguration();\n\n const onDevToolsChange = useCallback(\n (e: React.ChangeEvent | undefined, value?: any) => {\n set(value && value === true ? true : false);\n },\n [set]\n );\n\n const onSubmit = useCallback(\n ({ debuglevel, version }: { debuglevel: string; version: string }) => {\n // setLogLevel(debuglevel);\n setDebugLevel(debuglevel);\n setShow(false);\n if (clientVersion !== version && clientVersion) {\n dispatch(Actions.clientVersionMismatch({ previous: clientVersion, current: version }));\n }\n },\n [clientVersion]\n );\n\n return (\n <>\n {hotkeys && (\n <>\n setShow(true)} />\n dispatch(Actions.refreshToken())} />\n \n )}\n\n setShow(isOpen)} show={show}>\n \n {({ handleSubmit }) => (\n <>\n \n Dashboard settings\n \n \n
    \n
    Debug
    \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","import { useStore } from '../context/Storage';\nimport { useEffect, useState, useCallback } from 'react';\nimport { objects, DebugSettings } from '@tradingblock/types';\nimport { setLogLevel } from '@tradingblock/components';\n\nexport const useDebugLevel = (): [string, (val: string) => void] => {\n const apiStore = useStore();\n const [debugLevel, setDebugLevel] = useState('');\n useEffect(() => {\n apiStore.get(objects.debugSettings).then(res => {\n if (res) {\n setDebugLevel(res.level || '');\n }\n });\n }, []);\n const setLevel = useCallback(\n (level?: string) => {\n const debugLvl = level || '';\n setLogLevel(debugLvl);\n setDebugLevel(debugLvl);\n apiStore.save(objects.debugSettings, { level: debugLvl });\n },\n [setDebugLevel]\n );\n return [debugLevel, setLevel];\n};\n","import _ from 'lodash';\r\nimport { AdminLink, UserRole, UserProfileLevel } from '@tradingblock/types';\r\nimport { canAccessAdminLink } from '../../utilities/admin';\r\n\r\nconst AdminLinks: AdminLink[] = [\r\n {\r\n text: 'Forms',\r\n url: 'https://tradingblock.com/admin-forms',\r\n secondaryUrl: 'https://moneyblock.com/admin-forms',\r\n icon: 'fal fa-file-contract',\r\n roles: undefined, // not specific to a user role, any admin/rep can access\r\n },\r\n {\r\n text: 'Cashiering review',\r\n url: '/admin/cashiering',\r\n icon: 'fal fa-cogs',\r\n roles: [UserRole.CashieringApproval],\r\n },\r\n];\r\n\r\nexport const getAdminLinks = (\r\n userLevel: UserProfileLevel | undefined,\r\n userRoles: UserRole[] | undefined\r\n): AdminLink[] => {\r\n return _.filter(AdminLinks, al => !al.hidden && canAccessAdminLink(al, userLevel, userRoles));\r\n};\r\n","import React from 'react';\nimport Config from '../../../config';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\n\nconst getEnvironmentName = () => {\n switch (Config.TradingEnvironment) {\n case 'dev':\n return 'development';\n case 'beta':\n return 'beta';\n default:\n return 'production';\n }\n};\n\nexport const UsernameAndEnvironment = () => {\n const userName = useStateSelector(s => s.auth.userName);\n return (\n \n {userName} ({getEnvironmentName()})\n \n );\n};\n","import React from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { GetLogoutUrl } from '@tradingblock/components';\nimport { account } from '../../data/global/selectors/accountSelectors';\nimport { SessionActions } from '../../data/global/actions';\nimport { ExpiredTokenCode } from '@tradingblock/types';\n\nexport const LogoutLink: React.FC,\n HTMLAnchorElement\n>> = ({ children }) => {\n const accountNumber = useSelector(account.accountNumber);\n const dispatch = useDispatch();\n let timeout: NodeJS.Timeout | undefined;\n const expireToken = () => {\n dispatch(\n SessionActions.expired({\n code: ExpiredTokenCode.Logout,\n reason: 'You have successfully logged out. Now redirecting to login page',\n })\n );\n\n if (timeout) {\n clearTimeout(timeout);\n }\n\n timeout = setTimeout(() => {\n window.location.href = GetLogoutUrl(accountNumber);\n }, 3500);\n };\n return (\n \n );\n};\n","import React, { useCallback, useMemo } from 'react';\nimport _ from 'lodash';\nimport { ExternalLink, ExternalLinkProps } from '@tradingblock/components';\nimport { useVirtualTrading } from '../../../hooks/useVirtualTrading';\nimport { isLocalhost } from '../../../utilities/url';\nimport { useDispatcher } from '../../../data/global/hooks';\nimport Config from '../../../config';\n\nexport const ToggleVirtualTradingButton: React.FC> = ({ className, onClick, children }) => {\n const { isVirtualEnv } = useVirtualTrading();\n\n const href = useMemo(() => (isVirtualEnv ? Config.liveTradingUrl : Config.virtualTradingUrl), [isVirtualEnv]);\n\n const { dispatcher } = useDispatcher();\n\n const onToggleClick = useCallback(\n (e: React.MouseEvent) => {\n if (isLocalhost() && href.includes(window.location.host)) {\n e.preventDefault();\n dispatcher.environment.toggleIsVirtual();\n }\n if (onClick) {\n onClick(e);\n }\n },\n [href, dispatcher, onClick]\n );\n\n return (\n \n {children}\n \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useEffect, useState, useCallback, useMemo } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { Link } from 'react-router-dom';\nimport _ from 'lodash';\nimport { StorageGridPath, StorageBlocksPath, allTranslations } from '@tradingblock/types';\nimport { CountdownTimer, ExternalLink, Svg, ToggleButton } from '@tradingblock/components';\nimport { useStore } from '../../context/Storage';\nimport { useDispatcher } from '../../data/global/hooks';\nimport {\n useStateSelector,\n dashboardsSelectors,\n useShowSettings,\n useShowAccountSwitcher,\n} from '../../data/global/dataSelectors';\nimport { account } from '../../data/global/selectors/accountSelectors';\nimport { DashboardSettings } from './DashboardSettings';\nimport { Config } from '../../config';\nimport { DebugSettings } from '../DebugSettings';\nimport { getAdminLinks } from '../admin/Links';\nimport { TradingBlockLink } from '../basic/TradingBlockLink';\nimport { UsernameAndEnvironment } from './menu/UserNameAndEnvironment';\nimport { SiteName } from '../basic/SiteName';\nimport { LogoutLink } from '../basic/LogoutLink';\nimport { useVirtualTrading } from '../../hooks/useVirtualTrading';\nimport { ToggleVirtualTradingButton } from './navigation/ToggleVirtualTradingButton';\nimport { LinkedAccountsActions } from '../../data/global/actions/LinkedAccountsActions';\nimport { IsVirtualEnvironment } from '../../data/global/selectors/environmentSelector';\n\ninterface DashboardMenuProps {\n toggleMenu: (open?: boolean) => void;\n}\n\nconst MenuHeader: React.FC<{}> = ({ children, ...rest }) => (\n

    \n {children}\n

    \n);\n\nexport const DashboardMenu: React.FC = ({ toggleMenu }) => {\n const { dispatcher } = useDispatcher();\n\n const uiApiTokenExpiresAt = useStateSelector(s => s.auth.uiApiTokenExpiresAt);\n const untilTime = useMemo(() => uiApiTokenExpiresAt && new Date((uiApiTokenExpiresAt - 120) * 1000), [\n uiApiTokenExpiresAt,\n ]);\n\n const { isVirtualEnv } = useVirtualTrading();\n\n const userLevel = useSelector(account.userLevel);\n const userRoles = useSelector(account.userRoles);\n const firstAndLastName = useSelector(account.firstAndLastName);\n const accountNickname = useSelector(account.accountNickname);\n const origin = useStateSelector(s => s.auth.origin);\n const hasMultipleAccounts = useSelector(account.hasMultipleAccounts);\n const siteGroup = origin === 'tb' ? 'tradingblock' : 'moneyblock';\n\n const adminLinks = useMemo(() => getAdminLinks(userLevel, userRoles), [userLevel, userRoles]);\n\n const showSettings = useShowSettings();\n const toggleSettings = useCallback(() => dispatcher.settings.toggleSettings(), [dispatcher.settings]);\n\n const showAccountSwitcher = useShowAccountSwitcher();\n const toggleAccountSwitcher = useCallback(() => dispatcher.account.toggleAccountSwitcher(), [dispatcher.account]);\n\n useEffect(() => {\n if (!showAccountSwitcher) {\n toggleMenu(false);\n }\n }, [showAccountSwitcher]);\n\n return (\n <>\n \n {showSettings && }\n\n
    \n
    \n
    \n \n
    \n
    \n Log out\n
    \n
    \n
    \n\n
    \n
    \n
    \n
    Account
    \n {hasMultipleAccounts && (\n
    \n \n
    \n )}\n
    \n
    {firstAndLastName}
    \n
    \n {hasMultipleAccounts ? (\n \n ) : (\n {accountNickname}\n )}\n
    \n
    \n\n
    \n
    \n
      \n
    • \n \n
    • \n
    \n
    \n
    \n\n
    \n {isVirtualEnv ? (\n
    \n

    \n \n You are in virtual trading\n \n

    \n toggleMenu()}>\n \n Log in to Live Trading Account \n \n \n
    \n ) : (\n
    \n

    Want to test new ideas with paper money?

    \n toggleMenu()}>\n \n Log in to Virtual Trading \n \n \n
    \n )}\n
    \n\n
    \n\n
    Training & Education
    \n
      \n
    • \n \n Take a Dashboard Video Tour\n \n
    • \n {siteGroup === 'tradingblock' && (\n
    • \n \n Trading Education Videos\n \n
    • \n )}\n
    \n\n
    \n
    Client Tools
    \n
      \n
    • \n \n Account History\n \n
    • \n
    • \n \n Risks & Disclosures\n \n
    • \n
    \n {!_.isEmpty(adminLinks) && (\n <>\n
    \n
    Admin Tools
    \n
      \n {adminLinks.map((al, key) => {\n if (al.text === 'Forms') {\n return (\n
      \n
    • \n \n {al.text}\n \n
    • \n
      \n );\n } else {\n return (\n
      \n
    • \n \n {al.text}\n \n
    • \n
    • \n \n Admin Video Guides\n \n
    • \n
      \n );\n }\n })}\n
    \n \n )}\n
    \n
      \n
    • \n \n Give us feedback\n \n
    • \n
    • \n \n Contact us\n \n
    • \n {/*TODO: Determine with Tom if this link will be coming back at any point */}\n {/*
    • \n \n About us\n \n
    • */}\n
    \n\n {!Config.isProduction && untilTime && (\n
    \n

    UI token will be refreshed in

    \n {\n const hours = _.max([parsed.hours, 0]) || 0;\n const minutes = _.max([parsed.minutes, 0]) || 0;\n const seconds = _.max([parsed.seconds, 0]) || 0;\n const formatted =\n hours > 0\n ? `${hours}:${minutes < 10 ? '0' : ''}${minutes}:${seconds < 10 ? '0' : ''}${seconds} HRS`\n : minutes <= 0\n ? `00:00:${seconds < 10 ? '0' : ''}${seconds} HRS`\n : `00:${minutes < 10 ? '0' : ''}${minutes}:${seconds < 10 ? '0' : ''}${seconds} HRS`;\n return ` ${formatted}`;\n }}\n until={untilTime}\n intervalTime={1000}\n className={'mute txt-sm'}\n >\n \n \n \n \n
    \n )}\n\n {Config.schemaVersion && (\n \n Version {Config.schemaVersion}\n \n )}\n \n );\n};\n","import React, { useRef } from 'react';\nimport useClickAway from 'react-use/lib/useClickAway';\n\nexport const NotificationWrapper: React.FunctionComponent<{ onClickAway: () => void }> = ({ children, onClickAway }) => {\n const popoverRef = useRef(null);\n useClickAway(popoverRef, onClickAway);\n return (\n
    \n {children}\n
    \n );\n};\n","import React, { useState, useCallback, useRef } from 'react';\nimport { Popover, Overlay } from 'react-bootstrap';\nimport _ from 'lodash';\nimport dayjs from 'dayjs';\n// import useClickAway from 'react-use/lib/useClickAway';\nimport { Notification } from '@tradingblock/types';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { NotificationWrapper } from './NotificationWrapper';\n\ninterface DashboardNotificationProps {\n title: string;\n notificationClass: string;\n notifications: Notification[];\n disabled?: boolean;\n onClick?: () => void;\n}\n\nexport const DashboardNotification: React.FunctionComponent = ({ children, title, notificationClass, notifications, disabled, onClick }) => {\n const { dispatcher } = useDispatcher();\n const [, setClickedTarget] = useState();\n const [show, setShow] = useState(false);\n const handleClickAway = useCallback(() => {\n setShow(false);\n setClickedTarget(undefined);\n }, []);\n\n const handleClick = useCallback(\n (event: React.MouseEvent) => {\n setShow(!show);\n dispatcher.notifications.read(notifications);\n setClickedTarget(event.target);\n if (onClick) {\n onClick();\n }\n },\n [dispatcher.notifications, notifications, onClick, show]\n );\n // const handleClick = useCallback(\n // ({ target }) => {\n // setState({ show: !show, clickedTarget: target });\n\n // _.map(notifications, n => {\n // dispatcher.notifications.read(n);\n // });\n\n // if (onClick) {\n // onClick();\n // }\n // },\n // [show, dispatcher, notifications, onClick]\n // );\n\n const filterReadNotifications = notifications.filter(n => n.read === false);\n const filterHiddenNotifications = notifications.filter(n => n.hide === false).length !== 0;\n const sortedNotifications = _.chain(notifications)\n .filter(n => n.hide === false)\n .sortBy(n => n.time)\n .reverse()\n .value();\n const containerRef = useRef(null);\n const targetRef = useRef(null);\n return (\n
    \n \n
    \n {targetRef.current && containerRef.current && (\n \n \n \n {sortedNotifications.map(n => {\n return ;\n })}\n \n \n \n )}\n
    \n
    \n );\n};\n\nconst TradeOrderPopover: React.FunctionComponent<{ notification: Notification }> = ({ notification }) => {\n const { dispatcher } = useDispatcher();\n const hideNotification = useCallback(() => {\n dispatcher.notifications.read(notification);\n dispatcher.notifications.hide(notification);\n }, [dispatcher, notification]);\n\n return (\n \n );\n};\n","import React, { useMemo } from 'react';\nimport _ from 'lodash';\nimport { Svg } from '@tradingblock/components';\nimport { useStateSelector, getNotifications } from '../../data/global/dataSelectors';\nimport { DashboardNotification } from './DashboardNotification';\n\nexport const ClientNotifications: React.FunctionComponent = () => {\n const notifications = useStateSelector(getNotifications);\n\n // disable when no notifications to show\n const isDisabled = useMemo(() => _.isEmpty(notifications), [notifications]);\n\n return (\n \n \n \n );\n};\n","import dayjs from 'dayjs';\nimport _ from 'lodash';\nimport { AssetType, OrderLeg, Order, OptionExpirationType, OptionType } from '@tradingblock/types';\nimport { OCCSymbolToOptionData, deriveOptionExpirationType } from '@tradingblock/api';\n\n/**\n * This type contains the majority of the data needed\n * to fill out the \"details\" section of the table in the\n * ActivityOrders and ActivityTrades tab of the activity block\n */\nexport interface OrderLegDetails {\n day?: string;\n month?: string;\n year?: string;\n strikePrice?: string;\n orderType?: string;\n symbol?: string;\n quantity?: string;\n}\n\nexport function optionToDetailString(leg: O, order: Pick) {\n const { Quantity, UnderlyingSymbol } = order;\n const { LegFillQuantity } = leg;\n const { month, day, strikePrice, orderType } = orderLegToDetails(leg, UnderlyingSymbol || '');\n const q = LegFillQuantity ? LegFillQuantity : Quantity;\n if (leg.AssetType === AssetType.Equity) {\n return `${q > 1 ? 'SHRS' : 'SHR'}`;\n }\n return `${month} ${day} $${strikePrice} ${orderType}`;\n}\n\n/** This function accepts a string in the\n * format \"Symbol DDMMMYY StrikePrice OrderType [quantity]\" and converts it to the format shown in the ActivityBlock documentation\n *\n * @param detail a string in the form \"Symbol DDMMMYY StrikePrice CALLorPUT [quantity]\"\n */\nexport function orderLegToDetails(leg: O, underlyingSymbol: string): OrderLegDetails {\n const occSymbol = leg.OccSymbol ? leg.OccSymbol : leg.Symbol;\n const { symbol, expiration, assetType, strike, option } = OCCSymbolToOptionData(occSymbol);\n if (assetType === AssetType.Equity) {\n return {\n symbol: symbol,\n };\n }\n\n const d = dayjs(expiration);\n const optionExpirationType = deriveOptionExpirationType(leg.Symbol, underlyingSymbol);\n const day = d.format('DD');\n const dayAndTimeInfo =\n optionExpirationType === OptionExpirationType.AM ? `${day} ${OptionExpirationType[optionExpirationType]}` : day;\n\n return {\n day: dayAndTimeInfo,\n month: d.format('MMM'),\n year: d.format('YY'),\n strikePrice: _.toString(strike),\n orderType: option ? OptionType[option] : undefined,\n quantity: _.toString(leg.LegFillQuantity),\n symbol: symbol,\n };\n}\n","import { OrderErrorActivity, OrderActivity, Order } from '@tradingblock/types';\r\nimport _ from 'lodash';\r\n\r\nexport function isErrorActivity(act: OrderActivity | OrderErrorActivity | Order): act is OrderErrorActivity {\r\n const orderApiStatus = _.get(act, 'orderApiStatus', undefined);\r\n return orderApiStatus === 'error';\r\n}\r\n","import dayjs from 'dayjs';\r\nimport _ from 'lodash';\r\nimport {\r\n OrderLeg,\r\n OrderAction,\r\n PositionEffect,\r\n AssetType,\r\n OrderType,\r\n Order,\r\n PnLItem,\r\n OrderStatuses,\r\n OptionType,\r\n Durations,\r\n DebitOrCredit,\r\n OptionExpirationType,\r\n OrderActivity,\r\n} from '@tradingblock/types';\r\nimport {\r\n TradingBlockAccountApi,\r\n PnLItemGetPnLItemRequest,\r\n OCCSymbolToOptionData,\r\n deriveOptionExpirationType,\r\n OrderStatusCategories,\r\n} from '@tradingblock/api';\r\nimport { formatNumber } from '@tradingblock/components';\r\nimport { TradingBlockDispatcher } from '../dispatcher';\r\nimport { optionToDetailString, orderLegToDetails } from './options';\r\nimport { isErrorActivity } from '../../../utilities/activity';\r\n\r\n/**\r\n * This type contains the majority of the data needed\r\n * to fill out the \"details\" section of the table in the\r\n * ActivityOrders and ActivityTrades tab of the activity block\r\n */\r\ninterface ActivityOrderDetailProps {\r\n day?: string;\r\n month?: string;\r\n year?: string;\r\n strikePrice?: string;\r\n orderType?: string;\r\n symbol?: string;\r\n quantity?: string;\r\n}\r\n\r\n/**\r\n * This function takes in an OrderType and returns a formatted\r\n * string corresponding to that type.\r\n *\r\n * @param orderType The enum value given to any order.\r\n */\r\nfunction orderTypeToString(orderType: OrderType): string {\r\n switch (orderType) {\r\n case OrderType.Market:\r\n return 'MKT';\r\n case OrderType.Limit:\r\n return 'LMT';\r\n case OrderType.Stop_Limit:\r\n return 'STOP LMT';\r\n case OrderType.Stop_Market:\r\n return 'STOP MKT';\r\n case OrderType.Market_On_Close:\r\n return 'MKT ON CLOSE';\r\n default:\r\n return 'MKT';\r\n }\r\n}\r\n\r\nexport function formatOrderPrice(order: Pick) {\r\n const { Price, Duration, DebitCredit, Stop } = order;\r\n const orderType = order.OrderType;\r\n if (_.isNil(Price)) {\r\n return '';\r\n }\r\n\r\n const priceValue = Math.abs(Price);\r\n const price = formatNumber(priceValue, { currency: true });\r\n const stopValue = Stop ? Math.abs(Stop) : undefined;\r\n const stop = stopValue ? formatNumber(stopValue, { currency: true }) : '';\r\n const prefix = DebitCredit ? (DebitCredit === DebitOrCredit.Debit ? 'DBT' : 'CRDT') : '';\r\n const orderTypeString = orderTypeToString(orderType);\r\n const duration = Duration === Durations.GTC ? ' GTC' : '';\r\n\r\n if (orderType === OrderType.Stop_Limit) {\r\n return `${stop} ${orderTypeString} ${price} ${prefix} ${duration}`;\r\n } else if (orderType === OrderType.Stop_Market) {\r\n return `${stop} ${orderTypeString} ${prefix} ${duration}`;\r\n } else if (orderType === OrderType.Market) {\r\n return `${orderTypeString} ${prefix} ${duration}`;\r\n } else {\r\n return `${price} ${orderTypeString} ${prefix} ${duration}`;\r\n }\r\n}\r\n\r\n/**\r\n * Gets the total number of filled orders\r\n * @param legs An array of orderlegs\r\n * @param backUpQuantity in the event the orderLegs don't exist, this value will be treated as the fallback\r\n * @returns the total number of filled orders\r\n */\r\nexport function getFilledQuantity(legs: OrderLeg[], backUpQuantity: number) {\r\n let filledQuantity = backUpQuantity;\r\n if (legs === null || legs === undefined) {\r\n filledQuantity = backUpQuantity;\r\n } else {\r\n filledQuantity = _.sum(_.map(legs, l => l.LegFillQuantity));\r\n }\r\n\r\n return filledQuantity;\r\n}\r\n\r\n/**\r\n * Checks to see if the OrderStatus is either undefined, \"New\", \"Pending New\", or \"Initiated\"\r\n * @param orderStatus The number of the enum value corresponding with the OrderStatus\r\n */\r\nexport function isNewOrderStatus(orderStatus: number | undefined) {\r\n return _.includes([undefined, OrderStatuses.New, OrderStatuses.PendingNew, OrderStatuses.Initiated], orderStatus);\r\n}\r\n\r\n/**\r\n * Checks to see if the OrderStatus is \"Cancelled\"\r\n * @param orderStatus The number of the enum value corresponding with the OrderStatus\r\n */\r\nexport function isCancelledOrderStatus(orderStatus: number | undefined) {\r\n return _.includes([OrderStatuses.Cancelled], orderStatus);\r\n}\r\n\r\n/**\r\n * Checks to see if the OrderStatus is \"Partially Filled\"\r\n * @param orderStatus The number of the enum value corresponding with the OrderStatus\r\n */\r\nexport function isPartialOrderStatus(orderStatus: number | undefined) {\r\n return _.includes([OrderStatuses.PartiallyFilled], orderStatus);\r\n}\r\n\r\nexport function isPartiallyCancelledOrderStatus(orderStatus: number | undefined) {\r\n return _.includes([OrderStatuses.PartiallyCancelled], orderStatus);\r\n}\r\n\r\n/**\r\n * Checks to see if the OrderStatus is \"Filled\"\r\n * @param orderStatus The number of the enum value corresponding with the OrderStatus\r\n */\r\nexport function isFilledOrderStatus(orderStatus: number | undefined) {\r\n return _.includes([OrderStatuses.Filled], orderStatus);\r\n}\r\n\r\n/**\r\n * Checks to see if the OrderStatus is new or partially filled\r\n * @param orderStatus The number of the enum value corresponding with the OrderStatus\r\n */\r\nexport function isNewOrPartialOrderStatus(orderStatus: number | undefined) {\r\n return isNewOrderStatus(orderStatus) || isPartialOrderStatus(orderStatus);\r\n}\r\n\r\n/**\r\n * Checks to see if the OrderStatus is new or cancelled\r\n * @param orderStatus The number of the enum value corresponding with the OrderStatus\r\n */\r\nexport function isNewOrCancelledOrderStatus(orderStatus: number | undefined) {\r\n //return isNewOrderStatus(orderStatus) || isCancelledOrderStatus(orderStatus);\r\n if (orderStatus === undefined) {\r\n return false;\r\n }\r\n return [OrderStatuses.New, OrderStatuses.Cancelled, OrderStatuses.Replaced].includes(orderStatus);\r\n}\r\n\r\n/**\r\n * This function calls the TradingBlock API and returns\r\n * an asynchronous function that allows you to get the\r\n * PnL items corresponding with the given account\r\n * @param _api the tradingblock api object\r\n * @param _dispatcher the dispatcher\r\n */\r\nexport function loadPnL(_api: TradingBlockAccountApi, _dispatcher: TradingBlockDispatcher) {\r\n return async (_accountId: number, request: PnLItemGetPnLItemRequest) => {\r\n _dispatcher.pnlHistory.request(_accountId);\r\n const _request = (await _api.pnl(request)).payload;\r\n\r\n const pnl = _request ? (_request.Items as PnLItem[]) : ([] as PnLItem[]);\r\n _dispatcher.pnlHistory.receive(_accountId, pnl);\r\n return pnl;\r\n };\r\n}\r\n\r\nexport function formatOrderLeg(\r\n leg: OrderLeg,\r\n details: ActivityOrderDetailProps,\r\n order: OrderActivity | Order,\r\n showSymbol = false\r\n) {\r\n const { Quantity, OrderStatus } = order;\r\n const { SpreadRatio } = leg;\r\n let orderAction = '';\r\n\r\n let isBuy = OrderAction[leg.Action] === 'Buy';\r\n if (isErrorActivity(order)) {\r\n orderAction = `Error ${isBuy ? 'buying' : 'selling'}`;\r\n } else if (_.isNil(OrderStatuses) || !OrderStatus) {\r\n orderAction = '';\r\n } else if (OrderStatusCategories.Filled.includes(OrderStatus)) {\r\n orderAction = isBuy ? 'Bought' : 'Sold';\r\n } else {\r\n orderAction = isBuy ? 'Buy' : 'Sell';\r\n }\r\n if (OrderStatus === OrderStatuses.Initiated) {\r\n orderAction = `Initiated ${_.toLower(orderAction)}`;\r\n }\r\n\r\n const e = PositionEffect[leg.PositionEffect];\r\n const s = leg.AssetType === AssetType.Equity ? leg.Symbol : details.symbol;\r\n const q = Quantity * (SpreadRatio || 1);\r\n\r\n const i = optionToDetailString(leg, order);\r\n return `${orderAction} to ${e} ${showSymbol ? s : ''} ${q}x ${i}`;\r\n}\r\n\r\n/** This function accepts a string in the\r\n * format \"Symbol DDMMMYY StrikePrice OrderType [quantity]\" and converts it to the format shown in the ActivityBlock documentation\r\n *\r\n * @param detail a string in the form \"Symbol DDMMMYY StrikePrice CALLorPUT [quantity]\"\r\n */\r\nexport function detailFormattor(leg: OrderLeg, underlyingSymbol: string): ActivityOrderDetailProps {\r\n return orderLegToDetails(leg, underlyingSymbol);\r\n}\r\n/**\r\n * Takes in an OrderStatus value (as a number) and returns\r\n * A formatted string corresponding to that value\r\n *\r\n * @param status an enum value of OrderStatus\r\n * @returns a string with the corresponding enum value\r\n */\r\nexport function OrderStatusToString(status?: number): string {\r\n switch (status) {\r\n case OrderStatuses.New:\r\n return 'New';\r\n case OrderStatuses.PartiallyFilled:\r\n return 'Partial';\r\n case OrderStatuses.Filled:\r\n return 'Filled';\r\n case OrderStatuses.Cancelled:\r\n return 'Cancelled';\r\n case OrderStatuses.Replaced:\r\n return 'Replaced';\r\n case OrderStatuses.PendingCancel:\r\n return 'Pending Cancel';\r\n case OrderStatuses.Rejected:\r\n return 'Rejected';\r\n case OrderStatuses.PendingNew:\r\n return 'Pending New';\r\n case OrderStatuses.Expired:\r\n return 'Expired';\r\n case OrderStatuses.PendingReplace:\r\n return 'Pending Replace';\r\n case OrderStatuses.Saved:\r\n return 'Saved';\r\n case OrderStatuses.Initiated:\r\n return 'Initiated';\r\n case OrderStatuses.ReplaceInitiated:\r\n return 'Replace Initiated';\r\n case OrderStatuses.CancelInitiated:\r\n return 'Cancel Initiated';\r\n case OrderStatuses.CancelRejected:\r\n return 'Cancel Rejected';\r\n case OrderStatuses.ReplaceRejected:\r\n return 'Replace Rejected';\r\n case OrderStatuses.DoneForDay:\r\n return 'Done For Day';\r\n case OrderStatuses.Acknowledged:\r\n return 'Acknowledged';\r\n case OrderStatuses.PartiallyCancelled:\r\n return 'Partially Cancelled';\r\n // case OrderStatuses.Stopped:\r\n // return 'Stopped';\r\n // case OrderStatuses.Suspended:\r\n // return 'Suspended';\r\n // case OrderStatuses.Calculated:\r\n // return 'Calculated';\r\n // case OrderStatuses.LiveUntriggered:\r\n // return 'Live Untriggered';\r\n // case OrderStatuses.Scheduled:\r\n // return 'Scheduled';\r\n // case OrderStatuses.OCO_Untriggered:\r\n // return 'OCO Untriggered';\r\n // case OrderStatuses.CancelledUntriggered:\r\n // return 'Cancelled Untriggered';\r\n // case OrderStatuses.Busted:\r\n // return 'Busted';\r\n // case OrderStatuses.PreAllocated:\r\n // return 'Preallocated';\r\n default:\r\n return '';\r\n }\r\n}\r\n\r\nexport const ActivityStatusMessage = (activity: OrderActivity) => {\r\n if (isErrorActivity(activity)) {\r\n if (activity.data.error) {\r\n return activity.data.error;\r\n }\r\n return activity.data.Response ? activity.data.Response.Message : undefined;\r\n }\r\n return undefined;\r\n};\r\n\r\n/**\r\n * This function converts a given Order object To a string array\r\n * to be used in the Messages tab of the activity block\r\n * @param order the Order you want to convert\r\n */\r\nexport function orderToMessage(order: Order) {\r\n const underlyingSymbol = order.UnderlyingSymbol;\r\n if (underlyingSymbol === undefined) {\r\n return [];\r\n }\r\n return _.map(order.Legs, val => {\r\n return formatOrderLeg(val, detailFormattor(val, underlyingSymbol), order, true);\r\n });\r\n}\r\n","import { AllNotificationType, OrderNotification } from '@tradingblock/types';\n\nexport function isOrderNotification(not: AllNotificationType): not is OrderNotification {\n return not.type === 'Order';\n}\n","import _ from 'lodash';\r\nimport dayjs from 'dayjs';\r\nimport { createSelector } from 'reselect';\r\nimport createCachedSelector from 're-reselect';\r\nimport { DataState } from '../state';\r\nimport { Order, OrderLeg, OrderMessage, OrderActivity, OrderNotification } from '@tradingblock/types';\r\nimport { accountIdValue, PositionSymbolsSelector } from '../dataSelectors';\r\nimport { OrderStatusToString, orderToMessage } from '../utilities/activity';\r\n\r\nimport { isOrderNotification } from '../utilities/notification';\r\nimport {\r\n toRawOccSymbol,\r\n OrderStatusCategories,\r\n orderutility,\r\n OrderLegWithMetadata,\r\n isSymbolExpired,\r\n} from '@tradingblock/api';\r\n\r\nexport const getOpenOrdersCount = createSelector(\r\n (state: DataState) => state.account.orders || [],\r\n orders => {\r\n return _.filter(orders, ({ OrderStatus }) =>\r\n OrderStatus ? OrderStatusCategories.Open.includes(OrderStatus) : false\r\n ).length;\r\n }\r\n);\r\n\r\nexport const getOrders = createSelector(\r\n (state: DataState) => state.account.orders || [],\r\n (state: DataState) => state.account.orderErrorEvents || [],\r\n (state: DataState) => state.account.accountId,\r\n (state: DataState) => state.account.subAccountId,\r\n (orders, orderErrors, accountId, subAccountId): OrderActivity[] => {\r\n const orderAct: OrderActivity[] = _.map(orders, o => ({\r\n ...o,\r\n orderApiStatus: 'sent',\r\n activityDate: dayjs(o.Date).toDate(),\r\n }));\r\n const errorAct: OrderActivity[] = _.map(orderErrors, o => {\r\n const dateValue = o.order.Date || o.createdOn;\r\n return {\r\n ...o.order,\r\n activityDate: dayjs(dateValue).toDate(),\r\n AccountId: accountId,\r\n orderApiStatus: 'error',\r\n data: o,\r\n Date: dateValue,\r\n };\r\n });\r\n const activities: OrderActivity[] = _.orderBy(\r\n [...orderAct, ...errorAct],\r\n o => (o.activityDate ? o.activityDate.valueOf() : 0),\r\n 'desc'\r\n );\r\n\r\n let filtered_messages = activities;\r\n if (accountId !== undefined) {\r\n filtered_messages = filtered_messages.filter(o => o.AccountId && o.AccountId === accountId);\r\n }\r\n if (subAccountId !== undefined) {\r\n filtered_messages = filtered_messages.filter(o => o.SubaccountId && o.SubaccountId === subAccountId);\r\n }\r\n\r\n return filtered_messages;\r\n }\r\n);\r\n\r\nconst filterOrderMessages = (\r\n orders: Order[],\r\n notifications: OrderNotification[],\r\n accountId: number,\r\n subAccountId: number | undefined\r\n): OrderMessage[] => {\r\n // console.log('Filtering orders on account Id: ' + accountId);\r\n if (!orders || !notifications) {\r\n return [];\r\n }\r\n const messages: OrderMessage[] = _(\r\n orders.map(o => {\r\n return {\r\n id: o.OrderId || -1,\r\n status: `Order ${OrderStatusToString(o.OrderStatus)}`,\r\n message: orderToMessage(o),\r\n description: o.Description || '',\r\n received: dayjs(o.Date).toDate(),\r\n order: o,\r\n };\r\n })\r\n )\r\n .union(\r\n notifications.map(n => {\r\n const o = n.order;\r\n return {\r\n id: o.OrderId || -1,\r\n status: n.title,\r\n message: n.message ? [n.message] : orderToMessage(o),\r\n description: o.Description || '',\r\n received: dayjs(o.Date || n.time).toDate(),\r\n order: o,\r\n };\r\n })\r\n )\r\n // .uniqBy(v => v.status.toLocaleLowerCase() + v.message.toLocaleString())\r\n .orderBy(v => (v.received ? v.received.valueOf() : -1), ['desc'])\r\n .value();\r\n\r\n let filtered_messages = messages;\r\n if (accountId !== undefined) {\r\n filtered_messages = filtered_messages.filter(o => o.order.AccountId && o.order.AccountId === accountId);\r\n }\r\n if (subAccountId !== undefined) {\r\n filtered_messages = filtered_messages.filter(o => o.order.SubaccountId && o.order.SubaccountId === subAccountId);\r\n }\r\n\r\n return filtered_messages;\r\n};\r\n\r\nexport const getOrderMessages = (blockId: string) =>\r\n createSelector(\r\n (state: DataState) => (state.account.ordersUIState[blockId] && state.account.ordersUIState[blockId].orders) || [],\r\n (state: DataState) => state.notifications.filter(isOrderNotification),\r\n (state: DataState) => state.account.accountId,\r\n (state: DataState) => state.account.subAccountId,\r\n filterOrderMessages\r\n );\r\nexport const getOrdersByBlockId = (blockId: string) =>\r\n createSelector(\r\n (state: DataState) => state.account.ordersUIState[blockId],\r\n (state: DataState) => state.account.orderErrorEvents || [],\r\n (state: DataState) => state.account.accountId,\r\n (state: DataState) => state.account.subAccountId,\r\n (orderState, orderErrors, accountId, subAccountId): OrderActivity[] => {\r\n if (!orderState || !orderState.orders) {\r\n return [];\r\n }\r\n const orderAct: OrderActivity[] = _.map(orderState.orders, o => ({\r\n ...o,\r\n orderApiStatus: 'sent',\r\n activityDate: dayjs(o.Date).toDate(),\r\n }));\r\n const errorAct: OrderActivity[] = _.map(orderErrors, o => {\r\n const dateValue = o.order.Date || o.createdOn;\r\n return {\r\n ...o.order,\r\n activityDate: dayjs(dateValue).toDate(),\r\n orderApiStatus: 'error',\r\n data: o,\r\n Date: dateValue,\r\n };\r\n });\r\n const activities: OrderActivity[] = _.orderBy(\r\n [...orderAct, ...errorAct],\r\n o => (o.activityDate ? o.activityDate.valueOf() : 0),\r\n 'desc'\r\n );\r\n\r\n let filtered_messages = activities;\r\n if (accountId !== undefined) {\r\n filtered_messages = filtered_messages.filter(o => o.AccountId && o.AccountId === accountId);\r\n }\r\n if (subAccountId !== undefined) {\r\n filtered_messages = filtered_messages.filter(o => o.SubaccountId && o.SubaccountId === subAccountId);\r\n }\r\n\r\n return filtered_messages;\r\n }\r\n );\r\n\r\nexport const getSpecificOrderMessages = (orderId?: number) =>\r\n createSelector(\r\n [\r\n state => state,\r\n (state: DataState) => state.account.orders || [],\r\n (state: DataState) => state.notifications.filter(isOrderNotification),\r\n (state: DataState) => state.account.accountId,\r\n (state: DataState) => state.account.subAccountId,\r\n ],\r\n (state, orders: Order[], notifications, accountId, subAccountId): OrderMessage[] => {\r\n const filterOrders = filterOrderMessages(orders, notifications, accountId, subAccountId);\r\n return filterOrders.filter(order => order.id === orderId);\r\n }\r\n );\r\n\r\nexport interface ActivityOrderProps {\r\n // Just the ticker. I.e. \"TWLO\"\r\n Symbol: string;\r\n\r\n // Ex: \"Buy to Open 100 SHRS @ MKT DAY\"\r\n OrderDetails: string;\r\n\r\n Price: number; // ex $1,380.00\r\n\r\n // Either \"Open\", \"filled \\n # filled / # total\"\r\n // or \"Partial \\n # filled / # total\"\r\n Status: string;\r\n\r\n // If not today the format is: 08/02/19 2:40 PM\r\n // If placed today the format is: 2:40 PM\r\n PlacedOn: Date;\r\n}\r\n\r\n/**\r\n * This builds out an object that will be easily digestable\r\n * by the ActivityOrders Page.\r\n *\r\n */\r\nexport const getActivityOrders = createSelector(\r\n (state: DataState) => state.account.orders || [],\r\n (orders: Order[]) => {\r\n return _.map(orders, order => {\r\n // const marketOrLimit = OrderType[order.OrderType];\r\n // const legs = order.Legs;\r\n\r\n return {\r\n Symbol: order.UnderlyingSymbol,\r\n OrderDetails: order.Description,\r\n Price: order.AverageFillPrice || order.Price,\r\n };\r\n });\r\n }\r\n);\r\nexport const isFetchingAccountOrders = createCachedSelector(\r\n (state: DataState) => state,\r\n (state: DataState) => {\r\n return state.account.isFetchingOrders;\r\n }\r\n)(\r\n // re-reselect keySelector\r\n // Use \"libraryId\" as cacheKey\r\n accountIdValue\r\n);\r\nexport const areOrdersLoaded = createCachedSelector(\r\n (state: DataState) => (state.account.orders && state.account.orders.length > 0 ? true : false),\r\n (state: DataState) => state.account.isFetchingOrders,\r\n (state: DataState) => state.blocks.isFetchingInitial,\r\n (ordersExist, accountIsFetching, blocksFetchingInitial) => {\r\n if (ordersExist) {\r\n return true;\r\n }\r\n const res = accountIsFetching === false && blocksFetchingInitial === false;\r\n return res;\r\n }\r\n)(\r\n // re-reselect keySelector\r\n // Use \"libraryId\" as cacheKey\r\n accountIdValue\r\n);\r\nexport const shouldLoadMoreOrders = createCachedSelector(\r\n (state: DataState) => state,\r\n (state: DataState) => {\r\n return state.account.orders && state.account.shouldLoadMoreOrders ? true : false;\r\n }\r\n)(\r\n // re-reselect keySelector\r\n // Use \"libraryId\" as cacheKey\r\n accountIdValue\r\n);\r\n\r\nexport const isOrderBeingPlacedOrChanged = false;\r\n\r\nexport const getActivityOrderSymbolsWithoutExpired = createSelector(\r\n (state: DataState) => orderutility.toOrderLegsWithMetaData(state.account.orders || []),\r\n (orderLegs: OrderLegWithMetadata[]): string[] => {\r\n const orderSymbols = _(orderLegs).reduce((acc: string[], l): string[] => {\r\n const symb = l.OccSymbol ? toRawOccSymbol(l.OccSymbol) : l.Symbol || l.UnderlyingSymbol;\r\n\r\n if (_.isNil(symb)) {\r\n return acc;\r\n }\r\n\r\n //not expired\r\n if (isSymbolExpired(symb)) {\r\n return acc;\r\n }\r\n return [...acc, symb];\r\n }, []);\r\n\r\n return _.uniq(orderSymbols);\r\n }\r\n);\r\n\r\nexport const getPositionAndOrderSymbols = createCachedSelector(\r\n (s: DataState) => PositionSymbolsSelector(s),\r\n getActivityOrderSymbolsWithoutExpired,\r\n (positionSymbols, orderSymbols) => {\r\n return _(positionSymbols || [])\r\n .union(orderSymbols || [])\r\n .uniq()\r\n .orderBy()\r\n .value();\r\n }\r\n)((s: DataState) => `positionorderselector`);\r\n","import React from 'react';\r\nimport _ from 'lodash';\r\nimport { Svg } from '@tradingblock/components';\r\nimport { DashboardNotification } from './DashboardNotification';\r\nimport { useStateSelector } from '../../data/global/dataSelectors';\r\nimport { getOpenOrdersCount } from '../../data/global/selectors/orderSelector';\r\n\r\ninterface TradeOrderNotificationsProps {\r\n onClick: () => void;\r\n}\r\n\r\nexport const TradeOrderNotifications: React.FunctionComponent = ({ onClick }) => {\r\n const orderCount = useStateSelector(s => getOpenOrdersCount(s));\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {_.isNumber(orderCount) && orderCount > 0 && {orderCount}}\r\n \r\n );\r\n};\r\n","import React, { useCallback, FC, useEffect, Dispatch, SetStateAction } from 'react';\nimport _ from 'lodash';\nimport { BlockType } from '@tradingblock/types';\nimport { CountdownTimer, Svg, GetTradingBlockSiteName } from '@tradingblock/components';\nimport { TimeTillClose } from '../../utilities/date';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { useStateSelector, blocksSelectors } from '../../data/global/dataSelectors';\n\nconst TradingStatusIconButton: React.FC<{ cssClasses?: string; title?: string; icon: string }> = ({\n title,\n cssClasses,\n icon,\n}) => {\n return (\n \n );\n};\n\nexport const TradingStatusIcon: FC<{ onAddBlock: (type: BlockType) => void }> = ({ onAddBlock }) => {\n const blocks = useStateSelector(s => blocksSelectors.blocks(s));\n const feedInfo = useStateSelector(s => {\n const { status, message, isReconnecting } = s.feedProvider;\n const isClosed = status === 'closed';\n const isConnected = status === 'open';\n const isError = status === 'error' ? true : isClosed && isReconnecting === false ? true : false;\n\n return { status, message, isConnected, isError, isWarning: isClosed, isPending: status === undefined };\n });\n const { dispatcher } = useDispatcher();\n const onAddOrHighlightBlockType = useCallback(\n (blockType: BlockType) => {\n if (_.some(blocks, b => b.type === blockType)) {\n // highlight all blocks of same type\n dispatcher.block.highlightBlocks(blockType);\n } else {\n // add new block\n onAddBlock(blockType);\n }\n },\n [blocks, dispatcher.block, onAddBlock]\n );\n\n const cssClasses = feedInfo.isError ? 'neg' : feedInfo.isWarning ? 'warn' : feedInfo.isPending ? 'pending' : '';\n const title = feedInfo.message\n ? feedInfo.message\n : feedInfo.isPending\n ? 'Connecting...'\n : `Cannot connect to ${GetTradingBlockSiteName()} API`;\n return (\n <>\n {(feedInfo.isError || feedInfo.isWarning || feedInfo.isPending) && (\n \n )}\n {feedInfo.isConnected && (\n (\n onAddOrHighlightBlockType(BlockType.Order)}\n >\n \n \n \n \n \n \n \n \n \n )}\n />\n )}\n \n );\n};\n","import React, { Dispatch, FC, SetStateAction, useCallback, useEffect } from 'react';\nimport dayjs from 'dayjs';\nimport relativeTime from 'dayjs/plugin/relativeTime';\nimport _ from 'lodash';\nimport { CountdownTimer, Svg, ParsedMs } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { TimeTillClose, DisplayTimeTilClose, isMarketOpen, MarketOpenTime, returnMarketHoliday } from '../../../utilities/date';\nimport { useDispatch } from 'react-redux';\nimport { AccountActions } from '../../../data/global/actions/AccountActions';\nimport { MarketDataEntitlementTypeId } from '@tradingblock/types';\nimport { InfoDataActions } from '../../../data/global/actions/InfoActions';\n\ndayjs.extend(relativeTime);\n\nexport const DashboardMarketClosedCountdown: FC<{}> = ({ }) => {\n const dispatch = useDispatch();\n const latestReceivedDate = useStateSelector(s => s.quotes.quoteMetadata.latestReceivedTime);\n const entitlement = useStateSelector(s => s.account.dataEntitled);\n const isExpired = useStateSelector(s => s.auth.isExpired);\n\n const origin = useStateSelector(s => s.auth.origin);\n const siteConfigId = origin === 'mb' ? 4 : 2;\n const marketOpen = isMarketOpen();\n\n const now = dayjs.utc().toDate();\n const nowHours = now.getHours();\n const holiday = returnMarketHoliday();\n\n const countdownTitle = useCallback(\n (parsed: ParsedMs) => {\n const marketClosed =\n parsed.hours <= 0 && parsed.minutes <= 0\n ? 'NYSE Market closed'\n : `NYSE Market closes in ${DisplayTimeTilClose(parsed)}`;\n\n\n const marketOpens = `NYSE Market opens in ${DisplayTimeTilClose(parsed)}`;\n let quoteDataAsOf = 'Data refresh time not available';\n if (!_.isNil(latestReceivedDate)) {\n const now = dayjs().valueOf();\n if (now <= latestReceivedDate) {\n quoteDataAsOf = 'Data as of a few seconds ago';\n } else {\n quoteDataAsOf = `Data as of ${dayjs(latestReceivedDate).fromNow()}`;\n }\n }\n if (marketOpen) {\n return `${marketClosed}. ${quoteDataAsOf}.`;\n } else {\n return `${marketOpens}. ${quoteDataAsOf}.`;\n }\n },\n [latestReceivedDate, marketOpen]\n );\n\n const marketOpenTime = () => {\n if (nowHours < 24) {\n return dayjs(MarketOpenTime())\n .add(1, 'day')\n .toDate();\n } else {\n return MarketOpenTime().toDate();\n }\n };\n\n useEffect(() => {\n dispatch(AccountActions.requestAccountEntitlement({}));\n dispatch(InfoDataActions.requestAlertMessages({ siteConfigId }));\n }, []);\n\n useEffect(() => {\n let intervalId: NodeJS.Timeout | undefined = undefined;\n if (!isExpired) {\n intervalId = setInterval(function () {\n dispatch(InfoDataActions.requestAlertMessages({ siteConfigId }));\n }, 60 * 1000 * 5);\n }\n\n return () => {\n if (intervalId !== undefined) {\n clearInterval(intervalId);\n }\n };\n }, [isExpired, marketOpen]);\n\n return (\n <>\n {marketOpen && (\n \n parsed.hours > 0\n ? `${parsed.hours}:${parsed.minutes < 10 ? '0' : ''}${parsed.minutes} HRS`\n : parsed.minutes <= 0\n ? 'CLOSED'\n : `${parsed.minutes} MINS`\n }\n until={dayjs(TimeTillClose().toDate()).add(1, 'minutes').toDate()}\n className={'dashboard-nav-tool dashboard-nav-time hide-mobile'}\n >\n {holiday && holiday.earlyClose && (\n \n {holiday.message} {holiday.name}\n \n )}\n {!holiday && entitlement === MarketDataEntitlementTypeId.DelayedQuotesOnlyUser && (\n \n 20 MIN DELAYED DATA: QUOTE, BID, ASK, OR LAST PRICE\n \n )}\n \n \n \n \n )}\n {!marketOpen && (\n 'Closed'}\n until={dayjs(marketOpenTime()).add(1, 'minutes').toDate()}\n className={'dashboard-nav-tool dashboard-nav-time hide-mobile'}\n >\n {holiday && (\n \n {holiday.message} {holiday.name}\n \n )}\n \n \n \n \n )}\n \n );\n};\n","import React from 'react';\nimport { Svg } from '@tradingblock/components';\n\nexport const Logo = () => {\n return ;\n};\n","import { useEffect, useMemo, useCallback } from 'react';\nimport _ from 'lodash';\nimport { IBlockDataState } from '@tradingblock/types';\nimport { isString } from '@tradingblock/api';\nimport { useDispatcher, TradingBlockDispatcher } from '../data/global/hooks';\nimport { useBlockData, useBlockState, useBlockSelector } from '../components/blocks/BlockState';\nimport { useStateSelector } from '../data/global/dataSelectors';\nimport { DataState } from '../data/global/state';\nimport { useWhyDidYouUpdate } from '@tradingblock/components';\n\ntype StringOrQuoteRequest =\n | string\n | string[]\n | {\n fetchAndSubscribe?: string[];\n subscribe: string[];\n };\n\nexport const setBlockQuotes = (blockId: string, dispatcher: TradingBlockDispatcher) => (symbolVal?: StringOrQuoteRequest) => {\n if (!symbolVal) {\n return;\n }\n let quotesToFetch: string[] = [];\n let allQuotes: string[] = [];\n if (isString(symbolVal)) {\n quotesToFetch = [symbolVal];\n allQuotes = [symbolVal];\n } else if (_.isArray(symbolVal)) {\n quotesToFetch = symbolVal;\n allQuotes = symbolVal;\n } else {\n quotesToFetch = symbolVal.fetchAndSubscribe || [];\n allQuotes = _.union(symbolVal.subscribe, symbolVal.fetchAndSubscribe || []);\n }\n if (quotesToFetch.length > 0) {\n // dispatcher.data.quote.request(_.uniq(quotesToFetch));\n }\n\n dispatcher.block.setQuoteSubscription(blockId, allQuotes);\n return;\n};\n\nexport const useQuoteActions = () => {\n const { dispatcher } = useDispatcher();\n const blockId = useBlockState('blockId');\n\n const addQuote = (symbolVal: string | string[]) => {\n const symbols = _.isArray(symbolVal) ? symbolVal : [symbolVal];\n // dispatcher.data.quote.request(symbolVal);\n dispatcher.block.addQuoteSubscription(blockId, symbols);\n return;\n };\n const setFeedQuotes = (symbolVal: string | string[]) => {\n const symbols = _.isArray(symbolVal) ? symbolVal : [symbolVal];\n dispatcher.block.setQuoteSubscription(blockId, symbols);\n };\n return {\n setQuotes: useCallback(setBlockQuotes(blockId, dispatcher), [dispatcher, blockId]),\n setFeedQuotes: useCallback(setFeedQuotes, [dispatcher]),\n addQuote: useCallback(addQuote, [dispatcher]),\n };\n};\n\nexport const useQuoteFeedSubscription = () => {\n const { setQuotes } = useQuoteActions();\n const setQuoteSubscriptions = useCallback(\n (symbolVal: string[] | string | undefined) => {\n const symbols = _.isString(symbolVal) ? [symbolVal] : _.isArray(symbolVal) ? symbolVal : [];\n const stringSymbols = _.filter(symbols, _.isString);\n if (stringSymbols.length > 0) {\n setQuotes(stringSymbols);\n }\n },\n [setQuotes]\n );\n return setQuoteSubscriptions;\n};\n\nconst useQuoteSubscription = (symbolVal: string[] | string | undefined) => {\n const setQuotes = useQuoteFeedSubscription();\n\n useEffect(() => {\n setQuotes(symbolVal);\n }, [symbolVal]);\n};\n\nexport const useQuoteSymbolSubscriptionFromGlobalState = (selector: (state: DataState) => string[] | string | undefined) => {\n const symbolVal = useStateSelector(selector);\n useQuoteSubscription(symbolVal);\n return symbolVal;\n};\nexport const useQuoteSymbolSubscription = (getSymbol: (state: T) => string[] | string | undefined) => {\n // const state = useBlockData();\n const symbolVal = useBlockSelector(getSymbol);\n // const symbolVal = useMemo(() => getSymbol(state), [state, getSymbol]);\n useQuoteSubscription(symbolVal);\n};\n","import { SymbolQuote } from '@tradingblock/api';\nimport { formatNumber, Loading } from '@tradingblock/components';\nimport React, { FC, useCallback, useEffect, useRef } from 'react';\nimport { getFavoriteSymbols, useStateSelector } from '../../data/global/dataSelectors';\nimport { getQuoteMetadata } from '../../data/global/selectors/quoteSelector';\nimport { QuoteDataActions } from '../../data/global/actions';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { useDashboardSettings } from '../../hooks/useDashboardSettings';\nimport { useQuoteActions } from '../../hooks/useQuoteData';\nimport { AssetSymbol, AssetType } from '@tradingblock/types';\nimport { useFeedActions } from '../../data/feed/useFeedActions';\nexport interface DashboardSymbolWidgetProps {\n symbol?: string;\n}\nconst centeringStyle = { paddingLeft: '1rem', alignItems: 'center' };\nconst widgetSymbolsStyle = { color: 'ghostwhite', fontWeight: 'bold' } as object; //very strange necessary cast\n\nexport const DashboardSymbolWidget: FC = ({ symbol }): JSX.Element => {\n const quote: SymbolQuote = useStateSelector(s => getQuoteMetadata(s, symbol ? symbol : ''));\n const changePercentStyle = { color: quote && quote.NetChange > 0.0 ? 'var(--teal)' : 'var(--salmon)' };\n const { dispatch } = useDispatcher();\n const { dispatcher } = useDispatcher();\n const { showBannerSymbols, bannerSymbols } = useDashboardSettings();\n const { addQuote } = useQuoteActions();\n const widgetContainerStyle = {\n display: 'flex',\n flexDirection: 'row',\n fontSize: `0.75rem`,\n ...centeringStyle,\n } as object;\n\n const apiToken = useStateSelector(state => state.auth.apiToken);\n const accountId = useStateSelector(state => state.account.accountId);\n const { subscribeQuote } = useFeedActions(apiToken || '');\n\n useEffect(() => {\n dispatch(QuoteDataActions.requestQuote({ symbol: bannerSymbols }));\n addQuote(symbol ? symbol : '');\n subscribeQuote(accountId, { kind: 'Quote', symbols: [bannerSymbols] });\n }, [dispatch, bannerSymbols]);\n\n const change = useRef(0.0);\n\n if (quote && quote.NetChange) {\n change.current = quote.NetChange ? quote.NetChange : 0.0;\n }\n\n const widgetCells = quote ? (\n \n \n {symbol}\n  \n {formatNumber(quote.LastOrClosePrice, { currency: true }).replace('$', '')} \n \n {change.current && (\n \n )}\n {formatNumber(change.current)}\n \n \n \n ) : (\n
    \n \n
    \n );\n if (!showBannerSymbols) return <>;\n else return widgetCells;\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useCallback, useEffect, useState, useMemo, useRef } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport useClickAway from 'react-use/lib/useClickAway';\nimport _ from 'lodash';\nimport {\n PageNav,\n AddBlockModal,\n PageNavTertiary,\n PageNavToggleButton,\n PageNavPrimary,\n isChildNodeOfElement,\n isChildNodeOfModal,\n} from '@tradingblock/components';\nimport { BlockType, AllBlockTypes, UserRole, UserProfileLevel } from '@tradingblock/types';\nimport { useDispatcher } from '../../data/global/hooks';\nimport {\n useStateSelector,\n dashboardsSelectors,\n blocksSelectors,\n useAuthenticationSelector,\n} from '../../data/global/dataSelectors';\nimport { account } from '../../data/global/selectors/accountSelectors';\nimport { ClientNotifications } from '../notifications/ClientNotifications';\nimport { TradeOrderNotifications } from '../notifications/TradeOrderNotifications';\nimport { generateNewBlock } from '../../utilities/block';\nimport { TradingStatusIcon } from './TradingStatus';\nimport { DashboardMarketClosedCountdown } from './navigation/DashboardMarketClosedCountdown';\nimport { Logo } from '../basic/Logo';\nimport { isBlockTypeAllowed } from '../../utilities/dashboard';\nimport { IsVirtualEnvironment } from '../../data/global/selectors/environmentSelector';\nimport Config from '../../config';\nimport { TradingEnvironment } from '../../constants';\nimport { NotificationActions, UIActions } from '../../data/global/actions';\nimport { DashboardSymbolWidget } from './DashboardSymbolWidget';\nimport { useDashboardSettings } from '../../hooks/useDashboardSettings';\n\nconst MenuToggleId = 'menu-toggle';\n\ninterface DashboardNavigationProps {\n menuOpen: boolean;\n drawerIsOpen: boolean;\n menuRef: React.MutableRefObject;\n toggleMenu: (nextValue?: any) => void;\n toggleDrawer: () => void;\n}\n\n//https://stackoverflow.com/questions/11715646/scroll-automatically-to-the-bottom-of-the-page\nexport const autoScrollToEnhanced = (element: any) => {\n let notChangedStepsCount = 0;\n const scrollInterval = setInterval(function() {\n if (element) {\n // element found\n clearInterval(scrollInterval);\n element.scrollIntoView({ behavior: 'smooth', block: 'end', inline: 'end' });\n } else if (document.documentElement.scrollTop + window.innerHeight !== document.documentElement.scrollHeight) {\n // no element -> scrolling\n notChangedStepsCount = 0;\n document.documentElement.scrollTop = document.documentElement.scrollHeight;\n } else if (notChangedStepsCount > 20) {\n // no more space to scroll\n clearInterval(scrollInterval);\n } else {\n // waiting for possible extension (autoload) of the page\n notChangedStepsCount++;\n }\n }, 50);\n};\n\nexport const DashboardNavigation: React.FC = ({\n menuRef,\n menuOpen,\n drawerIsOpen,\n toggleMenu,\n toggleDrawer,\n}) => {\n const { dispatcher } = useDispatcher();\n const { isAuthenticated, accountId } = useAuthenticationSelector();\n const accountNickname = useSelector(account.accountNickname);\n const accountCanAccessCashiering = useSelector(account.accountCanAccessCashiering);\n const dashboard = useSelector(dashboardsSelectors.dashboard);\n const blocks = useStateSelector(s => blocksSelectors.blocks(s));\n const isVirtualEnv = useStateSelector(IsVirtualEnvironment);\n const userLevel = useSelector(account.userLevel);\n const accountRoles = useStateSelector(account.userRoles);\n const [showAddBlock, setShowAddBlock] = useState(false);\n const isIRA = useStateSelector(account.accountIsIRA);\n const isUGMA = useStateSelector(account.accountIsUGMA);\n const isPartnership = useStateSelector(account.accountIsPartnership);\n const isDashboardLocked = useStateSelector(s => s.ui.dashboard.isLocked);\n const selectedLinkedAccountId = useStateSelector(\n state => state.account.selectedLinkedAccount && state.account.selectedLinkedAccount.accountId\n );\n const hasMultipleAccounts = useStateSelector(account.hasMultipleAccounts);\n const dispatch = useDispatch();\n const toggleAccountSwitcher = useCallback(() => dispatcher.account.toggleAccountSwitcher(), [dispatcher.account]);\n const { bannerSymbols } = useDashboardSettings();\n const subtitle = useMemo(() => {\n switch (Config.TradingEnvironment) {\n case TradingEnvironment.dev:\n return 'Dev';\n case TradingEnvironment.beta:\n return 'Beta';\n default:\n return undefined;\n }\n }, []);\n\n // all available block types, in custom order\n //const allBlockTypes = [BlockType.Order, BlockType.Activity, BlockType.Account, BlockType.PriceChart, BlockType.Quote, BlockType.OptionChain, BlockType.Positions, BlockType.Favorites, BlockType.AccountTransfer];\n\n const availableBlockTypes = useMemo(() => {\n let filteredBlockTypes = AllBlockTypes.filter(AllBlocksCategorized => {\n if (!isBlockTypeAllowed(AllBlocksCategorized, isVirtualEnv)) {\n return false;\n }\n if (AllBlocksCategorized === BlockType.AdminTools) {\n return userLevel !== UserProfileLevel.Account;\n }\n return true;\n });\n\n return filteredBlockTypes;\n }, [AllBlockTypes, accountCanAccessCashiering, isVirtualEnv, userLevel]);\n\n // load data needed for nav (balances, orders)\n useEffect(() => {\n if (isAuthenticated) {\n if (accountRoles !== undefined) {\n if (\n accountRoles.includes(UserRole.CashieringApproval) &&\n !isIRA &&\n !isUGMA &&\n !isPartnership &&\n !selectedLinkedAccountId\n ) {\n dispatcher.balances.requestPendingTransfers();\n }\n }\n dispatcher.balances.request();\n if (_.isNumber(accountId) && !selectedLinkedAccountId) {\n dispatcher.order.request(selectedLinkedAccountId ? selectedLinkedAccountId : accountId);\n } else if (_.isNumber(selectedLinkedAccountId)) {\n dispatcher.order.request(selectedLinkedAccountId);\n }\n }\n }, [isAuthenticated, accountId, selectedLinkedAccountId, bannerSymbols]);\n\n const currentBlockLength = useRef(blocks.length);\n const onAddBlock = useCallback(\n (type: BlockType) => {\n currentBlockLength.current = blocks.length;\n const newBlock = generateNewBlock(type);\n dispatcher.block.addBlock(newBlock);\n setShowAddBlock(false);\n if (drawerIsOpen) {\n toggleDrawer();\n }\n },\n [dispatcher.block, drawerIsOpen, toggleDrawer, blocks, currentBlockLength.current]\n );\n\n useEffect(() => {\n const blockReference = document.querySelectorAll('div[id*=block-]')[currentBlockLength.current];\n blockReference && blockReference.classList.add('highlightBlockScroll');\n autoScrollToEnhanced(blockReference);\n }, [currentBlockLength.current]);\n\n const onAddOrHighlightBlockType = useCallback(\n (blockType: BlockType) => {\n if (_.some(blocks, b => b.type === blockType)) {\n // highlight all blocks of same type\n dispatcher.block.highlightBlocks(blockType);\n } else {\n // add new block\n onAddBlock(blockType);\n }\n },\n [blocks, dispatcher.block, onAddBlock]\n );\n\n useClickAway(menuRef, event => {\n const targetIsToggle =\n event && event.target && isChildNodeOfElement(event.target as Node, MenuToggleId) ? true : false;\n if (menuOpen && !targetIsToggle && !isChildNodeOfModal(event && event.target)) {\n toggleMenu();\n }\n });\n\n useEffect(() => {\n toggleMenu(false);\n }, [toggleMenu]);\n\n const onKeyDown = (e: KeyboardEvent) => {\n // pressed ESC...\n if (e.keyCode === 27) {\n if (showAddBlock) {\n e.preventDefault();\n e.stopPropagation();\n setShowAddBlock(false);\n }\n }\n };\n\n const toggleLockDashboard = useCallback(() => {\n dispatch(UIActions.toggleLockDashboard({}));\n }, [isDashboardLocked]);\n\n useEffect(() => {\n document.addEventListener('keydown', onKeyDown);\n return () => {\n document.removeEventListener('keydown', onKeyDown);\n };\n });\n\n const [dimensions, setDimensions] = useState({\n height: window.innerHeight,\n width: window.innerWidth,\n });\n\n //Used to disabled / enable symbols when the viewport is small\n const viewPortResponse = useMemo(() => {\n return dimensions;\n }, [dimensions.width]);\n\n useEffect(() => {\n const handleResize = () => {\n setDimensions({\n height: window.innerHeight,\n width: window.innerWidth,\n });\n };\n window.addEventListener('resize', handleResize);\n return () => {\n window.removeEventListener('resize', handleResize);\n };\n }, [window, setDimensions, dimensions]);\n\n const mobileBannerStyle = {\n overflow: 'auto',\n paddingRight: '3px',\n marginTop: '3px',\n marginBottom: '3px',\n overflowX: 'hidden',\n };\n\n // Space for static nav items\n const BASE_OFFSET = 250;\n // Space per symbol\n const SYMBOLS_OFFSET = 350;\n const elem = document.querySelector('body');\n const calculateElementOffset = useCallback(() => {\n return elem\n ? elem.getBoundingClientRect().x +\n (bannerSymbols.length === 0 ? 1 : bannerSymbols.length * SYMBOLS_OFFSET) +\n BASE_OFFSET\n : 0;\n }, [elem, viewPortResponse.width]);\n\n const bannerValidation = (bannerSymbols_: string[]) => {\n if (bannerSymbols_.length === 0 || viewPortResponse.width < 900) {\n return [];\n } else return bannerSymbols_;\n };\n\n if (userLevel !== 'Account') {\n return (\n \n \n \n \n \n
    \n {dashboard && dashboard.title}\n {(subtitle || isVirtualEnv) && (\n \n {subtitle ? `${subtitle} ` : ''}\n {isVirtualEnv && Virtual Trading}\n \n )}\n
    \n
    \n
    \n \n
    \n :\n
    \n \n onAddOrHighlightBlockType(BlockType.Activity)} />\n \n <>\n {bannerSymbols &&\n (viewPortResponse.width < calculateElementOffset() ? (\n \n {bannerValidation(bannerSymbols).map((symbol, index) => (\n \n ))}\n \n ) : (\n bannerValidation(bannerSymbols).map((symbol, index) => (\n \n ))\n ))}\n \n
    \n \n
    \n toggleLockDashboard()}\n title={isDashboardLocked ? 'Unlock dashboard' : 'Lock dashboard'}\n >\n {isDashboardLocked ? (\n \n ) : (\n \n )}\n \n {hasMultipleAccounts && (\n \n \n \n )}\n {!isDashboardLocked ? (\n setShowAddBlock(true)}\n title=\"Add block\"\n >\n \n \n ) : (\n \n \n \n )}\n {/* revisit in TBFE-459 */}\n \n
    \n
    \n\n setShowAddBlock(false)}\n />\n
    \n );\n }\n\n return (\n \n \n \n \n \n
    \n {dashboard && dashboard.title}\n {(subtitle || isVirtualEnv) && (\n \n {subtitle ? `${subtitle} ` : ''}\n {isVirtualEnv && Virtual Trading}\n \n )}\n
    \n
    \n
    \n \n
    \n :\n
    \n \n onAddOrHighlightBlockType(BlockType.Activity)} />\n \n <>\n {bannerSymbols &&\n (viewPortResponse.width < calculateElementOffset() ? (\n \n {bannerValidation(bannerSymbols).map((symbol, index) => (\n \n ))}\n \n ) : (\n bannerValidation(bannerSymbols).map((symbol, index) => (\n \n ))\n ))}\n \n
    \n\n \n
    \n toggleLockDashboard()}\n title={isDashboardLocked ? 'Unlock dashboard' : 'Lock dashboard'}\n >\n {isDashboardLocked ? (\n \n ) : (\n \n )}\n \n {hasMultipleAccounts && (\n \n \n \n )}\n {!isDashboardLocked ? (\n setShowAddBlock(true)}\n title=\"Add block\"\n >\n \n \n ) : (\n \n \n \n )}\n {/* revisit in TBFE-459 */}\n \n
    \n
    \n\n setShowAddBlock(false)}\n />\n
    \n );\n};\n","import React, { useCallback, useEffect, useRef } from 'react';\nimport { useStateSelector, blocksSelectors } from '../../data/global/dataSelectors';\nimport { DashboardContent, IDashboardContentProps } from '@tradingblock/components';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { autoScrollToEnhanced } from './DashboardNavigation';\n\nexport const DashboardContentWrapper: React.FunctionComponent> = ({ children, ...props }) => {\n const locked = useStateSelector(s => s.blocks.locked);\n const linking = useStateSelector(s => s.blocks.linking);\n\n const highlightBlockIds = useStateSelector(blocksSelectors.highlightBlockIds);\n const highlightedAt = useStateSelector(blocksSelectors.highlightedAt);\n const timeoutMs = useStateSelector(blocksSelectors.highlightTimeoutMs);\n\n const { dispatcher } = useDispatcher();\n const clearHighlightedBlocks = useCallback(() => dispatcher.block.clearHighlightedBlocks(), [dispatcher.block]);\n\n const timeoutId = useRef();\n useEffect(() => {\n // if highlight set, restart timeout to clear highlight\n if (highlightBlockIds && highlightedAt) {\n const blockReference = document.querySelector(`div[id*=block-${highlightBlockIds[0]}]`);\n autoScrollToEnhanced(blockReference);\n window.clearTimeout(timeoutId.current);\n timeoutId.current = window.setTimeout(clearHighlightedBlocks, timeoutMs || 4000);\n }\n return () => {\n window.clearTimeout(timeoutId.current);\n };\n }, [timeoutId, highlightBlockIds, highlightedAt, timeoutMs, clearHighlightedBlocks]);\n\n return (\n \n {children}\n \n );\n};\n","import React, { useState, useRef, useEffect } from 'react';\nimport _ from 'lodash';\nimport { SizeType } from '@tradingblock/types';\nimport { useWhyDidYouUpdate, useWindowSizeContext } from '@tradingblock/components';\nimport { BlockDimensions } from '../../types';\n\nfunction useBbox(timeout?: number): [{ width: number; height: number } | undefined, React.MutableRefObject] {\n const ref = useRef(null);\n // const [bbox, setBbox] = useState();\n const [bbox, setBbox] = useState<{ width: number; height: number }>();\n\n useEffect(() => {\n const set = () => {\n if (ref.current) {\n const currBbox = ref.current.getBoundingClientRect();\n if (!_.isEqual(bbox, currBbox)) {\n return setBbox(ref && ref.current ? { width: currBbox.width, height: currBbox.height } : undefined);\n }\n }\n };\n set();\n let updateTimeout: NodeJS.Timeout | undefined = undefined;\n if (ref && ref.current) {\n const resizeObs = _.get(window, 'ResizeObserver', undefined);\n if (typeof resizeObs === 'function') {\n let resizeObserver: ResizeObserver | null = new resizeObs(() => {\n if (updateTimeout) {\n clearTimeout(updateTimeout);\n }\n updateTimeout = setTimeout(() => set(), timeout || 250);\n });\n resizeObserver.observe(ref.current);\n return () => {\n if (updateTimeout) {\n clearTimeout(updateTimeout);\n }\n if (!resizeObserver) {\n return;\n }\n\n resizeObserver.disconnect();\n resizeObserver = null;\n };\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [timeout]);\n\n return [bbox, ref];\n}\n\nconst defaultDimensions: BlockDimensions = {\n width: SizeType.lg,\n height: SizeType.lg,\n widthClassName: `block-width-lg`,\n heightClassName: `block-height-lg`,\n};\nexport function useBboxDimensions(timeout?: number): [BlockDimensions, React.MutableRefObject] {\n const [bbox, ref] = useBbox(timeout);\n // even though window size not used for dim calculation, still need to use as dep so we update size when window size changes\n const windowSize = useWindowSizeContext();\n const [dimensions, setDimensions] = useState(defaultDimensions);\n useEffect(() => {\n let width: SizeType = dimensions.width;\n let height: SizeType = dimensions.width;\n if (bbox && windowSize) {\n if (bbox.width && bbox.width < 670) {\n width = SizeType.sm;\n } else if (bbox.width && bbox.width < 850) {\n width = SizeType.md;\n } else {\n width = SizeType.lg;\n }\n if (bbox.height && bbox.height < 200) {\n height = SizeType.sm;\n } else if (bbox.width && bbox.height < 500) {\n height = SizeType.md;\n } else {\n height = SizeType.lg;\n }\n }\n const newDimensions = {\n width,\n height,\n bboxWidth: bbox && bbox.width,\n bboxHeight: bbox && bbox.height,\n widthClassName: `block-width-${width}`,\n heightClassName: `block-height-${height}`,\n };\n if (!_.isEqual(dimensions, newDimensions)) {\n setDimensions(newDimensions);\n }\n }, [bbox, dimensions, windowSize]);\n\n useWhyDidYouUpdate('useBboxDimensions', { bbox, windowSize, dimensions, ref });\n return [dimensions, ref];\n}\n\nexport function useBlockSize(dimensions: BlockDimensions, widthOrHeight: 'width' | 'height', values: [T, T, T]) {\n if (dimensions[widthOrHeight] === SizeType.sm) {\n return values[0];\n } else if (dimensions[widthOrHeight] === SizeType.md) {\n return values[1];\n } else {\n return values[2];\n }\n}\n","import { useBaseBlockActionDispatch, BlockStateContext } from '../../../components/blocks/BlockState';\nimport { IBlockDataState, IBlockState } from '@tradingblock/types';\nimport { BlockAndTableActions, BlockTableActions } from '../../../components/blocks/state/blockTable/BlockTableActions';\nimport { WithTables } from '../../../components/blocks/state/blockTable/BlockTableState';\nimport createCachedSelector from 're-reselect';\nimport _ from 'lodash';\nimport { useCallback, useContext } from 'react';\nimport { DataTableState } from '@tradingblock/components';\n\nconst defaultDataTableState: DataTableState = { sortBy: [], pageSize: 50, pageIndex: 0, columnOrder: [] };\nconst defaultAdminAccountManagementState: DataTableState = { sortBy: [], pageSize: 10, pageIndex: 0, columnOrder: [] };\nconst isAdminAccountManagementTable = (key: string) => {\n const adminTableKeys = [\n 'adminAccountManagmentTable',\n 'adminApplicationsTable',\n 'admin-entitlements-table',\n 'releaseNotes',\n 'adminAlertsTemplateTable',\n ];\n\n return adminTableKeys.includes(key);\n};\n\nconst blockTableStateSelector = createCachedSelector(\n (s: IBlockState>, key: string) => (s.data.tables ? s.data.tables[key] : undefined),\n (s: IBlockState>, key: string) => key,\n (tablesState, key): DataTableState => {\n if (_.isNil(tablesState) && !isAdminAccountManagementTable(key)) {\n return defaultDataTableState;\n }\n if (_.isNil(tablesState) && isAdminAccountManagementTable(key)) {\n return defaultAdminAccountManagementState;\n }\n\n if (!isAdminAccountManagementTable(key)) {\n return { ...defaultDataTableState, ...tablesState };\n } else {\n return { ...defaultAdminAccountManagementState, ...tablesState };\n }\n }\n)((s, key: string) => `block-table-${s.blockId}-${key}`);\n\nexport const useBlockTableActions = () => useBaseBlockActionDispatch();\n\nexport const useBlockTable = (key: string) => {\n const state: IBlockState> = useContext(BlockStateContext);\n const initialState = blockTableStateSelector(state, key);\n const dispatch = useBaseBlockActionDispatch();\n const setTable = useCallback(\n (table: Partial) => {\n dispatch(BlockTableActions.setTableState({ key: key, table }, { persist: true }));\n },\n [dispatch]\n );\n return { state: initialState, setTable };\n};\n","import React, { useEffect, useCallback, useMemo } from 'react';\nimport { SortingRule, Table, useWhyDidYouUpdate, useParentSizeContext, DataTableState } from '@tradingblock/components';\nimport { useBboxDimensions } from '../useBboxDimensions';\nimport { useBlockId } from '../../../components/blocks/BlockState';\nimport { useBlockTableSize } from './useBlockTableSize';\nimport { useBlockTable } from './useBlockTableActions';\nimport { BlockTableProps } from './BlockTableTypes';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\n\nexport const BlockTableContent: React.FunctionComponent = ({\n onSizeChanged,\n onSort,\n tableKey,\n onPage,\n onPageSize,\n pageCount,\n getColumnOrder,\n expandRows,\n ...props\n}) => {\n const b = useParentSizeContext();\n const [{ width }, ref] = useBboxDimensions(250);\n const size = useBlockTableSize(width);\n const blockTableState = useBlockTable(tableKey);\n const handleonSort = useCallback(\n (sorts: SortingRule[]) => {\n if (onSort) {\n onSort(sorts);\n }\n blockTableState.setTable({ sortBy: sorts });\n },\n [onSort, blockTableState.setTable]\n );\n const handleOnColumnOrderChanged = useCallback(\n (columnOrder: string[]) => {\n blockTableState.setTable({ columnOrder });\n },\n [blockTableState.setTable]\n );\n useEffect(() => {\n if (onSizeChanged) {\n onSizeChanged(size);\n }\n }, [size, onSizeChanged]);\n\n const blockId = useBlockId();\n useWhyDidYouUpdate(`${blockId}:BlockTable`, { size, ref, blockId, ...props });\n const initialState = useMemo((): DataTableState => {\n const tableState = blockTableState.state;\n return {\n ...(tableState || {}),\n ...(props.initialState || {}),\n columnOrder: tableState.columnOrder || (props.initialState && props.initialState.columnOrder),\n sortBy: tableState.sortBy || (props.initialState && props.initialState.sortBy),\n };\n }, [props.initialState, blockTableState.state]);\n\n useEffect(() => {\n if (getColumnOrder) {\n getColumnOrder(blockTableState.state.columnOrder);\n }\n }, [getColumnOrder, blockTableState.state.columnOrder]);\n\n // use the blockTableState to set the page index and page size if they differ from the initial state\n // this is to ensure that the table state is always in sync with the blockTableState\n // currently the activities block is not set up to persist tab or timeframe selections, so we cannot use the blockTableState to set the page index and page size\n // TODO: refactor the activities block to persist tab and timeframe selections\n useEffect(() => {\n if (\n initialState.pageIndex !== blockTableState.state.pageIndex &&\n onPage &&\n tableKey !== 'orders' &&\n tableKey !== 'accountsTable'\n ) {\n onPage(blockTableState.state.pageIndex);\n }\n if (\n initialState.pageSize !== blockTableState.state.pageSize &&\n onPageSize &&\n tableKey !== 'orders' &&\n tableKey !== 'accountsTable'\n ) {\n onPageSize(blockTableState.state.pageSize);\n }\n }, [blockTableState.state.pageIndex, blockTableState.state.pageSize]);\n\n const handleOnPage = useCallback(\n (pageIndex: number) => {\n if (onPage) {\n onPage(pageIndex);\n }\n blockTableState.setTable({ pageIndex });\n },\n [onPage, blockTableState.setTable]\n );\n\n const handleOnPageSize = useCallback(\n (pageSize: number) => {\n if (onPageSize) {\n onPageSize(pageSize);\n }\n blockTableState.setTable({ pageSize });\n },\n [onPageSize, blockTableState.setTable]\n );\n const isDashboardLocked = useStateSelector(s => s.ui.dashboard.isLocked);\n return (\n
    \n \n
    \n );\n};\n","import { useMemo } from 'react';\nimport { SizeType } from '@tradingblock/types';\nimport { getTableSize, useWindowSizeContext } from '@tradingblock/components';\nexport function useBlockTableSize(tableWidth: SizeType): SizeType {\n const { width } = useWindowSizeContext();\n const size = useMemo(() => getTableSize(tableWidth, width), [width, tableWidth]);\n return size;\n}\n","import React from 'react';\nimport { TableProps, useParentSizeContext } from '@tradingblock/components';\nimport { BlockTableContent } from './table/BlockTableContent';\nimport { BlockTableProps } from './table/BlockTableTypes';\n\nexport const BlockTable: React.FunctionComponent = props => {\n return (\n \n \n \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { blockSettings } from '../../../data/global/selectors/settingSelectors';\nimport { useBlockId } from '../../../components/blocks/BlockState';\n\nexport const useOrderBlockSettings = (blockId?: string) => {\n return useStateSelector(s => blockSettings.order(s, blockId));\n};\nexport const useOrderSettings = () => {\n const blockId = useBlockId();\n return useOrderBlockSettings(blockId);\n};\n","import { useOrderData, OrderState } from './OrderState';\nimport { useGroupState } from '../../useGroupState';\n\ntype fieldOf = keyof T;\ntype selectorOf = (val: T) => TT;\n\nexport function useOrderState(field: K) {\n // const blockId = useBlockId();\n // const selector = createCachedSelector((s: OrderState, blockId: string) => s[field], (val: OrderState[K]) => val)((_: OrderState, blockId: string) => blockId);\n // const value = useOrderData(s => selector(s, blockId));\n const value = useOrderData(s => s[field]);\n return value;\n}\nexport function useOrderStateAs(field: K, transform: (val: OrderState[K]) => T) {\n const value = useOrderData(s => s[field]);\n return transform(value);\n}\n\nexport const useOrderSymbol = () => {\n const [symbol] = useGroupState('symbol');\n return symbol ? symbol.symbol : '';\n //return useOrderStateAs('symbol', s => (s ? s.symbol : ''));\n};\nexport const useOrderSymbolOrUndefined = () => {\n const [symbol] = useGroupState('symbol');\n return symbol ? symbol.symbol : undefined;\n};\n\nexport const useOrderAssetSymbolOrUndefined = () => {\n const [symbol] = useGroupState('symbol');\n return symbol ? symbol : undefined;\n};\n","import _ from 'lodash';\nimport createCachedSelector from 're-reselect';\nimport { Legs, OrderAction } from '@tradingblock/types';\nimport { calculateOrderPrice, orderLegOccSymbol } from '@tradingblock/api';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { OrderState } from '../state/OrderState';\nimport { createDeepSelector, createDeepArraySelector } from '../../../data/selectors';\nimport { GCD } from '../../../utilities/data';\nimport { LegQuoteState, Quotebidask } from './orderTypes';\n\nexport const getOrderLegPrices = createCachedSelector(\n (state: LegQuoteState) => state.legs,\n (state: LegQuoteState) => state.quotes,\n ({ orderAction, strategy, legs }: LegQuoteState) =>\n OrderSelectors.actionForPrice({ strategy, action: orderAction, legs }),\n (state: LegQuoteState) => GCD(_.map(state.legs, l => l.SpreadRatio || 1)) || 1,\n (state: LegQuoteState) => state.strategy,\n (legs: Legs, quotes: Quotebidask, action: OrderAction, gcd: number, strategy) => {\n return calculateOrderPrice(legs, quotes, action, gcd, strategy);\n }\n)((s: LegQuoteState, blockId: string) => blockId || 'UNKNOWN', { selectorCreator: createDeepSelector });\n// export const orderLegPrices = getOrderLegPrices({ legs, quotes: quotes, orderType, orderAction, strategy });\n\nexport const getOrderQuotes = createCachedSelector(\n (s: OrderState, blockId: string) => _.values(s.quotes),\n quotes => quotes\n)((_, blockId: string) => `orderquotes-${blockId}`);\n\nconst orderLegSymbolSelector = createDeepArraySelector(\n (s: OrderState) => s.legs,\n (s: OrderState) => s.symbol,\n (legs, symbol) => {\n if (symbol === undefined) {\n return [];\n }\n\n const legSymbols = legs\n ? _.reduce(\n legs,\n (acc: string[], l) => {\n const legSymbol = orderLegOccSymbol(symbol, l);\n if (legSymbol === undefined) {\n return acc;\n }\n return _.uniq([...acc, legSymbol]).sort();\n },\n []\n )\n : [];\n return legSymbols;\n }\n);\n\nexport const orderBlockSymbols = createCachedSelector(\n (s: OrderState, blockId: string) => (s.symbol ? s.symbol.symbol : undefined),\n (s: OrderState) => (s.symbol ? s.symbol.underlyingSymbol : undefined),\n orderLegSymbolSelector,\n (symbol, underlyingSymbol, legSymbols) => {\n let symbolValues: string[] = [];\n if (symbol) {\n symbolValues = [...symbolValues, symbol];\n }\n if (underlyingSymbol) {\n symbolValues = [...symbolValues, underlyingSymbol];\n }\n if (legSymbols && legSymbols.length > 0) {\n symbolValues = [...symbolValues, ...legSymbols];\n }\n\n return _.uniq(symbolValues);\n }\n)((s, blockId: string) => `${blockId}-symbols`);\n","import { useMemo } from 'react';\nimport _ from 'lodash';\nimport createCachedSelector from 're-reselect';\nimport { useWhyDidYouUpdate } from '@tradingblock/components';\nimport { useOrderData, useOrderDataSelector, OrderQuote, useOrderBlockData, OrderState } from '../state/OrderState';\nimport { LegSelector, OrderSymbolListValues } from '../state/OrderLegSelector';\nimport { OrderPriceData } from '../data/orderTypes';\nimport { getOrderLegPrices, getOrderQuotes } from '../data/orderSelectors';\nimport { useQuoteBidAskMetadata } from '../../../hooks/useFeedQuote';\nimport { areArraysEqual } from '../../../utilities/data';\nimport { useBlockId } from '../../../components/blocks/BlockState';\nimport { Strategies, getKnownStrategy } from '@tradingblock/api';\nimport { account } from '../../../data/global/selectors/accountSelectors';\nimport { useSelector } from 'react-redux';\nimport { AssetType, OptionType, OrderAction, OrderType } from '@tradingblock/types';\nimport { ClassificationOrderLeg, classifyStrategy } from '../../../data/global/utilities/strategyClassification';\n\nconst orderDataSelector = createCachedSelector(\n (s: OrderState, blockId: string) => s.strategy,\n (s: OrderState) => s.orderType,\n (s: OrderState) => s.action,\n (strategy, orderType, orderAction) => ({ strategy, orderType, orderAction })\n)((s: OrderState, blockId: string) => `orderDateSelector-${blockId}`);\n\nconst useOrderPriceRawValues = (quotes: OrderQuote[], isBuy?: boolean): OrderPriceData => {\n const blockId = useBlockId();\n const { price } = useOrderDataSelector(s => ({\n price: s.price,\n }));\n const isLimitOrder = useOrderDataSelector(s => s.orderType === OrderType.Limit);\n const isIRA = useSelector(account.accountIsIRA);\n const legs = useOrderData(s => LegSelector.LegsByOCC(s, blockId));\n const { strategy, orderType, orderAction } = useOrderData(s => orderDataSelector(s, blockId));\n const match = useOrderData(s => s.validation && s.validation.match);\n\n // const classifyOrderLegs: ClassificationOrderLeg[] = Object.values(legs).reduce((acc, leg) => {\n // if (leg.AssetType === AssetType.Equity) {\n // acc.push({\n // type: \"Shares\",\n // action: leg.Action === OrderAction.Buy ? \"BUY\" : \"SELL\",\n // strike: 0,\n // expiration: new Date(),\n // spreadRatio: leg.SpreadRatio ? leg.SpreadRatio : 0,\n // });\n // return acc;\n // }\n // if (leg.Strike === undefined || leg.Expiration === undefined || leg.SpreadRatio === undefined) {\n // return acc;\n // }\n\n // acc.push({\n // type: leg.OptionType === OptionType.Call ? \"CALL\" : \"PUT\",\n // action: leg.Action === OrderAction.Buy ? \"BUY\" : \"SELL\",\n // strike: leg.Strike,\n // expiration: typeof leg.Expiration.date === \"string\" ? new Date(leg.Expiration.date) : leg.Expiration.date,\n // spreadRatio: leg.SpreadRatio ? leg.SpreadRatio : 0,\n // });\n // return acc;\n // }, [] as ClassificationOrderLeg[]);\n\n // const classifiedStrategy = classifyStrategy(classifyOrderLegs.length === Object.values(legs).length ? classifyOrderLegs : []);\n // const match = Strategies.find(s => s.info.Name === classifiedStrategy.name);\n\n // if the strategy is custom but match is a call or put calendar, then we need to assign order action based on the action of the latest expiring option leg\n const isCustomStrategy = strategy === 'Custom';\n const isCallVerticalMatch = match && match.info.Name === 'Call Vertical';\n const isPutVerticalMatch = match && match.info.Name === 'Put Vertical';\n const isCoveredCallMatch = match && match.info.Name === 'Covered Call';\n const isCallButterflyMatch = match && match.info.Name === 'Call Butterfly';\n const isPutButterflyMatch = match && match.info.Name === 'Put Butterfly';\n const isIronButterflyMatch = match && match.info.Name === 'Iron Butterfly';\n const isIronCondorMatch = match && match.info.Name === 'Iron Condor';\n const isCallCondorMatch = match && match.info.Name === 'Call Condor';\n const isPutCondorMatch = match && match.info.Name === 'Put Condor';\n\n let orderActionValue = orderAction;\n\n if (isCustomStrategy && isCallVerticalMatch) {\n // for a call vertical spread the order is considered a buy if you are buying the lower strike and selling the higher strike\n\n // find the leg with the lower strike\n const lowerStrikeLeg = _.minBy(Object.values(legs), l => l.Strike);\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderActionValue = OrderAction.Buy;\n } else {\n orderActionValue = OrderAction.Sell;\n }\n }\n }\n\n if (isCustomStrategy && isPutVerticalMatch) {\n // for a put vertical spread the order is considered a buy if you are selling the lower strike and buying the higher strike\n\n // find the leg with the lower strike\n const lowerStrikeLeg = _.minBy(Object.values(legs), l => l.Strike);\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderActionValue = OrderAction.Sell;\n } else {\n orderActionValue = OrderAction.Buy;\n }\n }\n }\n\n if (isCustomStrategy && isCoveredCallMatch) {\n // covered call is considered a buy (bullish) if you are buying the stock and selling the call\n // covered call is considered a sell (bearish) if you are selling the stock and buying the call\n const shareLeg = Object.values(legs).find(l => l.AssetType === AssetType.Equity);\n if (shareLeg) {\n if (shareLeg.Action === OrderAction.Buy) {\n orderActionValue = OrderAction.Buy;\n } else {\n orderActionValue = OrderAction.Sell;\n }\n }\n }\n\n if (isCustomStrategy && isCallButterflyMatch) {\n // for a call butterfly the order is considered a buy if you are buying the lower strike and higher strike and selling the middle strike\n\n // find the leg with the lower strike\n const lowerStrikeLeg = _.minBy(Object.values(legs), l => l.Strike);\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderActionValue = OrderAction.Buy;\n } else {\n orderActionValue = OrderAction.Sell;\n }\n }\n }\n\n if (isCustomStrategy && isPutButterflyMatch) {\n // for a put butterfly the order is considered a buy if you are selling the lower strike and higher strike and buying the middle strike\n\n // find the leg with the lower strike\n const lowerStrikeLeg = _.minBy(Object.values(legs), l => l.Strike);\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderActionValue = OrderAction.Buy;\n } else {\n orderActionValue = OrderAction.Sell;\n }\n }\n }\n\n if (isCustomStrategy && isIronButterflyMatch) {\n // for an iron butterfly the order is considered a buy if you are buying the lower strike and higher strike and selling the middle strike\n\n // find the leg with the lower strike\n const lowerStrikeLeg = _.minBy(Object.values(legs), l => l.Strike);\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderActionValue = OrderAction.Sell;\n } else {\n orderActionValue = OrderAction.Buy;\n }\n }\n }\n\n if (isCustomStrategy && isIronCondorMatch) {\n // for an iron condor the order is considered a buy if you are selling the lower strike and higher strike and buying the middle strike\n // find the leg with the lower strike\n const lowerStrikeLeg = _.minBy(Object.values(legs), l => l.Strike);\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderActionValue = OrderAction.Sell;\n } else {\n orderActionValue = OrderAction.Buy;\n }\n }\n }\n\n if (isCustomStrategy && isCallCondorMatch) {\n // for a call condor the order is considered a buy if you are buying the lower strike and higher strike and selling the middle strike\n // find the leg with the lower strike\n const lowerStrikeLeg = _.minBy(Object.values(legs), l => l.Strike);\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderActionValue = OrderAction.Buy;\n } else {\n orderActionValue = OrderAction.Sell;\n }\n }\n }\n\n if (isCustomStrategy && isPutCondorMatch) {\n // for a put condor the order is considered a buy if you are selling the lower strike and higher strike and buying the middle strike\n // find the leg with the lower strike\n const lowerStrikeLeg = _.minBy(Object.values(legs), l => l.Strike);\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderActionValue = OrderAction.Buy;\n } else {\n orderActionValue = OrderAction.Sell;\n }\n }\n }\n\n const orderLegPrices = getOrderLegPrices({\n legs,\n quotes: quotes,\n orderType,\n orderAction: orderActionValue,\n strategy,\n });\n let marginCost = 0;\n\n if (strategy !== undefined && strategy !== 'Custom' && getKnownStrategy(strategy)) {\n const tradingStrategy = getKnownStrategy(strategy);\n if (tradingStrategy && tradingStrategy.profile.MarginRequirements) {\n //TODO: When upgrading typescript then can simplify type check into if statement\n const marginCostFormula = tradingStrategy.profile.MarginRequirements[orderAction];\n\n if (marginCostFormula && Object.values(legs).length > 0 && quotes.length > 0) {\n //TODO: Need to think if 0 is really correct here for price if pice is not set...\n marginCost = marginCostFormula(legs, quotes, isLimitOrder, price ? price : 0, isIRA);\n }\n }\n }\n\n if (strategy !== undefined && strategy === 'Custom' && match && match.profile && match.profile.MarginRequirements) {\n const actionValue = isBuy ? OrderAction.Buy : OrderAction.Sell;\n const tradingStrategy = getKnownStrategy(match.info.Name);\n if (tradingStrategy && tradingStrategy.profile.MarginRequirements) {\n const marginCostFormula = tradingStrategy.profile.MarginRequirements[actionValue];\n\n if (marginCostFormula && Object.values(legs).length > 0 && quotes.length > 0) {\n marginCost = marginCostFormula(legs, quotes, isLimitOrder, price ? price : 0, isIRA);\n }\n }\n }\n\n if (orderLegPrices === undefined) {\n return {\n bid: 0,\n ask: 0,\n mid: 0,\n totalMultiple: 0,\n gcd: 0,\n marginCost: 0,\n };\n }\n const { bid, ask, mid, ...marketPrices } = orderLegPrices;\n return {\n ...marketPrices,\n mid,\n ask,\n bid,\n marginCost,\n };\n};\n\nexport const useOrderPrice = (isBuy?: boolean): OrderPriceData & { includesAllSymbols: boolean } => {\n const blockId = useBlockId();\n const orderSymbols = useOrderBlockData(OrderSymbolListValues);\n const quotes = useOrderData((s: OrderState) => getOrderQuotes(s, blockId));\n const uniqueQuoteSymbols = _.uniq(quotes.map(q => q.Symbol));\n const includesAllSymbols = areArraysEqual(uniqueQuoteSymbols, orderSymbols);\n const { bid, ask, mid, totalMultiple, gcd, marginCost } = useOrderPriceRawValues(quotes, isBuy);\n return { bid, ask, mid, totalMultiple, includesAllSymbols, gcd, marginCost };\n};\n\nexport const useOrderPriceValue = (field: keyof ReturnType) => {\n const quotes = useQuoteBidAskMetadata();\n useWhyDidYouUpdate('useOrderPriceValue', { field, quotes });\n const value = useOrderPriceRawValues(quotes)[field];\n return useMemo(() => value, [value]);\n};\n// export const useSymbolBidAsk = (occSymbol: string) => {\n// const quote = useStateSelector(s => getQuoteMetadata(s, occSymbol || ''));\n// const symbolQuote = useMemo(() => (quote ? { bid: quote.BidPrice, ask: quote.AskPrice } : { bid: undefined, ask: undefined }), [quote]);\n// return symbolQuote;\n// };\n","import { useCallback, useMemo } from 'react';\nimport _ from 'lodash';\nimport { getType } from 'typesafe-actions';\nimport {\n AssetSymbol,\n SaveOptions,\n Legs,\n OrderLegDTO,\n TradingStrategyOrCustom,\n OrderAction,\n TradingStrategy,\n OptionType,\n PositionInfo,\n DebitOrCredit,\n BlockGroupOrderInfo,\n AssetSymbolInfo,\n Expiration,\n Order,\n OrderLeg,\n} from '@tradingblock/types';\nimport { useDispatcher } from '../../../data/global/hooks';\nimport { useOrderBlockSettings } from '../hooks/useOrderSettings';\nimport { useBlockState, useBlockActionDispatchAndGenericActions } from '../../../components/blocks/BlockState';\nimport { DefaultLegs, useOrderDebug } from '../OrderUtilities';\nimport { OrderState, useOrderData } from './OrderState';\nimport { OrderActions, Actions } from './OrderActions';\nimport { useOrderSymbol } from './useOrderState';\nimport { useGroupAssetSymbol } from '../../useGroupState';\nimport { useOrderPrice } from '../hooks/useOrderPrice';\n\nexport function useOrderActions() {\n const log = useOrderDebug('useOrderSymbolData');\n // const assetSymbol = useOrderData(s => s.symbol);\n const assetSymbol = useGroupAssetSymbol();\n const symbol = useOrderSymbol();\n const { dispatcher } = useDispatcher();\n const blockId = useBlockState('blockId');\n const settings = useOrderBlockSettings(blockId);\n const legs = useOrderData((s: OrderState) => s.legs || {});\n\n const { mid } = useOrderPrice();\n\n // const action = useOrderData((s: OrderState) => s.action);\n const [{ updateData, setField }, dispatch] = useBlockActionDispatchAndGenericActions();\n const clearOrder = useCallback(() => {\n return dispatch(Actions.clear({ options: { persist: true } }, { persist: true }));\n }, [dispatch]);\n const setStrike = useCallback(\n (legId: string, strike: number) => {\n return dispatch(Actions.setStrike({ legId, strike, options: { persist: true } }, { persist: true }));\n },\n [dispatch]\n );\n const setSymbol = useCallback(\n (symbol?: AssetSymbol, defaultToEmptyCustomIfSymbolChanges?: boolean, options?: SaveOptions) => {\n return dispatch(\n Actions.setSymbol(\n { symbol, options: { defaultToEmptyCustomIfSymbolChanges, settings } },\n options || { persist: true }\n )\n );\n },\n [dispatch, settings]\n );\n // const addOrderLeg = useCallback(\n // (leg: GroupOrderLeg, strategy: TradingStrategyOrCustom) => {\n // const strat: TradingStrategyNameOrCustom = strategy.info.Name;\n // return dispatch(Actions.addOrderLeg({ leg, strategy: strat }, { persist: true }));\n // },\n // [dispatch]\n // );\n\n const handleOrderGroupChange = useCallback(\n (symbol: AssetSymbol, orderInfo: BlockGroupOrderInfo) => {\n return dispatch(Actions.handleOrderGroupChange({ ...orderInfo, symbol, options: { persist: true }, settings }));\n },\n [dispatch, settings]\n );\n const setLegAction = useCallback(\n (legId: string, action?: OrderAction, options?: SaveOptions) => {\n return dispatch(Actions.setLegAction({ legId, action, options }, { persist: true }));\n },\n [dispatch]\n );\n const setExpiration = useCallback(\n (legId: string, expiration?: Expiration) => {\n return dispatch(Actions.setExpiration({ legId, expiration }, { persist: true }));\n },\n [dispatch]\n );\n const setOptionType = useCallback(\n (legId: string, optionType: OptionType) => {\n return dispatch(Actions.setOptionType({ legId, optionType }, { persist: true }));\n },\n [dispatch]\n );\n const setLegQuantity = useCallback(\n (legId: string, quantity: number) => {\n return dispatch(Actions.setLegQuantity({ legId, quantity }, { persist: true }));\n },\n [dispatch]\n );\n const setIsDirty = useCallback(\n (dirty: boolean) => {\n updateData({ isDirty: dirty });\n },\n [updateData]\n );\n const setOrderAction = useCallback(\n (action: OrderAction) => {\n return dispatch(Actions.setOrderAction({ action }, { persist: true }));\n },\n [dispatch]\n );\n const updateStateData = useMemo(\n () => (value: Partial, options?: SaveOptions | undefined) => {\n log('updateState %o', value);\n return updateData({ ...value }, options);\n },\n [updateData, log]\n );\n\n const setStrategy = useCallback(\n (\n strat: TradingStrategyOrCustom,\n options?: SaveOptions & { action?: OrderAction; reverseLegs?: boolean; isDirty?: boolean }\n ) => {\n const { action, reverseLegs, isDirty } = options || {\n action: undefined,\n reverseLegs: undefined,\n isDirty: undefined,\n };\n // allow missing symbol for 'Custom' strategy\n if (assetSymbol || strat.info.Name === 'Custom') {\n dispatch(\n Actions.setStrategy(\n { action, reverseLegs, isDirty, strategy: strat, symbol: assetSymbol, settings },\n { persist: true }\n )\n );\n } else {\n console.error('asset symbol is empty!');\n }\n dispatch({ type: getType(Actions.setPrice), payload: { price: undefined, updateCreditOrDebit: true, mid: mid } });\n dispatch({ type: getType(Actions.setStopPrice), payload: { price: undefined, updateCreditOrDebit: false } });\n },\n [assetSymbol, dispatch, settings] // , updateStateData, symbol, legs\n );\n const setMatchingStrategies = useCallback(\n (strat: TradingStrategy[], options?: SaveOptions) => {\n if (symbol) {\n updateStateData({ matchingStrategy: strat }, options);\n }\n },\n [updateStateData, symbol]\n );\n const setAction = useCallback(\n (actionVal: OrderAction, options?: SaveOptions) => {\n const updatedLegs: Legs = _.reduce(\n legs,\n (acc: Legs, val: OrderLegDTO, key: string): Legs => ({\n ...acc,\n [val.Id || key]: { ...val, Action: val.Action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy },\n }),\n {}\n );\n updateStateData({ action: actionVal, legs: updatedLegs }, options);\n },\n [updateStateData, legs]\n );\n const startValidation = useCallback(\n (strategy?: TradingStrategy) => {\n dispatch({ type: 'startValidation', payload: { strategy } });\n },\n [dispatch]\n );\n const setPositionInfo = useCallback((info: PositionInfo) => dispatch(Actions.setPositionInfo({ info })), [dispatch]);\n\n const changeSymbol = useCallback(\n (symbol: AssetSymbolInfo, symbolValue: AssetSymbol, options?: SaveOptions, symbolMismatch?: boolean) => {\n const baseLegs = _.keys(legs).length > 0 ? legs : DefaultLegs({}, symbol);\n\n dispatcher.block.setQuoteSubscription(blockId, [symbolValue.symbol]);\n\n const updatedData = {\n price: undefined,\n symbol: symbolValue,\n legs: !symbolMismatch\n ? _.reduce(\n baseLegs,\n (acc: Legs, leg: OrderLegDTO, id: string) => {\n return {\n ...acc,\n [id]: {\n ...leg,\n SymbolName: symbolValue.symbol,\n Symbol: symbolValue.symbol,\n UnderlyingSymbol: symbolValue.symbol,\n },\n };\n },\n {}\n )\n : {},\n };\n updateStateData(updatedData, options);\n },\n [blockId, legs, updateStateData, dispatcher]\n );\n const updateField: typeof setField = useCallback(\n (field: K, value: OrderState[K], options?: SaveOptions) =>\n setField(field, value, options),\n [setField]\n );\n const setQuantity = useCallback(\n (quantity: number, options?: SaveOptions) => {\n return dispatch(Actions.setQuantity({ quantity }, { persist: true }));\n },\n [dispatch]\n );\n const orderPlaced = useCallback(() => dispatch({ type: getType(Actions.orderPlaced), payload: {} }), [dispatch]);\n const setPrice = useCallback(\n (price: number | undefined, updateCreditOrDebit: boolean, negativePrice?: boolean) =>\n dispatch({ type: getType(Actions.setPrice), payload: { price, updateCreditOrDebit, negativePrice } }),\n [dispatch]\n );\n const setStopPrice = useCallback(\n (price?: number) => dispatch({ type: getType(Actions.setStopPrice), payload: { price } }),\n [dispatch]\n );\n const setDebitCredit = useCallback(\n (debitCredit?: DebitOrCredit) => dispatch(Actions.setDebitCredit({ debitCredit }, { persist: true })),\n [dispatch]\n );\n\n const removeQuote = useCallback((key: string) => dispatch({ type: getType(Actions.removeQuote), payload: key }), [\n dispatch,\n ]);\n\n const setSubaccountId = useCallback((subAccountId) => {\n dispatch(Actions.setSubaccountId({ subaccountId: subAccountId }));\n }, [dispatch])\n\n const setOrder = useCallback((order: Order) => {\n dispatch(Actions.setOrder({ order }));\n }, [dispatch]);\n\n return {\n handleOrderGroupChange,\n removeQuote,\n setDebitCredit,\n setSubaccountId,\n setPrice,\n setStopPrice,\n orderPlaced,\n setQuantity,\n setPositionInfo,\n setOrderAction,\n clearOrder,\n startValidation,\n setSymbol,\n setOptionType,\n setLegQuantity,\n setExpiration,\n setStrike,\n setStrategy,\n updateField,\n setAction,\n changeSymbol,\n setIsDirty,\n setMatchingStrategies,\n setLegAction,\n setOrder,\n };\n}\n","import createCachedSelector from 're-reselect';\nimport { DataState } from '../state';\nimport _ from 'lodash';\n\nexport const IsWarningSymbol = createCachedSelector(\n (s: DataState, underlyingSymbol?: string) => s.symbols.warningSymbols,\n (s: DataState, underlyingSymbol?: string) => underlyingSymbol,\n (warningSymbols, symbol) => {\n if (symbol === undefined) {\n return false;\n }\n if (!warningSymbols) {\n return false;\n }\n return warningSymbols.map(s => s.toLocaleLowerCase()).find(s => s === symbol.toLocaleLowerCase()) ? true : false;\n }\n)((s, underlyingSymbol) => underlyingSymbol || 'UNKNOWN');\n","import useAudio from 'react-use/lib/useAudio';\n\nexport const audioSrc = {\n success: require('../assets/sounds/ok.mp3'),\n error: require('../assets/sounds/error.mp3'),\n updates: require('../assets/sounds/updates.mp3'),\n};\n\nexport const useSounds = () => {\n const [successAudio, , successControls] = useAudio({\n src: audioSrc.success,\n });\n const [errorAudio, , errorControls] = useAudio({\n src: audioSrc.error,\n });\n return {\n successAudio,\n successControls,\n errorAudio,\n errorControls,\n };\n};\n","import { useMemo } from 'react';\nimport _ from 'lodash';\nimport { OrderType, OrderAction, TradingStrategyNameOrCustom, DebitOrCredit, AssetType } from '@tradingblock/types';\nimport { useOrderDataSelector } from '../state/OrderState';\nimport { useOrderPrice } from './useOrderPrice';\n\nconst calculateStrategyTotal = (\n isLimitOrder: boolean,\n orderType: OrderType,\n orderAction: OrderAction,\n ask: number,\n bid: number,\n quantity: number,\n totalMultiple: number,\n gcd: number,\n limitPrice: number | undefined,\n stopPrice: number | undefined,\n strategy: TradingStrategyNameOrCustom | undefined,\n debitOrCredit: DebitOrCredit,\n isBuy: boolean | undefined\n) => {\n let orderPrice: number | undefined = 0;\n let execDebitOrCredit: DebitOrCredit | undefined = undefined;\n\n if (orderType === OrderType.Stop_Market) {\n orderPrice = stopPrice;\n } else if (orderType === OrderType.Stop_Limit) {\n orderPrice = limitPrice;\n } else if (isLimitOrder && limitPrice !== undefined) {\n if (isBuy || isBuy === undefined) {\n if (debitOrCredit === DebitOrCredit.Debit) {\n orderPrice = Math.min(ask, limitPrice);\n } else {\n orderPrice = Math.min(ask, -limitPrice);\n }\n if (orderPrice >= 0.0) {\n execDebitOrCredit = DebitOrCredit.Debit;\n } else {\n execDebitOrCredit = DebitOrCredit.Credit;\n }\n } else {\n if (debitOrCredit === DebitOrCredit.Credit) {\n orderPrice = Math.max(bid, limitPrice);\n } else {\n orderPrice = Math.max(bid, -limitPrice);\n }\n if (orderPrice >= 0.0) {\n execDebitOrCredit = DebitOrCredit.Credit;\n } else {\n execDebitOrCredit = DebitOrCredit.Debit;\n }\n }\n } else if (isLimitOrder) {\n orderPrice = undefined;\n } else {\n orderPrice = isBuy ? ask : bid;\n }\n\n const total = orderPrice && _.isFinite(orderPrice) ? quantity * orderPrice * totalMultiple * gcd : 0;\n return {\n total: Math.abs(total),\n execDebitOrCredit,\n };\n};\n\nexport const useOrderTotal = () => {\n const orderAction = useOrderDataSelector(s => s.action);\n const orderType = useOrderDataSelector(s => s.orderType);\n const isLimitOrder = useOrderDataSelector(s => s.orderType === OrderType.Limit);\n const strategy = useOrderDataSelector(s => s.strategy);\n const match = useOrderDataSelector(s => s.validation && s.validation.match);\n const legs = useOrderDataSelector(s => s.legs);\n const isCustom = strategy === 'Custom';\n const isMatchCalendarStrategy =\n isCustom && match && (match.info.Name === 'Call Calendar' || match.info.Name === 'Put Calendar');\n const isCallVerticalMatch = isCustom && match && match.info.Name === 'Call Vertical';\n const isPutVerticalMatch = isCustom && match && match.info.Name === 'Put Vertical';\n const isCoveredCallMatch = isCustom && match && match.info.Name === 'Covered Call';\n const isCallButterflyMatch = match && match.info.Name === 'Call Butterfly';\n const isPutButterflyMatch = match && match.info.Name === 'Put Butterfly';\n const isIronButterflyMatch = match && match.info.Name === 'Iron Butterfly';\n const isIronCondorMatch = match && match.info.Name === 'Iron Condor';\n const isCallCondorMatch = match && match.info.Name === 'Call Condor';\n const isPutCondorMatch = match && match.info.Name === 'Put Condor';\n\n const latestExpiringOptionLeg = useMemo(() => {\n if (isMatchCalendarStrategy && legs) {\n return _.maxBy(Object.values(legs), l => l.Expiration && l.Expiration.date);\n }\n return undefined;\n }, [isMatchCalendarStrategy, legs]);\n\n const lowerStrikeLeg = useMemo(() => {\n if (\n (isCallVerticalMatch ||\n isPutVerticalMatch ||\n isCallButterflyMatch ||\n isPutButterflyMatch ||\n isIronButterflyMatch ||\n isIronCondorMatch ||\n isCallCondorMatch ||\n isPutCondorMatch) &&\n legs\n ) {\n return _.minBy(Object.values(legs), l => l.Strike);\n }\n return undefined;\n }, [\n isCallVerticalMatch,\n isPutVerticalMatch,\n isCallButterflyMatch,\n isPutButterflyMatch,\n isIronButterflyMatch,\n isIronCondorMatch,\n isCallCondorMatch,\n isPutCondorMatch,\n legs,\n ]);\n\n const shareLeg = useMemo(() => {\n if (isCoveredCallMatch && legs) {\n return _.find(Object.values(legs), l => l.AssetType === AssetType.Equity);\n }\n return undefined;\n }, [isCoveredCallMatch, legs]);\n const { quantity, debitCredit, price, stopPrice } = useOrderDataSelector(s => ({\n price: s.price,\n stopPrice: s.stopPrice,\n quantity: _.isFinite(s.quantity) ? s.quantity : 1,\n debitCredit: s.debitCredit,\n }));\n const isBuy = useMemo(() => {\n return !isCustom\n ? orderAction === OrderAction.Buy\n : isMatchCalendarStrategy\n ? orderAction === OrderAction.Buy\n : isCallVerticalMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Buy\n : isPutVerticalMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Sell\n : isCoveredCallMatch\n ? shareLeg && shareLeg.Action === OrderAction.Buy\n : isCallButterflyMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Buy\n : isPutButterflyMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Buy\n : isIronButterflyMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Buy\n : isIronCondorMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Sell\n : isCallCondorMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Buy\n : isPutCondorMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Buy\n : _.every(legs, l => l.Action === OrderAction.Buy) || _.some(legs, l => l.Action === OrderAction.Buy);\n }, [\n isCustom,\n orderAction,\n latestExpiringOptionLeg,\n lowerStrikeLeg,\n shareLeg,\n legs,\n isCallVerticalMatch,\n isPutVerticalMatch,\n isCoveredCallMatch,\n isCallButterflyMatch,\n isPutButterflyMatch,\n isIronButterflyMatch,\n isIronCondorMatch,\n ]);\n\n const { ask, bid, totalMultiple, gcd, marginCost } = useOrderPrice(isBuy);\n\n return useMemo(() => {\n const totalResults = calculateStrategyTotal(\n isLimitOrder,\n orderType,\n orderAction,\n ask,\n bid,\n quantity,\n totalMultiple,\n gcd,\n price !== undefined ? Math.abs(price) : price,\n stopPrice !== undefined ? Math.abs(stopPrice) : stopPrice,\n strategy,\n debitCredit === undefined ? DebitOrCredit.Debit : debitCredit,\n isBuy\n );\n\n return { ...totalResults, debitCredit, marginCost: marginCost * quantity * totalMultiple * gcd };\n }, [\n isLimitOrder,\n orderAction,\n ask,\n bid,\n quantity,\n totalMultiple,\n gcd,\n price,\n isCustom,\n debitCredit,\n stopPrice,\n isBuy,\n legs,\n strategy,\n ]);\n};\n","import { useState, useCallback, useMemo, useEffect } from 'react';\r\nimport _ from 'lodash';\r\nimport constate from 'constate';\r\nimport useAudio from 'react-use/lib/useAudio';\r\nimport {\r\n TradingblockOrder,\r\n DebitOrCredit,\r\n Order,\r\n OrderLeg,\r\n OrderClass,\r\n OrderType,\r\n Durations,\r\n UserLevelTypes,\r\n UserProfileLevel,\r\n OrderStrategyType,\r\n AssetType,\r\n} from '@tradingblock/types';\r\nimport { orderToReplaceOrder } from '@tradingblock/api';\r\nimport { useOrderActions } from '../../state/useOrderActions';\r\nimport { useStateSelector } from '../../../../data/global/dataSelectors';\r\nimport { IsWarningSymbol } from '../../../../data/global/selectors/symbolSelector';\r\nimport { useDispatcher } from '../../../../data/global/hooks';\r\nimport { OrderActions } from '../../../../data/global/actions';\r\nimport { useOrderSettings } from '../../hooks/useOrderSettings';\r\nimport { useSounds } from '../../../../hooks/useSounds';\r\nimport { useOrderTotal } from '../../hooks/useOrderTotal';\r\nimport { PreviewResult } from './PreviewPopup';\r\nimport { legToDto } from '../../OrderUtilities';\r\nimport { useDashboardSettings } from '../../../../hooks/useDashboardSettings';\r\nimport { OrderState, useOrderBlockData } from '../../state/OrderState';\r\nimport { OrderSelectors } from '../../state/OrderSelector';\r\nimport { set } from 'numeral';\r\nimport { useBlockActions, useBlockId } from '../../../../components/blocks/BlockState';\r\n\r\nexport type PreviewActions = 'execute' | 'replace' | 'error';\r\n\r\nexport const useOrderPreview = () => {\r\n const [isPreview, setIsPreview] = useState(false);\r\n\r\n const { successControls, errorControls, successAudio, errorAudio } = useSounds();\r\n const { disableSounds } = useOrderSettings();\r\n const { orderPlaced } = useOrderActions();\r\n const { muteAllSounds } = useDashboardSettings();\r\n const togglePreview = useCallback(() => setIsPreview(!isPreview), [isPreview]);\r\n\r\n const previewClosed = useCallback(\r\n (result: PreviewResult) => {\r\n setIsPreview(false);\r\n if (disableSounds !== true && result.action === 'order-placed') {\r\n !muteAllSounds &&\r\n (() => {\r\n const play = successControls.play();\r\n if (play !== undefined) {\r\n play.catch(() => {\r\n // Do nothing\r\n //TODO: Determine if we want to warn the user that the sound failed to play\r\n });\r\n }\r\n })();\r\n orderPlaced();\r\n } else if (disableSounds !== true && result.action === 'error') {\r\n !muteAllSounds &&\r\n (() => {\r\n const play = errorControls.play();\r\n if (play !== undefined) {\r\n play.catch(() => {\r\n // Do nothing\r\n //TODO: Determine if we want to warn the user that the sound failed to play\r\n });\r\n }\r\n })();\r\n } else {\r\n //do nothing if popup is just closed\r\n }\r\n },\r\n [setIsPreview, successControls, errorControls, disableSounds]\r\n );\r\n\r\n return useMemo(() => ({ isPreview, togglePreview, previewClosed, audio: { successAudio, errorAudio } }), [\r\n isPreview,\r\n togglePreview,\r\n previewClosed,\r\n successAudio,\r\n errorAudio,\r\n ]);\r\n};\r\n\r\nexport const getOrderPreviewLegs = (order: TradingblockOrder | Order) => {\r\n const hasMultipleLegs = order.Legs && order.Legs.length > 1;\r\n\r\n return _(order.Legs)\r\n .filter(l => {\r\n if (_.isNil(l.Symbol)) {\r\n return false;\r\n }\r\n if (hasMultipleLegs) {\r\n return l.Symbol && l.SpreadRatio ? true : false;\r\n } else if (l.Symbol) {\r\n return true;\r\n }\r\n return false;\r\n })\r\n .map(legToDto)\r\n .value();\r\n};\r\n\r\nconst adjustOrderQuantitiesAndRatios = (order: Order) => {\r\n if (!order) {\r\n return [0, []];\r\n }\r\n // function to find greatest common divisor\r\n const gcd = (a: number, b: number): number => {\r\n return b === 0 ? a : gcd(b, a % b);\r\n };\r\n\r\n // function to find highest common factor\r\n const findHCF = (arr: number[]): number => {\r\n return arr.reduce((a, b) => gcd(a, b));\r\n };\r\n\r\n const hcf = findHCF(order.Legs.map(l => l.SpreadRatio || 1));\r\n\r\n const adjustedOverallQuantity = order.Quantity * hcf;\r\n\r\n const adjustedRatios = order.Legs.map(l => {\r\n const ratio = l.SpreadRatio || 1;\r\n const adjustedRatio = ratio / hcf;\r\n return {\r\n ...l,\r\n SpreadRatio: adjustedRatio,\r\n Quantity: adjustedOverallQuantity * adjustedRatio,\r\n };\r\n });\r\n\r\n return [adjustedOverallQuantity, adjustedRatios];\r\n};\r\n\r\nfunction finalizeOrder(\r\n order: T,\r\n accountId?: number,\r\n debitOrCredit?: DebitOrCredit,\r\n subaccountId?: number\r\n): T {\r\n // determine the strategy of the order\r\n const isCustom = order.StrategyType === 'Undefined';\r\n // determine if all legs are option legs\r\n const allOptionLegs = order.Legs.every(l => l.AssetType === AssetType.Option);\r\n if (isCustom && allOptionLegs && order && order.Legs && order.Legs.length > 1) {\r\n const [adjustedOverallQuantity, adjustedRatios] = adjustOrderQuantitiesAndRatios(order);\r\n\r\n return {\r\n ...order,\r\n AccountId: accountId,\r\n DebitCredit: debitOrCredit,\r\n SubaccountId: subaccountId,\r\n Quantity: adjustedOverallQuantity,\r\n Legs: adjustedRatios,\r\n };\r\n }\r\n\r\n return {\r\n ...order,\r\n AccountId: accountId,\r\n DebitCredit: debitOrCredit,\r\n SubaccountId: subaccountId,\r\n };\r\n}\r\n\r\nexport const useOrderPreviewOrder = (action: PreviewActions) => {\r\n const order = useOrderBlockData(OrderSelectors.order);\r\n const [initialPrice, setInitialPrice] = useState();\r\n const [orderId, setOrderId] = useState();\r\n const { setStopPrice, setPrice, setDebitCredit, setSubaccountId, setOrder: setOrderCallback } = useOrderActions();\r\n const accountId = useStateSelector(state => state.account.accountId);\r\n const profile = useStateSelector(state => state.account.profile);\r\n const userLevel = profile && profile.current && profile.current.level;\r\n const isAboveAccountLevel = userLevel && userLevel !== UserProfileLevel.Account;\r\n\r\n useEffect(() => {\r\n const orderPrice = order ? order.Price : undefined;\r\n const currId = order ? order.OrderId : undefined;\r\n if (order && (initialPrice === undefined || orderId !== currId) && orderPrice) {\r\n setInitialPrice(orderPrice);\r\n setOrderId(currId);\r\n }\r\n }, [order, initialPrice]);\r\n\r\n // const orderlegs = useOrderData(orderLegsSelector);\r\n const legs = useMemo(() => {\r\n if (order) {\r\n return getOrderPreviewLegs(order);\r\n }\r\n return [];\r\n }, [order]);\r\n\r\n const totalResults = useOrderTotal();\r\n const isWarningSymbol = useStateSelector(s => IsWarningSymbol(s, order ? order.UnderlyingSymbol : ''));\r\n\r\n const isTradingblockOrder = useMemo(() => {\r\n if (order) {\r\n return (order as TradingblockOrder).kind === 'order';\r\n }\r\n return false;\r\n }, [order]);\r\n\r\n const finalOrder = useMemo(() => {\r\n if (_.isNil(order)) {\r\n return undefined;\r\n }\r\n const debitOrCredit = order.DebitCredit || totalResults.debitCredit;\r\n // if the order strategy type contains vertical, calendar, butterfly, or condor we need to set the strategy type accordingly\r\n // currently the backend does not differentiate between call and put verticals/calendars/butterflies/condors so we need to do it here\r\n return finalizeOrder(\r\n {\r\n ...order,\r\n BypassWarnings: isWarningSymbol,\r\n StrategyType:\r\n order.StrategyType && _.includes(order.StrategyType, 'Vertical')\r\n ? OrderStrategyType.Vertical\r\n : order.StrategyType && _.includes(order.StrategyType, 'Calendar')\r\n ? OrderStrategyType.Calendar\r\n : order.StrategyType && order.StrategyType === OrderStrategyType.Call\r\n ? OrderStrategyType.Single\r\n : order.StrategyType && order.StrategyType === OrderStrategyType.Put\r\n ? OrderStrategyType.Single\r\n : order.StrategyType && _.includes(order.StrategyType, 'Butterfly')\r\n ? OrderStrategyType.Butterfly\r\n : order.StrategyType && _.includes(order.StrategyType, 'Condor')\r\n ? OrderStrategyType.Condor\r\n : order.StrategyType,\r\n },\r\n order.AccountId || accountId,\r\n debitOrCredit,\r\n order.SubaccountId\r\n );\r\n }, [order]);\r\n\r\n const changeSubaccountId = useCallback(\r\n (id?: number) => {\r\n if (order === undefined) {\r\n return;\r\n }\r\n setSubaccountId(id);\r\n },\r\n [setSubaccountId, order]\r\n );\r\n\r\n const changeLimitPrice = useCallback(\r\n (price: number | null) => {\r\n if (order === undefined) {\r\n return;\r\n }\r\n if (price !== null) {\r\n setPrice(price, false);\r\n }\r\n },\r\n [order]\r\n );\r\n\r\n const changeStopPrice = useCallback(\r\n (price: number | null) => {\r\n if (order === undefined) {\r\n return;\r\n }\r\n if (price !== null) {\r\n setStopPrice(price);\r\n }\r\n },\r\n [order]\r\n );\r\n\r\n const changeDebitCredit = useCallback(\r\n (val: DebitOrCredit | undefined) => {\r\n if (order === undefined) {\r\n return;\r\n }\r\n setDebitCredit(val);\r\n },\r\n [order]\r\n );\r\n\r\n const { dispatch } = useDispatcher();\r\n const onSave = useCallback(() => {\r\n if (finalOrder) {\r\n // If the user is an admin, representative, or advisor we can bypass warnings by default\r\n if (isAboveAccountLevel) {\r\n finalOrder.BypassWarnings = true;\r\n }\r\n // need to remove SpreadRatio from order leg of single legged orders prior to sending to the backend\r\n if (finalOrder.Legs && finalOrder.Legs.length === 1) {\r\n finalOrder.Legs[0].SpreadRatio = undefined;\r\n }\r\n if (action === 'execute' || action === undefined) {\r\n dispatch(OrderActions.requestPlaceOrder(finalOrder));\r\n } else if (action === 'replace') {\r\n dispatch(OrderActions.requestChange(orderToReplaceOrder(finalOrder)));\r\n }\r\n if (finalOrder.Price) {\r\n setInitialPrice(finalOrder.Price);\r\n }\r\n }\r\n }, [order, action, isWarningSymbol, totalResults, accountId, dispatch]);\r\n\r\n const setOrder = useCallback(\r\n (order: Order) => {\r\n setOrderCallback(order);\r\n },\r\n [order]\r\n );\r\n\r\n return {\r\n order,\r\n legs,\r\n action,\r\n initialPrice,\r\n isWarningSymbol,\r\n isTradingblockOrder,\r\n setOrder,\r\n changeSubaccountId,\r\n changeDebitCredit,\r\n changeLimitPrice,\r\n changeStopPrice,\r\n onSave,\r\n };\r\n};\r\n","import { createSelector } from 'reselect';\nimport createCachedSelector from 're-reselect';\nimport _ from 'lodash';\nimport { expirationValue } from '../../../utilities/date';\nimport { StrikeByExpirationSymbolMap, ExpirationStrike } from '../../../types';\nimport { DataState } from '../state';\nimport { Expiration } from '@tradingblock/types';\nexport const getExpirations = createCachedSelector(\n (state: DataState) => state.expirations,\n (_state: DataState, symbol: string) => symbol,\n (state, symbol) => {\n const symbolExp = state[symbol] || {\n isFetching: false,\n expirations: undefined,\n };\n return symbolExp;\n }\n)((_, symbol) => symbol);\nexport const ExpirationSelectors = {\n expirations: createCachedSelector(\n (state: DataState) => state.expirations,\n (_state: DataState, symbol: string) => symbol,\n (state, symbol) => {\n const symbolExp = state[symbol] || {\n isFetching: false,\n expirations: undefined,\n };\n return symbolExp.expirations ? symbolExp.expirations : undefined;\n }\n )((_, symbol) => symbol),\n isFetching: createCachedSelector(\n (state: DataState) => state.expirations,\n (_state: DataState, symbol: string) => symbol,\n (state, symbol) => {\n const symbolExp = state[symbol] || {\n isFetching: false,\n expirations: undefined,\n };\n return symbolExp.isFetching;\n }\n )((_, symbol) => symbol),\n};\nconst getStrikeState = (\n state: {\n [symbol: string]: StrikeByExpirationSymbolMap;\n },\n symbol: string,\n expiration: Expiration\n) => {\n const expKey = expirationValue(expiration);\n const symbolState = state[symbol] || {};\n return symbolState[expKey] || { isFetching: false, strikes: undefined, symbol, expiration };\n};\n\nexport const StrikeSelectors = {\n expirationsBySymbol: createSelector(\n (state: DataState) => state,\n (_state: DataState, symbol: string) => symbol,\n (state: DataState, symbol: string) => {\n const symbolStrikes: ExpirationStrike[] =\n state.strikes && state.strikes[symbol] ? _.values(state.strikes[symbol]) : [];\n return _.map(symbolStrikes, ss => ss.expiration);\n }\n ),\n strikesBySymbol: createCachedSelector(\n (state: DataState) => state.strikes,\n (_state: DataState, symbol: string) => symbol,\n (state: { [symbol: string]: StrikeByExpirationSymbolMap }, symbol: string): ExpirationStrike[] => {\n const symbolStrikes: ExpirationStrike[] = state && state[symbol] ? _.values(state[symbol]) : [];\n return symbolStrikes;\n }\n )((_, symbol) => symbol),\n strikes: createCachedSelector(\n (state: DataState) => state.strikes,\n (_state: DataState, symbolExp: { symbol: string; expiration: Expiration }) => symbolExp,\n (state, symbolExp) => {\n const { expiration, symbol } = symbolExp;\n return getStrikeState(state, symbol, expiration).strikes;\n }\n )((_, { symbol, expiration }) => `${symbol}-${expirationValue(expiration)}`),\n isFetching: createCachedSelector(\n (state: DataState) => state.strikes,\n (_state: DataState, symbolExp: { symbol: string; expiration: Expiration }) => symbolExp,\n (state, symbolExp) => {\n const { expiration, symbol } = symbolExp;\n return getStrikeState(state, symbol, expiration).isFetching;\n }\n )((_, { symbol, expiration }) => `${symbol}-${expirationValue(expiration)}`),\n anyFetching: createCachedSelector(\n (state: DataState) => state.strikes,\n (state: DataState, symbol: string) => symbol,\n (\n strState: {\n [symbol: string]: StrikeByExpirationSymbolMap;\n },\n symbol: string\n ) => {\n const strikeValues = strState[symbol] || {};\n return _.some(strikeValues, (v, k) => v.isFetching === true);\n }\n )((_, symbol) => symbol),\n};\n","import { useOrderData } from '../state/OrderState';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { useOrderSymbol } from '../state/useOrderState';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { ExpirationSelectors, StrikeSelectors } from '../../../data/global/selectors/expirationStrikeSelector';\nimport { DataState } from '../../../data/global/state';\n\nexport const useOrderStatus = () => {\n const isComplete = useOrderData(OrderSelectors.isComplete);\n const symbol = useOrderSymbol();\n const areFetchingExpirations = useStateSelector(state => ExpirationSelectors.isFetching(state, symbol || ''));\n const areStrikesFetching = useStateSelector((state: DataState) => StrikeSelectors.anyFetching(state, symbol || ''));\n const isLoading = areStrikesFetching || areFetchingExpirations;\n return {\n complete: isComplete,\n loading: isLoading,\n };\n};\n","import React, { useEffect, useRef, useState } from 'react';\nimport InputNumber, { InputNumberProps } from 'rc-input-number';\nimport { useOrderData } from '../state/OrderState';\nimport { useOrderStatus } from '../data/useOrderStatus';\n\nexport interface DEPRECATED_PriceComponentProps\n extends Omit, 'formatter' | 'parser' | 'precision' | 'step'> {\n isCustomStrategyOrCalendar?: boolean;\n}\n\nexport function DEPRECATED_PriceComponent({ isCustomStrategyOrCalendar, ...props }: PriceComponentProps) {\n const priceInputNumberRef = useRef(null);\n\n // Odd hack, but basically InputNumber takes control over the input, and does not listen to reference updates as it\n // Alters it according to the source code. The issue is that when we clear the value, it does not update the input\n // So we have to manually update the input when the value changes\n useEffect(() => {\n if (priceInputNumberRef.current && props.value === undefined) {\n priceInputNumberRef.current.value = '';\n }\n }, [priceInputNumberRef, props.value]);\n\n const { price } = useOrderData(s => ({ price: s.price }));\n\n return (\n
    \n = 0 ? 0.01 : -0.01) : 0.01}\n formatter={(value: number | string | undefined, { userTyping, input }): string | undefined | null => {\n // Handle value and input slippage when the user is entering a value and the input is slipping behind\n if (value === '' && (input === '' || input === '$' || input === '0')) {\n return '';\n }\n\n // Handles when the user is typing and the input is slipping behind on deletion\n if (value === '' && userTyping !== true) {\n if (input === '$0.01') {\n return '$0.00';\n }\n return '';\n }\n\n // Handle when the user is entering input as it can be handled different\n if (userTyping) {\n // If the user is typing, return the value with a dollar sign and 2 decimal places\n return `${input !== '' &&\n input !== '$' &&\n input !== '.' &&\n input !== '0.' &&\n input !== '0' &&\n input !== '$0.00' &&\n input !== '-'\n ? input\n : value !== '0' && value !== ''\n ? isCustomStrategyOrCalendar // if isCustomStrategyOrCalendar is true, we allow negative\n ? typeof value === 'number'\n ? value\n : parseFloat(value === undefined || value === '' ? '0' : value)\n : Math.abs(\n typeof value === 'number' ? value : parseFloat(value === undefined || value === '' ? '0' : value)\n )\n : '$0.00'\n }`;\n }\n\n // If the user is not inputting anything\n if (value === undefined) {\n return '';\n }\n // Output the value of the value passed in with a dollar sign and 2 decimal places and removes ending two 00 if they exist on 4th decimal place\n // log the output prior to returning to see what is being returned\n return `$${Math.abs(typeof value === 'number' ? value : parseFloat(value === '' ? '0' : value))\n .toFixed(4)\n .replace(/(\\.\\d{2})(0*)$/, '$1')}`;\n }}\n parser={(displayValue: string | undefined): number => {\n return displayValue ? Number(displayValue.replace(/[$\\s,]/g, '')) : 0;\n }}\n {...props}\n />\n
    \n );\n}\n\n\n/**\n * Props for the PriceComponent.\n * @typedef {Object} PriceComponentProps\n * @property {string} [placeholder] - The placeholder text for the input field.\n * @property {(value: number | null) => void} onChange - Callback function that is called when the input value changes.\n * @property {boolean} [isCustomStrategyOrCalendar] - Flag indicating if custom strategy or calendar logic is applied.\n * @property {boolean} [disabled] - Flag indicating if the input should be disabled.\n * @property {number | null} [value] - The initial value of the input.\n */\nexport interface PriceComponentProps {\n placeholder?: string;\n onChange: (value: number | null) => void;\n isCustomStrategyOrCalendar?: boolean;\n disabled?: boolean;\n value?: number | null;\n}\n\n/**\n * A component for inputting price values.\n * @param {PriceComponentProps} props - The props for the component.\n */\nexport default function PriceComponent({\n placeholder,\n isCustomStrategyOrCalendar,\n onChange: valueFinalized,\n disabled,\n value,\n}: PriceComponentProps) {\n const [displayValue, setDisplayValue] = useState('');\n const [priceValue, setPriceValue] = useState(value || 0);\n const priceInputNumberRef = useRef(null);\n const { complete } = useOrderStatus();\n\n // When the value prop changes, format it and update state.\n useEffect(() => {\n if (value === null) {\n setDisplayValue('$0.00'); // Clear display if value is null or undefined\n setPriceValue(0);\n valueFinalized(0)\n } else if (value === undefined) {\n setDisplayValue(''); // Clear display if value is null or undefined\n setPriceValue(0);\n } else {\n // Format value for display, removing trailing \"00\" if present\n let formattedDisplayValue = `$${Math.abs(value).toFixed(4)}`;\n if (formattedDisplayValue.endsWith(\"00\")) {\n formattedDisplayValue = formattedDisplayValue.slice(0, -2);\n }\n setDisplayValue(formattedDisplayValue);\n setPriceValue(value); // Store the actual numeric value\n }\n }, [value]);\n\n /**\n * Handle input change events.\n * @param {React.ChangeEvent} e - The change event.\n */\n const onInputChanged = (e: React.ChangeEvent) => {\n const inputValue = e.target.value;\n // Define regex based on whether custom strategy or calendar is enabled\n const regex = new RegExp(/^\\$?\\d*(\\.\\d{0,4})?$/);\n \n // Check for multiple leading zeros and replace them with a single zero\n let sanitizedInputValue = inputValue.replace(/^\\$?0+/, (match) => match === '$0' || match === '$00' ? '$0' : '0');\n\n if (sanitizedInputValue.length > 20) {\n return;\n }\n\n // Update state if input value matches allowed format\n if (sanitizedInputValue === '$' || regex.test(sanitizedInputValue)) {\n const numericValue = parseFloat(inputValue.replace(/[^\\d.-]/g, '')) || 0;\n setDisplayValue(sanitizedInputValue);\n setPriceValue(numericValue);\n }\n };\n\n /**\n * Format the input value when the input field loses focus.\n * @param {React.FocusEvent} e - The focus event.\n */\n const formatOnBlur = (e: React.FocusEvent) => {\n let inputValue = e.target.value.replace(/[^\\d.-]/g, '');\n let numericValue = parseFloat(inputValue) || 0;\n\n // Format the numeric value for display, removing trailing \"00\" if present\n let formattedDisplayValue = `$${Math.abs(numericValue).toFixed(4)}`;\n if (formattedDisplayValue.endsWith(\"00\")) {\n formattedDisplayValue = formattedDisplayValue.slice(0, -2);\n }\n setDisplayValue(formattedDisplayValue);\n setPriceValue(numericValue);\n valueFinalized(numericValue); // Invoke the callback with the numeric value\n };\n\n /**\n * Adjust the current price value by a given amount.\n * @param {number} adjustment - The amount to adjust the price by.\n */\n const adjustPenny = (adjustment: number) => {\n if (priceValue === 0 && adjustment < 0) {\n return\n }\n // If the price is negative, then we need to invert the logic of the + and = button so that + still technically increase the value.\n if(priceValue < 0) {\n adjustment = adjustment * -1;\n }\n \n // Math.round is to handle precision, hate it but until we use a decimal format for USD it is what it is...\n let numericValue = Math.round((priceValue + adjustment) * 10000) / 10000;\n setPriceValue(numericValue); // Update the numeric value\n\n // Format the new price value for display, removing trailing \"00\" if present\n let formattedDisplayValue = `$${Math.abs(numericValue).toFixed(4)}`;\n if (formattedDisplayValue.endsWith(\"00\")) {\n formattedDisplayValue = formattedDisplayValue.slice(0, -2);\n }\n setDisplayValue(formattedDisplayValue);\n valueFinalized(numericValue); // Invoke the callback with the new numeric value\n };\n\n /**\n * Increase the price value by one penny (0.01).\n */\n const addPenny = () => adjustPenny(0.01);\n\n /**\n * Decrease the price value by one penny (0.01).\n */\n const subtractPenny = () => adjustPenny(-0.01);\n \n /**\n * Handle the 'Enter' key press event to blur the input field.\n * @param {React.KeyboardEvent} e - The keyboard event.\n */\n const handleKeyDown = (e: React.KeyboardEvent) => {\n if (e.key === 'Enter' && priceInputNumberRef.current) {\n priceInputNumberRef.current.blur();\n }\n };\n\n // Render the component UI\n return (\n
    \n
    \n
    \n \n \n \n \n \n \n
    \n
    \n \n
    \n
    \n
    \n );\n}","import React from 'react';\nimport { PreviewActions, useOrderPreviewOrder } from './useOrderPreview';\nimport PriceComponent from '../PriceComponent';\n\nexport const PreviewLimitPrice: React.FC<{ action: PreviewActions }> = ({ action }) => {\n const { order, changeLimitPrice } = useOrderPreviewOrder(action);\n\n return (\n <>\n {order && (\n \n )}\n \n );\n};\n","import React from 'react';\nimport { PreviewActions, useOrderPreviewOrder } from './useOrderPreview';\nimport PriceComponent from '../PriceComponent';\n\nexport const PreviewStopPrice: React.FC<{ action: PreviewActions }> = ({ action }) => {\n const { order, changeStopPrice } = useOrderPreviewOrder(action);\n\n return (\n <>\n {order && (\n \n )}\n \n );\n};\n","import React, { useMemo } from 'react';\nimport { Order, DebitOrCredit } from '@tradingblock/types';\nimport { BoldNumber } from '@tradingblock/components';\nimport { useOrderTotal } from '../../hooks/useOrderTotal';\n\nexport const PreviewOrderTotal: React.FC<{ order?: Order }> = ({ order }) => {\n const totalResults = useOrderTotal();\n const orderTotal = useMemo(() => totalResults && totalResults.total, [totalResults]);\n\n return (\n <>\n {order && orderTotal && (\n
    \n {order.DebitCredit === DebitOrCredit.Debit ? 'Debit' : 'Credit'}\n
    \n )}\n \n );\n};\n","import React, { useCallback, useEffect } from 'react';\nimport { DebitOrCredit, OrderAction } from '@tradingblock/types';\nimport { ToggleButton } from '@tradingblock/components';\nimport { useOrderBlockData, useOrderData } from '../state/OrderState';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { useOrderActions } from '../state/useOrderActions';\nimport { getOrderLegPrices } from '../data/orderSelectors';\nimport { useOrderPrice } from '../hooks/useOrderPrice';\n\nexport const DebitCreditToggleButton: React.FC<{\n baseClass?: string;\n setDebitCredit: (debitCredit?: DebitOrCredit | undefined) => void;\n value: DebitOrCredit | undefined;\n enabled: boolean;\n action?: any;\n width?: string;\n}> = ({ value, setDebitCredit, enabled, baseClass, width, action }) => {\n const { setPrice } = useOrderActions();\n // if the strategy is a calendar spread and the price has been set already, flip the sign of the price on the toggle\n const isCalendarStrategy = useOrderData((s: any) => s.strategy === 'Call Calendar' || s.strategy === 'Put Calendar');\n const isCustomStrategy = useOrderData((s: any) => s.strategy === 'Custom');\n const match = useOrderData((s: any) => s.validation && s.validation.match);\n const isCalendarMatch =\n isCustomStrategy && match && (match.info.Name === 'Call Calendar' || match.info.Name === 'Put Calendar');\n const price = useOrderData((s: any) => s.price);\n const { bid, mid, ask } = useOrderPrice();\n\n const handleOnClick = useCallback(\n (isActive: boolean) => {\n setDebitCredit(isActive ? DebitOrCredit.Credit : DebitOrCredit.Debit);\n if ((isCalendarStrategy || isCalendarMatch) && price) {\n setPrice(-price, false, false);\n }\n },\n [setDebitCredit]\n );\n\n // If the price is not set, we need to determine the debit or credit based on the bid, mid, or ask and the action\n useEffect(() => {\n if (!price) {\n let decisionPrice = mid === null || mid === undefined ? 0 : mid; // Adjust based on how an unset mid is represented\n\n // Determine if bid, mid, and ask have mixed signs\n let sameSign = [bid, mid, ask].every(val => val >= 0) || [bid, mid, ask].every(val => val <= 0);\n\n if (!sameSign && (bid !== null && bid !== undefined) && (ask !== null && ask !== undefined)) {\n // If not all the same sign and bid/ask are set, choose based on action\n decisionPrice = action === OrderAction.Buy ? bid : ask;\n } else if (decisionPrice === 0 && (bid !== 0 || ask !== 0)) {\n // Fallback to bid or ask if mid is not set and at least one of bid or ask is non-zero\n decisionPrice = bid !== 0 ? bid : ask;\n }\n\n if (action === OrderAction.Buy) {\n // If decisionPrice is positive, it's a debit, otherwise, it's a credit.\n setDebitCredit(decisionPrice > 0 ? DebitOrCredit.Debit : DebitOrCredit.Credit);\n } else {\n // For sell, it's the opposite: if positive, it's a credit, otherwise, it's a debit.\n setDebitCredit(decisionPrice > 0 ? DebitOrCredit.Credit : DebitOrCredit.Debit);\n }\n }\n }, [price, bid, mid, ask, action]);\n\n return (\n \n );\n};\n\nexport const DebitCreditToggle = () => {\n const enabled = useOrderBlockData(OrderSelectors.canEditDebitOrCredit, false);\n const debitCredit = useOrderBlockData(OrderSelectors.debitOrCredit, DebitOrCredit.Debit);\n const { setDebitCredit } = useOrderActions();\n const { action } = useOrderData(s => s);\n return (\n \n );\n};\n","import React from 'react';\nimport _ from 'lodash';\nimport { OrderAction } from '@tradingblock/types';\nimport { PreviewActions, useOrderPreviewOrder } from './useOrderPreview';\nimport { DebitCreditToggleButton } from '../DebitCreditToggle';\n\nexport const PreviewDebitOrCredit: React.FC<{ action: PreviewActions }> = ({ action }) => {\n const { order, changeDebitCredit } = useOrderPreviewOrder(action);\n const debitOrCredit = order && order.DebitCredit ? order.DebitCredit : undefined;\n const enabled =\n order &&\n _.find(order.Legs, l => l.Action === OrderAction.Buy) &&\n _.find(order.Legs, l => l.Action === OrderAction.Sell)\n ? true\n : false;\n\n return (\n <>\n {order && (\n \n )}\n \n );\n};\n","import React from 'react';\nimport { formatNumber, NumberValue } from \"@tradingblock/components\";\nimport { AccountDetails, AssetType, Order } from \"@tradingblock/types\";\nimport { useMemo } from \"react\";\nimport useSWR from \"swr\";\nimport { useApi } from \"../../../../context/Api\";\nimport { accountIdSelector, useStateSelector } from \"../../../../data/global/dataSelectors\";\n\nexport const DefaultCommissionDetails: AccountDetails['commissions'] = {\n commissionCodeId: 0,\n stocks: {\n minCharge: 5,\n ticketCharge: 0,\n percentOfTrade: 0,\n perShare: 0.001\n },\n options: {\n minCharge: 0,\n ticketCharge: 5,\n percentOfTrade: 0,\n perShare: 0.5\n },\n mutualFunds: {\n minCharge: 0,\n ticketCharge: 30,\n percentOfTrade: 0,\n perShare: 0\n }\n}\n\nexport interface OrderAssetQuantity {\n assetType: AssetType,\n quantity: number\n}\n\nexport function calculateEstCommission(orderAssetQuantities: OrderAssetQuantity[], commissionDetails?: AccountDetails['commissions']): number | undefined {\n if (commissionDetails === undefined || commissionDetails === null) {\n return undefined;\n }\n let commission = 0;\n let isStockTicket = false;\n let isOptionTicket = false;\n let isMutualFundTicket = false;\n const stockCommissionDetails = commissionDetails.stocks;\n const optionsCommissionDetails = commissionDetails.options;\n const mutualFundsCommissionDetails = commissionDetails.mutualFunds;\n\n let sharesCommission = 0;\n let optionsCommission = 0;\n let mutualFundsCommission = 0;\n\n for (let { assetType, quantity } of orderAssetQuantities) {\n if (assetType === AssetType.Equity && quantity && stockCommissionDetails) {\n isStockTicket = true;\n if (stockCommissionDetails.perShare !== undefined) {\n sharesCommission += quantity * stockCommissionDetails.perShare\n }\n }\n\n // Commission logic for Options\n if (assetType === AssetType.Option && quantity && optionsCommissionDetails && optionsCommissionDetails.perShare !== undefined) {\n isOptionTicket = true;\n optionsCommission += quantity * optionsCommissionDetails.perShare;\n }\n\n if (assetType === AssetType.MutualFund && quantity && mutualFundsCommissionDetails && mutualFundsCommissionDetails.perShare !== undefined) {\n isMutualFundTicket = true;\n mutualFundsCommission += quantity * mutualFundsCommissionDetails.perShare;\n }\n }\n\n let sharesMinCost = 0;\n if (stockCommissionDetails && stockCommissionDetails.minCharge !== undefined) {\n if (stockCommissionDetails.ticketCharge !== undefined && stockCommissionDetails.ticketCharge > stockCommissionDetails.minCharge) {\n sharesMinCost = stockCommissionDetails.ticketCharge;\n } else {\n sharesMinCost = stockCommissionDetails.minCharge;\n }\n if (isStockTicket && sharesCommission < sharesMinCost) {\n commission += sharesMinCost;\n } else {\n commission += sharesCommission;\n }\n }\n\n let optionsMinCost = 0;\n if (optionsCommissionDetails && optionsCommissionDetails.minCharge !== undefined) {\n if (optionsCommissionDetails.ticketCharge !== undefined && optionsCommissionDetails.ticketCharge > optionsCommissionDetails.minCharge) {\n optionsMinCost = optionsCommissionDetails.ticketCharge;\n } else {\n optionsMinCost = optionsCommissionDetails.minCharge;\n }\n if (isOptionTicket && optionsCommission < optionsMinCost) {\n commission += optionsMinCost;\n } else {\n commission += optionsCommission;\n }\n }\n\n let mutualFundsMinCost = 0;\n if (mutualFundsCommissionDetails && mutualFundsCommissionDetails.minCharge !== undefined) {\n if (mutualFundsCommissionDetails.ticketCharge !== undefined && mutualFundsCommissionDetails.ticketCharge > mutualFundsCommissionDetails.minCharge) {\n mutualFundsMinCost = mutualFundsCommissionDetails.ticketCharge;\n } else {\n mutualFundsMinCost = mutualFundsCommissionDetails.minCharge;\n }\n if (isMutualFundTicket && mutualFundsCommission < mutualFundsMinCost) {\n commission += mutualFundsMinCost;\n } else {\n commission += mutualFundsCommission;\n }\n }\n\n return commission;\n}\n\nexport interface EstCommissionPreviewProps {\n order?: Order\n}\n\nexport default function EstCommissionPreview({ order }: EstCommissionPreviewProps) {\n const api = useApi();\n const accountId = useStateSelector(accountIdSelector);\n const selectedAccount = useStateSelector(s => s.account.selectedLinkedAccount);\n // const subaccountId = useStateSelector(subAccountIdSelector);\n\n const { data, error } = useSWR(\n selectedAccount ? selectedAccount.accountId : accountId as any,\n api.accounts.details\n );\n\n //TODO: Need to see if we charge the exchange fee as the commission fee on here or not.\n\n const commissionValue = useMemo(() => {\n let commission: number = 0;\n\n if (data && order) {\n let orderAssetQuantities = order.Legs.map(l => ({ assetType: l.AssetType, quantity: l.Quantity ? l.Quantity : 0 }));\n let estCommission = undefined;\n if (data.payload.commissions === null || data.payload.commissions === undefined) {\n console.error('Commissions are not defined for the account');\n estCommission = calculateEstCommission(orderAssetQuantities, DefaultCommissionDetails);\n } else {\n estCommission = calculateEstCommission(orderAssetQuantities, data.payload.commissions);\n }\n commission = estCommission ? estCommission : 0;\n }\n return formatNumber(commission, { currency: true });\n }, [order, data]);\n\n if (order === undefined) {\n //TODO: Add in analytics logs for erros\n console.warn('Order is undefined for the commission preview');\n return (\n
    Order not passed
    \n );\n }\n\n return (\n \n )\n}\n\nexport interface EstCommissionPreviewRenderProps {\n commissionValue?: string,\n loading: boolean,\n error: boolean\n}\n\nexport function EstCommissionPreviewRender({ commissionValue }: EstCommissionPreviewRenderProps) {\n return (\n
    \n Commission: {commissionValue}\n
    \n );\n}","import React, { useMemo } from 'react';\nimport { Column } from 'react-table';\nimport _ from 'lodash';\nimport {\n OrderLegDTO,\n OrderAction,\n PositionEffect,\n AssetType,\n TradingblockOrder,\n Order,\n OrderType,\n Durations,\n} from '@tradingblock/types';\nimport { useDebug, formatNumber } from '@tradingblock/components';\nimport {\n useStateSelector,\n subAccountIdSelector,\n subAccountSelector,\n account as accountSel,\n} from '../../../../data/global/dataSelectors';\nimport { optionToDetailString } from '../../../../data/global/utilities/options';\nimport { BlockTable } from '../../../shared/BlockTable';\nimport { PreviewActions } from './useOrderPreview';\nimport { PreviewLimitPrice } from './PreviewLimitPrice';\nimport { PreviewStopPrice } from './PreviewStopPrice';\nimport { PreviewOrderTotal } from './PreviewOrderTotal';\nimport { PreviewDebitOrCredit } from './PreviewDebitOrCredit';\nimport EstCommissionPreview from './EstCommissionPreview';\nimport { useQuoteMetadata } from '../../../../hooks/useFeedQuote';\nimport { QuoteSymbolQuote } from '../../../../data/global/state';\nimport { parseOccSymbol } from '@tradingblock/api';\n\nexport type ColumnWithStyle = Column & {\n style?: object;\n};\n\nconst getColumns = (quantity: number, underlyingSymbol?: string): ColumnWithStyle[] => {\n return [\n {\n Header: 'Instrument',\n id: 'instrument',\n accessor: (leg: OrderLegDTO) => {\n if (leg.AssetType === AssetType.Equity) {\n return 'Shares';\n }\n return optionToDetailString(\n { ...leg, Symbol: leg.OccSymbol || underlyingSymbol || '' },\n { Quantity: quantity, UnderlyingSymbol: underlyingSymbol }\n );\n },\n },\n {\n Header: 'Underlying',\n accessor: (leg: OrderLegDTO) => {\n return leg.UnderlyingSymbol ? leg.UnderlyingSymbol : leg.OccSymbol ? leg.OccSymbol : '';\n },\n id: 'symbol',\n },\n {\n Header: 'Symbol',\n accessor: (leg: OrderLegDTO) => {\n return leg.OccSymbol ? leg.OccSymbol : '';\n },\n id: 'occsymbol',\n },\n {\n Header: 'Action',\n accessor: (leg: OrderLegDTO) => {\n return `${OrderAction[leg.Action]} (to ${PositionEffect[leg.PositionEffect]})`;\n },\n id: 'action',\n },\n {\n Header: 'Qty',\n id: 'qty',\n accessor: (leg: OrderLegDTO) => {\n // To handle the case where the quantity is NaN, we return the quantity as 1x\n if (Number.isNaN(quantity) || leg.Quantity === undefined) {\n const quant = (leg.SpreadRatio || 1) * quantity;\n return `${quant.toString()}x`;\n }\n // if spread ratio is present then we multiply the quantity by the spread ratio\n // else we just return the quantity\n if (leg.SpreadRatio) {\n const quant = quantity * leg.SpreadRatio;\n return `${quant.toString()}x`;\n }\n\n const quant = leg.Quantity;\n return `${quant.toString()}x`;\n },\n },\n {\n Header: 'Close',\n id: 'close',\n accessor: leg => {\n if (leg.ClosePrice === undefined) {\n return '';\n }\n return `${formatNumber(leg.ClosePrice, { currency: true })}`;\n },\n },\n {\n Header: 'Last',\n id: 'last',\n accessor: leg => {\n if (leg.LastOrClosePrice === undefined) {\n return '';\n }\n return `${formatNumber(leg.LastOrClosePrice, { currency: true })}`;\n },\n },\n {\n Header: 'Bid',\n id: 'bid',\n accessor: leg => {\n if (leg.BidPrice === undefined || leg.BidSize === undefined) {\n return '';\n }\n return `${formatNumber(leg.BidPrice, { currency: true })} x ${leg.BidSize}`;\n },\n },\n {\n Header: 'Ask',\n id: 'ask',\n accessor: leg => {\n if (leg.AskPrice === undefined || leg.AskSize === undefined) {\n return '';\n }\n return `${formatNumber(leg.AskPrice, { currency: true })} x ${leg.AskSize}`;\n },\n },\n ];\n};\n\nconst fields = (\n action: PreviewActions,\n initialPrice?: number,\n accountName?: string,\n isCancelOrder?: boolean,\n orderType?: OrderType\n) => [\n {\n id: 'price',\n title: action === 'replace' && !isCancelOrder ? 'Price (before editing)' : 'Price',\n value: (ord?: Order) => {\n const orderPrice = action !== 'replace' && ord ? ord.Price : initialPrice;\n if (ord === undefined) {\n return 'NA';\n }\n switch (ord.OrderType) {\n case OrderType.Limit:\n return `Limit: ${orderPrice && formatNumber(Math.abs(orderPrice), { currency: true })}`;\n case OrderType.Stop_Limit:\n return (\n
    \n
    {`Stop Price: ${ord.Stop && formatNumber(Math.abs(ord.Stop), { currency: true })}`}
    \n
    {`Limit Price: ${orderPrice && formatNumber(Math.abs(orderPrice), { currency: true })}`}
    \n
    \n );\n case OrderType.Market:\n return 'Market';\n case OrderType.Stop_Market:\n return `Stop Market: ${ord.Stop && formatNumber(Math.abs(ord.Stop), { currency: true })}`;\n case OrderType.Market_On_Close:\n return `Market on Close`;\n default:\n return 'NA';\n }\n },\n },\n {\n id: 'effect',\n title: 'In effect',\n value: (ord?: Order) => {\n if (ord === undefined) {\n return '?';\n }\n if (ord.Duration === Durations.Day) {\n // return `Day (${DisplayTimeTilClose(parseMs(TimeTillClose().diff(dayjs())))} till close)`;\n return 'Day';\n }\n return `${Durations[ord.Duration]}`;\n },\n },\n {\n id: 'commission',\n actions: ['execute'],\n title: 'Est. commission',\n value: (ord?: Order) => ,\n },\n {\n id: 'account',\n title: 'Account',\n value: (ord?: Order) => accountName,\n },\n {\n id: 'total',\n actions: ['execute'],\n title: 'Est. total',\n value: (ord?: Order) => ,\n },\n\n {\n id: 'stopPrice',\n actions: ['replace'],\n title: !isCancelOrder && orderType === OrderType.Stop_Limit && 'Stop Price',\n value: (ord?: Order) => {\n return (\n !isCancelOrder &&\n ord !== undefined &&\n ord.OrderType === OrderType.Stop_Limit && \n );\n },\n },\n {\n id: 'price',\n actions: ['replace'],\n title: !isCancelOrder && 'Limit Price',\n value: (ord?: Order) => !isCancelOrder && ,\n },\n {\n id: 'debitOrCredit',\n actions: ['replace'],\n title: !isCancelOrder && 'Debit or Credit',\n value: (ord?: Order) => {\n return !isCancelOrder && ord !== undefined && ;\n },\n Cell: (props: any) => {\n return <>{!isCancelOrder && };\n },\n },\n];\n\nexport const PreviewContent: React.FC<{\n order: TradingblockOrder | Order;\n legs: OrderLegDTO[];\n action: PreviewActions;\n isCancelOrder: boolean;\n initialPrice?: number;\n orderValue?: Order;\n}> = ({ order, legs, action, initialPrice, isCancelOrder, orderValue }) => {\n const { SubaccountId, Quantity, UnderlyingSymbol } = order;\n const quotes = useQuoteMetadata(legs.map((l: any) => (l.Symbol ? l.Symbol : '')));\n const tableColumns = useMemo(() => {\n let tmpCols;\n if (action === 'replace' && orderValue) {\n tmpCols = getColumns(orderValue.Quantity, orderValue.UnderlyingSymbol);\n } else {\n tmpCols = getColumns(Quantity, UnderlyingSymbol);\n }\n const widths = ['6%', '10%', '24%', '16%', '44%'];\n return tmpCols.map((c, ind) => {\n return {\n ...c,\n style: {\n ...(c.style || {}),\n width: widths[ind] || undefined,\n },\n };\n });\n }, [Quantity, UnderlyingSymbol, action, orderValue]);\n\n const firstAndLastName = useStateSelector(accountSel.firstAndLastName);\n const accountNickname = useStateSelector(accountSel.accountNickname);\n const subAccountId = useStateSelector(subAccountIdSelector);\n const subAccount = useStateSelector(subAccountSelector(SubaccountId || subAccountId));\n const formattedAccName = `${firstAndLastName} ${accountNickname}${subAccount ? ` - ${subAccount.AcctSuffix}` : ''}`;\n\n const previewFields = useMemo(\n () =>\n _.filter(\n fields(action, initialPrice, formattedAccName, isCancelOrder, order.OrderType),\n f => f.actions === undefined || f.actions.includes(action)\n ),\n [action, initialPrice, formattedAccName]\n );\n\n const quoteLegs = useMemo(\n () =>\n legs.map(leg => {\n return {\n ...leg,\n ...quotes.find(q => q.Symbol === (leg as any).Symbol),\n };\n }),\n [legs]\n );\n\n return (\n <>\n \n
      \n {_.map(previewFields, (field, ind) => {\n const fieldTitle = _.isFunction(field.title) ? field.title(order) : field.title;\n return (\n
    • \n {fieldTitle}\n {field.value(order)}\n
    • \n );\n })}\n
    \n \n );\n};\n","import React, { useState, useMemo, useCallback, useEffect } from 'react';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport _ from 'lodash';\nimport { BasicCheckboxInput, getClassNames, Modal } from '@tradingblock/components';\nimport { OrderNotification } from '@tradingblock/types';\nimport {\n useStateSelector,\n getGlobalErrorOrWarning,\n getGlobalMessage,\n getModalError,\n} from '../../data/global/dataSelectors';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { PreviewContent } from '../../blocks/Order/components/Preview/PreviewContent';\nimport { getOrderPreviewLegs } from '../../blocks/Order/components/Preview/useOrderPreview';\nimport { Config } from '../../config';\nimport { TradingEnvironment } from '../../constants';\nimport { IsVirtualEnvironment } from '../../data/global/selectors/environmentSelector';\nimport { useDispatch } from 'react-redux';\nimport { OrderActions } from '../../data/global/actions';\n\nconst envClass = () => {\n const env = Config.TradingEnvironment;\n switch (env) {\n case TradingEnvironment.dev:\n return 'env-dev';\n case TradingEnvironment.beta:\n return 'env-beta';\n default:\n return 'env-prod';\n }\n};\n\nconst Dashboard: React.FC<{ className: string }> = ({ className, children }) => {\n const globalErrorOrWarningNotifications = useStateSelector(getGlobalErrorOrWarning);\n const globalMessage = useStateSelector(getGlobalMessage);\n const isExpired = useStateSelector(s => s.auth.isExpired);\n\n const dashboardErrorClass = useMemo(() => {\n if (globalErrorOrWarningNotifications && !isExpired) {\n return `has-alert ${globalErrorOrWarningNotifications.overlay ? ' mask-on' : ''}`;\n } else if (globalMessage) {\n return `has-alert ${globalMessage.overlay ? ' mask-on' : ''}`;\n } else {\n return '';\n }\n }, [globalErrorOrWarningNotifications, globalMessage]);\n const isVirtualEnv = useStateSelector(IsVirtualEnvironment);\n const dashboardClasses = useMemo(() => {\n return getClassNames([\n 'dashboard',\n isVirtualEnv ? 'night' : 'day',\n className,\n dashboardErrorClass,\n envClass(),\n isVirtualEnv ? 'env-virtual' : '',\n ]);\n }, [className, dashboardErrorClass, isVirtualEnv]);\n return
    {children}
    ;\n};\n\nexport const DashboardWrapper: React.FC<{ className: string }> = ({ className, children }) => {\n const { dispatcher } = useDispatcher();\n\n const isExpired = useStateSelector(s => s.auth.isExpired);\n const [showErrorInfo, setShowErrorInfo] = useState(false);\n const globalErrorOrWarningNotifications = useStateSelector(getGlobalErrorOrWarning);\n const globalMessage = useStateSelector(getGlobalMessage);\n const [bypassWarnings, setBypassWarnings] = useState(false);\n const dispatch = useDispatch();\n\n const modalError = useStateSelector(getModalError);\n const failedOrder = useMemo(() => {\n const notificationError = modalError as OrderNotification | undefined;\n if (notificationError && notificationError.type === 'Order') {\n return notificationError.order;\n }\n return undefined;\n }, [modalError]);\n\n const onCloseModal = useCallback(() => {\n if (modalError) {\n dispatcher.notifications.view(modalError);\n if (modalError.code === 307) {\n setBypassWarnings(false);\n }\n }\n }, [modalError, dispatcher]);\n\n const alertClass = useMemo(() => {\n if (!_.isNil(globalErrorOrWarningNotifications) && globalErrorOrWarningNotifications) {\n if (globalErrorOrWarningNotifications.status === 'Error') {\n return `dashboard-alert error`;\n } else if (globalErrorOrWarningNotifications.status === 'Warn') {\n return `dashboard-alert warn`;\n } else {\n return `dashboard-alert`;\n }\n } else if (!_.isNil(globalMessage)) {\n return `dashboard-alert info`;\n } else {\n return '';\n }\n return '';\n }, [globalErrorOrWarningNotifications, globalMessage]);\n\n const handleCheck = useCallback(\n (event, value) => {\n setBypassWarnings(value);\n },\n [bypassWarnings]\n );\n\n const handleSendOrder = useCallback(() => {\n if (failedOrder) {\n const finalOrder = {\n ...failedOrder,\n BypassWarnings: bypassWarnings,\n };\n try {\n dispatch(OrderActions.requestPlaceOrder(finalOrder));\n setTimeout(() => {\n onCloseModal();\n }, 1000);\n } catch (placeOrderError) {\n dispatcher.order.errored(failedOrder, placeOrderError as any);\n console.error('error placing order', placeOrderError);\n }\n }\n\n onCloseModal();\n }, [failedOrder, bypassWarnings]);\n\n // don't display global errors if on logout page\n if (window.location.pathname === '/logout') {\n return null;\n }\n return (\n \n {globalErrorOrWarningNotifications && !isExpired && (\n
    \n {globalErrorOrWarningNotifications.title}\n {globalErrorOrWarningNotifications.message && (\n setShowErrorInfo(true)}\n >\n more info\n \n )}\n {globalErrorOrWarningNotifications.message && (\n \n \n {globalErrorOrWarningNotifications.title}\n \n \n
    \n \n \n )}\n
    \n )}\n {globalMessage && (\n
    \n {globalMessage.title || ''} {globalMessage.message}\n {globalMessage.message && (\n window.location.reload()}\n >\n Reload\n \n )}\n
    \n )}\n\n {modalError && failedOrder && (\n \n \n {modalError.title}\n \n \n

    The order below was NOT placed due to the following issue:

    \n

    \n \n {modalError.code === 307 && (\n \n Bypass Warnings\n \n )}\n
    \n \n {!bypassWarnings && (\n \n )}\n {bypassWarnings && (\n <>\n \n \n \n )}\n \n
    \n )}\n\n {children}\n \n );\n};\n","import React, { useCallback } from 'react';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { Hotkey, HotkeyProps } from '@tradingblock/components';\nimport { BlockType } from '@tradingblock/types';\nimport { generateNewBlock } from '../../utilities/block';\n\nexport const BlockHotkeys: React.FunctionComponent> = ({ modifier }) => {\n const { dispatcher } = useDispatcher();\n const createOrderBlock = useCallback(() => dispatcher.block.addBlock(generateNewBlock(BlockType.Order, { autoFocus: true })), [dispatcher]);\n return (\n <>\n \n \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useCallback } from 'react';\nimport { Hotkey, HotkeyProps } from '@tradingblock/components';\nimport { useDispatcher } from '../../data/global/hooks';\n\nexport const DashboardHotkeys: React.FunctionComponent> = ({ modifier }) => {\n const { dispatcher } = useDispatcher();\n const toggleSettings = useCallback(() => dispatcher.settings.toggleSettings(), [dispatcher]);\n return (\n <>\n \n \n );\n};\n","import React, { useCallback } from 'react';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { Hotkey, HotkeyProps } from '@tradingblock/components';\n\nexport const GridHotkeys: React.FunctionComponent> = ({ modifier }) => {\n const { dispatcher } = useDispatcher();\n const toggleLocked = useCallback(() => dispatcher.grid.toggleLocked({ showTooltip: false }), [dispatcher]);\n return (\n <>\n \n \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useEffect } from 'react';\nimport { useLog } from '@tradingblock/components';\nimport { StorageBlockPath, IStorageProvider, IBlockDataState } from '@tradingblock/types';\nimport { useBlockActions } from './BlockState';\n\nasync function tryLoadBlock(storage: IStorageProvider, key: string) {\n try {\n return storage.get(key);\n } catch (ex) {\n return Promise.resolve(undefined);\n }\n}\n\nexport const BlockDataLoader: React.FunctionComponent<{\n blockId: string;\n store: IStorageProvider;\n}> = ({ store, blockId, children }) => {\n const storeKey = StorageBlockPath(blockId);\n const { initializeData } = useBlockActions();\n\n const log = useLog('BlockDataLoader');\n useEffect(() => {\n let mounted = true;\n const loadBlock = async () => {\n const block = await tryLoadBlock(store, storeKey);\n if (!block) {\n log('tried loading block %o but nothing was found', blockId);\n }\n if (mounted) {\n initializeData(block || {});\n } else {\n console.warn('loaded block', blockId, 'but BlockDataLoader is no longer mounted!');\n }\n };\n\n loadBlock();\n\n return () => {\n // keep track of mounted state of component\n mounted = false;\n };\n }, []);\n return <>{children};\n};\n","import constate from 'constate';\nimport { BlockDimensions } from '../../types';\nimport { useState, useMemo, useEffect } from 'react';\n\nexport const useBlockDimensions = constate((dimensions: BlockDimensions) => {\n const [blockDimensions, setDimensions] = useState(dimensions);\n useEffect(() => setDimensions(dimensions), [dimensions]);\n return useMemo(() => blockDimensions, [blockDimensions]);\n});\n","import createCachedSelector from 're-reselect';\n\nimport { DataState } from '../state';\n\nimport { blockGroupId } from '../dataSelectors';\n\nimport { GroupState, BlockGroupState } from '@tradingblock/types';\nimport _ from 'lodash';\n\nexport const groupIdByBlockId = blockGroupId;\nexport const groupSymbol = createCachedSelector(\n (state: DataState, groupId: string) => _.find(state.blocks.groups, g => g.groupId === groupId),\n (group: BlockGroupState | undefined) => (group ? group.symbol : undefined)\n)((_, id) => `blockgroupsymbol${id}`);\nexport const groupLinkedColor = createCachedSelector(\n (state: DataState, groupId: string) => _.find(state.blocks.groups, g => g.groupId === groupId),\n (group: BlockGroupState | undefined) => (group ? group.linkedColor : undefined)\n)((_, id) => `blockgroupcolor${id}`);\nexport const groupSymbolByBlockId = createCachedSelector(\n (state: DataState) => state.blocks.groups,\n blockGroupId,\n (groups, groupId) => {\n if (groupId === undefined) {\n return undefined;\n }\n const matchingGroup = _.find(groups, g => g.groupId === groupId);\n return matchingGroup ? matchingGroup.symbol : undefined;\n }\n)((_, id) => `groupSymbolByBlockId${id}`);\n","import React, { useMemo } from 'react';\nimport { BlockProps, useWhyDidYouUpdate, getClassNames } from '@tradingblock/components';\nimport { useBlockMetadata } from '../BlockState';\nimport { useBboxDimensions } from '../../../blocks/shared/useBboxDimensions';\nimport { useStateSelector, blocksSelectors } from '../../../data/global/dataSelectors';\nimport { useBlockGroupSync } from '../useBlockGroupSync';\nimport { useBlockDimensions } from '../../../blocks/shared/useBlockDimensions';\nimport { groupLinkedColor } from '../../../data/global/selectors/groupSelectors';\n\ntype BlockContentProps = Pick;\n\nexport const BlockContentWrapper: React.FunctionComponent = ({ className, children }) => {\n useBlockGroupSync();\n const { blockId, groupId } = useBlockMetadata();\n const [{ bboxWidth, bboxHeight, ...dimensions }, blockElement] = useBboxDimensions();\n\n const isBlockHighlighted = useStateSelector(s => blocksSelectors.isHighlighted(s)(blockId));\n const highlightedAt: Date | undefined = useStateSelector(s => blocksSelectors.highlightedAt(s));\n\n const isLinked = useStateSelector(s => blocksSelectors.isLinked(s)(blockId));\n const highlightGroupId = useStateSelector(s => s.blocks.highlightGroupId);\n const highlightGroupAt = useStateSelector(s => s.blocks.highlightGroupAt);\n\n const isGroupHighlighted = useMemo(() => groupId === highlightGroupId, [groupId, highlightGroupId]);\n const wasBlockTypeHighlighted = useMemo(() => highlightedAt && highlightGroupAt && highlightedAt > highlightGroupAt, [highlightedAt, highlightGroupAt]);\n\n const linkedColor = useStateSelector(s => groupLinkedColor(s, groupId || ''));\n\n const cssClasses = useMemo(() => {\n return getClassNames([\n 'block',\n className,\n dimensions.heightClassName,\n dimensions.widthClassName,\n isLinked && isGroupHighlighted && !isBlockHighlighted ? \n `linked-block ${\n wasBlockTypeHighlighted ? '' : \n `animated ${linkedColor}`\n }` : \n undefined, \n isBlockHighlighted ? \n 'highlighted-block animated' : \n undefined\n ]);\n }, [className, dimensions.heightClassName, dimensions.widthClassName, isLinked, isGroupHighlighted, isBlockHighlighted, wasBlockTypeHighlighted, linkedColor]);\n\n useWhyDidYouUpdate(`${blockId}:BlockContentWrapper`, { cssClasses, isGroupHighlighted, blockId, className, isBlockHighlighted, isLinked, highlightGroupId, highlightGroupAt, dimensions });\n\n return (\n
    \n {children}\n
    \n );\n};\n","import { useBlockMetadata, useBlockActions } from './BlockState';\n\nimport { useStateSelector, blockGroupId } from '../../data/global/dataSelectors';\n\nimport { useEffect } from 'react';\n\nexport const useBlockGroupSync = () => {\n const { blockId, groupId } = useBlockMetadata();\n const { setGroup } = useBlockActions();\n const rootStateGroup = useStateSelector(s => blockGroupId(s, blockId));\n useEffect(() => {\n if (rootStateGroup && groupId !== rootStateGroup) {\n setGroup(rootStateGroup);\n }\n }, [groupId, rootStateGroup, setGroup]);\n};\n","import _ from 'lodash';\nimport { BlockGroupState, GroupLinkColors } from '@tradingblock/types';\nimport { SymbolQuote } from '@tradingblock/api';\n\nexport const groupHasData = (group: BlockGroupState) => !_.isNil(group.symbol) || !_.isNil(group.order);\n\nexport const getLastOrClosePrice = (\n feedQuote: Pick\n) => {\n const { ClosePrice, LastTradePrice, IsSettlementSet } = feedQuote;\n if (IsSettlementSet) {\n return ClosePrice;\n } else {\n return LastTradePrice > 0 ? LastTradePrice : ClosePrice;\n }\n};\n\nexport const LINK_COLORS_ARRAY: GroupLinkColors[] = ['GREEN', 'RED', 'WHITE', 'TEAL', 'YELLOW', 'ORANGE'];\nexport const getLinkColorMapping = (linkColor: GroupLinkColors | undefined): GroupLinkColors | string => {\n switch (linkColor) {\n case 'GREEN': {\n return 'rgb(114,255,131)';\n }\n case 'RED': {\n return '#ed6767';\n }\n case 'WHITE': {\n return 'ghostwhite';\n }\n case 'TEAL': {\n return '#02fff6';\n }\n case 'YELLOW': {\n return 'rgb(255,255,120)';\n }\n case 'ORANGE': {\n return '#FFAF19';\n }\n default: {\n // console.warn(`Could not map link color. Got ${linkColor}. Returning var(--teal) as default.`);\n return 'var(--teal)';\n }\n }\n};\n","import React, { useCallback, useContext, useEffect, useState } from 'react';\nimport { Dropdown, DropdownItem } from '@tradingblock/components';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { BlockAction, BlockActionContext, useBlockMetadata } from './BlockState';\nimport { dashboardIdSelector, useStateSelector } from '../../data/global/dataSelectors';\nimport { getLinkColorMapping, LINK_COLORS_ARRAY } from '../../data/global/utilities';\nimport { BlockType, GroupLinkColors } from '@tradingblock/types';\nimport { groupLinkedColor } from '../../data/global/selectors/groupSelectors';\n\nexport const BlockLinkingDropdown: React.FunctionComponent<{ isLinked: boolean, disabled: boolean }> = ({ isLinked, disabled }) => {\n const { blockId, groupId } = useBlockMetadata();\n const { dispatcher } = useDispatcher();\n const highlightGroupId = useStateSelector(s => s.blocks.highlightGroupId);\n const isHighlighted = (groupId === highlightGroupId);\n const getColor = useStateSelector(s => groupLinkedColor(s, groupId || ''));\n const [linkColor, setLinkColor] = useState('TEAL');\n\n useEffect(() => {\n setLinkColor(getColor)\n }, [getColor])\n\n const onStartBlockLinking = useCallback(() => {\n dispatcher.grid.toggleLinking(true, { blockId, groupId });\n dispatcher.block.setLinkColor(linkColor, { groupId })\n saveLinkColors(linkColor);\n }, [blockId, groupId, dispatcher.grid, linkColor]);\n\n const onUnlinkBlock = useCallback(() => {\n dispatcher.block.unlinkBlock(blockId);\n\n }, [blockId, dispatcher.block, linkColor]);\n\n const onToggleHighlightGroup = useCallback(() => {\n dispatcher.block.highlightGroup(isHighlighted ? undefined : groupId);\n }, [isHighlighted, groupId, dispatcher.block, linkColor]);\n\n const onSelectLinkColor = (optionValue: GroupLinkColors): void => {\n dispatcher.block.setLinkColor(optionValue, { groupId })\n setLinkColor(optionValue)\n saveLinkColors(optionValue);\n }\n\n const createLinkColorOptions = (): JSX.Element => {\n return (\n <>\n {LINK_COLORS_ARRAY.map((optionValue: GroupLinkColors, index: number) =>\n ())}\n \n )\n }\n\n const dispatch = useContext(BlockActionContext);\n const dashboardId = useStateSelector(dashboardIdSelector);\n const { type } = useBlockMetadata();\n const saveLinkColors = (linkColor: GroupLinkColors | undefined) => {\n //DISPATCH LINKED COLOR \n if (blockId && dashboardId) {\n const settingsSaveData = {\n dashboardId: dashboardId,\n blockId: blockId,\n blockType: type as BlockType,\n blockSettings: {},\n };\n dispatch(BlockAction.setSettings(settingsSaveData.blockSettings));\n dispatcher.settings.block.setBlockSetting(settingsSaveData);\n }\n };\n return (\n }\n >\n {!isLinked && (<>Link with&helllinkip;\n \n Color  \n {createLinkColorOptions()}\n )\n }\n {isLinked && (\n <>\n Link another…\n Unlink this…\n {isHighlighted ? 'Remove highlight' : 'Highlight linked'}\n \n Color  \n {createLinkColorOptions()}\n \n \n )}\n \n );\n};\n","import React, { useCallback } from 'react';\nimport { Dropdown, DropdownItem } from '@tradingblock/components';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { useBlockMetadata } from './BlockState';\nimport { useStateSelector } from '../../data/global/dataSelectors';\n\ninterface BlockSettingsDropdownProps {\n toggleBlockSettings: () => void;\n hasSettings: boolean;\n}\n\nexport const BlockSettingsDropdown: React.FunctionComponent = ({ toggleBlockSettings, hasSettings }) => {\n const { blockId } = useBlockMetadata();\n const { dispatcher } = useDispatcher();\n\n const removeBlock = dispatcher.block.removeBlock;\n const isDashboardLocked = useStateSelector(s => s.ui.dashboard.isLocked);\n const openSettings = useCallback(() => {\n toggleBlockSettings();\n }, [toggleBlockSettings]);\n\n const unlockGrid = useCallback(() => {\n dispatcher.grid.toggleLocked({ locked: false });\n }, [dispatcher.grid]);\n\n return (\n }\n >\n {hasSettings && Settings…}\n {!isDashboardLocked && Move block…}\n {!isDashboardLocked && removeBlock(blockId)}>Delete}\n {isDashboardLocked && Dashboard is locked  }\n \n );\n};\n","import React from 'react';\nimport _ from 'lodash';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { Modal } from '@tradingblock/components';\nimport { ToggleVirtualTradingButton } from '../dashboard/navigation/ToggleVirtualTradingButton';\n\nexport interface VirtualTradingModalProps {\n show: boolean;\n onClose: () => void;\n}\n\nexport const VirtualTradingModal: React.FC = ({ show, onClose }) => {\n if (!show) {\n return null;\n }\n\n return (\n onClose} show>\n \n Virtual trading\n \n \n

    \n You are in virtual trading\n

    \n

    You are trading with paper money and your orders are not placed with a real exchange.

    \n

    Need to switch to live trading?

    \n
    \n \n \n onClose()}>\n Log in to live trading here\n \n \n
    \n );\n};\n","import { useBlockId } from '../../../components/blocks/BlockState';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { blockSettings } from '../../../data/global/selectors/settingSelectors';\nimport { DefaultOptionChainBlockSettings } from '../state/OptionChainSettings';\n\nexport const useOptionChainSettings = () => {\n const blockId = useBlockId();\n //@ts-ignore\n const current = useStateSelector(s => blockSettings.optionChain(s, blockId));\n return {\n current: current || {},\n definitions: DefaultOptionChainBlockSettings,\n };\n};\n","import React, { useCallback, useState, useMemo, useContext } from 'react';\nimport _ from 'lodash';\nimport { BlockProps, useWhyDidYouUpdate, BlockHeader, BlockTitle, BasicSelect } from '@tradingblock/components';\nimport { SettingsRenderer, BlockSettingsModal } from '../settings/BlockSettings';\nimport { BlockAction, BlockActionContext, useBlockMetadata, useBlockSymbol } from '../BlockState';\nimport { useDispatcher } from '../../../data/global/hooks';\nimport { useStateSelector, blocksSelectors, dashboardIdSelector } from '../../../data/global/dataSelectors';\nimport { BlockLinkingDropdown } from '../BlockLinkingDropdown';\nimport { BlockSettingsDropdown } from '../BlockSettingsDropdown';\nimport { IsVirtualEnvironment } from '../../../data/global/selectors/environmentSelector';\nimport { VirtualTradingModal } from '../VirtualTradingModal';\nimport { BlockType } from '@tradingblock/types';\nimport { useOptionChainSettings } from '../../../blocks/OptionChain/data/useOptionChainSettings';\nimport { blockSettings } from '../../../data/global/selectors/settingSelectors';\n\ntype BlockContentHeaderProps = Pick &\n SettingsRenderer;\n\nexport const BlockContentHeader: React.FunctionComponent = ({\n isLinkable,\n settingFields,\n children,\n isRefreshable,\n onRefresh,\n}) => {\n const { blockId, groupId, type, data } = useBlockMetadata();\n const symbol = useBlockSymbol();\n const blockType = type;\n\n const symbolValue = useMemo(() => {\n return symbol ? { label: symbol.symbol, data: symbol } : '';\n }, [data]);\n\n const { dispatcher } = useDispatcher();\n\n // Option chain visible strike setting\n const dispatch = useContext(BlockActionContext);\n const dashboardId = useStateSelector(dashboardIdSelector);\n const isOptionChainBlock = blockType === BlockType.OptionChain;\n const { current } = useOptionChainSettings();\n const strikeOptions = [\n { label: '10', value: 10 },\n { label: '20', value: 20 },\n { label: '40', value: 40 },\n { label: '100', value: 100 },\n { label: 'All', value: 0 },\n ];\n\n const isVirtualEnv = useStateSelector(IsVirtualEnvironment);\n\n const isLinked = useStateSelector(s => blocksSelectors.isLinked(s)(blockId));\n const linkingDisabled = useStateSelector(s => blocksSelectors.linkingDisabled(s, blockId));\n\n const onStartBlockLinking = useCallback(() => {\n dispatcher.grid.toggleLinking(true, { blockId, groupId });\n }, [blockId, groupId]);\n\n const [showSettings, setShowSettings] = useState(false);\n\n const toggleSettings = useCallback(() => {\n setShowSettings(!showSettings);\n }, [showSettings, setShowSettings]);\n\n const [virtualTradingModal, setVirtualTradingModal] = useState(false);\n const toggleVirtualTradingModal = useCallback(() => {\n setVirtualTradingModal(!virtualTradingModal);\n }, [virtualTradingModal, setVirtualTradingModal]);\n\n useWhyDidYouUpdate(`${blockId}:BlockContentHeader`, {\n showSettings,\n blockId,\n isLinkable,\n settingFields,\n isLinked,\n linkingDisabled,\n });\n\n // @params option: { label: string; value: number }\n // function to set the visible strike count for the block and save to db\n const handleSetStrikeCount = useCallback(\n (option: { label: string; value: number }) => {\n if (symbolValue) {\n const settingsSaveData = {\n dashboardId: dashboardId || '',\n blockId,\n blockType,\n blockSettings: {\n ...current,\n bidUsesBuyOrderAction: current.bidUsesBuyOrderAction,\n ...blockSettings,\n strikeCount: option.value,\n },\n };\n\n dispatch(BlockAction.setSettings(settingsSaveData.blockSettings));\n dispatcher.settings.block.setBlockSetting(settingsSaveData);\n }\n },\n [symbolValue, blockSettings, blockId, blockType, dashboardId, dispatch, dispatcher]\n );\n\n const hasSettings = useMemo(() => settingFields !== undefined && _.keys(settingFields).length > 0, [settingFields]);\n return (\n \n {children}\n \n \n
    \n
      \n {isOptionChainBlock && (\n <>\n
    • \n
      \n Strike count: \n handleSetStrikeCount(option)}\n value={current.strikeCount}\n placeholder={current.strikeCount === 0 ? 'All' : current.strikeCount}\n isSearchable={false}\n />\n
      \n
    • \n \n )}\n {isVirtualEnv && (\n
    • \n \n \n \n
    • \n )}\n {isLinkable && isLinked && (\n
    • \n \n
    • \n )}\n {(!isLinkable || !isLinked) && (\n
    • \n \n \n \n
    • \n )}\n {isRefreshable && (\n
    • \n \n
    • \n )}\n
    • \n \n
    • \n
    \n
    \n
    \n );\n};\n","import React, { useMemo } from 'react';\nimport _ from 'lodash';\nimport { BlockProps } from '@tradingblock/components';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { useBlockMetadata } from './BlockState';\n\ntype BlockLinkingMaskProps = Pick & {\n isLinked: boolean;\n onClick: () => void;\n onCancelClick: () => void;\n};\n\nexport const BlockLinkingMask: React.FunctionComponent = ({ type, isLinkable, isLinked, onClick, onCancelClick }) => {\n const { blockId, groupId } = useBlockMetadata();\n const sourceBlock = useStateSelector(s => s.blocks.linkSourceBlock);\n const targetBlock = useStateSelector(s => s.blocks.linkTargetBlock);\n const linkingCurrentGroup = sourceBlock && groupId === sourceBlock.groupId;\n const isLinkableToGroup = isLinkable && !linkingCurrentGroup && (!targetBlock || type === targetBlock.type);\n const isCancellable = linkingCurrentGroup && sourceBlock && sourceBlock.blockId === blockId;\n const linkStateIndex = useMemo(() => {\n if (isLinkableToGroup) {\n return 0;\n }\n if (isCancellable) {\n return 1;\n }\n return 2;\n }, [isLinkableToGroup, isCancellable]);\n\n return (\n
    \n \n
    \n );\n};\n","import React, { useCallback } from 'react';\nimport { BlockLinkingMask } from '../BlockLinkingMask';\nimport { BlockProps } from '@tradingblock/components';\nimport { useBlockMetadata } from '../BlockState';\nimport { useDispatcher } from '../../../data/global/hooks';\nimport { useStateSelector, blocksSelectors } from '../../../data/global/dataSelectors';\n\ntype BlockLinkProps = Pick;\n\nexport const BlockLink: React.FC = ({ type, isLinkable }) => {\n const { blockId, groupId } = useBlockMetadata();\n const { dispatcher } = useDispatcher();\n const onLinkBlock = useCallback(() => {\n // complete linking of this block\n dispatcher.block.linkBlock(blockId, groupId);\n }, [blockId, groupId]);\n const onCancelLinking = useCallback(() => {\n // cancel block linking\n dispatcher.grid.toggleLinking(false);\n }, []);\n const isLinked = useStateSelector(s => blocksSelectors.isLinked(s)(blockId));\n return (\n <>\n
    \n \n
    \n \n \n );\n};\n","import React from 'react';\nimport _ from 'lodash';\nimport { useWhyDidYouUpdate, BlockDragHandle } from '@tradingblock/components';\nimport { useBlockMetadata } from '../BlockState';\nimport { IBlockProps } from '../Block';\n\nexport const BlockContentHeaderTitle: React.FunctionComponent> = ({ header }) => {\n const { blockId } = useBlockMetadata();\n\n useWhyDidYouUpdate(`${blockId}:BlockContentHeaderTitle`, { blockId, header });\n\n if (!header) {\n return null;\n }\n return <>{_.isString(header) ? {header} : header};\n};\n","import React from 'react';\nimport { DataState } from '../../../data/global/state';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\n\nexport const BlockLoading: React.FC<{\n isFetchingSelector?: (state: DataState) => boolean;\n as: 'li' | 'div';\n}> = ({ isFetchingSelector, as }) => {\n const isRefreshing = useStateSelector(isFetchingSelector ? isFetchingSelector : (state: DataState) => false);\n return (\n <>\n {isRefreshing && as === 'li' && (\n
  • \n \n
  • \n )}\n {isRefreshing && as === 'div' && (\n
    \n \n
    \n )}\n \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useState, useCallback, useEffect, useMemo } from 'react';\nimport useMount from 'react-use/lib/useMount';\nimport _ from 'lodash';\nimport { BlockProps, useWhyDidYouUpdate } from '@tradingblock/components';\nimport { TabOptions, IBlockDataState, AssetSymbol } from '@tradingblock/types';\nimport { useBlockState, useBlockActions, useBlockData } from './BlockState';\nimport { useStore } from '../../context/Storage';\nimport { BlockDataLoader } from './BlockDataLoader';\nimport { BlockContentWrapper } from './content/BlockContentWrapper';\nimport { BlockContentHeader } from './content/BlockContentHeader';\nimport { BlockLink } from './content/BlockLink';\nimport { BlockContentHeaderTitle } from './content/BlockContentHeaderTitle';\nimport { BlockLoading } from './content/BlockLoadingHeaderIndicator';\nimport { DataState } from '../../data/global/state';\nimport { SettingsRenderer } from './settings/BlockSettingsTypes';\nimport { blockGroupId, useStateSelector } from '../../data/global/dataSelectors';\nimport { groupLinkedColor, groupSymbol } from '../../data/global/selectors/groupSelectors';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { BlockActions } from '../../data/global/actions';\n\nexport interface IBlockProps\n extends Pick {\n initialData?: D;\n header?: JSX.Element | React.Component | string;\n settings?: S;\n tabs?: TabOptions[];\n isFetchingSelector?: (state: DataState) => boolean;\n}\ntype BaseBlockProps = IBlockProps & SettingsRenderer;\nexport const Block: React.FC = ({\n children,\n initialData,\n tabs,\n settings,\n className,\n isLinkable,\n isRefreshable,\n onRefresh,\n header,\n isFetchingSelector,\n ...props\n}) => {\n const blockId = useBlockState('blockId');\n const { initialize, setField: set } = useBlockActions();\n const groupId = useStateSelector(s => blockGroupId(s, blockId));\n const symbolForGroup = useStateSelector(s => groupSymbol(s, groupId || ''));\n const colorForGroup = useStateSelector(s => groupLinkedColor(s, groupId || ''));\n const { symbol } = useBlockData<{\n symbol: AssetSymbol;\n isLoaded: boolean;\n blockType: string;\n }>();\n const allBlockData: {} = useBlockData();\n const { dispatch } = useDispatcher();\n useEffect(() => {\n if (symbolForGroup && symbol && symbolForGroup.symbol !== symbol.symbol) {\n // set symbol for the block\n set('symbol', symbolForGroup, { persist: true });\n const blockData = {\n data: {\n ...allBlockData,\n symbol: symbolForGroup,\n },\n };\n // dispatch update block action to update block data within the db/store\n dispatch(BlockActions.updateBlock({ blockId, blockData }, { persist: true }));\n }\n }, [symbolForGroup, symbol]);\n useEffect(() => {\n if (colorForGroup) {\n set('linkedColor', colorForGroup, { persist: true });\n dispatch(\n BlockActions.updateBlock(\n { blockId, blockData: { data: { ...allBlockData, linkedColor: colorForGroup } } },\n { persist: true }\n )\n );\n }\n }, [colorForGroup]);\n const store = useStore();\n useMount(() => {\n const blockTabs = tabs ? tabs : [];\n if (initialData || tabs || settings) {\n const value = { data: initialData || {}, tabs: blockTabs, settings };\n initialize(value);\n }\n });\n\n useWhyDidYouUpdate(`${blockId}:Block`, { ...props });\n const [contentId, setContentId] = useState(_.uniqueId(blockId));\n const handleRefresh = useCallback(() => {\n setContentId(_.uniqueId(blockId));\n if (onRefresh) {\n onRefresh();\n }\n }, [onRefresh]);\n const headerProps = {\n isLinkable,\n onRefresh: handleRefresh,\n isRefreshable,\n };\n\n return (\n <>\n \n \n \n \n false} />\n \n {children}\n \n \n \n );\n};\n","import { createSelector } from 'reselect';\nimport { createDeepSelector } from '../../../data/global/dataSelectors';\nimport { PriceChartState } from './PriceChartState';\n\nconst rootSelector = (state: PriceChartState) => state;\nconst symbolSel = createSelector(\n rootSelector,\n v => v.symbol\n);\nconst quoteSel = createDeepSelector(rootSelector, v => v.quote);\nconst isFetchingSel = createDeepSelector(rootSelector, v => v.isFetching);\nconst isLoadedSel = createDeepSelector(rootSelector, v => v.isLoaded);\nexport const PriceChartSelectors = {\n symbol: symbolSel,\n symbolName: createDeepSelector(symbolSel, v => (v ? v.symbol : undefined)),\n quote: createDeepSelector(quoteSel, q => (q ? q : undefined)),\n isFetching: createDeepSelector(isFetchingSel, f => f),\n isLoaded: createDeepSelector(symbolSel, isLoadedSel, (s, i) => {\n return i === true && s !== undefined;\n }),\n};\n","import { OrderActions } from '../blocks/Order/state/OrderActions';\nimport { PriceChartActions } from '../blocks/PriceChart/state/PriceChartActions';\nimport _ from 'lodash';\n\ninterface GroupObserver {\n blockId: string;\n groupId: string;\n dispatch: React.Dispatch;\n}\ntype GroupAction = OrderActions | PriceChartActions;\nclass GroupActionManager {\n private observers: GroupObserver[] = [];\n private lastAction: { [groupId: string]: GroupAction } = {};\n public attach(observer: GroupObserver, runLastAction?: boolean) {\n this.observers = _.uniqBy([...this.observers, observer], o => o.blockId);\n const last = this.lastAction[observer.groupId];\n if (runLastAction && last) {\n observer.dispatch(last);\n }\n }\n public detach(blockId: string) {\n this.observers = _.filter(this.observers, o => o.blockId !== blockId);\n }\n public dispatch(groupId: string, action: GroupAction) {\n const obs = this.observers.filter(o => o.groupId === groupId);\n this.lastAction[groupId] = action;\n if (obs && obs.length > 0) {\n obs.forEach(o => {\n o.dispatch(action);\n });\n } else {\n console.log('no blocks found for action', action, 'in group', groupId);\n }\n }\n}\n\nexport const GroupManager = new GroupActionManager();\n","import { useStateSelector, isFavorite } from '../data/global/dataSelectors';\nimport { DataState } from '../data/global/state';\n\nimport { useDispatcher } from '../data/global/hooks';\nimport { useCallback } from 'react';\nimport { AssetSymbolInfo } from '@tradingblock/types';\n\ntype FavoriteSymbol = [boolean, () => void];\n\nexport const useFavorite = (symbol: AssetSymbolInfo): FavoriteSymbol => {\n const symbolIsFavorite = useStateSelector((s: DataState) => isFavorite(s, symbol.symbol));\n\n const { dispatcher } = useDispatcher();\n const addRemoveFavorite = useCallback(() => {\n if (symbol) {\n if (symbolIsFavorite) {\n dispatcher.favorites.remove(symbol.symbol);\n } else {\n dispatcher.favorites.add(symbol);\n }\n }\n }, [dispatcher, symbolIsFavorite, symbol]);\n return [symbolIsFavorite, addRemoveFavorite];\n};\n","import React from 'react';\nimport { AssetSymbolInfo } from '@tradingblock/types';\nimport { useFavorite } from '../../hooks/useFavorite';\n\nexport const FavoriteButton: React.FC<{ symbol: AssetSymbolInfo; className?: string }> = ({ symbol, className }) => {\n // const symbolIsFavorite = useStateSelector((s: DataState) => isFavorite(s, favSymbol ? favSymbol : ''));\n const [symbolIsFavorite, toggleFavorite] = useFavorite(symbol);\n // const { dispatcher } = useDispatcher();\n // const addRemoveFavorite = useCallback(() => {\n // console.log(favSymbol);\n // if (favSymbol ) {\n // if (symbolIsFavorite) {\n // dispatcher.favorites.remove(favSymbol);\n // } else {\n // dispatcher.favorites.add(favSymbol);\n // }\n // }\n // }, [dispatcher, symbolIsFavorite, favSymbol]);\n return (\n \n );\n};\n","import React, { useState, useMemo, useRef } from 'react';\nimport { Modal as BootstrapModal } from 'react-bootstrap';\nimport dayjs from 'dayjs';\nimport { getLocalDateFromTimezone, timeZone } from '@tradingblock/api';\nimport { isToday } from '../../utilities/date';\nimport { Modal } from '@tradingblock/components';\nimport { useQuoteTime } from '../../hooks/useFeedQuote';\nimport { findTimeZone } from 'timezone-support';\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\ndayjs.extend(customParseFormat);\n\nexport const QuoteTime: React.FC<{ symbol: string }> = ({ symbol }) => {\n const quoteTime = useQuoteTime(symbol);\n const [showQuoteTimeInfo, setShowQuoteTimeInfo] = useState(false);\n const time = useMemo(() => (quoteTime ? quoteTime : undefined), [quoteTime]);\n\n const date = dayjs(quoteTime, 'MM/DD/YYYY HH:mm:ss').format('YYYY-MM-DDTHH:mm:ss') + 'Z';\n\n // force correct date format\n const timeValue = time && dayjs(time, 'MM/DD/YYYY HH:mm:ss').format('YYYY-MM-DDTHH:mm:ss') + 'Z';\n const dateValue: Date = new Date(date);\n\n const tz: any = findTimeZone(timeZone);\n const { abbreviations } = tz;\n\n let zone = new Date().toLocaleTimeString('en-us', { timeZoneName: 'short' }).split(' ')[2];\n\n const timestampRef = useRef(null);\n\n return (\n <>\n {quoteTime && (\n
    \n
    \n \n
    \n
    \n )}\n {/* \n \n TEST\n \n */}\n \n \n About quote updates\n \n \n
    \n

    \n Quote was updated at the time displayed. Some or all intraday quotes may be delayed up to 20 minutes, and\n may not reflect current bid, ask or last sale.\n

    \n
    \n
    \n
    \n \n );\n};\n","import React, { useEffect, useRef, useState } from 'react';\nconst DirectionalTimeout = 1000;\n\nexport type DirectionalOptions = { upValue?: string; downValue?: string; disableFlash?: boolean };\n\nexport const useDirectionalClassValues = (options?: DirectionalOptions) => {\n const upValue = options && options.upValue ? options.upValue : 'pos bold';\n const downValue = options && options.downValue ? options.downValue : 'neg bold';\n return { upValue, downValue };\n};\n\nexport const useDirectionalClass = (direction: 'up' | 'down' | undefined, value: number | undefined, options?: DirectionalOptions) => {\n const { upValue, downValue } = useDirectionalClassValues(options);\n const disableFlash = options && options.disableFlash ? true : false;\n const [directionClass, setdirectionClass] = useState('');\n const resetTimeout = useRef();\n useEffect(() => {\n if (direction) {\n let dirClass = '';\n if (direction === undefined) {\n dirClass = '';\n } else if (direction === 'down') {\n dirClass = downValue;\n } else {\n dirClass = upValue;\n }\n setdirectionClass(dirClass);\n if (disableFlash !== true) {\n if (resetTimeout && resetTimeout.current) {\n clearTimeout(resetTimeout.current);\n }\n\n resetTimeout.current = setTimeout(function () {\n setdirectionClass(`flash`);\n }, DirectionalTimeout);\n }\n }\n\n return () => {\n if (resetTimeout && resetTimeout.current) {\n clearTimeout(resetTimeout.current);\n }\n };\n }, [direction, downValue, upValue, value]);\n\n return directionClass;\n};\nexport const useDirectionalValue = (value: number | undefined, options?: DirectionalOptions) => {\n const [currentValue, setCurrentValue] = useState();\n const [direction, setDirection] = useState();\n useEffect(() => {\n if (value && value !== currentValue) {\n if (currentValue === undefined) {\n setDirection(undefined);\n } else if (currentValue > value) {\n setDirection('down');\n } else if (currentValue < value) {\n setDirection('up');\n }\n setCurrentValue(value);\n }\n }, [value, currentValue]);\n return useDirectionalClass(direction, value, options);\n};\nexport const Directional: React.FunctionComponent<{ wrapperClass?: string; direction: 'up' | 'down' | undefined; value?: number; options?: DirectionalOptions }> = ({ value, direction, options, wrapperClass, children }) => {\n const directionClass = useDirectionalClass(direction, value || undefined, options);\n return
    {children}
    ;\n};\n\nexport interface DirectionalValueProps {\n value?: number;\n threshold?: number;\n options?: DirectionalOptions;\n wrapperClass?: string;\n precisionOverride?: boolean;\n prefix?: string;\n}\n\nexport const DirectionalValue: React.FunctionComponent = ({ value, children, options, wrapperClass, ...props }) => {\n const [threshold, setThreshold] = useState(props.threshold);\n const [direction, setDirection] = useState();\n useEffect(() => {\n if (value && value !== threshold) {\n if (threshold === undefined) {\n setDirection(undefined);\n } else if (threshold > value) {\n setDirection('down');\n } else if (threshold < value) {\n setDirection('up');\n }\n if (props.threshold === undefined) {\n setThreshold(value);\n }\n }\n }, [value, threshold]);\n\n return (\n \n {/* \n $\n \n */}\n {children}\n \n );\n};\n","import React from 'react';\nimport { useQuoteDirectionAndValue } from '../../hooks/useFeedQuote';\nimport { Number } from '@tradingblock/components';\nimport { DirectionalValue } from '../../components/basic/Directional';\n\nexport const SymbolPrice: React.FunctionComponent<{ symbol: string }> = ({ symbol }) => {\n const { price } = useQuoteDirectionAndValue(symbol);\n\n return (\n \n \n $\n \n \n \n );\n};\n","import React, { useMemo, useRef } from 'react';\nimport { AssetSymbol, BlockType } from '@tradingblock/types';\nimport {\n BlockDragHandle,\n HttpAutocomplete,\n OptionType,\n getBlockTypeName,\n SignedNumber,\n Pill,\n Loading,\n} from '@tradingblock/components';\nimport { SymbolToOption, useSymbolSearch } from '../../hooks/useSymbolSearch';\nimport { useQuote } from '../../hooks/useFeedQuote';\nimport { FavoriteButton } from '../../components/blocks/FavoriteButton';\nimport { QuoteTime } from './QuoteTime';\nimport { SymbolPrice } from './SymbolPrice';\n\ninterface SymbolPickerHeaderProps {\n blockType: BlockType;\n symbol: AssetSymbol | undefined;\n isLoaded: boolean | undefined;\n onSelect: (value: OptionType) => void;\n onClear?: () => void;\n placeholder?: string;\n clearOptionsOnSelect?: boolean;\n focus?: boolean;\n disableFavorite?: boolean;\n hidePrice?: boolean;\n hideTime?: boolean;\n hidePercent?: boolean;\n onSearch?: (value: string, limit?: number | undefined) => void;\n onBlur?: () => void;\n}\n\nexport const SymbolPickerHeader: React.FunctionComponent = ({\n hidePrice,\n blockType,\n symbol,\n isLoaded,\n onSelect,\n placeholder,\n clearOptionsOnSelect,\n focus,\n onClear,\n disableFavorite,\n hideTime,\n hidePercent,\n onSearch,\n onBlur,\n}) => {\n const search = useSymbolSearch();\n const symbolValue = symbol ? symbol.symbol : '';\n const symbolQuote = useQuote(symbolValue);\n const autoCompleteValue = useMemo(() => {\n return symbol ? SymbolToOption(symbol, true) : undefined;\n }, [symbol]);\n const rest = useMemo(() => {\n return { autoFocus: focus };\n }, [focus]);\n\n return (\n
    \n {getBlockTypeName(blockType)}\n
    \n \n {isLoaded && (\n {\n if (onSearch !== undefined) {\n onSearch(value, limit);\n }\n\n return search(value, limit);\n }}\n onBlur={onBlur}\n value={autoCompleteValue}\n onSelect={onSelect}\n clearOptionsOnSelect={clearOptionsOnSelect}\n placeholder={placeholder}\n symbol={symbolValue}\n charLimit={20}\n />\n )}\n \n
    \n {symbol && symbolQuote && (\n <>\n
    \n
    \n {symbol.symbol}\n
    \n
    \n {symbol.name}\n
    \n
    \n {hidePrice !== true && (\n
    \n \n
    \n
    \n \n
    \n {hidePercent !== true && (\n
    \n \n
    \n )}\n
    \n
    \n )}\n {!disableFavorite && (\n
    \n \n
    \n )}\n {hideTime !== true && }{' '}\n \n )}\n
    \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useCallback } from 'react';\nimport { OptionType } from '@tradingblock/components';\nimport { AssetSymbol, BlockType } from '@tradingblock/types';\nimport { useStateSelector, blockGroupId } from '../../data/global/dataSelectors';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { useBlockMetadata, useBlockData, useBlockSymbol } from '../../components/blocks/BlockState';\nimport { SymbolPickerHeader } from '../shared/SymbolPickerHeader';\nimport { PriceChartState } from './state/PriceChartState';\nimport { useOptionChainActions } from '../OptionChain/state/useOptionChainActions';\nimport { ChartType } from './PriceChartGraph';\n\ninterface PriceChartHeaderProps {\n setSymbol: (symbol: AssetSymbol) => void;\n}\n\nexport const PriceChartHeader: React.FC = ({ setSymbol }) => {\n const { isLoaded } = useBlockData();\n const symbol = useBlockSymbol();\n const { blockId } = useBlockMetadata();\n const groupId = useStateSelector(s => blockGroupId(s, blockId));\n const { dispatcher } = useDispatcher();\n const setGroupSymbol = dispatcher.blockGroup.setSymbol;\n const updateSymbol = useCallback(\n (symbolName: string, symbolValue: AssetSymbol | undefined) => {\n if (groupId) {\n setGroupSymbol(groupId, symbolValue);\n }\n },\n [setGroupSymbol, groupId]\n );\n const onSelect = useCallback(\n (value: any) => {\n const symbolValue = value ? value.data : undefined;\n const symbolName = symbolValue && symbolValue.symbol;\n if (symbolName && symbolValue) {\n updateSymbol(symbolName, symbolValue);\n }\n },\n [updateSymbol]\n );\n const onClear = useCallback(() => {\n updateSymbol('', undefined);\n }, [updateSymbol]);\n return (\n \n );\n};\n","import _classCallCheck from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport _defineProperty from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(source, true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(source).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction t(e, n) {\n var i = _objectSpread({}, e);\n\n for (var _o in n) {\n \"object\" != typeof e[_o] || null === e[_o] || Array.isArray(e[_o]) ? void 0 !== n[_o] && (i[_o] = n[_o]) : i[_o] = t(e[_o], n[_o]);\n }\n\n return i;\n}\n\nvar e = {\n mobile: {\n disabled_features: [\"left_toolbar\", \"header_widget\", \"timeframes_toolbar\", \"edit_buttons_in_legend\", \"context_menus\", \"control_bar\", \"border_around_the_chart\"],\n enabled_features: []\n }\n},\n n = {\n width: 800,\n height: 500,\n interval: \"1D\",\n timezone: \"Etc/UTC\",\n container: \"\",\n library_path: \"\",\n locale: \"en\",\n widgetbar: {\n details: !1,\n watchlist: !1,\n watchlist_settings: {\n default_symbols: []\n }\n },\n overrides: {\n \"mainSeriesProperties.showCountdown\": !1\n },\n studies_overrides: {},\n trading_customization: {\n position: {},\n order: {}\n },\n brokerConfig: {\n configFlags: {}\n },\n fullscreen: !1,\n autosize: !1,\n disabled_features: [],\n enabled_features: [],\n debug: !1,\n logo: {},\n time_frames: [{\n text: \"5y\",\n resolution: \"1W\"\n }, {\n text: \"1y\",\n resolution: \"1W\"\n }, {\n text: \"6m\",\n resolution: \"120\"\n }, {\n text: \"3m\",\n resolution: \"60\"\n }, {\n text: \"1m\",\n resolution: \"30\"\n }, {\n text: \"5d\",\n resolution: \"5\"\n }, {\n text: \"1d\",\n resolution: \"1\"\n }],\n client_id: \"0\",\n user_id: \"0\",\n charts_storage_api_version: \"1.0\",\n favorites: {\n intervals: [],\n chartTypes: []\n }\n};\nvar i = !1;\n\nfunction o(t) {\n var e;\n var n = /\\.woff(\\d*)/.exec(t);\n return \"\");\n}\n\nfunction s(t, e) {\n var n = new URL(\"\".concat(t || \"\"), location.href).href,\n i = JSON.parse('[\"bundles/runtime.6b7a1146863d7196d6d3.js\",\"bundles/5386.eb112967859403067d3d.css\",\"bundles/5386.eb112967859403067d3d.rtl.css\",\"bundles/1857.10c97feeb46d934b8a25.js\",\"bundles/library.a70ecf079f22e76a3ae6.js\",\"bundles/b1a63a011fd92dfb93db6db243bb036c.woff2\",\"bundles/40f9a03d174178efb12303caa9bc7cd8.woff2\",\"bundles/3293616ec0c605c7c2db25829a0a509e.woff\"]'),\n s = JSON.parse('[{\"iso\":\"ar\",\"dir\":\"rtl\",\"language\":\"ar\"},{\"iso\":\"pt\",\"dir\":\"ltr\",\"language\":\"pt\"},{\"iso\":\"cs\",\"dir\":\"ltr\",\"language\":\"cs\"},{\"iso\":\"de\",\"dir\":\"ltr\",\"language\":\"de\"},{\"iso\":\"en\",\"dir\":\"ltr\",\"language\":\"en\"},{\"iso\":\"es\",\"dir\":\"ltr\",\"language\":\"es\"},{\"iso\":\"fa\",\"dir\":\"rtl\",\"language\":\"fa\"},{\"iso\":\"fr\",\"dir\":\"ltr\",\"language\":\"fr\"},{\"iso\":\"he\",\"dir\":\"rtl\",\"language\":\"he_IL\"},{\"iso\":\"hu\",\"dir\":\"ltr\",\"language\":\"hu_HU\"},{\"iso\":\"id\",\"dir\":\"ltr\",\"language\":\"id_ID\"},{\"iso\":\"en\",\"dir\":\"ltr\",\"language\":\"en\"},{\"iso\":\"it\",\"dir\":\"ltr\",\"language\":\"it\"},{\"iso\":\"ja\",\"dir\":\"ltr\",\"language\":\"ja\"},{\"iso\":\"ko\",\"dir\":\"ltr\",\"language\":\"ko\"},{\"iso\":\"ms\",\"dir\":\"ltr\",\"language\":\"ms_MY\"},{\"iso\":\"pl\",\"dir\":\"ltr\",\"language\":\"pl\"},{\"iso\":\"ru\",\"dir\":\"ltr\",\"language\":\"ru\"},{\"iso\":\"sv\",\"dir\":\"ltr\",\"language\":\"sv\"},{\"iso\":\"th\",\"dir\":\"ltr\",\"language\":\"th\"},{\"iso\":\"tr\",\"dir\":\"ltr\",\"language\":\"tr\"},{\"iso\":\"vi\",\"dir\":\"ltr\",\"language\":\"vi\"},{\"iso\":\"zh-Hans\",\"dir\":\"ltr\",\"language\":\"zh\"},{\"iso\":\"zh-Hant\",\"dir\":\"ltr\",\"language\":\"zh_TW\"},{\"iso\":\"el\",\"dir\":\"ltr\",\"language\":\"el\"},{\"iso\":\"nl\",\"dir\":\"ltr\",\"language\":\"nl_NL\"},{\"iso\":\"ro\",\"dir\":\"ltr\",\"language\":\"ro\"}]'),\n r = encodeURIComponent(e),\n a = s.find(function (t) {\n return t.language === r;\n }),\n d = \"lang=\\\"\".concat(a.iso, \"\\\" dir=\\\"\").concat(a.dir, \"\\\"\"),\n l = \"\\n\".concat(function (t, e) {\n if (void 0 === t) return \"\";\n var n = [],\n i = [],\n s = [],\n r = /\\.css$/i,\n a = /\\.rtl\\.css$/i;\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = t[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var _d = _step.value;\n _d.endsWith(\".js\") ? i.push(\"\")) : r.test(_d) && e === a.test(_d) ? s.push(\"\")) : /\\.woff\\d*/.test(_d) && n.push(o(_d));\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n\n return [].concat(n, i, s).join(\"\\n\");\n }(i, \"rtl\" === a.dir), \"\\n\");\n return \" \").concat(h.bundles, \"
    \");\n var h;\n}\n\nfunction r() {\n return \"CL v23.038 (internal id e012cb8f @ 2022-12-20T06:06:49.573Z)\";\n}\n\nvar a =\n/*#__PURE__*/\nfunction () {\n function a(o) {\n _classCallCheck(this, a);\n\n var s;\n if (this._id = \"tradingview_\".concat((1048576 * (1 + Math.random()) | 0).toString(16).substring(1)), this._ready = !1, this._readyHandlers = [], this._onWindowResize = this._autoResizeChart.bind(this), !o.datafeed) throw new Error(\"Datafeed is not defined\");\n\n if ((null === (s = o.overrides) || void 0 === s ? void 0 : s[\"mainSeriesProperties.priceAxisProperties.lockScale\"]) && (console.warn(\"mainSeriesProperties.priceAxisProperties.lockScale can not be set to true within the widget constructor\"), delete o.overrides[\"mainSeriesProperties.priceAxisProperties.lockScale\"]), this._options = t(n, o), o.preset) {\n var _t = e[o.preset];\n _t ? (void 0 !== this._options.disabled_features ? this._options.disabled_features = this._options.disabled_features.concat(_t.disabled_features) : this._options.disabled_features = _t.disabled_features, void 0 !== this._options.enabled_features ? this._options.enabled_features = this._options.enabled_features.concat(_t.enabled_features) : this._options.enabled_features = _t.enabled_features) : console.warn(\"Unknown preset: `\" + o.preset + \"`\");\n }\n\n \"Dark\" === this._options.theme && void 0 === this._options.loading_screen && (this._options.loading_screen = {\n backgroundColor: \"#131722\"\n }), this._options.debug && (i || (i = !0, console.log(\"Using CL v23.038 (internal id e012cb8f @ 2022-12-20T06:06:49.573Z)\"))), this._create();\n }\n\n _createClass(a, [{\n key: \"setDebugMode\",\n value: function setDebugMode(t) {\n this._innerAPI().setDebugMode(t);\n }\n }, {\n key: \"onChartReady\",\n value: function onChartReady(t) {\n this._ready ? t.call(this) : this._readyHandlers.push(t);\n }\n }, {\n key: \"headerReady\",\n value: function headerReady() {\n var _this = this;\n\n return this._innerWindowLoaded.then(function () {\n return _this._innerWindow().headerReady();\n });\n }\n }, {\n key: \"onGrayedObjectClicked\",\n value: function onGrayedObjectClicked(t) {\n this._doWhenInnerApiLoaded(function (e) {\n e.onGrayedObjectClicked(t);\n });\n }\n }, {\n key: \"onShortcut\",\n value: function onShortcut(t, e) {\n this._doWhenInnerWindowLoaded(function (n) {\n n.createShortcutAction(t, e);\n });\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(t, e) {\n this._doWhenInnerApiLoaded(function (n) {\n n.subscribe(t, e);\n });\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(t, e) {\n this._doWhenInnerApiLoaded(function (n) {\n n.unsubscribe(t, e);\n });\n }\n }, {\n key: \"chart\",\n value: function chart(t) {\n return this._innerAPI().chart(t);\n }\n }, {\n key: \"getLanguage\",\n value: function getLanguage() {\n return this._options.locale;\n }\n }, {\n key: \"setSymbol\",\n value: function setSymbol(t, e, n) {\n this._innerAPI().changeSymbol(t, e, n);\n }\n }, {\n key: \"remove\",\n value: function remove() {\n window.removeEventListener(\"resize\", this._onWindowResize), this._readyHandlers.splice(0, this._readyHandlers.length), delete window[this._id], this._iFrame.parentNode && this._iFrame.parentNode.removeChild(this._iFrame);\n }\n }, {\n key: \"closePopupsAndDialogs\",\n value: function closePopupsAndDialogs() {\n this._doWhenInnerApiLoaded(function (t) {\n t.closePopupsAndDialogs();\n });\n }\n }, {\n key: \"selectLineTool\",\n value: function selectLineTool(t, e) {\n this._innerAPI().selectLineTool(t, e);\n }\n }, {\n key: \"selectedLineTool\",\n value: function selectedLineTool() {\n return this._innerAPI().selectedLineTool();\n }\n }, {\n key: \"save\",\n value: function save(t) {\n this._innerAPI().saveChart(t);\n }\n }, {\n key: \"load\",\n value: function load(t, e) {\n this._innerAPI().loadChart({\n json: t,\n extendedData: e\n });\n }\n }, {\n key: \"getSavedCharts\",\n value: function getSavedCharts(t) {\n this._innerAPI().getSavedCharts(t);\n }\n }, {\n key: \"loadChartFromServer\",\n value: function loadChartFromServer(t) {\n this._innerAPI().loadChartFromServer(t);\n }\n }, {\n key: \"saveChartToServer\",\n value: function saveChartToServer(t, e, n) {\n this._innerAPI().saveChartToServer(t, e, n);\n }\n }, {\n key: \"removeChartFromServer\",\n value: function removeChartFromServer(t, e) {\n this._innerAPI().removeChartFromServer(t, e);\n }\n }, {\n key: \"onContextMenu\",\n value: function onContextMenu(t) {\n this._doWhenInnerApiLoaded(function (e) {\n e.onContextMenu(t);\n });\n }\n }, {\n key: \"createButton\",\n value: function createButton(t) {\n return this._innerWindow().createButton(t);\n }\n }, {\n key: \"createDropdown\",\n value: function createDropdown(t) {\n return this._innerWindow().createDropdown(t);\n }\n }, {\n key: \"showNoticeDialog\",\n value: function showNoticeDialog(t) {\n this._doWhenInnerApiLoaded(function (e) {\n e.showNoticeDialog(t);\n });\n }\n }, {\n key: \"showConfirmDialog\",\n value: function showConfirmDialog(t) {\n this._doWhenInnerApiLoaded(function (e) {\n e.showConfirmDialog(t);\n });\n }\n }, {\n key: \"showLoadChartDialog\",\n value: function showLoadChartDialog() {\n this._innerAPI().showLoadChartDialog();\n }\n }, {\n key: \"showSaveAsChartDialog\",\n value: function showSaveAsChartDialog() {\n this._innerAPI().showSaveAsChartDialog();\n }\n }, {\n key: \"symbolInterval\",\n value: function symbolInterval() {\n return this._innerAPI().getSymbolInterval();\n }\n }, {\n key: \"mainSeriesPriceFormatter\",\n value: function mainSeriesPriceFormatter() {\n return this._innerAPI().mainSeriesPriceFormatter();\n }\n }, {\n key: \"getIntervals\",\n value: function getIntervals() {\n return this._innerAPI().getIntervals();\n }\n }, {\n key: \"getStudiesList\",\n value: function getStudiesList() {\n return this._innerAPI().getStudiesList();\n }\n }, {\n key: \"getStudyInputs\",\n value: function getStudyInputs(t) {\n return this._innerAPI().getStudyInputs(t);\n }\n }, {\n key: \"getStudyStyles\",\n value: function getStudyStyles(t) {\n return this._innerAPI().getStudyStyles(t);\n }\n }, {\n key: \"addCustomCSSFile\",\n value: function addCustomCSSFile(t) {\n this._innerWindow().addCustomCSSFile(t);\n }\n }, {\n key: \"applyOverrides\",\n value: function applyOverrides(e) {\n this._options = t(this._options, {\n overrides: e\n }), this._doWhenInnerWindowLoaded(function (t) {\n t.applyOverrides(e);\n });\n }\n }, {\n key: \"applyStudiesOverrides\",\n value: function applyStudiesOverrides(t) {\n this._doWhenInnerWindowLoaded(function (e) {\n e.applyStudiesOverrides(t);\n });\n }\n }, {\n key: \"watchList\",\n value: function watchList() {\n return this._innerAPI().watchlist();\n }\n }, {\n key: \"news\",\n value: function news() {\n return this._innerAPI().news();\n }\n }, {\n key: \"widgetbar\",\n value: function widgetbar() {\n return this._innerAPI().widgetbar();\n }\n }, {\n key: \"activeChart\",\n value: function activeChart() {\n return this._innerAPI().activeChart();\n }\n }, {\n key: \"chartsCount\",\n value: function chartsCount() {\n return this._innerAPI().chartsCount();\n }\n }, {\n key: \"layout\",\n value: function layout() {\n return this._innerAPI().layout();\n }\n }, {\n key: \"setLayout\",\n value: function setLayout(t) {\n this._innerAPI().setLayout(t);\n }\n }, {\n key: \"layoutName\",\n value: function layoutName() {\n return this._innerAPI().layoutName();\n }\n }, {\n key: \"changeTheme\",\n value: function changeTheme(t, e) {\n return this._innerWindow().changeTheme(t, e);\n }\n }, {\n key: \"getTheme\",\n value: function getTheme() {\n return this._innerWindow().getTheme();\n }\n }, {\n key: \"takeScreenshot\",\n value: function takeScreenshot() {\n this._doWhenInnerApiLoaded(function (t) {\n t.takeScreenshot();\n });\n }\n }, {\n key: \"lockAllDrawingTools\",\n value: function lockAllDrawingTools() {\n return this._innerAPI().lockAllDrawingTools();\n }\n }, {\n key: \"hideAllDrawingTools\",\n value: function hideAllDrawingTools() {\n return this._innerAPI().hideAllDrawingTools();\n }\n }, {\n key: \"drawOnAllCharts\",\n value: function drawOnAllCharts(t) {\n this._innerAPI().drawOnAllCharts(t);\n }\n }, {\n key: \"magnetEnabled\",\n value: function magnetEnabled() {\n return this._innerAPI().magnetEnabled();\n }\n }, {\n key: \"magnetMode\",\n value: function magnetMode() {\n return this._innerAPI().magnetMode();\n }\n }, {\n key: \"undoRedoState\",\n value: function undoRedoState() {\n return this._innerAPI().undoRedoState();\n }\n }, {\n key: \"setIntervalLinkingEnabled\",\n value: function setIntervalLinkingEnabled(t) {\n this._innerAPI().setIntervalLinkingEnabled(t);\n }\n }, {\n key: \"setTimeFrame\",\n value: function setTimeFrame(t) {\n this._innerAPI().setTimeFrame(t);\n }\n }, {\n key: \"symbolSync\",\n value: function symbolSync() {\n return this._innerAPI().symbolSync();\n }\n }, {\n key: \"intervalSync\",\n value: function intervalSync() {\n return this._innerAPI().intervalSync();\n }\n }, {\n key: \"crosshairSync\",\n value: function crosshairSync() {\n return this._innerAPI().crosshairSync();\n }\n }, {\n key: \"timeSync\",\n value: function timeSync() {\n return this._innerAPI().timeSync();\n }\n }, {\n key: \"getAllFeatures\",\n value: function getAllFeatures() {\n return this._innerWindow().getAllFeatures();\n }\n }, {\n key: \"clearUndoHistory\",\n value: function clearUndoHistory() {\n return this._innerAPI().clearUndoHistory();\n }\n }, {\n key: \"undo\",\n value: function undo() {\n return this._innerAPI().undo();\n }\n }, {\n key: \"redo\",\n value: function redo() {\n return this._innerAPI().redo();\n }\n }, {\n key: \"startFullscreen\",\n value: function startFullscreen() {\n this._innerAPI().startFullscreen();\n }\n }, {\n key: \"exitFullscreen\",\n value: function exitFullscreen() {\n this._innerAPI().exitFullscreen();\n }\n }, {\n key: \"takeClientScreenshot\",\n value: function takeClientScreenshot(t) {\n return this._innerAPI().takeClientScreenshot(t);\n }\n }, {\n key: \"navigationButtonsVisibility\",\n value: function navigationButtonsVisibility() {\n return this._innerWindow().getNavigationButtonsVisibility();\n }\n }, {\n key: \"paneButtonsVisibility\",\n value: function paneButtonsVisibility() {\n return this._innerWindow().getPaneButtonsVisibility();\n }\n }, {\n key: \"dateFormat\",\n value: function dateFormat() {\n return this._innerWindow().getDateFormat();\n }\n }, {\n key: \"supportedChartTypes\",\n value: function supportedChartTypes() {\n return this._innerAPI().supportedChartTypes();\n }\n }, {\n key: \"_innerAPI\",\n value: function _innerAPI() {\n return this._innerWindow().tradingViewApi;\n }\n }, {\n key: \"_innerWindow\",\n value: function _innerWindow() {\n return this._iFrame.contentWindow;\n }\n }, {\n key: \"_doWhenInnerWindowLoaded\",\n value: function _doWhenInnerWindowLoaded(t) {\n var _this2 = this;\n\n this._ready ? t(this._innerWindow()) : this._innerWindowLoaded.then(function () {\n t(_this2._innerWindow());\n });\n }\n }, {\n key: \"_doWhenInnerApiLoaded\",\n value: function _doWhenInnerApiLoaded(t) {\n var _this3 = this;\n\n this._doWhenInnerWindowLoaded(function (e) {\n e.doWhenApiIsReady(function () {\n return t(_this3._innerAPI());\n });\n });\n }\n }, {\n key: \"_autoResizeChart\",\n value: function _autoResizeChart() {\n this._options.fullscreen && (this._iFrame.style.height = window.innerHeight + \"px\");\n }\n }, {\n key: \"_create\",\n value: function _create() {\n var _this4 = this;\n\n var t = this._render();\n\n this._options.container_id && console.warn(\"`container_id` is now deprecated. Please use `container` instead to either still pass a string or an `HTMLElement`.\");\n var e = this._options.container_id || this._options.container,\n n = \"string\" == typeof e ? document.getElementById(e) : e;\n if (null === n) throw new Error(\"There is no such element - #\".concat(this._options.container));\n n.innerHTML = t, this._iFrame = n.querySelector(\"#\".concat(this._id));\n var i = this._iFrame;\n (this._options.autosize || this._options.fullscreen) && (i.style.width = \"100%\", this._options.fullscreen || (i.style.height = \"100%\")), window.addEventListener(\"resize\", this._onWindowResize), this._onWindowResize(), this._innerWindowLoaded = new Promise(function (t) {\n var e = function e() {\n i.removeEventListener(\"load\", e, !1), t();\n };\n\n i.addEventListener(\"load\", e, !1);\n }), this._innerWindowLoaded.then(function () {\n _this4._innerWindow().widgetReady(function () {\n _this4._ready = !0;\n var _iteratorNormalCompletion2 = true;\n var _didIteratorError2 = false;\n var _iteratorError2 = undefined;\n\n try {\n for (var _iterator2 = _this4._readyHandlers[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var _t2 = _step2.value;\n\n try {\n _t2.call(_this4);\n } catch (t) {\n console.error(t);\n }\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n\n _this4._innerWindow().initializationFinished();\n });\n });\n }\n }, {\n key: \"_render\",\n value: function _render() {\n var t = window;\n if (t[this._id] = {\n datafeed: this._options.datafeed,\n customFormatters: this._options.custom_formatters || this._options.customFormatters,\n brokerFactory: this._options.broker_factory || this._options.brokerFactory,\n overrides: this._options.overrides,\n studiesOverrides: this._options.studies_overrides,\n tradingCustomization: this._options.trading_customization,\n disabledFeatures: this._options.disabled_features,\n enabledFeatures: this._options.enabled_features,\n brokerConfig: this._options.broker_config || this._options.brokerConfig,\n restConfig: this._options.restConfig,\n favorites: this._options.favorites,\n logo: this._options.logo,\n numeric_formatting: this._options.numeric_formatting,\n rss_news_feed: this._options.rss_news_feed,\n newsProvider: this._options.news_provider,\n loadLastChart: this._options.load_last_chart,\n saveLoadAdapter: this._options.save_load_adapter,\n loading_screen: this._options.loading_screen,\n settingsAdapter: this._options.settings_adapter,\n getCustomIndicators: this._options.custom_indicators_getter,\n additionalSymbolInfoFields: this._options.additional_symbol_info_fields,\n headerWidgetButtonsMode: this._options.header_widget_buttons_mode,\n customTranslateFunction: this._options.custom_translate_function,\n symbolSearchComplete: this._options.symbol_search_complete,\n contextMenu: this._options.context_menu,\n settingsOverrides: this._options.settings_overrides,\n timeframe: this._options.timeframe\n }, this._options.saved_data) t[this._id].chartContent = {\n json: this._options.saved_data\n }, this._options.saved_data_meta_info && (t[this._id].chartContentExtendedData = this._options.saved_data_meta_info);else if (!this._options.load_last_chart && !this._options.symbol) throw new Error(\"Symbol is not defined: either 'symbol' or 'load_last_chart' option must be set\");\n this._options.library_path && !this._options.library_path.endsWith(\"/\") && console.warn(\"library_path option should contain a trailing forward slash\");\n var e = s(this._options.library_path || \"\", this._options.locale),\n n = new Blob([e], {\n type: \"text/html\"\n }),\n i = URL.createObjectURL(n),\n o = new URL(i),\n r = \"symbol=\" + encodeURIComponent(this._options.symbol || \"\") + \"&interval=\" + encodeURIComponent(this._options.interval) + (this._options.toolbar_bg ? \"&toolbarbg=\" + encodeURIComponent(this._options.toolbar_bg.replace(\"#\", \"\")) : \"\") + (this._options.studies_access ? \"&studiesAccess=\" + encodeURIComponent(JSON.stringify(this._options.studies_access)) : \"\") + \"&widgetbar=\" + encodeURIComponent(JSON.stringify(this._options.widgetbar)) + (this._options.drawings_access ? \"&drawingsAccess=\" + encodeURIComponent(JSON.stringify(this._options.drawings_access)) : \"\") + \"&timeFrames=\" + encodeURIComponent(JSON.stringify(this._options.time_frames)) + \"&locale=\" + encodeURIComponent(this._options.locale) + \"&uid=\" + encodeURIComponent(this._id) + \"&clientId=\" + encodeURIComponent(String(this._options.client_id)) + \"&userId=\" + encodeURIComponent(String(this._options.user_id)) + (this._options.charts_storage_url ? \"&chartsStorageUrl=\" + encodeURIComponent(this._options.charts_storage_url) : \"\") + (this._options.charts_storage_api_version ? \"&chartsStorageVer=\" + encodeURIComponent(this._options.charts_storage_api_version) : \"\") + (this._options.custom_css_url ? \"&customCSS=\" + encodeURIComponent(this._options.custom_css_url) : \"\") + (this._options.custom_font_family ? \"&customFontFamily=\" + encodeURIComponent(this._options.custom_font_family) : \"\") + (this._options.auto_save_delay ? \"&autoSaveDelay=\" + encodeURIComponent(String(this._options.auto_save_delay)) : \"\") + \"&debug=\" + encodeURIComponent(String(this._options.debug)) + (this._options.snapshot_url ? \"&snapshotUrl=\" + encodeURIComponent(this._options.snapshot_url) : \"\") + (this._options.timezone ? \"&timezone=\" + encodeURIComponent(this._options.timezone) : \"\") + (this._options.study_count_limit ? \"&studyCountLimit=\" + encodeURIComponent(String(this._options.study_count_limit)) : \"\") + (this._options.symbol_search_request_delay ? \"&ssreqdelay=\" + encodeURIComponent(String(this._options.symbol_search_request_delay)) : \"\") + (this._options.compare_symbols ? \"&compareSymbols=\" + encodeURIComponent(JSON.stringify(this._options.compare_symbols)) : \"\") + (this._options.theme ? \"&theme=\" + encodeURIComponent(String(this._options.theme)) : \"\") + (this._options.header_widget_buttons_mode ? \"&header_widget_buttons_mode=\" + encodeURIComponent(String(this._options.header_widget_buttons_mode)) : \"\") + (this._options.time_scale ? \"&time_scale=\" + encodeURIComponent(JSON.stringify(this._options.time_scale)) : \"\");\n return o.hash = r, \"\");\n }\n }]);\n\n return a;\n}();\n\nwindow.TradingView = window.TradingView || {}, window.TradingView.version = r;\nexport { r as version, a as widget };","import { widget } from '@tradingblock/tradingview/dist/charting_library';\nexport var createTradingViewChart = function createTradingViewChart(props, onAutoSave) {\n var containerId = props.containerId,\n container = props.container,\n datafeed = props.datafeed,\n symbol = props.symbol,\n interval = props.interval,\n savedData = props.savedData,\n autoSaveDelay = props.autoSaveDelay,\n fullscreen = props.fullscreen,\n autosize = props.autosize,\n libraryPath = props.libraryPath,\n chartsStorageUrl = props.chartsStorageUrl,\n chartsStorageApiVersion = props.chartsStorageApiVersion,\n clientId = props.clientId,\n userId = props.userId,\n studiesOverrides = props.studiesOverrides;\n var widgetOptions = Object.assign({}, props, {\n symbol: symbol,\n // BEWARE: no trailing slash is expected in feed URL\n datafeed: datafeed,\n interval: interval,\n saved_data: savedData,\n auto_save_delay: autoSaveDelay,\n fullscreen: fullscreen,\n autosize: autosize,\n container: containerId,\n library_path: libraryPath,\n // locale: getLanguageFromURL() || 'en',\n locale: 'en',\n charts_storage_url: chartsStorageUrl,\n charts_storage_api_version: chartsStorageApiVersion,\n client_id: clientId,\n user_id: userId,\n studies_overrides: studiesOverrides\n });\n var tvWidget = new widget(widgetOptions);\n tvWidget.onChartReady(function () {\n tvWidget.subscribe('onAutoSaveNeeded', function () {\n tvWidget.save(function (data) {\n return onAutoSave('savedData', data);\n });\n });\n var activeChart = tvWidget.activeChart();\n\n if (activeChart) {\n activeChart.onIntervalChanged().subscribe(null, function (interval) {\n onAutoSave('interval', interval);\n });\n activeChart.onChartTypeChanged().subscribe(null, function (chartType) {\n onAutoSave('chartType', chartType);\n });\n } // _.each(tvWidget.activeChart().getPanes(), pane => {\n // pane.getMainSourcePriceScale().setMode(PriceScaleMode.IndexedTo100);\n // });\n\n\n tvWidget.subscribe('toggle_sidebar', function (hidden) {\n onAutoSave('showLeftToolbar', !hidden);\n }); // onAutoSave chartType when chart is ready\n\n if (activeChart) {\n onAutoSave('chartType', activeChart.chartType());\n onAutoSave('interval', activeChart.resolution());\n }\n });\n return tvWidget;\n};","import dayjs from 'dayjs';\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\ndayjs.extend(customParseFormat);\nvar channelToSubscription = new Map();\nexport var subscribeOnStream = function subscribeOnStream(symbolInfo, resolution, onRealtimeCallback, subscribeUID, onResetCacheNeededCallback, lastDailyBar) {\n var handler = {\n id: subscribeUID,\n callback: onRealtimeCallback\n };\n var channelString = \"0~\".concat(symbolInfo.exchange, \"~\").concat(symbolInfo.name, \"~\").concat(symbolInfo.name, \"~\").concat(resolution);\n var subscriptionItem = channelToSubscription.get(channelString);\n\n if (subscriptionItem) {\n subscriptionItem.handlers.push(handler);\n return;\n }\n\n subscriptionItem = {\n subscribeUID: subscribeUID,\n resolution: resolution,\n lastDailyBar: lastDailyBar,\n handlers: [handler]\n };\n channelToSubscription.set(channelString, subscriptionItem);\n};\nexport var handleUpdates = function handleUpdates(symbolInfo, resolution, onRealtimeCallback, subscribeUID, onResetCacheNeededCallback, quote, isHeikinAshi) {\n var LastTradePrice = quote.LastTradePrice,\n ReceivedTime = quote.ReceivedTime;\n var channelString = \"0~\".concat(symbolInfo.exchange, \"~\").concat(symbolInfo.name, \"~\").concat(symbolInfo.name, \"~\").concat(resolution);\n var subscriptionItem = channelToSubscription.get(channelString);\n\n if (subscriptionItem === undefined) {\n return;\n }\n\n var barTime = dayjs(ReceivedTime, 'MM/DD/YYYY HH:mm:ss').format('YYYY-MM-DDTHH:mm:ss') + 'Z';\n var date = new Date(barTime);\n var dateValue = dayjs(date);\n var latestExistingBarTime = dayjs(subscriptionItem.lastDailyBar.time);\n var time = latestExistingBarTime.unix() > dateValue.unix() ? latestExistingBarTime : dateValue;\n var lastDailyBar = subscriptionItem.lastDailyBar;\n var isNextBar = dateValue.unix() >= latestExistingBarTime.unix();\n var bar; // heikin ashi calculations\n\n var haOpen = (lastDailyBar.open + lastDailyBar.close) / 2;\n var haClose = (quote.LastTradePrice + quote.LastTradePrice + quote.LastTradePrice + quote.LastTradePrice) / 4;\n var haHigh = Math.max(quote.LastTradePrice, lastDailyBar.open, lastDailyBar.close);\n var haLow = Math.min(quote.LastTradePrice, lastDailyBar.open, lastDailyBar.close);\n\n if (isNextBar) {\n bar = {\n time: time.valueOf(),\n open: resolution === '1D' ? lastDailyBar.open : isHeikinAshi ? haOpen : LastTradePrice,\n high: resolution === '1D' ? lastDailyBar.high : isHeikinAshi ? haHigh : LastTradePrice,\n low: resolution === '1D' ? lastDailyBar.low : isHeikinAshi ? haLow : LastTradePrice,\n close: isHeikinAshi ? haClose : LastTradePrice,\n volume: resolution === '1D' ? lastDailyBar.volume : isHeikinAshi ? quote.LastTradeVolume + lastDailyBar.volume : quote.LastTradeVolume\n };\n } else {\n bar = Object.assign({}, lastDailyBar, {\n high: Math.max(lastDailyBar.high, LastTradePrice),\n low: Math.min(lastDailyBar.low, LastTradePrice),\n close: LastTradePrice,\n time: time.valueOf(),\n volume: lastDailyBar.volume + quote.LastTradeVolume\n });\n }\n\n subscriptionItem.lastDailyBar = bar;\n subscriptionItem.handlers.forEach(function (handler) {\n handler.callback(bar);\n });\n};\nexport var unsubscribeFromStream = function unsubscribeFromStream(subscribeUID) {\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = channelToSubscription.keys()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var channelString = _step.value;\n var subscriptionItem = channelToSubscription.get(channelString);\n var handlerIndex = subscriptionItem.handlers.findIndex(function (handler) {\n return handler.id === subscribeUID;\n });\n\n if (handlerIndex !== -1) {\n subscriptionItem.handlers.splice(handlerIndex, 1);\n\n if (subscriptionItem.handlers.length === 0) {\n channelToSubscription.delete(channelString);\n break;\n }\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n};","import _toConsumableArray from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/slicedToArray\";\nimport _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\nimport _asyncToGenerator from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/asyncToGenerator\";\nimport _classCallCheck from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport { getLocalDateFromTimezone, logger, isToday } from '@tradingblock/api';\nimport dayjs from 'dayjs';\nimport LocalizedFormat from 'dayjs/plugin/localizedFormat';\nimport utc from 'dayjs/plugin/utc';\nimport _ from 'lodash';\nimport { DEFAULT_TRADINGSESSION } from './constants';\nimport { handleUpdates, subscribeOnStream, unsubscribeFromStream } from './streaming';\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\ndayjs.extend(customParseFormat);\ndayjs.extend(LocalizedFormat);\ndayjs.extend(utc);\nvar AllSupportedResolutions = ['1', '5', '15', '30', '60', '1D'];\nvar lastBarsCache = new Map();\nvar symbolInfoCache = new Map();\nvar listenerGUIDCache = new Map();\nexport var TradingViewDataFeed = function TradingViewDataFeed(api) {\n var _this = this;\n\n _classCallCheck(this, TradingViewDataFeed);\n\n this.onReady = function (callback) {\n var config = {\n supports_marks: false,\n supports_timescale_marks: false,\n supports_time: true,\n supported_resolutions: AllSupportedResolutions\n };\n setTimeout(function () {\n return callback(config);\n });\n };\n\n this.searchSymbols =\n /*#__PURE__*/\n function () {\n var _ref = _asyncToGenerator(\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee(userInput, exchange, symbolType, onResult) {\n var query, symbols, newSymbols, data;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n query = userInput ? userInput.trim() : '';\n _context.next = 3;\n return _this.api.getSymbols({\n query: query\n }, 200);\n\n case 3:\n symbols = _context.sent;\n newSymbols = symbols.filter(function (symbol) {\n var isExchangeValid = exchange === '' || symbol.PrimaryExchange === exchange;\n var isFullSymbolContainsInput = symbol.Symbol.indexOf(query.toUpperCase()) !== -1;\n return isExchangeValid && isFullSymbolContainsInput;\n });\n data = newSymbols.map(function (symbol) {\n return {\n symbol: symbol.Symbol,\n full_name: symbol.Symbol,\n description: symbol.Description,\n exchange: symbol.PrimaryExchange,\n ticker: symbol.Symbol,\n type: symbol.Type\n };\n });\n onResult(data);\n\n case 7:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x, _x2, _x3, _x4) {\n return _ref.apply(this, arguments);\n };\n }();\n\n this.resolveSymbol = function (symbol, onResolve, onError) {\n var _$split = _.split(symbol, ':'),\n _$split2 = _slicedToArray(_$split, 2),\n exchange = _$split2[0],\n symbolName = _$split2[1]; // fallback to symbol passed in if no value after colon\n\n\n var symbolValue = symbolName || symbol;\n\n _this.api.getSymbols({\n query: symbolValue\n }, 1).then(function (symbolRes) {\n var match = _.find(symbolRes, function (s) {\n return s.Symbol && symbolValue && s.Symbol.trim().toLowerCase() === symbolValue.trim().toLowerCase();\n });\n\n var symbol = match || _.first(symbolRes);\n\n if (symbol) {\n _this.symbol = symbol.Symbol;\n var res = {\n format: 'price',\n name: symbol.Symbol,\n full_name: symbol.Symbol,\n description: symbol.Description,\n ticker: symbol.Symbol,\n exchange: symbol.PrimaryExchange,\n listed_exchange: symbol.PrimaryExchange,\n supported_resolutions: AllSupportedResolutions,\n type: symbol.Type,\n session: DEFAULT_TRADINGSESSION,\n minmov: 1,\n minmove2: 0,\n pricescale: 100,\n timezone: 'America/New_York',\n has_intraday: true,\n has_daily: true,\n has_weekly_and_monthly: false,\n currency_code: '$',\n data_status: 'streaming'\n };\n onResolve(res);\n } else {\n onError('couldnt find symbol');\n }\n });\n };\n\n this.getPeriodForResolution = function (res) {\n if (['1', '5', '15', '30'].includes(res)) {\n return \"M\".concat(res);\n } else if (res === '60') {\n return 'H1';\n } else {\n return 'Day';\n }\n };\n\n this.getBars =\n /*#__PURE__*/\n function () {\n var _ref2 = _asyncToGenerator(\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2(symbolInfo, resolution, periodParams, onResult, onError) {\n var rangeStartDate, rangeEndDate, firstDataRequest, period, starttime, endtime, maxDate, minDate, data, bars;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n rangeStartDate = periodParams.from, rangeEndDate = periodParams.to, firstDataRequest = periodParams.firstDataRequest;\n period = _this.getPeriodForResolution(resolution);\n starttime = getLocalDateFromTimezone(dayjs.unix(rangeStartDate)).toDate();\n endtime = getLocalDateFromTimezone(dayjs.unix(rangeEndDate)).toDate();\n\n if (endtime.valueOf() > _this.api.marketClose.valueOf()) {\n endtime = _this.api.marketClose;\n }\n\n maxDate = undefined;\n minDate = undefined;\n _context2.prev = 7;\n _context2.next = 10;\n return _this.api.getBars({\n symbol: symbolInfo.name,\n period: period,\n starttime: starttime,\n endtime: endtime\n });\n\n case 10:\n data = _context2.sent;\n\n // nextTime should be equal to 2 weeks before the first bar in the response\n if (data.length === 0) {\n onResult([], {\n noData: true,\n nextTime: rangeStartDate - 1209600\n });\n }\n\n bars = [];\n data.forEach(function (bar) {\n var bdate;\n var dateString = bar.D.toString();\n\n if (isToday(bar.D)) {\n bdate = getLocalDateFromTimezone(dayjs(dateString));\n } else {\n bdate = getLocalDateFromTimezone(dayjs(bar.D));\n }\n\n maxDate = maxDate === undefined ? bdate : bdate > maxDate ? bdate : maxDate;\n minDate = minDate === undefined || bdate < minDate ? bdate : minDate;\n bars = [].concat(_toConsumableArray(bars), [{\n time: bdate.utc().valueOf(),\n low: bar.L,\n high: bar.H,\n open: bar.O,\n close: bar.C,\n volume: bar.V\n }]);\n _this.bars = bars;\n });\n\n if (firstDataRequest) {\n // set lastBarsCache equal to the last bar in the response that is within the range\n if (bars[bars.length - 1] !== undefined) {\n lastBarsCache.set(\"\".concat(symbolInfo.name, \"~\").concat(resolution), bars[bars.length - 1]);\n }\n }\n\n onResult(bars, {\n noData: false\n });\n _context2.next = 21;\n break;\n\n case 18:\n _context2.prev = 18;\n _context2.t0 = _context2[\"catch\"](7);\n onError(_context2.t0);\n\n case 21:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, null, [[7, 18]]);\n }));\n\n return function (_x5, _x6, _x7, _x8, _x9) {\n return _ref2.apply(this, arguments);\n };\n }();\n\n this.subscribeBars =\n /*#__PURE__*/\n function () {\n var _ref3 = _asyncToGenerator(\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3(symbolInfo, resolution, onTick, listenerGuid, onResetCacheNeededCallback) {\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _this.subscribeBarsCallback = onTick;\n _this.resetCacheCallback = onResetCacheNeededCallback;\n _this.resolution = resolution;\n _this.listenToQuotes = true;\n symbolInfoCache.set(\"\".concat(symbolInfo.name, \"~\").concat(resolution), symbolInfo);\n listenerGUIDCache.set(\"\".concat(symbolInfo.name, \"~\").concat(resolution), listenerGuid);\n\n _this.symbols.push(symbolInfo.name);\n\n subscribeOnStream(symbolInfo, resolution, onTick, listenerGuid, onResetCacheNeededCallback, lastBarsCache.get(\"\".concat(symbolInfo.name, \"~\").concat(resolution)));\n\n case 8:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n\n return function (_x10, _x11, _x12, _x13, _x14) {\n return _ref3.apply(this, arguments);\n };\n }();\n\n this.unsubscribeBars = function (listenerGuid) {\n _this.listenToQuotes = false;\n _this.bars = [];\n unsubscribeFromStream(listenerGuid);\n };\n\n this.isNextBar = function (latestExistingDate, nextDate, resolution) {\n return latestExistingDate.unix() < nextDate.unix();\n };\n\n this.resetCache = function () {\n if (_this.resetCacheCallback) {\n _this.resetCacheCallback();\n }\n };\n\n this.onQuoteChange =\n /*#__PURE__*/\n function () {\n var _ref4 = _asyncToGenerator(\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4(quotes, interval, isHeikinAshi) {\n var quotesArray;\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n // convert quotes object to array\n quotesArray = Object.keys(quotes).map(function (key) {\n return quotes[key];\n });\n quotesArray.forEach(function (quote) {\n if (!quote || !quote.Symbol) {\n return;\n }\n\n var symbol = quote.Symbol;\n var symbolInfo = symbolInfoCache.get(\"\".concat(symbol, \"~\").concat(_this.resolution));\n var listenerGuid = listenerGUIDCache.get(\"\".concat(symbol, \"~\").concat(_this.resolution));\n var lastBarsCacheValue = lastBarsCache.get(\"\".concat(symbol, \"~\").concat(_this.resolution));\n\n if (!symbolInfo || !listenerGuid || !lastBarsCacheValue) {\n console.log('ignoring quote %O', {\n quote: quote,\n symbolInfo: symbolInfo,\n listenerGuid: listenerGuid,\n lastBarsCacheValue: lastBarsCacheValue,\n resolution: _this.resolution,\n symbolInfoCache: symbolInfoCache,\n listenerGUIDCache: listenerGUIDCache,\n lastBarsCache: lastBarsCache\n });\n console.debug(\"ignoring \".concat(symbol, \"-\").concat(_this.resolution, \" because either bars havent loaded yet or symbolInfoCache is missing\"));\n return;\n }\n\n handleUpdates(symbolInfo, interval, _this.subscribeBarsCallback, listenerGuid, _this.resetCacheCallback, quote, isHeikinAshi);\n });\n\n case 2:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n\n return function (_x15, _x16, _x17) {\n return _ref4.apply(this, arguments);\n };\n }();\n\n this.api = api;\n this.bars = [];\n this.listenToQuotes = false;\n this.log = logger('DataFeed');\n this.emptyResponses = 0;\n this.symbols = [];\n}; // calculateHistoryDepth?(resolution: ResolutionString, resolutionBack: ResolutionBackValues, intervalBack: number): HistoryDepth | undefined;\n// getMarks?(symbolInfo: LibrarySymbolInfo, from: number, to: number, onDataCallback: GetMarksCallback, resolution: ResolutionString): void;\n// getTimescaleMarks?(symbolInfo: LibrarySymbolInfo, from: number, to: number, onDataCallback: GetMarksCallback, resolution: ResolutionString): void;\n\n/**\n * This function is called if configuration flag supports_time is set to true when chart needs to know the server time.\n * The charting library expects callback to be called once.\n * The time is provided without milliseconds. Example: 1445324591. It is used to display Countdown on the price scale.\n */\n// getServerTime?(callback: ServerTimeCallback): void;\n// subscribeDepth?(symbolInfo: LibrarySymbolInfo, callback: DomeCallback): string;\n// unsubscribeDepth?(subscriberUID: string): void;","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useMemo, useRef, useEffect, useLayoutEffect, useCallback } from 'react';\nimport _ from 'lodash';\nimport { AssetSymbol, MarketDataEntitlementTypeId } from '@tradingblock/types';\nimport { TradingViewChartOptions, createTradingViewChart } from '@tradingblock/tradingview';\nimport { IChartingLibraryWidget, TimeFrameItem } from '@tradingblock/tradingview/dist/charting_library';\nimport { useBlockActions, useBlockData } from '../../components/blocks/BlockState';\nimport { useLastTradePricesOrUndefined } from '../../hooks/useFeedQuote';\nimport { Colors } from '../../constants';\nimport { PriceChartState } from './state/PriceChartState';\nimport { PriceChartSettingsKey, usePriceChartSettings } from './state/PriceChartSettings';\nimport { useTradingviewDatafeed } from './hooks/useTradingviewDatafeed';\nimport { getDrawingOverrides } from './options/drawingOverrides';\nimport { getOverrides } from './options/overrides';\nimport { timeZone } from '@tradingblock/api';\nimport { EntityInfo, ResolutionString } from '@tradingblock/tradingview/src/charting_library';\nimport { useDispatch } from 'react-redux';\nimport { QuoteDataActions } from '../../data/global/actions';\nimport { isMarketOpen } from '../../utilities/date';\nimport { useQuoteActions } from '../../hooks/useQuoteData';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { Loading } from '@tradingblock/components';\n\ninterface PriceChartGraphProps {\n symbol: AssetSymbol;\n containerId: string;\n}\n\nconst DefaultInterval = '5' as ResolutionString;\n\n// chartType enum\nexport enum ChartType {\n Bar = 0,\n Candle = 1,\n Line = 2,\n Area = 3,\n Renko = 4,\n Kagi = 5,\n PnF = 6,\n LineBreak = 7,\n HeikinAshi = 8,\n HollowCandle = 9,\n Baseline = 10,\n HiLo = 12,\n Column = 13,\n}\n\n// function to determine if chart type is heikin ashi\nconst isHeikinAshi = (chartType: ChartType) => {\n return chartType === ChartType.HeikinAshi;\n};\n\nexport const PriceChartGraph: React.FC = props => {\n const { isLoaded, savedData, interval, showLeftToolbar, chartType, symbol } = useBlockData();\n const { setField: set } = useBlockActions();\n\n const saveChartData = useCallback((key: PriceChartSettingsKey, data: any) => {\n set(key, data, { persist: true });\n }, []);\n const blockSymbol = symbol && symbol.rootSymbol;\n\n // don't render chart until block data has loaded\n if (!savedData && !isLoaded) {\n console.error('not rendering chart because data doesnt exist OR isLoaded is false', { isLoaded, savedData });\n return null;\n }\n\n return (\n \n );\n};\n\ninterface PriceChartGraphComponentProps\n extends PriceChartGraphProps,\n Pick {\n saveData: (key: PriceChartSettingsKey, data: any) => void;\n blockSymbol?: string;\n}\n\nconst PriceChartGraphComponent: React.FC = props => {\n const { containerId, savedData, interval, showLeftToolbar, chartType, saveData, blockSymbol } = props;\n const { symbol, provider } = props.symbol;\n\n const chartRef = useRef();\n const datafeed = useTradingviewDatafeed();\n const { debug } = usePriceChartSettings();\n const symbols = _.uniq(datafeed.symbols);\n const dispatch = useDispatch();\n const { addQuote } = useQuoteActions();\n const [chartTypeValue, setChartTypeValue] = React.useState(chartType || ChartType.Candle);\n const [chartInterval, setChartInterval] = React.useState(interval || DefaultInterval);\n const state = useStateSelector(state => state);\n const [studies, setStudies] = React.useState([]);\n\n useEffect(() => {\n if (symbols.length > 0) {\n dispatch(QuoteDataActions.requestQuote({ symbol: symbols }));\n addQuote(symbols);\n }\n }, [datafeed, symbols.length, dispatch]);\n\n const visibilityChartSync = function() {\n if (document.visibilityState === 'visible') {\n if (chartRef && chartRef.current) {\n if (datafeed && chartRef && chartRef.current !== undefined) {\n datafeed.resetCache();\n if (!chartRef || chartRef.current === undefined) {\n return;\n } else if (chartRef && chartRef.current !== undefined && chartRef.current.activeChart() !== undefined) {\n chartRef.current.activeChart().resetData();\n }\n }\n }\n }\n };\n\n useEffect(() => {\n document.addEventListener('visibilitychange', visibilityChartSync);\n return () => {\n document.removeEventListener('visibilitychange', visibilityChartSync);\n };\n }, [chartRef, datafeed]);\n\n const timeFrames: TimeFrameItem[] = [\n { text: '3m', resolution: '60' as ResolutionString, description: '3 Months' },\n { text: '1m', resolution: '30' as ResolutionString, description: '1 Month' },\n { text: '5d', resolution: '5' as ResolutionString, description: '5 Days' },\n { text: '1d', resolution: '1' as ResolutionString, description: '1 Day' },\n ];\n\n const graphSettings = useMemo(() => {\n return {\n locale: 'en',\n libraryPath: '/charting_library/',\n // chartsStorageUrl: 'https://saveload.tradingview.com',\n // chartsStorageApiVersion: '1.1',\n clientId: 'tradingview.com',\n userId: 'public_user_id',\n disabled_features: [\n 'use_localstorage_for_settings',\n 'adaptive_logo',\n 'header_screenshot',\n 'header_symbol_search',\n 'widget_logo',\n 'go_to_date',\n 'popup_hints',\n ],\n create_volume_indicator_by_default: false,\n enabled_features: ['move_logo_to_main_pane', 'hide_left_toolbar_by_default'],\n fullscreen: false,\n studiesOverrides: {},\n datafeed,\n debug: false,\n autosize: true,\n symbol: `${provider}:${symbol}`,\n savedData,\n // autoSaveDelay: 1000,\n interval: (interval as ResolutionString) || (DefaultInterval as ResolutionString),\n timezone: timeZone,\n theme: 'Dark',\n style: '1',\n custom_css_url: `${process.env.PUBLIC_URL}/styles/tradingview.css`,\n enable_publishing: false,\n allow_symbol_change: false,\n hide_top_toolbar: true,\n save_image: false,\n containerId,\n container: 'tv_chart_container',\n overrides: {\n ...getOverrides({ primaryColor: Colors.primary }),\n ...getDrawingOverrides(),\n },\n time_frames: timeFrames,\n };\n // note: chartData and symbol have been left out of deps purposefully, to avoid regenerating chart\n }, [datafeed, debug, containerId]);\n\n // useLayoutEffect(() => {\n // if (chartRef.current) {\n // chartRef.current.changeTheme(theme);\n // }\n // }, [theme]);\n\n useLayoutEffect(() => {\n if (chartRef && chartRef.current) {\n chartRef.current.onChartReady(() => {\n if (chartRef && chartRef.current !== undefined) {\n chartRef.current.hideAllDrawingTools().setValue(!showLeftToolbar);\n }\n });\n }\n }, [showLeftToolbar]);\n\n // sync chart type on change\n useEffect(() => {\n if (chartType && chartType !== chartTypeValue && chartRef && chartRef.current !== undefined) {\n chartRef.current.onChartReady(() => {\n visibilityChartSync();\n setChartTypeValue(chartType);\n });\n }\n }, [chartType, chartTypeValue, chartRef.current]);\n\n const [disableChart, setDisableChart] = React.useState(false);\n\n // sync chart interval on change\n useEffect(() => {\n const chart = document.querySelectorAll('.block-price-chart');\n if (interval && chartRef && chartRef.current !== undefined && chart.length > 0) {\n chartRef.current.onChartReady(() => {\n visibilityChartSync();\n setChartInterval(interval);\n setDisableChart(true);\n // disable clicking on chart element for 3 seconds\n chart.forEach((element: any) => {\n element.classList.add('chart-disabled');\n const timer = setTimeout(() => {\n setDisableChart(false);\n element.classList.remove('chart-disabled');\n }, 3000);\n\n return () => clearTimeout(timer);\n });\n });\n }\n }, [interval, chartInterval, chartRef.current, chartTypeValue, chartType, chartRef]);\n\n useEffect(() => {\n if (chartRef && chartRef.current !== undefined) {\n chartRef.current.onChartReady(() => {\n if (chartRef && chartRef.current !== undefined && symbol && provider !== undefined) {\n chartRef.current.setSymbol(`${provider}:${symbol}`, (interval as any) || DefaultInterval, () => {});\n }\n if (chartRef && chartRef.current !== undefined && _.includes(symbol, '$')) {\n chartRef.current.setSymbol(`${provider}:${symbol}`, (interval as any) || DefaultInterval, () => {});\n }\n });\n }\n }, [symbol, provider, interval]);\n\n useEffect(() => {\n if (chartRef && chartRef.current === undefined) {\n console.warn('PriceChartGraph :: creating', symbol, 'chart with data ', graphSettings.savedData);\n chartRef.current = createTradingViewChart(graphSettings, saveData);\n }\n\n return () => {\n if (chartRef && chartRef.current !== undefined) {\n chartRef.current.remove();\n chartRef.current = undefined;\n }\n };\n }, [graphSettings, saveData, chartRef]);\n\n useEffect(() => {\n // if charting symbol and block symbol are different, then we need to update the chart to utilize the block symbol\n if (chartRef && chartRef.current !== undefined && blockSymbol !== undefined && blockSymbol !== symbol) {\n console.warn('PriceChartGraph :: Block/Chart Symbol Desync - updating chart symbol to ', blockSymbol);\n chartRef.current.onChartReady(() => {\n if (chartRef && chartRef.current !== undefined && blockSymbol !== undefined) {\n chartRef.current.setSymbol(`${provider}:${blockSymbol}`, (interval as any) || DefaultInterval, () => {});\n }\n });\n }\n }, [blockSymbol, interval, provider, symbol]);\n\n // Fetch last trade prices of all symbols involved in the chart and update the datafeed\n // If the chart is a heikin ashi chart, TimeReceived will not include seconds only hour and minutes\n const lastPrices = useLastTradePricesOrUndefined(symbols, isHeikinAshi(chartType || 1), interval || DefaultInterval);\n\n const entitlement = useStateSelector(s => s.account.dataEntitled);\n const delayedQuotes = entitlement === MarketDataEntitlementTypeId.DelayedQuotesOnlyUser;\n\n const marketIsOpen = isMarketOpen(interval === ('1D' as ResolutionString));\n\n useEffect(() => {\n if (lastPrices && marketIsOpen) {\n datafeed.onQuoteChange(lastPrices, interval, isHeikinAshi(chartType || 1));\n }\n }, [lastPrices, datafeed, interval, marketIsOpen]);\n\n // Need to save the chart data whenever a study is created or removed from the chart\n // previously, these updates were delayed by up to 5 seconds, which was causing some confusion as to why removed studies were still showing up\n // or why newly created studies were not showing up after a refresh or page navigation\n useEffect(() => {\n // We're checking if `chartRef` is defined and if it points to a current chart.\n if (chartRef && chartRef.current !== undefined) {\n // If `chartRef.current` is defined, we then wait for the chart to be ready.\n chartRef.current.onChartReady(() => {\n // Once the chart is ready, we check again if `chartRef.current` is still defined.\n // This check is necessary because the reference may have changed while we were waiting for the chart to be ready.\n if (chartRef && chartRef.current !== undefined && chartRef.current.activeChart() !== undefined) {\n // If `chartRef.current` is still defined, we retrieve all studies from the active chart.\n const currentStudies = chartRef.current.activeChart().getAllStudies();\n // We then store these studies in the state.\n setStudies(currentStudies);\n // We compare the new list of studies with the old list.\n // If they are not equal, it means the studies have changed.\n if (!_.isEqual(currentStudies, studies)) {\n // If the studies have changed, we update the state with the new studies,\n // and then we save the chart's current state.\n setStudies(currentStudies);\n chartRef.current.save((savedData: any) => {\n // The `save` method's callback receives the chart's saved state,\n // which we then store in our mongo database.\n saveData('savedData', savedData);\n });\n }\n }\n });\n }\n }, [chartRef.current, lastPrices]); // The effect depends on `chartRef.current` and `lastPrices`.\n\n return (\n <>\n
    \n
    \n {/* */}\n
    \n
    \n
    \n
    {disableChart && }
    \n \n );\n};\n","export var DEFAULT_TRADINGSESSION = '0930-1600';","import dayjs from 'dayjs';\nimport _ from 'lodash';\nimport { DataFeedDataProvider } from '@tradingblock/tradingview';\nimport { ApiFactory, GetBarsOptions, Bar, ITradingBlockApi } from '@tradingblock/api';\nimport { stringOrQuery } from '@tradingblock/types';\nimport { TimeTillClose } from '../../utilities/date';\n\nexport type ApiType = ReturnType;\n\ninterface PeriodBar {\n from: Date;\n to: Date;\n bars: Bar[];\n}\ninterface PeriodBars {\n [period: string]: PeriodBar;\n}\ninterface CachedBars {\n [symbol: string]: PeriodBars;\n}\nconst getError = (reason: string) => ({ reason });\n\nconst getAllBarsForPeriod = async (\n api: ITradingBlockApi,\n symbol: string,\n options: Omit, 'symbol'>\n) => {\n const { starttime, endtime, period, bars } = options;\n const start = dayjs(starttime || new Date());\n const end = endtime ? dayjs(endtime) : undefined;\n\n const tryGetBars = (from: dayjs.Dayjs, to: dayjs.Dayjs) => {\n return api.getBars({\n symbol,\n period,\n bars,\n starttime: from.toDate(),\n endtime: to.toDate(),\n });\n };\n const { payload } = await tryGetBars(start, end || dayjs(new Date()));\n let barResult: Bar[] = payload ? [...payload] : [];\n // let minDateValue = _(barResult)\n // .map(b => dayjs(b.D).valueOf())\n // .min();\n // let requestCount = 1;\n // while (minDateValue !== undefined && minDateValue > start.valueOf() && requestCount < 5) {\n // requestCount++;\n // const currEnd = dayjs(minDateValue);\n // const moreBarResults = await tryGetBars(start.add(-1, 'day'), currEnd);\n // barResult.concat(moreBarResults.Payload);\n // minDateValue = _(barResult)\n // .map(b => dayjs(b.D).valueOf())\n // .min();\n // }\n return barResult;\n};\n\nexport class CachedApi implements DataFeedDataProvider {\n private api: ITradingBlockApi;\n private cache: CachedBars;\n public constructor(tbapi: ITradingBlockApi) {\n this.api = tbapi;\n if (!tbapi) {\n throw getError('API cannot be undefined');\n }\n this.cache = {};\n }\n public marketClose = TimeTillClose().toDate();\n public getSymbols = (query: stringOrQuery, limit: number = 10) => this.api.getSymbols(query, limit);\n public getBars = async (options: GetBarsOptions) => {\n const { symbol, starttime, endtime, period } = options;\n const symbolVal = _.isString(symbol) ? symbol : _.first(symbol);\n if (symbolVal === undefined) {\n throw getError('symbol must be set');\n } else if (typeof symbol !== 'string') {\n console.warn('symbol isnt a string', symbol);\n }\n const cacheKey = `${symbolVal}-${period}`;\n const symbolData = this.cache[cacheKey];\n\n const start = dayjs(starttime || new Date());\n if (starttime === undefined) {\n throw getError('starttime must be set');\n }\n const end = dayjs(endtime || new Date());\n const symbolPeriodData = symbolData ? _.get(symbolData, period, undefined) : undefined;\n if (symbolPeriodData && dayjs(symbolPeriodData.from).valueOf() <= start.valueOf()) {\n const cachedResults =\n starttime === undefined\n ? symbolPeriodData.bars\n : _.filter(symbolPeriodData.bars, b => dayjs(b.D) >= start && dayjs(b.D) <= end);\n if (cachedResults !== undefined && cachedResults.length !== 0) {\n console.info(\n `cached data for ${symbol} - ${period} exists, but refetching anyway. CachedData: `,\n cachedResults\n );\n //return cachedResults;\n }\n }\n const bars = await getAllBarsForPeriod(this.api, symbolVal, options).then(barResults => {\n return _.map(barResults, b => {\n return {\n ...b,\n //open\n O: _.round(b.O, 2),\n //high\n H: _.round(b.H, 2),\n //low\n L: _.round(b.L, 2),\n //close\n C: _.round(b.C, 2),\n //volume\n V: _.round(b.V, 2),\n };\n });\n });\n this.cache = {\n ...this.cache,\n [cacheKey]: {\n ...symbolData,\n [period]: {\n from: start.toDate(),\n to: end.toDate(),\n bars,\n },\n },\n };\n return bars;\n };\n public getQuotes = async (symbols: string[]) => {\n const { payload } = await this.api.quotes.getChartingFeed(symbols);\n return payload;\n };\n}\n","import { useMemo } from 'react';\nimport { TradingViewDataFeed } from '@tradingblock/tradingview';\nimport { CachedApi } from '../../../data/charts/CachedApi';\nimport { useApi } from '../../../context/Api';\n\nexport const useTradingviewDatafeed = () => {\n const api = useApi();\n\n const feed = useMemo(() => new TradingViewDataFeed(new CachedApi(api)), [api]);\n return feed;\n};\n","export interface OverrideValues {\n primaryColor: string;\n}\nexport const getOverrides = ({ primaryColor }: OverrideValues) => {\n // const LINESTYLE_SOLID = 0;\n // const LINESTYLE_DOTTED = 1;\n // const LINESTYLE_DASHED = 2;\n // const LINESTYLE_LARGE_DASHED = 3;\n return {\n 'paneProperties.background': primaryColor,\n 'paneProperties.backgroundType': 'solid',\n 'paneProperties.axisProperties.alignLabels': true,\n // 'paneProperties.axisProperties.indexedTo100': 'false',\n // supported values: large, medium, small, tiny\n // volumePaneSize: 'large',\n // fonts available in text editors (i.e., in `Text` drawing tool properties dialog)\n // editorFontsList: ['Verdana', 'Courier New', 'Times New Roman', 'Arial']\n // paneProperties.background: \"#ffffff\"\n // paneProperties.vertGridProperties.color: \"#E6E6E6\"\n // paneProperties.vertGridProperties.style: LINESTYLE_SOLID\n // paneProperties.horzGridProperties.color: \"#E6E6E6\"\n // paneProperties.horzGridProperties.style: LINESTYLE_SOLID\n // paneProperties.crossHairProperties.color: \"#989898\"\n // paneProperties.crossHairProperties.width: 1\n // paneProperties.crossHairProperties.style: LINESTYLE_DASHED\n // // Margins (percentage). Used for auto scaling.\n // paneProperties.topMargin: 10\n // paneProperties.bottomMargin: 8\n // paneProperties.axisProperties.autoScale: true\n // paneProperties.axisProperties.lockScale: false\n // paneProperties.axisProperties.percentage: false\n // paneProperties.axisProperties.indexedTo100: false\n // paneProperties.axisProperties.log: false\n\n // paneProperties.axisProperties.isInverted: false\n // paneProperties.legendProperties.showStudyArguments: true\n // paneProperties.legendProperties.showStudyTitles: true\n // paneProperties.legendProperties.showStudyValues: true\n // paneProperties.legendProperties.showSeriesTitle: true\n // paneProperties.legendProperties.showSeriesOHLC: true\n // paneProperties.legendProperties.showLegend: true\n // paneProperties.legendProperties.showBarChange: true\n // paneProperties.legendProperties.showOnlyPriceSource: true\n // scalesProperties.backgroundColor : \"#ffffff\"\n // scalesProperties.fontSize: 11\n // scalesProperties.lineColor : \"#555\"\n // scalesProperties.textColor : \"#555\"\n // scalesProperties.scaleSeriesOnly : false\n // scalesProperties.showSeriesLastValue: true\n // scalesProperties.showSeriesPrevCloseValue: false\n // scalesProperties.showStudyLastValue: false\n // scalesProperties.showStudyPlotLabels: false\n // scalesProperties.showSymbolLabels: false\n // timeScale.rightOffset: 5\n // timezone: \"Etc/UTC\" # See supported timezones list (at Symbology#timezone page) for available values\n // // Series style. See the supported values below\n // // Bars = 0\n // // Candles = 1\n // // Line = 2\n // // Area = 3\n // // Heikin Ashi = 8\n // // Hollow Candles = 9\n // // Renko = 4\n // // Kagi = 5\n // // Point&Figure = 6\n // // Line Break = 7\n // // Baseline = 10\n // mainSeriesProperties.style: 1\n // mainSeriesProperties.showCountdown: true\n // mainSeriesProperties.visible:true\n // mainSeriesProperties.showPriceLine: true\n // mainSeriesProperties.priceLineWidth: 1\n // mainSeriesProperties.priceLineColor: ''\n // mainSeriesProperties.showPrevClosePriceLine: false\n // mainSeriesProperties.prevClosePriceLineWidth: 1\n // mainSeriesProperties.prevClosePriceLineColor: 'rgba( 85, 85, 85, 1)'\n // mainSeriesProperties.lockScale: false\n // mainSeriesProperties.minTick: \"default\"\n // mainSeriesProperties.priceAxisProperties.autoScale:true (see #749)\n // mainSeriesProperties.priceAxisProperties.autoScaleDisabled:false (see #749)\n // mainSeriesProperties.priceAxisProperties.percentage:false\n // mainSeriesProperties.priceAxisProperties.percentageDisabled:false\n // mainSeriesProperties.priceAxisProperties.log:false\n // mainSeriesProperties.priceAxisProperties.logDisabled:false\n // // possible values are: description, ticker.\n // mainSeriesProperties.statusViewStyle.symbolTextSource: 'description'\n // symbolWatermarkProperties.color : \"rgba(0, 0, 0, 0.00)\"\n // // Different chart types defaults\n // // Candles styles\n // mainSeriesProperties.candleStyle.upColor: \"#26a69a\"\n // mainSeriesProperties.candleStyle.downColor: \"#ef5350\"\n // mainSeriesProperties.candleStyle.drawWick: true\n // mainSeriesProperties.candleStyle.drawBorder: true\n // mainSeriesProperties.candleStyle.borderColor: \"#378658\"\n // mainSeriesProperties.candleStyle.borderUpColor: \"#26a69a\"\n // mainSeriesProperties.candleStyle.borderDownColor: \"#ef5350\"\n // mainSeriesProperties.candleStyle.wickUpColor: \"#26a69a\"\n // mainSeriesProperties.candleStyle.wickDownColor: \"#ef5350\"\n // mainSeriesProperties.candleStyle.barColorsOnPrevClose: false\n // // Hollow Candles styles\n // mainSeriesProperties.hollowCandleStyle.upColor: \"#26a69a\"\n // mainSeriesProperties.hollowCandleStyle.downColor: \"#ef5350\"\n // mainSeriesProperties.hollowCandleStyle.drawWick: true\n // mainSeriesProperties.hollowCandleStyle.drawBorder: true\n // mainSeriesProperties.hollowCandleStyle.borderColor: \"#378658\"\n // mainSeriesProperties.hollowCandleStyle.borderUpColor: \"#26a69a\"\n // mainSeriesProperties.hollowCandleStyle.borderDownColor: \"#ef5350\"\n // mainSeriesProperties.hollowCandleStyle.wickColor: \"#737375\"\n // // Heikin Ashi styles\n // mainSeriesProperties.haStyle.upColor: \"#26a69a\"\n // mainSeriesProperties.haStyle.downColor: \"#ef5350\"\n // mainSeriesProperties.haStyle.drawWick: true\n // mainSeriesProperties.haStyle.drawBorder: true\n // mainSeriesProperties.haStyle.borderColor: \"#378658\"\n // mainSeriesProperties.haStyle.borderUpColor: \"#26a69a\"\n // mainSeriesProperties.haStyle.borderDownColor: \"#ef5350\"\n // mainSeriesProperties.haStyle.wickColor: \"#737375\"\n // mainSeriesProperties.haStyle.barColorsOnPrevClose: false\n // // Bar styles\n // mainSeriesProperties.barStyle.upColor: \"#26a69a\"\n // mainSeriesProperties.barStyle.downColor: \"#ef5350\"\n // mainSeriesProperties.barStyle.barColorsOnPrevClose: false\n // mainSeriesProperties.barStyle.dontDrawOpen: false\n // // Line styles\n // mainSeriesProperties.lineStyle.color: \"#2196f3\"\n // mainSeriesProperties.lineStyle.linestyle: LINESTYLE_SOLID\n // mainSeriesProperties.lineStyle.linewidth: 3\n // mainSeriesProperties.lineStyle.priceSource: \"close\"\n // // Area styles\n // mainSeriesProperties.areaStyle.color1: \"#2196f3\"\n // mainSeriesProperties.areaStyle.color2: \"#2196f3\"\n // mainSeriesProperties.areaStyle.linecolor: \"#2196f3\"\n // mainSeriesProperties.areaStyle.linestyle: LINESTYLE_SOLID\n // mainSeriesProperties.areaStyle.linewidth: 1\n // mainSeriesProperties.areaStyle.priceSource: \"close\"\n // // Baseline styles\n // mainSeriesProperties.baselineStyle.baselineColor: \"rgba( 117, 134, 150, 1)\"\n // mainSeriesProperties.baselineStyle.topFillColor1: \"rgba( 38, 166, 154, 0.05)\"\n // mainSeriesProperties.baselineStyle.topFillColor2: \"rgba( 38, 166, 154, 0.05)\"\n // mainSeriesProperties.baselineStyle.bottomFillColor1: \"rgba( 239, 83, 80, 0.05)\"\n // mainSeriesProperties.baselineStyle.bottomFillColor2: \"rgba( 239, 83, 80, 0.05)\"\n // mainSeriesProperties.baselineStyle.topLineColor: \"rgba( 38, 166, 154, 1)\"\n // mainSeriesProperties.baselineStyle.bottomLineColor: \"rgba( 239, 83, 80, 1)\"\n // mainSeriesProperties.baselineStyle.topLineWidth: 3\n // mainSeriesProperties.baselineStyle.bottomLineWidth: 3\n // mainSeriesProperties.baselineStyle.priceSource: \"close\"\n // mainSeriesProperties.baselineStyle.transparency: 50\n // mainSeriesProperties.baselineStyle.baseLevelPercentage: 50\n // // Hi-Lo style\n // mainSeriesProperties.hiloStyle.color: \"#2196f3\"\n // mainSeriesProperties.hiloStyle.showBorders: true\n // mainSeriesProperties.hiloStyle.borderColor: \"#2196f3\"\n // mainSeriesProperties.hiloStyle.showLabels: true\n // mainSeriesProperties.hiloStyle.labelColor: \"#2196f3\"\n // mainSeriesProperties.hiloStyle.fontFamily: 'Trebuchet MS'\n // mainSeriesProperties.hiloStyle.fontSize: 7\n };\n};\n","// LINESTYLE_SOLID = 0;\n// LINESTYLE_DOTTED = 1;\n// LINESTYLE_DASHED = 2;\n// LINESTYLE_LARGE_DASHED = 3;\n\n// LINEEND_NORMAL = 0;\n// LINEEND_ARROW = 1;\n// LINEEND_CIRCLE = 2;\n\n// BARS_MODE = 0;\n// LINE_MODE = 1;\n// OPENCLOSE_MODE = 2;\n// LINEOPEN_MODE = 3;\n// LINEHIGH_MODE = 4;\n// LINELOW_MODE = 5;\n// LINEHL2_MODE = 6;\n\n// PITCHFORK_STYLE_ORIGINAL = 0;\n// PITCHFORK_STYLE_SCHIFF = 1;\n// PITCHFORK_STYLE_SCHIFF2 = 2;\n// PITCHFORK_STYLE_INSIDE = 3;\n\n// LEVELS_TYPE_A = {\n// color: color,\n// visible: visible\n// };\n\n// LEVELS_TYPE_B = {\n// coeff: coeff,\n// color: color,\n// visible: visible\n// };\n\n// LEVELS_TYPE_C = {\n// coeff: coeff,\n// color: color,\n// visible: visible,\n// linestyle: linestyle,\n// linewidth: linewidth\n// };\n\n// LEVELS_TYPE_D = {\n// color: color,\n// width: width,\n// visible: visible\n// };\n\n// LEVELS_TYPE_E = {\n// color: color,\n// visible: visible,\n// width: width,\n// x: x,\n// y: y\n// };\n\n// LEVELS_TYPE_F = {\n// coeff1: coeff1,\n// coeff2: coeff2,\n// color: color,\n// visible: visible,\n// linestyle: linestyle,\n// linewidth: linewidth\n// };\n\nexport const getDrawingOverrides = () => {\n return {\n // linetoolicon: {\n // singleChartOnly: true,\n // color: 'rgba( 61, 133, 198, 1)',\n // snapTo45Degrees:true,\n // size: 40,\n // icon: 0x263A,\n // angle: Math.PI * 0.5,\n // scale: 1.0\n // },\n // linetoolbezierquadro: {\n // linecolor: 'rgba( 21, 153, 128, 1)',\n // linewidth: 1.0,\n // fillBackground: false,\n // backgroundColor: 'rgba( 21, 56, 153, 0.5)',\n // transparency: 50,\n // linestyle: LINESTYLE_SOLID,\n // extendLeft: false,\n // extendRight: false,\n // leftEnd: LINEEND_NORMAL,\n // rightEnd: LINEEND_NORMAL\n // },\n // linetoolbeziercubic: {\n // linecolor: 'rgba( 21, 153, 128, 1)',\n // linewidth: 1.0,\n // fillBackground: false,\n // backgroundColor: 'rgba( 21, 56, 153, 0.5)',\n // transparency: 50,\n // linestyle: LINESTYLE_SOLID,\n // extendLeft: false,\n // extendRight: false,\n // leftEnd: LINEEND_NORMAL,\n // rightEnd: LINEEND_NORMAL\n // },\n // linetooltrendline: {\n // linecolor: 'rgba( 21, 153, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // extendLeft: false,\n // extendRight: false,\n // leftEnd: LINEEND_NORMAL,\n // rightEnd: LINEEND_NORMAL,\n // font: 'Verdana',\n // textcolor: 'rgba( 21, 119, 96, 1)',\n // fontsize: 12,\n // bold:false,\n // italic:false,\n // snapTo45Degrees:true,\n // alwaysShowStats: false,\n // showPriceRange: false,\n // showBarsRange: false,\n // showDateTimeRange: false,\n // showDistance:false,\n // showAngle: false\n // },\n // linetoolinfoline: {\n // clonable: true,\n // linecolor: 'rgba( 21, 153, 128, 1)',\n // linewidth: 1.0,\n // linestyle: CanvasEx.LINESTYLE_SOLID,\n // extendLeft: false,\n // extendRight: false,\n // leftEnd: LineEnd.Normal,\n // rightEnd: LineEnd.Normal,\n // font: 'Verdana',\n // textcolor: 'rgba( 21, 119, 96, 1)',\n // fontsize: 12,\n // bold: false,\n // italic: false,\n // snapTo45Degrees: true,\n // alwaysShowStats: true,\n // showMiddlePoint: false,\n // showPriceRange: true,\n // showBarsRange: true,\n // showDateTimeRange: true,\n // showDistance: true,\n // showAngle: true,\n // statsPosition: 1,\n // },\n // linetooltimecycles: {\n // linecolor: 'rgba(21, 153, 128, 1)',\n // linewidth: 1.0,\n // fillBackground: true,\n // backgroundColor: 'rgba(106, 168, 79, 0.5)',\n // transparency: 50,\n // linestyle: LINESTYLE_SOLID\n // },\n // linetoolsineline: {\n // linecolor: 'rgba( 21, 153, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // linetooltrendangle: {\n // singleChartOnly: true,\n // linecolor: 'rgba( 21, 153, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // snapTo45Degrees:true,\n // font: 'Verdana',\n // textcolor: 'rgba( 21, 119, 96, 1)',\n // fontsize: 12,\n // bold:true,\n // italic:false,\n // alwaysShowStats: false,\n // showPriceRange: false,\n // showBarsRange: false,\n // extendRight: false,\n // extendLeft: false\n // },\n // linetooldisjointangle: {\n // linecolor: 'rgba( 18, 159, 92, 1)',\n // linewidth: 2.0,\n // linestyle: LINESTYLE_SOLID,\n // fillBackground: true,\n // backgroundColor: 'rgba( 106, 168, 79, 0.5)',\n // transparency: 50,\n // extendLeft: false,\n // extendRight: false,\n // leftEnd: LINEEND_NORMAL,\n // rightEnd: LINEEND_NORMAL,\n // font: 'Verdana',\n // textcolor: 'rgba( 18, 159, 92, 1)',\n // fontsize: 12,\n // bold:false,\n // italic:false,\n // showPrices: false,\n // showPriceRange: false,\n // showDateTimeRange: false,\n // showBarsRange: false\n // },\n // linetoolflatbottom: {\n // linecolor: 'rgba( 73, 133, 231, 1)',\n // linewidth: 2.0,\n // linestyle: LINESTYLE_SOLID,\n // fillBackground: true,\n // backgroundColor: 'rgba( 21, 56, 153, 0.5)',\n // transparency: 50,\n // extendLeft: false,\n // extendRight: false,\n // leftEnd: LINEEND_NORMAL,\n // rightEnd: LINEEND_NORMAL,\n // font: 'Verdana',\n // textcolor: 'rgba( 73, 133, 231, 1)',\n // fontsize: 12,\n // bold:false,\n // italic:false,\n // showPrices: false,\n // showPriceRange: false,\n // showDateTimeRange: false,\n // showBarsRange: false\n // },\n // linetoolfibspiral: {\n // linecolor: 'rgba( 21, 153, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // linetooldaterange: {\n // linecolor: 'rgba( 88, 88, 88, 1)',\n // linewidth: 1.0,\n // font: 'Verdana',\n // textcolor: 'rgba( 255, 255, 255, 1)',\n // fontsize: 12,\n // fillLabelBackground: true,\n // labelBackgroundColor: 'rgba( 91, 133, 191, 0.9)',\n // labelBackgroundTransparency: 30,\n // fillBackground: true,\n // backgroundColor: 'rgba( 186, 218, 255, 0.4)',\n // backgroundTransparency: 60,\n // drawBorder: false,\n // borderColor: 'rgba( 102, 123, 139, 1)'\n // },\n // linetoolpricerange: {\n // linecolor: 'rgba( 88, 88, 88, 1)',\n // linewidth: 1.0,\n // font: 'Verdana',\n // textcolor: 'rgba( 255, 255, 255, 1)',\n // fontsize: 12,\n // fillLabelBackground: true,\n // labelBackgroundColor: 'rgba( 91, 133, 191, 0.9)',\n // labelBackgroundTransparency: 30,\n // fillBackground: true,\n // backgroundColor: 'rgba( 186, 218, 255, 0.4)',\n // backgroundTransparency: 60,\n // drawBorder: false,\n // borderColor: 'rgba( 102, 123, 139, 1)'\n // },\n // linetooldateandpricerange: {\n // linecolor: 'rgba( 88, 88, 88, 1)',\n // linewidth: 1.0,\n // font: 'Verdana',\n // textcolor: 'rgba( 255, 255, 255, 1)',\n // fontsize: 12,\n // fillLabelBackground: true,\n // labelBackgroundColor: 'rgba( 91, 133, 191, 0.9)',\n // labelBackgroundTransparency: 30,\n // fillBackground: true,\n // backgroundColor: 'rgba( 186, 218, 255, 0.4)',\n // backgroundTransparency: 60,\n // drawBorder: false,\n // borderColor: 'rgba( 102, 123, 139, 1)'\n // },\n // linetoolriskrewardshort: {\n // linecolor: 'rgba( 88, 88, 88, 1)',\n // linewidth: 1.0,\n // font: 'Verdana',\n // textcolor: 'rgba(255, 255, 255, 1)',\n // fontsize: 12,\n // fillLabelBackground: true,\n // labelBackgroundColor: 'rgba( 88, 88, 88, 1)',\n // labelBackgroundTransparency: 0,\n // fillBackground: true,\n // stopBackground: 'rgba( 255, 0, 0, 0.2)',\n // profitBackground: 'rgba( 0, 160, 0, 0.2)',\n // stopBackgroundTransparency: 80,\n // profitBackgroundTransparency: 80,\n // drawBorder: false,\n // borderColor: 'rgba( 102, 123, 139, 1)'\n // },\n // linetoolriskrewardlong: {\n // linecolor: 'rgba( 88, 88, 88, 1)',\n // linewidth: 1.0,\n // font: 'Verdana',\n // textcolor: 'rgba(255, 255, 255, 1)',\n // fontsize: 12,\n // fillLabelBackground: true,\n // labelBackgroundColor: 'rgba( 88, 88, 88, 1)',\n // labelBackgroundTransparency: 0,\n // fillBackground: true,\n // stopBackground: 'rgba( 255, 0, 0, 0.2)',\n // profitBackground: 'rgba( 0, 160, 0, 0.2)',\n // stopBackgroundTransparency: 80,\n // profitBackgroundTransparency: 80,\n // drawBorder: false,\n // borderColor: 'rgba( 102, 123, 139, 1)'\n // },\n // linetoolarrow: {\n // linecolor: 'rgba( 111, 136, 198, 1)',\n // linewidth: 2.0,\n // linestyle: LINESTYLE_SOLID,\n // extendLeft: false,\n // extendRight: false,\n // leftEnd: LINEEND_NORMAL,\n // rightEnd: LINEEND_ARROW,\n // font: 'Verdana',\n // textcolor: 'rgba( 21, 119, 96, 1)',\n // fontsize: 12,\n // bold:false,\n // italic:false,\n // alwaysShowStats: false,\n // showPriceRange: false,\n // showBarsRange: false,\n // showDateTimeRange: false,\n // showDistance:false,\n // showAngle: false\n // },\n // linetoolray: {\n // linecolor: 'rgba( 21, 153, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // extendLeft: false,\n // extendRight: true,\n // leftEnd: LINEEND_NORMAL,\n // rightEnd: LINEEND_NORMAL,\n // font: 'Verdana',\n // textcolor: 'rgba( 21, 119, 96, 1)',\n // fontsize: 12,\n // bold:false,\n // italic:false,\n // alwaysShowStats: false,\n // showPriceRange: false,\n // showBarsRange: false,\n // showDateTimeRange: false,\n // showDistance:false,\n // showAngle: false\n // },\n // linetoolextended: {\n // linecolor: 'rgba( 21, 153, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // extendLeft: true,\n // extendRight: true,\n // leftEnd: LINEEND_NORMAL,\n // rightEnd: LINEEND_NORMAL,\n // font: 'Verdana',\n // textcolor: 'rgba( 21, 119, 96, 1)',\n // fontsize: 12,\n // bold:false,\n // italic:false,\n // alwaysShowStats: false,\n // showPriceRange: false,\n // showBarsRange: false,\n // showDateTimeRange: false,\n // showDistance:false,\n // showAngle: false\n // },\n // linetoolhorzline: {\n // linecolor: 'rgba( 128, 204, 219, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // showPrice: true,\n // showLabel: false,\n // text: '',\n // font: 'Verdana',\n // textcolor: 'rgba( 21, 119, 96, 1)',\n // fontsize: 12,\n // bold:false,\n // italic:false,\n // horzLabelsAlign: 'center',\n // vertLabelsAlign: 'top'\n // },\n // linetoolhorzray: {\n // linecolor: 'rgba( 128, 204, 219, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // showPrice: true,\n // showLabel: false,\n // text: '',\n // font: 'Verdana',\n // textcolor: 'rgba( 21, 119, 96, 1)',\n // fontsize: 12,\n // bold:false,\n // italic:false,\n // horzLabelsAlign: 'center',\n // vertLabelsAlign: 'top'\n // },\n // linetoolvertline: {\n // linecolor: 'rgba( 128, 204, 219, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // showTime: true\n // },\n // linetoolcrossline: {\n // clonable: true,\n // linecolor: 'rgba(6, 160, 227, 1)',\n // linewidth: 1.0,\n // linestyle: CanvasEx.LINESTYLE_SOLID,\n // showPrice: true,\n // showTime: true\n // },\n // linetoolcirclelines: {\n // trendline: {\n // visible: true,\n // color: 'rgba( 128, 128, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_DASHED\n // },\n // linecolor: 'rgba( 128, 204, 219, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // linetoolfibtimezone: {\n // horzLabelsAlign: 'right',\n // vertLabelsAlign: 'bottom',\n // baselinecolor: 'rgba( 128, 128, 128, 1)',\n // linecolor: 'rgba( 0, 85, 219, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // showLabels: true,\n // font: 'Verdana',\n // fillBackground:false,\n // transparency:80,\n // trendline: {\n // visible: true,\n // color: 'rgba( 128, 128, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_DASHED\n // },\n // level1-11: LEVELS_TYPE_C\n // },\n // linetooltext: {\n // color: 'rgba( 102, 123, 139, 1)',\n // text: $.t('Text'),\n // font: 'Verdana',\n // fontsize: 20,\n // fillBackground: false,\n // backgroundColor: 'rgba( 91, 133, 191, 0.9)',\n // backgroundTransparency: 70,\n // drawBorder: false,\n // borderColor: 'rgba( 102, 123, 139, 1)',\n // bold:false,\n // italic:false,\n // locked: false,\n // fixedSize: true,\n // wordWrap: false,\n // wordWrapWidth: 400\n // },\n // linetooltextabsolute: {\n // singleChartOnly: true,\n // color: 'rgba( 102, 123, 139, 1)',\n // text: $.t('Text'),\n // font: 'Verdana',\n // fontsize: 20,\n // fillBackground: false,\n // backgroundColor: 'rgba( 155, 190, 213, 0.3)',\n // backgroundTransparency: 70,\n // drawBorder: false,\n // borderColor: 'rgba( 102, 123, 139, 1)',\n // bold: false,\n // italic: false,\n // locked: true,\n // wordWrap: false,\n // wordWrapWidth: 400\n // },\n // linetoolballoon: {\n // color: 'rgba( 102, 123, 139, 1)',\n // backgroundColor: 'rgba( 255, 254, 206, 0.7)',\n // borderColor: 'rgba( 140, 140, 140, 1)',\n // fontWeight: 'bold',\n // fontsize: 12,\n // font: 'Arial',\n // transparency: 30,\n // text: $.t('Comment')\n // },\n // linetoolbrush: {\n // linecolor: 'rgba( 53, 53, 53, 1)',\n // linewidth: 2.0,\n // smooth:5,\n // fillBackground: false,\n // backgroundColor: 'rgba( 21, 56, 153, 0.5)',\n // transparency: 50,\n // leftEnd: LINEEND_NORMAL,\n // rightEnd: LINEEND_NORMAL\n // },\n // linetoolpolyline: {\n // linecolor: 'rgba( 53, 53, 53, 1)',\n // linewidth: 2.0,\n // linestyle: LINESTYLE_SOLID,\n // fillBackground: true,\n // backgroundColor: 'rgba( 21, 56, 153, 0.5)',\n // transparency: 50,\n // filled: false\n // },\n // linetoolarrowmark: {\n // color: 'rgba( 120, 120, 120, 1)',\n // text: '',\n // fontsize: 20,\n // font: 'Verdana'\n // },\n // linetoolarrowmarkleft: {\n // color: 'rgba( 120, 120, 120, 1)',\n // text: '',\n // fontsize: 20,\n // font: 'Verdana'\n // },\n // linetoolarrowmarkup: {\n // color: 'rgba( 120, 120, 120, 1)',\n // text: '',\n // fontsize: 20,\n // font: 'Verdana'\n // },\n // linetoolarrowmarkright: {\n // color: 'rgba( 120, 120, 120, 1)',\n // text: '',\n // fontsize: 20,\n // font: 'Verdana'\n // },\n // linetoolarrowmarkdown: {\n // color: 'rgba( 120, 120, 120, 1)',\n // text: '',\n // fontsize: 20,\n // font: 'Verdana'\n // },\n // linetoolflagmark: {\n // color: 'rgba( 255, 0, 0, 1)'\n // },\n // linetoolnote: {\n // markerColor: 'rgba( 46, 102, 255, 1)',\n // textColor: 'rgba( 0, 0, 0, 1)',\n // backgroundColor: 'rgba( 255, 255, 255, 1)',\n // backgroundTransparency: 0,\n // text: 'Text',\n // font: 'Arial',\n // fontSize: 12,\n // bold: false,\n // italic: false,\n // locked: false,\n // fixedSize: true\n // },\n // linetoolnoteabsolute: {\n // singleChartOnly: true,\n // markerColor: 'rgba( 46, 102, 255, 1)',\n // textColor: 'rgba( 0, 0, 0, 1)',\n // backgroundColor: 'rgba( 255, 255, 255, 1)',\n // backgroundTransparency: 0,\n // text: 'Text',\n // font: 'Arial',\n // fontSize: 12,\n // bold: false,\n // italic: false,\n // locked: true,\n // fixedSize: true\n // },\n // linetoolthumbup: {\n // color: 'rgba( 0, 128, 0, 1)'\n // },\n // linetoolthumbdown: {\n // color: 'rgba( 255, 0, 0, 1)'\n // },\n // linetoolpricelabel: {\n // color: 'rgba( 102, 123, 139, 1)',\n // backgroundColor: 'rgba( 255, 255, 255, 0.7)',\n // borderColor: 'rgba( 140, 140, 140, 1)',\n // fontWeight: 'bold',\n // fontsize: 11,\n // font: 'Arial',\n // transparency: 30\n // },\n // linetoolrectangle: {\n // color: 'rgba( 21, 56, 153, 1)',\n // fillBackground: true,\n // backgroundColor: 'rgba( 21, 56, 153, 0.5)',\n // linewidth: 1.0,\n // snapTo45Degrees:true,\n // transparency: 50\n // },\n // linetoolrotatedrectangle: {\n // color: 'rgba( 152, 0, 255, 1)',\n // fillBackground: true,\n // backgroundColor: 'rgba( 142, 124, 195, 0.5)',\n // transparency: 50,\n // linewidth: 1.0,\n // snapTo45Degrees:true\n // },\n // linetoolellipse: {\n // color: 'rgba( 153, 153, 21, 1)',\n // fillBackground: true,\n // backgroundColor: 'rgba( 153, 153, 21, 0.5)',\n // transparency: 50,\n // linewidth: 1.0\n // },\n // linetoolarc: {\n // color: 'rgba( 153, 153, 21, 1)',\n // fillBackground: true,\n // backgroundColor: 'rgba( 153, 153, 21, 0.5)',\n // transparency: 50,\n // linewidth: 1.0\n // },\n // linetoolprediction: {\n // singleChartOnly: true,\n // linecolor: 'rgba( 28, 115, 219, 1)',\n // linewidth: 2.0,\n // sourceBackColor: 'rgba( 241, 241, 241, 1)',\n // sourceTextColor: 'rgba( 110, 110, 110, 1)',\n // sourceStrokeColor: 'rgba( 110, 110, 110, 1)',\n // targetStrokeColor:'rgba( 47, 168, 255, 1)',\n // targetBackColor:'rgba( 11, 111, 222, 1)',\n // targetTextColor: 'rgba( 255, 255, 255, 1)',\n // successBackground: 'rgba( 54, 160, 42, 0.9)',\n // successTextColor: 'rgba( 255, 255, 255, 1)',\n // failureBackground: 'rgba( 231, 69, 69, 0.5)',\n // failureTextColor: 'rgba( 255, 255, 255, 1)',\n // intermediateBackColor: 'rgba( 234, 210, 137, 1)',\n // intermediateTextColor: 'rgba( 109, 77, 34, 1)',\n // transparency: 10,\n // centersColor: 'rgba( 32, 32, 32, 1)'\n // },\n // linetooltriangle: {\n // color: 'rgba( 153, 21, 21, 1)',\n // fillBackground: true,\n // backgroundColor: 'rgba( 153, 21, 21, 0.5)',\n // transparency: 50,\n // linewidth: 1.0\n // },\n // linetoolcallout: {\n // color: 'rgba( 255, 255, 255, 1)',\n // backgroundColor: 'rgba( 153, 21, 21, 0.5)',\n // transparency: 50,\n // linewidth: 2.0,\n // fontsize: 12,\n // font:'Verdana',\n // text: 'Text',\n // bordercolor: 'rgba( 153, 21, 21, 1)',\n // bold: false,\n // italic: false,\n // wordWrap: false,\n // wordWrapWidth: 400\n // },\n // linetoolparallelchannel: {\n // linecolor: 'rgba( 119, 52, 153, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // extendLeft: false,\n // extendRight: false,\n // fillBackground: true,\n // backgroundColor: 'rgba( 180, 167, 214, 0.5)',\n // transparency: 50,\n // showMidline: false,\n // midlinecolor: 'rgba( 119, 52, 153, 1)',\n // midlinewidth: 1.0,\n // midlinestyle: LINESTYLE_DASHED\n // },\n // linetoolelliottimpulse: {\n // degree: 7,\n // showWave:true,\n // color: 'rgba( 61, 133, 198, 1)',\n // linewidth: 1\n // },\n // linetoolelliotttriangle: {\n // degree: 7,\n // showWave:true,\n // color: 'rgba( 255, 152, 0, 1)',\n // linewidth: 1\n // },\n // linetoolelliotttriplecombo: {\n // degree: 7,\n // showWave:true,\n // color: 'rgba( 106, 168, 79, 1)',\n // linewidth: 1\n // },\n // linetoolelliottcorrection: {\n // degree: 7,\n // showWave:true,\n // color: 'rgba( 61, 133, 198, 1)',\n // linewidth: 1\n // },\n // linetoolelliottdoublecombo: {\n // degree: 7,\n // showWave:true,\n // color: 'rgba( 106, 168, 79, 1)',\n // linewidth: 1\n // },\n // linetoolbarspattern: {\n // singleChartOnly: true,\n // color:'rgba( 80, 145, 204, 1)',\n // mode:BARS_MODE,\n // mirrored:false,\n // flipped:false\n // },\n // linetoolghostfeed: {\n // singleChartOnly: true,\n // averageHL: 20,\n // variance: 50,\n // candleStyle: {\n // upColor: '#6ba583',\n // downColor: '#d75442',\n // drawWick: true,\n // drawBorder: true,\n // borderColor: '#378658',\n // borderUpColor: '#225437',\n // borderDownColor: '#5b1a13',\n // wickColor: '#737375'\n // },\n // transparency: 50\n // },\n // linetoolpitchfork: {\n // fillBackground:true,\n // transparency:80,\n // style:PITCHFORK_STYLE_ORIGINAL,\n // median: {\n // visible: true,\n // color: 'rgba( 165, 0, 0, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // level0-8: LEVELS_TYPE_C\n // },\n // linetoolpitchfan: {\n // fillBackground:true,\n // transparency:80,\n // median: {\n // visible: true,\n // color: 'rgba( 165, 0, 0, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // level0-8: LEVELS_TYPE_C\n // },\n // linetoolgannfan: {\n // showLabels: true,\n // font: 'Verdana',\n // fillBackground:true,\n // transparency:80,\n // level1-9: LEVELS_TYPE_F\n // },\n // linetoolganncomplex: {\n // fillBackground:false,\n // arcsBackground: {\n // fillBackground: true,\n // transparency: 80\n // },\n // levels: [/* 6 LEVELS_TYPE_D */],\n // fanlines: [/* 11 LEVELS_TYPE_E */],\n // arcs: [/* 11 LEVELS_TYPE_E */]\n // },\n // linetoolgannsquare: {\n // color: 'rgba( 21, 56, 153, 0.8)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // font: 'Verdana',\n // showTopLabels:true,\n // showBottomLabels:true,\n // showLeftLabels:true,\n // showRightLabels:true,\n // fillHorzBackground:true,\n // horzTransparency:80,\n // fillVertBackground:true,\n // vertTransparency:80,\n // hlevel1-7: LEVELS_TYPE_B,\n // vlevel1-7: LEVELS_TYPE_B\n // },\n // linetoolfibspeedresistancefan: {\n // fillBackground:true,\n // transparency:80,\n // grid: {\n // color: 'rgba( 128, 128, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // visible:true\n // },\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // font: 'Verdana',\n // showTopLabels:true,\n // showBottomLabels:true,\n // showLeftLabels:true,\n // showRightLabels:true,\n // snapTo45Degrees:true,\n // hlevel1-7: LEVELS_TYPE_B,\n // vlevel1-7: LEVELS_TYPE_B\n // },\n // linetoolfibretracement: {\n // showCoeffs: true,\n // showPrices: true,\n // font: 'Verdana',\n // fillBackground:true,\n // transparency:80,\n // extendLines:false,\n // horzLabelsAlign: 'left',\n // vertLabelsAlign: 'middle',\n // reverse:false,\n // coeffsAsPercents:false,\n // trendline: {\n // visible: true,\n // color: 'rgba( 128, 128, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_DASHED\n // },\n // levelsStyle: {\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // level1-24: LEVELS_TYPE_B\n // },\n // linetoolfibchannel: {\n // showCoeffs: true,\n // showPrices: true,\n // font: 'Verdana',\n // fillBackground:true,\n // transparency:80,\n // extendLeft:false,\n // extendRight:false,\n // horzLabelsAlign: 'left',\n // vertLabelsAlign: 'middle',\n // coeffsAsPercents:false,\n // levelsStyle: {\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // level1-24: LEVELS_TYPE_B\n // },\n // linetoolprojection: {\n // showCoeffs: true,\n // font: 'Verdana',\n // fillBackground:true,\n // transparency:80,\n // color1: 'rgba( 0, 128, 0, 0.2)',\n // color2: 'rgba( 255, 0, 0, 0.2)',\n // linewidth: 1.0,\n // trendline: {\n // visible: true,\n // color: 'rgba( 128, 128, 128, 1)',\n // linestyle: LINESTYLE_SOLID\n // },\n // level1: LEVELS_TYPE_C\n // },\n // linetool5pointspattern: {\n // color: 'rgba( 204, 40, 149, 1)',\n // textcolor: 'rgba( 255, 255, 255, 1)',\n // fillBackground: true,\n // backgroundColor: 'rgba( 204, 40, 149, 0.5)',\n // font: 'Verdana',\n // fontsize:12,\n // bold:false,\n // italic:false,\n // transparency: 50,\n // linewidth: 1.0\n // },\n // linetoolcypherpattern: {\n // color: '#CC2895',\n // textcolor: '#FFFFFF',\n // fillBackground: true,\n // backgroundColor: '#CC2895',\n // font: 'Verdana',\n // fontsize:12,\n // bold:false,\n // italic:false,\n // transparency: 50,\n // linewidth: 1.0\n // },\n // linetooltrianglepattern: {\n // color: 'rgba( 149, 40, 255, 1)',\n // textcolor: 'rgba( 255, 255, 255, 1)',\n // fillBackground: true,\n // backgroundColor: 'rgba( 149, 40, 204, 0.5)',\n // font: 'Verdana',\n // fontsize:12,\n // bold:false,\n // italic:false,\n // transparency: 50,\n // linewidth: 1.0\n // },\n // linetoolabcd: {\n // color: 'rgba( 0, 155, 0, 1)',\n // textcolor: 'rgba( 255, 255, 255, 1)',\n // font: 'Verdana',\n // fontsize:12,\n // bold:false,\n // italic:false,\n // linewidth: 2.0\n // },\n // linetoolthreedrivers: {\n // color: 'rgba( 149, 40, 255, 1)',\n // textcolor: 'rgba( 255, 255, 255, 1)',\n // fillBackground: true,\n // backgroundColor: 'rgba( 149, 40, 204, 0.5)',\n // font: 'Verdana',\n // fontsize:12,\n // bold:false,\n // italic:false,\n // transparency: 50,\n // linewidth: 2.0\n // },\n // linetoolheadandshoulders: {\n // color: 'rgba( 69, 104, 47, 1)',\n // textcolor: 'rgba( 255, 255, 255, 1)',\n // fillBackground: true,\n // backgroundColor: 'rgba( 69, 168, 47, 0.5)',\n // font: 'Verdana',\n // fontsize:12,\n // bold:false,\n // italic:false,\n // transparency: 50,\n // linewidth: 2.0\n // },\n // linetoolfibwedge: {\n // singleChartOnly: true,\n // showCoeffs: true,\n // font: 'Verdana',\n // fillBackground:true,\n // transparency:80,\n // trendline: {\n // visible: true,\n // color: 'rgba( 128, 128, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // level1-11: LEVELS_TYPE_C\n // },\n // linetoolfibcircles: {\n // showCoeffs: true,\n // font: 'Verdana',\n // fillBackground:true,\n // transparency:80,\n // snapTo45Degrees:true,\n // coeffsAsPercents:false,\n // trendline: {\n // visible: true,\n // color: 'rgba( 128, 128, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_DASHED\n // },\n // level1-11: LEVELS_TYPE_C\n // },\n // linetoolfibspeedresistancearcs: {\n // showCoeffs: true,\n // font: 'Verdana',\n // fillBackground:true,\n // transparency:80,\n // fullCircles: false,\n // trendline: {\n // visible: true,\n // color: 'rgba( 128, 128, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_DASHED\n // },\n // level1-11: LEVELS_TYPE_C\n // },\n // linetooltrendbasedfibextension: {\n // showCoeffs: true,\n // showPrices: true,\n // font: 'Verdana',\n // fillBackground:true,\n // transparency:80,\n // extendLines:false,\n // horzLabelsAlign: 'left',\n // vertLabelsAlign: 'middle',\n // reverse:false,\n // coeffsAsPercents:false,\n // trendline: {\n // visible: true,\n // color: 'rgba( 128, 128, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_DASHED\n // },\n // levelsStyle: {\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // level1-24: LEVELS_TYPE_B\n // },\n // linetooltrendbasedfibtime: {\n // showCoeffs: true,\n // font: 'Verdana',\n // fillBackground:true,\n // transparency:80,\n // horzLabelsAlign: 'right',\n // vertLabelsAlign: 'bottom',\n // trendline: {\n // visible: true,\n // color: 'rgba( 128, 128, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_DASHED\n // },\n // level1-11: LEVELS_TYPE_C\n // },\n // linetoolschiffpitchfork: {\n // fillBackground:true,\n // transparency:80,\n // style:PITCHFORK_STYLE_SCHIFF,\n // median: {\n // visible: true,\n // color: 'rgba( 165, 0, 0, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // level0-8: LEVELS_TYPE_C\n // },\n // linetoolschiffpitchfork2: {\n // fillBackground:true,\n // transparency:80,\n // style:PITCHFORK_STYLE_SCHIFF2,\n // median: {\n // visible: true,\n // color: 'rgba( 165, 0, 0, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // level0-8: LEVELS_TYPE_C\n // },\n // linetoolinsidepitchfork: {\n // fillBackground:true,\n // transparency:80,\n // style:PITCHFORK_STYLE_INSIDE,\n // median: {\n // visible: true,\n // color: 'rgba( 165, 0, 0, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // level0-8: LEVELS_TYPE_C\n // },\n // linetoolvisibilities: {\n // intervalsVisibilities: {\n // seconds:true,\n // secondsFrom:1,\n // secondsTo:59,\n // minutes:true,\n // minutesFrom:1,\n // minutesTo:59,\n // hours:true,\n // hoursFrom:1,\n // hoursTo:24,\n // days:true,\n // daysFrom:1,\n // daysTo:366,\n // weeks:true,\n // months:true\n // }\n // }\n };\n};\n","import React, { useMemo } from 'react';\nimport { AssetSymbol } from '@tradingblock/types';\nimport { useBlockState } from '../../components/blocks/BlockState';\nimport { useBboxDimensions, useBlockSize } from '../shared/useBboxDimensions';\nimport { useGroupState } from '../useGroupState';\nimport { PriceChartGraph } from './PriceChartGraph';\n\nexport const PriceChartContent: React.FC<{ symbol?: AssetSymbol }> = ({ symbol }) => {\n const blockId = useBlockState('blockId');\n const [dimensions, tableElement] = useBboxDimensions();\n const chartHeight = useBlockSize(dimensions, 'height', [100, 200, 500]);\n const chartwidth = useBlockSize(dimensions, 'width', [100, 200, 500]);\n const containerId = useMemo(() => `tradingview_59d9e#${blockId}`, [blockId]);\n\n //const [symbol] = useGroupState('symbol');\n\n return (\n <>\n
    \n
    \n {symbol && (\n \n )}\n
    \n
    \n \n );\n};\n","import React, { useMemo, useEffect, useState } from 'react';\nimport _ from 'lodash';\nimport { BlockBody } from '@tradingblock/components';\nimport { AssetSymbol, BlockType } from '@tradingblock/types';\nimport { useApi } from '../../context/Api';\nimport { useAuthenticationSelector } from '../../data/global/dataSelectors';\nimport { Block } from '../../components/blocks/Block';\nimport { useBlockData, useBlockActions } from '../../components/blocks/BlockState';\nimport { getBlockProps } from '../../utilities/block';\nimport { useQuoteSymbolSubscription } from '../../hooks/useQuoteData';\nimport { Config } from '../../config';\nimport { PriceChartState } from './state/PriceChartState';\nimport { PriceChartSelectors as selectors } from './state/PriceChartSelectors';\nimport { DefaultPriceChartSettings, PriceChartSettingsFields, usePriceChartSettings } from './state/PriceChartSettings';\nimport { usePriceChartGroupHandler } from './hooks/usePriceChartGroupHandler';\nimport { PriceChartHeader } from './PriceChartHeader';\nimport { PriceChartContent } from './PriceChartContent';\n\nexport const PriceChartBlock: React.FC<{}> = () => {\n const state = useBlockData();\n\n const symbol = selectors.symbol(state);\n const { setField: set } = useBlockActions();\n const { isAuthenticated } = useAuthenticationSelector();\n const [loadedSymbol, setLoadedSymbol] = useState();\n const api = useApi();\n usePriceChartGroupHandler();\n const symbolTicker = useMemo(() => (symbol ? symbol.symbol : undefined), [symbol]);\n // useQuoteValue();\n useEffect(() => {\n const getQuote = async (symbolName: string) => {\n set('isFetching', true);\n const [quoteRequest] = api.quotes.get(symbolName);\n const res = await quoteRequest;\n if (res && res.payload && res.payload[0]) {\n const firstQuote = res.payload[0];\n set('quote', firstQuote);\n }\n set('isFetching', false);\n };\n if (symbolTicker && isAuthenticated && loadedSymbol !== symbolTicker) {\n setLoadedSymbol(symbolTicker);\n getQuote(symbolTicker);\n }\n }, [symbolTicker, set, isAuthenticated, api, loadedSymbol]);\n\n // only settings available are for dev/debug\n const settings = usePriceChartSettings();\n const priceSettings = !Config.isProduction ? { ...DefaultPriceChartSettings, ...settings } : undefined;\n useQuoteSymbolSubscription((blockState: PriceChartState) =>\n blockState.symbol ? blockState.symbol.symbol : undefined\n );\n\n return (\n set('symbol', sym, { persist: true })} />\n )}\n >\n \n \n \n \n );\n};\n","import { useEffect, useCallback } from 'react';\nimport { AssetSymbol } from '@tradingblock/types';\nimport { useBlockData, useBlockActions, useBlockActionDispatch } from '../../../components/blocks/BlockState';\nimport { GenericBlockActionTypes } from '../../../components/blocks/state/BlockState';\nimport { GroupManager } from '../../../context/GroupManager';\nimport { useBlockGroupField, useBlockGroupInfo, useGroupStateHandler } from '../../useGroupState';\nimport { PriceChartState } from '../state/PriceChartState';\nimport { PriceChartActions } from '../state/PriceChartActions';\n\nexport const usePriceChartGroupHandler = () => {\n const { blockId, groupId } = useBlockGroupInfo();\n const dispatch = useBlockActionDispatch>();\n const { symbol } = useBlockData();\n const { setField: set } = useBlockActions();\n\n const setSymbol = useCallback((sym: AssetSymbol) => set('symbol', sym, { persist: true }), [set]);\n\n useEffect(() => {\n if (groupId) {\n GroupManager.attach({ blockId, groupId, dispatch }, true);\n if (symbol) {\n setSymbol(symbol);\n }\n }\n\n return () => {\n GroupManager.detach(blockId);\n };\n }, [groupId]);\n\n const onSymbolChange = useCallback(\n (incomingSymbol: AssetSymbol | undefined) => {\n if (incomingSymbol && (!symbol || symbol.symbol !== incomingSymbol.symbol)) {\n setSymbol(incomingSymbol);\n }\n },\n [symbol, setSymbol]\n );\n\n useGroupStateHandler('symbol', onSymbolChange, { fireOnGroupChange: true });\n};\n","import { useCallback, useEffect } from 'react';\nimport _ from 'lodash';\nimport { useStateSelector, blocksSelectors } from './../../data/global/dataSelectors';\nimport { IBlockDataState } from '@tradingblock/types';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { useBlockState, useBlockSelector } from './BlockState';\nimport { DataState } from '../../data/global/state';\nimport { areArraysEqual } from '../../utilities/data';\n\nexport function useBlockSubscriptions() {\n const { dispatcher } = useDispatcher();\n\n const blockId = useBlockState('blockId');\n\n const setQuotes = useCallback(\n (symbols: string | string[]) => {\n const symbolValues = _.isArray(symbols) ? symbols : [symbols];\n dispatcher.block.setQuoteSubscription(blockId, symbolValues);\n },\n [blockId, dispatcher]\n );\n return {\n setQuotes,\n };\n}\n\nexport function useQuoteListener(symbols: string | string[] | undefined) {\n const blockId = useBlockState('blockId');\n const { setQuotes } = useBlockSubscriptions();\n const blockSymbols = useStateSelector(s => blocksSelectors.getBlockQuoteSubscriptions(s, blockId));\n useEffect(() => {\n const symbolVals = symbols ? (_.isArray(symbols) ? symbols : [symbols]) : undefined;\n if (symbolVals && !areArraysEqual(symbolVals, blockSymbols)) {\n setQuotes(symbolVals);\n }\n }, [symbols, blockSymbols, setQuotes]);\n return { local: symbols, global: blockSymbols };\n}\n\nexport function useBlockQuoteListener(selector: (state: T) => string | string[] | undefined) {\n const symbols = useBlockSelector(selector);\n return useQuoteListener(symbols);\n}\n\nexport function useGlobalStateQuoteListener(selector: (state: DataState) => string | string[] | undefined) {\n const symbols = useStateSelector(selector);\n return useQuoteListener(symbols);\n}\n","import { createSelector } from 'reselect';\r\nimport _ from 'lodash';\r\nimport { AssetType, PositionPerformance, Position, SymbolTypes, PositionPerformanceInfo } from '@tradingblock/types';\r\nimport {\r\n getBestPrice,\r\n PartialQuote,\r\n AssetTypeToSymbolType,\r\n toAssetSymbol,\r\n PositionDTO,\r\n AggregatedPositionDTO,\r\n} from '@tradingblock/api';\r\nimport { DataState, PositionPerformanceWithPnL } from '../state';\r\nimport { SymbolPositions, SymbolPosition } from '../../../types';\r\nimport { QuoteDataToPartialQuote, aggregatedSymbolPosition } from './transforms';\r\nimport { sumNumbers } from '../../../utilities/data';\r\nimport { positionToInfo } from '../../../utilities/position';\r\n\r\nimport dayjs from 'dayjs';\r\n\r\nconst positionRootSelector = (state: DataState) => state.positions.positions;\r\n/**\r\n * Returns a list of current positions corresponding to the given symbol.\r\n */\r\nexport const getPositionsFromSymbol = createSelector(\r\n (state: DataState) => positionRootSelector(state),\r\n (positions: PositionDTO[]) => {\r\n return _.reduce(\r\n positions,\r\n (acc: SymbolPositions, pos: PositionDTO): SymbolPositions => {\r\n // To make sure that options and common stock fall under the same category, group it buy the underlying symbol,\r\n // otherwise, if grouped by symbol, the symbols wont match (options have an id in the symbol name while common stock don't)\r\n const underlyingSymbol = pos.UnderlyingSymbol;\r\n const DEFAULTVALUE = { shares: 0, value: 0, positions: [], symbol: underlyingSymbol, options: 0 };\r\n let symbolValue = acc[underlyingSymbol] || DEFAULTVALUE;\r\n // If the accumulated object doesn't have a symbol, assign it default values.\r\n // if (!acc.hasOwnProperty(sym)) Object.assign({ [sym]: [pos], symbol: sym }, acc);\r\n // If the AssetType is common stock\r\n const isEquity = pos.AssetType === AssetType.Equity;\r\n // Aggregate the shares and values of the stock\r\n return {\r\n ...acc,\r\n [underlyingSymbol]: {\r\n ...symbolValue,\r\n shares: isEquity ? symbolValue.shares + pos.OpenQuantity : symbolValue.shares,\r\n options: isEquity ? symbolValue.options : symbolValue.options + pos.OpenQuantity,\r\n // value: symbolValue.value + pos.OpenPrice,\r\n positions: [...symbolValue.positions, pos],\r\n },\r\n };\r\n },\r\n {}\r\n );\r\n }\r\n);\r\nconst uniquePositionQuotesSelector = createSelector(\r\n positionRootSelector,\r\n positions => {\r\n return _(positions)\r\n .map(p => [p.Symbol, p.UnderlyingSymbol])\r\n .flatMap()\r\n .uniq()\r\n .value();\r\n }\r\n);\r\nexport const getPositionQuotes = createSelector(\r\n (s: DataState) => s.quotes.quoteMetadata.data,\r\n uniquePositionQuotesSelector,\r\n (quotes, symbols) => {\r\n const quotesData = _.filter(quotes, (v, k: string) => symbols.includes(k));\r\n return QuoteDataToPartialQuote(quotesData);\r\n }\r\n);\r\n\r\nexport const getAllPositionInfo = createSelector(\r\n getPositionsFromSymbol,\r\n getPositionQuotes,\r\n (s: DataState) => s.performance.positions,\r\n (positions, quotes, positionperformances) => {\r\n const positionsWithPerformance = _.reduce(\r\n positions,\r\n (res, symPosition: SymbolPosition, key: string) => {\r\n const commission = _.reduce(\r\n symPosition.positions,\r\n (acc, p) => {\r\n return acc + p.Commission;\r\n },\r\n 0\r\n );\r\n const posIds = _.map(symPosition.positions, sp => sp.PositionId);\r\n const aggregatedPnl = _.reduce(\r\n positionperformances,\r\n (acc, pp, key) => {\r\n if (!posIds.includes(_.toString(key))) {\r\n return acc;\r\n }\r\n\r\n return {\r\n pnl: acc.pnl + pp.pnl,\r\n };\r\n },\r\n { pnl: 0 }\r\n );\r\n const curr: PositionPerformanceWithPnL = {\r\n ...aggregatedSymbolPosition(symPosition.positions, quotes, key),\r\n pnl: aggregatedPnl.pnl,\r\n commission,\r\n };\r\n return {\r\n ...res,\r\n [key]: curr,\r\n };\r\n },\r\n {}\r\n );\r\n return _.map(positionsWithPerformance, (v, k) => {\r\n return positionToInfo(v);\r\n });\r\n }\r\n);\r\nexport const getPositionValue = createSelector(\r\n getAllPositionInfo,\r\n pos => {\r\n return _(pos)\r\n .map((p: PositionPerformanceInfo) => p.value)\r\n .sum();\r\n }\r\n);\r\n\r\nexport const initialPositionsAreLoading = createSelector(\r\n (state: DataState) => state.positions.positions.length,\r\n (state: DataState) => state.positions.isFetching,\r\n (state: DataState) => state.positions.loaded,\r\n (positionCount, isFetching, loaded) => {\r\n const positionsExist = positionCount > 0 ? true : loaded ? false : undefined;\r\n return {\r\n positions: { existing: positionsExist, isFetching },\r\n loading: positionsExist === undefined || isFetching === true,\r\n };\r\n }\r\n);\r\n\r\nexport const getPositionsForSymbol = createSelector(\r\n [getPositionsFromSymbol, (state: DataState, symbol: string) => symbol],\r\n (symbPos: SymbolPositions, symbol: string) => symbPos[symbol]\r\n);\r\nexport const PositionSelectors = {\r\n loaded: createSelector(\r\n (state: DataState) => state.positions.loaded,\r\n loaded => loaded\r\n ),\r\n initialPositionsAreLoading,\r\n};\r\n","import createCachedSelector from 're-reselect';\nimport { DataState } from '../state';\nimport { createSelector } from 'reselect';\nimport { ProfitLossInfo } from '@tradingblock/types';\nimport _ from 'lodash';\n\nexport const PerformanceSelectors = {\n todayTradingPnl: createSelector(\n (s: DataState) => s.performance.bySymbol,\n perfState =>\n _(perfState)\n .values()\n .map(v => v.trading)\n .sum() || 0\n ),\n aggregatePositionPerformances: createCachedSelector(\n (s: DataState, positionIds: string[]) => _.filter(s.performance.positions, (v, k) => positionIds.includes(k)),\n perfs => {\n return perfs.reduce(\n (acc, s) => {\n return {\n ...acc,\n pnl: acc.pnl + s.pnl,\n };\n },\n { pnl: 0 }\n );\n }\n )((s: DataState, positionIds: string[]) => `agg-pos-perf-${positionIds.sort().join(',')}`),\n bySymbol: createCachedSelector(\n (state: DataState, symbol: string) => state.performance.bySymbol[symbol],\n (state: DataState, symbol: string) => symbol,\n (pnl, symbol) => {\n const val = pnl || { symbol };\n return val;\n }\n )((state: DataState, symbol: string) => `pnl-${symbol}`),\n totals: {\n all: createSelector(\n (state: DataState) => state.performance.totals,\n totals => {\n return totals.all;\n }\n ),\n tradedToday: createSelector(\n (state: DataState) => state.performance.totals,\n totals => totals.tradedToday\n ),\n },\n};\n","import createCachedSelector from 're-reselect';\nimport { DataState } from '../state';\nimport _ from 'lodash';\nimport { accountIdValue, OrderSymbols, PositionSymbolsSelector } from '../dataSelectors';\nimport { OrderAction, OrderActionDirection } from '@tradingblock/types';\nimport { getBestPrice, FilterOrderByDate, isSymbolExpired } from '@tradingblock/api';\n\nimport { createSelector } from 'reselect';\nimport dayjs from 'dayjs';\nimport { calculateEstCommission } from '../../../blocks/Order/components/Preview/EstCommissionPreview';\n\nexport const getAccountPnL = createCachedSelector(\n (state: DataState) => state.account.pnl,\n pnl => {\n const m = _.flatMap(pnl, pnlRange => pnlRange.pnlHistory);\n\n return m;\n }\n)(\n // re-reselect keySelector\n accountIdValue\n);\n\nexport const isFetchingAccountPnL = createCachedSelector(\n (state: DataState) => state.account.pnl,\n pnl => {\n // This sums up the truth values of each pnl.isFetching\n // If every truth value in range is false it returns false,\n // Otherwise it returns true\n return _.reduce(\n pnl || [],\n (prev, curr) => {\n return { ...curr, isFetching: prev.isFetching || curr.isFetching };\n },\n { isFetching: false }\n ).isFetching;\n }\n)(\n // re-reselect keySelector\n accountIdValue\n);\n\nexport const isPnLLoaded = createCachedSelector(\n (state: DataState) => state,\n (_state: DataState) => _state,\n state => {\n return state.account.pnl !== undefined;\n }\n)(\n // re-reselect keySelector\n accountIdValue\n);\n\nconst timeframeOrdersSelector = (state: DataState, options: { startDate: Date; endDate: Date }) => {\n const orders = state.account.orders || [];\n const subAccountId = state.account.subAccountId;\n const filtered = subAccountId ? orders.filter(o => o.SubaccountId && o.SubaccountId === subAccountId) : orders;\n return FilterOrderByDate(filtered, options.startDate, options.endDate);\n};\n\nexport interface PnLBySymbol {\n symbol: string;\n lastTradePrice: number;\n bestTradePrice: number;\n previousSettle: number;\n positionOnOpen: number;\n quantityBought: number;\n quantitySold: number;\n netQuantityChange: number;\n currentPosition: number;\n avgBoughtPrice: number;\n avgSoldPrice: number;\n buyPrices: number[];\n sellPrices: number[];\n tradingPnL: number;\n positionPnL: number;\n totalPnL: number;\n estCommission?: number;\n}\n\nconst orderSymbolsOrUndefined = (s: DataState) =>\n s.account.isFetchingOrders || s.account.orders === undefined\n ? []\n : s.account.orders.flatMap(o => o.Legs.flatMap(ol => ol.Symbol));\n\n// const allOrderSymbols = (s: DataState) => (s.account.orders || []).flatMap(o => o.Legs.flatMap(ol => ol.Symbol));\n// const allPositionSymbols = (s: DataState) => s.positions.positions.flatMap(p => p.Symbol);\nexport const pnlSelectors = {\n pnlDataLoaded: createSelector(\n (s: DataState) =>\n s.account.isFetchingOrders === false && s.positions.isFetching === false && s.positions.loaded === true,\n OrderSymbols,\n PositionSymbolsSelector,\n (state: DataState) => state.quotes.quoteMetadata.data,\n (ordersAndPositionsLoaded, ordSymbols, positionSymbols, quotes) => {\n if (ordersAndPositionsLoaded === false) {\n return { isLoaded: false, reason: 'ordersAndPositionsLoaded=false' };\n }\n const symbolsWithoutQuotes = _(ordSymbols)\n .union(positionSymbols)\n .uniq()\n .filter(s => !isSymbolExpired(s))\n .filter(s => {\n const quote = _.find(quotes, q => q.Symbol === s);\n return quote === undefined;\n })\n .value();\n const symbolsWithoutQuotesExist = symbolsWithoutQuotes.length !== 0;\n if (symbolsWithoutQuotesExist) {\n // console.debug('symbols without quotes exist', symbolsWithoutQuotes);\n return { isLoaded: false, reason: 'symbolsWithoutQuotesExist=true', symbolsWithoutQuotes };\n }\n return { isLoaded: true };\n }\n ),\n trading: createCachedSelector(\n (state: DataState, options: { startDate: Date; endDate: Date }) => timeframeOrdersSelector(state, options),\n (state: DataState) => state.quotes.quoteMetadata.data,\n (state: DataState) => state.positions.info,\n (state: DataState) => state.performance,\n (state: DataState) => state.account.accountDetails,\n (orders, quotes, positions, performance, accountDetails): PnLBySymbol[] =>\n _.flatMap(orders, o => o.Legs).reduce((acc: PnLBySymbol[], currLeg): PnLBySymbol[] => {\n const isBuy = currLeg.Action === OrderAction.Buy;\n const fillQuantity = currLeg.LegFillQuantity || 0;\n if (fillQuantity === 0) {\n return acc;\n }\n const quote = quotes[currLeg.Symbol] || undefined;\n const { AskPrice, BidPrice, LastOrClosePrice, Multiplier } = quote || {\n AskPrice: 0,\n BidPrice: 0,\n LastOrClosePrice: 0,\n Multiplier: 1,\n };\n const closePrice =\n quote && quote.ClosePrice ? quote.ClosePrice : quote && quote.LastOrClosePrice ? quote.LastOrClosePrice : 0;\n\n const existing = _.find(acc, v => v.symbol === currLeg.Symbol) || {\n buyPrices: [],\n sellPrices: [],\n avgBoughtPrice: 0,\n avgSoldPrice: 0,\n symbol: currLeg.Symbol,\n positionOnOpen: 0,\n quantityBought: 0,\n quantitySold: 0,\n currentPosition: 0,\n estCommission: undefined,\n };\n\n const quantityBought = isBuy ? existing.quantityBought + fillQuantity : existing.quantityBought;\n const quantitySold = !isBuy ? existing.quantitySold + Math.abs(fillQuantity) : existing.quantitySold;\n const netQuantityChange = quantityBought - quantitySold;\n const currentPositionValue = positions[currLeg.Symbol];\n let currentPosition = 0;\n if (currentPositionValue) {\n currentPosition = currentPositionValue.quantity;\n }\n\n const bestPrice = getBestPrice({\n last: LastOrClosePrice || 0,\n ask: AskPrice,\n bid: BidPrice,\n defaultValue: 'avgBidAsk',\n });\n const others = _.filter(acc, v => v.symbol !== currLeg.Symbol);\n const positionOnOpen = currentPosition - netQuantityChange;\n const buyPrices: number[] = isBuy\n ? [...existing.buyPrices, ..._.times(fillQuantity, () => currLeg.AverageLegFillPrice || 0)]\n : existing.buyPrices;\n const sellPrices: number[] = !isBuy\n ? [...existing.sellPrices, ..._.times(fillQuantity, () => currLeg.AverageLegFillPrice || 0)]\n : existing.sellPrices;\n const avgBoughtPrice = quantityBought > 0 ? _.sum(buyPrices) / quantityBought : 0;\n const avgSoldPrice = quantitySold > 0 ? _.sum(sellPrices) / quantitySold : 0;\n\n const tradingPnL =\n (quantityBought * (bestPrice - avgBoughtPrice) - quantitySold * (bestPrice - avgSoldPrice)) * Multiplier;\n const positionPnL = positionOnOpen * (bestPrice - closePrice) * Multiplier;\n const totalPnL = tradingPnL + positionPnL;\n\n let commission = undefined;\n if (accountDetails !== undefined) {\n commission = calculateEstCommission(\n [\n {\n assetType: currLeg.AssetType,\n quantity: Math.abs(netQuantityChange),\n },\n ],\n accountDetails.commissions\n );\n }\n\n if (existing.estCommission !== undefined) {\n if (commission === undefined) {\n console.warn(`Could not calculate commission for position ${currLeg.Symbol} but have previous commission`);\n } else {\n commission = existing.estCommission + commission;\n }\n }\n\n return [\n ...others,\n {\n buyPrices,\n sellPrices,\n symbol: currLeg.Symbol,\n bestTradePrice: bestPrice,\n lastTradePrice: quote.LastTradePrice,\n previousSettle: closePrice,\n positionOnOpen,\n quantityBought,\n quantitySold,\n netQuantityChange,\n currentPosition,\n avgBoughtPrice,\n avgSoldPrice,\n tradingPnL,\n positionPnL,\n totalPnL,\n estCommission: commission,\n },\n ];\n }, [])\n )((state: DataState, options: { startDate: Date; endDate: Date }) => {\n const start = dayjs(options.startDate).format('l');\n const end = dayjs(options.endDate).format('l');\n return `pnl-trading-${start}-${end}`;\n }),\n};\n\nexport const isSummaryDataLoaded = createSelector(\n (state: DataState) => state.orders.isFetching,\n (state: DataState) => state.positions.isFetching,\n (ordersFetching, positionsFetching) => {\n return ordersFetching || positionsFetching ? false : true;\n }\n);\n","import React, { FC } from 'react';\nimport { Number } from '@tradingblock/components';\nimport { DirectionalValue, DirectionalOptions } from '../../components/basic/Directional';\n\nexport const DirectionalCurrency: FC<{ value: number; options?: DirectionalOptions }> = ({ value, options }) => {\n const currencyLabel = value === 0 ? '$' : value >= 0 ? '+$' : '-$';\n return (\n \n \n {currencyLabel}\n \n \n \n );\n};\n","import React, { useMemo, FC, useContext, useEffect } from 'react';\nimport _ from 'lodash';\nimport { BasicCheckboxInput, BlockDragHandle, getBlockTypeName, Loading } from '@tradingblock/components';\nimport { AssetType, BlockType } from '@tradingblock/types';\nimport { dashboardIdSelector, useStateSelector } from '../../data/global/dataSelectors';\nimport { getAllPositionInfo } from '../../data/global/selectors/positionSelector';\nimport { sumNumbers } from '../../utilities/data';\nimport { PerformanceSelectors } from '../../data/global/selectors/performanceSelectors';\nimport { pnlSelectors } from '../../data/global/selectors/PnLSelectors';\nimport { DirectionalCurrency } from '../shared/DirectionalCurrency';\nimport { useBlockLog } from '../../components/blocks/hooks/useBlockLog';\nimport { BlockAction, BlockActionContext, useBlockMetadata } from '../../components/blocks/BlockState';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { blockSettings } from '../../data/global/selectors/settingSelectors';\n\nconst NavPrice: FC<{ value: number | null | undefined; title: string; isLoaded: boolean }> = ({\n title,\n isLoaded,\n value,\n}) => {\n const isValid = !_.isNil(value) && !_.isNaN(value) ? true : false;\n const log = useBlockLog('DailyPL');\n log('%o', { value });\n return (\n <>\n
    \n
    {title}
    \n
    \n
    \n {isValid && isLoaded && _.isNumber(value) ? (\n \n ) : (\n \n \n \n )}\n
    \n \n );\n};\n\nexport const PositionHeader: FC<{\n totalGain?: number;\n dailyPnl?: number;\n expandRows?: boolean;\n}> = ({ totalGain, dailyPnl, expandRows }) => {\n const { total } = useStateSelector(PerformanceSelectors.totals.all);\n const symbolAggregateList = useStateSelector(getAllPositionInfo);\n const totalGainValue = useMemo(\n () =>\n symbolAggregateList &&\n sumNumbers(\n _.map(symbolAggregateList, p => {\n if (p.symbol.assetType === AssetType.MoneyMarket) {\n return 0;\n }\n return p.commission ? p.totalGain + p.commission : p.totalGain;\n })\n ),\n [symbolAggregateList]\n );\n const subAccountFilterId = useStateSelector(s => s.ui.dashboard.subAccountFilterId);\n const selectedLinkedAccountId = useStateSelector(\n s => s.account.selectedLinkedAccount && s.account.selectedLinkedAccount.accountId\n );\n\n const loaded = useStateSelector(pnlSelectors.pnlDataLoaded);\n const isLoaded = loaded.isLoaded;\n const dispatch = useContext(BlockActionContext);\n const { dispatcher } = useDispatcher();\n\n const dashboardId = useStateSelector(dashboardIdSelector);\n const { blockId, type } = useBlockMetadata();\n const blockType = type;\n const settings = useStateSelector(s => blockSettings.position(s, blockId));\n\n const handleExpandRowsClick = () => {\n const settingsSaveData = {\n dashboardId: dashboardId || '',\n blockId,\n blockType,\n blockSettings: {\n ...settings,\n expandRows: !expandRows,\n },\n };\n dispatch(BlockAction.setSettings(settingsSaveData.blockSettings));\n dispatcher.settings.block.setBlockSetting(settingsSaveData);\n };\n\n // Reset expand\n useEffect(() => {\n const settingsSaveData = {\n dashboardId: dashboardId || '',\n blockId,\n blockType,\n blockSettings: {\n ...settings,\n expandRows: false,\n },\n };\n dispatch(BlockAction.setSettings(settingsSaveData.blockSettings));\n dispatcher.settings.block.setBlockSetting(settingsSaveData);\n }, [selectedLinkedAccountId, subAccountFilterId]);\n\n return (\n
    \n {getBlockTypeName(BlockType.Positions)}\n \n \n {\n handleExpandRowsClick();\n }}\n type=\"checkbox\"\n >\n Expand Positions\n \n
    \n );\n};\n","import { useLog } from '@tradingblock/components';\nimport { useBlockState, useBlockStateSelector } from '../useBlockState';\nimport { useBlockData } from '../BlockState';\n\nexport const useBlockLog = (subname?: string) => {\n const { blockId, type } = useBlockStateSelector(s => ({ blockId: s.blockId, type: s.type }));\n const subnames = subname ? [type, subname, blockId] : [type, blockId];\n const log = useLog(subnames);\n return log;\n};\n","import React, { useEffect } from 'react';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { useWhyDidYouUpdate } from 'use-hooks';\n\nexport const PositionSync: React.FunctionComponent<{}> = () => {\n const shouldReload = useStateSelector(s => s.positions.isDirty === true && s.positions.isFetching === false);\n const { dispatcher } = useDispatcher();\n useWhyDidYouUpdate('PositionSync', { shouldReload });\n useEffect(() => {\n dispatcher.data.positions.request();\n }, [dispatcher.data.positions]);\n return <>;\n};\n","import React from 'react';\nimport { Number } from '@tradingblock/components';\nimport { DirectionalValue, DirectionalValueProps } from '../basic/Directional';\n\nexport const DirectionalPrice: React.FunctionComponent = ({ value, precisionOverride, ...directionProps }) => {\n return (\n \n \n \n );\n};\n","import { useCallback, useMemo } from 'react';\nimport dayjs from 'dayjs';\nimport _ from 'lodash';\nimport {\n AssetSymbol,\n BlockType,\n TradingStrategyOrCustom,\n AssetType,\n OptionType,\n Order,\n OrderAction,\n OrderLeg,\n OrderStatuses,\n TradingStrategyNameOrCustom,\n TradingStrategy,\n StrikeRules,\n} from '@tradingblock/types';\nimport {\n CustomStrategy,\n OrderBuilderType,\n OrderBuilder,\n parseOccSymbol,\n Put,\n Call,\n Shares,\n getDefaultOrderQuantity,\n} from '@tradingblock/api';\nimport { useDispatcher } from '../../../data/global/hooks';\nimport { generateNewBlock } from '../../../utilities/block';\nimport { useFeedQuoteWithMetadata } from '../../../hooks/useFeedQuote';\nimport { OrderState } from '../../../blocks/Order/state/OrderState';\nimport { DefaultLegs, defaultStrategyForSymbol } from '../../../blocks/Order/OrderUtilities';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { globalSettings } from '../../../data/global/selectors/settingSelectors';\nimport { BlockActions } from '../../../data/global/actions';\nimport { getType } from 'typesafe-actions';\nimport { Actions, OrderActions } from '../../../blocks/Order/state/OrderActions';\nimport { useBlockActionDispatchAndGenericActions } from '../BlockState';\n\ninterface UseTradeActionsProps {\n occSymbol: string | undefined;\n addBlockToGroupId?: string;\n data?: Partial;\n baseAssetSymbol: AssetSymbol;\n isUnderlyingSymbol?: boolean;\n}\nexport const useOrderBlock = ({\n occSymbol,\n addBlockToGroupId,\n data,\n baseAssetSymbol,\n isUnderlyingSymbol,\n}: UseTradeActionsProps) => {\n const { dispatcher } = useDispatcher();\n const globalOrderSettings = useStateSelector(globalSettings.order);\n\n const symbolQuote = useFeedQuoteWithMetadata(occSymbol || '');\n const symbol: AssetSymbol | undefined = useMemo(() => {\n if (symbolQuote) {\n // const { Symbol, Description, Exchange, UnderlyingSymbol, AssetClass } = symbolQuote;\n return baseAssetSymbol;\n }\n return baseAssetSymbol;\n }, [symbolQuote, baseAssetSymbol]);\n\n const createOrUpdateOrderBlock = useCallback(\n (addBlockAsNew?: boolean) => {\n const initialBlockData = data || {\n legs: DefaultLegs({}, symbol, { optionType: undefined, strike: undefined, expiration: undefined }),\n };\n // const optionType = _.get(_.first(_.values(initialBlockData && initialBlockData.legs)), 'OptionType');\n // let strategy: TradingStrategyOrCustom = optionType ? (optionType === OptionType.Call ? Call : Put) : CustomStrategy;\n let strategy: TradingStrategyNameOrCustom = CustomStrategy.info.Name;\n const underlying = symbol.underlyingSymbol;\n if (isUnderlyingSymbol && underlying) {\n strategy = defaultStrategyForSymbol(underlying, undefined, globalOrderSettings);\n }\n // const quantity = _([defaultOrderQuantity, initialBlockData ? initialBlockData.quantity : undefined])\n // .filter(v => v !== undefined)\n // .min();\n const newBlock = generateNewBlock(BlockType.Order, {\n ...initialBlockData,\n symbol,\n strategy: strategy,\n quantity: getDefaultOrderQuantity(strategy, globalOrderSettings),\n });\n newBlock.groupId = addBlockToGroupId || '';\n // if adding block as new, don't pass \"replace first match\" options\n\n dispatcher.block.addOrUpdateBlock(\n newBlock,\n false,\n addBlockAsNew ? undefined : { blockType: BlockType.Order, groupId: addBlockToGroupId }\n );\n },\n [data, symbol, addBlockToGroupId, dispatcher.block, globalOrderSettings]\n );\n\n // if linkable block exists, show 2 trade options in dropdown\n return { createOrUpdateOrderBlock };\n};\n\nexport interface ReplaceFirstMatchOptions {\n blockType: BlockType;\n groupId?: string;\n}\nexport const useOrderBlockWithOrder = (\n build: (builder: OrderBuilderType) => OrderBuilderType,\n replaceFirstMatch?: ReplaceFirstMatchOptions\n) => {\n const { dispatcher, dispatch } = useDispatcher();\n const globalOrderSettings = useStateSelector(globalSettings.order);\n const [{}, orderBlockDispatcher] = useBlockActionDispatchAndGenericActions();\n const orderBlockBuilder = useCallback(\n (addBlockAsNew?: boolean) => {\n const orderBlockData = build(new OrderBuilder(globalOrderSettings).quantity(1)).order();\n const newBlock = generateNewBlock(BlockType.Order, orderBlockData);\n //dispatcher.block.addOrUpdateBlock(newBlock, false, addBlockAsNew === true ? undefined : replaceFirstMatch);\n\n dispatch(\n BlockActions.addOrUpdateBlock(\n {\n block: newBlock,\n addedAt: dayjs().toDate(),\n preserveGroupOrderData: false,\n replaceFirstMatch: addBlockAsNew === true ? undefined : replaceFirstMatch,\n },\n { persist: true }\n )\n );\n\n orderBlockDispatcher({ type: getType(Actions.asyncValidateOrder), payload: {} });\n },\n [replaceFirstMatch, dispatcher.block, orderBlockDispatcher, dispatch]\n );\n\n // if linkable block exists, show 2 trade options in dropdown\n return orderBlockBuilder;\n};\n\nexport const getStrategyForLegs = (legs: OrderLeg[]) => {\n const firstLeg = _.first(legs);\n if (legs.length === 1 && firstLeg) {\n const sinfo = parseOccSymbol(firstLeg.OccSymbol || firstLeg.Symbol);\n if (sinfo.assetType === AssetType.Option) {\n return sinfo.option === OptionType.Put ? Put : Call;\n } else {\n return Shares;\n }\n }\n return CustomStrategy;\n};\n\nexport const useCloseOrderAction = (\n order: Pick,\n symbol: AssetSymbol,\n blockSelectionOptions?: Pick,\n subaccountId?: number\n) => {\n const { Quantity, Legs } = order;\n const strategy: TradingStrategyOrCustom = getStrategyForLegs(Legs);\n const isCustom = strategy === CustomStrategy;\n const isSingleLeggedOrder = Legs.length === 1;\n const firstLeg = _.first(Legs);\n\n const buildCloseOrder = (builder: OrderBuilderType) => {\n // const legs = DefaultLegs({}, assetSymbol, { assetType, optionType, orderAction: action, strike, expiration: });\n\n let baseBuilder = builder;\n let orderQuantity = isCustom ? 1 : Math.abs(Quantity);\n let orderAction: OrderAction = OrderAction.Buy;\n\n if (strategy.info.Name === 'Shares') {\n if (orderQuantity < 1) {\n orderQuantity = Math.ceil(orderQuantity);\n } else {\n orderQuantity = Math.floor(orderQuantity);\n }\n }\n\n if (isSingleLeggedOrder && firstLeg) {\n orderAction = firstLeg.Action;\n }\n\n baseBuilder = builder\n .symbol(symbol)\n .strategy(strategy)\n .action(orderAction)\n .quantity(orderQuantity)\n .subaccountId(subaccountId ? subaccountId : -1);\n\n return _.reduce(\n Legs,\n (b, l) => {\n const legQuantity = isCustom ? Math.abs(Quantity) : 1;\n\n return b.leg(ll => {\n const symbolInfo = parseOccSymbol(l.Symbol);\n const buildRes = ll\n .assetType(symbolInfo.assetType)\n .action(l.Action)\n .quantity(legQuantity)\n .subaccountId(subaccountId);\n\n if (symbolInfo.assetType === AssetType.Equity) {\n return buildRes;\n }\n return buildRes\n .optionType(symbolInfo.option || OptionType.Call)\n .expiration(symbolInfo.expiration)\n .strike(symbolInfo.strike)\n .subaccountId(subaccountId);\n });\n },\n baseBuilder\n );\n };\n\n const blockSelectionOpts = blockSelectionOptions || {};\n // if linkable block exists, show 2 trade options in dropdown\n const handleCloseOrder = useOrderBlockWithOrder(buildCloseOrder, {\n blockType: BlockType.Order,\n ...blockSelectionOpts,\n });\n return useMemo(() => handleCloseOrder, [order, symbol]);\n};\n\nexport const useTradeSymbolAction = (\n symbol: AssetSymbol,\n fn: (builder: OrderBuilderType) => OrderBuilderType,\n blockSelectionOptions?: Pick\n) => {\n const buildTradeOrder = (builder: OrderBuilderType) => {\n // const legs = DefaultLegs({}, assetSymbol, { assetType, optionType, orderAction: action, strike, expiration: });\n const baseBuilder = builder\n .symbol(symbol)\n .strategy(CustomStrategy)\n .quantity(1);\n return fn(baseBuilder);\n };\n const blockSelectionOpts = blockSelectionOptions || {};\n // if linkable block exists, show 2 trade options in dropdown\n const handleTradeOrder = useOrderBlockWithOrder(buildTradeOrder, {\n blockType: BlockType.Order,\n ...blockSelectionOpts,\n });\n\n return useMemo(() => handleTradeOrder, [fn, symbol]);\n};\n\nexport const useOrderCopyTradeAction = (\n order: Pick,\n symbol: AssetSymbol,\n blockSelectionOptions?: Pick\n) => {\n const { Quantity, Legs, OrderStatus } = order;\n const strategy = getStrategyForLegs(Legs);\n const isCustom = strategy.info.Name === CustomStrategy.info.Name;\n const isSingleLeggedStrategyOrder = !isCustom && Legs.length === 1;\n const firstLeg = _.first(Legs);\n const orderCancelled = OrderStatus === OrderStatuses.Cancelled;\n\n const handleTradeOrder = (builder: OrderBuilderType) => {\n // const legs = DefaultLegs({}, assetSymbol, { assetType, optionType, orderAction: action, strike, expiration: });\n\n let baseBuilder = builder;\n let quantity = 1;\n let orderAction = OrderAction.Buy;\n\n // if (firstLeg && (isSingleLeggedStrategyOrder || orderCancelled)) {\n // quantity = Quantity;\n // orderAction = firstLeg.Action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy;\n // } else if (!isCustom && firstLeg) {\n // quantity = Math.abs(firstLeg.LegFillQuantity || 1);\n // orderAction = firstLeg.Action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy;\n // }\n if (isSingleLeggedStrategyOrder && firstLeg) {\n quantity = Quantity;\n orderAction = firstLeg.Action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy;\n }\n\n baseBuilder = baseBuilder\n .symbol(symbol)\n .action(orderAction)\n .strategy(strategy)\n .quantity(quantity);\n\n return _.reduce(\n Legs,\n (b, l) => {\n const { LegFillQuantity, SpreadRatio } = l;\n // const legQuantity = isCustom ? LegFillQuantity : 1;\n const legQuantity = isCustom ? (SpreadRatio || 1) * Quantity : 1;\n\n return b.leg(ll => {\n const symbolInfo = parseOccSymbol(l.Symbol);\n const buildRes = ll\n .assetType(symbolInfo.assetType)\n .action(l.Action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy)\n .quantity(legQuantity);\n\n if (symbolInfo.assetType === AssetType.Equity) {\n return buildRes;\n }\n return buildRes\n .optionType(symbolInfo.option || OptionType.Call)\n .expiration(symbolInfo.expiration)\n .strike(symbolInfo.strike);\n });\n },\n baseBuilder\n );\n };\n\n const blockSelectionOpts = blockSelectionOptions || {};\n // if linkable block exists, show 2 trade options in dropdown\n const handleTradeOrderBuilder = useOrderBlockWithOrder(handleTradeOrder, {\n blockType: BlockType.Order,\n ...blockSelectionOpts,\n });\n return useMemo(() => handleTradeOrderBuilder, [order, symbol]);\n};\n\nexport const useOrderCopyAction = (\n order: Order,\n symbol: AssetSymbol,\n blockSelectionOptions?: Pick,\n matchingStrategy?: TradingStrategy,\n setCustom?: boolean,\n duplicateOrder?: boolean\n) => {\n const { Quantity, Legs, OrderType, Action } = order;\n let strategy = setCustom ? CustomStrategy : getStrategyForLegs(Legs);\n const isCustom = strategy.info.Name === CustomStrategy.info.Name;\n const isSingleLeggedStrategyOrder = !isCustom && Legs.length === 1;\n const isSingleLeggedCustomOrder = isCustom && Legs.length === 1;\n const firstLeg = Legs[0];\n\n if (isCustom && matchingStrategy && matchingStrategy.info.Name) {\n strategy = matchingStrategy;\n }\n\n /**\n * Adjusts the order of legs in a strategy based on the defined strike rules.\n *\n * This function is designed to work with two-legged options strategies where\n * the order of strikes (increasing or decreasing) matters, such as in put/call\n * vertical spreads. It checks the strategy's strike rules and reorders the\n * legs of the strategy if they are not in the correct order according to the\n * rules.\n *\n * @param {Object[]} Legs - An array of leg objects in the strategy. Each leg object\n * should have a 'Strike' property.\n * @param {Object} strategyProfile - The profile object of the strategy, which should\n * contain the 'Rules' related to strike ordering.\n *\n * @example\n * For a call vertical buy, Legs should be ordered with lower strike first:\n * If Legs are [{Strike: 110}, {Strike: 100}], they will be reordered to\n * [{Strike: 100}, {Strike: 110}]\n * adjustLegOrderForStrikeRules(Legs, matchingStrategy.profile);\n *\n * Notes:\n * - The function directly modifies the 'Legs' array.\n * - It only applies adjustments for strategies with exactly two legs.\n * - The function assumes 'strategyProfile' has a structure where 'Rules' is an object\n * that contains a 'Strike' property with values like 'IncreasingOrder' or\n * 'DecreasingOrder'.\n * - If the 'Rules' object or 'Strike' property is not defined, or if the strategy\n * does not conform to the expected structure (e.g., not a two-legged strategy),\n * the function does nothing.\n */\n const adjustLegOrderForStrikeRules = (Legs: any[], strategyProfile: TradingStrategy['profile']) => {\n if (Legs.length !== 2) {\n return; // Only adjust for two-legged strategies\n }\n\n const strikeRule = strategyProfile && strategyProfile.Rules && strategyProfile.Rules.Strike;\n if (!strikeRule) {\n return; // No strike rule defined, exit early\n }\n\n const firstLegHigher = Legs[0].Strike > Legs[1].Strike;\n\n // Reverse Legs if the order is not aligned with the strike rule\n if (\n (strikeRule === StrikeRules.IncreasingOrder && firstLegHigher) ||\n (strikeRule === StrikeRules.DecreasingOrder && !firstLegHigher)\n ) {\n Legs.reverse();\n }\n };\n\n const handleTradeOrder = (builder: OrderBuilderType) => {\n let baseBuilder = builder;\n let orderAction = Action ? Action : OrderAction.Buy;\n\n if (isSingleLeggedStrategyOrder && firstLeg) {\n orderAction = firstLeg.Action === OrderAction.Buy ? OrderAction.Buy : OrderAction.Sell;\n }\n\n if ('profile' in strategy) {\n adjustLegOrderForStrikeRules(Legs, strategy.profile);\n }\n\n let calculatedQuantity = setCustom ? (isSingleLeggedCustomOrder ? Quantity : 1) : Quantity;\n\n baseBuilder = baseBuilder\n .symbol(symbol)\n .orderType(OrderType)\n .action(orderAction)\n .strategy(strategy)\n .quantity(calculatedQuantity);\n\n return _.reduce(\n Legs,\n (b, l) => {\n const { LegFillQuantity, SpreadRatio } = l;\n // let legQuantity = isCustom ? LegFillQuantity : 1;\n // if (orderCancelled && LegFillQuantity === 0) {\n // legQuantity = (SpreadRatio || 1) * Quantity;\n // }\n // if the order is being built from the duplicate order action button, then we need to multiply spread ratio by the quantity to determine the leg quantity\n const legQuantity =\n isCustom && !duplicateOrder\n ? isSingleLeggedCustomOrder\n ? Quantity\n : SpreadRatio || 1\n : isCustom && duplicateOrder\n ? (SpreadRatio || 1) * Quantity\n : 1;\n return b.leg(ll => {\n const symbolInfo = parseOccSymbol(l.Symbol);\n const buildRes = ll\n .assetType(symbolInfo.assetType)\n .action(l.Action)\n .quantity(legQuantity);\n\n if (symbolInfo.assetType === AssetType.Equity) {\n return buildRes;\n }\n return buildRes\n .optionType(symbolInfo.option || OptionType.Call)\n .expiration(symbolInfo.expiration)\n .strike(symbolInfo.strike);\n });\n },\n baseBuilder\n );\n };\n\n const blockSelectionOpts = blockSelectionOptions || {};\n // if linkable block exists, show 2 trade options in dropdown\n const handleTradeOrderBuilder = useOrderBlockWithOrder(handleTradeOrder, {\n blockType: BlockType.Order,\n ...blockSelectionOpts,\n });\n return useMemo(() => handleTradeOrderBuilder, [order, symbol]);\n};\n","import { useCallback, useMemo } from 'react';\nimport dayjs from 'dayjs';\nimport _ from 'lodash';\nimport { PersistablePriceChartState, AssetSymbol, BlockType } from '@tradingblock/types';\nimport { useDispatcher } from '../../../data/global/hooks';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useFeedQuoteWithMetadata } from '../../../hooks/useFeedQuote';\nimport { PriceChartState } from '../../../blocks/PriceChart/state/PriceChartState';\nimport { BlockActions } from '../../../data/global/actions';\nimport { generateNewBlock } from '../../../utilities/block';\nimport { ReplaceFirstMatchOptions } from './useOrderBlock';\n\nexport interface PriceChartBuilderType {\n symbol: (symbol: AssetSymbol) => PriceChartBuilderType;\n priceChart: () => Partial;\n}\n\nexport class PriceChartBuilder implements PriceChartBuilderType {\n private priceChartState: Partial;\n private dirty: Partial<{ [K in keyof PersistablePriceChartState]: boolean }>;\n constructor() {\n this.priceChartState = {};\n this.dirty = {};\n }\n set(k: K, value: PersistablePriceChartState[K]) {\n this.dirty[k] = true;\n this.priceChartState = {\n ...this.priceChartState,\n [k]: value,\n };\n return this;\n }\n symbol(symbol: AssetSymbol) {\n return this.set('symbol', symbol);\n }\n priceChart() {\n return this.priceChartState;\n }\n}\n\ninterface UseChartActionsProps {\n occSymbol: string | undefined;\n addBlockToGroupId?: string;\n data?: Partial;\n baseAssetSymbol: AssetSymbol;\n isUnderlyingSymbol?: boolean;\n}\nexport const usePriceChartBlock = ({\n occSymbol,\n addBlockToGroupId,\n data,\n baseAssetSymbol,\n isUnderlyingSymbol,\n}: UseChartActionsProps) => {\n const { dispatcher } = useDispatcher();\n const symbolQuote = useFeedQuoteWithMetadata(occSymbol || '');\n const symbol: AssetSymbol | undefined = useMemo(() => {\n if (symbolQuote) {\n // const { Symbol, Description, Exchange, UnderlyingSymbol, AssetClass } = symbolQuote;\n return baseAssetSymbol;\n }\n return baseAssetSymbol;\n }, [symbolQuote, baseAssetSymbol]);\n\n const createOrUpdatePriceChartBlock = useCallback(\n (addBlockAsNew?: boolean) => {\n const initialBlockData = data || { symbol };\n const underlying = symbol.underlyingSymbol;\n if (isUnderlyingSymbol && underlying) {\n }\n const newBlock = generateNewBlock(BlockType.PriceChart, {\n ...initialBlockData,\n symbol,\n });\n newBlock.groupId = addBlockToGroupId || '';\n // if adding block as new, don't pass \"replace first match\" options\n\n dispatcher.block.addOrUpdateBlock(\n newBlock,\n false,\n addBlockAsNew ? undefined : { blockType: BlockType.PriceChart, groupId: addBlockToGroupId }\n );\n },\n [data, symbol, addBlockToGroupId, dispatcher.block]\n );\n\n // if linkable block exists, show 2 trade options in dropdown\n return { createOrUpdatePriceChartBlock };\n};\n\nexport const useChartBlockWithOrder = (\n build: (builder: PriceChartBuilderType) => PriceChartBuilderType,\n replaceFirstMatch?: ReplaceFirstMatchOptions\n) => {\n const { dispatcher, dispatch } = useDispatcher();\n const priceChartBlockBuilder = useCallback(\n (addBlockAsNew?: boolean) => {\n const priceChartBlockData = build(new PriceChartBuilder()).priceChart();\n const newBlock = generateNewBlock(BlockType.PriceChart, priceChartBlockData);\n //dispatcher.block.addOrUpdateBlock(newBlock, false, addBlockAsNew === true ? undefined : replaceFirstMatch);\n\n dispatch(\n BlockActions.addOrUpdateBlock(\n {\n block: newBlock,\n addedAt: dayjs().toDate(),\n preserveGroupOrderData: false,\n replaceFirstMatch: addBlockAsNew === true ? undefined : replaceFirstMatch,\n },\n { persist: true }\n )\n );\n },\n [replaceFirstMatch, dispatcher.block]\n );\n\n // if linkable block exists, show 2 trade options in dropdown\n return priceChartBlockBuilder;\n};\n\nexport const useChartSymbolAction = (\n symbol: AssetSymbol,\n fn: (builder: PriceChartBuilderType) => PriceChartBuilderType,\n blockSelectionOptions?: Pick\n) => {\n const buildChartOrder = (builder: PriceChartBuilderType) => {\n const baseBuilder = builder.symbol(symbol);\n return fn(baseBuilder);\n };\n const blockSelectionOpts = blockSelectionOptions || {};\n // if linkable block exists, show 2 chart options in dropdown\n const handleChartOrder = useChartBlockWithOrder(buildChartOrder, {\n blockType: BlockType.PriceChart,\n ...blockSelectionOpts,\n });\n return useMemo(() => handleChartOrder, [fn, symbol]);\n};\n","import React from 'react';\nimport _ from 'lodash';\n\nexport interface OrderActionButtonProps\n extends React.DetailedHTMLProps, HTMLAnchorElement> {\n onClick: () => void;\n title: string;\n icon: string;\n}\n\nexport const OrderActionButton: React.FC = ({ onClick, icon, title }) => {\n return (\n \n \n \n \n \n \n );\n};\n\nexport type OrderButtonProps = Omit;\nexport const CancelOrderButton: React.FC = props => (\n \n);\nexport const ReplaceOrderButton: React.FC = props => (\n \n);\nexport const TradeOrderButton: React.FC = props => (\n \n);\nexport const CloseOrderButton: React.FC = props => (\n \n);\nexport const RollOrderButton: React.FC = props => (\n \n);\nexport const FakeOrderButton: React.FC<{}> = props => (\n alert('you clicked a fake button!')}\n title=\"Test order action\"\n icon={\n _.sample(['fa-wine-glass', 'fa-wine-bottle', 'fa-beer', 'fa-baseball', 'fa-grin', 'fa-grin-squint-tears']) ||\n 'fa-question'\n }\n {...props}\n />\n);\nexport const ChartButton: React.FC = props => (\n \n);\n","import React, { FC, useMemo } from 'react';\nimport _ from 'lodash';\nimport { Dropdown, DropdownItem } from '@tradingblock/components';\nimport { OrderAction, OrderLegDTO } from '@tradingblock/types';\nimport { PositionDTO, AggregatedPositionDTO } from '@tradingblock/api';\nimport { OrderActionButtonProps, OrderActionButton } from '../../components/blocks/actions/OrderActionButtons';\n\nexport interface PositionActionsProps {\n tradeData: {\n legs: {\n [x: string]: OrderLegDTO;\n };\n action: OrderAction;\n quantity: number;\n };\n position: AggregatedPositionDTO;\n maxVisibleActions: number;\n}\n\nexport const PositionActions: FC<{\n actions: OrderActionButtonProps[];\n identity: string;\n maxVisibleActions: number;\n}> = ({ actions, identity, maxVisibleActions }) => {\n const hasOverflowActions = useMemo(() => actions.length > maxVisibleActions, [actions, maxVisibleActions]);\n\n const primaryActions = useMemo(() => {\n return hasOverflowActions ? _.take(actions, maxVisibleActions) : actions;\n }, [actions, hasOverflowActions, maxVisibleActions]);\n\n const secondaryActions = useMemo(() => {\n return hasOverflowActions ? _.drop(actions, maxVisibleActions) : [];\n }, [actions, hasOverflowActions, maxVisibleActions]);\n\n return (\n
      \n {primaryActions.map((action, ind) => (\n
    • \n \n
    • \n ))}\n {secondaryActions.length > 0 && (\n
    • \n }\n direction=\"right\"\n buttonOptions={{ toggleButtonClassName: 'btn btn-blend dropdown-toggle no-caret' }}\n >\n {secondaryActions.map((sa, ind) => (\n \n \n \n \n \n {sa.title}\n \n ))}\n \n
    • \n )}\n
    \n );\n};\n","import React, { useMemo } from 'react';\r\nimport dayjs from 'dayjs';\r\nimport _ from 'lodash';\r\nimport { OptionExpirationType, AssetType } from '@tradingblock/types';\r\nimport { OCCSymbolToOptionData } from '@tradingblock/api';\r\nimport { ParseOCCStrike, ParseOCCOption } from '../../../blocks/Positions/util';\r\n\r\nexport const PrettySymbolCondenscedView: React.FC<{ symbol: string; expirationToString: string }> = ({\r\n symbol,\r\n expirationToString,\r\n}) => {\r\n const info = OCCSymbolToOptionData(symbol);\r\n return (\r\n <>\r\n {info.symbol}\r\n
    \r\n {info.assetType === AssetType.Option && (\r\n <>\r\n {expirationToString} {ParseOCCStrike(symbol)} {ParseOCCOption(symbol)}\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport const PrettySymbolDefaultView: React.FC<{ symbol: string; expirationToString: string }> = ({\r\n symbol,\r\n expirationToString,\r\n}) => {\r\n return (\r\n <>\r\n {expirationToString}\r\n
    \r\n {ParseOCCStrike(symbol)} {ParseOCCOption(symbol)}\r\n \r\n );\r\n};\r\n\r\nexport const usePositionSymbolName = (\r\n symbolValue: string,\r\n expirationType?: OptionExpirationType,\r\n dateOpened?: Date\r\n) => {\r\n return useMemo(() => {\r\n const expirationTime = expirationType && expirationType === OptionExpirationType.AM ? 'AM' : undefined;\r\n const { expiration, symbol } = OCCSymbolToOptionData(symbolValue);\r\n const expirationDateValue = dayjs(expiration || dateOpened).format('MMM DD YYYY');\r\n return _([expirationDateValue, expirationTime])\r\n .filter(v => v !== undefined)\r\n .join(' ');\r\n }, [dateOpened, expirationType, symbolValue]);\r\n};\r\n\r\nexport const PrettySymbol: React.FC<{\r\n condensced?: boolean;\r\n symbol: string;\r\n expirationType?: OptionExpirationType;\r\n dateOpened?: Date;\r\n}> = ({ condensced, expirationType, dateOpened, ...props }) => {\r\n const symbolValue = props.symbol;\r\n const expirationToString = usePositionSymbolName(symbolValue, expirationType, dateOpened);\r\n return (\r\n <>\r\n {condensced && }\r\n {!condensced && }\r\n \r\n );\r\n};\r\n","import React, { FC, useMemo, useCallback } from 'react';\r\nimport _ from 'lodash';\r\nimport { BlockType, OrderAction, AssetType, OptionType } from '@tradingblock/types';\r\nimport {\r\n parseOccSymbol,\r\n toAssetSymbol,\r\n AssetTypeToSymbolType,\r\n OrderBuilderType,\r\n OCCSymbolToOptionData,\r\n} from '@tradingblock/api';\r\nimport { DtoToOrderleg } from '../Order/OrderUtilities';\r\nimport {\r\n useOrderBlockWithOrder,\r\n getStrategyForLegs,\r\n useCloseOrderAction,\r\n} from '../../components/blocks/hooks/useOrderBlock';\r\nimport { useBlockGroupInfo } from '../useGroupState';\r\nimport { PositionActionsProps, PositionActions } from './PositionActions';\r\nexport const PositionLegActions: FC = ({ tradeData, position, maxVisibleActions }) => {\r\n const { groupId } = useBlockGroupInfo();\r\n const [symbol, underlyingSymbol, assetType] = [position.Symbol, position.UnderlyingSymbol, position.AssetType];\r\n const assetSymbol = useMemo(\r\n () =>\r\n toAssetSymbol(position.Symbol, assetType, AssetTypeToSymbolType(assetType), {\r\n name: underlyingSymbol,\r\n underlyingSymbol,\r\n rootSymbol: underlyingSymbol,\r\n }),\r\n [position.Symbol, assetType, underlyingSymbol]\r\n );\r\n const baseAssetSymbol = useMemo(\r\n () =>\r\n toAssetSymbol(underlyingSymbol, assetType, AssetTypeToSymbolType(assetType), {\r\n name: underlyingSymbol,\r\n underlyingSymbol,\r\n rootSymbol: underlyingSymbol,\r\n }),\r\n [position.Symbol, assetType, underlyingSymbol]\r\n );\r\n const orderLegs = _.map(tradeData.legs, l => DtoToOrderleg(l, assetSymbol));\r\n const canRoll =\r\n _.keys(tradeData.legs).length === 1 && _.some(tradeData.legs, (v, k) => v.AssetType === AssetType.Option);\r\n const openQuantity = Math.abs(position.OpenQuantity);\r\n const optionData = useMemo(() => OCCSymbolToOptionData(symbol), [symbol]);\r\n const isShort = position.OpenQuantity < 0;\r\n const subaccountId = position.SubaccountId;\r\n\r\n const buildRollOrder = useCallback(\r\n (builder: OrderBuilderType) => {\r\n const optionType = optionData.option;\r\n const strike = optionData.strike;\r\n const expiration = optionData.expiration;\r\n // for custom strategy, quantity is stored in spreadRatio\r\n // const legs = DefaultLegs({}, assetSymbol, { assetType, optionType, orderAction: action, strike, expiration: });\r\n if (optionType) {\r\n return builder\r\n .symbol(baseAssetSymbol)\r\n .strategy('Custom')\r\n .quantity(1)\r\n .action(OrderAction.Buy)\r\n .leg(l =>\r\n l\r\n .assetType(AssetType.Option)\r\n .action(isShort ? OrderAction.Buy : OrderAction.Sell)\r\n .quantity(openQuantity)\r\n .expiration(expiration)\r\n .optionType(optionType)\r\n .strike(strike)\r\n )\r\n .leg(l =>\r\n l\r\n .assetType(AssetType.Option)\r\n .action(isShort ? OrderAction.Sell : OrderAction.Buy)\r\n .quantity(openQuantity)\r\n .optionType(optionType)\r\n );\r\n }\r\n return builder;\r\n },\r\n [position, optionData]\r\n );\r\n const handleRollClick = useOrderBlockWithOrder(buildRollOrder, { blockType: BlockType.Order, groupId });\r\n\r\n const tradeOrderBuilder = useCallback(\r\n (builder: OrderBuilderType) => {\r\n const orderAction = isShort ? OrderAction.Sell : OrderAction.Buy;\r\n const quantity = Math.abs(openQuantity);\r\n const baseBuilder = builder\r\n .symbol(baseAssetSymbol)\r\n .strategy(getStrategyForLegs(orderLegs))\r\n .action(orderAction)\r\n .quantity(quantity);\r\n return _.reduce(\r\n orderLegs,\r\n (b, l) => {\r\n return b.leg(ll => {\r\n const symbolInfo = parseOccSymbol(l.Symbol);\r\n const buildRes = ll.assetType(symbolInfo.assetType).action(orderAction);\r\n if (symbolInfo.assetType !== AssetType.Equity) {\r\n return buildRes\r\n .optionType(symbolInfo.option || OptionType.Call)\r\n .expiration(symbolInfo.expiration)\r\n .quantity(1)\r\n .strike(symbolInfo.strike);\r\n }\r\n return buildRes;\r\n });\r\n },\r\n baseBuilder\r\n );\r\n },\r\n [openQuantity, orderLegs, isShort, baseAssetSymbol]\r\n );\r\n\r\n const handleTradeClick = useOrderBlockWithOrder(tradeOrderBuilder, { blockType: BlockType.Order, groupId });\r\n const handleCloseOrder = useCloseOrderAction(\r\n { Quantity: openQuantity, Legs: orderLegs },\r\n baseAssetSymbol,\r\n {\r\n groupId,\r\n },\r\n subaccountId\r\n );\r\n const actions = useMemo(() => {\r\n let res = [{ title: 'Close position', onClick: () => handleCloseOrder(), icon: '' }];\r\n if (canRoll) {\r\n res = [...res, { title: 'Roll position', onClick: () => handleRollClick(), icon: 'fa-redo' }];\r\n }\r\n res = [...res, { title: 'Trade', onClick: () => handleTradeClick(), icon: 'fa-clone' }];\r\n return res;\r\n }, [handleCloseOrder, canRoll, handleRollClick, handleTradeClick]);\r\n return (\r\n <>\r\n \r\n \r\n );\r\n};\r\n","import React, { FC } from 'react';\nimport { SignedNumber } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { PerformanceSelectors } from '../../../data/global/selectors/performanceSelectors';\nimport _ from 'lodash';\n\nexport const PositionLegDailyPL: FC<{ positionIds: string[] }> = ({ positionIds }) => {\n const pnl = useStateSelector(s => PerformanceSelectors.aggregatePositionPerformances(s, positionIds));\n return <>{!_.isNaN(pnl.pnl) && };\n};\n","import { AggregatedPositionDTO, calculateOrderPrice, parseOccSymbol, Strategies } from '@tradingblock/api';\nimport {\n AssetType,\n ExpirationType,\n Legs,\n OptionType,\n OrderAction,\n OrderActionDirection,\n OrderType,\n PositionEffect,\n TradingStrategyNameOrCustom,\n} from '@tradingblock/types';\nimport _ from 'lodash';\nimport { QuoteSymbolQuote } from '../../../data/global/state';\nimport { useQuoteMetadata } from '../../../hooks/useFeedQuote';\nimport { GCD } from '../../../utilities/data';\nimport { changeCalculation } from '../../../utilities/position';\nimport { StrategyName, validatePositionLegs } from '../PositionLeg';\n\nconst RatioForPrice = {\n [AssetType.Equity.toFixed()]: 0.01,\n [AssetType.Option.toFixed()]: 1,\n};\nconst getLegMarketValueTotalForPrice = (leg: AggregatedPositionDTO, price: number) => {\n const at = leg.AssetType;\n const priceRatio = RatioForPrice[at.toFixed()];\n const quantity = leg.OptionMultiplier === 100 ? 1 : 100 || 1;\n return priceRatio * price * quantity;\n};\nconst getAggregatedQuotes = (legs: { ask: number; bid: number; last: number; close: number; prevClose: number }[]) => {\n return _.reduce(\n legs,\n (acc, l) => {\n return {\n ...acc,\n bid: acc.bid + l.bid,\n ask: acc.ask + l.ask,\n last: acc.last + l.last,\n close: acc.close + l.close,\n prevClose: acc.prevClose + l.prevClose,\n };\n },\n { bid: 0, ask: 0, last: 0, close: 0, prevClose: 0 }\n );\n};\nconst minOrZero = (vals: number[]) => _.min(vals) || 0;\nconst maxOrZero = (vals: number[]) => _.max(vals) || 0;\nconst getPositionLeg = (positions: AggregatedPositionDTO[], quotes: QuoteSymbolQuote[]) => {\n return positions.reduce(\n (acc, position) => {\n const legQuote = _.find(quotes, q => q.Symbol === position.Symbol);\n if (legQuote && position && position.Symbol) {\n // const isBuy = leg.Action === OrderAction.Buy;\n // const marketBidPrice = isBuy ? legQuote.BidPrice : legQuote.AskPrice;\n // const marketAskPrice = isBuy ? legQuote.AskPrice : legQuote.BidPrice;\n const legbid = getLegMarketValueTotalForPrice(position, legQuote.BidPrice);\n const legask = getLegMarketValueTotalForPrice(position, legQuote.AskPrice);\n const legLast = getLegMarketValueTotalForPrice(position, legQuote.LastTradePrice);\n const legClose = getLegMarketValueTotalForPrice(position, legQuote.ClosePrice);\n const prevClose = getLegMarketValueTotalForPrice(position, legQuote.ClosePriceTMinus2);\n return [\n ...acc,\n {\n position,\n bid: legbid,\n ask: legask,\n last: legLast,\n close: legClose,\n prevClose: prevClose,\n action: position.OpenQuantity < 0 ? OrderAction.Buy : OrderAction.Sell,\n },\n ];\n } else {\n return acc;\n }\n },\n [] as any\n );\n};\n\nfunction determineLongOrShort(positions: AggregatedPositionDTO[]) {\n if (positions.length === 1) {\n return positions[0].OpenQuantity > 0 ? OrderAction.Buy : OrderAction.Sell;\n }\n\n const stratName = StrategyName(positions);\n if (stratName === 'Custom') {\n return OrderAction.Buy;\n }\n const strategy = Strategies.find(s => s.info.Name === stratName);\n\n if (strategy === undefined || positions.length !== strategy.profile.Legs.length) {\n return OrderAction.Buy;\n }\n\n //Sort order, Equities, CALLS, PUTS on strategy legs and position legs\n let sortedStrategyLegs = strategy.profile.Legs.sort((a, b) => {\n let aWeight =\n a.AssetType === AssetType.Equity\n ? 0\n : a.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Long\n ? 1\n : a.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Short\n ? 2\n : a.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Long\n ? 3\n : a.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Short\n ? 4\n : 5;\n let bWeight =\n b.AssetType === AssetType.Equity\n ? 0\n : b.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Long\n ? 1\n : b.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Short\n ? 2\n : b.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Long\n ? 3\n : b.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Short\n ? 4\n : 5;\n return aWeight - bWeight;\n });\n const sortedPositionsLegs = positions.sort((a, b) => {\n let aWeight =\n a.AssetType === AssetType.Equity\n ? 0\n : a.Description.includes('CALL') && a.OpenQuantity > 0\n ? 1\n : a.Description.includes('CALL') && a.OpenQuantity < 0\n ? 2\n : a.Description.includes('PUT') && a.OpenQuantity > 0\n ? 3\n : a.Description.includes('PUT') && a.OpenQuantity < 0\n ? 4\n : 5;\n let bWeight =\n b.AssetType === AssetType.Equity\n ? 0\n : b.Description.includes('CALL') && a.OpenQuantity > 0\n ? 1\n : b.Description.includes('CALL') && a.OpenQuantity < 0\n ? 2\n : b.Description.includes('PUT') && a.OpenQuantity > 0\n ? 3\n : b.Description.includes('PUT') && a.OpenQuantity < 0\n ? 4\n : 5;\n return aWeight - bWeight;\n });\n\n //Lowest common denominator of position quantities\n // const lcd = 1;\n\n const longStrategyValid = sortedStrategyLegs.every((strategyLeg, legIndex) => {\n //If any of our legs are not within the spread radio, then the user broke away from the strategy\n return validatePositionLegs(strategyLeg, sortedPositionsLegs[legIndex]);\n });\n\n //By default if not bidirectional strategy is not selected, the short side is true;\n let shortStrategyValid = true;\n if (strategy.profile.Bidirectional) {\n //Invert Strategy Legs to see if we are short for a bidirectional type of strategy\n sortedStrategyLegs = sortedStrategyLegs.map(leg => ({\n ...leg,\n Direction: leg.Direction === OrderActionDirection.Long ? OrderActionDirection.Short : OrderActionDirection.Long,\n }));\n shortStrategyValid = sortedStrategyLegs.every((strategyLeg, legIndex) => {\n //If any of our legs are not within the spread radio, then the user broke away from the strategy\n return validatePositionLegs(strategyLeg, sortedPositionsLegs[legIndex]);\n });\n if (shortStrategyValid) {\n return OrderAction.Sell;\n }\n }\n if (longStrategyValid) {\n return OrderAction.Buy;\n }\n return OrderAction.Sell;\n}\n\nconst useOrderPriceRawValues = (positions: AggregatedPositionDTO[], quotes: QuoteSymbolQuote[]) => {\n const onlyShares = positions.filter(position => position.AssetType === AssetType.Option).length <= 0;\n const commission = positions.reduce((acc, p) => (acc += p.Commission), 0);\n if (onlyShares && positions.length > 0 && quotes.length > 0) {\n // Since we are only working with shares, then we do not need to aggregate the positions quote, and just use the first one.\n const quote = quotes[0];\n const { change, changePercent } = changeCalculation(\n quote.LastTradePrice,\n quote.ClosePrice,\n quote.ClosePriceTMinus2,\n quote.BidPrice,\n quote.AskPrice,\n quote.Symbol,\n quote.IsSettlementSet\n );\n\n return {\n ask: quote.AskPrice,\n bid: quote.BidPrice,\n last: quote.LastTradePrice,\n close: quote.ClosePrice,\n change: quote.NetChange,\n changePercent: quote.ChangePercentage,\n calculatedChange: change,\n calculatedChangePercent: changePercent * 100,\n isSettlementSet: quote.IsSettlementSet,\n prevClose: quote.ClosePriceTMinus2,\n commission: commission,\n };\n }\n\n const quote = quotes[0];\n\n const maxRatio = _.max(_.map(positions, l => RatioForPrice[l.AssetType.toFixed()])) || 1;\n const legPrices = getPositionLeg(positions, quotes);\n const shortLegs = _.filter(legPrices, l => l.action === OrderAction.Sell);\n const longLegs = _.filter(legPrices, l => l.action === OrderAction.Buy);\n const shorts = getAggregatedQuotes(shortLegs);\n const longs = getAggregatedQuotes(longLegs);\n const longOrShort = determineLongOrShort(positions);\n\n const gcd = GCD(_.map(positions, l => l.OptionMultiplier || 1)) || 1;\n\n const bidValue = longOrShort === OrderAction.Sell ? longs.bid - shorts.ask : shorts.bid - longs.ask;\n const askValue = longOrShort === OrderAction.Sell ? longs.ask - shorts.bid : shorts.ask - longs.bid;\n const lastValue =\n (longOrShort === OrderAction.Sell ? (longs.last - shorts.last) * -1 : shorts.last - longs.last) / maxRatio;\n const closeValue =\n (longOrShort === OrderAction.Sell ? (longs.close - shorts.close) * -1 : shorts.close - longs.close) / maxRatio;\n const prevClose =\n (longOrShort === OrderAction.Sell\n ? (longs.prevClose - shorts.prevClose) * -1\n : shorts.prevClose - longs.prevClose) / maxRatio;\n const bid = minOrZero([bidValue, askValue]) / gcd / maxRatio;\n const ask = maxOrZero([bidValue, askValue]) / gcd / maxRatio;\n const { change, changePercent } = changeCalculation(\n lastValue,\n closeValue,\n prevClose,\n bid,\n ask,\n positions[0].Symbol,\n quote.IsSettlementSet\n );\n\n return {\n ask: _.round(ask, 2),\n bid: _.round(bid, 2),\n last: lastValue,\n close: closeValue,\n change: quote.NetChange,\n changePercent: quote.ChangePercentage,\n calculatedChange: change,\n calculatedChangePercent: changePercent * 100,\n isSettlementSet: quote.IsSettlementSet,\n prevClose: quote.ClosePriceTMinus2,\n commission: commission,\n };\n};\n\nexport const usePositionInfo = (positions: AggregatedPositionDTO[]) => {\n const quotes = useQuoteMetadata(positions.map(p => p.Symbol));\n const sharesCount = positions.reduce((acc, p) => (acc += p.AssetType === AssetType.Equity ? p.OpenQuantity : 0), 0);\n const usesOptions = positions.some(p => p.AssetType === AssetType.Option);\n\n return {\n sharesCount,\n usesOptions,\n ...useOrderPriceRawValues(positions, quotes),\n };\n};\n","import React, { FC, useMemo, useCallback } from 'react';\nimport _ from 'lodash';\nimport {\n BlockType,\n OrderAction,\n AssetType,\n OptionType,\n DirectionRules,\n OrderActionDirection,\n OrderLegDTO,\n OrderStrategyTypeId,\n} from '@tradingblock/types';\nimport {\n parseOccSymbol,\n toAssetSymbol,\n AssetTypeToSymbolType,\n OrderBuilderType,\n OCCSymbolToOptionData,\n AggregatedPositionDTO,\n deriveOptionExpirationType,\n toExpiration,\n Strategies,\n CustomStrategy,\n} from '@tradingblock/api';\nimport { DefaultLegs, DtoToOrderleg } from '../Order/OrderUtilities';\nimport {\n useOrderBlockWithOrder,\n getStrategyForLegs,\n useCloseOrderAction,\n} from '../../components/blocks/hooks/useOrderBlock';\nimport { useBlockGroupInfo } from '../useGroupState';\nimport { PositionActionsProps, PositionActions } from './PositionActions';\nimport { StrategyName, validatePositionLegs } from './PositionLeg';\n\nexport interface GroupedPositionLegActionsProps {\n position: AggregatedPositionDTO[];\n}\n\nexport function GroupedPositionLegActions({ position }: GroupedPositionLegActionsProps) {\n const { UnderlyingSymbol, AssetType: assetType, Symbol } = position[0];\n const { groupId } = useBlockGroupInfo();\n const baseAssetSymbol = useMemo(\n () =>\n toAssetSymbol(UnderlyingSymbol, assetType, AssetTypeToSymbolType(assetType), {\n name: UnderlyingSymbol,\n underlyingSymbol: UnderlyingSymbol,\n rootSymbol: UnderlyingSymbol,\n }),\n [Symbol, AssetType, UnderlyingSymbol]\n );\n\n const stratName = StrategyName(position);\n let strategy = Strategies.find(s => s.info.Name === stratName);\n\n // Handle different directions for calendars\n if (strategy && strategy.profile.Rules.Direction === DirectionRules.DifferentDirections) {\n strategy.profile.Legs[0].Direction = OrderActionDirection.Long;\n strategy.profile.Legs[1].Direction = OrderActionDirection.Short;\n }\n\n //Sort order, Equities, CALLS, Short CALLS, PUTS, Short PUTS, on strategy legs and position legs\n let sortedStrategyLegs =\n strategy &&\n strategy.profile.Legs.sort((a, b) => {\n let aWeight =\n a.AssetType === AssetType.Equity\n ? 0\n : a.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Long\n ? 1\n : a.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Short\n ? 2\n : a.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Long\n ? 3\n : a.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Short\n ? 4\n : 5;\n let bWeight =\n b.AssetType === AssetType.Equity\n ? 0\n : b.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Long\n ? 1\n : b.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Short\n ? 2\n : b.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Long\n ? 3\n : b.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Short\n ? 4\n : 5;\n return aWeight - bWeight;\n });\n const sortedPositionsLegs = position.sort((a, b) => {\n let aWeight =\n a.AssetType === AssetType.Equity\n ? 0\n : a.Description.includes('CALL') && a.OpenQuantity > 0\n ? 1\n : a.Description.includes('CALL') && a.OpenQuantity < 0\n ? 2\n : a.Description.includes('PUT') && a.OpenQuantity > 0\n ? 3\n : a.Description.includes('PUT') && a.OpenQuantity < 0\n ? 4\n : 5;\n let bWeight =\n b.AssetType === AssetType.Equity\n ? 0\n : b.Description.includes('CALL') && a.OpenQuantity > 0\n ? 1\n : b.Description.includes('CALL') && a.OpenQuantity < 0\n ? 2\n : b.Description.includes('PUT') && a.OpenQuantity > 0\n ? 3\n : b.Description.includes('PUT') && a.OpenQuantity < 0\n ? 4\n : 5;\n return aWeight - bWeight;\n });\n const spreadRatioQuantities = sortedStrategyLegs\n ? sortedStrategyLegs.map((strategyLeg, legIndex) =>\n Math.floor(\n (sortedPositionsLegs[legIndex] && sortedPositionsLegs[legIndex].OpenQuantity) ||\n 1 / (strategyLeg.SpreadRatio ? strategyLeg.SpreadRatio : 1)\n )\n )\n : [];\n //Lowest common denominator of position quantities\n let lowest_common_denominator = Math.min(...spreadRatioQuantities);\n //Highest denominator\n let highest_denominator = Math.max(...spreadRatioQuantities);\n\n let shortStrategyValid = false;\n if (strategy !== undefined && strategy.profile.Bidirectional) {\n //Invert Strategy Legs to see if we are short for a bidirectional type of strategy\n sortedStrategyLegs = sortedStrategyLegs\n ? sortedStrategyLegs.map(leg => ({\n ...leg,\n Direction:\n leg.Direction === OrderActionDirection.Long ? OrderActionDirection.Short : OrderActionDirection.Long,\n }))\n : [];\n shortStrategyValid = sortedStrategyLegs.every((strategyLeg, legIndex) => {\n //If any of our legs are not within the spread radio, then the user broke away from the strategy\n return validatePositionLegs(strategyLeg, sortedPositionsLegs[legIndex]);\n });\n }\n\n const pureOrderLegs = useMemo(() => {\n const processedLegs = position.reduce(\n (acc, pos) => {\n const optionData = OCCSymbolToOptionData(pos.Symbol);\n const optionType = optionData.option;\n const strike = optionData.strike;\n const expiration = optionData.expiration;\n // for custom strategy, quantity is stored in spreadRatio\n const openQuantity = Math.abs(pos.OpenQuantity);\n const assetType = optionType ? AssetType.Option : AssetType.Equity;\n const action = pos.OpenQuantity > 0 ? OrderAction.Sell : OrderAction.Buy;\n const optionExpirationType = deriveOptionExpirationType(\n baseAssetSymbol.symbol,\n baseAssetSymbol.underlyingSymbol || ''\n );\n const legs = DefaultLegs({}, baseAssetSymbol, {\n assetType,\n optionType,\n orderAction: action,\n strike,\n expiration: expiration ? toExpiration(expiration, baseAssetSymbol.symbol, optionExpirationType) : undefined,\n });\n\n return {\n ...acc,\n ...legs,\n };\n },\n {} as { [x: string]: OrderLegDTO }\n );\n return processedLegs;\n }, [position]);\n\n const handleCloseOrder = useOrderBlockWithOrder(\n (orderBuilder: OrderBuilderType) => {\n orderBuilder.symbol(baseAssetSymbol);\n orderBuilder.strategy(strategy !== undefined ? strategy : CustomStrategy);\n\n if (strategy !== undefined) {\n if (stratName !== 'Shares') {\n // We set these for share specific strats\n if (stratName === 'Call Calendar' || stratName === 'Put Calendar') {\n orderBuilder.action(shortStrategyValid ? OrderAction.Sell : OrderAction.Buy);\n } else {\n orderBuilder.action(shortStrategyValid ? OrderAction.Buy : OrderAction.Sell);\n }\n orderBuilder.quantity(Math.abs(lowest_common_denominator));\n }\n }\n if (stratName === 'Shares') {\n const shares_quantity = position.reduce(\n (shares_quantity, share_leg) => shares_quantity + share_leg.OpenQuantity,\n 0\n );\n const sharesQuantityAbsoluteValue = Math.abs(shares_quantity);\n orderBuilder.quantity(sharesQuantityAbsoluteValue < 1 ? Math.ceil(sharesQuantityAbsoluteValue) : Math.floor(sharesQuantityAbsoluteValue));\n orderBuilder.action(\n shares_quantity > 0 ? OrderAction.Sell : OrderAction.Buy ? OrderAction.Buy : OrderAction.Sell\n );\n orderBuilder.leg(legBuilder => {\n const symbolInfo = parseOccSymbol(position[0].Symbol);\n const buildRes = legBuilder\n .assetType(symbolInfo.assetType)\n .action(shares_quantity > 0 ? OrderAction.Sell : OrderAction.Buy);\n return buildRes;\n });\n } else {\n Object.values(pureOrderLegs).forEach((leg, index) => {\n orderBuilder.leg(legBuilder => {\n const symbolInfo = parseOccSymbol(position[index].Symbol);\n const quantity =\n strategy !== undefined\n ? strategy.profile.Legs[index] && strategy.profile.Legs[index].SpreadRatio !== undefined\n ? strategy.profile.Legs[index] && strategy.profile.Legs[index].SpreadRatio\n : 1\n : position[index].OpenQuantity;\n\n const buildRes = legBuilder\n .assetType(symbolInfo.assetType)\n .action(leg.Action)\n .quantity(quantity ? Math.abs(quantity) : 1);\n if (symbolInfo.assetType === AssetType.Equity) {\n return buildRes;\n }\n return buildRes\n .optionType(symbolInfo.option || OptionType.Call)\n .expiration(symbolInfo.expiration)\n .strike(symbolInfo.strike);\n });\n });\n }\n\n return orderBuilder;\n },\n {\n blockType: BlockType.Order,\n groupId,\n }\n );\n\n const handleTradeOrder = useOrderBlockWithOrder(\n (orderBuilder: OrderBuilderType) => {\n orderBuilder.symbol(baseAssetSymbol);\n orderBuilder.strategy(strategy !== undefined ? strategy : CustomStrategy);\n if (strategy !== undefined) {\n orderBuilder.action(OrderAction.Buy);\n orderBuilder.quantity(1);\n }\n // If the strategy is shares, we need to only add one leg no matter how many pureOrderLegs there are\n if (stratName === 'Shares') {\n orderBuilder.leg(legBuilder => {\n const symbolInfo = parseOccSymbol(position[0].Symbol);\n const buildRes = legBuilder\n .assetType(symbolInfo.assetType)\n .action(OrderAction.Buy)\n .quantity(Math.abs(position[0].OpenQuantity));\n return buildRes;\n });\n return orderBuilder;\n }\n\n Object.values(pureOrderLegs).forEach((leg, index) => {\n orderBuilder.leg(legBuilder => {\n const symbolInfo = parseOccSymbol(position[index].Symbol);\n const quantity =\n strategy !== undefined\n ? strategy.profile.Legs[index] && strategy.profile.Legs[index].SpreadRatio !== undefined\n ? strategy.profile.Legs[index] && strategy.profile.Legs[index].SpreadRatio\n : 1\n : position[index].OpenQuantity;\n const buildRes = legBuilder\n .assetType(symbolInfo.assetType)\n .action(leg.Action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy)\n .quantity(Math.abs(quantity ? Math.abs(quantity) : 1));\n if (symbolInfo.assetType === AssetType.Equity) {\n return buildRes;\n }\n return buildRes\n .optionType(symbolInfo.option || OptionType.Call)\n .expiration(symbolInfo.expiration)\n .strike(symbolInfo.strike);\n });\n });\n return orderBuilder;\n },\n {\n blockType: BlockType.Order,\n groupId,\n }\n );\n\n return (\n <>\n handleCloseOrder(), icon: '' },\n { title: 'Trade', onClick: () => handleTradeOrder(), icon: 'fa-clone' },\n ]}\n identity={position.map(p => p.Symbol + '-' + p.OpenQuantity).join('.')}\n maxVisibleActions={3}\n />\n \n );\n}\n","import { AggregatedPositionDTO, parseOccSymbol, PositionDTO } from '@tradingblock/api';\nimport { AssetType, OptionType } from '@tradingblock/types';\nimport _ from 'lodash';\nimport { useMemo } from 'react';\nimport { SymbolPositions } from '../../../types';\n\nexport default function useAggregatedPositions(\n underlyingSymbol: string,\n symbolPositions: SymbolPositions,\n combineSameSymbols: boolean = true,\n groupPositionsByStrategy: boolean = true,\n subAccountId?: number\n) {\n const shouldGroupByStrategy = !groupPositionsByStrategy;\n return useMemo(() => {\n const positionValues = symbolPositions[underlyingSymbol] ? symbolPositions[underlyingSymbol].positions : [];\n // Filtering for selected sub-account\n const subIdsFromPositions = _.uniq(positionValues.map(p => p.SubaccountId));\n const isMaster = subAccountId && !subIdsFromPositions.includes(subAccountId);\n const isAll = subAccountId === -1;\n const filteredPositionValues = !isMaster\n ? positionValues.filter(p => p.SubaccountId === subAccountId)\n : positionValues.filter(p => p.SubaccountId === -1);\n const currentPositions =\n !subAccountId || isAll\n ? _.filter(positionValues, p => p.UnderlyingSymbol === underlyingSymbol)\n : _.filter(filteredPositionValues, p => p.UnderlyingSymbol === underlyingSymbol);\n const groupedPositions = _.groupBy(currentPositions, p => p.OrderId);\n\n // This reduce will convert all the PositionDTO into AggregatedPositionDTO with their correct block settings\n const agg_positions: AggregatedPositionDTO[] = currentPositions\n .reduce((alteredPositions: AggregatedPositionDTO[], position: PositionDTO) => {\n // Check if in current alteredPositions we have a symbol that matches. This is only used for combining settings logic\n const inAlteredPositions =\n alteredPositions.findIndex(\n alteredPosition =>\n alteredPosition.Symbol === position.Symbol &&\n (shouldGroupByStrategy ? groupedPositions[alteredPosition.OrderId].length === 1 : true)\n ) === -1\n ? false\n : true;\n const positionValueBasis = position.OpenQuantity * position.OptionMultiplier;\n\n // Logic for combining positions\n if (combineSameSymbols && inAlteredPositions) {\n // If we are grouping positions by strategy but our current position is not a single leg, we add it as is to avoid combining and breaking\n // the logic for grouping by strategy\n if (shouldGroupByStrategy && groupedPositions[position.OrderId].length > 1) {\n return [\n ...alteredPositions,\n {\n ...position,\n ValueBasis: positionValueBasis,\n PositionIds: [position.PositionId],\n },\n ];\n }\n // Get the current combinable position if it exists in the altered positions\n const currentCombinedPositionIndex = alteredPositions.findIndex(\n combinedPosition =>\n combinedPosition.Symbol === position.Symbol &&\n (shouldGroupByStrategy ? groupedPositions[combinedPosition.OrderId].length === 1 : true) //This just makes sure we do not combine on a multi leg strategy\n );\n // If we have a currentCombinedPositionIndex, we combined positions values with the existing combinable position\n if (currentCombinedPositionIndex !== -1) {\n // If the positions are held in different sub accounts, do not combine and instead reflect each position on its own row\n if (alteredPositions[currentCombinedPositionIndex].SubaccountId !== position.SubaccountId) {\n return [\n ...alteredPositions,\n { ...position, ValueBasis: positionValueBasis, PositionIds: [position.PositionId] },\n ];\n }\n\n //If we are on the first item, then we need to alter the OpenPrice first before computing the rest. to accurately calculate the OpenPrice Avg.\n if (alteredPositions[currentCombinedPositionIndex].PositionIds.length <= 1) {\n alteredPositions[currentCombinedPositionIndex] = {\n ...alteredPositions[currentCombinedPositionIndex],\n OpenPrice:\n alteredPositions[currentCombinedPositionIndex].OpenPrice *\n alteredPositions[currentCombinedPositionIndex].OpenQuantity,\n };\n }\n alteredPositions[currentCombinedPositionIndex] = {\n ...alteredPositions[currentCombinedPositionIndex],\n OpenQuantity: alteredPositions[currentCombinedPositionIndex].OpenQuantity + position.OpenQuantity,\n CostBasis: alteredPositions[currentCombinedPositionIndex].CostBasis + position.CostBasis,\n ValueBasis: alteredPositions[currentCombinedPositionIndex].ValueBasis + positionValueBasis,\n OpenPrice:\n alteredPositions[currentCombinedPositionIndex].OpenPrice + position.OpenPrice * position.OpenQuantity,\n PositionIds: [...alteredPositions[currentCombinedPositionIndex].PositionIds, position.PositionId],\n };\n return alteredPositions;\n }\n }\n\n //If we are not combining or we are not already in alteredPositions, convert to AggregatedPositionDTO\n return [\n ...alteredPositions,\n {\n ...position,\n ValueBasis: positionValueBasis,\n PositionIds: [position.PositionId],\n },\n ];\n }, [])\n .map(positions => {\n // If we are combining positions we need to go through all our combine positions and avg out the OpenPrice.\n if (combineSameSymbols && positions.PositionIds.length > 1) {\n return {\n ...positions,\n OpenPrice: positions.OpenPrice / positions.OpenQuantity,\n };\n }\n return positions;\n });\n\n return agg_positions;\n }, [symbolPositions, underlyingSymbol, combineSameSymbols, groupPositionsByStrategy, subAccountId]);\n}\n\nexport function sortedCustomOptionsFunction(position_1: AggregatedPositionDTO, position_2: AggregatedPositionDTO) {\n if (position_1.AssetType === AssetType.Equity) {\n return -1;\n }\n if (position_2.AssetType === AssetType.Equity) {\n return 1;\n }\n\n if (position_1.AssetType === AssetType.Option && position_2.AssetType === AssetType.Option) {\n const option_1_details = parseOccSymbol(position_1.Symbol);\n const option_2_details = parseOccSymbol(position_2.Symbol);\n\n // if we working with options in the same expiration\n if (\n option_1_details.expiration &&\n option_2_details.expiration &&\n option_1_details.expiration.valueOf() === option_2_details.expiration.valueOf()\n ) {\n // Then we need to sort Call options descending\n if (\n option_1_details.option === OptionType.Call &&\n option_2_details.option === OptionType.Call &&\n option_1_details.strike &&\n option_2_details.strike\n ) {\n return option_1_details.strike - option_2_details.strike;\n }\n\n // Then we need to sort Put options ascending\n if (\n option_1_details.option === OptionType.Put &&\n option_2_details.option === OptionType.Put &&\n option_1_details.strike &&\n option_2_details.strike\n ) {\n return option_2_details.strike - option_1_details.strike;\n }\n\n // If we are not comparing same contracts, then Calls need to go over puts\n if (option_1_details.option === OptionType.Call && option_2_details.option === OptionType.Put) {\n return -1;\n } else {\n return 1;\n }\n // Otherwise we need to sort by exp\n } else if (option_1_details.expiration && option_2_details.expiration) {\n return option_1_details.expiration.valueOf() - option_2_details.expiration.valueOf();\n }\n }\n return -1;\n}\n","import React, { useEffect, useMemo, useState } from 'react';\r\nimport _ from 'lodash';\r\nimport {\r\n SizeType,\r\n OrderAction,\r\n AssetType,\r\n OrderStrategyTypeId,\r\n OptionType,\r\n OrderActionDirection,\r\n TradingStrategyLeg,\r\n DirectionRules,\r\n} from '@tradingblock/types';\r\nimport {\r\n ResponsiveTd,\r\n getTableTdClass,\r\n Number,\r\n SignedNumber,\r\n Loading,\r\n TradingBlockLink,\r\n} from '@tradingblock/components';\r\nimport {\r\n OCCSymbolToOptionData,\r\n AssetTypeToSymbolType,\r\n toExpiration,\r\n toAssetSymbol,\r\n deriveOptionExpirationType,\r\n isOCCSymbol,\r\n AggregatedPositionDTO,\r\n parseOccSymbol,\r\n Strategies,\r\n} from '@tradingblock/api';\r\nimport { SymbolPositions } from '../../types';\r\nimport { useStateSelector } from '../../data/global/dataSelectors';\r\nimport { getPositionsFromSymbol } from '../../data/global/selectors/positionSelector';\r\nimport { useFeedQuoteWithMetadata, useQuoteMetadata } from '../../hooks/useFeedQuote';\r\nimport { FavoriteButton } from '../../components/blocks/FavoriteButton';\r\nimport { DefaultLegs } from '../Order/OrderUtilities';\r\nimport { DirectionalPrice } from '../../components/trading/DirectionalPrice';\r\nimport { PrettySymbol } from '../../components/blocks/content/PrettySymbol';\r\nimport { PositionLegActions } from './PositionLegActions';\r\nimport { usePositionSettingsValue } from './usePositionSettings';\r\nimport { PositionLegDailyPL } from './components/PositionLegDailyPL';\r\nimport {\r\n aggregatedSymbolPosition,\r\n positionToPerformance,\r\n QuoteDataToPartialQuote,\r\n} from '../../data/global/selectors/transforms';\r\nimport dayjs from 'dayjs';\r\nimport { usePositionInfo } from './hooks/usePositionInfo';\r\nimport { GroupedPositionLegActions } from './GroupedPositionLegActions';\r\nimport { calculatePositionCostValue, sortColumnsByOrder } from './util';\r\nimport useAggregatedPositions, { sortedCustomOptionsFunction } from './hooks/useAggregatedPositions';\r\n\r\nexport function avgPositionStrat(positions: AggregatedPositionDTO[]) {\r\n if (positions === undefined || positions.length <= 0) {\r\n return 0;\r\n }\r\n let openCost = positions\r\n .map(position => position.OpenPrice * position.OpenQuantity * position.OptionMultiplier)\r\n .reduce((a, v) => a + v);\r\n\r\n let combined_by_net_quantities_positions: AggregatedPositionDTO[] = [];\r\n for (let position of positions) {\r\n let position_index = combined_by_net_quantities_positions.findIndex(\r\n combined_by_net_quantities_position => combined_by_net_quantities_position.Symbol === position.Symbol\r\n );\r\n if (position_index === -1) {\r\n combined_by_net_quantities_positions.push({ ...position, OpenQuantity: Math.abs(position.OpenQuantity) });\r\n } else {\r\n combined_by_net_quantities_positions[position_index].OpenQuantity += Math.abs(position.OpenQuantity);\r\n }\r\n }\r\n\r\n const option_positions = combined_by_net_quantities_positions.filter(\r\n position => position.AssetType === AssetType.Option\r\n );\r\n let lowest_net_quantity_options = option_positions.reduce(\r\n (current_net, position) => {\r\n if (position.OpenQuantity * position.OptionMultiplier > current_net) {\r\n return Math.abs(current_net);\r\n }\r\n return position.OpenQuantity * position.OptionMultiplier;\r\n },\r\n option_positions.length > 0 ? option_positions[0].OpenQuantity * option_positions[0].OptionMultiplier : 0\r\n );\r\n\r\n const stock_positions = combined_by_net_quantities_positions.filter(\r\n position => position.AssetType !== AssetType.Option\r\n );\r\n let lowest_net_quantity_stock = stock_positions.reduce(\r\n (current_net, position) => {\r\n if (position.OpenQuantity * position.OptionMultiplier > current_net) {\r\n return Math.abs(current_net);\r\n }\r\n return position.OpenQuantity * position.OptionMultiplier;\r\n },\r\n stock_positions.length > 0 ? stock_positions[0].OpenQuantity * stock_positions[0].OptionMultiplier : 0\r\n );\r\n\r\n return lowest_net_quantity_options !== 0\r\n ? Math.abs(openCost / Math.abs(lowest_net_quantity_options))\r\n : lowest_net_quantity_stock !== 0\r\n ? Math.abs(openCost / Math.abs(lowest_net_quantity_stock))\r\n : 0;\r\n}\r\n\r\n/**\r\n * TODO: This file needs to be refactored a bit when the backend can better support strategies classification\r\n */\r\nexport const PositionLeg: React.FunctionComponent<{\r\n underlyingSymbol: string;\r\n size: SizeType;\r\n maxVisibleActions: number;\r\n subAccountId?: number;\r\n columnOrder?: string[];\r\n}> = ({ underlyingSymbol, size, maxVisibleActions, subAccountId, columnOrder }) => {\r\n const { combineSameSymbols, groupPositionsByStrategy, expandRows } = usePositionSettingsValue();\r\n const settings = {\r\n combineSameSymbols: combineSameSymbols || false,\r\n groupPositionsByStrategy: groupPositionsByStrategy || false,\r\n expandRows: expandRows || false,\r\n columnOrder: [],\r\n };\r\n const shouldGroupByStrategy = !settings.groupPositionsByStrategy; //Need to invert this due to how default works.\r\n const symbolPositions: SymbolPositions = useStateSelector(getPositionsFromSymbol);\r\n\r\n const positions: AggregatedPositionDTO[] = useAggregatedPositions(\r\n underlyingSymbol,\r\n symbolPositions,\r\n settings.combineSameSymbols,\r\n settings.groupPositionsByStrategy,\r\n subAccountId\r\n );\r\n\r\n const groupedPositions = _.groupBy(positions, p => p.OrderId);\r\n const customPositions = _.groupBy(groupedPositions, gp => gp.length === 1);\r\n if (customPositions['true'] !== undefined && customPositions['true'][0] !== undefined) {\r\n customPositions['true'][0][0].StrategyTypeId = OrderStrategyTypeId.Undefined;\r\n }\r\n\r\n let sortedPositions = useMemo(() => {\r\n return positions.sort(sortedCustomOptionsFunction);\r\n }, [positions]);\r\n\r\n const sortedCustomOptions: AggregatedPositionDTO[] = useMemo(() => {\r\n if (customPositions['true'] !== undefined) {\r\n const agg_positions: AggregatedPositionDTO[] = customPositions['true']\r\n .flat()\r\n .filter(pos => pos.AssetType !== AssetType.Equity);\r\n return agg_positions.sort(sortedCustomOptionsFunction);\r\n }\r\n return [];\r\n }, [customPositions['true']]);\r\n\r\n if (shouldGroupByStrategy) {\r\n return (\r\n <>\r\n {customPositions['true'] !== undefined &&\r\n customPositions['true'].flat().filter(pos => pos.AssetType === AssetType.Equity).length > 0 && (\r\n pos.AssetType === AssetType.Equity)\r\n .map(pos => ({ ...pos, StrategyTypeId: OrderStrategyTypeId.Stock }))}\r\n size={size}\r\n maxVisibleActions={maxVisibleActions}\r\n columnOrder={columnOrder}\r\n key={'shares positions'}\r\n expandRows={expandRows}\r\n subAccountId={subAccountId}\r\n />\r\n )}\r\n {customPositions['false'] !== undefined &&\r\n customPositions['false'].flat().length > 0 &&\r\n Object.values(customPositions['false']).map((gPos, i) => (\r\n \r\n ))}\r\n {sortedCustomOptions !== undefined &&\r\n sortedCustomOptions.length > 0 &&\r\n sortedCustomOptions.map((position, i) => (\r\n \r\n ))}\r\n \r\n );\r\n }\r\n\r\n return (\r\n <>\r\n {sortedPositions.map((p, i) => {\r\n return (\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nfunction StrategySymbology(groupedPosition: AggregatedPositionDTO[]) {\r\n const { StrategyTypeId } = groupedPosition[0];\r\n let strategy = 'Custom';\r\n switch (StrategyTypeId) {\r\n case OrderStrategyTypeId.Stock:\r\n strategy = 'Shares';\r\n return (\r\n
    \r\n
    {strategy}
    \r\n
    \r\n );\r\n case OrderStrategyTypeId.Single:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'}`;\r\n break;\r\n case OrderStrategyTypeId.CoveredCall:\r\n strategy = 'Covered Call';\r\n break;\r\n case OrderStrategyTypeId.MarriedCall:\r\n strategy = 'Covered Call';\r\n break;\r\n case OrderStrategyTypeId.MarriedPut:\r\n strategy = 'Married Put';\r\n break;\r\n case OrderStrategyTypeId.CoveredPut:\r\n strategy = 'Married Put';\r\n break;\r\n case OrderStrategyTypeId.Vertical:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'} Vertical`;\r\n break;\r\n case OrderStrategyTypeId.Calendar: //Need a Call Calendar:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'} Calendar`;\r\n break;\r\n case OrderStrategyTypeId.Straddle:\r\n strategy = 'Straddle';\r\n break;\r\n case OrderStrategyTypeId.Strangle:\r\n strategy = 'Strangle';\r\n break;\r\n case OrderStrategyTypeId.Butterfly: //Need Call:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'} Butterfly`;\r\n break;\r\n case OrderStrategyTypeId.Condor: //Need Call:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'} Condor`;\r\n break;\r\n case OrderStrategyTypeId.IronButterfly:\r\n strategy = 'Iron Butterfly';\r\n break;\r\n case OrderStrategyTypeId.IronConder:\r\n strategy = 'Iron Condor';\r\n break;\r\n case OrderStrategyTypeId.Conversion:\r\n strategy = 'Conversion';\r\n break;\r\n case OrderStrategyTypeId.Undefined:\r\n strategy = 'Reversal';\r\n break;\r\n case OrderStrategyTypeId.Box:\r\n strategy = 'Box Spread';\r\n break;\r\n }\r\n\r\n return (\r\n
    \r\n \r\n {`${_.uniq(\r\n groupedPosition.map(p =>\r\n dayjs(parseOccSymbol(p.Symbol).expiration ? parseOccSymbol(p.Symbol).expiration : p.DateOpened).format(\r\n 'MMM DD'\r\n )\r\n )\r\n ).join(', ')}`}\r\n \r\n
    {strategy}
    \r\n \r\n {`${groupedPosition\r\n .map(p => (parseOccSymbol(p.Symbol).strike ? parseOccSymbol(p.Symbol).strike : `${p.OpenQuantity} Shares`))\r\n .join(', ')}`}\r\n \r\n
    \r\n );\r\n}\r\n\r\nexport function StrategyName(groupedPosition: AggregatedPositionDTO[]) {\r\n const { Symbol, StrategyTypeId } = groupedPosition[0];\r\n let strategy = 'Custom';\r\n switch (StrategyTypeId) {\r\n case OrderStrategyTypeId.Stock:\r\n strategy = 'Shares';\r\n break;\r\n case OrderStrategyTypeId.Single:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'}`;\r\n break;\r\n case OrderStrategyTypeId.CoveredCall:\r\n strategy = 'Covered Call';\r\n break;\r\n case OrderStrategyTypeId.MarriedCall:\r\n strategy = 'Covered Call';\r\n break;\r\n case OrderStrategyTypeId.MarriedPut:\r\n strategy = 'Married Put';\r\n break;\r\n case OrderStrategyTypeId.CoveredPut:\r\n strategy = 'Married Put';\r\n break;\r\n case OrderStrategyTypeId.Vertical:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'} Vertical`;\r\n break;\r\n case OrderStrategyTypeId.Calendar: //Need a Call Calendar:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'} Calendar`;\r\n break;\r\n case OrderStrategyTypeId.Straddle:\r\n strategy = 'Straddle';\r\n break;\r\n case OrderStrategyTypeId.Strangle:\r\n strategy = 'Strangle';\r\n break;\r\n case OrderStrategyTypeId.Butterfly: //Need Call:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'} Butterfly`;\r\n break;\r\n case OrderStrategyTypeId.Condor: //Need Call:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'} Condor`;\r\n break;\r\n case OrderStrategyTypeId.IronButterfly:\r\n strategy = 'Iron Butterfly';\r\n break;\r\n case OrderStrategyTypeId.IronConder:\r\n strategy = 'Iron Condor';\r\n break;\r\n case OrderStrategyTypeId.Conversion:\r\n strategy = 'Conversion';\r\n break;\r\n case OrderStrategyTypeId.Undefined:\r\n strategy = 'Reversal';\r\n break;\r\n case OrderStrategyTypeId.Box:\r\n strategy = 'Box Spread';\r\n break;\r\n }\r\n return strategy;\r\n}\r\n\r\nconst isValidPositionStrategy = (positions: AggregatedPositionDTO[]) => {\r\n const stratName = StrategyName(positions);\r\n if (stratName === 'Shares') {\r\n return true;\r\n }\r\n if (stratName === 'Custom') {\r\n return false;\r\n }\r\n let strategy = Strategies.find(s => s.info.Name === stratName);\r\n if (strategy === undefined || positions.length !== strategy.profile.Legs.length) {\r\n return false;\r\n }\r\n\r\n // Handle different directions for calendars\r\n if (strategy.profile.Rules.Direction === DirectionRules.DifferentDirections) {\r\n strategy.profile.Legs[0].Direction = OrderActionDirection.Long;\r\n strategy.profile.Legs[1].Direction = OrderActionDirection.Short;\r\n }\r\n\r\n //Sort order, Equities, CALLS, Short CALLS, PUTS, Short PUTS, on strategy legs and position legs\r\n let sortedStrategyLegs = strategy.profile.Legs.sort((a, b) => {\r\n let aWeight =\r\n a.AssetType === AssetType.Equity\r\n ? 0\r\n : a.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Long\r\n ? 1\r\n : a.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Short\r\n ? 2\r\n : a.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Long\r\n ? 3\r\n : a.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Short\r\n ? 4\r\n : 5;\r\n let bWeight =\r\n b.AssetType === AssetType.Equity\r\n ? 0\r\n : b.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Long\r\n ? 1\r\n : b.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Short\r\n ? 2\r\n : b.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Long\r\n ? 3\r\n : b.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Short\r\n ? 4\r\n : 5;\r\n return aWeight - bWeight;\r\n });\r\n const sortedPositionsLegs = positions.sort((a, b) => {\r\n let aWeight =\r\n a.AssetType === AssetType.Equity\r\n ? 0\r\n : a.Description.includes('CALL') && a.OpenQuantity > 0\r\n ? 1\r\n : a.Description.includes('CALL') && a.OpenQuantity < 0\r\n ? 2\r\n : a.Description.includes('PUT') && a.OpenQuantity > 0\r\n ? 3\r\n : a.Description.includes('PUT') && a.OpenQuantity < 0\r\n ? 4\r\n : 5;\r\n let bWeight =\r\n b.AssetType === AssetType.Equity\r\n ? 0\r\n : b.Description.includes('CALL') && a.OpenQuantity > 0\r\n ? 1\r\n : b.Description.includes('CALL') && a.OpenQuantity < 0\r\n ? 2\r\n : b.Description.includes('PUT') && a.OpenQuantity > 0\r\n ? 3\r\n : b.Description.includes('PUT') && a.OpenQuantity < 0\r\n ? 4\r\n : 5;\r\n return aWeight - bWeight;\r\n });\r\n\r\n //Lowest common denominator of position quantities\r\n const spreadRatioQuantities = sortedStrategyLegs.map((strategyLeg, legIndex) =>\r\n Math.floor(sortedPositionsLegs[legIndex].OpenQuantity / (strategyLeg.SpreadRatio ? strategyLeg.SpreadRatio : 1))\r\n );\r\n //Lowest common denominator of position quantities\r\n let lowest_common_denominator = Math.abs(Math.min(...spreadRatioQuantities));\r\n //Highest denominator\r\n let highest_denominator = Math.abs(Math.max(...spreadRatioQuantities));\r\n\r\n const longStrategyValid = sortedStrategyLegs.every((strategyLeg, legIndex) => {\r\n //If any of our legs are not within the spread radio, then the user broke away from the strategy\r\n return validatePositionLegs(strategyLeg, sortedPositionsLegs[legIndex]);\r\n });\r\n\r\n //By default if not bidirectional strategy is not selected, the short side is true;\r\n let shortStrategyValid = true;\r\n if (strategy.profile.Bidirectional) {\r\n //Invert Strategy Legs to see if we are short for a bidirectional type of strategy\r\n sortedStrategyLegs = sortedStrategyLegs.map(leg => ({\r\n ...leg,\r\n Direction: leg.Direction === OrderActionDirection.Long ? OrderActionDirection.Short : OrderActionDirection.Long,\r\n }));\r\n shortStrategyValid = sortedStrategyLegs.every((strategyLeg, legIndex) => {\r\n //If any of our legs are not within the spread radio, then the user broke away from the strategy\r\n return validatePositionLegs(strategyLeg, sortedPositionsLegs[legIndex]);\r\n });\r\n }\r\n\r\n return (longStrategyValid || shortStrategyValid) && lowest_common_denominator === highest_denominator;\r\n};\r\n\r\nexport function countValidStrategyPositions(positions: AggregatedPositionDTO[]) {\r\n const stratName = StrategyName(positions);\r\n if (stratName === 'Shares') {\r\n return 0;\r\n }\r\n if (stratName === 'Custom') {\r\n return 0;\r\n }\r\n let strategy = Strategies.find(s => s.info.Name === stratName);\r\n if (strategy === undefined || positions.length !== strategy.profile.Legs.length) {\r\n return 0;\r\n }\r\n\r\n // Handle different directions for calendars\r\n if (strategy.profile.Rules.Direction === DirectionRules.DifferentDirections) {\r\n strategy.profile.Legs[0].Direction = OrderActionDirection.Long;\r\n strategy.profile.Legs[1].Direction = OrderActionDirection.Short;\r\n }\r\n\r\n //Sort order, Equities, CALLS, Short CALLS, PUTS, Short PUTS, on strategy legs and position legs\r\n let sortedStrategyLegs = strategy.profile.Legs.sort((a, b) => {\r\n let aWeight =\r\n a.AssetType === AssetType.Equity\r\n ? 0\r\n : a.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Long\r\n ? 1\r\n : a.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Short\r\n ? 2\r\n : a.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Long\r\n ? 3\r\n : a.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Short\r\n ? 4\r\n : 5;\r\n let bWeight =\r\n b.AssetType === AssetType.Equity\r\n ? 0\r\n : b.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Long\r\n ? 1\r\n : b.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Short\r\n ? 2\r\n : b.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Long\r\n ? 3\r\n : b.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Short\r\n ? 4\r\n : 5;\r\n return aWeight - bWeight;\r\n });\r\n const sortedPositionsLegs = positions.sort((a, b) => {\r\n let aWeight =\r\n a.AssetType === AssetType.Equity\r\n ? 0\r\n : a.Description.includes('CALL') && a.OpenQuantity > 0\r\n ? 1\r\n : a.Description.includes('CALL') && a.OpenQuantity < 0\r\n ? 2\r\n : a.Description.includes('PUT') && a.OpenQuantity > 0\r\n ? 3\r\n : a.Description.includes('PUT') && a.OpenQuantity < 0\r\n ? 4\r\n : 5;\r\n let bWeight =\r\n b.AssetType === AssetType.Equity\r\n ? 0\r\n : b.Description.includes('CALL') && a.OpenQuantity > 0\r\n ? 1\r\n : b.Description.includes('CALL') && a.OpenQuantity < 0\r\n ? 2\r\n : b.Description.includes('PUT') && a.OpenQuantity > 0\r\n ? 3\r\n : b.Description.includes('PUT') && a.OpenQuantity < 0\r\n ? 4\r\n : 5;\r\n return aWeight - bWeight;\r\n });\r\n\r\n //Lowest common denominator of position quantities\r\n const spreadRatioQuantities = sortedStrategyLegs.map((strategyLeg, legIndex) =>\r\n Math.floor(sortedPositionsLegs[legIndex].OpenQuantity / (strategyLeg.SpreadRatio ? strategyLeg.SpreadRatio : 1))\r\n );\r\n //Lowest common denominator of position quantities\r\n let lowest_common_denominator = Math.abs(Math.min(...spreadRatioQuantities));\r\n\r\n return lowest_common_denominator;\r\n}\r\n\r\nexport function validatePositionLegs(strategyLeg: TradingStrategyLeg, legPosition: AggregatedPositionDTO) {\r\n if (strategyLeg.SpreadRatio && legPosition.OpenQuantity % strategyLeg.SpreadRatio !== 0) {\r\n return false;\r\n }\r\n //Equities are valid legs, no need to validate them.\r\n if (strategyLeg.AssetType === AssetType.Equity && legPosition.AssetType === AssetType.Equity) {\r\n return true;\r\n }\r\n\r\n const positionOptionType: OptionType = legPosition.Description.includes('CALL') ? OptionType.Call : OptionType.Put;\r\n const positionDirection: OrderActionDirection =\r\n legPosition.OpenQuantity > 0 ? OrderActionDirection.Long : OrderActionDirection.Short;\r\n return (\r\n strategyLeg.AssetType === legPosition.AssetType &&\r\n strategyLeg.OptionType === positionOptionType &&\r\n strategyLeg.Direction === positionDirection\r\n );\r\n}\r\n\r\nconst GroupedStrategyPosition = ({\r\n groupedPosition,\r\n size,\r\n maxVisibleActions,\r\n columnOrder,\r\n expandRows,\r\n subAccountId,\r\n}: {\r\n groupedPosition: AggregatedPositionDTO[];\r\n size: SizeType;\r\n maxVisibleActions: number;\r\n columnOrder?: string[];\r\n expandRows?: boolean;\r\n subAccountId?: number;\r\n}) => {\r\n const [expandStratPosition, setExpandStratPosition] = useState(false);\r\n const feedQuotes = useQuoteMetadata(groupedPosition.map(p => p.Symbol));\r\n const performance = useMemo(\r\n () =>\r\n aggregatedSymbolPosition(\r\n groupedPosition,\r\n QuoteDataToPartialQuote(feedQuotes as any),\r\n groupedPosition[0].UnderlyingSymbol\r\n ),\r\n [groupedPosition, feedQuotes]\r\n );\r\n const posInfo = usePositionInfo(groupedPosition);\r\n const {\r\n Change,\r\n Description,\r\n Last,\r\n PrevClose,\r\n Ask,\r\n Close,\r\n Bid,\r\n Gain,\r\n Options,\r\n Cost,\r\n Percent,\r\n Value,\r\n Shares,\r\n PNL,\r\n AvgPrice,\r\n } = usePositionSettingsValue();\r\n if (groupedPosition.length === 1) {\r\n if (!groupedPosition[0].Description) {\r\n groupedPosition[0].Description = 'Stock';\r\n groupedPosition[0].StrategyTypeId = OrderStrategyTypeId.Stock;\r\n }\r\n if (groupedPosition[0].Description.includes('CALL')) {\r\n groupedPosition[0].StrategyTypeId = OrderStrategyTypeId.Single;\r\n } else if (groupedPosition[0].Description.includes('PUT')) {\r\n groupedPosition[0].StrategyTypeId = OrderStrategyTypeId.Single;\r\n } else {\r\n groupedPosition[0].StrategyTypeId = OrderStrategyTypeId.Stock;\r\n }\r\n }\r\n\r\n const isValidStrategy = useMemo(() => {\r\n return isValidPositionStrategy(groupedPosition);\r\n }, [groupedPosition]);\r\n const strategyCount = useMemo(() => {\r\n return countValidStrategyPositions(groupedPosition);\r\n }, [groupedPosition]);\r\n\r\n const symbolPositions: SymbolPositions = useStateSelector(getPositionsFromSymbol);\r\n const positions: AggregatedPositionDTO[] = useAggregatedPositions(\r\n groupedPosition[0].UnderlyingSymbol,\r\n symbolPositions,\r\n true,\r\n false,\r\n subAccountId\r\n );\r\n\r\n const totalCommission = positions.reduce((acc, position) => {\r\n return acc + position.Commission;\r\n }, 0);\r\n\r\n useEffect(() => {\r\n if (expandRows) {\r\n setExpandStratPosition(true);\r\n } else {\r\n setExpandStratPosition(false);\r\n }\r\n }, [expandRows]);\r\n\r\n const sameSymbolAmongGroupedPositions = useMemo(() => groupedPosition.every((position) => position.Symbol === groupedPosition[0].Symbol), [groupedPosition]);\r\n const totalNumberOfContractsForGroupedPositions = useMemo(() => groupedPosition.reduce(\r\n (numberOfContractsForGroupedPositions, position) => numberOfContractsForGroupedPositions + position.OpenQuantity,\r\n 0,\r\n ), [groupedPosition]);\r\n \r\n const determineGroupedPositionsCostValue = (): number => {\r\n if (sameSymbolAmongGroupedPositions) {\r\n return calculatePositionCostValue(\r\n avgPositionStrat(groupedPosition),\r\n totalNumberOfContractsForGroupedPositions,\r\n groupedPosition[0].AssetType,\r\n groupedPosition[0].OptionMultiplier\r\n );\r\n }\r\n\r\n return performance.cost - posInfo.commission;\r\n }\r\n\r\n const determineGroupedPositionsGainValue = (): number => {\r\n if (sameSymbolAmongGroupedPositions) {\r\n return performance.value - calculatePositionCostValue(\r\n avgPositionStrat(groupedPosition),\r\n totalNumberOfContractsForGroupedPositions,\r\n groupedPosition[0].AssetType,\r\n groupedPosition[0].OptionMultiplier\r\n );\r\n }\r\n\r\n return performance.gain + posInfo.commission;\r\n }\r\n\r\n const subRowColumns = useMemo(() => {\r\n const columns = [\r\n {\r\n setExpandStratPosition(!expandStratPosition);\r\n }}\r\n >\r\n \r\n
    \r\n {isValidStrategy ? (\r\n StrategySymbology(groupedPosition)\r\n ) : (\r\n
    \r\n \r\n {`${_.uniq(\r\n groupedPosition.map(p =>\r\n dayjs(\r\n parseOccSymbol(p.Symbol).expiration ? parseOccSymbol(p.Symbol).expiration : p.DateOpened\r\n ).format('MMM DD')\r\n )\r\n ).join(', ')}`}\r\n \r\n
    {'Custom'}
    \r\n \r\n {`${groupedPosition\r\n .map(p =>\r\n parseOccSymbol(p.Symbol).strike ? parseOccSymbol(p.Symbol).strike : `${p.OpenQuantity} Shares`\r\n )\r\n .join(', ')}`}\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 ,\r\n // TBFE-1515: The calculation in determineGroupedPositionsCostValue is a temporary change until the backend has been updated with the new calculation.\r\n // Once the backend change is in place we can revert this change.\r\n ,\r\n ,\r\n // TBFE-1515: The calculation in determineGroupedPositionsGainValue is a temporary change until the backend has been updated with the new calculation for position cost value.\r\n // Once the backend change is in place we can revert this change.\r\n ,\r\n ,\r\n \r\n p.PositionIds).join('-')}`}\r\n position={groupedPosition}\r\n />\r\n ,\r\n ];\r\n\r\n sortColumnsByOrder(columns, columnOrder ? columnOrder : []);\r\n return columns;\r\n }, [groupedPosition, posInfo, performance, expandStratPosition, columnOrder]);\r\n\r\n return (\r\n <>\r\n \r\n {subRowColumns.map((col, i) => (\r\n {col}\r\n ))}\r\n \r\n {expandStratPosition &&\r\n groupedPosition.map((p: any, i: any) => (\r\n \r\n ))}\r\n \r\n );\r\n};\r\n\r\nconst PositionLegRow: React.FunctionComponent<{\r\n position: AggregatedPositionDTO;\r\n size: SizeType;\r\n maxVisibleActions: number;\r\n color?: string;\r\n indentMargin?: number;\r\n columnOrder?: string[];\r\n subAccountId?: number;\r\n}> = ({ position, size, maxVisibleActions, color, indentMargin, columnOrder, subAccountId }) => {\r\n const [symbol, underlyingSymbol, assetType] = [position.Symbol, position.UnderlyingSymbol, position.AssetType];\r\n const feedQuote = useFeedQuoteWithMetadata(symbol.replace(';', ''));\r\n const {\r\n Change,\r\n Description,\r\n Last,\r\n Ask,\r\n PrevClose,\r\n Close,\r\n Bid,\r\n Gain,\r\n Options,\r\n Cost,\r\n Percent,\r\n Value,\r\n Shares,\r\n PNL,\r\n AvgPrice,\r\n } = usePositionSettingsValue();\r\n const assetSymbol = useMemo(\r\n () =>\r\n toAssetSymbol(position.Symbol, assetType, AssetTypeToSymbolType(assetType), {\r\n name: underlyingSymbol,\r\n underlyingSymbol,\r\n rootSymbol: underlyingSymbol,\r\n }),\r\n [position.Symbol, assetType, underlyingSymbol]\r\n );\r\n const performance = useMemo(() => positionToPerformance(position, feedQuote), [position, feedQuote]);\r\n const optionData = useMemo(() => OCCSymbolToOptionData(symbol), [symbol]);\r\n\r\n const tradeData = useMemo(() => {\r\n const optionType = optionData.option;\r\n const strike = optionData.strike;\r\n const expiration = optionData.expiration;\r\n // for custom strategy, quantity is stored in spreadRatio\r\n const openQuantity = Math.abs(position.OpenQuantity);\r\n const assetType = optionType ? AssetType.Option : AssetType.Equity;\r\n const action = position.OpenQuantity > 0 ? OrderAction.Sell : OrderAction.Buy;\r\n const optionExpirationType = deriveOptionExpirationType(assetSymbol.symbol, assetSymbol.underlyingSymbol || '');\r\n const legs = DefaultLegs({}, assetSymbol, {\r\n assetType,\r\n optionType,\r\n orderAction: action,\r\n strike,\r\n expiration: expiration ? toExpiration(expiration, assetSymbol.symbol, optionExpirationType) : undefined,\r\n });\r\n return { legs, action, quantity: openQuantity };\r\n }, [assetSymbol, position, optionData]);\r\n\r\n const tdClass = getTableTdClass(size);\r\n const { combineSameSymbols } = usePositionSettingsValue();\r\n\r\n const isShare = useMemo(() => _.isNil(position.meta.OptionExpirationType), [position]);\r\n const combinedShares = combineSameSymbols && isShare;\r\n\r\n const subRowColumns = useMemo(() => {\r\n const columns = [\r\n \r\n {combinedShares && <>{position.Symbol}}\r\n {!combinedShares && (\r\n \r\n )}\r\n {isOCCSymbol(symbol) && }\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 ,\r\n \r\n {position.AssetType === AssetType.MoneyMarket || position.AssetType === AssetType.MutualFund ? (\r\n
    \r\n \r\n Legacy Support Only\r\n \r\n
    \r\n ) : (\r\n \r\n )}\r\n
    ,\r\n ];\r\n sortColumnsByOrder(columns, columnOrder ? columnOrder : []);\r\n return columns;\r\n }, [\r\n position,\r\n tradeData,\r\n optionData,\r\n combinedShares,\r\n size,\r\n indentMargin,\r\n performance,\r\n maxVisibleActions,\r\n columnOrder,\r\n combineSameSymbols,\r\n ]);\r\n return (\r\n \r\n {subRowColumns.map((column, i) => (\r\n {column}\r\n ))}\r\n \r\n );\r\n};\r\n","import React, { FC, useState, useCallback } from 'react';\n\n/**\n * This is the dropdown that shows each individual position for the top-level position\n */\nexport const PositionDropdown: FC = ({ children }) => {\n const [arrow, setArrow] = useState('right');\n const toggle = useCallback(() => {\n setArrow(arrow === 'right' ? 'down' : 'right');\n }, [arrow, setArrow]);\n\n return (\n <>\n \n \n );\n};\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport _ from 'lodash';\nimport { BasicSelect, OptionType } from '@tradingblock/components';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { UIActions } from '../../data/global/actions';\n\nexport const SubAccountFilter: React.FunctionComponent<{\n setSubAccountId: (subAccountId: number) => void;\n}> = ({ setSubAccountId }) => {\n const subAccounts = useStateSelector(s => s.account.subaccounts.subaccounts) || [];\n const subAccountIds = subAccounts.map(s => {\n const { Id, Nickname } = s;\n return {\n label: Nickname,\n id: Id.toString(),\n data: Id.toString(),\n };\n });\n const accountOptions: OptionType[] = subAccountIds\n .map((s: any) => ({\n value: s.id,\n label: s.label,\n data: s.data,\n }))\n .reverse()\n .concat([{ value: 'All', label: 'All', data: '-1' }])\n .reverse();\n\n const currentAccount = useMemo(() => {\n const firstAccount = _.first(accountOptions);\n if (firstAccount) {\n return firstAccount.label;\n }\n const defaultAccount = { value: 'All', label: 'All', data: '-1' };\n return defaultAccount;\n }, [accountOptions]);\n\n const dispatch = useDispatch();\n const subAccountFilterId = useStateSelector(s => s.ui.dashboard.subAccountFilterId);\n const subAccountFilterIdAccount = subAccountFilterId\n ? accountOptions.find(a => a.value === subAccountFilterId.toString()) || { value: 'All', label: 'All', data: '-1' }\n : null;\n\n const onSubAccountChange = useCallback(\n (val: OptionType | null | undefined) => {\n const subAccountId = _.isNil(val) ? undefined : parseInt(val.data);\n if (subAccountId) {\n setSubAccountId(subAccountId);\n dispatch(UIActions.setSubAccountFilterId({ id: subAccountId }));\n }\n },\n [setSubAccountId]\n );\n\n useEffect(() => {\n if (subAccountFilterId) {\n setSubAccountId(subAccountFilterId);\n }\n }, [subAccountFilterId]);\n\n return (\n
    \n
    \n \n
    \n
    \n );\n};\n","import _ from 'lodash';\n\nimport { OrderAction, ProfitLossInfoMap, SymbolProfitLossInfo, Order } from '@tradingblock/types';\n\nimport { QuotesState } from '../../state';\n\nimport { PositionDTO } from '@tradingblock/api';\nimport { OrderLegWithOrderData } from './types';\n\nexport const utilities = {\n getNetQuantityChange: (legs: OrderLegWithOrderData[]) =>\n _(legs)\n .map(l => (l.Action === OrderAction.Buy ? l.LegFillQuantity || 0 : -1 * (l.LegFillQuantity || 0)))\n .sum() || 0,\n toArray: (arg: ProfitLossInfoMap | SymbolProfitLossInfo[], type: string) => (_.isArray(arg) ? arg : _.map(arg, (v, k) => ({ ...v, id: k, pnlType: type }))),\n getQuoteForSymbol: (state: QuotesState) => (symbol: string) => _.find(state.quoteMetadata.data, q => q.Symbol === symbol),\n ordersToExecutedOrderLegs: (orders: Order[]) => _.flatMap(orders, o => o.Legs.map(l => ({ ...l, UnderlyingSymbol: o.UnderlyingSymbol, OrderId: o.OrderId, Date: o.Date }))).filter(ol => !_.isNil(ol.LegFillQuantity) && ol.LegFillQuantity !== 0),\n totalQuantityBySymbol: (positions: PositionDTO[], symbol: string) =>\n _(positions)\n .filter(p => p.Symbol === symbol)\n .map(p => p.OpenQuantity)\n .sum() || 0,\n};\n","import { QuotesState } from '../../state';\nimport { Order, ProfitLossInfoMap } from '@tradingblock/types';\nimport { PositionDTO, pnlByPrice, getBestPrice, orderLegTradingPnL, isOptionSymbol } from '@tradingblock/api';\nimport _ from 'lodash';\nimport { utilities } from './utilities';\n\nexport const SymbolPnLReducer = (\n quoteState: QuotesState,\n orders: Order[],\n allPositions: PositionDTO[]\n): ProfitLossInfoMap => {\n const quo = utilities.getQuoteForSymbol(quoteState);\n const orderLegs = utilities.ordersToExecutedOrderLegs(orders);\n const symbolsWithPositions = allPositions.map(p => p.Symbol);\n const symbolsWithOrders = _.map(orderLegs, o => o.Symbol);\n\n const allSymbols = _(symbolsWithPositions)\n .union(symbolsWithOrders)\n .uniq()\n .value();\n const symbolPnls: ProfitLossInfoMap = _(allSymbols).reduce((acc: ProfitLossInfoMap, symbol: string) => {\n const positions = allPositions.filter(p => p.Symbol === symbol);\n const legs = _.filter(orderLegs, o => o.Symbol === symbol);\n const underlyingSymbol =\n positions.length > 0 ? positions[0].UnderlyingSymbol : legs.length > 0 ? legs[0].UnderlyingSymbol : symbol;\n const netQuantityChange = utilities.getNetQuantityChange(legs);\n const positionQuantityNow = _.sum(positions.map(p => p.OpenQuantity)) || 0;\n const positionOnOpen = positionQuantityNow - netQuantityChange;\n const quote = quo(symbol);\n const optionMultiplier = quote && quote.Multiplier ? quote.Multiplier : 1;\n const closePrice =\n quote && quote.IsSettlementSet ? quote.ClosePriceTMinus2 : quote && quote.ClosePrice ? quote.ClosePrice : quote && quote.LastOrClosePrice ? quote.LastOrClosePrice : 0;\n if (_.isNil(quote)) {\n // console.warn(symbol, 'quote not loaded. Defaulting symbol pnl');\n return acc;\n }\n if (positions.length === 0 && legs.length === 0) {\n return acc;\n }\n\n const quoteInfo = {\n AskPrice: quote.AskPrice,\n BidPrice: quote.BidPrice,\n LastOrClosePrice: quote.LastOrClosePrice,\n Multiplier: quote.Multiplier,\n isSettlementSet: quote.IsSettlementSet,\n };\n let positionPnl = pnlByPrice(\n {\n ...quoteInfo,\n PositionOnOpen: positionOnOpen,\n Symbol: symbol,\n },\n closePrice\n );\n\n const tradingPnlInfo = orderLegTradingPnL(quote, legs);\n const trading = tradingPnlInfo.pnl;\n\n const total = trading + positionPnl;\n if (_.isNaN(positionPnl)) {\n // console.warn(symbol, 'invalid symbol pnl', positionPnl, {\n // legs,\n // positions,\n // calculated: {\n // trading: trading,\n // tradingFromPositions: positionTradingPnL,\n // },\n // quote: {\n // AskPrice: quote.AskPrice,\n // BidPrice: quote.BidPrice,\n // LastOrClosePrice: quote.LastOrClosePrice,\n // },\n // PositionOnOpen: positionOnOpen,\n // closePrice,\n // });\n }\n return {\n ...acc,\n [symbol]: { trading, position: positionPnl, total, symbol: symbol, underlyingSymbol },\n };\n }, {});\n // const orderLegsForSymbolsWithoutPositions = orderLegs.filter(o => !symbolsWithPositions.includes(o.Symbol));\n // const orderPnls = tradingPnlReducer(quoteState, orderLegs, positions);\n\n // const positionsBySymbol = _.reduce(\n // { ...positionPnls, ...orderPnls },\n // (acc: ProfitLossInfoMap, v: BasicSymbolProfitLossInfo): ProfitLossInfoMap => {\n // const existing = acc[v.symbol] || { trading: 0, position: 0, total: 0, symbol: v.symbol, underlyingSymbol: v.underlyingSymbol };\n // // const trading = existing.trading + v.trading;\n // const trading = orderPnls[v.symbol] ? orderPnls[v.symbol].trading : 0;\n // const position = existing.position + v.position;\n // return {\n // ...acc,\n // [v.symbol]: {\n // ...existing,\n // trading,\n // position,\n // total: trading + position,\n // },\n // };\n // },\n // {}\n // );\n return symbolPnls;\n};\n","import React, { useState, useMemo, useCallback, useEffect } from 'react';\nimport { Row, Cell } from 'react-table';\nimport _ from 'lodash';\nimport {\n PositionPerformanceInfo,\n SizeType,\n OrderAction,\n AssetType,\n BlockType,\n ProfitLossInfoMap,\n AggregatedProfitLossInfo,\n BasicSymbolProfitLossInfo,\n} from '@tradingblock/types';\nimport {\n Number,\n CellWithExpandedToggleProps,\n SignedNumber,\n useTableColumnWidths,\n Loading,\n EmptyBlockContent,\n TradingBlockLink,\n} from '@tradingblock/components';\nimport {\n OrderBuilderType,\n Shares,\n CustomStrategy,\n AssetTypeToSymbolType,\n toAssetSymbol,\n isOCCSymbol,\n PositionDTO,\n PartialQuote,\n TodaysFilledOrders,\n AggregatedPositionDTO,\n} from '@tradingblock/api';\nimport { DirectionalPrice } from '../../../components/trading/DirectionalPrice';\nimport { useOrderBlockWithOrder } from '../../../components/blocks/hooks/useOrderBlock';\nimport { useChartSymbolAction, PriceChartBuilderType } from '../../../components/blocks/hooks/usePriceChartBlock';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { getAllPositionInfo, getPositionsFromSymbol } from '../../../data/global/selectors/positionSelector';\nimport { BlockTable } from '../../shared/BlockTable';\nimport { useBlockGroupInfo } from '../../useGroupState';\nimport { PositionActions } from '../PositionActions';\nimport { avgPositionStrat, PositionLeg } from '../PositionLeg';\nimport { PositionDropdown } from './PositionDropdown';\nimport { SubAccountFilter } from '../../shared/SubAccountFilter';\nimport { useSelector } from 'react-redux';\nimport { account } from '../../../data/global/selectors/accountSelectors';\nimport { Config } from '../../../config';\nimport { AccountApiFactory } from '@tradingblock/api';\nimport { SymbolPosition, SymbolPositions } from '../../../types';\nimport { PositionPerformanceWithPnL, QuoteSymbolQuotes } from '../../../data/global/state';\nimport { aggregatedSymbolPosition, QuoteDataToPartialQuote } from '../../../data/global/selectors/transforms';\nimport { positionToInfo } from '../../../utilities/position';\nimport { SymbolPnLReducer } from '../../../data/global/sliceReducers/performance/performanceBySymbolReducer';\nimport { sumNumbers } from '../../../utilities/data';\nimport { usePositionSettingsValue } from '../usePositionSettings';\nimport useAggregatedPositions from '../hooks/useAggregatedPositions';\nimport { calculatePositionCostValue } from '../util';\n\nexport const PositionTable: React.FC<{\n setTotalGain: (totalGain: number | undefined) => void;\n setDailyPnl: (dailyPnl: number | undefined) => void;\n}> = ({ setDailyPnl, setTotalGain }) => {\n const { groupId } = useBlockGroupInfo();\n const data = useStateSelector(getAllPositionInfo);\n const [tableSize, setTableSize] = useState();\n const wideTable = useMemo(() => tableSize === SizeType.lg, [tableSize]);\n const maxVisibleActions = useMemo(() => (wideTable ? 3 : 0), [wideTable]);\n\n // variables for building api client\n const accountId = useSelector(account.accountId);\n const apiRootUrl = Config.tradingApi;\n const token = useStateSelector(state => state.auth.apiToken) || undefined;\n\n // redux states\n const quotes = useStateSelector(state => state.quotes.quoteMetadata.data);\n const performance = useStateSelector(state => state.performance.positions);\n const hasSubAccounts = useStateSelector(\n s => s.account.subaccounts.subaccounts && s.account.subaccounts.subaccounts.length > 0\n );\n const subId = useStateSelector(state => state.account.subAccountId);\n const orders = useStateSelector(state => state.account.orders);\n const quoteState = useStateSelector(state => state.quotes);\n const subAccountFilterId = useStateSelector(s => s.ui.dashboard.subAccountFilterId);\n\n // useStates for handling sub account filter\n const [selectedSubAccountId, setSelectedSubAccountId] = useState(undefined);\n const [selectedSubAccountPositions, setSelectedSubAccountPositions] = useState([]);\n const [selectedSubAccountData, setSelectedSubAccountData] = useState([]);\n const [positionsRequested, setPositionsRequested] = useState(false);\n\n // if a sub account is selected, use the sub account positions and data\n const tableData = !selectedSubAccountId ? data : selectedSubAccountData;\n const accountApi = useMemo(() => {\n if (accountId && token && !selectedSubAccountId) {\n return AccountApiFactory(apiRootUrl, token, accountId);\n }\n if (accountId && apiRootUrl && token && selectedSubAccountId) {\n return AccountApiFactory(apiRootUrl, token, accountId, selectedSubAccountId);\n }\n }, [selectedSubAccountId]);\n\n const positionSettingsValueObject = usePositionSettingsValue();\n const columnSettingsChange = useMemo(\n () => positionSettingsValueObject && Object.entries(positionSettingsValueObject).flat(1),\n [positionSettingsValueObject]\n );\n const initialState = useMemo(() => {\n return {\n pageIndex: 0,\n sortBy: ['expander'],\n hiddenColumns: [\n !positionSettingsValueObject.Description && 'description',\n !positionSettingsValueObject.Last && 'last',\n !positionSettingsValueObject.Change && 'change',\n !positionSettingsValueObject.Percent && '%',\n !positionSettingsValueObject.PNL && 'Daily P/L',\n !positionSettingsValueObject.Gain && 'Gain',\n !positionSettingsValueObject.Value && 'Value',\n !positionSettingsValueObject.Cost && 'Cost',\n !positionSettingsValueObject.Options && 'options',\n !positionSettingsValueObject.Shares && 'shares',\n !positionSettingsValueObject.AvgPrice && 'avg_price',\n !positionSettingsValueObject.Close && 'Settlement',\n !positionSettingsValueObject.PrevClose && 'close',\n !positionSettingsValueObject.Ask && 'ask',\n !positionSettingsValueObject.Bid && 'bid',\n ],\n } as any;\n }, [columnSettingsChange]);\n\n useEffect(() => {\n if (!subAccountFilterId) {\n setSelectedSubAccountId(undefined);\n setTotalGain(undefined);\n setDailyPnl(undefined);\n setSelectedSubAccountPositions([]);\n setPositionsRequested(false);\n }\n }, [subAccountFilterId]);\n\n // functions to transform sub account position data into table data\n const setSubAccountId = async (subAccountId: number) => {\n if (subAccountId) {\n if (subAccountId === -1) {\n setSelectedSubAccountId(undefined);\n setTotalGain(undefined);\n setDailyPnl(undefined);\n } else {\n setSelectedSubAccountId(subAccountId);\n }\n setSelectedSubAccountPositions([]);\n setPositionsRequested(false);\n }\n };\n\n const setSubAccountData = async (data: PositionPerformanceInfo[]) => {\n if (data) {\n setSelectedSubAccountData(data);\n }\n };\n\n const getSubAccountPositions = async () => {\n if (accountApi && selectedSubAccountId && selectedSubAccountPositions.length === 0 && !positionsRequested) {\n const positions = await accountApi.positions();\n setSelectedSubAccountPositions(positions.payload);\n setPositionsRequested(true);\n return positions.payload;\n }\n };\n\n const getSubAccountPositionsFromSymbol = async (positions: PositionDTO[]) => {\n const subPositions = _.reduce(\n positions,\n (acc: SymbolPositions, pos: PositionDTO): SymbolPositions => {\n // To make sure that options and common stock fall under the same category, group it buy the underlying symbol,\n // otherwise, if grouped by symbol, the symbols wont match (options have an id in the symbol name while common stock don't)\n const underlyingSymbol = pos.UnderlyingSymbol;\n const DEFAULTVALUE = { shares: 0, value: 0, positions: [], symbol: underlyingSymbol, options: 0 };\n let symbolValue = acc[underlyingSymbol] || DEFAULTVALUE;\n // If the accumulated object doesn't have a symbol, assign it default values.\n // if (!acc.hasOwnProperty(sym)) Object.assign({ [sym]: [pos], symbol: sym }, acc);\n // If the AssetType is common stock\n const isEquity = pos.AssetType === AssetType.Equity;\n // Aggregate the shares and values of the stock\n return {\n ...acc,\n [underlyingSymbol]: {\n ...symbolValue,\n shares: isEquity ? symbolValue.shares + pos.OpenQuantity : symbolValue.shares,\n options: isEquity ? symbolValue.options : symbolValue.options + pos.OpenQuantity,\n // value: symbolValue.value + pos.OpenPrice,\n positions: [...symbolValue.positions, pos],\n },\n };\n },\n {}\n );\n return subPositions;\n };\n\n const getSubAccountPositionQuotes = async (quotes: QuoteSymbolQuotes, positions: PositionDTO[]) => {\n const uniquePositions = _(positions)\n .map(p => [p.Symbol, p.UnderlyingSymbol])\n .flatMap()\n .uniq()\n .value();\n const quotesData = _.filter(quotes, (v, k: string) => uniquePositions.includes(k));\n const partialQuote = QuoteDataToPartialQuote(quotesData);\n return partialQuote;\n };\n\n const getSubAccountPositionsAndQuotes = async () => {\n if (accountApi && selectedSubAccountId) {\n const positionResponse =\n selectedSubAccountPositions && selectedSubAccountPositions.length > 0\n ? selectedSubAccountPositions\n : await getSubAccountPositions();\n\n if (positionResponse) {\n const subPositions = await getSubAccountPositionsFromSymbol(positionResponse);\n const subQuotes = await getSubAccountPositionQuotes(quotes, positionResponse);\n const subData = await getSubAccountPositionsWithPerformance(subPositions, subQuotes);\n\n const todaysOrders =\n orders &&\n TodaysFilledOrders(orders).filter(o =>\n selectedSubAccountId !== -1 ? o.SubaccountId === selectedSubAccountId : o\n );\n\n const bySymbol = todaysOrders && SymbolPnLReducer(quoteState, todaysOrders, positionResponse);\n\n const all = bySymbol && (await getAggregatedTotals(bySymbol));\n\n if (all) {\n const { total } = all;\n setDailyPnl(total);\n }\n return subData;\n }\n }\n };\n\n const getAggregatedTotals = async (pnlMap: ProfitLossInfoMap) =>\n _.reduce(\n pnlMap,\n (acc: AggregatedProfitLossInfo, v: BasicSymbolProfitLossInfo): AggregatedProfitLossInfo => {\n const trading = acc.trading + v.trading;\n const position = acc.position + v.position;\n const total = trading + position;\n return {\n pnls: [...acc.pnls, v],\n trading,\n position,\n total,\n };\n },\n { trading: 0, position: 0, total: 0, pnls: [] }\n );\n\n const getSubAccountPositionsWithPerformance = async (subPositions: SymbolPositions, subQuotes: PartialQuote[]) => {\n const positionsWithPerformance = _.reduce(\n subPositions,\n (res, pos: SymbolPosition, key: string): SymbolPositions => {\n const posIds = _.map(pos.positions, p => p.PositionId);\n const aggregatedPnl = _.reduce(\n performance,\n (acc, pp, key) => {\n if (!posIds.includes(_.toString(key))) {\n return acc;\n }\n\n return {\n pnl: acc.pnl + pp.pnl,\n };\n },\n { pnl: 0 }\n );\n const curr: PositionPerformanceWithPnL = {\n ...aggregatedSymbolPosition(pos.positions, subQuotes, key),\n pnl: aggregatedPnl.pnl,\n };\n return {\n ...res,\n [key]: curr,\n };\n },\n {}\n );\n const data = _.map(positionsWithPerformance, (v, k) => {\n return positionToInfo(v);\n });\n await setSubAccountData(data);\n\n const totalGain =\n data &&\n sumNumbers(\n _.map(data, d => {\n if (d.symbol.assetType === AssetType.MoneyMarket) {\n return 0;\n }\n return d.totalGain;\n })\n );\n setTotalGain(totalGain);\n return data;\n };\n\n const [tableStateColumnOrder, setTableStateColumnOrder] = useState([]);\n const getColumnOrder = useCallback(\n (columnOrder: string[]) => {\n setTableStateColumnOrder(columnOrder);\n },\n [setTableStateColumnOrder, positionSettingsValueObject]\n );\n\n const columns: any[] = useMemo(\n () => [\n {\n Header: 'Symbol',\n accessor: (a: PositionPerformanceInfo) => a.underlyingSymbol,\n id: 'expander',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: CellWithExpandedToggleProps) => {\n return (\n \n {row.original.underlyingSymbol}\n \n );\n },\n },\n {\n Header: 'Description',\n accessor: (a: PositionPerformanceInfo) => a.description,\n id: 'description',\n width: 2,\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n return <>{row.original.description};\n },\n },\n {\n Header: 'Last',\n accessor: (a: PositionPerformanceInfo) => a.lastTradePrice,\n id: 'last',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => (\n \n ),\n },\n {\n Header: 'Change',\n accessor: (a: PositionPerformanceInfo) => a.change,\n id: 'change',\n Cell: ({ row }: Cell) => {\n if (isNaN(row.original.change)) return ;\n return ;\n },\n },\n {\n Header: '(%)',\n accessor: (a: PositionPerformanceInfo) => a.changePerc,\n id: '%',\n width: 0.7,\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n if (isNaN(row.original.changePerc)) return ;\n return ;\n },\n },\n {\n Header: 'Bid',\n accessor: (a: PositionPerformanceInfo) => a.bid,\n id: 'bid',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n if (\n row.original.symbol.assetType === AssetType.MoneyMarket ||\n row.original.symbol.assetType === AssetType.MutualFund\n ) {\n return <>;\n }\n return ;\n },\n },\n {\n Header: 'Ask',\n accessor: (a: PositionPerformanceInfo) => a.ask,\n id: 'ask',\n width: 0.7,\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n if (\n row.original.symbol.assetType === AssetType.MoneyMarket ||\n row.original.symbol.assetType === AssetType.MutualFund\n ) {\n return <>;\n }\n return ;\n },\n },\n {\n Header: 'Prev. Close',\n accessor: (a: PositionPerformanceInfo) => a.close,\n id: 'close',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n if (row.original.IsSettlementSet) {\n return ;\n } else return ;\n },\n },\n {\n Header: 'Close',\n accessor: (a: PositionPerformanceInfo) => a.IsSettlementSet,\n id: 'Settlement',\n canSort: true,\n Cell: ({ row }: Cell) => {\n const isSettled = row.original.IsSettlementSet;\n return isSettled ? (\n \n ) : (\n \n );\n },\n },\n {\n Header: 'Avg Price',\n accessor: (a: PositionPerformanceInfo) => a.bid,\n id: 'avg_price',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n const symbolPositions: SymbolPositions = useStateSelector(getPositionsFromSymbol);\n const positions: AggregatedPositionDTO[] = useAggregatedPositions(\n row.original.underlyingSymbol,\n symbolPositions,\n true,\n false,\n selectedSubAccountId\n );\n\n if (positions.length > 1) {\n return <>;\n }\n\n return ;\n },\n },\n\n {\n Header: () => {\n return
    Shares
    ;\n },\n accessor: (a: PositionPerformanceInfo) => a.quantity,\n id: 'shares',\n width: 0.4,\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n if (\n row.original.symbol.assetType === AssetType.MoneyMarket ||\n row.original.symbol.assetType === AssetType.MutualFund\n ) {\n return (\n
    \n {!_.isUndefined(row.original.sharesSum) && }\n
    \n );\n }\n\n return (\n
    \n {!_.isUndefined(row.original.sharesSum) && }\n
    \n );\n },\n },\n {\n Header: wideTable ? 'Options' : 'Opts',\n accessor: (a: PositionPerformanceInfo) => a.optionsCount,\n id: 'options',\n width: 0.5,\n canSort: true,\n sortType: 'alphanumeric',\n className: 'text-center',\n Cell: ({ row }: Cell) => (\n
    {row.original.optionsCount > 0 && }
    \n ),\n },\n {\n Header: 'Cost',\n accessor: (a: PositionPerformanceInfo) => a.cost,\n id: 'Cost',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n // TBFE-1515: This is temporary until the backend is setup to return the new position cost value\n // based on the calculation -> average price * number of contracts * multiplier.\n // This logic can be removed and we can revert to the backend position cost value\n // once the backend is updated.\n let positionCostValue = 0;\n\n const symbolPositions: SymbolPositions = useStateSelector(getPositionsFromSymbol);\n const positions: AggregatedPositionDTO[] = useAggregatedPositions(\n row.original.underlyingSymbol,\n symbolPositions,\n true,\n false,\n selectedSubAccountId\n );\n\n if (positions.length === 1) {\n positionCostValue = calculatePositionCostValue(\n avgPositionStrat(positions),\n positions[0].OpenQuantity,\n positions[0].AssetType,\n positions[0].OptionMultiplier\n );\n } else {\n positionCostValue = row.original.commission ? row.original.cost - row.original.commission : row.original.cost\n }\n\n return (\n \n );\n },\n },\n {\n Header: 'Value',\n accessor: (a: PositionPerformanceInfo) => a.value,\n id: 'Value',\n width: 1.1,\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => ,\n },\n {\n Header: 'Gain',\n accessor: (a: PositionPerformanceInfo) => a.totalGain,\n id: 'Gain',\n width: 1.1,\n Cell: ({ row }: Cell) => {\n const symbolPositions: SymbolPositions = useStateSelector(getPositionsFromSymbol);\n const positions: AggregatedPositionDTO[] = useAggregatedPositions(\n row.original.underlyingSymbol,\n symbolPositions,\n true,\n false,\n selectedSubAccountId\n );\n\n if (row.original.symbol.assetType === AssetType.MoneyMarket) {\n return ;\n }\n\n // TBFE-1515: This is temporary until the backend is setup to return the new position cost value\n // based on the calculation -> average price * number of contracts * multiplier.\n // This logic can be removed and we can revert to the backend gain value\n // once the backend is updated.\n let gain = 0;\n\n if (positions.length === 1) {\n gain = row.original.value - calculatePositionCostValue(\n avgPositionStrat(positions),\n positions[0].OpenQuantity,\n positions[0].AssetType,\n positions[0].OptionMultiplier\n );\n } else {\n gain = row.original.commission\n ? row.original.totalGain + row.original.commission\n : row.original.totalGain;\n }\n\n return ;\n },\n },\n {\n Header: 'Daily P/L',\n accessor: (a: PositionPerformanceInfo) => a.pnl,\n id: 'Daily P/L',\n Cell: ({ row }: Cell) => {\n if (row.original.symbol.assetType === AssetType.MoneyMarket) {\n return ;\n }\n const pnl = row.original.pnl;\n return _.isNaN(pnl) ? <> : ;\n },\n },\n {\n Header: 'Actions',\n accessor: 'action',\n width: wideTable ? 1.2 : 0.6,\n id: 'Actions',\n Cell: ({ row }: Cell) => {\n const { symbol, sharesSum } = row.original;\n const noShareLegs = sharesSum === undefined || sharesSum === 0;\n const rawQuantity = sharesSum || 1;\n const isShort = rawQuantity < 0;\n const orderAndLegAction = isShort || noShareLegs ? OrderAction.Buy : OrderAction.Sell;\n const assetSymbol = row.original.symbol;\n const underlyingSymbol = assetSymbol.underlyingSymbol || assetSymbol.symbol;\n const baseAssetSymbol = toAssetSymbol(\n underlyingSymbol,\n assetSymbol.assetType,\n AssetTypeToSymbolType(assetSymbol.assetType),\n { name: underlyingSymbol, underlyingSymbol, rootSymbol: underlyingSymbol }\n );\n const isOCC = isOCCSymbol(assetSymbol.symbol);\n const priceChartBuilder = useCallback((builder: PriceChartBuilderType) => {\n return builder;\n }, []);\n\n const handleCloseClick = useOrderBlockWithOrder(\n (builder: OrderBuilderType) => {\n let quantity = Math.abs(rawQuantity);\n \n if (quantity < 1) {\n quantity = Math.ceil(quantity);\n } else {\n quantity = Math.floor(quantity);\n }\n\n return builder\n .symbol(symbol)\n .strategy(Shares)\n .quantity(quantity)\n .action(orderAndLegAction)\n .leg(l => l.assetType(AssetType.Equity).action(orderAndLegAction));\n },\n { blockType: BlockType.Order, groupId }\n );\n\n const handleTradeClick = useOrderBlockWithOrder(\n (builder: OrderBuilderType) => {\n return builder\n .symbol(symbol)\n .strategy(CustomStrategy)\n .quantity(1)\n .action(OrderAction.Buy);\n },\n { blockType: BlockType.Order, groupId }\n );\n\n const handleChartClick = useChartSymbolAction(baseAssetSymbol, priceChartBuilder, { groupId });\n\n const positionActions = useMemo(() => {\n if (isOCC) {\n const actions = [{ title: 'Trade', onClick: () => handleTradeClick(), icon: 'fa-clone' }];\n return actions;\n } else {\n const actions = [\n { title: 'Close position', onClick: () => handleCloseClick(), icon: '' },\n { title: 'Trade', onClick: () => handleTradeClick(), icon: 'fa-clone' },\n { title: 'Chart', onClick: () => handleChartClick(), icon: 'fa-chart-line' },\n ];\n return actions;\n }\n }, [handleCloseClick, handleTradeClick, handleChartClick]);\n\n if (\n row.original.symbol.assetType === AssetType.MoneyMarket ||\n row.original.symbol.assetType === AssetType.MutualFund\n ) {\n return (\n
    \n \n Legacy Support Only\n \n
    \n );\n }\n\n return (\n \n );\n },\n },\n ],\n [groupId, wideTable, maxVisibleActions, tableStateColumnOrder, positionSettingsValueObject]\n );\n\n const renderSubRow = useCallback(\n (row: Row, tableOptions: { size: SizeType }) => {\n return (\n <>\n \n \n );\n },\n [maxVisibleActions, selectedSubAccountId, tableStateColumnOrder, positionSettingsValueObject]\n );\n\n const getRowKey = useCallback((data: PositionPerformanceInfo) => `${data.symbol}`, []);\n\n useEffect(() => {\n if (accountApi && selectedSubAccountId && !subId) {\n getSubAccountPositionsAndQuotes();\n }\n }, [accountApi, selectedSubAccountId, quotes, subId]);\n\n const columnWidths = useTableColumnWidths(columns);\n // prettier-ignore\n return (\n <>\n {hasSubAccounts && !subId && (\n \n )}\n {tableData && tableData.length > 0 && (\n \n )}\n {!tableData || tableData.length === 0 && (\n \n You have no positions.\n \n )}\n \n );\n};\n","import React, { FC } from 'react';\nimport _ from 'lodash';\nimport { BlockBody, EmptyBlockContent, Loading } from '@tradingblock/components';\nimport { PositionSync } from '../shared/PositionSync';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { initialPositionsAreLoading } from '../../data/global/selectors/positionSelector';\n\nimport { PositionTable } from './components/PositionTable';\nexport const PositionBlockContent: FC<{\n setTotalGain: (totalGain: number | undefined) => void;\n setDailyPnl: (dailyPnl: number | undefined) => void;\n}> = ({ setTotalGain, setDailyPnl }) => {\n const { loading, positions } = useStateSelector(initialPositionsAreLoading);\n const blockisEmptyOrLoading = positions.existing !== true;\n return (\n \n \n <>\n {blockisEmptyOrLoading === false ? (\n \n ) : (\n {loading ? : 'You have no positions.'}\n )}\n \n \n );\n};\n","import React, { useCallback, useState } from 'react';\r\nimport useMount from 'react-use/lib/useMount';\r\nimport _ from 'lodash';\r\nimport { BlockType } from '@tradingblock/types';\r\nimport { useDispatcher } from '../../data/global/hooks';\r\nimport { Block } from '../../components/blocks/Block';\r\nimport { GetPositionAndOrderSymbols } from '../../data/global/dataSelectors';\r\nimport { useQuoteSymbolSubscriptionFromGlobalState } from '../../hooks/useQuoteData';\r\nimport { getBlockProps } from '../../utilities/block';\r\nimport { useGlobalStateQuoteListener } from '../../components/blocks/useBlockSubscriptions';\r\nimport { DataState } from '../../data/global/state';\r\nimport { initialPositionsAreLoading } from '../../data/global/selectors/positionSelector';\r\n\r\nimport { usePositionSettings } from './usePositionSettings';\r\nimport { PositionHeader } from './PositionHeader';\r\nimport { PositionBlockContent } from './PositionBlockContent';\r\n\r\nexport const PositionBlock: React.FunctionComponent<{}> = () => {\r\n const { dispatcher } = useDispatcher();\r\n useMount(() => dispatcher.data.positions.request());\r\n useQuoteSymbolSubscriptionFromGlobalState(GetPositionAndOrderSymbols);\r\n useGlobalStateQuoteListener(GetPositionAndOrderSymbols);\r\n const isFetchingSelector = useCallback((state: DataState) => {\r\n const { loading } = initialPositionsAreLoading(state);\r\n return loading;\r\n }, []);\r\n const { current, definitions } = usePositionSettings();\r\n const { expandRows } = current;\r\n\r\n // Selected SubAccount States\r\n const [totalGain, setTotalGain] = useState(undefined);\r\n const [dailyPnl, setDailyPnl] = useState(undefined);\r\n\r\n const setSelectedSubAccountTotalGain = async (totalGain: number | undefined) => {\r\n setTotalGain(totalGain);\r\n };\r\n\r\n const setSelectedSubAccountDailyPnl = async (dailyPnl: number | undefined) => {\r\n setDailyPnl(dailyPnl);\r\n };\r\n\r\n return (\r\n }\r\n isFetchingSelector={isFetchingSelector}\r\n settings={current}\r\n settingFields={definitions}\r\n >\r\n \r\n \r\n );\r\n};\r\n","import React from 'react';\n\nexport const Column: React.FunctionComponent<{ title?: string; titleClass?: string }> = ({ title, titleClass, children }) => (\n
    \n
    \n
    {title}
    \n {children}\n
    \n
    \n);\n\nexport interface StackedColumnProps {\n title?: string;\n valueAs?: As;\n className?: string;\n}\n\nexport const StackedColumn: React.FunctionComponent = ({ title, valueAs, className, children }) => {\n const ValueElement = valueAs || 'div';\n return (\n \n {children}\n \n );\n};\n","import React from 'react';\nimport { Number, LoadingImage, SignedNumber, Loading } from '@tradingblock/components';\nimport { Column } from '../basic/Column';\nimport _ from 'lodash';\nexport const BlockColumn: React.FunctionComponent<{\n title: string;\n value: number;\n signed?: boolean;\n isLoading?: boolean;\n hideIcon?: boolean;\n hidePrefix?: boolean;\n}> = ({ title, value, signed, isLoading, hideIcon, hidePrefix }) => {\n const isValid = !_.isNil(value) && !_.isNaN(value) && _.isNumber(value) ? true : false;\n\n return (\n \n
    \n {isLoading !== true && isValid ? (\n <>\n {signed ? (\n \n ) : (\n \n )}\n \n ) : (\n \n \n \n )}\n
    \n
    \n );\n};\n","import { Balances, Transfer, BalanceTotals } from '@tradingblock/types';\nimport { getChangePercent } from '../../../utilities/data';\n\nexport const getBalanceTotals = (balances: Balances, pendingTransfers?: Transfer[]): BalanceTotals => {\n const { Balances, Securities, BuyingPower, MarginRequirements } = balances;\n\n // total balance value (used in sums below but not returned)\n const balanceValue = getBalanceValue(Balances);\n\n const positionValue = getPositionValue(Securities);\n\n const accountValue = balanceValue + positionValue;\n\n const todaysChange = getTodaysChangeValue(Balances, Securities);\n\n // api doesn't return YTD change yet...\n const ytdChange = 0;\n\n const todaysChangePercent = getChangePercent(accountValue, todaysChange);\n const ytdChangePercent = getChangePercent(accountValue, ytdChange);\n\n const cashAndCashAlts = getCashAndCashAlts(balances);\n\n const pendingTransactions = getPendingTransactions(BuyingPower);\n\n const availableForTrading = getAvailableForTrading(BuyingPower);\n\n const availableForWithdrawal = getAvailableForWithdrawal(balances);\n\n const nonmarginableFunds = getNonmarginableFunds(Balances, MarginRequirements);\n\n const cashBalance = Balances.CashBalance;\n\n const marginBalance = Balances.MarginBalance;\n\n // unclearedDeposits/unsettledCash values not being used, might not be calculated correctly...\n\n // const unclearedDeposits = getUnclearedDeposits(Balances);\n\n // const unsettledCash = getUnsettledCash(BuyingPower, unclearedDeposits);\n\n return {\n accountValue,\n positionValue,\n cashAndCashAlts,\n todaysChange,\n ytdChange,\n todaysChangePercent,\n ytdChangePercent,\n pendingTransactions,\n availableForTrading,\n availableForWithdrawal,\n nonmarginableFunds,\n cashBalance,\n marginBalance,\n // unclearedDeposits,\n // unsettledCash,\n };\n};\n\nconst getBalanceValue = (balances: Balances['Balances']): number => {\n if (balances) {\n return balances.MarginBalance + balances.ShortBalance + balances.CashBalance;\n }\n return 0;\n};\n\nconst getPositionValue = (securities: Balances['Securities']): number => {\n if (securities) {\n return (\n securities.LongStockValue +\n securities.ShortStockValue +\n securities.LongOptionValue +\n securities.ShortOptionValue +\n securities.MutualFundsValue +\n securities.BondsAndCDValue\n );\n }\n return 0;\n};\n\nconst getTodaysChangeValue = (balances: Balances['Balances'], securities: Balances['Securities']): number => {\n let value = 0;\n if (balances) {\n value += balances.CashBalanceTodaysChange + balances.MarginBalanceTodaysChange + balances.ShortBalanceTodaysChange;\n }\n if (securities) {\n value +=\n securities.LongStockValueTodaysChange +\n securities.ShortStockValueTodaysChange +\n securities.LongOptionValueTodaysChange +\n securities.ShortOptionValueTodaysChange +\n securities.MutualFundsValueTodaysChange +\n securities.BondsAndCDValueTodaysChange +\n securities.MoneyMarketFundValueTodaysChange;\n }\n return value;\n};\n\nexport const getCashAndCashAlts = (balances: Balances): number => {\n const balVal = getBalanceValue(balances.Balances);\n if (balances.Securities) {\n return balVal + balances.Securities.MoneyMarketFundValue;\n }\n return balVal;\n};\n\nconst getPendingTransactions = (buyingPower: Balances['BuyingPower']): number => {\n if (buyingPower) {\n return buyingPower.PendingTransactions;\n }\n return 0;\n};\n\nconst getAvailableForTrading = (buyingPower: Balances['BuyingPower']): number => {\n if (buyingPower) {\n return buyingPower.AvailableFunds;\n }\n return 0;\n};\n\nconst getAvailableForWithdrawal = (balances: Balances): number => {\n if (balances.Balances) {\n return balances.Balances.WithdrawalAmount;\n }\n return 0;\n};\n\nconst getNonmarginableFunds = (\n balances: Balances['Balances'],\n marginRequirements: Balances['MarginRequirements']\n): number => {\n if (balances && marginRequirements) {\n return balances.MarginBalance * (1 - marginRequirements.MarginableEquityPercent);\n }\n return 0;\n};\n\nconst getUnclearedDeposits = (balances: Balances['Balances']): number => {\n if (balances) {\n return balances.WithdrawalAmount;\n }\n return 0;\n};\n\nconst getUnsettledCash = (buyingPower: Balances['BuyingPower'], unclearedDeposits: number): number => {\n if (buyingPower) {\n return buyingPower.AvailableFunds - unclearedDeposits;\n }\n return 0;\n};\n","import { BlockColumn } from '../../components/blocks/BlockColumn';\nimport React, { FC, useEffect, useMemo, useState } from 'react';\nimport {\n AggregatedProfitLossInfo,\n Balances,\n BalanceTotals,\n BasicSymbolProfitLossInfo,\n ProfitLossInfoMap,\n} from '@tradingblock/types';\nimport _ from 'lodash';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { SubAccountFilter } from '../shared/SubAccountFilter';\nimport { useSelector } from 'react-redux';\nimport Config from '../../config';\nimport { account } from '../../data/global/selectors/accountSelectors';\nimport {\n AccountApiFactory,\n GetSymbolsFromOrders,\n PartialQuote,\n PositionDTO,\n TodaysFilledOrders,\n} from '@tradingblock/api';\nimport { QuoteSymbolQuotes } from '../../data/global/state';\nimport { aggregatedSymbolPosition, QuoteDataToPartialQuote } from '../../data/global/selectors/transforms';\nimport { getCashAndCashAlts } from '../../data/global/utilities/balances';\nimport { PerformanceSelectors } from '../../data/global/selectors/performanceSelectors';\nimport { pnlSelectors } from '../../data/global/selectors/PnLSelectors';\nimport { SymbolPnLReducer } from '../../data/global/sliceReducers/performance/performanceBySymbolReducer';\n\nexport const AccountBalanceView: FC<{ totals: BalanceTotals }> = ({ totals }) => {\n // variables for building api client\n const accountId = useSelector(account.accountId);\n const apiRootUrl = Config.tradingApi;\n const token = useStateSelector(state => state.auth.apiToken) || undefined;\n\n // redux states\n const subId = useStateSelector(state => state.account.subAccountId);\n const quotes = useStateSelector(state => state.quotes.quoteMetadata.data);\n const positionValue = useStateSelector(s => s.performance.totals.positionValue);\n const { total } = useStateSelector(PerformanceSelectors.totals.all);\n const loaded = useStateSelector(pnlSelectors.pnlDataLoaded);\n const pnl = useStateSelector(PerformanceSelectors.todayTradingPnl);\n const quoteState = useStateSelector(state => state.quotes);\n const orders = useStateSelector(state => state.account.orders);\n const hasSubAccounts = useStateSelector(\n s => s.account.subaccounts.subaccounts && s.account.subaccounts.subaccounts.length > 0\n );\n const accountValue = useStateSelector(s => s.performance.totals.accountValue);\n const subAccountFilterId = useStateSelector(s => s.ui.dashboard.subAccountFilterId);\n\n // useStates for handling sub account filter\n const [selectedSubAccountId, setSelectedSubAccountId] = useState(undefined);\n const [selectedSubAccountBalances, setSelectedSubAccountBalances] = useState(undefined);\n const [selectedSubAccountPositions, setSelectedSubAccountPositions] = useState([]);\n const [selectedSubAccountCashValue, setSelectedSubAccountCashValue] = useState(undefined);\n const [selectedSubAccountPositionValue, setSelectedSubAccountPositionValue] = useState(undefined);\n const [selectedSubAccountTotalValue, setSelectedSubAccountTotalValue] = useState(undefined);\n const [positionsRequested, setPositionsRequested] = useState(false);\n const [selectedSubAccountDailyPNL, setSelectedSubAccountDailyPNL] = useState(undefined);\n const [selectedSubAccountTradingPNL, setSelectedSubAccountTradingPNL] = useState(undefined);\n\n useEffect(() => {\n if (!subAccountFilterId) {\n setSelectedSubAccountId(undefined);\n setSelectedSubAccountBalances(undefined);\n setSelectedSubAccountPositions([]);\n setSelectedSubAccountPositionValue(undefined);\n setSelectedSubAccountCashValue(undefined);\n setSelectedSubAccountTotalValue(undefined);\n setSelectedSubAccountDailyPNL(undefined);\n setSelectedSubAccountTradingPNL(undefined);\n }\n }, [subAccountFilterId]);\n\n const setSubAccountId = async (subAccountId?: number) => {\n if (subAccountId) {\n if (subAccountId === -1) {\n setSelectedSubAccountId(undefined);\n } else {\n setSelectedSubAccountId(subAccountId);\n }\n setSelectedSubAccountPositions([]);\n setSelectedSubAccountCashValue(undefined);\n setSelectedSubAccountPositionValue(undefined);\n setSelectedSubAccountTotalValue(undefined);\n setSelectedSubAccountDailyPNL(undefined);\n setSelectedSubAccountTradingPNL(undefined);\n setSelectedSubAccountBalances(undefined);\n setPositionsRequested(false);\n }\n };\n\n const accountApi = useMemo(() => {\n if (accountId && token && !selectedSubAccountId) {\n return AccountApiFactory(apiRootUrl, token, accountId);\n }\n if (accountId && token && selectedSubAccountId === -1) {\n return AccountApiFactory(apiRootUrl, token, accountId);\n }\n if (accountId && apiRootUrl && token && selectedSubAccountId) {\n return AccountApiFactory(apiRootUrl, token, accountId, selectedSubAccountId);\n }\n }, [selectedSubAccountId, accountId, apiRootUrl, token]);\n\n const getSubAccountPositions = async () => {\n if (accountApi && selectedSubAccountId && selectedSubAccountPositions.length === 0 && !positionsRequested) {\n const positions = await accountApi.positions();\n setSelectedSubAccountPositions(positions.payload);\n setPositionsRequested(true);\n return positions.payload;\n }\n };\n\n const getSubAccountBalances = async () => {\n if (accountApi && selectedSubAccountId && !selectedSubAccountBalances) {\n const balances = await accountApi.balances();\n setSelectedSubAccountBalances(balances.payload);\n return balances.payload;\n }\n };\n\n const getSubAccountPositionQuotes = async (quotes: QuoteSymbolQuotes, positions: PositionDTO[]) => {\n const uniquePositions = _(positions)\n .map(p => [p.Symbol, p.UnderlyingSymbol])\n .flatMap()\n .uniq()\n .value();\n const quotesData = _.filter(quotes, (v, k: string) => uniquePositions.includes(k));\n const partialQuote = QuoteDataToPartialQuote(quotesData);\n return partialQuote;\n };\n\n const getSubAccountPositionValue = async (positions: PositionDTO[], subQuotes: PartialQuote[]) => {\n const positionValue = _(positions)\n .map(p => aggregatedSymbolPosition([p], subQuotes, p.UnderlyingSymbol).value)\n .sum();\n\n return positionValue;\n };\n\n const getSubAccountCashValue = async (balances: Balances) => {\n const cashValue = getCashAndCashAlts(balances);\n return cashValue;\n };\n\n const getAggregatedTotals = async (pnlMap: ProfitLossInfoMap) =>\n _.reduce(\n pnlMap,\n (acc: AggregatedProfitLossInfo, v: BasicSymbolProfitLossInfo): AggregatedProfitLossInfo => {\n const trading = acc.trading + v.trading;\n const position = acc.position + v.position;\n const total = trading + position;\n return {\n pnls: [...acc.pnls, v],\n trading,\n position,\n total,\n };\n },\n { trading: 0, position: 0, total: 0, pnls: [] }\n );\n\n const getSubAccountPositionsAndQuotes = async () => {\n if (accountApi && selectedSubAccountId && subAccountFilterId) {\n const positionResponse =\n selectedSubAccountPositions && selectedSubAccountPositions.length > 0\n ? selectedSubAccountPositions\n : await getSubAccountPositions();\n\n const balancesResponse = selectedSubAccountBalances || (await getSubAccountBalances());\n\n if (positionResponse && balancesResponse) {\n const subQuotes = await getSubAccountPositionQuotes(quotes, positionResponse);\n\n const positionValue = await getSubAccountPositionValue(positionResponse, subQuotes);\n\n const cashValue = await getSubAccountCashValue(balancesResponse);\n\n const totalValue = positionValue + cashValue;\n setSelectedSubAccountPositionValue(positionValue);\n setSelectedSubAccountCashValue(cashValue);\n setSelectedSubAccountTotalValue(totalValue);\n\n const todaysOrders =\n orders &&\n TodaysFilledOrders(orders).filter(o =>\n selectedSubAccountId !== -1 ? o.SubaccountId === selectedSubAccountId : o\n );\n\n const bySymbol = todaysOrders && SymbolPnLReducer(quoteState, todaysOrders, positionResponse);\n\n const all = bySymbol && (await getAggregatedTotals(bySymbol));\n\n if (all) {\n const { total } = all;\n setSelectedSubAccountDailyPNL(total);\n }\n const tradedSymbolsToday: string[] = GetSymbolsFromOrders(todaysOrders ? todaysOrders : []);\n\n const tradedToday = await getAggregatedTotals(\n _.reduce(\n bySymbol,\n (acc, v, k) => {\n if (tradedSymbolsToday.includes(v.symbol)) {\n return {\n ...acc,\n [k]: v,\n };\n }\n return acc;\n },\n {}\n )\n );\n\n if (tradedToday) {\n setSelectedSubAccountTradingPNL(tradedToday.trading);\n }\n }\n }\n };\n\n useEffect(() => {\n if (accountApi && selectedSubAccountId && !subId) {\n getSubAccountPositionsAndQuotes();\n }\n }, [selectedSubAccountId, accountApi, subId, orders, quoteState]);\n\n return (\n <>\n {!subId && hasSubAccounts && (\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","import React from 'react';\nimport { useSelector } from 'react-redux';\nimport { LoadingImage } from '@tradingblock/components';\nimport { accountBalances } from '../../data/global/dataSelectors';\nimport { AccountBalanceView } from './AccountBalanceView';\n\nexport const AccountContent: React.FunctionComponent<{}> = () => {\n const totals = useSelector(accountBalances.totals);\n const isFetching = useSelector(accountBalances.isFetching);\n\n if (!totals) {\n return isFetching ? : null;\n }\n return <>{totals && };\n};\n","import { useEffect } from 'react';\nimport { useDispatch } from 'react-redux';\nimport { useStateSelector, accountIdSelector } from '../../../data/global/dataSelectors';\nimport { Actions } from '../../../data/global/actions';\nimport { AccountSettings, DashboardSettingsPath, UiSettings } from '@tradingblock/types';\nimport { InitialState } from '../../../data/global/initialState';\nimport { useStore } from '../../../context/Storage';\nimport { DataState } from '../../../data/global/state';\nimport { createSelector } from 'reselect';\nimport { useBlockId } from '../../blocks/BlockState';\nimport { blockSettings } from '../../../data/global/selectors/settingSelectors';\nimport { SettingsFields } from '../../form/GenericField';\n\nconst accountInfoSelector = createSelector(\n accountIdSelector,\n (s: DataState) => s.settings.ui.loaded,\n (accountId, loaded) => ({ accountId, loaded })\n);\n\nexport const AccountSettingsFields: SettingsFields = {\n showRefresh: {\n type: 'boolean',\n label: 'Show refresh button'\n }\n};\n\nexport const useAccountSettings = () => {\n const dispatch = useDispatch();\n const { accountId, loaded } = useStateSelector(accountInfoSelector);\n const storage = useStore();\n useEffect(() => {\n const getSettings = async (id: number) => {\n dispatch(Actions.requestSettings({ accountId: id }));\n const settings = await storage.get(DashboardSettingsPath);\n dispatch(Actions.receiveSettings({ accountId: id, settings: settings || { ...InitialState.settings.ui } }));\n };\n if (accountId && loaded !== true) getSettings(accountId);\n }, [loaded, accountId]);\n\n const blockId = useBlockId();\n //@ts-ignore\n const current = useStateSelector(s => blockSettings.account(s, blockId));\n return {\n current: current || { showRefresh: false },\n definitions: AccountSettingsFields,\n };\n};\n\nexport const useAccountSettingsValue = () => {\n const { current } = useAccountSettings();\n return current;\n};\n","import React, { useContext, useMemo } from 'react'\nimport { BlockAction, BlockActionContext, useBlockMetadata } from '../../components/blocks/BlockState';\nimport { dashboardIdSelector, useStateSelector } from '../../data/global/dataSelectors';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { blockSettings } from '../../data/global/selectors/settingSelectors';\nimport { BlockDragHandle } from '@tradingblock/components';\n\ninterface AccountHeaderProps {\n showRefresh: boolean\n}\nexport const AccountHeader = ({ showRefresh }: AccountHeaderProps) => {\n\n const dispatch = useContext(BlockActionContext);\n const { dispatcher } = useDispatcher();\n const dashboardId = useStateSelector(dashboardIdSelector);\n const { blockId, type } = useBlockMetadata();\n const blockType = type;\n //@ts-ignore\n const settings = useStateSelector(s => blockSettings.account(s, blockId));\n\n useMemo(() => {\n const settingsSaveData = {\n dashboardId: dashboardId || '',\n blockId,\n blockType,\n blockSettings: {\n ...settings,\n showRefresh: showRefresh\n },\n };\n dispatch(BlockAction.setSettings(settingsSaveData.blockSettings));\n dispatcher.settings.block.setBlockSetting(settingsSaveData);\n\n }, [showRefresh])\n\n return (Balances)\n}\n\nexport default AccountHeader\n","import React, { useState } from 'react';\nimport useMount from 'react-use/lib/useMount';\nimport { BlockType, UserRole } from '@tradingblock/types';\nimport { useDispatcher } from '../../data/global/hooks';\nimport {\n useAuthenticationSelector,\n GetPositionAndOrderSymbols,\n useStateSelector,\n} from '../../data/global/dataSelectors';\nimport { BlockBody, Loading } from '@tradingblock/components';\nimport { AccountContent } from './AccountContent';\nimport { Block } from '../../components/blocks/Block';\nimport { getBlockProps } from '../../utilities/block';\nimport { useQuoteSymbolSubscriptionFromGlobalState } from '../../hooks/useQuoteData';\nimport { useGlobalStateQuoteListener } from '../../components/blocks/useBlockSubscriptions';\nimport { account } from '../../data/global/selectors/accountSelectors';\nimport { useAccountSettings } from '../../components/dashboard/hooks/useAccountSettings';\nimport AccountHeader from './AccountHeader';\n\nexport const AccountBlock: React.FunctionComponent<{}> = () => {\n const { dispatcher } = useDispatcher();\n const { isAuthenticated } = useAuthenticationSelector();\n const { current, definitions } = useAccountSettings();\n const accountRoles = useStateSelector(account.userRoles);\n const isIRA = useStateSelector(account.accountIsIRA);\n const isUGMA = useStateSelector(account.accountIsUGMA);\n const isPartnership = useStateSelector(account.accountIsPartnership);\n const [isRefreshingBlock, setIsRefreshingBlock] = useState(false);\n\n const refreshAccount = () => {\n if (accountRoles !== undefined && accountRoles.includes(UserRole.CashieringApproval) && !isIRA && !isUGMA && !isPartnership) {\n dispatcher.balances.requestPendingTransfers();\n }\n dispatcher.balances.request();\n dispatcher.data.positions.request();\n }\n const pendingRefresh = () => {\n setIsRefreshingBlock(true)\n refreshAccount();\n setTimeout(() => {\n setIsRefreshingBlock(false)\n }, 2000)\n }\n\n useMount(() => {\n if (isAuthenticated) {\n if (accountRoles !== undefined) {\n if (accountRoles.includes(UserRole.CashieringApproval) && !isIRA && !isUGMA && !isPartnership) {\n dispatcher.balances.requestPendingTransfers();\n }\n }\n dispatcher.balances.request();\n dispatcher.data.positions.request();\n }\n })\n\n useQuoteSymbolSubscriptionFromGlobalState(GetPositionAndOrderSymbols);\n useGlobalStateQuoteListener(GetPositionAndOrderSymbols);\n return (\n pendingRefresh()} header={} settings={current} settingFields={definitions}>\n \n {isRefreshingBlock ? Refreshing.... :\n }\n \n )\n};","import { AccountDetails, IBlockDataState, IBlockState } from '@tradingblock/types';\nimport { useBlockData } from '../../../components/blocks/BlockState';\nimport _ from 'lodash';\nimport { OutputSelector } from 'reselect';\nimport { useMemo } from 'react';\nexport type AccountManagementTab =\n | 'clientAcc'\n | 'clientFin'\n | 'clientDiscl'\n | 'clientPref'\n | 'clientBeneficiaries'\n | 'security';\nexport const AccountManagementConstants: {\n tabs: Record;\n} = {\n tabs: {\n clientAcc: 'clientAcc',\n clientFin: 'clientFin',\n clientDiscl: 'clientDiscl',\n clientPref: 'clientPref',\n clientBeneficiaries: 'clientBeneficiaries',\n security: 'security',\n },\n};\nexport interface AccountManagementDataState extends IBlockDataState {\n account?: AccountDetails;\n tab?: AccountManagementTab;\n}\nexport type AccountManagementState = IBlockState;\ntype Selector = OutputSelector T>;\ntype Transform = (res: AccountManagementDataState) => T;\nexport function useAccountManagementData(selector: Selector | Transform, defaultVal?: T) {\n const data = useBlockData();\n const res = selector(data);\n return useMemo(() => (!_.isUndefined(defaultVal) && _.isNil(res) ? defaultVal : res), [defaultVal, res]);\n}\nexport function isAccountManagementTab(tabVal: AccountManagementTab | string): tabVal is AccountManagementTab {\n return _.map(AccountManagementConstants.tabs, (v, k) => k).includes(tabVal);\n}\n","import { createStandardAction, ActionType } from 'typesafe-actions';\nimport { AccountManagementTab } from './AccountManagementState';\n\nexport const AccountManagementBlockActions = {\n setTab: createStandardAction('@quote/tab/set')(),\n};\n\nexport type AccountManagementBlockAction = ActionType;\n","import { AddressModel, Country, DataValue, ErrorType, RE_EMAIL } from '@tradingblock/types';\nimport _ from 'lodash';\nimport Config from '../../../config';\nimport xml2js from 'xml2js';\n\nexport interface USPSErrors {\n [key: string]: string | undefined;\n}\n\nexport const getError = (value: DataValue, error: ErrorType) => {\n if (!value && !_.isNumber(value)) {\n return error;\n }\n return undefined;\n};\n\nexport const getRequiredError = (value: DataValue) => {\n return getError(value, ErrorType.Required);\n};\n\nexport const getInvalidError = (value: DataValue) => {\n return getError(value, ErrorType.Invalid);\n};\n\nexport const getAmountError = (value: DataValue) => {\n return getError(value, ErrorType.Amount);\n};\n\nexport const getContingentError = (value: DataValue) => {\n return getError(value, ErrorType.Contingent);\n};\n\nexport const getMismatchError = (value: DataValue) => {\n return getError(value, ErrorType.Mismatch);\n};\n\nexport const getEmailError = (value: string | null | undefined) => {\n return getRequiredError(value) || getInvalidError(value && RE_EMAIL.test(value));\n};\n\nexport const getStaleError = (value: DataValue) => {\n return getError(value, ErrorType.Stale);\n};\n\nexport const getUploadError = (value: DataValue) => {\n return getError(value, ErrorType.Upload);\n};\n\nexport const RE_PO_BOX = /^ *((#\\d+)|((box|bin)[-. \\/\\\\]?\\d+)|(.*p[ \\.]? ?(o|0)[-. \\/\\\\]? *-?((box|bin)|b|(#|num)?\\d+))|(p(ost)? *(o(ff(ice)?)?)? *((box|bin)|b)? *\\d+)|(p *-?\\/?(o)? *-?box)|post office box|((box|bin)|b) *(number|num|#)? *\\d+|(num|number|#) *\\d+)/i;\n\n// Promise parser for parsing xml to json\nconst promisesParser = (string: string) => {\n return new Promise(function(resolve, reject) {\n xml2js.parseString(string, (err, result) => {\n if (err) {\n return reject(err);\n } else {\n return resolve(result);\n }\n });\n });\n};\n\nexport const uspsVerification = async (values: AddressModel) => {\n const baseURL = Config.uspsBaseUrl;\n const uspsId = Config.uspsId;\n\n const requestConfig = {\n Headers: {\n 'Content-Type': 'text/xml',\n 'Access-Control-Allow-Origin': '*',\n 'Access-Control-Allow-Credentials': 'true',\n 'Access-Control-Allow-Methods': 'GET',\n },\n method: 'get',\n };\n\n const { address1, address2, city, state, country, postalCode } = values;\n\n // Build XML Request\n const xml = `
    ${encodeURIComponent(\n address1\n )}${encodeURIComponent(\n address2\n )}${city}${state}${postalCode}
    `;\n\n // Utility function to simplify address for comparison\n // Removes common suffixes, unit indicators, directional abbreviations, and whitespace\n const simplifyAddress = (address: string) => {\n return address\n .toUpperCase()\n .replace(\n /\\b(STREET|ST\\.?|ROAD|RD\\.?|AVENUE|AVE\\.?|BOULEVARD|BLVD\\.?|DRIVE|DR\\.?|LANE|LN\\.?|COURT|CT\\.?|CIRCLE|CIR\\.?|TERRACE|TER\\.?|PLACE|PL\\.?|LOOP|LOOP|HIGHWAY|HWY\\.?|PARKWAY|PKWY\\.?|ALLEY|ALY\\.?|PLAZA|PLZ\\.?|PATH|PATH|WAY|WAY)\\b/gi,\n '' // Remove common street suffixes\n )\n .replace(/\\b(UNIT|APT|APARTMENT|SUITE|STE|#)\\b/gi, '') // Normalize unit indicators\n .replace(/\\b(SOUTH|S\\.?|NORTH|N\\.?|EAST|E\\.?|WEST|W\\.?)\\b/gi, '') // Normalize directional abbreviations\n .replace(/\\s+/g, ' ') // Replace multiple whitespace with a single space\n .trim();\n };\n\n // Function to check if addresses are flipped in USPS validation response based on simplified comparison\n const isFlipped = (address1: string, address2: string) => {\n return _.includes(simplifyAddress(address1), simplifyAddress(address2));\n };\n\n try {\n if (address1 && city && state && country === Country.UnitedStatesOfAmerica) {\n const response = await fetch(`${baseURL}${xml}`, requestConfig);\n const xmlText = await response.text();\n const xmlResult: any = await promisesParser(xmlText);\n const { AddressValidateResponse } = xmlResult;\n const { Address } = AddressValidateResponse;\n\n const { City, State, Zip5, Zip4, Address1, Address2, Error } = Address[0];\n if (Error) {\n // Handle API error response\n const { Number, Source, Description } = Error[0];\n return {\n error: {\n number: Number[0],\n source: Source[0],\n description: Description[0],\n },\n };\n } else {\n // Extract address lines from API response\n let address1Value = Address1 ? Address1[0] : null;\n let address2Value = Address2 ? Address2[0] : null;\n\n // Correct the address lines if they have been flipped\n if (!address1Value) {\n address1Value = address2Value;\n address2Value = null;\n } else if (Address1 && isFlipped(address1, address2Value)) {\n // Swap the address lines using array destructuring\n [address1Value, address2Value] = [address2Value, address1Value];\n }\n\n // Return the corrected and standardized address components\n return {\n city: City[0] || '',\n state: State[0] || '',\n zip5: Zip5[0] || '',\n zip4: Zip4[0] || '',\n uspsAddress1: address1Value || '',\n uspsAddress2: address2Value || null,\n };\n }\n }\n } catch (e) {\n console.error(e);\n }\n};\n","import React, { useCallback } from 'react';\nimport _ from 'lodash';\nimport { useDispatch } from 'react-redux';\nimport { Formik, Field } from 'formik';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { FormGroup, TextboxField, Modal, SelectDropdownField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { AddressUpdateValueProps, AllStates, Country, getGroupedCountryOptions } from '@tradingblock/types';\nimport { getInvalidError, getRequiredError, RE_PO_BOX, USPSErrors, uspsVerification } from './Validation';\n\nexport const AddressUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n addressType: string;\n accountHolderIndex: number;\n accountDetails: any;\n}> = ({ show, toggleModal, addressType, accountHolderIndex, accountDetails }) => {\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const dispatch = useDispatch();\n const { physicalAddress: { address1, address2, city, country, postalCode, state } } = accountDetails;\n const { accountHolders } = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const user = accountHolders[accountHolderIndex];\n const initialAddressUpdateValues: AddressUpdateValueProps = {\n address1: user.address.address1 ? user.address.address1 : '',\n address2: user.address.address2 ? user.address.address2 : '',\n city: user.address.city ? user.address.city : '',\n state: user.address.state ? user.address.state : '',\n postalCode: user.address.postalCode ? user.address.postalCode : '',\n country: user.address.country ? user.address.country : '',\n addressType: '', //not used\n };\n\n let header = '';\n\n switch (addressType) {\n case 'physical':\n header = 'Physical Address';\n break;\n case 'mail':\n header = 'Mailing Address';\n break;\n default:\n break;\n }\n\n // TODO: Review localStorage usage\n const onValidate = (values: AddressUpdateValueProps) => {\n const { address1, city, state, country, addressType } = values;\n let uspsResponse;\n let isValidAddress;\n const headerValue = header === 'Physical Address' ? 'physical' : 'mail';\n const isMailing = headerValue === 'mail';\n const stateOrPostalCodeRequired = country === Country.UnitedStatesOfAmerica;\n\n const uspsResponseFromStorage = localStorage.getItem(`addressVerification-${headerValue}-${accountHolderIndex}`);\n\n if (uspsResponseFromStorage && uspsResponseFromStorage !== 'undefined') {\n uspsResponse = JSON.parse(uspsResponseFromStorage);\n const { city, state, zip5, error } = uspsResponse;\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual = _.toLower(startCaseCity) === _.toLower(values.city);\n const isZipEqual = zip5 === values.postalCode;\n const isStateEqual = state === values.state;\n const isAddressCorrect = !error && isCityEqual && isZipEqual && isStateEqual;\n\n isAddressCorrect ? (isValidAddress = true) : (isValidAddress = false);\n }\n\n if (address1 && city && state && country === Country.UnitedStatesOfAmerica && !isValidAddress) {\n const getUSPS = async () => {\n await new Promise(resolve => setTimeout(resolve, 100));\n return await uspsVerification(values);\n };\n\n getUSPS().then(result => {\n localStorage.setItem(`addressVerification-${headerValue}-${accountHolderIndex}`, JSON.stringify(result));\n });\n }\n\n if (uspsResponse) {\n const { city, state, zip5, error } = uspsResponse;\n\n if (error && values.address1 && values.city && values.state && values.postalCode) {\n return {\n [`postalCode`]: `${error.description.trim()} Please review the entered address.`,\n [`city`]: `${error.description.trim()} Please review the entered address.`,\n [`state`]: `${error.description.trim()} Please review the entered address.`,\n [`address1`]: `${error.description.trim()} Please review the entered address.`,\n };\n }\n\n if (!values.address1 || !values.city) {\n localStorage.setItem(`addressVerification-${headerValue}-${accountHolderIndex}`, 'undefined');\n }\n\n if (city && state && zip5) {\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual = _.toLower(startCaseCity) === _.toLower(values.city);\n const isZipEqual = zip5 === values.postalCode;\n const isStateEqual = state === values.state;\n\n // USPS + Required Errors\n\n const errors: USPSErrors = {\n ['country']: getRequiredError(values.country),\n ['address1']:\n getRequiredError(values.address1) && !isMailing\n ? getInvalidError(!RE_PO_BOX.test(values.address1))\n : undefined,\n ['address2']: values.address2 && !isMailing ? getInvalidError(!RE_PO_BOX.test(values.address2)) : undefined,\n ['postalCode']:\n getRequiredError(stateOrPostalCodeRequired ? values.postalCode : true) || !isZipEqual\n ? `Please verify the zip code. USPS Provided Zip Code: ${zip5}`\n : undefined,\n ['city']:\n getRequiredError(values.city) || !isCityEqual\n ? `Please verify the city. USPS Provided City: ${startCaseCity}`\n : undefined,\n ['state']:\n getRequiredError(stateOrPostalCodeRequired ? values.state : true) || !isStateEqual\n ? `Please verify the state. USPS Provided State: ${state}`\n : undefined,\n };\n\n Object.keys(errors).forEach(key => (errors[key] === undefined ? delete errors[key] : {}));\n\n return errors;\n }\n }\n // Required Errors\n if (!isMailing) {\n return {\n [`country`]: getRequiredError(values.country),\n [`address1`]: getRequiredError(values.address1) || getInvalidError(!RE_PO_BOX.test(values.address1)),\n [`address2`]: values.address2 && getInvalidError(!RE_PO_BOX.test(values.address2)),\n [`postalCode`]: getRequiredError(stateOrPostalCodeRequired ? values.postalCode : true),\n [`city`]: getRequiredError(values.city),\n [`state`]: getRequiredError(stateOrPostalCodeRequired ? values.state : true),\n };\n } else if (isMailing) {\n return {\n [`country`]: getRequiredError(values.country),\n [`address1`]: getRequiredError(values.address1),\n [`postalCode`]: getRequiredError(stateOrPostalCodeRequired ? values.postalCode : true),\n [`city`]: getRequiredError(values.city),\n [`state`]: getRequiredError(stateOrPostalCodeRequired ? values.state : true),\n };\n }\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { address1, address2, city, country, postalCode, state } = values;\n let updateValues = {};\n\n if (header === 'Physical Address') {\n updateValues = {\n item: 'Address',\n accountHolder: {\n address: {\n address1: address1,\n address2: address2,\n city: city,\n country: country,\n postalCode: postalCode,\n state: state,\n },\n },\n holder: accountHolderIndex,\n };\n }\n if (header === 'Mailing Address') {\n updateValues = {\n item: 'MailingAddress',\n accountHolder: {\n mailingAddress: {\n address1: address1,\n address2: address2,\n city: city,\n country: country,\n postalCode: postalCode,\n state: state,\n },\n },\n holder: accountHolderIndex,\n };\n }\n\n dispatch(\n AccountManagementDataActions.requestMakeAccountUpdate({\n accountId: accountId,\n request: updateValues,\n })\n );\n resetForm();\n toggleModal();\n const headerValue = header === 'Physical Address' ? 'physical' : 'mail';\n localStorage.setItem(`addressVerification-${headerValue}-${accountHolderIndex}`, 'undefined');\n },\n [toggleModal, address1, address2, city, country, postalCode, state, dispatch]\n );\n\n return (\n \n {({ handleSubmit, resetForm, values, errors }) => (\n toggleModal()} show={show}>\n \n Address Update\n \n \n
    {header}
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n {values.country === Country.UnitedStatesOfAmerica && (\n \n )}\n {values.country !== Country.UnitedStatesOfAmerica && values.country !== '' && (\n \n )}\n \n \n \n \n
    \n {addressType === 'mail' && (\n

    \n All updates are pending admin review. You will be notified when your submission has been processed.\n

    \n )}\n
    \n \n {\n resetForm();\n toggleModal();\n const headerValue = header === 'Physical Address' ? 'physical' : 'mail';\n localStorage.setItem(`addressVerification-${headerValue}-${accountHolderIndex}`, 'undefined');\n }}\n >\n Cancel\n \n \n \n
    \n )}\n \n );\n};\n","import React, { useCallback } from 'react';\nimport { useDispatch } from 'react-redux';\nimport _ from 'lodash';\nimport { Formik, Field } from 'formik';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { FormGroup, TextboxField, Modal } from '@tradingblock/components';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { getInvalidError, getMismatchError, getRequiredError, getStaleError } from './Validation';\nimport { EmailUpdateValueProps, RE_EMAIL, SubmitEmailValues } from '@tradingblock/types';\n\nexport const EmailUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n accountHolderIndex: number;\n}> = ({ show, toggleModal, accountHolderIndex }) => {\n\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const { accountHolders } = accountManagementDetails;\n const user = accountHolders[accountHolderIndex];\n const email = user.email;\n const initialEmailUpdateValues: EmailUpdateValueProps = {\n emailValue: email ? email : '',\n emailConfirm: '',\n };\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const dispatch = useDispatch();\n\n const onValidate = (values: EmailUpdateValueProps) => {\n const { emailValue, emailConfirm } = values;\n\n if (!emailValue) {\n return {\n [`emailValue`]: getRequiredError(emailValue),\n [`emailConfirm`]: getRequiredError(emailConfirm),\n };\n }\n\n if (!emailConfirm) {\n return {\n [`emailValue`]: getRequiredError(emailValue),\n [`emailConfirm`]: getRequiredError(emailConfirm),\n };\n }\n\n if (!RE_EMAIL.test(emailValue)) {\n return {\n [`emailValue`]: getInvalidError(RE_EMAIL.test(emailValue)),\n [`emailConfirm`]: getInvalidError(RE_EMAIL.test(emailConfirm)),\n };\n }\n\n if (!RE_EMAIL.test(emailConfirm)) {\n return {\n [`emailValue`]: getInvalidError(RE_EMAIL.test(emailValue)),\n [`emailConfirm`]: getInvalidError(RE_EMAIL.test(emailConfirm)),\n };\n }\n\n if (emailValue !== emailConfirm) {\n return {\n [`emailConfirm`]: getMismatchError(emailConfirm === emailValue),\n };\n }\n\n if (emailValue === email) {\n return {\n [`emailConfirm`]: getStaleError(emailValue !== email),\n };\n }\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { emailValue } = values;\n const updateValues: SubmitEmailValues = {\n item: 'Email',\n accountHolder: {\n email: emailValue,\n },\n holder: accountHolderIndex,\n };\n\n dispatch(\n AccountManagementDataActions.requestMakeAccountUpdate({\n accountId: accountId,\n request: updateValues,\n })\n );\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, resetForm }) => (\n toggleModal()} show={show}>\n \n Email Update\n \n \n
    \n \n \n \n \n \n \n
    \n

    \n Upon submission, you will receive an email notifcation to accept or deny this update. If confirmed, all\n updates are pending admin review. You will be notified when your submission has been processed.\n

    \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useCallback } from 'react';\nimport { useDispatch } from 'react-redux';\nimport _ from 'lodash';\nimport { Formik, Field } from 'formik';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { FormGroup, TextboxField, Modal, SelectDropdownField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getInvalidError, getMismatchError, getRequiredError, getStaleError } from './Validation';\nimport { AllPhoneTypes, PhoneUpdateValueProps, SubmitPhoneValues } from '@tradingblock/types';\n\nexport const PhoneUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n accountHolderIndex: number;\n}> = ({ show, toggleModal, accountHolderIndex }) => {\n const initialPhoneUpdateValues: PhoneUpdateValueProps = {\n phoneValue: '',\n phoneConfirm: '',\n phoneType: '',\n };\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const dispatch = useDispatch();\n const accountDetails = useStateSelector(s => s.accountManagement.accountDetails.data);\n const { homePhone, workPhone, mobilePhone } = accountDetails;\n\n let header = '';\n\n const onValidate = (values: PhoneUpdateValueProps) => {\n const { phoneValue, phoneConfirm, phoneType } = values;\n if (!phoneValue || !phoneConfirm || !phoneType) {\n return {\n [`phoneValue`]: getRequiredError(phoneValue),\n [`phoneConfirm`]: getRequiredError(phoneConfirm),\n [`phoneType`]: getRequiredError(phoneType),\n };\n }\n\n if (phoneValue !== phoneConfirm) {\n return {\n [`phoneConfirm`]: getMismatchError(phoneConfirm === phoneValue),\n };\n }\n\n if (phoneValue.length < 10 || phoneConfirm.length < 10) {\n return {\n [`phoneValue`]: getInvalidError(phoneValue.length > 10),\n [`phoneConfirm`]: getInvalidError(phoneConfirm.length > 10),\n };\n }\n\n if (phoneType === 'Work' && phoneValue === workPhone) {\n return {\n [`phoneConfirm`]: getStaleError(phoneValue !== workPhone),\n };\n }\n\n if (phoneType === 'Mobile' && phoneValue === mobilePhone) {\n return {\n [`phoneConfirm`]: getStaleError(phoneValue !== mobilePhone),\n };\n }\n\n if (phoneType === 'Home' && phoneValue === homePhone) {\n return {\n [`phoneConfirm`]: getStaleError(phoneValue !== homePhone),\n };\n }\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { phoneValue, phoneType } = values;\n const updateValues: SubmitPhoneValues = {\n item: 'PhoneNumber',\n accountHolder: {\n phones: [\n {\n phoneNumber: phoneValue,\n type: phoneType,\n },\n ],\n },\n holder: accountHolderIndex,\n };\n dispatch(\n AccountManagementDataActions.requestMakeAccountUpdate({\n accountId: accountId,\n request: updateValues,\n })\n );\n\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, resetForm }) => (\n toggleModal()} show={show}>\n \n Phone Number Update\n \n \n
    {header}
    \n
    \n \n \n \n <>\n \n \n \n \n \n \n \n
    \n

    \n All updates are pending admin review. You will be notified when your submission has been processed.\n

    \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useCallback } from 'react';\nimport _ from 'lodash';\nimport { useDispatch } from 'react-redux';\nimport { Formik, Field } from 'formik';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { FormGroup, TextboxField, Modal, SelectDropdownField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport {\n AllStates,\n Country,\n DefaultPhoneValues,\n getGroupedCountryOptions,\n TrustedContactValueProps,\n} from '@tradingblock/types';\nimport { getRequiredError, USPSErrors, uspsVerification } from './Validation';\n\nexport const TrustedContactUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const dispatch = useDispatch();\n const { firstName, middleInitial, suffix, lastName, address, phones, email } = useStateSelector(\n s =>\n s.accountManagement.accountManagementDetails.details.trustedContact || {\n firstName: '',\n middleInitial: '',\n suffix: '',\n lastName: '',\n address: {\n address1: '',\n address2: '',\n city: '',\n state: '',\n postalCode: '',\n country: '',\n },\n email: '',\n phones: [\n {\n type: 'Primary',\n phoneNumber: '',\n },\n ],\n }\n );\n\n const initialTrustedContactValues: TrustedContactValueProps = {\n firstName: firstName ? firstName : '',\n middleInitial: middleInitial ? middleInitial : '',\n suffix: suffix ? suffix : '',\n lastName: lastName ? lastName : '',\n address1: address !== null && address.address1 ? address.address1 : '',\n address2: address !== null && address.address2 ? address.address2 : '',\n city: address !== null && address.city ? address.city : '',\n state: address !== null && address.state ? address.state : '',\n postalCode: address !== null && address.postalCode ? address.postalCode : '',\n country: address !== null && address.country ? address.country : '',\n phones: phones ? [...phones] : [DefaultPhoneValues],\n email: email ? email : '',\n };\n\n // TODO: Review localStorage usage\n const onValidate = (values: TrustedContactValueProps) => {\n const { address1, city, country, postalCode, state, firstName, lastName, phones, email } = values;\n let uspsResponse;\n let isValidAddress;\n const stateOrPostalCodeRequired = country === Country.UnitedStatesOfAmerica;\n\n const uspsResponseFromStorage = localStorage.getItem('trustedContactUSPS');\n\n if (uspsResponseFromStorage && uspsResponseFromStorage !== 'undefined') {\n uspsResponse = JSON.parse(uspsResponseFromStorage);\n const { city, state, zip5, error } = uspsResponse;\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual = _.toLower(startCaseCity) === _.toLower(values.city);\n const isZipEqual = zip5 === postalCode;\n const isStateEqual = state === values.state;\n const isAddressCorrect = !error && isCityEqual && isZipEqual && isStateEqual;\n\n isAddressCorrect ? (isValidAddress = true) : (isValidAddress = false);\n }\n\n if (address1 && city && state && country === Country.UnitedStatesOfAmerica && !isValidAddress) {\n const getUSPS = async () => {\n await new Promise(resolve => setTimeout(resolve, 100));\n return await uspsVerification(values);\n };\n\n getUSPS().then(result => {\n localStorage.setItem('trustedContactUSPS', JSON.stringify(result));\n });\n }\n\n if (uspsResponse) {\n const { city, state, zip5, error } = uspsResponse;\n\n if (error && values.address1 && values.city && values.state && values.postalCode) {\n return {\n [`postalCode`]: `${error.description.trim()} Please review the entered address.`,\n [`city`]: `${error.description.trim()} Please review the entered address.`,\n [`state`]: `${error.description.trim()} Please review the entered address.`,\n [`address1`]: `${error.description.trim()} Please review the entered address.`,\n };\n }\n\n if (!values.address1 || !values.city) {\n localStorage.setItem('trustedContactUSPS', 'undefined');\n }\n\n if (city && state && zip5) {\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual = _.toLower(startCaseCity) === _.toLower(values.city);\n const isZipEqual = zip5 === values.postalCode;\n const isStateEqual = state === values.state;\n\n // USPS Verification Errors\n const errors: USPSErrors = {\n [`firstName`]: getRequiredError(firstName),\n [`lastName`]: getRequiredError(lastName),\n [`middleInitial`]:\n values.middleInitial && values.middleInitial.length > 1\n ? 'Middle initial must be 1 character or less.'\n : undefined,\n // suffix should only be characters and possible \".\", no spaces or numbers\n [`suffix`]:\n values.suffix && !/^[a-zA-Z.]*$/.test(values.suffix) ? 'Suffix must be characters only.' : undefined,\n [`email`]: getRequiredError(email),\n [`phones[0].phoneNumber`]: getRequiredError(phones[0].phoneNumber),\n [`address1`]: getRequiredError(address1),\n [`country`]: getRequiredError(country),\n [`city`]:\n getRequiredError(city) || !isCityEqual\n ? `Please verify the city. USPS Provided City: ${startCaseCity}`\n : undefined,\n [`state`]:\n getRequiredError(state) || !isStateEqual\n ? `Please verify the state. USPS Provided State: ${state}`\n : undefined,\n [`postalCode`]:\n getRequiredError(postalCode) || !isZipEqual\n ? `Please verify the zip code. USPS Provided Zip Code: ${zip5}`\n : undefined,\n };\n\n Object.keys(errors).forEach(key => (errors[key] === undefined ? delete errors[key] : {}));\n\n return errors;\n }\n }\n const errors: USPSErrors = {\n [`firstName`]: getRequiredError(firstName),\n [`middleInitial`]:\n values.middleInitial && values.middleInitial.length > 1\n ? 'Middle initial must be 1 character or less.'\n : undefined,\n // suffix should only be characters and possible \".\", no spaces or numbers\n [`suffix`]: values.suffix && !/^[a-zA-Z.]*$/.test(values.suffix) ? 'Suffix must be characters only.' : undefined,\n [`lastName`]: getRequiredError(lastName),\n [`email`]: getRequiredError(email),\n [`phones[0].phoneNumber`]: getRequiredError(phones[0].phoneNumber),\n [`address1`]: getRequiredError(address1),\n [`country`]: getRequiredError(country),\n [`city`]: getRequiredError(city),\n [`state`]: getRequiredError(stateOrPostalCodeRequired ? state : true),\n [`postalCode`]: getRequiredError(stateOrPostalCodeRequired ? postalCode : true),\n };\n\n Object.keys(errors).forEach(key => (errors[key] === undefined ? delete errors[key] : {}));\n\n return errors;\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const {\n address1,\n address2,\n city,\n country,\n postalCode,\n state,\n firstName,\n middleInitial,\n lastName,\n suffix,\n phones,\n email,\n } = values;\n let updateValues = {};\n\n updateValues = {\n item: 'TrustedContact',\n trustedContact: {\n firstName,\n middleInitial,\n lastName,\n suffix,\n address: {\n address1,\n address2,\n city,\n country,\n postalCode,\n state,\n },\n email,\n phones: [\n {\n type: 'Primary',\n phoneNumber: phones[0].phoneNumber,\n },\n ],\n },\n };\n dispatch(\n AccountManagementDataActions.requestMakeAccountUpdate({\n accountId: accountId,\n request: updateValues,\n })\n );\n resetForm();\n toggleModal();\n\n localStorage.setItem('trustedContactUSPS', 'undefined');\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, resetForm, values }) => (\n toggleModal()} show={show}>\n \n Trusted Contact Update\n \n \n
    \n

    Trusted Contact Personal Information

    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n

    Trusted Contact Address

    \n <>\n \n \n \n \n \n \n \n \n \n \n \n \n \n {values.country === Country.UnitedStatesOfAmerica && (\n \n )}\n {values.country !== Country.UnitedStatesOfAmerica && values.country !== '' && (\n \n )}\n \n \n \n \n \n
    \n
    \n \n {\n resetForm();\n toggleModal();\n localStorage.setItem('trustedContactUSPS', 'undefined');\n }}\n >\n Cancel\n \n \n \n
    \n )}\n \n );\n};\n","import React, { useMemo } from 'react';\nimport _ from 'lodash';\nimport { StackedColumn } from './Column';\n\nexport interface DetailField {\n title?: string;\n Value: any;\n className?: string;\n hide?: boolean;\n}\n\ninterface DetailFieldsProps {\n fieldList: DetailField[];\n valueAs?: 'p' | 'div';\n}\n\nexport const DetailFields: React.FunctionComponent = ({ fieldList, valueAs }) => {\n const fields = useMemo(() => {\n return _(fieldList)\n .chunk(2)\n .value();\n }, [fieldList]);\n\n return (\n <>\n {fields.map((curr, rowIdx) => (\n
    \n {_.map(curr, ({ title, Value, className, hide }, fieldIdx) => {\n return (\n \n {!hide && }\n \n );\n })}\n
    \n ))}\n \n );\n};\n","import {\n TradeGoalType,\n RiskLevel,\n InvestmentObjectiveType,\n InvestmentObjectiveDescription,\n YearsEmployedDescription,\n BooleanToggleType,\n TradingAuthorization,\n} from '@tradingblock/types';\n\nexport const formatIncome = (incomeDescription: string) => {\n let displayString: string = '';\n switch (incomeDescription) {\n case 'Between100KAnd200K':\n displayString = '$100,000 - $200,000';\n break;\n case 'Between200KAnd300K':\n displayString = '$200,000 - $300,000';\n break;\n case 'Between25KAnd50K':\n displayString = '$25,000 - $50,000';\n break;\n case 'Between300KAnd500K':\n displayString = '$300,000 - $500,000';\n break;\n case 'Between500KAnd1Point2M':\n displayString = '$500,000 - $1,200,000';\n break;\n case 'Between50KAnd100K':\n displayString = '$50,000 - $100,000';\n break;\n case 'LessThan25K':\n displayString = 'Less than $25,000';\n break;\n case 'MoreThan1Point2M':\n displayString = 'More than $1,200,000';\n break;\n case 'Between1MAnd5M':\n displayString = '$1,000,000 - $5,000,000';\n break;\n case 'Between200KAnd500K':\n displayString = '$200,000 - $500,000';\n break;\n case 'Between500KAnd1M':\n displayString = '$500,000 - $1,000,000';\n break;\n case 'LessThan50K':\n displayString = 'Less than $50,000';\n break;\n case 'MoreThan5M':\n displayString = 'More than $5,000,000';\n break;\n default:\n displayString = 'N/A';\n break;\n }\n return displayString;\n};\n\nexport const formatTaxBracket = (bracket: string) => {\n let displayString: string = '';\n switch (bracket) {\n case 'Bottom':\n displayString = '10-19%';\n break;\n case 'Middle':\n displayString = '20-29%';\n break;\n case 'Top':\n displayString = '30-37%';\n break;\n default:\n displayString = 'N/A';\n break;\n }\n return displayString;\n};\n\nexport const getRiskLevelForTradeGoalType = (type: TradeGoalType) => {\n switch (type) {\n case TradeGoalType.StocksBonds:\n return RiskLevel.None;\n case TradeGoalType.AllAbovePlusCallsPuts:\n return RiskLevel.VeryLow;\n case TradeGoalType.AllAbovePlusOptionSpreads:\n return RiskLevel.Low;\n case TradeGoalType.AllAbovePlusPutWriting:\n return RiskLevel.Moderate;\n case TradeGoalType.AllAbovePlusAllOptionStrategies:\n return RiskLevel.High;\n default:\n throw new Error('Unknown TradeGoalType: ' + type);\n }\n};\n\nexport const getRiskLevelForInvestmentObjectiveType = (type: InvestmentObjectiveType) => {\n switch (type) {\n case InvestmentObjectiveType.CapitalPreservation:\n case InvestmentObjectiveType.Income:\n case InvestmentObjectiveType.Growth:\n case InvestmentObjectiveType.GrowthAndIncome:\n return RiskLevel.Moderate;\n case InvestmentObjectiveType.Speculation:\n return RiskLevel.High;\n default:\n throw new Error('Unknown InvestmentObjectiveType: ' + type);\n }\n};\n\nexport const getDescriptionForInvestmentObjective = (type: InvestmentObjectiveType) => {\n switch (type) {\n case InvestmentObjectiveType.CapitalPreservation:\n return InvestmentObjectiveDescription.CapitalPreservation;\n case InvestmentObjectiveType.Income:\n return InvestmentObjectiveDescription.Income;\n case InvestmentObjectiveType.Growth:\n return InvestmentObjectiveDescription.Growth;\n case InvestmentObjectiveType.GrowthAndIncome:\n return InvestmentObjectiveDescription.GrowthAndIncome;\n case InvestmentObjectiveType.Speculation:\n return InvestmentObjectiveDescription.Speculation;\n default:\n throw new Error('Unknown InvestmentObjectiveType: ' + type);\n }\n};\n\nexport const formatYearsEmployed = (type: string) => {\n switch (type) {\n case 'BetweenZeroAndOne':\n return YearsEmployedDescription.BetweenZeroAndOne;\n case 'BetweenTwoAndFive':\n return YearsEmployedDescription.BetweenTwoAndFive;\n case 'BetweenFiveAndTen':\n return YearsEmployedDescription.BetweenFiveAndTen;\n case 'BetweenTenAndTwenty':\n return YearsEmployedDescription.BetweenTenAndTwenty;\n case 'MoreThanTwenty':\n return YearsEmployedDescription.MoreThanTwenty;\n default:\n throw new Error('Unknown YearsEmployed: ' + type);\n }\n};\n\nexport const formatYearsTrading = (type: string) => {\n switch (type) {\n case 'Zero':\n return 'Zero';\n case 'One':\n return 'One';\n case 'TwoToThree':\n return '2 - 3 years';\n case 'FourToNine':\n return '4 - 9 years';\n case 'TenOrMore':\n return '10+ years';\n default:\n throw new Error('Unknown YearsTrading: ' + type);\n }\n};\n\nexport const formatTradesPerYear = (type: string) => {\n switch (type) {\n case 'OneToFive':\n return '1 - 5 trades/year';\n case 'SixToTen':\n return '6 - 10 trades/year';\n case 'ElevenToTwenty':\n return '11 - 20 trades/year';\n case 'MoreThanTwenty':\n return '20+ trades/year';\n default:\n throw new Error('Unknown TradesPerYear: ' + type);\n }\n};\n\n// formats BooleanToggleType to regular Boolean\nexport const formatBoolean = (booleanItem: BooleanToggleType | undefined) => {\n if (booleanItem === 'yes') {\n return true;\n } else {\n return false;\n }\n};\n\nexport const formatBooleanForDisplay = (booleanItem: boolean) => {\n if (booleanItem) {\n return 'Yes';\n } else return 'No';\n};\n\n// formats phone numbers into standard US format\nexport const formatPhoneNumber = (value: string | undefined) => {\n if (!value) return value;\n\n if (value === 'N/A') return value;\n\n const phoneNumber = value.replace(/[^\\d]/g, '');\n\n if (phoneNumber.length < 4) return phoneNumber;\n\n if (phoneNumber.length < 7) {\n return `${phoneNumber.slice(0, 3)}-${phoneNumber.slice(3)}`;\n }\n\n if (phoneNumber.length <= 10) {\n return `${phoneNumber.slice(0, 3)}-${phoneNumber.slice(3, 6)}-${phoneNumber.slice(6)}`;\n }\n\n if (phoneNumber.length === 11) {\n return `${phoneNumber.slice(0, 1)}-${phoneNumber.slice(1, 4)}-${phoneNumber.slice(4, 7)}-${phoneNumber.slice(7)}`;\n }\n\n return `${phoneNumber.slice(0, 2)}-${phoneNumber.slice(2, 6)}-${phoneNumber.slice(6)}`;\n};\n\n// Display agent name or not applicable\nexport const formatAgentName = (name: string | null, auth: boolean) => {\n if (auth) {\n return name;\n } else {\n return 'Not Applicable';\n }\n};\n\n// Display firm name or not applicable\nexport const formatIndustryEmployed = (firmName: string | null) => {\n if (firmName === null) {\n return 'Not Applicable';\n }\n return firmName;\n};\n\n// Display market data entitlement as string or not applicable\nexport const formatMarketDataEntitlement = (entitlement: number | null) => {\n if (entitlement === null) {\n return 'Not Applicable';\n }\n if (entitlement === 0) {\n return 'No entitlement data found...';\n }\n if (entitlement === 1) {\n return 'Professional User';\n }\n if (entitlement === 2) {\n return 'Non-Professional User';\n }\n if (entitlement === 3) {\n return 'Delayed Quotes Only User';\n }\n};\n\nexport const getAgentPhoneNumbersByType = (type: string, tradingAuthorization: TradingAuthorization) => {\n const phone = tradingAuthorization.phones ? tradingAuthorization.phones.filter(phone => phone.type === type) : [];\n if (phone.length > 0) {\n return phone[0].phoneNumber;\n }\n return 'N/A';\n};\n","import React, { useCallback } from 'react';\nimport _, { isError } from 'lodash';\nimport { useDispatch } from 'react-redux';\nimport { Formik, Field } from 'formik';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { FormGroup, TextboxField, Modal, SelectDropdownField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport {\n AllYearsEmployed,\n EmploymentTypes,\n AllStates,\n EmployInfoUpdateValueProps,\n getGroupedCountryOptions,\n Country,\n EmploymentType,\n} from '@tradingblock/types';\nimport { getRequiredError, USPSErrors, uspsVerification } from './Validation';\n\nexport const EmployInfoUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n accountHolderIndex: number;\n}> = ({ show, toggleModal, accountHolderIndex }) => {\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const dispatch = useDispatch();\n const { accountHolders } = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const user = accountHolders[accountHolderIndex];\n const initialEmployInfoUpdateValues: EmployInfoUpdateValueProps = {\n employmentType: user ? user.employmentType : '',\n employer: user ? user.employer : '',\n jobPosition: user ? user.jobPosition : '',\n yearsEmployed: user ? user.yearsEmployed : '',\n employerAddress: {\n address1: user ? user.address.address1 : '',\n address2: user ? user.address.address2 : '',\n country: user ? user.address.country : '',\n state: user ? user.address.state : '',\n city: user ? user.address.city : '',\n postalCode: user ? user.address.postalCode : '',\n },\n };\n\n // TODO: Review localStorage usage\n const onValidate = (values: EmployInfoUpdateValueProps) => {\n const { employmentType, employer, jobPosition, yearsEmployed, employerAddress } = values;\n const { address1, country, state, city } = employerAddress;\n let uspsResponse;\n let isValidAddress;\n const stateOrPostalCodeRequired = employerAddress.country === Country.UnitedStatesOfAmerica;\n\n const uspsResponseFromStorage = localStorage.getItem(`employerAddress-${accountHolderIndex}`);\n\n if (!employmentType) {\n return { employmentType: getRequiredError('employmentType') };\n }\n\n if (employmentType && employmentType !== EmploymentType.Employed) {\n return {};\n }\n\n if (uspsResponseFromStorage && uspsResponseFromStorage !== 'undefined') {\n uspsResponse = JSON.parse(uspsResponseFromStorage);\n const { city, state, zip5, error } = uspsResponse;\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual = _.toLower(startCaseCity) === _.toLower(employerAddress.city);\n const isZipEqual = zip5 === employerAddress.postalCode;\n const isStateEqual = state === employerAddress.state;\n const isAddressCorrect = !error && isCityEqual && isZipEqual && isStateEqual;\n\n isAddressCorrect ? (isValidAddress = true) : (isValidAddress = false);\n }\n\n if (address1 && city && state && country === Country.UnitedStatesOfAmerica && !isValidAddress) {\n const getUSPS = async () => {\n await new Promise(resolve => setTimeout(resolve, 100));\n return await uspsVerification(employerAddress);\n };\n\n getUSPS().then(result => {\n localStorage.setItem(`employerAddress-${accountHolderIndex}`, JSON.stringify(result));\n });\n }\n\n if (uspsResponse) {\n const { city, state, zip5, error } = uspsResponse;\n\n if (\n error &&\n employerAddress.address1 &&\n employerAddress.city &&\n employerAddress.state &&\n employerAddress.postalCode\n ) {\n return {\n [`postalCode`]: `${error.description.trim()} Please review the entered address.`,\n [`city`]: `${error.description.trim()} Please review the entered address.`,\n [`state`]: `${error.description.trim()} Please review the entered address.`,\n [`address1`]: `${error.description.trim()} Please review the entered address.`,\n };\n }\n\n if (!employerAddress.address1 || !employerAddress.city) {\n localStorage.setItem(`employerAddress-${accountHolderIndex}`, 'undefined');\n }\n\n if (city && state && zip5) {\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual = _.toLower(startCaseCity) === _.toLower(employerAddress.city);\n const isZipEqual = zip5 === employerAddress.postalCode;\n const isStateEqual = state === employerAddress.state;\n\n // USPS + Required Verification Errors\n const errors: USPSErrors = {\n ['employerAddress.country']: getRequiredError(employerAddress.country),\n ['employerAddress.address1']: getRequiredError(employerAddress.address1),\n ['employerAddress.city']:\n getRequiredError(employerAddress.city) || !isCityEqual\n ? `Please verify the city. USPS Provided City: ${startCaseCity}`\n : undefined,\n ['employerAddress.state']:\n getRequiredError(stateOrPostalCodeRequired ? employerAddress.state : true) || !isStateEqual\n ? `Please verify the state. USPS Provided State: ${state}`\n : undefined,\n ['employerAddress.postalCode']:\n getRequiredError(stateOrPostalCodeRequired ? employerAddress.postalCode : true) || !isZipEqual\n ? `Please verify the zip code. USPS Provided Zip Code: ${zip5}`\n : undefined,\n [`employmentType`]: getRequiredError(employmentType),\n [`employer`]: getRequiredError(employer),\n [`jobPosition`]: getRequiredError(jobPosition),\n [`yearsEmployed`]: getRequiredError(yearsEmployed),\n };\n\n Object.keys(errors).forEach(key => (errors[key] === undefined ? delete errors[key] : {}));\n\n return errors;\n }\n }\n\n return {\n [`employmentType`]: getRequiredError(employmentType),\n [`employer`]: getRequiredError(employer),\n [`jobPosition`]: getRequiredError(jobPosition),\n [`yearsEmployed`]: getRequiredError(yearsEmployed),\n [`employerAddress.address1`]: getRequiredError(address1),\n [`employerAddress.city`]: getRequiredError(city),\n [`employerAddress.state`]: getRequiredError(state),\n [`employerAddress.country`]: getRequiredError(country),\n [`employerAddress.postalCode`]: getRequiredError(stateOrPostalCodeRequired ? employerAddress.postalCode : true),\n };\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { employmentType, employer, jobPosition, yearsEmployed, employerAddress } = values;\n const { address1, address2, country, state, city, postalCode } = employerAddress;\n let updateValues = {};\n\n switch (employmentType) {\n case 'Employed':\n updateValues = {\n item: 'Employment',\n accountHolder: {\n employmentType,\n employer,\n jobPosition,\n yearsEmployed,\n employerAddress: {\n address1,\n address2,\n country,\n state,\n city,\n postalCode,\n },\n },\n holder: accountHolderIndex,\n };\n break;\n case 'Student':\n case 'Unemployed':\n case 'Retired':\n updateValues = {\n item: 'Employment',\n accountHolder: {\n employmentType,\n employer: '',\n jobPosition: '',\n yearsEmployed: '',\n employerAddress: {\n address1: '',\n address2: '',\n country: 'USA',\n state: 'IL',\n city: '',\n postalCode: 99999,\n },\n },\n holder: accountHolderIndex,\n };\n break;\n default:\n break;\n }\n\n dispatch(\n AccountManagementDataActions.requestMakeAccountUpdate({\n accountId: accountId,\n request: updateValues,\n })\n );\n\n resetForm();\n toggleModal();\n\n localStorage.setItem(`employerAddress-${accountHolderIndex}`, 'undefined');\n },\n [toggleModal, accountId, accountHolderIndex, dispatch]\n );\n\n return (\n \n {({ values, handleSubmit, resetForm }) => (\n toggleModal()} show={show}>\n \n Employment Information Update\n \n \n
    \n \n \n \n

    Please provide your employment status and any applicable information.

    \n {values.employmentType === 'Employed' && (\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 \n )}\n
    \n
    \n \n {\n resetForm();\n toggleModal();\n localStorage.setItem(`employerAddress-${accountHolderIndex}`, 'undefined');\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React from 'react';\nimport _ from 'lodash';\nimport { useDispatch } from 'react-redux';\nimport { Modal } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\n\nexport const RemoveTrustedContactOrTradeAuth: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n type?: 'removeTrustedContact' | 'removeTradeAuthorization';\n}> = ({ show, toggleModal, type }) => {\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const dispatch = useDispatch();\n\n const onClick = () => {\n const updateValues = {\n item: type === 'removeTrustedContact' ? 'RemoveTrustedContact' : 'RemoveTradeAuthorization',\n };\n\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId, request: updateValues }));\n toggleModal();\n };\n\n const modalTitle = type === 'removeTrustedContact' ? 'Remove Trusted Contact?' : 'Remove Trade Authorization?';\n const modalBody =\n type === 'removeTrustedContact'\n ? 'Are you sure you want to remove this trusted contact?'\n : 'Are you sure you want to remove this trade authorization?';\n\n return (\n toggleModal()} show={show}>\n \n {modalTitle}\n \n \n

    {modalBody}

    \n
    \n \n \n \n \n
    \n );\n};\n","import React, { useCallback, useEffect, useState } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n ContactEmail,\n ContactPhone,\n ExternalLink,\n FormGroup,\n Loading,\n Modal,\n TextboxField,\n} from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { Config } from '../../../config';\nimport { IsVirtualEnvironment } from '../../../data/global/selectors/environmentSelector';\nimport { origin } from '../../../data/global/selectors/originSelector';\n\nexport const ResetPassword: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n accountHolderIndex: number;\n}> = ({ show, toggleModal, accountHolderIndex }) => {\n const isVirtual = useStateSelector(IsVirtualEnvironment);\n const originVal = useStateSelector(origin.origin);\n let group = originVal === 'mb' ? 'mb' : 'tb';\n const apiRootUrl = Config.tradingApi || undefined;\n const siteParam = originVal === 'mb' ? `?grp=${group}` : '';\n\n const [authError, setAuthError] = useState();\n const [sentEmail, setSentEmail] = useState(false);\n const [isFetching, setIsFetching] = useState(false);\n\n interface FormValues {\n UserName: string;\n Email: string;\n }\n\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountDetails.data);\n const initialResetPasswordProps = {\n UserName: '',\n Email: accountManagementDetails.email ? accountManagementDetails.email : '',\n };\n\n // handle validate\n const onValidate = (values: FormValues) => {\n if (!values.UserName || !values.Email) {\n return { [`UserName`]: 'Username is required.', [`Email`]: 'Email is required.' };\n }\n if (values.Email && !/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,4}$/i.test(values.Email)) {\n return { [`Email`]: 'Invalid email address.' };\n }\n return {};\n };\n\n\n const onSubmit = useCallback(async (values: FormValues, { resetForm }: any) => {\n setIsFetching(true);\n await fetch(`${apiRootUrl}/User/PasswordChangeInitiate?siteid=${group}`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n UserName: values.UserName,\n Email: values.Email,\n }),\n }).then(async response => {\n if (response.status === 200) {\n setIsFetching(false);\n const content = await response.json();\n if (content.ResponseCode === 0) {\n setAuthError('');\n setIsFetching(false);\n setSentEmail(true);\n } else {\n setIsFetching(false);\n setSentEmail(true);\n }\n resetForm();\n }\n });\n }, []);\n\n // if sentEmail is true, set timer for 5 seconds to close the modal (if it is still open) and then reset sentEmail to false\n // this will allow users to reset their password again if they need to\n useEffect(() => {\n if (sentEmail) {\n const timer = setTimeout(() => {\n setSentEmail(false);\n if (show) {\n toggleModal();\n }\n }, 5000);\n return () => clearTimeout(timer);\n }\n }, [sentEmail]);\n\n return (\n <>\n toggleModal()} show={show}>\n \n Reset Password\n \n {isFetching && }\n {!sentEmail && !isFetching && (\n \n {({ errors, touched, submitCount, handleSubmit, resetForm, values }) => (\n \n {isVirtual && (\n <>\n

    \n Welcome to Virtual Trading. If you do not have a new Virtual account,{' '}\n \n create a virtual trading account\n \n

    \n

    NOTE: Your live account login is not compatible with Virtual Trading.

    \n \n )}\n

    \n Please provide your username and email address to begin the password reset process.\n

    \n
    \n \n \n \n \n \n \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n )}\n {sentEmail && (\n <>\n \n

    Password Reset Request Sent

    \n

    \n If the username and email match, you should have received a reset email with instructions on how to\n reset your password. Please contact us if you have any further questions or concerns.\n

    \n

    \n \n
    \n \n

    \n
    \n \n \n \n \n )}\n {authError && (\n \n

    \n
    \n )}\n
    \n \n );\n};\n","import React, { useEffect, useState, useMemo } from 'react';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { AccountManagementDataActions } from '../../data/global/actions/AccountManagementActions';\nimport { Loading } from '@tradingblock/components';\nimport { AddressUpdate } from './modals//AddressUpdate';\nimport { EmailUpdate } from './modals/EmailUpdate';\nimport { PhoneUpdate } from './modals/PhoneUpdate';\nimport { TrustedContactUpdate } from './modals/TrustedContactUpdate';\nimport { DetailFields, DetailField } from '../../components/basic/DetailFields';\nimport { formatPhoneNumber, formatYearsEmployed } from '../../utilities/accountManagement';\nimport { EmployInfoUpdate } from './modals/EmployInfoUpdate';\nimport { RemoveTrustedContactOrTradeAuth } from './modals/RemoveTrustedContactOrTradeAuth';\nimport { ResetPassword } from './modals/ResetPassword';\nimport dayjs from 'dayjs';\n\nexport const AccountDetails: React.FunctionComponent<{}> = () => {\n const accountId = useStateSelector(s => s.account.accountId);\n const accountDetails = useStateSelector(s => s.accountManagement.accountDetails.data);\n const isLoaded = useStateSelector(s => s.accountManagement.accountDetails.isLoaded);\n\n // Pending Account Management Update Requests\n const pendingAccountUpdates = useStateSelector(s => s.accountManagement.pendingAccountManagementUpdates.data);\n const pendingEmailUpdate = pendingAccountUpdates && pendingAccountUpdates.filter(u => u.item === 'Email');\n const pendingMailAddressUpdate =\n pendingAccountUpdates && pendingAccountUpdates.filter(u => u.item === 'MailingAddress');\n const pendingPhoneUpdate = pendingAccountUpdates && pendingAccountUpdates.filter(u => u.item === 'PhoneNumber');\n\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const { accountHolders } = accountManagementDetails;\n\n const { trustedContact } = accountManagementDetails;\n const isFetching = useStateSelector(s => s.accountManagement.accountManagementDetails.isFetching);\n const selectedLinkedAccountId = useStateSelector(\n s => s.account.selectedLinkedAccount && s.account.selectedLinkedAccount.accountId\n );\n\n const dispatch = useDispatch();\n const [showAddressConfirm, setShowAddressConfirm] = useState(false);\n const [showEmailConfirm, setShowEmailConfirm] = useState(false);\n const [showPhoneConfirm, setShowPhoneConfirm] = useState(false);\n const [showTrustedContact, setShowTrustedContact] = useState(false);\n const [showEmploymentUpdate, setShowEmploymentUpdate] = useState(false);\n const [addressType, setAddressType] = useState('');\n const [accountHolderIndex, setAccountHolderIndex] = useState(0);\n const [showRemoveTrustedContact, setShowRemoveTrustedContact] = useState(false);\n const [showResetPassword, setShowResetPassword] = useState(false);\n const updateData = useStateSelector(s => s.accountManagement.update.data);\n\n useEffect(() => {\n if (!isLoaded && accountId) {\n if (selectedLinkedAccountId) {\n dispatch(AccountManagementDataActions.requestAccountDetails({ accountId: selectedLinkedAccountId }));\n dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId: selectedLinkedAccountId }));\n } else {\n dispatch(AccountManagementDataActions.requestAccountDetails({ accountId }));\n dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId }));\n }\n }\n }, [accountId, dispatch, isLoaded, selectedLinkedAccountId, updateData]);\n\n const handleClick = (event: any) => {\n event.preventDefault();\n switch (event.target.id) {\n case 'email-0':\n setAccountHolderIndex(0);\n setShowEmailConfirm(true);\n break;\n case 'email-1':\n setAccountHolderIndex(1);\n setShowEmailConfirm(true);\n break;\n case 'physAddress-0':\n setAddressType('physical');\n setAccountHolderIndex(0);\n setShowAddressConfirm(true);\n break;\n case 'physAddress-1':\n setAddressType('physical');\n setAccountHolderIndex(1);\n setShowAddressConfirm(true);\n break;\n case 'mailAddress-0':\n setAddressType('mail');\n setAccountHolderIndex(0);\n setShowAddressConfirm(true);\n break;\n case 'mailAddress-1':\n setAddressType('mail');\n setAccountHolderIndex(1);\n setShowAddressConfirm(true);\n break;\n case 'trustedContact':\n setShowTrustedContact(true);\n break;\n case 'employmentInfo-0':\n setAccountHolderIndex(0);\n setShowEmploymentUpdate(true);\n break;\n case 'employmentInfo-1':\n setAccountHolderIndex(1);\n setShowEmploymentUpdate(true);\n break;\n case 'phoneUpdate-0':\n setAccountHolderIndex(0);\n setShowPhoneConfirm(true);\n break;\n case 'phoneUpdate-1':\n setAccountHolderIndex(1);\n setShowPhoneConfirm(true);\n break;\n case 'removeTrustedContact':\n setShowRemoveTrustedContact(true);\n break;\n case 'resetPassword':\n setShowResetPassword(true);\n break;\n default:\n break;\n }\n };\n\n const toggleAddressUpdate = () => {\n showAddressConfirm ? setShowAddressConfirm(false) : setShowAddressConfirm(true);\n };\n\n const toggleEmailUpdate = () => {\n showEmailConfirm ? setShowEmailConfirm(false) : setShowEmailConfirm(true);\n };\n\n const togglePhoneUpdate = () => {\n showPhoneConfirm ? setShowPhoneConfirm(false) : setShowPhoneConfirm(true);\n };\n\n const toggleTrustedContact = () => {\n showTrustedContact ? setShowTrustedContact(false) : setShowTrustedContact(true);\n };\n\n const toggleEmploymentUpdate = () => {\n showEmploymentUpdate ? setShowEmploymentUpdate(false) : setShowEmploymentUpdate(true);\n };\n\n const toggleRemoveTrustedContact = () => {\n showRemoveTrustedContact ? setShowRemoveTrustedContact(false) : setShowRemoveTrustedContact(true);\n };\n\n const toggleShowResetPassword = () => {\n showResetPassword ? setShowResetPassword(false) : setShowResetPassword(true);\n };\n\n const getAccountHolderName = (index: number) => {\n if (accountHolders[index].firstName && accountHolders[index].lastName) {\n return `${accountHolders[index].firstName} ${accountHolders[index].middleInitial || ''} ${\n accountHolders[index].lastName\n } ${accountHolders[index].suffix || ''}`;\n }\n return 'Name not found';\n };\n\n const getPhoneNumberByType = (index: number, type: string) => {\n const phone = accountHolders[index].phones ? accountHolders[index].phones.filter(phone => phone.type === type) : [];\n if (phone.length > 0) {\n return phone[0].phoneNumber;\n }\n return 'N/A';\n };\n\n const personalInfoFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n if (accountDetails && accountManagementDetails && !isFetching && isLoaded) {\n accountHolders.map((accountHolder, index) => {\n fieldList = [\n ...fieldList,\n\n {\n Value: () => (\n <>\n Personal Information -{' '}\n {getAccountHolderName(index)}\n \n ),\n className: 'fields-title',\n },\n\n { Value: () => null },\n\n {\n Value: () => (\n <>\n \n Email Address \n \n \n
    \n {accountHolder.email ? accountHolder.email : 'No Email Address on Record'}\n
    \n {pendingEmailUpdate && pendingEmailUpdate.length > 0 && (\n \n Update Request Pending Admin Review\n
    \n \n {dayjs(pendingEmailUpdate[pendingEmailUpdate.length - 1].createDate).format(\n 'MM/DD/YYYY - hh:mm A'\n )}\n \n
    \n )}\n \n ),\n },\n\n {\n Value: () => (\n <>\n \n Password\n \n \n \n \n \n ),\n },\n\n {\n Value: () => (\n <>\n \n Mailing Address \n \n \n
    \n \n {accountHolder.mailingAddress.address1 ? accountHolder.mailingAddress.address1 : 'N/A'}\n \n
    \n {accountHolder.mailingAddress.address2 && (\n <>\n {accountHolder.mailingAddress.address2}\n
    \n \n )}\n \n {accountHolder.mailingAddress.city ? accountHolder.mailingAddress.city : ''},{' '}\n {accountHolder.mailingAddress.state ? accountHolder.mailingAddress.state : ''}{' '}\n {accountHolder.mailingAddress.postalCode ? accountHolder.mailingAddress.postalCode : ''}\n \n
    \n \n {accountHolder.mailingAddress.country ? accountHolder.mailingAddress.country : 'N/A'}{' '}\n \n
    \n {pendingMailAddressUpdate && pendingMailAddressUpdate.length > 0 && (\n \n Update Request Pending Admin Review\n
    \n \n {dayjs(pendingMailAddressUpdate[pendingMailAddressUpdate.length - 1].createDate).format(\n 'MM/DD/YYYY - hh:mm A'\n )}\n \n
    \n )}\n \n ),\n },\n\n {\n Value: () => (\n <>\n \n Physical Address \n \n \n
    \n {accountHolder.address.address1 ? accountHolder.address.address1 : 'N/A'}\n
    \n {accountHolder.address.address2 && (\n <>\n {accountHolder.address.address2}\n
    \n \n )}\n\n \n {accountHolder.address.city ? accountHolder.address.city : ''},{' '}\n {accountHolder.address.state ? accountHolder.address.state : ''}{' '}\n {accountHolder.address.postalCode ? accountHolder.address.postalCode : 'N/A'}\n \n
    \n {accountHolder.address.country ? accountHolder.address.country : 'N/A'} \n \n ),\n },\n\n {\n Value: () => (\n <>\n \n Phone Numbers \n \n \n \n Home: \n {formatPhoneNumber(getPhoneNumberByType(index, 'Home'))}{' '}\n \n
    \n \n Mobile: \n {formatPhoneNumber(getPhoneNumberByType(index, 'Mobile'))}{' '}\n \n
    \n \n Work: \n {formatPhoneNumber(getPhoneNumberByType(index, 'Work'))}{' '}\n \n
    \n {pendingPhoneUpdate && pendingPhoneUpdate.length > 0 && (\n \n Update Request Pending Admin Review\n
    \n \n {pendingPhoneUpdate[pendingPhoneUpdate.length - 1] &&\n dayjs(pendingPhoneUpdate[pendingPhoneUpdate.length - 1].createDate).format(\n 'MM/DD/YYYY - hh:mm A'\n )}\n \n
    \n )}\n \n ),\n },\n\n {\n Value: () => null,\n },\n ];\n });\n }\n return fieldList;\n }, [\n accountHolders,\n accountDetails,\n isLoaded,\n isFetching,\n pendingAccountUpdates,\n pendingPhoneUpdate,\n pendingMailAddressUpdate,\n pendingEmailUpdate,\n ]);\n\n const trustedContactInfoFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n\n if (accountDetails && accountManagementDetails && !isFetching && isLoaded) {\n fieldList = [\n ...fieldList,\n\n {\n Value: () => (\n <>\n Trusted Contact{' '}\n \n \n ),\n className: 'fields-title',\n },\n\n { Value: () => null },\n\n {\n Value: () => (\n <>\n No trusted contact on record.\n \n ),\n hide: trustedContact !== null,\n },\n\n { Value: () => null },\n\n {\n Value: () => (\n <>\n \n Name\n \n \n {trustedContact.firstName} {trustedContact.middleInitial || ''} {trustedContact.lastName}{' '}\n {trustedContact.suffix || ''}\n \n \n ),\n hide: trustedContact === null,\n },\n\n {\n Value: () => (\n <>\n \n Email\n \n {trustedContact.email}\n \n ),\n hide: trustedContact === null,\n },\n\n {\n Value: () => (\n <>\n \n Address\n \n {trustedContact.address && trustedContact.address.address1}\n
    \n {trustedContact.address && trustedContact.address.address2 && (\n <>\n {trustedContact.address.address2}\n \n )}\n \n {trustedContact.address && trustedContact.address.city},{' '}\n {trustedContact.address && trustedContact.address.state}{' '}\n {trustedContact.address && trustedContact.address.postalCode}\n \n
    \n {trustedContact.address && trustedContact.address.country}\n \n ),\n hide: trustedContact === null || trustedContact.address === null,\n },\n\n {\n Value: () => (\n <>\n \n Phone Number\n \n {formatPhoneNumber(trustedContact.phones[0].phoneNumber)}\n \n ),\n hide: trustedContact === null || trustedContact.phones === null,\n },\n {\n Value: () => (\n <>\n \n \n ),\n hide: trustedContact === null,\n },\n ];\n }\n\n return fieldList;\n }, [trustedContact, accountDetails, isFetching, isLoaded]);\n\n const employmentInfoFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n if (accountDetails && accountManagementDetails && !isFetching && isLoaded) {\n accountHolders.map((accountHolder, index) => {\n fieldList = [\n ...fieldList,\n\n {\n Value: () => (\n <>\n Employment Information -{' '}\n {getAccountHolderName(index)}{' '}\n \n \n ),\n className: 'fields-title',\n },\n\n { Value: () => null },\n\n {\n Value: () => (\n <>\n \n Employment Type\n \n {accountHolder.employmentType}\n \n ),\n hide: !accountHolder.employmentType,\n },\n\n {\n Value: () => (\n <>\n \n Employer Name\n \n {accountHolder.employer}\n \n ),\n hide: accountHolder.employmentType !== 'Employed' || !accountHolder.employer,\n },\n\n {\n Value: () => (\n <>\n \n Job Title\n \n {accountHolder.jobPosition}\n \n ),\n hide: accountHolder.employmentType !== 'Employed' || !accountHolder.jobPosition,\n },\n\n {\n Value: () => (\n <>\n \n Years Employed\n \n \n {accountHolder.yearsEmployed ? formatYearsEmployed(accountHolder.yearsEmployed) : 'Not applicable'}\n \n \n ),\n hide: accountHolder.employmentType !== 'Employed',\n },\n\n {\n Value: () => (\n <>\n \n Employment Address\n \n \n {accountHolder.employerAddress && accountHolder.employerAddress.address1 && (\n <>\n {accountHolder.employerAddress.address1}\n
    \n \n )}\n {accountHolder.employerAddress && accountHolder.employerAddress.address2 && (\n <>\n {accountHolder.employerAddress.address2}\n
    \n \n )}\n {accountHolder.employerAddress && accountHolder.employerAddress.city}\n {accountHolder.employerAddress && accountHolder.employerAddress.state\n ? ', ' + accountHolder.employerAddress.state\n : ''}{' '}\n {accountHolder.employerAddress && accountHolder.employerAddress.postalCode}\n
    \n {accountHolder.employerAddress && accountHolder.employerAddress.country}\n
    \n \n ),\n hide: accountHolder.employmentType !== 'Employed' || !accountHolder.employerAddress,\n },\n {\n Value: () => null,\n },\n ];\n });\n }\n\n return fieldList;\n }, [accountHolders, accountDetails, isFetching, isLoaded]);\n\n if (!isLoaded || isFetching || !accountManagementDetails) return ;\n\n return (\n <>\n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n \n \n \n \n \n \n \n \n );\n};\n","import React, { useCallback } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n AllTaxbracketTypes,\n AllTimeHorizonTypes,\n AllMonetaryRangeTypes,\n AllIncomeRangeTypes,\n FinancialUpdateValueProps,\n} from '@tradingblock/types';\nimport { FormGroup, SelectDropdownField, Modal } from '@tradingblock/components';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { useDispatch } from 'react-redux';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getRequiredError } from './Validation';\n\nexport const FinancialUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n assetType: string;\n}> = ({ show, toggleModal }) => {\n const dispatch = useDispatch();\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const { annualIncome, totalNetWorth, liquidNetWorth, characteristics: { bracket, horizon } } = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const initialFinancialUpdateValues: FinancialUpdateValueProps = {\n annualIncome: annualIncome ? annualIncome : '',\n totalNetWorth: totalNetWorth ? totalNetWorth : '',\n liquidNetWorth: liquidNetWorth ? liquidNetWorth : '',\n characteristics: {\n bracket: bracket ? bracket : '',\n horizon: horizon ? horizon : '',\n },\n };\n\n const onValidate = (values: FinancialUpdateValueProps) => {\n const { annualIncome, totalNetWorth, liquidNetWorth, characteristics } = values;\n const { bracket, horizon } = characteristics;\n\n if (!annualIncome || !totalNetWorth || !liquidNetWorth || !bracket || !horizon) {\n return {\n [`annualIncome`]: getRequiredError(annualIncome),\n [`totalNetWorth`]: getRequiredError(totalNetWorth),\n [`liquidNetWorth`]: getRequiredError(liquidNetWorth),\n [`characteristics.bracket`]: getRequiredError(bracket),\n [`characteristics.horizon`]: getRequiredError(horizon),\n };\n }\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { annualIncome, totalNetWorth, liquidNetWorth, characteristics } = values;\n const { bracket, horizon } = characteristics;\n let updateValues = {};\n updateValues = {\n item: 'Financial',\n annualIncome: annualIncome,\n totalNetWorth: totalNetWorth,\n liquidNetWorth: liquidNetWorth,\n characteristics: {\n bracket: bracket,\n horizon: horizon,\n },\n };\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId: accountId, request: updateValues }));\n toggleModal();\n resetForm();\n },\n [toggleModal, annualIncome, annualIncome, totalNetWorth, liquidNetWorth, bracket, horizon, dispatch]\n );\n\n return (\n \n {({ handleSubmit, resetForm }) => (\n toggleModal()} show={show}>\n \n Financial Information Update Request\n \n\n \n
    \n \n \n \n

    \n Total gross annual income that earn or receive, or reasonable expect to earn or receive.\n

    \n\n \n \n \n

    \n Total value of all assets you own less all liabilities, excluding primary residence.\n

    \n\n \n \n \n

    \n Total value of all cash and cash equivalent assets you own less all liabilities.\n

    \n\n \n \n \n

    Used to determine trading products you can use.

    \n\n \n \n \n

    Used to determine trading products you can use.

    \n
    \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useCallback } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n AllExperienceYearTypes,\n AllTradeExperienceYearTypes,\n AllTradeExperienceTypes,\n TradeExperienceUpdateValueProps,\n ExperienceYearType,\n} from '@tradingblock/types';\nimport { FormGroup, SelectDropdownField, Modal } from '@tradingblock/components';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { useDispatch } from 'react-redux';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getRequiredError } from './Validation';\n\nexport const TradeExperienceUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n instrumentType: string;\n}> = ({ show, toggleModal }) => {\n const dispatch = useDispatch();\n\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { years, tradesPerYear, instrumentType } = values;\n\n let updateValues = {\n item: 'Experience',\n experience: {\n [`${instrumentType}`]: {\n years,\n tradesPerYear: years === ExperienceYearType.Zero ? null : tradesPerYear,\n },\n },\n };\n\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId: accountId, request: updateValues }));\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n const onValidate = (values: TradeExperienceUpdateValueProps) => {\n const { instrumentType, years, tradesPerYear } = values;\n\n if (!instrumentType) {\n return {\n [`instrumentType`]: getRequiredError(instrumentType),\n };\n }\n\n if (instrumentType && !years) {\n return {\n [`years`]: getRequiredError(years),\n [`tradesPerYear`]: getRequiredError(tradesPerYear),\n };\n }\n if (instrumentType && years && years === ExperienceYearType.Zero && !tradesPerYear) {\n return; // no error\n }\n\n if (instrumentType && years && !tradesPerYear) {\n return {\n [`tradesPerYear`]: getRequiredError(tradesPerYear),\n };\n }\n\n return {};\n };\n\n const initialTradeExperienceUpdateValues: TradeExperienceUpdateValueProps = {\n instrumentType: undefined,\n years: undefined,\n tradesPerYear: undefined,\n };\n\n return (\n \n {({ values, handleSubmit, resetForm }) => (\n toggleModal()} show={show}>\n \n Trade Experience Update Request\n \n \n

    Trade Experience Update

    \n
    \n \n \n\n <>\n \n {values.years !== ExperienceYearType.Zero && (\n \n )}\n

    \n Your prior experience helps determine which products you can trade and the option strategies (if\n desired) you can use.\n

    \n \n
    \n
    \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useMemo } from 'react';\nimport { LocalizeContextProps, withLocalize } from 'react-localize-redux';\nimport _ from 'lodash';\nimport { RiskLevel } from '@tradingblock/types';\nimport { useLocalize } from '@tradingblock/components';\n\ninterface RiskLevelIconProps {\n level: RiskLevel;\n}\n\nconst RiskLevelIconComponent: React.FC = ({ level, translate }) => {\n const { getTranslationId } = useLocalize();\n\n const title = useMemo(() => {\n const text = translate(getTranslationId({ id: `riskLevel.${level}` }));\n return _.isString(text) ? text : `[level ${level}]`;\n }, [level, translate, getTranslationId]);\n\n return (\n \n \n \n \n {/* \n \n */}\n \n );\n};\n\nexport const RiskLevelIcon = withLocalize(RiskLevelIconComponent);\n","import React, { useCallback } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n AllLiquidityNeedTypes,\n AllInvestmentObjectiveTypes,\n InvestmentObjectiveType,\n RiskToleranceType,\n AllRiskToleranceTypes,\n SuitabilityUpdateValueProps,\n} from '@tradingblock/types';\nimport { FormGroup, CheckListField, SelectDropdownField, Modal } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { RiskLevelIcon } from './components/RiskLevelIcon';\nimport {\n getRiskLevelForInvestmentObjectiveType,\n getDescriptionForInvestmentObjective,\n} from '../../../utilities/accountManagement';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getRequiredError } from './Validation';\n\nexport const SuitabilityUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n const dispatch = useDispatch();\n\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const { investmentObjectiveType, characteristics: { liquidity, risk } } = accountManagementDetails\n const initialSuitabilityUpdateValues: SuitabilityUpdateValueProps = {\n investmentObjectiveType: investmentObjectiveType ? investmentObjectiveType : '',\n characteristics: {\n liquidity: liquidity ? liquidity : '',\n risk: risk ? risk : '',\n },\n };\n\n const onValidate = (values: SuitabilityUpdateValueProps) => {\n const { investmentObjectiveType, characteristics } = values;\n const { liquidity, risk } = characteristics;\n\n if (!investmentObjectiveType || !risk || !liquidity) {\n return {\n [`investmentObjectiveType`]: getRequiredError(investmentObjectiveType),\n [`characteristics.risk`]: getRequiredError(risk),\n [`characteristics.liquidity`]: getRequiredError(liquidity),\n };\n }\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { investmentObjectiveType, characteristics } = values;\n const { risk, liquidity } = characteristics;\n let updateValues = {\n item: 'Suitability',\n characteristics: {\n risk,\n liquidity,\n },\n investmentObjectiveType,\n };\n\n if (\n investmentObjectiveType === accountManagementDetails.investmentObjectiveType &&\n risk === accountManagementDetails.characteristics.risk &&\n liquidity === accountManagementDetails.characteristics.liquidity\n ) {\n resetForm();\n toggleModal();\n return;\n }\n\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId: accountId, request: updateValues }));\n\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, values, resetForm }) => (\n toggleModal()} show={show}>\n \n Financial Information Update Request\n \n\n \n
    \n \n
    Investment Objective
    \n ({\n value: t,\n icon: ,\n }))}\n type=\"radio\"\n className=\"checklist-descriptions\"\n renderOption={(opt: { value: InvestmentObjectiveType }) => (\n <>\n {opt.value ? opt.value.replace(/([A-Z])/g, ' $1').trim() : 'Not Found'}\n
    \n {getDescriptionForInvestmentObjective(opt.value)}\n \n )}\n />\n
    \n
    Suitability Information
    \n {values.investmentObjectiveType !== 'Speculation' && (\n \n )}\n {values.investmentObjectiveType === 'Speculation' && (\n \n )}\n\n \n

    Used to determine trading products you can use.

    \n

    \n Investment objective, risk tolerance & liquidity needs updates are pending Admin review.\n

    \n
    \n
    \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useState, useCallback } from 'react';\nimport { useDropzone, FileError } from 'react-dropzone';\nimport _ from 'lodash';\nimport { Button } from 'react-bootstrap';\nimport { useApi } from '../../context/Api';\nimport { AccountManagementDocuments, ClearerType, ResponseCodes } from '@tradingblock/types';\nimport { ApiResponse } from '@tradingblock/api';\nimport { Text } from '@tradingblock/components';\n\n/**\n * MiscellaneousUpload component properties\n *\n * @property {number} accountId Account ID Associated With File Upload\n * @property {void} handleDocumentUpload Following successful upload, passes the documentId to parent component\n * @property {AccountManagementDocuments} documentType Upload document type\n * @property {string} description Description of the document\n */\n\ninterface MiscellaneousUploadProps {\n accountId: number;\n handleDocumentUpload: (payload: number, accountHolderIndex: number, documentType: AccountManagementDocuments) => void;\n documentType: AccountManagementDocuments;\n description: string;\n accountHolderIndex: number;\n isCashieringDocument?: boolean;\n recipientBankId?: number;\n disabled?: boolean;\n clearer?: ClearerType;\n}\n\n/**\n * Upload widget for miscellaneous documents related to account management updates (3210 letter, government ids, signatures, etc.)\n *\n * @param {MiscellaneousUploadProps} props\n * @returns {JSX.Element}\n */\n\nexport const MiscUploadFileField: React.FC = ({\n accountId,\n handleDocumentUpload,\n documentType,\n description,\n accountHolderIndex,\n isCashieringDocument,\n recipientBankId,\n disabled,\n clearer,\n}) => {\n // Used Hooks\n const api = useApi();\n\n // Used States\n const [uploadingDocument, setUploadingDocument] = useState(false);\n const [fileName, setFileName] = useState('');\n const [uploadSuccess, setUploadSuccess] = useState(false);\n const [errors, setErrors] = useState([]);\n const isRqdIdCard =\n (documentType === AccountManagementDocuments.DriversLicense ||\n documentType === AccountManagementDocuments.StateIdCard) &&\n clearer === ClearerType.RQD;\n\n // Process upload api response\n const processUploadResponse = useCallback((response: ApiResponse) => {\n // If unsuccessful upload, set state/errors\n if (response.responseCode !== 0) {\n setUploadingDocument(false);\n setErrors([\n {\n message: ResponseCodes[response.responseCode].description as string,\n code: ResponseCodes[response.responseCode].name,\n },\n ]);\n } else {\n // If successful, set states and pass documentId to parent for update submission\n setUploadSuccess(true);\n handleDocumentUpload(response.payload, accountHolderIndex, documentType);\n setErrors([]);\n }\n }, []);\n\n const maxFiles = isRqdIdCard ? 2 : 1;\n\n // Dropzone Properties\n const { getRootProps, getInputProps } = useDropzone({\n onDrop: () => {\n setUploadingDocument(true);\n },\n onDropAccepted: acceptedFiles => {\n // If drop accepted by frontend, upload the file to backend\n setFileName(acceptedFiles[0].name);\n if (!isCashieringDocument) {\n if (isRqdIdCard) {\n api.accountManagement\n .uploadMiscellaneousDocument(acceptedFiles[0], accountId, documentType, description)\n .then(response => {\n processUploadResponse(response);\n api.accountManagement\n .uploadMiscellaneousDocument(acceptedFiles[1], accountId, documentType, description)\n .then(response => {\n processUploadResponse(response);\n });\n });\n } else {\n api.accountManagement\n .uploadMiscellaneousDocument(acceptedFiles[0], accountId, documentType, description)\n .then(response => {\n processUploadResponse(response);\n });\n }\n } else if (isCashieringDocument && recipientBankId) {\n if (isRqdIdCard) {\n api.cashiering.documents\n .upload(acceptedFiles[0], accountId, recipientBankId, documentType, description)\n .then(response => {\n processUploadResponse(response);\n api.cashiering.documents\n .upload(acceptedFiles[1], accountId, recipientBankId, documentType, description)\n .then(response => {\n processUploadResponse(response);\n });\n });\n } else {\n api.cashiering.documents\n .upload(acceptedFiles[0], accountId, recipientBankId, documentType, description)\n .then(response => {\n processUploadResponse(response);\n });\n }\n }\n },\n // If drop rejected, set states/errors\n onDropRejected: fileRejections => {\n setUploadingDocument(false);\n setErrors(fileRejections[0].errors);\n },\n maxSize: 13631488,\n maxFiles: maxFiles,\n accept: 'image/png, image/jpeg, image/jpg, image/gif, application/pdf, capture=camera',\n });\n\n return (\n <>\n {!uploadSuccess ? (\n <>\n
    \n \n {!uploadingDocument ? (\n <>\n \n {isRqdIdCard && (\n <>\n
    \n
    \n \n Please upload two separate images (front and back) of your ID using the same file selection\n prompt.\n \n \n )}\n \n ) : (\n \n {' '}\n \n \n )}\n
    \n \n ) : (\n <>\n
    \n \n File successfully uploaded - {fileName}\n \n
    \n \n )}\n {errors.length > 0 && (\n
    \n
      \n {errors.map((error, errorIndex) => (\n
    • \n {error.message}\n
    • \n ))}\n
    \n
    \n )}\n \n );\n};\n","import { ClearerType } from '@tradingblock/types';\nimport { useStateSelector } from '../data/global/dataSelectors';\n\n// use the account number to determine if office code refers to RQD or Apex cleared account\nexport const useClearer = (): string => {\n const accountNumber = useStateSelector(s => s.account.accountNumber);\n\n if (!accountNumber) {\n return 'No account number, cannot determine Clearer';\n }\n\n return accountNumber.includes('TBLK') ? ClearerType.RQD : ClearerType.Apex;\n};\n","import React, { useCallback, useState } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n AccountManagementDocuments,\n AllBooleanToggleTypes,\n AllTradeGoalTypes,\n BooleanToggleType,\n ClearerType,\n Country,\n TradeGoalType,\n TradeGoalUpdateValueProps,\n} from '@tradingblock/types';\nimport { FormGroup, CheckListField, Modal, StepperField, ExternalLink, Text } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { RiskLevelIcon } from './components/RiskLevelIcon';\nimport { getRiskLevelForTradeGoalType } from '../../../utilities/accountManagement';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getInvalidError, getRequiredError, getUploadError } from './Validation';\nimport { MiscUploadFileField } from '../../../components/form/UploadMiscFile';\nimport { useClearer } from '../../../hooks/useClearer';\n\n/**\n * Modal for updating a user's tradeGoal (trade level)\n *\n * @param {boolean} show Boolean value used for showing/hiding modal\n * @param {void} toggleModal Function to toggle show from true or false\n * @returns {JSX.Element}\n */\n\nexport const formatTradeGoalType = (tradeGoalType: string) => {\n switch (tradeGoalType) {\n case 'StocksBonds':\n return 'Stocks & Bonds';\n case 'AllAbovePlusCallsPuts':\n return 'Stocks & Bonds + Calls & Puts';\n case 'AllAbovePlusOptionSpreads':\n return 'Stocks, Bonds, Calls, Puts + Option Spreads';\n case 'AllAbovePlusPutWriting':\n return 'Stocks, Bonds, Calls, Puts, Option Spreads + Put Writing';\n case 'AllAbovePlusAllOptionStrategies':\n return 'Stocks, Bonds, Calls, Puts, Option Spreads, Put Writing + All Option Strategies';\n default:\n return tradeGoalType.replace(/([A-Z])/g, ' $1').trim();\n }\n};\n\nexport const TradeGoalUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n // used hooks\n const dispatch = useDispatch();\n\n // state selectors\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const { accountHolders } = accountManagementDetails;\n\n // Used States\n const [clickedAgreements, setClickedAgreements] = useState([]);\n const [uploadIds, setUploadId] = useState<{ documentId: number; accountHolderIndex: number }[]>([]);\n const documentIds: {\n documentId: number;\n accountHolderIndex: number;\n documentType: AccountManagementDocuments;\n }[] = [];\n const [numberOfUploads, setNumberOfUploads] = useState(0);\n\n // Retrieve documentId, accountHolderIndex, documentType of uploaded files, push into documentIds array for submission & increment numberOfUploads\n const handleDocumentUpload = (\n documentId: number,\n accountHolderIndex: number,\n documentType: AccountManagementDocuments\n ) => {\n if (documentId) {\n setUploadId([...uploadIds, { accountHolderIndex, documentId }]);\n documentIds.push({ documentId, accountHolderIndex, documentType });\n setNumberOfUploads(numberOfUploads => numberOfUploads + 1);\n }\n return;\n };\n\n // Log clicked agreements for disable/enable of accept/reject buttons\n const onClickedAgreementLink = useCallback(\n (agreement: string) => {\n setClickedAgreements([...clickedAgreements, agreement]);\n },\n [clickedAgreements]\n );\n\n // Return undefined, disabling button, for agreements that have not been clicked\n const getAgreementDisabledOptions = useCallback(\n (agreement: string) => {\n // if haven't clicked agreement, disable toggle buttons\n if (!_.includes(clickedAgreements, agreement)) {\n return AllBooleanToggleTypes;\n }\n return undefined;\n },\n [clickedAgreements]\n );\n\n // Clearer\n const clearer = useClearer();\n\n // Link to Option Agreements\n // TODO: Ensure RQD Link is accurate once it is available\n const link = 'https://legacy.tradingblock.com/Docs/Agreements//Option_Agreement_v5.5_20180821.pdf';\n const rqdLink = 'https://legacy.tradingblock.com/Docs/Agreements//RQD_Options_Agreement_v30_220421.pdf';\n\n const formatBooleanToggleType = (toggleType: string) => {\n if (toggleType === 'yes') {\n return true;\n } else {\n return false;\n }\n };\n\n // Check if either account holder has foreign citizenship\n const checkForForeign = () => {\n const holderCitizenship = accountHolders.filter(\n holder => holder.citizenshipCountry !== Country.UnitedStatesOfAmerica\n );\n if (holderCitizenship.length > 0) {\n return true;\n }\n return false;\n };\n const isForeign = checkForForeign();\n\n /**\n *\n * @property {TradeGoalType | undefined} tradeGoalType User response to their desired trade level for account update\n * @property {BooleanToggleType | null} option If applicable, user acceptance or rejection of Option Agreement\n */\n\n const initialTradeGoalFlexUpdate: TradeGoalUpdateValueProps = {\n tradeGoalType: undefined,\n agreements: {\n option: null,\n },\n };\n\n // Form validation prior to submission, ensures all disclosures are answered and necessary docs are gathered\n const onValidate = (values: TradeGoalUpdateValueProps) => {\n const { tradeGoalType, agreements } = values;\n const { option } = agreements;\n\n if (!tradeGoalType) {\n return {\n [`tradeGoalType`]: getRequiredError(tradeGoalType),\n };\n }\n if (tradeGoalType !== TradeGoalType.StocksBonds && !option) {\n return {\n [`agreements.option`]: getRequiredError(option),\n };\n }\n\n if (tradeGoalType !== TradeGoalType.StocksBonds && option && option !== BooleanToggleType.Yes) {\n return {\n [`agreements.option`]: getInvalidError(false),\n };\n }\n\n if (isForeign && accountManagementDetails.type !== 'Joint' && numberOfUploads < 2) {\n return {\n [`uploadDocuments`]: getUploadError(false),\n };\n }\n\n if (isForeign && accountManagementDetails.type === 'Joint' && numberOfUploads < 4) {\n return {\n [`uploadedDocuments`]: getUploadError(false),\n };\n }\n };\n\n // On form submission set updateValues and dispatch update request\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { tradeGoalType } = values;\n let updateValues;\n updateValues = {\n item: 'TradeGoal',\n tradeGoalType,\n agreements: {\n option: formatBooleanToggleType(values.agreements.option),\n },\n };\n\n if (isForeign) {\n updateValues = {\n item: 'TradeGoal',\n tradeGoalType,\n agreements: {\n option: formatBooleanToggleType(values.agreements.option),\n },\n uploadedDocuments: documentIds.map(doc => {\n return {\n accountHolder: doc.accountHolderIndex,\n documentId: doc.documentId,\n documentName: doc.documentType,\n };\n }),\n };\n }\n\n if (tradeGoalType === accountManagementDetails.tradeGoalType) {\n resetForm();\n toggleModal();\n return;\n }\n\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId: accountId, request: updateValues }));\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, values, errors, submitCount, resetForm }) => (\n toggleModal()} show={show}>\n \n Financial Information Update Request\n \n\n \n
    \n
    Trade Goal Update
    \n \n ({\n value: t,\n icon: ,\n }))}\n type=\"radio\"\n className=\"checklist-descriptions\"\n renderOption={(opt: { value: TradeGoalType }) => (\n <>\n {opt.value ? formatTradeGoalType(opt.value) : 'Not Found'}\n \n )}\n />\n

    \n While every account is approved to trade stocks, ETFs, mutual funds, and fixed income, we are required\n to review your investment objectives, experience, income, and net worth if you wish to trade options.\n

    \n

    \n Trade level type updates are pending Admin review and acceptance of the options agreement.\n

    \n
    \n {values.tradeGoalType && values.tradeGoalType !== TradeGoalType.StocksBonds && (\n <>\n

    \n onClickedAgreementLink('option')}\n >\n Option Agreement\n {' '}\n

    \n \n \n \n \n )}\n {values.tradeGoalType && isForeign && (\n <>\n

    \n Foreign account trade goal updates require signature and government ID images to be uploaded for\n admin review. Please attach documents accordingly below prior to submission.\n

    \n {errors.uploadedDocuments && !!submitCount && (\n <>\n \n \n \n
    \n
    \n \n )}\n {accountHolders.map((holder, i) => (\n
    \n
    \n {holder.firstName} {holder.middleInitial || ''} {holder.lastName} {holder.suffix || ''}\n
    \n \n \n \n \n \n \n
    \n ))}\n
    \n \n )}\n \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useCallback, useState } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport { ExternalLink, FormGroup, Modal, StepperField, Text } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport {\n AccountManagementDocuments,\n AllBooleanToggleTypes,\n AllFlexibilityTypes,\n ApiResponse,\n BooleanToggleType,\n ClearerType,\n Country,\n FlexibilityType,\n FlexibilityTypeUpdateValueProp,\n} from '@tradingblock/types';\nimport { getInvalidError, getRequiredError, getUploadError } from './Validation';\nimport { MiscUploadFileField } from '../../../components/form/UploadMiscFile';\nimport { useApi } from '../../../context/Api';\nimport { useClearer } from '../../../hooks/useClearer';\n\n/**\n * Modal for updating a user's flexibilityType (Margin/Cash-Only)\n *\n *\n * @param {boolean} show Boolean value used for showing/hiding modal\n * @param {void} toggleModal Function to toggle show from true or false\n * @returns {JSX.Element}\n */\n\nexport const FlexibilityTypeUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n // Used Hooks\n const dispatch = useDispatch();\n\n // Used States\n const [clickedAgreements, setClickedAgreements] = useState([]);\n const [uploadIds, setUploadId] = useState<{ documentId: number; accountHolderIndex: number }[]>([]);\n const [numberOfUploads, setNumberOfUploads] = useState(0);\n\n // Array of documents uploaded for update request\n const documentIds: {\n documentId: number;\n accountHolderIndex: number;\n documentType: AccountManagementDocuments;\n }[] = [];\n\n // Retrieve documentId, accountHolderIndex, documentType of uploaded files, push into documentIds array for submission & increment numberOfUploads\n const handleDocumentUpload = (\n documentId: number,\n accountHolderIndex: number,\n documentType: AccountManagementDocuments\n ) => {\n if (documentId) {\n setUploadId([...uploadIds, { accountHolderIndex, documentId }]);\n documentIds.push({ documentId, accountHolderIndex, documentType });\n setNumberOfUploads(numberOfUploads => numberOfUploads + 1);\n }\n return;\n };\n\n // Log clicked agreements for disable/enable of accept/reject buttons\n const onClickedAgreementLink = useCallback(\n (agreement: string) => {\n setClickedAgreements([...clickedAgreements, agreement]);\n },\n [clickedAgreements]\n );\n\n // Return undefined, disabling button, for agreements that have not been clicked\n const getAgreementDisabledOptions = useCallback(\n (agreement: string) => {\n // if haven't clicked agreement, disable toggle buttons\n if (!_.includes(clickedAgreements, agreement)) {\n return AllBooleanToggleTypes;\n }\n return undefined;\n },\n [clickedAgreements]\n );\n\n // Clearer\n const clearer = useClearer();\n\n // Margin Agreement Links\n // TODO: Ensure RQD Link is accurate once it is available\n const link = 'https://legacy.tradingblock.com/Docs/Agreements//Margin_Agreement_vTest.pdf';\n const rqdLink = 'https://legacy.tradingblock.com/Docs/Agreements//RQD_Margin_Supplement_Agreement_v3_220421.pdf';\n\n // State Selectors\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const accountDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const { accountHolders } = accountDetails;\n\n const api = useApi();\n const [duplicateAccountError, setDuplicateAccountError] = React.useState(null);\n\n const handleDuplicateAccountCheckResponse = useCallback((response: ApiResponse) => {\n if (response.responseCode !== 0) {\n setDuplicateAccountError(response.payload[0]);\n } else {\n return;\n }\n }, []);\n\n /**\n * FlexibilityTypeUpdateValueProps\n *\n * @property {FlexibilityType | undefined} flexibilityType User response to Account Type (Margin/Cash-Only)\n * @property {BooleanToggleType | null} margin If applicable, user acceptance or rejection of margin agreement\n */\n\n const initialTradeGoalFlexUpdate: FlexibilityTypeUpdateValueProp = {\n flexibilityType: undefined,\n agreements: {\n margin: null,\n },\n };\n\n const formatBooleanToggleType = (toggleType: string) => {\n if (toggleType === 'yes') {\n return true;\n } else {\n return false;\n }\n };\n\n // Check if either account holder has foreign citizenship\n const checkForForeign = () => {\n const holderCitizenship = accountHolders.filter(\n holder => holder.citizenshipCountry !== Country.UnitedStatesOfAmerica\n );\n if (holderCitizenship.length > 0) {\n return true;\n }\n return false;\n };\n // Boolean for foreign account holder\n const isForeign = checkForForeign();\n\n // On form submission set updateValues and dispatch update request\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { flexibilityType } = values;\n let updateValues;\n updateValues = {\n item: 'Flexability',\n flexibilityType,\n agreements: {\n margin: formatBooleanToggleType(values.agreements.margin),\n },\n };\n\n // if either account holder is foreign, attach required documents to update values\n if (isForeign) {\n updateValues = {\n item: 'Flexability',\n flexibilityType,\n agreements: {\n margin: formatBooleanToggleType(values.agreements.margin),\n },\n uploadedDocuments: documentIds.map(doc => {\n return {\n accountHolder: doc.accountHolderIndex,\n documentId: doc.documentId,\n documentName: doc.documentType,\n };\n }),\n };\n }\n\n // If flexibility type is stale, reset form and close modal\n if (flexibilityType === accountDetails.flexibilityType) {\n resetForm();\n toggleModal();\n return;\n }\n\n // dispatch update request\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId: accountId, request: updateValues }));\n\n // re-retrieve account/account management details following update request\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n // Form validation prior to submission, ensures all disclosures are answered and necessary docs are gathered\n const onValidate = (values: FlexibilityTypeUpdateValueProp) => {\n const { flexibilityType, agreements } = values;\n const { margin } = agreements;\n\n if (values.flexibilityType) {\n let requestValues: DuplicateAccountCheckRequest;\n // TODO: Implement duplicate account check for entities once supported and redux implemented\n // if (accountDetails.type === 'Entity') {\n // requestValues = {\n // accountIdToIgnore: accountId,\n // entityAccountType: accountDetails.entityAccountType,\n // flexibilityType: values.flexibilityType,\n // primaryTaxIdSecret:\n // };\n // }\n\n if (accountDetails.type === 'Individual' && !isForeign) {\n requestValues = {\n accountIdToIgnore: accountId,\n flexibilityType: values.flexibilityType,\n primaryTaxIdSecret: accountHolders[0].ssnSecret,\n retirementAccountType: accountDetails.retirementAccountType ? accountDetails.retirementAccountType : null,\n type: accountDetails.type,\n };\n\n api.application.duplicateAccountCheck(requestValues).then(response => {\n handleDuplicateAccountCheckResponse(response);\n });\n }\n if ((accountDetails.type === 'Joint' || accountDetails.type === 'Ugma') && !isForeign) {\n requestValues = {\n accountIdToIgnore: accountId,\n flexibilityType: values.flexibilityType,\n primaryTaxIdSecret: accountHolders[0].ssnSecret,\n secondaryTaxIdSecret: accountHolders[1].ssnSecret,\n retirementAccountType: accountDetails.retirementAccountType ? accountDetails.retirementAccountType : null,\n type: accountDetails.type,\n };\n\n api.application.duplicateAccountCheck(requestValues).then(response => {\n handleDuplicateAccountCheckResponse(response);\n });\n }\n }\n\n if (!flexibilityType) {\n return {\n [`flexibilityType`]: getRequiredError(flexibilityType),\n };\n }\n if (!isForeign && duplicateAccountError) {\n return {\n [`flexibilityType`]: duplicateAccountError ? duplicateAccountError : undefined,\n };\n }\n if (flexibilityType === FlexibilityType.Margin && !margin) {\n return {\n [`agreements.margin`]: getRequiredError(margin),\n };\n }\n\n if (flexibilityType === FlexibilityType.Margin && margin && margin !== BooleanToggleType.Yes) {\n return {\n [`agreements.margin`]: getInvalidError(false),\n };\n }\n\n if (isForeign && accountDetails.type !== 'Joint' && numberOfUploads < 2) {\n return {\n [`uploadDocuments`]: getUploadError(false),\n };\n }\n\n if (isForeign && accountDetails.type === 'Joint' && numberOfUploads < 4) {\n return {\n [`uploadedDocuments`]: getUploadError(false),\n };\n }\n };\n\n interface DuplicateAccountCheckRequest {\n accountIdToIgnore?: number;\n entityAccountType?: string;\n flexibilityType: string;\n primaryTaxIdSecret?: string;\n retirementAccountType?: string | null;\n secondaryTaxIdSecret?: string;\n type: string;\n }\n\n return (\n \n {({ handleSubmit, values, errors, submitCount, resetForm }) => (\n toggleModal()} show={show}>\n \n Financial Information Update Request\n \n \n
    \n
    Account Type Update
    \n

    What type of trading flexibility do you need?

    \n

    Cash-only accounts trade on a cash basis and do not include margin.

    \n

    \n Margin accounts offer the most flexibility with advanced trading strategies and the ability to trade on\n margin, subject to approval and acceptance of margin agreement.\n

    \n \n \n {/* {duplicateAccountError && {duplicateAccountError}} */}\n \n {values.flexibilityType === 'Margin' && (\n <>\n

    \n onClickedAgreementLink('margin')}\n >\n Margin Agreement\n {' '}\n

    \n \n \n \n \n )}\n {values.flexibilityType && isForeign && (\n <>\n

    \n Foreign account type updates require signature and government ID images to be uploaded for admin\n review. Please attach documents accordingly below prior to submission.\n

    \n {errors.uploadedDocuments && !!submitCount && (\n <>\n \n \n \n
    \n
    \n \n )}\n {accountHolders.map((holder, i) => (\n
    \n
    \n {holder.firstName} {holder.middleInitial || ''} {holder.lastName} {holder.suffix || ''}\n
    \n \n \n \n \n \n \n
    \n ))}\n
    \n \n )}\n \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useMemo, useState, useEffect } from 'react';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { DefaultAccountManagementDetails } from '@tradingblock/types';\nimport { DetailFields, DetailField } from '../../components/basic/DetailFields';\nimport { Loading } from '@tradingblock/components';\nimport {\n formatIncome,\n formatTaxBracket,\n formatTradesPerYear,\n formatYearsTrading,\n} from '../../utilities/accountManagement';\nimport { FinancialUpdate } from './modals/FinancialUpdate';\nimport { useDispatch } from 'react-redux';\nimport { AccountManagementDataActions } from '../../data/global/actions/AccountManagementActions';\nimport { TradeExperienceUpdate } from './modals/TradeExperience';\nimport { SuitabilityUpdate } from './modals/SuitabilityUpdate';\nimport { formatTradeGoalType, TradeGoalUpdate } from './modals/TradeGoalUpdate';\nimport { FlexibilityTypeUpdate } from './modals/FlexibilityTypeUpdate';\nimport dayjs from 'dayjs';\n\nexport const FinancialDetails: React.FunctionComponent<{}> = () => {\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const isFetching = useStateSelector(s => s.accountManagement.accountManagementDetails.isFetching);\n const areDetailsLoaded = useStateSelector(s => s.accountManagement.accountDetails.isLoaded);\n const {\n characteristics,\n annualIncome,\n liquidNetWorth,\n totalNetWorth,\n investmentObjectiveType,\n experience,\n lastChanged,\n tradeGoalType,\n flexibilityType,\n } = accountManagementDetails || DefaultAccountManagementDetails;\n const selectedLinkedAccountId = useStateSelector(\n s => s.account.selectedLinkedAccount && s.account.selectedLinkedAccount.accountId\n );\n\n // Pending Account Management Update Requests\n const pendingAccountUpdates = useStateSelector(s => s.accountManagement.pendingAccountManagementUpdates.data);\n const pendingSuitabilityUpdates =\n pendingAccountUpdates && pendingAccountUpdates.filter(u => u.item === 'Suitability');\n const pendingTradeLevelUpdates = pendingAccountUpdates && pendingAccountUpdates.filter(u => u.item === 'TradeGoal');\n const pendingFlexabilityUpdates =\n pendingAccountUpdates && pendingAccountUpdates.filter(u => u.item === 'Flexability');\n const { risk, bracket, horizon, liquidity } = characteristics;\n const accountId = useStateSelector(s => s.account.accountId);\n\n const { bonds, options, stocks, commodities, margins } = experience;\n const { address, phone } = lastChanged;\n\n const [showAssetUpdate, setShowAssetUpdate] = useState(false);\n const [showExperienceUpdate, setShowExperienceUpdate] = useState(false);\n const [showSuitabilityUpdate, setShowSuitabilityUpdate] = useState(false);\n const [showTradeGoalUpdate, setShowTradeGoalUpdate] = useState(false);\n const [showFlexibilityTypeUpdate, setShowFlexibilityTypeUpdate] = useState(false);\n const updateData = useStateSelector(s => s.accountManagement.update.data);\n\n const toggleAssetUpdate = () => {\n showAssetUpdate ? setShowAssetUpdate(false) : setShowAssetUpdate(true);\n };\n\n const toggleExperienceUpdate = () => {\n showExperienceUpdate ? setShowExperienceUpdate(false) : setShowExperienceUpdate(true);\n };\n\n const toggleSuitabilityUpdate = () => {\n showSuitabilityUpdate ? setShowSuitabilityUpdate(false) : setShowSuitabilityUpdate(true);\n };\n\n const toggleTradeGoalUpdate = () => {\n showTradeGoalUpdate ? setShowTradeGoalUpdate(false) : setShowTradeGoalUpdate(true);\n };\n\n const toggleFlexibilityTypeUpdate = () => {\n showFlexibilityTypeUpdate ? setShowFlexibilityTypeUpdate(false) : setShowFlexibilityTypeUpdate(true);\n };\n\n const [assetType, setAssets] = useState('');\n const [updateType, setUpdateType] = useState('');\n\n const dispatch = useDispatch();\n\n useEffect(() => {\n if (!areDetailsLoaded && accountId) {\n if (selectedLinkedAccountId) {\n dispatch(AccountManagementDataActions.requestAccountDetails({ accountId: selectedLinkedAccountId }));\n dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId: selectedLinkedAccountId }));\n } else {\n dispatch(AccountManagementDataActions.requestAccountDetails({ accountId }));\n dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId }));\n }\n }\n }, [dispatch, accountId, updateData, areDetailsLoaded, selectedLinkedAccountId]);\n\n const handleClick = (event: any) => {\n event.preventDefault();\n switch (event.target.id) {\n case 'financialInformation':\n setAssets(event.target.id);\n setShowAssetUpdate(true);\n break;\n case 'tradeExperience':\n setUpdateType(event.target.id);\n setShowExperienceUpdate(true);\n break;\n case 'suitability':\n setShowSuitabilityUpdate(true);\n break;\n case 'tradeGoalType':\n setShowTradeGoalUpdate(true);\n break;\n case 'flexibilityType':\n setShowFlexibilityTypeUpdate(true);\n break;\n default:\n break;\n }\n };\n\n const fields = useMemo(() => {\n let fieldList: DetailField[] = [];\n if (accountManagementDetails) {\n fieldList = [\n ...fieldList,\n {\n Value: () => (\n <>\n Financial Information{' '}\n \n \n ),\n className: 'fields-title',\n },\n {\n Value: () => (\n <>\n Trade Experience{' '}\n \n \n ),\n className: 'fields-title',\n },\n\n {\n Value: () => (\n <>\n Annual Income\n\n {formatIncome(annualIncome)}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Bonds\n Years Trading:{' '}\n {formatYearsTrading(bonds.years)}{' '}\n {bonds.tradesPerYear && (\n <>\n
    \n Trades per Year:{' '}\n {formatTradesPerYear(bonds.tradesPerYear)}\n \n )}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Total Net Worth\n {formatIncome(totalNetWorth)}{' '}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Options\n Years Trading:{' '}\n {formatYearsTrading(options.years)}{' '}\n {options.tradesPerYear && (\n <>\n
    \n Trades per Year:{' '}\n {formatTradesPerYear(options.tradesPerYear)}\n \n )}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Liquid Net Worth\n {formatIncome(liquidNetWorth)}{' '}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Stocks\n Years Trading:{' '}\n {formatYearsTrading(stocks.years)}{' '}\n {stocks.tradesPerYear && (\n <>\n
    \n Trades per Year:{' '}\n {formatTradesPerYear(stocks.tradesPerYear)}\n \n )}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Tax Bracket\n\n {formatTaxBracket(bracket)}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Commodities\n Years Trading:{' '}\n {formatYearsTrading(commodities.years)}{' '}\n {commodities.tradesPerYear && (\n <>\n
    \n Trades per Year:{' '}\n {formatTradesPerYear(commodities.tradesPerYear)}{' '}\n \n )}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Investment Horizon\n {horizon ? horizon : 'N/A'}{' '}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Margins\n Years Trading:{' '}\n {formatYearsTrading(margins.years)}\n {margins.tradesPerYear && (\n <>\n
    \n Trades per Year:{' '}\n {formatTradesPerYear(margins.tradesPerYear)}\n \n )}\n \n ),\n },\n\n { Value: () => null },\n ];\n }\n return fieldList;\n }, [\n annualIncome,\n totalNetWorth,\n liquidNetWorth,\n investmentObjectiveType,\n risk,\n bracket,\n horizon,\n liquidity,\n bonds,\n options,\n stocks,\n address,\n phone,\n ]);\n\n const suitabilityFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n if (accountManagementDetails) {\n fieldList = [\n ...fieldList,\n {\n Value: () => (\n <>\n Suitability Information{' '}\n \n \n ),\n className: 'fields-title',\n },\n {\n Value: () => (\n <>\n Account Details\n \n ),\n className: 'fields-title',\n },\n {\n Value: () => (\n <>\n Investment Objective\n \n {investmentObjectiveType\n ? investmentObjectiveType.replace(/([A-Z])/g, ' $1').trim()\n : 'No Investment Objective Type Found'}\n {' '}\n \n ),\n },\n {\n Value: () => (\n <>\n \n Approved Trade Level{' '}\n \n \n \n {tradeGoalType ? formatTradeGoalType(tradeGoalType) : 'No Trade Goal Type Found'}\n {' '}\n
    \n {pendingTradeLevelUpdates && pendingTradeLevelUpdates.length > 0 && (\n \n Update Request Pending Admin Review\n
    \n \n {dayjs(pendingTradeLevelUpdates[pendingTradeLevelUpdates.length - 1].createDate).format(\n 'MM/DD/YYYY - hh:mm A'\n )}\n \n
    \n )}\n \n ),\n },\n {\n Value: () => (\n <>\n Risk Tolerance\n {risk ? risk : 'N/A'}{' '}\n \n ),\n },\n {\n Value: () => (\n <>\n \n Account Type{' '}\n \n \n\n \n {flexibilityType ? flexibilityType.replace(/([A-Z])/g, ' $1').trim() : 'No Flexibility Type Found'}\n \n {pendingFlexabilityUpdates && pendingFlexabilityUpdates.length > 0 && (\n <>\n
    \n \n Update Request Pending Admin Review\n
    \n \n {dayjs(pendingFlexabilityUpdates[pendingFlexabilityUpdates.length - 1].createDate).format(\n 'MM/DD/YYYY - hh:mm A'\n )}\n \n
    \n \n )}\n \n ),\n },\n {\n Value: () => (\n <>\n Liquidity Preference\n\n \n {liquidity ? liquidity.replace(/([A-Z])/g, ' $1').trim() : 'No Liquidity Preference Found'}\n \n\n {pendingSuitabilityUpdates && pendingSuitabilityUpdates.length > 0 && (\n <>\n
    \n
    \n \n Update Request Pending Admin Review\n
    \n \n {dayjs(pendingSuitabilityUpdates[pendingSuitabilityUpdates.length - 1].createDate).format(\n 'MM/DD/YYYY - hh:mm A'\n )}\n \n
    \n \n )}\n \n ),\n },\n ];\n }\n\n return fieldList;\n }, [\n liquidity,\n tradeGoalType,\n risk,\n flexibilityType,\n investmentObjectiveType,\n pendingAccountUpdates,\n pendingTradeLevelUpdates,\n pendingFlexabilityUpdates,\n pendingSuitabilityUpdates,\n ]);\n\n if (!areDetailsLoaded || isFetching || !accountManagementDetails) return ;\n\n return (\n <>\n
    \n \n
    \n
    \n \n
    \n \n \n \n \n \n \n );\n};\n","import React, { useCallback } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n BooleanToggleType,\n AllBooleanToggleTypes,\n IndividualRepresentationsUpdateValueProps,\n} from '@tradingblock/types';\nimport { FormGroup, Modal, StepperField, TextboxField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getRequiredError } from './Validation';\nimport { formatBoolean } from '../../../utilities/accountManagement';\n\nexport const IndividualRepresentationsUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n accountHolderIndex: number;\n}> = ({ show, toggleModal, accountHolderIndex }) => {\n const dispatch = useDispatch();\n\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n\n const initialIndividualRepresentationsValues: IndividualRepresentationsUpdateValueProps = {\n stakeholder: null,\n disclosuresStakeholderTickerSymbol: '',\n disclosuresGovOfficialImmediateFamily: '',\n irsWithholding: null,\n govOfficial: null,\n disclosuresGovOfficialPoliticalOrg: '',\n };\n\n const onValidate = (values: IndividualRepresentationsUpdateValueProps) => {\n const {\n stakeholder,\n disclosuresGovOfficialImmediateFamily,\n disclosuresGovOfficialPoliticalOrg,\n disclosuresStakeholderTickerSymbol,\n irsWithholding,\n govOfficial,\n } = values;\n\n if (stakeholder === 'yes' && !disclosuresStakeholderTickerSymbol) {\n return {\n [`disclosuresStakeholderTickerSymbol`]: getRequiredError(disclosuresStakeholderTickerSymbol),\n [`stakeholder`]: getRequiredError(stakeholder),\n [`irsWithholding`]: getRequiredError(irsWithholding),\n [`govOfficial`]: getRequiredError(govOfficial),\n [`disclosuresGovOfficialImmediateFamily`]: getRequiredError(disclosuresGovOfficialImmediateFamily),\n [`disclosuresGovOfficialPoliticalOrg`]: getRequiredError(disclosuresGovOfficialPoliticalOrg),\n };\n }\n\n if (govOfficial === 'yes' && !disclosuresGovOfficialImmediateFamily && !disclosuresGovOfficialPoliticalOrg) {\n return {\n [`disclosuresGovOfficialImmediateFamily`]: getRequiredError(disclosuresGovOfficialImmediateFamily),\n [`disclosuresGovOfficialPoliticalOrg`]: getRequiredError(disclosuresGovOfficialPoliticalOrg),\n [`disclosuresStakeholderTickerSymbol`]: getRequiredError(disclosuresStakeholderTickerSymbol),\n [`stakeholder`]: getRequiredError(stakeholder),\n [`irsWithholding`]: getRequiredError(irsWithholding),\n [`govOfficial`]: getRequiredError(govOfficial),\n };\n }\n\n if (!stakeholder || !irsWithholding || !govOfficial) {\n return {\n [`stakeholder`]: getRequiredError(stakeholder),\n [`irsWithholding`]: getRequiredError(irsWithholding),\n [`govOfficial`]: getRequiredError(govOfficial),\n [`disclosuresGovOfficialImmediateFamily`]: getRequiredError(disclosuresGovOfficialImmediateFamily),\n [`disclosuresGovOfficialPoliticalOrg`]: getRequiredError(disclosuresGovOfficialPoliticalOrg),\n [`disclosuresStakeholderTickerSymbol`]: getRequiredError(disclosuresStakeholderTickerSymbol),\n };\n }\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const {\n stakeholder,\n disclosuresStakeholderTickerSymbol,\n disclosuresGovOfficialImmediateFamily,\n disclosuresGovOfficialPoliticalOrg,\n irsWithholding,\n govOfficial,\n } = values;\n\n let updateValues = {\n item: 'Disclosures',\n accountHolder: {\n disclosures: {\n stakeholder: formatBoolean(stakeholder),\n govOfficial: formatBoolean(govOfficial),\n irsWithholding: formatBoolean(irsWithholding),\n },\n disclosuresStakeholderTickerSymbol,\n disclosuresGovOfficialImmediateFamily,\n disclosuresGovOfficialPoliticalOrg,\n },\n holder: accountHolderIndex,\n };\n\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId: accountId, request: updateValues }));\n\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, values, resetForm }) => (\n toggleModal()} show={show}>\n \n Financial Information Update Request\n \n\n \n
    \n

    Individual Representations

    \n

    Are you A 10% shareholder, director, and/or policymaker of a publicly-owned company?

    \n \n \n {values.stakeholder === BooleanToggleType.Yes && (\n \n )}\n \n

    \n Are you a current or former senior public official (US or foreign), or immediate family relation to\n such?\n

    \n \n \n {values.govOfficial === BooleanToggleType.Yes && (\n <>\n \n\n \n \n )}\n \n

    Are you notified by the IRS that I am subject to backup withholding?

    \n \n \n \n
    \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useState, useMemo, useCallback, useEffect } from 'react';\nimport { Field } from 'formik';\nimport _ from 'lodash';\nimport { DateModel } from '@tradingblock/types';\nimport {\n BaseFieldProps,\n FloatingLabelWrapper,\n FloatingLabelState,\n SelectDropdownField,\n Text,\n isFieldValueFilled,\n} from '@tradingblock/components';\nimport dayjs from 'dayjs';\n\ninterface DateFieldProps extends BaseFieldProps {}\n\nexport const isDateFilled = (value: DateModel | null | undefined) => {\n return (\n !!value && (isFieldValueFilled(value.month) || isFieldValueFilled(value.day) || isFieldValueFilled(value.year))\n );\n};\n\nexport const getDatePartOptions = (part: keyof DateModel, forPastDates?: boolean) => {\n const min = part === 'year' ? (forPastDates ? 1900 : dayjs().year()) : 1;\n const max = part === 'year' ? (forPastDates ? dayjs().year() : 2030) : part === 'day' ? 31 : 12;\n const options = _.map(_.range(min, max + 1), v => v);\n if (part === 'year' && forPastDates) {\n return _.reverse(options);\n }\n return options;\n};\n\nexport const DateField: React.FC = ({\n form,\n id,\n disabled,\n defaultLabelId,\n controlledLabel,\n onLabelStateChange,\n}) => {\n const { values, touched, errors, submitCount } = form;\n const value = useMemo(() => _.get(values, id), [values, id]);\n const error = _.get(touched, id) ? _.pickBy(errors, (err, key) => err && _.startsWith(key, id)) : undefined;\n const forPastDates = useMemo(() => _.endsWith(id, 'dateOfBirth') || _.endsWith(id, 'CreatedDate'), [id]);\n const [floatingLabelState, setFloatingLabelState] = useState({ isFilled: isDateFilled(value) });\n const updateFloatingLabelState = useCallback(\n (state: FloatingLabelState) => {\n setFloatingLabelState(state);\n if (onLabelStateChange) {\n onLabelStateChange(state);\n }\n },\n [onLabelStateChange]\n );\n useEffect(() => {\n if (!controlledLabel) {\n updateFloatingLabelState({ isFilled: isDateFilled(value), hasFocus: floatingLabelState.hasFocus });\n }\n }, [value, controlledLabel, floatingLabelState.hasFocus, updateFloatingLabelState]);\n const handleLabelStateChange = (state: FloatingLabelState) => {\n updateFloatingLabelState({\n isFilled: isDateFilled(value),\n hasFocus: !_.isUndefined(state.hasFocus) ? state.hasFocus : floatingLabelState.hasFocus,\n });\n };\n const getFieldProps = (key: keyof DateModel) => {\n return {\n component: SelectDropdownField,\n id: `${id}.${key}`,\n options: getDatePartOptions(key, forPastDates),\n disabled,\n defaultLabelId: defaultLabelId && `${defaultLabelId}.${key}`,\n optionsDefaultLabelId: key,\n useRawOptions: key === 'day' || key === 'year',\n controlledLabel: true,\n onLabelStateChange: handleLabelStateChange,\n };\n };\n\n return (\n <>\n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n {!_.isEmpty(error) && !!submitCount && (\n \n \n \n )}\n \n );\n};\n","import React, { useCallback, useState } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n BooleanToggleType,\n AllBooleanToggleTypes,\n TradeAuthUpdateValueProps,\n AllTradeAuthorizationTypes,\n TradeAuthorizationType,\n getGroupedCountryOptions,\n Country,\n AllStates,\n AllPhoneTypes,\n EmploymentTypes,\n EmploymentType,\n ClearerType,\n} from '@tradingblock/types';\nimport {\n FormGroup,\n Modal,\n SelectDropdownField,\n StepperField,\n TextboxField,\n Text,\n ExternalLink,\n} from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getInvalidError, getMismatchError, getRequiredError, USPSErrors, uspsVerification } from './Validation';\nimport { formatBoolean } from '../../../utilities/accountManagement';\nimport { DateField } from '../../../components/form/DateField';\nimport { useClearer } from '../../../hooks/useClearer';\nimport { cleanDateModel } from '../../../utilities/date';\n\nexport const TradeAuthUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n const dispatch = useDispatch();\n\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const [showToolTip, setShowToolTip] = React.useState(false);\n\n const handleToolTipClick = (e: any) => {\n e.preventDefault();\n setShowToolTip(!showToolTip);\n };\n\n // Trade Authorization Links\n const clearer = useClearer();\n const origin = useStateSelector(s => s.auth.origin);\n const siteGroup = origin === 'tb' ? 'tradingblock' : 'moneyblock';\n const apexTradeAuthLinks = {\n limited: `https://www.${siteGroup}.com/docs/Agreements/Apex_Limited_Trading_Authorization_221206.pdf`,\n full: `https://www.${siteGroup}.com/docs/Agreements/Apex_Full_Trading_Authorization_221206.pdf`,\n };\n // TODO: Confirm these links are accurate\n const rqdTradeAuthLinks = {\n limited: `https://ny4staging.tradingblock.com/RestHub/Documents/Agreement/rqdLimitedTradingAuthorization`,\n full: `https://ny4staging.tradingblock.com/RestHub/Documents/Agreement/rqdPowerOfAttorney`,\n };\n const links = clearer === ClearerType.Apex ? apexTradeAuthLinks : rqdTradeAuthLinks;\n\n const getLinkDescription = (tradeAuthorizationType: TradeAuthorizationType) => {\n if (tradeAuthorizationType === TradeAuthorizationType.Limited) {\n return clearer === ClearerType.Apex ? 'Limited Trading Authorization' : 'RQD Limited Trading Authorization';\n }\n if (tradeAuthorizationType === TradeAuthorizationType.Full) {\n return clearer === ClearerType.Apex\n ? 'Full Trading Authorization'\n : 'RQD Fee Payment and Full Trading Authorization';\n }\n };\n\n const [clickedAgreements, setClickedAgreements] = useState([]);\n\n // Log clicked agreements for disable/enable of accept/reject buttons\n const onClickedAgreementLink = useCallback(\n (agreement: string) => {\n setClickedAgreements([...clickedAgreements, agreement]);\n },\n [clickedAgreements]\n );\n\n const getAgreementDisabledOptions = useCallback(\n (agreement: string) => {\n // if haven't clicked agreement, disable toggle buttons\n if (!_.includes(clickedAgreements, agreement)) {\n return AllBooleanToggleTypes;\n }\n return undefined;\n },\n [clickedAgreements]\n );\n\n //TODO: Update this to use the new data structure once Toby has completed account management updates for trade auth\n const intitialTradeAuthUpdateValues: TradeAuthUpdateValueProps = {\n tradeAuthorization: undefined,\n address: {\n address1: '',\n address2: '',\n city: '',\n state: '',\n country: '',\n postalCode: '',\n },\n citizenshipCountry: '',\n dateOfBirth: '',\n disclosures: {\n industryEmployed: undefined,\n stakeholder: undefined,\n },\n disclosuresIndustryEmployedFirmName: undefined,\n disclosuresStakeholderTickerSymbol: undefined,\n email: '',\n employer: '',\n employmentType: '',\n firstName: '',\n middleInitial: '',\n foreignTaxIdCountry: '',\n foreignTaxIdNumber: '',\n jobPosition: '',\n lastName: '',\n suffix: '',\n phones: [\n {\n type: '',\n phoneNumber: '',\n },\n ],\n ssnSecret: '',\n type: '',\n signedName: '',\n tradeAuthAgreement: undefined,\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const agreementsObject = () => {\n if (values.type === TradeAuthorizationType.Limited) {\n return clearer === ClearerType.Apex\n ? {\n limitedTradingAuthorization: formatBoolean(values.tradeAuthAgreement),\n }\n : {\n rqdLimitedTradingAuthorization: formatBoolean(values.tradeAuthAgreement),\n };\n }\n if (values.type === TradeAuthorizationType.Full) {\n return {\n fullTradingAuthorization: formatBoolean(values.tradeAuthAgreement),\n };\n }\n };\n let updateValues = {\n item: 'TradeAuthorization',\n agreements: agreementsObject(),\n tradingAuthorization: {\n address: {\n address1: values.address.address1,\n address2: values.address.address2 || undefined,\n city: values.address.city,\n state: values.address.state,\n country: values.address.country,\n postalCode: values.address.postalCode,\n },\n citizenshipCountry: values.citizenshipCountry,\n dateOfBirth: cleanDateModel(values.dateOfBirth),\n disclosures: {\n industryEmployed: formatBoolean(values.disclosures.industryEmployed) || undefined,\n stakeholder: formatBoolean(values.disclosures.stakeholder) || undefined,\n },\n disclosuresIndustryEmployedFirmName: values.disclosuresIndustryEmployedFirmName || undefined,\n disclosuresStakeholderTickerSymbol: values.disclosuresStakeholderTickerSymbol || undefined,\n email: values.email,\n employer: values.employer || undefined,\n employmentType: values.employmentType,\n firstName: values.firstName,\n foreignTaxIdCountry: values.foreignTaxIdCountry || undefined,\n foreignTaxIdNumber: values.foreignTaxIdNumber || undefined,\n jobPosition: values.jobPosition,\n lastName: values.lastName,\n phones: [\n {\n type: values.phones[0].type,\n phoneNumber: values.phones[0].phoneNumber,\n },\n ],\n ssnSecret: values.ssnSecret,\n type: values.type,\n },\n };\n\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId, request: updateValues }));\n\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n const onValidate = (values: TradeAuthUpdateValueProps) => {\n // signed name match\n const { signedName, firstName, lastName } = values;\n const nameMatch = `${firstName} ${lastName}` === signedName;\n\n // TODO: Move USPS Validation to a separate file\n // USPS Address Verification\n // Checks if US address is valid and if not, returns the suggested address\n const { tradeAuthorization, type, address } = values;\n const { address1, city, state, country, postalCode } = address;\n let uspsResponse;\n let isValidAddress;\n const headerValue = 'tradeAuth';\n const stateOrPostalCodeRequired = country === Country.UnitedStatesOfAmerica;\n\n // Check to see if response is already in local storage\n const uspsResponseFromStorage = localStorage.getItem(`addressVerification-${headerValue}`);\n\n // If response is in local storage, parse it and check if values.address is valid\n if (uspsResponseFromStorage && uspsResponseFromStorage !== 'undefined') {\n uspsResponse = JSON.parse(uspsResponseFromStorage);\n const { city, state, zip5, error } = uspsResponse;\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n\n // Compare values.address to response from USPS\n const isCityEqual = _.toLower(startCaseCity) === _.toLower(values.address.city);\n const isZipEqual = zip5 === values.address.postalCode;\n const isStateEqual = state === values.address.state;\n const isAddressCorrect = !error && isCityEqual && isZipEqual && isStateEqual;\n\n // If values.address is valid, set isValidAddress to true\n isAddressCorrect ? (isValidAddress = true) : (isValidAddress = false);\n }\n\n // Once most address information is entered, if values.address is not valid, call USPS verification on changes to values.address and set response to local storage\n if (address1 && city && state && country === Country.UnitedStatesOfAmerica && !isValidAddress) {\n const getUSPS = async () => {\n await new Promise(resolve => setTimeout(resolve, 100));\n return await uspsVerification(values.address);\n };\n\n getUSPS().then(result => {\n localStorage.setItem(`addressVerification-${headerValue}`, JSON.stringify(result));\n });\n }\n\n if (uspsResponse) {\n const { city, state, zip5, error } = uspsResponse;\n\n // If USPS returns an error, return error message\n if (\n error &&\n values.address.address1 &&\n values.address.city &&\n values.address.state &&\n values.address.postalCode\n ) {\n return {\n [`address.postalCode`]: `${error.description.trim()} Please review the entered address.`,\n [`address.city`]: `${error.description.trim()} Please review the entered address.`,\n [`address.state`]: `${error.description.trim()} Please review the entered address.`,\n [`address.address1`]: `${error.description.trim()} Please review the entered address.`,\n };\n }\n\n // If the user changes address1 or the city, remove the response from local storage in order to call USPS again\n if (!values.address.address1 || !values.address.city) {\n localStorage.setItem(`addressVerification-${headerValue}`, 'undefined');\n }\n\n // Compare the city, state, and zip5 from the response to the values.address and provide necessary error messages if they do not match along with standard validation\n if (city && state && zip5) {\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual = _.toLower(startCaseCity) === _.toLower(values.address.city);\n const isZipEqual = zip5 === values.address.postalCode;\n const isStateEqual = state === values.address.state;\n\n const errors: USPSErrors = {\n [`address.country`]: getRequiredError(values.address.country),\n [`address.address1`]: getRequiredError(values.address.address1),\n ['address.postalCode']:\n getRequiredError(stateOrPostalCodeRequired ? values.address.postalCode : true) || !isZipEqual\n ? `Please verify the zip code. USPS Provided Zip Code: ${zip5}`\n : undefined,\n ['address.city']:\n getRequiredError(values.address.city) || !isCityEqual\n ? `Please verify the city. USPS Provided City: ${startCaseCity}`\n : undefined,\n ['address.state']:\n getRequiredError(stateOrPostalCodeRequired ? values.address.state : true) || !isStateEqual\n ? `Please verify the state. USPS Provided State: ${state}`\n : undefined,\n [`type`]: getRequiredError(type),\n [`citizenshipCountry`]: getRequiredError(values.citizenshipCountry),\n [`dateOfBirth`]: getRequiredError(values.dateOfBirth),\n [`email`]: getRequiredError(values.email),\n [`employer`]: getRequiredError(values.employmentType === EmploymentType.Employed ? values.employer : true),\n [`employmentType`]: getRequiredError(values.employmentType),\n [`firstName`]: getRequiredError(values.firstName),\n [`jobPosition`]: getRequiredError(\n values.employmentType === EmploymentType.Employed ? values.jobPosition : true\n ),\n [`lastName`]: getRequiredError(values.lastName),\n [`phones[0].type`]: getRequiredError(values.phones[0].type),\n [`phones[0].phoneNumber`]: getRequiredError(values.phones[0].phoneNumber),\n [`ssnSecret`]: getRequiredError(values.ssnSecret),\n [`signedName`]: getRequiredError(values.signedName) || getMismatchError(nameMatch),\n [`foreignTaxIdCountry`]: getRequiredError(\n values.citizenshipCountry !== Country.UnitedStatesOfAmerica ? values.foreignTaxIdCountry : true\n ),\n [`foreignTaxIdNumber`]: getRequiredError(\n values.citizenshipCountry !== Country.UnitedStatesOfAmerica ? values.foreignTaxIdNumber : true\n ),\n [`disclosures.industryEmployed`]: getRequiredError(\n values.type === TradeAuthorizationType.Full ? values.disclosures.industryEmployed : true\n ),\n [`disclosures.stakeholder`]: getRequiredError(\n values.type === TradeAuthorizationType.Full ? values.disclosures.stakeholder : true\n ),\n [`disclosuresIndustryEmployedFirmName`]: getRequiredError(\n values.type === TradeAuthorizationType.Full && values.disclosures.industryEmployed === 'yes'\n ? values.disclosuresIndustryEmployedFirmName\n : true\n ),\n [`disclosuresStakeholderTickerSymbol`]: getRequiredError(\n values.type === TradeAuthorizationType.Full && values.disclosures.stakeholder === 'yes'\n ? values.disclosuresStakeholderTickerSymbol\n : true\n ),\n [`tradeAuthAgreement`]:\n getRequiredError(values.tradeAuthAgreement) || values.tradeAuthAgreement === BooleanToggleType.No\n ? getInvalidError(false)\n : undefined,\n };\n\n Object.keys(errors).forEach(key => (errors[key] === undefined ? delete errors[key] : {}));\n\n return errors;\n }\n }\n\n if (!tradeAuthorization) {\n return {\n [`tradeAuthorization`]: getRequiredError(tradeAuthorization),\n };\n }\n\n if (tradeAuthorization === 'yes') {\n const errors = {\n [`type`]: getRequiredError(type),\n [`address.address1`]: getRequiredError(values.address.address1),\n [`address.city`]: getRequiredError(values.address.city),\n [`address.state`]: getRequiredError(values.address.state),\n [`address.country`]: getRequiredError(values.address.country),\n [`address.postalCode`]: getRequiredError(values.address.postalCode),\n [`citizenshipCountry`]: getRequiredError(values.citizenshipCountry),\n [`dateOfBirth`]: getRequiredError(values.dateOfBirth),\n [`email`]: getRequiredError(values.email),\n [`employer`]: getRequiredError(values.employmentType === EmploymentType.Employed ? values.employer : true),\n [`employmentType`]: getRequiredError(values.employmentType),\n [`firstName`]: getRequiredError(values.firstName),\n [`jobPosition`]: getRequiredError(\n values.employmentType === EmploymentType.Employed ? values.jobPosition : true\n ),\n // middle initial is not required but should not be more than 1 character\n [`middleInitial`]:\n values.middleInitial && values.middleInitial.length > 1 ? 'Middle initial must be 1 character or less' : null,\n [`lastName`]: getRequiredError(values.lastName),\n // if suffix is present, it should be only characters with a possible \".\" or \"-\"\n [`suffix`]: values.suffix && !/^[a-zA-Z .-]*$/.test(values.suffix) ? 'Suffix must be only letters' : null,\n [`phones[0].type`]: getRequiredError(values.phones[0].type),\n [`phones[0].phoneNumber`]: getRequiredError(values.phones[0].phoneNumber),\n [`ssnSecret`]: getRequiredError(values.ssnSecret),\n [`signedName`]: getRequiredError(values.signedName) || getMismatchError(nameMatch),\n [`foreignTaxIdCountry`]: getRequiredError(\n values.citizenshipCountry !== Country.UnitedStatesOfAmerica ? values.foreignTaxIdCountry : true\n ),\n [`foreignTaxIdNumber`]: getRequiredError(\n values.citizenshipCountry !== Country.UnitedStatesOfAmerica ? values.foreignTaxIdNumber : true\n ),\n [`disclosures.industryEmployed`]: getRequiredError(\n values.type === TradeAuthorizationType.Full ? values.disclosures.industryEmployed : true\n ),\n [`disclosures.stakeholder`]: getRequiredError(\n values.type === TradeAuthorizationType.Full ? values.disclosures.stakeholder : true\n ),\n [`disclosuresIndustryEmployedFirmName`]: getRequiredError(\n values.type === TradeAuthorizationType.Full && values.disclosures.industryEmployed === 'yes'\n ? values.disclosuresIndustryEmployedFirmName\n : true\n ),\n [`disclosuresStakeholderTickerSymbol`]: getRequiredError(\n values.type === TradeAuthorizationType.Full && values.disclosures.stakeholder === 'yes'\n ? values.disclosuresStakeholderTickerSymbol\n : true\n ),\n [`tradeAuthAgreement`]:\n getRequiredError(values.tradeAuthAgreement) ||\n (values.tradeAuthAgreement !== BooleanToggleType.Yes && getInvalidError(false)),\n };\n\n const cleanedErrors = _.omitBy(errors, _.isNil);\n\n return _.omitBy(errors, _.isNil);\n }\n };\n\n return (\n \n {({ handleSubmit, values, errors, resetForm }) => (\n toggleModal()} show={show}>\n \n Trade Authorization Agent Update\n \n \n

    Trade authorization or agent

    \n

    Do you want to grant trading authorization to another party?

    \n
    \n \n \n \n {values.tradeAuthorization === BooleanToggleType.Yes && (\n <>\n

    \n Do you wish to grant your agent limited or full trading authorization?{' '}\n \n

    \n {showToolTip && (\n

    \n Note: Limited trading authorization grants your authorized agent the ability to trade in this\n account. Full trading authorization grants the authorized agent the ability to trade and move\n funds in this account.\n

    \n )}\n \n \n \n {!_.isEmpty(values.type) && (\n <>\n

    Authorized Agent Personal Information

    \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 \n {values.address.country === Country.UnitedStatesOfAmerica && (\n \n )}\n {values.address.country !== Country.UnitedStatesOfAmerica && values.address.country !== '' && (\n \n )}\n \n \n \n \n \n \n \n \n \n \n \n {values.citizenshipCountry === Country.UnitedStatesOfAmerica && (\n \n }} />}\n type=\"password\"\n allowUnmask={true}\n />\n \n )}\n {values.citizenshipCountry !== Country.UnitedStatesOfAmerica && (\n <>\n \n \n \n \n \n \n \n )}\n\n

    Authorized Agent Employment Information

    \n \n \n \n {values.employmentType === EmploymentType.Employed && (\n <>\n \n \n \n \n \n \n \n )}\n\n {values.type === TradeAuthorizationType.Full && (\n <>\n

    Authorized Agent Disclosures

    \n

    \n Is the agent employed by or a member of a registered broker-dealer, securities or futures\n exchange, or securities industry regulatory body (e.g., FINRA, NFA)?\n

    \n \n \n \n {values.disclosures && values.disclosures.industryEmployed === BooleanToggleType.Yes && (\n \n \n \n )}\n

    \n Is the agent a 10% shareholder, director, and/or policy maker of a publicly-owned company?\n

    \n \n \n \n {values.disclosures && values.disclosures.stakeholder === BooleanToggleType.Yes && (\n \n \n \n )}\n \n )}\n

    Authorized Party Signature

    \n \n \n \n

    \n onClickedAgreementLink('tradeAuthorization')}\n >\n {getLinkDescription(values.type as TradeAuthorizationType)}\n {' '}\n

    \n \n \n \n \n )}\n \n )}\n \n
    \n \n {\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useCallback, useState } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n BooleanToggleType,\n AllBooleanToggleTypes,\n IndustryEmployedUpdateValueProps,\n AccountManagementDocuments,\n} from '@tradingblock/types';\nimport { FormGroup, Modal, StepperField, Text, TextboxField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getRequiredError, getUploadError } from './Validation';\nimport { formatBoolean } from '../../../utilities/accountManagement';\nimport { MiscUploadFileField } from '../../../components/form/UploadMiscFile';\nimport { useClearer } from '../../../hooks/useClearer';\n\n/**\n * Modal for updating a user's FINRA affiliation disclosure\n *\n *\n * @param {boolean} show Boolean value used for showing/hiding modal\n * @param {void} toggleModal Function to toggle show from true or false\n * @param {number} accountHolderIndex request maker's index within accountHolders array, specifies the account holder update is for\n * @returns {JSX.Element}\n *\n */\n\nexport const IndustryEmployedUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n accountHolderIndex: number;\n}> = ({ show, toggleModal, accountHolderIndex }) => {\n // Used Hooks\n const dispatch = useDispatch();\n\n // State Selectors\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const { accountHolders } = accountManagementDetails;\n const clearer = useClearer();\n\n // Used States\n const [uploadId, setUploadId] = useState();\n\n const handleDocumentUpload = (documentId: number) => {\n setUploadId(documentId);\n };\n\n /**\n * IndustryEmployedUpdateValueProps\n *\n * @property {BooleanToggleType | undefined} industryEmployed User's Yes/No response to FINRA affiliation\n * @property {string} disclosuresIndustryEmployedFirmName If user is affiliated, the name of user employer\n */\n\n const initialIndustryEmployedUpdateValues: IndustryEmployedUpdateValueProps = {\n industryEmployed: undefined,\n disclosuresIndustryEmployedFirmName: '',\n };\n\n // On form submission set update values accordingdly, dispatch update request, and resetForm/toggleModal\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { industryEmployed, disclosuresIndustryEmployedFirmName } = values;\n\n let updateValues = {\n item: 'IndustryEmployed',\n accountHolder: {\n disclosures: {\n industryEmployed: formatBoolean(industryEmployed),\n },\n disclosuresIndustryEmployedFirmName,\n },\n holder: accountHolderIndex,\n uploadedDocuments: [\n {\n accountHolder: accountHolderIndex,\n documentId: uploadId,\n documentName: AccountManagementDocuments.AffiliateApproval,\n },\n ],\n };\n\n // If update value is equal to value already on record, resetForm/toggleModal\n if (formatBoolean(industryEmployed) === accountHolders[accountHolderIndex].disclosures.industryEmployed) {\n resetForm();\n toggleModal();\n return;\n }\n dispatch(\n AccountManagementDataActions.requestMakeAccountUpdate({\n accountId,\n request: updateValues,\n })\n );\n // Set timeout to dispatch requests for user account information following update request\n // TODO: Develop better success/status handling for update requests\n\n resetForm();\n toggleModal();\n },\n\n [toggleModal, uploadId]\n );\n // Form validation prior to submission, ensures all disclosures are answered and necessary docs are gathered\n const onValidate = (values: IndustryEmployedUpdateValueProps) => {\n const { industryEmployed, disclosuresIndustryEmployedFirmName } = values;\n\n if (!industryEmployed) {\n return {\n [`industryEmployed`]: getRequiredError(industryEmployed),\n [`disclosuresIndustryEmployedFirmName`]: getRequiredError(disclosuresIndustryEmployedFirmName),\n };\n }\n\n if (industryEmployed === 'yes' && !disclosuresIndustryEmployedFirmName) {\n return {\n [`disclosuresIndustryEmployedFirmName`]: getRequiredError(disclosuresIndustryEmployedFirmName),\n };\n }\n\n if (industryEmployed === 'yes' && !uploadId) {\n return {\n [`uploadedDocuments`]: getUploadError(uploadId),\n };\n }\n };\n\n return (\n \n {({ handleSubmit, values, errors, submitCount, resetForm }) => (\n toggleModal()} show={show}>\n \n Industry Employed Update Request\n \n \n

    \n Are you employed by or a member of a registered broker-dealer, securities or futures exchange, or\n securities industry regulatory body (e.g., FINRA, NFA)?\n

    \n \n \n \n\n {values.industryEmployed === BooleanToggleType.Yes && (\n <>\n \n \n \n \n \n {errors.uploadedDocuments && !!submitCount && !uploadId && (\n <>\n \n \n \n \n )}\n \n

    \n Since you stated you are employed by or a member of a registered broker-dealer, securities or futures\n exchange, or securities industry regulatory body (e.g., FINRA, NFA), a 3210 Form Letter from your\n employer is required to process your update.\n

    \n \n )}\n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useCallback } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport { BooleanToggleType, AllBooleanToggleTypes, AccountDisclosuresUpdateValueProps } from '@tradingblock/types';\nimport { FormGroup, Modal, StepperField, TextboxField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getRequiredError } from './Validation';\nimport { formatBoolean } from '../../../utilities/accountManagement';\n\nexport const AccountDisclosuresUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n const dispatch = useDispatch();\n\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n\n const initialAccountDisclosuresUpdateValues: AccountDisclosuresUpdateValueProps = {\n foreignBank: undefined,\n foreignFinancialInstitution: undefined,\n foreignShellBank: undefined,\n proprietarySecuritiesAccount: undefined,\n disclosuresForeignBankUSAgent: '',\n };\n\n const onValidate = (values: AccountDisclosuresUpdateValueProps) => {\n const {\n foreignBank,\n foreignShellBank,\n foreignFinancialInstitution,\n proprietarySecuritiesAccount,\n disclosuresForeignBankUSAgent,\n } = values;\n\n if (!foreignBank || !foreignShellBank || !foreignFinancialInstitution || !proprietarySecuritiesAccount) {\n return {\n [`foreignBank`]: getRequiredError(foreignBank),\n [`foreignShellBank`]: getRequiredError(foreignShellBank),\n [`foreignFinancialInstitution`]: getRequiredError(foreignFinancialInstitution),\n [`proprietarySecuritiesAccount`]: getRequiredError(proprietarySecuritiesAccount),\n [`disclosuresForeignBankUSAgent`]: getRequiredError(disclosuresForeignBankUSAgent),\n };\n }\n\n if (foreignBank === 'yes' && !disclosuresForeignBankUSAgent) {\n return {\n [`disclosuresForeignBankUSAgent`]: getRequiredError(disclosuresForeignBankUSAgent),\n };\n }\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const {\n foreignBank,\n foreignShellBank,\n foreignFinancialInstitution,\n proprietarySecuritiesAccount,\n disclosuresForeignBankUSAgent,\n } = values;\n\n let updateValues = {\n item: 'AccountDisclosures',\n accountDisclosures: {\n foreignBank: formatBoolean(foreignBank),\n foreignShellBank: formatBoolean(foreignShellBank),\n foreignFinancialInstitution: formatBoolean(foreignFinancialInstitution),\n proprietarySecuritiesAccount: formatBoolean(proprietarySecuritiesAccount),\n },\n disclosuresForeignBankUSAgent,\n };\n\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId, request: updateValues }));\n\n resetForm();\n toggleModal();\n\n // setTimeout(() => {\n // dispatch(AccountManagementDataActions.requestAccountDetails({ accountId }));\n // dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId }));\n // }, 1000);\n // if (isUpdateLoaded && !isUpdateLoading) {\n // dispatch(AccountManagementDataActions.requestAccountDetails({ accountId }));\n // dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId }));\n\n // }\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, values, resetForm }) => (\n toggleModal()} show={show}>\n \n Account Disclosures Update Request\n \n \n
    \n

    Is this account maintained on behalf of a foreign bank?

    \n \n \n \n {values.foreignBank === BooleanToggleType.Yes && (\n <>\n \n \n \n \n )}\n

    Is this account maintained on behalf of a foreign shell bank?

    \n \n \n \n

    Is this account maintained on behalf of a foreign financial institution?

    \n \n \n \n

    \n Is this account maintained on behalf of a broker or dealer’s proprietary securities account (PAB\n account)?\n

    \n \n \n \n
    \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useCallback } from 'react';\nimport _ from 'lodash';\nimport { useDispatch } from 'react-redux';\nimport { Formik, Field } from 'formik';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { FormGroup, TextboxField, Modal, SelectDropdownField, StepperField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getRequiredError } from './Validation';\nimport { ServiceProfileValueProps, AllIssuerDirectCommunicationTypes } from '@tradingblock/types';\n\nexport const ServiceProfileUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const dispatch = useDispatch();\n\n const initailServiceProfileValues: ServiceProfileValueProps = {\n issuerDirectCommunication: undefined,\n };\n\n const onValidate = (values: ServiceProfileValueProps) => {\n const { issuerDirectCommunication } = values;\n\n if (!issuerDirectCommunication) {\n return {\n [`issuerDirectCommunication`]: getRequiredError(issuerDirectCommunication),\n };\n }\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { issuerDirectCommunication } = values;\n\n const updateValues = {\n item: 'ServiceProfile',\n serviceProfile: {\n issuerDirectCommunication: issuerDirectCommunication,\n },\n };\n\n dispatch(\n AccountManagementDataActions.requestMakeAccountUpdate({\n accountId,\n request: updateValues,\n })\n );\n //TODO: Rework Redux logic surrounding how to display user updates that do not require admin review immdediately\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, resetForm, values }) => (\n toggleModal()} show={show}>\n \n Service Profile Update\n \n \n
    \n

    Issuer Direct Communication

    \n

    \n Unless the applicant objects, under Rule 14b-1(c) of the Securities Exchange Act we are required to\n disclose the issuer of a given security in addition to the name, address and position of customers who\n are the beneficial owners of that issuer's securities. Please indicate below if you do or do not want to\n have your ownership disclosed.\n

    \n \n \n \n
    \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n \n );\n};\n","import React, { useEffect, useState, useMemo } from 'react';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { AccountManagementDataActions } from '../../data/global/actions/AccountManagementActions';\nimport { Loading } from '@tradingblock/components';\nimport { DetailFields, DetailField } from '../../components/basic/DetailFields';\nimport { IndividualRepresentationsUpdate } from './modals/IndividualRepresentations';\nimport { TradeAuthUpdate } from './modals/TradeAuthUpdate';\nimport { IndustryEmployedUpdate } from './modals/IndustryEmployedUpdate';\nimport {\n formatAgentName,\n formatIndustryEmployed,\n formatBooleanForDisplay,\n formatPhoneNumber,\n getAgentPhoneNumbersByType,\n} from '../../utilities/accountManagement';\nimport { AccountDisclosuresUpdate } from './modals/AccountDisclosuresUpdate';\nimport { ServiceProfileUpdate } from './modals/ServiceProfileUpdate';\nimport dayjs from 'dayjs';\nimport { Country, TradeAuthorizationType } from '@tradingblock/types';\nimport { formatDateWithoutTime } from '../../utilities/date';\nimport { RemoveTrustedContactOrTradeAuth } from './modals/RemoveTrustedContactOrTradeAuth';\n\nexport const AccountDisclosures: React.FunctionComponent<{}> = () => {\n const accountId = useStateSelector(s => s.account.accountId);\n const isLoaded = useStateSelector(s => s.accountManagement.accountDetails.isLoaded);\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const isFetching = useStateSelector(s => s.accountManagement.accountManagementDetails.isFetching);\n const updateData = useStateSelector(s => s.accountManagement.update.data);\n\n const {\n accountHolders,\n tradingAuthorization,\n accountDisclosures,\n disclosuresForeignBankUSAgent,\n serviceProfile,\n } = accountManagementDetails;\n\n const {\n foreignBank,\n foreignFinancialInstitution,\n foreignShellBank,\n proprietarySecuritiesAccount,\n } = accountDisclosures;\n\n const { issuerDirectCommunication } = serviceProfile;\n const hasGrantedTradeAuth: boolean = tradingAuthorization !== null;\n const grantedTradeAuthPriorToUpdates: boolean = tradingAuthorization && tradingAuthorization.email === null;\n const agentName = tradingAuthorization && tradingAuthorization.firstName + ' ' + tradingAuthorization.lastName;\n\n // Pending Account Management Update Requests\n const pendingAccountUpdates = useStateSelector(s => s.accountManagement.pendingAccountManagementUpdates.data);\n const pendingIndustryEmployedUpdate =\n pendingAccountUpdates && pendingAccountUpdates.filter(u => u.item === 'IndustryEmployed');\n const pendingServiceProfileUpdates =\n pendingAccountUpdates && pendingAccountUpdates.filter(u => u.item === 'ServiceProfile');\n const selectedLinkedAccountId = useStateSelector(\n s => s.account.selectedLinkedAccount && s.account.selectedLinkedAccount.accountId\n );\n\n const dispatch = useDispatch();\n const [showIndividualRepUpdate, setShowIndividualRepUpdate] = useState(false);\n const [showTradeAuthUpdate, setShowTradeAuthUpdate] = useState(false);\n const [showIndustryEmployedUpdate, setShowIndustryEmployedUpdate] = useState(false);\n const [showAccountDisclosuresUpdate, setShowAccountDisclosuresUpdate] = useState(false);\n const [showServiceProfileUpdate, setShowServiceProfileUpdate] = useState(false);\n const [accountHolderIndex, setAccountHolderIndex] = useState(0);\n const [showRemoveTradeAuth, setShowRemoveTradeAuth] = useState(false);\n\n const getAccountHolderName = (index: number) => {\n if (accountHolders[index].firstName && accountHolders[index].lastName) {\n return `${accountHolders[index].firstName} ${accountHolders[index].middleInitial || ''} ${\n accountHolders[index].lastName\n } ${accountHolders[index].suffix || ''}`;\n }\n return 'Name not found';\n };\n\n useEffect(() => {\n if (!isLoaded && accountId) {\n if (selectedLinkedAccountId) {\n dispatch(AccountManagementDataActions.requestAccountDetails({ accountId: selectedLinkedAccountId }));\n dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId: selectedLinkedAccountId }));\n } else {\n dispatch(AccountManagementDataActions.requestAccountDetails({ accountId }));\n dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId }));\n }\n }\n }, [dispatch, updateData, accountId, isLoaded, selectedLinkedAccountId]);\n\n const handleClick = (event: any) => {\n event.preventDefault();\n switch (event.target.id) {\n case 'tradeAuthorization':\n setShowTradeAuthUpdate(true);\n break;\n case 'industryEmployed-0':\n setAccountHolderIndex(0);\n setShowIndustryEmployedUpdate(true);\n break;\n case 'industryEmployed-1':\n setAccountHolderIndex(1);\n setShowIndustryEmployedUpdate(true);\n break;\n case 'accountDisclosures':\n setShowAccountDisclosuresUpdate(true);\n break;\n case 'individualReps-0':\n setAccountHolderIndex(0);\n setShowIndividualRepUpdate(true);\n break;\n case 'individualReps-1':\n setAccountHolderIndex(1);\n setShowIndividualRepUpdate(true);\n break;\n case 'serviceProfile':\n setShowServiceProfileUpdate(true);\n break;\n case 'removeTradeAuth':\n setShowRemoveTradeAuth(true);\n break;\n default:\n break;\n }\n };\n\n // Toggle Modal Functions\n const toggleIndividualRepUpdate = () => {\n setShowIndividualRepUpdate(!showIndividualRepUpdate);\n };\n\n const toggleTradeAuthUpdate = () => {\n setShowTradeAuthUpdate(!showTradeAuthUpdate);\n };\n\n const toggleIndustryEmployedUpdate = () => {\n setShowIndustryEmployedUpdate(!showIndustryEmployedUpdate);\n };\n\n const toggleAccountDisclosuresUpdate = () => {\n setShowAccountDisclosuresUpdate(!showAccountDisclosuresUpdate);\n };\n\n const toggleServiceProfileUpdate = () => {\n showServiceProfileUpdate ? setShowServiceProfileUpdate(false) : setShowServiceProfileUpdate(true);\n };\n\n const toggleRemoveTradeAuth = () => {\n showRemoveTradeAuth ? setShowRemoveTradeAuth(false) : setShowRemoveTradeAuth(true);\n };\n\n const tradeAuthFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n\n if (accountManagementDetails) {\n fieldList = [\n ...fieldList,\n\n {\n Value: () => (\n <>\n Trade Authorization{' '}\n handleClick(event)}\n hidden={hasGrantedTradeAuth}\n >\n (Update)\n \n \n ),\n className: 'fields-title',\n },\n\n { Value: () => null },\n\n {\n Value: () => (\n <>\n Third Party Trade Authorization Granted\n {hasGrantedTradeAuth ? 'Yes' : 'No'}{' '}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Agent Name\n\n {formatAgentName(agentName, hasGrantedTradeAuth)}\n \n ),\n },\n ];\n }\n\n if (hasGrantedTradeAuth && !grantedTradeAuthPriorToUpdates) {\n fieldList = [\n ...fieldList,\n {\n Value: () => (\n <>\n Trade Authorization Type\n {tradingAuthorization.type}\n \n ),\n },\n {\n Value: () => (\n <>\n Email\n {tradingAuthorization.email}\n \n ),\n },\n {\n Value: () => (\n <>\n Address\n \n {tradingAuthorization.address && tradingAuthorization.address.address1\n ? tradingAuthorization.address.address1\n : 'N/A'}\n \n
    \n {tradingAuthorization.address && tradingAuthorization.address.address2 && (\n <>\n {tradingAuthorization.address.address2}\n
    \n \n )}\n \n {tradingAuthorization.address && tradingAuthorization.address.city\n ? tradingAuthorization.address.city\n : ''}\n ,{' '}\n {tradingAuthorization.address && tradingAuthorization.address.state\n ? tradingAuthorization.address.state\n : ''}{' '}\n {tradingAuthorization.address && tradingAuthorization.address.postalCode\n ? tradingAuthorization.address.postalCode\n : ''}\n \n
    \n \n {tradingAuthorization.address && tradingAuthorization.address.country\n ? tradingAuthorization.address.country\n : 'N/A'}{' '}\n \n \n ),\n },\n {\n Value: () => (\n <>\n Phone Numbers\n \n Home: \n \n {formatPhoneNumber(getAgentPhoneNumbersByType('Home', tradingAuthorization))}\n {' '}\n \n
    \n \n Mobile: \n \n {formatPhoneNumber(getAgentPhoneNumbersByType('Mobile', tradingAuthorization))}\n {' '}\n \n
    \n \n Work: \n \n {formatPhoneNumber(getAgentPhoneNumbersByType('Work', tradingAuthorization))}\n {' '}\n \n \n ),\n },\n {\n Value: () => (\n <>\n Employment Type\n {tradingAuthorization.employmentType}\n \n ),\n },\n {\n Value: () => (\n <>\n Employer Name\n {tradingAuthorization.employer ? tradingAuthorization.employer : 'N/A'}\n \n ),\n },\n {\n Value: () => (\n <>\n Citizenship Country\n {tradingAuthorization.citizenshipCountry}\n {tradingAuthorization.citizenshipCountry !== Country.UnitedStatesOfAmerica && (\n <>\n
    \n Foreign Tax ID Country\n {tradingAuthorization.foreignTaxIdCountry}\n
    \n Foreign Tax ID\n {tradingAuthorization.foreignTaxIdNumber}\n \n )}\n \n ),\n },\n {\n Value: () => (\n <>\n Date of Birth\n \n {tradingAuthorization.dateOfBirth\n ? formatDateWithoutTime(tradingAuthorization.dateOfBirth)\n : 'Date not found'}\n \n \n ),\n },\n {\n Value: () => (\n <>\n Disclosures\n \n Is the agent employed by or a member of a registered broker-dealer, securities or futures exchange, or\n securities industry regulatory body (e.g., FINRA, NFA)?{' '}\n \n {tradingAuthorization.disclosures && tradingAuthorization.disclosures.industryEmployed ? 'Yes' : 'No'}\n \n \n\n {tradingAuthorization.disclosures && tradingAuthorization.disclosures.industryEmployed && (\n <>\n
    \n \n Firm name: {tradingAuthorization.disclosuresIndustryEmployedFirmName}\n \n \n )}\n
    \n
    \n \n Is the agent a 10% shareholder, director, and/or policy maker of a publicly-owned company?{' '}\n \n {tradingAuthorization.disclosures && tradingAuthorization.disclosures.stakeholder ? 'Yes' : 'No'}\n \n \n {tradingAuthorization.disclosures && tradingAuthorization.disclosures.stakeholder && (\n <>\n
    \n \n Ticker symbol:{' '}\n \n {tradingAuthorization.disclosures && tradingAuthorization.disclosuresStakeholderTickerSymbol}\n \n \n \n )}\n \n ),\n hide: tradingAuthorization.type === TradeAuthorizationType.Limited,\n },\n ];\n }\n\n if (hasGrantedTradeAuth) {\n fieldList = [\n ...fieldList,\n\n {\n Value: () => (\n <>\n \n \n ),\n hide: tradingAuthorization === null,\n },\n ];\n }\n\n return fieldList;\n }, [tradingAuthorization]);\n\n const industryEmployedFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n\n if (accountManagementDetails && !isFetching && isLoaded) {\n accountHolders.map((accountHolder, index) => {\n fieldList = [\n ...fieldList,\n\n {\n Value: () => (\n <>\n Industry Employed -{' '}\n {getAccountHolderName(index)}{' '}\n \n \n ),\n className: 'fields-title',\n },\n\n { Value: () => null },\n {\n Value: () => (\n <>\n \n Are you employed by or a member of a registered broker-dealer, securities or futures exchange, or\n securities industry regulatory body (e.g., FINRA, NFA)?\n \n\n {formatBooleanForDisplay(accountHolder.disclosures.industryEmployed)}\n {pendingIndustryEmployedUpdate && pendingIndustryEmployedUpdate.length > 0 && (\n <>\n
    \n \n Update Request Pending Admin Review\n
    \n \n {dayjs(\n pendingIndustryEmployedUpdate[pendingIndustryEmployedUpdate.length - 1].createDate\n ).format('MM/DD/YYYY - hh:mm A')}\n \n
    \n \n )}\n \n ),\n },\n {\n Value: () => (\n <>\n Industry Employed Firm Name\n\n \n {formatIndustryEmployed(accountHolder.disclosuresIndustryEmployedFirmName)}\n \n \n ),\n },\n ];\n });\n }\n return fieldList;\n }, [accountHolders, isFetching, isLoaded, pendingIndustryEmployedUpdate]);\n\n const disclosureFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n if (accountManagementDetails && !isFetching && isLoaded) {\n accountHolders.map((accountHolder, index) => {\n fieldList = [\n ...fieldList,\n\n {\n Value: () => (\n <>\n Individual Representations -{' '}\n {getAccountHolderName(index)}{' '}\n \n \n ),\n className: 'fields-title',\n },\n\n { Value: () => null },\n\n {\n Value: () => (\n <>\n \n Are you a 10% shareholder, director, and/or policy maker of a publicly-owned company?\n \n\n {formatBooleanForDisplay(accountHolder.disclosures.stakeholder)}\n {accountHolder.disclosures.stakeholder && (\n <>\n
    \n\n \n Company ticker:{' '}\n \n {accountHolder.disclosuresStakeholderTickerSymbol\n ? accountHolder.disclosuresStakeholderTickerSymbol\n : 'N/A'}\n \n \n \n )}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Are you notified by the IRS that I am subject to backup withholding?\n\n {formatBooleanForDisplay(accountHolder.disclosures.irsWithholding)}\n \n ),\n },\n\n {\n Value: () => (\n <>\n \n Are you a current or former senior public official (US or foreign), or immediate family relation to\n such?\n \n\n {formatBooleanForDisplay(accountHolder.disclosures.govOfficial)}\n {accountHolder.disclosures.govOfficial && (\n <>\n
    \n \n Family Member(s):{' '}\n \n {accountHolder.disclosuresGovOfficialImmediateFamily\n ? accountHolder.disclosuresGovOfficialImmediateFamily\n : 'N/A'}\n \n {' '}\n
    \n \n Organization:{' '}\n \n {accountHolder.disclosuresGovOfficialPoliticalOrg\n ? accountHolder.disclosuresGovOfficialPoliticalOrg\n : 'N/A'}\n \n {' '}\n \n )}\n \n ),\n },\n {\n Value: () => null,\n },\n ];\n });\n }\n return fieldList;\n }, [accountHolders, isFetching, isLoaded]);\n\n const accountDisclosureFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n if (accountManagementDetails) {\n fieldList = [\n ...fieldList,\n\n {\n Value: () => (\n <>\n Account Disclosures{' '}\n \n \n ),\n className: 'fields-title',\n },\n\n { Value: () => null },\n\n {\n Value: () => (\n <>\n Is this account maintained on behalf of a foreign bank?\n {formatBooleanForDisplay(foreignBank)}{' '}\n {foreignBank && (\n <>\n
    \n \n U.S. agent for service of process:{' '}\n {disclosuresForeignBankUSAgent || 'Not applicable'}\n \n \n )}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Is this account maintained on behalf of a foreign shell bank?\n {formatBooleanForDisplay(foreignShellBank)}{' '}\n \n ),\n },\n\n {\n Value: () => (\n <>\n \n Is this account maintained on behalf of a foreign financial institution?\n \n {formatBooleanForDisplay(foreignFinancialInstitution)}{' '}\n \n ),\n },\n\n {\n Value: () => (\n <>\n \n Is this account maintained on behalf of a broker or dealer’s proprietary securities account (PAB\n account)?\n \n {formatBooleanForDisplay(proprietarySecuritiesAccount)}{' '}\n \n ),\n },\n ];\n }\n\n return fieldList;\n }, [\n foreignBank,\n foreignShellBank,\n foreignFinancialInstitution,\n proprietarySecuritiesAccount,\n disclosuresForeignBankUSAgent,\n ]);\n\n const serviceProfileFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n if (serviceProfile) {\n fieldList = [\n ...fieldList,\n {\n Value: () => (\n <>\n Serivce Profile{' '}\n \n \n ),\n className: 'fields-title',\n },\n // TODO: Develop a component to better handle table views. DetailField defaults to two-columns requiring null values for a one column display\n { Value: () => null },\n\n {\n Value: () => (\n <>\n Disclosure of name and address on securities you own:\n\n {issuerDirectCommunication ? issuerDirectCommunication : 'N/A'}\n {pendingServiceProfileUpdates && pendingServiceProfileUpdates.length > 0 && (\n <>\n
    \n \n Update Request Pending Admin Review\n
    \n \n {dayjs(pendingServiceProfileUpdates[pendingServiceProfileUpdates.length - 1].createDate).format(\n 'MM/DD/YYYY - hh:mm A'\n )}\n \n
    \n \n )}\n \n ),\n },\n ];\n }\n\n return fieldList;\n }, [issuerDirectCommunication, pendingServiceProfileUpdates]);\n\n if (!isLoaded || isFetching || !accountManagementDetails) return ;\n\n return (\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","import React from 'react';\nimport _ from 'lodash';\nimport { useDispatch } from 'react-redux';\nimport { Modal } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\n\nexport const RemoveAllBeneficiaries: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const dispatch = useDispatch();\n\n const onClick = () => {\n const updateValues = {\n item: 'RemoveBeneficiaries',\n };\n\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId, request: updateValues }));\n toggleModal();\n };\n\n return (\n toggleModal()} show={show}>\n \n Remove All Beneficiaries?\n \n \n

    \n {' '}\n Are you sure you want to remove all current beneficiaries?\n

    \n
    \n \n \n \n \n
    \n );\n};\n","import { DateModel } from '@tradingblock/types';\nimport dayjs from 'dayjs';\n\nexport const formatAgreementKey = (agreementKey: string) => {\n switch (agreementKey) {\n case 'clientRelationshipSummary':\n return 'Client Relationship Summary';\n case 'customerAndPrivacyPolicy':\n return 'Customer and Privacy Policy';\n case 'electronicConsent':\n return 'Electronic Consent';\n case 'exchangeDataAgreement':\n return 'Exchange Data Agreement';\n case 'entityMargin':\n return 'Entity Margin';\n case 'entityOption':\n return 'Entity Option';\n case 'iRACoverDellAdoption':\n return 'IRA Cover Dell Adoption';\n case 'iRASepAdoption':\n return 'IRA Sep Adoption';\n case 'iRASimpleAdoption':\n return 'IRA Simple Adoption';\n case 'iRARothAdoption':\n return 'IRA Roth Adoption';\n case 'limitedMargin':\n return 'Limited Margin';\n case 'margin':\n return 'Margin';\n case 'option':\n return 'Option';\n case 'onlineServices':\n return 'Online Services';\n case 'riskDisclosure':\n return 'Risk Disclosure';\n case 'corporateCash':\n return 'Corporate Cash';\n case 'corporateMargin':\n return 'Corporate Margin';\n case 'jointCommunity':\n return 'Joint Community';\n case 'jointSurvivor':\n return 'Joint Survivor';\n case 'llcAccount':\n return 'LLC Account';\n case 'rqdClearingDisclosures':\n return 'RQD Clearing Disclosures';\n case 'rqdCustomerAgreement':\n return 'RQD Customer Agreement';\n case 'rqdCustomerInformationBrochure':\n return 'RQD Customer Information Brochure';\n case 'rqdExecutionDisclosures':\n return 'RQD Execution Disclosures';\n case 'rqdLimitedMarginAgreement':\n return 'RQD Limited Margin Agreement';\n case 'rqdLimitedTradingAuthorization':\n return 'RQD Limited Trading Authorization';\n case 'rqdMargin':\n return 'RQD Margin Agreement';\n case 'rqdOption':\n return 'RQD Option Agreement';\n case 'rqdPowerOfAttorney':\n return 'RQD Fee Payment and Full Trading Authorization';\n case 'rqdPrivacyNotice':\n return 'RQD Privacy Notice';\n case 'rqdPrivacyPolicy':\n return 'RQD Privacy Policy';\n case 'rqdResponsibilitiesOfIbAndCarryingBroker':\n return 'RQD Responsibilities of IB and Carrying Broker';\n case 'rqdSpecialStatementForUncoveredOptionWriters':\n return 'RQD Special Statement for Uncovered Option Writers';\n case 'apiAgreement':\n return 'API Agreement';\n default:\n return agreementKey;\n }\n};\n\nexport const formatMarketDataKey = (marketDataKey: string) => {\n switch (marketDataKey) {\n case 'associationRegistration':\n return 'Association Registration';\n case 'benefitsReceived':\n return 'Benefits Received';\n case 'capitalTrading':\n return 'Capital Trading';\n case 'corporationTrading':\n return 'Corporation Trading';\n case 'employmentFunctions':\n return 'Employment Functions';\n case 'investmentProfessional':\n return 'Investment Professional';\n case 'jobFunctions':\n return 'Job Functions';\n case 'personalUse':\n return 'Personal Use';\n case 'secCftcRegistration':\n return 'SEC CFTC Registration';\n default:\n return marketDataKey;\n }\n};\n\nexport const formatBirthDate = (birthDate: DateModel | undefined) => {\n const { day, month, year } = birthDate || { day: '', month: '', year: '' };\n const dateString = `${month}/${day}/${year}`;\n if (birthDate) {\n return dayjs(dateString).format('MMMM DD, YYYY');\n }\n return 'None';\n};\n\nexport const maskSSN = (ssn: string | undefined) => {\n const masked = ssn || '';\n const prefix = 'xxxx-xx-';\n const unmaskedIdx = masked.length - 4;\n return prefix + masked.substring(unmaskedIdx);\n};\n","import React, { useEffect, useState, useMemo, useCallback } from 'react';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { AccountManagementDataActions } from '../../data/global/actions/AccountManagementActions';\nimport {\n AddIcon,\n FormGroup,\n StepperField,\n LocalizeButton as Button,\n TextboxField,\n AddressField,\n Text,\n Loading,\n SelectDropdownField,\n} from '@tradingblock/components';\nimport { FieldArray, Formik, Field } from 'formik';\nimport {\n AllAccountManagementBeneficiaryAccountTypes,\n AllAccountManagementBeneficiaryTypes,\n AllStates,\n BeneficiaryType,\n DateValueModel,\n getGroupedCountryOptions,\n BeneficiaryAccountType,\n AccountManagementBeneficiaryUpdateModel,\n Country,\n ErrorType,\n AddressModel,\n BeneficiariesRelationships,\n} from '@tradingblock/types';\nimport _ from 'lodash';\nimport { DateField } from '../../components/form/DateField';\nimport { RemoveAllBeneficiaries } from './modals/RemoveAllBeneficiaries';\nimport { maskSSN } from '../admin/Applications/services/formatters';\nimport { DetailFields, DetailField } from '../../components/basic/DetailFields';\nimport {\n getInvalidError,\n getRequiredError,\n getAmountError,\n getContingentError,\n uspsVerification,\n} from './modals/Validation';\nimport { cleanDateModel } from '../../utilities/date';\n\nexport const Beneficiaries: React.FunctionComponent<{}> = () => {\n const accountId = useStateSelector(s => s.account.accountId);\n const beneficiaries = useStateSelector(s => s.accountManagement.accountManagementDetails.details.beneficiaries);\n const beneArr = beneficiaries || [];\n const dispatch = useDispatch();\n const isUpdateLoading = useStateSelector(s => s.accountManagement.update.isLoading);\n const updateData = useStateSelector(s => s.accountManagement.update.data);\n const selectedLinkedAccountId = useStateSelector(\n s => s.account.selectedLinkedAccount && s.account.selectedLinkedAccount.accountId\n );\n const isLoaded = useStateSelector(s => s.accountManagement.accountDetails.isLoaded);\n\n const [addOrEditBeneficiary, setAddOrEditBeneficiary] = useState(false);\n const [showRemoveAll, setShowRemoveAll] = useState(false);\n const toggleShowRemoveAll = () => {\n showRemoveAll ? setShowRemoveAll(false) : setShowRemoveAll(true);\n };\n\n useEffect(() => {\n if (!isLoaded && accountId) {\n if (selectedLinkedAccountId) {\n dispatch(AccountManagementDataActions.requestAccountDetails({ accountId: selectedLinkedAccountId }));\n dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId: selectedLinkedAccountId }));\n } else {\n dispatch(AccountManagementDataActions.requestAccountDetails({ accountId }));\n dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId }));\n }\n }\n }, [accountId, dispatch, updateData, isLoaded, selectedLinkedAccountId]);\n\n const initialBeneficiariesValues: AccountManagementBeneficiaryUpdateModel = {\n beneficiaries: beneArr,\n max: 10,\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const cleanDateBeneficiaries = values.beneficiaries.map((b: any) => {\n if (b.dateOfBirth && b.beneficiaryType === BeneficiaryType.Individual) {\n b.dateOfBirth = cleanDateModel(b.dateOfBirth);\n }\n if (b.dateOfBirth && b.beneficiaryType === BeneficiaryType.Trust) {\n b.dateOfBirth = null;\n }\n return b;\n });\n\n let updateValues = {\n item: 'Beneficiaries',\n beneficiaries: cleanDateBeneficiaries,\n };\n\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId, request: updateValues }));\n\n if (!isUpdateLoading) {\n resetForm();\n setAddOrEditBeneficiary(false);\n }\n },\n [accountId, dispatch]\n );\n\n // TODO: Review localStorage usage\n const onValidate = (values: AccountManagementBeneficiaryUpdateModel) => {\n let primaryBeneficiaries = values.beneficiaries\n ? values.beneficiaries.filter(b => b.beneficiaryAccountType === BeneficiaryAccountType.Primary)\n : [];\n let contingentBeneficiaries = values.beneficiaries\n ? values.beneficiaries.filter(b => b.beneficiaryAccountType === BeneficiaryAccountType.Contingent)\n : [];\n\n let totalPrimaryPercent = _.sumBy(primaryBeneficiaries, b => _.toNumber(b.percent));\n let totalContingentPercent = _.sumBy(contingentBeneficiaries, b => _.toNumber(b.percent));\n return values.beneficiaries.reduce(\n (acc, b, i) => {\n const { address } = b;\n let uspsResponse;\n let isValidAddress;\n\n const uspsResponseFromStorage = localStorage.getItem(`beneficiaryAddress-${i}`);\n\n if (uspsResponseFromStorage && uspsResponseFromStorage !== 'undefined') {\n uspsResponse = JSON.parse(uspsResponseFromStorage);\n const { city, state, zip5, error } = uspsResponse;\n\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual = _.toLower(startCaseCity) === _.toLower(b.address.city);\n const isZipEqual = zip5 === b.address.postalCode;\n const isStateEqual = state === b.address.state;\n const isAddressCorrect = !error && isCityEqual && isZipEqual && isStateEqual;\n\n isAddressCorrect ? (isValidAddress = true) : (isValidAddress = false);\n }\n\n if (\n b.address.address1 &&\n b.address.city &&\n b.address.state &&\n b.address.country === Country.UnitedStatesOfAmerica &&\n !isValidAddress\n ) {\n const getUSPS = async () => {\n await new Promise(resolve => setTimeout(resolve, 100));\n return await uspsVerification(address as AddressModel);\n };\n\n getUSPS().then(result => {\n localStorage.setItem(`beneficiaryAddress-${i}`, JSON.stringify(result));\n });\n }\n\n if (uspsResponse) {\n const { city, state, zip5, error } = uspsResponse;\n\n if (error && address.address1 && address.city && address.state && address.postalCode) {\n acc[\n `beneficiaries[${i}].address.postalCode`\n ] = `${error.description.trim()} Please review the entered address.`;\n acc[`beneficiaries[${i}].address.city`] = `${error.description.trim()} Please review the entered address.`;\n acc[`beneficiaries[${i}].address.state`] = `${error.description.trim()} Please review the entered address.`;\n acc[\n `beneficiaries[${i}].address.address1`\n ] = `${error.description.trim()} Please review the entered address.`;\n }\n\n if (!address.address1 || !address.city) {\n localStorage.setItem(`beneficiaryAddress-${i}`, 'undefined');\n }\n\n if (city && state && zip5) {\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual = _.toLower(startCaseCity) === _.toLower(address.city);\n const isZipEqual = zip5 === address.postalCode;\n const isStateEqual = state === address.state;\n\n !isCityEqual\n ? (acc[`beneficiaries[${i}].address.city`] = `Please verify city. USPS Provided City: ${startCaseCity}`)\n : (acc[`beneficiaries[${i}].address.city`] = undefined);\n\n !isZipEqual\n ? (acc[`beneficiaries[${i}].address.postalCode`] = `Please verify zip code. USPS Provided Zip: ${zip5}`)\n : (acc[`beneficiaries[${i}].address.postalCode`] = undefined);\n\n !isStateEqual\n ? (acc[`beneficiaries[${i}].address.state`] = `Please verify state. USPS Provided State: ${state}`)\n : (acc[`beneficiaries[${i}].address.state`] = undefined);\n }\n }\n\n if (!b.beneficiaryAccountType || !b.beneficiaryType) {\n acc[`beneficiaries[${i}].beneficiaryAccountType`] = getRequiredError(b.beneficiaryAccountType);\n acc[`beneficiaries[${i}].beneficiaryType`] = getRequiredError(b.beneficiaryType);\n }\n if (b.percent) {\n if (b.beneficiaryAccountType === BeneficiaryAccountType.Primary && totalPrimaryPercent !== 100) {\n acc[`beneficiaries[${i}].percent`] = getAmountError(false);\n } else if (b.beneficiaryAccountType === BeneficiaryAccountType.Contingent && totalContingentPercent !== 100) {\n acc[`beneficiaries[${i}].percent`] = getAmountError(false);\n } else if (totalPrimaryPercent !== 100 && totalContingentPercent > 0) {\n acc[`beneficiaries[${i}].percent`] = getContingentError(false);\n }\n }\n\n if (b.beneficiaryType === BeneficiaryType.Individual) {\n if (!b.firstName) {\n acc[`beneficiaries[${i}].firstName`] = getRequiredError(b.firstName);\n }\n if (b.middleInitial && b.middleInitial.length > 1) {\n acc[`beneficiaries[${i}].middleInitial`] = getInvalidError(b.middleInitial);\n }\n if (!b.lastName) {\n acc[`beneficiaries[${i}].lastName`] = getRequiredError(b.lastName);\n }\n // if suffix is present, it should be only characters with a possible \".\" or \"-\"\n if (b.suffix && !/^[a-zA-Z.-]+$/.test(b.suffix)) {\n acc[`beneficiaries[${i}].suffix`] = getInvalidError(b.suffix);\n }\n if (!b.ssnSecret) {\n acc[`beneficiaries[${i}].ssnSecret`] = getRequiredError(b.ssnSecret);\n }\n if (!b.relationship) {\n acc[`beneficiaries[${i}].relationship`] = getRequiredError(b.relationship);\n }\n if (!b.dateOfBirth.day) {\n acc[`beneficiaries[${i}].dateOfBirth`] = getRequiredError(b.dateOfBirth.day);\n }\n if (!b.dateOfBirth.month) {\n acc[`beneficiaries[${i}].dateOfBirth`] = getRequiredError(b.dateOfBirth.month);\n }\n if (!b.dateOfBirth.year) {\n acc[`beneficiaries[${i}].dateOfBirth`] = getRequiredError(b.dateOfBirth.year);\n }\n }\n\n if (b.beneficiaryType === BeneficiaryType.Trust) {\n if (!b.trustName) {\n acc[`beneficiaries[${i}].trustName`] = getRequiredError(b.trustName);\n }\n if (!b.einSecret) {\n acc[`beneficiaries[${i}].einSecret`] = getRequiredError(b.einSecret);\n }\n }\n\n if (!b.address.address1) {\n acc[`beneficiaries[${i}].address.address1`] = getRequiredError(b.address.address1);\n }\n if (!b.address.city) {\n acc[`beneficiaries[${i}].address.city`] = getRequiredError(b.address.city);\n }\n if (!b.address.country) {\n acc[`beneficiaries[${i}].address.country`] = getRequiredError(b.address.country);\n }\n if (b.address.country === Country.UnitedStatesOfAmerica && !b.address.state) {\n acc[`beneficiaries[${i}].address.state`] = getRequiredError(b.address.state);\n }\n if (b.address.country === Country.UnitedStatesOfAmerica && !b.address.postalCode) {\n acc[`beneficiaries[${i}].address.postalCode`] = getRequiredError(b.address.postalCode);\n }\n if (b.address.country !== Country.UnitedStatesOfAmerica && !b.address.state) {\n acc[`beneficiaries[${i}].address.state`] = getRequiredError(b.address.state);\n }\n if (!b.percent) {\n acc[`beneficiaries[${i}].percent`] = getRequiredError(b.percent);\n }\n if (b.percent && !_.isInteger(b.percent)) {\n acc[`beneficiaries[${i}].percent`] = getInvalidError(b.percent);\n }\n\n Object.keys(acc).forEach(key => (acc[key] === undefined ? delete acc[key] : {}));\n\n return acc;\n },\n {} as Record\n );\n };\n\n const beneficiaryFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n if (beneficiaries) {\n beneficiaries.map((b, i) => {\n fieldList = [\n ...fieldList,\n {\n Value: () => (\n <>\n {b.beneficiaryType === BeneficiaryType.Individual && (\n \n \n {b.firstName} {b.lastName} ({b.beneficiaryAccountType})\n \n
    \n \n Relationship: {b.relationship ? b.relationship : 'Not found'}\n \n
    \n \n Date of Birth:{' '}\n \n {b.dateOfBirth && (\n <>\n {b.dateOfBirth.month}/{b.dateOfBirth.day}/{b.dateOfBirth.year}\n \n )}\n \n \n
    \n \n SSN/ITIN: {b.ssnSecret ? maskSSN(b.ssnSecret) : 'Not found'}\n \n
    \n \n Percent: {b.percent ? b.percent : 'Not found'}\n \n
    \n
    \n \n Address\n
    \n \n {b && b.address && b.address.address1 && (\n <>\n {b && b.address && b.address.address1}\n
    \n \n )}\n {b && b.address && b.address.address2 && (\n <>\n {b.address.address2}\n
    \n \n )}\n {b && b.address && b.address.city}\n {b && b.address && b.address.state ? ', ' + b.address.state : ''}{' '}\n {b && b.address && b.address.postalCode}\n
    \n {b && b.address && b.address.country}\n
    \n
    \n
    \n )}\n {b.beneficiaryType === BeneficiaryType.Trust && (\n \n \n {b.beneficiaryAccountType} - {b.beneficiaryType}\n \n
    \n
    \n \n {b.trustName ? b.trustName : 'Not found'}\n
    \n {b.einSecret ? b.einSecret : 'Not found'}\n
    \n
    \n \n Percent: {b.percent ? b.percent : 'Not found'}\n \n
    \n
    \n \n Address\n
    \n \n {b && b.address && b.address.address1 && (\n <>\n {b && b.address && b.address.address1}\n
    \n \n )}\n {b && b.address && b.address.address2 && (\n <>\n {b.address.address2}\n
    \n \n )}\n {b && b.address && b.address.city}\n {b && b.address && b.address.state ? ', ' + b.address.state : ''}{' '}\n {b && b.address && b.address.postalCode}\n
    \n {b && b.address && b.address.country}\n
    \n
    \n
    \n )}\n \n ),\n },\n ];\n });\n }\n return fieldList;\n }, [beneficiaries]);\n\n return (\n <>\n {isUpdateLoading && (\n
    \n
    \n

    Beneficiaries

    \n
    \n \n
    \n )}\n {!isUpdateLoading && (\n
    \n {beneficiaries && beneficiaries.length > 0 && !addOrEditBeneficiary && (\n
    \n

    \n Beneficiaries\n

    \n \n\n
    \n {\n e.preventDefault();\n setShowRemoveAll(true);\n }}\n >\n Remove All Beneficiaries\n \n {\n e.preventDefault();\n setAddOrEditBeneficiary(true);\n }}\n >\n Edit/Add Beneficiaries\n \n
    \n
    \n )}\n {(beneficiaries.length === 0 || addOrEditBeneficiary) && (\n <>\n {beneficiaries.length > 0 && (\n

    \n {\n e.preventDefault();\n setAddOrEditBeneficiary(false);\n }}\n >\n \n Go back\n \n

    \n )}\n

    \n Changes must be saved in order to take effect.\n

    \n\n \n {({ values, setValues, errors, handleSubmit }) => {\n const total = _.size(values.beneficiaries);\n const totalPercentageError = errors.beneficiaries;\n const max = values.max;\n\n return (\n
    \n (\n <>\n {values.beneficiaries.map((beneficiary, index) => (\n \n
    \n
    \n

    Retirement Account Beneficiary #{index + 1}

    \n
    \n
    \n
    \n {\n if (values.beneficiaries.length === 1 && beneficiaries.length === 0) {\n setAddOrEditBeneficiary(false);\n }\n arrayHelpers.remove(index);\n }}\n tabIndex={-1}\n >\n \n \n
    \n
    \n
    \n\n \n \n \n \n \n setValues({\n ...values,\n beneficiaries: _.map(values.beneficiaries, (b, j) => {\n if (index === j) {\n const isIndividual = beneficiaryType === BeneficiaryType.Individual;\n return {\n ...b,\n beneficiaryType,\n relationship: isIndividual ? b.relationship : undefined,\n firstName: isIndividual ? b.firstName : '',\n lastName: isIndividual ? b.lastName : '',\n dateOfBirth: isIndividual ? b.dateOfBirth : {},\n ssnSecret: isIndividual ? b.ssnSecret : '',\n trustName: isIndividual ? undefined : b.trustName,\n einSecret: isIndividual ? undefined : b.einSecret,\n };\n }\n return b;\n }),\n })\n }\n />\n \n {beneficiary.beneficiaryType === BeneficiaryType.Individual && (\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 {beneficiary.beneficiaryType === BeneficiaryType.Trust && (\n <>\n \n \n \n \n \n \n \n )}\n \n \n \n \n {totalPercentageError && (\n

    \n {totalPercentageError}{' '}\n \n

    \n )}\n
    \n ))}\n {max && total < max && (\n

    \n {\n event.currentTarget.blur();\n event.preventDefault();\n arrayHelpers.push({\n address: {\n address1: '',\n address2: '',\n city: '',\n postalCode: null,\n country: '',\n state: null,\n },\n beneficiaryAccountType: '',\n beneficiaryType: '',\n dateOfBirth: {\n day: undefined,\n month: undefined,\n year: undefined,\n },\n einSecret: '',\n firstName: '',\n middleInitial: '',\n lastName: '',\n suffix: '',\n percent: null,\n relationship: '',\n ssnSecret: '',\n trustName: '',\n });\n setAddOrEditBeneficiary(true);\n }}\n type=\"button\"\n >\n \n Add Beneficiary\n {' '}\n 0 ? 'partial' : 'all'}`}\n data={{ max, left: max - total }}\n />\n

    \n )}\n {addOrEditBeneficiary && (\n
    \n {beneficiaries.length > 0 && (\n <>\n {\n e.preventDefault();\n setAddOrEditBeneficiary(false);\n }}\n >\n \n Go back\n \n \n )}\n\n handleSubmit(values)}\n >\n Save\n \n
    \n )}\n \n )}\n />\n
    \n );\n }}\n \n \n )}\n\n \n
    \n )}\n \n );\n};\n","import { ColumnWithSorting, EmptyBlockContent, Loading, Table } from '@tradingblock/components';\nimport React, { useEffect, useMemo } from 'react';\nimport { BlockTable } from '../../../shared/BlockTable';\nimport { useApi } from '../../../../context/Api';\nimport { useDispatch } from 'react-redux';\nimport { AccountManagementDataActions } from '../../../../data/global/actions/AccountManagementActions';\nimport { useStateSelector } from '../../../../data/global/dataSelectors';\nimport dayjs from 'dayjs';\n\nexport const AuthHistoryTable: React.FunctionComponent<{}> = ({}) => {\n // State variables\n\n // Hooks for API and Redux\n const api = useApi();\n const dispatch = useDispatch();\n\n // Selectors for Redux state\n const username = useStateSelector(s => s.auth.userName);\n const authHistory = useStateSelector(s => s.accountManagement.authHistory.data);\n const isFetching = useStateSelector(s => s.accountManagement.authHistory.isFetching);\n\n // Function to fetch the authentication history\n const fetchAuthHistory = () => {\n dispatch(AccountManagementDataActions.requestAuthHistory({ username }));\n };\n\n // Fetch the authentication history on component mount\n useEffect(() => {\n fetchAuthHistory();\n }, []);\n\n // Define the columns for the authentication history table\n const AuthHistoryColumns = useMemo(\n () => [\n {\n Header: 'Date',\n accessor: (a: any) => a.TimeStamp,\n sortType: 'datetime',\n Cell: (row: any) => {\n return dayjs(row.value + 'Z').format('MM/DD/YYYY');\n },\n },\n {\n Header: 'Time',\n accessor: (a: any) => a.TimeStamp,\n sortType: 'datetime',\n Cell: (row: any) => {\n return dayjs(row.value + 'Z').format('h:mm:ss A');\n },\n },\n {\n Header: 'IP Address',\n accessor: 'ipAddress',\n Cell: (row: any) => {\n // if the ip is null/undefined return fontawesome ban icon\n if (!row.value) {\n return ;\n } else {\n return row.value;\n }\n },\n },\n ],\n []\n );\n\n const initialState = useMemo(() => {\n return {\n pageSize: 10,\n pageIndex: 0,\n sortBy: [],\n columnOrder: [],\n };\n }, []);\n\n // Return the authentication history table\n return (\n <>\n {isFetching && (\n
    \n
    \n
    Log-in History
    \n
    \n
    \n Loading...\n
    \n
    \n )}\n {!isFetching && authHistory && authHistory.length === 0 && }\n {!isFetching && authHistory && authHistory.length > 0 && (\n
    \n
    \n \n
    Log-in History
    \n
    \n
    \n \n
    \n
    \n

    The log-in history table displays the last 50 successful log-in attempts.

    \n
    \n
    \n )}\n \n );\n};\n","import React, { useMemo } from 'react';\nimport { RegisteredDevicesTable } from './components/table/RegisteredDevicesTable';\nimport { MFASettings } from './modals/MFASettings';\nimport { AuthHistoryTable } from './components/table/AuthHistoryTable';\n\n//TODO: Once backend is ready, we need to fetch the data from the backend and populate the MFA options\nexport const AccountSecurity: React.FunctionComponent<{}> = ({}) => {\n const [isTwoFactorEnabled, setIsTwoFactorEnabled] = React.useState(true);\n const [showMFASettings, setShowMFASettings] = React.useState(false);\n\n const toggleMFASettings = () => {\n setShowMFASettings(!showMFASettings);\n };\n\n const MFASetting = useMemo(() => {\n return isTwoFactorEnabled ? 'Enabled' : 'Disabled';\n }, [isTwoFactorEnabled]);\n\n return (\n <>\n
    \n
    \n {/*TODO: Reimplement when SMS MFA is ready */}\n {/*
    \n
    \n
    \n
    Security Preferences
    \n

    Multi-factor Authentication: {MFASetting}

    \n {isTwoFactorEnabled ? (\n <>\n

    Current MFA Method: SMS

    \n \n ) : null}\n \n
    \n
    \n
    */}\n
    \n \n
    \n
    \n {/* */}\n {/* Display a message informing users that a new no password login feature is coming soon */}\n\n
    \n
    Introducing Our New No-Password Login!
    \n

    \n We're excited to bring you a simpler, faster, and more secure way to access your account – with our new\n No-Password Login feature!\n

    \n
    What is No-Password Login?
    \n

    \n Say goodbye to remembering passwords! Our No-Password Login uses multi-factor authentication (MFA) to\n verify your identity. It's a more secure way to access your account and protect your information.\n

    \n
    How does it work?
    \n

    \n When you sign in, you'll receive a notification on your mobile device. Simply tap \"Approve\" to log in –\n no password needed!\n

    \n
    Coming Soon!
    \n

    \n We're working hard to bring you this new feature. Stay tuned for updates on when you can start using\n No-Password Login!\n

    \n
    \n
    \n
    \n
    \n {/* */}\n \n );\n};\n","import React, { useCallback } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n BooleanToggleType,\n AllBooleanToggleTypes,\n CommunicationPreferencesUpdateRequest,\n AllElectronicFormats,\n AllDuplicateStatementOptions,\n DuplicateStatements,\n getGroupedCountryOptions,\n AllStates,\n Country,\n CommunicationPreferencesUpdateValues,\n DeliveryType,\n} from '@tradingblock/types';\nimport { FormGroup, Modal, SelectDropdownField, StepperField, TextboxField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { getRequiredError, USPSErrors, uspsVerification } from './Validation';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { formatBoolean } from '../../../utilities/accountManagement';\n\nexport const CommunicationPreferencesUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n const dispatch = useDispatch();\n\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n\n const initialCommunicationPreferencesUpdateValues: CommunicationPreferencesUpdateRequest = {\n deliveryType: undefined,\n requestDuplicateStatements: undefined,\n duplicateStatements: undefined,\n duplicateStatementsAddress: {\n address1: '',\n address2: '',\n city: '',\n state: '',\n postalCode: '',\n country: '',\n },\n duplicateStatementsEmail: undefined,\n preferredElectronicFormat: undefined,\n subscribeToPromotionalEmails: undefined,\n };\n\n const onValidate = (values: CommunicationPreferencesUpdateRequest) => {\n const { duplicateStatementsAddress } = values;\n\n const { address1, city, state, country } = duplicateStatementsAddress || {\n address1: '',\n city: '',\n state: '',\n country: '',\n };\n\n let uspsResponse;\n let isValidAddress;\n const stateOrPostalCodeRequired = country === Country.UnitedStatesOfAmerica;\n const uspsResponseFromStorage = localStorage.getItem(`addressVerification-duplicateStatementsAddress`);\n\n if (uspsResponseFromStorage && uspsResponseFromStorage !== 'undefined') {\n uspsResponse = JSON.parse(uspsResponseFromStorage);\n const { city, state, zip5, error } = uspsResponse;\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual =\n values.duplicateStatementsAddress &&\n _.toLower(startCaseCity) === _.toLower(values.duplicateStatementsAddress.city);\n const isZipEqual = values.duplicateStatementsAddress && zip5 === values.duplicateStatementsAddress.postalCode;\n const isStateEqual = values.duplicateStatementsAddress && state === values.duplicateStatementsAddress.state;\n const isAddressCorrect = !error && isCityEqual && isZipEqual && isStateEqual;\n\n isAddressCorrect ? (isValidAddress = true) : (isValidAddress = false);\n }\n\n if (address1 && city && state && country === Country.UnitedStatesOfAmerica && !isValidAddress) {\n const getUSPS = async () => {\n await new Promise(resolve => setTimeout(resolve, 100));\n if (!values.duplicateStatementsAddress) {\n return;\n }\n return await uspsVerification(values.duplicateStatementsAddress);\n };\n\n getUSPS().then(result => {\n localStorage.setItem(`addressVerification-duplicateStatementsAddress`, JSON.stringify(result));\n });\n }\n\n if (uspsResponse) {\n const { city, state, zip5, error } = uspsResponse;\n\n if (\n error &&\n values.duplicateStatementsAddress &&\n values.duplicateStatementsAddress.address1 &&\n values.duplicateStatementsAddress.city &&\n values.duplicateStatementsAddress.state &&\n values.duplicateStatementsAddress.postalCode\n ) {\n return {\n [`duplicateStatementsAddress.postalCode`]: `${error.description.trim()} Please review the entered address.`,\n [`duplicateStatementsAddress.city`]: `${error.description.trim()} Please review the entered address.`,\n [`duplicateStatementsAddress.state`]: `${error.description.trim()} Please review the entered address.`,\n [`duplicateStatementsAddress.address1`]: `${error.description.trim()} Please review the entered address.`,\n };\n }\n\n if (\n (values.duplicateStatementsAddress && !values.duplicateStatementsAddress.address1) ||\n (values.duplicateStatementsAddress && !values.duplicateStatementsAddress.city)\n ) {\n localStorage.setItem(`addressVerification-duplicateStatementsAddress`, 'undefined');\n }\n\n if (city && state && zip5) {\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual =\n values.duplicateStatementsAddress &&\n _.toLower(startCaseCity) === _.toLower(values.duplicateStatementsAddress.city);\n const isZipEqual = values.duplicateStatementsAddress && zip5 === values.duplicateStatementsAddress.postalCode;\n const isStateEqual = values.duplicateStatementsAddress && state === values.duplicateStatementsAddress.state;\n\n // USPS + Required Errors\n\n const errors: USPSErrors = {\n ['duplicateStatementsAddress.country']: getRequiredError(\n values.duplicateStatementsAddress && values.duplicateStatementsAddress.country\n ),\n ['duplicateStatementsAddress.address1']: getRequiredError(\n values.duplicateStatementsAddress && values.duplicateStatementsAddress.address1\n ),\n ['duplicateStatementsAddress.postalCode']:\n getRequiredError(\n stateOrPostalCodeRequired\n ? values.duplicateStatementsAddress && values.duplicateStatementsAddress.postalCode\n : true\n ) || !isZipEqual\n ? `Please verify the zip code. USPS Provided Zip Code: ${zip5}`\n : undefined,\n ['duplicateStatementsAddress.city']:\n getRequiredError(values.duplicateStatementsAddress && values.duplicateStatementsAddress.city) ||\n !isCityEqual\n ? `Please verify the city. USPS Provided City: ${startCaseCity}`\n : undefined,\n ['duplicateStatementsAddress.state']:\n getRequiredError(\n stateOrPostalCodeRequired\n ? values.duplicateStatementsAddress && values.duplicateStatementsAddress.state\n : true\n ) || !isStateEqual\n ? `Please verify the state. USPS Provided State: ${state}`\n : undefined,\n [`deliveryType`]: getRequiredError(values.deliveryType),\n [`duplicateStatements`]: getRequiredError(values.duplicateStatements),\n [`preferredElectronicFormat`]: getRequiredError(values.preferredElectronicFormat),\n [`subscribeToPromotionalEmails`]: getRequiredError(values.subscribeToPromotionalEmails),\n [`requestDuplicateStatements`]: getRequiredError(values.requestDuplicateStatements),\n };\n\n Object.keys(errors).forEach(key => (errors[key] === undefined ? delete errors[key] : {}));\n\n return errors;\n }\n }\n const errors = {\n [`deliveryType`]: getRequiredError(values.deliveryType),\n [`duplicateStatements`]:\n values.requestDuplicateStatements === BooleanToggleType.Yes\n ? getRequiredError(values.duplicateStatements)\n : undefined,\n [`preferredElectronicFormat`]: getRequiredError(values.preferredElectronicFormat),\n [`subscribeToPromotionalEmails`]: getRequiredError(values.subscribeToPromotionalEmails),\n [`requestDuplicateStatements`]: getRequiredError(values.requestDuplicateStatements),\n [`duplicateStatementsAddress.country`]: getRequiredError(\n values.duplicateStatements === DuplicateStatements.PostalMail\n ? values.duplicateStatementsAddress && values.duplicateStatementsAddress.country\n : true\n ),\n [`duplicateStatementsAddress.address1`]: getRequiredError(\n values.duplicateStatements === DuplicateStatements.PostalMail\n ? values.duplicateStatementsAddress && values.duplicateStatementsAddress.address1\n : true\n ),\n [`duplicateStatementsAddress.postalCode`]: getRequiredError(\n values.duplicateStatements === DuplicateStatements.PostalMail\n ? values.duplicateStatementsAddress && values.duplicateStatementsAddress.postalCode\n : true\n ),\n [`duplicateStatementsAddress.city`]: getRequiredError(\n values.duplicateStatements === DuplicateStatements.PostalMail\n ? values.duplicateStatementsAddress && values.duplicateStatementsAddress.city\n : true\n ),\n [`duplicateStatementsAddress.state`]: getRequiredError(\n values.duplicateStatements === DuplicateStatements.PostalMail\n ? values.duplicateStatementsAddress && values.duplicateStatementsAddress.state\n : true\n ),\n [`duplicateStatementsEmail`]: getRequiredError(\n values.duplicateStatements === DuplicateStatements.Email ? values.duplicateStatementsEmail : true\n ),\n };\n const cleanedErrors = _.omitBy(errors, _.isNil);\n return cleanedErrors;\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n // construct updateValues for submission, if duplicateStatementsAddress is not provided, then remove it from the updateValues same for duplicateStatementsEmail\n // set duplicateStatements to None if requestDuplicateStatements is No\n const updateValues: CommunicationPreferencesUpdateValues = {\n item: 'CommunicationPreferences',\n communicationPreferences: {\n deliveryType: values.deliveryType === BooleanToggleType.Yes ? DeliveryType.Paper : DeliveryType.Electronic,\n duplicateStatements: values.duplicateStatements,\n duplicateStatementsAddress: values.duplicateStatementsAddress,\n duplicateStatementsEmail: values.duplicateStatementsEmail,\n preferredElectronicFormat: values.preferredElectronicFormat,\n subscribeToPromotionalEmails: formatBoolean(values.subscribeToPromotionalEmails),\n },\n };\n\n // remove duplicateStatementsAddress and duplicateStatementsEmail if they are not provided\n // remove duplicateStatementsAddress if duplicateStatements is not PostalMail\n if (!values.duplicateStatementsAddress) {\n delete updateValues.communicationPreferences.duplicateStatementsAddress;\n }\n if (!values.duplicateStatementsEmail) {\n delete updateValues.communicationPreferences.duplicateStatementsEmail;\n }\n if (values.duplicateStatements !== DuplicateStatements.PostalMail) {\n delete updateValues.communicationPreferences.duplicateStatementsAddress;\n }\n if (values.requestDuplicateStatements === BooleanToggleType.No) {\n updateValues.communicationPreferences.duplicateStatements = DuplicateStatements.None;\n }\n\n dispatch(\n AccountManagementDataActions.requestMakeAccountUpdate({\n accountId,\n request: updateValues,\n })\n );\n resetForm();\n toggleModal();\n\n localStorage.setItem(`addressVerification-duplicateStatementsAddress`, 'undefined');\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, values, errors, resetForm }) => (\n toggleModal()} show={show}>\n \n Communication Preferences Update\n \n \n
    \n

    Would you like to receive paper confirmations and statements?

    \n \n \n \n

    Preferred electronic communications format?

    \n \n \n \n

    Would you like to receive duplicate statements?

    \n \n \n \n {values.requestDuplicateStatements === BooleanToggleType.Yes && (\n <>\n

    How would you like to receive duplicate statements?

    \n \n \n \n {values.duplicateStatements === DuplicateStatements.Email && (\n \n \n \n )}\n {values.duplicateStatements === DuplicateStatements.PostalMail && (\n <>\n

    Address for Duplicate Statements

    \n \n \n \n \n \n \n \n \n \n \n \n \n \n {values.duplicateStatementsAddress &&\n values.duplicateStatementsAddress.country === Country.UnitedStatesOfAmerica && (\n \n )}\n {values.duplicateStatementsAddress &&\n values.duplicateStatementsAddress.country !== Country.UnitedStatesOfAmerica &&\n values.duplicateStatementsAddress.country !== '' && (\n \n )}\n \n \n \n \n \n )}\n \n )}\n

    Would you like to receive promotional emails?

    \n \n \n \n
    \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n \n );\n};\n","import React, { useCallback } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n AllBooleanToggleTypes,\n BooleanToggleType,\n MarketDataProfileReviewUpdateValueProps,\n ProSubType,\n} from '@tradingblock/types';\nimport { CheckListInput, FormGroup, Modal, StepperField, TextboxField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\n\nexport const MarketDataProfileReview: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n // const dispatch = useDispatch();\n\n // const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n // const accountDisclosures = useStateSelector(\n // s =>\n // s.accountManagement.accountManagementDetails &&\n // s.accountManagement.accountManagementDetails.details.accountDisclosures\n // );\n\n const initialMarketDataProfileReviewValues: MarketDataProfileReviewUpdateValueProps = {\n industryEmployed: undefined,\n foreignBank: undefined,\n foreignShellBank: undefined,\n foreignFinancialInstitution: undefined,\n proprietarySecuritiesAccount: undefined,\n personalUse: undefined,\n secCftcRegistration: undefined,\n associationRegistration: undefined,\n jobFunctions: undefined,\n };\n\n const onValidate = (values: MarketDataProfileReviewUpdateValueProps) => {\n return {};\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n //TODO: create action to update market data profile review when endpoint is ready\n // dispatch(AccountManagementDataActions.updateMarketDataProfileReview(accountId, values));\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, isSubmitting, values }) => (\n toggleModal()}>\n \n Market Data User Profile Review\n \n \n

    \n Please answer the questions below to verify your status as a professional or non-professional user of\n NYSE, AMEX, Nasdaq and OPRA market data. Please note:\n

    \n\n
      \n
    • Delayed market data is provided at no cost to all users.
    • \n
    • Real-time market data is provided at no cost to all non-professional users.
    • \n
    • Real-time market data is provided at cost to all professional users.
    • \n
    \n\n

    \n Are you employed or a member of a registered broker-dealer, securities or futures exchange, or securities\n industry regulatory body (e.g., FINRA, NFA)?\n

    \n \n \n \n {values.industryEmployed === BooleanToggleType.Yes && (\n \n \n \n )}\n

    Are you opening this account on behalf of one of the following:

    \n\n

    A foreign bank?

    \n \n \n \n\n

    A foreign shell bank?

    \n \n \n \n\n

    A foreign financial institution?

    \n \n \n \n\n

    A broker or dealer's proprietary securities account (PAB account)?

    \n \n \n \n\n

    Do you use market data for your own personal, non-business use?

    \n \n \n \n {values.personalUse === BooleanToggleType.Yes && (\n <>\n

    Are you currently registered with the SEC or the CFTC?

    \n \n \n \n

    \n Are you currently registered or qualified with any securities agency, any securities exchange,\n association or regulatory body, or any commodities or futures contract market, association or\n regulatory body, in the United States or elsewhere?\n

    \n \n \n \n

    \n Do you perform any functions that require (or are similar to those that require) registration or\n qualification with any US or non-US securities or futures regulatory body or agency (i.e. SEC, CFTC,\n other state or federal securities or futures agency, regulator, exchange, market or association)?\n

    \n \n \n \n \n )}\n

    * Select whether you wish to receive Real-time or Delayed quotes:

    \n \n \n \n
    \n \n \n \n \n
    \n )}\n
    \n );\n};\n","import {\n CheckListInput,\n GetLogoutUrl,\n GetTradingBlockDomain,\n GetTradingBlockFullUrl,\n Loading,\n} from '@tradingblock/components';\nimport { DeliveryType, DuplicateStatements } from '@tradingblock/types';\nimport React, { useMemo, useState } from 'react';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { formatBooleanForDisplay, formatMarketDataEntitlement } from '../../utilities/accountManagement';\nimport { CommunicationPreferencesUpdate } from './modals/CommunicationPreferencesUpdate';\nimport { MarketDataProfileReview } from './modals/MarketDataProfileReview';\n\nexport const Preferences: React.FunctionComponent<{}> = ({}) => {\n const accountNumber = useStateSelector(s => s.account.accountNumber);\n const isLoaded = useStateSelector(s => s.accountManagement.accountDetails.isLoaded);\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const isFetching = useStateSelector(s => s.accountManagement.accountManagementDetails.isFetching);\n\n // Destructuring account management details & communication preferences\n const { communicationPreferences, agreements } = accountManagementDetails;\n const { apiAgreement } = agreements;\n const {\n deliveryType,\n duplicateStatements,\n duplicateStatementsAddress,\n duplicateStatementsEmail,\n preferredElectronicFormat,\n subscribeToPromotionalEmails,\n } = communicationPreferences;\n\n // Formatting data for display\n const receivePaperStatements = deliveryType === DeliveryType.Paper ? 'Yes' : 'No';\n const receiveDuplicateStatements = duplicateStatements !== DuplicateStatements.None ? 'Yes' : 'No';\n\n // TODO: Implement market data entitlement updates for account management once the API is ready\n // const getMarketDataEntitlement = () => {\n // if (\n // profileData &&\n // profileData.current &&\n // profileData.current.entitlement &&\n // profileData.current.entitlement.marketDataEntitlementTypeId\n // ) {\n // return formatMarketDataEntitlement(profileData.current.entitlement.marketDataEntitlementTypeId);\n // }\n // return '';\n // };\n\n // const marketDataEntitlement = useMemo(() => getMarketDataEntitlement(), [profileData]);\n\n // State for toggling modals\n const [showMarketDataProfileReview, setShowMarketDataProfileReview] = useState(false);\n const [showCommunicationPreferencesUpdate, setShowCommunicationPreferencesUpdate] = useState(false);\n\n // Toggles for modals\n const toggleMarketDataProfileReview = () => {\n setShowMarketDataProfileReview(!showMarketDataProfileReview);\n };\n const toggleCommunicationPreferencesUpdate = () => {\n setShowCommunicationPreferencesUpdate(!showCommunicationPreferencesUpdate);\n };\n\n // Legacy domain for accessing the API agreement\n const tradingBlockDomain = GetTradingBlockDomain(accountNumber);\n const legacyLink = (\n \n {tradingBlockDomain}\n \n );\n\n // Formatting data for display\n const formatPreferredElectronicFormat = (format: string) => {\n if (format === 'PlainText') {\n return 'Plain Text';\n }\n if (format === 'Html') {\n return 'HTML';\n }\n return 'None';\n };\n\n // Formatting data for display\n const formatApiAgreementResponse = (response: boolean) => {\n if (response) {\n return 'Accepted';\n }\n return 'Declined';\n };\n\n // If not loaded or is fetching, show loading component\n if (!isLoaded || isFetching) return ;\n\n return (\n <>\n
    \n
    \n
    \n
    \n

    \n Communication Preferences\n

    \n
    \n
    \n
    \n
    \n Would you like to receive paper confirmations and statements?\n

    {receivePaperStatements}

    \n
    \n
    \n Would you like to receive duplicate confirmations and statements?\n

    {receiveDuplicateStatements}

    \n {receiveDuplicateStatements === 'Yes' && (\n <>\n Duplicate Statements Type\n

    \n {duplicateStatements === DuplicateStatements.PostalMail ? 'Postal Mail' : duplicateStatements}\n

    \n {duplicateStatements === DuplicateStatements.PostalMail && duplicateStatementsAddress && (\n <>\n Duplicate Statements Address\n

    {duplicateStatementsAddress.address1}

    \n {duplicateStatementsAddress.address2 && (\n

    {duplicateStatementsAddress.address2}

    \n )}\n

    \n {duplicateStatementsAddress.city}, {duplicateStatementsAddress.state}{' '}\n {duplicateStatementsAddress.postalCode}\n

    \n \n )}\n {duplicateStatements === DuplicateStatements.Email && duplicateStatementsEmail && (\n <>\n Duplicate Statements Email\n

    {duplicateStatementsEmail}

    \n \n )}\n \n )}\n
    \n
    \n
    \n
    \n Preferred electronic communications format?\n

    {formatPreferredElectronicFormat(preferredElectronicFormat)}

    \n
    \n
    \n Subscribed to promotional emails?\n

    {formatBooleanForDisplay(subscribeToPromotionalEmails)}

    \n
    \n
    \n
    \n
    \n toggleCommunicationPreferencesUpdate()}\n >\n Update\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Trading Preferences\n

    \n
    \n
    \n {/* TODO: Once backend supports API agreement through RestHub include ability to accept or remove the api agreement here on the dashboard */}\n
    \n {/* TODO: Implement market data entitlement updates for account management once the API is ready */}\n {/*
    \n Quote data entitlement:{' '}\n \n
    */}\n
    \n API Agreement: \n {!apiAgreement && (\n

    \n We need an additional agreement for your account to use the API and this platform. Please log in to\n the classic {legacyLink}, visit your Profile, and complete the API agreement checkbox.\n

    \n )}\n
    \n
    \n
    \n
    \n
    \n \n \n \n );\n};\n","import React, { useCallback, useEffect } from 'react';\nimport Tabs from 'react-bootstrap/Tabs';\nimport Tab from 'react-bootstrap/Tab';\nimport { useBlockActionDispatchAndGenericActions } from '../../components/blocks/BlockState';\nimport {\n AccountManagementConstants,\n useAccountManagementData,\n AccountManagementDataState,\n isAccountManagementTab,\n} from './state/AccountManagementState';\nimport { AccountManagementBlockAction, AccountManagementBlockActions } from './state/AccountManagementBlockAction';\nimport { AccountDetails } from './AccountDetails';\nimport { FinancialDetails } from './FinancialDetails';\nimport { AccountDisclosures } from './AccountDisclosures';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { Beneficiaries } from './Beneficiaries';\nimport { useDispatch } from 'react-redux';\nimport { AccountManagementDataActions } from '../../data/global/actions/AccountManagementActions';\nimport { AccountSecurity } from './Security';\nimport { Preferences } from './Preferences';\n\nconst {\n clientAcc,\n clientFin,\n clientDiscl,\n clientPref,\n clientBeneficiaries,\n security,\n} = AccountManagementConstants.tabs;\n\nexport const AccountManagementContent: React.FunctionComponent<{}> = ({}) => {\n const dispatch = useDispatch();\n const accountId = useStateSelector(s => s.account.accountId);\n const retirementAccount = useStateSelector(\n s => s.accountManagement.accountManagementDetails.details.retirementAccountType\n );\n const isRetirementAccount = retirementAccount && retirementAccount !== '' ? true : false;\n const tab = useAccountManagementData(s => s.tab || 'clientAcc');\n const [, blockDispatch] = useBlockActionDispatchAndGenericActions<\n AccountManagementDataState,\n AccountManagementBlockAction\n >();\n const setTab = useCallback(\n (ev: string) => {\n if (isAccountManagementTab(ev)) {\n blockDispatch(AccountManagementBlockActions.setTab(ev));\n }\n },\n [blockDispatch]\n );\n\n useEffect(() => {\n if (accountId) {\n dispatch(AccountManagementDataActions.requestPendingAccountManagementUpdates({ accountId }));\n }\n }, [accountId, dispatch]);\n\n return (\n <>\n
    \n setTab(ev)}>\n \n {tab === clientAcc && }\n \n \n {tab === clientFin && }\n \n \n {tab === clientDiscl && }\n \n \n {tab === clientPref && }\n \n \n {tab === security && }\n \n {isRetirementAccount && (\n \n {tab === clientBeneficiaries && }\n \n )}\n \n
    \n \n );\n};\n","import React, { useCallback } from 'react';\nimport { BlockType } from '@tradingblock/types';\nimport { BlockDragHandle, ContactPhone, getBlockTypeName } from '@tradingblock/components';\nimport { useStateSelector } from '../../data/global/dataSelectors';\n\ninterface HeaderProps {\n blockType: BlockType;\n}\n\nexport const AccountManagementHeader: React.FunctionComponent = ({ blockType }) => {\n const accountTitle = useStateSelector(s => s.account.account && s.account.account.AccountTitle);\n const accountNumber = useStateSelector(s => s.account.accountNumber);\n const accountStatus = useStateSelector(s => s.account.accountDetails && s.account.accountDetails.accountStatus);\n\n // account status can be multi-worded without spaces, so we need to add them\n const getAccountStatus = useCallback((status: string) => {\n // format status to place a space between words\n const formattedStatus = status.replace(/([A-Z])/g, ' $1').trim();\n switch (status) {\n case 'Active':\n return {formattedStatus};\n case 'Inactive':\n return {formattedStatus};\n case 'Closed':\n return {formattedStatus};\n case 'ProcessingItemsMissing':\n return (\n <>\n \n {formattedStatus}\n \n
    \n \n Please contact us at if you have any questions or concerns.\n \n \n );\n default:\n return (\n \n {formattedStatus}\n \n );\n }\n }, []);\n\n return (\n <>\n
    \n {getBlockTypeName(blockType)} \n
    \n \n \n {accountTitle} - #{accountNumber} -{' '}\n {' '}\n {getAccountStatus(accountStatus || '')}\n \n \n );\n};\n","import React from 'react';\nimport { BlockBody } from '@tradingblock/components';\nimport { BlockType } from '@tradingblock/types';\nimport { Block } from '../../components/blocks/Block';\nimport { getBlockProps } from '../../utilities/block';\nimport { AccountManagementContent } from './AccountManagementContent';\nimport { AccountManagementHeader } from './AccountManagmentHeader';\n\nexport const AccountManagementContentBlock: React.FunctionComponent<{}> = () => {\n return (\n \n \n \n );\n};\n\nexport const AccountManagementBlock: React.FunctionComponent<{}> = () => {\n return (\n \n )}\n >\n \n \n );\n};\n","import React, { useMemo } from 'react';\nimport dayjs from 'dayjs';\nimport { isOCCSymbol, OCCSymbolToOptionData, deriveOptionExpirationType } from '@tradingblock/api';\nimport { OptionType, OptionExpirationType } from '@tradingblock/types';\nimport _ from 'lodash';\n\nconst OptionSymbolName: React.FC<{ symbol: string; underlyingSymbol: string }> = ({ symbol, underlyingSymbol }) => {\n const { expiration, strike, option } = OCCSymbolToOptionData(symbol);\n const optionExpirationType = deriveOptionExpirationType(symbol, underlyingSymbol || '');\n const symbolDate = useMemo(() => _([dayjs(expiration).format('MMM D'), optionExpirationType === OptionExpirationType.AM ? ' AM' : '']).join(''), [expiration, optionExpirationType]);\n return (\n <>\n {underlyingSymbol}\n {symbolDate}\n \n {strike} {option === OptionType.Call ? 'Call' : 'Put'}\n \n \n );\n};\n\nexport const SymbolName: React.FC<{ symbol: string; underlyingSymbol: string }> = ({ symbol, underlyingSymbol }) => {\n return (\n <>\n {isOCCSymbol(symbol) && }\n {!isOCCSymbol(symbol) && {symbol}}\n \n );\n};\n","/* eslint-disable react/display-name */\nimport React, { useMemo, useCallback, useState, useEffect, useRef } from 'react';\nimport { Cell } from 'react-table';\nimport _ from 'lodash';\nimport { AssetSymbol, OrderAction, AssetType } from '@tradingblock/types';\nimport { toAssetSymbol, AssetTypeToSymbolType, OrderBuilderType, isOCCSymbol, isIndexSymbol } from '@tradingblock/api';\nimport { EmptyBlockContent, Loading, Number, SignedNumber } from '@tradingblock/components';\nimport {\n useStateSelector,\n getFavorites,\n getFavoriteSymbols,\n dashboardIdSelector,\n} from '../../data/global/dataSelectors';\nimport { getQuotesBySymbols } from '../../data/global/selectors/quoteSelector';\nimport { SymbolName } from '../../components/basic/SymbolName';\nimport { useDispatcher } from '../../data/global/hooks';\n\nimport { DirectionalPrice } from '../../components/trading/DirectionalPrice';\nimport { useTradeSymbolAction } from '../../components/blocks/hooks/useOrderBlock';\nimport { useChartSymbolAction, PriceChartBuilderType } from '../../components/blocks/hooks/usePriceChartBlock';\nimport { TradeOrderButton, ChartButton } from '../../components/blocks/actions/OrderActionButtons';\nimport { useBlockGroupInfo } from '../useGroupState';\nimport { changeCalculation } from '../../utilities/position';\nimport { useFavoriteSettings } from './useFavoriteSettings';\nimport { BlockTable } from '../shared/BlockTable';\nimport { BlockAction, useBlockMetadata } from '../../components/blocks/BlockState';\nimport { useBlockTable } from '../shared/table/useBlockTableActions';\n\ninterface FavoriteRowProps {\n AssetSymbol: AssetSymbol;\n Symbol: string;\n LastTradePrice: number;\n NetChange: number;\n ChangePercentage: number;\n BidPrice: number;\n AskPrice: number;\n Open: number;\n High: number;\n Low: number;\n ClosePrice: number;\n ClosePriceTMinus2: number;\n IsSettlementSet: boolean;\n CalculatedNetChange: number;\n CalculatedChangePercent: number;\n}\n\nconst DefaultQuoteData = {\n Symbol: '',\n LastTradePrice: 0,\n NetChange: 0,\n ChangePercentage: 0,\n BidPrice: 0,\n AskPrice: 0,\n Open: 0,\n High: 0,\n Low: 0,\n ClosePrice: 0,\n ClosePriceTMinus2: 0,\n IsSettlementSet: false,\n CalculatedNetChange: 0,\n CalculatedChangePercent: 0,\n};\n\nexport const FavoritesContent: React.FunctionComponent<{}> = () => {\n const { state } = useBlockTable('favorites');\n const [sortBy, setSortBy] = useState(undefined);\n const [sortDirection, setSortDirection] = useState<'asc' | 'desc' | undefined>(undefined);\n const { groupId } = useBlockGroupInfo();\n const { favorites, symbols } = useStateSelector(s => ({\n favorites: getFavorites(s),\n symbols: getFavoriteSymbols(s),\n }));\n const [pageIndex, setPageIndex] = useState(state.pageIndex);\n const [pageSize, setPageSize] = useState(state.pageSize);\n const total = _.size(favorites);\n\n const { dispatcher } = useDispatcher();\n const remove = useCallback(\n (symbol: string) => {\n dispatcher.favorites.remove(symbol);\n },\n [dispatcher.favorites]\n );\n\n const quoteMetaData = useStateSelector(s => getQuotesBySymbols(s, symbols));\n\n const data = useMemo(() => {\n return _.filter(\n _.map(favorites, f => {\n const quoteData = _.find(quoteMetaData, q => q.Symbol === f.symbol) || DefaultQuoteData;\n const {\n Symbol,\n LastTradePrice,\n NetChange,\n ChangePercentage,\n ClosePrice,\n Open,\n High,\n Low,\n BidPrice,\n AskPrice,\n IsSettlementSet,\n ClosePriceTMinus2,\n } = quoteData;\n\n const { change, changePercent } = changeCalculation(\n LastTradePrice,\n ClosePrice,\n ClosePriceTMinus2,\n BidPrice,\n AskPrice,\n Symbol,\n IsSettlementSet\n );\n return {\n Symbol,\n AssetSymbol: f,\n LastTradePrice,\n NetChange,\n ChangePercentage,\n BidPrice,\n AskPrice,\n Open,\n High,\n Low,\n ClosePrice,\n ClosePriceTMinus2,\n IsSettlementSet,\n CalculatedNetChange: change,\n CalculatedChangePercent: changePercent * 100,\n };\n }),\n d => !!d.Symbol\n );\n }, [quoteMetaData]);\n\n const getRowKey = useCallback((data: FavoriteRowProps) => `${data.Symbol}`, []);\n\n const getCurrentSortBy = useCallback(\n (newDesc?: boolean) => {\n if (sortBy) {\n return { id: sortBy, desc: !_.isUndefined(newDesc) ? newDesc : sortDirection === 'desc' };\n }\n return undefined;\n },\n [sortBy, sortDirection]\n );\n\n const [tableColumnOrder, setTableColumnOrder] = useState([]);\n\n const onSort = useCallback(\n (sort: any[]) => {\n const sortVal = _.first(sort) || getCurrentSortBy(sortDirection === 'asc');\n if (sortVal) {\n const { id, desc, asc } = sortVal;\n setSortBy(id);\n setSortDirection(desc ? 'desc' : asc ? 'asc' : undefined);\n }\n },\n [tableColumnOrder]\n );\n\n const getColumnOrder = (columns: string[]) => {\n return setTableColumnOrder(columns);\n };\n\n const { blockId } = useBlockMetadata();\n const dashboardId = useStateSelector(dashboardIdSelector);\n const { type } = useBlockMetadata();\n const { dispatch } = useDispatcher();\n const blockType = type;\n const blocksLoading = useStateSelector(s => s.blocks.isFetching);\n\n useEffect(() => {\n const settingsSaveData = {\n dashboardId: dashboardId || '',\n blockId,\n blockType,\n blockSettings: {\n ...current,\n },\n };\n dispatch(BlockAction.setSettings(settingsSaveData.blockSettings));\n dispatcher.settings.block.setBlockSetting(settingsSaveData);\n return () => {\n dispatch(BlockAction.setSettings(settingsSaveData.blockSettings));\n dispatcher.settings.block.setBlockSetting(settingsSaveData);\n };\n }, [tableColumnOrder, sortBy]);\n\n const pageCount = useMemo(() => {\n if (pageSize) {\n return _.ceil((total || 0) / pageSize) === 0 ? 1 : _.ceil((total || 0) / pageSize);\n }\n return 0;\n }, [total, pageSize]);\n\n const onPage = useCallback((pageIndex: number) => {\n setPageIndex(pageIndex);\n }, []);\n\n const onPageSize = useCallback((pageSize: number) => {\n setPageSize(pageSize);\n }, []);\n\n const columns: any[] = useMemo(\n () => [\n {\n Header: 'Symbol',\n accessor: 'Symbol',\n canSort: true,\n Cell: ({ row }: Cell) => (\n \n ),\n },\n {\n Header: 'Last',\n accessor: 'LastTradePrice',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => ,\n },\n {\n Header: 'Change',\n accessor: 'NetChange',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n const val = useRef(0.0);\n if (row.original.NetChange) val.current = row.original.NetChange;\n return ;\n },\n },\n {\n Header: '(%)',\n accessor: (a: FavoriteRowProps) => a.ChangePercentage,\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n const val = useRef(0.0);\n if (row.original.ChangePercentage) val.current = row.original.ChangePercentage;\n return ;\n },\n },\n {\n Header: 'Bid',\n accessor: 'BidPrice',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n return isIndexSymbol(row.original.Symbol) ? '' : ;\n },\n },\n {\n Header: 'Ask',\n accessor: 'AskPrice',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n return isIndexSymbol(row.original.Symbol) ? '' : ;\n },\n },\n {\n Header: 'Open',\n accessor: 'Open',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n const isOption = row.original.AssetSymbol.symbol.split(' ').length > 1;\n const isIndex = row.original.AssetSymbol.assetType === AssetType.Index;\n if (isOption || isIndex) return <>;\n return ;\n },\n },\n {\n Header: 'Prev. Close',\n accessor: 'ClosePrice',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n return (\n \n );\n },\n },\n {\n Header: 'Close',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n if (row.original.AssetSymbol.assetType === AssetType.Index) {\n return <>;\n }\n if (row.original.IsSettlementSet) {\n return ;\n } else {\n return ;\n }\n },\n },\n {\n Header: 'High',\n accessor: 'High',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => ,\n },\n {\n Header: 'Low',\n accessor: 'Low',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => ,\n },\n {\n Header: 'Trade',\n id: 'trade',\n Cell: ({ row }: Cell) => {\n const assetSymbol = row.original.AssetSymbol;\n const underlyingSymbol = assetSymbol.underlyingSymbol || assetSymbol.symbol;\n const baseAssetSymbol = toAssetSymbol(\n underlyingSymbol,\n assetSymbol.assetType,\n AssetTypeToSymbolType(assetSymbol.assetType),\n { name: assetSymbol.name, underlyingSymbol, rootSymbol: underlyingSymbol }\n );\n const orderBuilder = useCallback((builder: OrderBuilderType) => {\n return builder.action(OrderAction.Buy);\n }, []);\n const handleTradeClick = useTradeSymbolAction(baseAssetSymbol, orderBuilder, { groupId });\n return handleTradeClick()} />;\n },\n },\n {\n Header: 'Chart',\n id: 'chart',\n Cell: ({ row }: Cell) => {\n const assetSymbol = row.original.AssetSymbol;\n const underlyingSymbol = assetSymbol.underlyingSymbol || assetSymbol.symbol;\n const baseAssetSymbol = toAssetSymbol(\n underlyingSymbol,\n assetSymbol.assetType,\n AssetTypeToSymbolType(assetSymbol.assetType),\n { name: assetSymbol.name, underlyingSymbol, rootSymbol: underlyingSymbol }\n );\n const isOCC = isOCCSymbol(assetSymbol.symbol);\n const priceChartBuilder = useCallback((builder: PriceChartBuilderType) => {\n return builder;\n }, []);\n const handleChart = useChartSymbolAction(baseAssetSymbol, priceChartBuilder, { groupId });\n const handleClick = () => {\n handleChart();\n groupId && dispatcher.blockGroup.setSymbol(groupId, assetSymbol);\n };\n //Don't show for option/symbol rows\n if (isOCC) {\n return null;\n }\n return ;\n },\n },\n {\n Header: 'Remove',\n id: 'favorites-last-col',\n className: 'col-delete',\n Cell: ({ row }: Cell) => (\n {\n remove(row.original.Symbol);\n }}\n type=\"button\"\n >\n \n \n ),\n },\n ],\n [remove, groupId, dispatcher.favorites.request, tableColumnOrder]\n );\n\n const { filterHiddenColumns, current } = useFavoriteSettings();\n const filterColumns = useCallback(() => filterHiddenColumns(columns, current), [current, columns, tableColumnOrder]);\n\n const initialState = useMemo(() => {\n const currentSortBy = getCurrentSortBy();\n return {\n pageSize: _.isUndefined(pageSize) ? 50 : pageSize,\n pageIndex: pageIndex || 0,\n sortBy: currentSortBy ? [currentSortBy] : [],\n columnOrder: [],\n };\n }, [pageSize, pageIndex, total]);\n\n // we need to chunk the data based on the current page size and page index\n const chunkedData = useMemo(() => {\n if (pageSize === 0) {\n return data;\n }\n const start = pageIndex * pageSize;\n const end = start + pageSize;\n return data.slice(start, end);\n }, [data, pageIndex, pageSize]);\n\n return (\n <>\n {data && data.length > 0 && !blocksLoading && (\n \n )}\n {!data || (data.length === 0 && You have no favorites.)}\n {blocksLoading && }\n \n );\n};\n","import { OptionType } from '@tradingblock/components';\nimport { AssetSymbol, BlockType } from '@tradingblock/types';\nimport React, { useCallback, useState } from 'react';\nimport { getFavorites, useStateSelector } from '../../data/global/dataSelectors';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { SymbolPickerHeader } from '../shared/SymbolPickerHeader';\n\nexport const FavoritesHeader = () => {\n const { dispatcher } = useDispatcher();\n\n const onSelect = useCallback(\n (value: OptionType) => {\n const symbolName = value ? value.data : undefined;\n if (symbolName) {\n dispatcher.favorites.add(symbolName);\n }\n setSymbolFound(false);\n },\n [dispatcher.favorites]\n );\n\n const { favorites } = useStateSelector(s => ({\n favorites: getFavorites(s),\n }));\n\n const [symbolFound, setSymbolFound] = useState(false);\n\n return (\n <>\n
    \n
    \n setSymbolFound(false)}\n onSearch={(query) => {\n if (!query) {\n setSymbolFound(false);\n } else {\n const found = favorites.find((f) => f.symbol.toLowerCase() === query.toLowerCase());\n setSymbolFound(found !== undefined);\n }\n }}\n placeholder=\"Add...\"\n clearOptionsOnSelect={true}\n />\n
    \n
    \n {symbolFound && Symbol already in favorites}\n
    \n
    \n \n );\n};\n","import React, { useCallback, } from 'react';\nimport { BlockType } from '@tradingblock/types';\nimport { BlockBody, EmptyBlockContent, Loading } from '@tradingblock/components';\nimport { FavoritesContent } from './FavoritesContent';\nimport { Block } from '../../components/blocks/Block';\nimport { useQuoteSymbolSubscriptionFromGlobalState } from '../../hooks/useQuoteData';\nimport { getFavoriteSymbols, useStateSelector } from '../../data/global/dataSelectors';\nimport { getBlockProps } from '../../utilities/block';\nimport { FavoritesHeader } from './FavoritesHeader';\nimport { useBlockStateSelector } from '../../components/blocks/BlockState';\nimport { DataState } from '../../data/global/state';\nimport { initialPositionsAreLoading } from '../../data/global/selectors/positionSelector';\nimport { useFavoriteSettings } from './useFavoriteSettings';\n\nexport const FavoritesBlock: React.FunctionComponent<{}> = () => {\n useQuoteSymbolSubscriptionFromGlobalState(getFavoriteSymbols);\n const isLoaded = useStateSelector(state => state.blocks.isFetchingInitial === false);\n const loaded = useBlockStateSelector(s => s.data.isLoaded === true);\n const dataAndBlockLoaded = isLoaded === true && loaded === true;\n\n const isFetchingSelector = useCallback((state: DataState) => {\n const { loading } = initialPositionsAreLoading(state);\n return loading;\n }, []);\n\n const { current, definitions } = useFavoriteSettings();\n\n return (\n }\n isFetchingSelector={isFetchingSelector}\n settings={current}\n isRefreshable={true}\n settingFields={definitions}\n >\n \n {dataAndBlockLoaded && }\n {!dataAndBlockLoaded && {}}\n \n \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useCallback } from 'react';\nimport { OptionType } from '@tradingblock/components';\nimport { AssetSymbol, BlockType } from '@tradingblock/types';\nimport { OrderState } from './state/OrderState';\nimport { useOrderActions } from './state/useOrderActions';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { useStateSelector, blockGroupId } from '../../data/global/dataSelectors';\nimport { useBlockData, useBlockMetadata } from '../../components/blocks/BlockState';\nimport { SymbolPickerHeader } from '../shared/SymbolPickerHeader';\nimport { useGroupState } from '../useGroupState';\n\ninterface OrderHeaderProps {}\n\nexport const OrderHeader: React.FC = () => {\n const [symbol] = useGroupState('symbol');\n const { isLoaded } = useBlockData();\n const { blockId } = useBlockMetadata();\n const groupId = useStateSelector(s => blockGroupId(s, blockId));\n const { dispatcher } = useDispatcher();\n const setGroupSymbol = dispatcher.blockGroup.setSymbol;\n const { setSymbol } = useOrderActions();\n\n const onSelect = useCallback(\n (value: OptionType) => {\n const symbolValue = value ? value.data : undefined;\n const symbolName = symbolValue ? symbolValue.symbol : undefined;\n if (symbolName && symbolValue && groupId) {\n //setSym(symbolValue);\n setSymbol(symbolValue, false, { persist: true });\n setGroupSymbol(groupId, symbolValue);\n }\n },\n [groupId]\n );\n // useEffect(() => {\n // if (groupId && sym && (!symbol || sym.symbol !== symbol.symbol)) {\n // setSymbol(sym, { persist: true });\n // setGroupSymbol(groupId, sym);\n // }\n // }, [sym]);\n const onClear = useCallback(() => {\n //setSymbol(undefined);\n if (groupId !== undefined) {\n setSymbol(undefined, false, { persist: true });\n setGroupSymbol(groupId, undefined);\n } else {\n console.log('not clearing block because group is undefined');\n }\n }, [setGroupSymbol, groupId]);\n\n return (\n \n );\n};\n\nexport const OrderHeaderMemo = React.memo(OrderHeader);\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport { useEffect, useMemo } from 'react';\nimport _ from 'lodash';\nimport { ITradingBlockApi } from '@tradingblock/api';\nimport { Expiration } from '@tradingblock/types';\nimport { useWhyDidYouUpdate } from '@tradingblock/components';\nimport { useOrderData } from '../state/OrderState';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { useDispatcher, TradingBlockDispatcher } from '../../../data/global/hooks';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { StrikeSelectors, ExpirationSelectors } from '../../../data/global/selectors/expirationStrikeSelector';\nimport { useApi } from '../../../context/Api';\nimport { isSameExpiration } from '../../../utilities/date';\n\n// const loadStrikes = (api: ITradingBlockApi, dispatcher: TradingBlockDispatcher) => async (symbolVal: string, expirationVal: Expiration) => {\n// try {\n// dispatcher.strikes.request(symbolVal, expirationVal);\n// const request = await api.options.strikes(symbolVal, expirationVal.date, expirationVal.optionExpirationType);\n// const strikes = request.payload;\n// dispatcher.strikes.receive(symbolVal, expirationVal, strikes);\n// return strikes;\n// } catch (err) {\n// console.warn('loading strikes failed');\n// }\n// };\n\nexport const useExpirationLoader = (symbol: string) => {\n const expirations = useStateSelector(state => ExpirationSelectors.expirations(state, symbol));\n const expirationsLoading = useStateSelector(state => ExpirationSelectors.isFetching(state, symbol));\n const expirationsAreLoaded = useMemo(() => expirations && expirations.length > 0, [expirations]);\n const { dispatcher } = useDispatcher();\n const api = useApi();\n useEffect(() => {\n const loadExpirations = async (symbolVal: string) => {\n try {\n dispatcher.expirations.request(symbolVal);\n // const request = await api.options.expirations(symbolVal);\n // const expirations = request.payload.expirations;\n // dispatcher.expirations.receive(symbolVal, expirations);\n } catch (err) {\n console.warn('loading expirations failed');\n }\n };\n if (symbol && !expirationsAreLoaded && !expirationsLoading) {\n loadExpirations(symbol);\n }\n }, [symbol]);\n useWhyDidYouUpdate('Order:useExpirationLoader', {\n symbol,\n expirations,\n expirationsLoading,\n expirationsAreLoaded,\n dispatcher,\n api,\n });\n};\n\n// const useStrategyRules = (): { expirationRule: ExpirationRules; strikeRule: StrikeRules | undefined } => {\n// const strategy = useOrderData(OrderSelectors.strategy);\n// const expirationRule = () => {\n// if (!strategy || isCustomStrategy(strategy)) {\n// return ExpirationRules.SameExpiry;\n// }\n// return strategy.profile.Rules && strategy.profile.Rules.Expiration ? strategy.profile.Rules.Expiration : ExpirationRules.SameExpiry;\n// };\n// const strikeRule = () => {\n// if (!strategy || isCustomStrategy(strategy)) {\n// return undefined;\n// }\n// return strategy.profile.Rules && strategy.profile.Rules.Strike ? strategy.profile.Rules.Strike : undefined;\n// };\n// return {\n// expirationRule: expirationRule(),\n// strikeRule: strikeRule(),\n// };\n// };\n// const useLegExpirations = (symbol: string) => {\n// const strategy = useOrderData(OrderSelectors.strategy);\n// const legCount = useMemo(() => (strategy && !isCustomStrategy(strategy) ? strategy.info.LegsAmount : 1), [strategy]);\n// const { expirationRule } = useStrategyRules();\n// const expirations = useStateSelector(state => ExpirationSelectors.expirations(state, symbol || ''));\n// const values = useMemo(() => {\n// const defaultValues = _(expirations)\n// .map(d => dayjs(d))\n// .filter((d: dayjs.Dayjs): boolean => {\n// return d.isAfter(dayjs().add(3, 'week')) && d.isBefore(dayjs().add(5, 'week'));\n// })\n// .orderBy(d => d.unix())\n// .take(expirationRule === ExpirationRules.DifferentExpiries ? legCount : 1)\n// .value();\n// return _.unionBy(defaultValues, v => v.unix());\n// }, [expirations]);\n// return values;\n// };\n\nexport const useOptionDefaults = (symbol: string) => {\n const legExpirations = useOrderData(OrderSelectors.legExpirations);\n const expirationsBySymbol: Expiration[] = useStateSelector(state =>\n StrikeSelectors.expirationsBySymbol(state, symbol)\n );\n const existingLegExpirationWithoutStrikes = useMemo(() => {\n const res = _.filter(legExpirations, exp => {\n const existingStrikes = _.find(expirationsBySymbol, strikeExp => isSameExpiration(strikeExp, exp.expiration));\n return existingStrikes ? false : true;\n });\n return res;\n }, [legExpirations, expirationsBySymbol]);\n const api = useApi();\n const { dispatcher } = useDispatcher();\n // const strikeFetcher = loadStrikes(api, dispatcher);\n useEffect(() => {\n const loadExpirationStrikes = async (expirationValues: Expiration[]) => {\n const strikes = _.map(expirationValues, exp => {\n dispatcher.strikes.request(symbol, exp);\n //strikeFetcher(symbol, exp)\n });\n const allStrikes = await Promise.all(strikes);\n return allStrikes;\n };\n\n if (existingLegExpirationWithoutStrikes.length > 0) {\n loadExpirationStrikes(existingLegExpirationWithoutStrikes.map(e => e.expiration));\n }\n }, [symbol, existingLegExpirationWithoutStrikes]);\n};\n","import { PositionInfo } from '@tradingblock/types';\nimport _ from 'lodash';\nimport { areArraysEqual } from './data';\n\nconst toSortedValues = (info: PositionInfo) =>\n _(info)\n .map((v, k) => ({ symbol: k, ...v }))\n .orderBy(v => v.symbol)\n .value();\n\nexport const areEqual = (info: PositionInfo, info2: PositionInfo) => {\n const first = toSortedValues(info);\n const second = toSortedValues(info2);\n return areArraysEqual(first, second);\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport { useEffect } from 'react';\nimport { useWhyDidYouUpdate } from '@tradingblock/components';\nimport { useOrderActions } from '../state/useOrderActions';\nimport { useOrderData } from '../state/OrderState';\nimport { OrderSymbolList, OrderPositions } from '../state/OrderLegSelector';\nimport { useStateSelector, positionInfos } from '../../../data/global/dataSelectors';\nimport { useBlockId } from '../../../components/blocks/BlockState';\nimport { areEqual } from '../../../utilities/order';\n\nexport const useOrderPositionSync = () => {\n const blockId = useBlockId();\n const { setPositionInfo } = useOrderActions();\n const orderSymbols = useOrderData(s => OrderSymbolList(s, blockId));\n const localPositions = useOrderData(s => OrderPositions(s, blockId));\n\n const positionInfo = useStateSelector(s => positionInfos(s, orderSymbols.map(os => os.symbol), blockId));\n\n useWhyDidYouUpdate('useOrderPositionSync', { positionInfo, localPositions, orderSymbols, blockId });\n useEffect(() => {\n if (localPositions && !areEqual(localPositions, positionInfo)) {\n setPositionInfo(positionInfo);\n }\n }, [positionInfo, setPositionInfo, orderSymbols, localPositions]);\n};\n","import React, { useMemo } from 'react';\nimport _ from 'lodash';\nimport {\n OrderAction,\n StrategyType,\n OrderActionDirection,\n isCustomStrategy,\n TradingStrategy,\n CustomTradingStrategy,\n OrderLegDTO,\n AssetType,\n OrderClass,\n} from '@tradingblock/types';\nimport { useOrderData, OrderStrength } from '../state/OrderState';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { DtoToOrderleg, isCalendarStrategy } from '../OrderUtilities';\nimport { useBlockGroupInfo } from '../../useGroupState';\nimport { useOrderAssetSymbolOrUndefined } from '../state/useOrderState';\nimport { useOrderCopyAction } from '../../../components/blocks/hooks/useOrderBlock';\nimport { AssetTypeToSymbolType, toAssetSymbol } from '@tradingblock/api';\nimport { useOrderSettings } from '../hooks/useOrderSettings';\nimport { Svg } from '@tradingblock/components';\n\ninterface StrengthIcon {\n icon: string;\n css: string;\n}\ninterface StrengthDef {\n icons: StrengthIcon | StrengthIcon[];\n text: string;\n css?: 'pos' | 'neg';\n}\ntype StrengthMap = { [key in OrderStrength]: StrengthDef };\ntype SentimentMap = {\n [key in StrategyType]: T;\n};\n\nconst SentimentIcons: SentimentMap = {\n [StrategyType.Bull]: {\n [OrderStrength.Low]: { icons: { icon: `far fa-triangle`, css: 'pos' }, text: 'Somewhat Bullish', css: 'pos' },\n [OrderStrength.Medium]: {\n icons: { icon: `fa fa-triangle`, css: 'pos' },\n text: 'Bullish',\n css: 'pos',\n },\n [OrderStrength.High]: {\n icons: [{ icon: `far fa-triangle`, css: 'pos' }, { icon: `fa fa-triangle`, css: 'pos' }],\n text: 'Very Bullish',\n css: 'pos',\n },\n [OrderStrength.VeryHigh]: {\n icons: [{ icon: `fa fa-triangle`, css: 'pos' }, { icon: `fa fa-triangle`, css: 'pos' }],\n text: 'Most Bullish',\n css: 'pos',\n },\n },\n [StrategyType.Bear]: {\n [OrderStrength.Low]: {\n icons: { icon: `far fa-triangle fa-rotate-180`, css: 'neg' },\n text: 'Somewhat Bearish',\n css: 'neg',\n },\n [OrderStrength.Medium]: {\n icons: { icon: `fa fa-triangle fa-rotate-180`, css: 'neg' },\n text: 'Bearish',\n css: 'neg',\n },\n [OrderStrength.High]: {\n icons: [\n { icon: `far fa-triangle fa-rotate-180`, css: 'neg' },\n { icon: `fa fa-triangle fa-rotate-180`, css: 'neg' },\n ],\n text: 'Very Bearish',\n css: 'neg',\n },\n [OrderStrength.VeryHigh]: {\n icons: [\n { icon: `fa fa-triangle fa-rotate-180`, css: 'neg' },\n { icon: `fa fa-triangle fa-rotate-180`, css: 'neg' },\n ],\n text: 'Most Bearish',\n css: 'neg',\n },\n },\n [StrategyType.Volatility]: {\n [OrderStrength.Low]: {\n icons: [{ icon: `far fa-triangle`, css: 'pos' }, { icon: `far fa-triangle fa-rotate-180`, css: 'neg' }],\n text: 'Low Volatility',\n },\n [OrderStrength.Medium]: {\n icons: [{ icon: `far fa-triangle`, css: 'pos' }, { icon: `far fa-triangle fa-rotate-180`, css: 'neg' }],\n text: 'Med Volatility',\n },\n [OrderStrength.High]: {\n icons: [{ icon: `fa fa-triangle`, css: 'pos' }, { icon: `fa fa-triangle fa-rotate-180`, css: 'neg' }],\n text: 'High Volatility',\n },\n [OrderStrength.VeryHigh]: {\n icons: [{ icon: `fa fa-triangle`, css: 'pos' }, { icon: `fa fa-triangle fa-rotate-180`, css: 'neg' }],\n text: 'High Volatility',\n },\n },\n};\n\nexport const useStrategySentiment = (strategy: TradingStrategy | CustomTradingStrategy) => {\n const action = useOrderData(OrderSelectors.action);\n const orderSentiment = useMemo(() => {\n if (!strategy || !action) {\n return undefined;\n }\n if (isCustomStrategy(strategy) || isCalendarStrategy(strategy)) {\n return undefined;\n }\n const dir = action === OrderAction.Buy ? OrderActionDirection.Long : OrderActionDirection.Short;\n const directionInfo = strategy.profile[dir];\n const stratType = directionInfo ? directionInfo.StrategyType : undefined;\n const strengthVal = directionInfo ? directionInfo.Strength : undefined;\n if (!stratType || strengthVal === undefined) {\n return undefined;\n }\n let strength = OrderStrength.Low;\n if (strengthVal <= 3) {\n strength = OrderStrength.Low;\n } else if (strengthVal <= 6) {\n strength = OrderStrength.Medium;\n } else if (strengthVal <= 8) {\n strength = OrderStrength.High;\n } else {\n strength = OrderStrength.VeryHigh;\n }\n let overallSentimentClass = stratType === StrategyType.Bull ? 'pos' : stratType === StrategyType.Bear ? 'neg' : '';\n return {\n strength,\n type: stratType,\n overallSentimentClass,\n };\n }, [action, strategy]);\n\n const sentimentDef = useMemo(\n () => (orderSentiment ? SentimentIcons[orderSentiment.type][orderSentiment.strength] : undefined),\n [orderSentiment]\n );\n\n const sentimentClass = useMemo(() => (sentimentDef && sentimentDef.css ? sentimentDef.css : ''), [sentimentDef]);\n const sentimentText = useMemo(() => (sentimentDef && sentimentDef.text ? sentimentDef.text : ''), [sentimentDef]);\n\n const icons = useMemo(() => {\n return sentimentDef ? (_.isArray(sentimentDef.icons) ? sentimentDef.icons : [sentimentDef.icons]) : [];\n }, [sentimentDef]);\n\n return {\n sentiment: orderSentiment,\n icons,\n sentimentClass,\n sentimentText,\n };\n};\n\nexport const OrderSentiment: React.FC<{\n strategy: any;\n legs: OrderLegDTO[];\n}> = ({ strategy, legs }) => {\n const { icons, sentimentText, sentimentClass } = useStrategySentiment(strategy as TradingStrategy);\n const { groupId } = useBlockGroupInfo();\n\n const assSymbol = toAssetSymbol(\n legs.length > 0 ? legs[0].UnderlyingSymbol : '',\n AssetType.Equity,\n AssetTypeToSymbolType(AssetType.Equity),\n {\n name: legs.length > 0 ? legs[0].UnderlyingSymbol : undefined,\n underlyingSymbol: legs.length > 0 ? legs[0].UnderlyingSymbol : undefined,\n rootSymbol: legs.length > 0 ? legs[0].UnderlyingSymbol : undefined,\n }\n );\n const action = useOrderData(OrderSelectors.action);\n const invertSentiment = action === 1 ? { transform: 'scaleY(1)' } : { transform: 'scaleY(-1)' };\n const assetSymbol = useOrderAssetSymbolOrUndefined();\n const assetSymbolInfo = _.omit(assetSymbol, ['name', 'provider']);\n const orderData = useOrderData(s => s);\n const isCalendar = isCalendarStrategy(strategy as TradingStrategy);\n const isCoveredCallOrMarriedPut = strategy.info.Name === 'Covered Call' || strategy.info.Name === 'Married Put';\n const isButterflyCallOrPut = strategy.info.Name === 'Call Butterfly' || strategy.info.Name === 'Put Butterfly';\n const isSingleLeggedStrategy = useOrderData(OrderSelectors.isSingleLegStrategy);\n\n const createOrder = () => {\n let quantity = Math.max(...[orderData.quantity, ...legs.map(l => (l.SpreadRatio ? l.SpreadRatio : 0))]);\n\n if (isCoveredCallOrMarriedPut) {\n const shareLeg = legs.find(l => l.AssetType === AssetType.Equity);\n const shareLegRatio = shareLeg ? shareLeg.SpreadRatio : 100;\n quantity = shareLegRatio ? shareLegRatio / 100 : 1;\n }\n\n return {\n Legs: legs.map(leg => ({\n ...DtoToOrderleg(leg, assetSymbolInfo),\n SpreadRatio: isSingleLeggedStrategy\n ? undefined\n : isCoveredCallOrMarriedPut\n ? leg.AssetType === AssetType.Option\n ? orderData.quantity\n : 100 * orderData.quantity\n : isButterflyCallOrPut\n ? leg.SpreadRatio && leg.SpreadRatio * orderData.quantity\n : orderData.quantity,\n })),\n OrderClass: legs.length > 1 ? OrderClass.Multileg : OrderClass.Single,\n Duration: orderData.duration,\n Quantity: quantity,\n OrderType: orderData.orderType,\n AllOrNone: false,\n Description: '',\n };\n };\n\n const copy = useOrderCopyAction(createOrder(), assetSymbol || assSymbol, { groupId }, undefined, true);\n const copyOrder = () => copy();\n const { verboseSentiment } = useOrderSettings();\n const optionLegsHaveExpirationAndStrike = useMemo(() => {\n return (\n legs.filter(leg => leg.AssetType === AssetType.Option).length ===\n legs.filter(leg => leg.AssetType === AssetType.Option && leg.Strike && leg.Expiration).length\n );\n }, [legs, invertSentiment]);\n\n return (\n <>\n {\n window.onscroll = () => {\n window.scroll(0, 0);\n };\n copyOrder();\n }}\n disabled={!optionLegsHaveExpirationAndStrike}\n title={\n optionLegsHaveExpirationAndStrike\n ? 'Change to a custom strategy'\n : 'Please set expiration and strike for all options prior to changing to a custom strategy'\n }\n // style to denote when the button is available/disabled\n style={{\n opacity: optionLegsHaveExpirationAndStrike ? 1 : 0.5,\n cursor: optionLegsHaveExpirationAndStrike ? 'pointer' : 'not-allowed',\n }}\n >\n {verboseSentiment && (\n
    \n \n {icons.map((ic, ind) => (\n \n \n \n ))}\n {isCalendar && !verboseSentiment && (\n \n \n \n )}\n \n
    \n )}\n
    \n
    \n {verboseSentiment && (\n <>\n
    Sentiment
    \n
    {sentimentText}
    \n \n )}\n {isCalendar && verboseSentiment &&
    VOL PLAY
    }\n
    \n
    \n \n {strategy && (\n <>\n \n {(strategy.info.IconKind as string) === 'svg' ? (\n \n \n \n ) : (\n \n )}\n \n {''}\n \n )}\n \n \n \n );\n};\n","import React from 'react';\nimport { AssetType, DebitOrCredit, OrderAction, OrderLegDTOState, TradingStrategy } from '@tradingblock/types';\nimport { useStrategySentiment } from './OrderSentiment';\nimport { useOrderCopyAction } from '../../../components/blocks/hooks/useOrderBlock';\nimport { useOrderBlockData, useOrderData } from '../state/OrderState';\nimport { DtoToOrderleg } from '../OrderUtilities';\nimport { useOrderAssetSymbolOrUndefined } from '../state/useOrderState';\nimport _ from 'lodash';\nimport { useBlockGroupInfo } from '../../useGroupState';\nimport { AssetTypeToSymbolType, toAssetSymbol } from '@tradingblock/api';\nimport { OrderSelectors } from '../state/OrderSelector';\n\nexport const OrderStrategyMatch: React.FC<{ strategy: TradingStrategy; legs: OrderLegDTOState[] }> = ({\n strategy,\n legs,\n}) => {\n const { sentimentClass, sentimentText } = useStrategySentiment(strategy);\n const { groupId } = useBlockGroupInfo();\n\n const assetSymbolValue = toAssetSymbol(\n legs[0].UnderlyingSymbol,\n AssetType.Equity,\n AssetTypeToSymbolType(AssetType.Equity),\n {\n name: legs[0].UnderlyingSymbol,\n underlyingSymbol: legs[0].UnderlyingSymbol,\n rootSymbol: legs[0].UnderlyingSymbol,\n }\n );\n\n const assetSymbol = useOrderAssetSymbolOrUndefined() || assetSymbolValue;\n const assetSymbolInfo = _.omit(assetSymbol, ['name', 'provider']);\n const orderData = useOrderData(s => s);\n const debitCredit = useOrderBlockData(OrderSelectors.debitOrCredit, DebitOrCredit.Debit);\n let orderAction = debitCredit === DebitOrCredit.Debit ? OrderAction.Buy : OrderAction.Sell;\n\n const createOrder = () => {\n // covered call/covered puts have a size ratio of 100(shares):1(option) and are not receiving the correct quantity values when setting creating the order\n // so we need to set the quantity to the max of the quantity and the spread ratio\n // if 500 shares and 5 options, the quantity should be 5 (100:1)\n // otherwise utilize Math.max(...[orderData.quantity, ...legs.map(l => (l.SpreadRatio ? l.SpreadRatio : 0))]);\n\n let quantity = Math.max(...[orderData.quantity, ...legs.map(l => (l.SpreadRatio ? l.SpreadRatio : 0))]);\n const isCoveredCallOrMarriedPut = strategy.info.Name === 'Covered Call' || strategy.info.Name === 'Married Put';\n const isButterflyCallOrPut = strategy.info.Name === 'Call Butterfly' || strategy.info.Name === 'Put Butterfly';\n\n if (isCoveredCallOrMarriedPut) {\n const shareLeg = legs.find(l => l.AssetType === AssetType.Equity);\n const shareLegRatio = shareLeg ? shareLeg.SpreadRatio : 100;\n\n quantity = shareLegRatio ? shareLegRatio / 100 : 1;\n }\n\n if (isButterflyCallOrPut) {\n // for butterflies, the spread ratio is 1:2:1\n // find the leg with the highest spread ratio and divide that by 2 to get the quantity\n const highestSpreadRatioLeg =\n legs && legs.find(l => l.SpreadRatio === Math.max(...(legs.map(l => l.SpreadRatio) as any)));\n // use the leg with the highest spread ratio to determine the quantity\n if (highestSpreadRatioLeg && highestSpreadRatioLeg.SpreadRatio) {\n quantity = highestSpreadRatioLeg.SpreadRatio && highestSpreadRatioLeg.SpreadRatio / 2;\n }\n }\n\n // need to set actions correctly for custom strategies, particularly vertical spreads\n // for a call vertical spread the order is considered a buy if you are buying the lower strike and selling the higher strike\n // for a put vertical spread the order is considered a buy if you are selling the lower strike and buying the higher strike\n if (strategy && strategy.info.Name === 'Call Vertical') {\n // find the leg with the lower strike\n const lowerStrikeLeg = legs && legs.find(l => l.Strike === Math.min(...(legs.map(l => l.Strike) as any)));\n // use the leg with the lower strike to determine the action\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderAction = OrderAction.Buy;\n } else {\n orderAction = OrderAction.Sell;\n }\n }\n }\n if (strategy && strategy.info.Name === 'Put Vertical') {\n // find the leg with the lower strike\n const lowerStrikeLeg = legs && legs.find(l => l.Strike === Math.min(...(legs.map(l => l.Strike) as any)));\n // use the leg with the lower strike to determine the action\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderAction = OrderAction.Sell;\n } else {\n orderAction = OrderAction.Buy;\n }\n }\n }\n\n // set actions accordingly for butterfly strategies\n if (strategy && (strategy.info.Name === 'Call Butterfly' || strategy.info.Name === 'Put Butterfly')) {\n // find the leg with the highest spread ratio\n const highestSpreadRatioLeg =\n legs && legs.find(l => l.SpreadRatio === Math.max(...(legs.map(l => l.SpreadRatio) as any)));\n // a call butterfly is a buy if you are selling the highest spread ratio leg\n if (highestSpreadRatioLeg && highestSpreadRatioLeg.Action === OrderAction.Sell) {\n orderAction = OrderAction.Buy;\n }\n\n // a call butterfly is a sell if you are buying the highest spread ratio leg\n if (highestSpreadRatioLeg && highestSpreadRatioLeg.Action === OrderAction.Buy) {\n orderAction = OrderAction.Sell;\n }\n }\n\n // set actions accordingly for condor strategies\n if (strategy && (strategy.info.Name === 'Call Condor' || strategy.info.Name === 'Put Condor')) {\n // use the two middle legs to determine the order action\n // if the two middle legs are both buys, the order action is a sell\n // if the two middle legs are both sells, the order action is a buy\n const legsByStrike = _.sortBy(legs, l => l.Strike);\n const middleTwoStrikes = _.slice(legsByStrike, 1, 3);\n const middleTwoStrikesActions = _.map(middleTwoStrikes, l => l.Action);\n const middleTwoStrikesActionsAreEqual = _.uniq(middleTwoStrikesActions).length === 1;\n if (middleTwoStrikesActionsAreEqual) {\n if (middleTwoStrikesActions[0] === OrderAction.Buy) {\n orderAction = OrderAction.Sell;\n }\n if (middleTwoStrikesActions[0] === OrderAction.Sell) {\n orderAction = OrderAction.Buy;\n }\n }\n }\n\n // set actions accordingly for covered call strategy\n // covered call is considered a buy (bullish) if you are buying the stock and selling the call\n // covered call is considered a sell (bearish) if you are selling the stock and buying the call\n if (strategy && strategy.info.Name === 'Covered Call') {\n // find the share leg and use that to determine the action of the order\n const shareLeg = legs.find(l => l.AssetType === AssetType.Equity);\n if (shareLeg) {\n if (shareLeg.Action === OrderAction.Buy) {\n orderAction = OrderAction.Buy;\n } else {\n orderAction = OrderAction.Sell;\n }\n }\n }\n\n // set actions accordingly for married put strategy\n // both legs of a married put have the same action\n // apply the same action to the order\n if (strategy && strategy.info.Name === 'Married Put') {\n // ensure that both legs have the same action\n const actions = legs.map(l => l.Action);\n const actionsAreEqual = _.uniq(actions).length === 1;\n if (actionsAreEqual) {\n if (actions[0] === OrderAction.Buy) {\n orderAction = OrderAction.Buy;\n } else {\n orderAction = OrderAction.Sell;\n }\n }\n }\n\n return {\n Legs: legs.map(leg => ({\n ...DtoToOrderleg(leg, assetSymbolInfo),\n SpreadRatio: isCoveredCallOrMarriedPut\n ? leg.AssetType === AssetType.Option\n ? 1\n : 100\n : isButterflyCallOrPut\n ? leg.SpreadRatio && leg.SpreadRatio / quantity\n : 1,\n })),\n OrderClass: strategy.profile.OrderClass,\n Duration: orderData.duration,\n Quantity: quantity,\n OrderType: orderData.orderType,\n AllOrNone: false,\n Description: '',\n Action: orderAction,\n };\n };\n\n const copy = useOrderCopyAction(createOrder(), assetSymbol, { groupId }, strategy);\n const copyOrder = () => copy();\n\n return (\n <>\n copyOrder()}\n >\n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    Matches
    \n
    {strategy.info.Name}
    \n
    \n
    \n \n \n );\n};\n","import React from 'react';\nimport { Tooltip } from '@tradingblock/components';\nimport { useOrderData } from '../state/OrderState';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { useBlockId } from '../../../components/blocks/BlockState';\n\nexport const OrderValidationIcon: React.FC<{}> = () => {\n const blockId = useBlockId();\n const message = useOrderData(s => OrderSelectors.validationErrorMessage(s, blockId));\n // const validation = useOrderData(s => s.validation);\n if (!message) {\n return <>;\n }\n\n return (\n
    \n \n \n {message}\n
    \n }\n type=\"light\"\n >\n \n \n \n );\n};\n","import React, { useCallback, useMemo } from 'react';\nimport _ from 'lodash';\nimport createCachedSelector from 're-reselect';\nimport { NumberInput } from '@tradingblock/components';\nimport { useOrderData, OrderState } from '../../state/OrderState';\nimport { useOrderActions } from '../../state/useOrderActions';\nimport { useOrderSettings } from '../../hooks/useOrderSettings';\nimport { OrderSelectors } from '../../state/OrderSelector';\n\nconst OrderQuantitySelector = createCachedSelector(\n (s: OrderState, defaultOrderQuantity: any) => s.quantity,\n (s: OrderState, defaultOrderQuantity: any) => defaultOrderQuantity,\n (quantity: number, defaultQuantity: any) => {\n if (_.isNumber(quantity)) {\n return quantity;\n }\n if (_.isNumber(defaultQuantity)) {\n return defaultQuantity;\n }\n return 1;\n }\n)(() => `OrderQuantity`);\n\nexport const useOrderQuantity = () => {\n const { setQuantity } = useOrderActions();\n const { defaultQuantityForOptionsAndStrategies } = useOrderSettings();\n const quantity = useOrderData((s: OrderState) => OrderQuantitySelector(s, defaultQuantityForOptionsAndStrategies));\n const setOrderQuantity = useCallback(\n (value: number) => {\n let val = value;\n if (val < 1) {\n val = 1;\n }\n setQuantity(val);\n },\n [setQuantity]\n );\n\n return { quantity, setOrderQuantity };\n};\n\nexport const OrderQuantity: React.FC<{ id?: string }> = ({ id }) => {\n const { quantity, setOrderQuantity } = useOrderQuantity();\n const isSingleLeggedStrategy = useOrderData(OrderSelectors.isSingleLegStrategy);\n const { setLegQuantity } = useOrderActions();\n\n const onChange = (value: number) => {\n setOrderQuantity(value);\n if (isSingleLeggedStrategy && id) {\n setLegQuantity(id, value);\n }\n };\n\n return (\n
    \n \n
    \n );\n};\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport _ from 'lodash';\nimport { BasicDropdown, ToggleButton } from '@tradingblock/components';\nimport { OrderAction, TradingStrategyOrCustom, isCustomStrategy } from '@tradingblock/types';\nimport { useOrderData, useOrderStrategy } from '../state/OrderState';\nimport { useOrderActions } from '../state/useOrderActions';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { useBlockId } from '../../../components/blocks/BlockState';\nimport { OrderStrategyMatch } from './OrderStrategyMatch';\nimport { OrderValidationIcon } from './OrderValidationIcon';\nimport { OrderQuantity } from './Order/OrderQuantity';\nimport { useOrderSettings } from '../hooks/useOrderSettings';\nimport { orderLegsToClassifiedStrategy } from '../../../data/global/utilities/strategyClassification';\nimport { Strategies } from '@tradingblock/api';\nimport { OrderSentiment } from './OrderSentiment';\n\nconst StrategyPicker: React.FC<{ strategies: TradingStrategyOrCustom[] }> = ({ strategies }) => {\n const blockId = useBlockId();\n const StrategyOptions = useMemo(() => strategies.map(s => s.info.Name.toString()), [strategies]);\n const isCustomOrUndefinedStrategy = useOrderData(OrderSelectors.isCustomStrategyOrUndefined);\n const strategy = useOrderStrategy();\n const blockSettings = useOrderSettings();\n const { defaultStrategy, defaultQuantityForOptionsAndStrategies, defaultQuantityForShares } = blockSettings;\n const isStrategyInvalid = useOrderData(s => OrderSelectors.isStrategyInvalid(s, blockId));\n const isOrderInvalid = useOrderData(s => s.validation && s.validation.valid === false);\n const match = useOrderData(s => s.validation && s.validation.match);\n const hasLegs = useOrderData(s => OrderSelectors.hasLegs(s, blockId));\n const isComplete = useOrderData(s => OrderSelectors.isComplete(s));\n const legs = useOrderData(OrderSelectors.legs);\n const blockState = useOrderData(s => s);\n\n const classifiedStrategy = orderLegsToClassifiedStrategy(legs);\n const action = classifiedStrategy.action === 'BUY' ? OrderAction.Buy : OrderAction.Sell;\n const matchedStrategy = Strategies.find(s => s.info.Name === classifiedStrategy.name);\n const { setStrategy, setOrderAction } = useOrderActions();\n const isCustom = blockState.strategy === 'Custom';\n\n const switchStrategy = useCallback(\n (strat: { name: string; value: string }) => {\n // TODO: need to ensure that the order action and strategy are set correctly\n const matchStrat = strategies.find(s => s.info.Name === strat.name);\n\n if (matchStrat) {\n setStrategy(matchStrat, {\n action: action,\n reverseLegs: action === OrderAction.Sell && !isCustom ? true : false,\n isDirty: false,\n });\n }\n },\n [setStrategy, strategies, action]\n );\n\n const selectedStrategy = useMemo(() => {\n if (strategy) {\n return StrategyOptions.find(s => s === strategy.info.Name) || defaultStrategy;\n }\n return defaultStrategy;\n }, [StrategyOptions, strategy]);\n\n const isSingleLeggedStrategy = useOrderData(OrderSelectors.isSingleLegStrategy);\n const hideStrategyBuyAndQuantity = useMemo(\n () => (strategy && (isCustomStrategy(strategy) || isSingleLeggedStrategy) ? true : false),\n [strategy, isSingleLeggedStrategy]\n );\n\n const strategyIsCustom = useMemo(() => (strategy && isCustomStrategy(strategy) ? true : false), [\n strategy,\n isCustomStrategy,\n ]);\n\n const strategyHasSentiment = useMemo(() => strategy && !isCustomOrUndefinedStrategy, [\n strategy,\n isCustomOrUndefinedStrategy,\n ]);\n\n const bidirectional = useMemo(\n () => (strategy && !isCustomStrategy(strategy) ? strategy.profile.Bidirectional : true),\n [strategy]\n );\n\n const actionValue = useMemo(() => (action === OrderAction.Buy ? true : false), [action]);\n\n const setActionValue = useCallback(\n (isActive: boolean) => setOrderAction(isActive ? OrderAction.Buy : OrderAction.Sell),\n [setOrderAction]\n );\n\n const validationClass = useMemo(() => (isStrategyInvalid === true ? 'invalid' : ''), [isStrategyInvalid]);\n\n useEffect(() => {\n // If the strategy is undefined, set it to the default strategy\n if (!strategy) {\n setStrategy(\n { info: { Name: defaultStrategy } },\n {\n action: action,\n reverseLegs: action === OrderAction.Sell && !isCustom ? true : false,\n isDirty: false,\n }\n );\n }\n // If a strategy is set, but it has no order legs, set it to a custom strategy\n if (strategy && !hasLegs) {\n setStrategy(\n { info: { Name: 'Custom' } },\n {\n action: action,\n reverseLegs: action === OrderAction.Sell && !isCustom ? true : false,\n isDirty: false,\n }\n );\n }\n }, [strategy]);\n\n const handleScrollSelect = (data: any): void => {\n setSelectedScrollPickItem(data);\n };\n\n const onBlur = (e: any) => {\n setWheelPickerHeight(40);\n setTimeout(() => setSelectedScrollPickItem(persist), 100);\n };\n\n const onFocus = (e: any) => {\n setWheelPickerHeight(200);\n setPersist(e.target.ariaLabel);\n };\n\n const [selectedScrollPickItem, setSelectedScrollPickItem] = useState(selectedStrategy);\n const [persist, setPersist] = useState(selectedScrollPickItem);\n const [wheelPickerHeight, setWheelPickerHeight] = useState(40);\n\n useEffect(() => {\n switchStrategy({ name: selectedScrollPickItem, value: selectedScrollPickItem });\n }, [selectedScrollPickItem, defaultQuantityForOptionsAndStrategies, defaultQuantityForShares]);\n\n return (\n
    \n {!hideStrategyBuyAndQuantity && (\n
    \n \n
    \n )}\n\n
    \n {!hideStrategyBuyAndQuantity && (\n //
    \n // \n //
    \n \n )}\n
    \n
    \n {/* TODO: Add back in the wheel picker when bugs are ironed out in TBFE-886 */}\n {/*
    onBlur(e)} onFocus={e => onFocus(e)}> */}\n \n {/* ({ id: s.info.Name, value: s.info.Name })) || []}\n backgroundColor={'#33425b'}\n shadowColor={'#33425b'}\n activeColor={'#02FFF6'}\n color={'#cad3e070'}\n height={wheelPickerHeight}\n width={180}\n itemHeight={1}\n /> */}\n {/*
    */}\n {/* \n {selectedStrategy.name}\n */}\n
    \n {isOrderInvalid === true && }\n {strategyHasSentiment && !isStrategyInvalid && !isOrderInvalid && isComplete && (\n
    \n \n
    \n )}\n {matchedStrategy && strategyIsCustom && !isOrderInvalid && isComplete && (\n
    \n {/* {matchHasSentiment && } */}\n \n
    \n )}\n
    \n );\n};\n\nexport const OrderStrategyPicker: React.FC = () => {\n const strategies = useOrderData(o => o.validStrategies);\n\n return <>{strategies.length > 0 && };\n};\n","import { useCallback } from 'react';\nimport { OrderLegDTO, AssetType, SaveOptions } from '@tradingblock/types';\nimport { getCustomStrategyLegQuantity } from '@tradingblock/api';\nimport { useOrderSettings } from '../hooks/useOrderSettings';\nimport {\n useBlockActions,\n useBlockData,\n useBlockActionDispatchAndGenericActions,\n} from '../../../components/blocks/BlockState';\nimport { DefaultLegs } from '../OrderUtilities';\nimport { OrderState } from './OrderState';\nimport { Actions, OrderActions } from './OrderActions';\nimport { useGroupAssetSymbol } from '../../useGroupState';\nimport { useOrderActions } from './useOrderActions';\n\nexport const useLegsUpdateAction = () => {\n const { setSubstate } = useBlockActions();\n const update = useCallback(\n (orderLeg: OrderLegDTO, options?: SaveOptions | undefined) => {\n setSubstate('legs', orderLeg.Id, orderLeg, options);\n },\n [setSubstate]\n );\n return { update };\n};\n\nexport const useLegsActions = () => {\n const symbol = useGroupAssetSymbol();\n const settings = useOrderSettings();\n const { legs, quantity } = useBlockData();\n const [{ updateData }, dispatch] = useBlockActionDispatchAndGenericActions();\n const { setDebitCredit, setQuantity } = useOrderActions();\n\n // const updatePartial = useCallback(\n // (legsToUpdate: PartialOrderLegDTO[], options?: SaveOptions | undefined) => {\n // const updated = _.reduce(\n // legs,\n // (updated, l, k) => {\n // const updatedLeg = _.find(legsToUpdate, incLeg => incLeg.Id === l.Id) || {};\n // return {\n // ...updated,\n // [k]: {\n // ...l,\n // ...updatedLeg,\n // },\n // };\n // },\n // {} as Legs\n // );\n // setField('legs', updated, options);\n // },\n // [setField, legs, symbol]\n // );\n const add = useCallback(\n (assetType: AssetType, options?: SaveOptions) => {\n const initialValues = {\n assetType,\n spreadRatio: getCustomStrategyLegQuantity(assetType, settings),\n };\n\n const updatedLegs = {\n ...legs,\n ...DefaultLegs(legs, symbol, initialValues),\n };\n\n // Define the quantity settings based on assetType\n const settingsQuantity =\n assetType === AssetType.Option\n ? settings.defaultQuantityForOptionsAndStrategies\n : settings.defaultQuantityForShares;\n\n const originalLegKeys = Object.keys(legs);\n const updatedLegKeys = Object.keys(updatedLegs);\n\n if (updatedLegKeys.length > 1) {\n updatedLegKeys.forEach(legId => {\n const leg = updatedLegs[legId];\n const isOriginalLeg = originalLegKeys.includes(legId);\n\n // Adjust SpreadRatio based on the number of original legs\n if (originalLegKeys.length === 1) {\n leg.SpreadRatio = isOriginalLeg ? quantity : settingsQuantity;\n } else {\n leg.SpreadRatio = leg.SpreadRatio || 1; // Default to 1 if not set\n }\n });\n }\n\n // Update data with new quantities and recalculated prices\n updateData(\n {\n quantity: originalLegKeys.length === 0 ? settingsQuantity : 1,\n legs: updatedLegs,\n recalculatePrice: true,\n },\n options\n );\n },\n [updateData, legs, symbol, settings]\n );\n\n const remove = useCallback(\n (id: string) => {\n const legKeys = Object.keys(legs);\n\n // Check if the number of legs is exactly two before removal\n if (legKeys.length === 2) {\n // Find the remaining leg that is not being removed\n const remainingLegKey = legKeys.find(key => key !== id);\n\n if (remainingLegKey) {\n // Ensure the key is not undefined\n const remainingLeg = legs[remainingLegKey];\n\n if (remainingLeg) {\n // Update the quantity to the spread ratio of the remaining leg or default to 1\n const newQuantity = remainingLeg.SpreadRatio || 1;\n setQuantity(newQuantity, { persist: true });\n\n // Update remaining leg's SpreadRatio to 1 and adjust Quantity\n updateData(\n {\n legs: {\n ...legs,\n [remainingLegKey]: {\n ...remainingLeg,\n SpreadRatio: 1,\n Quantity: newQuantity * quantity,\n },\n },\n recalculatePrice: true,\n },\n { persist: true }\n );\n }\n }\n }\n\n // Dispatch the action to remove the leg\n dispatch(Actions.removeLeg({ id }, { persist: true }));\n\n // Recalculate debit or credit after modification\n setDebitCredit();\n },\n [updateData, legs, dispatch, setDebitCredit, setQuantity, quantity]\n );\n\n return {\n add,\n remove,\n };\n};\n","import React, { useCallback } from 'react';\nimport { Dropdown, DropdownItem, IDropdownActions, AddIcon } from '@tradingblock/components';\nimport { AssetType } from '@tradingblock/types';\nimport { Shares } from '@tradingblock/api';\nimport { useOrderData } from '../state/OrderState';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { useLegsActions } from '../state/useLegsActions';\n\nexport const AddOrderLeg: React.FC<{ maxLegs: number }> = ({ maxLegs }) => {\n const { add } = useLegsActions();\n const isCustomStrategyOrUndefined = useOrderData(OrderSelectors.isCustomStrategyOrUndefined);\n const canAddShares = useOrderData(o => o.validStrategies.some(s => s.info.Name === Shares.info.Name));\n const legIds = useOrderData(OrderSelectors.legIds);\n const maxReached = legIds.length >= maxLegs;\n const hasSharesLeg = useOrderData(OrderSelectors.hasSharesLeg);\n const onAdd = useCallback(\n (type: AssetType = AssetType.Option) => {\n if (maxReached) {\n console.error('maximum number of legs already reached');\n }\n add(type, { persist: true });\n },\n [add, maxReached]\n );\n const button = <>;\n\n return (\n <>\n {!hasSharesLeg && (\n }\n dropdownContent={(actions: IDropdownActions) => {\n const onItemClick = (at: AssetType) => () => {\n onAdd(at);\n actions.toggleDropdown();\n };\n return (\n <>\n {canAddShares && Add shares leg}\n Add option leg\n \n );\n }}\n />\n )}\n\n {hasSharesLeg && (\n onAdd(AssetType.Option)}\n disabled={maxReached || !isCustomStrategyOrUndefined}\n type=\"button\"\n >\n \n \n )}\n \n );\n};\n","import React, { useCallback } from 'react';\nimport { AssetType } from '@tradingblock/types';\nimport { Shares, getCustomStrategyLegQuantity } from '@tradingblock/api';\nimport { useOrderData } from '../state/OrderState';\nimport { useLegsActions } from '../state/useLegsActions';\n\nexport const AddOrderLegContent: React.FC<{}> = () => {\n const { add } = useLegsActions();\n const canAddShares = useOrderData(o => o.validStrategies.some(s => s.info.Name === Shares.info.Name));\n\n const onAddEquityLeg = useCallback(() => {\n add(AssetType.Equity, { persist: true });\n }, [add]);\n const onAddOptionLeg = useCallback(() => {\n add(AssetType.Option, { persist: true });\n }, [add]);\n\n return (\n
    \n
    Build your own
    \n \n {canAddShares && (\n \n )}\n
    \n );\n};\n","import React, { useMemo } from 'react';\nimport { useOrderSymbolOrUndefined } from '../state/useOrderState';\nimport { useOrderData } from '../state/OrderState';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { useOrderActions } from '../state/useOrderActions';\n\nexport const ClearOrder = () => {\n const symbol = useOrderSymbolOrUndefined();\n const { clearOrder } = useOrderActions();\n const isCustomStrategyOrUndefined = useOrderData(OrderSelectors.isCustomStrategyOrUndefined);\n const showClearAll = useMemo(() => isCustomStrategyOrUndefined && symbol !== undefined, [\n isCustomStrategyOrUndefined,\n symbol,\n ]);\n\n return (\n
    \n {showClearAll && (\n \n )}\n
    \n );\n};\n","import React, { useEffect } from 'react';\nimport _ from 'lodash';\nimport { useWhyDidYouUpdate } from '@tradingblock/components';\nimport { useOrderData, OrderState, useOrderBlockData, OrderQuote } from '../state/OrderState';\nimport { OrderSymbolList, OrderSymbolListValues } from '../state/OrderLegSelector';\nimport { useOrderActions } from '../state/useOrderActions';\nimport { OrderActions, Actions } from '../state/OrderActions';\nimport { useOrderStatus } from '../data/useOrderStatus';\nimport { useOrderPrice } from '../hooks/useOrderPrice';\nimport { useQuoteBidAskMetadata } from '../../../hooks/useFeedQuote';\nimport { useBlockActions, useBlockActionDispatch, useBlockId } from '../../../components/blocks/BlockState';\nimport { OrderType } from '@tradingblock/types';\n\nconst useQuoteSync = () => {\n const blockId = useBlockId();\n const orderSymbols = useOrderData(s => OrderSymbolListValues(s, blockId));\n const quotes: OrderQuote[] = useQuoteBidAskMetadata();\n const dispatch = useBlockActionDispatch();\n\n useEffect(() => {\n dispatch(Actions.updateQuote(quotes));\n }, [quotes, orderSymbols]);\n};\n\nexport const PriceAndQuoteSync = () => {\n const price = useOrderData(s => s.price);\n const orderType = useOrderData(s => s.orderType);\n const recalculate = useOrderData(s => s.recalculatePrice);\n const legInfo = useOrderBlockData(OrderSymbolListValues);\n useQuoteSync();\n const { setPrice } = useOrderActions();\n const { mid, includesAllSymbols } = useOrderPrice();\n const { complete } = useOrderStatus();\n const { setField } = useBlockActions();\n\n useEffect(() => {\n const shouldRecalc = price === undefined || recalculate === true;\n\n if (shouldRecalc && !_.isNil(mid) && complete && includesAllSymbols) {\n if (orderType === OrderType.Stop_Limit) {\n setPrice(undefined, false);\n }\n }\n }, [recalculate, mid, includesAllSymbols, price, complete, setPrice, legInfo]);\n useWhyDidYouUpdate('PriceSync', { mid, price, complete, setField });\n return <>;\n};\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { OrderType } from '@tradingblock/types';\nimport { BasicSelect, DropdownItemType, OptionType, SplitDropdownProps, ToggleButton, useParsedCountdown } from '@tradingblock/components';\nimport { useOrderData, OrderState } from '../state/OrderState';\nimport { useDashboardSettings } from '../../../hooks/useDashboardSettings';\nimport { useBlockActions } from '../../../components/blocks/BlockState';\nimport { TimeTillClose } from '../../../utilities/date';\nimport { useOrderActions } from '../state/useOrderActions';\n\nconst orderTypePlaceholderDisplay = {\n [OrderType.Market]: 'MKT',\n [OrderType.Limit]: 'LMT',\n [OrderType.Stop_Market]: 'STP MKT',\n [OrderType.Stop_Limit]: 'STP LMT',\n [OrderType.Market_On_Close]: 'MKT ON CLS'\n}\n\nconst orderTypePickerOptions = [\n {\n label: 'Market',\n value: OrderType.Market,\n data: OrderType.Market\n },\n {\n label: 'Limit',\n value: OrderType.Limit,\n data: OrderType.Limit\n },\n {\n label: 'Stop Market',\n value: OrderType.Stop_Market,\n data: OrderType.Stop_Market\n },\n {\n label: 'Stop Limit',\n value: OrderType.Stop_Limit,\n data: OrderType.Stop_Limit\n },\n {\n label: 'Market on Close',\n value: OrderType.Market_On_Close,\n data: OrderType.Market_On_Close\n },\n]\n\nexport const OrderTypePicker: React.FC, 'className'>> = ({\n className,\n}) => {\n const [allowedOrderTypePickerOptions, setAllowedOrderTypePickerOptions] = useState(orderTypePickerOptions);\n const orderType = useOrderData((s: OrderState) => s.orderType, OrderType.Limit);\n const legs = useOrderData((s: OrderState) => s.legs);\n const { setField: set } = useBlockActions();\n const { setStopPrice, setPrice } = useOrderActions();\n\n const { parsed } = useParsedCountdown(TimeTillClose().toDate(), 2000);\n const { afterHoursTrading } = useDashboardSettings();\n const isDisabled = useMemo(() => parsed.minutes <= 0 && afterHoursTrading !== true, [parsed, afterHoursTrading]);\n\n const setValue = useCallback(\n ({ label, value, data }: OptionType) => {\n set('orderType', data, { persist: true });\n if (data === OrderType.Stop_Limit || data === OrderType.Stop_Market) {\n setPrice(undefined, false);\n setStopPrice(undefined)\n }\n },\n [set, setPrice]\n );\n\n useEffect(() => {\n // If we change our strategy from a single leg one, remove unsupported order types\n if (Object.values(legs).length > 1) {\n if (orderType === OrderType.Stop_Limit || orderType === OrderType.Stop_Market || orderType === OrderType.Market_On_Close) {\n set('orderType', OrderType.Limit, { persist: true });\n setStopPrice(undefined);\n }\n setAllowedOrderTypePickerOptions(orderTypePickerOptions.filter(({ data: option }) => option !== OrderType.Stop_Limit && option !== OrderType.Stop_Market && option !== OrderType.Market_On_Close));\n } else {\n setAllowedOrderTypePickerOptions(orderTypePickerOptions);\n }\n }, [legs])\n\n return (\n \n );\n};\n","import React, { useEffect, useMemo } from 'react';\nimport { useOrderData, OrderState } from '../state/OrderState';\nimport { useOrderActions } from '../state/useOrderActions';\nimport PriceComponent from './PriceComponent';\nimport { AssetType, DebitOrCredit, OrderAction } from '@tradingblock/types';\nimport _ from 'lodash';\nimport { useCallback } from 'react';\n\nexport const OrderPrice: React.FC<{}> = () => {\n const { setPrice, setDebitCredit } = useOrderActions();\n const [areOptionLegsSet, setAreOptionLegsSet] = React.useState(false);\n const [isNegativePrice, setIsNegativePrice] = React.useState(false);\n // allow negative prices if the strategy is custom or calendar spreads\n const legs = useOrderData((s: OrderState) => s.legs, undefined);\n const orderAction = useOrderData(s => s.action);\n const debitCredit = useOrderData(s => s.debitCredit);\n const isDebit = debitCredit === DebitOrCredit.Debit;\n const match = useOrderData(s => s.validation && s.validation.match);\n const isCustomOrder = match === undefined ? true : false;\n const isCustomStrategyOrCalendar = useMemo(\n () => (match ? match.info.Name === 'Call Calendar' || match.info.Name === 'Put Calendar' || isCustomOrder : true),\n [match]\n );\n const price = useOrderData((s: OrderState) => {\n return s.price !== undefined ? (isCustomStrategyOrCalendar ? s.price : s.price) : undefined;\n });\n const isMatchCalendarStrategy =\n isCustomOrder && match && (match.info.Name === 'Call Calendar' || match.info.Name === 'Put Calendar');\n const isCallVerticalMatch = isCustomOrder && match && match.info.Name === 'Call Vertical';\n const isPutVerticalMatch = isCustomOrder && match && match.info.Name === 'Put Vertical';\n const isCoveredCallMatch = isCustomOrder && match && match.info.Name === 'Covered Call';\n const isCallButterflyMatch = match && match.info.Name === 'Call Butterfly';\n const isPutButterflyMatch = match && match.info.Name === 'Put Butterfly';\n const isIronButterflyMatch = match && match.info.Name === 'Iron Butterfly';\n const isIronCondorMatch = match && match.info.Name === 'Iron Condor';\n const isCallCondorMatch = match && match.info.Name === 'Call Condor';\n const isPutCondorMatch = match && match.info.Name === 'Put Condor';\n\n const latestExpiringOptionLeg = useMemo(() => {\n if (isMatchCalendarStrategy && legs) {\n return _.maxBy(Object.values(legs), l => l.Expiration && l.Expiration.date);\n }\n return undefined;\n }, [isMatchCalendarStrategy, legs]);\n\n const lowerStrikeLeg = useMemo(() => {\n if (\n (isCallVerticalMatch ||\n isPutVerticalMatch ||\n isCallButterflyMatch ||\n isPutButterflyMatch ||\n isIronButterflyMatch ||\n isIronCondorMatch ||\n isCallCondorMatch ||\n isPutCondorMatch) &&\n legs\n ) {\n return _.minBy(Object.values(legs), l => l.Strike);\n }\n return undefined;\n }, [\n isCallVerticalMatch,\n isPutVerticalMatch,\n isCallButterflyMatch,\n isPutButterflyMatch,\n isIronButterflyMatch,\n isIronCondorMatch,\n isCallCondorMatch,\n isPutCondorMatch,\n legs,\n ]);\n\n const shareLeg = useMemo(() => {\n if (isCoveredCallMatch && legs) {\n return _.find(Object.values(legs), l => l.AssetType === AssetType.Equity);\n }\n return undefined;\n }, [isCoveredCallMatch, legs]);\n\n const isBuy = !isCustomOrder\n ? orderAction === OrderAction.Buy\n : isMatchCalendarStrategy\n ? latestExpiringOptionLeg && latestExpiringOptionLeg.Action === OrderAction.Buy\n : isCallVerticalMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Buy\n : isPutVerticalMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Sell\n : isCoveredCallMatch\n ? shareLeg && shareLeg.Action === OrderAction.Buy\n : isCallButterflyMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Buy\n : isPutButterflyMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Buy\n : isIronButterflyMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Buy\n : isIronCondorMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Sell\n : isCallCondorMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Buy\n : isPutCondorMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Buy\n : _.every(legs, l => l.Action === OrderAction.Buy) || _.some(legs, l => l.Action === OrderAction.Buy);\n\n const isMatch =\n isMatchCalendarStrategy ||\n isCallVerticalMatch ||\n isPutVerticalMatch ||\n isCoveredCallMatch ||\n isCallButterflyMatch ||\n isPutButterflyMatch ||\n isIronButterflyMatch ||\n isIronCondorMatch ||\n isCallCondorMatch ||\n isPutCondorMatch;\n\n // useEffect(() => {\n // console.log((isBuy && !isDebit) || (!isBuy && isDebit));\n // setIsNegativePrice((isBuy && !isDebit) || (!isBuy && isDebit));\n // }, [isBuy, isDebit]);\n\n const onChange = useCallback(\n (value: number | null) => {\n setPrice(\n value === null ? undefined : !isCustomStrategyOrCalendar && value < 0 ? 0 : value,\n false,\n !isMatch ? isNegativePrice : false\n );\n },\n [isMatch, isNegativePrice, isCustomStrategyOrCalendar]\n );\n\n const optionLegs = Object.values(legs).filter(leg => leg.OptionType);\n\n // check if the order contains any option legs, and if so check to see if a strike and expiration have been set for all option legs\n const checkOptionLegs = () => {\n if (legs) {\n if (optionLegs.length > 0) {\n const strikes = optionLegs.filter(leg => leg.Strike !== undefined);\n const expirations = optionLegs.filter(leg => leg.Expiration !== undefined);\n if (strikes.length === optionLegs.length && expirations.length === optionLegs.length) {\n setAreOptionLegsSet(true);\n } else {\n setAreOptionLegsSet(false);\n }\n }\n }\n };\n\n useEffect(() => {\n checkOptionLegs();\n }, [optionLegs]);\n\n return (\n 0 && !areOptionLegsSet}\n />\n );\n};\n","import React, { useMemo } from 'react';\nimport round from 'lodash/round';\nimport { AssetType, OrderAction, OrderType } from '@tradingblock/types';\nimport { useOrderData, OrderState } from '../state/OrderState';\nimport { useOrderState } from '../state/useOrderState';\nimport { useOrderActions } from '../state/useOrderActions';\nimport { useOrderStatus } from '../data/useOrderStatus';\nimport { useOrderPrice } from '../hooks/useOrderPrice';\nimport { MarkerLabel } from '../OrderContent';\nimport Slider from 'rc-slider';\nimport { useBlockActionDispatchAndGenericActions } from '../../../components/blocks/BlockState';\nimport { OrderActions } from '../state/OrderActions';\nimport _ from 'lodash';\n\nexport const PriceSlider: React.FC = () => {\n const { bid, mid, ask } = useOrderPrice();\n const { setPrice, setStopPrice, setAction } = useOrderActions();\n const orderType = useOrderState('orderType');\n const orderAction = useOrderState('action');\n const isCustomOrder = useOrderData((s: OrderState) => s.strategy === 'Custom');\n const legs = useOrderData((s: OrderState) => s.legs, undefined);\n const match = useOrderData(s => s.validation && s.validation.match);\n const isValid = useOrderData(s => s.validation && s.validation.valid);\n\n const isMatchCalendarStrategy =\n isCustomOrder && match && (match.info.Name === 'Call Calendar' || match.info.Name === 'Put Calendar');\n const isCallVerticalMatch = match && match.info.Name === 'Call Vertical';\n const isPutVerticalMatch = match && match.info.Name === 'Put Vertical';\n const isCoveredCallMatch = match && match.info.Name === 'Covered Call';\n const isCallButterflyMatch = match && match.info.Name === 'Call Butterfly';\n const isPutButterflyMatch = match && match.info.Name === 'Put Butterfly';\n const isIronButterflyMatch = match && match.info.Name === 'Iron Butterfly';\n const isIronCondorMatch = match && match.info.Name === 'Iron Condor';\n const isCallCondorMatch = match && match.info.Name === 'Call Condor';\n const isPutCondorMatch = match && match.info.Name === 'Put Condor';\n\n const latestExpiringOptionLeg = useMemo(() => {\n if (isMatchCalendarStrategy && legs) {\n return _.maxBy(Object.values(legs), l => l.Expiration && l.Expiration.date);\n }\n return undefined;\n }, [isMatchCalendarStrategy, legs]);\n\n const lowerStrikeLeg = useMemo(() => {\n if (\n (isCallVerticalMatch ||\n isPutVerticalMatch ||\n isCallButterflyMatch ||\n isPutButterflyMatch ||\n isIronButterflyMatch ||\n isIronCondorMatch ||\n isCallCondorMatch ||\n isPutCondorMatch) &&\n legs\n ) {\n return _.minBy(Object.values(legs), l => l.Strike);\n }\n return undefined;\n }, [\n isCallVerticalMatch,\n isPutVerticalMatch,\n isCallButterflyMatch,\n isPutButterflyMatch,\n isIronButterflyMatch,\n isIronCondorMatch,\n legs,\n isCallCondorMatch,\n isPutCondorMatch,\n ]);\n\n const shareLeg = useMemo(() => {\n if (isCoveredCallMatch && legs) {\n return _.find(Object.values(legs), l => l.AssetType === AssetType.Equity);\n }\n return undefined;\n }, [isCoveredCallMatch, legs]);\n\n const isBuy = !isCustomOrder\n ? orderAction === OrderAction.Buy\n : isMatchCalendarStrategy\n ? orderAction === OrderAction.Buy\n : isCallVerticalMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Buy\n : isPutVerticalMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Sell\n : isCoveredCallMatch\n ? shareLeg && shareLeg.Action === OrderAction.Buy\n : isCallButterflyMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Buy\n : isPutButterflyMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Buy\n : isIronButterflyMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Buy\n : isIronCondorMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Sell\n : isCallCondorMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Buy\n : isPutCondorMatch\n ? lowerStrikeLeg && lowerStrikeLeg.Action === OrderAction.Buy\n : _.every(legs, l => l.Action === OrderAction.Buy) || _.some(legs, l => l.Action === OrderAction.Buy);\n const { complete } = useOrderStatus();\n const isMarketOrder = orderType === OrderType.Market;\n const num_legs = legs ? Object.values(legs).length : 1;\n const price = useOrderData((s: OrderState) => s.price, undefined);\n\n const formatCurrency = (num: number) => {\n let decimalPlaces = 2; // default value\n\n // split the number into its integer and decimal parts\n const parts = num.toString().split('.');\n\n // check if the number has a decimal part and if it has more than 2 decimal places\n if (parts.length > 1 && parts[1].length > 2) {\n decimalPlaces = 3;\n }\n\n return '$' + num.toFixed(decimalPlaces).replace(/\\d(?=(\\d{3})+\\.)/g, '$&,');\n };\n\n const setPriceFromSlider = (value: number | number[]) => {\n if (typeof value === 'number' && complete !== false && orderType !== OrderType.Market) {\n // Account for reversed slider state\n const adjustedValue = isBuy ? value : 100 - value;\n\n let bottom = bid > 0 ? bid - bid / 25 : bid + bid / 25;\n let top = ask > 0 ? ask + ask / 25 : ask - ask / 25;\n let updatedPrice = parseFloat(((adjustedValue / 100) * (top - bottom) + bottom).toFixed(2));\n\n if (adjustedValue === 25) {\n updatedPrice = bid;\n } else if (adjustedValue === 50) {\n updatedPrice = mid;\n } else if (adjustedValue === 75) {\n updatedPrice = ask;\n }\n\n let priceParts = updatedPrice.toString().split('.');\n\n if (priceParts.length > 1 && priceParts[1].length > 2) {\n updatedPrice = parseFloat(updatedPrice.toFixed(2));\n }\n if (orderType === OrderType.Stop_Market) {\n setPrice(updatedPrice, true, updatedPrice < 0);\n setStopPrice(updatedPrice);\n } else {\n setPrice(updatedPrice, true, updatedPrice < 0);\n }\n }\n };\n\n const priceSliderValue = useMemo(() => {\n if (price === undefined || isMarketOrder) {\n return 0;\n }\n\n if (price === bid) {\n return isBuy ? 25 : 75;\n } else if (price === mid) {\n return 50;\n } else if (price === ask) {\n return isBuy ? 75 : 25;\n }\n\n const midDiff = round((ask - bid) / 2, 2);\n const percentage = (ask + midDiff - (bid - midDiff)) / 100;\n const sizeDiff = (price - (bid - midDiff)) / percentage;\n let res = sizeDiff;\n if (price > midDiff + ask) {\n res = 100;\n } else if (price < bid - midDiff) {\n res = 0;\n } else {\n res = sizeDiff;\n }\n\n return isBuy ? Math.abs(res) : 100 - Math.abs(res);\n }, [bid, mid, ask, price, isBuy]);\n\n const [{}, dispatch] = useBlockActionDispatchAndGenericActions();\n\n return (\n 1 ? '-3.2rem' : '-2.2rem',\n }}\n title={(num_legs > 1 ? 'Impl. ' : '') + 'Bid'}\n value={\n complete === false ? '-' : bid.toLocaleString(undefined, { currency: 'USD', style: 'currency' })\n }\n />\n ),\n style: {},\n },\n [50]: {\n label: (\n 1 ? '-3.2rem' : '-2.2rem',\n }}\n title={(num_legs > 1 ? 'Impl. ' : '') + 'Mid'}\n value={\n complete === false ? '-' : mid.toLocaleString(undefined, { currency: 'USD', style: 'currency' })\n }\n />\n ),\n style: {},\n },\n [75]: {\n label: (\n 1 ? '-3.2rem' : '-2.2rem',\n }}\n title={(num_legs > 1 ? 'Impl. ' : '') + 'Ask'}\n value={\n complete === false ? '-' : ask.toLocaleString(undefined, { currency: 'USD', style: 'currency' })\n }\n />\n ),\n style: {},\n },\n }\n : {\n [25]: {\n label: (\n 1 ? '-3.2rem' : '-2.2rem',\n }}\n title={(num_legs > 1 ? 'Impl. ' : '') + 'Ask'}\n value={\n complete === false ? '-' : ask.toLocaleString(undefined, { currency: 'USD', style: 'currency' })\n }\n isReversed={true}\n />\n ),\n style: {},\n },\n [50]: {\n label: (\n 1 ? '-3.2rem' : '-2.2rem',\n }}\n title={(num_legs > 1 ? 'Impl. ' : '') + 'Mid'}\n value={\n complete === false ? '-' : mid.toLocaleString(undefined, { currency: 'USD', style: 'currency' })\n }\n isReversed={true}\n />\n ),\n style: {},\n },\n [75]: {\n label: (\n 1 ? '-3.2rem' : '-2.2rem',\n }}\n title={(num_legs > 1 ? 'Impl. ' : '') + 'Bid'}\n value={\n complete === false ? '-' : bid.toLocaleString(undefined, { currency: 'USD', style: 'currency' })\n }\n isReversed={true}\n />\n ),\n style: {},\n },\n }\n }\n />\n );\n};\n","import React, { useCallback } from 'react';\nimport { Durations } from '@tradingblock/types';\nimport { ToggleButton } from '@tradingblock/components';\nimport { useBlockActions } from '../../../components/blocks/BlockState';\nimport { useOrderData, OrderState } from '../state/OrderState';\n\n// interface OrderDuration extends DropdownItemType {\n// duration: Durations;\n// }\n// const toItemType = (d: Durations) => ({\n// name: Durations[d],\n// value: Durations[d],\n// duration: d,\n// });\n// const durations: OrderDuration[] = [Durations.Day, Durations.GTC, Durations.Manual].map(toItemType);\n\n// export const DurationPicker: React.FunctionComponent<{}> = ({}) => {\n// const duration = useOrderData((s: OrderState) => s.duration, Durations.Day);\n\n// const { setField: set } = useBlockActions();\n// const setDuration = useCallback(\n// (dur: DropdownItemType) => {\n// const durVal = durations.find(d => d.name === dur.name);\n// if (durVal) {\n// set('duration', durVal.duration, { persist: true });\n// }\n// },\n// [set]\n// );\n\n// return (\n// \n// {Durations[duration]}\n// \n// );\n// };\n\nexport const DurationPicker: React.FC<{}> = () => {\n const duration = useOrderData((s: OrderState) => s.duration, Durations.Day);\n\n const { setField: set } = useBlockActions();\n\n const setValue = useCallback(\n (isActive: boolean) => {\n set('duration', isActive ? Durations.Day : Durations.GTC, { persist: true });\n },\n [set]\n );\n\n return (\n \n );\n};\n","import React from 'react';\nimport { useOrderData, OrderState } from '../state/OrderState';\nimport { useOrderActions } from '../state/useOrderActions';\nimport PriceComponent from './PriceComponent';\n\nexport const StopOrderPrice: React.FC<{}> = () => {\n const { setStopPrice } = useOrderActions();\n const price = useOrderData((s: OrderState) => s.stopPrice ? s.stopPrice : undefined);\n const onChange = (value: number | null) => {\n setStopPrice(value === null ? undefined : value < 0 ? 0 : Math.abs(value));\n };\n \n return ;\n};\n","import React, { useEffect } from 'react';\nimport { OrderType } from '@tradingblock/types';\nimport { useOrderData } from '../../state/OrderState';\nimport { OrderTypePicker } from '../OrderTypePicker';\nimport { OrderPrice } from '../OrderPrice';\nimport { DebitCreditToggle } from '../DebitCreditToggle';\nimport { PriceSlider } from '../PriceSlider';\nimport { DurationPicker } from '../DurationPicker';\nimport { StopOrderPrice } from '../StopOrderPrice';\n\nexport const OrderContentSettings: React.FC<{}> = () => {\n const orderType = useOrderData(s => s.orderType);\n\n return (\n
    \n
    \n
    \n
    \n {orderType === OrderType.Stop_Limit && }\n
    \n
    \n
    \n \n
    \n \n
    \n
    \n {orderType === OrderType.Stop_Market && }\n {!(orderType === OrderType.Stop_Market || orderType === OrderType.Stop_Limit || orderType === OrderType.Market || orderType === OrderType.Market_On_Close) && }\n {orderType === OrderType.Stop_Limit && }\n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n};\n","import React, { FC, useCallback } from 'react';\nimport { TradingStrategyName, OrderAction, TradingStrategyNameOrCustom } from '@tradingblock/types';\nimport { getKnownStrategy } from '@tradingblock/api';\nimport { Svg } from '@tradingblock/components';\nimport { useOrderActions } from '../../blocks/Order/state/useOrderActions';\n\nexport const StrategyButton: FC<{ strategy: TradingStrategyName | TradingStrategyNameOrCustom }> = props => {\n const stratName = props.strategy;\n const strategy = getKnownStrategy(stratName as TradingStrategyName);\n const { setStrategy } = useOrderActions();\n const onClick = useCallback(() => setStrategy(strategy, { action: OrderAction.Buy, reverseLegs: false, isDirty: false }), [strategy]);\n\n return \n};\n","import React from 'react';\nimport _ from 'lodash';\nimport { IndexStrategies, Strategies } from '@tradingblock/api';\nimport { StrategyButton } from '../../../components/blocks/StrategyButton';\n\ninterface StrategyProps {\n isIndex: boolean;\n}\n\nexport const StrategyTemplateButtons: React.FC = ({ isIndex }) => {\n if (isIndex) {\n return (\n
      \n {_.map(IndexStrategies, s => (\n
    • \n \n
    • \n ))}\n
    \n );\n }\n\n return (\n
      \n {_.map(Strategies, s => (\n
    • \n \n
    • \n ))}\n
    \n );\n};\n","import React, { useState, useCallback, FC } from 'react';\nexport const BlockPropTitle: FC<{ short: string; full: string }> = ({ short, full }) => {\n return (\n \n \n {short}\n \n {full}\n \n );\n};\n","import _ from 'lodash';\nimport {\n isCustomStrategy,\n StrikeRules,\n OptionType,\n ExpirationRules,\n OrderAction,\n Expiration,\n} from '@tradingblock/types';\nimport { OrderSelectors, LegExpirationInfo } from './../state/OrderSelector';\nimport { useOrderData, useOrderStrategy } from '../state/OrderState';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { DataState } from '../../../data/global/state';\nimport { StrikeSelectors, ExpirationSelectors } from '../../../data/global/selectors/expirationStrikeSelector';\nimport { useBlockId } from '../../../components/blocks/BlockState';\nimport { toArray } from '../../../utilities/data';\nimport { useGroupState } from '../../useGroupState';\n\nconst strikesWithValidity = (strikes: number[], isValid?: (strike: number) => boolean) => {\n return _.map(strikes, (s: number) => {\n return {\n value: s,\n isValid: isValid ? isValid(s) : true,\n };\n });\n};\n\nexport const useFilteredStrikes = (legId: string, expiration?: Expiration) => {\n const [symbol] = useGroupState('symbol');\n const strategy = useOrderStrategy();\n const blockId = useBlockId();\n const currentLegStrike = useOrderData(s => OrderSelectors.legStrikeById(s, blockId, legId));\n const legsWithStrike = useOrderData(s => OrderSelectors.orderedLegsWithStrike(s, blockId));\n const firstLegWithStrike = _.first(legsWithStrike);\n const firstStrike = firstLegWithStrike ? firstLegWithStrike.Strike : undefined;\n\n const strategyLegCount = strategy && !isCustomStrategy(strategy) ? strategy.info.LegsAmount : 0;\n const strikes = useStateSelector((state: DataState) =>\n expiration && symbol ? StrikeSelectors.strikes(state, { symbol: symbol.symbol, expiration: expiration }) || [] : []\n );\n const strikeRules = strategy && !isCustomStrategy(strategy) ? toArray(strategy.profile.Rules.Strike) : [];\n const shoudlValidate = currentLegStrike === undefined || !strikeRules.includes(StrikeRules.SameStrikes);\n\n if (!strategy || isCustomStrategy(strategy)) {\n return strikesWithValidity(strikes);\n } else if (strikeRules.includes(StrikeRules.Any)) {\n return strikesWithValidity(strikes);\n } else if (shoudlValidate && strategyLegCount === 2 && firstLegWithStrike && _.isNumber(firstStrike)) {\n const otherLeg = _.find(legsWithStrike, l => l.LegId !== legId);\n const otherStrike = otherLeg ? otherLeg.Strike : undefined;\n if (otherLeg === undefined || otherStrike === undefined) {\n return strikesWithValidity(strikes);\n }\n const otherLegHasLowerIndex = otherLeg.Index === 0;\n // should always allow all strikes bc we default values when one strike changes\n if (strikeRules.includes(StrikeRules.SameStrikes)) {\n return strikesWithValidity(strikes);\n } else if (strikeRules.includes(StrikeRules.DifferentStrikes)) {\n return strikesWithValidity(strikes, s => s !== otherStrike);\n } else if (strikeRules.includes(StrikeRules.CallHigherThanPut)) {\n return strikesWithValidity(strikes, s =>\n otherLeg.OptionType === OptionType.Call ? s < otherStrike : s > otherStrike\n );\n } else if (strikeRules.includes(StrikeRules.DecreasingOrder)) {\n return strikesWithValidity(strikes, s => (otherLegHasLowerIndex ? s < otherStrike : s > otherStrike));\n } else if (strikeRules.includes(StrikeRules.IncreasingOrder)) {\n return strikesWithValidity(strikes, s => (otherLegHasLowerIndex ? s > otherStrike : s < otherStrike));\n }\n }\n\n return strikesWithValidity(strikes);\n};\n\nexport const useFilteredExpirations = (legId: string) => {\n const [symbol] = useGroupState('symbol');\n const strategy = useOrderStrategy();\n const blockId = useBlockId();\n const legsWithExpiration = useOrderData(s => OrderSelectors.orderedLegsWithExpiration(s, blockId));\n const firstLegWithExpiration = useOrderData(s => OrderSelectors.firstLegWithExpiration(s, blockId));\n const currentLegAction = useOrderData(s => OrderSelectors.legActionById(s, blockId, legId));\n const firstExp = firstLegWithExpiration ? firstLegWithExpiration.Expiration : undefined;\n\n const expirations = useStateSelector(\n state => (symbol ? ExpirationSelectors.expirations(state, symbol.symbol) : []) || []\n );\n\n const otherLegs = _.reduce(\n legsWithExpiration,\n (acc: LegExpirationInfo[], l) => {\n if (l.LegId === legId) {\n return acc;\n }\n return [...acc, l];\n },\n []\n );\n\n if (strategy && !isCustomStrategy(strategy) && firstLegWithExpiration && _.isDate(firstExp)) {\n const expirationRule = strategy.profile.Rules.Expiration;\n if (expirationRule === ExpirationRules.DifferentExpiries) {\n return _.filter(expirations, e => !otherLegs.map(e => e.Expiration.date.valueOf()).includes(e.date.valueOf()));\n } else if (expirationRule === ExpirationRules.BuyWithLaterSellWithSooner) {\n //const firstLegIsBuy = firstLegWithExpiration.Action === OrderAction.Buy;\n const currLegIsBuy = currentLegAction && currentLegAction === OrderAction.Buy ? true : false;\n const { sellExpirations, buyExpirations } = _.reduce(\n otherLegs,\n (acc, l) => {\n const keyVal = l.Action === OrderAction.Buy ? 'buyExpirations' : 'sellExpirations';\n return {\n ...acc,\n [keyVal]: [...acc[keyVal], l.Expiration],\n };\n },\n { sellExpirations: [] as Date[], buyExpirations: [] as Date[] }\n );\n const maxSell = _(sellExpirations)\n .map(e => e.valueOf())\n .max();\n const minBuy = _(buyExpirations)\n .map(e => e.valueOf())\n .min();\n return _(expirations)\n .filter(e => {\n if (currLegIsBuy) {\n return maxSell ? e.date.valueOf() > maxSell : true;\n } else {\n return minBuy ? e.date.valueOf() < minBuy : true;\n }\n })\n\n .value();\n }\n }\n return _.orderBy(expirations, v => v.date.valueOf());\n};\n","import React from 'react';\n\nexport const LoadingDropdownButton: React.FunctionComponent<{ message?: string }> = ({ message }) => {\n return (\n <>\n \n \n );\n};\n","import React, { useMemo, useCallback, useEffect } from 'react';\nimport _ from 'lodash';\nimport dayjs from 'dayjs';\nimport { Expiration, AssetSymbol } from '@tradingblock/types';\nimport { AsyncAutocomplete, OptionType, ReactSelectComponents } from '@tradingblock/components';\nimport { OrderState, useOrderData } from '../../state/OrderState';\nimport { OrderSelectors } from '../../state/OrderSelector';\nimport { useFilteredExpirations } from '../../hooks/useStrikesFilteredForStrategy';\nimport { useStateSelector } from '../../../../data/global/dataSelectors';\nimport { ExpirationSelectors } from '../../../../data/global/selectors/expirationStrikeSelector';\nimport { LoadingDropdownButton } from '../../../../components/basic/Loading';\nimport { useBlockActionDispatchAndGenericActions, useBlockId } from '../../../../components/blocks/BlockState';\nimport { expirationDisplayInfo } from '../../../../utilities/data';\nimport { expirationValue } from '../../../../utilities/date';\nimport { blockSettings } from '../../../../data/global/selectors/settingSelectors';\nimport { getType } from 'typesafe-actions';\nimport { OrderActions, Actions } from '../../state/OrderActions';\nimport { useOrderPrice } from '../../hooks/useOrderPrice';\n\ntype ExpirationOption = OptionType;\n\nconst ExpirationToOption = (ex: Expiration, symbol: AssetSymbol) => {\n const d = dayjs(ex.date);\n const expDisplayInfo = expirationDisplayInfo(ex, symbol);\n const stringValue = `${d.format('MM.D.YY')} ${expDisplayInfo.label}`;\n const sym: ExpirationOption = {\n label: stringValue,\n value: stringValue,\n data: { ...ex, class: expDisplayInfo.class },\n searchValue: `${d.format('MM.D.YY')} ${d.format('YYYY MMMM dddd')} ${expDisplayInfo.label}`,\n };\n return sym;\n};\n\nexport interface OrderLegExpirationProps {\n legId: string;\n symbol: AssetSymbol;\n expiration?: Expiration;\n setExpiration: (val: Expiration) => void;\n setNoExpirations?: (val: boolean) => any;\n}\n\ntype OptionComponentType = { data: ExpirationOption } & any;\nexport const OptionComponent = ({ data, ...rest }: OptionComponentType) => {\n const className = `${_.get(rest, 'className', '')} ${data.data.class}`;\n return ;\n};\n\nexport const OrderLegExpiration: React.FC = ({\n legId,\n symbol,\n expiration,\n setExpiration,\n setNoExpirations,\n}) => {\n // const expirations = useStateSelector(state => ExpirationSelectors.expirations(state, symbol));\n const blockId = useBlockId();\n const { mid } = useOrderPrice();\n const expirations = useFilteredExpirations(legId);\n const isFetching = useStateSelector(state => ExpirationSelectors.isFetching(state, symbol.symbol));\n const expirationsAreInvalid = useOrderData(s => OrderSelectors.fieldIsInvalid(s, blockId, 'Expiration'));\n //@ts-ignore @param blockId\n const settings = useStateSelector(s => blockSettings.order(s, blockId));\n const { weeklyExpirations, monthlyExpirations, quarterlyExpirations, yearlyExpirations } = settings;\n const expirationOptionTypes = useMemo(() => {\n const expirationOptTypes = (expirations || []).map(e => ExpirationToOption(e, symbol));\n return expirationOptTypes;\n }, [expirations, symbol]);\n\n const filteredExpirationOptionTypes = useMemo(() => {\n const filtered = expirationOptionTypes.filter(eo => {\n const expirationFreqCode = eo.data.ExpirationFreqCode;\n\n const isWeekly =\n expirationFreqCode === 'W' ||\n expirationFreqCode === 'MW' ||\n expirationFreqCode === 'WW' ||\n (expirationFreqCode && expirationFreqCode.includes('Week')) ||\n (expirationFreqCode && expirationFreqCode.includes('W'));\n\n const isMonthly =\n expirationFreqCode === 'M' ||\n expirationFreqCode === 'MM' ||\n expirationFreqCode === 'Monthly' ||\n expirationFreqCode === 'VX' ||\n expirationFreqCode === 'ME';\n const isQuarterly = expirationFreqCode === 'QuarterlyEOM';\n const isYearly = expirationFreqCode === 'Yearly';\n\n return (\n (isWeekly && weeklyExpirations) ||\n (isMonthly && monthlyExpirations) ||\n (isQuarterly && quarterlyExpirations) ||\n (isYearly && yearlyExpirations)\n );\n });\n return filtered;\n }, [expirationOptionTypes]);\n\n const currValue = useMemo(() => {\n const curr = expiration\n ? filteredExpirationOptionTypes.find(eo => {\n return expiration && expiration.date && expirationValue(eo.data) === expirationValue(expiration);\n })\n : undefined;\n return curr;\n }, [filteredExpirationOptionTypes, expiration]);\n\n const [{}, dispatch] = useBlockActionDispatchAndGenericActions();\n\n const onSelectExpiration = useCallback(\n (val: OptionType) => {\n const match = filteredExpirationOptionTypes.find(eo => expirationValue(eo.data) === expirationValue(val.data));\n if (val && match) {\n dispatch({\n type: getType(Actions.setPrice),\n payload: { price: undefined, updateCreditOrDebit: true, mid: mid },\n });\n dispatch({ type: getType(Actions.setStopPrice), payload: { price: undefined, updateCreditOrDebit: false } });\n setExpiration(val.data);\n } else {\n console.warn('couldnt find matching expiration', val);\n }\n },\n [setExpiration, filteredExpirationOptionTypes]\n );\n\n const searchExpirations = useCallback(\n async (_: string) => {\n return Promise.resolve(filteredExpirationOptionTypes);\n },\n [filteredExpirationOptionTypes]\n );\n\n // if filteredExpirationOptionTypes is empty, then we need to set the expiration to undefined\n useEffect(() => {\n if (setNoExpirations) {\n setNoExpirations(filteredExpirationOptionTypes.length === 0);\n }\n }, [filteredExpirationOptionTypes, setNoExpirations]);\n\n return (\n <>\n {isFetching !== false && }\n {isFetching === false && (\n
    \n \n
    \n )}\n \n );\n};\n","import React, { useMemo, useCallback } from 'react';\nimport _ from 'lodash';\nimport { Expiration } from '@tradingblock/types';\nimport { OptionType, AsyncAutocomplete } from '@tradingblock/components';\nimport { OrderState, useOrderData } from '../../state/OrderState';\nimport { OrderSelectors } from './../../state/OrderSelector';\nimport { DataState } from '../../../../data/global/state';\nimport { useStateSelector } from '../../../../data/global/dataSelectors';\nimport { StrikeSelectors } from '../../../../data/global/selectors/expirationStrikeSelector';\nimport { useFilteredStrikes } from '../../hooks/useStrikesFilteredForStrategy';\nimport { LoadingDropdownButton } from '../../../../components/basic/Loading';\nimport { useBlockActionDispatchAndGenericActions, useBlockMetadata } from '../../../../components/blocks/BlockState';\nimport { useLastPrice } from '../useLastPrice';\nimport { getType } from 'typesafe-actions';\nimport { OrderActions, Actions } from '../../state/OrderActions';\nimport { useOrderPrice } from '../../hooks/useOrderPrice';\n\ninterface OrderLegStrikesProps {\n legId: string;\n symbol: string;\n expiration: Expiration;\n strike?: number;\n defaultStrike?: number;\n setStrike: (val: number) => void;\n}\n\nconst StrikeToOption = (strike: { value: number; isValid: boolean }) => {\n const sym: OptionType = {\n label: strike.value.toString(),\n value: strike.value.toString(),\n data: strike.value,\n searchValue: strike.value.toString(),\n };\n\n const numberSizeTrigger = 6;\n const requiredPrecision = 2;\n\n // edge case fix for when strikes have a large precision. scales with sigfigs. 1, 1000, 10000.\n if (sym.label.length > numberSizeTrigger) {\n // split by decimal grab the suffix and fix the preicision ~.00\n const deimcalSuffix = sym.label.split('.')[1].slice(0, requiredPrecision);\n // assign new property value to object prop. concat decimal then concat formatted suffix\n sym.label = sym.label\n .split('.')[0]\n .concat('.')\n .concat(deimcalSuffix);\n return sym;\n }\n return sym;\n};\n\nconst useDefaultStrikeValue = (symbol: string, strikes: OptionType[]) => {\n const currentPrice = useLastPrice(symbol);\n if (currentPrice === undefined) {\n return undefined;\n }\n return _(strikes)\n .orderBy(s => Math.abs(currentPrice.LastTradePrice - s.data))\n .first();\n};\n\nexport const OrderLegStrikes: React.FC = ({ legId, symbol, expiration, strike, setStrike }) => {\n // const { strikes, isFetching } = useOrderData(s => OrderSelectors.strikesByExpiration(s, expiration));\n const { blockId } = useBlockMetadata();\n const { mid } = useOrderPrice();\n const strikesAreInvalid = useOrderData(s => OrderSelectors.fieldIsInvalid(s, blockId, 'Strike'));\n //const strikes = useStateSelector((state: DataState) => (expiration ? StrikeSelectors.strikes(state, { symbol, expiration: expiration }) || [] : []));\n const strikes = useFilteredStrikes(legId, expiration);\n const isStrikesFetching = useStateSelector((state: DataState) =>\n expiration ? StrikeSelectors.isFetching(state, { symbol, expiration }) : undefined\n );\n // useEffect(() => {\n // if (!isStrikesFetching && _.isNumber(defaultStrike) && strike === undefined) {\n // setStrike(defaultStrike);\n // }\n // }, [strike, isStrikesFetching, setStrike, defaultStrike]);\n\n const strikeOptions = useMemo(() => _.filter(strikes, s => s.isValid).map(StrikeToOption), [strikes, strike]);\n // const strikeOptions = useMemo(() => _.map(strikes, StrikeToOption), [strikes]);\n const currValue = useMemo(() => (strike ? strikeOptions.find(strikeOpt => strikeOpt.data === strike) : undefined), [\n strikeOptions,\n strike,\n ]);\n\n const [{}, dispatch] = useBlockActionDispatchAndGenericActions();\n\n const setValue = useCallback(\n (val: OptionType) => {\n const match = strikeOptions.find(s => s.data === val.data);\n if (match) {\n dispatch({\n type: getType(Actions.setPrice),\n payload: { price: undefined, updateCreditOrDebit: true, mid: mid },\n });\n dispatch({ type: getType(Actions.setStopPrice), payload: { price: undefined, updateCreditOrDebit: false } });\n setStrike(match.data);\n }\n },\n [setStrike, strikeOptions]\n );\n\n const search = useCallback(\n async (value: string) => {\n return Promise.resolve(strikeOptions);\n },\n [strikeOptions]\n );\n const defaultValue = useDefaultStrikeValue(symbol, strikeOptions);\n\n return (\n <>\n {isStrikesFetching !== false && }\n {/* {isStrikesFetching === false && (\n \n {!currValue && strike}\n {currValue && {currValue.value}}\n \n )} */}\n {isStrikesFetching === false && (\n
    \n \n
    \n )}\n \n );\n};\n","import { useLastTradepriceOrUndefined } from '../../../hooks/useFeedQuote';\n\nexport const useLastPrice = (symbol: string) => {\n return useLastTradepriceOrUndefined(symbol);\n};\n","import React, { useCallback, useMemo } from 'react';\nimport { DropdownItemType, ToggleButton } from '@tradingblock/components';\nimport { PositionEffect, OrderAction } from '@tradingblock/types';\nimport { OrderState, useOrderData } from '../../state/OrderState';\nimport { LegSelector } from '../../state/OrderLegSelector';\nimport { useOrderActions } from '../../state/useOrderActions';\nimport { OrderSelectors } from '../../state/OrderSelector';\nimport { useBlockActionDispatchAndGenericActions, useBlockData } from '../../../../components/blocks/BlockState';\nimport { Actions, OrderActions } from '../../state/OrderActions';\nimport { getType } from 'typesafe-actions';\nimport { useOrderPrice } from '../../hooks/useOrderPrice';\n\nexport interface LegAction extends DropdownItemType {\n type: PositionEffect;\n orderType: OrderAction;\n}\n// const legActions: LegAction[] = [{ name: 'buyopen', value: 'buy', type: PositionEffect.Open, label: 'Buy to open', orderType: OrderAction.Buy }, { name: 'buyclose', value: 'buy', type: PositionEffect.Close, label: 'Buy to close', orderType: OrderAction.Buy }, { name: 'sellopen', value: 'sell', type: PositionEffect.Open, label: 'Sell to open', orderType: OrderAction.Sell }, { name: 'sellclose', value: 'sell', type: PositionEffect.Close, label: 'Sell to close', orderType: OrderAction.Sell }];\n\nexport const LegAction: React.FC<{ id: string }> = ({ id }) => {\n const isCustomStrategyOrUndefined = useOrderData(OrderSelectors.isCustomStrategyOrUndefined);\n const { setLegAction } = useOrderActions();\n\n const setOrderType = useCallback(\n (ot: OrderAction) => {\n if (isCustomStrategyOrUndefined) {\n setLegAction(id, ot);\n } else {\n setLegAction(id);\n }\n },\n [id, isCustomStrategyOrUndefined, setLegAction]\n );\n\n return ;\n};\n\nconst LegActionPicker: React.FC<{ id: string; setOrderType: (act: OrderAction) => void }> = ({ id, setOrderType }) => {\n const [{}, dispatch] = useBlockActionDispatchAndGenericActions();\n const {mid} = useOrderPrice();\n\n const action = LegSelector.Action(useBlockData(), id);\n const setActionValue = useCallback(\n (isActive: boolean) => {\n //setOrderType(isActive ? OrderAction.Buy : OrderAction.Sell);\n setOrderType(action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy);\n dispatch({ type: getType(Actions.setPrice), payload: { price: undefined, updateCreditOrDebit: true, mid: mid } })\n dispatch({ type: getType(Actions.setStopPrice), payload: { price: undefined, updateCreditOrDebit: false } })\n },\n [setOrderType, action]\n );\n const actionValue = useMemo(() => (action === OrderAction.Buy ? true : false), [action]);\n //const buttonClass = useMemo(() => (action.orderType === OrderAction.Sell ? `btn-sell` : `btn-buy`), [action.orderType]);\n\n return (\n \n // \n // {_.camelCase(OrderAction[action.orderType])}\n // {`To ${PositionEffect[action.type]}`}\n // \n );\n};\n","import React, { useCallback, useMemo } from 'react';\nimport _ from 'lodash';\nimport { NumberInput } from '@tradingblock/components';\nimport { useOrderData, OrderState } from '../../state/OrderState';\nimport { LegSelector } from '../../state/OrderLegSelector';\nimport { useOrderActions } from '../../state/useOrderActions';\nimport { OrderSelectors } from '../../state/OrderSelector';\nimport { useOrderQuantity } from '../Order/OrderQuantity';\nimport { useBlockData } from '../../../../components/blocks/BlockState';\nimport { useBlockActionDispatchAndGenericActions } from '../../../../components/blocks/BlockState';\nimport { OrderActions, Actions } from '../../state/OrderActions';\nimport { getType } from 'typesafe-actions';\nimport { useOrderPrice } from '../../hooks/useOrderPrice';\n\nexport const LegQuantity: React.FC<{ id: string; disabled?: boolean }> = ({ id, disabled }) => {\n const legQuantityIsInvalid = useOrderData(s => OrderSelectors.invalidLegPosition(s, id));\n const { setLegQuantity } = useOrderActions();\n const { quantity } = useOrderQuantity();\n const spreadRatio = LegSelector.SpreadRatio(useBlockData(), id);\n const { mid } = useOrderPrice();\n\n const quantityValue = useMemo(() => {\n return disabled ? quantity * spreadRatio : spreadRatio;\n }, [spreadRatio, quantity]);\n\n const [{}, dispatch] = useBlockActionDispatchAndGenericActions();\n\n const onChange = useCallback(\n (value: number) => {\n dispatch({\n type: getType(Actions.setPrice),\n payload: { price: undefined, updateCreditOrDebit: true, mid: mid },\n });\n setLegQuantity(id, value);\n },\n [setLegQuantity, id]\n );\n return (\n
    \n \n
    \n );\n};\n","import React, { useEffect, useMemo, useState } from 'react';\nimport { PositionEffect, OrderActionDirection, PositionInfo, OrderAction } from '@tradingblock/types';\nimport { OrderState } from '../../state/OrderState';\nimport { SymbolOccBasicSelector, LegSelector } from '../../state/OrderLegSelector';\nimport { useStateSelector, positionInfo } from '../../../../data/global/dataSelectors';\nimport { useBlockData } from '../../../../components/blocks/BlockState';\nimport { PositionDTO } from '@tradingblock/api';\nimport _ from 'lodash';\n\nconst Position = ({ position, quantity }: { position?: PositionEffect; quantity: number }) => {\n const quantityValue = useMemo(() => (quantity !== 0 ? `(${quantity})` : ''), [quantity]);\n const direction = useMemo(() => (position === PositionEffect.Open ? 'open' : 'close'), [position]);\n const directionClass = useMemo(() => (position === PositionEffect.Open ? 'neg' : 'pos'), [position]);\n const positionClass = useMemo(() => {\n if (quantity < 0) {\n return 'neg';\n } else if (quantity > 0) {\n return 'pos';\n } else if (quantity === 0) {\n return '';\n }\n }, [quantity]);\n\n return position ? (\n
    \n
    \n Position\n {quantityValue}{' '}\n
    \n
    To {direction}
    \n
    \n ) : (\n <>\n );\n};\n\nconst PositionMemo = React.memo(Position);\n\nexport const LegPosition: React.FC<{ legId: string; positions: PositionDTO[] }> = ({ legId, positions }) => {\n const blockState = useBlockData();\n const occSymbol = useMemo(() => SymbolOccBasicSelector(blockState, legId) || '', [legId, blockState]);\n\n // States\n const [accountPositionInfo, setAccountPositionInfo] = useState({});\n\n // Redux\n const subId = useStateSelector(s => s.account.subAccountId);\n\n useEffect(() => {\n if (positions) {\n const positionsWithId = positions.map(p => {\n return {\n ...p,\n };\n });\n const info = _.reduce(\n positionsWithId,\n (acc: PositionInfo, p) => {\n const symbolKey = p.Symbol;\n const existing = acc[symbolKey] || { quantity: 0 };\n const direction =\n p.OpenQuantity + existing.quantity < 0 ? OrderActionDirection.Short : OrderActionDirection.Long;\n const quantity = existing.quantity + p.OpenQuantity;\n return {\n ...acc,\n [symbolKey]: {\n underlyingSymbol: p.UnderlyingSymbol,\n quantity,\n direction,\n },\n };\n },\n {}\n );\n\n if (info) {\n setAccountPositionInfo(info);\n }\n }\n }, []);\n\n const positionQuantity = useStateSelector(s => {\n const { quantity } = positionInfo(s, occSymbol);\n const info = accountPositionInfo[occSymbol];\n const quantityValue = subId && info ? info.quantity : quantity;\n\n return quantityValue;\n });\n\n const legPosition = useMemo(() => {\n const position = LegSelector.PositionEffect(blockState, legId);\n const action = LegSelector.Action(blockState, legId);\n const info = accountPositionInfo[occSymbol];\n\n const positionIsLong = info && info.quantity > 0;\n let subPosition: PositionEffect | undefined;\n\n if (positionIsLong && action === OrderAction.Buy) {\n subPosition = PositionEffect.Open;\n } else if (positionIsLong && action === OrderAction.Sell) {\n subPosition = PositionEffect.Close;\n } else if (!positionIsLong && action === OrderAction.Buy) {\n subPosition = PositionEffect.Close;\n } else if (!positionIsLong && action === OrderAction.Sell) {\n subPosition = PositionEffect.Open;\n }\n\n const positionValue = subId && info ? subPosition : position;\n // if can't determine position effect, default to Open\n return positionValue || PositionEffect.Open;\n }, [legId, blockState, subId, accountPositionInfo]);\n\n return ;\n};\n","import { useMemo } from 'react';\nimport _ from 'lodash';\nimport { OrderState } from '../state/OrderState';\nimport { SymbolOccBasicSelector } from '../state/OrderLegSelector';\nimport { getQuoteMetadata } from '../../../data/global/selectors/quoteSelector';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useQuoteBidAsk } from '../../../hooks/useFeedQuote';\nimport { useBlockData } from '../../../components/blocks/BlockState';\n\nexport const useBidAsk = (legId: string) => {\n const blockState = useBlockData();\n // const log = useLog('useBidAsk');\n const occSymbol = useMemo(() => SymbolOccBasicSelector(blockState, legId) || '', [legId, blockState]);\n const quote = useStateSelector(s => getQuoteMetadata(s, occSymbol));\n const feedQuote = useQuoteBidAsk(occSymbol);\n\n // log(`${occSymbol} %o`, { quote, feedQuote, symbolQuote });\n\n const result = useMemo(() => {\n const feed = feedQuote || { BidPrice: undefined, AskPrice: undefined };\n const quo = quote || { BidPrice: undefined, AskPrice: undefined };\n const bids = [feed.BidPrice, quo.BidPrice];\n const asks = [feed.AskPrice, quo.AskPrice];\n return {\n bid: _.find(bids, v => _.isNumber(v)),\n ask: _.find(asks, v => _.isNumber(v)),\n };\n }, [quote, feedQuote]);\n // useWhyDidYouUpdate(`useBidAsk:${legId}:${occSymbol}`, { quote, feedQuote, blockState, occSymbol, result });\n return result;\n};\n","import React from 'react';\nimport _ from 'lodash';\nimport { getClassNames } from '@tradingblock/components';\nimport { useDirectionalValue } from '../basic/Directional';\n\nexport const Directional: React.FC<{ value?: string | number; className?: string }> = ({\n value,\n className,\n children,\n}) => {\n const directionalClass = useDirectionalValue(_.isNumber(value) ? value : undefined);\n const classes = getClassNames([className, directionalClass]);\n return
    {children}
    ;\n};\n","import React, { useMemo } from 'react';\nimport _ from 'lodash';\nimport createCachedSelector from 're-reselect';\nimport { useBidAsk } from '../useBidAsk';\nimport { DropdownItemType, ToggleButton, Number, CSS, Loading } from '@tradingblock/components';\nimport { OrderState } from '../../state/OrderState';\nimport { SymbolOccBasicSelector } from '../../state/OrderLegSelector';\nimport { useStateSelector } from '../../../../data/global/dataSelectors';\nimport { quoteSelectors } from '../../../../data/global/selectors/quoteSelector';\nimport { BidAskPrice } from '../../../../components/symbol/BidAsk';\nimport { Directional } from '../../../../components/symbol/Price';\nimport { useBlockData } from '../../../../components/blocks/BlockState';\n\nconst getQuoteHigh = createCachedSelector(quoteSelectors.byId, quote => (quote ? quote.High : undefined))(\n (_, id) => `${id}-high`\n);\nconst getQuoteLow = createCachedSelector(quoteSelectors.byId, quote => (quote ? quote.Low : undefined))(\n (_, id) => `${id}-low`\n);\nconst getQuoteClose = createCachedSelector(quoteSelectors.byId, quote => (quote ? quote.ClosePrice : undefined))(\n (_, id) => `${id}-close`\n);\n\nconst LegPrice: React.FC<{ value?: number }> = ({ value }) => {\n return (\n <>\n {!_.isNil(value) && (\n
    \n \n
    \n )}\n \n );\n};\n\nconst DirectionalLegPrice: React.FC<{ value?: number }> = ({ value }) => {\n return (\n <>\n {!_.isNil(value) && (\n \n \n \n )}\n \n );\n};\n\nconst LegBidQuote: React.FC<{ legId: string }> = ({ legId }) => {\n const { bid } = useBidAsk(legId);\n return ;\n};\n\nconst LegAskQuote: React.FC<{ legId: string }> = ({ legId }) => {\n const { ask } = useBidAsk(legId);\n return ;\n};\n\nconst LegQuoteHigh: React.FC<{ legId: string }> = ({ legId }) => {\n const blockState = useBlockData();\n const occSymbol = SymbolOccBasicSelector(blockState, legId);\n const High = useStateSelector(s => getQuoteHigh(s, occSymbol || ''));\n return ;\n};\n\nconst LegQuoteLow: React.FC<{ legId: string }> = ({ legId }) => {\n const blockState = useBlockData();\n const occSymbol = SymbolOccBasicSelector(blockState, legId);\n const Low = useStateSelector(s => getQuoteLow(s, occSymbol || ''));\n return ;\n};\n\n// const LegQuoteClose: React.FC<{ legId: string }> = ({ legId }) => {\n// const blockState = useBlockData();\n// const occSymbol = SymbolOccBasicSelector(blockState, legId);\n// const Close = useStateSelector(s => getQuoteClose(s, occSymbol || ''));\n// if (!Close && blockState.price) {\n// return ;\n// } else {\n// return ;\n// }\n// };\n\nexport const LegPrices = {\n Bid: LegBidQuote,\n Ask: LegAskQuote,\n High: LegQuoteHigh,\n Low: LegQuoteLow,\n // Close: LegQuoteClose,\n};\n","import React, { useCallback, useMemo } from 'react';\nimport _ from 'lodash';\nimport { DropdownItemType, ToggleButton, Number } from '@tradingblock/components';\nimport { AssetType, OptionType, isCustomStrategy, Expiration } from '@tradingblock/types';\nimport { useOrderActions } from '../state/useOrderActions';\nimport { LegSelector } from '../state/OrderLegSelector';\nimport { useLegsActions } from '../state/useLegsActions';\nimport { useOrderLegData } from '../state/useOrderLegData';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { OrderState, useOrderData } from '../state/OrderState';\nimport { BlockPropTitle } from '../../../components/blocks/blockProp/BlockProp';\nimport { useBlockData } from '../../../components/blocks/BlockState';\nimport { OrderLegExpiration } from './Legs/Expiration';\nimport { OrderLegStrikes } from './Legs/Strikes';\nimport { LegAction } from './Legs/Action';\nimport { LegQuantity } from './Legs/Quantity';\nimport { LegPosition } from './Legs/Position';\nimport { LegPrices } from './Legs/BidAsk';\nimport { useGroupAssetSymbol } from '../../useGroupState';\nimport { OrderQuantity } from './Order/OrderQuantity';\nimport { HasEquityLeg } from '../OrderUtilities';\nimport { useOrderSettings } from '../hooks/useOrderSettings';\nimport { useEffect } from 'react';\nimport { PositionDTO } from '@tradingblock/api';\n\ninterface LegAssetType extends DropdownItemType {\n type: AssetType;\n optionType?: OptionType;\n}\n\nconst assetTypes: LegAssetType[] = [\n { name: 'shares', value: 'Shares', type: AssetType.Equity },\n { optionType: OptionType.Call, name: 'call', value: 'Call', type: AssetType.Option },\n { optionType: OptionType.Put, name: 'put', value: 'Put', type: AssetType.Option },\n];\n\nexport const useAssetTypes = (id: string) => {\n const { legs } = useBlockData();\n const legAssetType = LegSelector.AssetType(useBlockData(), id);\n return legAssetType !== AssetType.Equity && HasEquityLeg(legs)\n ? assetTypes.filter(at => at.type !== AssetType.Equity)\n : assetTypes;\n};\n\n// export const LegSync = (id: string) => {\n// const leg = useOrderData(state => state.legs[id]);\n// useEffect(() => {\n// console.log('leg changed', { Action: OrderAction[leg.Action], leg });\n// }, [leg]);\n// return leg;\n// };\n\nexport const OrderLeg: React.FC<{\n id: string;\n price: number;\n invalid?: boolean;\n positions: PositionDTO[];\n setNoExpirations?: (val: boolean) => any;\n}> = ({ id, price, invalid, positions, setNoExpirations }) => {\n const symbol = useGroupAssetSymbol();\n\n const isCustomStrategyOrUndefined = useOrderData(OrderSelectors.isCustomStrategyOrUndefined);\n const isSingleLeggedStrategy = useOrderData(OrderSelectors.isSingleLegStrategy);\n\n const { setExpiration, setStrike } = useOrderActions();\n\n const { strike, expiration } = useOrderLegData(id);\n const { remove } = useLegsActions();\n const legAssetType = LegSelector.AssetType(useBlockData(), id);\n const legOptionType = LegSelector.OptionType(useBlockData(), id);\n\n const assetType = useMemo(\n () => assetTypes.find(at => at.type === legAssetType && at.optionType === legOptionType) || assetTypes[0],\n [legAssetType, legOptionType]\n );\n\n const isOption = useMemo(() => symbol && assetType && assetType.type === AssetType.Option, [assetType, symbol]);\n const strategy = useOrderData((s: OrderState) => s.strategy);\n const isCustom = useMemo(() => (strategy === undefined || isCustomStrategy(strategy) ? true : false), [strategy]);\n //TODO: temporary fix for custom strategies with no legs causing white screen, will review and provide a better solution soon\n const lastLeg = useOrderData(OrderSelectors.legs).length > 1 && true;\n\n // useLegOptionDefaults(id, symbol, price);\n // useStrikeLoader(symbol, expiration);\n const setLegStrike = useCallback(\n (value: number) => {\n localStorage.setItem(`leg-strike-${id}`, JSON.stringify(value));\n setStrike(id, value);\n },\n [setStrike, id]\n );\n let strikeStored: any = localStorage.getItem(`leg-strike-${id}`);\n const setLegExpiration = useCallback(\n (date: Expiration) => {\n setExpiration(id, date);\n },\n [setExpiration, id]\n );\n\n useEffect(() => {\n if (!strike) {\n setStrike(id, JSON.parse(strikeStored));\n }\n }, []);\n\n const validationClass = useMemo(() => (invalid ? ' invalid' : ''), [invalid]);\n\n const enableLegQuantity = useMemo(() => {\n return isCustom || isSingleLeggedStrategy;\n }, [isCustom, isSingleLeggedStrategy]);\n\n const { modernBidAskLabelOrientation } = useOrderSettings();\n\n return (\n
    \n
    \n \n
    \n {/*
    \n \n
    */}\n
    \n {!isSingleLeggedStrategy && }\n {isSingleLeggedStrategy && }\n
    \n
    \n \n
    \n
    \n {isOption ? (\n \n ) : (\n \n )}\n
    \n\n
    \n {isOption && symbol && (\n \n )}\n
    \n\n
    \n {isOption && symbol && expiration && (\n \n )}\n
    \n\n {modernBidAskLabelOrientation && (\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 \n
    • \n
    • \n \n \n \n \n
    • \n
    \n
    \n
    \n
    \n )}\n\n {!modernBidAskLabelOrientation && (\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 \n
    • \n
    • \n \n \n \n \n
    • \n
    \n
    \n
    \n
    \n )}\n\n
    \n {isCustomStrategyOrUndefined && lastLeg && (\n remove(id)}\n disabled={!isCustomStrategyOrUndefined}\n type=\"button\"\n >\n \n \n )}\n
    \n
    \n );\n};\n\nconst LegOptionType: React.FC<{ id: string; disabled: boolean }> = ({ id, disabled }) => {\n const { setIsDirty, setOptionType, setPrice } = useOrderActions();\n const value = LegSelector.OptionType(useBlockData(), id);\n const setValue = useCallback(\n (isActive: boolean) => {\n setOptionType(id, isActive ? OptionType.Call : OptionType.Put);\n setPrice(undefined, false);\n setIsDirty(true);\n },\n [id, setOptionType, setIsDirty]\n );\n const isActive = useMemo(() => value === OptionType.Call, [value]);\n\n return (\n \n );\n};\n","import { useMemo } from 'react';\nimport { Expiration } from '@tradingblock/types';\nimport { useBlockData } from '../../../components/blocks/BlockState';\nimport { OrderState } from './OrderState';\nimport { LegSelector } from './OrderLegSelector';\n\nexport const useOrderLegData = (id: string) => {\n const blockState = useBlockData();\n const expiration: Expiration | undefined = useMemo(\n () => (blockState.legs[id] ? blockState.legs[id].Expiration : undefined),\n [blockState, id]\n );\n const strike = LegSelector.Strike(blockState, id);\n\n return {\n expiration,\n strike,\n occSymbol: LegSelector.SymbolAsOCC(blockState, { id }),\n };\n};\n","import React, { useMemo } from 'react';\nimport _ from 'lodash';\nimport { OrderSelectors } from './state/OrderSelector';\nimport { useOrderData } from './state/OrderState';\nimport { useOptionDefaults } from './data/useExpirationStrikeData';\nimport { useFeedQuoteWithMetadata } from '../../hooks/useFeedQuote';\nimport { OrderLeg } from './components/Leg';\nimport { useBlockId } from '../../components/blocks/BlockState';\nimport { PositionDTO } from '@tradingblock/api';\nimport { useOrderState } from './state/useOrderState';\nimport { AssetType } from '@tradingblock/types';\n\nconst OrderLegData: React.FC<{ symbol: string }> = ({ symbol }) => {\n useOptionDefaults(symbol);\n return <>;\n};\n\nexport const OrderLegs: React.FC<{\n symbol: string;\n positions: PositionDTO[];\n setNoExpirations?: (val: boolean) => any;\n}> = ({ symbol, positions, setNoExpirations }) => {\n const blockId = useBlockId();\n const legIds = useOrderData(OrderSelectors.legIds);\n const symbolQuote = useFeedQuoteWithMetadata(symbol);\n const invalidLegIds = useOrderData(s => OrderSelectors.invalidLegIds(s, blockId));\n const midPrice = useMemo(() => {\n if (!symbolQuote) {\n return undefined;\n }\n const diff = symbolQuote.AskPrice - symbolQuote.BidPrice;\n const mid = symbolQuote.BidPrice + diff;\n return _.isNumber(mid) && _.isFinite(mid) ? mid : undefined;\n }, [symbolQuote]);\n\n // determine if the current order has any option legs by looking at order type\n const legs = useOrderState('legs');\n\n const hasOptionLegs = useMemo(() => {\n return _.some(legs, leg => leg.AssetType === AssetType.Option);\n }, [legs]);\n\n return (\n <>\n {symbol && }\n {symbol &&\n legIds.map(lid => (\n \n ))}\n \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useContext, useEffect, useMemo } from 'react';\nimport { useAlerts } from '@tradingblock/components';\n\nimport { OrderState, useOrderData } from './state/OrderState';\nimport { OrderSelectors } from './state/OrderSelector';\nimport { useOrderSymbolData } from './state/useOrderSymbols';\nimport { useOrderAssetSymbolOrUndefined, useOrderSymbolOrUndefined } from './state/useOrderState';\nimport { useExpirationLoader } from './data/useExpirationStrikeData';\nimport { useOrderPositionSync } from './hooks/useOrderPositionSync';\nimport { useBlockActions, useBlockMetadata } from '../../components/blocks/BlockState';\nimport { OrderStrategyPicker } from './components/OrderStrategyPicker';\nimport { AddOrderLeg } from './components/AddOrderLeg';\nimport { AddOrderLegContent } from './components/AddOrderLegContent';\nimport { ClearOrder } from './components/ClearOrder';\nimport { PriceAndQuoteSync } from './components/PriceAndQuoteSync';\nimport { OrderContentSettings } from './components/content/OrderContentSettings';\nimport { StrategyTemplateButtons } from './components/StrategyTemplateButtons';\nimport { OrderLegs } from './OrderLegs';\nimport _ from 'lodash';\nimport { AccountApiFactory, PositionDTO } from '@tradingblock/api';\nimport { useSelector } from 'react-redux';\nimport { account, useStateSelector } from '../../data/global/dataSelectors';\nimport Config from '../../config';\nimport { BlockDataContext } from '../../components/blocks/BlockState';\nimport { useOrderActions } from './state/useOrderActions';\nimport { OrderType } from '@tradingblock/types';\n\nexport const OrderContent: React.FC<{ setNoExpirations?: (val: boolean) => any }> = ({ setNoExpirations }) => {\n //const data = useMemo(() => favorites || [], [favorites]);\n //const symbolQuote = useStateSelector(s => (symbol && symbol.symbol ? s.quotes[symbol.symbol] : undefined));\n const { blockId, data } = useBlockMetadata();\n const symbol = useOrderSymbolOrUndefined();\n const assetSymbol = useOrderAssetSymbolOrUndefined();\n const assetSymbolInfo = _.omit(assetSymbol, ['name', 'provider']);\n const context = useContext(BlockDataContext);\n // const assetSymbol = useOrderState('symbol');\n const orderType = useOrderData(s => s.orderType);\n const legError = useOrderData(s => s.legError);\n const hidePrice = useMemo(() => orderType === OrderType.Market, [orderType]);\n const hasLegs = useOrderData(s => OrderSelectors.hasLegs(s, blockId));\n const isCustomStrategyOrUndefined = useOrderData(OrderSelectors.isCustomStrategyOrUndefined);\n useExpirationLoader(symbol || '');\n useOrderSymbolData();\n useOrderPositionSync();\n const notifications = useAlerts();\n const [positions, setPositions] = React.useState([]);\n const emptyCustomOrder = !hasLegs && symbol ? true : false;\n const isIndex = _.toLower(symbol).charAt(0) === '$' ? true : false;\n // variables for building api client\n const accountId = useSelector(account.accountId);\n const apiRootUrl = Config.tradingApi;\n const token = useStateSelector(state => state.auth.apiToken) || undefined;\n\n const accountApi = useMemo(() => {\n if (accountId && token) {\n return AccountApiFactory(apiRootUrl, token, accountId);\n }\n return undefined;\n }, [accountId, apiRootUrl, token]);\n\n useEffect(() => {\n // display any leg errors\n if (legError) {\n notifications.error(legError, { id: 'order-leg-error', autoClose: 7000 });\n }\n }, [legError]);\n\n useEffect(() => {\n // TODO: Really need to have positions in global redux state. Only issue is that sub accounts\n // will reload/rewrite positions in redux. But can't just filter on the redux state with subaccount id,\n // since PnL is tightly coupled with positions values.\n // this will need to be covered and refactored later...\n if (accountApi) {\n accountApi.positions().then(payload => {\n setPositions(payload.payload);\n });\n }\n }, []);\n\n // In order to alleviate the issue of a linked order block quotes/legs getting out of sync with symbol picker\n // we will force a symbol change on initial load if the context symbol is different than the header/group symbol\n // this will ensure that the block is in sync with the symbol picker.\n // TODO: Review how block data and settings are currently being stored/persisted. (Context vs. Mongo vs. Redux)\n const { changeSymbol } = useOrderActions();\n const { setField } = useBlockActions();\n useEffect(() => {\n if (symbol && data && data.symbol && symbol !== data.symbol.underlyingSymbol) {\n assetSymbol && changeSymbol(assetSymbolInfo, assetSymbol, { persist: true }, true);\n }\n }, [symbol, data.symbol]);\n\n useEffect(() => {\n setField('orderType', OrderType.Limit, { persist: true });\n }, [symbol]);\n\n return (\n <>\n {symbol && (\n
    \n \n {hasLegs && symbol && }\n {emptyCustomOrder && (\n <>\n \n

    Or use a strategy template

    \n \n \n )}\n
    \n )}\n\n {symbol && (\n <>\n \n {hasLegs && (\n
    \n
    \n {isCustomStrategyOrUndefined && symbol && }\n
    \n\n \n
    \n )}\n {hasLegs && }\n \n )}\n \n );\n};\n\nexport const MarkerLabel: React.FC<{\n title: string;\n value: string;\n styles?: React.CSSProperties;\n isReversed?: boolean;\n}> = ({ title, value, styles, isReversed }) => {\n const style = isReversed\n ? {\n ...styles,\n transform: 'translateX(50%)',\n right: '50%',\n maxWidth: '75%',\n }\n : {\n ...styles,\n transform: 'translateX(-50%)',\n left: '50%',\n maxWidth: '75%',\n };\n\n return (\n \n \n {title}\n \n {value}\n \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport { useEffect, useState } from 'react';\nimport _ from 'lodash';\nimport { useWhyDidYouUpdate } from '@tradingblock/components';\nimport { useQuoteActions } from '../../../hooks/useQuoteData';\nimport { useBlockGlobalData, useBlockId } from '../../../components/blocks/BlockState';\nimport { useOrderData } from './OrderState';\nimport { OrderSymbolList } from './OrderLegSelector';\nimport { useOrderDebug } from '../OrderUtilities';\nimport { areArraysEqual } from '../../../utilities/data';\n\nexport const useOrderSymbolData = () => {\n const log = useOrderDebug('useOrderSymbolData');\n const { setQuotes } = useQuoteActions();\n const { quotes } = useBlockGlobalData();\n const blockId = useBlockId();\n const currentLegSymbols = useOrderData(s => OrderSymbolList(s, blockId));\n\n const [orderSymbols, setOrderSymbols] = useState([]);\n\n useEffect(() => {\n const legsymbolList = currentLegSymbols.map(s => s.symbol).filter(ss => ss !== undefined);\n const symbolsToRemove = _.difference(orderSymbols || [], legsymbolList || []);\n const symbolsToAdd = _.difference(legsymbolList, quotes);\n const symbolChanges = _.union(symbolsToRemove, symbolsToAdd);\n if ((symbolChanges && symbolChanges.length > 0) || !areArraysEqual(orderSymbols, legsymbolList)) {\n log('syncing block symbols %o', { legsymbolList, orderSymbols });\n setQuotes(legsymbolList);\n setOrderSymbols(orderSymbols);\n } else {\n log('order block symbols havent changed %o', { legsymbolList, orderSymbols });\n }\n // setOrderSymbols(currentLegSymbols);\n }, [orderSymbols, currentLegSymbols]);\n\n useWhyDidYouUpdate('Order:useOrderSymbolData', {\n orderSymbols,\n currentLegSymbols,\n setOrderSymbols,\n quotes,\n setQuotes,\n log,\n });\n};\n","import React, { useCallback, useMemo, useState } from 'react';\r\nimport _ from 'lodash';\r\nimport { OrderPreviewPopupProps } from './types';\r\nimport { IsVirtualEnvironment } from '../../../../data/global/selectors/environmentSelector';\r\nimport { useStateSelector } from '../../../../data/global/dataSelectors';\r\nimport { useDispatcher } from '../../../../data/global/hooks';\r\nimport { useOrderPreviewOrder } from './useOrderPreview';\r\n\r\nexport const OrderPreviewActions: React.FC<\r\n OrderPreviewPopupProps & {\r\n setOrderStatusProcessed: React.Dispatch>;\r\n disabled: boolean;\r\n onSave: () => void;\r\n isSaving: boolean;\r\n }\r\n> = ({ previewClosed, onSave, disabled, isSaving, isCancelOrder, action, setOrderStatusProcessed }) => {\r\n const isVirtualEnv = useStateSelector(IsVirtualEnvironment);\r\n const btnClassName = useMemo(() => (isVirtualEnv ? 'btn-virtual' : `btn-${isCancelOrder ? 'danger' : 'primary'}`), [\r\n isVirtualEnv,\r\n ]);\r\n const { dispatcher } = useDispatcher();\r\n const { order } = useOrderPreviewOrder(action);\r\n const [processing, setIsProcessing] = useState(false);\r\n const [complete, setIsComplete] = useState(false);\r\n\r\n const handleOrderAction = useCallback(\r\n order => {\r\n if (complete && !processing) {\r\n previewClosed({ action: 'closed' });\r\n } else if (!isCancelOrder) {\r\n setIsProcessing(true);\r\n setTimeout(() => {\r\n onSave();\r\n setIsProcessing(false);\r\n setIsComplete(true);\r\n }, 2000);\r\n } else if (order.OrderId) {\r\n setIsProcessing(true);\r\n setTimeout(() => {\r\n dispatcher.order.requestCancel(order.OrderId);\r\n setIsProcessing(false);\r\n setIsComplete(true);\r\n setOrderStatusProcessed(true);\r\n }, 2000);\r\n }\r\n },\r\n [complete, processing, order, onSave]\r\n );\r\n\r\n return (\r\n <>\r\n \r\n handleOrderAction(order)}\r\n style={{ transition: 'all 0.5s ease-in-out' }}\r\n type=\"button\"\r\n >\r\n {!isSaving && (\r\n <>\r\n {!complete ? (isCancelOrder ? 'Cancel' : 'Send') + ' Order' : ''} {' '}\r\n \r\n \r\n )}\r\n {(isSaving || processing) && (\r\n <>\r\n   Saving...  \r\n \r\n \r\n )}\r\n {complete && (\r\n <>\r\n   OK  \r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n","import React, { useMemo, useCallback, useState, useEffect } from 'react';\nimport _ from 'lodash';\nimport { FormGroup, SelectDropdownInput, BasicCheckboxInput } from '@tradingblock/components';\nimport { OrderStatuses, SubAccount, UserLevelTypes, UserProfileLevel } from '@tradingblock/types';\nimport { useStateSelector, subAccountIdSelector, account } from '../../../../data/global/dataSelectors';\nimport { IsVirtualEnvironment } from '../../../../data/global/selectors/environmentSelector';\nimport { PreviewActions, useOrderPreviewOrder } from './useOrderPreview';\nimport { PreviewContent } from './PreviewContent';\nimport { TradingBlockLink } from '../../../../components/basic/TradingBlockLink';\nimport { PreviewisMarketOpen, TimeTillClose } from '../../../../utilities/date';\nimport dayjs from 'dayjs';\nimport { useSelector } from 'react-redux';\nimport { Order } from '@tradingblock/tradingview/dist/charting_library';\n\nexport const PreviewPopupContent: React.FC<{\n isCancelOrder: boolean;\n subAccounts?: SubAccount[];\n warningNotAccepted: boolean;\n onWarningAccepted: () => void;\n action?: PreviewActions;\n orderStatusProcessed?: boolean;\n orderValue?: any;\n}> = ({\n subAccounts,\n warningNotAccepted,\n onWarningAccepted,\n isCancelOrder,\n action: passedAction,\n orderStatusProcessed,\n orderValue,\n}) => {\n const {\n order,\n legs,\n action,\n initialPrice,\n isWarningSymbol,\n isTradingblockOrder,\n changeSubaccountId,\n } = useOrderPreviewOrder(passedAction ? passedAction : 'execute');\n\n const globalSubAccountId = useStateSelector(subAccountIdSelector);\n const [orderSubAccountId, setOrderSubAccountId] = useState();\n const userLevel = useSelector(account.userLevel);\n const isAdmin = userLevel && userLevel === UserProfileLevel.Admin;\n\n const marketOpen = PreviewisMarketOpen();\n\n const isVirtualEnv = useStateSelector(IsVirtualEnvironment);\n\n const actionName = action === 'execute' ? 'execution' : 'replacement';\n\n const subAccountOptions = useMemo(() => {\n return _.map(subAccounts, sa => ({\n value: sa.Id,\n label: `${sa.Nickname} (${sa.AcctSuffix})`,\n }));\n }, [subAccounts]);\n\n const legSubAccountId = _.get(legs[0], 'SubaccountId');\n const orderSubaccount = order.SubaccountId\n ? subAccountOptions.find(subaccount => subaccount.value === order.SubaccountId)\n : '';\n const masterAccount = _.find(subAccounts, sa => sa.IsMaster);\n\n useEffect(() => {\n if (order) {\n if (isTradingblockOrder) {\n if (globalSubAccountId) {\n // If globally selected sub account, force select the dropdown\n setOrderSubAccountId(globalSubAccountId);\n changeSubaccountId(globalSubAccountId);\n } else {\n // Back to edit and re-open preview (but no global sub-account selected)\n if (legSubAccountId && legSubAccountId === -1) {\n if (masterAccount) {\n setOrderSubAccountId(masterAccount.Id);\n changeSubaccountId(masterAccount.Id);\n }\n } else if (legSubAccountId) {\n setOrderSubAccountId(legSubAccountId);\n changeSubaccountId(legSubAccountId);\n } else {\n changeSubaccountId(undefined);\n }\n }\n } else if (order.SubaccountId) {\n // Order Preview from Activity Order Block,\n setOrderSubAccountId(order.SubaccountId);\n }\n }\n }, []);\n\n const onSelectSubAccount = useCallback(\n (id: number) => {\n setOrderSubAccountId(id);\n changeSubaccountId(id);\n },\n [setOrderSubAccountId, changeSubaccountId]\n );\n\n const beforeSomeOptionsCloseTime = dayjs()\n .utc(false)\n .set('hour', 20)\n .set('minute', 15)\n .set('seconds', 0); //3:15PM CST\n\n useEffect(() => {\n // If admin, automatically accept the leveraged ETF warning\n if (isAdmin && isWarningSymbol) {\n onWarningAccepted();\n }\n }, [isAdmin, isWarningSymbol]);\n\n useEffect(() => {\n if (order.SubaccountId && (isCancelOrder || action === 'replace')) {\n onSelectSubAccount(order.SubaccountId);\n }\n }, []);\n\n return (\n <>\n

    \n Please review the following order details before {isCancelOrder ? `cancelling` : `sending it for ${actionName}`}\n .\n

    \n {!marketOpen && (\n <>\n

    \n NYSE Market is closed: \n {dayjs()\n .utc(false)\n .isBefore(beforeSomeOptionsCloseTime)\n ? 'Only successfully placed orders, with active trading symbols, will be executable. Otherwise the order will be become live at market open for the next trading session.'\n : 'All successfully placed orders will be saved and become live at market open of the next trading session.'}\n

    \n {order && !order.Price && (\n

    \n Warning: Market orders can only be placed during regular market hours. Please consider a\n limit order.\n

    \n )}\n \n )}\n {!_.isEmpty(subAccounts) && !isCancelOrder && actionName !== 'replacement' ? (\n \n onSelectSubAccount(subAccountId)}\n />\n \n ) : (\n //Cancel order -> prefill with order's subaccount source\n !_.isEmpty(subAccounts) &&\n (isCancelOrder || actionName === 'replacement') && (\n \n \n \n )\n )}\n {order && (\n \n )}\n {isVirtualEnv && (\n

    \n \n Virtual account\n \n

    \n )}\n {isWarningSymbol && !isAdmin && (\n <>\n

    \n Warning: Leveraged, Inverse, and Commodity ETFs carry unique risks and may not be suitable for every\n investor.\n
    \n Learn more\n

    \n \n I understand the risk and would like to place the order\n \n \n )}\n \n );\n};\n","import { BasicDropdown, BasicSelect, CheckboxInput, CheckListInput } from '@tradingblock/components';\nimport { Order, OrderLeg, TradingblockOrder } from '@tradingblock/types';\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { useStateSelector } from '../../../../data/global/dataSelectors';\n\nexport interface AdminCommissionOrderActionsProps {\n order: Order | TradingblockOrder | undefined;\n setOrder: (order: Order | TradingblockOrder) => void;\n setCommissionFilled: React.Dispatch>;\n}\n\nexport default function AdminCommissionOrderActions({\n order,\n setOrder,\n setCommissionFilled,\n}: AdminCommissionOrderActionsProps) {\n\n const userLevel = useStateSelector(s => s.account.profile.current && s.account.profile.current.level);\n const isAdmin = userLevel === 'Admin';\n const [placeAs, setPlaceAs] = useState<'Unsolicited' | 'Solicited' | 'Discretionary' | undefined>(isAdmin ? undefined : 'Unsolicited');\n const [executeAs, setExecuteAs] = useState<'Agent' | 'Principal' | 'Undefined'>('Agent');\n const [commission, setCommission] = useState<'Online' | 'Assisted' | 'Override' | 'Undefined'>('Online');\n const [commissionOverrideCode, setCommissionOverrideCode] = useState();\n const currentUserProfileCommissionCodes = useStateSelector(state =>\n state.account.profile.current ? state.account.profile.current.commissionCodes : undefined\n );\n const commissionCodes = useMemo(() => {\n return currentUserProfileCommissionCodes\n ? Object.entries(currentUserProfileCommissionCodes).map(([commissionLabel, commissionCode]) => ({\n label: commissionLabel,\n value: commissionCode,\n }))\n : undefined;\n }, [currentUserProfileCommissionCodes]);\n const accountId = useStateSelector(s => s.account.accountId);\n\n const handleSetCommissionFilled = useCallback(\n (value: boolean) => {\n setCommissionFilled(value);\n },\n [setCommissionFilled]\n );\n\n useEffect(() => {\n if (order !== undefined) {\n // Make sure all the options are selected before admin can send it\n if (placeAs !== undefined && executeAs !== 'Undefined' && commission !== 'Undefined') {\n // If the user has Override commission, make sure the code is set too before allowing\n // them to place an order.\n if (commission === 'Override' && commissionOverrideCode === undefined) {\n handleSetCommissionFilled(false);\n } else {\n handleSetCommissionFilled(true);\n }\n } else {\n handleSetCommissionFilled(false);\n }\n }\n }, [placeAs, executeAs, commission, commissionOverrideCode]);\n\n useEffect(() => {\n if (order !== undefined) {\n setOrder({\n ...order,\n PlacedAs: placeAs,\n ExecutedAs: executeAs,\n CommissionType: commission,\n CommissionScheduleId: commissionOverrideCode ? commissionOverrideCode.value : undefined,\n });\n }\n }, [])\n\n return (\n
    \n
    \n Placed As:\n {\n if (order !== undefined) {\n setPlaceAs(value);\n setOrder({\n ...order,\n PlacedAs: value as any,\n })\n }\n }}\n type=\"radio\"\n options={[\n {\n value: 'Unsolicited',\n label: 'Unsolicited',\n },\n {\n value: 'Solicited',\n label: 'Solicited',\n },\n {\n value: 'Discretionary',\n label: 'Discretionary',\n },\n ]}\n />\n
    \n
    \n Executed As:\n {\n if (order !== undefined) {\n setExecuteAs(value);\n setOrder({\n ...order,\n ExecutedAs: value as any,\n })\n }\n }}\n type=\"radio\"\n options={[\n {\n value: 'Agent',\n label: 'Agent',\n },\n {\n value: 'Principal',\n label: 'Principal',\n },\n ]}\n />\n
    \n
    \n Commission:\n {\n if (order !== undefined) {\n setCommission(value);\n setOrder({\n ...order,\n CommissionType: value as any,\n })\n }\n }}\n type=\"radio\"\n options={[\n {\n value: 'Online',\n label: 'Online',\n },\n {\n value: 'Assisted',\n label: 'Assisted',\n },\n {\n value: 'Override',\n label: 'Override',\n },\n ]}\n />\n {commission === 'Override' && commissionCodes && (\n \n {\n if (order !== undefined) {\n setCommissionOverrideCode(selectedOption);\n setOrder({\n ...order,\n CommissionScheduleId: selectedOption.value,\n })\n }\n }}\n isSearchable={false}\n />\n
    \n )}\n
    \n \n );\n}\n","import React, { useCallback, useState } from 'react';\nimport { BasicCheckboxInput, OnChangeHandler } from '@tradingblock/components';\nimport { Order, OrderLeg, TradingblockOrder } from '@tradingblock/types';\n\nexport interface AdminBypassMarginProps {\n order: Order | TradingblockOrder | undefined;\n setOrder: (order: Order | TradingblockOrder) => void;\n}\n\nexport default function AdminBypassMargin({ order, setOrder }: AdminBypassMarginProps) {\n const [bypassMargin, setBypassMargin] = useState(false);\n\n const handleBypassMargin = useCallback(\n (event, value) => {\n if (order !== undefined) {\n setBypassMargin(value);\n setOrder({\n ...order,\n BypassMargin: value,\n });\n }\n },\n [bypassMargin, order, setOrder]\n );\n\n return (\n
    \n \n

    CAUTION: IF CHECKBOX BELOW IS SELECTED, THIS ORDER WILL BYPASS MARGIN CHECK PROCEDURE.

    \n
    \n \n Bypass Margin\n \n
    \n );\n}\n","import React, { useState, useCallback, useMemo, useEffect } from 'react';\nimport _ from 'lodash';\nimport { Modal as BootstrapModal } from 'react-bootstrap';\nimport { Order, UserRole } from '@tradingblock/types';\nimport { ContactPhone, Modal } from '@tradingblock/components';\nimport { useDispatcher } from '../../../../data/global/hooks';\nimport { useStateSelector } from '../../../../data/global/dataSelectors';\nimport { account } from '../../../../data/global/selectors/accountSelectors';\nimport { useOrderPreviewOrder } from './useOrderPreview';\nimport { OrderPreviewPopupProps } from './types';\nimport { OrderPreviewActions } from './OrderPreviewActions';\nimport { PreviewPopupContent } from './PreviewPopupContent';\nimport { useQuote } from '../../../../hooks/useFeedQuote';\nimport { useSelector } from 'react-redux';\nimport AdminCommissionOrderActions from './AdminCommissionOrderActions';\nimport AdminBypassMargin from './AdminBypassMargin';\nimport { getOrderStatus } from '@tradingblock/api';\nimport { getOrders } from '../../../../data/global/selectors/orderSelector';\n\nexport interface PreviewResult {\n action: 'order-placed' | 'closed' | 'error';\n error?: any;\n}\n\nexport const OrderPreviewPopupContent: React.FC = ({\n show,\n isCancelOrder,\n previewClosed,\n action: passedAction,\n orderValue,\n ...rest\n}) => {\n const accountOrders = useStateSelector(s => getOrders(s));\n const firstAccountOrder = accountOrders[0];\n const userLevel = useSelector(account.userLevel);\n const userRoles = useSelector(account.userRoles);\n const ableToBypassMargin = userRoles ? userRoles.includes(UserRole.BypassMarginCheck) : false;\n const ableToChangeCommission = userLevel !== 'Account' && userLevel !== 'Undefined' ? true : false;\n const subAccounts = useStateSelector(account.subAccounts);\n\n const [isSaving, setIsSaving] = useState(false);\n const [orderStatusProcessed, setOrderStatusProcessed] = useState(false);\n const [orderFillResponse, setOrderFillResponse] = useState<{\n orderStatus: { status: boolean | string | undefined };\n response: boolean;\n }>({\n orderStatus: {} as any,\n response: false,\n });\n const [originalOrders, setOriginalOrders] = useState(accountOrders);\n const { order, action, isWarningSymbol, onSave, setOrder } = useOrderPreviewOrder(passedAction);\n const { dispatcher } = useDispatcher();\n const [warningNotAccepted, setWarningNotAccepted] = useState(isWarningSymbol);\n\n const [commissionFilled, setCommissionFilled] = useState(ableToChangeCommission ? false : true);\n\n const onSaveOrder = useCallback(() => {\n if (order && action !== 'replace') {\n setIsSaving(true);\n try {\n onSave();\n setIsSaving(false);\n setOrder({\n ...order,\n BypassMargin: undefined,\n CommissionScheduleId: undefined,\n CommissionType: undefined,\n ExecutedAs: undefined,\n PlacedAs: undefined,\n });\n } catch (placeOrderError) {\n previewClosed({ action: 'error', error: placeOrderError });\n setIsSaving(false);\n dispatcher.order.errored(order, placeOrderError as any);\n } finally {\n setOrderStatusProcessed(true);\n }\n } else if (orderValue && action === 'replace') {\n setIsSaving(true);\n try {\n onSave();\n setIsSaving(false);\n setOrder({\n ...orderValue,\n BypassMargin: undefined,\n CommissionScheduleId: undefined,\n CommissionType: undefined,\n ExecutedAs: undefined,\n PlacedAs: undefined,\n });\n } catch (placeOrderError) {\n previewClosed({ action: 'error', error: placeOrderError });\n setIsSaving(false);\n dispatcher.order.errored(orderValue, placeOrderError as any);\n } finally {\n setOrderStatusProcessed(true);\n }\n }\n }, [order, previewClosed, onSave, dispatcher]);\n\n const onClose = useCallback(\n (show: boolean) => {\n return previewClosed({ action: 'closed' });\n },\n [previewClosed]\n );\n\n useEffect(() => {\n const orderStatus = firstAccountOrder && firstAccountOrder.OrderStatus && firstAccountOrder.OrderStatus;\n const objectStatus = typeof orderStatus === 'number' && getOrderStatus(orderStatus);\n if (\n (orderStatusProcessed && accountOrders.length !== originalOrders.length) ||\n (action === 'replace' && accountOrders.length === originalOrders.length)\n ) {\n setOrderFillResponse({ orderStatus: { status: objectStatus && objectStatus.status }, response: true });\n }\n }, [accountOrders, accountOrders.length, orderStatusProcessed]);\n\n const onWarningAccepted = useCallback(() => {\n setWarningNotAccepted(!warningNotAccepted);\n }, [warningNotAccepted, setWarningNotAccepted]);\n\n const saveDisabled = useMemo(() => isSaving || warningNotAccepted === true, [isSaving, warningNotAccepted]);\n\n const orderQuote = useQuote(order && order.UnderlyingSymbol ? order.UnderlyingSymbol : '');\n const orderAssetClass = useMemo(() => {\n if (order && order.UnderlyingSymbol && orderQuote) {\n const { AssetClass } = orderQuote;\n return AssetClass;\n }\n return '';\n }, [order && order.UnderlyingSymbol, orderQuote]);\n\n const isMutualFund: boolean = useMemo(() => {\n if (order && order.UnderlyingSymbol) {\n return order.UnderlyingSymbol.startsWith(':');\n }\n return false;\n }, [order]);\n\n const isBond = useMemo(() => {\n return orderAssetClass === 16 ? true : false;\n }, [orderAssetClass]);\n\n return (\n \n \n {(isCancelOrder ? 'Cancel' : 'Confirm') + ' Order'}\n \n \n \n\n {orderStatusProcessed && orderFillResponse.response && orderFillResponse.orderStatus.status !== false && (\n
    \n Order processed with status {String(orderFillResponse.orderStatus.status).toUpperCase()}.\n
    \n See Activity Block → Orders Tab for more information.\n
    \n )}\n {orderStatusProcessed === true &&\n orderFillResponse.orderStatus.status === false &&\n orderFillResponse.response === true && <>}\n\n {ableToChangeCommission && !isCancelOrder && (\n \n )}\n {ableToBypassMargin && }\n
    \n \n \n \n {isMutualFund && (\n
    \n
    \n Alert!\n

    \n Mutual fund orders are not currently supported by our new dashboard. Please use our Legacy platform for\n the time being. Thank you.\n

    \n
    \n
    \n )}\n {isBond && (\n
    \n
    \n Alert!\n

    \n Bond orders are not currently supported by our new dashboard. Please contact our Trade Desk for the time\n being. Thank you.\n

    \n \n
    \n
    \n )}\n
    \n );\n};\n\nexport const OrderPreviewPopup: React.FC = ({\n isCancelOrder,\n show,\n previewClosed,\n action,\n orderValue,\n}) => {\n const { order } = useOrderPreviewOrder(action);\n return (\n <>\n {order && (\n \n )}\n \n );\n};\n\nexport const orderFillResponseStyle = {\n backgroundColor: 'var(--blue-dark)',\n padding: '20px',\n borderRadius: '5px',\n fontSize: '16px',\n textAlign: 'center',\n margin: '0 auto',\n marginTop: '20px',\n marginBottom: '20px',\n} as object;\n","import React, { useMemo } from 'react';\nimport _ from 'lodash';\nimport createCachedSelector from 're-reselect';\nimport { getProfitLoss, isInfinity } from '@tradingblock/api';\nimport { OrderAction, isCustomStrategy, NumberOrInfinity, Legs } from '@tradingblock/types';\nimport { InfinityIcon, Number } from '@tradingblock/components';\nimport { useOrderData, OrderState, useOrderStrategy } from '../state/OrderState';\nimport { useOrderStatus } from '../data/useOrderStatus';\nimport { useOrderTotal } from '../hooks/useOrderTotal';\nimport { useBlockId } from '../../../components/blocks/BlockState';\n\nconst legAndQuantitySelector = createCachedSelector(\n (s: OrderState, { blockId, price }: { blockId: string; price: number }) => s.legs,\n (s: OrderState) => s.quantity,\n (s: OrderState) => s.action,\n (s: OrderState, { blockId, price }: { blockId: string; price: number }) => price,\n (legs: Legs, quantity: number, action: OrderAction, price: number) => {\n return {\n Legs: _.values(legs),\n Quantity: quantity,\n action,\n price,\n commission: 0,\n };\n }\n)((s: OrderState, { blockId, price }: { blockId: string; price: number }) => `legQuantity${blockId}`);\n\nconst useOrderDataForProfitLoss = () => {\n const { total } = useOrderTotal();\n\n const blockId = useBlockId();\n const orderPartial = useOrderData(s => legAndQuantitySelector(s, { blockId, price: total || 0 }));\n\n return orderPartial;\n};\n\nconst useProfitLoss = () => {\n const orderData = useOrderDataForProfitLoss();\n const strategy = useOrderStrategy();\n const quotes = useOrderData(s => s.quotes);\n const profitloss = useMemo(\n () => (strategy && !isCustomStrategy(strategy) ? getProfitLoss(strategy.info.Name, orderData, quotes) : undefined),\n [strategy, orderData]\n );\n return profitloss;\n};\n\nconst PriceOrInfinity: React.FC<{ value: NumberOrInfinity }> = ({ value }) => {\n return isInfinity(value) ? : ;\n};\n\nexport const ProfitLoss: React.FC<{}> = () => {\n const profitLossValues = useProfitLoss();\n const { complete } = useOrderStatus();\n\n return (\n

    \n {profitLossValues && complete && (\n <>\n \n Max profit: \n {' '}\n \n Max loss: \n \n \n )}\n

    \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport React, { useMemo, useEffect } from 'react';\r\nimport createCachedSelector from 're-reselect';\r\nimport _ from 'lodash';\r\nimport { useWhyDidYouUpdate, BoldNumber, ContactPhone } from '@tradingblock/components';\r\nimport { DebitOrCredit, OrderType, TradingblockOrder } from '@tradingblock/types';\r\nimport { useOrderData, OrderState, useOrderBlockData } from './state/OrderState';\r\nimport { OrderSelectors } from './state/OrderSelector';\r\nimport { useOrderTotal } from './hooks/useOrderTotal';\r\nimport { OrderPreviewPopup } from './components/Preview/PreviewPopup';\r\nimport { ProfitLoss } from './components/ProfitLoss';\r\nimport { useOrderPreview } from './components/Preview/useOrderPreview';\r\nimport { useQuote } from '../../hooks/useFeedQuote';\r\nimport Config from '../../config';\r\nimport { useDashboardSettings } from '../../hooks/useDashboardSettings';\r\n\r\nconst OrderFooterPrice = () => {\r\n const { total, debitCredit, marginCost } = useOrderTotal();\r\n const totalInfo = useMemo(() => {\r\n const isDebit = debitCredit === DebitOrCredit.Debit;\r\n const priceVal = _.isNumber(total) ? Math.abs(total) : total;\r\n return isDebit\r\n ? {\r\n text: 'Est. Debit',\r\n directionClass: 'neg',\r\n price: priceVal,\r\n }\r\n : {\r\n text: 'Est. Credit',\r\n directionClass: 'pos',\r\n price: priceVal,\r\n };\r\n }, [total, debitCredit]);\r\n\r\n return (\r\n <>\r\n \r\n {totalInfo.text}\r\n \r\n \r\n \r\n \r\n \r\n {' Standard Est. Margin'}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst isOrderValidSelector = createCachedSelector(\r\n (s: OrderState, blockId: string) => s.validation.valid,\r\n (s: OrderState, blockId: string) => {\r\n const legs = s.legs;\r\n if (_.isNil(legs) || _.values(legs).length === 0) {\r\n return false;\r\n }\r\n return _.every(legs, ({ OptionType, Strike, Expiration, SpreadRatio }) => {\r\n if (_.isNil(OptionType)) {\r\n return true;\r\n } else {\r\n return _.every([Strike, Expiration, SpreadRatio], v => !_.isNil(v));\r\n }\r\n });\r\n },\r\n (valid, complete) => {\r\n return { valid, complete };\r\n }\r\n)((s: OrderState, blockId: string) => blockId);\r\n\r\nexport const OrderFooter: React.FC<{ symbol: string; noExpirations?: boolean }> = ({ noExpirations }) => {\r\n const {\r\n isPreview,\r\n togglePreview,\r\n previewClosed,\r\n audio: { successAudio, errorAudio },\r\n } = useOrderPreview();\r\n\r\n const message = useOrderData(s => s.validation.message);\r\n const previewEnabled = useOrderData(s => s.preview.enabled);\r\n const tbOrder = useOrderBlockData(OrderSelectors.order);\r\n const tbOrderLegs = useOrderBlockData(OrderSelectors.legs);\r\n const orderQuote = useQuote(tbOrder.UnderlyingSymbol ? tbOrder.UnderlyingSymbol : '');\r\n const { muteAllSounds } = useDashboardSettings();\r\n const orderAssetClass = useMemo(() => {\r\n if (tbOrder.UnderlyingSymbol && orderQuote) {\r\n const { AssetClass } = orderQuote;\r\n return AssetClass;\r\n }\r\n return '';\r\n }, [tbOrder.UnderlyingSymbol, orderQuote]);\r\n const [isPriceValid, setIsPriceValid] = React.useState(false);\r\n\r\n const isMutualFund = useMemo(() => {\r\n return tbOrder && tbOrder.UnderlyingSymbol && tbOrder.UnderlyingSymbol.startsWith(':') && tbOrderLegs.length > 0;\r\n }, [tbOrder]);\r\n\r\n const isBond = useMemo(() => {\r\n return orderAssetClass === 16 && tbOrderLegs.length > 0 ? true : false;\r\n }, [orderAssetClass]);\r\n\r\n useWhyDidYouUpdate('OrderFooter', { message, previewEnabled });\r\n\r\n // need to perform price validation before preview is enabled\r\n // market and market on close orders do not require a price or stop price to be valid\r\n // limit orders require a price to be valid\r\n // stop orders require a stop price to be valid\r\n // stop limit orders require a price and stop price to be valid\r\n\r\n const validatePrice = (order: TradingblockOrder) => {\r\n const { Price, Stop } = order;\r\n if (order.OrderType === OrderType.Market || order.OrderType === OrderType.Market_On_Close) {\r\n return setIsPriceValid(true);\r\n } else if (order.OrderType === OrderType.Limit) {\r\n return setIsPriceValid(_.isNumber(Price));\r\n } else if (order.OrderType === OrderType.Stop_Market) {\r\n return setIsPriceValid(_.isNumber(Stop));\r\n } else if (order.OrderType === OrderType.Stop_Limit) {\r\n return setIsPriceValid(_.isNumber(Price) && _.isNumber(Stop));\r\n } else {\r\n return false;\r\n }\r\n };\r\n\r\n // need to perform validatePrice\r\n // if the order is valid, then enable preview\r\n // if the order is invalid, then disable preview\r\n useEffect(() => {\r\n if (tbOrder) {\r\n validatePrice(tbOrder);\r\n }\r\n }, [tbOrder.Price, tbOrder.Stop, tbOrder.OrderType]);\r\n\r\n return (\r\n <>\r\n {!muteAllSounds && successAudio}\r\n {!muteAllSounds && errorAudio}\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n {isMutualFund && (\r\n
    \r\n Alert!\r\n

    Please use our Legacy platform to place your mutual fund order. Thank you.

    \r\n
    \r\n )}\r\n {isBond && (\r\n
    \r\n Alert!\r\n

    Please contact our Trade Desk to place your bond order. Thank you.

    \r\n \r\n
    \r\n )}\r\n \r\n Preview \r\n \r\n
    \r\n {isPreview && }\r\n \r\n );\r\n};\r\n","import React, { useMemo, useEffect, useCallback } from 'react';\n// import useThrottle from 'react-use/lib/useThrottle';\nimport _ from 'lodash';\nimport createCachedSelector from 're-reselect';\nimport useMount from 'react-use/lib/useMount';\nimport { BlockBody, Loading, EmptyBlockContent, useWhyDidYouUpdate } from '@tradingblock/components';\nimport { AssetType, BlockType } from '@tradingblock/types';\nimport { orderLegOccSymbol } from '@tradingblock/api';\nimport { OrderState } from './state/OrderState';\nimport { useOrderState } from './state/useOrderState';\nimport { OrderBlockSettingsFields } from './state/OrderSettings';\nimport { orderBlockSymbols } from './data/orderSelectors';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { useQuoteSymbolSubscription } from '../../hooks/useQuoteData';\nimport { useOrderBlockGroupHandler } from './hooks/useOrderBlockGroupHandler';\nimport { useOrderSettings } from './hooks/useOrderSettings';\nimport { Block } from '../../components/blocks/Block';\nimport { useBlockId } from '../../components/blocks/BlockState';\nimport { OrderHeaderMemo } from './OrderHeader';\nimport { OrderContent } from './OrderContent';\nimport { OrderFooter } from './OrderFooter';\nimport { getBlockProps } from '../../utilities/block';\nimport { useGroupState } from '../useGroupState';\n\nconst useOrderQuoteSymbolSubscription = () => {\n const blockId = useBlockId();\n useQuoteSymbolSubscription(s => orderBlockSymbols(s, blockId));\n};\n\nconst Content: React.FC<{}> = () => {\n const [assetSymbol] = useGroupState('symbol');\n const isLoaded = useOrderState('isLoaded');\n const legs = useOrderState('legs');\n useOrderBlockGroupHandler();\n useOrderQuoteSymbolSubscription();\n useWhyDidYouUpdate('OrderContent', { isLoaded, assetSymbol });\n\n const hasOptionLegs = useMemo(() => {\n return _.some(legs, leg => leg.AssetType === AssetType.Option);\n }, [legs]);\n\n const [noExpirations, setNoExpirations] = React.useState(false);\n\n useEffect(() => {\n if (!hasOptionLegs) {\n setNoExpirations(false);\n }\n }, [hasOptionLegs]);\n\n return (\n <>\n \n {assetSymbol ? (\n <>\n \n \n ) : (\n {isLoaded ? 'Enter symbol above.' : }\n )}\n \n \n \n );\n};\n\nexport const OrderBlock: React.FC<{}> = () => {\n const settings = useOrderSettings();\n const { dispatcher } = useDispatcher();\n const [initialLogin, setInitialLogin] = React.useState(true);\n\n useEffect(() => {\n if (initialLogin) {\n settings.weeklyExpirations = true;\n settings.monthlyExpirations = true;\n settings.quarterlyExpirations = true;\n settings.yearlyExpirations = true;\n setInitialLogin(false);\n }\n }, []);\n\n useMount(() => dispatcher.data.positions.request());\n const blockprops = useMemo(() => getBlockProps(BlockType.Order, ), []);\n return (\n \n \n \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport { useEffect } from 'react';\nimport { useWhyDidYouUpdate } from '@tradingblock/components';\nimport { useOrderActions } from '../state/useOrderActions';\nimport { OrderActions } from '../state/OrderActions';\nimport { useBlockGroupField, useBlockGroupInfo } from '../../useGroupState';\nimport { GroupManager } from '../../../context/GroupManager';\nimport { useBlockActionDispatch } from '../../../components/blocks/BlockState';\nimport { GenericBlockActionTypes } from '../../../components/blocks/state/BlockState';\n\nexport const useOrderBlockGroupHandler = () => {\n const { blockId, groupId } = useBlockGroupInfo();\n const { setSymbol, handleOrderGroupChange } = useOrderActions();\n const dispatch = useBlockActionDispatch>();\n const symbolValue = useBlockGroupField('symbol');\n\n useEffect(() => {\n if (groupId) {\n GroupManager.attach({ blockId, groupId, dispatch }, true);\n setSymbol(symbolValue, true, { persist: false });\n }\n\n return () => {\n GroupManager.detach(blockId);\n };\n }, [groupId]);\n // const onOrderChange = useCallback(\n // (order: BlockGroupOrderInfo | undefined, groupId?: string) => {\n // // try to add new order leg with custom strategy\n // const symb = symbolValue;\n // if (symb === undefined) {\n // console.warn('ignoreing order group change because symbol is undefined');\n // return;\n // }\n // if (order && orderGroupId === groupId) {\n // //const symb = order.symbol || symbolValue;\n // handleOrderGroupChange(symb, { ...order, strategy: order.strategy || { info: { Name: 'Custom' } } });\n // }\n // setOrderGroupId(groupId);\n // },\n // [symbolValue]\n // );\n // const onGroupIdChange = useCallback(\n // (val?: string, groupId?: string) => {\n // if (orderGroupId !== groupId) {\n // GroupManager.detach(blockId);\n // }\n\n // GroupManager.attach({ blockId, groupId: val || groupId || orderGroupId, dispatch }, true);\n // setOrderGroupId(groupId);\n // console.log('setting symbol to', symbolValue);\n // setSymbol(symbolValue, false);\n // },\n // [symbolValue]\n // );\n useWhyDidYouUpdate('useOrderBlockGroupHandler', { setSymbol, handleOrderGroupChange, symbolValue });\n //useGroupStateHandler('symbol', onSymbolChange, { fireOnGroupChange: true, fireOnUndefined: true });\n // useGroupStateHandler('order', onOrderChange, { fireOnGroupChange: false });\n //useGroupStateHandler('groupId', onGroupIdChange, { fireOnGroupChange: false });\n};\n","import { useContext, useMemo } from 'react';\nimport _ from 'lodash';\nimport { BlockStateContext } from './BlockState';\n\nexport function useActiveBlockTab() {\n const { tabs } = useContext(BlockStateContext);\n const res = useMemo(() => {\n if (tabs === undefined) {\n return {\n title: \"Trades\",\n active: true,\n }\n }\n const active = _.find(tabs || [], t => t.active === true);\n return active ? active : undefined;\n }, [tabs]);\n return res;\n}\n","import React from 'react';\nimport { OrderStatusToString } from './util';\n\nexport const ActivityOrderStatusWrapper: React.FunctionComponent<{ status?: number }> = ({ status, children }) => {\n return (\n <>\n
    {children}
    \n \n );\n};\n","import {\r\n OrderStatusToString,\r\n isFilledOrderStatus,\r\n isPartialOrderStatus,\r\n getFilledQuantity,\r\n ActivityStatusMessage,\r\n isPartiallyCancelledOrderStatus,\r\n} from '../../util';\r\nimport React, { FC } from 'react';\r\nimport { OrderActivity, OrderLeg, OrderStatus } from '@tradingblock/types';\r\nimport { ActivityOrderStatusWrapper } from '../../ActivityOrderStatusWrapper';\r\nimport { isErrorActivity } from '../../../../utilities/activity';\r\nimport _ from 'lodash';\r\nimport { orderstate } from '../../../Order/state/transforms/orderStateTransforms';\r\n\r\nconst getLegFilledTotal = (l: OrderLeg, orderQuantity: number, orderStatus: number | undefined) => {\r\n const filledStatus = isFilledOrderStatus(orderStatus);\r\n const { SpreadRatio } = l;\r\n if (filledStatus) {\r\n return orderQuantity * (SpreadRatio || 1);\r\n }\r\n return l.LegFillQuantity || 0;\r\n};\r\n\r\nconst OrderLegsStatus: FC<{ legs: OrderLeg[]; orderQuantity: number; orderStatus: number | undefined }> = ({\r\n legs,\r\n orderQuantity,\r\n orderStatus,\r\n}) => {\r\n const maxInd = _.size(legs) - 1;\r\n return (\r\n <>\r\n {_.map(legs, (l, ind) => {\r\n const filledQuantity = getLegFilledTotal(l, orderQuantity, orderStatus);\r\n const totalQuantity = (l.SpreadRatio || 1) * orderQuantity;\r\n return (\r\n
    \r\n {`${filledQuantity} / ${totalQuantity}`}\r\n {maxInd > ind &&
    }\r\n
    \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nexport const OrderActivityStatus: FC<{ activity: OrderActivity }> = ({ activity }) => {\r\n const { OrderStatus, Legs, Quantity } = activity;\r\n const status = OrderStatusToString(OrderStatus);\r\n const filledStatus = isFilledOrderStatus(OrderStatus);\r\n const partialStatus = isPartialOrderStatus(OrderStatus);\r\n const partiallyCancelledStatus = isPartiallyCancelledOrderStatus(OrderStatus);\r\n let statusClass = undefined;\r\n const statusMore = ActivityStatusMessage(activity);\r\n let statusValue = status;\r\n if (filledStatus) {\r\n statusClass = 'pos';\r\n } else if (partialStatus || partiallyCancelledStatus) {\r\n statusClass = 'pending';\r\n } else if (isErrorActivity(activity)) {\r\n statusValue = 'Error';\r\n statusClass = 'neg';\r\n }\r\n\r\n const showLegStatus = isErrorActivity(activity) === true ? false : true;\r\n const showLegMore = showLegStatus || statusMore;\r\n return (\r\n \r\n {statusValue}\r\n {showLegMore && (\r\n <>\r\n
    \r\n {(filledStatus || partialStatus) && (\r\n \r\n )}\r\n {!filledStatus && !partialStatus && statusMore && <>{statusMore}}\r\n \r\n )}\r\n\r\n {/* {statusMore && <>{statusMore}} */}\r\n
    \r\n );\r\n};\r\n","import createCachedSelector from 're-reselect';\nimport dayjs from 'dayjs';\nimport { ActivityState } from './ActivityState';\nimport { ActivityTimeframes } from '@tradingblock/types';\nimport _ from 'lodash';\n\nexport const TimeframePresetValues = (startOfToday: dayjs.Dayjs, endOfToday: dayjs.Dayjs) => {\n const today = {\n text: 'Today',\n timeframeKey: ActivityTimeframes.Today,\n start: startOfToday,\n end: endOfToday,\n };\n return {\n today,\n all: [\n today,\n {\n text: 'Week',\n timeframeKey: ActivityTimeframes.Week,\n start: dayjs(startOfToday).subtract(1, 'week'),\n end: endOfToday,\n },\n {\n text: 'Month',\n timeframeKey: ActivityTimeframes.Month,\n start: dayjs(startOfToday).subtract(1, 'month'),\n end: endOfToday,\n },\n {\n text: 'Year',\n timeframeKey: ActivityTimeframes.Year,\n start: dayjs(startOfToday).subtract(1, 'year'),\n end: endOfToday,\n },\n {\n text: '3y',\n timeframeKey: ActivityTimeframes['Three Years'],\n start: dayjs(startOfToday).subtract(3, 'year'),\n end: endOfToday,\n },\n ],\n };\n};\n\nexport const ActivityTimeFrameSelector = createCachedSelector(\n ({ startDate, endDate }: ActivityState, blockId: string, defaultTimeframe: ActivityTimeframes | undefined) => ({\n defaultTimeframe,\n startDate,\n endDate,\n }),\n ({ startDate, endDate, defaultTimeframe }) => {\n const startOfToday = dayjs().startOf('day');\n const endOfToday = dayjs().endOf('day');\n const { all, today } = TimeframePresetValues(startOfToday, endOfToday);\n\n const presetValue = defaultTimeframe ? all.find(tp => tp.timeframeKey === defaultTimeframe) : undefined;\n if (_.isNil(startDate) && _.isNil(endDate)) {\n if (_.isNil(presetValue)) {\n return {\n startDate: today.start ? today.start.toDate() : undefined,\n endDate: today.end ? today.end.toDate() : undefined,\n };\n }\n return {\n startDate: presetValue.start ? presetValue.start.toDate() : undefined,\n endDate: presetValue.end ? presetValue.end.toDate() : undefined,\n };\n }\n\n return { startDate, endDate };\n }\n)((state, blockId) => blockId);\n","import { SettingsFields } from '../../components/form/GenericField';\nimport { ActivitySettings, ActivityTimeframes } from '@tradingblock/types';\nimport { useBlockId } from '../../components/blocks/BlockState';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { blockSettings } from '../../data/global/selectors/settingSelectors';\nimport _ from 'lodash';\n\nexport const ActivitySettingsFields: SettingsFields = {\n timeframe: {\n type: 'choice',\n values: _.map(\n [\n ActivityTimeframes.Today,\n ActivityTimeframes.Week,\n ActivityTimeframes.Month,\n ActivityTimeframes.Year,\n ActivityTimeframes['Three Years'],\n ],\n tf => {\n return {\n value: tf,\n label: ActivityTimeframes[tf],\n };\n }\n ),\n },\n};\n\nexport const useActivitySettings = () => {\n // const settings = useBlockSettings();\n //return settingsWithDefaults;\n const blockId = useBlockId();\n const current = useStateSelector(s => blockSettings.activity(s, blockId));\n return {\n current: current,\n definitions: ActivitySettingsFields,\n };\n};\n\nexport const useActivitySettingsValue = (): ActivitySettings => {\n // const settings = useBlockSettings();\n //return settingsWithDefaults;\n const { current } = useActivitySettings();\n return current || { timeframe: undefined, workingOrdersOnly: false };\n};\n\nexport const useActivityBlockData = () => {\n const blockId = useBlockId();\n const blockState = useStateSelector(s => s.account.ordersUIState[blockId]);\n if (!blockState) {\n return { pageSize: 50, pageIndex: 0, total: 0 };\n }\n return {\n pageSize: blockState.pageSize || 50,\n pageIndex: blockState.pageIndex || 0,\n total: blockState.total,\n };\n};\n","import dayjs from 'dayjs';\nimport { useMemo } from 'react';\nimport { TimeframePresetValues, ActivityTimeFrameSelector } from '../state/ActivitySelector';\nimport { useActivitySettingsValue } from '../useActivitySettings';\nimport { useActivityDataSelector } from '../state/ActivityState';\nimport { useBlockId } from '../../../components/blocks/BlockState';\n\nexport const useActivityTimeframes = () => {\n const startOfToday = dayjs().startOf('day');\n const endOfToday = dayjs().endOf('day');\n const { all, today } = useMemo(() => {\n return TimeframePresetValues(startOfToday, endOfToday);\n }, [startOfToday, endOfToday]);\n return { presets: all };\n};\n\nexport const useActivityTimeframeValues = () => {\n const blockId = useBlockId();\n const { timeframe } = useActivitySettingsValue();\n const { startDate, endDate } = useActivityDataSelector(s => ActivityTimeFrameSelector(s, blockId, timeframe));\n // Bad hack to memoize the date strings so that the datepicker doesn't re-render on every date reference change, even if same date\n const startDateString = useMemo(() => (startDate instanceof Date ? startDate.toISOString() : new Date()), [startDate]);\n const endDateString = useMemo(() => (endDate instanceof Date ? endDate.toISOString() : new Date()), [endDate]);\n\n const memoStart = useMemo(() => startDate, [startDateString]);\n const memoEnd = useMemo(() => endDate, [endDateString]);\n return { startDate: memoStart, endDate: memoEnd };\n};\n","import { OutputSelector, createSelector } from 'reselect';\nimport _ from 'lodash';\nimport { HistoryItem, IBlockDataState, Order } from '@tradingblock/types';\nimport { useBlockData } from '../../../components/blocks/BlockState';\nimport { WithTables } from '../../../components/blocks/state/blockTable/BlockTableState';\n\nexport interface ActivityState extends WithTables {\n startDate?: Date;\n endDate?: Date;\n history?: HistoryItem[];\n order?: Order[];\n}\n\nexport const InitialState: ActivityState = {\n startDate: undefined,\n endDate: undefined,\n isDirty: false,\n tables: {},\n};\ntype Selector = OutputSelector T>;\ntype Transform = (res: ActivityState) => T;\nexport function useActivityData(selector: Selector | Transform, defaultVal?: T) {\n const data = useBlockData();\n const res = selector(data);\n return defaultVal && _.isNil(res) ? defaultVal : res;\n}\nexport function useActivityDataSelector(selector: (res: ActivityState) => T, defaultVal?: T) {\n const data = useBlockData();\n const select = createSelector(\n (s: ActivityState) => s,\n selector\n );\n const res = select(data);\n return defaultVal && _.isNil(res) ? defaultVal : res;\n}\n","import React from 'react';\nimport { isToday } from '@tradingblock/api';\nimport { BoldNumber, ResponsiveTd } from '@tradingblock/components';\nimport { Order, OrderStatuses } from '@tradingblock/types';\nimport dayjs from 'dayjs';\nimport _ from 'lodash';\nimport useDeepCompareEffect from 'react-use/lib/useDeepCompareEffect';\nimport useSWR from 'swr';\nimport { useApi } from '../../../context/Api';\nimport { accountIdSelector, subAccountIdSelector, useStateSelector } from '../../../data/global/dataSelectors';\nimport { getSpecificOrderMessages } from '../../../data/global/selectors/orderSelector';\nimport { OrderStatusToString } from '../util';\nimport { useSelector } from 'react-redux';\nimport { account } from '../../../data/global/selectors/accountSelectors';\n\nexport interface ActivityOrderEventsSubRowProps {\n row: Order;\n}\n\nexport default function ActivityOrderEventsSubRow({ row }: ActivityOrderEventsSubRowProps) {\n const api = useApi();\n const accountId = useStateSelector(accountIdSelector);\n const subaccountId = useStateSelector(subAccountIdSelector);\n const messages = useStateSelector(getSpecificOrderMessages(row.OrderId));\n const hasSubAccounts = useSelector(account.hasSubAccounts);\n\n const { data, error, mutate } = useSWR(\n {\n accountId: accountId,\n subaccountId: subaccountId,\n orderId: row.OrderId,\n includeOrderEvents: true,\n },\n api.order(accountId, subaccountId).get\n );\n\n useDeepCompareEffect(() => {\n //TODO: Remove this deep compare effect, since we really should not have to use it.\n mutate();\n }, [messages]);\n\n // Loading data\n if (!error && !data) {\n return (\n \n Loading...\n \n );\n }\n\n if (error) {\n return (\n \n Error...\n \n );\n }\n\n const sortedOrderEvents =\n data && data.payload && data.payload.items[0] && data.payload.items[0].OrderEvents\n ? _.sortBy(data.payload.items[0].OrderEvents, 'TimeStamp').reverse()\n : [];\n\n if (sortedOrderEvents.length === 0) {\n return (\n \n No events found.\n \n );\n }\n\n return (\n <>\n {sortedOrderEvents.map((orderEvent, i) => {\n return (\n \n \n {orderEvent.Description === 'Stock' || orderEvent.Description === 'Multileg'\n ? `${orderEvent.Symbol} ${orderEvent.Description}`\n : orderEvent.Description\n ? orderEvent.Description\n : orderEvent.Symbol}\n \n {row.OrderId}\n {hasSubAccounts && }\n \n {OrderStatusToString((orderEvent.OrderStatus as unknown) as number)}\n \n \n \n \n \n {orderEvent.OrderStatus === OrderStatuses.Filled && }\n \n \n \n {(orderEvent.OrderStatus === OrderStatuses.PartiallyFilled ||\n orderEvent.OrderStatus === OrderStatuses.Filled) && (\n <>\n
    \n {orderEvent.OrderStatus === OrderStatuses.PartiallyFilled ? 'Partial Fill' : 'Filled'}\n
    \n {orderEvent.FillQuantity}\n \n )}\n
    \n \n {dayjs(orderEvent.TimeStamp).format(\n isToday(orderEvent.TimeStamp) ? 'h:mm:ss.SSS A' : 'MM/DD/YY h:mm:ss.SSS A'\n )}\n \n \n \n );\n })}\n \n );\n}\n","/* eslint-disable react/display-name */\r\nimport React, { useMemo, useCallback, useEffect, Dispatch, SetStateAction, useState } from 'react';\r\nimport _ from 'lodash';\r\nimport dayjs from 'dayjs';\r\nimport { Row, Cell } from 'react-table';\r\nimport {\r\n BoldNumber,\r\n CellWithExpandedToggleProps,\r\n Column,\r\n EmptyBlockContent,\r\n FrozenHeaderTable,\r\n Loading,\r\n useTableColumnWidths,\r\n} from '@tradingblock/components';\r\nimport { OrderLeg, Order, AssetType, OrderStatuses, OrderActivity, SizeType } from '@tradingblock/types';\r\nimport {\r\n toAssetSymbol,\r\n AssetTypeToSymbolType,\r\n OrderStatusCategories,\r\n getLocalDateFromTimezone,\r\n} from '@tradingblock/api';\r\nimport { useBlockId } from '../../../components/blocks/BlockState';\r\nimport { useStateSelector } from '../../../data/global/dataSelectors';\r\nimport { areOrdersLoaded, getOrdersByBlockId } from '../../../data/global/selectors/orderSelector';\r\nimport { isBetween, isMarketOpen, isToday, TimeTillClose } from '../../../utilities/date';\r\nimport {\r\n OrderStatusToString,\r\n detailFormattor,\r\n isCancelledOrderStatus,\r\n isNewOrPartialOrderStatus,\r\n isFilledOrderStatus,\r\n formatOrderLeg,\r\n formatOrderPrice,\r\n} from '../util';\r\nimport { ActivityOrderStatusWrapper } from '../ActivityOrderStatusWrapper';\r\nimport { useActiveBlockTab } from '../../../components/blocks/BlockAccessors';\r\nimport { useDispatcher } from '../../../data/global/hooks';\r\nimport {\r\n CancelOrderButton,\r\n ReplaceOrderButton,\r\n OrderActionButton,\r\n} from '../../../components/blocks/actions/OrderActionButtons';\r\nimport { useBlockGroupInfo } from '../../useGroupState';\r\nimport { useOrderCopyAction } from '../../../components/blocks/hooks/useOrderBlock';\r\nimport { OrderActivityStatus } from './orders/OrderActivityStatus';\r\nimport { useActivityTimeframeValues } from '../data/useActivityTimeframe';\r\nimport { PositionDropdown } from '../../Positions/components/PositionDropdown';\r\nimport ActivityOrderEventsSubRow from './ActivityOrderEventsSubRow';\r\nimport { useActivityBlockData } from '../useActivitySettings';\r\nimport { Actions } from '../../../data/global/actions';\r\nimport { calculateEstCommission } from '../../Order/components/Preview/EstCommissionPreview';\r\nimport { account } from '../../../data/global/selectors/accountSelectors';\r\nimport { useSelector } from 'react-redux';\r\n\r\nexport const ActivityOrdersTable: React.FC<{\r\n tabType: 'orders' | 'trades';\r\n onReplace: (order: Order) => void;\r\n onCancelOrder: (order: Order) => void;\r\n setWorkingOrders: Dispatch>;\r\n isWorkingOrdersOnly: boolean;\r\n}> = ({ tabType, onReplace, onCancelOrder, isWorkingOrdersOnly, setWorkingOrders }) => {\r\n const { groupId } = useBlockGroupInfo();\r\n const blockId = useBlockId();\r\n\r\n // Get the start and endDate\r\n const { startDate, endDate } = useActivityTimeframeValues();\r\n // get the orders\r\n const orderHistory = useStateSelector(getOrdersByBlockId(blockId));\r\n const accountNumber = useStateSelector(state => state.account.accountNumber);\r\n const tab = useActiveBlockTab();\r\n const subAccounts = useStateSelector(account.subAccounts);\r\n const shouldBeHighlighted = (row: Row>): string => {\r\n return isNewOrPartialOrderStatus(row.original.OrderStatus) ? 'row-link' : '';\r\n };\r\n useEffect(() => {\r\n if (tabType) setWorkingOrders(false);\r\n return () => {\r\n setWorkingOrders(false);\r\n };\r\n }, [tabType, setWorkingOrders]);\r\n\r\n const isLoaded = useStateSelector(areOrdersLoaded);\r\n const timeFilteredMessages = useMemo(() => {\r\n return _.filter(orderHistory, (n: OrderActivity) => {\r\n if (\r\n isWorkingOrdersOnly ||\r\n (startDate as Date) === (endDate as Date) ||\r\n startDate === undefined ||\r\n endDate === undefined\r\n ) {\r\n return true;\r\n }\r\n return isBetween(n.Date, startDate, endDate);\r\n })\r\n .map(d => ({ ...d, display: { trClass: '' } }))\r\n .sort((a, b) => dayjs(b.Date).valueOf() - dayjs(a.Date).valueOf());\r\n // add display options to each row of data\r\n }, [endDate, orderHistory, startDate, isWorkingOrdersOnly, tabType]);\r\n\r\n const data = useMemo(() => {\r\n let latestOrderStates = _.uniqBy(timeFilteredMessages, v => v.OrderId);\r\n const filteredOrderStates = _.filter(latestOrderStates, (n: OrderActivity) => {\r\n return tabType === 'trades'\r\n ? isFilledOrderStatus(n.OrderStatus)\r\n : tabType === 'orders'\r\n ? latestOrderStates\r\n : isFilledOrderStatus(n.OrderStatus);\r\n });\r\n return filteredOrderStates;\r\n }, [startDate, endDate, timeFilteredMessages, tab]);\r\n\r\n const commissionDetails = useStateSelector(s =>\r\n s.account.accountDetails ? s.account.accountDetails.commissions : undefined\r\n );\r\n const { pageSize, pageIndex, total } = useActivityBlockData();\r\n const isFetchingBlockOrders = useStateSelector(\r\n s => s.account.ordersUIState[blockId] && s.account.ordersUIState[blockId].isFetching\r\n );\r\n const { dispatch } = useDispatcher();\r\n const hasSubAccounts = useSelector(account.hasSubAccounts);\r\n const initialState = useMemo(() => {\r\n const numPages = Math.ceil((total || 0) / pageSize);\r\n // check if the current pageIndex is out of bounds\r\n // current implementation does not track timeframe/tab for persistence\r\n // so we need to reset the tableState to default values in order to prevent an errored state\r\n const isPageIndexOutOfBounds = pageIndex > numPages - 1;\r\n if (isPageIndexOutOfBounds) {\r\n return {\r\n pageSize: 50,\r\n pageIndex: 0,\r\n sortBy: [],\r\n columnOrder: [],\r\n };\r\n }\r\n return {\r\n pageSize: _.isUndefined(pageSize) ? 50 : pageSize,\r\n pageIndex: pageIndex || 0,\r\n sortBy: [],\r\n columnOrder: [],\r\n };\r\n }, [pageSize, pageIndex, total]);\r\n\r\n const pageCount = useMemo(() => {\r\n if (pageSize) {\r\n return _.ceil((total || 0) / pageSize) === 0 ? 1 : _.ceil((total || 0) / pageSize);\r\n }\r\n return 0;\r\n }, [total, pageSize]);\r\n\r\n const onPage = useCallback((pageIndex: number) => {\r\n dispatch(Actions.setOrdersRequestPageIndex({ pageIndex, blockId }));\r\n }, []);\r\n\r\n const onPageSize = useCallback((pageSize: number) => {\r\n dispatch(Actions.setOrdersRequestPageSize({ pageSize, blockId }));\r\n }, []);\r\n\r\n const [tableStateColumnOrder, setTableStateColumnOrder] = useState([]);\r\n\r\n const renderSubRow = useCallback(\r\n (row, tableOptions: { size: SizeType }) => {\r\n return ;\r\n },\r\n [tableStateColumnOrder, isFetchingBlockOrders]\r\n );\r\n\r\n const getRowKey = useCallback((ord: Order) => {\r\n return _.toString(ord.OrderId || ord.ClientRefId || 'order');\r\n }, []);\r\n\r\n const getColumnOrder = useCallback(\r\n (columnOrder: string[]) => {\r\n setTableStateColumnOrder(columnOrder);\r\n },\r\n [setTableStateColumnOrder]\r\n );\r\n\r\n const columns = useMemo(\r\n () => [\r\n {\r\n Header: 'Symbol',\r\n accessor: (a: Order) => {\r\n return (a.UnderlyingSymbol as string).toString();\r\n },\r\n display: ({ row }: Cell) =>\r\n (isCancelledOrderStatus(row.original.OrderStatus) ? 'mute' : '') + ' ' + shouldBeHighlighted(row),\r\n canSort: true,\r\n sortType: 'alphanumeric',\r\n id: 'expander',\r\n width: 1.5,\r\n Cell: ({ row }: CellWithExpandedToggleProps) => {\r\n return (\r\n \r\n {row.original.UnderlyingSymbol}\r\n \r\n );\r\n },\r\n },\r\n {\r\n Header: 'Order ID',\r\n id: 'OrderID',\r\n canSort: false,\r\n accessor: (a: string) => {\r\n return a;\r\n },\r\n Cell: ({ row }: Cell) => <>{row.original.OrderId},\r\n },\r\n {\r\n Header: 'Subaccount ID',\r\n canSort: true,\r\n sortType: 'alphanumeric',\r\n hide: !hasSubAccounts,\r\n accessor: (a: Order) => {\r\n return a.SubaccountId;\r\n },\r\n id: 'Subaccount ID',\r\n Cell: ({ row }: Cell) => {\r\n const subId = row.original.SubaccountId;\r\n if (subId && subAccounts) {\r\n const account = subAccounts.find(object => object['Id'] === subId && object['Nickname']);\r\n return <>{account ? account.Nickname : subId};\r\n }\r\n return null;\r\n },\r\n },\r\n {\r\n Header: 'Order Details',\r\n width: 3,\r\n canSort: false,\r\n accessor: (a: string) => {\r\n return a;\r\n },\r\n display: ({ row }: Cell) =>\r\n (isCancelledOrderStatus(row.original.OrderStatus) ? 'mute' : '') + ' ' + shouldBeHighlighted(row),\r\n id: 'details',\r\n Cell: ({ row }: Cell): JSX.Element[] => {\r\n const { Legs, OrderStatus, UnderlyingSymbol, activityDate } = row.original;\r\n const marketOpen = isMarketOpen();\r\n const utcReceivedHours = dayjs.utc(activityDate).hour();\r\n const timeTillCloseHours = TimeTillClose().hour();\r\n const isAfterHours =\r\n !marketOpen && utcReceivedHours >= timeTillCloseHours && row.original.OrderStatus === OrderStatuses.New;\r\n if (UnderlyingSymbol === undefined) {\r\n return [<>No underlying symbol];\r\n }\r\n return Legs.map((val, index) => {\r\n return (\r\n \r\n \r\n {formatOrderLeg(val, detailFormattor(val, UnderlyingSymbol), row.original)}\r\n
    \r\n {isAfterHours && (\r\n \r\n Market Closed: Queued for Next Trading Session\r\n \r\n )}\r\n
    \r\n
    \r\n );\r\n });\r\n },\r\n },\r\n\r\n {\r\n Header: 'Order price',\r\n canSort: true,\r\n sortType: 'alphanumeric',\r\n accessor: (a: string) => {\r\n return a;\r\n },\r\n display: ({ row }: Cell) =>\r\n (isCancelledOrderStatus(row.original.OrderStatus) ? 'mute' : '') + ' ' + shouldBeHighlighted(row),\r\n id: 'order-price',\r\n width: 2.0,\r\n Cell: ({ row }: Cell) => {\r\n const { OrderStatus, UnderlyingSymbol } = row.original;\r\n if (UnderlyingSymbol === undefined) {\r\n return <>No underlying symbol;\r\n }\r\n return (\r\n \r\n {formatOrderPrice(row.original)}\r\n \r\n );\r\n },\r\n },\r\n {\r\n Header: 'Fill Price',\r\n accessor: (a: Order) => {\r\n return a.AverageFillPrice ? a.AverageFillPrice : 0;\r\n },\r\n display: ({ row }: Cell) =>\r\n (isCancelledOrderStatus(row.original.OrderStatus) ? 'mute' : '') + ' ' + shouldBeHighlighted(row),\r\n canSort: true,\r\n sortType: 'alphanumeric',\r\n id: 'fill-price',\r\n Cell: ({ row }: Cell) => {\r\n const { OrderStatus } = row.original;\r\n\r\n return (\r\n \r\n {OrderStatus && [OrderStatuses.Filled].includes(OrderStatus) && row.original.AverageFillPrice && (\r\n \r\n )}\r\n \r\n );\r\n },\r\n },\r\n {\r\n Header: 'Est. Commission',\r\n canSort: false,\r\n id: 'estCommission',\r\n Cell: ({ row }: Cell) => {\r\n const order = row.original;\r\n let commission: number | undefined = undefined;\r\n\r\n if (commissionDetails && order) {\r\n let orderAssetQuantities = order.Legs.map(l => ({\r\n assetType: l.AssetType,\r\n quantity: l.LegFillQuantity ? l.LegFillQuantity : 0,\r\n }));\r\n let estCommission = calculateEstCommission(orderAssetQuantities, commissionDetails);\r\n commission = estCommission ? estCommission : 0;\r\n }\r\n if (commission === undefined) {\r\n console.warn('There was an issue calculating commission for the position in the activities block');\r\n }\r\n return ;\r\n },\r\n },\r\n {\r\n Header: 'Status',\r\n accessor: (a: Order) => OrderStatusToString(a.OrderStatus),\r\n display: ({ row }: Cell) =>\r\n (isCancelledOrderStatus(row.original.OrderStatus) ? 'mute' : '') + ' ' + shouldBeHighlighted(row),\r\n canSort: true,\r\n sortType: 'basic',\r\n id: 'status',\r\n Cell: ({ row }: Cell) => {\r\n return ;\r\n },\r\n },\r\n {\r\n Header: 'Updated on',\r\n width: 1.5,\r\n accessor: (a: Order) => {\r\n if (a.Date === undefined) return undefined;\r\n return getLocalDateFromTimezone(new Date(a.Date)).format('MM/DD/YY h:mm:ss.SSS A');\r\n },\r\n display: ({ row }: Cell) =>\r\n (isCancelledOrderStatus(row.original.OrderStatus) ? 'mute' : '') + ' ' + shouldBeHighlighted(row),\r\n canSort: true,\r\n sortDescFirst: true,\r\n sortInverted: true,\r\n id: 'updated_on',\r\n Cell: ({ row }: Cell) => {\r\n const orderDate = row.original.Date;\r\n if (orderDate) {\r\n return (\r\n \r\n {dayjs(orderDate).format(isToday(orderDate) ? 'h:mm:ss.SSS A' : 'MM/DD/YY h:mm:ss.SSS A')}\r\n \r\n );\r\n }\r\n return '';\r\n },\r\n sortType: 'basic',\r\n },\r\n {\r\n Header: 'Actions',\r\n width: 1.5,\r\n accessor: (a: Order) => a,\r\n id: 'actions',\r\n Cell: ({ row }: Cell) => {\r\n const { UnderlyingSymbol, OrderStatus, Legs } = row.original;\r\n const underSymb = UnderlyingSymbol || '';\r\n const assSymbol = toAssetSymbol(underSymb, AssetType.Equity, AssetTypeToSymbolType(AssetType.Equity), {\r\n name: underSymb,\r\n underlyingSymbol: underSymb,\r\n rootSymbol: underSymb,\r\n });\r\n const leg = _.map(Legs, l => ({ ...l }));\r\n const handleTradeOrder = useOrderCopyAction(\r\n { ...row.original, Legs: leg },\r\n assSymbol,\r\n { groupId },\r\n undefined,\r\n undefined,\r\n true\r\n );\r\n const isFilledOrCancelled = isCancelledOrderStatus(OrderStatus) || isFilledOrderStatus(OrderStatus);\r\n const isOpen = _.includes(OrderStatusCategories.Open, OrderStatus);\r\n let dateExtract;\r\n\r\n if (\r\n isLoaded &&\r\n row &&\r\n row.original &&\r\n row.original.Legs &&\r\n row.original.Legs.length > 0 &&\r\n row.original.Legs[0].Symbol\r\n ) {\r\n dateExtract = row.original.Legs[0].Symbol.split(' ')[1];\r\n }\r\n const encodingExtract = dateExtract && dateExtract.substring(0, 6);\r\n const encodingExpirationFormatted = encodingExtract\r\n ? encodingExtract.substring(2, 4) +\r\n '/' +\r\n encodingExtract.substring(4) +\r\n '/' +\r\n encodingExtract.substring(0, 2)\r\n : '';\r\n const isExpired =\r\n dayjs(encodingExpirationFormatted).isBefore(new Date().toDateString()) &&\r\n row.original.Legs[0].AssetType === 2;\r\n return (\r\n <>\r\n {OrderStatus && (\r\n <>\r\n {OrderStatusCategories.Cancellable.includes(OrderStatus) && (\r\n onCancelOrder(row.original)} />\r\n )}\r\n {OrderStatusCategories.Replaceable.includes(OrderStatus) && (\r\n onReplace(row.original)} />\r\n )}\r\n {(tabType === 'trades' || isFilledOrCancelled || isOpen) && !isExpired && (\r\n handleTradeOrder()} title=\"Duplicate order\" icon=\"fa-clone\" />\r\n )}\r\n \r\n )}\r\n \r\n );\r\n },\r\n },\r\n ],\r\n [groupId, tableStateColumnOrder, hasSubAccounts]\r\n );\r\n\r\n // if the user does not have subaccounts, hide the subaccount column\r\n if (!hasSubAccounts && _.find(columns, { id: 'Subaccount ID' })) {\r\n columns.splice(2, 1);\r\n }\r\n\r\n const columnWidths = useTableColumnWidths(columns as Column[]);\r\n\r\n return isFetchingBlockOrders ? (\r\n \r\n ) : data.length ? (\r\n \r\n ) : (\r\n No data for current timeframe.\r\n );\r\n};\r\n","/* eslint-disable @typescript-eslint/camelcase */\nimport React, { useCallback, useMemo } from 'react';\nimport { css } from 'react-with-styles';\nimport 'react-dates/initialize';\nimport 'react-dates/lib/css/_datepicker.css';\nimport dayjs from 'dayjs';\nimport { isSameDate } from '../../utilities/date';\nimport { useActivityTimeframes } from '../../blocks/Activity/data/useActivityTimeframe';\n\ninterface TimeframePresetsProps {\n startDate: Date | undefined;\n endDate: Date | undefined;\n handleDatesChange: (values: { startDate?: dayjs.Dayjs; endDate?: dayjs.Dayjs }) => void;\n}\n\nexport const TimeframePresets: React.FC = ({ startDate, endDate, handleDatesChange }) => {\n const startDateValue = useMemo(() => startDate && dayjs(startDate), [startDate]);\n const endDateValue = useMemo(() => endDate && dayjs(endDate), [endDate]);\n\n const { presets } = useActivityTimeframes();\n\n // This shouldn't go to prod. Need to work with Nick to figure out\n // How we should best style this\n // -- Paul\n const styles = {\n PresetDateRangePicker_panel: {\n display: 'flex',\n justifyContent: 'center',\n padding: '3px',\n flexWrap: 'wrap',\n },\n PresetDateRangePicker_button: {\n position: 'relative',\n height: '100%',\n textAlign: 'center',\n background: 'none',\n border: `2px solid rgb(0,166,153)`,\n color: 'rgb(0,166,153)',\n padding: '4px 12px',\n marginTop: 1,\n marginRight: 2,\n font: 'inherit',\n fontWeight: 700,\n lineHeight: 'normal',\n overflow: 'visible',\n boxSizing: 'border-box',\n cursor: 'pointer',\n\n ':active': {\n outline: 0,\n },\n },\n PresetDateRangePicker_button__selected: {\n color: 'white',\n background: 'rgb(0,166,153)',\n },\n };\n\n const handleOnClick = useCallback(\n ({ startDate, endDate }: { startDate: dayjs.Dayjs | undefined; endDate: dayjs.Dayjs | undefined }) => {\n handleDatesChange({ startDate, endDate });\n },\n [handleDatesChange]\n );\n\n return (\n
    \n {presets.map(({ text, start, end }) => {\n const isDefaultSelected = !start && !startDateValue && !end && !endDateValue;\n const sameEndDateOrUndefined =\n isSameDate(end, endDateValue) || (end === undefined && endDateValue === undefined);\n const isSelected = isDefaultSelected || (isSameDate(start, startDateValue) && sameEndDateOrUndefined);\n return (\n handleOnClick({ startDate: start, endDate: end })}\n >\n {text}\n \n );\n })}\n
    \n );\n};\n","/* eslint-disable @typescript-eslint/camelcase */\nimport React, { useState, useCallback, useMemo, useRef, useEffect } from 'react';\nimport { Popover, Overlay, OverlayTrigger } from 'react-bootstrap';\nimport ReactDates, { DayPickerRangeController } from 'react-dates';\nimport 'react-dates/initialize';\nimport 'react-dates/lib/css/_datepicker.css';\nimport dayjs from 'dayjs';\nimport moment from 'moment';\nimport { Button } from '@tradingblock/components';\nimport { TimeframeWrapper } from './TimeframeWrapper';\nimport { TimeframePresets } from './TimeframePresets';\nimport { daterangeToTimeframe } from '../../utilities/date';\n\ntype FocusedInputType = 'startDate' | 'endDate' | null;\n\ninterface TimeframeProps {\n initialStartDate?: Date;\n initialEndDate?: Date;\n btnClassName?: string;\n placeholderClassName?: string;\n caret?: JSX.Element;\n onSave: (start: Date | undefined, end: Date | undefined) => void;\n}\n\nexport const Timeframe: React.FunctionComponent = ({ initialStartDate, initialEndDate, btnClassName, placeholderClassName, caret, onSave }) => {\n const [focusedInput, setFocusedInput] = useState('startDate' as ReactDates.FocusedInputShape);\n\n const startDate = useMemo(() => (initialStartDate ? moment(initialStartDate) : null), [initialStartDate]);\n const endDate = useMemo(() => (initialEndDate ? moment(initialEndDate) : null), [initialEndDate]);\n\n const handleDatesChange = useCallback(({ startDate, endDate }: { startDate?: dayjs.Dayjs; endDate?: dayjs.Dayjs }) => {\n onSave(startDate ? startDate.toDate() : startDate, endDate ? endDate.toDate() : endDate);\n },\n [onSave]\n );\n\n const [presetDismiss, setPresetDismiss] = useState(false);\n useEffect(() => {\n return () => setPresetDismiss(false)\n }, [presetDismiss])\n\n const onPresetChange = useCallback(\n (preset: { startDate?: dayjs.Dayjs | undefined; endDate?: dayjs.Dayjs | undefined }) => {\n handleDatesChange(preset);\n setPresetDismiss(true);\n },\n [handleDatesChange, presetDismiss]\n );\n\n const onDatesChange = useCallback(\n (args: { startDate: moment.Moment | null; endDate: moment.Moment | null }) => {\n const start = args.startDate;\n const end = args.endDate;\n const startDate = start ? dayjs(start.toDate()) : undefined;\n const endDate = end ? dayjs(end.toDate()) : undefined;\n handleDatesChange({ startDate, endDate });\n },\n [handleDatesChange]\n );\n\n const onFocusChange = useCallback((focusedInput: FocusedInputType) => {\n setFocusedInput(!focusedInput ? 'startDate' : focusedInput);\n }, []);\n\n const calendarInfo = useCallback(() => {\n return ;\n }, [initialStartDate, initialEndDate, handleDatesChange]);\n\n return presetDismiss ? (\n setPresetDismiss(false)}\n />) : (\n \n \n \n }\n >\n \n \n );\n};\n\ninterface TimeframeButtonProps extends Pick {\n onClick: any;\n startingDate?: Date;\n endingDate?: Date;\n}\n\nconst TimeframeButton: React.FunctionComponent = ({ onClick, startingDate, endingDate, btnClassName, placeholderClassName, caret }) => {\n const timeframe = useMemo(() => daterangeToTimeframe(startingDate && dayjs(startingDate), endingDate && dayjs(endingDate)), [startingDate, endingDate]);\n return (\n \n );\n};\n","import React from 'react';\nimport { useActivityActions } from '../state/ActivityActions';\nimport { Timeframe } from '../../../components/basic/Timeframe';\nimport { useActivityTimeframeValues } from '../data/useActivityTimeframe';\n\nexport const TimeframeContainer: React.FC<{ type?: string }> = ({ children, type }) => {\n const { startDate, endDate } = useActivityTimeframeValues();\n const { setTimeframe } = useActivityActions();\n\n let blockStyle = \"block-section block-section-fixed\";\n\n //if key is present, remove block-section class \n if (type) {\n if (['activityBlockMessage', 'activityBlockTimeFrame'].includes(type)) {\n blockStyle = blockStyle.split(\" \")[1].trim()\n }\n }\n\n return (\n
    \n
    \n
    \n } />\n
    \n {children}\n
    \n
    \n );\n};\n","import React, { FC, useCallback } from 'react';\r\nimport { OrderActivity } from '@tradingblock/types';\r\nimport { OrderStatusToString } from '../util';\r\nimport { getOrders, getOpenOrdersCount, getOrdersByBlockId } from '../../../data/global/selectors/orderSelector';\r\nimport { useStateSelector } from '../../../data/global/dataSelectors';\r\nimport { isBetweenInclusive } from '@tradingblock/api';\r\nimport { useActivityTimeframeValues } from '../data/useActivityTimeframe';\r\nimport { useBlockId } from '../../../components/blocks/BlockState';\r\n\r\nexport const ActivityOrderStats: FC<{}> = () => {\r\n const blockId = useBlockId();\r\n const accountHistory = useStateSelector(getOrdersByBlockId(blockId));\r\n const { startDate, endDate } = useActivityTimeframeValues();\r\n\r\n const countFilteredOrders = useCallback(\r\n (orders: OrderActivity[]) => (status: string) => {\r\n return orders.filter((order: OrderActivity) => {\r\n if (OrderStatusToString(order.OrderStatus) === status) {\r\n if ((startDate as Date) === (endDate as Date) || startDate === undefined || endDate === undefined) {\r\n return true;\r\n }\r\n const ordDate = order.Date;\r\n return ordDate ? isBetweenInclusive(ordDate, startDate, endDate) : false;\r\n }\r\n return false;\r\n }).length;\r\n },\r\n [startDate, endDate]\r\n );\r\n\r\n const getStatusCount = countFilteredOrders(accountHistory);\r\n const filledCount = getStatusCount('Filled');\r\n const cancelledCount = getStatusCount('Cancelled');\r\n const openCount = useStateSelector(s => getOpenOrdersCount(s));\r\n return (\r\n
    \r\n
      \r\n
    • Open: {openCount === 0 ? 0 : openCount}
    • \r\n
    • \r\n Filled: {filledCount === 0 ? 0 : filledCount}\r\n
    • \r\n
    • \r\n Cancelled: {cancelledCount === 0 ? 0 : cancelledCount}\r\n
    • \r\n
    \r\n
    \r\n );\r\n};\r\n","import React, { FC, useContext } from 'react';\nimport { TimeframeContainer } from './TimeframeContainer';\nimport { ActivityOrderStats } from './ActivityOrderStats';\nimport { BasicCheckboxInput } from '@tradingblock/components';\nimport { BlockAction, BlockActionContext, useBlockMetadata } from '../../../components/blocks/BlockState';\nimport { dashboardIdSelector, useStateSelector } from '../../../data/global/dataSelectors';\nimport { blockSettings } from '../../../data/global/selectors/settingSelectors';\nimport { useDispatcher } from '../../../data/global/hooks';\n\nexport const ActivityOrderTimeframe: FC<{ tabType: string, isWorkingOrdersOnly: boolean, setWorkingOrders: React.Dispatch> }> = ({ tabType, isWorkingOrdersOnly, setWorkingOrders }) => {\n\n const dispatch = useContext(BlockActionContext);\n const { dispatcher } = useDispatcher();\n const dashboardId = useStateSelector(dashboardIdSelector);\n const { blockId, type } = useBlockMetadata();\n const settings = useStateSelector(s => blockSettings.position(s, blockId));\n const handleChecked = () => {\n const settingsSaveData = {\n dashboardId: dashboardId || '',\n blockId,\n blockType: type,\n blockSettings: {\n ...settings,\n workingOrdersOnly: !isWorkingOrdersOnly\n },\n };\n dispatch(BlockAction.setSettings(settingsSaveData.blockSettings));\n dispatcher.settings.block.setBlockSetting(settingsSaveData);\n setWorkingOrders(!isWorkingOrdersOnly)\n };\n return (\n \n {tabType === 'orders' && handleChecked()}>\n Working Orders Only\n }\n
    \n \n
    \n
    \n );\n};\n","/* eslint-disable react/display-name */\nimport React, { useCallback, useState } from 'react';\nimport { ActivityOrdersTable } from './components/ActivityOrdersTable';\nimport { ActivityOrderTimeframe } from './components/ActivityOrderTimeframe';\nimport { useOrderPreview, useOrderPreviewOrder } from '../Order/components/Preview/useOrderPreview';\nimport { OrderPreviewPopup } from '../Order/components/Preview/PreviewPopup';\nimport { Order, OrderLeg } from '@tradingblock/types';\nimport { useDashboardSettings } from '../../hooks/useDashboardSettings';\n\nconst ActivityOrders: React.FunctionComponent<{\n tabType: 'orders' | 'trades';\n isWorkingOrdersOnly: boolean;\n setWorkingOrders: React.Dispatch>;\n}> = ({ tabType, isWorkingOrdersOnly, setWorkingOrders }) => {\n const [isCancelOrder, setIsCancelOrder] = useState(false);\n const [orderValue, setOrderValue] = useState>();\n const { muteAllSounds } = useDashboardSettings();\n const {\n isPreview,\n togglePreview,\n previewClosed,\n audio: { successAudio, errorAudio },\n } = useOrderPreview();\n const { setOrder, action } = useOrderPreviewOrder('replace');\n const onReplaceOrder = useCallback(\n (order: Order) => {\n setOrderValue(order);\n setOrder(order);\n setIsCancelOrder(false);\n togglePreview();\n },\n [setOrder, togglePreview]\n );\n const onCancelOrder = useCallback(\n (order: Order) => {\n setOrder(order);\n setIsCancelOrder(true);\n togglePreview();\n },\n [setOrder, togglePreview]\n );\n\n return (\n <>\n {!muteAllSounds && successAudio}\n {!muteAllSounds && errorAudio}\n {isPreview && (\n \n )}\n \n \n \n );\n};\n\nexport const ActivityOrderContent: React.FunctionComponent<{\n tabType: 'orders' | 'trades';\n isWorkingOrdersOnly: boolean;\n setWorkingOrders: React.Dispatch>;\n}> = props => {\n return ;\n};\n","import React, { useCallback, useMemo } from 'react';\nimport { Cell, Row } from 'react-table';\nimport _ from 'lodash';\nimport dayjs from 'dayjs';\nimport { OrderMessage } from '@tradingblock/types';\nimport { isString } from '@tradingblock/api';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { isBetween, isMarketOpen, isToday, TimeTillClose } from '../../../utilities/date';\nimport { getOrderMessages } from '../../../data/global/selectors/orderSelector';\nimport { useActivityTimeframeValues } from '../data/useActivityTimeframe';\nimport { useActivityBlockData } from '../useActivitySettings';\nimport { useDispatcher } from '../../../data/global/hooks';\nimport { Actions } from '../../../data/global/actions';\nimport { useBlockId } from '../../../components/blocks/BlockState';\nimport { BlockTable } from '../../shared/BlockTable';\nimport { EmptyBlockContent } from '@tradingblock/components';\n\ntype NotificationViewDTO = Notification & {\n display: {\n trClass: string;\n };\n};\nexport const ActivityMessagesTable = () => {\n const { dispatch } = useDispatcher();\n const blockId = useBlockId();\n // Get the start and endDate\n const { startDate, endDate } = useActivityTimeframeValues();\n const accountNumber = useStateSelector(s => s.account.accountNumber);\n const { pageSize, pageIndex, total } = useActivityBlockData();\n const isFetchingBlockOrders = useStateSelector(\n s => s.account.ordersUIState[blockId] && s.account.ordersUIState[blockId].isFetching\n );\n\n const initialState = useMemo(() => {\n if (pageSize * pageIndex > total) {\n dispatch(Actions.setOrdersRequestPageIndex({ pageIndex: 0, blockId }));\n return {\n pageSize: pageSize,\n pageIndex: 0,\n sortBy: [],\n columnOrder: [],\n };\n } else\n return {\n pageSize: _.isUndefined(pageSize) ? 50 : pageSize,\n pageIndex: pageIndex || 0,\n sortBy: [],\n columnOrder: [],\n };\n }, [pageSize, pageIndex, total]);\n\n const pageCount = useMemo(() => {\n if (pageSize) {\n return _.ceil((total || 0) / pageSize) === 0 ? 1 : _.ceil((total || 0) / pageSize);\n }\n return 0;\n }, [total, pageSize]);\n\n const onPage = useCallback((pageIndex: number) => {\n dispatch(Actions.setOrdersRequestPageIndex({ pageIndex, blockId }));\n }, []);\n\n const onPageSize = useCallback((pageSize: number) => {\n dispatch(Actions.setOrdersRequestPageSize({ pageSize, blockId }));\n }, []);\n\n const columns = useMemo(\n () => [\n {\n Header: 'Message',\n canSort: false,\n accessor: (a: OrderMessage) => a.description,\n id: 'message',\n Cell: ({ row }: Cell) => {\n const { message, received } = row.original;\n const utcReceivedHours = dayjs.utc(received).hour();\n const timeTillCloseHours = TimeTillClose().hour();\n const marketOpen = isMarketOpen();\n const isAfterHours =\n !marketOpen && utcReceivedHours >= timeTillCloseHours && row.original.status === 'Order New';\n const messages = isString(message) ? [message] : message;\n return (\n <>\n {row.original.status}{' '}\n {messages.map((m, i) => (\n \n
    \n {m}\n {isAfterHours && (\n <>\n
    \n \n This order is saved and will become live at market open of the next trading session.\n \n \n )}\n
    \n ))}\n \n );\n },\n },\n {\n Header: 'Account',\n accessor: () => accountNumber,\n id: 'accountNumber',\n canSort: false,\n },\n {\n Header: 'Order ID',\n accessor: (a: OrderMessage) => a.id,\n canSort: true,\n sortType: 'alphanumeric',\n id: 'orderId',\n Cell: ({ row }: Cell) => {\n return row.original.id === -1 ? '' : row.original.id;\n },\n },\n {\n Header: 'Received on',\n accessor: (a: OrderMessage) => dayjs(a.received).format('MM/DD/YY h:mm:ss.SSS A'),\n id: 'received_on',\n canSort: true,\n sortType: 'basic',\n Cell: ({ row }: Cell) => {\n const recievedOn = dayjs(row.original.received).format(\n isToday(row.original.received) ? 'h:mm:ss.SSS A' : 'MM/DD/YY h:mm:ss.SSS A'\n );\n return recievedOn;\n },\n },\n ],\n []\n );\n const messages = useStateSelector(getOrderMessages(blockId));\n const timeFilteredMessages = useMemo(() => {\n return _.filter(messages, (n: OrderMessage) => {\n if ((startDate as Date) === (endDate as Date) || startDate === undefined || endDate === undefined) {\n return true;\n }\n return isBetween(n.received, startDate, endDate);\n })\n .map(d => ({ ...d, display: { trClass: '' } }))\n .sort((a, b) => dayjs(b.received).valueOf() - dayjs(a.received).valueOf());\n }, [endDate, messages, startDate]);\n const loaded = useMemo(() => timeFilteredMessages !== undefined, [timeFilteredMessages]);\n const renderSubRow = React.useCallback(\n (row: Row) => (\n \n {row}\n \n ),\n []\n );\n\n return (\n <>\n {!isFetchingBlockOrders && (\n timeFilteredMessages.length ?\n \n : No messages for current timeframe.)}\n \n );\n};\n","/* eslint-disable react/display-name */\nimport React from 'react';\nimport { TimeframeContainer } from './components/TimeframeContainer';\nimport { ActivityMessagesTable } from './components/ActivityMessagesTable';\n\nexport const ActivityMessages: React.FunctionComponent<{}> = () => {\n return (\n <>\n \n \n \n );\n};\n","/* eslint-disable react/display-name */\nimport React, { useEffect, useMemo, useState } from 'react';\nimport dayjs from 'dayjs';\nimport { Cell } from 'react-table';\nimport { ActivitySummaryProps, SummaryBuilder } from '../SummaryBuilder';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport {\n getAccountPnL,\n PnLBySymbol,\n pnlSelectors,\n isSummaryDataLoaded,\n} from '../../../data/global/selectors/PnLSelectors';\n\nimport { Number, Column, SignedNumber } from '@tradingblock/components';\nimport { BlockTable } from '../../shared/BlockTable';\n\nimport { DirectionalPrice } from '../../../components/trading/DirectionalPrice';\nimport _ from 'lodash';\n\nimport { PrettySymbol } from '../../../components/blocks/content/PrettySymbol';\nimport { PerformanceSelectors } from '../../../data/global/selectors/performanceSelectors';\n\nconst BeforeAndAfterTrade: React.FunctionComponent<{ quantity: number; price: number; direction: string }> = ({\n quantity,\n price,\n direction,\n}) => {\n return (\n
    \n {quantity}@\n
    \n );\n};\nconst columns: any[] = [\n {\n Header: 'Symbol',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return a.symbol;\n },\n id: 'symbol',\n Cell: ({ row }: Cell) => ,\n },\n\n {\n Header: 'Last Price',\n accessor: (a: PnLBySymbol) => a.lastTradePrice,\n id: 'lastprice',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => ,\n },\n\n {\n Header: 'Previous Settle',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return a.previousSettle;\n },\n id: 'prevsettle',\n Cell: ({ row }: Cell) => {\n return ;\n },\n },\n {\n Header: 'Position on Open',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return a.positionOnOpen;\n },\n id: 'posOpen',\n Cell: ({ row }: Cell) => {\n return row.original.positionOnOpen;\n },\n },\n {\n Header: 'Qty Bought',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return a.quantityBought;\n },\n id: 'qtyBought',\n },\n {\n Header: 'Qty Sold',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return a.quantitySold;\n },\n id: 'qtySold',\n },\n {\n Header: 'Net Qty Change',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return a.netQuantityChange;\n },\n id: 'qtyChange',\n },\n {\n Header: 'Current position',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return a.currentPosition;\n },\n id: 'currentPosition',\n },\n {\n Header: 'Avg Price Bought',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return _.round(a.avgBoughtPrice, 2);\n },\n id: 'avgBoughtPrice',\n Cell: ({ row }: Cell) => (\n <>{row.original.avgBoughtPrice !== 0 && }\n ),\n },\n {\n Header: 'Avg Price Sold',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return _.round(a.avgSoldPrice, 2);\n },\n id: 'avgSoldPrice',\n Cell: ({ row }: Cell) => (\n <>{row.original.avgSoldPrice !== 0 && }\n ),\n },\n {\n Header: 'Trading P/L',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return a.tradingPnL;\n },\n id: 'tradingpnl',\n Cell: ({ row }: Cell) => {\n const { trading, position, total } = useStateSelector(s => PerformanceSelectors.bySymbol(s, row.original.symbol));\n return (\n <>\n \n {/* */}\n \n );\n },\n },\n {\n Header: 'Position P/L',\n canSort: true,\n accessor: (a: PnLBySymbol) => a.positionPnL,\n id: 'positionpnl',\n Cell: ({ row }: Cell) => {\n const { position } = useStateSelector(s => PerformanceSelectors.bySymbol(s, row.original.symbol));\n return (\n <>\n \n {/* */}\n \n );\n },\n },\n {\n Header: 'Daily P/L',\n canSort: true,\n accessor: (a: PnLBySymbol) => a.totalPnL,\n id: 'totalpnl',\n Cell: ({ row }: Cell) => {\n const { total } = useStateSelector(s => PerformanceSelectors.bySymbol(s, row.original.symbol));\n return (\n <>\n \n {/* */}\n \n );\n },\n },\n {\n Header: 'Est. Commission',\n canSort: true,\n accessor: (a: PnLBySymbol) => a.totalPnL,\n id: 'estCommission',\n Cell: ({ row }: Cell) => {\n return (\n <>\n \n \n );\n },\n },\n];\n\nexport const ActivitySummaryTable = () => {\n // const data = usePnL({ startDate, endDate });\n const data = useStateSelector(s =>\n pnlSelectors.trading(s, {\n startDate: dayjs(new Date())\n .hour(0)\n .toDate(),\n endDate: dayjs(new Date()).toDate(),\n })\n );\n const isLoaded = useStateSelector(isSummaryDataLoaded);\n return (\n \n );\n};\n","import React, { FC } from 'react';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport _ from 'lodash';\nimport { SignedNumber } from '@tradingblock/components';\nimport { PerformanceSelectors } from '../../data/global/selectors/performanceSelectors';\nexport const ActivitySummaryTotals: FC = () => {\n const todayPnL = useStateSelector(s => PerformanceSelectors.totals.tradedToday(s).total);\n const totalPnL = useStateSelector(s => PerformanceSelectors.totals.all(s).total);\n const notTradedPnL = totalPnL - todayPnL;\n return (\n
      \n
    • \n Not traded today: Daily P/L\n \n
    • \n
    • \n Total Daily P/L:\n \n
    • \n
    \n );\n};\n","import React from 'react';\nimport { useStateSelector, accountIdSelector } from '../../data/global/dataSelectors';\nimport { useAccountApi } from '../../context/Api';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { ActivitySummaryTable } from './components/ActivitySummaryTable';\nimport useMount from 'react-use/lib/useMount';\nimport _ from 'lodash';\nimport { ActivitySummaryTotals } from './ActivitySummaryTotals';\nimport { PerformanceSelectors } from '../../data/global/selectors/performanceSelectors';\nimport { SignedNumber } from '@tradingblock/components';\n\nconst ActivitySummaryView: React.FunctionComponent<{}> = () => {\n const { total } = useStateSelector(PerformanceSelectors.totals.tradedToday);\n return (\n <>\n {/* */}\n
    \n
    \n
    \n Symbols traded today: Daily P/L\n \n
    \n
    \n \n
    \n
    \n
    \n\n \n \n );\n};\n\nexport const ActivitySummary: React.FunctionComponent<{}> = () => {\n useMount(() => {\n //loadPnL(api, dispatcher)(currId as number, { accountId: currId as number });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n });\n return ;\n};\n","import React, { useEffect, useMemo, useState } from 'react';\nimport { useActiveBlockTab } from '../../components/blocks/BlockAccessors';\nimport { ActivityOrderContent } from './ActivityOrderContent';\nimport { ActivityMessages } from './ActivityMessages';\nimport { ActivitySummary } from './ActivitySummary';\nimport { accountIdSelector, subAccountIdSelector, useStateSelector } from '../../data/global/dataSelectors';\nimport { areOrdersLoaded, getOrders } from '../../data/global/selectors/orderSelector';\nimport { Loading, EmptyBlockContent } from '@tradingblock/components';\nimport { useBlockId } from '../../components/blocks/BlockState';\nimport { useActivityTimeframeValues } from './data/useActivityTimeframe';\nimport { useActivityBlockData, useActivitySettingsValue } from './useActivitySettings';\nimport { useDispatch } from 'react-redux';\nimport { Actions } from '../../data/global/actions';\n\nexport const ActivityContent: React.FunctionComponent<{}> = () => {\n const activeTab = useActiveBlockTab();\n const accountId = useStateSelector(accountIdSelector);\n const subaccountId = useStateSelector(subAccountIdSelector);\n const blockId = useBlockId();\n const accountOrders = useStateSelector(getOrders);\n const { workingOrdersOnly } = useActivitySettingsValue();\n const [isWorkingOrdersOnly, setWorkingOrders] = useState(false);\n const { startDate, endDate } = useActivityTimeframeValues();\n const { pageSize, pageIndex } = useActivityBlockData();\n const dispatch = useDispatch();\n const tab = useMemo(() => (activeTab ? activeTab.title : undefined), [activeTab ? activeTab.title : undefined]);\n const isTradesTab = useMemo(() => tab === 'Trades', [tab]);\n const isMessagesTab = tab === 'Messages';\n\n useEffect(() => {\n // Initially fetch orders for the block and establish redux state for each block, refetch when accountOrders changes (e.g. when a new order is placed)\n if (accountId) {\n dispatch(\n Actions.requestAccountOrders(\n {\n accountId,\n subaccountId,\n dateFrom: startDate,\n dateTo: endDate,\n includeOrderEvents: isMessagesTab ? true : false,\n pageSize,\n pageIndex,\n blockId,\n isTradesTab,\n workingOrdersOnly: isWorkingOrdersOnly,\n },\n { debounce: undefined }\n )\n );\n }\n }, [\n accountOrders,\n workingOrdersOnly,\n isWorkingOrdersOnly,\n startDate,\n endDate,\n pageSize,\n pageIndex,\n accountId,\n subaccountId,\n isTradesTab,\n isMessagesTab,\n ]);\n\n const isLoaded = useStateSelector(areOrdersLoaded);\n return (\n <>\n {isLoaded ? (\n <>\n {tab === 'Messages' && }\n {tab === 'Orders' && (\n \n )}\n {tab === 'Trades' && (\n \n )}\n {tab === 'Summary' && }\n \n ) : (\n {}\n )}\n \n );\n};\n","import React, { useCallback, useMemo } from 'react';\nimport { BlockTabs } from '@tradingblock/components';\nimport { TabOptions } from '@tradingblock/types';\nimport { useBlockMetadata, useBlockActions } from './BlockState';\n\nexport const BlockTabWell: React.FunctionComponent = () => {\n const { title, tabs } = useBlockMetadata();\n const { setTab } = useBlockActions();\n\n const hasTabs = useMemo(() => tabs && tabs.length > 0, [tabs]);\n const onTabClick = useCallback((tab: TabOptions) => setTab(tab), [setTab]);\n return (\n <>\n {!hasTabs && title}\n {hasTabs && tabs && }\n \n );\n};\n","import React, { useEffect } from 'react';\nimport { BlockBody } from '@tradingblock/components';\nimport { TabOptions, BlockType } from '@tradingblock/types';\nimport { ActivityContent } from '././ActivityContent';\nimport { PositionSync } from '../shared/PositionSync';\nimport { Block } from '../../components/blocks/Block';\nimport { useQuoteSymbolSubscriptionFromGlobalState, useQuoteFeedSubscription } from '../../hooks/useQuoteData';\nimport { getBlockProps } from '../../utilities/block';\nimport { useGlobalStateQuoteListener } from '../../components/blocks/useBlockSubscriptions';\nimport { BlockTabWell } from '../../components/blocks/BlockTabWell';\nimport { getPositionAndOrderSymbols } from '../../data/global/selectors/orderSelector';\nimport { useActivitySettings } from './useActivitySettings';\n\nconst ActivityTabs: TabOptions[] = [\n { title: 'Trades', active: true },\n { title: 'Orders' },\n { title: 'Messages' },\n { title: 'Summary' },\n];\n\nexport const ActivityBlock: React.FunctionComponent<{}> = () => {\n useQuoteSymbolSubscriptionFromGlobalState(getPositionAndOrderSymbols);\n useGlobalStateQuoteListener(getPositionAndOrderSymbols);\n const { current, definitions } = useActivitySettings();\n return (\n , ActivityTabs)}\n settings={current}\n settingFields={definitions}\n >\n \n \n \n \n \n );\n};\n","import React, { useEffect, useRef } from 'react';\nimport { createChart, CrosshairMode, IChartApi, SeriesMarker, Time } from 'lightweight-charts';\nimport { BalanceHistory } from '@tradingblock/types';\nimport { is } from 'immutable';\n\ninterface AnalyticsChartProps {\n dateRange: {\n start: Date;\n end: Date;\n };\n filteredBalances: BalanceHistory[];\n}\n\nexport const AnalyticsChart: React.FC = ({\n dateRange,\n filteredBalances,\n}: AnalyticsChartProps): JSX.Element => {\n const chartContainerRef = useRef({} as HTMLElement);\n const chart = useRef(null);\n const resizeObserver = useRef({} as ResizeObserver);\n\n enum MarkerTypes {\n Deposit = 'D',\n Withdrawal = 'W',\n Dividend = 'DIV',\n CapitalGainsDistribution = 'CG',\n Reinvestment = 'RE',\n JournalEntry = 'JE',\n Interest = 'I',\n }\n\n const getMarkerType = (markerType: string): string => {\n switch (markerType) {\n case 'Deposit':\n return MarkerTypes.Deposit;\n case 'Withdrawal':\n return MarkerTypes.Withdrawal;\n case 'Dividend':\n return MarkerTypes.Dividend;\n case 'CapitalGainsDistribution':\n return MarkerTypes.CapitalGainsDistribution;\n case 'Reinvestment':\n return MarkerTypes.Reinvestment;\n case 'JournalEntry':\n return MarkerTypes.JournalEntry;\n case 'Interest':\n return MarkerTypes.Interest;\n default:\n return '';\n }\n };\n\n useEffect(() => {\n chart.current = createChart(chartContainerRef.current, {\n width: chartContainerRef.current.clientWidth,\n height: chartContainerRef.current.clientHeight,\n layout: {\n backgroundColor: 'rgb(3, 18, 55)',\n textColor: 'rgba(255, 255, 255, 0.9)',\n fontSize: 14,\n },\n grid: {\n vertLines: {\n visible: false,\n },\n horzLines: {\n visible: false,\n },\n },\n crosshair: {\n mode: CrosshairMode.Magnet,\n },\n });\n }, []);\n\n useEffect(() => {\n if (filteredBalances.length && chart.current !== null) {\n const baseLineSeries = chart.current.addBaselineSeries({\n baseValue: { type: 'price', price: 0 },\n lineWidth: 1,\n });\n //marker series\n const balanceHistoryMarkers: SeriesMarker