{"version":3,"sources":["Services/NoteService.js","utils/formatPhoneNumber.js","ui-component/extended/AnimateButton.js","Services/SectorService.js","Services/index.js","components/DialogConfirmWrapper.js","store/Shared.Slice.js","Services/UserProjectService.js","components/MaskedInputWapper.js","Services/FeedbackService.js","ui-component/cards/MainCard.js","Services/FavoritesService.js","Services/OrganizationProfileService.js","Services/CouponService.js","components/AutocompleteWrapper.js","Services/SectorServiceCA.js","assets/images/ga-logo-sm.png","Services/ProjectBudgetService.js","Services/DeadlineService.js","components/PasswordInputWrapper.js","Services/LoginServices.js","Services/FavoriteFundersService.js","Services/LetterHeadService.js","Services/InquiryLetterService.js","Services/ProposalLetterService.js","Services/CustomLetterService.js","Services/ThankYouLetterService.js","Services/ImpactReportLetterService.js","hooks/useVersioning.js","Services/SharedProjectService.js","components/SimpleDialogWrapper.js","components/SelectWrapper.js","Services/BlockedFundersService.js","components/CheckboxWrapper.js","Services/CustomDatabaseService.js","views/search-engine/common/SearchEngine.Slice.js","utils/constants.js","views/admin/manage-accounts/ManageAccount.Slice.js","views/foundation-profile/FoundationProfile.Slice.js","views/foundation-profile-v2/FoundationProfile.Slice.js","views/user-project/UserProject.Slice.js","views/foundation-profile-ca-v2/FoundationProfile.CA.Slice.js","config.js","views/pages/authentication/Auth.Slice.js","views/account/additional-users/AdditionalUsers.Slice.js","views/foundation-profile-ca/FoundationProfile.CA.Slice.js","hooks/useRestoreScrollYPosition.js","Services/AuthManagementService.js","views/grant-secretary/GrantSecretary.Slice.js","views/manage-funders/favorites/Favorites.Slice.js","views/admin/manage-coupons/ManageCoupon.Slice.js","views/admin/manage-deadlines/ManageDeadline.Slice.js","views/grant-secretary-v2/GrantSecretary.Slice.js","views/pages/public-profile-page/PublicFoundationProfile.Slice.js","views/admin/create-account/CreateAccount.Slice.js","ui-component/cards/NotificationCard.js","Services/CountryService.js","views/admin/create-subscription-plan/CreateSubscriptionPlan.Slice.js","views/admin/update-account/UpdateAccount.Slice.js","views/admin/update-foundation-ca/UpdateFoundationCa.Slice.js","views/admin/update-foundation-us/UpdateFoundationUs.Slice.js","views/project-budget/Income.Slice.js","views/project-budget/Expense.Slice.js","views/document-generator/inquiry/Inquiry.Slice.js","views/document-generator/proposal/Proposal.Slice.js","views/document-generator/custom/Custom.Slice.js","components/NumberFormatWrapper.js","components/FormControlWrapper.js","views/admin/manage-subscription-plans/ManageSubscriptionPlan.Slice.js","views/admin/manage-feedbacks/ManageFeedback.Slice.js","views/document-generator/thank-you/ThankYou.Slice.js","views/document-generator/impact-report/ImpactReport.Slice.js","utils/dates.js","assets/scss/_themes-vars.module.scss","assets/scss/_theme1.module.scss","assets/scss/_theme2.module.scss","assets/scss/_theme3.module.scss","assets/scss/_theme4.module.scss","assets/scss/_theme5.module.scss","assets/scss/_theme6.module.scss","assets/scss/_theme7.module.scss","assets/scss/_theme8.module.scss","Services/FoundationProfileService.js","Services/FoundationProfileCanadianService.js","Services/AdminService.js","serviceWorker.js","store/actions.js","store/customizationReducer.js","store/snackbarReducer.js","Services/UserProfileService.js","views/account/user-profile/ProfileInfo.Slice.js","views/account/user-profile/AlertNotification.Slice.js","views/account/user-profile/Signature.Slice.js","views/account/organization-profile/OrganizationProfileInfo.Slice.js","Services/OrganizationAdditionalEmailService.js","views/account/organization-profile/OrganizationAdditionalEmail.Slice.js","views/manage-funders/blocked-funders/BlockedFunders.Slice.js","views/manage-funders/custom-databases/CustomDatabase.Slice.js","views/admin/update-subscription-plan/UpdateSubscriptionPlan.Slice.js","store/index.js","utils/lazyPage.js","ui-component/extended/Breadcrumbs.js","layout/MainLayout/LogoSection/index.js","ui-component/extended/Transitions.js","layout/MainLayout/Header/ProfileSection/FeedbackForm/FileUploadView.js","layout/MainLayout/Header/ProfileSection/FeedbackForm/index.js","layout/MainLayout/Header/ProfileSection/SimpleProfileSection.js","assets/images/users/user-round.svg","layout/MainLayout/Header/NotificationSection/NotificationList.js","Services/UserNotificationService.js","layout/MainLayout/Header/NotificationSection/index.js","assets/images/icons/notification-cute.svg","layout/MainLayout/Header/NotificationSectionV2/NotificationDrawer.js","layout/MainLayout/Header/NotificationSectionV2/index.js","Services/ReferralService.js","layout/MainLayout/Header/ReferralSection/ReferralForm.Popup.js","layout/MainLayout/Header/ReferralSection/index.js","layout/MainLayout/Header/Welcome/Welcome.popup.js","layout/MainLayout/Header/index.js","menu-items/account.js","menu-items/administration.js","menu-items/userProject.js","menu-items/searchEngine.js","menu-items/searchEngineCanada.js","menu-items/documentGenerator.js","menu-items/grantSecretary.js","menu-items/manageFunders.js","menu-items/manageFundersv2.js","menu-items/index.js","layout/MainLayout/Sidebar/MenuList/NavItem/index.js","layout/MainLayout/Sidebar/MenuList/NavCollapse/index.js","layout/MainLayout/Sidebar/MenuList/NavGroup/NavGroupV2.js","layout/MainLayout/Sidebar/MenuList/index.js","layout/MainLayout/Sidebar/index.js","layout/Customization/index.js","layout/MainLayout/index.js","ui-component/Loader.js","ui-component/Loadable.js","views/account/organization-profile/OrganizationProfileInfo.Page.js","views/account/organization-profile/OrganizationAdditionalEmail.List.js","views/account/organization-profile/OrganizationAdditionalEmail.Popup.js","views/account/organization-profile/OrganizationAdditionalEmail.Page.js","assets/images/empty_01.png","views/shared/SharedLetterHead.Page.js","assets/images/header.png","assets/images/header-footer.png","views/account/user-profile/ProfileInfo.Page.js","Services/AlertNotificationService.js","views/account/user-profile/AlertNotification.Page.js","Services/SignatureService.js","views/account/user-profile/SignaturePage.js","views/account/user-profile/ResetPassword.Page.js","routes/MainRoutes.js","layout/MinimalLayout/index.js","routes/AuthenticationRoutes.js","routes/index.js","themes/palette.js","themes/typography.js","themes/shadows.js","themes/index.js","themes/compStyleOverride.js","ui-component/Locales.js","ui-component/extended/Snackbar.js","store/accountReducer.js","contexts/FirebaseContext.js","contexts/LogRocketContext.js","views/shared/LoginForm.js","views/LoginPopup/index.js","App.js","translations/en-CA/translations.js","translations/i18n.js","translations/en-US/translations.js","translations/es-MX/translations.js","translations/fr-CA/translations.js","index.js","store/constant.js","Services/SearchEngineService.js","ui-component/cards/SubCard.js","Services/SubscriptionPlanService.js","Services/PublicProfilePageService.js","Services/ProjectFundersService.js","utils/startcase.js"],"names":["notesApi","emptySplitApi","injectEndpoints","endpoints","builder","getNotesByUser","query","model","url","pageNumber","pageSize","orderField","orderDirection","tableOrder","method","getNoteList","mutation","profileId","flagStatusFilter","insertNote","body","updateNote","id","deleteNote","togglePinNote","getNoteDocuments","uploadNoteDocuments","deleteNoteDocument","documentId","overrideExisting","useGetNoteListMutation","useInsertNoteMutation","useUpdateNoteMutation","useDeleteNoteMutation","useTogglePinNoteMutation","useUploadNoteDocumentsMutation","useGetNoteDocumentsMutation","useDeleteNoteDocumentMutation","useGetNotesByUserQuery","formatPhoneNumber","str","match","replace","join","AnimateButton","forwardRef","ref","children","type","direction","offset","scale","jingleVariants","start","rotate","end","jingleTransition","repeat","Infinity","repeatType","duration","ease","offset1","offset2","x","cycleX","useCycle","y","cycleY","div","animate","transition","repeatDelay","undefined","onHoverEnd","onHoverStart","initial","variants","hover","tap","whileHover","whileTap","defaultProps","sectorApi","getSectorList","getSectorListV1","getSubSectorListBySectorIds","useGetSectorListQuery","useGetSubSectorListBySectorIdsMutation","useGetSectorListV1Mutation","createApi","reducerPath","baseQuery","fetchBaseQuery","baseUrl","process","prepareHeaders","headers","getState","rawToken","localStorage","getItem","append","Date","getTimezoneOffset","previewSplitApi","nonUserApi","DialogConfirmWrapper","openPopup","onClose","titleMessage","popupMessage","confirmLabel","isLoading","onConfirm","showConfirm","size","additionalButtonLabel","onAdditionalButtonClick","confirmButtonVisible","cancelButtonVisible","cancelLabel","onCancelButtonClick","additionalButtonHelpText","startIcon","buttonHelpText","open","fullWidth","maxWidth","sx","p","borderRadius","fontSize","bgcolor","color","display","alignItems","gap","onClick","position","right","top","dividers","container","spacing","item","xs","variant","mt","mb","disableElevation","visibility","loading","endIcon","title","cursor","sharedSlice","createSlice","name","initialState","message","text","isOpen","toaster","severity","format","withTransition","countryList","key","value","token","userToken","menuItem","items","documentGenerator","projectFundersVisibility","inquiry","proposal","thankyou","impactReport","customLetter","openLoginDialog","reducers","showSuccessToaster","state","action","payload","showSuccessToasterWithoutTransitions","showSuccessWithFormat","showWarningToaster","showErrorToaster","closeToaster","showMessage","showSessionTimeout","closeMessage","setUserToken","loadMenuItems","collapseMenu","itemsCopy","map","copy","collapse","collapseAll","setProjectFundersVisibility","setLoginDialogOpen","actions","userProjectApi","getAll","searchTerm","showArchived","insertUserProject","updateUserProject","deleteUserProject","archiveProject","unarchiveProject","getCurrentList","getCurrentListWithTrigger","updateUserProjectToActiveAsync","updateUserProjectToCompleted","useGetAllMutation","useInsertUserProjectMutation","useUpdateUserProjectMutation","useDeleteUserProjectMutation","useArchiveProjectMutation","useUnarchiveProjectMutation","useGetCurrentListQuery","useGetCurrentListWithTriggerMutation","useUpdateUserProjectToActiveAsyncMutation","useUpdateUserProjectToCompletedMutation","MaskedInputWrapper","label","onChange","maskType","error","theme","required","t","useTranslation","mask","phone","twoNumbers","fourNumbers","className","guide","render","props","inputRef","helperText","typography","customInput","feedbackApi","getFeedbackPagedList","feedbackType","toggleReview","getFeedbackDocuments","documentType","submitFeedback","useGetFeedbackPagedListMutation","useToggleReviewMutation","useSubmitFeedbackMutation","useGetFeedbackDocumentsMutation","headerSX","mr","MainCard","border","boxShadow","content","contentClass","contentSX","darkTitle","secondary","shadow","others","useTheme","borderColor","palette","mode","background","default","primary","favoritesApi","getFavoritesPagedList","getFavoritesPagedSharedList","getFavoritesList","getSharedFavorites","insertFavorites","duplicateFavorites","updateFavorites","deleteFavorites","deleteSharedFavorites","useGetFavoritesListMutation","useGetFavoritesPagedListMutation","useInsertFavoritesMutation","useUpdateFavoritesMutation","useDeleteFavoritesMutation","useDuplicateFavoritesMutation","useGetFavoritesPagedSharedListMutation","useDeleteSharedFavoritesMutation","useGetSharedFavoritesMutation","organizationProfileApi","getOrganizationProfile","getEmailsNotification","updateOrganizationProfile","useGetOrganizationProfileMutation","useUpdateOrganizationProfileMutation","useGetEmailsNotificationMutation","couponApi","getCouponPagedList","ownCoupon","getTemplateCouponList","insertCoupon","updateCoupon","deleteCoupon","pauseCoupon","getCouponPlans","useGetCouponPagedListMutation","useGetTemplateCouponListMutation","useInsertCouponMutation","useUpdateCouponMutation","useDeleteCouponMutation","usePauseCouponMutation","useGetCouponPlansQuery","AutocompleteWrapper","options","disabled","groupBy","autoComplete","isOptionEqualToValue","option","disableClearable","renderInput","params","height","marginRight","sectorCAApi","getSectorListCA","getSubSectorListBySectorNamesCA","getDonationsSubSectorListBySectorNamesCA","useGetSectorListCAQuery","useGetSubSectorListBySectorNamesCAMutation","useGetDonationsSubSectorListBySectorNamesCAMutation","projectBudgetApi","getAllIncomePagedList","userProjectId","getAllExpensePagedList","insertBudget","resetBudget","budgetType","deleteBudget","incomeSelected","deleteExclusiveBudget","updateBudget","useGetAllIncomePagedListMutation","useGetAllExpensePagedListMutation","useInsertBudgetMutation","useResetBudgetMutation","useDeleteBudgetMutation","useDeleteExclusiveBudgetMutation","useUpdateBudgetMutation","deadlineApi","getDeadlinePagedList","importDeadline","updateDeadline","deleteDeadline","useGetDeadlinePagedListMutation","useImportDeadlineMutation","useUpdateDeadlineMutation","useDeleteDeadlineMutation","PasswordInputWrapper","maxLength","showPassword","setShowPassword","useState","endAdornment","show","onMouseDown","e","preventDefault","edge","loginApi","login","logout","useLoginMutation","useLogoutMutation","favoriteFundersApi","getFavoriteFundersPagedList","favoriteId","moveFavoriteFunders","destinationFavoriteId","favoriteFundersListId","insertFavoriteFunders","deleteFavoriteFunders","profileIdList","updateQualifyFunder","favoriteFunderId","isQualified","useGetFavoriteFundersPagedListMutation","useInsertFavoriteFundersMutation","useDeleteFavoriteFundersMutation","useMoveFavoriteFundersMutation","useUpdateQualifyFunderMutation","letterHeadApi","saveLetterHead","sharedLetterHeadType","getLetterHead","saveLetterHeadFooterOnly","letterType","useSaveLetterHeadMutation","useGetLetterHeadMutation","useSaveLetterHeadFooterOnlyMutation","inquiryLetterApi","getStepList","insertUpdateInquiry","getInquiryLetter","useGetStepListQuery","useInsertUpdateInquiryMutation","useGetInquiryLetterMutation","proposalLetterApi","getProposalStepList","insertUpdateProposal","getProposalLetter","useGetProposalStepListQuery","useInsertUpdateProposalMutation","useGetProposalLetterMutation","customLetterApi","getCustomStepList","insertUpdateCustom","getCustomLetter","useGetCustomStepListQuery","useInsertUpdateCustomMutation","useGetCustomLetterMutation","thankYouLetterApi","getThankYouStepList","insertUpdateThankYouLetter","getThankYouLetter","useGetThankYouStepListQuery","useInsertUpdateThankYouLetterMutation","useGetThankYouLetterMutation","impactReportLetterApi","getImpactReportStepList","insertUpdateImpactReportLetter","getImpactReportLetter","useGetImpactReportStepListQuery","useInsertUpdateImpactReportLetterMutation","useGetImpactReportLetterMutation","PathKeys","Object","freeze","byGivingHistory","byKeyword","byName","byDirector","byYear","byGivingHistoryCa","byNameCa","byDirectorCa","byYearCa","byInternationalFunding","byCustom","foundationProfile","foundationProfileCa","useVersioning","composeUrl","paths","v1","Constants","v2","useEffect","qualifyFunders","URLSearchParams","window","location","search","get","targetPath","URL","origin","path1","path2","parts1","split","parts2","isSame","Math","max","length","i","comparePaths","pathname","toggleVersion","toVersion","currentVersion","setItem","getPathByName","version","sharedProjectApi","getAllShared","getSharedProjectList","getSharedProjectListWithTrigger","useGetSharedProjectListQuery","useGetSharedProjectListWithTriggerMutation","useGetAllSharedMutation","SimpleDialogWrapper","icon","dialogContentProps","dialogActionsProps","ActionContents","actionContents","borderTop","SelectWrapper","data","customAutocomplete","style","zIndex","labelId","justifyContent","extraInfo","paddingRight","blockedFundersApi","getBlockedFundersList","insertBlockedFunders","deleteBlockedFunders","blockedFundersIdList","deleteAllBlockedFunders","useGetBlockedFundersListMutation","useInsertBlockedFundersMutation","useDeleteBlockedFundersMutation","useDeleteAllBlockedFundersMutation","CheckboxWrapper","checked","control","customDatabaseApi","getRequiredOptionalFields","confirmImportCustomDatabase","getCustomDatabaseList","deleteCustomDatabase","customDatabaseId","getFileList","getMappedFields","customItemId","getCustomDatabaseProvinceOrStateList","getCustomDatabaseCityList","provinceOrStateList","useGetRequiredOptionalFieldsMutation","useConfirmImportCustomDatabaseMutation","useGetCustomDatabaseListMutation","useDeleteCustomDatabaseMutation","useGetFileListMutation","useGetMappedFieldsMutation","useGetCustomDatabaseProvinceOrStateListMutation","useGetCustomDatabaseCityListMutation","collapseFilters","toggleAdvancedSearch","toggleExpandSearchBar","userProject","userProjectList","searchBar","any","all","none","directorName","foundationName","yearList","stemmingSearch","showFundersOnce","showMultiGrant","searchButton","customDatabaseFileId","customDatabaseContactName","customDatabaseOrganizationName","searchFilters","fromCountry","toCountry","provinceOrState","city","years","sector","subSector","foundation","avgGrant","ratingValue","grantSize","assertSize","additionalFilters","hasOnlineApplication","hasAdditionalInformation","doesNotHaveWebsite","doesHaveWebsite","hasPhoneNumber","hasEmail","showDesignedGiven","foundationList","cityList","sectorList","subSectorList","avgGrantList","Array","fill","_","idx","toString","categoryList","pagedList","pageCount","totalCount","searchByNamePagedList","searchByDirectorPagedList","searchByYearPagedList","searchByRatingPagedList","searchByCustomPagedList","projectFundersProfileIdList","searchEngineSlice","handleChangeUserProject","find","o","handleChangeCountry","forEach","country","code","push","filter","handleChangeToCountry","handleChangeProvinceOrState","handleChangeCity","handleChangeSector","sectorName","handleChangeSubSector","subSectorName","setCollapseFilters","handleChangeSearchBar","field","handleCheckFilters","handleCheckYearList","handleChangeAdditionalFilters","handleToggleAdvancedSearch","handleToggleExpandSearchBar","handleRatingValue","handleModelErrors","entries","errors","handleAssertSize","handleGrantSize","handleClearForm","handleLoadingFields","handleClearList","handleAddFundersToProject","projectFunders","extraReducers","addMatcher","searchEngineApi","searchBySearchType","matchFulfilled","searchByGivingHistory","searchByName","searchByDirector","searchByYear","searchByRating","searchByCustom","countryApi","getCountryList","projectFundersApi","getAllProjectFundersProfileId","getCityListByProvinceOrStates","FOUNDATION_PATH","FOUNDATION_CA_PATH","GIVING_HISTORY_PATH","GIVING_HISTORY_CA_PATH","KEYWORD_PATH","NAME_PATH","NAME_CA_PATH","DIRECTOR_PATH","DIRECTOR_CA_PATH","YEAR_PATH","YEAR_CA_PATH","CUSTOM_PATH","INTERNATIONAL_FUNDING_PATH","FOUNDATION_V2_PATH","FOUNDATION_CA_V2_PATH","FAVORITES_PATH","CUSTOM_PROFILE_V2_PATH","GIVING_HISTORY_V2_PATH","GIVING_HISTORY_CA_V2_PATH","KEYWORD_V2_PATH","NAME_V2_PATH","NAME_CA_V2_PATH","DIRECTOR_V2_PATH","DIRECTOR_CA_V2_PATH","YEAR_V2_PATH","YEAR_CA_V2_PATH","CUSTOM_V2_PATH","INTERNATIONAL_FUNDING_V2_PATH","manageAccountSlice","loadingList","openEnableDisableDialog","openExpirationDateDialog","openPipedriveImportDialog","userId","pipedriveOrganizationCode","isMasterUser","expirationDateDialog","licenseExpirationDate","licenseDescription","expired","subscriptionPlanName","subscriptionPlanList","status","additionalUsersList","bestowAccount","userName","organizationName","additionalUsersAmount","licenseAmount","restoreAccount","reportUsage","licenses","licensesList","accountInfo","salesDemoTemplate","accessToken","hashToken","expirationTime","createdAt","adminUserName","hasCreated","isExpired","handleChange","handleChangeField","handleOpenExpirationDateDialog","handleCloseExpirationDateDialog","handleChangeSubscriptionPlanDialog","expirationDate","handleOpenEnableDisableDialog","handleCloseEnableDisableDialog","handleOpenPipedriveImportDialog","handleClosePipedriveImportDialog","handleOpenBestowAccount","organization","handleCloseBestowAccount","handleOpenRestoreAccountDialog","handleCloseRestoreAccountDialog","handleOpenUsageReportDialog","internalUserName","handleCloseUsageReportDialog","handleToggleLicensesDialog","handleOpenSalesDemoTemplateDialog","handleCloseSalesDemoTemplateDialog","handleOpenAccessTokenDialog","handleCloseAccessTokenDialog","handleClearTokenDialog","handleCreateAccessTokenSuccess","handleGetAccessTokenSuccess","adminApi","getAllUsersPagedList","matchPending","matchRejected","getExpirationDateDetails","getOrganizationLicenses","hyphens","loadingLicensesList","concat","deleteOrganizationLicense","openPopupNote","noteData","description","notificationDate","emailNotification","emails","loadingGifts","applyFilter","init","profileName","lastReportYear","registerYear","stateOrProvince","organizationRegion","onlineApplication","website","nationalGivingHistory","phoneNumber","fullAddress","nteeTitle","nteeDescription","recipientName","provinceOrStateListTemp","countyList","contactEmail","applicationData","foundationId","programData","config","searchEngineYearFilter","US","index","summary","avgGrantSize","totalAsserts","avgGrantsAnnually","grantsState","avgAmount","largestAmount","medianAmount","range","customAnalysisList","foundationFinancialList","yearAnalysisList","giftList","highlightFilter","grantOverviewList","category","grants","largest","average","score","grantamount","directorList","noteList","charts","provinceList","rangeAmount","rangeSector","toggleExpandFilters","year","county","taxReturnPdf","foundationProfileSlice","togglelistItem","handleChangeCounty","handleChangeYears","handleChangeRecipientName","handleAddNewNote","handleEditNote","handleClosePopupNote","handleChangeStemmingSearch","handleClear","handleApplyFilter","handleClearCityList","handleClearGifts","handleToggleExpandFilters","handleClearCountyAndCity","handleUpdateNoteItem","noteItem","foundationProfileApi","getGiftsPagedList","aggrFilters","newStateList","element","statesFilter","toUpperCase","isChecked","getGrantOverview","getDirectorList","getProfileHeader","getCountryByCodeWithTrigger","getChartProvinceList","getChartRangeAmountList","getChartRangeSector","getCounties","provinceOrStateCode","fiscalPeriodEnd","selectedFilters","foundationProfileSliceV2","handleChangeFilter","getGiftsPagedListV2","countries","secondaryAction","some","county2","city2","userProjectSlice","openFormDialog","openDeleteDialog","tabIndex","activeUserProjectId","pagedSharedList","projectStatusList","startDate","endDate","projectCost","projectDescription","projectStatus","handleCloseDialog","handleOpenDeleteDialog","handleCreateNewProject","handleEditUserProject","setTabIndex","setSharedActiveProject","sectors","donorDesignation","CA","foundationProfileCASliceV2","foundationProfileCanadianApi","getGiftsPagedListCAV2","countiesFilter","getGiftsPagedListCA","getGrantOverviewCA","getDirectorListCA","getMainProfileCA","getChartProvinceListCA","getChartRangeAmountListCA","getChartRangeSectorCA","basename","defaultPath","fontFamily","outlinedFilled","presetColor","i18n","rtlLayout","jwt","secret","timeout","firebase","apiKey","authDomain","projectId","storageBucket","messagingSenderId","appId","measurementId","auth0","client_id","domain","welcomeMessage","keyVersion","markerOptions","openPopupPayment","userNameOrEmail","password","coupon","selectedCountry","selectedCountryBilling","selectedProvinceOrState","selectedProvinceOrStateBilling","firstName","lastName","userNameRegister","passwordRegister","email","companyName","addressLine","addressLine2","postalCode","addressLineBilling","addressLine2Billing","countryBilling","countyBilling","postalCodeBilling","provinceOrStateBilling","cityBilling","useSameAddress","userNameRecovery","emailRecovery","newPassword","confirmPassword","authSlice","handleOpenPopupPayment","handleClosePopupPayment","handleChangeCountryBilling","handleChangeProvinceOrStateBilling","handleChangeUseSameAddress","clearErrors","keys","formReset","clearPasswordRecovery","setSubscriptionPlanList","setCoupon","subscriptionPlanApi","getPublicPlans","additionalUsersSlice","usersList","usersAmount","isDialogOpen","isDialogRemoveOpen","collaborationAll","collaborationParent","handleAddNewUser","handleEditUser","handleChangeSearch","handleChangeForm","handleInsertSuccess","handleUpdateSuccess","setLoading","fillList","additionalUsers","closeDialog","handleClearSearch","handleOpenDialogRemove","handleCloseDialogRemove","foundationProfileCASlice","handleChangeSectorGifts","useRestoreScrollYPosition","useLocation","fetchStatus","funders","GSFunders","fundersCustomDocument","GSFundersCustomDocument","useSelector","grantSecretaryState","favoritesPagedList","favoritesPagedSharedList","favoriteFundersPagedList","favoritesState","lastLocation","JSON","parse","isFoundationPage","includes","scrollTo","removeItem","scrollPosition","storeLocationScrollPosition","stringify","scrollY","authManagementApi","register","passwordRecovery","passwordReset","settingUpAccount","confirmRegisterUser","registerValidation","updatePassword","useRegisterMutation","usePasswordRecoveryMutation","usePasswordResetMutation","useSettingUpAccountMutation","useConfirmRegisterUserMutation","useRegisterValidationMutation","useUpdatePasswordMutation","allProjectList","letterTypeList","foundationSourceType","checkAll","itemsSelected","excludedSelected","fundersSelected","openPopupFavourite","openPopupDelete","openPopupBlock","openPopupExportExcel","openPopupExportAll","openPopupPrintLabels","openPopupLetterheadFooterSettings","openPopupProfileSummary","flagFilter","savedHeaderFooterSetting","profileSummary","webSite","countNotes","labelList","grantSecretarySlice","handleFillAllProject","handleChangeLetterType","handleCheckItemsChange","funder","indexOf","pagedListItem","existsFunder","findIndex","handleClosePopup","handleOpenDeletePopup","handleOpenPopupFavourites","handleOpenPopupExportExcel","handleOpenPopupExportAll","handleOpenPopupPrintLabels","handleOpenLetterheadFooterSettings","handleOpenProfileSummary","handleOpenPopupBlockFunders","handleChangeFlagFilter","handleChangeHeaderFooterSetting","getAllProjectFunders","startcase","getAllProjectFundersCustomDocument","selectedFavorite","favoriteName","popupFavorites","firstProfileId","openPopupDuplicateFavorites","cacheFavoriteFundersList","favoritesSlice","handleSelectFavorite","handleCreateNewFavorites","handleEditFavorites","handleClosePopupFavorites","handleConfirmEditFavorites","handleOpenPopupDuplicateFavorites","handleClearFavoriteFundersList","handleResetPage","item2","handleOpenPopupFavorites","openCreateCouponDialog","selectedSubscriptionPlanList","couponValues","subscriptionPlanLabelList","isPaused","subscriptionPlanId","toggleExtraTime","toggleDiscount","toggleTemplate","extraTime","discount","manageCouponSlice","handleOpenForm","handleUpdateCouponValues","handleToggleUpdate","toggleToOn","toggleToOff","isSales","toggleToOnValue","handleSetCouponValues","isExtraTime","isDiscount","extraMonths","discountPercentual","isTemplate","handleCheckSubscriptionPlans","handleClearSubscriptionPlanList","plan","planDescription","importDialogPopup","fileToImport","openUpdateDialog","deadlineValues","ein","grantAmount","deadlineDate","upcoming","manageDeadlineSlice","handleSetImportDialogPopup","handleUpdateDeadlineValues","handleSetDeadlineValues","foundationStatus","grantSecretarySliceV2","handleFundersChangeLetterType","handleChangeDocumentType","getAllProjectFundersDocument","gifts","isLoadingGift","getYearList","directors","publicFoundationProfileSlice","setProfileId","setCountry","publicProfileApi","getPublicCounties","getPublicGiftsPagedList","getCountryByCode","getPublicSector","getPublicDirectorsPagedList","getPublicChartProvinceList","getPublicRangeAmountList","getPublicRangeSectorList","roleList","userRole","businessEin","startDay","isImporting","pipedrivePersonCode","processPayment","createAccountSlice","handleChangeSubscriptionPlan","amountUsers","handleFillCountryAndState","handleChangeProcessPayment","handleChangeScheduleStartDay","scheduleStartDay","clearForm","getPlans","importPipedriveOrganization","NotificationCard","fullDescription","tagNew","creationTimeAgo","documents","descriptionRef","useRef","current","querySelectorAll","image","parent","parentElement","warning","dark","backgroundColor","light","grey","dangerouslySetInnerHTML","__html","marginBottom","fontWeight","pb","document","countryCode","getCountryOnlyList","getCountyOnlyList","getProvinceOrStateListByCountryCodes","countryCodes","useGetCountryListQuery","useGetCityListByProvinceOrStatesMutation","useGetCountryOnlyListQuery","useGetCountyOnlyListQuery","useGetProvinceOrStateListByCountryCodesMutation","useGetCountryByCodeQuery","useGetCountryByCodeWithTriggerMutation","displayplan","amountYears","amountMonths","amountDays","amountLicenses","amountPlan","createSubscriptionPlanSlice","handleChangeDisplayPlan","userNameIsEmail","emailConfirmed","updateAccountSlice","getUserAccount","roles","updateFoundationSlice","registeredName","otherName","site","address","complement","province","bn","zipCode","incomeSlice","budgetDescription","categoryDescription","amount","openBudgetDialog","openResetDialog","openDeleteSelectedDialog","openDeleteAllDialog","openDeleteOneDialog","incomePagedList","setProjectDescription","handleOpenBudgetDialog","handleNewBudget","handleOpenResetDialog","handleOpenDeleteSelectedDialog","handleOpenDeleteAllDialog","handleOpenDeleteOneDialog","handleOpenEditDialog","handleClearSelection","handleSelectItem","handleToggleAll","copySelected","excludedItems","existsIndex","splice","handleToggleCheckExclusive","toggleCheck","copyData","handlePageChangeWithCheckAll","emptyIndex","handleBudgetSelection","handleCheckAllSelection","expenseSlice","expensePagedList","expenseSelected","handleChangeCategory","inquirySlice","activeStep","inquiryDocument","introduction","describeOrganization","needStatement","methodology","otherFunding","stepList","forceDisabled","autosaveEnabled","timeoutId","handleStep","handleChangeDocument","trim","stepName","handleSaveSuccess","handleAutoSaveEnabled","notesQuantity","proposalDocument","coverLetter","executiveSummary","goals","methods","evaluation","funding","closingStatement","proposalSlice","customSlice","userProjectToChange","customDocument","template","letter","NumberFormatWrapper","React","other","getInputRef","onValueChange","values","target","thousandSeparator","prefix","decimalScale","allowNegative","isNumericString","allowEmptyFormatting","FormControlWrapper","multiline","rows","labelSx","maskNumber","autoFocus","placeholder","shrinkLabel","FormControl","InputLabel","htmlFor","shrink","OutlinedInput","inputProps","inputComponent","FormHelperText","manageSubscriptionPlanSlice","manageFeedbackSlice","handleSearchChange","thankYouSlice","thankYouDocument","customizedContent","reinforceImpact","nextSteps","conclusion","handleConfirmChange","handleFillAllProjects","selectedProject","projects","impactReportSlice","impactReportDocument","projectActivities","impact","financialReport","appendice","formatDate","date","d","getFullYear","getMonth","getDate","startYear","endYear","reverse","module","exports","getTaxReturn","getFinancialList","getProgramList","getApplication","getApplicationWithTrigger","getFoundationProfileSummaryOverview","useGetProfileHeaderMutation","useGetGiftsPagedListMutation","useGetGiftsPagedListV2Mutation","useGetProgramListQuery","useGetApplicationQuery","useGetApplicationWithTriggerMutation","useGetGrantOverviewMutation","useGetDirectorListMutation","useGetChartProvinceListMutation","useGetChartRangeAmountListMutation","useGetChartRangeSectorMutation","useGetFoundationProfileSummaryOverviewMutation","useGetTaxReturnQuery","useGetFinancialListMutation","getProgramListCA","getApplicationCA","getApplicationWithTriggerCA","getFoundationProfileSummaryOverviewCA","getCustomAnalysisListCA","getFoundationFinancialList","getYearAnalysisList","useGetMainProfileCAMutation","useGetGiftsPagedListCAMutation","useGetGiftsPagedListCAV2Mutation","useGetProgramListCAQuery","useGetApplicationCAQuery","useGetApplicationWithTriggerCAMutation","useGetGrantOverviewCAMutation","useGetDirectorListCAMutation","useGetChartProvinceListCAMutation","useGetChartRangeAmountListCAMutation","useGetChartRangeSectorCAMutation","useGetFoundationProfileSummaryOverviewCAMutation","useGetCustomAnalysisListCAMutation","useGetFoundationFinancialListMutation","useGetYearAnalysisListMutation","createUser","updateUser","updateExpirationDate","enableDisableAccount","sendResetPasswordLink","sendSetupPasswordLink","sendActivateAccountLink","validateUserAccountCreate","addLicensesToUser","updateSeAccess","addRemoveProAccess","restoreAdditionalUser","organizationId","licenseId","createAccessToken","getAccessTokenDetails","useGetAllUsersPagedListMutation","useCreateUserMutation","useGetUserAccountQuery","useUpdateUserMutation","useGetExpirationDateDetailsMutation","useUpdateExpirationDateMutation","useEnableDisableAccountMutation","useSendResetPasswordLinkMutation","useSendSetupPasswordLinkMutation","useSendActivateAccountLinkMutation","useImportPipedriveOrganizationMutation","useValidateUserAccountCreateMutation","useAddLicensesToUserMutation","useUpdateSeAccessMutation","useAddRemoveProAccessMutation","useRestoreAdditionalUserMutation","useGetOrganizationLicensesQuery","useDeleteOrganizationLicenseMutation","useCreateAccessTokenMutation","useGetAccessTokenDetailsMutation","Boolean","hostname","LOGIN","LOGOUT","SET_MENU","MENU_OPEN","MENU_TYPE","PRESET_COLORS","THEME_LOCALE","THEME_RTL","SET_FONT_FAMILY","SET_BORDER_RADIUS","SET_OUTLINED_FILLED","SNACKBAR_OPEN","navType","locale","opened","customizationReducer","actionTypes","anchorOrigin","vertical","horizontal","alertSeverity","close","actionButton","snackbarReducer","userProfileApi","getUserProfile","updateUserProfile","useGetUserProfileQuery","useUpdateUserProfileMutation","userProfileSlice","userNameEmail","currentProfileInfo","alertNotificationSlice","notificationList","handleCheck","enabled","handleGet","signatureSlice","currentSignature","firstTime","showPageLeave","organizationProfileSlice","handleShowPageLeave","organizationAdditionalEmailApi","getAdditionalEmailPagedList","updateMainEmailAddress","emailAddress","insertAdditionalEmail","newEmailAddress","deleteAdditionalEmail","useGetAdditionalEmailPagedListMutation","useUpdateMainEmailAddressMutation","useInsertAdditionalEmailMutation","useDeleteAdditionalEmailMutation","organizationAdditionalEmailSlice","additionalEmailListPagedData","previousEmail","openDialog","mainEmailAddress","pagedData","blockedFundersSlice","projectName","userProjectPagedList","blockedFundersPagedList","handleSelectUserProject","customDatabaseSlice","userFields","requiredOptionalFields","deletedUserFields","handleChangeActiveStep","handleImportUserFields","userFieldId","handleClearAll","handleDropRequiredOptionalFields","requiredOptionalFieldIndex","fieldId","destinationId","userFieldIndex","sourceId","userField","handleDropUserFields","deletedField","deletedFieldIndex","updateSubscriptionPlanSlice","getSubscriptionPlan","rtkQueryErrorLogger","api","next","isRejectedWithValue","console","warn","doRedirect","generalError","setTimeout","clear","href","configureStore","reducer","customization","snackbar","authState","AuthSlice","sharedState","SharedSlice","userProfileState","UserProfileSlice","alertNotificationState","AlertNotificationSlice","additionalUsersState","AdditionalUsersSlice","signatureState","SignatureSlice","organizationProfileState","OrganizationProfileInfoSlice","organizationAdditionalEmailState","OrganizationAdditionalEmailSlice","manageAccountState","ManageAccountSlice","manageSubscriptionPlanState","ManageSubscriptionPlanSlice","manageCouponState","ManageCouponSlice","manageDeadlineState","ManageDeadlineSlice","manageFeedbackState","ManageFeedbackSlice","createAccountState","CreateAccountSlice","createSubscriptionPlanState","CreateSubscriptionPlanSlice","updateSubscriptionPlanState","UpdateSubscriptionPlanSlice","updateAccountState","UpdateAccountSlice","updateFoundationCaState","UpdateFoundationCaSlice","updateFoundationUsState","UpdateFoundationUsSlice","userProjectState","UserProjectSlice","searchEngineState","SearchEngineSlice","incomeState","IncomeSlice","expenseState","ExpenseSlice","foundationProfileState","FoundationProfileSlice","foundationProfileStateV2","FoundationProfileSliceV2","inquiryState","InquirySlice","proposalState","ProposalSlice","customState","CustomSlice","GrantSecretarySlice","grantSecretaryStateV2","GrantSecretarySliceV2","FavoritesSlice","blockedFundersState","BlockedFundersSlice","customDatabaseState","CustomDatabaseSlice","foundationProfileCAState","FoundationProfileCASlice","foundationProfileCAStateV2","FoundationProfileCASliceV2","thankYouLetterState","ThankYouLetterSlice","impactReportLetterState","ImpactReportLetterSlice","publicFoundationProfileState","PublicFoundationProfileSlice","middleware","getDefaultMiddleware","lazyPage","importFunction","lazy","async","store","dispatch","linkSX","textDecoration","alignContent","Breadcrumbs","card","divider","icons","maxItems","navigation","rightAlign","separator","titleBottom","iconStyle","marginTop","width","main","setMain","getCollapse","menu","SeparatorIcon","separatorIcon","stroke","mainContent","itemContent","CollapseIcon","ItemIcon","breadcrumbContent","Typography","itemTitle","AccountTreeTwoToneIcon","component","Link","to","breadcrumbs","Card","gridSpacing","Box","pl","Grid","ml","Divider","LogoSection","ButtonBase","disableRipple","src","Logo","alt","Transitions","positionSX","transformOrigin","Grow","Collapse","Fade","appear","enter","exit","Slide","Zoom","FileUploadView","onDocumentChange","accept","tips","multiple","incremental","Stack","files","_documents","from","file","previewUrl","createObjectURL","blob","handleSetSelectedDocuments","Button","click","flexWrap","Cancel","stopPropagation","whiteSpace","overflow","textOverflow","FeedbackFormCustomError","Error","constructor","super","this","FeedbackForm","question","showUploadFiles","showUploadScreenshots","showGivePermission","showCategory","showGrantSize","onSubmit","onCancel","useDispatch","defaultFormValue","uploadFiles","uploadScreenshots","givePermission","screenshots","grantType","formValue","setFormValue","setDocuments","setScreenshots","isFeedbackSubmitting","handleFormChange","setGrantType","validate","maximumUploadCount","maxFileSizeInMB","maxFileSizeInBytes","fileExceed","padding","paper","event","newValue","sm","md","FormControlLabel","Checkbox","Tooltip","verticalAlign","HelpOutline","Switch","LoadingButton","FormData","screenshot","response","unwrap","copyFormValue","Quill","QuillResize","SimpleProfileSection","navigate","useNavigate","UpdateAccess","isUpdatingAccess","expandedIndex","setExpandedIndex","validRoles","userRoles","isArray","role","accessUs","string","accessCanada","selectedIndex","setOpen","openFeedback","setFeedbackOpen","anchorRef","anchorFeedbackRef","handleLogout","handleToggle","responseLogout","handleUserProfile","handleClose","contains","handleFeedbackClose","handleFeedbackSubmitted","prevOpen","handleExpandClick","prevFeedbackOpen","focus","handleChangeAccess","textAlign","svg","cdnUrl","cdnSuffix","mediumFeedback","marginLeft","Popper","placement","anchorEl","disablePortal","popperOptions","modifiers","TransitionProps","in","Paper","ClickAwayListener","onClickAway","maxHeight","elevation","shadows","pr","List","minWidth","breakpoints","down","ListItemButton","selected","ListItemIcon","ListItemText","unmountOnExit","newWindow","opener","openInNewTab","Backdrop","CircularProgress","Chip","lineHeight","Avatar","mediumAvatar","margin","UserName","styled","NotificationList","userNotificationApi","getUserNotificationsFullReadList","getUserNotificationsList","readUserNotification","notificationId","updateAllNotificationsToRead","getAmountOfNotifications","getNotificationDocuments","useGetUserNotificationsFullReadListMutation","useGetUserNotificationsListMutation","useReadUserNotificationMutation","useUpdateAllNotificationsToReadMutation","useGetAmountOfNotificationsMutation","useGetNotificationDocumentsMutation","NotificationSection","LoadingNotificationSkeleton","Skeleton","NoNotificationComponent","NoNotification","NotificationDrawer","notifications","Drawer","anchor","Toolbar","disableGutters","borderBottom","left","Notifications","IconButton","Close","notification","info","isDocumentsLoading","NotificationSectionV2","welcomeClosed","getUserNotificationList","isNotificationListLoading","getAnnouncementDocument","drawerOpen","setDrawerOpen","isNotificationFetched","setIsNotificationFetched","userNotifications","setUserNotifications","notificationsAmount","setNotificationsAmount","allNotifications","unreadNotifications","handleOpenDrawer","then","resp","userNotificationsTemp","announcementId","prevList","tagUnread","commonAvatar","Badge","overlap","badgeContent","referralApi","submitReferral","useSubmitReferralMutation","ReferralFormPopup","isReferralSubmitting","referralCode","Language","ContentCopyTwoTone","minHeight","lg","TipsAndUpdates","nameCharity","nameContact","DialogActions","orientation","contact","arrow","deleteIcon","onDelete","copyToClipboard","navigator","clipboard","writeText","letterSpacing","ReferralSection","success","openPopupReferral","setOpenPopupReferral","flexGrow","WelcomePopup","onCloseWelcome","setOpenPopup","cookies","Cookies","set","maxAge","path","sameSite","msg","TungstenOutlined","Header","handleLeftDrawerToggle","setWelcomeClosed","MenuOpen","IconUserPlus","IconMan","IconBuildingCommunity","account","IconUsers","IconBusinessplan","administration","IconTools","IconRepeat","IconFileText","IconReceipt","IconId","IconTrafficLights","IconStars","IconBox","IconKeyboard","IconWorld","IconCalendarEvent","searchEngine","IconFileInfo","IconLicense","IconMailOpened","IconThumbUp","IconReportAnalytics","IconWoman","grantSecretary","IconHeart","IconHandOff","IconDatabaseImport","menuIcons","accountIcons","administrationIcons","userProjectIcons","searchEngineIcons","documentGeneratorIcons","grantSecretaryIcons","manageFundersIcons","menuItems","NavItem","level","matchesSM","useMediaQuery","Icon","itemIcon","itemTarget","itemUrl","listItemProps","external","py","itemHandler","my","caption","subMenuCaption","gutterBottom","chip","avatar","NavCollapse","setSelected","menus","align","menuIcon","strokeWidth","disablePadding","opacity","NavGroup","toLowerCase","MenuList","navItems","NavGroupV2","Sidebar","drawerToggle","matchUpMd","up","foundationProfileRoute","matchRoutes","drawer","mx","paddingLeft","px","flexShrink","drawerWidth","borderRight","ModalProps","keepMounted","Customization","currentLang","setCurrentLang","setCookieVal","mapFontFamily","Map","setNavType","querySelector","setAttribute","removeAttribute","customizationFontFamily","fontFamilyChange","initialFont","setFontFamily","getKeyByValue","val","newFont","changeLanguage","Fab","borderTopLeftRadius","borderBottomLeftRadius","borderTopRightRadius","borderBottomRightRadius","speedDial","customShadows","PaperProps","SubCard","FormLabel","RadioGroup","row","handleNavType","Radio","handleFontFamily","Select","lng","MenuItem","alignSelf","MX","Main","shouldForwardProp","prop","transitions","create","easing","sharp","leavingScreen","easeOut","enteringScreen","MainLayout","matchDownMd","leftDrawerOpened","handleToken","useCallback","jwt_decode","err","log","CssBaseline","AppBar","enableColorOnDark","Snackbar","autoHideDuration","TransitionComponent","disableWindowBlurListener","Alert","IconChevronRight","LoaderWrapper","Loader","LinearProgress","Loadable","Component","fallback","OrganizationProfileInfoPage","isLoadingOrganizationProfile","isLoadingCountry","isUpdating","usePrompt","handleGetOrganizationProfile","columnSpacing","OrganizationAdditionalEmailList","getAdditionalEmailList","isDeleting","TableContainer","Table","TableHead","TableRow","TableCell","TableBody","colSpan","handleDelete","DeleteForever","Pagination","count","page","newPage","OrganizationAdditionalEmailPopup","isInserting","Dialog","DialogTitle","DialogContent","OrganizationAdditionalEmailPage","matchDownSM","loadListInitial","MailOutline","SharedLetterHeadPage","setLetterType","footerRef","headerRef","isSaving","headerImage","setHeaderImage","previewBlob","resizeNotification","openNotification","headerImageId","footerImage","setFooterImage","footerImageId","openDialogConfirm","setOpenDialogConfirm","previousData","setPreviousData","handleUploadFile","handleConfirmSave","autoResize","handleGetLetterhead","handleLoadImage","hasNotification","naturalWidth","naturalHeight","headerImageUrl","footerImageUrl","Upload","emptyImg","onError","onLoad","hidden","defaultValue","ProfileInfoPage","sessionId","uuidv4","isLoadingUserProfile","alertNotificationApi","getNotifications","saveNotification","useGetNotificationsMutation","useSaveNotificationMutation","AlertNotificationPage","isLoadingList","saveNotifications","handleGetNotifications","FormGroup","signatureApi","getSignature","saveSignature","useGetSignatureMutation","useSaveSignatureMutation","ImageResize","SignaturePage","handleGetSignature","modules","toolbar","imageResize","formats","ResetPassword","currentPassword","setCurrentPassword","setNewPassword","setConfirmPassword","isButtonDisabled","npValue","handleCurrentPasswordChange","valueLen","cpValue","minimumCharaters","handleNewPasswordChange","handleConfirmPasswordChange","oldPassword","f","errorList","errValue","DashboardDefault","AdditionalUsersPage","UserProfilePage","ManageAccountPage","ManageAnnouncementPage","ManageSubscriptionPlanPage","ManageCouponsPage","ManageFeedbacksPage","ManageDeadlinesPage","CreateAccountPage","CreateAnnouncementPage","UpdateAnnouncementPage","CreateSubscriptionPage","UpdateSubscriptionPage","UpdateAccountPage","UpdateFoundationCaPage","UpdateFoundationUsPage","ManagePlansPage","OrganizationProfilePage","UserProjectPage","UserProjectArchive","SearchByGivingHistoryPage","SearchByGivingHistoryPageV2","SearchByNamePage","SearchByNamePageV2","SearchByNamePageCA","SearchByNamePageCAV2","SearchByDirectorPage","SearchByDirectorPageV2","SearchByYearPage","SearchByYearPageV2","SearchByRatingPage","SearchByCustomPage","ProjectBudgetPage","FoundationProfilePage","FoundationProfilePageV2","InquiryPage","ProposalPage","CustomPage","GrantSecretary","GrantSecretaryV2","GrantSecretaryPreviewDocuments","GrantSecretaryPreviewDocumentsV2","ManageFundersPage","CustomDatabasesPage","CustomDatabasesImportPage","CustomProfilePage","CustomProfilePageV2","DocumentInquiryPage","DocumentInquiryFunderPage","DocumentProposalPage","DocumentProposalFunderPage","DocumentCustomPage","DocumentCustomFunderPage","SearchByKeywordPage","SearchByKeywordPageV2","SearchByDirectorPageCA","SearchByDirectorPageCAV2","SearchByGivingHistoryPageCA","SearchByGivingHistoryPageCAV2","SearchByYearPageCA","SearchByYearPageCAV2","SearchByDeadlinePage","FoundationProfileCanadian","FoundationProfileCanadianV2","SearchByInternacionalFundingPage","SearchByInternacionalFundingPageV2","ThankYouLetterPage","DocumentThankYouPage","DocumentThankYouFunderPage","ImpactReportLetterPage","DocumentImpactReportPage","DocumentImpactReportFunderPage","DocumentOptimizationPage","SearchByCustomPageV2","MainRoutes","MinimalLayout","AuthLogin3","AuthRegister3","PasswordRecovery","PasswordReset","SettingUpAccount","ConfirmRegisterUser","PublicProfilePage","AuthenticationRoutes","ThemeRoutes","useRoutes","themePalette","common","black","colors","darkPaper","darkPrimaryLight","primaryLight","darkPrimaryMain","primaryMain","darkPrimaryDark","primaryDark","darkPrimary200","primary200","darkPrimary800","primary800","darkSecondaryLight","secondaryLight","darkSecondaryMain","secondaryMain","darkSecondaryDark","secondaryDark","darkSecondary200","secondary200","darkSecondary800","secondary800","errorLight","errorMain","errorDark","orange","orangeLight","orangeMain","orangeDark","warningLight","warningMain","warningDark","warning100","successLight","success200","successMain","successDark","grey50","grey100","darkTextSecondary","heading","darkTextPrimary","textDark","darkLevel1","darkLevel2","darkBackground","mediumDark","mediumDarkText","lightText","hint","paper2","backgroundDefault","themeTypography","h6","h5","h4","h3","h2","h1","subtitle1","subtitle2","body1","body2","button","textTransform","grey500","customAutocompleteSelect","customCollapseExpand","menuCaption","smallAvatar","largeAvatar","smallFeedback","largeFeedback","createCustomShadow","transparent","alpha","z1","z8","z12","z16","z20","z24","grey600","theme1","theme2","theme3","theme4","theme5","theme6","theme7","theme8","themeOption","menuSelected","menuSelectedBack","darkTextTitle","grey700","grey800","grey700_orig","grey900","grey200","themeOptions","mixins","xl","xxl","themes","createTheme","components","bgColor","MuiButton","styleOverrides","root","MuiPaper","backgroundImage","rounded","MuiCardHeader","paddingTop","paddingBottom","MuiCardContent","MuiCardActions","MuiAlert","outlined","MuiListItemButton","MuiListItemIcon","MuiListItemText","MuiInputBase","input","MuiOutlinedInput","grey400","inputAdornedStart","notchedOutline","MuiSlider","grey300","mark","valueLabel","MuiAutocomplete","popper","MuiDivider","MuiSelect","select","MuiCheckbox","MuiAvatar","MuiChip","MuiTimelineContent","MuiTreeItem","MuiTimelineDot","MuiInternalDateTimePickerTabs","tabs","MuiTabs","flexContainer","MuiDialog","MuiTableCell","MuiTooltip","tooltip","MuiDialogTitle","componentStyleOverrides","Locales","messages","setMessages","loadLocaleData","defaultLocale","SlideLeft","SlideUp","SlideRight","SlideDown","snackbarInitial","reason","v","accountReducer","user","isLoggedIn","isInitialized","apps","initializeApp","FirebaseContext","createContext","FirebaseProvider","useReducer","auth","onAuthStateChanged","uid","displayName","Provider","firebaseRegister","createUserWithEmailAndPassword","firebaseEmailPasswordSignIn","signInWithEmailAndPassword","firebaseGoogleSignIn","provider","GoogleAuthProvider","signInWithPopup","signOut","resetPassword","sendPasswordResetEmail","updateProfile","LogRocketContext","LogRocketProvider","LogRocket","identify","Id","LoginForm","onLoginSuccess","onLoginFailed","matchDownMD","userLogin","setChecked","formInput","setFormInput","handleFormInputChange","handleRemember","rememberChecked","rememberVal","StyledDialog","LoginPopup","reload","App","StyledEngineProvider","injectFirst","ThemeProvider","lang","use","LanguageDetector","initReactI18next","resources","translation","labels","user_name","reset_password","reset_password_confirm","sign_up","forgot_password","go_back","first_name","last_name","complementary_address","postal_code","billing","use_same_address","welcome_back","enter_credentials","dont_have_account","remember_me","sign_in","already_have_account","subscription_plan","country_billing","password_recovery","password_reset","setting_up_account","current_password","new_password","confirm_password","confirming_account","accounts_created","of","add_new_user","edit_user","additional_emails","organization_letterhead","company_information","company_organization","created_at","change_main_email","main_email","emails_created","add_new_additional_email","new_email_address","add_digital_letterhead","select_header_style","header_only","header_and_footer","email_alert","signature","user_letterhead","user_information","enable_disable_notifications","user_name_or_email","avg_grants_Annually","avg_grant_size","total_assets","notes_taken","last_report","not_informed","loading_profile_summary","funders_selected","show_grant_details","profile_summary","view_profile","avg_grants","recipient","territories","giving_int","foundation_name","import","organization_name","contact_name","state_or_province","add_funders_to_project","export_to_excel","block_funders","databases","search_result","purpose","not_provided_by","keyword","my_list","shared_list","favorite_name","select_favorite","confirm","show_saved_search","load_selected_saved_search","rename","remove_save_search","updated_at","amt","create_user_account","edit_user_account","name_project","total_project_cost","start_date","end_date","delete_project","select_director_from_list","enter_custom_director","select_director","enter_director_name","salutation","ask_amount","total_amount","application_information","instruction","restriction","deadline","median","remove_funder","foundation_exists_other_projects","remove_foundations_other_projects","application_info","this_action_will_remove","from_this_project","hide_customized_funders","project_funders","custom_letter","change_project","return_grant_secretary","impact_report_letter","project_funders_master_document","master_document","letter_of_inquiry","thank_you_letter","custom_document","qualify","favorites","favorite_funders","select_one_or_more_projects","print_funder_page","move_to_previous_funder","move_to_next_funder","remove_this_funder_from_qualified","mark_funder_as_qualified","block_funder","export_funders_to_excel","funder_name","prev","previous","visit_website","notes","add_note","company","contact_infos","other_infos","help_center","profile_settings","hi","user_profile","model_error","general_error","invalid_token","confirming_account_error","invalid_image","inform_crop_area","funder_not_found","file_list_error","select_at_least_one_funder","select_one_or_more_funders_delete","select_one_or_more_funders_block","logout_success","copied_to_cliboard","password_recovery_message","inform_new_password_message","setting_up_account_message","confirming_account_wait","first_letterhead_message","second_letterhead_message","third_letterhead_message","check_organization_settings_message","funders_not_selected_message","you_must_select_state","deselect_all_counties","select_one_favorite_list","create_new_favorite_list","add_funders_favorite_list","saved_search_load_successfully","save_search","are_you_sure","this_action_will_remove_document_funder","this_action_will_remove_master_document","want_to_remove_the_funder","this_will_remove_customized_documents","remove_the_funders_from_the_projects","select_in_dropdown_example","this_will_remove_funders_from_this_project","user_menu","profile","prompt","areYouSure","confirmRemove","side_menu","manage_account","manage_announcement","manage_subscription_plan","manage_coupons","manage_feedbacks","manage_deadlines","manage_plans","additional_users","organization_profile","project_manager","project_list","project_archive","search_engine","search_engine_canada","by_giving_history","by_name","by_director","by_year","by_deadline","by_rating","by_custom","document_generator","budget","grant_secretary","manage_funders","blocked_funders","custom_databases","by_keyword","by_international_funding","thank_you","impact_report","buttons","create_account","send","add_user","insert_user","save_changes","update_profile","add_email","select_header_file","select_footer_file","update_account","add_to_favorites","more","clear_search","advanced_search","create_favorite_list","add","update","confirm_delete","confirm_remove","add_funder","input_fields","press_enter","accountCreated","accountDisabled","accountDisabledSuccess","accountEnabledSuccess","accountNotActivated","accountUpdatedSuccess","additionalEmailNotFound","additionalEmailRemovedSuccess","additionalEmailSavedSuccess","additionalUserInsertSuccess","additionalUserUpdateSuccess","addressBillingRequired","alertNotificationSavedSuccess","cityBillingRequired","complementaryAddressBillingRequired","confirmRegisterUserSuccess","countryBillingRequired","countryNotFound","emailExists","errorRegistration","expirationDateSavedSuccess","footerImageRequired","imageHeightLength","imageWidthLength","invalidEmailAddress","invalidLetterType","invalidPhoneNumber","invalidSubscriptionPlan","invalidUserRole","letterheadSavedSuccess","licenseExpired","licenseNotFound","loginFailed","masterOnly","notEnoughLicense","notificationExists","notificationNotFound","notificationTypeNotFound","organizationDisabled","organizationMainAddressUpdatedSuccess","organizationNotFound","organizationProfileSavedSuccess","passwordModified","postalCodeBillingRequired","profileNotFound","provinceOrStateBillingRequired","provinceOrStateNotFound","sendActivationLinkSuccess","sendPasswordResetSuccess","sendSetupPasswordSuccess","separatedLicenceExpirationDateError","settingUpAccountSuccess","signatureSavedSuccess","subscriptionPlanNotFound","userLogoutSuccess","userNameExists","userNotAllowed","userNotFound","userProfileSavedSuccess","wrongCurrentPassword","additionalUsersRequired","addressRequired","amountDaysRequired","amountLicensesRequired","amountMonthsRequired","amountYearsRequired","planAmountRequired","billingAddressLine2Required","billingAddressRequired","billingCityRequired","billingCountryRequired","billingPostalCodeRequired","billingProvinceOrStateRequired","cityRequired","companyNameRequired","businessEinRequired","compareConfirmPassword","complementaryAddressRequired","confirmPasswordRequired","countryRequired","displayPlanRequired","emailRequired","firstNameRequired","headerImageRequired","invalidEmail","invalidRole","lastNameRequired","licenseAmountRange","licenseRequired","newPasswordRequired","notificationTypeRequired","oldPasswordRequired","organizationIdRequired","passwordLength","passwordRequired","phoneRequired","planDescriptionRequired","postalCodeRequired","provinceOrStateRequired","roleRequired","signatureRequired","subscriptionPlanNameRequired","tokenRequired","userIdRequired","userNameRequired","planNameRequired","customLetterRequired","customLetterSavedSuccess","customTagDeleteSuccess","customTagInsertSuccess","customTagNotFound","customTagUpdateSuccess","documentStateInsertSuccess","inquiryLetterRequired","inquiryLetterSavedSuccess","proposalLetterRequired","proposalLetterSavedSuccess","userProjectRequired","customDocumentTypeRequired","documentAmountRequired","documentFlaggedRequired","documentStateRequired","tagDescriptionRequired","tagNameRequired","blockedFundersDeleteAllSuccess","blockedFundersDeleteSuccess","blockedFundersInsertSuccess","blockedFundersNotFound","customDatabaseDeleteSuccess","customDatabaseFieldsMapRequired","customDatabaseNotFound","customDatabaseUserFieldsEmpty","favoriteDeleteSuccess","favoriteDuplicateSuccess","favoriteFundersDeleteSuccess","favoriteFundersInsertSuccess","favoriteFundersNotFound","favoriteFundersUpdateSuccess","favoriteInsertSuccess","favoriteNotFound","favoriteUpdateSuccess","fundersListEmpty","noteDeleteSuccess","noteInsertSuccess","noteNotFound","noteUpdateSuccess","noteRequired","notificationDateRequired","emailListRequired","customDatabaseFileRequired","favoriteNameRequired","favoriteRequired","foundationRequired","jsonUserFieldsMapRequired","labelTypeRequired","letterTypeRequired","noteDescriptionRequired","noteTitleRequired","bundleInsertSuccess","bundleNotFound","bundleTaskCount","bundleTaskNotFound","flagDateRequired","flagUpdateSuccess","projectBudgetCategoryDescriptionRequired","projectBudgetDeleteSuccess","projectBudgetDescriptionExists","projectBudgetInsertSuccess","projectBudgetNotFound","projectBudgetResetSuccess","projectBudgetUpdateSuccess","projectEndDateRequired","projectFundersDeleteSuccess","projectFundersEmpty","projectFundersInsertSuccess","projectStartDateRequired","taskDeleteSuccess","taskEditSuccess","taskInsertSuccess","taskListEmpty","taskNotFound","userProjectArchivedSuccess","userProjectDeleteSuccess","userProjectEndDateRequired","userProjectInsertSuccess","userProjectListEmpty","userProjectNotFound","userProjectStartDateInvalid","userProjectStartDateRequired","userProjectUnarchivedSuccess","userProjectUpdateSuccess","budgetTypeInvalid","bundleDescriptionRequired","bundleNameRequired","bundleTaskRequired","flagAmountInvalid","flagAmountRequired","flagStatusRequired","foundationNameRequired","foundationSourceTypeRequired","profileIdRequired","projectBudgetAmountRequired","projectBudgetDescriptionRequired","projectCostInvalid","projectCostRequired","projectDescriptionRequired","projectNameRequired","projectStatusInvalid","taskDescriptionRequired","taskNameRequired","foundationInsertSuccess","savedSearchDeleteSuccess","savedSearchDescriptionExists","savedSearchInsertSuccess","savedSearchNotFound","savedSearchTypeInvalid","savedSearchUpdateSuccess","descriptionRequired","jsonFieldsRequired","searchTypeRequired","userProjectCompleted","sendOnlineApplicationSuccess","sendSuggestionSuccess","urlRequired","fundersRemovedSuccess","noteSubjectRequired","accountDeleted","userRemovedSuccess","userNameOrEmailRequired","fieldRequired","pickupNewPassword","passwordMinCharacter","enterSameValueAgain","feedbackSubmitted","feedbackInvalidGrantSize","feedbackReviewUpdated","announcementTitleRequired","announcementDescriptionRequired","announcementReleaseDateRequired","announcementReleaseDateInvalid","announcementTypeRequired","announcementNotFound","announcementInsertSuccess","announcementUpdateSuccess","announcementDeleteSuccess","funderDisqualifiedSuccess","funderQualifiedSuccess","funderPausedSuccess","couponNameRequired","couponCodeRequired","couponCodeFormatInvalid","codeLengthInvalid","couponExpirationDateRequired","couponExpirationMaxValue","couponExpirationDateInvalid","couponSubscriptionPlanRequired","couponExtraMonthsAmountInvalid","couponDiscountAmountInvalid","couponCodeAlreadyExist","couponSubscriptionNotFound","couponNotFound","couponSelectType","couponInsertSuccess","couponUpdateSuccess","couponDeleteSuccess","couponPauseUpdateSuccess","deadlineEINRequired","deadlineFoundationNameRequired","deadlineCategoryRequired","deadlineURLRequired","deadlineCountryRequired","deadlineDateInvalid","deadlineAmountToobig","deadlineImportSuccess","deadlineImportSuccessWithWarning","deadlineUpdateSuccess","deadlineDeleteSuccess","deadlineRemovePopupMessage","deadlineReviewCorrectInformation","deadlineInvalidFoundationDataField","deadlineInvalidFoundationDataFields","deadlineImportFilePrompt","thankYouLetterSavedSuccess","impactReportLetterSavedSuccess","historyTypeRequired","startDateRequired","startDateInvalid","dateMin","referralSubmitted","templateApplying","templateApplyWarning","historyTimeline","fuderAdded","funderRemoved","noteAdded","foundationProfileView","customDoc","masterDoc","createdOnProject","deletedOnProject","statusUpdated","onProject","referralNameCharityRequired","referralNameContactRequired","copied_to_clipboard","by_internacional_funding","ReactDOM","Store","getElementById","serviceWorker","ready","registration","unregister","catch","searchType","searchByGivingHistoryV2","getGrantDetails","getGrantDetailsV2","searchByNameV2","searchByDirectorV2","searchByCustomV2","searchByKeyword","searchByKeywordV2","getCountries","getInternacionalCountries","getCitiesByCounties","searchByInternacionalFunding","searchByInternacionalFundingV2","getEnhancedWordsV2","searchDeadlines","getFoundationApplicationByProfileId","useSearchBySearchTypeMutation","useSearchByGivingHistoryMutation","useSearchByGivingHistoryV2Mutation","useGetGrantDetailsMutation","useGetGrantDetailsV2Mutation","useSearchByNameMutation","useSearchByDirectorMutation","useSearchByYearMutation","useSearchByRatingMutation","useSearchByCustomMutation","useSearchByCustomV2Mutation","useSearchByKeywordMutation","useGetCountriesMutation","useGetCountiesMutation","useGetCitiesByCountiesMutation","useGetInternacionalCountriesMutation","useSearchByInternacionalFundingMutation","useSearchByInternacionalFundingV2Mutation","useGetEnhancedWordsV2Mutation","useSearchByNameV2Mutation","useSearchByDirectorV2Mutation","useSearchByKeywordV2Mutation","useSearchDeadlinesMutation","useGetFoundationApplicationByProfileIdMutation","extra","createSubscriptionPlan","getSubscriptionPlanFormatted","updateSubscriptionPlan","getAllSubscriptionPlansPagedList","deleteSubscriptionPlan","applySubscriptionPlanTax","useGetPublicPlansQuery","useGetPlansQuery","useCreateSubscriptionPlanMutation","useGetSubscriptionPlanMutation","useGetSubscriptionPlanFormattedMutation","useUpdateSubscriptionPlanMutation","useGetAllSubscriptionPlansPagedListMutation","useDeleteSubscriptionPlanMutation","useApplySubscriptionPlanTaxMutation","getSEPath","getPublicProfile","getPublicFinancialList","getPublicApplication","filters","codes","getPublicTaxReturn","useGetPublicProfileQuery","useGetPublicFinancialListQuery","useGetPublicApplicationQuery","useGetPublicGiftsPagedListQuery","useGetPublicCountiesMutation","useGetPublicDirectorsPagedListQuery","useGetPublicTaxReturnQuery","useGetPublicChartProvinceListQuery","useGetPublicSectorQuery","useGetPublicRangeAmountListQuery","useGetPublicRangeSectorListQuery","getProjectFundersList","getFunderProjects","funderId","currentProjectId","insertProjectFunders","insertFunderToProjects","getProjectFundersCustomDocument","updateFlag","bulkUpdateFlag","removeManyProjectFunders","removeCurrentFundersFromOtherProjects","selectedProjectIdList","removeFundersFromProjects","useGetAllProjectFundersMutation","useGetAllProjectFundersCustomDocumentMutation","useGetProjectFundersListMutation","useGetFunderProjectsMutation","useInsertProjectFundersMutation","useGetAllProjectFundersProfileIdMutation","useInsertFunderToProjectsMutation","useGetProjectFundersCustomDocumentMutation","useUpdateFlagMutation","useBulkUpdateFlagMutation","useRemoveManyProjectFundersMutation","useRemoveCurrentFundersFromOtherProjectsMutation","useRemoveFundersFromProjectsMutation","useGetAllProjectFundersDocumentMutation","force"],"mappings":"qIAAA,oVAEO,MAAMA,EAFb,MAEwBC,EAAcC,gBAAgB,CACpDC,UAAYC,IAAD,CACTC,eAAgBD,EAAQE,MAAM,CAC5BA,MAAQC,IAAD,CACLC,IACK,wDAAmB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eAClB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,2BACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,qBACxB,OAALL,QAAK,IAALA,OAAA,EAAAA,EAAOM,aAAc,QACxCC,OAAQ,UAGZC,YAAaX,EAAQY,SAAS,CAC5BV,MAAQC,IAAD,CACLC,IACK,8CAAD,OAAcD,QAAd,IAAcA,OAAd,EAAcA,EAAOU,+BACK,OAALV,QAAK,IAALA,OAAA,EAAAA,EAAOW,mBAAoB,qBAC5B,OAALX,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eAClB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,iCACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QAChDE,OAAQ,UAGZK,WAAYf,EAAQY,SAAS,CAC3BV,MAAQC,IAAD,CACLC,IAAM,kCACNM,OAAQ,OACRM,KAAMb,MAGVc,WAAYjB,EAAQY,SAAS,CAC3BV,MAAQC,IAAD,CACLC,IAAM,mCAAkCD,EAAMe,KAC9CR,OAAQ,QACRM,KAAMb,MAGVgB,WAAYnB,EAAQY,SAAS,CAC3BV,MAAQgB,IAAD,CACLd,IAAM,mCAAkCc,IACxCR,OAAQ,aAGZU,cAAepB,EAAQY,SAAS,CAC9BV,MAAQgB,IAAD,CACLd,IAAM,mCAAkCc,eACxCR,OAAQ,WAGZW,iBAAkBrB,EAAQY,SAAS,CACjCV,MAAQgB,GAAQ,6CAA4CA,MAE9DI,oBAAqBtB,EAAQY,SAAS,CACpCV,MAAQC,IAAD,CACLC,IAAM,4CACNM,OAAQ,OACRM,KAAMb,MAGVoB,mBAAoBvB,EAAQY,SAAS,CACnCV,MAAO,QAAC,GAAEgB,EAAF,WAAMM,GAAP,QAAyB,CAC9BpB,IAAM,6CAA4Cc,cAAeM,IACjEd,OAAQ,eAIde,kBAAkB,KAGP,uBACXC,EADW,sBAEXC,EAFW,sBAGXC,EAHW,sBAIXC,EAJW,yBAKXC,EALW,+BAMXC,EANW,4BAOXC,EAPW,8BAQXC,EARW,uBASXC,GACEtC,G,iCCnFJ,kCAAO,MAAMuC,EAAqBC,IAE9B,IAGIC,GAHW,GAAKD,GAAKE,QAAQ,MAAO,IAGpBD,MAAM,gCAE1B,GAAIA,EAAO,CAIT,MAAO,CADSA,EAAM,GAAK,MAAQ,GACjBA,EAAM,GAAI,IAAKA,EAAM,GAAI,IAAKA,EAAM,IAAIE,KAAK,IAGjE,OAAOH,I,iCCbX,oCAMA,MAAMI,EAAgBC,sBAAW,CAAC,EAA8CC,KAAS,IAAD,QAAtD,SAAEC,EAAF,KAAYC,EAAZ,UAAkBC,EAAlB,OAA6BC,EAA7B,MAAqCC,GAAiB,EACpF,MAAMC,EAAiB,CACnBC,MAAO,CAAEC,QAAS,IAClBC,IAAK,CAAED,OAAQ,KAGbE,EAAmB,CACrBC,OAAQC,IACRC,WAAY,UACZC,SAAU,GACVC,KAAM,aAGV,IAAIC,EACAC,EACJ,OAAQd,GACJ,IAAK,KACL,IAAK,OACDa,EAAUZ,EACVa,EAAU,EACV,MAGJ,QACID,EAAU,EACVC,EAAUb,EAIlB,MAAOc,EAAGC,GAAUC,YAASJ,EAASC,IAC/BI,EAAGC,GAAUF,YAASJ,EAASC,GAEtC,OAAQf,GACJ,IAAK,SACD,OACI,cAAC,IAAOqB,IAAR,CACIvB,IAAKA,EACLwB,QAAS,CAAEhB,OAAQ,KACnBiB,WAAY,CACRd,OAAQC,IACRC,WAAY,OACZC,SAAU,EACVY,YAAa,GAPrB,SAUKzB,IAGb,IAAK,QACD,MAAkB,OAAdE,GAAoC,SAAdA,EAElB,cAAC,IAAOoB,IAAR,CACIvB,IAAKA,EACLwB,QAAS,CAAEH,OAASM,IAANN,EAAkBA,EAAI,IACpCO,WAAY,IAAMN,IAClBO,aAAc,IAAMP,IAJxB,SAMKrB,IAKT,cAAC,IAAOsB,IAAR,CAAYvB,IAAKA,EAAKwB,QAAS,CAAEN,OAASS,IAANT,EAAkBA,EAAI,IAAMU,WAAY,IAAMT,IAAUU,aAAc,IAAMV,IAAhH,SACKlB,IAIb,IAAK,SACD,OACI,cAAC,IAAOsB,IAAR,CACIvB,IAAKA,EACLwB,QAAQ,MACRM,QAAQ,QACRC,SAAUzB,EACVmB,WAAYf,EALhB,SAOKT,IAIb,QAOI,MANqB,kBAAVI,IACPA,EAAQ,CACJ2B,MAAO3B,EACP4B,IAAK5B,IAIT,cAAC,IAAOkB,IAAR,CAAYvB,IAAKA,EAAKkC,WAAY,CAAE7B,MAAK,UAAEA,SAAF,aAAE,EAAO2B,OAASG,SAAU,CAAE9B,MAAK,UAAEA,SAAF,aAAE,EAAO4B,KAArF,SACKhC,QAcrBH,EAAcsC,aAAe,CACzBlC,KAAM,QACNE,OAAQ,GACRD,UAAW,QACXE,MAAO,CACH2B,MAAO,EACPC,IAAK,KAIEnC,O,iCCxHf,oEAEO,MAAMuC,EAFb,MAEyBlF,EAAcC,gBAAgB,CACnDC,UAAYC,IAAD,CACPgF,cAAehF,EAAQE,MAAM,CACzBA,MAAO,MACHE,IAAM,sCACNM,OAAQ,UAGhBuE,gBAAiBjF,EAAQY,SAAS,CAC9BV,MAAO,MACHE,IAAM,sCACNM,OAAQ,UAGhBwE,4BAA6BlF,EAAQY,SAAS,CAC1CV,MAAQC,IAAD,CACHC,IAAM,iDACNM,OAAQ,OACRM,KAAMb,QAIlBsB,kBAAkB,KAGT,sBACT0D,EADS,uCAETC,EAFS,2BAGTC,GACAN,G,gCC/BJ,2HAEO,MAAMlF,EAAgByF,YAAU,CACrCC,YAAa,kBACbC,UAAWC,YAAe,CACxBC,QAASC,sDACTC,eAAgB,CAACC,EAAD,KAA4B,IAAlB,SAAEC,GAAe,EAIzC,MAAMC,EAAWC,aAAaC,QAAQ,UAAY,KAWlD,OATAJ,EAAQK,OAAO,kBAAkB,IAAIC,MAAOC,qBAE3B,OAAbL,EACFF,EAAQK,OAAO,gBAAkB,UAASH,KAG1CF,EAAQK,OAAO,8BAA+B,KAGzCL,KAGX9F,UAAW,WAIAsG,EAAkBf,YAAU,CACvCC,YAAa,yBACbC,UAAWC,YAAe,CACxBC,QAASC,6DACTC,eAAgB,CAACC,EAAD,KAA4B,IAAlB,SAAEC,GAAe,EAIzC,MAAMC,EAAWC,aAAaC,QAAQ,UAAY,KASlD,OAPiB,OAAbF,EACFF,EAAQK,OAAO,gBAAkB,UAASH,KAG1CF,EAAQK,OAAO,8BAA+B,KAGzCL,KAGX9F,UAAW,WAGAuG,EAAahB,YAAU,CAClCC,YAAa,yBACbC,UAAWC,YAAe,CACxBC,QAASC,sDACTC,eAAgB,CAACC,EAAD,KAA4B,IAAlB,SAAEC,GAAe,EAGzC,OAFAD,EAAQK,OAAO,kBAAkB,IAAIC,MAAOC,qBAC5CP,EAAQK,OAAO,8BAA+B,KACvCL,KAGX9F,UAAW,Y,iCC7Db,4GAiJewG,IAnIc,IAmBtB,IAnBuB,UAC1BC,GAAY,EADc,QAE1BC,EAF0B,aAG1BC,EAH0B,aAI1BC,EAJ0B,aAK1BC,EAL0B,UAM1BC,EAN0B,UAO1BC,EAP0B,YAQ1BC,GAAc,EARY,KAS1BC,EAAO,KATmB,sBAU1BC,EAAwB,KAVE,wBAW1BC,EAA0B,KAXA,qBAY1BC,GAAuB,EAZG,oBAa1BC,GAAsB,EAbI,YAc1BC,EAAc,SAdY,oBAe1BC,EAAsB,KAfI,yBAgB1BC,EAA2B,KAhBD,UAiB1BC,EAAY,KAjBc,eAkB1BC,EAAiB,MACf,EAEF,OACQ,eAAC,IAAD,CAAQC,KAAMlB,EAAWC,QAASA,EAASkB,WAAS,EAACC,SAAUZ,EAAOa,GAAI,CACtE,qBAAsB,CAClBC,EAAG,EACHC,aAAc,IAHtB,UAMI,cAAC,IAAD,CAAaF,GAAI,CACbG,SAAU,OACVC,QAAS,iBACTC,MAAO,OACPJ,EAAG,aAJP,SAMK,eAAC,IAAD,CAAYK,QAAQ,OAAOC,WAAW,SAASC,IAAK,EAApD,UACIb,EADJ,IACgBd,OAKrB,cAAC,IAAD,CACI,aAAW,QACX4B,QAAS7B,EACToB,GAAI,CACAU,SAAU,WACVC,MAAO,EACPC,IAAK,EACLP,MAAO,QAPf,SAUI,cAAC,IAAD,MAEJ,cAAC,IAAD,CAAeQ,UAAQ,EAAvB,SACI,cAAC,IAAD,CAAMC,WAAS,EAACC,QAAS,EAAzB,SACI,cAAC,IAAD,CAAMC,MAAI,EAACC,GAAI,GAAf,SACI,cAAC,IAAD,CAAYC,QAAQ,KAApB,SACKpC,UAKjB,eAAC,IAAD,CAAekB,GAAI,CAAEmB,GAAI,EAAGC,GAAI,GAAhC,UAEI,cAAC,IAAD,CACIC,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,WACRb,MAAM,YACNI,QAAS,KACDhB,EACAA,IAGAb,KAGRoB,GAAI,CAACsB,WAAY/B,EAAsB,UAAY,UAdvD,SAgBKC,KAGY,IAAhBN,GACG,qCAC+B,OAA1BE,GAA8D,OAA5BC,GAC/B,cAAC,IAAD,CACIgC,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,YACRb,MAAM,YACNkB,QAASvC,EACTyB,QAASpB,EACTW,GAAI,CAACsB,WAAYhC,EAAuB,UAAY,aAChDI,GAA4B,CAAC8B,QAC7B,cAAC,IAAD,CAASC,MAAO/B,EACZM,GAAI,CAAE0B,OAAQ,WADlB,SAEI,cAAC,IAAD,CAAavB,SAAS,aAZlC,SAgBKf,IAIT,cAAC,IAAD,CACIiC,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,YACRb,MAAM,YACNkB,QAASvC,EACTyB,QAASxB,EACTe,GAAI,CAACsB,WAAYhC,EAAuB,UAAY,aAChDM,GAAkB,CAAC4B,QACnB,cAAC,IAAD,CAASC,MAAO7B,EACZI,GAAI,CAAE0B,OAAQ,WADlB,SAEI,cAAC,IAAD,CAAavB,SAAS,aAZlC,SAgBKpB,e,gCCvIjC,ueAEO,MAkCD4C,EAAcC,YAAY,CAC5BC,KAAM,SACNC,aApCwB,CACxBC,QAAS,CACLC,KAAM,GACNP,MAAO,GACPQ,QAAQ,GAEZC,QAAS,CACLH,QAAS,GACTI,SAAU,QACVF,QAAQ,EACRG,OAAQ,GACRC,gBAAgB,GAEpBC,YAAa,CACT,CAAEC,IAAK,eAAgBC,MAAO,4BAC9B,CAAED,IAAK,SAAUC,MAAO,WAE5BC,MAAO,KACPC,UAAW,KACXC,SAAU,CACNC,MAAO,IAEXC,kBAAmB,CACfC,yBAA0B,CACtBC,SAAS,EACTC,UAAU,EACVC,UAAU,EACVC,cAAc,EACdC,cAAc,IAGtBC,iBAAiB,GAMjBC,SAAU,CACNC,mBAAoB,CAACC,EAAOC,KACxBD,EAAMrB,QAAQH,QAAUyB,EAAOC,QAC/BF,EAAMrB,QAAQD,QAAS,EACvBsB,EAAMrB,QAAQC,SAAW,UACzBoB,EAAMrB,QAAQE,OAAS,GACvBmB,EAAMrB,QAAQG,gBAAiB,GAEnCqB,qCAAsC,CAACH,EAAOC,KAC1CD,EAAMrB,QAAQH,QAAUyB,EAAOC,QAC/BF,EAAMrB,QAAQD,QAAS,EACvBsB,EAAMrB,QAAQC,SAAW,UACzBoB,EAAMrB,QAAQE,OAAS,GACvBmB,EAAMrB,QAAQG,gBAAiB,GAEnCsB,sBAAuB,CAACJ,EAAOC,KAC3BD,EAAMrB,QAAQH,QAAUyB,EAAOC,QAAQ1B,QACvCwB,EAAMrB,QAAQD,QAAS,EACvBsB,EAAMrB,QAAQC,SAAW,UACzBoB,EAAMrB,QAAQE,OAASoB,EAAOC,QAAQrB,OACtCmB,EAAMrB,QAAQG,gBAAiB,GAEnCuB,mBAAoB,CAACL,EAAOC,KAAY,IAAD,EACnCD,EAAMrB,QAAQH,QAAUyB,EAAOC,QAAQ1B,QACvCwB,EAAMrB,QAAQD,QAAS,EACvBsB,EAAMrB,QAAQC,SAAW,UACzBoB,EAAMrB,QAAQE,OAAd,UAAuBoB,EAAOC,QAAQrB,cAAtC,QAAgD,GAChDmB,EAAMrB,QAAQG,gBAAiB,GAEnCwB,iBAAkB,CAACN,EAAOC,KACtBD,EAAMrB,QAAQH,QAAUyB,EAAOC,QAC/BF,EAAMrB,QAAQD,QAAS,EACvBsB,EAAMrB,QAAQC,SAAW,QACzBoB,EAAMrB,QAAQE,OAAS,GACvBmB,EAAMrB,QAAQG,gBAAiB,GAEnCyB,aAAc,CAACP,EAAOC,KAClBD,EAAMrB,QAAQH,QAAU,GACxBwB,EAAMrB,QAAQD,QAAS,EACvBsB,EAAMrB,QAAQE,OAAS,GACvBmB,EAAMrB,QAAQG,gBAAiB,GAEnC0B,YAAa,CAACR,EAAOC,KACjBD,EAAMxB,QAAQC,KAAOwB,EAAOC,QAC5BF,EAAMxB,QAAQN,MAAQ,QACtB8B,EAAMxB,QAAQE,QAAS,GAE3B+B,mBAAoB,CAACT,EAAOC,KACxBD,EAAMrB,QAAQH,QAAU,kBACxBwB,EAAMrB,QAAQD,QAAS,EACvBsB,EAAMrB,QAAQC,SAAW,QACzBoB,EAAMrB,QAAQE,OAAS,GACvBmB,EAAMrB,QAAQG,gBAAiB,GAEnC4B,aAAc,CAACV,EAAOC,KAClBD,EAAMxB,QAAQA,QAAU,GACxBwB,EAAMxB,QAAQE,QAAS,GAE3BiC,aAAc,CAACX,EAAOC,KAClBD,EAAMb,UAAYc,EAAOC,SAE7BU,cAAe,CAACZ,EAAOC,KACnBD,EAAMZ,SAAW,IAAKa,EAAOC,UAEjCW,aAAc,CAACb,EAAOC,KAClB,MAAMa,EAAY,IAAId,EAAMZ,SAASC,OAAO0B,KAAIC,IAAI,IAC7CA,EACHC,SAAWD,EAAKlL,KAAOmK,EAAOC,UAAYc,EAAKC,aAEnDjB,EAAMZ,SAASC,MAAQyB,GAE3BI,YAAa,CAAClB,EAAOC,KACjB,MAAMa,EAAY,IAAId,EAAMZ,SAASC,OAAO0B,KAAIC,IAAI,IAC7CA,EACHC,UAAU,MAEdjB,EAAMZ,SAASC,MAAQyB,GAE3BK,4BAA6B,CAACnB,EAAOC,KACjC,MAAM,IAAEjB,EAAF,MAAOC,GAAUgB,EAAOC,QAC9BF,EAAMV,kBAAkBC,yBAAyBP,GAAOC,GAE5DmC,mBAAoB,CAACpB,EAAOC,KACxBD,EAAMH,gBAAkBI,EAAOC,aAK9B,mBACTH,EADS,iBAETO,EAFS,aAGTC,EAHS,YAITC,EAJS,aAKTE,EALS,aAMTC,EANS,sBAOTP,EAPS,mBAQTC,EARS,cASTO,EATS,aAUTC,EAVS,YAWTK,EAXS,mBAYTT,EAZS,4BAaTU,EAbS,qCAcThB,EAdS,mBAeTiB,GACAhD,EAAYiD,QAEDjD,MAAf,S,iCCjJA,sXAEO,MAAMkD,EAFb,MAE8B7M,EAAcC,gBAAgB,CAC1DC,UAAYC,IAAD,CACT2M,OAAQ3M,EAAQY,SAAS,CACvBV,MAAQC,IAAD,CACLC,IACW,oDAAmB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eAClB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOyM,aAAc,kBAChB,OAALzM,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,0BACd,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAO0M,eAAgB,2BAChB,OAAL1M,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QACtDE,OAAQ,UAGZoM,kBAAmB9M,EAAQY,SAAS,CAChCV,MAAQC,IAAD,CACHC,IAAM,sCACNM,OAAQ,OACRM,KAAMb,MAGd4M,kBAAmB/M,EAAQY,SAAS,CAChCV,MAAO,QAAC,GAACgB,KAAOf,GAAT,QAAqB,CACxBC,IAAM,uCAAsCc,IAC5CR,OAAQ,QACRM,KAAMb,MAGd6M,kBAAmBhN,EAAQY,SAAS,CAChCV,MAAQgB,IAAD,CACHd,IAAM,uCAAsCc,IAC5CR,OAAQ,aAGhBuM,eAAgBjN,EAAQY,SAAS,CAC7BV,MAAQgB,IAAD,CACHd,IAAM,+CAA8Cc,IACpDR,OAAQ,YAGhBwM,iBAAkBlN,EAAQY,SAAS,CAC/BV,MAAQgB,IAAD,CACHd,IAAM,iDAAgDc,IACtDR,OAAQ,YAGhByM,eAAgBnN,EAAQE,MAAM,CAC1BA,MAAO,MACLE,IAAM,mDACNM,OAAQ,UAGd0M,0BAA2BpN,EAAQY,SAAS,CACxCV,MAAO,MACLE,IAAM,mDACNM,OAAQ,UAGd2M,+BAAgCrN,EAAQY,SAAS,CAC7CV,MAAQgB,IAAD,CACLd,IAAM,8CAA6Cc,IACnDR,OAAQ,YAGd4M,6BAA8BtN,EAAQY,SAAS,CAC3CV,MAAQgB,IAAD,CACLd,IAAM,iDAAgDc,IACtDR,OAAQ,cAIhBe,kBAAkB,KAGP,kBACT8L,EADS,6BAETC,EAFS,6BAGTC,EAHS,6BAITC,EAJS,0BAKTC,EALS,4BAMTC,EANS,uBAOTC,EAPS,qCAQTC,EARS,0CASTC,EATS,wCAUTC,GACAtB,G,iCCvFJ,+CA+CeuB,IA3CY,IASpB,IATqB,KACxBvE,EADwB,MAExBW,EAFwB,MAGxB6D,EAHwB,SAIxBC,EAJwB,SAKxBC,EALwB,MAMxBC,EANwB,MAOxBC,EAPwB,SAQxBC,GACE,EAEF,MAAM,EAAEC,GAAMC,cAQd,OACI,cAAC,IAAD,CACIC,KARM,CACVC,MAAO,CAAC,IAAK,IAAK,IAAK,IAAK,QAAS,KAAM,KAAM,IAAK,IAAK,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,MACpGC,WAAY,CAAC,QAAS,MACtBC,YAAa,CAAC,QAAS,QAAS,QAAS,UAKzBT,GACZU,UAAU,eACVC,OAAO,EACP7N,GAAIwI,EACJyE,SAAUA,EACVa,OAAQ,CAACtM,EAAKuM,IACV,cAAC,IAAD,CACItH,WAAS,EACTuG,MAAOA,EACPgB,SAAUxM,KAASuM,EACnB5E,MAAOA,EACPtB,QAAQ,cACJsF,GAAS,CAACc,WAAYX,EAAEH,GAAQA,OAAO,GAC3CE,SAAUA,EACV1G,GAAI,IAAKyG,EAAMc,WAAWC,mB,iCCvC9C,0KAEO,MAAMC,EAFb,MAE2BzP,EAAcC,gBAAgB,CACvDC,UAAYC,IAAD,CACTuP,qBAAsBvP,EAAQY,SAAS,CACrCV,MAAQC,IAAD,CACHC,IACO,+CAAqB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAOqP,eAAgB,qBACpB,OAALrP,QAAK,IAALA,OAAA,EAAAA,EAAOyM,aAAc,kBAChB,OAALzM,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eAClB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,8BACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QAClDE,OAAQ,UAGd+O,aAAczP,EAAQY,SAAS,CAC7BV,MAAQgB,IAAD,CACLd,IAAM,gCAA+Bc,kBACnCR,OAAQ,WAGdgP,qBAAsB1P,EAAQY,SAAS,CACrCV,MAAO,QAAC,GAACgB,EAAD,aAAKyO,GAAN,QAAyB,gCAA+BzO,KAAMyO,OAIvEC,eAAgB5P,EAAQY,SAAS,CAC7BV,MAAQC,IAAD,CACLC,IAAM,oCACNM,OAAQ,OACRM,KAAMb,QAIdsB,kBAAkB,KAGP,gCACXoO,EADW,wBAEXC,EAFW,0BAGXC,EAHW,gCAIXC,GACEV,G,iCC1CJ,sEAOA,MAAMW,EAAW,CACb,0BAA2B,CAAEC,GAAI,IAK/BC,EAAW1N,sBACb,CAAC,EAeGC,KACE,IAfF,OACI0N,GAAS,EADb,UAEIC,EAFJ,SAGI1N,EAHJ,QAII2N,GAAU,EAJd,aAKIC,EAAe,GALnB,UAMIC,EAAY,GANhB,UAOIC,EAPJ,UAQIC,EARJ,OASIC,EATJ,GAUI9I,EAAK,GAVT,MAWIyB,KACGsH,GAGN,EACD,MAAMtC,EAAQuC,cAEd,OACI,eAAC,IAAD,CACInO,IAAKA,KACDkO,EACJ/I,GAAI,CACAuI,OAAQ,OACRU,YAAoC,SAAvBxC,EAAMyC,QAAQC,KAAkB1C,EAAMyC,QAAQE,WAAWC,QAAU5C,EAAMyC,QAAQI,QAAQ,KAAO,GAC7Gd,UAAW,8CACRxI,GAPX,WAWM4I,GAAanH,GAAS,cAAC,IAAD,CAAYzB,GAAIoI,EAAU3G,MAAOA,EAAO+B,OAAQqF,IACvED,GAAanH,GACV,cAAC,IAAD,CAAYzB,GAAIoI,EAAU3G,MAAO,cAAC,IAAD,CAAYP,QAAQ,KAApB,SAA0BO,IAAqB+B,OAAQqF,IAI3FpH,GAAS,cAAC,IAAD,IAGTgH,GACG,cAAC,IAAD,CAAazI,GAAI2I,EAAW1B,UAAWyB,EAAvC,SACK5N,KAGP2N,GAAW3N,QAoBdwN,O,iCChFf,oVAEO,MAAMiB,EAFb,MAE4BvR,EAAcC,gBAAgB,CACtDC,UAAYC,IAAD,CACPqR,sBAAuBrR,EAAQY,SAAS,CACpCV,MAAQC,IAAD,CACHC,IACO,mDAAkB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eACjB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,8BACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QAClDE,OAAQ,UAGhB4Q,4BAA6BtR,EAAQY,SAAS,CAC1CV,MAAQC,IAAD,CACHC,IACO,0DAAkB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eACjB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,8BACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QAClDE,OAAQ,UAGhB6Q,iBAAkBvR,EAAQY,SAAS,CAC/BV,MAAQC,IAAD,CACHC,IAAM,2CACNM,OAAQ,UAGhB8Q,mBAAoBxR,EAAQY,SAAS,CACjCV,MAAO,MACHE,IAAM,6CACNM,OAAQ,UAGhB+Q,gBAAiBzR,EAAQY,SAAS,CAC9BV,MAAQC,IAAD,CACHC,IAAM,sCACNM,OAAQ,OACRM,KAAMb,MAGduR,mBAAoB1R,EAAQY,SAAS,CACjCV,MAAO,QAAC,GAACgB,KAAOf,GAAT,QAAqB,CACxBC,IAAM,uCAAsCc,IAC5CR,OAAQ,OACRM,KAAMb,MAGdwR,gBAAiB3R,EAAQY,SAAS,CAC9BV,MAAO,QAAC,GAACgB,KAAOf,GAAT,QAAqB,CACxBC,IAAM,uCAAsCc,IAC5CR,OAAQ,QACRM,KAAMb,MAGdyR,gBAAiB5R,EAAQY,SAAS,CAC9BV,MAAO,QAAC,GAACgB,KAAOf,GAAT,QAAqB,CACxBC,IAAM,uCAAsCc,IAC5CR,OAAQ,SACRM,KAAMb,MAGd0R,sBAAuB7R,EAAQY,SAAS,CACpCV,MAAO,QAAC,GAACgB,KAAOf,GAAT,QAAqB,CACxBC,IAAM,uCAAsCc,IAC5CR,OAAQ,SACRM,KAAMb,QAIlBsB,kBAAkB,KAGT,4BACTqQ,EADS,iCAETC,EAFS,2BAGTC,EAHS,2BAITC,EAJS,2BAKTC,EALS,8BAMTC,EANS,uCAOTC,EAPS,iCAQTC,EARS,8BASTC,GACAlB,G,iCCrFJ,wIAEO,MAAMmB,EAFb,MAEsC1S,EAAcC,gBAAgB,CAClEC,UAAYC,IAAD,CACTwS,uBAAwBxS,EAAQY,SAAS,CACvCV,MAAO,MACLE,IAAM,2CACNM,OAAQ,UAGZ+R,sBAAuBzS,EAAQY,SAAS,CACtCV,MAAO,MACLE,IAAM,+DACNM,OAAQ,UAIZgS,0BAA2B1S,EAAQY,SAAS,CAC1CV,MAAQC,IAAD,CACLC,IAAM,2CACNM,OAAQ,QACRM,KAAMb,QAIZsB,kBAAkB,KAGP,kCAAEkR,EAAF,qCAAqCC,EAArC,iCAA4EC,GAAqCN,G,iCC5B9H,gRAEO,MAAMO,EAFb,MAEyBjT,EAAcC,gBAAgB,CACnDC,UAAYC,IAAD,CACP+S,mBAAoB/S,EAAQY,SAAS,CACjCV,MAAQC,IAAD,CACHC,IACW,0CAAkB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAO6S,aAAa,iBACd,OAAL7S,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eAClB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,0BACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QACtDE,OAAQ,UAGhBuS,sBAAuBjT,EAAQY,SAAS,CACpCV,MAAO,IAAO,yCAElBgT,aAAclT,EAAQY,SAAS,CAC3BV,MAAQC,IAAD,CACHC,IAAM,6BACNM,OAAQ,OACRM,KAAMb,MAGdgT,aAAcnT,EAAQY,SAAS,CAC3BV,MAAO,QAAC,GAACgB,KAAOf,GAAT,QAAqB,CACxBC,IAAM,8BAA6Bc,IACnCR,OAAQ,QACRM,KAAMb,MAGdiT,aAAcpT,EAAQY,SAAS,CAC3BV,MAAQgB,IAAD,CACHd,IAAM,8BAA6Bc,IACnCR,OAAQ,aAGhB2S,YAAarT,EAAQY,SAAS,CAC1BV,MAAO,QAAC,GAACgB,KAAOf,GAAT,QAAqB,CACxBC,IAAM,8BAA6Bc,WACnCR,OAAQ,QACRM,KAAMb,MAGdmT,eAAgBtT,EAAQE,MAAM,CAC1BA,MAAO,IAAO,uCAGtBuB,kBAAkB,KAGT,8BACT8R,EADS,iCAETC,EAFS,wBAGTC,EAHS,wBAITC,EAJS,wBAKTC,EALS,uBAMTC,EANS,uBAOTC,GACAf,G,iCC5DJ,sCA8DegB,IAvDa,IAcrB,IAdsB,GACzB5S,EADyB,MAEzBgN,EAFyB,MAGzB7D,EAHyB,SAIzB8D,EAJyB,MAKzBE,EALyB,GAMzBxG,EANyB,MAOzByG,EAPyB,QAQzByF,EARyB,SASzBC,EATyB,QAUzB5K,GAAU,EAVe,QAWzB6K,EAXyB,KAYzBjN,EAAO,SAZkB,SAazBuH,GACE,EAEF,MAAM,EAAEC,GAAMC,cAEd,OAEI,cAAC,IAAD,CACIyF,cAAY,EACZhT,GAAIA,EACJmJ,MAAOA,EACP8J,qBAAsB,CAACC,EAAQ/J,IAAU+J,EAAO/J,QAAUA,EAC1D8D,SAAUA,EACV6F,SAAUA,EACV5K,QAASA,EACTpC,KAAMA,KACFiN,GAAW,CAAEA,QAASA,GAC1BI,kBAAkB,EAClBC,YAAcC,GACV,cAAC,IAAD,IACQA,EACJ5M,WAAS,KACL0G,GAAS,CAACc,WAAYX,EAAEH,GAAQA,OAAO,MACvCH,GAAS,CAACA,MAAOA,GACrB8F,SAAUA,EACVnM,GAAI,CAAE,MAAS,CAAE2M,OAAQ,GAAIC,YAAa,SAC1C1L,QAAQ,WACRO,MAAOe,EACPkE,SAAUA,IAGlBwF,QAASA,EACTlM,GAAIA,M,iCCpDhB,wIAEO,MAAM6M,EAFb,MAE2B7U,EAAcC,gBAAgB,CACrDC,UAAYC,IAAD,CACP2U,gBAAiB3U,EAAQE,MAAM,CAC3BA,MAAO,MACHE,IAAM,yCACNM,OAAQ,UAGhBkU,gCAAiC5U,EAAQY,SAAS,CAC9CV,MAAQC,IAAD,CACHC,IAAM,oDACNM,OAAQ,OACRM,KAAMb,MAGd0U,yCAA0C7U,EAAQY,SAAS,CACvDV,MAAQC,IAAD,CACHC,IAAM,8DACNM,OAAQ,OACRM,KAAMb,QAIlBsB,kBAAkB,KAGT,wBACTqT,EADS,2CAETC,EAFS,oDAGTC,GACAN,G,iCChCW,QAA0B,wC,iCCAzC,gRAEO,MAAMO,EAFb,MAEgCpV,EAAcC,gBAAgB,CAC5DC,UAAYC,IAAD,CACLkV,sBAAuBlV,EAAQY,SAAS,CACpCV,MAAQC,IAAD,CACHC,IACO,wDAAqB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAOgV,gBAAiB,oCAErB,OAALhV,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eAClB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,iCACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QAClDE,OAAQ,UAGhB0U,uBAAwBpV,EAAQY,SAAS,CACrCV,MAAQC,IAAD,CACHC,IACO,wDAAqB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAOgV,gBAAiB,qCAErB,OAALhV,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eAClB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,iCACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QAClDE,OAAQ,UAGhB2U,aAAcrV,EAAQY,SAAS,CAC3BV,MAAQC,IAAD,CACHC,IAAM,wCACNM,OAAQ,OACRM,KAAMb,MAGdmV,YAAatV,EAAQY,SAAS,CAC1BV,MAAQC,IAAD,CACHC,IAAM,+CAA8CD,EAAMoV,cAAcpV,EAAMgV,gBAC9EzU,OAAQ,UAGhB8U,aAAcxV,EAAQY,SAAS,CAC3BV,MAAO,QAAC,cAAEiV,EAAF,WAAiBI,EAAjB,eAA6BE,GAA9B,QAAoD,CACvDrV,IAAM,yCAAwCmV,KAAcJ,IAC5DzU,OAAQ,SACRM,KAAMyU,MAGdC,sBAAuB1V,EAAQY,SAAS,CACpCV,MAAO,QAAC,cAAEiV,EAAF,WAAiBI,EAAjB,eAA6BE,GAA9B,QAAoD,CACvDrV,IAAM,yCAAwCmV,eAAwBJ,IACtEzU,OAAQ,SACRM,KAAMyU,MAGdE,aAAc3V,EAAQY,SAAS,CAC3BV,MAAO,QAAC,GAAEgB,KAAOf,GAAV,QAAuB,CAC1BC,IAAM,yCAAwCc,IAC9CR,OAAQ,QACRM,KAAMb,QAIpBsB,kBAAkB,KAGP,iCACTmU,EADS,kCAETC,EAFS,wBAGTC,EAHS,uBAITC,EAJS,wBAKTC,EALS,iCAMTC,EANS,wBAOTC,GACAjB,G,iCC1EJ,0KAEO,MAAMkB,EAFb,MAE2BtW,EAAcC,gBAAgB,CACrDC,UAAYC,IAAD,CACPoW,qBAAsBpW,EAAQY,SAAS,CACnCV,MAAQC,IAAD,CACHC,IACO,mDAAmB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eAClB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,0BACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QAClDE,OAAQ,UAGhB2V,eAAgBrW,EAAQY,SAAS,CAC7BV,MAAQC,IAAD,CACHC,IAAM,4CACNM,OAAQ,OACRM,KAAMb,MAGdmW,eAAgBtW,EAAQY,SAAS,CAC7BV,MAAO,QAAC,GAAEgB,KAAOf,GAAV,QAAuB,CAC1BC,IAAM,sCAAqCc,IAC3CR,OAAQ,QACRM,KAAMb,MAGdoW,eAAgBvW,EAAQY,SAAS,CAC7BV,MAAQgB,IAAD,CACHd,IAAM,sCAAqCc,IAC3CR,OAAQ,eAIpBe,kBAAkB,KAGT,gCACT+U,EADS,0BAETC,EAFS,0BAGTC,EAHS,0BAITC,GACAR,G,iCC3CJ,8DAkDeS,IA7Cc,IAStB,IATuB,KAC5BlN,EAD4B,MAE5BW,EAF4B,MAG5B6D,EAH4B,UAI5B2I,EAJ4B,MAK5BxI,EAAQ,GALoB,MAM5BC,EAN4B,SAO5BH,EAP4B,SAQ5BI,GACI,EACJ,MAAOuI,EAAcC,GAAmBC,oBAAS,GAQjD,OACE,cAAC,IAAD,CACEtN,KAAMA,EACNW,MAAOA,EACP6D,MAAOA,EACPtL,KAAMkU,EAAe,OAAS,WAC9BD,UAAWA,EACXxI,MAAOA,EACPC,MAAOA,EACPH,SAAUA,EACVI,SAAUA,EACV0I,aACE,cAAC,IAAD,CAAgB1O,SAAS,MAAzB,SACE,cAAC,IAAD,CACE,aAAW,6BACXD,QArBsB,IAAMyO,GAAiBG,IAAUA,IAsBvDC,YApBuBC,IAC/BA,EAAEC,kBAoBMC,KAAK,MAJP,SAMGR,EAAe,cAAC,IAAD,IAAoB,cAAC,IAAD,Y,iCC1ChD,oEAEA,MAAMS,EAFN,MAEiB1X,EAAcC,gBAAgB,CAC7CC,UAAYC,IAAD,CACTwX,MAAOxX,EAAQY,SAAS,CACtBV,MAAQC,IAAD,CACLC,IAAM,4BACNM,OAAQ,OACRM,KAAMb,MAIVsX,OAAQzX,EAAQY,SAAS,CACvBV,MAAO,MACLE,IAAM,4BACNM,OAAQ,eAKde,kBAAkB,KAGP,iBAAEiW,EAAF,kBAAoBC,GAAsBJ,G,iCCvBvD,4MAEO,MAAMK,EAFb,MAEkC/X,EAAcC,gBAAgB,CAC5DC,UAAYC,IAAD,CACP6X,4BAA6B7X,EAAQY,SAAS,CAC1CV,MAAQC,IAAD,CACHC,IACO,0DAAkB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAO2X,aAAc,kBACf,OAAL3X,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eAClB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,8BACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QAClDE,OAAQ,UAGhBqX,oBAAqB/X,EAAQY,SAAS,CAClCV,MAAO,QAAC,sBAAC8X,EAAD,sBAAwBC,GAAzB,QAAsD,CACzD7X,IAAM,mDAA2E,OAA1B4X,EAAiC,GAAK,IAAMA,GACnGtX,OAAQ,OACRM,KAAM,IAAIiX,OAGlBC,sBAAuBlY,EAAQY,SAAS,CACpCV,MAAQC,IAAD,CACHC,IAAM,6CACNM,OAAQ,OACRM,KAAMb,MAGdgY,sBAAuBnY,EAAQY,SAAS,CACpCV,MAAO,QAAC,WAAC4X,EAAD,cAAaM,GAAd,QAAkC,CACrChY,IAAM,8CAA6C0X,IACnDpX,OAAQ,SACRM,KAAM,IAAIoX,OAGlBC,oBAAqBrY,EAAQY,SAAS,CAClCV,MAAQC,IAAD,CACHC,IAAM,sDAAqDD,EAAMmY,oBAAoBnY,EAAMoY,cAC3F7X,OAAQ,aAIpBe,kBAAkB,KAGT,uCACT+W,EADS,iCAETC,EAFS,iCAGTC,EAHS,+BAITC,EAJS,+BAKTC,GACAhB,G,iCCpDJ,sGAEA,MAAMiB,EAFN,MAEsBhZ,EAAcC,gBAAgB,CAClDC,UAAYC,IAAD,CACT8Y,eAAgB9Y,EAAQY,SAAS,CAC/BV,MAAO,QAAC,qBAAC6Y,EAAD,MAAuB5Y,GAAxB,QAAoC,CACzCC,IAAM,mCAAkC2Y,IACxCrY,OAAQ,OACRM,KAAMb,MAGV6Y,cAAehZ,EAAQY,SAAS,CAC9BV,MAAQ6Y,IAAD,CACL3Y,IAAM,mCAAkC2Y,IACxCrY,OAAQ,UAGZuY,yBAA0BjZ,EAAQY,SAAS,CACvCV,MAAO,QAAC,qBAAE6Y,EAAF,WAAwBG,GAAzB,QAA2C,CAC9C9Y,IAAM,mCAAkC2Y,eAAkCG,IAC1ExY,OAAQ,aAIlBe,kBAAkB,KAGP,0BACT0X,EADS,yBAETC,EAFS,oCAGTC,GACAR,G,iCC/BJ,wIAEO,MAAMS,EAFb,MAEgCzZ,EAAcC,gBAAgB,CAC1DC,UAAYC,IAAD,CACPuZ,YAAavZ,EAAQE,MAAM,CACvBA,MAAO,MACHE,IAAM,yDACNM,OAAQ,UAGhB8Y,oBAAqBxZ,EAAQY,SAAS,CAClCV,MAAQC,IAAD,CACHC,IAAM,mDACNM,OAAQ,OACRM,KAAMb,MAGdsZ,iBAAkBzZ,EAAQY,SAAS,CAC/BV,MAAQiV,IAAD,CACH/U,IAAM,oDAAmD+U,IACzDzU,OAAQ,YAIpBe,kBAAkB,KAGT,oBACTiY,EADS,+BAETC,EAFS,4BAGTC,GACAN,G,iCC/BJ,wIAEO,MAAMO,EAFb,MAEiCha,EAAcC,gBAAgB,CAC3DC,UAAYC,IAAD,CACP8Z,oBAAqB9Z,EAAQE,MAAM,CAC/BA,MAAO,MACHE,IAAM,0DACNM,OAAQ,UAGhBqZ,qBAAsB/Z,EAAQY,SAAS,CACnCV,MAAQC,IAAD,CACHC,IAAM,oDACNM,OAAQ,OACRM,KAAMb,MAGd6Z,kBAAmBha,EAAQY,SAAS,CAChCV,MAAQiV,IAAD,CACH/U,IAAM,qDAAoD+U,IAC1DzU,OAAQ,YAIpBe,kBAAkB,KAGT,4BACTwY,EADS,gCAETC,EAFS,6BAGTC,GACAN,G,iCC/BJ,wIAEO,MAAMO,EAFb,MAE+Bva,EAAcC,gBAAgB,CACzDC,UAAYC,IAAD,CACPqa,kBAAmBra,EAAQE,MAAM,CAC7BA,MAAO,MACHE,IAAM,wDACNM,OAAQ,UAGhB4Z,mBAAoBta,EAAQY,SAAS,CACjCV,MAAQC,IAAD,CACHC,IAAM,kDACNM,OAAQ,OACRM,KAAMb,MAGdoa,gBAAiBva,EAAQY,SAAS,CAC9BV,MAAQiV,IAAD,CACH/U,IAAM,mDAAkD+U,IACxDzU,OAAQ,YAIpBe,kBAAkB,KAGT,0BACT+Y,EADS,8BAETC,EAFS,2BAGTC,GACAN,G,iCC/BJ,wIAEO,MAAMO,EAFb,MAEiC9a,EAAcC,gBAAgB,CAC3DC,UAAYC,IAAD,CACP4a,oBAAqB5a,EAAQE,MAAM,CAC/BA,MAAO,MACHE,IAAM,2DACNM,OAAQ,UAGhBma,2BAA4B7a,EAAQY,SAAS,CACzCV,MAAQC,IAAD,CACHC,IAAM,qDACNM,OAAQ,OACRM,KAAMb,MAGd2a,kBAAmB9a,EAAQY,SAAS,CAChCV,MAAQiV,IAAD,CACH/U,IAAM,sDAAqD+U,IAC3DzU,OAAQ,YAIpBe,kBAAkB,KAGT,4BACTsZ,EADS,sCAETC,EAFS,6BAGTC,GACAN,G,iCC/BJ,wIAEO,MAAMO,EAFb,MAEqCrb,EAAcC,gBAAgB,CAC/DC,UAAYC,IAAD,CACPmb,wBAAyBnb,EAAQE,MAAM,CACnCA,MAAO,MACHE,IAAM,+DACNM,OAAQ,UAGhB0a,+BAAgCpb,EAAQY,SAAS,CAC7CV,MAAQC,IAAD,CACHC,IAAM,yDACNM,OAAQ,OACRM,KAAMb,MAGdkb,sBAAuBrb,EAAQY,SAAS,CACpCV,MAAQiV,IAAD,CACH/U,IAAM,0DAAyD+U,IAC/DzU,OAAQ,YAIpBe,kBAAkB,KAGT,gCACT6Z,EADS,0CAETC,EAFS,iCAGTC,GACAN,G,iCC/BJ,qDAIO,MAAMO,EAAWC,OAAOC,OAAO,CAClCC,gBAAiB,oBACjBC,UAAW,aACXC,OAAQ,UACRC,WAAY,cACZC,OAAQ,UACRC,kBAAmB,uBACnBC,SAAU,aACVC,aAAc,iBACdC,SAAU,aACVC,uBAAwB,2BACxBC,SAAU,YACVC,kBAAmB,qBACnBC,oBAAqB,0BAuIVC,IAhIO,CAAC/S,EAAMgT,KAEzB,MAAMC,EAAQjB,OAAOC,OAAO,CACxB,CAACF,EAASG,iBAAkB,CACxBgB,GAAIC,IACJC,GAAID,KAER,CAACpB,EAASI,WAAY,CAClBe,GAAIC,IACJC,GAAID,KAER,CAACpB,EAASK,QAAS,CACfc,GAAIC,IACJC,GAAID,KAER,CAACpB,EAASM,YAAa,CACnBa,GAAIC,IACJC,GAAID,KAER,CAACpB,EAASO,QAAS,CACfY,GAAIC,IACJC,GAAID,KAER,CAACpB,EAASQ,mBAAoB,CAC1BW,GAAIC,IACJC,GAAID,KAER,CAACpB,EAASS,UAAW,CACjBU,GAAIC,IACJC,GAAID,KAER,CAACpB,EAASU,cAAe,CACrBS,GAAIC,IACJC,GAAID,KAER,CAACpB,EAASW,UAAW,CACjBQ,GAAIC,IACJC,GAAID,KAER,CAACpB,EAASY,wBAAyB,CAC/BO,GAAIC,IACJC,GAAID,KAER,CAACpB,EAASa,UAAW,CACjBM,GAAIC,IACJC,GAAID,KAER,CAACpB,EAASc,mBAAoB,CAC1BK,GAAIC,IACJC,GAAID,KAER,CAACpB,EAASe,qBAAsB,CAC5BI,GAAIC,IACJC,GAAID,OAwEZ,OAzBAE,qBAAU,KACN,GAAY,OAATrT,QAA0BrF,IAATqF,EAChB,OAEJ,MAAMW,EAAQrE,aAAaC,QAAQyD,GAE7BsT,EADY,IAAIC,gBAAgBC,OAAOC,SAASC,QACrBC,IAAI,WAErC,GAAa,OAAVhT,EAAgB,OAEnB,GAAuB,SAAnB2S,EAA2B,OAE/B,MAAMM,EAAmC,oBAAfZ,EACxBA,EAAWC,EAAMjT,GAAMW,IACvB,IAAIkT,IAAIZ,EAAMjT,GAAMW,GAAQ6S,OAAOC,SAASK,QAzD7B,EAACC,EAAOC,KACzB,MAAMC,EAASF,EAAMnb,QAAQ,WAAY,IAAIsb,MAAM,KAC7CC,EAASH,EAAMpb,QAAQ,WAAY,IAAIsb,MAAM,KAEnD,IAAIE,GAAS,EAGb,MAAMjH,EAAYkH,KAAKC,IAAIL,EAAOM,OAAQJ,EAAOI,QACjD,IAAK,IAAIC,EAAI,EAAGA,EAAIrH,EAAWqH,KACfP,EAAOO,IAAM,OACbL,EAAOK,IAAM,MAEzBJ,GAAS,GAIb,OAAOA,GA2CQK,CAAajB,OAAOC,SAASiB,SAAUd,EAAWc,WAG7DlB,OAAOC,SAAS7a,QAAQgb,KAI7B,IAEI,CAAEe,cA1Ca,KAClB,GAAY,OAAT3U,QAA0BrF,IAATqF,EAChB,OAEJ,IAAI4U,EAAY,KACZC,EAAiBvY,aAAaC,QAAQyD,GAEpB,OAAnB6U,IACCD,EAA+B,OAAnBC,EAA0B,KAAO,MAEjDvY,aAAawY,QAAQ9U,EAAM4U,GAE3BpB,OAAOC,SAAS7a,QAA8B,oBAAfoa,EACzBA,EAAWC,EAAMjT,GAAM4U,IACvB,IAAIf,IAAIZ,EAAMjT,GAAM4U,GAAYpB,OAAOC,SAASK,UA4BlCiB,cAjDD/U,IACnB,IAAIgV,EAAU1Y,aAAaC,QAAQyD,GACnC,OAAe,OAAZgV,EAAyB,KAErB/B,EAAMjT,GAAMgV,O,iCCxG3B,wIAEO,MAAMC,EAFb,MAEgC9e,EAAcC,gBAAgB,CAC5DC,UAAYC,IAAD,CACT4e,aAAc5e,EAAQY,SAAS,CAC7BV,MAAQC,IAAD,CACLC,IACK,sDAAmB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eAClB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOyM,aAAc,kBAChB,OAALzM,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,0BACd,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAO0M,eAAgB,2BAChB,OAAL1M,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QAChDE,OAAQ,UAGZme,qBAAsB7e,EAAQE,MAAM,CAClCA,MAAQC,IAAD,CACLC,IACK,sDAAmB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eAClB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOyM,aAAc,kBAChB,OAALzM,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,0BACd,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAO0M,eAAgB,2BAChB,OAAL1M,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QAChDE,OAAQ,UAGZoe,gCAAiC9e,EAAQY,SAAS,CAChDV,MAAO,MACLE,IAAM,iEAGNM,OAAQ,YAIde,kBAAkB,KAGP,6BACXsd,EADW,2CAEXC,EAFW,wBAGXC,GACEN,G,iCC5CJ,yEA2FeO,IA/Ea,IAWrB,IAXsB,MACzB5V,EADyB,KAEzB6V,EAFyB,KAGzBzX,GAAO,EAHkB,QAIzBjB,EAJyB,SAKzB9D,EALyB,mBAMzByc,EAAmB,GANM,mBAOzBC,EAAmB,GAPM,SAQzBzX,EAAS,KACT0X,eAAgBC,KACb3O,GACD,EAEF,OACI,eAAC,IAAD,CACIlJ,KAAMA,EACNjB,QAASA,EACTkB,WAAS,EACTC,SAAUA,KACNgJ,EACJ/I,GAAI,CACA,qBAAsB,CAClBC,EAAG,EACHC,aAAc,MAEf6I,EAAO/I,IAXlB,UAcI,cAAC,IAAD,CAAaA,GAAI,CACbG,SAAU,OACVC,QAAS,iBACTC,MAAO,OACPJ,EAAG,aAJP,SAMI,eAAC,IAAD,CAAYK,QAAQ,OAAOC,WAAW,SAASC,IAAK,EAApD,UACK8W,EADL,IACY7V,OAGhB,cAAC,IAAD,CACI,aAAW,QACXhB,QAAS7B,EACToB,GAAI,CACAU,SAAU,WACVC,MAAO,EACPC,IAAK,EACLP,MAAO,QAPf,SAUI,cAAC,IAAD,MAGJ,cAAC,IAAD,CACIQ,UAAQ,KACJ0W,EACJvX,GAAI,CACAC,EAAG,EACH0X,UAAW,OACXhL,OAAQ,UACL4K,EAAmBvX,IAP9B,SAUKlF,IAEJ4c,GACG,cAAC,IAAD,IACQF,EACJxX,GAAI,IACGwX,EAAmBxX,GACtBmB,GAAI,GACJC,GAAI,IALZ,SAQKsW,S,iCCpFrB,mGA6EiBE,IA/DO,IAYf,IAZgB,KACnB/V,EADmB,MAEnBW,EAFmB,MAGnB6D,EAHmB,MAInBG,EAJmB,SAKnBE,EALmB,MAMnBD,EANmB,SAOnBH,EAPmB,QAQnB/E,EARmB,KASnBsW,EAAO,GATY,SAUnB1L,EAVmB,GAWnBnM,GACE,EAEJ,MAAM,EAAE2G,GAAMC,cAEd,OACI,eAAC,IAAD,CACI9G,WAAS,EACT0G,MAAiB,KAAVA,EACPE,SAAUA,EACV1G,GAAI,IAAKyG,EAAMc,WAAWuQ,sBAAuB9X,GACjDmM,SAAUA,EALd,UAOI,cAAC,IAAD,CAAY9S,GAAK,GAAEwI,SAAnB,SACKwE,IAEJ9E,GACG,cAAC,IAAD,CAAkBlB,MAAM,UAAUlB,KAAM,GAAI4Y,MAAO,CAACrX,SAAU,WAAYsX,OAAQ,IAAKpX,IAAK,OAAQD,MAAO,UAE/G,cAAC,IAAD,CACItH,GAAIwI,EACJoW,QAAU,GAAEpW,SACZwE,MAAOA,EACP7D,MAAOA,EACP8D,SAAUA,EALd,SAOCuR,EAAKvT,KAAKtD,GACP,cAAC,IAAD,CAAyBwB,MAAOxB,EAAKwB,MAArC,SACI,eAAC,IAAD,CAAM1B,WAAS,EAACoX,eAAe,gBAA/B,UACI,cAAC,IAAD,CAAMlX,MAAI,EAAV,SACI,cAAC,IAAD,UAAeA,EAAKgB,SAExB,cAAC,IAAD,CAAMhB,MAAI,EAAV,SACCA,EAAKmX,WACD,cAAC,IAAD,CAAYjX,QAAQ,UAAUlB,GAAI,CAAEoY,aAAc,QAAlD,SACIpX,EAAKmX,kBARPnX,EAAKuB,SAgBb,KAAViE,GACG,cAAC,IAAD,CAAgBA,OAAK,EAACnN,GAAK,GAAEwI,SAA7B,SACK8E,EAAEH,U,iCCtEvB,0KAEO,MAAM6R,EAFb,MAEiCrgB,EAAcC,gBAAgB,CAC3DC,UAAYC,IAAD,CACPmgB,sBAAuBngB,EAAQY,SAAS,CACpCV,MAAQC,IAAD,CACHC,IACO,4DAAqB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAOgV,gBAAiB,kBACrB,OAALhV,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eAClB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,8BACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QAClDE,OAAQ,UAGhB0f,qBAAsBpgB,EAAQY,SAAS,CACnCV,MAAQC,IAAD,CACHC,IAAM,4CACNM,OAAQ,OACRM,KAAMb,MAGdkgB,qBAAsBrgB,EAAQY,SAAS,CACnCV,MAAO,QAAC,cAACiV,EAAD,qBAAgBmL,GAAjB,QAA4C,CAC/ClgB,IAAM,6CAA4C+U,IAClDzU,OAAQ,SACRM,KAAM,IAAIsf,OAGlBC,wBAAyBvgB,EAAQY,SAAS,CACtCV,MAAQiV,IAAD,CACH/U,IAAM,wDAAuD+U,IAC7DzU,OAAQ,eAIpBe,kBAAkB,KAGT,iCACT+e,EADS,gCAETC,EAFS,gCAGTC,EAHS,mCAITC,GACAT,G,iCC5CJ,qCAoCeU,IA9BS,IAMjB,IANkB,KACrBlX,EADqB,MAErBwE,EAFqB,QAGrB2S,EAHqB,SAIrB1S,EAJqB,QAKrBpF,GACE,EAEF,OACI,cAAC,IAAD,CACImF,MACInF,EACG,cAAC,IAAD,CAAYA,QAASA,EAArB,SACMmF,IAEPA,EAEN4S,QACI,cAAC,IAAD,CACID,QAASA,EACT1S,SAAUA,EACVzE,KAAMA,EACNxB,MAAM,gB,iCC5B1B,kTAEO,MAAM6Y,EAFb,MAEiClhB,EAAcC,gBAAgB,CAC7DC,UAAYC,IAAD,CACLghB,0BAA2BhhB,EAAQY,SAAS,CACxCV,MAAQC,IAAD,CACHC,IAAM,qEACNM,OAAQ,UAGhBugB,4BAA6BjhB,EAAQY,SAAS,CAC1CV,MAAQC,IAAD,CACHC,IAAM,2DACNM,OAAQ,OACRM,KAAMb,MAGd+gB,sBAAuBlhB,EAAQY,SAAS,CACpCV,MAAQC,IAAD,CACHC,IACO,8DAAkB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eACjB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,kCACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QAClDE,OAAQ,UAGhBygB,qBAAsBnhB,EAAQY,SAAS,CACnCV,MAAQkhB,IAAD,CACHhhB,IAAM,oDAAmDghB,IACzD1gB,OAAQ,aAGhB2gB,YAAarhB,EAAQY,SAAS,CAC1BV,MAAO,MACHE,IAAM,sDACNM,OAAQ,UAGhB4gB,gBAAiBthB,EAAQY,SAAS,CAC9BV,MAAQqhB,IAAD,CACHnhB,IAAM,2DAA0DmhB,IAChE7gB,OAAQ,UAGhB8gB,qCAAsCxhB,EAAQY,SAAS,CACnDV,MAAQkhB,IAAD,CACHhhB,IAAM,+DAA8DghB,IACpE1gB,OAAQ,UAGhB+gB,0BAA2BzhB,EAAQY,SAAS,CACxCV,MAAQC,IAAD,CACHC,IAAM,kDAAiDD,EAAMihB,mBAC7D1gB,OAAQ,OACRM,KAAM,IAAIb,EAAMuhB,2BAI9BjgB,kBAAkB,KAGP,qCACTkgB,EADS,uCAETC,EAFS,iCAGTC,EAHS,gCAITC,EAJS,uBAKTC,EALS,2BAMTC,EANS,gDAOTC,EAPS,qCAQTC,GACAnB,G,iCCvEJ,qlBAOO,MAAMpX,EAAe,CACxBwY,iBAAiB,EACjBC,sBAAsB,EACtBC,uBAAuB,EACvBC,YAAa,CACTphB,GAAI,KACJmJ,MAAO,KACP6D,MAAO,MAEXqU,gBAAiB,GACjBC,UAAW,CACPC,IAAK,GACLC,IAAK,GACLC,KAAM,GACNC,aAAc,GACdC,eAAgB,GAChBC,SAAU,GACVC,gBAAgB,EAChBC,iBAAiB,EACjBC,gBAAgB,EAChBC,aAAc,GACdC,qBAAsB,GACtBC,0BAA2B,GAC3BC,+BAAgC,IAEpCC,cAAe,CACXC,YAAa,GACbC,UAAW,GACXC,gBAAiB,GACjBC,KAAM,GACNC,MAAO,GACPC,OAAQ,GACRC,UAAW,GACXC,WAAY,CAAC,oBACbC,SAAU,GACVC,YAAa,EACbC,UAAW,CAAC,EAAG,GACfC,WAAY,CAAC,EAAG,IAEpBC,kBAAmB,CACfC,sBAAsB,EACtBC,0BAA0B,EAC1BC,oBAAoB,EACpBC,iBAAiB,EACjBC,gBAAgB,EAChBC,UAAU,EACVC,mBAAmB,GAEvBC,eAAgB,CACZ,CAAEzjB,GAAI,EAAGwI,KAAM,MAAOmX,SAAS,GAC/B,CAAE3f,GAAI,EAAGwI,KAAM,mBAAoBmX,SAAS,GAC5C,CAAE3f,GAAI,EAAGwI,KAAM,SAAUmX,SAAS,GAClC,CAAE3f,GAAI,EAAGwI,KAAM,UAAWmX,SAAS,GACnC,CAAE3f,GAAI,EAAGwI,KAAM,mBAAoBmX,SAAS,IAEhD1W,YAAa,GACbuX,oBAAqB,GACrBkD,SAAU,GACVC,WAAY,GACZC,cAAe,GACfC,aAAc,CACV,CAAE7jB,GAAI,EAAGwI,KAAM,aAAcmX,SAAS,GACtC,CAAE3f,GAAI,EAAGwI,KAAM,YAAamX,SAAS,GACrC,CAAE3f,GAAI,EAAGwI,KAAM,YAAamX,SAAS,IAEzCiC,SAAU,IACHkC,MAAM,GACRC,OACA9Y,KAAI,CAAC+Y,EAAGC,KAAJ,CACDjkB,GAAIikB,EACJzb,MAAO,KAAOyb,GAAKC,WACnBvE,SAAS,OAGjBwE,aAAc,CACV,CAAEnkB,GAAI,EAAGwI,KAAM,WAAYmX,SAAS,GACpC,CAAE3f,GAAI,EAAGwI,KAAM,0BAA2BmX,SAAS,GACnD,CAAE3f,GAAI,EAAGwI,KAAM,YAAamX,SAAS,GACrC,CAAE3f,GAAI,EAAGwI,KAAM,YAAamX,SAAS,GACrC,CAAE3f,GAAI,EAAGwI,KAAM,gBAAiBmX,SAAS,GACzC,CAAE3f,GAAI,EAAGwI,KAAM,sBAAuBmX,SAAS,GAC/C,CAAE3f,GAAI,EAAGwI,KAAM,iBAAkBmX,SAAS,IAE9CyE,UAAW,CACPjlB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,YACZC,eAAgB,OAChBiK,MAAO,IAEXgb,sBAAuB,CACnBplB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,OACZC,eAAgB,MAChBiK,MAAO,IAEXib,0BAA2B,CACvBrlB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,YACZC,eAAgB,OAChBiK,MAAO,IAEXkb,sBAAuB,CACnBtlB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,cACZC,eAAgB,MAChBiK,MAAO,IAEXmb,wBAAyB,CACrBvlB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,cACZC,eAAgB,MAChBiK,MAAO,IAEXob,wBAAyB,CACrBxlB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,YACZC,eAAgB,MAChBiK,MAAO,IAEXqb,4BAA6B,IAG3BC,EAAoBtc,YAAY,CAClCC,KAAM,gBACNC,eACAuB,SAAU,CACN8a,wBAAyB,CAAC5a,EAAOC,KACN,OAAnBA,EAAOC,UACPF,EAAMkX,YAAclX,EAAMmX,gBAAgB0D,MAAKC,GAAKA,EAAEhlB,KAAOmK,EAAOC,QAAQpK,OAGpFilB,oBAAqB,CAAC/a,EAAOC,KACzBD,EAAMjB,YAAYic,SAAQC,IAClBA,EAAQC,OAASjb,EAAOC,QAAQgb,OAChCD,EAAQxF,QAAUxV,EAAOC,QAAQuV,QAE7BxV,EAAOC,QAAQuV,QACfzV,EAAMkY,cAAcC,YAAYgD,KAAKlb,EAAOC,QAAQgb,MAGpDlb,EAAMkY,cAAcC,YAAcnY,EAAMkY,cAAcC,YAAYiD,QAAON,GAAKA,IAAM7a,EAAOC,QAAQgb,YAKnHG,sBAAuB,CAACrb,EAAOC,KAC3BD,EAAMjB,YAAYic,SAAQC,IAClBA,EAAQC,OAASjb,EAAOC,QAAQgb,OAChCD,EAAQxF,QAAUxV,EAAOC,QAAQuV,QAE7BxV,EAAOC,QAAQuV,QACfzV,EAAMkY,cAAcE,UAAU+C,KAAKlb,EAAOC,QAAQgb,MAGlDlb,EAAMkY,cAAcE,UAAYpY,EAAMkY,cAAcE,UAAUgD,QAAON,GAAKA,IAAM7a,EAAOC,QAAQgb,YAK/GI,4BAA6B,CAACtb,EAAOC,KACjCD,EAAMsW,oBAAoB0E,SAAQ3C,IAC1BA,EAAgB6C,OAASjb,EAAOC,QAAQgb,OACxC7C,EAAgB5C,QAAUxV,EAAOC,QAAQuV,QAErCxV,EAAOC,QAAQuV,QACfzV,EAAMkY,cAAcG,gBAAgB8C,KAAKlb,EAAOC,QAAQgb,MAGxDlb,EAAMkY,cAAcG,gBAAkBrY,EAAMkY,cAAcG,gBAAgB+C,QAAON,GAAKA,IAAM7a,EAAOC,QAAQgb,YAK3HK,iBAAkB,CAACvb,EAAOC,KACtBD,EAAMwZ,SAASwB,SAAQ1C,IACfA,EAAKha,OAAS2B,EAAOC,QAAQ5B,OAC7Bga,EAAK7C,QAAUxV,EAAOC,QAAQuV,QAE1BxV,EAAOC,QAAQuV,QACfzV,EAAMkY,cAAcI,KAAK6C,KAAKlb,EAAOC,QAAQ5B,MAG7C0B,EAAMkY,cAAcI,KAAOtY,EAAMkY,cAAcI,KAAK8C,QAAON,GAAKA,IAAM7a,EAAOC,QAAQ5B,YAKrGkd,mBAAoB,CAACxb,EAAOC,KACxBD,EAAMyZ,WAAWuB,SAAQxC,IACjBA,EAAOiD,aAAexb,EAAOC,QAAQub,aACrCjD,EAAO/C,QAAUxV,EAAOC,QAAQuV,QAE5BxV,EAAOC,QAAQuV,QACfzV,EAAMkY,cAAcM,OAAO2C,KAAKlb,EAAOC,QAAQub,YAG/Czb,EAAMkY,cAAcM,OAASxY,EAAMkY,cAAcM,OAAO4C,QAAON,GAAKA,IAAM7a,EAAOC,QAAQub,kBAKzGC,sBAAuB,CAAC1b,EAAOC,KAC3BD,EAAM0Z,cAAcsB,SAAQxC,IACpBA,EAAOmD,gBAAkB1b,EAAOC,QAAQyb,gBACxCnD,EAAO/C,QAAUxV,EAAOC,QAAQuV,QAE5BxV,EAAOC,QAAQuV,QACfzV,EAAMkY,cAAcO,UAAU0C,KAAKlb,EAAOC,QAAQyb,eAGlD3b,EAAMkY,cAAcO,UAAYzY,EAAMkY,cAAcO,UAAU2C,QAAON,GAAKA,IAAM7a,EAAOC,QAAQyb,qBAK/GC,mBAAoB,CAAC5b,EAAOC,KACxBD,EAAM+W,gBAAkB9W,EAAOC,SAEnC2b,sBAAuB,CAAC7b,EAAOC,KAC3BD,EAAMoX,UAAUnX,EAAOC,QAAQ4b,OAAS7b,EAAOC,QAAQjB,OAE3D8c,mBAAoB,CAAC/b,EAAOC,KAEpBA,EAAOC,QAAQuV,QACfzV,EAAMkY,cAAcjY,EAAOC,QAAQ4b,OAAOX,KAAKlb,EAAOC,QAAQjB,OAG9De,EAAMkY,cAAcjY,EAAOC,QAAQ4b,OAAS9b,EAAMkY,cAAcjY,EAAOC,QAAQ4b,OAAOV,QAAON,GAAKA,IAAM7a,EAAOC,QAAQjB,SAG/H+c,oBAAqB,CAAChc,EAAOC,KACzBD,EAAMoX,UAAUM,SAAWzX,EAAOC,SAEtC+b,8BAA+B,CAACjc,EAAOC,KACnCD,EAAM+Y,kBAAkB9Y,EAAOC,QAAQ4b,OAAS7b,EAAOC,QAAQuV,SAEnEyG,2BAA4B,CAAClc,EAAOC,KAChCD,EAAMgX,qBAAuB/W,EAAOC,SAExCic,4BAA6B,CAACnc,EAAOC,KACjCD,EAAMiX,sBAAwBhX,EAAOC,SAEzCkc,kBAAmB,CAACpc,EAAOC,KACvBD,EAAMkY,cAAcU,YAAc3Y,EAAOC,SAE7Cmc,kBAAmB,CAACrc,EAAOC,KACvBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAM8b,GAAO7Y,MAAQsZ,EAAO,OAGpCC,iBAAkB,CAACxc,EAAOC,KACtBD,EAAMkY,cAAcY,WAAa7Y,EAAOC,SAE5Cuc,gBAAiB,CAACzc,EAAOC,KACrBD,EAAMkY,cAAcW,UAAY5Y,EAAOC,SAE3Cwc,gBAAiB,CAAC1c,EAAOC,KACrBD,EAAMoX,UAAY,IAAI7Y,EAAa6Y,WACnCpX,EAAMkY,cAAgB,IAAI3Z,EAAa2Z,eACvClY,EAAM+Y,kBAAoB,IAAIxa,EAAawa,mBAE3C/Y,EAAMjB,YAAciB,EAAMjB,YAAYgC,KAAItD,IAAI,IACvCA,EACHgY,SAAS,MAGbzV,EAAMsW,oBAAsBtW,EAAMsW,oBAAoBvV,KAAItD,IAAI,IACvDA,EACHgY,SAAS,MAGbzV,EAAMwZ,SAAWxZ,EAAMwZ,SAASzY,KAAItD,IAAI,IACjCA,EACHgY,SAAS,MAGbzV,EAAMyZ,WAAazZ,EAAMyZ,WAAW1Y,KAAItD,IAAI,IACrCA,EACHgY,SAAS,MAGbzV,EAAM0Z,cAAgB1Z,EAAM0Z,cAAc3Y,KAAItD,IAAI,IAC3CA,EACHgY,SAAS,MAGbzV,EAAMuZ,eAAiB,CACnB,CAAEzjB,GAAI,EAAGwI,KAAM,MAAOmX,SAAS,GAC/B,CAAE3f,GAAI,EAAGwI,KAAM,mBAAoBmX,SAAS,GAC5C,CAAE3f,GAAI,EAAGwI,KAAM,SAAUmX,SAAS,GAClC,CAAE3f,GAAI,EAAGwI,KAAM,UAAWmX,SAAS,GACnC,CAAE3f,GAAI,EAAGwI,KAAM,mBAAoBmX,SAAS,KAGpDkH,oBAAqB,CAAC3c,EAAOC,KAAY,IAAD,QACpCD,EAAM+W,iBAAkB,EACxB/W,EAAMoX,UAAY,IAAI7Y,EAAa6Y,aAAcnX,EAAOC,QAAQkX,WAChEpX,EAAMkY,cAAgB,IAAI3Z,EAAa2Z,iBAAkBjY,EAAOC,QAAQgY,eACxElY,EAAM+Y,kBAAoB,IAAIxa,EAAawa,qBAAsB9Y,EAAOC,QAAQ6Y,mBAEhF,MAAMF,GAAY,UAAA5Y,EAAOC,QAAQgY,qBAAf,eAA8BW,YAAa,CAAC,EAAG,IAC3DC,GAAa,UAAA7Y,EAAOC,QAAQgY,qBAAf,eAA8BY,aAAc,CAAC,EAAG,IAE9B,KAAjC7Y,EAAOC,QAAQkX,UAAUE,MACzBtX,EAAMiX,uBAAwB,GAGI,KAAlChX,EAAOC,QAAQkX,UAAUG,OACzBvX,EAAMiX,uBAAwB,GAGc,KAA5ChX,EAAOC,QAAQkX,UAAUK,iBACzBzX,EAAMiX,uBAAwB,IAG9B,UAAAhX,EAAOC,QAAQgY,cAAcQ,kBAA7B,eAAyC7F,QAAS,IAClD7S,EAAMgX,sBAAuB,GAGZ,IAAjB6B,EAAU,IAA6B,KAAjBA,EAAU,KAChC7Y,EAAMgX,sBAAuB,GAGX,IAAlB8B,EAAW,IAA8B,KAAlBA,EAAW,KAClC9Y,EAAMgX,sBAAuB,IAG7B,UAAA/W,EAAOC,QAAQgY,cAAcS,gBAA7B,eAAuC9F,QAAS,IAChD7S,EAAMgX,sBAAuB,IAGrC4F,gBAAiB,CAAC5c,EAAOC,KACrBD,EAAMka,UAAY,IAAK3b,EAAa2b,WACpCla,EAAMqa,sBAAwB,IAAK9b,EAAa8b,uBAChDra,EAAMua,sBAAwB,IAAKhc,EAAagc,uBAChDva,EAAMwa,wBAA0B,IAAKjc,EAAaic,yBAClDxa,EAAMya,wBAA0B,IAAKlc,EAAakc,0BAEtDoC,0BAA2B,CAAC7c,EAAOC,KAC/BA,EAAOC,QAAQ8a,SAAQ8B,IACnB9c,EAAM0a,4BAA4BS,KAAK2B,EAAernB,gBAKlEsnB,cAAgBnoB,IACZA,EAAQooB,WACJC,IAAgBtoB,UAAUuoB,mBAAmBC,gBAAgB,CAACnd,EAAOC,KACjED,EAAMka,UAAUjlB,WAAagL,EAAOC,QAAQjL,WAC5C+K,EAAMka,UAAUhlB,SAAW+K,EAAOC,QAAQhL,SAC1C8K,EAAMka,UAAUC,UAAYla,EAAOC,QAAQia,UAC3Cna,EAAMka,UAAUE,WAAana,EAAOC,QAAQka,WAC5Cpa,EAAMka,UAAU/kB,WAAa8K,EAAOC,QAAQ/K,WAC5C6K,EAAMka,UAAU9kB,eAAiB6K,EAAOC,QAAQ9K,eAChD4K,EAAMka,UAAU7a,MAAQY,EAAOC,QAAQb,SAG9C2d,WACGC,IAAgBtoB,UAAUyoB,sBAAsBD,gBAAgB,CAACnd,EAAOC,KACpED,EAAMka,UAAUjlB,WAAagL,EAAOC,QAAQjL,WAC5C+K,EAAMka,UAAUhlB,SAAW+K,EAAOC,QAAQhL,SAC1C8K,EAAMka,UAAUC,UAAYla,EAAOC,QAAQia,UAC3Cna,EAAMka,UAAUE,WAAana,EAAOC,QAAQka,WAC5Cpa,EAAMka,UAAU/kB,WAAa8K,EAAOC,QAAQ/K,WAC5C6K,EAAMka,UAAU9kB,eAAiB6K,EAAOC,QAAQ9K,eAChD4K,EAAMka,UAAU7a,MAAQY,EAAOC,QAAQb,SAG9C2d,WACGC,IAAgBtoB,UAAU0oB,aAAaF,gBAAgB,CAACnd,EAAOC,KAC3DD,EAAMqa,sBAAsBplB,WAAagL,EAAOC,QAAQjL,WACxD+K,EAAMqa,sBAAsBnlB,SAAW+K,EAAOC,QAAQhL,SACtD8K,EAAMqa,sBAAsBF,UAAYla,EAAOC,QAAQia,UACvDna,EAAMqa,sBAAsBD,WAAana,EAAOC,QAAQka,WACxDpa,EAAMqa,sBAAsBllB,WAAa8K,EAAOC,QAAQ/K,WACxD6K,EAAMqa,sBAAsBjlB,eAAiB6K,EAAOC,QAAQ9K,eAC5D4K,EAAMqa,sBAAsBhb,MAAQY,EAAOC,QAAQb,SAG1D2d,WACGC,IAAgBtoB,UAAU2oB,iBAAiBH,gBAAgB,CAACnd,EAAOC,KAC/DD,EAAMsa,0BAA0BrlB,WAAagL,EAAOC,QAAQjL,WAC5D+K,EAAMsa,0BAA0BplB,SAAW+K,EAAOC,QAAQhL,SAC1D8K,EAAMsa,0BAA0BH,UAAYla,EAAOC,QAAQia,UAC3Dna,EAAMsa,0BAA0BF,WAAana,EAAOC,QAAQka,WAC5Dpa,EAAMsa,0BAA0BnlB,WAAa8K,EAAOC,QAAQ/K,WAC5D6K,EAAMsa,0BAA0BllB,eAAiB6K,EAAOC,QAAQ9K,eAChE4K,EAAMsa,0BAA0Bjb,MAAQY,EAAOC,QAAQb,SAG9D2d,WACGC,IAAgBtoB,UAAU4oB,aAAaJ,gBAAgB,CAACnd,EAAOC,KAC3DD,EAAMua,sBAAsBtlB,WAAagL,EAAOC,QAAQjL,WACxD+K,EAAMua,sBAAsBrlB,SAAW+K,EAAOC,QAAQhL,SACtD8K,EAAMua,sBAAsBJ,UAAYla,EAAOC,QAAQia,UACvDna,EAAMua,sBAAsBH,WAAana,EAAOC,QAAQka,WACxDpa,EAAMua,sBAAsBplB,WAAa8K,EAAOC,QAAQ/K,WACxD6K,EAAMua,sBAAsBnlB,eAAiB6K,EAAOC,QAAQ9K,eAC5D4K,EAAMua,sBAAsBlb,MAAQY,EAAOC,QAAQb,SAG1D2d,WACGC,IAAgBtoB,UAAU6oB,eAAeL,gBAAgB,CAACnd,EAAOC,KAC7DD,EAAMwa,wBAAwBvlB,WAAagL,EAAOC,QAAQjL,WAC1D+K,EAAMwa,wBAAwBtlB,SAAW+K,EAAOC,QAAQhL,SACxD8K,EAAMwa,wBAAwBL,UAAYla,EAAOC,QAAQia,UACzDna,EAAMwa,wBAAwBJ,WAAana,EAAOC,QAAQka,WAC1Dpa,EAAMwa,wBAAwBrlB,WAAa8K,EAAOC,QAAQ/K,WAC1D6K,EAAMwa,wBAAwBplB,eAAiB6K,EAAOC,QAAQ9K,eAC9D4K,EAAMwa,wBAAwBnb,MAAQY,EAAOC,QAAQb,SAG5D2d,WACGC,IAAgBtoB,UAAU8oB,eAAeN,gBAAgB,CAACnd,EAAOC,KAC7DD,EAAMya,wBAAwBxlB,WAAagL,EAAOC,QAAQjL,WAC1D+K,EAAMya,wBAAwBvlB,SAAW+K,EAAOC,QAAQhL,SACxD8K,EAAMya,wBAAwBN,UAAYla,EAAOC,QAAQia,UACzDna,EAAMya,wBAAwBL,WAAana,EAAOC,QAAQka,WAC1Dpa,EAAMya,wBAAwBtlB,WAAa8K,EAAOC,QAAQ/K,WAC1D6K,EAAMya,wBAAwBrlB,eAAiB6K,EAAOC,QAAQ9K,eAC9D4K,EAAMya,wBAAwBpb,MAAQY,EAAOC,QAAQb,SAG5D2d,WACG1b,IAAe3M,UAAUoN,eAAeob,gBAAgB,CAACnd,EAAOC,KAC5DD,EAAMmX,gBAAkB,GACxBnX,EAAMkX,YAAc3Y,EAAa2Y,YAEH,IAA1BjX,EAAOC,QAAQ2S,SAEf7S,EAAMmX,gBAAkBlX,EAAOC,QAAQa,KAAItD,IAAI,CAC3C3H,GAAI2H,EAAK3H,GACTmJ,MAAOxB,EAAKa,KACZwE,MAAOrF,EAAKa,SAGhB0B,EAAMkX,YAAclX,EAAMmX,gBAAgB,OAIrD6F,WACGU,IAAW/oB,UAAUgpB,eAAeR,gBAAgB,CAACnd,EAAOC,KACxDD,EAAMjB,YAAckB,EAAOC,QAAQa,KAAItD,IAAI,IACpCA,EACHgY,SAAS,MAGbxV,EAAOC,QAAQ8a,SAAQC,IACnBA,EAAQ3E,oBAAoB0E,SAAQ3C,IAChCrY,EAAMsW,oBAAoB6E,KAAK,IACxB9C,EACH5C,SAAS,aAM5BuH,WACGY,IAAkBjpB,UAAUkpB,8BAA8BV,gBAAgB,CAACnd,EAAOC,KAC9ED,EAAM0a,4BAA8Bza,EAAOC,WAGlD8c,WACGU,IAAW/oB,UAAUmpB,8BAA8BX,gBAAgB,CAACnd,EAAOC,KACvED,EAAMwZ,SAAWvZ,EAAOC,QAAQa,KAAItD,IAAI,IACjCA,EACHgY,SAAS,SAIpBuH,WACGrjB,IAAUhF,UAAUiF,cAAcujB,gBAAgB,CAACnd,EAAOC,KACtDD,EAAMyZ,WAAaxZ,EAAOC,QAAQa,KAAItD,IAAI,IACnCA,EACHgY,SAAS,SAIpBuH,WACGrjB,IAAUhF,UAAUmF,4BAA4BqjB,gBAAgB,CAACnd,EAAOC,KACpED,EAAM0Z,cAAgBzZ,EAAOC,QAAQa,KAAItD,IAAI,IACtCA,EACHgY,SAAS,aAOhB,wBACTmF,EADS,oBAETG,EAFS,4BAGTO,EAHS,iBAITC,EAJS,mBAKTC,EALS,sBAMTE,EANS,2BAOTQ,EAPS,4BAQTC,EARS,kBASTC,EATS,sBAUTP,EAVS,mBAWTE,EAXS,8BAYTE,EAZS,kBAaTI,EAbS,iBAcTG,EAdS,gBAeTC,EAfS,oBAgBTE,EAhBS,gBAiBTD,EAjBS,gBAkBTE,EAlBS,mBAmBThB,EAnBS,oBAoBTI,EApBS,0BAqBTa,GACAlC,EAAkBtZ,QAEPsZ,MAAf,S,gCC1hBA,w7BACO,MAAMoD,EAAkB,0BAClBC,EAAqB,6BAIrBC,EAAsB,gCACtBC,EAAyB,gCACzBC,EAAe,yBACfC,EAAY,sBACZC,EAAe,sBACfC,EAAgB,0BAChBC,EAAmB,2BACnBC,EAAY,sBACZC,EAAe,sBACfC,EAAc,wBACdC,EAA6B,uCAG7BC,EAAqB,6BACrBC,EAAwB,gCACxBC,EAAiB,uBACjBC,EAAyB,yBAGzBC,EAAyB,gCACzBC,EAA4B,mCAC5BC,EAAkB,4BAClBC,EAAe,yBACfC,EAAkB,yBAClBC,EAAmB,6BACnBC,EAAsB,8BACtBC,EAAe,yBACfC,EAAkB,yBAClBC,EAAiB,2BACjBC,EAAgC,2C,iCCnC7C,iyBAGO,MA0EDC,EAAqBthB,YAAY,CACrCC,KAAM,iBACNC,aA5E0B,CAC1BqhB,aAAa,EACbC,yBAAyB,EACzBC,0BAA0B,EAC1BC,2BAA2B,EAC3BC,OAAQ,GACRC,0BAA2B,CACzBhhB,MAAO,GACPgE,MAAO,IAETid,cAAc,EACdC,qBAAsB,CACpBC,sBAAuB,GACvBC,mBAAoB,GACpBC,SAAS,EACTC,qBAAsB,CACpBthB,MAAO,GACPgE,MAAO,IAETud,qBAAsB,IAExBxO,OAAQ,CACNxQ,WAAY,GACZif,OAAQ,IAEVvG,UAAW,CACTjlB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,YACZC,eAAgB,OAChBiK,MAAO,IAETqhB,oBAAqB,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,IAC5CC,cAAe,CACbvlB,WAAW,EACX4kB,OAAQ,GACRY,SAAU,GACVC,iBAAkB,GAClBC,sBAAuB,EACvBC,cAAe,GAEjBC,eAAgB,CACd5lB,WAAW,EACX4kB,OAAQ,GACRY,SAAU,IAEZK,YAAa,CACX7lB,WAAW,EACXwlB,SAAU,IAEZM,SAAU,CACR9lB,WAAW,EACX+lB,aAAc,GACdC,YAAa,IAEfC,kBAAmB,CACjBjmB,WAAW,EACX4kB,OAAQ,GACRY,SAAU,IAEZU,YAAa,CACXlmB,WAAW,EACX4kB,OAAQ,GACRuB,UAAW,GACXC,eAAgB,GAChBC,UAAW,GACXC,cAAe,GACfC,YAAY,EACZC,WAAW,IAOb9hB,SAAU,CACR+hB,aAAc,CAAC7hB,EAAOC,KACpBD,EAAMgS,OAAO/R,EAAOC,QAAQ4b,OAAS7b,EAAOC,QAAQjB,OAEtD6iB,kBAAmB,CAAC9hB,EAAOC,KACzBD,EAAMC,EAAOC,QAAQ4b,OAAO7Y,MAAQ,GACpCjD,EAAMC,EAAOC,QAAQ4b,OAAO7c,MAAQgB,EAAOC,QAAQjB,OAErD8iB,+BAAgC,CAAC/hB,EAAOC,KACtCD,EAAMggB,OAAS/f,EAAOC,QACtBF,EAAM8f,0BAA2B,GAEnCkC,gCAAiC,CAAChiB,EAAOC,KACvCD,EAAMggB,OAAS,GACfhgB,EAAM8f,0BAA2B,GAEnCmC,mCAAoC,CAACjiB,EAAOC,KAC1CD,EAAMmgB,qBAAqBI,qBAAqBthB,MAAQgB,EAAOC,QAC/DF,EAAMmgB,qBAAqBI,qBAAqBtd,MAAQ,GACxDjD,EAAMmgB,qBAAqBG,SAAU,EACrCtgB,EAAMmgB,qBAAqBC,sBACzBpgB,EAAMmgB,qBAAqBK,qBAAqB3F,MAC7CC,GAAMA,EAAEyF,uBAAyBtgB,EAAOC,UACzCgiB,gBAENC,8BAA+B,CAACniB,EAAOC,KACrCD,EAAMggB,OAAS/f,EAAOC,QAAQpK,GAC9BkK,EAAMkgB,aAAejgB,EAAOC,QAAQggB,aACpClgB,EAAM6f,yBAA0B,GAElCuC,+BAAgC,CAACpiB,EAAOC,KACtCD,EAAMggB,OAAS,GACfhgB,EAAMkgB,cAAe,EACrBlgB,EAAM6f,yBAA0B,GAElCwC,gCAAiC,CAACriB,EAAOC,KACvCD,EAAMigB,0BAA0BhhB,MAAQ,GACxCe,EAAMigB,0BAA0Bhd,MAAQ,GACxCjD,EAAM+f,2BAA4B,GAEpCuC,iCAAkC,CAACtiB,EAAOC,KACxCD,EAAM+f,2BAA4B,GAEpC1D,kBAAmB,CAACrc,EAAOC,KACzBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EAC1Dvc,EAAM8b,GAAO7Y,MAAQsZ,EAAO,OAGhCgG,wBAAyB,CAACviB,EAAOC,KAC/BD,EAAM2gB,cAAcvlB,WAAY,EAChC4E,EAAM2gB,cAAcX,OAAS/f,EAAOC,QAAQpK,GAC5CkK,EAAM2gB,cAAcC,SAAW3gB,EAAOC,QAAQ0gB,SAC9C5gB,EAAM2gB,cAAcE,iBAAmB5gB,EAAOC,QAAQsiB,aACtDxiB,EAAM2gB,cAAcI,cAAgB9gB,EAAOC,QAAQ6gB,cACnD/gB,EAAM2gB,cAAcG,sBAClB7gB,EAAOC,QAAQ4gB,uBAEnB2B,yBAA0B,CAACziB,EAAOC,KAChCD,EAAM2gB,cAAcvlB,WAAY,GAElCsnB,+BAAgC,CAAC1iB,EAAOC,KACtCD,EAAMghB,eAAehB,OAAS/f,EAAOC,QAAQpK,GAC7CkK,EAAMghB,eAAeJ,SAAW3gB,EAAOC,QAAQ0gB,SAC/C5gB,EAAMghB,eAAe5lB,WAAY,GAEnCunB,gCAAiC,CAAC3iB,EAAOC,KACvCD,EAAMghB,eAAehB,OAAS,GAC9BhgB,EAAMghB,eAAeJ,SAAW,GAChC5gB,EAAMghB,eAAe5lB,WAAY,GAEnCwnB,4BAA6B,CAAC5iB,EAAOC,KACnCD,EAAMihB,YAAY7lB,WAAY,EAC9B4E,EAAMihB,YAAYL,SAAW3gB,EAAOC,QAAQ2iB,kBAE9CC,6BAA8B,CAAC9iB,EAAOC,KACpCD,EAAMihB,YAAY7lB,WAAY,EAC9B4E,EAAMihB,YAAYL,SAAW,IAE/BmC,2BAA4B,CAAC/iB,EAAOC,KAClCD,EAAMkhB,SAAS9lB,WAAa4E,EAAMkhB,SAAS9lB,UAC3C4E,EAAMkhB,SAASE,YAAcphB,EAAMkhB,SAAS9lB,UACxC6E,EAAOC,QACP,GACJF,EAAMkhB,SAASC,aAAe,IAEhC6B,kCAAmC,CAAChjB,EAAOC,KACzCD,EAAMqhB,kBAAkBjmB,WAAY,EACpC4E,EAAMqhB,kBAAkBrB,OAAS/f,EAAOC,QAAQpK,GAChDkK,EAAMqhB,kBAAkBT,SAAW3gB,EAAOC,QAAQ0gB,UAEpDqC,mCAAoC,CAACjjB,EAAOC,KAC1CD,EAAMqhB,kBAAkBjmB,WAAY,EACpC4E,EAAMqhB,kBAAkBrB,OAAS,GACjChgB,EAAMqhB,kBAAkBT,SAAW,IAErCsC,4BAA6B,CAACljB,EAAOC,KACjCD,EAAMshB,YAAYlmB,WAAY,EAC9B4E,EAAMshB,YAAYtB,OAAS/f,EAAOC,QAAQpK,GAC1CkK,EAAMshB,YAAYC,UAAY,IAElC4B,6BAA8B,CAACnjB,EAAOC,KAClCD,EAAMshB,YAAYlmB,WAAY,GAElCgoB,uBAAwB,CAACpjB,EAAOC,KAC5BD,EAAMshB,YAAYtB,OAAS,GAC3BhgB,EAAMshB,YAAYC,UAAY,GAC9BvhB,EAAMshB,YAAYE,eAAiB,GACnCxhB,EAAMshB,YAAYG,UAAY,GAC9BzhB,EAAMshB,YAAYI,cAAgB,GAClC1hB,EAAMshB,YAAYK,YAAa,EAC/B3hB,EAAMshB,YAAYM,WAAY,GAElCyB,+BAAgC,CAACrjB,EAAOC,KACpCD,EAAMshB,YAAYC,UAAYthB,EAAOC,QACrCF,EAAMshB,YAAYK,YAAa,GAEnC2B,4BAA6B,CAACtjB,EAAOC,KACjCD,EAAMshB,YAAYC,UAAY,GAC9BvhB,EAAMshB,YAAYE,eAAiBvhB,EAAOC,QAAQshB,eAClDxhB,EAAMshB,YAAYG,UAAYxhB,EAAOC,QAAQuhB,UAC7CzhB,EAAMshB,YAAYI,cAAgBzhB,EAAOC,QAAQwhB,cACjD1hB,EAAMshB,YAAYK,WAAa1hB,EAAOC,QAAQyhB,WAC9C3hB,EAAMshB,YAAYM,UAAY3hB,EAAOC,QAAQ0hB,YAInD7E,cAAgBnoB,IACdA,EACGooB,WACCuG,IAAS5uB,UAAU6uB,qBAAqBrG,gBACxC,CAACnd,EAAOC,KACND,EAAM4f,aAAc,EACpB5f,EAAMka,UAAUjlB,WAAagL,EAAOC,QAAQjL,WAC5C+K,EAAMka,UAAUhlB,SAAW+K,EAAOC,QAAQhL,SAC1C8K,EAAMka,UAAUC,UAAYla,EAAOC,QAAQia,UAC3Cna,EAAMka,UAAUE,WAAana,EAAOC,QAAQka,WAC5Cpa,EAAMka,UAAU/kB,WAAa8K,EAAOC,QAAQ/K,WAC5C6K,EAAMka,UAAU9kB,eAAiB6K,EAAOC,QAAQ9K,eAChD4K,EAAMka,UAAU7a,MAAQY,EAAOC,QAAQb,SAG1C2d,WACCuG,IAAS5uB,UAAU6uB,qBAAqBC,cACxC,CAACzjB,EAAOC,KACND,EAAM4f,aAAc,KAGvB5C,WACCuG,IAAS5uB,UAAU6uB,qBAAqBE,eACxC,CAAC1jB,EAAOC,KACND,EAAM4f,aAAc,KAGvB5C,WACCuG,IAAS5uB,UAAUgvB,yBAAyBxG,gBAC5C,CAACnd,EAAOC,KACND,EAAMmgB,qBAAqBC,sBACzBngB,EAAOC,QAAQkgB,sBACjBpgB,EAAMmgB,qBAAqBE,mBACzBpgB,EAAOC,QAAQmgB,mBACjBrgB,EAAMmgB,qBAAqBG,QAAUrgB,EAAOC,QAAQogB,QACpDtgB,EAAMmgB,qBAAqBI,qBAAqBthB,MAC9CgB,EAAOC,QAAQqgB,qBACjBvgB,EAAMmgB,qBAAqBI,qBAAqBtd,MAAQ,GACxDjD,EAAMmgB,qBAAqBK,qBACzBvgB,EAAOC,QAAQsgB,wBAGpBxD,WACCuG,IAAS5uB,UAAUivB,wBAAwBzG,gBAC3C,CAACnd,EAAOC,KACN,IAAI4jB,EAAU5jB,EAAOC,QAAQoU,KAAK8G,QAC/B3d,GAA2B,MAAlBA,EAAKmjB,WAEbpb,EAASvF,EAAOC,QAAQoU,KAAK8G,QAC9B3d,GAA2B,MAAlBA,EAAKmjB,WAEjB5gB,EAAMkhB,SAAS4C,qBAAsB,EACrC9jB,EAAMkhB,SAASC,aAAe3b,EAAOue,OAAOF,MAG/C7G,WACCuG,IAAS5uB,UAAUivB,wBAAwBH,cAC3C,CAACzjB,EAAOC,KACND,EAAMkhB,SAAS4C,qBAAsB,KAGxC9G,WACCuG,IAAS5uB,UAAUivB,wBAAwBF,eAC3C,CAAC1jB,EAAOC,KACND,EAAMkhB,SAAS4C,qBAAsB,KAGxC9G,WACCuG,IAAS5uB,UAAUqvB,0BAA0B7G,gBAC7C,CAACnd,EAAOC,SAET+c,WACCuG,IAAS5uB,UAAUqvB,0BAA0BP,cAC7C,CAACzjB,EAAOC,KACND,EAAMkhB,SAAS4C,qBAAsB,KAGxC9G,WACCuG,IAAS5uB,UAAUqvB,0BAA0BN,eAC7C,CAAC1jB,EAAOC,KACND,EAAMkhB,SAAS4C,qBAAsB,SAMlC,aACXjC,EADW,kBAEXC,EAFW,gCAGXE,EAHW,+BAIXD,EAJW,mCAKXE,EALW,8BAMXE,EANW,+BAOXC,EAPW,gCAQXC,EARW,iCASXC,EATW,kBAUXjG,EAVW,wBAWXkG,EAXW,yBAYXE,EAZW,+BAaXC,EAbW,gCAcXC,EAdW,4BAeXC,EAfW,6BAgBXE,EAhBW,2BAiBXC,EAjBW,kCAkBXC,EAlBW,mCAmBXC,EAnBW,4BAoBXC,EApBW,6BAqBXC,EArBW,+BAsBXE,EAtBW,4BAuBXC,EAvBW,uBAwBXF,GACEzD,EAAmBte,QAERse,MAAf,S,iCC/TA,kiBASO,MAAMphB,EAAe,CACxB0lB,eAAe,EACfC,SAAU,CACNpuB,GAAI,KACJoI,MAAO,GACPimB,YAAa,GACbC,iBAAkB,KAClBC,mBAAmB,EACnBC,OAAO,IAEXC,cAAc,EACdC,YAAa,GACbC,MAAM,EACNC,YAAa,GACbC,eAAgB,KAChBC,aAAc,KACdC,gBAAiB,GACjBC,mBAAoB,GACpBxM,KAAM,GACNyM,kBAAmB,GACnBC,QAAS,GACTC,sBAAuB,GACvBC,YAAa,GACbC,YAAa,GACbC,UAAW,GACXC,gBAAiB,GACjBC,cAAe,GACfvmB,YAAa,GACbuX,oBAAqB,GACrBiP,wBAAyB,GACzB/L,SAAU,GACVC,WAAY,GACZ+L,WAAY,GACZ7N,gBAAgB,EAChB8N,aAAc,GACdC,gBAAiB,CACbC,aAAc,MAElBC,YAAa,CACTD,aAAc,MAElBjO,SAAU,IACHkC,MAAMiM,IAAOC,uBAAuBC,GAAK,KAAO,GAClDlM,OACA9Y,KAAI,CAAC+Y,EAAGC,KAAJ,CACDiM,MAAOjM,EACP/a,KAAO,KAAO+a,GAAKC,WACnB/a,OAAQ,KAAO8a,GAAKC,WACpBlX,OAAQ,KAAOiX,GAAKC,WACpBvE,SAAS,OAGjBwQ,QAAS,CACLC,aAAc,KACdC,aAAc,KACdC,kBAAmB,KACnBC,YAAa,KACbC,UAAW,KACXC,cAAe,KACftB,sBAAuB,KACvBuB,aAAc,KACdC,MAAO,KACPC,mBAAoB,GACpBC,wBAAyB,GACzBC,iBAAkB,IAEtBC,SAAU,CACN5xB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,eACZC,eAAgB,OAChBiK,MAAO,GACPynB,gBAAiB,IAErBC,kBAAmB,CACf9xB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,WACZC,eAAgB,OAChBiK,MAAO,CACH,CAAE2nB,SAAU,iBAAkBC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAClG,CAAEL,SAAU,gBAAiBC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MACjG,CAAEL,SAAU,YAAaC,OAAQ,KAAMC,QAAS,UAAWC,QAAS,SAAUC,MAAO,IAAKC,YAAa,WACvG,CAAEL,SAAU,YAAaC,OAAQ,MAAOC,QAAS,iBAAkBC,QAAS,aAAcC,MAAO,IAAKC,YAAa,kBACnH,CAAEL,SAAU,cAAeC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAC/F,CAAEL,SAAU,SAAUC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAC1F,CAAEL,SAAU,WAAYC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAC5F,CAAEL,SAAU,0BAA2BC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAC3G,CAAEL,SAAU,sBAAuBC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MACvG,CAAEL,SAAU,QAASC,OAAQ,MAAOC,QAAS,IAAKC,QAAS,IAAKC,MAAO,IAAKC,YAAa,oBAGjGC,aAAc,CACVryB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,eACZC,eAAgB,OAChBiK,MAAO,IAEXkoB,SAAU,CACNtyB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,YACZC,eAAgB,OAChBiK,MAAO,IAEXmoB,OAAQ,CACJC,aAAc,GACdC,YAAa,GACbC,YAAa,IAEjBC,oBAAqB,CACjBvP,iBAAiB,EACjBC,MAAM,EACNuP,MAAM,EACNlQ,gBAAgB,EAChBmQ,QAAQ,GAEZC,aAAc,IAIZC,EAAyB3pB,YAAY,CACvCC,KAAM,qBACNC,eACAuB,SAAU,CACN2kB,KAAM,CAACzkB,EAAOC,KACVD,EAAMykB,MAAO,GAEjB1J,oBAAqB,CAAC/a,EAAOC,KACzBD,EAAMjB,YAAYic,SAAQC,IAClBA,EAAQC,OAASjb,EAAOC,QAAQgb,OAChCD,EAAQxF,QAAUxV,EAAOC,QAAQuV,aAI7C6F,4BAA6B,CAACtb,EAAOC,KACjCA,EAAOC,QAAQ8a,SAAQvd,IACnB,MAAMwqB,EAAiBjoB,EAAMsW,oBAAoBuE,MAAKC,GAAKA,EAAEI,OAASzd,EAAKwB,QAEvEgpB,IACAA,EAAexS,QAAUhY,EAAKgY,aAK1C8F,iBAAkB,CAACvb,EAAOC,KAEtBA,EAAOC,QAAQ8a,SAAQvd,IACnB,MAAMwqB,EAAiBjoB,EAAMwZ,SAASqB,MAAKC,GAAKA,EAAExc,OAASb,EAAKwB,QAE5DgpB,IACAA,EAAexS,QAAUhY,EAAKgY,aAK1CyS,mBAAoB,CAACloB,EAAOC,KAExBA,EAAOC,QAAQ8a,SAAQvd,IACnB,MAAMwqB,EAAiBjoB,EAAMwlB,WAAW3K,MAAKC,GAAKA,EAAE7b,QAAUxB,EAAKwB,QAE/DgpB,IACAA,EAAexS,QAAUhY,EAAKgY,aAK1C0S,kBAAmB,CAACnoB,EAAOC,KACvBD,EAAM0X,SAASsD,SAAQ6M,IACfA,EAAK5oB,QAAUgB,EAAOC,QAAQjB,QAC9B4oB,EAAKpS,QAAUxV,EAAOC,QAAQuV,aAI1C+F,mBAAoB,CAACxb,EAAOC,KACxBD,EAAMyZ,WAAWuB,SAAQxC,IACjBA,EAAOvZ,QAAUgB,EAAOC,QAAQjB,QAChCuZ,EAAO/C,QAAUxV,EAAOC,QAAQuV,aAI5C2S,0BAA2B,CAACpoB,EAAOC,KAC/BD,EAAMslB,cAAgBrlB,EAAOC,SAEjCmoB,iBAAkB,CAACroB,EAAOC,KACtBD,EAAMikB,eAAgB,EACtBjkB,EAAMkkB,SAAW,IAAI3lB,EAAa2lB,WAEtCoE,eAAgB,CAACtoB,EAAOC,KACpBD,EAAMikB,eAAgB,EACtBjkB,EAAMkkB,SAASpuB,GAAKmK,EAAOC,QAAQpK,GACnCkK,EAAMkkB,SAAShmB,MAAQ+B,EAAOC,QAAQhC,MACtC8B,EAAMkkB,SAASC,YAAclkB,EAAOC,QAAQikB,YAC5CnkB,EAAMkkB,SAASE,iBAAmBnkB,EAAOC,QAAQkkB,iBACjDpkB,EAAMkkB,SAASG,kBAAoBpkB,EAAOC,QAAQmkB,kBAClDrkB,EAAMkkB,SAASI,OAASrkB,EAAOC,QAAQokB,QAE3CiE,qBAAsB,CAACvoB,EAAOC,KAC1BD,EAAMikB,eAAgB,EACtBjkB,EAAMkkB,SAAW,IAAI3lB,EAAa2lB,WAEtCsE,2BAA4B,CAACxoB,EAAOC,KAChCD,EAAM2X,eAAiB1X,EAAOC,SAElCuoB,YAAa,CAACzoB,EAAOC,KACjBD,EAAMikB,eAAgB,EACtBjkB,EAAMkkB,SAAW,IAAK3lB,EAAa2lB,UACnClkB,EAAM0kB,YAAc,GACpB1kB,EAAM2kB,eAAiB,KACvB3kB,EAAM2kB,eAAiB,KACvB3kB,EAAM4kB,aAAe,KACrB5kB,EAAM6kB,gBAAkB,GACxB7kB,EAAM8kB,mBAAqB,GAC3B9kB,EAAMsY,KAAO,GACbtY,EAAM+kB,kBAAoB,GAC1B/kB,EAAMglB,QAAU,GAChBhlB,EAAMilB,sBAAwB,GAC9BjlB,EAAMklB,YAAc,GACpBllB,EAAMmlB,YAAc,GACpBnlB,EAAMslB,cAAgB,GACtBtlB,EAAM2X,gBAAiB,EACvB3X,EAAM0X,SAAW,IACVkC,MAAMiM,IAAOC,uBAAuBC,GAAK,KAAO,GAClDlM,OACA9Y,KAAI,CAAC+Y,EAAGC,KAAJ,CACDiM,MAAOjM,EACP/a,KAAO,KAAO+a,GAAKC,WACnB/a,OAAQ,KAAO8a,GAAKC,WACpBlX,OAAQ,KAAOiX,GAAKC,WACpBvE,SAAS,OAGjBzV,EAAMimB,QAAU,IAAK1nB,EAAa0nB,SAClCjmB,EAAMwnB,OAAS,IAAKjpB,EAAaipB,QACjCxnB,EAAM6mB,SAAW,IAAKtoB,EAAasoB,UACnC7mB,EAAMjB,YAAc,GACpBiB,EAAMsW,oBAAsB,GAC5BtW,EAAMwZ,SAAW,GACjBxZ,EAAMwlB,WAAa,GACnBxlB,EAAMyZ,WAAa,GACnBzZ,EAAM2X,gBAAiB,GAE3B+Q,kBAAmB,CAAC1oB,EAAOC,KACvBD,EAAMwkB,YAAcvkB,EAAOC,SAE/ByoB,oBAAqB,CAAC3oB,EAAOC,KACzBD,EAAMwZ,SAAW,IAErBoP,iBAAkB,CAAC5oB,EAAOC,KAEtBD,EAAMsW,oBAAsBtW,EAAMsW,oBAAoBvV,KAAItD,IAAI,IACvDA,EACHgY,SAAS,MAGbzV,EAAMwZ,SAAWxZ,EAAMwZ,SAASzY,KAAItD,IAAI,IACjCA,EACHgY,SAAS,MAGbzV,EAAMwlB,WAAaxlB,EAAMwlB,WAAWzkB,KAAItD,IAAI,IACrCA,EACHgY,SAAS,MAGbzV,EAAMyZ,WAAazZ,EAAMyZ,WAAW1Y,KAAItD,IAAI,IACrCA,EACHgY,SAAS,MAGbzV,EAAM0X,SAAW1X,EAAM0X,SAAS3W,KAAItD,IAAI,IACjCA,EACHgY,SAAS,MAGbzV,EAAMwkB,YAAcvkB,EAAOC,QAC3BF,EAAM2X,gBAAiB,EACvB3X,EAAM4nB,oBAAsB,IAAKrpB,EAAaqpB,qBAE9C5nB,EAAM6mB,SAAS5xB,WAAa,EAC5B+K,EAAM6mB,SAAS3xB,SAAW,GAC1B8K,EAAM6mB,SAAS1xB,WAAa,eAC5B6K,EAAM6mB,SAASzxB,eAAiB,QAEpCyzB,0BAA2B,CAAC7oB,EAAOC,KAC/BD,EAAM4nB,oBAAsB,IACrB5nB,EAAM4nB,oBACT,CAAC3nB,EAAOC,QAAQpK,IAAKmK,EAAOC,QAAQjB,QAG5C6pB,yBAA0B,CAAC9oB,EAAOC,KAC9BD,EAAMjB,YAAc,GACpBiB,EAAMwZ,SAAW,IAErBuP,qBAAsB,CAAC/oB,EAAOC,KAAY,IAAD,EACjC+oB,EAAQ,UAAGhpB,EAAMunB,SAASloB,aAAlB,aAAG,EAAsBwb,MAAKC,GAAKA,EAAEhlB,KAAOmK,EAAOC,QAAQpK,KACpEkzB,IACCA,EAAS/oB,EAAOC,QAAQlB,KAAOiB,EAAOC,QAAQjB,SAI1D8d,cAAgBnoB,IACZA,EAAQooB,WACJiM,IAAqBt0B,UAAUu0B,kBAAkB/L,gBAAgB,CAACnd,EAAOC,KAAY,IAAD,IAWhF,GAVAD,EAAMukB,cAAe,EACrBvkB,EAAM6mB,SAAS5xB,WAAagL,EAAOC,QAAQjL,WAC3C+K,EAAM6mB,SAAS3xB,SAAW+K,EAAOC,QAAQhL,SACzC8K,EAAM6mB,SAAS1M,UAAYla,EAAOC,QAAQia,UAC1Cna,EAAM6mB,SAASzM,WAAana,EAAOC,QAAQka,WAC3Cpa,EAAM6mB,SAAS1xB,WAAa8K,EAAOC,QAAQ/K,WAC3C6K,EAAM6mB,SAASzxB,eAAiB6K,EAAOC,QAAQ9K,eAC/C4K,EAAM6mB,SAASxnB,MAAQY,EAAOC,QAAQb,MACtCW,EAAM6mB,SAASC,gBAAf,oBAAiC7mB,EAAOC,QAAQipB,YAAYrC,uBAA5D,aAAiC,EAA4C/lB,KAAI+Z,GAAKA,EAAE9b,aAAxF,QAAgG,GAE5FgB,EAAMulB,wBAAwB1S,SAAW7S,EAAMsW,oBAAoBzD,OAAQ,CAE3E,MAAMuW,EAAe,GAErBppB,EAAMulB,wBAAwBvK,SAAQqO,IAAY,IAAD,IAI7C,GAFkB,UAAGppB,EAAOC,QAAQipB,mBAAlB,iBAAG,EAA4BG,oBAA/B,aAAG,EAA0CzO,MAAKC,GAAKA,EAAE9b,IAAIuqB,gBAAkBF,EAAQnO,KAAKqO,gBAE5F,CAAC,IAAD,IACd,MAAMC,EAAS,oBAAGxpB,EAAMsW,oBAAoBuE,MAAKC,GAAKA,EAAEI,OAASmO,EAAQnO,cAA1D,aAAG,EAA8DzF,eAAjE,SAEf2T,EAAajO,KAAK,IACXkO,EACH5T,QAAS+T,QAMrBxpB,EAAMsW,oBAAsB8S,MAIvCpM,WACGiM,IAAqBt0B,UAAUu0B,kBAAkBzF,cAAc,CAACzjB,EAAOC,KACnED,EAAMukB,cAAe,KAG5BvH,WACGiM,IAAqBt0B,UAAUu0B,kBAAkBxF,eAAe,CAAC1jB,EAAOC,KACpED,EAAMukB,cAAe,KAG5BvH,WACGiM,IAAqBt0B,UAAU80B,iBAAiBtM,gBAAgB,CAACnd,EAAOC,KACpED,EAAM+mB,kBAAkB9xB,WAAagL,EAAOC,QAAQjL,WACpD+K,EAAM+mB,kBAAkB7xB,SAAW+K,EAAOC,QAAQhL,SAClD8K,EAAM+mB,kBAAkB5M,UAAYla,EAAOC,QAAQia,UACnDna,EAAM+mB,kBAAkB3M,WAAana,EAAOC,QAAQka,WACpDpa,EAAM+mB,kBAAkB1nB,MAAQY,EAAOC,QAAQb,SAGtD2d,WACGiM,IAAqBt0B,UAAU+0B,gBAAgBvM,gBAAgB,CAACnd,EAAOC,KACnED,EAAMsnB,aAAaryB,WAAagL,EAAOC,QAAQjL,WAC/C+K,EAAMsnB,aAAapyB,SAAW+K,EAAOC,QAAQhL,SAC7C8K,EAAMsnB,aAAanN,UAAYla,EAAOC,QAAQia,UAC9Cna,EAAMsnB,aAAalN,WAAana,EAAOC,QAAQka,WAC/Cpa,EAAMsnB,aAAanyB,WAAa8K,EAAOC,QAAQ/K,WAC/C6K,EAAMsnB,aAAalyB,eAAiB6K,EAAOC,QAAQ9K,eACnD4K,EAAMsnB,aAAajoB,MAAQY,EAAOC,QAAQb,SAGjD2d,WACGxoB,IAASG,UAAUY,YAAY4nB,gBAAgB,CAACnd,EAAOC,KACnDD,EAAMunB,SAAStyB,WAAagL,EAAOC,QAAQjL,WAC3C+K,EAAMunB,SAASryB,SAAW+K,EAAOC,QAAQhL,SACzC8K,EAAMunB,SAASpyB,WAAa8K,EAAOC,QAAQ/K,WAC3C6K,EAAMunB,SAASnyB,eAAiB6K,EAAOC,QAAQ9K,eAC/C4K,EAAMunB,SAASpN,UAAYla,EAAOC,QAAQia,UAC1Cna,EAAMunB,SAASnN,WAAana,EAAOC,QAAQka,WAC3Cpa,EAAMunB,SAASloB,MAAQY,EAAOC,QAAQb,SAG7C2d,WACGiM,IAAqBt0B,UAAUg1B,iBAAiBxM,gBAAgB,CAACnd,EAAOC,KACpED,EAAM0kB,YAAczkB,EAAOC,QAAQwkB,YACnC1kB,EAAM2kB,eAAiB1kB,EAAOC,QAAQykB,eACtC3kB,EAAM4kB,aAAe3kB,EAAOC,QAAQ0kB,aACpC5kB,EAAM6kB,gBAAkB5kB,EAAOC,QAAQ2kB,gBACvC7kB,EAAM8kB,mBAAqB7kB,EAAOC,QAAQ4kB,mBAC1C9kB,EAAMsY,KAAOrY,EAAOC,QAAQoY,KAC5BtY,EAAM+kB,kBAAoB9kB,EAAOC,QAAQ6kB,kBACzC/kB,EAAMglB,QAAU/kB,EAAOC,QAAQ8kB,QAC/BhlB,EAAMilB,sBAAwBhlB,EAAOC,QAAQ+kB,sBAC7CjlB,EAAMklB,YAAenuB,YAAkBkJ,EAAOC,QAAQglB,aACtDllB,EAAMilB,sBAAwBhlB,EAAOC,QAAQ+kB,sBAC7CjlB,EAAMmlB,YAAcllB,EAAOC,QAAQilB,YACnCnlB,EAAMolB,UAAYnlB,EAAOC,QAAQklB,UACjCplB,EAAMqlB,gBAAkBplB,EAAOC,QAAQmlB,gBACvCrlB,EAAMylB,aAAexlB,EAAOC,QAAQulB,aAEpCzlB,EAAMimB,QAAQC,aAAejmB,EAAOC,QAAQ+lB,QAAQC,aACpDlmB,EAAMimB,QAAQE,aAAelmB,EAAOC,QAAQ+lB,QAAQE,aACpDnmB,EAAMimB,QAAQG,kBAAoBnmB,EAAOC,QAAQ+lB,QAAQG,kBACzDpmB,EAAMimB,QAAQI,YAAcpmB,EAAOC,QAAQ+lB,QAAQI,YAEnDrmB,EAAMimB,QAAQK,UAAYrmB,EAAOC,QAAQ+lB,QAAQK,UACjDtmB,EAAMimB,QAAQM,cAAgBtmB,EAAOC,QAAQ+lB,QAAQM,cACrDvmB,EAAMimB,QAAQO,aAAevmB,EAAOC,QAAQ+lB,QAAQO,aACpDxmB,EAAMimB,QAAQQ,MAAQxmB,EAAOC,QAAQ+lB,QAAQQ,MAE7CzmB,EAAMimB,QAAQW,iBAAmB3mB,EAAOC,QAAQ+lB,QAAQW,oBAG/D5J,WACGU,IAAW/oB,UAAUi1B,4BAA4BzM,gBAAgB,CAACnd,EAAOC,KAErED,EAAMjB,YAAc,CAAC,IACdkB,EAAOC,QACVuV,SAAS,IAGbzV,EAAMsW,oBAAsB,GAC5BtW,EAAMulB,wBAA0B,GAEhCtlB,EAAOC,QAAQoW,oBAAoB0E,SAAQ3C,IACvCrY,EAAMsW,oBAAoB6E,KAAK,IACxB9C,EACH5C,SAAS,IAGbzV,EAAMulB,wBAAwBpK,KAAK,IAC5B9C,EACH5C,SAAS,UAKxBuH,WACGU,IAAW/oB,UAAUmpB,8BAA8BX,gBAAgB,CAACnd,EAAOC,KACvED,EAAMwZ,SAAWvZ,EAAOC,QAAQa,KAAItD,IAAI,cAAK,IACtCA,EACHgY,QAAO,oBAAEzV,EAAMwZ,SAASqB,MAAKC,GAAKA,EAAExc,OAASb,EAAKa,cAA3C,aAAE,EAAgDmX,eAAlD,gBAIlBuH,WACGrjB,IAAUhF,UAAUiF,cAAcujB,gBAAgB,CAACnd,EAAOC,KACtDD,EAAMyZ,WAAaxZ,EAAOC,QAAQa,KAAItD,IAAI,IACnCA,EACHwB,MAAOxB,EAAKge,WACZhG,SAAS,SAIpBuH,WACGiM,IAAqBt0B,UAAUk1B,qBAAqB1M,gBAAgB,CAACnd,EAAOC,KACxED,EAAMwnB,OAAOC,aAAexnB,EAAOC,WAG1C8c,WACGiM,IAAqBt0B,UAAUm1B,wBAAwB3M,gBAAgB,CAACnd,EAAOC,KAC3ED,EAAMwnB,OAAOE,YAAcznB,EAAOC,WAGzC8c,WACGiM,IAAqBt0B,UAAUo1B,oBAAoB5M,gBAAgB,CAACnd,EAAOC,KACvED,EAAMwnB,OAAOG,YAAc1nB,EAAOC,WAGzC8c,WACGC,IAAgBtoB,UAAUq1B,YAAY7M,gBAAgB,CAACnd,EAAOC,KAC1DD,EAAMwlB,WAAavlB,EAAOC,QAAQa,KAAI+mB,IAAM,cAAK,CAC7C9oB,IAAK8oB,EAAO9oB,IACZC,MAAO6oB,EAAO9oB,IACd8D,MAAOglB,EAAOhlB,MACduV,gBAAiByP,EAAOmC,oBACxBxU,QAAO,oBAAEzV,EAAMwlB,WAAW3K,MAAKC,GAAKA,EAAE9b,MAAQ8oB,EAAO9oB,aAA9C,aAAE,EAAkDyW,eAApD,oBAOd,KACTgP,EADS,oBAET1J,EAFS,4BAGTO,EAHS,iBAITC,EAJS,mBAKTC,EALS,0BAMT4M,EANS,iBAOTC,EAPS,eAQTC,EARS,qBASTC,EATS,2BAUTC,EAVS,kBAWTL,EAXS,YAYTM,EAZS,kBAaTC,EAbS,oBAcTC,EAdS,iBAeTC,EAfS,0BAgBTC,EAhBS,mBAiBTX,EAjBS,yBAkBTY,EAlBS,qBAmBTC,GACAf,EAAuB3mB,QAEZ2mB,MAAf,S,iCCvgBA,wXASO,MAAMzpB,EAAe,CACxB0lB,eAAe,EACfC,SAAU,CACNpuB,GAAI,KACJoI,MAAO,GACPimB,YAAa,GACbC,iBAAkB,KAClBC,mBAAmB,EACnBC,OAAO,IAEXC,cAAc,EACdC,YAAa,GACbC,MAAM,EACNC,YAAa,GACbC,eAAgB,KAChBC,aAAc,KACdsF,gBAAiB,GACjBrF,gBAAiB,GACjBC,mBAAoB,GACpBxM,KAAM,GACNyM,kBAAmB,GACnBC,QAAS,GACTC,sBAAuB,GACvBC,YAAa,GACbC,YAAa,GACbC,UAAW,GACXC,gBAAiB,GACjBC,cAAe,GACfvmB,YAAa,GACborB,gBAAiB,CACblP,QAAS,GACT5C,gBAAiB,GACjByP,OAAQ,GACRxP,KAAM,GACNC,MAAO,IAEXjC,oBAAqB,GACrBiP,wBAAyB,GACzB/L,SAAU,GACVC,WAAY,GACZ+L,WAAY,GACZ7N,gBAAgB,EAChB8N,aAAc,GACdC,gBAAiB,CACbC,aAAc,MAElBC,YAAa,CACTD,aAAc,MAElBjO,SAAU,IACHkC,MAAMiM,IAAOC,uBAAuBC,GAAK,KAAO,GAClDlM,OACA9Y,KAAI,CAAC+Y,EAAGC,KAAJ,CACDiM,MAAOjM,EACPjkB,IAAM,KAAOikB,GAAKC,WAClB/a,OAAQ,KAAO8a,GAAKC,WACpBlX,OAAQ,KAAOiX,GAAKC,gBAG5BiM,QAAS,CACLC,aAAc,KACdC,aAAc,KACdC,kBAAmB,KACnBC,YAAa,KACbC,UAAW,KACXC,cAAe,KACftB,sBAAuB,KACvBuB,aAAc,KACdC,MAAO,KACPC,mBAAoB,GACpBC,wBAAyB,GACzBC,iBAAkB,IAEtBC,SAAU,CACN5xB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,eACZC,eAAgB,OAChBiK,MAAO,GACPiqB,aAAc,GACdxC,gBAAiB,IAErBC,kBAAmB,CACf9xB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,WACZC,eAAgB,OAChBiK,MAAO,CACH,CAAE2nB,SAAU,iBAAkBC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAClG,CAAEL,SAAU,gBAAiBC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MACjG,CAAEL,SAAU,YAAaC,OAAQ,KAAMC,QAAS,UAAWC,QAAS,SAAUC,MAAO,IAAKC,YAAa,WACvG,CAAEL,SAAU,YAAaC,OAAQ,MAAOC,QAAS,iBAAkBC,QAAS,aAAcC,MAAO,IAAKC,YAAa,kBACnH,CAAEL,SAAU,cAAeC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAC/F,CAAEL,SAAU,SAAUC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAC1F,CAAEL,SAAU,WAAYC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAC5F,CAAEL,SAAU,0BAA2BC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAC3G,CAAEL,SAAU,sBAAuBC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MACvG,CAAEL,SAAU,QAASC,OAAQ,MAAOC,QAAS,IAAKC,QAAS,IAAKC,MAAO,IAAKC,YAAa,oBAGjGC,aAAc,CACVryB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,eACZC,eAAgB,OAChBiK,MAAO,IAEXkoB,SAAU,CACNtyB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,YACZC,eAAgB,OAChBiK,MAAO,IAEXmoB,OAAQ,CACJC,aAAc,GACdC,YAAa,GACbC,YAAa,IAEjBC,oBAAqB,CACjBvP,iBAAiB,EACjBC,MAAM,EACNuP,MAAM,EACNlQ,gBAAgB,EAChBmQ,QAAQ,GAEZC,aAAc,IAIZqC,EAA2B/rB,YAAY,CACzCC,KAAM,wBACNC,eACAuB,SAAU,CACN2kB,KAAM,CAACzkB,EAAOC,KACVD,EAAMykB,MAAO,GAEjB4F,mBAAoB,CAACrqB,EAAOC,KACxB,MAAM,IAAEjB,EAAF,MAAOC,GAAUgB,EAAOC,QAC9BF,EAAMmqB,gBAAgBnrB,GAAOC,GAEjCmpB,0BAA2B,CAACpoB,EAAOC,KAC/BD,EAAMslB,cAAgBrlB,EAAOC,SAEjCmoB,iBAAkB,CAACroB,EAAOC,KACtBD,EAAMikB,eAAgB,EACtBjkB,EAAMkkB,SAAW,IAAI3lB,EAAa2lB,WAEtCoE,eAAgB,CAACtoB,EAAOC,KACpBD,EAAMikB,eAAgB,EACtBjkB,EAAMkkB,SAASpuB,GAAKmK,EAAOC,QAAQpK,GACnCkK,EAAMkkB,SAAShmB,MAAQ+B,EAAOC,QAAQhC,MACtC8B,EAAMkkB,SAASC,YAAclkB,EAAOC,QAAQikB,YAC5CnkB,EAAMkkB,SAASE,iBAAmBnkB,EAAOC,QAAQkkB,iBACjDpkB,EAAMkkB,SAASG,kBAAoBpkB,EAAOC,QAAQmkB,kBAClDrkB,EAAMkkB,SAASI,OAASrkB,EAAOC,QAAQokB,QAE3CiE,qBAAsB,CAACvoB,EAAOC,KAC1BD,EAAMikB,eAAgB,EACtBjkB,EAAMkkB,SAAW,IAAI3lB,EAAa2lB,WAEtCsE,2BAA4B,CAACxoB,EAAOC,KAChCD,EAAM2X,eAAiB1X,EAAOC,SAElCuoB,YAAa,CAACzoB,EAAOC,KACjBD,EAAMikB,eAAgB,EACtBjkB,EAAMkkB,SAAW,IAAK3lB,EAAa2lB,UACnClkB,EAAM0kB,YAAc,GACpB1kB,EAAM2kB,eAAiB,KACvB3kB,EAAM2kB,eAAiB,KACvB3kB,EAAM4kB,aAAe,KACrB5kB,EAAMkqB,gBAAkB,GACxBlqB,EAAM6kB,gBAAkB,GACxB7kB,EAAM8kB,mBAAqB,GAC3B9kB,EAAMsY,KAAO,GACbtY,EAAM+kB,kBAAoB,GAC1B/kB,EAAMglB,QAAU,GAChBhlB,EAAMilB,sBAAwB,GAC9BjlB,EAAMklB,YAAc,GACpBllB,EAAMmlB,YAAc,GACpBnlB,EAAMslB,cAAgB,GACtBtlB,EAAM2X,gBAAiB,EACvB3X,EAAM0X,SAAW,IACVkC,MAAMiM,IAAOC,uBAAuBC,GAAK,KAAO,GAClDlM,OACA9Y,KAAI,CAAC+Y,EAAGC,KAAJ,CACDiM,MAAOjM,EACP/a,KAAO,KAAO+a,GAAKC,WACnB/a,OAAQ,KAAO8a,GAAKC,WACpBlX,OAAQ,KAAOiX,GAAKC,WACpBvE,SAAS,OAGjBzV,EAAMimB,QAAU,IAAK1nB,EAAa0nB,SAClCjmB,EAAMwnB,OAAS,IAAKjpB,EAAaipB,QACjCxnB,EAAM6mB,SAAW,IAAKtoB,EAAasoB,UACnC7mB,EAAMjB,YAAc,GACpBiB,EAAMsW,oBAAsB,GAC5BtW,EAAMwZ,SAAW,GACjBxZ,EAAMwlB,WAAa,GACnBxlB,EAAMyZ,WAAa,GACnBzZ,EAAM2X,gBAAiB,GAE3B+Q,kBAAmB,CAAC1oB,EAAOC,KACvBD,EAAMwkB,YAAcvkB,EAAOC,SAE/ByoB,oBAAqB,CAAC3oB,EAAOC,KACzBD,EAAMwZ,SAAW,IAErBoP,iBAAkB,CAAC5oB,EAAOC,KAEtBD,EAAMmqB,gBAAgB9R,gBAAkB,GACxCrY,EAAMmqB,gBAAgBrC,OAAS,GAC/B9nB,EAAMmqB,gBAAgB7R,KAAO,GAC7BtY,EAAMmqB,gBAAgB5R,MAAQ,GAE9BvY,EAAMwkB,YAAcvkB,EAAOC,QAC3BF,EAAM2X,gBAAiB,EACvB3X,EAAM4nB,oBAAsB,IAAKrpB,EAAaqpB,qBAE9C5nB,EAAM6mB,SAAS5xB,WAAa,EAC5B+K,EAAM6mB,SAAS3xB,SAAW,GAC1B8K,EAAM6mB,SAAS1xB,WAAa,eAC5B6K,EAAM6mB,SAASzxB,eAAiB,QAEpCyzB,0BAA2B,CAAC7oB,EAAOC,KAC/BD,EAAM4nB,oBAAsB,IACrB5nB,EAAM4nB,oBACT,CAAC3nB,EAAOC,QAAQpK,IAAKmK,EAAOC,QAAQjB,QAG5C6pB,yBAA0B,CAAC9oB,EAAOC,KAC9BD,EAAMjB,YAAc,GACpBiB,EAAMwZ,SAAW,IAErBuP,qBAAsB,CAAC/oB,EAAOC,KAAY,IAAD,EACjC+oB,EAAQ,UAAGhpB,EAAMunB,SAASloB,aAAlB,aAAG,EAAsBwb,MAAKC,GAAKA,EAAEhlB,KAAOmK,EAAOC,QAAQpK,KACpEkzB,IACCA,EAAS/oB,EAAOC,QAAQlB,KAAOiB,EAAOC,QAAQjB,SAI1D8d,cAAgBnoB,IACZA,EAAQooB,WACJiM,IAAqBt0B,UAAU21B,oBAAoBnN,gBAAgB,CAACnd,EAAOC,KAAY,IAAD,IAClFD,EAAMukB,cAAe,EACrBvkB,EAAM6mB,SAAS5xB,WAAagL,EAAOC,QAAQjL,WAC3C+K,EAAM6mB,SAAS3xB,SAAW+K,EAAOC,QAAQhL,SACzC8K,EAAM6mB,SAAS1M,UAAYla,EAAOC,QAAQia,UAC1Cna,EAAM6mB,SAASzM,WAAana,EAAOC,QAAQka,WAC3Cpa,EAAM6mB,SAAS1xB,WAAa8K,EAAOC,QAAQ/K,WAC3C6K,EAAM6mB,SAASzxB,eAAiB6K,EAAOC,QAAQ9K,eAC/C4K,EAAM6mB,SAASxnB,MAAQY,EAAOC,QAAQb,MACtCW,EAAM6mB,SAASyC,aAAerpB,EAAOC,QAAQipB,YAAYG,aACzDtpB,EAAM6mB,SAASC,gBAAf,oBAAiC7mB,EAAOC,QAAQipB,YAAYrC,uBAA5D,aAAiC,EAA4C/lB,KAAI+Z,GAAKA,EAAE9b,aAAxF,QAAgG,MAyBvGge,WACGiM,IAAqBt0B,UAAUu0B,kBAAkBzF,cAAc,CAACzjB,EAAOC,KACnED,EAAMukB,cAAe,KAG5BvH,WACGiM,IAAqBt0B,UAAUu0B,kBAAkBxF,eAAe,CAAC1jB,EAAOC,KACpED,EAAMukB,cAAe,KAG5BvH,WACGiM,IAAqBt0B,UAAU80B,iBAAiBtM,gBAAgB,CAACnd,EAAOC,KACpED,EAAM+mB,kBAAkB9xB,WAAagL,EAAOC,QAAQjL,WACpD+K,EAAM+mB,kBAAkB7xB,SAAW+K,EAAOC,QAAQhL,SAClD8K,EAAM+mB,kBAAkB5M,UAAYla,EAAOC,QAAQia,UACnDna,EAAM+mB,kBAAkB3M,WAAana,EAAOC,QAAQka,WACpDpa,EAAM+mB,kBAAkB1nB,MAAQY,EAAOC,QAAQb,SAGtD2d,WACGiM,IAAqBt0B,UAAU+0B,gBAAgBvM,gBAAgB,CAACnd,EAAOC,KACnED,EAAMsnB,aAAaryB,WAAagL,EAAOC,QAAQjL,WAC/C+K,EAAMsnB,aAAapyB,SAAW+K,EAAOC,QAAQhL,SAC7C8K,EAAMsnB,aAAanN,UAAYla,EAAOC,QAAQia,UAC9Cna,EAAMsnB,aAAalN,WAAana,EAAOC,QAAQka,WAC/Cpa,EAAMsnB,aAAanyB,WAAa8K,EAAOC,QAAQ/K,WAC/C6K,EAAMsnB,aAAalyB,eAAiB6K,EAAOC,QAAQ9K,eACnD4K,EAAMsnB,aAAajoB,MAAQY,EAAOC,QAAQb,SAGjD2d,WACGxoB,IAASG,UAAUY,YAAY4nB,gBAAgB,CAACnd,EAAOC,KACnDD,EAAMunB,SAAStyB,WAAagL,EAAOC,QAAQjL,WAC3C+K,EAAMunB,SAASryB,SAAW+K,EAAOC,QAAQhL,SACzC8K,EAAMunB,SAASpyB,WAAa8K,EAAOC,QAAQ/K,WAC3C6K,EAAMunB,SAASnyB,eAAiB6K,EAAOC,QAAQ9K,eAC/C4K,EAAMunB,SAASpN,UAAYla,EAAOC,QAAQia,UAC1Cna,EAAMunB,SAASnN,WAAana,EAAOC,QAAQka,WAC3Cpa,EAAMunB,SAASloB,MAAQY,EAAOC,QAAQb,SAG7C2d,WACGiM,IAAqBt0B,UAAUg1B,iBAAiBxM,gBAAgB,CAACnd,EAAOC,KACpED,EAAM0kB,YAAczkB,EAAOC,QAAQwkB,YACnC1kB,EAAM2kB,eAAiB1kB,EAAOC,QAAQykB,eACtC3kB,EAAM4kB,aAAe3kB,EAAOC,QAAQ0kB,aACpC5kB,EAAMkqB,gBAAkBjqB,EAAOC,QAAQgqB,gBACvClqB,EAAM6kB,gBAAkB5kB,EAAOC,QAAQ2kB,gBACvC7kB,EAAM8kB,mBAAqB7kB,EAAOC,QAAQ4kB,mBAC1C9kB,EAAMsY,KAAOrY,EAAOC,QAAQoY,KAC5BtY,EAAM+kB,kBAAoB9kB,EAAOC,QAAQ6kB,kBACzC/kB,EAAMglB,QAAU/kB,EAAOC,QAAQ8kB,QAC/BhlB,EAAMilB,sBAAwBhlB,EAAOC,QAAQ+kB,sBAC7CjlB,EAAMklB,YAAenuB,YAAkBkJ,EAAOC,QAAQglB,aACtDllB,EAAMilB,sBAAwBhlB,EAAOC,QAAQ+kB,sBAC7CjlB,EAAMmlB,YAAcllB,EAAOC,QAAQilB,YACnCnlB,EAAMolB,UAAYnlB,EAAOC,QAAQklB,UACjCplB,EAAMqlB,gBAAkBplB,EAAOC,QAAQmlB,gBACvCrlB,EAAMylB,aAAexlB,EAAOC,QAAQulB,aAEpCzlB,EAAMimB,QAAQC,aAAejmB,EAAOC,QAAQ+lB,QAAQC,aACpDlmB,EAAMimB,QAAQE,aAAelmB,EAAOC,QAAQ+lB,QAAQE,aACpDnmB,EAAMimB,QAAQG,kBAAoBnmB,EAAOC,QAAQ+lB,QAAQG,kBACzDpmB,EAAMimB,QAAQI,YAAcpmB,EAAOC,QAAQ+lB,QAAQI,YAEnDrmB,EAAMimB,QAAQK,UAAYrmB,EAAOC,QAAQ+lB,QAAQK,UACjDtmB,EAAMimB,QAAQM,cAAgBtmB,EAAOC,QAAQ+lB,QAAQM,cACrDvmB,EAAMimB,QAAQO,aAAevmB,EAAOC,QAAQ+lB,QAAQO,aACpDxmB,EAAMimB,QAAQQ,MAAQxmB,EAAOC,QAAQ+lB,QAAQQ,MAE7CzmB,EAAMimB,QAAQW,iBAAmB3mB,EAAOC,QAAQ+lB,QAAQW,oBAG/D5J,WACGU,IAAW/oB,UAAUi1B,4BAA4BzM,gBAAgB,CAACnd,EAAOC,KACrE,MAAMsqB,EAAY,CAACtqB,EAAOC,SAC1BF,EAAMjB,YAAcwrB,EAAUxpB,KAAIka,IAAO,CACrCnlB,GAAImlB,EAAQnlB,GACZmJ,MAAOgc,EAAQC,KACfpY,MAAOmY,EAAQkJ,gBAGnBnkB,EAAMmqB,gBAAgBlP,QAAUjb,EAAMjB,YAAY8T,OAAS,EAAI,CAAC7S,EAAMjB,YAAY,IAAM,GAExFiB,EAAMsW,oBAAsBrW,EAAOC,QAAQoW,oBAAoBvV,KAAIsX,IAAe,CAC9EviB,GAAIuiB,EAAgBviB,GACpBmJ,MAAOoZ,EAAgB6C,KACvBpY,MAAOuV,EAAgB8L,mBAIlCnH,WACGC,IAAgBtoB,UAAUq1B,YAAY7M,gBAAgB,CAACnd,EAAOC,KAC1DD,EAAMwlB,WAAavlB,EAAOC,QAAQa,KAAI+mB,IAAM,CACxChyB,GAAIgyB,EAAO9oB,IACXC,MAAO6oB,EAAO9oB,IACd8D,MAAOglB,EAAOhlB,MACd0nB,gBAAiB1C,EAAOmC,wBAG5BjqB,EAAMmqB,gBAAgBrC,OAAS9nB,EAAMwlB,WAAW3S,OAAS,EACvD7S,EAAMmqB,gBAAgBrC,OAAO1M,QAAO0M,GAAU9nB,EAAMwlB,WAAWiF,MAAKC,GAAWA,EAAQzrB,QAAU6oB,EAAO7oB,UACxG,MAGT+d,WACGU,IAAW/oB,UAAUmpB,8BAA8BX,gBAAgB,CAACnd,EAAOC,KACvED,EAAMwZ,SAAWvZ,EAAOC,QAAQa,KAAIuX,IAAI,CACpCxiB,GAAIwiB,EAAKxiB,GACTmJ,MAAOqZ,EAAKha,KACZwE,MAAOwV,EAAKha,KACZksB,gBAAiBlS,EAAK2R,wBAG1BjqB,EAAMmqB,gBAAgB7R,KAAOtY,EAAMwZ,SAAS3G,OAAS,EACnD7S,EAAMmqB,gBAAgB7R,KAAK8C,QAAO9C,GAAQtY,EAAMwZ,SAASiR,MAAKE,GAASA,EAAM1rB,QAAUqZ,EAAKrZ,UAC5F,MAGT+d,WACGrjB,IAAUhF,UAAUiF,cAAcujB,gBAAgB,CAACnd,EAAOC,KACtDD,EAAMyZ,WAAaxZ,EAAOC,QAAQa,KAAItD,IAAI,IACnCA,EACHwB,MAAOxB,EAAKge,WACZhG,SAAS,SAIpBuH,WACGiM,IAAqBt0B,UAAUk1B,qBAAqB1M,gBAAgB,CAACnd,EAAOC,KACxED,EAAMwnB,OAAOC,aAAexnB,EAAOC,WAG1C8c,WACGiM,IAAqBt0B,UAAUm1B,wBAAwB3M,gBAAgB,CAACnd,EAAOC,KAC3ED,EAAMwnB,OAAOE,YAAcznB,EAAOC,WAGzC8c,WACGiM,IAAqBt0B,UAAUo1B,oBAAoB5M,gBAAgB,CAACnd,EAAOC,KACvED,EAAMwnB,OAAOG,YAAc1nB,EAAOC,eAMrC,KACTukB,EADS,mBAET4F,EAFS,0BAGTjC,EAHS,iBAITC,EAJS,eAKTC,EALS,qBAMTC,EANS,2BAOTC,EAPS,kBAQTL,EARS,YASTM,EATS,kBAUTC,EAVS,oBAWTC,EAXS,iBAYTC,EAZS,0BAaTC,EAbS,mBAcTX,EAdS,yBAeTY,EAfS,qBAgBTC,GACAqB,EAAyB/oB,QAEd+oB,MAAf,S,iCC7cA,6SAIO,MA0DDQ,EAAmBvsB,YAAY,CACjCC,KAAM,eACNC,aA5DwB,CACxBssB,gBAAgB,EAChBC,kBAAkB,EAClBC,SAAU,EACV7Q,UAAW,CACPjlB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZ3Y,cAAc,EACdtM,WAAY,gBACZC,eAAgB,MAChBiK,MAAO,GACP2rB,oBAAqB,IAEzBC,gBAAiB,CACbh2B,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZ3Y,cAAc,EACdtM,WAAY,gBACZC,eAAgB,MAChBiK,MAAO,GACP2rB,oBAAqB,IAEzBE,kBAAmB,CAAE,SAAU,YAAa,cAC5Cp1B,GAAI,KACJ0L,WAAY,CACRvC,MAAO,GACPgE,MAAO,IAEX3E,KAAM,CACFW,MAAO,GACPgE,MAAO,IAEXkoB,UAAW,CACPlsB,MAAO,KACPgE,MAAO,IAEXmoB,QAAS,CACLnsB,MAAO,KACPgE,MAAO,IAEXooB,YAAa,CACTpsB,MAAO,GACPgE,MAAO,IAEXqoB,mBAAoB,CAChBrsB,MAAO,GACPgE,MAAO,IAEXsoB,cAAe,CACXtsB,MAAO,GACPgE,MAAO,KAOXnD,SAAU,CACN0rB,kBAAmB,CAACxrB,EAAOC,KACvBD,EAAM6qB,gBAAiB,EACvB7qB,EAAM8qB,kBAAmB,GAE7BW,uBAAwB,CAACzrB,EAAOC,KAC5BD,EAAMlK,GAAKmK,EAAOC,QAAQpK,GAC1BkK,EAAM6qB,gBAAiB,EACvB7qB,EAAM8qB,kBAAmB,GAE7BY,uBAAwB,CAAC1rB,EAAOC,KAC5BD,EAAM6qB,gBAAiB,EACvB7qB,EAAMlK,GAAK,KAEXkK,EAAM1B,KAAKW,MAAQ,GACnBe,EAAM1B,KAAK2E,MAAQ,GAEnBjD,EAAMmrB,UAAUlsB,MAAQ,KACxBe,EAAMmrB,UAAUloB,MAAQ,GAExBjD,EAAMorB,QAAQnsB,MAAQ,KACtBe,EAAMorB,QAAQnoB,MAAQ,GAEtBjD,EAAMqrB,YAAYpsB,MAAQ,GAC1Be,EAAMqrB,YAAYpoB,MAAQ,GAE1BjD,EAAMsrB,mBAAmBrsB,MAAQ,GACjCe,EAAMsrB,mBAAmBroB,MAAQ,GAEjCjD,EAAMurB,cAActsB,MAAQ,GAC5Be,EAAMurB,cAActoB,MAAQ,IAEhC0oB,sBAAuB,CAAC3rB,EAAOC,KAC3BD,EAAM6qB,gBAAiB,EACvB7qB,EAAMlK,GAAKmK,EAAOC,QAAQpK,GAE1BkK,EAAM1B,KAAKW,MAAQgB,EAAOC,QAAQ5B,KAClC0B,EAAM1B,KAAK2E,MAAQ,GAEnBjD,EAAMmrB,UAAUlsB,MAAQgB,EAAOC,QAAQirB,UACvCnrB,EAAMmrB,UAAUloB,MAAQ,GAExBjD,EAAMorB,QAAQnsB,MAAQgB,EAAOC,QAAQkrB,QACrCprB,EAAMorB,QAAQnoB,MAAQ,GAEtBjD,EAAMqrB,YAAYpsB,MAAQgB,EAAOC,QAAQmrB,YACzCrrB,EAAMqrB,YAAYpoB,MAAQ,GAE1BjD,EAAMsrB,mBAAmBrsB,MAAQgB,EAAOC,QAAQorB,mBAChDtrB,EAAMsrB,mBAAmBroB,MAAQ,GAEjCjD,EAAMurB,cAActsB,MAAQ,GAC5Be,EAAMurB,cAActoB,MAAQ,IAEhC4e,aAAc,CAAC7hB,EAAOC,KAClBD,EAAMC,EAAOC,QAAQ4b,OAAO7Y,MAAQ,GACpCjD,EAAMC,EAAOC,QAAQ4b,OAAO7c,MAAQgB,EAAOC,QAAQjB,OAEvDod,kBAAmB,CAACrc,EAAOC,KACvBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAM8b,GAAO7Y,MAAQsZ,EAAO,OAGpCqP,YAAa,CAAC5rB,EAAOC,KACjBD,EAAM+qB,SAAW9qB,EAAOC,SAE5B2rB,uBAAwB,CAAC7rB,EAAOC,KAC5BD,EAAMirB,gBAAgBD,oBAAsB/qB,EAAOC,UAG3D6c,cAAgBnoB,IACZA,EAAQooB,WACJ1b,IAAe3M,UAAU4M,OAAO4b,gBAAgB,CAACnd,EAAOC,KACpDD,EAAMka,UAAUjlB,WAAagL,EAAOC,QAAQjL,WAC5C+K,EAAMka,UAAUhlB,SAAW+K,EAAOC,QAAQhL,SAC1C8K,EAAMka,UAAUC,UAAYla,EAAOC,QAAQia,UAC3Cna,EAAMka,UAAUE,WAAana,EAAOC,QAAQka,WAC5Cpa,EAAMka,UAAU/kB,WAAa8K,EAAOC,QAAQ/K,WAC5C6K,EAAMka,UAAU9kB,eAAiB6K,EAAOC,QAAQ9K,eAChD4K,EAAMka,UAAU7a,MAAQY,EAAOC,QAAQb,MACvCW,EAAMka,UAAU8Q,oBAAsB/qB,EAAOC,QAAQoU,KAAK0W,uBAEhEhO,WACEzJ,IAAiB5e,UAAU6e,aAAa2J,gBAAgB,CAACnd,EAAOC,KAC5DD,EAAMirB,gBAAgBh2B,WAAagL,EAAOC,QAAQjL,WAClD+K,EAAMirB,gBAAgB/1B,SAAW+K,EAAOC,QAAQhL,SAChD8K,EAAMirB,gBAAgB9Q,UAAYla,EAAOC,QAAQia,UACjDna,EAAMirB,gBAAgB7Q,WAAana,EAAOC,QAAQka,WAClDpa,EAAMirB,gBAAgB91B,WAAa8K,EAAOC,QAAQ/K,WAClD6K,EAAMirB,gBAAgB71B,eAAiB6K,EAAOC,QAAQ9K,eACtD4K,EAAMirB,gBAAgB5rB,MAAQY,EAAOC,QAAQb,aAMhD,kBACTmsB,EADS,aAET3J,EAFS,kBAGTxF,EAHS,uBAITqP,EAJS,sBAKTC,EALS,uBAMTF,EANS,YAOTG,EAPS,uBAQTC,GACAjB,EAAiBvpB,QAENupB,MAAf,S,iCC5KA,8UAQO,MAAMrsB,EAAe,CACxB0lB,eAAe,EACfC,SAAU,CACNpuB,GAAI,KACJoI,MAAO,GACPimB,YAAa,GACbC,iBAAkB,KAClBC,mBAAmB,EACnBC,OAAO,IAEXC,cAAc,EACdC,YAAa,GACbC,MAAM,EACNC,YAAa,GACbC,eAAgB,KAChBC,aAAc,KACdsF,gBAAiB,GACjBrF,gBAAiB,GACjBC,mBAAoB,GACpBxM,KAAM,GACNyM,kBAAmB,GACnBC,QAAS,GACTE,YAAa,GACbC,YAAa,GACbC,UAAW,GACXC,gBAAiB,GACjBC,cAAe,GACfvmB,YAAa,GACbuX,oBAAqB,GACrB6T,gBAAiB,CACblP,QAAS,GACT5C,gBAAiB,GACjByP,OAAQ,GACRxP,KAAM,GACNC,MAAO,GACPuT,QAAS,IAEbtS,SAAU,GACVC,WAAY,GACZ+L,WAAY,GACZ7N,gBAAgB,EAChB8N,aAAc,GACdsG,iBAAkB,GAClB9G,sBAAsB,GACtBS,gBAAiB,CACbC,aAAc,MAElBC,YAAa,CACTD,aAAc,MAElBjO,SAAU,IACHkC,MAAMiM,IAAOC,uBAAuBkG,GAAK,KAAO,GAClDnS,OACA9Y,KAAI,CAAC+Y,EAAGC,KAAJ,CACDiM,MAAOjM,EACPjkB,IAAM,KAAOikB,GAAKC,WAClB/a,OAAQ,KAAO8a,GAAKC,WACpBlX,OAAQ,KAAOiX,GAAKC,WACpBvE,SAAS,OAGjBwQ,QAAS,CACLC,aAAc,KACdC,aAAc,KACdC,kBAAmB,KACnBC,YAAa,KACbC,UAAW,KACXC,cAAe,KACfC,aAAc,KACdC,MAAO,KACPC,mBAAoB,GACpBC,wBAAyB,GACzBC,iBAAkB,GAClB3B,sBAAuB,MAE3B4B,SAAU,CACN5xB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,eACZC,eAAgB,OAChBiK,MAAO,GACPiqB,aAAc,GACdxC,gBAAiB,IAErBC,kBAAmB,CACf9xB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,WACZC,eAAgB,OAChBiK,MAAO,CACH,CAAE2nB,SAAU,iBAAkBC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAClG,CAAEL,SAAU,gBAAiBC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MACjG,CAAEL,SAAU,YAAaC,OAAQ,KAAMC,QAAS,UAAWC,QAAS,SAAUC,MAAO,IAAKC,YAAa,WACvG,CAAEL,SAAU,YAAaC,OAAQ,MAAOC,QAAS,iBAAkBC,QAAS,aAAcC,MAAO,IAAKC,YAAa,kBACnH,CAAEL,SAAU,cAAeC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAC/F,CAAEL,SAAU,SAAUC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAC1F,CAAEL,SAAU,WAAYC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAC5F,CAAEL,SAAU,0BAA2BC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAC3G,CAAEL,SAAU,sBAAuBC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MACvG,CAAEL,SAAU,QAASC,OAAQ,MAAOC,QAAS,IAAKC,QAAS,IAAKC,MAAO,IAAKC,YAAa,oBAGjGC,aAAc,CACVryB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,eACZC,eAAgB,OAChBiK,MAAO,IAEXkoB,SAAU,CACNtyB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,YACZC,eAAgB,OAChBiK,MAAO,IAEXmoB,OAAQ,CACJC,aAAc,GACdC,YAAa,GACbC,YAAa,IAEjBC,oBAAqB,CACjBvP,iBAAiB,EACjBC,MAAM,EACNuP,MAAM,EACNlQ,gBAAgB,EAChBmQ,QAAQ,EACRtP,QAAQ,GAEZuP,aAAc,IAIZkE,EAA6B5tB,YAAY,CAC3CC,KAAM,2BACNC,eACAuB,SAAU,CACN2kB,KAAM,CAACzkB,EAAOC,KACVD,EAAMykB,MAAO,GAEjB4F,mBAAoB,CAACrqB,EAAOC,KACxB,MAAM,IAAEjB,EAAF,MAAOC,GAAUgB,EAAOC,QAC9BF,EAAMmqB,gBAAgBnrB,GAAOC,GAEjCmpB,0BAA2B,CAACpoB,EAAOC,KAC/BD,EAAMslB,cAAgBrlB,EAAOC,SAEjCmoB,iBAAkB,CAACroB,EAAOC,KACtBD,EAAMikB,eAAgB,EACtBjkB,EAAMkkB,SAAW,IAAI3lB,EAAa2lB,WAEtCoE,eAAgB,CAACtoB,EAAOC,KACpBD,EAAMikB,eAAgB,EACtBjkB,EAAMkkB,SAASpuB,GAAKmK,EAAOC,QAAQpK,GACnCkK,EAAMkkB,SAAShmB,MAAQ+B,EAAOC,QAAQhC,MACtC8B,EAAMkkB,SAASC,YAAclkB,EAAOC,QAAQikB,YAC5CnkB,EAAMkkB,SAASE,iBAAmBnkB,EAAOC,QAAQkkB,iBACjDpkB,EAAMkkB,SAASG,kBAAoBpkB,EAAOC,QAAQmkB,kBAClDrkB,EAAMkkB,SAASI,OAASrkB,EAAOC,QAAQokB,QAE3CiE,qBAAsB,CAACvoB,EAAOC,KAC1BD,EAAMikB,eAAgB,EACtBjkB,EAAMkkB,SAAW,IAAI3lB,EAAa2lB,WAEtCsE,2BAA4B,CAACxoB,EAAOC,KAChCD,EAAM2X,eAAiB1X,EAAOC,SAElCuoB,YAAa,CAACzoB,EAAOC,KACjBD,EAAMikB,eAAgB,EACtBjkB,EAAMkkB,SAAW,IAAK3lB,EAAa2lB,UACnClkB,EAAM0kB,YAAc,GACpB1kB,EAAM2kB,eAAiB,KACvB3kB,EAAM2kB,eAAiB,KACvB3kB,EAAM4kB,aAAe,KACrB5kB,EAAMkqB,gBAAkB,GACxBlqB,EAAM6kB,gBAAkB,GACxB7kB,EAAM8kB,mBAAqB,GAC3B9kB,EAAMsY,KAAO,GACbtY,EAAM+kB,kBAAoB,GAC1B/kB,EAAMglB,QAAU,GAChBhlB,EAAMklB,YAAc,GACpBllB,EAAMmlB,YAAc,GACpBnlB,EAAMslB,cAAgB,GACtBtlB,EAAM2X,gBAAiB,EACvB3X,EAAMilB,sBAAwB,GAC9BjlB,EAAM0X,SAAW,IACVkC,MAAMiM,IAAOC,uBAAuBkG,GAAK,KAAO,GAClDnS,OACA9Y,KAAI,CAAC+Y,EAAGC,KAAJ,CACDiM,MAAOjM,EACPjkB,IAAM,KAAOikB,GAAKC,WAClB/a,OAAQ,KAAO8a,GAAKC,WACpBlX,OAAQ,KAAOiX,GAAKC,WACpBvE,SAAS,OAGjBzV,EAAMimB,QAAU,IAAK1nB,EAAa0nB,SAClCjmB,EAAMwnB,OAAS,IAAKjpB,EAAaipB,QACjCxnB,EAAM6mB,SAAW,IAAKtoB,EAAasoB,UACnC7mB,EAAMjB,YAAc,GACpBiB,EAAMsW,oBAAsB,GAC5BtW,EAAMwZ,SAAW,GACjBxZ,EAAMwlB,WAAa,GACnBxlB,EAAMyZ,WAAa,GACnBzZ,EAAM2X,gBAAiB,GAG3B+Q,kBAAmB,CAAC1oB,EAAOC,KACvBD,EAAMwkB,YAAcvkB,EAAOC,SAE/ByoB,oBAAqB,CAAC3oB,EAAOC,KACzBD,EAAMwZ,SAAW,IAErBoP,iBAAkB,CAAC5oB,EAAOC,KAEtBD,EAAMmqB,gBAAgB9R,gBAAkB,GACxCrY,EAAMmqB,gBAAgBrC,OAAS,GAC/B9nB,EAAMmqB,gBAAgB7R,KAAO,GAC7BtY,EAAMmqB,gBAAgB5R,MAAQ,GAC9BvY,EAAMmqB,gBAAgB2B,QAAU,GAEhC9rB,EAAMwZ,SAAW,GAEjBxZ,EAAMwkB,YAAcvkB,EAAOC,QAC3BF,EAAM2X,gBAAiB,EACvB3X,EAAM4nB,oBAAsB,IAAKrpB,EAAaqpB,qBAE9C5nB,EAAM6mB,SAAS5xB,WAAa,EAC5B+K,EAAM6mB,SAAS3xB,SAAW,GAC1B8K,EAAM6mB,SAAS1xB,WAAa,eAC5B6K,EAAM6mB,SAASzxB,eAAiB,QAEpCyzB,0BAA2B,CAAC7oB,EAAOC,KAC/BD,EAAM4nB,oBAAsB,IACrB5nB,EAAM4nB,oBACT,CAAC3nB,EAAOC,QAAQpK,IAAKmK,EAAOC,QAAQjB,QAG5C8pB,qBAAsB,CAAC/oB,EAAOC,KAAY,IAAD,EACjC+oB,EAAQ,UAAGhpB,EAAMunB,SAASloB,aAAlB,aAAG,EAAsBwb,MAAKC,GAAKA,EAAEhlB,KAAOmK,EAAOC,QAAQpK,KACpEkzB,IACCA,EAAS/oB,EAAOC,QAAQlB,KAAOiB,EAAOC,QAAQjB,SAI1D8d,cAAgBnoB,IACZA,EAAQooB,WACJkP,IAA6Bv3B,UAAUw3B,sBAAsBhP,gBAAgB,CAACnd,EAAOC,KAAY,IAAD,QAC5FD,EAAMukB,cAAe,EACrBvkB,EAAM6mB,SAAS5xB,WAAagL,EAAOC,QAAQjL,WAC3C+K,EAAM6mB,SAAS3xB,SAAW+K,EAAOC,QAAQhL,SACzC8K,EAAM6mB,SAAS1M,UAAYla,EAAOC,QAAQia,UAC1Cna,EAAM6mB,SAASzM,WAAana,EAAOC,QAAQka,WAC3Cpa,EAAM6mB,SAAS1xB,WAAa8K,EAAOC,QAAQ/K,WAC3C6K,EAAM6mB,SAASzxB,eAAiB6K,EAAOC,QAAQ9K,eAC/C4K,EAAM6mB,SAASxnB,MAAQY,EAAOC,QAAQb,MACtCW,EAAMwlB,WAAN,oBAAmBvlB,EAAOC,QAAQipB,YAAYiD,sBAA9C,aAAmB,EAA2CrrB,KAAI+mB,IAAM,YAAK,IACtEA,EACHrS,WAAU,UAACzV,EAAMwlB,WAAW3K,MAAKC,GAAKA,EAAE9b,MAAQ8oB,EAAO9oB,aAA7C,aAAC,EAAkDyW,oBAFjE,QAGO,GACPzV,EAAM6mB,SAASyC,aAAerpB,EAAOC,QAAQipB,YAAYG,aACzDtpB,EAAM6mB,SAASC,gBAAf,oBAAiC7mB,EAAOC,QAAQipB,YAAYrC,uBAA5D,aAAiC,EAA4C/lB,KAAI+Z,GAAKA,EAAE9b,aAAxF,QAAgG,MAGvGge,WACGkP,IAA6Bv3B,UAAU03B,oBAAoB5I,cAAc,CAACzjB,EAAOC,KAC7ED,EAAMukB,cAAe,KAG5BvH,WACGkP,IAA6Bv3B,UAAU03B,oBAAoB3I,eAAe,CAAC1jB,EAAOC,KAC9ED,EAAMukB,cAAe,KAG5BvH,WACGkP,IAA6Bv3B,UAAU23B,mBAAmBnP,gBAAgB,CAACnd,EAAOC,KAC9ED,EAAM+mB,kBAAkB9xB,WAAagL,EAAOC,QAAQjL,WACpD+K,EAAM+mB,kBAAkB7xB,SAAW+K,EAAOC,QAAQhL,SAClD8K,EAAM+mB,kBAAkB5M,UAAYla,EAAOC,QAAQia,UACnDna,EAAM+mB,kBAAkB3M,WAAana,EAAOC,QAAQka,WACpDpa,EAAM+mB,kBAAkB1nB,MAAQY,EAAOC,QAAQb,SAGtD2d,WACGkP,IAA6Bv3B,UAAU43B,kBAAkBpP,gBAAgB,CAACnd,EAAOC,KAC7ED,EAAMsnB,aAAaryB,WAAagL,EAAOC,QAAQjL,WAC/C+K,EAAMsnB,aAAapyB,SAAW+K,EAAOC,QAAQhL,SAC7C8K,EAAMsnB,aAAanN,UAAYla,EAAOC,QAAQia,UAC9Cna,EAAMsnB,aAAalN,WAAana,EAAOC,QAAQka,WAC/Cpa,EAAMsnB,aAAanyB,WAAa8K,EAAOC,QAAQ/K,WAC/C6K,EAAMsnB,aAAalyB,eAAiB6K,EAAOC,QAAQ9K,eACnD4K,EAAMsnB,aAAajoB,MAAQY,EAAOC,QAAQb,SAGjD2d,WACGxoB,IAASG,UAAUY,YAAY4nB,gBAAgB,CAACnd,EAAOC,KACnDD,EAAMunB,SAAStyB,WAAagL,EAAOC,QAAQjL,WAC3C+K,EAAMunB,SAASryB,SAAW+K,EAAOC,QAAQhL,SACzC8K,EAAMunB,SAASpyB,WAAa8K,EAAOC,QAAQ/K,WAC3C6K,EAAMunB,SAASnyB,eAAiB6K,EAAOC,QAAQ9K,eAC/C4K,EAAMunB,SAASpN,UAAYla,EAAOC,QAAQia,UAC1Cna,EAAMunB,SAASnN,WAAana,EAAOC,QAAQka,WAC3Cpa,EAAMunB,SAASloB,MAAQY,EAAOC,QAAQb,SAG7C2d,WACGkP,IAA6Bv3B,UAAU63B,iBAAiBrP,gBAAgB,CAACnd,EAAOC,KAAY,IAAD,IACvFD,EAAM0kB,YAAczkB,EAAOC,QAAQwkB,YACnC1kB,EAAM2kB,eAAiB1kB,EAAOC,QAAQykB,eACtC3kB,EAAM4kB,aAAe3kB,EAAOC,QAAQ0kB,aACpC5kB,EAAMkqB,gBAAkBjqB,EAAOC,QAAQgqB,gBACvClqB,EAAM6kB,gBAAkB5kB,EAAOC,QAAQ2kB,gBACvC7kB,EAAM8kB,mBAAqB7kB,EAAOC,QAAQ4kB,mBAC1C9kB,EAAMsY,KAAOrY,EAAOC,QAAQoY,KAC5BtY,EAAM+kB,kBAAoB9kB,EAAOC,QAAQ6kB,kBACzC/kB,EAAMglB,QAAU/kB,EAAOC,QAAQ8kB,QAC/BhlB,EAAMklB,YAAenuB,YAAkBkJ,EAAOC,QAAQglB,aACtDllB,EAAMmlB,YAAcllB,EAAOC,QAAQilB,YACnCnlB,EAAMolB,UAAYnlB,EAAOC,QAAQklB,UACjCplB,EAAMqlB,gBAAkBplB,EAAOC,QAAQmlB,gBACvCrlB,EAAMylB,aAAexlB,EAAOC,QAAQulB,aACpCzlB,EAAM+rB,iBAAmB9rB,EAAOC,QAAQ6rB,iBAExC/rB,EAAMimB,QAAQhB,sBAAd,oBAAuChlB,EAAOC,QAAQ+lB,QAAQhB,6BAA9D,QAAuFhlB,EAAOC,QAAQ+kB,6BAAtG,QAAgI,GAChIjlB,EAAMimB,QAAQC,aAAejmB,EAAOC,QAAQ+lB,QAAQC,aACpDlmB,EAAMimB,QAAQE,aAAelmB,EAAOC,QAAQ+lB,QAAQE,aACpDnmB,EAAMimB,QAAQG,kBAAoBnmB,EAAOC,QAAQ+lB,QAAQG,kBACzDpmB,EAAMimB,QAAQI,YAAcpmB,EAAOC,QAAQ+lB,QAAQI,YAEnDrmB,EAAMimB,QAAQK,UAAYrmB,EAAOC,QAAQ+lB,QAAQK,UACjDtmB,EAAMimB,QAAQM,cAAgBtmB,EAAOC,QAAQ+lB,QAAQM,cACrDvmB,EAAMimB,QAAQO,aAAevmB,EAAOC,QAAQ+lB,QAAQO,aACpDxmB,EAAMimB,QAAQQ,MAAQxmB,EAAOC,QAAQ+lB,QAAQQ,MAC7CzmB,EAAM4lB,YAAYD,aAAe1lB,EAAOC,QAAQ0lB,YAAYD,aAC5D3lB,EAAM+nB,aAAe9nB,EAAOC,QAAQ6nB,gBAG3C/K,WACGU,IAAW/oB,UAAUi1B,4BAA4BzM,gBAAgB,CAACnd,EAAOC,KAErE,MAAMsqB,EAAY,CAACtqB,EAAOC,SAC1BF,EAAMjB,YAAcwrB,EAAUxpB,KAAIka,IAAO,CACrCnlB,GAAImlB,EAAQnlB,GACZmJ,MAAOgc,EAAQC,KACfpY,MAAOmY,EAAQkJ,gBAGnBnkB,EAAMmqB,gBAAgBlP,QAAUjb,EAAMjB,YAAY8T,OAAS,EAAI,CAAC7S,EAAMjB,YAAY,IAAM,GAExFiB,EAAMsW,oBAAsBrW,EAAOC,QAAQoW,oBAAoBvV,KAAIsX,IAAe,CAC9EviB,GAAIuiB,EAAgBviB,GACpBmJ,MAAOoZ,EAAgB6C,KACvBpY,MAAOuV,EAAgB8L,mBAIlCnH,WACGU,IAAW/oB,UAAUmpB,8BAA8BX,gBAAgB,CAACnd,EAAOC,KACvED,EAAMwZ,SAAWvZ,EAAOC,QAAQa,KAAIuX,IAAI,CACpCxiB,GAAIwiB,EAAKxiB,GACTmJ,MAAOqZ,EAAKha,KACZwE,MAAOwV,EAAKha,KACZksB,gBAAiBlS,EAAK2R,wBAG1BjqB,EAAMmqB,gBAAgB7R,KAAOtY,EAAMwZ,SAAS3G,OAAS,EACnD7S,EAAMmqB,gBAAgB7R,KAAK8C,QAAO9C,GAAQtY,EAAMwZ,SAASiR,MAAKE,GAASA,EAAM1rB,QAAUqZ,EAAKrZ,UAC5F,MAGT+d,WACG1T,IAAY3U,UAAU4U,gBAAgB4T,gBAAgB,CAACnd,EAAOC,KAC1DD,EAAMyZ,WAAaxZ,EAAOC,QAAQa,KAAItD,IAAI,CACtC3H,GAAI2H,EAAK3H,GACTmJ,MAAOxB,EAAKge,WACZ3Y,MAAOrF,EAAKge,kBAIvBuB,WACGkP,IAA6Bv3B,UAAU83B,uBAAuBtP,gBAAgB,CAACnd,EAAOC,KAClFD,EAAMwnB,OAAOC,aAAexnB,EAAOC,WAG1C8c,WACGkP,IAA6Bv3B,UAAU+3B,0BAA0BvP,gBAAgB,CAACnd,EAAOC,KACrFD,EAAMwnB,OAAOE,YAAcznB,EAAOC,WAGzC8c,WACGkP,IAA6Bv3B,UAAUg4B,sBAAsBxP,gBAAgB,CAACnd,EAAOC,KACjFD,EAAMwnB,OAAOG,YAAc1nB,EAAOC,eAMrC,KACTukB,EADS,0BAET2D,EAFS,iBAGTC,EAHS,eAITC,EAJS,qBAKTC,EALS,2BAMTC,EANS,YAOTC,EAPS,kBAQTC,EARS,oBASTC,EATS,iBAUTC,EAVS,0BAWTC,EAXS,qBAYTE,EAZS,mBAaTsB,GACA4B,EAA2B5qB,QAEhB4qB,MAAf,S,gCC7aA,MAAMpG,EAAS,CAGX+G,SAAU,IACVC,YAAa,0BACbC,WAAa,wBACbnwB,aAAc,GACdowB,gBAAgB,EAChB7pB,MAAO,QACP8pB,YAAa,UACbC,KAAM,KACNC,WAAW,EACXC,IAAK,CACDC,OAAQ,aACRC,QAAS,UAEbC,SAAU,CACNC,OAAQ,0CACRC,WAAY,uCACZC,UAAW,uBACXC,cAAe,mCACfC,kBAAmB,eACnBC,MAAO,4CACPC,cAAe,gBAEnBC,MAAO,CACHC,UAAW,mCACXC,OAAQ,6BAEZC,eAAgB,CACZC,WAAY,gBACZ1vB,QAAS,CACL,uLACA,wMACA,kIAGR2vB,cAAe,CACX,SACA,CACI,MAAS,UACT,SAAY,CAAC,IAAK,IAAK,IAAK,OAGpCrI,uBAAwB,CACpBkG,GAAI,KACJjG,GAAI,OAIGF,O,iCClDf,ufAIO,MAAMtnB,EAAe,CACxB6vB,kBAAkB,EAClBC,gBAAiB,CACfpvB,MAAO,GACPgE,MAAO,IAETqrB,SAAU,CACRrvB,MAAO,GACPgE,MAAO,IAETsrB,OAAQ,KACR/N,qBAAsB,GACtBzhB,YAAa,GACbyvB,gBAAiB,CACb14B,GAAI,KACJolB,KAAM,KACNiJ,YAAa,KACb7N,oBAAqB,IAEzBmY,uBAAwB,CACpB34B,GAAI,KACJolB,KAAM,KACNiJ,YAAa,KACb7N,oBAAqB,IAEzBoY,wBAAyB,CACrB54B,GAAI,KACJolB,KAAM,KACNiJ,YAAa,MAEjBwK,+BAAgC,CAC5B74B,GAAI,KACJolB,KAAM,KACNiJ,YAAa,MAEjByK,UAAW,CACP3vB,MAAO,GACPgE,MAAO,IAEX4rB,SAAU,CACN5vB,MAAO,GACPgE,MAAO,IAEXiiB,YAAa,CACTjmB,MAAO,GACPgE,MAAO,IAEX6rB,iBAAkB,CACd7vB,MAAO,GACPgE,MAAO,IAEX8rB,iBAAkB,CAChB9vB,MAAO,GACPgE,MAAO,IAET+rB,MAAO,CACH/vB,MAAO,GACPgE,MAAO,IAEXsd,qBAAsB,CAClBthB,MAAO,GACPgE,MAAO,IAEXgsB,YAAa,CACThwB,MAAO,GACPgE,MAAO,IAEXisB,YAAa,CACTjwB,MAAO,GACPgE,MAAO,IAEXksB,aAAc,CACVlwB,MAAO,GACPgE,MAAO,IAEXqV,KAAM,CACFrZ,MAAO,GACPgE,MAAO,IAEXoV,gBAAiB,CACbpZ,MAAO,KACPgE,MAAO,IAEXmsB,WAAY,CACRnwB,MAAO,GACPgE,MAAO,IAEXgY,QAAS,CACLhc,MAAO,GACPgE,MAAO,IAEX6kB,OAAQ,CACN7oB,MAAO,GACPgE,MAAO,IAETosB,mBAAoB,CAClBpwB,MAAO,GACPgE,MAAO,IAETqsB,oBAAqB,CACnBrwB,MAAO,GACPgE,MAAO,IAETssB,eAAgB,CACdtwB,MAAO,GACPgE,MAAO,IAETusB,cAAe,CACbvwB,MAAO,GACPgE,MAAO,IAETwsB,kBAAmB,CACjBxwB,MAAO,GACPgE,MAAO,IAETysB,uBAAwB,CACtBzwB,MAAO,GACPgE,MAAO,IAET0sB,YAAa,CACX1wB,MAAO,GACPgE,MAAO,IAET2sB,eAAgB,CACd3wB,OAAO,EACPgE,MAAO,IAET4sB,iBAAkB,CACd5wB,MAAO,GACPgE,MAAO,IAEX6sB,cAAe,CACX7wB,MAAO,GACPgE,MAAO,IAEX8sB,YAAa,CACX9wB,MAAO,GACPgE,MAAO,IAET+sB,gBAAiB,CACb/wB,MAAO,GACPgE,MAAO,KAITgtB,EAAY5xB,YAAY,CAC5BC,KAAM,OACNC,eACAuB,SAAU,CACRowB,uBAAwB,CAAClwB,EAAOC,KAC5BD,EAAMouB,kBAAmB,GAE7B+B,wBAAyB,CAACnwB,EAAOC,KAC7BD,EAAMouB,kBAAmB,GAE7BvM,aAAc,CAAC7hB,EAAOC,KACpBD,EAAMC,EAAOC,QAAQ4b,OAAO7Y,MAAQ,GACpCjD,EAAMC,EAAOC,QAAQ4b,OAAO7c,MAAQgB,EAAOC,QAAQjB,OAErDod,kBAAmB,CAACrc,EAAOC,KACzBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAM8b,GAAO7Y,MAAQsZ,EAAO,OAGlCxB,oBAAqB,CAAC/a,EAAOC,KACzBD,EAAMwuB,gBAAkBxuB,EAAMjB,YAAY8b,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,UAC7EF,EAAMib,QAAQhc,MAAQe,EAAMjB,YAAY8b,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,UAASikB,YACpFnkB,EAAM0uB,wBAA0BnwB,EAAamwB,wBAC7C1uB,EAAMqY,gBAAkB9Z,EAAa8Z,iBAEzC+X,2BAA4B,CAACpwB,EAAOC,KAChCD,EAAMyuB,uBAAyBzuB,EAAMjB,YAAY8b,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,UACpFF,EAAMuvB,eAAetwB,MAAQe,EAAMjB,YAAY8b,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,UAASikB,YAC3FnkB,EAAM2uB,+BAAiCpwB,EAAaowB,+BACpD3uB,EAAM0vB,uBAAyBnxB,EAAamxB,wBAGhDpU,4BAA6B,CAACtb,EAAOC,KAAY,IAAD,GAC5C,UAAIA,EAAOC,eAAX,aAAI,EAAgBjB,SAChBe,EAAM0uB,wBAA0B1uB,EAAMwuB,gBAAgBlY,oBAAoBuE,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,QAAQjB,OAAS,KAC9He,EAAMqY,gBAAgBpZ,MAAQe,EAAMwuB,gBAAgBlY,oBAAoBuE,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,QAAQjB,OAAS,KAAIklB,YAChInkB,EAAMqY,gBAAgBpV,MAAQ,KAGtCotB,mCAAoC,CAACrwB,EAAOC,KAAY,IAAD,GACnD,UAAIA,EAAOC,eAAX,aAAI,EAAgBjB,SAChBe,EAAM2uB,+BAAiC3uB,EAAMyuB,uBAAuBnY,oBAAoBuE,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,QAAQjB,OAAS,KAC5Ie,EAAM0vB,uBAAuBzwB,MAAQe,EAAMyuB,uBAAuBnY,oBAAoBuE,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,QAAQjB,OAAS,KAAIklB,cAGtJmM,2BAA4B,CAACtwB,EAAOC,KAChCD,EAAM4vB,eAAe3wB,MAAQgB,EAAOC,QACpCF,EAAM4vB,eAAe3sB,MAAQ,IAEM,IAA/BjD,EAAM4vB,eAAe3wB,QACrBe,EAAMqvB,mBAAmBpwB,MAAQe,EAAMkvB,YAAYjwB,MACnDe,EAAMqvB,mBAAmBpsB,MAAQ,GAEjCjD,EAAMsvB,oBAAoBrwB,MAAQe,EAAMmvB,aAAalwB,MACrDe,EAAMsvB,oBAAoBrsB,MAAQ,GAElCjD,EAAMyuB,uBAAyB,IAAKzuB,EAAMwuB,iBAC1CxuB,EAAMuvB,eAAetwB,MAAQe,EAAMib,QAAQhc,MAC3Ce,EAAMuvB,eAAetsB,MAAQ,GAE7BjD,EAAMyvB,kBAAkBxwB,MAAQe,EAAMovB,WAAWnwB,MACjDe,EAAMyvB,kBAAkBxsB,MAAQ,GAEhCjD,EAAM2uB,+BAAiC,IAAK3uB,EAAM0uB,yBAClD1uB,EAAM0vB,uBAAuBzwB,MAAQe,EAAMqY,gBAAgBpZ,MAC3De,EAAM0vB,uBAAuBzsB,MAAQ,GAErCjD,EAAM2vB,YAAY1wB,MAAQe,EAAMsY,KAAKrZ,MACrCe,EAAM2vB,YAAY1sB,MAAQ,KAGlCstB,YAAa,CAACvwB,EAAOC,KACjBqQ,OAAOkgB,KAAKjyB,GAAcyc,SAAQc,IAAU,IAAD,OACX7iB,KAAxB,UAAA+G,EAAM8b,UAAN,eAAc7Y,SACdjD,EAAM8b,GAAO7Y,MAAQ,QAIjCwtB,UAAW,CAACzwB,EAAOC,KACfD,EAAM4uB,UAAU3vB,MAAQ,GACxBe,EAAM4uB,UAAU3rB,MAAQ,GAExBjD,EAAM6uB,SAAS5vB,MAAQ,GACvBe,EAAM6uB,SAAS5rB,MAAQ,GAEvBjD,EAAMklB,YAAYjmB,MAAQ,GAC1Be,EAAMklB,YAAYjiB,MAAQ,GAE1BjD,EAAM8uB,iBAAiB7vB,MAAQ,GAC/Be,EAAM8uB,iBAAiB7rB,MAAQ,GAE/BjD,EAAM+uB,iBAAiB9vB,MAAQ,GAC/Be,EAAM+uB,iBAAiB9rB,MAAQ,GAE/BjD,EAAMgvB,MAAM/vB,MAAQ,GACpBe,EAAMgvB,MAAM/rB,MAAQ,GAEpBjD,EAAMugB,qBAAqBthB,MAAQ,GACnCe,EAAMugB,qBAAqBtd,MAAQ,GAEnCjD,EAAMivB,YAAYhwB,MAAQ,GAC1Be,EAAMivB,YAAYhsB,MAAQ,GAE1BjD,EAAMkvB,YAAYjwB,MAAQ,GAC1Be,EAAMkvB,YAAYjsB,MAAQ,GAE1BjD,EAAMmvB,aAAalwB,MAAQ,GAC3Be,EAAMmvB,aAAalsB,MAAQ,GAE3BjD,EAAMsY,KAAKrZ,MAAQ,GACnBe,EAAMsY,KAAKrV,MAAQ,GAEnBjD,EAAMqY,gBAAgBpZ,MAAQ,GAC9Be,EAAMqY,gBAAgBpV,MAAQ,GAE9BjD,EAAMovB,WAAWnwB,MAAQ,GACzBe,EAAMovB,WAAWnsB,MAAQ,GAEzBjD,EAAMib,QAAQhc,MAAQ,GACtBe,EAAMib,QAAQhY,MAAQ,GAEtBjD,EAAM8nB,OAAO7oB,MAAQ,GACrBe,EAAM8nB,OAAO7kB,MAAQ,GAErBjD,EAAMqvB,mBAAmBpwB,MAAQ,GACjCe,EAAMqvB,mBAAmBpsB,MAAQ,GAEjCjD,EAAMsvB,oBAAoBrwB,MAAQ,GAClCe,EAAMsvB,oBAAoBrsB,MAAQ,GAElCjD,EAAMuvB,eAAetwB,MAAQ,GAC7Be,EAAMuvB,eAAetsB,MAAQ,GAE7BjD,EAAMwvB,cAAcvwB,MAAQ,GAC5Be,EAAMwvB,cAAcvsB,MAAQ,GAE5BjD,EAAMyvB,kBAAkBxwB,MAAQ,GAChCe,EAAMyvB,kBAAkBxsB,MAAQ,GAEhCjD,EAAM0vB,uBAAuBzwB,MAAQ,GACrCe,EAAM0vB,uBAAuBzsB,MAAQ,GAErCjD,EAAM2vB,YAAY1wB,MAAQ,GAC1Be,EAAM2vB,YAAY1sB,MAAQ,GAE1BjD,EAAM4vB,eAAe3wB,OAAQ,EAC7Be,EAAM4vB,eAAe3sB,MAAQ,GAE7BjD,EAAM0uB,wBAA0BnwB,EAAamwB,wBAC7C1uB,EAAM2uB,+BAAiCpwB,EAAaowB,gCAExD+B,sBAAuB,CAAC1wB,EAAOC,KAC3BD,EAAM6vB,iBAAiB5wB,MAAQ,GAC/Be,EAAM6vB,iBAAiB5sB,MAAQ,GAC/BjD,EAAM8vB,cAAc7wB,MAAQ,GAC5Be,EAAM8vB,cAAc7sB,MAAQ,GAC5BjD,EAAMgwB,gBAAgB/wB,MAAQ,GAC9Be,EAAMgwB,gBAAgB/sB,MAAQ,GAC9BjD,EAAM+vB,YAAY9wB,MAAQ,GAC1Be,EAAM+vB,YAAY9sB,MAAQ,IAE9B0tB,wBAAyB,CAAC3wB,EAAOC,KAC7BD,EAAMwgB,qBAAuBvgB,EAAOC,SAExC0wB,UAAW,CAAC5wB,EAAOC,KACfD,EAAMuuB,OAAStuB,EAAOC,UAG5B6c,cAAgBnoB,IACdA,EAAQooB,WACJ6T,IAAoBl8B,UAAUm8B,eAAe3T,gBAAgB,CAACnd,EAAOC,KACjED,EAAMwgB,qBAAuBvgB,EAAOC,WAG3C8c,WACGU,IAAW/oB,UAAUgpB,eAAeR,gBAAgB,CAACnd,EAAOC,KACxDD,EAAMjB,YAAckB,EAAOC,eAM1B,uBACTgwB,EADS,wBAETC,EAFS,aAGTtO,EAHS,kBAITxF,EAJS,2BAKTiU,EALS,YAMTC,EANS,UAOTE,EAPS,sBAQTC,EARS,oBAST3V,EATS,2BAUTqV,EAVS,4BAWT9U,EAXS,mCAYT+U,EAZS,wBAaTM,EAbS,UAcTC,GACAX,EAAU5uB,QAEC4uB,MAAf,S,iCC5VA,qcAEO,MAmCDc,EAAuB1yB,YAAY,CACrCC,KAAM,mBACNC,aArCwB,CACxByyB,UAAW,GACXjQ,cAAe,EACfkQ,YAAa,EACbrR,aAAa,EACbpe,WAAY,GACZ0vB,cAAc,EACdC,oBAAoB,EACpBnR,OAAQ,KACRY,SAAU,CACN3hB,MAAO,GACPgE,MAAO,IAEX2rB,UAAW,CACP3vB,MAAO,GACPgE,MAAO,IAEX4rB,SAAU,CACN5vB,MAAO,GACPgE,MAAO,IAEXwd,OAAQ,CACJxhB,OAAO,EACPgE,MAAO,IAEXmuB,iBAAkB,CACdnyB,OAAO,EACPgE,MAAO,IAEXouB,oBAAqB,CACjBpyB,OAAO,EACPgE,MAAO,KAOXnD,SAAU,CACNwxB,iBAAkB,CAACtxB,EAAOC,KACtBD,EAAMkxB,cAAe,EACrBlxB,EAAMggB,OAAS,KACfhgB,EAAM4gB,SAAS3hB,MAAQ,GACvBe,EAAM4gB,SAAS3d,MAAQ,GACvBjD,EAAM4uB,UAAU3vB,MAAQ,GACxBe,EAAM4uB,UAAU3rB,MAAQ,GACxBjD,EAAM6uB,SAAS5vB,MAAQ,GACvBe,EAAM6uB,SAAS5rB,MAAQ,GACvBjD,EAAMygB,OAAOxhB,OAAQ,EACrBe,EAAMygB,OAAOxd,MAAQ,GACrBjD,EAAMoxB,iBAAiBnyB,OAAQ,EAC/Be,EAAMoxB,iBAAiBnuB,MAAQ,GAC/BjD,EAAMqxB,oBAAoBpyB,OAAQ,EAClCe,EAAMqxB,oBAAoBpuB,MAAQ,IAEtCsuB,eAAgB,CAACvxB,EAAOC,KACpBD,EAAMkxB,cAAe,EACrBlxB,EAAMggB,OAAS/f,EAAOC,QAAQpK,GAC9BkK,EAAM4gB,SAAS3hB,MAAQgB,EAAOC,QAAQ0gB,SACtC5gB,EAAM4gB,SAAS3d,MAAQ,GACvBjD,EAAM4uB,UAAU3vB,MAAQgB,EAAOC,QAAQ0uB,UACvC5uB,EAAM4uB,UAAU3rB,MAAQ,GACxBjD,EAAM6uB,SAAS5vB,MAAQgB,EAAOC,QAAQ2uB,SACtC7uB,EAAM6uB,SAAS5rB,MAAQ,GACvBjD,EAAMygB,OAAOxhB,MAAQgB,EAAOC,QAAQugB,OACpCzgB,EAAMygB,OAAOxd,MAAQ,GACrBjD,EAAMoxB,iBAAiBnyB,MAAQgB,EAAOC,QAAQkxB,iBAC9CpxB,EAAMoxB,iBAAiBnuB,MAAQ,GAC/BjD,EAAMqxB,oBAAoBpyB,MAAQgB,EAAOC,QAAQmxB,oBACjDrxB,EAAMqxB,oBAAoBpuB,MAAQ,IAEtCuuB,mBAAoB,CAACxxB,EAAOC,KACxBD,EAAMC,EAAOC,QAAQ4b,OAAS7b,EAAOC,QAAQjB,OAEjDwyB,iBAAkB,CAACzxB,EAAOC,KACtBD,EAAMC,EAAOC,QAAQ4b,OAAO7Y,MAAQ,GACpCjD,EAAMC,EAAOC,QAAQ4b,OAAO7c,MAAQgB,EAAOC,QAAQjB,OAEvDod,kBAAmB,CAACrc,EAAOC,KACvBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAM8b,GAAO7Y,MAAQsZ,EAAO,OAGpCmV,oBAAqB,CAAC1xB,EAAOC,KACzBD,EAAMgxB,UAAU7V,KAAK,CACjBrlB,GAAImK,EAAOC,QAAQpK,GACnB8qB,SAAU5gB,EAAM4gB,SAAS3hB,MACzB2vB,UAAW5uB,EAAM4uB,UAAU3vB,MAC3B4vB,SAAU7uB,EAAM6uB,SAAS5vB,MACzBwhB,OAAQzgB,EAAMygB,OAAOxhB,MACrBmyB,iBAAkBpxB,EAAMoxB,iBAAiBnyB,MACzCoyB,oBAAqBrxB,EAAMqxB,oBAAoBpyB,MAC/C+vB,MAAOhvB,EAAM4gB,SAAS3hB,QAG1Be,EAAMixB,YAAchxB,EAAOC,QAAQ+wB,YACnCjxB,EAAM+gB,cAAgB9gB,EAAOC,QAAQ6gB,cACrC/gB,EAAMggB,OAAS,KACfhgB,EAAM4gB,SAAS3hB,MAAQ,GACvBe,EAAM4gB,SAAS3d,MAAQ,GACvBjD,EAAM4uB,UAAU3vB,MAAQ,GACxBe,EAAM4uB,UAAU3rB,MAAQ,GACxBjD,EAAM6uB,SAAS5vB,MAAQ,GACvBe,EAAM6uB,SAAS5rB,MAAQ,GACvBjD,EAAMygB,OAAOxhB,OAAQ,EACrBe,EAAMygB,OAAOxd,OAAQ,EACrBjD,EAAMoxB,iBAAiBnyB,OAAQ,EAC/Be,EAAMoxB,iBAAiBnuB,MAAQ,GAC/BjD,EAAMqxB,oBAAoBpyB,OAAQ,EAClCe,EAAMqxB,oBAAoBpuB,MAAQ,GAClCjD,EAAMkxB,cAAe,GAEzBS,oBAAqB,CAAC3xB,EAAOC,KAEzBD,EAAMgxB,UAAUhW,SAAQ/b,IAChBA,EAAMnJ,KAAOkK,EAAMggB,SACnB/gB,EAAM2hB,SAAW5gB,EAAM4gB,SAAS3hB,MAChCA,EAAM2vB,UAAY5uB,EAAM4uB,UAAU3vB,MAClCA,EAAM4vB,SAAW7uB,EAAM6uB,SAAS5vB,MAChCA,EAAMwhB,OAASzgB,EAAMygB,OAAOxhB,MAC5BA,EAAMmyB,iBAAmBpxB,EAAMoxB,iBAAiBnyB,MAChDA,EAAMoyB,oBAAsBrxB,EAAMqxB,oBAAoBpyB,UAI9De,EAAMggB,OAAS,KACfhgB,EAAM4gB,SAAS3hB,MAAQ,GACvBe,EAAM4uB,UAAU3vB,MAAQ,GACxBe,EAAM6uB,SAAS5vB,MAAQ,GACvBe,EAAMygB,OAAOxhB,OAAQ,EACrBe,EAAMoxB,iBAAiBnyB,OAAQ,EAC/Be,EAAMqxB,oBAAoBpyB,OAAQ,EAClCe,EAAMkxB,cAAe,GAEzBU,WAAY,CAAC5xB,EAAOC,KAEZA,EAAOC,UACPF,EAAMgxB,UAAY,IAEtBhxB,EAAM4f,YAAc3f,EAAOC,SAE/B2xB,SAAU,CAAC7xB,EAAOC,KACdD,EAAMgxB,UAAY/wB,EAAOC,QAAQ4xB,gBACjC9xB,EAAM+gB,cAAgB9gB,EAAOC,QAAQ6gB,cACrC/gB,EAAMixB,YAAchxB,EAAOC,QAAQ+wB,aAEvCc,YAAa,CAAC/xB,EAAOC,KACjBD,EAAMkxB,cAAe,GAEzBc,kBAAmB,CAAChyB,EAAOC,KACvBD,EAAMwB,WAAa,IAEvBywB,uBAAwB,CAACjyB,EAAOC,KAC5BD,EAAMmxB,oBAAqB,EAC3BnxB,EAAMggB,OAAS/f,EAAOC,SAE1BgyB,wBAAyB,CAAClyB,EAAOC,KAC7BD,EAAMmxB,oBAAqB,EAC3BnxB,EAAMggB,OAAS,UAKd,iBACTsR,EADS,eAETC,EAFS,mBAGTC,EAHS,iBAITC,EAJS,WAKTG,EALS,SAMTC,EANS,YAOTE,EAPS,kBAQT1V,EARS,oBASTqV,EATS,oBAUTC,EAVS,kBAWTK,EAXS,uBAYTC,EAZS,wBAaTC,GACAnB,EAAqB1vB,QAEV0vB,MAAf,S,iCCrLA,wfAQO,MAAMxyB,EAAe,CACxB0lB,eAAe,EACfC,SAAU,CACNpuB,GAAI,KACJoI,MAAO,GACPimB,YAAa,GACbC,iBAAkB,KAClBC,mBAAmB,EACnBC,OAAO,IAEXC,cAAc,EACdC,YAAa,GACbC,MAAM,EACNC,YAAa,GACbC,eAAgB,KAChBC,aAAc,KACdC,gBAAiB,GACjBC,mBAAoB,GACpBxM,KAAM,GACNyM,kBAAmB,GACnBC,QAAS,GACTE,YAAa,GACbC,YAAa,GACbC,UAAW,GACXC,gBAAiB,GACjBC,cAAe,GACfvmB,YAAa,GACbuX,oBAAqB,GACrBkD,SAAU,GACVC,WAAY,GACZ+L,WAAY,GACZ7N,gBAAgB,EAChB8N,aAAc,GACdsG,iBAAkB,GAClB9G,sBAAsB,GACtBS,gBAAiB,CACbC,aAAc,MAElBC,YAAa,CACTD,aAAc,MAElBjO,SAAU,IACHkC,MAAMiM,IAAOC,uBAAuBkG,GAAK,KAAO,GAClDnS,OACA9Y,KAAI,CAAC+Y,EAAGC,KAAJ,CACDiM,MAAOjM,EACP/a,KAAO,KAAO+a,GAAKC,WACnB/a,OAAQ,KAAO8a,GAAKC,WACpBlX,OAAQ,KAAOiX,GAAKC,WACpBvE,SAAS,OAGjBwQ,QAAS,CACLC,aAAc,KACdC,aAAc,KACdC,kBAAmB,KACnBC,YAAa,KACbC,UAAW,KACXC,cAAe,KACfC,aAAc,KACdC,MAAO,KACPC,mBAAoB,GACpBC,wBAAyB,GACzBC,iBAAkB,GAClB3B,sBAAuB,MAE3B4B,SAAU,CACN5xB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,eACZC,eAAgB,OAChBiK,MAAO,GACPynB,gBAAiB,IAErBC,kBAAmB,CACf9xB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,WACZC,eAAgB,OAChBiK,MAAO,CACH,CAAE2nB,SAAU,iBAAkBC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAClG,CAAEL,SAAU,gBAAiBC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MACjG,CAAEL,SAAU,YAAaC,OAAQ,KAAMC,QAAS,UAAWC,QAAS,SAAUC,MAAO,IAAKC,YAAa,WACvG,CAAEL,SAAU,YAAaC,OAAQ,MAAOC,QAAS,iBAAkBC,QAAS,aAAcC,MAAO,IAAKC,YAAa,kBACnH,CAAEL,SAAU,cAAeC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAC/F,CAAEL,SAAU,SAAUC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAC1F,CAAEL,SAAU,WAAYC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAC5F,CAAEL,SAAU,0BAA2BC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MAC3G,CAAEL,SAAU,sBAAuBC,OAAQ,IAAKC,QAAS,KAAMC,QAAS,KAAMC,MAAO,IAAKC,YAAa,MACvG,CAAEL,SAAU,QAASC,OAAQ,MAAOC,QAAS,IAAKC,QAAS,IAAKC,MAAO,IAAKC,YAAa,oBAGjGC,aAAc,CACVryB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,eACZC,eAAgB,OAChBiK,MAAO,IAEXkoB,SAAU,CACNtyB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,YACZC,eAAgB,OAChBiK,MAAO,IAEXmoB,OAAQ,CACJC,aAAc,GACdC,YAAa,GACbC,YAAa,IAEjBC,oBAAqB,CACjBvP,iBAAiB,EACjBC,MAAM,EACNuP,MAAM,EACNlQ,gBAAgB,EAChBmQ,QAAQ,EACRtP,QAAQ,GAEZuP,aAAc,IAIZoK,EAA2B9zB,YAAY,CACzCC,KAAM,wBACNC,eACAuB,SAAU,CACN2kB,KAAM,CAACzkB,EAAOC,KACVD,EAAMykB,MAAO,GAEjB1J,oBAAqB,CAAC/a,EAAOC,KACzBD,EAAMjB,YAAYic,SAAQC,IAClBA,EAAQC,OAASjb,EAAOC,QAAQgb,OAChCD,EAAQxF,QAAUxV,EAAOC,QAAQuV,aAI7C6F,4BAA6B,CAACtb,EAAOC,KACjCA,EAAOC,QAAQ8a,SAAQvd,IACnB,MAAMwqB,EAAiBjoB,EAAMsW,oBAAoBuE,MAAKC,GAAKA,EAAEI,OAASzd,EAAKwB,QAEvEgpB,IACAA,EAAexS,QAAUhY,EAAKgY,aAK1C8F,iBAAkB,CAACvb,EAAOC,KAEtBA,EAAOC,QAAQ8a,SAAQvd,IACnB,MAAMwqB,EAAiBjoB,EAAMwZ,SAASqB,MAAKC,GAAKA,EAAExc,OAASb,EAAKwB,QAE5DgpB,IACAA,EAAexS,QAAUhY,EAAKgY,aAK1C2c,wBAAyB,CAACpyB,EAAOC,KAE7BA,EAAOC,QAAQ8a,SAAQvd,IACnB,MAAMwqB,EAAiBjoB,EAAMyZ,WAAWoB,MAAKC,GAAKA,EAAEW,aAAehe,EAAKwB,QAEpEgpB,IACAA,EAAexS,QAAUhY,EAAKgY,aAK1CyS,mBAAoB,CAACloB,EAAOC,KACxBD,EAAMwlB,WAAWxK,SAAQ8M,IACjBA,EAAO7oB,QAAUgB,EAAOC,QAAQjB,QAChC6oB,EAAOrS,QAAUxV,EAAOC,QAAQuV,aAI5C0S,kBAAmB,CAACnoB,EAAOC,KACvBD,EAAM0X,SAASsD,SAAQ6M,IACfA,EAAK5oB,QAAUgB,EAAOC,QAAQjB,QAC9B4oB,EAAKpS,QAAUxV,EAAOC,QAAQuV,aAI1C+F,mBAAoB,CAACxb,EAAOC,KACxBD,EAAMyZ,WAAWuB,SAAQxC,IACjBA,EAAOvZ,QAAUgB,EAAOC,QAAQjB,QAChCuZ,EAAO/C,QAAUxV,EAAOC,QAAQuV,aAI5C2S,0BAA2B,CAACpoB,EAAOC,KAC/BD,EAAMslB,cAAgBrlB,EAAOC,SAEjCmoB,iBAAkB,CAACroB,EAAOC,KACtBD,EAAMikB,eAAgB,EACtBjkB,EAAMkkB,SAAW,IAAI3lB,EAAa2lB,WAEtCoE,eAAgB,CAACtoB,EAAOC,KACpBD,EAAMikB,eAAgB,EACtBjkB,EAAMkkB,SAASpuB,GAAKmK,EAAOC,QAAQpK,GACnCkK,EAAMkkB,SAAShmB,MAAQ+B,EAAOC,QAAQhC,MACtC8B,EAAMkkB,SAASC,YAAclkB,EAAOC,QAAQikB,YAC5CnkB,EAAMkkB,SAASE,iBAAmBnkB,EAAOC,QAAQkkB,iBACjDpkB,EAAMkkB,SAASG,kBAAoBpkB,EAAOC,QAAQmkB,kBAClDrkB,EAAMkkB,SAASI,OAASrkB,EAAOC,QAAQokB,QAE3CiE,qBAAsB,CAACvoB,EAAOC,KAC1BD,EAAMikB,eAAgB,EACtBjkB,EAAMkkB,SAAW,IAAI3lB,EAAa2lB,WAEtCsE,2BAA4B,CAACxoB,EAAOC,KAChCD,EAAM2X,eAAiB1X,EAAOC,SAElCuoB,YAAa,CAACzoB,EAAOC,KACjBD,EAAMikB,eAAgB,EACtBjkB,EAAMkkB,SAAW,IAAK3lB,EAAa2lB,UACnClkB,EAAM0kB,YAAc,GACpB1kB,EAAM2kB,eAAiB,KACvB3kB,EAAM2kB,eAAiB,KACvB3kB,EAAM4kB,aAAe,KACrB5kB,EAAM6kB,gBAAkB,GACxB7kB,EAAM8kB,mBAAqB,GAC3B9kB,EAAMsY,KAAO,GACbtY,EAAM+kB,kBAAoB,GAC1B/kB,EAAMglB,QAAU,GAChBhlB,EAAMklB,YAAc,GACpBllB,EAAMmlB,YAAc,GACpBnlB,EAAMslB,cAAgB,GACtBtlB,EAAM2X,gBAAiB,EACvB3X,EAAMilB,sBAAwB,GAC9BjlB,EAAM0X,SAAW,IACVkC,MAAMiM,IAAOC,uBAAuBkG,GAAK,KAAO,GAClDnS,OACA9Y,KAAI,CAAC+Y,EAAGC,KAAJ,CACDiM,MAAOjM,EACP/a,KAAO,KAAO+a,GAAKC,WACnB/a,OAAQ,KAAO8a,GAAKC,WACpBlX,OAAQ,KAAOiX,GAAKC,WACpBvE,SAAS,OAGjBzV,EAAMimB,QAAU,IAAK1nB,EAAa0nB,SAClCjmB,EAAMwnB,OAAS,IAAKjpB,EAAaipB,QACjCxnB,EAAM6mB,SAAW,IAAKtoB,EAAasoB,UACnC7mB,EAAMjB,YAAc,GACpBiB,EAAMsW,oBAAsB,GAC5BtW,EAAMwZ,SAAW,GACjBxZ,EAAMwlB,WAAa,GACnBxlB,EAAMyZ,WAAa,GACnBzZ,EAAM2X,gBAAiB,GAG3B+Q,kBAAmB,CAAC1oB,EAAOC,KACvBD,EAAMwkB,YAAcvkB,EAAOC,SAE/ByoB,oBAAqB,CAAC3oB,EAAOC,KACzBD,EAAMwZ,SAAW,IAErBoP,iBAAkB,CAAC5oB,EAAOC,KAEtBD,EAAMsW,oBAAsBtW,EAAMsW,oBAAoBvV,KAAItD,IAAI,IACvDA,EACHgY,SAAS,MAGbzV,EAAMwZ,SAAW,GAEjBxZ,EAAMwlB,WAAaxlB,EAAMwlB,WAAWzkB,KAAItD,IAAI,IACrCA,EACHgY,SAAS,MAGbzV,EAAMyZ,WAAazZ,EAAMyZ,WAAW1Y,KAAItD,IAAI,IACrCA,EACHgY,SAAS,MAGbzV,EAAM0X,SAAW1X,EAAM0X,SAAS3W,KAAItD,IAAI,IACjCA,EACHgY,SAAS,MAGbzV,EAAMwkB,YAAcvkB,EAAOC,QAC3BF,EAAM2X,gBAAiB,EACvB3X,EAAM4nB,oBAAsB,IAAKrpB,EAAaqpB,qBAE9C5nB,EAAM6mB,SAAS5xB,WAAa,EAC5B+K,EAAM6mB,SAAS3xB,SAAW,GAC1B8K,EAAM6mB,SAAS1xB,WAAa,eAC5B6K,EAAM6mB,SAASzxB,eAAiB,QAEpCyzB,0BAA2B,CAAC7oB,EAAOC,KAC/BD,EAAM4nB,oBAAsB,IACrB5nB,EAAM4nB,oBACT,CAAC3nB,EAAOC,QAAQpK,IAAKmK,EAAOC,QAAQjB,QAG5C8pB,qBAAsB,CAAC/oB,EAAOC,KAAY,IAAD,EACjC+oB,EAAQ,UAAGhpB,EAAMunB,SAASloB,aAAlB,aAAG,EAAsBwb,MAAKC,GAAKA,EAAEhlB,KAAOmK,EAAOC,QAAQpK,KACpEkzB,IACCA,EAAS/oB,EAAOC,QAAQlB,KAAOiB,EAAOC,QAAQjB,SAI1D8d,cAAgBnoB,IACZA,EAAQooB,WACJkP,IAA6Bv3B,UAAU03B,oBAAoBlP,gBAAgB,CAACnd,EAAOC,KAAY,IAAD,QAC1FD,EAAMukB,cAAe,EACrBvkB,EAAM6mB,SAAS5xB,WAAagL,EAAOC,QAAQjL,WAC3C+K,EAAM6mB,SAAS3xB,SAAW+K,EAAOC,QAAQhL,SACzC8K,EAAM6mB,SAAS1M,UAAYla,EAAOC,QAAQia,UAC1Cna,EAAM6mB,SAASzM,WAAana,EAAOC,QAAQka,WAC3Cpa,EAAM6mB,SAAS1xB,WAAa8K,EAAOC,QAAQ/K,WAC3C6K,EAAM6mB,SAASzxB,eAAiB6K,EAAOC,QAAQ9K,eAC/C4K,EAAM6mB,SAASxnB,MAAQY,EAAOC,QAAQb,MACtCW,EAAMwlB,WAAN,oBAAmBvlB,EAAOC,QAAQipB,YAAYiD,sBAA9C,aAAmB,EAA2CrrB,KAAI+mB,IAAM,YAAK,IACtEA,EACHrS,WAAU,UAACzV,EAAMwlB,WAAW3K,MAAKC,GAAKA,EAAE9b,MAAQ8oB,EAAO9oB,aAA7C,aAAC,EAAkDyW,oBAFjE,QAGO,GACPzV,EAAM6mB,SAASC,gBAAf,oBAAiC7mB,EAAOC,QAAQipB,YAAYrC,uBAA5D,aAAiC,EAA4C/lB,KAAI+Z,GAAKA,EAAE9b,aAAxF,QAAgG,MAGvGge,WACGkP,IAA6Bv3B,UAAU03B,oBAAoB5I,cAAc,CAACzjB,EAAOC,KAC7ED,EAAMukB,cAAe,KAG5BvH,WACGkP,IAA6Bv3B,UAAU03B,oBAAoB3I,eAAe,CAAC1jB,EAAOC,KAC9ED,EAAMukB,cAAe,KAG5BvH,WACGkP,IAA6Bv3B,UAAU23B,mBAAmBnP,gBAAgB,CAACnd,EAAOC,KAC9ED,EAAM+mB,kBAAkB9xB,WAAagL,EAAOC,QAAQjL,WACpD+K,EAAM+mB,kBAAkB7xB,SAAW+K,EAAOC,QAAQhL,SAClD8K,EAAM+mB,kBAAkB5M,UAAYla,EAAOC,QAAQia,UACnDna,EAAM+mB,kBAAkB3M,WAAana,EAAOC,QAAQka,WACpDpa,EAAM+mB,kBAAkB1nB,MAAQY,EAAOC,QAAQb,SAGtD2d,WACGkP,IAA6Bv3B,UAAU43B,kBAAkBpP,gBAAgB,CAACnd,EAAOC,KAC7ED,EAAMsnB,aAAaryB,WAAagL,EAAOC,QAAQjL,WAC/C+K,EAAMsnB,aAAapyB,SAAW+K,EAAOC,QAAQhL,SAC7C8K,EAAMsnB,aAAanN,UAAYla,EAAOC,QAAQia,UAC9Cna,EAAMsnB,aAAalN,WAAana,EAAOC,QAAQka,WAC/Cpa,EAAMsnB,aAAanyB,WAAa8K,EAAOC,QAAQ/K,WAC/C6K,EAAMsnB,aAAalyB,eAAiB6K,EAAOC,QAAQ9K,eACnD4K,EAAMsnB,aAAajoB,MAAQY,EAAOC,QAAQb,SAGjD2d,WACGxoB,IAASG,UAAUY,YAAY4nB,gBAAgB,CAACnd,EAAOC,KACnDD,EAAMunB,SAAStyB,WAAagL,EAAOC,QAAQjL,WAC3C+K,EAAMunB,SAASryB,SAAW+K,EAAOC,QAAQhL,SACzC8K,EAAMunB,SAASpyB,WAAa8K,EAAOC,QAAQ/K,WAC3C6K,EAAMunB,SAASnyB,eAAiB6K,EAAOC,QAAQ9K,eAC/C4K,EAAMunB,SAASpN,UAAYla,EAAOC,QAAQia,UAC1Cna,EAAMunB,SAASnN,WAAana,EAAOC,QAAQka,WAC3Cpa,EAAMunB,SAASloB,MAAQY,EAAOC,QAAQb,SAG7C2d,WACGkP,IAA6Bv3B,UAAU63B,iBAAiBrP,gBAAgB,CAACnd,EAAOC,KAAY,IAAD,IACvFD,EAAM0kB,YAAczkB,EAAOC,QAAQwkB,YACnC1kB,EAAM2kB,eAAiB1kB,EAAOC,QAAQykB,eACtC3kB,EAAM4kB,aAAe3kB,EAAOC,QAAQ0kB,aACpC5kB,EAAM6kB,gBAAkB5kB,EAAOC,QAAQ2kB,gBACvC7kB,EAAM8kB,mBAAqB7kB,EAAOC,QAAQ4kB,mBAC1C9kB,EAAMsY,KAAOrY,EAAOC,QAAQoY,KAC5BtY,EAAM+kB,kBAAoB9kB,EAAOC,QAAQ6kB,kBACzC/kB,EAAMglB,QAAU/kB,EAAOC,QAAQ8kB,QAC/BhlB,EAAMklB,YAAenuB,YAAkBkJ,EAAOC,QAAQglB,aACtDllB,EAAMmlB,YAAcllB,EAAOC,QAAQilB,YACnCnlB,EAAMolB,UAAYnlB,EAAOC,QAAQklB,UACjCplB,EAAMqlB,gBAAkBplB,EAAOC,QAAQmlB,gBACvCrlB,EAAMylB,aAAexlB,EAAOC,QAAQulB,aACpCzlB,EAAM+rB,iBAAmB9rB,EAAOC,QAAQ6rB,iBAExC/rB,EAAMimB,QAAQhB,sBAAd,oBAAuChlB,EAAOC,QAAQ+lB,QAAQhB,6BAA9D,QAAuFhlB,EAAOC,QAAQ+kB,6BAAtG,QAAgI,GAChIjlB,EAAMimB,QAAQC,aAAejmB,EAAOC,QAAQ+lB,QAAQC,aACpDlmB,EAAMimB,QAAQE,aAAelmB,EAAOC,QAAQ+lB,QAAQE,aACpDnmB,EAAMimB,QAAQG,kBAAoBnmB,EAAOC,QAAQ+lB,QAAQG,kBACzDpmB,EAAMimB,QAAQI,YAAcpmB,EAAOC,QAAQ+lB,QAAQI,YAEnDrmB,EAAMimB,QAAQK,UAAYrmB,EAAOC,QAAQ+lB,QAAQK,UACjDtmB,EAAMimB,QAAQM,cAAgBtmB,EAAOC,QAAQ+lB,QAAQM,cACrDvmB,EAAMimB,QAAQO,aAAevmB,EAAOC,QAAQ+lB,QAAQO,aACpDxmB,EAAMimB,QAAQQ,MAAQxmB,EAAOC,QAAQ+lB,QAAQQ,MAC7CzmB,EAAM4lB,YAAYD,aAAe1lB,EAAOC,QAAQ0lB,YAAYD,aAC5D3lB,EAAM+nB,aAAe9nB,EAAOC,QAAQ6nB,gBAG3C/K,WACGU,IAAW/oB,UAAUi1B,4BAA4BzM,gBAAgB,CAACnd,EAAOC,KAErED,EAAMjB,YAAc,CAAC,IACdkB,EAAOC,QACVuV,SAAS,IAGbxV,EAAOC,QAAQoW,oBAAoB0E,SAAQ3C,IACvCrY,EAAMsW,oBAAoB6E,KAAK,IACxB9C,EACH5C,SAAS,UAKxBuH,WACGU,IAAW/oB,UAAUmpB,8BAA8BX,gBAAgB,CAACnd,EAAOC,KACvED,EAAMwZ,SAAWvZ,EAAOC,QAAQa,KAAItD,IAAI,IACjCA,EACHgY,SAAS,SAIpBuH,WACG1T,IAAY3U,UAAU4U,gBAAgB4T,gBAAgB,CAACnd,EAAOC,KAC1DD,EAAMyZ,WAAaxZ,EAAOC,QAAQa,KAAItD,IAAI,IACnCA,EACHwB,MAAOxB,EAAKge,WACZhG,SAAS,SAIpBuH,WACGkP,IAA6Bv3B,UAAU83B,uBAAuBtP,gBAAgB,CAACnd,EAAOC,KAClFD,EAAMwnB,OAAOC,aAAexnB,EAAOC,WAG1C8c,WACGkP,IAA6Bv3B,UAAU+3B,0BAA0BvP,gBAAgB,CAACnd,EAAOC,KACrFD,EAAMwnB,OAAOE,YAAcznB,EAAOC,WAGzC8c,WACGkP,IAA6Bv3B,UAAUg4B,sBAAsBxP,gBAAgB,CAACnd,EAAOC,KACjFD,EAAMwnB,OAAOG,YAAc1nB,EAAOC,eAMrC,KACTukB,EADS,oBAET1J,EAFS,4BAGTO,EAHS,iBAITC,EAJS,mBAKTC,EALS,0BAMT4M,EANS,iBAOTC,EAPS,eAQTC,EARS,qBASTC,EATS,2BAUTC,EAVS,kBAWTL,EAXS,YAYTM,EAZS,kBAaTC,EAbS,oBAcTC,EAdS,iBAeTC,EAfS,0BAgBTC,EAhBS,mBAiBTX,EAjBS,wBAkBTkK,EAlBS,qBAmBTrJ,GACAoJ,EAAyB9wB,QAEd8wB,MAAf,S,iCCneA,uGAKA,MAEME,EAA4B,KAEhC,MAAM,SAAErf,GAAasf,eAGnBC,aAAeC,QAASC,EAAWC,sBAAuBC,IACxDC,aAAY5yB,GAASA,EAAM6yB,uBAG7BN,aAAa,mBACXO,EADW,yBAEXC,EAFW,yBAGXC,IAEAJ,aAAY5yB,GAASA,EAAMizB,iBAEzBC,EAAeC,KAAKC,MAAMx4B,aAAaC,QAAQ,uBAC/Cw4B,EAAoBrgB,EAASsgB,SAAS1U,MAAuB5L,EAASsgB,SAASzU,KAErFlN,qBAAU,KACJuhB,GAAgBA,EAAalgB,WAAaA,IAAaqgB,IAEzDvhB,OAAOyhB,SAAS,EAAG,GACnB34B,aAAa44B,WAAW,uBAGtBN,GAAgBA,EAAalgB,WAAaA,IAE5ClB,OAAOyhB,SAAS,EAAG,IA9BI,0BAgCnBvgB,GAAqCyf,GAAaE,GAG3C3f,IAAa8L,KAAkBkU,GAA4BD,GAA4BD,IAFhGhhB,OAAOyhB,SAAS,EAAGL,EAAaO,mBAMnC,CAACzgB,EAAUyf,EAAWE,EAAyBK,EAA0BD,EAA0BD,EAAoBI,KAKtHQ,EAA8B,KAClC5hB,OAAOlX,aAAawY,QAAQ,qBAAsB+f,KAAKQ,UAAU,CAAE3gB,SAAUlB,OAAOC,SAASiB,SAAUygB,eAAgB3hB,OAAO8hB,a,iCClDhI,8OAEA,MAAMC,EAFN,MAE0Bp/B,EAAcC,gBAAgB,CACtDC,UAAYC,IAAD,CACTk/B,SAAUl/B,EAAQY,SAAS,CACzBV,MAAQC,IAAD,CACLC,IAAM,8CACNM,OAAQ,OACRM,KAAMb,MAGVg/B,iBAAkBn/B,EAAQY,SAAS,CACjCV,MAAQC,IAAD,CACLC,IAAM,uDACNM,OAAQ,OACRM,KAAMb,MAGVi/B,cAAep/B,EAAQY,SAAS,CAC9BV,MAAQC,IAAD,CACLC,IAAM,oDACNM,OAAQ,OACRM,KAAMb,MAGVk/B,iBAAkBr/B,EAAQY,SAAS,CAC/BV,MAAQC,IAAD,CACLC,IAAM,wDACNM,OAAQ,OACRM,KAAMb,MAGZm/B,oBAAqBt/B,EAAQY,SAAS,CAClCV,MAAQC,IAAD,CACLC,IAAM,2DACNM,OAAQ,OACRM,KAAMb,MAGZo/B,mBAAoBv/B,EAAQY,SAAS,CACjCV,MAAQC,IAAD,CACHC,IAAM,yDACNM,OAAQ,OACRM,KAAMb,MAGdq/B,eAAgBx/B,EAAQY,SAAS,CAC/BV,MAAQC,IAAD,CACLC,IAAM,qDACNM,OAAQ,OACRM,KAAMb,QAIZsB,kBAAkB,KAGP,oBACXg+B,EADW,4BAEXC,EAFW,yBAGXC,EAHW,4BAIXC,EAJW,+BAKXC,EALW,8BAMXC,EANW,0BAOXC,GACEd,G,iCCjEJ,2jBAIO,MAAMt1B,EAAe,CACxB2Y,YAAa,CACTphB,GAAI,KACJmJ,MAAO,KACP6D,MAAO,MAEX8xB,eAAgB,GAChBC,eAAgB,CACZ,CAAE/+B,GAAI,UAAWmJ,MAAO,oBAAqB6D,MAAO,qBACpD,CAAEhN,GAAI,WAAYmJ,MAAO,WAAY6D,MAAO,YAC5C,CAAEhN,GAAI,WAAYmJ,MAAO,mBAAoB6D,MAAO,oBACpD,CAAEhN,GAAI,eAAgBmJ,MAAO,uBAAwB6D,MAAO,wBAC5D,CAAEhN,GAAI,eAAgBmJ,MAAO,gBAAiB6D,MAAO,kBAEzDgL,WAAY,CACRhY,GAAI,GACJmJ,MAAO,GACP6D,MAAO,IAEX0vB,QAAS,CACL/8B,UAAW,GACXq/B,qBAAsB,GACtBC,UAAU,EACVC,cAAe,GACfC,iBAAkB,GAClBC,gBAAiB,GACjBhb,UAAW,CACPjlB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,iBACZC,eAAgB,MAChBiK,MAAO,IAEX81B,oBAAoB,EACpBC,iBAAiB,EACjBC,gBAAgB,EAChBC,sBAAsB,EACtBC,oBAAoB,EACpBC,sBAAsB,EACtBC,mCAAmC,EACnCC,yBAAyB,GAE7BhD,sBAAuB,CACnBj9B,UAAW,GACXq/B,qBAAsB,GACtBa,WAAY,MACZZ,UAAU,EACVC,cAAe,GACfC,iBAAkB,GAClBC,gBAAiB,GACjBhb,UAAW,CACPjlB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,iBACZC,eAAgB,MAChBiK,MAAO,IAEX81B,oBAAoB,EACpBC,iBAAiB,EACjBC,gBAAgB,EAChBC,sBAAsB,EACtBC,oBAAoB,EACpBC,sBAAsB,EACtBC,mCAAmC,EACnCC,yBAAyB,EACzBE,0BAA0B,GAE9BC,eAAgB,CACZnR,YAAa,4BACbC,eAAgB,KAChBC,aAAc,KACdC,gBAAiB,KACjBE,kBAAmB,kCACnB+Q,QAAS,kCACT5Q,YAAa,gBACbC,YAAa,oCACbc,QAAS,CACLC,aAAc,QACdG,YAAa,IACbF,aAAc,OACdC,kBAAmB,UAEvB2P,WAAY,GAEhBC,UAAW,CACP,CACIlgC,GAAI,YACJmJ,MAAO,+CACP6D,MAAO,gDAEX,CACIhN,GAAI,YACJmJ,MAAO,kCACP6D,MAAO,mCAEX,CACIhN,GAAI,YACJmJ,MAAO,wDACP6D,MAAO,yDAEX,CACIhN,GAAI,YACJmJ,MAAO,iCACP6D,MAAO,kCAEX,CACIhN,GAAI,YACJmJ,MAAO,iCACP6D,MAAO,kCAEX,CACIhN,GAAI,YACJmJ,MAAO,iCACP6D,MAAO,kCAEX,CACIhN,GAAI,WACJmJ,MAAO,WACP6D,MAAO,aAGfyvB,YAAa,CACTC,SAAS,EACTE,uBAAuB,IAIzBuD,EAAsB53B,YAAY,CACpCC,KAAM,kBACNC,eACAuB,SAAU,CACN8a,wBAAyB,CAAC5a,EAAOC,KACN,OAAnBA,EAAOC,UACPF,EAAMkX,YAAcjX,EAAOC,UAGnCg2B,qBAAsB,CAACl2B,EAAOC,KAC1BD,EAAM40B,eAAiB30B,EAAOC,SAElCi2B,uBAAwB,CAACn2B,EAAOC,KACL,OAAnBA,EAAOC,UACPtF,aAAawY,QAAQ,oBAAqBnT,EAAOC,QAAQpK,IACzDkK,EAAM8N,WAAa9N,EAAM60B,eAAeha,MAAKC,GAAKA,EAAEhlB,KAAOmK,EAAOC,QAAQpK,OAIlFsgC,uBAAwB,CAACp2B,EAAOC,KAC5B,MAAM,cACF+0B,EADE,iBAEFC,EAFE,KAGFz9B,EAHE,SAIFu9B,GACA90B,EAAOC,QAEX,IAAIg1B,EAAkB,IAAIl1B,EAAMxI,GAAM09B,iBAEtCA,EAAgBla,SAAQqb,KAGD,IAFDrB,EAAcsB,QAAQD,EAAOvgC,MAG3Co/B,EAAkBA,EAAgB9Z,QAAON,GAAKA,EAAEhlB,KAAOugC,EAAOvgC,SAKtEk/B,EAAcha,SAAQvd,IAClB,MAAM84B,EAAgBv2B,EAAMxI,GAAM0iB,UAAU7a,MAAMwb,MAAKC,GAAKA,EAAEhlB,KAAO2H,IAC/D+4B,EAAetB,EAAgBuB,WAAU3b,IAAC,uBAAIA,EAAErlB,aAAF,OAAgB8gC,QAAhB,IAAgBA,OAAhB,EAAgBA,EAAe9gC,kBAAnC,QAAgD,MAE5F8gC,IAAmC,IAAlBC,GACjBtB,EAAgB/Z,KAAK,CACjBrlB,GAAIygC,EAAczgC,GAClBL,UAAW8gC,EAAc9gC,UACzBgiB,eAAgB8e,EAAc9e,eAC9BuN,QAASuR,EAAcvR,QACvB8P,qBAAsByB,EAAczB,0BAKhD90B,EAAMxI,GAAMw9B,cAAgBA,EAC5Bh1B,EAAMxI,GAAMy9B,iBAAmBA,EAC/Bj1B,EAAMxI,GAAMu9B,SAAWA,EACvB/0B,EAAMxI,GAAM09B,gBAAkBA,GAkBlCzM,YAAa,CAACzoB,EAAOC,KACjBD,EAAMwyB,QAAQuC,UAAW,EACzB/0B,EAAMwyB,QAAQuC,UAAW,EACzB/0B,EAAMwyB,QAAQwC,cAAgB,GAC9Bh1B,EAAMwyB,QAAQyC,iBAAmB,GACjCj1B,EAAMwyB,QAAQ0C,gBAAkB,GAChCl1B,EAAMwyB,QAAQtY,UAAY,IAAK3b,EAAai0B,QAAQtY,WAEpDla,EAAM0yB,sBAAsBqC,UAAW,EACvC/0B,EAAM0yB,sBAAsBqC,UAAW,EACvC/0B,EAAM0yB,sBAAsBsC,cAAgB,GAC5Ch1B,EAAM0yB,sBAAsBuC,iBAAmB,GAC/Cj1B,EAAM0yB,sBAAsBwC,gBAAkB,GAC9Cl1B,EAAM0yB,sBAAsBxY,UAAY,IAAK3b,EAAam0B,sBAAsBxY,WAChFla,EAAM0yB,sBAAsBiD,WAAa,MAEzC31B,EAAM8N,WAAa,IAAKvP,EAAauP,YACrC9N,EAAMkX,YAAc,IAAK3Y,EAAa2Y,aACtClX,EAAM40B,eAAiB,IAG3B8B,iBAAkB,CAAC12B,EAAOC,KACtBD,EAAMC,EAAOC,SAASm1B,gBAAiB,EACvCr1B,EAAMC,EAAOC,SAASk1B,iBAAkB,EACxCp1B,EAAMC,EAAOC,SAASi1B,oBAAqB,EAC3Cn1B,EAAMC,EAAOC,SAASo1B,sBAAuB,EAC7Ct1B,EAAMC,EAAOC,SAASq1B,oBAAqB,EAC3Cv1B,EAAMC,EAAOC,SAASs1B,sBAAuB,EAC7Cx1B,EAAMC,EAAOC,SAASu1B,mCAAoC,EAC1Dz1B,EAAMC,EAAOC,SAASw1B,yBAA0B,GAEpDiB,sBAAuB,CAAC32B,EAAOC,KAC3BD,EAAMC,EAAOC,SAASk1B,iBAAkB,EACxCp1B,EAAMC,EAAOC,SAASi1B,oBAAqB,EAC3Cn1B,EAAMC,EAAOC,SAASm1B,gBAAiB,EACvCr1B,EAAMC,EAAOC,SAASo1B,sBAAuB,EAC7Ct1B,EAAMC,EAAOC,SAASq1B,oBAAqB,EAC3Cv1B,EAAMC,EAAOC,SAASs1B,sBAAuB,EAC7Cx1B,EAAMC,EAAOC,SAASu1B,mCAAoC,EAC1Dz1B,EAAMC,EAAOC,SAASw1B,yBAA0B,GAEpDkB,0BAA2B,CAAC52B,EAAOC,KAC/BD,EAAMC,EAAOC,SAASi1B,oBAAqB,EAC3Cn1B,EAAMC,EAAOC,SAASm1B,gBAAiB,EACvCr1B,EAAMC,EAAOC,SAASk1B,iBAAkB,EACxCp1B,EAAMC,EAAOC,SAASo1B,sBAAuB,EAC7Ct1B,EAAMC,EAAOC,SAASq1B,oBAAqB,EAC3Cv1B,EAAMC,EAAOC,SAASs1B,sBAAuB,EAC7Cx1B,EAAMC,EAAOC,SAASu1B,mCAAoC,EAC1Dz1B,EAAMC,EAAOC,SAASw1B,yBAA0B,GAEpDmB,2BAA4B,CAAC72B,EAAOC,KAChCD,EAAMC,EAAOC,SAASo1B,sBAAuB,EAC7Ct1B,EAAMC,EAAOC,SAASi1B,oBAAqB,EAC3Cn1B,EAAMC,EAAOC,SAASm1B,gBAAiB,EACvCr1B,EAAMC,EAAOC,SAASk1B,iBAAkB,EACxCp1B,EAAMC,EAAOC,SAASq1B,oBAAqB,EAC3Cv1B,EAAMC,EAAOC,SAASs1B,sBAAuB,EAC7Cx1B,EAAMC,EAAOC,SAASu1B,mCAAoC,EAC1Dz1B,EAAMC,EAAOC,SAASw1B,yBAA0B,GAEpDoB,yBAA0B,CAAC92B,EAAOC,KAC9BD,EAAMC,EAAOC,SAASq1B,oBAAqB,EAC3Cv1B,EAAMC,EAAOC,SAASo1B,sBAAuB,EAC7Ct1B,EAAMC,EAAOC,SAASi1B,oBAAqB,EAC3Cn1B,EAAMC,EAAOC,SAASm1B,gBAAiB,EACvCr1B,EAAMC,EAAOC,SAASk1B,iBAAkB,EACxCp1B,EAAMC,EAAOC,SAASs1B,sBAAuB,EAC7Cx1B,EAAMC,EAAOC,SAASu1B,mCAAoC,EAC1Dz1B,EAAMC,EAAOC,SAASw1B,yBAA0B,GAEpDqB,2BAA4B,CAAC/2B,EAAOC,KAChCD,EAAMC,EAAOC,SAASs1B,sBAAuB,EAC7Cx1B,EAAMC,EAAOC,SAASq1B,oBAAqB,EAC3Cv1B,EAAMC,EAAOC,SAASo1B,sBAAuB,EAC7Ct1B,EAAMC,EAAOC,SAASi1B,oBAAqB,EAC3Cn1B,EAAMC,EAAOC,SAASm1B,gBAAiB,EACvCr1B,EAAMC,EAAOC,SAASk1B,iBAAkB,EACxCp1B,EAAMC,EAAOC,SAASu1B,mCAAoC,EAC1Dz1B,EAAMC,EAAOC,SAASw1B,yBAA0B,GAEpDsB,mCAAoC,CAACh3B,EAAOC,KACxCD,EAAMC,EAAOC,SAASu1B,mCAAoC,EAC1Dz1B,EAAMC,EAAOC,SAASs1B,sBAAuB,EAC7Cx1B,EAAMC,EAAOC,SAASq1B,oBAAqB,EAC3Cv1B,EAAMC,EAAOC,SAASo1B,sBAAuB,EAC7Ct1B,EAAMC,EAAOC,SAASi1B,oBAAqB,EAC3Cn1B,EAAMC,EAAOC,SAASm1B,gBAAiB,EACvCr1B,EAAMC,EAAOC,SAASk1B,iBAAkB,EACxCp1B,EAAMC,EAAOC,SAASw1B,yBAA0B,GAEpDuB,yBAA0B,CAACj3B,EAAOC,KAC9BD,EAAMC,EAAOC,QAAQ1I,MAAMk+B,yBAA0B,EACrD11B,EAAMC,EAAOC,QAAQ1I,MAAM/B,UAAYwK,EAAOC,QAAQzK,UACtDuK,EAAMC,EAAOC,QAAQ1I,MAAMs9B,qBAAuB,MAE9C70B,EAAOC,QAAQzK,UAAUod,OAAS,KAClC7S,EAAMC,EAAOC,QAAQ1I,MAAMs9B,qBAAuB,OAGtD90B,EAAMC,EAAOC,QAAQ1I,MAAMi+B,mCAAoC,EAC/Dz1B,EAAMC,EAAOC,QAAQ1I,MAAMg+B,sBAAuB,EAClDx1B,EAAMC,EAAOC,QAAQ1I,MAAM+9B,oBAAqB,EAChDv1B,EAAMC,EAAOC,QAAQ1I,MAAM89B,sBAAuB,EAClDt1B,EAAMC,EAAOC,QAAQ1I,MAAM29B,oBAAqB,EAChDn1B,EAAMC,EAAOC,QAAQ1I,MAAM69B,gBAAiB,EAC5Cr1B,EAAMC,EAAOC,QAAQ1I,MAAM49B,iBAAkB,GAEjD8B,4BAA6B,CAACl3B,EAAOC,KACjCD,EAAMC,EAAOC,SAASm1B,gBAAiB,EACvCr1B,EAAMC,EAAOC,SAASw1B,yBAA0B,EAChD11B,EAAMC,EAAOC,SAASu1B,mCAAoC,EAC1Dz1B,EAAMC,EAAOC,SAASs1B,sBAAuB,EAC7Cx1B,EAAMC,EAAOC,SAASq1B,oBAAqB,EAC3Cv1B,EAAMC,EAAOC,SAASo1B,sBAAuB,EAC7Ct1B,EAAMC,EAAOC,SAASi1B,oBAAqB,EAC3Cn1B,EAAMC,EAAOC,SAASk1B,iBAAkB,GAE5C+B,uBAAwB,CAACn3B,EAAOC,KAC5BD,EAAM0yB,sBAAsBiD,WAAa11B,EAAOC,SAEpDk3B,gCAAiC,CAACp3B,EAAOC,KACrCD,EAAM0yB,sBAAsBkD,yBAA2B31B,EAAOC,UAGtE6c,cAAgBnoB,IACZA,EACKooB,WACGY,IAAkBjpB,UAAU0iC,qBAAqBla,gBAAgB,CAACnd,EAAOC,KAAY,IAAD,EAChFD,EAAMwyB,QAAQtY,UAAUjlB,WAAagL,EAAOC,QAAQjL,WACpD+K,EAAMwyB,QAAQtY,UAAUhlB,SAAW+K,EAAOC,QAAQhL,SAClD8K,EAAMwyB,QAAQtY,UAAUC,UAAYla,EAAOC,QAAQia,UACnDna,EAAMwyB,QAAQtY,UAAUE,WAAana,EAAOC,QAAQka,WACpDpa,EAAMwyB,QAAQtY,UAAU/kB,WAAa8K,EAAOC,QAAQ/K,WACpD6K,EAAMwyB,QAAQtY,UAAU9kB,eAAiB6K,EAAOC,QAAQ9K,eACxD4K,EAAMwyB,QAAQtY,UAAU7a,MAAxB,UAAgCY,EAAOC,QAAQb,aAA/C,aAAgC,EAAsB0B,KAAI+Z,IAAC,IAAUA,EAAGrD,eAAgB6f,YAAUxc,EAAErD,oBAEpGzX,EAAMuyB,YAAYC,SAAU,KAInCxV,WACGY,IAAkBjpB,UAAU4iC,mCAAmCpa,gBAAgB,CAACnd,EAAOC,KAAY,IAAD,EAC9FD,EAAM0yB,sBAAsBxY,UAAUjlB,WAAagL,EAAOC,QAAQjL,WAClE+K,EAAM0yB,sBAAsBxY,UAAUhlB,SAAW+K,EAAOC,QAAQhL,SAChE8K,EAAM0yB,sBAAsBxY,UAAUC,UAAYla,EAAOC,QAAQia,UACjEna,EAAM0yB,sBAAsBxY,UAAUE,WAAana,EAAOC,QAAQka,WAClEpa,EAAM0yB,sBAAsBxY,UAAU/kB,WAAa8K,EAAOC,QAAQ/K,WAClE6K,EAAM0yB,sBAAsBxY,UAAU9kB,eAAiB6K,EAAOC,QAAQ9K,eACtE4K,EAAM0yB,sBAAsBxY,UAAU7a,MAAtC,UAA8CY,EAAOC,QAAQb,aAA7D,aAA8C,EAAsB0B,KAAI+Z,IAAC,IAAUA,EAAGrD,eAAgB6f,YAAUxc,EAAErD,oBAElHzX,EAAMuyB,YAAYG,uBAAwB,KAIjD1V,WACGY,IAAkBjpB,UAAU4iC,mCAAmC9T,cAAc,CAACzjB,EAAOC,KACjFD,EAAMuyB,YAAYG,uBAAwB,KAGjD1V,WACGY,IAAkBjpB,UAAU0iC,qBAAqB5T,cAAc,CAACzjB,EAAOC,KACnED,EAAMuyB,YAAYC,SAAU,SAOnC,wBACT5X,EADS,qBAETsb,EAFS,uBAGTC,EAHS,uBAITC,EAJS,iBAKTM,EALS,sBAMTC,EANS,0BAOTC,EAPS,2BAQTC,EARS,yBASTC,EATS,2BAUTC,EAVS,mCAWTC,EAXS,yBAYTC,EAZS,4BAaTC,EAbS,YAcTzO,EAdS,uBAeT0O,EAfS,gCAgBTC,GACAnB,EAAoB50B,QAET40B,MAAf,S,iCC7YA,uEAKO,MAAM13B,EAAe,CACxBi5B,iBAAkB,CACd1hC,GAAI,KACJ2hC,aAAc,IAElBC,eAAgB,CACZp7B,MAAM,EACNsJ,KAAM,UAEV+xB,eAAgB,GAChBC,6BAA6B,EAC7B9E,mBAAoB,CAChB79B,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,eACZC,eAAgB,MAChBiK,MAAO,IAEX0zB,yBAA0B,CACtB99B,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,eACZC,eAAgB,MAChBiK,MAAO,IAEX2zB,yBAA0B,CACtB/9B,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,cACZC,eAAgB,OAChBiK,MAAO,IAEXw4B,yBAA0B,GAC1BtF,YAAa,CACTO,oBAAoB,EACpBC,0BAA0B,EAC1BC,0BAA0B,IAK5B8E,EAAiBz5B,YAAY,CAC/BC,KAAM,iBACNC,eACAuB,SAAU,CACNi4B,qBAAsB,CAAC/3B,EAAOC,KAC1BD,EAAMw3B,iBAAiB1hC,GAAKmK,EAAOC,QAAQpK,GAC3CkK,EAAMw3B,iBAAiBC,aAAex3B,EAAOC,QAAQu3B,cAEzDO,yBAA0B,CAACh4B,EAAOC,KAC9BD,EAAM03B,eAAep7B,MAAO,EAC5B0D,EAAM03B,eAAe9xB,KAAO,UAEhCqyB,oBAAqB,CAACj4B,EAAOC,KACzBD,EAAM03B,eAAep7B,MAAO,EAC5B0D,EAAM03B,eAAe9xB,KAAO,OAC5B5F,EAAMw3B,iBAAiB1hC,GAAKmK,EAAOC,QAAQpK,GAC3CkK,EAAMw3B,iBAAiBC,aAAex3B,EAAOC,QAAQu3B,cAEzDS,0BAA2B,CAACl4B,EAAOC,KAC/BD,EAAM03B,eAAep7B,MAAO,EAC5B0D,EAAM03B,eAAe9xB,KAAO,SAC5B5F,EAAM43B,6BAA8B,GAExCO,2BAA4B,CAACn4B,EAAOC,KAChCD,EAAMw3B,iBAAiBC,aAAex3B,EAAOC,QAAQu3B,aACrDz3B,EAAM8yB,mBAAmBzzB,MAAM2b,SAAQvd,IAC/BA,EAAK3H,KAAOmK,EAAOC,QAAQpK,KAC3B2H,EAAKg6B,aAAex3B,EAAOC,QAAQu3B,kBAK/CW,kCAAmC,CAACp4B,EAAOC,KACvCD,EAAM43B,6BAA8B,GAExCS,+BAAgC,CAACr4B,EAAOC,KACpCD,EAAMgzB,yBAA2B,IAAKz0B,EAAay0B,2BAEvDsF,gBAAiB,CAACt4B,EAAOC,KACrBD,EAAMgzB,yBAAyB/9B,WAAa,EAC5C+K,EAAMgzB,yBAAyB99B,SAAW,KAGlD6nB,cAAgBnoB,IACZA,EAAQooB,WACJhX,IAAarR,UAAUsR,sBAAsBkX,gBAAgB,CAACnd,EAAOC,KACjED,EAAM8yB,mBAAmB79B,WAAagL,EAAOC,QAAQjL,WACrD+K,EAAM8yB,mBAAmB59B,SAAW+K,EAAOC,QAAQhL,SACnD8K,EAAM8yB,mBAAmB3Y,UAAYla,EAAOC,QAAQia,UACpDna,EAAM8yB,mBAAmB1Y,WAAana,EAAOC,QAAQka,WACrDpa,EAAM8yB,mBAAmB39B,WAAa8K,EAAOC,QAAQ/K,WACrD6K,EAAM8yB,mBAAmB19B,eAAiB6K,EAAOC,QAAQ9K,eACzD4K,EAAM8yB,mBAAmBzzB,MAAQY,EAAOC,QAAQb,MAEhDW,EAAMuyB,YAAYO,oBAAqB,KACxC9V,WACChX,IAAarR,UAAUuR,4BAA4BiX,gBAAgB,CAACnd,EAAOC,KACvED,EAAM+yB,yBAAyB99B,WAAagL,EAAOC,QAAQjL,WAC3D+K,EAAM+yB,yBAAyB79B,SAAW+K,EAAOC,QAAQhL,SACzD8K,EAAM+yB,yBAAyB5Y,UAAYla,EAAOC,QAAQia,UAC1Dna,EAAM+yB,yBAAyB3Y,WAAana,EAAOC,QAAQka,WAC3Dpa,EAAM+yB,yBAAyB59B,WAAa8K,EAAOC,QAAQ/K,WAC3D6K,EAAM+yB,yBAAyB39B,eAAiB6K,EAAOC,QAAQ9K,eAC/D4K,EAAM+yB,yBAAyB1zB,MAAQY,EAAOC,QAAQb,MAEtDW,EAAMuyB,YAAYQ,0BAA2B,KAC9C/V,WACCxQ,IAAmB7X,UAAU8X,4BAA4B0Q,gBAAgB,CAACnd,EAAOC,KAAY,IAAD,EAYhB,GAXxED,EAAMgzB,yBAAyB/9B,WAAagL,EAAOC,QAAQjL,WAC3D+K,EAAMgzB,yBAAyB99B,SAAW+K,EAAOC,QAAQhL,SACzD8K,EAAMgzB,yBAAyB7Y,UAAYla,EAAOC,QAAQia,UAC1Dna,EAAMgzB,yBAAyB5Y,WAAana,EAAOC,QAAQka,WAC3Dpa,EAAMgzB,yBAAyB79B,WAAa8K,EAAOC,QAAQ/K,WAC3D6K,EAAMgzB,yBAAyB59B,eAAiB6K,EAAOC,QAAQ9K,eAC/D4K,EAAMgzB,yBAAyB3zB,MAA/B,UAAuCY,EAAOC,QAAQb,aAAtD,aAAuC,EAAsB0B,KAAI+Z,IAAC,IAAUA,EAAGrD,eAAgB6f,YAAUxc,EAAErD,oBAE3GzX,EAAMuyB,YAAYS,0BAA2B,EAGX,IAA9B/yB,EAAOC,QAAQjL,YAAoBgL,EAAOC,QAAQb,MAAMwT,OAAS,KACjE7S,EAAM23B,eAAN,UAAuB13B,EAAOC,QAAQb,MAAM,UAA5C,aAAuB,EAAyB5J,WAGpDuK,EAAMgzB,yBAAyB3zB,MAAM2b,SAAQvd,IACvBuC,EAAM63B,yBAAyBhd,MAAK0d,GAAS96B,EAAKhI,YAAc8iC,EAAM9iC,aAEpFuK,EAAM63B,yBAAyB1c,KAAK1d,SAG7Cuf,WAAWxQ,IAAmB7X,UAAU8X,4BAA4BgX,cAAc,CAACzjB,EAAOC,KACzFD,EAAMuyB,YAAYS,0BAA2B,KAC9ChW,WAAWhX,IAAarR,UAAUsR,sBAAsBwd,cAAc,CAACzjB,EAAOC,KAC7ED,EAAMuyB,YAAYO,oBAAqB,KACxC9V,WAAWhX,IAAarR,UAAUuR,4BAA4Bud,cAAc,CAACzjB,EAAOC,KACnFD,EAAMuyB,YAAYQ,0BAA2B,SAMxD,qBACTgF,EADS,yBAETS,EAFS,oBAGTP,EAHS,yBAITD,EAJS,0BAKTE,EALS,2BAMTC,EANS,kCAOTC,EAPS,+BAQTC,EARS,gBASTC,GACAR,EAAez2B,QAEJy2B,MAAf,S,iCCpKA,kQAGO,MAAMv5B,EAAe,CACxBqhB,aAAa,EACb6Y,wBAAwB,EACxBjY,qBAAsB,GACtBkY,6BAA8B,GAC9Bxe,UAAW,CACPjlB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,OACZC,eAAgB,MAChBiK,MAAO,IAEXs5B,aAAc,CACV7iC,GAAI,GACJ8iC,0BAA2B,GAC3BC,UAAU,EACVv6B,KAAM,CACFW,MAAO,GACPgE,MAAO,IAEXiY,KAAM,CACFjc,MAAO,GACPgE,MAAO,IAEXif,eAAgB,CACZjjB,MAAO,KACPgE,MAAO,IAEX61B,mBAAoB,CAChB75B,MAAO,KACPgE,MAAO,IAEX81B,gBAAiB,CACb95B,OAAO,EACPgE,MAAO,IAEX+1B,eAAgB,CACZ/5B,OAAO,EACPgE,MAAO,IAEXg2B,eAAgB,CACZh6B,OAAO,EACPgE,MAAO,IAEXi2B,UAAW,CACPj6B,MAAO,KACPgE,MAAO,IAEXk2B,SAAU,CACNl6B,MAAO,KACPgE,MAAO,MAKbm2B,EAAoB/6B,YAAY,CAClCC,KAAM,iBACNC,eACAuB,SAAU,CACNuc,kBAAmB,CAACrc,EAAOC,KACvBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAM24B,aAAa7c,GAAO7Y,MAAQsZ,EAAO,OAGjD8c,eAAgB,CAACr5B,EAAOC,MACE,IAAnBA,EAAOC,UACNF,EAAM24B,aAAep6B,EAAao6B,aAClC34B,EAAM04B,6BAA+B,IAEzC14B,EAAMy4B,uBAAyBx4B,EAAOC,SAE1Co5B,yBAA0B,CAACt5B,EAAOC,KAC9B,MAAM,IAAEjB,EAAF,MAAOC,GAAUgB,EAAOC,QAC9BF,EAAM24B,aAAa35B,GAAKC,MAAQA,EAChCe,EAAM24B,aAAa35B,GAAKiE,MAAQ,IAEpCs2B,mBAAoB,CAACv5B,EAAOC,KAExB,MAAM,WAAEu5B,EAAF,YAAcC,EAAd,QAA2BC,EAA3B,MAAoCz6B,GAAUgB,EAAOC,QAC3D,IAAIy5B,EAAkB35B,EAAM24B,aAAaa,GAAYv6B,MACjDy6B,GACA15B,EAAM24B,aAAaa,GAAYv6B,OAAS06B,EACxC35B,EAAM24B,aAAaa,GAAYv2B,MAAQ,GAEvCjD,EAAM24B,aAAac,GAAax6B,MAAQ06B,EACxC35B,EAAM24B,aAAac,GAAax2B,MAAQ,KAGM,IAA1CjD,EAAM24B,aAAac,GAAax6B,QAA4B,IAAVA,GAClDe,EAAM24B,aAAaa,GAAYv6B,MAAQA,EACvCe,EAAM24B,aAAaa,GAAYv2B,MAAQ,GAEvCjD,EAAM24B,aAAac,GAAax6B,OAASA,EACzCe,EAAM24B,aAAaa,GAAYv2B,MAAQ,KAEvCjD,EAAM24B,aAAaa,GAAYv6B,MAAQA,EACvCe,EAAM24B,aAAaa,GAAYv2B,MAAQ,KAKnD22B,sBAAuB,CAAC55B,EAAOC,KAC3B,MAAM,GACFnK,EADE,KAEFwI,EAFE,KAGF4c,EAHE,eAIFgH,EAJE,YAKF2X,EALE,WAMFC,EANE,YAOFC,EAPE,mBAQFC,EARE,0BASFpB,EATE,SAUFC,EAVE,WAWFoB,GACAh6B,EAAOC,QAEXF,EAAM04B,6BAA+BE,EACrC54B,EAAM24B,aAAe,CACjB7iC,KACA+iC,WACAD,4BACAt6B,KAAM,CACFW,MAAOX,EACP2E,MAAO,IAEXiY,KAAM,CACFjc,MAAOic,EACPjY,MAAO,IAEXif,eAAgB,CACZjjB,MAAOijB,EACPjf,MAAO,IAEX81B,gBAAiB,CACb95B,MAAO46B,EACP52B,MAAO,IAEX+1B,eAAgB,CACZ/5B,MAAO66B,EACP72B,MAAO,IAEXg2B,eAAgB,CACZh6B,MAAOg7B,EACPh3B,MAAO,IAEXi2B,UAAW,CACPj6B,MAAO86B,EACP92B,MAAO,IAEXk2B,SAAU,CACNl6B,MAAO+6B,EACP/2B,MAAO,MAInBi3B,6BAA8B,CAACl6B,EAAOC,KAClCD,EAAM04B,6BAA+Bz4B,EAAOC,SAEhDi6B,gCAAiC,CAACn6B,EAAOC,KACrCD,EAAM04B,6BAA+B,KAG7C3b,cAAgBnoB,IACZA,EAAQooB,WACJtV,IAAU/S,UAAUgT,mBAAmBwV,gBAAgB,CAACnd,EAAOC,KAC3DD,EAAM4f,aAAc,EACpB5f,EAAMka,UAAUjlB,WAAagL,EAAOC,QAAQjL,WAC5C+K,EAAMka,UAAUhlB,SAAW+K,EAAOC,QAAQhL,SAC1C8K,EAAMka,UAAUC,UAAYla,EAAOC,QAAQia,UAC3Cna,EAAMka,UAAUE,WAAana,EAAOC,QAAQka,WAC5Cpa,EAAMka,UAAU/kB,WAAa8K,EAAOC,QAAQ/K,WAC5C6K,EAAMka,UAAU9kB,eAAiB6K,EAAOC,QAAQ9K,eAChD4K,EAAMka,UAAU7a,MAAQY,EAAOC,QAAQb,SAG9C2d,WACGtV,IAAU/S,UAAUgT,mBAAmB8b,cAAc,CAACzjB,EAAOC,KACzDD,EAAM4f,aAAc,KAG3B5C,WACGtV,IAAU/S,UAAUgT,mBAAmB+b,eAAe,CAAC1jB,EAAOC,KAC1DD,EAAM4f,aAAc,KAG3B5C,WAAWtV,IAAU/S,UAAUuT,eAAeiV,gBAAgB,CAACnd,EAAOC,KAAY,IAAD,IAC9ED,EAAMwgB,qBAAN,oBAA6BvgB,EAAOC,eAApC,aAA6B,EAAgBa,KAAIq5B,IAAI,CACjDtkC,GAAIskC,EAAKtkC,GACTmJ,MAAOm7B,EAAK7Z,qBACZzd,MAAOs3B,EAAKC,2BAHhB,QAIO,UAMN,kBACThe,EADS,eAETgd,EAFS,sBAGTO,EAHS,mBAITL,EAJS,yBAKTD,EALS,6BAMTY,EANS,gCAOTC,GACAf,EAAkB/3B,QAEP+3B,MAAf,S,iCCnNA,8LAGO,MAAM76B,EAAe,CACxBqhB,aAAa,EACb0a,kBAAmB,CACfh+B,MAAM,EACNi+B,aAAc,MAElBC,kBAAkB,EAClBtgB,UAAW,CACPjlB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,iBACZC,eAAgB,MAChBiK,MAAO,IAEXo7B,eAAgB,CACZ3kC,GAAI,GACJ2hB,eAAgB,CACZxY,MAAO,GACPgE,MAAO,IAEX+jB,SAAU,CACN/nB,MAAO,GACPgE,MAAO,IAEXy3B,IAAK,CACDz7B,MAAO,KACPgE,MAAO,IAEXgY,QAAS,CACLhc,MAAO,KACPgE,MAAO,IAEXjO,IAAK,CACDiK,OAAO,EACPgE,MAAO,IAEX03B,YAAa,CACT17B,MAAO,KACPgE,MAAO,IAEX23B,aAAc,CACV37B,MAAO,KACPgE,MAAO,IAEX43B,SAAU,CACN57B,MAAO,KACPgE,MAAO,IAEXkhB,YAAa,CACTllB,MAAO,KACPgE,MAAO,MAKb63B,EAAsBz8B,YAAY,CACpCC,KAAM,mBACNC,eACAuB,SAAU,CACNuc,kBAAmB,CAACrc,EAAOC,KACvBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAMy6B,eAAe3e,GAAO7Y,MAAQsZ,EAAO,OAGnDwe,2BAA4B,CAAC/6B,EAAOC,KAChCD,EAAMs6B,kBAAkBh+B,KAAO2D,EAAOC,QAAQq6B,aAC9Cv6B,EAAMs6B,kBAAkBC,aAAet6B,EAAOC,QAAQq6B,cAE1DlB,eAAgB,CAACr5B,EAAOC,MACE,IAAnBA,EAAOC,UACNF,EAAMy6B,eAAiBl8B,EAAak8B,gBAExCz6B,EAAMw6B,iBAAmBv6B,EAAOC,SAEpC86B,2BAA4B,CAACh7B,EAAOC,KAChC,MAAM,IAAEjB,EAAF,MAAOC,GAAUgB,EAAOC,QAC9BF,EAAMy6B,eAAez7B,GAAKC,MAAQA,EAClCe,EAAMy6B,eAAez7B,GAAKiE,MAAQ,IAEtCg4B,wBAAyB,CAACj7B,EAAOC,KAC7B,MAAM,GACFnK,EADE,eAEF2hB,EAFE,SAGFuP,EAHE,IAIF0T,EAJE,QAKFzf,EALE,IAMFjmB,EANE,YAOF2lC,EAPE,aAQFC,EARE,SASFC,EATE,YAUF1W,GACAlkB,EAAOC,QAEXF,EAAMy6B,eAAiB,CACnB3kC,KACA2hB,eAAgB,CACZxY,MAAOwY,EACPxU,MAAO,IAEX+jB,SAAU,CACN/nB,MAAO+nB,EACP/jB,MAAO,IAEXy3B,IAAK,CACDz7B,MAAOy7B,EACPz3B,MAAO,IAEXgY,QAAS,CACLhc,MAAOgc,EACPhY,MAAO,IAEXjO,IAAK,CACDiK,MAAOjK,EACPiO,MAAO,IAEX03B,YAAa,CACT17B,MAAO07B,EACP13B,MAAO,IAEX23B,aAAc,CACV37B,MAAO27B,EACP33B,MAAO,IAEX43B,SAAU,CACN57B,MAAO47B,EACP53B,MAAO,IAEXkhB,YAAa,CACTllB,MAAOklB,EACPlhB,MAAO,OAKvB8Z,cAAgBnoB,IACZA,EAAQooB,WACJjS,IAAYpW,UAAUqW,qBAAqBmS,gBAAgB,CAACnd,EAAOC,KAC/DD,EAAM4f,aAAc,EACpB5f,EAAMka,UAAUjlB,WAAagL,EAAOC,QAAQjL,WAC5C+K,EAAMka,UAAUhlB,SAAW+K,EAAOC,QAAQhL,SAC1C8K,EAAMka,UAAUC,UAAYla,EAAOC,QAAQia,UAC3Cna,EAAMka,UAAUE,WAAana,EAAOC,QAAQka,WAC5Cpa,EAAMka,UAAU/kB,WAAa8K,EAAOC,QAAQ/K,WAC5C6K,EAAMka,UAAU9kB,eAAiB6K,EAAOC,QAAQ9K,eAChD4K,EAAMka,UAAU7a,MAAQY,EAAOC,QAAQb,SAG9C2d,WACGjS,IAAYpW,UAAUqW,qBAAqByY,cAAc,CAACzjB,EAAOC,KAC7DD,EAAM4f,aAAc,KAG3B5C,WACGjS,IAAYpW,UAAUqW,qBAAqB0Y,eAAe,CAAC1jB,EAAOC,KAC9DD,EAAM4f,aAAc,SAMvB,kBACTvD,EADS,2BAET0e,EAFS,eAGT1B,EAHS,wBAIT4B,EAJS,2BAKTD,GACAF,EAAoBz5B,QAETy5B,MAAf,S,iCC7KA,6lBAIO,MAAMv8B,EAAe,CACxB2Y,YAAa,CACTphB,GAAI,KACJmJ,MAAO,KACP6D,MAAO,MAEX8xB,eAAgB,GAChBC,eAAgB,CACZ,CAAE/+B,GAAI,UAAWmJ,MAAO,UAAW6D,MAAO,qBAC1C,CAAEhN,GAAI,WAAYmJ,MAAO,WAAY6D,MAAO,YAC5C,CAAEhN,GAAI,WAAYmJ,MAAO,WAAY6D,MAAO,oBAC5C,CAAEhN,GAAI,eAAgBmJ,MAAO,eAAgB6D,MAAO,wBACpD,CAAEhN,GAAI,eAAgBmJ,MAAO,eAAgB6D,MAAO,kBAExDgL,WAAY,CACRhY,GAAI,GACJmJ,MAAO,GACP6D,MAAO,IAEX0vB,QAAS,CACL/8B,UAAW,GACXq/B,qBAAsB,GACtBa,WAAY,MACZpxB,aAAc,MACd22B,iBAAkB,MAClBnG,UAAU,EACVC,cAAe,GACfC,iBAAkB,GAClBC,gBAAiB,GACjBhb,UAAW,CACPjlB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,iBACZC,eAAgB,MAChBiK,MAAO,IAEX81B,oBAAoB,EACpBC,iBAAiB,EACjBC,gBAAgB,EAChBC,sBAAsB,EACtBC,oBAAoB,EACpBC,sBAAsB,EACtBC,mCAAmC,EACnCC,yBAAyB,GAE7BG,eAAgB,CACZnR,YAAa,4BACbC,eAAgB,KAChBC,aAAc,KACdC,gBAAiB,KACjBE,kBAAmB,kCACnB+Q,QAAS,kCACT5Q,YAAa,gBACbC,YAAa,oCACbc,QAAS,CACLC,aAAc,QACdG,YAAa,IACbF,aAAc,OACdC,kBAAmB,UAEvB2P,WAAY,GAEhBC,UAAW,CACP,CACIlgC,GAAI,YACJmJ,MAAO,kCACP6D,MAAO,mCAEX,CACIhN,GAAI,YACJmJ,MAAO,iCACP6D,MAAO,kCAEX,CACIhN,GAAI,YACJmJ,MAAO,wDACP6D,MAAO,yDAEX,CACIhN,GAAI,YACJmJ,MAAO,iCACP6D,MAAO,kCAEX,CACIhN,GAAI,YACJmJ,MAAO,iCACP6D,MAAO,kCAEX,CACIhN,GAAI,YACJmJ,MAAO,iCACP6D,MAAO,kCAEX,CACIhN,GAAI,WACJmJ,MAAO,WACP6D,MAAO,cAKbq4B,EAAwB98B,YAAY,CACtCC,KAAM,qBACNC,eACAuB,SAAU,CACN8a,wBAAyB,CAAC5a,EAAOC,KACN,OAAnBA,EAAOC,UACPF,EAAMkX,YAAcjX,EAAOC,UAGnCg2B,qBAAsB,CAACl2B,EAAOC,KAC1BD,EAAM40B,eAAiB30B,EAAOC,SAElCi2B,uBAAwB,CAACn2B,EAAOC,KACL,OAAnBA,EAAOC,UACPF,EAAM8N,WAAa9N,EAAM60B,eAAeha,MAAKC,GAAKA,EAAEhlB,KAAOmK,EAAOC,QAAQpK,OAIlFsgC,uBAAwB,CAACp2B,EAAOC,KAC5B,MAAM,cACF+0B,EADE,iBAEFC,EAFE,KAGFz9B,EAHE,SAIFu9B,GACA90B,EAAOC,QAEX,IAAIg1B,EAAkB,IAAIl1B,EAAMxI,GAAM09B,iBAEtCA,EAAgBla,SAAQqb,KAGD,IAFDrB,EAAcsB,QAAQD,EAAOvgC,MAG3Co/B,EAAkBA,EAAgB9Z,QAAON,GAAKA,EAAEhlB,KAAOugC,EAAOvgC,SAKtEk/B,EAAcha,SAAQvd,IAClB,MAAM84B,EAAgBv2B,EAAMxI,GAAM0iB,UAAU7a,MAAMwb,MAAKC,GAAKA,EAAEhlB,KAAO2H,IAC/D+4B,EAAetB,EAAgBuB,WAAU3b,IAAC,uBAAIA,EAAErlB,aAAF,OAAgB8gC,QAAhB,IAAgBA,OAAhB,EAAgBA,EAAe9gC,kBAAnC,QAAgD,MAE5F8gC,IAAmC,IAAlBC,GACjBtB,EAAgB/Z,KAAKob,MAI7Bv2B,EAAMxI,GAAMw9B,cAAgBA,EAC5Bh1B,EAAMxI,GAAMy9B,iBAAmBA,EAC/Bj1B,EAAMxI,GAAMu9B,SAAWA,EACvB/0B,EAAMxI,GAAM09B,gBAAkBA,GAGlCzM,YAAa,CAACzoB,EAAOC,KACjBD,EAAMwyB,QAAQuC,UAAW,EACzB/0B,EAAMwyB,QAAQuC,UAAW,EACzB/0B,EAAMwyB,QAAQwC,cAAgB,GAC9Bh1B,EAAMwyB,QAAQyC,iBAAmB,GACjCj1B,EAAMwyB,QAAQ0C,gBAAkB,GAChCl1B,EAAMwyB,QAAQtY,UAAY,IAAK3b,EAAai0B,QAAQtY,WACpDla,EAAMwyB,QAAQmD,WAAa,MAC3B31B,EAAMwyB,QAAQjuB,aAAe,MAC7BvE,EAAMwyB,QAAQ0I,iBAAmB,MAEjCl7B,EAAM8N,WAAa,IAAKvP,EAAauP,YACrC9N,EAAMkX,YAAc,IAAK3Y,EAAa2Y,aACtClX,EAAM40B,eAAiB,IAG3B8B,iBAAkB,CAAC12B,EAAOC,KACtBD,EAAMC,EAAOC,SAASm1B,gBAAiB,EACvCr1B,EAAMC,EAAOC,SAASk1B,iBAAkB,EACxCp1B,EAAMC,EAAOC,SAASi1B,oBAAqB,EAC3Cn1B,EAAMC,EAAOC,SAASo1B,sBAAuB,EAC7Ct1B,EAAMC,EAAOC,SAASq1B,oBAAqB,EAC3Cv1B,EAAMC,EAAOC,SAASs1B,sBAAuB,EAC7Cx1B,EAAMC,EAAOC,SAASu1B,mCAAoC,EAC1Dz1B,EAAMC,EAAOC,SAASw1B,yBAA0B,GAEpDiB,sBAAuB,CAAC32B,EAAOC,KAC3BD,EAAMC,EAAOC,SAASk1B,iBAAkB,EACxCp1B,EAAMC,EAAOC,SAASi1B,oBAAqB,EAC3Cn1B,EAAMC,EAAOC,SAASm1B,gBAAiB,EACvCr1B,EAAMC,EAAOC,SAASo1B,sBAAuB,EAC7Ct1B,EAAMC,EAAOC,SAASq1B,oBAAqB,EAC3Cv1B,EAAMC,EAAOC,SAASs1B,sBAAuB,EAC7Cx1B,EAAMC,EAAOC,SAASu1B,mCAAoC,EAC1Dz1B,EAAMC,EAAOC,SAASw1B,yBAA0B,GAEpDkB,0BAA2B,CAAC52B,EAAOC,KAC/BD,EAAMC,EAAOC,SAASi1B,oBAAqB,EAC3Cn1B,EAAMC,EAAOC,SAASm1B,gBAAiB,EACvCr1B,EAAMC,EAAOC,SAASk1B,iBAAkB,EACxCp1B,EAAMC,EAAOC,SAASo1B,sBAAuB,EAC7Ct1B,EAAMC,EAAOC,SAASq1B,oBAAqB,EAC3Cv1B,EAAMC,EAAOC,SAASs1B,sBAAuB,EAC7Cx1B,EAAMC,EAAOC,SAASu1B,mCAAoC,EAC1Dz1B,EAAMC,EAAOC,SAASw1B,yBAA0B,GAEpDmB,2BAA4B,CAAC72B,EAAOC,KAChCD,EAAMC,EAAOC,SAASo1B,sBAAuB,EAC7Ct1B,EAAMC,EAAOC,SAASi1B,oBAAqB,EAC3Cn1B,EAAMC,EAAOC,SAASm1B,gBAAiB,EACvCr1B,EAAMC,EAAOC,SAASk1B,iBAAkB,EACxCp1B,EAAMC,EAAOC,SAASq1B,oBAAqB,EAC3Cv1B,EAAMC,EAAOC,SAASs1B,sBAAuB,EAC7Cx1B,EAAMC,EAAOC,SAASu1B,mCAAoC,EAC1Dz1B,EAAMC,EAAOC,SAASw1B,yBAA0B,GAEpDoB,yBAA0B,CAAC92B,EAAOC,KAC9BD,EAAMC,EAAOC,SAASq1B,oBAAqB,EAC3Cv1B,EAAMC,EAAOC,SAASo1B,sBAAuB,EAC7Ct1B,EAAMC,EAAOC,SAASi1B,oBAAqB,EAC3Cn1B,EAAMC,EAAOC,SAASm1B,gBAAiB,EACvCr1B,EAAMC,EAAOC,SAASk1B,iBAAkB,EACxCp1B,EAAMC,EAAOC,SAASs1B,sBAAuB,EAC7Cx1B,EAAMC,EAAOC,SAASu1B,mCAAoC,EAC1Dz1B,EAAMC,EAAOC,SAASw1B,yBAA0B,GAEpDqB,2BAA4B,CAAC/2B,EAAOC,KAChCD,EAAMC,EAAOC,SAASs1B,sBAAuB,EAC7Cx1B,EAAMC,EAAOC,SAASq1B,oBAAqB,EAC3Cv1B,EAAMC,EAAOC,SAASo1B,sBAAuB,EAC7Ct1B,EAAMC,EAAOC,SAASi1B,oBAAqB,EAC3Cn1B,EAAMC,EAAOC,SAASm1B,gBAAiB,EACvCr1B,EAAMC,EAAOC,SAASk1B,iBAAkB,EACxCp1B,EAAMC,EAAOC,SAASu1B,mCAAoC,EAC1Dz1B,EAAMC,EAAOC,SAASw1B,yBAA0B,GAEpDsB,mCAAoC,CAACh3B,EAAOC,KACxCD,EAAMC,EAAOC,SAASu1B,mCAAoC,EAC1Dz1B,EAAMC,EAAOC,SAASs1B,sBAAuB,EAC7Cx1B,EAAMC,EAAOC,SAASq1B,oBAAqB,EAC3Cv1B,EAAMC,EAAOC,SAASo1B,sBAAuB,EAC7Ct1B,EAAMC,EAAOC,SAASi1B,oBAAqB,EAC3Cn1B,EAAMC,EAAOC,SAASm1B,gBAAiB,EACvCr1B,EAAMC,EAAOC,SAASk1B,iBAAkB,EACxCp1B,EAAMC,EAAOC,SAASw1B,yBAA0B,GAEpDuB,yBAA0B,CAACj3B,EAAOC,KAC9BD,EAAMC,EAAOC,QAAQ1I,MAAMk+B,yBAA0B,EACrD11B,EAAMC,EAAOC,QAAQ1I,MAAM/B,UAAYwK,EAAOC,QAAQzK,UACtDuK,EAAMC,EAAOC,QAAQ1I,MAAMs9B,qBAAuB,MAE9C70B,EAAOC,QAAQzK,UAAUod,OAAS,KAClC7S,EAAMC,EAAOC,QAAQ1I,MAAMs9B,qBAAuB,OAGtD90B,EAAMC,EAAOC,QAAQ1I,MAAMi+B,mCAAoC,EAC/Dz1B,EAAMC,EAAOC,QAAQ1I,MAAMg+B,sBAAuB,EAClDx1B,EAAMC,EAAOC,QAAQ1I,MAAM+9B,oBAAqB,EAChDv1B,EAAMC,EAAOC,QAAQ1I,MAAM89B,sBAAuB,EAClDt1B,EAAMC,EAAOC,QAAQ1I,MAAM29B,oBAAqB,EAChDn1B,EAAMC,EAAOC,QAAQ1I,MAAM69B,gBAAiB,EAC5Cr1B,EAAMC,EAAOC,QAAQ1I,MAAM49B,iBAAkB,GAEjD8B,4BAA6B,CAACl3B,EAAOC,KACjCD,EAAMC,EAAOC,SAASm1B,gBAAiB,EACvCr1B,EAAMC,EAAOC,SAASw1B,yBAA0B,EAChD11B,EAAMC,EAAOC,SAASu1B,mCAAoC,EAC1Dz1B,EAAMC,EAAOC,SAASs1B,sBAAuB,EAC7Cx1B,EAAMC,EAAOC,SAASq1B,oBAAqB,EAC3Cv1B,EAAMC,EAAOC,SAASo1B,sBAAuB,EAC7Ct1B,EAAMC,EAAOC,SAASi1B,oBAAqB,EAC3Cn1B,EAAMC,EAAOC,SAASk1B,iBAAkB,GAE5C+B,uBAAwB,CAACn3B,EAAOC,KAC5BD,EAAMwyB,QAAQmD,WAAa11B,EAAOC,SAEtCk7B,8BAA+B,CAACp7B,EAAOC,KACnCD,EAAMwyB,QAAQjuB,aAAetE,EAAOC,SAExCm7B,yBAA0B,CAACr7B,EAAOC,KAC9BD,EAAMwyB,QAAQ0I,iBAAmBj7B,EAAOC,UAGhD6c,cAAgBnoB,IACZA,EACKooB,WACGY,IAAkBjpB,UAAU2mC,6BAA6Bne,gBAAgB,CAACnd,EAAOC,KAAY,IAAD,EACxFD,EAAMwyB,QAAQtY,UAAUjlB,WAAagL,EAAOC,QAAQjL,WACpD+K,EAAMwyB,QAAQtY,UAAUhlB,SAAW+K,EAAOC,QAAQhL,SAClD8K,EAAMwyB,QAAQtY,UAAUC,UAAYla,EAAOC,QAAQia,UACnDna,EAAMwyB,QAAQtY,UAAUE,WAAana,EAAOC,QAAQka,WACpDpa,EAAMwyB,QAAQtY,UAAU/kB,WAAa8K,EAAOC,QAAQ/K,WACpD6K,EAAMwyB,QAAQtY,UAAU9kB,eAAiB6K,EAAOC,QAAQ9K,eACxD4K,EAAMwyB,QAAQtY,UAAU7a,MAAxB,UAAgCY,EAAOC,QAAQb,aAA/C,aAAgC,EAAsB0B,KAAI+Z,IAAC,IAAUA,EAAGrD,eAAgB6f,YAAUxc,EAAErD,2BAM3G,wBACTmD,EADS,qBAETsb,EAFS,uBAGTC,EAHS,uBAITC,EAJS,iBAKTM,EALS,sBAMTC,EANS,0BAOTC,EAPS,2BAQTC,EARS,yBASTC,EATS,2BAUTC,EAVS,mCAWTC,EAXS,yBAYTC,EAZS,4BAaTC,EAbS,YAcTzO,EAdS,uBAeT0O,EAfS,8BAgBTiE,EAhBS,yBAiBTC,GACAF,EAAsB95B,QAEX85B,MAAf,S,iCC9TA,8MAKO,MAAM58B,EAAe,CAC1B0c,QAAS,GACTxlB,UAAW,GACX8lC,MAAO,CACLC,eAAe,EACfhW,WAAY,GACZ/L,WAAY,GACZ9B,gBAAgB,EAChBwS,gBAAiB,CACflP,QAAS,GACT5C,gBAAiB,GACjByP,OAAQ,GACRxP,KAAM,GACNC,MAAO,GACPuT,QAAS,IAEXxV,oBAAqB,GACrBkD,SAAU,GACV9B,SAAU+jB,cACV5U,SAAU,CACR9nB,YAAa,GACb9J,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,eACZC,eAAgB,OAChBiK,MAAO,KAGXq8B,UAAW,CACTr8B,MAAO,GACPpK,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,eACZC,eAAgB,OAElBoyB,OAAQ,CACNG,YAAa,GACbD,YAAa,GACbD,aAAc,KAIZkU,EAA+Bt9B,YAAY,CAC/CC,KAAM,4BACNC,eACAuB,SAAU,CACR87B,aAAc,CAAC57B,EAAOC,KACpBD,EAAMvK,UAAYwK,EAAOC,SAE3B27B,WAAY,CAAC77B,EAAOC,KAClBD,EAAMib,QAAUhb,EAAOC,SAEzBmqB,mBAAoB,CAACrqB,EAAOC,KAC1B,MAAM,IAAEjB,EAAF,MAAOC,GAAUgB,EAAOC,QAC9BF,EAAMu7B,MAAMpR,gBAAgBnrB,GAAOC,GAErCupB,2BAA4B,CAACxoB,EAAOC,KAClCD,EAAMu7B,MAAM5jB,eAAiB1X,EAAOC,SAEtC0oB,iBAAkB,CAAC5oB,EAAOC,KACxBD,EAAMu7B,MAAMpR,gBAAkB5rB,EAAag9B,MAAMpR,gBAEjDnqB,EAAMu7B,MAAM5jB,gBAAiB,EAE7B3X,EAAM6mB,SAAWtoB,EAAag9B,MAAM1U,WAGxC9J,cAAgBnoB,IACdA,EAAQooB,WACN8e,IAAiBnnC,UAAUonC,kBAAkB5e,gBAAgB,CAACnd,EAAOC,KAEnED,EAAMu7B,MAAM/V,WAAavlB,EAAOC,QAAQa,KAAI+mB,IAAM,CAChDhyB,GAAIgyB,EAAO9oB,IACX8D,MAAOglB,EAAOhlB,MACd7D,MAAO6oB,EAAO7oB,MACdurB,gBAAiB1C,EAAOmC,2BAI3BjN,WACC8e,IAAiBnnC,UAAUqnC,wBAAwBvY,cAAc,CAACzjB,EAAOC,KACvED,EAAMu7B,MAAMC,eAAgB,KAG/Bxe,WACC8e,IAAiBnnC,UAAUqnC,wBAAwBtY,eAAe,CAAC1jB,EAAOC,KACxED,EAAMu7B,MAAMC,eAAgB,KAG/Bxe,WACC8e,IAAiBnnC,UAAUqnC,wBAAwB7e,gBAAgB,CAACnd,EAAOC,KACzED,EAAMu7B,MAAMC,eAAgB,EAC5Bx7B,EAAMu7B,MAAM1U,SAAW5mB,EAAOC,WAGjC8c,WACCU,IAAW/oB,UAAUsnC,iBAAiB9e,gBAAgB,CAACnd,EAAOC,KAC5DD,EAAMu7B,MAAMjlB,oBAAsBrW,EAAOC,QAAQoW,oBAAoBvV,KAAIsX,IAAe,CACtFviB,GAAIuiB,EAAgBviB,GACpBmJ,MAAOoZ,EAAgB6C,KACvBpY,MAAOuV,EAAgB8L,mBAI5BnH,WACC8e,IAAiBnnC,UAAUunC,gBAAgB/e,gBAAgB,CAACnd,EAAOC,KACjED,EAAMu7B,MAAM9hB,WAAaxZ,EAAOC,QAAQa,KAAItD,IAAI,CAC9C3H,GAAI2H,EAAK3H,GACTmJ,MAAOxB,EAAKge,WACZ3Y,MAAOrF,EAAKge,kBAIjBuB,WACCU,IAAW/oB,UAAUmpB,8BAA8BX,gBAAgB,CAACnd,EAAOC,KACzED,EAAMu7B,MAAM/hB,SAAWvZ,EAAOC,QAAQa,KAAIuX,IAAI,CAC5CxiB,GAAIwiB,EAAKxiB,GACTmJ,MAAOqZ,EAAKha,KACZwE,MAAOwV,EAAKha,KACZksB,gBAAiBlS,EAAK2R,2BAI3BjN,WACC8e,IAAiBnnC,UAAUwnC,4BAA4Bhf,gBAAgB,CAACnd,EAAOC,KAC7ED,EAAM07B,UAAYz7B,EAAOC,WAG5B8c,WACC8e,IAAiBnnC,UAAUynC,2BAA2Bjf,gBAAgB,CAACnd,EAAOC,KAC5ED,EAAMwnB,OAAOC,aAAexnB,EAAOC,WAGtC8c,WACC8e,IAAiBnnC,UAAU0nC,yBAAyBlf,gBAAgB,CAACnd,EAAOC,KAC1ED,EAAMwnB,OAAOE,YAAcznB,EAAOC,WAGrC8c,WACC8e,IAAiBnnC,UAAU2nC,yBAAyBnf,gBAAgB,CAACnd,EAAOC,KAC1ED,EAAMwnB,OAAOG,YAAc1nB,EAAOC,eAM/B,mBACXmqB,EADW,2BAEX7B,EAFW,iBAGXI,EAHW,WAIXiT,EAJW,aAKXD,GACED,EAA6Bt6B,QAElBs6B,MAAf,S,iCCnKA,2bAKO,MAAMp9B,EAAe,CACxBg+B,SAAU,CAAC,QAAS,OAAQ,UAAW,aAAc,SAAU,OAAQ,QAAS,aAAc,MAC9F7b,oBAAqB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,IACrCF,qBAAsB,GACtBzhB,YAAa,GACbyvB,gBAAiB,CACb14B,GAAI,KACJolB,KAAM,KACNiJ,YAAa,KACb7N,oBAAqB,IAEzBoY,wBAAyB,CACrB54B,GAAI,KACJolB,KAAM,KACNiJ,YAAa,MAEjByK,UAAW,CACP3vB,MAAO,GACPgE,MAAO,IAEX4rB,SAAU,CACN5vB,MAAO,GACPgE,MAAO,IAEXiiB,YAAa,CACTjmB,MAAO,GACPgE,MAAO,IAGX2d,SAAU,CACN3hB,MAAO,GACPgE,MAAO,IAEX+rB,MAAO,CACH/vB,MAAO,GACPgE,MAAO,IAEXsd,qBAAsB,CAClBthB,MAAO,GACPgE,MAAO,IAEXu5B,SAAU,CACNv9B,MAAO,GACPgE,MAAO,IAEXgsB,YAAa,CACThwB,MAAO,GACPgE,MAAO,IAEXisB,YAAa,CACTjwB,MAAO,GACPgE,MAAO,IAEXksB,aAAc,CACVlwB,MAAO,GACPgE,MAAO,IAEXqV,KAAM,CACFrZ,MAAO,GACPgE,MAAO,IAEXoV,gBAAiB,CACbpZ,MAAO,GACPgE,MAAO,IAEXmsB,WAAY,CACRnwB,MAAO,GACPgE,MAAO,IAEXgY,QAAS,CACLhc,MAAO,GACPgE,MAAO,IAEX6uB,gBAAiB,CACb7yB,MAAO,GACPgE,MAAO,IAEXw5B,YAAa,CACTx9B,MAAO,GACPgE,MAAO,IAEXy5B,SAAS,CACLz9B,MAAO,GACPgE,MAAO,IAEX05B,aAAa,EACbC,oBAAqB,KACrB3c,0BAA2B,KAC3B4c,gBAAgB,EAChBzO,kBAAkB,GAGhB0O,EAAqBz+B,YAAY,CACnCC,KAAM,iBACNC,eACAuB,SAAU,CACN+hB,aAAc,CAAC7hB,EAAOC,KAClBD,EAAMC,EAAOC,QAAQ4b,OAAO7Y,MAAQ,GACpCjD,EAAMC,EAAOC,QAAQ4b,OAAO7c,MAAQgB,EAAOC,QAAQjB,OAEvDod,kBAAmB,CAACrc,EAAOC,KACvBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAM8b,GAAO7Y,MAAQsZ,EAAO,OAGpCwgB,6BAA8B,CAAC/8B,EAAOC,KAClCD,EAAMugB,qBAAqBthB,MAAQgB,EAAOC,QAC1CF,EAAMugB,qBAAqBtd,MAAQ,GACnCjD,EAAM8xB,gBAAgB7yB,MAAQe,EAAMwgB,qBAAqB3F,MAAK5b,GAAUA,EAAMshB,uBAAyBtgB,EAAOC,UAAU88B,YACxHh9B,EAAM8xB,gBAAgB7uB,MAAQ,IAElC8X,oBAAqB,CAAC/a,EAAOC,KACzBD,EAAMwuB,gBAAkBxuB,EAAMjB,YAAY8b,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,UAC7EF,EAAMib,QAAQhc,MAAQe,EAAMjB,YAAY8b,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,UAASikB,YACpFnkB,EAAMib,QAAQhY,MAAQ,GACtBjD,EAAM0uB,wBAA0BnwB,EAAamwB,wBAC7C1uB,EAAMqY,gBAAkB9Z,EAAa8Z,iBAEzCiD,4BAA6B,CAACtb,EAAOC,KAAY,IAAD,GAC5C,UAAIA,EAAOC,eAAX,aAAI,EAAgBjB,SAChBe,EAAM0uB,wBAA0B1uB,EAAMwuB,gBAAgBlY,oBAAoBuE,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,QAAQjB,OAAS,KAC9He,EAAMqY,gBAAgBpZ,MAAQe,EAAMwuB,gBAAgBlY,oBAAoBuE,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,QAAQjB,OAAS,KAAIklB,cAGxI8Y,0BAA2B,CAACj9B,EAAOC,KAE/B,MAAMuuB,EAAkBxuB,EAAMjB,YAAY8b,MAAKC,GAAKA,EAAEqJ,cAAgBnkB,EAAMib,QAAQhc,QAEpF,GAAIuvB,EAAiB,CACjBxuB,EAAMwuB,gBAAkBA,EACxB,MAAME,EAA0BF,EAAgBlY,oBAAoBuE,MAAKC,GAAKA,EAAEqJ,cAAgBnkB,EAAMqY,gBAAgBpZ,QAClHyvB,IACA1uB,EAAM0uB,wBAA0BA,KAI5CwO,2BAA4B,CAACl9B,EAAOC,KAChCD,EAAM68B,eAAiB58B,EAAOC,SAGlCi9B,6BAA6B,CAACn9B,EAAOC,KACjCD,EAAMo9B,iBAAmBn9B,EAAOC,SAGpCgwB,uBAAwB,CAAClwB,EAAOC,KAC5BD,EAAMouB,kBAAmB,GAE7B+B,wBAAyB,CAACnwB,EAAOC,KAC7BD,EAAMouB,kBAAmB,GAE7BmC,YAAa,CAACvwB,EAAOC,KACjBqQ,OAAOkgB,KAAKjyB,GAAcyc,SAAQc,IAAU,IAAD,OACX7iB,KAAxB,UAAA+G,EAAM8b,UAAN,eAAc7Y,SACdjD,EAAM8b,GAAO7Y,MAAQ,QAIjCo6B,UAAW,CAACr9B,EAAOC,KACfD,EAAM4uB,UAAU3vB,MAAQ,GACxBe,EAAM4uB,UAAU3rB,MAAQ,GAExBjD,EAAM6uB,SAAS5vB,MAAQ,GACvBe,EAAM6uB,SAAS5rB,MAAQ,GAEvBjD,EAAMklB,YAAYjmB,MAAQ,GAC1Be,EAAMklB,YAAYjiB,MAAQ,GAE1BjD,EAAM4gB,SAAS3hB,MAAQ,GACvBe,EAAM4gB,SAAS3d,MAAQ,GAEvBjD,EAAMgvB,MAAM/vB,MAAQ,GACpBe,EAAMgvB,MAAM/rB,MAAQ,GAEpBjD,EAAMugB,qBAAqBthB,MAAQ,GACnCe,EAAMugB,qBAAqBtd,MAAQ,GAEnCjD,EAAMw8B,SAASv9B,MAAQ,GACvBe,EAAMw8B,SAASv5B,MAAQ,GAEvBjD,EAAMivB,YAAYhwB,MAAQ,GAC1Be,EAAMivB,YAAYhsB,MAAQ,GAE1BjD,EAAMy8B,YAAYx9B,MAAQ,GAC1Be,EAAMy8B,YAAYx5B,MAAQ,GAE1BjD,EAAMkvB,YAAYjwB,MAAQ,GAC1Be,EAAMkvB,YAAYjsB,MAAQ,GAE1BjD,EAAMmvB,aAAalwB,MAAQ,GAC3Be,EAAMmvB,aAAalsB,MAAQ,GAE3BjD,EAAMsY,KAAKrZ,MAAQ,GACnBe,EAAMsY,KAAKrV,MAAQ,GAEnBjD,EAAMqY,gBAAgBpZ,MAAQ,GAC9Be,EAAMqY,gBAAgBpV,MAAQ,GAE9BjD,EAAMovB,WAAWnwB,MAAQ,GACzBe,EAAMovB,WAAWnsB,MAAQ,GAEzBjD,EAAMib,QAAQhc,MAAQ,GACtBe,EAAMib,QAAQhY,MAAQ,GAEtBjD,EAAM0uB,wBAA0BnwB,EAAamwB,wBAC7C1uB,EAAMigB,0BAA4B,KAClCjgB,EAAM48B,oBAAsB,KAC5B58B,EAAM68B,gBAAiB,EACvB78B,EAAMouB,kBAAmB,EAEzBpuB,EAAM08B,SAASz9B,MAAQ,GACvBe,EAAM08B,SAASz5B,MAAQ,GAEvBjD,EAAMo9B,kBAAmB,IAGjCrgB,cAAgBnoB,IACZA,EAAQooB,WACJ6T,IAAoBl8B,UAAU2oC,SAASngB,gBAAgB,CAACnd,EAAOC,KAC3DD,EAAMwgB,qBAAuBvgB,EAAOC,WAG3C8c,WACGU,IAAW/oB,UAAUgpB,eAAeR,gBAAgB,CAACnd,EAAOC,KACxDD,EAAMjB,YAAckB,EAAOC,WAGlC8c,WACGuG,IAAS5uB,UAAU4oC,4BAA4BpgB,gBAAgB,CAACnd,EAAOC,KAEnED,EAAM28B,aAAc,EAEpB38B,EAAM4uB,UAAU3vB,MAAQgB,EAAOC,QAAQ0uB,WAAa,GACpD5uB,EAAM4uB,UAAU3rB,MAAQ,GAExBjD,EAAM6uB,SAAS5vB,MAAQgB,EAAOC,QAAQ2uB,UAAY,GAClD7uB,EAAM6uB,SAAS5rB,MAAQ,GAEvBjD,EAAMklB,YAAYjmB,MAAQgB,EAAOC,QAAQglB,aAAe,GACxDllB,EAAMklB,YAAYjiB,MAAQ,GAE1BjD,EAAM4gB,SAAS3hB,MAAQgB,EAAOC,QAAQ8uB,OAAS,GAC/ChvB,EAAM4gB,SAAS3d,MAAQ,GAEvBjD,EAAMgvB,MAAM/vB,MAAQgB,EAAOC,QAAQ8uB,OAAS,GAC5ChvB,EAAMgvB,MAAM/rB,MAAQ,GAEpBjD,EAAMugB,qBAAqBthB,MAAQ,GACnCe,EAAMugB,qBAAqBtd,MAAQ,GAEnCjD,EAAMw8B,SAASv9B,MAAQ,GACvBe,EAAMw8B,SAASv5B,MAAQ,GAEvBjD,EAAMivB,YAAYhwB,MAAQgB,EAAOC,QAAQ+uB,aAAe,GACxDjvB,EAAMivB,YAAYhsB,MAAQ,GAE1BjD,EAAMy8B,YAAYx9B,MAAQgB,EAAOC,QAAQu8B,aAAe,GACxDz8B,EAAMy8B,YAAYx5B,MAAQ,GAE1BjD,EAAMkvB,YAAYjwB,MAAQgB,EAAOC,QAAQgvB,aAAe,GACxDlvB,EAAMkvB,YAAYjsB,MAAQ,GAE1BjD,EAAMmvB,aAAalwB,MAAQ,GAC3Be,EAAMmvB,aAAalsB,MAAQ,GAE3BjD,EAAMsY,KAAKrZ,MAAQgB,EAAOC,QAAQoY,MAAQ,GAC1CtY,EAAMsY,KAAKrV,MAAQ,GAEnBjD,EAAMqY,gBAAgBpZ,MAAQgB,EAAOC,QAAQmY,iBAAmB,GAChErY,EAAMqY,gBAAgBpV,MAAQ,GAE9BjD,EAAMovB,WAAWnwB,MAAQgB,EAAOC,QAAQkvB,YAAc,GACtDpvB,EAAMovB,WAAWnsB,MAAQ,GAEzBjD,EAAMib,QAAQhc,MAAQgB,EAAOC,QAAQ+a,SAAW,GAChDjb,EAAMib,QAAQhY,MAAQ,GAEtBjD,EAAM48B,oBAAsB38B,EAAOC,QAAQ08B,oBAC3C58B,EAAMigB,0BAA4BhgB,EAAOC,QAAQ+f,0BAEjDjgB,EAAM08B,SAASz9B,MAAQgB,EAAOC,QAAQw8B,UAAY,GAClD18B,EAAM08B,SAASz5B,MAAQ,GAEvBjD,EAAMo9B,kBAAmB,KAGhCpgB,WACGuG,IAAS5uB,UAAU4oC,4BAA4B9Z,cAAc,CAACzjB,EAAOC,KACjED,EAAM28B,aAAc,KAG3B3f,WACGuG,IAAS5uB,UAAU4oC,4BAA4B7Z,eAAe,CAAC1jB,EAAOC,KAClED,EAAM28B,aAAc,SAMvB,aACT9a,EADS,kBAETxF,EAFS,UAGTghB,EAHS,6BAITN,EAJS,oBAKThiB,EALS,4BAMTO,EANS,0BAOT2hB,EAPS,2BAQTC,EARS,uBASThN,EATS,wBAUTC,EAVS,6BAWTgN,EAXS,YAYT5M,GACAuM,EAAmBz7B,QAERy7B,MAAf,S,iCC9TA,kHAgHeU,IAhGU,IAOlB,IAPmB,MACtBt/B,EADsB,gBAEtBu/B,EAFsB,OAGtBC,EAHsB,gBAItBC,EAJsB,UAKtBC,EAAU,GALY,UAMtBniC,GACE,EAEF,MAAMyH,EAAQuC,cACRo4B,EAAiBC,mBAiBvB,OAfAnsB,qBAAU,KACSksB,EAAeE,QAAQC,iBAAiB,OAChDhjB,SAAQijB,IAEXA,EAAMzpB,MAAMxP,OAAS,iBACrBi5B,EAAMzpB,MAAM7X,aAAe,MAC3BshC,EAAMzpB,MAAMvP,UAAY,yEAExB,MAAMi5B,EAASD,EAAME,cACrBD,EAAO1pB,MAAMzX,QAAU,OACvBmhC,EAAO1pB,MAAMG,eAAiB,SAC9BupB,EAAO1pB,MAAMvX,IAAM,WAExB,IAGC,eAAC,IAAD,CAASR,GAAI,CAAEoB,GAAI,EAAG,uBAAwB,CAAEnB,EAAG,IAAnD,UACI,eAAC,IAAD,CAAKK,QAAQ,OAAOE,IAAK,EAAGD,WAAW,SAASa,GAAI,EAApD,UACK6/B,GACG,cAAC,IAAD,CACIjhC,GAAI,CACA2M,OAAQ,GACR1M,EAAG,QACHI,MAAOoG,EAAMyC,QAAQy4B,QAAQC,KAC7BC,gBAAiBp7B,EAAMyC,QAAQy4B,QAAQG,OAE3Cz7B,MAAM,QAGd,cAAC,IAAD,CAAYnF,QAAQ,UAAUlB,GAAI,CAAEK,MAA8B,UAAvBoG,EAAMyC,QAAQC,KAAmB,UAAY1C,EAAMyC,QAAQ64B,KAAK,MAA3G,SACKb,OAGT,cAAC,IAAD,CAAYhgC,QAAQ,KAAKlB,GAAI,CAAEK,MAA8B,UAAvBoG,EAAMyC,QAAQC,KAAmB44B,IAAK,KAAO,OAAQ3gC,GAAI,GAA/F,SAAqGK,IACrG,cAAC,IAAD,CACI5G,IAAKumC,EACLlgC,QAAQ,QACR8gC,wBAAyB,CAAEC,OAAM,OAAEjB,QAAF,IAAEA,IAAmB,IACtDhhC,GAAI,CACA,OAAQ,CAAEM,QAAS,QACnB,uBAAwB,CAAE4hC,aAAc,cAI9CljC,GAAamiC,EAAU/qB,OAAS,IAC9B,cAAC,IAAD,CAAKpW,GAAI,CACLI,QAAS,WACTH,EAAG,IACHC,aAAc,EACdqI,OAAQ,YACRU,YAAa,WACb9H,GAAI,GANR,SAQKnC,EACK,eAAC,IAAD,CAAO+B,QAAS,EAAhB,UACM,cAAC,IAAD,CAAYG,QAAQ,KAAKb,MAAM,WAA/B,wCAGJ,cAAC,IAAD,CAAgBA,MAAM,eAE3B8gC,EAAU/qB,OAAS,GAClB,eAAC,IAAD,WACI,cAAC,IAAD,CAAYlV,QAAQ,KAAKihC,WAAW,OAAO9hC,MAAM,WAAW+hC,GAAI,EAAhE,gCAGCjB,EAAU78B,KAAI,CAAC+9B,EAAUhsB,IACtB,gCACKA,GAAK8qB,EAAU/qB,OAAS,GAAK,cAAC,IAAD,CAASpW,GAAI,CAAEiJ,YAAa,cAC1D,eAAC,IAAD,CAAOjO,UAAU,MAAMwF,IAAK,EAAG0X,eAAe,gBAAgB3X,WAAW,SAAzE,UACI,cAAC,IAAD,CAAYW,QAAQ,KAAKb,MAAM,WAA/B,SAA2CgiC,EAASxgC,OACpD,cAAC,IAAD,CAAYxB,MAAM,YAAYI,QAAS,IAAM4U,OAAOxV,KAAKwiC,EAAS9pC,KAAlE,SACI,cAAC,IAAD,WALF8pC,EAASxgC,kB,gCC9FnD,8OAEO,MAAMof,EAFb,MAE0BjpB,EAAcC,gBAAgB,CACtDC,UAAYC,IAAD,CACT+oB,eAAgB/oB,EAAQE,MAAM,CAC1BA,MAAQC,IAAD,CACHC,IAAM,8BACNM,OAAQ,UAGhB2mC,iBAAkBrnC,EAAQE,MAAM,CAC5BA,MAAQC,IAAD,CACHC,IAAM,+BAA8BD,EAAMgqC,cAC1CzpC,OAAQ,UAGhBs0B,4BAA6Bh1B,EAAQY,SAAS,CAC1CV,MAAQC,IAAD,CACHC,IAAM,+BAA8BD,EAAMgqC,cAC1CzpC,OAAQ,UAGhB0pC,mBAAoBpqC,EAAQE,MAAM,CAC9BA,MAAQC,IAAD,CACHC,IAAM,2CACNM,OAAQ,UAGhB2pC,kBAAmBrqC,EAAQE,MAAM,CAC7BA,MAAQC,IAAD,CACHC,IAAM,gDACNM,OAAQ,UAGhBwoB,8BAA+BlpB,EAAQY,SAAS,CAC5CV,MAAQC,IAAD,CACHC,IAAM,wCACNM,OAAQ,OACRM,KAAMb,MAGdmqC,qCAAsCtqC,EAAQY,SAAS,CACnDV,MAAQqqC,IAAD,CACHnqC,IAAM,kDACNM,OAAQ,OACRM,KAAM,IAAIupC,SAIpB9oC,kBAAkB,KAGP,uBACT+oC,EADS,yCAETC,EAFS,2BAGTC,EAHS,0BAITC,EAJS,gDAKTC,EALS,yBAMTC,EANS,uCAOTC,GACAhiB,G,iCC5DJ,qDAGO,MAAMnf,EAAe,CACxBg+B,SAAU,CAAC,QAAS,OAAQ,UAAW,aAAc,SAAU,OAAQ,QAAS,aAAc,MAC9Fhc,qBAAsB,CAClBthB,MAAO,GACPgE,MAAO,IAEXo3B,gBAAiB,CACbp7B,MAAO,GACPgE,MAAO,IAEX08B,YAAa,CACT1gC,MAAO,GACPgE,MAAO,IAEX28B,YAAa,CACT3gC,MAAO,GACPgE,MAAO,IAEX48B,aAAc,CACV5gC,MAAO,GACPgE,MAAO,IAEX68B,WAAY,CACR7gC,MAAO,GACPgE,MAAO,IAEX88B,eAAgB,CACZ9gC,MAAO,GACPgE,MAAO,IAEX+8B,WAAY,CACR/gC,MAAO,GACPgE,MAAO,KAITg9B,EAA8B5hC,YAAY,CAC5CC,KAAM,2BACNC,eACAuB,SAAU,CACN+hB,aAAc,CAAC7hB,EAAOC,KAClBD,EAAMC,EAAOC,QAAQ4b,OAAO7Y,MAAQ,GACpCjD,EAAMC,EAAOC,QAAQ4b,OAAO7c,MAAQgB,EAAOC,QAAQjB,OAEvDod,kBAAmB,CAACrc,EAAOC,KACvBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAM8b,GAAO7Y,MAAQsZ,EAAO,OAGpCwgB,6BAA8B,CAAC/8B,EAAOC,KAClCD,EAAMugB,qBAAqBthB,MAAQgB,EAAOC,QAC1CF,EAAMugB,qBAAqBtd,MAAQ,IAGvCi9B,wBAAyB,CAAClgC,EAAOC,KAC7BD,EAAM2/B,YAAc1/B,EAAOC,SAE/BqwB,YAAa,CAACvwB,EAAOC,KACjBqQ,OAAOkgB,KAAKjyB,GAAcyc,SAAQc,IAAU,IAAD,OACX7iB,KAAxB,UAAA+G,EAAM8b,UAAN,eAAc7Y,SACdjD,EAAM8b,GAAO7Y,MAAQ,QAIjCo6B,UAAW,CAACr9B,EAAOC,KACfD,EAAMugB,qBAAqBthB,MAAQ,GACnCe,EAAMugB,qBAAqBtd,MAAQ,GAEnCjD,EAAMq6B,gBAAgBp7B,MAAQ,GAC9Be,EAAMq6B,gBAAgBp3B,MAAQ,GAE9BjD,EAAM2/B,YAAY1gC,MAAQ,GAC1Be,EAAM2/B,YAAY18B,MAAQ,GAE1BjD,EAAM4/B,YAAY3gC,MAAQ,GAC1Be,EAAM4/B,YAAY38B,MAAQ,GAE1BjD,EAAM6/B,aAAa5gC,MAAQ,GAC3Be,EAAM6/B,aAAa58B,MAAQ,GAE3BjD,EAAM8/B,WAAW7gC,MAAQ,GACzBe,EAAM8/B,WAAW78B,MAAQ,GAEzBjD,EAAM+/B,eAAe9gC,MAAQ,GAC7Be,EAAM+/B,eAAe98B,MAAQ,GAE7BjD,EAAMggC,WAAW/gC,MAAQ,GACzBe,EAAMggC,WAAW/8B,MAAQ,KAGjC8Z,cAAgBnoB,IACZA,EAAQooB,WACJ6T,IAAoBl8B,UAAU2oC,SAASngB,gBAAgB,CAACnd,EAAOC,KAC3DD,EAAMwgB,qBAAuBvgB,EAAOC,eAMvC,aACT2hB,EADS,kBAETxF,EAFS,UAGTghB,EAHS,YAIT9M,EAJS,wBAKT2P,GACAD,EAA4B5+B,QAEjB4+B,MAAf,S,iCC9GA,uOAIO,MAAM1hC,EAAe,CACxBg+B,SAAU,CAAC,QAAS,OAAQ,UAAW,aAAc,SAAU,OAAQ,QAAS,aAAc,MAC9F/b,qBAAsB,GACtBzhB,YAAa,GACbyvB,gBAAiB,CACb14B,GAAI,KACJolB,KAAM,KACNiJ,YAAa,KACb7N,oBAAqB,IAEzBoY,wBAAyB,CACrB54B,GAAI,KACJolB,KAAM,KACNiJ,YAAa,MAEjByK,UAAW,CACP3vB,MAAO,GACPgE,MAAO,IAEX4rB,SAAU,CACN5vB,MAAO,GACPgE,MAAO,IAEXiiB,YAAa,CACTjmB,MAAO,GACPgE,MAAO,IAEX2d,SAAU,CACN3hB,MAAO,GACPgE,MAAO,IAEX+rB,MAAO,CACH/vB,MAAO,GACPgE,MAAO,IAEXo3B,gBAAiB,CACbp7B,MAAO,GACPgE,MAAO,IAEXif,eAAgB,CACZjjB,MAAO,GACPgE,MAAO,IAEX+5B,YAAa,CACT/9B,MAAO,GACPgE,MAAO,IAEX88B,eAAgB,CACZ9gC,MAAO,GACPgE,MAAO,IAEXu5B,SAAU,CACNv9B,MAAO,GACPgE,MAAO,IAEXgsB,YAAa,CACThwB,MAAO,GACPgE,MAAO,IAEXw5B,YAAa,CACTx9B,MAAO,GACPgE,MAAO,IAEXisB,YAAa,CACTjwB,MAAO,GACPgE,MAAO,IAEXksB,aAAc,CACVlwB,MAAO,GACPgE,MAAO,IAEXqV,KAAM,CACFrZ,MAAO,GACPgE,MAAO,IAEXoV,gBAAiB,CACbpZ,MAAO,GACPgE,MAAO,IAEXmsB,WAAY,CACRnwB,MAAO,GACPgE,MAAO,IAEXgY,QAAS,CACLhc,MAAO,GACPgE,MAAO,IAEXk9B,gBAAiB,CACblhC,OAAO,EACPgE,MAAO,IAEXy5B,SAAS,CACLz9B,MAAO,GACPgE,MAAO,IAEXm6B,iBAAiB,CACbn+B,MAAO,GACPgE,MAAO,IAEXm9B,eAAe,CACXnhC,MAAO,GACPgE,MAAO,KAITo9B,EAAqBhiC,YAAY,CACnCC,KAAM,iBACNC,eACAuB,SAAU,CACN+hB,aAAc,CAAC7hB,EAAOC,KAClBD,EAAMC,EAAOC,QAAQ4b,OAAO7Y,MAAQ,GACpCjD,EAAMC,EAAOC,QAAQ4b,OAAO7c,MAAQgB,EAAOC,QAAQjB,OAEvDod,kBAAmB,CAACrc,EAAOC,KACvBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAM8b,GAAO7Y,MAAQsZ,EAAO,OAGpC0gB,0BAA2B,CAACj9B,EAAOC,KAE/B,MAAMuuB,EAAkBxuB,EAAMjB,YAAY8b,MAAKC,GAAKA,EAAEqJ,cAAgBnkB,EAAMib,QAAQhc,QAEpF,GAAIuvB,EAAiB,CACjBxuB,EAAMwuB,gBAAkBA,EACxB,MAAME,EAA0BF,EAAgBlY,oBAAoBuE,MAAKC,GAAKA,EAAEqJ,cAAgBnkB,EAAMqY,gBAAgBpZ,QAClHyvB,IACA1uB,EAAM0uB,wBAA0BA,KAI5C3T,oBAAqB,CAAC/a,EAAOC,KACzBD,EAAMwuB,gBAAkBxuB,EAAMjB,YAAY8b,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,UAC7EF,EAAMib,QAAQhc,MAAQe,EAAMjB,YAAY8b,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,UAASikB,YACpFnkB,EAAM0uB,wBAA0BnwB,EAAamwB,wBAC7C1uB,EAAMqY,gBAAkB9Z,EAAa8Z,iBAEzCiD,4BAA6B,CAACtb,EAAOC,KAAY,IAAD,GAC5C,UAAIA,EAAOC,eAAX,aAAI,EAAgBjB,SAChBe,EAAM0uB,wBAA0B1uB,EAAMwuB,gBAAgBlY,oBAAoBuE,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,QAAQjB,OAAS,KAC9He,EAAMqY,gBAAgBpZ,MAAQe,EAAMwuB,gBAAgBlY,oBAAoBuE,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,QAAQjB,OAAS,KAAIklB,cAGxIgZ,6BAA6B,CAACn9B,EAAOC,KAE7BA,EAAOC,UACPF,EAAM08B,SAASz9B,MAAQ,KACvBe,EAAM08B,SAASz5B,MAAQ,IAE3BjD,EAAMo9B,iBAAiBn+B,MAAQgB,EAAOC,QACtCF,EAAMo9B,iBAAiBn6B,MAAQ,KAIvC8Z,cAAgBnoB,IACZA,EAAQooB,WACJuG,IAAS5uB,UAAU2rC,eAAenjB,gBAAgB,CAACnd,EAAOC,KACtDqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAqB,IAAnBc,EAAO7c,GAAW,EACvD,GAAoB,MAAhBe,EAAM8b,KACN9b,EAAM8b,GAAO7c,MAAb,OAAqBA,QAArB,IAAqBA,IAAS,GAChB,aAAV6c,GAAsB,CACtB,MAAMykB,EAAQthC,EAAMuT,MAAM,KAC1BxS,EAAM8b,GAAO7c,MAAQshC,EAAM,UAM9CvjB,WACGU,IAAW/oB,UAAUgpB,eAAeR,gBAAgB,CAACnd,EAAOC,KACxDD,EAAMjB,YAAckB,EAAOC,eAM9B,aACT2hB,EADS,kBAETxF,EAFS,oBAGTtB,EAHS,4BAITO,EAJS,0BAKT2hB,EALS,6BAMTE,GACAkD,EAAmBh/B,QAERg/B,MAAf,S,iCC5LA,+EAEO,MAmDDG,EAAwBniC,YAAY,CACtCC,KAAM,uBACNC,aArDwB,CACxBkZ,eAAgB,CACZxY,MAAO,GACPgE,MAAO,IAEXw9B,eAAgB,CACZxhC,MAAO,GACPgE,MAAO,IAEXy9B,UAAW,CACPzhC,MAAO,GACPgE,MAAO,IAEXiiB,YAAa,CACTjmB,MAAO,GACPgE,MAAO,IAEX+rB,MAAO,CACH/vB,MAAO,GACPgE,MAAO,IAEX09B,KAAM,CACF1hC,MAAO,GACPgE,MAAO,IAEX29B,QAAS,CACL3hC,MAAO,GACPgE,MAAO,IAEX49B,WAAY,CACR5hC,MAAO,GACPgE,MAAO,IAEXqV,KAAM,CACFrZ,MAAO,GACPgE,MAAO,IAEX69B,SAAU,CACN7hC,MAAO,GACPgE,MAAO,IAEXmsB,WAAY,CACRnwB,MAAO,GACPgE,MAAO,IAEX89B,GAAI,CACA9hC,MAAO,GACPgE,MAAO,KAOXnD,SAAU,CACN+hB,aAAc,CAAC7hB,EAAOC,KAClBD,EAAMC,EAAOC,QAAQ4b,OAAO7Y,MAAQ,GACpCjD,EAAMC,EAAOC,QAAQ4b,OAAO7c,MAAQgB,EAAOC,QAAQjB,OAEvDod,kBAAmB,CAACrc,EAAOC,KACvBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAM8b,GAAO7Y,MAAQsZ,EAAO,WAQ/B,aACTsF,EADS,kBAETxF,GACAmkB,EAAsBn/B,QAEXm/B,MAAf,S,iCC5EA,+EAEO,MAmDDA,EAAwBniC,YAAY,CACtCC,KAAM,uBACNC,aArDwB,CACxBkZ,eAAgB,CACZxY,MAAO,GACPgE,MAAO,IAEXw9B,eAAgB,CACZxhC,MAAO,GACPgE,MAAO,IAEXy9B,UAAW,CACPzhC,MAAO,GACPgE,MAAO,IAEXiiB,YAAa,CACTjmB,MAAO,GACPgE,MAAO,IAEX+rB,MAAO,CACH/vB,MAAO,GACPgE,MAAO,IAEX09B,KAAM,CACF1hC,MAAO,GACPgE,MAAO,IAEX29B,QAAS,CACL3hC,MAAO,GACPgE,MAAO,IAEX49B,WAAY,CACR5hC,MAAO,GACPgE,MAAO,IAEXqV,KAAM,CACFrZ,MAAO,GACPgE,MAAO,IAEXjD,MAAO,CACHf,MAAO,GACPgE,MAAO,IAEX+9B,QAAS,CACL/hC,MAAO,GACPgE,MAAO,IAEXy3B,IAAK,CACDz7B,MAAO,GACPgE,MAAO,KAOXnD,SAAU,CACN+hB,aAAc,CAAC7hB,EAAOC,KAClBD,EAAMC,EAAOC,QAAQ4b,OAAO7Y,MAAQ,GACpCjD,EAAMC,EAAOC,QAAQ4b,OAAO7c,MAAQgB,EAAOC,QAAQjB,OAEvDod,kBAAmB,CAACrc,EAAOC,KACvBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAM8b,GAAO7Y,MAAQsZ,EAAO,WAQ/B,aACTsF,EADS,kBAETxF,GACAmkB,EAAsBn/B,QAEXm/B,MAAf,S,iCC5EA,gfAGO,MAmCDS,EAAc5iC,YAAY,CAC5BC,KAAM,iBACNC,aArCwB,CACxBzI,GAAI,KACJw1B,mBAAoB,GACpB4V,kBAAmB,GACnB/c,YAAa,CACTllB,MAAO,GACPgE,MAAO,IAEXk+B,oBAAqB,CACjBliC,MAAO,GACPgE,MAAO,IAEXm+B,OAAQ,CACJniC,MAAO,GACPgE,MAAO,IAEX8xB,UAAU,EACVsM,kBAAkB,EAClBC,iBAAiB,EACjBC,0BAA0B,EAC1BC,qBAAqB,EACrBC,qBAAqB,EACrBC,gBAAiB,CACbzsC,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,cACZC,eAAgB,OAChBiK,MAAO,IAEXgL,eAAgB,GAChB4qB,iBAAkB,IAMlBn1B,SAAU,CACN6hC,sBAAuB,CAAC3hC,EAAOC,KAC3BD,EAAMsrB,mBAAqBrrB,EAAOC,SAEtC0hC,uBAAwB,CAAC5hC,EAAOC,KAC5BD,EAAMqhC,iBAAmBphC,EAAOC,SAEpCsrB,kBAAmB,CAACxrB,EAAOC,KACvBD,EAAMqhC,kBAAmB,EACzBrhC,EAAMshC,iBAAkB,EACxBthC,EAAMuhC,0BAA2B,EACjCvhC,EAAMwhC,qBAAsB,EAC5BxhC,EAAMyhC,qBAAsB,GAEhC5f,aAAc,CAAC7hB,EAAOC,KAClBD,EAAMC,EAAOC,QAAQ4b,OAAO7Y,MAAQ,GACpCjD,EAAMC,EAAOC,QAAQ4b,OAAO7c,MAAQgB,EAAOC,QAAQjB,OAEvD4iC,gBAAiB,CAAC7hC,EAAOC,KACrBD,EAAMlK,GAAK,KACXkK,EAAMmkB,YAAYllB,MAAQ,GAC1Be,EAAMmkB,YAAYlhB,MAAQ,GAC1BjD,EAAMmhC,oBAAoBliC,MAAQ,GAClCe,EAAMmhC,oBAAoBl+B,MAAQ,GAClCjD,EAAMohC,OAAOniC,MAAQ,GACrBe,EAAMohC,OAAOn+B,MAAQ,GACrBjD,EAAMqhC,kBAAmB,GAE7BhlB,kBAAmB,CAACrc,EAAOC,KACvBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAM8b,GAAO7Y,MAAQsZ,EAAO,OAGpCulB,sBAAuB,CAAC9hC,EAAOC,KAC3BD,EAAMshC,iBAAkB,GAE5BS,+BAAgC,CAAC/hC,EAAOC,KACpCD,EAAMuhC,0BAA2B,GAErCS,0BAA2B,CAAChiC,EAAOC,KAC/BD,EAAMwhC,qBAAsB,GAEhCS,0BAA2B,CAACjiC,EAAOC,KAC/BD,EAAMlK,GAAKmK,EAAOC,QAAQpK,GAC1BkK,EAAMkhC,kBAAoBjhC,EAAOC,QAAQikB,YACzCnkB,EAAMyhC,qBAAsB,GAEhCS,qBAAsB,CAACliC,EAAOC,KAC1BD,EAAMlK,GAAKmK,EAAOC,QAAQpK,GAC1BkK,EAAMmkB,YAAYllB,MAAQgB,EAAOC,QAAQikB,YACzCnkB,EAAMmkB,YAAYlhB,MAAQ,GAC1BjD,EAAMmhC,oBAAoBliC,MAAQgB,EAAOC,QAAQihC,qBAAuB,GACxEnhC,EAAMmhC,oBAAoBl+B,MAAQ,GAClCjD,EAAMohC,OAAOniC,MAAQgB,EAAOC,QAAQkhC,OACpCphC,EAAMohC,OAAOn+B,MAAQ,GACrBjD,EAAMqhC,kBAAmB,GAE7Bc,qBAAuB,CAACniC,EAAOC,KAC3BD,EAAMqK,eAAiB,GACvBrK,EAAMi1B,iBAAmB,GACzBj1B,EAAM+0B,UAAW,GAErBqN,iBAAkB,CAACpiC,EAAOC,KAStB,IAPsD,IAAlDD,EAAMqK,eAAeisB,QAAQr2B,EAAOC,SACpCF,EAAMqK,eAAe8Q,KAAKlb,EAAOC,SAGjCF,EAAMqK,eAAiBrK,EAAMqK,eAAe+Q,QAAO3d,GAAQA,IAASwC,EAAOC,UAG3EF,EAAM+0B,SAAU,CACO/0B,EAAMqK,eAAewI,OAAS,GAAK7S,EAAMqK,eAAewI,OAAS7S,EAAM0hC,gBAAgBtnB,YAG1Gpa,EAAMi1B,iBAAiB9Z,KAAKlb,EAAOC,WAK/CmiC,gBAAiB,CAACriC,EAAOC,KACrB,IAAIqiC,EAAe,IAAItiC,EAAMqK,gBAC7B,MAAMk4B,EAAgB,GAEtBviC,EAAM0hC,gBAAgBriC,MAAM2b,SAAQvd,IAChC,MAAM+kC,EAAcF,EAAahM,QAAQ74B,EAAK3H,KAEzB,IAAjB0sC,EACAF,EAAannB,KAAK1d,EAAK3H,KAGvBwsC,EAAaG,OAAOD,EAAa,GACjCD,EAAcpnB,KAAK1d,EAAK3H,QAI5BwsC,EAAazvB,SAAW7S,EAAM0hC,gBAAgBtnB,aAC9Cpa,EAAM+0B,UAAY/0B,EAAM+0B,UAGL/0B,EAAM+0B,UAAYuN,EAAazvB,OAAS,GAAKyvB,EAAazvB,OAAS7S,EAAM0hC,gBAAgBtnB,YAG5GmoB,EAAcvnB,SAAQvd,IAClBuC,EAAMi1B,iBAAiB9Z,KAAK1d,MAIpCuC,EAAMqK,eAAiBi4B,GAE3BI,2BAA4B,CAAC1iC,EAAOC,KAChC,MAAM0iC,GAAe3iC,EAAM+0B,SAE3B,GAAI4N,EAAa,CACb,MAAMC,EAAW5iC,EAAM0hC,gBAAgBriC,MAAM0B,KAAItD,GAC7CA,EAAK3H,KAGH+c,EAAS+vB,EAAS/vB,OAExB,IAAK,IAAImT,EAAQ,EAAGA,EAAQhmB,EAAM0hC,gBAAgBtnB,WAAavH,EAAQmT,IACnE4c,EAASznB,KAAK,IAGlBnb,EAAMqK,eAAiBu4B,OAGvB5iC,EAAMqK,eAAiB,GAG3BrK,EAAMi1B,iBAAmB,GACzBj1B,EAAM+0B,SAAW4N,GAErBE,6BAA8B,CAAC7iC,EAAOC,KAClC,MAAMqiC,EAAe,IAAItiC,EAAMqK,gBAE/BrK,EAAM0hC,gBAAgBriC,MAAM2b,SAAQvd,IAChC,MAAMqlC,EAAaR,EAAahM,QAAQ,KAEpB,IAAhBwM,IACAR,EAAaQ,GAAcrlC,EAAK3H,OAIxCkK,EAAMqK,eAAiBi4B,IAG/BvlB,cAAgBnoB,IACZA,EAAQooB,WACJnT,IAAiBlV,UAAUmV,sBAAsBqT,gBAAgB,CAACnd,EAAOC,KACrED,EAAM0hC,gBAAgBzsC,WAAagL,EAAOC,QAAQjL,WAClD+K,EAAM0hC,gBAAgBxsC,SAAW+K,EAAOC,QAAQhL,SAChD8K,EAAM0hC,gBAAgBvnB,UAAYla,EAAOC,QAAQia,UACjDna,EAAM0hC,gBAAgBtnB,WAAana,EAAOC,QAAQka,WAClDpa,EAAM0hC,gBAAgBvsC,WAAa8K,EAAOC,QAAQ/K,WAClD6K,EAAM0hC,gBAAgBtsC,eAAiB6K,EAAOC,QAAQ9K,eACtD4K,EAAM0hC,gBAAgBriC,MAAQY,EAAOC,QAAQb,aAOhD,sBACTsiC,EADS,uBAETC,EAFS,kBAGTpW,EAHS,aAIT3J,EAJS,gBAKTggB,EALS,kBAMTxlB,EANS,sBAOT0mB,EAPS,sBAQTjB,EARS,+BASTC,EATS,0BAUTC,EAVS,0BAWTC,EAXS,qBAYTC,EAZS,qBAaTC,EAbS,wBAcTa,EAdS,iBAeTZ,EAfS,gBAgBTC,EAhBS,2BAiBTK,EAjBS,6BAkBTG,GACA5B,EAAY5/B,QAED4/B,MAAf,S,iCCjOA,khBAGO,MAmCDgC,EAAe5kC,YAAY,CAC7BC,KAAM,kBACNC,aArCwB,CACxBzI,GAAI,KACJw1B,mBAAoB,GACpB4V,kBAAmB,GACnB/c,YAAa,CACTllB,MAAO,GACPgE,MAAO,IAEXk+B,oBAAqB,CACjBliC,MAAO,GACPgE,MAAO,IAEXm+B,OAAQ,CACJniC,MAAO,GACPgE,MAAO,IAEX8xB,UAAU,EACVsM,kBAAkB,EAClBC,iBAAiB,EACjBC,0BAA0B,EAC1BC,qBAAqB,EACrBC,qBAAqB,EACrByB,iBAAkB,CACdjuC,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,cACZC,eAAgB,OAChBiK,MAAO,IAEX8jC,gBAAiB,GACjBlO,iBAAkB,IAMlBn1B,SAAU,CACN6hC,sBAAuB,CAAC3hC,EAAOC,KAC3BD,EAAMsrB,mBAAqBrrB,EAAOC,SAEtC0hC,uBAAwB,CAAC5hC,EAAOC,KAC5BD,EAAMqhC,iBAAmBphC,EAAOC,SAEpCsrB,kBAAmB,CAACxrB,EAAOC,KACvBD,EAAMqhC,kBAAmB,EACzBrhC,EAAMshC,iBAAkB,EACxBthC,EAAMuhC,0BAA2B,EACjCvhC,EAAMwhC,qBAAsB,EAC5BxhC,EAAMyhC,qBAAsB,GAEhC5f,aAAc,CAAC7hB,EAAOC,KAClBD,EAAMC,EAAOC,QAAQ4b,OAAO7Y,MAAQ,GACpCjD,EAAMC,EAAOC,QAAQ4b,OAAO7c,MAAQgB,EAAOC,QAAQjB,OAEvD4iC,gBAAiB,CAAC7hC,EAAOC,KACrBD,EAAMlK,GAAK,KACXkK,EAAMmkB,YAAYllB,MAAQ,GAC1Be,EAAMmkB,YAAYlhB,MAAQ,GAC1BjD,EAAMmhC,oBAAoBliC,MAAQ,KAClCe,EAAMmhC,oBAAoBl+B,MAAQ,GAClCjD,EAAMohC,OAAOniC,MAAQ,GACrBe,EAAMohC,OAAOn+B,MAAQ,GACrBjD,EAAMqhC,kBAAmB,GAE7BhlB,kBAAmB,CAACrc,EAAOC,KACvBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAM8b,GAAO7Y,MAAQsZ,EAAO,OAGpCulB,sBAAuB,CAAC9hC,EAAOC,KAC3BD,EAAMshC,iBAAkB,GAE5BS,+BAAgC,CAAC/hC,EAAOC,KACpCD,EAAMuhC,0BAA2B,GAErCS,0BAA2B,CAAChiC,EAAOC,KAC/BD,EAAMwhC,qBAAsB,GAEhCS,0BAA2B,CAACjiC,EAAOC,KAC/BD,EAAMlK,GAAKmK,EAAOC,QAAQpK,GAC1BkK,EAAMkhC,kBAAoBjhC,EAAOC,QAAQikB,YACzCnkB,EAAMyhC,qBAAsB,GAEhCS,qBAAsB,CAACliC,EAAOC,KAC1BD,EAAMlK,GAAKmK,EAAOC,QAAQpK,GAC1BkK,EAAMmkB,YAAYllB,MAAQgB,EAAOC,QAAQikB,YACzCnkB,EAAMmkB,YAAYlhB,MAAQ,GAC1BjD,EAAMmhC,oBAAoBliC,MAAQgB,EAAOC,QAAQihC,qBAAuB,GACxEnhC,EAAMmhC,oBAAoBl+B,MAAQ,GAClCjD,EAAMohC,OAAOniC,MAAQgB,EAAOC,QAAQkhC,OACpCphC,EAAMohC,OAAOn+B,MAAQ,GACrBjD,EAAMqhC,kBAAmB,GAE7Bc,qBAAsB,CAACniC,EAAOC,KAC1BD,EAAMmjC,gBAAkB,GACxBnjC,EAAMi1B,iBAAmB,GACzBj1B,EAAM+0B,UAAW,GAErBqO,qBAAsB,CAACpjC,EAAOC,KAAY,IAAD,EACrCD,EAAMmhC,oBAAoBl+B,MAAQ,GAClCjD,EAAMmhC,oBAAoBliC,OAAQ,UAAAgB,EAAOC,eAAP,eAAgBjB,QAAS,MAE/DmjC,iBAAkB,CAACpiC,EAAOC,KAStB,IAPuD,IAAnDD,EAAMmjC,gBAAgB7M,QAAQr2B,EAAOC,SACrCF,EAAMmjC,gBAAgBhoB,KAAKlb,EAAOC,SAGlCF,EAAMmjC,gBAAkBnjC,EAAMmjC,gBAAgB/nB,QAAO3d,GAAQA,IAASwC,EAAOC,UAG7EF,EAAM+0B,SAAU,CACO/0B,EAAMmjC,gBAAgBtwB,OAAS,GAAK7S,EAAMmjC,gBAAgBtwB,OAAS7S,EAAMkjC,iBAAiB9oB,YAG7Gpa,EAAMi1B,iBAAiB9Z,KAAKlb,EAAOC,WAK/CmiC,gBAAiB,CAACriC,EAAOC,KACrB,IAAIqiC,EAAe,IAAItiC,EAAMmjC,iBAC7B,MAAMZ,EAAgB,GAEtBviC,EAAMkjC,iBAAiB7jC,MAAM2b,SAAQvd,IACjC,MAAM+kC,EAAcF,EAAahM,QAAQ74B,EAAK3H,KAEzB,IAAjB0sC,EACAF,EAAannB,KAAK1d,EAAK3H,KAGvBwsC,EAAaG,OAAOD,EAAa,GACjCD,EAAcpnB,KAAK1d,EAAK3H,QAI5BwsC,EAAazvB,SAAW7S,EAAMkjC,iBAAiB9oB,aAC/Cpa,EAAM+0B,UAAY/0B,EAAM+0B,UAGL/0B,EAAM+0B,UAAYuN,EAAazvB,OAAS,GAAKyvB,EAAazvB,OAAS7S,EAAMkjC,iBAAiB9oB,YAG7GmoB,EAAcvnB,SAAQvd,IAClBuC,EAAMi1B,iBAAiB9Z,KAAK1d,MAIpCuC,EAAMmjC,gBAAkBb,GAE5BI,2BAA4B,CAAC1iC,EAAOC,KAChC,MAAM0iC,GAAe3iC,EAAM+0B,SAE3B,GAAI4N,EAAa,CACb,MAAMC,EAAW5iC,EAAMkjC,iBAAiB7jC,MAAM0B,KAAItD,GAC9CA,EAAK3H,KAGH+c,EAAS+vB,EAAS/vB,OAExB,IAAK,IAAImT,EAAQ,EAAGA,EAAQhmB,EAAMkjC,iBAAiB9oB,WAAavH,EAAQmT,IACpE4c,EAASznB,KAAK,IAGlBnb,EAAMmjC,gBAAkBP,OAGxB5iC,EAAMmjC,gBAAkB,GAG5BnjC,EAAMi1B,iBAAmB,GACzBj1B,EAAM+0B,SAAW4N,GAErBE,6BAA8B,CAAC7iC,EAAOC,KAClC,MAAMqiC,EAAe,IAAItiC,EAAMmjC,iBAE/BnjC,EAAMkjC,iBAAiB7jC,MAAM2b,SAAQvd,IACjC,MAAMqlC,EAAaR,EAAahM,QAAQ,KAEpB,IAAhBwM,IACAR,EAAaQ,GAAcrlC,EAAK3H,OAIxCkK,EAAMmjC,gBAAkBb,IAGhCvlB,cAAgBnoB,IACZA,EAAQooB,WACJnT,IAAiBlV,UAAUqV,uBAAuBmT,gBAAgB,CAACnd,EAAOC,KACtED,EAAMkjC,iBAAiBjuC,WAAagL,EAAOC,QAAQjL,WACnD+K,EAAMkjC,iBAAiBhuC,SAAW+K,EAAOC,QAAQhL,SACjD8K,EAAMkjC,iBAAiB/oB,UAAYla,EAAOC,QAAQia,UAClDna,EAAMkjC,iBAAiB9oB,WAAana,EAAOC,QAAQka,WACnDpa,EAAMkjC,iBAAiB/tC,WAAa8K,EAAOC,QAAQ/K,WACnD6K,EAAMkjC,iBAAiB9tC,eAAiB6K,EAAOC,QAAQ9K,eACvD4K,EAAMkjC,iBAAiB7jC,MAAQY,EAAOC,QAAQb,aAOjD,sBACTsiC,EADS,uBAETC,EAFS,kBAGTpW,EAHS,aAIT3J,EAJS,gBAKTggB,EALS,kBAMTxlB,EANS,sBAOT0mB,EAPS,sBAQTjB,EARS,+BASTC,EATS,0BAUTC,EAVS,0BAWTC,EAXS,qBAYTC,EAZS,qBAaTC,EAbS,qBAcTiB,EAdS,wBAeTJ,EAfS,iBAgBTZ,EAhBS,gBAiBTC,EAjBS,2BAkBTK,EAlBS,6BAmBTG,GACAI,EAAa5hC,QAEF4hC,MAAf,S,iCCtOA,gOAGO,MAsBDI,EAAehlC,YAAY,CAC7BC,KAAM,6BACNC,aAxBwB,CACxBzI,GAAI,KACJohB,YAAa,CACTphB,GAAI,GACJmJ,MAAO,GACP6D,MAAO,IAEXwgC,WAAY,EACZC,gBAAiB,CACbC,aAAc,GACdC,qBAAsB,GACtBC,cAAe,GACfC,YAAa,GACbC,aAAc,GACd3d,QAAS,IAEb4d,SAAU,GACVC,eAAe,EACfC,iBAAiB,EACjBC,UAAW,MAMXlkC,SAAU,CACN8a,wBAAyB,CAAC5a,EAAOC,KAC7BD,EAAMkX,YAAcjX,EAAOC,SAE/B+jC,WAAY,CAACjkC,EAAOC,KAChBD,EAAMsjC,WAAarjC,EAAOC,SAE9BgkC,qBAAsB,CAAClkC,EAAOC,KAC+C,IAArEA,EAAOC,QAAQ4+B,SAAS5nC,QAAQ,cAAe,IAAIitC,OAAOtxB,OAC1D7S,EAAMujC,gBAAgBtjC,EAAOC,QAAQkkC,UAAY,KAGjDpkC,EAAMujC,gBAAgBtjC,EAAOC,QAAQkkC,UAAYnkC,EAAOC,QAAQ4+B,UAGxEuF,kBAAmB,CAACrkC,EAAOC,KACvBD,EAAMlK,GAAKmK,EAAOC,QAAQoU,MAE9BgwB,sBAAuB,CAACtkC,EAAOC,KAC3BD,EAAM+jC,gBAAkB9jC,EAAOC,SAEnCuoB,YAAa,CAACzoB,EAAOC,KACjBD,EAAMlK,GAAK,KACXkK,EAAMsjC,WAAa,EACnBtjC,EAAMkX,YAAYphB,GAAK,GACvBkK,EAAMkX,YAAYjY,MAAQ,GAC1Be,EAAMkX,YAAYpU,MAAQ,GAC1B9C,EAAM+jC,iBAAkB,EACxB/jC,EAAMujC,gBAAgBC,aAAe,GACrCxjC,EAAMujC,gBAAgBE,qBAAuB,GAC7CzjC,EAAMujC,gBAAgBG,cAAgB,GACtC1jC,EAAMujC,gBAAgBI,YAAc,GACpC3jC,EAAMujC,gBAAgBK,aAAe,GACrC5jC,EAAMujC,gBAAgBtd,QAAU,KAGxClJ,cAAgBnoB,IACZA,EACCooB,WACG9O,IAAiBvZ,UAAUwZ,YAAYgP,gBAAgB,CAACnd,EAAOC,KAC3DD,EAAM6jC,SAAW5jC,EAAOC,WAG/B8c,WACG9O,IAAiBvZ,UAAU0Z,iBAAiB8O,gBAAgB,CAACnd,EAAOC,KAChED,EAAMlK,GAAKmK,EAAOC,QAAQpK,GAC1BkK,EAAMujC,gBAAgBC,aAAevjC,EAAOC,QAAQsjC,aACpDxjC,EAAMujC,gBAAgBE,qBAAuBxjC,EAAOC,QAAQujC,qBAC5DzjC,EAAMujC,gBAAgBG,cAAgBzjC,EAAOC,QAAQwjC,cACrD1jC,EAAMujC,gBAAgBI,YAAc1jC,EAAOC,QAAQyjC,YACnD3jC,EAAMujC,gBAAgBK,aAAe3jC,EAAOC,QAAQ0jC,aACpD5jC,EAAMujC,gBAAgBtd,QAAUhmB,EAAOC,QAAQ+lB,QAC/CjmB,EAAMujC,gBAAgBgB,cAAgBtkC,EAAOC,QAAQqkC,qBAOxD,wBACT3pB,EADS,WAETqpB,EAFS,qBAGTC,EAHS,kBAITG,EAJS,sBAKTC,EALS,YAMT7b,GACA4a,EAAahiC,QAEFgiC,MAAf,S,iCChGA,gOAGO,MAAM9kC,EAAe,CACxBzI,GAAI,KACJohB,YAAa,CACTphB,GAAI,GACJmJ,MAAO,GACP6D,MAAO,IAEXwgC,WAAY,EACZkB,iBAAkB,CACdC,YAAa,GACbC,iBAAkB,GAClBhB,cAAe,GACfiB,MAAO,GACPC,QAAS,GACTC,WAAY,GACZC,QAAS,GACTtiB,aAAc,GACduiB,iBAAkB,IAEtBlB,SAAU,GACVC,eAAe,EACfC,iBAAiB,GAGfiB,EAAgB3mC,YAAY,CAC9BC,KAAM,8BACNC,eACAuB,SAAU,CACN8a,wBAAyB,CAAC5a,EAAOC,KAC7BD,EAAMkX,YAAcjX,EAAOC,SAE/B+jC,WAAY,CAACjkC,EAAOC,KAChBD,EAAMsjC,WAAarjC,EAAOC,SAE9BgkC,qBAAsB,CAAClkC,EAAOC,KAC+C,IAArEA,EAAOC,QAAQ4+B,SAAS5nC,QAAQ,cAAe,IAAIitC,OAAOtxB,OAC1D7S,EAAMwkC,iBAAiBvkC,EAAOC,QAAQkkC,UAAY,KAGlDpkC,EAAMwkC,iBAAiBvkC,EAAOC,QAAQkkC,UAAYnkC,EAAOC,QAAQ4+B,UAGzEuF,kBAAmB,CAACrkC,EAAOC,KACvBD,EAAMlK,GAAKmK,EAAOC,QAAQoU,MAE9BgwB,sBAAuB,CAACtkC,EAAOC,KAC3BD,EAAM+jC,gBAAkB9jC,EAAOC,SAEnCuoB,YAAa,CAACzoB,EAAOC,KACjBD,EAAMlK,GAAK,KACXkK,EAAMsjC,WAAa,EACnBtjC,EAAMkX,YAAYphB,GAAK,GACvBkK,EAAMkX,YAAYjY,MAAQ,GAC1Be,EAAMkX,YAAYpU,MAAQ,GAC1B9C,EAAM+jC,iBAAkB,EACxB/jC,EAAMwkC,iBAAmBjmC,EAAaimC,mBAG9CznB,cAAgBnoB,IACZA,EACCooB,WACGvO,IAAkB9Z,UAAU+Z,oBAAoByO,gBAAgB,CAACnd,EAAOC,KACpED,EAAM6jC,SAAW5jC,EAAOC,WAG/B8c,WACGvO,IAAkB9Z,UAAUia,kBAAkBuO,gBAAgB,CAACnd,EAAOC,KAClED,EAAMlK,GAAKmK,EAAOC,QAAQpK,GAC1BkK,EAAMwkC,iBAAiBC,YAAcxkC,EAAOC,QAAQukC,YACpDzkC,EAAMwkC,iBAAiBE,iBAAmBzkC,EAAOC,QAAQwkC,iBACzD1kC,EAAMwkC,iBAAiBd,cAAgBzjC,EAAOC,QAAQwjC,cACtD1jC,EAAMwkC,iBAAiBG,MAAQ1kC,EAAOC,QAAQykC,MAC9C3kC,EAAMwkC,iBAAiBI,QAAU3kC,EAAOC,QAAQ0kC,QAChD5kC,EAAMwkC,iBAAiBK,WAAa5kC,EAAOC,QAAQ2kC,WACnD7kC,EAAMwkC,iBAAiBM,QAAU7kC,EAAOC,QAAQ4kC,QAChD9kC,EAAMwkC,iBAAiBhiB,aAAeviB,EAAOC,QAAQsiB,aACrDxiB,EAAMwkC,iBAAiBO,iBAAmB9kC,EAAOC,QAAQ6kC,iBACzD/kC,EAAMwkC,iBAAiBD,cAAgBtkC,EAAOC,QAAQqkC,qBAOzD,wBACT3pB,EADS,WAETqpB,EAFS,qBAGTC,EAHS,kBAITG,EAJS,sBAKTC,EALS,YAMT7b,GACAuc,EAAc3jC,QAEH2jC,MAAf,S,iCChGA,gOAGO,MAuBDC,EAAc5mC,YAAY,CAC5BC,KAAM,4BACNC,aAzBwB,CACxBzI,GAAI,KACJohB,YAAa,CACTphB,GAAI,GACJmJ,MAAO,GACP6D,MAAO,IAEXoiC,oBAAqB,CACjBpvC,GAAI,KACJmJ,MAAO,KACP6D,MAAO,MAEX8xB,eAAgB,GAChB0O,WAAY,EACZ6B,eAAgB,CACZC,SAAU,GACVC,OAAQ,IAEZxB,SAAU,GACVC,eAAe,EACfC,iBAAiB,GAMjBjkC,SAAU,CACN8a,wBAAyB,CAAC5a,EAAOC,KAC7BD,EAAMkX,YAAcjX,EAAOC,SAE/B+jC,WAAY,CAACjkC,EAAOC,KAChBD,EAAMsjC,WAAarjC,EAAOC,SAE9BgkC,qBAAsB,CAAClkC,EAAOC,KAC+C,IAArEA,EAAOC,QAAQ4+B,SAAS5nC,QAAQ,cAAe,IAAIitC,OAAOtxB,OAC1D7S,EAAMmlC,eAAellC,EAAOC,QAAQkkC,UAAY,KAGhDpkC,EAAMmlC,eAAellC,EAAOC,QAAQkkC,UAAYnkC,EAAOC,QAAQ4+B,UAGvEuF,kBAAmB,CAACrkC,EAAOC,KACvBD,EAAMlK,GAAKmK,EAAOC,QAAQoU,MAE9BgwB,sBAAuB,CAACtkC,EAAOC,KAC3BD,EAAM+jC,gBAAkB9jC,EAAOC,SAEnCuoB,YAAa,CAACzoB,EAAOC,KACjBD,EAAMlK,GAAK,KACXkK,EAAMsjC,WAAa,EACnBtjC,EAAMkX,YAAYphB,GAAK,GACvBkK,EAAMkX,YAAYjY,MAAQ,GAC1Be,EAAMkX,YAAYpU,MAAQ,GAC1B9C,EAAM+jC,iBAAkB,EACxB/jC,EAAMmlC,eAAeC,SAAW,GAChCplC,EAAMmlC,eAAeE,OAAS,KAGtCtoB,cAAgBnoB,IACZA,EACCooB,WACGhO,IAAgBra,UAAUsa,kBAAkBkO,gBAAgB,CAACnd,EAAOC,KAChED,EAAM6jC,SAAW5jC,EAAOC,WAG/B8c,WACGhO,IAAgBra,UAAUwa,gBAAgBgO,gBAAgB,CAACnd,EAAOC,KAC9DD,EAAMlK,GAAKmK,EAAOC,QAAQpK,GAC1BkK,EAAMmlC,eAAeC,SAAWnlC,EAAOC,QAAQklC,SAC/CplC,EAAMmlC,eAAeE,OAASplC,EAAOC,QAAQmlC,cAOhD,wBACTzqB,EADS,WAETqpB,EAFS,qBAGTC,EAHS,kBAITG,EAJS,sBAKTC,EALS,YAMT7b,GACAwc,EAAY5jC,QAED4jC,MAAf,S,wGC3DeK,MA1BaC,IAAMluC,YAAW,SAA6BwM,EAAOvM,GAC7E,MAAM,SAAEyL,KAAayiC,GAAU3hC,EAC/B,OACE,cAAC,IAAD,IACM2hC,EACJC,YAAanuC,EACbouC,cAAgBC,IACZ5iC,EAAS,CACL6iC,OAAQ,CACJtnC,KAAMuF,EAAMvF,KACZW,MAAO0mC,EAAO1mC,UAI1B4mC,mBAAiB,EACjBC,OAAUjiC,EAAMiiC,OAChBC,aAAc,EACdC,eAAe,EACfC,iBAAiB,EACjBC,sBAAsB,EACtB1uC,KAAK,W,SCmDE2uC,IA/DY,IAsBpB,IAtBqB,KACxB7nC,EADwB,MAExBW,EAFwB,MAGxB6D,EAHwB,KAIxBtL,EAJwB,UAKxBiU,EALwB,MAMxBxI,EAAQ,GANgB,MAOxBC,EAPwB,SAQxBH,EARwB,SASxBI,EATwB,SAUxByF,EAVwB,UAWxBw9B,EAXwB,KAYxBC,EAAO,EAZiB,GAaxB5pC,EAbwB,QAcxB6pC,EAAQ,GAdgB,WAexBC,EAfwB,UAgBxBC,EAhBwB,YAiBxBC,EAjBwB,aAkBxB56B,EAlBwB,OAmBxBi6B,EAAO,IAnBiB,YAoBxBY,EApBwB,KAqBxB9qC,EAAK,UACH,EAEF,MAAM,EAAEwH,GAAMC,cAEd,OACI,eAACsjC,EAAA,EAAD,CACIpqC,WAAS,EACTE,GAAI,IAAKyG,EAAMc,WAAWC,aAC1BhB,MAAiB,KAAVA,EACPE,SAAUA,EACVyF,SAAUA,EACVhN,KAAMA,EANV,UAQG,cAACgrC,EAAA,EAAD,CAAYC,QAASvoC,EAAM7B,GAAI6pC,EAASQ,OAAQJ,EAAhD,SAA8D5jC,IAC7D,cAACikC,EAAA,EAAD,CACIjxC,GAAIwI,EACJ9G,KAAMA,EACNsL,MAAOA,EACPkkC,WAAY,CACRv7B,aAEJxM,MAAOA,EACP8D,SAAUA,EACVqjC,UAAWA,KACPA,GAAa,CAAEC,WACf5pC,GAAM,CAAEA,SACR8pC,GAAc,CAACU,eAAgB3B,EAAqB0B,WAAY,CAAElB,WACtEU,UAAWA,EACXC,YAAaA,EACb56B,aAAcA,IAGP,KAAV5I,GACG,cAACikC,EAAA,EAAD,CAAgBjkC,OAAK,EAACnN,GAAK,GAAEwI,SAA7B,SACK8E,EAAEH,U,iCCnEvB,mBAGO,MAkBDkkC,EAA8B9oC,YAAY,CAC5CC,KAAM,4BACNC,aApBwB,CACxBqhB,aAAa,EACbC,yBAAyB,EACzB7N,OAAQ,CACJxQ,WAAY,GACZif,OAAQ,IAEZvG,UAAW,CACPjlB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,YACZC,eAAgB,OAChBiK,MAAO,KAOXS,SAAU,CACN+hB,aAAc,CAAC7hB,EAAOC,KAClBD,EAAMgS,OAAO/R,EAAOC,QAAQ4b,OAAS7b,EAAOC,QAAQjB,OAExD6iB,kBAAmB,CAAC9hB,EAAOC,KACvBD,EAAMC,EAAOC,QAAQ4b,OAAO7Y,MAAQ,GACpCjD,EAAMC,EAAOC,QAAQ4b,OAAO7c,MAAQgB,EAAOC,QAAQjB,OAEvDkjB,8BAA+B,CAACniB,EAAOC,KACnCD,EAAM6f,yBAA0B,GAGpCxD,kBAAmB,CAACrc,EAAOC,KACvBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAM8b,GAAO7Y,MAAQsZ,EAAO,QAIxCQ,cAAgBnoB,IACZA,EAAQooB,WACJ6T,IAAoBl8B,UAAU6uB,qBAAqBrG,gBAAgB,CAACnd,EAAOC,KACvED,EAAM4f,aAAc,EACpB5f,EAAMka,UAAUjlB,WAAagL,EAAOC,QAAQjL,WAC5C+K,EAAMka,UAAUhlB,SAAW+K,EAAOC,QAAQhL,SAC1C8K,EAAMka,UAAUC,UAAYla,EAAOC,QAAQia,UAC3Cna,EAAMka,UAAUE,WAAana,EAAOC,QAAQka,WAC5Cpa,EAAMka,UAAU/kB,WAAa8K,EAAOC,QAAQ/K,WAC5C6K,EAAMka,UAAU9kB,eAAiB6K,EAAOC,QAAQ9K,eAChD4K,EAAMka,UAAU7a,MAAQY,EAAOC,QAAQb,SAG9C2d,WACG6T,IAAoBl8B,UAAU2oC,SAAS7Z,cAAc,CAACzjB,EAAOC,KACzDD,EAAM4f,aAAc,KAG3B5C,WACG6T,IAAoBl8B,UAAU2oC,SAAS5Z,eAAe,CAAC1jB,EAAOC,KAC1DD,EAAM4f,aAAc,SAOvB,aACTiC,EADS,kBAETC,EAFS,kBAGTzF,EAHS,8BAIT8F,GACAglB,EAA4B9lC,QAEjB8lC,MAAf,S,iCC5EA,sDAGO,MAiBDC,EAAsB/oC,YAAY,CACpCC,KAAM,kBACNC,aAnBwB,CACxBqhB,aAAa,EACb1F,UAAW,CACPjlB,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,WACZC,eAAgB,MAChBiK,MAAO,IAEX2S,OAAQ,CACJxQ,WAAY,GACZ4C,aAAc,QAOlBtE,SAAU,CACNunC,mBAAoB,CAACrnC,EAAOC,KACxBD,EAAMgS,OAAO/R,EAAOC,QAAQ4b,OAAS7b,EAAOC,QAAQjB,OAExDod,kBAAmB,CAACrc,EAAOC,KACvBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAM24B,aAAa7c,GAAO7Y,MAAQsZ,EAAO,QAIrDQ,cAAgBnoB,IACZA,EAAQooB,WACJ9Y,IAAYvP,UAAUwP,qBAAqBgZ,gBAAgB,CAACnd,EAAOC,KAC/DD,EAAM4f,aAAc,EACpB5f,EAAMka,UAAUjlB,WAAagL,EAAOC,QAAQjL,WAC5C+K,EAAMka,UAAUhlB,SAAW+K,EAAOC,QAAQhL,SAC1C8K,EAAMka,UAAUC,UAAYla,EAAOC,QAAQia,UAC3Cna,EAAMka,UAAUE,WAAana,EAAOC,QAAQka,WAC5Cpa,EAAMka,UAAU/kB,WAAa8K,EAAOC,QAAQ/K,WAC5C6K,EAAMka,UAAU9kB,eAAiB6K,EAAOC,QAAQ9K,eAChD4K,EAAMka,UAAU7a,MAAQY,EAAOC,QAAQb,SAE7C2d,WACE9Y,IAAYvP,UAAUwP,qBAAqBsf,cAAc,CAACzjB,EAAOC,KAC7DD,EAAM4f,aAAc,KAG3B5C,WACG9Y,IAAYvP,UAAUwP,qBAAqBuf,eAAe,CAAC1jB,EAAOC,KAC9DD,EAAM4f,aAAc,SAMvB,kBACTvD,EADS,mBAETgrB,GACAD,EAAoB/lC,QAET+lC,MAAf,S,iCC/DA,gOAGO,MAqBDE,EAAgBjpC,YAAY,CAC9BC,KAAM,+BACNC,aAvBwB,CACxBzI,GAAI,KACJohB,YAAa,CACTphB,GAAI,GACJmJ,MAAO,GACP6D,MAAO,IAEXwgC,WAAY,EACZiE,iBAAkB,CACd/D,aAAc,GACdgE,kBAAmB,GACnBC,gBAAiB,GACjBC,UAAW,GACXC,WAAY,IAEhB9D,SAAU,GACVC,eAAe,EACfC,iBAAiB,EACjBC,UAAW,MAMXlkC,SAAU,CACN8a,wBAAyB,CAAC5a,EAAOC,KAC7BD,EAAMkX,YAAcjX,EAAOC,SAE/B0nC,oBAAqB,CAAC5nC,EAAOC,KACzBD,EAAMkX,YAAclX,EAAMklC,qBAE9BjB,WAAY,CAACjkC,EAAOC,KAChBD,EAAMsjC,WAAarjC,EAAOC,SAE9BgkC,qBAAsB,CAAClkC,EAAOC,KAC+C,IAArEA,EAAOC,QAAQ4+B,SAAS5nC,QAAQ,cAAe,IAAIitC,OAAOtxB,OAC1D7S,EAAMunC,iBAAiBtnC,EAAOC,QAAQkkC,UAAY,KAGlDpkC,EAAMunC,iBAAiBtnC,EAAOC,QAAQkkC,UAAYnkC,EAAOC,QAAQ4+B,UAGzEuF,kBAAmB,CAACrkC,EAAOC,KACvBD,EAAMlK,GAAKmK,EAAOC,QAAQoU,MAE9BgwB,sBAAuB,CAACtkC,EAAOC,KAC3BD,EAAM+jC,gBAAkB9jC,EAAOC,SAEnCuoB,YAAa,CAACzoB,EAAOC,KACjBD,EAAMlK,GAAK,KACXkK,EAAMsjC,WAAa,EACnBtjC,EAAMkX,YAAYphB,GAAK,GACvBkK,EAAMkX,YAAYjY,MAAQ,GAC1Be,EAAMkX,YAAYpU,MAAQ,GAC1B9C,EAAM+jC,iBAAkB,EACxB/jC,EAAMunC,iBAAiB/D,aAAe,GACtCxjC,EAAMunC,iBAAiBC,kBAAoB,GAC3CxnC,EAAMunC,iBAAiBE,gBAAkB,GACzCznC,EAAMunC,iBAAiBG,UAAY,GACnC1nC,EAAMunC,iBAAiBI,WAAa,IAGxCE,sBAAuB,CAAC7nC,EAAOC,KAC3B,MAAM,gBAAE6nC,EAAF,SAAmBC,GAAa9nC,EAAOC,QAC7CF,EAAM8jC,cAA0C,IAA1B7jC,EAAOC,QAAQ2S,OACrC7S,EAAM+jC,iBAAkB,EACxB/jC,EAAM40B,eAAN,OAAuBmT,QAAvB,IAAuBA,IAAY,GACnC/nC,EAAMkX,YAAc4wB,IAG5B/qB,cAAgBnoB,IACZA,EACCooB,WACGzN,IAAkB5a,UAAU6a,oBAAoB2N,gBAAgB,CAACnd,EAAOC,KACpED,EAAM6jC,SAAW5jC,EAAOC,WAG/B8c,WACGzN,IAAkB5a,UAAU+a,kBAAkByN,gBAAgB,CAACnd,EAAOC,KAClED,EAAMlK,GAAKmK,EAAOC,QAAQpK,GAC1BkK,EAAMunC,iBAAiB/D,aAAevjC,EAAOC,QAAQsjC,aACrDxjC,EAAMunC,iBAAiBC,kBAAoBvnC,EAAOC,QAAQsnC,kBAC1DxnC,EAAMunC,iBAAiBE,gBAAkBxnC,EAAOC,QAAQunC,gBACxDznC,EAAMunC,iBAAiBG,UAAYznC,EAAOC,QAAQwnC,UAClD1nC,EAAMunC,iBAAiBI,WAAa1nC,EAAOC,QAAQynC,WACnD3nC,EAAMunC,iBAAiBhD,cAAgBtkC,EAAOC,QAAQqkC,qBAOzD,wBACT3pB,EADS,WAETqpB,EAFS,qBAGTC,EAHS,kBAITG,EAJS,sBAKTC,EALS,YAMT7b,GACA6e,EAAcjmC,QAEHimC,MAAf,S,iCCxGA,gOAGO,MAsBDU,EAAoB3pC,YAAY,CAClCC,KAAM,mCACNC,aAxBwB,CACxBzI,GAAI,KACJohB,YAAa,CACTphB,GAAI,GACJmJ,MAAO,GACP6D,MAAO,IAEXwgC,WAAY,EACZ2E,qBAAsB,CAClBzE,aAAc,GACd0E,kBAAmB,GACnBC,OAAQ,GACRC,gBAAiB,GACjBniB,QAAS,GACToiB,UAAW,IAEfxE,SAAU,GACVC,eAAe,EACfC,iBAAiB,EACjBC,UAAW,MAMXlkC,SAAU,CACN8a,wBAAyB,CAAC5a,EAAOC,KAC7BD,EAAMkX,YAAcjX,EAAOC,SAE/B+jC,WAAY,CAACjkC,EAAOC,KAChBD,EAAMsjC,WAAarjC,EAAOC,SAE9BgkC,qBAAsB,CAAClkC,EAAOC,KAC+C,IAArEA,EAAOC,QAAQ4+B,SAAS5nC,QAAQ,cAAe,IAAIitC,OAAOtxB,OAC1D7S,EAAMioC,qBAAqBhoC,EAAOC,QAAQkkC,UAAY,KAGtDpkC,EAAMioC,qBAAqBhoC,EAAOC,QAAQkkC,UAAYnkC,EAAOC,QAAQ4+B,UAG7EuF,kBAAmB,CAACrkC,EAAOC,KACvBD,EAAMlK,GAAKmK,EAAOC,QAAQoU,MAE9BgwB,sBAAuB,CAACtkC,EAAOC,KAC3BD,EAAM+jC,gBAAkB9jC,EAAOC,SAEnCuoB,YAAa,CAACzoB,EAAOC,KACjBD,EAAMlK,GAAK,KACXkK,EAAMsjC,WAAa,EACnBtjC,EAAMkX,YAAYphB,GAAK,GACvBkK,EAAMkX,YAAYjY,MAAQ,GAC1Be,EAAMkX,YAAYpU,MAAQ,GAC1B9C,EAAM+jC,iBAAkB,EACxB/jC,EAAMioC,qBAAqBzE,aAAe,GAC1CxjC,EAAMioC,qBAAqBC,kBAAoB,GAC/CloC,EAAMioC,qBAAqBE,OAAS,GACpCnoC,EAAMioC,qBAAqBG,gBAAkB,GAC7CpoC,EAAMioC,qBAAqBhiB,QAAU,GACrCjmB,EAAMioC,qBAAqBI,UAAY,IAE3CR,sBAAuB,CAAC7nC,EAAOC,KAC3B,MAAM,gBAAE6nC,EAAF,SAAmBC,GAAa9nC,EAAOC,QAC7CF,EAAM8jC,cAA0C,IAA1B7jC,EAAOC,QAAQ2S,OACrC7S,EAAM+jC,iBAAkB,EACxB/jC,EAAM40B,eAAN,OAAuBmT,QAAvB,IAAuBA,IAAY,GACnC/nC,EAAMkX,YAAc4wB,IAG5B/qB,cAAgBnoB,IACZA,EACCooB,WACGlN,IAAsBnb,UAAUob,wBAAwBoN,gBAAgB,CAACnd,EAAOC,KAC5ED,EAAM6jC,SAAW5jC,EAAOC,WAG/B8c,WACGlN,IAAsBnb,UAAUsb,sBAAsBkN,gBAAgB,CAACnd,EAAOC,KAC1ED,EAAMlK,GAAKmK,EAAOC,QAAQpK,GAC1BkK,EAAMioC,qBAAqBzE,aAAevjC,EAAOC,QAAQsjC,aACzDxjC,EAAMioC,qBAAqBC,kBAAoBjoC,EAAOC,QAAQgoC,kBAC9DloC,EAAMioC,qBAAqBE,OAASloC,EAAOC,QAAQioC,OACnDnoC,EAAMioC,qBAAqBG,gBAAkBnoC,EAAOC,QAAQkoC,gBAC5DpoC,EAAMioC,qBAAqBhiB,QAAUhmB,EAAOC,QAAQ+lB,QACpDjmB,EAAMioC,qBAAqBI,UAAYpoC,EAAOC,QAAQmoC,UACtDroC,EAAMioC,qBAAqB1D,cAAgBtkC,EAAOC,QAAQqkC,qBAO7D,wBACT3pB,EADS,WAETqpB,EAFS,qBAGTC,EAHS,kBAITG,EAJS,sBAKTC,EALS,YAMT7b,GACAuf,EAAkB3mC,QAEP2mC,MAAf,S,iCCvGA,oEAAO,MAAMM,EAAcC,IACzB,IAAKA,EAAM,OAAO,KAClB,MAAMC,EAAI,IAAIztC,KAAKwtC,GACnB,MAAQ,GAAEC,EAAEC,iBAAiBD,EAAEE,WAAa,KAAKF,EAAEG,aAGxClN,EAAc,WAA2D,IAA1DmN,EAAyD,uDAA7C,KAAMC,EAAuC,wDAA7B,IAAI9tC,MAAO0tC,cACjE,MAAO,IACF7uB,MAAMivB,EAAU,EAAID,EAAY,GAChC/uB,OACA9Y,KAAI,CAAC+Y,EAAGC,KAAJ,CACHiM,MAAOjM,EACPjkB,IAAK8yC,EAAY7uB,GAAKC,WACtB/a,OAAQ2pC,EAAY7uB,GAAKC,WACzBlX,OAAQ8lC,EAAY7uB,GAAKC,WACzBvE,SAAS,OAEbqzB,Y,oBChBJC,EAAOC,QAAU,CAAC,MAAQ,OAAO,OAAS,UAAU,aAAe,YAAY,WAAa,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,eAAiB,UAAU,aAAe,UAAU,cAAgB,UAAU,cAAgB,UAAU,aAAe,UAAU,aAAe,UAAU,WAAa,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,UAAY,UAAU,UAAY,UAAU,YAAc,UAAU,WAAa,UAAU,WAAa,UAAU,aAAe,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,OAAS,UAAU,QAAU,UAAU,QAAU,OAAO,QAAU,UAAU,QAAU,UAAU,QAAU,UAAU,QAAU,OAAO,aAAe,UAAU,QAAU,UAAU,QAAU,UAAU,UAAY,UAAU,eAAiB,UAAU,WAAa,UAAU,WAAa,UAAU,cAAgB,UAAU,gBAAkB,UAAU,kBAAoB,UAAU,iBAAmB,UAAU,gBAAkB,UAAU,gBAAkB,UAAU,eAAiB,UAAU,eAAiB,UAAU,mBAAqB,UAAU,kBAAoB,UAAU,kBAAoB,UAAU,iBAAmB,UAAU,iBAAmB,Y,oBCAtwCD,EAAOC,QAAU,CAAC,MAAQ,OAAO,aAAe,YAAY,WAAa,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,eAAiB,UAAU,aAAe,UAAU,cAAgB,UAAU,cAAgB,UAAU,aAAe,UAAU,aAAe,UAAU,WAAa,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,UAAY,UAAU,UAAY,UAAU,YAAc,UAAU,WAAa,UAAU,WAAa,UAAU,aAAe,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,OAAS,UAAU,QAAU,UAAU,QAAU,OAAO,QAAU,UAAU,QAAU,UAAU,QAAU,UAAU,QAAU,UAAU,QAAU,UAAU,UAAY,UAAU,eAAiB,UAAU,WAAa,UAAU,WAAa,UAAU,cAAgB,UAAU,gBAAkB,UAAU,kBAAoB,UAAU,iBAAmB,UAAU,gBAAkB,UAAU,gBAAkB,UAAU,eAAiB,UAAU,eAAiB,UAAU,mBAAqB,UAAU,kBAAoB,UAAU,kBAAoB,UAAU,iBAAmB,UAAU,iBAAmB,Y,oBCAzsCD,EAAOC,QAAU,CAAC,MAAQ,OAAO,aAAe,UAAU,WAAa,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,eAAiB,UAAU,aAAe,UAAU,cAAgB,UAAU,cAAgB,UAAU,aAAe,UAAU,aAAe,UAAU,WAAa,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,UAAY,UAAU,UAAY,UAAU,YAAc,UAAU,WAAa,UAAU,WAAa,UAAU,aAAe,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,OAAS,UAAU,QAAU,UAAU,QAAU,OAAO,QAAU,UAAU,QAAU,UAAU,QAAU,UAAU,QAAU,OAAO,QAAU,UAAU,UAAY,UAAU,eAAiB,UAAU,WAAa,UAAU,WAAa,UAAU,cAAgB,UAAU,gBAAkB,UAAU,kBAAoB,UAAU,iBAAmB,UAAU,gBAAkB,UAAU,gBAAkB,UAAU,eAAiB,UAAU,eAAiB,UAAU,mBAAqB,UAAU,kBAAoB,UAAU,kBAAoB,UAAU,iBAAmB,UAAU,iBAAmB,Y,oBCApsCD,EAAOC,QAAU,CAAC,MAAQ,OAAO,aAAe,UAAU,WAAa,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,eAAiB,UAAU,aAAe,UAAU,cAAgB,UAAU,cAAgB,UAAU,aAAe,UAAU,aAAe,UAAU,WAAa,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,UAAY,UAAU,UAAY,UAAU,YAAc,UAAU,WAAa,UAAU,WAAa,UAAU,aAAe,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,OAAS,UAAU,QAAU,UAAU,QAAU,OAAO,QAAU,UAAU,QAAU,UAAU,QAAU,UAAU,QAAU,OAAO,QAAU,UAAU,UAAY,UAAU,eAAiB,UAAU,WAAa,UAAU,WAAa,UAAU,cAAgB,OAAO,gBAAkB,OAAO,kBAAoB,UAAU,iBAAmB,UAAU,gBAAkB,UAAU,gBAAkB,UAAU,eAAiB,UAAU,eAAiB,UAAU,mBAAqB,UAAU,kBAAoB,UAAU,kBAAoB,UAAU,iBAAmB,UAAU,iBAAmB,Y,oBCA9rCD,EAAOC,QAAU,CAAC,MAAQ,OAAO,aAAe,UAAU,WAAa,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,eAAiB,UAAU,aAAe,UAAU,cAAgB,UAAU,cAAgB,UAAU,aAAe,UAAU,aAAe,UAAU,WAAa,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,UAAY,UAAU,UAAY,UAAU,YAAc,UAAU,WAAa,UAAU,WAAa,UAAU,aAAe,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,OAAS,UAAU,QAAU,UAAU,QAAU,OAAO,QAAU,UAAU,QAAU,UAAU,QAAU,UAAU,QAAU,OAAO,QAAU,UAAU,UAAY,UAAU,eAAiB,UAAU,WAAa,UAAU,WAAa,UAAU,cAAgB,OAAO,gBAAkB,OAAO,kBAAoB,UAAU,iBAAmB,UAAU,gBAAkB,UAAU,gBAAkB,UAAU,eAAiB,UAAU,eAAiB,UAAU,mBAAqB,UAAU,kBAAoB,UAAU,kBAAoB,UAAU,iBAAmB,UAAU,iBAAmB,Y,oBCA9rCD,EAAOC,QAAU,CAAC,MAAQ,OAAO,aAAe,UAAU,WAAa,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,eAAiB,UAAU,aAAe,UAAU,cAAgB,UAAU,cAAgB,UAAU,aAAe,UAAU,aAAe,UAAU,WAAa,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,UAAY,UAAU,UAAY,UAAU,YAAc,UAAU,WAAa,UAAU,WAAa,UAAU,aAAe,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,OAAS,UAAU,QAAU,UAAU,QAAU,OAAO,QAAU,UAAU,QAAU,UAAU,QAAU,UAAU,QAAU,OAAO,QAAU,UAAU,UAAY,UAAU,eAAiB,UAAU,WAAa,UAAU,WAAa,UAAU,cAAgB,UAAU,gBAAkB,UAAU,kBAAoB,UAAU,iBAAmB,UAAU,gBAAkB,UAAU,gBAAkB,UAAU,eAAiB,UAAU,eAAiB,UAAU,mBAAqB,UAAU,kBAAoB,UAAU,kBAAoB,UAAU,iBAAmB,UAAU,iBAAmB,Y,oBCApsCD,EAAOC,QAAU,CAAC,MAAQ,OAAO,aAAe,UAAU,WAAa,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,eAAiB,UAAU,aAAe,UAAU,cAAgB,UAAU,cAAgB,UAAU,aAAe,UAAU,aAAe,UAAU,WAAa,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,UAAY,UAAU,UAAY,UAAU,YAAc,UAAU,WAAa,UAAU,WAAa,UAAU,aAAe,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,OAAS,UAAU,QAAU,UAAU,QAAU,OAAO,QAAU,UAAU,QAAU,UAAU,QAAU,UAAU,QAAU,OAAO,QAAU,UAAU,UAAY,UAAU,eAAiB,UAAU,WAAa,UAAU,WAAa,UAAU,cAAgB,UAAU,gBAAkB,UAAU,kBAAoB,UAAU,iBAAmB,UAAU,gBAAkB,UAAU,gBAAkB,UAAU,eAAiB,UAAU,eAAiB,UAAU,mBAAqB,UAAU,kBAAoB,UAAU,kBAAoB,UAAU,iBAAmB,UAAU,iBAAmB,Y,oBCApsCD,EAAOC,QAAU,CAAC,MAAQ,OAAO,aAAe,UAAU,WAAa,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,eAAiB,UAAU,aAAe,UAAU,cAAgB,UAAU,cAAgB,UAAU,aAAe,UAAU,aAAe,UAAU,WAAa,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,UAAY,UAAU,UAAY,UAAU,YAAc,UAAU,WAAa,UAAU,WAAa,UAAU,aAAe,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,OAAS,UAAU,QAAU,UAAU,QAAU,OAAO,QAAU,UAAU,QAAU,UAAU,QAAU,UAAU,QAAU,OAAO,QAAU,UAAU,UAAY,UAAU,eAAiB,UAAU,WAAa,UAAU,WAAa,UAAU,cAAgB,UAAU,gBAAkB,UAAU,kBAAoB,UAAU,iBAAmB,UAAU,gBAAkB,UAAU,gBAAkB,UAAU,eAAiB,UAAU,eAAiB,UAAU,mBAAqB,UAAU,kBAAoB,UAAU,kBAAoB,UAAU,iBAAmB,UAAU,iBAAmB,Y,oBCApsCD,EAAOC,QAAU,CAAC,MAAQ,OAAO,aAAe,UAAU,WAAa,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,eAAiB,UAAU,aAAe,UAAU,cAAgB,UAAU,cAAgB,UAAU,aAAe,UAAU,aAAe,UAAU,WAAa,UAAU,YAAc,UAAU,YAAc,UAAU,WAAa,UAAU,UAAY,UAAU,UAAY,UAAU,YAAc,UAAU,WAAa,UAAU,WAAa,UAAU,aAAe,UAAU,YAAc,UAAU,YAAc,UAAU,OAAS,UAAU,QAAU,UAAU,QAAU,OAAO,QAAU,UAAU,QAAU,UAAU,QAAU,UAAU,QAAU,OAAO,QAAU,UAAU,UAAY,UAAU,eAAiB,UAAU,WAAa,UAAU,WAAa,UAAU,cAAgB,UAAU,gBAAkB,UAAU,kBAAoB,UAAU,iBAAmB,UAAU,gBAAkB,UAAU,gBAAkB,UAAU,eAAiB,UAAU,eAAiB,UAAU,mBAAqB,UAAU,kBAAoB,UAAU,kBAAoB,UAAU,iBAAmB,UAAU,iBAAmB,Y,gCCD7qC,wZAEO,MAAM/f,EAFb,MAEoCx0B,EAAcC,gBAAgB,CAChEC,UAAYC,IAAD,CACT+0B,iBAAkB/0B,EAAQY,SAAS,CAC/BV,MAAQC,IAAD,CACHC,IAAM,kEAAiED,EAAMU,YAC7EH,OAAQ,UAGhB2zC,aAAcr0C,EAAQE,MAAM,CACxBA,MAAQW,IAAD,CACHT,IAAM,8DAA6DS,IACnEH,OAAQ,UAGhB4zC,iBAAkBt0C,EAAQY,SAAS,CAC/BV,MAAQW,IAAD,CACHT,IAAM,kEAAiES,IACvEH,OAAQ,UAGhB4zB,kBAAmBt0B,EAAQY,SAAS,CAChCV,MAAQC,IAAD,CACHC,IAAM,yDAAwDD,EAAMU,YACpEH,OAAQ,OACRM,KAAMb,MAGdu1B,oBAAqB11B,EAAQY,SAAS,CAClCV,MAAQC,IAAD,CACHC,IAAM,yDAAwDD,EAAMU,YACpEH,OAAQ,OACRM,KAAMb,MAGdo0C,eAAgBv0C,EAAQE,MAAM,CAC1BA,MAAQW,IAAD,CACLT,IAAM,4DAA2DS,IACjEH,OAAQ,UAGd8zC,eAAgBx0C,EAAQE,MAAM,CAC5BA,MAAQW,IAAD,CACLT,IAAM,gEAA+DS,IACrEH,OAAQ,UAGZ+zC,0BAA2Bz0C,EAAQY,SAAS,CACxCV,MAAQW,IAAD,CACLT,IAAM,gEAA+DS,IACrEH,OAAQ,UAGdm0B,iBAAkB70B,EAAQY,SAAS,CAC/BV,MAAQC,IAAD,CACLC,IAAM,kEAAiED,EAAMU,yBAClD,OAALV,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eACjB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,iCACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QACpDE,OAAQ,UAGdo0B,gBAAiB90B,EAAQY,SAAS,CAC9BV,MAAQC,IAAD,CACLC,IAAM,6DAA4DD,EAAMU,yBAC7C,OAALV,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eACjB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,iCACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QACpDE,OAAQ,UAIdu0B,qBAAsBj1B,EAAQY,SAAS,CACnCV,MAAQW,IAAD,CACLT,IAAM,wEAAuES,IAC7EH,OAAQ,UAGdw0B,wBAAyBl1B,EAAQY,SAAS,CACtCV,MAAQW,IAAD,CACLT,IAAM,uEAAsES,IAC5EH,OAAQ,UAGdy0B,oBAAqBn1B,EAAQY,SAAS,CAClCV,MAAQW,IAAD,CACLT,IAAM,uEAAsES,IAC5EH,OAAQ,UAGdg0C,oCAAqC10C,EAAQY,SAAS,CAClDV,MAAQW,IAAD,CACLT,IAAM,oEAAmES,IACzEH,OAAQ,YAIhBe,kBAAkB,KAGP,4BACTkzC,EADS,6BAETC,EAFS,+BAGTC,EAHS,uBAITC,EAJS,uBAKTC,EALS,qCAMTC,EANS,4BAOTC,EAPS,2BAQTC,EARS,gCASTC,EATS,mCAUTC,EAVS,+BAWTC,EAXS,+CAYTC,EAZS,qBAaTC,EAbS,4BAcTC,GACAnhB,G,gCCtHJ,4dAEO,MAAMiD,EAFb,MAE4Cz3B,EAAcC,gBAAgB,CACxEC,UAAYC,IAAD,CACT43B,iBAAkB53B,EAAQY,SAAS,CAC/BV,MAAQC,IAAD,CACHC,IAAM,2DAA0DD,EAAMU,YACtEH,OAAQ,UAGhB62B,sBAAuBv3B,EAAQY,SAAS,CACpCV,MAAQC,IAAD,CACHC,IAAM,4DAA2DD,EAAMU,YACvEH,OAAQ,OACRM,KAAMb,MAGds3B,oBAAqBz3B,EAAQY,SAAS,CAClCV,MAAQC,IAAD,CACHC,IAAM,4DAA2DD,EAAMU,YACvEH,OAAQ,OACRM,KAAMb,MAGds1C,iBAAkBz1C,EAAQE,MAAM,CAC5BA,MAAQW,IAAD,CACLT,IAAM,+DAA8DS,IACpEH,OAAQ,UAGdg1C,iBAAkB11C,EAAQE,MAAM,CAC9BA,MAAQW,IAAD,CACLT,IAAM,mEAAkES,IACxEH,OAAQ,UAGZi1C,4BAA6B31C,EAAQY,SAAS,CAC1CV,MAAQW,IAAD,CACLT,IAAM,mEAAkES,IACxEH,OAAQ,UAGdg3B,mBAAoB13B,EAAQY,SAAS,CACjCV,MAAQC,IAAD,CACLC,IAAM,qEAAoED,EAAMU,yBACrD,OAALV,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eACjB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,iCACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QACpDE,OAAQ,UAGdi3B,kBAAmB33B,EAAQY,SAAS,CAChCV,MAAQC,IAAD,CACLC,IAAM,gEAA+DD,EAAMU,yBAChD,OAALV,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eACjB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,iCACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QACpDE,OAAQ,UAIdm3B,uBAAwB73B,EAAQY,SAAS,CACrCV,MAAQW,IAAD,CACLT,IAAM,2EAA0ES,IAChFH,OAAQ,UAGdo3B,0BAA2B93B,EAAQY,SAAS,CACxCV,MAAQW,IAAD,CACLT,IAAM,0EAAyES,IAC/EH,OAAQ,UAGdq3B,sBAAuB/3B,EAAQY,SAAS,CACpCV,MAAQW,IAAD,CACLT,IAAM,0EAAyES,IAC/EH,OAAQ,UAGdk1C,sCAAuC51C,EAAQY,SAAS,CACpDV,MAAQW,IAAD,CACLT,IAAM,uEAAsES,IAC5EH,OAAQ,UAGdm1C,wBAAyB71C,EAAQY,SAAS,CACtCV,MAAQW,IAAD,CACLT,IAAM,sEAAqES,IAC3EH,OAAQ,UAGdo1C,2BAA4B91C,EAAQY,SAAS,CACzCV,MAAQW,IAAD,CACLT,IAAM,qEAAoES,IAC1EH,OAAQ,UAGdq1C,oBAAqB/1C,EAAQY,SAAS,CAClCV,MAAQW,IAAD,CACLT,IAAM,oEAAmES,IACzEH,OAAQ,YAIhBe,kBAAkB,KAGP,4BACTu0C,EADS,+BAETC,EAFS,iCAGTC,EAHS,yBAITC,EAJS,yBAKTC,EALS,uCAMTC,EANS,8BAOTC,EAPS,6BAQTC,EARS,kCASTC,EATS,qCAUTC,EAVS,iCAWTC,EAXS,iDAYTC,EAZS,mCAaTC,EAbS,sCAcTC,EAdS,+BAeTC,GACAxf,G,gCC7HJ,0sBAEO,MAAM3I,EAFb,MAEwB9uB,EAAcC,gBAAgB,CACpDC,UAAYC,IAAD,CACT4uB,qBAAsB5uB,EAAQY,SAAS,CACrCV,MAAQC,IAAD,CACLC,IAEG,mDAAkB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAOyM,aAAc,aACnC,OAAWzM,QAAX,IAAWA,OAAX,EAAWA,EAAO0rB,sBACE,OAAL1rB,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eAClB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,8BACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QAC9CE,OAAQ,UAGZq2C,WAAY/2C,EAAQY,SAAS,CAC3BV,MAAQC,IAAD,CACLC,IAAM,wCACNM,OAAQ,OACRM,KAAMb,MAGVurC,eAAgB1rC,EAAQE,MAAM,CAC5BA,MAAQkrB,IAAD,CACLhrB,IAAM,0CAAyCgrB,IAC/C1qB,OAAQ,UAGZs2C,WAAYh3C,EAAQY,SAAS,CAC3BV,MAAQC,IAAD,CACLC,IAAM,uCACNM,OAAQ,QACRM,KAAMb,MAGV4uB,yBAA0B/uB,EAAQY,SAAS,CACzCV,MAAQkrB,IAAD,CACLhrB,IAAM,qDAAoDgrB,IAC1D1qB,OAAQ,UAGZu2C,qBAAsBj3C,EAAQY,SAAS,CACrCV,MAAO,QAAC,OAAEkrB,KAAWjrB,GAAd,QAA2B,CAChCC,IAAM,oDAAmDgrB,IACzD1qB,OAAQ,QACRM,KAAMb,MAGV+2C,qBAAsBl3C,EAAQY,SAAS,CACrCV,MAAQkrB,IAAD,CACLhrB,IAAM,iDAAgDgrB,IACtD1qB,OAAQ,YAGZy2C,sBAAuBn3C,EAAQY,SAAS,CACtCV,MAAQkrB,IAAD,CACLhrB,IAAM,iDAAgDgrB,IACtD1qB,OAAQ,YAGZ02C,sBAAuBp3C,EAAQY,SAAS,CACtCV,MAAQkrB,IAAD,CACLhrB,IAAM,iDAAgDgrB,IACtD1qB,OAAQ,YAGZ22C,wBAAyBr3C,EAAQY,SAAS,CACxCV,MAAQkrB,IAAD,CACLhrB,IAAM,mDAAkDgrB,IACxD1qB,OAAQ,YAGZioC,4BAA6B3oC,EAAQY,SAAS,CAC5CV,MAAQmrB,IAAD,CACLjrB,IAAM,2DAA0DirB,IAChE3qB,OAAQ,UAGZ42C,0BAA2Bt3C,EAAQY,SAAS,CAC1CV,MAAQC,IAAD,CACLC,IAAM,oDACNM,OAAQ,OACRM,KAAMb,MAGVo3C,kBAAmBv3C,EAAQY,SAAS,CAClCV,MAAQC,IAAD,CACLC,IAAM,8CACNM,OAAQ,OACRM,KAAMb,MAGVq3C,eAAgBx3C,EAAQY,SAAS,CAC/BV,MAAO,MACLE,IAAM,6CACNM,OAAQ,WAGZ+2C,mBAAoBz3C,EAAQY,SAAS,CACnCV,MAAQkrB,IAAD,CACLhrB,IAAM,mDAAkDgrB,IACxD1qB,OAAQ,WAGZg3C,sBAAuB13C,EAAQY,SAAS,CACtCV,MAAO,QAAC,OAAEkrB,KAAWjrB,GAAd,QAA2B,CAChCC,IAAM,qDAAoDgrB,IAC1D1qB,OAAQ,OACRM,KAAMb,MAGV6uB,wBAAyBhvB,EAAQE,MAAM,CACrCA,MAAQy3C,IAAD,CACLv3C,IAAM,mDAAkDu3C,IACxDj3C,OAAQ,UAGZ0uB,0BAA2BpvB,EAAQY,SAAS,CAC1CV,MAAQ03C,IAAD,CACLx3C,IAAM,mDAAkDw3C,IACxDl3C,OAAQ,aAGZm3C,kBAAmB73C,EAAQY,SAAS,CAClCV,MAAQkrB,IAAD,CACLhrB,IAAM,iDAAgDgrB,IACtD1qB,OAAQ,WAGZo3C,sBAAuB93C,EAAQY,SAAS,CACpCV,MAAQkrB,IAAD,CACLhrB,IAAM,kDAAiDgrB,IACvD1qB,OAAQ,YAIhBe,kBAAkB,KAGP,gCACXs2C,EADW,sBAEXC,EAFW,uBAGXC,EAHW,sBAIXC,EAJW,oCAKXC,EALW,gCAMXC,EANW,gCAOXC,EAPW,iCAQXC,EARW,iCASXC,EATW,mCAUXC,EAVW,uCAWXC,EAXW,qCAYXC,EAZW,6BAaXC,EAbW,0BAcXC,EAdW,8BAeXC,EAfW,iCAgBXC,EAhBW,gCAiBXC,EAjBW,qCAkBXC,EAlBW,6BAmBXC,EAnBW,iCAoBXC,GACEvqB,G,yHCtJgBwqB,QACa,cAA7Bj8B,OAAOC,SAASi8B,UAEiB,UAA7Bl8B,OAAOC,SAASi8B,UAEhBl8B,OAAOC,SAASi8B,SAAS/2C,MAAM,2D,qEChBhC,MAAMg3C,EAAQ,QACRC,EAAS,SAKTC,EAAW,0BAEXC,EAAY,2BACZC,EAAY,2BACZC,EAAgB,+BAChBC,EAAe,8BACfC,EAAY,2BACZC,EAAkB,iCAClBC,EAAoB,mCACpBC,EAAsB,qCAGtBC,EAAgB,0BCbhBrwC,EAAe,CACxBG,OAAQ,GACRouB,WAAYjH,IAAOiH,WACnBnwB,aAAckpB,IAAOlpB,aACrBowB,eAAgBlH,IAAOkH,eACvB8hB,QAAShpB,IAAO3iB,MAChB8pB,YAAanH,IAAOmH,YACpB8hB,OAAQjpB,IAAOoH,KACfC,UAAWrH,IAAOqH,UAClB6hB,QAAQ,GA4DGC,MAvDc,WAAmC,IACxDl5C,EADsBkK,EAAiC,uDAAzBzB,EAAc0B,EAAW,uCAE3D,OAAQA,EAAOzI,MACX,KAAKy3C,EAED,OADAn5C,EAAKmK,EAAOnK,GACL,IACAkK,EACHtB,OAAQ,CAAC5I,IAGjB,KAAKm5C,EACD,MAAO,IACAjvC,EACH6uC,QAAS5uC,EAAO4uC,SAExB,KAAKI,EACD,MAAO,IACAjvC,EACHgtB,YAAa/sB,EAAO+sB,aAE5B,KAAKiiB,EACD,MAAO,IACAjvC,EACH8uC,OAAQ7uC,EAAO6uC,QAEvB,KAAKG,EACD,MAAO,IACAjvC,EACHktB,UAAWjtB,EAAOitB,WAE1B,KAAK+hB,EACD,MAAO,IACAjvC,EACH+uC,OAAQ9uC,EAAO8uC,QAEvB,KAAKE,EACD,MAAO,IACAjvC,EACH8sB,WAAY7sB,EAAO6sB,YAE3B,KAAKmiB,EACD,MAAO,IACAjvC,EACHrD,aAAcsD,EAAOtD,cAE7B,KAAKsyC,EACD,MAAO,IACAjvC,EACH+sB,eAAgB9sB,EAAO8sB,gBAE/B,QACI,OAAO/sB,ICpEnB,MAAMzB,EAAe,CACjB0B,QAAQ,EACR3D,MAAM,EACNkC,QAAS,gBACT0wC,aAAc,CACVC,SAAU,SACVC,WAAY,SAEhBzxC,QAAS,UACT0xC,cAAe,UACft2C,WAAY,OACZu2C,OAAO,EACPC,cAAc,GAyBHC,MApBS,WAAmC,IAAlCxvC,EAAiC,uDAAzBzB,EAAc0B,EAAW,uCACtD,OAAQA,EAAOzI,OACNy3C,EACM,IACAjvC,EACHC,QAASD,EAAMC,OACf3D,KAAM2D,EAAO3D,KAAO2D,EAAO3D,KAAOiC,EAAajC,KAC/CkC,QAASyB,EAAOzB,QAAUyB,EAAOzB,QAAUD,EAAaC,QACxD0wC,aAAcjvC,EAAOivC,aAAejvC,EAAOivC,aAAe3wC,EAAa2wC,aACvEvxC,QAASsC,EAAOtC,QAAUsC,EAAOtC,QAAUY,EAAaZ,QACxD0xC,cAAepvC,EAAOovC,cAAgBpvC,EAAOovC,cAAgB9wC,EAAa8wC,cAC1Et2C,WAAYkH,EAAOlH,WAAakH,EAAOlH,WAAawF,EAAaxF,WACjEu2C,OAAwB,IAAjBrvC,EAAOqvC,MAAkBrvC,EAAOqvC,MAAQ/wC,EAAa+wC,MAC5DC,aAActvC,EAAOsvC,aAAetvC,EAAOsvC,aAAehxC,EAAagxC,cAGpEvvC,G,iBClCZ,MAAMyvC,EAAiBh7C,IAAcC,gBAAgB,CAC1DC,UAAYC,IAAD,CACT86C,eAAgB96C,EAAQE,MAAM,CAC5BA,MAAO,MACLE,IAAM,mCACNM,OAAQ,UAGZq6C,kBAAmB/6C,EAAQY,SAAS,CAClCV,MAAQC,IAAD,CACLC,IAAM,mCACNM,OAAQ,QACRM,KAAMb,QAIZsB,kBAAkB,KAGP,uBAAEu5C,EAAF,6BAA0BC,GAAiCJ,ECsBlEK,EAAmBzxC,YAAY,CACjCC,KAAM,eACNC,aAzCwB,CACxBywB,MAAO,CACH/vB,MAAO,GACPgE,MAAO,IAEX2d,SAAU,CACN3hB,MAAO,GACPgE,MAAO,IAEX2rB,UAAW,CACP3vB,MAAO,GACPgE,MAAO,IAEX4rB,SAAU,CACN5vB,MAAO,GACPgE,MAAO,IAEX9F,SAAU,CACN8B,MAAO,GACPgE,MAAO,IAEXiiB,YAAa,CACTjmB,MAAO,GACPgE,MAAO,IAEX8sC,cAAe,CACX9wC,MAAO,GACPgE,MAAO,IAEX+sC,mBAAoB,CAChBhhB,MAAO,GACPpO,SAAU,GACVgO,UAAW,GACXC,SAAU,GACV1xB,SAAU,GACV+nB,YAAa,KAOjBplB,SAAU,CACN2kB,KAAM,CAACzkB,EAAOC,KACVD,EAAMykB,KAAO,IAEjB5C,aAAc,CAAC7hB,EAAOC,KAClBD,EAAMC,EAAOC,QAAQ4b,OAAO7Y,MAAQ,GACpCjD,EAAMC,EAAOC,QAAQ4b,OAAO7c,MAAQgB,EAAOC,QAAQjB,OAEvDod,kBAAmB,CAACrc,EAAOC,KACvBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAM8b,GAAO7Y,MAAQsZ,EAAO,QAIxCQ,cAAgBnoB,IACZA,EAAQooB,WACJyyB,EAAe96C,UAAU+6C,eAAevyB,gBAAgB,CAACnd,EAAOC,KAC5DqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAqB,IAAnBc,EAAO7c,GAAW,EACvDe,EAAM8b,GAAO7c,MAAb,OAAqBA,QAArB,IAAqBA,IAAS,GAC9Be,EAAM8b,GAAO7Y,MAAQ,MAGzBjD,EAAMgwC,mBAAqB/vC,EAAOC,WAGzC8c,WACGyyB,EAAe96C,UAAUg7C,kBAAkBxyB,gBAAgB,CAACnd,EAAOC,KAC/DD,EAAMgwC,mBAAmBhhB,MAAQhvB,EAAMgvB,MAAM/vB,MAC7Ce,EAAMgwC,mBAAmBpvB,SAAW5gB,EAAM4gB,SAAS3hB,MACnDe,EAAMgwC,mBAAmBphB,UAAY5uB,EAAM4uB,UAAU3vB,MACrDe,EAAMgwC,mBAAmBnhB,SAAW7uB,EAAM6uB,SAAS5vB,MACnDe,EAAMgwC,mBAAmB7yC,SAAW6C,EAAM7C,SAAS8B,MACnDe,EAAMgwC,mBAAmB9qB,YAAcllB,EAAMklB,YAAYjmB,aAOrE4iB,aADS,oBAETxF,GACAyzB,EAAiBzuC,QAENyuC,QAAf,QCvFO,MAIDG,EAAyB5xC,YAAY,CACvCC,KAAM,qBACNC,aANwB,CACxB2xC,iBAAkB,IAMlBpwC,SAAU,CACNqwC,YAAa,CAACnwC,EAAOC,KACjBD,EAAMkwC,iBAAiBl1B,SAAQqO,IACvBA,EAAQvzB,KAAOmK,EAAOC,QAAQpK,KAC9BuzB,EAAQ+mB,QAAUnwC,EAAOC,QAAQkwC,aAI7CC,UAAW,CAACrwC,EAAOC,KACfD,EAAMkwC,iBAAmBjwC,EAAOC,aAK/B,YACTiwC,EADS,UAETE,GACAJ,EAAuB5uC,QAEZ4uC,QAAf,Q,SC1BO,MAMDK,EAAiBjyC,YAAY,CAC/BC,KAAM,YACNC,aARwB,CACxBugC,SAAU,GACVyR,iBAAkB,GAClBC,WAAW,GAMX1wC,SAAU,CACN+hB,aAAc,CAAC7hB,EAAOC,KAClBD,EAAM8+B,SAAW7+B,EAAOC,QAEpBF,EAAMwwC,YACNxwC,EAAMuwC,iBAAmBtwC,EAAOC,QAChCF,EAAMwwC,WAAY,IAG1BH,UAAW,CAACrwC,EAAOC,KACfD,EAAM8+B,SAAW7+B,EAAOC,QACxBF,EAAMuwC,iBAAmBtwC,EAAOC,QAChCF,EAAMwwC,WAAY,GAEtBnM,kBAAmB,CAACrkC,EAAOC,KACvBD,EAAM8+B,SAAW7+B,EAAOC,QAAQoU,KAChCtU,EAAMuwC,iBAAmBtwC,EAAOC,QAAQoU,KACxCtU,EAAMwwC,WAAY,OAM1B3uB,aADS,oBAETwiB,EACAgM,UAHS,GAITC,EAAejvC,QAEJivC,QAAf,Q,iBCnCO,MAAM/xC,EAAe,CACxBQ,YAAa,GACbyvB,gBAAiB,CACb14B,GAAI,KACJolB,KAAM,KACNiJ,YAAa,KACb7N,oBAAqB,IAEzBoY,wBAAyB,CACrB54B,GAAI,KACJolB,KAAM,KACNiJ,YAAa,MAEjB8K,YAAa,CACThwB,MAAO,GACPgE,MAAO,IAEXiiB,YAAa,CACTjmB,MAAO,GACPgE,MAAO,IAEXw5B,YAAa,CACTx9B,MAAO,GACPgE,MAAO,IAEXisB,YAAa,CACTjwB,MAAO,GACPgE,MAAO,IAEXksB,aAAc,CACVlwB,MAAO,GACPgE,MAAO,IAEXqV,KAAM,CACFrZ,MAAO,GACPgE,MAAO,IAEXoV,gBAAiB,CACbpZ,MAAO,GACPgE,MAAO,IAEXgY,QAAS,CACLhc,MAAO,GACPgE,MAAO,IAEX6kB,OAAQ,CACJ7oB,MAAO,GACPgE,MAAO,IAEXmsB,WAAY,CACRnwB,MAAO,GACPgE,MAAO,IAEXwtC,eAAe,EACfT,mBAAoB,CAChB/gB,YAAa,GACb/J,YAAa,GACbuX,YAAa,GACbvN,YAAa,GACbC,aAAc,GACdlU,QAAS,GACT5C,gBAAiB,GACjBC,KAAM,GACN8W,WAAY,KAIdshB,EAA2BryC,YAAY,CACzCC,KAAM,uBACNC,aAFyC,EAGzCuB,SAAU,CACN+hB,aAAc,CAAC7hB,EAAOC,KAClBD,EAAMC,EAAOC,QAAQ4b,OAAO7Y,MAAQ,GACpCjD,EAAMC,EAAOC,QAAQ4b,OAAO7c,MAAQgB,EAAOC,QAAQjB,OAEvDod,kBAAmB,CAACrc,EAAOC,KACvBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAM8b,GAAO7Y,MAAQsZ,EAAO,OAGpC8zB,UAAY,CAACrwC,EAAOC,KAChBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAqB,IAAnBc,EAAO7c,GAAW,EACnDe,EAAM8b,KACN9b,EAAM8b,GAAO7c,MAAQA,GAAS,GAC9Be,EAAM8b,GAAO7Y,MAAQ,OAI7BjD,EAAMgwC,mBAAqB/vC,EAAOC,SAEtC6a,oBAAqB,CAAC/a,EAAOC,KACzBD,EAAMwuB,gBAAkBxuB,EAAMjB,YAAY8b,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,UAC7EF,EAAMib,QAAQhc,MAAQe,EAAMjB,YAAY8b,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,UAASikB,YACpFnkB,EAAM0uB,wBAA0BnwB,EAAamwB,wBAC7C1uB,EAAMqY,gBAAkB9Z,EAAa8Z,iBAEzCiD,4BAA6B,CAACtb,EAAOC,KAAY,IAAD,GAC5C,UAAIA,EAAOC,eAAX,aAAI,EAAgBjB,SAChBe,EAAM0uB,wBAA0B1uB,EAAMwuB,gBAAgBlY,oBAAoBuE,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,QAAQjB,OAAS,KAC9He,EAAMqY,gBAAgBpZ,MAAQe,EAAMwuB,gBAAgBlY,oBAAoBuE,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,QAAQjB,OAAS,KAAIklB,cAGxI8Y,0BAA2B,CAACj9B,EAAOC,KAC/B,MAAMuuB,EAAkBxuB,EAAMjB,YAAY8b,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,QAAQ+a,UAErF,GAAIuT,EAAiB,CACjBxuB,EAAMwuB,gBAAkBA,EACxB,MAAME,EAA0BF,EAAgBlY,oBAAoBuE,MAAKC,GAAKA,EAAEqJ,cAAgBlkB,EAAOC,QAAQmY,kBAC3GqW,IACA1uB,EAAM0uB,wBAA0BA,MAKhD3R,cAAgBnoB,IACZA,EAAQooB,WACJU,IAAW/oB,UAAUgpB,eAAeR,gBAAgB,CAACnd,EAAOC,KACxDD,EAAMjB,YAAckB,EAAOC,WAGlC8c,WACG7V,IAAuBxS,UAAU2S,0BAA0B6V,gBAAgB,CAACnd,EAAOC,KAC/ED,EAAMgwC,mBAAmB/gB,YAAcjvB,EAAMivB,YAAYhwB,MACzDe,EAAMgwC,mBAAmB9qB,YAAcllB,EAAMklB,YAAYjmB,MACzDe,EAAMgwC,mBAAmBvT,YAAcz8B,EAAMy8B,YAAYx9B,MACzDe,EAAMgwC,mBAAmB9gB,YAAclvB,EAAMkvB,YAAYjwB,MACzDe,EAAMgwC,mBAAmB7gB,aAAenvB,EAAMmvB,aAAalwB,MAC3De,EAAMgwC,mBAAmB/0B,QAAUjb,EAAMib,QAAQhc,MACjDe,EAAMgwC,mBAAmB33B,gBAAkBrY,EAAMqY,gBAAgBpZ,MACjEe,EAAMgwC,mBAAmB13B,KAAOtY,EAAMsY,KAAKrZ,MAC3Ce,EAAMgwC,mBAAmB5gB,WAAapvB,EAAMovB,WAAWnwB,aAOnE4iB,aADS,GAETxF,kBAFS,GAGTg0B,UAHS,uBAITt1B,GAJS,4BAKTO,GALS,0BAMT2hB,GANS,oBAOT0T,IACAD,EAAyBrvC,QAEdqvC,SAAf,QCpJO,MAAME,GAAiCn8C,IAAcC,gBAAgB,CAC1EC,UAAYC,IAAD,CACTi8C,4BAA6Bj8C,EAAQY,SAAS,CAC5CV,MAAO,QAAC,WAACG,EAAD,SAAaC,GAAd,QAA6B,CAClCF,IAAM,gEAA+DC,cAAuBC,IAC5FI,OAAQ,UAGZw7C,uBAAwBl8C,EAAQY,SAAS,CACvCV,MAAQi8C,IAAD,CACL/7C,IAAM,4DAA2D+7C,IACjEz7C,OAAQ,YAGZ07C,sBAAuBp8C,EAAQY,SAAS,CACpCV,MAAQm8C,IAAD,CACLj8C,IAAM,qDAAoDi8C,IAC1D37C,OAAQ,WAGd47C,sBAAuBt8C,EAAQY,SAAS,CACpCV,MAAQgB,IAAD,CACLd,IAAM,qDAAoDc,IAC1DR,OAAQ,eAIhBe,kBAAkB,KAGP,uCACT86C,GADS,kCAETC,GAFS,iCAGTC,GAHS,iCAITC,IACAV,GCbEW,GAAmClzC,YAAY,CACjDC,KAAM,gCACNC,aAvBwB,CACxB2yB,cAAc,EACdtR,aAAa,EACb4xB,6BAA8B,CAC1Bv8C,WAAY,EACZC,SAAU,EACVilB,UAAW,EACXC,WAAY,EACZ/a,MAAO,IAEX4xC,gBAAiB,CACbhyC,MAAO,GACPgE,MAAO,IAEX8tC,aAAc,CACV9xC,MAAO,GACPgE,MAAO,IAEXwuC,cAAe,IAMf3xC,SAAU,CACN+hB,aAAc,CAAC7hB,EAAOC,KAClBD,EAAMC,EAAOC,QAAQ4b,OAAO7Y,MAAQ,GACpCjD,EAAMC,EAAOC,QAAQ4b,OAAO7c,MAAQgB,EAAOC,QAAQjB,OAEvDod,kBAAmB,CAACrc,EAAOC,KACvBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAM8b,GAAO7Y,MAAQsZ,EAAO,OAGpCwV,YAAa,CAAC/xB,EAAOC,KACjBD,EAAMkxB,cAAe,GAEzBwgB,WAAY,CAAC1xC,EAAOC,KAChBD,EAAMkxB,cAAe,EACrBlxB,EAAMixC,gBAAgBhyC,MAAQ,GAC9Be,EAAMixC,gBAAgBhuC,MAAQ,KAGtC8Z,cAAgBnoB,IACZA,EAAQooB,WACJ4zB,GAA+Bj8C,UAAUk8C,4BAA4B1zB,gBAAgB,CAACnd,EAAOC,KAEzFD,EAAM+wC,aAAa9xC,MAAQgB,EAAOC,QAAQyxC,kBAAoB,GAC9D3xC,EAAMyxC,cAAgBxxC,EAAOC,QAAQyxC,kBAAoB,GACzD3xC,EAAM4f,aAAc,EAEpB5f,EAAMwxC,6BAA6Bv8C,WAAagL,EAAOC,QAAQ0xC,UAAU38C,WACzE+K,EAAMwxC,6BAA6Bt8C,SAAW+K,EAAOC,QAAQ0xC,UAAU18C,SACvE8K,EAAMwxC,6BAA6Br3B,UAAYla,EAAOC,QAAQ0xC,UAAUz3B,UACxEna,EAAMwxC,6BAA6Bp3B,WAAana,EAAOC,QAAQ0xC,UAAUx3B,WACzEpa,EAAMwxC,6BAA6BnyC,MAAQY,EAAOC,QAAQ0xC,UAAUvyC,SAG3E2d,WACG4zB,GAA+Bj8C,UAAUk8C,4BAA4BptB,cAAc,CAACzjB,EAAOC,KACvFD,EAAM4f,aAAc,SAOhCiC,aADS,GAETxF,kBAFS,eAGT0V,GAHS,WAIT2f,IACAH,GAAiClwC,QAEtBkwC,UAAf,Q,iNCvEO,MAyBDM,GAAsBxzC,YAAY,CACpCC,KAAM,iBACNC,aA3BwB,CACxBupC,gBAAiB,CACbhyC,GAAI,KACJg8C,YAAa,IAEjBC,qBAAsB,CAClB98C,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,OACZC,eAAgB,MAChBiK,MAAO,IAEX2yC,wBAAyB,CACrB/8C,WAAY,EACZC,SAAU,GACVilB,UAAW,EACXC,WAAY,EACZjlB,WAAY,iBACZC,eAAgB,MAChBiK,MAAO,KAOXS,SAAU,CACNmyC,wBAAyB,CAACjyC,EAAOC,KAC7BD,EAAM8nC,gBAAgBhyC,GAAKmK,EAAOC,QAAQpK,GAC1CkK,EAAM8nC,gBAAgBxpC,KAAO2B,EAAOC,QAAQ5B,OAGpDye,cAAgBnoB,IACZA,EAAQooB,WACJlI,KAAkBngB,UAAUogB,sBAAsBoI,gBAAgB,CAACnd,EAAOC,KAAY,IAAD,EACjFD,EAAMgyC,wBAAwB/8C,WAAagL,EAAOC,QAAQjL,WAC1D+K,EAAMgyC,wBAAwB98C,SAAW+K,EAAOC,QAAQhL,SACxD8K,EAAMgyC,wBAAwB73B,UAAYla,EAAOC,QAAQia,UACzDna,EAAMgyC,wBAAwB53B,WAAana,EAAOC,QAAQka,WAC1Dpa,EAAMgyC,wBAAwB78C,WAAa8K,EAAOC,QAAQ/K,WAC1D6K,EAAMgyC,wBAAwB58C,eAAiB6K,EAAOC,QAAQ9K,eAC9D4K,EAAMgyC,wBAAwB3yC,MAA9B,UAAsCY,EAAOC,QAAQb,aAArD,aAAsC,EAAsB0B,KAAI+Z,IAAC,IAASA,EAAGrD,eAAgB6f,aAAUxc,EAAErD,uBAGhHuF,WACG1b,KAAe3M,UAAU4M,OAAO4b,gBAAgB,CAACnd,EAAOC,KAEpD,MAAMZ,EAAQ,IAAIY,EAAOC,QAAQb,OAEjCA,EAAM8b,KAAK,CACPrlB,GAAI,kBACJwI,KAAM,oBAGV0B,EAAM+xC,qBAAqB98C,WAAagL,EAAOC,QAAQjL,WACvD+K,EAAM+xC,qBAAqB78C,SAAW+K,EAAOC,QAAQhL,SACrD8K,EAAM+xC,qBAAqB53B,UAAYla,EAAOC,QAAQia,UACtDna,EAAM+xC,qBAAqB33B,WAAana,EAAOC,QAAQka,WAAa,EACpEpa,EAAM+xC,qBAAqB58C,WAAa8K,EAAOC,QAAQ/K,WACvD6K,EAAM+xC,qBAAqB38C,eAAiB6K,EAAOC,QAAQ9K,eAC3D4K,EAAM+xC,qBAAqB1yC,MAAQA,SAOtC,wBACT4yC,IACAJ,GAAoBxwC,QAETwwC,UAAf,Q,UC3EO,MAODK,GAAsB7zC,YAAY,CACpCC,KAAM,kBACNC,aATwB,CACxB+kC,WAAY,EACZ6O,WAAY,GACZC,uBAAwB,GACxBC,kBAAmB,IAMnBvyC,SAAU,CACNwyC,uBAAwB,CAACtyC,EAAOC,KAC5BD,EAAMsjC,WAAarjC,EAAOC,SAE9BqyC,uBAAwB,CAACvyC,EAAOC,KAC5BD,EAAMmyC,WAAalyC,EAAOC,QAC1BF,EAAMsjC,WAAa,EACnBtjC,EAAMqyC,kBAAoB,GAE1BryC,EAAMoyC,uBAAuBp3B,SAAQvd,IACjCA,EAAK+0C,YAAc,SAG3BC,eAAgB,CAACzyC,EAAOC,KACpBD,EAAMmyC,WAAa,GACnBnyC,EAAMsjC,WAAa,EACnBtjC,EAAMqyC,kBAAoB,GAE1BryC,EAAMoyC,uBAAuBp3B,SAAQvd,IACjCA,EAAK+0C,YAAc,SAG3BE,iCAAkC,CAAC1yC,EAAOC,KACtC,MAAM0yC,EAA6B3yC,EAAMoyC,uBAAuB3b,WAAU3b,GAAKA,EAAE83B,UAAY3yC,EAAOC,QAAQ2yC,gBAEtGC,EAAiB9yC,EAAMmyC,WAAW1b,WAAU3b,GAAKA,EAAE83B,UAAY3yC,EAAOC,QAAQ6yC,WAC9EC,EAAYhzC,EAAMmyC,WAAWt3B,MAAKC,GAAKA,EAAE83B,UAAY3yC,EAAOC,QAAQ6yC,YAElD,IAApBD,IACA9yC,EAAMqyC,kBAAkBl3B,KAAK63B,GAC7BhzC,EAAMmyC,WAAW1P,OAAOqQ,EAAgB,GAExC9yC,EAAMoyC,uBAAuBO,GAA8B,IACpD3yC,EAAMoyC,uBAAuBO,GAChCH,YAAavyC,EAAOC,QAAQ6yC,YAMxCE,qBAAsB,CAACjzC,EAAOC,KAC1B,MAAM0yC,EAA6B3yC,EAAMoyC,uBAAuB3b,WAAU3b,GAAKA,EAAE03B,cAAgBvyC,EAAOC,QAAQ6yC,WAE1GG,EAAelzC,EAAMqyC,kBAAkBx3B,MAAKC,GAAKA,EAAE83B,UAAY3yC,EAAOC,QAAQ6yC,WAC9EI,EAAoBnzC,EAAMqyC,kBAAkB5b,WAAU3b,GAAKA,EAAE83B,UAAY3yC,EAAOC,QAAQ6yC,YAEnE,IAAvBI,IACAnzC,EAAMqyC,kBAAkB5P,OAAO0Q,EAAmB,GAClDnzC,EAAMmyC,WAAWh3B,KAAK+3B,GAEtBlzC,EAAMoyC,uBAAuBO,GAA8B,IACpD3yC,EAAMoyC,uBAAuBO,GAChCH,YAAa,SAK7Bz1B,cAAgBnoB,IACZA,EAAQooB,WACJrH,KAAkBhhB,UAAUihB,0BAA0BuH,gBAAgB,CAACnd,EAAOC,KAC1ED,EAAMoyC,uBAAyBnyC,EAAOC,QAAQa,KAAItD,IAAI,IAC/CA,EACH+0C,YAAa,gBAOpB,uBACTF,GADS,uBAETC,GAFS,iCAGTG,GAHS,qBAITO,GAJS,eAKTR,IACAP,GAAoB7wC,QAET6wC,UAAf,Q,uCCtFO,MAgCDkB,GAA8B/0C,YAAY,CAC5CC,KAAM,2BACNC,aAlCwB,CACxBg+B,SAAU,CAAC,QAAS,OAAQ,UAAW,aAAc,SAAU,OAAQ,QAAS,aAAc,MAC9Fhc,qBAAsB,CAClBthB,MAAO,GACPgE,MAAO,IAEXo3B,gBAAiB,CACbp7B,MAAO,GACPgE,MAAO,IAEX08B,YAAa,CACT1gC,MAAO,GACPgE,MAAO,IAEX28B,YAAa,CACT3gC,MAAO,GACPgE,MAAO,IAEX48B,aAAc,CACV5gC,MAAO,GACPgE,MAAO,IAEX68B,WAAY,CACR7gC,MAAO,GACPgE,MAAO,IAEX88B,eAAgB,CACZ9gC,MAAO,GACPgE,MAAO,KAOXnD,SAAU,CACN+hB,aAAc,CAAC7hB,EAAOC,KAClBD,EAAMC,EAAOC,QAAQ4b,OAAO7Y,MAAQ,GACpCjD,EAAMC,EAAOC,QAAQ4b,OAAO7c,MAAQgB,EAAOC,QAAQjB,OAEvDod,kBAAmB,CAACrc,EAAOC,KACvBqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EACxDvc,EAAM8b,GAAO7Y,MAAQsZ,EAAO,OAGpCwgB,6BAA8B,CAAC/8B,EAAOC,KAClCD,EAAMugB,qBAAqBthB,MAAQgB,EAAOC,QAC1CF,EAAMugB,qBAAqBtd,MAAQ,IAGvCi9B,wBAAyB,CAAClgC,EAAOC,KAC7BD,EAAM2/B,YAAc1/B,EAAOC,SAE/Bg9B,2BAA4B,CAACl9B,EAAOC,KAChCD,EAAM68B,eAAiB58B,EAAOC,UAGtC6c,cAAgBnoB,IACZA,EAAQooB,WACJ6T,KAAoBl8B,UAAU0+C,oBAAoBl2B,gBAAgB,CAACnd,EAAOC,KACtEqQ,OAAOgM,QAAQrc,EAAOC,SAAS8a,SAAQ,IAAqB,IAAnBc,EAAO7c,GAAW,EACnDe,EAAM8b,aAU1B+F,aADS,GAETxF,kBAFS,gCAGT0gB,GAHS,2BAITG,GAJS,wBAKTgD,IACAkT,GAA4B/xC,QAEjB+xC,UAAf,Q,4DCnCA,MAAME,GAAuBC,GAASC,GAAUvzC,IAE5C,GAAIwzC,YAAoBxzC,GAAS,CAAC,IAAD,cAC7ByzC,QAAQC,KAAK,YAAa1zC,GAE1B,IAAI2zC,GAAa,EAEC,YAAG3zC,EAAOC,eAAV,iBAAG,EAAgBoU,YAAnB,aAAG,EAAsB9V,QAA3C,MACMq1C,EAAY,UAAG5zC,EAAOC,eAAV,aAAG,EAAgB+C,MACjB,YAAGhD,EAAOC,eAAV,iBAAG,EAAgBoU,YAAnB,aAAG,EAAsBpW,MAGf,MAA1B+B,EAAOC,QAAQugB,SACfizB,QAAQzwC,MAAM,qBAAsBhD,GACpC2zC,GAAa,GAIa,MAA1B3zC,EAAOC,QAAQugB,SACfizB,QAAQzwC,MAAM,kBAAmBhD,GACjC2zC,GAAa,GAIa,MAA1B3zC,EAAOC,QAAQugB,QACfizB,QAAQzwC,MAAM,+BAAgChD,GAI9B,MAAhB4zC,GACAH,QAAQzwC,MAAM,iBAAkBhD,GAGhC2zC,GACA9hC,OAAOgiC,YAAW,KACdl5C,aAAam5C,QACbjiC,OAAOC,SAASiiC,KAAO,MACxB,KAIX,OAAOR,EAAKvzC,IAGDg0C,mBAAe,CAC1BC,QAAS,CACLC,cAAenF,EACfoF,SAAU5E,EACV6E,UAAWC,IACXC,YAAaC,IACbC,iBAAkBC,EAClBC,uBAAwBC,EACxBC,qBAAsBC,IACtBC,eAAgBC,EAChBC,yBAA0BC,GAC1BC,iCAAkCC,GAClCC,mBAAoBC,KACpBC,4BAA6BC,KAC7BC,kBAAmBC,KACnBC,oBAAqBC,KACrBC,oBAAqBC,KACrBC,mBAAoBC,KACpBC,4BAA6BC,KAC7BC,4BAA6BC,GAC7BC,mBAAoBC,KACpBC,wBAAyBC,KACzBC,wBAAyBC,KACzBC,iBAAkBC,KAClBC,kBAAmBC,KACnBC,YAAaC,KACbC,aAAcC,KACdC,uBAAwBC,KACxBC,yBAA0BC,KAC1BC,aAAcC,KACdC,cAAeC,KACfC,YAAaC,KACb/kB,oBAAqBglB,KACrBC,sBAAuBC,KACvB9kB,eAAgB+kB,KAChBC,oBAAqBC,GACrBC,oBAAqBC,GACrBC,yBAA0BC,KAC1BC,2BAA4BC,KAC5BC,oBAAqBC,KACrBC,wBAAyBC,KACzBC,6BAA8BC,KAC9B,CAACrkD,IAAc0F,aAAc1F,IAAcy/C,QAC3C,CAACj5C,IAAgBd,aAAcc,IAAgBi5C,QAC/C,CAACh5C,IAAWf,aAAce,IAAWg5C,SAEzC6E,WAAaC,GACc,CAAC1F,GAAqB7+C,IAAcskD,WAAY99C,IAAgB89C,WAAY79C,IAAW69C,cAAeC,OC9HtH,SAASC,GAASC,GAC/B,OAAOC,gBAAKC,UACR,IAEE,aADqBF,IAGvB,MAAOj2C,GACLywC,QAAQzwC,MAAO,6BAA4BA,KAC3Co2C,GAAMC,SAASl4C,aAAmB,Q,8OCA1C,MAAMm4C,GAAS,CACXx8C,QAAS,OACTD,MAAO,WACP08C,eAAgB,OAChBC,aAAc,SACdz8C,WAAY,UAmKD08C,OA9JK,IAAiH,IAAhH,KAAEC,EAAF,QAAQC,EAAR,KAAiB7lC,EAAjB,MAAuB8lC,EAAvB,SAA8BC,EAA9B,WAAwCC,EAAxC,WAAoDC,EAApD,UAAgEC,EAAhE,MAA2E/7C,EAA3E,YAAkFg8C,KAAgB10C,GAAa,EAChI,MAAMtC,EAAQuC,gBACR,EAAErC,GAAMC,eAER82C,EAAY,CACd9wC,YAAanG,EAAM1F,QAAQ,KAC3B48C,UAAY,IAAGl3C,EAAM1F,QAAQ,OAC7B68C,MAAO,OACPjxC,OAAQ,OACRtM,MAAOoG,EAAMyC,QAAQL,UAAUg1C,OAG5BA,EAAMC,GAAW3uC,sBACjBnO,EAAM2V,GAAWxH,qBAGlB4uC,EAAeC,IACbA,EAAKljD,UACLkjD,EAAKljD,SAAS6jB,QAAQna,IACdA,EAASzJ,MAA0B,aAAlByJ,EAASzJ,KAC1BgjD,EAAYv5C,GACLA,EAASzJ,MAA0B,SAAlByJ,EAASzJ,MAC7BsnC,SAAS/sB,SAASiB,WAAa6S,IAAO+G,SAAW3rB,EAASjM,MAC1DulD,EAAQE,GACRrnC,EAAQnS,KAGT,MAKnB0Q,qBAAU,KAAO,IAAD,EACF,OAAVooC,QAAU,IAAVA,GAAA,UAAAA,EAAY16C,aAAZ,SAAmB0B,KAAK05C,IAChBA,EAAKjjD,MAAsB,UAAdijD,EAAKjjD,MAClBgjD,EAAYC,IAET,QAKf,MAAMC,EAAgBT,EAChBU,EAAgBV,EAAY,eAACS,EAAD,CAAeE,OAAQ,IAAKh/C,KAAK,OAAU,eAAC,KAAD,CAAgBg/C,OAAQ,IAAKh/C,KAAK,OAE/G,IAAIi/C,EACAC,EAGAC,EACAC,EAHAC,EAAoB,eAACC,GAAA,EAAD,IACpBC,EAAY,GA8FhB,OAzFIb,GAAsB,aAAdA,EAAK9iD,OACbujD,EAAeT,EAAKvmC,KAAOumC,EAAKvmC,KAAOqnC,KACvCP,EACI,gBAACK,GAAA,EAAD,CAAYG,UAAWC,IAAMC,GAAG,IAAI59C,QAAQ,YAAYlB,GAAI88C,GAA5D,UACKM,GAAS,eAACkB,EAAD,CAAcvmC,MAAO2lC,IAC9B/2C,EAAEk3C,EAAKp8C,WAMhBT,GAAsB,SAAdA,EAAKjG,OACb2jD,EAAY/3C,EAAE3F,EAAKS,OAEnB88C,EAAWv9C,EAAKsW,KAAOtW,EAAKsW,KAAOqnC,KACnCN,EACI,gBAACI,GAAA,EAAD,CACIv9C,QAAQ,YACRlB,GAAI,CACAM,QAAS,OACTy8C,eAAgB,OAChBC,aAAc,SACdz8C,WAAY,SACZF,MAAO,YAPf,UAUK+8C,GAAS,eAACmB,EAAD,CAAUxmC,MAAO2lC,IAC1BgB,MAKgB,IAArB19C,EAAK+9C,cACLP,EACI,gBAACQ,GAAA,EAAD,CACIh/C,GAAI,CACAkiC,cAAuB,IAATgb,EAAiB,EAAIz2C,EAAM1F,QAAQk+C,MACjD12C,QAAiB,IAAT20C,EAAiB,OAAS,YAClCj0C,YAAoC,SAAvBxC,EAAMyC,QAAQC,KAAkB1C,EAAMyC,QAAQE,WAAWC,QAAU5C,EAAMyC,QAAQI,QAAQ,KAAO,GAC7GF,YAAqB,IAAT8zC,EAAiB,cAAgBz2C,EAAMyC,QAAQE,WAAWC,YAEtEN,EAPR,UASI,eAACm2C,GAAA,EAAD,CAAKl/C,GAAI,CAAEC,EAAG,EAAGk/C,IAAa,IAATjC,EAAiB,EAAI,GAA1C,SACI,gBAACkC,GAAA,EAAD,CACIt+C,WAAS,EACT9F,UAAWuiD,EAAa,MAAQ,SAChCrlC,eAAgBqlC,EAAa,gBAAkB,aAC/Ch9C,WAAYg9C,EAAa,SAAW,aACpCx8C,QAAS,EALb,UAOKU,IAAUg8C,GACP,eAAC2B,GAAA,EAAD,CAAMp+C,MAAI,EAAV,SACI,eAACy9C,GAAA,EAAD,CAAYv9C,QAAQ,KAAKlB,GAAI,CAAEmiC,WAAY,KAA3C,SACKx7B,EAAE3F,EAAKS,WAIpB,eAAC29C,GAAA,EAAD,CAAMp+C,MAAI,EAAV,SACI,gBAAC,KAAD,CACIhB,GAAI,CAAE,8BAA+B,CAAE49C,MAAO,GAAIyB,GAAI,KAAMh3C,GAAI,OAChE,aAAW,aACXg1C,SAAUA,GAAY,EACtBG,UAAWU,EAJf,UAMI,gBAACO,GAAA,EAAD,CAAYG,UAAWC,IAAMC,GAAG,IAAIz+C,MAAM,UAAUa,QAAQ,YAAYlB,GAAI88C,GAA5E,UACKM,GAAS,eAAC,KAAD,CAAiBp9C,GAAI09C,IAC9BpmC,GAAQ,eAAC,KAAD,CAAUtX,GAAI,IAAK09C,EAAWr1C,GAAI,MACzCiP,GAAQ,eAEb8mC,EACAC,OAGR58C,GAASg8C,GACN,eAAC2B,GAAA,EAAD,CAAMp+C,MAAI,EAAV,SACI,eAACy9C,GAAA,EAAD,CAAYv9C,QAAQ,KAAKlB,GAAI,CAAEmiC,WAAY,KAA3C,SACKx7B,EAAE3F,EAAKS,iBAMlB,IAATy7C,IAA8B,IAAZC,GAAqB,eAACmC,GAAA,EAAD,CAASt/C,GAAI,CAAEiJ,YAAaxC,EAAMyC,QAAQI,QAAQu0C,KAAMz8C,GAAI69C,aAM7GT,G,wCC1JIe,OANK,IAChB,eAACC,GAAA,EAAD,CAAYC,eAAa,EAACb,UAAWC,IAAMC,GAAI11B,IAAOgH,YAAtD,SACI,sBAAKsvB,IAAKC,KAAMC,IAAI,GAAG7nC,MAAO,CAAE6lC,MAAO,W,kNCN/C,MAAMiC,GAAcjlD,sBAAW,CAAC,EAAoDC,KAAS,IAA7D,SAAEC,EAAF,SAAY4F,EAAZ,KAAsB3F,EAAtB,UAA4BC,KAAc+N,GAAkB,EACpF+2C,EAAa,CACbC,gBAAiB,SAGrB,OAAQr/C,GACJ,IAAK,YACDo/C,EAAa,CACTC,gBAAiB,aAErB,MACJ,IAAK,MACDD,EAAa,CACTC,gBAAiB,OAErB,MACJ,IAAK,cACDD,EAAa,CACTC,gBAAiB,eAErB,MACJ,IAAK,eACDD,EAAa,CACTC,gBAAiB,gBAErB,MACJ,IAAK,SACDD,EAAa,CACTC,gBAAiB,UAErB,MAEJ,QACID,EAAa,CACTC,gBAAiB,SAK7B,OACI,gBAACb,GAAA,EAAD,CAAKrkD,IAAKA,EAAV,UACc,SAATE,GACG,eAACilD,GAAA,EAAD,IAAUj3C,EAAV,SACI,eAACm2C,GAAA,EAAD,CAAKl/C,GAAI8/C,EAAT,SAAsBhlD,MAGpB,aAATC,GACG,eAACklD,GAAA,EAAD,IAAcl3C,EAAQ/I,GAAI8/C,EAA1B,SACKhlD,IAGC,SAATC,GACG,eAACmlD,GAAA,EAAD,IACQn3C,EACJ6nB,QAAS,CACLuvB,OAAQ,IACRC,MAAO,IACPC,KAAM,KALd,SAQI,eAACnB,GAAA,EAAD,CAAKl/C,GAAI8/C,EAAT,SAAsBhlD,MAGpB,UAATC,GACG,eAACulD,GAAA,EAAD,IACQv3C,EACJ6nB,QAAS,CACLuvB,OAAQ,EACRC,MAAO,IACPC,KAAM,KAEVrlD,UAAWA,EAPf,SASI,eAACkkD,GAAA,EAAD,CAAKl/C,GAAI8/C,EAAT,SAAsBhlD,MAGpB,SAATC,GACG,eAACwlD,GAAA,EAAD,IAAUx3C,EAAV,SACI,eAACm2C,GAAA,EAAD,CAAKl/C,GAAI8/C,EAAT,SAAsBhlD,YAc1C+kD,GAAY5iD,aAAe,CACvBlC,KAAM,OACN2F,SAAU,WACV1F,UAAW,MAGA6kD,U,mKCZAW,OArFQ,IAQhB,IARiB,SACpB1lD,EADoB,UAEpBqmC,EAFoB,iBAGpBsf,EAHoB,OAIpBC,EAAO,IAJa,KAKpBC,EALoB,SAMpBC,GAAW,EANS,YAOpBC,GAAc,GACZ,EAEF,MAAMx5C,EAAWg6B,mBAkBjB,OACI,iCACI,gBAACyf,GAAA,EAAD,CAAO//C,QAAS,EAAGR,WAAW,aAA9B,UACI,wBACI1F,IAAKwM,EACLq5C,OAAQA,EACR3lD,KAAK,OACL6lD,SAAUA,EACV7oC,MAAO,CAAEzX,QAAS,QAClBgG,SAAWiJ,GAzBSqd,KAChC,MAAMm0B,EAAQn0B,EAAQuc,OAAO4X,MAE7B,GAAa,MAATA,GAAiBA,EAAM3qC,OAAS,EAAG,CACnC,MAAM4qC,EAAa7jC,MAAM8jC,KAAKF,GAAOz8C,KAAI48C,IAAI,CACzCC,WAAYzrC,IAAI0rC,gBAAgBF,GAChCG,KAAMH,MAINT,EADDI,EACkB,IAAI1f,KAAc6f,GAElB,IAAIA,MAaAM,CAA2B/xC,KAEhD,eAACgyC,GAAA,EAAD,CACIrgD,QAAQ,WACR/B,KAAK,QACLsB,QAAS,4BAAM4G,EAASi6B,eAAf,aAAM,EAAkBkgB,SAHrC,SAKK1mD,IAEJ6lD,KAGDxf,EAAU/qB,OAAS,GACnB,eAAC0qC,GAAA,EAAD,CAAO9lD,UAAU,MAAMwF,IAAK,EAAGW,GAAI,EAAGsgD,SAAS,OAA/C,SAEQtgB,EAAU78B,KAAI,CAAC+9B,EAAUhsB,IACrB,eAACkrC,GAAA,EAAD,CAEIpiD,KAAK,QACL+B,QAAQ,WACRM,QAAS,eAACkgD,GAAA,EAAD,CAAQjhD,QAAS8O,IAClBA,EAAEoyC,kBACFlB,EAAiB,IAAItf,EAAUxiB,QAAON,GAAKA,IAAMgkB,SAGzDod,eAAa,EACbh/C,QAAS,IAAM4U,OAAOxV,KAAKwiC,EAAS8e,YACpCnhD,GAAI,CAAED,SAAU,KAXpB,SAaI,eAAC0+C,GAAA,EAAD,CACIv9C,QAAQ,KACRb,MAAM,WACNL,GAAI,CACA4hD,WAAY,SACZC,SAAU,SACVC,aAAc,YANtB,SAQSzf,EAASgf,KAAKx/C,QApBlBwgC,EAAS8e,WAAa9qC,W,oBC3C3D,MAAM0rC,WAAgCC,MAClCC,YAAYlgD,GACRmgD,QACAC,KAAKtqC,KAAO,CACR9V,QAASA,IA2SNqgD,OAtSM,IAUd,IAVe,SAClBC,EADkB,aAElB16C,EAFkB,gBAGlB26C,GAAkB,EAHA,sBAIlBC,EAJkB,mBAKlBC,EALkB,aAMlBC,GAAe,EANG,cAOlBC,GAAe,EAPG,SAQlBC,EARkB,SASlBC,GACE,EAEF,MAAMn8C,EAAQuC,eACR6zC,EAAWgG,cAEXC,EAAmB,CACrBp7B,YAAa,CAAEllB,MAAO,GAAIgE,MAAO,IACjCu8C,aAAa,EACbC,mBAAmB,EACnBC,gBAAgB,EAChBlC,MAAO,GACPrc,oBAAoB,CAAEliC,MAAO,GAAIgE,MAAO,IACxC4V,UAAU,CAAE5Z,MAAO,EAAGgE,MAAO,IAC7B08C,YAAa,GACbC,UAAU,CAAE3gD,MAAO,GAAIgE,MAAO,MAE3B48C,EAAWC,GAAgBl0C,mBAAS2zC,IACpC3hB,EAAWmiB,GAAgBn0C,mBAAS,KACpC+zC,EAAaK,GAAkBp0C,mBAAS,KAExCpH,GAAkB/I,UAAWwkD,IAA0Bt7C,eAExDu7C,EAAmB,CAACpkC,EAAO7c,KAC7B6gD,EAAa,IAAID,EAAW,CAAC/jC,GAAQ7c,MAGlC2gD,EAAWO,GAAgBv0C,mBAAS,CACvC9V,GAAI,GACJmJ,MAAO,GACP6D,MAAO,KA+DLs9C,EAAW,CAAC5C,EAAO6C,EAAoBC,KACzC,MAAMC,EAAuC,KAAlBD,EAAyB,KAEpD,GAAG9C,EAAM3qC,OAASwtC,EACd,MAAM,IAAI7B,GAAyB,gCAA+B6B,aAA8B7C,EAAQ,EAAI,IAAM,MAGtH,IAAIgD,EAAahD,EAAMz8C,KAAI+Z,GAAKA,EAAEgjC,OAAMjjC,MAAKikB,GAAYA,EAASljC,MAAQ2kD,IAE1E,GAAGC,EACC,MAAM,IAAIhC,GAAyB,GAAEgC,EAAWliD,4CAA4CgiD,QAoBpG,OAhBA3uC,qBAAU,KACFkuC,EAAUL,aACVO,EAAa,IAGbF,EAAUJ,mBACVO,EAAe,MAGpB,CAACH,IAEJluC,qBAAU,IACC,IAAMmuC,EAAaP,IAE3B,IAGC,gBAAC5D,GAAA,EAAD,CAAKl/C,GAAI,CAAEgkD,QAAS,EAAGniB,gBAAiBp7B,EAAMyC,QAAQE,WAAW66C,OAAjE,UAEI,eAACxF,GAAA,EAAD,CAAYv9C,QAAQ,QAAQ6W,MAAO,CAAE6pC,WAAY,YAAjD,SAAgES,IAEhE,eAAC3Y,GAAA,EAAD,CAAoB3xB,MAAO,CAAE6pC,WAAY,YACrC//C,KAAK,sBACLW,MAAO4gD,EAAU17B,YAAYllB,MAC7BgE,MAAO48C,EAAU17B,YAAYlhB,MAC7BwjC,YAAY,2FACZjvC,KAAK,OACLiU,UAAU,OACVvI,MAAOA,EACPH,SAAWsmB,GAAY62B,EAAiB,cAAe,CAAEjhD,MAAOoqB,EAAQuc,OAAO3mC,MAAOgE,MAAO,KAC7FmjC,WAAS,EACTC,KAAM,EACN5pC,GAAI,CACI2M,OAAQ,QACR,uBAAwB,CAAEA,OAAQ,sBAG5C81C,GACE,eAACrD,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAf,SACI,eAACgL,GAAA,EAAD,CACI5S,GAAG,YACHgN,MAAM,aACN7D,MAAO2gD,EAAU98C,MACjBC,SAAU,CAAC49C,EAAOC,IAAaT,EAAaS,GAC5C19C,MAAOA,EACPD,MAAM,GACN0F,QAxHD,CACf,CAAE3J,IAAK,EAAGC,MAAO,EAAGR,KAAM,cAC1B,CAAEO,IAAK,EAAGC,MAAO,EAAGR,KAAM,mBAC1B,CAAEO,IAAK,EAAGC,MAAO,EAAGR,KAAM,cAC1B,CAAEO,IAAK,EAAGC,MAAO,EAAGR,KAAM,SAC1B,CAAEO,IAAK,EAAGC,MAAO,EAAGR,KAAM,oBAC1B,CAAEO,IAAK,EAAGC,MAAO,EAAGR,KAAM,kBAC1B,CAAEO,IAAK,EAAGC,MAAO,EAAGR,KAAM,mBAiHUsC,KAAIf,IAAK,CACzBlK,GAAIkK,EAAMhB,IACVC,MAAOe,EAAMf,MACb6D,MAAO9C,EAAMvB,aAK3B0gD,GACE,eAACtD,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAf,SACI,eAACyoC,GAAA,EAAD,CACIlnC,MAAO4gD,EAAUhnC,UAAU5Z,MAC3B6D,MAAM,aACNyjC,YAAU,EACVrjC,MAAOA,EACP4iC,OAAQ,IACRY,aAAW,EACX3jC,SAAWsmB,GAAY62B,EAAiB,YAAa,CAAEjhD,MAAOoqB,EAAQuc,OAAO3mC,MAAOgE,MAAO,KAC3FA,MAAO48C,EAAUhnC,UAAU5V,UAKnC87C,GACA,eAAClD,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAA/B,SACI,eAACC,GAAA,EAAD,CACIrrC,QACI,eAACsrC,GAAA,EAAD,CAAUvrC,QAASoqC,EAAUL,YAC7Bz8C,SAAW49C,GAAUT,EAAiB,cAAeS,EAAM/a,OAAOnwB,WAGtE3S,MAAM,mBAMd+8C,EAAUL,aACV,eAAC3D,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAf,SACI,eAAC,GAAD,CACIkgC,UAAWA,EACXsf,iBAAmBtf,GAAcmiB,EAAaniB,GAC9Cwf,KACI,gBAAClC,GAAA,EAAD,CAAYv9C,QAAQ,UAAUb,MAAM,WAApC,oEAEI,eAACmkD,GAAA,EAAD,CACI/iD,MAAM,yFACNzB,GAAI,CAACykD,cAAe,SAAUpF,GAAI,GAAKj+C,GAAI,IAF/C,SAII,eAACsjD,GAAA,EAAD,CAAavkD,SAAS,QAAQE,MAAM,mBAVpD,+BAqBJkiD,GACA,eAACnD,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAA/B,SACI,eAACC,GAAA,EAAD,CACIrrC,QACI,eAACsrC,GAAA,EAAD,CAAUvrC,QAASoqC,EAAUJ,kBAC7B18C,SAAW49C,GAAUT,EAAiB,oBAAqBS,EAAM/a,OAAOnwB,WAG5E3S,MAAM,2BAKd+8C,EAAUJ,mBACV,eAAC5D,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAf,SACI,eAAC,GAAD,CACIkgC,UAAW+hB,EACXzC,iBAAmByC,GAAgBK,EAAeL,GAClDxC,OAAO,UACPE,UAAQ,EACRC,aAAW,EALf,+BAYJ2B,GACA,eAACpD,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAA/B,SACI,eAACC,GAAA,EAAD,CACIrrC,QACI,eAAC0rC,GAAA,EAAD,CAAQ3rC,QAAUoqC,EAAUH,eAC5B38C,SAAW49C,GAAUT,EAAiB,iBAAkBS,EAAM/a,OAAOnwB,WAEzE3S,MAAM,oDAKlB,gBAAC+4C,GAAA,EAAD,CAAMt+C,WAAS,EAACK,GAAI,EAAG+W,eAAe,WAAtC,UACI,eAACknC,GAAA,EAAD,CAAMp+C,MAAI,EAAV,SACI,eAAC4jD,GAAA,EAAD,CACI5kD,GAAI,CAAEqI,GAAI,GACVhH,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,WACRb,MAAM,UACNI,QAASmiD,EAPb,sBAaJ,eAACxD,GAAA,EAAD,CAAMp+C,MAAI,EAAV,SACI,eAAC4jD,GAAA,EAAD,CACInkD,QAjOSk8C,UAEzB,IACIgH,EAASxiB,EAAW,EAAG,IAEvB,MAAM7oC,EAAQ,IAAIusD,SAClBvsD,EAAM+F,OAAO,cAAe+kD,EAAU17B,YAAYllB,OAClDlK,EAAM+F,OAAO,OAAQsJ,GACrBrP,EAAM+F,OAAO,aAAc+kD,EAAUH,gBACrC3qD,EAAM+F,OAAO,YAAa+kD,EAAUhnC,UAAU5Z,OAC9ClK,EAAM+F,OAAO,YAAa8kD,EAAU3gD,OACpC2+B,EAAU5iB,SAAQ2iC,IACd5oD,EAAM+F,OAAO,QAAS6iD,EAAKG,SAG/B6B,EAAY3kC,SAAQumC,IAChBxsD,EAAM+F,OAAO,cAAeymD,EAAWzD,SAG3C,MAAM0D,QAAiBh9C,EAAezP,GAAO0sD,SAE7CnI,EAASv5C,YAAmByhD,EAAShjD,UAC7B,OAAR4gD,QAAQ,IAARA,OACAU,EAAaP,GAEjB,MAAMt8C,GAAQ,IAAD,IAET,GAA0B,OAAtB,UAAAA,EAAMqR,YAAN,eAAYiI,QAAgB,CAAC,IAAD,EAC7B,MAAMmlC,EAAgB,IAAK7B,GAC3BvvC,OAAOkgB,KAAP,UAAYvtB,EAAMqR,YAAlB,aAAY,EAAYiI,QAAQvB,SAAQhc,IAIxB,IAAD,EAHP0iD,EAAc1iD,KAEV0iD,EAAc1iD,GAAKiE,MADZ,cAARjE,EAC4B,2BAE3B,UAA2BiE,EAAMqR,YAAjC,aAA2B,EAAYiI,OAAOvd,GAAK,OAK/D8gD,EAAa4B,GACbpI,EAASh5C,YAAiB,wCAGzB,GAA2B,OAAvB,UAAA2C,EAAMqR,YAAN,eAAY9V,SAAiB,CAAC,IAAD,EAClC86C,EAASh5C,YAAgB,UAAC2C,EAAMqR,YAAP,aAAC,EAAY9V,aAsL7BV,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,YACRb,MAAM,YACNkB,QAASiiD,EAPb,6B,8DC/PpB0B,SAAM7tB,SAAS,iBAAkB8tB,MA0dlBC,OAzdc,KACzB,MAAM3+C,EAAQuC,eACR0uC,EAAgBvhB,aAAa5yB,GAAUA,EAAMm0C,gBAC7C2N,EAAWC,eACX,UAAE5iD,GAAcyzB,aAAY5yB,GAASA,EAAMu0C,cAC3C+E,EAAWgG,eACV0C,GAAgBvmD,UAAWwmD,IAAsBzU,gBACjD0U,EAAeC,GAAoBv2C,mBAAS,MAE7Cw2C,EAAa,CAAC,QAAS,QAAS,eAChC,EAAEh/C,GAAMC,eACd,IAAIg/C,EAAY,GAEqB,IAAD,EAG/B,EAHDzoC,MAAM0oC,QAAN,OAAcnjD,QAAd,IAAcA,OAAd,EAAcA,EAAWojD,MACzBF,EAAS,iBAAGljD,QAAH,IAAGA,OAAH,EAAGA,EAAWojD,YAAd,QAAsB,CAAC,QAGhCF,EAAUlnC,KAAV,iBAAehc,QAAf,IAAeA,OAAf,EAAeA,EAAWojD,YAA1B,QAAkC,QAEtC,MAEMC,EAAWH,EAAUjnC,QAAQqnC,GACjCA,EAAOl5B,cAAc+J,SAHL,WAGwB/J,iBAGpCm5B,EAAeL,EAAUjnC,QAAQqnC,GACrCA,EAAOl5B,cAAc+J,SAAS,eAAe/J,kBAGxCo5B,GAAiB/2C,oBAAU,IAC3BtP,EAAMsmD,GAAWh3C,oBAAS,IAC1Bi3C,EAAcC,GAAmBl3C,oBAAS,IAE1CS,GAAQ,UAAE5Q,IAAe8Q,eAK1Bw2C,EAAYjlB,iBAAO,MACnBklB,EAAoBllB,iBAAO,MAE3BmlB,EAAe7J,UACjB8J,IACA,MAAMC,QAAuB92C,IAASo1C,SACtC7mD,aAAam5C,QACb+N,EAAS,IAAK,CAAE5qD,SAAS,IACzBoiD,EAASv5C,YAAmBojD,EAAe3kD,WAGzC4kD,EAAoBhK,UACtB8J,IACApB,EAAS,6BAA8B,CAAE5qD,SAAS,KAgBhDmsD,EAAe1C,IACboC,EAAUhlB,SAAWglB,EAAUhlB,QAAQulB,SAAS3C,EAAM/a,SAG1Dgd,GAAQ,IAGNW,EAAuB5C,IACrBqC,EAAkBjlB,SAAWilB,EAAkBjlB,QAAQulB,SAAS3C,EAAM/a,UAG1Euc,EAAiB,MACjBW,GAAgB,KAGdU,EAA0B,KAC5BV,GAAgB,GAChBX,EAAiB,OAGfe,EAAe,KACjBN,GAASa,IAAcA,KAOrBC,EAAqB19B,IACvBm8B,EAAiBD,IAAkBl8B,EAAQ,KAAOA,IAGhDy9B,EAAW3lB,iBAAOxhC,GAClBqnD,EAAmB7lB,iBAAO+kB,GAEhClxC,qBAAU,MACmB,IAArB8xC,EAAS1lB,UAA6B,IAATzhC,GAC7BymD,EAAUhlB,QAAQ6lB,QAGtBH,EAAS1lB,QAAUzhC,GAEc,IAA7BqnD,EAAiB5lB,UAAqC,IAAjB8kB,GACrCG,EAAkBjlB,QAAQ6lB,QAG9BD,EAAiB5lB,QAAU8kB,IAE5B,CAACvmD,EAAMumD,IAOV,OACI,uCACI,gBAACvH,GAAA,EAAD,CAAMD,UAAU,SAAS,aAAW,gBAAgBn+C,QAAS,IAtE1Ck8C,WAEvB,GAAIgJ,EAAW33B,MAAK83B,GAAQF,EAAU/uB,SAASivB,KAAQ,OAC5BP,IAAeP,SAEtCyB,IACA,MAAMC,QAAuB92C,IAASo1C,SACtC7mD,aAAam5C,QACb+N,EAAS,IAAK,CAAE5qD,SAAS,IACzBoiD,EAASv5C,YAAmBojD,EAAe3kD,YA6DwBqlD,GAAsBpnD,GAAI,CAAEG,SAAU,GAAIknD,UAAW,OAAQllB,WAAY,OAAQjiC,aAAc,QAAWG,MAAM,YAAnL,UAEK0lD,EAAS3vC,OAAS,GACf,eAAC,KAAD,CACIksB,YAAY,KACZvqB,MAAO,CACHnL,YAAa,OAEjB06C,KAAG,EACHC,OAAO,wEACPC,UAAU,MACV/lD,MAAM,OAIbwkD,EAAa7vC,OAAS,GACnB,eAAC,KAAD,CACIksB,YAAY,KACZglB,KAAG,EACHvvC,MAAO,CACHnL,YAAa,OAEjB26C,OAAO,wEACPC,UAAU,MACV/lD,MAAM,UAKlB,eAAC,KAAD,CACI,aAAW,WACXzB,GAAI,IACGyG,EAAMc,WAAWkgD,eACpB76C,YAAa,iBACb86C,WAAY,iBACZhmD,OAAQ,UACRrB,MAAO,kBAEXxF,IAAK0rD,EACL,gBAAeH,EAAe,sBAAmB5pD,EACjD,gBAAc,OACdiE,QA1EiB,KACzB4lD,GAAiBa,IAAsBA,OA4EnC,eAACS,GAAA,EAAD,CACIC,UAAU,aACV/nD,KAAMumD,EACNyB,SAAUtB,EAAkBjlB,QAC5BwkB,UAAMtpD,EACNF,YAAU,EACVwrD,eAAa,EACbC,cAAe,CACXC,UAAW,CACP,CACInmD,KAAM,SACNqK,QAAS,CACLjR,OAAQ,CAAC,EAAG,QAZhC,SAkBK,QAAC,gBAAEgtD,GAAH,SACG,eAAC,GAAD,CAAaC,GAAI9B,KAAkB6B,EAAnC,SACI,eAACE,GAAA,EAAD,UACI,eAACC,GAAA,EAAD,CAAmBC,YAAavB,EAAhC,SACI,gBAACx+C,GAAA,EAAD,CAAUtI,GAAI,CACND,SAAU,IACVuoD,UAAW,OACXzG,SAAU,QAElBt5C,QAAQ,EACRggD,UAAW,GACX9/C,SAAS,EACTD,WAAS,EACTM,OAAQrC,EAAM+hD,QAAQ,IATtB,UAWI,gBAACtJ,GAAA,EAAD,CAAKl/C,GAAI,CAAEC,EAAG,GAAd,UACI,eAAC6gD,GAAA,EAAD,UACI,eAACA,GAAA,EAAD,CAAO9lD,UAAU,MAAM+F,QAAS,GAAKR,WAAW,SAAhD,SACI,eAACk+C,GAAA,EAAD,CAAYv9C,QAAQ,KAApB,wCAIR,eAACo+C,GAAA,EAAD,OAEJ,eAACJ,GAAA,EAAD,CAAKl/C,GAAI,CAAEm/C,GAAI,EAAGsJ,GAAI,EAAGtnD,IAAK,GAA9B,SACI,gBAACunD,GAAA,EAAD,CACI9J,UAAU,MACV/c,gBAAkBp7B,EAAMyC,QAAQE,WAAWC,QAC3CrJ,GAAI,CACA49C,MAAO,OACP79C,SAAU,IACV4oD,SAAU,IACV9mB,gBAAiBp7B,EAAMyC,QAAQE,WAAWC,QAC1CnJ,aAAc,OACd,CAACuG,EAAMmiD,YAAYC,KAAK,OAAQ,CAC5BF,SAAU,SAVtB,UAgBI,gBAACG,GAAA,EAAD,CACIjnB,gBAAkBp7B,EAAMyC,QAAQE,WAAWC,QAC3CrJ,GAAI,CAAEE,aAAe,GAAEw3C,EAAcx3C,kBACrC6oD,SAA4B,IAAlB7C,EACVzlD,QAAS,IAAMwmD,EAAkB,GAJrC,UAMI,eAAC+B,GAAA,EAAD,UACI,eAAC,KAAD,CAAc3oD,MAAM,YAAY89C,OAAQ,IAAKh/C,KAAK,SAEtD,eAAC8pD,GAAA,EAAD,CAAc3/C,QAAS,eAACm1C,GAAA,EAAD,CAAYv9C,QAAQ,QAApB,oCAE3B,eAAC++C,GAAA,EAAD,CAAUiI,GAAsB,IAAlBzC,EAAqB70B,QAAQ,OAAOs4B,eAAa,EAA/D,SACI,eAAC,GAAD,CACI7G,SAAS,uBACT16C,aAAa,aACb66C,oBAAkB,EAClBG,SAAUoE,EACVnE,SAAU,IAAM8C,EAAiB,UAKzC,gBAACoD,GAAA,EAAD,CACIjnB,gBAAkBp7B,EAAMyC,QAAQE,WAAWC,QAC3CrJ,GAAI,CAAEE,aAAe,GAAEw3C,EAAcx3C,kBACrC6oD,SAA4B,IAAlB7C,EACVzlD,QAAS,IAAMwmD,EAAkB,GAJrC,UAMI,eAAC+B,GAAA,EAAD,UACI,eAAC,KAAD,CAAoB3oD,MAAM,YAAY89C,OAAQ,IAAKh/C,KAAK,SAE5D,eAAC8pD,GAAA,EAAD,CAAc3/C,QAAS,eAACm1C,GAAA,EAAD,CAAYv9C,QAAQ,QAApB,mCAE3B,eAAC++C,GAAA,EAAD,CAAUiI,GAAsB,IAAlBzC,EAAqB70B,QAAQ,OAAOs4B,eAAa,EAA/D,SACI,eAAC,GAAD,CACI7G,SAAS,qBACT16C,aAAa,QACb46C,uBAAqB,EACrBI,SAAUoE,EACVnE,SAAU,IAAM8C,EAAiB,UAKzC,gBAACoD,GAAA,EAAD,CACIjnB,gBAAkBp7B,EAAMyC,QAAQE,WAAWC,QAC3CrJ,GAAI,CAAEE,aAAe,GAAEw3C,EAAcx3C,kBACrC6oD,SAA4B,IAAlB7C,EACVzlD,QAAS,IAAMwmD,EAAkB,GAJrC,UAMI,eAAC+B,GAAA,EAAD,UACI,eAAC,KAAD,CAAgB3oD,MAAM,YAAY89C,OAAQ,IAAKh/C,KAAK,SAExD,eAAC8pD,GAAA,EAAD,CAAc3/C,QAAS,eAACm1C,GAAA,EAAD,CAAYv9C,QAAQ,QAApB,oCAE3B,eAAC++C,GAAA,EAAD,CAAUiI,GAAsB,IAAlBzC,EAAqB70B,QAAQ,OAAOs4B,eAAa,EAA/D,SACI,eAAC,GAAD,CACI7G,SAAS,wBACT16C,aAAa,aACb46C,uBAAqB,EACrBI,SAAUoE,EACVnE,SAAU,IAAM8C,EAAiB,UAKzC,gBAACoD,GAAA,EAAD,CACIjnB,gBAAkBp7B,EAAMyC,QAAQE,WAAWC,QAC3CrJ,GAAI,CAAEE,aAAe,GAAEw3C,EAAcx3C,kBACrC6oD,SAA4B,IAAlB7C,EACVzlD,QAAS,IAAMwmD,EAAkB,GAJrC,UAMI,eAAC+B,GAAA,EAAD,UACI,eAAC,KAAD,CAAc3oD,MAAM,YAAY89C,OAAQ,IAAKh/C,KAAK,SAEtD,eAAC8pD,GAAA,EAAD,CAAc3/C,QAAS,eAACm1C,GAAA,EAAD,CAAYv9C,QAAQ,QAApB,2BAE3B,eAAC++C,GAAA,EAAD,CAAUiI,GAAsB,IAAlBzC,EAAqB70B,QAAQ,OAAOs4B,eAAa,EAA/D,SACI,eAAC,GAAD,CACI7G,SAAS,yCACT16C,aAAa,UACb26C,iBAAkB,EAClBG,cAAgB,EAChBC,eAAiB,EACjBC,SAAUoE,EACVnE,SAAU,IAAM8C,EAAiB,2BAazE,eAAC7G,GAAA,EAAD,CAAMD,UAAU,SAASn+C,QAAS,IAhNrBlI,KACjB,MAAM4wD,EAAY9zC,OAAOxV,KAAKtH,EAAK,SAAU,uBACzC4wD,IAAWA,EAAUC,OAAS,OA8MUC,CAAa,uEAAwErpD,GAAI,CAAEG,SAAU,GAAIknD,UAAW,OAAQllB,WAAY,QAAU9hC,MAAM,YAAhM,SACI,eAACo+C,GAAA,EAAD,CAAYG,UAAU,OAAO19C,QAAQ,KAAKlB,GACtC,CAAEmiC,WAAY,IAAK5hC,WAAY,SAC3BqM,YAAa,QAFrB,SAGKjG,EAAE,0BAIX,eAAC2iD,GAAA,EAAD,CACItpD,GAAI,CAAEK,MAAO,OAAQ2X,OAAQ,GAC7BnY,KAAMb,GAAawmD,EAFvB,SAII,eAAC+D,GAAA,EAAD,CAAkBlpD,MAAM,cAG5B,eAACmpD,GAAA,EAAD,CAAM,aAAW,iBAAiBl7B,SAAU,EAExCtuB,GAAI,CACA2M,OAAQ,OACRpM,WAAY,SACZL,aAAc,OACd5D,WAAY,sBACZ2M,YAAoC,SAAvBxC,EAAMyC,QAAQC,KAAkB1C,EAAMyC,QAAQL,UAAU+4B,KAAOn7B,EAAMyC,QAAQI,QAAQw4B,MAClGD,gBAAwC,SAAvBp7B,EAAMyC,QAAQC,KAAkB1C,EAAMyC,QAAQL,UAAU+4B,KAAOn7B,EAAMyC,QAAQI,QAAQw4B,MAEtG,sDAAuD,CACnD74B,YAAaxC,EAAMyC,QAAQI,QAAQu0C,KACnCz0C,WAAa,GAAE3C,EAAMyC,QAAQI,QAAQu0C,iBACrCx9C,MAAOoG,EAAMyC,QAAQI,QAAQw4B,MAC7B,QAAS,CACLqc,OAAQ13C,EAAMyC,QAAQI,QAAQw4B,QAGtC,mBAAoB,CAChB2nB,WAAY,IAGpBpjD,MACI,gBAAC64C,GAAA,EAAD,CAAKl/C,GAAI,CAAEM,QAAS,OAAQC,WAAY,SAAUC,IAAK,OAAvD,UACI,eAACi+C,GAAA,EAAD,CAAYv9C,QAAQ,QAApB,SAA8ByF,EAAE,6BAChC,eAAC,KAAD,CAAcw3C,OAAQ,IAAKh/C,KAAK,KAAKkB,MAAOoG,EAAMyC,QAAQI,QAAQu0C,UAG1EvmC,KACI,eAACoyC,GAAA,EAAD,CACI1pD,GAAI,IACGyG,EAAMc,WAAWoiD,aACpBC,OAAQ,2BACRloD,OAAQ,WAEZ7G,IAAKyrD,EACL,gBAAezmD,EAAO,sBAAmBrD,EACzC,gBAAc,OACd6D,MAAM,YAGda,QAAQ,WACRrG,IAAKyrD,EACL,gBAAezmD,EAAO,sBAAmBrD,EACzC,gBAAc,OACdiE,QAASgmD,EACTpmD,MAAM,YAGV,eAACsnD,GAAA,EAAD,CACIC,UAAU,aACV/nD,KAAMA,EACNgoD,SAAUvB,EAAUhlB,QACpBwkB,UAAMtpD,EACNF,YAAU,EACVwrD,eAAa,EACbC,cAAe,CACXC,UAAW,CACP,CACInmD,KAAM,SACNqK,QAAS,CACLjR,OAAQ,CAAC,EAAG,QAZhC,SAkBK,QAAC,gBAAEgtD,GAAH,SACG,eAAC,GAAD,CAAaC,GAAIroD,KAAUooD,EAA3B,SACI,eAACE,GAAA,EAAD,UACI,eAACC,GAAA,EAAD,CAAmBC,YAAazB,EAAhC,SACI,gBAACt+C,GAAA,EAAD,CAAUC,QAAQ,EAAOggD,UAAW,GAAI9/C,SAAS,EAAOD,WAAS,EAACM,OAAQrC,EAAM+hD,QAAQ,IAAxF,UACI,gBAACtJ,GAAA,EAAD,CAAKl/C,GAAI,CAAEC,EAAG,GAAd,UACI,eAAC6gD,GAAA,EAAD,UACI,gBAACA,GAAA,EAAD,CAAO9lD,UAAU,MAAM+F,QAAS,GAAKR,WAAW,SAAhD,UACI,gBAACk+C,GAAA,EAAD,CAAYv9C,QAAQ,KAApB,UAA0ByF,EAAE,aAA5B,OACA,eAAC83C,GAAA,EAAD,CAAYG,UAAU,OAAO19C,QAAQ,KAAKlB,GAAI,CAAEmiC,WAAY,KAA5D,SACKz/B,EAAUmnD,gBAIvB,eAACvK,GAAA,EAAD,OAEJ,eAACJ,GAAA,EAAD,CAAKl/C,GAAI,CAAEm/C,GAAI,EAAGsJ,GAAI,EAAGtnD,IAAK,GAAK,aAAW,SAA9C,SACI,gBAACunD,GAAA,EAAD,CACI9J,UAAU,MACV5+C,GAAI,CACA49C,MAAO,OACP79C,SAAU,IACV4oD,SAAU,IACV9mB,gBAAiBp7B,EAAMyC,QAAQE,WAAW66C,MAC1C/jD,aAAc,OACd,CAACuG,EAAMmiD,YAAYC,KAAK,OAAQ,CAC5BF,SAAU,SATtB,UAcI,gBAACG,GAAA,EAAD,CACI9oD,GAAI,CAAEE,aAAe,GAAEw3C,EAAcx3C,kBACrC6oD,SAA4B,IAAlB7C,EACVzlD,QAASkmD,EAHb,UAKI,eAACqC,GAAA,EAAD,UACI,eAAC,KAAD,CAAY7K,OAAQ,IAAKh/C,KAAK,SAElC,eAAC8pD,GAAA,EAAD,CAAc3/C,QAAS,eAACm1C,GAAA,EAAD,CAAYv9C,QAAQ,QAApB,SAA6ByF,EAAE,8BAI1D,gBAACmiD,GAAA,EAAD,CACI9oD,GAAI,CAAEE,aAAe,GAAEw3C,EAAcx3C,kBACrC6oD,SAA4B,IAAlB7C,EACVzlD,QAAS+lD,EAHb,UAKI,eAACwC,GAAA,EAAD,UACI,eAAC,KAAD,CAAY7K,OAAQ,IAAKh/C,KAAK,SAElC,eAAC8pD,GAAA,EAAD,CAAc3/C,QAAS,eAACm1C,GAAA,EAAD,CAAYv9C,QAAQ,QAApB,SAA6ByF,EAAE,6C,gDC9fvF,ICyBSmjD,aAAO,MAAPA,EAAc,QAAC,MAAErjD,GAAH,QAAgB,CAClD/E,OAAQ,UACRsiD,QAAS,GACT,UAAW,CACP56C,WAAY3C,EAAMyC,QAAQI,QAAQw4B,OAEtC,sBAAuB,CACnBkiB,QAAS,OA6HF+F,I,UC3JR,MAAMC,GAAsBhyD,IAAcC,gBAAgB,CAC/DC,UAAYC,IAAD,CACT8xD,iCAAkC9xD,EAAQY,SAAS,CACjDV,MAAO,MACLE,IAAM,8CACNM,OAAQ,UAGZqxD,yBAA0B/xD,EAAQY,SAAS,CACzCV,MAAQG,IAAD,CACLD,IAAM,0CAAyCC,IAC/CK,OAAQ,UAGZsxD,qBAAsBhyD,EAAQY,SAAS,CACnCV,MAAQ+xD,IAAD,CACL7xD,IAAM,+CAA8C6xD,IACpDvxD,OAAQ,UAGdwxD,6BAA8BlyD,EAAQY,SAAS,CAC3CV,MAAO,MACLE,IAAM,kDACNM,OAAQ,WAGdyxD,yBAA0BnyD,EAAQY,SAAS,CACvCV,MAAO,MACLE,IAAM,gDACNM,OAAQ,UAGd0xD,yBAA0BpyD,EAAQY,SAAS,CACzCV,MAAQgB,GAAQ,iEAAgEA,QAGpFO,kBAAkB,KAGP,4CACT4wD,GADS,oCAETC,GAFS,gCAGTC,GAHS,wCAITC,GAJS,oCAKTC,GALS,oCAMTC,IACAb,G,wBCkXWc,I,iFClaA,OAA0B,8CCgBzC,MAAMC,GAA8B,IAClC,eAAC7L,GAAA,EAAD,CAAKl/C,GAAI,CAAE49C,MAAO,IAAK39C,EAAG,IAAK4hD,SAAU,UAAzC,SACG1kC,MAAM,IACJC,KAAK,GACL9Y,KAAI,CAAC+Y,EAAGhH,IACP,iCACE,eAAC20C,GAAA,EAAD,CAAUpN,MAAM,QAChB,eAACoN,GAAA,EAAD,CAAUr+C,OAAQ,IAAKzL,QAAQ,eAAelB,GAAI,CAAEoB,GAAI,OAFhDiV,OAQZ40C,GAA0B,IAC9B,gBAACnK,GAAA,EAAD,CAAO3/C,GAAI,EAAG+W,eAAe,SAAS3X,WAAW,SAASQ,QAAS,EAAnE,UACE,sBAAK6+C,IAAI,kBAAkBF,IAAKwL,GAAgBtN,MAAM,UACtD,eAACa,GAAA,EAAD,CACEv9C,QAAQ,KACRlB,GAAI,CACFK,MAAQoG,GAAkC,UAAvBA,EAAMyC,QAAQC,KAAmB44B,KAAK,KAAO,OAChE3gC,GAAI,GAJR,iCAyEW+pD,OA7DY,IAKpB,IALqB,KACxBtrD,EADwB,QAExBjB,EAFwB,UAGxBI,EAHwB,cAIxBosD,EAAgB,IACd,EAEF,OACI,gBAACC,GAAA,EAAD,CAAQxrD,KAAMA,EAAMjB,QAASA,EAAS0sD,OAAO,QAAQtrD,GAAI,CACrDU,SAAU,WACV,qBAAsB,CAClBiM,OAAQ,qBAHhB,UAMI,gBAAC4+C,GAAA,EAAD,CACIC,gBAAc,EACdxrD,GAAI,CACAkY,eAAgB,gBAChBjY,EAAG,IACHwrD,aAAc,YACdxiD,YAAa,WACbvI,SAAU,SACVE,IAAK,EACL8qD,KAAM,EACNtrD,QAAS,kBAVjB,UAaI,gBAAC0gD,GAAA,EAAD,CAAO9lD,UAAU,MAAMuF,WAAW,SAASQ,QAAS,GAApD,UACI,eAAC4qD,GAAA,EAAD,CAAetrD,MAAM,YAAYF,SAAS,QAAQH,GAAI,CAAEK,MAAO,UAC/D,eAACo+C,GAAA,EAAD,CAAYv9C,QAAQ,KAAKb,MAAM,OAA/B,8BAEJ,eAACurD,GAAA,EAAD,CAAYnrD,QAAS7B,EAASoB,GAAI,CAAEK,MAAO,QAA3C,SACI,eAACwrD,GAAA,EAAD,SAIP7sD,EACK,eAAC+rD,GAAD,IACC,eAAC,KAAD,UACK,eAAC7L,GAAA,EAAD,CAAKl/C,GAAI,CAAE49C,MAAO,IAAK39C,EAAG,KAA1B,SACKmrD,EAAch1C,OAAS,EACpBg1C,EAAc9mD,KAAIwnD,GACd,eAAC/qB,GAAA,EAAD,CAEIt/B,MAAOqqD,EAAaC,KAAKtqD,MACzBu/B,gBAAiB8qB,EAAaC,KAAK/qB,gBACnCC,OAAQ6qB,EAAaC,KAAK9qB,OAC1BC,gBAAiB4qB,EAAaC,KAAK7qB,gBACnCC,UAAW2qB,EAAa3qB,UACxBniC,UAAW8sD,EAAaE,oBANnBF,EAAaC,KAAK3B,kBASjC,eAACa,GAAD,YCwEfgB,OAhJe,IAAgC,IAA/B,cAAEC,GAAgB,GAAY,EAEzD,MAAMzlD,EAAQuC,eACR6zC,EAAWgG,eAEVsJ,GAA2BntD,UAAWotD,IAA+B5B,MACpEF,GAA6BM,MAC9ByB,GAA2BxB,MAE3ByB,EAAYC,GAAiBp9C,oBAAS,IACtCq9C,EAAuBC,GAA4Bt9C,oBAAS,IAC5Du9C,EAAmBC,GAAwBx9C,mBAAS,KACpDy9C,EAAqBC,GAA0B19C,mBAAS,CAC3D29C,iBAAkB,EAClBC,oBAAqB,IA6BnBC,EAAmB,KACrBT,GAAc,GAEVC,GACAL,IAA0BnH,SAASiI,MAAKC,IAEpC,MAAMC,EAAwB,GAE9BD,EAAK3uC,SAAQutC,IAnBSsB,MAoBlBD,EAAsBzuC,KAAK,CACvBqtC,KAAMD,EACN3qB,UAAW,GACX6qB,oBAAoB,IAvBNoB,EA0BOtB,EAAasB,eAzBlDf,EAAwBe,GAAgBpI,SAASiI,MAAKC,IAClDP,GAAqBU,GAAYA,EAAS/oD,KACrCwnD,GACGA,EAAaC,KAAKqB,iBAAmBA,EACnC,IAAKtB,EAAc3qB,UAAW+rB,EAAMlB,oBAAoB,GACxDF,YAuBNa,EAAqBQ,GACrBV,GAAyB,GAEzBI,EAAuB,IAChBD,EACHG,oBAAqBG,EAAKvuC,QAAON,IAAqB,IAAhBA,EAAEivC,YAAoBl3C,aAgB5E,OAVAlB,qBAAU,KAtDNo1C,IAA2BtF,SAASiI,MAAKlI,IAAa,IAAD,IACjD8H,EAAuB,IAChBD,EACHE,iBAAgB,OAAE/H,QAAF,IAAEA,GAAF,UAAEA,EAAUltC,YAAZ,aAAE,EAAgBi1C,iBAClCC,oBAAmB,OAAEhI,QAAF,IAAEA,GAAF,UAAEA,EAAUltC,YAAZ,aAAE,EAAgBk1C,yBAE1CvmD,IAAU,IAAD,EAEyB,EAAN,OAAvB,UAAAA,EAAMqR,YAAN,eAAY9V,UACZ86C,EAASh5C,YAAgB,UAAC2C,EAAMqR,YAAP,aAAC,EAAY9V,eA+C/C,IAEHmT,qBAAU,KACFg3C,GACAc,MAEL,CAACd,IAGA,uCACI,eAAChN,GAAA,EAAD,CACIl/C,GAAI,CACAq/C,GAAI,EACJh3C,GAAI,EACJ,CAAC5B,EAAMmiD,YAAYC,KAAK,OAAQ,CAC5BxgD,GAAI,IALhB,SASI,eAACm3C,GAAA,EAAD,CAAYx/C,GAAI,CAACE,aAAc,QAA/B,SACI,gBAACwpD,GAAA,EAAD,CACIxoD,QAAQ,UACRlB,GAAI,IACGyG,EAAMc,WAAWgmD,gBACjB9mD,EAAMc,WAAWoiD,aACpBrtD,WAAY,sBACZ8M,WAAmC,SAAvB3C,EAAMyC,QAAQC,KAAkB1C,EAAMyC,QAAQL,UAAU+4B,KAAOn7B,EAAMyC,QAAQL,UAAUi5B,MACnGzhC,MAA8B,SAAvBoG,EAAMyC,QAAQC,KAAkB1C,EAAMyC,QAAQL,UAAUi5B,MAAOr7B,EAAMyC,QAAQL,UAAU+4B,KAC9F,4CAA6C,CACzCx4B,WAAmC,SAAvB3C,EAAMyC,QAAQC,KAAkB1C,EAAMyC,QAAQL,UAAUi5B,MAAQr7B,EAAMyC,QAAQL,UAAU+4B,KACpGvhC,MAA8B,SAAvBoG,EAAMyC,QAAQC,KAAkB1C,EAAMyC,QAAQL,UAAU+4B,KAAMn7B,EAAMyC,QAAQL,UAAUi5B,QAGrGzhC,MAAM,UACNI,QAASusD,EAdb,UAiBkD,IAA5CJ,EAAoBG,qBAClB,eAAC,KAAD,CACI/sD,GAAI,CACAK,MAA8B,SAAvBoG,EAAMyC,QAAQC,KAAkB,iBAAmB,2BAC1DC,WAAmC,SAAvB3C,EAAMyC,QAAQC,KAAkB,iBAAmB,4BAEnEg1C,OAAQ,IAAKh/C,KAAK,OAGxBytD,EAAoBG,oBAAsB,GACxC,eAACS,GAAA,EAAD,CAAOntD,MAAM,OAAQotD,QAAQ,WAAWC,aAAa,IAAIxsD,QAAQ,MAAjE,SACI,eAACvG,GAAA,EAAD,CAAeI,KAAK,SAApB,SACI,eAAC,KAAD,CAAUiF,GAAI,CACFK,MAA8B,SAAvBoG,EAAMyC,QAAQC,KAAkB,iBAAmB,mBAC9Dg1C,OAAQ,IAAKh/C,KAAK,kBASlD,eAAC,GAAD,CACIU,KAAMysD,EACN1tD,QAAS,IAAM2tD,GAAc,GAC7BnB,cAAesB,EACf1tD,UAAWotD,Q,4DChKpB,MAAMuB,GAAc31D,IAAcC,gBAAgB,CACvDC,UAAYC,IAAD,CAETy1D,eAAgBz1D,EAAQY,SAAS,CAC7BV,MAAQC,IAAD,CACLC,IAAM,+BACNM,OAAQ,OACRM,KAAMb,QAIdsB,kBAAkB,KAGP,0BACXi0D,IACEF,GCkRWG,OA5QW,IAAsD,IAArD,UAAEnvD,EAAF,QAAaC,EAAb,UAAsBwkD,EAAtB,aAAiCC,GAAmB,EAC7E,MAAM58C,EAAQuC,gBACR,UAAEtG,GAAcyzB,aAAa5yB,GAAUA,EAAMu0C,cAE7C+E,EAAWgG,eAEV+K,GAAkB5uD,UAAW+uD,IAClCF,KAGIpK,EAAmB,CAACpkC,EAAO7c,KAC/B6gD,EAAa,IAAKD,EAAW,CAAC/jC,GAAQ7c,KAGlCwrD,EAAe,GAErBA,EAAatvC,KAAK,CAChBrY,MAAO,UACP7D,MAAQ,GAAE6S,OAAOC,SAASK,4BAAnB,OAA+CjT,QAA/C,IAA+CA,OAA/C,EAA+CA,EAAWmnD,WACjEvyC,KAAM,eAAC22C,GAAA,EAAD,CAAU5tD,MAAM,YAAYF,SAAS,UAC3CqB,QAAS,eAAC0sD,GAAA,EAAD,MAqDX,OACE,eAAC72C,GAAA,EAAD,CACE5V,MAAO,iBACP6V,KAAM,eAAC,KAAD,CAAYnX,SAAS,UAC3BN,KAAMlB,EACNC,QAASA,EACTg/C,MAAM,QACNrmC,mBAAoB,CAClBvX,GAAI,CACFC,EAAG,EACH0M,OAAQ,OACRwhD,UAAW,QACXxF,SAAU,UAGdlxC,eACE,qCACE,eAAC8pC,GAAA,EAAD,CACErgD,QAAQ,WACRb,MAAM,YACNlB,KAAK,QACLsB,QAAS7B,EAJX,qBAhBN,SA2BE,gBAACwgD,GAAA,EAAD,CAAMt+C,WAAS,EAACC,QAAS,EAAGR,WAAW,UAAvC,UACE,gBAAC6+C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImtD,GAAI,IAAvB,UACE,gBAAClP,GAAA,EAAD,CACEj/C,EAAG,IACHD,GAAI,CAAEI,QAAS,WAAYF,aAAc,GACzCkB,GAAI,EACJd,QAAQ,OACRC,WAAW,SALb,UAOE,eAAC8tD,GAAA,EAAD,CAAgBhuD,MAAM,UAAUL,GAAI,CAAEqI,GAAI,KAC1C,eAACo2C,GAAA,EAAD,CAAYv9C,QAAQ,UAApB,wDAKF,gBAACk+C,GAAA,EAAD,CAAMt+C,WAAS,EAACoX,eAAe,gBAAgBnX,QAAS,EAAxD,UACE,eAACq+C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,EAAGmjD,GAAI,EAAGC,GAAI,EAA7B,SACE,eAAC3a,GAAA,EAAD,CACE7nC,KAAK,cACLwE,MAAM,kBACNtL,KAAK,OACLiU,UAAU,KACVvI,MAAOA,EACPC,UAAQ,EACRlE,MAAO4gD,EAAUkL,YAAY9rD,MAC7BgE,MAAO48C,EAAUkL,YAAY9nD,MAC7BF,SAAWsmB,GACT62B,EAAiB,cAAe,CAC9BjhD,MAAOoqB,EAAQuc,OAAO3mC,MACtBgE,MAAO,SAKf,eAAC44C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,EAAGmjD,GAAI,EAAGC,GAAI,EAA7B,SACE,eAAC3a,GAAA,EAAD,CACE7nC,KAAK,cACLwE,MAAM,kBACNtL,KAAK,OACLiU,UAAU,KACVvI,MAAOA,EACPjE,MAAO4gD,EAAUmL,YAAY/rD,MAC7BgE,MAAO48C,EAAUmL,YAAY/nD,MAC7BE,UAAQ,EACRJ,SAAWsmB,GACT62B,EAAiB,cAAe,CAC9BjhD,MAAOoqB,EAAQuc,OAAO3mC,MACtBgE,MAAO,SAKf,eAAC44C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,EAAGmjD,GAAI,EAAGC,GAAI,EAA7B,SACE,eAAC,KAAD,CACExiD,KAAK,cACLwE,MAAM,eACNE,SAAS,QACTE,MAAOA,EACPC,UAAQ,EACRlE,MAAO4gD,EAAU36B,YAAYjmB,MAC7BgE,MAAO48C,EAAU36B,YAAYjiB,MAC7BF,SAAWsmB,GACT62B,EAAiB,cAAe,CAC9BjhD,MAAOoqB,EAAQuc,OAAO3mC,MACtBgE,MAAO,SAKf,eAAC44C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,EAAGmjD,GAAI,EAAGC,GAAI,EAA7B,SACE,eAAC3a,GAAA,EAAD,CACE7nC,KAAK,QACLwE,MAAM,SACNtL,KAAK,OACLiU,UAAU,KACVtI,UAAQ,EACRD,MAAOA,EACPjE,MAAO4gD,EAAU7wB,MAAM/vB,MACvBgE,MAAO48C,EAAU7wB,MAAM/rB,MACvBF,SAAWsmB,GACT62B,EAAiB,QAAS,CACxBjhD,MAAOoqB,EAAQuc,OAAO3mC,MACtBgE,MAAO,SAKf,eAAC44C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAA/B,SACE,gBAACmK,GAAA,EAAD,WACE,eAAC5J,GAAA,EAAD,CACEvjD,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,WACRb,MAAM,YACNI,QAAS7B,EANX,mBAWA,eAACgmD,GAAA,EAAD,CACEvjD,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,YACRb,MAAM,YACNI,QAxLak8C,UAC3B,IACE,MAAMrkD,EAAQ,CACZg2D,YAAalL,EAAUkL,YAAY9rD,OAAS,KAC5C+rD,YAAanL,EAAUmL,YAAY/rD,OAAS,KAC5C+vB,MAAO6wB,EAAU7wB,MAAM/vB,OAAS,KAChCimB,YAAa26B,EAAU36B,YAAYjmB,OAAS,MAGxCuiD,QAAiB6I,EAAet1D,GAAO0sD,SAE7CnI,EAASv5C,YAAmByhD,EAAShjD,UAErCshD,EAAa,CACXiL,YAAa,CAAE9rD,MAAO,GAAIgE,MAAO,IACjC+nD,YAAa,CAAE/rD,MAAO,GAAIgE,MAAO,IACjC+rB,MAAO,CAAE/vB,MAAO,GAAIgE,MAAO,IAC3BiiB,YAAa,CAAEjmB,MAAO,GAAIgE,MAAO,MAGnC,MAAOA,GAAQ,IAAD,IAEd,GAA0B,OAAtB,UAAAA,EAAMqR,YAAN,eAAYiI,QAAgB,CAAC,IAAD,EAC9B,MAAMmlC,EAAgB,IAAK7B,GAC3BvvC,OAAOkgB,KAAP,UAAYvtB,EAAMqR,YAAlB,aAAY,EAAYiI,QAAQvB,SAAShc,IACd,IAAD,EAApB0iD,EAAc1iD,KAChB0iD,EAAc1iD,GAAKiE,MAAnB,UAA2BA,EAAMqR,YAAjC,aAA2B,EAAYiI,OAAOvd,GAAK,OAIvD8gD,EAAa4B,GACbpI,EAASh5C,YAAiB,wCAGvB,GAA2B,OAAvB,UAAA2C,EAAMqR,YAAN,eAAY9V,SAAiB,CAAC,IAAD,EACpC86C,EAASh5C,YAAgB,UAAC2C,EAAMqR,YAAP,aAAC,EAAY9V,aAsJ5BR,QAASwsD,EAPX,+BAeR,eAAC3O,GAAA,EAAD,CAAMp+C,MAAI,EAACotD,GAAG,OAAd,SACE,eAAC9O,GAAA,EAAD,CAASmP,YAAY,eAEvB,gBAACrP,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImtD,GAAI,IAAvB,UACE,gBAAClP,GAAA,EAAD,CACEj/C,EAAG,IACHD,GAAI,CAAEI,QAAS,WAAYF,aAAc,GACzCkB,GAAI,EACJd,QAAQ,OACRC,WAAW,SALb,UAOE,eAAC8tD,GAAA,EAAD,CAAgBhuD,MAAM,UAAUL,GAAI,CAAEqI,GAAI,KAC1C,eAACo2C,GAAA,EAAD,CAAYv9C,QAAQ,UAApB,kEAIF,eAACk+C,GAAA,EAAD,CAAMt+C,WAAS,EAACoX,eAAe,WAAWnX,QAAS,EAAnD,SACE,eAACq+C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAf,SACE,eAACi+C,GAAA,EAAD,CACE5+C,QAAQ,OACR4X,eAAe,WACfupC,SAAS,OACTjhD,IAAK,IAJP,SAMGwtD,EAAa1pD,KAAKoqD,GACjB,eAAClK,GAAA,EAAD,CAAS/iD,MAAM,8BAA8BktD,OAAK,EAAlD,SACE,eAACnF,GAAA,EAAD,CACElyC,KAAMo3C,EAAQp3C,KACds3C,WAAYF,EAAQltD,WACfktD,EAAQltD,QACT,CAAEqtD,SAAU,KAAMC,OAvLjB9sD,EAuLiC0sD,EAAQlsD,WAtLhEusD,UAAUC,UAAUC,UAAUjtD,GAAMirD,MAAK,KACvCpQ,EACEv5C,YAAoB,wBAAuB0qD,EAAa,GAAGxrD,aAHxCR,QAwLD,GACJ3B,MAAM,YACNlB,KAAK,QACLkH,MAAM,gBACNrG,GAAI,CACFC,EAAG,aACHE,SAAU,UACV+uD,cAAe,yBC5MxBC,OAlES,KACtB,MAAMrM,EAAmB,CACvBwL,YAAa,CAAE9rD,MAAO,GAAIgE,MAAO,IACjC+nD,YAAa,CAAE/rD,MAAO,GAAIgE,MAAO,IACjC+rB,MAAO,CAAE/vB,MAAO,GAAIgE,MAAO,IAC3BiiB,YAAa,CAAEjmB,MAAO,GAAIgE,MAAO,IACjC4oD,QAAS,CAAE5sD,MAAO,GAAIgE,MAAO,MAExB48C,EAAWC,GAAgBl0C,mBAAS2zC,IAEpCuM,EAAmBC,GAAwBngD,oBAAS,GAW3D,OACE,qCACE,eAACiwC,GAAA,EAAD,CAAMt+C,WAAS,EAAf,SACE,gBAACs+C,GAAA,EAAD,CAAMp+C,MAAI,EAAV,UACE,eAAC69C,GAAA,EAAD,CACED,UAAU,SACVn+C,QAfsB,KAC9B4iD,EAAaP,GACbwM,GAAqB,IAcbtvD,GAAI,CAAEG,SAAU,GAAIknD,UAAW,SAAUllB,WAAY,QACrD9hC,MAAM,YAJR,SAME,gBAAC6+C,GAAA,EAAD,CAAKl/C,GAAI,CAAEM,QAAS,OAAQC,WAAY,UAAxC,UAEE,eAACk+C,GAAA,EAAD,CACEG,UAAU,OACV19C,QAAQ,KACRlB,GAAI,CACFmiC,WAAY,IACZ5hC,WAAY,SACZqM,YAAa,QANjB,4CAYA,eAACsyC,GAAA,EAAD,CAAKN,UAAU,OAAO5+C,GAAI,CAAEM,QAAS,CAAEW,GAAI,OAAQojD,GAAI,QAASh8C,GAAG,GAAKknD,SAAU,GAAlF,SACI,eAAC,KAAD,WAMR,eAAC,GAAD,CACE5wD,UAAW0wD,EACXzwD,QArCuB,KAC/B0wD,GAAqB,IAqCb1R,MAAM,QACNjxC,OAAO,QACPy2C,UAAWA,EACXC,aAAcA,Y,mBCbXmM,OA7CM,IAAyB,IAAxB,eAAEC,GAAqB,EAEzC,MAAQ9wD,EAAW+wD,GAAiBvgD,oBAAS,GAEvCwgD,EAAU,IAAIC,KAMdhJ,EAAc,KAJC,IAACrkD,EAAKC,EAALD,EAKL6mB,IAAOoI,eAAeC,WALZjvB,EAKwB,OAJ/CmtD,EAAQE,IAAIttD,EAAKC,EAAO,CAAEstD,OAAQ,IAASC,KAAM,IAAKC,UAAU,IAKhEN,GAAa,GAEbD,KAQJ,OALAv6C,qBAAU,QAGP,IAGC,eAACxW,GAAA,EAAD,CACIC,UAAWA,EACXC,QAASgoD,EACT/nD,aAAa,WACbC,aACI,qCACKsqB,IAAOoI,eAAezvB,QAAQuC,KAAI,CAAC2rD,EAAK1mC,IACrC,eAACk1B,GAAA,EAAD,CAAwBv9C,QAAQ,QAAQ8gC,wBAAyB,CAAEC,OAAQguB,IAA1D1mC,OAI7BxqB,aAAa,cACbC,WAAW,EACXO,qBAAqB,EACrBN,UAAW2nD,EACXjnD,UAAW,eAACuwD,GAAA,EAAD,IACX/wD,KAAK,QC4CFgxD,OApEA,IAAiC,IAAhC,uBAAEC,GAA6B,EAC3C,MAAM3pD,EAAQuC,gBACNkjD,EAAemE,GAAqBlhD,oBAAS,GAErD,OACI,uCAEI,gBAAC+vC,GAAA,EAAD,CACIl/C,GAAI,CACA49C,MAAO,IACPt9C,QAAS,OACT,CAACmG,EAAMmiD,YAAYC,KAAK,OAAQ,CAC5BjL,MAAO,SALnB,UASI,eAACsB,GAAA,EAAD,CAAKN,UAAU,OAAO5+C,GAAI,CAAEM,QAAS,CAAEW,GAAI,OAAQojD,GAAI,SAAWkL,SAAU,GAA5E,SACI,eAAC,GAAD,MAEJ,eAAC/K,GAAA,EAAD,CAAS/iD,MAAM,yBAAyBpI,GAAG,eAA3C,SACA,eAACmmD,GAAA,EAAD,CAAY,aAAW,sBAAsB/+C,QAAS2vD,EAAwBpwD,GAAI,CAAEE,aAAc,OAAQ2hD,SAAU,UAApH,SACI,eAAC6H,GAAA,EAAD,CACIxoD,QAAQ,UACRlB,GAAI,CACA1D,WAAY,sBACZ8M,WAAmC,SAAvB3C,EAAMyC,QAAQC,KAAkB1C,EAAMyC,QAAQL,UAAU+4B,KAAOn7B,EAAMyC,QAAQL,UAAUi5B,MACnGzhC,MAA8B,SAAvBoG,EAAMyC,QAAQC,KAAkB1C,EAAMyC,QAAQL,UAAUi5B,MAAOr7B,EAAMyC,QAAQL,UAAU+4B,KAC9Fgc,MAAO,OACPjxC,OAAQ,OACR,UAAW,CACPvD,WAAmC,SAAvB3C,EAAMyC,QAAQC,KAAkB1C,EAAMyC,QAAQL,UAAUi5B,MAAQr7B,EAAMyC,QAAQL,UAAU+4B,KACpGvhC,MAA8B,SAAvBoG,EAAMyC,QAAQC,KAAkB1C,EAAMyC,QAAQL,UAAU+4B,KAAMn7B,EAAMyC,QAAQL,UAAUi5B,QAIrGzhC,MAAM,UACNiuB,SAAU,EAfd,SAiBI,eAACgiC,GAAA,EAAD,CAAUnwD,SAAS,mBAS/B,eAAC++C,GAAA,EAAD,CAAKl/C,GAAI,CAAEuvD,SAAU,KACrB,eAACrQ,GAAA,EAAD,CAAKG,GAAI,EAAT,SACI,eAAC,GAAD,MAEJ,eAACH,GAAA,EAAD,CAAKl/C,GAAI,CAAEuvD,SAAU,KAMrB,eAAC,GAAD,CAAcE,eAAgB,KAAQY,GAAiB,MACvD,eAAC,GAAD,CAAuBnE,cAAeA,IACtC,eAAC,GAAD,Q,+BC9EL,MAAM9O,GAAQ,CACjBmT,kBACAC,aACAC,4BAwCWC,OArCC,CACZr3D,GAAI,UACJoI,MAAO,oBACP1G,KAAM,QACN+oC,MAAO,CAAC,OAAQ,UAAW,SAAU,aAAc,QAAS,OAAQ,QAAS,aAAc,MAC3Ft/B,UAAU,EACV1J,SAAU,CACN,CACIzB,GAAI,uBACJoI,MAAO,yBACP1G,KAAM,OACNxC,IAAK,4BACL+e,KAAM,UACNynC,aAAa,EACbjb,MAAO,CAAC,OAAQ,UAAW,SAAU,aAAc,OAAQ,QAAS,QAAS,QAAS,aAAc,OAExG,CACIzqC,GAAI,2BACJoI,MAAO,6BACP1G,KAAM,OACNxC,IAAK,gCACL+e,KAAM,eACNynC,aAAa,EACbjb,MAAO,CAAC,OAAQ,OAAQ,QAAS,QAAS,aAAc,OAE5D,CACIzqC,GAAI,+BACJoI,MAAO,iCACP1G,KAAM,OACNxC,IAAK,oCACL+e,KAAM,wBACNynC,aAAa,EACbjb,MAAO,CAAC,OAAQ,OAAQ,QAAS,QAAS,aAAc,SCtC7D,MAAMsZ,GAAQ,CACjBuT,eACAC,uBA4EWC,OAzEQ,CACnBx3D,GAAI,iBACJoI,MAAO,2BACP1G,KAAM,QACN+oC,MAAO,CAAC,QAAS,aAAc,KAAM,SACrCt/B,UAAU,EACV1J,SAAU,CACN,CACIzB,GAAI,gCACJoI,MAAO,2BACP1G,KAAM,OACNxC,IAAK,6BACL+e,KAAM,YACNynC,aAAa,EACbjb,MAAO,CAAC,QAAS,aAAc,OAEnC,CACIzqC,GAAI,qCACJoI,MAAO,gCACP1G,KAAM,OACNxC,IAAK,kCACL+e,KAAM,YACNynC,aAAa,EACbjb,MAAO,CAAC,QAAS,aAAc,OAEnC,CACIzqC,GAAI,0CACJoI,MAAO,qCACP1G,KAAM,OACNxC,IAAK,uCACL+e,KAAM,YACNynC,aAAa,EACbjb,MAAO,CAAC,QAAS,aAAc,OAEnC,CACIzqC,GAAI,+BACJoI,MAAO,2BACP1G,KAAM,OACNxC,IAAK,4BACL+e,KAAM,YACNynC,aAAa,EACbjb,MAAO,CAAC,QAAS,aAAc,KAAM,UAEzC,CACIzqC,GAAI,iCACJoI,MAAO,6BACP1G,KAAM,OACNxC,IAAK,8BACL+e,KAAM,YACNynC,aAAa,EACbjb,MAAO,CAAC,QAAS,eAErB,CACIzqC,GAAI,iCACJoI,MAAO,6BACP1G,KAAM,OACNxC,IAAK,8BACL+e,KAAM,YACNynC,aAAa,EACbjb,MAAO,CAAC,QAAS,iBChEtB,MAAMsZ,GAAQ,CACjB0T,eACAC,iBA+BWt2C,OA5BK,CAChBphB,GAAI,eACJoI,MAAO,4BACP1G,KAAM,QACN+oC,MAAO,CAAC,OAAQ,UAAW,SAAU,aAAc,QAAS,OAAQ,QAAS,aAAc,MAC3Ft/B,UAAU,EACV1J,SAAU,CACN,CACIzB,GAAI,oBACJoI,MAAO,yBACP1G,KAAM,OACNxC,IAAK,yBACL+e,KAAM,YACNynC,aAAa,EACbjb,MAAO,CAAC,OAAQ,UAAW,SAAU,aAAc,QAAS,OAAQ,QAAS,aAAc,OAE/F,CACIzqC,GAAI,uBACJoI,MAAO,4BACP1G,KAAM,OACNxC,IAAK,4BACL+e,KAAM,aACNynC,aAAa,EACbjb,MAAO,CAAC,OAAQ,UAAW,SAAU,aAAc,QAAS,OAAQ,QAAS,aAAc,SClBhG,MAAMsZ,GAAQ,CACjB4T,kBACAC,iBACAC,YACAC,uBACAC,eACAC,aACAC,kBACAC,eACAC,wBA4IWC,OAzIM,CACjBp4D,GAAI,gBACJoI,MAAO,0BACP1G,KAAM,QACN+oC,MAAO,CAAC,OAAQ,UAAW,SAAU,aAAc,QAAS,OAAQ,QAAS,aAAc,MAC3Ft/B,UAAU,EACV1J,SAAU,CACN,CACIzB,GAAI,oBACJoI,MAAO,8BACP1G,KAAM,OACNxC,IAAK,gCACL+e,KAAM,eACNynC,aAAa,EACbjb,MAAO,CAAC,aAEZ,CACIzqC,GAAI,aACJoI,MAAO,uBACP1G,KAAM,OACNxC,IAAK,4BACL+e,KAAM,eACNynC,aAAa,EACbjb,MAAO,CAAC,aAEZ,CACIzqC,GAAI,UACJoI,MAAO,oBACP1G,KAAM,OACNxC,IAAK,yBACL+e,KAAM,cACNynC,aAAa,EACbjb,MAAO,CAAC,aAEZ,CACIzqC,GAAI,cACJoI,MAAO,wBACP1G,KAAM,OACNxC,IAAK,6BACL+e,KAAM,SACNynC,aAAa,EACbjb,MAAO,CAAC,aAEZ,CACIzqC,GAAI,UACJoI,MAAO,oBACP1G,KAAM,OACNxC,IAAK,yBACL+e,KAAM,oBACNynC,aAAa,EACbjb,MAAO,CAAC,aAoBZ,CACIzqC,GAAI,uBACJoI,MAAO,8BACP1G,KAAM,OACNxC,IAAK,mCACL+e,KAAM,eACNynC,aAAa,EACbjb,MAAO,CAAC,iBAEZ,CACIzqC,GAAI,aACJoI,MAAO,oBACP1G,KAAM,OACNxC,IAAK,yBACL+e,KAAM,cACNynC,aAAa,EACbjb,MAAO,CAAC,iBAEZ,CACIzqC,GAAI,iBACJoI,MAAO,wBACP1G,KAAM,OACNxC,IAAK,8BACL+e,KAAM,SACNynC,aAAa,EACbjb,MAAO,CAAC,iBAEZ,CACIzqC,GAAI,aACJoI,MAAO,oBACP1G,KAAM,OACNxC,IAAK,yBACL+e,KAAM,oBACNynC,aAAa,EACbjb,MAAO,CAAC,iBAYZ,CACIzqC,GAAI,YACJoI,MAAO,sBACP1G,KAAM,OACNxC,IAAK,2BACL+e,KAAM,UACNynC,aAAa,EACbjb,MAAO,CAAC,OAAQ,UAAW,SAAU,aAAc,QAAS,OAAQ,QAAS,aAAc,OAE/F,CACIzqC,GAAI,2BACJoI,MAAO,qCACP1G,KAAM,OACNxC,IAAK,0CACL+e,KAAM,YACNynC,aAAa,EACbjb,MAAO,CAAC,WAAY,MAAO,QAAS,QAAS,iBCjJrDktB,KACAC,KACAC,KACAC,KACAC,KACAC,KACAC,KCfG,MAAMlU,GAAQ,CACjBsU,kBACAC,iBACAf,sBACAgB,oBACAC,iBACAC,0BA0DWjvD,OAvDW,CACtBxJ,GAAI,qBACJoI,MAAO,+BACP1G,KAAM,QACN+oC,MAAO,CAAC,OAAQ,UAAW,SAAU,aAAc,QAAS,OAAQ,QAAS,aAAc,MAC3Ft/B,UAAU,EACV1J,SAAU,CACN,CACIzB,GAAI,UACJoI,MAAO,oBACP1G,KAAM,OACNxC,IAAK,kCACL+e,KAAM,eACNynC,aAAa,EACbjb,MAAO,CAAC,OAAQ,UAAW,SAAU,aAAc,QAAS,OAAQ,QAAS,aAAc,OAE/F,CACIzqC,GAAI,WACJoI,MAAO,qBACP1G,KAAM,OACNxC,IAAK,mCACL+e,KAAM,cACNynC,aAAa,EACbjb,MAAO,CAAC,OAAQ,UAAW,SAAU,aAAc,QAAS,OAAQ,QAAS,aAAc,OAE/F,CACIzqC,GAAI,mBACJoI,MAAO,sBACP1G,KAAM,OACNxC,IAAK,oCACL+e,KAAM,cACNynC,aAAa,EACbjb,MAAO,CAAC,OAAQ,UAAW,SAAU,aAAc,QAAS,OAAQ,QAAS,aAAc,OAE/F,CACIzqC,GAAI,uBACJoI,MAAO,0BACP1G,KAAM,OACNxC,IAAK,wCACL+e,KAAM,sBACNynC,aAAa,EACbjb,MAAO,CAAC,OAAQ,UAAW,SAAU,aAAc,QAAS,OAAQ,QAAS,aAAc,OAE/F,CACIzqC,GAAI,gBACJoI,MAAO,0BACP1G,KAAM,OACNxC,IAAK,wCACL+e,KAAM,iBACNynC,aAAa,EACbjb,MAAO,CAAC,OAAQ,UAAW,SAAU,aAAc,QAAS,OAAQ,QAAS,aAAc,SC3DhG,MAAMsZ,GAAQ,CACjB2U,gBAsBWC,OAnBQ,CACnB34D,GAAI,kBACJ0B,KAAM,QACN0G,MAAO,4BACPqiC,MAAO,CAAC,OAAQ,UAAW,SAAU,aAAc,QAAS,OAAQ,QAAS,aAAc,MAC3Ft/B,UAAU,GCLP,MAAM44C,GAAQ,CACjB6U,eACAC,iBACAC,yBCFAF,KACAC,KACAC,KCCJ,MAYaC,GAAY,IAClBC,MACAC,MACAC,MACAC,MACAC,MACAC,MACAC,IAGQC,OAtBG,CACdhwD,MAAO,CACHiuD,GACAH,GACAj2C,GACAg3C,GACA5uD,GACAmvD,GDLgB,CACpB34D,GAAI,oBACJoI,MAAO,2BACP1G,KAAM,QACN+oC,MAAO,CAAC,OAAQ,UAAW,SAAU,aAAc,QAAS,OAAQ,QAAS,aAAc,MAC3Ft/B,UAAU,K,UE0GCquD,OAxGC,IAAsB,IAAD,MAApB,KAAE7xD,EAAF,MAAQ8xD,GAAY,EAEjC,MAAM,EAAEnsD,GAAMC,eACRH,EAAQuC,eACR6zC,EAAWgG,cACXnL,EAAgBvhB,aAAa5yB,GAAUA,EAAMm0C,gBAC7Cqb,EAAYC,aAAcvsD,EAAMmiD,YAAYC,KAAK,QACjD,cAAEjyC,GAAkBhC,eAEpBq+C,EAAOb,GAAUpxD,EAAKsW,MAEtB47C,GAAe,OAAJlyD,QAAI,IAAJA,OAAA,EAAAA,EAAMsW,MACnB,eAAC27C,EAAD,CAAM9U,OAAQ,IAAKh/C,KAAK,OAExB,eAAC,KAAD,CACIa,GAAI,CACA49C,MAAOlG,EAAcz1C,OAAO+3B,WAAW3gC,GAAOA,KAAE,OAAK2H,QAAL,IAAKA,OAAL,EAAKA,EAAM3H,OAAO,EAAI,EAAI,EAC1EsT,OAAQ+qC,EAAcz1C,OAAO+3B,WAAW3gC,GAAOA,KAAE,OAAK2H,QAAL,IAAKA,OAAL,EAAKA,EAAM3H,OAAO,EAAI,EAAI,GAE/E8G,SAAU2yD,EAAQ,EAAI,UAAY,WAI1C,IAAIK,EAAa,QACbnyD,EAAKmoC,SACLgqB,EAAa,UAGjB,MAAMC,EAAO,UAAGx8C,EAAc5V,EAAK3H,WAAtB,QAA6B2H,EAAKzI,IAE/C,IAAI86D,EAAgB,CAChBzU,UAAWhkD,sBAAW,CAACwM,EAAOvM,IAAQ,eAAC,IAAD,CAAMA,IAAKA,KAASuM,EAAO03C,GAAK,GAAE11B,IAAO+G,WAAWijC,IAAWjqB,OAAQgqB,QAEjH,OAAInyD,QAAJ,IAAIA,OAAJ,EAAIA,EAAMsyD,YACND,EAAgB,CAAEzU,UAAW,IAAKrH,KAAM6b,EAASjqB,OAAQgqB,IAoB7D,OAXAj+C,qBAAU,KACemtB,SAAS/sB,SAASiB,SAClCgH,WACAxH,MAAM,KACNikB,WAAW3gC,GAAOA,IAAO2H,EAAK3H,MACf,GAChBwjD,EAAS,CAAE9hD,KAAM42C,EAAWt4C,GAAI2H,EAAK3H,OAG1C,IAGC,gBAACyvD,GAAA,EAAD,IACQuK,EACJlnD,SAAUnL,EAAKmL,SACfnM,GAAI,CACAE,aAAe,GAAEw3C,EAAcx3C,iBAC/BkB,GAAI,GACJb,WAAY,aACZshC,gBAAiBixB,EAAQ,EAAI,yBAA2B,UACxDS,GAAIT,EAAQ,EAAI,EAAI,KACpB3T,GAAe,GAAR2T,EAAF,KACLzyD,MAAO,SAGX0oD,SAAUrR,EAAcz1C,OAAO+3B,WAAW3gC,GAAOA,IAAO2H,EAAK3H,MAAO,EACpEoH,QAAS,KAAM+yD,OAhCFn6D,EAgCc2H,EAAK3H,GA/BpCwjD,EAAS,CAAE9hD,KAAM42C,EAAWt4C,YACxB05D,GAAWlW,EAAS,CAAE9hD,KAAM22C,EAAUY,QAAQ,KAFjCj5C,OAkBjB,UAgBI,eAAC2vD,GAAA,EAAD,CAAchpD,GAAI,CAAEyzD,GAAI,OAAQ9K,UAAU,OAAC3nD,QAAD,IAACA,OAAD,EAACA,EAAMsW,MAAY,GAAL,GAASjX,MAAO,SAAxE,SAAoF6yD,IACpF,eAACjK,GAAA,EAAD,CACI3/C,QACI,eAACm1C,GAAA,EAAD,CAAYv9C,QAASw2C,EAAcz1C,OAAO+3B,WAAW3gC,GAAOA,IAAO2H,EAAK3H,MAAO,EAAI,KAAO,QAASgH,MAAM,UAAzG,SACKsG,EAAE3F,EAAKS,SAGhBoH,UACI7H,EAAK0yD,SACD,eAACjV,GAAA,EAAD,CAAYv9C,QAAQ,UAAUlB,GAAI,IAAKyG,EAAMc,WAAWosD,gBAAkBrzD,QAAQ,QAAQszD,cAAY,EAAtG,SACKjtD,EAAE3F,EAAK0yD,aAKvB1yD,EAAK6yD,MACF,eAACrK,GAAA,EAAD,CACInpD,MAAOW,EAAK6yD,KAAKxzD,MACjBa,QAASF,EAAK6yD,KAAK3yD,QACnB/B,KAAM6B,EAAK6yD,KAAK10D,KAChBkH,MAAOrF,EAAK6yD,KAAKxtD,MACjBytD,OAAQ9yD,EAAK6yD,KAAKC,QAAU,eAACpK,GAAA,EAAD,UAAS1oD,EAAK6yD,KAAKC,eC/FnE,MAAMC,GAAc,IAAsB,IAAD,MAApB,KAAE/V,EAAF,MAAQ8U,GAAY,EAErC,MAAM,EAAEnsD,GAAMC,eACRH,EAAQuC,eACR0uC,EAAgBvhB,aAAa5yB,GAAUA,EAAMm0C,iBAE5C73C,EAAMsmD,GAAWh3C,oBAAS,IAC1B45C,EAAUiL,GAAe7kD,mBAAS,MAQnC8kD,EAAK,UAAGjW,EAAKljD,gBAAR,aAAG,EAAewJ,KAAKtD,IAC9B,OAAQA,EAAKjG,MACT,IAAK,WACD,OAAO,eAACg5D,GAAD,CAA2B/V,KAAMh9C,EAAM8xD,MAAOA,EAAQ,GAApC9xD,EAAK3H,IAClC,IAAK,OACD,OAAO,eAAC,GAAD,CAAuB2H,KAAMA,EAAM8xD,MAAOA,EAAQ,GAApC9xD,EAAK3H,IAC9B,QACI,OACI,eAAColD,GAAA,EAAD,CAA0Bv9C,QAAQ,KAAKb,MAAM,QAAQ6zD,MAAM,SAA3D,6BAAiBlzD,EAAK3H,QAOhC45D,EAAOjV,EAAK1mC,KACZ68C,EAAWnW,EAAK1mC,KAClB,eAAC27C,EAAD,CAAMmB,YAAa,IAAKj1D,KAAK,KAAK4Y,MAAO,CAAE4lC,UAAW,OAAQzb,aAAc,UAE5E,eAAC,KAAD,CACIliC,GAAI,CACA49C,MAAOmL,IAAa/K,EAAK3kD,GAAK,EAAI,EAClCsT,OAAQo8C,IAAa/K,EAAK3kD,GAAK,EAAI,GAEvC8G,SAAU2yD,EAAQ,EAAI,UAAY,WAI1C,OACI,uCACI,gBAAChK,GAAA,EAAD,CACI9oD,GAAI,CACAE,aAAe,GAAEw3C,EAAcx3C,iBAC/BkB,GAAI,GACJb,WAAY,aACZshC,gBAAiBixB,EAAQ,EAAI,yBAA2B,UACxDS,GAAIT,EAAQ,EAAI,EAAI,KACpB3T,GAAe,GAAR2T,EAAF,MAET/J,SAAUA,IAAa/K,EAAK3kD,GAC5BoH,QA9CQ,KAChB0lD,GAAStmD,GACTm0D,EAAajL,EAAqB,KAAV/K,EAAK3kD,KAkCzB,UAYI,eAAC2vD,GAAA,EAAD,CAAchpD,GAAI,CAAEyzD,GAAI,OAAQ9K,SAAW3K,EAAK1mC,KAAY,GAAL,IAAvD,SAAmE68C,IACnE,eAAClL,GAAA,EAAD,CACI3/C,QACI,eAACm1C,GAAA,EAAD,CAAYv9C,QAAS6nD,IAAa/K,EAAK3kD,GAAK,KAAO,QAASgH,MAAM,UAAUL,GAAI,CAAEyzD,GAAI,QAAtF,SACK9sD,EAAEq3C,EAAKv8C,SAGhBoH,UACIm1C,EAAK0V,SACD,eAACjV,GAAA,EAAD,CAAYv9C,QAAQ,UAAUlB,GAAI,IAAKyG,EAAMc,WAAWosD,gBAAkBrzD,QAAQ,QAAQszD,cAAY,EAAtG,SACKjtD,EAAEq3C,EAAK0V,aAKvB7zD,EACG,eAAC,KAAD,CAAes+C,OAAQ,IAAKh/C,KAAK,KAAK4Y,MAAO,CAAE4lC,UAAW,OAAQzb,aAAc,UAEhF,eAAC,KAAD,CAAiBic,OAAQ,IAAKh/C,KAAK,KAAK4Y,MAAO,CAAE4lC,UAAW,OAAQzb,aAAc,aAG1F,eAAC+d,GAAA,EAAD,CAAUiI,GAAIroD,EAAM+wB,QAAQ,OAAOs4B,eAAa,EAAhD,SACI,eAACR,GAAA,EAAD,CACI9J,UAAU,MACVyV,gBAAc,EACdr0D,GAAI,CACAU,SAAU,WACV,UAAW,CACP+H,QAAS,KACT/H,SAAU,WACVgrD,KAAM,OACN9qD,IAAK,EACL+L,OAAQ,OACRixC,MAAO,MACP0W,QAAS,EACTlrD,WAAY3C,EAAMyC,QAAQI,QAAQw4B,QAb9C,SAiBKmyB,UAYNF,UCwCAQ,OA1IE,IAAe,IAAD,MAAb,KAAEvzD,GAAW,EAE3B,MAAM,EAAE2F,GAAMC,eACRi2C,EAAWgG,eACX,UAAEngD,GAAcyzB,aAAY5yB,GAASA,EAAMu0C,cAC3CJ,EAAgBvhB,aAAa5yB,GAAUA,EAAMm0C,gBAC7C2N,EAAWC,cAEjB,IAAIM,EAAY,GAEZzoC,MAAM0oC,QAAQnjD,EAAUojD,MACxBF,EAAYljD,EAAUojD,KAAKxhD,KAAI9B,GAASA,EAAMgyD,gBAG9C5O,EAAUlnC,KAAKhc,EAAUojD,KAAK0O,eAGlC,MAAOzL,EAAUiL,GAAe7kD,mBAAS,MAEnCglD,EACF,eAAC,KAAD,CACIn0D,GAAI,CACA49C,MAAOmL,IAAa/nD,EAAK3H,GAAK,EAAI,EAClCsT,OAAQo8C,IAAa/nD,EAAK3H,GAAK,EAAI,GAGvC8G,SAAS,YAmBXyC,EAAK,UAAG5B,EAAKlG,gBAAR,aAAG,EAAewJ,KAAK05C,IAC9B,OAAQA,EAAKjjD,MACT,IAAK,WAED,OAAI6qD,EAAUjnC,QAAO5iB,GAAKiiD,EAAKla,MAAMjN,SAAS96B,KAAIqa,OAAS,EAChD,eAAC,GAAD,CAA2B4nC,KAAMA,EAAM8U,MAAO,GAA5B9U,EAAK3kD,IAEvB,KAEf,IAAK,OAED,OAAIusD,EAAUjnC,QAAO5iB,GAAKiiD,EAAKla,MAAMjN,SAAS96B,KAAIqa,OAAS,EAChD,eAAC,GAAD,CAAuBpV,KAAMg9C,EAAM8U,MAAO,GAA5B9U,EAAK3kD,IAEnB,KAEf,QACI,OACI,eAAColD,GAAA,EAAD,CAA0Bv9C,QAAQ,KAAKb,MAAM,QAAQ6zD,MAAM,SAA3D,6BAAiBlW,EAAK3kD,QAOtC,OACI,uCACE,gBAACyvD,GAAA,EAAD,CACM9oD,GAAI,CACAE,aAAe,GAAEw3C,EAAcx3C,iBAC/BkB,GAAI,GACJb,WAAY,aAEZshC,gBAAiB,yBACjB0xB,GAAI,EACJpU,GAAK,MACL9+C,MAAO,SAGXI,QAtDQ,KAChBuzD,EAAajL,EAAqB,KAAV/nD,EAAK3H,IAEb,oBAAZ2H,EAAK3H,GACLgsD,EAAS,yBACQ,sBAAZrkD,EAAK3H,GACVgsD,EAAS,wBAGTxI,EAASz4C,YAAapD,EAAK3H,MAiC7B,UAcM,eAAC2vD,GAAA,EAAD,CAAchpD,GAAI,CAAEyzD,GAAI,OAAQ9K,SAAW3nD,EAAKsW,KAAY,GAAL,GAASjX,MAAO,SAAvE,SAAmF8zD,IACnF,eAAClL,GAAA,EAAD,CACI3/C,QACI,eAACm1C,GAAA,EAAD,CAAYv9C,QAAS6nD,IAAa/nD,EAAK3H,GAAK,KAAO,QAASgH,MAAM,UAAUL,GAAI,CAAEyzD,GAAI,QAAtF,SACK9sD,EAAE3F,EAAKS,WAIP,oBAAZT,EAAK3H,IAAwC,sBAAZ2H,EAAK3H,KACnC2H,EAAKwD,SACD,eAAC,KAAD,CAAe25C,OAAQ,IAAKh/C,KAAK,KAAK4Y,MAAO,CAAE4lC,UAAW,OAAQzb,aAAc,UAEhF,eAAC,KAAD,CAAiBic,OAAQ,IAAKh/C,KAAK,KAAK4Y,MAAO,CAAE4lC,UAAW,OAAQzb,aAAc,cAK9F,eAAC+d,GAAA,EAAD,CAAUiI,GAAIlnD,EAAKwD,SAAUosB,QAAQ,OAAOs4B,eAAa,EAAzD,SACI,eAACR,GAAA,EAAD,CACI9J,UAAU,MACVyV,gBAAc,EAFlB,SAIKzxD,MAqBT,eAAC08C,GAAA,EAAD,CAASt/C,GAAI,CAAEmB,GAAI,IAAMC,GAAI,YCzF1BqzD,OAvDE,KAEb,MAAM5X,EAAWgG,eACX,UAAEngD,EAAF,SAAaC,GAAawzB,aAAY5yB,GAASA,EAAMu0C,cAE3D,IAAI8N,EAAY,GAEhB1wC,qBAAU,KAEwB,IAA1BvS,EAASC,MAAMwT,QACfymC,EAAS14C,YAAc8vD,OAI5B,IAEC92C,MAAM0oC,QAAQnjD,EAAUojD,MACxBF,EAAYljD,EAAUojD,KAAKxhD,KAAI9B,GAASA,EAAMgyD,gBAG9C5O,EAAUlnC,KAAKhc,EAAUojD,KAAK0O,eAGlC,MAAME,EAAW/xD,EAASC,MAAM0B,KAAKtD,IACjC,OAAQA,EAAKjG,MACT,IAAK,QAED,OAAI6qD,EAAUjnC,QAAO5iB,GAAKiF,EAAK8iC,MAAMjN,SAAS96B,KAAIqa,OAAS,EAChD,eAACu+C,GAAD,CAA0B3zD,KAAMA,GAAfA,EAAK3H,IAEtB,KAEf,IAAK,OACD,OAAIusD,EAAUjnC,QAAO5iB,GAAKiF,EAAK8iC,MAAMjN,SAAS96B,KAAIqa,OAAS,EAEnD,uCACI,eAAC,GAAD,CAAuBpV,KAAMA,EAAM8xD,MAAO,GAA5B9xD,EAAK3H,IACnB,eAACimD,GAAA,EAAD,OAID,KAEf,QACI,OACI,eAACb,GAAA,EAAD,CAA0Bv9C,QAAQ,KAAKb,MAAM,QAAQ6zD,MAAM,SAA3D,6BAAiBlzD,EAAK3H,QAOtC,OAAO,sBAAK0e,MAAO,CAAE1X,MAAO,SAArB,SAAiCq0D,K,SC8B7BE,OA5EC,IAA2C,IAA1C,WAAEtI,EAAF,aAAcuI,EAAd,OAA4Bx/C,GAAa,EAEtD,MAAM5O,EAAQuC,eACR8rD,EAAY9B,aAAcvsD,EAAMmiD,YAAYmM,GAAG,OAC/Cz/C,EAAWugB,cACXm/B,EAAyB,CAAC,CAAEjF,KAAO,IAAG/6C,oBACtCxa,EAAQy6D,YAAYD,EAAwB1/C,GAE5C4/C,EACF,uCACI,eAAChW,GAAA,EAAD,CAAKl/C,GAAI,CAAEM,QAAS,CAAEW,GAAI,QAASojD,GAAI,SAAvC,SACI,eAACnF,GAAA,EAAD,CAAKl/C,GAAI,CAAEM,QAAS,OAAQL,EAAG,EAAGk1D,GAAI,QAAtC,SACI,eAAC,GAAD,QAGR,eAAC,eAAD,UACI,eAAC,KAAD,CACIvW,UAAU,MACV7mC,MAAO,CACHq9C,YAAa,OACbh9C,aAAc,OACd/X,MAAO,QACPs9C,UAAWnjD,EAAQ,OAAS,MAEhCnB,GAAG,aARP,SAUI,eAAC,GAAD,QAGR,eAAC,cAAD,UACI,eAAC6lD,GAAA,EAAD,CAAKl/C,GAAI,CAAEq1D,GAAI,GAAf,SACI,eAAC,GAAD,WAMVv0D,OAAuBtE,IAAX6Y,EAAuB,IAAMA,EAAOgtB,SAASlpC,UAAOqD,EAEtE,OACI,eAAC0iD,GAAA,EAAD,CAAKN,UAAU,MAAM5+C,GAAI,CAAEs1D,WAAY,CAAEjR,GAAI,GAAKzG,MAAOkX,EAAYS,KAAc,QAAU,aAAW,kBAAxG,SACI,eAAClK,GAAA,EAAD,CACIhyD,GAAG,WACHyH,UAAWA,EACXI,QAAS4zD,EAAY,aAAe,YACpCxJ,OAAO,OACPzrD,KAAMysD,EACN1tD,QAASi2D,EACT70D,GAAI,CACA,qBAAsB,CAClB49C,MAAO2X,KAEPnsD,WAAmC,SAAvB3C,EAAMyC,QAAQC,KAAkB1C,EAAMyC,QAAQE,WAAWC,QAAW,kDAChFb,UAAW,2BACXgtD,YAAa,OACb,CAAC/uD,EAAMmiD,YAAYmM,GAAG,OAAQ,CAC1Bn0D,IAAK,QAEToX,OAAQ,MAGhBy9C,WAAY,CAAEC,aAAa,GAC3Br1D,MAAM,UArBV,SAuBK60D,O,6GCkTFS,OA7SO,KAClB,MAAOC,EAAaC,GAAkB1mD,mBAAShR,aAAaC,QAAQ,eAC9DqI,EAAQuC,eACR6zC,EAAWgG,cACXnL,EAAgBvhB,aAAa5yB,GAAUA,EAAMm0C,gBAE7Coe,EAAe,CAACvzD,EAAKC,MACP,IAAIotD,MACZC,IAAIttD,EAAKC,EAAO,CAAEstD,OAAQ,IAASC,KAAM,IAAKC,UAAU,KAE7D+F,EAAgB,IAAIC,IAAI,CAC3B,CAAE,uBAAuB,SACzB,CAAE,wBAAwB,WAC1B,CAAE,uBAAuB,aAItBn2D,EAAMsmD,GAAWh3C,oBAAS,GAC3Bs3C,EAAe,KACjBN,GAAStmD,KAINuyC,EAAS6jB,GAAc9mD,mBAASuoC,EAActF,SAgBvB,IAAD,IAEtB,KAVPl9B,qBAAU,KACP,MAAMy6C,EAAU,IAAIC,UACYpzD,IAA7BmzD,EAAQn6C,IAAI,cACVygD,EAAWtG,EAAQn6C,IAAI,cAE3BqnC,EAAS,CAAE9hD,KAAM62C,EAAWQ,cAC7B,CAACyK,EAAUzK,IAEVsF,EAAcjnB,WACN,QAAR,EAAA4R,gBAAA,mBAAU6zB,cAAc,eAAxB,SAAiCC,aAAa,MAAO,OAE7C,QAAR,EAAA9zB,gBAAA,mBAAU6zB,cAAc,eAAxB,SAAiCE,gBAAgB,OAGrD,IAAIC,EAA0B3e,EAAcrnB,WAC5C,MAAMs/B,EAAU,IAAIC,KACpB,IAAI0G,OAAsD95D,IAAnCmzD,EAAQn6C,IAAI,mBAAmCm6C,EAAQn6C,IAAI,mBAAqB6gD,EAEnGE,EAAcR,EAAcvgD,IAAI8gD,GAGpC,MAAOjmC,EAAYmmC,GAAiBrnD,mBAASonD,GAStCE,EAAgB,CAACnyD,EAAK9B,KACzB,IAAK,IAAKD,EAAKm0D,KAAQpyD,EAAIub,UAC3B,GAAI62C,IAAQl0D,EACR,OAAOD,EAGX,OAAO,MAGX2S,qBAAU,KACN,IAAIyhD,EAEJ,OAAQtmC,GACJ,IAAK,QACDsmC,EAAW,sBACX,MACJ,IAAK,UACDA,EAAW,wBACX,MAEJ,QACIA,EAAW,uBAInB9Z,EAAS,CAAE9hD,KAAMi3C,EAAiB3hB,WAAYsmC,MAC/C,CAAC9Z,EAAUxsB,IAmBd,OATAnb,qBAAU,KACN,MAAMy6C,EAAU,IAAIC,UACepzD,IAAhCmzD,EAAQn6C,IAAI,kBACXqgD,EAAelG,EAAQn6C,IAAI,iBAC3Bgb,KAAKomC,eAAejH,EAAQn6C,IAAI,oBAGpC,CAACqnC,EAAU+Y,IAGX,uCAEI,eAACpR,GAAA,EAAD,CAAS/iD,MAAM,iBAAf,SACI,eAACo1D,GAAA,EAAD,CACIjY,UAAU,MACVn+C,QAASgmD,EACTtnD,KAAK,SACL+B,QAAQ,WACRb,MAAM,YACNL,GAAI,CACAE,aAAc,EACd42D,oBAAqB,MACrBC,uBAAwB,MACxBC,qBAAsB,MACtBC,wBAAyB,MACzBr2D,IAAK,MACLF,SAAU,QACVC,MAAO,GACPqX,OAAQvR,EAAMuR,OAAOk/C,UACrB1uD,UAAW/B,EAAM0wD,cAActuD,WAhBvC,SAmBI,eAAC+iD,GAAA,EAAD,CAAYvrD,MAAM,UAAUlB,KAAK,QAAQsgD,eAAa,EAAtD,SACI,eAAC,KAAD,UAMZ,eAAC4L,GAAA,EAAD,CACIC,OAAO,QACP1sD,QAAS6nD,EACT5mD,KAAMA,EACNu3D,WAAY,CACRp3D,GAAI,CACA49C,MAAO,MANnB,SAUI,eAAC,KAAD,CAAkBgB,UAAU,MAA5B,SACI,gBAACQ,GAAA,EAAD,CAAMt+C,WAAS,EAACC,QAASk+C,KAAaj/C,GAAI,CAAEC,EAAG,GAA/C,UACI,eAACm/C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAf,SAEI,eAACo2D,GAAA,EAAD,CAAS51D,MAAM,SAAf,SACI,gBAACyoC,GAAA,EAAD,CAAa0U,UAAU,WAAvB,UACI,eAAC0Y,GAAA,EAAD,CAAW1Y,UAAU,SAArB,kBACA,gBAAC2Y,GAAA,EAAD,CACIC,KAAG,EACH,aAAW,SACXh1D,MAAO4vC,EACP9rC,SAAWiJ,IAAMkoD,OApI9Bj1D,EAoI4C+M,EAAE45B,OAAO3mC,MAnIxEszD,EAAa,YAAatzD,QAC1ByzD,EAAWzzD,GAFQA,OAqIaX,KAAK,0BALT,UAOI,eAACyiD,GAAA,EAAD,CACI9hD,MAAM,QACNyW,QAAS,eAACy+C,GAAA,EAAD,IACTrxD,MAAM,QACNrG,GAAI,CACA,qBAAsB,CAAEG,SAAU,IAClC,+BAAgC,CAAEE,MAAOoG,EAAMyC,QAAQ64B,KAAK,SAGpE,eAACuiB,GAAA,EAAD,CACI9hD,MAAM,OACNyW,QAAS,eAACy+C,GAAA,EAAD,IACTrxD,MAAM,OACNrG,GAAI,CACA,qBAAsB,CAAEG,SAAU,IAClC,+BAAgC,CAAEE,MAAOoG,EAAMyC,QAAQ64B,KAAK,mBAOpF,eAACqd,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAf,SAEI,eAACo2D,GAAA,EAAD,CAAS51D,MAAM,cAAf,SACI,eAACyoC,GAAA,EAAD,UACI,gBAACqtB,GAAA,EAAD,CACI,aAAW,cACX/0D,MAAO6tB,EACP/pB,SAAWiJ,GAvIrB/M,KACtB,MAAMD,EAAMk0D,EAAcV,EAAevzD,GACzCszD,EAAa,kBAAmBvzD,GAChCi0D,EAAch0D,IAoImCm1D,CAAiBpoD,EAAE45B,OAAO3mC,OAC3CX,KAAK,0BAJT,UAMI,eAACyiD,GAAA,EAAD,CACI9hD,MAAM,SACNyW,QAAS,eAACy+C,GAAA,EAAD,IACTrxD,MAAM,SACNrG,GAAI,CACA,qBAAsB,CAAEG,SAAU,IAClC,+BAAgC,CAAEE,MAAOoG,EAAMyC,QAAQ64B,KAAK,SAGpE,eAACuiB,GAAA,EAAD,CACI9hD,MAAM,UACNyW,QAAS,eAACy+C,GAAA,EAAD,IACTrxD,MAAM,UACNrG,GAAI,CACA,qBAAsB,CAAEG,SAAU,IAClC,+BAAgC,CAAEE,MAAOoG,EAAMyC,QAAQ64B,KAAK,SAGpE,eAACuiB,GAAA,EAAD,CACI9hD,MAAM,QACNyW,QAAS,eAACy+C,GAAA,EAAD,IACTrxD,MAAM,QACNrG,GAAI,CACA,qBAAsB,CAAEG,SAAU,IAClC,+BAAgC,CAAEE,MAAOoG,EAAMyC,QAAQ64B,KAAK,kBAOpF,eAACqd,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAf,SAEI,eAACo2D,GAAA,EAAD,CAAS51D,MAAM,WAAf,SACI,eAAC29C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAIH,WAAS,EAACP,WAAW,SAASY,GAAI,EAArD,SACI,gBAAC+oC,GAAA,EAAD,CAAapqC,WAAS,EAAtB,UACI,eAACqqC,GAAA,EAAD,CAAY9wC,GAAG,YAAf,oBACA,gBAACu+D,GAAA,EAAD,CACIv+D,GAAG,OACH4e,QAAQ,YACR5R,MAAM,SACN7D,MAAOozD,EACPtvD,SAjJnB49C,IACjB,MAAM2T,EAAM3T,EAAM/a,OAAO3mC,MACzBqzD,EAAegC,GACfrnC,KAAKomC,eAAeiB,GAEpB/B,EAAa,eAAgB+B,IAuIG,UAOI,eAACC,GAAA,EAAD,CAAUt1D,MAAM,QAAhB,SACI,gBAAC48C,GAAA,EAAD,CAAMt+C,WAAS,EAACoX,eAAe,gBAA/B,UACI,eAACknC,GAAA,EAAD,CAAMp+C,MAAI,EAAV,SACI,eAAC0oD,GAAA,EAAD,UACI,eAAC,KAAMn6B,GAAP,CAAU9tB,MAAM,2BAGxB,eAAC29C,GAAA,EAAD,CAAMp+C,MAAI,EAAC+2D,UAAU,SAArB,SACI,eAAC9O,GAAA,EAAD,6BAKZ,eAAC6O,GAAA,EAAD,CAAUt1D,MAAM,QAAhB,SACI,gBAAC48C,GAAA,EAAD,CAAMt+C,WAAS,EAACoX,eAAe,gBAA/B,UACI,eAACknC,GAAA,EAAD,CAAMp+C,MAAI,EAAV,SACI,eAAC0oD,GAAA,EAAD,UACI,eAAC,KAAMpgC,GAAP,CAAU7nB,MAAM,gCAGxB,eAAC29C,GAAA,EAAD,CAAMp+C,MAAI,EAAC+2D,UAAU,SAArB,SACI,eAAC9O,GAAA,EAAD,6BAKZ,eAAC6O,GAAA,EAAD,CAAUt1D,MAAM,QAAhB,SACI,gBAAC48C,GAAA,EAAD,CAAMt+C,WAAS,EAACoX,eAAe,gBAA/B,UACI,eAACknC,GAAA,EAAD,CAAMp+C,MAAI,EAAV,SACI,eAAC0oD,GAAA,EAAD,UACI,eAAC,KAAMsO,GAAP,CAAUv2D,MAAM,0BAGxB,eAAC29C,GAAA,EAAD,CAAMp+C,MAAI,EAAC+2D,UAAU,SAArB,SACI,eAAC9O,GAAA,EAAD,6BAKZ,eAAC6O,GAAA,EAAD,CAAUt1D,MAAM,QAAhB,SACI,gBAAC48C,GAAA,EAAD,CAAMt+C,WAAS,EAACoX,eAAe,gBAA/B,UACI,eAACknC,GAAA,EAAD,CAAMp+C,MAAI,EAAV,SACI,eAAC0oD,GAAA,EAAD,UACI,eAAC,KAAMn6B,GAAP,CAAU9tB,MAAM,0BAGxB,eAAC29C,GAAA,EAAD,CAAMp+C,MAAI,EAAC+2D,UAAU,SAArB,SACI,eAAC9O,GAAA,EAAD,mD,yCC9UxD,MAAMgP,GAAOnO,aAAO,OAAQ,CAAEoO,kBAAoBC,GAAkB,SAATA,GAA9CrO,EACT,QAAC,MAAErjD,EAAF,KAAS5G,GAAV,QAAsB,IACf4G,EAAMc,WAAW62C,gBACfv+C,GAAQ,CACTk3D,uBAAwB,EACxBE,wBAAyB,EACzB36D,WAAYmK,EAAM2xD,YAAYC,OAAO,SAAU,CAC3CC,OAAQ7xD,EAAM2xD,YAAYE,OAAOC,MACjC58D,SAAU8K,EAAM2xD,YAAYz8D,SAAS68D,gBAEzC,CAAC/xD,EAAMmiD,YAAYmM,GAAG,OAAQ,CAC1BrN,aAAc6N,KAAc,IAC5B3X,MAAQ,eAAc2X,WAE1B,CAAC9uD,EAAMmiD,YAAYC,KAAK,OAAQ,CAC5BnB,WAAY,OACZ9J,MAAQ,eAAc2X,UACtBvR,QAAS,QAEb,CAACv9C,EAAMmiD,YAAYC,KAAK,OAAQ,CAC5BnB,WAAY,OACZ9J,MAAQ,eAAc2X,UACtBvR,QAAS,OACTp3C,YAAa,YAGjB/M,GAAQ,CACRvD,WAAYmK,EAAM2xD,YAAYC,OAAO,SAAU,CAC3CC,OAAQ7xD,EAAM2xD,YAAYE,OAAOG,QACjC98D,SAAU8K,EAAM2xD,YAAYz8D,SAAS+8D,iBAEzChR,WAAY,EACZqP,uBAAwB,EACxBE,wBAAyB,EACzBrZ,MAAQ,eAAc2X,UACtB,CAAC9uD,EAAMmiD,YAAYC,KAAK,OAAQ,CAC5BnB,WAAY,QAEhB,CAACjhD,EAAMmiD,YAAYC,KAAK,OAAQ,CAC5BnB,WAAY,aA0HbiR,OAlHI,KACf,MAAM,EAAEhyD,GAAMC,eACRH,EAAQuC,eACR4vD,EAAc5F,aAAcvsD,EAAMmiD,YAAYC,KAAK,OAGnDgQ,EAAmB1iC,aAAa5yB,GAAUA,EAAMm0C,cAAcpF,UAC9D,QAAEvwC,EAAF,QAAWG,GAAYi0B,aAAa5yB,GAAUA,EAAMu0C,cAEpD+E,EAAWgG,cACXwC,EAAWC,cAEjB1vB,eAEA,MAAMw6B,EAAyB,KAC3BvT,EAAS,CAAE9hD,KAAM22C,EAAUY,QAASumB,KAGlCC,EAAcC,uBAAY,KAC5B,MAAMt2D,EAAQtE,aAAaC,QAAQ,SAEnC,IACiB,MAATqE,GACA4iD,EAAS,KAEb,MAAM3iD,EAAYs2D,aAAWv2D,GAC7Bo6C,EAAS34C,YAAaxB,IAE1B,MAAOu2D,GACHhiB,QAAQiiB,IAAID,GACZpc,EAAS74C,eACTqhD,EAAS,QAGd,CAACxI,EAAUwI,IASd,OAPAnwC,qBAAU,KACN2nC,EAAS,CAAE9hD,KAAM22C,EAAUY,QAASsmB,MAErC,CAACA,IAEJ1jD,oBAAU4jD,EAAa,CAACA,IAGpB,gBAAC5Z,GAAA,EAAD,CAAKl/C,GAAI,CAAEM,QAAS,QAApB,UACI,eAAC64D,EAAA,EAAD,IAEA,eAACC,GAAA,EAAD,CACIC,mBAAiB,EACjB34D,SAAS,QACTL,MAAM,UACNkoD,UAAW,EACXvoD,GAAI,CACAI,QAASqG,EAAMyC,QAAQE,WAAWC,QAClC/M,WAAYu8D,EACNpyD,EAAM2xD,YAAYC,OAAO,SACzB,QATd,SAYI,eAAC9M,GAAA,EAAD,UACI,eAAC,GAAD,CAAQ6E,uBAAwBA,QAKvCluD,EAAQD,QACL,eAACq3D,GAAA,EAAD,CACIz5D,KAAMqC,EAAQD,OACds3D,iBAAkB,IAClB36D,QAAS,IAAMi+C,EAAS/4C,eACxB2uC,aAAc,CAAEC,SAAU,SAAUC,WAAY,aAC5CzwC,EAAQG,gBAAkB,CAAEm3D,oBAAsBpyD,GAAU,eAAC44C,GAAA,EAAD,IAAW54C,KAC3EqyD,2BAA2B,EAN/B,SAQI,eAACC,GAAA,EAAD,CAAO96D,QAAS,IAAMi+C,EAAS/4C,eAAiB3B,SAAUD,EAAQC,SAAUnC,GAAI,CAAE49C,MAAO,QAAU18C,QAAQ,SAA3G,SACwB,KAAnBgB,EAAQE,OAAgBuE,EAAEzE,EAAQH,QAASG,EAAQE,QAAUuE,EAAEzE,EAAQH,aAMnFA,EAAQE,QACL,eAAC,KAAD,CACIR,MAAOkF,EAAE5E,EAAQN,OACjBxC,UAAW,IAAM49C,EAAS54C,eAC1B2+C,SAAU,IAAM/F,EAAS54C,eAH7B,SAKK0C,EAAE5E,EAAQC,QAKnB,eAAC,GAAD,CACIsqD,WAAYuM,EACZhE,aAAczE,IAIlB,gBAAC6H,GAAD,CAAMxxD,MAAOA,EAAO5G,KAAMg5D,EAA1B,UAEI,eAAC,GAAD,CACIrb,UAAWmc,KACXrc,WAAYA,GACZhmC,MAAI,EACJ7V,OAAK,EACL87C,YAAU,IAEd,eAAC,IAAD,OAEJ,eAAC,GAAD,Q,UC5LZ,MAAMqc,GAAgB9P,aAAO,MAAPA,CAAc,CAChCppD,SAAU,QACVE,IAAK,EACL8qD,KAAM,EACN1zC,OAAQ,KACR4lC,MAAO,SAUIic,OANA,IACX,eAACD,GAAD,UACI,eAACE,GAAA,EAAD,CAAgBz5D,MAAM,cCHf05D,OANGC,GAAe5yD,GAC7B,eAAC,WAAD,CAAU6yD,SAAU,eAAC,GAAD,IAApB,SACI,eAACD,EAAD,IAAe5yD,M,UCoRR8yD,OAtQqB,KAAO,IAAD,EAEtC,MAAM,YACF53D,EADE,YAEFkwB,EAFE,YAGF/J,EAHE,YAIFuX,EAJE,YAKFvN,EALE,aAMFC,EANE,KAOF7W,EAPE,gBAQFD,EARE,QASF4C,EATE,OAUF6M,EAVE,WAWFsH,EAXE,gBAYFZ,EAZE,wBAaFE,EAbE,mBAcFshB,GACApd,aAAa5yB,GAAUA,EAAMi1C,2BAE3B/xC,EAAQuC,eACR6zC,EAAWgG,eAEX,EAAEl8C,IADYqsD,aAAcvsD,EAAMmiD,YAAYC,KAAK,OAC3CjiD,iBACP+D,GAAwB,KAAEkN,EAAM7Y,UAAWm7D,IAAkCrvD,eAC5E9L,UAAWo7D,GAAqBz3B,eACjC93B,GAA6B7L,UAAWq7D,IAAgBtvD,cAE/DuvD,YACI,sEACA9nC,EAAYhwB,QAAU+wC,EAAmB/gB,aACtC/J,EAAYjmB,QAAU+wC,EAAmB9qB,aACzCuX,EAAYx9B,SAAZ,UAAuB+wC,EAAmBvT,mBAA1C,QAAyD,KACzDvN,EAAYjwB,QAAU+wC,EAAmB9gB,aACzCC,EAAalwB,QAAU+wC,EAAmB7gB,cAC1C7W,EAAKrZ,QAAU+wC,EAAmB13B,MAClCD,EAAgBpZ,QAAU+wC,EAAmB33B,iBAC7C4C,EAAQhc,QAAU+wC,EAAmB/0B,SACrCmU,EAAWnwB,QAAU+wC,EAAmB5gB,YAuD/C,OAdAzd,qBAAU,KAL2BynC,WACjC,MAAMoI,QAAiBp6C,IAAyBq6C,SAChDnI,EAASjJ,GAAUmR,KAInBwV,KAED,IAEHrlD,qBAAU,KACDklD,GAAqBD,GAClBtiD,GACAglC,EAASrc,GAA0B3oB,MAI5C,CAACsiD,EAA8BC,IAG9B,qCACKD,EAED,eAAC/a,GAAA,EAAD,CAAMt+C,WAAS,EAAf,SACI,eAACs+C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAA/B,SACI,eAAC2G,GAAA,EAAD,CAAUr+C,OAAQ,UAI1B,iCACA,gBAACyyC,GAAA,EAAD,CAAMt+C,WAAS,EAAC05D,cAAe,EAAGj6D,WAAW,SAA7C,UACI,eAAC6+C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAAIrkD,GAAI,CAACoB,GAAI,GAA5C,SACI,eAACq9C,GAAA,EAAD,CAAYv9C,QAAQ,KAApB,SAA0ByF,EAAE,kCAGhC,eAACy4C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,EAAGC,GAAI,EAA9B,SACI,eAAC3a,GAAA,EAAD,CACI7nC,KAAK,cACLW,MAAOgwB,EAAYhwB,MACnB6D,MAAOM,EAAE,+BACT5L,KAAK,OACLiU,UAAU,MACVxI,MAAOgsB,EAAYhsB,MACnBC,MAAOA,EACPH,SAAWsmB,GAAYiwB,EAASz3B,GAAa,CAAE/F,MAAO,cAAe7c,MAAOoqB,EAAQuc,OAAO3mC,SAC3FkE,UAAQ,MAIhB,eAAC04C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,EAAGC,GAAI,EAA9B,SACI,eAAC3a,GAAA,EAAD,CACI7nC,KAAK,cACLW,MAAOw9B,EAAYx9B,MACnB6D,MAAO,eACPC,SAAWsmB,GAAYiwB,EAASz3B,GAAa,CAAE/F,MAAO,cAAe7c,MAAOoqB,EAAQuc,OAAO3mC,SAC3FgE,MAAOw5B,EAAYx5B,MACnBC,MAAOA,EACPujC,YAAc,IAAqB,WAAlBxrB,EAAQhc,MAAqB,KAAO,eAAiC,WAAlBgc,EAAQhc,MAAqB,kBAAoB,eACrH2J,UAAQ,MAIhB,eAACizC,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,EAAGC,GAAI,EAA9B,SACI,eAAC,KAAD,CACIxiD,KAAK,cACLW,MAAOimB,EAAYjmB,MACnB6D,MAAOM,EAAE,gBACTL,SAAWsmB,GAAYiwB,EAASz3B,GAAa,CAAE/F,MAAO,cAAe7c,MAAOoqB,EAAQuc,OAAO3mC,SAC3F+D,SAAS,QACTC,MAAOiiB,EAAYjiB,MACnBC,MAAOA,EACPC,UAAQ,MAIhB,eAAC04C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,EAAGC,GAAI,EAA9B,SACI,eAAC3a,GAAA,EAAD,CACI7nC,KAAK,cACLW,MAAOiwB,EAAYjwB,MACnB6D,MAAOM,EAAE,kBACT5L,KAAK,OACLiU,UAAU,MACVxI,MAAOisB,EAAYjsB,MACnBC,MAAOA,EACPH,SAAWsmB,GAAYiwB,EAASz3B,GAAa,CAAE/F,MAAO,cAAe7c,MAAOoqB,EAAQuc,OAAO3mC,SAC3FkE,UAAQ,MAIhB,eAAC04C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,EAAGC,GAAI,EAA9B,SACI,eAAC3a,GAAA,EAAD,CACI7nC,KAAK,eACLW,MAAOkwB,EAAalwB,MACpB6D,MAAOM,EAAE,gCACT5L,KAAK,OACLiU,UAAU,MACVxI,MAAOksB,EAAalsB,MACpBC,MAAOA,EACPH,SAAWsmB,GAAYiwB,EAASz3B,GAAa,CAAE/F,MAAO,eAAgB7c,MAAOoqB,EAAQuc,OAAO3mC,aAIpG,eAAC48C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,EAAGC,GAAI,EAA9B,SACI,eAACzsC,GAAA,EAAD,CACI/V,KAAK,UACLW,MAAOgc,EAAQhc,MACf6D,MAAOM,EAAE,kBACTH,MAAOgY,EAAQhY,MACfE,UAAQ,EACRyF,UAAQ,EACR1F,MAAOA,EACPlF,QAAS64D,EACTviD,KAAMvV,EAAYgC,KAAIka,IAAO,CACzBjc,IAAKic,EAAQnlB,GACbmJ,MAAOgc,EAAQkJ,YACf1lB,KAAMwc,EAAQkJ,YACdvP,UAAWqG,EAAQC,aAM/B,eAAC2gC,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,EAAGC,GAAI,EAA9B,SACI,eAACp4C,GAAA,EAAD,CACI5S,GAAG,kBACHgN,MAAM,QACN7D,MAAOyvB,EAAwBvK,YAC/BphB,SAAU,CAAC49C,EAAOC,IAAatH,EAASh+B,GAA4BslC,IACpE39C,MAAOoV,EAAgBpV,MACvBC,MAAOA,EACPyF,QAAS6lB,EAAgBlY,oBAAoBvV,KAAIf,IAAK,CAClDlK,GAAIkK,EAAMlK,GACVmJ,MAAOe,EAAMmkB,YACbrhB,MAAO9C,EAAMmkB,oBAKzB,eAAC03B,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,EAAGC,GAAI,EAA9B,SACI,eAAC3a,GAAA,EAAD,CACI7nC,KAAK,OACLW,MAAOqZ,EAAKrZ,MACZ6D,MAAOM,EAAE,eACT5L,KAAK,OACLiU,UAAU,MACVxI,MAAOqV,EAAKrV,MACZC,MAAOA,EACPH,SAAWsmB,GAAYiwB,EAASz3B,GAAa,CAAE/F,MAAO,OAAQ7c,MAAOoqB,EAAQuc,OAAO3mC,SACpFkE,UAAQ,MAIhB,eAAC04C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,EAAGC,GAAI,EAA9B,SACG,eAAC3a,GAAA,EAAD,CACK7nC,KAAK,aACLW,MAAOmwB,EAAWnwB,MAClB6D,MAAOM,EAAE,sBACT5L,KAAK,OACLiU,UAAU,KACVxI,MAAOmsB,EAAWnsB,MAClBC,MAAOA,EACPH,SAAWsmB,GAAYiwB,EAASz3B,GAAa,CAAE/F,MAAO,aAAc7c,MAAOoqB,EAAQuc,OAAO3mC,SAC1FkE,UAAQ,SAMpB,eAACw4C,GAAA,EAAD,CAAKl/C,GAAI,CAAEmB,GAAI,GAAf,SACI,eAACyjD,GAAA,EAAD,CACIvjD,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,YACRb,MAAM,YACNkB,QAAS84D,EACT55D,QAjNYk8C,UAExB,IACI,MAAMrkD,EAAQ,CACVk6B,YAAaA,EAAYhwB,MACzBimB,YAAaA,EAAYjmB,MACzBw9B,YAAaA,EAAYx9B,MACzBiwB,YAAaA,EAAYjwB,MACzBkwB,aAAcA,EAAalwB,MAC3BqZ,KAAMA,EAAKrZ,MACXoZ,gBAAiBA,EAAgBpZ,MACjC6oB,OAAQA,EAAO7oB,MACfmwB,WAAYA,EAAWnwB,OAGrBuiD,QAAiBl6C,EAA0BvS,GAAO0sD,SACxDnI,EAASv5C,YAAmByhD,EAAShjD,UAEzC,MAAMyE,GAAQ,IAAD,IAEuB,EAMC,EANjC,GAA0B,OAAtB,UAAAA,EAAMqR,YAAN,eAAYiI,QACZ+8B,EAASh5C,YAAiB8C,EAAE,wBAC5Bk2C,EAASj9B,GAAiB,UAACpZ,EAAMqR,YAAP,aAAC,EAAYiI,SAI3C,GAA2B,OAAvB,UAAAtZ,EAAMqR,YAAN,eAAY9V,SACZ86C,EAASh5C,YAAgB,UAAC2C,EAAMqR,YAAP,aAAC,EAAY9V,YA+KtC,SASK4E,EAAE,oC,0FCrKR8zD,OA1FyB,KAEpC,MAAM,YACFt3C,EACA4xB,8BAA8B,WAC1Bv8C,EAD0B,SAE1BC,EAF0B,UAG1BilB,EAH0B,MAI1B9a,IAEJuzB,aAAa5yB,GAAUA,EAAMm1C,oCAE3B,EAAE/xC,GAAMC,eACRi2C,EAAWgG,eACV6X,GAA0BhmB,MAC1BD,GAAyBz1C,UAAW27D,IAAgB9lB,KAgC3D,OACI,uCACI,eAAC+lB,GAAA,EAAD,CAAgBhc,UAAWuJ,KAA3B,SACI,gBAAC0S,GAAA,EAAD,WACI,eAACC,GAAA,EAAD,UACI,gBAACC,GAAA,EAAD,WACI,eAACC,GAAA,EAAD,qBACA,eAACA,GAAA,EAAD,UAAYr0D,EAAE,uBACd,eAACq0D,GAAA,EAAD,UAAYr0D,EAAE,yBAGtB,gBAACs0D,GAAA,EAAD,WACK93C,GACG,eAAC43C,GAAA,EAAD,CAAkB/6D,GAAI,CAAE,mCAAoC,CAAEuI,OAAQ,IAAtE,SACI,eAACyyD,GAAA,EAAD,CAAWE,QAAS,EAApB,SACI,eAAClQ,GAAA,EAAD,CAAUr+C,OAAQ,GAAIzL,QAAQ,mBAFvB,GAMlB0B,EAAM0B,KAAKkzD,GACR,gBAACuD,GAAA,EAAD,CAAuB/6D,GAAI,CAAE,mCAAoC,CAAEuI,OAAQ,IAA3E,UACI,eAACyyD,GAAA,EAAD,UAAYxD,EAAIljB,eAChB,eAAC0mB,GAAA,EAAD,UAAYxD,EAAIxyC,YAChB,eAACg2C,GAAA,EAAD,UACI,eAACpP,GAAA,EAAD,CAAYvrD,MAAM,YAAY,aAAW,gBAAgBI,QAAS,IAxC7Ek8C,WAEjB,IACI,MAAMoI,QAAiBtQ,EAAsB+iB,EAAIn+D,IAAI2rD,eAC/C0V,EAAuB,CAACliE,WAAY,EAAGC,aAC7CokD,EAASv5C,YAAmByhD,EAAShjD,UAEzC,MAAMyE,GAAQ,IAAD,EAEwB,EAAN,OAAvB,UAAAA,EAAMqR,YAAN,eAAY9V,UACZ86C,EAASh5C,YAAgB,UAAC2C,EAAMqR,YAAP,aAAC,EAAY9V,YA8BsDo5D,CAAa3D,GAAMrrD,SAAUwuD,EAArG,SACI,eAACS,GAAA,EAAD,UALG5D,EAAIn+D,cAcnC,sBAAK0e,MAAO,CAACzX,QAAS,OAAQ4X,eAAgB,OAA9C,SACI,eAACmjD,GAAA,EAAD,CAAYC,MAAO59C,EAAW69C,KAAM/iE,EAAY8N,SAjEnCq2C,MAAOuH,EAAOsX,KAEnC,UACUd,EAAuB,CAACliE,WAAYgjE,EAAS/iE,aAEvD,MAAM+N,GAAQ,IAAD,EAEwB,EAAjC,GAA2B,OAAvB,UAAAA,EAAMqR,YAAN,eAAY9V,SACZ86C,EAASh5C,YAAgB,UAAC2C,EAAMqR,YAAP,aAAC,EAAY9V,oB,8BCgFvC05D,OAtG0B,KAErC,MAAM,aACFhnC,EADE,gBAEF+f,EACAO,8BAA8B,WAC1Bv8C,EAD0B,SAE1BC,IAEJ09B,aAAa5yB,GAAUA,EAAMm1C,mCAE3BmE,EAAWgG,cACXp8C,EAAQuC,gBACR,EAAErC,GAAMC,gBACP2tC,GAAyBv1C,UAAW08D,IAAiB9mB,MACrD8lB,GAA0BhmB,KAyBjC,OACI,gBAACinB,GAAA,EAAD,CAAQ97D,KAAM40B,EAAc71B,QAAS,IAAMi+C,EAASvnB,MAAgBx1B,WAAS,EAACC,SAAS,KAAvF,UACI,eAAC67D,GAAA,EAAD,CAAa57D,GAAI,CAAEG,SAAU,QAA7B,SAAyC,GAAEwG,EAAE,uCAC7C,eAACilD,GAAA,EAAD,CACI,aAAW,QACXnrD,QAAS,IAAMo8C,EAASvnB,MACxBt1B,GAAI,CACAU,SAAU,WACVC,MAAO,EACPC,IAAK,GACLP,MAAQoG,GAAUA,EAAMyC,QAAQ64B,KAAK,MAP7C,SAUI,eAAC8pB,GAAA,EAAD,MAEJ,eAACgQ,GAAA,EAAD,CAAeh7D,UAAQ,EAAvB,SAEI,eAACu+C,GAAA,EAAD,CAAMt+C,WAAS,EAAf,SACI,eAACs+C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAf,SACI,eAACyoC,GAAA,EAAD,CACI7nC,KAAK,kBACLW,MAAOgyC,EAAgBhyC,MACvB6D,MAAOM,EAAE,4BACT5L,KAAK,QACLiU,UAAU,MACVxI,MAAOguC,EAAgBhuC,MACvBC,MAAOA,EACPH,SAAWsmB,GAAYiwB,EAASz3B,GAAa,CAAE/F,MAAO,kBAAmB7c,MAAOoqB,EAAQuc,OAAO3mC,SAC/FkE,UAAQ,UAKxB,gBAAC8nD,GAAA,EAAD,WACI,eAAC5J,GAAA,EAAD,CACIvjD,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,WACRb,MAAM,YACNI,QAAS,IAAMo8C,EAASvnB,MAN5B,mBAWA,eAACsvB,GAAA,EAAD,CACIvjD,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,YACRb,MAAM,YACNkB,QAASm6D,EACTj7D,QA3EKk8C,UACjB,IACI,MAAMoI,QAAiBxQ,EAAsBC,EAAgBhyC,OAAOwiD,eAC9D0V,EAAuB,CAACliE,aAAYC,aAE1CokD,EAASvnB,MACTunB,EAASv5C,YAAmByhD,EAAShjD,UAEzC,MAAMyE,GAAQ,IAAD,IAGuB,EAMC,EANjC,GAA0B,OAAtB,UAAAA,EAAMqR,YAAN,eAAYiI,QACZ+8B,EAASh5C,YAAiB8C,EAAE,wBAC5Bk2C,EAASj9B,GAAiB,UAACpZ,EAAMqR,YAAP,aAAC,EAAYiI,SAI3C,GAA2B,OAAvB,UAAAtZ,EAAMqR,YAAN,eAAY9V,SACZ86C,EAASh5C,YAAgB,UAAC2C,EAAMqR,YAAP,aAAC,EAAY9V,YAkDtC,SASK4E,EAAE,8BCbRm1D,OA9EyB,KAEpC,MAAM,aACFxnB,EADE,cAEFU,EACAD,8BAA8B,WAC1Bv8C,EAD0B,SAE1BC,EAF0B,WAG1BklB,IAEJwY,aAAa5yB,GAAUA,EAAMm1C,mCAE3BjyC,EAAQuC,eACR6zC,EAAWgG,cACXkZ,EAAc/I,aAAcvsD,EAAMmiD,YAAYC,KAAK,QACnD,EAAEliD,GAAMC,gBAEP8zD,GAA0BhmB,KAEjC4lB,YACI,sEACAtlB,IAAkBV,EAAa9xC,OAoBnC,OALA0S,qBAAU,KAZcynC,WACpB,UACU+d,EAAuB,CAACliE,aAAYC,aAE9C,MAAM+N,GAAQ,IAAD,EAEwB,EAAN,OAAvB,UAAAA,EAAMqR,YAAN,eAAY9V,UACZ86C,EAASh5C,YAAgB,UAAC2C,EAAMqR,YAAP,aAAC,EAAY9V,YAM9Ci6D,KAED,IAGC,uCACI,eAAC,GAAD,IAEA,eAAC5c,GAAA,EAAD,CAAMt+C,WAAS,EAACC,QAASg7D,EAAc,EAAI,EAA3C,SACI,eAAC3c,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAA/B,SACI,eAACgT,GAAA,EAAD,CAAS51D,MACL,gBAAC29C,GAAA,EAAD,CAAMt+C,WAAS,EAACP,WAAW,WAAW2X,eAAe,gBAArD,UACI,eAACknC,GAAA,EAAD,CAAMp+C,MAAI,EAAV,SACM,GAAE2F,EAAE,6BAA6BgX,MAEvC,eAACyhC,GAAA,EAAD,CAAMp+C,MAAI,EAAV,SACI,eAAC4jD,GAAA,EAAD,CACI5kD,GAAI,CAAEq/C,GAAI,GACVh+C,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,WACRb,MAAM,YACNV,UAAW,eAACs8D,GAAA,EAAD,IACXx7D,QAAS,IAAMo8C,EAAS5H,MAR5B,SAUKtuC,EAAE,4BAhBnB,SAqBI,eAAC,GAAD,c,mBC7FT,4jH,UCyeAu1D,OAxcc,IAA6B,IAA5B,qBAAChrD,GAA0B,EAErD,MAAM,EAAEvK,GAAMC,eACRi2C,EAAWgG,cACXp8C,EAAQuC,eACR+yD,EAAc/I,aAAcvsD,EAAMmiD,YAAYC,KAAK,QAElDx3C,EAAY8qD,GAAiBhtD,mBAAS,mBAEvCitD,EAAY/6B,mBACZg7B,EAAYh7B,oBAEXpwB,GAAkBjS,UAAWs9D,IAAchrD,gBAC3CH,GAAe,UAAEnS,IAAeuS,gBAEhCgrD,EAAaC,GAAkBrtD,mBAAS,CAC3CstD,YAAa,KACbtb,WAAY,GACZub,oBAAoB,EACpBC,kBAAkB,EAClBC,cAAe,MAGZC,EAAaC,GAAkB3tD,mBAAS,CAC3CstD,YAAa,KACbtb,WAAY,GACZub,oBAAoB,EACpBC,kBAAkB,EAClBI,cAAe,MAGZC,EAAmBC,GAAwB9tD,oBAAS,IAEnD+tD,EAAcC,GAAoBhuD,mBAAS,CAC/CkC,WAAY,oBAGhBipD,YACI,sEAC4B,OAA5BiC,EAAYE,aACmB,OAA5BI,EAAYJ,aACZprD,IAAe6rD,EAAa7rD,YAGnC,MAAM+rD,EAAmB,CAACriE,EAAM6xB,KAC5B,MAAMs0B,EAAOt0B,EAAQuc,OAAO4X,MAAM,GAEtB,MAARG,IAEa,WAATnmD,GACAyhE,EAAe,IACRD,EACHE,YAAavb,EACbC,WAAYzrC,IAAI0rC,gBAAgBF,KAGpCmb,EAAU/6B,QAAQ9+B,MAAQ,KAG1Bs6D,EAAe,IACRD,EACHJ,YAAavb,EACbC,WAAYzrC,IAAI0rC,gBAAgBF,KAGpCkb,EAAU96B,QAAQ9+B,MAAQ,MAwBhC66D,EAAoB1gB,UAEtB,IACI,MAAMrkD,EAAQ,IAAIusD,SAElBvsD,EAAM+F,OAAO,cAAek+D,EAAYE,aACxCnkE,EAAM+F,OAAO,cAAew+D,EAAYJ,aACxCnkE,EAAM+F,OAAO,gBAAiBk+D,EAAYK,eAC1CtkE,EAAM+F,OAAO,gBAAiBw+D,EAAYE,eAC1CzkE,EAAM+F,OAAO,aAAcgT,GAC3B/Y,EAAM+F,OAAO,aAAci/D,GAE3B,MAAMvY,QAAiB9zC,EAAe,CAACC,uBAAsB5Y,UAAQ0sD,SAErEnI,EAASv5C,YAAmByhD,EAAShjD,UACrCw7D,EAAoBrsD,GACpB+rD,GAAqB,GAEzB,MAAMz2D,GAAQ,IAAD,IAEuB,EAKC,EALjC,GAA0B,OAAtB,UAAAA,EAAMqR,YAAN,eAAYiI,QACZ+8B,EAASh5C,YAAiBgQ,OAAOq1B,OAAP,UAAc1iC,EAAMqR,YAApB,aAAc,EAAYiI,QAAQ,GAAG,KAInE,GAA2B,OAAvB,UAAAtZ,EAAMqR,YAAN,eAAY9V,SACZ86C,EAASh5C,YAAgB,UAAC2C,EAAMqR,YAAP,aAAC,EAAY9V,YAM5Cy7D,EAAmBtZ,IAErB,MAAMuZ,EACFvZ,EAAM/a,OAAOu0B,aAAexZ,EAAM/a,OAAOyU,OACzCsG,EAAM/a,OAAOw0B,cAAgBzZ,EAAM/a,OAAOx8B,OAGtB,gBAApBu3C,EAAM/a,OAAO9vC,IAEmB,OAA5BkjE,EAAYE,aACZD,EAAe,IACRD,EACHG,mBAAoBe,EACpBd,iBAAkBc,IAKN,gBAApBvZ,EAAM/a,OAAO9vC,IAEmB,OAA5BwjE,EAAYJ,aACZK,EAAe,IACRD,EACHH,mBAAoBe,EACpBd,iBAAkBc,KAM5BF,EAAsB5gB,UAExB,MAAMoI,QAAiB5zC,EAAcD,GAAsB8zC,SAE3DwX,EAAe,IACRD,EACHE,YAAa,KACbtb,WAAY4D,EAAS6Y,eACrBjB,kBAAkB,EAClBC,cAAe7X,EAAS6X,gBAG5BE,EAAe,IACRD,EACHJ,YAAa,KACbtb,WAAY4D,EAAS8Y,eACrBlB,kBAAkB,EAClBI,cAAehY,EAASgY,gBAG5BZ,EAAcpX,EAAS1zC,YAEvB8rD,EAAgB,IACTD,EACH7rD,WAAY0zC,EAAS1zC,cAS7B,OALA6D,qBAAU,KACNqoD,MAED,IAGC,uCAEA,eAAC7+D,GAAA,EAAD,CACIC,UAAWq+D,EACXp+D,QAAS,IAAMq+D,GAAqB,GACpCp+D,aAAa,gBACbC,aACI,wCACwC,IAAnCy9D,EAAYG,qBAAkE,IAAnCG,EAAYH,oBACpD,eAACje,GAAA,EAAD,wGAGgC,IAAnC8d,EAAYG,qBAAkE,IAAnCG,EAAYH,oBACpD,eAACje,GAAA,EAAD,yFAGgC,IAAnC8d,EAAYG,qBAAmE,IAAnCG,EAAYH,oBACrD,eAACje,GAAA,EAAD,2FAIZ1/C,aAAa,iBACbC,UAAWs9D,EACXr9D,UAAW,IAAMo+D,GAAkB,GACnCj+D,sBAAsB,mBACtBC,wBAAyB,IAAMg+D,GAAkB,GACjDl+D,KAAK,OAUT,gBAACigD,GAAA,EAAD,CAAMt+C,WAAS,EAACC,QAASg7D,EAAc,EAAI,EAA3C,UACI,eAAC3c,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAAIjiB,GAAI,EAAvC,SACI,eAACqc,GAAA,EAAD,CAAYv9C,QAAQ,KAApB,SAA0ByF,EAAE,qCAGhC,eAACy4C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAAIjjD,IAAK,EAAxC,SACI,eAACq9C,GAAA,EAAD,CAAYv9C,QAAQ,UAApB,SACKyF,EAAE,yCAGX,eAACy4C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAAIjjD,IAAK,EAAxC,SACI,eAACq9C,GAAA,EAAD,CAAYv9C,QAAQ,UAApB,SACKyF,EAAE,0CAGX,eAACy4C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAAIjjD,GAAI,EAAvC,SACI,eAACq9C,GAAA,EAAD,CAAYv9C,QAAQ,UAApB,SACKyF,EAAE,yCAIX,gBAACy4C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,EAAGmjD,GAAI,EAAGC,GAAI,EAA7B,UAEI,eAACjF,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAAIjjD,GAAI,EAAvC,SACI,eAACi2D,GAAA,EAAD,CAAS51D,MACL,gBAAC29C,GAAA,EAAD,CAAMt+C,WAAS,EAACoX,eAAe,gBAA/B,UACI,eAACknC,GAAA,EAAD,CAAMp+C,MAAI,EAAV,SACI,yBAAOopC,QAAQ,gBAAf,UACI,wBAAOvvC,IAAKwhE,EAAW3b,OAAO,UAAUrnD,GAAG,gBAAgB0B,KAAK,OAAOgd,MAAO,CAAEzX,QAAS,QAAUgG,SAAWiJ,GAAM6tD,EAAiB,SAAU7tD,KAC/I,eAACgyC,GAAA,EAAD,CACIlgD,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,WACRb,MAAM,YACNu+C,UAAU,OACVj/C,UAAW,eAACm+D,GAAA,EAAD,IAPf,SASKn3D,EAAE,qCAIf,eAACy4C,GAAA,EAAD,CAAMp+C,MAAI,EAAV,SACI,eAACugD,GAAA,EAAD,CACIlgD,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,OACRb,MAAM,YACNu+C,UAAU,OACVj/C,UAAW,eAACksD,GAAA,EAAD,IACXprD,QAAS,KACL+7D,EAAe,IACRD,EACHE,YAAa,KACbtb,WAAY,GACZub,oBAAoB,EACpBC,kBAAkB,EAClBC,cAAe,MAf3B,8BAnBZ,SA4CI,gBAACxd,GAAA,EAAD,CAAMt+C,WAAS,EAAf,UAEKy7D,EAAYI,kBACT,eAACvd,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAIG,GAAI,EAAvB,SACI,eAACs4D,GAAA,EAAD,CAAOv3D,SAAS,UAAUvD,QAAS,IAAM49D,EAAe,IAAID,EAAaI,kBAAkB,IAAUz7D,QAAQ,SAA7G,0DAMR,eAACk+C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAAI9jD,WAAW,SAAS2X,eAAe,SAAS5X,QAAQ,OAAvF,SACI,sBACIjH,GAAG,cACHqmD,IAAgC,KAA3B6c,EAAYpb,WAAoB4c,GAAWxB,EAAYpb,WAC5DvB,IAAI,GACJ7nC,MAAO,CAAChY,SAAU,QAASuoD,UAAW,QAAS1K,MAAO,OAAQjxC,OAAQ,QACtEqxD,QAAS,KAAQxB,EAAe,IACzBD,EACHE,YAAa,KACbtb,WAAY4c,MAEhBE,OAAQT,aAQ5B,sBAAKU,OAAuB,oBAAf7sD,EAAb,SACI,eAAC+tC,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAA/B,SACI,eAACgT,GAAA,EAAD,CAAS51D,MACL,gBAAC29C,GAAA,EAAD,CAAMt+C,WAAS,EAACoX,eAAe,gBAA/B,UAEI,eAACknC,GAAA,EAAD,CAAMp+C,MAAI,EAAV,SACI,yBAAOopC,QAAQ,gBAAf,UACI,wBAAOvvC,IAAKuhE,EAAW1b,OAAO,UAAUrnD,GAAG,gBAAgBunD,UAAQ,EAAC7lD,KAAK,OAAOgd,MAAO,CAAEzX,QAAS,QAAUgG,SAAWiJ,GAAM6tD,EAAiB,SAAU7tD,KACxJ,eAACq1C,GAAA,EAAD,CACIvjD,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,WACRb,MAAM,YACNu+C,UAAU,OACVj/C,UAAW,eAACm+D,GAAA,EAAD,IAPf,SASKn3D,EAAE,qCAKf,eAACy4C,GAAA,EAAD,CAAMp+C,MAAI,EAAV,SACI,eAACugD,GAAA,EAAD,CACIlgD,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,OACRb,MAAM,YACNu+C,UAAU,OACVj/C,UAAW,eAACksD,GAAA,EAAD,IACXprD,QAAS,KACLq8D,EAAe,IACRD,EACHJ,YAAa,KACbtb,WAAY,GACZub,oBAAoB,EACpBC,kBAAkB,EAClBI,cAAe,MAf3B,8BArBZ,SA+CI,gBAAC3d,GAAA,EAAD,CAAMt+C,WAAS,EAAf,UAEK+7D,EAAYF,kBACT,eAACvd,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAIG,GAAI,EAAvB,SACI,eAACs4D,GAAA,EAAD,CAAOv3D,SAAS,UAAUvD,QAAS,IAAMk+D,EAAe,IAAID,EAAaF,kBAAkB,IAAUz7D,QAAQ,SAA7G,0DAMR,eAACk+C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAAI9jD,WAAW,SAAS2X,eAAe,SAAS5X,QAAQ,OAAvF,SACI,sBACIjH,GAAG,cACHqmD,IAAgC,KAA3Bmd,EAAY1b,WAAoB4c,GAAWlB,EAAY1b,WAC5DvB,IAAI,GACJ7nC,MAAO,CAAChY,SAAU,QAASuoD,UAAW,QAAS1K,MAAO,OAAQjxC,OAAQ,QACtEqxD,QAAS,KAAQlB,EAAe,IACzBD,EACHJ,YAAa,KACbM,cAAe,KACf5b,WAAY4c,MAEhBE,OAAQT,kBAYpC,eAACpe,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,EAAGmjD,GAAI,EAAGC,GAAI,EAA7B,SACI,eAACgT,GAAA,EAAD,CAAS51D,MAAQ,GAAEkF,EAAE,gCAArB,SAEI,gBAAC4wD,GAAA,EAAD,CAAY11D,KAAK,SACbs8D,aAAa,kBACb37D,MAAO6O,EACP/K,SAjVYsmB,IAC5BuvC,EAAcvvC,EAAQuc,OAAO3mC,QA6UjB,UAMI,gBAAC48C,GAAA,EAAD,CAAMt+C,WAAS,EAACP,WAAW,SAASa,GAAI,EAAxC,UACI,eAACg+C,GAAA,EAAD,CAAMp+C,MAAI,EAAEC,GAAI,EAAGmjD,GAAI,EAAGC,GAAI,EAA9B,SACI,eAACC,GAAA,EAAD,CAAkB9hD,MAAM,aAAayW,QAAS,eAACy+C,GAAA,EAAD,IAAWrxD,MAAQ,GAAEM,EAAE,4BAEzE,eAACy4C,GAAA,EAAD,CAAMp+C,MAAI,EAAEC,GAAI,EAAGmjD,GAAI,EAAGC,GAAI,EAAGtsC,MAAO,CAAEzX,QAAS,QAAU4X,eAAe,MAA5E,SACI,sBAAK0nC,IAAI,GAAGF,IChc7B,4xFDocS,gBAACN,GAAA,EAAD,CAAMt+C,WAAS,EAACP,WAAW,SAA3B,UACI,eAAC6+C,GAAA,EAAD,CAAMp+C,MAAI,EAAEC,GAAI,EAAGmjD,GAAI,EAAGC,GAAI,EAA9B,SACI,eAACC,GAAA,EAAD,CAAkB9hD,MAAM,kBAAkByW,QAAS,eAACy+C,GAAA,EAAD,IAAWrxD,MAAQ,GAAEM,EAAE,kCAE9E,eAACy4C,GAAA,EAAD,CAAMp+C,MAAI,EAAEC,GAAI,EAAGmjD,GAAI,EAAGC,GAAI,EAAGtsC,MAAO,CAAEzX,QAAS,QAAU4X,eAAe,MAA5E,SACI,sBAAK0nC,IAAI,GAAGF,IEzc7B,21FFmdH,eAACN,GAAA,EAAD,CAAMp+C,MAAI,EAAV,SACI,eAAC4jD,GAAA,EAAD,CACIvjD,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,YACRb,MAAM,YACNL,GAAI,CAACmB,GAAI,GACTI,QAAU+6D,GAAYt9D,EACtByB,QAjXU,MAGiB,IAAnC87D,EAAYG,qBACuB,IAAnCG,EAAYH,mBAIZO,GAAqB,GAGrBI,GAAkB,IA8Vd,SAUK12D,EAAE,mC,UGlSRy3D,OAtKS,KAAO,IAAD,IAE1B,MAAM,MACF7rC,EADE,SAEFpO,EAFE,UAGFgO,EAHE,SAIFC,EAJE,SAKF1xB,EALE,YAMF+nB,EANE,cAOF6qB,EAPE,mBAQFC,GACApd,aAAa5yB,GAAUA,EAAMy0C,mBAE3BqmB,EAAYh9B,iBAAOi9B,gBACnB73D,EAAQuC,eACR6zC,EAAWgG,cACXkZ,EAAc/I,aAAcvsD,EAAMmiD,YAAYC,KAAK,QACnD,EAAEliD,GAAMC,gBACN5H,UAAWu/D,GAAyBprB,EAAuBkrB,EAAU/8B,UACtE4R,GAAqBl0C,UAAWq7D,IAAgBjnB,IAEvDknB,YACI,sEACAn2C,EAAS3hB,QAAU+wC,EAAmBpvB,UACnCgO,EAAU3vB,QAAU+wC,EAAmBphB,WACvCC,EAAS5vB,QAAU+wC,EAAmBnhB,WACtC,UAAC1xB,EAAS8B,aAAV,QAAmB,OAAnB,UAA4B+wC,EAAmB7yC,gBAA/C,QAA2D,KAC3D+nB,EAAYjmB,QAAU+wC,EAAmB9qB,aAgChD,OACI,qCACK81C,EAED,eAACnf,GAAA,EAAD,CAAMt+C,WAAS,EAAf,SACI,eAACs+C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAA/B,SACI,eAAC2G,GAAA,EAAD,CAAUr+C,OAAQ,UAI1B,iCACA,gBAACyyC,GAAA,EAAD,CAAMt+C,WAAS,EAACC,QAASg7D,EAAc,EAAI,EAA3C,UACI,eAAC3c,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAA/B,SACI,eAAC5F,GAAA,EAAD,CAAYv9C,QAAQ,KAApB,SAA0ByF,EAAE,+BAEhC,eAACy4C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,EAAGmjD,GAAI,EAAGC,GAAI,EAA7B,SACI,eAAC3a,GAAA,EAAD,CACI7nC,KAAK,YACLW,MAAO2vB,EAAU3vB,MACjB6D,MAAOM,EAAE,qBACT5L,KAAK,OACLiU,UAAU,MACVxI,MAAO2rB,EAAU3rB,MACjBC,MAAOA,EACPH,SAAWsmB,GAAYiwB,EAASz3B,EAAa,CAAE/F,MAAO,YAAa7c,MAAOoqB,EAAQuc,OAAO3mC,SACzFkE,UAAQ,MAIhB,eAAC04C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,EAAGmjD,GAAI,EAAGC,GAAI,EAA7B,SACI,eAAC3a,GAAA,EAAD,CACI7nC,KAAK,WACLW,MAAO4vB,EAAS5vB,MAChB6D,MAAOM,EAAE,oBACT5L,KAAK,OACLiU,UAAU,MACVxI,MAAO4rB,EAAS5rB,MAChBC,MAAOA,EACPH,SAAWsmB,GAAYiwB,EAASz3B,EAAa,CAAE/F,MAAO,WAAY7c,MAAOoqB,EAAQuc,OAAO3mC,SACxFkE,UAAQ,MAIhB,eAAC04C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,EAAGmjD,GAAI,EAAGC,GAAI,EAA7B,SACI,eAAC,KAAD,CACIxiD,KAAK,cACLW,MAAOimB,EAAYjmB,MACnB6D,MAAOM,EAAE,gBACTL,SAAWsmB,GAAYiwB,EAASz3B,EAAa,CAAE/F,MAAO,cAAe7c,MAAOoqB,EAAQuc,OAAO3mC,SAC3F+D,SAAS,QACTC,MAAOiiB,EAAYjiB,MACnBC,MAAOA,EACPC,UAAQ,SAKpB,gBAAC04C,GAAA,EAAD,CAAMt+C,WAAS,EAACC,QAASg7D,EAAc,EAAI,EAA3C,UACI,eAAC3c,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,EAAGmjD,GAAI,EAAGC,GAAI,EAA7B,SACI,eAAC3a,GAAA,EAAD,CACI7nC,KAAK,WACLW,MAAO8wC,EAAc9wC,MACrB6D,MAAM,eACNtL,KAAK,OACLiU,UAAU,KACVxI,MAAO8sC,EAAc9sC,MACrBC,MAAOA,EACPH,SAAWsmB,GAAYiwB,EAASz3B,EAAa,CAAE/F,MAAO,WAAY7c,MAAOoqB,EAAQuc,OAAO3mC,SACxF2J,UAAQ,MAIhB,eAACizC,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,EAAGmjD,GAAI,EAAGC,GAAI,EAA7B,SACI,eAAC3a,GAAA,EAAD,CACI7nC,KAAK,WACLW,MAAO9B,EAAS8B,MAChB6D,MAAOM,EAAE,mBACT5L,KAAK,OACLiU,UAAU,MACVxI,MAAO9F,EAAS8F,MAChBC,MAAOA,EACPH,SAAWsmB,GAAYiwB,EAASz3B,EAAa,CAAE/F,MAAO,WAAY7c,MAAOoqB,EAAQuc,OAAO3mC,gBAKpG,eAAC08C,GAAA,EAAD,CAAKl/C,GAAI,CAAEmB,GAAI,GAAf,SACI,eAACyjD,GAAA,EAAD,CACIvjD,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,YACRb,MAAM,YACNkB,QAAS84D,EACT55D,QA3HYk8C,UAExB,IACI,MAAMrkD,EAAQ,CACVi6B,MAAOA,EAAM/vB,MACb2hB,SAAUA,EAAS3hB,MACnB2vB,UAAWA,EAAU3vB,MACrB4vB,SAAUA,EAAS5vB,MACnB9B,SAAUA,EAAS8B,MACnBimB,YAAaA,EAAYjmB,OAGvBuiD,QAAiB7R,EAAkB56C,GAAO0sD,SAChDnI,EAASv5C,YAAmByhD,EAAShjD,UAEzC,MAAMyE,GAAQ,IAAD,IAEuB,EAMC,EANjC,GAA0B,OAAtB,UAAAA,EAAMqR,YAAN,eAAYiI,QACZ+8B,EAASh5C,YAAiB8C,EAAE,wBAC5Bk2C,EAASj9B,EAAiB,UAACpZ,EAAMqR,YAAP,aAAC,EAAYiI,SAI3C,GAA2B,OAAvB,UAAAtZ,EAAMqR,YAAN,eAAY9V,SACZ86C,EAASh5C,YAAgB,UAAC2C,EAAMqR,YAAP,aAAC,EAAY9V,YA4FtC,SASK4E,EAAE,oC,UC/KhB,MAAM63D,GAAuBxmE,IAAcC,gBAAgB,CAC9DC,UAAYC,IAAD,CACPsmE,iBAAkBtmE,EAAQY,SAAS,CAC/BV,MAAO,MACHE,IAAM,0CACNM,OAAQ,UAGhB6lE,iBAAkBvmE,EAAQY,SAAS,CAC/BV,MAAQC,IAAD,CACHC,IAAM,0CACNM,OAAQ,OACRM,KAAMb,QAKlBsB,kBAAkB,KAGT,4BACT+kE,GADS,4BAETC,IACAJ,GCuFWK,OArFe,KAE1B,MAAM,EAAEl4D,GAAMC,eACRH,EAAQuC,eACR+yD,EAAc/I,aAAcvsD,EAAMmiD,YAAYC,KAAK,QAClD4V,GAAoBz/D,UAAW8/D,IAAmBH,MAClDI,GAAqB//D,UAAWs9D,IAAcsC,MAE/C,iBAAEnrB,GAAqBtd,aAAa5yB,GAAUA,EAAM20C,yBACpD2E,EAAWgG,cAqCjB,OANA3tC,qBAAU,KAPqBynC,WAE3B,MAAMoI,QAAiB0Z,IAAmBzZ,SAC1CnI,EAASjJ,EAAUmR,KAKnBia,KAED,IAIC,gBAAC5f,GAAA,EAAD,CAAMt+C,WAAS,EAACC,QAASg7D,EAAc,EAAI,EAA3C,UACI,eAAC3c,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAAIrkD,GAAI,CAAEoB,GAAI,GAA7C,SACI,gBAAC8oC,GAAA,EAAD,CAAa0U,UAAU,WAAW19C,QAAQ,WAA1C,UACI,eAACo2D,GAAA,EAAD,CAAW1Y,UAAU,SAAS5+C,GAAI,CAAEoB,GAAI,GAAxC,SAA8CuF,EAAE,yCAChD,gBAACs4D,GAAA,EAAD,WACKH,GAAiB,eAAC9T,GAAA,EAAD,CAAU9pD,QAAQ,cAAcyL,OAAQ,MACzD8mC,EAAiBnvC,KAAI,CAAC9B,EAAO+mB,IAC1B,eAAC+6B,GAAA,EAAD,CAEIrrC,QACI,eAAC0rC,GAAA,EAAD,CAAQ3rC,QAASxW,EAAMmxC,QAASrtC,SAAWsmB,GA9CtD,EAACA,EAASpqB,KAC3Bq6C,EAASnJ,EAAY,IACdlxC,EACHmxC,QAAS/mB,EAAQuc,OAAOnwB,YA2CuDoM,CAAawH,EAASpqB,GAAQX,KAAMW,EAAMX,OAErGwE,MAAO7D,EAAMklB,aAJR6B,aAUzB,eAAC21B,GAAA,EAAD,CAAKl/C,GAAI,CAAEmB,GAAI,EAAGk+C,GAAI,GAAtB,SACI,eAAC1kD,GAAA,EAAD,UACI,eAACiqD,GAAA,EAAD,CACIvjD,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,YACRb,MAAM,YACNkB,QAAS+6D,EACT77D,QAxDYk8C,UAE5B,IACI,MAAMoI,QAAiBga,EAAkBtrB,GAAkBuR,SAC3DnI,EAASv5C,YAAmByhD,EAAShjD,UAEzC,MAAMyE,GAAQ,IAAD,EAEwB,EAAjC,GAA2B,OAAvB,UAAAA,EAAMqR,YAAN,eAAY9V,SACZ86C,EAASh5C,YAAgB,UAAC2C,EAAMqR,YAAP,aAAC,EAAY9V,YAwClC,SASK4E,EAAE,kC,OCrGpB,MAAMu4D,GAAelnE,IAAcC,gBAAgB,CACxDC,UAAYC,IAAD,CACTgnE,aAAchnE,EAAQY,SAAS,CAC7BV,MAAO,MACLE,IAAM,gCACNM,OAAQ,UAIZumE,cAAejnE,EAAQY,SAAS,CAC9BV,MAAQC,IAAD,CACLC,IAAM,gCACNM,OAAQ,OACRM,KAAMb,QAIZsB,kBAAkB,KAGP,wBAAEylE,GAAF,yBAA2BC,IAA6BJ,G,yBCPrE7pD,OAAO6vC,MAAQA,SAEfA,SAAM7tB,SAAS,sBAAuBkoC,MAoGvBC,OAlGO,KAElB,MAAM,SAAEn9B,EAAF,iBAAYyR,GAAqB3d,aAAa5yB,GAAUA,EAAM+0C,iBAC9DuE,EAAWgG,eACVsc,GAAc,UAAEngE,IAAeqgE,MAC/BD,GAAiBpgE,UAAWs9D,IAAcgD,MAC3C,EAAE34D,GAAMC,eAsBd0zD,YACI,sEACAxmB,IAAqBzR,GAiCzB,OALAntB,qBAAU,KALiBynC,WACvB,MAAMoI,QAAiBoa,IAAena,SACtCnI,EAASjJ,EAAUmR,EAASltC,QAI5B4nD,KAED,IAGC,uCACI,eAAC7a,GAAA,EAAD,CACI5kD,GAAI,CAAEoB,GAAI,GACVC,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,YACRb,MAAM,YACNI,QAtCck8C,UAEtB,IACI,MAAMrkD,EAAQ,IAAIusD,SAClBvsD,EAAM+F,OAAO,WAAYgkC,GAEzB,MAAM0iB,QAAiBqa,EAAc9mE,GAAO0sD,SAE5CnI,EAASjV,EAAkBmd,IAC3BlI,EAASv5C,YAAmByhD,EAAShjD,UAEzC,MAAOyE,GAAQ,IAAD,EAEuB,EAAjC,GAA2B,OAAvB,UAAAA,EAAMqR,YAAN,eAAY9V,SACZ86C,EAASh5C,YAAgB,UAAC2C,EAAMqR,YAAP,aAAC,EAAY9V,YAyBtCR,QAASvC,GAAas9D,EAR1B,SAUK31D,EAAE,0BAGN3H,GACG,eAACogD,GAAA,EAAD,CAAMt+C,WAAS,EAAf,SACI,eAACs+C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAA/B,SACI,eAAC2G,GAAA,EAAD,CAAUr+C,OAAQ,UAK9B,eAAC,KAAD,CACIlG,MAAM,OACNjE,MAAO6/B,EACP/7B,SAAW9D,GAAUq6C,EAASz3B,EAAa5iB,IAC3Ck9D,QAlFI,CACZC,QAAS,CACL,CAAC,CAAE,OAAU,CAAC,EAAG,GAAG,KACpB,CAAC,OAAQ,SAAU,YAAY,SAAU,cACzC,CAAC,CAAC,KAAQ,WAAY,CAAC,KAAQ,UAAW,CAAC,OAAU,MAAO,CAAC,OAAU,OACvE,CAAC,OAAQ,SACT,CAAC,UAELC,YAAa,CACTF,QAAS,CAAC,SAAU,iBA0EhBG,QAtEI,CACZ,SACA,OAAQ,SAAU,YAAa,SAAU,aACzC,OAAQ,SAAU,SAClB,OAAQ,e,oBC8IDC,OA3KO,KACpB,MAAOnoC,GAAgB,UAAC34B,IAAck5B,gBAChC,EAAEvxB,GAAMC,eACRH,EAAQuC,eACR6zC,EAAWgG,eAEVkd,EAAiBC,GAAsB7wD,mBAAS,CACrD3M,MAAO,GACPgE,MAAO,MAEF8sB,EAAa2sC,GAAkB9wD,mBAAS,CAC7C3M,MAAO,GACPgE,MAAO,MAEF+sB,EAAiB2sC,GAAsB/wD,mBAAS,CACrD3M,MAAO,GACPgE,MAAO,KAGH25D,EAAmB,CAACJ,EAAiBzsC,EAAaC,GACvDvF,MAAK,QAAC,MAACxrB,EAAD,MAAQgE,GAAT,SAAqC,IAAjBhE,EAAM4T,QAAgB5P,EAAM4P,OAAS,KAuF/D,OACE,uCACE,gBAACgpC,GAAA,EAAD,CAAMt+C,WAAS,EAACC,QAAS,EAAzB,UACE,eAACq+C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,GAA/B,SACE,eAAC5F,GAAA,EAAD,CAAYv9C,QAAQ,KAApB,mCAEF,eAACk+C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,EAA/B,SACE,eAACt1C,GAAA,EAAD,CACAlN,KAAK,WACLW,MAAOu9D,EAAgBv9D,MACvB6D,MAAOM,EAAE,2BACT5L,KAAK,WACLiU,UAAU,MACVxI,MAAOu5D,EAAgBv5D,MACvBC,MAAOA,EACPH,SAAWiJ,GApGkBA,KACnC,MAAM,MAAC/M,GAAS+M,EAAE45B,OACZi3B,EAAU9sC,EAAY9wB,MAE5Bw9D,EAAmB,IAAID,EAAiBv9D,QAAOgE,MAAwB,IAAjBhE,EAAM4T,OAAezP,EAAE,iBAAoB,KAEjGs5D,GAAgB18D,IAAD,IAAgBA,EAC7BiD,MAAO45D,EAAQhqD,OAAS,GAAKgqD,IAAY59D,EACvCmE,EAAE,qBACF,QA2FmB05D,CAA4B9wD,GAC7C7I,UAAQ,MAGV,gBAAC04C,GAAA,EAAD,CAAMt+C,WAAS,EAACE,MAAI,EAACD,QAAS,EAA9B,UACE,eAACq+C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,EAA/B,SACE,eAACt1C,GAAA,EAAD,CACElN,KAAK,eACLW,MAAO8wB,EAAY9wB,MACnB6D,MAAOM,EAAE,uBACTqI,UAAU,MACVxI,MAAO8sB,EAAY9sB,MACnBC,MAAOA,EACPH,SAAWiJ,GArGUA,KAC/B,MAAM,MAAC/M,GAAS+M,EAAE45B,OACZm3B,EAAW99D,EAAM4T,OACjBmqD,EAAUhtC,EAAgB/wB,MAGhC,IAAIgE,EAAQ,GACI,IAAb85D,EACD95D,EAAQG,EAAE,iBAEJ25D,EANiB,EAOvB95D,EAAQG,EAAE,uBAAwB,CAAC65D,iBAPZ,IASjBh+D,IAAUu9D,EAAgBv9D,QAChCgE,EAAQG,EAAE,sBAGZs5D,EAAe,CAACz9D,QAAOgE,UACvB05D,GAAoB38D,IAAD,IAAgBA,EAAOiD,MAAO+5D,EAAQnqD,OAAS,GAAK5T,IAAU+9D,EAAU55D,EAAE,uBAAyB,QAmF3F85D,CAAwBlxD,GACzC7I,UAAQ,MAGZ,eAAC04C,GAAA,EAAD,CAAMp+C,MAAI,EAACC,GAAI,GAAImjD,GAAI,GAAIC,GAAI,EAA/B,SACE,eAACt1C,GAAA,EAAD,CACElN,KAAK,mBACLW,MAAO+wB,EAAgB/wB,MACvB6D,MAAOM,EAAE,2BACTqI,UAAU,MACVxI,MAAO+sB,EAAgB/sB,MACvBC,MAAOA,EACPH,SAAWiJ,GA5FcA,KACnC,MAAM,MAAC/M,GAAS+M,EAAE45B,OAClB,IAAI3iC,EAAQ,GACQ,IAAjBhE,EAAM4T,OACP5P,EAAQG,EAAE,iBAEJnE,IAAU8wB,EAAY9wB,QAC5BgE,EAAQG,EAAE,wBAGZu5D,EAAmB,CAAC19D,QAAOgE,WAkFAk6D,CAA4BnxD,GAC7C7I,UAAQ,YAKhB,eAACw4C,GAAA,EAAD,CAAKl/C,GAAI,CAAEmB,GAAI,GAAf,SACI,eAACyjD,GAAA,EAAD,CACIz4C,SAAUg0D,EACV9+D,kBAAgB,EAChBlC,KAAK,QACLpE,KAAK,SACLmG,QAAQ,YACRb,MAAM,YACNkB,QAASvC,EACTyB,QA9FgBk8C,UAC1B,IAAGwjB,EAEH,IACE,MAAM7nE,EAAQ,CACZqoE,YAAaZ,EAAgBv9D,MAC7B8wB,YAAaA,EAAY9wB,OAGrBuiD,QAAiBptB,EAAer/B,GAAO0sD,SAC7CnI,EAASv5C,YAAmByhD,EAAShjD,UAGrC,CAACi+D,EAAoBC,EAAgBC,GACpC3hD,SAAQqiD,GAAKA,EAAE,CAACp+D,MAAO,GAAIgE,MAAO,OAEvC,MAAMA,GAAQ,IAAD,IAiBwB,EAfjC,GAA0B,OAAtB,UAAAA,EAAMqR,YAAN,eAAYiI,QAAgB,CAAC,IAAD,EAC5B,MAAM+gD,EAAYhtD,OAAOq1B,OAAP,UAAc1iC,EAAMqR,YAApB,aAAc,EAAYiI,QAEzC+gD,EAAUzqD,OAAS,EAEpByqD,EAAUtiD,SAAQuiD,IAChBjkB,EAASh5C,YAAiBi9D,OAI5BjkB,EAASh5C,YAAiB8C,EAAE,wBAKlC,GAA2B,OAAvB,UAAAH,EAAMqR,YAAN,eAAY9V,SACZ86C,EAASh5C,YAAgB,UAAC2C,EAAMqR,YAAP,aAAC,EAAY9V,YAoDtC,SAUK4E,EAAE,kCCrKjB,MAAMo6D,GAAmBhH,GAASvd,IAAS,IAAM,wEAE3CwkB,GAAsBjH,GAASvd,IAAS,IAAM,mCAC9CykB,GAAkBlH,GAASvd,IAAS,IAAM,yDAC1C0kB,GAAoBnH,GAASvd,IAAS,IAAM,iEAC5C2kB,GAAyBpH,GAASvd,IAAS,IAAM,mCACjD4kB,GAA6BrH,GAASvd,IAAS,IAAM,mCACrD6kB,GAAoBtH,GAASvd,IAAS,IAAM,yDAC5C8kB,GAAsBvH,GAASvd,IAAS,IAAM,0DAC9C+kB,GAAsBxH,GAASvd,IAAS,IAAM,yDAC9CglB,GAAoBzH,GAASvd,IAAS,IAAM,yDAC5CilB,GAAyB1H,GAASvd,IAAS,IAAM,gEACjDklB,GAAyB3H,GAASvd,IAAS,IAAM,gEACjDmlB,GAAyB5H,GAASvd,IAAS,IAAM,oCACjDolB,GAAyB7H,GAASvd,IAAS,IAAM,oCACjDqlB,GAAoB9H,GAASvd,IAAS,IAAM,yDAC5CslB,GAAyB/H,GAASvd,IAAS,IAAM,oCACjDulB,GAAyBhI,GAASvd,IAAS,IAAM,oCACjDwlB,GAAkBjI,GAASvd,IAAS,IAAM,oCAC1CylB,GAA0BlI,GAASvd,IAAS,IAAM,yDAClD0lB,GAAkBnI,GAASvd,IAAS,IAAM,wEAC1C2lB,GAAqBpI,GAASvd,IAAS,IAAM,kEAC7C4lB,GAA4BrI,GAASvd,IAAS,IAAM,+EACpD6lB,GAA8BtI,GAASvd,IAAS,IAAM,8EACtD8lB,GAAmBvI,GAASvd,IAAS,IAAM,gFAC3C+lB,GAAqBxI,GAASvd,IAAS,IAAM,8EAC7CgmB,GAAqBzI,GAASvd,IAAS,IAAM,gFAC7CimB,GAAuB1I,GAASvd,IAAS,IAAM,8EAC/CkmB,GAAuB3I,GAASvd,IAAS,IAAM,wEAC/CmmB,GAAyB5I,GAASvd,IAAS,IAAM,8EACjDomB,GAAmB7I,GAASvd,IAAS,IAAM,gFAC3CqmB,GAAqB9I,GAASvd,IAAS,IAAM,8EAC7CsmB,GAAqB/I,GAASvd,IAAS,IAAM,gEAC7CumB,GAAqBhJ,GAASvd,IAAS,IAAM,gEAC7CwmB,GAAoBjJ,GAASvd,IAAS,IAAM,mCAC5CymB,GAAwBlJ,GAASvd,IAAS,IAAM,8EAChD0mB,GAA0BnJ,GAASvd,IAAS,IAAM,8EAClD2mB,GAAcpJ,GAASvd,IAAS,IAAM,+EACtC4mB,GAAerJ,GAASvd,IAAS,IAAM,+EACvC6mB,GAAatJ,GAASvd,IAAS,IAAM,+EACrC8mB,GAAiBvJ,GAASvd,IAAS,IAAM,gFACzC+mB,GAAmBxJ,GAASvd,IAAS,IAAM,8EAC3CgnB,GAAiCzJ,GAASvd,IAAS,IAAM,mCACzDinB,GAAmC1J,GAASvd,IAAS,IAAM,mCAC3DknB,GAAoB3J,GAASvd,IAAS,IAAM,8EAG5CmnB,GAAsB5J,GAASvd,IAAS,IAAM,0DAC9ConB,GAA4B7J,GAASvd,IAAS,IAAM,0EACpDqnB,GAAoB9J,GAASvd,IAAS,IAAM,gEAC5CsnB,GAAsB/J,GAASvd,IAAS,IAAM,wEAC9CunB,GAAsBhK,GAASvd,IAAS,IAAM,yDAC9CwnB,GAA4BjK,GAASvd,IAAS,IAAM,8EACpDynB,GAAuBlK,GAASvd,IAAS,IAAM,yDAC/C0nB,GAA6BnK,GAASvd,IAAS,IAAM,8EACrD2nB,GAAqBpK,GAASvd,IAAS,IAAM,yDAC7C4nB,GAA2BrK,GAASvd,IAAS,IAAM,8EACnD6nB,GAAsBtK,GAASvd,IAAS,IAAM,+EAC9C8nB,GAAwBvK,GAASvd,IAAS,IAAM,8EAChD+nB,GAAyBxK,GAASvd,IAAS,IAAM,wEACjDgoB,GAA2BzK,GAASvd,IAAS,IAAM,8EACnDioB,GAA8B1K,GAASvd,IAAS,IAAM,+EACtDkoB,GAAgC3K,GAASvd,IAAS,IAAM,8EACxDmoB,GAAqB5K,GAASvd,IAAS,IAAM,wEAC7CooB,GAAuB7K,GAASvd,IAAS,IAAM,8EAC/CqoB,GAAuB9K,GAASvd,IAAS,IAAM,8EAC/CsoB,GAA4B/K,GAASvd,IAAS,IAAM,8EACpDuoB,GAA8BhL,GAASvd,IAAS,IAAM,8EACtDwoB,GAAmCjL,GAASvd,IAAS,IAAM,+EAC3DyoB,GAAqClL,GAASvd,IAAS,IAAM,8EAC7D0oB,GAAqBnL,GAASvd,IAAS,IAAM,+EAC7C2oB,GAAuBpL,GAASvd,IAAS,IAAM,yDAC/C4oB,GAA6BrL,GAASvd,IAAS,IAAM,8EACrD6oB,GAAyBtL,GAASvd,IAAS,IAAM,+EACjD8oB,GAA2BvL,GAASvd,IAAS,IAAM,yDACnD+oB,GAAiCxL,GAASvd,IAAS,IAAM,8EACzDgpB,GAA2BzL,GAASvd,IAAS,IAAM,yDACnDipB,GAAuB1L,GAASvd,IAAS,IAAM,8EAkXtCkpB,OA7WI,CACf3V,KAAM,QACNnjC,QAAS,eAAC,GAAD,IACT9xB,SAAU,CACN,CACIi1D,KAAM,IACNnjC,QAAS,eAACm0C,GAAD,KAEb,CACIhR,KAAM,qBACNnjC,QAAS,eAACm0C,GAAD,KAEb,CACIhR,KAAM,yBACNnjC,QAAS,eAACs0C,GAAD,KAEb,CACInR,KAAM,8BACNnjC,QAAS,eAACu0C,GAAD,KAEb,CACIpR,KAAM,mCACNnjC,QAAS,eAACw0C,GAAD,KAEb,CACIrR,KAAM,sBACNnjC,QAAS,eAACo1C,GAAD,KAEb,CACIjS,KAAM,wBACNnjC,QAAS,eAAC40C,GAAD,KAEb,CACIzR,KAAM,6BACNnjC,QAAS,eAAC60C,GAAD,KAEb,CACI1R,KAAM,iCACNnjC,QAAS,eAAC80C,GAAD,KAEb,CACI3R,KAAM,kCACNnjC,QAAS,eAAC+0C,GAAD,KAEb,CACI5R,KAAM,wBACNnjC,QAAS,eAACy0C,GAAD,KAEb,CACItR,KAAM,0BACNnjC,QAAS,eAAC00C,GAAD,KAEb,CACIvR,KAAM,0BACNnjC,QAAS,eAAC20C,GAAD,KAEb,CACIxR,KAAM,sDACNnjC,QAAS,eAACg1C,GAAD,KAEb,CACI7R,KAAM,gCACNnjC,QAAS,eAACi1C,GAAD,KAEb,CACI9R,KAAM,yCACNnjC,QAAS,eAACk1C,GAAD,KAEb,CACI/R,KAAM,yCACNnjC,QAAS,eAACm1C,GAAD,KAEb,CACIhS,KAAM,wBACNnjC,QAAS,eAACq0C,GAAD,IACTnmE,SAAU,CACN,CACIyuB,OAAO,EACPqD,QAAS,eAAC,GAAD,KAEb,CACImjC,KAAM,gBACNnjC,QAAS,eAAC,GAAD,KAEb,CACImjC,KAAM,eACNnjC,QAAS,eAAC,GAAD,KAEb,CACImjC,KAAM,aACNnjC,QAAS,eAAC,GAAD,KAEb,CACImjC,KAAM,eACNnjC,QAAS,eAAC,GAAD,CAAsB1b,qBAAqB,UAExD,CACI6+C,KAAM,kBACNnjC,QAAS,eAAC,GAAD,OAIrB,CACImjC,KAAM,4BACNnjC,QAAS,eAACo0C,GAAD,KAEb,CACIjR,KAAM,gCACNnjC,QAAS,eAACq1C,GAAD,IACTnnE,SAAU,CACN,CACIyuB,OAAO,EACPqD,QAAS,eAAC,GAAD,KAEb,CACImjC,KAAM,gBACNnjC,QAAS,eAAC,GAAD,KAEb,CACImjC,KAAM,oBACNnjC,QAAS,eAAC,GAAD,KAEb,CACImjC,KAAM,eACNnjC,QAAS,eAAC,GAAD,CAAsB1b,qBAAqB,oBAIhE,CACI6+C,KAAM,qBACNnjC,QAAS,eAACs1C,GAAD,KAEb,CACInS,KAAM,wBACNnjC,QAAS,eAACu1C,GAAD,KAEb,CACIpS,KAAM,4BACNnjC,QAAS,eAACw1C,GAAD,KAEb,CACIrS,KAAM,4BACNnjC,QAAS,eAACy1C,GAAD,KAEb,CACItS,KAAM,kBACNnjC,QAAS,eAAC01C,GAAD,KAEb,CACIvS,KAAM,qBACNnjC,QAAS,eAAC21C,GAAD,KAEb,CACIxS,KAAM,sBACNnjC,QAAS,eAAC81C,GAAD,KAEb,CACI3S,KAAM,yBACNnjC,QAAS,eAAC+1C,GAAD,KAEb,CACI5S,KAAM,kBACNnjC,QAAS,eAACg2C,GAAD,KAEb,CACI7S,KAAM,qBACNnjC,QAAS,eAACi2C,GAAD,KAEb,CACI9S,KAAM,oBACNnjC,QAAS,eAACk2C,GAAD,KAGb,CACI/S,KAAM,oBACNnjC,QAAS,eAACm2C,GAAD,KAEb,CACIhT,KAAM,uBACNnjC,QAAS,eAAC64C,GAAD,KAEb,CACI1V,KAAM,iCACNnjC,QAAS,eAACo2C,GAAD,KAEb,CACIjT,KAAM,iCACNnjC,QAAS,eAACq2C,GAAD,KAEb,CACIlT,KAAM,oCACNnjC,QAAS,eAACs2C,GAAD,KAEb,CACInT,KAAM,8BACNnjC,QAAS,eAACu2C,GAAD,KAEb,CACIpT,KAAM,+BACNnjC,QAAS,eAACw2C,GAAD,KAEb,CACIrT,KAAM,oCACNnjC,QAAS,eAACy2C,GAAD,KAEb,CACItT,KAAM,mBACNnjC,QAAS,eAAC02C,GAAD,KAEb,CACIvT,KAAM,uBACNnjC,QAAS,eAAC22C,GAAD,KAEb,CACIxT,KAAM,qCACNnjC,QAAS,eAAC42C,GAAD,KAEb,CACIzT,KAAM,yCACNnjC,QAAS,eAAC62C,GAAD,KAEb,CACI1T,KAAM,kBACNnjC,QAAS,eAAC82C,GAAD,KAWb,CACI3T,KAAM,mCACNnjC,QAAS,eAAC+2C,GAAD,KAEb,CACI5T,KAAM,0CACNnjC,QAAS,eAACg3C,GAAD,KAEb,CACI7T,KAAM,gCACNnjC,QAAS,eAACi3C,GAAD,KAEb,CACI9T,KAAM,mCACNnjC,QAAS,eAACk3C,GAAD,KAEb,CACI/T,KAAM,uCACNnjC,QAAS,eAACm3C,GAAD,KAEb,CACIhU,KAAM,yDACNnjC,QAAS,eAACo3C,GAAD,KAEb,CACIjU,KAAM,wCACNnjC,QAAS,eAACq3C,GAAD,KAEb,CACIlU,KAAM,0DACNnjC,QAAS,eAACs3C,GAAD,KAEb,CACInU,KAAM,sCACNnjC,QAAS,eAACu3C,GAAD,KAEb,CACIpU,KAAM,wDACNnjC,QAAS,eAACw3C,GAAD,KAEb,CACIrU,KAAM,qBACNnjC,QAAS,eAACy3C,GAAD,KAEb,CACItU,KAAM,wBACNnjC,QAAS,eAAC03C,GAAD,KAEb,CACIvU,KAAM,kBACNnjC,QAAS,eAAC41C,GAAD,KAEb,CACIzS,KAAM,qBACNnjC,QAAS,eAAC61C,GAAD,KAEb,CACI1S,KAAM,uBACNnjC,QAAS,eAAC23C,GAAD,KAEb,CACIxU,KAAM,0BACNnjC,QAAS,eAAC43C,GAAD,KAEb,CACIzU,KAAM,4BACNnjC,QAAS,eAAC63C,GAAD,KAEb,CACI1U,KAAM,+BACNnjC,QAAS,eAAC83C,GAAD,KAEb,CACI3U,KAAM,kBACNnjC,QAAS,eAAC+3C,GAAD,KAEb,CACI5U,KAAM,qBACNnjC,QAAS,eAACg4C,GAAD,KAEb,CACI7U,KAAM,sBACNnjC,QAAS,eAACi4C,GAAD,KAEb,CACI9U,KAAM,mCACNnjC,QAAS,eAACo4C,GAAD,KAEb,CACIjV,KAAM,sCACNnjC,QAAS,eAACq4C,GAAD,KAEb,CACIlV,KAAM,oCACNnjC,QAAS,eAACk4C,GAAD,KAEb,CACI/U,KAAM,uCACNnjC,QAAS,eAACm4C,GAAD,KAEb,CACIhV,KAAM,gCACNnjC,QAAS,eAACs4C,GAAD,KAEb,CACInV,KAAM,yCACNnjC,QAAS,eAACu4C,GAAD,KAEb,CACIpV,KAAM,2DACNnjC,QAAS,eAACw4C,GAAD,KAEb,CACIrV,KAAM,oCACNnjC,QAAS,eAACy4C,GAAD,KAEb,CACItV,KAAM,6CACNnjC,QAAS,eAAC04C,GAAD,KAEb,CACIvV,KAAM,+DACNnjC,QAAS,eAAC24C,GAAD,KAEb,CACIxV,KAAM,4CACNnjC,QAAS,eAAC44C,GAAD,OC3ZNG,OA9BO,KAEpB,MAAM,QAAE5jE,EAAF,QAAWG,GAAYi0B,aAAa5yB,GAAUA,EAAMu0C,cACpD+E,EAAWgG,eACX,EAAEl8C,GAAMC,eAEd,OACE,uCACI,eAAC0yD,GAAA,EAAD,CACIz5D,KAAMqC,EAAQD,OACds3D,iBAAkB,IAClB36D,QAAS,IAAMi+C,EAAS/4C,eACxB/B,QAAS4E,EAAEzE,EAAQH,WAGtBA,EAAQE,QACP,eAAC,KAAD,CACIR,MAAOkF,EAAE5E,EAAQN,OACjBxC,UAAW,IAAM49C,EAAS54C,eAC1B2+C,SAAU,IAAM/F,EAAS54C,eAH7B,SAIK0C,EAAE5E,EAAQC,QAIjB,eAAC,IAAD,IACA,eAAC,GAAD,QChCR,MAAM4jE,GAAa7L,GAASrd,gBAAK,IAAM,mCACjCmpB,GAAgB9L,GAASrd,gBAAK,IAAM,0DACpCopB,GAAmB/L,GAASrd,gBAAK,IAAM,mCACvCqpB,GAAgBhM,GAASrd,gBAAK,IAAM,mCACpCspB,GAAmBjM,GAASrd,gBAAK,IAAM,mCACvCupB,GAAsBlM,GAASrd,gBAAK,IAAM,mCAC1CwpB,GAAoBnM,GAASrd,gBAAK,IAAM,8EAuC/BypB,OAnCc,CACzBpW,KAAM,IACNnjC,QAAS,eAAC,GAAD,IACT9xB,SAAU,CACN,CACIi1D,KAAM,IACNnjC,QAAS,eAACg5C,GAAD,KAEb,CACI7V,KAAM,YACNnjC,QAAS,eAACi5C,GAAD,KAEb,CACI9V,KAAM,qBACNnjC,QAAS,eAACk5C,GAAD,KAEb,CACI/V,KAAM,iCACNnjC,QAAS,eAACm5C,GAAD,KAEb,CACIhW,KAAM,qCACNnjC,QAAS,eAACo5C,GAAD,KAEb,CACIjW,KAAM,wCACNnjC,QAAS,eAACq5C,GAAD,KAEb,CACIlW,KAAM,4BACNnjC,QAAS,eAACs5C,GAAD,OCvCN,SAASE,KACpB,OAAOC,YAAU,CAACF,GAAsBT,IAAat8C,IAAO+G,U,2MCLjD,SAASm2C,GAAa7/D,GAAQ,IAAD,6GACxC,MAAO,CACH0C,KAAI,OAAE1C,QAAF,IAAEA,GAAF,UAAEA,EAAOixC,qBAAT,aAAE,EAAsBtF,QAC5Bm0B,OAAQ,CACJC,MAAK,UAAE//D,EAAMggE,cAAR,aAAE,EAAcC,WAEzBp9D,QAAS,CACLw4B,MAAyC,UAA7B,OAALr7B,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,UAA2C3rC,EAAMggE,cAAjD,aAA2C,EAAcE,iBAAzD,UAA4ElgE,EAAMggE,cAAlF,aAA4E,EAAcG,aACjG/oB,KAAwC,UAA7B,OAALp3C,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,UAA2C3rC,EAAMggE,cAAjD,aAA2C,EAAcI,gBAAzD,UAA2EpgE,EAAMggE,cAAjF,aAA2E,EAAcK,YAC/FllC,KAAwC,UAA7B,OAALn7B,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,UAA2C3rC,EAAMggE,cAAjD,aAA2C,EAAcM,gBAAzD,UAA2EtgE,EAAMggE,cAAjF,aAA2E,EAAcO,YAC/F,IAAuC,UAA7B,OAALvgE,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,UAA2C3rC,EAAMggE,cAAjD,aAA2C,EAAcQ,eAAzD,UAA0ExgE,EAAMggE,cAAhF,aAA0E,EAAcS,WAC7F,IAAuC,UAA7B,OAALzgE,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,UAA2C3rC,EAAMggE,cAAjD,aAA2C,EAAcU,eAAzD,UAA0E1gE,EAAMggE,cAAhF,aAA0E,EAAcW,YAEjGv+D,UAAW,CACPi5B,MAAyC,UAA7B,OAALr7B,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,UAA2C3rC,EAAMggE,cAAjD,aAA2C,EAAcY,mBAAzD,UAA8E5gE,EAAMggE,cAApF,aAA8E,EAAca,eACnGzpB,KAAwC,UAA7B,OAALp3C,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,UAA2C3rC,EAAMggE,cAAjD,aAA2C,EAAcc,kBAAzD,UAA6E9gE,EAAMggE,cAAnF,aAA6E,EAAce,cACjG5lC,KAAwC,UAA7B,OAALn7B,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,UAA2C3rC,EAAMggE,cAAjD,aAA2C,EAAcgB,kBAAzD,UAA6EhhE,EAAMggE,cAAnF,aAA6E,EAAciB,cACjG,IAAuC,UAA7B,OAALjhE,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,UAA2C3rC,EAAMggE,cAAjD,aAA2C,EAAckB,iBAAzD,UAA4ElhE,EAAMggE,cAAlF,aAA4E,EAAcmB,aAC/F,IAAuC,UAA7B,OAALnhE,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,UAA2C3rC,EAAMggE,cAAjD,aAA2C,EAAcoB,iBAAzD,UAA4EphE,EAAMggE,cAAlF,aAA4E,EAAcqB,cAEnGthE,MAAO,CACHs7B,MAAK,UAAEr7B,EAAMggE,cAAR,aAAE,EAAcsB,WACrBlqB,KAAI,UAAEp3C,EAAMggE,cAAR,aAAE,EAAcuB,UACpBpmC,KAAI,UAAEn7B,EAAMggE,cAAR,aAAE,EAAcwB,WAExBC,OAAQ,CACJpmC,MAAK,UAAEr7B,EAAMggE,cAAR,aAAE,EAAc0B,YACrBtqB,KAAI,UAAEp3C,EAAMggE,cAAR,aAAE,EAAc2B,WACpBxmC,KAAI,UAAEn7B,EAAMggE,cAAR,aAAE,EAAc4B,YAExB1mC,QAAS,CACLG,MAAK,UAAEr7B,EAAMggE,cAAR,aAAE,EAAc6B,aACrBzqB,KAAI,UAAEp3C,EAAMggE,cAAR,aAAE,EAAc8B,YACpB3mC,KAAI,UAAEn7B,EAAMggE,cAAR,aAAE,EAAc+B,YACpB,cAAK/hE,EAAMggE,cAAX,aAAK,EAAcgC,YAEvBrZ,QAAS,CACLttB,MAAK,UAAEr7B,EAAMggE,cAAR,aAAE,EAAciC,aACrB,cAAKjiE,EAAMggE,cAAX,aAAK,EAAckC,WACnB9qB,KAAI,UAAEp3C,EAAMggE,cAAR,aAAE,EAAcmC,YACpBhnC,KAAI,UAAEn7B,EAAMggE,cAAR,aAAE,EAAcoC,aAExB9mC,KAAM,CACF,aAAIt7B,EAAMggE,cAAV,aAAI,EAAcqC,OAClB,cAAKriE,EAAMggE,cAAX,aAAK,EAAcsC,QACnB,IAAKtiE,EAAMuiE,kBACX,IAAKviE,EAAMwiE,QACX,IAAKxiE,EAAMyiE,gBACX,IAAKziE,EAAM0iE,UAEfvnC,KAAM,CACFE,MAAK,UAAEr7B,EAAMggE,cAAR,aAAE,EAAcyC,gBACrBrrB,KAAI,UAAEp3C,EAAMggE,cAAR,aAAE,EAAc2C,WACpBxnC,KAAI,UAAEn7B,EAAMggE,cAAR,aAAE,EAAc4C,WACpB,cAAK5iE,EAAMggE,cAAX,aAAK,EAAc6C,eACnB,cAAK7iE,EAAMggE,cAAX,aAAK,EAAcC,WAEvB1kE,KAAM,CACFsH,QAAS7C,EAAMyiE,gBACfrgE,UAAWpC,EAAMuiE,kBACjBpnC,KAAMn7B,EAAM0iE,SACZI,WAAY9iE,EAAM+iE,eAClB1nC,MAAOr7B,EAAMgjE,UACbC,KAAI,WAAEjjE,EAAMggE,cAAR,cAAE,GAAcsC,SAExB3/D,WAAY,CACR66C,MAAOx9C,EAAMw9C,MACb0lB,OAAQljE,EAAMkjE,OACdtgE,QAAS5C,EAAMmjE,oBCpEZ,SAASC,GAAgBpjE,GAAQ,IAAD,kBAC3C,MAAO,CACH4pB,WAAU,OAAE5pB,QAAF,IAAEA,GAAF,UAAEA,EAAOixC,qBAAT,aAAE,EAAsBrnB,WAClCy5C,GAAI,CACA3nC,WAAY,IACZ9hC,MAAOoG,EAAMwiE,QACb9oE,SAAU,WAEd4pE,GAAI,CACA5pE,SAAU,WACVE,MAAOoG,EAAMwiE,QACb9mC,WAAY,KAEhB6nC,GAAI,CACA7pE,SAAU,OACVE,MAAOoG,EAAMwiE,QACb9mC,WAAY,KAEhB8nC,GAAI,CACA9pE,SAAU,UACVE,MAAOoG,EAAMwiE,QACb9mC,WAAY,KAEhB+nC,GAAI,CACA/pE,SAAU,SACVE,MAAOoG,EAAMwiE,QACb9mC,WAAY,KAEhBgoC,GAAI,CACAhqE,SAAU,WACVE,MAAOoG,EAAMwiE,QACb9mC,WAAY,KAEhBioC,UAAW,CACPjqE,SAAU,WACVgiC,WAAY,IACZ9hC,MAAyC,UAA7B,OAALoG,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAqB3rC,EAAMwiE,QAAUxiE,EAAM0iE,UAE5EkB,UAAW,CACPlqE,SAAU,UACVgiC,WAAY,IACZ9hC,MAAOoG,EAAMuiE,mBAEjBtV,QAAS,CACLvzD,SAAU,UACVE,MAAOoG,EAAMuiE,kBACb7mC,WAAY,KAEhBmoC,MAAO,CACHnqE,SAAU,WACVgiC,WAAY,IACZsnB,WAAY,WAEhB8gB,MAAO,CACHrb,cAAe,MACf/sB,WAAY,IACZsnB,WAAY,QACZppD,MAAOoG,EAAMyiE,iBAEjBsB,OAAQ,CACJC,cAAe,cAEnBjjE,YAAa,CACTm2C,UAAW,EACXzb,aAAc,EACd,YAAa,CACTthC,IAAK,GACL8qD,KAAM,EACNrrD,MAAOoG,EAAMikE,QACb,yBAA0B,CACtB9pE,IAAK,IAGb,kBAAmB,CACfojD,QAAS,sBAEb,WAAY,CACR1jD,QAAS,QAEb,aAAc,CACVM,IAAK,IAGbkX,mBAAoB,CAChB6lC,UAAW,EACXzb,aAAc,EACd,YAAa,CACTthC,IAAK,GACL8qD,KAAM,EACNrrD,MAAOoG,EAAMikE,QACb,yBAA0B,CACtB9pE,IAAK,IAGb,gBAAiB,CACbojD,QAAS,iCAEb,WAAY,CACR1jD,QAAS,QAEb,aAAc,CACVM,IAAK,GAET,YAAa,CACT+L,OAAQ,OACRgxC,UAAW,IAGnBgtB,yBAA0B,CACtBvhE,WAAY,MACZu0C,UAAW,EACXzb,aAAc,EACd,YAAa,CACTthC,IAAK,GACL8qD,KAAM,EACNrrD,MAAOoG,EAAMikE,QACb,yBAA0B,CACtB9pE,IAAK,IAIb,gBAAiB,CACbojD,QAAS,iCAEb,WAAY,CACR1jD,QAAS,QAEb,aAAc,CACVM,IAAK,IAGbgqE,qBAAsB,CAClB,sBAAuB,CACnB/oC,gBAAmD,UAA7B,OAALp7B,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,UAA2C3rC,EAAMggE,cAAjD,aAA2C,EAAcc,kBAAzD,UAA6E9gE,EAAMggE,cAAnF,aAA6E,EAAce,cAC5G56D,YAAa,MACb1M,aAAc,OACdG,MAAO,SAEX,4BAA6B,CACzBwhC,gBAAmD,UAA7B,OAALp7B,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,UAA2C3rC,EAAMggE,cAAjD,aAA2C,EAAcc,kBAAzD,UAA6E9gE,EAAMggE,cAAnF,aAA6E,EAAce,gBAGpHppB,YAAa,CACTvc,gBAAiBp7B,EAAM2C,WACvBw0C,MAAO,OACPuQ,UAAW,qBACXoB,SAAU,EACVvL,QAAS,OACTrG,UAAW,OACX/wC,YAAa,OACb1M,aAAe,GAAD,OAAGuG,QAAH,IAAGA,GAAH,UAAGA,EAAOixC,qBAAV,aAAG,EAAsBx3C,kBAE3C2qE,YAAa,CACT1qE,SAAU,WACVgiC,WAAY,IACZ9hC,MAAO,QACP2jD,QAAS,MACTymB,cAAe,aACf9sB,UAAW,QAEfgW,eAAgB,CACZxzD,SAAU,YACVgiC,WAAY,IACZ9hC,MAAOoG,EAAMuiE,kBACbyB,cAAe,cAEnBld,aAAc,CACV7rD,OAAQ,UACRxB,aAAc,OAElB4qE,YAAa,CACTltB,MAAO,OACPjxC,OAAQ,OACRxM,SAAU,QAEdwpD,aAAc,CACV/L,MAAO,OACPjxC,OAAQ,OACRxM,SAAU,MAEd4qE,YAAa,CACTntB,MAAO,OACPjxC,OAAQ,OACRxM,SAAU,UAEd6qE,cAAe,CACXptB,MAAO,OACPjxC,OAAQ,OACRxM,SAAU,QAEdsnD,eAAgB,CACZ7J,MAAO,OACPjxC,OAAQ,OACRxM,SAAU,MAEd8qE,cAAe,CACXrtB,MAAO,OACPjxC,OAAQ,OACRxM,SAAU,W,cCzMtB,MAAM+qE,GAAqB,CAACzkE,EAAOpG,KAAW,IAAD,YACzC,MAAM8qE,EAAcC,aAAM/qE,EAAO,KACjC,MAAO,CACHgrE,GAAK,eAAcF,IACnBG,GAAK,gBAAeH,IACpBI,IAAM,iBAAgBJ,mBAA6BA,IACnDK,IAAM,aAAYL,sBAAgCA,IAClDM,IAAM,aAAYN,sBAAgCA,IAClDO,IAAM,aAAYP,mBAA6BA,IAE/C7hE,QAAU,qBAAoB8hE,aAAK,UAAC3kE,EAAMggE,cAAP,aAAC,EAAcK,YAAa,MAC/Dj+D,UAAY,qBAAoBuiE,aAAK,UAAC3kE,EAAMggE,cAAP,aAAC,EAAce,cAAe,MACnEU,OAAS,qBAAoBkD,aAAK,UAAC3kE,EAAMggE,cAAP,aAAC,EAAc2B,WAAY,MAC7DhZ,QAAU,qBAAoBgc,aAAK,UAAC3kE,EAAMggE,cAAP,aAAC,EAAcmC,YAAa,MAC/DjnC,QAAU,qBAAoBypC,aAAK,UAAC3kE,EAAMggE,cAAP,aAAC,EAAc8B,YAAa,MAC/D/hE,MAAQ,qBAAoB4kE,aAAK,UAAC3kE,EAAMggE,cAAP,aAAC,EAAcuB,UAAW,QAIpD,SAAS7Q,GAAc/kB,EAAS3rC,GAAQ,IAAD,IAClD,OAA4BykE,GAAmBzkE,EAA5B,SAAZ2rC,EAAuC,UAAQ3rC,EAAMggE,cAAd,aAAQ,EAAc2C,WAAgC,UAAQ3iE,EAAMggE,cAAd,aAAQ,EAAckF,SCmH/GllE,OAjHOixC,IAClB,IAAIr3C,EACJ,OAAQq3C,EAAcnnB,aAClB,IAAK,SACDlwB,EAAQurE,KACR,MACJ,IAAK,SACDvrE,EAAQwrE,KACR,MACJ,IAAK,SACDxrE,EAAQyrE,KACR,MACJ,IAAK,SACDzrE,EAAQ0rE,KACR,MACJ,IAAK,SACD1rE,EAAQ2rE,KACR,MACJ,IAAK,SACD3rE,EAAQ4rE,KACR,MACJ,IAAK,SACD5rE,EAAQ6rE,KACR,MACJ,IAAK,SACD7rE,EAAQ8rE,KACR,MAEJ,QACI9rE,EAAQomE,KAGhB,MAAM2F,EAAc,CAChB3F,OAAQpmE,EACR4oE,QAAS,GACThlB,MAAO,GACP2lB,kBAAmB,GACnBxgE,WAAY,GACZ8/D,gBAAiB,GACjBF,kBAAmB,GACnBG,SAAU,GACVkD,aAAc,GACdC,iBAAkB,GAClBnvB,QAAS,GACTzF,iBAGJ,GACS,SADDA,EAActF,QAEdg6B,EAAYnoB,MAAQ5jD,EAAMgpE,WAC1B+C,EAAYzC,OAAStpE,EAAMipE,eAC3B8C,EAAYxC,kBAAoBvpE,EAAMqmE,UACtC0F,EAAYhjE,WAAa/I,EAAMipE,eAC/B8C,EAAYlD,gBAAkB7oE,EAAM6oE,gBACpCkD,EAAYpD,kBAAoB3oE,EAAM2oE,kBACtCoD,EAAY5C,eAAiBnpE,EAAM6oE,gBACnCkD,EAAY3C,UAAYppE,EAAM2oE,kBAC9BoD,EAAYjD,SAAW9oE,EAAM6oE,gBAC7BkD,EAAYC,aAAehsE,EAAMknE,kBACjC6E,EAAYE,iBAAmBjsE,EAAMknE,kBAAoB,GACzD6E,EAAYjvB,QAAU98C,EAAM6oE,gBAC5BkD,EAAYnD,QAAU5oE,EAAMksE,mBAI5BH,EAAYnoB,MAAQ5jD,EAAM4jD,MAC1BmoB,EAAYzC,OAAStpE,EAAMspE,OAC3ByC,EAAYxC,kBAAoBvpE,EAAM4jD,MACtCmoB,EAAYhjE,WAAa/I,EAAMumE,aAC/BwF,EAAYlD,gBAAkB7oE,EAAMmsE,QACpCJ,EAAYpD,kBAAoB3oE,EAAMqqE,QACtC0B,EAAY5C,eAAiBnpE,EAAMosE,QACnCL,EAAY3C,UAAYppE,EAAMqsE,aAC9BN,EAAYjD,SAAW9oE,EAAMssE,QAC7BP,EAAYC,aAAehsE,EAAMqnE,cACjC0E,EAAYE,iBAAmBjsE,EAAMinE,eACrC8E,EAAYjvB,QAAU98C,EAAMusE,QAC5BR,EAAYnD,QAAU5oE,EAAMssE,QAIpC,MAAME,EAAe,CACjB7xE,UAAW08C,EAAcjnB,UAAY,MAAQ,MAC7CvnB,QAASo9D,GAAa8F,GACtBU,OAAQ,CACJnN,QAAS,CACLxR,UAAW,OACXnK,QAAS,OACT,4BAA6B,CACzBmK,UAAW,UAIvB5mD,WAAYsiE,GAAgBuC,GAC5BjV,cAAeA,GAAczf,EAActF,QAASg6B,GACpDxjB,YAAa,CACT1f,OAAQ,CACNjoC,GAAI,EACJmjD,GAAI,IACJC,GAAI,IACJ+J,GAAI,KACJ2e,GAAI,KACJC,IAAK,QAKTC,EAASC,aAAYL,GAG3B,OAFAI,EAAOE,WCpII,SAAiC1mE,GAAQ,IAAD,kGACnD,MAAM2mE,EAA4C,UAA7B,OAAL3mE,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,UAA2C3rC,EAAMggE,cAAjD,aAA2C,EAAc6C,eAAzD,UAA0E7iE,EAAMggE,cAAhF,aAA0E,EAAcqC,OACxG,MAAO,CACHuE,UAAW,CACPC,eAAgB,CACZC,KAAM,CACFprC,WAAY,IACZjiC,aAAc,SAc1BstE,SAAU,CACNvwE,aAAc,CACVsrD,UAAW,GAEf+kB,eAAgB,CACZC,KAAM,CACFE,gBAAiB,QAErBC,QAAS,CACLxtE,aAAe,GAAD,OAAGuG,QAAH,IAAGA,GAAH,UAAGA,EAAOixC,qBAAV,aAAG,EAAsBx3C,oBAInDytE,cAAe,CACXL,eAAgB,CACZC,KAAM,CACFltE,MAAK,UAAEoG,EAAMggE,cAAR,aAAE,EAAc0C,SAErB/T,YAAa,OACbwY,WAAY,OACZC,cAAe,QAEnBpsE,MAAO,CACHtB,SAAU,cAItB2tE,eAAgB,CACZR,eAAgB,CACZC,KAAM,CACFvpB,QAAS,UAIrB+pB,eAAgB,CACZT,eAAgB,CACZC,KAAM,CACFvpB,QAAS,UAIrBgqB,SAAU,CACNV,eAAgB,CACZC,KAAM,CACFhtE,WAAY,UAEhB0tE,SAAU,CACN1lE,OAAQ,gBAIpB2lE,kBAAmB,CACfZ,eAAgB,CACZC,KAAM,CACFltE,MAAOoG,EAAMyiE,gBACb0E,WAAY,OACZC,cAAe,OACf,iBAAkB,CACdxtE,MAAOoG,EAAM4lE,aACbxqC,gBAAiBp7B,EAAM6lE,iBACvB,UAAW,CACPzqC,gBAAiBp7B,EAAM6lE,kBAE3B,0BAA2B,CACvBjsE,MAAOoG,EAAM4lE,eAGrB,UAAW,CACPxqC,gBAAiBp7B,EAAM6lE,iBACvBjsE,MAAOoG,EAAM4lE,aACb,0BAA2B,CACvBhsE,MAAOoG,EAAM4lE,kBAMjC8B,gBAAiB,CACbb,eAAgB,CACZC,KAAM,CACFltE,MAAOoG,EAAMyiE,gBACbvgB,SAAU,UAItBylB,gBAAiB,CACbd,eAAgB,CACZhkE,QAAS,CACLjJ,MAAOoG,EAAM0iE,YAIzBkF,aAAc,CACVf,eAAgB,CACZgB,MAAO,CACHjuE,MAAOoG,EAAM0iE,SACb,iBAAkB,CACd9oE,MAAOoG,EAAMuiE,kBACb7oE,SAAU,eAK1BouE,iBAAkB,CACdjB,eAAgB,CACZC,KAAM,CACFnkE,YAAiB,OAAL3C,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBpnB,gBAAiB88C,EAAU,cAC7DltE,aAAe,GAAD,OAAGuG,QAAH,IAAGA,GAAH,UAAGA,EAAOixC,qBAAV,aAAG,EAAsBx3C,iBACvC,qCAAsC,CAClC+I,YAA+C,UAA7B,OAALxC,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAqB3rC,EAAMggE,OAAOyC,gBAAkB,GAA1E,UAA+EziE,EAAMggE,cAArF,aAA+E,EAAc+H,SAE9G,0BAA2B,CACvBvlE,YAAW,UAAExC,EAAMggE,cAAR,aAAE,EAAcG,cAE/B,2BAA4B,CACxB5iB,QAAS,IAGjBsqB,MAAO,CACHnsC,WAAY,IACZ/4B,YAAiB,OAAL3C,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBpnB,gBAAiB88C,EAAU,cAC7DppB,QAAS,cACT9jD,aAAe,GAAD,OAAGuG,QAAH,IAAGA,GAAH,UAAGA,EAAOixC,qBAAV,aAAG,EAAsBx3C,iBACvC,gCAAiC,CAC7B8jD,QAAS,YACT,mCAAoC,CAChCoR,YAAa,KAIzBqZ,kBAAmB,CACfrZ,YAAa,GAEjBsZ,eAAgB,CACZxuE,aAAe,GAAD,OAAGuG,QAAH,IAAGA,GAAH,UAAGA,EAAOixC,qBAAV,aAAG,EAAsBx3C,oBAInDyuE,UAAW,CACPrB,eAAgB,CACZC,KAAM,CACF,iBAAkB,CACdltE,MAAyC,UAA7B,OAALoG,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAqB3rC,EAAMggE,OAAOyC,gBAAkB,GAA1E,UAA+EziE,EAAMggE,cAArF,aAA+E,EAAcmI,UAG5GC,KAAM,CACFhtC,gBAAiBp7B,EAAMw9C,MACvBrG,MAAO,OAEXkxB,WAAY,CACRzuE,MAAyC,UAA7B,OAALoG,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,OAA2C3rC,QAA3C,IAA2CA,GAA3C,UAA2CA,EAAOggE,cAAlD,aAA2C,EAAeK,YAA1D,OAAwErgE,QAAxE,IAAwEA,GAAxE,UAAwEA,EAAOggE,cAA/E,aAAwE,EAAeG,gBAI1GmI,gBAAiB,CACbzB,eAAgB,CACZC,KAAM,CACF,yBAA0B,CACtBnkE,WACsC,UAA7B,OAAL3C,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAqB3rC,EAAMggE,OAAOyC,gBAAkB,GAA1E,UAA+EziE,EAAMggE,cAArF,aAA+E,EAAca,eACjGpnE,aAAc,EACdG,MAAOoG,EAAM0iE,SACb,sBAAuB,CACnB9oE,MAAyC,UAA7B,OAALoG,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAqB3rC,EAAMggE,OAAOyC,gBAAkB,GAA1E,UAA+EziE,EAAMggE,cAArF,aAA+E,EAAcmB,gBAIhHoH,OAAQ,CACJ9uE,aAAe,GAAD,OAAGuG,QAAH,IAAGA,GAAH,UAAGA,EAAOixC,qBAAV,aAAG,EAAsBx3C,iBACvCsI,UAAW,+GAIvBymE,WAAY,CACR3B,eAAgB,CACZC,KAAM,CACFtkE,YAAaxC,EAAM02C,QACnBmX,QAA2C,UAA7B,OAAL7tD,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAqB,GAAM,KAItE88B,UAAW,CACP5B,eAAgB,CACZ6B,OAAQ,CACJ,UAAW,CACPttC,gBAAiB,kBAKjCutC,YAAa,CACT9B,eAAgB,CACZC,KAAM,KASd8B,UAAW,CACP/B,eAAgB,CACZC,KAAM,CACFltE,MAAyC,UAA7B,OAALoG,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,UAA2C3rC,EAAMggE,cAAjD,aAA2C,EAAc2C,WAAzD,UAAsE3iE,EAAMggE,cAA5E,aAAsE,EAAcO,YAC3F59D,WAA8C,UAA7B,OAAL3C,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAqB3rC,EAAMyiE,gBAAjD,UAAmEziE,EAAMggE,cAAzE,aAAmE,EAAcS,cAIzGoI,QAAS,CACLhC,eAAgB,CACZC,KAAM,CACF,0CAA2C,CACvCltE,MAAO,cAKvBkvE,mBAAoB,CAChBjC,eAAgB,CACZC,KAAM,CACFltE,MAAOoG,EAAM0iE,SACbhpE,SAAU,UAItBqvE,YAAa,CACTlC,eAAgB,CACZjnE,MAAO,CACHs3C,UAAW,GACXzb,aAAc,MAI1ButC,eAAgB,CACZnC,eAAgB,CACZC,KAAM,CACF/kE,UAAW,UAIvBknE,8BAA+B,CAC3BpC,eAAgB,CACZqC,KAAM,CACF9tC,gBAAmD,UAA7B,OAALp7B,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,UAA2C3rC,EAAMggE,cAAjD,aAA2C,EAAcC,UAAzD,UAAqEjgE,EAAMggE,cAA3E,aAAqE,EAAcG,aACpG,2BAA4B,CACxB39D,YACsC,UAA7B,OAALxC,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,UAAqB,UAAA3rC,EAAMggE,cAAN,eAAcyC,iBAAkB,GAA3E,UAAgFziE,EAAMggE,cAAtF,aAAgF,EAAcS,YAEtG,iBAAkB,CACd7mE,MAAyC,UAA7B,OAALoG,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,UAA2C3rC,EAAMggE,cAAjD,aAA2C,EAAcuC,kBAAzD,UAA6EviE,EAAMggE,cAAnF,aAA6E,EAAckG,SAEtG,uBAAwB,CACpB9qC,gBAAe,UAAEp7B,EAAMggE,cAAR,aAAE,EAAcO,aAEnC,kBAAmB,CACf3mE,MAAK,UAAEoG,EAAMggE,cAAR,aAAE,EAAcO,gBAKrC4I,QAAS,CACLtC,eAAgB,CACZuC,cAAe,CACXpkB,aAAc,YACdxiD,YAA+C,UAA7B,OAALxC,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAqB3rC,EAAMggE,OAAOyC,gBAAkB,GAA1E,UAA+EziE,EAAMggE,cAArF,aAA+E,EAAcmG,WAItHkD,UAAW,CACPxC,eAAgB,CACZrpB,MAAO,CACHD,QAAS,mBAIrB+rB,aAAc,CACVzC,eAAgB,CACZC,KAAM,CACFtkE,YAA+C,UAA7B,OAALxC,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAqB3rC,EAAMggE,OAAOyC,gBAAkB,GAA1E,UAA+EziE,EAAMggE,cAArF,aAA+E,EAAcmG,QAC1G,sBAAuB,CACnBzsE,SAAU,WACVE,MAAOoG,EAAMwiE,QACb9mC,WAAY,QAK5B6tC,WAAY,CACR1C,eAAgB,CACZ2C,QAAS,CACL5vE,MAAyC,UAA7B,OAALoG,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,UAA2C3rC,EAAMggE,cAAjD,aAA2C,EAAc2C,WAAa3iE,EAAMw9C,MACnF76C,WAA8C,UAA7B,OAAL3C,QAAK,IAALA,GAAA,UAAAA,EAAOixC,qBAAP,eAAsBtF,SAAtB,UAA2C3rC,EAAMggE,cAAjD,aAA2C,EAAcqC,OAAzD,UAAkEriE,EAAMggE,cAAxE,aAAkE,EAAc+F,WAIxG0D,eAAgB,CACZ5C,eAAgB,CACZC,KAAM,CACFptE,SAAU,cD5LNgwE,CAAwB/D,GAErCa,G,UEtFImD,OAzBC,IAAmB,IAAlB,SAAEt1E,GAAe,EAC9B,MAAM48C,EAAgBvhB,aAAa5yB,GAAUA,EAAMm0C,iBAC5C24B,EAAUC,GAAenhE,qBAQhC,OANA+F,qBAAU,KAnBUm9B,KACpB,OAAQA,GACJ,IAAK,KACD,OAAO,qCACX,IAAK,KACD,OAAO,qCACX,IAAK,KACD,OAAO,qCACX,QACI,OAAO,uCAWXk+B,CAAe74B,EAAcrF,QAAQ4a,MAAMlhB,IACvCukC,EAAYvkC,EAAE1iC,cAEnB,CAACquC,EAAcrF,SAGd,qCACKg+B,GACG,eAAC,KAAD,CAAch+B,OAAQqF,EAAcrF,OAAQm+B,cAAc,KAAKH,SAAUA,EAAzE,SACKv1E,O,qBCLrB,MAAMwB,GAAa,CACfm0E,UAtBJ,SAA6BrpE,GACzB,OAAO,eAACk5C,GAAA,EAAD,IAAWl5C,EAAOpM,UAAU,UAsBnC01E,QAnBJ,SAA2BtpE,GACvB,OAAO,eAACk5C,GAAA,EAAD,IAAWl5C,EAAOpM,UAAU,QAmBnC21E,WAhBJ,SAA8BvpE,GAC1B,OAAO,eAACk5C,GAAA,EAAD,IAAWl5C,EAAOpM,UAAU,WAgBnC41E,UAbJ,SAA6BxpE,GACzB,OAAO,eAACk5C,GAAA,EAAD,IAAWl5C,EAAOpM,UAAU,UAanCglD,KAVJ,SAAwB54C,GACpB,OAAO,eAAC44C,GAAA,EAAD,IAAU54C,KAUjB84C,WAmFWoZ,OA9EE,KACb,MAAOz5D,EAAMsmD,GAAWh3C,oBAAS,GAC3B0hE,EAAkB16C,aAAa5yB,GAAUA,EAAMo0C,WAE/CiP,EAAekqB,IACF,cAAXA,GAGJ3qB,GAAQ,IAOZ,OAJAjxC,qBAAU,KACNixC,EAAQ0qB,EAAgBhxE,QACzB,CAACgxE,EAAgBrtE,OAAQqtE,EAAgBhxE,OAGxC,uCAEiC,YAA5BgxE,EAAgB3vE,SACb,eAAC,KAAD,CACIuxC,aAAco+B,EAAgBp+B,aAC9B5yC,KAAMA,EACN05D,iBAAkB,IAClB36D,QAAS,CAAC2Q,EAAGwhE,IAAMnqB,EAAYmqB,GAC/BhvE,QAAS8uE,EAAgB9uE,QACzBy3D,oBAAqBl9D,GAAWu0E,EAAgBv0E,YAChDkH,OACI,uCACI,eAAC+9C,GAAA,EAAD,CAAQlhD,MAAM,YAAYlB,KAAK,QAAQsB,QAAS,IAAMmmD,IAAtD,kBAGA,eAACgF,GAAA,EAAD,CAAYzsD,KAAK,QAAQ,aAAW,QAAQkB,MAAM,UAAUI,QAAS,IAAMmmD,IAA3E,SACI,eAAC,KAAD,CAAWzmD,SAAS,iBAQX,UAA5B0wE,EAAgB3vE,SACb,eAAC,KAAD,CACIs4D,oBAAqBl9D,GAAWu0E,EAAgBv0E,YAChDm2C,aAAco+B,EAAgBp+B,aAC9B5yC,KAAMA,EACN05D,iBAAkB,IAClB36D,QAAS,CAAC2Q,EAAGwhE,IAAMnqB,EAAYmqB,GALnC,SAOI,eAACrX,GAAA,EAAD,CACIx4D,QAAQ,SACRiB,SAAU0uE,EAAgBj+B,cAC1B5yC,GAAI,CACAI,QAAU,GAAEywE,EAAgBj+B,qBAC5BvyC,MAAyC,YAAlCwwE,EAAgBj+B,cAA8B,WAAa,IAEtEpvC,OACI,wCACsC,IAAjCqtE,EAAgB/9B,cACb,eAACyO,GAAA,EAAD,CAAQlhD,MAAM,YAAYlB,KAAK,QAAQsB,QAAS,IAAMmmD,IAAtD,mBAIuB,IAA1BiqB,EAAgBh+B,OACb,eAAC+Y,GAAA,EAAD,CAAYzsD,KAAK,QAAQ,aAAW,QAAQkB,MAAM,UAAUI,QAAS,IAAMmmD,IAA3E,SACI,eAAC,KAAD,CAAWzmD,SAAS,eAhBxC,SAsBK0wE,EAAgB9uE,gB,gBC5E1BivE,OAhCQ,CAACztE,EAAOC,KAC3B,OAAQA,EAAOzI,MACX,I7EJgB,W6EID,CACX,MAAM,KAAEk2E,GAASztE,EAAOC,QACxB,MAAO,IACAF,EACH0tE,QAGR,KAAKz/B,EAAO,CACR,MAAM,KAAEy/B,GAASztE,EAAOC,QACxB,MAAO,IACAF,EACH2tE,YAAY,EACZC,eAAe,EACfF,QAGR,KAAKx/B,EACD,MAAO,IACAluC,EACH4tE,eAAe,EACfD,YAAY,EACZD,KAAM,MAGd,QACI,MAAO,IAAK1tE,KChBnBstB,KAASugD,KAAKh7D,QACfya,KAASwgD,cAAcjoD,IAAOyH,UAIlC,MAAM/uB,GAAe,CACjBovE,YAAY,EACZC,eAAe,EACfF,KAAM,MAKJK,GAAkBC,wBAAc,MAEzBC,GAAmB,IAAmB,IAAlB,SAAE12E,GAAe,EAC9C,MAAOyI,EAAOs5C,GAAY40B,qBAAWT,GAAgBlvE,IAErDoT,qBACI,IACI2b,KAAS6gD,OAAOC,oBAAoBV,IAE5Bp0B,EADAo0B,EACS,CACLl2E,KAAMy2C,EACN/tC,QAAS,CACLytE,YAAY,EACZD,KAAM,CACF53E,GAAI43E,EAAKW,IACTr/C,MAAO0+C,EAAK1+C,MACZ1wB,KAAMovE,EAAKY,aAAe,WAK7B,CACL92E,KAAM02C,QAKtB,CAACoL,IAoBL,YAA4BrgD,IAAxB+G,EAAM4tE,eAAgC5tE,EAAM4tE,cAK5C,eAACG,GAAgBQ,SAAjB,CACItvE,MAAO,IACAe,EACHwuE,iBAjBap1B,MAAOpqB,EAAOV,IAAahB,KAAS6gD,OAAOM,+BAA+Bz/C,EAAOV,GAkB9FogD,4BA1BwB,CAAC1/C,EAAOV,IAAahB,KAAS6gD,OAAOQ,2BAA2B3/C,EAAOV,GA2B/FliB,MAAO,OACPwiE,qBA1BiB,KACzB,MAAMC,EAAW,IAAIvhD,KAAS6gD,KAAKW,mBAEnC,OAAOxhD,KAAS6gD,OAAOY,gBAAgBF,IAwB/BxiE,OAnBG,IAAMihB,KAAS6gD,OAAOa,UAoBzBC,cAlBU71B,gBACZ9rB,KAAS6gD,OAAOe,uBAAuBlgD,IAkBrCmgD,cAfU,QAMlB,SAYK53E,IAhBE,eAAC,GAAD,KAyBAw2E,I,qBClGf,MAAMqB,GAAmBpB,0BAEZqB,GAAoB,IAAmB,IAAlB,SAAE93E,GAAe,EAC/C,MAAM,UAAE4H,GAAcyzB,aAAY5yB,GAASA,EAAMu0C,cAajD,OAXA5iC,qBAAU,KACoD,MAAbxS,IAE7CmwE,KAAU7qD,KAAK,iCAEf6qD,KAAUC,SAASpwE,EAAUqwE,GAAI,CAC7BlxE,KAAMa,EAAUmnD,SAChBt3B,MAAO7vB,EAAU6vB,WAEtB,CAAC7vB,IAGA,eAACiwE,GAAiBb,SAAlB,CAA2BtvE,MAAO,KAAlC,SACK1H,K,cCFb,MAAMg7D,GAAe,CAACvzD,EAAKC,MACP,IAAIotD,MACZC,IAAIttD,EAAKC,EAAO,CAAEstD,OAAQ,IAASC,KAAM,IAAKC,UAAU,KA8KrDgjB,OA3KG,IAIX,IAJY,QACfjxE,EADe,eAEfkxE,EAFe,cAGfC,GACE,EAEF,MAAM,EAAEvsE,GAAMC,eACRH,EAAQuC,eACRmqE,EAAcngB,aAAcvsD,EAAMmiD,YAAYC,KAAK,OACnDhM,EAAWgG,eAEVuwB,GAAW,UAAEp0E,IAAe6Q,gBAE5BmJ,EAASq6D,GAAclkE,oBAAS,IAChCmkE,EAAWC,GAAgBpkE,mBAAS,CACvCyiB,gBAAiB,CACbpvB,MAAO,GACPgE,MAAO,IAEXqrB,SAAU,CACNrvB,MAAO,GACPgE,MAAO,MAITorB,EAAkB0hD,EAAU1hD,gBAC5BC,EAAWyhD,EAAUzhD,SAErB2hD,EAAwB,CAACn0D,EAAO7c,KAC9BwW,IACc,oBAAVqG,GACAy2C,GAAa,kBAAmBtzD,GAEtB,aAAV6c,GACAy2C,GAAa,WAAYtzD,IAIjCszD,GAAa,WAAY98C,GACzBu6D,GAAcjF,IAAD,IAAgBA,EAAO,CAACjvD,GAAQ,CAAE7c,QAAOgE,MAAO,SAG3DitE,EAAkBC,KAEI,IAApBA,IACA5d,GAAa,kBAAmB,IAChCA,GAAa,WAAY,KAG7BA,GAAa,WAAY4d,GAEzBL,EAAWK,IAqDf,OAlBAx+D,qBAAU,KACN,MAAMy6C,EAAU,IAAIC,KAEpB,GAAID,EAAQn6C,IAAI,YAAa,CAEzB,MAAMm+D,EAAchkB,EAAQn6C,IAAI,YAEZ,SAAhBm+D,IACAH,EAAsB,kBAAmB7jB,EAAQn6C,IAAI,oBACrDg+D,EAAsB,WAAY7jB,EAAQn6C,IAAI,cAGlDi+D,EAA+B,SAAhBE,MAIlB,IAGD,uCACI,gBAAC7yB,GAAA,EAAD,CAAOvgD,WAAW,SAASQ,QAAS,EAAGK,GAAI,EAA3C,UACI,sBAAKs+C,IAAKC,KAAMC,IAAI,gBAAgBhC,MAAOu1B,EAAc,IAAM,IAAKxmE,OAAO,SAC3E,eAAC8xC,GAAA,EAAD,CACIp+C,MAAOoG,EAAMyC,QAAQL,UAAUg1C,KAC/B+V,cAAY,EACZ1yD,QAASiyE,EAAc,KAAO,KAHlC,sBAOA,eAAC10B,GAAA,EAAD,CACIv9C,QAAQ,UACRf,SAAS,OACTknD,UAAW8rB,EAAc,SAAW,UAHxC,SAKIpxE,OAGR,wBAAM4gD,SArEMhG,UAChBuH,EAAM10C,iBAEN,IACE,MAAMlX,EAAQ,CACZs5B,gBAAiBA,EAAgBpvB,MACjCqvB,SAAUA,EAASrvB,OAEfuiD,QAAiBquB,EAAU96E,GAAO0sD,SACxC7mD,aAAawY,QAAQ,QAASouC,EAAStiD,OAEzB,OAAdwwE,QAAc,IAAdA,OAEA,MAAOzsE,GAAQ,IAAD,IAKkB,EAQC,EARjC,GAHa,OAAb0sE,QAAa,IAAbA,OAG0B,OAAtB,UAAA1sE,EAAMqR,YAAN,eAAYiI,QACd+8B,EAASh5C,YAAiB8C,EAAE,wBAC5BkN,OAAOgM,QAAP,UAAerZ,EAAMqR,YAArB,aAAe,EAAYiI,QAAQvB,SAAQ,IAAsB,IAApBc,EAAOS,GAAY,EAC5DwzD,EAAUj0D,GAAO7Y,MAAQsZ,EAAO,MAKtC,GAA2B,OAAvB,UAAAtZ,EAAMqR,YAAN,eAAY9V,SACd86C,EAASh5C,YAAgB,UAAC2C,EAAMqR,YAAP,aAAC,EAAY9V,YA0CtC,UACI,eAAC2nC,GAAA,EAAD,CACI7nC,KAAK,kBACLW,MAAOovB,EAAgBpvB,MACvB6D,MAAOM,EAAE,6BACT5L,KAAK,OACLiU,UAAU,MACVxI,MAAOorB,EAAgBprB,MACvBC,MAAOA,EACPH,SAAWsmB,GAAY4mD,EAAsB,kBAAmB5mD,EAAQuc,OAAO3mC,SAGnF,eAACknC,GAAA,EAAD,CACI7nC,KAAK,WACLW,MAAOqvB,EAASrvB,MAChB6D,MAAOM,EAAE,mBACT5L,KAAK,WACLiU,UAAU,MACVxI,MAAOqrB,EAASrrB,MAChBC,MAAOA,EACPH,SAAWsmB,GAAY4mD,EAAsB,WAAY5mD,EAAQuc,OAAO3mC,SAG5E,eAACuW,GAAA,EAAD,CACIlX,KAAK,UACLwE,MAAOM,EAAE,sBACTqS,QAASA,EACT1S,SAAW49C,GAAUuvB,EAAevvB,EAAM/a,OAAOnwB,WAGrD,eAACkmC,GAAA,EAAD,CAAKl/C,GAAI,CAAEmB,GAAI,GAAf,SACI,eAACyjD,GAAA,EAAD,CACIvjD,kBAAgB,EAChBvB,WAAS,EACTX,KAAK,QACLpE,KAAK,SACLmG,QAAQ,YACRb,MAAM,YACNkB,QAASvC,EAPb,SASK2H,EAAE,6BCpL3B,MAAMitE,GAAe9pB,aAAO6R,KAAP7R,EAAe,QAAC,MAAErjD,GAAH,QAAgB,CAChD,qBAAsB,CACpB1G,SAAU,IACVikD,QAASv9C,EAAM1F,QAAQ,QAuBd8yE,OAnBI,KACf,MAAMh3B,EAAWgG,eACX,gBAAEz/C,GAAoB+yB,aAAY5yB,GAASA,EAAMu0C,cAEvD,OACI,eAAC87B,GAAD,CACI/zE,KAAMuD,EADV,SAGI,eAAC,GAAD,CACIrB,QAAQ,4BACRkxE,eAAgB,KACZp2B,EAASl4C,aAAmB,IAC5B0Q,OAAOC,SAASw+D,eC4BrBC,OA1BH,KACR,MAAMr8B,EAAgBvhB,aAAa5yB,GAAUA,EAAMm0C,gBAEnD,OACI,eAACs8B,EAAA,EAAD,CAAsBC,aAAW,EAAjC,SACI,gBAACC,EAAA,EAAD,CAAeztE,MAAOwmE,GAAOv1B,GAA7B,UACI,eAACyhB,EAAA,EAAD,IAGA,eAAC,GAAD,UAEQ,eAACqY,GAAD,UACI,gBAACoB,GAAD,WACI,eAAC,GAAD,IACA,eAAC,GAAD,IACA,eAAC,GAAD,iB,oCC5CzB,MCSDuB,GAAOh2E,aAAaC,QAAQ,cAElCoyB,KACE4jD,IAAIC,MACJD,IAAIE,MACJtsD,KAAK,CACJ6vC,IAAK,QACL0c,UAAW,CACT,QAAS,CACPC,YDlB2B,CAChCC,OAAQ,CACNC,UAAW,WACX7iD,SAAU,WACV8iD,eAAgB,eAChBC,uBAAwB,mBACxBjlE,MAAO,QACPklE,QAAS,UACTC,gBAAiB,mBACjBC,QAAS,UACThvD,aAAc,eACdjf,MAAO,QACPkuE,WAAY,aACZC,UAAW,YACX9wC,QAAS,UACTgrC,OAAQ,SACR3wD,QAAS,UACT02D,sBAAuB,mBACvBC,YAAa,WACbt5D,KAAM,OACNtY,MAAO,QACP6kB,gBAAiB,iBACjBgtD,QAAS,UACTC,iBAAkB,mBAClB9zE,QAAS,aACT81B,SAAU,WACVt1B,QAAS,UACTyE,MAAO,QACP8uE,aAAc,mBACdC,kBAAmB,qCACnBC,kBAAmB,sBACnBC,YAAa,cACbC,QAAS,UACTC,qBAAsB,2BACtBC,kBAAmB,oBACnBC,gBAAiB,kBACjBC,kBAAmB,oBACnBC,eAAgB,iBAChBC,mBAAoB,qBACpBC,iBAAkB,mBAClBC,aAAc,eACdC,iBAAkB,mBAClBC,mBAAoB,qBACpBC,iBAAkB,mBAClBC,GAAI,KACJ/gE,OAAQ,SACR+hC,MAAO,QACPtzB,OAAQ,SACRpf,QAAS,UACT2xE,aAAc,eACdC,UAAW,YACXC,kBAAmB,qBACnBC,wBAAyB,0BACzBC,oBAAqB,2BACrBC,qBAAsB,eACtBC,WAAY,aACZC,kBAAmB,4BACnBC,WAAY,sBACZC,eAAgB,kBAChBC,yBAA0B,4BAC1BC,kBAAmB,qBACnBC,uBAAwB,yBACxBC,oBAAqB,sBACrBC,YAAa,cACbC,kBAAmB,oBACnBC,YAAa,eACbC,UAAW,YACXC,gBAAiB,kBACjBC,iBAAkB,mBAClBh3E,SAAU,WACVi3E,6BAA8B,iCAC9BC,mBAAoB,qBACpBC,oBAAqB,0BACrBC,eAAgB,qBAChBC,aAAc,eACdvuD,QAAS,UACTwuD,YAAa,cACbC,YAAa,cACbC,aAAc,eACdC,wBAAyB,0BACzBxzC,OAAQ,SACRna,OAAQ,SACRuL,QAAS,UACTqiD,iBAAkB,mBAClBC,mBAAoB,qBACpBC,gBAAiB,kBACjBC,aAAc,eACdntD,KAAM,OACNotD,WAAY,aACZC,UAAW,YACXC,YAAa,cACbC,WAAY,CACVtvC,OAAQ,8BACR9lC,MAAO,QACPm1E,YAAa,eAEfE,gBAAiB,cACjBC,OAAQ,SACRC,kBAAmB,oBACnBC,aAAc,eACdC,kBAAmB,mBACnBjtB,KAAM,OACNktB,uBAAwB,yBACxBC,gBAAiB,kBACjBC,cAAe,gBACf90C,SAAU,WACV+0C,UAAW,YACXC,cAAe,gBACfjuD,KAAM,OACNuZ,OAAQ,SACRrvB,SAAU,WACVgkE,QAAS,UACTb,UAAW,YACXluD,SAAU,WACVxO,OAAQ,SACRw9D,gBAAiB,kBACjBC,QAAS,UACTC,QAAQ,UACRC,YAAY,cACZC,cAAc,gBACdC,gBAAgB,oBAChB/mC,MAAM,QACNgnC,QAAQ,UACRnyD,YAAY,cACZoyD,kBAAkB,oBAClBC,2BAA2B,6BAC3BC,OAAO,SACPC,mBAAmB,sBACnBC,WAAY,aACZzB,UAAU,YACVrtD,KAAK,OACL+uD,IAAI,MACJC,oBAAoB,sBACpBC,kBAAmB,oBACnBC,aAAa,kBACbC,mBAAmB,qBACnBC,WAAW,aACXC,SAAU,WACVC,eAAe,iBACfC,0BAA2B,gCAC3BC,sBAAuB,oDACvBC,gBAAiB,kBACjBC,oBAAqB,wBACrBC,WAAY,aACZC,WAAY,aACZC,aAAc,eACdC,wBAAyB,0BACzBC,YAAa,eACbC,YAAa,eACbC,SAAU,WACV3sB,QAAS,UACTjkC,QAAS,UACTC,QAAS,UACT4wD,OAAQ,SACRjC,cAAe,gBACfzB,mBAAoB,qBACpB2D,cAAe,iBACfC,iCAAkC,gEAClCC,kCAAmC,qCACnCC,iBAAkB,mBAClBC,wBAAyB,0BACzBC,kBAAmB,oBACnBC,wBAAyB,0BACzBC,gBAAiB,kBACjBC,cAAe,gBACfC,eAAgB,iBAChBC,uBAAwB,4BACxBC,qBAAsB,uBACtBC,gCAAiC,oCACjCC,gBAAiB,kBACjBC,kBAAmB,oBACnBr5E,SAAU,WACVs5E,iBAAkB,mBAClBC,gBAAiB,kBACjBC,QAAS,UACTC,UAAW,YACXC,iBAAkB,mBAClB7pC,MAAO,QACPomC,uBAAwB,yBACxB0D,4BAA6B,8BAC7BxD,cAAe,gBACfyD,kBAAmB,oBACnBC,wBAAyB,8BACzBC,oBAAqB,0BACrBC,kCAAmC,+EACnCC,yBAA0B,iCAC1BC,aAAc,eACdC,wBAAyB,0BACzBC,YAAa,cACbC,KAAM,QACNrmC,KAAM,OACNsmC,SAAU,WACVC,cAAe,gBACfC,MAAO,QACPC,SAAU,WACVC,QAAS,UACTlrD,MAAO,QACPhK,QAAS,UACTm1D,cAAe,uBACfC,YAAa,qBACbC,YAAY,cACZC,iBAAiB,mBACjBC,GAAG,KACHC,aAAa,eACbnuE,OAAO,UAETkQ,OAAQ,CACNk+D,YAAa,iCACbC,cAAe,wBACfC,cAAe,gBACfC,yBAA0B,mDAC1BC,cAAe,gBACfC,iBAAkB,+CAClBC,iBAAkB,mBAClBC,gBAAiB,kBACjBD,iBAAkB,mBAClBE,2BAA4B,oDAC5BC,kCAAmC,uCACnCC,iCAAkC,uCAEpCtvB,QAAS,CACPuvB,eAAgB,2BAChBC,mBAAoB,uBAEtBvO,SAAU,CACRwO,0BAA2B,+FAC3BC,4BAA6B,iCAC7BC,2BAA4B,kEAC5BC,wBAAyB,4CACzBC,yBAA0B,qDAC1BC,0BAA2B,sDAC3BC,yBAA0B,4EAC1BC,oCAAqC,iFACrCC,6BAA8B,sDAC9BC,sBAAuB,qDACvBC,sBAAuB,mDACvBC,yBAA0B,+DAC1BC,yBAAyB,2BACzBC,0BAA2B,6BAC3BC,+BAA+B,mCAC/BC,YAAY,cACZlF,eAAe,gDACf6E,sBAAuB,mDACvBF,6BAA8B,sDAC9BQ,aAAc,gBACdC,wCAAyC,uDACzCC,wCAAyC,+CACzCC,0BAA2B,mDAC3BC,sCAAuC,qKACvCC,qCAAsC,+EACtCC,2BAA4B,gMAC5BC,2CAA4C,oEAE9CC,UAAW,CACTC,QAAS,UACT1wE,OAAQ,UAEV2wE,OAAQ,CACNC,WAAY,gBACZC,cAAe,kBAEjBC,UAAW,CACT7vB,eAAgB,iBAChB8vB,eAAgB,iBAChBC,oBAAqB,eACrBC,yBAA0B,oBAC1BC,eAAgB,UAChBC,iBAAkB,YAClBC,iBAAkB,YAClBC,aAAc,eACdvwB,QAAS,UACTqtB,aAAc,eACdmD,iBAAkB,mBAClBC,qBAAsB,uBACtBC,gBAAiB,kBACjBC,aAAc,WACdC,gBAAiB,oBACjBC,cAAe,gBACfC,qBAAsB,4BACtBC,kBAAmB,oBACnBC,QAAS,UACTC,YAAa,cACbC,QAAS,UACTC,YAAa,cACbC,UAAW,YACXC,UAAW,YACXC,mBAAoB,qBACpBj/E,QAAS,UACTC,SAAU,WACVi/E,OAAQ,SACRlG,cAAe,gBACfmG,gBAAiB,0BACjBC,eAAgB,iBAChB1F,UAAW,YACX2F,gBAAiB,UACjBC,iBAAkB,mBAClBC,WAAY,cACZC,yBAA0B,8BAC1BC,UAAW,YACXC,cAAe,gBACfpF,SAAU,YAEZqF,QAAS,CACPC,eAAgB,iBAChBC,KAAM,OACNjO,eAAgB,iBAChBkO,SAAU,WACVC,YAAa,cACbC,aAAc,eACdC,eAAgB,iBAChBC,UAAW,aACXC,mBAAoB,qBACpBC,mBAAoB,qBACpBC,eAAgB,iBAChBC,iBAAkB,mBAClBC,KAAM,OACNC,aAAc,eACdhuE,OAAQ,SACRiuE,gBAAiB,kBACjBnrB,OAAQ,SACRorB,qBAAsB,uBACtBC,IAAK,MACL7J,QAAS,UACT8J,OAAO,SACPC,eAAe,iBACfC,eAAgB,iBAChB9sC,KAAM,OACNqmC,KAAM,QACN0G,WAAY,cAGdC,aAAc,CACZC,YAAa,+BAEfC,eAAgB,+BAChBC,gBAAiB,wEACjBC,uBAAwB,gCACxBC,sBAAuB,+BACvBC,oBAAqB,+EACrBC,sBAAuB,+BACvBC,wBAAyB,6BACzBC,8BAA+B,wCAC/BC,4BAA6B,sCAC7BC,4BAA6B,qCAC7BC,4BAA6B,uCAC7BC,uBAAwB,8BACxBC,8BAA+B,wCAC/BC,oBAAqB,+BACrBC,oCAAqC,4CACrCC,2BAA4B,sCAC5BC,uBAAwB,kCACxBC,gBAAiB,oBACjBC,YAAa,+BACbC,kBAAmB,iBACnBC,2BAA4B,qCAC5BC,oBAAqB,+BACrBC,kBAAmB,uBACnBC,iBAAkB,sBAClBC,oBAAqB,wBACrBC,kBAAmB,sBACnBC,mBAAoB,uBACpBC,wBAAyB,4BACzBC,gBAAiB,oBACjBC,uBAAwB,gCACxBC,eAAgB,8EAChBC,gBAAiB,gFACjBC,YAAa,gCACbC,WAAY,iDACZC,iBAAkB,oIAClBC,mBAAoB,8BACpBC,qBAAsB,yBACtBC,yBAA0B,8BAC1BC,qBAAsB,6EACtBC,sCAAuC,iDACvCC,qBAAsB,yBACtBC,gCAAiC,0CACjCC,iBAAkB,iCAClBrvD,iBAAkB,kDAClBC,cAAe,8BACfqvD,0BAA2B,8BAC3BC,gBAAiB,oBACjBC,+BAAgC,wBAChCC,wBAAyB,kBACzBC,0BAA2B,+CAC3BC,yBAA0B,mDAC1BC,yBAA0B,mDAC1BC,oCAAqC,uGACrCC,wBAAyB,kEACzBC,sBAAuB,+BACvBC,yBAA0B,8BAC1BC,kBAAmB,2BACnBC,eAAgB,kCAChBC,eAAgB,4BAChBC,aAAc,iBACdC,wBAAyB,kCACzBC,qBAAsB,6BACtBC,wBAAyB,mCACzBC,gBAAiB,0BACjBC,mBAAoB,8BACpBC,uBAAwB,qCACxBC,qBAAsB,mCACtBC,oBAAqB,kCACrBC,mBAAoB,8BACpBC,4BAA6B,gDAC7BC,uBAAwB,kCACxBC,oBAAqB,+BACrBC,uBAAwB,kCACxBC,0BAA2B,2BAC3BC,+BAAgC,gCAChCC,aAAc,uBACdC,oBAAqB,+BACrBC,oBAAqB,qBACrBC,uBAAwB,uDACxBC,6BAA8B,wCAC9BC,wBAAyB,wCACzBC,gBAAiB,0BACjBC,oBAAqB,+BACrBC,cAAe,wBACfC,kBAAmB,6BACnBC,oBAAqB,+BACrBC,aAAc,wBACdC,YAAa,oBACbC,iBAAkB,4BAClBC,mBAAoB,mDACpBC,gBAAiB,0BACjBC,oBAAqB,+BACrBC,yBAA0B,oCAC1BC,oBAAqB,+BACrBC,uBAAwB,kCACxBC,eAAgB,iEAChBC,iBAAkB,2BAClBC,cAAe,+BACfC,wBAAyB,mCACzBC,mBAAoB,2BACpBC,wBAAyB,wBACzBC,aAAc,uBACdC,kBAAmB,4BACnBC,6BAA8B,oCAC9BC,cAAe,wBACfC,eAAgB,qBAChBC,iBAAkB,+BAClBC,iBAAkB,iCAClBC,qBAAsB,gCACtBC,yBAA0B,mCAC1BC,uBAAwB,kCACxBC,uBAAwB,kCACxBC,kBAAmB,uBACnBC,uBAAwB,kCACxBC,2BAA4B,sCAC5BC,sBAAuB,iCACvBC,0BAA2B,oCAC3BC,uBAAwB,kCACxBC,2BAA4B,qCAC5BC,oBAAqB,+BACrBC,2BAA4B,gCAC5BC,uBAAwB,yBACxBC,wBAAyB,uBACzBC,sBAAuB,iCACvBC,uBAAwB,kCACxBC,gBAAiB,2BACjBC,+BAAgC,qCAChCC,4BAA6B,gCAC7BC,4BAA6B,8BAC7BC,uBAAwB,2BACxBC,4BAA6B,uCAC7BC,gCAAiC,4DACjCC,uBAAwB,4BACxBC,8BAA+B,4CAC/BC,sBAAuB,gCACvBC,yBAA0B,mCAC1BC,6BAA8B,uCAC9BC,6BAA8B,2DAC9BC,wBAAyB,4BACzBC,6BAA8B,sCAC9BC,sBAAuB,gCACvBC,iBAAkB,qBAClBC,sBAAuB,+BACvBC,iBAAkB,4BAClBC,kBAAmB,4BACnBC,kBAAmB,4BACnBC,aAAc,iBACdC,kBAAmB,4BACnBC,aAAc,kDACdC,yBAA0B,oCAC1BC,kBAAmB,oBACnBC,2BAA4B,6BAC5BC,qBAAsB,gCACtBC,iBAAkB,2BAClBC,mBAAoB,yBACpBC,0BAA2B,4DAC3BC,kBAAmB,gCACnBC,mBAAoB,wCACpBC,wBAAyB,8BACzBC,kBAAmB,wBACnBC,oBAAqB,8BACrBC,eAAgB,mBAChBC,gBAAiB,0BACjBC,mBAAoB,mCACpBC,iBAAkB,uBAClBC,kBAAmB,4BACnBC,yCAA0C,uCAC1CC,2BAA4B,8BAC5BC,+BAAgC,kCAChCC,2BAA4B,4BAC5BC,sBAAuB,mBACvBC,0BAA2B,8BAC3BC,2BAA4B,8BAC5BC,uBAAwB,2BACxBC,4BAA6B,uCAC7BC,oBAAqB,sDACrBC,4BAA6B,oDAC7BC,yBAA0B,6BAC1BC,kBAAmB,4BACnBC,gBAAiB,4BACjBC,kBAAmB,4BACnBC,cAAe,yBACfC,aAAc,iBACdC,2BAA4B,qCAC5BC,yBAA0B,oCAC1BC,2BAA4B,2BAC5BC,yBAA0B,oCAC1BC,qBAAsB,8BACtBC,oBAAqB,oBACrBC,4BAA6B,4BAC7BC,6BAA8B,6BAC9BC,6BAA8B,uCAC9BC,yBAA0B,oCAC1BC,kBAAmB,6BACnBC,0BAA2B,qCAC3BC,mBAAoB,8BACpBC,mBAAoB,4BACpBC,kBAAmB,wBACnBC,mBAAoB,yBACpBC,mBAAoB,yBACpBC,uBAAwB,8BACxBC,6BAA8B,gCAC9BC,kBAAmB,0BACnBC,4BAA6B,gCAC7BC,iCAAkC,qCAClCC,mBAAoB,8BACpBC,oBAAqB,+BACrBC,2BAA4B,sCAC5BC,oBAAqB,+BACrBC,qBAAsB,gCACtBC,wBAAyB,mCACzBC,iBAAkB,4BAClBC,wBAAyB,4BACzBC,yBAA0B,8BAC1BC,6BAA8B,kCAC9BC,yBAA0B,4BAC1BC,oBAAqB,yBACrBC,uBAAwB,mCACxBC,yBAA0B,8BAC1BC,oBAAqB,8BACrBC,mBAAoB,+BACpBC,mBAAoB,8BACpBC,qBAAsB,sCACtBC,6BAA8B,+CAC9BC,sBAAuB,+BACvBC,YAAa,sBACbC,sBAAuB,iDACvBC,oBAAqB,0BACrBC,eAAgB,sDAChBC,mBAAoB,+BACpBC,wBAAyB,sCACzBC,cAAe,yBACfC,kBAAmB,8BACnBC,qBAAsB,wDACtBC,oBAAqB,oCACrBC,kBAAmB,kCACnBC,yBAA0B,uCAC1BC,sBAAuB,0BACvBC,0BAA2B,qCAC3BC,gCAAiC,2CACjCC,gCAAiC,4CACjCC,+BAAgC,kDAChCC,yBAA0B,oCAC1BC,qBAAsB,yBACtBC,0BAA2B,kCAC3BC,0BAA2B,oCAC3BC,0BAA2B,oCAC3BC,0BAA2B,mCAC3BC,uBAAwB,gCACxBC,oBAAqB,2CACrBC,mBAAoB,8BACpBC,mBAAoB,8BACpBC,wBAAyB,6BACzBC,kBAAmB,2BACnBC,6BAA8B,yCAC9BC,yBAA0B,mDAC1BC,4BAA6B,0BAC7BC,+BAAgC,2CAChCC,+BAAgC,4CAChCC,4BAA6B,yCAC7BC,uBAAwB,4CACxBC,2BAA4B,kCAC5BC,eAAgB,mBAChBC,iBAAkB,+CAClBC,oBAAqB,2BACrBC,oBAAqB,6BACrBC,oBAAqB,8BACrBC,yBAA0B,8BAC1BC,oBAAqB,sBACrBC,+BAAgC,8BAChCC,yBAA0B,2BAC1BC,oBAAqB,+BACrBC,wBAAyB,0BACzBC,oBAAqB,0BACrBC,qBAAsB,2BACtBC,sBAAuB,qCACvBC,iCAAkC,4GAClCC,sBAAuB,gCACvBC,sBAAuB,gCACvBC,2BAA4B,uCAC5BC,iCAAkC,4CAClCC,mCAAoC,oFACpCC,oCAAqC,+FACrCC,yBAA0B,mCAC1BC,2BAA4B,sCAC5BC,+BAAgC,0CAChCC,oBAAqB,+BACrBC,kBAAmB,yBACnBC,iBAAkB,gDAClBC,QAAS,yCACTC,kBAAmB,yDACnBC,iBAAkB,0BAClBC,qBAAsB,mDACtBC,gBAAiB,CACfC,WAAY,0BACZC,cAAe,4BACfC,UAAW,aACXC,sBAAuB,mCACvBC,UAAW,sBACXC,UAAW,kBACXC,iBAAkB,qBAClBC,iBAAkB,qBAClBC,cAAe,oBACfC,UAAW,cAEbC,4BAA6B,8BAC7BC,4BAA6B,gCC5mB1B,QAAS,CACRxiB,YCrB4B,CAChCC,OAAQ,CACNC,UAAW,WACX7iD,SAAU,WACV8iD,eAAgB,eAChBC,uBAAwB,mBACxBjlE,MAAO,QACPklE,QAAS,UACTC,gBAAiB,mBACjBC,QAAS,UACThvD,aAAc,eACdjf,MAAO,QACPkuE,WAAY,aACZC,UAAW,YACX9wC,QAAS,UACTgrC,OAAQ,SACR3wD,QAAS,UACT02D,sBAAuB,mBACvBC,YAAa,WACbt5D,KAAM,OACNtY,MAAO,QACP6kB,gBAAiB,iBACjBgtD,QAAS,UACTC,iBAAkB,mBAClB9zE,QAAS,aACT81B,SAAU,WACVt1B,QAAS,UACTyE,MAAO,QACP8uE,aAAc,mBACdC,kBAAmB,qCACnBC,kBAAmB,sBACnBC,YAAa,cACbC,QAAS,UACTC,qBAAsB,2BACtBC,kBAAmB,oBACnBC,gBAAiB,kBACjBC,kBAAmB,oBACnBC,eAAgB,iBAChBC,mBAAoB,qBACpBC,iBAAkB,mBAClBC,aAAc,eACdC,iBAAkB,mBAClBC,mBAAoB,qBACpBC,iBAAkB,mBAClBC,GAAI,KACJ/gE,OAAQ,SACRyO,OAAQ,SACRpf,QAAS,UACT2xE,aAAc,eACdC,UAAW,YACXC,kBAAmB,qBACnBC,wBAAyB,0BACzBC,oBAAqB,2BACrBC,qBAAsB,eACtBC,WAAY,aACZC,kBAAmB,4BACnBC,WAAY,sBACZC,eAAgB,kBAChBC,yBAA0B,4BAC1BC,kBAAmB,qBACnBC,uBAAwB,yBACxBC,oBAAqB,sBACrBC,YAAa,cACbC,kBAAmB,oBACnBC,YAAa,eACbC,UAAW,YACXC,gBAAiB,kBACjBC,iBAAkB,mBAClBh3E,SAAU,WACVi3E,6BAA8B,iCAC9BC,mBAAoB,qBACpBC,oBAAqB,0BACrBC,eAAgB,qBAChBC,aAAc,eACdvuD,QAAS,UACTwuD,YAAa,cACbC,YAAa,cACbC,aAAc,eACdC,wBAAyB,0BACzBxzC,OAAQ,SACRna,OAAQ,SACRuL,QAAS,UACTqiD,iBAAkB,mBAClBC,mBAAoB,qBACpBC,gBAAiB,kBACjBC,aAAc,eACdntD,KAAM,OACNotD,WAAY,aACZC,UAAW,YACXC,YAAa,cACbC,WAAY,CACVtvC,OAAQ,8BACR9lC,MAAO,QACPm1E,YAAa,eAEfE,gBAAiB,cACjBC,OAAQ,SACRztD,KAAM,OACNuZ,OAAQ,SACRrvB,SAAU,WACVgkE,QAAS,UACTb,UAAW,YACXluD,SAAU,WACVxO,OAAQ,SACRw9D,gBAAiB,kBACjBC,QAAS,UACTC,QAAQ,UACRC,YAAY,cACZC,cAAc,gBACdC,gBAAgB,oBAChB/mC,MAAM,QACNgnC,QAAQ,UACRnyD,YAAY,cACZoyD,kBAAkB,oBAClBC,2BAA2B,6BAC3BC,OAAO,SACPC,mBAAmB,sBACnBC,WAAY,aACZzB,UAAU,YACVrtD,KAAK,OACL+uD,IAAI,MACJC,oBAAoB,sBACpBC,kBAAkB,oBAClBC,aAAa,kBACbC,mBAAmB,qBACnBC,WAAW,aACXC,SAAU,WACVE,0BAA2B,gCAC3BC,sBAAuB,oDACvBE,oBAAqB,wBACrBD,gBAAiB,kBACjBE,WAAY,aACZC,WAAY,aACZC,aAAc,eACdC,wBAAyB,0BACzBC,YAAa,eACbC,YAAa,eACbC,SAAU,WACV3sB,QAAS,UACTgsB,eAAe,iBACf9C,mBAAoB,qBACpB2D,cAAe,iBACfC,iCAAkC,gEAClCC,kCAAmC,qCACnCC,iBAAkB,mBAClBhxD,QAAS,UACT4wD,OAAQ,SACR7wD,QAAS,UACTkxD,wBAAyB,0BACzBC,kBAAmB,oBACnBC,wBAAyB,0BACzBC,gBAAiB,kBACjBC,cAAe,gBACfC,eAAgB,iBAChBC,uBAAwB,4BACxBC,qBAAsB,uBACtBC,gCAAiC,oCACjCC,gBAAiB,kBACjBC,kBAAmB,oBACnBr5E,SAAU,WACVs5E,iBAAkB,mBAClBC,gBAAiB,kBACjBC,QAAS,UACTC,UAAW,YACXC,iBAAkB,mBAClB7pC,MAAO,QACPomC,uBAAwB,yBACxB0D,4BAA6B,8BAC7BxD,cAAe,gBACfyD,kBAAmB,oBACnBC,wBAAyB,8BACzBC,oBAAqB,0BACrBC,kCAAmC,+EACnCC,yBAA0B,iCAC1BC,aAAc,eACdC,wBAAyB,0BACzBC,YAAa,cACbC,KAAM,QACNrmC,KAAM,OACNsmC,SAAU,WACVC,cAAe,gBACfC,MAAO,QACPC,SAAU,WACVC,QAAS,UACTlrD,MAAO,QACPhK,QAAS,UACTm1D,cAAe,uBACfC,YAAa,qBACbC,YAAY,cACZC,iBAAiB,mBACjBC,GAAG,KACHC,aAAa,eACbnuE,OAAO,UAETkQ,OAAQ,CACNk+D,YAAa,iCACbC,cAAe,wBACfC,cAAe,gBACfC,yBAA0B,mDAC1BC,cAAe,gBACfC,iBAAkB,+CAClBC,iBAAkB,mBAClBE,2BAA4B,oDAC5BC,kCAAmC,uCACnCC,iCAAkC,uCAEpCtvB,QAAS,CACPuvB,eAAgB,2BAChBC,mBAAoB,uBAEtBvO,SAAU,CACRwO,0BAA2B,+FAC3BC,4BAA6B,iCAC7BC,2BAA4B,kEAC5BC,wBAAyB,4CACzBC,yBAA0B,qDAC1BC,0BAA2B,sDAC3BC,yBAA0B,4EAC1BE,6BAA8B,sDAC9BG,yBAA0B,+DAC1BC,yBAAyB,2BACzBC,0BAA2B,6BAC3BhF,eAAe,gDACf0E,oCAAqC,iFACrCC,6BAA8B,sDAC9BQ,aAAc,gBACdC,wCAAyC,uDACzCC,wCAAyC,+CACzCC,0BAA2B,mDAC3BC,sCAAuC,qKACvCC,qCAAsC,+EACtCC,2BAA4B,gMAC5BC,2CAA4C,oEAE9CC,UAAW,CACTC,QAAS,UACT1wE,OAAQ,UAEV2wE,OAAQ,CACNC,WAAY,gBACZC,cAAe,kBAEjBC,UAAW,CACT7vB,eAAgB,iBAChB8vB,eAAgB,iBAChBC,oBAAqB,eACrBC,yBAA0B,oBAC1BC,eAAgB,UAChBC,iBAAkB,YAClBC,iBAAkB,YAClBC,aAAc,eACdvwB,QAAS,UACTqtB,aAAc,eACdmD,iBAAkB,mBAClBC,qBAAsB,uBACtBC,gBAAiB,kBACjBC,aAAc,WACdC,gBAAiB,oBACjBC,cAAe,gBACfC,qBAAsB,4BACtBC,kBAAmB,oBACnBC,QAAS,UACTC,YAAa,cACbC,QAAS,UACTC,YAAa,cACbC,UAAW,YACXC,UAAW,YACXC,mBAAoB,qBACpBj/E,QAAS,UACTC,SAAU,WACVi/E,OAAQ,SACRlG,cAAe,gBACfmG,gBAAiB,0BACjBC,eAAgB,iBAChB1F,UAAW,YACX2F,gBAAiB,UACjBC,iBAAkB,mBAClBC,WAAY,cACZC,yBAA0B,8BAC1BC,UAAW,YACXC,cAAe,gBACfpF,SAAU,YAEZqF,QAAS,CACPC,eAAgB,iBAChBC,KAAM,OACNjO,eAAgB,iBAChBkO,SAAU,WACVC,YAAa,cACbC,aAAc,eACdC,eAAgB,iBAChBC,UAAW,aACXC,mBAAoB,qBACpBC,mBAAoB,qBACpBC,eAAgB,iBAChB/qB,OAAQ,SACRorB,qBAAsB,uBACtBC,IAAK,MACL7J,QAAS,UACT+J,eAAe,iBACfC,eAAgB,iBAChB9sC,KAAM,OACNqmC,KAAM,QACN0G,WAAY,cAGdC,aAAc,CACZC,YAAa,+BAEfC,eAAgB,+BAChBC,gBAAiB,wEACjBC,uBAAwB,gCACxBC,sBAAuB,+BACvBC,oBAAqB,+EACrBC,sBAAuB,+BACvBC,wBAAyB,6BACzBC,8BAA+B,wCAC/BC,4BAA6B,sCAC7BC,4BAA6B,qCAC7BC,4BAA6B,uCAC7BC,uBAAwB,8BACxBC,8BAA+B,wCAC/BC,oBAAqB,+BACrBC,oCAAqC,4CACrCC,2BAA4B,sCAC5BC,uBAAwB,kCACxBC,gBAAiB,oBACjBC,YAAa,+BACbC,kBAAmB,iBACnBC,2BAA4B,qCAC5BC,oBAAqB,+BACrBC,kBAAmB,uBACnBC,iBAAkB,sBAClBC,oBAAqB,wBACrBC,kBAAmB,sBACnBC,mBAAoB,uBACpBC,wBAAyB,4BACzBC,gBAAiB,oBACjBC,uBAAwB,gCACxBC,eAAgB,8EAChBC,gBAAiB,gFACjBC,YAAa,gCACbC,WAAY,iDACZC,iBAAkB,oIAClBC,mBAAoB,8BACpBC,qBAAsB,yBACtBkN,uBAAwB,gCACxBD,0BAA2B,mCAC3BE,oBAAqB,2CACrBlN,yBAA0B,8BAC1BC,qBAAsB,6EACtBC,sCAAuC,iDACvCC,qBAAsB,yBACtBC,gCAAiC,0CACjCC,iBAAkB,iCAClBrvD,iBAAkB,kDAClBC,cAAe,8BACfqvD,0BAA2B,2BAC3BC,gBAAiB,oBACjBC,+BAAgC,wBAChClJ,YAAY,cACZC,iBAAiB,mBACjBC,GAAG,KACHC,aAAa,eACbnuE,OAAO,SACPm3E,wBAAyB,kBACzBC,0BAA2B,+CAC3BC,yBAA0B,mDAC1BC,yBAA0B,mDAC1BC,oCAAqC,uGACrCC,wBAAyB,kEACzBC,sBAAuB,+BACvBC,yBAA0B,8BAC1BC,kBAAmB,2BACnBC,eAAgB,kCAChBC,eAAgB,4BAChBC,aAAc,iBACdC,wBAAyB,kCACzBC,qBAAsB,6BACtBC,wBAAyB,mCACzBC,gBAAiB,0BACjBC,mBAAoB,8BACpBC,uBAAwB,qCACxBG,mBAAoB,8BACpBF,qBAAsB,mCACtBC,oBAAqB,kCACrBE,4BAA6B,gDAC7BC,uBAAwB,kCACxBC,oBAAqB,+BACrBC,uBAAwB,kCACxBC,0BAA2B,2BAC3BC,+BAAgC,gCAChCC,aAAc,uBACdC,oBAAqB,+BACrBC,oBAAqB,qBACrBC,uBAAwB,uDACxBC,6BAA8B,wCAC9BC,wBAAyB,wCACzBC,gBAAiB,0BACjBC,oBAAqB,+BACrBC,cAAe,wBACfC,kBAAmB,6BACnBC,oBAAqB,+BACrBC,aAAc,wBACdC,YAAa,oBACbC,iBAAkB,4BAClBC,mBAAoB,mDACpBC,gBAAiB,0BACjBC,oBAAqB,+BACrBC,yBAA0B,oCAC1BC,oBAAqB,+BACrBC,uBAAwB,kCACxBC,eAAgB,+DAChBC,iBAAkB,2BAClBC,cAAe,+BACfC,wBAAyB,mCACzBC,mBAAoB,2BACpBC,wBAAyB,wBACzBC,aAAc,uBACdC,kBAAmB,4BACnBC,6BAA8B,oCAC9BC,cAAe,wBACfC,eAAgB,qBAChBC,iBAAkB,+BAClBC,iBAAkB,iCAClBC,qBAAsB,gCACtBC,yBAA0B,mCAC1BC,uBAAwB,kCACxBC,uBAAwB,kCACxBC,kBAAmB,uBACnBC,uBAAwB,kCACxBC,2BAA4B,sCAC5BC,sBAAuB,iCACvBC,0BAA2B,oCAC3BC,uBAAwB,kCACxBC,2BAA4B,qCAC5BC,oBAAqB,+BACrBC,2BAA4B,gCAC5BC,uBAAwB,yBACxBC,wBAAyB,uBACzBC,sBAAuB,iCACvBC,uBAAwB,kCACxBC,gBAAiB,2BACjBC,+BAAgC,qCAChCC,4BAA6B,gCAC7BC,4BAA6B,8BAC7BC,uBAAwB,2BACxBC,4BAA6B,uCAC7BC,gCAAiC,4DACjCC,uBAAwB,4BACxBC,8BAA+B,4CAC/BC,sBAAuB,gCACvBC,yBAA0B,mCAC1BC,6BAA8B,uCAC9BC,6BAA8B,2DAC9BC,wBAAyB,4BACzBC,6BAA8B,sCAC9BC,sBAAuB,gCACvBC,iBAAkB,qBAClBC,sBAAuB,+BACvBC,iBAAkB,4BAClBC,kBAAmB,4BACnBC,kBAAmB,4BACnBC,aAAc,iBACdC,kBAAmB,4BACnBC,aAAc,kDACdC,yBAA0B,oCAC1BC,kBAAmB,oBACnBC,2BAA4B,6BAC5BC,qBAAsB,gCACtBC,iBAAkB,2BAClBC,mBAAoB,yBACpBC,0BAA2B,4DAC3BC,kBAAmB,gCACnBC,mBAAoB,wCACpBC,wBAAyB,8BACzBC,kBAAmB,wBACnBC,oBAAqB,8BACrBC,eAAgB,mBAChBC,gBAAiB,0BACjBC,mBAAoB,mCACpBC,iBAAkB,uBAClBC,kBAAmB,4BACnBC,yCAA0C,uCAC1CC,2BAA4B,8BAC5BC,+BAAgC,kCAChCC,2BAA4B,4BAC5BC,sBAAuB,mBACvBC,0BAA2B,8BAC3BC,2BAA4B,8BAC5BC,uBAAwB,2BACxBC,4BAA6B,uCAC7BC,oBAAqB,sDACrBC,4BAA6B,oDAC7BC,yBAA0B,6BAC1BC,kBAAmB,4BACnBC,gBAAiB,4BACjBC,kBAAmB,4BACnBC,cAAe,yBACfC,aAAc,iBACdC,2BAA4B,qCAC5BC,yBAA0B,oCAC1BC,2BAA4B,2BAC5BC,yBAA0B,oCAC1BC,qBAAsB,8BACtBC,oBAAqB,oBACrBC,4BAA6B,4BAC7BC,6BAA8B,6BAC9BC,6BAA8B,uCAC9BC,yBAA0B,oCAC1BC,kBAAmB,6BACnBC,0BAA2B,qCAC3BC,mBAAoB,8BACpBC,mBAAoB,4BACpBC,kBAAmB,wBACnBC,mBAAoB,yBACpBC,mBAAoB,yBACpBC,uBAAwB,8BACxBC,6BAA8B,gCAC9BC,kBAAmB,0BACnBC,4BAA6B,gCAC7BC,iCAAkC,qCAClCC,mBAAoB,8BACpBC,oBAAqB,+BACrBC,2BAA4B,sCAC5BC,oBAAqB,+BACrBC,qBAAsB,gCACtBC,wBAAyB,mCACzBC,iBAAkB,4BAClBC,wBAAyB,4BACzBC,yBAA0B,8BAC1BC,6BAA8B,kCAC9BC,yBAA0B,4BAC1BC,oBAAqB,yBACrBC,uBAAwB,mCACxBC,yBAA0B,8BAC1BC,oBAAqB,8BACrBC,mBAAoB,+BACpBC,mBAAoB,8BACpBC,qBAAsB,sCACtBC,6BAA8B,+CAC9BC,sBAAuB,+BACvBC,YAAa,sBACbC,sBAAuB,iDACvBC,oBAAqB,0BACrBC,eAAgB,sDAChBC,mBAAoB,+BACpBC,wBAAyB,sCACzBC,cAAe,yBACfC,kBAAmB,8BACnBC,qBAAsB,wDACtBC,oBAAqB,oCACrBC,kBAAmB,kCACnBC,yBAA0B,uCAC1BC,sBAAuB,0BACvBC,0BAA2B,qCAC3BC,gCAAiC,2CACjCC,gCAAiC,4CACjCC,+BAAgC,kDAChCC,yBAA0B,oCAC1BC,qBAAsB,yBACtBC,0BAA2B,kCAC3BC,0BAA2B,oCAC3BC,0BAA2B,oCAC3BC,0BAA2B,mCAC3BC,uBAAwB,gCACxBC,oBAAqB,2CACrBC,mBAAoB,8BACpBC,mBAAoB,8BACpBC,wBAAyB,6BACzBC,kBAAmB,2BACnBC,6BAA8B,yCAC9BC,yBAA0B,mDAC1BC,4BAA6B,0BAC7BC,+BAAgC,2CAChCC,+BAAgC,4CAChCC,4BAA6B,yCAC7BC,uBAAwB,4CACxBC,2BAA4B,kCAC5BC,eAAgB,mBAChBC,iBAAkB,+CAClBC,oBAAqB,2BACrBC,oBAAqB,6BACrBC,oBAAqB,8BACrBC,yBAA0B,8BAC1BC,oBAAqB,sBACrBC,+BAAgC,8BAChCC,yBAA0B,2BAC1BC,oBAAqB,+BACrBC,wBAAyB,0BACzBC,oBAAqB,0BACrBC,qBAAsB,2BACtBC,sBAAuB,qCACvBC,iCAAkC,4GAClCC,sBAAuB,gCACvBC,sBAAuB,gCACvBC,2BAA4B,wCAC5BC,iCAAkC,4CAClCC,mCAAoC,oFACpCC,oCAAqC,+FACrCC,yBAA0B,mCAC1BC,2BAA4B,sCAC5BC,+BAAgC,0CAChCC,oBAAqB,+BACrBC,kBAAmB,yBACnBC,iBAAkB,gDAClBC,QAAS,yCACTe,4BAA6B,2BAC7BC,4BAA6B,2BAC7Bf,kBAAmB,yDACnBC,iBAAkB,0BAClBC,qBAAsB,mDACtBC,gBAAiB,CACfC,WAAY,0BACZC,cAAe,4BACfC,UAAW,aACXC,sBAAuB,mCACvBC,UAAW,sBACXC,UAAW,kBACXC,iBAAkB,qBAClBC,iBAAkB,qBAClBC,cAAe,oBACfC,UAAW,gBDvlBX,QAAS,CACPtiB,YExB4B,CAC9BC,OAAQ,CACJC,UAAW,oBACX7iD,SAAU,gBACV8iD,eAAgB,sBAChBC,uBAAwB,0BACxBjlE,MAAO,oBACPklE,QAAS,cACTC,gBAAiB,8BACjBC,QAAS,UACThvD,aAAc,kBACdjf,MAAO,cACPkuE,WAAY,gBACZC,UAAW,WACX9wC,QAAS,eACTgrC,OAAQ,aACR3wD,QAAS,UACT02D,sBAAuB,8BACvBC,YAAa,mBACbt5D,KAAM,SACNtY,MAAO,SACP6kB,gBAAiB,mBACjBgtD,QAAS,iBACTC,iBAAkB,6BAClB9zE,QAAS,cACT81B,SAAU,cACVt1B,QAAS,UACTyE,MAAO,QACP8uE,aAAc,4BACdC,kBAAmB,0CACnBC,kBAAmB,wBACnBC,YAAa,gBACbC,QAAS,cACTC,qBAAsB,4BACtBC,kBAAmB,yBACnBC,gBAAiB,6BACjBC,kBAAmB,mCACnBC,eAAgB,oCAChBC,mBAAoB,6BACpBC,iBAAkB,uBAClBC,aAAc,sBACdC,iBAAkB,0BAClBC,mBAAoB,qBACpBC,iBAAkB,kBAClBC,GAAI,KACJ/gE,OAAQ,cACR+hC,MAAO,UACPtzB,OAAQ,SACRpf,QAAS,iBACT2xE,aAAc,0BACdC,UAAW,iBACXC,kBAAmB,sCACnBC,wBAAyB,iCACzBC,oBAAqB,uCACrBC,qBAAsB,kBACtBC,WAAY,YACZC,kBAAmB,6DACnBC,WAAY,kDACZC,eAAgB,kCAChBC,yBAA0B,mCAC1BC,kBAAmB,8CACnBC,uBAAwB,2BACxBC,oBAAqB,8BACrBC,YAAa,kBACbC,kBAAmB,mCACnBC,YAAa,mBACbC,UAAW,QACXC,gBAAiB,uBACjBC,iBAAkB,0BAClBh3E,SAAU,cACVi3E,6BAA8B,oCAC9BC,mBAAoB,kCACpBC,oBAAqB,gCACrBC,eAAgB,yCAChBC,aAAc,kBACdvuD,QAAS,UACTwuD,YAAa,gBACbC,YAAa,oBACbC,aAAc,eACdC,wBAAyB,8BACzBxzC,OAAQ,QACRna,OAAQ,eACRuL,QAAS,gBACTqiD,iBAAkB,8BAClBC,mBAAoB,uCACpBC,gBAAiB,qBACjBC,aAAc,aACdntD,KAAM,SACNotD,WAAY,sBACZC,UAAW,eACXC,YAAa,cACbC,WAAY,CACRtvC,OAAQ,wCACR9lC,MAAO,SACPm1E,YAAa,eAEjBE,gBAAiB,4BACjBC,OAAQ,WACRztD,KAAM,SACNuZ,OAAQ,QACRrvB,SAAU,eACVgkE,QAAS,eACTb,UAAW,eACXluD,SAAU,eACVxO,OAAQ,SACRw9D,gBAAiB,uBACjBC,QAAS,gBACTE,YAAY,mBACZC,cAAc,sBACdC,gBAAgB,0BAChB/mC,MAAM,SACNgnC,QAAQ,YACRnyD,YAAY,iBACZoyD,kBAAkB,+BAClBC,2BAA2B,2CAC3BC,OAAO,iBACPC,mBAAmB,gCACnBC,WAAW,iBACXzB,UAAU,eACVrtD,KAAK,SACL+uD,IAAI,MACJC,oBAAqB,4BACrBC,kBAAmB,6BACnBC,aAAa,sBACbC,mBAAmB,2BACnBC,WAAW,kBACXC,SAAU,2BACVC,eAAe,oBACfC,0BAA2B,qCAC3BC,sBAAuB,wDACvBE,oBAAqB,iCACrBD,gBAAiB,uBACjBE,WAAY,SACZC,WAAY,mBACZC,aAAc,cACdC,wBAAyB,iCACzBC,YAAa,gBACbC,YAAa,gBACbC,SAAU,kBACV3sB,QAAS,WACTjkC,QAAS,gBACTC,QAAS,WACT4wD,OAAQ,UACRC,cAAe,yBACfC,iCAAkC,2EAClCC,kCAAmC,4CACnCC,iBAAkB,qCAClBhxD,QAAS,WACT4wD,OAAQ,UACR7wD,QAAS,gBACTkxD,wBAAyB,8BACzBC,kBAAmB,mBACnBC,wBAAyB,uCACzBC,gBAAiB,6BACjBC,cAAe,sBACfC,eAAgB,mBAChBC,uBAAwB,4CACxBC,qBAAsB,qBACtBC,gCAAiC,iDACjCC,gBAAiB,oBACjBC,kBAAmB,oBACnBr5E,SAAU,YACVs5E,iBAAkB,0BAClBC,gBAAiB,0BACjBC,QAAS,YACTC,UAAW,YACXC,iBAAkB,0BAClB7pC,MAAO,SACPomC,uBAAwB,oCACxB0D,4BAA6B,oCAC7BxD,cAAe,yBACfyD,kBAAmB,sCACnBC,wBAAyB,gCACzBC,oBAAqB,iCACrBC,kCAAmC,sFACnCC,yBAA0B,2CAC1BC,aAAc,uBACdC,wBAAyB,iCACzBC,YAAa,yBACbC,KAAM,SACNrmC,KAAM,aACNsmC,SAAU,SACVC,cAAe,oBACfC,MAAO,QACPC,SAAU,eACVC,QAAS,UACTlrD,MAAO,wBACPhK,QAAS,YACTm1D,cAAe,6BACfC,YAAa,sBACbC,YAAY,kBACZC,iBAAiB,8BACjBC,GAAG,OACHC,aAAa,oBACbnuE,OAAO,oBAEXkQ,OAAQ,CACJk+D,YAAa,iDACbC,cAAe,uBACfC,cAAe,oBACfC,yBAA0B,oDAC1BC,cAAe,qBACfC,iBAAkB,+DAClBC,iBAAkB,4BAClBE,2BAA4B,mEAC5BC,kCAAmC,sDACnCC,iCAAkC,uDAEtCtvB,QAAS,CACLuvB,eAAgB,8CAChBsY,oBAAqB,2BAEzB5mB,SAAU,CACNwO,0BAA2B,mJAC3BC,4BAA6B,+CAC7BC,2BAA4B,sEAC5BC,wBAAyB,mDACzBC,yBAA0B,yDAC1BC,0BAA2B,2DAC3BC,yBAA0B,iGAC1BC,oCAAqC,6IACrCC,6BAA8B,mEAC9BG,yBAAyB,8DACzBC,yBAA0B,iCAC1BC,0BAA2B,wCAC3BhF,eAAe,0DACfmF,aAAc,sBACdC,wCAAyC,iEACzCC,wCAAyC,qDACzCC,0BAA2B,oDAC3BC,sCAAuC,qMACvCC,qCAAsC,kFACtCC,2BAA4B,sNAC5BC,2CAA4C,8EAEhDC,UAAW,CACPC,QAAS,SACT1wE,OAAQ,oBAEZ2wE,OAAQ,CACJC,WAAY,uBACZC,cAAe,4BAEnBC,UAAW,CACP7vB,eAAgB,oBAChB8vB,eAAgB,qBAChBC,oBAAqB,yBACrBC,yBAA0B,GAC1BC,eAAgB,UAChBC,iBAAkB,cAClBC,iBAAkB,SAClBC,aAAc,eACdvwB,QAAS,SACTqtB,aAAc,qBACdmD,iBAAkB,uBAClBC,qBAAsB,+BACtBC,gBAAiB,sBACjBC,aAAc,YACdC,gBAAiB,uBACjBC,cAAe,WACfE,kBAAmB,qBACnBC,QAAS,aACTC,YAAa,mBACbC,QAAS,aACTC,YAAa,cACbC,UAAW,sBACXC,UAAW,cACXC,mBAAoB,2BACpBj/E,QAAS,WACTC,SAAU,YACVi/E,OAAQ,cACRlG,cAAe,sBACfmG,gBAAiB,0BACjBC,eAAgB,4BAChB1F,UAAW,YACX2F,gBAAiB,YACjBC,iBAAkB,gCAClBC,WAAY,qBACZ4U,yBAA0B,oCAC1B1U,UAAW,YACXC,cAAe,gBACfpF,SAAU,UAEdqF,QAAS,CACLC,eAAgB,eAChBC,KAAM,SACNjO,eAAgB,4BAChBkO,SAAU,kBACVC,YAAa,mBACbC,aAAc,kBACdC,eAAgB,oBAChBC,UAAW,gCACXC,mBAAoB,oCACpBC,mBAAoB,0CACpBC,eAAgB,oBAChB/qB,OAAQ,QACRorB,qBAAsB,2BACtBC,IAAK,YACL7J,QAAQ,YACR8J,OAAO,aACPC,eAAe,2BACfC,eAAgB,2BAChB9sC,KAAM,YACNqmC,KAAM,WACN0G,WAAY,uBAEhBC,aAAc,CACVC,YAAa,8CAEjBC,eAAgB,6BAChBC,gBAAiB,wGACjBC,uBAAwB,oCACxBC,sBAAuB,iCACvBC,oBAAqB,gGACrBC,sBAAuB,mCACvBC,wBAAyB,gDACzBC,8BAA+B,yDAC/BC,4BAA6B,wDAC7BC,4BAA6B,4CAC7BC,4BAA6B,8CAC7BC,uBAAwB,6CACxBC,8BAA+B,kDAC/BC,oBAAqB,6CACrBC,oCAAqC,4DACrCC,2BAA4B,iDAC5BC,uBAAwB,8CACxBC,gBAAiB,wBACjBC,YAAa,sCACbC,kBAAmB,6BACnBC,2BAA4B,2CAC5BC,oBAAqB,+CACrBC,kBAAmB,gCACnBC,iBAAkB,+BAClBC,oBAAqB,qDACrBC,kBAAmB,6BACnBC,mBAAoB,8BACpBC,wBAAyB,sCACzBC,gBAAiB,8BACjBC,uBAAwB,8BACxBC,eAAgB,6FAChBC,gBAAiB,gGACjBC,YAAa,mCACbC,WAAY,0DACZC,iBAAkB,4IAClBC,mBAAoB,+BACpBC,qBAAsB,gCACtBC,yBAA0B,wCAC1BC,qBAAsB,iHACtBC,sCAAuC,wEACvCC,qBAAsB,gCACtBC,gCAAiC,qDACjCC,iBAAkB,wCAClBrvD,iBAAkB,+EAClBC,cAAe,iDACfqvD,0BAA2B,qCAC3BC,gBAAiB,uBACjBC,+BAAgC,wBAChCC,wBAAyB,uBACzBC,0BAA2B,uEAC3BC,yBAA0B,4FAC1BC,yBAA0B,+FAC1BC,oCAAqC,+HACrCC,wBAAyB,yEACzBC,sBAAuB,8BACvBC,yBAA0B,uCAC1BC,kBAAmB,+CACnBC,eAAgB,2CAChBC,eAAgB,+CAChBC,aAAc,wBACdC,wBAAyB,0CACzBC,qBAAsB,kCACtBC,wBAAyB,wCACzBC,gBAAiB,+BACjBC,mBAAoB,qCACpBC,uBAAwB,0CACxBG,mBAAoB,mCACpBF,qBAAsB,mCACtBC,oBAAqB,qCACrBE,4BAA6B,+DAC7BC,uBAAwB,mDACxBC,oBAAqB,6CACrBC,uBAAwB,8CACxBC,0BAA2B,qCAC3BC,+BAAgC,oDAChCC,aAAc,wBACdC,oBAAqB,yCACrBC,oBAAqB,wBACrBC,uBAAwB,uEACxBC,6BAA8B,6CAC9BC,wBAAyB,kDACzBC,gBAAiB,yBACjBC,oBAAqB,8CACrBC,cAAe,0CACfC,kBAAmB,kCACnBC,oBAAqB,0CACrBC,aAAc,yBACdC,YAAa,8BACbC,iBAAkB,6BAClBC,mBAAoB,oDACpBC,gBAAiB,0BACjBC,oBAAqB,qCACrBC,yBAA0B,yCAC1BC,oBAAqB,wCACrBC,uBAAwB,6CACxBC,eAAgB,+EAChBC,iBAAkB,+BAClBC,cAAe,6CACfC,wBAAyB,4CACzBC,mBAAoB,qCACpBC,wBAAyB,wBACzBC,aAAc,sBACdC,kBAAmB,uBACnBC,6BAA8B,wCAC9BC,cAAe,uBACfC,eAAgB,4BAChBC,iBAAkB,2BAClBC,iBAAkB,yCAClBC,qBAAsB,qCACtBC,yBAA0B,4CAC1BC,uBAAwB,gDACxBC,uBAAwB,6CACxBC,kBAAmB,uCACnBC,uBAAwB,kDACxBC,2BAA4B,2CAC5BC,sBAAuB,mCACvBC,0BAA2B,0CAC3BC,uBAAwB,oCACxBC,2BAA4B,2CAC5BC,oBAAqB,wCACrBC,2BAA4B,sCAC5BC,uBAAwB,2BACxBC,wBAAyB,wBACzBC,sBAAuB,yCACvBC,uBAAwB,kDACxBC,gBAAiB,0CACjBC,+BAAgC,wDAChCC,4BAA6B,wCAC7BC,4BAA6B,qCAC7BC,uBAAwB,sCACxBC,4BAA6B,qDAC7BC,gCAAiC,wEACjCC,uBAAwB,4CACxBC,8BAA+B,0DAC/BC,sBAAuB,kCACvBC,yBAA0B,kCAC1BC,6BAA8B,8CAC9BC,6BAA8B,wEAC9BC,wBAAyB,qCACzBC,6BAA8B,wDAC9BC,sBAAuB,+BACvBC,iBAAkB,yBAClBC,sBAAuB,oCACvBC,iBAAkB,8CAClBC,kBAAmB,8BACnBC,kBAAmB,2BACnBC,aAAc,qBACdC,kBAAmB,iCACnBC,aAAc,6DACdC,yBAA0B,6CAC1BC,kBAAmB,uBACnBC,2BAA4B,kCAC5BC,qBAAsB,oCACtBC,iBAAkB,0BAClBC,mBAAoB,8BACpBC,0BAA2B,wEAC3BC,kBAAmB,qCACnBC,mBAAoB,gDACpBC,wBAAyB,mCACzBC,kBAAmB,8BACnBC,oBAAqB,8BACrBC,eAAgB,wBAChBC,gBAAiB,6BACjBC,mBAAoB,6CACpBC,iBAAkB,wBAClBC,kBAAmB,mCACnBC,yCAA0C,sDAC1CC,2BAA4B,qCAC5BC,+BAAgC,gCAChCC,2BAA4B,sCAC5BC,sBAAuB,4BACvBC,0BAA2B,wCAC3BC,2BAA4B,wCAC5BC,uBAAwB,6CACxBC,4BAA6B,yDAC7BC,oBAAqB,wDACrBC,4BAA6B,8DAC7BC,yBAA0B,oCAC1BC,kBAAmB,+BACnBC,gBAAiB,kCACjBC,kBAAmB,4BACnBC,cAAe,sCACfC,aAAc,sBACdC,2BAA4B,6CAC5BC,yBAA0B,6CAC1BC,2BAA4B,6CAC5BC,yBAA0B,0CAC1BC,qBAAsB,oCACtBC,oBAAqB,yBACrBC,4BAA6B,qCAC7BC,6BAA8B,oCAC9BC,6BAA8B,gDAC9BC,yBAA0B,+CAC1BC,kBAAmB,yCACnBC,0BAA2B,4CAC3BC,mBAAoB,uCACpBC,mBAAoB,oCACpBC,kBAAmB,8BACnBC,mBAAoB,2BACpBC,mBAAoB,2BACpBC,uBAAwB,8CACxBC,6BAA8B,2CAC9BC,kBAAmB,2BACnBC,4BAA6B,4CAC7BC,iCAAkC,mDAClCC,mBAAoB,wCACpBC,oBAAqB,oCACrBC,2BAA4B,6CAC5BC,oBAAqB,wCACrBC,qBAAsB,yCACtBC,wBAAyB,+CACzBC,iBAAkB,uCAClBC,wBAAyB,uCACzBC,yBAA0B,qCAC1BC,6BAA8B,gCAC9BC,yBAA0B,oCAC1BC,oBAAqB,qCACrBC,uBAAwB,kDACxBC,yBAA0B,uCAC1BC,oBAAqB,mCACrBC,mBAAoB,yCACpBC,mBAAoB,wCACpBC,qBAAsB,gDACtBC,6BAA8B,wDAC9BC,sBAAuB,kCACvBC,YAAa,wBACbE,oBAAqB,yBACrBC,eAAgB,2DAChBC,mBAAoB,gCACpBC,wBAAyB,+DACzBC,cAAe,4BACfC,kBAAmB,2CACnBC,qBAAsB,qDACtBC,oBAAqB,gDACrBC,kBAAmB,qCACnBC,yBAA0B,yEAC1BC,sBAAuB,6CACvBE,gCAAiC,gDACjCC,gCAAiC,yDACjCC,+BAAgC,8DAChCC,yBAA0B,qCAC1BC,qBAAsB,wBACtBC,0BAA2B,gCAC3BC,0BAA2B,mCAC3BC,0BAA2B,iCAC3BhN,qBAAsB,gCACtBoN,mBAAoB,wCACpBC,mBAAoB,0CACpBC,wBAAyB,2CACzBC,kBAAmB,6BACnBC,6BAA8B,oDAC9BC,yBAA0B,wDAC1BC,4BAA6B,kCAC7BC,+BAAgC,mDAChCC,+BAAgC,wCAChCC,4BAA6B,kDAC7BC,uBAAwB,gDACxBC,2BAA4B,0CAC5BC,eAAgB,yBAChBC,iBAAkB,iDAClBC,oBAAqB,iCACrBC,oBAAqB,oCACrBC,oBAAqB,kCACrBC,yBAA0B,oCAC1BC,oBAAqB,wBACrBC,+BAAgC,8CAChCC,yBAA0B,iCAC1BC,oBAAqB,2CACrBC,wBAAyB,kBACzBC,oBAAqB,kCACrBC,qBAAsB,6CACtBC,sBAAuB,sCACvBC,iCAAkC,yIAClCC,sBAAuB,4CACvBC,sBAAuB,yCACvBC,2BAA4B,yCAC5BC,iCAAkC,+CAClCC,mCAAoC,gHACpCC,oCAAqC,4HACrCC,yBAA0B,qCAC1BC,2BAA4B,iDAC5BC,+BAAgC,oDAChCC,oBAAqB,uCACrBC,kBAAmB,oCACnBC,iBAAkB,qDAClBC,QAAS,mDACTe,4BAA8B,0DAC9BC,4BAA6B,oCAC7Bf,kBAAmB,+EACnB1C,uBAAwB,oCACxBD,0BAA2B,uCAC3BE,oBAAqB,4DACrB0C,iBAAkB,gCAClBC,qBAAsB,6CACtBC,gBAAiB,CACbC,WAAY,sCACZC,cAAe,sCACfC,UAAW,kBACXC,sBAAuB,iDACvBC,UAAW,0BACXC,UAAW,oBACXC,iBAAkB,wBAClBC,iBAAkB,2BAClBC,cAAe,uBACfC,UAAW,oBF3kBf,QAAS,CACPtiB,YG3B4B,CAC9BC,OAAQ,CACJC,UAAW,oBACX7iD,SAAU,eACV8iD,eAAgB,sBAChBC,uBAAwB,4BACxBjlE,MAAO,YACPklE,QAAS,aACTC,gBAAiB,0BACjBC,QAAS,YACThvD,aAAc,eACdjf,MAAO,kBACPkuE,WAAY,YACZC,UAAW,iBACX9wC,QAAS,UACTgrC,OAAQ,kBACR3wD,QAAS,OACT02D,sBAAuB,4BACvBC,YAAa,cACbt5D,KAAM,QACNtY,MAAO,UACP6kB,gBAAiB,mBACjBgtD,QAAS,cACTC,iBAAkB,8BAClB9zE,QAAS,gBACT81B,SAAU,aACVt1B,QAAS,aACTyE,MAAO,SACP8uE,aAAc,gCACdC,kBAAmB,yCACnBC,kBAAmB,6BACnBC,YAAa,sBACbC,QAAS,eACTC,qBAAsB,kCACtBC,kBAAmB,uBACnBC,gBAAiB,uBACjBC,kBAAmB,qCACnBC,eAAgB,sCAChBC,mBAAoB,0BACpBC,iBAAkB,sBAClBC,aAAc,uBACdC,iBAAkB,4BAClBC,mBAAoB,yBACpBC,iBAAkB,sBAClBC,GAAI,KACJ/gE,OAAQ,WACR+hC,MAAO,UACPtzB,OAAQ,SACRpf,QAAS,UACT2xE,aAAc,gCACdC,UAAW,yBACXC,kBAAmB,+BACnBC,wBAAyB,2CACzBC,oBAAqB,mCACrBC,qBAAsB,eACtBC,WAAY,kBACZC,kBAAmB,uCACnBC,WAAY,4BACZC,eAAgB,sBAChBC,yBAA0B,6CAC1BC,kBAAmB,4BACnBC,uBAAwB,iDACxBC,oBAAqB,qCACrBC,YAAa,wBACbC,kBAAmB,6BACnBC,YAAa,cACbC,UAAW,YACXC,gBAAiB,8BACjBC,iBAAkB,gCAClBh3E,SAAU,WACVi3E,6BAA8B,4CAC9BC,mBAAoB,8BACpBC,oBAAqB,iCACrBC,eAAgB,kCAChBC,aAAc,mBACdvuD,QAAS,eACTwuD,YAAa,eACbC,YAAa,kBACbC,aAAc,iBACdC,wBAAyB,uCACzBxzC,OAAQ,UACRna,OAAQ,cACRuL,QAAS,qBACTqiD,iBAAkB,wCAClBC,mBAAoB,2CACpBC,gBAAiB,yBACjBC,aAAc,iBACdntD,KAAM,WACNotD,WAAY,uBACZC,UAAW,qBACXC,YAAa,cACbC,WAAY,CACRtvC,OAAQ,qCACR9lC,MAAO,UACPm1E,YAAa,eAEjBE,gBAAiB,sBACjBC,OAAQ,WACRztD,KAAM,WACNuZ,OAAQ,UACRrvB,SAAU,cACVgkE,QAAS,WACTb,UAAW,qBACXluD,SAAU,eACVxO,OAAQ,UACRw9D,gBAAiB,iBACjBC,QAAS,aACTC,QAAQ,WACRC,YAAY,oBACZC,cAAc,gBACdC,gBAAgB,4BAChB/mC,MAAM,SACNgnC,QAAQ,YACRnyD,YAAY,cACZoyD,kBAAkB,uCAClBC,2BAA2B,yDAC3BC,OAAO,WACPC,mBAAmB,wCACnBC,WAAW,qBACXzB,UAAU,eACVrtD,KAAK,WACL+uD,IAAI,MACJC,oBAAoB,iCACpBC,kBAAmB,iCACnBC,aAAa,gBACbC,mBAAmB,0BACnBC,WAAW,mBACXC,SAAS,cACTkJ,OAAO,iBACPjJ,eAAe,sBACfC,0BAA2B,6CAC3BC,sBAAuB,wDACvBE,oBAAqB,6BACrBD,gBAAiB,+BACjBE,WAAY,aACZC,WAAY,qBACZC,aAAc,gBACdC,wBAAyB,8BACzBC,YAAa,eACbC,YAAa,eACbC,SAAU,cACV3sB,QAAS,UACTjkC,QAAS,gBACTC,QAAS,UACT4wD,OAAQ,aACRC,cAAe,2BACfC,iCAAkC,6EAClCC,kCAAmC,4CACnCC,iBAAkB,iCAClBhxD,QAAS,UACT4wD,OAAQ,aACR7wD,QAAS,aACTkxD,wBAAyB,0BACzBC,kBAAmB,eACnBC,wBAAyB,0CACzBC,gBAAiB,uBACjBC,cAAe,0BACfC,eAAgB,oBAChBC,uBAAwB,6CACxBC,qBAAsB,6BACtBC,gCAAiC,4CACjCC,gBAAiB,qBACjBC,kBAAmB,oBACnBr5E,SAAU,cACVs5E,iBAAkB,yBAClBC,gBAAiB,2BACjBC,QAAS,cACTC,UAAW,UACXC,iBAAkB,qBAClB7pC,MAAO,SACPomC,uBAAwB,mCACxB0D,4BAA6B,0CAC7BxD,cAAe,yBACfyD,kBAAmB,gCACnBC,wBAAyB,sCACzBC,oBAAqB,8BACrBC,kCAAmC,qFACnCC,yBAA0B,0CAC1BC,aAAc,uBACdC,wBAAyB,qCACzBC,YAAa,mBACbC,KAAM,SACNrmC,KAAM,kBACNsmC,SAAU,SACVA,SAAU,kBACVC,cAAe,sBACfC,MAAO,QACPC,SAAU,mBACVC,QAAS,aACTlrD,MAAO,WACPhK,QAAS,WACTm1D,cAAe,0BACfC,YAAa,sBACbC,YAAY,gBACZC,iBAAiB,0BACjBC,GAAG,QACHC,aAAa,qBACbnuE,OAAO,kBAEXkQ,OAAQ,CACJk+D,YAAa,0CACbC,cAAe,4BACfC,cAAe,iBACfC,yBAA0B,gEAC1BC,cAAe,iBACfC,iBAAkB,4EAClBC,iBAAkB,0BAClBE,2BAA4B,oEAC5BC,kCAAmC,4DACnCC,iCAAkC,2DAEtCtvB,QAAS,CACLuvB,eAAgB,6CAChBsY,oBAAqB,mCAEzB5mB,SAAU,CACNwO,0BAA2B,sIAC3BC,4BAA6B,6CAC7BC,2BAA4B,0EAC5BC,wBAAyB,8DACzBC,yBAA0B,oDAC1BC,0BAA2B,+DAC3BC,yBAA0B,oFAC1BC,oCAAqC,kHACrCC,6BAA8B,oEAC9BG,yBAAyB,qFACzBC,yBAAyB,yCACzBC,0BAA0B,yDAC1BhF,eAAe,sDACfmF,aAAc,uBACdC,wCAAyC,wDACzCC,wCAAyC,gDACzCC,0BAA2B,mDAC3BC,sCAAuC,yMACvCC,qCAAsC,2EACtCC,2BAA4B,iPAC5BC,2CAA4C,gEAEhDC,UAAW,CACPC,QAAS,SACT1wE,OAAQ,qBAEZ8wE,UAAW,CACP7vB,eAAgB,iBAChB8vB,eAAgB,sBAChBM,aAAc,wBACdH,eAAgB,UAChBC,iBAAkB,kBAClBC,iBAAkB,YAClBtwB,QAAS,SACTqtB,aAAc,0BACdmD,iBAAkB,kCAClBC,qBAAsB,2BACtBC,gBAAiB,iBACjBC,aAAc,UACdC,gBAAiB,sBACjBC,cAAe,sBACfE,kBAAmB,wBACnBC,QAAS,SACTC,YAAa,qBACbC,QAAS,eACTE,UAAW,WACXC,UAAW,sBACXC,mBAAoB,gCACpBj/E,QAAS,aACTC,SAAU,cACVi/E,OAAQ,SACRlG,cAAe,0BACfmG,gBAAiB,0BACjBC,eAAgB,kCAChB1F,UAAW,UACX2F,gBAAiB,YACjBC,iBAAkB,wCAClBC,WAAY,mBACZC,yBAA0B,gCAC1BC,UAAW,YACXC,cAAe,gBACfpF,SAAU,mBAEdqF,QAAS,CACLC,eAAgB,qBAChBC,KAAM,UACNjO,eAAgB,mCAChBkO,SAAU,yBACVC,YAAa,4BACbC,aAAc,gCACdC,eAAgB,6BAChBC,UAAW,oBACXC,mBAAoB,0CACpBC,mBAAoB,6CACpBC,eAAgB,6BAChB/qB,OAAO,WACPorB,qBAAqB,gCACrBC,IAAI,UACJ7J,QAAS,YACT+J,eAAe,2BACfC,eAAgB,2BAChB9sC,KAAM,UACNqmC,KAAM,kBACN0G,WAAY,wBAEhBC,aAAc,CACVC,YAAa,uDAEjBC,eAAgB,mCAChBC,gBAAiB,sFACjBC,uBAAwB,wCACxBC,sBAAuB,kCACvBC,oBAAqB,4FACrBC,sBAAuB,sCACvBC,wBAAyB,uCACzBC,8BAA+B,sDAC/BC,4BAA6B,wDAC7BC,4BAA6B,yDAC7BC,4BAA6B,6DAC7BC,uBAAwB,8CACxBC,8BAA+B,sDAC/BC,oBAAqB,6CACrBC,oCAAqC,0DACrCC,2BAA4B,wCAC5BC,uBAAwB,yCACxBC,gBAAiB,mBACjBC,YAAa,mCACbC,kBAAmB,wBACnBC,2BAA4B,kDAC5BC,oBAAqB,0CACrBC,kBAAmB,2BACnBC,iBAAkB,2BAClBC,oBAAqB,0BACrBC,kBAAmB,0BACnBC,mBAAoB,wCACpBC,wBAAyB,6BACzBC,gBAAiB,iCACjBC,uBAAwB,0CACxBC,eAAgB,0FAChBC,gBAAiB,0FACjBC,YAAa,6CACbC,WAAY,sEACZC,iBAAkB,8JAClBC,mBAAoB,oCACpBC,qBAAsB,2BACtBC,yBAA0B,mCAC1BC,qBAAsB,gGACtBC,sCAAuC,qEACvCC,qBAAsB,2BACtBC,gCAAiC,qDACjCC,iBAAkB,yCAClBrvD,iBAAkB,kFAClBC,cAAe,iDACfqvD,0BAA2B,iCAC3BC,gBAAiB,uBACjBC,+BAAgC,qBAChCC,wBAAyB,mBACzBC,0BAA2B,6DAC3BC,yBAA0B,uFAC1BC,yBAA0B,iFAC1BC,oCAAqC,wIACrCC,wBAAyB,2FACzBC,sBAAuB,0CACvBC,yBAA0B,gCAC1BC,kBAAmB,6CACnBC,eAAgB,2CAChBC,eAAgB,wDAChBC,aAAc,4BACdC,wBAAyB,kDACzBC,qBAAsB,gCACtBC,wBAAyB,kDACzBC,gBAAiB,4BACjBC,mBAAoB,qCACpBC,uBAAwB,mCACxBC,qBAAsB,+BACtBC,oBAAqB,mCACrBC,mBAAoB,gCACpBC,4BAA6B,6DAC7BC,uBAAwB,2CACxBC,oBAAqB,0CACrBC,uBAAwB,yCACxBC,0BAA2B,iCAC3BC,+BAAgC,uDAChCC,aAAc,oBACdC,oBAAqB,yCACrBC,oBAAqB,yBACrBC,uBAAwB,2EACxBC,6BAA8B,8CAC9BC,wBAAyB,6CACzBC,gBAAiB,qBACjBC,oBAAqB,sCACrBC,cAAe,2BACfC,kBAAmB,+BACnBC,oBAAqB,uCACrBC,aAAc,mCACdC,YAAa,iCACbC,iBAAkB,oCAClBC,mBAAoB,+DACpBC,gBAAiB,6BACjBC,oBAAqB,qCACrBC,yBAA0B,qCAC1BC,oBAAqB,mCACrBC,uBAAwB,6CACxBC,eAAgB,wEAChBC,iBAAkB,kCAClBC,cAAe,kDACfC,wBAAyB,yCACzBC,mBAAoB,iCACpBC,wBAAyB,qBACzBC,aAAc,wBACdC,kBAAmB,+BACnBC,6BAA8B,uCAC9BC,cAAe,sBACfC,eAAgB,8BAChBC,iBAAkB,uBAClBC,iBAAkB,oCAClBC,qBAAsB,6CACtBC,yBAA0B,wDAC1BC,uBAAwB,sDACxBC,uBAAwB,qDACxBC,kBAAmB,kCACnBC,uBAAwB,wDACxBC,2BAA4B,gDAC5BC,sBAAuB,uCACvBC,0BAA2B,kDAC3BC,uBAAwB,2CACxBC,2BAA4B,sDAC5BC,oBAAqB,wCACrBC,2BAA4B,sCAC5BC,uBAAwB,wBACxBC,wBAAyB,0BACzBC,sBAAuB,wCACvBC,uBAAwB,8CACxBC,gBAAiB,sCACjBC,+BAAgC,2EAChCC,4BAA6B,0CAC7BC,4BAA6B,qCAC7BC,uBAAwB,0CACxBC,4BAA6B,kEAC7BC,gCAAiC,iFACjCC,uBAAwB,kDACxBC,8BAA+B,gDAC/BC,sBAAuB,oCACvBC,yBAA0B,oCAC1BC,6BAA8B,+EAC9BC,6BAA8B,wGAC9BC,wBAAyB,iDACzBC,6BAA8B,sEAC9BC,sBAAuB,mCACvBC,iBAAkB,qBAClBC,sBAAuB,qCACvBC,iBAAkB,2CAClBC,kBAAmB,mCACnBC,kBAAmB,kCACnBC,aAAc,mBACdC,kBAAmB,qCACnBC,aAAc,sDACdC,yBAA0B,0CAC1BC,kBAAmB,2BACnBC,2BAA4B,mCAC5BC,qBAAsB,8BACtBC,iBAAkB,4BAClBC,mBAAoB,wBACpBC,0BAA2B,iFAC3BC,kBAAmB,yCACnBC,mBAAoB,oDACpBC,wBAAyB,gCACzBC,kBAAmB,2BACnBC,oBAAqB,mCACrBC,eAAgB,qBAChBC,gBAAiB,+BACjBC,mBAAoB,+CACpBC,iBAAkB,0BAClBC,kBAAmB,uCACnBC,yCAA0C,oDAC1CC,2BAA4B,oCAC5BC,+BAAgC,sCAChCC,2BAA4B,kCAC5BC,sBAAuB,qBACvBC,0BAA2B,2CAC3BC,2BAA4B,sCAC5BC,uBAAwB,iCACxBC,4BAA6B,4CAC7BC,oBAAqB,4EACrBC,4BAA6B,oEAC7BC,yBAA0B,sCAC1BC,kBAAmB,uCACnBC,gBAAiB,yCACjBC,kBAAmB,sCACnBC,cAAe,kCACfC,aAAc,uBACdC,2BAA4B,+CAC5BC,yBAA0B,gDAC1BC,2BAA4B,iCAC5BC,yBAA0B,+CAC1BC,qBAAsB,0CACtBC,oBAAqB,qBACrBC,4BAA6B,mCAC7BC,6BAA8B,sCAC9BC,6BAA8B,qDAC9BC,yBAA0B,kDAC1BC,kBAAmB,qCACnBC,0BAA2B,2CAC3BC,mBAAoB,8BACpBC,mBAAoB,yCACpBC,kBAAmB,0BACnBC,mBAAoB,wBACpBC,mBAAoB,uBACpBC,uBAAwB,yCACxBC,6BAA8B,4CAC9BC,kBAAmB,4BACnBC,4BAA6B,kCAC7BC,iCAAkC,2CAClCC,mBAAoB,oCACpBC,oBAAqB,uCACrBC,2BAA4B,2CAC5BC,oBAAqB,mCACrBC,qBAAsB,mCACtBC,wBAAyB,gDACzBC,iBAAkB,wCAClBC,wBAAyB,sCACzBC,yBAA0B,wCAC1BC,6BAA8B,sCAC9BC,yBAA0B,sCAC1BC,oBAAqB,uCACrBC,uBAAwB,sDACxBC,yBAA0B,0CAC1BC,oBAAqB,gCACrBC,mBAAoB,wCACpBC,mBAAoB,uCACpBC,qBAAsB,2CACtBC,6BAA8B,2DAC9BC,sBAAuB,uCACvBC,YAAa,wBACbE,oBAAqB,2BACrBC,eAAgB,gEAChBC,mBAAoB,oCACpBC,wBAAyB,sCACzBC,cAAe,2BACfC,kBAAmB,2CACnBC,qBAAsB,8DACtBC,oBAAqB,iDACrBC,kBAAmB,qCACnBC,yBAA0B,sEAC1BC,sBAAuB,gCACvBE,gCAAiC,8CACjCC,gCAAiC,6CACjCC,+BAAgC,kDAChCC,yBAA0B,oCAC1BC,qBAAsB,sBACtBC,0BAA2B,oCAC3BC,0BAA2B,wCAC3BC,0BAA2B,sCAC3BhN,qBAAsB,yBACtBoN,mBAAoB,mCACpBC,mBAAoB,2BACpBC,wBAAyB,sCACzBC,kBAAmB,8BACnBC,6BAA8B,kEAC9BC,yBAA0B,wDAC1BC,4BAA6B,oCAC7BC,+BAAgC,iDAChCC,+BAAgC,iEAChCC,4BAA6B,uDAC7BC,uBAAwB,kDACxBC,2BAA4B,+CAC5BC,eAAgB,qBAChBC,iBAAkB,uEAClBC,oBAAqB,kCACrBC,oBAAqB,sCACrBC,oBAAqB,mDACrBC,yBAA0B,sCAC1BC,oBAAqB,wBACrBC,+BAAgC,yCAChCC,yBAA0B,kCAC1BC,oBAAqB,2CACrBC,wBAAyB,qBACzBC,oBAAqB,yCACrBC,qBAAsB,mDACtBC,sBAAuB,yCACvBC,iCAAkC,yKAClCC,sBAAuB,4CACvBC,sBAAuB,yCACvBC,2BAA4B,+CAC5BC,iCAAkC,oDAClCC,mCAAoC,6GACpCC,oCAAqC,8HACrCC,yBAA0B,oCAC1BC,2BAA4B,uDAC5BC,+BAAgC,2DAChCC,oBAAqB,kCACrBC,kBAAmB,sCACnBC,iBAAkB,oEAClBC,QAAS,mEACTe,4BAA6B,qDAC7BC,4BAA6B,iCAC7Bf,kBAAmB,qFACnB1C,uBAAwB,oCACxBD,0BAA2B,uCAC3B4C,iBAAkB,uCAClBC,qBAAsB,uEACtBC,gBAAiB,CACbC,WAAY,iCACZC,cAAe,iCACfC,UAAW,kBACXC,sBAAuB,mDACvBC,UAAW,2BACXC,UAAW,qBACXC,iBAAkB,2BAClBC,iBAAkB,4BAClBC,cAAe,4BACfC,UAAW,sBH9jBd3iB,IACH3jD,KAAKomC,eAAeud,IIftBgjB,IAAShwF,OACL,eAAC,IAAD,CAAUy1C,MAAOw6C,GAAjB,SACI,eAAC,IAAD,UACI,eAAC,GAAD,QAGR/0D,SAASg1D,eAAe,SzFiGpB,kBAAmBtoC,WACnBA,UAAUuoC,cAAcC,MACnBtqC,MAAMuqC,IACHA,EAAaC,gBAEhBC,OAAOlxF,IACJywC,QAAQzwC,MAAMA,EAAMzE,a,gC0FhIpC,oEACO,MAAMk9C,EAAc,EACdsW,EAAc,K,gCCF3B,gzBAEO,MAAM/0C,EAFb,MAE+BxoB,EAAcC,gBAAgB,CACzDC,UAAYC,IAAD,CACPsoB,mBAAoBtoB,EAAQY,SAAS,CACjCV,MAAO,QAAC,WAAEs/F,KAAer/F,GAAlB,QAA+B,CAClCC,IAAM,uCAAsCo/F,IAC5C9+F,OAAQ,OACRM,KAAMb,MAGdqoB,sBAAuBxoB,EAAQY,SAAS,CACpCV,MAAO,QAAC,WAAEs/F,KAAer/F,GAAlB,QAA+B,CAClCC,IAAM,wDACNM,OAAQ,OACRM,KAAMb,MAGds/F,wBAAyBz/F,EAAQY,SAAS,CACtCV,MAAO,QAAC,WAAEs/F,KAAer/F,GAAlB,QAA+B,CAClCC,IAAM,wDACNM,OAAQ,OACRM,KAAMb,MAGdu/F,gBAAiB1/F,EAAQY,SAAS,CAC9BV,MAAQC,IAAD,CACHC,IAAM,qDAAoDD,EAAMU,YAChEH,OAAQ,OACRM,KAAMb,MAGdw/F,kBAAmB3/F,EAAQY,SAAS,CAChCV,MAAQC,IAAD,CACHC,IAAM,qDAAoDD,EAAMU,YAChEH,OAAQ,OACRM,KAAMb,MAGdsoB,aAAczoB,EAAQY,SAAS,CAC3BV,MAAQC,IAAD,CACHC,IAAM,8CACNM,OAAQ,OACRM,KAAMb,MAGdy/F,eAAgB5/F,EAAQY,SAAS,CAC7BV,MAAQC,IAAD,CACHC,IAAM,8CACNM,OAAQ,OACRM,KAAMb,MAGduoB,iBAAkB1oB,EAAQY,SAAS,CAC/BV,MAAQC,IAAD,CACHC,IAAM,kDACNM,OAAQ,OACRM,KAAMb,MAGd0/F,mBAAoB7/F,EAAQY,SAAS,CACjCV,MAAQC,IAAD,CACHC,IAAM,kDACNM,OAAQ,OACRM,KAAMb,MAGdwoB,aAAc3oB,EAAQY,SAAS,CAC3BV,MAAQC,IAAD,CACHC,IAAM,8CACNM,OAAQ,OACRM,KAAMb,MAGdyoB,eAAgB5oB,EAAQY,SAAS,CAC7BV,MAAQC,IAAD,CACHC,IAAM,gDACNM,OAAQ,OACRM,KAAMb,MAGd0oB,eAAgB7oB,EAAQY,SAAS,CAC7BV,MAAQC,IAAD,CACHC,IAAM,gDACNM,OAAQ,OACRM,KAAMb,MAGd2/F,iBAAkB9/F,EAAQY,SAAS,CAC/BV,MAAQC,IAAD,CACHC,IAAM,gDACNM,OAAQ,OACRM,KAAMb,MAGd4/F,gBAAiB//F,EAAQY,SAAS,CAC9BV,MAAQC,IAAD,CACHC,IAAM,kDACNM,OAAQ,OACRM,KAAMb,MAGd6/F,kBAAmBhgG,EAAQY,SAAS,CAChCV,MAAQC,IAAD,CACHC,IAAM,kDACNM,OAAQ,OACRM,KAAMb,MAGd8/F,aAAcjgG,EAAQY,SAAS,CAC3BV,MAAQC,IAAD,CACHC,IAAM,uCACNM,OAAQ,UAGhBw/F,0BAA2BlgG,EAAQY,SAAS,CACxCV,MAAQC,IAAD,CACHC,IAAM,qDACNM,OAAQ,UAGhB00B,YAAap1B,EAAQY,SAAS,CAC1BV,MAAQC,IAAD,CACHC,IAAM,gDACNM,OAAQ,OACRM,KAAMb,MAGdggG,oBAAqBngG,EAAQY,SAAS,CAClCV,MAAQC,IAAD,CACHC,IAAM,0DACNM,OAAQ,OACRM,KAAMb,MAGdigG,6BAA8BpgG,EAAQY,SAAS,CAC3CV,MAAQC,IAAD,CACHC,IAAM,+DACNM,OAAQ,OACRM,KAAMb,MAGdkgG,+BAAgCrgG,EAAQY,SAAS,CAC7CV,MAAQC,IAAD,CACHC,IAAM,+DACNM,OAAQ,OACRM,KAAMb,MAGdmgG,mBAAoBtgG,EAAQY,SAAS,CACjCV,MAAQC,IAAD,CACHC,IAAM,wDACNM,OAAQ,OACRM,KAAMb,MAGdogG,gBAAiBvgG,EAAQY,SAAS,CAC9BV,MAAQC,IAAD,CACHC,IAAM,gDACNM,OAAQ,OACRM,KAAMb,MAGdqgG,oCAAqCxgG,EAAQY,SAAS,CAClDV,MAAQW,IAAD,CACHT,IAAM,8DAA6DS,IACnEH,OAAQ,YAIpBe,kBAAkB,KAGT,8BACTg/F,EADS,iCAETC,EAFS,mCAGTC,EAHS,2BAITC,EAJS,6BAKTC,EALS,wBAMTC,EANS,4BAOTC,EAPS,wBAQTC,EARS,0BASTC,EATS,0BAUTC,EAVS,4BAWTC,EAXS,2BAYTC,EAZS,wBAaTC,EAbS,uBAcTC,EAdS,+BAeTC,EAfS,qCAgBTC,EAhBS,wCAiBTC,EAjBS,0CAkBTC,EAlBS,8BAmBTC,EAnBS,0BAoBTC,EApBS,8BAqBTC,EArBS,6BAsBTC,EAtBS,2BAuBTC,EAvBS,+CAwBTC,GACA35E,G,gCCrMJ,8EAQA,MAAM62C,EAAUz8D,sBAAW,CAAC,EAA6GC,KAAS,IAAtH,SAAEC,EAAF,QAAY2N,EAAZ,aAAqBC,EAArB,UAAmCE,EAAnC,UAA8CC,EAA9C,GAAyD7I,EAAK,GAA9D,UAAkE2I,EAAY,GAA9E,MAAkFlH,EAAlF,MAAyF24F,KAAUrxF,GAAkB,EAC7I,MAAMtC,EAAQuC,cACd,OACI,eAAC,IAAD,CACInO,IAAKA,EACLmF,GAAI,CACAuI,OAAQ,YACRU,YAAoC,SAAvBxC,EAAMyC,QAAQC,KAAkB1C,EAAMyC,QAAQ04B,KAAKE,MAAQ,GAAKr7B,EAAMyC,QAAQI,QAAQw4B,MACnG,SAAU,CACNt5B,UAAkC,SAAvB/B,EAAMyC,QAAQC,KAAkB,qCAAuC,sCAEnFnJ,MAEH+I,EAVR,UAauB,IAAjBqxF,EAAMhkF,QAECxN,GAAanH,GACd,cAAC,IAAD,CAAYzB,GAAI,CAAEC,EAAG,KAAOwB,MAAO,cAAC,IAAD,CAAYP,QAAQ,KAApB,SAA0BO,IAAqB+B,OAAQqF,KAGzFD,GAAanH,GACV,cAAC,IAAD,CACIzB,GAAI,CAAEC,EAAG,KACTwB,MACI,eAAC,IAAD,CAAMX,WAAS,EAACP,WAAW,SAAS2X,eAAe,gBAAgBnX,QAAS,EAA5E,UACI,cAAC,IAAD,CAAMC,MAAI,EAAV,SACI,cAAC,IAAD,CAAYE,QAAQ,KAApB,SAA0BO,MAE7B24F,GACG,cAAC,IAAD,CAAMp5F,MAAI,EAAV,SACI,cAAC,IAAD,CAAMF,WAAS,EAACC,QAAS,EAAGR,WAAW,SAAvC,SACK65F,EAAM91F,KAAI,CAACtD,EAAMuoB,IACd,cAAC,IAAD,CAAMvoB,MAAI,EAAahB,GAAI,CAAE0nD,WAAYn+B,EAAQ,EAAI9iB,EAAM1F,QAAQ,GAAK,GAAxE,SACKC,GADWuoB,YASxC/lB,OAAQqF,IAKL,IAAjBuxF,EAAMhkF,OAEAxN,GAAanH,GACb,cAAC,IAAD,CAAYzB,GAAI,CAAEC,EAAG,KAAOwB,MAAO,cAAC,IAAD,CAAYP,QAAQ,KAApB,SAA0BO,IAAqB+B,OAAQqF,IAG1FD,GAAanH,GACb,cAAC,IAAD,CACIzB,GAAI,CAAEC,EAAG,KACTwB,MACI,eAAC,IAAD,CAAMX,WAAS,EAACP,WAAW,SAAS2X,eAAe,gBAAgBnX,QAAS,EAA5E,UACI,cAAC,IAAD,CAAMC,MAAI,EAAV,SACI,cAAC,IAAD,CAAYE,QAAQ,KAApB,SAA0BO,MAE7B24F,GACG,cAAC,IAAD,CAAMp5F,MAAI,EAAV,SACI,cAAC,IAAD,CAAMF,WAAS,EAACC,QAAS,EAAGR,WAAW,SAAvC,SACK65F,EAAM91F,KAAI,CAACtD,EAAMuoB,IACd,cAAC,IAAD,CAAMvoB,MAAI,EAAahB,GAAI,CAAE0nD,WAAYn+B,EAAQ,EAAI9iB,EAAM1F,QAAQ,GAAK,GAAxE,SACKC,GADWuoB,YASxC/lB,OAAQqF,IAMnBpH,GACG,cAAC,IAAD,CACIzB,GAAI,CACAs0D,QAAS,EACTrrD,YAAoC,SAAvBxC,EAAMyC,QAAQC,KAAkB1C,EAAMyC,QAAQ04B,KAAKE,MAAQ,GAAKr7B,EAAMyC,QAAQI,QAAQw4B,SAM9Gr5B,GACG,cAAC,IAAD,CAAazI,GAAI,CAAEC,EAAG,OAAQ0I,GAAa1B,UAAWyB,GAAgB,GAAtE,SACK5N,KAGP2N,GAAW3N,QAiBzBu8D,EAAQp6D,aAAe,CACnBwL,SAAS,EACT2xF,MAAO,IAGI/iC,O,gCC/Hf,oVAEO,MAAMjjC,EAFb,MAEmCp8B,EAAcC,gBAAgB,CAC/DC,UAAYC,IAAD,CACTk8B,eAAgBl8B,EAAQE,MAAM,CAC1BA,MAAO,IAAO,oCAElBwoC,SAAU1oC,EAAQE,MAAM,CACpBA,MAAO,IAAO,6BAElBgiG,uBAAyBliG,EAAQY,SAAS,CACxCV,MAAQC,IAAD,CACHC,IAAM,oDACNM,OAAQ,OACRM,KAAMb,MAGZs+C,oBAAqBz+C,EAAQY,SAAS,CACpCV,MAAQgkC,IAAD,CACH9jC,IAAM,8CAA6C8jC,IACnDxjC,OAAQ,UAGdyhG,6BAA8BniG,EAAQY,SAAS,CAC7CV,MAAQgkC,IAAD,CACH9jC,IAAM,wDAAuD8jC,IAC7DxjC,OAAQ,UAGd0hG,uBAAwBpiG,EAAQY,SAAS,CACvCV,MAAQC,IAAD,CACHC,IAAM,mDACNM,OAAQ,QACRM,KAAMb,MAGZkiG,iCAAkCriG,EAAQY,SAAS,CACjDV,MAAQC,IAAD,CACHC,IACO,8DAAkB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAOyM,aAAc,aACnC,OAAWzM,QAAX,IAAWA,OAAX,EAAWA,EAAO0rB,sBACE,OAAL1rB,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eAClB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,0CACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,QAClDE,OAAQ,UAGhB4hG,uBAAwBtiG,EAAQY,SAAS,CACvCV,MAAQgkC,IAAD,CACL9jC,IAAM,4BAA2B8jC,IACjCxjC,OAAQ,aAGZ6hG,yBAA0BviG,EAAQY,SAAS,CACzCV,MAAQC,IAAD,CACLC,IAAM,uDACNM,OAAQ,OACRM,KAAMb,QAKVsB,kBAAkB,KAGP,uBACP+gG,EADO,iBAEPC,EAFO,kCAGPC,EAHO,+BAIPC,EAJO,wCAKPC,EALO,kCAMPC,EANO,4CAOPC,EAPO,kCAQPC,EARO,oCASPC,GACF/mE,G,gCC5EJ,oaAEA,MAAMgnE,EAAap1C,GACZA,IAGQ,OAANA,QAAM,IAANA,OAAA,EAAAA,EAAQ5vC,QAAS,GAAK,2BAFpB,wBASEipB,EAAmB5gC,IAAWxG,gBAAgB,CACzDC,UAAYC,IAAD,CACTkjG,iBAAkBljG,EAAQE,MAAM,CAC9BA,MAAQW,IAAD,CACLT,IAAM,UAAS6iG,EAAUpiG,+BACzBH,OAAQ,MACR6T,OAAQ,CAAE1T,iBAGdsiG,uBAAwBnjG,EAAQE,MAAM,CACpCA,MAAQW,IAAD,CACLT,IAAM,UAAS6iG,EAAUpiG,8CACzBH,OAAQ,MACR6T,OAAQ,CAAE1T,iBAGduiG,qBAAsBpjG,EAAQE,MAAM,CAClCA,MAAQW,IAAD,CACLT,IAAM,UAAS6iG,EAAUpiG,4CACzBH,OAAQ,MACR6T,OAAQ,CAAE1T,iBAGdumC,wBAAyBpnC,EAAQE,MAAM,CACrCA,MAAQmjG,IAAD,CACLjjG,IAAM,UAAS6iG,EAAUI,EAAQxiG,8CAA8CwiG,EAAQxiG,YACvFH,OAAQ,OACRM,KAAM,IAAKqiG,OAGfl8D,kBAAmBnnC,EAAQY,SAAS,CAClCV,MAAQqU,IAAD,OACLnU,IAAM,UApCoB+pC,EAoCc51B,EAAO8R,QAnC9B,OAAhB8jB,EAAuB,2BAA6B,6DAoCrDzpC,OAAQ,OACRM,KAAMuT,EAAO+uF,OAtCan5D,SAyC9B5C,4BAA6BvnC,EAAQE,MAAM,CACzCA,MAAQmjG,IAAD,CACLjjG,IAAM,UAAS6iG,EAAUI,EAAQxiG,kDAAkDwiG,EAAQxiG,YAC3FH,OAAQ,MACR6T,OAAQ,IAAK8uF,OAGjBE,mBAAoBvjG,EAAQE,MAAM,CAChCA,MAAQW,IAAD,CACLT,IAAM,UAAS6iG,EAAUpiG,0CACzBH,OAAQ,MACR6T,OAAQ,CAAE1T,iBAGd2mC,2BAA4BxnC,EAAQE,MAAM,CACxCA,MAAQW,IAAD,CACLT,IAAM,UAAS6iG,EAAUpiG,oDACzBH,OAAQ,MACR6T,OAAQ,CAAE1T,iBAGd4mC,yBAA0BznC,EAAQE,MAAM,CACtCA,MAAQW,IAAD,CACLT,IAAM,UAAS6iG,EAAUpiG,mDACzBH,OAAQ,MACR6T,OAAQ,CAAE1T,iBAGd6mC,yBAA0B1nC,EAAQE,MAAM,CACtCA,MAAQW,IAAD,CACLT,IAAM,UAAS6iG,EAAUpiG,mDACzBH,OAAQ,MACR6T,OAAQ,CAAE1T,iBAGdymC,gBAAiBtnC,EAAQE,MAAM,CAC7BA,MAAQW,IAAD,CACLT,IAAM,UAAS6iG,EAAUpiG,sCACzBH,OAAQ,YAIde,kBAAkB,KAGP,yBACX+hG,EADW,+BAEXC,EAFW,6BAGXC,EAHW,gCAIXC,EAJW,6BAKXC,EALW,oCAMXC,EANW,2BAOXC,EAPW,mCAQXC,EARW,wBASXC,EATW,iCAUXC,EAVW,iCAWXC,GACEh9D,G,gCC3GJ,8fAEO,MAAMle,EAFb,MAEiCnpB,EAAcC,gBAAgB,CAC7DC,UAAYC,IAAD,CACLyiC,qBAAsBziC,EAAQY,SAAS,CACnCV,MAAQC,IAAD,CACHC,IACO,sDAAkB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eACjB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,8BACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,uBAC5C,OAAkBL,QAAlB,IAAkBA,OAAlB,EAAkBA,EAAOgV,4BACzB,OAAehV,QAAf,IAAeA,OAAf,EAAeA,EAAO+Y,sCAE5BxY,OAAQ,UAGhBiiC,mCAAoC3iC,EAAQY,SAAS,CACjDV,MAAQC,IAAD,CACHC,IACO,sDAAkB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eACjB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,8BACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,uBAC5C,OAAkBL,QAAlB,IAAkBA,OAAlB,EAAkBA,EAAOgV,4BACzB,OAAehV,QAAf,IAAeA,OAAf,EAAeA,EAAO+Y,yBACtB,OAAe/Y,QAAf,IAAeA,OAAf,EAAeA,EAAO4gC,qCAE5BrgC,OAAQ,UAGhBgmC,6BAA8B1mC,EAAQY,SAAS,CAC3CV,MAAQC,IAAD,CACHC,IACO,yDAAkB,OAALD,QAAK,IAALA,OAAA,EAAAA,EAAOE,aAAc,eACjB,OAALF,QAAK,IAALA,OAAA,EAAAA,EAAOG,WAAY,kBACZ,OAALH,QAAK,IAALA,OAAA,EAAAA,EAAOI,aAAc,8BACZ,OAALJ,QAAK,IAALA,OAAA,EAAAA,EAAOK,iBAAkB,uBAC5C,OAAkBL,QAAlB,IAAkBA,OAAlB,EAAkBA,EAAOgV,4BACzB,OAAehV,QAAf,IAAeA,OAAf,EAAeA,EAAO4gC,4BACA,OAAL5gC,QAAK,IAALA,OAAA,EAAAA,EAAOwP,eAAgB,2BACd,OAALxP,QAAK,IAALA,OAAA,EAAAA,EAAOmmC,mBAAoB,QACtD5lC,OAAQ,UAGhByjG,sBAAuBnkG,EAAQY,SAAS,CACpCV,MAAO,QAAC,cAAEiV,GAAH,QAAwB,CAC3B/U,IAAO,+CAA8C+U,IACrDzU,OAAQ,UAGhB0jG,kBAAmBpkG,EAAQY,SAAS,CAChCV,MAAQC,IAAD,CACHC,IACO,mEAAWD,EAAMkkG,6BACGlkG,EAAMmkG,mBACjC5jG,OAAQ,UAGhB6jG,qBAAsBvkG,EAAQY,SAAS,CACnCV,MAAQC,IAAD,CACHC,IAAM,yCACNM,OAAQ,OACRM,KAAMb,MAGd8oB,8BAA+BjpB,EAAQY,SAAS,CAC5CV,MAAQiV,IAAD,CACH/U,IAAM,0CAAyC+U,IAC/CzU,OAAQ,UAGhB8jG,uBAAwBxkG,EAAQY,SAAS,CACrCV,MAAQC,IAAD,CACHC,IAAM,kDACNM,OAAQ,OACRM,KAAMb,MAGdskG,gCAAiCzkG,EAAQY,SAAS,CAC9CV,MAAO,QAAC,cAACiV,EAAD,WAAgB+D,GAAjB,QAAkC,CACrC9Y,IAAM,0DAAyD+U,KAAiB+D,IAChFxY,OAAQ,WAGhBgkG,WAAY1kG,EAAQY,SAAS,CACzBV,MAAQC,IAAD,CACHC,IAAM,qDACNM,OAAQ,OACRM,KAAMb,MAGdwkG,eAAgB3kG,EAAQY,SAAS,CAC7BV,MAAQC,IAAD,CACHC,IAAM,0DACNM,OAAQ,OACRM,KAAMb,MAGdykG,yBAA0B5kG,EAAQY,SAAS,CACvCV,MAAO,QAAC,cAAEiV,EAAF,cAAiBiD,GAAlB,QAAuC,CAC1ChY,IAAM,sDAAqD+U,IAC3DzU,OAAQ,SACRM,KAAM,IAAIoX,OAGlBysF,sCAAuC7kG,EAAQY,SAAS,CACpDV,MAAO,QAAC,cAAEiV,EAAF,sBAAiB2vF,GAAlB,QAA+C,CAClD1kG,IAAM,+DAA8D+U,IACpEzU,OAAQ,SACRM,KAAM,IAAI8jG,OAGlBC,0BAA2B/kG,EAAQY,SAAS,CACxCV,MAAQC,IAAD,CACHC,IAAM,sEACNM,OAAQ,SACRM,KAAMb,QAKpBsB,kBAAkB,KAGP,gCACTujG,EADS,8CAETC,EAFS,iCAGTC,EAHS,6BAITC,EAJS,gCAKTC,EALS,yCAMTC,EANS,kCAOTC,EAPS,2CAQTC,EARS,sBASTC,EATS,0BAUTC,EAVS,oCAWTC,EAXS,iDAYTC,EAZS,qCAaTC,EAbS,wCAcTC,GACA78E,G,gCClIW0Z,IATG,SAACtgC,GAAuB,IAAlB0jG,IAAiB,yDACrC,OAAI1jG,IAES,IAAV0jG,IACC1jG,EAAMA,EAAIi6D,eAEPj6D,EAAIE,QAAQ,SAASD,GAASA,EAAMsyB,iBAL3B,Q","file":"static/js/main.3125ad82.chunk.js","sourcesContent":["import { emptySplitApi } from './index'\n\nexport const notesApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getNotesByUser: builder.query({\n query: (model) => ({\n url: `api/v1/foundation-service/notes/by-user?`\n + `&pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || 10}`\n + `&orderField=${model?.orderField || 'title'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`\n + `&tableOrder=${model?.tableOrder || 'All'}`,\n method: \"GET\",\n }),\n }),\n getNoteList: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/notes?`\n + `&profileId=${model?.profileId}`\n + `&flagStatusFilter=${model?.flagStatusFilter || 'All'}`\n + `&pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || ''}`\n + `&orderField=${model?.orderField || 'description'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\",\n }),\n }),\n insertNote: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/notes`,\n method: \"POST\",\n body: model\n }),\n }),\n updateNote: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/notes/${model.id}`,\n method: \"PATCH\",\n body: model\n }),\n }),\n deleteNote: builder.mutation({\n query: (id) => ({\n url: `api/v1/foundation-service/notes/${id}`,\n method: \"DELETE\",\n }),\n }),\n togglePinNote: builder.mutation({\n query: (id) => ({\n url: `api/v1/foundation-service/notes/${id}/toggle-pin`,\n method: \"POST\",\n })\n }),\n getNoteDocuments: builder.mutation({\n query: (id) => `api/v1/foundation-service/notes-documents/${id}`,\n }),\n uploadNoteDocuments: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/notes-documents`,\n method: \"POST\",\n body: model,\n })\n }),\n deleteNoteDocument: builder.mutation({\n query: ({ id, documentId }) => ({\n url: `api/v1/foundation-service/notes-documents/${id}/document/${documentId}`,\n method: \"DELETE\",\n })\n }),\n }),\n overrideExisting: false,\n});\n\nexport const {\n useGetNoteListMutation,\n useInsertNoteMutation,\n useUpdateNoteMutation,\n useDeleteNoteMutation,\n useTogglePinNoteMutation,\n useUploadNoteDocumentsMutation,\n useGetNoteDocumentsMutation,\n useDeleteNoteDocumentMutation,\n useGetNotesByUserQuery\n} = notesApi;\n","export const formatPhoneNumber = (str) => {\n //Filter only numbers from the input\n let cleaned = ('' + str).replace(/\\D/g, '');\n \n //Check if the input is of correct\n let match = cleaned.match(/^(1|)?(\\d{3})(\\d{3})(\\d{4})$/);\n \n if (match) {\n //Remove the matched extension code\n //Change this to format for any country code.\n let intlCode = (match[1] ? '+1 ' : '')\n return [intlCode, match[2], '-', match[3], '-', match[4]].join('')\n }\n \n return str;\n}","import PropTypes from 'prop-types';\nimport { forwardRef } from 'react';\n// third-party\nimport { motion, useCycle } from 'framer-motion';\n\n// ==============================|| ANIMATION BUTTON ||============================== //\n\nconst AnimateButton = forwardRef(({ children, type, direction, offset, scale }, ref) => {\n const jingleVariants = {\n start: { rotate: -15 },\n end: { rotate: 15 }\n };\n\n const jingleTransition = {\n repeat: Infinity,\n repeatType: 'reverse',\n duration: 0.5,\n ease: 'easeInOut'\n };\n \n let offset1;\n let offset2;\n switch (direction) {\n case 'up':\n case 'left':\n offset1 = offset;\n offset2 = 0;\n break;\n case 'right':\n case 'down':\n default:\n offset1 = 0;\n offset2 = offset;\n break;\n }\n\n const [x, cycleX] = useCycle(offset1, offset2);\n const [y, cycleY] = useCycle(offset1, offset2);\n\n switch (type) {\n case 'rotate':\n return (\n \n {children}\n \n );\n case 'slide':\n if (direction === 'up' || direction === 'down') {\n return (\n cycleY()}\n onHoverStart={() => cycleY()}\n >\n {children}\n \n );\n }\n return (\n cycleX()} onHoverStart={() => cycleX()}>\n {children}\n \n );\n \n case 'jingle':\n return (\n \n {children}\n \n );\n case 'scale':\n default:\n if (typeof scale === 'number') {\n scale = {\n hover: scale,\n tap: scale\n };\n }\n return (\n \n {children}\n \n );\n }\n});\n\nAnimateButton.propTypes = {\n children: PropTypes.node,\n offset: PropTypes.number,\n type: PropTypes.oneOf(['slide', 'scale', 'rotate', 'jingle']),\n direction: PropTypes.oneOf(['up', 'down', 'left', 'right']),\n scale: PropTypes.oneOfType([PropTypes.number, PropTypes.object])\n};\n\nAnimateButton.defaultProps = {\n type: 'scale',\n offset: 10,\n direction: 'right',\n scale: {\n hover: 1,\n tap: 0.9\n }\n};\n\nexport default AnimateButton;\n","import { emptySplitApi } from \"./index\";\n\nexport const sectorApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getSectorList: builder.query({\n query: () => ({\n url: `api/v1/search-engine-service/sector`,\n method: \"GET\",\n }),\n }),\n getSectorListV1: builder.mutation({\n query: () => ({\n url: `api/v1/search-engine-service/sector`,\n method: \"GET\",\n }),\n }),\n getSubSectorListBySectorIds: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-service/sector/sub-sector`,\n method: \"POST\",\n body: model,\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const {\n useGetSectorListQuery,\n useGetSubSectorListBySectorIdsMutation,\n useGetSectorListV1Mutation\n} = sectorApi;\n","import { createApi, fetchBaseQuery } from \"@reduxjs/toolkit/query/react\";\n\nexport const emptySplitApi = createApi({\n reducerPath: \"grantAdvanceApi\",\n baseQuery: fetchBaseQuery({\n baseUrl: process.env.REACT_APP_API_URL,\n prepareHeaders: (headers, { getState }) => {\n\n //const rawToken = getState().componentsState?.token || null;\n\n const rawToken = localStorage.getItem(\"token\") || null;\n\n headers.append(\"ClientTimeZone\", new Date().getTimezoneOffset());\n\n if (rawToken !== null) {\n headers.append(\"Authorization\", `Bearer ${rawToken}`);\n }\n else {\n headers.append(\"Access-Control-Allow-Origin\", \"*\");\n }\n\n return headers;\n }\n }),\n endpoints: () => ({}),\n});\n\n\nexport const previewSplitApi = createApi({\n reducerPath: \"grantAdvancePreviewApi\",\n baseQuery: fetchBaseQuery({\n baseUrl: process.env.REACT_APP_PREVIEW_API_URL,\n prepareHeaders: (headers, { getState }) => {\n\n //const rawToken = getState().componentsState?.token || null;\n\n const rawToken = localStorage.getItem(\"token\") || null;\n\n if (rawToken !== null) {\n headers.append(\"Authorization\", `Bearer ${rawToken}`);\n }\n else {\n headers.append(\"Access-Control-Allow-Origin\", \"*\");\n }\n\n return headers;\n }\n }),\n endpoints: () => ({}),\n});\n\nexport const nonUserApi = createApi({\n reducerPath: \"grantAdvanceNonUserApi\",\n baseQuery: fetchBaseQuery({\n baseUrl: process.env.REACT_APP_API_URL,\n prepareHeaders: (headers, { getState }) => {\n headers.append(\"ClientTimeZone\", new Date().getTimezoneOffset());\n headers.append(\"Access-Control-Allow-Origin\", \"*\");\n return headers;\n }\n }),\n endpoints: () => ({}),\n});","import { \n Dialog,\n DialogTitle,\n DialogContent,\n DialogActions,\n Grid,\n Typography,\n IconButton,\n Tooltip\n} from \"@mui/material\"\n\nimport { LoadingButton } from \"@mui/lab\";\nimport { Close, HelpOutline } from \"@mui/icons-material\"\n\nconst DialogConfirmWrapper = ({\n openPopup = false,\n onClose,\n titleMessage,\n popupMessage,\n confirmLabel,\n isLoading,\n onConfirm,\n showConfirm = true,\n size = 'xs',\n additionalButtonLabel = null,\n onAdditionalButtonClick = null,\n confirmButtonVisible = true,\n cancelButtonVisible = true,\n cancelLabel = \"Cancel\",\n onCancelButtonClick = null,\n additionalButtonHelpText = null,\n startIcon = null,\n buttonHelpText = null\n}) => {\n\n return (\n \n \n \n {startIcon} {titleMessage}\n \n \n \n\n \n \n \n \n \n \n \n {popupMessage}\n \n \n \n \n \n\n {\n if (onCancelButtonClick) {\n onCancelButtonClick();\n }\n else {\n onClose();\n }\n }}\n sx={{visibility: cancelButtonVisible ? \"visible\" : \"hidden\"}}\n >\n {cancelLabel}\n \n\n {showConfirm === true && (\n <>\n {additionalButtonLabel !== null && onAdditionalButtonClick !== null && (\n \n \n \n )}}\n >\n {additionalButtonLabel}\n \n )}\n \n \n \n \n )}}\n >\n {confirmLabel}\n \n \n )}\n \n \n \n )\n}\n\nexport default DialogConfirmWrapper;","import { createSlice } from \"@reduxjs/toolkit\";\n\nexport const initialState = {\n message: {\n text: \"\",\n title: \"\",\n isOpen: false,\n },\n toaster: {\n message: \"\",\n severity: \"error\",\n isOpen: false,\n format: \"\",\n withTransition: true\n },\n countryList: [\n { key: \"UnitedStates\", value: \"United States of America\" },\n { key: \"Canada\", value: \"Canada\" },\n ],\n token: null,\n userToken: null,\n menuItem: {\n items: []\n },\n documentGenerator: {\n projectFundersVisibility: {\n inquiry: false,\n proposal: false,\n thankyou: false,\n impactReport: false,\n customLetter: false,\n }\n },\n openLoginDialog: false,\n};\n\nconst sharedSlice = createSlice({\n name: \"shared\",\n initialState,\n reducers: {\n showSuccessToaster: (state, action) => {\n state.toaster.message = action.payload;\n state.toaster.isOpen = true;\n state.toaster.severity = \"success\";\n state.toaster.format = \"\";\n state.toaster.withTransition = true;\n },\n showSuccessToasterWithoutTransitions: (state, action) => {\n state.toaster.message = action.payload;\n state.toaster.isOpen = true;\n state.toaster.severity = \"success\";\n state.toaster.format = \"\";\n state.toaster.withTransition = false;\n },\n showSuccessWithFormat: (state, action) => {\n state.toaster.message = action.payload.message;\n state.toaster.isOpen = true;\n state.toaster.severity = \"success\";\n state.toaster.format = action.payload.format;\n state.toaster.withTransition = true;\n },\n showWarningToaster: (state, action) => {\n state.toaster.message = action.payload.message;\n state.toaster.isOpen = true;\n state.toaster.severity = \"warning\";\n state.toaster.format = action.payload.format ?? \"\";\n state.toaster.withTransition = true;\n },\n showErrorToaster: (state, action) => {\n state.toaster.message = action.payload;\n state.toaster.isOpen = true;\n state.toaster.severity = \"error\";\n state.toaster.format = \"\";\n state.toaster.withTransition = true;\n },\n closeToaster: (state, action) => {\n state.toaster.message = \"\";\n state.toaster.isOpen = false;\n state.toaster.format = \"\";\n state.toaster.withTransition = true;\n },\n showMessage: (state, action) => {\n state.message.text = action.payload;\n state.message.title = \"Error\";\n state.message.isOpen = true;\n },\n showSessionTimeout: (state, action) => {\n state.toaster.message = 'Session Timeout';\n state.toaster.isOpen = true;\n state.toaster.severity = \"error\";\n state.toaster.format = \"\";\n state.toaster.withTransition = true;\n },\n closeMessage: (state, action) => {\n state.message.message = \"\";\n state.message.isOpen = false;\n },\n setUserToken: (state, action) => {\n state.userToken = action.payload;\n },\n loadMenuItems: (state, action) => {\n state.menuItem = { ...action.payload };\n },\n collapseMenu: (state, action) => {\n const itemsCopy = [...state.menuItem.items].map(copy => ({\n ...copy,\n collapse: (copy.id === action.payload) ? !copy.collapse : false\n }));\n state.menuItem.items = itemsCopy;\n },\n collapseAll: (state, action) => {\n const itemsCopy = [...state.menuItem.items].map(copy => ({\n ...copy,\n collapse: false\n }));\n state.menuItem.items = itemsCopy;\n },\n setProjectFundersVisibility: (state, action) => {\n const { key, value } = action.payload;\n state.documentGenerator.projectFundersVisibility[key] = value;\n },\n setLoginDialogOpen: (state, action) => {\n state.openLoginDialog = action.payload;\n }\n },\n});\n\nexport const {\n showSuccessToaster,\n showErrorToaster,\n closeToaster,\n showMessage,\n closeMessage,\n setUserToken,\n showSuccessWithFormat,\n showWarningToaster,\n loadMenuItems,\n collapseMenu,\n collapseAll,\n showSessionTimeout,\n setProjectFundersVisibility,\n showSuccessToasterWithoutTransitions,\n setLoginDialogOpen,\n} = sharedSlice.actions;\n\nexport default sharedSlice.reducer;\n","import { emptySplitApi } from './index'\n\nexport const userProjectApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getAll: builder.mutation({\n query: (model) => ({\n url: `api/v1/project-service/user-project?`\n + `&pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || 10}`\n + `&searchTerm=${model?.searchTerm || ''}`\n + `&orderField=${model?.orderField || '`name`'}`\n + `&showArchived=${model?.showArchived || 'false'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\",\n }),\n }),\n insertUserProject: builder.mutation({\n query: (model) => ({\n url: `api/v1/project-service/user-project`,\n method: \"POST\",\n body: model,\n }),\n }),\n updateUserProject: builder.mutation({\n query: ({id, ...model}) => ({\n url: `api/v1/project-service/user-project/${id}`,\n method: \"PATCH\",\n body: model,\n }),\n }),\n deleteUserProject: builder.mutation({\n query: (id) => ({\n url: `api/v1/project-service/user-project/${id}`,\n method: \"DELETE\",\n }),\n }),\n archiveProject: builder.mutation({\n query: (id) => ({\n url: `api/v1/project-service/user-project/archive/${id}`,\n method: \"PATCH\",\n }),\n }),\n unarchiveProject: builder.mutation({\n query: (id) => ({\n url: `api/v1/project-service/user-project/unarchive/${id}`,\n method: \"PATCH\",\n }),\n }),\n getCurrentList: builder.query({\n query: () => ({\n url: `api/v1/project-service/user-project/current-list`,\n method: \"GET\",\n }),\n }),\n getCurrentListWithTrigger: builder.mutation({\n query: () => ({\n url: `api/v1/project-service/user-project/current-list`,\n method: \"GET\",\n }),\n }),\n updateUserProjectToActiveAsync: builder.mutation({\n query: (id) => ({\n url: `api/v1/project-service/user-project/active/${id}`,\n method: \"PATCH\",\n }),\n }),\n updateUserProjectToCompleted: builder.mutation({\n query: (id) => ({\n url: `api/v1/project-service/user-project/completed/${id}`,\n method: \"PATCH\",\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const { \n useGetAllMutation,\n useInsertUserProjectMutation,\n useUpdateUserProjectMutation,\n useDeleteUserProjectMutation,\n useArchiveProjectMutation,\n useUnarchiveProjectMutation,\n useGetCurrentListQuery,\n useGetCurrentListWithTriggerMutation,\n useUpdateUserProjectToActiveAsyncMutation,\n useUpdateUserProjectToCompletedMutation,\n} = userProjectApi;\n","import { TextField } from '@mui/material';\nimport MaskedInput from 'react-text-mask';\nimport { useTranslation } from \"react-i18next\";\n\nconst MaskedInputWrapper = ({ \n name, \n value, \n label, \n onChange, \n maskType, \n error, \n theme, \n required\n}) => {\n\n const { t } = useTranslation();\n\n const masks = {\n phone: ['+', '1', ' ', '(', /[1-9]/, /\\d/, /\\d/, ')', ' ', /\\d/, /\\d/, /\\d/, '-', /\\d/, /\\d/, /\\d/, /\\d/],\n twoNumbers: [/[0-9]/, /\\d/],\n fourNumbers: [/[0-9]/, /[0-9]/, /[0-9]/, /[0-9]/]\n }\n\n return(\n (\n \n )}\n />\n )\n\n}\n\nexport default MaskedInputWrapper;","import { emptySplitApi } from './index'\n\nexport const feedbackApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getFeedbackPagedList: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/feedback?`\n + `&feedbackType=${model?.feedbackType || 'All'}`\n + `&searchTerm=${model?.searchTerm || ''}`\n + `&pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || ''}`\n + `&orderField=${model?.orderField || 'reviewed'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\"\n }),\n }),\n toggleReview: builder.mutation({\n query: (id) => ({\n url: `api/v1/auth-service/feedback/${id}/toggle-review`,\n method: \"POST\",\n })\n }),\n getFeedbackDocuments: builder.mutation({\n query: ({id, documentType}) => `api/v1/auth-service/feedback/${id}/${documentType}`\n }),\n \n //------ User --------\n submitFeedback: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/user-feedback`,\n method: \"POST\",\n body: model\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const {\n useGetFeedbackPagedListMutation,\n useToggleReviewMutation,\n useSubmitFeedbackMutation,\n useGetFeedbackDocumentsMutation,\n} = feedbackApi;\n","import PropTypes from 'prop-types';\nimport { forwardRef } from 'react';\n\n// material-ui\nimport { useTheme } from '@mui/material/styles';\nimport { Card, CardContent, CardHeader, Divider, Typography } from '@mui/material';\n\n// constant\nconst headerSX = {\n '& .MuiCardHeader-action': { mr: 0 }\n};\n\n// ==============================|| CUSTOM MAIN CARD ||============================== //\n\nconst MainCard = forwardRef(\n (\n {\n border = true,\n boxShadow,\n children,\n content = true,\n contentClass = '',\n contentSX = {},\n darkTitle,\n secondary,\n shadow,\n sx = {},\n title,\n ...others\n },\n ref\n ) => {\n const theme = useTheme();\n\n return (\n \n {/* card header and action */}\n {!darkTitle && title && }\n {darkTitle && title && (\n {title}} action={secondary} />\n )}\n\n {/* content & header divider */}\n {title && }\n\n {/* card content */}\n {content && (\n \n {children}\n \n )}\n {!content && children}\n \n );\n }\n);\n\nMainCard.propTypes = {\n border: PropTypes.bool,\n boxShadow: PropTypes.bool,\n children: PropTypes.node,\n content: PropTypes.bool,\n contentClass: PropTypes.string,\n contentSX: PropTypes.object,\n darkTitle: PropTypes.bool,\n secondary: PropTypes.oneOfType([PropTypes.node, PropTypes.string, PropTypes.object]),\n shadow: PropTypes.string,\n sx: PropTypes.object,\n title: PropTypes.oneOfType([PropTypes.node, PropTypes.string, PropTypes.object])\n};\n\nexport default MainCard;\n","import { emptySplitApi } from './index'\n\nexport const favoritesApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getFavoritesPagedList: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/favorites?`\n + `pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || ''}`\n + `&orderField=${model?.orderField || 'userName'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\",\n }),\n }),\n getFavoritesPagedSharedList: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/shared-favorites?`\n + `pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || ''}`\n + `&orderField=${model?.orderField || 'userName'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\",\n }),\n }),\n getFavoritesList: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/favorites/list`,\n method: \"GET\",\n }),\n }),\n getSharedFavorites: builder.mutation({\n query: () => ({\n url: `api/v1/foundation-service/shared-favorites`,\n method: \"GET\",\n }),\n }),\n insertFavorites: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/favorites`,\n method: \"POST\",\n body: model\n }),\n }),\n duplicateFavorites: builder.mutation({\n query: ({id, ...model}) => ({\n url: `api/v1/foundation-service/favorites/${id}`,\n method: \"POST\",\n body: model\n }),\n }),\n updateFavorites: builder.mutation({\n query: ({id, ...model}) => ({\n url: `api/v1/foundation-service/favorites/${id}`,\n method: \"PATCH\",\n body: model\n }),\n }),\n deleteFavorites: builder.mutation({\n query: ({id, ...model}) => ({\n url: `api/v1/foundation-service/favorites/${id}`,\n method: \"DELETE\",\n body: model\n }),\n }),\n deleteSharedFavorites: builder.mutation({\n query: ({id, ...model}) => ({\n url: `api/v1/foundation-service/favorites/${id}`,\n method: \"DELETE\",\n body: model\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const { \n useGetFavoritesListMutation,\n useGetFavoritesPagedListMutation,\n useInsertFavoritesMutation,\n useUpdateFavoritesMutation,\n useDeleteFavoritesMutation,\n useDuplicateFavoritesMutation,\n useGetFavoritesPagedSharedListMutation,\n useDeleteSharedFavoritesMutation,\n useGetSharedFavoritesMutation,\n} = favoritesApi;\n","import { emptySplitApi } from './index'\n\nexport const organizationProfileApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getOrganizationProfile: builder.mutation({\n query: () => ({\n url: `api/v1/auth-service/organization/profile`,\n method: \"GET\"\n }),\n }),\n getEmailsNotification: builder.mutation({\n query: () => ({\n url: `api/v1/auth-service/organization/profile/emails-notification`,\n method: \"GET\",\n \n }),\n }),\n updateOrganizationProfile: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/organization/profile`,\n method: \"PATCH\",\n body: model\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const { useGetOrganizationProfileMutation, useUpdateOrganizationProfileMutation, useGetEmailsNotificationMutation } = organizationProfileApi;\n","import { emptySplitApi } from \"./index\";\n\nexport const couponApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getCouponPagedList: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/coupon?`\n + `&ownCoupon=${model?.ownCoupon || false}`\n + `&pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || 10}`\n + `&orderField=${model?.orderField || 'Name'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\",\n }),\n }),\n getTemplateCouponList: builder.mutation({\n query: () => `api/v1/auth-service/coupon/templates`\n }),\n insertCoupon: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/coupon`,\n method: \"POST\",\n body: model,\n }),\n }),\n updateCoupon: builder.mutation({\n query: ({id, ...model}) => ({\n url: `api/v1/auth-service/coupon/${id}`,\n method: \"PATCH\",\n body: model,\n }),\n }),\n deleteCoupon: builder.mutation({\n query: (id) => ({\n url: `api/v1/auth-service/coupon/${id}`,\n method: \"DELETE\",\n }),\n }),\n pauseCoupon: builder.mutation({\n query: ({id, ...model}) => ({\n url: `api/v1/auth-service/coupon/${id}/paused`,\n method: \"PATCH\",\n body: model\n })\n }),\n getCouponPlans: builder.query({\n query: () => `api/v1/auth-service/coupon/plans`\n }),\n }),\n overrideExisting: false,\n});\n\nexport const {\n useGetCouponPagedListMutation,\n useGetTemplateCouponListMutation,\n useInsertCouponMutation,\n useUpdateCouponMutation,\n useDeleteCouponMutation,\n usePauseCouponMutation,\n useGetCouponPlansQuery,\n} = couponApi;\n","import {\n Autocomplete,\n TextField,\n } from \"@mui/material\";\n\n import { useTranslation } from \"react-i18next\";\n\nconst AutocompleteWrapper = ({\n id, \n label, \n value, \n onChange, \n error, \n sx, \n theme, \n options,\n disabled,\n loading = false,\n groupBy,\n size = \"medium\",\n required\n}) => {\n\n const { t } = useTranslation();\n\n return(\n\n option.value === value}\n onChange={onChange}\n disabled={disabled}\n loading={loading}\n size={size}\n {...groupBy && { groupBy: groupBy }}\n disableClearable={true}\n renderInput={(params) => \n \n }\n options={options}\n sx={sx}\n />\n\n \n );\n\n \n\n}\n\nexport default AutocompleteWrapper;","import { emptySplitApi } from \"./index\";\n\nexport const sectorCAApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getSectorListCA: builder.query({\n query: () => ({\n url: `api/v1/search-engine-ca-service/sector`,\n method: \"GET\",\n }),\n }),\n getSubSectorListBySectorNamesCA: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-ca-service/sector/sub-sector`,\n method: \"POST\",\n body: model,\n }),\n }),\n getDonationsSubSectorListBySectorNamesCA: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-ca-service/sector/donations-sub-sector`,\n method: \"POST\",\n body: model,\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const {\n useGetSectorListCAQuery,\n useGetSubSectorListBySectorNamesCAMutation,\n useGetDonationsSubSectorListBySectorNamesCAMutation\n} = sectorCAApi;\n","export default __webpack_public_path__ + \"static/media/ga-logo-sm.e629bbbe.png\";","import { emptySplitApi } from './index'\n\nexport const projectBudgetApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getAllIncomePagedList: builder.mutation({\n query: (model) => ({\n url: `api/v1/project-service/project-budget?`\n + `userProjectId=${model?.userProjectId || ''}`\n + `&budgetType=Income`\n + `&pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || ''}`\n + `&orderField=${model?.orderField || 'description'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\"\n }),\n }),\n getAllExpensePagedList: builder.mutation({\n query: (model) => ({\n url: `api/v1/project-service/project-budget?`\n + `userProjectId=${model?.userProjectId || ''}`\n + `&budgetType=Expense`\n + `&pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || ''}`\n + `&orderField=${model?.orderField || 'description'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\"\n }),\n }),\n insertBudget: builder.mutation({\n query: (model) => ({\n url: `api/v1/project-service/project-budget`,\n method: \"POST\",\n body: model\n }),\n }),\n resetBudget: builder.mutation({\n query: (model) => ({\n url: `api/v1/project-service/project-budget/reset/${model.budgetType}/${model.userProjectId}`,\n method: \"PUT\",\n }),\n }),\n deleteBudget: builder.mutation({\n query: ({ userProjectId, budgetType, incomeSelected }) => ({\n url: `api/v1/project-service/project-budget/${budgetType}/${userProjectId}`,\n method: \"DELETE\",\n body: incomeSelected\n }),\n }),\n deleteExclusiveBudget: builder.mutation({\n query: ({ userProjectId, budgetType, incomeSelected }) => ({\n url: `api/v1/project-service/project-budget/${budgetType}/exclusive/${userProjectId}`,\n method: \"DELETE\",\n body: incomeSelected\n }),\n }),\n updateBudget: builder.mutation({\n query: ({ id, ...model }) => ({\n url: `api/v1/project-service/project-budget/${id}`,\n method: \"PATCH\",\n body: model\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const { \n useGetAllIncomePagedListMutation,\n useGetAllExpensePagedListMutation,\n useInsertBudgetMutation,\n useResetBudgetMutation,\n useDeleteBudgetMutation,\n useDeleteExclusiveBudgetMutation,\n useUpdateBudgetMutation\n} = projectBudgetApi;\n","import { emptySplitApi } from \"./index\";\n\nexport const deadlineApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getDeadlinePagedList: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/deadline?`\n + `&pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || 10}`\n + `&orderField=${model?.orderField || 'Name'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\",\n }),\n }),\n importDeadline: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/deadline/import`,\n method: \"POST\",\n body: model,\n }),\n }),\n updateDeadline: builder.mutation({\n query: ({ id, ...model }) => ({\n url: `api/v1/foundation-service/deadline/${id}`,\n method: \"PATCH\",\n body: model,\n }),\n }),\n deleteDeadline: builder.mutation({\n query: (id) => ({\n url: `api/v1/foundation-service/deadline/${id}`,\n method: \"DELETE\",\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const {\n useGetDeadlinePagedListMutation,\n useImportDeadlineMutation,\n useUpdateDeadlineMutation,\n useDeleteDeadlineMutation,\n} = deadlineApi;\n","import { useState } from \"react\";\nimport { InputAdornment, IconButton } from \"@mui/material\";\nimport { VisibilityOff, Visibility } from \"@mui/icons-material\";\nimport FormControlWrapper from \"./FormControlWrapper\";\n\nconst PasswordInputWrapper = ({\n name,\n value,\n label,\n maxLength,\n error = \"\",\n theme,\n onChange,\n required,\n}) => {\n const [showPassword, setShowPassword] = useState(false);\n\n const handleClickShowPassword = () => setShowPassword((show) => !show);\n\n const handleMouseDownPassword = (e) => {\n e.preventDefault();\n };\n\n return (\n \n \n {showPassword ? : }\n \n \n }\n />\n );\n};\n\nexport default PasswordInputWrapper;\n","import { emptySplitApi } from './index'\n\nconst loginApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n login: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/login`,\n method: \"POST\",\n body: model,\n }),\n \n }),\n logout: builder.mutation({\n query: () => ({\n url: `api/v1/auth-service/login`,\n method: \"DELETE\",\n }),\n \n }),\n }),\n overrideExisting: false,\n});\n\nexport const { useLoginMutation, useLogoutMutation } = loginApi;\n","import { emptySplitApi } from './index'\n\nexport const favoriteFundersApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getFavoriteFundersPagedList: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/favorite-funders?`\n + `favoriteId=${model?.favoriteId || ''}`\n + `&pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || ''}`\n + `&orderField=${model?.orderField || 'userName'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\",\n }),\n }),\n moveFavoriteFunders: builder.mutation({\n query: ({destinationFavoriteId, favoriteFundersListId }) => ({\n url: `api/v1/foundation-service/favorite-funders/move${destinationFavoriteId === null ? '' : '/' + destinationFavoriteId}`,\n method: \"POST\",\n body: [...favoriteFundersListId]\n }),\n }),\n insertFavoriteFunders: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/favorite-funders`,\n method: \"POST\",\n body: model\n }),\n }),\n deleteFavoriteFunders: builder.mutation({\n query: ({favoriteId, profileIdList}) => ({\n url: `api/v1/foundation-service/favorite-funders/${favoriteId}`,\n method: \"DELETE\",\n body: [...profileIdList]\n }),\n }),\n updateQualifyFunder: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/favorite-funders/qualify/${model.favoriteFunderId}/${model.isQualified}`,\n method: \"POST\",\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const { \n useGetFavoriteFundersPagedListMutation,\n useInsertFavoriteFundersMutation,\n useDeleteFavoriteFundersMutation,\n useMoveFavoriteFundersMutation,\n useUpdateQualifyFunderMutation\n} = favoriteFundersApi;\n","import { emptySplitApi } from './index'\n\nconst letterHeadApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n saveLetterHead: builder.mutation({\n query: ({sharedLetterHeadType, model}) => ({\n url: `api/v1/auth-service/letter-head/${sharedLetterHeadType}`,\n method: \"POST\",\n body: model,\n }),\n }),\n getLetterHead: builder.mutation({\n query: (sharedLetterHeadType) => ({\n url: `api/v1/auth-service/letter-head/${sharedLetterHeadType}`,\n method: \"GET\",\n }),\n }),\n saveLetterHeadFooterOnly: builder.mutation({\n query: ({ sharedLetterHeadType, letterType }) => ({\n url: `api/v1/auth-service/letter-head/${sharedLetterHeadType}/save-type/${letterType}`,\n method: \"POST\",\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const { \n useSaveLetterHeadMutation, \n useGetLetterHeadMutation,\n useSaveLetterHeadFooterOnlyMutation\n} = letterHeadApi;\n","import { emptySplitApi } from './index'\n\nexport const inquiryLetterApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getStepList: builder.query({\n query: () => ({\n url: `api/v1/document-generator-service/inquiry-letter/steps`,\n method: \"GET\"\n }),\n }),\n insertUpdateInquiry: builder.mutation({\n query: (model) => ({\n url: `api/v1/document-generator-service/inquiry-letter`,\n method: \"POST\",\n body: model\n }),\n }),\n getInquiryLetter: builder.mutation({\n query: (userProjectId) => ({\n url: `api/v1/document-generator-service/inquiry-letter/${userProjectId}`,\n method: \"GET\",\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const { \n useGetStepListQuery,\n useInsertUpdateInquiryMutation,\n useGetInquiryLetterMutation\n} = inquiryLetterApi;\n","import { emptySplitApi } from './index'\n\nexport const proposalLetterApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getProposalStepList: builder.query({\n query: () => ({\n url: `api/v1/document-generator-service/proposal-letter/steps`,\n method: \"GET\"\n }),\n }),\n insertUpdateProposal: builder.mutation({\n query: (model) => ({\n url: `api/v1/document-generator-service/proposal-letter`,\n method: \"POST\",\n body: model\n }),\n }),\n getProposalLetter: builder.mutation({\n query: (userProjectId) => ({\n url: `api/v1/document-generator-service/proposal-letter/${userProjectId}`,\n method: \"GET\",\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const { \n useGetProposalStepListQuery,\n useInsertUpdateProposalMutation,\n useGetProposalLetterMutation\n} = proposalLetterApi;\n","import { emptySplitApi } from './index'\n\nexport const customLetterApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getCustomStepList: builder.query({\n query: () => ({\n url: `api/v1/document-generator-service/custom-letter/steps`,\n method: \"GET\"\n }),\n }),\n insertUpdateCustom: builder.mutation({\n query: (model) => ({\n url: `api/v1/document-generator-service/custom-letter`,\n method: \"POST\",\n body: model\n }),\n }),\n getCustomLetter: builder.mutation({\n query: (userProjectId) => ({\n url: `api/v1/document-generator-service/custom-letter/${userProjectId}`,\n method: \"GET\",\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const {\n useGetCustomStepListQuery,\n useInsertUpdateCustomMutation,\n useGetCustomLetterMutation\n} = customLetterApi;\n","import { emptySplitApi } from './index'\n\nexport const thankYouLetterApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getThankYouStepList: builder.query({\n query: () => ({\n url: `api/v1/document-generator-service/thank-you-letter/steps`,\n method: \"GET\"\n }),\n }),\n insertUpdateThankYouLetter: builder.mutation({\n query: (model) => ({\n url: `api/v1/document-generator-service/thank-you-letter`,\n method: \"POST\",\n body: model\n }),\n }),\n getThankYouLetter: builder.mutation({\n query: (userProjectId) => ({\n url: `api/v1/document-generator-service/thank-you-letter/${userProjectId}`,\n method: \"GET\",\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const { \n useGetThankYouStepListQuery,\n useInsertUpdateThankYouLetterMutation,\n useGetThankYouLetterMutation\n} = thankYouLetterApi;\n","import { emptySplitApi } from './index'\n\nexport const impactReportLetterApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getImpactReportStepList: builder.query({\n query: () => ({\n url: `api/v1/document-generator-service/impact-report-letter/steps`,\n method: \"GET\"\n }),\n }),\n insertUpdateImpactReportLetter: builder.mutation({\n query: (model) => ({\n url: `api/v1/document-generator-service/impact-report-letter`,\n method: \"POST\",\n body: model\n }),\n }),\n getImpactReportLetter: builder.mutation({\n query: (userProjectId) => ({\n url: `api/v1/document-generator-service/impact-report-letter/${userProjectId}`,\n method: \"GET\",\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const { \n useGetImpactReportStepListQuery,\n useInsertUpdateImpactReportLetterMutation,\n useGetImpactReportLetterMutation\n} = impactReportLetterApi;\n","import { useEffect } from 'react';\nimport * as Constants from \"utils/constants\";\n\n\nexport const PathKeys = Object.freeze({\n byGivingHistory: \"by-giving-history\",\n byKeyword: \"by-keyword\",\n byName: \"by-name\",\n byDirector: \"by-director\",\n byYear: \"by-year\",\n byGivingHistoryCa: \"by-giving-history-ca\",\n byNameCa: \"by-name-ca\",\n byDirectorCa: \"by-director-ca\",\n byYearCa: \"by-year-ca\",\n byInternationalFunding: \"by-international-funding\",\n byCustom: \"by-custom\",\n foundationProfile: \"foundation-profile\",\n foundationProfileCa: \"foundation-profile-ca\",\n});\n\n/**\n * @param {string} name - Identifier.\n * @param {Function} composeUrl - A function that returns an object of type URL object based on the provided parameters.\n */\nconst useVersioning = (name, composeUrl) => {\n\n const paths = Object.freeze({\n [PathKeys.byGivingHistory]: {\n v1: Constants.GIVING_HISTORY_PATH,\n v2: Constants.GIVING_HISTORY_V2_PATH,\n },\n [PathKeys.byKeyword]: {\n v1: Constants.KEYWORD_PATH,\n v2: Constants.KEYWORD_V2_PATH,\n },\n [PathKeys.byName]: {\n v1: Constants.NAME_PATH,\n v2: Constants.NAME_V2_PATH,\n },\n [PathKeys.byDirector]: {\n v1: Constants.DIRECTOR_PATH,\n v2: Constants.DIRECTOR_V2_PATH,\n },\n [PathKeys.byYear]: {\n v1: Constants.YEAR_PATH,\n v2: Constants.YEAR_V2_PATH,\n },\n [PathKeys.byGivingHistoryCa]: {\n v1: Constants.GIVING_HISTORY_CA_PATH,\n v2: Constants.GIVING_HISTORY_CA_V2_PATH,\n },\n [PathKeys.byNameCa]: {\n v1: Constants.NAME_CA_PATH,\n v2: Constants.NAME_CA_V2_PATH,\n },\n [PathKeys.byDirectorCa]: {\n v1: Constants.DIRECTOR_CA_PATH,\n v2: Constants.DIRECTOR_CA_V2_PATH,\n },\n [PathKeys.byYearCa]: {\n v1: Constants.YEAR_CA_PATH,\n v2: Constants.YEAR_CA_V2_PATH,\n },\n [PathKeys.byInternationalFunding]: {\n v1: Constants.INTERNATIONAL_FUNDING_PATH,\n v2: Constants.INTERNATIONAL_FUNDING_V2_PATH,\n },\n [PathKeys.byCustom]: {\n v1: Constants.CUSTOM_PATH,\n v2: Constants.CUSTOM_V2_PATH,\n },\n [PathKeys.foundationProfile]: {\n v1: Constants.FOUNDATION_PATH,\n v2: Constants.FOUNDATION_V2_PATH,\n },\n [PathKeys.foundationProfileCa]: {\n v1: Constants.FOUNDATION_CA_PATH,\n v2: Constants.FOUNDATION_CA_V2_PATH,\n }\n });\n\n const comparePaths = (path1, path2) => {\n const parts1 = path1.replace(/^\\/|\\/$/g, '').split('/');\n const parts2 = path2.replace(/^\\/|\\/$/g, '').split('/');\n \n let isSame = true;\n \n // Compare each part\n const maxLength = Math.max(parts1.length, parts2.length);\n for (let i = 0; i < maxLength; i++) {\n const part1 = parts1[i] || '';\n const part2 = parts2[i] || '';\n if (part1 !== part2) {\n isSame = false;\n }\n }\n \n return isSame;\n }\n\n const getPathByName = (name) => {\n let version = localStorage.getItem(name);\n if(version === null) return null;\n\n return paths[name][version];\n }\n\n const toggleVersion = () => {\n if(name === null || name === undefined)\n return;\n\n let toVersion = \"v1\";\n let currentVersion = localStorage.getItem(name);\n\n if(currentVersion !== null) \n toVersion = currentVersion === \"v1\" ? \"v2\" : \"v1\";\n\n localStorage.setItem(name, toVersion);\n\n window.location.replace(typeof composeUrl === \"function\" \n ? composeUrl(paths[name][toVersion])\n : new URL(paths[name][toVersion], window.location.origin));\n }\n\n useEffect(() => {\n if(name === null || name === undefined)\n return;\n\n const value = localStorage.getItem(name);\n const urlParams = new URLSearchParams(window.location.search);\n const qualifyFunders = urlParams.get('qualify');\n\n if(value === null) return;\n\n if (qualifyFunders === 'true') return;\n\n const targetPath = typeof composeUrl === \"function\" \n ? composeUrl(paths[name][value])\n : new URL(paths[name][value], window.location.origin);\n\n const isSame = comparePaths(window.location.pathname, targetPath.pathname);\n\n if(!isSame) {\n window.location.replace(targetPath);\n }\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return { toggleVersion, getPathByName }\n}\n\nexport default useVersioning;","import { emptySplitApi } from './index'\n\nexport const sharedProjectApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getAllShared: builder.mutation({\n query: (model) => ({\n url: `api/v1/project-service/shared-project?`\n + `&pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || 10}`\n + `&searchTerm=${model?.searchTerm || ''}`\n + `&orderField=${model?.orderField || '`name`'}`\n + `&showArchived=${model?.showArchived || 'false'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\",\n }),\n }),\n getSharedProjectList: builder.query({\n query: (model) => ({\n url: `api/v1/project-service/shared-project?`\n + `&pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || 10}`\n + `&searchTerm=${model?.searchTerm || ''}`\n + `&orderField=${model?.orderField || '`name`'}`\n + `&showArchived=${model?.showArchived || 'false'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\",\n }),\n }),\n getSharedProjectListWithTrigger: builder.mutation({\n query: () => ({\n url: `api/v1/project-service/shared-project?`\n + `pageNumber=0`\n + `&pageSize=10`,\n method: \"GET\",\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const {\n useGetSharedProjectListQuery,\n useGetSharedProjectListWithTriggerMutation,\n useGetAllSharedMutation,\n} = sharedProjectApi;\n","import { \n Dialog, \n DialogTitle,\n DialogContent,\n IconButton,\n Typography,\n DialogActions,\n} from \"@mui/material\";\n\nimport { Close } from \"@mui/icons-material\";\n\n\nconst SimpleDialogWrapper = ({\n title,\n icon,\n open = false,\n onClose,\n children,\n dialogContentProps={},\n dialogActionsProps={},\n maxWidth=\"md\",\n ActionContents: actionContents,\n ...others\n}) => {\n\n return (\n \n \n \n {icon} {title}\n \n \n \n \n \n\n \n {children}\n \n {actionContents && (\n \n {actionContents}\n \n )}\n \n )\n}\n\nexport default SimpleDialogWrapper;","import {\n FormControl,\n FormHelperText,\n InputLabel,\n CircularProgress,\n Select,\n MenuItem,\n ListItemText,\n Typography,\n Grid\n } from \"@mui/material\";\n\n import { useTranslation } from \"react-i18next\";\n \n const SelectWrapper = ({\n name, \n value,\n label, \n error, \n required,\n theme, \n onChange,\n loading,\n data = [],\n disabled,\n sx,\n }) => {\n\n const { t } = useTranslation();\n \n return(\n \n \n {label}\n \n {loading && \n \n }\n \n {data.map((item) => (\n \n \n \n {item.text}\n \n \n {item.extraInfo &&\n (\n {item.extraInfo}\n )\n }\n \n \n \n ))}\n \n {error !== \"\" && (\n \n {t(error)}\n \n )}\n \n )\n }\n \n export default SelectWrapper;","import { emptySplitApi } from './index'\n\nexport const blockedFundersApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getBlockedFundersList: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/blocked-funders?`\n + `userProjectId=${model?.userProjectId || ''}`\n + `&pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || ''}`\n + `&orderField=${model?.orderField || 'userName'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\",\n }),\n }),\n insertBlockedFunders: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/blocked-funders`,\n method: \"POST\",\n body: model\n }),\n }),\n deleteBlockedFunders: builder.mutation({\n query: ({userProjectId, blockedFundersIdList}) => ({\n url: `api/v1/foundation-service/blocked-funders/${userProjectId}`,\n method: \"DELETE\",\n body: [...blockedFundersIdList]\n }),\n }),\n deleteAllBlockedFunders: builder.mutation({\n query: (userProjectId) => ({\n url: `api/v1/foundation-service/blocked-funders/delete-all/${userProjectId}`,\n method: \"DELETE\",\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const { \n useGetBlockedFundersListMutation,\n useInsertBlockedFundersMutation,\n useDeleteBlockedFundersMutation,\n useDeleteAllBlockedFundersMutation\n} = blockedFundersApi;\n","import {\n FormControlLabel,\n Checkbox,\n Typography\n } from \"@mui/material\";\n\nconst CheckboxWrapper = ({\n name, \n label,\n checked, \n onChange, \n variant\n}) => {\n\n return(\n \n {label}\n )\n : label\n }\n control={\n \n }\n />\n )\n\n}\n\nexport default CheckboxWrapper;","import { emptySplitApi } from './index'\n\nexport const customDatabaseApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getRequiredOptionalFields: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/custom-database/required-optional-fields`,\n method: \"GET\"\n }),\n }),\n confirmImportCustomDatabase: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/custom-database/confirm-import`,\n method: \"POST\",\n body: model\n }),\n }),\n getCustomDatabaseList: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/custom-database/list?`\n + `pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || ''}`\n + `&orderField=${model?.orderField || 'importedDate'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\"\n }),\n }),\n deleteCustomDatabase: builder.mutation({\n query: (customDatabaseId) => ({\n url: `api/v1/foundation-service/custom-database/delete/${customDatabaseId}`,\n method: \"DELETE\"\n }),\n }),\n getFileList: builder.mutation({\n query: () => ({\n url: `api/v1/foundation-service/custom-database/file-list`,\n method: \"GET\"\n }),\n }),\n getMappedFields: builder.mutation({\n query: (customItemId) => ({\n url: `api/v1/foundation-service/custom-database/mapped-fields/${customItemId}`,\n method: \"GET\"\n }),\n }),\n getCustomDatabaseProvinceOrStateList: builder.mutation({\n query: (customDatabaseId) => ({\n url: `api/v1/foundation-service/custom-database/province-or-state/${customDatabaseId}`,\n method: \"GET\"\n }),\n }),\n getCustomDatabaseCityList: builder.mutation({\n query: (model) => ({\n url: `api/v1/foundation-service/custom-database/city/${model.customDatabaseId}`,\n method: \"POST\",\n body: [...model.provinceOrStateList]\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const { \n useGetRequiredOptionalFieldsMutation,\n useConfirmImportCustomDatabaseMutation,\n useGetCustomDatabaseListMutation,\n useDeleteCustomDatabaseMutation,\n useGetFileListMutation,\n useGetMappedFieldsMutation,\n useGetCustomDatabaseProvinceOrStateListMutation,\n useGetCustomDatabaseCityListMutation\n} = customDatabaseApi;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { searchEngineApi } from \"Services/SearchEngineService\";\nimport { userProjectApi } from \"Services/UserProjectService\";\nimport { countryApi } from \"Services/CountryService\";\nimport { sectorApi } from \"Services/SectorService\";\nimport { projectFundersApi } from \"Services/ProjectFundersService\";\n\nexport const initialState = {\n collapseFilters: false,\n toggleAdvancedSearch: false,\n toggleExpandSearchBar: false,\n userProject: {\n id: null,\n value: null,\n label: null\n },\n userProjectList: [],\n searchBar: {\n any: '',\n all: '',\n none: '',\n directorName: '',\n foundationName: '',\n yearList: [],\n stemmingSearch: false,\n showFundersOnce: false,\n showMultiGrant: false,\n searchButton: '',\n customDatabaseFileId: '',\n customDatabaseContactName: '',\n customDatabaseOrganizationName: ''\n },\n searchFilters: {\n fromCountry: [],\n toCountry: [],\n provinceOrState: [],\n city: [],\n years: [],\n sector: [],\n subSector: [],\n foundation: ['Public & Private'],\n avgGrant: [],\n ratingValue: 0,\n grantSize: [0, 6],\n assertSize: [0, 6],\n },\n additionalFilters: {\n hasOnlineApplication: false,\n hasAdditionalInformation: false,\n doesNotHaveWebsite: false,\n doesHaveWebsite: false,\n hasPhoneNumber: false,\n hasEmail: false,\n showDesignedGiven: false\n },\n foundationList: [\n { id: 0, name: 'All', checked: false },\n { id: 1, name: 'Public & Private', checked: true },\n { id: 2, name: 'Public', checked: false },\n { id: 3, name: 'Private', checked: false },\n { id: 4, name: 'Charitable Trust', checked: false },\n ],\n countryList: [],\n provinceOrStateList: [],\n cityList: [],\n sectorList: [],\n subSectorList: [],\n avgGrantList: [\n { id: 2, name: '12 or more', checked: false },\n { id: 3, name: '8 or more', checked: false },\n { id: 4, name: '4 or more', checked: false },\n ],\n yearList: [\n ...Array(2021 - 2014 + 1)\n .fill()\n .map((_, idx) => ({ \n id: idx,\n name: (2014 + idx).toString(),\n checked: false\n }))\n ],\n categoryList: [\n { id: 1, name: 'Religion', checked: false },\n { id: 2, name: 'Social & Human Services', checked: false },\n { id: 3, name: 'Education', checked: false },\n { id: 4, name: 'Community', checked: false },\n { id: 5, name: 'Art & Culture', checked: false },\n { id: 6, name: 'Sports & Recreation', checked: false },\n { id: 7, name: 'Animal Welfare', checked: false },\n ],\n pagedList: {\n pageNumber: 1,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'doneename',\n orderDirection: 'desc',\n items: []\n },\n searchByNamePagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'name',\n orderDirection: 'asc',\n items: []\n },\n searchByDirectorPagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'firstName',\n orderDirection: 'desc',\n items: []\n },\n searchByYearPagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'accountName',\n orderDirection: 'asc',\n items: []\n },\n searchByRatingPagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'accountName',\n orderDirection: 'asc',\n items: []\n },\n searchByCustomPagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'firstName',\n orderDirection: 'asc',\n items: []\n },\n projectFundersProfileIdList: []\n};\n\nconst searchEngineSlice = createSlice({\n name: \"search-engine\",\n initialState,\n reducers: {\n handleChangeUserProject: (state, action) => {\n if (action.payload !== null) {\n state.userProject = state.userProjectList.find(o => o.id === action.payload.id);\n }\n },\n handleChangeCountry: (state, action) => {\n state.countryList.forEach(country => {\n if (country.code === action.payload.code) {\n country.checked = action.payload.checked;\n\n if (action.payload.checked) {\n state.searchFilters.fromCountry.push(action.payload.code);\n }\n else {\n state.searchFilters.fromCountry = state.searchFilters.fromCountry.filter(o => o !== action.payload.code); \n }\n }\n });\n },\n handleChangeToCountry: (state, action) => {\n state.countryList.forEach(country => {\n if (country.code === action.payload.code) {\n country.checked = action.payload.checked;\n\n if (action.payload.checked) {\n state.searchFilters.toCountry.push(action.payload.code);\n }\n else {\n state.searchFilters.toCountry = state.searchFilters.toCountry.filter(o => o !== action.payload.code); \n }\n }\n });\n },\n handleChangeProvinceOrState: (state, action) => {\n state.provinceOrStateList.forEach(provinceOrState => {\n if (provinceOrState.code === action.payload.code) {\n provinceOrState.checked = action.payload.checked;\n\n if (action.payload.checked) {\n state.searchFilters.provinceOrState.push(action.payload.code);\n }\n else {\n state.searchFilters.provinceOrState = state.searchFilters.provinceOrState.filter(o => o !== action.payload.code); \n }\n }\n });\n },\n handleChangeCity: (state, action) => {\n state.cityList.forEach(city => {\n if (city.name === action.payload.name) {\n city.checked = action.payload.checked;\n\n if (action.payload.checked) {\n state.searchFilters.city.push(action.payload.name);\n }\n else {\n state.searchFilters.city = state.searchFilters.city.filter(o => o !== action.payload.name); \n }\n }\n });\n },\n handleChangeSector: (state, action) => {\n state.sectorList.forEach(sector => {\n if (sector.sectorName === action.payload.sectorName) {\n sector.checked = action.payload.checked;\n\n if (action.payload.checked) {\n state.searchFilters.sector.push(action.payload.sectorName);\n }\n else {\n state.searchFilters.sector = state.searchFilters.sector.filter(o => o !== action.payload.sectorName); \n }\n }\n });\n },\n handleChangeSubSector: (state, action) => {\n state.subSectorList.forEach(sector => {\n if (sector.subSectorName === action.payload.subSectorName) {\n sector.checked = action.payload.checked;\n\n if (action.payload.checked) {\n state.searchFilters.subSector.push(action.payload.subSectorName);\n }\n else {\n state.searchFilters.subSector = state.searchFilters.subSector.filter(o => o !== action.payload.subSectorName); \n }\n }\n });\n },\n setCollapseFilters: (state, action) => {\n state.collapseFilters = action.payload;\n },\n handleChangeSearchBar: (state, action) => {\n state.searchBar[action.payload.field] = action.payload.value;\n },\n handleCheckFilters: (state, action) => {\n\n if (action.payload.checked) {\n state.searchFilters[action.payload.field].push(action.payload.value);\n }\n else {\n state.searchFilters[action.payload.field] = state.searchFilters[action.payload.field].filter(o => o !== action.payload.value);\n }\n },\n handleCheckYearList: (state, action) => {\n state.searchBar.yearList = action.payload;\n },\n handleChangeAdditionalFilters: (state, action) => {\n state.additionalFilters[action.payload.field] = action.payload.checked;\n },\n handleToggleAdvancedSearch: (state, action) => {\n state.toggleAdvancedSearch = action.payload;\n },\n handleToggleExpandSearchBar: (state, action) => {\n state.toggleExpandSearchBar = action.payload;\n },\n handleRatingValue: (state, action) => {\n state.searchFilters.ratingValue = action.payload;\n },\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state[field].error = errors[0];\n });\n },\n handleAssertSize: (state, action) => {\n state.searchFilters.assertSize = action.payload;\n },\n handleGrantSize: (state, action) => {\n state.searchFilters.grantSize = action.payload;\n },\n handleClearForm: (state, action) => {\n state.searchBar = {...initialState.searchBar };\n state.searchFilters = {...initialState.searchFilters};\n state.additionalFilters = {...initialState.additionalFilters};\n\n state.countryList = state.countryList.map(item => ({\n ...item,\n checked: false\n }));\n\n state.provinceOrStateList = state.provinceOrStateList.map(item => ({\n ...item,\n checked: false\n }));\n\n state.cityList = state.cityList.map(item => ({\n ...item,\n checked: false\n }));\n\n state.sectorList = state.sectorList.map(item => ({\n ...item,\n checked: false\n }));\n\n state.subSectorList = state.subSectorList.map(item => ({\n ...item,\n checked: false\n }));\n\n state.foundationList = [\n { id: 0, name: 'All', checked: false },\n { id: 1, name: 'Public & Private', checked: true },\n { id: 2, name: 'Public', checked: false },\n { id: 3, name: 'Private', checked: false },\n { id: 4, name: 'Charitable Trust', checked: false },\n ];\n },\n handleLoadingFields: (state, action) => {\n state.collapseFilters = true;\n state.searchBar = {...initialState.searchBar, ...action.payload.searchBar };\n state.searchFilters = {...initialState.searchFilters, ...action.payload.searchFilters };\n state.additionalFilters = {...initialState.additionalFilters, ...action.payload.additionalFilters };\n\n const grantSize = action.payload.searchFilters?.grantSize || [0, 50];\n const assertSize = action.payload.searchFilters?.assertSize || [0, 50];\n\n if (action.payload.searchBar.all !== '') {\n state.toggleExpandSearchBar = true;\n }\n\n if (action.payload.searchBar.none !== '') {\n state.toggleExpandSearchBar = true;\n }\n\n if (action.payload.searchBar.foundationName !== '') {\n state.toggleExpandSearchBar = true;\n }\n\n if (action.payload.searchFilters.foundation?.length > 0) {\n state.toggleAdvancedSearch = true;\n }\n\n if (grantSize[0] !== 0 || grantSize[1] !== 50) {\n state.toggleAdvancedSearch = true;\n }\n\n if (assertSize[0] !== 0 || assertSize[1] !== 50) {\n state.toggleAdvancedSearch = true;\n }\n\n if (action.payload.searchFilters.avgGrant?.length > 0) {\n state.toggleAdvancedSearch = true;\n }\n },\n handleClearList: (state, action) => {\n state.pagedList = { ...initialState.pagedList };\n state.searchByNamePagedList = { ...initialState.searchByNamePagedList };\n state.searchByYearPagedList = { ...initialState.searchByYearPagedList };\n state.searchByRatingPagedList = { ...initialState.searchByRatingPagedList };\n state.searchByCustomPagedList = { ...initialState.searchByCustomPagedList };\n },\n handleAddFundersToProject: (state, action) => {\n action.payload.forEach(projectFunders => {\n state.projectFundersProfileIdList.push(projectFunders.profileId);\n });\n },\n\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n searchEngineApi.endpoints.searchBySearchType.matchFulfilled, (state, action) => {\n state.pagedList.pageNumber = action.payload.pageNumber;\n state.pagedList.pageSize = action.payload.pageSize;\n state.pagedList.pageCount = action.payload.pageCount;\n state.pagedList.totalCount = action.payload.totalCount;\n state.pagedList.orderField = action.payload.orderField;\n state.pagedList.orderDirection = action.payload.orderDirection;\n state.pagedList.items = action.payload.items;\n }\n )\n .addMatcher(\n searchEngineApi.endpoints.searchByGivingHistory.matchFulfilled, (state, action) => {\n state.pagedList.pageNumber = action.payload.pageNumber;\n state.pagedList.pageSize = action.payload.pageSize;\n state.pagedList.pageCount = action.payload.pageCount;\n state.pagedList.totalCount = action.payload.totalCount;\n state.pagedList.orderField = action.payload.orderField;\n state.pagedList.orderDirection = action.payload.orderDirection;\n state.pagedList.items = action.payload.items;\n }\n )\n .addMatcher(\n searchEngineApi.endpoints.searchByName.matchFulfilled, (state, action) => {\n state.searchByNamePagedList.pageNumber = action.payload.pageNumber;\n state.searchByNamePagedList.pageSize = action.payload.pageSize;\n state.searchByNamePagedList.pageCount = action.payload.pageCount;\n state.searchByNamePagedList.totalCount = action.payload.totalCount;\n state.searchByNamePagedList.orderField = action.payload.orderField;\n state.searchByNamePagedList.orderDirection = action.payload.orderDirection;\n state.searchByNamePagedList.items = action.payload.items;\n }\n )\n .addMatcher(\n searchEngineApi.endpoints.searchByDirector.matchFulfilled, (state, action) => {\n state.searchByDirectorPagedList.pageNumber = action.payload.pageNumber;\n state.searchByDirectorPagedList.pageSize = action.payload.pageSize;\n state.searchByDirectorPagedList.pageCount = action.payload.pageCount;\n state.searchByDirectorPagedList.totalCount = action.payload.totalCount;\n state.searchByDirectorPagedList.orderField = action.payload.orderField;\n state.searchByDirectorPagedList.orderDirection = action.payload.orderDirection;\n state.searchByDirectorPagedList.items = action.payload.items;\n }\n )\n .addMatcher(\n searchEngineApi.endpoints.searchByYear.matchFulfilled, (state, action) => {\n state.searchByYearPagedList.pageNumber = action.payload.pageNumber;\n state.searchByYearPagedList.pageSize = action.payload.pageSize;\n state.searchByYearPagedList.pageCount = action.payload.pageCount;\n state.searchByYearPagedList.totalCount = action.payload.totalCount;\n state.searchByYearPagedList.orderField = action.payload.orderField;\n state.searchByYearPagedList.orderDirection = action.payload.orderDirection;\n state.searchByYearPagedList.items = action.payload.items;\n }\n )\n .addMatcher(\n searchEngineApi.endpoints.searchByRating.matchFulfilled, (state, action) => {\n state.searchByRatingPagedList.pageNumber = action.payload.pageNumber;\n state.searchByRatingPagedList.pageSize = action.payload.pageSize;\n state.searchByRatingPagedList.pageCount = action.payload.pageCount;\n state.searchByRatingPagedList.totalCount = action.payload.totalCount;\n state.searchByRatingPagedList.orderField = action.payload.orderField;\n state.searchByRatingPagedList.orderDirection = action.payload.orderDirection;\n state.searchByRatingPagedList.items = action.payload.items;\n }\n )\n .addMatcher(\n searchEngineApi.endpoints.searchByCustom.matchFulfilled, (state, action) => {\n state.searchByCustomPagedList.pageNumber = action.payload.pageNumber;\n state.searchByCustomPagedList.pageSize = action.payload.pageSize;\n state.searchByCustomPagedList.pageCount = action.payload.pageCount;\n state.searchByCustomPagedList.totalCount = action.payload.totalCount;\n state.searchByCustomPagedList.orderField = action.payload.orderField;\n state.searchByCustomPagedList.orderDirection = action.payload.orderDirection;\n state.searchByCustomPagedList.items = action.payload.items;\n }\n )\n .addMatcher(\n userProjectApi.endpoints.getCurrentList.matchFulfilled, (state, action) => {\n state.userProjectList = [];\n state.userProject = initialState.userProject;\n\n if (action.payload.length !== 0) {\n\n state.userProjectList = action.payload.map(item => ({\n id: item.id,\n value: item.name,\n label: item.name\n }));\n\n state.userProject = state.userProjectList[0];\n }\n }\n )\n .addMatcher(\n countryApi.endpoints.getCountryList.matchFulfilled, (state, action) => {\n state.countryList = action.payload.map(item => ({\n ...item,\n checked: false\n }));\n\n action.payload.forEach(country => {\n country.provinceOrStateList.forEach(provinceOrState => {\n state.provinceOrStateList.push({\n ...provinceOrState,\n checked: false\n });\n });\n });\n }\n )\n .addMatcher(\n projectFundersApi.endpoints.getAllProjectFundersProfileId.matchFulfilled, (state, action) => {\n state.projectFundersProfileIdList = action.payload;\n }\n ) \n .addMatcher(\n countryApi.endpoints.getCityListByProvinceOrStates.matchFulfilled, (state, action) => {\n state.cityList = action.payload.map(item => ({\n ...item,\n checked: false\n }));\n }\n )\n .addMatcher(\n sectorApi.endpoints.getSectorList.matchFulfilled, (state, action) => {\n state.sectorList = action.payload.map(item => ({\n ...item,\n checked: false\n }));\n }\n )\n .addMatcher(\n sectorApi.endpoints.getSubSectorListBySectorIds.matchFulfilled, (state, action) => {\n state.subSectorList = action.payload.map(item => ({\n ...item,\n checked: false\n }));\n }\n )\n }\n});\n\nexport const {\n handleChangeUserProject,\n handleChangeCountry,\n handleChangeProvinceOrState,\n handleChangeCity,\n handleChangeSector,\n handleChangeSubSector,\n handleToggleAdvancedSearch,\n handleToggleExpandSearchBar,\n handleRatingValue,\n handleChangeSearchBar,\n handleCheckFilters,\n handleChangeAdditionalFilters,\n handleModelErrors,\n handleAssertSize,\n handleGrantSize,\n handleLoadingFields,\n handleClearForm,\n handleClearList,\n setCollapseFilters,\n handleCheckYearList,\n handleAddFundersToProject\n} = searchEngineSlice.actions;\n\nexport default searchEngineSlice.reducer;\n","//v1 paths\nexport const FOUNDATION_PATH = 'main/foundation-profile';\nexport const FOUNDATION_CA_PATH = 'main/foundation-profile-ca';\nexport const CUSTOM_PROFILE_PATH = 'main/custom-profile';\n\n//search engines\nexport const GIVING_HISTORY_PATH = 'main/search/by-giving-history';\nexport const GIVING_HISTORY_CA_PATH = 'main/search/giving-history-ca';\nexport const KEYWORD_PATH = 'main/search/by-keyword';\nexport const NAME_PATH = 'main/search/by-name';\nexport const NAME_CA_PATH = 'main/search/name-ca';\nexport const DIRECTOR_PATH = 'main/search/by-director';\nexport const DIRECTOR_CA_PATH = 'main/search/directors-ca';\nexport const YEAR_PATH = 'main/search/by-year';\nexport const YEAR_CA_PATH = 'main/search/year-ca';\nexport const CUSTOM_PATH = 'main/search/by-custom';\nexport const INTERNATIONAL_FUNDING_PATH = 'main/search/by-international-funding';\n\n//v2 paths\nexport const FOUNDATION_V2_PATH = 'main/foundation-profile-v2';\nexport const FOUNDATION_CA_V2_PATH = 'main/foundation-profile-ca-v2';\nexport const FAVORITES_PATH = '/main/manage-funders';\nexport const CUSTOM_PROFILE_V2_PATH = 'main/custom-profile-v2';\n\n//search engines\nexport const GIVING_HISTORY_V2_PATH = 'main/search/giving-history-v2';\nexport const GIVING_HISTORY_CA_V2_PATH = 'main/search/giving-history-ca-v2';\nexport const KEYWORD_V2_PATH = 'main/search/by-keyword-v2';\nexport const NAME_V2_PATH = 'main/search/by-name-v2';\nexport const NAME_CA_V2_PATH = 'main/search/name-ca-v2';\nexport const DIRECTOR_V2_PATH = 'main/search/by-director-v2';\nexport const DIRECTOR_CA_V2_PATH = 'main/search/directors-ca-v2';\nexport const YEAR_V2_PATH = 'main/search/by-year-v2';\nexport const YEAR_CA_V2_PATH = 'main/search/year-ca-v2';\nexport const CUSTOM_V2_PATH = 'main/search/by-custom-v2';\nexport const INTERNATIONAL_FUNDING_V2_PATH = 'main/search/by-international-funding-v2';\n\n\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { adminApi } from \"Services/AdminService\";\n\nexport const initialState = {\n loadingList: false,\n openEnableDisableDialog: false,\n openExpirationDateDialog: false,\n openPipedriveImportDialog: false,\n userId: \"\",\n pipedriveOrganizationCode: {\n value: \"\",\n error: \"\",\n },\n isMasterUser: false,\n expirationDateDialog: {\n licenseExpirationDate: \"\",\n licenseDescription: \"\",\n expired: false,\n subscriptionPlanName: {\n value: \"\",\n error: \"\",\n },\n subscriptionPlanList: [],\n },\n search: {\n searchTerm: \"\",\n status: \"\",\n },\n pagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: \"createdAt\",\n orderDirection: \"desc\",\n items: [],\n },\n additionalUsersList: [0, 1, 2, 3, 4, 5, 10, 20],\n bestowAccount: {\n openPopup: false,\n userId: \"\",\n userName: \"\",\n organizationName: \"\",\n additionalUsersAmount: 0,\n licenseAmount: 0,\n },\n restoreAccount: {\n openPopup: false,\n userId: \"\",\n userName: \"\",\n },\n reportUsage: {\n openPopup: false,\n userName: \"\",\n },\n licenses: {\n openPopup: false,\n licensesList: [],\n accountInfo: {},\n },\n salesDemoTemplate: {\n openPopup: false,\n userId: \"\",\n userName: \"\",\n },\n accessToken: {\n openPopup: false,\n userId: \"\",\n hashToken: \"\",\n expirationTime: \"\",\n createdAt: \"\",\n adminUserName: \"\",\n hasCreated: false,\n isExpired: false\n }\n};\n\nconst manageAccountSlice = createSlice({\n name: \"manage-account\",\n initialState,\n reducers: {\n handleChange: (state, action) => {\n state.search[action.payload.field] = action.payload.value;\n },\n handleChangeField: (state, action) => {\n state[action.payload.field].error = \"\";\n state[action.payload.field].value = action.payload.value;\n },\n handleOpenExpirationDateDialog: (state, action) => {\n state.userId = action.payload;\n state.openExpirationDateDialog = true;\n },\n handleCloseExpirationDateDialog: (state, action) => {\n state.userId = \"\";\n state.openExpirationDateDialog = false;\n },\n handleChangeSubscriptionPlanDialog: (state, action) => {\n state.expirationDateDialog.subscriptionPlanName.value = action.payload;\n state.expirationDateDialog.subscriptionPlanName.error = \"\";\n state.expirationDateDialog.expired = false;\n state.expirationDateDialog.licenseExpirationDate =\n state.expirationDateDialog.subscriptionPlanList.find(\n (o) => o.subscriptionPlanName === action.payload\n ).expirationDate;\n },\n handleOpenEnableDisableDialog: (state, action) => {\n state.userId = action.payload.id;\n state.isMasterUser = action.payload.isMasterUser;\n state.openEnableDisableDialog = true;\n },\n handleCloseEnableDisableDialog: (state, action) => {\n state.userId = \"\";\n state.isMasterUser = false;\n state.openEnableDisableDialog = false;\n },\n handleOpenPipedriveImportDialog: (state, action) => {\n state.pipedriveOrganizationCode.value = \"\";\n state.pipedriveOrganizationCode.error = \"\";\n state.openPipedriveImportDialog = true;\n },\n handleClosePipedriveImportDialog: (state, action) => {\n state.openPipedriveImportDialog = false;\n },\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => {\n state[field].error = errors[0];\n });\n },\n handleOpenBestowAccount: (state, action) => {\n state.bestowAccount.openPopup = true;\n state.bestowAccount.userId = action.payload.id;\n state.bestowAccount.userName = action.payload.userName;\n state.bestowAccount.organizationName = action.payload.organization;\n state.bestowAccount.licenseAmount = action.payload.licenseAmount;\n state.bestowAccount.additionalUsersAmount =\n action.payload.additionalUsersAmount;\n },\n handleCloseBestowAccount: (state, action) => {\n state.bestowAccount.openPopup = false;\n },\n handleOpenRestoreAccountDialog: (state, action) => {\n state.restoreAccount.userId = action.payload.id;\n state.restoreAccount.userName = action.payload.userName;\n state.restoreAccount.openPopup = true;\n },\n handleCloseRestoreAccountDialog: (state, action) => {\n state.restoreAccount.userId = \"\";\n state.restoreAccount.userName = \"\";\n state.restoreAccount.openPopup = false;\n },\n handleOpenUsageReportDialog: (state, action) => {\n state.reportUsage.openPopup = true;\n state.reportUsage.userName = action.payload.internalUserName;\n },\n handleCloseUsageReportDialog: (state, action) => {\n state.reportUsage.openPopup = false;\n state.reportUsage.userName = \"\";\n },\n handleToggleLicensesDialog: (state, action) => {\n state.licenses.openPopup = !state.licenses.openPopup;\n state.licenses.accountInfo = state.licenses.openPopup\n ? action.payload\n : {};\n state.licenses.licensesList = [];\n },\n handleOpenSalesDemoTemplateDialog: (state, action) => {\n state.salesDemoTemplate.openPopup = true;\n state.salesDemoTemplate.userId = action.payload.id;\n state.salesDemoTemplate.userName = action.payload.userName;\n },\n handleCloseSalesDemoTemplateDialog: (state, action) => {\n state.salesDemoTemplate.openPopup = false;\n state.salesDemoTemplate.userId = \"\";\n state.salesDemoTemplate.userName = \"\";\n },\n handleOpenAccessTokenDialog: (state, action) => {\n state.accessToken.openPopup = true;\n state.accessToken.userId = action.payload.id;\n state.accessToken.hashToken = \"\";\n },\n handleCloseAccessTokenDialog: (state, action) => {\n state.accessToken.openPopup = false;\n },\n handleClearTokenDialog: (state, action) => {\n state.accessToken.userId = \"\";\n state.accessToken.hashToken = \"\";\n state.accessToken.expirationTime = \"\";\n state.accessToken.createdAt = \"\";\n state.accessToken.adminUserName = \"\";\n state.accessToken.hasCreated = false;\n state.accessToken.isExpired = false;\n },\n handleCreateAccessTokenSuccess: (state, action) => {\n state.accessToken.hashToken = action.payload;\n state.accessToken.hasCreated = false;\n },\n handleGetAccessTokenSuccess: (state, action) => {\n state.accessToken.hashToken = \"\";\n state.accessToken.expirationTime = action.payload.expirationTime;\n state.accessToken.createdAt = action.payload.createdAt;\n state.accessToken.adminUserName = action.payload.adminUserName;\n state.accessToken.hasCreated = action.payload.hasCreated;\n state.accessToken.isExpired = action.payload.isExpired;\n }\n\n },\n extraReducers: (builder) => {\n builder\n .addMatcher(\n adminApi.endpoints.getAllUsersPagedList.matchFulfilled,\n (state, action) => {\n state.loadingList = false;\n state.pagedList.pageNumber = action.payload.pageNumber;\n state.pagedList.pageSize = action.payload.pageSize;\n state.pagedList.pageCount = action.payload.pageCount;\n state.pagedList.totalCount = action.payload.totalCount;\n state.pagedList.orderField = action.payload.orderField;\n state.pagedList.orderDirection = action.payload.orderDirection;\n state.pagedList.items = action.payload.items;\n }\n )\n .addMatcher(\n adminApi.endpoints.getAllUsersPagedList.matchPending,\n (state, action) => {\n state.loadingList = true;\n }\n )\n .addMatcher(\n adminApi.endpoints.getAllUsersPagedList.matchRejected,\n (state, action) => {\n state.loadingList = false;\n }\n )\n .addMatcher(\n adminApi.endpoints.getExpirationDateDetails.matchFulfilled,\n (state, action) => {\n state.expirationDateDialog.licenseExpirationDate =\n action.payload.licenseExpirationDate;\n state.expirationDateDialog.licenseDescription =\n action.payload.licenseDescription;\n state.expirationDateDialog.expired = action.payload.expired;\n state.expirationDateDialog.subscriptionPlanName.value =\n action.payload.subscriptionPlanName;\n state.expirationDateDialog.subscriptionPlanName.error = \"\";\n state.expirationDateDialog.subscriptionPlanList =\n action.payload.subscriptionPlanList;\n }\n )\n .addMatcher(\n adminApi.endpoints.getOrganizationLicenses.matchFulfilled,\n (state, action) => {\n let hyphens = action.payload.data.filter(\n (item) => item.userName === \"-\"\n );\n let others = action.payload.data.filter(\n (item) => item.userName !== \"-\"\n );\n state.licenses.loadingLicensesList = false;\n state.licenses.licensesList = others.concat(hyphens);\n }\n )\n .addMatcher(\n adminApi.endpoints.getOrganizationLicenses.matchPending,\n (state, action) => {\n state.licenses.loadingLicensesList = true;\n }\n )\n .addMatcher(\n adminApi.endpoints.getOrganizationLicenses.matchRejected,\n (state, action) => {\n state.licenses.loadingLicensesList = false;\n }\n )\n .addMatcher(\n adminApi.endpoints.deleteOrganizationLicense.matchFulfilled,\n (state, action) => {}\n )\n .addMatcher(\n adminApi.endpoints.deleteOrganizationLicense.matchPending,\n (state, action) => {\n state.licenses.loadingLicensesList = true;\n }\n )\n .addMatcher(\n adminApi.endpoints.deleteOrganizationLicense.matchRejected,\n (state, action) => {\n state.licenses.loadingLicensesList = true;\n }\n );\n },\n});\n\nexport const {\n handleChange,\n handleChangeField,\n handleCloseExpirationDateDialog,\n handleOpenExpirationDateDialog,\n handleChangeSubscriptionPlanDialog,\n handleOpenEnableDisableDialog,\n handleCloseEnableDisableDialog,\n handleOpenPipedriveImportDialog,\n handleClosePipedriveImportDialog,\n handleModelErrors,\n handleOpenBestowAccount,\n handleCloseBestowAccount,\n handleOpenRestoreAccountDialog,\n handleCloseRestoreAccountDialog,\n handleOpenUsageReportDialog,\n handleCloseUsageReportDialog,\n handleToggleLicensesDialog,\n handleOpenSalesDemoTemplateDialog,\n handleCloseSalesDemoTemplateDialog,\n handleOpenAccessTokenDialog,\n handleCloseAccessTokenDialog,\n handleCreateAccessTokenSuccess,\n handleGetAccessTokenSuccess,\n handleClearTokenDialog\n} = manageAccountSlice.actions;\n\nexport default manageAccountSlice.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { foundationProfileApi } from \"Services/FoundationProfileService\";\nimport { notesApi } from \"Services/NoteService\";\nimport { countryApi } from \"Services/CountryService\";\nimport { sectorApi } from \"Services/SectorService\";\nimport { formatPhoneNumber } from \"utils/formatPhoneNumber\";\nimport { searchEngineApi } from \"Services/SearchEngineService\";\nimport config from \"config\";\n\nexport const initialState = {\n openPopupNote: false,\n noteData: {\n id: null,\n title: '',\n description: '',\n notificationDate: null,\n emailNotification: false,\n emails:[]\n },\n loadingGifts: false,\n applyFilter: '',\n init: false,\n profileName: '',\n lastReportYear: null,\n registerYear: null,\n stateOrProvince: '',\n organizationRegion: '',\n city: '',\n onlineApplication: '',\n website: '',\n nationalGivingHistory: '',\n phoneNumber: '',\n fullAddress: '',\n nteeTitle: '',\n nteeDescription: '',\n recipientName: '',\n countryList: [],\n provinceOrStateList: [],\n provinceOrStateListTemp: [],\n cityList: [],\n sectorList: [],\n countyList: [],\n stemmingSearch: true,\n contactEmail: '',\n applicationData: {\n foundationId: null\n },\n programData: {\n foundationId: null\n },\n yearList: [\n ...Array(config.searchEngineYearFilter.US - 2014 + 1)\n .fill()\n .map((_, idx) => ({\n index: idx,\n key: (2014 + idx).toString(),\n value: (2014 + idx).toString(),\n label: (2014 + idx).toString(),\n checked: false\n }))\n ],\n summary: {\n avgGrantSize: null,\n totalAsserts: null,\n avgGrantsAnnually: null,\n grantsState: null,\n avgAmount: null,\n largestAmount: null,\n nationalGivingHistory: null,\n medianAmount: null,\n range: null,\n customAnalysisList: [],\n foundationFinancialList: [],\n yearAnalysisList: []\n },\n giftList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'donationdate',\n orderDirection: 'desc',\n items: [],\n highlightFilter: [],\n },\n grantOverviewList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'category',\n orderDirection: 'desc',\n items: [\n { category: 'Animal Welfare', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Art & Culture', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Community', grants: '50', largest: '$200,00', average: '$2,000', score: '3', grantamount: '$300,00' },\n { category: 'Education', grants: '333', largest: '$1,317,386,921', average: '$3,958,476', score: '5', grantamount: '$1,318,172,382' },\n { category: 'Environment', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Health', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Religion', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Social & Human Services', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Sports & Recreation', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'TOTAL', grants: '383', largest: '-', average: '-', score: '-', grantamount: '$1,318,472,382' }, \n ]\n },\n directorList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'directorname',\n orderDirection: 'desc',\n items: []\n },\n noteList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'createdAt',\n orderDirection: 'desc',\n items: []\n },\n charts: {\n provinceList: [],\n rangeAmount: [],\n rangeSector: {}\n },\n toggleExpandFilters: {\n provinceOrState: false,\n city: false,\n year: false,\n stemmingSearch: false,\n county: false\n },\n taxReturnPdf: []\n \n};\n\nconst foundationProfileSlice = createSlice({\n name: \"foundation-profile\",\n initialState,\n reducers: {\n init: (state, action) => {\n state.init = true;\n },\n handleChangeCountry: (state, action) => {\n state.countryList.forEach(country => {\n if (country.code === action.payload.code) {\n country.checked = action.payload.checked;\n }\n });\n },\n handleChangeProvinceOrState: (state, action) => { \n action.payload.forEach(item => {\n const togglelistItem = state.provinceOrStateList.find(o => o.code === item.value);\n \n if (togglelistItem) {\n togglelistItem.checked = item.checked;\n }\n \n });\n },\n handleChangeCity: (state, action) => {\n\n action.payload.forEach(item => {\n const togglelistItem = state.cityList.find(o => o.name === item.value);\n \n if (togglelistItem) {\n togglelistItem.checked = item.checked;\n }\n \n });\n },\n handleChangeCounty: (state, action) => {\n\n action.payload.forEach(item => {\n const togglelistItem = state.countyList.find(o => o.value === item.value);\n \n if (togglelistItem) {\n togglelistItem.checked = item.checked;\n }\n \n });\n },\n handleChangeYears: (state, action) => {\n state.yearList.forEach(year => {\n if (year.value === action.payload.value) {\n year.checked = action.payload.checked;\n }\n });\n },\n handleChangeSector: (state, action) => {\n state.sectorList.forEach(sector => {\n if (sector.value === action.payload.value) {\n sector.checked = action.payload.checked;\n }\n });\n },\n handleChangeRecipientName: (state, action) => {\n state.recipientName = action.payload;\n },\n handleAddNewNote: (state, action) => {\n state.openPopupNote = true;\n state.noteData = {...initialState.noteData};\n },\n handleEditNote: (state, action) => {\n state.openPopupNote = true;\n state.noteData.id = action.payload.id;\n state.noteData.title = action.payload.title;\n state.noteData.description = action.payload.description;\n state.noteData.notificationDate = action.payload.notificationDate;\n state.noteData.emailNotification = action.payload.emailNotification;\n state.noteData.emails = action.payload.emails;\n },\n handleClosePopupNote: (state, action) => {\n state.openPopupNote = false;\n state.noteData = {...initialState.noteData};\n },\n handleChangeStemmingSearch: (state, action) => {\n state.stemmingSearch = action.payload;\n },\n handleClear: (state, action) => {\n state.openPopupNote = false;\n state.noteData = { ...initialState.noteData };\n state.profileName = '';\n state.lastReportYear = null;\n state.lastReportYear = null;\n state.registerYear = null;\n state.stateOrProvince = '';\n state.organizationRegion = '';\n state.city = '';\n state.onlineApplication = '';\n state.website = '';\n state.nationalGivingHistory = '';\n state.phoneNumber = '';\n state.fullAddress = '';\n state.recipientName = '';\n state.stemmingSearch = true;\n state.yearList = [\n ...Array(config.searchEngineYearFilter.US - 2014 + 1)\n .fill()\n .map((_, idx) => ({\n index: idx,\n key: (2014 + idx).toString(),\n value: (2014 + idx).toString(),\n label: (2014 + idx).toString(),\n checked: false\n }))\n ];\n state.summary = { ...initialState.summary };\n state.charts = { ...initialState.charts };\n state.giftList = { ...initialState.giftList };\n state.countryList = [];\n state.provinceOrStateList = [];\n state.cityList = [];\n state.countyList = [];\n state.sectorList = [];\n state.stemmingSearch = true;\n },\n handleApplyFilter: (state, action) => {\n state.applyFilter = action.payload;\n },\n handleClearCityList: (state, action) => {\n state.cityList = [];\n },\n handleClearGifts: (state, action) => {\n\n state.provinceOrStateList = state.provinceOrStateList.map(item => ({\n ...item,\n checked: false\n }));\n\n state.cityList = state.cityList.map(item => ({\n ...item,\n checked: false\n }));\n\n state.countyList = state.countyList.map(item => ({\n ...item,\n checked: false\n }));\n\n state.sectorList = state.sectorList.map(item => ({\n ...item,\n checked: false\n }));\n\n state.yearList = state.yearList.map(item => ({\n ...item,\n checked: false\n }));\n\n state.applyFilter = action.payload;\n state.stemmingSearch = true;\n state.toggleExpandFilters = { ...initialState.toggleExpandFilters };\n \n state.giftList.pageNumber = 0;\n state.giftList.pageSize = 10;\n state.giftList.orderField = 'donationdate';\n state.giftList.orderDirection = 'desc';\n },\n handleToggleExpandFilters: (state, action) => {\n state.toggleExpandFilters = {\n ...state.toggleExpandFilters,\n [action.payload.id]: action.payload.value \n }\n },\n handleClearCountyAndCity: (state, action) => {\n state.countryList = [];\n state.cityList = [];\n },\n handleUpdateNoteItem: (state, action) => {\n var noteItem = state.noteList.items?.find(o => o.id === action.payload.id);\n if(noteItem) {\n noteItem[action.payload.key] = action.payload.value;\n }\n },\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n foundationProfileApi.endpoints.getGiftsPagedList.matchFulfilled, (state, action) => {\n state.loadingGifts = false;\n state.giftList.pageNumber = action.payload.pageNumber;\n state.giftList.pageSize = action.payload.pageSize;\n state.giftList.pageCount = action.payload.pageCount;\n state.giftList.totalCount = action.payload.totalCount;\n state.giftList.orderField = action.payload.orderField;\n state.giftList.orderDirection = action.payload.orderDirection;\n state.giftList.items = action.payload.items;\n state.giftList.highlightFilter = action.payload.aggrFilters.highlightFilter?.map(o => o.key) ?? [];\n\n if (state.provinceOrStateListTemp.length === state.provinceOrStateList.length) {\n\n const newStateList = [];\n\n state.provinceOrStateListTemp.forEach(element => {\n \n const existsOnAggr = action.payload.aggrFilters?.statesFilter?.find(o => o.key.toUpperCase() === element.code.toUpperCase());\n \n if (existsOnAggr) {\n const isChecked = state.provinceOrStateList.find(o => o.code === element.code)?.checked ?? false;\n \n newStateList.push({\n ...element,\n checked: isChecked\n });\n }\n \n });\n \n state.provinceOrStateList = newStateList;\n } \n }\n )\n .addMatcher(\n foundationProfileApi.endpoints.getGiftsPagedList.matchPending, (state, action) => {\n state.loadingGifts = true;\n }\n )\n .addMatcher(\n foundationProfileApi.endpoints.getGiftsPagedList.matchRejected, (state, action) => {\n state.loadingGifts = false;\n }\n )\n .addMatcher(\n foundationProfileApi.endpoints.getGrantOverview.matchFulfilled, (state, action) => {\n state.grantOverviewList.pageNumber = action.payload.pageNumber;\n state.grantOverviewList.pageSize = action.payload.pageSize;\n state.grantOverviewList.pageCount = action.payload.pageCount;\n state.grantOverviewList.totalCount = action.payload.totalCount;\n state.grantOverviewList.items = action.payload.items;\n }\n )\n .addMatcher(\n foundationProfileApi.endpoints.getDirectorList.matchFulfilled, (state, action) => {\n state.directorList.pageNumber = action.payload.pageNumber;\n state.directorList.pageSize = action.payload.pageSize;\n state.directorList.pageCount = action.payload.pageCount;\n state.directorList.totalCount = action.payload.totalCount;\n state.directorList.orderField = action.payload.orderField;\n state.directorList.orderDirection = action.payload.orderDirection;\n state.directorList.items = action.payload.items;\n }\n )\n .addMatcher(\n notesApi.endpoints.getNoteList.matchFulfilled, (state, action) => {\n state.noteList.pageNumber = action.payload.pageNumber;\n state.noteList.pageSize = action.payload.pageSize;\n state.noteList.orderField = action.payload.orderField;\n state.noteList.orderDirection = action.payload.orderDirection;\n state.noteList.pageCount = action.payload.pageCount;\n state.noteList.totalCount = action.payload.totalCount;\n state.noteList.items = action.payload.items;\n }\n )\n .addMatcher(\n foundationProfileApi.endpoints.getProfileHeader.matchFulfilled, (state, action) => {\n state.profileName = action.payload.profileName;\n state.lastReportYear = action.payload.lastReportYear;\n state.registerYear = action.payload.registerYear;\n state.stateOrProvince = action.payload.stateOrProvince;\n state.organizationRegion = action.payload.organizationRegion;\n state.city = action.payload.city;\n state.onlineApplication = action.payload.onlineApplication;\n state.website = action.payload.website;\n state.nationalGivingHistory = action.payload.nationalGivingHistory;\n state.phoneNumber = formatPhoneNumber(action.payload.phoneNumber);\n state.nationalGivingHistory = action.payload.nationalGivingHistory;\n state.fullAddress = action.payload.fullAddress;\n state.nteeTitle = action.payload.nteeTitle;\n state.nteeDescription = action.payload.nteeDescription;\n state.contactEmail = action.payload.contactEmail;\n\n state.summary.avgGrantSize = action.payload.summary.avgGrantSize;\n state.summary.totalAsserts = action.payload.summary.totalAsserts;\n state.summary.avgGrantsAnnually = action.payload.summary.avgGrantsAnnually;\n state.summary.grantsState = action.payload.summary.grantsState;\n\n state.summary.avgAmount = action.payload.summary.avgAmount;\n state.summary.largestAmount = action.payload.summary.largestAmount;\n state.summary.medianAmount = action.payload.summary.medianAmount;\n state.summary.range = action.payload.summary.range;\n\n state.summary.yearAnalysisList = action.payload.summary.yearAnalysisList;\n }\n )\n .addMatcher(\n countryApi.endpoints.getCountryByCodeWithTrigger.matchFulfilled, (state, action) => {\n\n state.countryList = [{\n ...action.payload,\n checked: true\n }];\n\n state.provinceOrStateList = [];\n state.provinceOrStateListTemp = [];\n\n action.payload.provinceOrStateList.forEach(provinceOrState => {\n state.provinceOrStateList.push({\n ...provinceOrState,\n checked: false\n });\n\n state.provinceOrStateListTemp.push({\n ...provinceOrState,\n checked: false\n });\n });\n }\n )\n .addMatcher(\n countryApi.endpoints.getCityListByProvinceOrStates.matchFulfilled, (state, action) => {\n state.cityList = action.payload.map(item => ({\n ...item,\n checked: state.cityList.find(o => o.name === item.name)?.checked ?? false\n }));\n }\n )\n .addMatcher(\n sectorApi.endpoints.getSectorList.matchFulfilled, (state, action) => {\n state.sectorList = action.payload.map(item => ({\n ...item,\n value: item.sectorName,\n checked: false,\n }));\n }\n )\n .addMatcher(\n foundationProfileApi.endpoints.getChartProvinceList.matchFulfilled, (state, action) => {\n state.charts.provinceList = action.payload;\n }\n )\n .addMatcher(\n foundationProfileApi.endpoints.getChartRangeAmountList.matchFulfilled, (state, action) => {\n state.charts.rangeAmount = action.payload;\n }\n )\n .addMatcher(\n foundationProfileApi.endpoints.getChartRangeSector.matchFulfilled, (state, action) => {\n state.charts.rangeSector = action.payload;\n }\n )\n .addMatcher(\n searchEngineApi.endpoints.getCounties.matchFulfilled, (state, action) => {\n state.countyList = action.payload.map(county => ({\n key: county.key,\n value: county.key,\n label: county.label,\n provinceOrState: county.provinceOrStateCode,\n checked: state.countyList.find(o => o.key === county.key)?.checked ?? false\n }));\n }\n )\n }\n});\n\nexport const { \n init,\n handleChangeCountry,\n handleChangeProvinceOrState,\n handleChangeCity,\n handleChangeSector,\n handleChangeRecipientName,\n handleAddNewNote,\n handleEditNote,\n handleClosePopupNote,\n handleChangeStemmingSearch,\n handleChangeYears,\n handleClear,\n handleApplyFilter,\n handleClearCityList,\n handleClearGifts,\n handleToggleExpandFilters,\n handleChangeCounty,\n handleClearCountyAndCity,\n handleUpdateNoteItem,\n} = foundationProfileSlice.actions;\n\nexport default foundationProfileSlice.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { foundationProfileApi } from \"Services/FoundationProfileService\";\nimport { notesApi } from \"Services/NoteService\";\nimport { countryApi } from \"Services/CountryService\";\nimport { sectorApi } from \"Services/SectorService\";\nimport { formatPhoneNumber } from \"utils/formatPhoneNumber\";\nimport { searchEngineApi } from \"Services/SearchEngineService\";\nimport config from \"config\";\n\nexport const initialState = {\n openPopupNote: false,\n noteData: {\n id: null,\n title: '',\n description: '',\n notificationDate: null,\n emailNotification: false,\n emails:[]\n },\n loadingGifts: false,\n applyFilter: '',\n init: false,\n profileName: '',\n lastReportYear: null,\n registerYear: null,\n fiscalPeriodEnd: '',\n stateOrProvince: '',\n organizationRegion: '',\n city: '',\n onlineApplication: '',\n website: '',\n nationalGivingHistory: '',\n phoneNumber: '',\n fullAddress: '',\n nteeTitle: '',\n nteeDescription: '',\n recipientName: '',\n countryList: [],\n selectedFilters: {\n country: [],\n provinceOrState: [],\n county: [],\n city: [],\n years: [],\n },\n provinceOrStateList: [],\n provinceOrStateListTemp: [],\n cityList: [],\n sectorList: [],\n countyList: [],\n stemmingSearch: true,\n contactEmail: '',\n applicationData: {\n foundationId: null\n },\n programData: {\n foundationId: null\n },\n yearList: [\n ...Array(config.searchEngineYearFilter.US - 2014 + 1)\n .fill()\n .map((_, idx) => ({\n index: idx,\n id: (2014 + idx).toString(),\n value: (2014 + idx).toString(),\n label: (2014 + idx).toString(),\n }))\n ],\n summary: {\n avgGrantSize: null,\n totalAsserts: null,\n avgGrantsAnnually: null,\n grantsState: null,\n avgAmount: null,\n largestAmount: null,\n nationalGivingHistory: null,\n medianAmount: null,\n range: null,\n customAnalysisList: [],\n foundationFinancialList: [],\n yearAnalysisList: []\n },\n giftList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'donationdate',\n orderDirection: 'desc',\n items: [],\n statesFilter: [], \n highlightFilter: [],\n },\n grantOverviewList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'category',\n orderDirection: 'desc',\n items: [\n { category: 'Animal Welfare', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Art & Culture', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Community', grants: '50', largest: '$200,00', average: '$2,000', score: '3', grantamount: '$300,00' },\n { category: 'Education', grants: '333', largest: '$1,317,386,921', average: '$3,958,476', score: '5', grantamount: '$1,318,172,382' },\n { category: 'Environment', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Health', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Religion', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Social & Human Services', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Sports & Recreation', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'TOTAL', grants: '383', largest: '-', average: '-', score: '-', grantamount: '$1,318,472,382' }, \n ]\n },\n directorList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'directorname',\n orderDirection: 'desc',\n items: []\n },\n noteList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'createdAt',\n orderDirection: 'desc',\n items: []\n },\n charts: {\n provinceList: [],\n rangeAmount: [],\n rangeSector: {}\n },\n toggleExpandFilters: {\n provinceOrState: false,\n city: false,\n year: false,\n stemmingSearch: false,\n county: false\n },\n taxReturnPdf: []\n \n};\n\nconst foundationProfileSliceV2 = createSlice({\n name: \"foundation-profile-v2\",\n initialState,\n reducers: {\n init: (state, action) => {\n state.init = true;\n },\n handleChangeFilter: (state, action) => {\n const { key, value } = action.payload;\n state.selectedFilters[key] = value;\n },\n handleChangeRecipientName: (state, action) => {\n state.recipientName = action.payload;\n },\n handleAddNewNote: (state, action) => {\n state.openPopupNote = true;\n state.noteData = {...initialState.noteData};\n },\n handleEditNote: (state, action) => {\n state.openPopupNote = true;\n state.noteData.id = action.payload.id;\n state.noteData.title = action.payload.title;\n state.noteData.description = action.payload.description;\n state.noteData.notificationDate = action.payload.notificationDate;\n state.noteData.emailNotification = action.payload.emailNotification;\n state.noteData.emails = action.payload.emails;\n },\n handleClosePopupNote: (state, action) => {\n state.openPopupNote = false;\n state.noteData = {...initialState.noteData};\n },\n handleChangeStemmingSearch: (state, action) => {\n state.stemmingSearch = action.payload;\n },\n handleClear: (state, action) => {\n state.openPopupNote = false;\n state.noteData = { ...initialState.noteData };\n state.profileName = '';\n state.lastReportYear = null;\n state.lastReportYear = null;\n state.registerYear = null;\n state.fiscalPeriodEnd = '';\n state.stateOrProvince = '';\n state.organizationRegion = '';\n state.city = '';\n state.onlineApplication = '';\n state.website = '';\n state.nationalGivingHistory = '';\n state.phoneNumber = '';\n state.fullAddress = '';\n state.recipientName = '';\n state.stemmingSearch = true;\n state.yearList = [\n ...Array(config.searchEngineYearFilter.US - 2014 + 1)\n .fill()\n .map((_, idx) => ({\n index: idx,\n key: (2014 + idx).toString(),\n value: (2014 + idx).toString(),\n label: (2014 + idx).toString(),\n checked: false\n }))\n ];\n state.summary = { ...initialState.summary };\n state.charts = { ...initialState.charts };\n state.giftList = { ...initialState.giftList };\n state.countryList = [];\n state.provinceOrStateList = [];\n state.cityList = [];\n state.countyList = [];\n state.sectorList = [];\n state.stemmingSearch = true;\n },\n handleApplyFilter: (state, action) => {\n state.applyFilter = action.payload;\n },\n handleClearCityList: (state, action) => {\n state.cityList = [];\n },\n handleClearGifts: (state, action) => {\n\n state.selectedFilters.provinceOrState = [];\n state.selectedFilters.county = [];\n state.selectedFilters.city = [];\n state.selectedFilters.years = [];\n\n state.applyFilter = action.payload;\n state.stemmingSearch = true;\n state.toggleExpandFilters = { ...initialState.toggleExpandFilters };\n \n state.giftList.pageNumber = 0;\n state.giftList.pageSize = 10;\n state.giftList.orderField = 'donationdate';\n state.giftList.orderDirection = 'desc';\n },\n handleToggleExpandFilters: (state, action) => {\n state.toggleExpandFilters = {\n ...state.toggleExpandFilters,\n [action.payload.id]: action.payload.value \n }\n },\n handleClearCountyAndCity: (state, action) => {\n state.countryList = [];\n state.cityList = [];\n },\n handleUpdateNoteItem: (state, action) => {\n var noteItem = state.noteList.items?.find(o => o.id === action.payload.id);\n if(noteItem) {\n noteItem[action.payload.key] = action.payload.value;\n }\n },\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n foundationProfileApi.endpoints.getGiftsPagedListV2.matchFulfilled, (state, action) => {\n state.loadingGifts = false;\n state.giftList.pageNumber = action.payload.pageNumber;\n state.giftList.pageSize = action.payload.pageSize;\n state.giftList.pageCount = action.payload.pageCount;\n state.giftList.totalCount = action.payload.totalCount;\n state.giftList.orderField = action.payload.orderField;\n state.giftList.orderDirection = action.payload.orderDirection;\n state.giftList.items = action.payload.items;\n state.giftList.statesFilter = action.payload.aggrFilters.statesFilter;\n state.giftList.highlightFilter = action.payload.aggrFilters.highlightFilter?.map(o => o.key) ?? [];\n\n // if (state.provinceOrStateListTemp.length === state.provinceOrStateList.length) {\n\n // const newStateList = [];\n\n // state.provinceOrStateListTemp.forEach(element => {\n \n // const existsOnAggr = action.payload.aggrFilters?.statesFilter?.find(o => o.key.toUpperCase() === element.code.toUpperCase());\n \n // if (existsOnAggr) {\n // const isChecked = state.provinceOrStateList.find(o => o.code === element.code)?.checked ?? false;\n \n // newStateList.push({\n // ...element,\n // checked: isChecked\n // });\n // }\n \n // });\n \n // state.provinceOrStateList = newStateList;\n // } \n }\n )\n .addMatcher(\n foundationProfileApi.endpoints.getGiftsPagedList.matchPending, (state, action) => {\n state.loadingGifts = true;\n }\n )\n .addMatcher(\n foundationProfileApi.endpoints.getGiftsPagedList.matchRejected, (state, action) => {\n state.loadingGifts = false;\n }\n )\n .addMatcher(\n foundationProfileApi.endpoints.getGrantOverview.matchFulfilled, (state, action) => {\n state.grantOverviewList.pageNumber = action.payload.pageNumber;\n state.grantOverviewList.pageSize = action.payload.pageSize;\n state.grantOverviewList.pageCount = action.payload.pageCount;\n state.grantOverviewList.totalCount = action.payload.totalCount;\n state.grantOverviewList.items = action.payload.items;\n }\n )\n .addMatcher(\n foundationProfileApi.endpoints.getDirectorList.matchFulfilled, (state, action) => {\n state.directorList.pageNumber = action.payload.pageNumber;\n state.directorList.pageSize = action.payload.pageSize;\n state.directorList.pageCount = action.payload.pageCount;\n state.directorList.totalCount = action.payload.totalCount;\n state.directorList.orderField = action.payload.orderField;\n state.directorList.orderDirection = action.payload.orderDirection;\n state.directorList.items = action.payload.items;\n }\n )\n .addMatcher(\n notesApi.endpoints.getNoteList.matchFulfilled, (state, action) => {\n state.noteList.pageNumber = action.payload.pageNumber;\n state.noteList.pageSize = action.payload.pageSize;\n state.noteList.orderField = action.payload.orderField;\n state.noteList.orderDirection = action.payload.orderDirection;\n state.noteList.pageCount = action.payload.pageCount;\n state.noteList.totalCount = action.payload.totalCount;\n state.noteList.items = action.payload.items;\n }\n )\n .addMatcher(\n foundationProfileApi.endpoints.getProfileHeader.matchFulfilled, (state, action) => {\n state.profileName = action.payload.profileName;\n state.lastReportYear = action.payload.lastReportYear;\n state.registerYear = action.payload.registerYear;\n state.fiscalPeriodEnd = action.payload.fiscalPeriodEnd;\n state.stateOrProvince = action.payload.stateOrProvince;\n state.organizationRegion = action.payload.organizationRegion;\n state.city = action.payload.city;\n state.onlineApplication = action.payload.onlineApplication;\n state.website = action.payload.website;\n state.nationalGivingHistory = action.payload.nationalGivingHistory;\n state.phoneNumber = formatPhoneNumber(action.payload.phoneNumber);\n state.nationalGivingHistory = action.payload.nationalGivingHistory;\n state.fullAddress = action.payload.fullAddress;\n state.nteeTitle = action.payload.nteeTitle;\n state.nteeDescription = action.payload.nteeDescription;\n state.contactEmail = action.payload.contactEmail;\n\n state.summary.avgGrantSize = action.payload.summary.avgGrantSize;\n state.summary.totalAsserts = action.payload.summary.totalAsserts;\n state.summary.avgGrantsAnnually = action.payload.summary.avgGrantsAnnually;\n state.summary.grantsState = action.payload.summary.grantsState;\n\n state.summary.avgAmount = action.payload.summary.avgAmount;\n state.summary.largestAmount = action.payload.summary.largestAmount;\n state.summary.medianAmount = action.payload.summary.medianAmount;\n state.summary.range = action.payload.summary.range;\n\n state.summary.yearAnalysisList = action.payload.summary.yearAnalysisList;\n }\n )\n .addMatcher(\n countryApi.endpoints.getCountryByCodeWithTrigger.matchFulfilled, (state, action) => {\n const countries = [action.payload]; //action.payload value is 1 object (US)\n state.countryList = countries.map(country => ({\n id: country.id,\n value: country.code,\n label: country.description,\n }))\n\n state.selectedFilters.country = state.countryList.length > 0 ? [state.countryList[0]] : [];\n\n state.provinceOrStateList = action.payload.provinceOrStateList.map(provinceOrState => ({\n id: provinceOrState.id,\n value: provinceOrState.code,\n label: provinceOrState.description,\n }));\n }\n )\n .addMatcher(\n searchEngineApi.endpoints.getCounties.matchFulfilled, (state, action) => {\n state.countyList = action.payload.map(county => ({\n id: county.key,\n value: county.key,\n label: county.label,\n secondaryAction: county.provinceOrStateCode,\n }));\n\n state.selectedFilters.county = state.countyList.length > 0 \n ? state.selectedFilters.county.filter(county => state.countyList.some(county2 => county2.value === county.value) ) \n : [];\n }\n )\n .addMatcher(\n countryApi.endpoints.getCityListByProvinceOrStates.matchFulfilled, (state, action) => {\n state.cityList = action.payload.map(city => ({\n id: city.id,\n value: city.name,\n label: city.name,\n secondaryAction: city.provinceOrStateCode,\n }));\n\n state.selectedFilters.city = state.cityList.length > 0 \n ? state.selectedFilters.city.filter(city => state.cityList.some(city2 => city2.value === city.value) ) \n : [];\n }\n )\n .addMatcher(\n sectorApi.endpoints.getSectorList.matchFulfilled, (state, action) => {\n state.sectorList = action.payload.map(item => ({\n ...item,\n value: item.sectorName,\n checked: false,\n }));\n }\n )\n .addMatcher(\n foundationProfileApi.endpoints.getChartProvinceList.matchFulfilled, (state, action) => {\n state.charts.provinceList = action.payload;\n }\n )\n .addMatcher(\n foundationProfileApi.endpoints.getChartRangeAmountList.matchFulfilled, (state, action) => {\n state.charts.rangeAmount = action.payload;\n }\n )\n .addMatcher(\n foundationProfileApi.endpoints.getChartRangeSector.matchFulfilled, (state, action) => {\n state.charts.rangeSector = action.payload;\n }\n )\n }\n});\n\nexport const { \n init,\n handleChangeFilter,\n handleChangeRecipientName,\n handleAddNewNote,\n handleEditNote,\n handleClosePopupNote,\n handleChangeStemmingSearch,\n handleChangeYears,\n handleClear,\n handleApplyFilter,\n handleClearCityList,\n handleClearGifts,\n handleToggleExpandFilters,\n handleChangeCounty,\n handleClearCountyAndCity,\n handleUpdateNoteItem,\n} = foundationProfileSliceV2.actions;\n\nexport default foundationProfileSliceV2.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { userProjectApi } from 'Services/UserProjectService'\nimport { sharedProjectApi } from 'Services/SharedProjectService'\n\nexport const initialState = {\n openFormDialog: false,\n openDeleteDialog: false,\n tabIndex: 0,\n pagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n showArchived: false,\n orderField: 'projectStatus',\n orderDirection: 'asc',\n items: [],\n activeUserProjectId: ''\n },\n pagedSharedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n showArchived: false,\n orderField: 'projectStatus',\n orderDirection: 'asc',\n items: [],\n activeUserProjectId: ''\n },\n projectStatusList: [ 'Active', 'Completed', 'InProgress' ],\n id: null,\n searchTerm: {\n value: '',\n error: ''\n },\n name: {\n value: '',\n error: ''\n },\n startDate: {\n value: null,\n error: ''\n },\n endDate: {\n value: null,\n error: ''\n },\n projectCost: {\n value: '',\n error: ''\n },\n projectDescription: {\n value: '',\n error: ''\n },\n projectStatus: {\n value: '',\n error: ''\n }\n};\n\nconst userProjectSlice = createSlice({\n name: \"user-project\",\n initialState,\n reducers: {\n handleCloseDialog: (state, action) => {\n state.openFormDialog = false;\n state.openDeleteDialog = false;\n },\n handleOpenDeleteDialog: (state, action) => {\n state.id = action.payload.id;\n state.openFormDialog = false;\n state.openDeleteDialog = true;\n },\n handleCreateNewProject: (state, action) => {\n state.openFormDialog = true;\n state.id = null;\n\n state.name.value = '';\n state.name.error = '';\n\n state.startDate.value = null;\n state.startDate.error = '';\n\n state.endDate.value = null;\n state.endDate.error = '';\n\n state.projectCost.value = '';\n state.projectCost.error = '';\n\n state.projectDescription.value = '';\n state.projectDescription.error = '';\n\n state.projectStatus.value = '';\n state.projectStatus.error = '';\n },\n handleEditUserProject: (state, action) => {\n state.openFormDialog = true;\n state.id = action.payload.id;\n\n state.name.value = action.payload.name;\n state.name.error = '';\n\n state.startDate.value = action.payload.startDate;\n state.startDate.error = '';\n\n state.endDate.value = action.payload.endDate;\n state.endDate.error = '';\n\n state.projectCost.value = action.payload.projectCost;\n state.projectCost.error = '';\n\n state.projectDescription.value = action.payload.projectDescription;\n state.projectDescription.error = '';\n\n state.projectStatus.value = '';\n state.projectStatus.error = '';\n },\n handleChange: (state, action) => {\n state[action.payload.field].error = '';\n state[action.payload.field].value = action.payload.value; \n },\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state[field].error = errors[0];\n });\n },\n setTabIndex: (state, action) => {\n state.tabIndex = action.payload;\n },\n setSharedActiveProject: (state, action) => {\n state.pagedSharedList.activeUserProjectId = action.payload;\n }\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n userProjectApi.endpoints.getAll.matchFulfilled, (state, action) => {\n state.pagedList.pageNumber = action.payload.pageNumber;\n state.pagedList.pageSize = action.payload.pageSize;\n state.pagedList.pageCount = action.payload.pageCount;\n state.pagedList.totalCount = action.payload.totalCount;\n state.pagedList.orderField = action.payload.orderField;\n state.pagedList.orderDirection = action.payload.orderDirection;\n state.pagedList.items = action.payload.items;\n state.pagedList.activeUserProjectId = action.payload.data.activeUserProjectId;\n }\n ).addMatcher(\n sharedProjectApi.endpoints.getAllShared.matchFulfilled, (state, action) => {\n state.pagedSharedList.pageNumber = action.payload.pageNumber;\n state.pagedSharedList.pageSize = action.payload.pageSize;\n state.pagedSharedList.pageCount = action.payload.pageCount;\n state.pagedSharedList.totalCount = action.payload.totalCount;\n state.pagedSharedList.orderField = action.payload.orderField;\n state.pagedSharedList.orderDirection = action.payload.orderDirection;\n state.pagedSharedList.items = action.payload.items;\n }\n )\n }\n});\n\nexport const {\n handleCloseDialog, \n handleChange,\n handleModelErrors,\n handleCreateNewProject,\n handleEditUserProject,\n handleOpenDeleteDialog,\n setTabIndex,\n setSharedActiveProject,\n} = userProjectSlice.actions;\n\nexport default userProjectSlice.reducer;","import { createSlice } from \"@reduxjs/toolkit\";\nimport { foundationProfileCanadianApi } from \"Services/FoundationProfileCanadianService\";\nimport { notesApi } from \"Services/NoteService\";\nimport { countryApi } from \"Services/CountryService\";\nimport { sectorCAApi } from \"Services/SectorServiceCA\";\nimport { formatPhoneNumber } from \"utils/formatPhoneNumber\";\nimport config from \"config\";\n\nexport const initialState = {\n openPopupNote: false,\n noteData: {\n id: null,\n title: '',\n description: '',\n notificationDate: null,\n emailNotification: false,\n emails:[],\n },\n loadingGifts: false,\n applyFilter: '',\n init: false,\n profileName: '',\n lastReportYear: null,\n registerYear: null,\n fiscalPeriodEnd: '',\n stateOrProvince: '',\n organizationRegion: '',\n city: '',\n onlineApplication: '',\n website: '',\n phoneNumber: '',\n fullAddress: '',\n nteeTitle: '',\n nteeDescription: '',\n recipientName: '',\n countryList: [],\n provinceOrStateList: [],\n selectedFilters: {\n country: [],\n provinceOrState: [],\n county: [],\n city: [],\n years: [],\n sectors: [],\n },\n cityList: [],\n sectorList: [],\n countyList: [],\n stemmingSearch: true,\n contactEmail: '',\n donorDesignation: '',\n nationalGivingHistory:'',\n applicationData: {\n foundationId: null\n },\n programData: {\n foundationId: null\n },\n yearList: [\n ...Array(config.searchEngineYearFilter.CA - 2014 + 1)\n .fill()\n .map((_, idx) => ({\n index: idx,\n id: (2014 + idx).toString(),\n value: (2014 + idx).toString(),\n label: (2014 + idx).toString(),\n checked: false\n }))\n ],\n summary: {\n avgGrantSize: null,\n totalAsserts: null,\n avgGrantsAnnually: null,\n grantsState: null,\n avgAmount: null,\n largestAmount: null,\n medianAmount: null,\n range: null,\n customAnalysisList: [],\n foundationFinancialList: [],\n yearAnalysisList: [],\n nationalGivingHistory: null\n },\n giftList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'donationdate',\n orderDirection: 'desc',\n items: [],\n statesFilter: [],\n highlightFilter: [],\n },\n grantOverviewList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'category',\n orderDirection: 'desc',\n items: [\n { category: 'Animal Welfare', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Art & Culture', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Community', grants: '50', largest: '$200,00', average: '$2,000', score: '3', grantamount: '$300,00' },\n { category: 'Education', grants: '333', largest: '$1,317,386,921', average: '$3,958,476', score: '5', grantamount: '$1,318,172,382' },\n { category: 'Environment', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Health', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Religion', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Social & Human Services', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Sports & Recreation', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'TOTAL', grants: '383', largest: '-', average: '-', score: '-', grantamount: '$1,318,472,382' }, \n ]\n },\n directorList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'directorname',\n orderDirection: 'desc',\n items: []\n },\n noteList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'createdAt',\n orderDirection: 'desc',\n items: []\n },\n charts: {\n provinceList: [],\n rangeAmount: [],\n rangeSector: {}\n },\n toggleExpandFilters: {\n provinceOrState: false,\n city: false,\n year: false,\n stemmingSearch: false,\n county: false,\n sector: false\n },\n taxReturnPdf: []\n \n};\n\nconst foundationProfileCASliceV2 = createSlice({\n name: \"foundation-profile-ca-v2\",\n initialState,\n reducers: {\n init: (state, action) => {\n state.init = true;\n },\n handleChangeFilter: (state, action) => {\n const { key, value } = action.payload;\n state.selectedFilters[key] = value;\n },\n handleChangeRecipientName: (state, action) => {\n state.recipientName = action.payload;\n },\n handleAddNewNote: (state, action) => {\n state.openPopupNote = true;\n state.noteData = {...initialState.noteData};\n },\n handleEditNote: (state, action) => {\n state.openPopupNote = true;\n state.noteData.id = action.payload.id;\n state.noteData.title = action.payload.title;\n state.noteData.description = action.payload.description;\n state.noteData.notificationDate = action.payload.notificationDate;\n state.noteData.emailNotification = action.payload.emailNotification;\n state.noteData.emails = action.payload.emails;\n },\n handleClosePopupNote: (state, action) => {\n state.openPopupNote = false;\n state.noteData = {...initialState.noteData};\n },\n handleChangeStemmingSearch: (state, action) => {\n state.stemmingSearch = action.payload;\n },\n handleClear: (state, action) => {\n state.openPopupNote = false;\n state.noteData = { ...initialState.noteData };\n state.profileName = '';\n state.lastReportYear = null;\n state.lastReportYear = null;\n state.registerYear = null;\n state.fiscalPeriodEnd = '';\n state.stateOrProvince = '';\n state.organizationRegion = '';\n state.city = '';\n state.onlineApplication = '';\n state.website = '';\n state.phoneNumber = '';\n state.fullAddress = '';\n state.recipientName = '';\n state.stemmingSearch = true;\n state.nationalGivingHistory = '';\n state.yearList = [\n ...Array(config.searchEngineYearFilter.CA - 2014 + 1)\n .fill()\n .map((_, idx) => ({\n index: idx,\n id: (2014 + idx).toString(),\n value: (2014 + idx).toString(),\n label: (2014 + idx).toString(),\n checked: false\n }))\n ];\n state.summary = { ...initialState.summary };\n state.charts = { ...initialState.charts };\n state.giftList = { ...initialState.giftList };\n state.countryList = [];\n state.provinceOrStateList = [];\n state.cityList = [];\n state.countyList = [];\n state.sectorList = [];\n state.stemmingSearch = true; \n \n },\n handleApplyFilter: (state, action) => {\n state.applyFilter = action.payload;\n },\n handleClearCityList: (state, action) => {\n state.cityList = [];\n },\n handleClearGifts: (state, action) => {\n\n state.selectedFilters.provinceOrState = [];\n state.selectedFilters.county = [];\n state.selectedFilters.city = [];\n state.selectedFilters.years = [];\n state.selectedFilters.sectors = [];\n\n state.cityList = [];\n\n state.applyFilter = action.payload;\n state.stemmingSearch = true;\n state.toggleExpandFilters = { ...initialState.toggleExpandFilters };\n \n state.giftList.pageNumber = 0;\n state.giftList.pageSize = 10;\n state.giftList.orderField = 'donationdate';\n state.giftList.orderDirection = 'desc';\n },\n handleToggleExpandFilters: (state, action) => {\n state.toggleExpandFilters = {\n ...state.toggleExpandFilters,\n [action.payload.id]: action.payload.value \n }\n },\n handleUpdateNoteItem: (state, action) => {\n var noteItem = state.noteList.items?.find(o => o.id === action.payload.id);\n if(noteItem) {\n noteItem[action.payload.key] = action.payload.value;\n }\n },\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n foundationProfileCanadianApi.endpoints.getGiftsPagedListCAV2.matchFulfilled, (state, action) => {\n state.loadingGifts = false;\n state.giftList.pageNumber = action.payload.pageNumber;\n state.giftList.pageSize = action.payload.pageSize;\n state.giftList.pageCount = action.payload.pageCount;\n state.giftList.totalCount = action.payload.totalCount;\n state.giftList.orderField = action.payload.orderField;\n state.giftList.orderDirection = action.payload.orderDirection;\n state.giftList.items = action.payload.items;\n state.countyList = action.payload.aggrFilters.countiesFilter?.map(county => ({\n ...county,\n checked: !!state.countyList.find(o => o.key === county.key)?.checked,\n })) ?? [];\n state.giftList.statesFilter = action.payload.aggrFilters.statesFilter;\n state.giftList.highlightFilter = action.payload.aggrFilters.highlightFilter?.map(o => o.key) ?? [];\n }\n )\n .addMatcher(\n foundationProfileCanadianApi.endpoints.getGiftsPagedListCA.matchPending, (state, action) => {\n state.loadingGifts = true;\n }\n )\n .addMatcher(\n foundationProfileCanadianApi.endpoints.getGiftsPagedListCA.matchRejected, (state, action) => {\n state.loadingGifts = false;\n }\n )\n .addMatcher(\n foundationProfileCanadianApi.endpoints.getGrantOverviewCA.matchFulfilled, (state, action) => {\n state.grantOverviewList.pageNumber = action.payload.pageNumber;\n state.grantOverviewList.pageSize = action.payload.pageSize;\n state.grantOverviewList.pageCount = action.payload.pageCount;\n state.grantOverviewList.totalCount = action.payload.totalCount;\n state.grantOverviewList.items = action.payload.items;\n }\n )\n .addMatcher(\n foundationProfileCanadianApi.endpoints.getDirectorListCA.matchFulfilled, (state, action) => {\n state.directorList.pageNumber = action.payload.pageNumber;\n state.directorList.pageSize = action.payload.pageSize;\n state.directorList.pageCount = action.payload.pageCount;\n state.directorList.totalCount = action.payload.totalCount;\n state.directorList.orderField = action.payload.orderField;\n state.directorList.orderDirection = action.payload.orderDirection;\n state.directorList.items = action.payload.items;\n }\n )\n .addMatcher(\n notesApi.endpoints.getNoteList.matchFulfilled, (state, action) => {\n state.noteList.pageNumber = action.payload.pageNumber;\n state.noteList.pageSize = action.payload.pageSize;\n state.noteList.orderField = action.payload.orderField;\n state.noteList.orderDirection = action.payload.orderDirection;\n state.noteList.pageCount = action.payload.pageCount;\n state.noteList.totalCount = action.payload.totalCount;\n state.noteList.items = action.payload.items;\n }\n )\n .addMatcher(\n foundationProfileCanadianApi.endpoints.getMainProfileCA.matchFulfilled, (state, action) => {\n state.profileName = action.payload.profileName;\n state.lastReportYear = action.payload.lastReportYear;\n state.registerYear = action.payload.registerYear;\n state.fiscalPeriodEnd = action.payload.fiscalPeriodEnd;\n state.stateOrProvince = action.payload.stateOrProvince;\n state.organizationRegion = action.payload.organizationRegion;\n state.city = action.payload.city;\n state.onlineApplication = action.payload.onlineApplication;\n state.website = action.payload.website;\n state.phoneNumber = formatPhoneNumber(action.payload.phoneNumber);\n state.fullAddress = action.payload.fullAddress;\n state.nteeTitle = action.payload.nteeTitle;\n state.nteeDescription = action.payload.nteeDescription;\n state.contactEmail = action.payload.contactEmail;\n state.donorDesignation = action.payload.donorDesignation;\n \n state.summary.nationalGivingHistory = (action.payload.summary.nationalGivingHistory ?? action.payload.nationalGivingHistory) ?? '';\n state.summary.avgGrantSize = action.payload.summary.avgGrantSize;\n state.summary.totalAsserts = action.payload.summary.totalAsserts;\n state.summary.avgGrantsAnnually = action.payload.summary.avgGrantsAnnually;\n state.summary.grantsState = action.payload.summary.grantsState;\n\n state.summary.avgAmount = action.payload.summary.avgAmount;\n state.summary.largestAmount = action.payload.summary.largestAmount;\n state.summary.medianAmount = action.payload.summary.medianAmount;\n state.summary.range = action.payload.summary.range;\n state.programData.foundationId = action.payload.programData.foundationId;\n state.taxReturnPdf = action.payload.taxReturnPdf; \n }\n )\n .addMatcher(\n countryApi.endpoints.getCountryByCodeWithTrigger.matchFulfilled, (state, action) => {\n\n const countries = [action.payload]; //action.payload value is 1 object (CA)\n state.countryList = countries.map(country => ({\n id: country.id,\n value: country.code,\n label: country.description,\n }))\n\n state.selectedFilters.country = state.countryList.length > 0 ? [state.countryList[0]] : [];\n\n state.provinceOrStateList = action.payload.provinceOrStateList.map(provinceOrState => ({\n id: provinceOrState.id,\n value: provinceOrState.code,\n label: provinceOrState.description,\n }));\n }\n )\n .addMatcher(\n countryApi.endpoints.getCityListByProvinceOrStates.matchFulfilled, (state, action) => {\n state.cityList = action.payload.map(city => ({\n id: city.id,\n value: city.name,\n label: city.name,\n secondaryAction: city.provinceOrStateCode,\n }));\n\n state.selectedFilters.city = state.cityList.length > 0 \n ? state.selectedFilters.city.filter(city => state.cityList.some(city2 => city2.value === city.value) ) \n : [];\n }\n )\n .addMatcher(\n sectorCAApi.endpoints.getSectorListCA.matchFulfilled, (state, action) => {\n state.sectorList = action.payload.map(item => ({\n id: item.id,\n value: item.sectorName,\n label: item.sectorName,\n }));\n }\n )\n .addMatcher(\n foundationProfileCanadianApi.endpoints.getChartProvinceListCA.matchFulfilled, (state, action) => {\n state.charts.provinceList = action.payload;\n }\n )\n .addMatcher(\n foundationProfileCanadianApi.endpoints.getChartRangeAmountListCA.matchFulfilled, (state, action) => {\n state.charts.rangeAmount = action.payload;\n }\n )\n .addMatcher(\n foundationProfileCanadianApi.endpoints.getChartRangeSectorCA.matchFulfilled, (state, action) => {\n state.charts.rangeSector = action.payload;\n }\n )\n }\n});\n\nexport const { \n init,\n handleChangeRecipientName,\n handleAddNewNote,\n handleEditNote,\n handleClosePopupNote,\n handleChangeStemmingSearch,\n handleClear,\n handleApplyFilter,\n handleClearCityList,\n handleClearGifts,\n handleToggleExpandFilters,\n handleUpdateNoteItem,\n handleChangeFilter,\n} = foundationProfileCASliceV2.actions;\n\nexport default foundationProfileCASliceV2.reducer;\n","const config = {\n // basename: only at build time to set, and Don't add '/' at end off BASENAME for breadcrumbs, also Don't put only '/' use blank('') instead,\n // like '/berry-material-react/react/default'\n basename: '/',\n defaultPath: '/main/dashboard/default',\n fontFamily: `'Poppins', sans-serif`,\n borderRadius: 12,\n outlinedFilled: true,\n theme: 'light', // light, dark\n presetColor: 'default', // default, theme1, theme2, theme3, theme4, theme5, theme6\n i18n: 'en', // 'en' - English, 'fr' - French, 'ro' - Romanian, 'zh' - Chinese\n rtlLayout: false,\n jwt: {\n secret: 'SECRET-KEY',\n timeout: '1 days'\n },\n firebase: {\n apiKey: 'AIzaSyBernKzdSojh_vWXBHt0aRhf5SC9VLChbM',\n authDomain: 'berry-material-react.firebaseapp.com',\n projectId: 'berry-material-react',\n storageBucket: 'berry-material-react.appspot.com',\n messagingSenderId: '901111229354',\n appId: '1:901111229354:web:a5ae5aa95486297d69d9d3',\n measurementId: 'G-MGJHSL8XW3'\n },\n auth0: {\n client_id: '7T4IlWis4DKHSbG8JAye4Ipk0rvXkH9V',\n domain: 'dev-w0-vxep3.us.auth0.com'\n },\n welcomeMessage: {\n keyVersion: 'version_3_2_2',\n message: [\n \"

We’re excited to announce that versions V3.2.1 and V3.2.2 of Grant Advance are now live!

\",\n \"

These updates include exciting new features like enhanced search tools, AI-powered document generation, and improved profile management, along with essential fixes for a smoother experience.

\",\n \"

Please check out the detailed announcement for more information and resources.

\"\n ]\n },\n markerOptions: {\n \"accuracy\": \n { \n \"value\": \"exactly\", \n \"limiters\": [\"-\", \".\", \";\", \",\"]\n } \n },\n searchEngineYearFilter: {\n CA: 2023,\n US: 2024\n }\n};\n\nexport default config;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { subscriptionPlanApi } from 'Services/SubscriptionPlanService';\nimport { countryApi } from 'Services/CountryService';\n\nexport const initialState = {\n openPopupPayment: false,\n userNameOrEmail: {\n value: '',\n error: ''\n },\n password: {\n value: '',\n error: ''\n },\n coupon: null,\n subscriptionPlanList: [],\n countryList: [],\n selectedCountry: {\n id: null,\n code: null,\n description: null,\n provinceOrStateList: []\n },\n selectedCountryBilling: {\n id: null,\n code: null,\n description: null,\n provinceOrStateList: []\n },\n selectedProvinceOrState: {\n id: null,\n code: null,\n description: null,\n },\n selectedProvinceOrStateBilling: {\n id: null,\n code: null,\n description: null,\n },\n firstName: {\n value: '',\n error: ''\n },\n lastName: {\n value: '',\n error: ''\n },\n phoneNumber: {\n value: '',\n error: ''\n },\n userNameRegister: {\n value: '',\n error: ''\n },\n passwordRegister: {\n value: '',\n error: ''\n },\n email: {\n value: '',\n error: ''\n },\n subscriptionPlanName: {\n value: '',\n error: '',\n },\n companyName: {\n value: '',\n error: ''\n },\n addressLine: {\n value: '',\n error: ''\n },\n addressLine2: {\n value: '',\n error: ''\n },\n city: {\n value: '',\n error: ''\n },\n provinceOrState: {\n value: null,\n error: ''\n },\n postalCode: {\n value: '',\n error: ''\n },\n country: {\n value: '',\n error: ''\n },\n county: {\n value: '',\n error: ''\n },\n addressLineBilling: {\n value: '',\n error: ''\n },\n addressLine2Billing: {\n value: '',\n error: ''\n },\n countryBilling: {\n value: '',\n error: ''\n },\n countyBilling: {\n value: '',\n error: ''\n },\n postalCodeBilling: {\n value: '',\n error: ''\n },\n provinceOrStateBilling: {\n value: '',\n error: ''\n },\n cityBilling: {\n value: '',\n error: ''\n },\n useSameAddress: {\n value: false,\n error: ''\n },\n userNameRecovery: {\n value: '',\n error: ''\n },\n emailRecovery: {\n value: '',\n error: ''\n },\n newPassword: {\n value: '',\n error: ''\n },\n confirmPassword: {\n value: '',\n error: ''\n }\n};\n\nconst authSlice = createSlice({\n name: \"auth\",\n initialState,\n reducers: {\n handleOpenPopupPayment: (state, action) => {\n state.openPopupPayment = true;\n }, \n handleClosePopupPayment: (state, action) => {\n state.openPopupPayment = false;\n },\n handleChange: (state, action) => {\n state[action.payload.field].error = '';\n state[action.payload.field].value = action.payload.value\n },\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state[field].error = errors[0];\n });\n },\n handleChangeCountry: (state, action) => {\n state.selectedCountry = state.countryList.find(o => o.description === action.payload);\n state.country.value = state.countryList.find(o => o.description === action.payload).description;\n state.selectedProvinceOrState = initialState.selectedProvinceOrState;\n state.provinceOrState = initialState.provinceOrState;\n },\n handleChangeCountryBilling: (state, action) => {\n state.selectedCountryBilling = state.countryList.find(o => o.description === action.payload);\n state.countryBilling.value = state.countryList.find(o => o.description === action.payload).description;\n state.selectedProvinceOrStateBilling = initialState.selectedProvinceOrStateBilling;\n state.provinceOrStateBilling = initialState.provinceOrStateBilling;\n \n },\n handleChangeProvinceOrState: (state, action) => {\n if (action.payload?.value) {\n state.selectedProvinceOrState = state.selectedCountry.provinceOrStateList.find(o => o.description === action.payload.value || '');\n state.provinceOrState.value = state.selectedCountry.provinceOrStateList.find(o => o.description === action.payload.value || '').description;\n state.provinceOrState.error = '';\n }\n },\n handleChangeProvinceOrStateBilling: (state, action) => {\n if (action.payload?.value) {\n state.selectedProvinceOrStateBilling = state.selectedCountryBilling.provinceOrStateList.find(o => o.description === action.payload.value || '');\n state.provinceOrStateBilling.value = state.selectedCountryBilling.provinceOrStateList.find(o => o.description === action.payload.value || '').description;\n }\n },\n handleChangeUseSameAddress: (state, action) => {\n state.useSameAddress.value = action.payload;\n state.useSameAddress.error = '';\n\n if (state.useSameAddress.value === true) {\n state.addressLineBilling.value = state.addressLine.value;\n state.addressLineBilling.error = '';\n\n state.addressLine2Billing.value = state.addressLine2.value;\n state.addressLine2Billing.error = '';\n\n state.selectedCountryBilling = { ...state.selectedCountry };\n state.countryBilling.value = state.country.value;\n state.countryBilling.error = '';\n \n state.postalCodeBilling.value = state.postalCode.value;\n state.postalCodeBilling.error = '';\n \n state.selectedProvinceOrStateBilling = { ...state.selectedProvinceOrState };\n state.provinceOrStateBilling.value = state.provinceOrState.value;\n state.provinceOrStateBilling.error = '';\n\n state.cityBilling.value = state.city.value;\n state.cityBilling.error = '';\n }\n },\n clearErrors: (state, action) => {\n Object.keys(initialState).forEach(field => {\n if (state[field]?.error !== undefined) {\n state[field].error = ''; \n }\n });\n },\n formReset: (state, action) => {\n state.firstName.value = '';\n state.firstName.error = '';\n \n state.lastName.value = '';\n state.lastName.error = '';\n \n state.phoneNumber.value = '';\n state.phoneNumber.error = '';\n\n state.userNameRegister.value = '';\n state.userNameRegister.error = '';\n\n state.passwordRegister.value = '';\n state.passwordRegister.error = '';\n \n state.email.value = '';\n state.email.error = '';\n \n state.subscriptionPlanName.value = '';\n state.subscriptionPlanName.error = '';\n\n state.companyName.value = '';\n state.companyName.error = '';\n\n state.addressLine.value = '';\n state.addressLine.error = '';\n\n state.addressLine2.value = '';\n state.addressLine2.error = '';\n\n state.city.value = '';\n state.city.error = '';\n\n state.provinceOrState.value = '';\n state.provinceOrState.error = '';\n\n state.postalCode.value = '';\n state.postalCode.error = '';\n\n state.country.value = '';\n state.country.error = '';\n\n state.county.value = '';\n state.county.error = '';\n\n state.addressLineBilling.value = '';\n state.addressLineBilling.error = '';\n\n state.addressLine2Billing.value = '';\n state.addressLine2Billing.error = '';\n\n state.countryBilling.value = '';\n state.countryBilling.error = '';\n\n state.countyBilling.value = '';\n state.countyBilling.error = '';\n\n state.postalCodeBilling.value = '';\n state.postalCodeBilling.error = '';\n\n state.provinceOrStateBilling.value = '';\n state.provinceOrStateBilling.error = '';\n\n state.cityBilling.value = '';\n state.cityBilling.error = '';\n\n state.useSameAddress.value = false;\n state.useSameAddress.error = '';\n\n state.selectedProvinceOrState = initialState.selectedProvinceOrState;\n state.selectedProvinceOrStateBilling = initialState.selectedProvinceOrStateBilling;\n },\n clearPasswordRecovery: (state, action) => {\n state.userNameRecovery.value = '';\n state.userNameRecovery.error = '';\n state.emailRecovery.value = '';\n state.emailRecovery.error = '';\n state.confirmPassword.value = '';\n state.confirmPassword.error = '';\n state.newPassword.value = '';\n state.newPassword.error = '';\n },\n setSubscriptionPlanList: (state, action) => {\n state.subscriptionPlanList = action.payload;\n },\n setCoupon: (state, action) => {\n state.coupon = action.payload;\n }\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n subscriptionPlanApi.endpoints.getPublicPlans.matchFulfilled, (state, action) => {\n state.subscriptionPlanList = action.payload;\n }\n )\n .addMatcher(\n countryApi.endpoints.getCountryList.matchFulfilled, (state, action) => {\n state.countryList = action.payload;\n }\n )\n }\n});\n\nexport const {\n handleOpenPopupPayment,\n handleClosePopupPayment, \n handleChange, \n handleModelErrors,\n handleChangeUseSameAddress,\n clearErrors,\n formReset,\n clearPasswordRecovery,\n handleChangeCountry,\n handleChangeCountryBilling,\n handleChangeProvinceOrState,\n handleChangeProvinceOrStateBilling,\n setSubscriptionPlanList,\n setCoupon,\n} = authSlice.actions;\n\nexport default authSlice.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\n\nexport const initialState = {\n usersList: [],\n licenseAmount: 0,\n usersAmount: 0,\n loadingList: false,\n searchTerm: '',\n isDialogOpen: false,\n isDialogRemoveOpen: false,\n userId: null,\n userName: {\n value: '',\n error: ''\n },\n firstName: {\n value: '',\n error: ''\n },\n lastName: {\n value: '',\n error: ''\n },\n status: {\n value: true,\n error: ''\n },\n collaborationAll: {\n value: false,\n error: ''\n },\n collaborationParent: {\n value: false,\n error: ''\n },\n};\n\nconst additionalUsersSlice = createSlice({\n name: \"additional-users\",\n initialState,\n reducers: {\n handleAddNewUser: (state, action) => {\n state.isDialogOpen = true;\n state.userId = null;\n state.userName.value = '';\n state.userName.error = '';\n state.firstName.value = '';\n state.firstName.error = '';\n state.lastName.value = '';\n state.lastName.error = '';\n state.status.value = true;\n state.status.error = '';\n state.collaborationAll.value = false;\n state.collaborationAll.error = '';\n state.collaborationParent.value = false;\n state.collaborationParent.error = '';\n },\n handleEditUser: (state, action) => {\n state.isDialogOpen = true;\n state.userId = action.payload.id;\n state.userName.value = action.payload.userName;\n state.userName.error = '';\n state.firstName.value = action.payload.firstName;\n state.firstName.error = '';\n state.lastName.value = action.payload.lastName;\n state.lastName.error = '';\n state.status.value = action.payload.status;\n state.status.error = '';\n state.collaborationAll.value = action.payload.collaborationAll;\n state.collaborationAll.error = '';\n state.collaborationParent.value = action.payload.collaborationParent;\n state.collaborationParent.error = '';\n },\n handleChangeSearch: (state, action) => {\n state[action.payload.field] = action.payload.value; \n },\n handleChangeForm: (state, action) => {\n state[action.payload.field].error = ''; \n state[action.payload.field].value = action.payload.value; \n },\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state[field].error = errors[0];\n });\n },\n handleInsertSuccess: (state, action) => {\n state.usersList.push({\n id: action.payload.id,\n userName: state.userName.value,\n firstName: state.firstName.value,\n lastName: state.lastName.value,\n status: state.status.value,\n collaborationAll: state.collaborationAll.value,\n collaborationParent: state.collaborationParent.value,\n email: state.userName.value,\n });\n\n state.usersAmount = action.payload.usersAmount;\n state.licenseAmount = action.payload.licenseAmount;\n state.userId = null;\n state.userName.value = '';\n state.userName.error = '';\n state.firstName.value = '';\n state.firstName.error = '';\n state.lastName.value = '';\n state.lastName.error = '';\n state.status.value = true;\n state.status.error = true;\n state.collaborationAll.value = false;\n state.collaborationAll.error = '';\n state.collaborationParent.value = false;\n state.collaborationParent.error = '';\n state.isDialogOpen = false;\n },\n handleUpdateSuccess: (state, action) => {\n\n state.usersList.forEach(value => {\n if (value.id === state.userId) {\n value.userName = state.userName.value;\n value.firstName = state.firstName.value;\n value.lastName = state.lastName.value;\n value.status = state.status.value;\n value.collaborationAll = state.collaborationAll.value;\n value.collaborationParent = state.collaborationParent.value;\n }\n });\n \n state.userId = null;\n state.userName.value = '';\n state.firstName.value = '';\n state.lastName.value = '';\n state.status.value = true;\n state.collaborationAll.value = false;\n state.collaborationParent.value = false;\n state.isDialogOpen = false;\n },\n setLoading: (state, action) => {\n \n if (action.payload)\n state.usersList = [];\n\n state.loadingList = action.payload;\n },\n fillList: (state, action) => {\n state.usersList = action.payload.additionalUsers;\n state.licenseAmount = action.payload.licenseAmount;\n state.usersAmount = action.payload.usersAmount;\n },\n closeDialog: (state, action) => {\n state.isDialogOpen = false;\n },\n handleClearSearch: (state, action) => {\n state.searchTerm = '';\n },\n handleOpenDialogRemove: (state, action) => {\n state.isDialogRemoveOpen = true;\n state.userId = action.payload;\n },\n handleCloseDialogRemove: (state, action) => {\n state.isDialogRemoveOpen = false;\n state.userId = null;\n }\n },\n});\n\nexport const { \n handleAddNewUser,\n handleEditUser,\n handleChangeSearch,\n handleChangeForm,\n setLoading,\n fillList,\n closeDialog,\n handleModelErrors,\n handleInsertSuccess,\n handleUpdateSuccess,\n handleClearSearch,\n handleOpenDialogRemove,\n handleCloseDialogRemove\n} = additionalUsersSlice.actions;\n\nexport default additionalUsersSlice.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { foundationProfileCanadianApi } from \"Services/FoundationProfileCanadianService\";\nimport { notesApi } from \"Services/NoteService\";\nimport { countryApi } from \"Services/CountryService\";\nimport { sectorCAApi } from \"Services/SectorServiceCA\";\nimport { formatPhoneNumber } from \"utils/formatPhoneNumber\";\nimport config from \"config\";\n\nexport const initialState = {\n openPopupNote: false,\n noteData: {\n id: null,\n title: '',\n description: '',\n notificationDate: null,\n emailNotification: false,\n emails:[],\n },\n loadingGifts: false,\n applyFilter: '',\n init: false,\n profileName: '',\n lastReportYear: null,\n registerYear: null,\n stateOrProvince: '',\n organizationRegion: '',\n city: '',\n onlineApplication: '',\n website: '',\n phoneNumber: '',\n fullAddress: '',\n nteeTitle: '',\n nteeDescription: '',\n recipientName: '',\n countryList: [],\n provinceOrStateList: [],\n cityList: [],\n sectorList: [],\n countyList: [],\n stemmingSearch: true,\n contactEmail: '',\n donorDesignation: '',\n nationalGivingHistory:'',\n applicationData: {\n foundationId: null\n },\n programData: {\n foundationId: null\n },\n yearList: [\n ...Array(config.searchEngineYearFilter.CA - 2014 + 1)\n .fill()\n .map((_, idx) => ({\n index: idx,\n key: (2014 + idx).toString(),\n value: (2014 + idx).toString(),\n label: (2014 + idx).toString(),\n checked: false\n }))\n ],\n summary: {\n avgGrantSize: null,\n totalAsserts: null,\n avgGrantsAnnually: null,\n grantsState: null,\n avgAmount: null,\n largestAmount: null,\n medianAmount: null,\n range: null,\n customAnalysisList: [],\n foundationFinancialList: [],\n yearAnalysisList: [],\n nationalGivingHistory: null\n },\n giftList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'donationdate',\n orderDirection: 'desc',\n items: [],\n highlightFilter: [],\n },\n grantOverviewList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'category',\n orderDirection: 'desc',\n items: [\n { category: 'Animal Welfare', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Art & Culture', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Community', grants: '50', largest: '$200,00', average: '$2,000', score: '3', grantamount: '$300,00' },\n { category: 'Education', grants: '333', largest: '$1,317,386,921', average: '$3,958,476', score: '5', grantamount: '$1,318,172,382' },\n { category: 'Environment', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Health', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Religion', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Social & Human Services', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'Sports & Recreation', grants: '0', largest: '$0', average: '$0', score: '1', grantamount: '$0' },\n { category: 'TOTAL', grants: '383', largest: '-', average: '-', score: '-', grantamount: '$1,318,472,382' }, \n ]\n },\n directorList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'directorname',\n orderDirection: 'desc',\n items: []\n },\n noteList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'createdAt',\n orderDirection: 'desc',\n items: []\n },\n charts: {\n provinceList: [],\n rangeAmount: [],\n rangeSector: {}\n },\n toggleExpandFilters: {\n provinceOrState: false,\n city: false,\n year: false,\n stemmingSearch: false,\n county: false,\n sector: false\n },\n taxReturnPdf: []\n \n};\n\nconst foundationProfileCASlice = createSlice({\n name: \"foundation-profile-ca\",\n initialState,\n reducers: {\n init: (state, action) => {\n state.init = true;\n },\n handleChangeCountry: (state, action) => {\n state.countryList.forEach(country => {\n if (country.code === action.payload.code) {\n country.checked = action.payload.checked;\n }\n });\n },\n handleChangeProvinceOrState: (state, action) => {\n action.payload.forEach(item => {\n const togglelistItem = state.provinceOrStateList.find(o => o.code === item.value);\n \n if (togglelistItem) {\n togglelistItem.checked = item.checked;\n }\n \n });\n },\n handleChangeCity: (state, action) => {\n\n action.payload.forEach(item => {\n const togglelistItem = state.cityList.find(o => o.name === item.value);\n \n if (togglelistItem) {\n togglelistItem.checked = item.checked;\n }\n \n });\n },\n handleChangeSectorGifts: (state, action) => {\n\n action.payload.forEach(item => {\n const togglelistItem = state.sectorList.find(o => o.sectorName === item.value);\n \n if (togglelistItem) {\n togglelistItem.checked = item.checked;\n }\n \n });\n },\n handleChangeCounty: (state, action) => {\n state.countyList.forEach(county => {\n if (county.value === action.payload.value) {\n county.checked = action.payload.checked;\n }\n });\n },\n handleChangeYears: (state, action) => {\n state.yearList.forEach(year => {\n if (year.value === action.payload.value) {\n year.checked = action.payload.checked;\n }\n });\n },\n handleChangeSector: (state, action) => {\n state.sectorList.forEach(sector => {\n if (sector.value === action.payload.value) {\n sector.checked = action.payload.checked;\n }\n });\n },\n handleChangeRecipientName: (state, action) => {\n state.recipientName = action.payload;\n },\n handleAddNewNote: (state, action) => {\n state.openPopupNote = true;\n state.noteData = {...initialState.noteData};\n },\n handleEditNote: (state, action) => {\n state.openPopupNote = true;\n state.noteData.id = action.payload.id;\n state.noteData.title = action.payload.title;\n state.noteData.description = action.payload.description;\n state.noteData.notificationDate = action.payload.notificationDate;\n state.noteData.emailNotification = action.payload.emailNotification;\n state.noteData.emails = action.payload.emails;\n },\n handleClosePopupNote: (state, action) => {\n state.openPopupNote = false;\n state.noteData = {...initialState.noteData};\n },\n handleChangeStemmingSearch: (state, action) => {\n state.stemmingSearch = action.payload;\n },\n handleClear: (state, action) => {\n state.openPopupNote = false;\n state.noteData = { ...initialState.noteData };\n state.profileName = '';\n state.lastReportYear = null;\n state.lastReportYear = null;\n state.registerYear = null;\n state.stateOrProvince = '';\n state.organizationRegion = '';\n state.city = '';\n state.onlineApplication = '';\n state.website = '';\n state.phoneNumber = '';\n state.fullAddress = '';\n state.recipientName = '';\n state.stemmingSearch = true;\n state.nationalGivingHistory = '';\n state.yearList = [\n ...Array(config.searchEngineYearFilter.CA - 2014 + 1)\n .fill()\n .map((_, idx) => ({\n index: idx,\n key: (2014 + idx).toString(),\n value: (2014 + idx).toString(),\n label: (2014 + idx).toString(),\n checked: false\n }))\n ];\n state.summary = { ...initialState.summary };\n state.charts = { ...initialState.charts };\n state.giftList = { ...initialState.giftList };\n state.countryList = [];\n state.provinceOrStateList = [];\n state.cityList = [];\n state.countyList = [];\n state.sectorList = [];\n state.stemmingSearch = true; \n \n },\n handleApplyFilter: (state, action) => {\n state.applyFilter = action.payload;\n },\n handleClearCityList: (state, action) => {\n state.cityList = [];\n },\n handleClearGifts: (state, action) => {\n\n state.provinceOrStateList = state.provinceOrStateList.map(item => ({\n ...item,\n checked: false\n }));\n\n state.cityList = [];\n\n state.countyList = state.countyList.map(item => ({\n ...item,\n checked: false\n }));\n\n state.sectorList = state.sectorList.map(item => ({\n ...item,\n checked: false\n }));\n\n state.yearList = state.yearList.map(item => ({\n ...item,\n checked: false\n }));\n\n state.applyFilter = action.payload;\n state.stemmingSearch = true;\n state.toggleExpandFilters = { ...initialState.toggleExpandFilters };\n \n state.giftList.pageNumber = 0;\n state.giftList.pageSize = 10;\n state.giftList.orderField = 'donationdate';\n state.giftList.orderDirection = 'desc';\n },\n handleToggleExpandFilters: (state, action) => {\n state.toggleExpandFilters = {\n ...state.toggleExpandFilters,\n [action.payload.id]: action.payload.value \n }\n },\n handleUpdateNoteItem: (state, action) => {\n var noteItem = state.noteList.items?.find(o => o.id === action.payload.id);\n if(noteItem) {\n noteItem[action.payload.key] = action.payload.value;\n }\n },\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n foundationProfileCanadianApi.endpoints.getGiftsPagedListCA.matchFulfilled, (state, action) => {\n state.loadingGifts = false;\n state.giftList.pageNumber = action.payload.pageNumber;\n state.giftList.pageSize = action.payload.pageSize;\n state.giftList.pageCount = action.payload.pageCount;\n state.giftList.totalCount = action.payload.totalCount;\n state.giftList.orderField = action.payload.orderField;\n state.giftList.orderDirection = action.payload.orderDirection;\n state.giftList.items = action.payload.items;\n state.countyList = action.payload.aggrFilters.countiesFilter?.map(county => ({\n ...county,\n checked: !!state.countyList.find(o => o.key === county.key)?.checked,\n })) ?? [];\n state.giftList.highlightFilter = action.payload.aggrFilters.highlightFilter?.map(o => o.key) ?? [];\n }\n )\n .addMatcher(\n foundationProfileCanadianApi.endpoints.getGiftsPagedListCA.matchPending, (state, action) => {\n state.loadingGifts = true;\n }\n )\n .addMatcher(\n foundationProfileCanadianApi.endpoints.getGiftsPagedListCA.matchRejected, (state, action) => {\n state.loadingGifts = false;\n }\n )\n .addMatcher(\n foundationProfileCanadianApi.endpoints.getGrantOverviewCA.matchFulfilled, (state, action) => {\n state.grantOverviewList.pageNumber = action.payload.pageNumber;\n state.grantOverviewList.pageSize = action.payload.pageSize;\n state.grantOverviewList.pageCount = action.payload.pageCount;\n state.grantOverviewList.totalCount = action.payload.totalCount;\n state.grantOverviewList.items = action.payload.items;\n }\n )\n .addMatcher(\n foundationProfileCanadianApi.endpoints.getDirectorListCA.matchFulfilled, (state, action) => {\n state.directorList.pageNumber = action.payload.pageNumber;\n state.directorList.pageSize = action.payload.pageSize;\n state.directorList.pageCount = action.payload.pageCount;\n state.directorList.totalCount = action.payload.totalCount;\n state.directorList.orderField = action.payload.orderField;\n state.directorList.orderDirection = action.payload.orderDirection;\n state.directorList.items = action.payload.items;\n }\n )\n .addMatcher(\n notesApi.endpoints.getNoteList.matchFulfilled, (state, action) => {\n state.noteList.pageNumber = action.payload.pageNumber;\n state.noteList.pageSize = action.payload.pageSize;\n state.noteList.orderField = action.payload.orderField;\n state.noteList.orderDirection = action.payload.orderDirection;\n state.noteList.pageCount = action.payload.pageCount;\n state.noteList.totalCount = action.payload.totalCount;\n state.noteList.items = action.payload.items;\n }\n )\n .addMatcher(\n foundationProfileCanadianApi.endpoints.getMainProfileCA.matchFulfilled, (state, action) => {\n state.profileName = action.payload.profileName;\n state.lastReportYear = action.payload.lastReportYear;\n state.registerYear = action.payload.registerYear;\n state.stateOrProvince = action.payload.stateOrProvince;\n state.organizationRegion = action.payload.organizationRegion;\n state.city = action.payload.city;\n state.onlineApplication = action.payload.onlineApplication;\n state.website = action.payload.website;\n state.phoneNumber = formatPhoneNumber(action.payload.phoneNumber);\n state.fullAddress = action.payload.fullAddress;\n state.nteeTitle = action.payload.nteeTitle;\n state.nteeDescription = action.payload.nteeDescription;\n state.contactEmail = action.payload.contactEmail;\n state.donorDesignation = action.payload.donorDesignation;\n \n state.summary.nationalGivingHistory = (action.payload.summary.nationalGivingHistory ?? action.payload.nationalGivingHistory) ?? '';\n state.summary.avgGrantSize = action.payload.summary.avgGrantSize;\n state.summary.totalAsserts = action.payload.summary.totalAsserts;\n state.summary.avgGrantsAnnually = action.payload.summary.avgGrantsAnnually;\n state.summary.grantsState = action.payload.summary.grantsState;\n\n state.summary.avgAmount = action.payload.summary.avgAmount;\n state.summary.largestAmount = action.payload.summary.largestAmount;\n state.summary.medianAmount = action.payload.summary.medianAmount;\n state.summary.range = action.payload.summary.range;\n state.programData.foundationId = action.payload.programData.foundationId;\n state.taxReturnPdf = action.payload.taxReturnPdf; \n }\n )\n .addMatcher(\n countryApi.endpoints.getCountryByCodeWithTrigger.matchFulfilled, (state, action) => {\n\n state.countryList = [{\n ...action.payload,\n checked: true\n }];\n\n action.payload.provinceOrStateList.forEach(provinceOrState => {\n state.provinceOrStateList.push({\n ...provinceOrState,\n checked: false\n });\n });\n }\n )\n .addMatcher(\n countryApi.endpoints.getCityListByProvinceOrStates.matchFulfilled, (state, action) => {\n state.cityList = action.payload.map(item => ({\n ...item,\n checked: false\n }));\n }\n )\n .addMatcher(\n sectorCAApi.endpoints.getSectorListCA.matchFulfilled, (state, action) => {\n state.sectorList = action.payload.map(item => ({\n ...item,\n value: item.sectorName,\n checked: false,\n }));\n }\n )\n .addMatcher(\n foundationProfileCanadianApi.endpoints.getChartProvinceListCA.matchFulfilled, (state, action) => {\n state.charts.provinceList = action.payload;\n }\n )\n .addMatcher(\n foundationProfileCanadianApi.endpoints.getChartRangeAmountListCA.matchFulfilled, (state, action) => {\n state.charts.rangeAmount = action.payload;\n }\n )\n .addMatcher(\n foundationProfileCanadianApi.endpoints.getChartRangeSectorCA.matchFulfilled, (state, action) => {\n state.charts.rangeSector = action.payload;\n }\n )\n }\n});\n\nexport const { \n init,\n handleChangeCountry,\n handleChangeProvinceOrState,\n handleChangeCity,\n handleChangeSector,\n handleChangeRecipientName,\n handleAddNewNote,\n handleEditNote,\n handleClosePopupNote,\n handleChangeStemmingSearch,\n handleChangeYears,\n handleClear,\n handleApplyFilter,\n handleClearCityList,\n handleClearGifts,\n handleToggleExpandFilters,\n handleChangeCounty,\n handleChangeSectorGifts,\n handleUpdateNoteItem,\n} = foundationProfileCASlice.actions;\n\nexport default foundationProfileCASlice.reducer;\n","import { useEffect } from 'react';\nimport { useLocation } from 'react-router';\nimport { useSelector } from \"react-redux\";\nimport { FOUNDATION_V2_PATH, FOUNDATION_CA_V2_PATH, FAVORITES_PATH } from 'utils/constants';\n\nconst GRANT_SECRETARY_PATH = '/main/grant-secretary';\n\nconst useRestoreScrollYPosition = () => {\n\n const { pathname } = useLocation();\n\n const {\n fetchStatus: { funders: GSFunders, fundersCustomDocument: GSFundersCustomDocument },\n } = useSelector(state => state.grantSecretaryState);\n\n const {\n fetchStatus: {\n favoritesPagedList,\n favoritesPagedSharedList,\n favoriteFundersPagedList,\n }\n } = useSelector(state => state.favoritesState);\n\n const lastLocation = JSON.parse(localStorage.getItem('lastScrollLocation'));\n const isFoundationPage = (pathname.includes(FOUNDATION_V2_PATH) || pathname.includes(FOUNDATION_CA_V2_PATH));\n\n useEffect(() => {\n if (lastLocation && lastLocation.pathname !== pathname && !isFoundationPage) {\n\n window.scrollTo(0, 0);\n localStorage.removeItem('lastScrollLocation');\n }\n\n if (lastLocation && lastLocation.pathname === pathname) {\n\n window.scrollTo(0, 0);\n\n if (pathname === GRANT_SECRETARY_PATH && GSFunders && GSFundersCustomDocument) {\n window.scrollTo(0, lastLocation.scrollPosition);\n\n } else if (pathname === FAVORITES_PATH && favoriteFundersPagedList && favoritesPagedSharedList && favoritesPagedList) {\n window.scrollTo(0, lastLocation.scrollPosition);\n }\n }\n }, [pathname, GSFunders, GSFundersCustomDocument, favoriteFundersPagedList, favoritesPagedSharedList, favoritesPagedList, lastLocation]);\n\n\n};\n\nconst storeLocationScrollPosition = () => {\n window.localStorage.setItem('lastScrollLocation', JSON.stringify({ pathname: window.location.pathname, scrollPosition: window.scrollY }));\n\n};\n\n\nexport { useRestoreScrollYPosition, storeLocationScrollPosition };","import { emptySplitApi } from './index'\n\nconst authManagementApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n register: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/authManagement/register`,\n method: \"POST\",\n body: model,\n }),\n }),\n passwordRecovery: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/authManagement/password-recovery`,\n method: \"POST\",\n body: model,\n }),\n }),\n passwordReset: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/authManagement/password-reset`,\n method: \"POST\",\n body: model,\n }),\n }),\n settingUpAccount: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/authManagement/setting-up-account`,\n method: \"POST\",\n body: model,\n }),\n }),\n confirmRegisterUser: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/authManagement/confirm-register-user`,\n method: \"POST\",\n body: model,\n }),\n }),\n registerValidation: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/authManagement/register-validation`,\n method: \"POST\",\n body: model,\n }),\n }),\n updatePassword: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/authManagement/update-password`,\n method: \"POST\",\n body: model,\n })\n })\n }),\n overrideExisting: false,\n});\n\nexport const { \n useRegisterMutation, \n usePasswordRecoveryMutation,\n usePasswordResetMutation,\n useSettingUpAccountMutation,\n useConfirmRegisterUserMutation,\n useRegisterValidationMutation,\n useUpdatePasswordMutation,\n} = authManagementApi;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { projectFundersApi } from \"Services/ProjectFundersService\";\nimport startcase from \"utils/startcase\";\n\nexport const initialState = {\n userProject: {\n id: null,\n value: null,\n label: null\n },\n allProjectList: [],\n letterTypeList: [\n { id: 'Inquiry', value: 'Letter of Inquiry', label: 'Letter of Inquiry' },\n { id: 'Proposal', value: 'Proposal', label: 'Proposal' },\n { id: 'ThankYou', value: 'Thank You Letter', label: 'Thank You Letter' },\n { id: 'ImpactReport', value: 'Impact Report Letter', label: 'Impact Report Letter' },\n { id: 'CustomLetter', value: 'Custom Letter', label: 'Custom Letter' },\n ],\n letterType: {\n id: '',\n value: '',\n label: ''\n },\n funders: {\n profileId: '',\n foundationSourceType: '',\n checkAll: false,\n itemsSelected: [],\n excludedSelected: [],\n fundersSelected: [],\n pagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'foundationName',\n orderDirection: 'asc',\n items: []\n },\n openPopupFavourite: false,\n openPopupDelete: false,\n openPopupBlock: false,\n openPopupExportExcel: false,\n openPopupExportAll: false,\n openPopupPrintLabels: false,\n openPopupLetterheadFooterSettings: false,\n openPopupProfileSummary: false,\n },\n fundersCustomDocument: {\n profileId: '',\n foundationSourceType: '',\n flagFilter: 'All',\n checkAll: false,\n itemsSelected: [],\n excludedSelected: [],\n fundersSelected: [],\n pagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'foundationName',\n orderDirection: 'asc',\n items: []\n },\n openPopupFavourite: false,\n openPopupDelete: false,\n openPopupBlock: false,\n openPopupExportExcel: false,\n openPopupExportAll: false,\n openPopupPrintLabels: false,\n openPopupLetterheadFooterSettings: false,\n openPopupProfileSummary: false,\n savedHeaderFooterSetting: false,\n },\n profileSummary: {\n profileName: 'Chesed Charity Foundation',\n lastReportYear: 2021,\n registerYear: 1973,\n stateOrProvince: 'ON',\n onlineApplication: 'http://www.torontofoundation.ca',\n webSite: 'http://www.torontofoundation.ca',\n phoneNumber: '(416)783-5395',\n fullAddress: '87 SULTANA AVE TORONTO ON M6A 1T4',\n summary: {\n avgGrantSize: 1488490,\n grantsState: 608,\n totalAsserts: 245068,\n avgGrantsAnnually: 73266744\n },\n countNotes: 2,\n },\n labelList: [\n {\n id: 'Avery5163',\n value: 'Avery 5163 (2 columns, 5 rows) - Recommended',\n label: 'Avery 5163 (2 columns, 5 rows) - Recommended'\n },\n {\n id: 'Avery5161',\n value: 'Avery 5161 (2 columns, 10 rows)',\n label: 'Avery 5161 (2 columns, 10 rows)'\n },\n {\n id: 'Avery5167',\n value: 'Avery 5167 (4 columns, 20 rows, for return addresses)',\n label: 'Avery 5167 (4 columns, 20 rows, for return addresses)'\n },\n {\n id: 'Avery6572',\n value: 'Avery 6572 (3 columns, 5 rows)',\n label: 'Avery 6572 (3 columns, 5 rows)'\n },\n {\n id: 'Avery6871',\n value: 'Avery 6871 (3 columns, 6 rows)',\n label: 'Avery 6871 (3 columns, 6 rows)'\n },\n {\n id: 'Avery7160',\n value: 'Avery 7160 (3 columns, 7 rows)',\n label: 'Avery 7160 (3 columns, 7 rows)'\n },\n {\n id: 'Envelope',\n value: 'Envelope',\n label: 'Envelope'\n }\n ],\n fetchStatus: {\n funders: false,\n fundersCustomDocument: false\n }\n};\n\nconst grantSecretarySlice = createSlice({\n name: \"grant-secretary\",\n initialState,\n reducers: {\n handleChangeUserProject: (state, action) => {\n if (action.payload !== null) {\n state.userProject = action.payload;\n }\n },\n handleFillAllProject: (state, action) => {\n state.allProjectList = action.payload;\n },\n handleChangeLetterType: (state, action) => {\n if (action.payload !== null) {\n localStorage.setItem('currentLetterType', action.payload.id);\n state.letterType = state.letterTypeList.find(o => o.id === action.payload.id);\n }\n },\n\n handleCheckItemsChange: (state, action) => {\n const {\n itemsSelected,\n excludedSelected,\n type,\n checkAll\n } = action.payload;\n\n let fundersSelected = [...state[type].fundersSelected];\n\n fundersSelected.forEach(funder => {\n const findIndex = itemsSelected.indexOf(funder.id);\n\n if (findIndex === -1) {\n fundersSelected = fundersSelected.filter(o => o.id !== funder.id);\n }\n\n });\n\n itemsSelected.forEach(item => {\n const pagedListItem = state[type].pagedList.items.find(o => o.id === item);\n const existsFunder = fundersSelected.findIndex(o => o.profileId === pagedListItem?.profileId ?? '');\n\n if (pagedListItem && existsFunder === -1) {\n fundersSelected.push({\n id: pagedListItem.id,\n profileId: pagedListItem.profileId,\n foundationName: pagedListItem.foundationName,\n website: pagedListItem.website,\n foundationSourceType: pagedListItem.foundationSourceType,\n });\n }\n });\n\n state[type].itemsSelected = itemsSelected;\n state[type].excludedSelected = excludedSelected;\n state[type].checkAll = checkAll;\n state[type].fundersSelected = fundersSelected\n\n /*state[type].itemsSelected = itemsSelected;\n state[type].excludedSelected = excludedSelected;\n state[type].checkAll = checkAll;\n state[type].fundersSelected = [];\n \n itemsSelected.forEach(item => {\n const pagedItem = state[type].pagedList.items.find(o => o.id === item);\n \n state[type].fundersSelected.push({\n profileId: pagedItem.profileId,\n foundationName: pagedItem.foundationName,\n website: pagedItem.website\n });\n });*/\n },\n\n handleClear: (state, action) => {\n state.funders.checkAll = false;\n state.funders.checkAll = false;\n state.funders.itemsSelected = [];\n state.funders.excludedSelected = [];\n state.funders.fundersSelected = [];\n state.funders.pagedList = { ...initialState.funders.pagedList };\n\n state.fundersCustomDocument.checkAll = false;\n state.fundersCustomDocument.checkAll = false;\n state.fundersCustomDocument.itemsSelected = [];\n state.fundersCustomDocument.excludedSelected = [];\n state.fundersCustomDocument.fundersSelected = [];\n state.fundersCustomDocument.pagedList = { ...initialState.fundersCustomDocument.pagedList };\n state.fundersCustomDocument.flagFilter = 'All';\n\n state.letterType = { ...initialState.letterType };\n state.userProject = { ...initialState.userProject };\n state.allProjectList = [];\n },\n\n handleClosePopup: (state, action) => {\n state[action.payload].openPopupBlock = false;\n state[action.payload].openPopupDelete = false;\n state[action.payload].openPopupFavourite = false;\n state[action.payload].openPopupExportExcel = false;\n state[action.payload].openPopupExportAll = false;\n state[action.payload].openPopupPrintLabels = false;\n state[action.payload].openPopupLetterheadFooterSettings = false;\n state[action.payload].openPopupProfileSummary = false;\n },\n handleOpenDeletePopup: (state, action) => {\n state[action.payload].openPopupDelete = true;\n state[action.payload].openPopupFavourite = false;\n state[action.payload].openPopupBlock = false;\n state[action.payload].openPopupExportExcel = false;\n state[action.payload].openPopupExportAll = false;\n state[action.payload].openPopupPrintLabels = false;\n state[action.payload].openPopupLetterheadFooterSettings = false;\n state[action.payload].openPopupProfileSummary = false;\n },\n handleOpenPopupFavourites: (state, action) => {\n state[action.payload].openPopupFavourite = true;\n state[action.payload].openPopupBlock = false;\n state[action.payload].openPopupDelete = false;\n state[action.payload].openPopupExportExcel = false;\n state[action.payload].openPopupExportAll = false;\n state[action.payload].openPopupPrintLabels = false;\n state[action.payload].openPopupLetterheadFooterSettings = false;\n state[action.payload].openPopupProfileSummary = false;\n },\n handleOpenPopupExportExcel: (state, action) => {\n state[action.payload].openPopupExportExcel = true;\n state[action.payload].openPopupFavourite = false;\n state[action.payload].openPopupBlock = false;\n state[action.payload].openPopupDelete = false;\n state[action.payload].openPopupExportAll = false;\n state[action.payload].openPopupPrintLabels = false;\n state[action.payload].openPopupLetterheadFooterSettings = false;\n state[action.payload].openPopupProfileSummary = false;\n },\n handleOpenPopupExportAll: (state, action) => {\n state[action.payload].openPopupExportAll = true;\n state[action.payload].openPopupExportExcel = false;\n state[action.payload].openPopupFavourite = false;\n state[action.payload].openPopupBlock = false;\n state[action.payload].openPopupDelete = false;\n state[action.payload].openPopupPrintLabels = false;\n state[action.payload].openPopupLetterheadFooterSettings = false;\n state[action.payload].openPopupProfileSummary = false;\n },\n handleOpenPopupPrintLabels: (state, action) => {\n state[action.payload].openPopupPrintLabels = true;\n state[action.payload].openPopupExportAll = false;\n state[action.payload].openPopupExportExcel = false;\n state[action.payload].openPopupFavourite = false;\n state[action.payload].openPopupBlock = false;\n state[action.payload].openPopupDelete = false;\n state[action.payload].openPopupLetterheadFooterSettings = false;\n state[action.payload].openPopupProfileSummary = false;\n },\n handleOpenLetterheadFooterSettings: (state, action) => {\n state[action.payload].openPopupLetterheadFooterSettings = true;\n state[action.payload].openPopupPrintLabels = false;\n state[action.payload].openPopupExportAll = false;\n state[action.payload].openPopupExportExcel = false;\n state[action.payload].openPopupFavourite = false;\n state[action.payload].openPopupBlock = false;\n state[action.payload].openPopupDelete = false;\n state[action.payload].openPopupProfileSummary = false;\n },\n handleOpenProfileSummary: (state, action) => {\n state[action.payload.type].openPopupProfileSummary = true;\n state[action.payload.type].profileId = action.payload.profileId;\n state[action.payload.type].foundationSourceType = 'IRS'; //action.payload.foundationSourceType;\n\n if (action.payload.profileId.length > 10) {\n state[action.payload.type].foundationSourceType = 'CRA'\n }\n\n state[action.payload.type].openPopupLetterheadFooterSettings = false;\n state[action.payload.type].openPopupPrintLabels = false;\n state[action.payload.type].openPopupExportAll = false;\n state[action.payload.type].openPopupExportExcel = false;\n state[action.payload.type].openPopupFavourite = false;\n state[action.payload.type].openPopupBlock = false;\n state[action.payload.type].openPopupDelete = false;\n },\n handleOpenPopupBlockFunders: (state, action) => {\n state[action.payload].openPopupBlock = true;\n state[action.payload].openPopupProfileSummary = false;\n state[action.payload].openPopupLetterheadFooterSettings = false;\n state[action.payload].openPopupPrintLabels = false;\n state[action.payload].openPopupExportAll = false;\n state[action.payload].openPopupExportExcel = false;\n state[action.payload].openPopupFavourite = false;\n state[action.payload].openPopupDelete = false;\n },\n handleChangeFlagFilter: (state, action) => {\n state.fundersCustomDocument.flagFilter = action.payload;\n },\n handleChangeHeaderFooterSetting: (state, action) => {\n state.fundersCustomDocument.savedHeaderFooterSetting = action.payload;\n }\n },\n extraReducers: (builder) => {\n builder\n .addMatcher(\n projectFundersApi.endpoints.getAllProjectFunders.matchFulfilled, (state, action) => {\n state.funders.pagedList.pageNumber = action.payload.pageNumber;\n state.funders.pagedList.pageSize = action.payload.pageSize;\n state.funders.pagedList.pageCount = action.payload.pageCount;\n state.funders.pagedList.totalCount = action.payload.totalCount;\n state.funders.pagedList.orderField = action.payload.orderField;\n state.funders.pagedList.orderDirection = action.payload.orderDirection;\n state.funders.pagedList.items = action.payload.items?.map(o => ({ ...o, foundationName: startcase(o.foundationName) }));\n\n state.fetchStatus.funders = true;\n\n }\n )\n .addMatcher(\n projectFundersApi.endpoints.getAllProjectFundersCustomDocument.matchFulfilled, (state, action) => {\n state.fundersCustomDocument.pagedList.pageNumber = action.payload.pageNumber;\n state.fundersCustomDocument.pagedList.pageSize = action.payload.pageSize;\n state.fundersCustomDocument.pagedList.pageCount = action.payload.pageCount;\n state.fundersCustomDocument.pagedList.totalCount = action.payload.totalCount;\n state.fundersCustomDocument.pagedList.orderField = action.payload.orderField;\n state.fundersCustomDocument.pagedList.orderDirection = action.payload.orderDirection;\n state.fundersCustomDocument.pagedList.items = action.payload.items?.map(o => ({ ...o, foundationName: startcase(o.foundationName) }));\n\n state.fetchStatus.fundersCustomDocument = true;\n\n }\n )\n .addMatcher(\n projectFundersApi.endpoints.getAllProjectFundersCustomDocument.matchPending, (state, action) => {\n state.fetchStatus.fundersCustomDocument = false;\n }\n )\n .addMatcher(\n projectFundersApi.endpoints.getAllProjectFunders.matchPending, (state, action) => {\n state.fetchStatus.funders = false;\n }\n )\n\n }\n});\n\nexport const {\n handleChangeUserProject,\n handleFillAllProject,\n handleChangeLetterType,\n handleCheckItemsChange,\n handleClosePopup,\n handleOpenDeletePopup,\n handleOpenPopupFavourites,\n handleOpenPopupExportExcel,\n handleOpenPopupExportAll,\n handleOpenPopupPrintLabels,\n handleOpenLetterheadFooterSettings,\n handleOpenProfileSummary,\n handleOpenPopupBlockFunders,\n handleClear,\n handleChangeFlagFilter,\n handleChangeHeaderFooterSetting\n} = grantSecretarySlice.actions;\n\nexport default grantSecretarySlice.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { favoriteFundersApi } from \"Services/FavoriteFundersService\";\nimport { favoritesApi } from \"Services/FavoritesService\";\nimport startcase from \"utils/startcase\";\n\nexport const initialState = {\n selectedFavorite: {\n id: null,\n favoriteName: ''\n },\n popupFavorites: {\n open: false,\n mode: 'insert'\n },\n firstProfileId: '',\n openPopupDuplicateFavorites: false,\n favoritesPagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'favoriteName',\n orderDirection: 'asc',\n items: []\n },\n favoritesPagedSharedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'favoriteName',\n orderDirection: 'asc',\n items: []\n },\n favoriteFundersPagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'isQualified',\n orderDirection: 'desc',\n items: []\n },\n cacheFavoriteFundersList: [],\n fetchStatus: {\n favoritesPagedList: false,\n favoritesPagedSharedList: false,\n favoriteFundersPagedList: false\n }\n\n};\n\nconst favoritesSlice = createSlice({\n name: \"favorites-page\",\n initialState,\n reducers: {\n handleSelectFavorite: (state, action) => {\n state.selectedFavorite.id = action.payload.id;\n state.selectedFavorite.favoriteName = action.payload.favoriteName;\n },\n handleCreateNewFavorites: (state, action) => {\n state.popupFavorites.open = true;\n state.popupFavorites.mode = 'insert'\n },\n handleEditFavorites: (state, action) => {\n state.popupFavorites.open = true;\n state.popupFavorites.mode = 'edit';\n state.selectedFavorite.id = action.payload.id;\n state.selectedFavorite.favoriteName = action.payload.favoriteName;\n },\n handleClosePopupFavorites: (state, action) => {\n state.popupFavorites.open = false;\n state.popupFavorites.mode = 'insert';\n state.openPopupDuplicateFavorites = false;\n },\n handleConfirmEditFavorites: (state, action) => {\n state.selectedFavorite.favoriteName = action.payload.favoriteName;\n state.favoritesPagedList.items.forEach(item => {\n if (item.id === action.payload.id) {\n item.favoriteName = action.payload.favoriteName;\n return;\n }\n });\n },\n handleOpenPopupDuplicateFavorites: (state, action) => {\n state.openPopupDuplicateFavorites = true;\n },\n handleClearFavoriteFundersList: (state, action) => {\n state.favoriteFundersPagedList = { ...initialState.favoriteFundersPagedList };\n },\n handleResetPage: (state, action) => {\n state.favoriteFundersPagedList.pageNumber = 0;\n state.favoriteFundersPagedList.pageSize = 10;\n }\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n favoritesApi.endpoints.getFavoritesPagedList.matchFulfilled, (state, action) => {\n state.favoritesPagedList.pageNumber = action.payload.pageNumber;\n state.favoritesPagedList.pageSize = action.payload.pageSize;\n state.favoritesPagedList.pageCount = action.payload.pageCount;\n state.favoritesPagedList.totalCount = action.payload.totalCount;\n state.favoritesPagedList.orderField = action.payload.orderField;\n state.favoritesPagedList.orderDirection = action.payload.orderDirection;\n state.favoritesPagedList.items = action.payload.items;\n\n state.fetchStatus.favoritesPagedList = true;\n }).addMatcher(\n favoritesApi.endpoints.getFavoritesPagedSharedList.matchFulfilled, (state, action) => {\n state.favoritesPagedSharedList.pageNumber = action.payload.pageNumber;\n state.favoritesPagedSharedList.pageSize = action.payload.pageSize;\n state.favoritesPagedSharedList.pageCount = action.payload.pageCount;\n state.favoritesPagedSharedList.totalCount = action.payload.totalCount;\n state.favoritesPagedSharedList.orderField = action.payload.orderField;\n state.favoritesPagedSharedList.orderDirection = action.payload.orderDirection;\n state.favoritesPagedSharedList.items = action.payload.items;\n\n state.fetchStatus.favoritesPagedSharedList = true;\n }).addMatcher(\n favoriteFundersApi.endpoints.getFavoriteFundersPagedList.matchFulfilled, (state, action) => {\n state.favoriteFundersPagedList.pageNumber = action.payload.pageNumber;\n state.favoriteFundersPagedList.pageSize = action.payload.pageSize;\n state.favoriteFundersPagedList.pageCount = action.payload.pageCount;\n state.favoriteFundersPagedList.totalCount = action.payload.totalCount;\n state.favoriteFundersPagedList.orderField = action.payload.orderField;\n state.favoriteFundersPagedList.orderDirection = action.payload.orderDirection;\n state.favoriteFundersPagedList.items = action.payload.items?.map(o => ({ ...o, foundationName: startcase(o.foundationName) }));\n\n state.fetchStatus.favoriteFundersPagedList = true;\n\n\n if (action.payload.pageNumber === 0 && action.payload.items.length > 0) {\n state.firstProfileId = action.payload.items[0]?.profileId;\n }\n\n state.favoriteFundersPagedList.items.forEach(item => {\n const favFunder = state.cacheFavoriteFundersList.find(item2 => item.profileId === item2.profileId);\n if (!favFunder) {\n state.cacheFavoriteFundersList.push(item);\n }\n });\n }).addMatcher(favoriteFundersApi.endpoints.getFavoriteFundersPagedList.matchPending, (state, action) => {\n state.fetchStatus.favoriteFundersPagedList = false;\n }).addMatcher(favoritesApi.endpoints.getFavoritesPagedList.matchPending, (state, action) => {\n state.fetchStatus.favoritesPagedList = false;\n }).addMatcher(favoritesApi.endpoints.getFavoritesPagedSharedList.matchPending, (state, action) => {\n state.fetchStatus.favoritesPagedSharedList = false;\n })\n }\n\n});\n\nexport const {\n handleSelectFavorite,\n handleOpenPopupFavorites,\n handleEditFavorites,\n handleCreateNewFavorites,\n handleClosePopupFavorites,\n handleConfirmEditFavorites,\n handleOpenPopupDuplicateFavorites,\n handleClearFavoriteFundersList,\n handleResetPage\n} = favoritesSlice.actions;\n\nexport default favoritesSlice.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { couponApi } from \"Services/CouponService\";\n\nexport const initialState = {\n loadingList: false,\n openCreateCouponDialog: false,\n subscriptionPlanList: [],\n selectedSubscriptionPlanList: [],\n pagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'name',\n orderDirection: 'asc',\n items: []\n },\n couponValues: {\n id: \"\",\n subscriptionPlanLabelList: [],\n isPaused: false,\n name: {\n value: \"\",\n error: \"\"\n },\n code: {\n value: \"\",\n error: \"\"\n },\n expirationDate: {\n value: null,\n error: \"\"\n },\n subscriptionPlanId: {\n value: null,\n error: \"\"\n },\n toggleExtraTime: {\n value: false,\n error: \"\"\n },\n toggleDiscount: {\n value: false,\n error: \"\"\n },\n toggleTemplate: {\n value: false,\n error: \"\"\n },\n extraTime: {\n value: null,\n error: \"\"\n },\n discount: {\n value: null,\n error: \"\"\n },\n }\n};\n\nconst manageCouponSlice = createSlice({\n name: \"manage-coupons\",\n initialState,\n reducers: {\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state.couponValues[field].error = errors[0];\n });\n },\n handleOpenForm: (state, action) => {\n if(action.payload === false) {\n state.couponValues = initialState.couponValues;\n state.selectedSubscriptionPlanList = [];\n } \n state.openCreateCouponDialog = action.payload;\n },\n handleUpdateCouponValues: (state, action) => {\n const { key, value } = action.payload;\n state.couponValues[key].value = value;\n state.couponValues[key].error = \"\";\n },\n handleToggleUpdate: (state, action) => {\n \n const { toggleToOn, toggleToOff, isSales, value } = action.payload;\n var toggleToOnValue = state.couponValues[toggleToOn].value;\n if (isSales) {\n state.couponValues[toggleToOn].value = !toggleToOnValue;\n state.couponValues[toggleToOn].error = \"\";\n \n state.couponValues[toggleToOff].value = toggleToOnValue;\n state.couponValues[toggleToOff].error = \"\";\n } else {\n //when adm, the both toggles can be false, but the both cant be true\n if (state.couponValues[toggleToOff].value === true && value === true) {\n state.couponValues[toggleToOn].value = value;\n state.couponValues[toggleToOn].error = \"\";\n\n state.couponValues[toggleToOff].value = !value;\n state.couponValues[toggleToOn].error = \"\";\n } else {\n state.couponValues[toggleToOn].value = value;\n state.couponValues[toggleToOn].error = \"\";\n }\n }\n \n },\n handleSetCouponValues: (state, action) => {\n const { \n id, \n name, \n code, \n expirationDate, \n isExtraTime, \n isDiscount, \n extraMonths, \n discountPercentual, \n subscriptionPlanLabelList, \n isPaused,\n isTemplate,\n } = action.payload;\n\n state.selectedSubscriptionPlanList = subscriptionPlanLabelList;\n state.couponValues = {\n id,\n isPaused,\n subscriptionPlanLabelList,\n name: {\n value: name,\n error: \"\"\n },\n code: {\n value: code,\n error: \"\"\n },\n expirationDate: {\n value: expirationDate,\n error: \"\"\n },\n toggleExtraTime: {\n value: isExtraTime,\n error: \"\"\n },\n toggleDiscount: {\n value: isDiscount,\n error: \"\"\n },\n toggleTemplate: {\n value: isTemplate,\n error: \"\"\n },\n extraTime: {\n value: extraMonths,\n error: \"\"\n },\n discount: {\n value: discountPercentual,\n error: \"\"\n }\n };\n },\n handleCheckSubscriptionPlans: (state, action) => {\n state.selectedSubscriptionPlanList = action.payload;\n },\n handleClearSubscriptionPlanList: (state, action) => {\n state.selectedSubscriptionPlanList = [];\n }\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n couponApi.endpoints.getCouponPagedList.matchFulfilled, (state, action) => {\n state.loadingList = false;\n state.pagedList.pageNumber = action.payload.pageNumber;\n state.pagedList.pageSize = action.payload.pageSize;\n state.pagedList.pageCount = action.payload.pageCount;\n state.pagedList.totalCount = action.payload.totalCount;\n state.pagedList.orderField = action.payload.orderField;\n state.pagedList.orderDirection = action.payload.orderDirection;\n state.pagedList.items = action.payload.items;\n }\n )\n .addMatcher(\n couponApi.endpoints.getCouponPagedList.matchPending, (state, action) => {\n state.loadingList = true;\n }\n )\n .addMatcher(\n couponApi.endpoints.getCouponPagedList.matchRejected, (state, action) => {\n state.loadingList = false;\n }\n )\n .addMatcher(couponApi.endpoints.getCouponPlans.matchFulfilled, (state, action) => {\n state.subscriptionPlanList = action.payload?.map(plan => ({\n id: plan.id,\n value: plan.subscriptionPlanName,\n label: plan.planDescription\n })) ?? [];\n });\n }\n\n});\n\nexport const {\n handleModelErrors,\n handleOpenForm,\n handleSetCouponValues,\n handleToggleUpdate,\n handleUpdateCouponValues,\n handleCheckSubscriptionPlans,\n handleClearSubscriptionPlanList\n} = manageCouponSlice.actions;\n\nexport default manageCouponSlice.reducer;","import { createSlice } from \"@reduxjs/toolkit\";\nimport { deadlineApi } from \"Services/DeadlineService\";\n\nexport const initialState = {\n loadingList: false,\n importDialogPopup: {\n open: false,\n fileToImport: null,\n },\n openUpdateDialog: false,\n pagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'foundationName',\n orderDirection: 'asc',\n items: []\n },\n deadlineValues: {\n id: \"\",\n foundationName: {\n value: \"\",\n error: \"\"\n },\n category: {\n value: \"\",\n error: \"\"\n },\n ein: {\n value: null,\n error: \"\"\n },\n country: {\n value: null,\n error: \"\"\n },\n url: {\n value: false,\n error: \"\"\n },\n grantAmount: {\n value: null,\n error: \"\"\n },\n deadlineDate: {\n value: null,\n error: \"\"\n },\n upcoming: {\n value: null,\n error: \"\"\n },\n description: {\n value: null,\n error: \"\"\n },\n }\n};\n\nconst manageDeadlineSlice = createSlice({\n name: \"manage-deadlines\",\n initialState,\n reducers: {\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state.deadlineValues[field].error = errors[0];\n });\n },\n handleSetImportDialogPopup: (state, action) => {\n state.importDialogPopup.open = action.payload.fileToImport;\n state.importDialogPopup.fileToImport = action.payload.fileToImport\n },\n handleOpenForm: (state, action) => {\n if(action.payload === false) {\n state.deadlineValues = initialState.deadlineValues;\n } \n state.openUpdateDialog = action.payload;\n },\n handleUpdateDeadlineValues: (state, action) => {\n const { key, value } = action.payload;\n state.deadlineValues[key].value = value;\n state.deadlineValues[key].error = \"\";\n },\n handleSetDeadlineValues: (state, action) => {\n const { \n id, \n foundationName, \n category, \n ein, \n country, \n url, \n grantAmount, \n deadlineDate, \n upcoming, \n description,\n } = action.payload;\n\n state.deadlineValues = {\n id,\n foundationName: {\n value: foundationName,\n error: \"\"\n },\n category: {\n value: category,\n error: \"\"\n },\n ein: {\n value: ein,\n error: \"\"\n },\n country: {\n value: country,\n error: \"\"\n },\n url: {\n value: url,\n error: \"\"\n },\n grantAmount: {\n value: grantAmount,\n error: \"\"\n },\n deadlineDate: {\n value: deadlineDate,\n error: \"\"\n },\n upcoming: {\n value: upcoming,\n error: \"\"\n },\n description: {\n value: description,\n error: \"\"\n },\n };\n },\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n deadlineApi.endpoints.getDeadlinePagedList.matchFulfilled, (state, action) => {\n state.loadingList = false;\n state.pagedList.pageNumber = action.payload.pageNumber;\n state.pagedList.pageSize = action.payload.pageSize;\n state.pagedList.pageCount = action.payload.pageCount;\n state.pagedList.totalCount = action.payload.totalCount;\n state.pagedList.orderField = action.payload.orderField;\n state.pagedList.orderDirection = action.payload.orderDirection;\n state.pagedList.items = action.payload.items;\n }\n )\n .addMatcher(\n deadlineApi.endpoints.getDeadlinePagedList.matchPending, (state, action) => {\n state.loadingList = true;\n }\n )\n .addMatcher(\n deadlineApi.endpoints.getDeadlinePagedList.matchRejected, (state, action) => {\n state.loadingList = false;\n }\n )\n }\n});\n\nexport const {\n handleModelErrors,\n handleSetImportDialogPopup,\n handleOpenForm,\n handleSetDeadlineValues,\n handleUpdateDeadlineValues,\n} = manageDeadlineSlice.actions;\n\nexport default manageDeadlineSlice.reducer;","import { createSlice } from \"@reduxjs/toolkit\";\nimport { projectFundersApi } from \"Services/ProjectFundersService\";\nimport startcase from \"utils/startcase\";\n\nexport const initialState = {\n userProject: {\n id: null,\n value: null,\n label: null\n },\n allProjectList: [],\n letterTypeList: [\n { id: 'Inquiry', value: 'Inquiry', label: 'Letter of Inquiry' },\n { id: 'Proposal', value: 'Proposal', label: 'Proposal' },\n { id: 'ThankYou', value: 'ThankYou', label: 'Thank You Letter' },\n { id: 'ImpactReport', value: 'ImpactReport', label: 'Impact Report Letter' },\n { id: 'CustomLetter', value: 'CustomLetter', label: 'Custom Letter' },\n ],\n letterType: {\n id: '',\n value: '',\n label: ''\n },\n funders: {\n profileId: '',\n foundationSourceType: '',\n flagFilter: 'All',\n documentType: 'All',\n foundationStatus: 'All',\n checkAll: false,\n itemsSelected: [],\n excludedSelected: [],\n fundersSelected: [],\n pagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'foundationName',\n orderDirection: 'asc',\n items: []\n },\n openPopupFavourite: false,\n openPopupDelete: false,\n openPopupBlock: false,\n openPopupExportExcel: false,\n openPopupExportAll: false,\n openPopupPrintLabels: false,\n openPopupLetterheadFooterSettings: false,\n openPopupProfileSummary: false,\n },\n profileSummary: {\n profileName: 'Chesed Charity Foundation',\n lastReportYear: 2021,\n registerYear: 1973,\n stateOrProvince: 'ON',\n onlineApplication: 'http://www.torontofoundation.ca',\n webSite: 'http://www.torontofoundation.ca',\n phoneNumber: '(416)783-5395',\n fullAddress: '87 SULTANA AVE TORONTO ON M6A 1T4',\n summary: {\n avgGrantSize: 1488490,\n grantsState: 608,\n totalAsserts: 245068,\n avgGrantsAnnually: 73266744\n },\n countNotes: 2,\n },\n labelList: [\n {\n id: 'Avery5161',\n value: 'Avery 5161 (2 columns, 10 rows)',\n label: 'Avery 5161 (2 columns, 10 rows)'\n },\n {\n id: 'Avery5163',\n value: 'Avery 5163 (2 columns, 5 rows)',\n label: 'Avery 5163 (2 columns, 5 rows)'\n },\n {\n id: 'Avery5167',\n value: 'Avery 5167 (4 columns, 20 rows, for return addresses)',\n label: 'Avery 5167 (4 columns, 20 rows, for return addresses)'\n },\n {\n id: 'Avery6572',\n value: 'Avery 6572 (3 columns, 5 rows)',\n label: 'Avery 6572 (3 columns, 5 rows)'\n },\n {\n id: 'Avery6871',\n value: 'Avery 6871 (3 columns, 6 rows)',\n label: 'Avery 6871 (3 columns, 6 rows)'\n },\n {\n id: 'Avery7160',\n value: 'Avery 7160 (3 columns, 7 rows)',\n label: 'Avery 7160 (3 columns, 7 rows)'\n },\n {\n id: 'Envelope',\n value: 'Envelope',\n label: 'Envelope'\n }\n ],\n};\n\nconst grantSecretarySliceV2 = createSlice({\n name: \"grant-secretary-v2\",\n initialState,\n reducers: {\n handleChangeUserProject: (state, action) => {\n if (action.payload !== null) {\n state.userProject = action.payload;\n }\n },\n handleFillAllProject: (state, action) => {\n state.allProjectList = action.payload;\n },\n handleChangeLetterType: (state, action) => {\n if (action.payload !== null) {\n state.letterType = state.letterTypeList.find(o => o.id === action.payload.id);\n }\n },\n\n handleCheckItemsChange: (state, action) => {\n const {\n itemsSelected,\n excludedSelected,\n type,\n checkAll\n } = action.payload;\n\n let fundersSelected = [...state[type].fundersSelected];\n\n fundersSelected.forEach(funder => {\n const findIndex = itemsSelected.indexOf(funder.id);\n\n if (findIndex === -1) {\n fundersSelected = fundersSelected.filter(o => o.id !== funder.id);\n }\n\n });\n\n itemsSelected.forEach(item => {\n const pagedListItem = state[type].pagedList.items.find(o => o.id === item);\n const existsFunder = fundersSelected.findIndex(o => o.profileId === pagedListItem?.profileId ?? '');\n\n if (pagedListItem && existsFunder === -1) {\n fundersSelected.push(pagedListItem);\n }\n });\n\n state[type].itemsSelected = itemsSelected;\n state[type].excludedSelected = excludedSelected;\n state[type].checkAll = checkAll;\n state[type].fundersSelected = fundersSelected\n },\n\n handleClear: (state, action) => {\n state.funders.checkAll = false;\n state.funders.checkAll = false;\n state.funders.itemsSelected = [];\n state.funders.excludedSelected = [];\n state.funders.fundersSelected = [];\n state.funders.pagedList = { ...initialState.funders.pagedList };\n state.funders.flagFilter = 'All';\n state.funders.documentType = 'All';\n state.funders.foundationStatus = 'All';\n\n state.letterType = { ...initialState.letterType };\n state.userProject = { ...initialState.userProject };\n state.allProjectList = [];\n },\n\n handleClosePopup: (state, action) => {\n state[action.payload].openPopupBlock = false;\n state[action.payload].openPopupDelete = false;\n state[action.payload].openPopupFavourite = false;\n state[action.payload].openPopupExportExcel = false;\n state[action.payload].openPopupExportAll = false;\n state[action.payload].openPopupPrintLabels = false;\n state[action.payload].openPopupLetterheadFooterSettings = false;\n state[action.payload].openPopupProfileSummary = false;\n },\n handleOpenDeletePopup: (state, action) => {\n state[action.payload].openPopupDelete = true;\n state[action.payload].openPopupFavourite = false;\n state[action.payload].openPopupBlock = false;\n state[action.payload].openPopupExportExcel = false;\n state[action.payload].openPopupExportAll = false;\n state[action.payload].openPopupPrintLabels = false;\n state[action.payload].openPopupLetterheadFooterSettings = false;\n state[action.payload].openPopupProfileSummary = false;\n },\n handleOpenPopupFavourites: (state, action) => {\n state[action.payload].openPopupFavourite = true;\n state[action.payload].openPopupBlock = false;\n state[action.payload].openPopupDelete = false;\n state[action.payload].openPopupExportExcel = false;\n state[action.payload].openPopupExportAll = false;\n state[action.payload].openPopupPrintLabels = false;\n state[action.payload].openPopupLetterheadFooterSettings = false;\n state[action.payload].openPopupProfileSummary = false;\n },\n handleOpenPopupExportExcel: (state, action) => {\n state[action.payload].openPopupExportExcel = true;\n state[action.payload].openPopupFavourite = false;\n state[action.payload].openPopupBlock = false;\n state[action.payload].openPopupDelete = false;\n state[action.payload].openPopupExportAll = false;\n state[action.payload].openPopupPrintLabels = false;\n state[action.payload].openPopupLetterheadFooterSettings = false;\n state[action.payload].openPopupProfileSummary = false;\n },\n handleOpenPopupExportAll: (state, action) => {\n state[action.payload].openPopupExportAll = true;\n state[action.payload].openPopupExportExcel = false;\n state[action.payload].openPopupFavourite = false;\n state[action.payload].openPopupBlock = false;\n state[action.payload].openPopupDelete = false;\n state[action.payload].openPopupPrintLabels = false;\n state[action.payload].openPopupLetterheadFooterSettings = false;\n state[action.payload].openPopupProfileSummary = false;\n },\n handleOpenPopupPrintLabels: (state, action) => {\n state[action.payload].openPopupPrintLabels = true;\n state[action.payload].openPopupExportAll = false;\n state[action.payload].openPopupExportExcel = false;\n state[action.payload].openPopupFavourite = false;\n state[action.payload].openPopupBlock = false;\n state[action.payload].openPopupDelete = false;\n state[action.payload].openPopupLetterheadFooterSettings = false;\n state[action.payload].openPopupProfileSummary = false;\n },\n handleOpenLetterheadFooterSettings: (state, action) => {\n state[action.payload].openPopupLetterheadFooterSettings = true;\n state[action.payload].openPopupPrintLabels = false;\n state[action.payload].openPopupExportAll = false;\n state[action.payload].openPopupExportExcel = false;\n state[action.payload].openPopupFavourite = false;\n state[action.payload].openPopupBlock = false;\n state[action.payload].openPopupDelete = false;\n state[action.payload].openPopupProfileSummary = false;\n },\n handleOpenProfileSummary: (state, action) => {\n state[action.payload.type].openPopupProfileSummary = true;\n state[action.payload.type].profileId = action.payload.profileId;\n state[action.payload.type].foundationSourceType = 'IRS'; //action.payload.foundationSourceType;\n\n if (action.payload.profileId.length > 10) {\n state[action.payload.type].foundationSourceType = 'CRA'\n }\n\n state[action.payload.type].openPopupLetterheadFooterSettings = false;\n state[action.payload.type].openPopupPrintLabels = false;\n state[action.payload.type].openPopupExportAll = false;\n state[action.payload.type].openPopupExportExcel = false;\n state[action.payload.type].openPopupFavourite = false;\n state[action.payload.type].openPopupBlock = false;\n state[action.payload.type].openPopupDelete = false;\n },\n handleOpenPopupBlockFunders: (state, action) => {\n state[action.payload].openPopupBlock = true;\n state[action.payload].openPopupProfileSummary = false;\n state[action.payload].openPopupLetterheadFooterSettings = false;\n state[action.payload].openPopupPrintLabels = false;\n state[action.payload].openPopupExportAll = false;\n state[action.payload].openPopupExportExcel = false;\n state[action.payload].openPopupFavourite = false;\n state[action.payload].openPopupDelete = false;\n },\n handleChangeFlagFilter: (state, action) => {\n state.funders.flagFilter = action.payload;\n },\n handleFundersChangeLetterType: (state, action) => {\n state.funders.documentType = action.payload;\n },\n handleChangeDocumentType: (state, action) => {\n state.funders.foundationStatus = action.payload;\n },\n },\n extraReducers: (builder) => {\n builder\n .addMatcher(\n projectFundersApi.endpoints.getAllProjectFundersDocument.matchFulfilled, (state, action) => {\n state.funders.pagedList.pageNumber = action.payload.pageNumber;\n state.funders.pagedList.pageSize = action.payload.pageSize;\n state.funders.pagedList.pageCount = action.payload.pageCount;\n state.funders.pagedList.totalCount = action.payload.totalCount;\n state.funders.pagedList.orderField = action.payload.orderField;\n state.funders.pagedList.orderDirection = action.payload.orderDirection;\n state.funders.pagedList.items = action.payload.items?.map(o => ({ ...o, foundationName: startcase(o.foundationName) }));\n }\n )\n }\n});\n\nexport const {\n handleChangeUserProject,\n handleFillAllProject,\n handleChangeLetterType,\n handleCheckItemsChange,\n handleClosePopup,\n handleOpenDeletePopup,\n handleOpenPopupFavourites,\n handleOpenPopupExportExcel,\n handleOpenPopupExportAll,\n handleOpenPopupPrintLabels,\n handleOpenLetterheadFooterSettings,\n handleOpenProfileSummary,\n handleOpenPopupBlockFunders,\n handleClear,\n handleChangeFlagFilter,\n handleFundersChangeLetterType,\n handleChangeDocumentType,\n} = grantSecretarySliceV2.actions;\n\nexport default grantSecretarySliceV2.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { publicProfileApi } from \"Services/PublicProfilePageService\";\nimport { countryApi } from \"Services/CountryService\";\nimport { getYearList } from \"utils/dates\";\n\nexport const initialState = {\n country: '',\n profileId: '',\n gifts: {\n isLoadingGift: false,\n countyList: [],\n sectorList: [],\n stemmingSearch: false,\n selectedFilters: {\n country: [],\n provinceOrState: [],\n county: [],\n city: [],\n years: [],\n sectors: [],\n },\n provinceOrStateList: [],\n cityList: [],\n yearList: getYearList(),\n giftList: {\n countryList: [],\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'donationdate',\n orderDirection: 'desc',\n items: [],\n },\n },\n directors: {\n items: [],\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'directorname',\n orderDirection: 'asc',\n },\n charts: {\n rangeSector: {},\n rangeAmount: {},\n provinceList: [],\n }\n};\n\nconst publicFoundationProfileSlice = createSlice({\n name: \"public-foundation-profile\",\n initialState,\n reducers: {\n setProfileId: (state, action) => {\n state.profileId = action.payload;\n },\n setCountry: (state, action) => {\n state.country = action.payload;\n },\n handleChangeFilter: (state, action) => {\n const { key, value } = action.payload;\n state.gifts.selectedFilters[key] = value;\n },\n handleChangeStemmingSearch: (state, action) => {\n state.gifts.stemmingSearch = action.payload;\n },\n handleClearGifts: (state, action) => {\n state.gifts.selectedFilters = initialState.gifts.selectedFilters;\n\n state.gifts.stemmingSearch = true;\n\n state.giftList = initialState.gifts.giftList;\n }\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n publicProfileApi.endpoints.getPublicCounties.matchFulfilled, (state, action) => {\n\n state.gifts.countyList = action.payload.map(county => ({\n id: county.key,\n label: county.label,\n value: county.value,\n secondaryAction: county.provinceOrStateCode,\n }));\n }\n )\n .addMatcher(\n publicProfileApi.endpoints.getPublicGiftsPagedList.matchPending, (state, action) => {\n state.gifts.isLoadingGift = true;\n }\n )\n .addMatcher(\n publicProfileApi.endpoints.getPublicGiftsPagedList.matchRejected, (state, action) => {\n state.gifts.isLoadingGift = false;\n }\n )\n .addMatcher(\n publicProfileApi.endpoints.getPublicGiftsPagedList.matchFulfilled, (state, action) => {\n state.gifts.isLoadingGift = false;\n state.gifts.giftList = action.payload;\n }\n )\n .addMatcher(\n countryApi.endpoints.getCountryByCode.matchFulfilled, (state, action) => {\n state.gifts.provinceOrStateList = action.payload.provinceOrStateList.map(provinceOrState => ({\n id: provinceOrState.id,\n value: provinceOrState.code,\n label: provinceOrState.description,\n }));\n }\n )\n .addMatcher(\n publicProfileApi.endpoints.getPublicSector.matchFulfilled, (state, action) => {\n state.gifts.sectorList = action.payload.map(item => ({\n id: item.id,\n value: item.sectorName,\n label: item.sectorName,\n }));\n }\n )\n .addMatcher(\n countryApi.endpoints.getCityListByProvinceOrStates.matchFulfilled, (state, action) => {\n state.gifts.cityList = action.payload.map(city => ({\n id: city.id,\n value: city.name,\n label: city.name,\n secondaryAction: city.provinceOrStateCode,\n }));\n }\n )\n .addMatcher(\n publicProfileApi.endpoints.getPublicDirectorsPagedList.matchFulfilled, (state, action) => {\n state.directors = action.payload;\n }\n )\n .addMatcher(\n publicProfileApi.endpoints.getPublicChartProvinceList.matchFulfilled, (state, action) => {\n state.charts.provinceList = action.payload;\n }\n )\n .addMatcher(\n publicProfileApi.endpoints.getPublicRangeAmountList.matchFulfilled, (state, action) => {\n state.charts.rangeAmount = action.payload;\n }\n )\n .addMatcher(\n publicProfileApi.endpoints.getPublicRangeSectorList.matchFulfilled, (state, action) => {\n state.charts.rangeSector = action.payload;\n }\n )\n }\n});\n\nexport const {\n handleChangeFilter,\n handleChangeStemmingSearch,\n handleClearGifts,\n setCountry,\n setProfileId\n} = publicFoundationProfileSlice.actions;\n\nexport default publicFoundationProfileSlice.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { subscriptionPlanApi } from 'Services/SubscriptionPlanService'\nimport { countryApi } from \"Services/CountryService\";\nimport { adminApi } from \"Services/AdminService\";\n\nexport const initialState = {\n roleList: ['Admin', 'User', 'SubUser', 'Supervisor', 'Member', 'Demo', 'Sales', 'SuperAdmin', 'IT'],\n additionalUsersList: [0,1,2,3,4,5,10,20],\n subscriptionPlanList: [],\n countryList: [],\n selectedCountry: {\n id: null,\n code: null,\n description: null,\n provinceOrStateList: []\n },\n selectedProvinceOrState: {\n id: null,\n code: null,\n description: null,\n },\n firstName: {\n value: '',\n error: ''\n },\n lastName: {\n value: '',\n error: ''\n },\n phoneNumber: {\n value: '',\n error: ''\n },\n\n userName: {\n value: '',\n error: ''\n },\n email: {\n value: '',\n error: ''\n },\n subscriptionPlanName: {\n value: '',\n error: ''\n },\n userRole: {\n value: '',\n error: ''\n },\n companyName: {\n value: '',\n error: ''\n },\n addressLine: {\n value: '',\n error: ''\n },\n addressLine2: {\n value: '',\n error: ''\n },\n city: {\n value: '',\n error: ''\n },\n provinceOrState: {\n value: '',\n error: ''\n },\n postalCode: {\n value: '',\n error: ''\n },\n country: {\n value: '',\n error: ''\n },\n additionalUsers: {\n value: '',\n error: ''\n },\n businessEin: {\n value: '',\n error: ''\n },\n startDay:{\n value: '',\n error: ''\n },\n isImporting: false,\n pipedrivePersonCode: null,\n pipedriveOrganizationCode: null,\n processPayment: false,\n openPopupPayment: false\n};\n\nconst createAccountSlice = createSlice({\n name: \"create-account\",\n initialState,\n reducers: {\n handleChange: (state, action) => {\n state[action.payload.field].error = '';\n state[action.payload.field].value = action.payload.value; \n },\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state[field].error = errors[0];\n });\n },\n handleChangeSubscriptionPlan: (state, action) => {\n state.subscriptionPlanName.value = action.payload;\n state.subscriptionPlanName.error = '';\n state.additionalUsers.value = state.subscriptionPlanList.find(value => (value.subscriptionPlanName === action.payload)).amountUsers;\n state.additionalUsers.error = '';\n },\n handleChangeCountry: (state, action) => {\n state.selectedCountry = state.countryList.find(o => o.description === action.payload);\n state.country.value = state.countryList.find(o => o.description === action.payload).description;\n state.country.error = '';\n state.selectedProvinceOrState = initialState.selectedProvinceOrState;\n state.provinceOrState = initialState.provinceOrState;\n },\n handleChangeProvinceOrState: (state, action) => {\n if (action.payload?.value) {\n state.selectedProvinceOrState = state.selectedCountry.provinceOrStateList.find(o => o.description === action.payload.value || '');\n state.provinceOrState.value = state.selectedCountry.provinceOrStateList.find(o => o.description === action.payload.value || '').description;\n }\n },\n handleFillCountryAndState: (state, action) => {\n\n const selectedCountry = state.countryList.find(o => o.description === state.country.value);\n\n if (selectedCountry) {\n state.selectedCountry = selectedCountry;\n const selectedProvinceOrState = selectedCountry.provinceOrStateList.find(o => o.description === state.provinceOrState.value);\n if (selectedProvinceOrState) {\n state.selectedProvinceOrState = selectedProvinceOrState;\n }\n }\n },\n handleChangeProcessPayment: (state, action) => {\n state.processPayment = action.payload;\n },\n \n handleChangeScheduleStartDay:(state, action) => {\n state.scheduleStartDay = action.payload;\n\n }, \n handleOpenPopupPayment: (state, action) => {\n state.openPopupPayment = true;\n },\n handleClosePopupPayment: (state, action) => {\n state.openPopupPayment = false;\n },\n clearErrors: (state, action) => {\n Object.keys(initialState).forEach(field => {\n if (state[field]?.error !== undefined) {\n state[field].error = ''; \n }\n });\n },\n clearForm: (state, action) => {\n state.firstName.value = '';\n state.firstName.error = '';\n\n state.lastName.value = '';\n state.lastName.error = '';\n \n state.phoneNumber.value = '';\n state.phoneNumber.error = '';\n\n state.userName.value = '';\n state.userName.error = '';\n\n state.email.value = '';\n state.email.error = '';\n\n state.subscriptionPlanName.value = '';\n state.subscriptionPlanName.error = '';\n\n state.userRole.value = '';\n state.userRole.error = '';\n\n state.companyName.value = '';\n state.companyName.error = '';\n\n state.businessEin.value = '';\n state.businessEin.error = '';\n \n state.addressLine.value = '';\n state.addressLine.error = '';\n\n state.addressLine2.value = '';\n state.addressLine2.error = '';\n\n state.city.value = '';\n state.city.error = '';\n\n state.provinceOrState.value = '';\n state.provinceOrState.error = '';\n\n state.postalCode.value = '';\n state.postalCode.error = '';\n\n state.country.value = '';\n state.country.error = '';\n\n state.selectedProvinceOrState = initialState.selectedProvinceOrState;\n state.pipedriveOrganizationCode = null;\n state.pipedrivePersonCode = null;\n state.processPayment = false;\n state.openPopupPayment = false;\n\n state.startDay.value = '';\n state.startDay.error = '';\n\n state.scheduleStartDay = false;\n },\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n subscriptionPlanApi.endpoints.getPlans.matchFulfilled, (state, action) => {\n state.subscriptionPlanList = action.payload;\n }\n )\n .addMatcher(\n countryApi.endpoints.getCountryList.matchFulfilled, (state, action) => {\n state.countryList = action.payload;\n }\n )\n .addMatcher(\n adminApi.endpoints.importPipedriveOrganization.matchFulfilled, (state, action) => {\n\n state.isImporting = false;\n\n state.firstName.value = action.payload.firstName || '';\n state.firstName.error = '';\n\n state.lastName.value = action.payload.lastName || '';;\n state.lastName.error = '';\n \n state.phoneNumber.value = action.payload.phoneNumber || '';;\n state.phoneNumber.error = '';\n\n state.userName.value = action.payload.email || '';;\n state.userName.error = '';\n\n state.email.value = action.payload.email || '';;\n state.email.error = '';\n\n state.subscriptionPlanName.value = '';\n state.subscriptionPlanName.error = '';\n\n state.userRole.value = ''\n state.userRole.error = '';\n\n state.companyName.value = action.payload.companyName || '';;\n state.companyName.error = '';\n\n state.businessEin.value = action.payload.businessEin || '';;\n state.businessEin.error = '';\n \n state.addressLine.value = action.payload.addressLine || '';;\n state.addressLine.error = '';\n\n state.addressLine2.value = '';\n state.addressLine2.error = '';\n\n state.city.value = action.payload.city || '';;\n state.city.error = '';\n\n state.provinceOrState.value = action.payload.provinceOrState || '';;\n state.provinceOrState.error = '';\n\n state.postalCode.value = action.payload.postalCode || '';;\n state.postalCode.error = '';\n\n state.country.value = action.payload.country || '';;\n state.country.error = '';\n\n state.pipedrivePersonCode = action.payload.pipedrivePersonCode;\n state.pipedriveOrganizationCode = action.payload.pipedriveOrganizationCode;\n\n state.startDay.value = action.payload.startDay || '';\n state.startDay.error = '';\n\n state.scheduleStartDay = false;\n }\n )\n .addMatcher(\n adminApi.endpoints.importPipedriveOrganization.matchPending, (state, action) => {\n state.isImporting = true;\n }\n )\n .addMatcher(\n adminApi.endpoints.importPipedriveOrganization.matchRejected, (state, action) => {\n state.isImporting = false;\n }\n )\n }\n});\n\nexport const { \n handleChange,\n handleModelErrors,\n clearForm,\n handleChangeSubscriptionPlan,\n handleChangeCountry,\n handleChangeProvinceOrState,\n handleFillCountryAndState,\n handleChangeProcessPayment,\n handleOpenPopupPayment,\n handleClosePopupPayment,\n handleChangeScheduleStartDay,\n clearErrors,\n} = createAccountSlice.actions;\n\nexport default createAccountSlice.reducer;","import { useRef, useEffect } from \"react\";\nimport {\n useTheme,\n Box, \n Stack,\n Typography,\n IconButton,\n Chip,\n Divider,\n LinearProgress,\n} from \"@mui/material\";\nimport { Download } from \"@mui/icons-material\";\n\nimport SubCard from \"ui-component/cards/SubCard\";\nimport { grey } from \"@mui/material/colors\";\n\nconst NotificationCard = ({\n title,\n fullDescription,\n tagNew,\n creationTimeAgo,\n documents=[],\n isLoading,\n}) => {\n\n const theme = useTheme();\n const descriptionRef = useRef();\n\n useEffect(() => {\n const images = descriptionRef.current.querySelectorAll(\"img\");\n images.forEach(image => {\n\n image.style.border = \"1px solid #fff\";\n image.style.borderRadius = \"8px\";\n image.style.boxShadow = \"0px 2px 2px 1px rgba(0, 0, 0, 0.1), 0px 2px 8px 3px rgba(0, 0, 0, 0.1)\";\n\n const parent = image.parentElement;\n parent.style.display = \"flex\";\n parent.style.justifyContent = \"center\";\n parent.style.gap = \"4px\"\n })\n }, []);\n\n return (\n \n \n {tagNew &&\n \n }\n \n {creationTimeAgo}\n \n \n {title}\n br': { display: 'none' },\n 'p:not(:last-of-type)': { marginBottom: '1.5rem' },\n }} \n />\n \n {(isLoading || documents.length > 0) && (\n \n {isLoading \n ? \n \n Loading Attached Documents\n \n \n \n : (documents.length > 0 &&\n \n \n Attached Documents\n \n {documents.map((document, i) => (\n
\n {i <= documents.length - 1 && }\n \n {document.name}\n window.open(document.url)}>\n \n \n \n
\n ))}\n
)\n }\n
\n )}\n
\n )\n}\n\nexport default NotificationCard;","import { emptySplitApi } from './index'\n\nexport const countryApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getCountryList: builder.query({\n query: (model) => ({\n url: `api/v1/auth-service/country`,\n method: \"GET\"\n }),\n }),\n getCountryByCode: builder.query({\n query: (model) => ({\n url: `api/v1/auth-service/country/${model.countryCode}`,\n method: \"GET\"\n }),\n }),\n getCountryByCodeWithTrigger: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/country/${model.countryCode}`,\n method: \"GET\"\n }),\n }),\n getCountryOnlyList: builder.query({\n query: (model) => ({\n url: `api/v1/auth-service/country/country-only`,\n method: \"GET\"\n }),\n }),\n getCountyOnlyList: builder.query({\n query: (model) => ({\n url: `api/v1/search-engine-service/country/counties`,\n method: \"GET\"\n }),\n }),\n getCityListByProvinceOrStates: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/country/city-list`,\n method: \"POST\",\n body: model\n }),\n }),\n getProvinceOrStateListByCountryCodes: builder.mutation({\n query: (countryCodes) => ({\n url: `api/v1/auth-service/country/province-state-list`,\n method: \"POST\",\n body: [...countryCodes]\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const { \n useGetCountryListQuery,\n useGetCityListByProvinceOrStatesMutation,\n useGetCountryOnlyListQuery,\n useGetCountyOnlyListQuery,\n useGetProvinceOrStateListByCountryCodesMutation,\n useGetCountryByCodeQuery,\n useGetCountryByCodeWithTriggerMutation\n} = countryApi;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { subscriptionPlanApi } from 'Services/SubscriptionPlanService'\n\nexport const initialState = {\n roleList: ['Admin', 'User', 'SubUser', 'supervisor', 'member', 'Demo', 'Sales', 'SuperAdmin', 'IT'],\n subscriptionPlanName: {\n value: '',\n error: ''\n },\n planDescription: {\n value: '',\n error: ''\n },\n displayplan: {\n value: '',\n error: ''\n },\n amountYears: {\n value: '',\n error: ''\n },\n amountMonths: {\n value: '',\n error: ''\n },\n amountDays: {\n value: '',\n error: ''\n },\n amountLicenses: {\n value: '',\n error: ''\n },\n amountPlan: {\n value: '',\n error: ''\n }\n};\n\nconst createSubscriptionPlanSlice = createSlice({\n name: \"create-subscription-plan\",\n initialState,\n reducers: {\n handleChange: (state, action) => {\n state[action.payload.field].error = '';\n state[action.payload.field].value = action.payload.value; \n },\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state[field].error = errors[0];\n });\n },\n handleChangeSubscriptionPlan: (state, action) => {\n state.subscriptionPlanName.value = action.payload;\n state.subscriptionPlanName.error = '';\n \n }, \n handleChangeDisplayPlan: (state, action) => {\n state.displayplan = action.payload;\n }, \n clearErrors: (state, action) => {\n Object.keys(initialState).forEach(field => {\n if (state[field]?.error !== undefined) {\n state[field].error = ''; \n }\n });\n },\n clearForm: (state, action) => {\n state.subscriptionPlanName.value = '';\n state.subscriptionPlanName.error = '';\n\n state.planDescription.value = '';\n state.planDescription.error = '';\n\n state.displayplan.value = '';\n state.displayplan.error = '';\n \n state.amountYears.value = '';\n state.amountYears.error = '';\n\n state.amountMonths.value = '';\n state.amountMonths.error = '';\n\n state.amountDays.value = '';\n state.amountDays.error = '';\n\n state.amountLicenses.value = '';\n state.amountLicenses.error = '';\n\n state.amountPlan.value = '';\n state.amountPlan.error = '';\n }\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n subscriptionPlanApi.endpoints.getPlans.matchFulfilled, (state, action) => {\n state.subscriptionPlanList = action.payload;\n }\n )\n }\n});\n\nexport const { \n handleChange,\n handleModelErrors,\n clearForm,\n clearErrors,\n handleChangeDisplayPlan\n} = createSubscriptionPlanSlice.actions;\n\nexport default createSubscriptionPlanSlice.reducer;","import { createSlice } from \"@reduxjs/toolkit\";\nimport { adminApi } from 'Services/AdminService';\nimport { countryApi } from 'Services/CountryService';\n\nexport const initialState = {\n roleList: ['Admin', 'User', 'SubUser', 'Supervisor', 'Member', 'Demo', 'Sales', 'SuperAdmin', 'IT'],\n subscriptionPlanList: [],\n countryList: [],\n selectedCountry: {\n id: null,\n code: null,\n description: null,\n provinceOrStateList: []\n },\n selectedProvinceOrState: {\n id: null,\n code: null,\n description: null,\n },\n firstName: {\n value: '',\n error: ''\n },\n lastName: {\n value: '',\n error: ''\n },\n phoneNumber: {\n value: '',\n error: ''\n },\n userName: {\n value: '',\n error: ''\n },\n email: {\n value: '',\n error: ''\n },\n planDescription: {\n value: '',\n error: ''\n },\n expirationDate: {\n value: '',\n error: ''\n },\n amountUsers: {\n value: '',\n error: ''\n },\n amountLicenses: {\n value: '',\n error: ''\n },\n userRole: {\n value: '',\n error: ''\n },\n companyName: {\n value: '',\n error: ''\n },\n businessEin: {\n value: '',\n error: ''\n },\n addressLine: {\n value: '',\n error: ''\n },\n addressLine2: {\n value: '',\n error: ''\n },\n city: {\n value: '',\n error: ''\n },\n provinceOrState: {\n value: '',\n error: ''\n },\n postalCode: {\n value: '',\n error: ''\n },\n country: {\n value: '',\n error: ''\n },\n userNameIsEmail: {\n value: false,\n error: ''\n },\n startDay:{\n value: '',\n error: ''\n },\n scheduleStartDay:{\n value: '',\n error: ''\n },\n emailConfirmed:{\n value: '',\n error: ''\n }\n};\n\nconst updateAccountSlice = createSlice({\n name: \"update-account\",\n initialState,\n reducers: {\n handleChange: (state, action) => {\n state[action.payload.field].error = '';\n state[action.payload.field].value = action.payload.value; \n },\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state[field].error = errors[0];\n });\n },\n handleFillCountryAndState: (state, action) => {\n\n const selectedCountry = state.countryList.find(o => o.description === state.country.value);\n\n if (selectedCountry) {\n state.selectedCountry = selectedCountry;\n const selectedProvinceOrState = selectedCountry.provinceOrStateList.find(o => o.description === state.provinceOrState.value);\n if (selectedProvinceOrState) {\n state.selectedProvinceOrState = selectedProvinceOrState;\n }\n }\n },\n handleChangeCountry: (state, action) => {\n state.selectedCountry = state.countryList.find(o => o.description === action.payload);\n state.country.value = state.countryList.find(o => o.description === action.payload).description;\n state.selectedProvinceOrState = initialState.selectedProvinceOrState;\n state.provinceOrState = initialState.provinceOrState;\n },\n handleChangeProvinceOrState: (state, action) => {\n if (action.payload?.value) {\n state.selectedProvinceOrState = state.selectedCountry.provinceOrStateList.find(o => o.description === action.payload.value || '');\n state.provinceOrState.value = state.selectedCountry.provinceOrStateList.find(o => o.description === action.payload.value || '').description;\n }\n },\n handleChangeScheduleStartDay:(state, action) => {\n \n if(!action.payload){\n state.startDay.value = null\n state.startDay.error = ''\n }\n state.scheduleStartDay.value = action.payload;\n state.scheduleStartDay.error = ''\n\n }\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n adminApi.endpoints.getUserAccount.matchFulfilled, (state, action) => {\n Object.entries(action.payload).forEach(([field, value]) => {\n if (state[field] != null) {\n state[field].value = value ?? ''; \n if (field === 'userRole') {\n const roles = value.split(',');\n state[field].value = roles[0];\n }\n }\n }); \n }\n )\n .addMatcher(\n countryApi.endpoints.getCountryList.matchFulfilled, (state, action) => {\n state.countryList = action.payload;\n }\n )\n }\n});\n\nexport const { \n handleChange,\n handleModelErrors,\n handleChangeCountry,\n handleChangeProvinceOrState,\n handleFillCountryAndState,\n handleChangeScheduleStartDay\n} = updateAccountSlice.actions;\n\nexport default updateAccountSlice.reducer;","import { createSlice } from \"@reduxjs/toolkit\";\n\nexport const initialState = {\n foundationName: {\n value: '',\n error: ''\n },\n registeredName: {\n value: '',\n error: ''\n },\n otherName: {\n value: '',\n error: ''\n },\n phoneNumber: {\n value: '',\n error: ''\n },\n email: {\n value: '',\n error: ''\n },\n site: {\n value: '',\n error: ''\n },\n address: {\n value: '',\n error: ''\n },\n complement: {\n value: '',\n error: ''\n },\n city: {\n value: '',\n error: ''\n },\n province: {\n value: '',\n error: ''\n },\n postalCode: {\n value: '',\n error: ''\n },\n bn: {\n value: '',\n error: ''\n } \n};\n\nconst updateFoundationSlice = createSlice({\n name: \"update-foundation-ca\",\n initialState,\n reducers: {\n handleChange: (state, action) => {\n state[action.payload.field].error = '';\n state[action.payload.field].value = action.payload.value; \n },\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state[field].error = errors[0];\n });\n },\n \n },\n \n});\n\nexport const { \n handleChange,\n handleModelErrors,\n} = updateFoundationSlice.actions;\n\nexport default updateFoundationSlice.reducer;","import { createSlice } from \"@reduxjs/toolkit\";\n\nexport const initialState = {\n foundationName: {\n value: '',\n error: ''\n },\n registeredName: {\n value: '',\n error: ''\n },\n otherName: {\n value: '',\n error: ''\n },\n phoneNumber: {\n value: '',\n error: ''\n },\n email: {\n value: '',\n error: ''\n },\n site: {\n value: '',\n error: ''\n },\n address: {\n value: '',\n error: ''\n },\n complement: {\n value: '',\n error: ''\n },\n city: {\n value: '',\n error: ''\n },\n state: {\n value: '',\n error: ''\n },\n zipCode: {\n value: '',\n error: ''\n },\n ein: {\n value: '',\n error: ''\n } \n};\n\nconst updateFoundationSlice = createSlice({\n name: \"update-foundation-us\",\n initialState,\n reducers: {\n handleChange: (state, action) => {\n state[action.payload.field].error = '';\n state[action.payload.field].value = action.payload.value; \n },\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state[field].error = errors[0];\n });\n },\n \n },\n \n});\n\nexport const { \n handleChange,\n handleModelErrors,\n} = updateFoundationSlice.actions;\n\nexport default updateFoundationSlice.reducer;","import { createSlice } from \"@reduxjs/toolkit\";\nimport { projectBudgetApi } from \"Services/ProjectBudgetService\";\n\nexport const initialState = {\n id: null,\n projectDescription: '',\n budgetDescription: '',\n description: {\n value: '',\n error: ''\n },\n categoryDescription: {\n value: '',\n error: ''\n },\n amount: {\n value: '',\n error: ''\n },\n checkAll: false,\n openBudgetDialog: false,\n openResetDialog: false,\n openDeleteSelectedDialog: false,\n openDeleteAllDialog: false,\n openDeleteOneDialog: false,\n incomePagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'description',\n orderDirection: 'desc',\n items: []\n },\n incomeSelected: [],\n excludedSelected: []\n};\n\nconst incomeSlice = createSlice({\n name: \"project-income\",\n initialState,\n reducers: {\n setProjectDescription: (state, action) => {\n state.projectDescription = action.payload;\n },\n handleOpenBudgetDialog: (state, action) => {\n state.openBudgetDialog = action.payload;\n },\n handleCloseDialog: (state, action) => {\n state.openBudgetDialog = false;\n state.openResetDialog = false;\n state.openDeleteSelectedDialog = false;\n state.openDeleteAllDialog = false;\n state.openDeleteOneDialog = false;\n },\n handleChange: (state, action) => {\n state[action.payload.field].error = '';\n state[action.payload.field].value = action.payload.value; \n },\n handleNewBudget: (state, action) => {\n state.id = null;\n state.description.value = '';\n state.description.error = '';\n state.categoryDescription.value = '';\n state.categoryDescription.error = '';\n state.amount.value = '';\n state.amount.error = '';\n state.openBudgetDialog = true;\n },\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state[field].error = errors[0];\n });\n },\n handleOpenResetDialog: (state, action) => {\n state.openResetDialog = true;\n },\n handleOpenDeleteSelectedDialog: (state, action) => {\n state.openDeleteSelectedDialog = true;\n },\n handleOpenDeleteAllDialog: (state, action) => {\n state.openDeleteAllDialog = true;\n },\n handleOpenDeleteOneDialog: (state, action) => {\n state.id = action.payload.id;\n state.budgetDescription = action.payload.description;\n state.openDeleteOneDialog = true;\n },\n handleOpenEditDialog: (state, action) => {\n state.id = action.payload.id;\n state.description.value = action.payload.description;\n state.description.error = '';\n state.categoryDescription.value = action.payload.categoryDescription || '';\n state.categoryDescription.error = '';\n state.amount.value = action.payload.amount;\n state.amount.error = '';\n state.openBudgetDialog = true;\n },\n handleClearSelection : (state, action) => {\n state.incomeSelected = [];\n state.excludedSelected = [];\n state.checkAll = false;\n },\n handleSelectItem: (state, action) => {\n\n if (state.incomeSelected.indexOf(action.payload) === -1) {\n state.incomeSelected.push(action.payload);\n }\n else {\n state.incomeSelected = state.incomeSelected.filter(item => item !== action.payload);\n }\n\n if (state.checkAll) {\n const indeterminated = state.incomeSelected.length > 0 && state.incomeSelected.length < state.incomePagedList.totalCount;\n\n if (indeterminated) {\n state.excludedSelected.push(action.payload);\n }\n }\n \n },\n handleToggleAll: (state, action) => {\n let copySelected = [...state.incomeSelected];\n const excludedItems = [];\n\n state.incomePagedList.items.forEach(item => {\n const existsIndex = copySelected.indexOf(item.id);\n \n if (existsIndex === -1) {\n copySelected.push(item.id);\n }\n else {\n copySelected.splice(existsIndex, 1);\n excludedItems.push(item.id);\n }\n });\n\n if (copySelected.length === state.incomePagedList.totalCount) {\n state.checkAll = !state.checkAll;\n }\n\n const indeterminated = state.checkAll && copySelected.length > 0 && copySelected.length < state.incomePagedList.totalCount;\n\n if (indeterminated) {\n excludedItems.forEach(item => {\n state.excludedSelected.push(item);\n });\n }\n\n state.incomeSelected = copySelected;\n },\n handleToggleCheckExclusive: (state, action) => {\n const toggleCheck = !state.checkAll;\n \n if (toggleCheck) {\n const copyData = state.incomePagedList.items.map(item => (\n item.id\n ));\n \n const length = copyData.length;\n \n for (let index = 0; index < state.incomePagedList.totalCount - length; index++) {\n copyData.push('');\n };\n\n state.incomeSelected = copyData;\n }\n else {\n state.incomeSelected = [];\n }\n\n state.excludedSelected = [];\n state.checkAll = toggleCheck;\n },\n handlePageChangeWithCheckAll: (state, action) => {\n const copySelected = [...state.incomeSelected];\n\n state.incomePagedList.items.forEach(item => {\n const emptyIndex = copySelected.indexOf('');\n\n if (emptyIndex !== -1) {\n copySelected[emptyIndex] = item.id;\n } \n });\n\n state.incomeSelected = copySelected;\n },\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n projectBudgetApi.endpoints.getAllIncomePagedList.matchFulfilled, (state, action) => {\n state.incomePagedList.pageNumber = action.payload.pageNumber;\n state.incomePagedList.pageSize = action.payload.pageSize;\n state.incomePagedList.pageCount = action.payload.pageCount;\n state.incomePagedList.totalCount = action.payload.totalCount;\n state.incomePagedList.orderField = action.payload.orderField;\n state.incomePagedList.orderDirection = action.payload.orderDirection;\n state.incomePagedList.items = action.payload.items;\n }\n )\n }\n\n});\n\nexport const { \n setProjectDescription,\n handleOpenBudgetDialog,\n handleCloseDialog,\n handleChange,\n handleNewBudget,\n handleModelErrors,\n handleBudgetSelection,\n handleOpenResetDialog,\n handleOpenDeleteSelectedDialog,\n handleOpenDeleteAllDialog,\n handleOpenDeleteOneDialog,\n handleOpenEditDialog,\n handleClearSelection,\n handleCheckAllSelection,\n handleSelectItem,\n handleToggleAll,\n handleToggleCheckExclusive,\n handlePageChangeWithCheckAll\n} = incomeSlice.actions;\n\nexport default incomeSlice.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { projectBudgetApi } from \"Services/ProjectBudgetService\";\n\nexport const initialState = {\n id: null,\n projectDescription: '',\n budgetDescription: '',\n description: {\n value: '',\n error: ''\n },\n categoryDescription: {\n value: '',\n error: ''\n },\n amount: {\n value: '',\n error: ''\n },\n checkAll: false,\n openBudgetDialog: false,\n openResetDialog: false,\n openDeleteSelectedDialog: false,\n openDeleteAllDialog: false,\n openDeleteOneDialog: false,\n expensePagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'description',\n orderDirection: 'desc',\n items: []\n },\n expenseSelected: [],\n excludedSelected: []\n};\n\nconst expenseSlice = createSlice({\n name: \"project-expense\",\n initialState,\n reducers: {\n setProjectDescription: (state, action) => {\n state.projectDescription = action.payload;\n },\n handleOpenBudgetDialog: (state, action) => {\n state.openBudgetDialog = action.payload;\n },\n handleCloseDialog: (state, action) => {\n state.openBudgetDialog = false;\n state.openResetDialog = false;\n state.openDeleteSelectedDialog = false;\n state.openDeleteAllDialog = false;\n state.openDeleteOneDialog = false;\n },\n handleChange: (state, action) => {\n state[action.payload.field].error = '';\n state[action.payload.field].value = action.payload.value; \n },\n handleNewBudget: (state, action) => {\n state.id = null;\n state.description.value = '';\n state.description.error = '';\n state.categoryDescription.value = null;\n state.categoryDescription.error = '';\n state.amount.value = '';\n state.amount.error = '';\n state.openBudgetDialog = true;\n },\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state[field].error = errors[0];\n });\n },\n handleOpenResetDialog: (state, action) => {\n state.openResetDialog = true;\n },\n handleOpenDeleteSelectedDialog: (state, action) => {\n state.openDeleteSelectedDialog = true;\n },\n handleOpenDeleteAllDialog: (state, action) => {\n state.openDeleteAllDialog = true;\n },\n handleOpenDeleteOneDialog: (state, action) => {\n state.id = action.payload.id;\n state.budgetDescription = action.payload.description;\n state.openDeleteOneDialog = true;\n },\n handleOpenEditDialog: (state, action) => {\n state.id = action.payload.id;\n state.description.value = action.payload.description;\n state.description.error = '';\n state.categoryDescription.value = action.payload.categoryDescription || '';\n state.categoryDescription.error = '';\n state.amount.value = action.payload.amount;\n state.amount.error = '';\n state.openBudgetDialog = true;\n },\n handleClearSelection: (state, action) => {\n state.expenseSelected = [];\n state.excludedSelected = [];\n state.checkAll = false;\n },\n handleChangeCategory: (state, action) => {\n state.categoryDescription.error = '';\n state.categoryDescription.value = action.payload?.value || null;\n },\n handleSelectItem: (state, action) => {\n\n if (state.expenseSelected.indexOf(action.payload) === -1) {\n state.expenseSelected.push(action.payload);\n }\n else {\n state.expenseSelected = state.expenseSelected.filter(item => item !== action.payload);\n }\n\n if (state.checkAll) {\n const indeterminated = state.expenseSelected.length > 0 && state.expenseSelected.length < state.expensePagedList.totalCount;\n\n if (indeterminated) {\n state.excludedSelected.push(action.payload);\n }\n }\n \n },\n handleToggleAll: (state, action) => {\n let copySelected = [...state.expenseSelected];\n const excludedItems = [];\n\n state.expensePagedList.items.forEach(item => {\n const existsIndex = copySelected.indexOf(item.id);\n \n if (existsIndex === -1) {\n copySelected.push(item.id);\n }\n else {\n copySelected.splice(existsIndex, 1);\n excludedItems.push(item.id);\n }\n });\n\n if (copySelected.length === state.expensePagedList.totalCount) {\n state.checkAll = !state.checkAll;\n }\n\n const indeterminated = state.checkAll && copySelected.length > 0 && copySelected.length < state.expensePagedList.totalCount;\n\n if (indeterminated) {\n excludedItems.forEach(item => {\n state.excludedSelected.push(item);\n });\n }\n\n state.expenseSelected = copySelected;\n },\n handleToggleCheckExclusive: (state, action) => {\n const toggleCheck = !state.checkAll;\n \n if (toggleCheck) {\n const copyData = state.expensePagedList.items.map(item => (\n item.id\n ));\n \n const length = copyData.length;\n \n for (let index = 0; index < state.expensePagedList.totalCount - length; index++) {\n copyData.push('');\n };\n\n state.expenseSelected = copyData;\n }\n else {\n state.expenseSelected = [];\n }\n\n state.excludedSelected = [];\n state.checkAll = toggleCheck;\n },\n handlePageChangeWithCheckAll: (state, action) => {\n const copySelected = [...state.expenseSelected];\n\n state.expensePagedList.items.forEach(item => {\n const emptyIndex = copySelected.indexOf('');\n\n if (emptyIndex !== -1) {\n copySelected[emptyIndex] = item.id;\n } \n });\n\n state.expenseSelected = copySelected;\n },\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n projectBudgetApi.endpoints.getAllExpensePagedList.matchFulfilled, (state, action) => {\n state.expensePagedList.pageNumber = action.payload.pageNumber;\n state.expensePagedList.pageSize = action.payload.pageSize;\n state.expensePagedList.pageCount = action.payload.pageCount;\n state.expensePagedList.totalCount = action.payload.totalCount;\n state.expensePagedList.orderField = action.payload.orderField;\n state.expensePagedList.orderDirection = action.payload.orderDirection;\n state.expensePagedList.items = action.payload.items;\n }\n )\n }\n\n});\n\nexport const { \n setProjectDescription,\n handleOpenBudgetDialog,\n handleCloseDialog,\n handleChange,\n handleNewBudget,\n handleModelErrors,\n handleBudgetSelection,\n handleOpenResetDialog,\n handleOpenDeleteSelectedDialog,\n handleOpenDeleteAllDialog,\n handleOpenDeleteOneDialog,\n handleOpenEditDialog,\n handleClearSelection,\n handleChangeCategory,\n handleCheckAllSelection,\n handleSelectItem,\n handleToggleAll,\n handleToggleCheckExclusive,\n handlePageChangeWithCheckAll,\n} = expenseSlice.actions;\n\nexport default expenseSlice.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { inquiryLetterApi } from \"Services/InquiryLetterService\";\n\nexport const initialState = {\n id: null,\n userProject: {\n id: '',\n value: '',\n label: ''\n },\n activeStep: 0,\n inquiryDocument: {\n introduction: '',\n describeOrganization: '',\n needStatement: '',\n methodology: '',\n otherFunding: '',\n summary: ''\n },\n stepList: [],\n forceDisabled: false,\n autosaveEnabled: false,\n timeoutId: null,\n};\n\nconst inquirySlice = createSlice({\n name: \"document-generator-inquiry\",\n initialState,\n reducers: {\n handleChangeUserProject: (state, action) => {\n state.userProject = action.payload;\n },\n handleStep: (state, action) => {\n state.activeStep = action.payload;\n },\n handleChangeDocument: (state, action) => {\n if (action.payload.document.replace(/<(.|\\n)*?>/g, '').trim().length === 0) {\n state.inquiryDocument[action.payload.stepName] = null;\n }\n else {\n state.inquiryDocument[action.payload.stepName] = action.payload.document;\n }\n },\n handleSaveSuccess: (state, action) => {\n state.id = action.payload.data;\n },\n handleAutoSaveEnabled: (state, action) => {\n state.autosaveEnabled = action.payload;\n },\n handleClear: (state, action) => {\n state.id = null;\n state.activeStep = 0;\n state.userProject.id = '';\n state.userProject.value = '';\n state.userProject.label = '';\n state.autosaveEnabled = false;\n state.inquiryDocument.introduction = \"\";\n state.inquiryDocument.describeOrganization = \"\";\n state.inquiryDocument.needStatement = \"\";\n state.inquiryDocument.methodology = \"\";\n state.inquiryDocument.otherFunding = \"\";\n state.inquiryDocument.summary = \"\";\n },\n },\n extraReducers: (builder) => {\n builder\n .addMatcher(\n inquiryLetterApi.endpoints.getStepList.matchFulfilled, (state, action) => {\n state.stepList = action.payload;\n }\n )\n .addMatcher(\n inquiryLetterApi.endpoints.getInquiryLetter.matchFulfilled, (state, action) => {\n state.id = action.payload.id;\n state.inquiryDocument.introduction = action.payload.introduction;\n state.inquiryDocument.describeOrganization = action.payload.describeOrganization;\n state.inquiryDocument.needStatement = action.payload.needStatement;\n state.inquiryDocument.methodology = action.payload.methodology;\n state.inquiryDocument.otherFunding = action.payload.otherFunding;\n state.inquiryDocument.summary = action.payload.summary;\n state.inquiryDocument.notesQuantity = action.payload.notesQuantity;\n }\n )\n }\n\n});\n\nexport const { \n handleChangeUserProject,\n handleStep,\n handleChangeDocument,\n handleSaveSuccess,\n handleAutoSaveEnabled,\n handleClear,\n} = inquirySlice.actions;\n\nexport default inquirySlice.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { proposalLetterApi } from \"Services/ProposalLetterService\";\n\nexport const initialState = {\n id: null,\n userProject: {\n id: '',\n value: '',\n label: ''\n },\n activeStep: 0,\n proposalDocument: {\n coverLetter: '',\n executiveSummary: '',\n needStatement: '',\n goals: '',\n methods: '',\n evaluation: '',\n funding: '',\n organization: '',\n closingStatement: '',\n },\n stepList: [],\n forceDisabled: false,\n autosaveEnabled: false,\n};\n\nconst proposalSlice = createSlice({\n name: \"document-generator-proposal\",\n initialState,\n reducers: {\n handleChangeUserProject: (state, action) => {\n state.userProject = action.payload;\n },\n handleStep: (state, action) => {\n state.activeStep = action.payload;\n },\n handleChangeDocument: (state, action) => {\n if (action.payload.document.replace(/<(.|\\n)*?>/g, '').trim().length === 0) {\n state.proposalDocument[action.payload.stepName] = null;\n }\n else {\n state.proposalDocument[action.payload.stepName] = action.payload.document;\n }\n },\n handleSaveSuccess: (state, action) => {\n state.id = action.payload.data;\n },\n handleAutoSaveEnabled: (state, action) => {\n state.autosaveEnabled = action.payload;\n },\n handleClear: (state, action) => {\n state.id = null;\n state.activeStep = 0;\n state.userProject.id = '';\n state.userProject.value = '';\n state.userProject.label = '';\n state.autosaveEnabled = false;\n state.proposalDocument = initialState.proposalDocument;\n },\n },\n extraReducers: (builder) => {\n builder\n .addMatcher(\n proposalLetterApi.endpoints.getProposalStepList.matchFulfilled, (state, action) => {\n state.stepList = action.payload;\n }\n )\n .addMatcher(\n proposalLetterApi.endpoints.getProposalLetter.matchFulfilled, (state, action) => {\n state.id = action.payload.id;\n state.proposalDocument.coverLetter = action.payload.coverLetter;\n state.proposalDocument.executiveSummary = action.payload.executiveSummary;\n state.proposalDocument.needStatement = action.payload.needStatement;\n state.proposalDocument.goals = action.payload.goals;\n state.proposalDocument.methods = action.payload.methods;\n state.proposalDocument.evaluation = action.payload.evaluation;\n state.proposalDocument.funding = action.payload.funding;\n state.proposalDocument.organization = action.payload.organization;\n state.proposalDocument.closingStatement = action.payload.closingStatement;\n state.proposalDocument.notesQuantity = action.payload.notesQuantity;\n }\n )\n }\n\n});\n\nexport const { \n handleChangeUserProject,\n handleStep,\n handleChangeDocument,\n handleSaveSuccess,\n handleAutoSaveEnabled,\n handleClear,\n} = proposalSlice.actions;\n\nexport default proposalSlice.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { customLetterApi } from \"Services/CustomLetterService\";\n\nexport const initialState = {\n id: null,\n userProject: {\n id: '',\n value: '',\n label: ''\n },\n userProjectToChange: {\n id: null,\n value: null,\n label: null\n },\n allProjectList: [],\n activeStep: 0,\n customDocument: {\n template: '',\n letter: ''\n },\n stepList: [],\n forceDisabled: false,\n autosaveEnabled: false,\n};\n\nconst customSlice = createSlice({\n name: \"document-generator-custom\",\n initialState,\n reducers: {\n handleChangeUserProject: (state, action) => {\n state.userProject = action.payload;\n },\n handleStep: (state, action) => {\n state.activeStep = action.payload;\n },\n handleChangeDocument: (state, action) => {\n if (action.payload.document.replace(/<(.|\\n)*?>/g, '').trim().length === 0) {\n state.customDocument[action.payload.stepName] = null;\n }\n else {\n state.customDocument[action.payload.stepName] = action.payload.document;\n }\n },\n handleSaveSuccess: (state, action) => {\n state.id = action.payload.data;\n },\n handleAutoSaveEnabled: (state, action) => {\n state.autosaveEnabled = action.payload;\n },\n handleClear: (state, action) => {\n state.id = null;\n state.activeStep = 0;\n state.userProject.id = '';\n state.userProject.value = '';\n state.userProject.label = '';\n state.autosaveEnabled = false;\n state.customDocument.template = \"\";\n state.customDocument.letter = \"\";\n },\n },\n extraReducers: (builder) => {\n builder\n .addMatcher(\n customLetterApi.endpoints.getCustomStepList.matchFulfilled, (state, action) => {\n state.stepList = action.payload;\n }\n )\n .addMatcher(\n customLetterApi.endpoints.getCustomLetter.matchFulfilled, (state, action) => {\n state.id = action.payload.id;\n state.customDocument.template = action.payload.template;\n state.customDocument.letter = action.payload.letter;\n }\n )\n }\n\n});\n\nexport const { \n handleChangeUserProject,\n handleStep,\n handleChangeDocument,\n handleSaveSuccess,\n handleAutoSaveEnabled,\n handleClear,\n} = customSlice.actions;\n\nexport default customSlice.reducer;\n","import React from 'react';\nimport NumberFormat from 'react-number-format';\n\nconst NumberFormatWrapper = React.forwardRef(function NumberFormatWrapper(props, ref) {\n const { onChange, ...other } = props;\n return (\n {\n onChange({\n target: {\n name: props.name,\n value: values.value,\n },\n });\n }}\n thousandSeparator\n prefix= { props.prefix }\n decimalScale={0}\n allowNegative={false}\n isNumericString={false}\n allowEmptyFormatting={true}\n type=\"tel\"\n />\n );\n\n});\n \nexport default NumberFormatWrapper;","import {\n FormControl,\n FormHelperText,\n InputLabel,\n OutlinedInput,\n} from \"@mui/material\";\n\nimport NumberFormatWrapper from \"./NumberFormatWrapper\";\n\nimport { useTranslation } from \"react-i18next\";\n\nconst FormControlWrapper = ({\n name, \n value,\n label, \n type, \n maxLength, \n error = '', \n theme, \n onChange,\n required,\n disabled,\n multiline,\n rows = 4,\n sx,\n labelSx={},\n maskNumber,\n autoFocus,\n placeholder,\n endAdornment,\n prefix='$',\n shrinkLabel,\n size=\"medium\",\n}) => {\n\n const { t } = useTranslation();\n\n return(\n \n {label}\n \n {error !== \"\" && (\n \n {t(error)}\n \n )}\n \n )\n}\n\nexport default FormControlWrapper;","import { createSlice } from \"@reduxjs/toolkit\";\nimport {subscriptionPlanApi} from \"Services/SubscriptionPlanService\"\n\nexport const initialState = {\n loadingList: false,\n openEnableDisableDialog: false,\n search: {\n searchTerm: '',\n status: ''\n },\n pagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'createdAt',\n orderDirection: 'desc',\n items: []\n }\n };\n\nconst manageSubscriptionPlanSlice = createSlice({\n name: \"manage-subscription-plans\",\n initialState,\n reducers: {\n handleChange: (state, action) => {\n state.search[action.payload.field] = action.payload.value;\n },\n handleChangeField: (state, action) => {\n state[action.payload.field].error = '';\n state[action.payload.field].value = action.payload.value; \n },\n handleOpenEnableDisableDialog: (state, action) => {\n state.openEnableDisableDialog = true;\n },\n \n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state[field].error = errors[0];\n });\n },\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n subscriptionPlanApi.endpoints.getAllUsersPagedList.matchFulfilled, (state, action) => {\n state.loadingList = false;\n state.pagedList.pageNumber = action.payload.pageNumber;\n state.pagedList.pageSize = action.payload.pageSize;\n state.pagedList.pageCount = action.payload.pageCount;\n state.pagedList.totalCount = action.payload.totalCount;\n state.pagedList.orderField = action.payload.orderField;\n state.pagedList.orderDirection = action.payload.orderDirection;\n state.pagedList.items = action.payload.items;\n }\n )\n .addMatcher(\n subscriptionPlanApi.endpoints.getPlans.matchPending, (state, action) => {\n state.loadingList = true;\n }\n )\n .addMatcher(\n subscriptionPlanApi.endpoints.getPlans.matchRejected, (state, action) => {\n state.loadingList = false;\n }\n )\n }\n\n});\n\nexport const { \n handleChange,\n handleChangeField,\n handleModelErrors,\n handleOpenEnableDisableDialog\n} = manageSubscriptionPlanSlice.actions;\n\nexport default manageSubscriptionPlanSlice.reducer;","import { createSlice } from \"@reduxjs/toolkit\";\nimport { feedbackApi } from \"Services/FeedbackService\";\n\nexport const initialState = {\n loadingList: false,\n pagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'reviewed',\n orderDirection: 'asc',\n items: []\n },\n search: {\n searchTerm: '',\n feedbackType: 'All'\n },\n};\n\nconst manageFeedbackSlice = createSlice({\n name: \"manage-feedback\",\n initialState,\n reducers: {\n handleSearchChange: (state, action) => {\n state.search[action.payload.field] = action.payload.value;\n },\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state.couponValues[field].error = errors[0];\n });\n },\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n feedbackApi.endpoints.getFeedbackPagedList.matchFulfilled, (state, action) => {\n state.loadingList = false;\n state.pagedList.pageNumber = action.payload.pageNumber;\n state.pagedList.pageSize = action.payload.pageSize;\n state.pagedList.pageCount = action.payload.pageCount;\n state.pagedList.totalCount = action.payload.totalCount;\n state.pagedList.orderField = action.payload.orderField;\n state.pagedList.orderDirection = action.payload.orderDirection;\n state.pagedList.items = action.payload.items;\n }\n ).addMatcher(\n feedbackApi.endpoints.getFeedbackPagedList.matchPending, (state, action) => {\n state.loadingList = true;\n }\n )\n .addMatcher(\n feedbackApi.endpoints.getFeedbackPagedList.matchRejected, (state, action) => {\n state.loadingList = false;\n }\n )\n }\n});\n\nexport const {\n handleModelErrors,\n handleSearchChange,\n} = manageFeedbackSlice.actions;\n\nexport default manageFeedbackSlice.reducer;","import { createSlice } from \"@reduxjs/toolkit\";\nimport { thankYouLetterApi } from \"Services/ThankYouLetterService\";\n\nexport const initialState = {\n id: null,\n userProject: {\n id: '',\n value: '',\n label: ''\n },\n activeStep: 0,\n thankYouDocument: {\n introduction: '',\n customizedContent: '',\n reinforceImpact: '',\n nextSteps: '',\n conclusion: '',\n },\n stepList: [],\n forceDisabled: false,\n autosaveEnabled: false,\n timeoutId: null,\n};\n\nconst thankYouSlice = createSlice({\n name: \"document-generator-thank-you\",\n initialState,\n reducers: {\n handleChangeUserProject: (state, action) => {\n state.userProject = action.payload;\n },\n handleConfirmChange: (state, action) => {\n state.userProject = state.userProjectToChange;\n },\n handleStep: (state, action) => {\n state.activeStep = action.payload;\n },\n handleChangeDocument: (state, action) => {\n if (action.payload.document.replace(/<(.|\\n)*?>/g, '').trim().length === 0) {\n state.thankYouDocument[action.payload.stepName] = null;\n }\n else {\n state.thankYouDocument[action.payload.stepName] = action.payload.document;\n }\n },\n handleSaveSuccess: (state, action) => {\n state.id = action.payload.data;\n },\n handleAutoSaveEnabled: (state, action) => {\n state.autosaveEnabled = action.payload;\n },\n handleClear: (state, action) => {\n state.id = null;\n state.activeStep = 0;\n state.userProject.id = '';\n state.userProject.value = '';\n state.userProject.label = '';\n state.autosaveEnabled = false;\n state.thankYouDocument.introduction = \"\";\n state.thankYouDocument.customizedContent = \"\";\n state.thankYouDocument.reinforceImpact = \"\";\n state.thankYouDocument.nextSteps = \"\";\n state.thankYouDocument.conclusion = \"\";\n \n },\n handleFillAllProjects: (state, action) => {\n const { selectedProject, projects } = action.payload;\n state.forceDisabled = action.payload.length === 0;\n state.autosaveEnabled = false;\n state.allProjectList = projects ?? [];\n state.userProject = selectedProject;\n },\n },\n extraReducers: (builder) => {\n builder\n .addMatcher(\n thankYouLetterApi.endpoints.getThankYouStepList.matchFulfilled, (state, action) => {\n state.stepList = action.payload;\n }\n )\n .addMatcher(\n thankYouLetterApi.endpoints.getThankYouLetter.matchFulfilled, (state, action) => {\n state.id = action.payload.id;\n state.thankYouDocument.introduction = action.payload.introduction;\n state.thankYouDocument.customizedContent = action.payload.customizedContent;\n state.thankYouDocument.reinforceImpact = action.payload.reinforceImpact;\n state.thankYouDocument.nextSteps = action.payload.nextSteps;\n state.thankYouDocument.conclusion = action.payload.conclusion;\n state.thankYouDocument.notesQuantity = action.payload.notesQuantity;\n }\n )\n }\n\n});\n\nexport const { \n handleChangeUserProject,\n handleStep,\n handleChangeDocument,\n handleSaveSuccess,\n handleAutoSaveEnabled,\n handleClear,\n} = thankYouSlice.actions;\n\nexport default thankYouSlice.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { impactReportLetterApi } from \"Services/ImpactReportLetterService\";\n\nexport const initialState = {\n id: null,\n userProject: {\n id: '',\n value: '',\n label: ''\n },\n activeStep: 0,\n impactReportDocument: {\n introduction: '',\n projectActivities: '',\n impact: '',\n financialReport: '',\n summary: '',\n appendice: '',\n },\n stepList: [],\n forceDisabled: false,\n autosaveEnabled: false,\n timeoutId: null,\n};\n\nconst impactReportSlice = createSlice({\n name: \"document-generator-impact-report\",\n initialState,\n reducers: {\n handleChangeUserProject: (state, action) => {\n state.userProject = action.payload;\n },\n handleStep: (state, action) => {\n state.activeStep = action.payload;\n },\n handleChangeDocument: (state, action) => {\n if (action.payload.document.replace(/<(.|\\n)*?>/g, '').trim().length === 0) {\n state.impactReportDocument[action.payload.stepName] = null;\n }\n else {\n state.impactReportDocument[action.payload.stepName] = action.payload.document;\n }\n },\n handleSaveSuccess: (state, action) => {\n state.id = action.payload.data;\n },\n handleAutoSaveEnabled: (state, action) => {\n state.autosaveEnabled = action.payload;\n },\n handleClear: (state, action) => {\n state.id = null;\n state.activeStep = 0;\n state.userProject.id = '';\n state.userProject.value = '';\n state.userProject.label = '';\n state.autosaveEnabled = false;\n state.impactReportDocument.introduction = \"\";\n state.impactReportDocument.projectActivities = \"\";\n state.impactReportDocument.impact = \"\";\n state.impactReportDocument.financialReport = \"\";\n state.impactReportDocument.summary = \"\";\n state.impactReportDocument.appendice = \"\";\n },\n handleFillAllProjects: (state, action) => {\n const { selectedProject, projects } = action.payload;\n state.forceDisabled = action.payload.length === 0;\n state.autosaveEnabled = false;\n state.allProjectList = projects ?? [];\n state.userProject = selectedProject;\n },\n },\n extraReducers: (builder) => {\n builder\n .addMatcher(\n impactReportLetterApi.endpoints.getImpactReportStepList.matchFulfilled, (state, action) => {\n state.stepList = action.payload;\n }\n )\n .addMatcher(\n impactReportLetterApi.endpoints.getImpactReportLetter.matchFulfilled, (state, action) => {\n state.id = action.payload.id;\n state.impactReportDocument.introduction = action.payload.introduction;\n state.impactReportDocument.projectActivities = action.payload.projectActivities;\n state.impactReportDocument.impact = action.payload.impact;\n state.impactReportDocument.financialReport = action.payload.financialReport;\n state.impactReportDocument.summary = action.payload.summary;\n state.impactReportDocument.appendice = action.payload.appendice;\n state.impactReportDocument.notesQuantity = action.payload.notesQuantity;\n }\n )\n }\n\n});\n\nexport const { \n handleChangeUserProject,\n handleStep,\n handleChangeDocument,\n handleSaveSuccess,\n handleAutoSaveEnabled,\n handleClear,\n} = impactReportSlice.actions;\n\nexport default impactReportSlice.reducer;\n","export const formatDate = (date) => {\n if (!date) return null;\n const d = new Date(date);\n return `${d.getFullYear()}/${d.getMonth() + 1}/${d.getDate()}`;\n}\n\nexport const getYearList = (startYear = 2014, endYear = new Date().getFullYear()) => {\n return [\n ...Array(endYear - 1 - startYear + 1)\n .fill()\n .map((_, idx) => ({\n index: idx,\n id: (startYear + idx).toString(),\n value: (startYear + idx).toString(),\n label: (startYear + idx).toString(),\n checked: false\n }))\n ].reverse();\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"paper2\":\"#fafafa\",\"primaryLight\":\"#e4e4e47c\",\"primary200\":\"#5e9203\",\"primaryMain\":\"#7bb11d\",\"primaryDark\":\"#5c8516\",\"primary800\":\"#364e0d\",\"secondaryLight\":\"#e0f2f1\",\"secondary200\":\"#80cbc4\",\"secondaryMain\":\"#009688\",\"secondaryDark\":\"#033833\",\"secondary800\":\"#00695c\",\"successLight\":\"#edf7ed\",\"success200\":\"#b6e0b3\",\"successMain\":\"#6cc067\",\"successDark\":\"#64ba5f\",\"errorLight\":\"#e48784\",\"errorMain\":\"#d9534f\",\"errorDark\":\"#d54c48\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#fdf5ea\",\"warningMain\":\"#f0ad4e\",\"warningDark\":\"#ec9c3d\",\"warning100\":\"#ebca2f\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#1b1a1a\",\"grey600\":\"#757575\",\"grey700\":\"#000\",\"grey700_orig\":\"#616161\",\"grey800\":\"#424242\",\"grey900\":\"#212121\",\"darkPaper\":\"#060d12\",\"darkBackground\":\"#0e1b23\",\"darkLevel1\":\"#0b161d\",\"darkLevel2\":\"#14252f\",\"darkTextTitle\":\"#e4e8f7\",\"darkTextPrimary\":\"#d5d9e9\",\"darkTextSecondary\":\"#d8ddf0\",\"darkPrimaryLight\":\"#ecf1f1\",\"darkPrimaryMain\":\"#7bb11d\",\"darkPrimaryDark\":\"#00897b\",\"darkPrimary200\":\"#c0ff53\",\"darkPrimary800\":\"#364e0d\",\"darkSecondaryLight\":\"#e0f2f1\",\"darkSecondaryMain\":\"#009688\",\"darkSecondaryDark\":\"#00897b\",\"darkSecondary200\":\"#80cbc4\",\"darkSecondary800\":\"#00695c\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"primaryLight\":\"#e4e4e47c\",\"primary200\":\"#5e9203\",\"primaryMain\":\"#7bb11d\",\"primaryDark\":\"#5c8516\",\"primary800\":\"#364e0d\",\"secondaryLight\":\"#e0f2f1\",\"secondary200\":\"#80cbc4\",\"secondaryMain\":\"#009688\",\"secondaryDark\":\"#033833\",\"secondary800\":\"#00695c\",\"successLight\":\"#edf7ed\",\"success200\":\"#b6e0b3\",\"successMain\":\"#6cc067\",\"successDark\":\"#64ba5f\",\"errorLight\":\"#e48784\",\"errorMain\":\"#d9534f\",\"errorDark\":\"#d54c48\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#fdf5ea\",\"warningMain\":\"#f0ad4e\",\"warningDark\":\"#ec9c3d\",\"warning100\":\"#ebca2f\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#9e9e9e\",\"grey600\":\"#757575\",\"grey700\":\"#616161\",\"grey900\":\"#212121\",\"darkPaper\":\"#060d12\",\"darkBackground\":\"#0e1b23\",\"darkLevel1\":\"#0b161d\",\"darkLevel2\":\"#14252f\",\"darkTextTitle\":\"#e4e8f7\",\"darkTextPrimary\":\"#d5d9e9\",\"darkTextSecondary\":\"#d8ddf0\",\"darkPrimaryLight\":\"#ecf1f1\",\"darkPrimaryMain\":\"#7bb11d\",\"darkPrimaryDark\":\"#00897b\",\"darkPrimary200\":\"#c0ff53\",\"darkPrimary800\":\"#364e0d\",\"darkSecondaryLight\":\"#e0f2f1\",\"darkSecondaryMain\":\"#009688\",\"darkSecondaryDark\":\"#00897b\",\"darkSecondary200\":\"#80cbc4\",\"darkSecondary800\":\"#00695c\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"primaryLight\":\"#e4e7ec\",\"primary200\":\"#909ab0\",\"primaryMain\":\"#389ff9\",\"primaryDark\":\"#1c2f59\",\"primary800\":\"#132145\",\"secondaryLight\":\"#e8fdf7\",\"secondary200\":\"#bacc96\",\"secondaryMain\":\"#99c83c\",\"secondaryDark\":\"#6d9026\",\"secondary800\":\"#304605\",\"successLight\":\"#e3f8e8\",\"success200\":\"#8be09f\",\"successMain\":\"#17c13e\",\"successDark\":\"#14bb38\",\"errorLight\":\"#e48784\",\"errorMain\":\"#d9534f\",\"errorDark\":\"#d54c48\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#fdf5ea\",\"warningMain\":\"#f0ad4e\",\"warningDark\":\"#ec9c3d\",\"warning100\":\"#ebca2f\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#1b1a1a\",\"grey600\":\"#757575\",\"grey700\":\"#000\",\"grey900\":\"#212121\",\"darkPaper\":\"#030614\",\"darkBackground\":\"#0a0f23\",\"darkLevel1\":\"#070e13\",\"darkLevel2\":\"#12172f\",\"darkTextTitle\":\"#e4e8f7\",\"darkTextPrimary\":\"#d5d9e9\",\"darkTextSecondary\":\"#d8ddf0\",\"darkPrimaryLight\":\"#ecedf1\",\"darkPrimaryMain\":\"#606d88\",\"darkPrimaryDark\":\"#586580\",\"darkPrimary200\":\"#b0b6c4\",\"darkPrimary800\":\"#44506b\",\"darkSecondaryLight\":\"#fde8ef\",\"darkSecondaryMain\":\"#ec407a\",\"darkSecondaryDark\":\"#ea3a72\",\"darkSecondary200\":\"#f6a0bd\",\"darkSecondary800\":\"#e42a5d\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"primaryLight\":\"#e3ebeb\",\"primary200\":\"#8bacad\",\"primaryMain\":\"#16595a\",\"primaryDark\":\"#135152\",\"primary800\":\"#0c3e3f\",\"secondaryLight\":\"#f8f0e5\",\"secondary200\":\"#e3bf91\",\"secondaryMain\":\"#c77e23\",\"secondaryDark\":\"#c1761f\",\"secondary800\":\"#b36115\",\"successLight\":\"#b9f6ca\",\"success200\":\"#69f0ae\",\"successMain\":\"#00e676\",\"successDark\":\"#00c853\",\"errorLight\":\"#ef9a9a\",\"errorMain\":\"#f44336\",\"errorDark\":\"#c62828\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#fff8e1\",\"warningMain\":\"#ffe57f\",\"warningDark\":\"#ffc107\",\"warning100\":\"#ebca2f\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#1b1a1a\",\"grey600\":\"#757575\",\"grey700\":\"#000\",\"grey900\":\"#212121\",\"darkPaper\":\"#010f17\",\"darkBackground\":\"#010606\",\"darkLevel1\":\"#02131d\",\"darkLevel2\":\"#010f17\",\"darkTextTitle\":\"#fff\",\"darkTextPrimary\":\"#fff\",\"darkTextSecondary\":\"#8492c4\",\"darkPrimaryLight\":\"#eceff1\",\"darkPrimaryMain\":\"#1f7778\",\"darkPrimaryDark\":\"#1b6f70\",\"darkPrimary200\":\"#8fbbbc\",\"darkPrimary800\":\"#125a5b\",\"darkSecondaryLight\":\"#f8f0e5\",\"darkSecondaryMain\":\"#c77e23\",\"darkSecondaryDark\":\"#c1761f\",\"darkSecondary200\":\"#e3bf91\",\"darkSecondary800\":\"#b36115\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"primaryLight\":\"#e3e8e8\",\"primary200\":\"#8b9fa1\",\"primaryMain\":\"#173e43\",\"primaryDark\":\"#14383d\",\"primary800\":\"#0d282c\",\"secondaryLight\":\"#e8f6f5\",\"secondary200\":\"#9fd8d6\",\"secondaryMain\":\"#3fb0ac\",\"secondaryDark\":\"#39a9a5\",\"secondary800\":\"#299792\",\"successLight\":\"#b9f6ca\",\"success200\":\"#69f0ae\",\"successMain\":\"#00e676\",\"successDark\":\"#00c853\",\"errorLight\":\"#ef9a9a\",\"errorMain\":\"#f44336\",\"errorDark\":\"#c62828\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#fff8e1\",\"warningMain\":\"#ffe57f\",\"warningDark\":\"#ffc107\",\"warning100\":\"#ebca2f\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#1b1a1a\",\"grey600\":\"#757575\",\"grey700\":\"#000\",\"grey900\":\"#212121\",\"darkPaper\":\"#051114\",\"darkBackground\":\"#030708\",\"darkLevel1\":\"#02131d\",\"darkLevel2\":\"#051114\",\"darkTextTitle\":\"#fff\",\"darkTextPrimary\":\"#fff\",\"darkTextSecondary\":\"#ccd2eb\",\"darkPrimaryLight\":\"#e3e8e8\",\"darkPrimaryMain\":\"#3a5b5f\",\"darkPrimaryDark\":\"#14383d\",\"darkPrimary200\":\"#8b9fa1\",\"darkPrimary800\":\"#0d282c\",\"darkSecondaryLight\":\"#e8f6f5\",\"darkSecondaryMain\":\"#3fb0ac\",\"darkSecondaryDark\":\"#39a9a5\",\"darkSecondary200\":\"#9fd8d6\",\"darkSecondary800\":\"#299792\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"primaryLight\":\"#e2e5e8\",\"primary200\":\"#8591a1\",\"primaryMain\":\"#0a2342\",\"primaryDark\":\"#091f3c\",\"primary800\":\"#05152b\",\"secondaryLight\":\"#e6f4f1\",\"secondary200\":\"#96d2c6\",\"secondaryMain\":\"#2ca58d\",\"secondaryDark\":\"#279d85\",\"secondary800\":\"#1b8a70\",\"successLight\":\"#b9f6ca\",\"success200\":\"#69f0ae\",\"successMain\":\"#00e676\",\"successDark\":\"#00c853\",\"errorLight\":\"#ef9a9a\",\"errorMain\":\"#f44336\",\"errorDark\":\"#c62828\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#fff8e1\",\"warningMain\":\"#ffe57f\",\"warningDark\":\"#ffc107\",\"warning100\":\"#ebca2f\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#1b1a1a\",\"grey600\":\"#757575\",\"grey700\":\"#000\",\"grey900\":\"#212121\",\"darkPaper\":\"#030c1d\",\"darkBackground\":\"#051327\",\"darkLevel1\":\"#071a33\",\"darkLevel2\":\"#091f3c\",\"darkTextTitle\":\"#d7dcec\",\"darkTextPrimary\":\"#bdc8f0\",\"darkTextSecondary\":\"#8492c4\",\"darkPrimaryLight\":\"#e2e5e8\",\"darkPrimaryMain\":\"#54657b\",\"darkPrimaryDark\":\"#2f445e\",\"darkPrimary200\":\"#8591a1\",\"darkPrimary800\":\"#05152b\",\"darkSecondaryLight\":\"#e6f4f1\",\"darkSecondaryMain\":\"#2ca58d\",\"darkSecondaryDark\":\"#279d85\",\"darkSecondary200\":\"#96d2c6\",\"darkSecondary800\":\"#1b8a70\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"primaryLight\":\"#e8eaf6\",\"primary200\":\"#9fa8da\",\"primaryMain\":\"#3f51b5\",\"primaryDark\":\"#3949ab\",\"primary800\":\"#283593\",\"secondaryLight\":\"#e8eaf6\",\"secondary200\":\"#9fa8da\",\"secondaryMain\":\"#3f51b5\",\"secondaryDark\":\"#3949ab\",\"secondary800\":\"#283593\",\"successLight\":\"#b9f6ca\",\"success200\":\"#69f0ae\",\"successMain\":\"#00e676\",\"successDark\":\"#00c853\",\"errorLight\":\"#ef9a9a\",\"errorMain\":\"#f44336\",\"errorDark\":\"#c62828\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#fff8e1\",\"warningMain\":\"#ffe57f\",\"warningDark\":\"#ffc107\",\"warning100\":\"#ebca2f\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#1b1a1a\",\"grey600\":\"#757575\",\"grey700\":\"#000\",\"grey900\":\"#212121\",\"darkPaper\":\"#111936\",\"darkBackground\":\"#1a223f\",\"darkLevel1\":\"#29314f\",\"darkLevel2\":\"#212946\",\"darkTextTitle\":\"#d7dcec\",\"darkTextPrimary\":\"#bdc8f0\",\"darkTextSecondary\":\"#8492c4\",\"darkPrimaryLight\":\"#eeedfd\",\"darkPrimaryMain\":\"#7267ef\",\"darkPrimaryDark\":\"#6a5fed\",\"darkPrimary200\":\"#b9b3f7\",\"darkPrimary800\":\"#554ae8\",\"darkSecondaryLight\":\"#eeedfd\",\"darkSecondaryMain\":\"#7267ef\",\"darkSecondaryDark\":\"#6a5fed\",\"darkSecondary200\":\"#b9b3f7\",\"darkSecondary800\":\"#554ae8\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"primaryLight\":\"#e8f4f6\",\"primary200\":\"#99c83c\",\"primaryMain\":\"#7bb11d\",\"primaryDark\":\"#1f65a1\",\"primary800\":\"#15436b\",\"secondaryLight\":\"#e8eaf6\",\"secondary200\":\"#5487b4\",\"secondaryMain\":\"#3a8dd6\",\"secondaryDark\":\"#003e74\",\"secondary800\":\"#02335d\",\"successLight\":\"#b9f6ca\",\"success200\":\"#69f0ae\",\"successMain\":\"#00e676\",\"successDark\":\"#00c853\",\"errorLight\":\"#ef9a9a\",\"errorMain\":\"#f44336\",\"errorDark\":\"#c62828\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#fff8e1\",\"warningMain\":\"#ffe57f\",\"warningDark\":\"#ffc107\",\"warning100\":\"#ebca2f\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#1b1a1a\",\"grey600\":\"#757575\",\"grey700\":\"#000\",\"grey900\":\"#212121\",\"darkPaper\":\"#111936\",\"darkBackground\":\"#1a223f\",\"darkLevel1\":\"#29314f\",\"darkLevel2\":\"#212946\",\"darkTextTitle\":\"#d7dcec\",\"darkTextPrimary\":\"#bdc8f0\",\"darkTextSecondary\":\"#8492c4\",\"darkPrimaryLight\":\"#eeedfd\",\"darkPrimaryMain\":\"#7267ef\",\"darkPrimaryDark\":\"#6a5fed\",\"darkPrimary200\":\"#b9b3f7\",\"darkPrimary800\":\"#554ae8\",\"darkSecondaryLight\":\"#eeedfd\",\"darkSecondaryMain\":\"#7267ef\",\"darkSecondaryDark\":\"#6a5fed\",\"darkSecondary200\":\"#b9b3f7\",\"darkSecondary800\":\"#554ae8\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"primaryLight\":\"#f7f7f7\",\"primary200\":\"#54b474\",\"primaryMain\":\"#0574d4\",\"primaryDark\":\"#005299\",\"primary800\":\"#025d16\",\"secondaryLight\":\"#e8eaf6\",\"secondary200\":\"#adcc70\",\"secondaryMain\":\"#99c83c\",\"secondaryDark\":\"#669416\",\"secondary800\":\"#172204\",\"successLight\":\"#b9f6ca\",\"success200\":\"#69f0ae\",\"successMain\":\"#00e676\",\"successDark\":\"#00c853\",\"errorLight\":\"#ef9a9a\",\"errorMain\":\"#f44336\",\"errorDark\":\"#c62828\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#fff8e1\",\"warningMain\":\"#ffe57f\",\"warningDark\":\"#ffc107\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#1b1a1a\",\"grey600\":\"#757575\",\"grey700\":\"#000\",\"grey900\":\"#212121\",\"darkPaper\":\"#111936\",\"darkBackground\":\"#1a223f\",\"darkLevel1\":\"#29314f\",\"darkLevel2\":\"#212946\",\"darkTextTitle\":\"#d7dcec\",\"darkTextPrimary\":\"#bdc8f0\",\"darkTextSecondary\":\"#8492c4\",\"darkPrimaryLight\":\"#eeedfd\",\"darkPrimaryMain\":\"#7267ef\",\"darkPrimaryDark\":\"#6a5fed\",\"darkPrimary200\":\"#b9b3f7\",\"darkPrimary800\":\"#554ae8\",\"darkSecondaryLight\":\"#eeedfd\",\"darkSecondaryMain\":\"#7267ef\",\"darkSecondaryDark\":\"#6a5fed\",\"darkSecondary200\":\"#b9b3f7\",\"darkSecondary800\":\"#554ae8\"};","import { emptySplitApi } from './index'\n\nexport const foundationProfileApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getProfileHeader: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-service/foundation-profile/profile-header/${model.profileId}`,\n method: \"GET\",\n }),\n }),\n getTaxReturn: builder.query({\n query: (profileId) => ({\n url: `api/v1/search-engine-service/foundation-profile/tax-return/${profileId}`,\n method: \"GET\",\n }),\n }),\n getFinancialList: builder.mutation({\n query: (profileId) => ({\n url: `api/v1/search-engine-service/foundation-profile/financial-list/${profileId}`,\n method: \"GET\",\n }),\n }),\n getGiftsPagedList: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-service/foundation-profile/gifts/${model.profileId}`,\n method: \"POST\",\n body: model\n }),\n }),\n getGiftsPagedListV2: builder.mutation({\n query: (model) => ({\n url: `api/v2/search-engine-service/foundation-profile/gifts/${model.profileId}`,\n method: \"POST\",\n body: model\n }),\n }),\n getProgramList: builder.query({\n query: (profileId) => ({\n url: `api/v1/search-engine-service/foundation-profile/programs/${profileId}`,\n method: \"GET\",\n }),\n }),\n getApplication: builder.query({\n query: (profileId) => ({\n url: `api/v1/search-engine-service/foundation-profile/applications/${profileId}`,\n method: \"GET\",\n }),\n }),\n getApplicationWithTrigger: builder.mutation({\n query: (profileId) => ({\n url: `api/v1/search-engine-service/foundation-profile/applications/${profileId}`,\n method: \"GET\",\n }),\n }),\n getGrantOverview: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-service/foundation-profile/grant-overview/${model.profileId}?`\n + `pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || ''}`\n + `&orderField=${model?.orderField || 'description'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\",\n }),\n }),\n getDirectorList: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-service/foundation-profile/directors/${model.profileId}?`\n + `pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || ''}`\n + `&orderField=${model?.orderField || 'description'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\",\n }),\n }),\n \n getChartProvinceList: builder.mutation({\n query: (profileId) => ({\n url: `api/v1/search-engine-service/foundation-profile/charts/province-list/${profileId}`,\n method: \"GET\",\n }),\n }),\n getChartRangeAmountList: builder.mutation({\n query: (profileId) => ({\n url: `api/v1/search-engine-service/foundation-profile/charts/range-amount/${profileId}`,\n method: \"GET\",\n }),\n }),\n getChartRangeSector: builder.mutation({\n query: (profileId) => ({\n url: `api/v1/search-engine-service/foundation-profile/charts/range-sector/${profileId}`,\n method: \"GET\",\n }),\n }),\n getFoundationProfileSummaryOverview: builder.mutation({\n query: (profileId) => ({\n url: `api/v1/search-engine-service/foundation-profile/summary-overview/${profileId}`,\n method: \"GET\",\n }),\n })\n }),\n overrideExisting: false,\n});\n\nexport const {\n useGetProfileHeaderMutation,\n useGetGiftsPagedListMutation,\n useGetGiftsPagedListV2Mutation,\n useGetProgramListQuery,\n useGetApplicationQuery,\n useGetApplicationWithTriggerMutation,\n useGetGrantOverviewMutation,\n useGetDirectorListMutation,\n useGetChartProvinceListMutation,\n useGetChartRangeAmountListMutation,\n useGetChartRangeSectorMutation,\n useGetFoundationProfileSummaryOverviewMutation,\n useGetTaxReturnQuery,\n useGetFinancialListMutation,\n} = foundationProfileApi;\n","import { emptySplitApi } from './index'\n\nexport const foundationProfileCanadianApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getMainProfileCA: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-ca-service/foundation-profile/main/${model.profileId}`,\n method: \"GET\",\n }),\n }),\n getGiftsPagedListCAV2: builder.mutation({\n query: (model) => ({\n url: `api/v2/search-engine-ca-service/foundation-profile/gifts/${model.profileId}`,\n method: \"POST\",\n body: model\n }),\n }),\n getGiftsPagedListCA: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-ca-service/foundation-profile/gifts/${model.profileId}`,\n method: \"POST\",\n body: model\n }),\n }),\n getProgramListCA: builder.query({\n query: (profileId) => ({\n url: `api/v1/search-engine-ca-service/foundation-profile/programs/${profileId}`,\n method: \"GET\",\n }),\n }),\n getApplicationCA: builder.query({\n query: (profileId) => ({\n url: `api/v1/search-engine-ca-service/foundation-profile/applications/${profileId}`,\n method: \"GET\",\n }),\n }),\n getApplicationWithTriggerCA: builder.mutation({\n query: (profileId) => ({\n url: `api/v1/search-engine-ca-service/foundation-profile/applications/${profileId}`,\n method: \"GET\",\n }),\n }),\n getGrantOverviewCA: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-ca-service/foundation-profile/grant-overview/${model.profileId}?`\n + `pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || ''}`\n + `&orderField=${model?.orderField || 'description'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\",\n }),\n }),\n getDirectorListCA: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-ca-service/foundation-profile/directors/${model.profileId}?`\n + `pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || ''}`\n + `&orderField=${model?.orderField || 'description'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\",\n }),\n }),\n \n getChartProvinceListCA: builder.mutation({\n query: (profileId) => ({\n url: `api/v1/search-engine-ca-service/foundation-profile/charts/province-list/${profileId}`,\n method: \"GET\",\n }),\n }),\n getChartRangeAmountListCA: builder.mutation({\n query: (profileId) => ({\n url: `api/v1/search-engine-ca-service/foundation-profile/charts/range-amount/${profileId}`,\n method: \"GET\",\n }),\n }),\n getChartRangeSectorCA: builder.mutation({\n query: (profileId) => ({\n url: `api/v1/search-engine-ca-service/foundation-profile/charts/range-sector/${profileId}`,\n method: \"GET\",\n }),\n }),\n getFoundationProfileSummaryOverviewCA: builder.mutation({\n query: (profileId) => ({\n url: `api/v1/search-engine-ca-service/foundation-profile/summary-overview/${profileId}`,\n method: \"GET\",\n }),\n }),\n getCustomAnalysisListCA: builder.mutation({\n query: (profileId) => ({\n url: `api/v1/search-engine-ca-service/foundation-profile/custom-analysis/${profileId}`,\n method: \"GET\",\n }),\n }),\n getFoundationFinancialList: builder.mutation({\n query: (profileId) => ({\n url: `api/v1/search-engine-ca-service/foundation-profile/financial-list/${profileId}`,\n method: \"GET\",\n }),\n }),\n getYearAnalysisList: builder.mutation({\n query: (profileId) => ({\n url: `api/v1/search-engine-ca-service/foundation-profile/year-analysis/${profileId}`,\n method: \"GET\",\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const {\n useGetMainProfileCAMutation, \n useGetGiftsPagedListCAMutation,\n useGetGiftsPagedListCAV2Mutation,\n useGetProgramListCAQuery,\n useGetApplicationCAQuery,\n useGetApplicationWithTriggerCAMutation,\n useGetGrantOverviewCAMutation,\n useGetDirectorListCAMutation,\n useGetChartProvinceListCAMutation,\n useGetChartRangeAmountListCAMutation,\n useGetChartRangeSectorCAMutation,\n useGetFoundationProfileSummaryOverviewCAMutation,\n useGetCustomAnalysisListCAMutation,\n useGetFoundationFinancialListMutation,\n useGetYearAnalysisListMutation\n} = foundationProfileCanadianApi;\n","import { emptySplitApi } from \"./index\";\n\nexport const adminApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getAllUsersPagedList: builder.mutation({\n query: (model) => ({\n url:\n `api/v1/auth-service/admin/all-users?` +\n `searchTerm=${model?.searchTerm || \"\"}` +\n `&status=${model?.status}` +\n `&pageNumber=${model?.pageNumber || 0}` +\n `&pageSize=${model?.pageSize || \"\"}` +\n `&orderField=${model?.orderField || \"userName\"}` +\n `&orderDirection=${model?.orderDirection || \"asc\"}`,\n method: \"GET\",\n }),\n }),\n createUser: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/admin/create-user`,\n method: \"POST\",\n body: model,\n }),\n }),\n getUserAccount: builder.query({\n query: (userId) => ({\n url: `api/v1/auth-service/admin/user-account/${userId}`,\n method: \"GET\",\n }),\n }),\n updateUser: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/admin/edit-user/`,\n method: \"PATCH\",\n body: model,\n }),\n }),\n getExpirationDateDetails: builder.mutation({\n query: (userId) => ({\n url: `api/v1/auth-service/admin/expiration-date-details/${userId}`,\n method: \"GET\",\n }),\n }),\n updateExpirationDate: builder.mutation({\n query: ({ userId, ...model }) => ({\n url: `api/v1/auth-service/admin/update-expiration-date/${userId}`,\n method: \"PATCH\",\n body: model\n }),\n }),\n enableDisableAccount: builder.mutation({\n query: (userId) => ({\n url: `api/v1/auth-service/admin/enable-disable-user/${userId}`,\n method: \"PATCH\",\n }),\n }),\n sendResetPasswordLink: builder.mutation({\n query: (userId) => ({\n url: `api/v1/auth-service/admin/reset-password-link/${userId}`,\n method: \"PATCH\",\n }),\n }),\n sendSetupPasswordLink: builder.mutation({\n query: (userId) => ({\n url: `api/v1/auth-service/admin/setup-password-link/${userId}`,\n method: \"PATCH\",\n }),\n }),\n sendActivateAccountLink: builder.mutation({\n query: (userId) => ({\n url: `api/v1/auth-service/admin/activate-account-link/${userId}`,\n method: \"PATCH\",\n }),\n }),\n importPipedriveOrganization: builder.mutation({\n query: (pipedriveOrganizationCode) => ({\n url: `api/v1/auth-service/admin/import-pipedrive-organization/${pipedriveOrganizationCode}`,\n method: \"GET\",\n }),\n }),\n validateUserAccountCreate: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/admin/validate-account-create`,\n method: \"POST\",\n body: model,\n }),\n }),\n addLicensesToUser: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/admin/add-licenses-user`,\n method: \"POST\",\n body: model,\n }),\n }),\n updateSeAccess: builder.mutation({\n query: () => ({\n url: `api/v1/auth-service/admin/update-se-access`,\n method: \"POST\",\n }),\n }),\n addRemoveProAccess: builder.mutation({\n query: (userId) => ({\n url: `api/v1/auth-service/admin/add-remove-pro-access/${userId}`,\n method: \"POST\",\n }),\n }),\n restoreAdditionalUser: builder.mutation({\n query: ({ userId, ...model }) => ({\n url: `api/v1/auth-service/admin/restore-additional-user/${userId}`,\n method: \"POST\",\n body: model,\n }),\n }),\n getOrganizationLicenses: builder.query({\n query: (organizationId) => ({\n url: `api/v1/auth-service/admin/organization-licenses/${organizationId}`,\n method: \"GET\",\n }),\n }),\n deleteOrganizationLicense: builder.mutation({\n query: (licenseId) => ({\n url: `api/v1/auth-service/admin/organization-licenses/${licenseId}`,\n method: \"DELETE\",\n }),\n }),\n createAccessToken: builder.mutation({\n query: (userId) => ({\n url: `api/v1/auth-service/admin/access-token/create/${userId}`,\n method: \"POST\",\n }),\n }),\n getAccessTokenDetails: builder.mutation({\n query: (userId) => ({\n url: `api/v1/auth-service/admin/access-token/details/${userId}`,\n method: \"GET\",\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const {\n useGetAllUsersPagedListMutation,\n useCreateUserMutation,\n useGetUserAccountQuery,\n useUpdateUserMutation,\n useGetExpirationDateDetailsMutation,\n useUpdateExpirationDateMutation,\n useEnableDisableAccountMutation,\n useSendResetPasswordLinkMutation,\n useSendSetupPasswordLinkMutation,\n useSendActivateAccountLinkMutation,\n useImportPipedriveOrganizationMutation,\n useValidateUserAccountCreateMutation,\n useAddLicensesToUserMutation,\n useUpdateSeAccessMutation,\n useAddRemoveProAccessMutation,\n useRestoreAdditionalUserMutation,\n useGetOrganizationLicensesQuery,\n useDeleteOrganizationLicenseMutation,\n useCreateAccessTokenMutation,\n useGetAccessTokenDetailsMutation\n} = adminApi;\n","// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://bit.ly/CRA-PWA\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.0/8 are considered localhost for IPv4.\n window.location.hostname.match(/^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/)\n);\n\nfunction registerValidSW(swUrl, config) {\n navigator.serviceWorker\n .register(swUrl)\n .then((registration) => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing;\n if (installingWorker == null) {\n return;\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n console.log(\n 'New content is available and will be used when all tabs for this page are closed. See https://bit.ly/CRA-PWA.'\n );\n\n // Execute callback\n if (config && config.onUpdate) {\n config.onUpdate(registration);\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log('Content is cached for offline use.');\n\n // Execute callback\n if (config && config.onSuccess) {\n config.onSuccess(registration);\n }\n }\n }\n };\n };\n })\n .catch((error) => {\n console.error('Error during service worker registration:', error);\n });\n}\n\nfunction checkValidServiceWorker(swUrl, config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl, {\n headers: { 'Service-Worker': 'script' }\n })\n .then((response) => {\n // Ensure service worker exists, and that we really are getting a JS file.\n const contentType = response.headers.get('content-type');\n if (response.status === 404 || (contentType != null && contentType.indexOf('javascript') === -1)) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then((registration) => {\n registration.unregister().then(() => {\n window.location.reload();\n });\n });\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config);\n }\n })\n .catch(() => {\n console.log('No internet connection found. App is running in offline mode.');\n });\n}\n\nexport function register(config) {\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\n return;\n }\n\n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n\n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config);\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n 'This web app is being served cache-first by a service worker. To learn more, visit https://bit.ly/CRA-PWA'\n );\n });\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config);\n }\n });\n }\n}\n\nexport function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready\n .then((registration) => {\n registration.unregister();\n })\n .catch((error) => {\n console.error(error.message);\n });\n }\n}\n","// action - account reducer\nexport const LOGIN = 'LOGIN';\nexport const LOGOUT = 'LOGOUT';\nexport const REGISTER = 'REGISTER';\nexport const FIREBASE_STATE_CHANGED = 'FIREBASE_STATE_CHANGED';\n\n// action - customization reducer\nexport const SET_MENU = '@customization/SET_MENU';\nexport const MENU_TOGGLE = '@customization/MENU_TOGGLE';\nexport const MENU_OPEN = '@customization/MENU_OPEN';\nexport const MENU_TYPE = '@customization/MENU_TYPE';\nexport const PRESET_COLORS = '@customization/PRESET_COLORS';\nexport const THEME_LOCALE = '@customization/THEME_LOCALE';\nexport const THEME_RTL = '@customization/THEME_RTL';\nexport const SET_FONT_FAMILY = '@customization/SET_FONT_FAMILY';\nexport const SET_BORDER_RADIUS = '@customization/SET_BORDER_RADIUS';\nexport const SET_OUTLINED_FILLED = '@customization/SET_OUTLINED_FILLED';\n\n// action - snackbar\nexport const SNACKBAR_OPEN = '@snackbar/SNACKBAR_OPEN';\n\n// action - cart\nexport const ADD_PRODUCTS = '@cart/ADD_PRODUCTS';\nexport const REMOVE_PRODUCT = '@cart/REMOVE_PRODUCT';\nexport const UPDATE_QUANTITY = '@cart/UPDATE_QUANTITY';\nexport const NEXT_STEP = '@cart/NEXT_STEP';\nexport const BACK_STEP = '@cart/BACK_STEP';\nexport const SET_STEP = '@cart/SET_STEP';\nexport const SET_BILLING_ADDRESS = '@cart/SET_BILLING_ADDRESS';\nexport const SET_DISCOUNT = '@cart/SET_DISCOUNT';\nexport const SET_SHIPPING_CHARGE = '@cart/SET_SHIPPING_CHARGE';\nexport const SET_PAYMENT_METHOD = '@cart/SET_PAYMENT_METHOD';\nexport const SET_PAYMENT_CARD = '@cart/SET_PAYMENT_CARD';\nexport const RESET_CART = '@cart/RESET_CART';\n\n// action - kanban\nexport const ADD_COLUMN = '@kanban/ADD_COLUMN';\nexport const EDIT_COLUMN = '@kanban/EDIT_COLUMN';\nexport const DELETE_COLUMN = '@kanban/DELETE_COLUMN';\nexport const UPDATE_COLUMN_ORDER = '@kanban/UPDATE_COLUMN_ORDER';\n\nexport const ADD_ITEM = '@kanban/ADD_ITEM';\nexport const EDIT_ITEM = '@kanban/EDIT_ITEM';\nexport const DELETE_ITEM = '@kanban/DELETE_ITEM';\nexport const UPDATE_COLUMN_ITEM_ORDER = '@kanban/UPDATE_COLUMN_ITEM_ORDER';\nexport const SELECT_ITEM = '@kanban/SELECT_ITEM';\nexport const ADD_ITEM_COMMENT = '@kanban/ADD_ITEM_COMMENT';\n\nexport const UPDATE_STORY_ORDER = '@kanban/UPDATE_STORY_ORDER';\nexport const UPDATE_STORY_ITEM_ORDER = '@kanban/UPDATE_STORY_ITEM_ORDER';\nexport const DELETE_STORY = '@kanban/DELETE_STORY';\nexport const ADD_STORY = '@kanban/ADD_STORY';\nexport const EDIT_STORY = '@kanban/EDIT_STORY';\nexport const ADD_STORY_COMMENT = '@kanban/ADD_STORY_COMMENT';\n","// project imports\nimport config from 'config';\n\n// action - state management\nimport * as actionTypes from './actions';\n\nexport const initialState = {\n isOpen: [], // for active default menu\n fontFamily: config.fontFamily,\n borderRadius: config.borderRadius,\n outlinedFilled: config.outlinedFilled,\n navType: config.theme,\n presetColor: config.presetColor,\n locale: config.i18n,\n rtlLayout: config.rtlLayout,\n opened: true\n};\n\n// ==============================|| CUSTOMIZATION REDUCER ||============================== //\n\nconst customizationReducer = (state = initialState, action) => {\n let id;\n switch (action.type) {\n case actionTypes.MENU_OPEN:\n id = action.id;\n return {\n ...state,\n isOpen: [id]\n };\n\n case actionTypes.MENU_TYPE:\n return {\n ...state,\n navType: action.navType\n };\n case actionTypes.PRESET_COLORS:\n return {\n ...state,\n presetColor: action.presetColor\n };\n case actionTypes.THEME_LOCALE:\n return {\n ...state,\n locale: action.locale\n };\n case actionTypes.THEME_RTL:\n return {\n ...state,\n rtlLayout: action.rtlLayout\n };\n case actionTypes.SET_MENU:\n return {\n ...state,\n opened: action.opened\n };\n case actionTypes.SET_FONT_FAMILY:\n return {\n ...state,\n fontFamily: action.fontFamily\n };\n case actionTypes.SET_BORDER_RADIUS:\n return {\n ...state,\n borderRadius: action.borderRadius\n };\n case actionTypes.SET_OUTLINED_FILLED:\n return {\n ...state,\n outlinedFilled: action.outlinedFilled\n };\n default:\n return state;\n }\n};\n\nexport default customizationReducer;\n","// action - state management\nimport * as actionTypes from './actions';\n\nconst initialState = {\n action: false,\n open: false,\n message: 'Note archived',\n anchorOrigin: {\n vertical: 'bottom',\n horizontal: 'right'\n },\n variant: 'default',\n alertSeverity: 'success',\n transition: 'Fade',\n close: true,\n actionButton: false\n};\n\n// ==============================|| SNACKBAR REDUCER ||============================== //\n\nconst snackbarReducer = (state = initialState, action) => {\n switch (action.type) {\n case actionTypes.SNACKBAR_OPEN:\n return {\n ...state,\n action: !state.action,\n open: action.open ? action.open : initialState.open,\n message: action.message ? action.message : initialState.message,\n anchorOrigin: action.anchorOrigin ? action.anchorOrigin : initialState.anchorOrigin,\n variant: action.variant ? action.variant : initialState.variant,\n alertSeverity: action.alertSeverity ? action.alertSeverity : initialState.alertSeverity,\n transition: action.transition ? action.transition : initialState.transition,\n close: action.close === false ? action.close : initialState.close,\n actionButton: action.actionButton ? action.actionButton : initialState.actionButton\n };\n default:\n return state;\n }\n};\n\nexport default snackbarReducer;\n","import { emptySplitApi } from './index'\n\nexport const userProfileApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getUserProfile: builder.query({\n query: () => ({\n url: `api/v1/auth-service/user-profile`,\n method: \"GET\"\n }),\n }),\n updateUserProfile: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/user-profile`,\n method: \"PATCH\",\n body: model\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const { useGetUserProfileQuery, useUpdateUserProfileMutation } = userProfileApi;\n","import { createSlice } from \"@reduxjs/toolkit\";\n//import { emptySplitApi } from \"Services\";\nimport { userProfileApi } from \"Services/UserProfileService\";\n\nexport const initialState = {\n email: {\n value: \"\",\n error: \"\",\n },\n userName: {\n value: \"\",\n error: \"\",\n },\n firstName: {\n value: \"\",\n error: \"\",\n },\n lastName: {\n value: \"\",\n error: \"\",\n },\n position: {\n value: \"\",\n error: \"\",\n },\n phoneNumber: {\n value: \"\",\n error: \"\",\n },\n userNameEmail: {\n value: \"\",\n error: \"\"\n },\n currentProfileInfo: {\n email: '',\n userName: '',\n firstName: '',\n lastName: '',\n position: '',\n phoneNumber: ''\n }\n};\n\nconst userProfileSlice = createSlice({\n name: \"user-profile\",\n initialState,\n reducers: {\n init: (state, action) => {\n state.init = {};\n },\n handleChange: (state, action) => {\n state[action.payload.field].error = \"\";\n state[action.payload.field].value = action.payload.value; \n },\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state[field].error = errors[0];\n });\n },\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n userProfileApi.endpoints.getUserProfile.matchFulfilled, (state, action) => {\n Object.entries(action.payload).forEach(([field, value]) => { \n state[field].value = value ?? '';\n state[field].error = '';\n });\n\n state.currentProfileInfo = action.payload;\n }\n )\n .addMatcher(\n userProfileApi.endpoints.updateUserProfile.matchFulfilled, (state, action) => {\n state.currentProfileInfo.email = state.email.value;\n state.currentProfileInfo.userName = state.userName.value;\n state.currentProfileInfo.firstName = state.firstName.value;\n state.currentProfileInfo.lastName = state.lastName.value;\n state.currentProfileInfo.position = state.position.value;\n state.currentProfileInfo.phoneNumber = state.phoneNumber.value; \n }\n )\n }\n});\n\nexport const { \n handleChange,\n handleModelErrors\n} = userProfileSlice.actions;\n\nexport default userProfileSlice.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\n\nexport const initialState = {\n notificationList: [],\n};\n\nconst alertNotificationSlice = createSlice({\n name: \"alert-notification\",\n initialState,\n reducers: {\n handleCheck: (state, action) => {\n state.notificationList.forEach(element => {\n if (element.id === action.payload.id) {\n element.enabled = action.payload.enabled;\n }\n });\n },\n handleGet: (state, action) => {\n state.notificationList = action.payload;\n }\n },\n});\n\nexport const { \n handleCheck,\n handleGet\n} = alertNotificationSlice.actions;\n\nexport default alertNotificationSlice.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\n\nexport const initialState = {\n document: '',\n currentSignature: '',\n firstTime: true\n};\n\nconst signatureSlice = createSlice({\n name: \"signature\",\n initialState,\n reducers: {\n handleChange: (state, action) => {\n state.document = action.payload;\n\n if (state.firstTime) {\n state.currentSignature = action.payload;\n state.firstTime = false;\n }\n },\n handleGet: (state, action) => {\n state.document = action.payload;\n state.currentSignature = action.payload;\n state.firstTime = true;\n },\n handleSaveSuccess: (state, action) => {\n state.document = action.payload.data;\n state.currentSignature = action.payload.data;\n state.firstTime = true;\n }\n },\n});\n\nexport const { \n handleChange,\n handleSaveSuccess,\n handleGet\n} = signatureSlice.actions;\n\nexport default signatureSlice.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { countryApi } from 'Services/CountryService';\nimport { organizationProfileApi } from 'Services/OrganizationProfileService';\n\nexport const initialState = {\n countryList: [],\n selectedCountry: {\n id: null,\n code: null,\n description: null,\n provinceOrStateList: []\n },\n selectedProvinceOrState: {\n id: null,\n code: null,\n description: null,\n },\n companyName: {\n value: \"\",\n error: \"\",\n },\n phoneNumber: {\n value: \"\",\n error: \"\",\n },\n businessEin: {\n value: \"\",\n error: \"\",\n },\n addressLine: {\n value: \"\",\n error: \"\",\n },\n addressLine2: {\n value: \"\",\n error: \"\",\n },\n city: {\n value: \"\",\n error: \"\",\n },\n provinceOrState: {\n value: \"\",\n error: \"\",\n },\n country: {\n value: \"\",\n error: \"\",\n },\n county: {\n value: \"\",\n error: \"\",\n },\n postalCode: {\n value: \"\",\n error: \"\",\n },\n showPageLeave: false,\n currentProfileInfo: {\n companyName: '',\n phoneNumber: '',\n businessEin: '',\n addressLine: '',\n addressLine2: '',\n country: '',\n provinceOrState: '',\n city: '',\n postalCode: '',\n }\n};\n\nconst organizationProfileSlice = createSlice({\n name: \"organization-profile\",\n initialState,\n reducers: {\n handleChange: (state, action) => {\n state[action.payload.field].error = \"\";\n state[action.payload.field].value = action.payload.value;\n },\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state[field].error = errors[0];\n });\n },\n handleGet : (state, action) => {\n Object.entries(action.payload).forEach(([field, value]) => { \n if (state[field]) {\n state[field].value = value || '';\n state[field].error = '';\n }\n });\n\n state.currentProfileInfo = action.payload;\n },\n handleChangeCountry: (state, action) => {\n state.selectedCountry = state.countryList.find(o => o.description === action.payload);\n state.country.value = state.countryList.find(o => o.description === action.payload).description;\n state.selectedProvinceOrState = initialState.selectedProvinceOrState;\n state.provinceOrState = initialState.provinceOrState;\n },\n handleChangeProvinceOrState: (state, action) => {\n if (action.payload?.value) {\n state.selectedProvinceOrState = state.selectedCountry.provinceOrStateList.find(o => o.description === action.payload.value || '');\n state.provinceOrState.value = state.selectedCountry.provinceOrStateList.find(o => o.description === action.payload.value || '').description;\n }\n },\n handleFillCountryAndState: (state, action) => {\n const selectedCountry = state.countryList.find(o => o.description === action.payload.country);\n\n if (selectedCountry) {\n state.selectedCountry = selectedCountry;\n const selectedProvinceOrState = selectedCountry.provinceOrStateList.find(o => o.description === action.payload.provinceOrState);\n if (selectedProvinceOrState) {\n state.selectedProvinceOrState = selectedProvinceOrState;\n }\n }\n },\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n countryApi.endpoints.getCountryList.matchFulfilled, (state, action) => {\n state.countryList = action.payload;\n }\n )\n .addMatcher(\n organizationProfileApi.endpoints.updateOrganizationProfile.matchFulfilled, (state, action) => {\n state.currentProfileInfo.companyName = state.companyName.value;\n state.currentProfileInfo.phoneNumber = state.phoneNumber.value;\n state.currentProfileInfo.businessEin = state.businessEin.value;\n state.currentProfileInfo.addressLine = state.addressLine.value;\n state.currentProfileInfo.addressLine2 = state.addressLine2.value;\n state.currentProfileInfo.country = state.country.value;\n state.currentProfileInfo.provinceOrState = state.provinceOrState.value;\n state.currentProfileInfo.city = state.city.value;\n state.currentProfileInfo.postalCode = state.postalCode.value;\n }\n )\n }\n});\n\nexport const { \n handleChange,\n handleModelErrors,\n handleGet,\n handleChangeCountry,\n handleChangeProvinceOrState,\n handleFillCountryAndState,\n handleShowPageLeave\n} = organizationProfileSlice.actions;\n\nexport default organizationProfileSlice.reducer;\n","import { emptySplitApi } from './index'\n\nexport const organizationAdditionalEmailApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getAdditionalEmailPagedList: builder.mutation({\n query: ({pageNumber, pageSize}) => ({\n url: `api/v1/auth-service/organization/additional-email?pageNumber=${pageNumber}&pageSize=${pageSize}`,\n method: \"GET\"\n }),\n }),\n updateMainEmailAddress: builder.mutation({\n query: (emailAddress) => ({\n url: `api/v1/auth-service/organization/main-email?emailAddress=${emailAddress}`,\n method: \"PATCH\",\n }),\n }),\n insertAdditionalEmail: builder.mutation({\n query: (newEmailAddress) => ({\n url: `api/v1/auth-service/organization/additional-email/${newEmailAddress}`,\n method: \"POST\"\n }),\n }),\n deleteAdditionalEmail: builder.mutation({\n query: (id) => ({\n url: `api/v1/auth-service/organization/additional-email/${id}`,\n method: \"DELETE\"\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const { \n useGetAdditionalEmailPagedListMutation,\n useUpdateMainEmailAddressMutation,\n useInsertAdditionalEmailMutation,\n useDeleteAdditionalEmailMutation\n} = organizationAdditionalEmailApi;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { organizationAdditionalEmailApi } from \"Services/OrganizationAdditionalEmailService\";\n\nexport const initialState = {\n isDialogOpen: false,\n loadingList: false,\n additionalEmailListPagedData: {\n pageNumber: 1,\n pageSize: 5,\n pageCount: 0,\n totalCount: 0,\n items: []\n },\n newEmailAddress: {\n value: '',\n error: ''\n },\n emailAddress: {\n value: '',\n error: ''\n },\n previousEmail: ''\n};\n\nconst organizationAdditionalEmailSlice = createSlice({\n name: \"organization-additional-email\",\n initialState,\n reducers: {\n handleChange: (state, action) => {\n state[action.payload.field].error = \"\";\n state[action.payload.field].value = action.payload.value; \n },\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state[field].error = errors[0];\n });\n },\n closeDialog: (state, action) => {\n state.isDialogOpen = false;\n },\n openDialog: (state, action) => {\n state.isDialogOpen = true;\n state.newEmailAddress.value = '';\n state.newEmailAddress.error = '';\n },\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n organizationAdditionalEmailApi.endpoints.getAdditionalEmailPagedList.matchFulfilled, (state, action) => {\n\n state.emailAddress.value = action.payload.mainEmailAddress || '';\n state.previousEmail = action.payload.mainEmailAddress || '';\n state.loadingList = false;\n \n state.additionalEmailListPagedData.pageNumber = action.payload.pagedData.pageNumber;\n state.additionalEmailListPagedData.pageSize = action.payload.pagedData.pageSize;\n state.additionalEmailListPagedData.pageCount = action.payload.pagedData.pageCount;\n state.additionalEmailListPagedData.totalCount = action.payload.pagedData.totalCount;\n state.additionalEmailListPagedData.items = action.payload.pagedData.items;\n }\n )\n .addMatcher(\n organizationAdditionalEmailApi.endpoints.getAdditionalEmailPagedList.matchPending, (state, action) => {\n state.loadingList = true;\n }\n )\n }\n});\n\nexport const { \n handleChange,\n handleModelErrors,\n closeDialog,\n openDialog,\n} = organizationAdditionalEmailSlice.actions;\n\nexport default organizationAdditionalEmailSlice.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { blockedFundersApi } from \"Services/BlockedFundersService\";\nimport { userProjectApi } from \"Services/UserProjectService\";\nimport startcase from \"utils/startcase\";\n\nexport const initialState = {\n selectedProject: {\n id: null,\n projectName: ''\n },\n userProjectPagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'name',\n orderDirection: 'asc',\n items: []\n },\n blockedFundersPagedList: {\n pageNumber: 0,\n pageSize: 10,\n pageCount: 0,\n totalCount: 0,\n orderField: 'foundationName',\n orderDirection: 'asc',\n items: []\n } \n};\n\nconst blockedFundersSlice = createSlice({\n name: \"favorites-page\",\n initialState,\n reducers: {\n handleSelectUserProject: (state, action) => {\n state.selectedProject.id = action.payload.id;\n state.selectedProject.name = action.payload.name;\n },\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n blockedFundersApi.endpoints.getBlockedFundersList.matchFulfilled, (state, action) => {\n state.blockedFundersPagedList.pageNumber = action.payload.pageNumber;\n state.blockedFundersPagedList.pageSize = action.payload.pageSize;\n state.blockedFundersPagedList.pageCount = action.payload.pageCount;\n state.blockedFundersPagedList.totalCount = action.payload.totalCount;\n state.blockedFundersPagedList.orderField = action.payload.orderField;\n state.blockedFundersPagedList.orderDirection = action.payload.orderDirection;\n state.blockedFundersPagedList.items = action.payload.items?.map(o => ({...o, foundationName: startcase(o.foundationName)}));\n }\n )\n .addMatcher(\n userProjectApi.endpoints.getAll.matchFulfilled, (state, action) => {\n\n const items = [...action.payload.items];\n\n items.push({\n id: 'blocked-account',\n name: 'Blocked Account'\n });\n\n state.userProjectPagedList.pageNumber = action.payload.pageNumber;\n state.userProjectPagedList.pageSize = action.payload.pageSize;\n state.userProjectPagedList.pageCount = action.payload.pageCount;\n state.userProjectPagedList.totalCount = action.payload.totalCount + 1;\n state.userProjectPagedList.orderField = action.payload.orderField;\n state.userProjectPagedList.orderDirection = action.payload.orderDirection;\n state.userProjectPagedList.items = items;\n }\n )\n }\n\n});\n\nexport const { \n handleSelectUserProject,\n} = blockedFundersSlice.actions;\n\nexport default blockedFundersSlice.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { customDatabaseApi } from \"Services/CustomDatabaseService\";\n\nexport const initialState = {\n activeStep: 0,\n userFields: [],\n requiredOptionalFields: [],\n deletedUserFields: []\n};\n\nconst customDatabaseSlice = createSlice({\n name: \"custom-database\",\n initialState,\n reducers: {\n handleChangeActiveStep: (state, action) => {\n state.activeStep = action.payload;\n },\n handleImportUserFields: (state, action) => {\n state.userFields = action.payload;\n state.activeStep = 1;\n state.deletedUserFields = [];\n \n state.requiredOptionalFields.forEach(item => {\n item.userFieldId = null;\n });\n },\n handleClearAll: (state, action) => {\n state.userFields = [];\n state.activeStep = 0;\n state.deletedUserFields = [];\n \n state.requiredOptionalFields.forEach(item => {\n item.userFieldId = null;\n });\n },\n handleDropRequiredOptionalFields: (state, action) => {\n const requiredOptionalFieldIndex = state.requiredOptionalFields.findIndex(o => o.fieldId === action.payload.destinationId);\n \n const userFieldIndex = state.userFields.findIndex(o => o.fieldId === action.payload.sourceId);\n const userField = state.userFields.find(o => o.fieldId === action.payload.sourceId);\n\n if (userFieldIndex !== -1) {\n state.deletedUserFields.push(userField);\n state.userFields.splice(userFieldIndex, 1);\n \n state.requiredOptionalFields[requiredOptionalFieldIndex] = {\n ...state.requiredOptionalFields[requiredOptionalFieldIndex], \n userFieldId: action.payload.sourceId\n };\n }\n\n \n },\n handleDropUserFields: (state, action) => {\n const requiredOptionalFieldIndex = state.requiredOptionalFields.findIndex(o => o.userFieldId === action.payload.sourceId);\n\n const deletedField = state.deletedUserFields.find(o => o.fieldId === action.payload.sourceId);\n const deletedFieldIndex = state.deletedUserFields.findIndex(o => o.fieldId === action.payload.sourceId);\n\n if (deletedFieldIndex !== -1) {\n state.deletedUserFields.splice(deletedFieldIndex, 1);\n state.userFields.push(deletedField);\n \n state.requiredOptionalFields[requiredOptionalFieldIndex] = {\n ...state.requiredOptionalFields[requiredOptionalFieldIndex],\n userFieldId: null\n };\n }\n }\n },\n extraReducers: (builder) => {\n builder.addMatcher(\n customDatabaseApi.endpoints.getRequiredOptionalFields.matchFulfilled, (state, action) => {\n state.requiredOptionalFields = action.payload.map(item => ({\n ...item,\n userFieldId: null\n }));\n }\n )\n }\n});\n\nexport const { \n handleChangeActiveStep,\n handleImportUserFields,\n handleDropRequiredOptionalFields,\n handleDropUserFields,\n handleClearAll\n} = customDatabaseSlice.actions;\n\nexport default customDatabaseSlice.reducer;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { subscriptionPlanApi } from 'Services/SubscriptionPlanService';\n\n\nexport const initialState = {\n roleList: ['Admin', 'User', 'SubUser', 'supervisor', 'member', 'Demo', 'Sales', 'SuperAdmin', 'IT'],\n subscriptionPlanName: {\n value: '',\n error: ''\n },\n planDescription: {\n value: '',\n error: ''\n },\n displayplan: {\n value: '',\n error: ''\n },\n amountYears: {\n value: '',\n error: ''\n },\n amountMonths: {\n value: '',\n error: ''\n },\n amountDays: {\n value: '',\n error: ''\n },\n amountLicenses: {\n value: '',\n error: ''\n }\n};\n\nconst updateSubscriptionPlanSlice = createSlice({\n name: \"update-subscription-plan\",\n initialState,\n reducers: {\n handleChange: (state, action) => {\n state[action.payload.field].error = '';\n state[action.payload.field].value = action.payload.value; \n },\n handleModelErrors: (state, action) => {\n Object.entries(action.payload).forEach(([field, errors]) => { \n state[field].error = errors[0];\n });\n },\n handleChangeSubscriptionPlan: (state, action) => {\n state.subscriptionPlanName.value = action.payload;\n state.subscriptionPlanName.error = '';\n \n }, \n handleChangeDisplayPlan: (state, action) => {\n state.displayplan = action.payload;\n }, \n handleChangeProcessPayment: (state, action) => {\n state.processPayment = action.payload;\n }, \n },\n extraReducers: (builder) => {\n builder.addMatcher(\n subscriptionPlanApi.endpoints.getSubscriptionPlan.matchFulfilled, (state, action) => {\n Object.entries(action.payload).forEach(([field, value]) => {\n if (state[field] != null) {\n\n }\n }); \n }\n )\n }\n});\n\nexport const { \n handleChange,\n handleModelErrors,\n handleChangeSubscriptionPlan,\n handleChangeProcessPayment,\n handleChangeDisplayPlan\n} = updateSubscriptionPlanSlice.actions;\n\nexport default updateSubscriptionPlanSlice.reducer;","import { configureStore, isRejectedWithValue } from \"@reduxjs/toolkit\";\n\nimport { emptySplitApi, previewSplitApi, nonUserApi } from \"../Services\";\n\n// reducer import\nimport customizationReducer from \"./customizationReducer\";\nimport snackbarReducer from \"./snackbarReducer\";\n\nimport AuthSlice from \"views/pages/authentication/Auth.Slice\";\nimport SharedSlice from \"./Shared.Slice\";\nimport UserProfileSlice from \"views/account/user-profile/ProfileInfo.Slice\";\nimport AlertNotificationSlice from \"views/account/user-profile/AlertNotification.Slice\";\nimport AdditionalUsersSlice from \"views/account/additional-users/AdditionalUsers.Slice\";\nimport SignatureSlice from \"views/account/user-profile/Signature.Slice\";\nimport OrganizationProfileInfoSlice from \"views/account/organization-profile/OrganizationProfileInfo.Slice\";\nimport OrganizationAdditionalEmailSlice from \"views/account/organization-profile/OrganizationAdditionalEmail.Slice\";\nimport ManageAccountSlice from \"views/admin/manage-accounts/ManageAccount.Slice\";\nimport CreateAccountSlice from \"views/admin/create-account/CreateAccount.Slice\";\nimport CreateSubscriptionPlanSlice from \"views/admin/create-subscription-plan/CreateSubscriptionPlan.Slice\"\nimport UpdateAccountSlice from \"views/admin/update-account/UpdateAccount.Slice\";\nimport UpdateFoundationCaSlice from \"views/admin/update-foundation-ca/UpdateFoundationCa.Slice\";\nimport UpdateFoundationUsSlice from \"views/admin/update-foundation-us/UpdateFoundationUs.Slice\";\nimport UserProjectSlice from \"views/user-project/UserProject.Slice\";\nimport SearchEngineSlice from \"views/search-engine/common/SearchEngine.Slice\";\nimport IncomeSlice from \"views/project-budget/Income.Slice\";\nimport ExpenseSlice from \"views/project-budget/Expense.Slice\";\nimport FoundationProfileSlice from \"views/foundation-profile/FoundationProfile.Slice\";\nimport FoundationProfileSliceV2 from \"views/foundation-profile-v2/FoundationProfile.Slice\";\nimport InquirySlice from \"views/document-generator/inquiry/Inquiry.Slice\";\nimport ProposalSlice from \"views/document-generator/proposal/Proposal.Slice\";\nimport CustomSlice from \"views/document-generator/custom/Custom.Slice\";\nimport GrantSecretarySlice from \"views/grant-secretary/GrantSecretary.Slice\";\nimport GrantSecretarySliceV2 from \"views/grant-secretary-v2/GrantSecretary.Slice\";\nimport FavoritesSlice from \"views/manage-funders/favorites/Favorites.Slice\";\nimport BlockedFundersSlice from \"views/manage-funders/blocked-funders/BlockedFunders.Slice\";\nimport CustomDatabaseSlice from \"views/manage-funders/custom-databases/CustomDatabase.Slice\";\nimport FoundationProfileCASlice from \"views/foundation-profile-ca/FoundationProfile.CA.Slice\";\nimport FoundationProfileCASliceV2 from \"views/foundation-profile-ca-v2/FoundationProfile.CA.Slice\";\nimport ManageSubscriptionPlanSlice from \"views/admin/manage-subscription-plans/ManageSubscriptionPlan.Slice\";\nimport UpdateSubscriptionPlanSlice from \"views/admin/update-subscription-plan/UpdateSubscriptionPlan.Slice\";\nimport ManageCouponSlice from \"views/admin/manage-coupons/ManageCoupon.Slice\";\nimport ManageDeadlineSlice from \"views/admin/manage-deadlines/ManageDeadline.Slice\";\nimport ManageFeedbackSlice from \"views/admin/manage-feedbacks/ManageFeedback.Slice\";\nimport ThankYouLetterSlice from \"views/document-generator/thank-you/ThankYou.Slice\";\nimport ImpactReportLetterSlice from \"views/document-generator/impact-report/ImpactReport.Slice\";\nimport PublicFoundationProfileSlice from \"views/pages/public-profile-page/PublicFoundationProfile.Slice\";\n\nconst rtkQueryErrorLogger = (api) => (next) => (action) => {\n\n if (isRejectedWithValue(action)) {\n console.warn(\"Api Error\", action);\n\n let doRedirect = false;\n\n const errorMessage = action.payload?.data?.message ?? 'Unauthorized action';\n const generalError = action.payload?.error;\n const mediaTypeError = action.payload?.data?.title ?? 'Media type error';\n\n // 401 - Unauthorized\n if (action.payload.status === 401) {\n console.error('401 - Unauthorized', action);\n doRedirect = true;\n }\n\n // 403 - Forbidden\n if (action.payload.status === 403) {\n console.error('403 - Forbidden', action);\n doRedirect = true;\n }\n\n // 415 - Unsupported Media Type\n if (action.payload.status === 415) {\n console.error('415 - Unsupported Media Type', action);\n }\n\n // General Errors\n if (generalError != null) {\n console.error('General Errors', action);\n }\n\n if (doRedirect) {\n window.setTimeout(() => {\n localStorage.clear();\n window.location.href = '/';\n }, 3000);\n }\n }\n\n return next(action);\n};\n\nexport default configureStore({\n reducer: {\n customization: customizationReducer,\n snackbar: snackbarReducer,\n authState: AuthSlice,\n sharedState: SharedSlice,\n userProfileState: UserProfileSlice,\n alertNotificationState: AlertNotificationSlice,\n additionalUsersState: AdditionalUsersSlice,\n signatureState: SignatureSlice,\n organizationProfileState: OrganizationProfileInfoSlice,\n organizationAdditionalEmailState: OrganizationAdditionalEmailSlice,\n manageAccountState: ManageAccountSlice,\n manageSubscriptionPlanState: ManageSubscriptionPlanSlice,\n manageCouponState: ManageCouponSlice,\n manageDeadlineState: ManageDeadlineSlice,\n manageFeedbackState: ManageFeedbackSlice,\n createAccountState: CreateAccountSlice,\n createSubscriptionPlanState: CreateSubscriptionPlanSlice,\n updateSubscriptionPlanState: UpdateSubscriptionPlanSlice,\n updateAccountState: UpdateAccountSlice,\n updateFoundationCaState: UpdateFoundationCaSlice,\n updateFoundationUsState: UpdateFoundationUsSlice,\n userProjectState: UserProjectSlice,\n searchEngineState: SearchEngineSlice,\n incomeState: IncomeSlice,\n expenseState: ExpenseSlice,\n foundationProfileState: FoundationProfileSlice,\n foundationProfileStateV2: FoundationProfileSliceV2,\n inquiryState: InquirySlice,\n proposalState: ProposalSlice,\n customState: CustomSlice,\n grantSecretaryState: GrantSecretarySlice,\n grantSecretaryStateV2: GrantSecretarySliceV2,\n favoritesState: FavoritesSlice,\n blockedFundersState: BlockedFundersSlice,\n customDatabaseState: CustomDatabaseSlice,\n foundationProfileCAState: FoundationProfileCASlice,\n foundationProfileCAStateV2: FoundationProfileCASliceV2,\n thankYouLetterState: ThankYouLetterSlice,\n impactReportLetterState: ImpactReportLetterSlice,\n publicFoundationProfileState: PublicFoundationProfileSlice,\n [emptySplitApi.reducerPath]: emptySplitApi.reducer,\n [previewSplitApi.reducerPath]: previewSplitApi.reducer,\n [nonUserApi.reducerPath]: nonUserApi.reducer,\n },\n middleware: (getDefaultMiddleware) => {\n const middlewareList = [rtkQueryErrorLogger, emptySplitApi.middleware, previewSplitApi.middleware, nonUserApi.middleware, ...getDefaultMiddleware()];\n return middlewareList;\n },\n});\n","import { lazy } from 'react';\nimport store from 'store';\nimport { setLoginDialogOpen } from 'store/Shared.Slice';\n\n/**\n * A React.lazy wrapper that dynamically loads a React component.\n * \n * @param {Function} importFunction - A function that dynamically imports a component.\n * @returns A lazily loaded React component.\n * \n * If the import fails, the login dialog is opened.\n */\nexport default function lazyPage(importFunction) {\n return lazy(async () => {\n try {\n const module = await importFunction();\n return module;\n } \n catch (error) {\n console.error(`Failed to load component: ${error}`);\n store.dispatch(setLoginDialogOpen(true));\n }\n });\n}\n","import PropTypes from 'prop-types';\nimport { useEffect, useState } from 'react';\nimport { Link } from 'react-router-dom';\n\n// material-ui\nimport { useTheme } from '@mui/material/styles';\nimport { Box, Card, Divider, Grid, Typography } from '@mui/material';\nimport MuiBreadcrumbs from '@mui/material/Breadcrumbs';\n\n// project imports\nimport config from 'config';\nimport { gridSpacing } from 'store/constant';\n\n// assets\nimport { IconTallymark1 } from '@tabler/icons';\nimport AccountTreeTwoToneIcon from '@mui/icons-material/AccountTreeTwoTone';\nimport HomeIcon from '@mui/icons-material/Home';\nimport HomeTwoToneIcon from '@mui/icons-material/HomeTwoTone';\nimport { useTranslation } from \"react-i18next\";\n\nconst linkSX = {\n display: 'flex',\n color: 'grey.900',\n textDecoration: 'none',\n alignContent: 'center',\n alignItems: 'center'\n};\n\n// ==============================|| BREADCRUMBS ||============================== //\n\nconst Breadcrumbs = ({ card, divider, icon, icons, maxItems, navigation, rightAlign, separator, title, titleBottom, ...others }) => {\n const theme = useTheme();\n const { t } = useTranslation();\n\n const iconStyle = {\n marginRight: theme.spacing(0.75),\n marginTop: `-${theme.spacing(0.25)}`,\n width: '1rem',\n height: '1rem',\n color: theme.palette.secondary.main\n };\n\n const [main, setMain] = useState();\n const [item, setItem] = useState();\n\n // set active item state\n const getCollapse = (menu) => {\n if (menu.children) {\n menu.children.filter((collapse) => {\n if (collapse.type && collapse.type === 'collapse') {\n getCollapse(collapse);\n } else if (collapse.type && collapse.type === 'item') {\n if (document.location.pathname === config.basename + collapse.url) {\n setMain(menu);\n setItem(collapse);\n }\n }\n return false;\n });\n }\n };\n\n useEffect(() => {\n navigation?.items?.map((menu) => {\n if (menu.type && menu.type === 'group') {\n getCollapse(menu);\n }\n return false;\n });\n });\n\n // item separator\n const SeparatorIcon = separator;\n const separatorIcon = separator ? : ;\n\n let mainContent;\n let itemContent;\n let breadcrumbContent = ;\n let itemTitle = '';\n let CollapseIcon;\n let ItemIcon;\n\n // collapse item\n if (main && main.type === 'collapse') {\n CollapseIcon = main.icon ? main.icon : AccountTreeTwoToneIcon;\n mainContent = (\n \n {icons && }\n {t(main.title)}\n \n );\n }\n\n // items\n if (item && item.type === 'item') {\n itemTitle = t(item.title);\n\n ItemIcon = item.icon ? item.icon : AccountTreeTwoToneIcon;\n itemContent = (\n \n {icons && }\n {itemTitle}\n \n );\n\n // main\n if (item.breadcrumbs !== false) {\n breadcrumbContent = (\n \n \n \n {title && !titleBottom && (\n \n \n {t(item.title)}\n \n \n )}\n \n \n \n {icons && }\n {icon && }\n {!icon && 'Dashboard'}\n \n {mainContent}\n {itemContent}\n \n \n {title && titleBottom && (\n \n \n {t(item.title)}\n \n \n )}\n \n \n {card === false && divider !== false && }\n \n );\n }\n }\n\n return breadcrumbContent;\n};\n\nBreadcrumbs.propTypes = {\n card: PropTypes.bool,\n divider: PropTypes.bool,\n icon: PropTypes.bool,\n icons: PropTypes.bool,\n maxItems: PropTypes.number,\n navigation: PropTypes.object,\n rightAlign: PropTypes.bool,\n separator: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n title: PropTypes.bool,\n titleBottom: PropTypes.bool\n};\n\nexport default Breadcrumbs;\n","import { Link } from 'react-router-dom';\n\n// material-ui\nimport { ButtonBase } from '@mui/material';\n\n// project imports\nimport config from 'config';\n//import Logo from 'ui-component/Logo';\nimport Logo from '../../../assets/images/ga-logo-sm.png';\n\n// ==============================|| MAIN LOGO ||============================== //\n\nconst LogoSection = () => (\n \n \"\"\n \n);\n\nexport default LogoSection;\n","import PropTypes from 'prop-types';\nimport { forwardRef } from 'react';\n\n// material-ui\nimport { Collapse, Fade, Box, Grow, Slide, Zoom } from '@mui/material';\n\n// ==============================|| TRANSITIONS ||============================== //\n\nconst Transitions = forwardRef(({ children, position, type, direction, ...others }, ref) => {\n let positionSX = {\n transformOrigin: '0 0 0'\n };\n\n switch (position) {\n case 'top-right':\n positionSX = {\n transformOrigin: 'top right'\n };\n break;\n case 'top':\n positionSX = {\n transformOrigin: 'top'\n };\n break;\n case 'bottom-left':\n positionSX = {\n transformOrigin: 'bottom left'\n };\n break;\n case 'bottom-right':\n positionSX = {\n transformOrigin: 'bottom right'\n };\n break;\n case 'bottom':\n positionSX = {\n transformOrigin: 'bottom'\n };\n break;\n case 'top-left':\n default:\n positionSX = {\n transformOrigin: '0 0 0'\n };\n break;\n }\n\n return (\n \n {type === 'grow' && (\n \n {children}\n \n )}\n {type === 'collapse' && (\n \n {children}\n \n )}\n {type === 'fade' && (\n \n {children}\n \n )}\n {type === 'slide' && (\n \n {children}\n \n )}\n {type === 'zoom' && (\n \n {children}\n \n )}\n \n );\n});\n\nTransitions.propTypes = {\n children: PropTypes.node,\n type: PropTypes.oneOf(['grow', 'fade', 'collapse', 'slide', 'zoom']),\n position: PropTypes.oneOf(['top-left', 'top-right', 'top', 'bottom-left', 'bottom-right', 'bottom']),\n direction: PropTypes.oneOf(['up', 'down', 'left', 'right'])\n};\n\nTransitions.defaultProps = {\n type: 'grow',\n position: 'top-left',\n direction: 'up'\n};\n\nexport default Transitions;\n","import { useRef } from \"react\";\nimport {\n Stack,\n Button,\n Typography,\n Tooltip,\n} from \"@mui/material\";\nimport { Cancel, HelpOutline } from \"@mui/icons-material\";\n\nconst FileUploadView = ({\n children,\n documents,\n onDocumentChange,\n accept=\"*\",\n tips,\n multiple = false,\n incremental = false\n}) => {\n\n const inputRef = useRef();\n\n const handleSetSelectedDocuments = (element) => {\n const files = element.target.files;\n\n if (files != null && files.length > 0) {\n const _documents = Array.from(files).map(file => ({\n previewUrl: URL.createObjectURL(file),\n blob: file,\n }));\n\n if(incremental)\n onDocumentChange([...documents, ..._documents]);\n else\n onDocumentChange([..._documents]);\n }\n }\n\n return (\n
\n \n handleSetSelectedDocuments(e)} \n />\n \n {tips}\n \n {\n documents.length > 0 &&\n \n {\n documents.map((document, i) => (\n \n ))\n }\n \n }\n
\n )\n}\n\nexport default FileUploadView;","import { useState, useEffect } from 'react';\nimport { useDispatch } from 'react-redux';\nimport { showSuccessToaster, showErrorToaster } from 'store/Shared.Slice';\nimport { useTheme } from '@mui/material/styles';\nimport {\n Box,\n Typography,\n Grid,\n FormControlLabel,\n Switch,\n Checkbox,\n Tooltip,\n} from '@mui/material';\nimport { HelpOutline } from '@mui/icons-material';\nimport FormControlWrapper from \"components/FormControlWrapper\";\nimport LoadingButton from \"@mui/lab/LoadingButton\";\nimport FileUploadView from './FileUploadView';\nimport AutocompleteWrapper from \"components/AutocompleteWrapper\";\nimport { useSubmitFeedbackMutation } from 'Services/FeedbackService';\n\nclass FeedbackFormCustomError extends Error {\n constructor(message) {\n super();\n this.data = {\n message: message\n };\n }\n}\n\nconst FeedbackForm = ({\n question,\n feedbackType,\n showUploadFiles = true,\n showUploadScreenshots,\n showGivePermission,\n showCategory = false,\n showGrantSize= false,\n onSubmit,\n onCancel,\n}) => {\n\n const theme = useTheme();\n const dispatch = useDispatch();\n \n const defaultFormValue = {\n description: { value: \"\", error: \"\" },\n uploadFiles: false,\n uploadScreenshots: false,\n givePermission: false,\n files: [],\n categoryDescription:{ value: \"\", error: \"\" },\n grantSize:{ value: 0, error: \"\" },\n screenshots: [], \n grantType:{ value: \"\", error: \"\" }\n }\n const [formValue, setFormValue] = useState(defaultFormValue);\n const [documents, setDocuments] = useState([]); //[ { previewUrl: string, blob: file } ]\n const [screenshots, setScreenshots] = useState([]); //[ { previewUrl: string, blob: file } ]\n\n const [submitFeedback, { isLoading: isFeedbackSubmitting }] = useSubmitFeedbackMutation();\n\n const handleFormChange = (field, value) => {\n setFormValue({...formValue, [field]: value});\n };\n\n const [grantType, setGrantType] = useState({\n id: '',\n value: '',\n label: ''\n });\n \n const grantTypes = [\n { key: 0, value: 0, text: 'Disability' },\n { key: 1, value: 1, text: 'Community/Needs' },\n { key: 2, value: 2, text: 'Psychology' },\n { key: 3, value: 3, text: 'Aging' },\n { key: 4, value: 4, text: 'Agriculture/Food' },\n { key: 5, value: 5, text: 'Animal/Welfare' },\n { key: 6, value: 6, text: 'Children/Youth' }\n \n ];\n\n const handleSubmitFeedback = async () => {\n \n try {\n validate(documents, 1, 50);\n\n const model = new FormData();\n model.append(\"description\", formValue.description.value);\n model.append(\"type\", feedbackType);\n model.append(\"allowShare\", formValue.givePermission);\n model.append(\"grantSize\", formValue.grantSize.value);\n model.append(\"grantType\", grantType.value)\n documents.forEach(file => {\n model.append(\"files\", file.blob);\n });\n \n screenshots.forEach(screenshot => {\n model.append(\"screenshots\", screenshot.blob);\n });\n\n const response = await submitFeedback(model).unwrap();\n\n dispatch(showSuccessToaster(response.message));\n onSubmit?.();\n setFormValue(defaultFormValue);\n }\n catch(error) {\n // Model Errors\n if (error.data?.errors != null) {\n const copyFormValue = { ...formValue };\n Object.keys(error.data?.errors).forEach(key => {\n if (copyFormValue[key]) {\n if(key === \"grantSize\") {\n copyFormValue[key].error = \"feedbackInvalidGrantSize\";\n } else {\n copyFormValue[key].error = error.data?.errors[key][0]\n }\n };\n });\n\n setFormValue(copyFormValue);\n dispatch(showErrorToaster('Check for errors and try again'));\n }\n // Bad Request\n else if (error.data?.message != null) {\n dispatch(showErrorToaster(error.data?.message));\n }\n }\n }\n\n const validate = (files, maximumUploadCount, maxFileSizeInMB) => {\n const maxFileSizeInBytes = maxFileSizeInMB * 1024 * 1024;\n\n if(files.length > maximumUploadCount) {\n throw new FeedbackFormCustomError(`Limit exceeded: Upload up to ${maximumUploadCount} document${files > 1 ? 's' : ''}`);\n }\n\n var fileExceed = files.map(o => o.blob).find(document => document.size >= maxFileSizeInBytes);\n\n if(fileExceed) {\n throw new FeedbackFormCustomError(`${fileExceed.name} exceeds the maximum allowed size of ${maxFileSizeInMB}MB`);\n }\n }\n\n useEffect(() => {\n if(!formValue.uploadFiles) {\n setDocuments([]);\n }\n\n if(!formValue.uploadScreenshots) {\n setScreenshots([]);\n }\n\n }, [formValue]);\n\n useEffect(() => {\n return () => setFormValue(defaultFormValue);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n \n {question}\n\n handleFormChange(\"description\", { value: element.target.value, error: \"\" } )}\n multiline\n rows={5}\n sx={{\n height: '140px',\n '#feedBackDescription': { height: '80px !important' }\n }}\n />\n { showCategory && \n \n setGrantType(newValue)}\n theme={theme}\n error=\"\" \n options={grantTypes.map(state => ({\n id: state.key,\n value: state.value,\n label: state.text \n }))}\n /> \n \n } \n { showGrantSize && \n \n handleFormChange(\"grantSize\", { value: element.target.value, error: \"\" } )}\n error={formValue.grantSize.error}\n />\n \n }\n {\n showUploadFiles &&\n \n handleFormChange(\"uploadFiles\", event.target.checked)}\n />\n }\n label=\"Upload Files\"\n />\n \n } \n \n {\n formValue.uploadFiles &&\n \n setDocuments(documents)} \n tips={\n \n Upload only 1 document of any type no larger than 50 MB\n \n \n \n \n }\n >\n Attach Document\n \n \n }\n\n {\n showUploadScreenshots &&\n \n handleFormChange(\"uploadScreenshots\", event.target.checked)}\n />\n }\n label=\"Include a screenshot\"\n />\n \n }\n {\n formValue.uploadScreenshots &&\n \n setScreenshots(screenshots)}\n accept=\"image/*\"\n multiple\n incremental\n >\n Add Screenshots\n \n \n }\n {\n showGivePermission &&\n \n handleFormChange(\"givePermission\", event.target.checked)} />\n }\n label=\"Do you give us permission to use your answer?\"\n />\n \n }\n\n \n \n \n Cancel\n \n \n\n \n \n Submit\n \n \n \n \n )\n}\n\nexport default FeedbackForm;","import { useState, useRef, useEffect } from 'react';\n\nimport { useNavigate } from 'react-router-dom';\nimport { useSelector, useDispatch } from 'react-redux';\nimport { useUpdateSeAccessMutation } from \"Services/AdminService\";\nimport ReactCountryFlag from \"react-country-flag\"\nimport ReactQuill, { Quill } from 'react-quill';\n// material-ui\nimport { useTheme } from '@mui/material/styles';\nimport {\n Avatar,\n Box,\n Chip,\n ClickAwayListener,\n Divider,\n List,\n ListItemButton,\n ListItemIcon,\n ListItemText,\n Paper,\n Popper,\n Link,\n Stack,\n Typography,\n Backdrop,\n CircularProgress,\n Collapse,\n \n} from '@mui/material';\n// third-party\n\n// project imports\nimport MainCard from 'ui-component/cards/MainCard';\nimport Transitions from 'ui-component/extended/Transitions';\nimport FeedbackIcon from '@mui/icons-material/Feedback';\nimport FavoriteIcon from '@mui/icons-material/Favorite';\nimport AssignmentLateIcon from '@mui/icons-material/AssignmentLate';\nimport RateReviewIcon from '@mui/icons-material/RateReview';\nimport FeedbackForm from './FeedbackForm';\nimport ThumbUpIcon from '@mui/icons-material/ThumbUp'\nimport IconPerson from '@mui/icons-material/Person'\nimport QuillResize from 'quill-resize-module';\n\n// assets\nimport { IconLogout, IconSettings } from '@tabler/icons';\n\nimport { useLogoutMutation } from 'Services/LoginServices';\nimport { showSuccessToaster } from 'store/Shared.Slice';\n\nimport { useTranslation } from \"react-i18next\";\n// ==============================|| PROFILE MENU ||============================== //\nQuill.register('modules/resize', QuillResize);\nconst SimpleProfileSection = () => {\n const theme = useTheme();\n const customization = useSelector((state) => state.customization);\n const navigate = useNavigate();\n const { userToken } = useSelector(state => state.sharedState);\n const dispatch = useDispatch();\n const [UpdateAccess, { isLoading: isUpdatingAccess }] = useUpdateSeAccessMutation();\n const [expandedIndex, setExpandedIndex] = useState(null);\n \n const validRoles = [\"Admin\", \"Sales\", \"SuperAdmin\"];\n const { t } = useTranslation();\n let userRoles = [];\n\n if (Array.isArray(userToken?.role)) {\n userRoles = userToken?.role ?? ['User'];\n }\n else {\n userRoles.push(userToken?.role ?? 'User');\n }\n const substring = \"AccessUs\";\n \n const accessUs = userRoles.filter((string) =>\n string.toUpperCase().includes(substring.toUpperCase())\n );\n \n const accessCanada = userRoles.filter((string) =>\n string.toUpperCase().includes(\"AccessCanada\".toUpperCase())\n );\n \n const [selectedIndex] = useState(-1);\n const [open, setOpen] = useState(false);\n const [openFeedback, setFeedbackOpen] = useState(false);\n \n const [logout, { isLoading }] = useLogoutMutation();\n\n /**\n * anchorRef is used on different componets and specifying one type leads to other components throwing an error\n * */\n const anchorRef = useRef(null);\n const anchorFeedbackRef = useRef(null);\n\n const handleLogout = async () => {\n handleToggle();\n const responseLogout = await logout().unwrap();\n localStorage.clear();\n navigate('/', { replace: true });\n dispatch(showSuccessToaster(responseLogout.message));\n };\n\n const handleUserProfile = async () => {\n handleToggle();\n navigate('/main/account/user-profile', { replace: true });\n };\n\n const handleChangeAccess = async () => {\n \n if (validRoles.some(role => userRoles.includes(role))) {\n const response = await UpdateAccess().unwrap();\n\n handleToggle();\n const responseLogout = await logout().unwrap();\n localStorage.clear();\n navigate('/', { replace: true });\n dispatch(showSuccessToaster(responseLogout.message));\n } \n };\n\n const handleClose = (event) => {\n if (anchorRef.current && anchorRef.current.contains(event.target)) {\n return;\n }\n setOpen(false);\n };\n\n const handleFeedbackClose = (event) => {\n if (anchorFeedbackRef.current && anchorFeedbackRef.current.contains(event.target)) {\n return;\n }\n setExpandedIndex(null);\n setFeedbackOpen(false);\n };\n\n const handleFeedbackSubmitted = () => {\n setFeedbackOpen(false);\n setExpandedIndex(null);\n }\n\n const handleToggle = () => {\n setOpen((prevOpen) => !prevOpen);\n };\n\n const handleFeedbackToggle = () => {\n setFeedbackOpen((prevFeedbackOpen) => !prevFeedbackOpen);\n };\n\n const handleExpandClick = (index) => {\n setExpandedIndex(expandedIndex === index ? null : index);\n };\n\n const prevOpen = useRef(open);\n const prevFeedbackOpen = useRef(openFeedback);\n\n useEffect(() => {\n if (prevOpen.current === true && open === false) {\n anchorRef.current.focus();\n }\n\n prevOpen.current = open;\n\n if (prevFeedbackOpen.current === true && openFeedback === false) {\n anchorFeedbackRef.current.focus();\n }\n\n prevFeedbackOpen.current = openFeedback;\n\n }, [open, openFeedback]);\n\n const openInNewTab = url => {\n const newWindow = window.open(url, '_blank', 'noopener,noreferrer')\n if (newWindow) newWindow.opener = null\n };\n\n return (\n <>\n handleChangeAccess()} sx={{ fontSize: 20, textAlign: \"left\", fontWeight: \"bold\", borderRadius: '27px', }} color=\"secondary\">\n \n {accessUs.length > 0 && (\n \n )}\n\n {accessCanada.length > 0 && (\n \n )}\n \n \n \n \n \n {({ TransitionProps }) => (\n \n \n \n \n \n \n \n Classify your feedback\n \n \n \n \n \n \n \n \n {/*-------- Compliment --------*/}\n handleExpandClick(0)}\n >\n \n \n \n Give a compliment} />\n \n \n setExpandedIndex(null)}\n />\n \n\n {/*-------- Issue --------*/}\n handleExpandClick(1)}\n >\n \n \n \n Report a problem} />\n \n \n setExpandedIndex(null)}\n />\n \n\n {/*-------- Suggeston --------*/}\n handleExpandClick(2)}\n >\n \n \n \n Make a suggestion} />\n \n \n setExpandedIndex(null)}\n />\n \n\n {/*-------- Success --------*/}\n handleExpandClick(3)}\n >\n \n \n \n Success!} />\n \n \n setExpandedIndex(null)}\n />\n \n\n \n \n \n \n \n \n )}\n \n\n openInNewTab(\"https://grantadvance.supportbee.io/2439-the-simple-funding-solution\")} sx={{ fontSize: 20, textAlign: \"left\", fontWeight: \"bold\" }} color=\"secondary\">\n \n {t('labels.help_center')} \n \n \n \n \n \n \n\n \n {t('labels.profile_settings')}\n \n \n }\n icon={\n \n \n }\n variant=\"outlined\"\n ref={anchorRef}\n aria-controls={open ? 'menu-list-grow' : undefined}\n aria-haspopup=\"true\"\n onClick={handleToggle}\n color=\"primary\"\n />\n \n \n {({ TransitionProps }) => (\n \n \n \n \n \n \n \n {t('labels.hi')},\n \n {userToken.UserName}\n \n \n \n \n \n \n \n \n \n \n \n {t('labels.user_profile')}} />\n \n\n\n \n \n \n \n {t('labels.logout')}} />\n \n\n \n \n \n \n \n \n )}\n \n \n );\n};\n\nexport default SimpleProfileSection;\n","export default __webpack_public_path__ + \"static/media/user-round.13b5a31b.svg\";","// material-ui\nimport { useTheme, styled } from '@mui/material/styles';\nimport {\n Avatar,\n Button,\n Card,\n CardContent,\n Chip,\n Divider,\n Grid,\n List,\n ListItem,\n ListItemAvatar,\n ListItemSecondaryAction,\n ListItemText,\n Stack,\n Typography\n} from '@mui/material';\n\n// assets\nimport { IconBrandTelegram, IconBuildingStore, IconMailbox, IconPhoto } from '@tabler/icons';\nimport User1 from 'assets/images/users/user-round.svg';\nimport { useEffect, useState } from 'react';\n\n// styles\nconst ListItemWrapper = styled('div')(({ theme }) => ({\n cursor: 'pointer',\n padding: 16,\n '&:hover': {\n background: theme.palette.primary.light\n },\n '& .MuiListItem-root': {\n padding: 0\n }\n}));\n\n// ==============================|| NOTIFICATION LIST ITEM ||============================== //\n\nconst NotificationList = ({ \n userNotifications = [],\n filterOption,\n onClickNotification\n}) => {\n\n const theme = useTheme();\n const [filteredNotifications, setFilteredNotifications] = useState([]);\n\n const chipSX = {\n height: 24,\n padding: '0 6px'\n };\n const chipErrorSX = {\n ...chipSX,\n color: theme.palette.orange.dark,\n backgroundColor: theme.palette.orange.light,\n marginRight: '5px'\n };\n\n const chipWarningSX = {\n ...chipSX,\n color: theme.palette.warning.dark,\n backgroundColor: theme.palette.warning.light\n };\n\n useEffect(() => {\n\n setFilteredNotifications([...userNotifications]);\n\n if (filterOption === \"new\") {\n setFilteredNotifications([...userNotifications.filter(o => o.tagNew === true)]);\n }\n\n if (filterOption === \"unread\") {\n setFilteredNotifications([...userNotifications.filter(o => o.tagUnread === true)]);\n }\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [filterOption, userNotifications]);\n\n return (\n \n {filteredNotifications.map(item => (\n
onClickNotification(item)}>\n \n\n \n \n \n \n \n \n {item.title}} />\n \n\n \n \n {item.shortDescription}\n \n \n \n\n {item.tagNew === true && (\n \n \n \n )}\n\n {item.tagUnread === true && (\n \n \n \n )}\n\n \n \n {item.creationTimeAgo}\n \n \n \n \n \n \n\n \n \n \n\n
\n ))}\n\n \n );\n};\n\nexport default NotificationList;\n","import { emptySplitApi } from './index'\n\nexport const userNotificationApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getUserNotificationsFullReadList: builder.mutation({\n query: () => ({\n url: `api/v1/auth-service/user-notifications/full`,\n method: \"GET\"\n }),\n }),\n getUserNotificationsList: builder.mutation({\n query: (pageNumber) => ({\n url: `api/v1/auth-service/user-notifications/${pageNumber}`,\n method: \"GET\"\n }),\n }),\n readUserNotification: builder.mutation({\n query: (notificationId) => ({\n url: `api/v1/auth-service/user-notifications/read/${notificationId}`,\n method: \"GET\"\n }),\n }),\n updateAllNotificationsToRead: builder.mutation({\n query: () => ({\n url: `api/v1/auth-service/user-notifications/read-all`,\n method: \"POST\"\n }),\n }),\n getAmountOfNotifications: builder.mutation({\n query: () => ({\n url: `api/v1/auth-service/user-notifications/amount`,\n method: \"GET\"\n }),\n }),\n getNotificationDocuments: builder.mutation({\n query: (id) => `api/v1/auth-service/user-notifications/announcement-documents/${id}`,\n }),\n }),\n overrideExisting: false,\n});\n\nexport const { \n useGetUserNotificationsFullReadListMutation,\n useGetUserNotificationsListMutation,\n useReadUserNotificationMutation,\n useUpdateAllNotificationsToReadMutation,\n useGetAmountOfNotificationsMutation,\n useGetNotificationDocumentsMutation,\n} = userNotificationApi;\n","import { useState, useRef, useEffect } from 'react';\n\n// material-ui\nimport { useTheme } from '@mui/material/styles';\nimport {\n Avatar,\n Badge,\n Box,\n Link,\n ButtonBase,\n CardActions,\n Chip,\n CircularProgress,\n ClickAwayListener,\n Divider,\n Grid,\n Paper,\n Popper,\n Stack,\n TextField,\n Typography,\n useMediaQuery\n} from '@mui/material';\n\n// project imports\nimport MainCard from 'ui-component/cards/MainCard';\nimport Transitions from 'ui-component/extended/Transitions';\nimport NotificationList from './NotificationList';\nimport AnimateButton from 'ui-component/extended/AnimateButton';\n// assets\nimport { IconBell } from '@tabler/icons';\nimport { \n useGetUserNotificationsListMutation, \n useUpdateAllNotificationsToReadMutation,\n useGetAmountOfNotificationsMutation,\n} from 'Services/UserNotificationService';\n\nimport { useDispatch } from 'react-redux';\nimport { showErrorToaster } from 'store/Shared.Slice';\nimport { LoadingButton } from '@mui/lab';\n\nimport NotificationPopup from './NotificationPopup';\n\n// notification status options\nconst status = [\n {\n value: 'all',\n label: 'All Notifications'\n },\n {\n value: 'new',\n label: 'New'\n },\n {\n value: 'unread',\n label: 'Unread'\n }\n];\n\n// ==============================|| NOTIFICATION ||============================== //\n\nconst NotificationSection = () => {\n const theme = useTheme();\n const dispatch = useDispatch();\n const matchesXs = useMediaQuery(theme.breakpoints.down('md'));\n\n const [ getUserNotificationsList ] = useGetUserNotificationsListMutation();\n const [ updateAllNotificationsToRead, { isLoading: isUpdating } ] = useUpdateAllNotificationsToReadMutation();\n const [ getAmountOfNotifications ] = useGetAmountOfNotificationsMutation();\n\n const [open, setOpen] = useState(false);\n const [value, setValue] = useState('');\n const [pageNumber, setPageNumber] = useState(1);\n const [isLoading, setIsLoading] = useState(false);\n const [isLoadingShowMore, setIsLoadingShowMore] = useState(false);\n const [userNotifications, setUserNotifications] = useState([]);\n \n const [openReadNotification, setOpenReadNotification] = useState({\n isOpen: false,\n notificationId: ''\n });\n\n const [notificationsAmount, setNotificationsAmount] = useState({\n allNotifications: 0,\n unreadNotifications: 0\n });\n\n const [ userNotification, setUserNotification ] = useState({\n title: '',\n description: ''\n });\n\n /**\n * anchorRef is used on different componets and specifying one type leads to other components throwing an error\n * */\n const anchorRef = useRef(null);\n\n const handleClose = (event) => {\n if (anchorRef.current && anchorRef.current.contains(event.target)) {\n return;\n }\n setOpen(false);\n };\n\n const prevOpen = useRef(open);\n useEffect(() => {\n if (prevOpen.current === true && open === false) {\n anchorRef.current.focus();\n }\n prevOpen.current = open;\n }, [open]);\n\n const handleChange = (event) => {\n if (event?.target.value) setValue(event?.target.value);\n };\n\n const handleGetUserNotifications = (currentPageNumber) => {\n\n setIsLoading(true);\n\n getUserNotificationsList(currentPageNumber).unwrap().then(response => {\n setIsLoading(false);\n\n setUserNotifications([...response]);\n\n setOpen((prevOpen) => !prevOpen);\n\n const currentUnreadNotifications = response.filter(o => o.tagUnread === true).length;\n\n if (currentUnreadNotifications > notificationsAmount.unreadNotifications) {\n setNotificationsAmount({\n ...notificationsAmount,\n unreadNotifications: response.filter(o => o.tagUnread === true).length,\n }); \n }\n\n }, error => {\n // Bad Request\n setIsLoading(false);\n if (error.data?.message != null) {\n dispatch(showErrorToaster(error.data?.message));\n }\n });\n }\n\n const handleShowMore = () => {\n\n const currentPageNumber = pageNumber + 1;\n\n setPageNumber(currentPageNumber);\n setIsLoadingShowMore(true);\n \n getUserNotificationsList(currentPageNumber).unwrap().then(response => {\n setUserNotifications([...response]);\n setIsLoadingShowMore(false);\n\n }, error => {\n // Bad Request\n setIsLoadingShowMore(false);\n if (error.data?.message != null) {\n dispatch(showErrorToaster(error.data?.message));\n }\n });\n }\n\n const handleGetAmountOfNotifications = () => {\n getAmountOfNotifications().unwrap().then(response => {\n setNotificationsAmount({\n ...notificationsAmount,\n allNotifications: response?.data?.allNotifications,\n unreadNotifications: response?.data?.unreadNotifications,\n });\n }, error => {\n // Bad Request\n if (error.data?.message != null) {\n dispatch(showErrorToaster(error.data?.message));\n }\n });\n }\n\n const handleShowNotification = (userNotificationItem) => {\n\n const userNotificationsTemp = userNotifications.map(notification => ({\n ...notification,\n tagUnread: userNotificationItem.notificationId === notification.notificationId ? false : notification.tagUnread,\n tagNew: userNotificationItem.notificationId === notification.notificationId ? false : notification.tagNew,\n }));\n\n setUserNotifications(userNotificationsTemp);\n\n setOpenReadNotification({\n ...openReadNotification,\n isOpen: true,\n notificationId: userNotificationItem.notificationId\n });\n }\n\n const handleMarkAllAsRead = () => {\n\n updateAllNotificationsToRead().unwrap().then(() => {\n\n const userNotificationsTemp = userNotifications.map(notification => ({\n ...notification,\n tagUnread: false,\n tagNew: false,\n }));\n \n setUserNotifications(userNotificationsTemp);\n\n setNotificationsAmount({\n ...notificationsAmount,\n unreadNotifications: 0\n });\n\n }, error => {\n // Bad Request\n if (error.data?.message != null) {\n dispatch(showErrorToaster(error.data?.message));\n }\n })\n\n }\n\n useEffect(() => {\n handleGetAmountOfNotifications();\n }, []);\n\n \n return (\n <>\n \n \n\n {isLoading && (\n \n )}\n\n {!isLoading && (\n {\n if (open) {\n setOpen((prevOpen) => !prevOpen);\n }\n else {\n setPageNumber(1);\n handleGetUserNotifications(1);\n }\n }}\n color=\"inherit\"\n >\n \n {(notificationsAmount.unreadNotifications === 0) && (\n \n )}\n\n {notificationsAmount.unreadNotifications > 0 && (\n \n \n \n \n \n \n )}\n \n \n \n )}\n \n \n \n {({ TransitionProps }) => (\n \n \n \n \n \n \n \n \n \n All Notifications\n \n \n \n \n {isUpdating && (\n \n )}\n\n {!isUpdating && (\n Mark as all read\n \n )}\n \n \n \n \n \n \n \n \n \n {status.map((option) => (\n \n ))}\n
\n \n \n \n \n \n \n\n \n\n \n \n \n \n \n Show more\n \n \n \n \n \n \n )}\n \n\n setOpenReadNotification({ ...openReadNotification, isOpen: false, notificationId: '' })}\n onReadNotification={(amount) => {\n\n setNotificationsAmount({\n ...notificationsAmount,\n allNotifications: amount.allNotifications,\n unreadNotifications: amount.unreadNotifications,\n });\n\n }}\n />\n \n );\n};\n\nexport default NotificationSection;\n","export default __webpack_public_path__ + \"static/media/notification-cute.307a8b2a.svg\";","import {\n Drawer, \n Box, \n Stack,\n Typography, \n Toolbar,\n IconButton,\n Skeleton,\n} from \"@mui/material\";\nimport { Notifications, Close } from \"@mui/icons-material\";\n\nimport { grey } from \"@mui/material/colors\";\nimport ScrollBar from \"react-perfect-scrollbar\";\nimport NotificationCard from \"ui-component/cards/NotificationCard\";\nimport NoNotification from \"assets/images/icons/notification-cute.svg\";\n\nconst LoadingNotificationSkeleton = () => (\n \n {Array(10)\n .fill(0)\n .map((_, i) => (\n
\n \n \n
\n ))}\n
\n);\n\nconst NoNotificationComponent = () => (\n \n \"No\n (theme.palette.mode === \"light\" ? grey[800] : \"#fff\"),\n mb: 3,\n }}\n >\n No notifications\n \n \n);\n\nconst NotificationDrawer = ({\n open,\n onClose,\n isLoading,\n notifications = [],\n}) => {\n\n return (\n \n \n \n \n Notifications\n \n \n \n \n \n\n {isLoading \n ? \n : (\n \n {notifications.length > 0 ?\n notifications.map(notification => (\n \n ))\n : \n }\n \n )\n }\n \n )\n}\n\nexport default NotificationDrawer;","import { useState, useEffect } from 'react';\n\nimport { useTheme } from '@mui/material/styles';\nimport {\n Avatar,\n Badge,\n Box,\n ButtonBase,\n} from '@mui/material';\n\nimport AnimateButton from 'ui-component/extended/AnimateButton';\n\nimport { IconBell } from '@tabler/icons';\nimport { \n useGetUserNotificationsFullReadListMutation,\n useGetAmountOfNotificationsMutation,\n useGetNotificationDocumentsMutation,\n} from 'Services/UserNotificationService';\n\nimport { useDispatch } from 'react-redux';\nimport { showErrorToaster } from 'store/Shared.Slice';\n\nimport NotificationDrawer from './NotificationDrawer';\n\nconst NotificationSectionV2 = ({ welcomeClosed = false }) => {\n\n const theme = useTheme();\n const dispatch = useDispatch();\n\n const [getUserNotificationList, { isLoading: isNotificationListLoading }] = useGetUserNotificationsFullReadListMutation();\n const [ getAmountOfNotifications ] = useGetAmountOfNotificationsMutation();\n const [getAnnouncementDocument] = useGetNotificationDocumentsMutation();\n\n const [drawerOpen, setDrawerOpen] = useState(false);\n const [isNotificationFetched, setIsNotificationFetched] = useState(false);\n const [userNotifications, setUserNotifications] = useState([]);\n const [notificationsAmount, setNotificationsAmount] = useState({\n allNotifications: 0,\n unreadNotifications: 0\n });\n\n const handleGetAmountOfNotifications = () => {\n getAmountOfNotifications().unwrap().then(response => {\n setNotificationsAmount({\n ...notificationsAmount,\n allNotifications: response?.data?.allNotifications,\n unreadNotifications: response?.data?.unreadNotifications,\n });\n }, error => {\n // Bad Request\n if (error.data?.message != null) {\n dispatch(showErrorToaster(error.data?.message));\n }\n });\n }\n\n const getNotificationDocuments = (announcementId) => {\n getAnnouncementDocument(announcementId).unwrap().then(resp => {\n setUserNotifications(prevList => prevList.map\n (notification => \n notification.info.announcementId === announcementId \n ? { ...notification, documents: resp, isDocumentsLoading: false } \n : notification\n ));\n });\n }\n\n const handleOpenDrawer = () => {\n setDrawerOpen(true);\n\n if(!isNotificationFetched) {\n getUserNotificationList().unwrap().then(resp => {\n\n const userNotificationsTemp = [];\n\n resp.forEach(notification => {\n userNotificationsTemp.push({\n info: notification,\n documents: [],\n isDocumentsLoading: true,\n })\n\n getNotificationDocuments(notification.announcementId);\n })\n\n setUserNotifications(userNotificationsTemp);\n setIsNotificationFetched(true);\n\n setNotificationsAmount({\n ...notificationsAmount,\n unreadNotifications: resp.filter(o => o.tagUnread === true).length,\n }); \n });\n }\n }\n\n useEffect(() => {\n handleGetAmountOfNotifications();\n }, []);\n\n useEffect(() => {\n if (welcomeClosed) {\n handleOpenDrawer();\n }\n }, [welcomeClosed]);\n\n return (\n <>\n \n \n \n \n {(notificationsAmount.unreadNotifications === 0) && (\n \n )}\n\n {(notificationsAmount.unreadNotifications > 0 ) && (\n \n \n \n \n \n \n )}\n \n \n \n\n setDrawerOpen(false)}\n notifications={userNotifications}\n isLoading={isNotificationListLoading}\n />\n \n )\n}\n\nexport default NotificationSectionV2;","import { emptySplitApi } from './index'\n\nexport const referralApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n \n submitReferral: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/referral`,\n method: \"POST\",\n body: model\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const {\n useSubmitReferralMutation,\n} = referralApi;\n","import React from \"react\";\nimport {\n DialogActions,\n useTheme,\n Grid,\n Box,\n Button,\n Typography,\n Divider,\n Tooltip,\n Chip,\n} from \"@mui/material\";\nimport SimpleDialogWrapper from \"components/SimpleDialogWrapper\";\nimport MaskedInputWrapper from \"components/MaskedInputWapper\";\nimport FormControlWrapper from \"components/FormControlWrapper\";\nimport { Close, ContentCopyTwoTone, Language } from \"@mui/icons-material\";\nimport { LoadingButton } from \"@mui/lab\";\nimport { IconRocket } from \"@tabler/icons\";\nimport { TipsAndUpdates } from \"@mui/icons-material\";\nimport { useSubmitReferralMutation } from \"Services/ReferralService\";\nimport { useState, useEffect } from \"react\";\nimport { showSuccessToaster, showErrorToaster } from \"store/Shared.Slice\";\nimport { useDispatch, useSelector } from \"react-redux\";\n\nconst ReferralFormPopup = ({ openPopup, onClose, formValue, setFormValue }) => {\n const theme = useTheme();\n const { userToken } = useSelector((state) => state.sharedState);\n\n const dispatch = useDispatch();\n\n const [submitReferral, { isLoading: isReferralSubmitting }] =\n useSubmitReferralMutation();\n\n\n const handleFormChange = (field, value) => {\n setFormValue({ ...formValue, [field]: value });\n };\n\n const referralCode = [];\n\n referralCode.push({\n label: \"Website\",\n value: `${window.location.origin}/register?referral=${userToken?.UserName}`,\n icon: ,\n endIcon: ,\n });\n\n const handleSubmitReferral = async () => {\n try {\n const model = {\n nameCharity: formValue.nameCharity.value || null,\n nameContact: formValue.nameContact.value || null,\n email: formValue.email.value || null,\n phoneNumber: formValue.phoneNumber.value || null,\n };\n\n const response = await submitReferral(model).unwrap();\n\n dispatch(showSuccessToaster(response.message));\n \n setFormValue({\n nameCharity: { value: \"\", error: \"\" },\n nameContact: { value: \"\", error: \"\" },\n email: { value: \"\", error: \"\" },\n phoneNumber: { value: \"\", error: \"\" }\n });\n\n } catch (error) {\n // Model Errors\n if (error.data?.errors != null) {\n const copyFormValue = { ...formValue };\n Object.keys(error.data?.errors).forEach((key) => {\n if (copyFormValue[key]) {\n copyFormValue[key].error = error.data?.errors[key][0];\n }\n });\n\n setFormValue(copyFormValue);\n dispatch(showErrorToaster(\"Check for errors and try again\"));\n }\n // Bad Request\n else if (error.data?.message != null) {\n dispatch(showErrorToaster(error.data?.message));\n }\n }\n };\n\n const copyToClipboard = (text) => {\n navigator.clipboard.writeText(text).then(() => {\n dispatch(\n showSuccessToaster(`Copied to clipboard. ${referralCode[0].value}`)\n );\n });\n };\n\n\n\n return (\n }\n open={openPopup}\n onClose={onClose}\n width=\"600px\"\n dialogContentProps={{\n sx: {\n p: 2,\n height: \"auto\",\n minHeight: \"200px\",\n minWidth: \"600px\",\n },\n }}\n ActionContents={\n <>\n \n Close\n \n \n }\n >\n \n \n \n \n \n Refer a friend to win subscription time\n \n \n\n \n \n \n handleFormChange(\"nameCharity\", {\n value: element.target.value,\n error: \"\",\n })\n }\n />\n \n \n \n handleFormChange(\"nameContact\", {\n value: element.target.value,\n error: \"\",\n })\n }\n />\n \n \n \n handleFormChange(\"phoneNumber\", {\n value: element.target.value,\n error: \"\",\n })\n }\n />\n \n \n \n handleFormChange(\"email\", {\n value: element.target.value,\n error: \"\",\n })\n }\n />\n \n \n \n \n Close\n \n\n \n Submit\n \n \n \n \n \n \n \n \n \n \n \n \n Share your referral link to win subscription time\n \n \n \n \n \n {referralCode.map((contact) => (\n \n copyToClipboard(contact.value) }\n : {})}\n color=\"secondary\"\n size=\"small\"\n label=\"Referral Code\"\n sx={{\n p: \"12.8px 5px\",\n fontSize: \"0.75rem\",\n letterSpacing: 0.5,\n }}\n />\n \n ))}\n \n \n \n \n \n \n );\n};\n\nexport default ReferralFormPopup;\n","import { useState } from \"react\";\n\nimport { useTheme } from \"@mui/material/styles\";\nimport { Link, Typography, Grid, Box } from \"@mui/material\";\n\nimport ReferralFormPopup from \"./ReferralForm.Popup\";\nimport { IconRocket } from \"@tabler/icons\";\n\nconst ReferralSection = () => {\n const defaultFormValue = {\n nameCharity: { value: \"\", error: \"\" },\n nameContact: { value: \"\", error: \"\" },\n email: { value: \"\", error: \"\" },\n phoneNumber: { value: \"\", error: \"\" },\n success: { value: \"\", error: \"\" },\n };\n const [formValue, setFormValue] = useState(defaultFormValue);\n\n const [openPopupReferral, setOpenPopupReferral] = useState(false);\n\n const handleOpenPopupReferral = () => {\n setFormValue(defaultFormValue); \n setOpenPopupReferral(true); \n };\n\n const handleClosePopupReferral = () => {\n setOpenPopupReferral(false);\n };\n\n return (\n <>\n \n \n \n \n \n \n Refer and earn free membership\n \n\n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default ReferralSection;\n","import { useEffect, useState } from \"react\";\n\nimport DialogConfirmWrapper from \"components/DialogConfirmWrapper\";\nimport config from 'config';\nimport Cookies from \"universal-cookie\";\nimport { TungstenOutlined } from \"@mui/icons-material\";\nimport { Typography } from \"@mui/material\";\n\nconst WelcomePopup = ({ onCloseWelcome }) => {\n\n const [ openPopup, setOpenPopup ] = useState(false);\n\n const cookies = new Cookies();\n\n const setCookieVal = (key, value) => {\n cookies.set(key, value, { maxAge: 1000000, path: '/', sameSite: true });\n }\n\n const handleClose = () => {\n setCookieVal(config.welcomeMessage.keyVersion, 'true');\n setOpenPopup(false);\n\n onCloseWelcome();\n }\n\n useEffect(() => {\n //const needOpen = cookies.get(config.welcomeMessage.keyVersion) !== 'true';\n //setOpenPopup(needOpen);\n }, []);\n\n return (\n \n {config.welcomeMessage.message.map((msg, index) => (\n \n ))}\n \n }\n confirmLabel=\"What's New?\"\n isLoading={false}\n cancelButtonVisible={false}\n onConfirm={handleClose}\n startIcon={}\n size=\"sm\"\n />\n )\n\n}\n\nexport default WelcomePopup;","import PropTypes from 'prop-types';\n\n// material-ui\nimport { useTheme } from '@mui/material/styles';\nimport { Avatar, Box, ButtonBase, Tooltip } from '@mui/material';\n\n// project imports\nimport LogoSection from '../LogoSection';\n\n//import NotificationSection from './NotificationSection';\n\n// assets\nimport SimpleProfileSection from './ProfileSection/SimpleProfileSection';\nimport { IconMenu2 } from '@tabler/icons';\nimport { MenuOpen } from '@mui/icons-material';\nimport NotificationSection from './NotificationSection';\nimport NotificationSectionV2 from './NotificationSectionV2';\nimport ReferralSection from './ReferralSection';\nimport WelcomePopup from './Welcome/Welcome.popup';\nimport { useState } from 'react';\n\n// ==============================|| MAIN NAVBAR / HEADER ||============================== //\n\nconst Header = ({ handleLeftDrawerToggle }) => {\n const theme = useTheme();\n const [ welcomeClosed, setWelcomeClosed ] = useState(false);\n\n return (\n <>\n {/* logo & toggler button */}\n \n \n \n \n \n \n \n \n \n \n \n \n\n {/* header search */}\n {/* */}\n \n \n \n \n \n \n \n \n {/* notification & profile */}\n {/* */}\n \n { setWelcomeClosed(true); } } />\n \n \n \n );\n};\n\nHeader.propTypes = {\n handleLeftDrawerToggle: PropTypes.func\n};\n\nexport default Header;\n","// assets\nimport { IconUserPlus, IconMan, IconBuildingCommunity } from '@tabler/icons';\n\n// constant\nexport const icons = {\n IconUserPlus,\n IconMan,\n IconBuildingCommunity\n};\n\nconst account = {\n id: 'account',\n title: 'side_menu.account',\n type: 'group',\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n collapse: false,\n children: [\n {\n id: 'account-user-profile',\n title: 'side_menu.user_profile',\n type: 'item',\n url: 'main/account/user-profile',\n icon: 'IconMan', //icons.IconMan,\n breadcrumbs: false,\n roles: ['user', 'subuser', 'member', 'supervisor', 'demo', 'sales', 'admin', 'sales', 'superadmin', 'it'],\n },\n {\n id: 'account-additional-users',\n title: 'side_menu.additional_users',\n type: 'item',\n url: 'main/account/additional-users',\n icon: 'IconUserPlus', //icons.IconUserPlus,\n breadcrumbs: false,\n roles: ['user', 'demo', 'sales', 'admin', 'superadmin', 'it'],\n },\n {\n id: 'account-organization-profile',\n title: 'side_menu.organization_profile',\n type: 'item',\n url: 'main/account/organization-profile',\n icon: 'IconBuildingCommunity', //icons.IconBuildingCommunity,\n breadcrumbs: false,\n roles: ['user', 'demo', 'sales', 'admin', 'superadmin', 'it'],\n }\n ]\n};\n\nexport default account;\n","// assets\nimport { IconUsers, IconBusinessplan } from '@tabler/icons';\n\n// constant\nexport const icons = {\n IconUsers,\n IconBusinessplan\n};\n\nconst administration = {\n id: 'administration',\n title: 'side_menu.administration',\n type: 'group',\n roles: ['admin', 'superadmin', 'it', 'sales'],\n collapse: false,\n children: [\n {\n id: 'administration-manage-account',\n title: 'side_menu.manage_account',\n type: 'item',\n url: 'main/admin/manage-accounts',\n icon: 'IconUsers', //icons.IconUsers,\n breadcrumbs: false,\n roles: ['admin', 'superadmin', 'it'],\n },\n {\n id: 'administration-manage-announcement',\n title: 'side_menu.manage_announcement',\n type: 'item',\n url: 'main/admin/manage-announcements',\n icon: 'IconUsers', //icons.IconUsers,\n breadcrumbs: false,\n roles: ['admin', 'superadmin', 'it'],\n },\n {\n id: 'administration-manage-subscription-plan',\n title: 'side_menu.manage_subscription_plan',\n type: 'item',\n url: 'main/admin/manage-subscription-plans',\n icon: 'IconUsers', //icons.IconUsers,\n breadcrumbs: false,\n roles: ['admin', 'superadmin', 'it'],\n },\n {\n id: 'administration-manage-coupon',\n title: 'side_menu.manage_coupons',\n type: 'item',\n url: 'main/admin/manage-coupons',\n icon: 'IconUsers', //icons.IconUsers,\n breadcrumbs: false,\n roles: ['admin', 'superadmin', 'it', 'sales'],\n },\n {\n id: 'administration-manage-feedback',\n title: 'side_menu.manage_feedbacks',\n type: 'item',\n url: 'main/admin/manage-feedbacks',\n icon: 'IconUsers', //icons.IconUsers,\n breadcrumbs: false,\n roles: ['admin', 'superadmin'],\n },\n {\n id: 'administration-manage-deadline',\n title: 'side_menu.manage_deadlines',\n type: 'item',\n url: 'main/admin/manage-deadlines',\n icon: 'IconUsers', //icons.IconUsers,\n breadcrumbs: false,\n roles: ['admin', 'superadmin'],\n },\n /*{\n id: 'administration-manage-plans',\n title: 'side_menu.manage_plans',\n type: 'item',\n url: 'main/admin/manage-plans',\n icon: 'IconBusinessplan', //icons.IconBusinessplan,\n breadcrumbs: false,\n roles: ['admin', 'superadmin', 'it'],\n }*/\n ]\n};\n\nexport default administration;\n","// assets\nimport { IconTools, IconRepeat } from '@tabler/icons';\n\n// constant\nexport const icons = {\n IconTools,\n IconRepeat\n};\n\nconst userProject = {\n id: 'user-project',\n title: 'side_menu.project_manager',\n type: 'group',\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n collapse: false,\n children: [\n {\n id: 'user-project-list',\n title: 'side_menu.project_list',\n type: 'item',\n url: 'main/user-project/list',\n icon: 'IconTools', //icons.IconTools,\n breadcrumbs: false,\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n },\n {\n id: 'user-project-archive',\n title: 'side_menu.project_archive',\n type: 'item',\n url: 'main/user-project/archive',\n icon: 'IconRepeat', //icons.IconRepeat,\n breadcrumbs: false,\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n }\n ]\n};\n\nexport default userProject;\n","// assets\nimport {\n IconFileText,\n IconReceipt,\n IconId,\n IconTrafficLights,\n IconStars,\n IconBox,\n IconKeyboard,\n IconWorld,\n IconCalendarEvent\n} from '@tabler/icons';\n\n// constant\nexport const icons = {\n IconFileText,\n IconReceipt,\n IconId,\n IconTrafficLights,\n IconStars,\n IconBox,\n IconKeyboard,\n IconWorld,\n IconCalendarEvent\n};\n\nconst searchEngine = {\n id: 'search-engine',\n title: 'side_menu.search_engine',\n type: 'group',\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n collapse: false,\n children: [\n {\n id: 'by-giving-history',\n title: 'side_menu.by_giving_history',\n type: 'item',\n url: 'main/search/giving-history-v2',\n icon: 'IconFileText', //icons.IconFileText,\n breadcrumbs: false,\n roles: ['accessus'],\n },\n {\n id: 'by-keyword',\n title: 'side_menu.by_keyword',\n type: 'item',\n url: 'main/search/by-keyword-v2',\n icon: 'IconKeyboard', //icons.IconBox,\n breadcrumbs: false,\n roles: ['accessus'],\n },\n {\n id: 'by-name',\n title: 'side_menu.by_name',\n type: 'item',\n url: 'main/search/by-name-v2',\n icon: 'IconReceipt', //icons.IconReceipt,\n breadcrumbs: false,\n roles: ['accessus'],\n },\n {\n id: 'by-director',\n title: 'side_menu.by_director',\n type: 'item',\n url: 'main/search/by-director-v2',\n icon: 'IconId', //icons.IconId,\n breadcrumbs: false,\n roles: ['accessus'],\n },\n {\n id: 'by-year',\n title: 'side_menu.by_year',\n type: 'item',\n url: 'main/search/by-year-v2',\n icon: 'IconTrafficLights', //icons.IconTrafficLights,\n breadcrumbs: false,\n roles: ['accessus'],\n },\n /* {\n id: 'by-deadline',\n title: 'side_menu.by_deadline',\n type: 'item',\n url: 'main/search/by-deadline',\n icon: 'IconCalendarEvent', //icons.IconCalendarEvent,\n breadcrumbs: false,\n roles: ['accessus'],\n }, */\n /*{\n id: 'by-rating',\n title: 'side_menu.by_rating',\n type: 'item',\n url: 'main/search/by-rating',\n icon: icons.IconStars,\n breadcrumbs: false,\n roles: ['user', 'subuser'],\n },*/\n {\n id: 'by-giving-history-ca',\n title: 'side_menu.by_giving_history',\n type: 'item',\n url: 'main/search/giving-history-ca-v2',\n icon: 'IconFileText', //icons.IconFileText,\n breadcrumbs: false,\n roles: ['accesscanada'],\n },\n {\n id: 'by-name-ca',\n title: 'side_menu.by_name',\n type: 'item',\n url: 'main/search/name-ca-v2',\n icon: 'IconReceipt', //icons.IconReceipt,\n breadcrumbs: false,\n roles: ['accesscanada'],\n },\n {\n id: 'by-director-ca',\n title: 'side_menu.by_director',\n type: 'item',\n url: 'main/search/directors-ca-v2',\n icon: 'IconId', //icons.IconId,\n breadcrumbs: false,\n roles: ['accesscanada'],\n },\n {\n id: 'by-year-ca',\n title: 'side_menu.by_year',\n type: 'item',\n url: 'main/search/year-ca-v2',\n icon: 'IconTrafficLights', //icons.IconTrafficLights,\n breadcrumbs: false,\n roles: ['accesscanada'],\n },\n\n /*{\n id: 'by-rating',\n title: 'side_menu.by_rating',\n type: 'item',\n url: 'main/search/by-rating',\n icon: icons.IconStars,\n breadcrumbs: false,\n roles: ['user', 'subuser'],\n },*/\n {\n id: 'by-custom',\n title: 'side_menu.by_custom',\n type: 'item',\n url: 'main/search/by-custom-v2',\n icon: 'IconBox', //icons.IconBox,\n breadcrumbs: false,\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n },\n {\n id: 'by-international-funding',\n title: 'side_menu.by_international_funding',\n type: 'item',\n url: 'main/search/by-international-funding-v2',\n icon: 'IconWorld', //icons.IconTrafficLights,\n breadcrumbs: false,\n roles: ['accessus', 'pro', 'admin', 'sales', 'superadmin'],\n },\n ]\n};\n\nexport default searchEngine;\n","// assets\nimport { \n IconFileText, \n IconReceipt,\n IconId,\n IconTrafficLights,\n IconStars,\n IconBox,\n IconKeyboard\n} from '@tabler/icons';\n\n// constant\nexport const icons = {\n IconFileText,\n IconReceipt,\n IconId,\n IconTrafficLights,\n IconStars,\n IconBox,\n IconKeyboard\n};\n\nconst searchEngineCanada = {\n id: 'search-engine-canada',\n title: 'side_menu.search_engine_canada',\n type: 'group',\n roles: ['accesscanada'],\n collapse: false,\n children: [\n {\n id: 'by-giving-history-ca',\n title: 'side_menu.by_giving_history',\n type: 'item',\n url: 'main/search/giving-history-ca',\n icon: 'IconFileText', //icons.IconFileText,\n breadcrumbs: false,\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n },\n {\n id: 'by-name',\n title: 'side_menu.by_name',\n type: 'item',\n url: 'main/search/name-ca',\n icon: 'IconReceipt', //icons.IconReceipt,\n breadcrumbs: false,\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n },\n {\n id: 'by-director',\n title: 'side_menu.by_director',\n type: 'item',\n url: 'main/search/directors-ca',\n icon: 'IconId', //icons.IconId,\n breadcrumbs: false,\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n },\n {\n id: 'by-year',\n title: 'side_menu.by_year',\n type: 'item',\n url: 'main/search/year-ca',\n icon: 'IconTrafficLights', //icons.IconTrafficLights,\n breadcrumbs: false,\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n },\n /*{\n id: 'by-rating',\n title: 'side_menu.by_rating',\n type: 'item',\n url: 'main/search/by-rating',\n icon: icons.IconStars,\n breadcrumbs: false,\n roles: ['user', 'subuser'],\n },*/\n {\n id: 'by-custom',\n title: 'side_menu.by_custom',\n type: 'item',\n url: 'main/search/by-custom-v2',\n icon: 'IconBox', //icons.IconBox,\n breadcrumbs: false,\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n },\n \n ]\n};\n\nexport default searchEngineCanada;","// assets\nimport { IconFileInfo, IconLicense, IconBusinessplan, IconMailOpened, IconThumbUp, IconReportAnalytics } from '@tabler/icons';\n\n// constant\nexport const icons = {\n IconFileInfo,\n IconLicense,\n IconBusinessplan,\n IconMailOpened,\n IconThumbUp,\n IconReportAnalytics\n};\n\nconst documentGenerator = {\n id: 'document-generator',\n title: 'side_menu.document_generator',\n type: 'group',\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n collapse: false,\n children: [\n {\n id: 'inquiry',\n title: 'side_menu.inquiry',\n type: 'item',\n url: 'main/document-generator/inquiry',\n icon: 'IconFileInfo', //icons.IconFileInfo,\n breadcrumbs: false,\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n },\n {\n id: 'proposal',\n title: 'side_menu.proposal',\n type: 'item',\n url: 'main/document-generator/proposal',\n icon: 'IconLicense', //icons.IconLicense,\n breadcrumbs: false,\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n },\n {\n id: 'thank-you-letter',\n title: 'side_menu.thank_you',\n type: 'item',\n url: 'main/document-generator/thank-you',\n icon: 'IconThumbUp', //icons.IconThumbUp,\n breadcrumbs: false,\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n },\n {\n id: 'impact-report-letter',\n title: 'side_menu.impact_report',\n type: 'item',\n url: 'main/document-generator/impact-report',\n icon: 'IconReportAnalytics', //icons.IconReportAnalytics,\n breadcrumbs: false,\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n },\n {\n id: 'custom-letter',\n title: 'side_menu.custom_letter',\n type: 'item',\n url: 'main/document-generator/custom-letter',\n icon: 'IconMailOpened', //icons.IconMailOpened,\n breadcrumbs: false,\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n }\n ]\n};\n\nexport default documentGenerator;\n","// assets\nimport { IconWoman } from '@tabler/icons';\n\n// constant\nexport const icons = {\n IconWoman\n};\n\nconst grantSecretary = {\n id: 'grant-secretary',\n type: 'group',\n title: 'side_menu.grant_secretary',\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n collapse: false,\n /*children: [\n {\n id: 'grant-secretary-1',\n title: 'side_menu.grant_secretary',\n type: 'item',\n url: 'main/grant-secretary',\n icon: 'IconWoman', //icons.IconWoman,\n breadcrumbs: false,\n roles: ['user', 'subuser', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n },\n ]*/\n};\n\nexport default grantSecretary;\n","// assets\nimport { \n IconHeart,\n IconHandOff,\n IconDatabaseImport\n} from '@tabler/icons';\n\n// constant\nexport const icons = {\n IconHeart,\n IconHandOff,\n IconDatabaseImport\n};\n\nconst manageFunders = {\n // id: 'manage-funders',\n title: 'side_menu.manage_funders',\n type: 'group',\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n collapse: false,\n children: [\n {\n id: 'favorites',\n title: 'side_menu.favorites',\n type: 'item',\n // url: 'main/manage-funders/favorites',\n icon: 'IconHeart', //icons.IconHeart,\n breadcrumbs: false,\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n },\n {\n id: 'blocked-funders',\n title: 'side_menu.blocked_funders',\n type: 'item',\n // url: 'main/manage-funders/blocked-funders',\n icon: 'IconHandOff', //icons.IconHandOff,\n breadcrumbs: false,\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n },\n {\n id: 'custom-databases',\n title: 'side_menu.custom_databases',\n type: 'item',\n //url: 'main/manage-funders/custom-databases',\n icon: 'IconDatabaseImport', //icons.IconDatabaseImport,\n breadcrumbs: false,\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n },\n ]\n};\n\nexport default manageFunders;\n","// assets\nimport { \n IconHeart,\n IconHandOff,\n IconDatabaseImport\n} from '@tabler/icons';\n\n// constant\nexport const icons = {\n IconHeart,\n IconHandOff,\n IconDatabaseImport\n};\n\nconst manageFundersv2 = {\n id: 'manage-funders-v2',\n title: 'side_menu.manage_funders',\n type: 'group',\n roles: ['user', 'subuser', 'member', 'supervisor', 'admin', 'demo', 'sales', 'superadmin', 'it'],\n collapse: false\n};\n\nexport default manageFundersv2;\n","import account, { icons as accountIcons } from './account';\nimport administration, { icons as administrationIcons } from './administration';\nimport userProject, { icons as userProjectIcons } from './userProject';\nimport searchEngine, { icons as searchEngineIcons } from './searchEngine';\nimport searchEngineCanada, { icons as searchEngineCanadaIcons } from './searchEngineCanada';\nimport documentGenerator, { icons as documentGeneratorIcons } from './documentGenerator';\nimport grantSecretary, { icons as grantSecretaryIcons } from './grantSecretary';\nimport manageFunders, { icons as manageFundersIcons } from './manageFunders';\nimport manageFundersv2 from './manageFundersv2';\n\n// ==============================|| MENU ITEMS ||============================== //\n\nconst menuItems = {\n items: [\n administration, \n account, \n userProject, \n searchEngine, \n documentGenerator, \n grantSecretary,\n manageFundersv2\n ]\n};\n\nexport const menuIcons = {\n ...accountIcons,\n ...administrationIcons,\n ...userProjectIcons,\n ...searchEngineIcons,\n ...documentGeneratorIcons,\n ...grantSecretaryIcons,\n ...manageFundersIcons\n};\n\nexport default menuItems;\n","import PropTypes from 'prop-types';\nimport { forwardRef, useEffect } from 'react';\nimport { Link } from 'react-router-dom';\nimport { useDispatch, useSelector } from 'react-redux';\n\n// material-ui\nimport { useTheme } from '@mui/material/styles';\nimport { Avatar, Chip, ListItemButton, ListItemIcon, ListItemText, Typography, useMediaQuery } from '@mui/material';\n\n// project imports\nimport { MENU_OPEN, SET_MENU } from 'store/actions';\nimport config from 'config';\n\n// assets\nimport FiberManualRecordIcon from '@mui/icons-material/FiberManualRecord';\nimport { useTranslation } from \"react-i18next\";\nimport { menuIcons } from 'menu-items';\nimport useVersioning from 'hooks/useVersioning';\n\n// ==============================|| SIDEBAR MENU LIST ITEMS ||============================== //\n\nconst NavItem = ({ item, level }) => {\n\n const { t } = useTranslation();\n const theme = useTheme();\n const dispatch = useDispatch();\n const customization = useSelector((state) => state.customization);\n const matchesSM = useMediaQuery(theme.breakpoints.down('lg'));\n const { getPathByName } = useVersioning();\n\n const Icon = menuIcons[item.icon];\n\n const itemIcon = item?.icon ? (\n \n ) : (\n id === item?.id) > -1 ? 8 : 6,\n height: customization.isOpen.findIndex((id) => id === item?.id) > -1 ? 8 : 6\n }}\n fontSize={level > 0 ? 'inherit' : 'medium'}\n />\n );\n\n let itemTarget = '_self';\n if (item.target) {\n itemTarget = '_blank';\n }\n\n const itemUrl = getPathByName(item.id) ?? item.url;\n\n let listItemProps = {\n component: forwardRef((props, ref) => )\n };\n if (item?.external) {\n listItemProps = { component: 'a', href: itemUrl, target: itemTarget };\n }\n\n const itemHandler = (id) => {\n dispatch({ type: MENU_OPEN, id });\n if (matchesSM) dispatch({ type: SET_MENU, opened: false });\n };\n\n // active menu item on page load\n useEffect(() => {\n const currentIndex = document.location.pathname\n .toString()\n .split('/')\n .findIndex((id) => id === item.id);\n if (currentIndex > -1) {\n dispatch({ type: MENU_OPEN, id: item.id });\n }\n // eslint-disable-next-line\n }, []);\n\n return (\n 1 ? 'transparent !important' : 'inherit',\n py: level > 1 ? 1 : 1.25,\n pl: `${level * 24}px`,\n color: 'white'\n\n }}\n selected={customization.isOpen.findIndex((id) => id === item.id) > -1}\n onClick={() => itemHandler(item.id)}\n >\n {itemIcon}\n id === item.id) > -1 ? 'h5' : 'body1'} color=\"inherit\">\n {t(item.title)}\n \n }\n secondary={\n item.caption && (\n \n {t(item.caption)}\n \n )\n }\n />\n {item.chip && (\n {item.chip.avatar}}\n />\n )}\n \n );\n};\n\nNavItem.propTypes = {\n item: PropTypes.object,\n level: PropTypes.number\n};\n\nexport default NavItem;\n","import PropTypes from 'prop-types';\nimport { useState } from 'react';\nimport { useSelector } from 'react-redux';\n\n// material-ui\nimport { useTheme } from '@mui/material/styles';\nimport { Collapse, List, ListItemButton, ListItemIcon, ListItemText, Typography } from '@mui/material';\n\n// project imports\nimport NavItem from '../NavItem';\n\n// assets\nimport FiberManualRecordIcon from '@mui/icons-material/FiberManualRecord';\nimport { IconChevronDown, IconChevronUp } from '@tabler/icons';\nimport { useTranslation } from \"react-i18next\";\n\n// ==============================|| SIDEBAR MENU LIST COLLAPSE ITEMS ||============================== //\n\nconst NavCollapse = ({ menu, level }) => {\n\n const { t } = useTranslation();\n const theme = useTheme();\n const customization = useSelector((state) => state.customization);\n\n const [open, setOpen] = useState(false);\n const [selected, setSelected] = useState(null);\n\n const handleClick = () => {\n setOpen(!open);\n setSelected(!selected ? menu.id : null);\n };\n\n // menu collapse & item\n const menus = menu.children?.map((item) => {\n switch (item.type) {\n case 'collapse':\n return ;\n case 'item':\n return ;\n default:\n return (\n \n Menu Items Error\n \n );\n }\n });\n\n const Icon = menu.icon;\n const menuIcon = menu.icon ? (\n \n ) : (\n 0 ? 'inherit' : 'medium'}\n />\n );\n\n return (\n <>\n 1 ? 'transparent !important' : 'inherit',\n py: level > 1 ? 1 : 1.25,\n pl: `${level * 24}px`\n }}\n selected={selected === menu.id}\n onClick={handleClick}\n >\n {menuIcon}\n \n {t(menu.title)}\n \n }\n secondary={\n menu.caption && (\n \n {t(menu.caption)}\n \n )\n }\n />\n {open ? (\n \n ) : (\n \n )}\n \n \n \n {menus}\n \n \n \n );\n};\n\nNavCollapse.propTypes = {\n menu: PropTypes.object,\n level: PropTypes.number\n};\n\nexport default NavCollapse;\n","import { useState } from 'react';\nimport PropTypes from 'prop-types';\n\n// material-ui\nimport { \n Divider, \n List, \n Typography,\n ListItemButton,\n ListItemIcon,\n ListItemText,\n Collapse\n} from '@mui/material';\nimport FiberManualRecordIcon from '@mui/icons-material/FiberManualRecord';\n\nimport { IconChevronDown, IconChevronUp } from '@tabler/icons';\n\n// project imports\nimport NavItem from '../NavItem';\nimport NavCollapse from '../NavCollapse';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { useTranslation } from \"react-i18next\";\nimport { collapseMenu } from 'store/Shared.Slice';\nimport { useNavigate } from 'react-router';\n\n\n// ==============================|| SIDEBAR MENU LIST GROUP ||============================== //\n\nconst NavGroup = ({ item }) => {\n\n const { t } = useTranslation();\n const dispatch = useDispatch();\n const { userToken } = useSelector(state => state.sharedState)\n const customization = useSelector((state) => state.customization);\n const navigate = useNavigate();\n\n let userRoles = [];\n\n if (Array.isArray(userToken.role)) {\n userRoles = userToken.role.map(value => value.toLowerCase());\n }\n else {\n userRoles.push(userToken.role.toLowerCase());\n }\n\n const [selected, setSelected] = useState(null);\n\n const menuIcon = (\n 0 ? 'inherit' : 'medium'}\n fontSize='inherit'\n />\n );\n\n const handleClick = () => {\n setSelected(!selected ? item.id : null);\n\n if (item.id === 'grant-secretary') {\n navigate('/main/grant-secretary');\n }else if(item.id === 'manage-funders-v2'){\n navigate('/main/manage-funders');\n } \n else {\n dispatch(collapseMenu(item.id));\n }\n };\n\n\n // menu list collapse & items\n const items = item.children?.map((menu) => {\n switch (menu.type) {\n case 'collapse':\n\n if (userRoles.filter(x => menu.roles.includes(x)).length > 0)\n return ;\n else\n return null;\n\n case 'item':\n\n if (userRoles.filter(x => menu.roles.includes(x)).length > 0)\n return ;\n else\n return null;\n\n default:\n return (\n \n Menu Items Error\n \n );\n }\n });\n\n return (\n <>\n 1 ? 'transparent !important' : 'inherit',\n backgroundColor: 'transparent !important',\n py: 2,\n pl: `${0}px`,\n color: 'white'\n }}\n //selected={selected === 'grant-secretary'}\n onClick={handleClick}\n >\n {menuIcon}\n \n {t(item.title)}\n \n }\n />\n {item.id !== 'grant-secretary' && item.id !== 'manage-funders-v2'&& (\n item.collapse ? (\n \n ) : (\n \n )\n )}\n \n \n \n \n {items}\n \n \n {/*\n {t(item.title)}\n {item.caption && (\n \n {t(item.caption)}\n \n )}\n \n )\n }\n >\n {items}\n */}\n\n {/* group divider */}\n \n \n );\n};\n\nNavGroup.propTypes = {\n item: PropTypes.object\n};\n\nexport default NavGroup;\n","// material-ui\nimport { Divider, Typography } from '@mui/material';\n\n// project imports\nimport NavGroupV2 from './NavGroup/NavGroupV2';\nimport menus from 'menu-items';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { useEffect } from 'react';\nimport { loadMenuItems } from 'store/Shared.Slice';\nimport NavItem from './NavItem';\n\n// ==============================|| SIDEBAR MENU LIST ||============================== //\n\nconst MenuList = () => {\n\n const dispatch = useDispatch();\n const { userToken, menuItem } = useSelector(state => state.sharedState)\n\n let userRoles = [];\n\n useEffect(() => {\n\n if (menuItem.items.length === 0) {\n dispatch(loadMenuItems(menus));\n }\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n if (Array.isArray(userToken.role)) {\n userRoles = userToken.role.map(value => value.toLowerCase());\n }\n else {\n userRoles.push(userToken.role.toLowerCase());\n }\n \n const navItems = menuItem.items.map((item) => {\n switch (item.type) {\n case 'group':\n\n if (userRoles.filter(x => item.roles.includes(x)).length > 0)\n return ;\n else\n return null;\n\n case 'link':\n if (userRoles.filter(x => item.roles.includes(x)).length > 0)\n return (\n <>\n \n \n \n )\n else\n return null;\n\n default:\n return (\n \n Menu Items Error\n \n );\n }\n });\n\n return
{navItems}
;\n};\n\nexport default MenuList;\n","import PropTypes from 'prop-types';\nimport { useLocation, matchRoutes } from \"react-router-dom\";\n\n// material-ui\nimport { useTheme } from '@mui/material/styles';\nimport { Box, Drawer, useMediaQuery } from '@mui/material';\n\n// third-party\nimport PerfectScrollbar from 'react-perfect-scrollbar';\nimport { BrowserView, MobileView } from 'react-device-detect';\n\n// project imports\nimport MenuList from './MenuList';\nimport LogoSection from '../LogoSection';\nimport { drawerWidth } from 'store/constant';\nimport * as Constants from \"utils/constants\";\n\n// ==============================|| SIDEBAR DRAWER ||============================== //\n\nconst Sidebar = ({ drawerOpen, drawerToggle, window }) => {\n\n const theme = useTheme();\n const matchUpMd = useMediaQuery(theme.breakpoints.up('md'));\n const location = useLocation();\n const foundationProfileRoute = [{ path: `/${Constants.FOUNDATION_V2_PATH}/:profileId` }];\n const match = matchRoutes(foundationProfileRoute, location);\n\n const drawer = (\n <>\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n\n const container = window !== undefined ? () => window.document.body : undefined;\n\n return (\n \n \n {drawer}\n \n \n );\n};\n\nSidebar.propTypes = {\n drawerOpen: PropTypes.bool,\n drawerToggle: PropTypes.func,\n window: PropTypes.object\n};\n\nexport default Sidebar;\n","import PropTypes from 'prop-types';\nimport { useState, useEffect } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\n\n// material-ui\nimport { useTheme } from '@mui/material/styles';\nimport {\n Avatar,\n ButtonBase,\n Drawer,\n Fab,\n FormControl,\n FormControlLabel,\n FormLabel,\n Grid,\n IconButton,\n Radio,\n RadioGroup,\n Slider,\n Stack,\n Switch,\n TextField,\n Tooltip,\n Typography,\n ListItemText,\n InputLabel,\n Select,\n MenuItem\n} from '@mui/material';\nimport { IconChecks, IconSettings } from '@tabler/icons';\n\n// third-party\nimport PerfectScrollbar from 'react-perfect-scrollbar';\n\n// project imports\nimport SubCard from 'ui-component/cards/SubCard';\nimport AnimateButton from 'ui-component/extended/AnimateButton';\nimport { MENU_TYPE, SET_FONT_FAMILY } from 'store/actions';\nimport { gridSpacing } from 'store/constant';\nimport Flags from 'country-flag-icons/react/1x1'\nimport i18n from \"i18next\";\nimport Cookies from 'universal-cookie';\n\n// color import\n/*import colors from 'assets/scss/_themes-vars.module.scss';\nimport theme1 from 'assets/scss/_theme1.module.scss';\nimport theme2 from 'assets/scss/_theme2.module.scss';\nimport theme3 from 'assets/scss/_theme3.module.scss';\nimport theme4 from 'assets/scss/_theme4.module.scss';\nimport theme5 from 'assets/scss/_theme5.module.scss';\nimport theme6 from 'assets/scss/_theme6.module.scss';\nimport theme7 from 'assets/scss/_theme7.module.scss';\nimport theme8 from 'assets/scss/_theme8.module.scss';*/\n\n// concat 'px'\nfunction valueText(value) {\n return `${value}px`;\n}\n\nconst PresetColor = ({ color, presetColor, setPresetColor }) => (\n \n setPresetColor(color.id)}>\n \n {presetColor === color.id && }\n \n \n \n);\n\nPresetColor.propTypes = {\n color: PropTypes.shape({\n id: PropTypes.string,\n primary: PropTypes.string,\n secondary: PropTypes.string\n }),\n presetColor: PropTypes.string,\n setPresetColor: PropTypes.func\n};\n\n// ==============================|| LIVE CUSTOMIZATION ||============================== //\n\nconst Customization = () => {\n const [currentLang, setCurrentLang] = useState(localStorage.getItem('i18nextLng'));\n const theme = useTheme();\n const dispatch = useDispatch();\n const customization = useSelector((state) => state.customization);\n\n const setCookieVal = (key, value) => {\n const cookies = new Cookies();\n cookies.set(key, value, { maxAge: 1000000, path: '/', sameSite: true });\n }\n const mapFontFamily = new Map([\n [`'Inter', sans-serif'`, 'Inter'],\n [`'Poppins', sans-serif`, 'Poppins'],\n [`'Roboto', sans-serif`, 'Roboto'],\n ]); \n \n // drawer on/off\n const [open, setOpen] = useState(false);\n const handleToggle = () => {\n setOpen(!open);\n };\n\n // state - layout type\n const [navType, setNavType] = useState(customization.navType);\n\n const handleNavType = (value) => {\n setCookieVal('MENU_TYPE', value);\n setNavType(value);\n }\n\n \n useEffect(() => {\n const cookies = new Cookies();\n if(cookies.get('MENU_TYPE') !== undefined)\n setNavType(cookies.get('MENU_TYPE')) \n\n dispatch({ type: MENU_TYPE, navType });\n }, [dispatch, navType]);\n \n if (customization.rtlLayout) {\n document?.querySelector('html')?.setAttribute('dir', 'rtl');\n } else {\n document?.querySelector('html')?.removeAttribute('dir');\n }\n\n let customizationFontFamily = customization.fontFamily;\n const cookies = new Cookies();\n let fontFamilyChange = cookies.get('SET_FONT_FAMILY') !== undefined ? cookies.get('SET_FONT_FAMILY') : customizationFontFamily;\n \n let initialFont = mapFontFamily.get(fontFamilyChange);\n\n // state - font family\n const [fontFamily, setFontFamily] = useState(initialFont);\n\n const handleFontFamily = (value) => {\n const key = getKeyByValue(mapFontFamily, value);\n setCookieVal('SET_FONT_FAMILY', key);\n setFontFamily(value);\n }\n\n // Function to get the key by value\n const getKeyByValue = (map, value) => {\n for (let [key, val] of map.entries()) {\n if (val === value) {\n return key;\n }\n }\n return null; // Return null if the value is not found\n };\n\n useEffect(() => {\n let newFont;\n \n switch (fontFamily) {\n case 'Inter':\n newFont = `'Inter', sans-serif`;\n break;\n case 'Poppins':\n newFont = `'Poppins', sans-serif`;\n break;\n case 'Roboto':\n default:\n newFont = `'Roboto', sans-serif`;\n break;\n }\n\n dispatch({ type: SET_FONT_FAMILY, fontFamily: newFont });\n }, [dispatch, fontFamily]);\n\n\tconst changeLanguage = (event) => {\n const lng = event.target.value;\n setCurrentLang(lng)\n i18n.changeLanguage(lng);\n\n setCookieVal('SET_LANGUAGE', lng);\n }\n\n useEffect(() => {\n const cookies = new Cookies();\n if(cookies.get('SET_LANGUAGE') !== undefined){\n setCurrentLang(cookies.get('SET_LANGUAGE')) \n i18n.changeLanguage(cookies.get('SET_LANGUAGE'));\n }\n \n }, [dispatch, currentLang]);\n\n return (\n <>\n {/* toggle button */}\n \n \n \n \n \n \n \n \n\n \n \n \n \n {/* layout type */}\n \n \n Mode\n handleNavType(e.target.value)}\n name=\"row-radio-buttons-group\"\n >\n }\n label=\"Light\"\n sx={{\n '& .MuiSvgIcon-root': { fontSize: 28 },\n '& .MuiFormControlLabel-label': { color: theme.palette.grey[900] }\n }}\n />\n }\n label=\"Dark\"\n sx={{\n '& .MuiSvgIcon-root': { fontSize: 28 },\n '& .MuiFormControlLabel-label': { color: theme.palette.grey[900] }\n }}\n />\n \n \n \n \n \n {/* font family */}\n \n \n handleFontFamily(e.target.value)}\n name=\"row-radio-buttons-group\"\n >\n }\n label=\"Roboto\"\n sx={{\n '& .MuiSvgIcon-root': { fontSize: 28 },\n '& .MuiFormControlLabel-label': { color: theme.palette.grey[900] }\n }}\n />\n }\n label=\"Poppins\"\n sx={{\n '& .MuiSvgIcon-root': { fontSize: 28 },\n '& .MuiFormControlLabel-label': { color: theme.palette.grey[900] }\n }}\n />\n }\n label=\"Inter\"\n sx={{\n '& .MuiSvgIcon-root': { fontSize: 28 },\n '& .MuiFormControlLabel-label': { color: theme.palette.grey[900] }\n }}\n />\n \n \n \n \n \n {/* Language switcher */}\n \n \n \n Select\n \n \n \n \n \n \n \n \n \n English\n \n \n \n\n \n \n \n \n \n \n \n \n English\n \n \n \n\n \n \n \n \n \n \n \n \n Spanish\n \n \n \n\n \n \n \n \n \n \n \n \n French\n \n \n \n\n \n \n\n \n \n \n \n \n \n \n );\n};\n\nexport default Customization;\n","import { useCallback, useEffect } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { Outlet } from \"react-router-dom\";\n\n// material-ui\nimport { styled, useTheme } from \"@mui/material/styles\";\nimport {\n AppBar,\n Box,\n CssBaseline,\n Toolbar,\n useMediaQuery,\n Alert,\n Snackbar,\n Grow\n} from \"@mui/material\";\n\n// project imports\nimport Breadcrumbs from \"ui-component/extended/Breadcrumbs\";\nimport Header from \"./Header\";\nimport Sidebar from \"./Sidebar\";\nimport Customization from \"../Customization\";\nimport navigation from \"menu-items\";\nimport { drawerWidth } from \"store/constant\";\nimport { SET_MENU } from \"store/actions\";\n\nimport SweetAlert from \"react-bootstrap-sweetalert\";\nimport { closeToaster, closeMessage, showMessage, setUserToken, showSessionTimeout, showErrorToaster } from \"store/Shared.Slice\";\n\n// assets\nimport { IconChevronRight } from \"@tabler/icons\";\nimport { useNavigate } from \"react-router-dom\";\nimport jwt_decode from \"jwt-decode\";\nimport { useTranslation } from \"react-i18next\";\nimport { useRestoreScrollYPosition } from \"hooks/useRestoreScrollYPosition\";\n\n// styles\nconst Main = styled(\"main\", { shouldForwardProp: (prop) => prop !== \"open\" })(\n ({ theme, open }) => ({\n ...theme.typography.mainContent,\n ...(!open && {\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0,\n transition: theme.transitions.create(\"margin\", {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.leavingScreen,\n }),\n [theme.breakpoints.up(\"md\")]: {\n marginLeft: -(drawerWidth - 20),\n width: `calc(100% - ${drawerWidth}px)`,\n },\n [theme.breakpoints.down(\"md\")]: {\n marginLeft: \"20px\",\n width: `calc(100% - ${drawerWidth}px)`,\n padding: \"16px\",\n },\n [theme.breakpoints.down(\"sm\")]: {\n marginLeft: \"10px\",\n width: `calc(100% - ${drawerWidth}px)`,\n padding: \"16px\",\n marginRight: \"10px\",\n },\n }),\n ...(open && {\n transition: theme.transitions.create(\"margin\", {\n easing: theme.transitions.easing.easeOut,\n duration: theme.transitions.duration.enteringScreen,\n }),\n marginLeft: 0,\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0,\n width: `calc(100% - ${drawerWidth}px)`,\n [theme.breakpoints.down(\"md\")]: {\n marginLeft: \"20px\",\n },\n [theme.breakpoints.down(\"sm\")]: {\n marginLeft: \"10px\",\n },\n }),\n })\n);\n\n// ==============================|| MAIN LAYOUT ||============================== //\n\nconst MainLayout = () => {\n const { t } = useTranslation();\n const theme = useTheme();\n const matchDownMd = useMediaQuery(theme.breakpoints.down(\"lg\"));\n\n // Handle left drawer\n const leftDrawerOpened = useSelector((state) => state.customization.opened);\n const { message, toaster } = useSelector((state) => state.sharedState);\n\n const dispatch = useDispatch();\n const navigate = useNavigate();\n\n useRestoreScrollYPosition();\n\n const handleLeftDrawerToggle = () => {\n dispatch({ type: SET_MENU, opened: !leftDrawerOpened });\n };\n\n const handleToken = useCallback(() => {\n const token = localStorage.getItem('token');\n\n try {\n if (token == null) {\n navigate('/');\n }\n const userToken = jwt_decode(token);\n dispatch(setUserToken(userToken));\n }\n catch (err) {\n console.log(err);\n dispatch(showSessionTimeout());\n navigate('/');\n }\n\n }, [dispatch, navigate]);\n\n useEffect(() => {\n dispatch({ type: SET_MENU, opened: !matchDownMd });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [matchDownMd]);\n\n useEffect(handleToken, [handleToken]);\n\n return (\n \n \n {/* header */}\n \n \n
\n \n \n\n {/* Toaster utility */}\n {toaster.isOpen &&\n dispatch(closeToaster())}\n anchorOrigin={{ vertical: 'bottom', horizontal: 'center' }}\n {...toaster.withTransition && { TransitionComponent: (props) => } }\n disableWindowBlurListener={true}\n >\n dispatch(closeToaster())} severity={toaster.severity} sx={{ width: '100%' }} variant=\"filled\">\n {toaster.format !== '' ? t(toaster.message, toaster.format) : t(toaster.message)}\n \n \n }\n\n {/* Message utility */}\n {message.isOpen && (\n dispatch(closeMessage())}\n onCancel={() => dispatch(closeMessage())}\n >\n {t(message.text)}\n \n )}\n\n {/* drawer */}\n \n\n {/* main content */}\n
\n {/* breadcrumb */}\n \n \n
\n \n \n );\n};\n\nexport default MainLayout;\n","// material-ui\nimport LinearProgress from '@mui/material/LinearProgress';\nimport { styled } from '@mui/material/styles';\n\n// styles\nconst LoaderWrapper = styled('div')({\n position: 'fixed',\n top: 0,\n left: 0,\n zIndex: 1301,\n width: '100%'\n});\n\n// ==============================|| LOADER ||============================== //\nconst Loader = () => (\n \n \n \n);\n\nexport default Loader;\n","import { Suspense } from 'react';\n\n// project imports\nimport Loader from './Loader';\n\n// ==============================|| LOADABLE - LAZY LOADING ||============================== //\n\nconst Loadable = (Component) => (props) => (\n }>\n \n \n);\n\nexport default Loadable;\n","import { useDispatch, useSelector } from \"react-redux\";\nimport {\n Box,\n Grid,\n Skeleton,\n Typography,\n useMediaQuery,\n useTheme,\n } from \"@mui/material\";\n\nimport LoadingButton from '@mui/lab/LoadingButton';\nimport { useGetOrganizationProfileMutation, useUpdateOrganizationProfileMutation } from \"Services/OrganizationProfileService\";\nimport { useGetCountryListQuery } from \"Services/CountryService\";\nimport { handleChange, handleModelErrors, handleGet, handleChangeCountry, handleChangeProvinceOrState, handleFillCountryAndState } from \"./OrganizationProfileInfo.Slice\";\nimport { showSuccessToaster, showErrorToaster } from \"store/Shared.Slice\";\nimport { useTranslation } from \"react-i18next\";\nimport { useEffect } from \"react\";\nimport FormControlWrapper from \"components/FormControlWrapper\";\nimport AutocompleteWrapper from \"components/AutocompleteWrapper\";\nimport SelectWrapper from \"components/SelectWrapper\";\nimport MaskedInputWrapper from \"components/MaskedInputWapper\";\nimport { usePrompt } from \"react-router-dom\";\n\nconst OrganizationProfileInfoPage = () => {\n\n const {\n countryList,\n companyName,\n phoneNumber,\n businessEin,\n addressLine,\n addressLine2,\n city,\n provinceOrState,\n country,\n county,\n postalCode,\n selectedCountry,\n selectedProvinceOrState,\n currentProfileInfo\n } = useSelector((state) => state.organizationProfileState);\n\n const theme = useTheme();\n const dispatch = useDispatch();\n const matchDownSM = useMediaQuery(theme.breakpoints.down(\"md\"));\n const { t } = useTranslation();\n const [getOrganizationProfile, { data, isLoading: isLoadingOrganizationProfile }] = useGetOrganizationProfileMutation();\n const { isLoading: isLoadingCountry } = useGetCountryListQuery();\n const [updateOrganizationProfile, { isLoading: isUpdating }] = useUpdateOrganizationProfileMutation();\n\n usePrompt(\n \"You have unsaved changes. Are you sure to discard all changes made?\",\n companyName.value !== currentProfileInfo.companyName\n || phoneNumber.value !== currentProfileInfo.phoneNumber\n || businessEin.value !== (currentProfileInfo.businessEin ?? \"\")\n || addressLine.value !== currentProfileInfo.addressLine\n || addressLine2.value !== currentProfileInfo.addressLine2\n || city.value !== currentProfileInfo.city\n || provinceOrState.value !== currentProfileInfo.provinceOrState\n || country.value !== currentProfileInfo.country\n || postalCode.value !== currentProfileInfo.postalCode\n );\n\n const handleUpdateProfile = async() => {\n\n try {\n const model = {\n companyName: companyName.value,\n phoneNumber: phoneNumber.value,\n businessEin: businessEin.value,\n addressLine: addressLine.value,\n addressLine2: addressLine2.value,\n city: city.value,\n provinceOrState: provinceOrState.value,\n county: county.value,\n postalCode: postalCode.value,\n };\n\n const response = await updateOrganizationProfile(model).unwrap();\n dispatch(showSuccessToaster(response.message));\n }\n catch(error) {\n // Model Errors\n if (error.data?.errors != null) {\n dispatch(showErrorToaster(t(\"errors.model_error\")));\n dispatch(handleModelErrors(error.data?.errors));\n }\n\n // Bad Request\n if (error.data?.message != null) {\n dispatch(showErrorToaster(error.data?.message));\n }\n }\n }\n\n\n const handleGetOrganizationProfile = async() => {\n const response = await getOrganizationProfile().unwrap();\n dispatch(handleGet(response));\n };\n\n useEffect(() => {\n handleGetOrganizationProfile();\n // eslint-disable-next-line react-hooks/exhaustive-deps \n }, []);\n\n useEffect(() => {\n if (!isLoadingCountry && !isLoadingOrganizationProfile) {\n if (data) {\n dispatch(handleFillCountryAndState(data));\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps \n }, [isLoadingOrganizationProfile, isLoadingCountry]);\n \n return (\n <>\n {isLoadingOrganizationProfile \n ? \n \n \n \n \n \n :\n
\n \n \n {t('labels.company_information')}\n \n\n \n dispatch(handleChange({ field: \"companyName\", value: element.target.value }))}\n required\n />\n \n\n \n dispatch(handleChange({ field: \"businessEin\", value: element.target.value }))}\n error={businessEin.error}\n theme={theme}\n placeholder={`(${country.value === \"Canada\" ? \"CA\" : \"US\"}) e.g., ${country.value === \"Canada\" ? \"123456789RR0001\" : \"12-3456789\"}`}\n disabled\n />\n \n\n \n dispatch(handleChange({ field: \"phoneNumber\", value: element.target.value }))}\n maskType=\"phone\" \n error={phoneNumber.error}\n theme={theme}\n required\n />\n \n\n \n dispatch(handleChange({ field: \"addressLine\", value: element.target.value }))}\n required\n />\n \n\n \n dispatch(handleChange({ field: \"addressLine2\", value: element.target.value }))}\n />\n \n\n \n ({\n key: country.id,\n value: country.description,\n text: country.description,\n extraInfo: country.code \n }))}\n />\n \n \n\n \n dispatch(handleChangeProvinceOrState(newValue))}\n error={provinceOrState.error} \n theme={theme}\n options={selectedCountry.provinceOrStateList.map(state => ({\n id: state.id,\n value: state.description,\n label: state.description \n }))}\n />\n \n\n \n dispatch(handleChange({ field: \"city\", value: element.target.value }))}\n required\n />\n \n\n \n dispatch(handleChange({ field: \"postalCode\", value: element.target.value }))}\n required\n />\n \n\n \n\n \n \n {t('buttons.update_profile')}\n \n \n
\n }\n \n )\n\n};\n\n\nexport default OrganizationProfileInfoPage;","import { useDispatch, useSelector } from \"react-redux\";\nimport {\n Table,\n TableBody,\n TableCell,\n TableContainer,\n TableHead,\n TableRow,\n Paper,\n Skeleton,\n IconButton,\n} from \"@mui/material\";\n\nimport Pagination from '@mui/material/Pagination';\nimport { DeleteForever } from \"@mui/icons-material\"\nimport { useTranslation } from \"react-i18next\";\nimport { showErrorToaster, showSuccessToaster } from \"store/Shared.Slice\";\nimport { useGetAdditionalEmailPagedListMutation, useDeleteAdditionalEmailMutation } from \"Services/OrganizationAdditionalEmailService\";\n\nconst OrganizationAdditionalEmailList = () => {\n\n const { \n loadingList,\n additionalEmailListPagedData: {\n pageNumber,\n pageSize,\n pageCount,\n items\n }\n } = useSelector((state) => state.organizationAdditionalEmailState);\n\n const { t } = useTranslation();\n const dispatch = useDispatch();\n const [getAdditionalEmailList] = useGetAdditionalEmailPagedListMutation();\n const [deleteAdditionalEmail, { isLoading: isDeleting }] = useDeleteAdditionalEmailMutation();\n\n const handleChangePage = async (event, newPage) => {\n\n try {\n await getAdditionalEmailList({pageNumber: newPage, pageSize});\n }\n catch(error) {\n // Bad Request\n if (error.data?.message != null) {\n dispatch(showErrorToaster(error.data?.message));\n }\n }\n\n };\n\n const handleDelete = async(row) => {\n\n try {\n const response = await deleteAdditionalEmail(row.id).unwrap();\n await getAdditionalEmailList({pageNumber: 1, pageSize});\n dispatch(showSuccessToaster(response.message));\n }\n catch(error) {\n // Bad Request\n if (error.data?.message != null) {\n dispatch(showErrorToaster(error.data?.message));\n }\n }\n\n };\n\n return (\n <>\n \n \n \n \n E-mail\n {t('labels.created_at')}\n {t('labels.actions')}\n \n \n \n {loadingList && \n \n \n \n \n \n }\n {items.map((row) => (\n \n {row.emailAddress}\n {row.createdAt}\n \n handleDelete(row)} disabled={isDeleting}>\n \n \n \n \n ))}\n \n
\n
\n\n
\n \n
\n\n \n \n );\n};\n\nexport default OrganizationAdditionalEmailList;\n","import { useDispatch, useSelector } from \"react-redux\";\nimport { Close } from \"@mui/icons-material\"\nimport LoadingButton from \"@mui/lab/LoadingButton\";\nimport { \n Grid, \n Dialog, \n useTheme,\n IconButton,\n DialogActions,\n DialogTitle,\n DialogContent\n} from \"@mui/material\";\nimport { showErrorToaster, showSuccessToaster } from \"store/Shared.Slice\"\nimport { useTranslation } from \"react-i18next\";\nimport { useInsertAdditionalEmailMutation, useGetAdditionalEmailPagedListMutation } from \"Services/OrganizationAdditionalEmailService\";\nimport { \n handleChange, \n handleModelErrors,\n closeDialog \n} from \"./OrganizationAdditionalEmail.Slice\";\nimport FormControlWrapper from \"components/FormControlWrapper\";\n\nconst OrganizationAdditionalEmailPopup = () => {\n\n const { \n isDialogOpen,\n newEmailAddress,\n additionalEmailListPagedData: {\n pageNumber,\n pageSize\n }\n } = useSelector((state) => state.organizationAdditionalEmailState);\n\n const dispatch = useDispatch();\n const theme = useTheme();\n const { t } = useTranslation();\n const [insertAdditionalEmail, { isLoading: isInserting }] = useInsertAdditionalEmailMutation();\n const [getAdditionalEmailList] = useGetAdditionalEmailPagedListMutation();\n \n const handleInsert = async () => {\n try {\n const response = await insertAdditionalEmail(newEmailAddress.value).unwrap();\n await getAdditionalEmailList({pageNumber, pageSize});\n\n dispatch(closeDialog());\n dispatch(showSuccessToaster(response.message));\n }\n catch(error) {\n\n // Model Errors\n if (error.data?.errors != null) {\n dispatch(showErrorToaster(t(\"errors.model_error\")));\n dispatch(handleModelErrors(error.data?.errors));\n }\n\n // Bad Request\n if (error.data?.message != null) {\n dispatch(showErrorToaster(error.data?.message));\n }\n }\n }\n\n return (\n dispatch(closeDialog())} fullWidth maxWidth=\"xs\">\n {`${t('labels.add_new_additional_email')}`}\n dispatch(closeDialog())}\n sx={{\n position: 'absolute',\n right: 8,\n top: 15,\n color: (theme) => theme.palette.grey[500],\n }}\n >\n \n \n \n \n \n \n dispatch(handleChange({ field: \"newEmailAddress\", value: element.target.value }))}\n required\n />\n \n \n \n \n dispatch(closeDialog())}\n >\n Close\n \n\n \n {t('buttons.add_email')}\n \n \n \n )\n\n}\n\nexport default OrganizationAdditionalEmailPopup;","import { useEffect } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport {\n Grid,\n useMediaQuery,\n useTheme,\n } from \"@mui/material\";\n\nimport { MailOutline } from \"@mui/icons-material\"\nimport LoadingButton from '@mui/lab/LoadingButton';\n\nimport { \n useGetAdditionalEmailPagedListMutation,\n} from \"Services/OrganizationAdditionalEmailService\";\n\nimport { \n openDialog\n} from \"./OrganizationAdditionalEmail.Slice\";\nimport { showErrorToaster } from \"store/Shared.Slice\";\nimport { useTranslation } from \"react-i18next\";\nimport SubCard from \"ui-component/cards/SubCard\";\nimport OrganizationAdditionalEmailList from \"./OrganizationAdditionalEmail.List\";\nimport OrganizationAdditionalEmailPopup from \"./OrganizationAdditionalEmail.Popup\";\nimport { usePrompt } from \"react-router-dom\";\n\nconst OrganizationAdditionalEmailPage = () => {\n\n const {\n emailAddress,\n previousEmail,\n additionalEmailListPagedData: {\n pageNumber,\n pageSize,\n totalCount\n }\n } = useSelector((state) => state.organizationAdditionalEmailState);\n\n const theme = useTheme();\n const dispatch = useDispatch();\n const matchDownSM = useMediaQuery(theme.breakpoints.down(\"md\"));\n const { t } = useTranslation();\n\n const [getAdditionalEmailList] = useGetAdditionalEmailPagedListMutation();\n\n usePrompt(\n \"You have unsaved changes. Are you sure to discard all changes made?\",\n previousEmail !== emailAddress.value\n );\n\n const loadListInitial = async() => {\n try {\n await getAdditionalEmailList({pageNumber, pageSize});\n }\n catch(error) {\n // Bad Request\n if (error.data?.message != null) {\n dispatch(showErrorToaster(error.data?.message));\n }\n }\n }\n\n useEffect(() => {\n loadListInitial();\n // eslint-disable-next-line react-hooks/exhaustive-deps \n }, []);\n\n return (\n <>\n \n\n \n \n \n \n {`${t('labels.emails_created')}: ${totalCount}`}\n \n \n }\n onClick={() => dispatch(openDialog())}\n >\n {t('buttons.add_email')}\n \n \n \n }>\n \n \n \n \n \n )\n\n};\n\n\nexport default OrganizationAdditionalEmailPage;","export default \"data:image/png;base64,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\"","import 'react-image-crop/dist/ReactCrop.css';\n\nimport { useDispatch } from 'react-redux'\nimport { useState, useEffect, useRef } from 'react';\n\n// material-ui\nimport {\n Grid,\n Typography,\n useMediaQuery,\n useTheme,\n RadioGroup,\n FormControlLabel,\n Radio,\n Button,\n Alert,\n } from \"@mui/material\";\n\nimport LoadingButton from '@mui/lab/LoadingButton';\nimport { Close, Upload } from \"@mui/icons-material\"\n\n// project imports\nimport emptyImg from 'assets/images/empty_01.png';\nimport { useTranslation } from \"react-i18next\";\nimport { showSuccessToaster, showErrorToaster } from \"store/Shared.Slice\";\nimport SubCard from \"ui-component/cards/SubCard\";\nimport imgHeaderFooter from \"assets/images/header-footer.png\"\nimport imgHeader from \"assets/images/header.png\"\nimport { useSaveLetterHeadMutation, useGetLetterHeadMutation } from \"Services/LetterHeadService\";\nimport DialogConfirmWrapper from 'components/DialogConfirmWrapper';\nimport { usePrompt } from 'react-router-dom';\n\n\nconst SharedLetterHeadPage = ({sharedLetterHeadType}) => {\n\n const { t } = useTranslation();\n const dispatch = useDispatch();\n const theme = useTheme();\n const matchDownSM = useMediaQuery(theme.breakpoints.down(\"md\"));\n\n const [letterType, setLetterType] = useState('HeaderAndFooter');\n\n const footerRef = useRef();\n const headerRef = useRef();\n\n const [saveLetterHead, { isLoading: isSaving }] = useSaveLetterHeadMutation();\n const [getLetterHead, { isLoading }] = useGetLetterHeadMutation()\n\n const [headerImage, setHeaderImage] = useState({\n previewBlob: null,\n previewUrl: '',\n resizeNotification: false,\n openNotification: false,\n headerImageId: ''\n });\n \n const [footerImage, setFooterImage] = useState({\n previewBlob: null,\n previewUrl: '',\n resizeNotification: false,\n openNotification: false,\n footerImageId: ''\n });\n\n const [openDialogConfirm, setOpenDialogConfirm] = useState(false);\n\n const [ previousData, setPreviousData ] = useState({\n letterType: 'HeaderAndFooter'\n });\n\n usePrompt(\n \"You have unsaved changes. Are you sure to discard all changes made?\",\n headerImage.previewBlob !== null\n || footerImage.previewBlob !== null\n || letterType !== previousData.letterType\n );\n\n const handleUploadFile = (type, element) => {\n const file = element.target.files[0];\n\n if (file != null) {\n\n if (type === 'header') {\n setHeaderImage({\n ...headerImage,\n previewBlob: file,\n previewUrl: URL.createObjectURL(file),\n });\n\n headerRef.current.value = '';\n }\n else {\n setFooterImage({\n ...footerImage,\n previewBlob: file,\n previewUrl: URL.createObjectURL(file),\n });\n\n footerRef.current.value = '';\n }\n }\n }\n\n const handleChangeLetterType = (element) => {\n setLetterType(element.target.value);\n }\n\n const handleSaveChanges = () => {\n\n const openConfirm = (\n headerImage.resizeNotification === true ||\n footerImage.resizeNotification === true\n );\n\n if (openConfirm) {\n setOpenDialogConfirm(true);\n }\n else {\n handleConfirmSave(false);\n }\n }\n\n const handleConfirmSave = async (autoResize) => {\n\n try {\n const model = new FormData();\n\n model.append(\"headerImage\", headerImage.previewBlob);\n model.append(\"footerImage\", footerImage.previewBlob);\n model.append(\"headerImageId\", headerImage.headerImageId);\n model.append(\"footerImageId\", footerImage.footerImageId);\n model.append(\"letterType\", letterType);\n model.append(\"autoResize\", autoResize);\n\n const response = await saveLetterHead({sharedLetterHeadType, model}).unwrap();\n\n dispatch(showSuccessToaster(response.message));\n handleGetLetterhead(sharedLetterHeadType);\n setOpenDialogConfirm(false);\n }\n catch(error) {\n // Model Errors\n if (error.data?.errors != null) {\n dispatch(showErrorToaster(Object.values(error.data?.errors)[0][0]));\n }\n\n // Bad Request\n if (error.data?.message != null) {\n dispatch(showErrorToaster(error.data?.message));\n }\n }\n\n }\n\n const handleLoadImage = (event) => {\n\n const hasNotification = (\n event.target.naturalWidth > event.target.width || \n event.target.naturalHeight > event.target.height\n );\n\n if (event.target.id === 'headerImage') {\n\n if (headerImage.previewBlob !== null) {\n setHeaderImage({\n ...headerImage,\n resizeNotification: hasNotification,\n openNotification: hasNotification\n });\n }\n }\n\n if (event.target.id === 'footerImage') {\n\n if (footerImage.previewBlob !== null) {\n setFooterImage({\n ...footerImage,\n resizeNotification: hasNotification,\n openNotification: hasNotification\n });\n }\n }\n }\n\n const handleGetLetterhead = async() => {\n\n const response = await getLetterHead(sharedLetterHeadType).unwrap();\n\n setHeaderImage({\n ...headerImage,\n previewBlob: null,\n previewUrl: response.headerImageUrl,\n openNotification: false,\n headerImageId: response.headerImageId\n });\n\n setFooterImage({\n ...footerImage,\n previewBlob: null,\n previewUrl: response.footerImageUrl,\n openNotification: false,\n footerImageId: response.footerImageId\n });\n\n setLetterType(response.letterType);\n\n setPreviousData({\n ...previousData,\n letterType: response.letterType\n });\n }\n\n useEffect(() => {\n handleGetLetterhead();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n return(\n <>\n\n setOpenDialogConfirm(false)}\n titleMessage=\"Are you sure?\"\n popupMessage={\n <>\n {headerImage.resizeNotification === true && footerImage.resizeNotification === true && (\n Both images (header and footer) are non-standard images. Automatic resize is recommended\n )}\n\n {headerImage.resizeNotification === true && footerImage.resizeNotification === false && (\n The header image is a non-standard image. Automatic resize is recommended\n )}\n\n {headerImage.resizeNotification === false && footerImage.resizeNotification === true && (\n The footer image is a non-standard image. Automatic resize is recommended\n )}\n \n }\n confirmLabel=\"Confirm Resize\"\n isLoading={isSaving}\n onConfirm={() => handleConfirmSave(true)}\n additionalButtonLabel=\"Confirm original\"\n onAdditionalButtonClick={() => handleConfirmSave(false)}\n size=\"sm\"\n />\n\n {/* setOpenDialog(false)}\n image={uploadType === 'header' ? headerImage.image : footerImage.image}\n onConfirm={handlePopupConfirm}\n />*/}\n\n \n \n {t('labels.add_digital_letterhead')}\n \n\n \n \n {t('messages.first_letterhead_message')}\n \n \n \n \n {t('messages.second_letterhead_message')}\n \n \n \n \n {t('messages.third_letterhead_message')}\n \n \n\n \n \n \n \n \n \n \n \n }\n onClick={() => {\n setHeaderImage({\n ...headerImage,\n previewBlob: null,\n previewUrl: '',\n resizeNotification: false,\n openNotification: false,\n headerImageId: ''\n })\n }}\n >\n Clear Image\n \n \n \n \n } >\n \n\n {headerImage.openNotification && (\n \n setHeaderImage({...headerImage, openNotification: false })} variant='filled'>\n Non-standard image. Recommended: 700 x 200\n \n \n )}\n\n \n \"\" { setHeaderImage({\n ...headerImage,\n previewBlob: null,\n previewUrl: emptyImg\n })}}\n onLoad={handleLoadImage}\n />\n \n \n\n \n \n\n \n\n \n\n \n \n\n \n\n \n \n } label={`${t('labels.header_only')}`} />\n \n \n \"\"\n \n \n\n \n \n } label={`${t('labels.header_and_footer')}`} />\n \n \n \"\"\n \n \n\n \n\n \n\n \n\n \n \n {t('buttons.save_changes')}\n \n \n\n \n\n \n );\n\n}\n\nexport default SharedLetterHeadPage;","export default \"data:image/png;base64,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\"","export default \"data:image/png;base64,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\"","import { useRef } from \"react\";\nimport { v4 as uuidv4 } from \"uuid\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport {\n Box,\n Grid,\n Skeleton,\n Typography,\n useMediaQuery,\n useTheme,\n } from \"@mui/material\";\n\nimport LoadingButton from '@mui/lab/LoadingButton';\nimport { useGetUserProfileQuery, useUpdateUserProfileMutation } from \"Services/UserProfileService\";\nimport { handleChange, handleModelErrors } from \"./ProfileInfo.Slice\";\nimport { showSuccessToaster, showErrorToaster } from \"store/Shared.Slice\";\nimport { useTranslation } from \"react-i18next\";\nimport FormControlWrapper from \"components/FormControlWrapper\";\nimport MaskedInputWrapper from \"components/MaskedInputWapper\";\nimport { usePrompt } from \"react-router-dom\";\n\n\nconst ProfileInfoPage = () => {\n\n const {\n email,\n userName,\n firstName,\n lastName,\n position,\n phoneNumber,\n userNameEmail,\n currentProfileInfo\n } = useSelector((state) => state.userProfileState);\n\n const sessionId = useRef(uuidv4());\n const theme = useTheme();\n const dispatch = useDispatch();\n const matchDownSM = useMediaQuery(theme.breakpoints.down(\"md\"));\n const { t } = useTranslation();\n const { isLoading: isLoadingUserProfile } = useGetUserProfileQuery(sessionId.current);\n const [updateUserProfile, { isLoading: isUpdating }] = useUpdateUserProfileMutation();\n\n usePrompt(\n \"You have unsaved changes. Are you sure to discard all changes made?\",\n userName.value !== currentProfileInfo.userName\n || firstName.value !== currentProfileInfo.firstName\n || lastName.value !== currentProfileInfo.lastName\n || (position.value ?? '') !== (currentProfileInfo.position ?? '')\n || phoneNumber.value !== currentProfileInfo.phoneNumber\n );\n\n const handleUpdateProfile = async() => {\n\n try {\n const model = {\n email: email.value,\n userName: userName.value,\n firstName: firstName.value,\n lastName: lastName.value,\n position: position.value,\n phoneNumber: phoneNumber.value\n };\n\n const response = await updateUserProfile(model).unwrap();\n dispatch(showSuccessToaster(response.message));\n }\n catch(error) {\n // Model Errors2\n if (error.data?.errors != null) {\n dispatch(showErrorToaster(t(\"errors.model_error\")));\n dispatch(handleModelErrors(error.data?.errors));\n }\n\n // Bad Request\n if (error.data?.message != null) {\n dispatch(showErrorToaster(error.data?.message));\n }\n }\n }\n\n return (\n <>\n {isLoadingUserProfile \n ? \n \n \n \n \n \n :\n
\n \n \n {t('labels.user_information')}\n \n \n dispatch(handleChange({ field: \"firstName\", value: element.target.value }))}\n required\n />\n \n\n \n dispatch(handleChange({ field: \"lastName\", value: element.target.value }))}\n required\n />\n \n\n \n dispatch(handleChange({ field: \"phoneNumber\", value: element.target.value }))}\n maskType=\"phone\" \n error={phoneNumber.error}\n theme={theme}\n required\n />\n \n \n\n \n \n dispatch(handleChange({ field: \"userName\", value: element.target.value }))}\n disabled\n />\n \n\n \n dispatch(handleChange({ field: \"position\", value: element.target.value }))}\n />\n \n \n\n \n \n {t('buttons.update_profile')}\n \n \n
\n }\n \n )\n\n};\n\n\nexport default ProfileInfoPage;","import { emptySplitApi } from \"./index\";\n\nexport const alertNotificationApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getNotifications: builder.mutation({\n query: () => ({\n url: `api/v1/auth-service/alert-notifications`,\n method: \"GET\",\n }),\n }),\n saveNotification: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/alert-notifications`,\n method: \"POST\",\n body: model,\n }),\n }),\n \n }),\n overrideExisting: false,\n});\n\nexport const {\n useGetNotificationsMutation,\n useSaveNotificationMutation \n} = alertNotificationApi;\n","import { useDispatch, useSelector } from \"react-redux\";\nimport {\n Box,\n FormControl,\n Grid,\n Skeleton,\n useMediaQuery,\n useTheme,\n FormLabel,\n FormGroup,\n FormControlLabel,\n Switch,\n } from \"@mui/material\";\n\nimport { \n useGetNotificationsMutation,\n useSaveNotificationMutation \n} from \"Services/AlertNotificationService\"; \n\nimport LoadingButton from '@mui/lab/LoadingButton';\nimport AnimateButton from \"ui-component/extended/AnimateButton\";\n\nimport { handleCheck, handleGet } from \"./AlertNotification.Slice\";\nimport { showErrorToaster, showSuccessToaster } from \"store/Shared.Slice\";\nimport { useEffect } from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nconst AlertNotificationPage = () => {\n\n const { t } = useTranslation();\n const theme = useTheme();\n const matchDownSM = useMediaQuery(theme.breakpoints.down(\"md\"));\n const [getNotifications, { isLoading: isLoadingList }] = useGetNotificationsMutation();\n const [saveNotifications, { isLoading: isSaving }] = useSaveNotificationMutation();\n\n const { notificationList } = useSelector((state) => state.alertNotificationState);\n const dispatch = useDispatch();\n\n const handleChange = (element, value) => {\n dispatch(handleCheck({\n ...value,\n enabled: element.target.checked\n }));\n };\n\n const handleSaveNotifications = async () => {\n\n try {\n const response = await saveNotifications(notificationList).unwrap();\n dispatch(showSuccessToaster(response.message));\n }\n catch(error) {\n // Bad Request\n if (error.data?.message != null) {\n dispatch(showErrorToaster(error.data?.message));\n }\n }\n\n };\n\n const handleGetNotifications = async() => {\n\n const response = await getNotifications().unwrap();\n dispatch(handleGet(response));\n\n };\n\n useEffect(() => {\n handleGetNotifications();\n // eslint-disable-next-line react-hooks/exhaustive-deps \n }, []);\n\n\n return(\n \n \n \n {t('labels.enable_disable_notifications')}\n \n {isLoadingList && }\n {notificationList.map((value, index) => \n handleChange(element, value)} name={value.name} />\n }\n label={value.description}\n />\n )}\n \n \n \n \n \n \n {t('buttons.save_changes')}\n \n \n \n \n );\n\n};\n\nexport default AlertNotificationPage;","import { emptySplitApi } from './index'\n\nexport const signatureApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getSignature: builder.mutation({\n query: () => ({\n url: `api/v1/auth-service/signature`,\n method: \"GET\",\n }),\n \n }),\n saveSignature: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/signature`,\n method: \"POST\",\n body: model,\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const { useGetSignatureMutation, useSaveSignatureMutation } = signatureApi;\n","import 'react-quill/dist/quill.snow.css';\n\nimport { useSelector, useDispatch } from 'react-redux';\nimport LoadingButton from '@mui/lab/LoadingButton';\nimport { Skeleton, Grid } from '@mui/material';\nimport ReactQuill, { Quill } from 'react-quill';\nimport { useGetSignatureMutation, useSaveSignatureMutation } from \"Services/SignatureService\";\nimport { handleChange, handleSaveSuccess, handleGet } from \"./Signature.Slice\";\nimport { showSuccessToaster, showErrorToaster } from \"store/Shared.Slice\";\nimport { useTranslation } from \"react-i18next\";\nimport { useEffect, useRef } from 'react';\nimport { usePrompt } from 'react-router-dom';\n\nimport ImageResize from 'quill-image-resize-module-react';\n//import ImageResize from 'quill-resize-module';\nwindow.Quill = Quill;\n\nQuill.register('modules/imageResize', ImageResize);\n\nconst SignaturePage = () => {\n\n const { document, currentSignature } = useSelector((state) => state.signatureState);\n const dispatch = useDispatch();\n const [getSignature, { isLoading }] = useGetSignatureMutation();\n const [saveSignature, { isLoading: isSaving }] = useSaveSignatureMutation();\n const { t } = useTranslation();\n\n const modules = {\n toolbar: [\n [{ 'header': [1, 2, false] }],\n ['bold', 'italic', 'underline','strike', 'blockquote'],\n [{'list': 'ordered'}, {'list': 'bullet'}, {'indent': '-1'}, {'indent': '+1'}],\n ['link', 'image'],\n ['clean']\n ],\n imageResize: {\n modules: ['Resize', 'DisplaySize'],\n },\n };\n \n const formats = [\n 'header',\n 'bold', 'italic', 'underline', 'strike', 'blockquote',\n 'list', 'bullet', 'indent',\n 'link', 'image'\n ];\n\n usePrompt(\n \"You have unsaved changes. Are you sure to discard all changes made?\",\n currentSignature !== document\n );\n \n \n const handleSaveChanges = async () => {\n\n try {\n const model = new FormData();\n model.append('document', document);\n\n const response = await saveSignature(model).unwrap();\n\n dispatch(handleSaveSuccess(response));\n dispatch(showSuccessToaster(response.message));\n }\n catch (error) {\n // Bad Request\n if (error.data?.message != null) {\n dispatch(showErrorToaster(error.data?.message));\n }\n }\n };\n\n const handleGetSignature = async() => {\n const response = await getSignature().unwrap();\n dispatch(handleGet(response.data));\n }\n\n useEffect(() => {\n handleGetSignature();\n // eslint-disable-next-line react-hooks/exhaustive-deps \n }, []);\n\n return(\n <>\n \n {t('buttons.save_changes')}\n \n\n {isLoading &&\n \n \n \n \n \n }\n\n dispatch(handleChange(value))}\n modules={modules}\n formats={formats}\n />\n \n )\n\n}\n\nexport default SignaturePage;","import { useState } from \"react\";\nimport {\n Box,\n Grid,\n Typography,\n useTheme,\n} from \"@mui/material\";\nimport { useTranslation } from \"react-i18next\";\nimport FormControlWrapper from \"components/FormControlWrapper\";\nimport LoadingButton from '@mui/lab/LoadingButton';\nimport { useUpdatePasswordMutation } from \"Services/AuthManagementService\";\nimport { showSuccessToaster, showErrorToaster } from \"store/Shared.Slice\";\nimport { useDispatch } from \"react-redux\";\nimport PasswordInputWrapper from \"components/PasswordInputWrapper\";\n\nconst ResetPassword = () => {\n const [updatePassword, {isLoading}] = useUpdatePasswordMutation();\n const { t } = useTranslation();\n const theme = useTheme();\n const dispatch = useDispatch();\n\n const [currentPassword, setCurrentPassword] = useState({\n value: \"\",\n error: \"\"\n });\n const [newPassword, setNewPassword] = useState({\n value: \"\",\n error: \"\"\n });\n const [confirmPassword, setConfirmPassword] = useState({\n value: \"\",\n error: \"\"\n });\n\n const isButtonDisabled = [currentPassword, newPassword, confirmPassword]\n .some(({value, error}) => value.length === 0 || error.length > 0)\n\n const handleCurrentPasswordChange = (e) => {\n const {value} = e.target;\n const npValue = newPassword.value;\n\n setCurrentPassword({...currentPassword, value, error: value.length === 0 ? t(\"fieldRequired\") : ''});\n\n setNewPassword((state) => ({...state, \n error: npValue.length > 0 && npValue === value \n ? t(\"pickupNewPassword\")\n : ''}));\n }\n\n const handleNewPasswordChange = (e) => {\n const {value} = e.target; \n const valueLen = value.length;\n const cpValue = confirmPassword.value;\n const minimumCharaters = 6;\n\n let error = '';\n if(valueLen === 0){\n error = t(\"fieldRequired\");\n }\n else if(valueLen < minimumCharaters){\n error = t(\"passwordMinCharacter\", {minimumCharaters});\n }\n else if(value === currentPassword.value){\n error = t(\"pickupNewPassword\");\n }\n\n setNewPassword({value, error}); \n setConfirmPassword((state) => ({...state, error: cpValue.length > 0 && value !== cpValue ? t(\"enterSameValueAgain\") : ''}));\n }\n\n const handleConfirmPasswordChange = (e) => {\n const {value} = e.target;\n let error = '';\n if(value.length === 0){\n error = t(\"fieldRequired\");\n }\n else if(value !== newPassword.value){\n error = t(\"enterSameValueAgain\")\n }\n\n setConfirmPassword({value, error});\n }\n\n const handlePasswordReset = async (e) => {\n if(isButtonDisabled) return;\n \n try {\n const model = {\n oldPassword: currentPassword.value,\n newPassword: newPassword.value,\n };\n\n const response = await updatePassword(model).unwrap();\n dispatch(showSuccessToaster(response.message));\n\n //Reset states\n [setCurrentPassword, setNewPassword, setConfirmPassword]\n .forEach(f => f({value: \"\", error: \"\"}));\n }\n catch(error) {\n // Model Errors2\n if (error.data?.errors != null) {\n const errorList = Object.values(error.data?.errors);\n\n if(errorList.length > 0)\n {\n errorList.forEach(errValue => {\n dispatch(showErrorToaster(errValue));\n })\n }\n else{\n dispatch(showErrorToaster(t(\"errors.model_error\")));\n }\n }\n\n // Bad Request\n if (error.data?.message != null) {\n dispatch(showErrorToaster(error.data?.message));\n }\n }\n }\n\n return (\n <>\n \n \n Reset your password\n \n \n handleCurrentPasswordChange(e)}\n required\n />\n \n \n \n handleNewPasswordChange(e)}\n required\n />\n \n \n handleConfirmPasswordChange(e)}\n required\n />\n \n \n \n \n \n {t('buttons.reset_password')}\n \n \n \n );\n};\n\nexport default ResetPassword;\n","// import { lazy } from 'react';\nimport lazyPage from 'utils/lazyPage';\n\n// project imports\nimport MainLayout from 'layout/MainLayout';\nimport Loadable from 'ui-component/Loadable';\nimport OrganizationProfileInfoPage from 'views/account/organization-profile/OrganizationProfileInfo.Page';\nimport OrganizationAdditionalEmailPage from 'views/account/organization-profile/OrganizationAdditionalEmail.Page';\nimport SharedLetterHeadPage from 'views/shared/SharedLetterHead.Page';\nimport ProfileInfoPage from 'views/account/user-profile/ProfileInfo.Page';\nimport AlertNotificationPage from 'views/account/user-profile/AlertNotification.Page';\nimport SignaturePage from 'views/account/user-profile/SignaturePage';\nimport ResetPassword from 'views/account/user-profile/ResetPassword.Page';\n// dashboard routing\nconst DashboardDefault = Loadable(lazyPage(() => import('views/dashboard/Default')));\n\nconst AdditionalUsersPage = Loadable(lazyPage(() => import('views/account/additional-users')));\nconst UserProfilePage = Loadable(lazyPage(() => import('views/account/user-profile')));\nconst ManageAccountPage = Loadable(lazyPage(() => import('views/admin/manage-accounts')));\nconst ManageAnnouncementPage = Loadable(lazyPage(() => import('views/admin/manage-announcements')));\nconst ManageSubscriptionPlanPage = Loadable(lazyPage(() => import('views/admin/manage-subscription-plans')));\nconst ManageCouponsPage = Loadable(lazyPage(() => import('views/admin/manage-coupons')));\nconst ManageFeedbacksPage = Loadable(lazyPage(() => import('views/admin/manage-feedbacks')));\nconst ManageDeadlinesPage = Loadable(lazyPage(() => import('views/admin/manage-deadlines')));\nconst CreateAccountPage = Loadable(lazyPage(() => import('views/admin/create-account')));\nconst CreateAnnouncementPage = Loadable(lazyPage(() => import('views/admin/create-announcement')));\nconst UpdateAnnouncementPage = Loadable(lazyPage(() => import('views/admin/update-announcement')));\nconst CreateSubscriptionPage = Loadable(lazyPage(() => import('views/admin/create-subscription-plan')));\nconst UpdateSubscriptionPage = Loadable(lazyPage(() => import('views/admin/update-subscription-plan')));\nconst UpdateAccountPage = Loadable(lazyPage(() => import('views/admin/update-account')));\nconst UpdateFoundationCaPage = Loadable(lazyPage(() => import('views/admin/update-foundation-ca')));\nconst UpdateFoundationUsPage = Loadable(lazyPage(() => import('views/admin/update-foundation-us')));\nconst ManagePlansPage = Loadable(lazyPage(() => import('views/admin/manage-plans')));\nconst OrganizationProfilePage = Loadable(lazyPage(() => import('views/account/organization-profile')));\nconst UserProjectPage = Loadable(lazyPage(() => import('views/user-project')));\nconst UserProjectArchive = Loadable(lazyPage(() => import('views/user-project/UserProject.Archive')));\nconst SearchByGivingHistoryPage = Loadable(lazyPage(() => import('views/search-engine/by-giving-history')));\nconst SearchByGivingHistoryPageV2 = Loadable(lazyPage(() => import('views/search-engine/giving-history-v2')));\nconst SearchByNamePage = Loadable(lazyPage(() => import('views/search-engine/by-name')));\nconst SearchByNamePageV2 = Loadable(lazyPage(() => import('views/search-engine/by-name-v2')));\nconst SearchByNamePageCA = Loadable(lazyPage(() => import('views/search-engine-ca/by-name')));\nconst SearchByNamePageCAV2 = Loadable(lazyPage(() => import('views/search-engine-ca/by-name-v2')));\nconst SearchByDirectorPage = Loadable(lazyPage(() => import('views/search-engine/by-director')));\nconst SearchByDirectorPageV2 = Loadable(lazyPage(() => import('views/search-engine/by-director-v2')));\nconst SearchByYearPage = Loadable(lazyPage(() => import('views/search-engine/by-year')));\nconst SearchByYearPageV2 = Loadable(lazyPage(() => import('views/search-engine/by-year-v2')));\nconst SearchByRatingPage = Loadable(lazyPage(() => import('views/search-engine/by-rating')));\nconst SearchByCustomPage = Loadable(lazyPage(() => import('views/search-engine/by-custom')));\nconst ProjectBudgetPage = Loadable(lazyPage(() => import('views/project-budget')));\nconst FoundationProfilePage = Loadable(lazyPage(() => import('views/foundation-profile')));\nconst FoundationProfilePageV2 = Loadable(lazyPage(() => import('views/foundation-profile-v2')));\nconst InquiryPage = Loadable(lazyPage(() => import('views/document-generator/inquiry')));\nconst ProposalPage = Loadable(lazyPage(() => import('views/document-generator/proposal')));\nconst CustomPage = Loadable(lazyPage(() => import('views/document-generator/custom')));\nconst GrantSecretary = Loadable(lazyPage(() => import('views/grant-secretary')));\nconst GrantSecretaryV2 = Loadable(lazyPage(() => import('views/grant-secretary-v2')));\nconst GrantSecretaryPreviewDocuments = Loadable(lazyPage(() => import('views/grant-secretary/GrantSecretary.PreviewDocuments')));\nconst GrantSecretaryPreviewDocumentsV2 = Loadable(lazyPage(() => import('views/grant-secretary-v2/GrantSecretary.PreviewDocuments')));\nconst ManageFundersPage = Loadable(lazyPage(() => import('views/manage-funders-v2')));\n// const FavoritesPage = Loadable(lazyPage(() => import('views/manage-funders/favorites')));\n// const BlockedFundersPage = Loadable(lazyPage(() => import('views/manage-funders/blocked-funders')));\nconst CustomDatabasesPage = Loadable(lazyPage(() => import('views/manage-funders-v2/custom-databases')));\nconst CustomDatabasesImportPage = Loadable(lazyPage(() => import('views/manage-funders-v2/custom-databases/CustomDatabase.Import')));\nconst CustomProfilePage = Loadable(lazyPage(() => import('views/custom-profile')));\nconst CustomProfilePageV2 = Loadable(lazyPage(() => import('views/custom-profile-v2')));\nconst DocumentInquiryPage = Loadable(lazyPage(() => import('views/document-generator/document-inquiry')));\nconst DocumentInquiryFunderPage = Loadable(lazyPage(() => import('views/document-generator/document-inquiry/DocumentInquiry.FunderPage')));\nconst DocumentProposalPage = Loadable(lazyPage(() => import('views/document-generator/document-proposal')));\nconst DocumentProposalFunderPage = Loadable(lazyPage(() => import('views/document-generator/document-proposal/DocumentProposal.FunderPage')));\nconst DocumentCustomPage = Loadable(lazyPage(() => import('views/document-generator/document-custom')));\nconst DocumentCustomFunderPage = Loadable(lazyPage(() => import('views/document-generator/document-custom/DocumentCustom.FunderPage')));\nconst SearchByKeywordPage = Loadable(lazyPage(() => import('views/search-engine/by-keyword')));\nconst SearchByKeywordPageV2 = Loadable(lazyPage(() => import('views/search-engine/by-keyword-v2')));\nconst SearchByDirectorPageCA = Loadable(lazyPage(() => import('views/search-engine-ca/by-director')));\nconst SearchByDirectorPageCAV2 = Loadable(lazyPage(() => import('views/search-engine-ca/by-director-v2')));\nconst SearchByGivingHistoryPageCA = Loadable(lazyPage(() => import('views/search-engine-ca/by-giving-history')));\nconst SearchByGivingHistoryPageCAV2 = Loadable(lazyPage(() => import('views/search-engine-ca/by-giving-history-v2')));\nconst SearchByYearPageCA = Loadable(lazyPage(() => import('views/search-engine-ca/by-year')));\nconst SearchByYearPageCAV2 = Loadable(lazyPage(() => import('views/search-engine-ca/by-year-v2')));\nconst SearchByDeadlinePage = Loadable(lazyPage(() => import('views/search-engine/by-deadline')));\nconst FoundationProfileCanadian = Loadable(lazyPage(() => import('views/foundation-profile-ca')));\nconst FoundationProfileCanadianV2 = Loadable(lazyPage(() => import('views/foundation-profile-ca-v2')));\nconst SearchByInternacionalFundingPage = Loadable(lazyPage(() => import('views/search-engine/by-internacional-funding')));\nconst SearchByInternacionalFundingPageV2 = Loadable(lazyPage(() => import('views/search-engine/by-internacional-funding-v2')));\nconst ThankYouLetterPage = Loadable(lazyPage(() => import('views/document-generator/thank-you')));\nconst DocumentThankYouPage = Loadable(lazyPage(() => import('views/document-generator/document-thank-you')));\nconst DocumentThankYouFunderPage = Loadable(lazyPage(() => import('views/document-generator/document-thank-you/DocumentThankYou.FunderPage')));\nconst ImpactReportLetterPage = Loadable(lazyPage(() => import('views/document-generator/impact-report')));\nconst DocumentImpactReportPage = Loadable(lazyPage(() => import('views/document-generator/document-impact-report')));\nconst DocumentImpactReportFunderPage = Loadable(lazyPage(() => import('views/document-generator/document-impact-report/DocumentImpactReport.FunderPage')));\nconst DocumentOptimizationPage = Loadable(lazyPage(() => import('views/document-generator/common/document-optimization')));\nconst SearchByCustomPageV2 = Loadable(lazyPage(() => import('views/search-engine/by-custom-v2')));\n\n\n// ==============================|| MAIN ROUTING ||============================== //\n\nconst MainRoutes = {\n path: '/main',\n element: ,\n children: [\n {\n path: '/',\n element: \n },\n {\n path: '/dashboard/default',\n element: \n },\n {\n path: '/admin/manage-accounts',\n element: \n },\n {\n path: '/admin/manage-announcements',\n element: \n },\n {\n path: '/admin/manage-subscription-plans',\n element: \n },\n {\n path: '/admin/manage-plans',\n element: \n },\n {\n path: '/admin/create-account',\n element: \n },\n {\n path: '/admin/create-announcement',\n element: \n },\n {\n path: '/admin/update-announcement/:id',\n element: \n },\n {\n path: '/admin/create-subscription-plan',\n element: \n },\n {\n path: '/admin/manage-coupons',\n element: \n },\n {\n path: '/admin/manage-feedbacks',\n element: \n },\n {\n path: '/admin/manage-deadlines',\n element: \n },\n {\n path: '/admin/update-subscription-plan/:subscriptionPlanId',\n element: \n },\n {\n path: '/admin/update-account/:userId',\n element: \n },\n {\n path: '/admin/update-foundation-ca/:profileId',\n element: \n },\n {\n path: '/admin/update-foundation-us/:profileId',\n element: \n },\n {\n path: '/account/user-profile',\n element: ,\n children: [\n {\n index: true,\n element: ,\n },\n {\n path: '/profile-info',\n element: ,\n },\n {\n path: '/email-alert',\n element: ,\n },\n {\n path: '/signature',\n element: ,\n },\n {\n path: '/letter-head',\n element: ,\n },\n {\n path: \"/password-reset\",\n element: \n },\n ]\n },\n {\n path: '/account/additional-users',\n element: \n },\n {\n path: '/account/organization-profile',\n element: ,\n children: [\n {\n index: true,\n element: ,\n },\n {\n path: '/profile-info',\n element: ,\n },\n {\n path: '/additional-email',\n element: ,\n },\n {\n path: '/letter-head',\n element: ,\n }\n ]\n },\n {\n path: '/user-project/list',\n element: \n },\n {\n path: '/user-project/archive',\n element: \n },\n {\n path: '/search/by-giving-history',\n element: \n },\n {\n path: '/search/giving-history-v2',\n element: \n },\n {\n path: '/search/by-name',\n element: \n },\n {\n path: '/search/by-name-v2',\n element: \n },\n {\n path: '/search/by-director',\n element: \n },\n {\n path: '/search/by-director-v2',\n element: \n },\n {\n path: '/search/by-year',\n element: \n },\n {\n path: '/search/by-year-v2',\n element: \n },\n {\n path: '/search/by-rating',\n element: \n },\n\n {\n path: '/search/by-custom',\n element: \n },\n {\n path: '/search/by-custom-v2',\n element: \n },\n {\n path: '/project-budget/:userProjectId',\n element: \n },\n {\n path: '/foundation-profile/:profileId',\n element: \n },\n {\n path: '/foundation-profile-v2/:profileId',\n element: \n },\n {\n path: '/document-generator/inquiry',\n element: \n },\n {\n path: '/document-generator/proposal',\n element: \n },\n {\n path: '/document-generator/custom-letter',\n element: \n },\n {\n path: '/grant-secretary',\n element: \n },\n {\n path: '/new-grant-secretary',\n element: \n },\n {\n path: '/grant-secretary/preview-documents',\n element: \n },\n {\n path: '/new-grant-secretary/preview-documents',\n element: \n },\n {\n path: '/manage-funders',\n element: \n\n },\n // {\n // path: '/manage-funders/favorites',\n // element: \n // },\n // {\n // path: '/manage-funders/blocked-funders',\n // element: \n // },\n {\n path: '/manage-funders/custom-databases',\n element: \n },\n {\n path: '/manage-funders/custom-databases/import',\n element: \n },\n {\n path: '/custom-profile/:customItemId',\n element: \n },\n {\n path: '/custom-profile-v2/:customItemId',\n element: \n },\n {\n path: '/document-generator/document-inquiry',\n element: \n },\n {\n path: '/document-generator/document-inquiry/funder/:profileId',\n element: \n },\n {\n path: '/document-generator/document-proposal',\n element: \n },\n {\n path: '/document-generator/document-proposal/funder/:profileId',\n element: \n },\n {\n path: '/document-generator/document-custom',\n element: \n },\n {\n path: '/document-generator/document-custom/funder/:profileId',\n element: \n },\n {\n path: '/search/by-keyword',\n element: \n },\n {\n path: '/search/by-keyword-v2',\n element: \n },\n {\n path: '/search/name-ca',\n element: \n },\n {\n path: '/search/name-ca-v2',\n element: \n },\n {\n path: '/search/directors-ca',\n element: \n },\n {\n path: '/search/directors-ca-v2',\n element: \n },\n {\n path: '/search/giving-history-ca',\n element: \n },\n {\n path: '/search/giving-history-ca-v2',\n element: \n },\n {\n path: '/search/year-ca',\n element: \n },\n {\n path: '/search/year-ca-v2',\n element: \n },\n {\n path: '/search/by-deadline',\n element: \n },\n {\n path: '/search/by-international-funding',\n element: \n },\n {\n path: '/search/by-international-funding-v2',\n element: \n },\n {\n path: '/foundation-profile-ca/:profileId',\n element: \n },\n {\n path: '/foundation-profile-ca-v2/:profileId',\n element: \n },\n {\n path: '/document-generator/thank-you',\n element: \n },\n {\n path: '/document-generator/document-thank-you',\n element: \n },\n {\n path: '/document-generator/document-thank-you/funder/:profileId',\n element: \n },\n {\n path: '/document-generator/impact-report',\n element: \n },\n {\n path: '/document-generator/document-impact-report',\n element: \n },\n {\n path: '/document-generator/document-impact-report/funder/:profileId',\n element: \n },\n {\n path: '/document-generator/document-optimization',\n element: \n }\n ]\n};\n\nexport default MainRoutes;\n","import { Outlet } from 'react-router-dom';\nimport { useSelector, useDispatch } from \"react-redux\";\n\n// project imports\nimport Customization from '../Customization';\n\nimport Snackbar from '@mui/material/Snackbar';\nimport SweetAlert from 'react-bootstrap-sweetalert';\n\nimport { closeToaster, closeMessage } from \"store/Shared.Slice\";\nimport { useTranslation } from \"react-i18next\";\n\n\n// ==============================|| MINIMAL LAYOUT ||============================== //\n\nconst MinimalLayout = () => {\n\n const { message, toaster } = useSelector((state) => state.sharedState);\n const dispatch = useDispatch();\n const { t } = useTranslation();\n\n return (\n <>\n dispatch(closeToaster())}\n message={t(toaster.message)}\n />\n\n {message.isOpen && (\n dispatch(closeMessage())}\n onCancel={() => dispatch(closeMessage())}>\n {t(message.text)}\n \n )\n }\n \n \n \n )\n};\n\nexport default MinimalLayout;\n","import { lazy } from 'react';\n\n// project imports\nimport Loadable from 'ui-component/Loadable';\nimport MinimalLayout from 'layout/MinimalLayout';\n\n\n// login option 3 routing\nconst AuthLogin3 = Loadable(lazy(() => import('views/pages/authentication/authentication3/Login3')));\nconst AuthRegister3 = Loadable(lazy(() => import('views/pages/authentication/authentication3/Register3')));\nconst PasswordRecovery = Loadable(lazy(() => import('views/pages/authentication/authentication3/PasswordRecovery')));\nconst PasswordReset = Loadable(lazy(() => import('views/pages/authentication/authentication3/PasswordReset')));\nconst SettingUpAccount = Loadable(lazy(() => import('views/pages/authentication/authentication3/SettingUpAccount')));\nconst ConfirmRegisterUser = Loadable(lazy(() => import('views/pages/authentication/authentication3/ConfirmRegisterUser')));\nconst PublicProfilePage = Loadable(lazy(() => import('views/pages/public-profile-page')));\n\n// ==============================|| AUTHENTICATION ROUTING ||============================== //\n\nconst AuthenticationRoutes = {\n path: '/',\n element: ,\n children: [\n {\n path: '/',\n element: \n },\n {\n path: '/register',\n element: \n },\n {\n path: '/password-recovery',\n element: \n },\n {\n path: '/password-reset/:userId/:token',\n element: \n },\n {\n path: '/setting-up-account/:userId/:token',\n element: \n },\n {\n path: '/confirm-register-user/:userId/:token',\n element: \n },\n {\n path: '/public-funder/:profileId',\n element: \n }\n ]\n};\n\nexport default AuthenticationRoutes;\n","import { useRoutes } from 'react-router-dom';\n\n// routes\nimport MainRoutes from './MainRoutes';\nimport AuthenticationRoutes from './AuthenticationRoutes';\nimport config from 'config';\n\n// ==============================|| ROUTING RENDER ||============================== //\n\nexport default function ThemeRoutes() {\n return useRoutes([AuthenticationRoutes, MainRoutes], config.basename);\n}\n","/**\n * Color intention that you want to used in your theme\n * @param {JsonObject} theme Theme customization object\n */\n\nexport default function themePalette(theme) {\n return {\n mode: theme?.customization?.navType,\n common: {\n black: theme.colors?.darkPaper\n },\n primary: {\n light: theme?.customization?.navType === 'dark' ? theme.colors?.darkPrimaryLight : theme.colors?.primaryLight,\n main: theme?.customization?.navType === 'dark' ? theme.colors?.darkPrimaryMain : theme.colors?.primaryMain,\n dark: theme?.customization?.navType === 'dark' ? theme.colors?.darkPrimaryDark : theme.colors?.primaryDark,\n 200: theme?.customization?.navType === 'dark' ? theme.colors?.darkPrimary200 : theme.colors?.primary200,\n 800: theme?.customization?.navType === 'dark' ? theme.colors?.darkPrimary800 : theme.colors?.primary800\n },\n secondary: {\n light: theme?.customization?.navType === 'dark' ? theme.colors?.darkSecondaryLight : theme.colors?.secondaryLight,\n main: theme?.customization?.navType === 'dark' ? theme.colors?.darkSecondaryMain : theme.colors?.secondaryMain,\n dark: theme?.customization?.navType === 'dark' ? theme.colors?.darkSecondaryDark : theme.colors?.secondaryDark,\n 200: theme?.customization?.navType === 'dark' ? theme.colors?.darkSecondary200 : theme.colors?.secondary200,\n 800: theme?.customization?.navType === 'dark' ? theme.colors?.darkSecondary800 : theme.colors?.secondary800\n },\n error: {\n light: theme.colors?.errorLight,\n main: theme.colors?.errorMain,\n dark: theme.colors?.errorDark\n },\n orange: {\n light: theme.colors?.orangeLight,\n main: theme.colors?.orangeMain,\n dark: theme.colors?.orangeDark\n },\n warning: {\n light: theme.colors?.warningLight,\n main: theme.colors?.warningMain,\n dark: theme.colors?.warningDark,\n 100: theme.colors?.warning100\n },\n success: {\n light: theme.colors?.successLight,\n 200: theme.colors?.success200,\n main: theme.colors?.successMain,\n dark: theme.colors?.successDark\n },\n grey: {\n 50: theme.colors?.grey50,\n 100: theme.colors?.grey100,\n 500: theme.darkTextSecondary,\n 600: theme.heading,\n 700: theme.darkTextPrimary,\n 900: theme.textDark\n },\n dark: {\n light: theme.colors?.darkTextPrimary,\n main: theme.colors?.darkLevel1,\n dark: theme.colors?.darkLevel2,\n 800: theme.colors?.darkBackground,\n 900: theme.colors?.darkPaper\n },\n text: {\n primary: theme.darkTextPrimary,\n secondary: theme.darkTextSecondary,\n dark: theme.textDark,\n mediumDark: theme.mediumDarkText,\n light: theme.lightText,\n hint: theme.colors?.grey100\n },\n background: {\n paper: theme.paper,\n paper2: theme.paper2,\n default: theme.backgroundDefault\n }\n };\n}\n","/**\n * Typography used in theme\n * @param {JsonObject} theme theme customization object\n */\n\nexport default function themeTypography(theme) {\n return {\n fontFamily: theme?.customization?.fontFamily,\n h6: {\n fontWeight: 500,\n color: theme.heading,\n fontSize: '0.75rem'\n },\n h5: {\n fontSize: '0.875rem',\n color: theme.heading,\n fontWeight: 500\n },\n h4: {\n fontSize: '1rem',\n color: theme.heading,\n fontWeight: 600\n },\n h3: {\n fontSize: '1.25rem',\n color: theme.heading,\n fontWeight: 600\n },\n h2: {\n fontSize: '1.5rem',\n color: theme.heading,\n fontWeight: 700\n },\n h1: {\n fontSize: '2.125rem',\n color: theme.heading,\n fontWeight: 700\n },\n subtitle1: {\n fontSize: '0.875rem',\n fontWeight: 500,\n color: theme?.customization?.navType === 'dark' ? theme.heading : theme.textDark\n },\n subtitle2: {\n fontSize: '0.75rem',\n fontWeight: 400,\n color: theme.darkTextSecondary\n },\n caption: {\n fontSize: '0.75rem',\n color: theme.darkTextSecondary,\n fontWeight: 400\n },\n body1: {\n fontSize: '0.875rem',\n fontWeight: 400,\n lineHeight: '1.334em'\n },\n body2: {\n letterSpacing: '0em',\n fontWeight: 400,\n lineHeight: '1.5em',\n color: theme.darkTextPrimary\n },\n button: {\n textTransform: 'capitalize'\n },\n customInput: {\n marginTop: 1,\n marginBottom: 1,\n '& > label': {\n top: 23,\n left: 0,\n color: theme.grey500,\n '&[data-shrink=\"false\"]': {\n top: 5\n }\n },\n '& > div > input': {\n padding: '30.5px 14px 11.5px'\n },\n '& legend': {\n display: 'none'\n },\n '& fieldset': {\n top: 0\n }\n },\n customAutocomplete: {\n marginTop: 1,\n marginBottom: 1,\n '& > label': {\n top: 23,\n left: 0,\n color: theme.grey500,\n '&[data-shrink=\"false\"]': {\n top: 5\n }\n },\n '& > div > div': {\n padding: '30.5px 14px 11.5px !important',\n },\n '& legend': {\n display: 'none'\n },\n '& fieldset': {\n top: 0\n },\n 'div > div': {\n height: '20px',\n marginTop: 0\n }\n },\n customAutocompleteSelect: {\n background: 'red',\n marginTop: 1,\n marginBottom: 1,\n '& > label': {\n top: 23,\n left: 0,\n color: theme.grey500,\n '&[data-shrink=\"false\"]': {\n top: 5\n }\n\n },\n '& > div > div': {\n padding: '30.5px 14px 11.5px !important'\n },\n '& legend': {\n display: 'none'\n },\n '& fieldset': {\n top: 0\n }\n },\n customCollapseExpand: {\n \".MuiButtonBase-root\": { \n backgroundColor: theme?.customization?.navType === 'dark' ? theme.colors?.darkSecondaryMain : theme.colors?.secondaryMain, \n marginRight: '5px', \n borderRadius: '10px', \n color: 'white', \n }, \n \".MuiButtonBase-root:hover\": { \n backgroundColor: theme?.customization?.navType === 'dark' ? theme.colors?.darkSecondaryMain : theme.colors?.secondaryMain,\n }\n },\n mainContent: {\n backgroundColor: theme.background,\n width: '100%',\n minHeight: 'calc(100vh - 88px)',\n flexGrow: 1,\n padding: '20px',\n marginTop: '88px',\n marginRight: '20px',\n borderRadius: `${theme?.customization?.borderRadius}px`\n },\n menuCaption: {\n fontSize: '0.875rem',\n fontWeight: 500,\n color: 'white',\n padding: '6px',\n textTransform: 'capitalize',\n marginTop: '10px'\n },\n subMenuCaption: {\n fontSize: '0.6875rem',\n fontWeight: 500,\n color: theme.darkTextSecondary,\n textTransform: 'capitalize'\n },\n commonAvatar: {\n cursor: 'pointer',\n borderRadius: '8px'\n },\n smallAvatar: {\n width: '22px',\n height: '22px',\n fontSize: '1rem'\n },\n mediumAvatar: {\n width: '34px',\n height: '34px',\n fontSize: '19'\n },\n largeAvatar: {\n width: '44px',\n height: '44px',\n fontSize: '1.5rem'\n },\n smallFeedback: {\n width: '22px',\n height: '22px',\n fontSize: '1rem'\n },\n mediumFeedback: {\n width: '29px',\n height: '29px',\n fontSize: '19'\n },\n largeFeedback: {\n width: '44px',\n height: '44px',\n fontSize: '1.5rem'\n },\n };\n}\n","import { alpha } from '@mui/material/styles';\n\nconst createCustomShadow = (theme, color) => {\n const transparent = alpha(color, 0.24);\n return {\n z1: `0 1px 2px 0 ${transparent}`,\n z8: `0 8px 16px 0 ${transparent}`,\n z12: `0 12px 24px 0 ${transparent} 0 10px 20px 0 ${transparent}`,\n z16: `0 0 3px 0 ${transparent} 0 14px 28px -5px ${transparent}`,\n z20: `0 0 3px 0 ${transparent} 0 18px 36px -5px ${transparent}`,\n z24: `0 0 6px 0 ${transparent} 0 21px 44px 0 ${transparent}`,\n\n primary: `0px 12px 14px 0px ${alpha(theme.colors?.primaryMain, 0.3)}`,\n secondary: `0px 12px 14px 0px ${alpha(theme.colors?.secondaryMain, 0.3)}`,\n orange: `0px 12px 14px 0px ${alpha(theme.colors?.orangeMain, 0.3)}`,\n success: `0px 12px 14px 0px ${alpha(theme.colors?.successMain, 0.3)}`,\n warning: `0px 12px 14px 0px ${alpha(theme.colors?.warningMain, 0.3)}`,\n error: `0px 12px 14px 0px ${alpha(theme.colors?.errorMain, 0.3)}`\n };\n};\n\nexport default function customShadows(navType, theme) {\n return navType === 'dark' ? createCustomShadow(theme, theme.colors?.darkLevel1) : createCustomShadow(theme, theme.colors?.grey600);\n}\n","import { createTheme } from '@mui/material/styles';\n\n// assets\nimport colors from 'assets/scss/_themes-vars.module.scss';\nimport theme1 from 'assets/scss/_theme1.module.scss';\nimport theme2 from 'assets/scss/_theme2.module.scss';\nimport theme3 from 'assets/scss/_theme3.module.scss';\nimport theme4 from 'assets/scss/_theme4.module.scss';\nimport theme5 from 'assets/scss/_theme5.module.scss';\nimport theme6 from 'assets/scss/_theme6.module.scss';\nimport theme7 from 'assets/scss/_theme7.module.scss';\nimport theme8 from 'assets/scss/_theme8.module.scss';\n\n// project imports\nimport componentStyleOverrides from './compStyleOverride';\nimport themePalette from './palette';\nimport themeTypography from './typography';\nimport customShadows from './shadows';\n\n/**\n * Represent theme style and structure as per Material-UI\n * @param {JsonObject} customization customization parameter object\n */\n\nexport const theme = (customization) => {\n let color;\n switch (customization.presetColor) {\n case 'theme1':\n color = theme1;\n break;\n case 'theme2':\n color = theme2;\n break;\n case 'theme3':\n color = theme3;\n break;\n case 'theme4':\n color = theme4;\n break;\n case 'theme5':\n color = theme5;\n break;\n case 'theme6':\n color = theme6;\n break;\n case 'theme7':\n color = theme7;\n break;\n case 'theme8':\n color = theme8;\n break;\n case 'default':\n default:\n color = colors;\n }\n\n const themeOption = {\n colors: color,\n heading: '',\n paper: '',\n backgroundDefault: '',\n background: '',\n darkTextPrimary: '',\n darkTextSecondary: '',\n textDark: '',\n menuSelected: '',\n menuSelectedBack: '',\n divider: '',\n customization\n };\n\n switch (customization.navType) {\n case 'dark':\n themeOption.paper = color.darkLevel2;\n themeOption.paper2 = color.darkBackground;\n themeOption.backgroundDefault = color.darkPaper;\n themeOption.background = color.darkBackground;\n themeOption.darkTextPrimary = color.darkTextPrimary;\n themeOption.darkTextSecondary = color.darkTextSecondary;\n themeOption.mediumDarkText = color.darkTextPrimary;\n themeOption.lightText = color.darkTextSecondary;\n themeOption.textDark = color.darkTextPrimary;\n themeOption.menuSelected = color.darkSecondaryMain;\n themeOption.menuSelectedBack = color.darkSecondaryMain + 15;\n themeOption.divider = color.darkTextPrimary;\n themeOption.heading = color.darkTextTitle;\n break;\n case 'light':\n default:\n themeOption.paper = color.paper;\n themeOption.paper2 = color.paper2;\n themeOption.backgroundDefault = color.paper;\n themeOption.background = color.primaryLight;\n themeOption.darkTextPrimary = color.grey700;\n themeOption.darkTextSecondary = color.grey500;\n themeOption.mediumDarkText = color.grey800;\n themeOption.lightText = color.grey700_orig;\n themeOption.textDark = color.grey900;\n themeOption.menuSelected = color.secondaryDark;\n themeOption.menuSelectedBack = color.secondaryLight;\n themeOption.divider = color.grey200;\n themeOption.heading = color.grey900;\n break;\n }\n\n const themeOptions = {\n direction: customization.rtlLayout ? 'rtl' : 'ltr',\n palette: themePalette(themeOption),\n mixins: {\n toolbar: {\n minHeight: '48px',\n padding: '16px',\n '@media (min-width: 600px)': {\n minHeight: '48px'\n }\n }\n },\n typography: themeTypography(themeOption),\n customShadows: customShadows(customization.navType, themeOption),\n breakpoints: {\n values: {\n xs: 0,\n sm: 600,\n md: 900,\n lg: 1200,\n xl: 1536,\n xxl: 1760,\n }\n }\n };\n\n const themes = createTheme(themeOptions);\n themes.components = componentStyleOverrides(themeOption);\n\n return themes;\n};\n\nexport default theme;\n","export default function componentStyleOverrides(theme) {\n const bgColor = theme?.customization?.navType === 'dark' ? theme.colors?.darkBackground : theme.colors?.grey50;\n return {\n MuiButton: {\n styleOverrides: {\n root: {\n fontWeight: 500,\n borderRadius: '4px'\n }\n },\n /*variants: \n [\n {\n props: { variant: 'contained', color: 'secondary' },\n style: {\n background: `linear-gradient(180deg, ${theme.colors.primaryMain} 0%, ${theme.colors.secondaryMain} 100%)`,\n color: 'white'\n },\n }\n ],*/\n },\n MuiPaper: {\n defaultProps: {\n elevation: 0\n },\n styleOverrides: {\n root: {\n backgroundImage: 'none'\n },\n rounded: {\n borderRadius: `${theme?.customization?.borderRadius}px`\n }\n }\n },\n MuiCardHeader: {\n styleOverrides: {\n root: {\n color: theme.colors?.textDark,\n //padding: '24px'\n paddingLeft: '20px',\n paddingTop: '15px',\n paddingBottom: '10px'\n },\n title: {\n fontSize: '1.125rem'\n }\n }\n },\n MuiCardContent: {\n styleOverrides: {\n root: {\n padding: '24px'\n }\n }\n },\n MuiCardActions: {\n styleOverrides: {\n root: {\n padding: '24px'\n }\n }\n },\n MuiAlert: {\n styleOverrides: {\n root: {\n alignItems: 'center'\n },\n outlined: {\n border: '1px dashed'\n }\n }\n },\n MuiListItemButton: {\n styleOverrides: {\n root: {\n color: theme.darkTextPrimary,\n paddingTop: '10px',\n paddingBottom: '10px',\n '&.Mui-selected': {\n color: theme.menuSelected,\n backgroundColor: theme.menuSelectedBack,\n '&:hover': {\n backgroundColor: theme.menuSelectedBack\n },\n '& .MuiListItemIcon-root': {\n color: theme.menuSelected\n }\n },\n '&:hover': {\n backgroundColor: theme.menuSelectedBack,\n color: theme.menuSelected,\n '& .MuiListItemIcon-root': {\n color: theme.menuSelected\n }\n }\n }\n }\n },\n MuiListItemIcon: {\n styleOverrides: {\n root: {\n color: theme.darkTextPrimary,\n minWidth: '36px'\n }\n }\n },\n MuiListItemText: {\n styleOverrides: {\n primary: {\n color: theme.textDark\n }\n }\n },\n MuiInputBase: {\n styleOverrides: {\n input: {\n color: theme.textDark,\n '&::placeholder': {\n color: theme.darkTextSecondary,\n fontSize: '0.875rem'\n }\n }\n }\n },\n MuiOutlinedInput: {\n styleOverrides: {\n root: {\n background: theme?.customization?.outlinedFilled ? bgColor : 'transparent',\n borderRadius: `${theme?.customization?.borderRadius}px`,\n '& .MuiOutlinedInput-notchedOutline': {\n borderColor: theme?.customization?.navType === 'dark' ? theme.colors.darkTextPrimary + 28 : theme.colors?.grey400\n },\n '&:hover $notchedOutline': {\n borderColor: theme.colors?.primaryLight\n },\n '&.MuiInputBase-multiline': {\n padding: 1\n }\n },\n input: {\n fontWeight: 500,\n background: theme?.customization?.outlinedFilled ? bgColor : 'transparent',\n padding: '15.5px 14px',\n borderRadius: `${theme?.customization?.borderRadius}px`,\n '&.MuiInputBase-inputSizeSmall': {\n padding: '10px 14px',\n '&.MuiInputBase-inputAdornedStart': {\n paddingLeft: 0\n }\n }\n },\n inputAdornedStart: {\n paddingLeft: 4\n },\n notchedOutline: {\n borderRadius: `${theme?.customization?.borderRadius}px`\n }\n }\n },\n MuiSlider: {\n styleOverrides: {\n root: {\n '&.Mui-disabled': {\n color: theme?.customization?.navType === 'dark' ? theme.colors.darkTextPrimary + 50 : theme.colors?.grey300\n }\n },\n mark: {\n backgroundColor: theme.paper,\n width: '4px'\n },\n valueLabel: {\n color: theme?.customization?.navType === 'dark' ? theme?.colors?.primaryMain : theme?.colors?.primaryLight\n }\n }\n },\n MuiAutocomplete: {\n styleOverrides: {\n root: {\n '& .MuiAutocomplete-tag': {\n background:\n theme?.customization?.navType === 'dark' ? theme.colors.darkTextPrimary + 20 : theme.colors?.secondaryLight,\n borderRadius: 4,\n color: theme.textDark,\n '.MuiChip-deleteIcon': {\n color: theme?.customization?.navType === 'dark' ? theme.colors.darkTextPrimary + 80 : theme.colors?.secondary200\n }\n }\n },\n popper: {\n borderRadius: `${theme?.customization?.borderRadius}px`,\n boxShadow: '0px 8px 10px -5px rgb(0 0 0 / 20%), 0px 16px 24px 2px rgb(0 0 0 / 14%), 0px 6px 30px 5px rgb(0 0 0 / 12%)'\n }\n }\n },\n MuiDivider: {\n styleOverrides: {\n root: {\n borderColor: theme.divider,\n opacity: theme?.customization?.navType === 'dark' ? 0.2 : 1\n }\n }\n },\n MuiSelect: {\n styleOverrides: {\n select: {\n '&:focus': {\n backgroundColor: 'transparent'\n }\n }\n }\n },\n MuiCheckbox: {\n styleOverrides: {\n root: {\n /** checked not prop\n *\"&.Mui-checked\": {\n * fontSize: \"28px\"\n *}\n */\n }\n }\n },\n MuiAvatar: {\n styleOverrides: {\n root: {\n color: theme?.customization?.navType === 'dark' ? theme.colors?.darkLevel1 : theme.colors?.primaryDark,\n background: theme?.customization?.navType === 'dark' ? theme.darkTextPrimary : theme.colors?.primary200\n }\n }\n },\n MuiChip: {\n styleOverrides: {\n root: {\n '&.MuiChip-deletable .MuiChip-deleteIcon': {\n color: 'inherit'\n }\n }\n }\n },\n MuiTimelineContent: {\n styleOverrides: {\n root: {\n color: theme.textDark,\n fontSize: '16px'\n }\n }\n },\n MuiTreeItem: {\n styleOverrides: {\n label: {\n marginTop: 14,\n marginBottom: 14\n }\n }\n },\n MuiTimelineDot: {\n styleOverrides: {\n root: {\n boxShadow: 'none'\n }\n }\n },\n MuiInternalDateTimePickerTabs: {\n styleOverrides: {\n tabs: {\n backgroundColor: theme?.customization?.navType === 'dark' ? theme.colors?.darkPaper : theme.colors?.primaryLight,\n '& .MuiTabs-flexContainer': {\n borderColor:\n theme?.customization?.navType === 'dark' ? theme.colors?.darkTextPrimary + 20 : theme.colors?.primary200\n },\n '& .MuiTab-root': {\n color: theme?.customization?.navType === 'dark' ? theme.colors?.darkTextSecondary : theme.colors?.grey900\n },\n '& .MuiTabs-indicator': {\n backgroundColor: theme.colors?.primaryDark\n },\n '& .Mui-selected': {\n color: theme.colors?.primaryDark\n }\n }\n }\n },\n MuiTabs: {\n styleOverrides: {\n flexContainer: {\n borderBottom: '1px solid',\n borderColor: theme?.customization?.navType === 'dark' ? theme.colors.darkTextPrimary + 20 : theme.colors?.grey200\n }\n }\n },\n MuiDialog: {\n styleOverrides: {\n paper: {\n padding: '12px 0 12px 0'\n }\n }\n },\n MuiTableCell: {\n styleOverrides: {\n root: {\n borderColor: theme?.customization?.navType === 'dark' ? theme.colors.darkTextPrimary + 15 : theme.colors?.grey200,\n '&.MuiTableCell-head': {\n fontSize: '0.875rem',\n color: theme.heading,\n fontWeight: 500\n }\n }\n }\n },\n MuiTooltip: {\n styleOverrides: {\n tooltip: {\n color: theme?.customization?.navType === 'dark' ? theme.colors?.darkLevel1 : theme.paper,\n background: theme?.customization?.navType === 'dark' ? theme.colors?.grey50 : theme.colors?.grey700\n }\n }\n },\n MuiDialogTitle: {\n styleOverrides: {\n root: {\n fontSize: '1.25rem'\n }\n }\n }\n };\n}\n","import PropTypes from 'prop-types';\nimport { useState, useEffect } from 'react';\nimport { useSelector } from 'react-redux';\n\n// third-party\nimport { IntlProvider } from 'react-intl';\n\n// load locales files\nconst loadLocaleData = (locale) => {\n switch (locale) {\n case 'fr':\n return import('utils/locales/fr.json');\n case 'ro':\n return import('utils/locales/ro.json');\n case 'zh':\n return import('utils/locales/zh.json');\n default:\n return import('utils/locales/en.json');\n }\n};\n\n// ==============================|| LOCALIZATION ||============================== //\n\nconst Locales = ({ children }) => {\n const customization = useSelector((state) => state.customization);\n const [messages, setMessages] = useState();\n\n useEffect(() => {\n loadLocaleData(customization.locale).then((d) => {\n setMessages(d.default);\n });\n }, [customization.locale]);\n\n return (\n <>\n {messages && (\n \n {children}\n \n )}\n \n );\n};\n\nLocales.propTypes = {\n children: PropTypes.node\n};\n\nexport default Locales;\n","import { useState, useEffect } from 'react';\nimport { useSelector } from 'react-redux';\n\n// material-ui\nimport { Alert, Button, Fade, Grow, IconButton, Slide } from '@mui/material';\nimport MuiSnackbar from '@mui/material/Snackbar';\n\n// assets\nimport CloseIcon from '@mui/icons-material/Close';\n\n// animation function\nfunction TransitionSlideLeft(props) {\n return ;\n}\n\nfunction TransitionSlideUp(props) {\n return ;\n}\n\nfunction TransitionSlideRight(props) {\n return ;\n}\n\nfunction TransitionSlideDown(props) {\n return ;\n}\n\nfunction GrowTransition(props) {\n return ;\n}\n\n// animation options\nconst transition = {\n SlideLeft: TransitionSlideLeft,\n SlideUp: TransitionSlideUp,\n SlideRight: TransitionSlideRight,\n SlideDown: TransitionSlideDown,\n Grow: GrowTransition,\n Fade\n};\n\n// ==============================|| SNACKBAR ||============================== //\n\nconst Snackbar = () => {\n const [open, setOpen] = useState(false);\n const snackbarInitial = useSelector((state) => state.snackbar);\n\n const handleClose = (reason) => {\n if (reason === 'clickaway') {\n return;\n }\n setOpen(false);\n };\n\n useEffect(() => {\n setOpen(snackbarInitial.open);\n }, [snackbarInitial.action, snackbarInitial.open]);\n\n return (\n <>\n {/* default snackbar */}\n {snackbarInitial.variant === 'default' && (\n handleClose(v)}\n message={snackbarInitial.message}\n TransitionComponent={transition[snackbarInitial.transition]}\n action={\n <>\n \n handleClose()}>\n \n \n \n }\n />\n )}\n\n {/* alert snackbar */}\n {snackbarInitial.variant === 'alert' && (\n handleClose(v)}\n >\n \n {snackbarInitial.actionButton !== false && (\n \n )}\n {snackbarInitial.close !== false && (\n handleClose()}>\n \n \n )}\n \n }\n >\n {snackbarInitial.message}\n \n \n )}\n \n );\n};\n\nexport default Snackbar;\n","// action - state management\nimport { LOGIN, LOGOUT, REGISTER } from './actions';\n\n// ==============================|| ACCOUNT REDUCER ||============================== //\n\nconst accountReducer = (state, action) => {\n switch (action.type) {\n case REGISTER: {\n const { user } = action.payload;\n return {\n ...state,\n user\n };\n }\n case LOGIN: {\n const { user } = action.payload;\n return {\n ...state,\n isLoggedIn: true,\n isInitialized: true,\n user\n };\n }\n case LOGOUT: {\n return {\n ...state,\n isInitialized: true,\n isLoggedIn: false,\n user: null\n };\n }\n default: {\n return { ...state };\n }\n }\n};\n\nexport default accountReducer;\n","import PropTypes from 'prop-types';\nimport { createContext, useEffect, useReducer } from 'react';\n\n// third-party\nimport firebase from 'firebase/app';\nimport 'firebase/auth';\n\n// action - state management\nimport { LOGIN, LOGOUT } from 'store/actions';\nimport accountReducer from 'store/accountReducer';\n\n// project imports\nimport Loader from 'ui-component/Loader';\nimport config from 'config';\n\n// firebase initialize\nif (!firebase.apps.length) {\n firebase.initializeApp(config.firebase);\n}\n\n// const\nconst initialState = {\n isLoggedIn: false,\n isInitialized: false,\n user: null\n};\n\n// ==============================|| FIREBASE CONTEXT & PROVIDER ||============================== //\n\nconst FirebaseContext = createContext(null);\n\nexport const FirebaseProvider = ({ children }) => {\n const [state, dispatch] = useReducer(accountReducer, initialState);\n\n useEffect(\n () =>\n firebase.auth().onAuthStateChanged((user) => {\n if (user) {\n dispatch({\n type: LOGIN,\n payload: {\n isLoggedIn: true,\n user: {\n id: user.uid,\n email: user.email,\n name: user.displayName || 'Betty'\n }\n }\n });\n } else {\n dispatch({\n type: LOGOUT\n });\n }\n }),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [dispatch]\n );\n\n const firebaseEmailPasswordSignIn = (email, password) => firebase.auth().signInWithEmailAndPassword(email, password);\n\n const firebaseGoogleSignIn = () => {\n const provider = new firebase.auth.GoogleAuthProvider();\n\n return firebase.auth().signInWithPopup(provider);\n };\n\n const firebaseRegister = async (email, password) => firebase.auth().createUserWithEmailAndPassword(email, password);\n\n const logout = () => firebase.auth().signOut();\n\n const resetPassword = async (email) => {\n await firebase.auth().sendPasswordResetEmail(email);\n };\n\n const updateProfile = () => {};\n if (state.isInitialized !== undefined && !state.isInitialized) {\n return ;\n }\n\n return (\n {},\n firebaseGoogleSignIn,\n logout,\n resetPassword,\n updateProfile\n }}\n >\n {children}\n \n );\n};\n\nFirebaseProvider.propTypes = {\n children: PropTypes.node\n};\n\nexport default FirebaseContext;\n","import { createContext, useEffect } from 'react';\nimport LogRocket from 'logrocket';\nimport { useSelector } from 'react-redux';\n\nconst LogRocketContext = createContext();\n\nexport const LogRocketProvider = ({ children }) => {\n const { userToken } = useSelector(state => state.sharedState);\n\n useEffect(() => {\n if(process.env.NODE_ENV === 'development' || userToken == null) return;\n\n LogRocket.init('f5sb9k/grant-advance-frontend');\n \n LogRocket.identify(userToken.Id, {\n name: userToken.UserName,\n email: userToken.email,\n });\n }, [userToken]);\n\n return (\n \n {children}\n \n );\n};\n","import { useState, useEffect } from \"react\";\nimport { useDispatch } from \"react-redux\";\nimport {\n useTheme,\n useMediaQuery,\n Box,\n Stack,\n Typography,\n} from \"@mui/material\";\nimport Cookies from 'universal-cookie';\n\nimport Logo from 'assets/images/ga-logo-sm.png';\nimport LoadingButton from '@mui/lab/LoadingButton';\nimport FormControlWrapper from \"components/FormControlWrapper\";\nimport CheckboxWrapper from \"components/CheckboxWrapper\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLoginMutation } from \"Services/LoginServices\";\n\nimport { showErrorToaster } from \"store/Shared.Slice\";\n\nconst setCookieVal = (key, value) => {\n const cookies = new Cookies();\n cookies.set(key, value, { maxAge: 1000000, path: '/', sameSite: true });\n}\n\nconst LoginForm = ({\n message,\n onLoginSuccess,\n onLoginFailed,\n}) => {\n\n const { t } = useTranslation();\n const theme = useTheme();\n const matchDownMD = useMediaQuery(theme.breakpoints.down('md'));\n const dispatch = useDispatch();\n\n const [userLogin, { isLoading }] = useLoginMutation();\n\n const [checked, setChecked] = useState(true);\n const [formInput, setFormInput] = useState({\n userNameOrEmail: {\n value: '',\n error: ''\n },\n password: {\n value: '',\n error: ''\n }\n });\n\n const userNameOrEmail = formInput.userNameOrEmail;\n const password = formInput.password;\n\n const handleFormInputChange = (field, value) => {\n if (checked) {\n if (field === 'userNameOrEmail') {\n setCookieVal('userNameOrEmail', value);\n }\n if (field === 'password') {\n setCookieVal('password', value);\n }\n }\n \n setCookieVal('remember', checked);\n setFormInput((input) => ({...input, [field]: { value, error: '' }}));\n }\n\n const handleRemember = (rememberChecked) => {\n\n if (rememberChecked === false) {\n setCookieVal('userNameOrEmail', '');\n setCookieVal('password', '');\n };\n \n setCookieVal('remember', rememberChecked);\n \n setChecked(rememberChecked);\n }\n\n const handleLogin = async (event) => {\n event.preventDefault();\n\n try {\n const model = {\n userNameOrEmail: userNameOrEmail.value,\n password: password.value,\n };\n const response = await userLogin(model).unwrap();\n localStorage.setItem(\"token\", response.token);\n\n onLoginSuccess?.();\n\n } catch (error) {\n \n onLoginFailed?.();\n \n // Model Errors\n if (error.data?.errors != null) {\n dispatch(showErrorToaster(t(\"errors.model_error\")));\n Object.entries(error.data?.errors).forEach(([field, errors]) => { \n formInput[field].error = errors[0];\n });\n }\n \n // Bad Request\n if (error.data?.message != null) {\n dispatch(showErrorToaster(error.data?.message));\n }\n }\n };\n\n useEffect(() => {\n const cookies = new Cookies();\n\n if (cookies.get('remember')) {\n \n const rememberVal = cookies.get('remember');\n \n if (rememberVal === 'true') {\n handleFormInputChange('userNameOrEmail', cookies.get('userNameOrEmail'));\n handleFormInputChange('password', cookies.get('password'));\n }\n \n handleRemember(rememberVal === 'true');\n }\n \n // eslint-disable-next-line react-hooks/exhaustive-deps \n }, []);\n\n return (\n <>\n \n \"Grant\n \n Hi there\n \n \n {message}\n \n \n
\n handleFormInputChange(\"userNameOrEmail\", element.target.value)}\n />\n\n handleFormInputChange(\"password\", element.target.value)}\n />\n\n handleRemember(event.target.checked)}\n />\n\n \n \n {t('labels.sign_in')}\n \n \n \n \n )\n}\n\nexport default LoginForm;","import { useDispatch } from \"react-redux\";\nimport { styled } from \"@mui/material\";\nimport { useSelector } from \"react-redux\";\nimport LoginForm from \"views/shared/LoginForm\";\nimport { Dialog } from \"@mui/material\";\n\nimport { setLoginDialogOpen } from 'store/Shared.Slice';\n\nconst StyledDialog = styled(Dialog)(({ theme }) => ({\n '& .MuiDialog-paper': {\n maxWidth: 500,\n padding: theme.spacing(4),\n },\n}));\n\nconst LoginPopup = () => {\n const dispatch = useDispatch();\n const { openLoginDialog } = useSelector(state => state.sharedState);\n\n return (\n \n {\n dispatch(setLoginDialogOpen(false));\n window.location.reload()\n }}\n />\n \n )\n}\n\nexport default LoginPopup;","import { useSelector } from 'react-redux';\n\nimport { ThemeProvider } from '@mui/material/styles';\nimport { CssBaseline, StyledEngineProvider } from '@mui/material';\n\n// routing\nimport Routes from 'routes';\n\n// defaultTheme\nimport themes from 'themes';\n\n// project imports\nimport Locales from 'ui-component/Locales';\n// import NavigationScroll from 'layout/NavigationScroll';\n// import RTLLayout from 'ui-component/RTLLayout';\nimport Snackbar from 'ui-component/extended/Snackbar';\n\n// auth provider\nimport { FirebaseProvider } from 'contexts/FirebaseContext';\n// import { JWTProvider } from 'contexts/JWTContext';\n// import { Auth0Provider } from 'contexts/Auth0Context';\n\n//analytics provider\nimport { LogRocketProvider } from 'contexts/LogRocketContext';\n\nimport LoginPopup from 'views/LoginPopup';\n\n// ==============================|| APP ||============================== //\n\nconst App = () => {\n const customization = useSelector((state) => state.customization);\n\n return (\n \n \n \n {/* RTL layout */}\n {/* */}\n \n \n \n \n \n \n \n \n \n \n \n {/* */}\n \n \n );\n};\n\nexport default App;\n","export const TRANSLATIONS_EN_CA = {\n labels: {\n user_name: 'Username',\n password: 'Password',\n reset_password: 'New Password',\n reset_password_confirm: 'Confirm Password',\n login: 'Login',\n sign_up: \"Sign Up\",\n forgot_password: \"Forgot Password?\",\n go_back: \"Go Back\",\n organization: \"Organization\",\n phone: \"Phone\",\n first_name: \"First Name\",\n last_name: \"Last Name\",\n address: \"Address\",\n select: \"Select\",\n country: \"Country\",\n complementary_address: \"Address (line 2)\",\n postal_code: \"Zip Code\",\n city: \"City\",\n state: \"State\",\n stateOrProvince: \"State/Province\",\n billing: \"Billing\",\n use_same_address: \"Use Same Address\",\n loading: \"Loading...\",\n register: \"Register\",\n message: \"Message\",\n error: \"Error\",\n welcome_back: \"Hi, Welcome back\",\n enter_credentials: \"Enter your credentials to continue\",\n dont_have_account: \"Don't have account?\",\n remember_me: \"Remember me\",\n sign_in: \"Sign in\",\n already_have_account: \"Already have an account?\",\n subscription_plan: \"Subscription Plan\",\n country_billing: \"Country Billing\",\n password_recovery: \"Password recovery\",\n password_reset: \"Password Reset\",\n setting_up_account: \"Setting up account\",\n current_password: \"Current Password\",\n new_password: \"New Password\",\n confirm_password: \"Confirm Password\",\n confirming_account: \"Confirming account\",\n accounts_created: \"Accounts created\",\n of: 'of',\n search: \"Search\",\n clear: \"Clear\",\n status: \"Status\",\n actions: \"Actions\",\n add_new_user: \"Add new user\",\n edit_user: \"Edit user\",\n additional_emails: \"Additional E-mails\",\n organization_letterhead: \"Organization Letterhead\",\n company_information: \"Organization Information\",\n company_organization: \"Organization\",\n created_at: \"Created at\",\n change_main_email: \"Change main email address\",\n main_email: \"Main e-mail address\",\n emails_created: \"E-mails created\",\n add_new_additional_email: \"Add new additional e-mail\",\n new_email_address: \"New e-mail address\",\n add_digital_letterhead: \"Add digital letterhead\",\n select_header_style: \"Select letter style\",\n header_only: \"Header only\",\n header_and_footer: \"Header and Footer\",\n email_alert: \"E-mail alert\",\n signature: \"Signature\",\n user_letterhead: \"User Letterhead\",\n user_information: \"User Information\",\n position: \"Position\",\n enable_disable_notifications: \"Enable / Disable notifications\",\n user_name_or_email: \"Username or e-mail\",\n avg_grants_Annually: \"Average Grants Annually\",\n avg_grant_size: \"Average Grant Size\",\n total_assets: \"Total Assets\",\n summary: \"Summary\",\n notes_taken: \"Notes taken\",\n last_report: \"Last report\",\n not_informed: \"Not informed\",\n loading_profile_summary: \"Loading Profile Summary\",\n amount: \"Amount\",\n grants: \"Grants\",\n funders: \"Funders\",\n funders_selected: \"Funders Selected\",\n show_grant_details: \"Show grant details\",\n profile_summary: \"Profile Summary\",\n view_profile: \"View Profile\",\n year: \"Year\",\n avg_grants: \"Avg Grants\",\n recipient: \"Recipient\",\n territories: \"Territories\",\n giving_int: {\n prefix: \"National Giving Interest of\",\n state: \"State\",\n territories: \"Territories\"\n },\n foundation_name: \"Funder Name\",\n import: \"Import\",\n organization_name: \"Organization Name\",\n contact_name: \"Contact Name\",\n state_or_province: \"State / Province\",\n info: \"Info\",\n add_funders_to_project: \"Add Funders to Project\",\n export_to_excel: \"Export to Excel\",\n block_funders: \"Block Funders\",\n province: \"Province\",\n databases: \"Databases\",\n search_result: 'Search Result',\n year: \"Year\",\n amount: \"Amount\",\n location: \"Location\",\n purpose: \"Purpose\",\n recipient: \"Recipient\",\n category: \"Category\",\n sector: \"Sector\",\n not_provided_by: \"Not provided by\",\n keyword: \"Keyword\",\n my_list:\"My List\",\n shared_list:\"Shared List\",\n favorite_name:\"Favorite Name\",\n select_favorite:\"Select a Favorite\",\n close:\"Close\",\n confirm:\"Confirm\",\n description:\"Description\",\n show_saved_search:\"Show saved search\",\n load_selected_saved_search:\"Load Selected Saved Search\",\n rename:\"Rename\",\n remove_save_search:\"Remove saved search\",\n updated_at: \"Updated at\",\n recipient:\"Recipient\",\n year:\"Year\",\n amt:\"AMT\",\n create_user_account:\"Create User Project\",\n edit_user_account: \"Edit User Project\",\n name_project:\"Name of Project\",\n total_project_cost:\"Total Project Cost\",\n start_date:\"Start Date\",\n end_date: \"End Date\",\n delete_project:\"Delete Project\",\n select_director_from_list: \"Select director from the list\",\n enter_custom_director: \"Can't find a director? Enter a custom one instead\",\n select_director: \"Select Director\",\n enter_director_name: \"Enter Director's Name\",\n salutation: \"Salutation\",\n ask_amount: \"Ask Amount\",\n total_amount: \"Total Amount\",\n application_information: \"Application Information\",\n instruction: \"Instructions\",\n restriction: \"Restrictions\",\n deadline: \"Deadline\",\n contact: \"Contact\",\n largest: \"Largest\",\n average: \"Average\",\n median: \"Median\",\n search_result: 'Search Result',\n user_name_or_email: \"Username or e-mail\",\n remove_funder: \"Remove Funders\",\n foundation_exists_other_projects: \"This Funder exists in other projects within your organization\",\n remove_foundations_other_projects: \"Remove funders from other projects\",\n application_info: \"Application Info\",\n this_action_will_remove: \"This action will remove\",\n from_this_project: \"from this project\",\n hide_customized_funders: \"Hide customized funders\",\n project_funders: \"Project Funders\",\n custom_letter: \"Custom Letter\",\n change_project: \"Change Project\",\n return_grant_secretary: \"Return to Grant Secretary\",\n impact_report_letter: \"Impact Report Letter\",\n project_funders_master_document: \"Project Funders / Master Document\",\n master_document: \"Master Document\",\n letter_of_inquiry: \"Letter of Inquiry\",\n proposal: \"Proposal\",\n thank_you_letter: \"Thank you letter\",\n custom_document: \"Custom Document\",\n qualify: \"Qualify\",\n favorites: \"Favorites\",\n favorite_funders: \"Favorite Funders\",\n close: \"Close\",\n add_funders_to_project: \"Add Funders to Project\",\n select_one_or_more_projects: \"Select one or more projects\",\n block_funders: \"Block Funders\",\n print_funder_page: \"Print Funder Page\",\n move_to_previous_funder: \"Move to the previous Funder\",\n move_to_next_funder: \"Move to the next Funder\",\n remove_this_funder_from_qualified: \"Remove this funder from qualified status and exclude from the favorite list.\",\n mark_funder_as_qualified: \"Mark this funder as qualified.\",\n block_funder: \"Block Funder\",\n export_funders_to_excel: \"Export Funders to Excel\",\n funder_name: \"Funder Name\",\n prev: \"Prev.\",\n next: \"Next\",\n previous: \"Previous\",\n visit_website: \"Visit Website\",\n notes: \"Notes\",\n add_note: \"Add Note\",\n company: \"Company\",\n email: \"Email\",\n website: \"Website\",\n contact_infos: \"Contact Informations\",\n other_infos: \"Other Informations\",\n help_center:\"Help Center\",\n profile_settings:\"Profile Settings\",\n hi:\"Hi\",\n user_profile:\"User Profile\",\n logout:\"Logout\"\n },\n errors: {\n model_error: 'Check for errors and try again',\n general_error: 'An error has occurred',\n invalid_token: 'Invalid token',\n confirming_account_error: \"Sorry, there's a problem activating your account\",\n invalid_image: \"Invalid image\",\n inform_crop_area: \"Size Image to conform to required dimensions\",\n funder_not_found: \"Funder not found\",\n file_list_error: \"File list error\",\n funder_not_found: \"Funder not found\",\n select_at_least_one_funder: \"Please select at least one funder before continue\",\n select_one_or_more_funders_delete: \"Select one or more funders to delete\",\n select_one_or_more_funders_block: \"Select one or more funders to block\",\n },\n success: {\n logout_success: 'User logout successfully',\n copied_to_cliboard: 'Copied to clipboard',\n },\n messages: {\n password_recovery_message: \"To have a new password sent to you enter the username and email address you used to register\",\n inform_new_password_message: \"Please enter your new password\",\n setting_up_account_message: \"To activate your account, please enter the password and confirm\",\n confirming_account_wait: \"Please wait while we confirm your account\",\n first_letterhead_message: \"- Letterhead should be approximately 700 x 200 px.\",\n second_letterhead_message: \"- Supported formats are .GIF, .png, .jpeg and .jpg.\",\n third_letterhead_message: \"- Your organization's letterhead will appear at the top of all documents.\",\n check_organization_settings_message: \"Please check your organization profile letterhead settings or contact support.\",\n funders_not_selected_message: 'Please select at least one funder before continuing',\n you_must_select_state: \"You must select a State to enable the City filter.\",\n deselect_all_counties: \"Deselect all counties to enable the City filter.\",\n select_one_favorite_list: 'Please select at least one favorite list or create a new one',\n create_new_favorite_list:\"Create new Favorite List\",\n add_funders_favorite_list: \"Add Funder(s) to Favorites\",\n saved_search_load_successfully:\"Saved search loaded successfully\",\n save_search:\"Save search\",\n delete_project:\"Are you sure you want to delete this project?\",\n deselect_all_counties: \"Deselect all counties to enable the City filter.\",\n funders_not_selected_message: 'Please select at least one funder before continuing',\n are_you_sure: \"Are you sure?\",\n this_action_will_remove_document_funder: \"This action will remove the document for this funder\",\n this_action_will_remove_master_document: \"This action will remove this Master Document\",\n want_to_remove_the_funder: \"Do you want to remove the Funder from this list?\",\n this_will_remove_customized_documents: \"This will remove {{documents}} customized document(s) and return the funder to the Master List. To remove funders(s) permanently delete them from the Master List.\",\n remove_the_funders_from_the_projects: \"Removes the Funders from the projects you selected from the current project.\",\n select_in_dropdown_example: \"e.g. If you select a project in the dropown and it has 3 Funders, 'a', 'b' and 'c' and the project you are working on also has 'a', 'b', 'c', these will be removed from the working project.\",\n this_will_remove_funders_from_this_project: \"This action will remove {{funders}} Funder(s) from this project.\",\n },\n user_menu: {\n profile: 'Profile',\n logout: 'Logout'\n },\n prompt: {\n areYouSure: \"Are you sure?\",\n confirmRemove: \"Confirm Remove\",\n },\n side_menu: {\n administration: 'Administration',\n manage_account: 'Manage Account',\n manage_announcement: 'Announcement',\n manage_subscription_plan: 'Subscription Plan',\n manage_coupons: 'Coupons',\n manage_feedbacks: 'Feedbacks',\n manage_deadlines: 'Deadlines',\n manage_plans: 'Manage Plans',\n account: 'Account',\n user_profile: 'User Profile',\n additional_users: 'Additional Users',\n organization_profile: 'Organization Profile',\n project_manager: 'Project Manager',\n project_list: 'Projects',\n project_archive: 'Archived Projects',\n search_engine: \"Search Engine\",\n search_engine_canada: \"Search Engine - CA (beta)\",\n by_giving_history: 'By Giving History',\n by_name: 'By Name',\n by_director: 'By Director',\n by_year: 'By Year',\n by_deadline: 'By Deadline',\n by_rating: 'By Rating',\n by_custom: 'By Custom',\n document_generator: 'Document Generator',\n inquiry: 'Inquiry',\n proposal: 'Proposal',\n budget: 'Budget',\n custom_letter: 'Custom Letter',\n grant_secretary: 'Grant Secretary - Print',\n manage_funders: 'Manage Funders',\n favorites: 'Favorites',\n blocked_funders: 'Blocked',\n custom_databases: 'Custom Databases',\n by_keyword: 'By Keywords',\n by_international_funding: 'International Funding (PRO)',\n thank_you: 'Thank You',\n impact_report: 'Impact Report',\n previous: \"Previous\"\n },\n buttons: {\n create_account: \"Create account\",\n send: \"Send\",\n reset_password: \"Reset Password\",\n add_user: \"Add User\",\n insert_user: \"Insert User\",\n save_changes: \"Save Changes\",\n update_profile: \"Update Profile\",\n add_email: \"Add E-mail\",\n select_header_file: \"Select header file\",\n select_footer_file: \"Select footer file\",\n update_account: \"Update Account\",\n add_to_favorites: \"Add to Favorites\",\n more: \"More\",\n clear_search: \"Clear Search\",\n search: \"Search\",\n advanced_search: \"Advanced Search\",\n create: \"Create\",\n create_favorite_list: \"Create Favorite List\",\n add: \"Add\",\n confirm: \"Confirm\",\n update:\"Update\",\n confirm_delete:\"Confirm Delete\",\n confirm_remove: \"Confirm Remove\",\n next: \"Next\",\n prev: \"Prev.\",\n add_funder: \"Add Funder\",\n \n },\n input_fields: {\n press_enter: \"Press Enter to add keywords\",\n },\n accountCreated: \"Account created successfully\",\n accountDisabled: \"This account is disabled. For more details contact the administrator.\",\n accountDisabledSuccess: \"Account disabled successfully\",\n accountEnabledSuccess: \"Account enabled successfully\",\n accountNotActivated: \"Your account is not active. Please check your email to activate your account\",\n accountUpdatedSuccess: \"Account updated successfully\",\n additionalEmailNotFound: \"Additional email not found\",\n additionalEmailRemovedSuccess: \"Additional email removed successfully\",\n additionalEmailSavedSuccess: \"Additional email saved successfully\",\n additionalUserInsertSuccess: \"Additional user added successfully\",\n additionalUserUpdateSuccess: \"Additional user updated successfully\",\n addressBillingRequired: \"Address billing is required\",\n alertNotificationSavedSuccess: \"Alert notification saved with success\",\n cityBillingRequired: \"The city billing is required\",\n complementaryAddressBillingRequired: \"Complementary address billing is required\",\n confirmRegisterUserSuccess: \"Thank you for confirming your email\",\n countryBillingRequired: \"The country billing is required\",\n countryNotFound: \"Country not found\",\n emailExists: \"Email address already exists\",\n errorRegistration: \"Model is empty\",\n expirationDateSavedSuccess: \"Expiration date saved with success\",\n footerImageRequired: \"The footer image is required\",\n imageHeightLength: \"Invalid image height\",\n imageWidthLength: \"Invalid image width\",\n invalidEmailAddress: \"Invalid email address\",\n invalidLetterType: \"Invalid letter type\",\n invalidPhoneNumber: \"Invalid phone number\",\n invalidSubscriptionPlan: \"Invalid subscription plan\",\n invalidUserRole: \"Invalid user role\",\n letterheadSavedSuccess: \"Letterhead saved with success\",\n licenseExpired: \"Your license has expired. For more details please contact the administrator\",\n licenseNotFound: \"No sufficient licenses are available. Please contact support@grantadvance.com\",\n loginFailed: \"Invalid user name or password\",\n masterOnly: \"Only master users have access to this resource\",\n notEnoughLicense: \"Your organization don't have any available license. If you want to add licenses please click here to purchase additional licenses\",\n notificationExists: \"Notification already exists\",\n notificationNotFound: \"Notification not found\",\n notificationTypeNotFound: \"Notification type not found\",\n organizationDisabled: \"This organization is disabled. For more details contact the administrator.\",\n organizationMainAddressUpdatedSuccess: \"Organization main address updated with success\",\n organizationNotFound: \"Organization not found\",\n organizationProfileSavedSuccess: \"Organization profile saved with success\",\n passwordModified: \"Password modified successfully\",\n passwordRecovery: \"Please check your email to reset your password.\",\n passwordReset: \"Password reset successfully\",\n postalCodeBillingRequired: \"The postal code is required\",\n profileNotFound: \"Profile not found\",\n provinceOrStateBillingRequired: \"The state is required\",\n provinceOrStateNotFound: \"State not found\",\n sendActivationLinkSuccess: \"Activation e-mail has been send successfully\",\n sendPasswordResetSuccess: \"Password reset e-mail has been send successfully\",\n sendSetupPasswordSuccess: \"Password setup e-mail has been send successfully\",\n separatedLicenceExpirationDateError: \"Expiration date of separated licenses cannot be greater than the expiration date of the main license\",\n settingUpAccountSuccess: \"Your account has been activated successfully. You can now login\",\n signatureSavedSuccess: \"Signature saved successfully\",\n subscriptionPlanNotFound: \"Subscription plan not found\",\n userLogoutSuccess: \"User logout successfully\",\n userNameExists: \"This User name is already taken\",\n userNotAllowed: \"User not allowed to login\",\n userNotFound: \"User not found\",\n userProfileSavedSuccess: \"User profile saved with success\",\n wrongCurrentPassword: \"Incorrect current password\",\n additionalUsersRequired: \"The additional users is required\",\n addressRequired: \"The address is required\",\n amountDaysRequired: \"The amount days is required\",\n amountLicensesRequired: \"The amount of licenses is required\",\n amountMonthsRequired: \"The amount of months is required\",\n amountYearsRequired: \"The amount of years is required\",\n planAmountRequired: \"The plan amount is required\",\n billingAddressLine2Required: \"The complementary billing address is required\",\n billingAddressRequired: \"The billing address is required\",\n billingCityRequired: \"The billing city is required\",\n billingCountryRequired: \"The country billing is required\",\n billingPostalCodeRequired: \"The zip code is required\",\n billingProvinceOrStateRequired: \"The billing state is required\",\n cityRequired: \"The city is required\",\n companyNameRequired: \"The company name is required\",\n businessEinRequired: \"BN/EIN is required\",\n compareConfirmPassword: \"The password and confirmation password do not match.\",\n complementaryAddressRequired: \"The complementary address is required\",\n confirmPasswordRequired: \"The confirmation password is required\",\n countryRequired: \"The country is required\",\n displayPlanRequired: \"The display plan is required\",\n emailRequired: \"The email is required\",\n firstNameRequired: \"The first name is required\",\n headerImageRequired: \"The header image is required\",\n invalidEmail: \"This email is invalid\",\n invalidRole: \"Invalid user role\",\n lastNameRequired: \"The last name is required\",\n licenseAmountRange: \"The number of licenses must be greater than zero\",\n licenseRequired: \"The license is required\",\n newPasswordRequired: \"The new password is required\",\n notificationTypeRequired: \"The Notification type is required\",\n oldPasswordRequired: \"The old password is required\",\n organizationIdRequired: \"The organization id is required\",\n passwordLength: \"The password must be at least 6 and at max 20 characters long.\",\n passwordRequired: \"The password is required\",\n phoneRequired: \"The phone number is required\",\n planDescriptionRequired: \"The plan description is required\",\n postalCodeRequired: \"The zip code is required\",\n provinceOrStateRequired: \"The state is required\",\n roleRequired: \"The role is required\",\n signatureRequired: \"The signature is required\",\n subscriptionPlanNameRequired: \"The subscription plan is required\",\n tokenRequired: \"The token is required\",\n userIdRequired: \"UserId is required\",\n userNameRequired: \"The login e-mail is required\",\n planNameRequired: \"Internal plan name is required\",\n customLetterRequired: \"The custom letter is required\",\n customLetterSavedSuccess: \"Custom letter saved with success\",\n customTagDeleteSuccess: \"Custom tag removed successfully\",\n customTagInsertSuccess: \"Custom tag created successfully\",\n customTagNotFound: \"Custom tag not found\",\n customTagUpdateSuccess: \"Custom tag updated successfully\",\n documentStateInsertSuccess: \"Document state created successfully\",\n inquiryLetterRequired: \"The inquiry letter is required\",\n inquiryLetterSavedSuccess: \"Inquiry letter saved with success\",\n proposalLetterRequired: \"The proposal letter is required\",\n proposalLetterSavedSuccess: \"Proposal letter saved with success\",\n userProjectRequired: \"The user project is required\",\n customDocumentTypeRequired: \"The document type is required\",\n documentAmountRequired: \"The amount is required\",\n documentFlaggedRequired: \"The date is required\",\n documentStateRequired: \"The document state is required\",\n tagDescriptionRequired: \"The tag description is required\",\n tagNameRequired: \"The tag name is required\",\n blockedFundersDeleteAllSuccess: \"All funders unblocked successfully\",\n blockedFundersDeleteSuccess: \"Funder unblocked successfully\",\n blockedFundersInsertSuccess: \"Funder blocked successfully\",\n blockedFundersNotFound: \"Blocked Funder not found\",\n customDatabaseDeleteSuccess: \"Custom database successfully removed\",\n customDatabaseFieldsMapRequired: \"Please. Configure all the required fields before continue\",\n customDatabaseNotFound: \"Custom database not found\",\n customDatabaseUserFieldsEmpty: \"The list of configuration fields is empty\",\n favoriteDeleteSuccess: \"Favorite deleted successfully\",\n favoriteDuplicateSuccess: \"Favorite duplicated successfully\",\n favoriteFundersDeleteSuccess: \"Favorite funder deleted successfully\",\n favoriteFundersInsertSuccess: \"{{funders}} funders added to {{favCount}} favorites list\",\n favoriteFundersNotFound: \"Favorite funder not found\",\n favoriteFundersUpdateSuccess: \"Favorite funder update successfully\",\n favoriteInsertSuccess: \"Favorite created successfully\",\n favoriteNotFound: \"Favorite not found\",\n favoriteUpdateSuccess: \"Favorite update successfully\",\n fundersListEmpty: \"The funders list is empty\",\n noteDeleteSuccess: \"Note deleted successfully\",\n noteInsertSuccess: \"Note created successfully\",\n noteNotFound: \"Note not found\",\n noteUpdateSuccess: \"Note updated successfully\",\n noteRequired: \"Note is required before attaching any documents\",\n notificationDateRequired: \"The notification date is required\",\n emailListRequired: \"Select the e-mail\",\n customDatabaseFileRequired: \"The excel file is required\",\n favoriteNameRequired: \"The favorite name is required\",\n favoriteRequired: \"The favorite is required\",\n foundationRequired: \"The funder is required\",\n jsonUserFieldsMapRequired: \"Please. Configure all the required fields before continue\",\n labelTypeRequired: \"The type of label is required\",\n letterTypeRequired: \"Select the type of document for print\",\n noteDescriptionRequired: \"The description is required\",\n noteTitleRequired: \"The title is required\",\n bundleInsertSuccess: \"Bundle created successfully\",\n bundleNotFound: \"Bundle not found\",\n bundleTaskCount: \"Enter at least one task\",\n bundleTaskNotFound: \"One or more task cannot be found\",\n flagDateRequired: \"The date is required\",\n flagUpdateSuccess: \"Flag updated successfully\",\n projectBudgetCategoryDescriptionRequired: \"The category description is required\",\n projectBudgetDeleteSuccess: \"Budget removed successfully\",\n projectBudgetDescriptionExists: \"This description already exists\",\n projectBudgetInsertSuccess: \"Budget added successfully\",\n projectBudgetNotFound: \"Budget not found\",\n projectBudgetResetSuccess: \"Budget reseted successfully\",\n projectBudgetUpdateSuccess: \"Budget updated successfully\",\n projectEndDateRequired: \"The end date is required\",\n projectFundersDeleteSuccess: \"Project funders removed successfully\",\n projectFundersEmpty: \"Please select at least one funder before continuing\",\n projectFundersInsertSuccess: \"{{funderAmount}} funders added to {{projectName}}\",\n projectStartDateRequired: \"The start date is required\",\n taskDeleteSuccess: \"Task removed successfully\",\n taskEditSuccess: \"Task updated successfully\",\n taskInsertSuccess: \"Task created successfully\",\n taskListEmpty: \"The task list is empty\",\n taskNotFound: \"Task not found\",\n userProjectArchivedSuccess: \"User project archived successfully\",\n userProjectDeleteSuccess: \"User project deleted successfully\",\n userProjectEndDateRequired: \"The end date is required\",\n userProjectInsertSuccess: \"User project created successfully\",\n userProjectListEmpty: \"Select one or more projects\",\n userProjectNotFound: \"Project not found\",\n userProjectStartDateInvalid: \"The start date is invalid\",\n userProjectStartDateRequired: \"The start date is required\",\n userProjectUnarchivedSuccess: \"User project unarchived successfully\",\n userProjectUpdateSuccess: \"User project updated successfully\",\n budgetTypeInvalid: \"The budget type is invalid\",\n bundleDescriptionRequired: \"The bundle description is required\",\n bundleNameRequired: \"The bundle name is required\",\n bundleTaskRequired: \"The task list is required\",\n flagAmountInvalid: \"The amount is invalid\",\n flagAmountRequired: \"The amount is required\",\n flagStatusRequired: \"The status is required\",\n foundationNameRequired: \"The funder name is required\",\n foundationSourceTypeRequired: \"The funder source is required\",\n profileIdRequired: \"The profile is required\",\n projectBudgetAmountRequired: \"The budget amount is required\",\n projectBudgetDescriptionRequired: \"The budget description is required\",\n projectCostInvalid: \"The project cost is invalid\",\n projectCostRequired: \"The project cost is required\",\n projectDescriptionRequired: \"The project description is required\",\n projectNameRequired: \"The project name is required\",\n projectStatusInvalid: \"The project status is invalid\",\n taskDescriptionRequired: \"The task description is required\",\n taskNameRequired: \"The task name is required\",\n foundationInsertSuccess: \"Funder added successfully\",\n savedSearchDeleteSuccess: \"Search deleted successfully\",\n savedSearchDescriptionExists: \"This description already exists\",\n savedSearchInsertSuccess: \"Search added successfully\",\n savedSearchNotFound: \"Saved search not found\",\n savedSearchTypeInvalid: \"The saved search type is invalid\",\n savedSearchUpdateSuccess: \"Search updated successfully\",\n descriptionRequired: \"The description is required\",\n jsonFieldsRequired: \"The search field is required\",\n searchTypeRequired: \"The search type is required\",\n userProjectCompleted: \"This Project is marked as completed\",\n sendOnlineApplicationSuccess: \"Online application message successfully sent\",\n sendSuggestionSuccess: \"Suggestion successfully sent\",\n urlRequired: \"The url is required\",\n fundersRemovedSuccess: \"Removed {{fundersRemoved}} from other projects\",\n noteSubjectRequired: \"The subject is required\",\n accountDeleted: \"This account was deleted. Contact the administrator\",\n userRemovedSuccess: \"Account removed successfully\",\n userNameOrEmailRequired: \"The User or e-mail name is required\",\n fieldRequired: \"This field is required\",\n pickupNewPassword: \"Please pick up new password\",\n passwordMinCharacter: \"Please enter at least {{minimumCharaters}} characters\",\n enterSameValueAgain: \"Please enter the same value again\",\n feedbackSubmitted: \"Feedback submitted successfully\",\n feedbackInvalidGrantSize: \"The grant size is invalid or too big\",\n feedbackReviewUpdated: \"Feedback review updated\",\n announcementTitleRequired: \"The announcement title is required\",\n announcementDescriptionRequired: \"The announcement description is required\",\n announcementReleaseDateRequired: \"The announcement release date is required\",\n announcementReleaseDateInvalid: \"Past dates are not allowed for the Release date\",\n announcementTypeRequired: \"The announcement type is required\",\n announcementNotFound: \"Announcement not found\",\n announcementInsertSuccess: \"Announcement added successfully\",\n announcementUpdateSuccess: \"Announcement updated successfully\",\n announcementDeleteSuccess: \"Announcement deleted successfully\",\n funderDisqualifiedSuccess: \"Funder disqualified successfully\",\n funderQualifiedSuccess: \"Funder qualified successfully\",\n funderPausedSuccess: \"Funder qualification successfully paused\",\n couponNameRequired: \"The coupon name is required\",\n couponCodeRequired: \"The coupon code is required\",\n couponCodeFormatInvalid: \"The coupon code is invalid\",\n codeLengthInvalid: \"Maximum of 15 characters\",\n couponExpirationDateRequired: \"The coupon expiration date is required\",\n couponExpirationMaxValue: \"The date cannot be more than 6 months from today\",\n couponExpirationDateInvalid: \"Invalid expiration date\",\n couponSubscriptionPlanRequired: \"The coupon subscription plan is required\",\n couponExtraMonthsAmountInvalid: \"The extra month only allow number 1 to 99\",\n couponDiscountAmountInvalid: \"The discount only allow number 1 to 90\",\n couponCodeAlreadyExist: \"The coupon code has already been redeemed\",\n couponSubscriptionNotFound: \"The subscription plan not found\",\n couponNotFound: \"Coupon not found\",\n couponSelectType: \"Please choose between Extra Time or Discount\",\n couponInsertSuccess: \"Coupon added succesfully\",\n couponUpdateSuccess: \"Coupon updated succesfully\",\n couponDeleteSuccess: \"Coupon deleted successfully\",\n couponPauseUpdateSuccess: \"Coupon updated successfully\",\n deadlineEINRequired: \"The EIN is required\",\n deadlineFoundationNameRequired: \"The funder name is required\",\n deadlineCategoryRequired: \"The category is required\",\n deadlineURLRequired: \"The deadline URL is required\",\n deadlineCountryRequired: \"The country is required\",\n deadlineDateInvalid: \"Only allow future dates\",\n deadlineAmountToobig: \"The grant amount too big\",\n deadlineImportSuccess: \"{{fileName}} imported successfully\",\n deadlineImportSuccessWithWarning: \"The file was imported successfully. However, some items have invalid data. Please update them accordingly\",\n deadlineUpdateSuccess: \"Deadline updated successfully\",\n deadlineDeleteSuccess: \"Deadline deleted successfully\",\n deadlineRemovePopupMessage: \"This action will remove this dealine\",\n deadlineReviewCorrectInformation: \"Please review and correct the information\",\n deadlineInvalidFoundationDataField: \"The provided funder data contains an invalid entry for the {{invalidData}} field.\",\n deadlineInvalidFoundationDataFields: \"The provided funder data contains invalid entries for the following fields: {{invalidData}}.\",\n deadlineImportFilePrompt: \"Do you want to import this file?\",\n thankYouLetterSavedSuccess: \"Thank you letter saved with success\",\n impactReportLetterSavedSuccess: \"Impact report letter saved with success\",\n historyTypeRequired: \"The history type is required\",\n startDateRequired: \"Start Date is required\",\n startDateInvalid: \"Please select a date that is later than today\",\n dateMin: \"Please select a date higher than today\",\n referralSubmitted: \"Referral submitted successfully. Refer Another Charity\",\n templateApplying: \"Applying please wait...\",\n templateApplyWarning: \"Applying this may take a few minutes to complete\",\n historyTimeline: {\n fuderAdded: \"Funder added on project\",\n funderRemoved: \"Funder removed on project\",\n noteAdded: \"Note added\",\n foundationProfileView: \"Funder profile viewed on project\",\n customDoc: \"Customized document\",\n masterDoc: \"Master document\",\n createdOnProject: \"created on project\",\n deletedOnProject: \"deleted on project\",\n statusUpdated: \"Status updated to\",\n onProject: \"on project\"\n },\n referralNameCharityRequired: \"Name of charity is required\",\n referralNameContactRequired: \"Name of contact is required\",\n};\n","import i18n from \"i18next\";\nimport { initReactI18next } from \"react-i18next\";\nimport LanguageDetector from \"i18next-browser-languagedetector\";\n \nimport { TRANSLATIONS_EN_CA } from './en-CA/translations';\nimport { TRANSLATIONS_EN_US } from \"./en-US/translations\";\nimport { TRANSLATIONS_ES_MX } from \"./es-MX/translations\";\nimport { TRANSLATIONS_FR_CA } from \"./fr-CA/translations\";\n\nconst lang = localStorage.getItem('i18nextLng');\n\ni18n\n .use(LanguageDetector)\n .use(initReactI18next)\n .init({\n lng: \"en-CA\",\n resources: {\n \"en-CA\": {\n translation: TRANSLATIONS_EN_CA\n },\n \"en-US\": {\n translation: TRANSLATIONS_EN_US\n },\n \"es-MX\": {\n translation: TRANSLATIONS_ES_MX\n },\n \"fr-CA\": {\n translation: TRANSLATIONS_FR_CA\n },\n \n }\n });\n \n if (lang) {\n i18n.changeLanguage(lang); \n }\n\n//i18n.changeLanguage(\"fr-CA\");\n//i18n.changeLanguage(\"es-MX\");","export const TRANSLATIONS_EN_US = {\n labels: {\n user_name: 'Username',\n password: 'Password',\n reset_password: 'New Password',\n reset_password_confirm: 'Confirm Password',\n login: 'Login',\n sign_up: \"Sign Up\",\n forgot_password: \"Forgot Password?\",\n go_back: \"Go Back\",\n organization: \"Organization\",\n phone: \"Phone\",\n first_name: \"First Name\",\n last_name: \"Last Name\",\n address: \"Address\",\n select: \"Select\",\n country: \"Country\",\n complementary_address: \"Address (line 2)\",\n postal_code: \"Zip Code\",\n city: \"City\",\n state: \"State\",\n stateOrProvince: \"State/Province\",\n billing: \"Billing\",\n use_same_address: \"Use Same Address\",\n loading: \"Loading...\",\n register: \"Register\",\n message: \"Message\",\n error: \"Error\",\n welcome_back: \"Hi, Welcome back\",\n enter_credentials: \"Enter your credentials to continue\",\n dont_have_account: \"Don't have account?\",\n remember_me: \"Remember me\",\n sign_in: \"Sign in\",\n already_have_account: \"Already have an account?\",\n subscription_plan: \"Subscription Plan\",\n country_billing: \"Country Billing\",\n password_recovery: \"Password recovery\",\n password_reset: \"Password Reset\",\n setting_up_account: \"Setting up account\",\n current_password: \"Current Password\",\n new_password: \"New Password\",\n confirm_password: \"Confirm Password\",\n confirming_account: \"Confirming account\",\n accounts_created: \"Accounts created\",\n of: 'of',\n search: \"Search\",\n status: \"Status\",\n actions: \"Actions\",\n add_new_user: \"Add new user\",\n edit_user: \"Edit user\",\n additional_emails: \"Additional E-mails\",\n organization_letterhead: \"Organization Letterhead\",\n company_information: \"Organization Information\",\n company_organization: \"Organization\",\n created_at: \"Created at\",\n change_main_email: \"Change main email address\",\n main_email: \"Main e-mail address\",\n emails_created: \"E-mails created\",\n add_new_additional_email: \"Add new additional e-mail\",\n new_email_address: \"New e-mail address\",\n add_digital_letterhead: \"Add digital letterhead\",\n select_header_style: \"Select letter style\",\n header_only: \"Header only\",\n header_and_footer: \"Header and Footer\",\n email_alert: \"E-mail alert\",\n signature: \"Signature\",\n user_letterhead: \"User Letterhead\",\n user_information: \"User Information\",\n position: \"Position\",\n enable_disable_notifications: \"Enable / Disable notifications\",\n user_name_or_email: \"Username or e-mail\",\n avg_grants_Annually: \"Average Grants Annually\",\n avg_grant_size: \"Average Grant Size\",\n total_assets: \"Total Assets\",\n summary: \"Summary\",\n notes_taken: \"Notes taken\",\n last_report: \"Last report\",\n not_informed: \"Not informed\",\n loading_profile_summary: \"Loading Profile Summary\",\n amount: \"Amount\",\n grants: \"Grants\",\n funders: \"Funders\",\n funders_selected: \"Funders Selected\",\n show_grant_details: \"Show grant details\",\n profile_summary: \"Profile Summary\",\n view_profile: \"View Profile\",\n year: \"Year\",\n avg_grants: \"Avg Grants\",\n recipient: \"Recipient\",\n territories: \"Territories\",\n giving_int: {\n prefix: \"National Giving Interest of\",\n state: \"State\",\n territories: \"Territories\"\n },\n foundation_name: \"Funder Name\",\n import: \"Import\",\n year: \"Year\",\n amount: \"Amount\",\n location: \"Location\",\n purpose: \"Purpose\",\n recipient: \"Recipient\",\n category: \"Category\",\n sector: \"Sector\",\n not_provided_by: \"Not provided by\",\n keyword: \"Keyword\",\n my_list:\"My List\",\n shared_list:\"Shared List\",\n favorite_name:\"Favorite Name\",\n select_favorite:\"Select a Favorite\",\n close:\"Close\",\n confirm:\"Confirm\",\n description:\"Description\",\n show_saved_search:\"Show saved search\",\n load_selected_saved_search:\"Load Selected Saved Search\",\n rename:\"Rename\",\n remove_save_search:\"Remove saved search\",\n updated_at: \"Updated at\",\n recipient:\"Recipient\",\n year:\"Year\",\n amt:\"AMT\",\n create_user_account:\"Create User Project\",\n edit_user_account:\"Edit User Project\",\n name_project:\"Name of Project\",\n total_project_cost:\"Total Project Cost\",\n start_date:\"Start Date\",\n end_date: \"End Date\",\n select_director_from_list: \"Select director from the list\",\n enter_custom_director: \"Can't find a director? Enter a custom one instead\",\n enter_director_name: \"Enter Director's Name\",\n select_director: \"Select Director\",\n salutation: \"Salutation\",\n ask_amount: \"Ask Amount\",\n total_amount: \"Total Amount\",\n application_information: \"Application Information\",\n instruction: \"Instructions\",\n restriction: \"Restrictions\",\n deadline: \"Deadline\",\n contact: \"Contact\",\n delete_project:\"Delete Project\",\n user_name_or_email: \"Username or e-mail\",\n remove_funder: \"Remove Funders\",\n foundation_exists_other_projects: \"This funder exists in other projects within your organization\",\n remove_foundations_other_projects: \"Remove funders from other projects\",\n application_info: \"Application Info\",\n average: \"Average\",\n median: \"Median\",\n largest: \"Largest\",\n this_action_will_remove: \"This action will remove\",\n from_this_project: \"from this project\",\n hide_customized_funders: \"Hide customized funders\",\n project_funders: \"Project Funders\",\n custom_letter: \"Custom Letter\",\n change_project: \"Change Project\",\n return_grant_secretary: \"Return to Grant Secretary\",\n impact_report_letter: \"Impact Report Letter\",\n project_funders_master_document: \"Project Funders / Master Document\",\n master_document: \"Master Document\",\n letter_of_inquiry: \"Letter of Inquiry\",\n proposal: \"Proposal\",\n thank_you_letter: \"Thank you letter\",\n custom_document: \"Custom Document\",\n qualify: \"Qualify\",\n favorites: \"Favorites\",\n favorite_funders: \"Favorite Funders\",\n close: \"Close\",\n add_funders_to_project: \"Add Funders to Project\",\n select_one_or_more_projects: \"Select one or more projects\",\n block_funders: \"Block Funders\",\n print_funder_page: \"Print Funder Page\",\n move_to_previous_funder: \"Move to the previous Funder\",\n move_to_next_funder: \"Move to the next Funder\",\n remove_this_funder_from_qualified: \"Remove this funder from qualified status and exclude from the favorite list.\",\n mark_funder_as_qualified: \"Mark this funder as qualified.\",\n block_funder: \"Block Funder\",\n export_funders_to_excel: \"Export funders to Excel\",\n funder_name: \"Funder Name\",\n prev: \"Prev.\",\n next: \"Next\",\n previous: \"Previous\",\n visit_website: \"Visit Website\",\n notes: \"Notes\",\n add_note: \"Add Note\",\n company: \"Company\",\n email: \"Email\",\n website: \"Website\",\n contact_infos: \"Contact Informations\",\n other_infos: \"Other Informations\",\n help_center:\"Help Center\",\n profile_settings:\"Profile Settings\",\n hi:\"Hi\",\n user_profile:\"User Profile\",\n logout:\"Logout\"\n },\n errors: {\n model_error: 'Check for errors and try again',\n general_error: 'An error has occurred',\n invalid_token: 'Invalid token',\n confirming_account_error: \"Sorry, there's a problem activating your account\",\n invalid_image: \"Invalid image\",\n inform_crop_area: \"Size Image to conform to required dimensions\",\n funder_not_found: \"Funder not found\",\n select_at_least_one_funder: \"Please select at least one funder before continue\",\n select_one_or_more_funders_delete: \"Select one or more funders to delete\",\n select_one_or_more_funders_block: \"Select one or more funders to block\",\n },\n success: {\n logout_success: 'User logout successfully',\n copied_to_cliboard: 'Copied to clipboard',\n },\n messages: {\n password_recovery_message: \"To have a new password sent to you enter the username and email address you used to register\",\n inform_new_password_message: \"Please enter your new password\",\n setting_up_account_message: \"To activate your account, please enter the password and confirm\",\n confirming_account_wait: \"Please wait while we confirm your account\",\n first_letterhead_message: \"- Letterhead should be approximately 700 x 200 px.\",\n second_letterhead_message: \"- Supported formats are .GIF, .png, .jpeg and .jpg.\",\n third_letterhead_message: \"- Your organization's letterhead will appear at the top of all documents.\",\n funders_not_selected_message: 'Please select at least one funder before continuing',\n select_one_favorite_list: 'Please select at least one favorite list or create a new one',\n create_new_favorite_list:\"Create new Favorite List\",\n add_funders_favorite_list: \"Add Funder(s) to Favorites\",\n delete_project:\"Are you sure you want to delete this project?\",\n check_organization_settings_message: \"Please check your organization profile letterhead settings or contact support.\",\n funders_not_selected_message: 'Please select at least one funder before continuing',\n are_you_sure: \"Are you sure?\",\n this_action_will_remove_document_funder: \"This action will remove the document for this funder\",\n this_action_will_remove_master_document: \"This action will remove this Master Document\",\n want_to_remove_the_funder: \"Do you want to remove the funder from this list?\",\n this_will_remove_customized_documents: \"This will remove {{documents}} customized document(s) and return the funder to the Master List. To remove funders(s) permanently delete them from the Master List.\",\n remove_the_funders_from_the_projects: \"Removes the Funders from the projects you selected from the current project.\",\n select_in_dropdown_example: \"e.g. If you select a project in the dropown and it has 3 funders, 'a', 'b' and 'c' and the project you are working on also has 'a', 'b', 'c', these will be removed from the working project.\",\n this_will_remove_funders_from_this_project: \"This action will remove {{funders}} funder(s) from this project.\",\n },\n user_menu: {\n profile: 'Profile',\n logout: 'Logout'\n },\n prompt: {\n areYouSure: \"Are you sure?\",\n confirmRemove: \"Confirm Remove\",\n },\n side_menu: {\n administration: 'Administration',\n manage_account: 'Manage Account',\n manage_announcement: 'Announcement',\n manage_subscription_plan: 'Subscription Plan',\n manage_coupons: 'Coupons',\n manage_feedbacks: 'Feedbacks',\n manage_deadlines: 'Deadlines',\n manage_plans: 'Manage Plans',\n account: 'Account',\n user_profile: 'User Profile',\n additional_users: 'Additional Users',\n organization_profile: 'Organization Profile',\n project_manager: 'Project Manager',\n project_list: 'Projects',\n project_archive: 'Archived Projects',\n search_engine: \"Search Engine\",\n search_engine_canada: \"Search Engine - CA (beta)\",\n by_giving_history: 'By Giving History',\n by_name: 'By Name',\n by_director: 'By Director',\n by_year: 'By Year',\n by_deadline: 'By Deadline',\n by_rating: 'By Rating',\n by_custom: 'By Custom',\n document_generator: 'Document Generator',\n inquiry: 'Inquiry',\n proposal: 'Proposal',\n budget: 'Budget',\n custom_letter: 'Custom Letter',\n grant_secretary: 'Grant Secretary - Print',\n manage_funders: 'Manage Funders',\n favorites: 'Favorites',\n blocked_funders: 'Blocked',\n custom_databases: 'Custom Databases',\n by_keyword: 'By Keywords',\n by_international_funding: 'International Funding (PRO)',\n thank_you: 'Thank You',\n impact_report: 'Impact Report',\n previous: \"Previous\"\n },\n buttons: {\n create_account: \"Create account\",\n send: \"Send\",\n reset_password: \"Reset Password\",\n add_user: \"Add User\",\n insert_user: \"Insert User\",\n save_changes: \"Save Changes\",\n update_profile: \"Update Profile\",\n add_email: \"Add E-mail\",\n select_header_file: \"Select header file\",\n select_footer_file: \"Select footer file\",\n update_account: \"Update Account\",\n create: \"Create\",\n create_favorite_list: \"Create Favorite List\",\n add: \"Add\",\n confirm: \"Confirm\",\n confirm_delete:\"Confirm Delete\",\n confirm_remove: \"Confirm Remove\",\n next: \"Next\",\n prev: \"Prev.\",\n add_funder: \"Add Funder\",\n \n },\n input_fields: {\n press_enter: \"Press Enter to add keywords\",\n },\n accountCreated: \"Account created successfully\",\n accountDisabled: \"This account is disabled. For more details contact the administrator.\",\n accountDisabledSuccess: \"Account disabled successfully\",\n accountEnabledSuccess: \"Account enabled successfully\",\n accountNotActivated: \"Your account is not active. Please check your email to activate your account\",\n accountUpdatedSuccess: \"Account updated successfully\",\n additionalEmailNotFound: \"Additional email not found\",\n additionalEmailRemovedSuccess: \"Additional email removed successfully\",\n additionalEmailSavedSuccess: \"Additional email saved successfully\",\n additionalUserInsertSuccess: \"Additional user added successfully\",\n additionalUserUpdateSuccess: \"Additional user updated successfully\",\n addressBillingRequired: \"Address billing is required\",\n alertNotificationSavedSuccess: \"Alert notification saved with success\",\n cityBillingRequired: \"The city billing is required\",\n complementaryAddressBillingRequired: \"Complementary address billing is required\",\n confirmRegisterUserSuccess: \"Thank you for confirming your email\",\n countryBillingRequired: \"The country billing is required\",\n countryNotFound: \"Country not found\",\n emailExists: \"Email address already exists\",\n errorRegistration: \"Model is empty\",\n expirationDateSavedSuccess: \"Expiration date saved with success\",\n footerImageRequired: \"The footer image is required\",\n imageHeightLength: \"Invalid image height\",\n imageWidthLength: \"Invalid image width\",\n invalidEmailAddress: \"Invalid email address\",\n invalidLetterType: \"Invalid letter type\",\n invalidPhoneNumber: \"Invalid phone number\",\n invalidSubscriptionPlan: \"Invalid subscription plan\",\n invalidUserRole: \"Invalid user role\",\n letterheadSavedSuccess: \"Letterhead saved with success\",\n licenseExpired: \"Your license has expired. For more details please contact the administrator\",\n licenseNotFound: \"No sufficient licenses are available. Please contact support@grantadvance.com\",\n loginFailed: \"Invalid user name or password\",\n masterOnly: \"Only master users have access to this resource\",\n notEnoughLicense: \"Your organization don't have any available license. If you want to add licenses please click here to purchase additional licenses\",\n notificationExists: \"Notification already exists\",\n notificationNotFound: \"Notification not found\",\n funderQualifiedSuccess: \"Funder qualified successfully\",\n funderDisqualifiedSuccess: \"Funder disqualified successfully\",\n funderPausedSuccess: \"Funder qualification successfully paused\",\n notificationTypeNotFound: \"Notification type not found\",\n organizationDisabled: \"This organization is disabled. For more details contact the administrator.\",\n organizationMainAddressUpdatedSuccess: \"Organization main address updated with success\",\n organizationNotFound: \"Organization not found\",\n organizationProfileSavedSuccess: \"Organization profile saved with success\",\n passwordModified: \"Password modified successfully\",\n passwordRecovery: \"Please check your email to reset your password.\",\n passwordReset: \"Password reset successfully\",\n postalCodeBillingRequired: \"The zip code is required\",\n profileNotFound: \"Profile not found\",\n provinceOrStateBillingRequired: \"The state is required\",\n help_center:\"Help Center\",\n profile_settings:\"Profile Settings\",\n hi:\"Hi\",\n user_profile:\"User Profile\",\n logout:\"Logout\",\n provinceOrStateNotFound: \"State not found\",\n sendActivationLinkSuccess: \"Activation e-mail has been send successfully\",\n sendPasswordResetSuccess: \"Password reset e-mail has been send successfully\",\n sendSetupPasswordSuccess: \"Password setup e-mail has been send successfully\",\n separatedLicenceExpirationDateError: \"Expiration date of separated licenses cannot be greater than the expiration date of the main license\",\n settingUpAccountSuccess: \"Your account has been activated successfully. You can now login\",\n signatureSavedSuccess: \"Signature saved successfully\",\n subscriptionPlanNotFound: \"Subscription plan not found\",\n userLogoutSuccess: \"User logout successfully\",\n userNameExists: \"This User name is already taken\",\n userNotAllowed: \"User not allowed to login\",\n userNotFound: \"User not found\",\n userProfileSavedSuccess: \"User profile saved with success\",\n wrongCurrentPassword: \"Incorrect current password\",\n additionalUsersRequired: \"The additional users is required\",\n addressRequired: \"The address is required\",\n amountDaysRequired: \"The amount days is required\",\n amountLicensesRequired: \"The amount of licenses is required\",\n planAmountRequired: \"The plan amount is required\",\n amountMonthsRequired: \"The amount of months is required\",\n amountYearsRequired: \"The amount of years is required\",\n billingAddressLine2Required: \"The complementary billing address is required\",\n billingAddressRequired: \"The billing address is required\",\n billingCityRequired: \"The billing city is required\",\n billingCountryRequired: \"The country billing is required\",\n billingPostalCodeRequired: \"The zip code is required\",\n billingProvinceOrStateRequired: \"The billing state is required\",\n cityRequired: \"The city is required\",\n companyNameRequired: \"The company name is required\",\n businessEinRequired: \"BN/EIN is required\",\n compareConfirmPassword: \"The password and confirmation password do not match.\",\n complementaryAddressRequired: \"The complementary address is required\",\n confirmPasswordRequired: \"The confirmation password is required\",\n countryRequired: \"The country is required\",\n displayPlanRequired: \"The display plan is required\",\n emailRequired: \"The email is required\",\n firstNameRequired: \"The first name is required\",\n headerImageRequired: \"The header image is required\",\n invalidEmail: \"This email is invalid\",\n invalidRole: \"Invalid user role\",\n lastNameRequired: \"The last name is required\",\n licenseAmountRange: \"The number of licenses must be greater than zero\",\n licenseRequired: \"The license is required\",\n newPasswordRequired: \"The new password is required\",\n notificationTypeRequired: \"The Notification type is required\",\n oldPasswordRequired: \"The old password is required\",\n organizationIdRequired: \"The organization id is required\",\n passwordLength: \"The {0} must be at least {2} and at max {1} characters long.\",\n passwordRequired: \"The password is required\",\n phoneRequired: \"The phone number is required\",\n planDescriptionRequired: \"The plan description is required\",\n postalCodeRequired: \"The zip code is required\",\n provinceOrStateRequired: \"The state is required\",\n roleRequired: \"The role is required\",\n signatureRequired: \"The signature is required\",\n subscriptionPlanNameRequired: \"The subscription plan is required\",\n tokenRequired: \"The token is required\",\n userIdRequired: \"UserId is required\",\n userNameRequired: \"The login e-mail is required\",\n planNameRequired: \"Internal plan name is required\",\n customLetterRequired: \"The custom letter is required\",\n customLetterSavedSuccess: \"Custom letter saved with success\",\n customTagDeleteSuccess: \"Custom tag removed successfully\",\n customTagInsertSuccess: \"Custom tag created successfully\",\n customTagNotFound: \"Custom tag not found\",\n customTagUpdateSuccess: \"Custom tag updated successfully\",\n documentStateInsertSuccess: \"Document state created successfully\",\n inquiryLetterRequired: \"The inquiry letter is required\",\n inquiryLetterSavedSuccess: \"Inquiry letter saved with success\",\n proposalLetterRequired: \"The proposal letter is required\",\n proposalLetterSavedSuccess: \"Proposal letter saved with success\",\n userProjectRequired: \"The user project is required\",\n customDocumentTypeRequired: \"The document type is required\",\n documentAmountRequired: \"The amount is required\",\n documentFlaggedRequired: \"The date is required\",\n documentStateRequired: \"The document state is required\",\n tagDescriptionRequired: \"The tag description is required\",\n tagNameRequired: \"The tag name is required\",\n blockedFundersDeleteAllSuccess: \"All funders unblocked successfully\",\n blockedFundersDeleteSuccess: \"Funder unblocked successfully\",\n blockedFundersInsertSuccess: \"Funder blocked successfully\",\n blockedFundersNotFound: \"Blocked Funder not found\",\n customDatabaseDeleteSuccess: \"Custom database successfully removed\",\n customDatabaseFieldsMapRequired: \"Please. Configure all the required fields before continue\",\n customDatabaseNotFound: \"Custom database not found\",\n customDatabaseUserFieldsEmpty: \"The list of configuration fields is empty\",\n favoriteDeleteSuccess: \"Favorite deleted successfully\",\n favoriteDuplicateSuccess: \"Favorite duplicated successfully\",\n favoriteFundersDeleteSuccess: \"Favorite funder deleted successfully\",\n favoriteFundersInsertSuccess: \"{{funders}} funders added to {{favCount}} favorites list\",\n favoriteFundersNotFound: \"Favorite funder not found\",\n favoriteFundersUpdateSuccess: \"Favorite funder update successfully\",\n favoriteInsertSuccess: \"Favorite created successfully\",\n favoriteNotFound: \"Favorite not found\",\n favoriteUpdateSuccess: \"Favorite update successfully\",\n fundersListEmpty: \"The funders list is empty\",\n noteDeleteSuccess: \"Note deleted successfully\",\n noteInsertSuccess: \"Note created successfully\",\n noteNotFound: \"Note not found\",\n noteUpdateSuccess: \"Note updated successfully\",\n noteRequired: \"Note is required before attaching any documents\",\n notificationDateRequired: \"The notification date is required\",\n emailListRequired: \"Select the e-mail\",\n customDatabaseFileRequired: \"The excel file is required\",\n favoriteNameRequired: \"The favorite name is required\",\n favoriteRequired: \"The favorite is required\",\n foundationRequired: \"The funder is required\",\n jsonUserFieldsMapRequired: \"Please. Configure all the required fields before continue\",\n labelTypeRequired: \"The type of label is required\",\n letterTypeRequired: \"Select the type of document for print\",\n noteDescriptionRequired: \"The description is required\",\n noteTitleRequired: \"The title is required\",\n bundleInsertSuccess: \"Bundle created successfully\",\n bundleNotFound: \"Bundle not found\",\n bundleTaskCount: \"Enter at least one task\",\n bundleTaskNotFound: \"One or more task cannot be found\",\n flagDateRequired: \"The date is required\",\n flagUpdateSuccess: \"Flag updated successfully\",\n projectBudgetCategoryDescriptionRequired: \"The category description is required\",\n projectBudgetDeleteSuccess: \"Budget removed successfully\",\n projectBudgetDescriptionExists: \"This description already exists\",\n projectBudgetInsertSuccess: \"Budget added successfully\",\n projectBudgetNotFound: \"Budget not found\",\n projectBudgetResetSuccess: \"Budget reseted successfully\",\n projectBudgetUpdateSuccess: \"Budget updated successfully\",\n projectEndDateRequired: \"The end date is required\",\n projectFundersDeleteSuccess: \"Project funders removed successfully\",\n projectFundersEmpty: \"Please select at least one funder before continuing\",\n projectFundersInsertSuccess: \"{{funderAmount}} funders added to {{projectName}}\",\n projectStartDateRequired: \"The start date is required\",\n taskDeleteSuccess: \"Task removed successfully\",\n taskEditSuccess: \"Task updated successfully\",\n taskInsertSuccess: \"Task created successfully\",\n taskListEmpty: \"The task list is empty\",\n taskNotFound: \"Task not found\",\n userProjectArchivedSuccess: \"User project archived successfully\",\n userProjectDeleteSuccess: \"User project deleted successfully\",\n userProjectEndDateRequired: \"The end date is required\",\n userProjectInsertSuccess: \"User project created successfully\",\n userProjectListEmpty: \"Select one or more projects\",\n userProjectNotFound: \"Project not found\",\n userProjectStartDateInvalid: \"The start date is invalid\",\n userProjectStartDateRequired: \"The start date is required\",\n userProjectUnarchivedSuccess: \"User project unarchived successfully\",\n userProjectUpdateSuccess: \"User project updated successfully\",\n budgetTypeInvalid: \"The budget type is invalid\",\n bundleDescriptionRequired: \"The bundle description is required\",\n bundleNameRequired: \"The bundle name is required\",\n bundleTaskRequired: \"The task list is required\",\n flagAmountInvalid: \"The amount is invalid\",\n flagAmountRequired: \"The amount is required\",\n flagStatusRequired: \"The status is required\",\n foundationNameRequired: \"The funder name is required\",\n foundationSourceTypeRequired: \"The funder source is required\",\n profileIdRequired: \"The profile is required\",\n projectBudgetAmountRequired: \"The budget amount is required\",\n projectBudgetDescriptionRequired: \"The budget description is required\",\n projectCostInvalid: \"The project cost is invalid\",\n projectCostRequired: \"The project cost is required\",\n projectDescriptionRequired: \"The project description is required\",\n projectNameRequired: \"The project name is required\",\n projectStatusInvalid: \"The project status is invalid\",\n taskDescriptionRequired: \"The task description is required\",\n taskNameRequired: \"The task name is required\",\n foundationInsertSuccess: \"Funder added successfully\",\n savedSearchDeleteSuccess: \"Search deleted successfully\",\n savedSearchDescriptionExists: \"This description already exists\",\n savedSearchInsertSuccess: \"Search added successfully\",\n savedSearchNotFound: \"Saved search not found\",\n savedSearchTypeInvalid: \"The saved search type is invalid\",\n savedSearchUpdateSuccess: \"Search updated successfully\",\n descriptionRequired: \"The description is required\",\n jsonFieldsRequired: \"The search field is required\",\n searchTypeRequired: \"The search type is required\",\n userProjectCompleted: \"This Project is marked as completed\",\n sendOnlineApplicationSuccess: \"Online application message successfully sent\",\n sendSuggestionSuccess: \"Suggestion successfully sent\",\n urlRequired: \"The url is required\",\n fundersRemovedSuccess: \"Removed {{fundersRemoved}} from other projects\",\n noteSubjectRequired: \"The subject is required\",\n accountDeleted: \"This account was deleted. Contact the administrator\",\n userRemovedSuccess: \"Account removed successfully\",\n userNameOrEmailRequired: \"The User or e-mail name is required\",\n fieldRequired: \"This field is required\",\n pickupNewPassword: \"Please pick up new password\",\n passwordMinCharacter: \"Please enter at least {{minimumCharaters}} characters\",\n enterSameValueAgain: \"Please enter the same value again\",\n feedbackSubmitted: \"Feedback submitted successfully\",\n feedbackInvalidGrantSize: \"The grant size is invalid or too big\",\n feedbackReviewUpdated: \"Feedback review updated\",\n announcementTitleRequired: \"The announcement title is required\",\n announcementDescriptionRequired: \"The announcement description is required\",\n announcementReleaseDateRequired: \"The announcement release date is required\",\n announcementReleaseDateInvalid: \"Past dates are not allowed for the Release date\",\n announcementTypeRequired: \"The announcement type is required\",\n announcementNotFound: \"Announcement not found\",\n announcementInsertSuccess: \"Announcement added successfully\",\n announcementUpdateSuccess: \"Announcement updated successfully\",\n announcementDeleteSuccess: \"Announcement deleted successfully\",\n funderDisqualifiedSuccess: \"Funder disqualified successfully\",\n funderQualifiedSuccess: \"Funder qualified successfully\",\n funderPausedSuccess: \"Funder qualification successfully paused\",\n couponNameRequired: \"The coupon name is required\",\n couponCodeRequired: \"The coupon code is required\",\n couponCodeFormatInvalid: \"The coupon code is invalid\",\n codeLengthInvalid: \"Maximum of 15 characters\",\n couponExpirationDateRequired: \"The coupon expiration date is required\",\n couponExpirationMaxValue: \"The date cannot be more than 6 months from today\",\n couponExpirationDateInvalid: \"Invalid expiration date\",\n couponSubscriptionPlanRequired: \"The coupon subscription plan is required\",\n couponExtraMonthsAmountInvalid: \"The extra month only allow number 1 to 99\",\n couponDiscountAmountInvalid: \"The discount only allow number 1 to 90\",\n couponCodeAlreadyExist: \"The coupon code has already been redeemed\",\n couponSubscriptionNotFound: \"The subscription plan not found\",\n couponNotFound: \"Coupon not found\",\n couponSelectType: \"Please choose between Extra Time or Discount\",\n couponInsertSuccess: \"Coupon added succesfully\",\n couponUpdateSuccess: \"Coupon updated succesfully\",\n couponDeleteSuccess: \"Coupon deleted successfully\",\n couponPauseUpdateSuccess: \"Coupon updated successfully\",\n deadlineEINRequired: \"The EIN is required\",\n deadlineFoundationNameRequired: \"The funder name is required\",\n deadlineCategoryRequired: \"The category is required\",\n deadlineURLRequired: \"The deadline URL is required\",\n deadlineCountryRequired: \"The country is required\",\n deadlineDateInvalid: \"Only allow future dates\",\n deadlineAmountToobig: \"The grant amount too big\",\n deadlineImportSuccess: \"{{fileName}} imported successfully\",\n deadlineImportSuccessWithWarning: \"The file was imported successfully. However, some items have invalid data. Please update them accordingly\",\n deadlineUpdateSuccess: \"Deadline updated successfully\",\n deadlineDeleteSuccess: \"Deadline deleted successfully\",\n deadlineRemovePopupMessage: \"This action will remove this deadline\",\n deadlineReviewCorrectInformation: \"Please review and correct the information\",\n deadlineInvalidFoundationDataField: \"The provided funder data contains an invalid entry for the {{invalidData}} field.\",\n deadlineInvalidFoundationDataFields: \"The provided funder data contains invalid entries for the following fields: {{invalidData}}.\",\n deadlineImportFilePrompt: \"Do you want to import this file?\",\n thankYouLetterSavedSuccess: \"Thank you letter saved with success\",\n impactReportLetterSavedSuccess: \"Impact report letter saved with success\",\n historyTypeRequired: \"The history type is required\",\n startDateRequired: \"Start Date is required\",\n startDateInvalid: \"Please select a date that is later than today\",\n dateMin: \"Please select a date higher than today\",\n referralNameCharityRequired: \"Name charity is required\",\n referralNameContactRequired: \"Name contact is required\",\n referralSubmitted: \"Referral submitted successfully. Refer Another Charity\",\n templateApplying: \"Applying please wait...\",\n templateApplyWarning: \"Applying this may take a few minutes to complete\",\n historyTimeline: {\n fuderAdded: \"Funder added on project\",\n funderRemoved: \"Funder removed on project\",\n noteAdded: \"Note added\",\n foundationProfileView: \"Funder profile viewed on project\",\n customDoc: \"Customized document\",\n masterDoc: \"Master document\",\n createdOnProject: \"created on project\",\n deletedOnProject: \"deleted on project\",\n statusUpdated: \"Status updated to\",\n onProject: \"on project\"\n }\n};\n\n","export const TRANSLATIONS_ES_MX = {\n labels: {\n user_name: \"Nombre de usuario\",\n password: \"Contraseña\",\n reset_password: \"Nueva contraseña\",\n reset_password_confirm: \"Confirmar contraseña\",\n login: \"Iniciar Sesión\",\n sign_up: \"Inscribirse\",\n forgot_password: \"Olvidaste tu contraseña?\",\n go_back: \"Regresa\",\n organization: \"Organización\",\n phone: \"Teléfono\",\n first_name: \"Primer nombre\",\n last_name: \"Apellido\",\n address: \"Dirección\",\n select: \"Seleccione\",\n country: \"País\",\n complementary_address: \"Dirección complementaria\",\n postal_code: \"Código postal\",\n city: \"Ciudad\",\n state: \"Estado\",\n stateOrProvince: \"Estado/Provincia\",\n billing: \"Facturación\",\n use_same_address: \"Usar la misma dirección\",\n loading: \"Cargando...\",\n register: \"Registrarse\",\n message: \"Mensaje\",\n error: \"Error\",\n welcome_back: \"Hola, bienvenido de nuevo\",\n enter_credentials: \"Ingrese sus credenciales para continuar\",\n dont_have_account: \"¿No tienes cuenta?\",\n remember_me: \"Recuérdame\",\n sign_in: \"Registrarse\",\n already_have_account: \"¿Ya tienes una cuenta?\",\n subscription_plan: \"Plan de suscripción\",\n country_billing: \"facturación del país\",\n password_recovery: \"Recuperación de contraseña\",\n password_reset: \"Restablecimiento de contraseña\",\n setting_up_account: \"Configuración de cuenta\",\n current_password: \"Contraseña actual\",\n new_password: \"Nueva contraseña\",\n confirm_password: \"Confirmar contraseña\",\n confirming_account: \"Confirmando cuenta\",\n accounts_created: \"Cuentas creadas\",\n of: \"de\",\n search: \"Búsqueda\",\n clear: \"Limpiar\",\n status: \"Estado\",\n actions: \"Comportamiento\",\n add_new_user: \"Añadir nuevo usuario\",\n edit_user: \"Editar usuario\",\n additional_emails: \"Correos electrónicos adicionales\",\n organization_letterhead: \"Membrete de la organización\",\n company_information: \"Información de la Organización\",\n company_organization: \"Organización\",\n created_at: \"Creado en\",\n change_main_email: \"Cambiar la dirección de correo electrónico principal\",\n main_email: \"Dirección de correo electrónico principal\",\n emails_created: \"Correos electrónicos creados\",\n add_new_additional_email: \"Añadir nuevo e-mail adicional\",\n new_email_address: \"Nueva dirección de correo electrónico\",\n add_digital_letterhead: \"Agregar membrete digital\",\n select_header_style: \"Seleccionar estilo de letra\",\n header_only: \"Solo encabezado\",\n header_and_footer: \"Encabezado y pié de página\",\n email_alert: \"Alerta de correo\",\n signature: \"Firma\",\n user_letterhead: \"Membrete del usuario\",\n user_information: \"Informacion del usuario\",\n position: \"Posición\",\n enable_disable_notifications: \"Activar/Desactivar notificaciones\",\n user_name_or_email: \"Usuario o correo electrónico\",\n avg_grants_Annually: \"Subvenciones promedio anuales\",\n avg_grant_size: \"Tamaño promedio de la subvención\",\n total_assets: \"Activos totales\",\n summary: \"Resumen\",\n notes_taken: \"Notas tomadas\",\n last_report: \"Último informe\",\n not_informed: \"No informado\",\n loading_profile_summary: \"Cargando resumen del perfil\",\n amount: \"Monto\",\n grants: \"Subvenciones\",\n funders: \"Financiadores\",\n funders_selected: \"Financiadores seleccionados\",\n show_grant_details: \"Mostrar detalles de la subvención\",\n profile_summary: \"Resumen del perfil\",\n view_profile: \"Ver perfil\",\n year: \"Año\",\n avg_grants: \"Subvenciones medias\",\n recipient: \"Beneficiario\",\n territories: \"Territorios\",\n giving_int: {\n prefix: \"Interés nacional de donación de\",\n state: \"Estado\",\n territories: \"Territorios\",\n },\n foundation_name: \"Nombre de la fundación\",\n import: \"Importar\",\n year: \"Año\",\n amount: \"Monto\",\n location: \"Ubicación\",\n purpose: \"Propósito\",\n recipient: \"Beneficiario\",\n category: \"Categoría\",\n sector: \"Sector\",\n not_provided_by: \"No proporcionado por\",\n keyword: \"Palabra clave\",\n shared_list:\"Lista compartida\",\n favorite_name:\"Nombre del favorito\",\n select_favorite:\"Seleccionar un favorito\",\n close:\"Cerrar\",\n confirm:\"Confirmar\",\n description:\"Descripción\",\n show_saved_search:\"Mostrar búsqueda guardada\",\n load_selected_saved_search:\"Cargar búsqueda guardada seleccionada\",\n rename:\"Cambiar nombre\",\n remove_save_search:\"Eliminar búsqueda guardada\",\n updated_at:\"Actualizado en\",\n recipient:\"Destinatario\",\n year:\"Año\",\n amt:\"AMT\",\n create_user_account: \"Crear proyecto de usuario\",\n edit_user_account: \"Editar proyecto de usuario\",\n name_project:\"Nombre del proyecto\",\n total_project_cost:\"Costo total del proyecto\",\n start_date:\"Fecha de inicio\",\n end_date: \"Fecha de finalización\",\n delete_project:\"Eliminar proyecto\",\n select_director_from_list: \"Selecciona un director de la lista\",\n enter_custom_director: \"¿No encuentras director? Ingresa uno personalizado\",\n enter_director_name: \"Ingresa el nombre del director\",\n select_director: \"Seleccionar director\",\n salutation: \"Saludo\",\n ask_amount: \"Monto solicitado\",\n total_amount: \"Monto total\",\n application_information: \"Información de la solicitud\",\n instruction: \"Instrucciones\",\n restriction: \"Restricciones\",\n deadline: \"Fecha límite\",\n contact: \"Contacto\",\n largest: \"Más grande\",\n average: \"Promedio\",\n median: \"Mediana\",\n remove_funder: \"Eliminar financiadores\",\n foundation_exists_other_projects: \"Esta fundación existe en otros proyectos dentro de su organización\",\n remove_foundations_other_projects: \"Eliminar financiadores de otros proyectos\",\n application_info: \"Información de la aplicación\",\n average: \"Promedio\",\n median: \"Mediana\",\n largest: \"Más grande\",\n this_action_will_remove: \"Esta acción eliminará\",\n from_this_project: \"de este proyecto\",\n hide_customized_funders: \"Ocultar financiadores personalizados\",\n project_funders: \"Financiadores del proyecto\",\n custom_letter: \"Carta personalizada\",\n change_project: \"Cambiar proyecto\",\n return_grant_secretary: \"Volver a la Secretaría de Subvenciones\",\n impact_report_letter: \"Informe de impacto\",\n project_funders_master_document: \"Financiadores del proyecto / Documento maestro\",\n master_document: \"Documento maestro\",\n letter_of_inquiry: \"Carta de consulta\",\n proposal: \"Propuesta\",\n thank_you_letter: \"Carta de agradecimiento\",\n custom_document: \"Documento personalizado\",\n qualify: \"Calificar\",\n favorites: \"Favoritos\",\n favorite_funders: \"Financiadores favoritos\",\n close: \"Cerrar\",\n add_funders_to_project: \"Agregar financiadores al proyecto\",\n select_one_or_more_projects: \"Seleccione uno o más proyectos\",\n block_funders: \"Bloquear financiadores\",\n print_funder_page: \"Imprimir página de financiadores\",\n move_to_previous_funder: \"Mover al financiador anterior\",\n move_to_next_funder: \"Mover al siguiente financiador\",\n remove_this_funder_from_qualified: \"Eliminar este financiador del estado calificado y excluir de la lista de favoritos.\",\n mark_funder_as_qualified: \"Marcar este financiador como calificado.\",\n block_funder: \"Bloquear financiador\",\n export_funders_to_excel: \"Exportar financiadores a Excel\",\n funder_name: \"Nombre del financiador\",\n prev: \"Previo\",\n next: \"Próximo\",\n previous: \"Previo\",\n visit_website: \"Visitar sitio web\",\n notes: \"Notas\",\n add_note: \"Agregar nota\",\n company: \"Empresa\",\n email: \"Correo electrónico\",\n website: \"Sitio web\",\n contact_infos: \"Información de contacto\",\n other_infos: \"Otra información\",\n help_center:\"Centro de ayuda\",\n profile_settings:\"Configuración del perfil\",\n hi:\"Hola\",\n user_profile:\"Perfil de usuario\",\n logout:\"Cerrar sesión\"\n },\n errors: {\n model_error: \"Compruebe si hay errores y vuelva a intentarlo\",\n general_error: \"Ha ocurrido un error\",\n invalid_token: \"Token inválido\",\n confirming_account_error: \"Lo sentimos, hay un problema al activar su cuenta\",\n invalid_image: \"Imagen inválida\",\n inform_crop_area: \"Ajuste la imagen para adaptarse a las dimensiones requeridas\",\n funder_not_found: \"Financiador no encontrado\",\n select_at_least_one_funder: \"Por favor, seleccione al menos un financiador antes de continuar\",\n select_one_or_more_funders_delete: \"Seleccione uno o más financiadores para eliminar\",\n select_one_or_more_funders_block: \"Seleccione uno o más financiadores para bloquear\",\n },\n success: {\n logout_success: \"Cierre de sesión de usuario con éxito\",\n copied_to_clipboard: \"Copiado al portapapeles\",\n },\n messages: {\n password_recovery_message: \"Para recibir una nueva contraseña, introduzca el nombre de usuario y la dirección de correo electrónico que utilizó para registrarse\",\n inform_new_password_message: \"Por favor, introduzca su nueva contraseña\",\n setting_up_account_message: \"Para activar su cuenta, introduzca la contraseña y confírmela\",\n confirming_account_wait: \"Por favor, espere mientras confirmamos su cuenta\",\n first_letterhead_message: \"- El membrete debe tener aproximadamente 700 x 200 px.\",\n second_letterhead_message: \"- Los formatos compatibles son .GIF, .png, .jpeg y .jpg.\",\n third_letterhead_message: \"- El membrete de su organización aparecerá en la parte superior de todos los documentos.\",\n check_organization_settings_message: \"Por favor, compruebe la configuración del membrete del perfil de su organización o póngase en contacto con el soporte técnico.\",\n funders_not_selected_message: \"Por favor, seleccione al menos un financiador antes de continuar\",\n select_one_favorite_list:'Seleccione al menos una lista de favoritos o cree una nueva',\n create_new_favorite_list: \"Crear nueva lista de favoritos\",\n add_funders_favorite_list: \"Añadir financiador(es) a favoritos\",\n delete_project:\"¿Está seguro de que desea eliminar este proyecto?\",\n are_you_sure: \"¿Está seguro?\",\n this_action_will_remove_document_funder: \"Esta acción eliminará el documento para este financiador\",\n this_action_will_remove_master_document: \"Esta acción eliminará este documento maestro\",\n want_to_remove_the_funder: \"¿Desea eliminar la fundación de esta lista?\",\n this_will_remove_customized_documents: \"Esto eliminará {{documents}} documento(s) personalizado(s) y devolverá el financiador a la lista maestra. Para eliminar financiadores(s) permanentemente, elimínelos de la lista maestra.\",\n remove_the_funders_from_the_projects: \"Elimina las fundaciones de los proyectos que seleccionó del proyecto actual.\",\n select_in_dropdown_example: \"p.ej. Si selecciona un proyecto en el desplegable y tiene 3 fundaciones, 'a', 'b' y 'c' y el proyecto en el que está trabajando también tiene 'a', 'b', 'c', estos serán eliminados del proyecto en curso.\",\n this_will_remove_funders_from_this_project: \"Esta acción eliminará {{funders}} fundación(es) de este proyecto.\",\n },\n user_menu: {\n profile: \"Perfil\",\n logout: \"Cerrar sesión\",\n },\n prompt: {\n areYouSure: \"¿Estás seguro?\",\n confirmRemove: \"Confirmar eliminación\"\n },\n side_menu: {\n administration: \"Administración\",\n manage_account: \"Administrar cuenta\",\n manage_announcement: \"Plan de Suscripción\",\n manage_subscription_plan: \"\",\n manage_coupons: \"Cupones\",\n manage_feedbacks: \"Comentarios\",\n manage_deadlines: \"Plazos\",\n manage_plans: \"Manage Plans\",\n account: \"Cuenta\",\n user_profile: \"Perfil del usuario\",\n additional_users: \"Usuarios adicionales\",\n organization_profile: \"Perfil de la organización\",\n project_manager: \"Gerente de proyecto\",\n project_list: \"Proyectos\",\n project_archive: \"Proyectos archivados\",\n search_engine: \"Buscador\",\n by_giving_history: \"Al dar la historia\",\n by_name: \"Por nombre\",\n by_director: \"Por la directora\",\n by_year: \"Por año\",\n by_deadline: \"By Deadline\",\n by_rating: \"Por calificación\",\n by_custom: \"Por encargo\",\n document_generator: \"Generador de documentos,\",\n inquiry: \"Consulta\",\n proposal: \"Propuesta\",\n budget: \"Presupuesto\",\n custom_letter: \"Carta personalizada\",\n grant_secretary: \"Grant Secretary - Print\",\n manage_funders: \"Administrar financiadores\",\n favorites: \"Favoritos\",\n blocked_funders: \"Obstruido\",\n custom_databases: \"bases de datos personalizadas\",\n by_keyword: \"Por palabras clave\",\n by_internacional_funding: \"Por financiación internacional\",\n thank_you: \"Thank You\",\n impact_report: \"Impact Report\",\n previous: \"Previo\",\n },\n buttons: {\n create_account: \"Crear cuenta\",\n send: \"Enviar\",\n reset_password: \"Restablecer contraseña\",\n add_user: \"Agregar usuario\",\n insert_user: \"Insertar usuario\",\n save_changes: \"Guardar cambios\",\n update_profile: \"Actualizar perfil\",\n add_email: \"Agregar correo electrónico\",\n select_header_file: \"Seleccionar archivo de encabezado\",\n select_footer_file: \"Seleccionar archivo de pie de página\",\n update_account: \"Actualizar cuenta\",\n create: \"Crear\",\n create_favorite_list: \"Crear lista de favoritos\",\n add: \"Añadir\",\n confirm:\"Confirmar\",\n update:\"Actualizar\",\n confirm_delete:\"Confirmar eliminación\",\n confirm_remove: \"Confirmar eliminación\",\n next: \"Siguiente\",\n prev: \"Anterior\",\n add_funder: \"Agregar financiador\",\n },\n input_fields: {\n press_enter: \"Presiona Enter para agregar palabras clave\",\n },\n accountCreated: \"Cuenta creada con éxito\",\n accountDisabled: \"Esta cuenta está deshabilitada. Para obtener más detalles, comuníquese con el administrador.\",\n accountDisabledSuccess: \"Cuenta deshabilitada con éxito\",\n accountEnabledSuccess: \"Cuenta habilitada con éxito\",\n accountNotActivated: \"Su cuenta no está activa. Por favor revise su correo electrónico para activar su cuenta\",\n accountUpdatedSuccess: \"Cuenta actualizada correctamente\",\n additionalEmailNotFound: \"Correo electrónico adicional no encontrado\",\n additionalEmailRemovedSuccess: \"Correo electrónico adicional eliminado con éxito\",\n additionalEmailSavedSuccess: \"Correo electrónico adicional guardado con éxito\",\n additionalUserInsertSuccess: \"Usuario adicional añadido con éxito\",\n additionalUserUpdateSuccess: \"Usuario adicional actualizado correctamente\",\n addressBillingRequired: \"Se requiere dirección de facturación\",\n alertNotificationSavedSuccess: \"Notificación de alerta guardada con éxito\",\n cityBillingRequired: \"Se requiere la facturación de la ciudad\",\n complementaryAddressBillingRequired: \"Se requiere facturación de dirección complementaria\",\n confirmRegisterUserSuccess: \"Gracias por confirmar tu correo electrónico\",\n countryBillingRequired: \"El país de facturación es obligatorio\",\n countryNotFound: \"País no encontrado\",\n emailExists: \"La dirección de correo ya existe\",\n errorRegistration: \"El modelo está vacío\",\n expirationDateSavedSuccess: \"Fecha de caducidad guardada con éxito\",\n footerImageRequired: \"La imagen de pie de página es obligatoria\",\n imageHeightLength: \"Altura de imagen no válida\",\n imageWidthLength: \"Ancho de imagen no válido\",\n invalidEmailAddress: \"Dirección de correo electrónico no válida\",\n invalidLetterType: \"Tipo de letra no válido\",\n invalidPhoneNumber: \"Numero de telefono invalido\",\n invalidSubscriptionPlan: \"Plan de suscripción no válido\",\n invalidUserRole: \"Rol de usuario no válido\",\n letterheadSavedSuccess: \"Membrete guardado con exito\",\n licenseExpired: \"Su licencia ha caducado. Para más detalles, póngase en contacto con el administrador\",\n licenseNotFound: \"No hay suficientes licencias disponibles. Póngase en contacto con support@grantadvance.com\",\n loginFailed: \"Usuario o contraseña invalido\",\n masterOnly: \"Solo los usuarios maestros tienen acceso a este recurso\",\n notEnoughLicense: \"Su organización no tiene ninguna licencia disponible. Si desea agregar licencias, haga clic aquí para comprar licencias adicionales\",\n notificationExists: \"La notificación ya existe\",\n notificationNotFound: \"Notificación no encontrada\",\n notificationTypeNotFound: \"Tipo de notificación no encontrado\",\n organizationDisabled: \"Esta organización está deshabilitada. Para obtener más detalles, comuníquese con el administrador.\",\n organizationMainAddressUpdatedSuccess: \"Dirección principal de la organización actualizada con éxito\",\n organizationNotFound: \"Organización no encontrada\",\n organizationProfileSavedSuccess: \"Perfil de la organización guardado con éxito\",\n passwordModified: \"Contraseña modificada con éxito\",\n passwordRecovery: \"Por favor revise su correo electrónico para restablecer su contraseña.\",\n passwordReset: \"Restablecimiento de contraseña con éxito\",\n postalCodeBillingRequired: \"El código postal es obligatorio\",\n profileNotFound: \"Perfil no encontrado\",\n provinceOrStateBillingRequired: \"Se requiere el estado\",\n provinceOrStateNotFound: \"Estado no encontrado\",\n sendActivationLinkSuccess: \"El correo electrónico de activación se ha enviado con éxito\",\n sendPasswordResetSuccess: \"El correo electrónico de restablecimiento de contraseña se ha enviado correctamente\",\n sendSetupPasswordSuccess: \"El correo electrónico de configuración de la contraseña se ha enviado correctamente\",\n separatedLicenceExpirationDateError: \"La fecha de vencimiento de las licencias separadas no puede ser posterior a la fecha de vencimiento de la licencia principal\",\n settingUpAccountSuccess: \"Su cuenta ha sido activada con éxito. Ahora puede iniciar sesión\",\n signatureSavedSuccess: \"Firma guardada con éxito\",\n subscriptionPlanNotFound: \"Plan de suscripción no encontrado\",\n userLogoutSuccess: \"Cierre de sesión del usuario con éxito\",\n userNameExists: \"Este nombre de usuario ya está en uso\",\n userNotAllowed: \"Usuario no autorizado para iniciar sesión\",\n userNotFound: \"Usuario no encontrado\",\n userProfileSavedSuccess: \"Perfil de usuario guardado con éxito\",\n wrongCurrentPassword: \"Contraseña actual incorrecta\",\n additionalUsersRequired: \"Se requieren los usuarios adicionales\",\n addressRequired: \"La dirección es requerida\",\n amountDaysRequired: \"Se requiere la cantidad de días\",\n amountLicensesRequired: \"La cantidad de licencias es obligatoria\",\n planAmountRequired: \"El monto del plan es obligatorio\",\n amountMonthsRequired: \"Se requiere la cantidad de meses\",\n amountYearsRequired: \"Se requiere la cantidad de años\",\n billingAddressLine2Required: \"Se requiere la dirección de facturación complementaria\",\n billingAddressRequired: \"La dirección de facturación es obligatoria\",\n billingCityRequired: \"La ciudad de facturación es obligatoria\",\n billingCountryRequired: \"El país de facturación es obligatorio\",\n billingPostalCodeRequired: \"El código postal es obligatorio\",\n billingProvinceOrStateRequired: \"Se requiere la provincia/estado de facturación\",\n cityRequired: \"Se requiere la ciudad\",\n companyNameRequired: \"El nombre de la empresa es obligatorio\",\n businessEinRequired: \"BN/EIN es obligatorio\",\n compareConfirmPassword: \"La contraseña y la contraseña de confirmación no coinciden.\",\n complementaryAddressRequired: \"Se requiere la dirección complementaria\",\n confirmPasswordRequired: \"Se requiere la contraseña de confirmación\",\n countryRequired: \"Se requiere el país\",\n displayPlanRequired: \"El plano de visualización es obligatorio\",\n emailRequired: \"El correo electrónico es obligatorio\",\n firstNameRequired: \"El primer nombre es obligatorio\",\n headerImageRequired: \"La imagen del encabezado es obligatoria\",\n invalidEmail: \"Este email es invalido\",\n invalidRole: \"Rol de usuario no válido\",\n lastNameRequired: \"El apellido es obligatorio\",\n licenseAmountRange: \"El número de licencias debe ser mayor que cero\",\n licenseRequired: \"Se requiere la licencia\",\n newPasswordRequired: \"Se requiere la nueva contraseña\",\n notificationTypeRequired: \"Se requiere el tipo de Notificación\",\n oldPasswordRequired: \"Se requiere la contraseña anterior\",\n organizationIdRequired: \"El ID de la organización es obligatorio\",\n passwordLength: \"El {0} debe tener al menos {2} y un máximo de {1} caracteres de longitud.\",\n passwordRequired: \"Se requiere la contraseña\",\n phoneRequired: \"El número de teléfono es obligatorio\",\n planDescriptionRequired: \"La descripción del plan es obligatoria\",\n postalCodeRequired: \"El código postal es obligatorio\",\n provinceOrStateRequired: \"Se requiere el estado\",\n roleRequired: \"El rol es requerido\",\n signatureRequired: \"Se requiere la firma\",\n subscriptionPlanNameRequired: \"Se requiere el plan de suscripción\",\n tokenRequired: \"Se requiere el token\",\n userIdRequired: \"Se requiere ID de usuario\",\n userNameRequired: \"El e-mail es obligatorio\",\n planNameRequired: \"Se requiere el nombre del plan interno\",\n customLetterRequired: \"Se requiere la carta personalizada\",\n customLetterSavedSuccess: \"Carta personalizada guardada con éxito\",\n customTagDeleteSuccess: \"Etiqueta personalizada eliminada con éxito\",\n customTagInsertSuccess: \"Etiqueta personalizada creada con éxito\",\n customTagNotFound: \"Etiqueta personalizada no encontrada\",\n customTagUpdateSuccess: \"Etiqueta personalizada actualizada con éxito\",\n documentStateInsertSuccess: \"Estado del documento creado con éxito\",\n inquiryLetterRequired: \"Se requiere la carta de consulta\",\n inquiryLetterSavedSuccess: \"Carta de consulta guardada con éxito\",\n proposalLetterRequired: \"Se requiere la carta de propuesta\",\n proposalLetterSavedSuccess: \"Carta de propuesta guardada con éxito\",\n userProjectRequired: \"El proyecto de usuario es obligatorio\",\n customDocumentTypeRequired: \"El tipo de documento es obligatorio\",\n documentAmountRequired: \"La cantidad es requerida\",\n documentFlaggedRequired: \"La fecha es requerida\",\n documentStateRequired: \"El estado del documento es obligatorio\",\n tagDescriptionRequired: \"La descripción de la etiqueta es obligatoria\",\n tagNameRequired: \"El nombre de la etiqueta es obligatorio\",\n blockedFundersDeleteAllSuccess: \"Todos los financiadores se desbloquearon con éxito\",\n blockedFundersDeleteSuccess: \"Financiador desbloqueado con éxito\",\n blockedFundersInsertSuccess: \"Financiador bloqueado con éxito\",\n blockedFundersNotFound: \"Financiador bloqueado no encontrado\",\n customDatabaseDeleteSuccess: \"Base de datos personalizada eliminada con éxito\",\n customDatabaseFieldsMapRequired: \"Por favor. Configure todos los campos obligatorios antes de continuar\",\n customDatabaseNotFound: \"Base de datos personalizada no encontrada\",\n customDatabaseUserFieldsEmpty: \"La lista de campos de configuración está vacía\",\n favoriteDeleteSuccess: \"Favorito eliminado con éxito\",\n favoriteDuplicateSuccess: \"Favorito duplicado con éxito\",\n favoriteFundersDeleteSuccess: \"Financiador favorito eliminado con éxito\",\n favoriteFundersInsertSuccess: \"{{fundersAmount}} financiadores agregados a la lista {{favoriteName}}\",\n favoriteFundersNotFound: \"Financiador favorito no encontrado\",\n favoriteFundersUpdateSuccess: \"Actualización de financiador favorito con éxito\",\n favoriteInsertSuccess: \"Favorito creado con éxito\",\n favoriteNotFound: \"Favorito no encontrado\",\n favoriteUpdateSuccess: \"Actualización favorita exitosa\",\n fundersListEmpty: \"La lista de patrocinadores está vacía\",\n noteDeleteSuccess: \"Nota eliminada con éxito\",\n noteInsertSuccess: \"Nota creada con éxito\",\n noteNotFound: \"Nota no encontrada\",\n noteUpdateSuccess: \"Nota actualizada correctamente\",\n noteRequired: \"Se requiere una nota antes de adjuntar cualquier documento\",\n notificationDateRequired: \"La fecha de notificación es obligatoria\",\n emailListRequired: \"Seleccione el e-mail\",\n customDatabaseFileRequired: \"Se requiere el archivo de Excel\",\n favoriteNameRequired: \"El nombre favorito es obligatorio\",\n favoriteRequired: \"Se requiere el favorito\",\n foundationRequired: \"Se requiere la fundación\",\n jsonUserFieldsMapRequired: \"Por favor. Configure todos los campos obligatorios antes de continuar\",\n labelTypeRequired: \"El tipo de etiqueta es obligatorio\",\n letterTypeRequired: \"Seleccione el tipo de documento para imprimir\",\n noteDescriptionRequired: \"La descripción es obligatoria\",\n noteTitleRequired: \"El título es obligatorio\",\n bundleInsertSuccess: \"Paquete creado con éxito\",\n bundleNotFound: \"Paquete no encontrado\",\n bundleTaskCount: \"Ingrese al menos una tarea\",\n bundleTaskNotFound: \"No se pueden encontrar una o más tareas\",\n flagDateRequired: \"La fecha es requerida\",\n flagUpdateSuccess: \"Bandera actualizada con éxito\",\n projectBudgetCategoryDescriptionRequired: \"La descripción de la categoría es obligatoria\",\n projectBudgetDeleteSuccess: \"Presupuesto eliminado con éxito\",\n projectBudgetDescriptionExists: \"Esta descripción ya existe\",\n projectBudgetInsertSuccess: \"Presupuesto añadido con éxito\",\n projectBudgetNotFound: \"Presupuesto no encontrado\",\n projectBudgetResetSuccess: \"Presupuesto restablecido con éxito\",\n projectBudgetUpdateSuccess: \"Presupuesto actualizado correctamente\",\n projectEndDateRequired: \"La fecha de finalización es obligatoria\",\n projectFundersDeleteSuccess: \"El financiador del proyecto se eliminó con éxito\",\n projectFundersEmpty: \"Seleccione al menos un financiador antes de continuar\",\n projectFundersInsertSuccess: \"{{funderAmount}} financiadores agregados al {{projectName}}\",\n projectStartDateRequired: \"La fecha de inicio es obligatoria\",\n taskDeleteSuccess: \"Tarea eliminada con éxito\",\n taskEditSuccess: \"Tarea actualizada correctamente\",\n taskInsertSuccess: \"Tarea creada con éxito\",\n taskListEmpty: \"La lista de tareas está vacía\",\n taskNotFound: \"Tarea no encontrada\",\n userProjectArchivedSuccess: \"Proyecto de usuario archivado con éxito\",\n userProjectDeleteSuccess: \"Proyecto de usuario eliminado con éxito\",\n userProjectEndDateRequired: \"La fecha de finalización es obligatoria\",\n userProjectInsertSuccess: \"Proyecto de usuario creado con éxito\",\n userProjectListEmpty: \"Seleccione uno o más proyectos\",\n userProjectNotFound: \"Proyecto no encontrado\",\n userProjectStartDateInvalid: \"La fecha de inicio no es válida\",\n userProjectStartDateRequired: \"La fecha de inicio es obligatoria\",\n userProjectUnarchivedSuccess: \"Proyecto de usuario desarchivado con éxito\",\n userProjectUpdateSuccess: \"Proyecto de usuario actualizado con éxito\",\n budgetTypeInvalid: \"El tipo de presupuesto no es válido\",\n bundleDescriptionRequired: \"Se requiere la descripción del paquete\",\n bundleNameRequired: \"El nombre del paquete es obligatorio\",\n bundleTaskRequired: \"La lista de tareas es obligatoria\",\n flagAmountInvalid: \"La cantidad no es válida\",\n flagAmountRequired: \"La cantidad es requerida\",\n flagStatusRequired: \"El estado es obligatorio\",\n foundationNameRequired: \"El nombre de la fundación es obligatorio\",\n foundationSourceTypeRequired: \"Se requiere la fuente de la fundación\",\n profileIdRequired: \"El perfil es obligatorio\",\n projectBudgetAmountRequired: \"El importe del presupuesto es obligatorio\",\n projectBudgetDescriptionRequired: \"La descripción del presupuesto es obligatoria\",\n projectCostInvalid: \"El costo del proyecto no es válido\",\n projectCostRequired: \"Se requiere el costo del proyecto\",\n projectDescriptionRequired: \"Se requiere la descripción del proyecto\",\n projectNameRequired: \"El nombre del proyecto es obligatorio\",\n projectStatusInvalid: \"El estado del proyecto no es válido\",\n taskDescriptionRequired: \"La descripción de la tarea es obligatoria\",\n taskNameRequired: \"El nombre de la tarea es obligatorio\",\n foundationInsertSuccess: \"Fundación añadida con éxito\",\n savedSearchDeleteSuccess: \"Búsqueda eliminada con éxito\",\n savedSearchDescriptionExists: \"Esta descripción ya existe\",\n savedSearchInsertSuccess: \"Búsqueda agregada con éxito\",\n savedSearchNotFound: \"Búsqueda guardada no encontrada\",\n savedSearchTypeInvalid: \"El tipo de búsqueda guardada no es válido\",\n savedSearchUpdateSuccess: \"Búsqueda actualizada con éxito\",\n descriptionRequired: \"La descripción es obligatoria\",\n jsonFieldsRequired: \"El campo de búsqueda es obligatorio\",\n searchTypeRequired: \"El tipo de búsqueda es obligatorio\",\n userProjectCompleted: \"Este proyecto está marcado como completado\",\n sendOnlineApplicationSuccess: \"Mensaje de solicitud en línea enviado con éxito\",\n sendSuggestionSuccess: \"Sugerencia enviada con éxito\",\n urlRequired: \"La URL es obligatoria\",\n noteSubjectRequired: \"El tema es obligatorio\",\n accountDeleted: \"Esta cuenta fue eliminada. Contacta con el administrador\",\n userRemovedSuccess: \"Cuenta eliminada con éxito\",\n userNameOrEmailRequired: \"El nombre de usuario o correo electrónico es obligatorio.\",\n fieldRequired: \"Este campo es obligatorio\",\n pickupNewPassword: \"Por favor, recoja la nueva contraseña\",\n passwordMinCharacter: \"Introduce al menos {{minimumCharaters}} caracteres\",\n enterSameValueAgain: \"Por favor, vuelva a introducir el mismo valor\",\n feedbackSubmitted: \"Comentarios enviados correctamente\",\n feedbackInvalidGrantSize: \"El tamaño de la subvención no es válido o es demasiado grande\",\n feedbackReviewUpdated: \"Revisión actualizada de los comentarios\",\n announcementDescriptionRequired: \"La descripción del anuncio es obligatoria.\",\n announcementReleaseDateRequired: \"La fecha de publicación del anuncio es obligatoria.\",\n announcementReleaseDateInvalid: \"No se permiten fechas pasadas para la fecha de lanzamiento.\",\n announcementTypeRequired: \"El tipo de anuncio es obligatorio.\",\n announcementNotFound: \"Anuncio no encontrado\",\n announcementInsertSuccess: \"Anuncio agregado exitosamente\",\n announcementUpdateSuccess: \"Anuncio actualizado exitosamente\",\n announcementDeleteSuccess: \"Anuncio eliminado exitosamente\",\n notificationNotFound: \"Notificación no encontrada\",\n couponNameRequired: \"El nombre del cupón es obligatorio\",\n couponCodeRequired: \"El código de cupón es obligatorio\",\n couponCodeFormatInvalid: \"El código de cupón no es válido\",\n codeLengthInvalid: \"Máximo de 15 caracteres\",\n couponExpirationDateRequired: \"Se requiere la fecha de vencimiento del cupón.\",\n couponExpirationMaxValue: \"La fecha no puede ser mayor a 6 meses a partir de hoy\",\n couponExpirationDateInvalid: \"Fecha de expiracion inválida\",\n couponSubscriptionPlanRequired: \"Se requiere el plan de suscripción de cupones\",\n couponExtraMonthsAmountInvalid: \"El mes extra solo permite del 1 al 99\",\n couponDiscountAmountInvalid: \"El descuento solo permite del número 1 al 90\",\n couponCodeAlreadyExist: \"El código del cupón ya ha sido canjeado\",\n couponSubscriptionNotFound: \"El plan de suscripción no encontrado\",\n couponNotFound: \"Cupón no encontrado\",\n couponSelectType: \"Por favor elija entre Tiempo Extra o Descuento\",\n couponInsertSuccess: \"Cupón agregado exitosamente\",\n couponUpdateSuccess: \"Cupón actualizado exitosamente\",\n couponDeleteSuccess: \"Cupón eliminado exitosamente\",\n couponPauseUpdateSuccess: \"Cupón actualizado exitosamente\",\n deadlineEINRequired: \"El EIN es obligatorio\",\n deadlineFoundationNameRequired: \"El nombre de la fundación es obligatorio\",\n deadlineCategoryRequired: \"La categoría es obligatoria\",\n deadlineURLRequired: \"Se requiere la URL de la fecha límite\",\n deadlineCountryRequired: \"El país debe\",\n deadlineDateInvalid: \"Permitir sólo fechas futuras\",\n deadlineAmountToobig: \"El importe de la subvención es excesivo\",\n deadlineImportSuccess: \"{{fileName}} importado con éxito\",\n deadlineImportSuccessWithWarning: \"El archivo se ha importado correctamente. Sin embargo, algunos elementos tienen ID de perfil no válidos. Por favor, actualícelos\",\n deadlineUpdateSuccess: \"Fecha límite actualizada correctamente\",\n deadlineDeleteSuccess: \"Fecha límite eliminada con éxito\",\n deadlineRemovePopupMessage: \"Esta acción eliminará este plazo\",\n deadlineReviewCorrectInformation: \"Por favor revisa y corrige la información\",\n deadlineInvalidFoundationDataField: \"Los datos proporcionados de la fundación contienen una entrada no válida para el campo {{invalidData}}.\",\n deadlineInvalidFoundationDataFields: \"Los datos proporcionados de la fundación contienen entradas no válidas para los siguientes campos: {{invalidData}}.\",\n deadlineImportFilePrompt: \"¿Quieres importar este archivo?\",\n thankYouLetterSavedSuccess: \"Carta de agradecimiento guardada con éxito.\",\n impactReportLetterSavedSuccess: \"Carta de informe de impacto guardada con éxito\",\n historyTypeRequired: \"El tipo de historial es obligatorio.\",\n startDateRequired: \"La fecha de inicio es obligatoria\",\n startDateInvalid: \"Seleccione una fecha que sea posterior a la de hoy\",\n dateMin: \"Por favor seleccione una fecha mayor a la de hoy\",\n referralNameCharityRequired: \"Nombre de la organización benéfica es obligatoria\",\n referralNameContactRequired: \"Nombre de contacto es obligatoria\",\n referralSubmitted: \"Referencia enviada exitosamente. Recomendar otra organización benéfica\",\n funderQualifiedSuccess: \"Foundation qualified successfully\",\n funderDisqualifiedSuccess: \"Foundation disqualified successfully\",\n funderPausedSuccess: \"La calificación del financiador se detuvo con éxito\",\n templateApplying: \"Aplicando por favor espere...\",\n templateApplyWarning: \"La aplicación puede llevar unos minutos\",\n historyTimeline: {\n fuderAdded: \"Fundación añadida al proyecto\",\n funderRemoved: \"Fundación eliminada del proyecto\",\n noteAdded: \"Nota añadida\",\n foundationProfileView: \"Perfil de la fundación visto en el proyecto\",\n customDoc: \"Documento personalizado\",\n masterDoc: \"Documento maestro\",\n createdOnProject: \"creado en el proyecto\",\n deletedOnProject: \"eliminado en el proyecto\",\n statusUpdated: \"Estado actualizado a\",\n onProject: \"en el proyecto\"\n }\n};\n","export const TRANSLATIONS_FR_CA = {\n labels: {\n user_name: \"Nom d'utilisateur\",\n password: \"Mot de passe\",\n reset_password: \"Nueva contraseña\",\n reset_password_confirm: \"Confirmez le mot de passe\",\n login: \"Connexion\",\n sign_up: \"S'inscrire\",\n forgot_password: \"Mot de passe oublié?\",\n go_back: \"Retourner\",\n organization: \"Organisation\",\n phone: \"Téléphone\",\n first_name: \"Prénom\",\n last_name: \"Nom de famille\",\n address: \"Adresse\",\n select: \"Sélectionner\",\n country: \"Pays\",\n complementary_address: \"Adresse complémentaire\",\n postal_code: \"code postal\",\n city: \"Ville\",\n state: \"État\",\n stateOrProvince: \"État/Province\",\n billing: \"Facturation\",\n use_same_address: \"Utiliser la même adresse\",\n loading: \"Chargement...\",\n register: \"S'inscrire\",\n message: \"Un message\",\n error: \"Erreur\",\n welcome_back: \"Salut, bienvenue à nouveau\",\n enter_credentials: \"Entrez vos identifiants pour continuer\",\n dont_have_account: \"Vous n'avez pas de compte?\",\n remember_me: \"Souviens-toi de moi\",\n sign_in: \"S'identifier\",\n already_have_account: \"Vous avez déjà un compte?\",\n subscription_plan: \"Formule d'abonnement\",\n country_billing: \"facturation par pays\",\n password_recovery: \"Récupération de mot de passe\",\n password_reset: \"Réinitialisation du mot de passe\",\n setting_up_account: \"Configuration du compte\",\n current_password: \"mot de passe actuel\",\n new_password: \"Nouveau mot de passe\",\n confirm_password: \"Confirmez le mot de passe\",\n confirming_account: \"Confirmation de compte\",\n accounts_created: \"Comptes créés\",\n of: \"de\",\n search: \"Chercher\",\n clear: \"Effacer\",\n status: \"Statut\",\n actions: \"Actions\",\n add_new_user: \"Ajouter un nouvel utilisateur\",\n edit_user: \"Modifier l'utilisateur\",\n additional_emails: \"Courriels supplémentaires\",\n organization_letterhead: \"Papier à en-tête de l'organisation\",\n company_information: \"Informations sur la Organisation\",\n company_organization: \"Organisation\",\n created_at: \"Créé à\",\n change_main_email: \"Modifier l'adresse e-mail principale\",\n main_email: \"Adresse e-mail principale\",\n emails_created: \"E-mails créés\",\n add_new_additional_email: \"Ajouter un nouvel e-mail supplémentaire\",\n new_email_address: \"Nouvelle adresse courriel\",\n add_digital_letterhead: \"Ajouter du papier à en-tête numérique\",\n select_header_style: \"Sélectionnez le style de lettre\",\n header_only: \"En-tête uniquement\",\n header_and_footer: \"En-tête et pied de page\",\n email_alert: \"Alerte mail\",\n signature: \"Signature\",\n user_letterhead: \"En-tête de l'utilisateur\",\n user_information: \"Informations de l'utilisateur\",\n position: \"Position\",\n enable_disable_notifications: \"Activer / Désactiver les notifications\",\n user_name_or_email: \"Nom d'utilisateur ou e-mail\",\n avg_grants_Annually: \"Subventions moyennes annuelles\",\n avg_grant_size: \"Taille moyenne de la subvention\",\n total_assets: \"Total des actifs\",\n summary: \"Résumé\",\n notes_taken: \"Notes prises\",\n last_report: \"Dernier rapport\",\n not_informed: \"Non informé\",\n loading_profile_summary: \"Chargement du résumé du profil\",\n amount: \"Montant\",\n grants: \"Subventions\",\n funders: \"Bailleurs de fonds\",\n funders_selected: \"Bailleurs de fonds sélectionnés\",\n show_grant_details: \"Afficher les détails de la subvention\",\n profile_summary: \"Résumé du profil\",\n view_profile: \"Voir le profil\",\n year: \"Année\",\n avg_grants: \"Subventions moyennes\",\n recipient: \"Bénéficiaire\",\n territories: \"Territoires\",\n giving_int: {\n prefix: \"Intérêt national de don pour\",\n state: \"État\",\n territories: \"Territoires\"\n },\n foundation_name: \"Nom de la fondation\",\n import: \"Importer\",\n year: \"Année\",\n amount: \"Montant\",\n location: \"Emplacement\",\n purpose: \"Objectif\",\n recipient: \"Bénéficiaire\",\n category: \"Catégorie\",\n sector: \"Secteur\",\n not_provided_by: \"Non fourni par\",\n keyword: \"Mot-clé\",\n my_list:\"Ma liste\",\n shared_list:\"Liste partagée\",\n favorite_name:\"Nom du favori\",\n select_favorite:\"Sélectionnez un favori\",\n close:\"Fermer\",\n confirm:\"Confirmer\",\n description:\"Description\",\n show_saved_search:\"Afficher la recherche enregistrée\",\n load_selected_saved_search:\"Charger la recherche enregistrée sélectionnée\",\n rename:\"Renommer\",\n remove_save_search:\"Supprimer la recherche enregistrée\",\n updated_at:\"Mis à jour à\",\n recipient:\"Destinataire\",\n year:\"Année\",\n amt:\"AMT\",\n create_user_account:\"Créer un projet utilisateur\",\n edit_user_account: \"Modifier un projet utilisateur\",\n name_project:\"Nom du projet\",\n total_project_cost:\"Coût total du projet\",\n start_date:\"Date de début\",\n end_date:\"Date de fin\",\n update:\"Mise à jour\",\n delete_project:\"Supprimer le projet\",\n select_director_from_list: \"Sélectionnez un directeur dans la liste\",\n enter_custom_director: \"Directeur introuvable ? Ajoutez-en un personnalisé\",\n enter_director_name: \"Entrez le nom du directeur\",\n select_director: \"Sélectionner un directeur\",\n salutation: \"Salutation\",\n ask_amount: \"Montant demandé\",\n total_amount: \"Montant total\",\n application_information: \"Informations sur la demande\",\n instruction: \"Instructions\",\n restriction: \"Restrictions\",\n deadline: \"Date limite\",\n contact: \"Contact\",\n largest: \"Le plus grand\",\n average: \"Moyenne\",\n median: \"Médiane\",\n remove_funder: \"Supprimer les financeurs\",\n foundation_exists_other_projects: \"Cette fondation existe dans d'autres projets au sein de votre organisation\",\n remove_foundations_other_projects: \"Supprimer les financeurs d'autres projets\",\n application_info: \"Informations sur l'application\",\n average: \"Moyenne\",\n median: \"Médiane\",\n largest: \"Plus grand\",\n this_action_will_remove: \"Cette action supprimera\",\n from_this_project: \"de ce projet\",\n hide_customized_funders: \"Masquer les financeurs personnalisés\",\n project_funders: \"Financeurs du projet\",\n custom_letter: \"Lettre personnalisée\",\n change_project: \"Changer le projet\",\n return_grant_secretary: \"Retourner au secrétaire des subventions\",\n impact_report_letter: \"Lettre de rapport d'impact\",\n project_funders_master_document: \"Financeurs du projet / Document principal\",\n master_document: \"Document principal\",\n letter_of_inquiry: \"Lettre de demande\",\n proposal: \"Proposition\",\n thank_you_letter: \"Lettre de remerciement\",\n custom_document: \"Document personnalisé\",\n qualify: \"Qualifié\",\n favorites: \"Favoris\",\n favorite_funders: \"Financeurs favoris\",\n close: \"Fermer\",\n add_funders_to_project: \"Ajouter des financeurs au projet\",\n select_one_or_more_projects: \"Sélectionnez un ou plusieurs projets\",\n block_funders: \"Bloquer les financeurs\",\n print_funder_page: \"Imprimer la page du financeur\",\n move_to_previous_funder: \"Passer au financeur précédent\",\n move_to_next_funder: \"Passer au financeur suivant\",\n remove_this_funder_from_qualified: \"Supprimer ce financeur du statut qualifié et l'exclure de la liste des favoris.\",\n mark_funder_as_qualified: \"Marquer ce financeur comme qualifié.\",\n block_funder: \"Bloquer le financeur\",\n export_funders_to_excel: \"Exporter les financeurs vers Excel\",\n funder_name: \"Nom du financeur\",\n prev: \"Previo\",\n next: \"Précédent\",\n previous: \"Previo\",\n previous: \"Précédent\",\n visit_website: \"Visiter le site web\",\n notes: \"Notes\",\n add_note: \"Ajouter une note\",\n company: \"Entreprise\",\n email: \"Courriel\",\n website: \"Site web\",\n contact_infos: \"Informations de contact\",\n other_infos: \"Autres informations\",\n help_center:\"Centre d'aide\",\n profile_settings:\"Paramètres du profil\",\n hi:\"Salut\",\n user_profile:\"Profil utilisateur\",\n logout:\"Déconnexion\"\n },\n errors: {\n model_error: \"Vérifiez les erreurs et réessayez\",\n general_error: \"Une erreur s'est produite\",\n invalid_token: \"Jeton invalide\",\n confirming_account_error: \"Désolé, il y a un problème pour activer votre compte\",\n invalid_image: \"Image invalide\",\n inform_crop_area: \"Redimensionnez l'image pour qu'elle soit conforme aux dimensions requises\",\n funder_not_found: \"Financeur non trouvé\",\n select_at_least_one_funder: \"Veuillez sélectionner au moins un financeur avant de continuer\",\n select_one_or_more_funders_delete: \"Sélectionnez un ou plusieurs financeurs à supprimer\",\n select_one_or_more_funders_block: \"Sélectionnez un ou plusieurs financeurs à bloquer\",\n },\n success: {\n logout_success: \"Déconnexion de l'utilisateur réussie\",\n copied_to_clipboard: \"Copié dans le presse-papiers\",\n },\n messages: {\n password_recovery_message: \"Pour recevoir un nouveau mot de passe, entrez le nom d'utilisateur et l'adresse e-mail que vous avez utilisés pour vous inscrire\",\n inform_new_password_message: \"Veuillez entrer votre nouveau mot de passe\",\n setting_up_account_message: \"Pour activer votre compte, veuillez entrer le mot de passe et confirmer\",\n confirming_account_wait: \"Veuillez patienter pendant que nous confirmons votre compte\",\n first_letterhead_message: \"- L'en-tête doit mesurer environ 700 x 200 px.\",\n second_letterhead_message: \"- Les formats pris en charge sont .GIF, .png, .jpeg et .jpg.\",\n third_letterhead_message: \"- L'en-tête de votre organisation apparaîtra en haut de tous les documents.\",\n check_organization_settings_message: \"Veuillez vérifier les paramètres de l'en-tête du profil de votre organisation ou contacter le support.\",\n funders_not_selected_message: \"Veuillez sélectionner au moins un financeur avant de continuer\",\n select_one_favorite_list:'Veuillez sélectionner au moins une liste de favoris ou en créer une nouvelle',\n create_new_favorite_list:\"Créer une nouvelle liste de favoris\",\n add_funders_favorite_list:\"Ajouter un ou plusieurs bailleurs de fonds aux favoris\",\n delete_project:\"Êtes-vous sûr de vouloir supprimer ce projet?\",\n are_you_sure: \"Êtes-vous sûr?\",\n this_action_will_remove_document_funder: \"Cette action supprimera le document pour ce financeur\",\n this_action_will_remove_master_document: \"Cette action supprimera ce document principal\",\n want_to_remove_the_funder: \"Voulez-vous retirer la fondation de cette liste?\",\n this_will_remove_customized_documents: \"Cela supprimera {{documents}} document(s) personnalisé(s) et renverra le financeur à la liste principale. Pour supprimer définitivement les financeurs, supprimez-les de la liste principale.\",\n remove_the_funders_from_the_projects: \"Supprime les fondations des projets sélectionnés du projet actuel.\",\n select_in_dropdown_example: \"Par exemple, si vous sélectionnez un projet dans la liste déroulante et qu'il a 3 fondations, 'a', 'b' et 'c' et que le projet sur lequel vous travaillez a également 'a', 'b', 'c', celles-ci seront retirées du projet en cours.\",\n this_will_remove_funders_from_this_project: \"Cette action retirera {{funders}} fondation(s) de ce projet.\",\n },\n user_menu: {\n profile: \"Profil\",\n logout: \"Se déconnecter\",\n },\n side_menu: {\n administration: \"Administration\",\n manage_account: \"Gérer son compte\",\n manage_plans: \"Gérer les forfaits\",\n manage_coupons: \"Coupons\",\n manage_feedbacks: \"Rétroactions\",\n manage_deadlines: \"Délais\",\n account: \"Compte\",\n user_profile: \"Profil de l'utilisateur\",\n additional_users: \"Utilisateurs supplémentaires\",\n organization_profile: \"Profil de l'organisation\",\n project_manager: \"Chef de projet\",\n project_list: \"Projets\",\n project_archive: \"Projets archivés\",\n search_engine: \"Moteur de recherche\",\n by_giving_history: \"En donnant l'histoire\",\n by_name: \"De nom\",\n by_director: \"Par réalisateur\",\n by_year: \"Par année\",\n by_rating: \"Par note\",\n by_custom: \"Par personnalisé\",\n document_generator: \"Générateur de documents\",\n inquiry: \"Enquête\",\n proposal: \"Proposition\",\n budget: \"Budget\",\n custom_letter: \"Lettre personnalisée\",\n grant_secretary: \"Grant Secretary - Print\",\n manage_funders: \"Gérer les bailleurs de fonds\",\n favorites: \"Favoris\",\n blocked_funders: \"Bloqué\",\n custom_databases: \"bases de données personnalisées\",\n by_keyword: \"Par mots clés\",\n by_international_funding: \"Par financement international\",\n thank_you: \"Thank You\",\n impact_report: \"Impact Report\",\n previous: \"Précédent\",\n },\n buttons: {\n create_account: \"Créer un compte\",\n send: \"Envoyer\",\n reset_password: \"Réinitialiser le mot de passe\",\n add_user: \"Ajouter un utilisateur\",\n insert_user: \"Insérer un utilisateur\",\n save_changes: \"Enregistrer les modifications\",\n update_profile: \"Mettre à jour le profil\",\n add_email: \"Ajouter un e-mail\",\n select_header_file: \"Sélectionner le fichier d'en-tête\",\n select_footer_file: \"Sélectionner le fichier de pied de page\",\n update_account: \"Mettre à jour le compte\",\n create:\"Créer\",\n create_favorite_list:\"Créer une liste de favoris\",\n add:\"Ajouter\",\n confirm: \"Confirmer\",\n confirm_delete:\"Confirmer la suppression\",\n confirm_remove: \"Confirmer la suppression\",\n next: \"Suivant\",\n prev: \"Précédent\",\n add_funder: \"Ajouter un financeur\",\n },\n input_fields: {\n press_enter: \"Appuyez sur Entrée pour ajouter des mots-clés\",\n },\n accountCreated: \"Compte créé avec succès\",\n accountDisabled: \"Ce compte est désactivé. Pour plus de détails, contactez l'administrateur.\",\n accountDisabledSuccess: \"Compte désactivé avec succès\",\n accountEnabledSuccess: \"Compte activé avec succès\",\n accountNotActivated: \"Votre compte n'est pas actif. Veuillez vérifier votre e-mail pour activer votre compte\",\n accountUpdatedSuccess: \"Compte mis à jour avec succès\",\n additionalEmailNotFound: \"E-mail supplémentaire introuvable\",\n additionalEmailRemovedSuccess: \"E-mail supplémentaire supprimé avec succès\",\n additionalEmailSavedSuccess: \"E-mail supplémentaire enregistré avec succès\",\n additionalUserInsertSuccess: \"Utilisateur supplémentaire ajouté avec succès\",\n additionalUserUpdateSuccess: \"Utilisateur supplémentaire mis à jour avec succès\",\n addressBillingRequired: \"La facturation de l'adresse est obligatoire\",\n alertNotificationSavedSuccess: \"Notification d'alerte enregistrée avec succès\",\n cityBillingRequired: \"La facturation de la ville est obligatoire\",\n complementaryAddressBillingRequired: \"Une facturation d'adresse complémentaire est requise\",\n confirmRegisterUserSuccess: \"Merci d'avoir confirmé votre email\",\n countryBillingRequired: \"La facturation du pays est obligatoire\",\n countryNotFound: \"Pays introuvable\",\n emailExists: \"L'adresse mail existe déjà\",\n errorRegistration: \"Le modèle est vide\",\n expirationDateSavedSuccess: \"Date d'expiration enregistrée avec succès\",\n footerImageRequired: \"L'image de pied de page est obligatoire\",\n imageHeightLength: \"Hauteur d'image invalide\",\n imageWidthLength: \"Largeur d'image invalide\",\n invalidEmailAddress: \"Adresse e-mail invalide\",\n invalidLetterType: \"Type de lettre invalide\",\n invalidPhoneNumber: \"Numéro de téléphone invalide\",\n invalidSubscriptionPlan: \"Plan d'abonnement invalide\",\n invalidUserRole: \"Rôle d'utilisateur invalide\",\n letterheadSavedSuccess: \"En-tête enregistré avec succès\",\n licenseExpired: \"Votre licence a expiré. Pour plus de détails, veuillez contacter l'administrateur\",\n licenseNotFound: \"Aucune licence suffisante n'est disponible. Veuillez contacter support@grantadvance.com\",\n loginFailed: \"Nom d'utilisateur ou mot de passe invalide\",\n masterOnly: \"Seuls les utilisateurs maîtres ont accès à cette ressource\",\n notEnoughLicense: \"Votre organisation n'a pas de licence disponible. Si vous souhaitez ajouter des licences, veuillez cliquer ici pour acheter des licences supplémentaires\",\n notificationExists: \"La notification existe déjà\",\n notificationNotFound: \"Notification introuvable\",\n notificationTypeNotFound: \"Type de notification introuvable\",\n organizationDisabled: \"Cette organisation est désactivée. Pour plus de détails, contactez l'administrateur.\",\n organizationMainAddressUpdatedSuccess: \"Adresse principale de l'organisation mise à jour avec succès\",\n organizationNotFound: \"Organisation introuvable\",\n organizationProfileSavedSuccess: \"Profil d'organisation enregistré avec succès\",\n passwordModified: \"Mot de passe modifié avec succès\",\n passwordRecovery: \"Veuillez vérifier votre messagerie pour réinitialiser votre mot de passe.\",\n passwordReset: \"Réinitialisation du mot de passe réussie\",\n postalCodeBillingRequired: \"Le code postal est obligatoire\",\n profileNotFound: \"Profil non trouvé\",\n provinceOrStateBillingRequired: \"L'état s'impose\",\n provinceOrStateNotFound: \"Etat introuvable\",\n sendActivationLinkSuccess: \"L'e-mail d'activation a été envoyé avec succès\",\n sendPasswordResetSuccess: \"L'e-mail de réinitialisation du mot de passe a été envoyé avec succès\",\n sendSetupPasswordSuccess: \"L'e-mail de configuration du mot de passe a été envoyé avec succès\",\n separatedLicenceExpirationDateError: \"La date d'expiration des licences séparées ne peut pas être supérieure à la date d'expiration de la licence principale\",\n settingUpAccountSuccess: \"Votre compte a été activé avec succès. Vous pouvez maintenant vous connecter\",\n signatureSavedSuccess: \"Signature enregistrée avec succès\",\n subscriptionPlanNotFound: \"Plan d'abonnement introuvable\",\n userLogoutSuccess: \"Déconnexion de l'utilisateur réussie\",\n userNameExists: \"Ce nom d'utilisateur est déjà pris\",\n userNotAllowed: \"L'utilisateur n'est pas autorisé à se connecter\",\n userNotFound: \"Utilisateur non trouvé\",\n userProfileSavedSuccess: \"Profil utilisateur enregistré avec succès\",\n wrongCurrentPassword: \"Mot de passe actuel incorrect\",\n additionalUsersRequired: \"Les utilisateurs supplémentaires sont requis\",\n addressRequired: \"L'adresse est obligatoire\",\n amountDaysRequired: \"Le nombre de jours est obligatoire\",\n amountLicensesRequired: \"Le nombre de licences est requis\",\n amountMonthsRequired: \"Le nombre de mois est requis\",\n amountYearsRequired: \"Le nombre d'années est requis\",\n planAmountRequired: \"Le montant du plan est requis\",\n billingAddressLine2Required: \"L'adresse de facturation complémentaire est obligatoire\",\n billingAddressRequired: \"L'adresse de facturation est obligatoire\",\n billingCityRequired: \"La ville de facturation est obligatoire\",\n billingCountryRequired: \"La facturation du pays est obligatoire\",\n billingPostalCodeRequired: \"Le code postal est obligatoire\",\n billingProvinceOrStateRequired: \"La province/l'état de facturation est obligatoire\",\n cityRequired: \"La ville s'impose\",\n companyNameRequired: \"Le nom de l'entreprise est obligatoire\",\n businessEinRequired: \"BN/EIN est obligatoire\",\n compareConfirmPassword: \"Le mot de passe et le mot de passe de confirmation ne correspondent pas.\",\n complementaryAddressRequired: \"L'adresse complémentaire est obligatoire\",\n confirmPasswordRequired: \"Le mot de passe de confirmation est requis\",\n countryRequired: \"Le pays est requis\",\n displayPlanRequired: \"Le plan d'affichage est obligatoire\",\n emailRequired: \"L'e-mail est obligatoire\",\n firstNameRequired: \"Le prénom est obligatoire\",\n headerImageRequired: \"L'image d'en-tête est obligatoire\",\n invalidEmail: \"Cette adresse email est invalide\",\n invalidRole: \"Rôle d'utilisateur invalide\",\n lastNameRequired: \"Le nom de famille est obligatoire\",\n licenseAmountRange: \"Le nombre de licences doit être supérieur à zéro\",\n licenseRequired: \"La licence est obligatoire\",\n newPasswordRequired: \"Le nouveau mot de passe est requis\",\n notificationTypeRequired: \"Le type de notification est requis\",\n oldPasswordRequired: \"L'ancien mot de passe est requis\",\n organizationIdRequired: \"L'identifiant de l'organisation est requis\",\n passwordLength: \"Le {0} doit contenir au moins {2} et au maximum {1} caractères.\",\n passwordRequired: \"Le mot de passe est obligatoire\",\n phoneRequired: \"Le numéro de téléphone est obligatoire\",\n planDescriptionRequired: \"La description du plan est obligatoire\",\n postalCodeRequired: \"Le code postal est obligatoire\",\n provinceOrStateRequired: \"L'état s'impose\",\n roleRequired: \"Le rôle est requis\",\n signatureRequired: \"La signature est obligatoire\",\n subscriptionPlanNameRequired: \"Le plan d'abonnement est obligatoire\",\n tokenRequired: \"Le jeton est requis\",\n userIdRequired: \"L'ID utilisateur est requis\",\n userNameRequired: \"Le e-mail est requis\",\n planNameRequired: \"Le nom du plan interne est requis\",\n customLetterRequired: \"La lettre personnalisée est obligatoire\",\n customLetterSavedSuccess: \"Lettre personnalisée enregistrée avec succès\",\n customTagDeleteSuccess: \"Balise personnalisée supprimée avec succès\",\n customTagInsertSuccess: \"Balise personnalisée créée avec succès\",\n customTagNotFound: \"Tag personnalisé introuvable\",\n customTagUpdateSuccess: \"Balise personnalisée mise à jour avec succès\",\n documentStateInsertSuccess: \"État du document créé avec succès\",\n inquiryLetterRequired: \"La lettre de demande est obligatoire\",\n inquiryLetterSavedSuccess: \"Lettre de demande enregistrée avec succès\",\n proposalLetterRequired: \"La lettre de proposition est obligatoire\",\n proposalLetterSavedSuccess: \"Lettre de proposition enregistrée avec succès\",\n userProjectRequired: \"Le projet utilisateur est obligatoire\",\n customDocumentTypeRequired: \"Le type de document est obligatoire\",\n documentAmountRequired: \"Le montant est requis\",\n documentFlaggedRequired: \"La date est obligatoire\",\n documentStateRequired: \"L'état du document est obligatoire\",\n tagDescriptionRequired: \"La description de la balise est obligatoire\",\n tagNameRequired: \"Le nom de la balise est obligatoire\",\n blockedFundersDeleteAllSuccess: \"Tous les bailleurs de fonds ont été débloqués avec succès\",\n blockedFundersDeleteSuccess: \"Fondateur débloqué avec succès\",\n blockedFundersInsertSuccess: \"Fondateur bloqué avec succès\",\n blockedFundersNotFound: \"Bailleur de fonds bloqué introuvable\",\n customDatabaseDeleteSuccess: \"Base de données personnalisée supprimée avec succès\",\n customDatabaseFieldsMapRequired: \"S'il vous plaît. Configurez tous les champs obligatoires avant de continuer\",\n customDatabaseNotFound: \"Base de données personnalisée introuvable\",\n customDatabaseUserFieldsEmpty: \"La liste des champs de configuration est vide\",\n favoriteDeleteSuccess: \"Favori supprimé avec succès\",\n favoriteDuplicateSuccess: \"Favori dupliqué avec succès\",\n favoriteFundersDeleteSuccess: \"Le bailleur de fonds préféré a été supprimé avec succès\",\n favoriteFundersInsertSuccess: \"{{fundersAmount}} bailleurs de fonds ajoutés à la liste des bailleurs de fonds {{favoriteName}}\",\n favoriteFundersNotFound: \"Bailleur de fonds préféré introuvable\",\n favoriteFundersUpdateSuccess: \"Mise à jour du bailleur de fonds préféré avec succès\",\n favoriteInsertSuccess: \"Favori créé avec succès\",\n favoriteNotFound: \"Favori introuvable\",\n favoriteUpdateSuccess: \"Mise à jour favorite réussie\",\n fundersListEmpty: \"La liste des bailleurs de fonds est vide\",\n noteDeleteSuccess: \"Note supprimée avec succès\",\n noteInsertSuccess: \"Note créée avec succès\",\n noteNotFound: \"Note introuvable\",\n noteUpdateSuccess: \"Note mise à jour avec succès\",\n noteRequired: \"Une note est requise avant de joindre des documents\",\n notificationDateRequired: \"La date de notification est obligatoire\",\n emailListRequired: \"Sélectionnez l'e-mail\",\n customDatabaseFileRequired: \"Le fichier excel est obligatoire\",\n favoriteNameRequired: \"Le nom du favori est requis\",\n favoriteRequired: \"Le favori est obligatoire\",\n foundationRequired: \"La fondation s'impose\",\n jsonUserFieldsMapRequired: \"S'il vous plaît. Configurez tous les champs obligatoires avant de continuer\",\n labelTypeRequired: \"Le type d'étiquette est obligatoire\",\n letterTypeRequired: \"Sélectionner le type de document à imprimer\",\n noteDescriptionRequired: \"Le descriptif est obligatoire\",\n noteTitleRequired: \"Le titre est obligatoire\",\n bundleInsertSuccess: \"Bundle créé avec succès\",\n bundleNotFound: \"Groupe introuvable\",\n bundleTaskCount: \"Entrez au moins une tâche\",\n bundleTaskNotFound: \"Une ou plusieurs tâches sont introuvables\",\n flagDateRequired: \"La date est obligatoire\",\n flagUpdateSuccess: \"Drapeau mis à jour avec succès\",\n projectBudgetCategoryDescriptionRequired: \"La description de la catégorie est obligatoire\",\n projectBudgetDeleteSuccess: \"Budget supprimé avec succès\",\n projectBudgetDescriptionExists: \"Cette description existe déjà\",\n projectBudgetInsertSuccess: \"Budget ajouté avec succès\",\n projectBudgetNotFound: \"Budget introuvable\",\n projectBudgetResetSuccess: \"Budget réinitialisé avec succès\",\n projectBudgetUpdateSuccess: \"Budget mis à jour avec succès\",\n projectEndDateRequired: \"La date de fin est obligatoire\",\n projectFundersDeleteSuccess: \"Project Funder supprimé avec succès\",\n projectFundersEmpty: \"Veuillez sélectionner au moins un bailleur de fonds avant de continuer\",\n projectFundersInsertSuccess: \"{{funderAmount}} bailleurs de fonds ajoutés au {{projectName}}\",\n projectStartDateRequired: \"La date de début est obligatoire\",\n taskDeleteSuccess: \"Tâche supprimée avec succès\",\n taskEditSuccess: \"Tâche mise à jour avec succès\",\n taskInsertSuccess: \"Tâche créée avec succès\",\n taskListEmpty: \"La liste des tâches est vide\",\n taskNotFound: \"Tâche introuvable\",\n userProjectArchivedSuccess: \"Projet utilisateur archivé avec succès\",\n userProjectDeleteSuccess: \"Projet utilisateur supprimé avec succès\",\n userProjectEndDateRequired: \"La date de fin est obligatoire\",\n userProjectInsertSuccess: \"Projet utilisateur créé avec succès\",\n userProjectListEmpty: \"Sélectionner un ou plusieurs projets\",\n userProjectNotFound: \"Projet introuvable\",\n userProjectStartDateInvalid: \"La date de début est invalide\",\n userProjectStartDateRequired: \"La date de début est obligatoire\",\n userProjectUnarchivedSuccess: \"Projet utilisateur désarchivé avec succès\",\n userProjectUpdateSuccess: \"Projet utilisateur mis à jour avec succès\",\n budgetTypeInvalid: \"Le type de budget n'est pas valide\",\n bundleDescriptionRequired: \"La description du bundle est obligatoire\",\n bundleNameRequired: \"Le nom du bundle est requis\",\n bundleTaskRequired: \"La liste des tâches est obligatoire\",\n flagAmountInvalid: \"Le montant est invalide\",\n flagAmountRequired: \"Le montant est requis\",\n flagStatusRequired: \"Le statut est requis\",\n foundationNameRequired: \"Le nom de la fondation est obligatoire\",\n foundationSourceTypeRequired: \"La source de la fondation est obligatoire\",\n profileIdRequired: \"Le profil est obligatoire\",\n projectBudgetAmountRequired: \"Le montant du budget est requis\",\n projectBudgetDescriptionRequired: \"La description du budget est obligatoire\",\n projectCostInvalid: \"Le coût du projet est invalide\",\n projectCostRequired: \"Le coût du projet est obligatoire\",\n projectDescriptionRequired: \"La description du projet est obligatoire\",\n projectNameRequired: \"Le nom du projet est obligatoire\",\n projectStatusInvalid: \"Le statut du projet est invalide\",\n taskDescriptionRequired: \"La description de la tâche est obligatoire\",\n taskNameRequired: \"Le nom de la tâche est obligatoire\",\n foundationInsertSuccess: \"Fondation ajoutée avec succès\",\n savedSearchDeleteSuccess: \"Recherche supprimée avec succès\",\n savedSearchDescriptionExists: \"Cette description existe déjà\",\n savedSearchInsertSuccess: \"Recherche ajoutée avec succès\",\n savedSearchNotFound: \"Recherche enregistrée introuvable\",\n savedSearchTypeInvalid: \"Le type de recherche enregistré n'est pas valide\",\n savedSearchUpdateSuccess: \"Recherche mise à jour avec succès\",\n descriptionRequired: \"Le descriptif est obligatoire\",\n jsonFieldsRequired: \"Le champ de recherche est obligatoire\",\n searchTypeRequired: \"Le type de recherche est obligatoire\",\n userProjectCompleted: \"Ce projet est marqué comme terminé\",\n sendOnlineApplicationSuccess: \"Message de candidature en ligne envoyé avec succès\",\n sendSuggestionSuccess: \"Suggestion envoyée avec succès\",\n urlRequired: \"L'url est obligatoire\",\n noteSubjectRequired: \"Le sujet est obligatoire\",\n accountDeleted: \"Ce compte a été supprimé. Contactez l'administrateur\",\n userRemovedSuccess: \"Compte supprimé avec succès\",\n userNameOrEmailRequired: \"The User or e-mail name is required\",\n fieldRequired: \"Ce champ est obligatoire\",\n pickupNewPassword: \"Veuillez prendre un nouveau mot de passe\",\n passwordMinCharacter: \"Veuillez saisir au moins {{minimumCharaters}} caractères\",\n enterSameValueAgain: \"Veuillez saisir à nouveau la même valeur\",\n feedbackSubmitted: \"Commentaires soumis avec succès\",\n feedbackInvalidGrantSize: \"Le montant de la subvention n’est pas valide ou trop important\",\n feedbackReviewUpdated: \"Mise à jour de l’avis\",\n announcementDescriptionRequired: \"La description de l'annonce est obligatoire\",\n announcementReleaseDateRequired: \"La date de sortie de l'annonce est requise\",\n announcementReleaseDateInvalid: \"Past dates are not allowed for the Release date\",\n announcementTypeRequired: \"Le type d'annonce est obligatoire\",\n announcementNotFound: \"Annonce introuvable\",\n announcementInsertSuccess: \"Annonce ajoutée avec succès\",\n announcementUpdateSuccess: \"Annonce mise à jour avec succès\",\n announcementDeleteSuccess: \"Annonce supprimée avec succès\",\n notificationNotFound: \"Notification not found\",\n couponNameRequired: \"Le nom du coupon est obligatoire\",\n couponCodeRequired: \"Le code promo est requis\",\n couponCodeFormatInvalid: \"Le code promo n’est pas valide\",\n codeLengthInvalid: \"Maximum de 15 caractères\",\n couponExpirationDateRequired: \"La date ne peut pas être postérieure à plus de 6 mois.\",\n couponExpirationMaxValue: \"La fecha no puede ser mayor a 6 meses a partir de hoy\",\n couponExpirationDateInvalid: \"Date d’expiration non valide\",\n couponSubscriptionPlanRequired: \"Le plan d’abonnement au coupon est requis\",\n couponExtraMonthsAmountInvalid: \"Le mois supplémentaire ne permet que le numéro 1 à 99\",\n couponDiscountAmountInvalid: \"La réduction ne permet que le numéro 1 à 90\",\n couponCodeAlreadyExist: \"Le code promo a déjà été utilisé\",\n couponSubscriptionNotFound: \"La formule d’abonnement est introuvable\",\n couponNotFound: \"Coupon introuvable\",\n couponSelectType: \"Veuillez choisir entre le temps supplémentaire ou la réduction\",\n couponInsertSuccess: \"Coupon ajouté avec succès\",\n couponUpdateSuccess: \"Coupon mis à jour avec succès\",\n couponDeleteSuccess: \"Le coupon a été supprimé avec succès\",\n couponPauseUpdateSuccess: \"Coupon mis à jour avec succès\",\n deadlineEINRequired: \"L’EIN est requis\",\n deadlineFoundationNameRequired: \"Le nom de la fondation est obligatoire\",\n deadlineCategoryRequired: \"La catégorie est obligatoire\",\n deadlineURLRequired: \"L’URL de la date limite est requise\",\n deadlineCountryRequired: \"Le pays est requis\",\n deadlineDateInvalid: \"Permettre uniquement les dates futures\",\n deadlineAmountToobig: \"Le montant de la subvention est trop élevé\",\n deadlineImportSuccess: \"{{fileName}} importé avec succès\",\n deadlineImportSuccessWithWarning: \"Le fichier a été importé avec succès. Cependant, certains éléments ont des ID de profil non valides. Veuillez les mettre à jour en conséquence\",\n deadlineUpdateSuccess: \"Date limite mise à jour avec succès\",\n deadlineDeleteSuccess: \"Fecha límite eliminada con éxito\",\n deadlineRemovePopupMessage: \"Cette action supprimera cette échéance\",\n deadlineReviewCorrectInformation: \"Veuillez vérifier et corriger les informations\",\n deadlineInvalidFoundationDataField: \"Les données fournies par la fondation contiennent une entrée invalide pour le champ {{invalidData}}.\",\n deadlineInvalidFoundationDataFields: \"Les données fournies par la fondation contiennent des entrées non valides pour les champs suivants : {{invalidData}}.\",\n deadlineImportFilePrompt: \"Voulez-vous importer ce fichier ?\",\n thankYouLetterSavedSuccess: \"Lettre de remerciement enregistrée avec succès\",\n impactReportLetterSavedSuccess: \"Lettre de rapport d'impact enregistrée avec succès\",\n historyTypeRequired: \"Le type d'historique est requis\",\n startDateRequired: \"La date de début est obligatoire\",\n startDateInvalid: \"Veuillez sélectionner une date postérieure à aujourd'hui\",\n dateMin: \"Veuillez sélectionner une date ultérieure à aujourd'hui\",\n referralNameCharityRequired: \"Nom de l'organisme de bienfaisance est obligatoire\",\n referralNameContactRequired: \"Nom du contact est obligatoire\",\n referralSubmitted: \"Référence soumise avec succès. Parrainer une autre association caritative\",\n funderQualifiedSuccess: \"Foundation qualified successfully\",\n funderDisqualifiedSuccess: \"Foundation disqualified successfully\",\n templateApplying: \"Pour postuler, veuillez patienter...\",\n templateApplyWarning: \"L’application de cette méthode peut prendre quelques minutes\",\n historyTimeline: {\n fuderAdded: \"Fondation ajoutée au projet\",\n funderRemoved: \"Fondation retirée du projet\",\n noteAdded: \"Note ajoutée\",\n foundationProfileView: \"Profil de la fondation consulté sur le projet\",\n customDoc: \"Document personnalisé\",\n masterDoc: \"Document principal\",\n createdOnProject: \"créé sur le projet\",\n deletedOnProject: \"supprimé sur le projet\",\n statusUpdated: \"Statut mis à jour à\",\n onProject: \"sur le projet\"\n }\n};\n","import ReactDOM from 'react-dom';\n\n// third party\nimport { BrowserRouter } from 'react-router-dom';\nimport { Provider } from 'react-redux';\n\n// project imports\nimport * as serviceWorker from 'serviceWorker';\nimport App from 'App';\nimport Store from 'store';\n\n// style + assets\nimport 'assets/scss/style.scss';\nimport 'App.scss';\n// i18n translations\nimport \"translations/i18n\";\n\n// ==============================|| REACT DOM RENDER ||============================== //\n\nReactDOM.render(\n \n \n \n \n ,\n document.getElementById('root')\n);\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: https://bit.ly/CRA-PWA\nserviceWorker.unregister();\n","// theme constant\nexport const gridSpacing = 3;\nexport const drawerWidth = 260;\nexport const appDrawerWidth = 320;\n","import { emptySplitApi } from './index'\n\nexport const searchEngineApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n searchBySearchType: builder.mutation({\n query: ({ searchType, ...model }) => ({\n url: `api/v1/search-engine-service/search/${searchType}`,\n method: \"POST\",\n body: model\n }),\n }),\n searchByGivingHistory: builder.mutation({\n query: ({ searchType, ...model }) => ({\n url: `api/v1/search-engine-service/search/by-giving-history`,\n method: \"POST\",\n body: model\n }),\n }),\n searchByGivingHistoryV2: builder.mutation({\n query: ({ searchType, ...model }) => ({\n url: `api/v2/search-engine-service/search/by-giving-history`,\n method: \"POST\",\n body: model\n }),\n }),\n getGrantDetails: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-service/search/grant-details/${model.profileId}`,\n method: \"POST\",\n body: model\n }),\n }),\n getGrantDetailsV2: builder.mutation({\n query: (model) => ({\n url: `api/v2/search-engine-service/search/grant-details/${model.profileId}`,\n method: \"POST\",\n body: model\n }),\n }),\n searchByName: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-service/search/by-name`,\n method: \"POST\",\n body: model\n }),\n }),\n searchByNameV2: builder.mutation({\n query: (model) => ({\n url: `api/v2/search-engine-service/search/by-name`,\n method: \"POST\",\n body: model\n }),\n }),\n searchByDirector: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-service/search/by-director`,\n method: \"POST\",\n body: model\n }),\n }),\n searchByDirectorV2: builder.mutation({\n query: (model) => ({\n url: `api/v2/search-engine-service/search/by-director`,\n method: \"POST\",\n body: model\n }),\n }),\n searchByYear: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-service/search/by-year`,\n method: \"POST\",\n body: model\n }),\n }),\n searchByRating: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-service/search/by-rating`,\n method: \"POST\",\n body: model\n }),\n }),\n searchByCustom: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-service/search/by-custom`,\n method: \"POST\",\n body: model\n }),\n }),\n searchByCustomV2: builder.mutation({\n query: (model) => ({\n url: `api/v2/search-engine-service/search/by-custom`,\n method: \"POST\",\n body: model\n }),\n }),\n searchByKeyword: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-service/search/by-keywords`,\n method: \"POST\",\n body: model\n }),\n }),\n searchByKeywordV2: builder.mutation({\n query: (model) => ({\n url: `api/v2/search-engine-service/search/by-keywords`,\n method: \"POST\",\n body: model\n }),\n }),\n getCountries: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-service/country`,\n method: \"GET\",\n }),\n }),\n getInternacionalCountries: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-service/country/internacional`,\n method: \"GET\",\n }),\n }),\n getCounties: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-service/country/counties`,\n method: \"POST\",\n body: model\n }),\n }),\n getCitiesByCounties: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-service/country/cities-by-counties`,\n method: \"POST\",\n body: model\n }),\n }),\n searchByInternacionalFunding: builder.mutation({\n query: (model) => ({\n url: `api/v1/search-engine-service/search/by-internacional-funding`,\n method: \"POST\",\n body: model\n }),\n }),\n searchByInternacionalFundingV2: builder.mutation({\n query: (model) => ({\n url: `api/v2/search-engine-service/search/by-internacional-funding`,\n method: \"POST\",\n body: model\n }),\n }),\n getEnhancedWordsV2: builder.mutation({\n query: (model) => ({\n url: `api/v2/search-engine-service/search/enhancement-words`,\n method: \"POST\",\n body: model\n }),\n }),\n searchDeadlines: builder.mutation({\n query: (model) => ({\n url: `api/v2/search-engine-service/search/deadlines`,\n method: \"POST\",\n body: model\n }),\n }),\n getFoundationApplicationByProfileId: builder.mutation({\n query: (profileId) => ({\n url: `api/v2/search-engine-service/search/application-foundation/${profileId}`,\n method: \"GET\",\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const {\n useSearchBySearchTypeMutation,\n useSearchByGivingHistoryMutation,\n useSearchByGivingHistoryV2Mutation,\n useGetGrantDetailsMutation,\n useGetGrantDetailsV2Mutation,\n useSearchByNameMutation,\n useSearchByDirectorMutation,\n useSearchByYearMutation,\n useSearchByRatingMutation,\n useSearchByCustomMutation,\n useSearchByCustomV2Mutation,\n useSearchByKeywordMutation,\n useGetCountriesMutation,\n useGetCountiesMutation,\n useGetCitiesByCountiesMutation,\n useGetInternacionalCountriesMutation,\n useSearchByInternacionalFundingMutation,\n useSearchByInternacionalFundingV2Mutation,\n useGetEnhancedWordsV2Mutation,\n useSearchByNameV2Mutation,\n useSearchByDirectorV2Mutation,\n useSearchByKeywordV2Mutation,\n useSearchDeadlinesMutation,\n useGetFoundationApplicationByProfileIdMutation\n} = searchEngineApi;\n","import PropTypes from 'prop-types';\nimport { forwardRef } from 'react';\n\n// material-ui\nimport { useTheme } from '@mui/material/styles';\nimport { Card, CardContent, CardHeader, Divider, Typography, Grid } from '@mui/material';\n\n// ==============================|| CUSTOM SUB CARD ||============================== //\n\nconst SubCard = forwardRef(({ children, content, contentClass, darkTitle, secondary, sx = {}, contentSX = {}, title, extra, ...others }, ref) => {\n const theme = useTheme();\n return (\n \n {/* card header and action */}\n { extra.length === 0 ? \n ( \n !darkTitle && title && \n {title}} action={secondary} />\n )\n : ( \n !darkTitle && title && (\n \n \n {title}\n \n {extra && (\n \n \n {extra.map((item, index) => (\n 0 ? theme.spacing(2) : 0 }}>\n {item}\n \n ))}\n \n \n )}\n \n }\n action={secondary}\n />\n )\n )}\n\n { extra.length === 0 ? \n ( \n darkTitle && title && \n {title}} action={secondary} />\n )\n : (\n darkTitle && title && (\n \n \n {title}\n \n {extra && (\n \n \n {extra.map((item, index) => (\n 0 ? theme.spacing(2) : 0 }}>\n {item}\n \n ))}\n \n \n )}\n \n }\n action={secondary}\n />\n )\n )}\n\n {/* content & header divider */}\n {title && (\n \n )}\n\n {/* card content */}\n {content && (\n \n {children}\n \n )}\n {!content && children}\n \n );\n});\n\nSubCard.propTypes = {\n children: PropTypes.node,\n content: PropTypes.bool,\n contentClass: PropTypes.string,\n darkTitle: PropTypes.bool,\n secondary: PropTypes.oneOfType([PropTypes.node, PropTypes.string, PropTypes.object]),\n sx: PropTypes.object,\n contentSX: PropTypes.object,\n title: PropTypes.oneOfType([PropTypes.node, PropTypes.string, PropTypes.object]),\n extra: PropTypes.arrayOf(PropTypes.node)\n};\n\nSubCard.defaultProps = {\n content: true,\n extra: []\n};\n\nexport default SubCard;\n","import { emptySplitApi } from './index'\n\nexport const subscriptionPlanApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getPublicPlans: builder.query({\n query: () => `api/v1/auth-service/plan/public` ,\n }),\n getPlans: builder.query({\n query: () => `api/v1/auth-service/plan` ,\n }),\n createSubscriptionPlan : builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/plan/create-subscription-plan`,\n method: \"POST\",\n body: model\n })\n }),\n getSubscriptionPlan: builder.mutation({\n query: (subscriptionPlanId) => ({\n url: `api/v1/auth-service/plan/subscription-plan/${subscriptionPlanId}`,\n method: \"GET\",\n }),\n }),\n getSubscriptionPlanFormatted: builder.mutation({\n query: (subscriptionPlanId) => ({\n url: `api/v1/auth-service/plan/subscription-plan-formatted/${subscriptionPlanId}`,\n method: \"GET\",\n }),\n }),\n updateSubscriptionPlan: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/plan/edit-subscription-plan/`,\n method: \"PATCH\",\n body: model\n }),\n }),\n getAllSubscriptionPlansPagedList: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/plan/all-subscription-plan?`\n + `searchTerm=${model?.searchTerm || ''}`\n + `&status=${model?.status}`\n + `&pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || ''}`\n + `&orderField=${model?.orderField || 'subscriptionPlanName'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`,\n method: \"GET\"\n }),\n }),\n deleteSubscriptionPlan: builder.mutation({\n query: (subscriptionPlanId) => ({\n url: `api/v1/auth-service/plan/${subscriptionPlanId}`,\n method: \"DELETE\",\n }),\n }),\n applySubscriptionPlanTax: builder.mutation({\n query: (model) => ({\n url: `api/v1/auth-service/plan/apply-subscription-plan-tax`,\n method: \"POST\",\n body: model\n }),\n }),\n\n }),\n overrideExisting: false,\n});\n\nexport const { \n useGetPublicPlansQuery, \n useGetPlansQuery, \n useCreateSubscriptionPlanMutation,\n useGetSubscriptionPlanMutation,\n useGetSubscriptionPlanFormattedMutation,\n useUpdateSubscriptionPlanMutation,\n useGetAllSubscriptionPlansPagedListMutation,\n useDeleteSubscriptionPlanMutation,\n useApplySubscriptionPlanTaxMutation\n} = subscriptionPlanApi;\n","import { nonUserApi } from './index'\n\nconst getSEPath = (string) => {\n if (!string) {\n return \"search-engine-service\";\n }\n return string?.length > 10 ? \"search-engine-ca-service\" : \"search-engine-service\";\n}\n\nconst getSEPathFromCountryCode = (countryCode) => {\n return countryCode === \"CA\" ? \"search-engine-ca-service\" : \"search-engine-service\";\n}\n\nexport const publicProfileApi = nonUserApi.injectEndpoints({\n endpoints: (builder) => ({\n getPublicProfile: builder.query({\n query: (profileId) => ({\n url: `api/v1/${getSEPath(profileId)}/public-foundation-profile`,\n method: \"GET\",\n params: { profileId }\n }),\n }),\n getPublicFinancialList: builder.query({\n query: (profileId) => ({\n url: `api/v1/${getSEPath(profileId)}/public-foundation-profile/financial-list`,\n method: \"GET\",\n params: { profileId },\n }),\n }),\n getPublicApplication: builder.query({\n query: (profileId) => ({\n url: `api/v1/${getSEPath(profileId)}/public-foundation-profile/applications`,\n method: \"GET\",\n params: { profileId },\n }),\n }),\n getPublicGiftsPagedList: builder.query({\n query: (filters) => ({\n url: `api/v2/${getSEPath(filters.profileId)}/public-foundation-profile/gifts/${filters.profileId}`,\n method: \"POST\",\n body: { ...filters },\n }),\n }),\n getPublicCounties: builder.mutation({\n query: (params) => ({\n url: `api/v1/${getSEPathFromCountryCode(params.country)}/public-foundation-profile/counties`,\n method: \"POST\",\n body: params.codes,\n }),\n }),\n getPublicDirectorsPagedList: builder.query({\n query: (filters) => ({\n url: `api/v1/${getSEPath(filters.profileId)}/public-foundation-profile/directors/${filters.profileId}`,\n method: \"GET\",\n params: { ...filters },\n }),\n }),\n getPublicTaxReturn: builder.query({\n query: (profileId) => ({\n url: `api/v1/${getSEPath(profileId)}/public-foundation-profile/tax-return`,\n method: \"GET\",\n params: { profileId },\n }),\n }),\n getPublicChartProvinceList: builder.query({\n query: (profileId) => ({\n url: `api/v1/${getSEPath(profileId)}/public-foundation-profile/charts/province-list`,\n method: \"GET\",\n params: { profileId },\n }),\n }),\n getPublicRangeAmountList: builder.query({\n query: (profileId) => ({\n url: `api/v1/${getSEPath(profileId)}/public-foundation-profile/charts/range-amount`,\n method: \"GET\",\n params: { profileId },\n }),\n }),\n getPublicRangeSectorList: builder.query({\n query: (profileId) => ({\n url: `api/v1/${getSEPath(profileId)}/public-foundation-profile/charts/range-sector`,\n method: \"GET\",\n params: { profileId },\n }),\n }),\n getPublicSector: builder.query({\n query: (profileId) => ({\n url: `api/v1/${getSEPath(profileId)}/public-foundation-profile/sector`,\n method: \"GET\",\n }),\n }),\n }),\n overrideExisting: false,\n});\n\nexport const {\n useGetPublicProfileQuery,\n useGetPublicFinancialListQuery,\n useGetPublicApplicationQuery,\n useGetPublicGiftsPagedListQuery,\n useGetPublicCountiesMutation,\n useGetPublicDirectorsPagedListQuery,\n useGetPublicTaxReturnQuery,\n useGetPublicChartProvinceListQuery,\n useGetPublicSectorQuery,\n useGetPublicRangeAmountListQuery,\n useGetPublicRangeSectorListQuery,\n} = publicProfileApi;","import { emptySplitApi } from './index'\n\nexport const projectFundersApi = emptySplitApi.injectEndpoints({\n endpoints: (builder) => ({\n getAllProjectFunders: builder.mutation({\n query: (model) => ({\n url: `api/v1/project-service/project-funders?`\n + `pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || ''}`\n + `&orderField=${model?.orderField || 'userName'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`\n + `&userProjectId=${model?.userProjectId}`\n + `&letterType=${model?.letterType}`\n + `&withCustomDocument=${false}`,\n method: \"GET\"\n }),\n }),\n getAllProjectFundersCustomDocument: builder.mutation({\n query: (model) => ({\n url: `api/v1/project-service/project-funders?`\n + `pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || ''}`\n + `&orderField=${model?.orderField || 'userName'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`\n + `&userProjectId=${model?.userProjectId}`\n + `&letterType=${model?.letterType}`\n + `&flagFilter=${model?.flagFilter}`\n + `&withCustomDocument=${true}`,\n method: \"GET\"\n }),\n }),\n getAllProjectFundersDocument: builder.mutation({\n query: (model) => ({\n url: `api/v1/project-service/project-funders/v2?`\n + `pageNumber=${model?.pageNumber || 0}`\n + `&pageSize=${model?.pageSize || ''}`\n + `&orderField=${model?.orderField || 'userName'}`\n + `&orderDirection=${model?.orderDirection || 'asc'}`\n + `&userProjectId=${model?.userProjectId}`\n + `&flagFilter=${model?.flagFilter}`\n + `&documentType=${model?.documentType || 'All'}`\n + `&foundationStatus=${model?.foundationStatus || 'All'}`,\n method: \"GET\"\n }),\n }),\n getProjectFundersList: builder.mutation({\n query: ({ userProjectId }) => ({\n url: `api/v1/project-service/project-funders/list/${userProjectId}`,\n method: \"GET\"\n })\n }),\n getFunderProjects: builder.mutation({\n query: (model) => ({\n url: `api/v1/project-service/project-funders/funder-projects?`\n + `funderId=${model.funderId}`\n + `¤tProjectId=${model.currentProjectId}`,\n method: \"GET\",\n }),\n }),\n insertProjectFunders: builder.mutation({\n query: (model) => ({\n url: `api/v1/project-service/project-funders`,\n method: \"POST\",\n body: model\n }),\n }),\n getAllProjectFundersProfileId: builder.mutation({\n query: (userProjectId) => ({\n url: `api/v1/project-service/project-funders/${userProjectId}`,\n method: \"GET\",\n }),\n }),\n insertFunderToProjects: builder.mutation({\n query: (model) => ({\n url: `api/v1/project-service/project-funders/projects`,\n method: \"POST\",\n body: model\n }),\n }),\n getProjectFundersCustomDocument: builder.mutation({\n query: ({userProjectId, letterType}) => ({\n url: `api/v1/project-service/project-funders/custom-document/${userProjectId}/${letterType}`,\n method: \"POST\"\n }),\n }),\n updateFlag: builder.mutation({\n query: (model) => ({\n url: `api/v1/project-service/project-funders/flag-update`,\n method: \"POST\",\n body: model\n }),\n }),\n bulkUpdateFlag: builder.mutation({\n query: (model) => ({\n url: `api/v1/project-service/project-funders/bulk-flag-update`,\n method: \"POST\",\n body: model\n }),\n }),\n removeManyProjectFunders: builder.mutation({\n query: ({ userProjectId, profileIdList }) => ({\n url: `api/v1/project-service/project-funders/remove-many/${userProjectId}`,\n method: \"DELETE\",\n body: [...profileIdList]\n }),\n }),\n removeCurrentFundersFromOtherProjects: builder.mutation({\n query: ({ userProjectId, selectedProjectIdList }) => ({\n url: `api/v1/project-service/project-funders/remove-from-projects/${userProjectId}`,\n method: \"DELETE\",\n body: [...selectedProjectIdList]\n }),\n }),\n removeFundersFromProjects: builder.mutation({\n query: (model) => ({\n url: `api/v1/project-service/project-funders/remove-funders-from-projects`,\n method: \"DELETE\",\n body: model\n }),\n }),\n\n }),\n overrideExisting: false,\n});\n\nexport const { \n useGetAllProjectFundersMutation,\n useGetAllProjectFundersCustomDocumentMutation,\n useGetProjectFundersListMutation,\n useGetFunderProjectsMutation,\n useInsertProjectFundersMutation,\n useGetAllProjectFundersProfileIdMutation,\n useInsertFunderToProjectsMutation,\n useGetProjectFundersCustomDocumentMutation,\n useUpdateFlagMutation,\n useBulkUpdateFlagMutation,\n useRemoveManyProjectFundersMutation,\n useRemoveCurrentFundersFromOtherProjectsMutation,\n useRemoveFundersFromProjectsMutation,\n useGetAllProjectFundersDocumentMutation,\n} = projectFundersApi;\n","\nconst startcase = (str, force = true) => {\n if(!str) return null;\n \n if(force === true)\n str = str.toLowerCase();\n\n return str.replace(/\\b\\w/g, match => match.toUpperCase());\n}\n\nexport default startcase;"],"sourceRoot":""}