{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/shared/components/snackbar/snackbar.scss?a65c","webpack:///./src/dcsExternal/components/auto-login/auto-login.scss","webpack:///./src/dcsExternal/components/home/home.scss?3922","webpack:///./src/assets/logo_vertical.svg","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/shared/components/header-stepper/header-stepper.scss?b77c","webpack:///./src/dcsExternal/components/top-up/top-up.scss?9cc3","webpack:///./src/dcsExternal/app.scss?60a6","webpack:///./src/shared/components/loading-spinner/loading-spinner.scss?7cab","webpack:///./src/dcsExternal/components/e-contract/e-contract.scss?1f90","webpack:///./src/shared/components/logout/logout.scss","webpack:///./src/shared/components/page-footer/page-footer.scss?d38c","webpack:///./src/dcsExternal/components/card-portrait/card-portrait.scss?9401","webpack:///./src/dcsExternal/components/edit-contract-confirmation/edit-contract-confirmation.scss?9022","webpack:///./src/dcsExternal/components/help-content/help-content.scss?7b92","webpack:///./src/dcsExternal/components/e-contract-details/e-contract-details.scss?49a7","webpack:///./src/shared/components/dropdown-button/dropdown-button.scss?58bf","webpack:///./src/shared/components/std-page-layout/std-page-layout.scss?bbce","webpack:///./src/dcsExternal/components/e-contract-payment/e-contract-payment.scss?b394","webpack:///./src/assets/logo.svg","webpack:///./src/shared/components/page-header/account-info-panel/account-info-panel.scss?fa32","webpack:///./src/dcsExternal/components/card-landscape/card-landscape.scss?87bd","webpack:///./src/dcsExternal/components/confirmation-table/confirmation-table.scss?82f5","webpack:///./src/dcsExternal/components/e-contract-review/e-contract-review.scss?7877","webpack:///./src/shared/components/page-header/page-header/page-header.scss?7749","webpack:///./src/dcsExternal/app.html","webpack:///./src/shared/config/config.ts","webpack:///./src/shared/modules/authentication/authentication-status.ts","webpack:///./src/shared/constants/route-name.ts","webpack:///./src/shared/models/user.ts","webpack:///./src/shared/models/token.ts","webpack:///./src/shared/models/session.ts","webpack:///./src/shared/models/authorized-user.ts","webpack:///./src/shared/config/url.ts","webpack:///./src/shared/modules/authentication/authentication.service.ts","webpack:///./src/shared/modules/typescript-api-client/base.ts","webpack:///./src/shared/modules/typescript-api-client/apis/adjustment-api.ts","webpack:///./src/shared/modules/typescript-api-client/apis/code-api.ts","webpack:///./src/shared/modules/typescript-api-client/apis/contract-api.ts","webpack:///./src/shared/modules/typescript-api-client/apis/external-api.ts","webpack:///./src/shared/modules/typescript-api-client/apis/internal-api.ts","webpack:///./src/shared/modules/typescript-api-client/apis/system-api.ts","webpack:///./src/shared/modules/dcs-api/index.ts","webpack:///./src/shared/store/index.ts","webpack:///./src/shared/components/snackbar/snackbar.html","webpack:///./src/shared/components/snackbar/snackbar.ts","webpack:///./src/shared/components/snackbar/index.vue","webpack:///./src/dcsExternal/appInsights.ts","webpack:///./src/dcsExternal/app.ts","webpack:///./src/dcsExternal/app.vue","webpack:///./src/registerServiceWorker.ts","webpack:///./src/dcsExternal/components/home/home.html","webpack:///./src/shared/components/help-screen/help-screen.html","webpack:///./src/shared/components/help-screen/help-screen.ts","webpack:///./src/shared/components/help-screen/index.vue","webpack:///./src/dcsExternal/components/card-landscape/card-landscape.html","webpack:///./src/dcsExternal/components/card-landscape/card-landscape.ts","webpack:///./src/dcsExternal/components/card-landscape/index.vue","webpack:///./src/dcsExternal/components/card-portrait/card-portrait.html","webpack:///./src/shared/utils/index.ts","webpack:///./src/dcsExternal/components/card-portrait/card-portrait.ts","webpack:///./src/dcsExternal/components/card-portrait/index.vue","webpack:///./src/dcsExternal/components/history-search/history-search.html","webpack:///./src/shared/components/dropdown-button/dropdown-button.html","webpack:///./src/shared/components/dropdown-button/dropdown-button.ts","webpack:///./src/shared/components/dropdown-button/index.vue","webpack:///./src/shared/components/loading-spinner/loading-spinner.html","webpack:///./src/shared/components/loading-spinner/loading-spinner.ts","webpack:///./src/shared/components/loading-spinner/index.vue","webpack:///./src/shared/components/alert-box/alert-box.html","webpack:///./src/shared/components/alert-box/alert-box.ts","webpack:///./src/shared/components/alert-box/index.vue","webpack:///./src/shared/constants/section-name.ts","webpack:///./src/dcsExternal/components/history-search/history-search.ts","webpack:///./src/dcsExternal/components/history-search/index.vue","webpack:///./src/shared/models/new-contract.ts","webpack:///./src/dcsExternal/components/help-content/help-content.html","webpack:///./src/dcsExternal/components/help-content/help-content.ts","webpack:///./src/dcsExternal/components/help-content/index.vue","webpack:///./src/dcsExternal/components/home/home.ts","webpack:///./src/dcsExternal/components/home/index.vue","webpack:///./src/shared/components/logout/logout.html","webpack:///./src/shared/modules/authentication/authentication.ts","webpack:///./src/shared/components/logout/logout.ts","webpack:///./src/shared/components/logout/index.vue","webpack:///./src/dcsExternal/components/auto-login/auto-login.html","webpack:///./src/shared/components/std-page-layout/std-page-layout.html","webpack:///./src/shared/components/page-header/page-header/page-header.html","webpack:///./src/shared/components/page-header/account-info-panel/account-info-panel.html","webpack:///./src/shared/components/page-header/application-menu/application-menu.html","webpack:///./src/shared/components/page-header/application-menu/application-menu.ts","webpack:///./src/shared/components/page-header/application-menu/index.vue","webpack:///./src/shared/components/page-header/account-info-panel/account-info-panel.ts","webpack:///./src/shared/components/page-header/account-info-panel/index.vue","webpack:///./src/shared/components/page-header/page-header/page-header.ts","webpack:///./src/shared/components/page-header/page-header/index.vue","webpack:///./src/shared/components/page-footer/page-footer.html","webpack:///./src/shared/components/page-footer/page-footer.ts","webpack:///./src/shared/components/page-footer/index.vue","webpack:///./src/shared/components/std-page-layout/std-page-layout.ts","webpack:///./src/shared/components/std-page-layout/index.vue","webpack:///./src/dcsExternal/components/auto-login/auto-login.ts","webpack:///./src/dcsExternal/components/auto-login/index.vue","webpack:///./src/dcsExternal/components/external-main/external-main.html","webpack:///./src/shared/modules/session/session.ts","webpack:///./src/shared/modules/session/idle-session-manager.ts","webpack:///./src/dcsExternal/components/external-main/external-main.ts","webpack:///./src/dcsExternal/components/external-main/index.vue","webpack:///./src/dcsExternal/components/e-contract/e-contract.html","webpack:///./src/shared/components/header-stepper/header-stepper.html","webpack:///./src/shared/components/header-stepper/nav-step.ts","webpack:///./src/shared/components/header-stepper/header-stepper.ts","webpack:///./src/shared/components/header-stepper/index.vue","webpack:///./src/dcsExternal/components/e-contract-confirmation/e-contract-confirmation.html","webpack:///./src/dcsExternal/components/confirmation-table/confirmation-table.html","webpack:///./src/dcsExternal/components/confirmation-table/confirmation-table.ts","webpack:///./src/dcsExternal/components/confirmation-table/index.vue","webpack:///./src/dcsExternal/components/e-contract-confirmation/e-contract-confirmation.ts","webpack:///./src/dcsExternal/components/e-contract-confirmation/index.vue","webpack:///./src/dcsExternal/components/e-contract-details/e-contract-details.html","webpack:///./src/dcsExternal/components/e-contract-details/e-contract-details.ts","webpack:///./src/dcsExternal/components/e-contract-details/index.vue","webpack:///./src/dcsExternal/components/e-contract-payment/e-contract-payment.html","webpack:///./src/shared/components/credit-card-payment/credit-card-payment.html","webpack:///./src/shared/components/credit-card-payment/payway-style.ts","webpack:///./src/shared/components/credit-card-payment/credit-card-payment.ts","webpack:///./src/shared/components/credit-card-payment/index.vue","webpack:///./src/dcsExternal/components/e-contract-payment/e-contract-payment.ts","webpack:///./src/dcsExternal/components/e-contract-payment/index.vue","webpack:///./src/dcsExternal/components/e-contract-review/e-contract-review.html","webpack:///./src/dcsExternal/components/e-contract-review/e-contract-review.ts","webpack:///./src/dcsExternal/components/e-contract-review/index.vue","webpack:///./src/dcsExternal/components/e-contract/e-contract.ts","webpack:///./src/dcsExternal/components/e-contract/index.vue","webpack:///./src/dcsExternal/components/top-up/top-up.html","webpack:///./src/dcsExternal/components/top-up-confirmation/top-up-confirmation.html","webpack:///./src/dcsExternal/components/top-up-confirmation/top-up-confirmation.ts","webpack:///./src/dcsExternal/components/top-up-confirmation/index.vue","webpack:///./src/shared/components/currency-input/index.vue","webpack:///./src/shared/components/currency-input/index.vue?b46e","webpack:///./src/dcsExternal/components/top-up/top-up.ts","webpack:///./src/dcsExternal/components/top-up/index.vue","webpack:///./src/dcsExternal/components/edit-contract/edit-contract.html","webpack:///./src/dcsExternal/components/edit-contract-confirmation/edit-contract-confirmation.html","webpack:///./src/dcsExternal/components/edit-contract-confirmation/edit-contract-confirmation.ts","webpack:///./src/dcsExternal/components/edit-contract-confirmation/index.vue","webpack:///./src/dcsExternal/components/edit-contract/edit-contract.ts","webpack:///./src/dcsExternal/components/edit-contract/index.vue","webpack:///./src/dcsExternal/components/access-error/access-error.html","webpack:///./src/dcsExternal/components/access-error/access-error.ts","webpack:///./src/dcsExternal/components/access-error/index.vue","webpack:///./src/dcsExternal/router/index.ts","webpack:///./src/dcsExternal/main.ts","webpack:///./src/shared/components/alert-box/alert-box.scss?5961","webpack:///./src/shared/components/page-header/application-menu/application-menu.scss?06a2","webpack:///./src/dcsExternal/components/history-search/history-search.scss?730a","webpack:///./src/shared/components/credit-card-payment/credit-card-payment.scss?878b","webpack:///./src/dcsExternal/components/access-error/access-error.scss?6a3f","webpack:///./src/dcsExternal/components/external-main/external-main.scss","webpack:///./src/shared/components/help-screen/help-screen.scss?d4b8","webpack:///./src/dcsExternal/components/edit-contract/edit-contract.scss?fc5e","webpack:///./src/dcsExternal/components/top-up-confirmation/top-up-confirmation.scss?6be4","webpack:///./src/assets/logo-white.svg","webpack:///./src/dcsExternal/components/e-contract-confirmation/e-contract-confirmation.scss?6aa8"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","map","webpackContext","req","id","webpackContextResolve","e","Error","code","keys","resolve","render","_ctx","_cache","_component_SnackBar","_component_router_view","prefix","storageType","localUrl","location","href","split","AuthenticationStatusType","AZ_INSTRUMENT_KEY_EXT","API_URL","VUE_APP_TOKEN_URL","IDLE_TIMEOUT","parseInt","TOKEN_REFRESH_TIME","SELF_URL","PUBLISHABLE_API_KEY","RouteN","NoAccess","DCSI","Main","Home","PaymentAdjustment","eContract","About","LoginPage","LogoutPage","DCSE","TopUp","EditContract","History","AccessError","externalId","email","firstName","lastName","title","userName","lawId","isMember","isPcHolder","securityGroups","roles","clientId","tokenStr","userId","issued","expires","Math","round","Date","getTime","this","user","token","session","authenticationStatus","Unknown","Url","Token","Login","Logout","authedUser","axios","options","headers","tokenResp","LoggedIn","Promise","reject","response","status","NotLogin","BASE_PATH","replace","configuration","basePath","field","msg","apiV1AdjustmentAdjustPost","body","localVarPath","localVarUrlObj","URL","baseOptions","localVarRequestOptions","method","localVarHeaderParameter","localVarQueryParameter","query","URLSearchParams","search","set","toString","headersFromBaseOptions","needsSerialization","JSON","stringify","undefined","url","pathname","hash","localVarAxiosArgs","axiosRequestArgs","request","then","apiV1CodeGetFileTypesGet","apiV1CodeGetPaymentTypesGet","apiV1CodeGetTransactionTypesGet","apiV1ContractAddContractPost","apiV1ContractDeleteContractIdDelete","encodeURIComponent","String","apiV1ContractGetAllContractsGet","apiV1ContractGetBlobFileGet","blobFilePath","apiV1ContractGetContractCategoriesGet","apiV1ContractGetContractIdGet","apiV1ContractGetContractInternalIdGet","apiV1ContractGetContractSubCategoriesGet","apiV1ContractGetContractWithThumbnailIdGet","apiV1ContractGetContractsGet","apiV1ContractGetContractsWithThumbnailGet","apiV1ContractHasUpdatedContractsUtcTimeStampGet","utcTimeStamp","apiV1ContractUpdateContractPut","apiV1ContractUpdateContractStatusIdStatusPut","apiV1ExternalCreateContractOrderPost","apiV1ExternalDeleteContractOrderDelete","contractOrderId","apiV1ExternalGetContractOrderDetailContractOrderIdGet","apiV1ExternalGetFileFileIdGet","fileId","apiV1ExternalGetPurchaseHistoryDetailTransactionIdGet","transactionId","apiV1ExternalGetPurchaseHistoryPost","apiV1ExternalGetUserBalanceGet","apiV1ExternalGetZippedFileTransactionIdGet","apiV1ExternalTopupPrepaidBalancePost","apiV1ExternalUpdateContractOrderPut","apiV1ExternalUpdateFinalizedContractOrderDetailPut","apiV1InternalRegenerateContractOrdersPost","apiV1InternalSearchUserGet","searchString","apiV1SystemAuthorizedPingGet","apiV1SystemGetAuthError401Get","apiV1SystemGetAuthError403Get","apiV1SystemGetBaseDateGet","apiV1SystemGetBaseDateUtcGet","apiV1SystemGetBaseDateWebJobGet","apiV1SystemPingGet","apiV1SystemPingLsApiGet","apiV1SystemPingLsApiPolarisGet","apiV1SystemPingLsApiSchemeApiGet","apiV1SystemSaveLogEntryBusinessPost","apiV1SystemSetConfigCurrentDateDateTimeStringGet","dateTimeString","CodeApi","AdjustmentApi","ContractApi","InternalApi","ExternalApi","systemApi","state","eventController","authorizedUser","snackbar","searchType","searchKeyword","searchResult","selectedMember","contractData","mutations","setUserAccount","setSnackbar","sb","setSearchType","st","sessionStorage","setItem","setSearchKeyword","sk","setSearchResult","sr","setSelectedMember","setContractData","cd","actions","commit","getters","getEventController","getUserAccount","getSnackbar","getSearchType","getSearchKeyword","getSearchResult","getSelectedMember","getContractData","_hoisted_1","class","_hoisted_2","showSnackbar","ref","statusType","message","onClick","$event","close","timeoutID","stayOnTiming","store","statusT","setTimeout","$refs","eventCtrl","on","show","removeListener","__exports__","appInsights","config","instrumentationKey","enableAutoRouteTracking","loadAppInsights","trackPageView","eventString","trackEvent","err","trackException","exception","trackTrace","avg","trackMetric","average","pageName","startTrackPage","props","stopTrackPage","et","startTrackEvent","flush","ai","apiService","apiAxios","a","authApiAxios","authService","gettingToken","interceptors","use","refreshToken","checkAuthentication","Authorization","error","document","$route","fullPath","to","reactive","components","SnackBar","ready","console","log","registered","cached","updatefound","updated","offline","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_component_LoadingSpinner","_component_CardPortrait","_component_HistorySearch","_component_HelpContent","_component_HelpScreen","isLoadingData","displayName","contactUs","showHelpScreen","style","selectType","toCurrency","prepaidBalance","disabled","topUp","contractList","idx","onNewContract","newContract","contract","onClose","header","helpContentData","_","default","isClosing","$slots","classList","add","addEventListener","onEscape","remove","removeEventListener","toLowerCase","$emit","src","getImageSrc","contractType","description","sku","feeMember","feeNonMember","purchaseClick","_value","val","toFixed","indexOf","S4","random","substring","substr","dataURI","_type","byteString","atob","arrayBuffer","ArrayBuffer","int8Array","Uint8Array","charCodeAt","blob","Blob","type","utils","$toCurrency","path","thumbnailAzureStorageBlobPath","base64Data","thumbnailBase64","endsWith","_hoisted_24","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31","_hoisted_32","_hoisted_33","_hoisted_34","_hoisted_35","_hoisted_36","_hoisted_37","_hoisted_38","_hoisted_39","_hoisted_40","_hoisted_41","_hoisted_42","_hoisted_43","_hoisted_44","_hoisted_45","_hoisted_46","_hoisted_47","_hoisted_48","_hoisted_49","_hoisted_50","_hoisted_51","_hoisted_52","_hoisted_53","_hoisted_54","_hoisted_55","_hoisted_56","_hoisted_57","_hoisted_58","_hoisted_59","_hoisted_60","_hoisted_61","_hoisted_62","_hoisted_63","_hoisted_64","_hoisted_65","_hoisted_66","_hoisted_67","_hoisted_68","_hoisted_69","_hoisted_70","_hoisted_71","_hoisted_72","_hoisted_73","_hoisted_74","_hoisted_75","_hoisted_76","_component_DropdownButton","_component_AlertBox","searchFieldType","onKeydown","newSearch","loadMoreOptions","placeholder","searchPlaceHolderText","isSearching","purchaseHistory","historyTableHeader","h","index","scope","sortMemberColumn","sortable","text","activeSortHeader","sortMethod","purchaseHistoryDetails","idx_p","createdOnText","createdOn","referenceId","deleteContract","resumeContract","transaction","fileTypes","contractCatId","menuType","menuType2","onSelected","selected","isValidContract","showWarningAlertWithMsg","toggleHiddenRows","uniqueContractId","displayMode","address","isFinalisedOrder","isModifiedOrder","contractCategoryId","isEditable","editContract","menuType1","uniqueContract","loadMore","showDeleteAlert","footer","deleteIt","showWarningAlert","warningMsg","buttonClicked","buttonRef","buttonText","dropdownRef","menuOptions","fileName","fileTypeId","menuText","multiple","$guid","setFileTypes","files","getMenuText","_files","filter","contractOrderDetailId","el","toggle","clickedElement","_file","f","_filter","_menuText","elBtn","target","Number","Section","Details","Review","Payment","Prepayment","Confirmation","Add","Update","localDebug","historyList","selectedContractId","searchClicked","skip","take","totalCount","_returnString","ISOdate","format","getActiveContracts","getFileTypes","_ft","getItem","parse","res","catch","emit","getPurchaseHistory","_normalSearch","keyword","_options","_purchaseHistory","arrowRef","hId","arrow","className","setHidden","hide","option","blobString","fileBytes","link","createElement","createObjectURL","dataURItoBlob","download","click","revokeObjectURL","$dataURItoBlob","contractId","initialiseContractData","$router","cid","sec","initialiseContractDetailData","pid","_contractOrderDetailData","businessName","additionalInfo","watermark","numOfContract","contractDescriptionLookup","contractEdition","contractEditionLookup","dispatch","year","userAccount","_newContract","contractSubCategoryId","orderType","contractOrderDetailData","qty","unitPrice","unitPriceLookup","templateAdditionalInfo","templateAddress","templateWatermark","paymentTypeId","singleUseTokenId","amountReceived","acceptTermsAndConditions","_ts","downloadNewSetOfContracts","_activeContracts","timeStamp","from","DropdownButton","LoadingSpinner","AlertBox","OrderType","pageTitle","idx_h","sectionTitle","imgSrc","toggleHelpContent","hotSpots","idx_d","showHelpContent","top","y","left","x","textXY","label","innerHTML","htmlText","num","_style","isOpen","newContractWithType","removeItem","getUserBalance","_st","_sec","_activeContract","initialiseNewContract","glCode","gstCode","UNKNOWN","open","contact_us_url","mid","_section","_helpContentData","home","history","HelpScreen","CardLandscape","CardPortrait","HistorySearch","HelpContent","loginCallback","cb","productionAuth","clearBrowserStorages","deleteAllCookies","localStorage","clear","cookies","cookie","eqPos","productionVerify","v2","c2","AppAccessPermitted","authentication","logout","logoutCallBack","_component_StdPageLayout","_component_PageHeader","_component_PageFooter","showAppMenu","showAccountControl","isExternal","_component_AccountInfoPanel","logoClicked","showCancelAlertBox","alertBoxTitle","alertBoxBody","exitApplication","_component_ApplicationMenu","appAccessPermitted","infoTextRow0","infoTextRow1","selectionTypeClassName","onMenuClicked","menuIcon","menuButtonText","showMenu","goToContactUs","goToFAQ","faq_url","about_dcs_url","required","dropDownMenuUI","elBut","cancelTopUpClick","isUpdating","cancelUpdateClick","cancelPurchaseClick","cancelEditClick","cancelAdjustmentClick","cancelAddClick","isConfirmationPage","section","ApplicationMenu","closeAdjustment","cancelUpdate","cancelAdd","cancelPurchase","cancelTopup","cancelEdit","refreshData","update","_name","AccountInfoPanel","termsUrl","privacyUrl","currentYear","logoClick","alt","baseDate","toUTCString","terms_url","privacy_url","PageHeader","PageFooter","runAuthCheck","authCheckCallBack","redirect","AppAccessDenied","StdPageLayout","checkInterval","workerID","resetTimer","doCheckSession","timeoutCallBack","setup","setInterval","clearInterval","hasExpired","stop","registerHooks","idleSessionMgr","next","c1","matched","some","record","meta","requiresAuth","run","idleSessionTimeoutCallback","_component_HeaderStepper","_component_EContractDetails","_component_EContractReview","_component_EContractPayment","_component_EContractConfirmation","navSteps","showHelpBtn","setCurrentStep","cardPayment","showIfErrorOccurredPostSuccessfulPayment","errorMessagePostSuccessfulPayment","backButtonVisible","backButton","backButtonText","forwardButton","canSubmit","nextButtonText","allowSaveExit","saveAndExit","currentNavStepIndex","navigateBack","navigate","navbarText","NavStepStatusID","routeSecName","visible","NotDone","Step","details","review","payment","prepayment","confirmation","_routeName","topup","editLand","editBusiness","land","business","other","Done","temp","tempJSON","z","forEach","Current","Array","Boolean","_component_ConfirmationTable","pageHeader","pageBody","contracts","historyTableHeaderLand","historyTableHeaderBusiness","historyTableHeaderOther","_contractType","_isActiveContractType","paymentErrorMsg","getThisTransaction","ConfirmationTable","_hoisted_77","_hoisted_78","_hoisted_79","_hoisted_80","_hoisted_81","_hoisted_82","_hoisted_83","_hoisted_84","_hoisted_85","_hoisted_86","_hoisted_87","_hoisted_88","_hoisted_89","_hoisted_90","_hoisted_91","_hoisted_92","_directive_maska","maxlength","onKeyup","mandatoryCheck","textCountRefId","trim","onChange","onBlur","added","deleteProperty","addProperty","validReferenceId","isFirstLoaded","_qty","NaN","_editMode","scrollTo","$nextTick","_orderType","_business","_address","_watermark","directives","maska","emits","_component_CreditCardPayment","paymentType","currentBalance","paymentAmount","paymentToken","onValidCCForm","onValidStatusChanged","loadingLibStatus","createPayWayFrameStatus","paywayFrameGuid","reloadPaymentForm","paywayStyle","margin","paywayEl","numberOfRetry","timeout","numberOfTried","startTime","endTime","paymentDeclined","createFrameRetry","createFrameNumberOfTried","creditCardFrame","loadPayWayLib","checkPayWayLib","requestToProcessPayment","setAttribute","head","appendChild","payway","createCreditCardFrame","isPayWayLibReady","removePayWayLib","createPayWayFrame","removeChild","myStyle","publishableApiKey","tokenMode","container","onValid","onInvalid","createdCallback","frame","removePayWayFrame","elm","getElementById","childNodes","destroy","tokenCallback","getToken","_canSubmit","validCard","CreditCardPayment","checked","toggleCheckbox","fee","_cid","_contract","setSteps","checkBalanceAndPay","_body","errorProcessPayment","applyPayment","applyPaymentWithoutCreditCard","payments","errorCode","contractIds","extractContractId","input","inputString","regex","match","HeaderStepper","EContractDetails","EContractReview","EContractPayment","EContractConfirmation","beforeRouteLeave","_stored","_component_CurrencyInput","_component_TopUpConfirmation","modelValue","currencyOptions","toHistory","dateOfTopUp","getResult","inputRef","setValue","oldVal","TopUpConfirmation","CurrencyInput","_component_EditContractConfirmation","maxLength","contractOrderDetailsId","showSaveAlertBox","updateContract","editConfirmation","filterContractDetails","_contractDetails","edit","_editContract","EditContractConfirmation","routes","component","children","router","mount"],"mappings":"aACE,SAASA,EAAqBC,GAQ7B,IAPA,IAMIC,EAAUC,EANVC,EAAWH,EAAK,GAChBI,EAAcJ,EAAK,GACnBK,EAAiBL,EAAK,GAIHM,EAAI,EAAGC,EAAW,GACpCD,EAAIH,EAASK,OAAQF,IACzBJ,EAAUC,EAASG,GAChBG,OAAOC,UAAUC,eAAeC,KAAKC,EAAiBX,IAAYW,EAAgBX,IACpFK,EAASO,KAAKD,EAAgBX,GAAS,IAExCW,EAAgBX,GAAW,EAE5B,IAAID,KAAYG,EACZK,OAAOC,UAAUC,eAAeC,KAAKR,EAAaH,KACpDc,EAAQd,GAAYG,EAAYH,IAG/Be,GAAqBA,EAAoBhB,GAE5C,MAAMO,EAASC,OACdD,EAASU,OAATV,GAOD,OAHAW,EAAgBJ,KAAKK,MAAMD,EAAiBb,GAAkB,IAGvDe,IAER,SAASA,IAER,IADA,IAAIC,EACIf,EAAI,EAAGA,EAAIY,EAAgBV,OAAQF,IAAK,CAG/C,IAFA,IAAIgB,EAAiBJ,EAAgBZ,GACjCiB,GAAY,EACRC,EAAI,EAAGA,EAAIF,EAAed,OAAQgB,IAAK,CAC9C,IAAIC,EAAQH,EAAeE,GACG,IAA3BX,EAAgBY,KAAcF,GAAY,GAE3CA,IACFL,EAAgBQ,OAAOpB,IAAK,GAC5Be,EAASM,EAAoBA,EAAoBC,EAAIN,EAAe,KAItE,OAAOD,EAIR,IAAIQ,EAAmB,GAKnBhB,EAAkB,CACrB,IAAO,GAGJK,EAAkB,GAGtB,SAASS,EAAoB1B,GAG5B,GAAG4B,EAAiB5B,GACnB,OAAO4B,EAAiB5B,GAAU6B,QAGnC,IAAIC,EAASF,EAAiB5B,GAAY,CACzCK,EAAGL,EACH+B,GAAG,EACHF,QAAS,IAUV,OANAf,EAAQd,GAAUW,KAAKmB,EAAOD,QAASC,EAAQA,EAAOD,QAASH,GAG/DI,EAAOC,GAAI,EAGJD,EAAOD,QAKfH,EAAoBM,EAAIlB,EAGxBY,EAAoBO,EAAIL,EAGxBF,EAAoBQ,EAAI,SAASL,EAASM,EAAMC,GAC3CV,EAAoBW,EAAER,EAASM,IAClC3B,OAAO8B,eAAeT,EAASM,EAAM,CAAEI,YAAY,EAAMC,IAAKJ,KAKhEV,EAAoBe,EAAI,SAASZ,GACX,qBAAXa,QAA0BA,OAAOC,aAC1CnC,OAAO8B,eAAeT,EAASa,OAAOC,YAAa,CAAEC,MAAO,WAE7DpC,OAAO8B,eAAeT,EAAS,aAAc,CAAEe,OAAO,KAQvDlB,EAAoBmB,EAAI,SAASD,EAAOE,GAEvC,GADU,EAAPA,IAAUF,EAAQlB,EAAoBkB,IAC/B,EAAPE,EAAU,OAAOF,EACpB,GAAW,EAAPE,GAA8B,kBAAVF,GAAsBA,GAASA,EAAMG,WAAY,OAAOH,EAChF,IAAII,EAAKxC,OAAOyC,OAAO,MAGvB,GAFAvB,EAAoBe,EAAEO,GACtBxC,OAAO8B,eAAeU,EAAI,UAAW,CAAET,YAAY,EAAMK,MAAOA,IACtD,EAAPE,GAA4B,iBAATF,EAAmB,IAAI,IAAIM,KAAON,EAAOlB,EAAoBQ,EAAEc,EAAIE,EAAK,SAASA,GAAO,OAAON,EAAMM,IAAQC,KAAK,KAAMD,IAC9I,OAAOF,GAIRtB,EAAoB0B,EAAI,SAAStB,GAChC,IAAIM,EAASN,GAAUA,EAAOiB,WAC7B,WAAwB,OAAOjB,EAAO,YACtC,WAA8B,OAAOA,GAEtC,OADAJ,EAAoBQ,EAAEE,EAAQ,IAAKA,GAC5BA,GAIRV,EAAoBW,EAAI,SAASgB,EAAQC,GAAY,OAAO9C,OAAOC,UAAUC,eAAeC,KAAK0C,EAAQC,IAGzG5B,EAAoB6B,EAAI,IAExB,IAAIC,EAAaC,OAAO,gBAAkBA,OAAO,iBAAmB,GAChEC,EAAmBF,EAAW3C,KAAKsC,KAAKK,GAC5CA,EAAW3C,KAAOf,EAClB0D,EAAaA,EAAWG,QACxB,IAAI,IAAItD,EAAI,EAAGA,EAAImD,EAAWjD,OAAQF,IAAKP,EAAqB0D,EAAWnD,IAC3E,IAAIU,EAAsB2C,EAI1BzC,EAAgBJ,KAAK,CAAC,OAAO,kBAEtBM,K,wDCvJT,W,6DCAA,W,wGCAA,W,2FCAAW,EAAOD,QAAU,IAA0B,kC,0njBCA3C,IAAI+B,EAAM,CACT,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,QAAS,OACT,WAAY,OACZ,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,gBAAiB,OACjB,aAAc,OACd,gBAAiB,OACjB,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,UAAW,OACX,aAAc,OACd,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,WAAY,OACZ,cAAe,OACf,UAAW,OACX,aAAc,OACd,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,YAAa,OACb,eAAgB,OAChB,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,QAAS,OACT,WAAY,OACZ,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,UAAW,OACX,aAAc,OACd,QAAS,OACT,WAAY,OACZ,OAAQ,OACR,UAAW,OACX,QAAS,OACT,WAAY,OACZ,QAAS,OACT,aAAc,OACd,gBAAiB,OACjB,WAAY,OACZ,UAAW,OACX,aAAc,OACd,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,YAAa,OACb,eAAgB,OAChB,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,gBAAiB,OACjB,OAAQ,OACR,UAAW,OACX,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,QAIf,SAASC,EAAeC,GACvB,IAAIC,EAAKC,EAAsBF,GAC/B,OAAOpC,EAAoBqC,GAE5B,SAASC,EAAsBF,GAC9B,IAAIpC,EAAoBW,EAAEuB,EAAKE,GAAM,CACpC,IAAIG,EAAI,IAAIC,MAAM,uBAAyBJ,EAAM,KAEjD,MADAG,EAAEE,KAAO,mBACHF,EAEP,OAAOL,EAAIE,GAEZD,EAAeO,KAAO,WACrB,OAAO5D,OAAO4D,KAAKR,IAEpBC,EAAeQ,QAAUL,EACzBlC,EAAOD,QAAUgC,EACjBA,EAAeE,GAAK,Q,oCCnSpB,W,ujBCAA,W,+ECAA,W,2DCAA,W,oCCAA,W,sDCAA,W,sGCAA,W,oCCAA,W,2DCAA,W,oCCAA,W,oCCAA,W,sDCAA,W,yDCAA,W,oCCAA,W,uBCAAjC,EAAOD,QAAU,IAA0B,yB,0DCA3C,W,kCCAA,W,yDCAA,W,64BCAA,W,kCCAA,W,wHCEM,SAAUyC,EAAOC,EAAMC,GAC3B,IAAMC,EAAsB,eAAkB,YACxCC,EAAyB,eAAkB,eAEjD,OAAQ,iBAAc,eAAoB,OAAW,KAAM,CACzD,eAAaD,GACb,eAAaC,IACZ,I,8ICP0B,IAAI,oBAAe,2BAA4B,CAC1EC,OAAQ,QACRC,YAAa,mBAGX,SAAUC,IACd,IAAMzD,EAASqC,OAAOqB,SAASC,KAAKC,MAAM,KAC1C,OAAO5D,EAAO,GAAK,KAAOA,EAAO,GAAK,IAGjC,ICRK6D,EDSCC,EAAgC,uCAGhCC,GADoB,4dAAYC,kBACd,8DAClBC,EAAuBC,SAAS,OAAkC,IAClEC,EAA6BD,SAAS,MAAwC,IAC9EE,EAAmBX,IAEnBY,EAA8B,0EEQ9BC,EAAoB,CAC/BC,SAAU,CAAEvC,EAAG,YAAaG,EAAG,cAC/BqC,KAAM,CACJC,KAAM,CAAEzC,EAAG,gBAAiBG,EAAG,KAC/BuC,KAAM,CAAE1C,EAAG,OAAQG,EAAG,SACtBwC,kBAAmB,CAAE3C,EAAG,oBAAqBG,EAAG,uBAChDyC,UAAW,CAAE5C,EAAG,YAAaG,EAAG,cAChC0C,MAAO,CAAE7C,EAAG,SAAUG,EAAG,WACzB2C,UAAW,CAAE9C,EAAG,QAASG,EAAG,eAC5B4C,WAAY,CAAE/C,EAAG,SAAUG,EAAG,aAEhC6C,KAAM,CACJP,KAAM,CAAEzC,EAAG,gBAAiBG,EAAG,KAC/BuC,KAAM,CAAE1C,EAAG,OAAQG,EAAG,SACtB8C,MAAO,CAAEjD,EAAG,QAASG,EAAG,UACxByC,UAAW,CAAE5C,EAAG,YAAaG,EAAG,cAChC+C,aAAc,CAAElD,EAAG,eAAgBG,EAAG,kBACtCgD,QAAS,CAAEnD,EAAG,UAAWG,EAAG,YAC5B2C,UAAW,CAAE9C,EAAG,QAASG,EAAG,eAC5B4C,WAAY,CAAE/C,EAAG,SAAUG,EAAG,YAC9BiD,YAAa,CAAEpD,EAAG,cAAeG,EAAG,mBCjD3B,EACX,WACSkD,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,GAAU,uBAVV,KAAAV,aACA,KAAAC,QACA,KAAAC,YACA,KAAAC,WACA,KAAAC,QACA,KAAAC,WACA,KAAAC,QACA,KAAAC,WACA,KAAAC,aACA,KAAAC,iBACA,KAAAC,SCZE,EACX,aAGqC,IAF5BC,EAE4B,uDAFF,KAC1BC,EAC4B,uDADF,KAC1BC,EAA4B,uDAAJ,KAAI,uBAF5B,KAAAF,WACA,KAAAC,WACA,KAAAC,WHAX,SAAYrC,GACV,4BACA,8BACA,8BACA,4CACA,mDALF,CAAYA,MAAwB,KIJ7B,IAAM,EAAb,WAEE,aAE4B,IADnBsC,EACmB,uDADF,EACjBC,EAAmB,uDAAD,EAAC,uBADnB,KAAAD,SACA,KAAAC,UAJX,iDAOS,WACL,OAAOC,KAAKC,OAAM,IAAIC,MAAOC,UAAY,MAASC,KAAKL,YAR3D,KCKa,EACX,aAIsF,IAH7EM,EAG6E,uDAHhE,IAAI,EACjBC,EAE6E,uDAF9D,IAAI,EACnBC,EAC6E,uDAD1D,IAAI,EACvBC,EAA6E,uDAAhChD,EAAyBiD,QAAO,uBAH7E,KAAAJ,OACA,KAAAC,QACA,KAAAC,UACA,KAAAC,wB,iCCJEE,EAAW,CACtBC,MAAO,QACPC,MAAO,QACPC,OAAQ,UCDW,E,WAQnB,aAE2C,IADlCC,EACkC,uDADL,IAAI,EACjCC,EAAkC,uDAAX,IAAW,uBADlC,KAAAD,aACA,KAAAC,QARD,KAAAC,QAAU,CAChBC,QAAS,CACP,eAAgB,sC,mHASb,6HAIeb,KAAKW,MAAMhG,IAAIgD,EAAW2C,EAAIC,OAJ7C,UAIHO,EAJG,gBAODd,KAAKU,WAAWR,MAAMV,SAAWsB,EAAU5I,KAAKgI,MAChDF,KAAKU,WAAWR,MAAMX,SAAWuB,EAAU5I,KAAKqH,SAChDS,KAAKU,WAAWR,MAAMT,OAASqB,EAAU5I,KAAKuH,OAC9CO,KAAKU,WAAWT,KAAKpB,MAAQiC,EAAU5I,KAAK+H,KAAKpB,MACjDmB,KAAKU,WAAWT,KAAKrB,WAAakC,EAAU5I,KAAK+H,KAAKrB,WACtDoB,KAAKU,WAAWT,KAAKnB,UAAYgC,EAAU5I,KAAK+H,KAAKnB,UACrDkB,KAAKU,WAAWT,KAAKlB,SAAW+B,EAAU5I,KAAK+H,KAAKlB,SACpDiB,KAAKU,WAAWT,KAAKf,MAAQ4B,EAAU5I,KAAK+H,KAAKf,MACjDc,KAAKU,WAAWT,KAAKhB,SAAW6B,EAAU5I,KAAK+H,KAAKf,MACpDc,KAAKU,WAAWT,KAAKjB,MAAQ8B,EAAU5I,KAAK+H,KAAKjB,MACjDgB,KAAKU,WAAWT,KAAKd,SAAW2B,EAAU5I,KAAK+H,KAAKd,SACpDa,KAAKU,WAAWT,KAAKb,WAAa0B,EAAU5I,KAAK+H,KAAKb,WACtDY,KAAKU,WAAWP,QAAQT,OAASE,KAAKC,MAAM,IAAIC,KAAKgB,EAAU5I,KAAK,WAAW6H,UAAY,KAC3FC,KAAKU,WAAWP,QAAQR,QAAUC,KAAKC,MAAM,IAAIC,KAAKgB,EAAU5I,KAAK,YAAY6H,UAAY,KAC7FC,KAAKU,WAAWT,KAAKX,MAAQwB,EAAU5I,KAAK+H,KAAKX,OAE7CwB,EAAU5I,KAAKgI,MAvBlB,wBAwBCF,KAAKU,WAAWN,qBAAuBhD,EAAyB2D,SAxBjE,kBAyBQC,QAAQxE,QAAQY,EAAyB2D,WAzBjD,eA2BCf,KAAKU,WAAWN,qBAAuBhD,EAAyBiD,QA3BjE,kBA4BQW,QAAQC,OAAO7D,EAAyBiD,UA5BhD,oEA+BDL,KAAKU,WAAWN,qBAAuBhD,EAAyBiD,QA/B/D,kBAgCMW,QAAQC,OAAO7D,EAAyBiD,UAhC9C,gEAoCC,KAAIa,SAASC,SAAW,QAC1B,KAAID,SAASC,SAAW,OArCvB,wBAsCDnB,KAAKU,WAAWN,qBAAuBhD,EAAyBgE,SAtC/D,kBAuCMJ,QAAQC,OAAO7D,EAAyBgE,WAvC9C,eAyCDpB,KAAKU,WAAWN,qBAAuBhD,EAAyBiD,QAzC/D,kBA0CMW,QAAQC,OAAO7D,EAAyBiD,UA1C9C,iE,kKCHIgB,G,UAAY,IAAIC,QAAQ,OAAQ,KA4BhC,EAGT,WAAYC,GAAmH,IAA1EC,EAA0E,uDAAvDH,EAAqBV,EAAkC,uDAAX,IAAW,uBAA1E,KAAAa,WAAwC,KAAAb,QACrFY,IACAvB,KAAKuB,cAAgBA,EACrBvB,KAAKwB,SAAWD,EAAcC,UAAYxB,KAAKwB,WAW9C,EAAb,wDAEI,WAAmBC,EAAeC,GAAY,oCAC1C,cAAMA,GADS,EAAAD,QADnB,EAAAnH,KAAwB,gBACsB,EAFlD,yBAAmC+B,QCvCtB,EAAiC,SAAUkF,GACpD,MAAO,CAQHI,0BAA2B,WAAF,8CAAE,WAAOC,GAAP,yHAiBvB,IAAWvG,KAjBiDuF,EAArC,+BAAoD,GACrEiB,EADiB,4BAGjBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARiB,+BAQUC,OAAQ,QAAWF,GAAgBpB,GAC9DuB,EAA0B,GAC1BC,EAAyB,GAI/BD,EAAwB,gBAAkB,mBAEpCE,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IArBV,OAuBvBP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAC9F8B,EAAsC,kBAATf,GAAyE,qBAAnDK,EAAuBpB,QAAQ,gBACxFoB,EAAuB/J,KAAQyK,EAAqBC,KAAKC,eAAmBC,IAATlB,EAAqBA,EAAO,IAAOA,GAAQ,GA3BvF,kBA6BhB,CACHmB,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA/BU,4CAAF,sDAAE,KAyCtB,EAAkB,SAASV,GACpC,MAAO,CAQGI,0BARH,SAQ6BC,EAA8BhB,GAAa,mKACvC,EAA+BW,GAAeI,0BAA0BC,EAAMhB,GADvC,cACjEsC,EADiE,0BAEhE,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJ8C,gDAmCtE,EAAb,2LASW,SAA0BvB,EAA8BhB,GAAa,WACxE,OAAO,EAAgBZ,KAAKuB,eAAeI,0BAA0BC,EAAMhB,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,iBAVvI,GAAmC,GC7FtB,EAA2B,SAAUD,GAC9C,MAAO,CAOH+B,yBAA0B,WAAF,8CAAE,oIAetB,IAAWjI,KAfkBuF,EAAP,+BAAsB,GACtCiB,EADgB,4BAGhBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARgB,+BAQWC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBX,OAqBtBP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAvB9E,kBAyBf,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3BS,4CAAF,qDAAE,GAoC1BsB,4BAA6B,WAAF,8CAAE,oIAezB,IAAWlI,KAfqBuF,EAAP,+BAAsB,GACzCiB,EADmB,+BAGnBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARmB,+BAQQC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBR,OAqBzBP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAvB3E,kBAyBlB,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3BY,4CAAF,qDAAE,GAoC7BuB,gCAAiC,WAAF,8CAAE,oIAe7B,IAAWnI,KAfyBuF,EAAP,+BAAsB,GAC7CiB,EADuB,mCAGvBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARuB,+BAQIC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBJ,OAqB7BP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAvBvE,kBAyBtB,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3BgB,4CAAF,qDAAE,KAqC5B,EAAY,SAASV,GAC9B,MAAO,CAOG+B,yBAPH,SAO4B1C,GAAa,mKACR,EAAyBW,GAAe+B,yBAAyB1C,GADzD,cAClCsC,EADkC,0BAEjC,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJe,8CAatCI,4BApBH,SAoB+B3C,GAAa,mKACX,EAAyBW,GAAegC,4BAA4B3C,GADzD,cACrCsC,EADqC,0BAEpC,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJkB,8CAazCK,gCAjCH,SAiCmC5C,GAAa,mKACf,EAAyBW,GAAeiC,gCAAgC5C,GADzD,cACzCsC,EADyC,0BAExC,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJsB,gDAoD9C,EAAb,0LAQW,SAAyBvC,GAAa,WACzC,OAAO,EAAUZ,KAAKuB,eAAe+B,yBAAyB1C,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAT1H,yCAkBW,SAA4BZ,GAAa,WAC5C,OAAO,EAAUZ,KAAKuB,eAAegC,4BAA4B3C,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAnB7H,6CA4BW,SAAgCZ,GAAa,WAChD,OAAO,EAAUZ,KAAKuB,eAAeiC,gCAAgC5C,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,iBA7BjI,GAA6B,GCrMhB,EAA+B,SAAUD,GAClD,MAAO,CAQHkC,6BAA8B,WAAF,8CAAE,WAAO7B,GAAP,yHAiB1B,IAAWvG,KAjB6CuF,EAA9B,+BAA6C,GACjEiB,EADoB,+BAGpBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARoB,+BAQOC,OAAQ,QAAWF,GAAgBpB,GAC9DuB,EAA0B,GAC1BC,EAAyB,GAI/BD,EAAwB,gBAAkB,mBAEpCE,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IArBP,OAuB1BP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAsCsB,GAA4BO,GAA2B9B,EAAQC,SAC/F8B,EAAsC,kBAATf,GAAyE,qBAAnDK,EAAuBpB,QAAQ,gBACxFoB,EAAuB/J,KAAOyK,EAAqBC,KAAKC,eAAmBC,IAATlB,EAAqBA,EAAO,IAAOA,GAAQ,GA3BnF,kBA6BnB,CACHmB,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA/Ba,4CAAF,sDAAE,GAyC9ByB,oCAAqC,WAAF,8CAAE,WAAOxH,GAAP,0HAAmB0E,EAAnB,+BAAkC,GAExD,OAAP1E,QAAsB4G,IAAP5G,EAFc,sBAGvB,IAAI,EAAc,KAAM,iGAHD,OAoBjC,IAAWb,KAfLwG,EAAe,uCAChBP,QADgB,WACJ,KADI,KACKqC,mBAAmBC,OAAO1H,KAE9C4F,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAb2B,+BAaAC,OAAQ,UAAaF,GAAgBpB,GAChEuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAxBA,OA0BjCP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAsCsB,GAA4BO,GAA2B9B,EAAQC,SA5BpE,kBA8B1B,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IAhCoB,4CAAF,sDAAE,GAyCrC4B,gCAAiC,WAAF,8CAAE,oIAe7B,IAAWxI,KAfyBuF,EAAP,+BAAsB,GAC7CiB,EADuB,mCAGvBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARuB,+BAQIC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBJ,OAqB7BP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAsCsB,GAA4BO,GAA2B9B,EAAQC,SAvBxE,kBAyBtB,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3BgB,4CAAF,qDAAE,GAqCjC6B,4BAA6B,WAAF,8CAAE,WAAOC,GAAP,uHAmBzB,IAAW1I,KAnB4CuF,EAA9B,+BAA6C,GAChEiB,EADmB,+BAGnBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARmB,+BAQQC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,QAIVU,IAAjBiB,IACA3B,EAAuB,gBAAkB2B,GAGvC1B,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAvBR,OAyBzBP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAsCsB,GAA4BO,GAA2B9B,EAAQC,SA3B5E,kBA6BlB,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA/BY,4CAAF,sDAAE,GAwC7B+B,sCAAuC,WAAF,8CAAE,oIAenC,IAAW3I,KAf+BuF,EAAP,+BAAsB,GACnDiB,EAD6B,yCAG7BC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAR6B,+BAQFC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBE,OAqBnCP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAsCsB,GAA4BO,GAA2B9B,EAAQC,SAvBlE,kBAyB5B,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3BsB,4CAAF,qDAAE,GAqCvCgC,8BAA+B,WAAF,8CAAE,WAAO/H,GAAP,0HAAmB0E,EAAnB,+BAAkC,GAElD,OAAP1E,QAAsB4G,IAAP5G,EAFQ,sBAGjB,IAAI,EAAc,KAAM,2FAHP,OAoB3B,IAAWb,KAfLwG,EAAe,oCAChBP,QADgB,WACJ,KADI,KACKqC,mBAAmBC,OAAO1H,KAE9C4F,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAbqB,+BAaMC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAxBN,OA0B3BP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAsCsB,GAA4BO,GAA2B9B,EAAQC,SA5B1E,kBA8BpB,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IAhCc,4CAAF,sDAAE,GA0C/BiC,sCAAuC,WAAF,8CAAE,WAAOhI,GAAP,0HAAmB0E,EAAnB,+BAAkC,GAE1D,OAAP1E,QAAsB4G,IAAP5G,EAFgB,sBAGzB,IAAI,EAAc,KAAM,mGAHC,OAoBnC,IAAWb,KAfLwG,EAAe,4CAChBP,QADgB,WACJ,KADI,KACKqC,mBAAmBC,OAAO1H,KAE9C4F,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAb6B,+BAaFC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAxBE,OA0BnCP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAsCsB,GAA4BO,GAA2B9B,EAAQC,SA5BlE,kBA8B5B,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IAhCsB,4CAAF,sDAAE,GAyCvCkC,yCAA0C,WAAF,8CAAE,oIAetC,IAAW9I,KAfkCuF,EAAP,+BAAsB,GACtDiB,EADgC,4CAGhCC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARgC,+BAQLC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBK,OAqBtCP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAsCsB,GAA4BO,GAA2B9B,EAAQC,SAvB/D,kBAyB/B,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3ByB,4CAAF,qDAAE,GAqC1CmC,2CAA4C,WAAF,8CAAE,WAAOlI,GAAP,0HAAmB0E,EAAnB,+BAAkC,GAE/D,OAAP1E,QAAsB4G,IAAP5G,EAFqB,sBAG9B,IAAI,EAAc,KAAM,wGAHM,OAoBxC,IAAWb,KAfLwG,EAAe,iDAChBP,QADgB,WACJ,KADI,KACKqC,mBAAmBC,OAAO1H,KAE9C4F,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAbkC,+BAaPC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAxBO,OA0BxCP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAsCsB,GAA4BO,GAA2B9B,EAAQC,SA5B7D,kBA8BjC,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IAhC2B,4CAAF,sDAAE,GAyC5CoC,6BAA8B,WAAF,8CAAE,oIAe1B,IAAWhJ,KAfsBuF,EAAP,+BAAsB,GAC1CiB,EADoB,gCAGpBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARoB,+BAQOC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBP,OAqB1BP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAsCsB,GAA4BO,GAA2B9B,EAAQC,SAvB3E,kBAyBnB,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3Ba,4CAAF,qDAAE,GAoC9BqC,0CAA2C,WAAF,8CAAE,oIAevC,IAAWjJ,KAfmCuF,EAAP,+BAAsB,GACvDiB,EADiC,6CAGjCC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARiC,+BAQNC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBM,OAqBvCP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAsCsB,GAA4BO,GAA2B9B,EAAQC,SAvB9D,kBAyBhC,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3B0B,4CAAF,qDAAE,GAqC3CsC,gDAAiD,WAAF,8CAAE,WAAOC,GAAP,0HAA2B5D,EAA3B,+BAA0C,GAElE,OAAjB4D,QAA0C1B,IAAjB0B,EAFgB,sBAGnC,IAAI,EAAc,eAAgB,uHAHC,OAoB7C,IAAWnJ,KAfLwG,EAAe,sDAChBP,QADgB,WACJ,eADI,KACeqC,mBAAmBC,OAAOY,KAExD1C,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAbuC,+BAaZC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAxBY,OA0B7CP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAsCsB,GAA4BO,GAA2B9B,EAAQC,SA5BxD,kBA8BtC,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IAhCgC,4CAAF,sDAAE,GA0CjDwC,+BAAgC,WAAF,8CAAE,WAAO7C,GAAP,yHAiB5B,IAAWvG,KAjB+CuF,EAA9B,+BAA6C,GACnEiB,EADsB,kCAGtBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARsB,+BAQKC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAI/BD,EAAwB,gBAAkB,mBAEpCE,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IArBL,OAuB5BP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAsCsB,GAA4BO,GAA2B9B,EAAQC,SAC/F8B,EAAsC,kBAATf,GAAyE,qBAAnDK,EAAuBpB,QAAQ,gBACxFoB,EAAuB/J,KAAOyK,EAAqBC,KAAKC,eAAmBC,IAATlB,EAAqBA,EAAO,IAAOA,GAAQ,GA3BjF,kBA6BrB,CACHmB,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA/Be,4CAAF,sDAAE,GA0ChCyC,6CAA8C,WAAF,8CAAE,WAAOxI,EAAYiF,GAAnB,0HAAoCP,EAApC,+BAAmD,GAElF,OAAP1E,QAAsB4G,IAAP5G,EAFuB,sBAGhC,IAAI,EAAc,KAAM,0GAHQ,UAM3B,OAAXiF,QAA8B2B,IAAX3B,EANmB,sBAOhC,IAAI,EAAc,SAAU,8GAPI,OAyB1C,IAAW9F,KAhBLwG,EAAe,sDAChBP,QADgB,WACJ,KADI,KACKqC,mBAAmBC,OAAO1H,KAC/CoF,QAFgB,WAEJ,SAFI,KAESqC,mBAAmBC,OAAOzC,KAElDW,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAlBoC,+BAkBTC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IA7BS,OA+B1CP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAsCsB,GAA4BO,GAA2B9B,EAAQC,SAjC3D,kBAmCnC,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IArC6B,4CAAF,wDAAE,KA+CzC,EAAgB,SAAUV,GACnC,MAAO,CAQGkC,6BARH,SAQgC7B,EAAuBhB,GAAa,mKACnC,EAA6BW,GAAekC,6BAA6B7B,EAAMhB,GAD5C,cAC7DsC,EAD6D,0BAE5D,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAKD,EAAkBtC,SAA1B,IAAmCmC,IAAKvB,EAAW0B,EAAkBH,MAC3F,OAAOpC,EAAMyC,QAAQD,MAJ0C,8CAcjEO,oCAtBH,SAsBuCxH,EAAY0E,GAAa,mKAC/B,EAA6BW,GAAemC,oCAAoCxH,EAAI0E,GADrD,cACzDsC,EADyD,0BAExD,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAKD,EAAkBtC,SAA1B,IAAmCmC,IAAKvB,EAAW0B,EAAkBH,MAC3F,OAAOpC,EAAMyC,QAAQD,MAJsC,8CAa7DU,gCAnCH,SAmCmCjD,GAAa,mKACf,EAA6BW,GAAesC,gCAAgCjD,GAD7D,cACzCsC,EADyC,0BAExC,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAKD,EAAkBtC,SAA1B,IAAmCmC,IAAKvB,EAAW0B,EAAkBH,MAC3F,OAAOpC,EAAMyC,QAAQD,MAJsB,8CAc7CW,4BAjDH,SAiD+BC,EAAuBnD,GAAa,mKAClC,EAA6BW,GAAeuC,4BAA4BC,EAAcnD,GADpD,cAC5DsC,EAD4D,0BAE3D,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAKD,EAAkBtC,SAA1B,IAAmCmC,IAAKvB,EAAW0B,EAAkBH,MAC3F,OAAOpC,EAAMyC,QAAQD,MAJyC,8CAahEa,sCA9DH,SA8DyCpD,GAAa,mKACrB,EAA6BW,GAAeyC,sCAAsCpD,GAD7D,cAC/CsC,EAD+C,0BAE9C,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAKD,EAAkBtC,SAA1B,IAAmCmC,IAAKvB,EAAW0B,EAAkBH,MAC3F,OAAOpC,EAAMyC,QAAQD,MAJ4B,8CAcnDc,8BA5EH,SA4EiC/H,EAAY0E,GAAa,mKACzB,EAA6BW,GAAe0C,8BAA8B/H,EAAI0E,GADrD,cACnDsC,EADmD,0BAElD,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAKD,EAAkBtC,SAA1B,IAAmCmC,IAAKvB,EAAW0B,EAAkBH,MAC3F,OAAOpC,EAAMyC,QAAQD,MAJgC,8CAcvDe,sCA1FH,SA0FyChI,EAAY0E,GAAa,mKACjC,EAA6BW,GAAe2C,sCAAsChI,EAAI0E,GADrD,cAC3DsC,EAD2D,0BAE1D,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAKD,EAAkBtC,SAA1B,IAAmCmC,IAAKvB,EAAW0B,EAAkBH,MAC3F,OAAOpC,EAAMyC,QAAQD,MAJwC,8CAa/DgB,yCAvGH,SAuG4CvD,GAAa,mKACxB,EAA6BW,GAAe4C,yCAAyCvD,GAD7D,cAClDsC,EADkD,0BAEjD,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAKD,EAAkBtC,SAA1B,IAAmCmC,IAAKvB,EAAW0B,EAAkBH,MAC3F,OAAOpC,EAAMyC,QAAQD,MAJ+B,8CActDiB,2CArHH,SAqH8ClI,EAAY0E,GAAa,mKACtC,EAA6BW,GAAe6C,2CAA2ClI,EAAI0E,GADrD,cAChEsC,EADgE,0BAE/D,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAKD,EAAkBtC,SAA1B,IAAmCmC,IAAKvB,EAAW0B,EAAkBH,MAC3F,OAAOpC,EAAMyC,QAAQD,MAJ6C,8CAapEkB,6BAlIH,SAkIgCzD,GAAa,mKACZ,EAA6BW,GAAe8C,6BAA6BzD,GAD7D,cACtCsC,EADsC,0BAErC,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAKD,EAAkBtC,SAA1B,IAAmCmC,IAAKvB,EAAW0B,EAAkBH,MAC3F,OAAOpC,EAAMyC,QAAQD,MAJmB,8CAa1CmB,0CA/IH,SA+I6C1D,GAAa,mKACzB,EAA6BW,GAAe+C,0CAA0C1D,GAD7D,cACnDsC,EADmD,0BAElD,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAKD,EAAkBtC,SAA1B,IAAmCmC,IAAKvB,EAAW0B,EAAkBH,MAC3F,OAAOpC,EAAMyC,QAAQD,MAJgC,8CAcvDoB,gDA7JH,SA6JmDC,EAAoB5D,GAAa,mKACnD,EAA6BW,GAAegD,gDAAgDC,EAAc5D,GADvD,cAC7EsC,EAD6E,0BAE5E,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAKD,EAAkBtC,SAA1B,IAAmCmC,IAAKvB,EAAW0B,EAAkBH,MAC3F,OAAOpC,EAAMyC,QAAQD,MAJ0D,8CAcjFsB,+BA3KH,SA2KkC7C,EAAuBhB,GAAa,mKACrC,EAA6BW,GAAekD,+BAA+B7C,EAAMhB,GAD5C,cAC/DsC,EAD+D,0BAE9D,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAKD,EAAkBtC,SAA1B,IAAmCmC,IAAKvB,EAAW0B,EAAkBH,MAC3F,OAAOpC,EAAMyC,QAAQD,MAJ4C,8CAenEuB,6CA1LH,SA0LgDxI,EAAYiF,EAAiBP,GAAa,mKACzD,EAA6BW,GAAemD,6CAA6CxI,EAAIiF,EAAQP,GAD5C,cACnFsC,EADmF,0BAElF,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAKD,EAAkBtC,SAA1B,IAAmCmC,IAAKvB,EAAW0B,EAAkBH,MAC3F,OAAOpC,EAAMyC,QAAQD,MAJgE,gDAiKxF,EAAb,8LASW,SAA6BvB,EAAuBhB,GAAa,WACpE,OAAO,EAAcZ,KAAKuB,eAAekC,6BAA6B7B,EAAMhB,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAVxI,iDAoBW,SAAoCtF,EAAY0E,GAAa,WAChE,OAAO,EAAcZ,KAAKuB,eAAemC,oCAAoCxH,EAAI0E,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eArB7I,6CA8BW,SAAgCZ,GAAa,WAChD,OAAO,EAAcZ,KAAKuB,eAAesC,gCAAgCjD,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eA/BrI,yCAyCW,SAA4BuC,EAAuBnD,GAAa,WACnE,OAAO,EAAcZ,KAAKuB,eAAeuC,4BAA4BC,EAAcnD,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eA1C/I,mDAmDW,SAAsCZ,GAAa,WACtD,OAAO,EAAcZ,KAAKuB,eAAeyC,sCAAsCpD,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eApD3I,2CA8DW,SAA8BtF,EAAY0E,GAAa,WAC1D,OAAO,EAAcZ,KAAKuB,eAAe0C,8BAA8B/H,EAAI0E,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eA/DvI,mDAyEW,SAAsCtF,EAAY0E,GAAa,WAClE,OAAO,EAAcZ,KAAKuB,eAAe2C,sCAAsChI,EAAI0E,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eA1E/I,sDAmFW,SAAyCZ,GAAa,WACzD,OAAO,EAAcZ,KAAKuB,eAAe4C,yCAAyCvD,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eApF9I,wDA8FW,SAA2CtF,EAAY0E,GAAa,WACvE,OAAO,EAAcZ,KAAKuB,eAAe6C,2CAA2ClI,EAAI0E,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eA/FpJ,0CAwGW,SAA6BZ,GAAa,WAC7C,OAAO,EAAcZ,KAAKuB,eAAe8C,6BAA6BzD,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAzGlI,uDAkHW,SAA0CZ,GAAa,WAC1D,OAAO,EAAcZ,KAAKuB,eAAe+C,0CAA0C1D,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAnH/I,6DA6HW,SAAgDgD,EAAoB5D,GAAa,WACpF,OAAO,EAAcZ,KAAKuB,eAAegD,gDAAgDC,EAAc5D,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eA9HnK,4CAwIW,SAA+BI,EAAuBhB,GAAa,WACtE,OAAO,EAAcZ,KAAKuB,eAAekD,+BAA+B7C,EAAMhB,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAzI1I,0DAoJW,SAA6CtF,EAAYiF,EAAiBP,GAAa,WAC1F,OAAO,EAAcZ,KAAKuB,eAAemD,6CAA6CxI,EAAIiF,EAAQP,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,iBArJ9J,GAAiC,GCt5BpB,EAA+B,SAAUD,GAClD,MAAO,CAQHoD,qCAAsC,WAAF,8CAAE,WAAO/C,GAAP,yHAiBlC,IAAWvG,KAjBoDuF,EAA7B,+BAA4C,GACxEiB,EAD4B,uCAG5BC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAR4B,+BAQDC,OAAQ,QAAWF,GAAgBpB,GAC9DuB,EAA0B,GAC1BC,EAAyB,GAI/BD,EAAwB,gBAAkB,mBAEpCE,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IArBC,OAuBlCP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAC9F8B,EAAsC,kBAATf,GAAyE,qBAAnDK,EAAuBpB,QAAQ,gBACxFoB,EAAuB/J,KAAQyK,EAAqBC,KAAKC,eAAmBC,IAATlB,EAAqBA,EAAO,IAAOA,GAAQ,GA3B5E,kBA6B3B,CACHmB,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA/BqB,4CAAF,sDAAE,GAyCtC2C,uCAAwC,WAAF,8CAAE,WAAOC,GAAP,uHAmBpC,IAAWxJ,KAnB0DuF,EAAjC,+BAAgD,GAC9EiB,EAD8B,uCAG9BC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAR8B,+BAQHC,OAAQ,UAAaF,GAAgBpB,GAChEuB,EAA0B,GAC1BC,EAAyB,QAIPU,IAApB+B,IACAzC,EAAuB,mBAAqByC,GAG1CxC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAvBG,OAyBpCP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SA3BhE,kBA6B7B,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA/BuB,4CAAF,sDAAE,GAyCxC6C,sDAAuD,WAAF,8CAAE,WAAOD,GAAP,0HAAgCjE,EAAhC,+BAA+C,GAE1E,OAApBiE,QAAgD/B,IAApB+B,EAFmB,sBAGzC,IAAI,EAAc,kBAAkB,gIAHK,OAoBnD,IAAWxJ,KAfLwG,EAAe,4DAChBP,QADgB,WACJ,kBADI,KACkBqC,mBAAmBC,OAAOiB,KAE3D/C,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAb6C,+BAalBC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAxBkB,OA0BnDP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SA5BjD,kBA8B5C,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IAhCsC,4CAAF,sDAAE,GA0CvD8C,8BAA+B,WAAF,8CAAE,WAAOC,GAAP,0HAAuBpE,EAAvB,+BAAsC,GAElD,OAAXoE,QAA8BlC,IAAXkC,EAFI,sBAGjB,IAAI,EAAc,SAAS,+FAHV,OAoB3B,IAAW3J,KAfLwG,EAAe,oCAChBP,QADgB,WACJ,SADI,KACSqC,mBAAmBC,OAAOoB,KAElDlD,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAbqB,+BAaMC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAxBN,OA0B3BP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SA5BzE,kBA8BpB,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IAhCc,4CAAF,sDAAE,GA0C/BgD,sDAAuD,WAAF,8CAAE,WAAOC,GAAP,0HAA8BtE,EAA9B,+BAA6C,GAE1E,OAAlBsE,QAA4CpC,IAAlBoC,EAFqB,sBAGzC,IAAI,EAAc,gBAAgB,8HAHO,OAoBnD,IAAW7J,KAfLwG,EAAe,4DAChBP,QADgB,WACJ,gBADI,KACgBqC,mBAAmBC,OAAOsB,KAEzDpD,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAb6C,+BAalBC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAxBkB,OA0BnDP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SA5BjD,kBA8B5C,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IAhCsC,4CAAF,sDAAE,GA0CvDkD,oCAAqC,WAAF,8CAAE,WAAOvD,GAAP,yHAiBjC,IAAWvG,KAjBwDuF,EAAlC,+BAAiD,GAC5EiB,EAD2B,sCAG3BC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAR2B,+BAQAC,OAAQ,QAAWF,GAAgBpB,GAC9DuB,EAA0B,GAC1BC,EAAyB,GAI/BD,EAAwB,gBAAkB,mBAEpCE,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IArBA,OAuBjCP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAC9F8B,EAAsC,kBAATf,GAAyE,qBAAnDK,EAAuBpB,QAAQ,gBACxFoB,EAAuB/J,KAAQyK,EAAqBC,KAAKC,eAAmBC,IAATlB,EAAqBA,EAAO,IAAOA,GAAQ,GA3B7E,kBA6B1B,CACHmB,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA/BoB,4CAAF,sDAAE,GAwCrCmD,+BAAgC,WAAF,8CAAE,oIAe5B,IAAW/J,KAfwBuF,EAAP,+BAAsB,GAC5CiB,EADsB,kCAGtBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARsB,+BAQKC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBL,OAqB5BP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAvBxE,kBAyBrB,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3Be,4CAAF,qDAAE,GAqChCoD,2CAA4C,WAAF,8CAAE,WAAOH,GAAP,0HAA8BtE,EAA9B,+BAA6C,GAE/D,OAAlBsE,QAA4CpC,IAAlBoC,EAFU,sBAG9B,IAAI,EAAc,gBAAgB,mHAHJ,OAoBxC,IAAW7J,KAfLwG,EAAe,iDAChBP,QADgB,WACJ,gBADI,KACgBqC,mBAAmBC,OAAOsB,KAEzDpD,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAbkC,+BAaPC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAxBO,OA0BxCP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SA5B5D,kBA8BjC,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IAhC2B,4CAAF,sDAAE,GA0C5CqD,qCAAsC,WAAF,8CAAE,WAAO1D,GAAP,yHAiBlC,IAAWvG,KAjB8CuF,EAAvB,+BAAsC,GAClEiB,EAD4B,uCAG5BC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAR4B,+BAQDC,OAAQ,QAAWF,GAAgBpB,GAC9DuB,EAA0B,GAC1BC,EAAyB,GAI/BD,EAAwB,gBAAkB,mBAEpCE,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IArBC,OAuBlCP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAC9F8B,EAAsC,kBAATf,GAAyE,qBAAnDK,EAAuBpB,QAAQ,gBACxFoB,EAAuB/J,KAAQyK,EAAqBC,KAAKC,eAAmBC,IAATlB,EAAqBA,EAAO,IAAOA,GAAQ,GA3B5E,kBA6B3B,CACHmB,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA/BqB,4CAAF,sDAAE,GAyCtCsD,oCAAqC,WAAF,8CAAE,WAAO3D,GAAP,yHAiBjC,IAAWvG,KAjBmDuF,EAA7B,+BAA4C,GACvEiB,EAD2B,uCAG3BC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAR2B,+BAQAC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAI/BD,EAAwB,gBAAkB,mBAEpCE,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IArBA,OAuBjCP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAC9F8B,EAAsC,kBAATf,GAAyE,qBAAnDK,EAAuBpB,QAAQ,gBACxFoB,EAAuB/J,KAAQyK,EAAqBC,KAAKC,eAAmBC,IAATlB,EAAqBA,EAAO,IAAOA,GAAQ,GA3B7E,kBA6B1B,CACHmB,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA/BoB,4CAAF,sDAAE,GAyCrCuD,mDAAoD,WAAF,8CAAE,WAAO5D,GAAP,yHAiBhD,IAAWvG,KAjB4EuF,EAAvC,+BAAsD,GAChGiB,EAD0C,sDAG1CC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAR0C,+BAQfC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAI/BD,EAAwB,gBAAkB,mBAEpCE,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IArBe,OAuBhDP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAC9F8B,EAAsC,kBAATf,GAAyE,qBAAnDK,EAAuBpB,QAAQ,gBACxFoB,EAAuB/J,KAAQyK,EAAqBC,KAAKC,eAAmBC,IAATlB,EAAqBA,EAAO,IAAOA,GAAQ,GA3B9D,kBA6BzC,CACHmB,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA/BmC,4CAAF,sDAAE,KAyC/C,EAAgB,SAASV,GAClC,MAAO,CAQGoD,qCARH,SAQwC/C,EAAsBhB,GAAa,mKAC1C,EAA6BW,GAAeoD,qCAAqC/C,EAAMhB,GAD7C,cACpEsC,EADoE,0BAEnE,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJiD,8CAcxEyB,uCAtBH,SAsB0CC,EAA0BjE,GAAa,mKAChD,EAA6BW,GAAeqD,uCAAuCC,EAAiBjE,GADpD,cAC1EsC,EAD0E,0BAEzE,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJuD,8CAc9E2B,sDApCH,SAoCyDD,EAAyBjE,GAAa,mKAC9D,EAA6BW,GAAeuD,sDAAsDD,EAAiBjE,GADrD,cACxFsC,EADwF,0BAEvF,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJqE,8CAc5F4B,8BAlDH,SAkDiCC,EAAgBpE,GAAa,mKAC7B,EAA6BW,GAAewD,8BAA8BC,EAAQpE,GADrD,cACvDsC,EADuD,0BAEtD,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJoC,8CAc3D8B,sDAhEH,SAgEyDC,EAAuBtE,GAAa,mKAC5D,EAA6BW,GAAe0D,sDAAsDC,EAAetE,GADrD,cACtFsC,EADsF,0BAErF,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJmE,8CAc1FgC,oCA9EH,SA8EuCvD,EAA2BhB,GAAa,mKAC9C,EAA6BW,GAAe4D,oCAAoCvD,EAAMhB,GADxC,cACxEsC,EADwE,0BAEvE,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJqD,8CAa5EiC,+BA3FH,SA2FkCxE,GAAa,mKACd,EAA6BW,GAAe6D,+BAA+BxE,GAD7D,cACxCsC,EADwC,0BAEvC,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJqB,8CAc5CkC,2CAzGH,SAyG8CH,EAAuBtE,GAAa,mKACjD,EAA6BW,GAAe8D,2CAA2CH,EAAetE,GADrD,cAC3EsC,EAD2E,0BAE1E,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJwD,8CAc/EmC,qCAvHH,SAuHwC1D,EAAgBhB,GAAa,mKACpC,EAA6BW,GAAe+D,qCAAqC1D,EAAMhB,GADnD,cAC9DsC,EAD8D,0BAE7D,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJ2C,8CAclEoC,oCArIH,SAqIuC3D,EAAsBhB,GAAa,mKACzC,EAA6BW,GAAegE,oCAAoC3D,EAAMhB,GAD7C,cACnEsC,EADmE,0BAElE,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJgD,8CAcvEqC,mDAnJH,SAmJsD5D,EAAgChB,GAAa,mKAClE,EAA6BW,GAAeiE,mDAAmD5D,EAAMhB,GADnC,cAC5FsC,EAD4F,0BAE3F,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJyE,gDAsIjG,EAAb,sMASW,SAAqCvB,EAAsBhB,GAAa,WAC3E,OAAO,EAAcZ,KAAKuB,eAAeoD,qCAAqC/C,EAAMhB,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAVhJ,oDAoBW,SAAuCqD,EAA0BjE,GAAa,WACjF,OAAO,EAAcZ,KAAKuB,eAAeqD,uCAAuCC,EAAiBjE,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eArB7J,mEA+BW,SAAsDqD,EAAyBjE,GAAa,WAC/F,OAAO,EAAcZ,KAAKuB,eAAeuD,sDAAsDD,EAAiBjE,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAhC5K,2CA0CW,SAA8BwD,EAAgBpE,GAAa,WAC9D,OAAO,EAAcZ,KAAKuB,eAAewD,8BAA8BC,EAAQpE,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eA3C3I,mEAqDW,SAAsD0D,EAAuBtE,GAAa,WAC7F,OAAO,EAAcZ,KAAKuB,eAAe0D,sDAAsDC,EAAetE,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAtD1K,iDAgEW,SAAoCI,EAA2BhB,GAAa,WAC/E,OAAO,EAAcZ,KAAKuB,eAAe4D,oCAAoCvD,EAAMhB,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAjE/I,4CA0EW,SAA+BZ,GAAa,WAC/C,OAAO,EAAcZ,KAAKuB,eAAe6D,+BAA+BxE,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eA3EpI,wDAqFW,SAA2C0D,EAAuBtE,GAAa,WAClF,OAAO,EAAcZ,KAAKuB,eAAe8D,2CAA2CH,EAAetE,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAtF/J,kDAgGW,SAAqCI,EAAgBhB,GAAa,WACrE,OAAO,EAAcZ,KAAKuB,eAAe+D,qCAAqC1D,EAAMhB,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAjGhJ,iDA2GW,SAAoCI,EAAsBhB,GAAa,WAC1E,OAAO,EAAcZ,KAAKuB,eAAegE,oCAAoC3D,EAAMhB,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eA5G/I,gEAsHW,SAAmDI,EAAgChB,GAAa,WACnG,OAAO,EAAcZ,KAAKuB,eAAeiE,mDAAmD5D,EAAMhB,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,iBAvH9J,GAAiC,GC3uBpB,EAA+B,SAAUD,GAClD,MAAO,CAQHkE,0CAA2C,WAAF,8CAAE,WAAO7D,GAAP,yHAiBvC,IAAWvG,KAjBmFuF,EAAvD,+BAAsE,GACvGiB,EADiC,4CAGjCC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARiC,+BAQNC,OAAQ,QAAWF,GAAgBpB,GAC9DuB,EAA0B,GAC1BC,EAAyB,GAI/BD,EAAwB,gBAAkB,mBAEpCE,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IArBM,OAuBvCP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAC9F8B,EAAsC,kBAATf,GAAyE,qBAAnDK,EAAuBpB,QAAQ,gBACxFoB,EAAuB/J,KAAQyK,EAAqBC,KAAKC,eAAmBC,IAATlB,EAAqBA,EAAO,IAAOA,GAAQ,GA3BvE,kBA6BhC,CACHmB,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA/B0B,4CAAF,sDAAE,GAyC3CyD,2BAA4B,WAAF,8CAAE,WAAOC,GAAP,uHAmBxB,IAAWtK,KAnB2CuF,EAA9B,+BAA6C,GAC/DiB,EADkB,8BAGlBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARkB,+BAQSC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,QAIVU,IAAjB6C,IACAvD,EAAuB,gBAAkBuD,GAGvCtD,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAvBT,OAyBxBP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SA3B5E,kBA6BjB,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA/BW,4CAAF,sDAAE,KAyCvB,EAAgB,SAASV,GAClC,MAAO,CAQGkE,0CARH,SAQ6C7D,EAAgDhB,GAAa,mKACzE,EAA6BW,GAAekE,0CAA0C7D,EAAMhB,GADnB,cACnGsC,EADmG,0BAElG,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJgF,8CAcvGuC,2BAtBH,SAsB8BC,EAAuB/E,GAAa,mKACjC,EAA6BW,GAAemE,2BAA2BC,EAAc/E,GADpD,cAC3DsC,EAD2D,0BAE1D,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJwC,gDA6ChE,EAAb,2MASW,SAA0CvB,EAAgDhB,GAAa,WAC1G,OAAO,EAAcZ,KAAKuB,eAAekE,0CAA0C7D,EAAMhB,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAVrJ,wCAoBW,SAA2BmE,EAAuB/E,GAAa,WAClE,OAAO,EAAcZ,KAAKuB,eAAemE,2BAA2BC,EAAc/E,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,iBArB9I,GAAiC,GC/JpB,EAA6B,SAAUD,GAChD,MAAO,CAOHqE,6BAA8B,WAAF,8CAAE,oIAe1B,IAAWvK,KAfsBuF,EAAP,+BAAsB,GAC1CiB,EADoB,gCAGpBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARoB,+BAQOC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBP,OAqB1BP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAvB1E,kBAyBnB,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3Ba,4CAAF,qDAAE,GAoC9B4D,8BAA+B,WAAF,8CAAE,oIAe3B,IAAWxK,KAfuBuF,EAAP,+BAAsB,GAC3CiB,EADqB,iCAGrBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARqB,+BAQMC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBN,OAqB3BP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAvBzE,kBAyBpB,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3Bc,4CAAF,qDAAE,GAoC/B6D,8BAA+B,WAAF,8CAAE,oIAe3B,IAAWzK,KAfuBuF,EAAP,+BAAsB,GAC3CiB,EADqB,iCAGrBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARqB,+BAQMC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBN,OAqB3BP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAvBzE,kBAyBpB,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3Bc,4CAAF,qDAAE,GAoC/B8D,0BAA2B,WAAF,8CAAE,oIAevB,IAAW1K,KAfmBuF,EAAP,+BAAsB,GACvCiB,EADiB,6BAGjBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARiB,+BAQUC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBV,OAqBvBP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAvB7E,kBAyBhB,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3BU,4CAAF,qDAAE,GAoC3B+D,6BAA8B,WAAF,8CAAE,oIAe1B,IAAW3K,KAfsBuF,EAAP,+BAAsB,GAC1CiB,EADoB,gCAGpBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARoB,+BAQOC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBP,OAqB1BP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAvB1E,kBAyBnB,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3Ba,4CAAF,qDAAE,GAoC9BgE,gCAAiC,WAAF,8CAAE,oIAe7B,IAAW5K,KAfyBuF,EAAP,+BAAsB,GAC7CiB,EADuB,mCAGvBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARuB,+BAQIC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBJ,OAqB7BP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAvBvE,kBAyBtB,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3BgB,4CAAF,qDAAE,GAoCjCiE,mBAAoB,WAAF,8CAAE,oIAehB,IAAW7K,KAfYuF,EAAP,+BAAsB,GAChCiB,EADU,sBAGVC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARU,+BAQiBC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBjB,OAqBhBP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAvBpF,kBAyBT,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3BG,4CAAF,qDAAE,GAoCpBkE,wBAAyB,WAAF,8CAAE,oIAerB,IAAW9K,KAfiBuF,EAAP,+BAAsB,GACrCiB,EADe,2BAGfC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARe,+BAQYC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBZ,OAqBrBP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAvB/E,kBAyBd,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3BQ,4CAAF,qDAAE,GAoCzBmE,+BAAgC,WAAF,8CAAE,oIAe5B,IAAW/K,KAfwBuF,EAAP,+BAAsB,GAC5CiB,EADsB,kCAGtBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARsB,+BAQKC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBL,OAqB5BP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAvBxE,kBAyBrB,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3Be,4CAAF,qDAAE,GAoChCoE,iCAAkC,WAAF,8CAAE,oIAe9B,IAAWhL,KAf0BuF,EAAP,+BAAsB,GAC9CiB,EADwB,oCAGxBC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EARwB,+BAQGC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAnBH,OAqB9BP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAvBtE,kBAyBvB,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA3BiB,4CAAF,qDAAE,GAqClCqE,oCAAqC,WAAF,8CAAE,WAAO1E,GAAP,yHAiBjC,IAAWvG,KAjBsDuF,EAAhC,+BAA+C,GAC1EiB,EAD2B,sCAG3BC,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAR2B,+BAQAC,OAAQ,QAAWF,GAAgBpB,GAC9DuB,EAA0B,GAC1BC,EAAyB,GAI/BD,EAAwB,gBAAkB,mBAEpCE,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IArBA,OAuBjCP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SAC9F8B,EAAsC,kBAATf,GAAyE,qBAAnDK,EAAuBpB,QAAQ,gBACxFoB,EAAuB/J,KAAQyK,EAAqBC,KAAKC,eAAmBC,IAATlB,EAAqBA,EAAO,IAAOA,GAAQ,GA3B7E,kBA6B1B,CACHmB,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IA/BoB,4CAAF,sDAAE,GAyCrCsE,iDAAkD,WAAF,8CAAE,WAAOC,GAAP,0HAA+B5F,EAA/B,+BAA8C,GAErE,OAAnB4F,QAA8C1D,IAAnB0D,EAFe,sBAGpC,IAAI,EAAc,iBAAiB,0HAHC,OAoB9C,IAAWnL,KAfLwG,EAAe,uDAChBP,QADgB,WACJ,iBADI,KACiBqC,mBAAmBC,OAAO4C,KAE1D1E,EAAiB,IAAIC,IAAIF,EAAc,uBAEzCN,IACAS,EAAcT,EAAcS,aAE1BC,EAbwC,+BAabC,OAAQ,OAAUF,GAAgBpB,GAC7DuB,EAA0B,GAC1BC,EAAyB,GAIzBC,EAAQ,IAAIC,gBAAgBR,EAAeS,QAC/BH,EACdC,EAAMG,IAAInH,EAAK+G,EAAuB/G,IAE1C,IAAW,KAAOuF,EAAQyB,MACtBA,EAAMG,IAAI,EAAK5B,EAAQyB,MAAM,IAxBa,OA0B9CP,EAAeS,OAAU,IAAID,gBAAgBD,GAAQI,WACjDC,EAAyBV,GAAeA,EAAYnB,QAAUmB,EAAYnB,QAAU,GACxFoB,EAAuBpB,QAAvB,gDAAqCsB,GAA4BO,GAA2B9B,EAAQC,SA5BtD,kBA8BvC,CACHkC,IAAKjB,EAAekB,SAAWlB,EAAeS,OAAST,EAAemB,KACtErC,QAASqB,IAhCiC,4CAAF,sDAAE,KA0C7C,EAAc,SAASV,GAChC,MAAO,CAOGqE,6BAPH,SAOgChF,GAAa,mKACZ,EAA2BW,GAAeqE,6BAA6BhF,GAD3D,cACtCsC,EADsC,0BAErC,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJmB,8CAa1C0C,8BApBH,SAoBiCjF,GAAa,mKACb,EAA2BW,GAAesE,8BAA8BjF,GAD3D,cACvCsC,EADuC,0BAEtC,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJoB,8CAa3C2C,8BAjCH,SAiCiClF,GAAa,mKACb,EAA2BW,GAAeuE,8BAA8BlF,GAD3D,cACvCsC,EADuC,0BAEtC,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJoB,8CAa3C4C,0BA9CH,SA8C6BnF,GAAa,mKACT,EAA2BW,GAAewE,0BAA0BnF,GAD3D,cACnCsC,EADmC,0BAElC,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJgB,8CAavC6C,6BA3DH,SA2DgCpF,GAAa,mKACZ,EAA2BW,GAAeyE,6BAA6BpF,GAD3D,cACtCsC,EADsC,0BAErC,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJmB,8CAa1C8C,gCAxEH,SAwEmCrF,GAAa,mKACf,EAA2BW,GAAe0E,gCAAgCrF,GAD3D,cACzCsC,EADyC,0BAExC,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJsB,8CAa7C+C,mBArFH,SAqFsBtF,GAAa,mKACF,EAA2BW,GAAe2E,mBAAmBtF,GAD3D,cAC5BsC,EAD4B,0BAE3B,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJS,8CAahCgD,wBAlGH,SAkG2BvF,GAAa,mKACP,EAA2BW,GAAe4E,wBAAwBvF,GAD3D,cACjCsC,EADiC,0BAEhC,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJc,8CAarCiD,+BA/GH,SA+GkCxF,GAAa,mKACd,EAA2BW,GAAe6E,+BAA+BxF,GAD3D,cACxCsC,EADwC,0BAEvC,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJqB,8CAa5CkD,iCA5HH,SA4HoCzF,GAAa,mKAChB,EAA2BW,GAAe8E,iCAAiCzF,GAD3D,cAC1CsC,EAD0C,0BAEzC,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJuB,8CAc9CmD,oCA1IH,SA0IuC1E,EAAyBhB,GAAa,mKAC5C,EAA2BW,GAAe+E,oCAAoC1E,EAAMhB,GADxC,cACtEsC,EADsE,0BAErE,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJmD,8CAc1EoD,iDAxJH,SAwJoDC,EAAwB5F,GAAa,mKACxD,EAA2BW,GAAegF,iDAAiDC,EAAgB5F,GADnD,cAClFsC,EADkF,0BAEjF,WAAqE,IAApEvC,EAAoE,uDAA7C,IAAaa,EAAgC,uDAAbH,EACrD8B,EAAmB,iCAAID,EAAkBtC,SAAzB,IAAkCmC,IAAKvB,EAAW0B,EAAkBH,MAC1F,OAAOpC,EAAMyC,QAAQD,MAJ+D,gDAuIvF,EAAb,8LAQW,SAA6BvC,GAAa,WAC7C,OAAO,EAAYZ,KAAKuB,eAAeqE,6BAA6BhF,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAThI,2CAkBW,SAA8BZ,GAAa,WAC9C,OAAO,EAAYZ,KAAKuB,eAAesE,8BAA8BjF,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAnBjI,2CA4BW,SAA8BZ,GAAa,WAC9C,OAAO,EAAYZ,KAAKuB,eAAeuE,8BAA8BlF,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eA7BjI,uCAsCW,SAA0BZ,GAAa,WAC1C,OAAO,EAAYZ,KAAKuB,eAAewE,0BAA0BnF,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAvC7H,0CAgDW,SAA6BZ,GAAa,WAC7C,OAAO,EAAYZ,KAAKuB,eAAeyE,6BAA6BpF,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAjDhI,6CA0DW,SAAgCZ,GAAa,WAChD,OAAO,EAAYZ,KAAKuB,eAAe0E,gCAAgCrF,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eA3DnI,gCAoEW,SAAmBZ,GAAa,WACnC,OAAO,EAAYZ,KAAKuB,eAAe2E,mBAAmBtF,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eArEtH,qCA8EW,SAAwBZ,GAAa,WACxC,OAAO,EAAYZ,KAAKuB,eAAe4E,wBAAwBvF,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eA/E3H,4CAwFW,SAA+BZ,GAAa,WAC/C,OAAO,EAAYZ,KAAKuB,eAAe6E,+BAA+BxF,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAzFlI,8CAkGW,SAAiCZ,GAAa,WACjD,OAAO,EAAYZ,KAAKuB,eAAe8E,iCAAiCzF,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eAnGpI,iDA6GW,SAAoCI,EAAyBhB,GAAa,WAC7E,OAAO,EAAYZ,KAAKuB,eAAe+E,oCAAoC1E,EAAMhB,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,eA9G7I,8DAwHW,SAAiDgF,EAAwB5F,GAAa,WACzF,OAAO,EAAYZ,KAAKuB,eAAegF,iDAAiDC,EAAgB5F,GAASyC,MAAK,SAACD,GAAD,OAAaA,EAAQ,EAAKzC,MAAO,EAAKa,iBAzHpK,GAA+B,GC3vBlB,EAAY,IAAIF,QAAQ,OAAQ,IAEhC,GAQX,WACEC,GAE4C,IADlCC,EACkC,uDADf,EACnBb,EAAkC,uDAAX,IAAW,uBADlC,KAAAa,WACA,KAAAb,QAEVX,KAAKyG,QAAU,IAAI,EAAQlF,EAAeC,EAAUb,GACpDX,KAAK0G,cAAgB,IAAI,EAAcnF,EAAeC,EAAUb,GAChEX,KAAK2G,YAAc,IAAI,EAAYpF,EAAeC,EAAUb,GAC5DX,KAAK4G,YAAc,IAAI,EAAYrF,EAAeC,EAAUb,GAC5DX,KAAK6G,YAAc,IAAI,EAAYtF,EAAeC,EAAUb,GAC5DX,KAAK8G,UAAY,IAAI,EAAUvF,EAAeC,EAAUb,I,0BClB7C,mBAAY,CACzBoG,MAAO,CACLC,gBAAiB,IAAI,mBACrBC,eAAgB,IAAI,EACpBC,SAAU,GACVC,WAAY,EACZC,cAAe,GACfC,aAAc,KACdC,eAAgB,KAChBC,aAAc,IAEhBC,UAAW,CACTC,eADS,SACMV,EAAOE,GACpBF,EAAME,eAAiBA,GAEzBS,YAJS,SAIGX,EAAOY,GACjBZ,EAAMG,SAAWS,GAEnBC,cAPS,SAOKb,EAAOc,GACnBd,EAAMI,WAAaU,EACnBjM,OAAOkM,eAAeC,QAAQ,KAAMF,IAEtCG,iBAXS,SAWQjB,EAAOkB,GACtBlB,EAAMK,cAAgBa,EACtBrM,OAAOkM,eAAeC,QAAQ,KAAME,IAEtCC,gBAfS,SAeOnB,EAAOoB,GACrBpB,EAAMM,aAAec,GAGvBC,kBAnBS,SAmBSrB,EAAO5M,GACvB4M,EAAMO,eAAiBnN,GAEzBkO,gBAtBS,SAsBOtB,EAAOuB,GACrBvB,EAAMQ,aAAee,EACrB1M,OAAOkM,eAAeC,QAAQ,eAAgBnF,KAAKC,UAAUyF,MAGjEC,QAAS,CACPd,eADO,WACoBR,GAA8B,IAAxCuB,EAAwC,EAAxCA,OACfA,EAAO,oBAAqBvB,IAE9BS,YAJO,WAIiBC,GAAE,IAAZa,EAAY,EAAZA,OAEZA,EAAO,cAAeb,IAExBC,cARO,WAQmBC,GAAE,IAAZW,EAAY,EAAZA,OACdA,EAAO,gBAAiBX,IAE1BG,iBAXO,WAWsBC,GAAE,IAAZO,EAAY,EAAZA,OACjBA,EAAO,mBAAoBP,IAE7BC,gBAdO,WAcqBC,GAAE,IAAZK,EAAY,EAAZA,OAChBA,EAAO,kBAAmBL,IAE5BC,kBAjBO,WAiBuBjO,GAAC,IAAXqO,EAAW,EAAXA,OAClBA,EAAO,oBAAqBrO,IAE9BkO,gBApBO,WAoBqBC,GAAE,IAAZE,EAAY,EAAZA,OAChBA,EAAO,kBAAmBF,KAG9BrP,QAAS,GAETwP,QAAS,CACPC,mBAAoB,SAAC3B,GAAD,OAAWA,EAAMC,iBACrC2B,eAAgB,SAAC5B,GAAD,OAAWA,EAAME,gBACjC2B,YAAa,SAAC7B,GAAD,OAAWA,EAAMG,UAC9B2B,cAAe,SAAC9B,GAAD,OAAWA,EAAMI,YAChC2B,iBAAkB,SAAC/B,GAAD,OAAWA,EAAMK,eACnC2B,gBAAiB,SAAChC,GAAD,OAAWA,EAAMM,cAClC2B,kBAAmB,SAACjC,GAAD,OAAWA,EAAMO,gBACpC2B,gBAAiB,SAAClC,GAAD,OAAWA,EAAMQ,iB,0BC1EhC,GAAe,SAAAhM,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE2N,GAA2B,IAAa,kBAAmB,eAAoB,IAAK,CAAEC,MAAO,gBAAkB,MAAO,MACtHC,GAAa,CACjBF,IAGI,SAAU,GAAOxM,EAAMC,GAC3B,OAAQ,iBAAc,eAAoB,UAAW,KAAM,CACxDD,EAAK2M,cACD,iBAAc,eAAoB,MAAO,CACxChO,IAAK,EACLiO,IAAK,WACLH,MAAO,eAAgB,CAAC,WAAY,CAACzM,EAAK6M,WAAY7M,EAAK2M,aAAe,OAAS,OAClF,CACD,eAAoB,IAAK,KAAM,eAAiB3M,EAAK8M,SAAU,GAC/D,eAAoB,OAAQ,CAC1BL,MAAO,QACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,gBAAe,SAAA+M,GAAM,OAAKhN,EAAKiN,UAAU,CAAC,UAAU,UACvF3K,MAAO,WACNoK,KACF,IACH,eAAoB,IAAI,K,ICmBX,G,wDAArB,iD,0BACE,EAAAC,cAAe,EACf,EAAAG,QAAU,GACV,EAAAD,WAAa,GACb,EAAAK,UAAY,EACZ,EAAAC,aAAe,IALjB,E,8CAQE,WACE,OAAOC,GAAMrB,QAAQC,qB,kBAGvB,SAAKqB,EAAiBP,GAAe,WACnCxJ,KAAKuJ,WAAaQ,EAClB/J,KAAK6J,aAAkC,SAAnB7J,KAAKuJ,WAAwB,IAAU,IAC3DvJ,KAAKwJ,QAAUA,GAAW,GAC1BxJ,KAAKqJ,cAAe,EACpBW,YAAW,WAAQ,EAAK9C,SAAW,EAAK+C,MAAM/C,WAAa,GAC3DlH,KAAK4J,UAAYI,YAAW,WAAQ,EAAKX,cAAe,IAAUrJ,KAAK6J,gB,mBAGzE,WACE7J,KAAKqJ,cAAe,I,qBAGtB,WACErJ,KAAKkK,UAAUC,GAAG,gBAAiBnK,KAAKoK,Q,2BAG1C,WACEpK,KAAKkK,UAAUG,eAAe,gBAAiBrK,KAAKoK,U,GA9BlB,S,oCCnCtC,MAAME,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,U,aCNTC,GAAc,IAAI,QAAoB,CAC1CC,OAAQ,CACNC,mBAAoBpN,EACpBqN,yBAAyB,KAOhB,GAAb,qGAES,WACLH,GAAYI,oBAHhB,2BAMS,WACLJ,GAAYK,kBAPhB,wBAUS,SAAWC,GAChBN,GAAYO,WAAW,CAAExQ,KAAMuQ,MAXnC,4BAkBS,SAAeE,GACpBR,GAAYS,eAAe,CAAEC,UAAW,IAAI5O,MAAM0O,OAnBtD,wBAsBS,SAAWrJ,GAChB6I,GAAYW,WAAW,CAAE1B,QAAS9H,MAvBtC,yBA0BS,SAAYnG,EAAW4P,GAC5BZ,GAAYa,YAAY,CAAE9Q,KAAMiB,EAAG8P,QAASF,MA3BhD,4BAmCS,SAAeG,GACpBf,GAAYgB,eAAeD,KApC/B,2BAwCS,SAAcA,EAAkBvI,EAAayI,GAElDjB,GAAYkB,cAAcH,EAAUvI,EAAKyI,KA1C7C,6BA6CS,SAAgBE,GACrBnB,GAAYoB,gBAAgBD,KA9ChC,mBAuDS,WACLnB,GAAYqB,YAxDhB,KCQqB,GAArB,yG,0BACU,EAAAC,GAAK,IAAI,GAMT,EAAA5E,eAAiC,IAAI,EAGrC,EAAA6E,WAAqB,IAAI,GAVnC,gDAYE,WACE,OAAOhC,GAAMrB,QAAQC,qBAbzB,qBAgBE,WAAO,WACL1I,KAAK+L,SAAW,EAAAC,EAAM5Q,SAEtB4E,KAAKiM,aAAe,EAAAD,EAAM5Q,SAE1B4E,KAAKiH,eAAiB6C,GAAMrB,QAAQE,eACpC3I,KAAKkM,YAAc,IAAI,EAAsBlM,KAAKiH,eAAgBjH,KAAKiM,cACvEjM,KAAKmM,cAAe,EAEpBnM,KAAK+L,SAASK,aAAahJ,QAAQiJ,IAAnC,yDAAuC,WAAO7B,GAAP,yFAE/B8B,EAAgB,EAAKrF,eAAe9G,QAAQT,OAAShC,EACvDkC,KAAKC,OAAM,IAAIC,MAAOC,UAAY,OAAU,EAAKoM,aAHhB,WAK9B,EAAKA,aALyB,gCAM7B,IAAInL,SAAQ,SAAAxE,GAAO,OAAIwN,WAAWxN,EAAS,QANd,0CAW/B8P,EAX+B,wBAYjC,EAAKH,cAAe,EACpB,EAAKlF,eAAe/G,MAAMV,SAAW,GAbJ,oBAc3B,EAAK0M,mBAdsB,aAc3B,EAAkBK,sBAdS,QAejC,EAAKJ,cAAe,EAfa,oBAqBZrJ,IAAnB0H,EAAO3J,QACT2J,EAAO3J,QAAU,GAEjB2J,EAAO3J,QAAQ2L,cAAgB,UAAY,EAAKvF,eAAe/G,MAAMV,SAxBpC,kBAgC5BwB,QAAQxE,QAAQgO,IAhCY,4CAkCnC,EAAK2B,cAAe,EAlCe,kBAmC5BnL,QAAQC,OAAOuJ,IAnCa,0DAAvC,kCAAAxK,KAAA,gBAwCAA,KAAK+L,SAASK,aAAalL,SAASmL,KAAI,SAACnL,GACvC,IACE,EAAK2K,GAAGX,WAAW,mCAAqCtI,KAAKC,UAAU3B,IACvE,MAAO6J,IAGT,OAAO7J,KACN,SAACuL,GACF,IACE,EAAKZ,GAAGb,eAAe,yCAA2CpI,KAAKC,UAAU4J,IACjF,MAAO1B,GACP,EAAKc,GAAGb,eAAe,yCAA2CyB,EAAQ,wBAA0B1B,GAKtG,OAHI0B,EAAMvL,SAASC,SAAW,QAA2BsL,EAAMvL,SAASC,SAAW,SACjFuL,SAASzP,SAASC,KAAOW,EAAOU,KAAKF,UAAU3C,EAAI,aAAe,EAAKiR,OAAOC,UAEzE5L,QAAQC,OAAOwL,MAGxBzM,KAAK8L,WAAa,IAAI,QAAOhJ,EAAWxF,EAAS0C,KAAK+L,cApF1D,GAAiC,SAU/B,gBADC,gBAAQ,CAAEc,GAAI,aAAcC,UAAU,K,kCATpB,GAAG,gBALvB,gBAAa,CACZC,WAAY,CACVC,SAAA,OAGiB,c,UCdrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAASvQ,KAErD,U,aCJb,gBAAS,GAAD,OAAI,IAAJ,qBAA6C,CACnDwQ,MADmD,WAEjDC,QAAQC,IACN,uGAIJC,WAPmD,WAQjDF,QAAQC,IAAI,wCAEdE,OAVmD,WAWjDH,QAAQC,IAAI,6CAEdG,YAbmD,WAcjDJ,QAAQC,IAAI,gCAEdI,QAhBmD,WAiBjDL,QAAQC,IAAI,8CAEdK,QAnBmD,WAoBjDN,QAAQC,IAAI,kEAEdV,MAtBmD,SAsB5C,GACLS,QAAQT,MAAM,4CAA6C,M,iBC1B3D,GAAe,SAAAlR,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,QACtB,GAAa,CAAEA,MAAO,WACtBsE,GAAa,CAAEtE,MAAO,UACtBuE,GAAa,CAAEvE,MAAO,WACtBwE,GAAa,CAAExE,MAAO,oBACtByE,GAAa,CAAEzE,MAAO,0BACtB0E,GAA2B,IAAa,kBAAmB,eAAoB,IAAK,CAAE1E,MAAO,wBAA0B,MAAO,MAC9H2E,GAA0B,iBAC1BC,GAA2B,IAAa,kBAAmB,eAAoB,OAAQ,KAAM,qBAAsB,MACnHC,GAAc,CAClBH,GACAC,GACAC,IAEIE,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAE9E,MAAO,+BAAiC,MAAO,MACtI+E,GAA2B,iBAC3BC,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,KAAM,uBAAwB,MACtHC,GAAc,CAClBH,GACAC,GACAC,IAEIE,GAAc,CAAElF,MAAO,cACvBmF,GAAc,CAAEnF,MAAO,cACvBoF,GAA2B,eAAiB,oCAC5CC,GAAc,CAAC,YACfC,GAA2B,eAAiB,UAC5CC,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,KAAM,CACrF,eAAoB,IAAK,CAAEvF,MAAO,yBAC7C,MACEwF,GAAc,CAClBF,GACAC,IAEIE,GAAc,CAClBvT,IAAK,EACL8N,MAAO,SAEH0F,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,KAAM,MAAO,MAEpG,SAAU,GAAOnS,EAAMC,GAC3B,IAAMmS,EAA4B,eAAkB,kBAC9CC,EAA0B,eAAkB,gBAC5CC,EAA2B,eAAkB,iBAC7CC,EAAyB,eAAkB,eAC3CC,EAAwB,eAAkB,cAEhD,OAAQ,iBAAc,eAAoB,UAAW,GAAY,CAC9DxS,EAAKyS,eACD,iBAAc,eAAaL,EAA2B,CAAEzT,IAAK,KAC9D,eAAoB,IAAI,GAC5B,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAOoS,GAAY,WAAa,eAAiB/Q,EAAK0S,aAAe,oCAAqC,GAC9H,eAAoB,MAAO1B,GAAY,CACrC,eAAoB,SAAU,CAC5BvE,MAAO,2BACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAK2S,eAClD,cACH,eAAoB,SAAU,CAC5BlG,MAAO,gCACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAK4S,gBAAiB,KACnE,YAGP,eAAoB,MAAO3B,GAAY,CACrC,eAAoB,MAAOC,GAAY,CACrC,eAAoB,SAAU,CAC5BzE,MAAO,eAAgB,CAAC,MAAO,CAAoB,GAAnBzM,EAAKyK,WAAkB,SAAW,MAClEoI,MAAO,CAAC,KAAO,IAAI,eAAe,QAClC9F,QAAS9M,EAAO,KAAOA,EAAO,GAAK,gBAAe,SAAA+M,GAAM,OAAKhN,EAAK8S,WAAW,KAAK,CAAC,cAClFxB,GAAa,GAChB,eAAoB,SAAU,CAC5B7E,MAAO,eAAgB,CAAC,MAAO,CAAoB,GAAnBzM,EAAKyK,WAAkB,SAAW,MAClEoI,MAAO,CAAC,KAAO,IAAI,cAAc,QACjC9F,QAAS9M,EAAO,KAAOA,EAAO,GAAK,gBAAe,SAAA+M,GAAM,OAAKhN,EAAK8S,WAAW,KAAK,CAAC,cAClFpB,GAAa,OAGpB,eAAoB,MAAOC,GAAa,CACtC,eAAoB,OAAQC,GAAa,CACvCC,GACA,eAAoB,SAAU,KAAM,eAAiB7R,EAAK+S,WAAW/S,EAAKgT,iBAAkB,KAE9F,eAAoB,SAAU,CAC5BvG,MAAO,kBACPwG,SAAUjT,EAAKyS,cACf1F,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKkT,WAClDjB,GAAa,EAAGH,MAED,GAAnB9R,EAAKyK,YAAmBzK,EAAKmT,aAAanX,OAAS,GAC/C,iBAAc,eAAoB,MAAOkW,GAAa,EACpD,gBAAW,GAAO,eAAoB,OAAW,KAAM,eAAYlS,EAAKmT,cAAc,SAACzV,EAAG0V,GACzF,OAAQ,iBAAc,eAAaf,EAAyB,CAC1DgB,cAAe,SAAArG,GAAM,OAAKhN,EAAKsT,YAAY5V,IAC3C6V,SAAUvT,EAAKmT,aAAaC,GAC5B,oBAAqB,SAAApG,GAAM,OAAMhN,EAAKmT,aAAaC,GAAQpG,GAC3D1K,MAAO,0BACN,KAAM,EAAG,CAAC,gBAAiB,WAAY,yBACxC,SAEN,eAAoB,IAAI,GACR,GAAnBtC,EAAKyK,YACD,iBAAc,eAAa6H,EAA0B,CAAE3T,IAAK,KAC7D,eAAoB,IAAI,GAC3BqB,EAAK4S,gBACD,iBAAc,eAAaJ,EAAuB,CACjD7T,IAAK,EACL6U,QAASvT,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAK4S,gBAAiB,KACnE,CACDa,OAAQ,gBAAS,iBAAM,CACrBtB,OAEFjN,KAAM,gBAAS,iBAAM,CACnB,eAAaqN,EAAwB,CACnCmB,gBAAiB1T,EAAK0T,gBACtB,2BAA4BzT,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK0T,gBAAmB1G,KACzF,KAAM,EAAG,CAAC,wBAEf2G,EAAG,KAEL,eAAoB,IAAI,K,+CCzH1B,GAAe,SAAA9U,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,eACtB,GAAa,CAAEA,MAAO,cACtB,GAAa,CAAEA,MAAO,iBACtB,GAAa,CAAEA,MAAO,cACtB,GAA0B,eAAiB,WAC3C,GAA2B,IAAa,kBAAmB,eAAoB,OAAQ,KAAM,CACpF,eAAoB,IAAK,CAAEA,MAAO,yBAC7C,MACE,GAAa,CACjB,GACA,IAEI,GAAa,CAAEA,MAAO,gBACtB,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,iBAAkB,MAC7G,GAAc,CAAEA,MAAO,cACvB,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,KAAM,ydAA0d,MACrjB,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,CACnF,eAAoB,KAAM,KAAM,eAChC,eAAoB,KAAM,KAAM,eAChC,eAAoB,KAAM,KAAM,iBAC3C,MACE,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,KAAM,mcAAoc,MAC/hB,GAAc,CAAEA,MAAO,oBAEvB,SAAU,GAAOzM,EAAMC,GAC3B,OAAQ,iBAAc,eAAoB,UAAW,GAAY,CAC/D,eAAa,OAAa,CAAErC,KAAM,SAAW,CAC3CgW,QAAS,gBAAS,iBAAM,CACtB,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,CACzBnH,MAAO,eAAgB,CAAC,kBAAmB,CAAC,CAAC,aAAezM,EAAK6T,eAChE,CACD,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,KAAM,CAC/B,eAAoB,SAAU,CAC5BpH,MAAO,sBACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,kBAAcD,EAAKiN,OAASjN,EAAKiN,MAAL,MAAAjN,EAAI,cAClE,QAGP,eAAoB,MAAO,GAAY,CACrC,eAAYA,EAAK8T,OAAQ,SAAU,IAAI,iBAAM,CAC3C,OACC,KAEL,eAAoB,MAAO,GAAa,CACtC,eAAY9T,EAAK8T,OAAQ,OAAQ,IAAI,iBAAM,CACzC,GACA,GACA,OACC,KAEL,eAAoB,MAAO,GAAa,CACtC,eAAY9T,EAAK8T,OAAQ,SAAU,QAAI1N,GAAW,MAEnD,WAITuN,EAAG,MCzDT,IAAqB,GAArB,yG,0BAEU,EAAAE,WAAY,EAFtB,gDAIE,WACE7D,SAAS9K,KAAK6O,UAAUC,IAAI,cAC5BhE,SAASiE,iBAAiB,UAAW3Q,KAAK4Q,YAN9C,2BASE,WACElE,SAAS9K,KAAK6O,UAAUI,OAAO,cAC/BnE,SAASoE,oBAAoB,UAAW9Q,KAAK4Q,YAXjD,sBAcU,SAASxU,GACa,WAAxBA,EAAEf,IAAI0V,eACR/Q,KAAK2J,UAhBX,mBAoBU,WAAK,WACX3J,KAAKuQ,WAAY,EACjBvG,YAAW,WACT,EAAKgH,MAAM,WACV,SAxBP,GAAwC,SAAnB,GAAU,gBAJ9B,gBAAQ,CACPjE,WAAY,MAGO,c,UCCrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCNT,GAAa,CAAE5D,MAAO,kBACtB,GAA0B,eAAmB,oqBAA2rB,GACxuB,GAAa,CACjB,IAGI,SAAU,GAAOzM,EAAMC,GAC3B,OAAQ,iBAAc,eAAoB,UAAW,GAAY,I,ICN9C,G,qIAAsB,S,UCG3C,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCPT,GAAe,SAAApB,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,iBACtB,GAAa,CAAEA,MAAO,gBACtB,GAAa,CAAEA,MAAO,OACtB,GAAa,CAAC,OACd,GAAa,CAAEA,MAAO,WACtB,GAAa,CAAEA,MAAO,aACtB,GAAa,CAAC,SACd,GAAa,CAAEA,MAAO,YACtB,GAA2B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,eAAiB,MAAO,MACvH,GAAc,CAAEA,MAAO,YACvB,GAAc,CAAEA,MAAO,OACvB,GAA2B,eAAiB,YAC5C,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,KAAM,CACrF,eAAoB,IAAK,CAAEA,MAAO,yBAC7C,MACE,GAAc,CAClB,GACA,IAGI,SAAU,GAAOzM,EAAMC,GAC3B,OAAQ,iBAAc,eAAoB,MAAO,GAAY,CAC3D,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,CACzBsU,IAAKvU,EAAKwU,YAAYxU,EAAKuT,WAC1B,KAAM,EAAG,MAEd,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,GAAY,eAAiBvT,EAAKuT,SAASkB,cAAe,GACrF,eAAoB,MAAO,CACzBhI,MAAO,aACPnK,MAAOtC,EAAKuT,SAASmB,aACpB,eAAiB1U,EAAKuT,SAASmB,aAAc,EAAG,IACnD,eAAoB,MAAO,GAAY,eAAiB1U,EAAKuT,SAASoB,KAAM,GAC5E,GACA,eAAoB,MAAO,GAAa,CACtC,eAAoB,SAAU,KAAM,eAAiB3U,EAAK+S,WAAW/S,EAAKuT,SAASqB,YAAc,UAAW,KAE9G,eAAoB,MAAO,GAAa,eAAiB5U,EAAK+S,WAAW/S,EAAKuT,SAASsB,eAAiB,cAAe,GACvH,eAAoB,SAAU,CAC5BpI,MAAO,uBACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAK8U,cAAc9U,EAAKuT,aACrE,U,4RC9CE,GAAb,iGAQS,SAAYlV,GACjB,IAAM0W,EAAS1W,GAAS,EAClB2W,GAAOD,EAAS,GAAGE,QAAQ,GACjC,OAAyB,IAArBD,EAAIE,QAAQ,KACP,KAAOF,EAAIpQ,QAAQ,IAAK,IAAImB,WAE5B,IAAMiP,EAAIjP,aAdvB,mBAwBS,WACL,IAAMoP,EAAK,WAET,OAA+B,OAArB,EAAIjS,KAAKkS,UAAuB,GAAGrP,SAAS,IAAIsP,UAAU,IAItE,OAAQF,IAAOA,IAAO,IAAMA,IAAO,KAAOA,IAAKG,OAAO,EAAG,GAAK,IAAMH,IAAO,IAAMA,IAAOA,IAAOA,KAAMd,gBA/BzG,4BAkCS,SAAekB,EAAiBC,GAIrC,IAHA,IAAMC,EAAavW,OAAOwW,KAAKH,GACzBI,EAAc,IAAIC,YAAYH,EAAWzZ,QACzC6Z,EAAY,IAAIC,WAAWH,GACxB7Z,EAAI,EAAGA,EAAI2Z,EAAWzZ,OAAQF,IACrC+Z,EAAU/Z,GAAK2Z,EAAWM,WAAWja,GAEvC,IAAMka,EAAO,IAAIC,KAAK,CAACJ,GAAY,CAAEK,KAAMV,IAC3C,OAAOQ,MA1CX,KCWqB,GAArB,yG,0BAGU,EAAAG,MAAQ,IAAI,GAHtB,mDAKU,SAAW9X,GACjB,OAAOiF,KAAK6S,MAAMC,YAAY/X,KANlC,2BASU,SAAcX,GACpB4F,KAAKgR,MAAM,cAAe5W,KAV9B,yBAaU,SAAY6V,GAClB,IAAM8C,EAAO9C,EAAS+C,+BAAiC,GACjDC,EAAahD,EAASiD,iBAAmB,GAE/C,OAAIH,EAAKI,SAAS,QAChB,gCAAgCF,GACvBF,EAAKI,SAAS,SAAWJ,EAAKI,SAAS,SAChD,iCAAiCF,GACxBF,EAAKI,SAAS,QACvB,oCAAoCF,GAC3BF,EAAKI,SAAS,QACvB,gCAAgCF,QAEhC,MA1BN,GAA0C,SAArB,GAAY,gBAPhC,gBAAQ,CACPzH,MAAO,CACLyE,SAAU,IAEZlD,WAAY,MAGO,c,UCJrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCPT,GAAe,SAAAxR,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,kBACtB,GAAa,CAAEA,MAAO,cACtB,GAA0B,eAAmB,yTAAsU,GACnX,GAAa,CACjB,IAEI,GAAc,CAAEA,MAAO,gBACvB,GAAc,CAAEA,MAAO,cACvB,GAAc,CAAC,eACf,GAAc,CAAEA,MAAO,WACvB,GAAc,CAClB9N,IAAK,EACL8N,MAAO,iBAEH,GAAc,CAClB9N,IAAK,EACL8N,MAAO,0BAEH,GAAc,CAAC,YACf,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,KAAM,UAAW,MACzG,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,KAAM,CACrF,eAAoB,IAAK,CAAEA,MAAO,yBAC7C,MACE,GAAc,CAClB,GACA,IAEI,GAAc,CAAEA,MAAO,iBACvB,GAAc,CAAE9N,IAAK,GACrB,GAAc,CAAC,WACf,GAAc,CAAE8N,MAAO,QACvBiK,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAEjK,MAAO,mBAAqB,MAAO,MAC1HkK,GAAc,CAClBD,IAEIE,GAAc,CAAEjY,IAAK,GACrBkY,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,CAAE,aAAc,eAAiB,CAC9G,eAAoB,OAAQ,KAAM,SAC7C,MACEC,GAAc,CAAE,aAAc,WAC9BC,GAAc,CAAE,aAAc,QAC9BC,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,CAAE,aAAc,WAAa,wBAAyB,MAC5IC,GAAc,CAAE,aAAc,gBAC9BC,GAAc,CAAE,aAAc,UAC9BC,GAAc,CAClBxY,IAAK,EACL8N,MAAO,qBAEH2K,GAAc,CAClBzY,IAAK,EACL8N,MAAO,uBAEH4K,GAAc,CAAE5K,MAAO,cACvB6K,GAAc,CAAC,WACfC,GAAc,CAAC,WACfC,GAAc,CAClB7Y,IAAK,EACL8N,MAAO,QAEHgL,GAAc,CAAC,WACfC,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAEjL,MAAO,6BAA+B,MAAO,MACpIkL,GAAc,CAClBD,IAEIE,GAAc,CAAC,WACfC,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAEpL,MAAO,6BAA+B,MAAO,MACpIqL,GAAc,CAClBD,IAEIE,GAAc,CAAC,WACfC,GAAc,CAAE,aAAc,eAC9BC,GAAc,CAAE,aAAc,WAC9BC,GAAc,CAAEvZ,IAAK,GACrBwZ,GAAc,CAAE,aAAc,QAC9BC,GAAc,CAAEzZ,IAAK,GACrB0Z,GAAc,CAClB,aAAc,UACd5L,MAAO,WAEH6L,GAAc,CAAC,SACfC,GAAc,CAClB,aAAc,eACd9L,MAAO,aAEH+L,GAAc,CAAE7Z,IAAK,GACrB8Z,GAAc,CAAE,aAAc,UAC9BC,GAAc,CAAE/Z,IAAK,GACrBga,GAAc,CAClBha,IAAK,EACL8N,MAAO,qBAEHmM,GAAc,CAClBja,IAAK,EACL8N,MAAO,uBAEHoM,GAAc,CAAEpM,MAAO,cACvBqM,GAAc,CAAC,WACfC,GAAc,CAAC,WACfC,GAAc,CAAC,WACfC,GAAc,CAClBta,IAAK,EACL8N,MAAO,QAEHyM,GAAc,CAAC,WACfC,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAE1M,MAAO,6BAA+B,MAAO,MACpI2M,GAAc,CAClBD,IAEIE,GAAc,CAAC,WACfC,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAE7M,MAAO,6BAA+B,MAAO,MACpI8M,GAAc,CAClBD,IAEIE,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnGC,GAAc,CAClB9a,IAAK,EACL8N,MAAO,cAEHiN,GAAc,CAClB/a,IAAK,EACLkU,MAAO,CAAC,MAAQ,OAAO,aAAa,WAEhC8G,GAAc,CAAC,YACfC,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,mBAAoB,MAChHC,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,KAAM,kDAAmD,MAChJC,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,aAAc,MAE1G,SAAU,GAAO9Z,EAAMC,GAC3B,IAAMmS,EAA4B,eAAkB,kBAC9C2H,EAA4B,eAAkB,kBAC9CC,EAAsB,eAAkB,YAE9C,OAAQ,iBAAc,eAAoB,UAAW,GAAY,CAC9Dha,EAAKyS,eACD,iBAAc,eAAaL,EAA2B,CAAEzT,IAAK,KAC9D,eAAoB,IAAI,GAC5B,eAAoB,MAAO,GAAY,CACrC,eAAgB,eAAoB,SAAU,CAC5C,sBAAuBsB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAKia,gBAAmBjN,KACpF,GAAY,KAAM,CACnB,CAAC,OAAehN,EAAKia,mBAEvB,eAAoB,MAAO,GAAa,CACtC,eAAoB,MAAO,GAAa,CACtC,eAAgB,eAAoB,QAAS,CAC3CC,UAAW,CACTja,EAAO,KAAOA,EAAO,GAAK,gBAAU,SAAA+M,GAAM,OAAKhN,EAAKma,cAAc,CAAC,WACnEla,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKoa,gBAAgBnH,UAAW,KAEvExG,MAAO,sBACP,sBAAuBxM,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK6F,OAAUmH,IAC5EkJ,KAAM,OACNmE,YAAara,EAAKsa,sBAAsBta,EAAKia,kBAC5C,KAAM,GAAI,IAAc,CACzB,CAAC,OAAaja,EAAK6F,UAErB,eAAoB,OAAQ,GAAa,CACrC7F,EAAKua,aAEF,iBAAc,eAAoB,IAAK,MADvC,iBAAc,eAAoB,IAAK,WAKlD,eAAoB,SAAU,CAC5B9N,MAAO,kBACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKma,cACnDlH,SAAUjT,EAAKua,aACd,GAAa,EAAG,MAErB,eAAoB,MAAO,GAAa,CACrCva,EAAKwa,iBAAmBxa,EAAKwa,gBAAgBxe,OAAS,GAClD,iBAAc,eAAoB,QAAS,GAAa,CACvD,eAAoB,QAAS,KAAM,CACjC,eAAoB,KAAM,KAAM,EAC7B,gBAAW,GAAO,eAAoB,OAAW,KAAM,eAAYgE,EAAKya,oBAAoB,SAACC,EAAGC,GAC/F,OAAQ,iBAAc,eAAoB,KAAM,CAC9CC,MAAO,MACP7N,QAAS,SAAAC,GAAM,OAAKhN,EAAK6a,iBAAiBF,EAAOD,EAAEI,WACnDrO,MAAO,eAAgB,CAAEiO,EAAEI,SAAW,WAAa,MAClD,CACD,eAAoB,MAAO,KAAM,CAC/B,eAAoB,OAAQ,GAAa,eAAiBJ,EAAEK,MAAO,GAClEL,EAAEI,UACE,iBAAc,eAAoB,OAAQ,CACzCnc,IAAK,EACL8N,MAAO,eAAgB,CAAEzM,EAAKgb,mBAAqBL,EAAQ,SAAW,GAAI3a,EAAKib,cAC9EtE,GAAa,IAChB,eAAoB,IAAI,MAE7B,GAAI,OACL,UAGR,eAAoB,QAAS,KAAM,EAChC,gBAAW,GAAO,eAAoB,OAAW,KAAM,eAAY3W,EAAKwa,iBAAiB,SAACE,EAAGtH,GAC5F,OAAQ,iBAAc,eAAoB,OAAW,KAAM,EACxD,gBAAW,GAAO,eAAoB,OAAW,KAAM,eAAYsH,EAAEQ,wBAAwB,SAAClc,EAAGmc,GAChG,OAAQ,iBAAc,eAAoB,OAAW,KAAM,CACxDT,EAAEQ,uBAAuBlf,OAAS,GAAe,IAAVmf,GACnC,iBAAc,eAAoB,KAAMvE,GAAa,CACpDC,GACA,eAAoB,KAAMC,GAAa,eAAiB9W,EAAKob,cAAcV,EAAEW,YAAa,GAC1F,eAAoB,KAAMtE,GAAa,eAAiB2D,EAAExE,MAAO,GACjEc,GACA,eAAoB,KAAMC,GAAa,eAAiByD,EAAEY,aAAc,GACxE,eAAoB,KAAMpE,GAAa,CACrC,eAAoB,OAAQ,KAAM,CAClB,gBAAbwD,EAAEjW,QACE,iBAAc,eAAoB,IAAK0S,MACvC,iBAAc,eAAoB,IAAKC,KAC5C,eAAiB,IAAM,eAAiBsD,EAAEjW,QAAS,OAGvD,eAAoB,KAAM4S,GAAa,CACvB,gBAAbqD,EAAEjW,QACE,iBAAc,eAAoB,SAAU,CAC3C9F,IAAK,EACL8N,MAAO,2BACPM,QAAS,SAAAC,GAAM,OAAKhN,EAAKub,eAAeb,EAAEvS,mBACzC,SAAU,EAAGmP,KAChB,eAAoB,IAAI,GACd,gBAAboD,EAAEjW,QACE,iBAAc,eAAoB,SAAU,CAC3C9F,IAAK,EACL8N,MAAO,2BACPM,QAAS,SAAAC,GAAM,OAAKhN,EAAKwb,eAAed,KACvC,WAAY,EAAGnD,KAClB,eAAoB,IAAI,GACd,gBAAbmD,EAAEjW,QACE,iBAAc,eAAoB,OAAQ+S,GAAa,CACtD,eAAauC,EAA2B,CACtC0B,YAAazb,EAAKwa,gBAAgBpH,GAClC,uBAAwB,SAAApG,GAAM,OAAMhN,EAAKwa,gBAAgBpH,GAAQpG,GACjE0O,UAAW1b,EAAK0b,UAChB,qBAAsBzb,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK0b,UAAa1O,IAC9E2O,cAAe3b,EAAKwa,gBAAgBpH,GAAKuI,cACzC,yBAA0B,SAAA3O,GAAM,OAAMhN,EAAKwa,gBAAgBpH,GAAKuI,cAAiB3O,GACjF4O,SAAU5b,EAAK6b,UACf,oBAAqB5b,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK6b,UAAa7O,IAC7E8O,WAAY9b,EAAK+b,UAChB,KAAM,EAAG,CAAC,cAAe,uBAAwB,YAAa,gBAAiB,yBAA0B,WAAY,kBAE1H,eAAoB,IAAI,GACd,gBAAbrB,EAAEjW,QAA6BiW,EAAEsB,gBAM9B,eAAoB,IAAI,IALvB,iBAAc,eAAoB,OAAQ,CACzCrd,IAAK,EACLoO,QAAS,SAAAC,GAAM,OAAKhN,EAAKic,wBAAwBvB,EAAEjW,SACnDgI,MAAO,qBACNkL,GAAa,EAAGF,KAET,cAAbiD,EAAEjW,QAAqC,eAAXiW,EAAExE,MAA0BwE,EAAEsB,gBAMvD,eAAoB,IAAI,IALvB,iBAAc,eAAoB,OAAQ,CACzCrd,IAAK,EACLoO,QAAS,SAAAC,GAAM,OAAKhN,EAAKic,wBAAwBvB,EAAEjW,SACnDgI,MAAO,qBACNqL,GAAa,EAAGF,OAGzB,eAAoB,KAAM,KAAM,CAC9B,eAAoB,MAAO,CACzBnL,MAAO,iBACPG,IAAK,SAAW8N,EAAElS,cAClBlG,MAAO,cACPyK,QAAS,SAAAC,GAAM,OAAKhN,EAAKkc,iBAAiB,SAAWxB,EAAElS,cAAekS,EAAElS,iBACvE,KAAM,EAAGuP,SAGhB,eAAoB,IAAI,GAC5B,eAAoB,KAAM,CACxBnL,IAAK,MAAQ5N,EAAEmd,iBACf1P,MAAO,eAAgBiO,EAAEQ,uBAAuBlf,OAAS,EAAI0e,EAAE0B,YAAc,KAC5E,CACD,eAAoB,KAAMpE,GAAa,CACrC,eAAoB,OAAQ,KAAM,eAAiBhZ,EAAEmd,kBAAmB,KAE1E,eAAoB,KAAMlE,GAAa,CACD,GAAnCyC,EAAEQ,uBAAuBlf,QACrB,iBAAc,eAAoB,OAAQkc,GAAa,eAAiBlY,EAAKob,cAAcV,EAAEW,YAAa,IAC3G,eAAoB,IAAI,KAE9B,eAAoB,KAAMlD,GAAa,CACD,GAAnCuC,EAAEQ,uBAAuBlf,QACrB,iBAAc,eAAoB,OAAQoc,GAAa,eAAiBsC,EAAExE,MAAO,IAClF,eAAoB,IAAI,KAE9B,eAAoB,KAAMmC,GAAa,CACrC,eAAoB,OAAQ,CAC1B/V,MAAOtD,EAAEqd,SACR,eAAiBrd,EAAEqd,SAAU,EAAG/D,MAErC,eAAoB,KAAMC,GAAa,CACpCmC,EAAEQ,uBAAuBlf,OAAS,GAC9B,iBAAc,eAAoB,OAAQwc,GAAa,eAAiBkC,EAAEY,aAAc,IACzF,eAAoB,IAAI,KAE9B,eAAoB,KAAM7C,GAAa,CACD,GAAnCiC,EAAEQ,uBAAuBlf,QACrB,iBAAc,eAAoB,OAAQ0c,GAAa,CACxC,gBAAbgC,EAAEjW,QACE,iBAAc,eAAoB,IAAKkU,MACvC,iBAAc,eAAoB,IAAKC,KAC5C,eAAiB,IAAM,eAAiB8B,EAAEjW,QAAS,MAErD,eAAoB,IAAI,KAE9B,eAAoB,KAAMoU,GAAa,EACnC6B,EAAE4B,kBAAoB5B,EAAEQ,uBAAuBlf,OAAS,GACrD,iBAAc,eAAoB,OAAW,CAAE2C,IAAK,GAAK,GAAI,MAC7D,iBAAc,eAAoB,OAAW,CAAEA,IAAK,GAAK,CAC1C,gBAAb+b,EAAEjW,SAA6BzF,EAAEud,iBAAmB7B,EAAE8B,mBAAqB,GAAKxd,EAAEyd,YAC9E,iBAAc,eAAoB,SAAU,CAC3C9d,IAAK,EACLoO,QAAS,SAAAC,GAAM,OAAKhN,EAAK0c,aAAahC,EAAG1b,IACzCyN,MAAO,uBACN,OAAQ,EAAGqM,KACd,eAAoB,IAAI,GACd,gBAAb4B,EAAEjW,QACE,iBAAc,eAAoB,SAAU,CAC3C9F,IAAK,EACL8N,MAAO,2BACPM,QAAS,SAAAC,GAAM,OAAKhN,EAAKub,eAAeb,EAAEvS,mBACzC,SAAU,EAAG4Q,KAChB,eAAoB,IAAI,GACd,gBAAb2B,EAAEjW,QAA4BiW,EAAEsB,iBAC5B,iBAAc,eAAoB,SAAU,CAC3Crd,IAAK,EACL8N,MAAO,2BACPM,QAAS,SAAAC,GAAM,OAAKhN,EAAKwb,eAAed,KACvC,WAAY,EAAG1B,KAClB,eAAoB,IAAI,GACd,gBAAb0B,EAAEjW,QACE,iBAAc,eAAoB,OAAQwU,GAAa,CACtD,eAAac,EAA2B,CACtC0B,YAAazb,EAAKwa,gBAAgBpH,GAClC,uBAAwB,SAAApG,GAAM,OAAMhN,EAAKwa,gBAAgBpH,GAAQpG,GACjE0O,UAAW1b,EAAK0b,UAChB,qBAAsBzb,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK0b,UAAa1O,IAC9E4O,SAAU5b,EAAK2c,UACf,oBAAqB1c,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK2c,UAAa3P,IAC7E2O,cAAe3b,EAAKwa,gBAAgBpH,GAAKoJ,mBACzC,yBAA0B,SAAAxP,GAAM,OAAMhN,EAAKwa,gBAAgBpH,GAAKoJ,mBAAsBxP,GACtF4P,eAAgB5c,EAAKwa,gBAAgBpH,GAAK8H,uBAAuBC,GACjE,0BAA2B,SAAAnO,GAAM,OAAMhN,EAAKwa,gBAAgBpH,GAAK8H,uBAAuBC,GAAUnO,GAClG8O,WAAY9b,EAAK+b,UAChB,KAAM,EAAG,CAAC,cAAe,uBAAwB,YAAa,WAAY,gBAAiB,yBAA0B,iBAAkB,0BAA2B,kBAEvK,eAAoB,IAAI,GACd,gBAAbrB,EAAEjW,QAA6BiW,EAAEsB,gBAM9B,eAAoB,IAAI,IALvB,iBAAc,eAAoB,OAAQ,CACzCrd,IAAK,EACLoO,QAAS,SAAAC,GAAM,OAAKhN,EAAKic,wBAAwBvB,EAAEjW,SACnDgI,MAAO,qBACN2M,GAAa,EAAGF,KAET,cAAbwB,EAAEjW,QAAqC,eAAXiW,EAAExE,MAA0BwE,EAAEsB,gBAMvD,eAAoB,IAAI,IALvB,iBAAc,eAAoB,OAAQ,CACzCrd,IAAK,EACLoO,QAAS,SAAAC,GAAM,OAAKhN,EAAKic,wBAAwBvB,EAAEjW,SACnDgI,MAAO,qBACN8M,GAAa,EAAGF,MAEtB,OAETG,IACC,IACF,OACD,OACH,OACD,YAGP,iBAAc,eAAoB,MAAOC,GAAa,CACrD,eAAgB,eAAoB,OAAQ,KAAM,uDAAwD,KAAM,CAC9G,CAAC,QAASzZ,EAAKua,mBAGrBva,EAAKyS,eAAiBzS,EAAKwa,gBAAgBxe,OAAS,GACjD,iBAAc,eAAoB,MAAO0d,GAAa,CACrD,eAAoB,SAAU,CAC5BzG,SAAUjT,EAAKoa,gBAAgBnH,SAC/BxG,MAAO,2BACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,kBAAcD,EAAK6c,UAAY7c,EAAK6c,SAAL,MAAA7c,EAAI,cACrE,YAAa,EAAG2Z,OAErB,eAAoB,IAAI,KAE7B3Z,EAAK8c,iBACD,iBAAc,eAAa9C,EAAqB,CAC/Crb,IAAK,EACL6U,QAASvT,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAKhN,EAAK8c,iBAAkB,KACtE,CACDrJ,OAAQ,gBAAS,iBAAM,CACrBmG,OAEF1U,KAAM,gBAAS,iBAAM,CACnB2U,OAEFkD,OAAQ,gBAAS,iBAAM,CACrB,eAAoB,SAAU,CAC5BtQ,MAAO,wBACPM,QAAS9M,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAKhN,EAAKgd,cACpD,OACH,eAAoB,SAAU,CAC5BvQ,MAAO,uBACPM,QAAS9M,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAKhN,EAAK8c,iBAAkB,KACtE,UAELnJ,EAAG,KAEL,eAAoB,IAAI,GAC3B3T,EAAKid,kBACD,iBAAc,eAAajD,EAAqB,CAC/Crb,IAAK,EACL6U,QAASvT,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAKhN,EAAKid,kBAAmB,KACvE,CACDxJ,OAAQ,gBAAS,iBAAM,CACrBqG,OAEF5U,KAAM,gBAAS,iBAAM,CACnB,eAAoB,MAAO,KAAM,eAAiBlF,EAAKkd,YAAa,OAEtEH,OAAQ,gBAAS,iBAAM,CACrB,eAAoB,SAAU,CAC5BtQ,MAAO,wBACPM,QAAS9M,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAKhN,EAAKid,kBAAiB,KACrE,UAELtJ,EAAG,KAEL,eAAoB,IAAI,KC9ahC,IACM,GAAa,CAAElH,MAAO,mBACtB,GAAa,CAAEA,MAAO,YACtB,GAAa,CAAC,MACd,GAAa,CAAC,WAEd,SAAU,GAAOzM,EAAMC,GAC3B,OAAQ,iBAAc,eAAoB,UAAW,GAAY,CAC/D,eAAoB,MAAO,GAAY,CACrC,eAAoB,SAAU,CAC5B8M,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKmd,kBACnDvQ,IAAK5M,EAAKod,UACV3Q,MAAO,+BACN,eAAiBzM,EAAKqd,YAAa,KACtC,eAAoB,MAAO,CACzB7d,GAAIQ,EAAKsd,YACT1Q,IAAK5M,EAAKsd,YACV7Q,MAAO,oBACN,CACD,eAAoB,KAAM,KAAM,EAC7B,gBAAW,GAAO,eAAoB,OAAW,KAAM,eAAYzM,EAAKud,aAAa,SAACzf,EAAGsV,GACxF,OAAQ,iBAAc,eAAoB,KAAM,CAC9CrG,QAAS,SAAAC,GAAM,OAAKhN,EAAK+b,SAASje,EAAE0B,GAAI1B,EAAE0f,SAAU1f,EAAE2f,cACrD,eAAiB3f,EAAE4f,UAAW,EAAG,OAClC,SAEL,EAAG,Q,cCNS,GAArB,yG,0BAOU,EAAAL,WAAa,GACb,EAAAM,UAAW,EACX,EAAAJ,YAA4B,GAsC5B,EAAAD,YAAc,aAAc,IAAI,IAAQM,QACxC,EAAAR,UAAY,UAAW,IAAI,IAAQQ,QAhD7C,sDAWU,WAAa,WAGnB,GAFAta,KAAKua,eACLva,KAAKia,YAAc,GACoC,IAAnDja,KAAKmY,YAAYP,uBAAuBlf,OAAc,CACpDsH,KAAKmY,YAAYqC,MAAM9hB,OAAS,GAClCsH,KAAKia,YAAYjhB,KAAK,CAAEkD,GAAI8D,KAAKmY,YAAYjT,cAAekV,SAAU,MAAOD,WAAY,IAE3F,IAAK,IAAI3hB,EAAI,EAAGA,EAAIwH,KAAKmY,YAAYqC,MAAM9hB,OAAQF,IACjDwH,KAAKia,YAAYjhB,KAAK,CAAEkD,GAAI8D,KAAKmY,YAAYqC,MAAMhiB,GAAG0D,GAAIke,SAAUpa,KAAKya,YAAYza,KAAKmY,YAAYqC,MAAMhiB,GAAG2hB,YAAaD,SAAUla,KAAKmY,YAAYqC,MAAMhiB,GAAG8B,KAAM6f,WAAYna,KAAKmY,YAAYqC,MAAMhiB,GAAG2hB,kBAG9M,GAAIna,KAAKqa,SAAU,CAEbra,KAAKmY,YAAYqC,MAAM9hB,OAAS,GAClCsH,KAAKia,YAAYjhB,KAAK,CAAEkD,GAAI8D,KAAKmY,YAAYjT,cAAekV,SAAU,MAAOD,WAAY,IAG3F,IAAK,IAAI,EAAI,EAAG,EAAIna,KAAKmY,YAAYqC,MAAM9hB,OAAQ,IACJ,IAAzCsH,KAAKmY,YAAYqC,MAAM,GAAGL,YAC5Bna,KAAKia,YAAYjhB,KAAK,CAAEkD,GAAI8D,KAAKmY,YAAYqC,MAAM,GAAGte,GAAIke,SAAUpa,KAAKya,YAAYza,KAAKmY,YAAYqC,MAAM,GAAGL,YAAaD,SAAUla,KAAKmY,YAAYqC,MAAM,GAAGlgB,KAAM6f,WAAYna,KAAKmY,YAAYqC,MAAM,GAAGL,kBAOhN,IAHA,IAAMO,EAAS1a,KAAKmY,YAAYqC,MAAMG,QAAO,SAAC3f,GAC5C,OAAOA,EAAE4f,wBAA0B,EAAKtB,eAAesB,yBAEhD,EAAI,EAAG,EAAIF,EAAOhiB,OAAQ,IACjCsH,KAAKia,YAAYjhB,KAAK,CAAEkD,GAAIwe,EAAO,GAAGxe,GAAIke,SAAUpa,KAAKya,YAAYC,EAAO,GAAGP,YAAaD,SAAUQ,EAAO,GAAGpgB,KAAM6f,WAAYO,EAAO,GAAGP,aAKlJ,IAAMU,EAAK7a,KAAKiK,MAAMjK,KAAKga,aAC3Ba,EAAGpK,UAAUqK,OAAO,UA5CxB,qBAkDE,WACElf,OAAO+U,iBAAiB,QAAS3Q,KAAK+a,gBACtC/a,KAAK+Z,WAAa,WAClB/Z,KAAKqa,SAAWra,KAAKsY,SAAS+B,WArDlC,2BAwDE,WACEze,OAAOkV,oBAAoB,QAAS9Q,KAAK+a,kBAzD7C,0BA4DU,WACN,IAAK,IAAIviB,EAAI,EAAGA,EAAIwH,KAAKoY,UAAU1f,OAAQF,IACX,oBAA1BwH,KAAKoY,UAAU5f,GAAG8B,MAAwD,eAA1B0F,KAAKoY,UAAU5f,GAAG8B,OACpE0F,KAAKoY,UAAU5f,GAAG8B,KAAO,uBAEG,cAA1B0F,KAAKoY,UAAU5f,GAAG8B,OACpB0F,KAAKoY,UAAU5f,GAAG8B,KAAO,iBAlEjC,uBAwEU,SAAUue,GAChB,IAAMmC,EAAahb,KAAKmY,YAAYqC,OAAM,SAACS,GACzC,OAAOpC,IAAqBoC,EAAEpC,oBAEhC,OAAOmC,EAAM,GAAG9e,KA5EpB,yBA+EU,SAAYie,GAClB,IAAMe,EAAUlb,KAAKoY,UAAUuC,QAAO,SAAAM,GACpC,OAAOd,IAAec,EAAE/e,MAEtBif,EAAYD,EAAQ,GAAG5gB,KAQ3B,OAP4B,IAAvB0F,KAAKqY,eAA8C,IAAvBrY,KAAKqY,eAA4C,aAApB6C,EAAQ,GAAG5gB,OACvE6gB,EAAY,WAEa,IAAvBnb,KAAKqY,eAA2C,aAApB6C,EAAQ,GAAG5gB,OACzC6gB,EAAY,YAGPA,IA3FX,4BA8FU,SAAe/e,GACrB,IAAMye,EAAK7a,KAAKiK,MAAMjK,KAAKga,aACrBoB,EAAQpb,KAAKiK,MAAMjK,KAAK8Z,WACxBuB,EAAsBjf,EAAEif,OAC1BR,IAAOQ,GAAUD,IAAUC,GAC7BR,EAAGpK,UAAUI,OAAO,UAnG1B,sBAuGU,SAAS3U,EAAYge,EAAkBC,GAC7C,IAAMU,EAAK7a,KAAKiK,MAAMjK,KAAKga,aAC3Ba,EAAGpK,UAAUI,OAAO,QAGpB7Q,KAAKgR,MAAM,WAAY,CAAE9U,KAAIge,WAAUC,mBA5G3C,GAA4C,SAAvB,GAAc,gBAVlC,gBAAQ,CACP3O,MAAO,CACL2M,YAAa,GACbC,UAAW,GACXE,SAAU,GACVgB,eAAgB,GAChBjB,cAAeiD,QAEjBvO,WAAY,MAEO,c,UCfrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCPT,GAAe,SAAAxR,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,mBACtB,GAA2B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,gBAAkB,CACxG,eAAoB,IAAK,CAAEA,MAAO,kCAC7C,MACE,GAAa,CACjB,IAGI,SAAU,GAAOzM,EAAMC,GAC3B,OAAQ,iBAAc,eAAoB,UAAW,GAAY,ICNnE,IAAqB,GAArB,qIAA4C,SAAvB,GAAc,gBAJlC,gBAAQ,CACP6O,MAAO,MAGY,c,UCCrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCPT,GAAa,CAAErC,MAAO,aACtB,GAAa,CAAEA,MAAO,cACtB,GAAa,CACjBA,MAAO,gBACPG,IAAK,gBAED,GAAa,CAAEH,MAAO,mBACtB,GAAa,CAAEA,MAAO,gBACtB,GAA0B,eAAiB,oBAC3C,GAAa,CAAEA,MAAO,cACtB,GAA0B,eAAiB,kBAC3C,GAAa,CAAEA,MAAO,gBACtB,GAA2B,eAAiB,oBAE5C,SAAU,GAAOzM,EAAMC,GAC3B,OAAQ,iBAAc,eAAoB,UAAW,GAAY,CAC/D,eAAa,OAAa,CAAErC,KAAM,SAAW,CAC3CgW,QAAS,gBAAS,iBAAM,CACtB,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,GAAY,CACrC,eAAoB,IAAK,CACvBnH,MAAO,iCACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKsU,MAAM,aAE3D,eAAoB,MAAO,GAAY,CACrC,eAAYtU,EAAK8T,OAAQ,SAAU,IAAI,iBAAM,CAC3C,SAGJ,eAAoB,MAAO,GAAY,CACrC,eAAY9T,EAAK8T,OAAQ,OAAQ,IAAI,iBAAM,CACzC,SAGJ,eAAoB,MAAO,GAAY,CACrC,eAAY9T,EAAK8T,OAAQ,SAAU,IAAI,iBAAM,CAC3C,GACA,eAAoB,SAAU,CAC5BrH,MAAO,uBACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKsU,MAAM,YACxD,iBAIR,WAGPX,EAAG,MC9CT,IAAqB,GAArB,yKAEE,WACE3D,SAAS9K,KAAK6O,UAAUC,IAAI,gBAHhC,2BAME,WACEhE,SAAS9K,KAAK6O,UAAUI,OAAO,kBAPnC,GAAsC,SAAjB,GAAQ,gBAF5B,gBAAQ,KAEY,c,UCGrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,MAErD,UCGF0K,GAAuB,CAClCC,QAAS,UACTC,OAAQ,SACRC,QAAS,UACTC,WAAY,aACZC,aAAc,eACdC,IAAK,MACLC,OAAQ,U,qCCMW,GAArB,yG,0BAIU,EAAAjQ,GAAK,IAAI,GAET,EAAAgH,MAAQ,IAAI,GAEZ,EAAA1D,eAAgB,EAMhB,EAAA4M,WAAape,EAASiU,QAAQ,cAAgB,EAC9C,EAAAoK,YAAiC,GAEjC,EAAAnM,aAA2B,GAE3B,EAAAqH,gBAAyB,GAEzB,EAAA+E,mBAAqB,EACrB,EAAAzC,iBAAkB,EAClB,EAAAG,kBAAmB,EAEnB,EAAAuC,eAAgB,EAChB,EAAA3Z,OAAS,GACT,EAAA4Z,KAAO,EACP,EAAAC,KAAO,GACP,EAAAzF,gBAAkB,EAClB,EAAA0F,WAAa,EAEb,EAAAvF,gBAAuB,GA6BvB,EAAAG,aAAc,EAEd,EAAAU,WAAa,OACb,EAAAD,iBAAmB,EAEnB,EAAAU,UAAwB,GAExB,EAAAiB,UAAY,CAAE5B,KAAM,WAAY4C,UAAU,GAC1C,EAAA9B,UAAY,CAAEd,KAAM,WAAY4C,UAAU,GAE1C,EAAAlD,mBAAqB,CAC3B,CAAEM,KAAM,cAAe1c,MAAO,aAAcyc,UAAU,GACtD,CAAEC,KAAM,UAAW1c,MAAO,UAAWyc,UAAU,GAC/C,CAAEC,KAAM,OAAQ1c,MAAO,OAAQyc,UAAU,GACzC,CAAEC,KAAM,UAAW1c,MAAO,UAAWyc,UAAU,GAC/C,CAAEC,KAAM,eAAgB1c,MAAO,cAAeyc,UAAU,GACxD,CAAEC,KAAM,SAAU1c,MAAO,SAAUyc,UAAU,GAC7C,CAAEC,KAAM,SAAU1c,MAAO,GAAIyc,UAAU,GACvC,CAAEC,KAAM,GAAI1c,MAAO,GAAIyc,UAAU,IAuV3B,EAAAoC,WAAa,GAtavB,gDAUE,WACE,OAAO9P,GAAMrB,QAAQC,qBAXzB,mCAkCU,SAAsBiO,GAC5B,IAAI2F,EAAgB,GACpB,OAAQ3F,EAAgBlU,YACtB,IAAK,IACH6Z,EAAgB,wBAChB,MACF,IAAK,IACHA,EAAgB,0BAChB,MACF,IAAK,IACHA,EAAgB,iBAChB,MACF,IAAK,IACHA,EAAgB,oBAChB,MACF,IAAK,IACHA,EAAgB,yBAChB,MACF,IAAK,IACHA,EAAgB,4BAChB,MACF,QACEA,EAAgB,wBAEpB,OAAOA,IA1DX,2BAkFU,SAAcC,GACpB,OAAO,KAAOA,GAASC,OAAO,uBAnFlC,uBAsFE,WACE,OAAO1S,GAAMrB,QAAQE,iBAvFzB,qBA0FE,WACE3I,KAAKyc,qBACLzc,KAAK0c,eACL1c,KAAK6W,cA7FT,0BAgGU,WAAY,IAIX,EAJW,OACZ8F,EAAM/gB,OAAOkM,eAAe8U,QAAQ,OAAS,GACvC,KAARD,EACF3c,KAAKoY,UAAYxV,KAAKia,MAAMF,GAE5B,UAAA3c,KAAK8L,WAAWrF,eAAhB,SAAyBnD,2BACxBD,MAAK,SAACyZ,GACL,EAAK1E,UAAY0E,EAAI5kB,KAAKA,KAC1B0D,OAAOkM,eAAeC,QAAQ,KAAMnF,KAAKC,UAAU,EAAKuV,eAEzD2E,OAAM,SAAAhS,GACL,EAAKc,GAAGb,eAAe,6BAA+BpI,KAAKC,UAAUkI,IACrE,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,6BAA+BjS,QA5GrF,uBAiHU,WACN/K,KAAKkc,eAAgB,EACrBlc,KAAKmc,KAAO,EACZnc,KAAKid,uBApHT,gCAuHU,SAAmBrc,GAAa,aACtCZ,KAAKiX,aAAc,EACnB,IAAMiG,EAAgB,CACpBf,KAAM,EACNC,KAAMpc,KAAKoc,KACXe,QAASnd,KAAKuC,OACdoU,gBAAiB3W,KAAK2W,gBAAkB,GAGpCyG,EAAWxc,GAAoBsc,EAEjCld,KAAKkc,gBACPlc,KAAKkX,gBAAkB,IAEzBlX,KAAKkc,eAAgB,EACrBlc,KAAKmP,eAAgB,EACrB,UAAAnP,KAAK8L,WAAWjF,mBAAhB,SAA6B1B,oCAAoCiY,GAC9D/Z,MAAK,SAAAyZ,GACJ,EAAK7F,aAAc,EACnB,IAAMoG,EAAmBP,EAAI5kB,KAAKA,KAClC,EAAKmkB,WAAaS,EAAI5kB,KAAKmkB,WAC3B,EAAKF,KAAO,EAAKA,KAAO,EAAKC,KACzB,EAAKC,WAAa,EAAKF,KAAO,EAChC,EAAKrF,gBAAkB,CACrBqF,KAAM,EAAKA,KACXC,KAAM,EAAKA,KACXe,QAAS,EAAK5a,OACdoU,gBAAiB,EAAKA,gBAAkB,EACxChH,UAAU,GAGZ,EAAKmH,gBAAgBnH,UAAW,EAGlC,IAAK,IAAInX,EAAI,EAAGA,EAAI6kB,EAAiB3kB,OAAQF,IAC3C,EAAK0e,gBAAgBle,KAAKqkB,EAAiB7kB,IAE7C,IAAK,IAAI,EAAI,EAAG,EAAI,EAAK0e,gBAAgBxe,OAAQ,IAC/C,EAAKwe,gBAAgB,GAAG4B,YAAc,EAAK5B,gBAAgB,GAAGU,uBAAuBlf,OAAS,EAAI,SAAW,OAE/G,EAAKyW,eAAgB,KAEtB4N,OAAM,SAAAhS,GACLmC,QAAQC,IAAIpC,GACZ,EAAKoE,eAAgB,EACrB,EAAK8H,aAAc,EACnB,EAAKpL,GAAGb,eAAe,mCAAqCpI,KAAKC,UAAUkI,IAC3E,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,mCAAqCjS,QAtK3F,sBA0KU,WACN/K,KAAKid,mBAAmBjd,KAAK8W,mBA3KjC,8BA8KU,SAAiBO,EAAeG,MA9K1C,8BAkLU,SAAiB8F,EAAkBC,GACzC,IAAMC,EAAQxd,KAAKiK,MAAMqT,GAEF,uBAAnBE,EAAMC,WACRD,EAAMC,UAAY,iBAClBzd,KAAK0d,UAAUH,GAAK,KAEpBC,EAAMC,UAAY,sBAClBzd,KAAK0d,UAAUH,GAAK,MA1L1B,uBA8LU,SAAUA,EAAaI,GAE7B,IADA,IAAMzlB,EAAY8H,KAAKkX,gBACd1e,EAAI,EAAGA,EAAIN,EAAKQ,OAAQF,IAC3BN,EAAKM,GAAG0M,eAAiBqY,IAC3BrlB,EAAKM,GAAGsgB,YAAc6E,EAAO,SAAW,QAK5C,OADA3d,KAAKkX,gBAAkBhf,EAChBA,IAvMX,+EA0MU,WAAe0lB,GAAf,kGACN5d,KAAKmP,eAAgB,EACjByO,EAAO1D,UACLhI,EAAQ,GACR0L,EAAO1D,SAAStI,QAAQ,QAAU,IACpCM,EAAQ,mBAEN0L,EAAO1D,SAAStI,QAAQ,SAAW,IACrCM,EAAQ,2EAEV,UAAAlS,KAAK8L,WAAWjF,mBAAhB,SAA6B9B,8BAA8B6Y,EAAO1hB,IAC/DmH,MAAK,SAAAyZ,GACJ,IAAMe,EAAaf,EAAI5kB,KAAKA,KAAK4lB,UAC3BC,EAAOrR,SAASsR,cAAc,KACpCD,EAAK7gB,KAAO6E,IAAIkc,gBAAgB,EAAKC,cAAcL,EAAY3L,IAC/D6L,EAAKI,SAAWP,EAAO1D,SACvB6D,EAAKK,QACLrc,IAAIsc,gBAAgBN,EAAK7gB,MACzB,EAAKiS,eAAgB,KAEtB4N,OAAM,SAAAhS,GACLmC,QAAQC,IAAIpC,GACZ,EAAKoE,eAAgB,EACrB,EAAKtD,GAAGb,eAAe,2BAA6BpI,KAAKC,UAAUkI,IACnE,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,2BAA6BjS,OAI/E,UAAA/K,KAAK8L,WAAWjF,mBAAhB,SAA6BxB,2CAA2CuY,EAAO1hB,IAC5EmH,MAAK,SAAAyZ,GACJ,IAAMe,EAAaf,EAAI5kB,KAAKA,KAAK4lB,UAC3BC,EAAOrR,SAASsR,cAAc,KACpCD,EAAK7gB,KAAO6E,IAAIkc,gBAAgB,EAAKC,cAAcL,EAAY,oBAC/DE,EAAKI,SAAWrB,EAAI5kB,KAAKA,KAAKoC,KAC9ByjB,EAAKK,QACLrc,IAAIsc,gBAAgBN,EAAK7gB,MACzB,EAAKiS,eAAgB,KAEtB4N,OAAM,SAAAhS,GACLmC,QAAQC,IAAIpC,GACZ,EAAKoE,eAAgB,EACrB,EAAKtD,GAAGb,eAAe,2BAA6BpI,KAAKC,UAAUkI,IACnE,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,2BAA6BjS,MA1C3E,gDA1MV,qFAyPU,SAAckH,EAAiBC,GACrC,OAAOlS,KAAK6S,MAAMyL,eAAerM,EAASC,KA1P9C,4BA6PU,SAAeqM,GACrBve,KAAKic,mBAAqBsC,EAC1Bve,KAAKwZ,iBAAkB,IA/P3B,sBAkQU,WAAQ,aACdxZ,KAAKwZ,iBAAkB,EACvB,UAAAxZ,KAAK8L,WAAWjF,mBAAhB,SAA6BjC,uCAAuC5E,KAAKic,oBACtE5Y,MAAK,SAAAyZ,GACJ5P,QAAQC,IAAI2P,GACZ,EAAKX,KAAO,EACZ,EAAKC,KAAO,GACZ,EAAKlF,gBAAkB,GACvB,EAAK+F,wBAENF,OAAM,SAAAhS,GACL,EAAKoE,eAAgB,EACrB,EAAKtD,GAAGb,eAAe,6BAA+BpI,KAAKC,UAAUkI,IACrE,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,+BAAiCjS,QA/QvF,qFAmRU,WAAqB3Q,GAArB,iGACA4F,KAAKyc,qBADL,uBAEAzc,KAAKwe,uBAAuBpkB,GAF5B,OAGN4F,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKJ,UAAU5C,EAAG8G,MAAO,CAAEuQ,KAAM,EAAG8L,IAAKtkB,EAAEyK,gBAAiB8Z,IAAKpD,GAAQC,WAHpG,gDAnRV,oFAyRU,SAAaphB,EAAoBsB,GACvCsE,KAAK4e,6BAA6BxkB,EAAGsB,GACrCE,OAAOkM,eAAeC,QAAQ,OAAQ,KACtC/H,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKE,aAAalD,EAAG8G,MAAO,CAAEuQ,KAAMxY,EAAE8e,mBAAoB2F,IAAKnjB,EAAEkf,sBAAuB+D,IAAKpD,GAAQC,aA5R1I,0CA+RU,SAA6BphB,EAAoBsB,GAGvD,IAAMojB,EAAgC,CACpC5iB,GAAIR,EAAEkf,sBACN1B,mBAAoB9e,EAAE8e,mBACtB6F,aAAcrjB,EAAEqjB,aAChBC,eAAgBtjB,EAAEsjB,eAClBjG,QAASrd,EAAEqd,QACXkG,UAAWvjB,EAAEujB,UACbC,cAAexjB,EAAEwjB,cACjB9N,YAAapR,KAAKmf,0BAA0B/kB,EAAEmkB,YAC9Ca,gBAAiBpf,KAAKqf,sBAAsBjlB,EAAEmkB,YAC9CvG,YAAa5d,EAAE4d,YACfnT,gBAAiBzK,EAAEyK,gBACnB0Z,WAAYnkB,EAAEmkB,YAEhBrR,QAAQC,IAAI2R,GACZhV,GAAMwV,SAAS,kBAAmBR,KAjTtC,mCAoTU,SAAsBP,GAC5B,OAAQve,KAAK6P,aAAa8K,QAAO,SAAAvgB,GAC/B,OAAOA,EAAE8B,KAAOqiB,KACd,GAAGgB,OAvTX,6BA0TU,SAAgBrG,GACtB,OAAIlZ,KAAKwf,YAAYvf,KAAKd,SAChBa,KAAK6P,aAAa8K,QAAO,SAAAvgB,GAC/B,OAAOA,EAAE8e,qBAAuBA,KAC9B,GAAG5H,UAECtR,KAAK6P,aAAa8K,QAAO,SAAAvgB,GAC/B,OAAOA,EAAE8e,qBAAuBA,KAC9B,GAAG3H,eAlUb,uCAsUU,SAA0BgN,GAChC,OAAQve,KAAK6P,aAAa8K,QAAO,SAAAvgB,GAC/B,OAAOA,EAAE8B,KAAOqiB,KACd,GAAGnN,cAzUX,oCA4UU,SAAuBhX,GAE7B,IADA,IAAM0kB,EAAsD,GACnDtmB,EAAI,EAAGA,EAAI4B,EAAEwd,uBAAuBlf,OAAQF,IACnDsmB,EAAyBtmB,GAAK4B,EAAEwd,uBAAuBpf,GACvDsmB,EAAyBtmB,GAAG0D,GAAK9B,EAAEwd,uBAAuBpf,GAAGoiB,sBAG/D,IAAM6E,EAA4B,CAChCvjB,GAAI9B,EAAEyK,gBACN0Z,WAAYnkB,EAAEmkB,WACdrF,mBAAoB9e,EAAE8e,mBACtB9H,YAAapR,KAAKmf,0BAA0B/kB,EAAEmkB,YAC9CgB,KAAMvf,KAAKqf,sBAAsBjlB,EAAEmkB,YACnCmB,sBAAuBtlB,EAAEslB,sBACzBC,UAAWvlB,EAAEslB,sBACbvO,aAAc/W,EAAEwY,KAChBoG,kBAAkB,EAElBhB,YAAa5d,EAAE4d,YACf4H,wBAAyBd,EACzBe,IAAKzlB,EAAEwd,uBAAuB,GAAGsH,cACjCY,UAAW9f,KAAK+f,gBAAgB3lB,EAAE8e,oBAClC8G,uBAAwB5lB,EAAE4lB,uBAC1BC,gBAAiB7lB,EAAE6lB,gBACnBC,kBAAmB9lB,EAAE8lB,kBACrBC,cAAe,EACfC,iBAAkB,GAClBC,eAAgB,EAEhBC,0BAA0B,GAE5BpT,QAAQC,IAAI2R,GACZhV,GAAMwV,SAAS,kBAAmBG,KA5WtC,yFAgXU,gHACNzf,KAAKmP,eAAgB,EACjBoR,EAAM3kB,OAAOkM,eAAe8U,QAAQ,OAAS,GACjD2D,EAAMA,EAAIjf,QAAQ,SAAU,IAChB,KAARif,EAJE,gBAKJvgB,KAAKwgB,4BALD,gDAOExgB,KAAK8L,WAAWnF,mBAPlB,aAOE,EAA6BpC,gDAAgDgc,GAChFld,KADG,yDACE,WAAOyZ,GAAP,2FACAA,EAAI5kB,KADJ,uBAEF,EAAKiX,eAAgB,EAFnB,SAII,EAAKqR,4BAJT,iCAMF,EAAKrR,eAAgB,EAEfsR,EAAmB7kB,OAAOkM,eAAe8U,QAAQ,OACnD6D,EATF,iBAUA,EAAK5Q,aAAejN,KAAKia,MAAM4D,GAV/B,yCAYM,EAAKD,4BAZX,4CADF,kCAAAxgB,KAAA,gBAiBH+c,OAAM,SAAAhS,GACL,EAAKoE,eAAgB,EACrB,EAAKtD,GAAGb,eAAe,mCAAqCpI,KAAKC,UAAUkI,IAC3E,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,mCAAqCjS,EAAI7J,SAASC,WA3BhG,gDAhXV,yJAiZU,kHACNnB,KAAKmP,eAAgB,EADf,mBAEAnP,KAAK8L,WAAWnF,mBAFhB,aAEA,EAA6BrC,4CAChCjB,MAAK,SAAAyZ,GACJ,EAAKjN,aAAeiN,EAAI5kB,KAAKA,KAC7B,EAAK2X,aAAe,sBAClB,EAAKA,aACL,CAAC,qBAAsB,aACvB,CAAC,MAAO,SAEVjU,OAAOkM,eAAeC,QAAQ,KAAM+U,EAAI5kB,KAAKwoB,WAC7C9kB,OAAOkM,eAAeC,QAAQ,KAAMnF,KAAKC,UAAU,EAAKgN,eACxD,EAAKV,eAAgB,KAEtB4N,OAAM,SAAAhS,GACL,EAAKoE,eAAgB,EACrB,EAAKtD,GAAGb,eAAe,mCAAqCpI,KAAKC,UAAUkI,IAC3E,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,mCAAqCjS,EAAI7J,SAASC,WAjB9F,gDAjZV,8FAwaU,SAAwBA,GAC9B,OAAOA,GACL,IAAK,cACHnB,KAAK4Z,WAAa,sCAClB,MACF,IAAK,YACH5Z,KAAK4Z,WAAa,sCAClB,MAEJ5Z,KAAK2Z,kBAAmB,MAjb5B,GAA2C,SAEzC,gBADC,gBAAO,CAAEgH,KAAM,aAAcrQ,QAAS,IAAI,M,kCADxB,GAAa,gBAPjC,gBAAQ,CACPvD,WAAY,CACV6T,eAAA,GACAC,eAAA,GACAC,SAAA,OAGiB,c,UClBrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,IC+BHC,GD/BG,OC+Bf,SAAYA,GACV,4BACA,0BACA,8BACA,2BAJF,CAAYA,QAAS,K,iBCtCf,GAAe,SAAAxlB,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,gBACtB,GAAa,CACjB9N,IAAK,EACL8N,MAAO,aAEH,GAAa,CAAEA,MAAO,gBACtB,GAAa,CAAC,OACd,GAAa,CAAC,WACd,GAAa,CAAC,aACd,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAClG,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAElG,SAAU,GAAOzM,EAAMC,GAC3B,OAAQ,iBAAc,eAAoB,UAAW,GAAY,CAC9DD,EAAK0T,iBACD,iBAAc,eAAoB,MAAO,GAAY,CACpD,eAAoB,KAAM,KAAM,eAAiB1T,EAAK0T,gBAAgB,GAAG4Q,WAAY,IACpF,gBAAW,GAAO,eAAoB,OAAW,KAAM,eAAYtkB,EAAK0T,iBAAiB,SAACgH,EAAG6J,GAC5F,OAAQ,iBAAc,eAAoB,MAAO,KAAM,CACrD,eAAoB,MAAO,GAAY,CACrC,eAAoB,KAAM,KAAM,eAAiB7J,EAAE8J,cAAe,GAClE,eAAoB,MAAO,CACzBjQ,IAAKmG,EAAE+J,OACP1X,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAK0kB,kBAAkB,MACpE,KAAM,EAAG,KACX,gBAAW,GAAO,eAAoB,OAAW,KAAM,eAAYhK,EAAEiK,UAAU,SAAChnB,EAAGinB,GAClF,OAAQ,iBAAc,eAAoB,OAAW,KAAM,CACzD,eAAoB,MAAO,CACzBnY,MAAO,eAAgB,CAAC,WAAY,CAAC,CAAC,OAAWzM,EAAK6kB,iBAAmBlnB,EAAE6B,OAC3EuN,QAAS,SAAAC,GAAM,OAAKhN,EAAK0kB,kBAAkB/mB,EAAE6B,KAC7CqT,MAAO,eAAgB,CAAEiS,IAAKnnB,EAAEonB,EAAI,IAAKC,KAAMrnB,EAAEsnB,EAAI,OACpD,KAAM,GAAI,IACZjlB,EAAK6kB,iBAAmBlnB,EAAE6B,IACtB,iBAAc,eAAoB,MAAO,CACxCb,IAAK,EACL8N,MAAO,mBACPoG,MAAO,eAAgB7S,EAAKklB,OAAOvnB,KAClC,CACD,eAAoB,MAAO,KAAM,eAAiBA,EAAEwnB,OAAQ,GAC5D,eAAoB,IAAK,CACvBC,UAAWznB,EAAE0nB,UACZ,KAAM,EAAG,KACX,IACH,eAAoB,IAAI,IAC3B,OACD,QAEN,GACA,QAEA,SAEN,eAAoB,IAAI,KChDhC,IAAqB,GAArB,yG,0BAEU,EAAAR,gBAAkB,EAF5B,8CAIE,WACE,OAAOvhB,KAAK2M,OAAOtK,MAAMsc,MAL7B,qBAQE,WACE3e,KAAKuhB,gBAAkB,IAT3B,+BAYU,SAAkBS,GACxBhiB,KAAKuhB,gBAAkBS,IAb3B,oBAgBU,SAAO3nB,GACb,IAAI4nB,EAAS,GAMb,OAJEA,EADE5nB,EAAEunB,OACK,CAAEJ,IAAKnnB,EAAEunB,OAAOH,EAAI,IAAKC,KAAMrnB,EAAEunB,OAAOD,EAAI,KAE5C,CAAEH,IAAMnnB,EAAEonB,EAAI,GAAM,IAAKC,KAAOrnB,EAAEsnB,EAAI,EAAK,KAE/CM,MAvBX,GAAyC,SAApB,GAAW,gBAJ/B,gBAAQ,CACPzW,MAAO,CAAE4E,gBAAiB,IAC1BrD,WAAY,MAEO,c,UCArB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCuBM,GAArB,yG,0BAIU,EAAAlB,GAAK,IAAI,GAET,EAAAgH,MAAQ,IAAI,GAMZ,EAAAvD,gBAAiB,EAEjB,EAAAnI,WAAa,EAEb,EAAAuI,eAAiB,EACjB,EAAAsM,YAAc,GACd,EAAAE,eAAgB,EAChB,EAAA3Z,OAAS,GACT,EAAA2f,QAAS,EACT,EAAA/S,eAAgB,EAEhB,EAAAU,aAA2B,GAM3B,EAAAuI,UAAwB,GAExB,EAAAhJ,YAAc,EAAKoQ,YAAYvf,KAAKnB,UAAY,IAAM,EAAK0gB,YAAYvf,KAAKlB,SA/BtF,gDAQE,WACE,OAAO+K,GAAMrB,QAAQC,qBATzB,uBAyBE,WACE,OAAOoB,GAAMrB,QAAQE,iBA1BzB,qBAiCE,WACE3I,KAAKkK,UAAUC,GAAG,eAAgBnK,KAAKmiB,qBACvCvmB,OAAOkM,eAAesa,WAAW,gBACjCpiB,KAAKqiB,iBACLriB,KAAK0c,eACL,IAAM4F,EAAW1mB,OAAOkM,eAAe8U,QAAQ,OAAS,EAClD2F,EAAeviB,KAAK2M,OAAOtK,MAAMsc,IAE3B,WAAR4D,EACFviB,KAAKwP,WAAW,IAEhBxP,KAAKmH,WAAa1J,SAAS6kB,GACH,IAApBtiB,KAAKmH,WACPnH,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,EAAG8G,MAAO,CAAEsc,IAAK,aAE5D3e,KAAKwP,WAAW,MAhDxB,2BAsDE,WACExP,KAAKkK,UAAUG,eAAe,eAAgBrK,KAAKmiB,uBAvDvD,0BA0DU,WAAY,aAClB,UAAAniB,KAAK8L,WAAWrF,eAAhB,SAAyBnD,2BACtBD,MAAK,SAACyZ,GACL,EAAK1E,UAAY0E,EAAI5kB,KAAKA,KAC1B0D,OAAOkM,eAAeC,QAAQ,KAAMnF,KAAKC,UAAU,EAAKuV,eAEzD2E,OAAM,SAAAhS,GACL,EAAKc,GAAGb,eAAe,6BAA+BpI,KAAKC,UAAUkI,IACrE,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,6BAA+BjS,QAlErF,qFAsEU,qIACA/K,KAAK8L,WAAWjF,mBADhB,aACA,EAA6BzB,iCAChC/B,MAAK,SAAAyZ,GACJ,EAAKpN,eAAiBoN,EAAI5kB,KAAKA,QAEhC6kB,OAAM,SAAAhS,GACL,EAAKc,GAAGb,eAAe,+BAAiCpI,KAAKC,UAAUkI,IACvE,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,+BAAiCjS,EAAI7J,SAASC,WAP1F,gDAtEV,yFAiFU,WAAkB,WACxBnB,KAAKmP,eAAgB,EACrB,IAIO,EAJHoR,EAAM3kB,OAAOkM,eAAe8U,QAAQ,OAAS,IACjD2D,EAAMA,EAAIjf,QAAQ,SAAU,IAChB,KAARif,GACFvgB,KAAKwgB,4BAEL,UAAAxgB,KAAK8L,WAAWnF,mBAAhB,SAA6BpC,gDAAgDgc,GAC1Eld,MAAK,SAACyZ,GACL,GAAIA,EAAI5kB,KACN,EAAKiX,eAAgB,EAErB,EAAKqR,gCACA,CACL,EAAKrR,eAAgB,EAErB,IAAMsR,EAAmB7kB,OAAOkM,eAAe8U,QAAQ,MACnD6D,EACF,EAAK5Q,aAAejN,KAAKia,MAAM4D,GAE/B,EAAKD,gCAIVzD,OAAM,SAAAhS,GACL,EAAKoE,eAAgB,EACrB,EAAKtD,GAAGb,eAAe,mCAAqCpI,KAAKC,UAAUkI,IAC3E,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,mCAAqCjS,EAAI7J,SAASC,aA5G1G,uCAkHU,WAAyB,aAC/BnB,KAAKmP,eAAgB,EACrB,UAAAnP,KAAK8L,WAAWnF,mBAAhB,SAA6BrC,4CAC1BjB,MAAK,SAAAyZ,GACJ,EAAKjN,aAAeiN,EAAI5kB,KAAKA,KAC7B,EAAK2X,aAAe,sBAClB,EAAKA,aACL,CAAC,qBAAsB,OAAQ,aAC/B,CAAC,MAAO,OAAQ,SAElBjU,OAAOkM,eAAeC,QAAQ,KAAM+U,EAAI5kB,KAAKwoB,WAC7C9kB,OAAOkM,eAAeC,QAAQ,KAAMnF,KAAKC,UAAU,EAAKgN,eACxD,EAAKV,eAAgB,KAEtB4N,OAAM,SAAAhS,GACL,EAAKoE,eAAgB,EACrB,EAAKtD,GAAGb,eAAe,mCAAqCpI,KAAKC,UAAUkI,IAC3E,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,mCAAqCjS,EAAI7J,SAASC,aAnIxG,iCAuIU,SAAoByR,GAC1B,IAAM4P,EAAkB5mB,OAAOkM,eAAe8U,QAAQ,OAAS,GAC/D,GAAwB,KAApB4F,EAAwB,CAC1BxiB,KAAK6P,aAAejN,KAAKia,MAAM2F,GAC/B,IAAIpoB,EAAc,GAClB,OAAQwY,GACN,KAAK,EACHxY,EAAK4F,KAAK6P,aAAa8K,QAAO,SAACvgB,GAC7B,OAAgC,IAAzBA,EAAE8e,sBACP,GACJ,MACF,KAAK,EACH9e,EAAK4F,KAAK6P,aAAa8K,QAAO,SAACvgB,GAC7B,OAAgC,IAAzBA,EAAE8e,sBACP,GACJ,MAEJlZ,KAAKgQ,YAAY5V,QAEjB4F,KAAKwP,WAAW,KA1JtB,yBA+JU,SAAYpV,GAClB4F,KAAKyiB,sBAAsBroB,GAC3B4F,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKJ,UAAU5C,EAAG8G,MAAO,CAAEuQ,KAAMxY,EAAE8e,mBAAoBwF,IAAK,EAAGC,IAAKpD,GAAQC,aAjKjH,mCAoKU,SAAsBphB,GAE5B,IAAM0kB,EAAsD,CAAC,CAC3D5iB,GAAI,EACJ6iB,aAAc,GACdE,UAAW,GACXD,eAAgB,GAChBjG,QAAS,GACTmG,cAAe,IAEXO,EAA4B,CAChCvjB,GAAI,EACJqiB,WAAYnkB,EAAE8B,GACdgd,mBAAoB9e,EAAE8e,mBACtBwG,sBAAuB,KACvBvO,aAAc/W,EAAE+W,aAChBoO,KAAMnlB,EAAEmlB,KACRlO,IAAKjX,EAAEiX,IACPqR,OAAQtoB,EAAEsoB,OACVC,QAASvoB,EAAEuoB,QACXvR,YAAahX,EAAEgX,YACfE,UAAWlX,EAAEkX,UACbC,aAAcnX,EAAEmX,aAChByH,kBAAkB,EAElBhB,YAAa,GACbvY,OAAQO,KAAKwf,YAAYtf,MAAMT,OAC/BmgB,wBAAyBd,EACzBe,IAAK,EACLC,UAAW9f,KAAKwf,YAAYvf,KAAKd,SAAW/E,EAAEkX,UAAYlX,EAAEmX,aAC5DyO,uBAAwB,GACxBC,gBAAiB,GACjBC,kBAAmB,GACnBC,cAAe,EACfR,UAAWoB,GAAU6B,QACrBxC,iBAAkB,GAClBC,eAAgB,EAChBC,0BAA0B,GAE5BxW,GAAMwV,SAAS,kBAAmBG,KA3MtC,wBA8MU,SAAW7M,GACjB5S,KAAKmH,WAAayL,EAClB9I,GAAMwV,SAAS,gBAAiB1M,GAChC5S,KAAKyc,qBACQ,IAAT7J,EACF5S,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,EAAG8G,MAAO,CAAEsc,IAAK,aAE5D3e,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,EAAG8G,MAAO,CAAEsc,IAAK,SAG9D3e,KAAKuC,OAAS,KAxNlB,uBA2NU,WACN3G,OAAOinB,KAAK,GAAW,GAAGC,eAAgB,WA5N9C,mBA+NU,WACNlnB,OAAOkM,eAAeC,QAAQ,QAAS/H,KAAKwf,YAAYvf,KAAKf,OAAS,KACtEc,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKC,MAAMjD,EAAG8G,MAAO,CAAE0gB,IAAK/iB,KAAKwf,YAAYvf,KAAKf,MAAOyf,IAAKpD,GAAQI,gBAjO3G,wBAoOU,SAAW5gB,GACjB,OAAOiF,KAAK6S,MAAMC,YAAY/X,KArOlC,2BAwOE,WACE,IAAMioB,EAAmBhjB,KAAK2M,OAAOtK,MAAMsc,IAEvCsE,EAAwB,GAAgBC,KAAKlT,YAIjD,MAHiB,YAAbgT,IACFC,EAAmB,GAAgBC,KAAKC,SAEnCF,MA/OX,GAAkC,SAEhC,gBADC,gBAAO,CAAEtC,KAAM,aAAcrQ,QAAS,IAAI,M,kCADxB,GAAI,gBAVxB,gBAAQ,CACPvD,WAAY,CACVqW,WAAA,GACAvC,eAAA,GACAwC,cAAA,GACAC,aAAA,GACAC,cAAA,GACAC,YAAA,OAGiB,c,UCzBrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCRT,SAAU,GAAO9mB,EAAMC,GAC3B,OAAO,K,iBCGI,GAAb,WAKE,WACSsK,GAA8B,uBAA9B,KAAAA,iBAEPjH,KAAKkM,YAAc,IAAI,EAAsBlM,KAAKiH,gBAClDjH,KAAKyjB,cAAgB,KATzB,mDAYS,SAAaC,GAClB1jB,KAAKyjB,cAAgBC,EACrB1jB,KAAK2jB,mBAdT,oBAiBS,SAAOD,GACZ1jB,KAAK4jB,uBACL5jB,KAAK6jB,mBAEa,oBAAPH,GACTA,MAtBN,kCA0BU,WACN,IACEI,aAAaC,QACbjc,eAAeic,QACf,MAAOhZ,OA9Bb,8BAoCU,WACN,IADsB,EAChBiZ,EAAoBtX,SAASuX,OAAO9mB,MAAM,KAD1B,kBAED6mB,GAFC,IAEtB,2BAA8B,KAAnBC,EAAmB,QACtBC,EAAgBD,EAAOrS,QAAQ,KAC/BtX,EAAe4pB,GAAS,EAAID,EAAOjS,OAAO,EAAGkS,GAASD,EAC5DvX,SAASuX,OAAS3pB,EAAO,2CALL,iCApC1B,4BA8CU,WAAc,WACpB0F,KAAKkM,YAAYK,sBACdlJ,MAAK,SAACyZ,GACL,EAAKqH,sBAENpH,OAAM,SAAChS,GACN,EAAKoZ,wBApDb,8BAwDU,WAEN,IAAMC,EAA2BpkB,KAAKiH,eAAe7G,qBAE/CikB,EAAcD,IAAOhnB,EAAyB2D,SACzB3D,EAAyBgE,SAEpDpB,KAAKiH,eAAe7G,qBAAuBikB,EAAKjnB,EAAyBknB,mBAAqBlnB,EAAyBgE,SAErF,oBAAvBpB,KAAKyjB,eACdzjB,KAAKyjB,cAAczjB,KAAKiH,eAAe7G,0BAlE7C,KCGqB,GAArB,yG,0BAEU,EAAAmkB,eAAiC,IAAI,GAC3C,EAAK/E,aAHT,gDAKE,WACExf,KAAKukB,eAAeC,OAAOxkB,KAAKykB,kBANpC,4BASU,WACNza,YAAY,WAAQ0C,SAASzP,SAASC,KAAOS,EAAW2C,EAAIG,SAAW,KAV3E,uBAaE,WACE,OAAOqJ,GAAMrB,QAAQE,mBAdzB,GAAoC,SAAf,GAAM,gBAD1B,gBAAQ,KACY,c,UCDrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCPT,GAAe,SAAApN,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,cACtB,GAAa,CAAEA,MAAO,aACtB,GAAa,CAAEA,MAAO,OACtB,GAAa,CAAEA,MAAO,oBACtB,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,CAAEA,MAAO,YAAc,qBAAsB,MAElI,SAAU,GAAOzM,EAAMC,GAC3B,IAAMmS,EAA4B,eAAkB,kBAC9C4V,EAA2B,eAAkB,iBAEnD,OAAQ,iBAAc,eAAoB,UAAW,GAAY,CAC/D,eAAaA,EAA0B,KAAM,CAC3C,eAAgB,gBAAS,iBAAM,CAC7B,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,GAAY,CACrC,GACA,eAAa5V,aAKrBuB,EAAG,MCvBT,IACM,GAAa,CAAElH,MAAO,wBAEtB,SAAU,GAAOzM,EAAMC,GAC3B,IAAMgoB,EAAwB,eAAkB,cAC1CC,EAAwB,eAAkB,cAEhD,OAAQ,iBAAc,eAAoB,MAAO,GAAY,CAC3D,eAAaD,EAAuB,CAClCE,YAAanoB,EAAKooB,mBAClBC,WAAYroB,EAAKqoB,YAChB,KAAM,EAAG,CAAC,cAAe,eAC5B,eAAYroB,EAAK8T,OAAQ,eAAgB,QAAI1N,GAAW,GACxD,eAAa8hB,EAAuB,CAAEzb,MAAO,a,oDCV3C,GAAe,SAAA5N,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,oBACtB,GAAa,CAAEA,MAAO,eACtB,GAAa,CAAC,SACd,GAAa,CAAC,SACd,GAA2B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,YAAc,6BAA8B,MAE5I,SAAU,GAAOzM,EAAMC,GAC3B,IAAMqoB,EAA8B,eAAkB,oBAChDtO,EAAsB,eAAkB,YAE9C,OAAQ,iBAAc,eAAoB,UAAW,KAAM,CACzD,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,CACzBvN,MAAO,OACP8H,IAAK,KACLxH,QAAS9M,EAAO,KAAOA,EAAO,GAAK,kBAAcD,EAAKuoB,aAAevoB,EAAKuoB,YAAL,MAAAvoB,EAAI,aACzEsC,MAA4B,cAArBtC,EAAKiQ,OAAOrS,KAAuB,OAAS,IAClD,KAAM,EAAG,IACZ,eAAoB,MAAO,CACzB6O,MAAO,aACP8H,IAAK,KACLxH,QAAS9M,EAAO,KAAOA,EAAO,GAAK,kBAAcD,EAAKuoB,aAAevoB,EAAKuoB,YAAL,MAAAvoB,EAAI,aACzEsC,MAA4B,cAArBtC,EAAKiQ,OAAOrS,KAAuB,OAAS,IAClD,KAAM,EAAG,IACZ,KAEDoC,EAAKmoB,aACD,iBAAc,eAAaG,EAA6B,CACvD3pB,IAAK,EACL0pB,WAAYroB,EAAKqoB,YAChB,KAAM,EAAG,CAAC,gBACb,eAAoB,IAAI,KAE7BroB,EAAKwoB,oBACD,iBAAc,eAAaxO,EAAqB,CAC/Crb,IAAK,EACL6U,QAASvT,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKwoB,oBAAqB,KACvE,CACD/U,OAAQ,gBAAS,iBAAM,CACrB,eAAoB,KAAM,KAAM,eAAiBzT,EAAKyoB,eAAgB,OAExEvjB,KAAM,gBAAS,iBAAM,CACnB,eAAoB,MAAO,KAAM,eAAiBlF,EAAK0oB,cAAe,OAExE3L,OAAQ,gBAAS,iBAAM,CACrB,eAAoB,SAAU,CAC5BtQ,MAAO,wBACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAK2oB,qBAClD,OACH,eAAoB,SAAU,CAC5Blc,MAAO,uBACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKwoB,oBAAqB,KACvE,UAEL7U,EAAG,KAEL,eAAoB,IAAI,KC7DhC,IACM,GAAa,CAAElH,MAAO,sBACtB,GAAa,CACjB9N,IAAK,EACL8N,MAAO,qBAEH,GAAa,CAAEA,MAAO,kBACtB,GAAa,CACjB9N,IAAK,EACL8N,MAAO,sBAEH,GAAa,CACjB9N,IAAK,EACL8N,MAAO,qBAEH,GAAa,CAAEA,MAAO,mBACtB,GAAa,CAAEA,MAAO,mBAEtB,SAAU,GAAOzM,EAAMC,GAC3B,IAAM2oB,EAA6B,eAAkB,mBAErD,OAAQ,iBAAc,eAAoB,MAAO,GAAY,CAC1D5oB,EAAK6oB,oBACD,iBAAc,eAAoB,MAAO,GAAY,CACpD,eAAoB,OAAQ,KAAM,eAAiB7oB,EAAK8oB,cAAe,GACvE,eAAoB,OAAQ,KAAM,eAAiB9oB,EAAK+oB,cAAe,MAEzE,eAAoB,IAAI,GAC5B,eAAoB,MAAO,GAAY,CACL,aAA/B/oB,EAAKgpB,wBACD,iBAAc,eAAoB,IAAK,KACxC,eAAoB,IAAI,GACI,oBAA/BhpB,EAAKgpB,wBACD,iBAAc,eAAoB,IAAK,KACxC,eAAoB,IAAI,KAE9B,eAAoB,SAAU,CAC5Bjc,QAAS9M,EAAO,KAAOA,EAAO,GAAK,gBAAe,kBAAcD,EAAKipB,eAAiBjpB,EAAKipB,cAAL,MAAAjpB,EAAI,aAA0B,CAAC,UAAU,UAC/H4M,IAAK,aACLH,MAAO,cACN,CACD,eAAoB,MAAO,GAAY,CACrC,eAAoB,IAAK,CACvBA,MAAO,eAAgB,CAAC,MAAO,QAASzM,EAAKkpB,SAAU,UACtD,KAAM,KAEX,eAAoB,MAAO,GAAY,eAAiBlpB,EAAKmpB,gBAAiB,IAC7E,KACH,eAAa,OAAa,CACxBvrB,KAAM,OACNW,KAAM,UACL,CACDqV,QAAS,gBAAS,iBAAM,CACrB5T,EAAKopB,UACD,iBAAc,eAAaR,EAA4B,CACtDjqB,IAAK,EACLiO,IAAK,eACLc,KAAM1N,EAAKopB,SACXf,WAAYroB,EAAKqoB,YAChB,KAAM,EAAG,CAAC,OAAQ,gBACrB,eAAoB,IAAI,OAE9B1U,EAAG,MC9DT,IAAM,GAAe,SAAA9U,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,YACtB,GAA2B,IAAa,kBAAmB,eAAoB,OAAQ,KAAM,6BAA8B,MAC3H,GAAa,CACjB,IAEI,GAA2B,IAAa,kBAAmB,eAAoB,OAAQ,KAAM,iCAAkC,MAC/H,GAAa,CACjB,IAEI,GAA2B,IAAa,kBAAmB,eAAoB,OAAQ,KAAM,cAAe,MAC5G,GAAa,CACjB,IAEI,GAA2B,IAAa,kBAAmB,eAAoB,OAAQ,KAAM,QAAS,MACtG,GAAa,CACjB,IAEI,GAAc,CAAEA,MAAO,iBACvB,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,KAAM,cAAe,MAC7G,GAAc,CAClB,IAEI,GAAc,CAClB9N,IAAK,EACL8N,MAAO,iBAEH,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,KAAM,UAAW,MACzG,GAAc,CAClB,IAGI,SAAU,GAAOzM,EAAMC,GAC3B,OAAO,gBAAiB,iBAAc,eAAoB,MAAO,GAAY,CAC3E,eAAoB,KAAM,KAAM,CAC7BD,EAAKqoB,YACD,iBAAc,eAAoB,OAAW,CAAE1pB,IAAK,GAAK,CACxD,eAAoB,KAAM,KAAM,CAC9B,eAAoB,SAAU,CAC5BoO,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKsT,YAAY,MAC9D,MAEL,eAAoB,KAAM,KAAM,CAC9B,eAAoB,SAAU,CAC5BvG,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKsT,YAAY,MAC9D,MAEL,eAAoB,KAAM,KAAM,CAC9B,eAAoB,SAAU,CAC5BvG,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKqpB,mBAClD,MAEL,eAAoB,KAAM,KAAM,CAC9B,eAAoB,SAAU,CAC5Btc,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKspB,aAClD,MAEL,eAAoB,KAAM,GAAa,CACrC,eAAoB,SAAU,CAC5Bvc,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAK+hB,QAAQzlB,KAAK,CAAEsB,KAAMoC,EAAKmB,OAAOU,KAAKD,WAAW/C,OACnG,OAEJ,KACH,eAAoB,IAAI,GAC1BmB,EAAKqoB,WAMH,eAAoB,IAAI,IALvB,iBAAc,eAAoB,KAAM,GAAa,CACpD,eAAoB,SAAU,CAC5Btb,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAK+hB,QAAQzlB,KAAK,CAAEsB,KAAMoC,EAAKmB,OAAOE,KAAKO,WAAW/C,OACnG,UAIV,MAAO,CACR,CAAC,OAAQmB,EAAK0N,QCjElB,IAAqB,GAArB,sKAYE,WACE,OAAOvM,IAbX,mBAgBE,WACE,OAAO0d,KAjBX,qBAoBE,WACE,OAAOzR,GAAMrB,QAAQC,qBArBzB,yBAwBU,SAAYkK,GAClB5S,KAAKkK,UAAU8S,KAAK,eAAgBpK,KAzBxC,qBA4BU,WACNhX,OAAOinB,KAAK,GAAW,GAAGoD,QAAS,WA7BvC,0BAgCU,WACNrqB,OAAOinB,KAAK,GAAW,GAAGqD,cAAe,WAjC7C,2BAoCU,WACNtqB,OAAOinB,KAAK,GAAW,GAAGC,eAAgB,aArC9C,GAAsD,SAGpD,gBADC,gBAAK,CAAEqD,UAAU,K,4BAIlB,gBADC,gBAAK,CAAE7V,SAAS,K,kCALE,GAAwB,gBAD5C,gBAAQ,KACY,c,WCHrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCKM,GAArB,yG,0BASS,EAAAwV,UAAW,EATpB,gDAWE,WACE,OAAOhc,GAAMrB,QAAQC,qBAZzB,qBAeE,WACE9M,OAAO+U,iBAAiB,QAAS3Q,KAAK+a,kBAhB1C,2BAmBE,WACEnf,OAAOkV,oBAAoB,QAAS9Q,KAAK+a,kBApB7C,4BAuBU,SAAe3e,GACrB,IAAMye,EAAkB7a,KAAKomB,eACvBC,EAAqBrmB,KAAKomB,eAC1B/K,EAAsBjf,EAAEif,OAC1BR,IAAOQ,GAAUgL,IAAUhL,IAC7Brb,KAAK8lB,UAAW,KA5BtB,2BAgCU,WACN,GAAK9lB,KAAK+kB,WAoBR,OAAQ/kB,KAAK2M,OAAOrS,MAClB,KAAKuD,EAAOU,KAAKN,KAAK1C,EACpByE,KAAK8lB,UAAY9lB,KAAK8lB,SACtB,MACF,KAAKjoB,EAAOU,KAAKC,MAAMjD,EACrByE,KAAKsmB,mBACL,MACF,KAAKzoB,EAAOU,KAAKJ,UAAU5C,EACrByE,KAAKumB,WACPvmB,KAAKwmB,oBAELxmB,KAAKymB,sBAEP,MACF,KAAK5oB,EAAOU,KAAKE,aAAalD,EAC5ByE,KAAK0mB,kBACL,MACF,QACE1mB,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,IAC3C,WAtCJ,OAAQyE,KAAK2M,OAAOrS,MAClB,KAAKuD,EAAOE,KAAKE,KAAK1C,EACpByE,KAAK8lB,UAAY9lB,KAAK8lB,SACtB,MACF,KAAKjoB,EAAOE,KAAKG,kBAAkB3C,EACjCyE,KAAK2mB,wBACL,MACF,KAAK9oB,EAAOE,KAAKI,UAAU5C,EACrByE,KAAKumB,WACPvmB,KAAKwmB,oBAELxmB,KAAK4mB,iBAEP,MACF,QACE5mB,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOE,KAAKE,KAAK1C,IAC3C,SAlDV,wBA+EE,WACE,IACE,OAAOyE,KAAKwf,YAAYvf,KAAKnB,UAAY,IAAMkB,KAAKwf,YAAYvf,KAAKlB,SACrE,MAAOgM,GACP,MAAO,MAnFb,wBAuFE,WACE,OAAQ/K,KAAK2M,OAAOrS,MAClB,QACE,MAAO,MA1Ff,0BA8FE,WACE,GAAK0F,KAAK+kB,WAYR,OAAQ/kB,KAAK2M,OAAOrS,MAClB,KAAKuD,EAAOU,KAAKN,KAAK1C,EACpB,MAAO,OACT,KAAKsC,EAAOU,KAAKJ,UAAU5C,EACzB,OAAOyE,KAAK6mB,mBAAqB,QAAU,kBAC7C,KAAKhpB,EAAOU,KAAKC,MAAMjD,EACnB,OAAOyE,KAAK6mB,mBAAqB,QAAU,kBAC/C,KAAKhpB,EAAOU,KAAKE,aAAalD,EAC1B,OAAOyE,KAAK6mB,mBAAqB,QAAU,iBAC/C,QACE,MAAO,aArBX,OAAQ7mB,KAAK2M,OAAOrS,MAClB,KAAKuD,EAAOE,KAAKE,KAAK1C,EACpB,MAAO,OACT,KAAKsC,EAAOE,KAAKG,kBAAkB3C,EACjC,OAAOyE,KAAK6mB,mBAAqB,QAAU,oBAC7C,KAAKhpB,EAAOE,KAAKI,UAAU5C,EACzB,MAAO,gBACT,QACE,MAAO,WAxGjB,oBA4HE,WACE,OAAQyE,KAAK2M,OAAOrS,MAClB,KAAKuD,EAAOE,KAAKE,KAAK1C,EACpB,OAAOyE,KAAK8lB,SAAW,WAAa,UACtC,QACE,MAAO,cAjIf,kCAqIE,WASE,MAAO,KA9IX,8BAiJE,WACE,IAAMgB,EAAkB9mB,KAAK2M,OAAOtK,MAAMsc,KAAiB,GAC3D,OAAOmI,EAAQlV,QAAQ,iBAAmB,IAnJ9C,sBAsJE,WACE,IAAMkV,EAAkB9mB,KAAK2M,OAAOtK,MAAMsc,KAAiB,GAC3D,OAAoC,GAA7BmI,EAAQlV,QAAQ,YAxJ3B,uBA2JE,WACE,OAAO9H,GAAMrB,QAAQE,iBA5JzB,8BA+JE,WACE,OAAO3I,KAAKwf,YAAYpf,uBAAyBhD,EAAyBknB,qBAhK9E,mCAmKU,WACNtkB,KAAKkK,UAAU8S,KAAK,uBApKxB,8BAuKU,WACNhd,KAAKkK,UAAU8S,KAAK,kBAxKxB,+BA2KU,WACNhd,KAAKkK,UAAU8S,KAAK,mBA5KxB,4BA+KU,WACNhd,KAAKkK,UAAU8S,KAAK,gBAhLxB,iCAmLU,WACNhd,KAAKkK,UAAU8S,KAAK,qBApLxB,6BAuLU,WACNhd,KAAKkK,UAAU8S,KAAK,mBAxLxB,GAA8C,SAI5C,gBADC,gBAAK,CAAE1M,SAAS,K,kCAIjB,gBADC,gBAAI,iB,sCANc,GAAgB,gBALpC,gBAA0B,CACzBvD,WAAY,CACVga,gBAAA,OAGiB,c,WCPrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCMM,GAArB,yG,0BAQU,EAAA7B,oBAAqB,EACrB,EAAAC,cAAgB,GAChB,EAAAC,aAAe,mCAVzB,gDAYE,WACE,OAAOtb,GAAMrB,QAAQC,qBAbzB,qBAgBE,WACE1I,KAAKkK,UAAUC,GAAG,oBAAqBnK,KAAKgnB,iBAC5ChnB,KAAKkK,UAAUC,GAAG,gBAAiBnK,KAAKinB,cACxCjnB,KAAKkK,UAAUC,GAAG,aAAcnK,KAAKknB,WACrClnB,KAAKkK,UAAUC,GAAG,kBAAmBnK,KAAKmnB,gBAC1CnnB,KAAKkK,UAAUC,GAAG,eAAgBnK,KAAKonB,aACvCpnB,KAAKkK,UAAUC,GAAG,cAAenK,KAAKqnB,cAtB1C,2BAyBE,WACErnB,KAAKkK,UAAUG,eAAe,oBAAqBrK,KAAKgnB,iBACxDhnB,KAAKkK,UAAUG,eAAe,gBAAiBrK,KAAKinB,cACpDjnB,KAAKkK,UAAUG,eAAe,aAAcrK,KAAKknB,WACjDlnB,KAAKkK,UAAUG,eAAe,kBAAmBrK,KAAKmnB,gBACtDnnB,KAAKkK,UAAUG,eAAe,eAAgBrK,KAAKonB,aACnDpnB,KAAKkK,UAAUG,eAAe,cAAerK,KAAKqnB,cA/BtD,6BAkCU,SAAgBC,GACtBtnB,KAAKklB,oBAAqB,EAE1BtpB,OAAOkM,eAAesa,WAAW,sBACjCxmB,OAAOkM,eAAesa,WAAW,uBACjCxmB,OAAOkM,eAAesa,WAAW,SACjCxmB,OAAOkM,eAAesa,WAAW,gBAEjCpiB,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOE,KAAKE,KAAK1C,EAAG8G,MAAO,CAAEklB,OAAQD,EAAc,IAAM,SA1CvF,6BA6CU,WACNtnB,KAAKmlB,cAAgB,4BACrBnlB,KAAKolB,aAAe,mCAChBplB,KAAK6mB,mBACP7mB,KAAKqlB,iBAAgB,GAErBrlB,KAAKklB,oBAAqB,IAnDhC,0BAuDU,WACNllB,KAAKmlB,cAAgB,0BACrBnlB,KAAKolB,aAAe,mCAChBplB,KAAK6mB,mBACP7mB,KAAKqlB,kBAELrlB,KAAKklB,oBAAqB,IA7DhC,wBAiEU,WACNllB,KAAKmlB,cAAgB,cACrBnlB,KAAKolB,aAAe,mCAChBplB,KAAK6mB,mBACP7mB,KAAKqlB,kBAELrlB,KAAKklB,oBAAqB,IAvEhC,uBA2EU,WACNllB,KAAKmlB,cAAgB,2BACrBnlB,KAAKolB,aAAe,mCAChBplB,KAAK6mB,mBACP7mB,KAAKqlB,kBAELrlB,KAAKklB,oBAAqB,IAjFhC,4BAqFU,WACNllB,KAAKmlB,cAAgB,kBACrBnlB,KAAKolB,aAAe,8FAChBplB,KAAK6mB,mBACP7mB,KAAKqlB,kBAELrlB,KAAKklB,oBAAqB,IA3FhC,yBA+FU,WACNllB,KAAKmlB,cAAgB,gBACrBnlB,KAAKolB,aAAe,mCAChBplB,KAAK6mB,mBACP7mB,KAAKqlB,iBAAgB,GAErBrlB,KAAKklB,oBAAqB,IArGhC,8BAyGE,WACE,IAAM4B,EAAkB9mB,KAAK2M,OAAOtK,MAAMsc,KAAiB,GAC3D,OAAOmI,EAAQlV,QAAQ,iBAAmB,IA3G9C,yBA8GU,WACN,IAAMoR,EAAmBhjB,KAAK2M,OAAOtK,MAAMsc,KAAiB,GACtD6I,EAAgBxnB,KAAK2M,OAAOrS,MAAkB,GAChD0F,KAAK+kB,YACOlnB,EAAOU,KAAKN,KAAK1C,EAG3BisB,IAAU3pB,EAAOU,KAAKJ,UAAU5C,IAC9BynB,IAAazH,GAAQK,aACvB5b,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,IAE3CyE,KAAKkK,UAAU8S,KAAK,oBAGpBwK,IAAU3pB,EAAOU,KAAKC,MAAMjD,IAC1BynB,IAAazH,GAAQK,aACvB5b,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,IAE3CyE,KAAKkK,UAAU8S,KAAK,iBAGpBwK,IAAU3pB,EAAOU,KAAKE,aAAalD,IACjCynB,IAAazH,GAAQK,aACvB5b,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,IAE3CyE,KAAKkK,UAAU8S,KAAK,kBAIpBwK,IAAU3pB,EAAOE,KAAKI,UAAU5C,IAC9BynB,IAAazH,GAAQO,OACvB9b,KAAKkK,UAAU8S,KAAK,iBAEpBhd,KAAKkK,UAAU8S,KAAK,eAGpBwK,IAAU3pB,EAAOE,KAAKG,kBAAkB3C,GAC1CyE,KAAKkK,UAAU8S,KAAK,0BAnJ5B,GAAwC,SAGtC,gBADC,gBAAK,CAAE1M,SAAS,K,mCAIjB,gBADC,gBAAK,CAAEA,SAAS,K,kCALE,GAAU,gBAN9B,gBAAQ,CACPvD,WAAY,CACV0a,iBAAA,GACA3G,SAAA,OAGiB,c,UCRrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,U,wBCLT,GAAe,SAAAvlB,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,oBACtB,GAAa,CAAEA,MAAO,aACtB,GAAa,CAAEA,MAAO,OACtB,GAAa,CAAEA,MAAO,sBACtB,GAAa,CAAEA,MAAO,eACtB,GAAa,CAAEA,MAAO,oBACtB,GAAa,CAAEA,MAAO,SACtB,GAAa,CAAC,QACd,GAA2B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,OAAS,MAAO,MAChH,GAAc,CAAC,QACf,GAAc,CAAEA,MAAO,aACvB,GAAc,CAAEA,MAAO,eAEvB,SAAU,GAAOzM,EAAMC,GAC3B,OAAQ,iBAAc,eAAoB,MAAO,GAAY,CAC3D,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,GAAY,CACrC,eAAoB,OAAQ,KAAM,CAChC,eAAoB,IAAK,CACvBwM,MAAO,SACPkS,OAAQ,QACRne,KAAMR,EAAKgrB,UACV,eAAgB,EAAG,MAExB,GACA,eAAoB,OAAQ,KAAM,CAChC,eAAoB,IAAK,CACvBve,MAAO,SACPkS,OAAQ,QACRne,KAAMR,EAAKirB,YACV,iBAAkB,EAAG,QAG5B,eAAoB,MAAO,GAAa,CACtC,eAAoB,QAAS,KAAM,eAAiB,eAAiBjrB,EAAKkrB,aAAe,8EAA+E,SAI9K,eAAoB,MAAO,GAAa,CACtC,eAAoB,MAAO,CACzBze,MAAO,OACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKmrB,cACnD5W,IAAK,KACL6W,IAAK,cACL9oB,MAAO,iDC3CrB,IAAqB,GAArB,yG,0BAQU,EAAA+oB,UAAmB,IAAIjoB,MAAOkoB,cARxC,+CAUE,WACE,OAAO,GAAW,GAAGC,YAXzB,sBAaE,WACE,OAAO,GAAW,GAAGC,cAdzB,uBAiBE,WACE,IAAI3I,EACJ,IAEIA,EADoB,OAAlBvf,KAAK+nB,SACA,KAAO/nB,KAAK+nB,UAAUvL,OAAO,QAE7B,OAGT,SACA+C,EAAO,OAET,MAAiB,SAATA,EAAkB,UAAYA,EAAO,SA7BjD,uBAgCU,WACN3jB,OAAOinB,KAAK,iCAAkC,aAjClD,GAAwC,SAEtC,gBADC,gBAAO,CAAElC,KAAM,aAAcrQ,QAAS,IAAI,M,kCAI3C,gBADC,gBAAO,CAAEqQ,KAAM,kBAAmBrQ,QAAS,IAAI,sB,iCAJ7B,GAAU,gBAD9B,gBAAQ,KACY,c,UCHrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCEM,GAArB,qIAA2C,SAEzC,gBADC,gBAAK,CAAEA,SAAS,K,0CAIjB,gBADC,gBAAK,CAAEA,SAAS,K,kCAJE,GAAa,gBANjC,gBAAQ,CACPvD,WAAY,CACVob,WAAA,GACAC,WAAA,OAGiB,c,UCJrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCQM,GAArB,yG,0BAEU,EAAA7D,eAAiC,IAAI,GAC3C,EAAK/E,aAHT,gDAME,WACExf,KAAKukB,eAAe8D,aAAaroB,KAAKsoB,qBAP1C,+BAUU,WAAkF,WAAhEnnB,EAAgE,uDAAjC/D,EAAyBgE,SAC1EmnB,EAAmBvoB,KAAK2M,OAAOtK,MAAMkmB,SAC3C,OAAQpnB,GACN,KAAK/D,EAAyBknB,mBAC5Bta,YAAW,WACT,EAAKyU,QAAQzlB,KACXuvB,GAAsB,CAAEjuB,KAAMuD,EAAOU,KAAKP,KAAKzC,MAEhD,GACH,MACF,KAAK6B,EAAyBorB,gBAC5Bxe,YAAW,WAAQ,EAAKyU,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKI,YAAYpD,MAAS,GAC9E,MACF,KAAK6B,EAAyBgE,SAC5B4I,YAAW,WAAQ0C,SAASzP,SAASC,KAAOS,EAAW2C,EAAIE,QAAU,GACrE,MACF,QACEwJ,YAAW,WAAQ0C,SAASzP,SAASC,KAAOS,EAAW2C,EAAIG,SAAW,GACtE,SA5BR,uBAgCE,WACE,OAAOqJ,GAAMrB,QAAQE,mBAjCzB,GAAuC,SAAlB,GAAS,gBAN7B,gBAAQ,CACPoE,WAAY,CACV0b,cAAA,GACA5H,eAAA,OAGiB,c,UCVrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCPT,SAAU,GAAOnkB,EAAMC,GAC3B,IAAME,EAAyB,eAAkB,eAC3C6nB,EAA2B,eAAkB,iBAEnD,OAAQ,iBAAc,eAAaA,EAA0B,CAC3DI,oBAAoB,EACpBC,YAAY,GACX,CACD,eAAgB,gBAAS,iBAAM,CAC7B,eAAaloB,OAEfwT,EAAG,ICbA,IAAM,GAAb,WAEE,aAE4B,IADnB3Q,EACmB,uDADF,EACjBC,EAAmB,uDAAD,EAAC,uBADnB,KAAAD,SACA,KAAAC,UAJX,iDAOS,WACL,OAAOC,KAAKC,OAAM,IAAIC,MAAOC,UAAY,MAASC,KAAKL,YAR3D,KCGa,GAAb,WAOE,+CALO,KAAA+oB,cAAgB,IACf,KAAAC,UAAY,EACZ,KAAAxoB,QAAmB,IAAI,GA+BxB,KAAAyoB,WAAyB,WAC1BhpB,KAAKC,OAAM,IAAIC,MAAOC,UAAY,KAAQ,EAAKI,QAAQT,QAAU,IACnE,EAAKmpB,iBACL,EAAK1oB,QAAQT,OAASE,KAAKC,OAAM,IAAIC,MAAOC,UAAY,KACxD,EAAKI,QAAQR,QAAUC,KAAKC,OAAM,IAAIC,MAAOC,UAAY,KAAQvC,IA9BnEwC,KAAKG,QAAU,IAAI,GACjBP,KAAKC,OAAM,IAAIC,MAAOC,UAAY,KAClCH,KAAKC,OAAM,IAAIC,MAAOC,UAAY,KAAQvC,GAE5CwC,KAAK8oB,gBAAkB,KACvB9oB,KAAK+oB,QAdT,0CAiBS,SAAIrF,GAAc,WACvB1jB,KAAK8oB,gBAAkBpF,EACvB1jB,KAAK2oB,SAAWK,aAAY,WAC1B,EAAKH,mBACJ7oB,KAAK0oB,iBArBZ,kBAwBS,WACLO,cAAcjpB,KAAK2oB,UACnB/sB,OAAOkV,oBAAoB,YAAa9Q,KAAK4oB,YAAY,GACzDhtB,OAAOkV,oBAAoB,YAAa9Q,KAAK4oB,YAAY,GACzDhtB,OAAOkV,oBAAoB,WAAY9Q,KAAK4oB,YAAY,GACxDhtB,OAAOkV,oBAAoB,iBAAkB9Q,KAAK4oB,YAAY,GAC9DhtB,OAAOkV,oBAAoB,aAAc9Q,KAAK4oB,YAAY,GAC1DhtB,OAAOkV,oBAAoB,YAAa9Q,KAAK4oB,YAAY,GACzDhtB,OAAOkV,oBAAoB,gBAAiB9Q,KAAK4oB,YAAY,KAhCjE,4BA2CU,WACF5oB,KAAKG,QAAQ+oB,eACflpB,KAAK8oB,kBACL9oB,KAAKmpB,UA9CX,mBAkDU,WACNvtB,OAAO+U,iBAAiB,YAAa3Q,KAAK4oB,YAAY,GACtDhtB,OAAO+U,iBAAiB,YAAa3Q,KAAK4oB,YAAY,GACtDhtB,OAAO+U,iBAAiB,WAAY3Q,KAAK4oB,YAAY,GACrDhtB,OAAO+U,iBAAiB,iBAAkB3Q,KAAK4oB,YAAY,GAC3DhtB,OAAO+U,iBAAiB,aAAc3Q,KAAK4oB,YAAY,GACvDhtB,OAAO+U,iBAAiB,YAAa3Q,KAAK4oB,YAAY,GACtDhtB,OAAO+U,iBAAiB,gBAAiB3Q,KAAK4oB,YAAY,OAzD9D,KCSA,QAAIQ,cAAc,CAAC,qBAOnB,IAAqB,GAArB,yG,0BAQU,EAAAC,eAAqC,IAAI,GARnD,yDAUE,SAAiBxc,EAA6B8T,EAA+B2I,GAC3E,IAAMC,EAAc1c,EAAG2c,QAAQC,MAAK,SAACC,GAAD,OAAYA,EAAOC,KAAKC,gBACtDvF,EAAeva,GAAMrB,QAAQE,eAChCvI,uBAAyBhD,EAAyBknB,mBAGrDiF,IAAOlF,EAAKiF,EAAK,CAAEhvB,KAAMuD,EAAOU,KAAKF,UAAU9C,EAAG8G,MAAO,CAAEkmB,SAAU1b,EAAGD,YAAgB0c,MAhB5F,qBAoBE,WACE5c,SAAS1N,MAAQ,4BAEjBgB,KAAKqpB,eAAeQ,IAAI7pB,KAAK8pB,8BAvBjC,2BA0BE,WACE9pB,KAAKqpB,eAAeF,SA3BxB,wCA8BS,WACLnpB,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKD,WAAW/C,MA/BrD,uBAkCE,WACE,OAAQyE,KAAK2M,OAAOrS,MAClB,KAAKuD,EAAOU,KAAKN,KAAK1C,EACpB,OAAO,EACT,QACE,OAAO,OAvCf,GAA0C,SAGxC,gBADC,gBAAO,CAAEolB,KAAM,aAAcrQ,QAAS,IAAI,M,kCAFxB,GAAY,gBALhC,gBAAQ,CACPvD,WAAY,CACV0b,cAAA,OAGiB,c,UCZrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCPT,GAAe,SAAAltB,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,cACtB,GAAa,CAAEA,MAAO,aACtB,GAAa,CAAEA,MAAO,kBACtB,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAClG,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAClG,GAAa,CAAC,YACd,GAAa,CAAC,YACd,GAA2B,IAAa,kBAAmB,eAAoB,OAAQ,KAAM,CACpF,eAAoB,IAAK,CAAEA,MAAO,yBAC7C,MACE,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAClG,GAAc,CAAC,YACf,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAAc,CAClB9N,IAAK,EACLkU,MAAO,CAAC,mBAAmB,OAAO,MAAQ,OAAO,SAAW,SAExD,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAEnG,SAAU,GAAO7S,EAAMC,GAC3B,IAAMmS,EAA4B,eAAkB,kBAC9Cib,EAA2B,eAAkB,iBAC7CC,EAA8B,eAAkB,oBAChDC,EAA6B,eAAkB,mBAC/CC,EAA8B,eAAkB,oBAChDC,EAAmC,eAAkB,yBAE3D,OAAQ,iBAAc,eAAoB,UAAW,GAAY,CAC9DztB,EAAKyS,eACD,iBAAc,eAAaL,EAA2B,CAAEzT,IAAK,KAC9D,eAAoB,IAAI,GAC5B,eAAa0uB,EAA0B,CACrCK,SAAU1tB,EAAK0tB,SACfC,aAAa,GACZ,KAAM,EAAG,CAAC,aACb,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,GAAY,eAAiB3tB,EAAK6K,aAAa6J,aAAc,GAC7D,YAA1B1U,EAAK4tB,kBACD,iBAAc,eAAaN,EAA6B,CACvD3uB,IAAK,EACL4U,SAAUvT,EAAK6K,aACf,oBAAqB5K,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK6K,aAAgBmC,KAC/E,KAAM,EAAG,CAAC,cACb,eAAoB,IAAI,GACD,WAA1BhN,EAAK4tB,kBACD,iBAAc,eAAaL,EAA4B,CACtD5uB,IAAK,EACL4U,SAAUvT,EAAK6K,aACf,oBAAqB5K,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK6K,aAAgBmC,KAC/E,KAAM,EAAG,CAAC,cACb,eAAoB,IAAI,GACD,YAA1BhN,EAAK4tB,kBACD,iBAAc,eAAaJ,EAA6B,CACvD7uB,IAAK,EACL4U,SAAUvT,EAAK6K,aACf,oBAAqB5K,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK6K,aAAgBmC,IAChF6gB,YAAa7tB,EAAK6tB,YAClB,uBAAwB5tB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK6tB,YAAe7gB,KACjF,KAAM,EAAG,CAAC,WAAY,iBACzB,eAAoB,IAAI,GACD,iBAA1BhN,EAAK4tB,kBACD,iBAAc,eAAaH,EAAkC,CAC5D9uB,IAAK,EACLwJ,gBAAiBnI,EAAKmI,gBACtB,2BAA4BlI,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAKmI,gBAAmB6E,IAC1F8gB,yCAA0C9tB,EAAK8tB,yCAC/C,oDAAqD7tB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK8tB,yCAA4C9gB,IAC5I+gB,kCAAmC/tB,EAAK+tB,kCACxC,6CAA8C9tB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK+tB,kCAAqC/gB,KAC7H,KAAM,EAAG,CAAC,kBAAmB,2CAA4C,uCAC5E,eAAoB,IAAI,GAC5B,GACA,GACChN,EAAKguB,mBACD,iBAAc,eAAoB,SAAU,CAC3CrvB,IAAK,EACL8N,MAAO,6BACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKiuB,eACnDhb,SAAUjT,EAAKyS,eACd,eAAiBzS,EAAKkuB,gBAAiB,EAAG,KAC7C,eAAoB,IAAI,GAC1BluB,EAAK8tB,yCAUH,eAAoB,IAAI,IATvB,iBAAc,eAAoB,SAAU,CAC3CnvB,IAAK,EACL8N,MAAO,kBACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKmuB,kBACnDlb,UAAWjT,EAAKouB,WAAapuB,EAAKyS,eACjC,CACD,eAAiB,eAAiBzS,EAAKquB,gBAAkB,IAAK,GAC9D,IACC,EAAG,KAEV,GACCruB,EAAKsuB,eACD,iBAAc,eAAoB,SAAU,CAC3C3vB,IAAK,EACL8N,MAAO,oBACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKuuB,gBACnDtb,SAAUjT,EAAKyS,eACd,gBAAiB,EAAG,KACvB,eAAoB,IAAI,GAC5B,GACCzS,EAAKqf,YACD,iBAAc,eAAoB,MAAO,GAAa,CACrD,eAAiB,gBAAkB,eAAiBrf,EAAK6pB,YAAc,IAAK,GAC5E,GACA,eAAiB,kBAAoB,eAAiB7pB,EAAK6K,cAAe,MAE5E,eAAoB,IAAI,O,cC7G5B,GAAe,SAAAhM,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,kBACtB,GAAa,CAAEA,MAAO,aACtB,GAAa,CAAEA,MAAO,YACtB,GAAa,CAAEA,MAAO,8BACtB,GAAa,CACjB9N,IAAK,EACL8N,MAAO,WAEH,GAAa,CAAEA,MAAO,gBACtB,GAAa,CAAC,WACd,GAAa,CACjB9N,IAAK,EACL8N,MAAO,iBAEH,GAAa,CACjB9N,IAAK,EACL8N,MAAO,WAEH,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,KAAM,MAAO,MAEpG,SAAU,GAAOzM,EAAMC,GAC3B,IAAMsS,EAAyB,eAAkB,eAC3CC,EAAwB,eAAkB,cAEhD,OAAQ,iBAAc,eAAoB,UAAW,GAAY,CAC/D,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,GAAY,CACpCxS,EAAK0tB,SAAS1xB,OAAS,GACnB,iBAAc,eAAoB,MAAO,GAAY,CACpD,eAAoB,OAAQ,GAAY,CACrCgE,EAAKwuB,sBAAwB,GAAKxuB,EAAKwuB,sBAAwBxuB,EAAK0tB,SAAS1xB,OAAS,GAClF,iBAAc,eAAoB,IAAK,CACtC2C,IAAK,EACL8N,MAAO,oBACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKyuB,oBAErD,eAAoB,IAAI,KAE9B,eAAoB,KAAM,KAAM,EAC7B,gBAAW,GAAO,eAAoB,OAAW,KAAM,eAAYzuB,EAAK0tB,UAAU,SAACtwB,GAClF,OAAQ,iBAAc,eAAoB,KAAM,CAC9C2P,QAAS,gBAAe,SAAAC,GAAWhN,EAAK0uB,SAAStxB,KAAM,CAAC,UAAU,SAClEqP,MAAO,eAAgBrP,EAAEqH,SACxB,eAAiBrH,EAAEQ,MAAO,GAAI,OAC/B,WAGR,eAAoB,IAAI,GACF,IAAzBoC,EAAK0tB,SAAS1xB,QACV,iBAAc,eAAoB,MAAO,GAAY,eAAiBgE,EAAK2uB,YAAa,IACzF,eAAoB,IAAI,GAC3B3uB,EAAK2tB,aACD,iBAAc,eAAoB,MAAO,GAAY,CACpD,eAAoB,SAAU,CAC5BlhB,MAAO,sBACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKspB,aAClD,QACH,eAAoB,SAAU,CAC5B7c,MAAO,sBACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAK2S,eAClD,cACH,eAAoB,SAAU,CAC5BlG,MAAO,sBACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAK4S,gBAAkB5S,EAAK4S,kBACzE,WAEL,eAAoB,IAAI,SAIjC5S,EAAK4S,gBACD,iBAAc,eAAaJ,EAAuB,CACjD7T,IAAK,EACL6U,QAASvT,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAK4S,gBAAiB,KACnE,CACDa,OAAQ,gBAAS,iBAAM,CACrB,OAEFvO,KAAM,gBAAS,iBAAM,CACnB,eAAaqN,EAAwB,CACnCmB,gBAAiB1T,EAAK0T,gBACtB,2BAA4BzT,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK0T,gBAAmB1G,KACzF,KAAM,EAAG,CAAC,wBAEf2G,EAAG,KAEL,eAAoB,IAAI,K,IC1FpBib,G,WAAZ,SAAYA,GACV,uBACA,wBACA,iBACA,wBAJF,CAAYA,QAAe,KAMpB,IAAM,GACX,aAIwD,IAH/ChxB,EAG+C,uDAHhC,GACfixB,EAE+C,uDAFxB,GACvBC,IAC+C,yDAA/CrqB,EAA+C,uDAAvBmqB,GAAgBG,QAAO,uBAH/C,KAAAnxB,OACA,KAAAixB,eACA,KAAAC,UACA,KAAArqB,UAiBEuqB,GAAoB,CAC/BC,QAAS,UACTC,OAAQ,SACRC,QAAS,UACTC,WAAY,UACZC,aAAc,eACdxE,OAAQ,+BACR7W,IAAK,6BAcM,GAAuB,CAClCib,QAAS,UACTC,OAAQ,SACRC,QAAS,UACTC,WAAY,aACZC,aAAc,eACdxE,OAAQ,SACR7W,IAAK,OCrCc,GAArB,yG,0BACU,EAAApB,gBAAiB,EAD3B,8CAME,WACE,OAAOtP,KAAK2M,OAAOtK,MAAMsc,MAP7B,2BAUE,WACE,IAAMqE,EAAmBhjB,KAAK2M,OAAOtK,MAAMsc,IACrCzM,EAAQlS,KAAK2M,OAAOtK,MAAMuQ,KAC1BoZ,EAAahsB,KAAK2M,OAAOrS,KAC3B2oB,EAAwB,CAAC,IAE7B,GAAI+I,IAAenuB,EAAOU,KAAKC,MAAMjD,EACnC,OAAQynB,GACN,IAAK,aACHC,EAAmB,GAAgBgJ,MAAMJ,QACzC,MACF,IAAK,eACH5I,EAAmB,GAAgBgJ,MAAMF,aACzC,MAIN,GAAIC,IAAenuB,EAAOU,KAAKE,aAAalD,EAC1C,OAAQ2W,GACN,IAAK,IACH,OAAQ8Q,GACN,IAAK,UACHC,EAAmB,GAAgBiJ,SAASP,QAC5C,MACF,IAAK,eACH1I,EAAmB,GAAgBiJ,SAASH,aAC5C,MAEJ,MACF,IAAK,IACH,OAAQ/I,GACN,IAAK,UACHC,EAAmB,GAAgBkJ,aAAaR,QAChD,MACF,IAAK,eACH1I,EAAmB,GAAgBkJ,aAAaJ,aAChD,MAEJ,MAIN,GAAc,MAAV7Z,GAAiB8Z,IAAenuB,EAAOU,KAAKE,aAAalD,EAC3D,OAAQynB,GACN,IAAK,UACHC,EAAmB,GAAgBmJ,KAAKT,QACxC,MACF,IAAK,SACH1I,EAAmB,GAAgBmJ,KAAKR,OACxC,MACF,IAAK,UACH3I,EAAmB,GAAgBmJ,KAAKP,QACxC,MACF,IAAK,eACH5I,EAAmB,GAAgBmJ,KAAKL,aACxC,WAEC,GAAc,MAAV7Z,GAAiB8Z,IAAenuB,EAAOU,KAAKE,aAAalD,EAClE,OAAQynB,GACN,IAAK,UACHC,EAAmB,GAAgBoJ,SAASV,QAC5C,MACF,IAAK,SACH1I,EAAmB,GAAgBoJ,SAAST,OAC5C,MACF,IAAK,UACH3I,EAAmB,GAAgBoJ,SAASR,QAC5C,MACF,IAAK,eACH5I,EAAmB,GAAgBoJ,SAASN,aAC5C,WAEC,GAAc,MAAV7Z,GAAiB8Z,IAAenuB,EAAOU,KAAKE,aAAalD,EAClE,OAAQynB,GACN,IAAK,UACHC,EAAmB,GAAgBqJ,MAAMX,QACzC,MACF,IAAK,SACH1I,EAAmB,GAAgBqJ,MAAMV,OACzC,MACF,IAAK,UACH3I,EAAmB,GAAgBqJ,MAAMT,QACzC,MACF,IAAK,eACH5I,EAAmB,GAAgBqJ,MAAMP,aACzC,MAIN,OAAO9I,IAnGX,sBAsGU,SAASnpB,GACf,IAAMkpB,EAAmBhjB,KAAK2M,OAAOtK,MAAMsc,IAC3C,GAAI7kB,EAAEqH,SAAWmqB,GAAgBiB,MAAqB,iBAAbvJ,EAA6B,CACpE,IAAMwJ,EAAe5pB,KAAKC,UAAU7C,KAAK2M,OAAOtK,OAC1CoqB,EAAW7pB,KAAKia,MAAM2P,GAC5BC,EAAS9N,IAAM7kB,EAAEyxB,aACjBvrB,KAAKye,QAAQzlB,KAAK,CAAEqJ,MAAOoqB,OA5GjC,0BAgHU,WACN,IAAMpV,EAAQrX,KAAKkrB,sBACf7T,EAAQ,GAEVrX,KAAKorB,SAASprB,KAAKoqB,SAAS/S,EAAQ,MApH1C,iCAwHU,WACN,IAAIA,GAAS,EAMb,OALArX,KAAKoqB,SAASzP,QAAO,SAAC+R,GAAD,OAAOA,EAAElB,WAASmB,SAAQ,SAAChL,EAAGnpB,GAC7CmpB,EAAExgB,SAAWmqB,GAAgBsB,UAC/BvV,EAAQ7e,MAGL6e,IA/HX,uBAkIU,WACNzb,OAAOinB,KAAK,GAAW,GAAGC,eAAgB,WAnI9C,qBAsIU,WACNlnB,OAAOinB,KAAK,GAAW,GAAGoD,QAAS,aAvIvC,GAA2C,SAAtB,GAAa,gBAXjC,gBAAQ,CACPza,MAAO,CACL4e,SAAUyC,MACVxB,WAAYznB,OACZymB,YAAayC,SAEf/f,WAAY,CACVqW,WAAA,GACAI,YAAA,OAGiB,c,UCZrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCPT,GAAe,SAAAjoB,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,2BACtB,GAAa,CAAEA,MAAO,eACtB,GAA2B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,WAAa,MAAO,MACnH,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAClG,GAAa,CAAC,aACd,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAElG,SAAU,GAAOzM,EAAMC,GAC3B,IAAMowB,EAA+B,eAAkB,qBAEvD,OAAQ,iBAAc,eAAoB,UAAW,GAAY,CAC/D,eAAoB,MAAO,GAAY,eAAiBrwB,EAAKswB,YAAa,GAC1E,GACA,GACA,eAAoB,MAAO,CACzB7jB,MAAO,eAAgB,CAAC,mBAAoB,CAAE,WAAazM,EAAK8tB,4CAChE1I,UAAWplB,EAAKuwB,UACf,KAAM,GAAI,IACb,GACCvwB,EAAKwwB,WAAaxwB,EAAKwwB,UAAUx0B,OAAS,GACtC,iBAAc,eAAaq0B,EAA8B,CACxD1xB,IAAK,EACL6xB,UAAWxwB,EAAKwwB,UAChB,qBAAsBvwB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAKwwB,UAAaxjB,KAC7E,KAAM,EAAG,CAAC,eACb,eAAoB,IAAI,K,iBC1B1B,GAAe,SAAAnO,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,sBACtB,GAAa,CAAE9N,IAAK,GACpB,GAAa,CAAEA,IAAK,GACpB,GAAa,CAAE8N,MAAO,QACtB,GAAa,CAAE9N,IAAK,GACpB,GAAa,CAAE8N,MAAO,QACtB,GAAa,CAAE9N,IAAK,GACpB,GAAa,CAAE8N,MAAO,QACtB,GAAa,CAAE9N,IAAK,GACpB,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,CAAE,aAAc,eAAiB,CAC9G,eAAoB,OAAQ,KAAM,SAC7C,MACE,GAAc,CAAE,aAAc,WAC9B,GAAc,CAAE,aAAc,QAC9B,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,CAAE,aAAc,WAAa,wBAAyB,MAC5I,GAAc,CAAE,aAAc,gBAC9B,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,CAAE,aAAc,UAAY,CACzG,eAAoB,OAAQ,KAAM,CAChC,eAAoB,IAAK,CAAE8N,MAAO,wBAClC,eAAiB,aAE9B,MACE,GAAc,CAAEA,MAAO,cACvB,GAAc,CAAC,WACf,GAAc,CAAC,WACf,GAAc,CAClB9N,IAAK,EACL8N,MAAO,QAEH,GAAc,CAAC,WACf,GAAc,CAAE,aAAc,eAC9B,GAAc,CAAE,aAAc,WAC9B,GAAc,CAAE9N,IAAK,GACrB,GAAc,CAAE,aAAc,QAC9B,GAAc,CAAEA,IAAK,GACrB,GAAc,CAClBA,IAAK,EACL,aAAc,UACd8N,MAAO,WAEH,GAAc,CAAC,SACf,GAAc,CAClB9N,IAAK,EACL,aAAc,gBACd8N,MAAO,WAEH,GAAc,CAAC,SACf,GAAc,CAClB,aAAc,eACdA,MAAO,aAEH,GAAc,CAAE9N,IAAK,GACrB,GAAc,CAAE,aAAc,UAC9B,GAAc,CAAEA,IAAK,GACrB,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAE8N,MAAO,uBAAyB,MAAO,MAC9H,GAA2B,eAAiB,SAC5C,GAAc,CAClB,GACA,IAEI,GAAc,CAAEA,MAAO,cACvB,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAEnG,SAAU,GAAOzM,EAAMC,GAC3B,IAAMmS,EAA4B,eAAkB,kBAC9C2H,EAA4B,eAAkB,kBAEpD,OAAQ,iBAAc,eAAoB,UAAW,GAAY,CAC9D/Z,EAAKyS,eACD,iBAAc,eAAaL,EAA2B,CAAEzT,IAAK,KAC9D,eAAoB,IAAI,GAC3BqB,EAAKwa,iBAAmBxa,EAAKwa,gBAAgBxe,OAAS,GAClD,iBAAc,eAAoB,QAAS,GAAY,CACN,IAA/CgE,EAAKwa,gBAAgB,GAAGgC,oBACpB,iBAAc,eAAoB,QAAS,GAAY,CACtD,eAAoB,KAAM,KAAM,EAC7B,gBAAW,GAAO,eAAoB,OAAW,KAAM,eAAYxc,EAAKywB,wBAAwB,SAAC/V,EAAGC,GACnG,OAAQ,iBAAc,eAAoB,KAAM,CAC9CC,MAAO,MACPnO,MAAO,eAAgB,CAAEiO,EAAEI,SAAW,WAAa,MAClD,CACD,eAAoB,MAAO,KAAM,CAC/B,eAAoB,OAAQ,GAAY,eAAiBJ,EAAEK,MAAO,MAEnE,MACD,WAGR,eAAoB,IAAI,GACoB,IAA/C/a,EAAKwa,gBAAgB,GAAGgC,oBACpB,iBAAc,eAAoB,QAAS,GAAY,CACtD,eAAoB,KAAM,KAAM,EAC7B,gBAAW,GAAO,eAAoB,OAAW,KAAM,eAAYxc,EAAK0wB,4BAA4B,SAAChW,EAAGC,GACvG,OAAQ,iBAAc,eAAoB,KAAM,CAC9CC,MAAO,MACPnO,MAAO,eAAgB,CAAEiO,EAAEI,SAAW,WAAa,MAClD,CACD,eAAoB,MAAO,KAAM,CAC/B,eAAoB,OAAQ,GAAY,eAAiBJ,EAAEK,MAAO,MAEnE,MACD,WAGR,eAAoB,IAAI,GACoB,IAA/C/a,EAAKwa,gBAAgB,GAAGgC,oBACpB,iBAAc,eAAoB,QAAS,GAAY,CACtD,eAAoB,KAAM,KAAM,EAC7B,gBAAW,GAAO,eAAoB,OAAW,KAAM,eAAYxc,EAAK2wB,yBAAyB,SAACjW,EAAGC,GACpG,OAAQ,iBAAc,eAAoB,KAAM,CAC9CC,MAAO,MACPnO,MAAO,eAAgB,CAAEiO,EAAEI,SAAW,WAAa,MAClD,CACD,eAAoB,MAAO,KAAM,CAC/B,eAAoB,OAAQ,GAAY,eAAiBJ,EAAEK,MAAO,MAEnE,MACD,WAGR,eAAoB,IAAI,GAC5B,eAAoB,QAAS,KAAM,EAChC,gBAAW,GAAO,eAAoB,OAAW,KAAM,eAAY/a,EAAKwa,iBAAiB,SAACE,EAAGtH,GAC5F,OAAQ,iBAAc,eAAoB,OAAW,KAAM,EACxD,gBAAW,GAAO,eAAoB,OAAW,KAAM,eAAYsH,EAAEQ,wBAAwB,SAAClc,EAAGmc,GAChG,OAAQ,iBAAc,eAAoB,OAAW,KAAM,CACxDT,EAAEQ,uBAAuBlf,OAAS,GAAe,IAAVmf,GACnC,iBAAc,eAAoB,KAAM,GAAY,CACnD,GACA,eAAoB,KAAM,GAAa,eAAiBnb,EAAKob,cAAcV,EAAEW,YAAa,GAC1F,eAAoB,KAAM,GAAa,eAAiBX,EAAExE,MAAO,GACjE,GACA,eAAoB,KAAM,GAAa,eAAiBwE,EAAEY,aAAc,GACxE,GACA,eAAoB,KAAM,GAAa,CACvB,gBAAbZ,EAAEjW,QACE,iBAAc,eAAoB,SAAU,CAC3C9F,IAAK,EACL8N,MAAO,2BACPM,QAAS,SAAAC,GAAM,OAAKhN,EAAKub,eAAeb,EAAEvS,mBACzC,SAAU,EAAG,KAChB,eAAoB,IAAI,GACd,gBAAbuS,EAAEjW,QACE,iBAAc,eAAoB,SAAU,CAC3C9F,IAAK,EACL8N,MAAO,2BACPM,QAAS,SAAAC,GAAM,OAAKhN,EAAKwb,eAAed,KACvC,SAAU,EAAG,KAChB,eAAoB,IAAI,GACd,gBAAbA,EAAEjW,QACE,iBAAc,eAAoB,OAAQ,GAAa,CACtD,eAAasV,EAA2B,CACtC0B,YAAazb,EAAKwa,gBAAgBpH,GAClC,uBAAwB,SAAApG,GAAM,OAAMhN,EAAKwa,gBAAgBpH,GAAQpG,GACjE0O,UAAW1b,EAAK0b,UAChB,qBAAsBzb,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK0b,UAAa1O,IAC9E2O,cAAe3b,EAAK2b,cACpB,yBAA0B1b,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK2b,cAAiB3O,IACtF4O,SAAU5b,EAAK6b,UACf,oBAAqB5b,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK6b,UAAa7O,IAC7E8O,WAAY9b,EAAK+b,UAChB,KAAM,EAAG,CAAC,cAAe,uBAAwB,YAAa,gBAAiB,WAAY,kBAEhG,eAAoB,IAAI,KAE9B,eAAoB,KAAM,KAAM,CAC9B,eAAoB,MAAO,CACzBtP,MAAO,iBACPG,IAAK,SAAW8N,EAAElS,cAClBlG,MAAO,cACPyK,QAAS,SAAAC,GAAM,OAAKhN,EAAKkc,iBAAiB,SAAWxB,EAAElS,cAAekS,EAAElS,iBACvE,KAAM,EAAG,SAGhB,eAAoB,IAAI,GAC5B,eAAoB,KAAM,CACxBoE,IAAK,MAAQ5N,EAAEmd,iBACf1P,MAAO,eAAgBiO,EAAEQ,uBAAuBlf,OAAS,EAAI0e,EAAE0B,YAAc,KAC5E,CACD,eAAoB,KAAM,GAAa,CACrC,eAAoB,OAAQ,KAAM,eAAiBpd,EAAEmd,kBAAmB,KAE1E,eAAoB,KAAM,GAAa,CACD,GAAnCzB,EAAEQ,uBAAuBlf,QACrB,iBAAc,eAAoB,OAAQ,GAAa,eAAiBgE,EAAKob,cAAcV,EAAEW,YAAa,IAC3G,eAAoB,IAAI,KAE9B,eAAoB,KAAM,GAAa,CACD,GAAnCX,EAAEQ,uBAAuBlf,QACrB,iBAAc,eAAoB,OAAQ,GAAa,eAAiB0e,EAAExE,MAAO,IAClF,eAAoB,IAAI,KAEJ,IAAzBwE,EAAE8B,oBACE,iBAAc,eAAoB,KAAM,GAAa,CACpD,eAAoB,OAAQ,CAC1Bla,MAAOtD,EAAEqd,SACR,eAAiBrd,EAAEqd,SAAU,EAAG,OAErC,eAAoB,IAAI,GACF,IAAzB3B,EAAE8B,oBACE,iBAAc,eAAoB,KAAM,GAAa,CACpD,eAAoB,OAAQ,CAC1Bla,MAAOtD,EAAEqjB,cACR,eAAiBrjB,EAAEqjB,cAAe,EAAG,OAE1C,eAAoB,IAAI,GAC5B,eAAoB,KAAM,GAAa,CACpC3H,EAAEQ,uBAAuBlf,OAAS,GAC9B,iBAAc,eAAoB,OAAQ,GAAa,eAAiB0e,EAAEY,aAAc,IACzF,eAAoB,IAAI,KAE9B,eAAoB,KAAM,GAAa,CACD,GAAnCZ,EAAEQ,uBAAuBlf,QACrB,iBAAc,eAAoB,OAAQ,GAAa,KACxD,eAAoB,IAAI,KAE9B,eAAoB,KAAM,GAAa,CACrC,eAAa+d,EAA2B,CACtC0B,YAAazb,EAAKwa,gBAAgBpH,GAClC,uBAAwB,SAAApG,GAAM,OAAMhN,EAAKwa,gBAAgBpH,GAAQpG,GACjE0O,UAAW1b,EAAK0b,UAChB,qBAAsBzb,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK0b,UAAa1O,IAC9E4O,SAAU5b,EAAK2c,UACf,oBAAqB1c,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK2c,UAAa3P,IAC7E2O,cAAe3b,EAAK2b,cACpB,yBAA0B1b,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK2b,cAAiB3O,IACtF4P,eAAgB5c,EAAKwa,gBAAgBpH,GAAK8H,uBAAuBC,GACjE,0BAA2B,SAAAnO,GAAM,OAAMhN,EAAKwa,gBAAgBpH,GAAK8H,uBAAuBC,GAAUnO,GAClG8O,WAAY9b,EAAK+b,UAChB,KAAM,EAAG,CAAC,cAAe,uBAAwB,YAAa,WAAY,gBAAiB,iBAAkB,0BAA2B,iBAE7I,IACC,IACF,OACD,OACH,OACD,WAGR,eAAoB,IAAI,KCrNhC,IAAqB,GAArB,yG,0BAGU,EAAAvB,gBAAyB,GAKzB,EAAArL,GAAK,IAAI,GAET,EAAAgH,MAAQ,IAAI,GAEZ,EAAA1D,eAAgB,EAMhB,EAAA4M,WAAape,EAASiU,QAAQ,cAAgB,EAC9C,EAAAoK,YAAiC,GAEjC,EAAAnM,aAA2B,GAE3B,EAAAoM,mBAAqB,EACrB,EAAAzC,iBAAkB,EAClB,EAAAG,kBAAmB,EAEnB,EAAAuC,eAAgB,EAChB,EAAA3Z,OAAS,GACT,EAAA4Z,KAAO,EACP,EAAAC,KAAO,EACP,EAAAzF,gBAAkB,EAClB,EAAA0F,WAAa,EAEb,EAAA1E,WAAa,OACb,EAAAD,iBAAmB,EAEnB,EAAAU,UAAwB,GACxB,EAAAC,cAAgB,EAEhB,EAAAgB,UAAY,CAAE5B,KAAM,WAAY4C,UAAU,GAC1C,EAAA9B,UAAY,CAAEd,KAAM,WAAY4C,UAAU,GAE1C,EAAA8S,uBAAyB,CAC/B,CAAE1V,KAAM,cAAe1c,MAAO,aAAcyc,UAAU,GACtD,CAAEC,KAAM,UAAW1c,MAAO,UAAWyc,UAAU,GAC/C,CAAEC,KAAM,OAAQ1c,MAAO,OAAQyc,UAAU,GACzC,CAAEC,KAAM,UAAW1c,MAAO,UAAWyc,UAAU,GAC/C,CAAEC,KAAM,eAAgB1c,MAAO,cAAeyc,UAAU,GACxD,CAAEC,KAAM,SAAU1c,MAAO,SAAUyc,UAAU,GAC7C,CAAEC,KAAM,SAAU1c,MAAO,GAAIyc,UAAU,GACvC,CAAEC,KAAM,GAAI1c,MAAO,GAAIyc,UAAU,IAG3B,EAAA4V,2BAA6B,CACnC,CAAE3V,KAAM,cAAe1c,MAAO,aAAcyc,UAAU,GACtD,CAAEC,KAAM,UAAW1c,MAAO,UAAWyc,UAAU,GAC/C,CAAEC,KAAM,OAAQ1c,MAAO,OAAQyc,UAAU,GACzC,CAAEC,KAAM,gBAAiB1c,MAAO,UAAWyc,UAAU,GACrD,CAAEC,KAAM,eAAgB1c,MAAO,cAAeyc,UAAU,GACxD,CAAEC,KAAM,SAAU1c,MAAO,SAAUyc,UAAU,GAC7C,CAAEC,KAAM,SAAU1c,MAAO,GAAIyc,UAAU,GACvC,CAAEC,KAAM,GAAI1c,MAAO,GAAIyc,UAAU,IAG3B,EAAA6V,wBAA0B,CAChC,CAAE5V,KAAM,cAAe1c,MAAO,aAAcyc,UAAU,GACtD,CAAEC,KAAM,UAAW1c,MAAO,UAAWyc,UAAU,GAC/C,CAAEC,KAAM,OAAQ1c,MAAO,OAAQyc,UAAU,GACzC,CAAEC,KAAM,eAAgB1c,MAAO,cAAeyc,UAAU,GACxD,CAAEC,KAAM,SAAU1c,MAAO,SAAUyc,UAAU,GAC7C,CAAEC,KAAM,SAAU1c,MAAO,GAAIyc,UAAU,GACvC,CAAEC,KAAM,GAAI1c,MAAO,GAAIyc,UAAU,IAxErC,gDAcE,WACE,OAAO1N,GAAMrB,QAAQC,qBAfzB,2BA2EU,SAAc6T,GACpB,OAAO,KAAOA,GAASC,OAAO,uBA5ElC,qBA+EE,WACExc,KAAK0c,eACL,IAAK,IAAIlkB,EAAI,EAAGA,EAAIwH,KAAKktB,UAAUx0B,OAAQF,IACzCwH,KAAKkX,gBAAgBle,KAAKgH,KAAKktB,UAAU10B,IAE3C,IAAK,IAAI,EAAI,EAAG,EAAIwH,KAAKkX,gBAAgBxe,OAAQ,IAC/CsH,KAAKkX,gBAAgB,GAAG4B,YAAc9Y,KAAKkX,gBAAgB,GAAGU,uBAAuBlf,OAAS,EAAI,SAAW,SArFnH,0BAyFU,WAAY,IAMX,EANW,OACZ40B,EAAgBttB,KAAK2M,OAAOtK,MAAMuQ,KAClC+J,EAAM/gB,OAAOkM,eAAe8U,QAAQ,OAAS,IACnD5c,KAAKqY,cAAgB5a,SAAS6vB,GAClB,KAAR3Q,GACF3c,KAAKoY,UAAYxV,KAAKia,MAAMF,GAE5B,UAAA3c,KAAK8L,WAAWrF,eAAhB,SAAyBnD,2BACtBD,MAAK,SAACyZ,GACL,EAAK1E,UAAY0E,EAAI5kB,KAAKA,KAC1B0D,OAAOkM,eAAeC,QAAQ,KAAMnF,KAAKC,UAAU,EAAKuV,eAEzD2E,OAAM,SAAAhS,GACL,EAAKc,GAAGb,eAAe,6BAA+BpI,KAAKC,UAAUkI,IACrE,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,6BAA+Bpa,KAAKC,UAAUkI,SAvGtG,8BA4GU,SAAiBuS,EAAkBC,GACzC,IAAMC,EAAQxd,KAAKiK,MAAMqT,GAEF,uBAAnBE,EAAMC,WACRD,EAAMC,UAAY,iBAClBzd,KAAK0d,UAAUH,GAAK,KAEpBC,EAAMC,UAAY,sBAClBzd,KAAK0d,UAAUH,GAAK,MApH1B,uBAwHU,SAAUA,EAAaI,GAE7B,IADA,IAAMzlB,EAAY8H,KAAKkX,gBACd1e,EAAI,EAAGA,EAAIN,EAAKQ,OAAQF,IAC3BN,EAAKM,GAAG0M,eAAiBqY,IAC3BrlB,EAAKM,GAAGsgB,YAAc6E,EAAO,SAAW,QAK5C,OADA3d,KAAKkX,gBAAkBhf,EAChBA,IAjIX,+EAoIU,WAAe0lB,GAAf,kGACN5d,KAAKmP,eAAgB,EACjByO,EAAO1D,UACLhI,EAAQ,GACR0L,EAAO1D,SAAStI,QAAQ,QAAU,IACpCM,EAAQ,mBAEN0L,EAAO1D,SAAStI,QAAQ,SAAW,IACrCM,EAAQ,2EAEV,UAAAlS,KAAK8L,WAAWjF,mBAAhB,SAA6B9B,8BAA8B6Y,EAAO1hB,IAC/DmH,MAAK,SAAAyZ,GACJ,IAAMe,EAAaf,EAAI5kB,KAAKA,KAAK4lB,UAC3BC,EAAOrR,SAASsR,cAAc,KACpCD,EAAK7gB,KAAO6E,IAAIkc,gBAAgB,EAAKC,cAAcL,EAAY3L,IAC/D6L,EAAKI,SAAWP,EAAO1D,SACvB6D,EAAKK,QACLrc,IAAIsc,gBAAgBN,EAAK7gB,MACzB,EAAKiS,eAAgB,KAEtB4N,OAAM,SAAAhS,GACLmC,QAAQC,IAAIpC,GACZ,EAAKoE,eAAgB,EACrB,EAAKtD,GAAGb,eAAe,2BAA6BpI,KAAKC,UAAUkI,IACnE,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,2BAA6Bpa,KAAKC,UAAUkI,QAI9F,UAAA/K,KAAK8L,WAAWjF,mBAAhB,SAA6BxB,2CAA2CuY,EAAO1hB,IAC5EmH,MAAK,SAAAyZ,GACJ,IAAMe,EAAaf,EAAI5kB,KAAKA,KAAK4lB,UAC3BC,EAAOrR,SAASsR,cAAc,KACpCD,EAAK7gB,KAAO6E,IAAIkc,gBAAgB,EAAKC,cAAcL,EAAY,oBAC/DE,EAAKI,SAAWrB,EAAI5kB,KAAKA,KAAKoC,KAC9ByjB,EAAKK,QACLrc,IAAIsc,gBAAgBN,EAAK7gB,MACzB,EAAKiS,eAAgB,KAEtB4N,OAAM,SAAAhS,GACLmC,QAAQC,IAAIpC,GACZ,EAAKoE,eAAgB,EACrB,EAAKtD,GAAGb,eAAe,2BAA6BpI,KAAKC,UAAUkI,IACnE,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,2BAA6Bpa,KAAKC,UAAUkI,OA1C1F,gDApIV,qFAmLU,SAAckH,EAAiBC,GACrC,OAAOlS,KAAK6S,MAAMyL,eAAerM,EAASC,KApL9C,4BAuLU,SAAeqM,GACrBve,KAAKic,mBAAqBsC,EAC1Bve,KAAKwZ,iBAAkB,IAzL3B,sBA4LU,WAAQ,aACdxZ,KAAKwZ,iBAAkB,EACvB,UAAAxZ,KAAK8L,WAAWjF,mBAAhB,SAA6BjC,uCAAuC5E,KAAKic,oBACtE5Y,MAAK,SAAAyZ,GACJ5P,QAAQC,IAAI2P,GACZ,EAAKX,KAAO,EACZ,EAAKC,KAAO,EACZ,EAAKlF,gBAAkB,MAGxB6F,OAAM,SAAAhS,GACL,EAAKoE,eAAgB,EACrB,EAAKjF,UAAU8S,KAAK,gBAAiB,QAAS,+BAAiCpa,KAAKC,UAAUkI,IAC9F,EAAKc,GAAGb,eAAe,6BAA+BpI,KAAKC,UAAUkI,SAzM7E,4BA6MU,SAAe3Q,GACrB4F,KAAKwe,uBAAuBpkB,GAC5B4F,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKJ,UAAU5C,EAAG8G,MAAO,CAAEuQ,KAAM,EAAG8L,IAAKtkB,EAAEyK,gBAAiB8Z,IAAKpD,GAAQC,aA/M9G,oCAmNU,SAAuBphB,GAE7B,IAAMqlB,EAA4B,CAChCK,UAAW,EACXD,IAAK,EACLD,wBAAyB,IAE3B9V,GAAMwV,SAAS,kBAAmBG,KA1NtC,kCA8NU,SAAqBrI,GAC3B,IAAMmW,EAAwBvtB,KAAK6P,aAAa8K,QAAO,SAACvgB,GACtD,OAAOgd,EAAExE,OAASxY,EAAE+W,cAAgBiG,EAAE8B,qBAAuB9e,EAAE8e,sBAEjE,OAAwC,IAAjCqU,EAAsB70B,SAlOjC,uCAqOU,WAAyB,aAC/BsH,KAAKmP,eAAgB,EACrB,UAAAnP,KAAK8L,WAAWnF,mBAAhB,SAA6BrC,4CAC1BjB,MAAK,SAAAyZ,GACJ,EAAKjN,aAAeiN,EAAI5kB,KAAKA,KAC7B,EAAK2X,aAAe,sBAClB,EAAKA,aACL,CAAC,qBAAsB,aACvB,CAAC,MAAO,SAEVjU,OAAOkM,eAAeC,QAAQ,KAAM+U,EAAI5kB,KAAKwoB,WAC7C9kB,OAAOkM,eAAeC,QAAQ,KAAMnF,KAAKC,UAAU,EAAKgN,eACxD,EAAKV,eAAgB,KAEtB4N,OAAM,SAAAhS,GACL,EAAKoE,eAAgB,EACrB,EAAKtD,GAAGb,eAAe,mCAAqCpI,KAAKC,UAAUkI,IAC3E,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,mCAAqCjS,EAAI7J,SAASC,eAtPxG,GAA+C,SAM7C,gBADC,gBAAO,CAAEwf,KAAM,aAAcrQ,QAAS,IAAI,M,kCALxB,GAAiB,gBAXrC,gBAAQ,CACP9E,MAAO,CACL0hB,UAAWL,OAGb9f,WAAY,CACV6T,eAAA,GACAC,eAAA,GACAC,SAAA,OAGiB,c,UCtBrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCWM,GAArB,yG,0BAQU,EAAAjV,GAAK,IAAI,GAET,EAAAgH,MAAQ,IAAI,GAEZ,EAAA1D,eAAgB,EAEhB,EAAA+d,UAAwB,GAExB,EAAAM,gBAAkB,GAUlB,EAAArW,mBAAqB,CAC3B,CAAEM,KAAM,cAAe1c,MAAO,aAAcyc,UAAU,GACtD,CAAEC,KAAM,UAAW1c,MAAO,UAAWyc,UAAU,GAC/C,CAAEC,KAAM,OAAQ1c,MAAO,OAAQyc,UAAU,GACzC,CAAEC,KAAM,UAAW1c,MAAO,UAAWyc,UAAU,GAC/C,CAAEC,KAAM,eAAgB1c,MAAO,cAAeyc,UAAU,GACxD,CAAEC,KAAM,SAAU1c,MAAO,SAAUyc,UAAU,GAC7C,CAAEC,KAAM,SAAU1c,MAAO,GAAIyc,UAAU,GACvC,CAAEC,KAAM,GAAI1c,MAAO,GAAIyc,UAAU,IAlCrC,iDAkBE,WACE,OAAO,GAAgBuU,aAAa,gBAnBxC,oBAsBE,WACE,OAAQ/rB,KAAKwqB,yCAA2CxqB,KAAKyqB,kCAAoC,GAAgBsB,aAAa,cAvBlI,qBAqCE,WACO/rB,KAAKwqB,0CACRxqB,KAAKytB,uBAvCX,gCA2CU,WAAkB,aACxBztB,KAAKmP,eAAgB,EACrB,UAAAnP,KAAK8L,WAAWjF,mBAAhB,SAA6B/B,sDAAsD9E,KAAK6E,iBACrFxB,MAAK,SAAAyZ,GACJ,EAAK3N,eAAgB,EACrB,EAAK+d,UAAUl0B,KAAK8jB,EAAI5kB,KAAKA,SAE9B6kB,OAAM,SAAAhS,GACL,EAAKoE,eAAgB,EACrBjC,QAAQC,IAAIpC,UApDpB,GAAmD,SAMjD,gBADC,gBAAO,CAAE4V,KAAM,aAAcrQ,QAAS,IAAI,M,kCALxB,GAAqB,gBAXzC,gBAAQ,CACP9E,MAAO,CAEL3G,gBAAiByW,OACjBkP,yCAA0CsC,QAC1CrC,kCAAmC7mB,QAErCmJ,WAAY,CACV2gB,kBAAA,OAGiB,c,UCbrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCPT,I,UAAe,SAAAnyB,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,IACzE,GAAa,CAAE4N,MAAO,sBACtB,GAAa,CAAEA,MAAO,eACtB,GAA2B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,WAAa,MAAO,MACnH,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAClG,GAA2B,IAAa,kBAAmB,eAAoB,MAAO,KAAM,gBAAiB,MAC7G,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAClG,GAAa,CAAE9N,IAAK,GACpB,GAA0B,eAAiB,sBAC3C,GAAa,CAAEkU,MAAO,CAAC,cAAc,eACrC,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,KAAM,yBAA0B,MACvH,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,CAAEpG,MAAO,oBAAsB,6EAA8E,MACpM,GAAc,CAClB9N,IAAK,EACL8N,MAAO,kBAEH,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAEA,MAAO,6BAA+B,MAAO,MACpI,GAA2B,eAAiB,qBAC5C,GAAc,CAClB,GACA,IAEI,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,KAAM,+BAAgC,MAC7H,GAAc,CAClB9N,IAAK,EACL8N,MAAO,kBAEH,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAEA,MAAO,6BAA+B,MAAO,MACpI,GAA2B,eAAiB,qBAC5C,GAAc,CAClB,GACA,IAEI,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,KAAM,iBAAkB,MAC/G,GAAc,CAAEA,MAAO,6BACvB,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,cAAgB,CACvG,eAAoB,OAAQ,CAAEA,MAAO,uBAAyB,CAC5D,eAAoB,OAAQ,CAAEA,MAAO,sBAEvC,eAAoB,OAAQ,CAAEA,MAAO,cAAgB,CACnD,eAAoB,SAAU,KAAM,qBACpC,eAAiB,0BAE9B,MACE,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,cAAgB,CACvG,eAAoB,OAAQ,CAAEA,MAAO,uBAAyB,CAC5D,eAAoB,OAAQ,CAAEA,MAAO,sBAEvC,eAAoB,OAAQ,CAAEA,MAAO,cAAgB,CACnD,eAAoB,SAAU,KAAM,sBACpC,eAAiB,yCAE9B,MACE,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,cAAgB,CACvG,eAAoB,OAAQ,CAAEA,MAAO,uBAAyB,CAC5D,eAAoB,OAAQ,CAAEA,MAAO,sBAEvC,eAAoB,OAAQ,CAAEA,MAAO,cAAgB,CACnD,eAAoB,SAAU,KAAM,mBACpC,eAAiB,oCAE9B,MACE,GAAc,CAClB9N,IAAK,EACL8N,MAAO,uBAEH,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAEA,MAAO,6BAA+B,MAAO,MACpI,GAA2B,eAAiB,qBAC5C,GAAc,CAClB,GACA,IAEI,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAAc,CAAE9N,IAAK,GACrB,GAAc,CAAEA,IAAK,GACrB,GAAc,CAAEA,IAAK,GACrB,GAAc,CAAEA,IAAK,GACrB,GAAc,CAAEA,IAAK,GACrB,GAA2B,eAAmB,2/BAAghC,GAC9jC,GAAc,CAAE8N,MAAO,YACvB,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,SAAW,iBAAkB,MAC7H,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,SAAW,CAClG,eAAiB,2BACjB,eAAoB,MAAO,CAAEA,MAAO,oBAAsB,cACrE,MACE,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,SAAW,wBAAyB,MACpI,GAAc,CAAEA,MAAO,YACvB,GAAc,CAAEA,MAAO,sBACvB,GAAc,CAClB9N,IAAK,EACLkU,MAAO,gDAEH,GAA2B,iBAC3B,GAAc,CAAC,WACf,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,KAAM,iBAAkB,MAC/G,GAAc,CAAC,sBAAuB,UACtC,GAAc,CAClBlU,IAAK,EACL8N,MAAO,kBAEH,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAEA,MAAO,6BAA+B,MAAO,MACpI,GAA2B,eAAiB,qBAC5C,GAAc,CAClB,GACA,IAEI,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,KAAM,0BAA2B,MACxH,GAAc,CAAC,uBACf,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,KAAM,wBAAyB,MACtH,GAAc,CAAC,uBACf,GAAc,CAClB9N,IAAK,EACL8N,MAAO,kBAEH,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAEA,MAAO,6BAA+B,MAAO,MACpI,GAA2B,eAAiB,qBAC5C,GAAc,CAClB,GACA,IAEI,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAAc,CAClB9N,IAAK,EACL8N,MAAO,eAEH,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,KAAM,yDAA0D,MACvJ,GAAc,CAClB9N,IAAK,EACL8N,MAAO,kBAEH,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAEA,MAAO,kCAAoC,MAAO,MACzI,GAA2B,eAAiB,8BAC5CwkB,GAAc,CAClB,GACA,IAEIC,GAAc,CAAEvyB,IAAK,GACrBwyB,GAAc,CAAC,YACfC,GAA2B,eAAiB,kBAC5CC,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,KAAM,CACrF,eAAoB,IAAK,CAAE5kB,MAAO,yBAC7C,MACE6kB,GAAc,CAClBF,GACAC,IAEIE,GAAc,CAClB5yB,IAAK,EACL8N,MAAO,kBAEH+kB,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAE/kB,MAAO,kCAAoC,MAAO,MACzIglB,GAA2B,eAAiB,2CAC5CC,GAAc,CAClBF,GACAC,IAEIE,GAAc,CAClBhzB,IAAK,EACL8N,MAAO,eAEHmlB,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,KAAM,eAAgB,MAC7GC,GAAc,CAClBlzB,IAAK,EACL8N,MAAO,kBAEHqlB,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAErlB,MAAO,kCAAoC,MAAO,MACzIslB,GAA2B,eAAiB,4BAC5CC,GAAc,CAClBF,GACAC,IAGI,SAAU,GAAO/xB,EAAMC,GAC3B,IAAMgyB,EAAmB,eAAkB,SAE3C,OAAQ,iBAAc,eAAoB,UAAW,GAAY,CAC/D,eAAoB,MAAO,GAAY,eAAiBjyB,EAAKswB,YAAa,GAC1E,GACA,GACA,GACA,eAAgB,eAAoB,QAAS,CAC3Cpa,KAAM,OACNgc,UAAW,KACX,sBAAuBjyB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAKuT,SAAS+H,YAAetO,IAC1FmlB,QAASlyB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKoyB,oBAClD,KAAM,KAAM,CACb,CAAC,OAAapyB,EAAKuT,SAAS+H,eAE9B,eAAoB,MAAO,CACzB7O,MAAO,eAAgB,CAAC,WAAY,CAA0B,KAAxBzM,EAAKqyB,eAAwB,OAAS,OAC3E,eAAiBryB,EAAKqyB,gBAAkB,kBAAmB,GAC9D,GACsC,IAArCryB,EAAKuT,SAASiJ,oBACV,iBAAc,eAAoB,MAAO,GAAY,CACpD,GACA,eAAoB,OAAQ,GAAY,eAAiBxc,EAAKuT,SAASsP,MAAO,MAEhF,eAAoB,IAAI,GAC5B,GACC7iB,EAAKuT,UAAiD,IAArCvT,EAAKuT,SAASiJ,oBAA4Bxc,EAAKkjB,wBAAwBlnB,OAAS,GAC7F,iBAAc,eAAoB,OAAW,CAAE2C,IAAK,GAAK,CACxD,GACA,GACA,eAAgB,eAAoB,QAAS,CAC3CuX,KAAM,OACNgc,UAAW,KACX,sBAAuBjyB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAKkjB,wBAAwB,GAAGb,aAAgBrV,IAC7GmlB,QAASlyB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKoyB,oBAClD,KAAM,KAAM,CACb,CAAC,OAAapyB,EAAKkjB,wBAAwB,GAAGb,gBAEhD,eAAoB,MAAO,CACzB5V,MAAO,eAAgB,CAAC,WAAY,CAA0D,KAAxDzM,EAAKkjB,wBAAwB,GAAGb,aAAarmB,OAAgB,OAAS,OAC3G,eAAiBgE,EAAKkjB,wBAAwB,GAAGb,aAAarmB,QAAU,iBAAkB,GACpC,KAAxDgE,EAAKkjB,wBAAwB,GAAGb,aAAaiQ,QACzC,iBAAc,eAAoB,MAAO,GAAa,KACvD,eAAoB,IAAI,GAC5B,GACA,GACA,eAAgB,eAAoB,QAAS,CAC3Cpc,KAAM,OACNgc,UAAW,MACX,sBAAuBjyB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAKkjB,wBAAwB,GAAG7G,QAAWrP,IACxGmlB,QAASlyB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKoyB,oBAClD,KAAM,KAAM,CACb,CAAC,OAAapyB,EAAKkjB,wBAAwB,GAAG7G,WAEhD,eAAoB,MAAO,CACzB5P,MAAO,eAAgB,CAAC,WAAY,CAAqD,MAAnDzM,EAAKkjB,wBAAwB,GAAG7G,QAAQrgB,OAAiB,OAAS,OACvG,eAAiBgE,EAAKkjB,wBAAwB,GAAG7G,QAAQrgB,QAAU,kBAAmB,GACrC,KAAnDgE,EAAKkjB,wBAAwB,GAAG7G,QAAQiW,QACpC,iBAAc,eAAoB,MAAO,GAAa,KACvD,eAAoB,IAAI,IAC3B,KACH,eAAoB,IAAI,GAC3BtyB,EAAKuT,UAAiD,IAArCvT,EAAKuT,SAASiJ,oBAA4Bxc,EAAKkjB,wBAAwBlnB,OAAS,GAC7F,iBAAc,eAAoB,OAAW,CAAE2C,IAAK,GAAK,CACxD,GACA,eAAoB,MAAO,GAAa,CACtC,eAAoB,MAAO,KAAM,CAC/B,eAAoB,QAAS,GAAa,CACxC,eAAgB,eAAoB,QAAS,CAC3CuX,KAAM,QACN,sBAAuBjW,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAKuT,SAAS0P,UAAajW,IACxFpP,KAAM,aACN4B,GAAI,cACJ+yB,SAAUtyB,EAAO,KAAOA,EAAO,GAAK,kBAAcD,EAAKoyB,gBAAkBpyB,EAAKoyB,eAAL,MAAApyB,EAAI,aAC7E3B,MAAO,GACN,KAAM,KAAM,CACb,CAAC,OAAc2B,EAAKuT,SAAS0P,aAE/B,OAGJ,eAAoB,MAAO,KAAM,CAC/B,eAAoB,QAAS,GAAa,CACxC,eAAgB,eAAoB,QAAS,CAC3C/M,KAAM,QACN,sBAAuBjW,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAKuT,SAAS0P,UAAajW,IACxFpP,KAAM,aACN4B,GAAI,cACJ+yB,SAAUtyB,EAAO,KAAOA,EAAO,GAAK,kBAAcD,EAAKoyB,gBAAkBpyB,EAAKoyB,eAAL,MAAApyB,EAAI,aAC7E3B,MAAO,GACN,KAAM,KAAM,CACb,CAAC,OAAc2B,EAAKuT,SAAS0P,aAE/B,OAGJ,eAAoB,MAAO,KAAM,CAC/B,eAAoB,QAAS,GAAa,CACxC,eAAgB,eAAoB,QAAS,CAC3C/M,KAAM,QACN,sBAAuBjW,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAMhN,EAAKuT,SAAS0P,UAAajW,IAC1FpP,KAAM,aACN4B,GAAI,cACJ+yB,SAAUtyB,EAAO,MAAQA,EAAO,IAAM,kBAAcD,EAAKoyB,gBAAkBpyB,EAAKoyB,eAAL,MAAApyB,EAAI,aAC/E3B,MAAO,GACN,KAAM,KAAM,CACb,CAAC,OAAc2B,EAAKuT,SAAS0P,aAE/B,SAIuB,IAA5BjjB,EAAKuT,SAAS0P,WACV,iBAAc,eAAoB,MAAO,GAAa,KACvD,eAAoB,IAAI,GAC5B,GAC6B,IAA5BjjB,EAAKuT,SAAS0P,WACV,iBAAc,eAAoB,MAAO,GAAa,CACxB,IAA5BjjB,EAAKuT,SAAS0P,WACV,iBAAc,eAAoB,KAAM,GAAa,sBACtD,eAAoB,IAAI,GACC,IAA5BjjB,EAAKuT,SAAS0P,WACV,iBAAc,eAAoB,KAAM,GAAa,uBACtD,eAAoB,IAAI,GACC,IAA5BjjB,EAAKuT,SAAS0P,WACV,iBAAc,eAAoB,KAAM,GAAa,iDACtD,eAAoB,IAAI,GACC,IAA5BjjB,EAAKuT,SAAS0P,WACV,iBAAc,eAAoB,MAAO,GAAa,CACrD,GACA,eAAoB,MAAO,GAAa,CACtC,eAAoB,MAAO,KAAM,CAC/B,GACA,eAAoB,MAAO,KAAM,CAC/B,eAAgB,eAAoB,QAAS,CAC3C/M,KAAM,OACNgc,UAAW,KACX,sBAAuBjyB,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAMhN,EAAKuT,SAASgQ,gBAAmBvW,IAChGmlB,QAASlyB,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAKhN,EAAKoyB,mBACrDI,OAAQvyB,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,MAAyC,KAApChN,EAAKuT,SAASiQ,kBAA2BxjB,EAAKuT,SAASiQ,kBAAoBxjB,EAAKuT,SAASgQ,gBAAkBvjB,EAAKuT,SAASiQ,qBACvK,KAAM,KAAM,CACb,CAAC,OAAaxjB,EAAKuT,SAASgQ,mBAE9B,eAAoB,MAAO,CACzB9W,MAAO,eAAgB,CAAC,WAAY,CAA2C,KAAzCzM,EAAKuT,SAASgQ,gBAAgBvnB,OAAgB,OAAS,OAC5F,eAAiBgE,EAAKuT,SAASgQ,gBAAgBvnB,QAAU,iBAAkB,OAGlF,eAAoB,MAAO,KAAM,CAC/B,GACA,eAAoB,MAAO,GAAa,CACtC,eAAgB,eAAoB,WAAY,CAC9CyQ,MAAO,kBACPylB,UAAW,MACX,sBAAuBjyB,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAMhN,EAAKuT,SAAS+P,uBAA0BtW,IACvGmlB,QAASlyB,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAKhN,EAAKoyB,oBACpD,KAAM,KAAM,CACb,CAAC,OAAapyB,EAAKuT,SAAS+P,0BAE9B,eAAoB,MAAO,CACzB7W,MAAO,eAAgB,CAAC,WAAY,CAAkD,MAAhDzM,EAAKuT,SAAS+P,uBAAuBtnB,OAAiB,OAAS,OACpG,eAAiBgE,EAAKuT,SAAS+P,uBAAuBtnB,QAAU,kBAAmB,OAG1F,eAAoB,MAAO,KAAM,CAC/B,GACA,eAAoB,MAAO,KAAM,CAC/B,eAAgB,eAAoB,QAAS,CAC3Cka,KAAM,OACNgc,UAAW,MACX,sBAAuBjyB,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAMhN,EAAKuT,SAASiQ,kBAAqBxW,IAClGmlB,QAASlyB,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAKhN,EAAKoyB,oBACpD,KAAM,KAAM,CACb,CAAC,OAAapyB,EAAKuT,SAASiQ,qBAE9B,eAAoB,MAAO,GAAa,eAAiBxjB,EAAKuT,SAASiQ,kBAAkBxnB,QAAU,kBAAmB,YAK9H,eAAoB,IAAI,IAC3B,gBAAW,GAAO,eAAoB,OAAW,KAAM,eAAYgE,EAAKkjB,yBAAyB,SAACvlB,EAAGyV,GACpG,OAAQ,iBAAc,eAAoB,MAAO,GAAa,CAC/B,IAA5BpT,EAAKuT,SAAS0P,WAAmBjjB,EAAKyyB,OAAqC,IAA5BzyB,EAAKuT,SAAS0P,WACzD,iBAAc,eAAoB,OAAW,CAAEtkB,IAAK,GAAK,CAC3B,IAA5BqB,EAAKuT,SAAS0P,WACV,iBAAc,eAAoB,MAAO,GAAa,CACrD,eAAoB,OAAQ,KAAM,YAAc,eAAiB7P,EAAM,GAAI,GAC3E,GACCpT,EAAKkjB,wBAAwBlnB,OAAS,GAClC,iBAAc,eAAoB,SAAU,CAC3C2C,IAAK,EACL8N,MAAO,2BACPM,QAAS,SAAAC,GAAM,OAAKhN,EAAK0yB,eAAetf,KACvC,SAAU,EAAG,KAChB,eAAoB,IAAI,MAE9B,eAAoB,IAAI,GAC5B,GACA,eAAgB,eAAoB,QAAS,CAC3C8C,KAAM,OACNgc,UAAW,KACX,sBAAuB,SAAAllB,GAAM,OAAMrP,EAAE0e,QAAWrP,GAChDmlB,QAASlyB,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAKhN,EAAKoyB,mBACrDI,OAAQ,SAAAxlB,GAAM,MAAqB,KAAhBrP,EAAE4kB,UAAmB5kB,EAAE4kB,UAAY5kB,EAAE0e,QAAU1e,EAAE4kB,YACnE,KAAM,GAAI,IAAc,CACzB,CAAC,OAAa5kB,EAAE0e,WAElB,eAAoB,MAAO,CACzB5P,MAAO,eAAgB,CAAC,WAAY,CAAuB,KAArB9O,EAAE0e,QAAQrgB,OAAgB,OAAS,OACxE,eAAiB2B,EAAE0e,QAAQrgB,QAAU,iBAAkB,GACpC,KAArB2B,EAAE0e,QAAQiW,QACN,iBAAc,eAAoB,MAAO,GAAa,KACvD,eAAoB,IAAI,GAC5B,GACA,GACA,eAAgB,eAAoB,WAAY,CAC9C7lB,MAAO,kBACPylB,UAAW,MACX,sBAAuB,SAAAllB,GAAM,OAAMrP,EAAE2kB,eAAkBtV,GACvDmlB,QAASlyB,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAKhN,EAAKoyB,oBACpD,KAAM,GAAI,IAAc,CACzB,CAAC,OAAaz0B,EAAE2kB,kBAElB,eAAoB,MAAO,CACzB7V,MAAO,eAAgB,CAAC,WAAY,CAA8B,MAA5B9O,EAAE2kB,eAAetmB,OAAiB,OAAS,OAChF,eAAiB2B,EAAE2kB,eAAetmB,QAAU,kBAAmB,GAClE,GACA,GACA,eAAgB,eAAoB,QAAS,CAC3Cka,KAAM,OACNgc,UAAW,MACX,sBAAuB,SAAAllB,GAAM,OAAMrP,EAAE4kB,UAAavV,GAClDmlB,QAASlyB,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAKhN,EAAKoyB,oBACpD,KAAM,GAAI,IAAc,CACzB,CAAC,OAAaz0B,EAAE4kB,aAElB,eAAoB,MAAO,CACzB9V,MAAO,eAAgB,CAAC,WAAY,CAAyB,MAAvB9O,EAAE4kB,UAAUvmB,OAAiB,OAAS,OAC3E,eAAiB2B,EAAE4kB,UAAUvmB,QAAU,kBAAmB,GACrC,KAAvB2B,EAAE4kB,UAAU+P,QACR,iBAAc,eAAoB,MAAO,GAAa,KACvD,eAAoB,IAAI,GAC5B,GAC6B,IAA5BtyB,EAAKuT,SAAS0P,WACV,iBAAc,eAAoB,MAAO,GAAa,CACrD,GACA,eAAgB,eAAoB,QAAS,CAC3C/M,KAAM,OACNgc,UAAW,IACX,sBAAuBjyB,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAMhN,EAAKuT,SAAS4P,IAAOnW,IACpFmlB,QAASlyB,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAKhN,EAAKoyB,oBACpD,KAAM,KAAM,CACb,CAACH,EAAkB,OACnB,CAAC,OAAajyB,EAAKuT,SAAS4P,OAE7BnjB,EAAKuT,SAAS4P,IAAM,GAAKnjB,EAAKuT,SAAS4P,IAAM,KACzC,iBAAc,eAAoB,MAAO,GAAa8N,KACvD,eAAoB,IAAI,MAE9B,eAAoB,IAAI,IAC3B,KACH,eAAoB,IAAI,QAE5B,MACyB,IAA5BjxB,EAAKuT,SAAS0P,WACV,iBAAc,eAAoB,MAAOiO,GAAa,CACrD,eAAoB,SAAU,CAC5BzkB,MAAO,yBACPM,QAAS9M,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAKhN,EAAK2yB,gBACrD1f,SAAUjT,EAAKkjB,wBAAwBlnB,OAAS,IAC/Cs1B,GAAa,EAAGH,IAClBnxB,EAAKkjB,wBAAwBlnB,OAAS,IAClC,iBAAc,eAAoB,MAAOu1B,GAAaG,KACvD,eAAoB,IAAI,MAE9B,eAAoB,IAAI,MAE9B,eAAoB,IAAI,IAC3B,KACH,eAAoB,IAAI,GAC3B1xB,EAAKuT,UAAiD,IAArCvT,EAAKuT,SAASiJ,oBAC3B,iBAAc,eAAoB,MAAOmV,GAAa,CACrDC,GACA,eAAgB,eAAoB,QAAS,CAC3C1b,KAAM,OACNgc,UAAW,IACX,sBAAuBjyB,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAMhN,EAAKuT,SAAS4P,IAAOnW,IACpFmlB,QAASlyB,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAKhN,EAAKoyB,oBACpD,KAAM,KAAM,CACb,CAACH,EAAkB,OACnB,CAAC,OAAajyB,EAAKuT,SAAS4P,OAE7BnjB,EAAKuT,SAAS4P,IAAM,GAAKnjB,EAAKuT,SAAS4P,IAAM,KACzC,iBAAc,eAAoB,MAAO0O,GAAaG,KACvD,eAAoB,IAAI,MAE9B,eAAoB,IAAI,K,2BChdX,GAArB,yG,0BAGU,EAAA9O,wBAAqD,GACrD,EAAAkL,WAAY,EAGZ,EAAAiE,eAAiB,EACjB,EAAAI,OAAQ,EACR,EAAAG,kBAAmB,EACnB,EAAAC,eAAgB,EAV1B,gDAYE,WACE,OAAOzlB,GAAMrB,QAAQC,qBAbzB,sBAgBE,WACE,OAAO,GAAgBijB,QAAQ,gBAjBnC,oBAoBE,WACE,OAAO,GAAgBA,QAAQ,cArBnC,2BAyBU,WAEN3rB,KAAKiQ,SAASyP,sBAA4D,GAApC1f,KAAKiQ,SAASiJ,mBAA0BlZ,KAAKiQ,SAAS0P,UAAY,KACxG3f,KAAKiQ,SAASgQ,gBAAkB,GAChCjgB,KAAKiQ,SAAS+P,uBAAyB,GACvChgB,KAAKiQ,SAASiQ,kBAAoB,GAClClgB,KAAK4f,wBAA0B5f,KAAKiQ,SAAS2P,yBAA2B,GACxE,IAAI4P,EAAOC,IACLC,EAAY1vB,KAAKiQ,SAAS/T,GAAK,EAEjCwzB,GAAa1vB,KAAKuvB,eAEqB,IAArCvvB,KAAKiQ,SAASiJ,qBACgB,IAA5BlZ,KAAKiQ,SAAS0P,YAChB6P,EAAOxvB,KAAK4f,wBAAwBlnB,QAEN,IAA5BsH,KAAKiQ,SAAS0P,YAChB6P,EAAOxvB,KAAK4f,wBAAwBlnB,QAEN,IAA5BsH,KAAKiQ,SAAS0P,YAChB6P,EAAOxvB,KAAK4f,wBAAwB,GAAGV,gBAGF,IAArClf,KAAKiQ,SAASiJ,qBAChBsW,EAAO,GAE+B,GAApCxvB,KAAKiQ,SAASiJ,qBAChBsW,EAAOxvB,KAAK4f,wBAAwB,GAAGV,eAEzClf,KAAKuvB,eAAgB,IAGrBC,EAA4C,IAArCxvB,KAAKiQ,SAASiJ,oBAA2D,IAA5BlZ,KAAKiQ,SAAS0P,UAAlB,EAAwC8P,IACxFzvB,KAAK4f,wBAA0B,CAAC,CAC9B7G,QAAS,GACTiG,eAAgB,GAChBC,UAAW,GACXF,aAAc,GACdG,cAAe,KAInBlf,KAAKiQ,SAAS4P,IAAM2P,EACpBxvB,KAAKmvB,OAAQ,IApEjB,qBAuEE,WAAO,WACLvzB,OAAO+zB,SAAS,EAAG,GACnB3vB,KAAK4vB,WAAU,WACb,EAAKhQ,wBAA0B,EAAK3P,SAAS2P,yBAA2B,GACxE,EAAKuP,MAAQ,EAAKlf,SAASyP,sBAAwB,EACnD,EAAKoP,sBA5EX,4BAuFU,WAEN9uB,KAAK+uB,eAAiB/uB,KAAKiQ,SAAS+H,YAAchY,KAAKiQ,SAAS+H,YAAYtf,OAAS,EAErF,IAAMm3B,EAAa7vB,KAAKiQ,SAAS0P,YAAcoB,GAAU6B,QACrD4M,EAAOxvB,KAAKiQ,SAAS4P,IAAM,GAAK7f,KAAKiQ,SAAS4P,IAAM,IAElDiQ,EAAiD,IAArC9vB,KAAKiQ,SAASiJ,oBAAqF,KAA1DlZ,KAAKiQ,SAAS2P,wBAAwB,GAAGb,aAChGgR,EAAgD,IAArC/vB,KAAKiQ,SAASiJ,oBAAgF,KAArDlZ,KAAKiQ,SAAS2P,wBAAwB,GAAG7G,QAC7FiX,GAAa,EAEjB,OAAQhwB,KAAKiQ,SAASiJ,oBACpB,KAAK,EACHlZ,KAAKiQ,SAAS2P,wBAA0B5f,KAAK4f,wBAC7C4P,EAAOxvB,KAAKiQ,SAAS4P,IAAM,GAAK7f,KAAKiQ,SAAS4P,IAAM,IACpD,IAAK,IAAIrnB,EAAI,EAAGA,EAAIwH,KAAK4f,wBAAwBlnB,OAAQF,IACnDwH,KAAK4f,wBAAwBpnB,GAAGugB,SAA8D,KAAnD/Y,KAAK4f,wBAAwBpnB,GAAGugB,QAAQiW,SACrFe,GAAW,GAET/vB,KAAK4f,wBAAwBpnB,GAAGymB,WAAkE,KAArDjf,KAAK4f,wBAAwBpnB,GAAGymB,UAAU+P,SACzFgB,GAAa,GAGjBhwB,KAAK8qB,UAAY+E,GAAcE,GAAYC,GAAcR,EACzD,MACF,KAAK,EACHxvB,KAAK8qB,UAAYgF,GAAaC,EAC9B,MACF,KAAK,EACH/vB,KAAK8qB,UAAY0E,EACjB,MACF,QACE,MAGJxvB,KAAKkK,UAAU8S,KAAK,YAAahd,KAAK8qB,aA1H1C,yBA6HU,WACD9qB,KAAKmvB,OAWJnvB,KAAK4f,wBAAwBlnB,OAAS,IACxCsH,KAAK4f,wBAAwB5mB,KAAK,CAChC+f,QAAS/Y,KAAKiQ,SAASgQ,gBACvBjB,eAAgBhf,KAAKiQ,SAAS+P,uBAC9Bf,UAAWjf,KAAKiQ,SAASiQ,kBACzBnB,aAAc,GACdG,cAAe,IAGnBlf,KAAKiQ,SAAS4P,IAAM7f,KAAK4f,wBAAwBlnB,SAnBjDsH,KAAK4f,wBAAwB,GAAK,CAChC7G,QAAS/Y,KAAKiQ,SAASgQ,gBACvBjB,eAAgBhf,KAAKiQ,SAAS+P,uBAC9Bf,UAAWjf,KAAKiQ,SAASiQ,kBACzBnB,aAAc,GACdG,cAAe,GAEjBlf,KAAKiQ,SAAS4P,IAAM,EACpB7f,KAAKmvB,OAAQ,GAafnvB,KAAK8uB,mBApJT,4BAwJU,SAAehf,GACrB9P,KAAK4f,wBAAwBhmB,OAAOkW,EAAK,GACzC9P,KAAKiQ,SAAS4P,IAAM7f,KAAK4f,wBAAwBlnB,OACjDsH,KAAK8uB,qBA3JT,GAA8C,SAyB5C,gBADC,gBAAM,uB,6BA6CN,MArEkB,GAAgB,gBARpC,gBAAQ,CACPtjB,MAAO,CACLyE,SAAU,IAEZggB,WAAY,CAAEC,MAAA,SACdC,MAAO,CAAC,mBACRpjB,WAAY,MAEO,c,UCTrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCPT,GAAe,SAAAxR,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,sBACtB,GAAa,CAAEA,MAAO,eACtB,GAA2B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,WAAa,MAAO,MACnH,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAClG,GAAa,CACjB9N,IAAK,EACL8N,MAAO,cAEH,GAA2B,IAAa,kBAAmB,eAAoB,QAAS,KAAM,CACrF,eAAoB,KAAM,KAAM,CAC9B,eAAoB,KAAM,KAAM,QAChC,eAAoB,KAAM,CAAEA,MAAO,UAAY,YAC/C,eAAoB,KAAM,CAAEA,MAAO,UAAY,sBAC/C,eAAoB,KAAM,CAAEA,MAAO,UAAY,sBAE5D,MACE,GAAa,CAAEA,MAAO,UACtB,GAAa,CAAEA,MAAO,UACtB,GAAa,CAAEA,MAAO,UACtB,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,qCAAsC,MAClI,GAAc,CAAEoG,MAAO,CAAC,QAAU,SAClC,GAAc,CAClBA,MAAO,CAAC,MAAQ,QAChBpG,MAAO,QAEH,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,cAAgB,CACvG,eAAoB,OAAQ,CAAEA,MAAO,uBAAyB,CAC5D,eAAoB,OAAQ,CAAEA,MAAO,sBAEvC,eAAoB,OAAQ,CAAEA,MAAO,cAAgB,iBAChE,MACE,GAAc,CAAEoG,MAAO,CAAC,MAAQ,SAChC,GAAc,CAAEpG,MAAO,SACvB,GAAc,CAAC,YACf,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,cAAgB,CACvG,eAAoB,OAAQ,CAAEA,MAAO,uBAAyB,CAC5D,eAAoB,OAAQ,CAAEA,MAAO,sBAEvC,eAAoB,OAAQ,CAAEA,MAAO,cAAgB,gBAChE,MACE,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,aAAe,qCAAsC,MACtJ,GAAc,CAAEA,MAAO,yBACvB,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,aAAe,oBAAqB,MACrI,GAAc,CAAEA,MAAO,yBACvB,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,aAAe,kCAAmC,MACnJ,GAAc,CAClB9N,IAAK,EACL8N,MAAO,yBAEH,GAAc,CAClB9N,IAAK,EACL8N,MAAO,yBAEH,GAAc,CAAE9N,IAAK,GACrB,GAAc,CAAE8N,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,aAAe,4BAA6B,MAC7I,GAAc,CAClB9N,IAAK,EACL8N,MAAO,yBAEH,GAAc,CAClB9N,IAAK,EACL8N,MAAO,yBAGH,SAAU,GAAOzM,EAAMC,GAC3B,IAAMmS,EAA4B,eAAkB,kBAC9CshB,EAA+B,eAAkB,qBAEvD,OAAQ,iBAAc,eAAoB,UAAW,GAAY,CAC9D1zB,EAAKyS,eACD,iBAAc,eAAaL,EAA2B,CAAEzT,IAAK,KAC9D,eAAoB,IAAI,GAC5B,eAAoB,MAAO,GAAY,eAAiBqB,EAAKswB,YAAa,GAC1E,GACA,GACCtwB,EAAKkjB,wBAAwBlnB,OAAS,GAClC,iBAAc,eAAoB,QAAS,GAAY,CACtD,GACA,eAAoB,QAAS,KAAM,CACjC,eAAoB,KAAM,KAAM,CAC9B,eAAoB,KAAM,KAAM,eAAiBgE,EAAKuT,SAASkB,cAAe,GAC9E,eAAoB,KAAM,GAAY,eAAiBzU,EAAKuT,SAAS4P,KAAM,GAC3E,eAAoB,KAAM,GAAY,eAAiBnjB,EAAK+S,WAAW/S,EAAKuT,SAAS6P,YAAa,GAClG,eAAoB,KAAM,GAAY,eAAiBpjB,EAAK+S,WAAW/S,EAAKuT,SAAS4P,IAAMnjB,EAAKuT,SAAS6P,YAAa,UAI5H,eAAoB,IAAI,GAC5B,GACA,GACA,eAAoB,MAAO,GAAa,CACtC,eAAoB,MAAO,GAAa,CACtC,eAAoB,QAAS,GAAa,CACxC,eAAgB,eAAoB,QAAS,CAC3ClN,KAAM,QACN,sBAAuBjW,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK2zB,YAAe3mB,IACjFpP,KAAM,eACN4B,GAAI,gBACJ+yB,SAAUtyB,EAAO,KAAOA,EAAO,GAAK,kBAAcD,EAAKoyB,gBAAkBpyB,EAAKoyB,eAAL,MAAApyB,EAAI,aAC7E3B,MAAO,KACN,KAAM,KAAM,CACb,CAAC,OAAc2B,EAAK2zB,eAEtB,OAGJ,eAAoB,MAAO,GAAa,CACtC,eAAoB,QAAS,GAAa,CACxC,eAAgB,eAAoB,QAAS,CAC3Czd,KAAM,QACN,sBAAuBjW,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK2zB,YAAe3mB,IACjFiG,SAAUjT,EAAK4zB,gBAAkB,EACjCh2B,KAAM,eACN4B,GAAI,gBACJ+yB,SAAUtyB,EAAO,KAAOA,EAAO,GAAK,kBAAcD,EAAKoyB,gBAAkBpyB,EAAKoyB,eAAL,MAAApyB,EAAI,aAC7E3B,MAAO,KACN,KAAM,GAAI,IAAc,CACzB,CAAC,OAAc2B,EAAK2zB,eAEtB,SAIN,GACsB,MAArB3zB,EAAK2zB,aACD,iBAAc,eAAaD,EAA8B,CACxD/0B,IAAK,EACLk1B,cAAe7zB,EAAK6zB,cACpB,yBAA0B5zB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK6zB,cAAiB7mB,IACtF8mB,aAAc9zB,EAAK8zB,aACnB,wBAAyB7zB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK8zB,aAAgB9mB,IACpF+mB,cAAe/zB,EAAKg0B,sBACnB,KAAM,EAAG,CAAC,gBAAiB,eAAgB,mBAC9C,eAAoB,IAAI,GACN,MAArBh0B,EAAK2zB,aACD,iBAAc,eAAoB,OAAW,CAAEh1B,IAAK,GAAK,CACxD,eAAoB,MAAO,GAAa,CACtC,GACA,eAAoB,OAAQ,GAAa,eAAiBqB,EAAK+S,WAAW/S,EAAK4zB,iBAAkB,KAEnG,eAAoB,MAAO,GAAa,CACtC,GACA,eAAoB,OAAQ,GAAa,eAAiB5zB,EAAK+S,WAAW/S,EAAKuT,SAAS4P,IAAMnjB,EAAKuT,SAAS6P,YAAa,KAE3H,eAAoB,MAAO,GAAa,CACtC,GACCpjB,EAAK4zB,eAAkB5zB,EAAKuT,SAAS4P,IAAMnjB,EAAKuT,SAAS6P,UAAa,GAClE,iBAAc,eAAoB,OAAQ,GAAa,WACvD,iBAAc,eAAoB,OAAQ,GAAa,eAAiBpjB,EAAK+S,WAAW/S,EAAK4zB,eAAkB5zB,EAAKuT,SAAS4P,IAAMnjB,EAAKuT,SAAS6P,YAAc,OAGjK,iBAAc,eAAoB,OAAQ,GAAa,CACtD,eAAoB,MAAO,GAAa,CACtC,GACCpjB,EAAK4zB,eAAkB5zB,EAAKuT,SAAS4P,IAAMnjB,EAAKuT,SAAS6P,WAAc,GACnE,iBAAc,eAAoB,OAAQ,GAAa,WACvD,iBAAc,eAAoB,OAAQ,GAAa,eAAiBpjB,EAAK+S,WAAY/S,EAAKuT,SAAS4P,IAAMnjB,EAAKuT,SAAS6P,UAAapjB,EAAK4zB,iBAAmB,MAEtK5zB,EAAK4zB,eAAkB5zB,EAAKuT,SAAS4P,IAAMnjB,EAAKuT,SAAS6P,UAAa,GAClE,iBAAc,eAAasQ,EAA8B,CACxD/0B,IAAK,EACLk1B,cAAe7zB,EAAK6zB,cACpB,yBAA0B5zB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK6zB,cAAiB7mB,IACtF8mB,aAAc9zB,EAAKuT,SAASmQ,iBAC5B,wBAAyBzjB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAKuT,SAASmQ,iBAAoB1W,IACjG+mB,cAAe/zB,EAAKg0B,sBACnB,KAAM,EAAG,CAAC,gBAAiB,eAAgB,mBAC9C,eAAoB,IAAI,OAGjC,KACH,eAAoB,IAAI,KCnLhC,IAAM,GAAe,SAAAn1B,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,uBACtB,GAAa,CACjB9N,IAAK,EACL8N,MAAO,qCACPoG,MAAO,CAAC,aAAa,QAEjB,GAAa,CAAC,MACd,GAA2B,IAAa,kBAAmB,eAAoB,MAAO,CAAEpG,MAAO,SAAW,wCAAyC,MACnJ,GAAa,CAAE9N,IAAK,GACpB,GAA0B,eAAiB,yBAC3C,GAA2B,IAAa,kBAAmB,eAAoB,MAAO,KAAM,8IAA+I,MAE3O,SAAU,GAAOqB,EAAMC,GAC3B,OAAQ,iBAAc,eAAoB,UAAW,GAAY,EACpC,GAA1BD,EAAKi0B,kBAAoD,GAAzBj0B,EAAKi0B,mBAA0D,GAAjCj0B,EAAKk0B,yBAC/D,iBAAc,eAAoB,IAAK,KACxC,eAAoB,IAAI,GAC5B,eAAgB,eAAoB,MAAO,CACzC10B,GAAIQ,EAAKm0B,gBACT1nB,MAAO,cACN,KAAM,EAAG,IAAa,CACvB,CAAC,OAAiC,GAAzBzM,EAAKi0B,kBAAyD,GAAhCj0B,EAAKk0B,2BAEpB,GAAzBl0B,EAAKi0B,kBAAmD,GAAzBj0B,EAAKi0B,kBAAyD,GAAhCj0B,EAAKk0B,yBAC9D,iBAAc,eAAoB,OAAW,CAAEv1B,IAAK,GAAK,CACxD,GACA,eAAoB,QAAS,CAC3BkU,MAAO,CAAC,OAAS,WACjB9F,QAAS9M,EAAO,KAAOA,EAAO,GAAK,gBAAe,SAAA+M,GAAM,OAAKhN,EAAKo0B,sBAAsB,CAAC,WACxF,yBACF,KACH,eAAoB,IAAI,GAC3Bp0B,EAAKqf,YACD,iBAAc,eAAoB,MAAO,GAAY,CACpD,GACA,GACA,eAAiB,IAAM,eAAiBrf,EAAK8zB,cAAe,MAE9D,eAAoB,IAAI,KCzCzB,IAAMO,GAAc,CACzB,KAAQ,GAIR,eAAgB,CAIdC,OAAQ,OAGV,gBAAkB,GAIlB,gBAAiB,GAIjB,4BAA6B,CAG3B,UAAY,OAEd,kBAAoB,GAMpB,8CAA+C,ICb5B,GAArB,yG,0BAGU,EAAAnlB,GAAK,IAAI,GAEV,EAAAolB,SAA+B,KAC/B,EAAAJ,iBAA0B,IAAI,IAAQvW,QAGtC,EAAA4W,cAAgB,EAChB,EAAAC,QAAU,GACV,EAAAC,cAAgB,EAChB,EAAAC,UAAYzxB,KAAKC,OAAM,IAAIC,MAAOC,UAAY,KAC9C,EAAAuxB,QAAU,EAAKD,UAAY,EAAKF,QAChC,EAAAR,kBAAoB,EACpB,EAAAY,iBAAkB,EAElB,EAAAC,iBAAmB,EACnB,EAAAC,yBAA2B,EAC3B,EAAAb,yBAA2B,EAE3B,EAAAc,gBAAuB,KAMtB,EAAA3V,YAAa,EA3BvB,gDAuBE,WACE,OAAOjS,GAAMrB,QAAQC,qBAxBzB,qBA6BE,WAAO,WACL1I,KAAK+b,WAAape,EAASiU,QAAQ,cAAgB,EACnD5H,YAAW,WACT,EAAK2nB,gBACL,EAAKC,mBACJ,OAlCP,qBAsCE,WACE5xB,KAAKkK,UAAUC,GAAG,8BAA+BnK,KAAK6xB,2BAvC1D,2BA0CE,WACE7xB,KAAKkK,UAAUG,eAAe,8BAA+BrK,KAAK6xB,2BA3CtE,2BA8CU,WACN7xB,KAAKixB,SAAWvkB,SAASsR,cAAc,UACvChe,KAAKixB,SAASa,aAAa,MAAO,+CAClCplB,SAASqlB,KAAKC,YAAYhyB,KAAKixB,YAjDnC,8BAqDS,WACL,IAEE,MAA+C,oBAAjCgB,OAAOC,sBACrB,MAAOnnB,GAEP,OADAmC,QAAQC,IAAI,6BAA8BpC,IACnC,KA3Db,4BA+DU,WAAc,YACf/K,KAAKmyB,oBAAsBnyB,KAAKoxB,cAAgBpxB,KAAKkxB,cAEpDtxB,KAAKC,OAAM,IAAIC,MAAOC,UAAY,KAAQC,KAAKsxB,SACjDtxB,KAAKoxB,gBACLpxB,KAAKqxB,UAAYzxB,KAAKC,OAAM,IAAIC,MAAOC,UAAY,KACnDC,KAAKsxB,QAAUtxB,KAAKqxB,UAAYrxB,KAAKmxB,QACrCnxB,KAAKoyB,kBACLpoB,YAAW,WACT,EAAK2nB,gBACL,EAAKC,mBACJ,MAEM5xB,KAAKoxB,cAAgBpxB,KAAKkxB,eACnClnB,WAAWhK,KAAK4xB,eAAgB,KAEzB5xB,KAAKoxB,eAAiBpxB,KAAKkxB,eACpClxB,KAAK2wB,iBAAmB,EACxB3wB,KAAKoxB,cAAgB,EACrBpxB,KAAKqxB,UAAY,EACjBrxB,KAAKsxB,QAAU,GACNtxB,KAAKmyB,qBACdnyB,KAAK2wB,iBAAmB,EACxB3wB,KAAKqyB,uBAtFX,6BA2FS,WACLnlB,QAAQC,IAAI,0BACZ,IACET,SAAS9K,KAAK0wB,YAAYtyB,KAAKixB,UAC/B,MAAOlmB,GACPmC,QAAQC,IAAIpC,GAEd,IACE/K,KAAKixB,SAAW,KAChB,MAAOlmB,GACPmC,QAAQC,IAAIpC,GAEd,IACEknB,OAAS,KACT,MAAOlnB,GACPmC,QAAQC,IAAIpC,MA1GlB,+BA+GS,WAAiB,WAChBwnB,EAAUxB,GACVnwB,EAAU,CAEd4xB,kBAAmB50B,EACnB60B,UAAW,WACXC,UAAW1yB,KAAK6wB,gBAChB8B,QAAS,WACP,EAAK3hB,MAAM,eAAe,GAC1B,EAAKugB,iBAAkB,GAEzBqB,UAAW,WACT,EAAK5hB,MAAM,eAAe,GAC1B,EAAKugB,iBAAkB,GAEzBhiB,MAAOgjB,GAGHM,EAAkB,SAAC9nB,EAAU+nB,GAC7B/nB,GAAO,EAAK0mB,yBAA2B,EAAKD,kBAC9C,EAAKC,2BACL,EAAKsB,oBACL,EAAKV,qBACItnB,GAAO,EAAK0mB,0BAA4B,EAAKD,kBACtD,EAAKZ,wBAA0B,EAC/B,EAAKa,yBAA2B,IAGhC,EAAKC,gBAAkBoB,EACvB,EAAKlC,wBAA0B,EAC/B,EAAKhB,WAAU,WACb,IAAMoD,EAAmBtmB,SAASumB,eAAe,EAAKpC,iBACtD,IACGmC,EAAIE,WAAW,GAAmBpB,aAAa,QAAS,QACxDkB,EAAIE,WAAW,GAAmBpB,aAAa,SAAU,SAC1D,MAAO/mB,GACPmC,QAAQC,IAAIpC,SAMpBknB,OAAOC,sBAAsBtxB,EAASiyB,KAzJ1C,+BA4JS,WACL,IACE7yB,KAAK0xB,gBAAgByB,UACrB,MAAOpoB,GACPmC,QAAQC,IAAIpC,GAGd,IACE/K,KAAK0xB,gBAAkB,KACvB,MAAO3mB,GACPmC,QAAQC,IAAIpC,MAtKlB,+BA0KS,WACL/K,KAAKoyB,kBACLpyB,KAAK+yB,oBAEL/yB,KAAK2wB,kBAAoB,EACzB3wB,KAAK4wB,yBAA2B,EAEhC5wB,KAAKqxB,UAAYzxB,KAAKC,OAAM,IAAIC,MAAOC,UAAY,KACnDC,KAAKsxB,QAAUtxB,KAAKqxB,UAAYrxB,KAAKmxB,QAErCnxB,KAAK2xB,gBACL3xB,KAAK4xB,mBArLT,qCAwLS,WAA4E,WAApDlO,EAAoD,uDAAX,KAEtE1jB,KAAKuxB,iBAAkB,EACvB,IAAM6B,EAAgB,SAACroB,EAAU7S,GAC3B6S,EACF,EAAKwmB,iBAAkB,EACdr5B,EAAKkoB,mBACd,EAAKpP,MAAM,sBAAuB9Y,EAAKkoB,kBAGrB,oBAAPsD,IACTxW,QAAQC,IAAI,OAAQuW,GACpBA,EAAGxrB,EAAKkoB,kBACL/c,MAAK,SAACyZ,GAEO,IAARA,GAAqB,IAARA,IACf,EAAKyU,iBAAkB,MAExBxU,OAAM,SAACtQ,GACR,EAAK8kB,iBAAkB,EAEvB,EAAK1lB,GAAGb,eAAe,yBAA2BpI,KAAKC,UAAU4J,UAM3EzM,KAAK0xB,gBAAgB2B,SAASD,KAnNlC,4BAsNU,WACN,IAAME,GAAa,EACnBtzB,KAAKkK,UAAU8S,KAAK,YAAasW,OAxNrC,GAA+C,SAA1B,GAAiB,gBAPrC,gBAAQ,CACP9nB,MAAO,CACLglB,aAAc5sB,QAEhBusB,MAAO,CAAC,uBAAwB,uBAChCpjB,WAAY,MAEO,c,WCXrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCeM,GAArB,yG,0BAIU,EAAAlB,GAAK,IAAI,GAET,EAAAgH,MAAQ,IAAI,GAKZ,EAAA+M,wBAAqD,GAErD,EAAAkL,WAAY,EACZ,EAAAuF,YAAc,GAEd,EAAAC,eAAiB,EACjB,EAAAC,cAAgB,EAChB,EAAAC,aAAe,GACf,EAAA+C,WAAY,EAcZ,EAAApkB,eAAgB,EAjC1B,gDAqBE,WACE,OAAOrF,GAAMrB,QAAQC,qBAtBzB,sBAyBE,WACE,OAAO,GAAgBmjB,QAAQ,gBA1BnC,oBA6BE,WACE,OAAO,GAAgBA,QAAQ,cA9BnC,8EAmCE,gHACEjwB,OAAO+zB,SAAS,EAAG,GADrB,SAEQ3vB,KAAKqiB,iBAFb,OAGEriB,KAAKmP,eAAgB,EACrBnP,KAAK4vB,WAAU,WACb,EAAK2D,WAAY,EACjB,EAAK3T,wBAA0B,EAAK3P,SAAS2P,wBAC7C,EAAK3P,SAAS4P,IAAM,EAAK5P,SAAS2P,wBAAwBlnB,OAAS,EAAI,EAAKuX,SAAS2P,wBAAwBlnB,OAAS,EAAKuX,SAAS4P,IAAM,EAC1I,EAAKiP,iBACL,EAAK3f,eAAgB,KATzB,gDAnCF,qFAgDU,WACNnP,KAAK8qB,WAAY,EACO,KAApB9qB,KAAKqwB,aACPrwB,KAAK8qB,UAAa9qB,KAAKswB,eAAkBtwB,KAAKiQ,SAAS4P,IAAM7f,KAAKiQ,SAAS6P,WAAc,EACzF9f,KAAKiQ,SAASoQ,eAAiBrgB,KAAK8qB,UAAY9qB,KAAKiQ,SAAS4P,IAAM7f,KAAKiQ,SAAS6P,UAAY9f,KAAKiQ,SAAS4P,IAAM7f,KAAKiQ,SAAS6P,UAAY9f,KAAKswB,eACjJtwB,KAAKgR,MAAM,qBAAuBhR,KAAKiQ,SAAS4P,IAAM7f,KAAKiQ,SAAS6P,UAAa9f,KAAKswB,kBAEtFtwB,KAAKiQ,SAASoQ,eAAiBrgB,KAAKiQ,SAAS4P,IAAM7f,KAAKiQ,SAAS6P,UACjE9f,KAAKgR,MAAM,sBAAsB,IAEnChR,KAAKkK,UAAU8S,KAAK,YAAahd,KAAK8qB,aA1D1C,kCA6DU,SAAqB3pB,GAC3B+L,QAAQC,IAAI,2BAA4BhM,GACxCnB,KAAKuzB,UAAYpyB,EACjBnB,KAAKkK,UAAU8S,KAAK,YAAa7b,KAhErC,uBAmEE,WACE,OAAO2I,GAAMrB,QAAQE,iBApEzB,qFAuEU,qIACA3I,KAAK8L,WAAWjF,mBADhB,aACA,EAA6BzB,iCAChC/B,MAAK,SAAAyZ,GACJ,EAAKwT,eAAiBxT,EAAI5kB,KAAKA,KAC3B,EAAKo4B,eAAiB,EACxB,EAAKD,YAAc,IAEnB,EAAKA,YAAc,OAGtBtT,OAAM,SAAAhS,GACL,EAAKc,GAAGb,eAAe,+BAAiCpI,KAAKC,UAAUkI,IACvE,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,+BAAiCjS,EAAI7J,SAASC,WAZ1F,gDAvEV,iFAuFU,SAAWpG,GACjB,IAAM8X,EAAQ,IAAI,GAClB,OAAOA,EAAMC,YAAY/X,OAzF7B,GAA8C,SAE5C,gBADC,gBAAO,CAAE4lB,KAAM,aAAcrQ,QAAS,IAAI,M,kCADxB,GAAgB,gBAXpC,gBAAQ,CACP9E,MAAO,CACLyE,SAAU,GACVsa,YAAauC,SAEfqD,MAAO,CAAC,kBAAmB,sBAC3BpjB,WAAY,CACVymB,kBAAA,GACA3S,eAAA,OAGiB,c,UCjBrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCPT,GAAe,SAAAtlB,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,qBACtB,GAAa,CAAEA,MAAO,eACtB,GAA2B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,WAAa,MAAO,MACnH,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,+CAAgD,MAC3I,GAAa,CAAEA,MAAO,SACtB,GAA2B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,aAAe,gBAAiB,MAChI,GAAa,CAAEA,MAAO,aACtB,GAAa,CAAEA,MAAO,SACtB,GAA2B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,aAAe,iBAAkB,MACjI,GAAc,CAAEA,MAAO,aACvB,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,aAAe,WAAY,MAC5H,GAAc,CAAEA,MAAO,aACvB,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,aAAe,wBAAyB,MACzI,GAAc,CAAEA,MAAO,aACvB,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,2CAA4C,MACxI,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,aAAe,aAAc,MAC9H,GAAc,CAAEA,MAAO,aACvB,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,aAAe,iBAAkB,MAClI,GAAc,CAAEA,MAAO,aACvB,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,aAAe,oBAAqB,MACrI,GAAc,CAAEA,MAAO,aACvB,GAAc,CAClB9N,IAAK,EACL8N,MAAO,kBAEH,GAAc,CAAEA,MAAO,aACvB,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,aAAe,WAAY,MAC5H,GAAc,CAAEA,MAAO,aACvB,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,aAAe,eAAgB,MAChI,GAAc,CAAEA,MAAO,aACvB,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,aAAe,wBAAyB,MACzI,GAAc,CAAEA,MAAO,aACvB,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,aAAe,gBAAiB,MACjI,GAAc,CAAEA,MAAO,aACvB,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAAc,CAClB9N,IAAK,EACLkU,MAAO,CAAC,gBAAgB,oCAEpB,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,iBAAkB,MAC9G,GAAc,CAAEpG,MAAO,cACvB,GAA4B,IAAa,kBAAmB,eAAoB,QAAS,KAAM,CACtF,eAAoB,KAAM,KAAM,CAC9B,eAAoB,KAAM,KAAM,QAChC,eAAoB,KAAM,CAAEA,MAAO,UAAY,YAC/C,eAAoB,KAAM,CAAEA,MAAO,UAAY,sBAC/C,eAAoB,KAAM,CAAEA,MAAO,UAAY,sBAE5D,MACE,GAAc,CAAEA,MAAO,UACvB,GAAc,CAAEA,MAAO,UACvB,GAAc,CAAEA,MAAO,UACvB,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,wBAAyB,MACrH,GAAc,CAAEA,MAAO,mBACvB,GAAc,CAAC,WACf,GAA2B,eAAmB,oZAAma,GAEjd,SAAU,GAAOzM,EAAMC,GAC3B,OAAQ,iBAAc,eAAoB,UAAW,GAAY,CAC/D,eAAoB,MAAO,GAAY,eAAiBD,EAAKswB,YAAa,GAC1E,GACsC,IAArCtwB,EAAKuT,SAASiJ,oBAA4Bxc,EAAKkjB,wBAAwBlnB,OAAS,GAC5E,iBAAc,eAAoB,OAAW,CAAE2C,IAAK,GAAK,CACxD,GACA,eAAoB,MAAO,GAAY,CACrC,GACA,eAAoB,OAAQ,GAAY,eAAiBqB,EAAKuT,SAAS+H,aAAc,KAEvF,eAAoB,MAAO,GAAY,CACrC,GACA,eAAoB,OAAQ,GAAa,eAAiBtb,EAAKkjB,wBAAwB,GAAGb,cAAe,KAE3G,eAAoB,MAAO,GAAa,CACtC,GACA,eAAoB,OAAQ,GAAa,eAAiBriB,EAAKkjB,wBAAwB,GAAG7G,SAAU,KAEtG,eAAoB,MAAO,GAAa,CACtC,GACA,eAAoB,OAAQ,GAAa,eAAiBrc,EAAKkjB,wBAAwB,GAAGb,cAAgB,KAAO,eAAiBriB,EAAKkjB,wBAAwB,GAAG7G,SAAU,MAE7K,KACH,eAAoB,IAAI,GACU,IAArCrc,EAAKuT,SAASiJ,oBACV,iBAAc,eAAoB,OAAW,CAAE7d,IAAK,GAAK,CACxD,GACA,eAAoB,MAAO,GAAa,CACtC,GACA,eAAoB,OAAQ,GAAa,eAAiBqB,EAAKuT,SAAS+H,aAAc,KAExF,eAAoB,MAAO,GAAa,CACtC,GACA,eAAoB,OAAQ,GAAa,eAAiBtb,EAAKuT,SAASkB,cAAe,KAEzF,eAAoB,MAAO,GAAa,CACtC,GACA,eAAoB,OAAQ,GAAa,eAAiBzU,EAAKuT,SAASsP,MAAO,MAEhF,gBAAW,GAAO,eAAoB,OAAW,KAAM,eAAY7iB,EAAKkjB,yBAAyB,SAACxlB,EAAG0V,GACpG,OAAQ,iBAAc,eAAoB,MAAO,KAAM,CACpDpT,EAAKkjB,wBAAwBlnB,OAAS,GAClC,iBAAc,eAAoB,MAAO,GAAa,CACrD,eAAoB,OAAQ,GAAa,CACvC,eAAoB,KAAM,KAAM,YAAc,eAAiBoX,EAAM,GAAI,QAG7E,eAAoB,IAAI,GAC5B,eAAoB,MAAO,GAAa,CACtC,GACA,eAAoB,OAAQ,GAAa,eAAiBpT,EAAKkjB,wBAAwB9P,GAAKiJ,SAAU,KAExG,eAAoB,MAAO,GAAa,CACtC,GACA,eAAoB,OAAQ,GAAa,eAAiBrc,EAAKkjB,wBAAwB9P,GAAKkP,gBAAiB,KAE/G,eAAoB,MAAO,GAAa,CACtC,GACA,eAAoB,OAAQ,GAAa,eAAiBtiB,EAAKkjB,wBAAwB9P,GAAKmP,WAAY,UAG1G,OACH,KACH,eAAoB,IAAI,GACU,IAArCviB,EAAKuT,SAASiJ,oBACV,iBAAc,eAAoB,OAAW,CAAE7d,IAAK,GAAK,CACxD,GACA,GACA,eAAoB,MAAO,GAAa,CACtC,GACA,eAAoB,OAAQ,GAAa,eAAiBqB,EAAKuT,SAAS+H,aAAc,KAExF,IACC,KACH,eAAoB,IAAI,GACU,IAArCtb,EAAKuT,SAASiJ,oBACV,iBAAc,eAAoB,MAAO,KAC1C,eAAoB,IAAI,GAC5B,GACA,eAAoB,QAAS,GAAa,CACxC,GACA,eAAoB,QAAS,KAAM,CACjC,eAAoB,KAAM,KAAM,CAC9B,eAAoB,KAAM,KAAM,eAAiBxc,EAAKuT,SAASkB,cAAe,GAC9E,eAAoB,KAAM,GAAa,eAAiBzU,EAAKuT,SAAS4P,KAAM,GAC5E,eAAoB,KAAM,GAAa,eAAiBnjB,EAAK+S,WAAW/S,EAAKuT,SAAS6P,YAAa,GACnG,eAAoB,KAAM,GAAa,eAAiBpjB,EAAK+S,WAAW/S,EAAKuT,SAAS4P,IAAMnjB,EAAKuT,SAAS6P,YAAa,SAI7H,GACA,eAAoB,QAAS,GAAa,CACxC,eAAgB,eAAoB,QAAS,CAC3ClN,KAAM,WACN1W,GAAI,UACJu3B,QAAS/2B,EAAKouB,UACd,sBAAuBnuB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAKuT,SAASqQ,yBAA4B5W,IACvGulB,SAAUtyB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAWhN,EAAKg3B,eAAeh3B,EAAKouB,cACvE,KAAM,GAAI,IAAc,CACzB,CAAC,OAAiBpuB,EAAKuT,SAASqQ,4BAElC,OC9JN,IAAqB,GAArB,yG,0BAGU,EAAAV,wBAAqD,GAUrD,EAAA+T,IAAM,EAAKnU,YAAYvf,KAAKd,SAAW,EAAK8Q,SAASqB,UAAY,EAAKrB,SAASsB,aAE/E,EAAAuZ,WAAY,EAftB,iDAKE,WACE,OAAO,GAAgBc,OAAO,gBANlC,oBASE,WACE,OAAO,GAAgBA,OAAO,cAVlC,qBAiBE,WACE,OAAO9hB,GAAMrB,QAAQC,qBAlBzB,qBAqBE,WAAO,WACL9M,OAAO+zB,SAAS,EAAG,GACnB3vB,KAAKiQ,SAASqQ,0BAA2B,EACzCtgB,KAAKkK,UAAU8S,KAAK,YAAahd,KAAK8qB,WACtC9qB,KAAK4vB,WAAU,WACb,EAAK3f,SAASqQ,0BAA2B,EACzC,EAAKV,wBAA0B,EAAK3P,SAAS2P,wBAC7C,EAAK3P,SAAS4P,IAAM,EAAK5P,SAAS2P,wBAAwBlnB,OAAS,EAAI,EAAKuX,SAAS2P,wBAAwBlnB,OAAS,EAAKuX,SAAS4P,IAAM,OA5BhJ,4BAgCU,SAAezlB,GACrB4F,KAAK8qB,WAAa1wB,EAClB4F,KAAKkK,UAAU8S,KAAK,YAAahd,KAAK8qB,aAlC1C,uBAqCE,WACE,OAAOhhB,GAAMrB,QAAQE,iBAtCzB,wBAyCU,SAAW5N,GACjB,IAAM8X,EAAQ,IAAI,GAClB,OAAOA,EAAMC,YAAY/X,OA3C7B,GAA6C,SAAxB,GAAe,gBAPnC,gBAAQ,CACPyQ,MAAO,CACLyE,SAAU,IAEZkgB,MAAO,CAAC,mBACRpjB,WAAY,MAEO,c,UCRrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UC8BM,GAArB,yG,0BAIU,EAAAlB,GAAK,IAAI,GAET,EAAAgH,MAAQ,IAAI,GAMZ,EAAAuX,SAAW,CACjB,IAAI,GAAQsB,GAAKC,QAAS,GAAQA,SAClC,IAAI,GAAQD,GAAKE,OAAQ,GAAQA,QACjC,IAAI,GAAQF,GAAKG,QAAS,GAAQA,SAClC,IAAI,GAAQH,GAAKK,aAAc,GAAQA,eAGjC,EAAA5c,eAAgB,EAChB,EAAAoX,YAAa,EACb,EAAAuE,WAAY,EACZ,EAAAE,eAAgB,EAChB,EAAAJ,eAAiB,GACjB,EAAAG,eAAiB,GACjB,EAAAL,mBAAoB,EAEpB,EAAA4F,eAAiB,EACjB,EAAA/F,aAAc,EAEd,EAAAhjB,aAA4B,CAClCuY,UAAW,EACXF,wBAAyB,GACzBC,IAAK,GAEC,EAAA1O,aAAe,GAEf,EAAA4K,YAAa,EAEb,EAAAlX,gBAAkB,EAElB,EAAA2lB,0CAA2C,EAC3C,EAAAC,kCAAoC,GA1C9C,gDAQE,WACE,OAAO3gB,GAAMrB,QAAQC,qBATzB,qBA4CE,WAAO,WACL1I,KAAK+b,WAAape,EAASiU,QAAQ,cAAgB,EACnD,IAAMoR,EAAmBhjB,KAAK2M,OAAOtK,MAAMsc,IAE3B,gBAAZqE,GACFhjB,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,IAE7B,WAAZynB,GAEFpnB,OAAOkM,eAAeC,QAAQ,UAAW,KAG3C/H,KAAK+qB,eAAiB,iBAEtB/qB,KAAKkK,UAAUC,GAAG,aAAa,SAACuH,GAG5B,EAAKoZ,YADHpZ,OA5DV,2BAoEE,WAAa,WACX1R,KAAKkK,UAAUG,eAAe,aAAa,WAAQ,EAAKygB,WAAY,OArExE,qBAwEE,WACElvB,OAAO+zB,SAAS,EAAG,GACnB3vB,KAAKqiB,iBAEL,IAAMuR,EAAe5zB,KAAK2M,OAAOtK,MAAMqc,IAEjCmV,EAAYj4B,OAAOkM,eAAe8U,QAAQ,gBAChD5c,KAAKuH,aAA4B,MAAbssB,EAAoB,KAAOjxB,KAAKia,MAAMgX,GACjC,MAArB7zB,KAAKuH,aACPvH,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,KAE3CyE,KAAKsqB,iBACQ,MAATsJ,GACF5zB,KAAKumB,YAAa,EAClBvmB,KAAKmR,aAAenR,KAAKuH,aAAaqL,MAAQ,KAE9C5S,KAAKumB,YAAa,EAClBvmB,KAAKmR,aAAenR,KAAKuH,aAAaqL,MAAQ,KAGlD5S,KAAKmP,eAAgB,IA5FzB,4BA+FU,WACN,IAAM6T,EAAmBhjB,KAAK2M,OAAOtK,MAAMsc,IAE3C,OADA3e,KAAK4qB,eAAiB,OACd5H,GACN,KAAK,GAAQ2I,QACX3rB,KAAK8zB,SAAS,GACd9zB,KAAK0qB,mBAAoB,EACrB1qB,KAAKuH,aAAagX,WAAe9gB,SAAS,KAC5CuC,KAAK4qB,eAAiB,OAIxB5qB,KAAK+qB,eAAiB,iBACtB,MACF,KAAK,GAAQa,OACX5rB,KAAK8zB,SAAS,GACd9zB,KAAK0qB,mBAAoB,EACzB1qB,KAAK+qB,eAAiB,mBACtB,MACF,KAAK,GAAQc,QACX7rB,KAAK8zB,SAAS,GACd9zB,KAAK0qB,mBAAoB,EACzB1qB,KAAK+qB,eAAiB,eACtB,MACF,KAAK,GAAQgB,aACX/rB,KAAK8zB,SAAS,GACd9zB,KAAK0qB,mBAAoB,EACzB1qB,KAAKgrB,eAAgB,EACrBhrB,KAAK+qB,eAAiB,YACtB,MACF,SAGF,OAAO/H,IAhIX,sBAmIU,SAASznB,GACf,IAAK,IAAI/C,EAAI,EAAGA,EAAIwH,KAAKoqB,SAAS1xB,OAAQF,IACxCwH,KAAKoqB,SAAS5xB,GAAG2I,OAASmqB,GAAgBG,QAE5C,IAAK,IAAI,EAAI,EAAG,EAAIlwB,EAAG,IACrByE,KAAKoqB,SAAS,GAAGjpB,OAASmqB,GAAgBiB,KAI5C,GAFAvsB,KAAKoqB,SAAS7uB,GAAG4F,OAASmqB,GAAgBsB,QAEhC,IAANrxB,EACF,IAAK,IAAI,EAAI,EAAG,EAAI,EAAG,IACrByE,KAAKoqB,SAAS,GAAGjpB,OAASmqB,GAAgBjrB,UA9IlD,wBAsJU,WACN,IAAM2iB,EAAmBhjB,KAAK2M,OAAOtK,MAAMsc,IAC3C,OAAQqE,GACN,KAAK,GAAQ2I,QACX3rB,KAAKkK,UAAU8S,KAAK,mBACpB,MACF,KAAK,GAAQ4O,OACX5rB,KAAKorB,SAASprB,KAAKoqB,SAAS,IAC5B,MACF,KAAK,GAAQyB,QACX7rB,KAAKorB,SAASprB,KAAKoqB,SAAS,IAC5B,MACF,KAAK,GAAQ2B,aAEX/rB,KAAKkK,UAAU8S,KAAK,mBACpB,MACF,QACE,SAvKR,sBA4KU,SAASljB,GACf,IAAM0yB,EAAe5pB,KAAKC,UAAU7C,KAAK2M,OAAOtK,OAC1CoqB,EAAW7pB,KAAKia,MAAM2P,GAC5BC,EAAS9N,IAAM7kB,EAAEyxB,aACjBvrB,KAAKye,QAAQzlB,KAAK,CAAEqJ,MAAOoqB,MAhL/B,2BAmLU,WACN3iB,GAAMwV,SAAS,kBAAmBtf,KAAKuH,cACvC,IAAMyb,EAAWhjB,KAAK2M,OAAOtK,MAAMsc,IACnC,OAAQqE,GACN,KAAK,GAAQ2I,QACX3rB,KAAKorB,SAASprB,KAAKoqB,SAAS,IAC5B,MACF,KAAK,GAAQwB,OACX5rB,KAAKorB,SAASprB,KAAKoqB,SAAS,IAC5B,MACF,KAAK,GAAQyB,QACX7rB,KAAK+zB,qBAEL,MACF,KAAK,GAAQhI,aACXjiB,GAAMwV,SAAS,gBAAiB,GAChCtf,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,EAAG8G,MAAO,CAAEsc,IAAK,aAC5D,MACF,QACE,SAtMR,yBA2MU,WAAW,aACjB3e,KAAKmP,eAAgB,EACrBnP,KAAKuH,aAAayR,kBAAmB,EACrChZ,KAAKuH,aAAa+Y,0BAA2B,EACa,KAAtD,UAAAtgB,KAAKuH,aAAaqY,+BAAlB,eAA2ClnB,UAC7CsH,KAAKuH,aAAaqY,wBAAwB,GAAGV,cAAgBlf,KAAKuH,aAAasY,KAEjF7f,KAAKuH,aAAamY,sBAAgE,GAAxC1f,KAAKuH,aAAa2R,mBAA0BlZ,KAAKuH,aAAaoY,UAAY,KAEpH,IACmB,EAcZ,EAfDqU,EAAuBh0B,KAAKuH,aAClB,GAAZysB,EAAM93B,GAER,UAAA8D,KAAK8L,WAAWjF,mBAAhB,SAA6BlC,qCAAqCqvB,GAC/D3wB,MAAK,SAAAyZ,GAEJlhB,OAAOkM,eAAesa,WAAW,gBACjC,EAAKlY,UAAU8S,KAAK,gBAAiB,UAAW,kBAChD,EAAKyB,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,EAAG8G,MAAO,CAAEsc,IAAK,aAC5D,EAAKxP,eAAgB,KAEtB4N,OAAM,SAAAhS,GACL,EAAKoE,eAAgB,EACrB,EAAK8kB,oBAAoBlpB,MAI7B,UAAA/K,KAAK8L,WAAWjF,mBAAhB,SAA6BtB,oCAAoCyuB,GAC9D3wB,MAAK,SAAAyZ,GAEJlhB,OAAOkM,eAAesa,WAAW,gBACjC,EAAKlY,UAAU8S,KAAK,gBAAiB,UAAW,kBAChD,EAAKyB,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,EAAG8G,MAAO,CAAEsc,IAAK,aAC5D,EAAKxP,eAAgB,KAEtB4N,OAAM,SAAAhS,GACL,EAAKoE,eAAgB,EACrB,EAAK8kB,oBAAoBlpB,QA/OnC,sBAqPU,WAEF/K,KAAKumB,WACPvmB,KAAKkK,UAAU8S,KAAK,iBAEpBhd,KAAKkK,UAAU8S,KAAK,gBA1P1B,gCA+PU,WACFhd,KAAKuqB,YACPvqB,KAAKkK,UAAU8S,KAAK,8BAA+Bhd,KAAKk0B,cAExDl0B,KAAKm0B,kCAnQX,2CAuQU,WAA6B,eACnCn0B,KAAKmP,eAAgB,EACrBnP,KAAKuH,aAAayR,kBAAmB,EACqB,KAAtD,UAAAhZ,KAAKuH,aAAaqY,+BAAlB,eAA2ClnB,UAC7CsH,KAAKuH,aAAaqY,wBAAwB,GAAGV,cAAgBlf,KAAKuH,aAAasY,KAEjF7f,KAAKuH,aAAamY,sBAAgE,GAAxC1f,KAAKuH,aAAa2R,mBAA0BlZ,KAAKuH,aAAaoY,UAAY,KAEpH,IAAMqU,EAAuBh0B,KAAKuH,aAClCysB,EAAMI,SAAW,CACf,CACE,iBAAoB,GACpB,cAAiB,EACjB,eAAkBp0B,KAAKuH,aAAa8Y,iBAIxC,UAAArgB,KAAK8L,WAAWjF,mBAAhB,SAA6BlC,qCAAqCqvB,GAC/D3wB,MAAK,SAAAyZ,GAEJ,EAAKjY,gBAAkBiY,EAAI5kB,KAAKA,KAChC,EAAKiX,eAAgB,EACrB,EAAKic,SAAS,EAAKhB,SAAS,OAE7BrN,OAAM,SAAAhS,GACL,EAAKoE,eAAgB,EAErB,EAAK8kB,oBAAoBlpB,QAlSjC,mFAuSU,WAAmBylB,GAAnB,kGAENxwB,KAAKuH,aAAa6Y,iBAAmBoQ,EACrCxwB,KAAKuH,aAAayR,kBAAmB,EACqB,KAAtD,UAAAhZ,KAAKuH,aAAaqY,+BAAlB,eAA2ClnB,UAC7CsH,KAAKuH,aAAaqY,wBAAwB,GAAGV,cAAgBlf,KAAKuH,aAAasY,KAEjF7f,KAAKuH,aAAamY,sBAAgE,GAAxC1f,KAAKuH,aAAa2R,mBAA0BlZ,KAAKuH,aAAaoY,UAAY,KAE9GqU,EAAuBh0B,KAAKuH,aAE9BvH,KAAKswB,eAAiB,GAAKtwB,KAAKuH,aAAa8Y,iBAAmBrgB,KAAKuH,aAAasY,IAAM7f,KAAKuH,aAAauY,WAE5GkU,EAAMI,SAAW,CAAC,CAChB,iBAAoB,GACpB,cAAiB,EACjB,eAAkBp0B,KAAKswB,iBAEkB,KAAvCtwB,KAAKuH,aAAa6Y,kBACpB4T,EAAMI,SAASp7B,KAAK,CAClB,iBAAoBgH,KAAKuH,aAAa6Y,iBACtC,cAAiB,EACjB,eAAkBpgB,KAAKuH,aAAa8Y,kBAKxC2T,EAAMI,SAAW,CAAC,CAChB,iBAAoBp0B,KAAKuH,aAAa6Y,iBACtC,cAAiB,EACjB,eAAkBpgB,KAAKuH,aAAa8Y,iBAGxCrgB,KAAKmP,eAAgB,EACrB,UAAAnP,KAAK8L,WAAWjF,mBAAhB,SAA6BlC,qCAAqCqvB,GAC/D3wB,MAAK,SAAAyZ,GACJ,EAAKjY,gBAAkBiY,EAAI5kB,KAAKA,KAChC,EAAKiX,eAAgB,EACrB,EAAKic,SAAS,EAAKhB,SAAS,OAE7BrN,OAAM,SAAAhS,GACL,EAAKoE,eAAgB,EAErB,EAAK8kB,oBAAoBlpB,MA3CvB,gDAvSV,+IAuVU,qIACA/K,KAAK8L,WAAWjF,mBADhB,aACA,EAA6BzB,iCAChC/B,MAAK,SAAAyZ,GACJ,EAAKwT,eAAiBxT,EAAI5kB,KAAKA,QAEhC6kB,OAAM,SAAAhS,GACL,EAAKc,GAAGb,eAAe,+BAAiCpI,KAAKC,UAAUkI,IACvE,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,+BAAiCjS,EAAI7J,SAASC,WAP1F,gDAvVV,0FAkWU,SAAoB4J,GAAQ,QAClC,GAAI,UAAAA,EAAI7J,gBAAJ,SAAchJ,MAAwC,IAAhC,UAAA6S,EAAI7J,SAAShJ,YAAb,eAAmBm8B,WAAgB,OAC3Dr0B,KAAK8qB,WAAY,EACjB9qB,KAAKkK,UAAU8S,KAAK,gBAAiB,QAAS,+JAC9Chd,KAAK6L,GAAGb,eAAe,6BAA+BpI,KAAKC,UAAUkI,EAAI7J,WAIzElB,KAAKwqB,0CAA2C,EAGhD,IAAM8J,EAAct0B,KAAKu0B,kBAAL,UAAuBxpB,EAAI7J,SAAShJ,YAApC,aAAuB,EAAmBsR,SAC9DxJ,KAAKyqB,kCAAoC,2JAA6J6J,EAAc,4DAEpNt0B,KAAKorB,SAASprB,KAAKoqB,SAAS,SAK5BpqB,KAAKkK,UAAU8S,KAAK,gBAAiB,QAAS,kDAC9Chd,KAAK6L,GAAGb,eAAe,6BAA+BpI,KAAKC,UAAUkI,MAtX3E,+BA0XU,SAAkBypB,GAExB,IAAMC,EAAc7wB,OAAO4wB,GAErBE,EAAQ,0BACRC,EAAQF,EAAYE,MAAMD,GAEhC,OAAOC,EAAQA,EAAM,GAAK,OAjY9B,GAAuC,SAErC,gBADC,gBAAO,CAAEhU,KAAM,aAAcrQ,QAAS,IAAI,M,kCADxB,GAAS,gBApB7B,gBAAQ,CACPvD,WAAY,CACV8T,eAAA,GACA+T,cAAA,GACAC,iBAAA,GACAC,gBAAA,GACAC,iBAAA,GACAC,sBAAA,IAEFC,iBATO,SASUpoB,EAAS8T,EAAW2I,GACnC,IAAM4L,EAAUt5B,OAAOkM,eAAe8U,QAAQ,gBAC1C/P,EAAGvS,OAASuD,EAAOU,KAAKN,KAAK1C,GAAiB,OAAZ25B,GACpCl1B,KAAK2qB,aACLrB,GAAK,IAELA,QAKe,c,UChCrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCPT,GAAe,SAAA/tB,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,UACtB,GAAa,CAAEA,MAAO,aACtB,GAA2B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,kBAAoB,mBAAoB,MACvI,GAA2B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,eAAiB,+BAAgC,MAChJ,GAA2B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,WAAa,MAAO,MACnH,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAClG,GAAa,CAAEA,MAAO,oBACtB,GAA0B,eAAiB,oCAC3C,GAA0B,eAAiB,mFAC3C,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAAc,CAAEA,MAAO,OACvB,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,CAAEoG,MAAO,CAAC,cAAc,+BAA+B,cAAc,SAAW,4BAA6B,MACpM,GAAc,CAAEpG,MAAO,gCACvB,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,oBAAsB,KAAM,MAC7H,GAAc,CAClB9N,IAAK,EACL8N,MAAO,kBAEH,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAEA,MAAO,6BAA+B,MAAO,MACpI,GAA2B,eAAiB,qBAC5C,GAAc,CAClB,GACA,IAEI,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAAc,CAAC,YACf,GAAc,CAAC,YACf,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,KAAM,CACrF,eAAoB,IAAK,CAAEA,MAAO,yBAC7C,MACE,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAEnG,SAAU,GAAOzM,EAAMC,GAC3B,IAAMmS,EAA4B,eAAkB,kBAC9Cib,EAA2B,eAAkB,iBAC7CoL,EAA2B,eAAkB,iBAC7C/E,EAA+B,eAAkB,qBACjDgF,EAA+B,eAAkB,qBAEvD,OAAQ,iBAAc,eAAoB,UAAW,GAAY,CAC9D14B,EAAKyS,eACD,iBAAc,eAAaL,EAA2B,CAAEzT,IAAK,KAC9D,eAAoB,IAAI,GAC5B,eAAa0uB,EAA0B,CACrCK,SAAU1tB,EAAK0tB,SACfC,aAAa,GACZ,KAAM,EAAG,CAAC,aACb,eAAoB,MAAO,GAAY,CACrC,GAC2B,eAA1B3tB,EAAK4tB,kBACD,iBAAc,eAAoB,OAAW,CAAEjvB,IAAK,GAAK,CACxD,GACA,GACA,GACA,eAAoB,MAAO,GAAY,CACrC,GACA,eAAoB,SAAU,KAAM,eAAiBqB,EAAK+S,WAAW/S,EAAK4zB,iBAAkB,GAC5F,KAEF,GACA,eAAoB,MAAO,GAAa,CACtC,GACA,eAAoB,MAAO,GAAa,CACtC,GACA,eAAa6E,EAA0B,CACrChsB,MAAO,cACPksB,WAAY34B,EAAK6zB,cACjB,sBAAuB5zB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK6zB,cAAiB7mB,IACnFqN,YAAa,iBACbnW,QAASlE,EAAK44B,iBACb,KAAM,EAAG,CAAC,aAAc,YACH,KAAvB54B,EAAK6zB,eAAwB7zB,EAAK6zB,eAAiB,GAC/C,iBAAc,eAAoB,MAAO,GAAa,KACvD,eAAoB,IAAI,OAGhC,GACA,eAAaH,EAA8B,CACzCG,cAAe7zB,EAAK6zB,cACpB,yBAA0B5zB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK6zB,cAAiB7mB,IACtF8mB,aAAc9zB,EAAK8zB,aACnB,wBAAyB7zB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK8zB,aAAgB9mB,IACpF+mB,cAAe/zB,EAAKg0B,sBACnB,KAAM,EAAG,CAAC,gBAAiB,eAAgB,mBAC7C,KACH,eAAoB,IAAI,GACD,iBAA1Bh0B,EAAK4tB,kBAA8D,IAAvB5tB,EAAKwI,eAC7C,iBAAc,eAAakwB,EAA8B,CACxD/5B,IAAK,EACL6J,cAAexI,EAAKwI,cACpB,yBAA0BvI,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAKwI,cAAiBwE,KACrF,KAAM,EAAG,CAAC,mBACb,eAAoB,IAAI,GAC5B,GACA,GACChN,EAAKguB,mBACD,iBAAc,eAAoB,SAAU,CAC3CrvB,IAAK,EACL8N,MAAO,6BACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKiuB,eACnDhb,SAAUjT,EAAKyS,eACd,eAAiBzS,EAAKkuB,gBAAiB,EAAG,KAC7C,eAAoB,IAAI,GAC5B,eAAoB,SAAU,CAC5BzhB,MAAO,kBACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKmuB,kBACnDlb,WAAYjT,EAAKouB,WAAapuB,EAAK62B,YAAc72B,EAAKyS,eACrD,CACD,eAAiB,eAAiBzS,EAAKquB,gBAAkB,IAAK,GAC9D,IACC,EAAG,IACN,OClHN,IAAM,GAAe,SAAAxvB,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,uBACtB,GAA2B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,eAAiB,gBAAiB,MACjI,GAA2B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,WAAa,MAAO,MACnH,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAClG,GAAa,CAAEA,MAAO,oBACtB,GAA0B,eAAiB,qEAC3C,GAA0B,eAAiB,gDAC3C,GAA0B,eAAiB,KAC3C,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAClG,GAAc,CAAEA,MAAO,sBACvB,GAA4B,IAAa,kBAAmB,eAAoB,QAAS,KAAM,CACtF,eAAoB,KAAM,KAAM,CAC9B,eAAoB,KAAM,KAAM,QAChC,eAAoB,KAAM,KAAM,WAChC,eAAoB,KAAM,CAAEA,MAAO,UAAY,UAC/C,eAAoB,KAAM,CAAEA,MAAO,UAAY,cAE5D,MACE,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,cAAe,MAC3G,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,CAAEA,MAAO,UAAY,CAClG,eAAoB,IAAK,CAAEA,MAAO,wBAClC,eAAiB,UAC5B,MACE,GAAc,CAAEA,MAAO,UAEvB,SAAU,GAAOzM,EAAMC,GAC3B,IAAMmS,EAA4B,eAAkB,kBAC9C2H,EAA4B,eAAkB,kBAEpD,OAAQ,iBAAc,eAAoB,UAAW,GAAY,CAC9D/Z,EAAKyS,eACD,iBAAc,eAAaL,EAA2B,CAAEzT,IAAK,KAC9D,eAAoB,IAAI,GAC5B,GACA,GACA,GACA,eAAoB,MAAO,GAAY,CACrC,GACA,eAAoB,SAAU,KAAM,eAAiBqB,EAAK+S,WAAW/S,EAAKgT,iBAAkB,GAC5F,GACA,eAAoB,OAAQ,CAC1BjG,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAK64B,cACnDpsB,MAAO,QACN,oBACH,KAEF,GACA,eAAoB,QAAS,GAAa,CACxC,GACA,eAAoB,QAAS,KAAM,CACjC,eAAoB,KAAM,KAAM,CAC9B,GACA,eAAoB,KAAM,KAAM,eAAiBzM,EAAK84B,aAAc,GACpE,GACA,eAAoB,KAAM,GAAa,CACrC,eAAa/e,EAA2B,CACtC0B,YAAazb,EAAKwa,gBAClB,uBAAwBva,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAKwa,gBAAmBxN,IACtF0O,UAAW1b,EAAK0b,UAChB,qBAAsBzb,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK0b,UAAa1O,IAC9E2O,cAAe3b,EAAK2b,cACpB,yBAA0B1b,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK2b,cAAiB3O,IACtF4O,SAAU5b,EAAK2c,UACf,oBAAqB1c,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK2c,UAAa3P,IAC7E8O,WAAY9b,EAAK+b,UAChB,KAAM,EAAG,CAAC,cAAe,YAAa,gBAAiB,WAAY,yBCjDlF,IAAqB,GAArB,yG,0BAMU,EAAA5M,GAAK,IAAI,GAET,EAAAgH,MAAQ,IAAI,GAEZ,EAAAnD,eAAiB,EAEjB,EAAAwH,gBAAqC,GAErC,EAAAmC,UAAY,CAAE5B,KAAM,WAAY4C,UAAU,GAC1C,EAAAjC,UAAwB,GACxB,EAAAC,cAAgB,EAChB,EAAAlJ,eAAgB,EAjB1B,gDAmBE,WACE,OAAOrF,GAAMrB,QAAQC,qBApBzB,8EAuBE,gHACE9M,OAAOkM,eAAesa,WAAW,SADnC,SAEQpiB,KAAKqiB,iBAFb,uBAGQriB,KAAK0c,eAHb,OAIE1c,KAAK4vB,WAAU,WACb,EAAK6F,eALT,gDAvBF,4IAgCU,gHACA9Y,EAAM/gB,OAAOkM,eAAe8U,QAAQ,OAAS,GACvC,KAARD,EAFE,gBAGJ3c,KAAKoY,UAAYxV,KAAKia,MAAMF,GAHxB,gDAKE3c,KAAK8L,WAAWrF,eALlB,aAKE,EAAyBnD,2BAC5BD,MAAK,SAACyZ,GACL,EAAK1E,UAAY0E,EAAI5kB,KAAKA,KAC1B0D,OAAOkM,eAAeC,QAAQ,KAAMnF,KAAKC,UAAU,EAAKuV,eAEzD2E,OAAM,SAAAhS,GACL,EAAKc,GAAGb,eAAe,6BAA+BpI,KAAKC,UAAUkI,IACrE,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,6BAA+BjS,MAZ7E,gDAhCV,gFAiDU,WAAS,aAEf,UAAA/K,KAAK8L,WAAWjF,mBAAhB,SAA6B5B,sDAAsDjF,KAAKkF,eACrF7B,MAAK,SAAAyZ,GACJ,EAAK5F,gBAAkB4F,EAAI5kB,KAAKA,KAChCgV,QAAQC,IAAI,EAAK+J,oBAElB6F,OAAM,SAAAhS,GACL,EAAKc,GAAGb,eAAe,+BAAiCpI,KAAKC,UAAUkI,IACvE,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,gCAAkCjS,QA1DxF,qFA8DU,qIACA/K,KAAK8L,WAAWjF,mBADhB,aACA,EAA6BzB,iCAChC/B,MAAK,SAAAyZ,GACJ,EAAKpN,eAAiBoN,EAAI5kB,KAAKA,QAEhC6kB,OAAM,SAAAhS,GACL,EAAKc,GAAGb,eAAe,+BAAiCpI,KAAKC,UAAUkI,IACvE,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,+BAAiCjS,EAAI7J,SAASC,WAP1F,gDA9DV,gFAyEE,WACE,OAAO,KAAO,IAAIrB,MAAQ0c,OAAO,gBA1ErC,wBA6EU,SAAWzhB,GACjB,OAAOiF,KAAK6S,MAAMC,YAAY/X,KA9ElC,uBAiFU,WACN+O,GAAMwV,SAAS,gBAAiB,GAChCtf,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,EAAG8G,MAAO,CAAEsc,IAAK,eAnFhE,+EAsFU,WAAef,GAAf,kGACN5d,KAAKmP,eAAgB,EACjByO,EAAO1D,UACLhI,EAAQ,GACR0L,EAAO1D,SAAStI,QAAQ,QAAU,IACpCM,EAAQ,mBAEN0L,EAAO1D,SAAStI,QAAQ,SAAW,IACrCM,EAAQ,2EAEV,UAAAlS,KAAK8L,WAAWjF,mBAAhB,SAA6B9B,8BAA8B6Y,EAAO1hB,IAC/DmH,MAAK,SAAAyZ,GACJ,IAAMe,EAAaf,EAAI5kB,KAAKA,KAAK4lB,UAC3BC,EAAOrR,SAASsR,cAAc,KACpCD,EAAK7gB,KAAO6E,IAAIkc,gBAAgB,EAAKC,cAAcL,EAAY3L,IAC/D6L,EAAKI,SAAWP,EAAO1D,SACvB6D,EAAKK,QACLrc,IAAIsc,gBAAgBN,EAAK7gB,MACzB,EAAKiS,eAAgB,KAEtB4N,OAAM,SAAAhS,GAEL,EAAKoE,eAAgB,EACrB,EAAKtD,GAAGb,eAAe,2BAA6BpI,KAAKC,UAAUkI,IACnE,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,2BAA6BjS,OAI/E,UAAA/K,KAAK8L,WAAWjF,mBAAhB,SAA6BxB,2CAA2CuY,EAAO1hB,IAC5EmH,MAAK,SAAAyZ,GACJ,IAAMe,EAAaf,EAAI5kB,KAAKA,KAAK4lB,UAC3BC,EAAOrR,SAASsR,cAAc,KACpCD,EAAK7gB,KAAO6E,IAAIkc,gBAAgB,EAAKC,cAAcL,EAAY,oBAC/DE,EAAKI,SAAWrB,EAAI5kB,KAAKA,KAAKoC,KAC9ByjB,EAAKK,QACLrc,IAAIsc,gBAAgBN,EAAK7gB,MACzB,EAAKiS,eAAgB,KAEtB4N,OAAM,SAAAhS,GACLmC,QAAQC,IAAIpC,GACZ,EAAKoE,eAAgB,EACrB,EAAKtD,GAAGb,eAAe,2BAA6BpI,KAAKC,UAAUkI,IACnE,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,2BAA6BjS,MA1C3E,gDAtFV,qFAqIU,SAAckH,EAAiBC,GACrC,OAAOlS,KAAK6S,MAAMyL,eAAerM,EAASC,OAtI9C,GAA+C,SAI7C,gBADC,gBAAO,CAAEyO,KAAM,aAAcrQ,QAAS,IAAI,M,kCAHxB,GAAiB,gBAPrC,gBAAQ,CACP9E,MAAO,CAAEtG,cAAeoW,QACxBvO,WAAY,CACV6T,eAAA,GACAC,eAAA,OAGiB,c,UCZrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,U,ICRNvX,IAAI,WAAWsJ,KAAK,Q,iDAA3B,eAAoC,QAApC,GAAoC,U,iBAOvB,IACbtY,KAAM,gBACNkR,MAAO,CACL6pB,WAAY/Z,OACZ1a,QAASjI,QAEXowB,MANa,SAMPvd,GACJ,MAA+B,gBAAiBA,EAAM5K,SAA9C80B,EAAR,EAAQA,SAAUC,EAAlB,EAAkBA,SASlB,OAPA,gBACE,kBAAMnqB,EAAM6pB,cACZ,SAACt6B,GACC46B,EAAS56B,MAIN,CAAE26B,cCnBb,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,MAErD,UC8BM,GAArB,yG,0BAIU,EAAA7pB,GAAK,IAAI,GAET,EAAAgH,MAAQ,IAAI,GAEZ,EAAAyU,aAAc,EAoBd,EAAAiJ,cAAgBd,IAChB,EAAAe,aAAe,GACf,EAAA+C,WAAY,EAEZ,EAAAjD,eAAiB,EAEjB,EAAAvU,YAAa,EAEb,EAAAqO,SAAW,CACjB,IAAI,GAAQsB,GAAKI,WAAY,GAAQA,YACrC,IAAI,GAAQJ,GAAKK,aAAc,GAAQA,eAGjC,EAAA5c,eAAgB,EAChB,EAAAoX,YAAa,EACb,EAAAuE,WAAY,EACZ,EAAAE,eAAgB,EAChB,EAAAJ,eAAiB,GACjB,EAAAG,eAAiB,GACjB,EAAAL,mBAAoB,EAEpB,EAAAxlB,cAAgB,EAEhB,EAAAowB,gBAAkB,CACxB,SAAY,MACZ,gBAAmB,SACnB,UAAa,EACb,2BAA6B,EAC7B,8BAAgC,EAChC,oCAAsC,EACtC,mBAAqB,EACrB,aAAe,EACf,gBAAkB,GA5DtB,gDAUE,WACE,OAAOxrB,GAAMrB,QAAQC,qBAXzB,2BAeS,SAAcgJ,EAAUkkB,GAC7Bh6B,OAAO+zB,SAAS,EAAG,GACfiG,EAAOhpB,SAASgF,QAAQ,iBAAmB,GAC7C5R,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,EAAG8G,MAAO,CAAEklB,OAAQvnB,KAAKsnB,YAAc,IAAM,OAE1FtnB,KAAKsqB,mBApBT,mCAwBS,WACLtqB,KAAK8uB,mBAzBT,qBA+DE,WAAO,WACL9uB,KAAK+b,WAAape,EAASiU,QAAQ,cAAgB,EACnD,IAAMkV,EAAkB9mB,KAAK2M,OAAOtK,MAAMsc,IAC3B,gBAAXmI,GACF9mB,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,IAM7CyE,KAAK+qB,eAAiB,eAEtB/qB,KAAKkK,UAAUC,GAAG,aAAa,SAACuH,GAG5B,EAAKoZ,YADHpZ,OA7EV,2BAqFE,WAAa,WACX1R,KAAKkK,UAAUG,eAAe,aAAa,WAAQ,EAAKygB,WAAY,OAtFxE,qBAyFE,WAEE,IAAMoK,EAAUt5B,OAAOkM,eAAe8U,QAAQ,SAE/B,MAAXsY,GACFl1B,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,IAE7CyE,KAAKqiB,iBACLriB,KAAKsqB,iBACLtqB,KAAKmP,eAAgB,IAlGzB,qFAqGU,qIACAnP,KAAK8L,WAAWjF,mBADhB,aACA,EAA6BzB,iCAChC/B,MAAK,SAAAyZ,GACJ,EAAKwT,eAAiBxT,EAAI5kB,KAAKA,QAEhC6kB,OAAM,SAAAhS,GACL,EAAKc,GAAGb,eAAe,+BAAiCpI,KAAKC,UAAUkI,IACvE,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,+BAAiCjS,EAAI7J,SAASC,WAP1F,gDArGV,qFAgHU,WACN,IAAM6hB,EAAmBhjB,KAAK2M,OAAOtK,MAAMsc,IAE3C,OADA3e,KAAK4qB,eAAiB,OACd5H,GACN,KAAK,GAAQ8I,WACX9rB,KAAK8zB,SAAS,GACd9zB,KAAK0qB,mBAAoB,EACzB1qB,KAAK4qB,eAAiB,OACtB5qB,KAAK+qB,eAAiB,eACtB,MAEF,KAAK,GAAQgB,aACX/rB,KAAK8zB,SAAS,GACd9zB,KAAK0qB,mBAAoB,EACzB1qB,KAAK+qB,eAAiB,YACtB,MACF,SAGF,OAAO/H,IAnIX,sBAsIU,SAASznB,GACf,IAAK,IAAI/C,EAAI,EAAGA,EAAIwH,KAAKoqB,SAAS1xB,OAAQF,IACxCwH,KAAKoqB,SAAS5xB,GAAG2I,OAASmqB,GAAgBG,QAE5C,IAAK,IAAI,EAAI,EAAG,EAAIlwB,EAAG,IACrByE,KAAKoqB,SAAS,GAAGjpB,OAASmqB,GAAgBiB,KAI5C,GAFAvsB,KAAKoqB,SAAS7uB,GAAG4F,OAASmqB,GAAgBsB,QAEhC,IAANrxB,EACF,IAAK,IAAI,EAAI,EAAG,EAAI,EAAG,IACrByE,KAAKoqB,SAAS,GAAGjpB,OAASmqB,GAAgBjrB,UAjJlD,wBAyJU,WACNL,KAAKkK,UAAU8S,KAAK,kBA1JxB,sBA4KU,SAASljB,GACf,IAAM0yB,EAAe5pB,KAAKC,UAAU7C,KAAK2M,OAAOtK,OAC1CoqB,EAAW7pB,KAAKia,MAAM2P,GAC5BC,EAAS9N,IAAM7kB,EAAEyxB,aACjBvrB,KAAKye,QAAQzlB,KAAK,CAAEqJ,MAAOoqB,MAhL/B,2BAmLU,WACN,IAAMzJ,EAAWhjB,KAAK2M,OAAOtK,MAAMsc,IACnC,OAAQqE,GACN,KAAK,GAAQ8I,WACX9rB,KAAKkK,UAAU8S,KAAK,8BAA+Bhd,KAAKk0B,cACxD,MACF,KAAK,GAAQnI,aACX/rB,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,IAC3C,MACF,QACE,SA7LR,+BAiMU,WACNuO,GAAMwV,SAAS,gBAAiB,GAChCtf,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,EAAG8G,MAAO,CAAEsc,IAAK,eAnMhE,mFAsMU,6GAEAqV,EAAiB,CACrB5T,iBAAkBpgB,KAAKwwB,aACvBrQ,cAAe,EACfE,eAAgBrgB,KAAKuwB,eAEvBvwB,KAAKmP,eAAgB,EACrB,UAAAnP,KAAK8L,WAAWjF,mBAAhB,SAA6BvB,qCAAqC0uB,GAC/D3wB,MAAK,SAAAyZ,GACJ,EAAK3N,eAAgB,EACrB,EAAKjK,cAAgB4X,EAAI5kB,KAAKA,KAC9B,EAAKkzB,SAAS,EAAKhB,SAAS,OAE7BrN,OAAM,SAAAhS,GACL,EAAKoE,eAAgB,EAErB,EAAK8kB,oBAAoBlpB,MAjBvB,gDAtMV,0FA2NU,SAAoBA,GAAQ,QAC9B,UAAAA,EAAI7J,gBAAJ,SAAchJ,MAAwC,IAAhC,UAAA6S,EAAI7J,SAAShJ,YAAb,eAAmBm8B,YAC3Cr0B,KAAK8qB,WAAY,EACjB9qB,KAAKkK,UAAU8S,KAAK,gBAAiB,QAAS,+JAC9Chd,KAAK6L,GAAGb,eAAe,6BAA+BpI,KAAKC,UAAUkI,EAAI7J,aAEzElB,KAAKkK,UAAU8S,KAAK,gBAAiB,QAAS,kDAC9Chd,KAAK6L,GAAGb,eAAe,6BAA+BpI,KAAKC,UAAUkI,OAlO3E,kCAsOU,SAAqB5J,GAE3BnB,KAAKuzB,UAAYpyB,IAxOrB,4BA2OU,WACNnB,KAAKkK,UAAU8S,KAAK,YAAahd,KAAKuwB,cAAgB,KA5O1D,wBA+OU,SAAWx1B,GACjB,OAAOiF,KAAK6S,MAAMC,YAAY/X,OAhPlC,GAAmC,SAEjC,gBADC,gBAAO,CAAE4lB,KAAM,aAAcrQ,QAAS,IAAI,M,kCAc3C,gBADC,gBAAM,W,6BAON,MAGD,gBADC,gBAAM,kB,qCAGN,MA1BkB,GAAK,gBAnBzB,gBAAQ,CACPvD,WAAY,CACV8T,eAAA,GACA+T,cAAA,GACApB,kBAAA,GACAqC,kBAAA,GACAC,cAAA,IAEF7F,WAAY,CAAEC,MAAA,SACd+E,iBATO,SASUpoB,EAAS8T,EAAW2I,GACnC,IAAM4L,EAAUt5B,OAAOkM,eAAe8U,QAAQ,SAC1C/P,EAAGvS,OAASuD,EAAOU,KAAKN,KAAK1C,GAAiB,OAAZ25B,GACpCl1B,KAAK2qB,aACLrB,GAAK,IAELA,QAIe,c,UC9BrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCPT,GAAe,SAAA/tB,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,iBACtB,GAAa,CAAEA,MAAO,aACtB,GAAa,CAAEA,MAAO,kBACtB,GAAa,CAAEA,MAAO,eACtB,GAA2B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,WAAa,MAAO,MACnH,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAClG,GAAa,CAAEA,MAAO,OACtB,GAA2B,IAAa,kBAAmB,eAAoB,SAAU,KAAM,QAAS,MACxG,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAClG,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,aAAe,oBAAqB,MACrI,GAAc,CAAEA,MAAO,aACvB,GAAc,CAAEA,MAAO,SACvB,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,CAAEA,MAAO,aAAe,gBAAiB,MACjI,GAAc,CAAEA,MAAO,aACvB,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAAc,CAAE9N,IAAK,GACrB,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,CAAE8N,MAAO,aAAe,mBAAoB,MACnI,GAAc,CAAC,YACf,GAAc,CAClB9N,IAAK,EACL8N,MAAO,kBAEH,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAEA,MAAO,6BAA+B,MAAO,MACpI,GAA2B,eAAiB,qBAC5C,GAAc,CAClB,GACA,IAEI,GAAc,CAClB9N,IAAK,EACL8N,MAAO,aAEH,GAAc,CAClB9N,IAAK,EACL8N,MAAO,aAEH,GAAc,CAAC,YAAa,YAC5B,GAAc,CAClB9N,IAAK,EACL8N,MAAO,kBAEH,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAEA,MAAO,6BAA+B,MAAO,MACpI,GAA2B,eAAiB,qBAC5C,GAAc,CAClB,GACA,IAEI,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAAc,CAAE9N,IAAK,GACrB,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,CAAE8N,MAAO,aAAe,CACtG,eAAiB,2BACjB,eAAoB,OAAQ,KAAM,gBAC7C,MACE,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,oBAAsB,iGAAkG,MACxN,GAAc,CAAC,YACf,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,aAAe,0BAA2B,MAC1I,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,oBAAsB,yEAA0E,MAChM,GAAc,CAAC,YACf,GAAc,CAClB9N,IAAK,EACL8N,MAAO,kBAEH,GAA4B,IAAa,kBAAmB,eAAoB,IAAK,CAAEA,MAAO,6BAA+B,MAAO,MACpI,GAA2B,eAAiB,qBAC5C,GAAc,CAClB,GACA,IAEI,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAAc,CAAC,YACf,GAAc,CAAC,YACf,GAA4B,IAAa,kBAAmB,eAAoB,OAAQ,KAAM,CACrF,eAAoB,IAAK,CAAEA,MAAO,yBAC7C,MACE,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MACnG,GAA4B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,gBAAiB,MAC7G,GAA4B,IAAa,kBAAmB,eAAoB,MAAO,KAAM,iDAAkD,MAE/I,SAAU,GAAOzM,EAAMC,GAC3B,IAAMmS,EAA4B,eAAkB,kBAC9Cib,EAA2B,eAAkB,iBAC7CgM,EAAsC,eAAkB,4BACxDrf,EAAsB,eAAkB,YAE9C,OAAQ,iBAAc,eAAoB,UAAW,GAAY,CAC9Dha,EAAKyS,eACD,iBAAc,eAAaL,EAA2B,CAAEzT,IAAK,KAC9D,eAAoB,IAAI,GAC5B,eAAa0uB,EAA0B,CACrCK,SAAU1tB,EAAK0tB,SACfC,aAAa,GACZ,KAAM,EAAG,CAAC,aACb,eAAoB,MAAO,GAAY,CACrC,eAAoB,MAAO,GAAY,eAAiB3tB,EAAK0c,aAAahI,aAAc,GAC7D,YAA1B1U,EAAK4tB,kBAAwD,KAAtB5tB,EAAK0c,cACxC,iBAAc,eAAoB,OAAW,CAAE/d,IAAK,GAAK,CACxD,eAAoB,MAAO,GAAY,eAAiBqB,EAAKswB,YAAa,GAC1E,GACA,GACA,eAAoB,MAAO,GAAY,CACrC,GACA,eAAiB,IAAM,eAAiBtwB,EAAKuwB,UAAW,KAE1D,GACA,eAAoB,MAAO,GAAa,CACtC,GACA,eAAoB,OAAQ,GAAa,eAAiBvwB,EAAK0c,aAAagG,iBAAkB,KAEhG,eAAoB,MAAO,GAAa,CACtC,GACA,eAAoB,OAAQ,GAAa,eAAiB1iB,EAAK0c,aAAapB,aAAc,KAE5F,GAC0C,IAAzCtb,EAAK0c,aAAaF,oBACd,iBAAc,eAAoB,MAAO,GAAa,CACrD,GACA,eAAgB,eAAoB,QAAS,CAC3CtG,KAAM,OACNgc,UAAW,KACX,sBAAuBjyB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK0c,aAAa2F,aAAgBrV,IAC/FmlB,QAASlyB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKoyB,mBACnDnf,SAAUjT,EAAKyS,eACd,KAAM,GAAI,IAAc,CACzB,CAAC,OAAazS,EAAK0c,aAAa2F,gBAElC,eAAoB,MAAO,CACzB5V,MAAO,eAAgB,CAAC,WAAY,CAA4C,KAA1CzM,EAAK0c,aAAa2F,aAAarmB,OAAgB,OAAS,OAC7F,eAAiBgE,EAAK0c,aAAa2F,aAAarmB,QAAU,iBAAkB,GACpC,KAA1CgE,EAAK0c,aAAa2F,aAAaiQ,QAC3B,iBAAc,eAAoB,MAAO,GAAa,KACvD,eAAoB,IAAI,MAE9B,eAAoB,IAAI,GAC5B,eAAoB,MAAO,KAAM,CACW,IAAzCtyB,EAAK0c,aAAaF,oBACd,iBAAc,eAAoB,MAAO,GAAa,uBACvD,eAAoB,IAAI,GACc,IAAzCxc,EAAK0c,aAAaF,oBACd,iBAAc,eAAoB,MAAO,GAAa,gCACvD,eAAoB,IAAI,GAC5B,eAAgB,eAAoB,QAAS,CAC3CtG,KAAM,OACNgc,UAAWlyB,EAAKs5B,UAChB,sBAAuBr5B,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK0c,aAAaL,QAAWrP,IAC1FmlB,QAASlyB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKoyB,mBACnDnf,SAAUjT,EAAKyS,eACd,KAAM,GAAI,IAAc,CACzB,CAAC,OAAazS,EAAK0c,aAAaL,WAElC,eAAoB,MAAO,CACzB5P,MAAO,eAAgB,CAAC,WAAY,CAAEzM,EAAK0c,aAAaL,QAAQrgB,SAAWgE,EAAKs5B,UAAY,OAAS,OACpG,eAAiBt5B,EAAK0c,aAAaL,QAAQrgB,QAAU,IAAM,eAAiBgE,EAAKs5B,WAAa,cAAe,GAC1E,KAArCt5B,EAAK0c,aAAaL,QAAQiW,QACtB,iBAAc,eAAoB,MAAO,GAAa,KACvD,eAAoB,IAAI,KAE9B,GAC0C,IAAzCtyB,EAAK0c,aAAaF,oBACd,iBAAc,eAAoB,MAAO,GAAa,CACrD,eAAoB,MAAO,KAAM,CAC/B,GACA,GACA,eAAgB,eAAoB,WAAY,CAC9C/P,MAAO,kBACPylB,UAAW,MACX,sBAAuBjyB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK0c,aAAa4F,eAAkBtV,IACjGiG,SAAUjT,EAAKyS,eACd,iBAAkB,EAAG,IAAc,CACpC,CAAC,OAAazS,EAAK0c,aAAa4F,kBAElC,eAAoB,MAAO,CACzB7V,MAAO,eAAgB,CAAC,WAAY,CAA8C,MAA5CzM,EAAK0c,aAAa4F,eAAetmB,OAAiB,OAAS,OAChG,eAAiBgE,EAAK0c,aAAa4F,eAAetmB,QAAU,kBAAmB,KAEpF,GACA,GACA,GACA,eAAgB,eAAoB,QAAS,CAC3Cka,KAAM,OACNgc,UAAW,MACX,sBAAuBjyB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK0c,aAAa6F,UAAavV,IAC5FmlB,QAASlyB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKoyB,mBACnDnf,SAAUjT,EAAKyS,eACd,KAAM,GAAI,IAAc,CACzB,CAAC,OAAazS,EAAK0c,aAAa6F,aAElC,eAAoB,MAAO,CACzB9V,MAAO,eAAgB,CAAC,WAAY,CAAyC,MAAvCzM,EAAK0c,aAAa6F,UAAUvmB,OAAiB,OAAS,OAC3F,eAAiBgE,EAAK0c,aAAa6F,UAAUvmB,QAAU,kBAAmB,GACrC,KAAvCgE,EAAK0c,aAAa6F,UAAU+P,QACxB,iBAAc,eAAoB,MAAO,GAAa,KACvD,eAAoB,IAAI,GAC5B,MAEF,eAAoB,IAAI,IAC3B,KACH,eAAoB,IAAI,GACD,iBAA1BtyB,EAAK4tB,kBACD,iBAAc,eAAayL,EAAqC,CAC/D16B,IAAK,EACLwJ,gBAAiBnI,EAAK0c,aAAavU,gBACnC,2BAA4BlI,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK0c,aAAavU,gBAAmB6E,IACvGusB,uBAAwBv5B,EAAK0c,aAAald,GAC1C,kCAAmCS,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAK0c,aAAald,GAAMwN,KAChG,KAAM,EAAG,CAAC,kBAAmB,4BAChC,eAAoB,IAAI,GAC5B,GACA,GACChN,EAAKguB,mBACD,iBAAc,eAAoB,SAAU,CAC3CrvB,IAAK,EACL8N,MAAO,6BACPM,QAAS9M,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAKhN,EAAKiuB,eACnDhb,SAAUjT,EAAKyS,eACd,eAAiBzS,EAAKkuB,gBAAiB,EAAG,KAC7C,eAAoB,IAAI,GAC5B,eAAoB,SAAU,CAC5BzhB,MAAO,kBACPM,QAAS9M,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAKhN,EAAKmuB,kBACrDlb,UAAWjT,EAAKouB,WAAapuB,EAAKyS,eACjC,CACD,eAAiB,eAAiBzS,EAAKquB,gBAAkB,IAAK,GAC9D,IACC,EAAG,IACN,KAEDruB,EAAKw5B,kBACD,iBAAc,eAAaxf,EAAqB,CAC/Crb,IAAK,EACL6U,QAASvT,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAKhN,EAAKw5B,kBAAmB,KACvE,CACD/lB,OAAQ,gBAAS,iBAAM,CACrB,OAEFvO,KAAM,gBAAS,iBAAM,CACnB,OAEF6X,OAAQ,gBAAS,iBAAM,CACrB,eAAoB,SAAU,CAC5BtQ,MAAO,wBACPM,QAAS9M,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAKhN,EAAKy5B,oBACpD,OACH,eAAoB,SAAU,CAC5BhtB,MAAO,uBACPM,QAAS9M,EAAO,MAAQA,EAAO,IAAM,SAAA+M,GAAM,OAAKhN,EAAKw5B,kBAAmB,KACvE,UAEL7lB,EAAG,KAEL,eAAoB,IAAI,KC9PhC,IAAM,GAAe,SAAA9U,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAAa,CAAE4N,MAAO,8BACtB,GAAa,CAAEA,MAAO,eACtB,GAA2B,IAAa,kBAAmB,eAAoB,MAAO,CAAEA,MAAO,WAAa,MAAO,MACnH,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAClG,GAAa,CAAC,aACd,GAA2B,IAAa,kBAAmB,eAAoB,KAAM,KAAM,MAAO,MAElG,SAAU,GAAOzM,EAAMC,GAC3B,IAAMowB,EAA+B,eAAkB,qBAEvD,OAAQ,iBAAc,eAAoB,UAAW,GAAY,CAC/D,eAAoB,MAAO,GAAY,eAAiBrwB,EAAKswB,YAAa,GAC1E,GACA,GACA,eAAoB,MAAO,CACzB7jB,MAAO,mBACP2Y,UAAWplB,EAAKuwB,UACf,KAAM,EAAG,IACZ,GACCvwB,EAAKwwB,WAAaxwB,EAAKwwB,UAAUx0B,OAAS,GACtC,iBAAc,eAAaq0B,EAA8B,CACxD1xB,IAAK,EACL6xB,UAAWxwB,EAAKwwB,UAChB,qBAAsBvwB,EAAO,KAAOA,EAAO,GAAK,SAAA+M,GAAM,OAAMhN,EAAKwwB,UAAaxjB,KAC7E,KAAM,EAAG,CAAC,eACb,eAAoB,IAAI,KCRhC,IAAqB,GAArB,yG,0BAOU,EAAAmC,GAAK,IAAI,GAET,EAAAgH,MAAQ,IAAI,GACZ,EAAA1D,eAAgB,EAEhB,EAAA+d,UAA+B,GAZzC,iDAcE,WACE,OAAO,GAAgBkJ,iBAAiB,gBAf5C,oBAkBE,WACE,OAAO,GAAgBA,iBAAiB,cAnB5C,qBAwBE,WACEp2B,KAAKytB,uBAzBT,gCA4BU,WAAkB,aACxBztB,KAAKmP,eAAgB,EACrB,UAAAnP,KAAK8L,WAAWjF,mBAAhB,SAA6B/B,sDAAsD9E,KAAK6E,iBACrFxB,MAAK,SAAAyZ,GACJ,EAAK3N,eAAgB,EACrB,EAAK+d,UAAUl0B,KAAK8jB,EAAI5kB,KAAKA,MAC7B,EAAKm+B,sBAAsB,EAAKJ,2BAEjClZ,OAAM,SAAAhS,GACL,EAAKoE,eAAgB,EACrBjC,QAAQC,IAAIpC,QAtCpB,mCA0CU,SAAsB7O,GAC5B,IAAIwe,EAAgB1a,KAAKktB,UAAU,GAAG1S,MAClC8b,EAA4Ct2B,KAAKktB,UAAU,GAAGtV,uBAElE8C,EAASA,EAAOC,QAAO,SAACM,GACtB,OAAOA,EAAEL,wBAA0B1e,KAGrCo6B,EAAmBA,EAAiB3b,QAAO,SAACtgB,GAE1C,OAAOA,EAAEugB,wBAA0B1e,KAErC8D,KAAKktB,UAAU,GAAG1S,MAAQE,EAC1B1a,KAAKktB,UAAU,GAAGtV,uBAAyB0e,IAvD/C,uBA2DU,WACNxsB,GAAMwV,SAAS,gBAAiB,GAChCtf,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,EAAG8G,MAAO,CAAEsc,IAAK,iBA7DhE,GAAsD,SAKpD,gBADC,gBAAO,CAAEgC,KAAM,aAAcrQ,QAAS,IAAI,M,kCAJxB,GAAwB,gBAT5C,gBAAQ,CACP9E,MAAO,CACL3G,gBAAiByW,OACjB2a,uBAAwB3a,QAE1BvO,WAAY,CACV2gB,kBAAA,OAGiB,c,UCbrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCcM,GAArB,yG,0BAIU,EAAA7hB,GAAK,IAAI,GAET,EAAAgH,MAAQ,IAAI,GAEZ,EAAAqjB,kBAAmB,EAEnB,EAAA5O,aAAc,EAKd,EAAAnY,eAAgB,EAChB,EAAA2b,WAAY,EACZ,EAAAE,eAAgB,EAChB,EAAAJ,eAAiB,GACjB,EAAAG,eAAiB,GACjB,EAAAL,mBAAoB,EAEpB,EAAA3O,YAAa,EAEb,EAAAka,uBAAyB,EAEzB,EAAA7c,aAAoB,CAC1Bld,GAAI,GACJ6iB,aAAc,GACd7F,mBAAoB,GACpB8F,eAAgB,GAChBjG,QAAS,GACTkG,UAAW,GACXC,cAAe,GACfE,gBAAiB,GACjBpH,YAAa,IAeP,EAAAoS,SAAW,CACjB,IAAI,GAAQsB,GAAKC,QAAS,GAAQA,SAClC,IAAI,GAAQD,GAAKK,aAAc,GAAQA,eApD3C,gDAYE,WACE,OAAOjiB,GAAMrB,QAAQC,qBAbzB,sBAsCE,WACE,OAAO,GAAgB6tB,KAAK,gBAvChC,oBA0CE,WACE,OAAO,GAAgBA,KAAK,cA3ChC,qBA8CE,WACE,OAAgD,IAAzCv2B,KAAKoZ,aAAaF,mBAA2B,GAAK,MA/C7D,2BAwDS,SAAcxH,EAAUkkB,GAC7Bh6B,OAAO+zB,SAAS,EAAG,GACfiG,EAAOhpB,SAASgF,QAAQ,iBAAmB,GAC7C5R,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,EAAG8G,MAAO,CAAEklB,OAAQvnB,KAAKsnB,YAAc,IAAM,OAE1FtnB,KAAKsqB,mBA7DT,qBAgEE,WAAO,WACLtqB,KAAK+b,WAAape,EAASiU,QAAQ,cAAgB,EACnD,IAAMkV,EAAkB9mB,KAAK2M,OAAOtK,MAAMsc,IAC3B,gBAAXmI,GACF9mB,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,IAM7CyE,KAAK+qB,eAAiB,OAEtB/qB,KAAKkK,UAAUC,GAAG,aAAa,SAACuH,GAG5B,EAAKoZ,YADHpZ,OA9EV,2BAsFE,WAAa,WACX1R,KAAKkK,UAAUG,eAAe,aAAa,WAAQ,EAAKygB,WAAY,OAvFxE,qBA0FE,WACElvB,OAAO+zB,SAAS,EAAG,GAEnB,IAAMuF,EAAUt5B,OAAOkM,eAAe8U,QAAQ,QACxC4Z,EAAgB56B,OAAOkM,eAAe8U,QAAQ,gBAEpC,OAAZsY,GAAsC,OAAlBsB,EAEtBx2B,KAAKoZ,aAAexW,KAAKia,MAAM2Z,GAE/Bx2B,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,IAE7CyE,KAAKsqB,iBACLtqB,KAAKmP,eAAgB,IAvGzB,4BA4GU,WACN,IAAM6T,EAAmBhjB,KAAK2M,OAAOtK,MAAMsc,IAE3C,OADA3e,KAAK4qB,eAAiB,OACd5H,GACN,KAAK,GAAQ2I,QACX3rB,KAAK8zB,SAAS,GACd9zB,KAAK0qB,mBAAoB,EACzB1qB,KAAK4qB,eAAiB,OACtB5qB,KAAK+qB,eAAiB,OACtB,MAEF,KAAK,GAAQgB,aACX/rB,KAAK8zB,SAAS,GACd9zB,KAAK0qB,mBAAoB,EACzB1qB,KAAK+qB,eAAiB,YACtB,MACF,SAGF,OAAO/H,IA/HX,sBAkIU,SAASznB,GACf,IAAK,IAAI/C,EAAI,EAAGA,EAAIwH,KAAKoqB,SAAS1xB,OAAQF,IACxCwH,KAAKoqB,SAAS5xB,GAAG2I,OAASmqB,GAAgBG,QAE5C,IAAK,IAAI,EAAI,EAAG,EAAIlwB,EAAG,IACrByE,KAAKoqB,SAAS,GAAGjpB,OAASmqB,GAAgBiB,KAI5C,GAFAvsB,KAAKoqB,SAAS7uB,GAAG4F,OAASmqB,GAAgBsB,QAEhC,IAANrxB,EACF,IAAK,IAAI,EAAI,EAAG,EAAI,EAAG,IACrByE,KAAKoqB,SAAS,GAAGjpB,OAASmqB,GAAgBjrB,UA7IlD,4BAqJU,WACNL,KAAK8qB,WAAY,EAC2B,IAAzC9qB,KAAKoZ,aAAaF,mBACnBlZ,KAAK8qB,UAAiD,KAArC9qB,KAAKoZ,aAAaL,QAAQiW,QAAwD,KAAvChvB,KAAKoZ,aAAa6F,UAAU+P,OAExFhvB,KAAK8qB,UAAiD,KAArC9qB,KAAKoZ,aAAaL,QAAQiW,QAA2D,KAA1ChvB,KAAKoZ,aAAa2F,aAAaiQ,OAE7FhvB,KAAKkK,UAAU8S,KAAK,YAAahd,KAAK8qB,aA5J1C,wBA+JU,WACN9qB,KAAKkK,UAAU8S,KAAK,iBAhKxB,sBAmKU,SAASljB,GACf,IAAM0yB,EAAe5pB,KAAKC,UAAU7C,KAAK2M,OAAOtK,OAC1CoqB,EAAW7pB,KAAKia,MAAM2P,GAC5BC,EAAS9N,IAAM7kB,EAAEyxB,aACjBvrB,KAAKye,QAAQzlB,KAAK,CAAEqJ,MAAOoqB,MAvK/B,2BA0KU,WACN,IAAMzJ,EAAWhjB,KAAK2M,OAAOtK,MAAMsc,IACnC,OAAQqE,GACN,KAAK,GAAQ2I,QACX3rB,KAAKk2B,kBAAmB,EACxB,MACF,KAAK,GAAQnK,aACXjiB,GAAMwV,SAAS,gBAAiB,GAChCtf,KAAKye,QAAQzlB,KAAK,CAAEsB,KAAMuD,EAAOU,KAAKN,KAAK1C,EAAG8G,MAAO,CAAEsc,IAAK,aAC5D,MACF,QACE,SArLR,4BA0LU,WAAc,aACpB3e,KAAKk2B,kBAAmB,EACxBl2B,KAAKmP,eAAgB,EACrB,UAAAnP,KAAK8L,WAAWjF,mBAAhB,SAA6BrB,mDAAmDxF,KAAKoZ,cAClF/V,MAAK,SAAAyZ,GAEJ,EAAK3N,eAAgB,EACrB,EAAKic,SAAS,EAAKhB,SAAS,OAE7BrN,OAAM,SAAAhS,GACL,EAAKoE,eAAgB,EACrB,EAAKtD,GAAGb,eAAe,6BAA+BpI,KAAKC,UAAUkI,IACrE,EAAKb,UAAU8S,KAAK,gBAAiB,QAAS,6BAA+BjS,EAAI7J,SAASC,eAtMlG,GAA0C,SAExC,gBADC,gBAAO,CAAEwf,KAAM,aAAcrQ,QAAS,IAAI,M,kCAuD3C,gBADC,gBAAM,W,6BAON,MA9DkB,GAAY,gBARhC,gBAAQ,CACPvD,WAAY,CACV8T,eAAA,GACA+T,cAAA,GACA6B,yBAAA,GACA3V,SAAA,OAGiB,c,UChBrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCPT,GAAe,SAAAvlB,GAAC,OAAK,eAAa,mBAAmBA,EAAEA,IAAI,iBAAcA,GACzE,GAA2B,IAAa,kBAAmB,eAAoB,MAAO,CAAE4N,MAAO,WAAa,CACnG,eAAoB,KAAM,KAAM,kCAChC,eAAoB,MAAO,CAAEA,MAAO,aAAe,6HAC9D,MAEE,SAAU,GAAOzM,EAAMC,GAC3B,IAAM+nB,EAA2B,eAAkB,iBAEnD,OAAQ,iBAAc,eAAaA,EAA0B,KAAM,CACjE,eAAgB,gBAAS,iBAAM,CAC7B,OAEFrU,EAAG,ICNP,IAAqB,GAArB,qIAAyC,SAApB,GAAW,gBAL/B,gBAAQ,CACPtD,WAAY,CACV0b,cAAA,OAGiB,c,UCFrB,MAAM,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAAS,IAAQ,CAAC,YAAY,qBAE1E,UCETiO,GAAgC,CACpC,CACE3jB,KAAMlV,EAAOU,KAAKF,UAAU3C,EAC5BpB,KAAMuD,EAAOU,KAAKF,UAAU9C,EAC5Bo7B,UAAW,IAEb,CACE5jB,KAAMlV,EAAOU,KAAKD,WAAW5C,EAC7BpB,KAAMuD,EAAOU,KAAKD,WAAW/C,EAC7Bo7B,UAAW,IAEb,CACE5jB,KAAMlV,EAAOU,KAAKI,YAAYjD,EAC9BpB,KAAMuD,EAAOU,KAAKI,YAAYpD,EAC9Bo7B,UAAW,IAEb,CAAE5jB,KAAM,mBACNzY,KAAM,YACNiuB,SAAU1qB,EAAOU,KAAKN,KAAK1C,GAC7B,CACEwX,KAAMlV,EAAOU,KAAKP,KAAKtC,EACvBiuB,KAAM,CAAEC,cAAc,GACtBrB,SAAU,CAAEjuB,KAAMuD,EAAOU,KAAKN,KAAK1C,GACnCjB,KAAMuD,EAAOU,KAAKP,KAAKzC,EACvBo7B,UAAW,GACXC,SAAU,CACR,CACE7jB,KAAMlV,EAAOU,KAAKN,KAAKvC,EACvBpB,KAAMuD,EAAOU,KAAKN,KAAK1C,EACvBo7B,UAAW,IAEb,CACE5jB,KAAMlV,EAAOU,KAAKC,MAAM9C,EACxBpB,KAAMuD,EAAOU,KAAKC,MAAMjD,EACxBo7B,UAAW,IAEb,CACE5jB,KAAMlV,EAAOU,KAAKJ,UAAUzC,EAC5BpB,KAAMuD,EAAOU,KAAKJ,UAAU5C,EAC5Bo7B,UAAW,IAEP,CACJ5jB,KAAMlV,EAAOU,KAAKE,aAAa/C,EAC/BpB,KAAMuD,EAAOU,KAAKE,aAAalD,EAC/Bo7B,UAAW,OAMbE,GAAS,gBAAa,CAC1B1T,QAAS,gBAAiB,KAC1BuT,YAGa,MC3DT,GAAc,IAAI,GAExB,GAAY/rB,kBACZ,GAAYC,gBAEZ,eAAU,IAAKyB,IAAIvC,IAAOuC,IAAI,IAAQyqB,MAAM,S,uGCZ5C,W,mCCAA,W,kCCAA,W,iFCAA,W,kCCAA,W,kCCAA,W,kCCAA,W,kCCAA,W,kCCAA,W,qBCAA78B,EAAOD,QAAU,IAA0B,+B,kCCA3C,W","file":"js/app.17ee0bd6.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([\"cbd6\",\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./snackbar.scss?vue&type=style&index=0&id=6821cd87&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./auto-login.scss?vue&type=style&index=0&id=0e8cc5fa&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./home.scss?vue&type=style&index=0&id=5c7f4c9b&scoped=true&lang=scss\"","module.exports = __webpack_public_path__ + \"img/logo_vertical.4675ddc6.svg\";","var map = {\n\t\"./af\": \"2bfb\",\n\t\"./af.js\": \"2bfb\",\n\t\"./ar\": \"8e73\",\n\t\"./ar-dz\": \"a356\",\n\t\"./ar-dz.js\": \"a356\",\n\t\"./ar-kw\": \"423e\",\n\t\"./ar-kw.js\": \"423e\",\n\t\"./ar-ly\": \"1cfd\",\n\t\"./ar-ly.js\": \"1cfd\",\n\t\"./ar-ma\": \"0a84\",\n\t\"./ar-ma.js\": \"0a84\",\n\t\"./ar-sa\": \"8230\",\n\t\"./ar-sa.js\": \"8230\",\n\t\"./ar-tn\": \"6d83\",\n\t\"./ar-tn.js\": \"6d83\",\n\t\"./ar.js\": \"8e73\",\n\t\"./az\": \"485c\",\n\t\"./az.js\": \"485c\",\n\t\"./be\": \"1fc1\",\n\t\"./be.js\": \"1fc1\",\n\t\"./bg\": \"84aa\",\n\t\"./bg.js\": \"84aa\",\n\t\"./bm\": \"a7fa\",\n\t\"./bm.js\": \"a7fa\",\n\t\"./bn\": \"9043\",\n\t\"./bn-bd\": \"9686\",\n\t\"./bn-bd.js\": \"9686\",\n\t\"./bn.js\": \"9043\",\n\t\"./bo\": \"d26a\",\n\t\"./bo.js\": \"d26a\",\n\t\"./br\": \"6887\",\n\t\"./br.js\": \"6887\",\n\t\"./bs\": \"2554\",\n\t\"./bs.js\": \"2554\",\n\t\"./ca\": \"d716\",\n\t\"./ca.js\": \"d716\",\n\t\"./cs\": \"3c0d\",\n\t\"./cs.js\": \"3c0d\",\n\t\"./cv\": \"03ec\",\n\t\"./cv.js\": \"03ec\",\n\t\"./cy\": \"9797\",\n\t\"./cy.js\": \"9797\",\n\t\"./da\": \"0f14\",\n\t\"./da.js\": \"0f14\",\n\t\"./de\": \"b469\",\n\t\"./de-at\": \"b3eb\",\n\t\"./de-at.js\": \"b3eb\",\n\t\"./de-ch\": \"bb71\",\n\t\"./de-ch.js\": \"bb71\",\n\t\"./de.js\": \"b469\",\n\t\"./dv\": \"598a\",\n\t\"./dv.js\": \"598a\",\n\t\"./el\": \"8d47\",\n\t\"./el.js\": \"8d47\",\n\t\"./en-au\": \"0e6b\",\n\t\"./en-au.js\": \"0e6b\",\n\t\"./en-ca\": \"3886\",\n\t\"./en-ca.js\": \"3886\",\n\t\"./en-gb\": \"39a6\",\n\t\"./en-gb.js\": \"39a6\",\n\t\"./en-ie\": \"e1d3\",\n\t\"./en-ie.js\": \"e1d3\",\n\t\"./en-il\": \"7333\",\n\t\"./en-il.js\": \"7333\",\n\t\"./en-in\": \"ec2e\",\n\t\"./en-in.js\": \"ec2e\",\n\t\"./en-nz\": \"6f50\",\n\t\"./en-nz.js\": \"6f50\",\n\t\"./en-sg\": \"b7e9\",\n\t\"./en-sg.js\": \"b7e9\",\n\t\"./eo\": \"65db\",\n\t\"./eo.js\": \"65db\",\n\t\"./es\": \"898b\",\n\t\"./es-do\": \"0a3c\",\n\t\"./es-do.js\": \"0a3c\",\n\t\"./es-mx\": \"b5b7\",\n\t\"./es-mx.js\": \"b5b7\",\n\t\"./es-us\": \"55c9\",\n\t\"./es-us.js\": \"55c9\",\n\t\"./es.js\": \"898b\",\n\t\"./et\": \"ec18\",\n\t\"./et.js\": \"ec18\",\n\t\"./eu\": \"0ff2\",\n\t\"./eu.js\": \"0ff2\",\n\t\"./fa\": \"8df4\",\n\t\"./fa.js\": \"8df4\",\n\t\"./fi\": \"81e9\",\n\t\"./fi.js\": \"81e9\",\n\t\"./fil\": \"d69a\",\n\t\"./fil.js\": \"d69a\",\n\t\"./fo\": \"0721\",\n\t\"./fo.js\": \"0721\",\n\t\"./fr\": \"9f26\",\n\t\"./fr-ca\": \"d9f8\",\n\t\"./fr-ca.js\": \"d9f8\",\n\t\"./fr-ch\": \"0e49\",\n\t\"./fr-ch.js\": \"0e49\",\n\t\"./fr.js\": \"9f26\",\n\t\"./fy\": \"7118\",\n\t\"./fy.js\": \"7118\",\n\t\"./ga\": \"5120\",\n\t\"./ga.js\": \"5120\",\n\t\"./gd\": \"f6b4\",\n\t\"./gd.js\": \"f6b4\",\n\t\"./gl\": \"8840\",\n\t\"./gl.js\": \"8840\",\n\t\"./gom-deva\": \"aaf2\",\n\t\"./gom-deva.js\": \"aaf2\",\n\t\"./gom-latn\": \"0caa\",\n\t\"./gom-latn.js\": \"0caa\",\n\t\"./gu\": \"e0c5\",\n\t\"./gu.js\": \"e0c5\",\n\t\"./he\": \"c7aa\",\n\t\"./he.js\": \"c7aa\",\n\t\"./hi\": \"dc4d\",\n\t\"./hi.js\": \"dc4d\",\n\t\"./hr\": \"4ba9\",\n\t\"./hr.js\": \"4ba9\",\n\t\"./hu\": \"5b14\",\n\t\"./hu.js\": \"5b14\",\n\t\"./hy-am\": \"d6b6\",\n\t\"./hy-am.js\": \"d6b6\",\n\t\"./id\": \"5038\",\n\t\"./id.js\": \"5038\",\n\t\"./is\": \"0558\",\n\t\"./is.js\": \"0558\",\n\t\"./it\": \"6e98\",\n\t\"./it-ch\": \"6f12\",\n\t\"./it-ch.js\": \"6f12\",\n\t\"./it.js\": \"6e98\",\n\t\"./ja\": \"079e\",\n\t\"./ja.js\": \"079e\",\n\t\"./jv\": \"b540\",\n\t\"./jv.js\": \"b540\",\n\t\"./ka\": \"201b\",\n\t\"./ka.js\": \"201b\",\n\t\"./kk\": \"6d79\",\n\t\"./kk.js\": \"6d79\",\n\t\"./km\": \"e81d\",\n\t\"./km.js\": \"e81d\",\n\t\"./kn\": \"3e92\",\n\t\"./kn.js\": \"3e92\",\n\t\"./ko\": \"22f8\",\n\t\"./ko.js\": \"22f8\",\n\t\"./ku\": \"2421\",\n\t\"./ku.js\": \"2421\",\n\t\"./ky\": \"9609\",\n\t\"./ky.js\": \"9609\",\n\t\"./lb\": \"440c\",\n\t\"./lb.js\": \"440c\",\n\t\"./lo\": \"b29d\",\n\t\"./lo.js\": \"b29d\",\n\t\"./lt\": \"26f9\",\n\t\"./lt.js\": \"26f9\",\n\t\"./lv\": \"b97c\",\n\t\"./lv.js\": \"b97c\",\n\t\"./me\": \"293c\",\n\t\"./me.js\": \"293c\",\n\t\"./mi\": \"688b\",\n\t\"./mi.js\": \"688b\",\n\t\"./mk\": \"6909\",\n\t\"./mk.js\": \"6909\",\n\t\"./ml\": \"02fb\",\n\t\"./ml.js\": \"02fb\",\n\t\"./mn\": \"958b\",\n\t\"./mn.js\": \"958b\",\n\t\"./mr\": \"39bd\",\n\t\"./mr.js\": \"39bd\",\n\t\"./ms\": \"ebe4\",\n\t\"./ms-my\": \"6403\",\n\t\"./ms-my.js\": \"6403\",\n\t\"./ms.js\": \"ebe4\",\n\t\"./mt\": \"1b45\",\n\t\"./mt.js\": \"1b45\",\n\t\"./my\": \"8689\",\n\t\"./my.js\": \"8689\",\n\t\"./nb\": \"6ce3\",\n\t\"./nb.js\": \"6ce3\",\n\t\"./ne\": \"3a39\",\n\t\"./ne.js\": \"3a39\",\n\t\"./nl\": \"facd\",\n\t\"./nl-be\": \"db29\",\n\t\"./nl-be.js\": \"db29\",\n\t\"./nl.js\": \"facd\",\n\t\"./nn\": \"b84c\",\n\t\"./nn.js\": \"b84c\",\n\t\"./oc-lnc\": \"167b\",\n\t\"./oc-lnc.js\": \"167b\",\n\t\"./pa-in\": \"f3ff\",\n\t\"./pa-in.js\": \"f3ff\",\n\t\"./pl\": \"8d57\",\n\t\"./pl.js\": \"8d57\",\n\t\"./pt\": \"f260\",\n\t\"./pt-br\": \"d2d4\",\n\t\"./pt-br.js\": \"d2d4\",\n\t\"./pt.js\": \"f260\",\n\t\"./ro\": \"972c\",\n\t\"./ro.js\": \"972c\",\n\t\"./ru\": \"957c\",\n\t\"./ru.js\": \"957c\",\n\t\"./sd\": \"6784\",\n\t\"./sd.js\": \"6784\",\n\t\"./se\": \"ffff\",\n\t\"./se.js\": \"ffff\",\n\t\"./si\": \"eda5\",\n\t\"./si.js\": \"eda5\",\n\t\"./sk\": \"7be6\",\n\t\"./sk.js\": \"7be6\",\n\t\"./sl\": \"8155\",\n\t\"./sl.js\": \"8155\",\n\t\"./sq\": \"c8f3\",\n\t\"./sq.js\": \"c8f3\",\n\t\"./sr\": \"cf1e\",\n\t\"./sr-cyrl\": \"13e9\",\n\t\"./sr-cyrl.js\": \"13e9\",\n\t\"./sr.js\": \"cf1e\",\n\t\"./ss\": \"52bd\",\n\t\"./ss.js\": \"52bd\",\n\t\"./sv\": \"5fbd\",\n\t\"./sv.js\": \"5fbd\",\n\t\"./sw\": \"74dc\",\n\t\"./sw.js\": \"74dc\",\n\t\"./ta\": \"3de5\",\n\t\"./ta.js\": \"3de5\",\n\t\"./te\": \"5cbb\",\n\t\"./te.js\": \"5cbb\",\n\t\"./tet\": \"576c\",\n\t\"./tet.js\": \"576c\",\n\t\"./tg\": \"3b1b\",\n\t\"./tg.js\": \"3b1b\",\n\t\"./th\": \"10e8\",\n\t\"./th.js\": \"10e8\",\n\t\"./tk\": \"5aff\",\n\t\"./tk.js\": \"5aff\",\n\t\"./tl-ph\": \"0f38\",\n\t\"./tl-ph.js\": \"0f38\",\n\t\"./tlh\": \"cf75\",\n\t\"./tlh.js\": \"cf75\",\n\t\"./tr\": \"0e81\",\n\t\"./tr.js\": \"0e81\",\n\t\"./tzl\": \"cf51\",\n\t\"./tzl.js\": \"cf51\",\n\t\"./tzm\": \"c109\",\n\t\"./tzm-latn\": \"b53d\",\n\t\"./tzm-latn.js\": \"b53d\",\n\t\"./tzm.js\": \"c109\",\n\t\"./ug-cn\": \"6117\",\n\t\"./ug-cn.js\": \"6117\",\n\t\"./uk\": \"ada2\",\n\t\"./uk.js\": \"ada2\",\n\t\"./ur\": \"5294\",\n\t\"./ur.js\": \"5294\",\n\t\"./uz\": \"2e8c\",\n\t\"./uz-latn\": \"010e\",\n\t\"./uz-latn.js\": \"010e\",\n\t\"./uz.js\": \"2e8c\",\n\t\"./vi\": \"2921\",\n\t\"./vi.js\": \"2921\",\n\t\"./x-pseudo\": \"fd7e\",\n\t\"./x-pseudo.js\": \"fd7e\",\n\t\"./yo\": \"7f33\",\n\t\"./yo.js\": \"7f33\",\n\t\"./zh-cn\": \"5c3a\",\n\t\"./zh-cn.js\": \"5c3a\",\n\t\"./zh-hk\": \"49ab\",\n\t\"./zh-hk.js\": \"49ab\",\n\t\"./zh-mo\": \"3a6c\",\n\t\"./zh-mo.js\": \"3a6c\",\n\t\"./zh-tw\": \"90ea\",\n\t\"./zh-tw.js\": \"90ea\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"4678\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./header-stepper.scss?vue&type=style&index=0&id=2a5a15af&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./top-up.scss?vue&type=style&index=0&id=ebb65e1a&scoped=true&lang=scss\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./app.scss?vue&type=style&index=0&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./loading-spinner.scss?vue&type=style&index=0&id=7d34a782&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./e-contract.scss?vue&type=style&index=0&id=7b2b1fb6&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./logout.scss?vue&type=style&index=0&id=68da5c46&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./page-footer.scss?vue&type=style&index=0&id=498e207e&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./card-portrait.scss?vue&type=style&index=0&id=094c7f32&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./edit-contract-confirmation.scss?vue&type=style&index=0&id=2e9ac5bf&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./help-content.scss?vue&type=style&index=0&id=6d4b543f&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./e-contract-details.scss?vue&type=style&index=0&id=cb60ff8a&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./dropdown-button.scss?vue&type=style&index=0&id=4b18956a&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./std-page-layout.scss?vue&type=style&index=0&id=34607d2a&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./e-contract-payment.scss?vue&type=style&index=0&id=6f21ed33&scoped=true&lang=scss\"","module.exports = __webpack_public_path__ + \"img/logo.aa5be34d.svg\";","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./account-info-panel.scss?vue&type=style&index=0&id=0558ac43&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./card-landscape.scss?vue&type=style&index=0&id=5c8d28fd&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./confirmation-table.scss?vue&type=style&index=0&id=6c8f09dc&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./e-contract-review.scss?vue&type=style&index=0&id=664ee6ad&scoped=true&lang=scss\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./page-header.scss?vue&type=style&index=0&id=726e8a3e&scoped=true&lang=scss\"","import { resolveComponent as _resolveComponent, createVNode as _createVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nexport function render(_ctx, _cache) {\n const _component_SnackBar = _resolveComponent(\"SnackBar\")\n const _component_router_view = _resolveComponent(\"router-view\")\n\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createVNode(_component_SnackBar),\n _createVNode(_component_router_view)\n ], 64))\n}","import { EncryptStorage } from \"encrypt-storage\";\r\n\r\nexport const ENCRYPT_STORAGE = new EncryptStorage('secret-key:7ey4hu7fyf=--', {\r\n prefix: '@dcsi',\r\n storageType: 'sessionStorage',\r\n });\r\n\r\nexport function localUrl(): string {\r\n const result = window.location.href.split('/');\r\n return result[0] + '//' + result[2] + '/';\r\n}\r\n\r\nexport const AZ_INSTRUMENT_KEY_INT: string = process.env.VUE_APP_AZ_INSTRUMENT_KEY_INT as string;\r\nexport const AZ_INSTRUMENT_KEY_EXT: string = process.env.VUE_APP_AZ_INSTRUMENT_KEY_EXT as string;\r\n\r\nexport const TOKEN_URL: string = process.env.VUE_APP_TOKEN_URL as string;\r\nexport const API_URL: string = process.env.VUE_APP_API_URL as string;\r\nexport const IDLE_TIMEOUT: number = parseInt(process.env.VUE_APP_IDLE_TIMEOUT, 10);\r\nexport const TOKEN_REFRESH_TIME: number = parseInt(process.env.VUE_APP_TOKEN_REFRESH_TIME, 10);\r\nexport const SELF_URL: string = localUrl();\r\n\r\nexport const PUBLISHABLE_API_KEY: string = process.env.VUE_APP_PAYWAY_PUBLISHABLE_API_KEY as string;\r\n","export type AuthenticationStatus = AuthenticationStatusType.Unknown | AuthenticationStatusType.NotLogin |\r\n AuthenticationStatusType.LoggedIn | AuthenticationStatusType.AppAccessPermitted |\r\n AuthenticationStatusType.AppAccessDenied;\r\n\r\nexport enum AuthenticationStatusType {\r\n Unknown,\r\n NotLogin,\r\n LoggedIn,\r\n AppAccessDenied,\r\n AppAccessPermitted,\r\n}\r\n","\r\nexport interface RouteName {\r\n NoAccess: { n: string; p: string };\r\n DCSI: DcsiRouteName;\r\n DCSE: DcseRouterName;\r\n}\r\n\r\nexport interface DcsiRouteName {\r\n Main: { n: string; p: string };\r\n Home: { n: string; p: string };\r\n PaymentAdjustment: { n: string; p: string };\r\n eContract: { n: string; p: string };\r\n LoginPage: { n: string; p: string };\r\n LogoutPage: { n: string; p: string };\r\n About: { n: string; p: string };\r\n}\r\n\r\nexport interface DcseRouterName {\r\n Home: { n: string; p: string };\r\n TopUp: { n: string; p: string };\r\n eContract: { n: string; p: string };\r\n EditContract: { n: string; p: string };\r\n History: { n: string; p: string };\r\n LoginPage: { n: string; p: string };\r\n LogoutPage: { n: string; p: string };\r\n Main: { n: string; p: string };\r\n AccessError: { n: string; p: string };\r\n}\r\n\r\nexport const RouteN: RouteName = {\r\n NoAccess: { n: 'no-access', p: '/no-access' },\r\n DCSI: {\r\n Main: { n: 'internal-main', p: '/' },\r\n Home: { n: 'Home', p: '/home' },\r\n PaymentAdjustment: { n: 'PaymentAdjustment', p: '/payment-adjustment' },\r\n eContract: { n: 'eContract', p: '/econtract' },\r\n About: { n: 'Member', p: '/member' },\r\n LoginPage: { n: 'login', p: '/check-auth' },\r\n LogoutPage: { n: 'logout', p: '/signout' },\r\n },\r\n DCSE: {\r\n Main: { n: 'internal-main', p: '/' },\r\n Home: { n: 'Home', p: '/home' },\r\n TopUp: { n: 'TopUp', p: '/topup' },\r\n eContract: { n: 'eContract', p: '/econtract' },\r\n EditContract: { n: 'EditContract', p: '/edit-contract' },\r\n History: { n: 'History', p: '/history' },\r\n LoginPage: { n: 'login', p: '/check-auth' },\r\n LogoutPage: { n: 'logout', p: '/signout' },\r\n AccessError: { n: 'accessError', p: '/access-error' },\r\n }\r\n};\r\n","export class User {\r\n constructor(\r\n public externalId?: string | null,\r\n public email?: string | null,\r\n public firstName?: string | null,\r\n public lastName?: string | null,\r\n public title?: string | null,\r\n public userName?: string | null,\r\n public lawId?: string | null,\r\n public isMember?: boolean | null,\r\n public isPcHolder?: boolean | null,\r\n public securityGroups?: null,\r\n public roles?: []\r\n ) { }\r\n}","export class Token {\r\n constructor(\r\n public clientId: number | null = null,\r\n public tokenStr: string | null = null,\r\n public userId: number | null = null\r\n ) {\r\n }\r\n}\r\n","export class Session {\r\n\r\n constructor(\r\n public issued: number = 0,\r\n public expires: number = 0,\r\n ) {}\r\n\r\n public hasExpired(): boolean {\r\n return Math.round(new Date().getTime() / 1000) >= this.expires;\r\n }\r\n}\r\n","import { User } from '@/shared/models/user'\r\nimport { Token } from '@/shared/models/token'\r\nimport { AuthenticationStatus, AuthenticationStatusType } from '@/shared/modules/authentication/authentication-status'\r\nimport { Session } from './session'\r\n\r\nexport class AuthorizedUser {\r\n constructor(\r\n public user: User = new User(),\r\n public token: Token = new Token(),\r\n public session: Session = new Session(),\r\n public authenticationStatus: AuthenticationStatus = AuthenticationStatusType.Unknown\r\n ) { }\r\n}","export interface Url {\r\n Token: string;\r\n Login: string;\r\n Logout: string;\r\n}\r\n\r\nexport const Url: Url = {\r\n Token: 'token',\r\n Login: 'login',\r\n Logout: 'logout'\r\n};\r\n","import { AuthorizedUser } from '@/shared/models/authorized-user';\r\nimport { AxiosInstance, AxiosResponse } from 'axios';\r\nimport globalAxios from 'axios';\r\nimport * as HttpStatus from 'http-status-codes';\r\nimport { AuthenticationStatus, AuthenticationStatusType } from './authentication-status';\r\nimport { SELF_URL } from '@/shared/config/config';\r\nimport { Url } from '@/shared/config/url'\r\n\r\nexport default class AuthenticationService {\r\n\r\n private options = {\r\n headers: {\r\n 'Content-Type': 'application/x-www-form-urlencoded',\r\n },\r\n };\r\n\r\n constructor(\r\n public authedUser: AuthorizedUser = new AuthorizedUser(),\r\n public axios: AxiosInstance = globalAxios\r\n ) { }\r\n\r\n public async checkAuthentication(): Promise {\r\n let tokenResp: AxiosResponse;\r\n\r\n try {\r\n tokenResp = await this.axios.get(SELF_URL + Url.Token);\r\n\r\n try {\r\n this.authedUser.token.tokenStr = tokenResp.data.token;\r\n this.authedUser.token.clientId = tokenResp.data.clientId;\r\n this.authedUser.token.userId = tokenResp.data.userId;\r\n this.authedUser.user.email = tokenResp.data.user.email;\r\n this.authedUser.user.externalId = tokenResp.data.user.externalId;\r\n this.authedUser.user.firstName = tokenResp.data.user.firstName;\r\n this.authedUser.user.lastName = tokenResp.data.user.lastName;\r\n this.authedUser.user.lawId = tokenResp.data.user.lawId;\r\n this.authedUser.user.userName = tokenResp.data.user.lawId;\r\n this.authedUser.user.title = tokenResp.data.user.title;\r\n this.authedUser.user.isMember = tokenResp.data.user.isMember;\r\n this.authedUser.user.isPcHolder = tokenResp.data.user.isPcHolder;\r\n this.authedUser.session.issued = Math.round(new Date(tokenResp.data['issued']).getTime() / 1000);\r\n this.authedUser.session.expires = Math.round(new Date(tokenResp.data['expires']).getTime() / 1000);\r\n this.authedUser.user.roles = tokenResp.data.user.roles;\r\n\r\n if (tokenResp.data.token) {\r\n this.authedUser.authenticationStatus = AuthenticationStatusType.LoggedIn;\r\n return Promise.resolve(AuthenticationStatusType.LoggedIn);\r\n } else {\r\n this.authedUser.authenticationStatus = AuthenticationStatusType.Unknown;\r\n return Promise.reject(AuthenticationStatusType.Unknown);\r\n }\r\n } catch (err) {\r\n this.authedUser.authenticationStatus = AuthenticationStatusType.Unknown;\r\n return Promise.reject(AuthenticationStatusType.Unknown);\r\n }\r\n\r\n } catch (err: any) {\r\n if (err.response.status === HttpStatus.UNAUTHORIZED ||\r\n err.response.status === HttpStatus.FORBIDDEN) {\r\n this.authedUser.authenticationStatus = AuthenticationStatusType.NotLogin;\r\n return Promise.reject(AuthenticationStatusType.NotLogin);\r\n } else {\r\n this.authedUser.authenticationStatus = AuthenticationStatusType.Unknown;\r\n return Promise.reject(AuthenticationStatusType.Unknown);\r\n }\r\n }\r\n }\r\n}\r\n","/* tslint:disable */\r\n/* eslint-disable */\r\n/**\r\n * DCS API\r\n * The Law Society DCS Api with Swagger, Swashbuckle, and API Versioning.\r\n *\r\n * OpenAPI spec version: 1.0\r\n * Contact: hitesh.patel@lawsociety.com.au\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\nimport { Configuration } from \"./configuration\";\r\n// Some imports not used depending on template conditions\r\n// @ts-ignore\r\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\r\n\r\nexport const BASE_PATH = \"/\".replace(/\\/+$/, \"\");\r\n\r\n/**\r\n *\r\n * @export\r\n */\r\nexport const COLLECTION_FORMATS = {\r\n csv: \",\",\r\n ssv: \" \",\r\n tsv: \"\\t\",\r\n pipes: \"|\",\r\n};\r\n\r\n/**\r\n *\r\n * @export\r\n * @interface RequestArgs\r\n */\r\nexport interface RequestArgs {\r\n url: string;\r\n options: any;\r\n}\r\n\r\n/**\r\n *\r\n * @export\r\n * @class BaseAPI\r\n */\r\nexport class BaseAPI {\r\n protected configuration: Configuration | undefined;\r\n\r\n constructor(configuration?: Configuration, protected basePath: string = BASE_PATH, protected axios: AxiosInstance = globalAxios) {\r\n if (configuration) {\r\n this.configuration = configuration;\r\n this.basePath = configuration.basePath || this.basePath;\r\n }\r\n }\r\n};\r\n\r\n/**\r\n *\r\n * @export\r\n * @class RequiredError\r\n * @extends {Error}\r\n */\r\nexport class RequiredError extends Error {\r\n name: \"RequiredError\" = \"RequiredError\";\r\n constructor(public field: string, msg?: string) {\r\n super(msg);\r\n }\r\n}\r\n","/* tslint:disable */\r\n/* eslint-disable */\r\n/**\r\n * DCS API\r\n * The Law Society DCS Api with Swagger, Swashbuckle, and API Versioning.\r\n *\r\n * OpenAPI spec version: 1.0\r\n * Contact: hitesh.patel@lawsociety.com.au\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\r\nimport { Configuration } from '../configuration';\r\n// Some imports not used depending on template conditions\r\n// @ts-ignore\r\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\r\nimport { Int32Response } from '../models';\r\nimport { UserBalanceAdjustment } from '../models';\r\n/**\r\n * AdjustmentApi - axios parameter creator\r\n * @export\r\n */\r\nexport const AdjustmentApiAxiosParamCreator = function (configuration?: Configuration) {\r\n return {\r\n /**\r\n * \r\n * @summary Internal High | Adjust user balance\r\n * @param {UserBalanceAdjustment} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1AdjustmentAdjustPost: async (body?: UserBalanceAdjustment, options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/Adjustment/Adjust`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n localVarHeaderParameter['Content-Type'] = 'application/json';\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\r\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n }\r\n};\r\n\r\n/**\r\n * AdjustmentApi - functional programming interface\r\n * @export\r\n */\r\nexport const AdjustmentApiFp = function(configuration?: Configuration) {\r\n return {\r\n /**\r\n * \r\n * @summary Internal High | Adjust user balance\r\n * @param {UserBalanceAdjustment} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1AdjustmentAdjustPost(body?: UserBalanceAdjustment, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await AdjustmentApiAxiosParamCreator(configuration).apiV1AdjustmentAdjustPost(body, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n }\r\n};\r\n\r\n/**\r\n * AdjustmentApi - factory interface\r\n * @export\r\n */\r\nexport const AdjustmentApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\r\n return {\r\n /**\r\n * \r\n * @summary Internal High | Adjust user balance\r\n * @param {UserBalanceAdjustment} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1AdjustmentAdjustPost(body?: UserBalanceAdjustment, options?: any): AxiosPromise {\r\n return AdjustmentApiFp(configuration).apiV1AdjustmentAdjustPost(body, options).then((request) => request(axios, basePath));\r\n },\r\n };\r\n};\r\n\r\n/**\r\n * AdjustmentApi - object-oriented interface\r\n * @export\r\n * @class AdjustmentApi\r\n * @extends {BaseAPI}\r\n */\r\nexport class AdjustmentApi extends BaseAPI {\r\n /**\r\n * \r\n * @summary Internal High | Adjust user balance\r\n * @param {UserBalanceAdjustment} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof AdjustmentApi\r\n */\r\n public apiV1AdjustmentAdjustPost(body?: UserBalanceAdjustment, options?: any) {\r\n return AdjustmentApiFp(this.configuration).apiV1AdjustmentAdjustPost(body, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n}\r\n","/* tslint:disable */\r\n/* eslint-disable */\r\n/**\r\n * DCS API\r\n * The Law Society DCS Api with Swagger, Swashbuckle, and API Versioning.\r\n *\r\n * OpenAPI spec version: 1.0\r\n * Contact: hitesh.patel@lawsociety.com.au\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\r\nimport { Configuration } from '../configuration';\r\n// Some imports not used depending on template conditions\r\n// @ts-ignore\r\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\r\nimport { FileTypeIEnumerableResponse } from '../models';\r\nimport { PaymentTypeIEnumerableResponse } from '../models';\r\nimport { TransactionTypeIEnumerableResponse } from '../models';\r\n/**\r\n * CodeApi - axios parameter creator\r\n * @export\r\n */\r\nexport const CodeApiAxiosParamCreator = function (configuration?: Configuration) {\r\n return {\r\n /**\r\n * \r\n * @summary All | Returns File Types\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1CodeGetFileTypesGet: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/Code/GetFileTypes`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns Payment Types\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1CodeGetPaymentTypesGet: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/Code/GetPaymentTypes`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns Transaction Types\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1CodeGetTransactionTypesGet: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/Code/GetTransactionTypes`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n }\r\n};\r\n\r\n/**\r\n * CodeApi - functional programming interface\r\n * @export\r\n */\r\nexport const CodeApiFp = function(configuration?: Configuration) {\r\n return {\r\n /**\r\n * \r\n * @summary All | Returns File Types\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1CodeGetFileTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetFileTypesGet(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns Payment Types\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1CodeGetPaymentTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetPaymentTypesGet(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns Transaction Types\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1CodeGetTransactionTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetTransactionTypesGet(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n }\r\n};\r\n\r\n/**\r\n * CodeApi - factory interface\r\n * @export\r\n */\r\nexport const CodeApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\r\n return {\r\n /**\r\n * \r\n * @summary All | Returns File Types\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1CodeGetFileTypesGet(options?: any): AxiosPromise {\r\n return CodeApiFp(configuration).apiV1CodeGetFileTypesGet(options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary All | Returns Payment Types\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1CodeGetPaymentTypesGet(options?: any): AxiosPromise {\r\n return CodeApiFp(configuration).apiV1CodeGetPaymentTypesGet(options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary All | Returns Transaction Types\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1CodeGetTransactionTypesGet(options?: any): AxiosPromise {\r\n return CodeApiFp(configuration).apiV1CodeGetTransactionTypesGet(options).then((request) => request(axios, basePath));\r\n },\r\n };\r\n};\r\n\r\n/**\r\n * CodeApi - object-oriented interface\r\n * @export\r\n * @class CodeApi\r\n * @extends {BaseAPI}\r\n */\r\nexport class CodeApi extends BaseAPI {\r\n /**\r\n * \r\n * @summary All | Returns File Types\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof CodeApi\r\n */\r\n public apiV1CodeGetFileTypesGet(options?: any) {\r\n return CodeApiFp(this.configuration).apiV1CodeGetFileTypesGet(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary All | Returns Payment Types\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof CodeApi\r\n */\r\n public apiV1CodeGetPaymentTypesGet(options?: any) {\r\n return CodeApiFp(this.configuration).apiV1CodeGetPaymentTypesGet(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary All | Returns Transaction Types\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof CodeApi\r\n */\r\n public apiV1CodeGetTransactionTypesGet(options?: any) {\r\n return CodeApiFp(this.configuration).apiV1CodeGetTransactionTypesGet(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n}\r\n","/* tslint:disable */\r\n/* eslint-disable */\r\n/**\r\n * DCS API\r\n * The Law Society DCS Api with Swagger, Swashbuckle, and API Versioning.\r\n *\r\n * OpenAPI spec version: 1.0\r\n * Contact: hitesh.patel@lawsociety.com.au\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\r\nimport { Configuration } from '../configuration';\r\n// Some imports not used depending on template conditions\r\n// @ts-ignore\r\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\r\nimport { BooleanResponse } from '../models';\r\nimport { ContractCategoryIEnumerableResponse } from '../models';\r\nimport { ContractIEnumerableResponse } from '../models';\r\nimport { ContractResponse } from '../models';\r\nimport { ContractSubCategoryIEnumerableResponse } from '../models';\r\nimport { CreateContract } from '../models';\r\nimport { Int32Response } from '../models';\r\nimport { ProblemDetails } from '../models';\r\nimport { UpdateContract } from '../models';\r\n/**\r\n * ContractApi - axios parameter creator\r\n * @export\r\n */\r\nexport const ContractApiAxiosParamCreator = function (configuration?: Configuration) {\r\n return {\r\n /**\r\n * \r\n * @summary Internal All | Add a Contract\r\n * @param {CreateContract} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractAddContractPost: async (body?: CreateContract, options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/Contract/AddContract`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options };\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n localVarHeaderParameter['Content-Type'] = 'application/json';\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };\r\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\r\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Delete a Contract\r\n * @param {number} id \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractDeleteContractIdDelete: async (id: number, options: any = {}): Promise => {\r\n // verify required parameter 'id' is not null or undefined\r\n if (id === null || id === undefined) {\r\n throw new RequiredError('id', 'Required parameter id was null or undefined when calling apiV1ContractDeleteContractIdDelete.');\r\n }\r\n const localVarPath = `/api/v1/Contract/DeleteContract/{id}`\r\n .replace(`{${\"id\"}}`, encodeURIComponent(String(id)));\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options };\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Returns both Active and Inactive Contracts\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractGetAllContractsGet: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/Contract/GetAllContracts`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Download file from Azure Storage\r\n * @param {string} [blobFilePath] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractGetBlobFileGet: async (blobFilePath?: string, options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/Contract/GetBlobFile`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n if (blobFilePath !== undefined) {\r\n localVarQueryParameter['blobFilePath'] = blobFilePath;\r\n }\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns Contract Categories\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractGetContractCategoriesGet: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/Contract/GetContractCategories`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns a Contract\r\n * @param {number} id \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractGetContractIdGet: async (id: number, options: any = {}): Promise => {\r\n // verify required parameter 'id' is not null or undefined\r\n if (id === null || id === undefined) {\r\n throw new RequiredError('id', 'Required parameter id was null or undefined when calling apiV1ContractGetContractIdGet.');\r\n }\r\n const localVarPath = `/api/v1/Contract/GetContract/{id}`\r\n .replace(`{${\"id\"}}`, encodeURIComponent(String(id)));\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Returns a Contract\r\n * @param {number} id \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractGetContractInternalIdGet: async (id: number, options: any = {}): Promise => {\r\n // verify required parameter 'id' is not null or undefined\r\n if (id === null || id === undefined) {\r\n throw new RequiredError('id', 'Required parameter id was null or undefined when calling apiV1ContractGetContractInternalIdGet.');\r\n }\r\n const localVarPath = `/api/v1/Contract/GetContractInternal/{id}`\r\n .replace(`{${\"id\"}}`, encodeURIComponent(String(id)));\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns Contract Sub Categories\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractGetContractSubCategoriesGet: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/Contract/GetContractSubCategories`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns a Contract With Thumbnail\r\n * @param {number} id \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractGetContractWithThumbnailIdGet: async (id: number, options: any = {}): Promise => {\r\n // verify required parameter 'id' is not null or undefined\r\n if (id === null || id === undefined) {\r\n throw new RequiredError('id', 'Required parameter id was null or undefined when calling apiV1ContractGetContractWithThumbnailIdGet.');\r\n }\r\n const localVarPath = `/api/v1/Contract/GetContractWithThumbnail/{id}`\r\n .replace(`{${\"id\"}}`, encodeURIComponent(String(id)));\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns active only Contracts\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractGetContractsGet: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/Contract/GetContracts`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns active only Contracts With Thumbnail\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractGetContractsWithThumbnailGet: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/Contract/GetContractsWithThumbnail`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns true when the data is updated after utcTimeStamp\r\n * @param {Date} utcTimeStamp \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractHasUpdatedContractsUtcTimeStampGet: async (utcTimeStamp: Date, options: any = {}): Promise => {\r\n // verify required parameter 'utcTimeStamp' is not null or undefined\r\n if (utcTimeStamp === null || utcTimeStamp === undefined) {\r\n throw new RequiredError('utcTimeStamp', 'Required parameter utcTimeStamp was null or undefined when calling apiV1ContractHasUpdatedContractsUtcTimeStampGet.');\r\n }\r\n const localVarPath = `/api/v1/Contract/HasUpdatedContracts/{utcTimeStamp}`\r\n .replace(`{${\"utcTimeStamp\"}}`, encodeURIComponent(String(utcTimeStamp)));\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Update a Contract\r\n * @param {UpdateContract} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractUpdateContractPut: async (body?: UpdateContract, options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/Contract/UpdateContract`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options };\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n localVarHeaderParameter['Content-Type'] = 'application/json';\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };\r\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\r\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Change Status of Contract\r\n * @param {number} id \r\n * @param {boolean} status \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractUpdateContractStatusIdStatusPut: async (id: number, status: boolean, options: any = {}): Promise => {\r\n // verify required parameter 'id' is not null or undefined\r\n if (id === null || id === undefined) {\r\n throw new RequiredError('id', 'Required parameter id was null or undefined when calling apiV1ContractUpdateContractStatusIdStatusPut.');\r\n }\r\n // verify required parameter 'status' is not null or undefined\r\n if (status === null || status === undefined) {\r\n throw new RequiredError('status', 'Required parameter status was null or undefined when calling apiV1ContractUpdateContractStatusIdStatusPut.');\r\n }\r\n const localVarPath = `/api/v1/Contract/UpdateContractStatus/{id}/{status}`\r\n .replace(`{${\"id\"}}`, encodeURIComponent(String(id)))\r\n .replace(`{${\"status\"}}`, encodeURIComponent(String(status)));\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options };\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n }\r\n};\r\n\r\n/**\r\n * ContractApi - functional programming interface\r\n * @export\r\n */\r\nexport const ContractApiFp = function (configuration?: Configuration) {\r\n return {\r\n /**\r\n * \r\n * @summary Internal All | Add a Contract\r\n * @param {CreateContract} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ContractAddContractPost(body?: CreateContract, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ContractApiAxiosParamCreator(configuration).apiV1ContractAddContractPost(body, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = { ...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url };\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Delete a Contract\r\n * @param {number} id \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ContractDeleteContractIdDelete(id: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ContractApiAxiosParamCreator(configuration).apiV1ContractDeleteContractIdDelete(id, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = { ...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url };\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Returns both Active and Inactive Contracts\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ContractGetAllContractsGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ContractApiAxiosParamCreator(configuration).apiV1ContractGetAllContractsGet(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = { ...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url };\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Download file from Azure Storage\r\n * @param {string} [blobFilePath] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ContractGetBlobFileGet(blobFilePath?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ContractApiAxiosParamCreator(configuration).apiV1ContractGetBlobFileGet(blobFilePath, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = { ...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url };\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns Contract Categories\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ContractGetContractCategoriesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ContractApiAxiosParamCreator(configuration).apiV1ContractGetContractCategoriesGet(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = { ...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url };\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns a Contract\r\n * @param {number} id \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ContractGetContractIdGet(id: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ContractApiAxiosParamCreator(configuration).apiV1ContractGetContractIdGet(id, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = { ...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url };\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Returns a Contract\r\n * @param {number} id \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ContractGetContractInternalIdGet(id: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ContractApiAxiosParamCreator(configuration).apiV1ContractGetContractInternalIdGet(id, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = { ...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url };\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns Contract Sub Categories\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ContractGetContractSubCategoriesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ContractApiAxiosParamCreator(configuration).apiV1ContractGetContractSubCategoriesGet(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = { ...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url };\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns a Contract With Thumbnail\r\n * @param {number} id \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ContractGetContractWithThumbnailIdGet(id: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ContractApiAxiosParamCreator(configuration).apiV1ContractGetContractWithThumbnailIdGet(id, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = { ...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url };\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns active only Contracts\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ContractGetContractsGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ContractApiAxiosParamCreator(configuration).apiV1ContractGetContractsGet(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = { ...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url };\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns active only Contracts With Thumbnail\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ContractGetContractsWithThumbnailGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ContractApiAxiosParamCreator(configuration).apiV1ContractGetContractsWithThumbnailGet(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = { ...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url };\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns true when the data is updated after utcTimeStamp\r\n * @param {Date} utcTimeStamp \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ContractHasUpdatedContractsUtcTimeStampGet(utcTimeStamp: Date, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ContractApiAxiosParamCreator(configuration).apiV1ContractHasUpdatedContractsUtcTimeStampGet(utcTimeStamp, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = { ...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url };\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Update a Contract\r\n * @param {UpdateContract} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ContractUpdateContractPut(body?: UpdateContract, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ContractApiAxiosParamCreator(configuration).apiV1ContractUpdateContractPut(body, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = { ...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url };\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Change Status of Contract\r\n * @param {number} id \r\n * @param {boolean} status \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ContractUpdateContractStatusIdStatusPut(id: number, status: boolean, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ContractApiAxiosParamCreator(configuration).apiV1ContractUpdateContractStatusIdStatusPut(id, status, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = { ...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url };\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n }\r\n};\r\n\r\n/**\r\n * ContractApi - factory interface\r\n * @export\r\n */\r\nexport const ContractApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\r\n return {\r\n /**\r\n * \r\n * @summary Internal All | Add a Contract\r\n * @param {CreateContract} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractAddContractPost(body?: CreateContract, options?: any): AxiosPromise {\r\n return ContractApiFp(configuration).apiV1ContractAddContractPost(body, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Delete a Contract\r\n * @param {number} id \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractDeleteContractIdDelete(id: number, options?: any): AxiosPromise {\r\n return ContractApiFp(configuration).apiV1ContractDeleteContractIdDelete(id, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Returns both Active and Inactive Contracts\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractGetAllContractsGet(options?: any): AxiosPromise {\r\n return ContractApiFp(configuration).apiV1ContractGetAllContractsGet(options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Download file from Azure Storage\r\n * @param {string} [blobFilePath] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractGetBlobFileGet(blobFilePath?: string, options?: any): AxiosPromise {\r\n return ContractApiFp(configuration).apiV1ContractGetBlobFileGet(blobFilePath, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary All | Returns Contract Categories\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractGetContractCategoriesGet(options?: any): AxiosPromise {\r\n return ContractApiFp(configuration).apiV1ContractGetContractCategoriesGet(options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary All | Returns a Contract\r\n * @param {number} id \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractGetContractIdGet(id: number, options?: any): AxiosPromise {\r\n return ContractApiFp(configuration).apiV1ContractGetContractIdGet(id, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Returns a Contract\r\n * @param {number} id \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractGetContractInternalIdGet(id: number, options?: any): AxiosPromise {\r\n return ContractApiFp(configuration).apiV1ContractGetContractInternalIdGet(id, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary All | Returns Contract Sub Categories\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractGetContractSubCategoriesGet(options?: any): AxiosPromise {\r\n return ContractApiFp(configuration).apiV1ContractGetContractSubCategoriesGet(options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary All | Returns a Contract With Thumbnail\r\n * @param {number} id \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractGetContractWithThumbnailIdGet(id: number, options?: any): AxiosPromise {\r\n return ContractApiFp(configuration).apiV1ContractGetContractWithThumbnailIdGet(id, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary All | Returns active only Contracts\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractGetContractsGet(options?: any): AxiosPromise {\r\n return ContractApiFp(configuration).apiV1ContractGetContractsGet(options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary All | Returns active only Contracts With Thumbnail\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractGetContractsWithThumbnailGet(options?: any): AxiosPromise {\r\n return ContractApiFp(configuration).apiV1ContractGetContractsWithThumbnailGet(options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary All | Returns true when the data is updated after utcTimeStamp\r\n * @param {Date} utcTimeStamp \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractHasUpdatedContractsUtcTimeStampGet(utcTimeStamp: Date, options?: any): AxiosPromise {\r\n return ContractApiFp(configuration).apiV1ContractHasUpdatedContractsUtcTimeStampGet(utcTimeStamp, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Update a Contract\r\n * @param {UpdateContract} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractUpdateContractPut(body?: UpdateContract, options?: any): AxiosPromise {\r\n return ContractApiFp(configuration).apiV1ContractUpdateContractPut(body, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Change Status of Contract\r\n * @param {number} id \r\n * @param {boolean} status \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ContractUpdateContractStatusIdStatusPut(id: number, status: boolean, options?: any): AxiosPromise {\r\n return ContractApiFp(configuration).apiV1ContractUpdateContractStatusIdStatusPut(id, status, options).then((request) => request(axios, basePath));\r\n },\r\n };\r\n};\r\n\r\n/**\r\n * ContractApi - object-oriented interface\r\n * @export\r\n * @class ContractApi\r\n * @extends {BaseAPI}\r\n */\r\nexport class ContractApi extends BaseAPI {\r\n /**\r\n * \r\n * @summary Internal All | Add a Contract\r\n * @param {CreateContract} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ContractApi\r\n */\r\n public apiV1ContractAddContractPost(body?: CreateContract, options?: any) {\r\n return ContractApiFp(this.configuration).apiV1ContractAddContractPost(body, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary Internal All | Delete a Contract\r\n * @param {number} id \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ContractApi\r\n */\r\n public apiV1ContractDeleteContractIdDelete(id: number, options?: any) {\r\n return ContractApiFp(this.configuration).apiV1ContractDeleteContractIdDelete(id, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary Internal All | Returns both Active and Inactive Contracts\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ContractApi\r\n */\r\n public apiV1ContractGetAllContractsGet(options?: any) {\r\n return ContractApiFp(this.configuration).apiV1ContractGetAllContractsGet(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary Internal All | Download file from Azure Storage\r\n * @param {string} [blobFilePath] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ContractApi\r\n */\r\n public apiV1ContractGetBlobFileGet(blobFilePath?: string, options?: any) {\r\n return ContractApiFp(this.configuration).apiV1ContractGetBlobFileGet(blobFilePath, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary All | Returns Contract Categories\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ContractApi\r\n */\r\n public apiV1ContractGetContractCategoriesGet(options?: any) {\r\n return ContractApiFp(this.configuration).apiV1ContractGetContractCategoriesGet(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary All | Returns a Contract\r\n * @param {number} id \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ContractApi\r\n */\r\n public apiV1ContractGetContractIdGet(id: number, options?: any) {\r\n return ContractApiFp(this.configuration).apiV1ContractGetContractIdGet(id, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary Internal All | Returns a Contract\r\n * @param {number} id \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ContractApi\r\n */\r\n public apiV1ContractGetContractInternalIdGet(id: number, options?: any) {\r\n return ContractApiFp(this.configuration).apiV1ContractGetContractInternalIdGet(id, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary All | Returns Contract Sub Categories\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ContractApi\r\n */\r\n public apiV1ContractGetContractSubCategoriesGet(options?: any) {\r\n return ContractApiFp(this.configuration).apiV1ContractGetContractSubCategoriesGet(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary All | Returns a Contract With Thumbnail\r\n * @param {number} id \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ContractApi\r\n */\r\n public apiV1ContractGetContractWithThumbnailIdGet(id: number, options?: any) {\r\n return ContractApiFp(this.configuration).apiV1ContractGetContractWithThumbnailIdGet(id, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary All | Returns active only Contracts\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ContractApi\r\n */\r\n public apiV1ContractGetContractsGet(options?: any) {\r\n return ContractApiFp(this.configuration).apiV1ContractGetContractsGet(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary All | Returns active only Contracts With Thumbnail\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ContractApi\r\n */\r\n public apiV1ContractGetContractsWithThumbnailGet(options?: any) {\r\n return ContractApiFp(this.configuration).apiV1ContractGetContractsWithThumbnailGet(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary All | Returns true when the data is updated after utcTimeStamp\r\n * @param {Date} utcTimeStamp \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ContractApi\r\n */\r\n public apiV1ContractHasUpdatedContractsUtcTimeStampGet(utcTimeStamp: Date, options?: any) {\r\n return ContractApiFp(this.configuration).apiV1ContractHasUpdatedContractsUtcTimeStampGet(utcTimeStamp, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary Internal All | Update a Contract\r\n * @param {UpdateContract} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ContractApi\r\n */\r\n public apiV1ContractUpdateContractPut(body?: UpdateContract, options?: any) {\r\n return ContractApiFp(this.configuration).apiV1ContractUpdateContractPut(body, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary Internal All | Change Status of Contract\r\n * @param {number} id \r\n * @param {boolean} status \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ContractApi\r\n */\r\n public apiV1ContractUpdateContractStatusIdStatusPut(id: number, status: boolean, options?: any) {\r\n return ContractApiFp(this.configuration).apiV1ContractUpdateContractStatusIdStatusPut(id, status, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n}\r\n","/* tslint:disable */\r\n/* eslint-disable */\r\n/**\r\n * DCS API\r\n * The Law Society DCS Api with Swagger, Swashbuckle, and API Versioning.\r\n *\r\n * OpenAPI spec version: 1.0\r\n * Contact: hitesh.patel@lawsociety.com.au\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\r\nimport { Configuration } from '../configuration';\r\n// Some imports not used depending on template conditions\r\n// @ts-ignore\r\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\r\nimport { ContractOrder } from '../models';\r\nimport { ContractOrderDetailData } from '../models';\r\nimport { DecimalResponse } from '../models';\r\nimport { FileResponse } from '../models';\r\nimport { Int32Response } from '../models';\r\nimport { Payment } from '../models';\r\nimport { PurchaseHistoryIEnumerableResponse } from '../models';\r\nimport { PurchaseHistoryResponse } from '../models';\r\nimport { RequestTransaction } from '../models';\r\n/**\r\n * ExternalApi - axios parameter creator\r\n * @export\r\n */\r\nexport const ExternalApiAxiosParamCreator = function (configuration?: Configuration) {\r\n return {\r\n /**\r\n * \r\n * @summary External | Order a new contract order (return contractOrderId)\r\n * @param {ContractOrder} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalCreateContractOrderPost: async (body?: ContractOrder, options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/External/CreateContractOrder`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n localVarHeaderParameter['Content-Type'] = 'application/json';\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\r\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary External | Delete not finalized contract order\r\n * @param {number} [contractOrderId] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalDeleteContractOrderDelete: async (contractOrderId?: number, options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/External/DeleteContractOrder`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n if (contractOrderId !== undefined) {\r\n localVarQueryParameter['contractOrderId'] = contractOrderId;\r\n }\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary External | Get user order detail\r\n * @param {number} contractOrderId \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalGetContractOrderDetailContractOrderIdGet: async (contractOrderId: number, options: any = {}): Promise => {\r\n // verify required parameter 'contractOrderId' is not null or undefined\r\n if (contractOrderId === null || contractOrderId === undefined) {\r\n throw new RequiredError('contractOrderId','Required parameter contractOrderId was null or undefined when calling apiV1ExternalGetContractOrderDetailContractOrderIdGet.');\r\n }\r\n const localVarPath = `/api/v1/External/GetContractOrderDetail/{contractOrderId}`\r\n .replace(`{${\"contractOrderId\"}}`, encodeURIComponent(String(contractOrderId)));\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary External | Returns a File\r\n * @param {number} fileId \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalGetFileFileIdGet: async (fileId: number, options: any = {}): Promise => {\r\n // verify required parameter 'fileId' is not null or undefined\r\n if (fileId === null || fileId === undefined) {\r\n throw new RequiredError('fileId','Required parameter fileId was null or undefined when calling apiV1ExternalGetFileFileIdGet.');\r\n }\r\n const localVarPath = `/api/v1/External/GetFile/{fileId}`\r\n .replace(`{${\"fileId\"}}`, encodeURIComponent(String(fileId)));\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary External | Get user Purchase history Detail\r\n * @param {number} transactionId \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalGetPurchaseHistoryDetailTransactionIdGet: async (transactionId: number, options: any = {}): Promise => {\r\n // verify required parameter 'transactionId' is not null or undefined\r\n if (transactionId === null || transactionId === undefined) {\r\n throw new RequiredError('transactionId','Required parameter transactionId was null or undefined when calling apiV1ExternalGetPurchaseHistoryDetailTransactionIdGet.');\r\n }\r\n const localVarPath = `/api/v1/External/GetPurchaseHistoryDetail/{transactionId}`\r\n .replace(`{${\"transactionId\"}}`, encodeURIComponent(String(transactionId)));\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * Parameter Values
\\\"SearchFieldType\\\": [\\\"1\\\" (ContractId), \\\"2\\\" (CreatedDate), \\\"3\\\" (ContractType), \\\"4\\\" (Address), \\\"5\\\" (ReferenceId), \\\"6\\\" (Status)]\r\n * @summary External | Get user Purchase history\r\n * @param {RequestTransaction} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalGetPurchaseHistoryPost: async (body?: RequestTransaction, options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/External/GetPurchaseHistory`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n localVarHeaderParameter['Content-Type'] = 'application/json';\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\r\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary External | Get balance of currently logged user\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalGetUserBalanceGet: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/External/GetUserBalance`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary External | Returns a zipped File\r\n * @param {number} transactionId \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalGetZippedFileTransactionIdGet: async (transactionId: number, options: any = {}): Promise => {\r\n // verify required parameter 'transactionId' is not null or undefined\r\n if (transactionId === null || transactionId === undefined) {\r\n throw new RequiredError('transactionId','Required parameter transactionId was null or undefined when calling apiV1ExternalGetZippedFileTransactionIdGet.');\r\n }\r\n const localVarPath = `/api/v1/External/GetZippedFile/{transactionId}`\r\n .replace(`{${\"transactionId\"}}`, encodeURIComponent(String(transactionId)));\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary External | Topup prepaid user balance (return transactionId)\r\n * @param {Payment} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalTopupPrepaidBalancePost: async (body?: Payment, options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/External/TopupPrepaidBalance`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n localVarHeaderParameter['Content-Type'] = 'application/json';\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\r\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary External | Resume a contract order (return contractOrderId)\r\n * @param {ContractOrder} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalUpdateContractOrderPut: async (body?: ContractOrder, options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/External/UpdateContractOrder`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n localVarHeaderParameter['Content-Type'] = 'application/json';\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\r\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary External | Edit a contract order detail (return contractOrderId)\r\n * @param {ContractOrderDetailData} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalUpdateFinalizedContractOrderDetailPut: async (body?: ContractOrderDetailData, options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/External/UpdateFinalizedContractOrderDetail`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n localVarHeaderParameter['Content-Type'] = 'application/json';\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\r\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n }\r\n};\r\n\r\n/**\r\n * ExternalApi - functional programming interface\r\n * @export\r\n */\r\nexport const ExternalApiFp = function(configuration?: Configuration) {\r\n return {\r\n /**\r\n * \r\n * @summary External | Order a new contract order (return contractOrderId)\r\n * @param {ContractOrder} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ExternalCreateContractOrderPost(body?: ContractOrder, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ExternalApiAxiosParamCreator(configuration).apiV1ExternalCreateContractOrderPost(body, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary External | Delete not finalized contract order\r\n * @param {number} [contractOrderId] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ExternalDeleteContractOrderDelete(contractOrderId?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ExternalApiAxiosParamCreator(configuration).apiV1ExternalDeleteContractOrderDelete(contractOrderId, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary External | Get user order detail\r\n * @param {number} contractOrderId \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ExternalGetContractOrderDetailContractOrderIdGet(contractOrderId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ExternalApiAxiosParamCreator(configuration).apiV1ExternalGetContractOrderDetailContractOrderIdGet(contractOrderId, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary External | Returns a File\r\n * @param {number} fileId \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ExternalGetFileFileIdGet(fileId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ExternalApiAxiosParamCreator(configuration).apiV1ExternalGetFileFileIdGet(fileId, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary External | Get user Purchase history Detail\r\n * @param {number} transactionId \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ExternalGetPurchaseHistoryDetailTransactionIdGet(transactionId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ExternalApiAxiosParamCreator(configuration).apiV1ExternalGetPurchaseHistoryDetailTransactionIdGet(transactionId, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * Parameter Values
\\\"SearchFieldType\\\": [\\\"1\\\" (ContractId), \\\"2\\\" (CreatedDate), \\\"3\\\" (ContractType), \\\"4\\\" (Address), \\\"5\\\" (ReferenceId), \\\"6\\\" (Status)]\r\n * @summary External | Get user Purchase history\r\n * @param {RequestTransaction} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ExternalGetPurchaseHistoryPost(body?: RequestTransaction, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ExternalApiAxiosParamCreator(configuration).apiV1ExternalGetPurchaseHistoryPost(body, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary External | Get balance of currently logged user\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ExternalGetUserBalanceGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ExternalApiAxiosParamCreator(configuration).apiV1ExternalGetUserBalanceGet(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary External | Returns a zipped File\r\n * @param {number} transactionId \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ExternalGetZippedFileTransactionIdGet(transactionId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ExternalApiAxiosParamCreator(configuration).apiV1ExternalGetZippedFileTransactionIdGet(transactionId, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary External | Topup prepaid user balance (return transactionId)\r\n * @param {Payment} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ExternalTopupPrepaidBalancePost(body?: Payment, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ExternalApiAxiosParamCreator(configuration).apiV1ExternalTopupPrepaidBalancePost(body, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary External | Resume a contract order (return contractOrderId)\r\n * @param {ContractOrder} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ExternalUpdateContractOrderPut(body?: ContractOrder, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ExternalApiAxiosParamCreator(configuration).apiV1ExternalUpdateContractOrderPut(body, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary External | Edit a contract order detail (return contractOrderId)\r\n * @param {ContractOrderDetailData} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1ExternalUpdateFinalizedContractOrderDetailPut(body?: ContractOrderDetailData, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await ExternalApiAxiosParamCreator(configuration).apiV1ExternalUpdateFinalizedContractOrderDetailPut(body, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n }\r\n};\r\n\r\n/**\r\n * ExternalApi - factory interface\r\n * @export\r\n */\r\nexport const ExternalApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\r\n return {\r\n /**\r\n * \r\n * @summary External | Order a new contract order (return contractOrderId)\r\n * @param {ContractOrder} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalCreateContractOrderPost(body?: ContractOrder, options?: any): AxiosPromise {\r\n return ExternalApiFp(configuration).apiV1ExternalCreateContractOrderPost(body, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary External | Delete not finalized contract order\r\n * @param {number} [contractOrderId] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalDeleteContractOrderDelete(contractOrderId?: number, options?: any): AxiosPromise {\r\n return ExternalApiFp(configuration).apiV1ExternalDeleteContractOrderDelete(contractOrderId, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary External | Get user order detail\r\n * @param {number} contractOrderId \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalGetContractOrderDetailContractOrderIdGet(contractOrderId: number, options?: any): AxiosPromise {\r\n return ExternalApiFp(configuration).apiV1ExternalGetContractOrderDetailContractOrderIdGet(contractOrderId, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary External | Returns a File\r\n * @param {number} fileId \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalGetFileFileIdGet(fileId: number, options?: any): AxiosPromise {\r\n return ExternalApiFp(configuration).apiV1ExternalGetFileFileIdGet(fileId, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary External | Get user Purchase history Detail\r\n * @param {number} transactionId \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalGetPurchaseHistoryDetailTransactionIdGet(transactionId: number, options?: any): AxiosPromise {\r\n return ExternalApiFp(configuration).apiV1ExternalGetPurchaseHistoryDetailTransactionIdGet(transactionId, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * Parameter Values
\\\"SearchFieldType\\\": [\\\"1\\\" (ContractId), \\\"2\\\" (CreatedDate), \\\"3\\\" (ContractType), \\\"4\\\" (Address), \\\"5\\\" (ReferenceId), \\\"6\\\" (Status)]\r\n * @summary External | Get user Purchase history\r\n * @param {RequestTransaction} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalGetPurchaseHistoryPost(body?: RequestTransaction, options?: any): AxiosPromise {\r\n return ExternalApiFp(configuration).apiV1ExternalGetPurchaseHistoryPost(body, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary External | Get balance of currently logged user\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalGetUserBalanceGet(options?: any): AxiosPromise {\r\n return ExternalApiFp(configuration).apiV1ExternalGetUserBalanceGet(options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary External | Returns a zipped File\r\n * @param {number} transactionId \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalGetZippedFileTransactionIdGet(transactionId: number, options?: any): AxiosPromise {\r\n return ExternalApiFp(configuration).apiV1ExternalGetZippedFileTransactionIdGet(transactionId, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary External | Topup prepaid user balance (return transactionId)\r\n * @param {Payment} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalTopupPrepaidBalancePost(body?: Payment, options?: any): AxiosPromise {\r\n return ExternalApiFp(configuration).apiV1ExternalTopupPrepaidBalancePost(body, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary External | Resume a contract order (return contractOrderId)\r\n * @param {ContractOrder} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalUpdateContractOrderPut(body?: ContractOrder, options?: any): AxiosPromise {\r\n return ExternalApiFp(configuration).apiV1ExternalUpdateContractOrderPut(body, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary External | Edit a contract order detail (return contractOrderId)\r\n * @param {ContractOrderDetailData} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1ExternalUpdateFinalizedContractOrderDetailPut(body?: ContractOrderDetailData, options?: any): AxiosPromise {\r\n return ExternalApiFp(configuration).apiV1ExternalUpdateFinalizedContractOrderDetailPut(body, options).then((request) => request(axios, basePath));\r\n },\r\n };\r\n};\r\n\r\n/**\r\n * ExternalApi - object-oriented interface\r\n * @export\r\n * @class ExternalApi\r\n * @extends {BaseAPI}\r\n */\r\nexport class ExternalApi extends BaseAPI {\r\n /**\r\n * \r\n * @summary External | Order a new contract order (return contractOrderId)\r\n * @param {ContractOrder} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ExternalApi\r\n */\r\n public apiV1ExternalCreateContractOrderPost(body?: ContractOrder, options?: any) {\r\n return ExternalApiFp(this.configuration).apiV1ExternalCreateContractOrderPost(body, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary External | Delete not finalized contract order\r\n * @param {number} [contractOrderId] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ExternalApi\r\n */\r\n public apiV1ExternalDeleteContractOrderDelete(contractOrderId?: number, options?: any) {\r\n return ExternalApiFp(this.configuration).apiV1ExternalDeleteContractOrderDelete(contractOrderId, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary External | Get user order detail\r\n * @param {number} contractOrderId \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ExternalApi\r\n */\r\n public apiV1ExternalGetContractOrderDetailContractOrderIdGet(contractOrderId: number, options?: any) {\r\n return ExternalApiFp(this.configuration).apiV1ExternalGetContractOrderDetailContractOrderIdGet(contractOrderId, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary External | Returns a File\r\n * @param {number} fileId \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ExternalApi\r\n */\r\n public apiV1ExternalGetFileFileIdGet(fileId: number, options?: any) {\r\n return ExternalApiFp(this.configuration).apiV1ExternalGetFileFileIdGet(fileId, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary External | Get user Purchase history Detail\r\n * @param {number} transactionId \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ExternalApi\r\n */\r\n public apiV1ExternalGetPurchaseHistoryDetailTransactionIdGet(transactionId: number, options?: any) {\r\n return ExternalApiFp(this.configuration).apiV1ExternalGetPurchaseHistoryDetailTransactionIdGet(transactionId, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * Parameter Values
\\\"SearchFieldType\\\": [\\\"1\\\" (ContractId), \\\"2\\\" (CreatedDate), \\\"3\\\" (ContractType), \\\"4\\\" (Address), \\\"5\\\" (ReferenceId), \\\"6\\\" (Status)]\r\n * @summary External | Get user Purchase history\r\n * @param {RequestTransaction} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ExternalApi\r\n */\r\n public apiV1ExternalGetPurchaseHistoryPost(body?: RequestTransaction, options?: any) {\r\n return ExternalApiFp(this.configuration).apiV1ExternalGetPurchaseHistoryPost(body, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary External | Get balance of currently logged user\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ExternalApi\r\n */\r\n public apiV1ExternalGetUserBalanceGet(options?: any) {\r\n return ExternalApiFp(this.configuration).apiV1ExternalGetUserBalanceGet(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary External | Returns a zipped File\r\n * @param {number} transactionId \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ExternalApi\r\n */\r\n public apiV1ExternalGetZippedFileTransactionIdGet(transactionId: number, options?: any) {\r\n return ExternalApiFp(this.configuration).apiV1ExternalGetZippedFileTransactionIdGet(transactionId, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary External | Topup prepaid user balance (return transactionId)\r\n * @param {Payment} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ExternalApi\r\n */\r\n public apiV1ExternalTopupPrepaidBalancePost(body?: Payment, options?: any) {\r\n return ExternalApiFp(this.configuration).apiV1ExternalTopupPrepaidBalancePost(body, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary External | Resume a contract order (return contractOrderId)\r\n * @param {ContractOrder} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ExternalApi\r\n */\r\n public apiV1ExternalUpdateContractOrderPut(body?: ContractOrder, options?: any) {\r\n return ExternalApiFp(this.configuration).apiV1ExternalUpdateContractOrderPut(body, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary External | Edit a contract order detail (return contractOrderId)\r\n * @param {ContractOrderDetailData} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof ExternalApi\r\n */\r\n public apiV1ExternalUpdateFinalizedContractOrderDetailPut(body?: ContractOrderDetailData, options?: any) {\r\n return ExternalApiFp(this.configuration).apiV1ExternalUpdateFinalizedContractOrderDetailPut(body, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n}\r\n","/* tslint:disable */\r\n/* eslint-disable */\r\n/**\r\n * DCS API\r\n * The Law Society DCS Api with Swagger, Swashbuckle, and API Versioning.\r\n *\r\n * OpenAPI spec version: 1.0\r\n * Contact: hitesh.patel@lawsociety.com.au\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\r\nimport { Configuration } from '../configuration';\r\n// Some imports not used depending on template conditions\r\n// @ts-ignore\r\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\r\nimport { RegenerateContractOrderDocsRequestModel } from '../models';\r\nimport { RegenerateContractOrderDocsViewModelResponse } from '../models';\r\nimport { UserViewIEnumerableResponse } from '../models';\r\n/**\r\n * InternalApi - axios parameter creator\r\n * @export\r\n */\r\nexport const InternalApiAxiosParamCreator = function (configuration?: Configuration) {\r\n return {\r\n /**\r\n * \r\n * @summary Regenerate 1 or more Contract Order(s). Being called from DCS Internal (aka Admin) app.\r\n * @param {RegenerateContractOrderDocsRequestModel} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1InternalRegenerateContractOrdersPost: async (body?: RegenerateContractOrderDocsRequestModel, options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/Internal/RegenerateContractOrders`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n localVarHeaderParameter['Content-Type'] = 'application/json';\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\r\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Search for user by name or LawId\r\n * @param {string} [searchString] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1InternalSearchUserGet: async (searchString?: string, options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/Internal/SearchUser`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n if (searchString !== undefined) {\r\n localVarQueryParameter['searchString'] = searchString;\r\n }\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n }\r\n};\r\n\r\n/**\r\n * InternalApi - functional programming interface\r\n * @export\r\n */\r\nexport const InternalApiFp = function(configuration?: Configuration) {\r\n return {\r\n /**\r\n * \r\n * @summary Regenerate 1 or more Contract Order(s). Being called from DCS Internal (aka Admin) app.\r\n * @param {RegenerateContractOrderDocsRequestModel} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1InternalRegenerateContractOrdersPost(body?: RegenerateContractOrderDocsRequestModel, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await InternalApiAxiosParamCreator(configuration).apiV1InternalRegenerateContractOrdersPost(body, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Search for user by name or LawId\r\n * @param {string} [searchString] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1InternalSearchUserGet(searchString?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await InternalApiAxiosParamCreator(configuration).apiV1InternalSearchUserGet(searchString, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n }\r\n};\r\n\r\n/**\r\n * InternalApi - factory interface\r\n * @export\r\n */\r\nexport const InternalApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\r\n return {\r\n /**\r\n * \r\n * @summary Regenerate 1 or more Contract Order(s). Being called from DCS Internal (aka Admin) app.\r\n * @param {RegenerateContractOrderDocsRequestModel} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1InternalRegenerateContractOrdersPost(body?: RegenerateContractOrderDocsRequestModel, options?: any): AxiosPromise {\r\n return InternalApiFp(configuration).apiV1InternalRegenerateContractOrdersPost(body, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary Internal All | Search for user by name or LawId\r\n * @param {string} [searchString] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1InternalSearchUserGet(searchString?: string, options?: any): AxiosPromise {\r\n return InternalApiFp(configuration).apiV1InternalSearchUserGet(searchString, options).then((request) => request(axios, basePath));\r\n },\r\n };\r\n};\r\n\r\n/**\r\n * InternalApi - object-oriented interface\r\n * @export\r\n * @class InternalApi\r\n * @extends {BaseAPI}\r\n */\r\nexport class InternalApi extends BaseAPI {\r\n /**\r\n * \r\n * @summary Regenerate 1 or more Contract Order(s). Being called from DCS Internal (aka Admin) app.\r\n * @param {RegenerateContractOrderDocsRequestModel} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof InternalApi\r\n */\r\n public apiV1InternalRegenerateContractOrdersPost(body?: RegenerateContractOrderDocsRequestModel, options?: any) {\r\n return InternalApiFp(this.configuration).apiV1InternalRegenerateContractOrdersPost(body, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary Internal All | Search for user by name or LawId\r\n * @param {string} [searchString] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof InternalApi\r\n */\r\n public apiV1InternalSearchUserGet(searchString?: string, options?: any) {\r\n return InternalApiFp(this.configuration).apiV1InternalSearchUserGet(searchString, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n}\r\n","/* tslint:disable */\r\n/* eslint-disable */\r\n/**\r\n * DCS API\r\n * The Law Society DCS Api with Swagger, Swashbuckle, and API Versioning.\r\n *\r\n * OpenAPI spec version: 1.0\r\n * Contact: hitesh.patel@lawsociety.com.au\r\n *\r\n * NOTE: This class is auto generated by the swagger code generator program.\r\n * https://github.com/swagger-api/swagger-codegen.git\r\n * Do not edit the class manually.\r\n */\r\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\r\nimport { Configuration } from '../configuration';\r\n// Some imports not used depending on template conditions\r\n// @ts-ignore\r\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\r\nimport { LogEntryBusiness } from '../models';\r\nimport { ObjectIEnumerableResponse } from '../models';\r\nimport { ObjectResponse } from '../models';\r\n/**\r\n * SystemApi - axios parameter creator\r\n * @export\r\n */\r\nexport const SystemApiAxiosParamCreator = function (configuration?: Configuration) {\r\n return {\r\n /**\r\n * \r\n * @summary Authorize | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemAuthorizedPingGet: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/System/AuthorizedPing`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns 401 Unauthorized\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemGetAuthError401Get: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/System/GetAuthError401`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns 403 Forbidden\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemGetAuthError403Get: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/System/GetAuthError403`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemGetBaseDateGet: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/System/GetBaseDate`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemGetBaseDateUtcGet: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/System/GetBaseDateUtc`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemGetBaseDateWebJobGet: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/System/GetBaseDateWebJob`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemPingGet: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/System/Ping`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemPingLsApiGet: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/System/PingLsApi`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemPingLsApiPolarisGet: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/System/PingLsApiPolaris`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemPingLsApiSchemeApiGet: async (options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/System/PingLsApiSchemeApi`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Authorize | Put logs into system\r\n * @param {LogEntryBusiness} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemSaveLogEntryBusinessPost: async (body?: LogEntryBusiness, options: any = {}): Promise => {\r\n const localVarPath = `/api/v1/System/SaveLogEntryBusiness`;\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n localVarHeaderParameter['Content-Type'] = 'application/json';\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\r\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n /**\r\n * \r\n * @summary API User Only | Set ConfigCurrentDate\r\n * @param {string} dateTimeString \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemSetConfigCurrentDateDateTimeStringGet: async (dateTimeString: string, options: any = {}): Promise => {\r\n // verify required parameter 'dateTimeString' is not null or undefined\r\n if (dateTimeString === null || dateTimeString === undefined) {\r\n throw new RequiredError('dateTimeString','Required parameter dateTimeString was null or undefined when calling apiV1SystemSetConfigCurrentDateDateTimeStringGet.');\r\n }\r\n const localVarPath = `/api/v1/System/SetConfigCurrentDate/{dateTimeString}`\r\n .replace(`{${\"dateTimeString\"}}`, encodeURIComponent(String(dateTimeString)));\r\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\r\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\r\n let baseOptions;\r\n if (configuration) {\r\n baseOptions = configuration.baseOptions;\r\n }\r\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\r\n const localVarHeaderParameter = {} as any;\r\n const localVarQueryParameter = {} as any;\r\n\r\n // authentication Bearer required\r\n\r\n const query = new URLSearchParams(localVarUrlObj.search);\r\n for (const key in localVarQueryParameter) {\r\n query.set(key, localVarQueryParameter[key]);\r\n }\r\n for (const key in options.query) {\r\n query.set(key, options.query[key]);\r\n }\r\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\r\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\r\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\r\n\r\n return {\r\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\r\n options: localVarRequestOptions,\r\n };\r\n },\r\n }\r\n};\r\n\r\n/**\r\n * SystemApi - functional programming interface\r\n * @export\r\n */\r\nexport const SystemApiFp = function(configuration?: Configuration) {\r\n return {\r\n /**\r\n * \r\n * @summary Authorize | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1SystemAuthorizedPingGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemAuthorizedPingGet(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns 401 Unauthorized\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1SystemGetAuthError401Get(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemGetAuthError401Get(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary All | Returns 403 Forbidden\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1SystemGetAuthError403Get(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemGetAuthError403Get(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1SystemGetBaseDateGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemGetBaseDateGet(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1SystemGetBaseDateUtcGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemGetBaseDateUtcGet(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1SystemGetBaseDateWebJobGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemGetBaseDateWebJobGet(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1SystemPingGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemPingGet(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1SystemPingLsApiGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemPingLsApiGet(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1SystemPingLsApiPolarisGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemPingLsApiPolarisGet(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1SystemPingLsApiSchemeApiGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemPingLsApiSchemeApiGet(options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary Authorize | Put logs into system\r\n * @param {LogEntryBusiness} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1SystemSaveLogEntryBusinessPost(body?: LogEntryBusiness, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemSaveLogEntryBusinessPost(body, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n /**\r\n * \r\n * @summary API User Only | Set ConfigCurrentDate\r\n * @param {string} dateTimeString \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n async apiV1SystemSetConfigCurrentDateDateTimeStringGet(dateTimeString: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\r\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemSetConfigCurrentDateDateTimeStringGet(dateTimeString, options);\r\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\r\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\r\n return axios.request(axiosRequestArgs);\r\n };\r\n },\r\n }\r\n};\r\n\r\n/**\r\n * SystemApi - factory interface\r\n * @export\r\n */\r\nexport const SystemApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\r\n return {\r\n /**\r\n * \r\n * @summary Authorize | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemAuthorizedPingGet(options?: any): AxiosPromise {\r\n return SystemApiFp(configuration).apiV1SystemAuthorizedPingGet(options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary All | Returns 401 Unauthorized\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemGetAuthError401Get(options?: any): AxiosPromise {\r\n return SystemApiFp(configuration).apiV1SystemGetAuthError401Get(options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary All | Returns 403 Forbidden\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemGetAuthError403Get(options?: any): AxiosPromise {\r\n return SystemApiFp(configuration).apiV1SystemGetAuthError403Get(options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemGetBaseDateGet(options?: any): AxiosPromise {\r\n return SystemApiFp(configuration).apiV1SystemGetBaseDateGet(options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemGetBaseDateUtcGet(options?: any): AxiosPromise {\r\n return SystemApiFp(configuration).apiV1SystemGetBaseDateUtcGet(options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemGetBaseDateWebJobGet(options?: any): AxiosPromise {\r\n return SystemApiFp(configuration).apiV1SystemGetBaseDateWebJobGet(options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemPingGet(options?: any): AxiosPromise {\r\n return SystemApiFp(configuration).apiV1SystemPingGet(options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemPingLsApiGet(options?: any): AxiosPromise {\r\n return SystemApiFp(configuration).apiV1SystemPingLsApiGet(options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemPingLsApiPolarisGet(options?: any): AxiosPromise {\r\n return SystemApiFp(configuration).apiV1SystemPingLsApiPolarisGet(options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemPingLsApiSchemeApiGet(options?: any): AxiosPromise {\r\n return SystemApiFp(configuration).apiV1SystemPingLsApiSchemeApiGet(options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary Authorize | Put logs into system\r\n * @param {LogEntryBusiness} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemSaveLogEntryBusinessPost(body?: LogEntryBusiness, options?: any): AxiosPromise {\r\n return SystemApiFp(configuration).apiV1SystemSaveLogEntryBusinessPost(body, options).then((request) => request(axios, basePath));\r\n },\r\n /**\r\n * \r\n * @summary API User Only | Set ConfigCurrentDate\r\n * @param {string} dateTimeString \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n */\r\n apiV1SystemSetConfigCurrentDateDateTimeStringGet(dateTimeString: string, options?: any): AxiosPromise {\r\n return SystemApiFp(configuration).apiV1SystemSetConfigCurrentDateDateTimeStringGet(dateTimeString, options).then((request) => request(axios, basePath));\r\n },\r\n };\r\n};\r\n\r\n/**\r\n * SystemApi - object-oriented interface\r\n * @export\r\n * @class SystemApi\r\n * @extends {BaseAPI}\r\n */\r\nexport class SystemApi extends BaseAPI {\r\n /**\r\n * \r\n * @summary Authorize | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof SystemApi\r\n */\r\n public apiV1SystemAuthorizedPingGet(options?: any) {\r\n return SystemApiFp(this.configuration).apiV1SystemAuthorizedPingGet(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary All | Returns 401 Unauthorized\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof SystemApi\r\n */\r\n public apiV1SystemGetAuthError401Get(options?: any) {\r\n return SystemApiFp(this.configuration).apiV1SystemGetAuthError401Get(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary All | Returns 403 Forbidden\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof SystemApi\r\n */\r\n public apiV1SystemGetAuthError403Get(options?: any) {\r\n return SystemApiFp(this.configuration).apiV1SystemGetAuthError403Get(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof SystemApi\r\n */\r\n public apiV1SystemGetBaseDateGet(options?: any) {\r\n return SystemApiFp(this.configuration).apiV1SystemGetBaseDateGet(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof SystemApi\r\n */\r\n public apiV1SystemGetBaseDateUtcGet(options?: any) {\r\n return SystemApiFp(this.configuration).apiV1SystemGetBaseDateUtcGet(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof SystemApi\r\n */\r\n public apiV1SystemGetBaseDateWebJobGet(options?: any) {\r\n return SystemApiFp(this.configuration).apiV1SystemGetBaseDateWebJobGet(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof SystemApi\r\n */\r\n public apiV1SystemPingGet(options?: any) {\r\n return SystemApiFp(this.configuration).apiV1SystemPingGet(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof SystemApi\r\n */\r\n public apiV1SystemPingLsApiGet(options?: any) {\r\n return SystemApiFp(this.configuration).apiV1SystemPingLsApiGet(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof SystemApi\r\n */\r\n public apiV1SystemPingLsApiPolarisGet(options?: any) {\r\n return SystemApiFp(this.configuration).apiV1SystemPingLsApiPolarisGet(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary Allow Anonymous | Returns current date time\r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof SystemApi\r\n */\r\n public apiV1SystemPingLsApiSchemeApiGet(options?: any) {\r\n return SystemApiFp(this.configuration).apiV1SystemPingLsApiSchemeApiGet(options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary Authorize | Put logs into system\r\n * @param {LogEntryBusiness} [body] \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof SystemApi\r\n */\r\n public apiV1SystemSaveLogEntryBusinessPost(body?: LogEntryBusiness, options?: any) {\r\n return SystemApiFp(this.configuration).apiV1SystemSaveLogEntryBusinessPost(body, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n /**\r\n * \r\n * @summary API User Only | Set ConfigCurrentDate\r\n * @param {string} dateTimeString \r\n * @param {*} [options] Override http request option.\r\n * @throws {RequiredError}\r\n * @memberof SystemApi\r\n */\r\n public apiV1SystemSetConfigCurrentDateDateTimeStringGet(dateTimeString: string, options?: any) {\r\n return SystemApiFp(this.configuration).apiV1SystemSetConfigCurrentDateDateTimeStringGet(dateTimeString, options).then((request) => request(this.axios, this.basePath));\r\n }\r\n}\r\n","import globalAxios, { AxiosInstance } from \"axios\";\r\nimport { CodeApi, SystemApi, Configuration, AdjustmentApi, ContractApi, InternalApi, ExternalApi } from \"@/shared/modules/typescript-api-client\";\r\nexport const BASE_PATH = \"/\".replace(/\\/+$/, \"\");\r\n\r\nexport class DCSApi {\r\n public CodeApi?: CodeApi;\r\n public AdjustmentApi?: AdjustmentApi;\r\n public ContractApi?: ContractApi;\r\n public InternalApi?: InternalApi;\r\n public ExternalApi?: ExternalApi;\r\n public systemApi?: SystemApi;\r\n\r\n constructor(\r\n configuration?: Configuration,\r\n protected basePath: string = BASE_PATH,\r\n protected axios: AxiosInstance = globalAxios\r\n ) {\r\n this.CodeApi = new CodeApi(configuration, basePath, axios);\r\n this.AdjustmentApi = new AdjustmentApi(configuration, basePath, axios);\r\n this.ContractApi = new ContractApi(configuration, basePath, axios);\r\n this.InternalApi = new InternalApi(configuration, basePath, axios);\r\n this.ExternalApi = new ExternalApi(configuration, basePath, axios);\r\n this.systemApi = new SystemApi(configuration, basePath, axios);\r\n }\r\n}\r\n","import { createStore } from 'vuex'\r\nimport { EventEmitter } from 'events'\r\nimport { AuthorizedUser } from '../models/authorized-user'\r\n\r\nexport default createStore({\r\n state: {\r\n eventController: new EventEmitter(),\r\n authorizedUser: new AuthorizedUser(),\r\n snackbar: [],\r\n searchType: 0,\r\n searchKeyword: '',\r\n searchResult: null,\r\n selectedMember: null,\r\n contractData: {},\r\n },\r\n mutations: {\r\n setUserAccount(state, authorizedUser: AuthorizedUser) {\r\n state.authorizedUser = authorizedUser;\r\n },\r\n setSnackbar(state, sb) {\r\n state.snackbar = sb;\r\n },\r\n setSearchType(state, st) {\r\n state.searchType = st;\r\n window.sessionStorage.setItem('st', st);\r\n },\r\n setSearchKeyword(state, sk) {\r\n state.searchKeyword = sk;\r\n window.sessionStorage.setItem('sk', sk);\r\n },\r\n setSearchResult(state, sr) {\r\n state.searchResult = sr;\r\n // window.sessionStorage.setItem('sr', JSON.stringify(sr));\r\n },\r\n setSelectedMember(state, m) {\r\n state.selectedMember = m;\r\n },\r\n setContractData(state, cd) {\r\n state.contractData = cd;\r\n window.sessionStorage.setItem('contractData', JSON.stringify(cd));\r\n }\r\n },\r\n actions: { // store.dispatch\r\n setUserAccount({ commit }, authorizedUser: AuthorizedUser) {\r\n commit('setAuthorizedUser', authorizedUser);\r\n },\r\n setSnackbar({ commit }, sb) {\r\n // console.log('setSnackbar:', sb);\r\n commit('setSnackbar', sb);\r\n },\r\n setSearchType({ commit }, st) {\r\n commit('setSearchType', st);\r\n },\r\n setSearchKeyword({ commit }, sk) {\r\n commit('setSearchKeyword', sk);\r\n },\r\n setSearchResult({ commit }, sr) {\r\n commit('setSearchResult', sr);\r\n },\r\n setSelectedMember({ commit }, m) {\r\n commit('setSelectedMember', m);\r\n },\r\n setContractData({ commit }, cd) {\r\n commit('setContractData', cd);\r\n }\r\n },\r\n modules: {\r\n },\r\n getters: {\r\n getEventController: (state) => state.eventController,\r\n getUserAccount: (state) => state.authorizedUser,\r\n getSnackbar: (state) => state.snackbar,\r\n getSearchType: (state) => state.searchType,\r\n getSearchKeyword: (state) => state.searchKeyword,\r\n getSearchResult: (state) => state.searchResult,\r\n getSelectedMember: (state) => state.selectedMember,\r\n getContractData: (state) => state.contractData,\r\n }\r\n})\r\n","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withModifiers as _withModifiers, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6821cd87\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-times\" }, null, -1))\nconst _hoisted_2 = [\n _hoisted_1\n]\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", null, [\n (_ctx.showSnackbar)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n ref: \"snackbar\",\n class: _normalizeClass([\"snackbar\", [_ctx.statusType, _ctx.showSnackbar ? 'show' : '']])\n }, [\n _createElementVNode(\"p\", null, _toDisplayString(_ctx.message), 1),\n _createElementVNode(\"span\", {\n class: \"close\",\n onClick: _cache[0] || (_cache[0] = _withModifiers($event => (_ctx.close()), [\"prevent\",\"stop\"])),\n title: \"Dismiss\"\n }, _hoisted_2)\n ], 2))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { Vue } from 'vue-class-component';\r\nimport { EventEmitter } from 'events';\r\nimport store from '@/shared/store';\r\n/**\r\n * Snackbar\r\n * \r\n * @export\r\n * @class Snackbar\r\n * @extends {Vue}\r\n * \r\n // snackbar usage: \r\n // import { Options, Vue } from \"vue-class-component\";\r\n // import { Component } from \"vue-property-decorator\";\r\n // import SnackBar from \"../shared/components/snackbar/index.vue\";\r\n // import { EventEmitter } from 'events';\r\n // import store from '@/store';\r\n\r\n\r\n // @Options({\r\n // components: {\r\n // SnackBar\r\n // }\r\n // })\r\n\r\n\r\n // get eventCtrl(): EventEmitter {\r\n // return store.getters.getEventController;\r\n // }\r\n\r\n // someFunction() {\r\n // this.eventCtrl.emit('show-snackbar', 'error', 'File upload failed');\r\n // }\r\n\r\n // error\r\n // background-color #f44336\r\n // warning\r\n // background-color #ff9800\r\n // info\r\n // background-color #2196f3\r\n // success\r\n // background-color #4caf50\r\n */\r\nexport default class Snackbar extends Vue {\r\n showSnackbar = false;\r\n message = '';\r\n statusType = '';\r\n timeoutID = 0;\r\n stayOnTiming = 10000;\r\n snackbar: any;\r\n\r\n get eventCtrl(): EventEmitter {\r\n return store.getters.getEventController;\r\n }\r\n\r\n show(statusT: string, message: string) {\r\n this.statusType = statusT;\r\n this.stayOnTiming = this.statusType == 'error' ? 3*10000 : 10000;\r\n this.message = message || '';\r\n this.showSnackbar = true;\r\n setTimeout(() => { this.snackbar = this.$refs.snackbar; }, 0);\r\n this.timeoutID = setTimeout(() => { this.showSnackbar = false; }, this.stayOnTiming);\r\n }\r\n\r\n close(): void {\r\n this.showSnackbar = false;\r\n }\r\n\r\n mounted() {\r\n this.eventCtrl.on('show-snackbar', this.show);\r\n }\r\n\r\n beforeUnmount() {\r\n this.eventCtrl.removeListener('show-snackbar', this.show);\r\n }\r\n\r\n \r\n\r\n}\r\n\r\n","import { render } from \"./snackbar.html?vue&type=template&id=6821cd87&scoped=true&ts=true\"\nimport script from \"./snackbar.ts?vue&type=script&lang=ts\"\nexport * from \"./snackbar.ts?vue&type=script&lang=ts\"\n\nimport \"./snackbar.scss?vue&type=style&index=0&id=6821cd87&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-6821cd87\"]])\n\nexport default __exports__","import { ApplicationInsights } from '@microsoft/applicationinsights-web'\r\nimport { AZ_INSTRUMENT_KEY_EXT } from '@/shared/config/config'\r\n\r\nconst appInsights = new ApplicationInsights({\r\n config: {\r\n instrumentationKey: AZ_INSTRUMENT_KEY_EXT,\r\n enableAutoRouteTracking: true,\r\n /* ...Other Configuration Options... */\r\n // https://docs.microsoft.com/en-us/azure/azure-monitor/app/javascript\r\n }\r\n});\r\n\r\n// https://github.com/microsoft/ApplicationInsights-JS#readme\r\nexport class AppInsights {\r\n\r\n public loadAppInsights() {\r\n appInsights.loadAppInsights();\r\n }\r\n\r\n public trackPageView() {\r\n appInsights.trackPageView();\r\n }\r\n\r\n public trackEvent(eventString: string) {\r\n appInsights.trackEvent({ name: eventString })\r\n }\r\n\r\n // public trackPageViewPerformance() {\r\n // appInsights.trackPageViewPerformance({name : 'somepage', url: 'some url'});\r\n // }\r\n\r\n public trackException(err: string) {\r\n appInsights.trackException({ exception: new Error(err) });\r\n }\r\n\r\n public trackTrace(msg: string) {\r\n appInsights.trackTrace({ message: msg });\r\n }\r\n\r\n public trackMetric(n: string, avg: number) {\r\n appInsights.trackMetric({ name: n, average: avg });\r\n }\r\n\r\n\r\n // public trackDependencyData(absUrl: string, resCode: number, method: string, id: string) {\r\n // appInsights.trackDependencyData({ absoluteUrl: absUrl, responseCode: resCode, method: method, id: id });\r\n // }\r\n\r\n public startTrackPage(pageName: string) {\r\n appInsights.startTrackPage(pageName);\r\n }\r\n\r\n\r\n public stopTrackPage(pageName: string, url: string, props: any) {\r\n // appInsights.stopTrackPage(\"pageName\", null, { customProp1: \"some value\" });\r\n appInsights.stopTrackPage(pageName, url, props);\r\n }\r\n\r\n public startTrackEvent(et: any) {\r\n appInsights.startTrackEvent(et);\r\n }\r\n\r\n\r\n // public stopTrackEvent(et: any, url: string, props: any) {\r\n // // appInsights.stopTrackEvent(\"event\", null, { customProp1: \"some value\" });\r\n // }\r\n\r\n\r\n public flush() {\r\n appInsights.flush();\r\n }\r\n\r\n\r\n}\r\n","import { API_URL, SELF_URL, TOKEN_REFRESH_TIME } from \"@/shared/config/config\";\r\nimport { RouteN } from \"@/shared/constants/route-name\";\r\nimport { AuthorizedUser } from \"@/shared/models/authorized-user\";\r\nimport AuthenticationService from \"@/shared/modules/authentication/authentication.service\";\r\nimport { DCSApi } from \"@/shared/modules/dcs-api\";\r\nimport store from \"@/shared/store\";\r\nimport axios, { AxiosInstance } from \"axios\";\r\nimport { EventEmitter } from \"events\";\r\nimport { Vue } from \"vue-class-component\";\r\nimport { Provide, Options } from 'vue-property-decorator';\r\nimport * as HttpStatus from 'http-status-codes';\r\n\r\nimport SnackBar from \"../shared/components/snackbar/index.vue\";\r\nimport moment from \"moment\";\r\nimport { AppInsights } from \"./appInsights\";\r\n\r\n@Options({\r\n components: {\r\n SnackBar\r\n }\r\n})\r\nexport default class App extends Vue {\r\n private ai = new AppInsights;\r\n\r\n private apiAxios?: AxiosInstance;\r\n private authApiAxios?: AxiosInstance;\r\n private gettingToken?: boolean;\r\n private authService?: AuthenticationService;\r\n private authorizedUser: AuthorizedUser = new AuthorizedUser;\r\n\r\n @Provide({ to: 'apiService', reactive: true })\r\n private apiService: DCSApi = new DCSApi();\r\n\r\n get eventCtrl(): EventEmitter {\r\n return store.getters.getEventController;\r\n }\r\n\r\n created(): void {\r\n this.apiAxios = axios.create();\r\n\r\n this.authApiAxios = axios.create();\r\n\r\n this.authorizedUser = store.getters.getUserAccount;\r\n this.authService = new AuthenticationService(this.authorizedUser, this.authApiAxios);\r\n this.gettingToken = false;\r\n\r\n this.apiAxios.interceptors.request.use(async (config) => {\r\n\r\n const refreshToken = (this.authorizedUser.session.issued + TOKEN_REFRESH_TIME)\r\n < Math.round(new Date().getTime() / 1000) && !this.gettingToken;\r\n\r\n while (this.gettingToken) {\r\n await new Promise(resolve => setTimeout(resolve, 100));\r\n }\r\n\r\n try {\r\n\r\n if (refreshToken) {\r\n this.gettingToken = true;\r\n this.authorizedUser.token.tokenStr = '';\r\n await this.authService?.checkAuthentication();\r\n this.gettingToken = false;\r\n }\r\n\r\n // if (config.headers) {\r\n // config.headers.Authorization = 'bearer ' + this.authorizedUser.token.tokenStr;\r\n // }\r\n if (config.headers === undefined) {\r\n config.headers = {};\r\n } else {\r\n config.headers.Authorization = 'bearer ' + this.authorizedUser.token.tokenStr;\r\n }\r\n\r\n // console.log('*** refresh token: ', \r\n // refreshToken, \r\n // moment.unix(this.authorizedUser.session.expires).format('DD/MMM/YYYY hh:mm:ss'), \r\n // moment.unix(this.authorizedUser.session.issued + TOKEN_REFRESH_TIME).format('DD/MMM/YYYY hh:mm:ss'));\r\n\r\n return Promise.resolve(config);\r\n } catch (err) {\r\n this.gettingToken = false;\r\n return Promise.reject(config);\r\n }\r\n\r\n });\r\n\r\n this.apiAxios.interceptors.response.use((response) => {\r\n try {\r\n this.ai.trackTrace('apiAxios.interceptors.response: ' + JSON.stringify(response));\r\n } catch (err) {\r\n //\r\n }\r\n return response;\r\n }, (error) => {\r\n try {\r\n this.ai.trackException('apiAxios.interceptors.response error: ' + JSON.stringify(error));\r\n } catch (err) {\r\n this.ai.trackException('apiAxios.interceptors.response error: ' + error + ' , JSON parse error: ' + err);\r\n }\r\n if (error.response.status === HttpStatus.UNAUTHORIZED || error.response.status === HttpStatus.FORBIDDEN) {\r\n document.location.href = RouteN.DCSE.LoginPage.p + '?redirect=' + this.$route.fullPath;\r\n }\r\n return Promise.reject(error);\r\n });\r\n\r\n this.apiService = new DCSApi(undefined, API_URL, this.apiAxios);\r\n }\r\n\r\n}\r\n","import { render } from \"./app.html?vue&type=template&id=42934481&ts=true\"\nimport script from \"./app.ts?vue&type=script&lang=ts\"\nexport * from \"./app.ts?vue&type=script&lang=ts\"\n\nimport \"./app.scss?vue&type=style&index=0&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","/* eslint-disable no-console */\r\n\r\nimport { register } from 'register-service-worker'\r\n\r\nif (process.env.NODE_ENV === 'production') {\r\n register(`${process.env.BASE_URL}service-worker.js`, {\r\n ready () {\r\n console.log(\r\n 'App is being served from cache by a service worker.\\n' +\r\n 'For more details, visit https://goo.gl/AFskqB'\r\n )\r\n },\r\n registered () {\r\n console.log('Service worker has been registered.')\r\n },\r\n cached () {\r\n console.log('Content has been cached for offline use.')\r\n },\r\n updatefound () {\r\n console.log('New content is downloading.')\r\n },\r\n updated () {\r\n console.log('New content is available; please refresh.')\r\n },\r\n offline () {\r\n console.log('No internet connection found. App is running in offline mode.')\r\n },\r\n error (error) {\r\n console.error('Error during service worker registration:', error)\r\n }\r\n })\r\n}\r\n","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, withModifiers as _withModifiers, normalizeClass as _normalizeClass, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, createVNode as _createVNode, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5c7f4c9b\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"home\" }\nconst _hoisted_2 = { class: \"welcome\" }\nconst _hoisted_3 = { class: \"nowrap\" }\nconst _hoisted_4 = { class: \"btn-bar\" }\nconst _hoisted_5 = { class: \"selection-filter\" }\nconst _hoisted_6 = { class: \"account-selection-main\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-shopping-cart\" }, null, -1))\nconst _hoisted_8 = /*#__PURE__*/_createTextVNode()\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"Buy new contracts\", -1))\nconst _hoisted_10 = [\n _hoisted_7,\n _hoisted_8,\n _hoisted_9\n]\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-clipboard-list-check\" }, null, -1))\nconst _hoisted_12 = /*#__PURE__*/_createTextVNode()\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"My purchase history\", -1))\nconst _hoisted_14 = [\n _hoisted_11,\n _hoisted_12,\n _hoisted_13\n]\nconst _hoisted_15 = { class: \"top-up-div\" }\nconst _hoisted_16 = { class: \"top-up-msg\" }\nconst _hoisted_17 = /*#__PURE__*/_createTextVNode(\"Your prepaid account balance is \")\nconst _hoisted_18 = [\"disabled\"]\nconst _hoisted_19 = /*#__PURE__*/_createTextVNode(\"Top up\")\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-angle-right\" })\n], -1))\nconst _hoisted_21 = [\n _hoisted_19,\n _hoisted_20\n]\nconst _hoisted_22 = {\n key: 1,\n class: \"cards\"\n}\nconst _hoisted_23 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, null, -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_CardPortrait = _resolveComponent(\"CardPortrait\")\n const _component_HistorySearch = _resolveComponent(\"HistorySearch\")\n const _component_HelpContent = _resolveComponent(\"HelpContent\")\n const _component_HelpScreen = _resolveComponent(\"HelpScreen\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingSpinner, { key: 0 }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, \"Welcome \" + _toDisplayString(_ctx.displayName) + \" to the Digital Contracts Service\", 1),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"button\", {\n class: \"btn btn-outline dark sml\",\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.contactUs()))\n }, \"Contact Us\"),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline dark sml ml-2\",\n onClick: _cache[1] || (_cache[1] = $event => (_ctx.showHelpScreen = true))\n }, \"Help\")\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"div\", _hoisted_6, [\n _createElementVNode(\"button\", {\n class: _normalizeClass([\"tap\", [_ctx.searchType == 1 ? 'active' : '']]),\n style: {\"flex\":\"1\",\"margin-right\":\"15px\"},\n onClick: _cache[2] || (_cache[2] = _withModifiers($event => (_ctx.selectType(1)), [\"prevent\"]))\n }, _hoisted_10, 2),\n _createElementVNode(\"button\", {\n class: _normalizeClass([\"tap\", [_ctx.searchType == 2 ? 'active' : '']]),\n style: {\"flex\":\"1\",\"margin-left\":\"15px\"},\n onClick: _cache[3] || (_cache[3] = _withModifiers($event => (_ctx.selectType(2)), [\"prevent\"]))\n }, _hoisted_14, 2)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_15, [\n _createElementVNode(\"span\", _hoisted_16, [\n _hoisted_17,\n _createElementVNode(\"strong\", null, _toDisplayString(_ctx.toCurrency(_ctx.prepaidBalance)), 1)\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n disabled: _ctx.isLoadingData,\n onClick: _cache[4] || (_cache[4] = $event => (_ctx.topUp()))\n }, _hoisted_21, 8, _hoisted_18)\n ]),\n (_ctx.searchType == 1 && _ctx.contractList.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.contractList, (c, idx) => {\n return (_openBlock(), _createBlock(_component_CardPortrait, {\n onNewContract: $event => (_ctx.newContract(c)),\n contract: _ctx.contractList[idx],\n \"onUpdate:contract\": $event => ((_ctx.contractList[idx]) = $event),\n title: \"Purchase this contract\"\n }, null, 8, [\"onNewContract\", \"contract\", \"onUpdate:contract\"]))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.searchType == 2)\n ? (_openBlock(), _createBlock(_component_HistorySearch, { key: 2 }))\n : _createCommentVNode(\"\", true),\n (_ctx.showHelpScreen)\n ? (_openBlock(), _createBlock(_component_HelpScreen, {\n key: 3,\n onClose: _cache[6] || (_cache[6] = $event => (_ctx.showHelpScreen = false))\n }, {\n header: _withCtx(() => [\n _hoisted_23\n ]),\n body: _withCtx(() => [\n _createVNode(_component_HelpContent, {\n helpContentData: _ctx.helpContentData,\n \"onUpdate:helpContentData\": _cache[5] || (_cache[5] = $event => ((_ctx.helpContentData) = $event))\n }, null, 8, [\"helpContentData\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, renderSlot as _renderSlot, normalizeClass as _normalizeClass, Transition as _Transition, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-cfccac6a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"help-screen\" }\nconst _hoisted_2 = { class: \"modal-mask\" }\nconst _hoisted_3 = { class: \"modal-wrapper\" }\nconst _hoisted_4 = { class: \"button-bar\" }\nconst _hoisted_5 = /*#__PURE__*/_createTextVNode(\" Close \")\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-angle-right\" })\n], -1))\nconst _hoisted_7 = [\n _hoisted_5,\n _hoisted_6\n]\nconst _hoisted_8 = { class: \"modal-header\" }\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Help Section:\", -1))\nconst _hoisted_10 = { class: \"modal-body\" }\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, \" -- slot name: body -- Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. \", -1))\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"ul\", null, [\n /*#__PURE__*/_createElementVNode(\"li\", null, \" Section 1 \"),\n /*#__PURE__*/_createElementVNode(\"li\", null, \" Section 2 \"),\n /*#__PURE__*/_createElementVNode(\"li\", null, \" Section 3 \")\n], -1))\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, \" Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. \", -1))\nconst _hoisted_14 = { class: \"modal-footer row\" }\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_Transition, { name: \"modal\" }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"modal-container\", [{'is-closing' : _ctx.isClosing} ]])\n }, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: _cache[0] || (_cache[0] = (...args) => (_ctx.close && _ctx.close(...args)))\n }, _hoisted_7)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_8, [\n _renderSlot(_ctx.$slots, \"header\", {}, () => [\n _hoisted_9\n ], true)\n ]),\n _createElementVNode(\"div\", _hoisted_10, [\n _renderSlot(_ctx.$slots, \"body\", {}, () => [\n _hoisted_11,\n _hoisted_12,\n _hoisted_13\n ], true)\n ]),\n _createElementVNode(\"div\", _hoisted_14, [\n _renderSlot(_ctx.$slots, \"footer\", {}, undefined, true)\n ])\n ], 2)\n ])\n ])\n ]),\n _: 3\n })\n ]))\n}","import { Options, Vue } from 'vue-class-component';\r\n\r\n@Options({\r\n components: {\r\n },\r\n})\r\nexport default class HelpScreen extends Vue {\r\n\r\n private isClosing = false;\r\n\r\n mounted(): void {\r\n document.body.classList.add('modal-open');\r\n document.addEventListener('keydown', this.onEscape);\r\n }\r\n\r\n beforeUnmount(): void {\r\n document.body.classList.remove('modal-open');\r\n document.removeEventListener('keydown', this.onEscape);\r\n }\r\n\r\n private onEscape(e: KeyboardEvent) {\r\n if (e.key.toLowerCase() === 'escape') {\r\n this.close();\r\n }\r\n }\r\n\r\n private close() {\r\n this.isClosing = true;\r\n setTimeout(() => {\r\n this.$emit('close');\r\n }, 500);\r\n }\r\n\r\n}\r\n","import { render } from \"./help-screen.html?vue&type=template&id=cfccac6a&scoped=true&ts=true\"\nimport script from \"./help-screen.ts?vue&type=script&lang=ts\"\nexport * from \"./help-screen.ts?vue&type=script&lang=ts\"\n\nimport \"./help-screen.scss?vue&type=style&index=0&id=cfccac6a&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-cfccac6a\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, createStaticVNode as _createStaticVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5c8d28fd\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"card-landscape\" }\nconst _hoisted_2 = /*#__PURE__*/_createStaticVNode(\"
LAND
Contract for the sale and purchase of land (2019 Edition)
12345
$8.00 Member
$10.00 Non Member
\", 1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, _hoisted_3))\n}","\r\nimport {Vue} from \"vue-property-decorator\";\r\n\r\n\r\nexport default class CardLandscape extends Vue {\r\n\r\n}\r\n\r\n","import { render } from \"./card-landscape.html?vue&type=template&id=5c8d28fd&scoped=true&ts=true\"\nimport script from \"./card-landscape.ts?vue&type=script&lang=ts\"\nexport * from \"./card-landscape.ts?vue&type=script&lang=ts\"\n\nimport \"./card-landscape.scss?vue&type=style&index=0&id=5c8d28fd&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5c8d28fd\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-094c7f32\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"card-portrait\" }\nconst _hoisted_2 = { class: \"card-wrapper\" }\nconst _hoisted_3 = { class: \"img\" }\nconst _hoisted_4 = [\"src\"]\nconst _hoisted_5 = { class: \"content\" }\nconst _hoisted_6 = { class: \"card-type\" }\nconst _hoisted_7 = [\"title\"]\nconst _hoisted_8 = { class: \"sku mt-2\" }\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"h-line mt-2\" }, null, -1))\nconst _hoisted_10 = { class: \"fee mt-2\" }\nconst _hoisted_11 = { class: \"fee\" }\nconst _hoisted_12 = /*#__PURE__*/_createTextVNode(\"Purchase\")\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-angle-right\" })\n], -1))\nconst _hoisted_14 = [\n _hoisted_12,\n _hoisted_13\n]\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"img\", {\n src: _ctx.getImageSrc(_ctx.contract)\n }, null, 8, _hoisted_4)\n ]),\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"div\", _hoisted_6, _toDisplayString(_ctx.contract.contractType), 1),\n _createElementVNode(\"div\", {\n class: \"card-title\",\n title: _ctx.contract.description\n }, _toDisplayString(_ctx.contract.description), 9, _hoisted_7),\n _createElementVNode(\"div\", _hoisted_8, _toDisplayString(_ctx.contract.sku), 1),\n _hoisted_9,\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"strong\", null, _toDisplayString(_ctx.toCurrency(_ctx.contract.feeMember)) + \" Member\", 1)\n ]),\n _createElementVNode(\"div\", _hoisted_11, _toDisplayString(_ctx.toCurrency(_ctx.contract.feeNonMember)) + \" Non Member\", 1),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary mt-3\",\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.purchaseClick(_ctx.contract)))\n }, _hoisted_14)\n ])\n ])\n ]))\n}","export class Utils {\r\n /**\r\n * Convert value to currency format: i.e. 100.3 -> $100.30\r\n *\r\n * @param {*} value\r\n * @return {*} \r\n * @memberof Utils\r\n */\r\n public $toCurrency(value: any) {\r\n const _value = value || 0;\r\n const val = (_value / 1).toFixed(2);\r\n if (val.indexOf('-') === 0) {\r\n return '-$' + val.replace('-', '').toString();\r\n } else {\r\n return '$' + val.toString();\r\n }\r\n }\r\n\r\n /**\r\n * Generating GUID\r\n *\r\n * @return {*} {string}\r\n * @memberof Utils\r\n */\r\n public $guid(): string {\r\n const S4 = () => {\r\n // tslint:disable-next-line: no-bitwise\r\n return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);\r\n };\r\n // then to call it, plus stitch in '4' in the third group\r\n // tslint:disable-next-line: max-line-length\r\n return (S4() + S4() + '-' + S4() + '-4' + S4().substr(0, 3) + '-' + S4() + '-' + S4() + S4() + S4()).toLowerCase();\r\n }\r\n\r\n public $dataURItoBlob(dataURI: string, _type: string): Blob {\r\n const byteString = window.atob(dataURI);\r\n const arrayBuffer = new ArrayBuffer(byteString.length);\r\n const int8Array = new Uint8Array(arrayBuffer);\r\n for (let i = 0; i < byteString.length; i++) {\r\n int8Array[i] = byteString.charCodeAt(i);\r\n }\r\n const blob = new Blob([int8Array], { type: _type });\r\n return blob;\r\n }\r\n\r\n}","import { Options, Vue } from \"vue-property-decorator\";\r\nimport { Contract } from \"@/shared/modules/typescript-api-client/models\";\r\nimport { Utils } from \"@/shared/utils\";\r\n\r\n@Options({\r\n props: {\r\n contract: {},\r\n },\r\n components: {\r\n }\r\n})\r\nexport default class CardPortrait extends Vue {\r\n contract!: Contract;\r\n\r\n private utils = new Utils;\r\n\r\n private toCurrency(value: number) {\r\n return this.utils.$toCurrency(value);\r\n }\r\n\r\n private purchaseClick(c: Contract) {\r\n this.$emit('newContract', c);\r\n }\r\n\r\n private getImageSrc(contract: Contract) {\r\n const path = contract.thumbnailAzureStorageBlobPath || '';\r\n const base64Data = contract.thumbnailBase64 || '';\r\n\r\n if (path.endsWith('.png')) {\r\n return `data:image/png;base64,${base64Data}`;\r\n } else if (path.endsWith('.jpg') || path.endsWith('.jpeg')) {\r\n return `data:image/jpeg;base64,${base64Data}`;\r\n } else if (path.endsWith('.svg')) {\r\n return `data:image/svg+xml;base64,${base64Data}`;\r\n } else if (path.endsWith('.gif')) {\r\n return `data:image/gif;base64,${base64Data}`;\r\n } else {\r\n return;\r\n }\r\n }\r\n\r\n}\r\n\r\n","import { render } from \"./card-portrait.html?vue&type=template&id=094c7f32&scoped=true&ts=true\"\nimport script from \"./card-portrait.ts?vue&type=script&lang=ts\"\nexport * from \"./card-portrait.ts?vue&type=script&lang=ts\"\n\nimport \"./card-portrait.scss?vue&type=style&index=0&id=094c7f32&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-094c7f32\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, vModelSelect as _vModelSelect, withDirectives as _withDirectives, withKeys as _withKeys, vModelText as _vModelText, createElementBlock as _createElementBlock, renderList as _renderList, Fragment as _Fragment, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createTextVNode as _createTextVNode, createVNode as _createVNode, vShow as _vShow, withCtx as _withCtx, createStaticVNode as _createStaticVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-57580dd7\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"history-search\" }\nconst _hoisted_2 = { class: \"search-bar\" }\nconst _hoisted_3 = /*#__PURE__*/_createStaticVNode(\"\", 6)\nconst _hoisted_9 = [\n _hoisted_3\n]\nconst _hoisted_10 = { class: \"autocomplete\" }\nconst _hoisted_11 = { class: \"search-box\" }\nconst _hoisted_12 = [\"placeholder\"]\nconst _hoisted_13 = { class: \"icon-hm\" }\nconst _hoisted_14 = {\n key: 0,\n class: \"fal fa-search\"\n}\nconst _hoisted_15 = {\n key: 1,\n class: \"fal fa-spinner fa-spin\"\n}\nconst _hoisted_16 = [\"disabled\"]\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"Search\", -1))\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-angle-right\" })\n], -1))\nconst _hoisted_19 = [\n _hoisted_17,\n _hoisted_18\n]\nconst _hoisted_20 = { class: \"search-result\" }\nconst _hoisted_21 = { key: 0 }\nconst _hoisted_22 = [\"onClick\"]\nconst _hoisted_23 = { class: \"text\" }\nconst _hoisted_24 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-angle-up\" }, null, -1))\nconst _hoisted_25 = [\n _hoisted_24\n]\nconst _hoisted_26 = { key: 0 }\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", { \"data-label\": \"Contract ID\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", null, \"...\")\n], -1))\nconst _hoisted_28 = { \"data-label\": \"Created\" }\nconst _hoisted_29 = { \"data-label\": \"Type\" }\nconst _hoisted_30 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", { \"data-label\": \"Address\" }, \" Multiple contracts \", -1))\nconst _hoisted_31 = { \"data-label\": \"Reference ID\" }\nconst _hoisted_32 = { \"data-label\": \"Status\" }\nconst _hoisted_33 = {\n key: 0,\n class: \"fal fa-ellipsis-h\"\n}\nconst _hoisted_34 = {\n key: 1,\n class: \"fal fa-check-circle\"\n}\nconst _hoisted_35 = { class: \"col-action\" }\nconst _hoisted_36 = [\"onClick\"]\nconst _hoisted_37 = [\"onClick\"]\nconst _hoisted_38 = {\n key: 2,\n class: \"ml-2\"\n}\nconst _hoisted_39 = [\"onClick\"]\nconst _hoisted_40 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_41 = [\n _hoisted_40\n]\nconst _hoisted_42 = [\"onClick\"]\nconst _hoisted_43 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_44 = [\n _hoisted_43\n]\nconst _hoisted_45 = [\"onClick\"]\nconst _hoisted_46 = { \"data-label\": \"Contract ID\" }\nconst _hoisted_47 = { \"data-label\": \"Created\" }\nconst _hoisted_48 = { key: 0 }\nconst _hoisted_49 = { \"data-label\": \"Type\" }\nconst _hoisted_50 = { key: 0 }\nconst _hoisted_51 = {\n \"data-label\": \"Address\",\n class: \"address\"\n}\nconst _hoisted_52 = [\"title\"]\nconst _hoisted_53 = {\n \"data-label\": \"Reference ID\",\n class: \"reference\"\n}\nconst _hoisted_54 = { key: 0 }\nconst _hoisted_55 = { \"data-label\": \"Status\" }\nconst _hoisted_56 = { key: 0 }\nconst _hoisted_57 = {\n key: 0,\n class: \"fal fa-ellipsis-h\"\n}\nconst _hoisted_58 = {\n key: 1,\n class: \"fal fa-check-circle\"\n}\nconst _hoisted_59 = { class: \"col-action\" }\nconst _hoisted_60 = [\"onClick\"]\nconst _hoisted_61 = [\"onClick\"]\nconst _hoisted_62 = [\"onClick\"]\nconst _hoisted_63 = {\n key: 3,\n class: \"ml-2\"\n}\nconst _hoisted_64 = [\"onClick\"]\nconst _hoisted_65 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_66 = [\n _hoisted_65\n]\nconst _hoisted_67 = [\"onClick\"]\nconst _hoisted_68 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_69 = [\n _hoisted_68\n]\nconst _hoisted_70 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", null, null, -1))\nconst _hoisted_71 = {\n key: 1,\n class: \"intro mt-4\"\n}\nconst _hoisted_72 = {\n key: 2,\n style: {\"width\":\"100%\",\"text-align\":\"center\"}\n}\nconst _hoisted_73 = [\"disabled\"]\nconst _hoisted_74 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Delete contract\", -1))\nconst _hoisted_75 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Are you sure you want to delete this contract?\", -1))\nconst _hoisted_76 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Attention\", -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_DropdownButton = _resolveComponent(\"DropdownButton\")\n const _component_AlertBox = _resolveComponent(\"AlertBox\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingSpinner, { key: 0 }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_2, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.searchFieldType) = $event))\n }, _hoisted_9, 512), [\n [_vModelSelect, _ctx.searchFieldType]\n ]),\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"div\", _hoisted_11, [\n _withDirectives(_createElementVNode(\"input\", {\n onKeydown: [\n _cache[1] || (_cache[1] = _withKeys($event => (_ctx.newSearch()), [\"enter\"])),\n _cache[2] || (_cache[2] = $event => (_ctx.loadMoreOptions.disabled = true))\n ],\n class: \"searchField textbox\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = $event => ((_ctx.search) = $event)),\n type: \"text\",\n placeholder: _ctx.searchPlaceHolderText(_ctx.searchFieldType)\n }, null, 40, _hoisted_12), [\n [_vModelText, _ctx.search]\n ]),\n _createElementVNode(\"span\", _hoisted_13, [\n (!_ctx.isSearching)\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_14))\n : (_openBlock(), _createElementBlock(\"i\", _hoisted_15))\n ])\n ])\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n onClick: _cache[4] || (_cache[4] = $event => (_ctx.newSearch())),\n disabled: _ctx.isSearching\n }, _hoisted_19, 8, _hoisted_16)\n ]),\n _createElementVNode(\"div\", _hoisted_20, [\n (_ctx.purchaseHistory && _ctx.purchaseHistory.length > 0)\n ? (_openBlock(), _createElementBlock(\"table\", _hoisted_21, [\n _createElementVNode(\"thead\", null, [\n _createElementVNode(\"tr\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.historyTableHeader, (h, index) => {\n return (_openBlock(), _createElementBlock(\"th\", {\n scope: \"col\",\n onClick: $event => (_ctx.sortMemberColumn(index, h.sortable)),\n class: _normalizeClass([ h.sortable ? 'sortable' : ''])\n }, [\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"span\", _hoisted_23, _toDisplayString(h.text), 1),\n (h.sortable)\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 0,\n class: _normalizeClass([ _ctx.activeSortHeader === index ? 'active' : '', _ctx.sortMethod])\n }, _hoisted_25, 2))\n : _createCommentVNode(\"\", true)\n ])\n ], 10, _hoisted_22))\n }), 256))\n ])\n ]),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.purchaseHistory, (h, idx) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(h.purchaseHistoryDetails, (p, idx_p) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n (h.purchaseHistoryDetails.length > 1 && idx_p === 0)\n ? (_openBlock(), _createElementBlock(\"tr\", _hoisted_26, [\n _hoisted_27,\n _createElementVNode(\"td\", _hoisted_28, _toDisplayString(_ctx.createdOnText(h.createdOn)), 1),\n _createElementVNode(\"td\", _hoisted_29, _toDisplayString(h.type), 1),\n _hoisted_30,\n _createElementVNode(\"td\", _hoisted_31, _toDisplayString(h.referenceId), 1),\n _createElementVNode(\"td\", _hoisted_32, [\n _createElementVNode(\"span\", null, [\n (h.status === 'In Progress')\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_33))\n : (_openBlock(), _createElementBlock(\"i\", _hoisted_34)),\n _createTextVNode(\" \" + _toDisplayString(h.status), 1)\n ])\n ]),\n _createElementVNode(\"td\", _hoisted_35, [\n (h.status === 'In Progress')\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"btn btn-default sml ml-2\",\n onClick: $event => (_ctx.deleteContract(h.contractOrderId))\n }, \"Delete\", 8, _hoisted_36))\n : _createCommentVNode(\"\", true),\n (h.status === 'In Progress')\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n class: \"btn btn-default sml ml-2\",\n onClick: $event => (_ctx.resumeContract(h))\n }, \"Continue\", 8, _hoisted_37))\n : _createCommentVNode(\"\", true),\n (h.status !== 'In Progress')\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_38, [\n _createVNode(_component_DropdownButton, {\n transaction: _ctx.purchaseHistory[idx],\n \"onUpdate:transaction\": $event => ((_ctx.purchaseHistory[idx]) = $event),\n fileTypes: _ctx.fileTypes,\n \"onUpdate:fileTypes\": _cache[5] || (_cache[5] = $event => ((_ctx.fileTypes) = $event)),\n contractCatId: _ctx.purchaseHistory[idx].contractCatId,\n \"onUpdate:contractCatId\": $event => ((_ctx.purchaseHistory[idx].contractCatId) = $event),\n menuType: _ctx.menuType2,\n \"onUpdate:menuType\": _cache[6] || (_cache[6] = $event => ((_ctx.menuType2) = $event)),\n onSelected: _ctx.selected\n }, null, 8, [\"transaction\", \"onUpdate:transaction\", \"fileTypes\", \"contractCatId\", \"onUpdate:contractCatId\", \"menuType\", \"onSelected\"])\n ]))\n : _createCommentVNode(\"\", true),\n (h.status === 'In Progress' && !h.isValidContract)\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 3,\n onClick: $event => (_ctx.showWarningAlertWithMsg(h.status)),\n class: \"ml-2 warning-sign\"\n }, _hoisted_41, 8, _hoisted_39))\n : _createCommentVNode(\"\", true),\n (h.status === 'Purchased' && h.type !== 'Prepayment' && !h.isValidContract)\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 4,\n onClick: $event => (_ctx.showWarningAlertWithMsg(h.status)),\n class: \"ml-2 warning-sign\"\n }, _hoisted_44, 8, _hoisted_42))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"div\", {\n class: \"dropdown-arrow\",\n ref: 'arrow_' + h.transactionId,\n title: \"Toggle view\",\n onClick: $event => (_ctx.toggleHiddenRows('arrow_' + h.transactionId, h.transactionId))\n }, null, 8, _hoisted_45)\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"tr\", {\n ref: 'tr_' + p.uniqueContractId,\n class: _normalizeClass(h.purchaseHistoryDetails.length > 1 ? h.displayMode : '')\n }, [\n _createElementVNode(\"td\", _hoisted_46, [\n _createElementVNode(\"span\", null, _toDisplayString(p.uniqueContractId), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_47, [\n (h.purchaseHistoryDetails.length == 1)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_48, _toDisplayString(_ctx.createdOnText(h.createdOn)), 1))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"td\", _hoisted_49, [\n (h.purchaseHistoryDetails.length == 1)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_50, _toDisplayString(h.type), 1))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"td\", _hoisted_51, [\n _createElementVNode(\"span\", {\n title: p.address\n }, _toDisplayString(p.address), 9, _hoisted_52)\n ]),\n _createElementVNode(\"td\", _hoisted_53, [\n (h.purchaseHistoryDetails.length < 2)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_54, _toDisplayString(h.referenceId), 1))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"td\", _hoisted_55, [\n (h.purchaseHistoryDetails.length == 1)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_56, [\n (h.status === 'In Progress')\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_57))\n : (_openBlock(), _createElementBlock(\"i\", _hoisted_58)),\n _createTextVNode(\" \" + _toDisplayString(h.status), 1)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"td\", _hoisted_59, [\n (!h.isFinalisedOrder && h.purchaseHistoryDetails.length > 1)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [], 64))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n (h.status !== 'In Progress' && !p.isModifiedOrder && h.contractCategoryId < 3 && p.isEditable)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n onClick: $event => (_ctx.editContract(h, p)),\n class: \"btn btn-default sml\"\n }, \"Edit\", 8, _hoisted_60))\n : _createCommentVNode(\"\", true),\n (h.status === 'In Progress')\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n class: \"btn btn-default sml ml-2\",\n onClick: $event => (_ctx.deleteContract(h.contractOrderId))\n }, \"Delete\", 8, _hoisted_61))\n : _createCommentVNode(\"\", true),\n (h.status === 'In Progress' && h.isValidContract)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 2,\n class: \"btn btn-default sml ml-2\",\n onClick: $event => (_ctx.resumeContract(h))\n }, \"Continue\", 8, _hoisted_62))\n : _createCommentVNode(\"\", true),\n (h.status !== 'In Progress')\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_63, [\n _createVNode(_component_DropdownButton, {\n transaction: _ctx.purchaseHistory[idx],\n \"onUpdate:transaction\": $event => ((_ctx.purchaseHistory[idx]) = $event),\n fileTypes: _ctx.fileTypes,\n \"onUpdate:fileTypes\": _cache[7] || (_cache[7] = $event => ((_ctx.fileTypes) = $event)),\n menuType: _ctx.menuType1,\n \"onUpdate:menuType\": _cache[8] || (_cache[8] = $event => ((_ctx.menuType1) = $event)),\n contractCatId: _ctx.purchaseHistory[idx].contractCategoryId,\n \"onUpdate:contractCatId\": $event => ((_ctx.purchaseHistory[idx].contractCategoryId) = $event),\n uniqueContract: _ctx.purchaseHistory[idx].purchaseHistoryDetails[idx_p],\n \"onUpdate:uniqueContract\": $event => ((_ctx.purchaseHistory[idx].purchaseHistoryDetails[idx_p]) = $event),\n onSelected: _ctx.selected\n }, null, 8, [\"transaction\", \"onUpdate:transaction\", \"fileTypes\", \"menuType\", \"contractCatId\", \"onUpdate:contractCatId\", \"uniqueContract\", \"onUpdate:uniqueContract\", \"onSelected\"])\n ]))\n : _createCommentVNode(\"\", true),\n (h.status === 'In Progress' && !h.isValidContract )\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 4,\n onClick: $event => (_ctx.showWarningAlertWithMsg(h.status)),\n class: \"ml-2 warning-sign\"\n }, _hoisted_66, 8, _hoisted_64))\n : _createCommentVNode(\"\", true),\n (h.status === 'Purchased' && h.type !== 'Prepayment' && !h.isValidContract )\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 5,\n onClick: $event => (_ctx.showWarningAlertWithMsg(h.status)),\n class: \"ml-2 warning-sign\"\n }, _hoisted_69, 8, _hoisted_67))\n : _createCommentVNode(\"\", true)\n ], 64))\n ]),\n _hoisted_70\n ], 2)\n ], 64))\n }), 256))\n ], 64))\n }), 256))\n ])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_71, [\n _withDirectives(_createElementVNode(\"span\", null, \"No record(s) found using the entered search criteria\", 512), [\n [_vShow, !_ctx.isSearching]\n ])\n ])),\n (!_ctx.isLoadingData && _ctx.purchaseHistory.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_72, [\n _createElementVNode(\"button\", {\n disabled: _ctx.loadMoreOptions.disabled,\n class: \"btn btn-default sml mt-2\",\n onClick: _cache[9] || (_cache[9] = (...args) => (_ctx.loadMore && _ctx.loadMore(...args)))\n }, \"Load more\", 8, _hoisted_73)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n (_ctx.showDeleteAlert)\n ? (_openBlock(), _createBlock(_component_AlertBox, {\n key: 1,\n onClose: _cache[12] || (_cache[12] = $event => (_ctx.showDeleteAlert = false))\n }, {\n header: _withCtx(() => [\n _hoisted_74\n ]),\n body: _withCtx(() => [\n _hoisted_75\n ]),\n footer: _withCtx(() => [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary sml\",\n onClick: _cache[10] || (_cache[10] = $event => (_ctx.deleteIt()))\n }, \"Yes\"),\n _createElementVNode(\"button\", {\n class: \"btn btn-tertiary sml\",\n onClick: _cache[11] || (_cache[11] = $event => (_ctx.showDeleteAlert = false))\n }, \"No\")\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (_ctx.showWarningAlert)\n ? (_openBlock(), _createBlock(_component_AlertBox, {\n key: 2,\n onClose: _cache[14] || (_cache[14] = $event => (_ctx.showWarningAlert = false))\n }, {\n header: _withCtx(() => [\n _hoisted_76\n ]),\n body: _withCtx(() => [\n _createElementVNode(\"div\", null, _toDisplayString(_ctx.warningMsg), 1)\n ]),\n footer: _withCtx(() => [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary sml\",\n onClick: _cache[13] || (_cache[13] = $event => (_ctx.showWarningAlert=false))\n }, \"OK\")\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4b18956a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"dropdown-button\" }\nconst _hoisted_2 = { class: \"dropdown\" }\nconst _hoisted_3 = [\"id\"]\nconst _hoisted_4 = [\"onClick\"]\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"button\", {\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.buttonClicked())),\n ref: _ctx.buttonRef,\n class: \"dropbtn btn btn-default sml\"\n }, _toDisplayString(_ctx.buttonText), 513),\n _createElementVNode(\"div\", {\n id: _ctx.dropdownRef,\n ref: _ctx.dropdownRef,\n class: \"dropdown-content\"\n }, [\n _createElementVNode(\"ul\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.menuOptions, (o, idx) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n onClick: $event => (_ctx.selected(o.id, o.fileName, o.fileTypeId))\n }, _toDisplayString(o.menuText), 9, _hoisted_4))\n }), 256))\n ])\n ], 8, _hoisted_3)\n ])\n ]))\n}","import { Options, Vue } from \"vue-property-decorator\";\r\nimport { Utils } from \"@/shared/utils\";\r\nimport { FileType, PurchaseHistory, PurchaseHistoryDetail } from \"@/shared/modules/typescript-api-client/models\";\r\n\r\nexport interface MenuOption {\r\n id: number;\r\n menuText: string;\r\n fileTypeId: number;\r\n fileName?: string;\r\n uniqueContractId?: number;\r\n}\r\n\r\n@Options({\r\n props: {\r\n transaction: {},\r\n fileTypes: {},\r\n menuType: {},\r\n uniqueContract: {},\r\n contractCatId: Number,\r\n },\r\n components: {}\r\n})\r\nexport default class DropdownButton extends Vue {\r\n private transaction!: PurchaseHistory;\r\n private fileTypes!: FileType[];\r\n private menuType!: any;\r\n private uniqueContract!: any;\r\n private contractCatId!: number;\r\n\r\n private buttonText = '';\r\n private multiple = false;\r\n private menuOptions: MenuOption[] = [];\r\n\r\n private buttonClicked() {\r\n this.setFileTypes();\r\n this.menuOptions = [];\r\n if (this.transaction.purchaseHistoryDetails.length === 1) {\r\n if (this.transaction.files.length > 1) {\r\n this.menuOptions.push({ id: this.transaction.transactionId, menuText: 'All', fileTypeId: 0 });\r\n }\r\n for (let i = 0; i < this.transaction.files.length; i++) {\r\n this.menuOptions.push({ id: this.transaction.files[i].id, menuText: this.getMenuText(this.transaction.files[i].fileTypeId), fileName: this.transaction.files[i].name, fileTypeId: this.transaction.files[i].fileTypeId });\r\n }\r\n } else {\r\n if (this.multiple) {\r\n // for all files\r\n if (this.transaction.files.length > 1) {\r\n this.menuOptions.push({ id: this.transaction.transactionId, menuText: 'All', fileTypeId: 0 });\r\n }\r\n // find the invoice\r\n for (let i = 0; i < this.transaction.files.length; i++) {\r\n if (this.transaction.files[i].fileTypeId === 3) {\r\n this.menuOptions.push({ id: this.transaction.files[i].id, menuText: this.getMenuText(this.transaction.files[i].fileTypeId), fileName: this.transaction.files[i].name, fileTypeId: this.transaction.files[i].fileTypeId });\r\n }\r\n }\r\n } else {\r\n const _files = this.transaction.files.filter((t: any) => {\r\n return t.contractOrderDetailId === this.uniqueContract.contractOrderDetailId\r\n })\r\n for (let i = 0; i < _files.length; i++) {\r\n this.menuOptions.push({ id: _files[i].id, menuText: this.getMenuText(_files[i].fileTypeId), fileName: _files[i].name, fileTypeId: _files[i].fileTypeId });\r\n }\r\n }\r\n }\r\n\r\n const el = this.$refs[this.dropdownRef] as HTMLElement;\r\n el.classList.toggle('show');\r\n }\r\n\r\n private dropdownRef = \"dropdown_\" + new Utils().$guid();\r\n private buttonRef = \"button\" + new Utils().$guid();\r\n\r\n mounted(): void {\r\n window.addEventListener('click', this.clickedElement);\r\n this.buttonText = 'Download'\r\n this.multiple = this.menuType.multiple;\r\n }\r\n\r\n beforeUnmount(): void {\r\n window.removeEventListener('click', this.clickedElement);\r\n }\r\n\r\n private setFileTypes(): void {\r\n for (let i = 0; i < this.fileTypes.length; i++) {\r\n if (this.fileTypes[i].name == 'Prepayment Topup' || this.fileTypes[i].name == 'Tax Invoice') {\r\n this.fileTypes[i].name = 'Tax Invoice/Receipt';\r\n }\r\n if (this.fileTypes[i].name == 'Front Page') {\r\n this.fileTypes[i].name = 'Front Pages';\r\n }\r\n\r\n }\r\n }\r\n\r\n private getFileId(uniqueContractId: number) {\r\n const _file: any = this.transaction.files((f: any) => {\r\n return uniqueContractId === f.uniqueContractId;\r\n });\r\n return _file[0].id;\r\n }\r\n\r\n private getMenuText(fileTypeId: number) {\r\n const _filter = this.fileTypes.filter(f => {\r\n return fileTypeId === f.id\r\n });\r\n let _menuText = _filter[0].name;\r\n if ((this.contractCatId === 1 || this.contractCatId === 2) && _filter[0].name === 'Contract') {\r\n _menuText = 'Clauses';\r\n }\r\n if (this.contractCatId === 3 && _filter[0].name === 'Contract') {\r\n _menuText = 'Document';\r\n }\r\n\r\n return _menuText;\r\n }\r\n\r\n private clickedElement(e: MouseEvent): void | boolean {\r\n const el = this.$refs[this.dropdownRef] as HTMLElement;\r\n const elBtn = this.$refs[this.buttonRef] as HTMLElement;\r\n const target: HTMLElement = e.target as HTMLElement;\r\n if (el !== target && elBtn !== target) {\r\n el.classList.remove('show');\r\n }\r\n }\r\n\r\n private selected(id: number, fileName: string, fileTypeId: number) {\r\n const el = this.$refs[this.dropdownRef] as HTMLElement;\r\n el.classList.remove('show');\r\n\r\n // output\r\n this.$emit('selected', { id, fileName, fileTypeId });\r\n }\r\n\r\n}\r\n\r\n","import { render } from \"./dropdown-button.html?vue&type=template&id=4b18956a&scoped=true&ts=true\"\nimport script from \"./dropdown-button.ts?vue&type=script&lang=ts\"\nexport * from \"./dropdown-button.ts?vue&type=script&lang=ts\"\n\nimport \"./dropdown-button.scss?vue&type=style&index=0&id=4b18956a&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4b18956a\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7d34a782\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"loading-spinner\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"spinner-main\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-spinner fa-spin fa-6x\" })\n], -1))\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, _hoisted_3))\n}","\r\nimport { Options, Vue } from 'vue-class-component';\r\n@Options({\r\n props: {\r\n }\r\n})\r\nexport default class LoadingSpinner extends Vue {\r\n\r\n}\r\n\r\n","import { render } from \"./loading-spinner.html?vue&type=template&id=7d34a782&scoped=true&ts=true\"\nimport script from \"./loading-spinner.ts?vue&type=script&lang=ts\"\nexport * from \"./loading-spinner.ts?vue&type=script&lang=ts\"\n\nimport \"./loading-spinner.scss?vue&type=style&index=0&id=7d34a782&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7d34a782\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, renderSlot as _renderSlot, createTextVNode as _createTextVNode, Transition as _Transition, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"alert-box\" }\nconst _hoisted_2 = { class: \"modal-mask\" }\nconst _hoisted_3 = {\n class: \"modal-wrapper\",\n ref: \"modalWrapper\"\n}\nconst _hoisted_4 = { class: \"modal-container\" }\nconst _hoisted_5 = { class: \"modal-header\" }\nconst _hoisted_6 = /*#__PURE__*/_createTextVNode(\" default header \")\nconst _hoisted_7 = { class: \"modal-body\" }\nconst _hoisted_8 = /*#__PURE__*/_createTextVNode(\" default body \")\nconst _hoisted_9 = { class: \"modal-footer\" }\nconst _hoisted_10 = /*#__PURE__*/_createTextVNode(\" default footer \")\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_Transition, { name: \"modal\" }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"i\", {\n class: \"fal fa-times-circle close-icon\",\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.$emit('close')))\n }),\n _createElementVNode(\"div\", _hoisted_5, [\n _renderSlot(_ctx.$slots, \"header\", {}, () => [\n _hoisted_6\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_7, [\n _renderSlot(_ctx.$slots, \"body\", {}, () => [\n _hoisted_8\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_9, [\n _renderSlot(_ctx.$slots, \"footer\", {}, () => [\n _hoisted_10,\n _createElementVNode(\"button\", {\n class: \"modal-default-button\",\n onClick: _cache[1] || (_cache[1] = $event => (_ctx.$emit('close')))\n }, \" OK \")\n ])\n ])\n ])\n ], 512)\n ])\n ]),\n _: 3\n })\n ]))\n}","import { Options, Vue } from 'vue-class-component';\r\n\r\n@Options({\r\n})\r\nexport default class AlertBox extends Vue {\r\n\r\n mounted() {\r\n document.body.classList.add('modal-open');\r\n }\r\n\r\n beforeUnmount() {\r\n document.body.classList.remove('modal-open');\r\n }\r\n \r\n}\r\n","import { render } from \"./alert-box.html?vue&type=template&id=f20e6902&ts=true\"\nimport script from \"./alert-box.ts?vue&type=script&lang=ts\"\nexport * from \"./alert-box.ts?vue&type=script&lang=ts\"\n\nimport \"./alert-box.scss?vue&type=style&index=0&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","export interface SectionName {\r\n Details: string;\r\n Review: string;\r\n Payment: string;\r\n Prepayment: string;\r\n Confirmation: string;\r\n\r\n Add: string;\r\n Update: string;\r\n\r\n}\r\n\r\nexport const Section: SectionName = {\r\n Details: 'details',\r\n Review: 'review',\r\n Payment: 'payment',\r\n Prepayment: 'prepayment',\r\n Confirmation: 'confirmation',\r\n Add: 'add',\r\n Update: 'update',\r\n\r\n};\r\n","import { Inject, Options, Vue } from \"vue-property-decorator\";\r\nimport store from \"@/shared/store\";\r\nimport DropdownButton from \"@/shared/components/dropdown-button/index.vue\";\r\nimport { ContractHistory } from \"./mock-data-model-historyList\";\r\nimport { AppInsights } from \"@/dcsExternal/appInsights\";\r\nimport { DCSApi } from \"@/shared/modules/dcs-api\";\r\nimport { Utils } from \"@/shared/utils\";\r\nimport { EventEmitter } from \"events\";\r\nimport { Contract, ContractOrderDetailData, FileType, PurchaseHistory, PurchaseHistoryDetail } from \"@/shared/modules/typescript-api-client/models\";\r\nimport { SELF_URL } from \"@/shared/config/config\";\r\nimport LoadingSpinner from \"@/shared/components/loading-spinner/index.vue\";\r\nimport AlertBox from \"@/shared/components/alert-box/index.vue\";\r\nimport { RouteN } from \"@/shared/constants/route-name\";\r\nimport { Section } from \"@/shared/constants/section-name\";\r\nimport { NewContract } from \"@/shared/models/new-contract\";\r\nimport { orderBy } from \"lodash\";\r\nimport { AuthorizedUser } from \"@/shared/models/authorized-user\";\r\nimport moment from \"moment\";\r\n@Options({\r\n components: {\r\n DropdownButton,\r\n LoadingSpinner,\r\n AlertBox,\r\n }\r\n})\r\nexport default class HistorySearch extends Vue {\r\n @Inject({ from: 'apiService', default: new DCSApi() })\r\n private apiService!: DCSApi;\r\n\r\n private ai = new AppInsights;\r\n\r\n private utils = new Utils;\r\n\r\n private isLoadingData = false;\r\n\r\n get eventCtrl(): EventEmitter {\r\n return store.getters.getEventController;\r\n }\r\n\r\n private localDebug = SELF_URL.indexOf('localhost') >= 0;\r\n private historyList: ContractHistory[] = [];\r\n\r\n private contractList: Contract[] = [];\r\n\r\n private purchaseHistory: any[] = [];\r\n\r\n private selectedContractId = 0;\r\n private showDeleteAlert = false;\r\n private showWarningAlert = false;\r\n\r\n private searchClicked = false;\r\n private search = '';\r\n private skip = 0;\r\n private take = 20;\r\n private searchFieldType = 1;\r\n private totalCount = 0;\r\n\r\n private loadMoreOptions: any = {};\r\n\r\n private searchPlaceHolderText(searchFieldType: number): string {\r\n let _returnString = ''\r\n switch (searchFieldType.toString()) {\r\n case '1':\r\n _returnString = 'Search on Contract ID';\r\n break;\r\n case '2':\r\n _returnString = 'Search on Contract Date';\r\n break;\r\n case '3':\r\n _returnString = 'Search on Type';\r\n break;\r\n case '4':\r\n _returnString = 'Search on Address';\r\n break;\r\n case '5':\r\n _returnString = 'Search on Reference ID';\r\n break;\r\n case '6':\r\n _returnString = 'Search on Contract Status';\r\n break;\r\n default:\r\n _returnString = 'Search on Contract ID';\r\n }\r\n return _returnString;\r\n }\r\n\r\n private isSearching = false;\r\n\r\n private sortMethod = \"desc\";\r\n private activeSortHeader = 1;\r\n\r\n private fileTypes: FileType[] = [];\r\n\r\n private menuType1 = { text: 'Download', multiple: false };\r\n private menuType2 = { text: 'Download', multiple: true };\r\n\r\n private historyTableHeader = [\r\n { text: 'Contract ID', value: 'contractId', sortable: false },\r\n { text: 'Created', value: 'created', sortable: false },\r\n { text: 'Type', value: 'type', sortable: false },\r\n { text: 'Address', value: 'address', sortable: false },\r\n { text: 'Reference ID', value: 'referenceId', sortable: false },\r\n { text: 'Status', value: 'status', sortable: false },\r\n { text: 'Action', value: '', sortable: false },\r\n { text: '', value: '', sortable: false },\r\n ]\r\n\r\n private createdOnText(ISOdate: string) {\r\n return moment(ISOdate).format('DD/MM/YYYY h:mm A');\r\n }\r\n\r\n get userAccount(): AuthorizedUser {\r\n return store.getters.getUserAccount;\r\n }\r\n\r\n mounted(): void {\r\n this.getActiveContracts();\r\n this.getFileTypes();\r\n this.newSearch();\r\n }\r\n\r\n private getFileTypes() {\r\n const _ft = window.sessionStorage.getItem('ft') || '';\r\n if (_ft !== '') {\r\n this.fileTypes = JSON.parse(_ft);\r\n } else {\r\n this.apiService.CodeApi?.apiV1CodeGetFileTypesGet()\r\n .then((res) => {\r\n this.fileTypes = res.data.data;\r\n window.sessionStorage.setItem('ft', JSON.stringify(this.fileTypes));\r\n })\r\n .catch(err => {\r\n this.ai.trackException('Error getting file types: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting file types: ' + err);\r\n })\r\n }\r\n }\r\n\r\n private newSearch() {\r\n this.searchClicked = true;\r\n this.skip = 0;\r\n this.getPurchaseHistory();\r\n }\r\n\r\n private getPurchaseHistory(options?: any) {\r\n this.isSearching = true;\r\n const _normalSearch = {\r\n skip: 0,\r\n take: this.take,\r\n keyword: this.search,\r\n searchFieldType: this.searchFieldType / 1,\r\n }\r\n\r\n const _options = options ? options : _normalSearch;\r\n\r\n if (this.searchClicked) {\r\n this.purchaseHistory = [];\r\n }\r\n this.searchClicked = false;\r\n this.isLoadingData = true;\r\n this.apiService.ExternalApi?.apiV1ExternalGetPurchaseHistoryPost(_options)\r\n .then(res => {\r\n this.isSearching = false;\r\n const _purchaseHistory = res.data.data as PurchaseHistory[];\r\n this.totalCount = res.data.totalCount;\r\n this.skip = this.skip + this.take;\r\n if (this.totalCount - this.skip > 0) {\r\n this.loadMoreOptions = {\r\n skip: this.skip,\r\n take: this.take,\r\n keyword: this.search,\r\n searchFieldType: this.searchFieldType / 1,\r\n disabled: false,\r\n };\r\n } else {\r\n this.loadMoreOptions.disabled = true;\r\n }\r\n\r\n for (let i = 0; i < _purchaseHistory.length; i++) {\r\n this.purchaseHistory.push(_purchaseHistory[i]);\r\n }\r\n for (let i = 0; i < this.purchaseHistory.length; i++) {\r\n this.purchaseHistory[i].displayMode = this.purchaseHistory[i].purchaseHistoryDetails.length > 1 ? 'hidden' : 'show';\r\n }\r\n this.isLoadingData = false;\r\n })\r\n .catch(err => {\r\n console.log(err);\r\n this.isLoadingData = false;\r\n this.isSearching = false;\r\n this.ai.trackException('Error getting purchase history: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting purchase history: ' + err);\r\n })\r\n }\r\n\r\n private loadMore() {\r\n this.getPurchaseHistory(this.loadMoreOptions);\r\n }\r\n\r\n private sortMemberColumn(index: number, sortable: boolean) {\r\n // on sorting for this table\r\n }\r\n\r\n private toggleHiddenRows(arrowRef: string, hId: string) {\r\n const arrow = this.$refs[arrowRef] as HTMLElement;\r\n\r\n if (arrow.className == 'dropdown-arrow open') {\r\n arrow.className = 'dropdown-arrow';\r\n this.setHidden(hId, true);\r\n } else {\r\n arrow.className = 'dropdown-arrow open';\r\n this.setHidden(hId, false);\r\n }\r\n }\r\n\r\n private setHidden(hId: string, hide: boolean) {\r\n const data: any = this.purchaseHistory;\r\n for (let i = 0; i < data.length; i++) {\r\n if (data[i].transactionId == hId) {\r\n data[i].displayMode = hide ? 'hidden' : 'show';\r\n }\r\n }\r\n\r\n this.purchaseHistory = data;\r\n return data;\r\n }\r\n\r\n private async selected(option: any) {\r\n this.isLoadingData = true;\r\n if (option.fileName) {\r\n let _type = '';\r\n if (option.fileName.indexOf('.pdf') > 0) {\r\n _type = \"application/pdf\";\r\n }\r\n if (option.fileName.indexOf('.docx') > 0) {\r\n _type = \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\";\r\n }\r\n this.apiService.ExternalApi?.apiV1ExternalGetFileFileIdGet(option.id)\r\n .then(res => {\r\n const blobString = res.data.data.fileBytes;\r\n const link = document.createElement(\"a\");\r\n link.href = URL.createObjectURL(this.dataURItoBlob(blobString, _type));\r\n link.download = option.fileName;\r\n link.click();\r\n URL.revokeObjectURL(link.href);\r\n this.isLoadingData = false;\r\n })\r\n .catch(err => {\r\n console.log(err);\r\n this.isLoadingData = false;\r\n this.ai.trackException('Error on file download: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on file download: ' + err);\r\n })\r\n }\r\n else {\r\n this.apiService.ExternalApi?.apiV1ExternalGetZippedFileTransactionIdGet(option.id)\r\n .then(res => {\r\n const blobString = res.data.data.fileBytes;\r\n const link = document.createElement(\"a\");\r\n link.href = URL.createObjectURL(this.dataURItoBlob(blobString, \"application/zip\"));\r\n link.download = res.data.data.name;\r\n link.click();\r\n URL.revokeObjectURL(link.href);\r\n this.isLoadingData = false;\r\n })\r\n .catch(err => {\r\n console.log(err)\r\n this.isLoadingData = false;\r\n this.ai.trackException('Error on file download: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on file download: ' + err);\r\n })\r\n }\r\n }\r\n\r\n private dataURItoBlob(dataURI: string, _type: string) {\r\n return this.utils.$dataURItoBlob(dataURI, _type)\r\n }\r\n\r\n private deleteContract(contractId: number) {\r\n this.selectedContractId = contractId;\r\n this.showDeleteAlert = true;\r\n }\r\n\r\n private deleteIt() {\r\n this.showDeleteAlert = false;\r\n this.apiService.ExternalApi?.apiV1ExternalDeleteContractOrderDelete(this.selectedContractId)\r\n .then(res => {\r\n console.log(res)\r\n this.skip = 0;\r\n this.take = 20;\r\n this.purchaseHistory = [];\r\n this.getPurchaseHistory();\r\n })\r\n .catch(err => {\r\n this.isLoadingData = false;\r\n this.ai.trackException('Error on contract delete: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on deleting contract: ' + err);\r\n })\r\n }\r\n\r\n private async resumeContract(c: PurchaseHistory) {\r\n await this.getActiveContracts();\r\n await this.initialiseContractData(c);\r\n this.$router.push({ name: RouteN.DCSE.eContract.n, query: { type: 1, cid: c.contractOrderId, sec: Section.Details } });\r\n }\r\n\r\n private editContract(c: PurchaseHistory, p: PurchaseHistoryDetail) {\r\n this.initialiseContractDetailData(c, p);\r\n window.sessionStorage.setItem('edit', '0');\r\n this.$router.push({ name: RouteN.DCSE.EditContract.n, query: { type: c.contractCategoryId, pid: p.contractOrderDetailId, sec: Section.Details } });\r\n }\r\n\r\n private initialiseContractDetailData(c: PurchaseHistory, p: PurchaseHistoryDetail) {\r\n // for land contract only\r\n\r\n const _contractOrderDetailData: any = {\r\n id: p.contractOrderDetailId,\r\n contractCategoryId: c.contractCategoryId,\r\n businessName: p.businessName,\r\n additionalInfo: p.additionalInfo,\r\n address: p.address,\r\n watermark: p.watermark,\r\n numOfContract: p.numOfContract,\r\n description: this.contractDescriptionLookup(c.contractId),\r\n contractEdition: this.contractEditionLookup(c.contractId),\r\n referenceId: c.referenceId,\r\n contractOrderId: c.contractOrderId,\r\n contractId: c.contractId,\r\n }\r\n console.log(_contractOrderDetailData)\r\n store.dispatch('setContractData', _contractOrderDetailData);\r\n }\r\n\r\n private contractEditionLookup(contractId: number): number {\r\n return (this.contractList.filter(c => {\r\n return c.id === contractId\r\n }))[0].year;\r\n }\r\n\r\n private unitPriceLookup(contractCategoryId: number) {\r\n if (this.userAccount.user.isMember) {\r\n return (this.contractList.filter(c => {\r\n return c.contractCategoryId === contractCategoryId\r\n }))[0].feeMember;\r\n } else {\r\n return (this.contractList.filter(c => {\r\n return c.contractCategoryId === contractCategoryId\r\n }))[0].feeNonMember;\r\n }\r\n }\r\n\r\n private contractDescriptionLookup(contractId: number): number {\r\n return (this.contractList.filter(c => {\r\n return c.id === contractId\r\n }))[0].description;\r\n }\r\n\r\n private initialiseContractData(c: PurchaseHistory) {\r\n const _contractOrderDetailData: ContractOrderDetailData[] = [];\r\n for (let i = 0; i < c.purchaseHistoryDetails.length; i++) {\r\n _contractOrderDetailData[i] = c.purchaseHistoryDetails[i]\r\n _contractOrderDetailData[i].id = c.purchaseHistoryDetails[i].contractOrderDetailId;\r\n }\r\n\r\n const _newContract: NewContract = {\r\n id: c.contractOrderId,\r\n contractId: c.contractId, // this is the contract id from the home page: 1 - land, 2 - business etc..\r\n contractCategoryId: c.contractCategoryId,\r\n description: this.contractDescriptionLookup(c.contractId),\r\n year: this.contractEditionLookup(c.contractId),\r\n contractSubCategoryId: c.contractSubCategoryId,\r\n orderType: c.contractSubCategoryId,\r\n contractType: c.type,\r\n isFinalisedOrder: false,\r\n\r\n referenceId: c.referenceId,\r\n contractOrderDetailData: _contractOrderDetailData,\r\n qty: c.purchaseHistoryDetails[0].numOfContract,\r\n unitPrice: this.unitPriceLookup(c.contractCategoryId),\r\n templateAdditionalInfo: c.templateAdditionalInfo,\r\n templateAddress: c.templateAddress,\r\n templateWatermark: c.templateWatermark,\r\n paymentTypeId: 1,\r\n singleUseTokenId: '',\r\n amountReceived: 0,\r\n\r\n acceptTermsAndConditions: false,\r\n }\r\n console.log(_contractOrderDetailData);\r\n store.dispatch('setContractData', _newContract);\r\n\r\n }\r\n\r\n private async getActiveContracts() {\r\n this.isLoadingData = true;\r\n let _ts = window.sessionStorage.getItem('ts') || '';\r\n _ts = _ts.replace('+00:00', ''); // remove timezone info\r\n if (_ts === '') {\r\n this.downloadNewSetOfContracts();\r\n } else {\r\n await this.apiService.ContractApi?.apiV1ContractHasUpdatedContractsUtcTimeStampGet(_ts as unknown as Date)\r\n .then(async (res) => {\r\n if (res.data) {\r\n this.isLoadingData = false;\r\n // download new set of contracts\r\n await this.downloadNewSetOfContracts();\r\n } else {\r\n this.isLoadingData = false;\r\n // try to get contracts from cache\r\n const _activeContracts = window.sessionStorage.getItem('ac');\r\n if (_activeContracts) {\r\n this.contractList = JSON.parse(_activeContracts)\r\n } else {\r\n await this.downloadNewSetOfContracts();\r\n }\r\n }\r\n })\r\n .catch(err => {\r\n this.isLoadingData = false;\r\n this.ai.trackException('Error getting server timestamp: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting server timestamp: ' + err.response.status);\r\n })\r\n }\r\n\r\n }\r\n\r\n private async downloadNewSetOfContracts() {\r\n this.isLoadingData = true;\r\n await this.apiService.ContractApi?.apiV1ContractGetContractsWithThumbnailGet()\r\n .then(res => {\r\n this.contractList = res.data.data as Contract[];\r\n this.contractList = orderBy(\r\n this.contractList,\r\n ['contractCategoryId', 'createdOn'],\r\n ['asc', 'desc']\r\n );\r\n window.sessionStorage.setItem('ts', res.data.timeStamp);\r\n window.sessionStorage.setItem('ac', JSON.stringify(this.contractList));\r\n this.isLoadingData = false;\r\n })\r\n .catch(err => {\r\n this.isLoadingData = false;\r\n this.ai.trackException('Error getting active contracts: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting active contracts: ' + err.response.status);\r\n })\r\n }\r\n\r\n private warningMsg = '';\r\n\r\n private showWarningAlertWithMsg(status: string) {\r\n switch(status) {\r\n case 'In Progress': \r\n this.warningMsg = \"This version is no longer available\";\r\n break;\r\n case 'Purchased':\r\n this.warningMsg = \"This version is no longer available\";\r\n break;\r\n }\r\n this.showWarningAlert = true;\r\n }\r\n}\r\n\r\n","import { render } from \"./history-search.html?vue&type=template&id=57580dd7&scoped=true&ts=true\"\nimport script from \"./history-search.ts?vue&type=script&lang=ts\"\nexport * from \"./history-search.ts?vue&type=script&lang=ts\"\n\nimport \"./history-search.scss?vue&type=style&index=0&id=57580dd7&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-57580dd7\"]])\n\nexport default __exports__","import { ContractOrderDetailData } from \"../modules/typescript-api-client/models\";\r\n\r\nexport interface NewContract {\r\n // Contract info\r\n id?: any | null;\r\n contractCategoryId?: any;\r\n contractType?: any | null;\r\n contractSubCategoryId?: any;\r\n year?: any;\r\n sku?: any | null;\r\n glCode?: any | null;\r\n gstCode?: any | null;\r\n description?: any | null;\r\n feeMember?: any;\r\n feeNonMember?: any;\r\n inactive?: any;\r\n createdOn?: any;\r\n updatedOn?: any;\r\n\r\n // New Contract info\r\n userId?: any;\r\n contractId?: number;\r\n referenceId?: string;\r\n isFinalisedOrder?: boolean;\r\n type?: string;\r\n\r\n templateAddress?: string;\r\n templateAdditionalInfo?: string;\r\n templateWatermark?: string;\r\n contractOrderDetailData: ContractOrderDetailData[];\r\n paymentTypeId?: number;\r\n singleUseTokenId?: string;\r\n qty: number;\r\n unitPrice: number;\r\n orderType?: OrderType;\r\n numberOfProperties?: number; \r\n amountReceived?: number;\r\n acceptTermsAndConditions?: boolean;\r\n}\r\n\r\nexport enum OrderType {\r\n UNKNOWN = 0,\r\n SINGLE = 1,\r\n MULTIPLE = 2,\r\n MASTER = 3,\r\n}","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, normalizeClass as _normalizeClass, normalizeStyle as _normalizeStyle, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6d4b543f\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"help-content\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"help-body\"\n}\nconst _hoisted_3 = { class: \"hot-spot-img\" }\nconst _hoisted_4 = [\"src\"]\nconst _hoisted_5 = [\"onClick\"]\nconst _hoisted_6 = [\"innerHTML\"]\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.helpContentData)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _createElementVNode(\"h3\", null, _toDisplayString(_ctx.helpContentData[0].pageTitle), 1),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.helpContentData, (h, idx_h) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"h3\", null, _toDisplayString(h.sectionTitle), 1),\n _createElementVNode(\"img\", {\n src: h.imgSrc,\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.toggleHelpContent(0)))\n }, null, 8, _hoisted_4),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(h.hotSpots, (d, idx_d) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"hot-spot\", [{'active' : _ctx.showHelpContent == d.id}]]),\n onClick: $event => (_ctx.toggleHelpContent(d.id)),\n style: _normalizeStyle({ top: d.y + '%', left: d.x + '%' })\n }, null, 14, _hoisted_5),\n (_ctx.showHelpContent == d.id)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: \"hot-spot-content\",\n style: _normalizeStyle(_ctx.textXY(d))\n }, [\n _createElementVNode(\"div\", null, _toDisplayString(d.label), 1),\n _createElementVNode(\"p\", {\n innerHTML: d.htmlText\n }, null, 8, _hoisted_6)\n ], 4))\n : _createCommentVNode(\"\", true)\n ], 64))\n }), 256))\n ]),\n _hoisted_7,\n _hoisted_8\n ]))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}","\r\nimport { Options, Vue } from \"vue-property-decorator\";\r\n\r\n@Options({\r\n props: { helpContentData: {} },\r\n components: {}\r\n})\r\nexport default class HelpContent extends Vue {\r\n helpContentData?: [];\r\n private showHelpContent = 0;\r\n\r\n get section(): string {\r\n return this.$route.query.sec as string;\r\n }\r\n\r\n mounted(): void {\r\n this.showHelpContent = 0;\r\n }\r\n\r\n private toggleHelpContent(num: number) {\r\n this.showHelpContent = num;\r\n }\r\n\r\n private textXY(d: any) {\r\n let _style = {};\r\n if (d.textXY) {\r\n _style = { top: d.textXY.y + '%', left: d.textXY.x + '%' };\r\n } else {\r\n _style = { top: (d.y - 10) + '%', left: (d.x + 5) + '%' };\r\n }\r\n return _style;\r\n }\r\n\r\n}\r\n\r\n","import { render } from \"./help-content.html?vue&type=template&id=6d4b543f&scoped=true&ts=true\"\nimport script from \"./help-content.ts?vue&type=script&lang=ts\"\nexport * from \"./help-content.ts?vue&type=script&lang=ts\"\n\nimport \"./help-content.scss?vue&type=style&index=0&id=6d4b543f&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-6d4b543f\"]])\n\nexport default __exports__","import { Inject, Options, Vue } from \"vue-property-decorator\";\r\nimport UserDefine from '@/assets/config/user-define.json';\r\nimport HelpScreen from \"@/shared/components/help-screen/index.vue\";\r\nimport CardLandscape from \"../card-landscape/index.vue\";\r\nimport CardPortrait from \"../card-portrait/index.vue\";\r\nimport store from \"@/shared/store\";\r\nimport HistorySearch from \"../history-search/index.vue\";\r\nimport { RouteN } from \"@/shared/constants/route-name\";\r\nimport { Section } from \"@/shared/constants/section-name\";\r\nimport { AuthorizedUser } from \"@/shared/models/authorized-user\";\r\nimport { Contract, ContractOrderDetailData, FileType } from \"@/shared/modules/typescript-api-client/models\";\r\nimport { DCSApi } from \"@/shared/modules/dcs-api\";\r\nimport { AppInsights } from \"@/dcsExternal/appInsights\";\r\nimport { EventEmitter } from \"events\";\r\nimport { Utils } from \"@/shared/utils\";\r\nimport LoadingSpinner from \"@/shared/components/loading-spinner/index.vue\";\r\nimport { NewContract, OrderType } from \"@/shared/models/new-contract\";\r\nimport { orderBy } from \"lodash\";\r\nimport HelpContentData from '@/assets/config/help-content-data.json';\r\nimport HelpContent from \"../help-content/index.vue\";\r\n\r\n\r\n@Options({\r\n components: {\r\n HelpScreen,\r\n LoadingSpinner,\r\n CardLandscape,\r\n CardPortrait,\r\n HistorySearch,\r\n HelpContent,\r\n }\r\n})\r\nexport default class Home extends Vue {\r\n @Inject({ from: 'apiService', default: new DCSApi() })\r\n private apiService!: DCSApi;\r\n\r\n private ai = new AppInsights;\r\n\r\n private utils = new Utils;\r\n\r\n get eventCtrl(): EventEmitter {\r\n return store.getters.getEventController;\r\n }\r\n\r\n private showHelpScreen = false;\r\n\r\n private searchType = 0;\r\n\r\n private prepaidBalance = 0;\r\n private historyList = [];\r\n private searchClicked = false;\r\n private search = '';\r\n private isOpen = false;\r\n private isLoadingData = false;\r\n\r\n private contractList: Contract[] = [];\r\n\r\n get userAccount(): AuthorizedUser {\r\n return store.getters.getUserAccount;\r\n }\r\n\r\n private fileTypes: FileType[] = [];\r\n\r\n private displayName = this.userAccount.user.firstName + ' ' + this.userAccount.user.lastName;\r\n\r\n mounted(): void {\r\n this.eventCtrl.on('new-contract', this.newContractWithType);\r\n window.sessionStorage.removeItem('contractData');\r\n this.getUserBalance();\r\n this.getFileTypes();\r\n const _st: any = window.sessionStorage.getItem('st') || 0;\r\n const _sec: string = this.$route.query.sec as string;\r\n\r\n if (_sec == 'history') {\r\n this.selectType(2);\r\n } else {\r\n this.searchType = parseInt(_st);\r\n if (this.searchType === 2) {\r\n this.$router.push({ name: RouteN.DCSE.Home.n, query: { sec: 'history' } });\r\n } else {\r\n this.selectType(1);\r\n }\r\n }\r\n\r\n }\r\n\r\n beforeUnmount(): void {\r\n this.eventCtrl.removeListener('new-contract', this.newContractWithType);\r\n }\r\n\r\n private getFileTypes() {\r\n this.apiService.CodeApi?.apiV1CodeGetFileTypesGet()\r\n .then((res) => {\r\n this.fileTypes = res.data.data;\r\n window.sessionStorage.setItem('ft', JSON.stringify(this.fileTypes));\r\n })\r\n .catch(err => {\r\n this.ai.trackException('Error getting file types: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting file types: ' + err);\r\n })\r\n }\r\n\r\n private async getUserBalance() {\r\n await this.apiService.ExternalApi?.apiV1ExternalGetUserBalanceGet()\r\n .then(res => {\r\n this.prepaidBalance = res.data.data as number;\r\n })\r\n .catch(err => {\r\n this.ai.trackException('Error getting user balance: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting user balance: ' + err.response.status);\r\n })\r\n }\r\n\r\n private getActiveContracts() {\r\n this.isLoadingData = true;\r\n let _ts = window.sessionStorage.getItem('ts') || '';\r\n _ts = _ts.replace('+00:00', ''); // remove timezone info\r\n if (_ts === '') {\r\n this.downloadNewSetOfContracts();\r\n } else {\r\n this.apiService.ContractApi?.apiV1ContractHasUpdatedContractsUtcTimeStampGet(_ts as unknown as Date)\r\n .then((res) => {\r\n if (res.data) {\r\n this.isLoadingData = false;\r\n // download new set of contracts\r\n this.downloadNewSetOfContracts();\r\n } else {\r\n this.isLoadingData = false;\r\n // try to get contracts from cache\r\n const _activeContracts = window.sessionStorage.getItem('ac');\r\n if (_activeContracts) {\r\n this.contractList = JSON.parse(_activeContracts)\r\n } else {\r\n this.downloadNewSetOfContracts();\r\n }\r\n }\r\n })\r\n .catch(err => {\r\n this.isLoadingData = false;\r\n this.ai.trackException('Error getting server timestamp: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting server timestamp: ' + err.response.status);\r\n })\r\n }\r\n\r\n }\r\n\r\n private downloadNewSetOfContracts() {\r\n this.isLoadingData = true;\r\n this.apiService.ContractApi?.apiV1ContractGetContractsWithThumbnailGet()\r\n .then(res => {\r\n this.contractList = res.data.data as Contract[];\r\n this.contractList = orderBy(\r\n this.contractList,\r\n ['contractCategoryId', 'year', 'createdOn'],\r\n ['asc', 'desc', 'desc']\r\n );\r\n window.sessionStorage.setItem('ts', res.data.timeStamp);\r\n window.sessionStorage.setItem('ac', JSON.stringify(this.contractList));\r\n this.isLoadingData = false;\r\n })\r\n .catch(err => {\r\n this.isLoadingData = false;\r\n this.ai.trackException('Error getting active contracts: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting active contracts: ' + err.response.status);\r\n })\r\n }\r\n\r\n private newContractWithType(type: number) {\r\n const _activeContract = window.sessionStorage.getItem('ac') || '';\r\n if (_activeContract !== '') {\r\n this.contractList = JSON.parse(_activeContract);\r\n let c: Contract = {};\r\n switch (type) {\r\n case 1: //Land\r\n c = (this.contractList.filter((c) => {\r\n return c.contractCategoryId === 1;\r\n }))[0];\r\n break;\r\n case 2: //Business\r\n c = (this.contractList.filter((c) => {\r\n return c.contractCategoryId === 2;\r\n }))[0];\r\n break;\r\n }\r\n this.newContract(c);\r\n } else {\r\n this.selectType(1);\r\n }\r\n }\r\n\r\n\r\n private newContract(c: Contract) {\r\n this.initialiseNewContract(c);\r\n this.$router.push({ name: RouteN.DCSE.eContract.n, query: { type: c.contractCategoryId, cid: 0, sec: Section.Details } });\r\n }\r\n\r\n private initialiseNewContract(c: Contract) {\r\n\r\n const _contractOrderDetailData: ContractOrderDetailData[] = [{\r\n id: 0,\r\n businessName: '',\r\n watermark: '',\r\n additionalInfo: '',\r\n address: '',\r\n numOfContract: 1,\r\n }];\r\n const _newContract: NewContract = {\r\n id: 0,\r\n contractId: c.id,\r\n contractCategoryId: c.contractCategoryId,\r\n contractSubCategoryId: null,\r\n contractType: c.contractType,\r\n year: c.year,\r\n sku: c.sku,\r\n glCode: c.glCode,\r\n gstCode: c.gstCode,\r\n description: c.description,\r\n feeMember: c.feeMember,\r\n feeNonMember: c.feeNonMember,\r\n isFinalisedOrder: false,\r\n\r\n referenceId: '',\r\n userId: this.userAccount.token.userId,\r\n contractOrderDetailData: _contractOrderDetailData,\r\n qty: 1,\r\n unitPrice: this.userAccount.user.isMember ? c.feeMember : c.feeNonMember,\r\n templateAdditionalInfo: '',\r\n templateAddress: '',\r\n templateWatermark: '',\r\n paymentTypeId: 1,\r\n orderType: OrderType.UNKNOWN,\r\n singleUseTokenId: '',\r\n amountReceived: 0,\r\n acceptTermsAndConditions: false,\r\n }\r\n store.dispatch('setContractData', _newContract);\r\n }\r\n\r\n private selectType(type: number): void {\r\n this.searchType = type;\r\n store.dispatch('setSearchType', type);\r\n this.getActiveContracts();\r\n if (type === 2) {\r\n this.$router.push({ name: RouteN.DCSE.Home.n, query: { sec: 'history' } });\r\n } else {\r\n this.$router.push({ name: RouteN.DCSE.Home.n, query: { sec: 'new' } });\r\n }\r\n\r\n this.search = '';\r\n }\r\n\r\n private contactUs() {\r\n window.open(UserDefine[0].contact_us_url, 'blank');\r\n }\r\n\r\n private topUp() {\r\n window.sessionStorage.setItem('topup', this.userAccount.user.lawId || '1');\r\n this.$router.push({ name: RouteN.DCSE.TopUp.n, query: { mid: this.userAccount.user.lawId, sec: Section.Prepayment } });\r\n }\r\n\r\n private toCurrency(value: number) {\r\n return this.utils.$toCurrency(value);\r\n }\r\n\r\n get helpContentData(): unknown {\r\n const _section: string = this.$route.query.sec as string;\r\n // const _type = this.$route.query.type as string;\r\n let _helpContentData: any = HelpContentData.home.newContract;\r\n if (_section === \"history\") {\r\n _helpContentData = HelpContentData.home.history;\r\n }\r\n return _helpContentData;\r\n }\r\n\r\n\r\n}\r\n\r\n","import { render } from \"./home.html?vue&type=template&id=5c7f4c9b&scoped=true&ts=true\"\nimport script from \"./home.ts?vue&type=script&lang=ts\"\nexport * from \"./home.ts?vue&type=script&lang=ts\"\n\nimport \"./home.scss?vue&type=style&index=0&id=5c7f4c9b&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5c7f4c9b\"]])\n\nexport default __exports__","\nexport function render(_ctx, _cache) {\n return null\n}","// import { UserAccount, ClientTypeID, ClientType } from '../user/user-account';\r\nimport { AuthorizedUser } from '@/shared/models/authorized-user';\r\nimport AuthenticationService from './authentication.service';\r\nimport { AuthenticationStatusType, AuthenticationStatus } from './authentication-status';\r\n\r\nexport class Authentication {\r\n\r\n private authService: AuthenticationService;\r\n private loginCallback: (x: AuthenticationStatusType) => void;\r\n\r\n constructor(\r\n public authorizedUser: AuthorizedUser\r\n ) {\r\n this.authService = new AuthenticationService(this.authorizedUser);\r\n this.loginCallback = null as any;\r\n }\r\n\r\n public runAuthCheck(cb: () => void): void {\r\n this.loginCallback = cb;\r\n this.productionAuth();\r\n }\r\n\r\n public logout(cb: () => void): void {\r\n this.clearBrowserStorages();\r\n this.deleteAllCookies();\r\n\r\n if (typeof cb === 'function') {\r\n cb();\r\n }\r\n }\r\n\r\n private clearBrowserStorages(): void {\r\n try {\r\n localStorage.clear();\r\n sessionStorage.clear();\r\n } catch (err) {\r\n // console.log(err);\r\n }\r\n }\r\n\r\n\r\n private deleteAllCookies() {\r\n const cookies: string[] = document.cookie.split(';');\r\n for (const cookie of cookies) {\r\n const eqPos: number = cookie.indexOf('=');\r\n const name: string = eqPos > -1 ? cookie.substr(0, eqPos) : cookie;\r\n document.cookie = name + '=;expires=Thu, 01 Jan 1970 00:00:00 GMT';\r\n }\r\n }\r\n\r\n\r\n private productionAuth(): void {\r\n this.authService.checkAuthentication()\r\n .then((res: any) => {\r\n this.productionVerify();\r\n })\r\n .catch((err: any) => {\r\n this.productionVerify();\r\n });\r\n }\r\n\r\n private productionVerify(): void {\r\n // const v1: ClientType = this.userAccount.clientType;\r\n const v2: AuthenticationStatus = this.authorizedUser.authenticationStatus;\r\n // const c1: boolean = v1 === ClientTypeID.DesktopApp;\r\n const c2: boolean = v2 === AuthenticationStatusType.LoggedIn;\r\n const c3: boolean = v2 === AuthenticationStatusType.NotLogin;\r\n\r\n this.authorizedUser.authenticationStatus = c2 ? AuthenticationStatusType.AppAccessPermitted : AuthenticationStatusType.NotLogin;\r\n\r\n if (typeof this.loginCallback === 'function') {\r\n this.loginCallback(this.authorizedUser.authenticationStatus);\r\n }\r\n }\r\n}\r\n","import { Options, Vue } from \"vue-class-component\";\r\nimport { Authentication } from '@/shared/modules/authentication/authentication';\r\nimport { AuthorizedUser } from '@/shared/models/authorized-user';\r\nimport { SELF_URL } from '@/shared/config/config';\r\nimport { Url } from '@/shared/config/url';\r\nimport store from '@/shared/store';\r\n\r\n@Options({})\r\nexport default class Logout extends Vue {\r\n\r\n private authentication: Authentication = new Authentication(\r\n this.userAccount);\r\n\r\n created() {\r\n this.authentication.logout(this.logoutCallBack);\r\n }\r\n\r\n private logoutCallBack(): void {\r\n setTimeout( () => { document.location.href = SELF_URL + Url.Logout; }, 0);\r\n }\r\n\r\n get userAccount(): AuthorizedUser {\r\n return store.getters.getUserAccount;\r\n }\r\n}\r\n","import { render } from \"./logout.html?vue&type=template&id=68da5c46&scoped=true&ts=true\"\nimport script from \"./logout.ts?vue&type=script&lang=ts\"\nexport * from \"./logout.ts?vue&type=script&lang=ts\"\n\nimport \"./logout.scss?vue&type=style&index=0&id=68da5c46&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-68da5c46\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-0e8cc5fa\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"auto-login\" }\nconst _hoisted_2 = { class: \"container\" }\nconst _hoisted_3 = { class: \"row\" }\nconst _hoisted_4 = { class: \"col-12-sm col-12\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"ls-slate\" }, \"Authenticating...\", -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_StdPageLayout = _resolveComponent(\"StdPageLayout\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_component_StdPageLayout, null, {\n \"body-content\": _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _hoisted_5,\n _createVNode(_component_LoadingSpinner)\n ])\n ])\n ])\n ]),\n _: 1\n })\n ]))\n}","import { resolveComponent as _resolveComponent, createVNode as _createVNode, renderSlot as _renderSlot, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-34607d2a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"std-page-layout-main\" }\n\nexport function render(_ctx, _cache) {\n const _component_PageHeader = _resolveComponent(\"PageHeader\")\n const _component_PageFooter = _resolveComponent(\"PageFooter\")\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_PageHeader, {\n showAppMenu: _ctx.showAccountControl,\n isExternal: _ctx.isExternal\n }, null, 8, [\"showAppMenu\", \"isExternal\"]),\n _renderSlot(_ctx.$slots, \"body-content\", {}, undefined, true),\n _createVNode(_component_PageFooter, { class: \"footer\" })\n ]))\n}","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, withCtx as _withCtx, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\nimport _imports_0 from '@/assets/logo.svg'\nimport _imports_1 from '@/assets/logo_vertical.svg'\n\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-726e8a3e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"page-header-main\" }\nconst _hoisted_2 = { class: \"page-header\" }\nconst _hoisted_3 = [\"title\"]\nconst _hoisted_4 = [\"title\"]\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"app-name\" }, \"Digital Contracts Service\", -1))\n\nexport function render(_ctx, _cache) {\n const _component_AccountInfoPanel = _resolveComponent(\"AccountInfoPanel\")\n const _component_AlertBox = _resolveComponent(\"AlertBox\")\n\n return (_openBlock(), _createElementBlock(\"section\", null, [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"img\", {\n class: \"logo\",\n src: _imports_0,\n onClick: _cache[0] || (_cache[0] = (...args) => (_ctx.logoClicked && _ctx.logoClicked(...args))),\n title: _ctx.$route.name !== 'Dashboard' ? 'Home' : ''\n }, null, 8, _hoisted_3),\n _createElementVNode(\"img\", {\n class: \"logo-small\",\n src: _imports_1,\n onClick: _cache[1] || (_cache[1] = (...args) => (_ctx.logoClicked && _ctx.logoClicked(...args))),\n title: _ctx.$route.name !== 'Dashboard' ? 'Home' : ''\n }, null, 8, _hoisted_4),\n _hoisted_5\n ]),\n (_ctx.showAppMenu)\n ? (_openBlock(), _createBlock(_component_AccountInfoPanel, {\n key: 0,\n isExternal: _ctx.isExternal\n }, null, 8, [\"isExternal\"]))\n : _createCommentVNode(\"\", true)\n ]),\n (_ctx.showCancelAlertBox)\n ? (_openBlock(), _createBlock(_component_AlertBox, {\n key: 0,\n onClose: _cache[4] || (_cache[4] = $event => (_ctx.showCancelAlertBox = false))\n }, {\n header: _withCtx(() => [\n _createElementVNode(\"h3\", null, _toDisplayString(_ctx.alertBoxTitle), 1)\n ]),\n body: _withCtx(() => [\n _createElementVNode(\"div\", null, _toDisplayString(_ctx.alertBoxBody), 1)\n ]),\n footer: _withCtx(() => [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary sml\",\n onClick: _cache[2] || (_cache[2] = $event => (_ctx.exitApplication()))\n }, \"Yes\"),\n _createElementVNode(\"button\", {\n class: \"btn btn-tertiary sml\",\n onClick: _cache[3] || (_cache[3] = $event => (_ctx.showCancelAlertBox = false))\n }, \"No\")\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, normalizeClass as _normalizeClass, withModifiers as _withModifiers, resolveComponent as _resolveComponent, createBlock as _createBlock, Transition as _Transition, withCtx as _withCtx, createVNode as _createVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-0558ac43\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"account-info-panel\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"user-info-preview\"\n}\nconst _hoisted_3 = { class: \"selection-type\" }\nconst _hoisted_4 = {\n key: 0,\n class: \"fal fa-users fa-2x\"\n}\nconst _hoisted_5 = {\n key: 1,\n class: \"fal fa-user fa-2x\"\n}\nconst _hoisted_6 = { class: \"menuButton-icon\" }\nconst _hoisted_7 = { class: \"menuButton-text\" }\n\nexport function render(_ctx, _cache) {\n const _component_ApplicationMenu = _resolveComponent(\"ApplicationMenu\")\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_ctx.appAccessPermitted)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.infoTextRow0), 1),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.infoTextRow1), 1)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_3, [\n (_ctx.selectionTypeClassName == 'committee')\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_4))\n : _createCommentVNode(\"\", true),\n (_ctx.selectionTypeClassName == 'committee-member')\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_5))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"button\", {\n onClick: _cache[0] || (_cache[0] = _withModifiers((...args) => (_ctx.onMenuClicked && _ctx.onMenuClicked(...args)), [\"prevent\",\"stop\"])),\n ref: \"menuButton\",\n class: \"menuButton\"\n }, [\n _createElementVNode(\"div\", _hoisted_6, [\n _createElementVNode(\"i\", {\n class: _normalizeClass(['far', 'fa-3x', _ctx.menuIcon, 'icon'])\n }, null, 2)\n ]),\n _createElementVNode(\"div\", _hoisted_7, _toDisplayString(_ctx.menuButtonText), 1)\n ], 512),\n _createVNode(_Transition, {\n name: \"fade\",\n mode: \"out-in\"\n }, {\n default: _withCtx(() => [\n (_ctx.showMenu)\n ? (_openBlock(), _createBlock(_component_ApplicationMenu, {\n key: 0,\n ref: \"dropDownMenu\",\n show: _ctx.showMenu,\n isExternal: _ctx.isExternal\n }, null, 8, [\"show\", \"isExternal\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n })\n ]))\n}","import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, vShow as _vShow, withDirectives as _withDirectives, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-74c8f2f5\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"app-menu\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"Purchase eContract - Land\", -1))\nconst _hoisted_3 = [\n _hoisted_2\n]\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"Purchase eContract - Business\", -1))\nconst _hoisted_5 = [\n _hoisted_4\n]\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"Contact Us\", -1))\nconst _hoisted_7 = [\n _hoisted_6\n]\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"FAQs\", -1))\nconst _hoisted_9 = [\n _hoisted_8\n]\nconst _hoisted_10 = { class: \"section-start\" }\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"My Account\", -1))\nconst _hoisted_12 = [\n _hoisted_11\n]\nconst _hoisted_13 = {\n key: 1,\n class: \"section-start\"\n}\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"Logout\", -1))\nconst _hoisted_15 = [\n _hoisted_14\n]\n\nexport function render(_ctx, _cache) {\n return _withDirectives((_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"ul\", null, [\n (_ctx.isExternal)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _createElementVNode(\"li\", null, [\n _createElementVNode(\"button\", {\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.newContract(1)))\n }, _hoisted_3)\n ]),\n _createElementVNode(\"li\", null, [\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = $event => (_ctx.newContract(2)))\n }, _hoisted_5)\n ]),\n _createElementVNode(\"li\", null, [\n _createElementVNode(\"button\", {\n onClick: _cache[2] || (_cache[2] = $event => (_ctx.goToContactUs()))\n }, _hoisted_7)\n ]),\n _createElementVNode(\"li\", null, [\n _createElementVNode(\"button\", {\n onClick: _cache[3] || (_cache[3] = $event => (_ctx.goToFAQ()))\n }, _hoisted_9)\n ]),\n _createElementVNode(\"li\", _hoisted_10, [\n _createElementVNode(\"button\", {\n onClick: _cache[4] || (_cache[4] = $event => (_ctx.$router.push({ name: _ctx.RouteN.DCSE.LogoutPage.n})))\n }, _hoisted_12)\n ])\n ], 64))\n : _createCommentVNode(\"\", true),\n (!_ctx.isExternal)\n ? (_openBlock(), _createElementBlock(\"li\", _hoisted_13, [\n _createElementVNode(\"button\", {\n onClick: _cache[5] || (_cache[5] = $event => (_ctx.$router.push({ name: _ctx.RouteN.DCSI.LogoutPage.n})))\n }, _hoisted_15)\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ], 512)), [\n [_vShow, _ctx.show]\n ])\n}","import { Options, Vue } from 'vue-class-component';\r\n// import { UserAccount } from '@/components/user/user-account';\r\nimport { RouteN, RouteName } from '@/shared/constants/route-name';\r\nimport { Prop } from 'vue-property-decorator';\r\nimport { SectionName, Section } from '@/shared/constants/section-name';\r\nimport UserDefine from '@/assets/config/user-define.json';\r\nimport store from '@/shared/store';\r\nimport { EventEmitter } from 'events';\r\n\r\n@Options({})\r\nexport default class ApplicationMenuComponent extends Vue {\r\n\r\n @Prop({ required: true })\r\n public show!: boolean;\r\n\r\n @Prop({ default: false })\r\n private isExternal!: boolean;\r\n\r\n // get userAccount(): UserAccount {\r\n // return this.$store.getters.getUserAccount;\r\n // }\r\n\r\n get RouteN(): RouteName {\r\n return RouteN;\r\n }\r\n\r\n get Section(): SectionName {\r\n return Section;\r\n }\r\n\r\n get eventCtrl(): EventEmitter {\r\n return store.getters.getEventController;\r\n }\r\n\r\n private newContract(type: number) {\r\n this.eventCtrl.emit('new-contract', type);\r\n }\r\n\r\n private goToFAQ() {\r\n window.open(UserDefine[0].faq_url, 'blank');\r\n }\r\n\r\n private goToAboutDCS() {\r\n window.open(UserDefine[0].about_dcs_url, 'blank');\r\n }\r\n\r\n private goToContactUs() {\r\n window.open(UserDefine[0].contact_us_url, 'blank');\r\n }\r\n\r\n}\r\n","import { render } from \"./application-menu.html?vue&type=template&id=74c8f2f5&scoped=true&ts=true\"\nimport script from \"./application-menu.ts?vue&type=script&lang=ts\"\nexport * from \"./application-menu.ts?vue&type=script&lang=ts\"\n\nimport \"./application-menu.scss?vue&type=style&index=0&id=74c8f2f5&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-74c8f2f5\"]])\n\nexport default __exports__","import { Options, Vue } from 'vue-class-component';\r\nimport { Inject, Prop, Ref } from 'vue-property-decorator';\r\nimport ApplicationMenu from '@/shared/components/page-header/application-menu/index.vue';\r\nimport { RouteN } from '@/shared/constants/route-name';\r\nimport { AuthorizedUser } from '@/shared/models/authorized-user';\r\nimport store from '@/shared/store';\r\nimport { EventEmitter } from 'events';\r\nimport { AuthenticationStatusType } from '@/shared/modules/authentication/authentication-status';\r\n\r\n@Options({\r\n components: {\r\n ApplicationMenu\r\n }\r\n})\r\nexport default class AccountInfoPanel extends Vue {\r\n\r\n\r\n @Prop({ default: false })\r\n private isExternal!: boolean;\r\n\r\n @Ref('dropDownMenu')\r\n private dropDownMenuUI!: HTMLElement;\r\n\r\n public showMenu = false;\r\n\r\n get eventCtrl(): EventEmitter {\r\n return store.getters.getEventController;\r\n }\r\n\r\n created(): void {\r\n window.addEventListener('click', this.clickedElement);\r\n }\r\n\r\n beforeUnmount(): void {\r\n window.removeEventListener('click', this.clickedElement);\r\n }\r\n\r\n private clickedElement(e: MouseEvent): void | boolean {\r\n const el: HTMLElement = this.dropDownMenuUI;\r\n const elBut: HTMLElement = this.dropDownMenuUI;\r\n const target: HTMLElement = e.target as HTMLElement;\r\n if (el !== target && elBut !== target) {\r\n this.showMenu = false;\r\n }\r\n }\r\n\r\n private onMenuClicked() {\r\n if (!this.isExternal) {\r\n switch (this.$route.name) {\r\n case RouteN.DCSI.Home.n:\r\n this.showMenu = !this.showMenu;\r\n break;\r\n case RouteN.DCSI.PaymentAdjustment.n:\r\n this.cancelAdjustmentClick();\r\n break;\r\n case RouteN.DCSI.eContract.n:\r\n if (this.isUpdating) {\r\n this.cancelUpdateClick();\r\n } else {\r\n this.cancelAddClick();\r\n }\r\n break;\r\n default:\r\n this.$router.push({ name: RouteN.DCSI.Home.n });\r\n break;\r\n }\r\n } else {\r\n switch (this.$route.name) {\r\n case RouteN.DCSE.Home.n:\r\n this.showMenu = !this.showMenu;\r\n break;\r\n case RouteN.DCSE.TopUp.n:\r\n this.cancelTopUpClick();\r\n break;\r\n case RouteN.DCSE.eContract.n:\r\n if (this.isUpdating) {\r\n this.cancelUpdateClick();\r\n } else {\r\n this.cancelPurchaseClick();\r\n }\r\n break;\r\n case RouteN.DCSE.EditContract.n:\r\n this.cancelEditClick();\r\n break;\r\n default:\r\n this.$router.push({ name: RouteN.DCSE.Home.n });\r\n break;\r\n }\r\n }\r\n\r\n\r\n }\r\n\r\n get infoTextRow0(): string {\r\n try {\r\n return this.userAccount.user.firstName + ' ' + this.userAccount.user.lastName;\r\n } catch (err) {\r\n return '';\r\n }\r\n }\r\n\r\n get infoTextRow1(): string {\r\n switch (this.$route.name) {\r\n default:\r\n return '';\r\n }\r\n }\r\n\r\n get menuButtonText(): string {\r\n if (!this.isExternal) {\r\n switch (this.$route.name) {\r\n case RouteN.DCSI.Home.n:\r\n return 'Menu';\r\n case RouteN.DCSI.PaymentAdjustment.n:\r\n return this.isConfirmationPage ? 'Close' : 'Cancel Adjustment';\r\n case RouteN.DCSI.eContract.n:\r\n return 'Cancel Update';\r\n default:\r\n return 'Close';\r\n }\r\n } else {\r\n switch (this.$route.name) {\r\n case RouteN.DCSE.Home.n:\r\n return 'Menu';\r\n case RouteN.DCSE.eContract.n:\r\n return this.isConfirmationPage ? 'Close' : 'Cancel Purchase';\r\n case RouteN.DCSE.TopUp.n:\r\n return this.isConfirmationPage ? 'Close' : 'Cancel Purchase';\r\n case RouteN.DCSE.EditContract.n:\r\n return this.isConfirmationPage ? 'Close' : 'Cancel Changes';\r\n default:\r\n return 'Close';\r\n }\r\n }\r\n\r\n }\r\n\r\n\r\n get menuIcon(): string {\r\n switch (this.$route.name) {\r\n case RouteN.DCSI.Home.n:\r\n return this.showMenu ? 'fa-times' : 'fa-bars';\r\n default:\r\n return 'fa-times';\r\n }\r\n }\r\n\r\n get selectionTypeClassName(): string {\r\n // switch (this.$route.name) {\r\n // case RouteN.DCSI.Committee.n:\r\n // return 'committee';\r\n // case RouteN.DCSI.Member.n:\r\n // return 'committee-member';\r\n // default:\r\n // return '';\r\n // }\r\n return '';\r\n }\r\n\r\n get isConfirmationPage(): boolean {\r\n const section: string = this.$route.query.sec as string || '';\r\n return section.indexOf('confirmation') > -1;\r\n }\r\n\r\n get isUpdating(): boolean {\r\n const section: string = this.$route.query.sec as string || '';\r\n return section.indexOf('update') == 0;\r\n }\r\n\r\n get userAccount(): AuthorizedUser {\r\n return store.getters.getUserAccount;\r\n }\r\n\r\n get appAccessPermitted(): boolean {\r\n return this.userAccount.authenticationStatus === AuthenticationStatusType.AppAccessPermitted;\r\n }\r\n\r\n private cancelAdjustmentClick() {\r\n this.eventCtrl.emit('cancel-adjustment');\r\n }\r\n\r\n private cancelTopUpClick() {\r\n this.eventCtrl.emit('cancel-topup');\r\n }\r\n\r\n private cancelUpdateClick() {\r\n this.eventCtrl.emit('cancel-update');\r\n }\r\n\r\n private cancelAddClick() {\r\n this.eventCtrl.emit('cancel-add');\r\n }\r\n\r\n private cancelPurchaseClick() {\r\n this.eventCtrl.emit('cancel-purchase');\r\n }\r\n\r\n private cancelEditClick() {\r\n this.eventCtrl.emit('cancel-edit');\r\n }\r\n\r\n}\r\n","import { render } from \"./account-info-panel.html?vue&type=template&id=0558ac43&scoped=true&ts=true\"\nimport script from \"./account-info-panel.ts?vue&type=script&lang=ts\"\nexport * from \"./account-info-panel.ts?vue&type=script&lang=ts\"\n\nimport \"./account-info-panel.scss?vue&type=style&index=0&id=0558ac43&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-0558ac43\"]])\n\nexport default __exports__","import { Options, Vue } from 'vue-class-component';\r\nimport { Prop } from 'vue-property-decorator';\r\nimport { RouteN } from '@/shared/constants/route-name';\r\nimport AccountInfoPanel from '@/shared/components/page-header/account-info-panel/index.vue';\r\nimport AlertBox from '@/shared/components/alert-box/index.vue';\r\nimport { EventEmitter } from 'events';\r\nimport store from '@/shared/store';\r\nimport { Section } from '@/shared/constants/section-name';\r\n\r\n@Options({\r\n components: {\r\n AccountInfoPanel,\r\n AlertBox,\r\n }\r\n})\r\nexport default class PageHeader extends Vue {\r\n\r\n @Prop({ default: true })\r\n private showAppMenu!: boolean;\r\n\r\n @Prop({ default: false })\r\n private isExternal!: boolean;\r\n\r\n private showCancelAlertBox = false;\r\n private alertBoxTitle = '';\r\n private alertBoxBody = 'Are you sure you want to cancel?';\r\n\r\n get eventCtrl(): EventEmitter {\r\n return store.getters.getEventController;\r\n }\r\n\r\n mounted(): void {\r\n this.eventCtrl.on('cancel-adjustment', this.closeAdjustment);\r\n this.eventCtrl.on('cancel-update', this.cancelUpdate);\r\n this.eventCtrl.on('cancel-add', this.cancelAdd);\r\n this.eventCtrl.on('cancel-purchase', this.cancelPurchase);\r\n this.eventCtrl.on('cancel-topup', this.cancelTopup);\r\n this.eventCtrl.on('cancel-edit', this.cancelEdit);\r\n }\r\n\r\n beforeUnmount(): void {\r\n this.eventCtrl.removeListener('cancel-adjustment', this.closeAdjustment);\r\n this.eventCtrl.removeListener('cancel-update', this.cancelUpdate);\r\n this.eventCtrl.removeListener('cancel-add', this.cancelAdd);\r\n this.eventCtrl.removeListener('cancel-purchase', this.cancelPurchase);\r\n this.eventCtrl.removeListener('cancel-topup', this.cancelTopup);\r\n this.eventCtrl.removeListener('cancel-edit', this.cancelEdit);\r\n }\r\n\r\n private exitApplication(refreshData?: boolean) {\r\n this.showCancelAlertBox = false;\r\n // clear all application data\r\n window.sessionStorage.removeItem('payment-adjustment');\r\n window.sessionStorage.removeItem('contract-processing');\r\n window.sessionStorage.removeItem('topup');\r\n window.sessionStorage.removeItem('contractData');\r\n\r\n this.$router.push({ name: RouteN.DCSI.Home.n, query: { update: refreshData ? '1' : '0' } });\r\n }\r\n\r\n private closeAdjustment() {\r\n this.alertBoxTitle = \"CANCEL PAYMENT ADJUSTMENT\";\r\n this.alertBoxBody = 'Are you sure you want to cancel?';\r\n if (this.isConfirmationPage) {\r\n this.exitApplication(true);\r\n } else {\r\n this.showCancelAlertBox = true;\r\n }\r\n }\r\n\r\n private cancelUpdate() {\r\n this.alertBoxTitle = \"CANCEL eContract UPDATE\";\r\n this.alertBoxBody = 'Are you sure you want to cancel?';\r\n if (this.isConfirmationPage) {\r\n this.exitApplication();\r\n } else {\r\n this.showCancelAlertBox = true;\r\n }\r\n }\r\n\r\n private cancelEdit() {\r\n this.alertBoxTitle = \"CANCEL EDIT\";\r\n this.alertBoxBody = 'Are you sure you want to cancel?';\r\n if (this.isConfirmationPage) {\r\n this.exitApplication();\r\n } else {\r\n this.showCancelAlertBox = true;\r\n }\r\n }\r\n\r\n private cancelAdd() {\r\n this.alertBoxTitle = \"CANCEL ADD NEW eContract\";\r\n this.alertBoxBody = 'Are you sure you want to cancel?';\r\n if (this.isConfirmationPage) {\r\n this.exitApplication();\r\n } else {\r\n this.showCancelAlertBox = true;\r\n }\r\n }\r\n\r\n private cancelPurchase() {\r\n this.alertBoxTitle = \"CANCEL PURCHASE\";\r\n this.alertBoxBody = 'By cancelling the Contract Purchase all changes will lost. Are you sure you want to cancel?';\r\n if (this.isConfirmationPage) {\r\n this.exitApplication();\r\n } else {\r\n this.showCancelAlertBox = true;\r\n }\r\n }\r\n\r\n private cancelTopup() {\r\n this.alertBoxTitle = \"CANCEL TOP-UP\";\r\n this.alertBoxBody = 'Are you sure you want to cancel?';\r\n if (this.isConfirmationPage) {\r\n this.exitApplication(true);\r\n } else {\r\n this.showCancelAlertBox = true;\r\n }\r\n }\r\n\r\n get isConfirmationPage(): boolean {\r\n const section: string = this.$route.query.sec as string || '';\r\n return section.indexOf('confirmation') > -1;\r\n }\r\n\r\n private logoClicked() {\r\n const _section: string = this.$route.query.sec as string || '';\r\n const _name: string = this.$route.name as string || '';\r\n if (this.isExternal) {\r\n if (_name === RouteN.DCSE.Home.n) {\r\n // window.open('https://www.lawsociety.com.au/', 'blank');\r\n }\r\n if (_name === RouteN.DCSE.eContract.n) {\r\n if (_section === Section.Confirmation) {\r\n this.$router.push({ name: RouteN.DCSE.Home.n });\r\n } else {\r\n this.eventCtrl.emit('cancel-purchase');\r\n }\r\n }\r\n if (_name === RouteN.DCSE.TopUp.n) {\r\n if (_section === Section.Confirmation) {\r\n this.$router.push({ name: RouteN.DCSE.Home.n });\r\n } else {\r\n this.eventCtrl.emit('cancel-topup');\r\n }\r\n }\r\n if (_name === RouteN.DCSE.EditContract.n) {\r\n if (_section === Section.Confirmation) {\r\n this.$router.push({ name: RouteN.DCSE.Home.n });\r\n } else {\r\n this.eventCtrl.emit('cancel-edit');\r\n }\r\n }\r\n } else {\r\n if (_name === RouteN.DCSI.eContract.n) {\r\n if (_section === Section.Update) {\r\n this.eventCtrl.emit('cancel-update');\r\n } else {\r\n this.eventCtrl.emit('cancel-add');\r\n }\r\n }\r\n if (_name === RouteN.DCSI.PaymentAdjustment.n) {\r\n this.eventCtrl.emit('cancel-adjustment');\r\n }\r\n }\r\n }\r\n \r\n}\r\n","import { render } from \"./page-header.html?vue&type=template&id=726e8a3e&scoped=true&ts=true\"\nimport script from \"./page-header.ts?vue&type=script&lang=ts\"\nexport * from \"./page-header.ts?vue&type=script&lang=ts\"\n\nimport \"./page-header.scss?vue&type=style&index=0&id=726e8a3e&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-726e8a3e\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\nimport _imports_0 from '@/assets/logo-white.svg'\n\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-498e207e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"page-footer-main\" }\nconst _hoisted_2 = { class: \"container\" }\nconst _hoisted_3 = { class: \"row\" }\nconst _hoisted_4 = { class: \"col-12 page-footer\" }\nconst _hoisted_5 = { class: \"footer-text\" }\nconst _hoisted_6 = { class: \"footer-text-wrap\" }\nconst _hoisted_7 = { class: \"links\" }\nconst _hoisted_8 = [\"href\"]\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"gap\" }, null, -1))\nconst _hoisted_10 = [\"href\"]\nconst _hoisted_11 = { class: \"copyright\" }\nconst _hoisted_12 = { class: \"footer-logo\" }\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"div\", _hoisted_6, [\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"span\", null, [\n _createElementVNode(\"a\", {\n class: \"link-1\",\n target: \"blank\",\n href: _ctx.termsUrl\n }, \"Terms of Use\", 8, _hoisted_8)\n ]),\n _hoisted_9,\n _createElementVNode(\"span\", null, [\n _createElementVNode(\"a\", {\n class: \"link-2\",\n target: \"blank\",\n href: _ctx.privacyUrl\n }, \"Privacy Policy\", 8, _hoisted_10)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_11, [\n _createElementVNode(\"small\", null, \"© Copyright \" + _toDisplayString(_ctx.currentYear) + \" - The Law Society of New South Wales (ABN 98 696 304 966, ACN 000 000 699)\", 1)\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_12, [\n _createElementVNode(\"img\", {\n class: \"logo\",\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.logoClick())),\n src: _imports_0,\n alt: \"Footer logo\",\n title: \"The Law Society Of New South Wales\"\n })\n ])\n ])\n ])\n ])\n ]))\n}","// import { AppInsights } from '@/appInsights';\r\n// import { CMPApi } from '@/modules/cmp-api';\r\nimport { DCSApi } from '@/shared/modules/dcs-api';\r\nimport { EventEmitter } from 'events';\r\nimport moment from 'moment';\r\nimport { Options, Vue } from 'vue-class-component';\r\nimport { Inject } from 'vue-property-decorator';\r\nimport UserDefine from '@/assets/config/user-define.json';\r\n\r\n@Options({})\r\nexport default class PageFooter extends Vue {\r\n @Inject({ from: 'apiService', default: new DCSApi() })\r\n private apiService!: DCSApi;\r\n\r\n @Inject({ from: 'eventController', default: new EventEmitter })\r\n private eventCtrl!: EventEmitter;\r\n\r\n // private ai = new AppInsights;\r\n private baseDate: string = new Date().toUTCString();\r\n\r\n get termsUrl(): string {\r\n return UserDefine[0].terms_url;\r\n }\r\n get privacyUrl(): string {\r\n return UserDefine[0].privacy_url;\r\n }\r\n\r\n get currentYear(): string {\r\n let year: string;\r\n try {\r\n if (this.baseDate !== null) {\r\n year = moment(this.baseDate).format('YYYY');\r\n } else {\r\n year = '2021';\r\n }\r\n \r\n } catch {\r\n year = '2021';\r\n }\r\n return (year !== '2021' ? '2021 - ' + year : '2021'); \r\n }\r\n\r\n private logoClick() {\r\n window.open('https://www.lawsociety.com.au/', 'blank');\r\n }\r\n\r\n}\r\n","import { render } from \"./page-footer.html?vue&type=template&id=498e207e&scoped=true&ts=true\"\nimport script from \"./page-footer.ts?vue&type=script&lang=ts\"\nexport * from \"./page-footer.ts?vue&type=script&lang=ts\"\n\nimport \"./page-footer.scss?vue&type=style&index=0&id=498e207e&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-498e207e\"]])\n\nexport default __exports__","import { Options, Vue } from 'vue-class-component';\r\nimport PageHeader from '../page-header/page-header/index.vue';\r\nimport PageFooter from '../page-footer/index.vue';\r\nimport { Prop } from 'vue-property-decorator';\r\n\r\n@Options({\r\n components: {\r\n PageHeader,\r\n PageFooter\r\n }\r\n})\r\nexport default class StdPageLayout extends Vue {\r\n @Prop({ default: false })\r\n private showAccountControl!: boolean;\r\n\r\n @Prop({ default: false })\r\n private isExternal!: boolean;\r\n}\r\n\r\n\r\n","import { render } from \"./std-page-layout.html?vue&type=template&id=34607d2a&scoped=true&ts=true\"\nimport script from \"./std-page-layout.ts?vue&type=script&lang=ts\"\nexport * from \"./std-page-layout.ts?vue&type=script&lang=ts\"\n\nimport \"./std-page-layout.scss?vue&type=style&index=0&id=34607d2a&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-34607d2a\"]])\n\nexport default __exports__","import {Options, Vue} from \"vue-property-decorator\";\r\nimport StdPageLayout from \"@/shared/components/std-page-layout/index.vue\";\r\nimport LoadingSpinner from \"@/shared/components/loading-spinner/index.vue\";\r\nimport { Authentication } from \"@/shared/modules/authentication/authentication\";\r\nimport { AuthorizedUser } from \"@/shared/models/authorized-user\";\r\nimport store from \"@/shared/store\";\r\nimport { AuthenticationStatus, AuthenticationStatusType } from \"@/shared/modules/authentication/authentication-status\";\r\nimport { RouteN } from \"@/shared/constants/route-name\";\r\nimport { SELF_URL } from \"@/shared/config/config\";\r\nimport { Url } from \"@/shared/config/url\";\r\n\r\n@Options({\r\n components: {\r\n StdPageLayout,\r\n LoadingSpinner,\r\n }\r\n})\r\nexport default class AutoLogin extends Vue {\r\n\r\n private authentication: Authentication = new Authentication(\r\n this.userAccount\r\n );\r\n\r\n created() {\r\n this.authentication.runAuthCheck(this.authCheckCallBack);\r\n }\r\n\r\n private authCheckCallBack(status: AuthenticationStatus = AuthenticationStatusType.NotLogin): void {\r\n const redirect: string = this.$route.query.redirect as string;\r\n switch (status) {\r\n case AuthenticationStatusType.AppAccessPermitted:\r\n setTimeout(() => {\r\n this.$router.push(\r\n redirect ? redirect : { name: RouteN.DCSE.Main.n }\r\n );\r\n }, 0);\r\n break;\r\n case AuthenticationStatusType.AppAccessDenied:\r\n setTimeout(() => { this.$router.push({ name: RouteN.DCSE.AccessError.n }); }, 0);\r\n break;\r\n case AuthenticationStatusType.NotLogin:\r\n setTimeout(() => { document.location.href = SELF_URL + Url.Login; }, 0);\r\n break;\r\n default:\r\n setTimeout(() => { document.location.href = SELF_URL + Url.Logout; }, 0);\r\n break;\r\n }\r\n }\r\n \r\n get userAccount(): AuthorizedUser {\r\n return store.getters.getUserAccount;\r\n }\r\n\r\n}\r\n\r\n","import { render } from \"./auto-login.html?vue&type=template&id=0e8cc5fa&scoped=true&ts=true\"\nimport script from \"./auto-login.ts?vue&type=script&lang=ts\"\nexport * from \"./auto-login.ts?vue&type=script&lang=ts\"\n\nimport \"./auto-login.scss?vue&type=style&index=0&id=0e8cc5fa&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-0e8cc5fa\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, createVNode as _createVNode, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nexport function render(_ctx, _cache) {\n const _component_router_view = _resolveComponent(\"router-view\")\n const _component_StdPageLayout = _resolveComponent(\"StdPageLayout\")\n\n return (_openBlock(), _createBlock(_component_StdPageLayout, {\n showAccountControl: true,\n isExternal: true\n }, {\n \"body-content\": _withCtx(() => [\n _createVNode(_component_router_view)\n ]),\n _: 1\n }))\n}","export class Session {\r\n\r\n constructor(\r\n public issued: number = 0,\r\n public expires: number = 0,\r\n ) {}\r\n\r\n public hasExpired(): boolean {\r\n return Math.round(new Date().getTime() / 1000) >= this.expires;\r\n }\r\n}\r\n","import { Session } from './session';\r\nimport { IDLE_TIMEOUT } from '@/shared/config/config';\r\n\r\nexport class IDLESessionManager {\r\n\r\n public checkInterval = 1000;\r\n private workerID = -1;\r\n private session: Session = new Session();\r\n private timeoutCallBack: () => void;\r\n\r\n constructor(\r\n ) {\r\n this.session = new Session(\r\n Math.round(new Date().getTime() / 1000),\r\n Math.round(new Date().getTime() / 1000) + IDLE_TIMEOUT\r\n );\r\n this.timeoutCallBack = null as any;\r\n this.setup();\r\n }\r\n\r\n public run(cb: () => void): void {\r\n this.timeoutCallBack = cb;\r\n this.workerID = setInterval(() => {\r\n this.doCheckSession();\r\n }, this.checkInterval);\r\n }\r\n\r\n public stop(): void {\r\n clearInterval(this.workerID);\r\n window.removeEventListener('mousemove', this.resetTimer, false);\r\n window.removeEventListener('mousedown', this.resetTimer, false);\r\n window.removeEventListener('keypress', this.resetTimer, false);\r\n window.removeEventListener('DOMMouseScroll', this.resetTimer, false);\r\n window.removeEventListener('mousewheel', this.resetTimer, false);\r\n window.removeEventListener('touchmove', this.resetTimer, false);\r\n window.removeEventListener('MSPointerMove', this.resetTimer, false);\r\n }\r\n\r\n public resetTimer: () => void = () => {\r\n if (Math.round(new Date().getTime() / 1000) - this.session.issued >= 5) {\r\n this.doCheckSession(); // do another check;\r\n this.session.issued = Math.round(new Date().getTime() / 1000);\r\n this.session.expires = Math.round(new Date().getTime() / 1000) + IDLE_TIMEOUT;\r\n }\r\n }\r\n\r\n private doCheckSession(): void {\r\n if (this.session.hasExpired()) {\r\n this.timeoutCallBack();\r\n this.stop();\r\n }\r\n }\r\n\r\n private setup(): void {\r\n window.addEventListener('mousemove', this.resetTimer, false);\r\n window.addEventListener('mousedown', this.resetTimer, false);\r\n window.addEventListener('keypress', this.resetTimer, false);\r\n window.addEventListener('DOMMouseScroll', this.resetTimer, false);\r\n window.addEventListener('mousewheel', this.resetTimer, false);\r\n window.addEventListener('touchmove', this.resetTimer, false);\r\n window.addEventListener('MSPointerMove', this.resetTimer, false);\r\n }\r\n\r\n}\r\n","import { Inject, Options, Provide, Vue } from \"vue-property-decorator\";\r\nimport { IDLESessionManager } from \"@/shared/modules/session/idle-session-manager\";\r\nimport { RouteN } from \"@/shared/constants/route-name\";\r\nimport { FileType } from \"@/shared/constants/file-type\";\r\nimport { DataTypeName } from \"@/shared/constants/data-type-name\";\r\nimport { DCSApi } from \"@/shared/modules/dcs-api\";\r\nimport { NavigationGuardNext, RouteLocationNormalized } from \"vue-router\";\r\nimport store from \"@/shared/store\";\r\nimport { AuthorizedUser } from \"@/shared/models/authorized-user\";\r\nimport { AuthenticationStatusType } from \"@/shared/modules/authentication/authentication-status\";\r\nimport StdPageLayout from \"@/shared/components/std-page-layout/index.vue\";\r\n\r\nVue.registerHooks(['beforeRouteEnter']);\r\n\r\n@Options({\r\n components: {\r\n StdPageLayout,\r\n }\r\n})\r\nexport default class ExternalMain extends Vue {\r\n\r\n @Inject({ from: 'apiService', default: new DCSApi() })\r\n private apiService!: DCSApi;\r\n\r\n // @Provide({ to: 'fileType', reactive: true })\r\n // private fileTypes!: FileType[];\r\n\r\n private idleSessionMgr: IDLESessionManager = new IDLESessionManager();\r\n\r\n beforeRouteEnter(to: RouteLocationNormalized, from: RouteLocationNormalized, next: NavigationGuardNext): void {\r\n const c1: boolean = to.matched.some((record) => record.meta.requiresAuth);\r\n const c2: boolean = (store.getters.getUserAccount as AuthorizedUser)\r\n .authenticationStatus === AuthenticationStatusType.AppAccessPermitted;\r\n // Bypass login check\r\n // next();\r\n c1 && !c2 ? next({ name: RouteN.DCSE.LoginPage.n, query: { redirect: to.fullPath } }) : next();\r\n\r\n }\r\n\r\n created(): void {\r\n document.title = \"Digital Contracts Service\";\r\n // this.loadDataType();\r\n this.idleSessionMgr.run(this.idleSessionTimeoutCallback);\r\n }\r\n\r\n beforeUnmount(): void {\r\n this.idleSessionMgr.stop();\r\n }\r\n\r\n public idleSessionTimeoutCallback(): void {\r\n this.$router.push({ name: RouteN.DCSE.LogoutPage.n });\r\n }\r\n\r\n get isFixHeader(): boolean {\r\n switch (this.$route.name) {\r\n case RouteN.DCSE.Home.n:\r\n return false;\r\n default:\r\n return true;\r\n }\r\n }\r\n\r\n}\r\n\r\n","import { render } from \"./external-main.html?vue&type=template&id=b9f75fe6&scoped=true&ts=true\"\nimport script from \"./external-main.ts?vue&type=script&lang=ts\"\nexport * from \"./external-main.ts?vue&type=script&lang=ts\"\n\nimport \"./external-main.scss?vue&type=style&index=0&id=b9f75fe6&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-b9f75fe6\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createElementBlock as _createElementBlock, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7b2b1fb6\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"e-contract\" }\nconst _hoisted_2 = { class: \"container\" }\nconst _hoisted_3 = { class: \"section-header\" }\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_6 = [\"disabled\"]\nconst _hoisted_7 = [\"disabled\"]\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-angle-right\" })\n], -1))\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_10 = [\"disabled\"]\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_12 = {\n key: 7,\n style: {\"background-color\":\"#eee\",\"width\":\"100%\",\"overflow\":\"auto\"}\n}\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_HeaderStepper = _resolveComponent(\"HeaderStepper\")\n const _component_EContractDetails = _resolveComponent(\"EContractDetails\")\n const _component_EContractReview = _resolveComponent(\"EContractReview\")\n const _component_EContractPayment = _resolveComponent(\"EContractPayment\")\n const _component_EContractConfirmation = _resolveComponent(\"EContractConfirmation\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingSpinner, { key: 0 }))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_HeaderStepper, {\n navSteps: _ctx.navSteps,\n showHelpBtn: true\n }, null, 8, [\"navSteps\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, _toDisplayString(_ctx.contractData.description), 1),\n (_ctx.setCurrentStep() === 'details')\n ? (_openBlock(), _createBlock(_component_EContractDetails, {\n key: 0,\n contract: _ctx.contractData,\n \"onUpdate:contract\": _cache[0] || (_cache[0] = $event => ((_ctx.contractData) = $event))\n }, null, 8, [\"contract\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.setCurrentStep() === 'review')\n ? (_openBlock(), _createBlock(_component_EContractReview, {\n key: 1,\n contract: _ctx.contractData,\n \"onUpdate:contract\": _cache[1] || (_cache[1] = $event => ((_ctx.contractData) = $event))\n }, null, 8, [\"contract\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.setCurrentStep() === 'payment')\n ? (_openBlock(), _createBlock(_component_EContractPayment, {\n key: 2,\n contract: _ctx.contractData,\n \"onUpdate:contract\": _cache[2] || (_cache[2] = $event => ((_ctx.contractData) = $event)),\n cardPayment: _ctx.cardPayment,\n \"onUpdate:cardPayment\": _cache[3] || (_cache[3] = $event => ((_ctx.cardPayment) = $event))\n }, null, 8, [\"contract\", \"cardPayment\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.setCurrentStep() === 'confirmation')\n ? (_openBlock(), _createBlock(_component_EContractConfirmation, {\n key: 3,\n contractOrderId: _ctx.contractOrderId,\n \"onUpdate:contractOrderId\": _cache[4] || (_cache[4] = $event => ((_ctx.contractOrderId) = $event)),\n showIfErrorOccurredPostSuccessfulPayment: _ctx.showIfErrorOccurredPostSuccessfulPayment,\n \"onUpdate:showIfErrorOccurredPostSuccessfulPayment\": _cache[5] || (_cache[5] = $event => ((_ctx.showIfErrorOccurredPostSuccessfulPayment) = $event)),\n errorMessagePostSuccessfulPayment: _ctx.errorMessagePostSuccessfulPayment,\n \"onUpdate:errorMessagePostSuccessfulPayment\": _cache[6] || (_cache[6] = $event => ((_ctx.errorMessagePostSuccessfulPayment) = $event))\n }, null, 8, [\"contractOrderId\", \"showIfErrorOccurredPostSuccessfulPayment\", \"errorMessagePostSuccessfulPayment\"]))\n : _createCommentVNode(\"\", true),\n _hoisted_4,\n _hoisted_5,\n (_ctx.backButtonVisible)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 4,\n class: \"btn btn-tertiary mb-4 mr-3\",\n onClick: _cache[7] || (_cache[7] = $event => (_ctx.backButton())),\n disabled: _ctx.isLoadingData\n }, _toDisplayString(_ctx.backButtonText), 9, _hoisted_6))\n : _createCommentVNode(\"\", true),\n (!_ctx.showIfErrorOccurredPostSuccessfulPayment)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 5,\n class: \"btn btn-primary\",\n onClick: _cache[8] || (_cache[8] = $event => (_ctx.forwardButton())),\n disabled: !_ctx.canSubmit || _ctx.isLoadingData\n }, [\n _createTextVNode(_toDisplayString(_ctx.nextButtonText) + \" \", 1),\n _hoisted_8\n ], 8, _hoisted_7))\n : _createCommentVNode(\"\", true),\n _hoisted_9,\n (_ctx.allowSaveExit)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 6,\n class: \"btn btn-text-only\",\n onClick: _cache[9] || (_cache[9] = $event => (_ctx.saveAndExit())),\n disabled: _ctx.isLoadingData\n }, \"Save and exit\", 8, _hoisted_10))\n : _createCommentVNode(\"\", true),\n _hoisted_11,\n (_ctx.localDebug)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_12, [\n _createTextVNode(\" isUpdating: \" + _toDisplayString(_ctx.isUpdating) + \" \", 1),\n _hoisted_13,\n _createTextVNode(\" contractData: \" + _toDisplayString(_ctx.contractData), 1)\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n}","import { openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, toDisplayString as _toDisplayString, withModifiers as _withModifiers, normalizeClass as _normalizeClass, resolveComponent as _resolveComponent, createVNode as _createVNode, withCtx as _withCtx, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-2a5a15af\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"header-stepper\" }\nconst _hoisted_2 = { class: \"container\" }\nconst _hoisted_3 = { class: \"row mt-2\" }\nconst _hoisted_4 = { class: \"col-12 header-stepper-main\" }\nconst _hoisted_5 = {\n key: 0,\n class: \"m-steps\"\n}\nconst _hoisted_6 = { class: \"stepBackIcon\" }\nconst _hoisted_7 = [\"onClick\"]\nconst _hoisted_8 = {\n key: 1,\n class: \"m-steps white\"\n}\nconst _hoisted_9 = {\n key: 2,\n class: \"buttons\"\n}\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, null, -1))\n\nexport function render(_ctx, _cache) {\n const _component_HelpContent = _resolveComponent(\"HelpContent\")\n const _component_HelpScreen = _resolveComponent(\"HelpScreen\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n (_ctx.navSteps.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _createElementVNode(\"span\", _hoisted_6, [\n (_ctx.currentNavStepIndex() > 0 && _ctx.currentNavStepIndex() < _ctx.navSteps.length - 1)\n ? (_openBlock(), _createElementBlock(\"i\", {\n key: 0,\n class: \"fal fa-angle-left\",\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.navigateBack()))\n }))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"ul\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.navSteps, (s) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n onClick: _withModifiers($event => {_ctx.navigate(s);}, [\"prevent\",\"stop\"]),\n class: _normalizeClass(s.status)\n }, _toDisplayString(s.name), 11, _hoisted_7))\n }), 256))\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.navSteps.length === 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_8, _toDisplayString(_ctx.navbarText), 1))\n : _createCommentVNode(\"\", true),\n (_ctx.showHelpBtn)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_9, [\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: _cache[1] || (_cache[1] = $event => (_ctx.goToFAQ()))\n }, \"FAQs\"),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: _cache[2] || (_cache[2] = $event => (_ctx.contactUs()))\n }, \"Contact Us\"),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: _cache[3] || (_cache[3] = $event => (_ctx.showHelpScreen = !_ctx.showHelpScreen))\n }, \"Help\")\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ]),\n (_ctx.showHelpScreen)\n ? (_openBlock(), _createBlock(_component_HelpScreen, {\n key: 0,\n onClose: _cache[5] || (_cache[5] = $event => (_ctx.showHelpScreen = false))\n }, {\n header: _withCtx(() => [\n _hoisted_10\n ]),\n body: _withCtx(() => [\n _createVNode(_component_HelpContent, {\n helpContentData: _ctx.helpContentData,\n \"onUpdate:helpContentData\": _cache[4] || (_cache[4] = $event => ((_ctx.helpContentData) = $event))\n }, null, 8, [\"helpContentData\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]))\n}","export enum NavStepStatusID {\r\n Unknown = 'unknown',\r\n NotDone = 'not-done',\r\n Done = 'done',\r\n Current = 'current',\r\n}\r\nexport class NavStep {\r\n constructor(\r\n public name: string = '',\r\n public routeSecName: string = '',\r\n public visible: boolean = true,\r\n public status: NavStepStatus = NavStepStatusID.NotDone,\r\n ) {\r\n }\r\n}\r\n\r\nexport type NavStepStatus = NavStepStatusID.Unknown | NavStepStatusID.NotDone |\r\n NavStepStatusID.Done | NavStepStatusID.Current;\r\nexport interface StepperName {\r\n details: string;\r\n review: string;\r\n payment: string;\r\n prepayment: string;\r\n confirmation: string;\r\n update: string;\r\n add: string;\r\n}\r\n\r\nexport const Step: StepperName = {\r\n details: 'Details',\r\n review: 'Review',\r\n payment: 'Payment',\r\n prepayment: 'Payment',\r\n confirmation: 'Confirmation',\r\n update: 'Update eContract Information',\r\n add: 'New eContract Information',\r\n\r\n}\r\n\r\nexport interface SectionName {\r\n details: string;\r\n review: string;\r\n payment: string;\r\n prepayment: string;\r\n confirmation: string;\r\n update: string;\r\n add: string;\r\n}\r\n\r\nexport const Section: SectionName = {\r\n details: 'details',\r\n review: 'review',\r\n payment: 'payment',\r\n prepayment: 'prepayment',\r\n confirmation: 'confirmation',\r\n update: 'update',\r\n add: 'add',\r\n}\r\n","import { Options, Vue } from 'vue-class-component';\r\nimport { NavStep, NavStepStatusID } from './nav-step';\r\nimport HelpScreen from '@/shared/components/help-screen/index.vue';\r\nimport UserDefine from '@/assets/config/user-define.json';\r\nimport HelpContent from '@/dcsExternal/components/help-content/index.vue';\r\nimport HelpContentData from '@/assets/config/help-content-data.json';\r\nimport { RouteN } from \"@/shared/constants/route-name\";\r\n\r\n@Options({\r\n props: {\r\n navSteps: Array,\r\n navbarText: String,\r\n showHelpBtn: Boolean,\r\n },\r\n components: {\r\n HelpScreen,\r\n HelpContent,\r\n }\r\n})\r\nexport default class HeaderStepper extends Vue {\r\n private showHelpScreen = false;\r\n navSteps!: NavStep[]\r\n navbarText!: string;\r\n showHelpBtn!: boolean;\r\n\r\n get section(): string {\r\n return this.$route.query.sec as string;\r\n }\r\n\r\n get helpContentData(): unknown {\r\n const _section: string = this.$route.query.sec as string;\r\n const _type = this.$route.query.type as string;\r\n const _routeName = this.$route.name as string;\r\n let _helpContentData: any = [{}];\r\n\r\n if (_routeName === RouteN.DCSE.TopUp.n) {\r\n switch (_section) {\r\n case \"prepayment\":\r\n _helpContentData = HelpContentData.topup.payment;\r\n break;\r\n case \"confirmation\":\r\n _helpContentData = HelpContentData.topup.confirmation;\r\n break;\r\n }\r\n }\r\n\r\n if (_routeName === RouteN.DCSE.EditContract.n) {\r\n switch (_type) {\r\n case '1':\r\n switch (_section) {\r\n case \"details\":\r\n _helpContentData = HelpContentData.editLand.details;\r\n break;\r\n case \"confirmation\":\r\n _helpContentData = HelpContentData.editLand.confirmation;\r\n break;\r\n }\r\n break;\r\n case '2':\r\n switch (_section) {\r\n case \"details\":\r\n _helpContentData = HelpContentData.editBusiness.details;\r\n break;\r\n case \"confirmation\":\r\n _helpContentData = HelpContentData.editBusiness.confirmation;\r\n break;\r\n }\r\n break;\r\n }\r\n }\r\n\r\n if (_type === '1' && _routeName !== RouteN.DCSE.EditContract.n) {\r\n switch (_section) {\r\n case \"details\":\r\n _helpContentData = HelpContentData.land.details;\r\n break;\r\n case \"review\":\r\n _helpContentData = HelpContentData.land.review;\r\n break;\r\n case \"payment\":\r\n _helpContentData = HelpContentData.land.payment;\r\n break;\r\n case \"confirmation\":\r\n _helpContentData = HelpContentData.land.confirmation;\r\n break;\r\n }\r\n } else if (_type === '2' && _routeName !== RouteN.DCSE.EditContract.n) {\r\n switch (_section) {\r\n case \"details\":\r\n _helpContentData = HelpContentData.business.details;\r\n break;\r\n case \"review\":\r\n _helpContentData = HelpContentData.business.review;\r\n break;\r\n case \"payment\":\r\n _helpContentData = HelpContentData.business.payment;\r\n break;\r\n case \"confirmation\":\r\n _helpContentData = HelpContentData.business.confirmation;\r\n break;\r\n }\r\n } else if (_type === '3' && _routeName !== RouteN.DCSE.EditContract.n) {\r\n switch (_section) {\r\n case \"details\":\r\n _helpContentData = HelpContentData.other.details;\r\n break;\r\n case \"review\":\r\n _helpContentData = HelpContentData.other.review;\r\n break;\r\n case \"payment\":\r\n _helpContentData = HelpContentData.other.payment;\r\n break;\r\n case \"confirmation\":\r\n _helpContentData = HelpContentData.other.confirmation;\r\n break;\r\n }\r\n }\r\n\r\n return _helpContentData;\r\n }\r\n\r\n private navigate(s: NavStep): void {\r\n const _section: string = this.$route.query.sec as string;\r\n if (s.status === NavStepStatusID.Done && _section !== 'confirmation') {\r\n const temp: string = JSON.stringify(this.$route.query);\r\n const tempJSON = JSON.parse(temp);\r\n tempJSON.sec = s.routeSecName;\r\n this.$router.push({ query: tempJSON });\r\n }\r\n }\r\n\r\n private navigateBack() {\r\n const index = this.currentNavStepIndex();\r\n if (index > 0) {\r\n // console.log(this.navSteps[index - 1].routeSecName);\r\n this.navigate(this.navSteps[index - 1]);\r\n }\r\n }\r\n\r\n private currentNavStepIndex(): number {\r\n let index = -1;\r\n this.navSteps.filter((z) => z.visible).forEach((x, i) => {\r\n if (x.status === NavStepStatusID.Current) {\r\n index = i;\r\n }\r\n });\r\n return index;\r\n }\r\n\r\n private contactUs() {\r\n window.open(UserDefine[0].contact_us_url, 'blank');\r\n }\r\n\r\n private goToFAQ() {\r\n window.open(UserDefine[0].faq_url, 'blank');\r\n }\r\n\r\n}\r\n\r\n","import { render } from \"./header-stepper.html?vue&type=template&id=2a5a15af&scoped=true&ts=true\"\nimport script from \"./header-stepper.ts?vue&type=script&lang=ts\"\nexport * from \"./header-stepper.ts?vue&type=script&lang=ts\"\n\nimport \"./header-stepper.scss?vue&type=style&index=0&id=2a5a15af&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-2a5a15af\"]])\n\nexport default __exports__","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-62bf0c87\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"e-contract-confirmation\" }\nconst _hoisted_2 = { class: \"page-header\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"divider\" }, null, -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_5 = [\"innerHTML\"]\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\n\nexport function render(_ctx, _cache) {\n const _component_ConfirmationTable = _resolveComponent(\"ConfirmationTable\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, _toDisplayString(_ctx.pageHeader), 1),\n _hoisted_3,\n _hoisted_4,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"page-description\", { 'text-red' : _ctx.showIfErrorOccurredPostSuccessfulPayment }]),\n innerHTML: _ctx.pageBody\n }, null, 10, _hoisted_5),\n _hoisted_6,\n (_ctx.contracts && _ctx.contracts.length > 0)\n ? (_openBlock(), _createBlock(_component_ConfirmationTable, {\n key: 0,\n contracts: _ctx.contracts,\n \"onUpdate:contracts\": _cache[0] || (_cache[0] = $event => ((_ctx.contracts) = $event))\n }, null, 8, [\"contracts\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, createTextVNode as _createTextVNode, createVNode as _createVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6c8f09dc\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"confirmation-table\" }\nconst _hoisted_2 = { key: 1 }\nconst _hoisted_3 = { key: 0 }\nconst _hoisted_4 = { class: \"text\" }\nconst _hoisted_5 = { key: 1 }\nconst _hoisted_6 = { class: \"text\" }\nconst _hoisted_7 = { key: 2 }\nconst _hoisted_8 = { class: \"text\" }\nconst _hoisted_9 = { key: 0 }\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", { \"data-label\": \"Contract ID\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", null, \"...\")\n], -1))\nconst _hoisted_11 = { \"data-label\": \"Created\" }\nconst _hoisted_12 = { \"data-label\": \"Type\" }\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", { \"data-label\": \"Address\" }, \" Multiple contracts \", -1))\nconst _hoisted_14 = { \"data-label\": \"Reference ID\" }\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", { \"data-label\": \"Status\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-check-circle\" }),\n /*#__PURE__*/_createTextVNode(\" Paid\")\n ])\n], -1))\nconst _hoisted_16 = { class: \"col-action\" }\nconst _hoisted_17 = [\"onClick\"]\nconst _hoisted_18 = [\"onClick\"]\nconst _hoisted_19 = {\n key: 2,\n class: \"ml-2\"\n}\nconst _hoisted_20 = [\"onClick\"]\nconst _hoisted_21 = { \"data-label\": \"Contract ID\" }\nconst _hoisted_22 = { \"data-label\": \"Created\" }\nconst _hoisted_23 = { key: 0 }\nconst _hoisted_24 = { \"data-label\": \"Type\" }\nconst _hoisted_25 = { key: 0 }\nconst _hoisted_26 = {\n key: 0,\n \"data-label\": \"Address\",\n class: \"address\"\n}\nconst _hoisted_27 = [\"title\"]\nconst _hoisted_28 = {\n key: 1,\n \"data-label\": \"business Name\",\n class: \"address\"\n}\nconst _hoisted_29 = [\"title\"]\nconst _hoisted_30 = {\n \"data-label\": \"Reference ID\",\n class: \"reference\"\n}\nconst _hoisted_31 = { key: 0 }\nconst _hoisted_32 = { \"data-label\": \"Status\" }\nconst _hoisted_33 = { key: 0 }\nconst _hoisted_34 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-check-circle\" }, null, -1))\nconst _hoisted_35 = /*#__PURE__*/_createTextVNode(\" Paid\")\nconst _hoisted_36 = [\n _hoisted_34,\n _hoisted_35\n]\nconst _hoisted_37 = { class: \"col-action\" }\nconst _hoisted_38 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", null, null, -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_DropdownButton = _resolveComponent(\"DropdownButton\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingSpinner, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_ctx.purchaseHistory && _ctx.purchaseHistory.length > 0)\n ? (_openBlock(), _createElementBlock(\"table\", _hoisted_2, [\n (_ctx.purchaseHistory[0].contractCategoryId === 1)\n ? (_openBlock(), _createElementBlock(\"thead\", _hoisted_3, [\n _createElementVNode(\"tr\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.historyTableHeaderLand, (h, index) => {\n return (_openBlock(), _createElementBlock(\"th\", {\n scope: \"col\",\n class: _normalizeClass([ h.sortable ? 'sortable' : ''])\n }, [\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"span\", _hoisted_4, _toDisplayString(h.text), 1)\n ])\n ], 2))\n }), 256))\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.purchaseHistory[0].contractCategoryId === 2)\n ? (_openBlock(), _createElementBlock(\"thead\", _hoisted_5, [\n _createElementVNode(\"tr\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.historyTableHeaderBusiness, (h, index) => {\n return (_openBlock(), _createElementBlock(\"th\", {\n scope: \"col\",\n class: _normalizeClass([ h.sortable ? 'sortable' : ''])\n }, [\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"span\", _hoisted_6, _toDisplayString(h.text), 1)\n ])\n ], 2))\n }), 256))\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.purchaseHistory[0].contractCategoryId === 3)\n ? (_openBlock(), _createElementBlock(\"thead\", _hoisted_7, [\n _createElementVNode(\"tr\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.historyTableHeaderOther, (h, index) => {\n return (_openBlock(), _createElementBlock(\"th\", {\n scope: \"col\",\n class: _normalizeClass([ h.sortable ? 'sortable' : ''])\n }, [\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(h.text), 1)\n ])\n ], 2))\n }), 256))\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.purchaseHistory, (h, idx) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(h.purchaseHistoryDetails, (p, idx_p) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n (h.purchaseHistoryDetails.length > 1 && idx_p === 0)\n ? (_openBlock(), _createElementBlock(\"tr\", _hoisted_9, [\n _hoisted_10,\n _createElementVNode(\"td\", _hoisted_11, _toDisplayString(_ctx.createdOnText(h.createdOn)), 1),\n _createElementVNode(\"td\", _hoisted_12, _toDisplayString(h.type), 1),\n _hoisted_13,\n _createElementVNode(\"td\", _hoisted_14, _toDisplayString(h.referenceId), 1),\n _hoisted_15,\n _createElementVNode(\"td\", _hoisted_16, [\n (h.status === 'In Progress')\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"btn btn-default sml ml-2\",\n onClick: $event => (_ctx.deleteContract(h.contractOrderId))\n }, \"Delete\", 8, _hoisted_17))\n : _createCommentVNode(\"\", true),\n (h.status === 'In Progress')\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n class: \"btn btn-default sml ml-2\",\n onClick: $event => (_ctx.resumeContract(h))\n }, \"Resume\", 8, _hoisted_18))\n : _createCommentVNode(\"\", true),\n (h.status !== 'In Progress')\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_19, [\n _createVNode(_component_DropdownButton, {\n transaction: _ctx.purchaseHistory[idx],\n \"onUpdate:transaction\": $event => ((_ctx.purchaseHistory[idx]) = $event),\n fileTypes: _ctx.fileTypes,\n \"onUpdate:fileTypes\": _cache[0] || (_cache[0] = $event => ((_ctx.fileTypes) = $event)),\n contractCatId: _ctx.contractCatId,\n \"onUpdate:contractCatId\": _cache[1] || (_cache[1] = $event => ((_ctx.contractCatId) = $event)),\n menuType: _ctx.menuType2,\n \"onUpdate:menuType\": _cache[2] || (_cache[2] = $event => ((_ctx.menuType2) = $event)),\n onSelected: _ctx.selected\n }, null, 8, [\"transaction\", \"onUpdate:transaction\", \"fileTypes\", \"contractCatId\", \"menuType\", \"onSelected\"])\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"td\", null, [\n _createElementVNode(\"div\", {\n class: \"dropdown-arrow\",\n ref: 'arrow_' + h.transactionId,\n title: \"Toggle view\",\n onClick: $event => (_ctx.toggleHiddenRows('arrow_' + h.transactionId, h.transactionId))\n }, null, 8, _hoisted_20)\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"tr\", {\n ref: 'tr_' + p.uniqueContractId,\n class: _normalizeClass(h.purchaseHistoryDetails.length > 1 ? h.displayMode : '')\n }, [\n _createElementVNode(\"td\", _hoisted_21, [\n _createElementVNode(\"span\", null, _toDisplayString(p.uniqueContractId), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_22, [\n (h.purchaseHistoryDetails.length == 1)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_23, _toDisplayString(_ctx.createdOnText(h.createdOn)), 1))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"td\", _hoisted_24, [\n (h.purchaseHistoryDetails.length == 1)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_25, _toDisplayString(h.type), 1))\n : _createCommentVNode(\"\", true)\n ]),\n (h.contractCategoryId === 1)\n ? (_openBlock(), _createElementBlock(\"td\", _hoisted_26, [\n _createElementVNode(\"span\", {\n title: p.address\n }, _toDisplayString(p.address), 9, _hoisted_27)\n ]))\n : _createCommentVNode(\"\", true),\n (h.contractCategoryId === 2)\n ? (_openBlock(), _createElementBlock(\"td\", _hoisted_28, [\n _createElementVNode(\"span\", {\n title: p.businessName\n }, _toDisplayString(p.businessName), 9, _hoisted_29)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"td\", _hoisted_30, [\n (h.purchaseHistoryDetails.length < 2)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_31, _toDisplayString(h.referenceId), 1))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"td\", _hoisted_32, [\n (h.purchaseHistoryDetails.length == 1)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_33, _hoisted_36))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"td\", _hoisted_37, [\n _createVNode(_component_DropdownButton, {\n transaction: _ctx.purchaseHistory[idx],\n \"onUpdate:transaction\": $event => ((_ctx.purchaseHistory[idx]) = $event),\n fileTypes: _ctx.fileTypes,\n \"onUpdate:fileTypes\": _cache[3] || (_cache[3] = $event => ((_ctx.fileTypes) = $event)),\n menuType: _ctx.menuType1,\n \"onUpdate:menuType\": _cache[4] || (_cache[4] = $event => ((_ctx.menuType1) = $event)),\n contractCatId: _ctx.contractCatId,\n \"onUpdate:contractCatId\": _cache[5] || (_cache[5] = $event => ((_ctx.contractCatId) = $event)),\n uniqueContract: _ctx.purchaseHistory[idx].purchaseHistoryDetails[idx_p],\n \"onUpdate:uniqueContract\": $event => ((_ctx.purchaseHistory[idx].purchaseHistoryDetails[idx_p]) = $event),\n onSelected: _ctx.selected\n }, null, 8, [\"transaction\", \"onUpdate:transaction\", \"fileTypes\", \"menuType\", \"contractCatId\", \"uniqueContract\", \"onUpdate:uniqueContract\", \"onSelected\"])\n ]),\n _hoisted_38\n ], 2)\n ], 64))\n }), 256))\n ], 64))\n }), 256))\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { Inject, Options, Vue } from \"vue-property-decorator\";\r\nimport store from \"@/shared/store\";\r\nimport DropdownButton from \"@/shared/components/dropdown-button/index.vue\";\r\n\r\nimport { AppInsights } from \"@/dcsExternal/appInsights\";\r\nimport { DCSApi } from \"@/shared/modules/dcs-api\";\r\nimport { Utils } from \"@/shared/utils\";\r\nimport { EventEmitter } from \"events\";\r\nimport { Contract, ContractOrder, FileType, PurchaseHistory } from \"@/shared/modules/typescript-api-client/models\";\r\nimport moment from \"moment\";\r\nimport { SELF_URL } from \"@/shared/config/config\";\r\nimport LoadingSpinner from \"@/shared/components/loading-spinner/index.vue\";\r\nimport AlertBox from \"@/shared/components/alert-box/index.vue\";\r\nimport { RouteN } from \"@/shared/constants/route-name\";\r\nimport { Section } from \"@/shared/constants/section-name\";\r\nimport { NewContract } from \"@/shared/models/new-contract\";\r\nimport { orderBy } from \"lodash\";\r\nimport { ContractHistory } from \"../history-search/mock-data-model-historyList\";\r\n@Options({\r\n props: {\r\n contracts: Array,\r\n // contractList: []\r\n },\r\n components: {\r\n DropdownButton,\r\n LoadingSpinner,\r\n AlertBox,\r\n }\r\n})\r\nexport default class ConfirmationTable extends Vue {\r\n contracts!: ContractOrder[];\r\n\r\n private purchaseHistory: any[] = [];\r\n\r\n @Inject({ from: 'apiService', default: new DCSApi() })\r\n private apiService!: DCSApi;\r\n\r\n private ai = new AppInsights;\r\n\r\n private utils = new Utils;\r\n\r\n private isLoadingData = false;\r\n\r\n get eventCtrl(): EventEmitter {\r\n return store.getters.getEventController;\r\n }\r\n\r\n private localDebug = SELF_URL.indexOf('localhost') >= 0;\r\n private historyList: ContractHistory[] = [];\r\n\r\n private contractList: Contract[] = [];\r\n\r\n private selectedContractId = 0;\r\n private showDeleteAlert = false;\r\n private showWarningAlert = false;\r\n\r\n private searchClicked = false;\r\n private search = '';\r\n private skip = 0;\r\n private take = 5;\r\n private searchFieldType = 1;\r\n private totalCount = 0;\r\n\r\n private sortMethod = \"desc\";\r\n private activeSortHeader = 1;\r\n\r\n private fileTypes: FileType[] = [];\r\n private contractCatId = 0;\r\n\r\n private menuType1 = { text: 'Download', multiple: false };\r\n private menuType2 = { text: 'Download', multiple: true };\r\n\r\n private historyTableHeaderLand = [\r\n { text: 'Contract ID', value: 'contractId', sortable: false },\r\n { text: 'Created', value: 'created', sortable: false },\r\n { text: 'Type', value: 'type', sortable: false },\r\n { text: 'Address', value: 'address', sortable: false },\r\n { text: 'Reference ID', value: 'referenceId', sortable: false },\r\n { text: 'Status', value: 'status', sortable: false },\r\n { text: 'Action', value: '', sortable: false },\r\n { text: '', value: '', sortable: false },\r\n ]\r\n\r\n private historyTableHeaderBusiness = [\r\n { text: 'Contract ID', value: 'contractId', sortable: false },\r\n { text: 'Created', value: 'created', sortable: false },\r\n { text: 'Type', value: 'type', sortable: false },\r\n { text: 'Business name', value: 'address', sortable: false },\r\n { text: 'Reference ID', value: 'referenceId', sortable: false },\r\n { text: 'Status', value: 'status', sortable: false },\r\n { text: 'Action', value: '', sortable: false },\r\n { text: '', value: '', sortable: false },\r\n ]\r\n\r\n private historyTableHeaderOther = [\r\n { text: 'Contract ID', value: 'contractId', sortable: false },\r\n { text: 'Created', value: 'created', sortable: false },\r\n { text: 'Type', value: 'type', sortable: false },\r\n { text: 'Reference ID', value: 'referenceId', sortable: false },\r\n { text: 'Status', value: 'status', sortable: false },\r\n { text: 'Action', value: '', sortable: false },\r\n { text: '', value: '', sortable: false },\r\n ]\r\n\r\n private createdOnText(ISOdate: string) {\r\n return moment(ISOdate).format('DD/MM/YYYY h:mm A');\r\n }\r\n\r\n mounted(): void {\r\n this.getFileTypes();\r\n for (let i = 0; i < this.contracts.length; i++) {\r\n this.purchaseHistory.push(this.contracts[i]);\r\n }\r\n for (let i = 0; i < this.purchaseHistory.length; i++) {\r\n this.purchaseHistory[i].displayMode = this.purchaseHistory[i].purchaseHistoryDetails.length > 1 ? 'hidden' : 'show';\r\n }\r\n }\r\n\r\n private getFileTypes() {\r\n const _contractType = this.$route.query.type as string;\r\n const _ft = window.sessionStorage.getItem('ft') || '';\r\n this.contractCatId = parseInt(_contractType);\r\n if (_ft !== '') {\r\n this.fileTypes = JSON.parse(_ft);\r\n } else {\r\n this.apiService.CodeApi?.apiV1CodeGetFileTypesGet()\r\n .then((res) => {\r\n this.fileTypes = res.data.data;\r\n window.sessionStorage.setItem('ft', JSON.stringify(this.fileTypes));\r\n })\r\n .catch(err => {\r\n this.ai.trackException('Error getting file types: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting file types: ' + JSON.stringify(err));\r\n })\r\n }\r\n }\r\n\r\n private toggleHiddenRows(arrowRef: string, hId: string) {\r\n const arrow = this.$refs[arrowRef] as HTMLElement;\r\n\r\n if (arrow.className == 'dropdown-arrow open') {\r\n arrow.className = 'dropdown-arrow';\r\n this.setHidden(hId, true);\r\n } else {\r\n arrow.className = 'dropdown-arrow open';\r\n this.setHidden(hId, false);\r\n }\r\n }\r\n\r\n private setHidden(hId: string, hide: boolean) {\r\n const data: any = this.purchaseHistory;\r\n for (let i = 0; i < data.length; i++) {\r\n if (data[i].transactionId == hId) {\r\n data[i].displayMode = hide ? 'hidden' : 'show';\r\n }\r\n }\r\n\r\n this.purchaseHistory = data;\r\n return data;\r\n }\r\n\r\n private async selected(option: any) {\r\n this.isLoadingData = true;\r\n if (option.fileName) {\r\n let _type = '';\r\n if (option.fileName.indexOf('.pdf') > 0) {\r\n _type = \"application/pdf\";\r\n }\r\n if (option.fileName.indexOf('.docx') > 0) {\r\n _type = \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\";\r\n }\r\n this.apiService.ExternalApi?.apiV1ExternalGetFileFileIdGet(option.id)\r\n .then(res => {\r\n const blobString = res.data.data.fileBytes;\r\n const link = document.createElement(\"a\");\r\n link.href = URL.createObjectURL(this.dataURItoBlob(blobString, _type));\r\n link.download = option.fileName;\r\n link.click();\r\n URL.revokeObjectURL(link.href);\r\n this.isLoadingData = false;\r\n })\r\n .catch(err => {\r\n console.log(err);\r\n this.isLoadingData = false;\r\n this.ai.trackException('Error on file download: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on file download: ' + JSON.stringify(err));\r\n })\r\n }\r\n else {\r\n this.apiService.ExternalApi?.apiV1ExternalGetZippedFileTransactionIdGet(option.id)\r\n .then(res => {\r\n const blobString = res.data.data.fileBytes;\r\n const link = document.createElement(\"a\");\r\n link.href = URL.createObjectURL(this.dataURItoBlob(blobString, \"application/zip\"));\r\n link.download = res.data.data.name;\r\n link.click();\r\n URL.revokeObjectURL(link.href);\r\n this.isLoadingData = false;\r\n })\r\n .catch(err => {\r\n console.log(err)\r\n this.isLoadingData = false;\r\n this.ai.trackException('Error on file download: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on file download: ' + JSON.stringify(err));\r\n })\r\n }\r\n }\r\n\r\n private dataURItoBlob(dataURI: string, _type: string) {\r\n return this.utils.$dataURItoBlob(dataURI, _type);\r\n }\r\n\r\n private deleteContract(contractId: number) {\r\n this.selectedContractId = contractId;\r\n this.showDeleteAlert = true;\r\n }\r\n\r\n private deleteIt() {\r\n this.showDeleteAlert = false;\r\n this.apiService.ExternalApi?.apiV1ExternalDeleteContractOrderDelete(this.selectedContractId)\r\n .then(res => {\r\n console.log(res)\r\n this.skip = 0;\r\n this.take = 5;\r\n this.purchaseHistory = [];\r\n // this.getPurchaseHistory();\r\n })\r\n .catch(err => {\r\n this.isLoadingData = false;\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on deleting contract: ' + JSON.stringify(err));\r\n this.ai.trackException('Error on contract delete: ' + JSON.stringify(err));\r\n })\r\n }\r\n\r\n private resumeContract(c: PurchaseHistory) {\r\n this.initialiseContractData(c);\r\n this.$router.push({ name: RouteN.DCSE.eContract.n, query: { type: 1, cid: c.contractOrderId, sec: Section.Details } });\r\n\r\n }\r\n\r\n private initialiseContractData(c: PurchaseHistory) {\r\n // TODO - setup contract data\r\n const _newContract: NewContract = {\r\n unitPrice: 0,\r\n qty: 1,\r\n contractOrderDetailData: []\r\n }\r\n store.dispatch('setContractData', _newContract);\r\n\r\n }\r\n\r\n private isActiveContractType(h: PurchaseHistory): boolean {\r\n const _isActiveContractType = this.contractList.filter((c) => {\r\n return h.type === c.contractType && h.contractCategoryId === c.contractCategoryId;\r\n })\r\n return _isActiveContractType.length === 1;\r\n }\r\n\r\n private downloadNewSetOfContracts() {\r\n this.isLoadingData = true;\r\n this.apiService.ContractApi?.apiV1ContractGetContractsWithThumbnailGet()\r\n .then(res => {\r\n this.contractList = res.data.data as Contract[];\r\n this.contractList = orderBy(\r\n this.contractList,\r\n ['contractCategoryId', 'createdOn'],\r\n ['asc', 'desc']\r\n );\r\n window.sessionStorage.setItem('ts', res.data.timeStamp);\r\n window.sessionStorage.setItem('ac', JSON.stringify(this.contractList));\r\n this.isLoadingData = false;\r\n })\r\n .catch(err => {\r\n this.isLoadingData = false;\r\n this.ai.trackException('Error getting active contracts: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting active contracts: ' + err.response.status);\r\n })\r\n }\r\n\r\n\r\n}\r\n\r\n","import { render } from \"./confirmation-table.html?vue&type=template&id=6c8f09dc&scoped=true&ts=true\"\nimport script from \"./confirmation-table?vue&type=script&lang=ts\"\nexport * from \"./confirmation-table?vue&type=script&lang=ts\"\n\nimport \"./confirmation-table.scss?vue&type=style&index=0&id=6c8f09dc&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-6c8f09dc\"]])\n\nexport default __exports__","import { Inject, Options, Vue } from \"vue-property-decorator\";\r\nimport ContractWording from '@/assets/config/contract-wording.json';\r\nimport ConfirmationTable from \"../confirmation-table/index.vue\";\r\nimport { AppInsights } from \"@/dcsExternal/appInsights\";\r\nimport { DCSApi } from \"@/shared/modules/dcs-api\";\r\nimport { Utils } from \"@/shared/utils\";\r\nimport { Contract } from \"@/shared/modules/typescript-api-client/models\";\r\nimport { pullAll } from \"lodash\";\r\n\r\n@Options({\r\n props: {\r\n // incoming property values from the Parent component 'e-contract.ts'\r\n contractOrderId: Number,\r\n showIfErrorOccurredPostSuccessfulPayment: Boolean,\r\n errorMessagePostSuccessfulPayment: String,\r\n },\r\n components: {\r\n ConfirmationTable,\r\n }\r\n})\r\nexport default class EContractConfirmation extends Vue {\r\n contractOrderId!: number;\r\n showIfErrorOccurredPostSuccessfulPayment!: boolean\r\n errorMessagePostSuccessfulPayment!: string\r\n\r\n @Inject({ from: 'apiService', default: new DCSApi() })\r\n private apiService!: DCSApi;\r\n\r\n private ai = new AppInsights;\r\n\r\n private utils = new Utils;\r\n\r\n private isLoadingData = false;\r\n\r\n private contracts: Contract[] = [];\r\n\r\n private paymentErrorMsg = \"\";\r\n\r\n get pageHeader(): string {\r\n return ContractWording.confirmation['pageHeader'];\r\n }\r\n\r\n get pageBody(): string {\r\n return (this.showIfErrorOccurredPostSuccessfulPayment ? this.errorMessagePostSuccessfulPayment : ContractWording.confirmation['pageBody'])\r\n }\r\n\r\n private historyTableHeader = [\r\n { text: 'Contract ID', value: 'contractId', sortable: false },\r\n { text: 'Created', value: 'created', sortable: false },\r\n { text: 'Type', value: 'type', sortable: false },\r\n { text: 'Address', value: 'address', sortable: false },\r\n { text: 'Reference ID', value: 'referenceId', sortable: false },\r\n { text: 'Status', value: 'status', sortable: false },\r\n { text: 'Action', value: '', sortable: false },\r\n { text: '', value: '', sortable: false },\r\n ]\r\n\r\n mounted(): void {\r\n if (!this.showIfErrorOccurredPostSuccessfulPayment) {\r\n this.getThisTransaction();\r\n }\r\n }\r\n\r\n private getThisTransaction() {\r\n this.isLoadingData = true;\r\n this.apiService.ExternalApi?.apiV1ExternalGetContractOrderDetailContractOrderIdGet(this.contractOrderId)\r\n .then(res => {\r\n this.isLoadingData = false;\r\n this.contracts.push(res.data.data);\r\n })\r\n .catch(err => {\r\n this.isLoadingData = false;\r\n console.log(err);\r\n })\r\n }\r\n}\r\n\r\n","import { render } from \"./e-contract-confirmation.html?vue&type=template&id=62bf0c87&scoped=true&ts=true\"\nimport script from \"./e-contract-confirmation.ts?vue&type=script&lang=ts\"\nexport * from \"./e-contract-confirmation.ts?vue&type=script&lang=ts\"\n\nimport \"./e-contract-confirmation.scss?vue&type=style&index=0&id=62bf0c87&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-62bf0c87\"]])\n\nexport default __exports__","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, vModelText as _vModelText, withDirectives as _withDirectives, normalizeClass as _normalizeClass, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, Fragment as _Fragment, vModelRadio as _vModelRadio, renderList as _renderList, resolveDirective as _resolveDirective, createStaticVNode as _createStaticVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-cb60ff8a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"e-contract-details\" }\nconst _hoisted_2 = { class: \"page-header\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"divider\" }, null, -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Reference ID\", -1))\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_7 = { key: 0 }\nconst _hoisted_8 = /*#__PURE__*/_createTextVNode(\"Contract edition: \")\nconst _hoisted_9 = { style: {\"font-family\":\"'Open sans\"} }\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Enter business name *\", -1))\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"description-line\" }, \"Use Registered Business name, or a description of the business being sold\", -1))\nconst _hoisted_13 = {\n key: 0,\n class: \"validation-msg\"\n}\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_15 = /*#__PURE__*/_createTextVNode(\" Mandatory field \")\nconst _hoisted_16 = [\n _hoisted_14,\n _hoisted_15\n]\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Enter address of premises *\", -1))\nconst _hoisted_19 = {\n key: 1,\n class: \"validation-msg\"\n}\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_21 = /*#__PURE__*/_createTextVNode(\" Mandatory field \")\nconst _hoisted_22 = [\n _hoisted_20,\n _hoisted_21\n]\nconst _hoisted_23 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Select type *\", -1))\nconst _hoisted_24 = { class: \"contract-type-radio-group\" }\nconst _hoisted_25 = { class: \"radio\" }\nconst _hoisted_26 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, [\n /*#__PURE__*/_createElementVNode(\"strong\", null, \"Standard contract\"),\n /*#__PURE__*/_createTextVNode(\" (single property)\")\n ])\n], -1))\nconst _hoisted_27 = { class: \"radio\" }\nconst _hoisted_28 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, [\n /*#__PURE__*/_createElementVNode(\"strong\", null, \"Multiple contracts\"),\n /*#__PURE__*/_createTextVNode(\" (multiple, up to 20 properties) \")\n ])\n], -1))\nconst _hoisted_29 = { class: \"radio\" }\nconst _hoisted_30 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, [\n /*#__PURE__*/_createElementVNode(\"strong\", null, \"Master contract\"),\n /*#__PURE__*/_createTextVNode(\" (Off the Plan Development) \")\n ])\n], -1))\nconst _hoisted_31 = {\n key: 0,\n class: \"validation-msg mt-2\"\n}\nconst _hoisted_32 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_33 = /*#__PURE__*/_createTextVNode(\" Mandatory field \")\nconst _hoisted_34 = [\n _hoisted_32,\n _hoisted_33\n]\nconst _hoisted_35 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_36 = { key: 1 }\nconst _hoisted_37 = { key: 0 }\nconst _hoisted_38 = { key: 1 }\nconst _hoisted_39 = { key: 2 }\nconst _hoisted_40 = { key: 3 }\nconst _hoisted_41 = /*#__PURE__*/_createStaticVNode(\"
Up to 20 properties can be added by clicking the ‘Add property’ button.
The ‘Additional Information’ field can be used to add additional plan details and title references to be displayed below the property address.
The ‘Watermark on Clauses’ field will be the watermark that will be displayed across the contract.

Template
Enter details into the fields in the ‘Template’ section that will be copied to each Property, and can subsequently be altered in them.
\", 4)\nconst _hoisted_45 = { class: \"template\" }\nconst _hoisted_46 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"label\" }, \"Enter address\", -1))\nconst _hoisted_47 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"label\" }, [\n /*#__PURE__*/_createTextVNode(\"Additional information \"),\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"description-line\" }, \"Optional\")\n], -1))\nconst _hoisted_48 = { class: \"label\" }\nconst _hoisted_49 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"label\" }, \"Watermark on clauses\", -1))\nconst _hoisted_50 = { class: \"footnote\" }\nconst _hoisted_51 = { class: \"multiple-contracts\" }\nconst _hoisted_52 = {\n key: 0,\n style: 'line-height: 4em; border-top: 1px solid grey'\n}\nconst _hoisted_53 = /*#__PURE__*/_createTextVNode()\nconst _hoisted_54 = [\"onClick\"]\nconst _hoisted_55 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Enter address\", -1))\nconst _hoisted_56 = [\"onUpdate:modelValue\", \"onBlur\"]\nconst _hoisted_57 = {\n key: 1,\n class: \"validation-msg\"\n}\nconst _hoisted_58 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_59 = /*#__PURE__*/_createTextVNode(\" Mandatory field \")\nconst _hoisted_60 = [\n _hoisted_58,\n _hoisted_59\n]\nconst _hoisted_61 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_62 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Additional information\", -1))\nconst _hoisted_63 = [\"onUpdate:modelValue\"]\nconst _hoisted_64 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_65 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Watermark on clauses\", -1))\nconst _hoisted_66 = [\"onUpdate:modelValue\"]\nconst _hoisted_67 = {\n key: 2,\n class: \"validation-msg\"\n}\nconst _hoisted_68 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_69 = /*#__PURE__*/_createTextVNode(\" Mandatory field \")\nconst _hoisted_70 = [\n _hoisted_68,\n _hoisted_69\n]\nconst _hoisted_71 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_72 = {\n key: 3,\n class: \"short-input\"\n}\nconst _hoisted_73 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Please indicate how many properties/lots are included\", -1))\nconst _hoisted_74 = {\n key: 0,\n class: \"validation-msg\"\n}\nconst _hoisted_75 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle mt-2\" }, null, -1))\nconst _hoisted_76 = /*#__PURE__*/_createTextVNode(\" Enter value from 1 - 999 \")\nconst _hoisted_77 = [\n _hoisted_75,\n _hoisted_76\n]\nconst _hoisted_78 = { key: 4 }\nconst _hoisted_79 = [\"disabled\"]\nconst _hoisted_80 = /*#__PURE__*/_createTextVNode(\" Add property \")\nconst _hoisted_81 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-angle-right\" })\n], -1))\nconst _hoisted_82 = [\n _hoisted_80,\n _hoisted_81\n]\nconst _hoisted_83 = {\n key: 0,\n class: \"validation-msg\"\n}\nconst _hoisted_84 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle mt-2\" }, null, -1))\nconst _hoisted_85 = /*#__PURE__*/_createTextVNode(\" Maximum of 20 properties can be added \")\nconst _hoisted_86 = [\n _hoisted_84,\n _hoisted_85\n]\nconst _hoisted_87 = {\n key: 3,\n class: \"short-input\"\n}\nconst _hoisted_88 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Quantity: *\", -1))\nconst _hoisted_89 = {\n key: 0,\n class: \"validation-msg\"\n}\nconst _hoisted_90 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle mt-2\" }, null, -1))\nconst _hoisted_91 = /*#__PURE__*/_createTextVNode(\" Enter value from 1-100 \")\nconst _hoisted_92 = [\n _hoisted_90,\n _hoisted_91\n]\n\nexport function render(_ctx, _cache) {\n const _directive_maska = _resolveDirective(\"maska\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, _toDisplayString(_ctx.pageHeader), 1),\n _hoisted_3,\n _hoisted_4,\n _hoisted_5,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n maxlength: \"75\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.contract.referenceId) = $event)),\n onKeyup: _cache[1] || (_cache[1] = $event => (_ctx.mandatoryCheck()))\n }, null, 544), [\n [_vModelText, _ctx.contract.referenceId]\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"footnote\", [ _ctx.textCountRefId === 75 ? 'full' : '']])\n }, _toDisplayString(_ctx.textCountRefId) + \"/75 characters \", 3),\n _hoisted_6,\n (_ctx.contract.contractCategoryId === 1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _hoisted_8,\n _createElementVNode(\"span\", _hoisted_9, _toDisplayString(_ctx.contract.year), 1)\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_10,\n (_ctx.contract && _ctx.contract.contractCategoryId === 2 && _ctx.contractOrderDetailData.length > 0)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _hoisted_11,\n _hoisted_12,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n maxlength: \"75\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => ((_ctx.contractOrderDetailData[0].businessName) = $event)),\n onKeyup: _cache[3] || (_cache[3] = $event => (_ctx.mandatoryCheck()))\n }, null, 544), [\n [_vModelText, _ctx.contractOrderDetailData[0].businessName]\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"footnote\", [ _ctx.contractOrderDetailData[0].businessName.length === 75 ? 'full' : '']])\n }, _toDisplayString(_ctx.contractOrderDetailData[0].businessName.length) + \"/75 characters\", 3),\n (_ctx.contractOrderDetailData[0].businessName.trim() === '')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_13, _hoisted_16))\n : _createCommentVNode(\"\", true),\n _hoisted_17,\n _hoisted_18,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n maxlength: \"130\",\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => ((_ctx.contractOrderDetailData[0].address) = $event)),\n onKeyup: _cache[5] || (_cache[5] = $event => (_ctx.mandatoryCheck()))\n }, null, 544), [\n [_vModelText, _ctx.contractOrderDetailData[0].address]\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"footnote\", [ _ctx.contractOrderDetailData[0].address.length === 130 ? 'full' : '']])\n }, _toDisplayString(_ctx.contractOrderDetailData[0].address.length) + \"/130 characters\", 3),\n (_ctx.contractOrderDetailData[0].address.trim() === '')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_19, _hoisted_22))\n : _createCommentVNode(\"\", true)\n ], 64))\n : _createCommentVNode(\"\", true),\n (_ctx.contract && _ctx.contract.contractCategoryId === 1 && _ctx.contractOrderDetailData.length > 0)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 2 }, [\n _hoisted_23,\n _createElementVNode(\"div\", _hoisted_24, [\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"label\", _hoisted_25, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = $event => ((_ctx.contract.orderType) = $event)),\n name: \"order-type\",\n id: \"orderType_1\",\n onChange: _cache[7] || (_cache[7] = (...args) => (_ctx.mandatoryCheck && _ctx.mandatoryCheck(...args))),\n value: 1\n }, null, 544), [\n [_vModelRadio, _ctx.contract.orderType]\n ]),\n _hoisted_26\n ])\n ]),\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"label\", _hoisted_27, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = $event => ((_ctx.contract.orderType) = $event)),\n name: \"order-type\",\n id: \"orderType_2\",\n onChange: _cache[9] || (_cache[9] = (...args) => (_ctx.mandatoryCheck && _ctx.mandatoryCheck(...args))),\n value: 2\n }, null, 544), [\n [_vModelRadio, _ctx.contract.orderType]\n ]),\n _hoisted_28\n ])\n ]),\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"label\", _hoisted_29, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n \"onUpdate:modelValue\": _cache[10] || (_cache[10] = $event => ((_ctx.contract.orderType) = $event)),\n name: \"order-type\",\n id: \"orderType_3\",\n onChange: _cache[11] || (_cache[11] = (...args) => (_ctx.mandatoryCheck && _ctx.mandatoryCheck(...args))),\n value: 3\n }, null, 544), [\n [_vModelRadio, _ctx.contract.orderType]\n ]),\n _hoisted_30\n ])\n ])\n ]),\n (_ctx.contract.orderType === 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_31, _hoisted_34))\n : _createCommentVNode(\"\", true),\n _hoisted_35,\n (_ctx.contract.orderType !== 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_36, [\n (_ctx.contract.orderType === 1)\n ? (_openBlock(), _createElementBlock(\"h3\", _hoisted_37, \"Standard contract\"))\n : _createCommentVNode(\"\", true),\n (_ctx.contract.orderType === 2)\n ? (_openBlock(), _createElementBlock(\"h3\", _hoisted_38, \"Multiple contracts\"))\n : _createCommentVNode(\"\", true),\n (_ctx.contract.orderType === 3)\n ? (_openBlock(), _createElementBlock(\"h3\", _hoisted_39, \"Master Contract for Off The Plan Development\"))\n : _createCommentVNode(\"\", true),\n (_ctx.contract.orderType === 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_40, [\n _hoisted_41,\n _createElementVNode(\"div\", _hoisted_45, [\n _createElementVNode(\"div\", null, [\n _hoisted_46,\n _createElementVNode(\"div\", null, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n maxlength: \"75\",\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = $event => ((_ctx.contract.templateAddress) = $event)),\n onKeyup: _cache[13] || (_cache[13] = $event => (_ctx.mandatoryCheck())),\n onBlur: _cache[14] || (_cache[14] = $event => (_ctx.contract.templateWatermark === '' ? _ctx.contract.templateWatermark = _ctx.contract.templateAddress : _ctx.contract.templateWatermark))\n }, null, 544), [\n [_vModelText, _ctx.contract.templateAddress]\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"footnote\", [ _ctx.contract.templateAddress.length === 75 ? 'full' : '']])\n }, _toDisplayString(_ctx.contract.templateAddress.length) + \"/75 characters\", 3)\n ])\n ]),\n _createElementVNode(\"div\", null, [\n _hoisted_47,\n _createElementVNode(\"div\", _hoisted_48, [\n _withDirectives(_createElementVNode(\"textarea\", {\n class: \"additional-info\",\n maxlength: \"170\",\n \"onUpdate:modelValue\": _cache[15] || (_cache[15] = $event => ((_ctx.contract.templateAdditionalInfo) = $event)),\n onKeyup: _cache[16] || (_cache[16] = $event => (_ctx.mandatoryCheck()))\n }, null, 544), [\n [_vModelText, _ctx.contract.templateAdditionalInfo]\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"footnote\", [ _ctx.contract.templateAdditionalInfo.length === 170 ? 'full' : '']])\n }, _toDisplayString(_ctx.contract.templateAdditionalInfo.length) + \"/170 characters\", 3)\n ])\n ]),\n _createElementVNode(\"div\", null, [\n _hoisted_49,\n _createElementVNode(\"div\", null, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n maxlength: \"130\",\n \"onUpdate:modelValue\": _cache[17] || (_cache[17] = $event => ((_ctx.contract.templateWatermark) = $event)),\n onKeyup: _cache[18] || (_cache[18] = $event => (_ctx.mandatoryCheck()))\n }, null, 544), [\n [_vModelText, _ctx.contract.templateWatermark]\n ]),\n _createElementVNode(\"div\", _hoisted_50, _toDisplayString(_ctx.contract.templateWatermark.length) + \"/130 characters\", 1)\n ])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.contractOrderDetailData, (d, idx) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_51, [\n (_ctx.contract.orderType === 1 || _ctx.added || _ctx.contract.orderType === 3 )\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n (_ctx.contract.orderType === 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_52, [\n _createElementVNode(\"span\", null, \"Property \" + _toDisplayString(idx + 1), 1),\n _hoisted_53,\n (_ctx.contractOrderDetailData.length > 1)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"btn btn-default sml ml-4\",\n onClick: $event => (_ctx.deleteProperty(idx))\n }, \"Delete\", 8, _hoisted_54))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_55,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n maxlength: \"75\",\n \"onUpdate:modelValue\": $event => ((d.address) = $event),\n onKeyup: _cache[19] || (_cache[19] = $event => (_ctx.mandatoryCheck())),\n onBlur: $event => (d.watermark === '' ? d.watermark = d.address : d.watermark)\n }, null, 40, _hoisted_56), [\n [_vModelText, d.address]\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"footnote\", [ d.address.length === 75 ? 'full' : '']])\n }, _toDisplayString(d.address.length) + \"/75 characters\", 3),\n (d.address.trim() === '')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_57, _hoisted_60))\n : _createCommentVNode(\"\", true),\n _hoisted_61,\n _hoisted_62,\n _withDirectives(_createElementVNode(\"textarea\", {\n class: \"additional-info\",\n maxlength: \"170\",\n \"onUpdate:modelValue\": $event => ((d.additionalInfo) = $event),\n onKeyup: _cache[20] || (_cache[20] = $event => (_ctx.mandatoryCheck()))\n }, null, 40, _hoisted_63), [\n [_vModelText, d.additionalInfo]\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"footnote\", [ d.additionalInfo.length === 170 ? 'full' : '']])\n }, _toDisplayString(d.additionalInfo.length) + \"/170 characters\", 3),\n _hoisted_64,\n _hoisted_65,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n maxlength: \"130\",\n \"onUpdate:modelValue\": $event => ((d.watermark) = $event),\n onKeyup: _cache[21] || (_cache[21] = $event => (_ctx.mandatoryCheck()))\n }, null, 40, _hoisted_66), [\n [_vModelText, d.watermark]\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"footnote\", [ d.watermark.length === 130 ? 'full' : '']])\n }, _toDisplayString(d.watermark.length) + \"/130 characters\", 3),\n (d.watermark.trim() === '')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_67, _hoisted_70))\n : _createCommentVNode(\"\", true),\n _hoisted_71,\n (_ctx.contract.orderType === 3)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_72, [\n _hoisted_73,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n maxlength: \"3\",\n \"onUpdate:modelValue\": _cache[22] || (_cache[22] = $event => ((_ctx.contract.qty) = $event)),\n onKeyup: _cache[23] || (_cache[23] = $event => (_ctx.mandatoryCheck()))\n }, null, 544), [\n [_directive_maska, '###'],\n [_vModelText, _ctx.contract.qty]\n ]),\n (_ctx.contract.qty < 1 || _ctx.contract.qty > 999)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_74, _hoisted_77))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ], 64))\n : _createCommentVNode(\"\", true)\n ]))\n }), 256)),\n (_ctx.contract.orderType === 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_78, [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary mt-2\",\n onClick: _cache[24] || (_cache[24] = $event => (_ctx.addProperty())),\n disabled: _ctx.contractOrderDetailData.length > 19\n }, _hoisted_82, 8, _hoisted_79),\n (_ctx.contractOrderDetailData.length > 19)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_83, _hoisted_86))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ], 64))\n : _createCommentVNode(\"\", true),\n (_ctx.contract && _ctx.contract.contractCategoryId === 3)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_87, [\n _hoisted_88,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n maxlength: \"3\",\n \"onUpdate:modelValue\": _cache[25] || (_cache[25] = $event => ((_ctx.contract.qty) = $event)),\n onKeyup: _cache[26] || (_cache[26] = $event => (_ctx.mandatoryCheck()))\n }, null, 544), [\n [_directive_maska, '###'],\n [_vModelText, _ctx.contract.qty]\n ]),\n (_ctx.contract.qty < 1 || _ctx.contract.qty > 100)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_89, _hoisted_92))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { Options, Vue, Watch } from \"vue-property-decorator\";\r\nimport store from \"@/shared/store\";\r\nimport { EventEmitter } from \"events\";\r\nimport { NewContract, OrderType } from \"@/shared/models/new-contract\";\r\nimport ContractWording from '@/assets/config/contract-wording.json';\r\nimport { ContractOrderDetailData } from \"@/shared/modules/typescript-api-client/models\";\r\nimport { maska } from \"maska\";\r\n\r\n@Options({\r\n props: {\r\n contract: {}\r\n },\r\n directives: { maska },\r\n emits: ['update:contract'],\r\n components: {}\r\n})\r\nexport default class EContractDetails extends Vue {\r\n contract!: NewContract;\r\n\r\n private contractOrderDetailData: ContractOrderDetailData[] = [];\r\n private canSubmit = false;\r\n // private contractType = '';\r\n\r\n private textCountRefId = 0;\r\n private added = false;\r\n private validReferenceId = true;\r\n private isFirstLoaded = true;\r\n\r\n get eventCtrl(): EventEmitter {\r\n return store.getters.getEventController;\r\n }\r\n\r\n get pageHeader(): string {\r\n return ContractWording.details['pageHeader']\r\n }\r\n\r\n get pageBody(): string {\r\n return ContractWording.details['pageBody']\r\n }\r\n\r\n @Watch('contract.orderType')\r\n private onValueChange(): void {\r\n // init\r\n this.contract.contractSubCategoryId = this.contract.contractCategoryId == 1 ? this.contract.orderType : null;\r\n this.contract.templateAddress = '';\r\n this.contract.templateAdditionalInfo = '';\r\n this.contract.templateWatermark = '';\r\n this.contractOrderDetailData = this.contract.contractOrderDetailData || [];\r\n let _qty = NaN;\r\n const _editMode = this.contract.id > 0;\r\n\r\n if (_editMode && this.isFirstLoaded) {\r\n //edit contract\r\n if (this.contract.contractCategoryId === 1) {\r\n if (this.contract.orderType === 1) {\r\n _qty = this.contractOrderDetailData.length;\r\n }\r\n if (this.contract.orderType === 2) {\r\n _qty = this.contractOrderDetailData.length;\r\n }\r\n if (this.contract.orderType === 3) {\r\n _qty = this.contractOrderDetailData[0].numOfContract;\r\n }\r\n }\r\n if (this.contract.contractCategoryId === 2) {\r\n _qty = 1;\r\n }\r\n if (this.contract.contractCategoryId == 3) {\r\n _qty = this.contractOrderDetailData[0].numOfContract;\r\n }\r\n this.isFirstLoaded = false;\r\n } else {\r\n // new contract\r\n _qty = this.contract.contractCategoryId === 2 ? 1 : this.contract.orderType === 1 ? 1 : NaN;\r\n this.contractOrderDetailData = [{\r\n address: '',\r\n additionalInfo: '',\r\n watermark: '',\r\n businessName: '',\r\n numOfContract: 1,\r\n }];\r\n }\r\n\r\n this.contract.qty = _qty;\r\n this.added = false;\r\n }\r\n\r\n mounted(): void {\r\n window.scrollTo(0, 0);\r\n this.$nextTick(() => {\r\n this.contractOrderDetailData = this.contract.contractOrderDetailData || [];\r\n this.added = this.contract.contractSubCategoryId > 0;\r\n this.mandatoryCheck();\r\n });\r\n }\r\n\r\n // private validString(str?: string): boolean {\r\n // if (str) {\r\n // return !(/[^a-z0-9]/gi.test(str));\r\n // }\r\n // return true;\r\n // }\r\n\r\n private mandatoryCheck() {\r\n // this.validReferenceId = this.validString(this.contract.referenceId);\r\n this.textCountRefId = this.contract.referenceId ? this.contract.referenceId.length : 0;\r\n\r\n const _orderType = this.contract.orderType !== OrderType.UNKNOWN;\r\n let _qty = this.contract.qty > 0 && this.contract.qty < 1000;\r\n\r\n const _business = this.contract.contractCategoryId === 2 ? this.contract.contractOrderDetailData[0].businessName !== '' : false;\r\n let _address = this.contract.contractCategoryId !== 3 ? this.contract.contractOrderDetailData[0].address !== '' : false;\r\n let _watermark = true;\r\n\r\n switch (this.contract.contractCategoryId) {\r\n case 1: // Land\r\n this.contract.contractOrderDetailData = this.contractOrderDetailData;\r\n _qty = this.contract.qty > 0 && this.contract.qty < 1000;\r\n for (let i = 0; i < this.contractOrderDetailData.length; i++) {\r\n if (this.contractOrderDetailData[i].address && this.contractOrderDetailData[i].address.trim() === '') {\r\n _address = false;\r\n }\r\n if (this.contractOrderDetailData[i].watermark && this.contractOrderDetailData[i].watermark.trim() === '') {\r\n _watermark = false;\r\n }\r\n }\r\n this.canSubmit = _orderType && _address && _watermark && _qty;\r\n break;\r\n case 2: // business\r\n this.canSubmit = _business && _address;\r\n break;\r\n case 3: // other contract types\r\n this.canSubmit = _qty;\r\n break;\r\n default:\r\n break;\r\n\r\n }\r\n this.eventCtrl.emit('canSubmit', this.canSubmit);\r\n }\r\n\r\n private addProperty() {\r\n if (!this.added) {\r\n this.contractOrderDetailData[0] = {\r\n address: this.contract.templateAddress,\r\n additionalInfo: this.contract.templateAdditionalInfo,\r\n watermark: this.contract.templateWatermark,\r\n businessName: '',\r\n numOfContract: 1\r\n }\r\n this.contract.qty = 1;\r\n this.added = true;\r\n } else {\r\n if (this.contractOrderDetailData.length < 20) {\r\n this.contractOrderDetailData.push({\r\n address: this.contract.templateAddress,\r\n additionalInfo: this.contract.templateAdditionalInfo,\r\n watermark: this.contract.templateWatermark,\r\n businessName: '',\r\n numOfContract: 1\r\n });\r\n }\r\n this.contract.qty = this.contractOrderDetailData.length;\r\n }\r\n this.mandatoryCheck();\r\n\r\n }\r\n\r\n private deleteProperty(idx: number) {\r\n this.contractOrderDetailData.splice(idx, 1);\r\n this.contract.qty = this.contractOrderDetailData.length;\r\n this.mandatoryCheck();\r\n }\r\n\r\n}\r\n\r\n","import { render } from \"./e-contract-details.html?vue&type=template&id=cb60ff8a&scoped=true&ts=true\"\nimport script from \"./e-contract-details.ts?vue&type=script&lang=ts\"\nexport * from \"./e-contract-details.ts?vue&type=script&lang=ts\"\n\nimport \"./e-contract-details.scss?vue&type=style&index=0&id=cb60ff8a&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-cb60ff8a\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createElementBlock as _createElementBlock, vModelRadio as _vModelRadio, withDirectives as _withDirectives, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6f21ed33\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"e-contract-payment\" }\nconst _hoisted_2 = { class: \"page-header\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"divider\" }, null, -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_5 = {\n key: 1,\n class: \"cost-table\"\n}\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"thead\", null, [\n /*#__PURE__*/_createElementVNode(\"tr\", null, [\n /*#__PURE__*/_createElementVNode(\"th\", null, \"Type\"),\n /*#__PURE__*/_createElementVNode(\"th\", { class: \"center\" }, \"Quantity\"),\n /*#__PURE__*/_createElementVNode(\"th\", { class: \"center\" }, \"Price per contract\"),\n /*#__PURE__*/_createElementVNode(\"th\", { class: \"center\" }, \"Amount payable\")\n ])\n], -1))\nconst _hoisted_7 = { class: \"center\" }\nconst _hoisted_8 = { class: \"center\" }\nconst _hoisted_9 = { class: \"amount\" }\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Please select your payment method\", -1))\nconst _hoisted_12 = { style: {\"display\":\"flex\"} }\nconst _hoisted_13 = {\n style: {\"float\":\"left\"},\n class: \"mr-4\"\n}\nconst _hoisted_14 = { class: \"radio\" }\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Credit card\")\n], -1))\nconst _hoisted_16 = { style: {\"float\":\"left\"} }\nconst _hoisted_17 = { class: \"radio\" }\nconst _hoisted_18 = [\"disabled\"]\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Prepayment\")\n], -1))\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_21 = { class: \"field\" }\nconst _hoisted_22 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"fieldname\" }, \"Balance prior to this transaction\", -1))\nconst _hoisted_23 = { class: \"fielddata align-right\" }\nconst _hoisted_24 = { class: \"field\" }\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"fieldname\" }, \"This transaction\", -1))\nconst _hoisted_26 = { class: \"fielddata align-right\" }\nconst _hoisted_27 = { class: \"field\" }\nconst _hoisted_28 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"fieldname\" }, \"Balance after this transaction\", -1))\nconst _hoisted_29 = {\n key: 0,\n class: \"fielddata align-right\"\n}\nconst _hoisted_30 = {\n key: 1,\n class: \"fielddata align-right\"\n}\nconst _hoisted_31 = { key: 0 }\nconst _hoisted_32 = { class: \"field\" }\nconst _hoisted_33 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"fieldname\" }, \"Amount payable remaining\", -1))\nconst _hoisted_34 = {\n key: 0,\n class: \"fielddata align-right\"\n}\nconst _hoisted_35 = {\n key: 1,\n class: \"fielddata align-right\"\n}\n\nexport function render(_ctx, _cache) {\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_CreditCardPayment = _resolveComponent(\"CreditCardPayment\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingSpinner, { key: 0 }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_2, _toDisplayString(_ctx.pageHeader), 1),\n _hoisted_3,\n _hoisted_4,\n (_ctx.contractOrderDetailData.length > 0)\n ? (_openBlock(), _createElementBlock(\"table\", _hoisted_5, [\n _hoisted_6,\n _createElementVNode(\"tbody\", null, [\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"td\", null, _toDisplayString(_ctx.contract.contractType), 1),\n _createElementVNode(\"td\", _hoisted_7, _toDisplayString(_ctx.contract.qty), 1),\n _createElementVNode(\"td\", _hoisted_8, _toDisplayString(_ctx.toCurrency(_ctx.contract.unitPrice)), 1),\n _createElementVNode(\"td\", _hoisted_9, _toDisplayString(_ctx.toCurrency(_ctx.contract.qty * _ctx.contract.unitPrice)), 1)\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_10,\n _hoisted_11,\n _createElementVNode(\"div\", _hoisted_12, [\n _createElementVNode(\"div\", _hoisted_13, [\n _createElementVNode(\"label\", _hoisted_14, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.paymentType) = $event)),\n name: \"payment-type\",\n id: \"paymentType_1\",\n onChange: _cache[1] || (_cache[1] = (...args) => (_ctx.mandatoryCheck && _ctx.mandatoryCheck(...args))),\n value: '1'\n }, null, 544), [\n [_vModelRadio, _ctx.paymentType]\n ]),\n _hoisted_15\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_16, [\n _createElementVNode(\"label\", _hoisted_17, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => ((_ctx.paymentType) = $event)),\n disabled: _ctx.currentBalance <= 0 ,\n name: \"payment-type\",\n id: \"paymentType_2\",\n onChange: _cache[3] || (_cache[3] = (...args) => (_ctx.mandatoryCheck && _ctx.mandatoryCheck(...args))),\n value: '2'\n }, null, 40, _hoisted_18), [\n [_vModelRadio, _ctx.paymentType]\n ]),\n _hoisted_19\n ])\n ])\n ]),\n _hoisted_20,\n (_ctx.paymentType === '1')\n ? (_openBlock(), _createBlock(_component_CreditCardPayment, {\n key: 2,\n paymentAmount: _ctx.paymentAmount,\n \"onUpdate:paymentAmount\": _cache[4] || (_cache[4] = $event => ((_ctx.paymentAmount) = $event)),\n paymentToken: _ctx.paymentToken,\n \"onUpdate:paymentToken\": _cache[5] || (_cache[5] = $event => ((_ctx.paymentToken) = $event)),\n onValidCCForm: _ctx.onValidStatusChanged\n }, null, 8, [\"paymentAmount\", \"paymentToken\", \"onValidCCForm\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.paymentType === '2')\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 3 }, [\n _createElementVNode(\"div\", _hoisted_21, [\n _hoisted_22,\n _createElementVNode(\"span\", _hoisted_23, _toDisplayString(_ctx.toCurrency(_ctx.currentBalance)), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_24, [\n _hoisted_25,\n _createElementVNode(\"span\", _hoisted_26, _toDisplayString(_ctx.toCurrency(_ctx.contract.qty * _ctx.contract.unitPrice)), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_27, [\n _hoisted_28,\n (_ctx.currentBalance - (_ctx.contract.qty * _ctx.contract.unitPrice) < 0)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_29, \"$0.00\"))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_30, _toDisplayString(_ctx.toCurrency(_ctx.currentBalance - (_ctx.contract.qty * _ctx.contract.unitPrice))), 1))\n ]),\n true\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_31, [\n _createElementVNode(\"div\", _hoisted_32, [\n _hoisted_33,\n (_ctx.currentBalance - (_ctx.contract.qty * _ctx.contract.unitPrice) >= 0)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_34, \"$0.00\"))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_35, _toDisplayString(_ctx.toCurrency((_ctx.contract.qty * _ctx.contract.unitPrice) - _ctx.currentBalance )), 1))\n ]),\n (_ctx.currentBalance - (_ctx.contract.qty * _ctx.contract.unitPrice) < 0)\n ? (_openBlock(), _createBlock(_component_CreditCardPayment, {\n key: 0,\n paymentAmount: _ctx.paymentAmount,\n \"onUpdate:paymentAmount\": _cache[6] || (_cache[6] = $event => ((_ctx.paymentAmount) = $event)),\n paymentToken: _ctx.contract.singleUseTokenId,\n \"onUpdate:paymentToken\": _cache[7] || (_cache[7] = $event => ((_ctx.contract.singleUseTokenId) = $event)),\n onValidCCForm: _ctx.onValidStatusChanged\n }, null, 8, [\"paymentAmount\", \"paymentToken\", \"onValidCCForm\"]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ], 64))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, vShow as _vShow, createElementVNode as _createElementVNode, withDirectives as _withDirectives, withModifiers as _withModifiers, Fragment as _Fragment, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-9698ab6e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"credit-card-payment\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"fa fa-spinner fa-pulse fa-4x fa-fw\",\n style: {\"margin-top\":\"1em\"}\n}\nconst _hoisted_3 = [\"id\"]\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"error\" }, \"Credit Card payment is not available\", -1))\nconst _hoisted_5 = { key: 2 }\nconst _hoisted_6 = /*#__PURE__*/_createTextVNode(\" DEBUG: -- Test data \")\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"pre\", null, \" Card Number:\\t4564 7100 0000 0004\\r\\n Security Code:\\t847\\r\\n Name on Card:\\tToken Tutorial\\r\\n Expiry Date:\\t02 / 29\\r\\n \", -1))\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.loadingLibStatus == -1 || (_ctx.loadingLibStatus == 1 && _ctx.createPayWayFrameStatus == -1))\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_2))\n : _createCommentVNode(\"\", true),\n _withDirectives(_createElementVNode(\"div\", {\n id: _ctx.paywayFrameGuid,\n class: \"payway-div\"\n }, null, 8, _hoisted_3), [\n [_vShow, _ctx.loadingLibStatus == 1 && _ctx.createPayWayFrameStatus == 1]\n ]),\n (_ctx.loadingLibStatus == 0 || (_ctx.loadingLibStatus == 1 && _ctx.createPayWayFrameStatus == 0))\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _hoisted_4,\n _createElementVNode(\"small\", {\n style: {\"cursor\":\"pointer\"},\n onClick: _cache[0] || (_cache[0] = _withModifiers($event => (_ctx.reloadPaymentForm()), [\"stop\"]))\n }, \"Click Here to reload\")\n ], 64))\n : _createCommentVNode(\"\", true),\n (_ctx.localDebug)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _hoisted_6,\n _hoisted_7,\n _createTextVNode(\" \" + _toDisplayString(_ctx.paymentToken), 1)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}","export const paywayStyle = {\r\n 'body': {\r\n // 'padding': '1em 0',\r\n // 'font-size': '16px',\r\n },\r\n '.payway-card': {\r\n // background: 'none',\r\n // border: 'none',\r\n // 'border-radius': '5px',\r\n margin: '0 0',\r\n // padding: '0 0',\r\n },\r\n 'label, legend' : {\r\n // 'position': 'absolute',\r\n // 'font-weight': 'bold !important',\r\n },\r\n 'input, select': {\r\n // height: '40px',\r\n // 'border-bottom': '2px solid grey !important',\r\n },\r\n 'input:focus, select:focus': {\r\n // 'outline': '2px solid rgba(240,100,35,0.8) !important',\r\n // 'box-shadow': '0 0 0 4px rgba(240,100,35,0.8) !important',\r\n 'z-index' : '100'\r\n },\r\n '#cardholderName' : {\r\n // 'width': '80vw !important',\r\n // 'height': '40px !important',\r\n // 'border-bottom': '2px solid grey',\r\n // 'line-height': 'normal',\r\n },\r\n 'label.payway-creditcard-expirationseparator': {\r\n // display: 'none',\r\n // 'line-height': '50px'\r\n },\r\n\r\n}\r\n","\r\nimport { Options, Vue } from \"vue-property-decorator\";\r\nimport { paywayStyle } from \"@/shared/components/credit-card-payment/payway-style\";\r\nimport { PUBLISHABLE_API_KEY, SELF_URL } from \"@/shared/config/config\";\r\nimport store from \"@/shared/store\";\r\nimport { EventEmitter } from \"events\";\r\nimport { Utils } from \"@/shared/utils\";\r\nimport { AppInsights } from \"@/dcsExternal/appInsights\";\r\n\r\ndeclare let payway: any;\r\n\r\n@Options({\r\n props: {\r\n paymentToken: String,\r\n },\r\n emits: ['update:paymentAmount', 'update:paymentToken'],\r\n components: {}\r\n})\r\nexport default class CreditCardPayment extends Vue {\r\n paymentToken!: string;\r\n\r\n private ai = new AppInsights;\r\n\r\n public paywayEl: HTMLElement | null = null;\r\n public paywayFrameGuid: string = new Utils().$guid();\r\n\r\n // For PayWay Lib Checking\r\n public numberOfRetry = 2;\r\n public timeout = 10;\r\n public numberOfTried = 0;\r\n public startTime = Math.round(new Date().getTime() / 1000);\r\n public endTime = this.startTime + this.timeout;\r\n public loadingLibStatus = -1;\r\n public paymentDeclined = false;\r\n\r\n public createFrameRetry = 5;\r\n public createFrameNumberOfTried = 0;\r\n public createPayWayFrameStatus = -1;\r\n\r\n public creditCardFrame: any = null;\r\n\r\n get eventCtrl(): EventEmitter {\r\n return store.getters.getEventController;\r\n }\r\n\r\n private localDebug = false;\r\n \r\n created() {\r\n this.localDebug = SELF_URL.indexOf('localhost') >= 0;\r\n setTimeout(() => {\r\n this.loadPayWayLib();\r\n this.checkPayWayLib();\r\n }, 500);\r\n\r\n }\r\n\r\n mounted(): void {\r\n this.eventCtrl.on('process-payment-application', this.requestToProcessPayment);\r\n }\r\n\r\n beforeUnmount() {\r\n this.eventCtrl.removeListener('process-payment-application', this.requestToProcessPayment);\r\n }\r\n\r\n private loadPayWayLib() {\r\n this.paywayEl = document.createElement('script');\r\n this.paywayEl.setAttribute('src', 'https://api.payway.com.au/rest/v1/payway.js');\r\n document.head.appendChild(this.paywayEl);\r\n // console.log('PayWayLib loaded')\r\n }\r\n\r\n public isPayWayLibReady(): boolean {\r\n try {\r\n // console.log('PayWayLib Ready -- ', typeof payway.createCreditCardFrame);\r\n return typeof payway.createCreditCardFrame === 'function';\r\n } catch (err) {\r\n console.log('PayWayLib is not ready!!! ', err);\r\n return false;\r\n }\r\n }\r\n\r\n private checkPayWayLib() {\r\n if (!this.isPayWayLibReady() && this.numberOfTried < this.numberOfRetry) {\r\n\r\n if (Math.round(new Date().getTime() / 1000) > this.endTime) {\r\n this.numberOfTried++;\r\n this.startTime = Math.round(new Date().getTime() / 1000);\r\n this.endTime = this.startTime + this.timeout;\r\n this.removePayWayLib();\r\n setTimeout(() => {\r\n this.loadPayWayLib();\r\n this.checkPayWayLib();\r\n }, 500);\r\n\r\n } else if (this.numberOfTried < this.numberOfRetry) {\r\n setTimeout(this.checkPayWayLib, 500);\r\n }\r\n } else if (this.numberOfTried >= this.numberOfRetry) {\r\n this.loadingLibStatus = 0;\r\n this.numberOfTried = 0;\r\n this.startTime = 0;\r\n this.endTime = 0;\r\n } else if (this.isPayWayLibReady()) {\r\n this.loadingLibStatus = 1;\r\n this.createPayWayFrame();\r\n }\r\n }\r\n\r\n\r\n public removePayWayLib(): void {\r\n console.log('removing PayWayLib ...');\r\n try {\r\n document.body.removeChild(this.paywayEl as HTMLElement);\r\n } catch (err) {\r\n console.log(err);\r\n }\r\n try {\r\n this.paywayEl = null;\r\n } catch (err) {\r\n console.log(err);\r\n }\r\n try {\r\n payway = null;\r\n } catch (err) {\r\n console.log(err);\r\n }\r\n }\r\n\r\n\r\n public createPayWayFrame(): void {\r\n const myStyle = paywayStyle;\r\n const options = {\r\n // TODO: Replace {publishableApiKey} with your key\r\n publishableApiKey: PUBLISHABLE_API_KEY,\r\n tokenMode: 'callback',\r\n container: this.paywayFrameGuid,\r\n onValid: () => {\r\n this.$emit('validCCForm', true);\r\n this.paymentDeclined = false;\r\n },\r\n onInvalid: () => {\r\n this.$emit('validCCForm', false);\r\n this.paymentDeclined = false;\r\n },\r\n style: myStyle,\r\n };\r\n\r\n const createdCallback = (err: any, frame: any) => {\r\n if (err && this.createFrameNumberOfTried < this.createFrameRetry) {\r\n this.createFrameNumberOfTried++;\r\n this.removePayWayFrame();\r\n this.createPayWayFrame();\r\n } else if (err && this.createFrameNumberOfTried >= this.createFrameRetry) {\r\n this.createPayWayFrameStatus = 0;\r\n this.createFrameNumberOfTried = 0;\r\n } else {\r\n // Save the created frame for when we get the token\r\n this.creditCardFrame = frame;\r\n this.createPayWayFrameStatus = 1;\r\n this.$nextTick(() => {\r\n const elm: HTMLElement = document.getElementById(this.paywayFrameGuid) as HTMLElement;\r\n try {\r\n (elm.childNodes[0] as HTMLElement).setAttribute('width', '100%');\r\n (elm.childNodes[0] as HTMLElement).setAttribute('height', '315px');\r\n } catch (err) {\r\n console.log(err);\r\n }\r\n });\r\n }\r\n };\r\n\r\n payway.createCreditCardFrame(options, createdCallback);\r\n }\r\n\r\n public removePayWayFrame(): void {\r\n try {\r\n this.creditCardFrame.destroy();\r\n } catch (err) {\r\n console.log(err);\r\n }\r\n\r\n try {\r\n this.creditCardFrame = null;\r\n } catch (err) {\r\n console.log(err);\r\n }\r\n }\r\n\r\n public reloadPaymentForm(): void {\r\n this.removePayWayLib();\r\n this.removePayWayFrame();\r\n\r\n this.loadingLibStatus = -1;\r\n this.createPayWayFrameStatus = -1;\r\n\r\n this.startTime = Math.round(new Date().getTime() / 1000);\r\n this.endTime = this.startTime + this.timeout;\r\n\r\n this.loadPayWayLib();\r\n this.checkPayWayLib();\r\n }\r\n\r\n public requestToProcessPayment(cb: (token: string) => Promise = null as any): void {\r\n // console.log('requestToProcessPayment .............')\r\n this.paymentDeclined = false;\r\n const tokenCallback = (err: any, data: any) => {\r\n if (err) {\r\n this.paymentDeclined = true;\r\n } else if (data.singleUseTokenId) {\r\n this.$emit('update:paymentToken', data.singleUseTokenId);\r\n\r\n // complete the payment in cb - applyPayment()\r\n if (typeof cb === 'function') {\r\n console.log('cb: ', cb)\r\n cb(data.singleUseTokenId)\r\n .then((res) => {\r\n // console.log('call back res: ', res);\r\n if (res === 3 || res === 5) {\r\n this.paymentDeclined = true;\r\n }\r\n }).catch((error) => {\r\n this.paymentDeclined = true;\r\n // console.log('Error in callback function: ', error);\r\n this.ai.trackException('Error submit payment: ' + JSON.stringify(error));\r\n });\r\n }\r\n }\r\n };\r\n\r\n this.creditCardFrame.getToken(tokenCallback);\r\n }\r\n\r\n private mandatoryCheck() {\r\n const _canSubmit = true;\r\n this.eventCtrl.emit('canSubmit', _canSubmit);\r\n }\r\n\r\n}\r\n\r\n","import { render } from \"./credit-card-payment.html?vue&type=template&id=9698ab6e&scoped=true&ts=true\"\nimport script from \"./credit-card-payment.ts?vue&type=script&lang=ts\"\nexport * from \"./credit-card-payment.ts?vue&type=script&lang=ts\"\n\nimport \"./credit-card-payment.scss?vue&type=style&index=0&id=9698ab6e&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-9698ab6e\"]])\n\nexport default __exports__","import { Inject, Options, Vue } from \"vue-property-decorator\";\r\nimport store from \"@/shared/store\";\r\nimport { EventEmitter } from \"events\";\r\nimport CreditCardPayment from \"@/shared/components/credit-card-payment/index.vue\";\r\nimport { NewContract } from \"@/shared/models/new-contract\";\r\nimport { ContractOrderDetailData } from \"@/shared/modules/typescript-api-client/models\";\r\nimport { AuthorizedUser } from \"@/shared/models/authorized-user\";\r\nimport { Utils } from \"@/shared/utils\";\r\nimport { AppInsights } from \"@/dcsExternal/appInsights\";\r\nimport { DCSApi } from \"@/shared/modules/dcs-api\";\r\nimport ContractWording from '@/assets/config/contract-wording.json';\r\nimport LoadingSpinner from \"@/shared/components/loading-spinner/index.vue\";\r\n\r\n@Options({\r\n props: {\r\n contract: {},\r\n cardPayment: Boolean,\r\n },\r\n emits: ['update:contract', 'update:cardPayment'],\r\n components: {\r\n CreditCardPayment,\r\n LoadingSpinner,\r\n }\r\n})\r\nexport default class EContractPayment extends Vue {\r\n @Inject({ from: 'apiService', default: new DCSApi() })\r\n private apiService!: DCSApi;\r\n\r\n private ai = new AppInsights;\r\n\r\n private utils = new Utils;\r\n\r\n contract!: NewContract;\r\n cardPayment!: boolean;\r\n\r\n private contractOrderDetailData: ContractOrderDetailData[] = [];\r\n\r\n private canSubmit = false;\r\n private paymentType = '';\r\n\r\n private currentBalance = 0;\r\n private paymentAmount = 0;\r\n private paymentToken = '';\r\n private validCard = false;\r\n\r\n get eventCtrl(): EventEmitter {\r\n return store.getters.getEventController;\r\n }\r\n\r\n get pageHeader(): string {\r\n return ContractWording.payment['pageHeader']\r\n }\r\n\r\n get pageBody(): string {\r\n return ContractWording.payment['pageBody']\r\n }\r\n\r\n private isLoadingData = false;\r\n\r\n async mounted(): Promise {\r\n window.scrollTo(0, 0);\r\n await this.getUserBalance();\r\n this.isLoadingData = true;\r\n this.$nextTick(() => {\r\n this.validCard = false;\r\n this.contractOrderDetailData = this.contract.contractOrderDetailData;\r\n this.contract.qty = this.contract.contractOrderDetailData.length > 1 ? this.contract.contractOrderDetailData.length : this.contract.qty / 1;\r\n this.mandatoryCheck();\r\n this.isLoadingData = false;\r\n });\r\n }\r\n\r\n private mandatoryCheck() {\r\n this.canSubmit = false;\r\n if (this.paymentType == '2') {\r\n this.canSubmit = (this.currentBalance - (this.contract.qty * this.contract.unitPrice) >= 0);\r\n this.contract.amountReceived = this.canSubmit ? this.contract.qty * this.contract.unitPrice : this.contract.qty * this.contract.unitPrice - this.currentBalance;\r\n this.$emit('update:cardPayment', (this.contract.qty * this.contract.unitPrice) > this.currentBalance);\r\n } else {\r\n this.contract.amountReceived = this.contract.qty * this.contract.unitPrice;\r\n this.$emit('update:cardPayment', true);\r\n }\r\n this.eventCtrl.emit('canSubmit', this.canSubmit);\r\n }\r\n\r\n private onValidStatusChanged(status: boolean) {\r\n console.log('CC Valid status changed:', status);\r\n this.validCard = status;\r\n this.eventCtrl.emit('canSubmit', status);\r\n }\r\n\r\n get userAccount(): AuthorizedUser {\r\n return store.getters.getUserAccount;\r\n }\r\n\r\n private async getUserBalance(): Promise {\r\n await this.apiService.ExternalApi?.apiV1ExternalGetUserBalanceGet()\r\n .then(res => {\r\n this.currentBalance = res.data.data as number;\r\n if (this.currentBalance > 0) {\r\n this.paymentType = '2';\r\n } else {\r\n this.paymentType = '1';\r\n }\r\n })\r\n .catch(err => {\r\n this.ai.trackException('Error getting user balance: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting user balance: ' + err.response.status);\r\n })\r\n }\r\n\r\n private toCurrency(value: any) {\r\n const utils = new Utils();\r\n return utils.$toCurrency(value);\r\n }\r\n\r\n}\r\n\r\n","import { render } from \"./e-contract-payment.html?vue&type=template&id=6f21ed33&scoped=true&ts=true\"\nimport script from \"./e-contract-payment.ts?vue&type=script&lang=ts\"\nexport * from \"./e-contract-payment.ts?vue&type=script&lang=ts\"\n\nimport \"./e-contract-payment.scss?vue&type=style&index=0&id=6f21ed33&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-6f21ed33\"]])\n\nexport default __exports__","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, vModelCheckbox as _vModelCheckbox, withDirectives as _withDirectives, createTextVNode as _createTextVNode, createStaticVNode as _createStaticVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-664ee6ad\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"e-contract-review\" }\nconst _hoisted_2 = { class: \"page-header\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"divider\" }, null, -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Contract details for the following business\", -1))\nconst _hoisted_5 = { class: \"field\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"fieldname\" }, \"Reference ID\", -1))\nconst _hoisted_7 = { class: \"fielddata\" }\nconst _hoisted_8 = { class: \"field\" }\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"fieldname\" }, \"Business name\", -1))\nconst _hoisted_10 = { class: \"fielddata\" }\nconst _hoisted_11 = { class: \"field\" }\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"fieldname\" }, \"Address\", -1))\nconst _hoisted_13 = { class: \"fielddata\" }\nconst _hoisted_14 = { class: \"field\" }\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"fieldname\" }, \"Watermark on clauses\", -1))\nconst _hoisted_16 = { class: \"fielddata\" }\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h1\", null, \"Contract details for the following land\", -1))\nconst _hoisted_18 = { class: \"field\" }\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"fieldname\" }, \"Reference\", -1))\nconst _hoisted_20 = { class: \"fielddata\" }\nconst _hoisted_21 = { class: \"field\" }\nconst _hoisted_22 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"fieldname\" }, \"Contract type\", -1))\nconst _hoisted_23 = { class: \"fielddata\" }\nconst _hoisted_24 = { class: \"field\" }\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"fieldname\" }, \"Contract edition\", -1))\nconst _hoisted_26 = { class: \"fielddata\" }\nconst _hoisted_27 = {\n key: 0,\n class: \"field multiple\"\n}\nconst _hoisted_28 = { class: \"fieldname\" }\nconst _hoisted_29 = { class: \"field\" }\nconst _hoisted_30 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"fieldname\" }, \"Address\", -1))\nconst _hoisted_31 = { class: \"fielddata\" }\nconst _hoisted_32 = { class: \"field\" }\nconst _hoisted_33 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"fieldname\" }, \"Information\", -1))\nconst _hoisted_34 = { class: \"fielddata\" }\nconst _hoisted_35 = { class: \"field\" }\nconst _hoisted_36 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"fieldname\" }, \"Watermark on clauses\", -1))\nconst _hoisted_37 = { class: \"fielddata\" }\nconst _hoisted_38 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_39 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_40 = { class: \"field\" }\nconst _hoisted_41 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"fieldname\" }, \"Reference ID\", -1))\nconst _hoisted_42 = { class: \"fielddata\" }\nconst _hoisted_43 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_44 = {\n key: 3,\n style: {\"border-bottom\":\"1px solid var(--ls-slate-light)\"}\n}\nconst _hoisted_45 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Contract cost\", -1))\nconst _hoisted_46 = { class: \"cost-table\" }\nconst _hoisted_47 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"thead\", null, [\n /*#__PURE__*/_createElementVNode(\"tr\", null, [\n /*#__PURE__*/_createElementVNode(\"th\", null, \"Type\"),\n /*#__PURE__*/_createElementVNode(\"th\", { class: \"center\" }, \"Quantity\"),\n /*#__PURE__*/_createElementVNode(\"th\", { class: \"center\" }, \"Price per contract\"),\n /*#__PURE__*/_createElementVNode(\"th\", { class: \"center\" }, \"Amount payable\")\n ])\n], -1))\nconst _hoisted_48 = { class: \"center\" }\nconst _hoisted_49 = { class: \"center\" }\nconst _hoisted_50 = { class: \"amount\" }\nconst _hoisted_51 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Terms and conditions\", -1))\nconst _hoisted_52 = { class: \"checkbox-button\" }\nconst _hoisted_53 = [\"checked\"]\nconst _hoisted_54 = /*#__PURE__*/_createStaticVNode(\"
By purchasing the product(s) above, I agree to the DCS Product Terms applicable to my product(s).
\", 1)\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, _toDisplayString(_ctx.pageHeader), 1),\n _hoisted_3,\n (_ctx.contract.contractCategoryId === 2 && _ctx.contractOrderDetailData.length > 0)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _hoisted_4,\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _createElementVNode(\"span\", _hoisted_7, _toDisplayString(_ctx.contract.referenceId), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_8, [\n _hoisted_9,\n _createElementVNode(\"span\", _hoisted_10, _toDisplayString(_ctx.contractOrderDetailData[0].businessName), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_11, [\n _hoisted_12,\n _createElementVNode(\"span\", _hoisted_13, _toDisplayString(_ctx.contractOrderDetailData[0].address), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_14, [\n _hoisted_15,\n _createElementVNode(\"span\", _hoisted_16, _toDisplayString(_ctx.contractOrderDetailData[0].businessName) + \", \" + _toDisplayString(_ctx.contractOrderDetailData[0].address), 1)\n ])\n ], 64))\n : _createCommentVNode(\"\", true),\n (_ctx.contract.contractCategoryId === 1)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _hoisted_17,\n _createElementVNode(\"div\", _hoisted_18, [\n _hoisted_19,\n _createElementVNode(\"span\", _hoisted_20, _toDisplayString(_ctx.contract.referenceId), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_21, [\n _hoisted_22,\n _createElementVNode(\"span\", _hoisted_23, _toDisplayString(_ctx.contract.contractType), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_24, [\n _hoisted_25,\n _createElementVNode(\"span\", _hoisted_26, _toDisplayString(_ctx.contract.year), 1)\n ]),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.contractOrderDetailData, (c, idx) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n (_ctx.contractOrderDetailData.length > 1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_27, [\n _createElementVNode(\"span\", _hoisted_28, [\n _createElementVNode(\"h3\", null, \"Property \" + _toDisplayString(idx + 1), 1)\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_29, [\n _hoisted_30,\n _createElementVNode(\"span\", _hoisted_31, _toDisplayString(_ctx.contractOrderDetailData[idx].address), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_32, [\n _hoisted_33,\n _createElementVNode(\"span\", _hoisted_34, _toDisplayString(_ctx.contractOrderDetailData[idx].additionalInfo), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_35, [\n _hoisted_36,\n _createElementVNode(\"span\", _hoisted_37, _toDisplayString(_ctx.contractOrderDetailData[idx].watermark), 1)\n ])\n ]))\n }), 256))\n ], 64))\n : _createCommentVNode(\"\", true),\n (_ctx.contract.contractCategoryId === 3)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 2 }, [\n _hoisted_38,\n _hoisted_39,\n _createElementVNode(\"div\", _hoisted_40, [\n _hoisted_41,\n _createElementVNode(\"span\", _hoisted_42, _toDisplayString(_ctx.contract.referenceId), 1)\n ]),\n _hoisted_43\n ], 64))\n : _createCommentVNode(\"\", true),\n (_ctx.contract.contractCategoryId !== 3)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_44))\n : _createCommentVNode(\"\", true),\n _hoisted_45,\n _createElementVNode(\"table\", _hoisted_46, [\n _hoisted_47,\n _createElementVNode(\"tbody\", null, [\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"td\", null, _toDisplayString(_ctx.contract.contractType), 1),\n _createElementVNode(\"td\", _hoisted_48, _toDisplayString(_ctx.contract.qty), 1),\n _createElementVNode(\"td\", _hoisted_49, _toDisplayString(_ctx.toCurrency(_ctx.contract.unitPrice)), 1),\n _createElementVNode(\"td\", _hoisted_50, _toDisplayString(_ctx.toCurrency(_ctx.contract.qty * _ctx.contract.unitPrice)), 1)\n ])\n ])\n ]),\n _hoisted_51,\n _createElementVNode(\"label\", _hoisted_52, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n id: \"declare\",\n checked: _ctx.canSubmit,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.contract.acceptTermsAndConditions) = $event)),\n onChange: _cache[1] || (_cache[1] = $event => {_ctx.toggleCheckbox(_ctx.canSubmit);})\n }, null, 40, _hoisted_53), [\n [_vModelCheckbox, _ctx.contract.acceptTermsAndConditions]\n ]),\n _hoisted_54\n ])\n ]))\n}","import { Options, Vue } from \"vue-property-decorator\";\r\nimport store from \"@/shared/store\";\r\nimport { EventEmitter } from \"events\";\r\nimport { NewContract } from \"@/shared/models/new-contract\";\r\nimport { AuthorizedUser } from \"@/shared/models/authorized-user\";\r\nimport ContractWording from '@/assets/config/contract-wording.json';\r\nimport { ContractOrderDetailData } from \"@/shared/modules/typescript-api-client/models\";\r\nimport { Utils } from \"@/shared/utils\";\r\n@Options({\r\n props: {\r\n contract: {}\r\n },\r\n emits: ['update:contract'],\r\n components: {}\r\n})\r\nexport default class EContractReview extends Vue {\r\n contract!: NewContract;\r\n\r\n private contractOrderDetailData: ContractOrderDetailData[] = [];\r\n\r\n get pageHeader(): string {\r\n return ContractWording.review['pageHeader']\r\n }\r\n\r\n get pageBody(): string {\r\n return ContractWording.review['pageBody']\r\n }\r\n\r\n private fee = this.userAccount.user.isMember ? this.contract.feeMember : this.contract.feeNonMember;\r\n\r\n private canSubmit = false;\r\n\r\n get eventCtrl(): EventEmitter {\r\n return store.getters.getEventController;\r\n }\r\n\r\n mounted(): void {\r\n window.scrollTo(0, 0);\r\n this.contract.acceptTermsAndConditions = false;\r\n this.eventCtrl.emit('canSubmit', this.canSubmit)\r\n this.$nextTick(() => {\r\n this.contract.acceptTermsAndConditions = false;\r\n this.contractOrderDetailData = this.contract.contractOrderDetailData;\r\n this.contract.qty = this.contract.contractOrderDetailData.length > 1 ? this.contract.contractOrderDetailData.length : this.contract.qty / 1;\r\n });\r\n }\r\n\r\n private toggleCheckbox(c: boolean) {\r\n this.canSubmit = !c;\r\n this.eventCtrl.emit('canSubmit', this.canSubmit);\r\n }\r\n\r\n get userAccount(): AuthorizedUser {\r\n return store.getters.getUserAccount;\r\n }\r\n\r\n private toCurrency(value: any) {\r\n const utils = new Utils();\r\n return utils.$toCurrency(value);\r\n }\r\n\r\n}\r\n\r\n","import { render } from \"./e-contract-review.html?vue&type=template&id=664ee6ad&scoped=true&ts=true\"\nimport script from \"./e-contract-review.ts?vue&type=script&lang=ts\"\nexport * from \"./e-contract-review.ts?vue&type=script&lang=ts\"\n\nimport \"./e-contract-review.scss?vue&type=style&index=0&id=664ee6ad&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-664ee6ad\"]])\n\nexport default __exports__","import { Inject, Options, Vue } from \"vue-property-decorator\";\r\nimport HeaderStepper from \"@/shared/components/header-stepper/index.vue\";\r\nimport LoadingSpinner from \"@/shared/components/loading-spinner/index.vue\";\r\nimport { RouteN } from \"@/shared/constants/route-name\";\r\nimport { NavStep, NavStepStatusID, Section, Step } from \"@/shared/components/header-stepper/nav-step\";\r\nimport store from \"@/shared/store\";\r\nimport { EventEmitter } from \"events\";\r\nimport EContractConfirmation from \"../e-contract-confirmation/index.vue\";\r\nimport EContractDetails from \"../e-contract-details/index.vue\";\r\nimport EContractPayment from \"../e-contract-payment/index.vue\";\r\nimport EContractReview from \"../e-contract-review/index.vue\";\r\nimport { AppInsights } from \"@/dcsExternal/appInsights\";\r\nimport { DCSApi } from \"@/shared/modules/dcs-api\";\r\nimport { Utils } from \"@/shared/utils\";\r\nimport { SELF_URL } from \"@/shared/config/config\";\r\nimport { ContractOrder } from \"@/shared/modules/typescript-api-client/models\";\r\nimport { NewContract } from \"@/shared/models/new-contract\";\r\n\r\n\r\n@Options({\r\n components: {\r\n LoadingSpinner,\r\n HeaderStepper,\r\n EContractDetails,\r\n EContractReview,\r\n EContractPayment,\r\n EContractConfirmation,\r\n },\r\n beforeRouteLeave(to: any, from: any, next: any) {\r\n const _stored = window.sessionStorage.getItem('contractData');\r\n if (to.name === RouteN.DCSE.Home.n && _stored !== null) {\r\n this.backButton();\r\n next(false);\r\n } else {\r\n next();\r\n }\r\n }\r\n\r\n})\r\nexport default class EContract extends Vue {\r\n @Inject({ from: 'apiService', default: new DCSApi() })\r\n private apiService!: DCSApi;\r\n\r\n private ai = new AppInsights;\r\n\r\n private utils = new Utils;\r\n\r\n get eventCtrl(): EventEmitter {\r\n return store.getters.getEventController;\r\n }\r\n\r\n private navSteps = [\r\n new NavStep(Step.details, Section.details),\r\n new NavStep(Step.review, Section.review),\r\n new NavStep(Step.payment, Section.payment),\r\n new NavStep(Step.confirmation, Section.confirmation),\r\n ];\r\n\r\n private isLoadingData = true;\r\n private isUpdating = false;\r\n private canSubmit = false;\r\n private allowSaveExit = true;\r\n private backButtonText = '';\r\n private nextButtonText = '';\r\n private backButtonVisible = true;\r\n\r\n private currentBalance = 0;\r\n private cardPayment = false;\r\n\r\n private contractData: NewContract = {\r\n unitPrice: 0,\r\n contractOrderDetailData: [],\r\n qty: 1\r\n };\r\n private contractType = '';\r\n\r\n private localDebug = false;\r\n\r\n private contractOrderId = 0;\r\n\r\n private showIfErrorOccurredPostSuccessfulPayment = false;\r\n private errorMessagePostSuccessfulPayment = '';\r\n\r\n created(): void {\r\n this.localDebug = SELF_URL.indexOf('localhost') >= 0;\r\n const _section: string = this.$route.query.sec as string;\r\n // const _cid: string = this.$route.query.cid as string;\r\n if (_section == 'confirmation') {\r\n this.$router.push({ name: RouteN.DCSE.Home.n });\r\n }\r\n if (_section == 'details') {\r\n // set the section steps ....\r\n window.sessionStorage.setItem('details', '0');\r\n }\r\n\r\n this.nextButtonText = 'Next to review';\r\n\r\n this.eventCtrl.on('canSubmit', (val) => {\r\n // console.log('received emit canSubmit: ', val);\r\n if (val) {\r\n this.canSubmit = true;\r\n } else {\r\n this.canSubmit = false;\r\n }\r\n });\r\n }\r\n\r\n beforeUnmount(): void {\r\n this.eventCtrl.removeListener('canSubmit', () => { this.canSubmit = false });\r\n }\r\n\r\n mounted(): void {\r\n window.scrollTo(0, 0);\r\n this.getUserBalance();\r\n // const _section: string = this.$route.query.sec as string;\r\n const _cid: string = this.$route.query.cid as string;\r\n // check if contract is in progress\r\n const _contract = window.sessionStorage.getItem('contractData');\r\n this.contractData = _contract == null ? null : JSON.parse(_contract);\r\n if (this.contractData == null) {\r\n this.$router.push({ name: RouteN.DCSE.Home.n });\r\n } else {\r\n this.setCurrentStep();\r\n if (_cid === '0') {\r\n this.isUpdating = false;\r\n this.contractType = this.contractData.type || '';\r\n } else {\r\n this.isUpdating = true;\r\n this.contractType = this.contractData.type || '';\r\n }\r\n }\r\n this.isLoadingData = false;\r\n }\r\n\r\n private setCurrentStep(): string {\r\n const _section: string = this.$route.query.sec as string;\r\n this.backButtonText = 'Back';\r\n switch (_section) {\r\n case Section.details:\r\n this.setSteps(0);\r\n this.backButtonVisible = true;\r\n if (this.contractData.contractId !== parseInt('0')) {\r\n this.backButtonText = 'Back';\r\n } else {\r\n this.backButtonText = 'Back';\r\n }\r\n this.nextButtonText = 'Next to review';\r\n break;\r\n case Section.review:\r\n this.setSteps(1);\r\n this.backButtonVisible = true;\r\n this.nextButtonText = 'Next to purchase';\r\n break;\r\n case Section.payment:\r\n this.setSteps(2);\r\n this.backButtonVisible = true;\r\n this.nextButtonText = 'Purchase now';\r\n break;\r\n case Section.confirmation:\r\n this.setSteps(3);\r\n this.backButtonVisible = false;\r\n this.allowSaveExit = false;\r\n this.nextButtonText = 'Back home';\r\n break;\r\n default:\r\n //\r\n }\r\n return _section;\r\n }\r\n\r\n private setSteps(n: number) {\r\n for (let i = 0; i < this.navSteps.length; i++) {\r\n this.navSteps[i].status = NavStepStatusID.NotDone\r\n }\r\n for (let i = 0; i < n; i++) {\r\n this.navSteps[i].status = NavStepStatusID.Done\r\n }\r\n this.navSteps[n].status = NavStepStatusID.Current\r\n // the confirmation page\r\n if (n === 3) {\r\n for (let i = 0; i < 3; i++) {\r\n this.navSteps[i].status = NavStepStatusID.Unknown\r\n }\r\n } else {\r\n // save the current step\r\n // window.sessionStorage.setItem('contractData', JSON.stringify(this.contractData));\r\n }\r\n }\r\n\r\n private backButton(): void {\r\n const _section: string = this.$route.query.sec as string;\r\n switch (_section) {\r\n case Section.details:\r\n this.eventCtrl.emit('cancel-purchase');\r\n break;\r\n case Section.review:\r\n this.navigate(this.navSteps[0]);\r\n break;\r\n case Section.payment:\r\n this.navigate(this.navSteps[1]);\r\n break;\r\n case Section.confirmation:\r\n // this.$router.push({ name: RouteN.DCSE.Home.n });\r\n this.eventCtrl.emit('cancel-purchase');\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n }\r\n\r\n private navigate(s: NavStep): void {\r\n const temp: string = JSON.stringify(this.$route.query);\r\n const tempJSON = JSON.parse(temp);\r\n tempJSON.sec = s.routeSecName;\r\n this.$router.push({ query: tempJSON });\r\n }\r\n\r\n private forwardButton(): void {\r\n store.dispatch('setContractData', this.contractData);\r\n const _section = this.$route.query.sec as string;\r\n switch (_section) {\r\n case Section.details:\r\n this.navigate(this.navSteps[1]);\r\n break;\r\n case Section.review:\r\n this.navigate(this.navSteps[2]);\r\n break;\r\n case Section.payment:\r\n this.checkBalanceAndPay();\r\n // this.navigate(this.navSteps[3]);\r\n break;\r\n case Section.confirmation:\r\n store.dispatch('setSearchType', 2);\r\n this.$router.push({ name: RouteN.DCSE.Home.n, query: { sec: 'history' } });\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n }\r\n\r\n private saveAndExit() {\r\n this.isLoadingData = true;\r\n this.contractData.isFinalisedOrder = false;\r\n this.contractData.acceptTermsAndConditions = false;\r\n if (this.contractData.contractOrderDetailData?.length === 1) {\r\n this.contractData.contractOrderDetailData[0].numOfContract = this.contractData.qty;\r\n }\r\n this.contractData.contractSubCategoryId = this.contractData.contractCategoryId == 1 ? this.contractData.orderType : null;\r\n\r\n const _body: ContractOrder = this.contractData;\r\n if (_body.id == 0) {\r\n // new contract\r\n this.apiService.ExternalApi?.apiV1ExternalCreateContractOrderPost(_body)\r\n .then(res => {\r\n // save and exit\r\n window.sessionStorage.removeItem('contractData');\r\n this.eventCtrl.emit('show-snackbar', 'success', 'Contract saved');\r\n this.$router.push({ name: RouteN.DCSE.Home.n, query: { sec: 'history' } });\r\n this.isLoadingData = false;\r\n })\r\n .catch(err => {\r\n this.isLoadingData = false;\r\n this.errorProcessPayment(err);\r\n })\r\n } else {\r\n // update contract\r\n this.apiService.ExternalApi?.apiV1ExternalUpdateContractOrderPut(_body)\r\n .then(res => {\r\n // save and exit\r\n window.sessionStorage.removeItem('contractData');\r\n this.eventCtrl.emit('show-snackbar', 'success', 'Contract saved');\r\n this.$router.push({ name: RouteN.DCSE.Home.n, query: { sec: 'history' } });\r\n this.isLoadingData = false;\r\n })\r\n .catch(err => {\r\n this.isLoadingData = false;\r\n this.errorProcessPayment(err);\r\n })\r\n }\r\n\r\n }\r\n\r\n private backHome() {\r\n // alert user, then this.$router.push({ name: RouteN.DCSE.Home.n });\r\n if (this.isUpdating) {\r\n this.eventCtrl.emit('cancel-update');\r\n } else {\r\n this.eventCtrl.emit('cancel-add');\r\n }\r\n\r\n }\r\n\r\n private checkBalanceAndPay() {\r\n if (this.cardPayment) {\r\n this.eventCtrl.emit('process-payment-application', this.applyPayment);\r\n } else {\r\n this.applyPaymentWithoutCreditCard();\r\n }\r\n }\r\n\r\n private applyPaymentWithoutCreditCard() {\r\n this.isLoadingData = true;\r\n this.contractData.isFinalisedOrder = true;\r\n if (this.contractData.contractOrderDetailData?.length === 1) {\r\n this.contractData.contractOrderDetailData[0].numOfContract = this.contractData.qty;\r\n }\r\n this.contractData.contractSubCategoryId = this.contractData.contractCategoryId == 1 ? this.contractData.orderType : null;\r\n\r\n const _body: ContractOrder = this.contractData;\r\n _body.payments = [\r\n {\r\n \"singleUseTokenId\": '',\r\n \"paymentTypeId\": 2,\r\n \"amountReceived\": this.contractData.amountReceived,\r\n }\r\n ];\r\n\r\n this.apiService.ExternalApi?.apiV1ExternalCreateContractOrderPost(_body)\r\n .then(res => {\r\n // console.log('Apply payment without card - resp: ', res);\r\n this.contractOrderId = res.data.data;\r\n this.isLoadingData = false;\r\n this.navigate(this.navSteps[3]);\r\n })\r\n .catch(err => {\r\n this.isLoadingData = false;\r\n // this.validCCForm = false;\r\n this.errorProcessPayment(err);\r\n });\r\n\r\n }\r\n\r\n private async applyPayment(paymentToken?: string) {\r\n // console.log('paymentToken: ', paymentToken)\r\n this.contractData.singleUseTokenId = paymentToken;\r\n this.contractData.isFinalisedOrder = true;\r\n if (this.contractData.contractOrderDetailData?.length === 1) {\r\n this.contractData.contractOrderDetailData[0].numOfContract = this.contractData.qty;\r\n }\r\n this.contractData.contractSubCategoryId = this.contractData.contractCategoryId == 1 ? this.contractData.orderType : null;\r\n\r\n const _body: ContractOrder = this.contractData;\r\n\r\n if (this.currentBalance > 0 && this.contractData.amountReceived !== this.contractData.qty * this.contractData.unitPrice) {\r\n // mix payment\r\n _body.payments = [{\r\n \"singleUseTokenId\": '',\r\n \"paymentTypeId\": 2,\r\n \"amountReceived\": this.currentBalance,\r\n }];\r\n if (this.contractData.singleUseTokenId !== '') {\r\n _body.payments.push({\r\n \"singleUseTokenId\": this.contractData.singleUseTokenId,\r\n \"paymentTypeId\": 1,\r\n \"amountReceived\": this.contractData.amountReceived,\r\n })\r\n }\r\n } else {\r\n // pay by card only\r\n _body.payments = [{\r\n \"singleUseTokenId\": this.contractData.singleUseTokenId,\r\n \"paymentTypeId\": 1,\r\n \"amountReceived\": this.contractData.amountReceived,\r\n }];\r\n }\r\n this.isLoadingData = true;\r\n this.apiService.ExternalApi?.apiV1ExternalCreateContractOrderPost(_body)\r\n .then(res => {\r\n this.contractOrderId = res.data.data;\r\n this.isLoadingData = false;\r\n this.navigate(this.navSteps[3]);\r\n })\r\n .catch(err => {\r\n this.isLoadingData = false;\r\n // this.validCCForm = false;\r\n this.errorProcessPayment(err);\r\n });\r\n\r\n }\r\n\r\n private async getUserBalance() {\r\n await this.apiService.ExternalApi?.apiV1ExternalGetUserBalanceGet()\r\n .then(res => {\r\n this.currentBalance = res.data.data as number;\r\n })\r\n .catch(err => {\r\n this.ai.trackException('Error getting user balance: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting user balance: ' + err.response.status);\r\n })\r\n }\r\n\r\n private errorProcessPayment(err: any) {\r\n if (err.response?.data && err.response.data?.errorCode == 1) {\r\n this.canSubmit = false;\r\n this.eventCtrl.emit('show-snackbar', 'error', 'An unexpected error occurred while preparing your contract. Please email dcs-support@lawsociety.com.au with the error code \"0104\". Do not resubmit payment.');\r\n this.ai.trackException('Error on process payment: ' + JSON.stringify(err.response));\r\n\r\n ///////////////////////////////////////////////////////////////////\r\n // START | settings before redirecting to the confirmation page \r\n this.showIfErrorOccurredPostSuccessfulPayment = true;\r\n\r\n // Extract ContractId(s) from the DCS API's response\r\n const contractIds = this.extractContractId(err.response.data?.message);\r\n this.errorMessagePostSuccessfulPayment = \"An unexpected error has occurred, please note your payment was successful.

Please email dcs-support@lawsociety.com.au with your contract ID (\" + contractIds + \"), and we will be in contact shortly with the next steps.\"\r\n\r\n this.navigate(this.navSteps[3]);\r\n // END | settings before redirecting to the confirmation page\r\n ///////////////////////////////////////////////////////////////////\r\n\r\n } else {\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to process payment (error code \"0102\").');\r\n this.ai.trackException('Error on process payment: ' + JSON.stringify(err));\r\n }\r\n }\r\n\r\n private extractContractId(input: any): string {\r\n // Ensure input is treated as a string\r\n const inputString = String(input);\r\n\r\n const regex = /ContractId\\(s\\):([^|]+)/;\r\n const match = inputString.match(regex);\r\n\r\n return match ? match[1] : '';\r\n }\r\n\r\n}\r\n","import { render } from \"./e-contract.html?vue&type=template&id=7b2b1fb6&scoped=true&ts=true\"\nimport script from \"./e-contract.ts?vue&type=script&lang=ts\"\nexport * from \"./e-contract.ts?vue&type=script&lang=ts\"\n\nimport \"./e-contract.scss?vue&type=style&index=0&id=7b2b1fb6&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7b2b1fb6\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createElementBlock as _createElementBlock, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-ebb65e1a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"top-up\" }\nconst _hoisted_2 = { class: \"container\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"section-header\" }, \"prepaid account\", -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"page-header\" }, \"Top up your prepaid account\", -1))\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"divider\" }, null, -1))\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_7 = { class: \"page-description\" }\nconst _hoisted_8 = /*#__PURE__*/_createTextVNode(\"Your prepaid account balance is \")\nconst _hoisted_9 = /*#__PURE__*/_createTextVNode(\". Top up your account to purchase further contracts with your pre-pay accounts.\")\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_11 = { class: \"row\" }\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { style: {\"font-family\":\"Arial, Helvetica, sans-serif\",\"font-weight\":\"bold\"} }, \"Enter a pre-pay amount *\", -1))\nconst _hoisted_13 = { class: \"input-amount input-box col-6\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"dollar-sign mr-2\" }, \"$\", -1))\nconst _hoisted_15 = {\n key: 0,\n class: \"validation-msg\"\n}\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_17 = /*#__PURE__*/_createTextVNode(\" Mandatory field \")\nconst _hoisted_18 = [\n _hoisted_16,\n _hoisted_17\n]\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_22 = [\"disabled\"]\nconst _hoisted_23 = [\"disabled\"]\nconst _hoisted_24 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-angle-right\" })\n], -1))\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_HeaderStepper = _resolveComponent(\"HeaderStepper\")\n const _component_CurrencyInput = _resolveComponent(\"CurrencyInput\")\n const _component_CreditCardPayment = _resolveComponent(\"CreditCardPayment\")\n const _component_TopUpConfirmation = _resolveComponent(\"TopUpConfirmation\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingSpinner, { key: 0 }))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_HeaderStepper, {\n navSteps: _ctx.navSteps,\n showHelpBtn: true\n }, null, 8, [\"navSteps\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _hoisted_3,\n (_ctx.setCurrentStep() === 'prepayment')\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _hoisted_4,\n _hoisted_5,\n _hoisted_6,\n _createElementVNode(\"div\", _hoisted_7, [\n _hoisted_8,\n _createElementVNode(\"strong\", null, _toDisplayString(_ctx.toCurrency(_ctx.currentBalance)), 1),\n _hoisted_9\n ]),\n _hoisted_10,\n _createElementVNode(\"div\", _hoisted_11, [\n _hoisted_12,\n _createElementVNode(\"div\", _hoisted_13, [\n _hoisted_14,\n _createVNode(_component_CurrencyInput, {\n class: \"amount pr-1\",\n modelValue: _ctx.paymentAmount,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.paymentAmount) = $event)),\n placeholder: \"Top up amount \",\n options: _ctx.currencyOptions\n }, null, 8, [\"modelValue\", \"options\"]),\n (_ctx.paymentAmount === '' || _ctx.paymentAmount <= 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_15, _hoisted_18))\n : _createCommentVNode(\"\", true)\n ])\n ]),\n _hoisted_19,\n _createVNode(_component_CreditCardPayment, {\n paymentAmount: _ctx.paymentAmount,\n \"onUpdate:paymentAmount\": _cache[1] || (_cache[1] = $event => ((_ctx.paymentAmount) = $event)),\n paymentToken: _ctx.paymentToken,\n \"onUpdate:paymentToken\": _cache[2] || (_cache[2] = $event => ((_ctx.paymentToken) = $event)),\n onValidCCForm: _ctx.onValidStatusChanged\n }, null, 8, [\"paymentAmount\", \"paymentToken\", \"onValidCCForm\"])\n ], 64))\n : _createCommentVNode(\"\", true),\n (_ctx.setCurrentStep() === 'confirmation' || _ctx.transactionId !== 0)\n ? (_openBlock(), _createBlock(_component_TopUpConfirmation, {\n key: 1,\n transactionId: _ctx.transactionId,\n \"onUpdate:transactionId\": _cache[3] || (_cache[3] = $event => ((_ctx.transactionId) = $event))\n }, null, 8, [\"transactionId\"]))\n : _createCommentVNode(\"\", true),\n _hoisted_20,\n _hoisted_21,\n (_ctx.backButtonVisible)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 2,\n class: \"btn btn-tertiary mb-4 mr-2\",\n onClick: _cache[4] || (_cache[4] = $event => (_ctx.backButton())),\n disabled: _ctx.isLoadingData\n }, _toDisplayString(_ctx.backButtonText), 9, _hoisted_22))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n onClick: _cache[5] || (_cache[5] = $event => (_ctx.forwardButton())),\n disabled: !(_ctx.canSubmit && _ctx.validCard) || _ctx.isLoadingData\n }, [\n _createTextVNode(_toDisplayString(_ctx.nextButtonText) + \" \", 1),\n _hoisted_24\n ], 8, _hoisted_23),\n _hoisted_25\n ])\n ]))\n}","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createVNode as _createVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5b0ad335\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"top-up-confirmation\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"page-header\" }, \"Confirmation\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"divider\" }, null, -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_5 = { class: \"page-description\" }\nconst _hoisted_6 = /*#__PURE__*/_createTextVNode(\"Thank you for your purchase. Your prepaid account balance is now \")\nconst _hoisted_7 = /*#__PURE__*/_createTextVNode(\". For all your purchases, please visit your \")\nconst _hoisted_8 = /*#__PURE__*/_createTextVNode(\".\")\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_10 = { class: \"confirmation-table\" }\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"thead\", null, [\n /*#__PURE__*/_createElementVNode(\"tr\", null, [\n /*#__PURE__*/_createElementVNode(\"th\", null, \"Type\"),\n /*#__PURE__*/_createElementVNode(\"th\", null, \"Created\"),\n /*#__PURE__*/_createElementVNode(\"th\", { class: \"center\" }, \"Status\"),\n /*#__PURE__*/_createElementVNode(\"th\", { class: \"action\" }, \"Action\")\n ])\n], -1))\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", null, \"Prepayment\", -1))\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", { class: \"center\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-check-circle\" }),\n /*#__PURE__*/_createTextVNode(\"Paid\")\n], -1))\nconst _hoisted_14 = { class: \"action\" }\n\nexport function render(_ctx, _cache) {\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_DropdownButton = _resolveComponent(\"DropdownButton\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingSpinner, { key: 0 }))\n : _createCommentVNode(\"\", true),\n _hoisted_2,\n _hoisted_3,\n _hoisted_4,\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _createElementVNode(\"strong\", null, _toDisplayString(_ctx.toCurrency(_ctx.prepaidBalance)), 1),\n _hoisted_7,\n _createElementVNode(\"span\", {\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.toHistory())),\n class: \"link\"\n }, \"purchase history\"),\n _hoisted_8\n ]),\n _hoisted_9,\n _createElementVNode(\"table\", _hoisted_10, [\n _hoisted_11,\n _createElementVNode(\"tbody\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_12,\n _createElementVNode(\"td\", null, _toDisplayString(_ctx.dateOfTopUp), 1),\n _hoisted_13,\n _createElementVNode(\"td\", _hoisted_14, [\n _createVNode(_component_DropdownButton, {\n transaction: _ctx.purchaseHistory,\n \"onUpdate:transaction\": _cache[1] || (_cache[1] = $event => ((_ctx.purchaseHistory) = $event)),\n fileTypes: _ctx.fileTypes,\n \"onUpdate:fileTypes\": _cache[2] || (_cache[2] = $event => ((_ctx.fileTypes) = $event)),\n contractCatId: _ctx.contractCatId,\n \"onUpdate:contractCatId\": _cache[3] || (_cache[3] = $event => ((_ctx.contractCatId) = $event)),\n menuType: _ctx.menuType1,\n \"onUpdate:menuType\": _cache[4] || (_cache[4] = $event => ((_ctx.menuType1) = $event)),\n onSelected: _ctx.selected\n }, null, 8, [\"transaction\", \"fileTypes\", \"contractCatId\", \"menuType\", \"onSelected\"])\n ])\n ])\n ])\n ])\n ]))\n}","import { Inject, Options, Vue } from \"vue-property-decorator\";\r\nimport { AppInsights } from \"@/dcsExternal/appInsights\";\r\nimport { DCSApi } from \"@/shared/modules/dcs-api\";\r\nimport store from \"@/shared/store\";\r\nimport { Utils } from \"@/shared/utils\";\r\nimport { EventEmitter } from \"events\";\r\nimport moment from \"moment\";\r\nimport { RouteN } from \"@/shared/constants/route-name\";\r\nimport { FileType, PurchaseHistory } from \"@/shared/modules/typescript-api-client/models\";\r\nimport DropdownButton from \"@/shared/components/dropdown-button/index.vue\";\r\nimport LoadingSpinner from \"@/shared/components/loading-spinner/index.vue\";\r\n\r\n@Options({\r\n props: { transactionId: Number },\r\n components: {\r\n DropdownButton,\r\n LoadingSpinner,\r\n }\r\n})\r\nexport default class TopUpConfirmation extends Vue {\r\n transactionId!: number;\r\n\r\n @Inject({ from: 'apiService', default: new DCSApi() })\r\n private apiService!: DCSApi;\r\n\r\n private ai = new AppInsights;\r\n\r\n private utils = new Utils;\r\n\r\n private prepaidBalance = 0;\r\n\r\n private purchaseHistory: PurchaseHistory[] = [];\r\n\r\n private menuType1 = { text: 'Download', multiple: false };\r\n private fileTypes: FileType[] = [];\r\n private contractCatId = 0;\r\n private isLoadingData = false;\r\n\r\n get eventCtrl(): EventEmitter {\r\n return store.getters.getEventController;\r\n }\r\n\r\n async mounted(): Promise {\r\n window.sessionStorage.removeItem('topup');\r\n await this.getUserBalance();\r\n await this.getFileTypes();\r\n this.$nextTick(() => {\r\n this.getResult();\r\n });\r\n }\r\n\r\n private async getFileTypes() {\r\n const _ft = window.sessionStorage.getItem('ft') || '';\r\n if (_ft !== '') {\r\n this.fileTypes = JSON.parse(_ft);\r\n } else {\r\n await this.apiService.CodeApi?.apiV1CodeGetFileTypesGet()\r\n .then((res) => {\r\n this.fileTypes = res.data.data;\r\n window.sessionStorage.setItem('ft', JSON.stringify(this.fileTypes));\r\n })\r\n .catch(err => {\r\n this.ai.trackException('Error getting file types: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting file types: ' + err);\r\n })\r\n }\r\n }\r\n\r\n private getResult() {\r\n // console.log(this.transactionId);\r\n this.apiService.ExternalApi?.apiV1ExternalGetPurchaseHistoryDetailTransactionIdGet(this.transactionId)\r\n .then(res => {\r\n this.purchaseHistory = res.data.data;\r\n console.log(this.purchaseHistory)\r\n })\r\n .catch(err => {\r\n this.ai.trackException('Error getting user balance: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting top up result: ' + err);\r\n })\r\n }\r\n\r\n private async getUserBalance() {\r\n await this.apiService.ExternalApi?.apiV1ExternalGetUserBalanceGet()\r\n .then(res => {\r\n this.prepaidBalance = res.data.data as number;\r\n })\r\n .catch(err => {\r\n this.ai.trackException('Error getting user balance: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting user balance: ' + err.response.status);\r\n })\r\n }\r\n\r\n get dateOfTopUp(): string {\r\n return moment(new Date()).format('DD/MM/YYYY');\r\n }\r\n\r\n private toCurrency(value: number) {\r\n return this.utils.$toCurrency(value);\r\n }\r\n\r\n private toHistory() {\r\n store.dispatch('setSearchType', 2);\r\n this.$router.push({ name: RouteN.DCSE.Home.n, query: { sec: 'history' } });\r\n }\r\n\r\n private async selected(option: any) {\r\n this.isLoadingData = true;\r\n if (option.fileName) {\r\n let _type = '';\r\n if (option.fileName.indexOf('.pdf') > 0) {\r\n _type = \"application/pdf\";\r\n }\r\n if (option.fileName.indexOf('.docx') > 0) {\r\n _type = \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\";\r\n }\r\n this.apiService.ExternalApi?.apiV1ExternalGetFileFileIdGet(option.id)\r\n .then(res => {\r\n const blobString = res.data.data.fileBytes;\r\n const link = document.createElement(\"a\");\r\n link.href = URL.createObjectURL(this.dataURItoBlob(blobString, _type));\r\n link.download = option.fileName;\r\n link.click();\r\n URL.revokeObjectURL(link.href);\r\n this.isLoadingData = false;\r\n })\r\n .catch(err => {\r\n // console.log(err);\r\n this.isLoadingData = false;\r\n this.ai.trackException('Error on file download: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on file download: ' + err);\r\n })\r\n }\r\n else {\r\n this.apiService.ExternalApi?.apiV1ExternalGetZippedFileTransactionIdGet(option.id)\r\n .then(res => {\r\n const blobString = res.data.data.fileBytes;\r\n const link = document.createElement(\"a\");\r\n link.href = URL.createObjectURL(this.dataURItoBlob(blobString, \"application/zip\"));\r\n link.download = res.data.data.name;\r\n link.click();\r\n URL.revokeObjectURL(link.href);\r\n this.isLoadingData = false;\r\n })\r\n .catch(err => {\r\n console.log(err)\r\n this.isLoadingData = false;\r\n this.ai.trackException('Error on file download: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on file download: ' + err);\r\n })\r\n }\r\n }\r\n\r\n private dataURItoBlob(dataURI: string, _type: string) {\r\n return this.utils.$dataURItoBlob(dataURI, _type)\r\n }\r\n\r\n}\r\n\r\n","import { render } from \"./top-up-confirmation.html?vue&type=template&id=5b0ad335&scoped=true&ts=true\"\nimport script from \"./top-up-confirmation.ts?vue&type=script&lang=ts\"\nexport * from \"./top-up-confirmation.ts?vue&type=script&lang=ts\"\n\nimport \"./top-up-confirmation.scss?vue&type=style&index=0&id=5b0ad335&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5b0ad335\"]])\n\nexport default __exports__","\r\n\r\n\r\n\r\n","import { render } from \"./index.vue?vue&type=template&id=14c91398\"\nimport script from \"./index.vue?vue&type=script&lang=js\"\nexport * from \"./index.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\r\nimport CreditCardPayment from \"@/shared/components/credit-card-payment/index.vue\";\r\nimport TopUpConfirmation from \"../top-up-confirmation/index.vue\";\r\nimport HeaderStepper from \"@/shared/components/header-stepper/index.vue\";\r\nimport LoadingSpinner from \"@/shared/components/loading-spinner/index.vue\";\r\nimport { NavStep, NavStepStatusID, Section, Step } from \"@/shared/components/header-stepper/nav-step\";\r\nimport { EventEmitter } from \"events\";\r\nimport store from \"@/shared/store\";\r\nimport { RouteN } from \"@/shared/constants/route-name\";\r\nimport { Utils } from \"@/shared/utils\";\r\nimport { DCSApi } from \"@/shared/modules/dcs-api\";\r\nimport { AppInsights } from \"@/dcsExternal/appInsights\";\r\nimport { SELF_URL } from \"@/shared/config/config\";\r\nimport { Payment } from \"@/shared/modules/typescript-api-client/models\";\r\nimport { maska } from 'maska';\r\nimport CurrencyInput from '@/shared/components/currency-input/index.vue';\r\n\r\n\r\n@Options({\r\n components: {\r\n LoadingSpinner,\r\n HeaderStepper,\r\n CreditCardPayment,\r\n TopUpConfirmation,\r\n CurrencyInput,\r\n },\r\n directives: { maska },\r\n beforeRouteLeave(to: any, from: any, next: any) {\r\n const _stored = window.sessionStorage.getItem('topup');\r\n if (to.name === RouteN.DCSE.Home.n && _stored !== null) {\r\n this.backButton();\r\n next(false);\r\n } else {\r\n next();\r\n }\r\n }\r\n})\r\nexport default class TopUp extends Vue {\r\n @Inject({ from: 'apiService', default: new DCSApi() })\r\n private apiService!: DCSApi;\r\n\r\n private ai = new AppInsights;\r\n\r\n private utils = new Utils;\r\n\r\n private refreshData = false;\r\n\r\n get eventCtrl(): EventEmitter {\r\n return store.getters.getEventController;\r\n }\r\n\r\n @Watch('$route')\r\n public OnRouteChange(val: any, oldVal: any): void {\r\n window.scrollTo(0, 0);\r\n if (oldVal.fullPath.indexOf('confirmation') > -1) {\r\n this.$router.push({ name: RouteN.DCSE.Home.n, query: { update: this.refreshData ? '1' : '0' } });\r\n }\r\n this.setCurrentStep();\r\n }\r\n\r\n @Watch('paymentAmount')\r\n public OnPaymentAmountChange(): void {\r\n this.mandatoryCheck();\r\n }\r\n\r\n private paymentAmount = NaN;\r\n private paymentToken = '';\r\n private validCard = false;\r\n\r\n private currentBalance = 0;\r\n\r\n private localDebug = false;\r\n\r\n private navSteps = [\r\n new NavStep(Step.prepayment, Section.prepayment),\r\n new NavStep(Step.confirmation, Section.confirmation),\r\n ];\r\n\r\n private isLoadingData = true;\r\n private isUpdating = false;\r\n private canSubmit = false;\r\n private allowSaveExit = true;\r\n private backButtonText = '';\r\n private nextButtonText = '';\r\n private backButtonVisible = true;\r\n\r\n private transactionId = 0;\r\n\r\n private currencyOptions = {\r\n \"currency\": \"USD\",\r\n \"currencyDisplay\": \"hidden\",\r\n \"precision\": 2,\r\n \"hideCurrencySymbolOnFocus\": true,\r\n \"hideGroupingSeparatorOnFocus\": true,\r\n \"hideNegligibleDecimalDigitsOnFocus\": true,\r\n \"autoDecimalDigits\": false,\r\n \"useGrouping\": true,\r\n \"accountingSign\": false\r\n }\r\n\r\n created(): void {\r\n this.localDebug = SELF_URL.indexOf('localhost') >= 0;\r\n const section: string = this.$route.query.sec as string;\r\n if (section == 'confirmation') {\r\n this.$router.push({ name: RouteN.DCSE.Home.n });\r\n }\r\n if (section == 'prepayment') {\r\n // window.sessionStorage.setItem('prepayment', '0');\r\n }\r\n\r\n this.nextButtonText = 'Purchase now';\r\n\r\n this.eventCtrl.on('canSubmit', (val) => {\r\n // console.log('canSubmit: ', val)\r\n if (val) {\r\n this.canSubmit = true;\r\n } else {\r\n this.canSubmit = false;\r\n }\r\n });\r\n }\r\n\r\n beforeUnmount(): void {\r\n this.eventCtrl.removeListener('canSubmit', () => { this.canSubmit = false });\r\n }\r\n\r\n mounted(): void {\r\n // check if store value from is in progress\r\n const _stored = window.sessionStorage.getItem('topup');\r\n\r\n if (_stored == null) {\r\n this.$router.push({ name: RouteN.DCSE.Home.n });\r\n }\r\n this.getUserBalance();\r\n this.setCurrentStep();\r\n this.isLoadingData = false;\r\n }\r\n\r\n private async getUserBalance() {\r\n await this.apiService.ExternalApi?.apiV1ExternalGetUserBalanceGet()\r\n .then(res => {\r\n this.currentBalance = res.data.data as number;\r\n })\r\n .catch(err => {\r\n this.ai.trackException('Error getting user balance: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting user balance: ' + err.response.status);\r\n })\r\n }\r\n\r\n private setCurrentStep(): string {\r\n const _section: string = this.$route.query.sec as string;\r\n this.backButtonText = 'Back';\r\n switch (_section) {\r\n case Section.prepayment:\r\n this.setSteps(0);\r\n this.backButtonVisible = true;\r\n this.backButtonText = 'Back';\r\n this.nextButtonText = 'Purchase now';\r\n break;\r\n\r\n case Section.confirmation:\r\n this.setSteps(1);\r\n this.backButtonVisible = false;\r\n this.nextButtonText = 'Back home';\r\n break;\r\n default:\r\n //\r\n }\r\n return _section;\r\n }\r\n\r\n private setSteps(n: number) {\r\n for (let i = 0; i < this.navSteps.length; i++) {\r\n this.navSteps[i].status = NavStepStatusID.NotDone\r\n }\r\n for (let i = 0; i < n; i++) {\r\n this.navSteps[i].status = NavStepStatusID.Done\r\n }\r\n this.navSteps[n].status = NavStepStatusID.Current\r\n // the confirmation page\r\n if (n === 1) {\r\n for (let i = 0; i < 1; i++) {\r\n this.navSteps[i].status = NavStepStatusID.Unknown\r\n }\r\n } else {\r\n // save the current step\r\n // window.sessionStorage.setItem('eoiPageSection', n.toString());\r\n }\r\n }\r\n\r\n private backButton(): void {\r\n this.eventCtrl.emit('cancel-topup');\r\n // const _section: string = this.$route.query.sec as string;\r\n // console.log(_section);\r\n // switch (_section) {\r\n // case Section.prepayment:\r\n // this.eventCtrl.emit('cancel-topup');\r\n // break;\r\n // case Section.confirmation:\r\n // window.sessionStorage.removeItem('topup');\r\n // this.$router.push({ name: RouteN.DCSE.Home.n });\r\n // break;\r\n // default:\r\n // break;\r\n // }\r\n // this.saveTempContract();\r\n\r\n }\r\n\r\n private navigate(s: NavStep): void {\r\n const temp: string = JSON.stringify(this.$route.query);\r\n const tempJSON = JSON.parse(temp);\r\n tempJSON.sec = s.routeSecName;\r\n this.$router.push({ query: tempJSON });\r\n }\r\n\r\n private forwardButton(): void {\r\n const _section = this.$route.query.sec as string;\r\n switch (_section) {\r\n case Section.prepayment:\r\n this.eventCtrl.emit('process-payment-application', this.applyPayment);\r\n break;\r\n case Section.confirmation:\r\n this.$router.push({ name: RouteN.DCSE.Home.n });\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n private backToHistoryPage() {\r\n store.dispatch('setSearchType', 2);\r\n this.$router.push({ name: RouteN.DCSE.Home.n, query: { sec: 'history' } });\r\n }\r\n\r\n private async applyPayment() {\r\n // console.log('paymentToken:', this.paymentToken, 'amount: ', this.paymentAmount)\r\n const _body: Payment = {\r\n singleUseTokenId: this.paymentToken,\r\n paymentTypeId: 1, // 1 - credit card type; 2 - prepayment\r\n amountReceived: this.paymentAmount\r\n }\r\n this.isLoadingData = true;\r\n this.apiService.ExternalApi?.apiV1ExternalTopupPrepaidBalancePost(_body)\r\n .then(res => {\r\n this.isLoadingData = false;\r\n this.transactionId = res.data.data;\r\n this.navigate(this.navSteps[1]);\r\n })\r\n .catch(err => {\r\n this.isLoadingData = false;\r\n // this.validCCForm = false;\r\n this.errorProcessPayment(err);\r\n });\r\n }\r\n\r\n private errorProcessPayment(err: any) {\r\n if (err.response?.data && err.response.data?.errorCode == 1) {\r\n this.canSubmit = false;\r\n this.eventCtrl.emit('show-snackbar', 'error', 'An unexpected error occurred while preparing your contract. Please email dcs-support@lawsociety.com.au with the error code \"0104\". Do not resubmit payment.');\r\n this.ai.trackException('Error on process payment: ' + JSON.stringify(err.response));\r\n } else {\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to process payment (error code \"0102\").');\r\n this.ai.trackException('Error on process payment: ' + JSON.stringify(err));\r\n }\r\n }\r\n\r\n private onValidStatusChanged(status: boolean) {\r\n // console.log('CC Valid status changed:', status);\r\n this.validCard = status;\r\n }\r\n\r\n private mandatoryCheck() {\r\n this.eventCtrl.emit('canSubmit', this.paymentAmount > 0);\r\n }\r\n\r\n private toCurrency(value: number) {\r\n return this.utils.$toCurrency(value);\r\n }\r\n\r\n}\r\n\r\n","import { render } from \"./top-up.html?vue&type=template&id=ebb65e1a&scoped=true&ts=true\"\nimport script from \"./top-up.ts?vue&type=script&lang=ts\"\nexport * from \"./top-up.ts?vue&type=script&lang=ts\"\n\nimport \"./top-up.scss?vue&type=style&index=0&id=ebb65e1a&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-ebb65e1a\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, vModelText as _vModelText, withDirectives as _withDirectives, normalizeClass as _normalizeClass, createElementBlock as _createElementBlock, Fragment as _Fragment, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-d014fc7e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"edit-contract\" }\nconst _hoisted_2 = { class: \"container\" }\nconst _hoisted_3 = { class: \"section-header\" }\nconst _hoisted_4 = { class: \"page-header\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"divider\" }, null, -1))\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_7 = { class: \"tip\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"strong\", null, \"Tip:\", -1))\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_10 = { class: \"field\" }\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"fieldname\" }, \"Contract edition\", -1))\nconst _hoisted_12 = { class: \"fielddata\" }\nconst _hoisted_13 = { class: \"field\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"fieldname\" }, \"Reference ID\", -1))\nconst _hoisted_15 = { class: \"fielddata\" }\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_17 = { key: 0 }\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"fieldname\" }, \"Business name *\", -1))\nconst _hoisted_19 = [\"disabled\"]\nconst _hoisted_20 = {\n key: 0,\n class: \"validation-msg\"\n}\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_22 = /*#__PURE__*/_createTextVNode(\" Mandatory field \")\nconst _hoisted_23 = [\n _hoisted_21,\n _hoisted_22\n]\nconst _hoisted_24 = {\n key: 0,\n class: \"fieldname\"\n}\nconst _hoisted_25 = {\n key: 1,\n class: \"fieldname\"\n}\nconst _hoisted_26 = [\"maxlength\", \"disabled\"]\nconst _hoisted_27 = {\n key: 2,\n class: \"validation-msg\"\n}\nconst _hoisted_28 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_29 = /*#__PURE__*/_createTextVNode(\" Mandatory field \")\nconst _hoisted_30 = [\n _hoisted_28,\n _hoisted_29\n]\nconst _hoisted_31 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_32 = { key: 1 }\nconst _hoisted_33 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"fieldname\" }, [\n /*#__PURE__*/_createTextVNode(\"Additional information \"),\n /*#__PURE__*/_createElementVNode(\"span\", null, \"(optional)\")\n], -1))\nconst _hoisted_34 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"description-line\" }, \"Enter additional plan details and title references to be displayed below the property address\", -1))\nconst _hoisted_35 = [\"disabled\"]\nconst _hoisted_36 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_37 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"fieldname\" }, \"Watermark on clauses *\", -1))\nconst _hoisted_38 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"description-line\" }, \"This will be the watermark that will be displayed across the contract\", -1))\nconst _hoisted_39 = [\"disabled\"]\nconst _hoisted_40 = {\n key: 0,\n class: \"validation-msg\"\n}\nconst _hoisted_41 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_42 = /*#__PURE__*/_createTextVNode(\" Mandatory field \")\nconst _hoisted_43 = [\n _hoisted_41,\n _hoisted_42\n]\nconst _hoisted_44 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_45 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_46 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_47 = [\"disabled\"]\nconst _hoisted_48 = [\"disabled\"]\nconst _hoisted_49 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-angle-right\" })\n], -1))\nconst _hoisted_50 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_51 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"SAVE CHANGES\", -1))\nconst _hoisted_52 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Do you want to save changes to this contract?\", -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_HeaderStepper = _resolveComponent(\"HeaderStepper\")\n const _component_EditContractConfirmation = _resolveComponent(\"EditContractConfirmation\")\n const _component_AlertBox = _resolveComponent(\"AlertBox\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingSpinner, { key: 0 }))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_HeaderStepper, {\n navSteps: _ctx.navSteps,\n showHelpBtn: true\n }, null, 8, [\"navSteps\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, _toDisplayString(_ctx.editContract.description), 1),\n (_ctx.setCurrentStep() === 'details' && _ctx.editContract !== '')\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _createElementVNode(\"div\", _hoisted_4, _toDisplayString(_ctx.pageHeader), 1),\n _hoisted_5,\n _hoisted_6,\n _createElementVNode(\"div\", _hoisted_7, [\n _hoisted_8,\n _createTextVNode(\" \" + _toDisplayString(_ctx.pageBody), 1)\n ]),\n _hoisted_9,\n _createElementVNode(\"div\", _hoisted_10, [\n _hoisted_11,\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_ctx.editContract.contractEdition), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_13, [\n _hoisted_14,\n _createElementVNode(\"span\", _hoisted_15, _toDisplayString(_ctx.editContract.referenceId), 1)\n ]),\n _hoisted_16,\n (_ctx.editContract.contractCategoryId === 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_17, [\n _hoisted_18,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n maxlength: \"75\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.editContract.businessName) = $event)),\n onKeyup: _cache[1] || (_cache[1] = $event => (_ctx.mandatoryCheck())),\n disabled: _ctx.isLoadingData\n }, null, 40, _hoisted_19), [\n [_vModelText, _ctx.editContract.businessName]\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"footnote\", [ _ctx.editContract.businessName.length === 75 ? 'full' : '']])\n }, _toDisplayString(_ctx.editContract.businessName.length) + \"/75 characters\", 3),\n (_ctx.editContract.businessName.trim() === '')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_20, _hoisted_23))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", null, [\n (_ctx.editContract.contractCategoryId === 1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_24, \"Property address *\"))\n : _createCommentVNode(\"\", true),\n (_ctx.editContract.contractCategoryId === 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_25, \"Enter address of premises *\"))\n : _createCommentVNode(\"\", true),\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n maxlength: _ctx.maxLength,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => ((_ctx.editContract.address) = $event)),\n onKeyup: _cache[3] || (_cache[3] = $event => (_ctx.mandatoryCheck())),\n disabled: _ctx.isLoadingData\n }, null, 40, _hoisted_26), [\n [_vModelText, _ctx.editContract.address]\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"footnote\", [ _ctx.editContract.address.length === _ctx.maxLength ? 'full' : '']])\n }, _toDisplayString(_ctx.editContract.address.length) + \"/\" + _toDisplayString(_ctx.maxLength) + \" characters\", 3),\n (_ctx.editContract.address.trim() === '')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_27, _hoisted_30))\n : _createCommentVNode(\"\", true)\n ]),\n _hoisted_31,\n (_ctx.editContract.contractCategoryId === 1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_32, [\n _createElementVNode(\"div\", null, [\n _hoisted_33,\n _hoisted_34,\n _withDirectives(_createElementVNode(\"textarea\", {\n class: \"additional-info\",\n maxlength: \"170\",\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => ((_ctx.editContract.additionalInfo) = $event)),\n disabled: _ctx.isLoadingData\n }, \"\\r\\n \", 8, _hoisted_35), [\n [_vModelText, _ctx.editContract.additionalInfo]\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"footnote\", [ _ctx.editContract.additionalInfo.length === 170 ? 'full' : '']])\n }, _toDisplayString(_ctx.editContract.additionalInfo.length) + \"/170 characters\", 3)\n ]),\n _hoisted_36,\n _hoisted_37,\n _hoisted_38,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n maxlength: \"130\",\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = $event => ((_ctx.editContract.watermark) = $event)),\n onKeyup: _cache[6] || (_cache[6] = $event => (_ctx.mandatoryCheck())),\n disabled: _ctx.isLoadingData\n }, null, 40, _hoisted_39), [\n [_vModelText, _ctx.editContract.watermark]\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"footnote\", [ _ctx.editContract.watermark.length === 130 ? 'full' : '']])\n }, _toDisplayString(_ctx.editContract.watermark.length) + \"/130 characters\", 3),\n (_ctx.editContract.watermark.trim() === '')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_40, _hoisted_43))\n : _createCommentVNode(\"\", true),\n _hoisted_44\n ]))\n : _createCommentVNode(\"\", true)\n ], 64))\n : _createCommentVNode(\"\", true),\n (_ctx.setCurrentStep() === 'confirmation')\n ? (_openBlock(), _createBlock(_component_EditContractConfirmation, {\n key: 1,\n contractOrderId: _ctx.editContract.contractOrderId,\n \"onUpdate:contractOrderId\": _cache[7] || (_cache[7] = $event => ((_ctx.editContract.contractOrderId) = $event)),\n contractOrderDetailsId: _ctx.editContract.id,\n \"onUpdate:contractOrderDetailsId\": _cache[8] || (_cache[8] = $event => ((_ctx.editContract.id) = $event))\n }, null, 8, [\"contractOrderId\", \"contractOrderDetailsId\"]))\n : _createCommentVNode(\"\", true),\n _hoisted_45,\n _hoisted_46,\n (_ctx.backButtonVisible)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 2,\n class: \"btn btn-tertiary mb-4 mr-2\",\n onClick: _cache[9] || (_cache[9] = $event => (_ctx.backButton())),\n disabled: _ctx.isLoadingData\n }, _toDisplayString(_ctx.backButtonText), 9, _hoisted_47))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n onClick: _cache[10] || (_cache[10] = $event => (_ctx.forwardButton())),\n disabled: !_ctx.canSubmit || _ctx.isLoadingData\n }, [\n _createTextVNode(_toDisplayString(_ctx.nextButtonText) + \" \", 1),\n _hoisted_49\n ], 8, _hoisted_48),\n _hoisted_50\n ]),\n (_ctx.showSaveAlertBox)\n ? (_openBlock(), _createBlock(_component_AlertBox, {\n key: 1,\n onClose: _cache[13] || (_cache[13] = $event => (_ctx.showSaveAlertBox = false))\n }, {\n header: _withCtx(() => [\n _hoisted_51\n ]),\n body: _withCtx(() => [\n _hoisted_52\n ]),\n footer: _withCtx(() => [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary sml\",\n onClick: _cache[11] || (_cache[11] = $event => (_ctx.updateContract()))\n }, \"Yes\"),\n _createElementVNode(\"button\", {\n class: \"btn btn-tertiary sml\",\n onClick: _cache[12] || (_cache[12] = $event => (_ctx.showSaveAlertBox = false))\n }, \"No\")\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-2e9ac5bf\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"edit-contract-confirmation\" }\nconst _hoisted_2 = { class: \"page-header\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"divider\" }, null, -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_5 = [\"innerHTML\"]\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\n\nexport function render(_ctx, _cache) {\n const _component_ConfirmationTable = _resolveComponent(\"ConfirmationTable\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, _toDisplayString(_ctx.pageHeader), 1),\n _hoisted_3,\n _hoisted_4,\n _createElementVNode(\"div\", {\n class: \"page-description\",\n innerHTML: _ctx.pageBody\n }, null, 8, _hoisted_5),\n _hoisted_6,\n (_ctx.contracts && _ctx.contracts.length > 0)\n ? (_openBlock(), _createBlock(_component_ConfirmationTable, {\n key: 0,\n contracts: _ctx.contracts,\n \"onUpdate:contracts\": _cache[0] || (_cache[0] = $event => ((_ctx.contracts) = $event))\n }, null, 8, [\"contracts\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { Inject, Options, Vue } from \"vue-property-decorator\";\r\nimport { RouteN } from \"@/shared/constants/route-name\";\r\nimport store from \"@/shared/store\";\r\nimport { AppInsights } from \"@/dcsExternal/appInsights\";\r\nimport { DCSApi } from \"@/shared/modules/dcs-api\";\r\nimport { Utils } from \"@/shared/utils\";\r\nimport ConfirmationTable from \"../confirmation-table/index.vue\";\r\nimport { PurchaseHistory, PurchaseHistoryDetail } from \"@/shared/modules/typescript-api-client/models\";\r\nimport ContractWording from '@/assets/config/contract-wording.json';\r\n\r\n\r\n@Options({\r\n props: {\r\n contractOrderId: Number,\r\n contractOrderDetailsId: Number\r\n },\r\n components: {\r\n ConfirmationTable,\r\n }\r\n})\r\nexport default class EditContractConfirmation extends Vue {\r\n contractOrderId!: number;\r\n contractOrderDetailsId!: number;\r\n\r\n @Inject({ from: 'apiService', default: new DCSApi() })\r\n private apiService!: DCSApi;\r\n\r\n private ai = new AppInsights;\r\n\r\n private utils = new Utils;\r\n private isLoadingData = false;\r\n\r\n private contracts: PurchaseHistory[] = [];\r\n\r\n get pageHeader(): string {\r\n return ContractWording.editConfirmation['pageHeader']\r\n }\r\n\r\n get pageBody(): string {\r\n return ContractWording.editConfirmation['pageBody']\r\n }\r\n\r\n\r\n\r\n mounted(): void {\r\n this.getThisTransaction();\r\n }\r\n\r\n private getThisTransaction() {\r\n this.isLoadingData = true;\r\n this.apiService.ExternalApi?.apiV1ExternalGetContractOrderDetailContractOrderIdGet(this.contractOrderId)\r\n .then(res => {\r\n this.isLoadingData = false;\r\n this.contracts.push(res.data.data);\r\n this.filterContractDetails(this.contractOrderDetailsId);\r\n })\r\n .catch(err => {\r\n this.isLoadingData = false;\r\n console.log(err);\r\n })\r\n }\r\n\r\n private filterContractDetails(id: number) {\r\n let _files: any[] = this.contracts[0].files;\r\n let _contractDetails: PurchaseHistoryDetail[] = this.contracts[0].purchaseHistoryDetails;\r\n\r\n _files = _files.filter((f: any) => {\r\n return f.contractOrderDetailId === id;\r\n });\r\n\r\n _contractDetails = _contractDetails.filter((d: PurchaseHistoryDetail) => {\r\n // console.log(d.contractOrderDetailId, id);\r\n return d.contractOrderDetailId === id;\r\n });\r\n this.contracts[0].files = _files;\r\n this.contracts[0].purchaseHistoryDetails = _contractDetails;\r\n // console.log(id, this.contracts);\r\n }\r\n\r\n private toHistory() {\r\n store.dispatch('setSearchType', 2);\r\n this.$router.push({ name: RouteN.DCSE.Home.n, query: { sec: 'history' } });\r\n }\r\n\r\n}\r\n\r\n","import { render } from \"./edit-contract-confirmation.html?vue&type=template&id=2e9ac5bf&scoped=true&ts=true\"\nimport script from \"./edit-contract-confirmation.ts?vue&type=script&lang=ts\"\nexport * from \"./edit-contract-confirmation.ts?vue&type=script&lang=ts\"\n\nimport \"./edit-contract-confirmation.scss?vue&type=style&index=0&id=2e9ac5bf&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-2e9ac5bf\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\r\nimport HeaderStepper from \"@/shared/components/header-stepper/index.vue\";\r\nimport LoadingSpinner from \"@/shared/components/loading-spinner/index.vue\";\r\nimport { AppInsights } from \"@/dcsExternal/appInsights\";\r\nimport { DCSApi } from \"@/shared/modules/dcs-api\";\r\nimport store from \"@/shared/store\";\r\nimport { Utils } from \"@/shared/utils\";\r\nimport { EventEmitter } from \"events\";\r\nimport { NavStep, NavStepStatusID, Section, Step } from \"@/shared/components/header-stepper/nav-step\";\r\nimport { RouteN } from \"@/shared/constants/route-name\";\r\nimport { SELF_URL } from \"@/shared/config/config\";\r\nimport EditContractConfirmation from \"../edit-contract-confirmation/index.vue\";\r\nimport ContractWording from '@/assets/config/contract-wording.json';\r\nimport AlertBox from \"@/shared/components/alert-box/index.vue\";\r\n\r\n@Options({\r\n components: {\r\n LoadingSpinner,\r\n HeaderStepper,\r\n EditContractConfirmation,\r\n AlertBox,\r\n }\r\n})\r\nexport default class EditContract extends Vue {\r\n @Inject({ from: 'apiService', default: new DCSApi() })\r\n private apiService!: DCSApi;\r\n\r\n private ai = new AppInsights;\r\n\r\n private utils = new Utils;\r\n\r\n private showSaveAlertBox = false;\r\n\r\n private refreshData = false;\r\n\r\n get eventCtrl(): EventEmitter {\r\n return store.getters.getEventController;\r\n }\r\n private isLoadingData = false;\r\n private canSubmit = false;\r\n private allowSaveExit = true;\r\n private backButtonText = '';\r\n private nextButtonText = '';\r\n private backButtonVisible = true;\r\n\r\n private localDebug = false;\r\n\r\n private contractOrderDetailsId = 0;\r\n\r\n private editContract: any = {\r\n id: '',\r\n businessName: '',\r\n contractCategoryId: '',\r\n additionalInfo: '',\r\n address: '',\r\n watermark: '',\r\n numOfContract: '',\r\n contractEdition: '',\r\n referenceId: '',\r\n };\r\n\r\n get pageHeader(): string {\r\n return ContractWording.edit['pageHeader']\r\n }\r\n\r\n get pageBody(): string {\r\n return ContractWording.edit['pageBody']\r\n }\r\n\r\n get maxLength(): number {\r\n return this.editContract.contractCategoryId === 1 ? 75 : 130;\r\n }\r\n\r\n private navSteps = [\r\n new NavStep(Step.details, Section.details),\r\n new NavStep(Step.confirmation, Section.confirmation),\r\n ];\r\n\r\n @Watch('$route')\r\n public OnRouteChange(val: any, oldVal: any): void {\r\n window.scrollTo(0, 0);\r\n if (oldVal.fullPath.indexOf('confirmation') > -1) {\r\n this.$router.push({ name: RouteN.DCSE.Home.n, query: { update: this.refreshData ? '1' : '0' } });\r\n }\r\n this.setCurrentStep();\r\n }\r\n\r\n created(): void {\r\n this.localDebug = SELF_URL.indexOf('localhost') >= 0;\r\n const section: string = this.$route.query.sec as string;\r\n if (section == 'confirmation') {\r\n this.$router.push({ name: RouteN.DCSE.Home.n });\r\n }\r\n if (section == 'details') {\r\n // window.sessionStorage.setItem(...\r\n }\r\n\r\n this.nextButtonText = 'Save';\r\n\r\n this.eventCtrl.on('canSubmit', (val) => {\r\n // console.log('canSubmit: ', val)\r\n if (val) {\r\n this.canSubmit = true;\r\n } else {\r\n this.canSubmit = false;\r\n }\r\n });\r\n }\r\n\r\n beforeUnmount(): void {\r\n this.eventCtrl.removeListener('canSubmit', () => { this.canSubmit = false });\r\n }\r\n\r\n mounted(): void {\r\n window.scrollTo(0, 0);\r\n // check if store value edit is in progress\r\n const _stored = window.sessionStorage.getItem('edit');\r\n const _editContract = window.sessionStorage.getItem('contractData');\r\n\r\n if (_stored !== null && _editContract !== null) {\r\n // console.log(_editContract)\r\n this.editContract = JSON.parse(_editContract);\r\n } else {\r\n this.$router.push({ name: RouteN.DCSE.Home.n });\r\n }\r\n this.setCurrentStep();\r\n this.isLoadingData = false;\r\n // this.mandatoryCheck();\r\n }\r\n\r\n\r\n private setCurrentStep(): string {\r\n const _section: string = this.$route.query.sec as string;\r\n this.backButtonText = 'Back';\r\n switch (_section) {\r\n case Section.details:\r\n this.setSteps(0);\r\n this.backButtonVisible = true;\r\n this.backButtonText = 'Back';\r\n this.nextButtonText = 'Save';\r\n break;\r\n\r\n case Section.confirmation:\r\n this.setSteps(1);\r\n this.backButtonVisible = false;\r\n this.nextButtonText = 'Back home';\r\n break;\r\n default:\r\n //\r\n }\r\n return _section;\r\n }\r\n\r\n private setSteps(n: number) {\r\n for (let i = 0; i < this.navSteps.length; i++) {\r\n this.navSteps[i].status = NavStepStatusID.NotDone\r\n }\r\n for (let i = 0; i < n; i++) {\r\n this.navSteps[i].status = NavStepStatusID.Done\r\n }\r\n this.navSteps[n].status = NavStepStatusID.Current\r\n // the confirmation page\r\n if (n === 1) {\r\n for (let i = 0; i < 1; i++) {\r\n this.navSteps[i].status = NavStepStatusID.Unknown\r\n }\r\n } else {\r\n // save the current step\r\n // window.sessionStorage.setItem('eoiPageSection', n.toString());\r\n }\r\n }\r\n\r\n private mandatoryCheck() {\r\n this.canSubmit = false;\r\n if(this.editContract.contractCategoryId === 1) {\r\n this.canSubmit = this.editContract.address.trim() !== '' && this.editContract.watermark.trim() !== '';\r\n } else {\r\n this.canSubmit = this.editContract.address.trim() !== '' && this.editContract.businessName.trim() !== '';\r\n }\r\n this.eventCtrl.emit('canSubmit', this.canSubmit);\r\n }\r\n\r\n private backButton(): void {\r\n this.eventCtrl.emit('cancel-edit');\r\n }\r\n\r\n private navigate(s: NavStep): void {\r\n const temp: string = JSON.stringify(this.$route.query);\r\n const tempJSON = JSON.parse(temp);\r\n tempJSON.sec = s.routeSecName;\r\n this.$router.push({ query: tempJSON });\r\n }\r\n\r\n private forwardButton(): void {\r\n const _section = this.$route.query.sec as string;\r\n switch (_section) {\r\n case Section.details:\r\n this.showSaveAlertBox = true;\r\n break;\r\n case Section.confirmation:\r\n store.dispatch('setSearchType', 2);\r\n this.$router.push({ name: RouteN.DCSE.Home.n, query: { sec: 'history' } });\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n }\r\n\r\n private updateContract() {\r\n this.showSaveAlertBox = false;\r\n this.isLoadingData = true;\r\n this.apiService.ExternalApi?.apiV1ExternalUpdateFinalizedContractOrderDetailPut(this.editContract)\r\n .then(res => {\r\n // console.log(res)\r\n this.isLoadingData = false;\r\n this.navigate(this.navSteps[1]);\r\n })\r\n .catch(err => {\r\n this.isLoadingData = false;\r\n this.ai.trackException('Error on saving contract: ' + JSON.stringify(err));\r\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on saving contract: ' + err.response.status);\r\n })\r\n\r\n }\r\n}\r\n\r\n","import { render } from \"./edit-contract.html?vue&type=template&id=d014fc7e&scoped=true&ts=true\"\nimport script from \"./edit-contract.ts?vue&type=script&lang=ts\"\nexport * from \"./edit-contract.ts?vue&type=script&lang=ts\"\n\nimport \"./edit-contract.scss?vue&type=style&index=0&id=d014fc7e&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-d014fc7e\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-fc7c32ca\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"offline\" }, [\n /*#__PURE__*/_createElementVNode(\"h3\", null, \"We should be back online soon!\"),\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"text-line\" }, \" We apologise for the inconvenience but we're performing some maintenance at the moment, we'll be back online shortly. \")\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_StdPageLayout = _resolveComponent(\"StdPageLayout\")\n\n return (_openBlock(), _createBlock(_component_StdPageLayout, null, {\n \"body-content\": _withCtx(() => [\n _hoisted_1\n ]),\n _: 1\n }))\n}","\r\nimport { Options, Vue } from 'vue-class-component';\r\nimport StdPageLayout from '@/shared/components/std-page-layout/index.vue';\r\n\r\n@Options({\r\n components: {\r\n StdPageLayout\r\n }\r\n})\r\nexport default class AccessError extends Vue {\r\n}\r\n","import { render } from \"./access-error.html?vue&type=template&id=fc7c32ca&scoped=true&ts=true\"\nimport script from \"./access-error.ts?vue&type=script&lang=ts\"\nexport * from \"./access-error.ts?vue&type=script&lang=ts\"\n\nimport \"./access-error.scss?vue&type=style&index=0&id=fc7c32ca&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\spa\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-fc7c32ca\"]])\n\nexport default __exports__","import { RouteN } from '@/shared/constants/route-name';\r\nimport { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router';\r\nimport Home from '../components/home/index.vue';\r\nimport Logout from '@/shared/components/logout/index.vue';\r\nimport AutoLogin from '../components/auto-login/index.vue';\r\nimport ExternalMain from '../components/external-main/index.vue';\r\nimport eContract from '../components/e-contract/index.vue';\r\nimport TopUp from '../components/top-up/index.vue';\r\nimport EditContract from '../components/edit-contract/index.vue';\r\nimport AccessError from '../components/access-error/index.vue';\r\n\r\nconst routes: Array = [\r\n {\r\n path: RouteN.DCSE.LoginPage.p,\r\n name: RouteN.DCSE.LoginPage.n,\r\n component: AutoLogin,\r\n },\r\n {\r\n path: RouteN.DCSE.LogoutPage.p,\r\n name: RouteN.DCSE.LogoutPage.n,\r\n component: Logout,\r\n },\r\n {\r\n path: RouteN.DCSE.AccessError.p,\r\n name: RouteN.DCSE.AccessError.n,\r\n component: AccessError,\r\n },\r\n { path: '/:pathMatch(.*)*', \r\n name: 'not-found', \r\n redirect: RouteN.DCSE.Home.n },\r\n {\r\n path: RouteN.DCSE.Main.p,\r\n meta: { requiresAuth: true },\r\n redirect: { name: RouteN.DCSE.Home.n },\r\n name: RouteN.DCSE.Main.n,\r\n component: ExternalMain,\r\n children: [\r\n {\r\n path: RouteN.DCSE.Home.p,\r\n name: RouteN.DCSE.Home.n,\r\n component: Home\r\n },\r\n {\r\n path: RouteN.DCSE.TopUp.p,\r\n name: RouteN.DCSE.TopUp.n,\r\n component: TopUp\r\n },\r\n {\r\n path: RouteN.DCSE.eContract.p,\r\n name: RouteN.DCSE.eContract.n,\r\n component: eContract\r\n },\r\n {\r\n path: RouteN.DCSE.EditContract.p,\r\n name: RouteN.DCSE.EditContract.n,\r\n component: EditContract\r\n },\r\n ]\r\n },\r\n]\r\n\r\nconst router = createRouter({\r\n history: createWebHistory(process.env.BASE_URL),\r\n routes\r\n})\r\n\r\nexport default router\r\n","import { createApp } from 'vue'\r\nimport App from './app.vue'\r\nimport '../registerServiceWorker'\r\nimport router from './router'\r\nimport store from '@/shared/store'\r\nimport { AppInsights } from './appInsights'\r\n\r\nconst appInsights = new AppInsights;\r\n\r\nappInsights.loadAppInsights()\r\nappInsights.trackPageView()\r\n\r\ncreateApp(App).use(store).use(router).mount('#app')\r\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./alert-box.scss?vue&type=style&index=0&lang=scss\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./application-menu.scss?vue&type=style&index=0&id=74c8f2f5&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./history-search.scss?vue&type=style&index=0&id=57580dd7&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./credit-card-payment.scss?vue&type=style&index=0&id=9698ab6e&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./access-error.scss?vue&type=style&index=0&id=fc7c32ca&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./external-main.scss?vue&type=style&index=0&id=b9f75fe6&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./help-screen.scss?vue&type=style&index=0&id=cfccac6a&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./edit-contract.scss?vue&type=style&index=0&id=d014fc7e&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./top-up-confirmation.scss?vue&type=style&index=0&id=5b0ad335&scoped=true&lang=scss\"","module.exports = __webpack_public_path__ + \"img/logo-white.e2ad0826.svg\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./e-contract-confirmation.scss?vue&type=style&index=0&id=62bf0c87&scoped=true&lang=scss\""],"sourceRoot":""}