{"version":3,"sources":["reducers/appReducer.jsx","actions/actionTypes.js","reducers/vendorsReducer.jsx","reducers/dashboardReducer.jsx","reducers/adminClientVisibilityReducer.jsx","reducers/discretionaryDistributionReducer.jsx","reducers/accountingReducer.jsx","actions/appActions.jsx","services/serviceConstant.js","services/servicecallsInterceptor.js","services/servicecalls.js","services/appServices/appService.js","components/error/errorBoundary.jsx","common/utilities.js","components/NavMenu.jsx","components/Layout.jsx","common/constants.js","services/adminServices/clientVisibilityService.js","components/admin/clientVisibility/usersListColumns.jsx","components/admin/clientVisibility/usersList.jsx","actions/adminClientVisiblityAction.jsx","components/admin/clientVisibility/clientsListColumns.jsx","common/overlayProcessing.jsx","components/admin/clientVisibility/clientsList.jsx","components/admin/clientVisibility/clientVisibility.jsx","services/discritionarydistributionservice/discritionarydistributionservice.js","components/discretionarydistrequest/distributionlistColumn.jsx","actions/discretionaryDistributionAction.jsx","common/pdfViwerModal.jsx","components/discretionarydistrequest/discretiondistributionlist.jsx","components/discretionarydistrequest/discretiondistributioncompletedlist.jsx","components/discretionarydistrequest/discrtionarydistribution.jsx","common/notfound.jsx","components/admin/wiresdetails/wiresListColumns.jsx","services/adminServices/wiresListService.js","components/admin/wiresdetails/wireslist.jsx","components/admin/failedpayments/failedpaymentColumns.jsx","services/adminServices/failedPaymentService.js","components/admin/failedpayments/failedpayments.jsx","components/dashboard/DashBoardViewColumns.jsx","components/clientpayments/paymentsColumn.js","components/clientpayments/paymentsView.jsx","components/clientpayments/payments.jsx","components/accounting/SubAccountsColumns.jsx","common/common.js","components/accounting/ninthWavePopup.jsx","common/messages.jsx","components/accounting/subAccountAddEdit.jsx","services/accountingServices/accountingService.js","components/accounting/confirmationPopup.jsx","common/animation.js","services/billpayservice/billpayservices.jsx","actions/dashboardAction.jsx","components/accounting/clientListPopup.jsx","components/accounting/subAccounts.jsx","actions/accountingActions.js","components/dashboard/DashBoardView.jsx","components/dashboard/DashBoard.jsx","components/dashboard/DashBoardContainer.jsx","components/Home.jsx","common/TelemetryService.js","common/_logging.js","system/MsalUtilities.js","common/genericMsgModal.jsx","components/setupbills/setupbillsview.jsx","services/externalaccountservice/externalAccountService.jsx","components/setupbills/setupBillUtility.js","actions/vendorsAction.jsx","components/setupbills/setupbills.jsx","components/vendors/vendorsColumn.js","components/vendors/vendorsView.jsx","services/vendorService/vendorService.js","components/vendors/howToPayModal.jsx","components/vendors/vendors.jsx","components/uploadinvoice/uploadInvoiceView.jsx","components/uploadinvoice/uploadInvoice.jsx","components/accounting/postingRules/ruleListColumns.jsx","components/accounting/postingRules/postingRulesView.jsx","components/accounting/postingRules/selectValuesPopup.jsx","components/accounting/postingRules/postingRules.jsx","components/accounting/postingRules/postingRulesAllClients.jsx","components/accounting/postingRules/postingRulesContainer.jsx","components/accounting/transactions/transactionColumns.jsx","components/accounting/transactions/sourceData.jsx","components/accounting/transactions/accountingData.jsx","components/accounting/transactions/transactions.jsx","components/accounting/vendors/vendorListColumns.jsx","components/accounting/vendors/vendorAddEdit.jsx","components/accounting/vendors/vendorList.jsx","components/accounting/vendors/allClientsVendorList.jsx","components/accounting/vendors/vendor.jsx","components/accounting/accounting.jsx","components/admin/paymentapprovers/approversListColumns.jsx","services/approversService/approversService.js","components/admin/paymentapprovers/addApprovers.jsx","components/admin/paymentapprovers/paymentApprovers.jsx","components/admin/paymentagreement/agreementListColumns.jsx","services/paymentAgreementService/paymentAgreementService.js","components/admin/paymentagreement/paymentAccountPopup.jsx","common/hooks/useBoolean.jsx","components/admin/paymentagreement/agreementDragDrop.jsx","components/admin/paymentagreement/paymentAgreementLoaUploadPopup.jsx","components/admin/paymentagreement/paymentAgreement.jsx","components/admin/admininstrator.jsx","components/discretionarydistrequest/discretionrequest.js","components/discretionarydistrequest/documents/discretionartdistributiondocColumn.jsx","components/discretionarydistrequest/documents/discretionarydocumentslist.jsx","components/discretionarydistrequest/documents/uploaddiscretionarydistributiondocs.jsx","components/discretionarydistrequest/distributionApprover.jsx","components/discretionarydistrequest/discretionarydistributionSubmitProgress.jsx","components/discretionarydistrequest/newdiscretiondistreqform.jsx","components/discretionarydistrequest/documents/discretionarydistributiondocuments.jsx","components/uploadprivateequity/uploadPrivateEquityView.jsx","services/privateEquityService/privateEquityService.js","components/uploadprivateequity/uploadPrivateEquity.jsx","components/uploadhedgefund/uploadHedgeFundView.jsx","services/hedgefundService/hedgefundService.js","components/uploadhedgefund/uploadHedgeFund.jsx","App.js","AppRoutes.jsx","registerServiceWorker.js","index.js","store/configureStore.jsx"],"names":["initialState","token","env","refresh","user","defaultSelectedMenu","ssoWindow","AppReducer","state","action","type","payload","faFeatures","wireInstruction","mode","clientVendorsList","VendorsReducer","selectedClient","DashBoardReducer","selectedUser","AdminClientVisibilityReducer","selectedDistribution","DiscretionaryDistributionReducer","selectedSubAccount","contextJson","profileJson","AccountingReducer","UPDATE_SELECTED_MENU_VALUE","value","dispatch","Promise","resolve","UPDATE_SSO_WINDOW_INSTANCE","window","baseUrl","location","origin","apiBaseUrl","store","getState","app","REACT_APP_API_BASEURL","getEnvironmentVariableUrl","validateABAUrl","submitDiscritionaryDistributionUrl","updateDiscritionaryDistributionUrl","getDiscritionaryDistributionListUrl","getCompletedDiscritionaryDistributionListUrl","getDiscritionaryDistributionUrl","financialAdvisorsFeatureUrl","updatedistributionStatusUrl","fetchDistributionDocumentsUrl","uploadDiscretionaryDistributionDocsUrl","getDiscretionaryDocumentsListUrl","deleteDiscrtionaryDocumentUrl","deleteDiscrtionaryDistributionUrl","uploadPrivateEquitiesUrl","uploadHedgeFundsUrl","fetchSubAccountCategoriesUrl","axios","interceptors","request","use","config","error","console","log","reject","response","isCancel","data","status","headers","message","logErrors","Get","url","cancellationSource","method","cancelToken","Post","requestBody","PostMultiPart","onUploadProgress","progressEvent","getEnvironmentVariablesCancellationToken","getfaFeaturesCancellationToken","ErrorBoundary","props","hasError","errorInfo","this","align","className","children","React","Component","getPreferenceValue","featuresList","featurename","Array","isArray","length","i","featureName","showFeature","arrayFilterByValue","array","string","searchkeylist","filteredArr","filter","o","Object","keys","some","k","includes","undefined","toString","toLowerCase","formatInCurrency","val","isNaN","parseFloat","toLocaleString","style","currency","toUTF8Array","str","utf8","charcode","charCodeAt","push","addIndexToList","arr","formatMoney","amount","decimalCount","minimumFractionDigits","e","roundvalue","decimals","toFixed","Header","Layout","NavMenu","openCloseAdminDropdown","source","adminDropdownOpen","setState","openCloseAdminSubMenuDropdown","adminSubMenuDropdownOpen","handleSubMenuItemClick","event","stopPropagation","then","res","history","toggle","bind","RefreshApplication","handleMenuItemClick","isOpen","selectedKey","dashBoardDropdownOpen","prevProps","authProvider","logout","REFRESH_APP","document","dispatchEvent","CustomEvent","bubbles","key","position","zIndex","width","minHeight","id","theme","selectedKeys","lineHeight","display","justifyContent","Item","onClick","fontSize","fontWeight","title","onMouseOver","prevState","onMouseLeave","Dropdown","DropdownToggle","DropdownMenu","DropdownItem","evt","handleDashBoardMenuItemClick","direction","showUserPlanner","icon","UserOutlined","userName","LogoutOutlined","logoutUser","PureComponent","mapDispatchToProps","isRefresh","connect","withRouter","Content","Footer","marginTop","textAlign","packageJson","buildNumber","MsgForNoData","errorMsg","MsgForFailedData","MessageType","MessageClass","alphanumericFormat","basicAlphaNumeric","getUsersListCancellationToken","getClientsListCancellationToken","manageRCMUserOrgCancellationToken","customCaretSort","order","column","UsersList","rowClassForSelectedUser","row","cssClass","rcmUserId","usersList","filtereduserList","handleOnAssignClient","fetchUsersList","UpdateClientVisibilitySelectedUser","gsap","to","duration","opacity","onComplete","cancel","CancelToken","userListRes","catch","err","getUsersList","target","filterArr","placeholder","onChange","handleOnSearchUserChange","keyField","columns","dataField","text","headerClasses","classes","headerAlign","sort","sortCaret","formatter","cell","cursor","isDummyField","bordered","rowClasses","noDataIndication","getClientsListColumn","handleOnClientSelect","editable","checked","OverlayProcessing","innerClass","documents","ClientsList","clientsList","filterdClientList","showOverlay","searchClientStr","fetchClientsList","email","useremail","clientsListRes","getClientsList","isUserBelongToOrg","orgId","pkId","manageUserOrgRes","response_status","manageRCMUserOrg","pKid","handleOnSearchClientChange","adminClientVisibility","ClientVisibility","SubmitDiscritionaryDistributionCancellationToken","GetEntityInfomationCancellationToken","GetDiscretionaryDistributionCancellationToken","GetDiscretionaryDistributionInfoCancellationToken","CreateDocuSignEnvelopDDCancellationToken","CreateDistributionPdfCancellationToken","UpdateDiscritionaryDistributionCancellationToken","FetchDiscretionDistributionDocumentCancellationToken","GetCompletedDiscretionaryDistributionCancellationToken","UpdateDiscritionaryDistributionStatusCancellationToken","GetDiscretionaryDistributionDocumentListCancellationToken","DeleteDiscretionaryDistributionDocumentCancellationToken","DeleteDiscretionaryDistributionCancellationToken","SubmitDiscritionaryDistribution","byteArr","JSON","stringify","GetCompletedDiscretionaryDistribution","emailId","showAllTxn","CreateDocuSignEnvelopDD","distributionId","CreateDistributionPdf","FetchDiscretionDistributionDocument","doctype","documentId","UpdateDiscritionaryDistributionStatus","DeleteDiscretionaryDistributionDoc","docId","Delete","UpdateDiscretionaryDistributionMode","PdfViwerModal","modalHeight","innerHeight","Modal","modalState","toggleModal","backdrop","size","wrapClassName","modalClassName","contentClassName","centered","ModalHeader","charCode","ModalBody","pdfdata","src","height","frameBorder","animation","variant","DiscretionDistributionList","distributionList","filteredDistrubtionList","searchText","isLoading","pdfViewerState","handleEditClick","handleViewClick","openDocument","handleViewDocumentsClick","togglePdfViewer","handleDeleteClick","defaultDistributionSorted","fetchDiscretionaryDistribution","GetDiscretionaryDistribution","searchString","updatedDistributionList","DeleteDiscretionaryDistribution","distributionID","info","entityId","doc","color","Spinner","filterDistrubtion","handleOnNewDistribution","sortFunc","a","b","Date","map","approval","index","approvalStatus","approvalDateTime","approver","fullName","isEsignDocExist","isEsignedDocExist","events","placement","onConfirm","okText","cancelText","defaultSorted","DiscretionDistributionCompletedList","TabPane","Tabs","DiscrtionaryDistribution","defaultActiveKey","animated","tab","Notfound","subTitle","extra","replace","getWiresListCancellationToken","WiresList","wiresList","filterdWiresList","fromDate","moment","subtract","toDate","defaultWiresListSorted","onToDateChange","onFromDateChange","fetchWiresList","ActiveKey","wiresListRes","getWiresList","format","wires","response_data","updatedWiresList","date","Label","showToday","allowClear","handleOnSearchChange","getFailedPaymentColumns","retryFailedPayment","paymentItems","actionCode","actionName","getFailedPaymentsCancellationToken","retryFailedPaymentsCancellationToken","getFailedPaymentList","failedPaymentRes","filterPaymentByText","payments","filtered","lowerCaseText","p","clientName","legalEntityId","vendorName","statusCode","statusDesc","dueDate","memo","useState","searchtext","setSearchText","failedPayments","setFailedPayments","filteredPayments","setFilteredPayments","useSelector","setIsLoading","useEffect","useCallback","nextActions","clientId","StatusCode","StatusDesc","Processor","processor","ConfirmationType","confirmationType","ConfirmationId","confirmationId","CreatedOn","createdOn","UpdatedOn","updatedOn","NextActions","StatusName","statusName","ActionCode","ActionName","updatePaymentRes","updateFailedPayment","success","_searchText","SubMenu","Menu","openWindow","_url","matrixItem","dynamicsLegalEntity","open","screen","availWidth","availHeight","ContextualMenu","items","letterSpacing","paddingLeft","overlay","ItemGroup","REACT_APP_DYNAMICS_ACCOUNTING_URL","item","feature","REACT_APP_REPORTING_URL","formatMenuItems","preventDefault","getPaymentsColumn","retryPayment","class","paymentStatus","PaymentsView","Form","FormGroup","controlId","autoComplete","name","search","backFromPayments","paymentsList","Payments","componentDidMount","activeClient","originalPaymentsList","updatedPaymentsList","rows","alert","openUploadInvoice","openVendors","getSubAccountsGridColumn","editSubAccount","add","handleTransactions","features","headerFormatter","isAggregated","accountKey","decodeJwtToken","base64","split","jsonPayload","decodeURIComponent","atob","c","slice","join","parse","exception","getNestedObject","nestedObj","pathArr","reduce","obj","NinthWavePopup","openNinthwaveModelPopup","toggleNinthwaveModelPopup","REACT_APP_NW_DbUrl","APPINSIGHTS_INSTRUMENTATIONKEY","splittedName","firstName","lastName","firstname","lastname","ThemeType","DARK","azureAdId","nwDbUrl","acctSelectionMode","AccountSelectionMode","SINGLE","appInsightKey","Messages","messages","containerClass","msg","SubAccountsAddEdit","showNinthWaveWidget","handleFormChanges","activeAccount","isLinkAccountDisabled","openConfirmationPopup","handleDropdownChange","save","categoryLevel1Type","categoryLevel2Type","getBankName","bankRoutingNumberErrorMsg","isCategoryLevel1Open","setIsCategoryLevel1Open","isCategoryLevel2Open","setIsCategoryLevel2Open","shortName","disabled","for","required","prevIsCategoryLevel1Open","caret","categoryCode1","prevIsCategoryLevel2Open","categoryCode2","bankRoutingNumber","onBlur","bankName","bankAccount","fetchSubAcctCategoriesCancellationToken","getSubAccountListServiceCancellationToken","addEditSubAccountServiceCancellationToken","linkSubAccountServiceCancellationToken","unlinkSubAccountServiceCancellationToken","validateABACancellationToken","getVendorListServiceCancellationToken","getVendorListService","addEditVendorServiceCancellationToken","addEditVendorService","reqPayload","getRuleServiceCancellationToken","getRuleListService","addEditRuleServiceCancellationToken","addEditRuleService","serviceUrl","getInstitutionServiceCancellationToken","getInstitutionService","getAccountSubaccountServiceCancellationToken","getAccountSubaccountService","getMainAccountServiceCancellationToken","getMainAccountService","getTransactionListServiceCancellationToken","getTransactionListService","getTransactionsSourceDataServiceCancellationToken","getTransactionsAccountingDataServiceCancellationToken","ConfirmationPopup","openConfirmationModelPopup","toggleConfirmationModelPopup","confirmationMessage","confirmationPopupSource","confirmAction","ModalFooter","animateViewTable","from","wireInstructionFormAnimation","getVendorCancellationToken","getCountryStateCancellationToken","createVendorPaymentInstructionForWireCancellationToken","GetPaymentListServiceCancellationToken","GetWireInstructionCancellationToken","GetPayTermsCancellationToken","GetContextualMenuItemsCancellationToken","BillDotComSsoLogCancellationToken","GetPaymentListService","userid","getPayTerms","groupCode","UpdateSelectedClient","ClientListPopup","isClientListPopupOpen","toggleClientListPopup","setShowOverlay","setClientsList","useDispatch","updateActiveClient","fetchClientList","prevShowOverlay","handleSelectClient","getClientGridColumn","SubAccounts","setActiveAccount","setMode","setShowNinthWaveWidget","setOpenNinthwaveModelPopup","disableLinkedAccount","setDisableLinkedAccount","subAccountsList","setSubAccountsList","gridData","setGridData","filterKey","setFilterKey","setCategoryLevel1Type","setCategoryLevel2Type","setActiveClient","setIsLinkAccountDisabled","setOpenConfirmationModelPopup","setConfirmationMessage","setConfirmationPopupSource","changedCategoryInfo","setChangedCategoryInfo","deleteAccountKey","setDeleteAccountKey","setBankRoutingNumberErrorMsg","setIsClientListPopupOpen","prevActiveClient","addEventListener","handleNinthWaveAccountAdd","removeEventListener","catResponse","fetchSubAccountCategories","category1","category2","getSubAccountList","pervFilterKey","isSave","delink","checkRequiredFields","prevBankRoutingNumberErrorMsg","pkid","getSubAccountListService","code","subAcctList","detail","accounts","account","accountsListsJson","linkSubAccountService","fullAccountNumber","btoa","accountStatus","accountType","routingTransitNumber","accountNumber","fiName","fiid","prevActiveAccount","financialInstitutionKey","accountId","parseInt","prevOpenNinthwaveModelPopup","prevIsClientListPopupOpen","prevConfirmationMessage","prevOpenConfirmationModelPopup","prevConfirmationPopupSource","unlinkSubAccount","prevShowNinthWaveWidget","bankType","category","canAggregate","updateSubAccount","UpdateSelectedSubAccount","reqJson","addEditSubAccountService","deLinkSubAccount","prevMode","deleteAccount","unlinkSubAccountService","prevDeleteAccountKey","prevIsLinkAccountDisabled","selectRow","clickToSelect","hideSelectColumn","onSelect","filteredAcct","handleFilter","clearFilter","number","canaggregate","matchUrl","changedBankType","categoryType","inputABA","abaNumber","abaResponse","Code","validateABA","ABANumbers","bankname","aba","BankCode","BankName","DashBoardView","openClientsPayments","openSubAccounts","backFromSubAccounts","controlid","filteredClientsList","viewInvoice","uploadInvoice","goToVendors","goToPayments","openInboxWindow","goToSubAccounts","contextualMenu","deeplinkInbox","ssOlinkInbox","deeplinkBill","ssOlinkBill","noOfPaymentsFailed","deeplinkPay","ssOlinkPay","renderConditionalView","DashBoard","backFromUploadInvoice","updatedClientList","cloneDeep","backSubAccounts","setStat","showloading","fetchPaymentList","fetchContextualMenuItems","deeplinkUrl","ssoUrl","billDotComTrackingSsoLogService","windowObj","closed","focus","setTimeout","getContextualMenuItems","DashBoardContainer","useHistory","useRouteMatch","pathname","useLocation","activeTabKey","setActiveTabKey","onTabChanges","tabKey","newlocation","activeKey","exact","path","component","Home","currentComponet","comp","TelemetryService","sessionInstrumentationKey","instrumentationKey","browserHistory","createBrowserHistory","basename","reactPlugin","ReactPlugin","appInsights","ApplicationInsights","maxBatchInterval","disableFetchTracking","disableAjaxTracking","isStorageUseDisabled","extensions","extensionConfig","identifier","loadAppInsights","_logException","errorMessage","ai","clearAuthenticatedUserContext","getTelemetryInitializer","addTelemetryInitializer","trackException","Error","severityLevel","SeverityLevel","addCustomData","flush","_logInformation","infoMessage","trackTrace","Information","telemetryInitializer","envelope","tags","customData","userEmail","ClientOnlineMsalProvider","msalInstance","msalConfig","getMsalInstance","is_safari","navigator","userAgent","indexOf","auth","REACT_APP_AZURE_CLIENTID","authority","REACT_APP_AZURE_AUTHORITY","postLogoutRedirectUri","redirectUri","navigateToLoginRequestUrl","cache","cacheLocation","storeAuthStateInCookie","storeInMemory","system","iframeHashTimeout","windowHashTimeout","loadFrameTimeout","loggerOptions","logLevel","LogLevel","Verbose","loggerCallback","msalLogger","piiLoggingEnabled","telemetry","applicationName","applicationVersion","version","tokenRenewalOffsetSeconds","PublicClientApplication","level","containPii","Warning","warn","interactionBasedLogin","loginHint","scopes","prompt","tokenRequest","forceRefresh","acquireTokenRedirect","ssoLogin","ssoRequest","ssoSilent","GenericMessageModal","movetodashboard","selectClientModalState","toggleSelectClientModal","Button","SetupBillsView","backFromVendors","activeTab","billInformation","vendorpaymenttype","handleVendorNameOnBlur","vendorbasics","vendorname","s","handleVendorNameChange","vendorNameErr","isLargeVendor","isTypesOfVendorOpen","typesOfVendorToggle","vendortype","typesOfVendors","typesOfVendorChange","vendorTypeErr","accountnumberwithvendor","isPayTermOpen","payTermToggle","vendorpayterm","payTermsList","handlePayTermChange","paymentinfo","isFromAcctOpen","fromAcctToggle","clientFromAccts","acct","handleFromAcctChange","accountNo","isTypesOfPartyOpen","typesOfPartyToggle","partydisplayvalue","typesOfParties","typesOfPartyChange","countryErr","maxLength","country","handleOnBlur","routingNumber","routingNumErr","beneficiaryDetailsAccountNumber","beneficiaryDetailsVendorname","beneficiaryDetailsAddressline1","beneficiaryDetailsAddressline2","beneficiaryDetailsAddressline3","line1","line2","line3","line4","furtherCreditAccountNumber","furtherCreditName","furtherCreditAddressLine1","furtherCreditAddressLine2","furtherCreditAddressLine3","furtherCredit2AccountNumber","furtherCredit2Name","furtherCredit2AddressLine1","furtherCredit2AddressLine2","furtherCredit2AddressLine3","genericModalMsg","getEligibleFromAccountCancellationToken","generatePaymentInstructionRequest","vendorparentid","paytoname","generateCheckPmtInst","vendortypevalue","vendorpaytermrefcode","isThirdParty","generateWirePmtInst","ViewWireInstructions","SetupBills","currentTabValid","validationBillInformation","primarycontactemail","vendoraddress","vendorbanklocation","wirePurpose","paymentnotificationemail","phone","fax","errormsgIndex","findIndex","splice","toggleAutoPaySetup","checkPhoneNoFormat","checkEmailFormat","vendorToggle","vendorChange","combinePaymentsToggle","combinePaymentsChange","disableNextBtn","isSaveDisabled","clearData","getVendorList","accountOwnershipToggle","accountOwnershipChange","handleNewStandingInstructionChange","getCountryStateList","addressCountryToggle","stateProvinceChange","addressCountryChange","stateProvinceToggle","prepopulateData","requesterId","portalid","authToken","contextjson","profilejson","vendorZipcode","addressline1","addressline2","addressline3","addressline4","city","stateprovince","zippostalcode","autopaysetup","accountOwnership","accountNickname","newStandingInstruction","standingInstructionNickname","contacts","vendordescription","additionalInformation","taxid","vendor","vendorsince","leadtimedays","combinepayments","paymentterms","companyname","isVendorOpen","listOfVendors","isCombinePaymentsOpen","combinePaymentsTypes","isPaymentTermsOpen","paymentTermsTypes","isAddressCountryOpen","isStateProvinceOpen","vendorList","isAccountOwnershipOpen","accountOwnershipTypes","vendorOptions","isloading","requestFailed","stateList","countryList","vendorid","orgid","fetchFromAccountsForClient","fetchPayTermAndInstructions","fetchPayTerms","fetchWireInstruction","getEligibleFromAccount","vendorId","getWireInstructions","wireDetails","refcode","paytermval","referenceId","clonedState","paymentInstruction","accNumber","getVendorType","getPaymentTermValue","paymentTermId","BankAcctFromAcctId","IsThirdParty","getPartyType","BeneficiaryBankRoutingId","BeneficiaryBankName","DestinationCountry","BeneficiaryAcctId","BeneficiaryName","BeneficiaryNameAddrLine1","BeneficiaryNameAddrLine2","BeneficiaryNameAddrLine3","FurtherCredit1_AccountNumber","FurtherCredit1_NameLine1","FurtherCredit1_NameLine2","FurtherCredit1_NameLine3","FurtherCredit1_NameLine4","FurtherCredit2_AccountNumber","FurtherCredit2_NameLine1","FurtherCredit2_NameLine2","FurtherCredit2_NameLine3","FurtherCredit2_NameLine4","WireDisbursementDetail1","WireDisbursementDetail2","WireDisbursementDetail3","WireDisbursementDetail4","assign","vendorlist","isVendorNameExist","partytype","fromaccount","payterm","combinePayments","returnValue","vendorPaymentInstructionForWireDetails","CreateVendorPaymentInstructionForWireService","error_code","toggleVendorList","phoneNoFormat","test","emailFormat","zipFormat","numberFormat","getVendorService","entries","nameOnCheck","getCountryStateService","vendors","dashboard","getVendorColumn","openWireInstruction","openBilldotcomVendor","getActiveStatus","VendorsView","addVendor","rowEvents","rowIndex","searchVendorListCancellationToken","HowToPayModal","onModalOpen","howToPayModalState","toggleHowtoPayAcceptModal","onOpened","toggleHowToPayAcceptModal","payUsingWire","payUsingOtherPayment","Vendors","fetchVendorList","updatedVendorList","originalVendorList","searchVendorList","UpdateClientVendorsList","afterSettingWireInstruction","REACT_APP_OTHER_PAYMENT_METHOD_URL","billdotComSso","deepLink","list","Dragger","Upload","UploadInvoiceView","uploadProps","accept","multiple","customRequest","onSuccess","onError","onProgress","file","onFileUpload","onFileUploadStatusChange","listType","FormData","append","docUploadRes","uploadInvoices","uploadRes","percent","Math","round","loaded","total","UploadInvoice","match","params","getRuleGridColumn","editRule","renderText","condition","description","payeeText","isexclude","coaaccountno","subaccountid","subaccountno","isrename","renameddesc","PostingRulesView","activeRule","toggleAddEditPopup","isAddEditOpen","toggleSelectValuesPopup","isContainsOpen","setIsContainsOpen","containsOptions","rulename","institutionname","sourcecoaaccountno","sourcecoaaccountname","isTransactionType","transactionname","transactioncode","vendortrantypeid","iscondition","prevIsContainsOpen","coaaccountname","subaccountname","SelectValuesPopup","isSelectValuesPopupOpen","handleValueChange","selectValuesPopupData","prevFilterKey","handleAccountFilter","clearAccountFilter","getKey","institutionColumn","mainAccountColumn","subAccountColumn","payeeColumn","transactionColumn","getGridColumn","PostingRules","ruleList","setRuleList","setActiveRule","setVendorList","setIsAddEditOpen","setIsSelectValuesPopupOpen","institutionList","setInstitutionList","subAccountList","setSubAccountList","mainAccountList","setMainAccountList","setSelectValuesPopupData","modified","setModified","transactions","setTransactions","getRuleList","getInstitutionList","getSubAccountsList","getMainAccountsList","getTransactionList","saveRule","rcmPayeeId","sid","mainSource","prevIsSelectValuesPopupOpen","prevAddEditOpen","filteredRule","editrow","clientorgid","clientid","isallinstitutions","accountinstitutionid","pervModified","prevActiveRule","tranname","trancode","vendortrantypid","selectedrow","mainaccountid","PostingRulesAllClients","PostingRulesContainer","activetabKey","getSourceDataColumns","accountnickname","floor","roundUnitValue","ispending","SourceData","sourceData","setSourceData","filterSourceData","setfilterSourceData","fetchSourceData","Account","getTransactionsSourceDataService","activities","handleOnSearchTransaction","AccountingData","accountingData","setAccountingData","filterAccountingData","setfilterAccountingData","subaccount","getTransactionsAccountingDataService","Transactions","goBack","enhancement","compose","accounting","getVendorsGridColumn","editVendor","VendorAddEdit","activeVendor","VendorsList","setActiveVendor","filteredVendor","payee","prevActiveVendor","AllClientsVendorsList","Vendor","Accounting","getActiveTab","currentRoute","tabPosition","render","getApproversListColumn","addApprover","editApprover","getApproversListServiceCancellationToken","addApproverServiceCancellationToken","deleteApproverServiceCancellationToken","editApproverServiceCancellationToken","AddApprovers","emailid","wsportaluserid","setApprover","isEmailValid","setIsEmailValid","selectedApprover","prevIsEmailValid","prevApprover","clear","setShowAdd","prevShowAdd","addApproverService","editApproverService","handleBlur","PaymentApprovers","approversList","setApproversList","filteredApproversList","setFilteredApproversList","showAdd","showConfirmationPopup","setShowConfirmationPopup","setSelectedApprover","getData","getApproversListService","pervShowConfirmationPopup","approverid","deleteApproverService","getAgreementListColumn","addViewLOA","openPaymentsAccountPopup","newDate","dd","getDate","mm","getMonth","yyyy","getFullYear","getDateString","docLocation","fetchLOADocumentCancellationToken","updatePaymentAccountServiceCancellationToken","GetPartyIdListServiceCancellationToken","GetPartyIdListService","PaymentAccountPopup","isOpenPaymentsAccountPopup","togglePaymentsAccountModelPopup","paymentAccount","setPaymentAccount","partyIdList","setPartyIdList","isPartyIdopen","setIsPartyIdopen","paymentPartyId","setPaymentPartyId","payAcct","partyId","getPartyIdList","updatePaymentAccountService","partyid","partyname","prevIsPartyIdopen","useBoolean","initialValue","setValue","setBooleanValue","AgreementDragDrop","formData","UploadPaymentLOA","PaymentAgreementLoaUploadPopup","PaymentAgreement","clientList","setClientList","setSelectedClient","setPdfdata","setIsOpenPaymentsAccountPopup","isLoaViewerOpen","toggleLoaViewer","isLoaUploadModalOpen","toggleLoaUploadModal","getPDFData","FetchLOADocument","prevIsOpenPaymentsAccountPopup","paymentloadoc","Admininstrator","unregisterRouteListner","listen","activeKeyTab","DiscretionDistributionRequest","DistributionID","RequestDate","TrustTitle","EntityNumber","CurrentValuation","EstdAnnualNetIncome","DistributionAmount","Grantor","Trustees","TrustCompanyName","TrusteeAction","PrimaryBeneficiaries","Termination","DiscretionaryDistProvision","RequestedDistribution","Recommendation","SkippingTaxableEvent","ApprovedText","Approvers","DistributionApprover","EmailAddress","FullName","FirstName","MiddleName","LastName","IsTrustCompanyTrustee","SignatureOrder","IndInclude","requestApproversList","approvers","distributionAppr","emailAddress","indInclude","isTrustCompanyTrustee","signatureOrder","middleName","getDiscretionaryDocumentColumns","deleteDocument","DeleteFilled","DiscretionaryDocumentsList","documentsList","fetchDiscretionaryDocumentsList","GetDiscretionaryDistributionDocumentList","docType","documentType","documentName","UploadDiscretionaryDistributionDocs","UploadDiscretionaryDocument","approverIncludeChange","readOnly","Step","Steps","DiscretionarydistributionSubmitProgress","current","currentProcess","currentProcessStatus","NewDiscretionaryDistributionReqForm","discretionaryRequest","defaultDate","displayCurrentValuation","displayEstimatedNetIncome","distributionApproversList","showOverlayProgress","trustCompanyApprCheckbox","handleRequestDateChange","prepopulateFields","closeShowProgress","trustCompanyApprChange","fetchDistributionInformation","GetDiscretionaryDistributionInfo","populateEditableFields","controlType","updateRequest","submitRequest","isApproversIncluded","RequestorEmail","UpdateDiscritionaryDistribution","pdrRes","docusignRes","statusRes","warning","trustTitle","entityNumber","grantor","trustees","trustCompanyName","trusteeAction","remainderProvisions","discretionaryDistProvision","primaryBeneficiaries","currentValuation","estdAnnualNetIncome","distributionAmount","termination","requestedDistribution","recommendation","skippingTaxableEvent","approvedText","requestDate","isPresent","isTrustCompanyApproverPresent","includeExcludeTrustCompanyAppr","excludeNonEmailAdditionalApprover","trustee","legalName1","grantors","distributionProvisions","beneficiaryName","estimatedAnnualNetIncome","trustCommitteeSignature","lsApproverWithInclude","addIncludeIndicatorToList","isIncluded","GetEntityInfomation","clearReq","getCommaSeparatedTrusteeApprovers","clonedApproverList","uniqueIdx","fetchEntityInformation","handleAmtOnBlur","onFocus","handleAmtFieldFocus","cols","htmlFor","top","showFileUploader","appr","onCancel","onSave","onSubmit","discretionaryDistribution","DiscretionaryDistributionDocuments","UploadPrivateEquityView","fileUploadRes","UploadPrivateEquityFile","UploadPrivateEquity","UploadHedgeFundView","UploadHedgeFundFile","UploadHedgeFund","clientOnlineProvider","App","fetchPrefernces","faResponse","getfaFeatures","featuredata","INSERT_FA_FEATURES","routes","getApplicationRoutes","loginSuccess","routeList","showAuthError","showTaskPlanner","loginUser","showDrawer","setTokenRefreshListner","ADD_ENV_VARIABLES","environment","afterEnv","reRender","setInterval","intervalTime","isRefreshRequired","parsedToken","issuedTime","expirationTime","currentTime","valueOf","isTokenRefreshRequired","silentLogin","handleRedirectPromise","processAfterAquiringToken","getAllAccounts","username","acquireTokenSilent","REACT_APP_AZURE_APISCOPE","silentres","silentRes","processAfterAcquiringToken","preferred_username","getLoggedInUser","accessToken","faEmail","ADD_TOKEN","ADD_FADetail","fallback","appRoute","closable","destroyOnClose","visible","onClose","onCloseTaskPlanner","innerWidth","variables","featureList","Boolean","hostname","getElementsByTagName","getAttribute","reducers","middleware","thunk","enhancers","rootReducer","combineReducers","createStore","applyMiddleware","configureStore","initialReduxState","rootElement","getElementById","Headers","fetch","json","href","environmentRes","getEnvironmentVariables","ReactDOM","serviceWorker","ready","registration","unregister"],"mappings":"iSAEMA,EAAe,CACjBC,MAAO,KACPC,IAAK,GACLC,SAAQ,EACRC,KAAM,GACNC,oBAAqB,KACrBC,UAAW,MAGR,SAASC,IAAuC,IAA5BC,EAA2B,uDAArBR,EAAcS,EAAO,uCAElD,OAAOA,EAAOC,MAGV,IChBoB,eDkBhB,OAAO,eACAF,EADP,CAEIP,MAAQQ,EAAOE,UAIvB,ICvB4B,uBDwBxB,OAAO,eACAH,EADP,CAEIN,IAAKO,EAAOE,UAGpB,IC5Be,cD6BX,OAAO,eACAH,EADP,CAEIL,QAASM,EAAOE,UAGxB,ICjCc,SDkCV,sBACOH,EADP,CAEIJ,KAAMK,EAAOE,UAIrB,IClC4B,uBDmCxB,OAAO,eACAH,EADP,CAEII,WAAYH,EAAOE,UAI3B,ICxC4B,uBDyCxB,OAAO,eACAH,EADP,CAEIH,oBAAqBI,EAAOE,UAIpC,IC9CyB,oBD+CrB,OAAO,eACAH,EADP,CAEIF,UAAWG,EAAOE,UAM1B,QACA,OAAOH,GEjEf,IAAMR,EAAe,CACjBa,gBAAiB,KACjBC,KAAM,KACNC,kBAAmB,IAGhB,SAASC,IAA2C,IAA5BR,EAA2B,uDAArBR,EAAcS,EAAO,uCAEtD,OAAOA,EAAOC,MAGV,IDT4B,uBCWxB,OAAO,eACAF,EADP,CAEIK,gBAAkBJ,EAAOE,QACzBG,KAAML,EAAOK,OAIrB,IDhBiC,2BCkBzB,OAAO,eACAN,EADP,CAEIO,kBAAmBN,EAAOE,UAItC,QACA,OAAOH,GC7Bf,IAAMR,EAAe,CACjBiB,eAAgB,MAGb,SAASC,IAA6C,IAA5BV,EAA2B,uDAArBR,EAAcS,EAAO,uCAExD,OAAOA,EAAOC,MAGV,IFN8B,yBEQ1B,OAAO,eACAF,EADP,CAEIS,eAAiBR,EAAOE,UAIhC,QACA,OAAOH,GClBf,IAAMR,EAAe,CACjBmB,aAAc,MAGX,SAASC,IAAyD,IAA5BZ,EAA2B,uDAArBR,EAAcS,EAAO,uCAEpE,OAAOA,EAAOC,MAGV,IHJ8C,yCGM1C,OAAO,eACAF,EADP,CAEIW,aAAeV,EAAOE,UAI9B,QACA,OAAOH,GClBf,IAAMR,EAAe,CACjBc,KAAM,KACNO,qBAAsB,MAGnB,SAASC,IAA6D,IAA5Bd,EAA2B,uDAArBR,EAAcS,EAAO,uCAExE,OAAOA,EAAOC,MAGV,IJJ8C,yCIM1C,OAAO,eACAF,EADP,CAEIa,qBAAuBZ,EAAOE,QAC9BG,KAAML,EAAOK,OAIrB,QACA,OAAON,GCpBf,IAAMR,EAAe,CACjBuB,mBAAoB,KACpBC,YAAa,KACbC,YAAY,MAGT,SAASC,IAA8C,IAA5BlB,EAA2B,uDAArBR,EAAcS,EAAO,uCAEzD,OAAOA,EAAOC,MAEV,ILAmC,8BKE/B,OAAO,eACAF,EADP,CAEIe,mBAAqBd,EAAOE,UAIpC,QACA,OAAOH,G,2DCuBR,IAAMmB,EAA6B,SAACC,GAAD,OAAW,SAACC,GAClD,OAAOC,QAAQC,QACVF,EAAS,CACLnB,KNrCuB,uBMsCvBC,QAASiB,OAKd,SAASI,EAA2BC,GACxC,MAAO,CACHvB,KN5CyB,oBM6CzBC,QAASsB,G,oBCrDbC,EAAUD,OAAOE,SAASC,OAGjBC,EAAa,WACtB,OAAOC,GAAMC,WAAWC,IAAItC,IAAIuC,uBAIvBC,EAAyB,UAAMR,EAAN,sCAI3BS,EAAiB,oDAWfC,EAAkC,UAAMV,EAAN,sCAClCW,EAAkC,UAAMX,EAAN,yCAClCY,EAAmC,UAAMZ,EAAN,uCACnCa,EAA4C,UAAMb,EAAN,gDAC5Cc,EAA+B,UAAMd,EAAN,+CAI/Be,EAA2B,UAAMf,EAAN,0BAC3BgB,EAA2B,UAAOhB,EAAP,+CAC3BiB,EAA6B,UAAMjB,EAAN,2CAE7BkB,EAAsC,UAAMlB,EAAN,iDACtCmB,EAAgC,UAAMnB,EAAN,4DAChCoB,EAA6B,UAAMpB,EAAN,6DAC7BqB,EAAiC,UAAMrB,EAAN,yCACjCsB,EAAwB,UAAMtB,EAAN,4CACxBuB,EAAmB,UAAMvB,EAAN,mCAEnBwB,EAA4B,UAAMxB,EAAN,6CC1CzCyB,IAAMC,aAAaC,QAAQC,KAAI,SAAUC,GAErC,OAAOA,KACN,SAAUC,GAGX,OADAC,QAAQC,IAAI,oBAAqBF,GAC1BlC,QAAQqC,OAAOH,MAI1BL,IAAMC,aAAaQ,SAASN,KAAI,SAAUM,GAEtC,OAAOA,KACN,SAAUJ,GAGX,OAIJ,SAAmBA,GACXL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGRA,EAAMI,SAGNH,QAAQC,IAAI,OAAQF,EAAMI,SAASE,KAAM,SAAUN,EAAMI,SAASG,OAAQ,UAAWP,EAAMI,SAASI,SAC7FR,EAAMH,QAIbI,QAAQC,IAAIF,EAAMH,SAGlBI,QAAQC,IAAI,QAASF,EAAMS,SAE/BR,QAAQC,IAAIF,EAAMD,SAvBtBW,CAAUV,GACHlC,QAAQqC,OAAOH,MA0BVL,SAAf,EC1CM,SAASgB,GAAIC,EAAKC,GACrB,IAAI5E,EAAQqC,GAAMC,WAAWC,IAAIvC,MAC7BuE,EAAU,CACV,eAAgB,iDAChB,8BAA+B,IAE/B,gBAAiB,WACjB,yBAA0B,IAC1B,cAAgB,UAAhB,OAA2BvE,IAGhC,OAAO0D,GAAM,CACRmB,OAAQ,MACRF,IAAKA,EACLJ,QAASA,EACTO,YAAcF,GAAsBA,EAAmB5E,MAAU4E,EAAmB5E,MAAQ,OAI7F,SAAS+E,GAAKJ,EAAKK,EAAaJ,GACnC,IAAI5E,EAAQqC,GAAMC,WAAWC,IAAIvC,MAC7BuE,EAAU,CACV,eAAgB,iDAChB,8BAA+B,IAE/B,gBAAiB,WACjB,yBAA0B,IAC1B,cAAgB,UAAhB,OAA2BvE,IAG/B,OAAO0D,GAAM,CACTmB,OAAQ,OACRF,IAAKA,EACLN,KAAMW,EACNT,QAASA,EACTO,YAAcF,GAAsBA,EAAmB5E,MAAU4E,EAAmB5E,MAAQ,OAK7F,SAASiF,GAAcN,EAAKK,EAAaJ,EAAoBM,GAChE,IAAIlF,EAAQqC,GAAMC,WAAWC,IAAIvC,MAE7BuE,EAAU,CAEV,8BAA+B,IAC/B,cAAgB,UAAhB,OAA2BvE,IAG/B,OAAO0D,GAAM,CACTmB,OAAQ,OACRF,IAAKA,EACLN,KAAMW,EACNT,QAASA,EACTW,iBAAkBA,EAAkB,SAACC,GAAoBD,EAAiBC,IAAiB,KAC3FL,YAAcF,GAAsBA,EAAmB5E,MAAU4E,EAAmB5E,MAAQ,OCrD7F,IAAIoF,GAA2C,KAC3CC,GAAiC,K,wBC4B3BC,G,YA9Bb,WAAYC,GAAQ,IAAD,8BACjB,4CAAMA,KACDhF,MAAQ,CAAEiF,UAAU,GAFR,E,+EAUDzB,EAAO0B,GAEvBzB,QAAQC,IAAI,mBAAoBF,EAAO0B,K,+BAIvC,OAAIC,KAAKnF,MAAMiF,SAGT,yBAAKG,MAAM,SAASC,UAAU,uBAC1B,kBAAC,KAAD,CAAMnF,KAAK,SAASmF,UAAU,0BAC9B,qGAKHF,KAAKH,MAAMM,Y,gDArBY9B,GAE9B,MAAO,CAAEyB,UAAU,O,GARGM,IAAMC,W,uBCuE3B,SAASC,GAAmBC,EAAcC,GAC7C,IAAIvE,EAAQ,GAEZ,GAAGsE,GAAgBE,MAAMC,QAAQH,IAAiBA,EAAaI,OAAQ,EACnE,IAAI,IAAIC,EAAE,EAAGA,EAAGL,EAAaI,OAAQC,IAC9BL,EAAaK,GAAGC,cAAgBL,IAE/BvE,EAAQsE,EAAaK,GAAGE,YAAcP,EAAaK,GAAGE,YAAc,IAKhF,OAAO7E,EAGJ,SAAS8E,GAAmBC,EAAOC,EAAQC,GAE9C,IAAIC,EAAc,GAclB,OAZGH,GAASP,MAAMC,QAAQM,IAAUA,EAAML,OAAS,IAC/CQ,EAAcH,EAAMI,QAAO,SAAAC,GACvB,OAAOC,OAAOC,KAAKF,GAAGG,MAAK,SAAAC,GACnB,GAAGP,GAAiBA,EAAcQ,SAASD,IAC3B,OAATJ,EAAEI,SAAwBE,IAATN,EAAEI,KAAqC,kBAATJ,EAAEI,IAAmC,kBAATJ,EAAEI,IAC5E,OAAOJ,EAAEI,GAAGG,WAAWC,cAAcH,SAAST,EAAOY,sBAOtEV,EAIJ,SAASW,GAAiBC,GAC7B,OAAGA,EACOC,MAAMD,GAAO,KAAb,UAAuBE,WAAWF,GAAKG,eAAe,QAAS,CAACC,MAAO,WAAYC,SAAU,SAE5F,IAKR,SAASC,GAAYC,GAExB,IADA,IAAIC,EAAO,GACF3B,EAAE,EAAGA,EAAI0B,EAAI3B,OAAQC,IAAK,CAC/B,IAAI4B,EAAWF,EAAIG,WAAW7B,GAC1B4B,EAAW,IAAMD,EAAKG,KAAKF,GACtBA,EAAW,KAChBD,EAAKG,KAAK,IAAQF,GAAY,EACpB,IAAmB,GAAXA,GAEbA,EAAW,OAAUA,GAAY,MACtCD,EAAKG,KAAK,IAAQF,GAAY,GACpB,IAASA,GAAU,EAAK,GACxB,IAAmB,GAAXA,IAIlB5B,IAIA4B,EAAW,QAAwB,KAAXA,IAAmB,GACV,KAApBF,EAAIG,WAAW7B,IAC5B2B,EAAKG,KAAK,IAAQF,GAAW,GACnB,IAASA,GAAU,GAAM,GACzB,IAASA,GAAU,EAAK,GACxB,IAAmB,GAAXA,IAG1B,OAAOD,EAIJ,IAAMI,GAAiB,SAACC,GAC3B,GAAGA,GAAOnC,MAAMC,QAAQkC,IAAQA,EAAIjC,OAAS,EACzC,IAAI,IAAIC,EAAE,EAAGA,EAAGgC,EAAIjC,OAAQC,IACxBgC,EAAIhC,GAAJ,UAAsBA,EAG9B,OAAOgC,GAYJ,SAASC,GAAYC,GAA2D,IAAnDC,EAAkD,uDAAnC,EAAmC,gHAClF,IACI,GAAID,EAEA,OADAA,EAASb,WAAWa,IACNZ,eAAe,QAAS,CAAEC,MAAO,WAAYC,SAAU,MAAOY,sBAAuBD,IAG3G,MAAOE,GACH3E,QAAQC,IAAI0E,IAiBb,SAASC,GAAWjH,EAAOkH,GAC9B,OAAKlH,EACYgG,WAAWhG,GACVmH,QAAQD,GAFP,I,uGCtLfE,GAAWC,KAAXD,OAEFE,G,YACF,WAAY1D,GAAQ,IAAD,8BACf,4CAAMA,KAqBV2D,uBAAyB,SAACC,GACtB,IAAIxH,GAAQ,EAERA,EADW,gBAAXwH,GAEkB,iBAAXA,IAGE,EAAK5I,MAAM6I,kBAExB,EAAKC,SAAS,CACVD,kBAAmBzH,KAhCR,EAmCnB2H,8BAAgC,SAAAH,GAC5B,IAAIxH,GAAQ,EACG,gBAAXwH,EACAxH,GAAQ,EACU,iBAAXwH,EACPxH,GAAQ,GAERA,GAAS,EAAKpB,MAAMgJ,yBACpB,EAAKL,0BAET,EAAKG,SAAS,CACVE,yBAA0B5H,KA9Cf,EAoGnB6H,uBAAyB,SAACC,EAAON,GAC7BM,EAAMC,kBACFP,GAAqB,MAAXA,GAEV,EAAK5D,MAAM7D,2BAA2B,KAAKiI,MAAK,SAAAC,GAC5C,OAAQT,GAEJ,IAAK,IACD,EAAK5D,MAAMsE,QAAQzB,KAAK,2BACxB,MAEJ,IAAK,IACD,EAAK7C,MAAMsE,QAAQzB,KAAK,mBACxB,MAEJ,IAAK,IACD,EAAK7C,MAAMsE,QAAQzB,KAAK,qBACxB,MAEJ,IAAK,IACD,EAAK7C,MAAMsE,QAAQzB,KAAK,gCACxB,MAEJ,IAAK,IACD,EAAK7C,MAAMsE,QAAQzB,KAAK,4BACxB,MAEJ,IAAK,IACD,EAAK7C,MAAMsE,QAAQzB,KAAK,kCACxB,MAEJ,IAAK,IACD,EAAK7C,MAAMsE,QAAQzB,KAAK,2BACxB,MAEJ,IAAK,IACD,EAAK7C,MAAMsE,QAAQzB,KAAK,yBACxB,MAGJ,IAAK,IACD,EAAK7C,MAAMsE,QAAQzB,KAAK,8BA1IxC,EAAK0B,OAAS,EAAKA,OAAOC,KAAZ,gBACd,EAAKC,mBAAqB,EAAKA,mBAAmBD,KAAxB,gBAC1B,EAAKE,oBAAsB,EAAKA,oBAAoBF,KAAzB,gBAC3B,EAAKb,uBAAyB,EAAKA,uBAAuBa,KAA5B,gBAC9B,EAAKT,8BAAgC,EAAKA,8BAA8BS,KAAnC,gBACrC,EAAKP,uBAAyB,EAAKA,uBAAuBO,KAA5B,gBAC9B,EAAKxJ,MAAQ,CACT2J,QAAQ,EACRC,YAAa,KACbf,mBAAmB,EACnBG,0BAA0B,EAC1Ba,uBAAuB,GAdZ,E,sEAkBf1E,KAAK2D,SAAS,CACVa,QAASxE,KAAKnF,MAAM2J,W,yCA+BTG,GACXA,EAAUjK,sBAAwBsF,KAAKH,MAAMnF,qBAC7CsF,KAAK2D,SAAS,CAAEc,YAAazE,KAAKH,MAAMnF,wB,mCAO5CkK,GAAaC,W,2CAIb,IAAIrK,GAAWwF,KAAKH,MAAMrF,QAC1BwF,KAAKH,MAAMiF,YAAYtK,K,wCAKvBuK,SAASC,cAAc,IAAIC,YAAY,sBAAuB,CAAEC,SAAS,O,0CAGzDnB,GAAQ,IAAD,OACnBA,EAAMoB,KAAqB,MAAdpB,EAAMoB,KAEnBnF,KAAKH,MAAM7D,2BAA2B+H,EAAMoB,KAAKlB,MAAK,SAAAC,GAClD,OAAQH,EAAMoB,KACV,IAAK,IACD,EAAKtF,MAAMsE,QAAQzB,KAAK,KACxB,MAGJ,IAAK,IACD,EAAK7C,MAAMsE,QAAQzB,KAAK,UACxB,MAGJ,IAAK,IACD,EAAK7C,MAAMsE,QAAQzB,KAAK,oC,mDAgEfqB,EAAON,GAChCM,EAAMC,kBACNhE,KAAKH,MAAMsE,QAAQzB,KAAgB,cAAXe,EAA0B,aAA1B,qBAAuDA,M,+BAGzE,IAAD,OAEL,OACI,oCACI,kBAACJ,GAAD,CAAQlB,MAAO,CAAEiD,SAAU,QAASC,OAAQ,GAAIC,MAAO,OAAQC,UAAW,SACtE,yBAAKC,GAAG,qBAAqBtF,UAAU,sBAAqB,kDAC5D,kBAAC,KAAD,CAAMuF,MAAM,OAAOtK,KAAK,aACpBuK,aAAc,CAAC1F,KAAKnF,MAAM4J,aAC1BtC,MAAO,CAAEwD,WAAY,OAAQC,QAAS,OAAQC,eAAgB,aAE9D,kBAAC,KAAKC,KAAN,CAAWX,IAAI,IAAIY,QAAS/F,KAAKsE,oBAC7B,0BAAMnC,MAAO,CAAE6D,SAAU,OAAQC,WAAY,KAAOC,MAAM,WAA1D,WAEyD,MAA3D5F,GAAmBN,KAAKH,MAAM5E,WAAY,cAC5C,kBAAC,KAAK6K,KAAN,CAAWX,IAAI,IAAIY,QAAS/F,KAAKuE,oBACjC4B,YAAa,kBAAM,EAAKxC,UAAS,SAAAyC,GAAe,OAAO,eAAIA,EAAX,CAAsB1B,uBAAuB,QAC7F2B,aAAc,kBAAM,EAAK1C,UAAS,SAAAyC,GAAe,OAAO,eAAIA,EAAX,CAAsB1B,uBAAuB,SAC1F,kBAAC4B,GAAA,EAAD,CACI9B,OAAQxE,KAAKnF,MAAM6J,sBACnBN,OAAQ,kBAAM,EAAKT,UAAS,SAAAyC,GAAe,OAAO,eAAIA,EAAX,CAAsB1B,uBAAwB0B,EAAU1B,6BACnG,kBAAC6B,GAAA,EAAD,kBAGA,kBAACC,GAAA,EAAD,CAActG,UAAU,eACpB,kBAACuG,GAAA,EAAD,CAAcjB,GAAG,YAAYO,QAAS,SAACW,GAAD,OAAS,EAAKC,6BAA6BD,EAAK,eAAtF,aACA,kBAACD,GAAA,EAAD,CAAcjB,GAAG,WAAWO,QAAS,SAACW,GAAD,OAAS,EAAKC,6BAA6BD,EAAK,cAArF,YACA,kBAACD,GAAA,EAAD,CAAcjB,GAAG,iBAAiBO,QAAS,SAACW,GAAD,OAAS,EAAKC,6BAA6BD,EAAK,oBAA3F,0BAI6C,MAAvDpG,GAAmBN,KAAKH,MAAM5E,WAAY,UAAqB,kBAAC,KAAK6K,KAAN,CAAWX,IAAI,IAAIY,QAAS/F,KAAKuE,oBAC9F4B,YAAa,kBAAM,EAAK3C,uBAAuB,gBAC/C6C,aAAc,kBAAM,EAAK7C,uBAAuB,kBAChD,kBAAC8C,GAAA,EAAD,CAAU9B,OAAQxE,KAAKnF,MAAM6I,kBAAmBU,OAAQ,kBAAM,EAAKZ,2BAC/D,kBAAC+C,GAAA,EAAD,cAGA,kBAACC,GAAA,EAAD,CAActG,UAAU,eACpB,kBAACuG,GAAA,EAAD,CAAcjB,GAAG,IAAIO,QAAS,SAACW,GAAD,OAAS,EAAK5C,uBAAuB4C,EAAK,OAAxE,qBACA,kBAACD,GAAA,EAAD,CAAcjB,GAAG,IAAIO,QAAS,SAACW,GAAD,OAAS,EAAK5C,uBAAuB4C,EAAK,OAAxE,YACA,kBAACD,GAAA,EAAD,CAAcjB,GAAG,IAAIO,QAAS,SAACW,GAAD,OAAS,EAAK5C,uBAAuB4C,EAAK,MACpEP,YAAa,kBAAM,EAAKvC,8BAA8B,gBACtDyC,aAAc,kBAAM,EAAKzC,8BAA8B,kBACvD,kBAAC0C,GAAA,EAAD,CAAU9B,OAAQxE,KAAKnF,MAAMgJ,yBAA0BO,OAAQ,kBAAM,EAAKR,iCAAiCgD,UAAU,SACjH,kBAACL,GAAA,EAAD,CAAgBrG,UAAU,eAA1B,cAGA,kBAACsG,GAAA,EAAD,CAActG,UAAU,eACpB,kBAACuG,GAAA,EAAD,CAAcjB,GAAG,IAAIO,QAAS,SAACW,GAAD,OAAS,EAAK5C,uBAAuB4C,EAAK,OAAxE,gBACA,kBAACD,GAAA,EAAD,CAAcjB,GAAG,IAAIO,QAAS,SAACW,GAAD,OAAS,EAAK5C,uBAAuB4C,EAAK,OAAxE,UACA,kBAACD,GAAA,EAAD,CAAcjB,GAAG,IAAIO,QAAS,SAACW,GAAD,OAAS,EAAK5C,uBAAuB4C,EAAK,OAAxE,oBAIZ,kBAACD,GAAA,EAAD,CAAcjB,GAAG,IAAIO,QAAS,SAACW,GAAD,OAAS,EAAK5C,uBAAuB4C,EAAK,OAAxE,uBACA,kBAACD,GAAA,EAAD,CAAcjB,GAAG,IAAIO,QAAS,SAACW,GAAD,OAAS,EAAK5C,uBAAuB4C,EAAK,OAAxE,qBACA,kBAACD,GAAA,EAAD,CAAcjB,GAAG,IAAIO,QAAS,SAACW,GAAD,OAAS,EAAK5C,uBAAuB4C,EAAK,OAAxE,sBAIkE,MAA5EpG,GAAmBN,KAAKH,MAAM5E,WAAY,+BAA0C,kBAAC,KAAK6K,KAAN,CAAWX,IAAI,IAAIY,QAAS/F,KAAKuE,qBAAjC,8BAEtF,kBAAC,KAAKuB,KAAN,CAAWX,IAAI,KAEX,yBAAKjF,UAAU,+BAA+B6F,QAAS,kBAAM,EAAKc,oBAC9D,kBAAC,KAAD,CAAQC,KAAM,kBAACC,GAAA,EAAD,CAAc5E,MAAO,CAAE6D,SAAU,cADnD,IACuEhG,KAAKH,MAAMpF,KAAKuM,WAG3F,kBAAC,KAAKlB,KAAN,CAAWX,IAAI,KAAI,kBAAC,KAAD,CAASe,MAAM,YAAW,kBAACe,GAAA,EAAD,CAAgBlB,QAAS/F,KAAKkH,WAAYhH,UAAU,4B,GAlOnGE,IAAM+G,eAmPtBC,GAAqB,CACvBtC,YP5OG,SAAqBuC,GAExB,MAAO,CACHtM,KNvBe,cMwBfC,QAAQqM,IOyOZrL,8BAGWsL,gBAdS,SAAA3K,GACpB,MAAO,CACHlC,KAAMkC,EAAME,IAAIpC,KAChBD,QAASmC,EAAME,IAAIrC,QACnBS,WAAY0B,EAAME,IAAI5B,WACtBP,oBAAqBiC,EAAME,IAAInC,uBASC0M,GAAzBE,CAA6CC,YAAWhE,K,UC/P/DiE,GAAoBlE,KAApBkE,QAASC,GAAWnE,KAAXmE,OAGF,YAAA5H,GAAK,OAChB,kBAAC,KAAD,KACE,kBAAC,GAAD,MACA,kBAAC2H,GAAD,CAASrF,MAAO,CAACuF,UAAW,SAC1B,yBAAKvF,MAAO,CAACoD,UAAW,0BACnB1F,EAAMM,WAGb,kBAACsH,GAAD,CAAQtF,MAAO,CAAEwF,UAAW,SAAUvC,SAAU,aAAhD,0DAC2D,kBAAC,KAAD,CAASrK,KAAK,aADzE,IACwF6M,GAAYC,eCjB7FC,GAAe,gBACfC,GAAW,2GACXC,GAAmB,0CAKnBC,GAGD,OAOCC,GACE,kDADFA,GAEA,4BAFAA,GAGD,+CAHCA,GAIE,kDAJFA,GAKD,GALCA,GAMY,GAIZC,GAAqB,oBAE3B,SAASpH,GAAmBC,EAAOC,GACtC,IAAIE,EAAc,GAYlB,OAVIH,GAASP,MAAMC,QAAQM,IAAUA,EAAML,OAAS,IAChDQ,EAAcH,EAAMI,QAAO,SAAAC,GACvB,OAAOC,OAAOC,KAAKF,GAAGG,MAAK,SAAAC,GACvB,GAAa,OAATJ,EAAEI,SAAwBE,IAATN,EAAEI,IAAoC,kBAATJ,EAAEI,GAChD,OAAOJ,EAAEI,GAAGI,cAAcH,SAAST,EAAOY,sBAMnDV,EAEJ,IAkCMiH,GAAoB,mBC1EtBC,GAAgC,KAChCC,GAAkC,KAClCC,GAAoC,KC8C/C,SAASC,GAAgBC,EAAOC,GAC5B,OAAKD,EACc,QAAVA,EAAyB,0BAAMvI,UAAU,6BAC/B,SAAVuI,EAA0B,0BAAMvI,UAAU,2BAC5C,KAHa,0BAAMA,UAAU,wB,0CC3ClCyI,G,YAEF,WAAY9I,GAAO,IAAD,8BACd,4CAAMA,KAmDV+I,wBAA0B,SAACC,GACvB,IAAIC,EAAW,KAKf,OAJID,GAAOA,EAAIE,WAAa,EAAKlO,MAAMW,cAAgB,EAAKX,MAAMW,aAAauN,YAAcF,EAAIE,YAC7FD,EAAW,yBAGRA,GAxDP,EAAKjO,MAAQ,CACTmO,UAAW,GACXC,iBAAkB,GAClBzN,aAAc,MAGlB,EAAK0N,qBAAuB,EAAKA,qBAAqB7E,KAA1B,gBARd,E,iFAYdrE,KAAKmJ,mB,6CAILnJ,KAAKH,MAAMuJ,mCAAmC,Q,yCAG/BzE,GACZ3E,KAAKH,MAAMrF,UAAYmK,EAAUnK,SAChCwF,KAAKmJ,mB,uCAII,IAAD,OACZE,KAAKC,GAAG,mCAAoC,CAACC,SAAU,EAAGC,QAAS,EAAGC,WAAY,YF7B9D,WAEc,OAAlCpB,SAA4E1G,IAAlC0G,IAC1CA,GAA8BqB,OAAO,gDAIzC,IAAMtK,EAAcpB,IAAM2L,YAwB1B,OAvBAtB,GAAgCjJ,EAAYqE,SAElB,IAAItH,SAAQ,SAAUC,EAASoC,GAErDQ,GADO,UAAMtC,IAAN,YTCgB,4CSAd2L,IAA+BpE,MACpC,SAAA2F,GACOA,EAAYjL,MAAQ8B,MAAMC,QAAQkJ,EAAYjL,MAC7CvC,EAAQwN,EAAYjL,MAEpBH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,8CAA+CuL,GAC3DtL,EAAOsL,WEKXC,GAAe9F,MAAK,SAAAC,GAChB,EAAKP,SAAS,CAACqF,UAAW9E,EAAK+E,iBAAkB/E,IAAM,WACnDmF,KAAKC,GAAG,mCAAoC,CAACC,SAAU,EAAGC,QAAS,UAG1EK,OAAM,SAAAC,GACHxL,QAAQD,MAAM,iBAAkByL,GAChC,EAAKnG,SAAS,CAACqF,UAAW,GAAIC,iBAAkB,KAAK,WACjDI,KAAKC,GAAG,mCAAoC,CAACC,SAAU,EAAGC,QAAS,IACnE1K,KAAQT,MAAM,+E,2CAQTwK,GAAK,IAAD,OAClBA,GACC7I,KAAK2D,SAAS,CAACnI,aAAcqN,IAAM,WAC/B,EAAKhJ,MAAMuJ,mCAAmCP,Q,+CAcjC9E,GACrB,GAA0B,KAAvBA,EAAMiG,OAAO/N,MACZ+D,KAAK2D,SAAS,CAACsF,iBAAmBjJ,KAAKnF,MAAMmO,gBAC5C,CACD,IAAIiB,EAAclJ,GAAmBf,KAAKnF,MAAMmO,UAAWjF,EAAMiG,OAAO/N,MAAO,CAAC,YAAa,YAAa,aAC1G+D,KAAK2D,SAAS,CAACsF,iBAAkBgB,O,+BAI/B,IDlFqBf,ECkFtB,OACL,OACI,6BACI,yBAAKhJ,UAAU,OACX,yBAAKA,UAAU,8BAA8BD,MAAM,SAC/C,2BAAOlF,KAAK,OAAOmP,YAAY,cAAchK,UAAU,mBAAmBiK,SAAU,SAAClH,GAAD,OAAO,EAAKmH,yBAAyBnH,QAIjI,yBAAK/C,UAAU,OAAOsF,GAAG,mCACrB,kBAAC,KAAD,CACQ6E,SAAS,YACT1L,KAAMqB,KAAKnF,MAAMoO,iBACjBqB,SD/FOpB,EC+FqBlJ,KAAKkJ,qBD9F1C,CAEX,CACIqB,UAAW,YACXC,KAAM,aACNC,cAAe,gCACfC,QAAS,+BACTC,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqC,UAAW,SAACC,EAAMlC,GACd,OAAO,yBAAK1G,MAAO,CAAC6I,OAAO,WAAY9E,MAAO6E,GACrCA,KAIjB,CACIR,UAAW,YACXC,KAAM,aACNC,cAAe,aAEfC,QAAS,+BACTC,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,WACXC,KAAM,YACNC,cAAe,aACfC,QAAS,+BACTC,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,GACXC,KAAM,GACNI,MAAM,EACNK,cAAc,EACdN,YAAa,QACbG,UAAW,SAACC,EAAMlC,GACV,OAAO,yBAAK5I,MAAM,SACV,4BAAQlF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAMmD,EAAqBL,KAAtF,sBCoDA4B,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRS,WAAY,SAACtC,GAAD,OAAS,EAAKD,wBAAwBC,IAClDuC,iBAAkBtD,W,GA1FtBzH,aAyGlB+G,GAAqB,CACvBgC,mCCpH8C,SAACP,GAAD,OAAS,SAAC3M,GACxD,OAAOC,QAAQC,QACVF,EAAS,CACLnB,KnBEyC,yCmBDzCC,QAAS6N,QDmHPvB,gBAXS,SAAC3K,GACrB,MAAO,CACHnC,QAASmC,EAAME,IAAIrC,QACnBD,IAAKoC,EAAME,IAAItC,OAQiB6M,GAAzBE,CAA6CC,YAAWoB,K,SEvHhE,SAAS0C,GAAqBC,GAwBjC,MAvBe,CACX,CACIf,UAAW,oBACXC,KAAM,UACNI,MAAM,EACNW,UAAU,EACVT,UAAW,SAACC,EAAMlC,GAAS,IAAD,EACtB,OACQ,8BAAO9N,KAAK,WAAWyQ,QAAkB,MAATT,GAAhC,sBAAkE,YAAlE,2BAAuF,kBAAMO,EAAqBzC,MAAlH,MAIhB,CACI0B,UAAW,mBACXC,KAAM,cACNC,cAAe,gCACfC,QAAS,+BACTC,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAMvB,SAAyBD,EAAOC,GAC5B,IAAKD,EAAO,OAAQ,0BAAMvI,UAAU,wBAC/B,GAAc,QAAVuI,EAAiB,OAAQ,0BAAMvI,UAAU,6BAC7C,GAAc,SAAVuI,EAAkB,OAAQ,0BAAMvI,UAAU,2BACnD,OAAO,KAV+BsI,CAAgBC,MCpB1D,IAUegD,GAVW,SAAC5L,GACvB,OACI,yBAAKK,UAAWL,EAAM6L,WAAa7L,EAAM6L,WAAa,kBAClD,yBAAKxL,WAA+B,IAApBL,EAAM8L,UAAmB,gCAAgC,sBAAuB1L,MAAM,UAClG,yBAAKC,UAAU,8BCMzB0L,G,YAEF,WAAY/L,GAAO,IAAD,8BACd,4CAAMA,KAEDhF,MAAO,CACRgR,YAAa,GACbC,kBAAmB,GACnBC,aAAa,EACbC,gBAAiB,IAGrB,EAAKV,qBAAuB,EAAKA,qBAAqBjH,KAA1B,gBAVd,E,gFAcCM,GAAW,IAAD,OACtB3E,KAAKH,MAAMrE,cAAgBwE,KAAKH,MAAMrE,eAAiBmJ,EAAUnJ,cAC7DwE,KAAKH,MAAMrE,aAAauN,WACvB/I,KAAK2D,SAAS,CAACqI,gBAAiB,KAAK,WACjC,EAAKC,iBAAiB,EAAKpM,MAAMrE,aAAauN,cAKvD/I,KAAKH,MAAMrF,UAAYmK,EAAUnK,SAChCwF,KAAK2D,SAAS,CAACqI,gBAAiB,GAAIH,YAAa,GAAIC,kBAAmB,O,uCAI/DI,GAAO,IAAD,OACnBlM,KAAK2D,SAAS,CAACoI,aAAa,IAAO,YNIb,SAACI,GAEa,OAApC7D,SAAgF3G,IAApC2G,IAC5CA,GAAgCoB,OAAO,gDAI3C,IAAMtK,EAAcpB,IAAM2L,YAwB1B,OAvBArB,GAAkClJ,EAAYqE,SAElB,IAAItH,SAAQ,SAAUC,EAASoC,GAEvDQ,GADO,UAAMtC,IAAN,YTlCkB,0CSkClB,sBAAqDyP,GACnD7D,IAAiCrE,MACtC,SAAAmI,GACOA,EAAezN,MAAQ8B,MAAMC,QAAQ0L,EAAezN,MACnDvC,EAAQgQ,EAAezN,MAEvBH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,gDAAiDuL,GAC7DtL,EAAOsL,WM5BXuC,CAAeH,GAAOjI,MAAK,SAAAC,GACvB,EAAKP,SAAS,CAACkI,YAAa3H,EAAK4H,kBAAmB5H,EAAK6H,aAAa,IAAQ,kBAGjFlC,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACd,EAAKnG,SAAS,CAACoI,aAAa,EAAOF,YAAa,GAAIC,kBAAmB,KACvEhN,KAAQT,MAAM,oD,2CAMLwK,GAAK,IAAD,OACjB,GAAGA,GACI7I,KAAKH,MAAMrE,cAAgBwE,KAAKH,MAAMrE,aAAauN,UAAU,CAC5D,IAAI5N,EAAO0N,EAAIyD,mBAA+C,MAA1BzD,EAAIyD,kBAA4B,SAAW,MAC/EtM,KAAK2D,SAAS,CAACoI,aAAa,IAAO,YNsBvB,SAAC5Q,EAAMoR,EAAOJ,EAAWK,GAEX,OAAtCjE,SAAoF5G,IAAtC4G,IAC9CA,GAAkCmB,OAAO,gDAG7C,IAAMtK,EAAcpB,IAAM2L,YAwB1B,OAvBApB,GAAoCnJ,EAAYqE,SAEpB,IAAItH,SAAQ,SAAUC,EAASoC,GAEvDQ,GADO,UAAMtC,IAAN,YTpEkB,0CSoElB,0BAAyDvB,EAAzD,kBAAuEoR,EAAvE,sBAA0FJ,EAA1F,iBAA4GK,GAC1GjE,IAAmCtE,MACxC,SAAAwI,GACOA,EAAiB9N,MAAkD,IAA1C8N,EAAiB9N,KAAK+N,gBAC9CtQ,EAAQqQ,EAAiB9N,MAEzBH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,6CAA8CuL,GAC1DtL,EAAOsL,WM7CC6C,CAAiBxR,EAAM0N,EAAI0D,MAAO,EAAK1M,MAAMrE,aAAauN,UAAWF,EAAI+D,MAAM3I,MAAK,SAAAC,GAC5E,EAAK+H,iBAAiB,EAAKpM,MAAMrE,aAAauN,cAEjDc,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,Y,iDAOf/F,GACvB,GAA0B,KAAvBA,EAAMiG,OAAO/N,MACZ+D,KAAK2D,SAAS,CAACmI,kBAAoB9L,KAAKnF,MAAMgR,YAAaG,gBAAiB,SAC3E,CACD,IAAI/B,EAAclJ,GAAmBf,KAAKnF,MAAMgR,YAAa9H,EAAMiG,OAAO/N,MAAO,CAAC,qBAClF+D,KAAK2D,SAAS,CAACmI,kBAAmB7B,EAAW+B,gBAAiBjI,EAAMiG,OAAO/N,W,+BAKzE,IAAD,OACL,OACI,6BAGQ+D,KAAKnF,MAAMkR,aAAgB,kBAAC,GAAD,CAAmBL,WAAW,oBAE7D,yBAAKxL,UAAU,OACX,yBAAKA,UAAU,8BAA8BD,MAAM,SAC/C,2BACIlF,KAAK,OACLmP,YAAY,gBACZjO,MAAO+D,KAAKnF,MAAMmR,gBAClB9L,UAAU,mBAAmBiK,SAAU,SAAClH,GAAD,OAAO,EAAK4J,2BAA2B5J,QAG1F,yBAAKuC,GAAG,wCAAwCtF,UAAU,8CACzD,kBAAC,KAAD,CACOsF,GAAG,oCACH6E,SAAS,QACT1L,KAAMqB,KAAKnF,MAAMiR,kBACjBxB,QAASe,GAAqBrL,KAAKsL,sBACnCb,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRS,WAAW,qCACXC,iBAAkBtD,W,GAjGhBzH,aAqHXiH,gBAZS,SAAC3K,GACrB,MAAO,CACHnC,QAASmC,EAAME,IAAIrC,QACnBD,IAAKoC,EAAME,IAAItC,IACfiB,aAAcmB,EAAMmQ,sBAAsBtR,gBAIvB,GAIZ8L,CAA6CC,YAAWqE,KC3HjEmB,G,YAEF,WAAYlN,GAAO,IAAD,8BACd,4CAAMA,KACDhF,MAAO,GAFE,E,sEAQd,OACI,yBAAKqF,UAAU,aACP,yBAAKA,UAAU,OACX,yBAAKA,UAAU,gCACX,kBAAC,GAAD,OAEJ,yBAAKA,UAAU,gCACX,kBAAC,GAAD,a,GAjBGG,aAmChBiH,gBAVS,SAAC3K,GACrB,MAAO,CACHnC,QAASmC,EAAME,IAAIrC,WAIA,GAIZ8M,CAA6CC,YAAWwF,K,SChC5DC,GAAmD,KACnDC,GAAuC,KACvCC,GAAgD,KAChDC,GAAmD,KACnDC,GAA2C,KAC3CC,GAAyC,KACzCC,GAAkD,KAClDC,GAAuD,KACvDC,GAAyD,KACzDC,GAAyD,KACzDC,GAA4D,KAC5DC,GAA2D,KAC3DC,GAAmD,KAEjDC,GAAkC,SAAC3P,EAAS/C,GAEI,OAArD6R,SAAkHrL,IAArDqL,IAE7DA,GAAiDtD,OAAO,mEAG5D,IAAMtK,EAAcpB,IAAM2L,YA0B1B,OAzBAqD,GAAmD5N,EAAYqE,SAGlB,IAAItH,SAC7C,SAAUC,EAASoC,GACf,IAAIG,EAAO,CACP,SAAqB,WAATxD,EACZ,uBAA0B+C,GAG1B4P,EAAUzL,GAAY0L,KAAKC,UAAUrP,IAEzCU,GAAKpC,EAAoC6Q,EAASd,IAAkD/I,MAAK,SAAAC,GACrG9H,EAAQ8H,MAEX2F,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,0DAA2DF,GACvEG,EAAOuJ,YA8EdkG,GAAwC,SAACC,EAASC,GAEI,OAA3DX,SAA8H7L,IAA3D6L,IAEnEA,GAAuD9D,OAAO,oEAGlE,IAAMtK,EAAcpB,IAAM2L,YAwB1B,OAvBA6D,GAAyDpO,EAAYqE,SAGpC,IAAItH,SACjC,SAAUC,EAASoC,GAEfQ,GADO,UAAM5B,EAAN,kBAA4D8Q,EAA5D,mBAA8EC,GAC5EX,IAAwDvJ,MAAK,SAAAC,GAC/DA,GAAOA,EAAIvF,KACVvC,EAAQ8H,EAAIvF,MAEZH,EAAOuJ,OAGd8B,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,yEAA0EF,GACtFG,EAAOuJ,YA4CdqG,GAA0B,SAACC,GAEa,OAA7CjB,SAAkGzL,IAA7CyL,IAErDA,GAAyC1D,OAAO,oEAGpD,IAAMtK,EAAcpB,IAAM2L,YAwB1B,OAvBAyD,GAA2ChO,EAAYqE,SAGlB,IAAItH,SACrC,SAAUC,EAASoC,GAEfQ,GADO,UAAMtC,IAAN,YjBtLsB,2DiBsLtB,eAAsD2R,GACpDjB,IAA0CnJ,MAAK,SAAAC,GACjDA,GAAOA,EAAIvF,KACVvC,EAAQ8H,EAAIvF,MAEZH,EAAOuJ,OAGd8B,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,sEAAuEF,GACnFG,EAAOuJ,YAQduG,GAAwB,SAACD,GAEa,OAA3ChB,SAA8F1L,IAA3C0L,IAEnDA,GAAuC3D,OAAO,oEAGlD,IAAMtK,EAAcpB,IAAM2L,YAwB1B,OAvBA0D,GAAyCjO,EAAYqE,SAGhB,IAAItH,SACrC,SAAUC,EAASoC,GAEfa,GADO,UAAM3C,IAAN,YjBxNqB,4CiBwNrB,eAAqD2R,GAClD,GAAIhB,IAAwCpJ,MAAK,SAAAC,GACpDA,GAAOA,EAAIvF,KACVvC,EAAQ8H,EAAIvF,MAEZH,EAAOuJ,OAGd8B,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,6EAA8EF,GAC1FG,EAAOuJ,YA4CdwG,GAAsC,SAACF,EAAgBG,EAASC,GAEZ,OAAzDlB,SAA0H5L,IAAzD4L,IAEjEA,GAAqD7D,OAAO,oEAGhE,IAAMtK,EAAcpB,IAAM2L,YAwB1B,OAvBA4D,GAAuDnO,EAAYqE,SAGlB,IAAItH,SACjD,SAAUC,EAASoC,GAEfQ,GADO,UAAMxB,EAAN,eAA0C6Q,EAA1C,oBAAoEG,EAApE,kBAAqFC,GACnFlB,IAAsDtJ,MAAK,SAAAC,GAC7DA,GAAOA,EAAIvF,KACVvC,EAAQ8H,EAAIvF,MAEZH,EAAOuJ,OAGd8B,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,2EAA4EF,GACxFG,EAAOuJ,YAQd2G,GAAwC,SAAClJ,EAAI5G,GAES,OAA3D6O,SAA8H9L,IAA3D8L,IAEnEA,GAAuD/D,OAAO,6EAGlE,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBA8D,GAAyDrO,EAAYqE,SAG/B,IAAItH,SACtC,SAAUC,EAASoC,GAOfa,GAAK9B,EANM,CACP,GAAMiI,EACN,OAAU5G,GAI0B6O,IAAwDxJ,MAAK,SAAAC,GACjG9H,EAAQ8H,MAEX2F,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,4DAA6DF,GACzEG,EAAOuJ,YAmEd4G,GAAqC,SAACC,GAEkB,OAA7DjB,SAAkIhM,IAA7DgM,IAErEA,GAAyDjE,OAAO,mEAGpE,IAAMtK,EAAcpB,IAAM2L,YAoB1B,OAnBAgE,GAA2DvO,EAAYqE,SAGvB,IAAItH,SAChD,SAAUC,EAASoC,IflYpB,SAAgBS,EAAKK,EAAaJ,GACrC,IAAI5E,EAAQqC,GAAMC,WAAWC,IAAIvC,MAC7BuE,EAAU,CACV,eAAgB,iDAChB,8BAA+B,IAE/B,gBAAiB,WACjB,yBAA0B,IAC1B,cAAgB,UAAhB,OAA2BvE,IAG/B,OAAO0D,GAAM,CACTmB,OAAQ,SACRF,IAAKA,EACLN,KAAMW,EACNT,QAASA,EACTO,YAAcF,GAAsBA,EAAmB5E,MAAU4E,EAAmB5E,MAAQ,QeoXxFuU,CADO,UAAMlR,EAAN,kBAA6CiR,GACxC,KAAMjB,IAA0D1J,MAAK,SAAAC,GAC7E9H,EAAQ8H,MAEX2F,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,2EAA4EF,GACxFG,EAAOuJ,Y,UCxG3B,SAASS,GAAgBC,EAAOC,GAC5B,OAAKD,EACc,QAAVA,EAAyB,0BAAMvI,UAAU,6BAC/B,SAAVuI,EAA0B,0BAAMvI,UAAU,2BAC5C,KAHa,0BAAMA,UAAU,wBCnWjC,IAAM4O,GAAsC,SAACjG,EAAK1N,GAAN,OAAe,SAACe,GAC/D,OAAOC,QAAQC,QACVF,EAAS,CACLnB,K1BGyC,yC0BFzCC,QAAS6N,EACT1N,KAAMA,O,6DCHE4T,G,YAEjB,WAAYlP,GAAO,IAAD,8BACd,4CAAMA,KACDmP,YAAc1S,OAAO2S,YAAc,IAF1B,E,sEAQd,OAEI,6BACK,kBAACC,GAAA,EAAD,CACG1K,OAAQxE,KAAKH,MAAMsP,WACnB/K,OAAQpE,KAAKH,MAAMuP,YACnBC,UAAU,EACVC,KAAK,UACLjK,OAAO,OACPnF,UAAU,eACVqP,cAAc,uBACdC,eAAe,qBACfC,iBAAiB,uBACjBC,UAAQ,GACR,kBAACC,GAAA,EAAD,CAAavL,OAAQpE,KAAKH,MAAMuP,YAAaQ,SAAS,MACtD,kBAACC,GAAA,EAAD,KACI,oCACA,gDAEI7P,KAAKH,MAAMM,SAGXH,KAAKH,MAAMiQ,QACX,4BAAQC,IAAG,uCAAkC/P,KAAKH,MAAMiQ,SACpDE,OAAQhQ,KAAKgP,YAAa1J,MAAM,OAChC2K,YAAY,IAAI/J,MAAM,aAAahG,UAAU,SAC/C,yBAAKD,MAAM,SAASC,UAAU,QAA9B,wBACQ,kBAAC,KAAD,CAASgQ,UAAU,OAAOZ,KAAK,KAAKa,QAAQ,OAAOhL,IAAI,mB,GArClD/E,IAAM+G,eCS3CiJ,G,YAEF,WAAYvQ,GAAQ,IAAD,8BACf,4CAAMA,KACDhF,MAAQ,CACTwV,iBAAkB,GAClBC,wBAAyB,GACzBC,WAAY,GACZC,WAAW,EACXC,gBAAgB,EAChBX,QAAS,KACT3B,WAAY7N,GAAmB,EAAKT,MAAM5E,WAAY,8BAG1D,EAAKyV,gBAAkB,EAAKA,gBAAgBrM,KAArB,gBACvB,EAAKsM,gBAAkB,EAAKA,gBAAgBtM,KAArB,gBACvB,EAAKuM,aAAe,EAAKA,aAAavM,KAAlB,gBACpB,EAAKwM,yBAA2B,EAAKA,yBAAyBxM,KAA9B,gBAChC,EAAKyM,gBAAkB,EAAKA,gBAAgBzM,KAArB,gBACvB,EAAK0M,kBAAoB,EAAKA,kBAAkB1M,KAAvB,gBAEzB,EAAK2M,0BAA4B,CAAC,CAC9BzG,UAAW,cACX9B,MAAO,SArBI,E,iFA2BfzI,KAAKiR,mC,yCAGUtM,GAAW,IAAD,OACrBA,EAAUnK,UAAYwF,KAAKH,MAAMrF,SACjCwF,KAAK2D,SAAS,CAAC6M,WAAW,IAAO,WAC7B,EAAKS,sC,uDAKgB,IAAD,OACxBjR,KAAKH,MAAMpF,MAAQuF,KAAKH,MAAMpF,KAAKuM,UJyCH,SAACkH,EAASC,GAGI,OAAlDjB,SAA4GvL,IAAlDuL,IAE1DA,GAA8CxD,OAAO,oEAGzD,IAAMtK,EAAcpB,IAAM2L,YAwB1B,OAvBAuD,GAAgD9N,EAAYqE,SAGf,IAAItH,SAC7C,SAAUC,EAASoC,GAEfQ,GADO,UAAM7B,EAAN,kBAAmD+Q,EAAnD,mBAAqEC,GACnEjB,IAA+CjJ,MAAK,SAAAC,GACtDA,GAAOA,EAAIvF,KACVvC,EAAQ8H,EAAIvF,MAEZH,EAAOuJ,OAGd8B,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,yEAA0EF,GACtFG,EAAOuJ,WIpEfmJ,CAA6BlR,KAAKH,MAAMpF,KAAKuM,SAAUhH,KAAKnF,MAAMsT,YAAYlK,MAAK,SAAAC,GAC/E,EAAKP,SAAS,CAAE0M,iBAAkBnM,EAAKoM,wBAAyBpM,EAAKsM,WAAW,OAEnF3G,OAAM,SAAAC,GACH,EAAKnG,SAAS,CAAC6M,WAAW,IAC1BlS,QAAQD,MAAMyL,Q,gDAKC,IAAD,OACtB9J,KAAKH,MAAMiP,oCAAoC,KAAM,OAAO7K,MAAK,WACzD,EAAKpE,MAAMsE,SACX,EAAKtE,MAAMsE,QAAQzB,KAAK,8B,wCAKlBgE,GAEd,IAAIyK,EAAezK,EAAIsD,OAAO/N,MAC9B,GAAIkV,EAAc,CACd,IAAIC,EAAuB,aAAOpR,KAAKnF,MAAMwV,kBAE7Ce,EAA0BrQ,GAAmBqQ,EAAyBD,EADlD,CAAC,cAAe,aAAc,eAAgB,qBAAsB,WAAY,WAEpGnR,KAAK2D,SAAS,CAAE2M,wBAAyBc,EAAyBb,WAAYY,SAE9EnR,KAAK2D,SAAS,CAAE2M,wBAAyBtQ,KAAKnF,MAAMwV,iBAAkBE,WAAYY,M,sCAK1EtI,GAAM,IAAD,OACbA,GACA7I,KAAKH,MAAMiP,oCAAoCjG,EAAK,UAAU5E,MAAK,WAC3D,EAAKpE,MAAMsE,SACX,EAAKtE,MAAMsE,QAAQzB,KAAK,8B,sCAMxBmG,GAAK,IAAD,OACZA,GACA7I,KAAKH,MAAMiP,oCAAoCjG,EAAK,QAAQ5E,MAAK,WACzD,EAAKpE,MAAMsE,SACX,EAAKtE,MAAMsE,QAAQzB,KAAK,8B,wCAMtBmG,GAAK,IAAD,OAClBvK,QAAQC,IAAI,iBAAkBsK,GJuWS,SAACrD,EAAI0G,GAES,OAArD0B,SAAkHjM,IAArDiM,IAE7DA,GAAiDlE,OAAO,+DAG5D,IAAMtK,EAAcpB,IAAM2L,YAC1BiE,GAAmDxO,EAAYqE,SAE/D,IAAM9E,EAAO,CACT,eAAkB6G,EAClB,eAAkB0G,GAoBtB,OAjB6C,IAAI/P,SAC7C,SAAUC,EAASoC,GAGfa,GAFO,UAAMzB,GAEHe,EAAMiP,IAAkD3J,MAAK,SAAAC,GACnE9H,EAAQ8H,MAEX2F,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,wEAAyEF,GACrFG,EAAOuJ,WI/XnBsJ,CAHWxI,EAAIyI,eACAtR,KAAKH,MAAMpF,MAAQuF,KAAKH,MAAMpF,KAAKuM,SAAWhH,KAAKH,MAAMpF,KAAKuM,SAAW,IAGvF/C,MAAK,SAAAC,GACF5F,QAAQC,IAAI2F,GACZpF,KAAQyS,KAAK,qCACb,EAAKN,oCAERpH,OAAM,SAAAC,GACHhL,KAAQT,MAAM,6C,mCAITmT,EAAUhD,GAAS,IAAD,OAC3BD,GAAoCiD,EAAUhD,EAAS,IAAIvK,MAAK,SAAAwN,GAC5D,EAAK9N,SAAS,CAAC8M,gBAAgB,EAAMX,QAAS2B,OAEjD5H,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,Q,+CAIGjB,GAAK,IAAD,OACzB,GAAGA,EAAI,CACH,IAAI1N,EAAsB,UAAf0N,EAAIjK,OAAqB,SAAW,OAC/CoB,KAAKH,MAAMiP,oCAAoCjG,EAAK1N,GAAM8I,MAAK,WACxD,EAAKpE,MAAMsE,SACV,EAAKtE,MAAMsE,QAAQzB,KAAK,8C,wCAOpC1C,KAAK2D,SAAS,CAAC8M,gBAAkBzQ,KAAKnF,MAAM4V,mB,+BAItC,IHhJwBC,EAAiBC,EAAiBC,EAAcC,EAA0BE,EAAmB5C,EGgJtH,OACL,OACI,yBAAKjO,UAAU,aAEPF,KAAKnF,MAAM2V,UACN,yBAAKvQ,MAAM,SAASC,UAAU,OAAOiC,MAAO,CAACuP,MAAO,SAApD,iCACK,kBAACC,GAAA,EAAD,CAASzB,UAAU,OAAOZ,KAAK,KAAKa,QAAQ,UAG9C,oCACI,yBAAKjQ,UAAU,OACX,yBAAKA,UAAU,gCACX,6BACI,2BAAOnF,KAAK,OAAOmF,UAAU,mBAAmBgK,YAAY,+BACxDjO,MAAO+D,KAAKnF,MAAM0V,WAClBpG,SAAU,SAAClH,GAAD,OAAO,EAAK2O,kBAAkB3O,QAGpD,yBAAK/C,UAAU,gCACX,yBAAKD,MAAM,QAAQC,UAAU,QACzB,4BAAQnF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM,EAAK8L,4BAAtE,uBAIZ,yBAAK3R,UAAU,YACX,yBAAKA,UAAU,iCACX,kBAAC,KAAD,CACIsF,GAAG,oCACH6E,SAAS,iBACT1L,KAAMqB,KAAKnF,MAAMyV,wBACjBhG,SH9KNoG,EG8KqC1Q,KAAK0Q,gBH9KzBC,EG8K0C3Q,KAAK2Q,gBH9K9BC,EG8K+C5Q,KAAK4Q,aH9KtCC,EG8KoD7Q,KAAK6Q,yBH9K/BE,EG8KyD/Q,KAAK+Q,kBH9K3C5C,EG8K8DnO,KAAKnF,MAAMsT,WH7K5L,CAER,CACI5D,UAAW,cACXC,KAAM,eACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqJ,SAAU,SAACC,EAAGC,EAAGvJ,GACb,IACI,MAAc,QAAVA,EACO,IAAIwJ,KAAKD,GAAK,IAAIC,KAAKF,GAE3B,IAAIE,KAAKF,GAAK,IAAIE,KAAKD,GAChC,MAAOlI,GAEL,OADAxL,QAAQD,MAAMyL,GACA,QAAVrB,EACOuJ,EAAID,EAERA,EAAIC,KAIvB,CACIzH,UAAW,eACXC,KAAM,gBACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqC,UAAW,SAACC,EAAMlC,GACd,OACI,6BAEQkC,KAMpB,CACIR,UAAW,aACXC,KAAM,cACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,qBACXC,KAAM,sBACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqC,UAAW,SAACC,EAAMlC,GACd,OACI,yBAAK5I,MAAM,QACN8K,KAKjB,CACIR,UAAW,SACXC,KAAM,SACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,YACXC,KAAM,YACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqC,UAAW,SAACC,EAAMlC,GACd,OACI,oCAGSkC,GAAQtK,MAAMC,QAAQqK,IAASA,EAAKpK,OAAS,GAC1CoK,EAAKmH,KAAI,SAACC,EAAUC,GAChB,OACI,0BAAMjN,IAAKiN,EACPlS,UAAuC,aAA5BiS,EAASE,eAAgC,wBAA0B,GAC9EnM,MAAK,kBAAaiM,EAASE,eAAtB,YAAwCF,EAASG,kBAAT,yBAA+CH,EAASG,oBACpGH,EAASI,UAAYJ,EAASI,SAASC,SAAWL,EAASI,SAASC,SAAW,GACnD,aAA5BL,EAASE,gBAAiC,SAC1CtH,EAAKpK,OAAS,IAAMyR,GAAS,kBAAC,KAAD,CAASrX,KAAK,qBA5FxE,oBAsGHoT,GAA6B,MAAfA,EAAsB,CACrC,CACI5D,UAAW,YACXC,KAAM,aACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqC,UAAW,SAACC,EAAMlC,GACd,OACI,oCAEQkC,GAAc,OAMlC,IAxHI,CAyHR,CACIR,UAAW,MACXC,KAAM,YACNI,MAAM,EACNK,cAAc,EACdN,YAAa,OACbG,UAAW,SAACC,EAAMlC,GACd,OACI,yBAAK5I,MAAM,QAAQkC,MAAO,CAAEyD,QAAS,SAEJ,MAAxBiD,EAAI4J,iBACD,yBAAKvS,UAAU,qBAAqB6F,QAAS,kBAAM6K,EAAa/H,EAAIyI,eAAgB,SAASpL,MAAM,kBAI5E,MAA1B2C,EAAI6J,mBACD,yBAAKxS,UAAU,qBAAqB6F,QAAS,kBAAM6K,EAAa/H,EAAIyI,eAAgB,WAAWpL,MAAM,sBAMzHyM,OAAQ,IAIZ,CACIpI,UAAW,MACXC,KAAM,GACNI,MAAM,EACNK,cAAc,EACdN,YAAa,OACbG,UAAW,SAACC,EAAMlC,GACd,OACI,yBAAK5I,MAAM,QAAQkC,MAAO,CAAEyD,QAAS,SAE5BiD,EAAIjK,QAAyB,UAAfiK,EAAIjK,OAEX,oCACI,4BAAQ7D,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM2K,EAAgB7H,KAAjF,SAIP,4BAAQ9N,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM4K,EAAgB9H,KAAjF,QAKD,oCACI,4BAAQ9N,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM8K,EAAyBhI,KAA1F,aACA,kBAAC,KAAD,CAAY+J,UAAU,OAAO1M,MAAM,wBAAwB2M,UAAW,kBAAM9B,EAAkBlI,IAAMiK,OAAO,MAAMC,WAAW,MACxH,4BAAQhY,KAAK,SAASmF,UAAU,mBAAhC,cAQ5ByS,OAAQ,OGNwBlI,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRS,WAAW,qCACXC,iBAAkBtD,GAClBkL,cAAehT,KAAKgR,+BAQhD,kBAAC,GAAD,CAAe7B,WAAYnP,KAAKnF,MAAM4V,eAAgBrB,YAAapP,KAAK8Q,gBAAiBhB,QAAS9P,KAAKnF,MAAMiV,e,GAnLpFzP,aAiMnC+G,GAAqB,CACvB0H,wCAEWxH,gBAXS,SAAC3K,GACrB,MAAO,CACHlC,KAAMkC,EAAME,IAAIpC,KAChBD,QAASmC,EAAME,IAAIrC,QACnBS,WAAY0B,EAAME,IAAI5B,cAOUmM,GAAzBE,CAA6CC,YAAW6I,KCpMjE6C,G,YAEF,WAAYpT,GAAQ,IAAD,8BACf,4CAAMA,KACDhF,MAAQ,CACTwV,iBAAkB,GAClBC,wBAAyB,GACzBC,WAAY,GACZC,WAAW,EACXC,gBAAgB,EAChBX,QAAS,KACT3B,WAAY7N,GAAmB,EAAKT,MAAM5E,WAAY,8BAG1D,EAAK2V,aAAe,EAAKA,aAAavM,KAAlB,gBACpB,EAAKyM,gBAAkB,EAAKA,gBAAgBzM,KAArB,gBAEvB,EAAK2M,0BAA4B,CAAC,CAC9BzG,UAAW,cACX9B,MAAO,SAjBI,E,iFAqBE,IAAD,OAEZzI,KAAKH,MAAMpF,MAAQuF,KAAKH,MAAMpF,KAAKuM,UACnCiH,GAAsCjO,KAAKH,MAAMpF,KAAKuM,SAAUhH,KAAKnF,MAAMsT,YAAYlK,MAAK,SAAAC,GACxF,EAAKP,SAAS,CAAE0M,iBAAkBnM,EAAKoM,wBAAyBpM,EAAKsM,WAAW,OAEnF3G,OAAM,SAAAC,GACH,EAAKnG,SAAS,CAAC6M,WAAW,IAC1BlS,QAAQD,MAAMyL,Q,yCAKPnF,GAAW,IAAD,OACrBA,EAAUnK,UAAYwF,KAAKH,MAAMrF,SACjCwF,KAAK2D,SAAS,CAAC6M,WAAW,IAAO,WACzB,EAAK3Q,MAAMpF,MAAQ,EAAKoF,MAAMpF,KAAKuM,UACnCiH,GAAsC,EAAKpO,MAAMpF,KAAKuM,SAAU,EAAKnM,MAAMsT,YAAYlK,MAAK,SAAAC,GACxF,EAAKP,SAAS,CAAE0M,iBAAkBnM,EAAKoM,wBAAyBpM,EAAKsM,WAAW,OAEnF3G,OAAM,SAAAC,GACH,EAAKnG,SAAS,CAAC6M,WAAW,IAC1BlS,QAAQD,MAAMyL,W,wCAQhBpD,GAEd,IAAIyK,EAAezK,EAAIsD,OAAO/N,MAC9B,GAAIkV,EAAc,CACd,IAAIC,EAAuB,aAAOpR,KAAKnF,MAAMwV,kBAE7Ce,EAA0BrQ,GAAmBqQ,EAAyBD,EADlD,CAAC,cAAe,aAAc,eAAgB,qBAAsB,WAAY,WAEpGnR,KAAK2D,SAAS,CAAE2M,wBAAyBc,EAAyBb,WAAYY,SAE9EnR,KAAK2D,SAAS,CAAE2M,wBAAyBtQ,KAAKnF,MAAMwV,iBAAkBE,WAAYY,M,mCAK7EK,EAAUhD,GAAS,IAAD,OAC3BD,GAAoCiD,EAAUhD,EAAS,IAAIvK,MAAK,SAAAwN,GAM5D,EAAK9N,SAAS,CAAC8M,gBAAgB,EAAMX,QAAS2B,OAEjD5H,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,Q,gDAIK,IAAD,OACtB9J,KAAKH,MAAMiP,oCAAoC,KAAM,OAAO7K,MAAK,WACzD,EAAKpE,MAAMsE,SACX,EAAKtE,MAAMsE,QAAQzB,KAAK,8B,wCAMhC1C,KAAK2D,SAAS,CAAC8M,gBAAkBzQ,KAAKnF,MAAM4V,mB,+BAItC,IJwFiCG,EAAczC,EIxFhD,OACL,OACI,yBAAKjO,UAAU,aAEPF,KAAKnF,MAAM2V,UACN,yBAAKvQ,MAAM,SAASC,UAAU,OAAOiC,MAAO,CAACuP,MAAO,SAApD,iCACK,kBAACC,GAAA,EAAD,CAASzB,UAAU,OAAOZ,KAAK,KAAKa,QAAQ,UAG9C,oCACI,yBAAKjQ,UAAU,OACX,yBAAKA,UAAU,gCACX,6BACI,2BAAOnF,KAAK,OAAOmF,UAAU,mBAAmBgK,YAAY,+BACxDjO,MAAO+D,KAAKnF,MAAM0V,WAClBpG,SAAU,SAAClH,GAAD,OAAO,EAAK2O,kBAAkB3O,QAGpD,yBAAK/C,UAAU,gCACX,yBAAKD,MAAM,QAAQC,UAAU,QACzB,4BAAQnF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM,EAAK8L,4BAAtE,uBAIZ,yBAAK3R,UAAU,YACX,yBAAKA,UAAU,iCACX,kBAAC,KAAD,CACIsF,GAAG,oCACH6E,SAAS,iBACT1L,KAAMqB,KAAKnF,MAAMyV,wBACjBhG,SJ0DGsG,EI1DqC5Q,KAAK4Q,aJ0D5BzC,EI1D0CnO,KAAKnF,MAAMsT,WJ2DlG,CAER,CACI5D,UAAW,cACXC,KAAM,eACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqJ,SAAU,SAACC,EAAGC,EAAGvJ,GACb,IACI,MAAc,QAAVA,EACO,IAAIwJ,KAAKD,GAAK,IAAIC,KAAKF,GAE3B,IAAIE,KAAKF,GAAK,IAAIE,KAAKD,GAClC,MAAMlI,GAEF,OADCxL,QAAQD,MAAMyL,GACF,QAAVrB,EACQuJ,EAAID,EAEPA,EAAIC,KAIxB,CACIzH,UAAW,eACXC,KAAM,gBACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqC,UAAW,SAACC,EAAMlC,GACd,OACI,6BAEQkC,KAMpB,CACIR,UAAW,aACXC,KAAM,cACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,qBACXC,KAAM,sBACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqC,UAAW,SAACC,EAAMlC,GACd,OACI,yBAAK5I,MAAM,QACN8K,KAKjB,CACIR,UAAW,WACXC,KAAM,eACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,SACXC,KAAM,SACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,YACXC,KAAM,YACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqC,UAAW,SAACC,EAAMlC,GACd,OACI,oCAGSkC,GAAQtK,MAAMC,QAAQqK,IAASA,EAAKpK,OAAS,GAC1CoK,EAAKmH,KAAI,SAACC,EAAUC,GAChB,OACI,0BAAMjN,IAAKiN,EACPlS,UAAuC,aAA5BiS,EAASE,eAAgC,wBAA0B,GAC9EnM,MAAK,kBAAaiM,EAASE,eAAtB,YAAwCF,EAASG,kBAAT,yBAA+CH,EAASG,oBACpGH,EAASI,UAAYJ,EAASI,SAASC,SAAWL,EAASI,SAASC,SAAW,GACnD,aAA5BL,EAASE,gBAAiC,SAC1CtH,EAAKpK,OAAS,IAAMyR,GAAS,kBAAC,KAAD,CAASrX,KAAK,qBApGxE,oBA8GHoT,GAA6B,MAAfA,EAAsB,CACrC,CACI5D,UAAW,YACXC,KAAM,aACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqC,UAAW,SAACC,EAAMlC,GACd,OACI,oCAEQkC,GAAc,OAMlC,IAhII,CAiIR,CACIR,UAAW,GACXC,KAAM,YACNI,MAAM,EACNK,cAAc,EACdN,YAAa,OACbG,UAAW,SAACC,EAAMlC,GACd,OACI,yBAAK5I,MAAM,QAAQkC,MAAO,CAAEyD,QAAS,SAEJ,MAAxBiD,EAAI4J,iBACD,yBAAKvS,UAAU,qBAAqB6F,QAAS,kBAAM6K,EAAa/H,EAAIyI,eAAgB,SAASpL,MAAM,kBAI5E,MAA1B2C,EAAI6J,mBACD,yBAAKxS,UAAU,qBAAqB6F,QAAS,kBAAM6K,EAAa/H,EAAIyI,eAAgB,WAAWpL,MAAM,sBAMzHyM,OAAQ,OIjNwBlI,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRS,WAAW,qCACXC,iBAAkBtD,GAClBkL,cAAehT,KAAKgR,+BAQhD,kBAAC,GAAD,CAAe7B,WAAYnP,KAAKnF,MAAM4V,eAAgBrB,YAAapP,KAAK8Q,gBAAiBhB,QAAS9P,KAAKnF,MAAMiV,e,GA1I3EzP,aAyJ5C+G,GAAqB,CACvB0H,wCAGWxH,gBAZS,SAAC3K,GACrB,MAAO,CACHlC,KAAMkC,EAAME,IAAIpC,KAChBD,QAASmC,EAAME,IAAIrC,QACnBS,WAAY0B,EAAME,IAAI5B,cAQUmM,GAAzBE,CAA6CC,YAAW0L,K,UCrK/DC,GAAYC,KAAZD,QAwBOE,G,YApBX,WAAYvT,GAAQ,IAAD,8BACf,4CAAMA,KACDhF,MAAQ,GAFE,E,sEAOf,OACI,kBAAC,KAAD,CAAMwY,iBAAiB,IAAIC,UAAU,GACjC,kBAACJ,GAAD,CAASK,IAAI,8BAA8BpO,IAAI,KAC5C,kBAAC,GAAD,OAEH,kBAAC+N,GAAD,CAASK,IAAI,yBAAyBpO,IAAI,KACtC,kBAAC,GAAD,Y,GAfmB9E,a,kBCHxB,SAASmT,KAMpB,OACI,6BACI,kBAAC,KAAD,CACI5U,OAAO,MACPsH,MAAM,MACNuN,SAAS,8CACTC,MAAO,2BAAO3Y,KAAK,SAASkB,MAAM,YAAYiE,UAAU,iCAAiC6F,QAAS,WAT1GzJ,OAAOE,SAASmX,QAAQrX,OAAOE,SAASC,cCuFhD,SAAS+L,GAAgBC,EAAOC,GAC5B,OAAKD,EACc,QAAVA,EAAyB,0BAAMvI,UAAU,6BAC/B,SAAVuI,EAA0B,0BAAMvI,UAAU,2BAC5C,KAHa,0BAAMA,UAAU,wBC1FjC,IAAI0T,GAAgC,K,wCCSrCC,G,YAEF,WAAYhU,GAAO,IAAD,8BACd,4CAAMA,KAEDhF,MAAQ,CACTkR,aAAa,EACbwE,WAAY,GACZuD,UAAW,GACXC,iBAAkB,GAClBC,SAAUC,KAASC,SAAS,GAAI,QAChCC,OAAQF,MAGZ,EAAKG,uBAAyB,CAAC,CAC3B7J,UAAW,cACX9B,MAAO,SAGX,EAAK4L,eAAiB,EAAKA,eAAehQ,KAApB,gBACtB,EAAKiQ,iBAAmB,EAAKA,iBAAiBjQ,KAAtB,gBAlBV,E,iFAsBdrE,KAAKuU,mB,yCAGU5P,GAAW,IAAD,OACrBA,EAAUnK,UAAYwF,KAAKH,MAAMrF,SACjCwF,KAAK2D,SAAS,CAACqQ,SAAUC,KAASC,SAAS,GAAI,QAASC,OAAQF,OAAW,WACvE,EAAKM,oBAIV5P,EAAU6P,YAAcxU,KAAKH,MAAM2U,WAAsC,MAAzBxU,KAAKH,MAAM2U,WAC1DxU,KAAK2D,SAAS,CAACqQ,SAAUC,KAASC,SAAS,GAAI,QAASC,OAAQF,OAAW,WACvE,EAAKM,sB,uCAKA,IAAD,OACZvU,KAAK2D,SAAS,CAACoI,aAAa,IAAO,YDjDf,SAACiI,EAAUG,GAEG,OAAlCP,SAA4EjS,IAAlCiS,IAC1CA,GAA8BlK,OAAO,gDAIzC,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBAiK,GAAgCxU,EAAYqE,SAElB,IAAItH,SAAQ,SAAUC,EAASoC,GAErDQ,GADO,UAAMtC,IAAN,Y1BmBiB,qC0BnBjB,qBAAmDsX,EAAnD,mBAAsEG,GACpEP,IAA+B3P,MACpC,SAAAwQ,GAEOA,EAAa9V,KACZvC,EAAQqY,EAAa9V,MAErBH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,8CAA+CuL,GAC3DtL,EAAOsL,WC2BX4K,CAFe,EAAK7Z,MAAMmZ,SAAW,EAAKnZ,MAAMmZ,SAASW,OAAO,KAAO,GAC1D,EAAK9Z,MAAMsZ,OAAS,EAAKtZ,MAAMsZ,OAAOQ,OAAO,KAAO,IAClC1Q,MAAK,SAAAC,GAChC,IAAI0Q,EAAQ1Q,EAAI2Q,eAAiBpU,MAAMC,QAAQwD,EAAI2Q,eAAiB3Q,EAAI2Q,cAAgB,GACxF,EAAKlR,SAAS,CAACmQ,UAAWc,EAAOb,iBAAkBa,EAAO7I,aAAa,OAE1ElC,OAAM,SAAAC,GACH,EAAKnG,SAAS,CAACoI,aAAa,Y,2CAKnBrF,GACjB,IAAIyK,EAAezK,EAAIsD,OAAO/N,MAC9B,GAAIkV,EAAc,CACd,IAAI2D,EAAgB,aAAO9U,KAAKnF,MAAMiZ,WAEtCgB,EAAmB/T,GAAmB+T,EAAkB3D,EADpC,CAAC,cAAe,SAAU,aAAc,SAAU,cAAe,gBAAiB,iBAAkB,eAExHnR,KAAK2D,SAAS,CAAEoQ,iBAAkBe,EAAkBvE,WAAYY,SAEhEnR,KAAK2D,SAAS,CAAEoQ,iBAAkB/T,KAAKnF,MAAMiZ,UAAWvD,WAAYY,M,uCAI3D4D,GAAM,IAAD,OAClB/U,KAAK2D,SAAS,CAACqQ,SAAUe,IAAO,WAC5B,EAAKR,sB,qCAIEQ,GAAM,IAAD,OAChB/U,KAAK2D,SAAS,CAACwQ,OAAQY,IAAO,WAC1B,EAAKR,sB,+BAIH,IAAD,OACL,OACI,yBAAKrU,UAAU,aAEPF,KAAKnF,MAAMkR,aAAgB,kBAAC,GAAD,MAE/B,yBAAK7L,UAAU,OACZ,yBAAKA,UAAU,oCACV,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,kBAAjB,kBACA,kBAAC,KAAD,CAAYjE,MAAO+D,KAAKnF,MAAMmZ,SAC1BW,OnB5EF,amB6EEM,WAAW,EACXC,YAAY,EACZ/K,SAAUnK,KAAKsU,qBAEvB,yBAAKpU,UAAU,oCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,kBAAjB,gBACI,kBAAC,KAAD,CAAYjE,MAAO+D,KAAKnF,MAAMsZ,OAC1BQ,OnBpFN,amBqFMO,YAAY,EACZD,WAAW,EACX9K,SAAUnK,KAAKqU,mBAE3B,yBAAKnU,UAAU,mCAAmCD,MAAM,SACpD,2BACIlF,KAAK,OACLmP,YAAY,kBACZjO,MAAO+D,KAAKnF,MAAM0V,WAClBrQ,UAAU,mBAAmBiK,SAAU,SAAClH,GAAD,OAAO,EAAKkS,qBAAqBlS,QAGpF,yBAAK/C,UAAU,YACf,yBAAKA,UAAU,gCAAgCsF,GAAG,mBACjD,kBAAC,KAAD,CACO6E,SAAS,SACT1L,KAAMqB,KAAKnF,MAAMkZ,iBACjBzJ,QF9HL,CACX,CACIC,UAAW,cACXC,KAAM,eACNC,cAAe,aACfG,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqJ,SAAU,SAACC,EAAGC,EAAGvJ,GACb,IACI,MAAc,QAAVA,EACO,IAAIwJ,KAAKD,GAAK,IAAIC,KAAKF,GAE3B,IAAIE,KAAKF,GAAK,IAAIE,KAAKD,GAClC,MAAMlI,GAEF,OADCxL,QAAQD,MAAMyL,GACF,QAAVrB,EACQuJ,EAAID,EAEPA,EAAIC,KAKxB,CACIzH,UAAW,SACXC,KAAM,gBACNC,cAAe,aACfG,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,aACXC,KAAM,cACNC,cAAe,aACfG,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,SACXC,KAAM,SACNC,cAAe,aACfE,YAAa,QACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqJ,SAAU,SAACC,EAAGC,EAAGvJ,GACb,MAAc,QAAVA,EACKuJ,EAAID,EAENA,EAAIC,GAEflH,UAAW,SAACC,EAAMlC,GACd,OACI,yBAAK5I,MAAM,SACN6B,GAAiBiJ,MAKlC,CACIR,UAAW,cACXC,KAAM,eACNC,cAAe,aACfG,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,gBACXC,KAAM,iBACNC,cAAe,aACfG,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,iBACXC,KAAM,kBACNC,cAAe,aACfG,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,aACXC,KAAM,YACNC,cAAe,aACfG,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,ME2ClCgC,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRS,WAAW,qCACXC,iBAAkBtD,GAClBkL,cAAehT,KAAKoU,gC,GA1HpB/T,aA8ITiH,gBAVS,SAAC3K,GACrB,MAAO,CACHlC,KAAMkC,EAAME,IAAIpC,KAChBD,QAASmC,EAAME,IAAIrC,WAIA,GAGZ8M,CAA6CuM,ICxJrD,SAASuB,GAAwBC,GAuHtC,MAtHe,CACb,CACE9K,UAAW,UACXC,KAAM,WACNC,cAAe,aACfG,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoJ,SAAU,SAACC,EAAGC,EAAGvJ,GACf,IACE,MAAc,QAAVA,EACK,IAAIwJ,KAAKD,GAAK,IAAIC,KAAKF,GAEzB,IAAIE,KAAKF,GAAK,IAAIE,KAAKD,GAC9B,MAAOlI,GAEP,OADAxL,QAAQD,MAAMyL,GACA,QAAVrB,EACKuJ,EAAID,EAENA,EAAIC,IAGflH,UAAW,SAACC,EAAMlC,GAChB,OAAO,yBAAK5I,MAAM,QAAQ8K,EAAOkJ,KAAOlJ,GAAM4J,OAAO,KAAO,OAGhE,CACEpK,UAAW,gBACXC,KAAM,gBACNC,cAAe,aACfG,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEvD,CACE6B,UAAW,aACXC,KAAM,SACNC,cAAe,aACfG,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEvD,CACE6B,UAAW,aACXC,KAAM,cACNC,cAAe,aACfG,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEvD,CACE6B,UAAW,eACXC,KAAM,SACNC,cAAe,aACfE,YAAa,QACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoJ,SAAU,SAACC,EAAGC,EAAGvJ,GACf,MAAc,QAAVA,EACKuJ,EAAE,GAAGlP,OAASiP,EAAE,GAAGjP,OAErBiP,EAAE,GAAGjP,OAASkP,EAAE,GAAGlP,QAE5BgI,UAAW,SAACC,EAAMlC,GAChB,OACE,yBAAK5I,MAAM,SACR4I,GACDA,EAAIyM,cACJ7U,MAAMC,QAAQmI,EAAIyM,eAClBzM,EAAIyM,aAAa3U,OAAS,EACtBmB,GAAiB+G,EAAIyM,aAAa,GAAGxS,QACrC,OAKZ,CACEyH,UAAW,eACXC,KAAM,eACNC,cAAe,aACfG,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEvD,CACE6B,UAAW,aACXC,KAAM,kBACNC,cAAe,aACfG,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEvD,CACE6B,UAAW,aACXC,KAAM,cACNC,cAAe,aACfG,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEvD,CACE6B,UAAW,cACXC,KAAM,SACNC,cAAe,aACfG,MAAM,EACNE,UAAW,SAACC,EAAMlC,GAChB,OACE,6BACGkC,GACCtK,MAAMC,QAAQqK,IACdA,EAAK,GAAGwK,YACe,SAAvBxK,EAAK,GAAGwK,YACN,2BACExa,KAAK,SACLmF,UAAU,kBACVjE,MAAK,UAAK8O,EAAK,GAAGyK,YAClBzP,QAAS,kBAAMsP,EAAmBxM,UAWpD,SAASL,GAAgBC,EAAOC,GAC9B,OAAKD,EACc,QAAVA,EACA,0BAAMvI,UAAU,6BACN,SAAVuI,EACA,0BAAMvI,UAAU,2BAClB,KALY,0BAAMA,UAAU,wBCzH9B,IAAIuV,GAAqC,KACrCC,GAAuC,KAErCC,GAAuB,WAEW,OAAvCF,SAAsF9T,IAAvC8T,IAC/CA,GAAmC/L,OAAO,gDAI9C,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBA8L,GAAqCrW,EAAYqE,SAEnB,IAAItH,SAAQ,SAAUC,EAASoC,GAEzDQ,GADO,UAAMtC,IAAN,Y7BiDqB,qC6BjDrB,WACE+Y,IAAoCxR,MACzC,SAAA2R,GAEOA,EAAiBjX,KAChBvC,EAAQwZ,EAAiBjX,MAEzBH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,mDAAoDuL,GAChEtL,EAAOsL,WCnBjB+L,GAAsB,SAACC,EAAUtL,GACrC,IAAIuL,EAAW,GACf,GAAGD,GAAYtL,GAAQ/J,MAAMC,QAAQoV,GAAW,CAC9C,IAAME,EAAgBxL,EAAK3I,cAC3BkU,EAAWD,EAAS1U,QAAO,SAAA6U,GACxB,SAAIA,EAAEC,YAAcD,EAAEC,WAAWrU,cAAcH,SAASsU,IAClDC,EAAEE,eAAiBF,EAAEE,cAActU,cAAcH,SAASsU,IAC1DC,EAAEG,YAAcH,EAAEG,WAAWvU,cAAcH,SAASsU,IACpDC,EAAEG,YAAcH,EAAEG,WAAWvU,cAAcH,SAASsU,IACpDC,EAAEI,YAAcJ,EAAEI,WAAWxU,cAAcH,SAASsU,IACpDC,EAAEK,YAAcL,EAAEK,WAAWzU,cAAcH,SAASsU,IACpDC,EAAEX,cAAgB7U,MAAMC,QAAQuV,EAAEX,eAAiBW,EAAEX,aAAa3U,OAAS,GAAKsV,EAAEX,aAAa,IAAMW,EAAEX,aAAa,GAAGxS,QAAUmT,EAAEX,aAAa,GAAGxS,OAAOlB,WAAWF,SAAS8I,IAC9KyL,EAAEM,SAAWtC,KAAOgC,EAAEM,SAAS5B,OAAO,KAAKjT,SAAS8I,OAS/D,OAAOuL,GA8FM3V,OAAMoW,MA3FE,WAAO,IAAD,EACSC,qBADT,oBACpBC,EADoB,KACRC,EADQ,OAEiBF,qBAFjB,oBAEpBG,EAFoB,KAEJC,EAFI,OAGqBJ,qBAHrB,oBAGpBK,EAHoB,KAGFC,EAHE,KAIrBvc,EAAUwc,aAAY,SAACra,GAAD,OAAWA,EAAME,IAAIrC,WAJtB,EAKOic,oBAAS,GALhB,oBAKpBjG,EALoB,KAKTyG,EALS,KAO3BC,qBAAU,WAERD,GAAa,GACbtB,KACG1R,MAAK,SAACC,GACDA,GAAOzD,MAAMC,QAAQwD,KACvB2S,EAAkB3S,GAClB6S,EAAoBL,EAAab,GAAoB3R,EAAKwS,GAAcxS,GACxE+S,GAAa,OAGhBpN,OAAM,SAACC,GACNmN,GAAa,GACb3Y,QAAQD,MAAM,uCAAwCyL,GACtDhL,KAAQT,MAAM,wCAEjB,CAAC7D,IAEJ,IAAM6a,EAAqB8B,uBAAY,SAACtO,IDlBP,SAACA,GACa,OAAzC6M,SAA0F/T,IAAzC+T,IACjDA,GAAqChM,OAAO,gDAIhD,IAAMtK,EAAcpB,IAAM2L,YA8C1B,OA7CA+L,GAAuCtW,EAAYqE,SAEnB,IAAItH,SAAQ,SAAUC,EAASoC,GAuB3Da,GAtBO,UAAM3C,IAAN,Y7BaoB,qC6BbpB,mBAAuDmM,GAAOA,EAAIuO,aAAe3W,MAAMC,QAAQmI,EAAIuO,cAAgBvO,EAAIuO,YAAYzW,OAAS,GAAKkI,EAAIuO,YAAY,GAAG7B,WAAa1M,EAAIuO,YAAY,GAAG7B,WAAa,IAC3M,CACT8B,SAAUxO,GAAOA,EAAIwO,SAAWxO,EAAIwO,cAAW1V,EAC/C6D,GAAIqD,GAAOA,EAAIrD,GAAKqD,EAAIrD,QAAK7D,EAC7B2V,WAAYzO,GAAOA,EAAIwN,WAAaxN,EAAIwN,gBAAa1U,EACrD4V,WAAY1O,GAAOA,EAAIyN,WAAazN,EAAIyN,gBAAa3U,EACrD6V,UAAW3O,GAAOA,EAAI4O,UAAY5O,EAAI4O,eAAY9V,EAClD+V,iBAAkB7O,GAAOA,EAAI8O,iBAAmB9O,EAAI8O,sBAAmBhW,EACvEiW,eAAgB/O,GAAOA,EAAIgP,eAAiBhP,EAAIgP,oBAAiBlW,EACjEmW,UAAWjP,GAAOA,EAAIkP,UAAYlP,EAAIkP,eAAYpW,EAClDqW,UAAWnP,GAAOA,EAAIoP,UAAYpP,EAAIoP,eAAYtW,EAClDuW,YAAarP,GAAOA,EAAIuO,aAAe3W,MAAMC,QAAQmI,EAAIuO,aAC5CvO,EAAIuO,YAAYlF,KAAI,SAAApX,GAChB,MAAO,CACJwc,WAAYxc,GAAUA,EAAOub,WAAavb,EAAOub,gBAAa1U,EAC9DwW,WAAYrd,GAAUA,EAAOsd,WAAatd,EAAOsd,gBAAazW,EAC9D0W,WAAYvd,GAAUA,EAAOya,WAAaza,EAAOya,gBAAa5T,EAC9D2W,WAAYxd,GAAUA,EAAO0a,WAAa1a,EAAO0a,gBAAa7T,WAGnEA,GAEH+T,IAAsCzR,MAClD,SAAAsU,GAEOA,EAAiB5Z,KAChBvC,EAAQmc,EAAiB5Z,MAEzBH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,mDAAoDuL,GAChEtL,EAAOsL,WC3BnB0O,CAAoB3P,GACjB5E,MAAK,WACJ0R,KACG1R,MAAK,SAACxF,GACDA,GAAYgC,MAAMC,QAAQjC,KAC5BoY,EAAkBpY,GAClBsY,EAAoBL,EAAab,GAAoBpX,EAAUiY,GAAcjY,GAC7EK,KAAQ2Z,QAAQ,uBAGnB5O,OAAM,SAACC,GACNxL,QAAQD,MAAM,uCAAwCyL,GACtDhL,KAAQT,MACN,gFAIPwL,OAAM,SAACC,GACNxL,QAAQD,MAAM,sCAAuCyL,GACrDhL,KAAQT,MAAM,wCAEjB,IASH,OAAImS,EAEA,yBAAKvQ,MAAM,UAAX,+BAC8B,kBAAC0R,GAAA,EAAD,CAASrC,KAAK,KAAKY,UAAU,UAM7D,yBAAKhQ,UAAU,aACb,yBAAKA,UAAU,OACb,yBAAKA,UAAU,YACf,2BAAOnF,KAAK,OAAOkB,MAAOya,EAAYvM,SAnBX,SAACpG,GAChC,IAAM2U,EAAc3U,GAASA,EAAMiG,OAASjG,EAAMiG,OAAO/N,WAAQ0F,EAChEgV,EAAc+B,GACd3B,EAAoB2B,EAAc7C,GAAoBe,EAAgB8B,GAAe9B,IAiBhF1M,YAAY,kBACZhK,UAAU,uBAGd,yBAAKA,UAAU,YACb,yBAAKA,UAAU,gCAAgCsF,GAAG,mBAChD,kBAAC,KAAD,CACE6E,SAAS,SACT1L,KAAMmY,GAAsC,GAC5CxM,QAAS8K,GAAwBC,GACjC5K,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRS,WAAW,qCACXC,iBAAkBtD,W,UCtHtB6Q,GAAYC,KAAZD,QAGR,SAASE,GAAWC,EAAMC,GACtB,IAAI9Z,EAAM6Z,EACPC,IACC9Z,EAAM6Z,EAAKnF,QAAQ,UAAWoF,EAAWC,sBAE7C1c,OAAO2c,KAAKha,EAAK,aAAc,wCAA0C3C,OAAO4c,OAAOC,WAAa,WAAa7c,OAAO4c,OAAOE,aAwB3H,SAASC,GAAT,GAA8C,IAArBC,EAAoB,EAApBA,MAAOP,EAAa,EAAbA,WACpC,OACE,yBACE5W,MAAO,CACLuP,MAAO,OACP1G,OAAQ,UACRuO,cAAe,SACfC,YAAa,WAGf,kBAAC,KAAD,CAAUC,QAAS,kBA/B3B,SAAyBH,EAAOP,GAC7B,OACE,kBAAC,KAAD,KACE,kBAAC,KAAKW,UAAN,CAAgBxT,MAAM,eACpB,kBAACyS,GAAD,CAASzS,MAAK,YACV,kBAAC,KAAKJ,KAAN,CAAWC,QAAS,kBAAM8S,GAAWlc,GAAMC,WAAWC,IAAItC,IAAIof,qCAA9D,kBAEIZ,GAAcA,EAAWC,qBACtBM,EAAMpH,KAAI,SAAA0H,GACV,OAAO,kBAAC,KAAK9T,KAAN,CAAWC,QAAS,kBAAM8S,GAAWe,EAAK3a,IAAK8Z,KAAca,EAAKC,cAKtF,kBAAC,KAAK/T,KAAN,2BACA,kBAAC,KAAKA,KAAN,CAAWC,QAAS,kBAAM8S,GAAWlc,GAAMC,WAAWC,IAAItC,IAAIuf,2BAA9D,aACA,kBAAC,KAAKhU,KAAN,iBAe0BiU,CAAgBT,EAAOP,KAC9C,uBAAG7Y,UAAU,oBAAoB6F,QAAS,SAAC9C,GAAD,OAAOA,EAAE+W,mBACjD,qCA0JZ,SAASxR,GAAgBC,EAAOC,GAC5B,OAAKD,EACc,QAAVA,EAAyB,0BAAMvI,UAAU,6BAC/B,SAAVuI,EAA0B,0BAAMvI,UAAU,2BAC5C,KAHa,0BAAMA,UAAU,wB,wBCzMjC,SAAS+Z,GAAkBC,GAgE9B,MA/De,CAEX,CACI3P,UAAW,aACXC,KAAM,cACNC,cAAe,gCACfC,QAAS,+BACTC,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEzD,CACI6B,UAAW,gBACXC,KAAM,YACNC,cAAe,aACfC,QAAS,iCACTC,YAAa,QACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEzD,CACI6B,UAAW,cACXC,KAAM,eACNC,cAAe,aACfC,QAAS,+BACTC,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEzD,CACI6B,UAAW,gBACXC,KAAM,SACNC,cAAe,aACfC,QAAS,+BACTC,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,MAAa,YAATkC,EACO,wCAEA,yBAAKoP,MAAM,mBAAX,YAGnB,CACI5P,UAAW,GACXC,KAAM,GACNI,MAAM,EACNK,cAAc,EACdN,YAAa,QACbD,QAAS,+BACTI,UAAW,SAACC,EAAMlC,GACd,MAA0B,YAAtBA,EAAIuR,cACG,8BAEA,4BAAQrf,KAAK,SAASof,MAAM,kBAAkBpU,QAAS,kBAAMmU,EAAarR,KAA1E,UAEf8J,OAAQ,KAQpB,SAASnK,GAAgBC,EAAOC,GAC5B,OAAKD,EACc,QAAVA,EAAyB,0BAAMvI,UAAU,6BAC/B,SAAVuI,EAA0B,0BAAMvI,UAAU,2BAC5C,KAHa,0BAAMA,UAAU,wBC/DjC,SAASma,GACZxa,GAuDA,OApDI,6BAEI,yBAAKK,UAAU,aACX,yBAAKA,UAAU,OACX,yBAAKA,UAAU,yDAAf,YAGA,yBAAKA,UAAU,YACX,kBAACoa,GAAA,EAAD,KACI,kBAACC,GAAA,EAAD,CAAWC,UAAU,mBAEjB,2BACIzf,KAAK,OACL0f,aAAa,MACbvQ,YAAY,SACZwQ,KAAK,aACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAM0V,WACnBpG,SAAUtK,EAAM8a,aAOpC,yBAAKza,UAAU,sCACX,4BAAQnF,KAAK,SAASof,MAAM,kBAAkBpU,QAAS,kBAAMlG,EAAM+a,qBAAnE,SAEH/a,GAASA,EAAMhF,MACZ,yBAAK2K,GAAG,8BAA8BtF,UAAU,8DAC5C,kBAAC,KAAD,CACImK,SAAS,YACT1L,KAAMkB,EAAMhF,MAAMggB,aAClBvQ,QAAS2P,GAAkBpa,EAAMqa,cACjCzP,cAAc,SACdS,UAAU,EAEVR,QAAQ,uBACRU,iBAAkBtD,MAMxB,yBAAK3C,IAAI,gBAAgB2C,MClDxC,IAAMgT,GAAb,YACI,WAAYjb,GAAQ,IAAD,8BACf,4CAAMA,KAaVkb,kBAAoB,WAChB,EAAKpX,SAAS,CACVkX,aAAc,EAAKhb,MAAMhF,MAAMmgB,aAAalF,SAAUmF,qBAAsB,EAAKpb,MAAMhF,MAAMmgB,aAAalF,YAhB/F,EAmBnB6E,OAAS,SAACjU,GACN,IAAIyK,EAAezK,EAAIsD,OAAO/N,MAC1Bif,EAAmB,aAAO,EAAKrgB,MAAMogB,sBACzCC,EAAsBA,EAAoB9Z,QAAO,SAAUwY,GACvD,OACqC,IAD9BA,EAAKxD,WAAWvU,cAAc8Y,OACjCxJ,EAAatP,kBAErB,EAAK8B,SAAS,CAAEkX,aAAcK,EAAqB3K,WAAYY,KA1BhD,EA4BnB+I,aAAe,SAACiB,GACZC,MAAM,4BA3BN,EAAKlB,aAAe,EAAKA,aAAa7V,KAAlB,gBACpB,EAAKsW,OAAS,EAAKA,OAAOtW,KAAZ,gBAEd,EAAKxJ,MAAQ,CACTwgB,mBAAmB,EACnBC,aAAa,EACbN,aAAc,GACdH,aAAc,GACdI,qBAAsB,GACtB1K,WAAY,IAXD,EADvB,sEAiCQ,OACI,kBAAC8J,GAAD,CACIxf,MAAOmF,KAAKnF,MACZ+f,iBAAkB5a,KAAKH,MAAM+a,iBAC7BV,aAAcla,KAAKka,aACnBS,OAAQ3a,KAAK2a,aAtC7B,GAA8Bta,aAoDfiH,gBARS,SAAC3K,GACrB,MAAO,KAIgB,GAGZ2K,CAA6CwT,ICtDrD,SAASS,GAAyBC,EAAgBC,EAAKC,EAAoBC,GA6C9E,MA5Ce,CAEX,CACIpR,UAAW,YACXC,KAAM,SACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAO,6BAAMkC,KAGrB,CACIR,UAAW,OACXC,KAAM,OACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACf,OAAO,6BAAMkC,KAGpB,CACIR,UAAW,GACXC,KAAM,GACNI,MAAM,EACNK,cAAc,EACdN,YAAa,QACbF,cAAe,aACfmR,gBAAiB,SAAC7Q,EAAMlC,GACpB,OAAQ,yBAAK5I,MAAM,QAAQC,UAAU,0CAA0C6F,QAAS,kBAAM0V,MAAtF,cAEZ3Q,UAAW,SAACC,EAAMlC,GACV,OAAO,yBAAK5I,MAAM,SACd,4BAAQlF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAMyV,EAAe3S,KAAhF,QACsB,MAArBA,EAAIgT,cAA2C,OAAnBhT,EAAIiT,iBAA0Cna,IAAnBkH,EAAIiT,YAA+C,KAAnBjT,EAAIiT,YAA6E,MAAxDxb,GAAmBqb,EAAU,uBAAiC,4BAAQ5gB,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM2V,EAAmB7S,KAApF,qBAAuH,OAS9T,SAASL,GAAgBC,EAAOC,GAC5B,OAAKD,EACc,QAAVA,EAAyB,0BAAMvI,UAAU,6BAC/B,SAAVuI,EAA0B,0BAAMvI,UAAU,2BAC5C,KAHa,0BAAMA,UAAU,wB,cCajC,SAAS6b,GAAgBzhB,GAC5B,IAAImE,EAAW,KACX,IACA,IACIud,EADY1hB,EAAM2hB,MAAM,KAAK,GACVtI,QAAQ,KAAM,KAAKA,QAAQ,KAAM,KACpDuI,EAAcC,mBAAmBC,KAAKJ,GAAQC,MAAM,IAAI/J,KAAI,SAASmK,GACrE,MAAO,KAAO,KAAOA,EAAE5Z,WAAW,GAAGb,SAAS,KAAK0a,OAAO,MAC3DC,KAAK,KAER9d,EAAYsP,KAAKyO,MAAMN,GAE3B,MAAMO,IAIT,OAAOhe,EAID,SAASie,GAAgBC,EAAWC,GAEvC,GAAiB,OAAdD,QAAoChb,IAAdgb,GACN,OAAZC,QAAgCjb,IAAZib,GAAyBnc,MAAMC,QAAQkc,GAC9D,OAAOA,EAAQC,QAAO,SAACC,EAAK3X,GAAN,OACjB2X,QAAoBnb,IAAbmb,EAAI3X,IAAmC,OAAb2X,EAAI3X,GAAkB2X,EAAI3X,GAAO,KAAIwX,G,yBC1CpEI,GAzCQ,SAAC,GAA2D,IAAzDC,EAAwD,EAAxDA,wBAAyBC,EAA+B,EAA/BA,0BAExC3iB,EAAS0c,aAAY,SAAAra,GAAK,OAAIA,EAAME,OAApCvC,MAFuE,EAGM0c,aAAY,SAAAra,GAAK,OAAIA,EAAME,IAAItC,OAA5GuC,EAHuE,EAGvEA,sBAAuBogB,EAHgD,EAGhDA,mBAAoBC,EAH4B,EAG5BA,+BAH4B,EAIpDnG,aAAY,SAAAra,GAAK,OAAIA,EAAME,IAAIpC,QAAlDuM,EAJuE,EAIvEA,SAAU0T,EAJ6D,EAI7DA,KACX0C,EAAe1C,EAAOA,EAAKuB,MAAM,KAAO,GACxCoB,EAAYD,EAAa,GAAKA,EAAa,GAAI,GAC/CE,EAAWF,EAAa,GAAKA,EAAa,GAAK,GACrD,OACI,oCACI,kBAAClO,GAAA,EAAD,CAAO1K,OAAQwY,EAAyB5Y,OAAQ6Y,EAA2B9X,IAAI,gBAC3EkK,UAAU,EACVC,KAAK,KACLjK,OAAO,OACPnF,UAAU,eACVqP,cAAc,uBACdC,eAAe,qBACfC,iBAAiB,uBACjBC,UAAQ,GACR,kBAACC,GAAA,EAAD,CAAavL,OAAQ6Y,EAA2BrN,SAAS,IAAIzK,IAAI,iBAC7D,2BAAOjF,UAAU,mBAAoBiF,IAAI,iBAAzC,iBAGJ,kBAAC0K,GAAA,EAAD,CAAW3P,UAAU,sBAAsBiF,IAAI,iBAC3C,kBAAC,KAAD,CACIoY,UAAWF,EACXG,SAAUF,EACV7X,MAAOgY,aAAUC,KACjBxP,QAASlH,EACT1M,MAAOA,EACPqjB,UAAU,GACVC,QAASV,EACTxgB,WAAYI,EACZ+gB,kBAAmBC,wBAAqBC,OACxCC,cAAeb,QC2BxBc,G,iLA7DP,OACI,yBACI/d,UAC6B,OAAxBF,KAAKH,MAAMqe,eACmBvc,IAAxB3B,KAAKH,MAAMqe,UACXzd,MAAMC,QAAQV,KAAKH,MAAMqe,WACzBle,KAAKH,MAAMqe,SAASvd,OAAS,EAAKX,KAAKH,MAAMse,eAAiB,IAErEne,KAAKH,MAAMqe,UAAYle,KAAKH,MAAMqe,SAAShM,KAAI,SAACkM,EAAKhM,GAAN,OAC3C,yBAAKjN,IAAI,UAEDiZ,EAAIjE,QAAUjS,GACR,yBAAK/C,IAAKiN,EAAOlS,UAAWke,EAAIjE,OAC9B,yBAAMja,UAAU,kBAChB,yBAAKA,UAAU,gBAAgBke,EAAI5T,OAErC,GAGN4T,EAAIjE,QAAUjS,GACR,yBAAK/C,IAAKiN,EAAOlS,UAAWke,EAAIjE,MAAM,8BACpC,yBAAKja,UAAU,wBAAf,IAAwCke,EAAI5T,OAE9C,GAGN4T,EAAIjE,QAAUjS,GACR,yBAAK/C,IAAKiN,EAAOlS,UAAWke,EAAIjE,MAAM,8BACpC,yBAAKja,UAAU,qBAAqBke,EAAI5T,OAE1C,GAGN4T,EAAIjE,QAAUjS,GACR,yBAAK/C,IAAKiN,EAAOlS,UAAWke,EAAIjE,MAAQ,6BACtC,yBAAKja,UAAU,uBAAsB,4BAAQA,UAAU,uBAAlB,aAA2Dke,EAAI5T,OAEtG,GAGN4T,EAAIjE,QAAUjS,GACR,yBAAK/C,IAAKiN,EAAOlS,UAAWke,EAAIjE,OAC9B,yBAAKja,UAAU,IAAIke,EAAI5T,OAEzB,GAGN4T,EAAIjE,QAAUjS,GACR,yBAAK/C,IAAKiN,EAAOlS,UAAWke,EAAIjE,OAC9B,yBAAKja,UAAU,gBAAf,8CAEF,Y,GArDfG,aC8ORge,GA5OY,SAAC,GAEsB,IAFpBC,EAEmB,EAFnBA,oBAAqBnjB,EAEF,EAFEA,KAAMojB,EAER,EAFQA,kBAAmBC,EAE3B,EAF2BA,cAAeC,EAE1C,EAF0CA,sBAAuBC,EAEjE,EAFiEA,sBAC9GC,EAC6C,EAD7CA,qBAAsBjV,EACuB,EADvBA,OAAQkV,EACe,EADfA,KAAM5B,EACS,EADTA,wBAAyBC,EAChB,EADgBA,0BAA2B4B,EAC3C,EAD2CA,mBAAoBC,EAC/D,EAD+DA,mBAC5GC,EAA6C,EAA7CA,YAAaC,EAAgC,EAAhCA,0BAAgC,EAGWvI,oBAAS,GAHpB,oBAGtCwI,EAHsC,KAGhBC,EAHgB,OAIWzI,oBAAS,GAJpB,oBAItC0I,EAJsC,KAIhBC,EAJgB,KAM7C,OACI,oCAEQjkB,EAAO,6BACH,yBAAK+E,UAAU,OAEE,SAAT/E,EAEI,yBAAK+E,UAAU,sEAAf,kBACoBse,EAAca,WAGlC,yBAAKnf,UAAU,sEAAf,wBAMZ,6BACI,kBAACoa,GAAA,EAAD,KAEI,yBAAKpa,UAAU,OACX,yBAAKA,UAAU,wCACX,kBAACqa,GAAA,EAAD,KACI,mDACA,2BACIxf,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,SACLxa,UAAU,mBACVjE,MAAOuiB,EAAca,UACrBlV,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,IACnC4Y,SAAmB,SAATnkB,MAItB,yBAAK+E,UAAU,wCACX,kBAACqa,GAAA,EAAD,KACI,iDACA,2BACIxf,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,OACLxa,UAAU,mBACVjE,MAAOuiB,EAAc9D,KACrBvQ,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,QAK/C,yBAAKxG,UAAU,yCAcf,yBAAKA,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,yBAAKta,UAAU,qBACX,kBAAC8U,GAAA,EAAD,CAAOuK,IAAI,QAAX,YAGJ,kBAACjZ,GAAA,EAAD,CAAUoU,KAAK,iBAAiB8E,UAAQ,EACpChb,OAAQya,EACR7a,OAAQ,kBAAM8a,GAAwB,SAAAO,GAAwB,OAAKA,MACnEvf,UAAU,qDACV,kBAACqG,GAAA,EAAD,CAAgBmZ,OAAK,GAAElB,EAAcmB,eACrC,kBAACnZ,GAAA,EAAD,KAEQ,6BACKqY,GAA6C,OAAvBA,GAA+BA,EAAmB3M,KAAI,SAAC0H,EAAMxH,GAAP,OACzE,kBAAC3L,GAAA,EAAD,CAActB,IAAKiN,EAAOrM,QAAS,kBAAM4Y,EAAqB/E,EAAM,oBAChE,6BAAMA,EAAKc,eAY3C,yBAAKxa,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,yBAAKta,UAAU,qBACX,kBAAC8U,GAAA,EAAD,CAAOuK,IAAI,QAAX,eAGJ,kBAACjZ,GAAA,EAAD,CAAUoU,KAAK,iBAAiB8E,UAAQ,EACpChb,OAAQ2a,EACR/a,OAAQ,kBAAMgb,GAAwB,SAAAQ,GAAwB,OAAKA,MACnE1f,UAAU,qDACV,kBAACqG,GAAA,EAAD,CAAgBmZ,OAAK,GAAElB,EAAcqB,eACrC,kBAACrZ,GAAA,EAAD,KAEQ,6BACKsY,GAA6C,OAAvBA,GAA+BA,EAAmB5M,KAAI,SAAC0H,EAAMxH,GAAP,OACzE,kBAAC3L,GAAA,EAAD,CAActB,IAAKiN,EAAOrM,QAAS,kBAAM4Y,EAAqB/E,EAAM,oBAChE,6BAAMA,EAAKc,eAU1C4D,EACK,oCAEE,yBAAKpe,UAAU,iDACqB,OAA/Bse,EAAc3C,cAAwD,MAA/B2C,EAAc3C,aAChD4C,EACI,2BAAOve,UAAU,kCAAkCgG,MAAM,mDAAzD,gBACA,2BAAOhG,UAAU,gBAAgB6F,QAAS,kBAAM2Y,EAAsB,oBAAtE,gBACJ,2BAAOxe,UAAU,gBAAgB6F,QAAS,kBAAM2Y,EAAsB,sBAAtE,mBAMV,yBAAKxe,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBAEjB,yBAAKta,UAAU,qBACX,kBAAC8U,GAAA,EAAD,CAAOuK,IAAI,QAAX,wBAEJ,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,oBACLxa,UAAU,mBACVsf,UAAQ,EACRvjB,MAAOuiB,EAAcsB,kBACrB3V,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,IACnCqZ,OAAQ,SAAArZ,GAAG,OAAIqY,EAAYrY,IAC3B4Y,SAAyC,MAA/Bd,EAAc3C,iBAMpC,yBAAK3b,UAAU,wCACX,kBAACqa,GAAA,EAAD,KACI,sDACA,2BACIxf,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,gBACLxa,UAAU,mBACVjE,MAAOuiB,EAAcwB,SACrB7V,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,IACnC4Y,SAAyC,MAA/Bd,EAAc3C,cAA4D,KAApC2C,EAAcsB,sBAI1E,yBAAK5f,UAAU,wCACX,kBAACqa,GAAA,EAAD,KACI,wDACA,2BACIxf,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,sBACLxa,UAAU,mBACVjE,MAAOuiB,EAAcyB,YACrB9V,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,IACnC4Y,SAAyC,MAA/Bd,EAAc3C,iBAIpC,yBAAK3b,UAAU,2CAEwB,KAA9B8e,GACE,kBAAC,GAAD,CAAUd,SAAU,CAAC,CAAE,KAAQc,EAA2B,MAAS,8BAAgCb,eAAgB,qCAKhI,IAKV,yBAAKje,UAAU,OACX,yBAAKA,UAAWoe,EAAsB,gCAAiC,yDAAyDre,MAAM,SAClI,4BAAQlF,KAAK,SAASmF,UAAU,sDAAsD6F,QAAS,kBAAM2D,MAArG,UADJ,QAGoB,4BAAQ3O,KAAK,SAASmF,UAAU,oDAC3C6F,QAAS,kBAAM6Y,MACN,SAATzjB,EAAkB,OAAS,WAOhD,kBAAC,GAAD,CACI6hB,wBAAyBA,EACzBC,0BAA2BA,KAI/B,yBAAK/c,UAAU,OACX,yBAAKA,UAAU,sEAAf,+BC7NbggB,GAA0C,KAuC1CC,GAA4C,KAuC5CC,GAA4C,KAsC5CC,GAAyC,KAuCzCC,GAA2C,KA+B3CC,GAA+B,KAwD/BC,GAAwC,KAEtCC,GAAuB,SAACjP,GAEa,OAA1CgP,SAA4F7e,IAA1C6e,IAClDA,GAAsC9W,OAAO,gDAIjD,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBA6W,GAAwCphB,EAAYqE,SAEzB,IAAItH,SAAQ,SAAUC,EAASoC,GAGtDQ,GAFO,UAAMtC,IAAN,YxCrNc,+CwCqNd,OAAyC8U,GAEvCgP,IAAuCvc,MAC5C,SAAAxF,GACQA,EACArC,EAAQqC,GAERD,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,4CAA6CuL,GACzDtL,EAAOsL,WAWZ4W,GAAwC,KAEtCC,GAAuB,SAACC,GAEa,OAA1CF,SAA4F/e,IAA1C+e,IAClDA,GAAsChX,OAAO,gDAIjD,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBA+W,GAAwCthB,EAAYqE,SAEzB,IAAItH,SAAQ,SAAUC,EAASoC,GAGtDa,GAFO,UAAM3C,IAAN,YxC3PiB,qCwC6PdkkB,EAAYF,IAAuCzc,MACzD,SAAAxF,GACQA,EAASE,KACTvC,EAAQqC,EAASE,MAEjBH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,qCAAsCuL,GAClDtL,EAAOsL,WAWZ+W,GAAkC,KAEhCC,GAAqB,SAACzJ,GAES,OAApCwJ,SAAgFlf,IAApCkf,IAC5CA,GAAgCnX,OAAO,gDAI3C,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBAkX,GAAkCzhB,EAAYqE,SAErB,IAAItH,SAAQ,SAAUC,EAASoC,GAGpDQ,GAFO,UAAMtC,IAAN,YxChSe,wCwCgSf,qBAAiD2a,GAE/CwJ,IAAiC5c,MACtC,SAAAxF,GACQA,EACArC,EAAQqC,GAERD,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,0CAA2CuL,GACvDtL,EAAOsL,WAWZiX,GAAsC,KAEpCC,GAAqB,SAACJ,EAAYzlB,GAEC,OAAxC4lB,SAAwFpf,IAAxCof,IAChDA,GAAoCrX,OAAO,gDAI/C,IAAMtK,EAAcpB,IAAM2L,YA2B1B,OA1BAoX,GAAsC3hB,EAAYqE,SAEzB,IAAItH,SAAQ,SAAUC,EAASoC,GACpD,IAAIyiB,EAAuB,QAAT9lB,ExCtUA,uCACG,0CwCyUrBkE,GAFO,UAAM3C,IAAN,YAAsBukB,GAEnBL,EAAYG,IAAqC9c,MACvD,SAAAxF,GACQA,EAASE,KACTvC,EAAQqC,EAASE,MAEjBH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,mCAAoCuL,GAChDtL,EAAOsL,WAWZoX,GAAyC,KAEvCC,GAAwB,SAAC9J,GAEa,OAA3C6J,SAA8Fvf,IAA3Cuf,IACnDA,GAAuCxX,OAAO,gDAIlD,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBAuX,GAAyC9hB,EAAYqE,SAErB,IAAItH,SAAQ,SAAUC,EAASoC,GAG3DQ,GAFO,UAAMtC,IAAN,YxC7WsB,gDwC6WtB,oBAAuD2a,GAErD6J,IAAwCjd,MAC7C,SAAAxF,GACQA,EACArC,EAAQqC,GAERD,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,iDAAkDuL,GAC9DtL,EAAOsL,WAkDZsX,GAA+C,KAE7CC,GAA8B,SAAChK,GAEa,OAAjD+J,SAA0Gzf,IAAjDyf,IACzDA,GAA6C1X,OAAO,gDAIxD,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBAyX,GAA+ChiB,EAAYqE,SAErB,IAAItH,SAAQ,SAAUC,EAASoC,GAGjEQ,GAFO,UAAMtC,IAAN,YxC1b4B,8CwC0b5B,qBAA8D2a,GAE5D+J,IAA8Cnd,MACnD,SAAAxF,GACQA,EACArC,EAAQqC,GAERD,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,gDAAiDuL,GAC7DtL,EAAOsL,WASZwX,GAAyC,KAEvCC,GAAwB,WAEc,OAA3CD,SAA8F3f,IAA3C2f,IACnDA,GAAuC5X,OAAO,gDAIlD,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBA2X,GAAyCliB,EAAYqE,SAErB,IAAItH,SAAQ,SAAUC,EAASoC,GAG3DQ,GAFO,UAAMtC,IAAN,YxC9dsB,gDwCgepB4kB,IAAwCrd,MAC7C,SAAAxF,GACQA,EACArC,EAAQqC,GAERD,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,kDAAmDuL,GAC/DtL,EAAOsL,WAUZ0X,GAA6C,KAE3CC,GAA4B,WAEc,OAA/CD,SAAsG7f,IAA/C6f,IACvDA,GAA2C9X,OAAO,gDAItD,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBA6X,GAA6CpiB,EAAYqE,SAEzB,IAAItH,SAAQ,SAAUC,EAASoC,GAG3DQ,GAFO,UAAMtC,IAAN,YxCngBsB,gDwCqgBpB8kB,IAA4Cvd,MACjD,SAAAxF,GACQA,EACArC,EAAQqC,GAERD,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,iDAAkDuL,GAC9DtL,EAAOsL,WAUZ4X,GAAoD,KAuCpDC,GAAwD,K,UChmBpDC,GA7BW,SAAC,GAA8H,IAA5HC,EAA2H,EAA3HA,2BAA4BC,EAA+F,EAA/FA,6BAA8BC,EAAiE,EAAjEA,oBAAqBC,EAA4C,EAA5CA,wBAAyBC,EAAmB,EAAnBA,cAEjI,OACI,oCACI,kBAAC/S,GAAA,EAAD,CAAO1K,OAAQqd,EAA4Bzd,OAAQ0d,EAC/C5hB,UAAU,eACVqP,cAAc,uBACdC,eAAe,qBACfC,iBAAiB,uBACjBpK,OAAO,OACPqK,UAAQ,GACR,kBAACC,GAAA,EAAD,CAAavL,OAAQ0d,EAA8B5hB,UAAU,wDAAwDiF,IAAI,4BAErH,2BAAOjF,UAAU,mBAAmBiF,IAAI,4BAAxC,iBAEJ,kBAAC0K,GAAA,EAAD,CAAW1K,IAAI,4BAEX,yBAAKA,IAAI,4BAA2B,kBAAC6P,GAAA,EAAD,CAAOuK,IAAI,YAAYpa,IAAI,4BAA4B4c,KAG/F,kBAACG,GAAA,EAAD,CAAahiB,UAAU,0BAA0BiF,IAAI,4BACjD,4BAAQpK,KAAK,SAASmF,UAAU,yCAAyC6F,QAAS,kBAAM+b,EAA6BE,IAA0B7c,IAAI,4BAAnJ,UACA,4BAAQpK,KAAK,SAASmF,UAAU,qCAAqC6F,QAAS,kBAAMkc,EAAcD,IAA0B7c,IAAI,4BAAhI,e,SCNPgd,GAAmB,WAC5B9Y,KAAK+Y,KAAK,wBAAyB,CAAC7Y,SAAU,EAAGC,QAAS,KAOjD6Y,GAA+B,WACxChZ,KAAK+Y,KAAK,wBAAyB,CAAC7Y,SAAU,GAAKC,QAAS,KCpBrD8Y,GAA6B,KAE7BC,GAAmC,KACnCC,GAAyD,KACzDC,GAAyC,KACzCC,GAAsC,KACtCC,GAA+B,KAC/BC,GAA0C,KAC1CC,GAAoC,KAgMlCC,GAAwB,SAACroB,GAIa,OAA3CgoB,SAA8F9gB,IAA3C8gB,IAEnDA,GAAuC/Y,OAAO,mEAGlD,IAAIqZ,EAAUtoB,EAAKuM,SAAWvM,EAAKuM,SAAW,GAExC5H,EAAcpB,IAAM2L,YAmB1B,OAlBA8Y,GAAyCrjB,EAAYqE,SAEzB,IAAItH,SAC5B,SAAUC,EAASoC,GAEfa,GADO,UAAM3C,IAAN,Y3ChNc,qC2CgNd,oBAAmDqmB,GAChD,GAAIN,IAAwCxe,MAAK,SAAAC,GACvD9H,EAAQ8H,MAEX2F,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,kDAAmDF,GAC/DG,EAAOuJ,YAgFbib,GAAc,SAACC,EAAW1W,GAGC,OAAjCoW,SAA0EhhB,IAAjCghB,IAEzCA,GAA6BjZ,OAAO,8FAIxC,IAAMtK,EAAcpB,IAAM2L,YAwB1B,OAvBAgZ,GAA+BvjB,EAAYqE,SAElB,IAAItH,SACzB,SAAUC,EAASoC,GAEfQ,GADO,UAAMtC,IAAN,Y3ClTW,sC2CkTX,sBAAkDumB,EAAlD,kBAAqE1W,GACnEoW,IAA8B1e,MAAK,SAAAC,GAErCA,GAAOA,EAAIvF,KACVvC,EAAQ8H,EAAIvF,MAEZH,EAAOuJ,OAGd8B,OAAM,SAACxL,GACAL,IAAMU,WACNJ,QAAQC,IAAIF,IAGZC,QAAQD,MAAM,mDAAoDA,GAClEG,EAAOuJ,YCrVdmb,GAAuB,SAACra,GAAD,OAAS,SAAC3M,GAC1C,OAAOC,QAAQC,QACVF,EAAS,CACLnB,KnDAyB,yBmDCzBC,QAAS6N,OCkIPsa,GA9HS,SAAC,GAA4D,IAA1DC,EAAyD,EAAzDA,sBAA6BC,GAA4B,EAAlC1kB,KAAkC,EAA5B0kB,uBAA4B,EAC1C5M,oBAAS,GADiC,oBACzE1K,EADyE,KAC5DuX,EAD4D,OAE1C7M,mBAAS,IAFiC,oBAEzE5K,EAFyE,KAE5D0X,EAF4D,KAG1ErnB,EAAWsnB,cACX/oB,EAAOuc,aAAY,SAAAnc,GAAK,OAAI6hB,GAAgB7hB,EAAO,CAAC,MAAO,YAE3D4oB,EAAqBtM,uBACvB,SAACtO,GAAD,OAAS3M,EAASgnB,GAAqBra,MACvC,CAAC3M,IAELgb,qBAAU,WAGN,OADAwM,IACO,WAC4C,OAA3CjB,SAA8F9gB,IAA3C8gB,IACnDA,GAAuC/Y,OAAO,0EAGvD,IACH,IAAMga,EAAkB,WACO,IAAvB7X,EAAYlL,QAAgBlG,GAAiB,OAATA,IACpC6oB,GAAe,SAAAK,GAAe,OAAI,KAClCb,GAAsBroB,GAAMwJ,MAAK,SAAAC,GACzBA,GAAOA,EAAIvF,MAAQ8B,MAAMC,QAAQwD,EAAIvF,OAASuF,EAAIvF,KAAKgC,OAAS,GAChE4iB,EAAerf,EAAIvF,MAGvB2kB,GAAe,SAAAK,GAAe,OAAI,QAEjC9Z,OAAM,SAAAC,GAEHxL,QAAQD,MAAM,0DA8C9B,OACI,oCACI,kBAAC6Q,GAAA,EAAD,CAAO1K,OAAQ4e,EAAuBhf,OAAQif,EAC1CnjB,UAAU,eACVqP,cAAc,uBACdC,eAAe,qBACfC,iBAAiB,uBACjBpK,OAAO,OACPqK,UAAQ,GACR,kBAACC,GAAA,EAAD,CAAavL,OAAQif,EAAuBnjB,UAAU,yDAElD,2BAAOA,UAAU,oBAAjB,kBAEJ,kBAAC2P,GAAA,EAAD,KAEQ9D,EAAc,yBAAK9L,MAAM,SAASC,UAAU,QAA9B,uBACQ,kBAACyR,GAAA,EAAD,CAASzB,UAAU,OAAOZ,KAAK,KAAKa,QAAQ,UAE5D,oCAGMtE,EACI,yBAAKrG,GAAG,wBAAwBtF,UAAU,mDACtC,kBAAC,KAAD,CACImK,SAAS,QACT1L,KAAMkN,EACNvB,QAhEhB,SAACsZ,GA8BzB,MA7Be,CACX,CACIrZ,UAAW,OACXC,KAAM,cACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAwBvB,SAAyBD,EAAOC,GAC5B,IAAKD,EAAO,OAAQ,0BAAMvI,UAAU,wBAC/B,GAAc,QAAVuI,EAAiB,OAAQ,0BAAMvI,UAAU,6BAC7C,GAAc,SAAVuI,EAAkB,OAAQ,0BAAMvI,UAAU,2BACnD,OAAO,KA5B+BsI,CAAgBC,IAC9CqC,UAAW,SAACC,EAAMlC,GACf,OAAO,6BAAMkC,KAIpB,CACIR,UAAW,GACXC,KAAM,GACNI,MAAM,EACNK,cAAc,EACdN,YAAa,QACbF,cAAe,aAEfK,UAAW,SAACC,EAAMlC,GACd,OAAQ,yBAAK5I,MAAM,SACf,4BAAQlF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM6d,EAAmB/a,KAApF,cAwCiCgb,EApE1B,SAAAhb,GACvB4a,EAAmB5a,GACnBwa,OAmEwC5Y,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRS,WAAW,qCACXC,iBAAkBtD,MAGxB,yBAAK3C,IAAI,gBAAgB2C,MAMnD,kBAACoa,GAAA,EAAD,CAAahiB,UAAU,2BACnB,4BAAQnF,KAAK,SAASmF,UAAU,yCAAyC6F,QAAS,kBAAMsd,MAAxF,c,UCsgBJS,GAjnBI,SAACjkB,GAAW,IAAD,EACW4W,oBAAS,GADpB,oBACpB1K,EADoB,KACPuX,EADO,OAEe7M,mBAAS,IAFxB,oBAEpB+H,EAFoB,KAELuF,EAFK,OAIHtN,mBAAS,IAJN,oBAIpBtb,EAJoB,KAId6oB,EAJc,OAK2BvN,oBAAS,GALpC,oBAKpB6H,EALoB,KAKC2F,EALD,OAMmCxN,oBAAS,GAN5C,oBAMpBuG,EANoB,KAMKkH,EANL,OAO6BzN,oBAAS,GAPtC,oBAOpB0N,EAPoB,KAOEC,EAPF,OAQmB3N,mBAAS,IAR5B,oBAQpB4N,EARoB,KAQHC,EARG,OASK7N,mBAAS,IATd,oBASpB8N,EAToB,KASVC,EATU,OAUO/N,mBAAS,IAVhB,oBAUpBgO,EAVoB,KAUTC,EAVS,OAWyBjO,mBAAS,IAXlC,oBAWpBoI,EAXoB,KAWA8F,EAXA,OAYyBlO,mBAAS,IAZlC,oBAYpBqI,EAZoB,KAYA8F,EAZA,OAaanO,mBAAS,IAbtB,qBAapBuE,GAboB,MAaN6J,GAbM,SAc+BpO,oBAAS,GAdxC,sBAcpBgI,GAdoB,MAcGqG,GAdH,SAgByCrO,oBAAS,GAhBlD,sBAgBpBoL,GAhBoB,MAgBQkD,GAhBR,SAiB2BtO,mBAAS,IAjBpC,sBAiBpBsL,GAjBoB,MAiBCiD,GAjBD,SAkBmCvO,mBAAS,IAlB5C,sBAkBpBuL,GAlBoB,MAkBKiD,GAlBL,SAmB2BxO,mBAAS,IAnBpC,sBAmBpByO,GAnBoB,MAmBCC,GAnBD,SAoBqB1O,mBAAS,IApB9B,sBAoBpB2O,GApBoB,MAoBFC,GApBE,SAqBuC5O,mBAAS,IArBhD,sBAqBpBuI,GArBoB,MAqBOsG,GArBP,SAsB+B7O,oBAAS,GAtBxC,sBAsBpB2M,GAtBoB,MAsBGmC,GAtBH,SAuBS9O,mBAAS,IAvBlB,sCAwB6BA,oBAAS,IAxBtC,sBA0BrBva,IA1BqB,YA0BVsnB,eACX7H,GAAW3E,aAAY,SAAAnc,GAAK,OAAI6hB,GAAgB7hB,EAAM,CAAC,MAAM,kBAC7DS,GAAiB0b,aAAY,SAAAnc,GAAK,OAAI6hB,GAAgB7hB,EAAO,CAAC,YAAa,sBAEjFqc,qBAAU,WAGN,OAFA2N,IAAgB,SAAAW,GAAsB,OAAO,eAAKlqB,OAClDgB,OAAOmpB,iBAAiB,oBAAqBC,IACtC,WACHppB,OAAOqpB,oBAAoB,oBAAqBD,IACE,OAA9CvF,SAAoGxe,IAA9Cwe,IACtDA,GAA0CzW,OAAO,uEAEH,OAA9C0W,SAAoGze,IAA9Cye,IACtDA,GAA0C1W,OAAO,uEAEN,OAA3C2W,SAA8F1e,IAA3C0e,IACnDA,GAAuC3W,OAAO,uEAED,OAA7C4W,SAAkG3e,IAA7C2e,IACrDA,GAAyC5W,OAAO,uEAEf,OAAjC6W,SAA0E5e,IAAjC4e,IACzCA,GAA6B7W,OAAO,0EAI7C,IACHwN,qBAAU,YN9D0B,WAEY,OAA5CgJ,SAAgGve,IAA5Cue,IACpDA,GAAwCxW,OAAO,gDAInD,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBAuW,GAA0C9gB,EAAYqE,SAE5B,IAAItH,SAAQ,SAAUC,EAASoC,GAErDQ,GADO,UAAMjB,GACL,IAA6CkG,MACjD,SAAA2hB,GAEOA,EAAYjnB,KACXvC,EAAQwpB,EAAYjnB,MAEpBH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,2DAA4DuL,GACxEtL,EAAOsL,WMuCf+b,GAA4B5hB,MAAK,SAAAC,GAG7BygB,EAAsB,aAAIzgB,EAAI4hB,YAC9BlB,EAAsB,aAAI1gB,EAAI6hB,eAE7Blc,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,QAGvB,IACHoN,qBAAU,WACF8D,IAAgBA,GAAapO,OAC7BoZ,KACAtB,GAAa,SAAAuB,GAAa,MAAI,SAEnC,CAACjL,KACJ9D,qBAAU,WACFsH,EAAc0H,QAAU1H,EAAc2H,OACtCvH,KAEAwH,OACL,CAAC5H,IAEJtH,qBAAU,WACN2N,IAAgB,SAAAW,GAAsB,OAAO,eAAKlqB,SACnD,CAACA,KAEJ,IAAM0qB,GAAoB,WACtB1C,GAAe,SAAAK,GAAe,OAAI,KAClC2B,IAA6B,SAAAe,GAA6B,MAAI,MNxD9B,SAACC,GAEa,OAA9CnG,SAAoGxe,IAA9Cwe,IACtDA,GAA0CzW,OAAO,gDAIrD,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBAwW,GAA4C/gB,EAAYqE,SAEzB,IAAItH,SAAQ,SAAUC,EAASoC,GAG1Da,GAFO,UAAM3C,IAAN,YxChBkB,6CwCgBlB,kBAAoD4pB,GAEjDnG,IAA2Clc,MACjD,SAAA2hB,GACQA,EAAYjnB,KACZvC,EAAQwpB,EAAYjnB,MAEpBH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,iDAAkDuL,GAC9DtL,EAAOsL,UM+Bfyc,CAAyBvL,GAAapO,MAAM3I,MAAK,SAAAC,GAG7C,GAAwB,WAApBA,EAAItF,OAAO4nB,MACX,GAAItiB,GAAOA,EAAIuiB,aAAeviB,EAAIuiB,aAAmC,OAApBviB,EAAIuiB,aAAwBhmB,MAAMC,QAAQwD,EAAIuiB,aAAc,CACzG,IAAI9nB,EAAOuF,EAAIuiB,YACfnC,EAAmB3lB,GACnB6lB,EAAY7lB,SAGhBwjB,KACArjB,KAAQT,MAAM,yDACdC,QAAQD,MAAM,wCAElBilB,GAAe,SAAAK,GAAe,OAAI,QAGjC9Z,OAAM,SAAAC,GACHwZ,GAAe,SAAAK,GAAe,OAAI,KAClCxB,KACArjB,KAAQT,MAAM,yDACdC,QAAQD,MAAM,4CAcpBqnB,GAA4BvO,uBAAY,SAACpT,GAE3C,GAAIA,GAASA,EAAM2iB,QAAU3iB,EAAM2iB,OAAOC,eAAsChlB,IAA1BoC,EAAM2iB,OAAOC,UAC3B,IAAjC5iB,EAAM2iB,OAAOC,SAAShmB,OAAc,CACvC,IAAIimB,EAAW7iB,GAASA,EAAM2iB,QAAU3iB,EAAM2iB,OAAOC,UAAY5iB,EAAM2iB,OAAOC,UAAY5iB,EAAM2iB,OAAOC,SAAShmB,OAAS,GACrHoD,EAAM2iB,OAAOC,SAAS,GAAM5iB,EAAM2iB,OAAOC,SAAS,GAAK,INpBlC,SAACE,GAEa,OAA3CxG,SAA8F1e,IAA3C0e,IACpDA,GAAuC3W,OAAO,gDAIjD,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBA0W,GAAyCjhB,EAAYqE,SAEzB,IAAItH,SAAQ,SAAUC,EAASoC,GAGvDa,GAFO,UAAM3C,IAAN,YxC3FkB,sCwC6FfmqB,EAAmBxG,IAAwCpc,MACjE,SAAAxF,GACQA,EAASE,KACTvC,EAAQqC,EAASE,MAEjBH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,+CAAgDuL,GAC5DtL,EAAOsL,WMQXgd,CAbc,CACV,UAAa,GACb,mBAAsB,CAAC,CACnB,OAAWF,GAAWA,EAAQG,kBAAqBzqB,OAAO0qB,KAAKJ,EAAQG,mBAAqB,GAC5F,IAAQH,GAAWA,EAAQ9K,WAAc8K,EAAQ9K,WAAa,GAC9D,OAAW8K,GAAWA,EAAQK,cAAiBL,EAAQK,cAAgB,GACvE,SAAaL,GAAWA,EAAQM,YAAeN,EAAQM,YAAc,GACrE,qBAAyBN,GAAWA,EAAQO,qBAAwBP,EAAQO,qBAAuB,GACnG,SAAaP,GAAWA,EAAQQ,cAAiB9qB,OAAO0qB,KAAKJ,EAAQQ,eAAiB,GACtF,OAAWrjB,GAASA,EAAM2iB,OAAW3iB,EAAM2iB,OAAOW,OAAS,GAC3D,KAAStjB,GAASA,EAAM2iB,OAAU3iB,EAAM2iB,OAAOY,KAAO,OAG/BrjB,MAAK,SAAAC,GACd,IAAdA,EAAIjI,MACJ8nB,GAAiB,SAAAwD,GACb,OAAO,eACAA,EADP,CAC0BvH,SAAUjc,EAAM2iB,OAAOW,OAC7CG,wBAAyBzjB,EAAM2iB,OAAOY,KAAMrH,YAAa2G,EAAQG,kBACjEU,UAAWC,SAASxjB,EAAIjI,OAAQ4f,aAAc,IAAKqK,QAAQ,EAAMpG,kBAAmB,GAAIhE,WAAY8K,EAAQ9K,iBAIpHqG,KACArjB,KAAQT,MAAM,yDAGjBwL,OAAM,SAAAC,GACHqY,KACArjB,KAAQT,MAAM,qDAEdC,QAAQD,MAAM,+CAItB8jB,KACArjB,KAAQT,MAAM,uDAElB6lB,GAA2B,SAAAyD,GAA2B,OAAKA,KAC3DvD,GAAwB,KAEzB,IAIGf,GAAwB,WAC1BkC,IAAyB,SAAAqC,GAAyB,OAAKA,MAKrDlJ,GAAwB,SAACjb,GAC3B,IAAIse,EAAsB,GAE1B,OAAQte,GACJ,IAAK,iBAC+B,OAA3B+a,EAAcwB,UAAgD,KAA3BxB,EAAcwB,UAAmD,OAA9BxB,EAAcyB,aAAsD,KAA9BzB,EAAcyB,aAC3H8B,EAAsB,2GACtBiD,IAAuB,SAAA6C,GAAuB,OAAI9F,KAClDgD,IAA8B,SAAA+C,GAA8B,OAAI,KAChE7C,IAA2B,SAAA8C,GAA2B,OAAItkB,MAE1DygB,GAA2B,SAAAyD,GAA2B,OAAI,KAE9D,MAGJ,IAAK,mBACD5F,EAAsB,4JACtBiD,IAAuB,SAAA6C,GAAuB,OAAI9F,KAClDgD,IAA8B,SAAA+C,GAA8B,OAAI,KAChE7C,IAA2B,SAAA8C,GAA2B,OAAItkB,KAC1D,MAEJ,IAAK,wBACDse,EAAsB,yFACtBiD,IAAuB,SAAA6C,GAAuB,OAAI9F,KAClDgD,IAA8B,SAAA+C,GAA8B,OAAI,KAChE7C,IAA2B,SAAA8C,GAA2B,OAAItkB,OAqBhEukB,GAAmB,SAACvkB,GAEP,0BAAXA,GACAwgB,GAAuB,SAAAgE,GAAuB,OAAI,KAClDlE,GAAiB,SAAAwD,GACb,OAAO,eACAA,EADP,CAC0BvH,SAAU,GAAIwH,wBAAyB,GAAIvH,YAAa,GAAInE,WAAY,GAC9F2L,UAAW,KAAM5L,aAAc,IAAKsK,QAAQ,EAAMrG,kBAAmB,GAAID,cAAeqF,GAAoBxK,WAIpHqJ,GAAiB,SAAAwD,GACb,OAAO,eACAA,EADP,CAC0BvH,SAAU,GAAIwH,wBAAyB,GAAIvH,YAAa,GAC9EwH,UAAW,KAAM5L,aAAc,IAAKsK,QAAQ,EAAMrG,kBAAmB,GAAIhE,WAAY,SAK/FN,GAAiB,SAAA3S,GACnBkb,GAAiB,SAAAwD,GAAuB,OAAO,eAAK1e,MACpDmb,EAAQ,QACR,IAAIkE,EAAWpJ,EAAmB1d,QAAO,SAAA+mB,GAAQ,OAAIA,EAASzN,OAAS7R,EAAIgX,iBACvEqI,GAAYA,EAASvnB,OAAS,GAAkC,MAA7BunB,EAAS,GAAGE,aAC/CnE,GAAuB,SAAAgE,GAAuB,OAAI,KAElDhE,GAAuB,SAAAgE,GAAuB,OAAI,KACtD3C,IAA6B,SAAAe,GAA6B,MAAI,OAS5DgC,GAAmBlR,uBACrB,SAACtO,GAAD,OAAS3M,GC3RuB,SAAC2M,GAAD,OAAS,SAAC3M,GAC9C,OAAOC,QAAQC,QACXF,EAAS,CACLnB,KtDO+B,8BsDN/BC,QAAS6N,MDuRKyf,CAAyBzf,MAC3C,CAAC3M,KAQC0iB,GAAO,WACT0G,IAA6B,SAAAe,GAA6B,MAAI,WACjC1kB,IAAzB6c,EAAc2H,QAAyB3H,EAAc2H,QACrD7C,GAAe,SAAAK,GAAe,OAAI,KAEtC,IAAI4E,EAAO,eAAQ/J,GACa,OAA5BA,EAAca,YACdkJ,EAAQlJ,UAAY,INnNQ,SAACuH,GAEa,OAA9CxG,SAAoGze,IAA9Cye,IACtDA,GAA0C1W,OAAO,gDAIrD,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBAyW,GAA4ChhB,EAAYqE,SAEzB,IAAItH,SAAQ,SAAUC,EAASoC,GAG1Da,GAFO,UAAM3C,IAAN,YxCtDqB,yCwCwDlBkqB,EAASxG,IAA2Cnc,MAC1D,SAAA2hB,GACQA,EAAYjnB,KACZvC,EAAQwpB,EAAYjnB,MAEpBH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,+CAAgDuL,GAC5DtL,EAAOsL,UM2Lf0e,CAAyBD,GAAStkB,MAAK,SAAAC,GAE/BA,GAAOA,EAAItF,QAAUsF,EAAItF,OAAO4nB,MAA4B,WAApBtiB,EAAItF,OAAO4nB,KAC/ChI,EAAc2H,QACdsC,KACAzC,MACOxH,EAAc0H,QAErBnC,GAAiB,SAAAwD,GACb,OAAO,eAAKA,EAAZ,CAA+BpB,QAAQ,EAAOD,QAAQ,OAE1DF,OAEAA,KACAjC,EAAiB,IACjBC,GAAQ,SAAA0E,GAAQ,MAAI,MACpBzE,GAAuB,SAAAgE,GAAuB,OAAI,OAItD3E,GAAe,SAAAK,GAAe,OAAI,KAClCxB,KACArjB,KAAQT,MAAM,sDAGjBwL,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACdwZ,GAAe,SAAAK,GAAe,OAAI,KAClCxB,KACArjB,KAAQT,MAAM,sDA2BpBoqB,GAAmB,YNhMU,SAACE,GAEa,OAA7CrI,SAAkG3e,IAA7C2e,IACrDA,GAAyC5W,OAAO,0EAIpD,IAAMtK,EAAcpB,IAAM2L,YAmB1B,OAlBA2W,GAA2ClhB,EAAYqE,SAEpB,IAAItH,SAAQ,SAAUC,EAASoC,GAG9Da,GAFO,UAAM3C,IAAN,YxCjIoB,2CwCmIjBisB,EAAerI,IAA0Crc,MAAK,SAAAtF,GACpEvC,EAAQuC,MAEPkL,OAAM,SAAAC,GACC9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,+CAAgDuL,GAC5DtL,EAAOsL,WMkLnB8e,CALc,CACV,sBAAyB,uCACzB,WAAexD,GACf,UAAY,IAEiBnhB,MAAK,SAAAC,GAC9BA,GAAOA,EAAIvF,MAAQuF,EAAIvF,KAAK1C,OAASiI,EAAIvF,KAAK1C,MAAM0E,OAAS,GAAKuD,EAAIvF,KAAK1C,MAAM,GAAG2C,QAA4C,MAAlCsF,EAAIvF,KAAK1C,MAAM,GAAG2C,OAAO4nB,MAIvF,4BAA5BxE,IACAiC,GAAuB,SAAAgE,GAAuB,OAAI,KAClDhD,IAA2B,SAAA8C,GAA2B,MAAI,OAE1D9C,IAA2B,SAAA8C,GAA2B,MAAI,MAE9D1C,IAAoB,SAAAwD,GAAoB,MAAI,MAC5C7C,OAEA7D,KACArjB,KAAQT,MAAM,uDACdC,QAAQD,MAAM,6CAGjBwL,OAAM,SAAAC,GACHqY,KACArjB,KAAQT,MAAM,uDACdC,QAAQD,MAAM,4CAEtB0lB,GAAiB,SAAAwD,GACb,OAAO,eAAKA,EAAZ,CAA+BpB,QAAQ,EAAOD,QAAQ,QA4ExDE,GAAsB,YACI,IAAxB9H,GAAsD,OAArBE,EAAchZ,IAAoC,KAArBgZ,EAAchZ,IAEjD,OAAvBgZ,EAAc9D,MAAwC,KAAvB8D,EAAc9D,KACjDoK,IAAyB,SAAAgE,GAAyB,OAAI,KAEtDhE,IAAyB,SAAAgE,GAAyB,OAAI,MAIxDC,GAAY,CACd5tB,KAAM,QACN6tB,eAAe,EACfC,kBAAkB,EAClBC,SAAU,SAACrgB,GAAD,OAAS2S,GAAe3S,KAsDtC,OACI,oCACI,yBAAK3I,UAAU,kCAGP6L,EAAc,yBAAK9L,MAAM,SAASC,UAAU,QAA9B,4BACY,kBAACyR,GAAA,EAAD,CAASzB,UAAU,OAAOZ,KAAK,KAAKa,QAAQ,UAEhE,oCACE,kBAAC,KAAD,MACA,yBAAKjQ,UAAU,OACX,yBAAKA,UAAU,uEAAf,eAEyByB,IAAjBqZ,IAA+C,OAAjBA,IAA0C,KAAjBA,SAA6CrZ,IAAtBqZ,GAAapO,KAAqB,MAAQ,YAC5H,0BAAM1M,UAAU,iBAAiB6F,QAAS,kBAAMsd,OAAhD,UAHJ,WAOiB1hB,IAAjBqZ,IAA+C,OAAjBA,IAA0C,KAAjBA,SAA6CrZ,IAAtBqZ,GAAapO,KACrF,qCAGF,yBAAK1M,UAAU,OACX,yBAAKA,UAAU,yCAEX,yBAAKA,UAAU,8BAAf,0BAC4B8a,IAAgBA,GAAaN,MAEzD,yBAAKxa,UAAU,4BACX,2BACInF,KAAK,OACLmF,UAAU,2CACVgK,YAAY,yBACZC,SAAU,SAAClH,GAAD,OApbrC,SAACA,GAClB,IAAIhH,EAAQgH,EAAE+G,OAAO/N,MACjBktB,EAAepoB,GAAmBsjB,EAAiBpoB,GACvDyoB,GAAa,SAAAuB,GAAa,OAAIhqB,KAC9BuoB,EAAY2E,GAgbiDC,CAAanmB,IAC9BhH,MAAOwoB,IAGX,4BAAQvkB,UAAU,yBACdnF,KAAK,QACLgL,QAAS,kBApbrC,WAChB,IAAIojB,EAAepoB,GAAmBsjB,EAAiB,IACvDK,GAAa,SAAAuB,GAAa,MAAI,MAC9BzB,EAAY2E,GAib+CE,OAGvB,6BAEQhF,EACI,yBAAK7e,GAAG,wBAAwBtF,UAAU,mDACtC,kBAAC,KAAD,CACImK,SAAS,KACT1L,KAAM4lB,EACNja,QAASiR,GAAyBC,IA9LlF,WACRwI,EAAQ,OACRD,EAAiB,CAEb1E,UAAU,GACV9S,MAAOyO,GAAazO,MACpBK,KAAMoO,GAAapO,KACnB0c,OAAQ,GACR5O,KAAM,GAENiF,cAAe,GACfE,cAAe,GACf0J,aAAc,IACdvJ,SAAU,GACVwH,wBAAyB,GACzBvH,YAAa,GACbwH,UAAW,KACX5L,aAAc,IACdC,WAAY,GACZgE,kBAAmB,KAEvBmE,GAAuB,SAAAgE,GAAuB,OAAI,QAzI3B,SAAApf,GACvBkb,GAAiB,SAAAwD,GAAuB,OAAO,eAAK1e,MACpDwf,GAAiBxf,GACjBhJ,EAAMsE,QAAQzB,KAAd,UAAsB7C,EAAM2pB,SAA5B,+BA+SmI7N,IAC3ElR,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRS,WAAW,qCACXC,iBAAkBtD,GAClBihB,UAAWA,MAGjB,yBAAK5jB,IAAI,gBAAgB2C,MAO3C,yBAAK5H,UAAU,yCACX,kBAAC,GAAD,CACIse,cAAeA,EACfrjB,KAAMA,EACNmjB,oBAAqBA,EACrBO,mBAAoBA,EACpBC,mBAAoBA,EACpBL,sBAAuBA,GACvBF,kBA/LlB,SAAA7X,GACtB,IAAIzK,EAAQyK,EAAIsD,OAAO/N,MACC,SAApByK,EAAIsD,OAAO0Q,KACXqJ,GAAiB,SAAAwD,GAAuB,OAAO,eAAKA,EAAZ,CAA+B7M,KAAMze,OAGlD,WAApByK,EAAIsD,OAAO0Q,KAClBqJ,GAAiB,SAAAwD,GAAuB,OAAO,eAAKA,EAAZ,CAA+BlI,UAAWpjB,OACvD,kBAApByK,EAAIsD,OAAO0Q,KAClBqJ,GAAiB,SAAAwD,GAAuB,OAAO,eAAKA,EAAZ,CAA+BvH,SAAU/jB,OACtD,wBAApByK,EAAIsD,OAAO0Q,KAClBqJ,GAAiB,SAAAwD,GAAuB,OAAO,eAAKA,EAAZ,CAA+BtH,YAAahkB,OAEzD,sBAApByK,EAAIsD,OAAO0Q,MAClBqJ,GAAiB,SAAAwD,GAAuB,OAAO,eAAKA,EAAZ,CAA+BzH,kBAAmB7jB,QAkLtD0iB,qBA9Kf,SAACwJ,EAAU1kB,GACpC,GAAe,mBAAXA,EACAsgB,GAAiB,SAAAwD,GAAuB,OAAO,eAAKA,EAAZ,CAA+B5H,cAAewI,EAASzN,eAE5F,GAAe,mBAAXjX,EACP,GAAmC,MAA/B+a,EAAc3C,aAAsB,CACpC,IAAI4N,EAAkB3K,EAAmB1d,QAAO,SAAAsoB,GAAY,OAAIA,EAAahP,OAASyN,EAASzN,QAC1F+O,GAAmBA,EAAgB9oB,OAAS,GAAyC,MAApC8oB,EAAgB,GAAGrB,eACxC,OAA3B5J,EAAcwB,UAAgD,KAA3BxB,EAAcwB,UAAmD,OAA9BxB,EAAcyB,aAAsD,KAA9BzB,EAAcyB,cAC5HkF,GAAuB,eAAKgD,IAC5BzJ,GAAsB,2BAEtBqF,GAAiB,SAAAwD,GAAuB,OAAO,eAAKA,EAAZ,CAA+B1H,cAAesI,EAASzN,UACjE,MAA1ByN,EAASC,aACTnE,GAAuB,SAAAgE,GAAuB,OAAI,KAGlDhE,GAAuB,SAAAgE,GAAuB,OAAI,WAI1DlE,GAAiB,SAAAwD,GAAuB,OAAO,eAAKA,EAAZ,CAA+B1H,cAAesI,EAASzN,UACjE,MAA1ByN,EAASC,aACTnE,GAAuB,SAAAgE,GAAuB,OAAI,KAGlDhE,GAAuB,SAAAgE,GAAuB,OAAI,MAqJtBve,OAlU7B,WACXqa,EAAiB,IACjBC,EAAQ,IACRC,GAAuB,SAAAgE,GAAuB,OAAI,KAClD3C,IAA6B,SAAAe,GAA6B,MAAI,OA+TtBzH,KAAMA,GACN5B,wBAAyBA,EACzBC,0BAtaV,WAC9BiH,GAA2B,SAAAyD,GAA2B,OAAKA,MAsanBzD,2BAA4BA,EAC5BC,qBAAsBA,EACtBzF,sBAAuBA,GACvBK,YAnIxB,SAACrY,GAGjB,GADA4e,IAA6B,SAAAe,GAA6B,MAAI,WACrC1kB,IAArB+E,EAAIsD,OAAO/N,OACa,KAArByK,EAAIsD,OAAO/N,MAAc,CAC5B,IAAI0tB,EAAWjjB,EAAIsD,OAAO/N,ONrSX,SAAC2tB,GAEa,OAAjCrJ,SAA0E5e,IAAjC4e,IACzCA,GAA6B7W,OAAO,+DAIxC,IAAMtK,EAAcpB,IAAM2L,YA4C1B,OA3CA4W,GAA+BnhB,EAAYqE,SAElB,IAAItH,SACzB,SAAUC,EAASoC,GACf,IAAIS,EAAMvC,IAAe,IAAMM,EAAe2W,QAAQ,aAAciW,GAChE7hB,EAAW,kCACf/I,GAAIC,EAAKshB,IAA8Btc,MAAK,SAAAC,GAGxC,GAAiB,OAAbA,EAAIvF,WACWgD,GAAZuC,EAAIvF,MACe,OAAnBuF,EAAIvF,KAAK1C,YACU0F,IAAnBuC,EAAIvF,KAAK1C,OACTwE,MAAMC,QAAQwD,EAAIvF,KAAK1C,QACvBiI,EAAIvF,KAAK1C,MAAM0E,OAAS,EAAG,CAC9B,IAAIkpB,EAAc3lB,EAAIvF,KAAK1C,MAAM,GACN,OAAvB4tB,EAAYjrB,aACc+C,IAAvBkoB,EAAYjrB,QACgB,OAA5BirB,EAAYjrB,OAAOkrB,WACSnoB,IAA5BkoB,EAAYjrB,OAAOkrB,MACS,WAA5BD,EAAYjrB,OAAOkrB,KACtB1tB,EAAQ8H,EAAIvF,KAAK1C,MAAM,IAEvBuC,EAAOuJ,QAIXzJ,QAAQC,IAAI,iCAAmCwJ,GAC/CvJ,EAAOuJ,MAIV8B,OAAM,SAACxL,GACAL,IAAMU,WACNJ,QAAQC,IAAIF,IAGZC,QAAQD,MAAM,kCAAmCA,GACjDG,EAAOuJ,WMyPnBgiB,CAAYJ,GACP1lB,MAAK,SAAAtF,GACsB,OAApBA,EAAKqrB,iBACkBroB,IAApBhD,EAAKqrB,YACLvpB,MAAMC,QAAQ/B,EAAKqrB,aACnBrrB,EAAKqrB,WAAWrpB,OAAS,EAAI,WAChC,IAAIspB,EAAW,GADgB,uBAE/B,YAAgBtrB,EAAKqrB,WAArB,+CAAiC,CAAC,IAAzBE,EAAwB,QAC7B,GAAqB,OAAjBA,EAAIC,eAAsCxoB,IAAjBuoB,EAAIC,UAA0BD,EAAIC,WAAaR,EAAU,CAC7D,OAAjBO,EAAIE,eAAsCzoB,IAAjBuoB,EAAIE,WAC7BH,EAAWC,EAAIE,SACfrG,GAAiB,SAAAwD,GAAuB,OAAO,eAAKA,EAAZ,CAA+BvH,SAAUiK,QAGrF,QATuB,kFAcd,KAAbA,IAEA3E,IAA6B,SAAAe,GAA6B,MAAI,6CAC9DtC,GAAiB,SAAAwD,GAAuB,OAAO,eAAKA,EAAZ,CAA+BvH,SAAU,SAjBrD,IAoBhCsF,IAA6B,SAAAe,GAA6B,MAAI,6CAC9DtC,GAAiB,SAAAwD,GAAuB,OAAO,eAAKA,EAAZ,CAA+BvH,SAAU,YAGxFnW,OAAM,SAAAxL,GACHinB,IAA6B,SAAAe,GAA6B,MAAI,6CAC9DtC,GAAiB,SAAAwD,GAAuB,OAAO,eAAKA,EAAZ,CAA+BvH,SAAU,gBAKzFsF,IAA6B,SAAAe,GAA6B,MAAI,6CAC9DtC,GAAiB,SAAAwD,GAAuB,OAAO,eAAKA,EAAZ,CAA+BvH,SAAU,SAyF7ChB,0BAA2BA,SAU/D,kBAAC,GAAD,CACI6C,2BAA4BA,GAC5BC,6BA7YyB,WACjCkD,IAAuB,SAAA6C,GAAuB,MAAI,MAClD9C,IAA8B,SAAA+C,GAA8B,OAAKA,KACjE7C,IAA2B,SAAA8C,GAA2B,MAAI,OA2YlDhG,oBAAqBA,GACrBC,wBAAyBA,GACzBC,cA3YU,SAACxe,GACnBshB,IAA8B,SAAA+C,GAA8B,OAAKA,KAClD,mBAAXrkB,EACAygB,GAA2B,SAAAyD,GAA2B,OAAI,KACxC,qBAAXlkB,GAA4C,0BAAXA,IACxC4hB,IAAoB,SAAAwD,GAAoB,OAAIrK,EAAc1C,cAC1DkM,GAAiBvkB,OAuYjB,kBAAC,GAAD,CACI2f,sBAAuBA,GACvBC,sBAAuBA,OEtnBxB,SAASgH,GAAcxqB,GA0DlC,OACI,yBAAK2F,GAAG,iBAzDkB,WAE1B,OAAG3F,GAASA,EAAMhF,OAASgF,EAAMhF,MAAMyvB,oBAE/B,kBAAC,GAAD,CAAUzvB,MAAOgF,EAAMhF,MAAO+f,iBAAkB/a,EAAM+a,mBAEpD/a,GAASA,EAAMhF,OAASgF,EAAMhF,MAAM0vB,gBAEtC,kBAAC,GAAD,CAAa1vB,MAAOgF,EAAMhF,MAAO2vB,oBAAqB3qB,EAAM2qB,sBAK5D,yBAAKtqB,UAAU,aACX,yBAAKA,UAAU,OACX,yBAAKA,UAAU,4EACX,2BAAOiF,IAAI,2BAAX,uBAEJ,yBAAKjF,UAAU,gCACX,kBAACoa,GAAA,EAAD,KACI,kBAACC,GAAA,EAAD,CAAWkQ,UAAU,mBAEjB,2BACI1vB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,SACZwQ,KAAK,aACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAM0V,WACnBpG,SAAUtK,EAAM0e,wBAMnC1e,GAASA,EAAMhF,MACZ,yBAAK2K,GAAG,+BACJ,kBAAC,KAAD,CACI6E,SAAS,QACT1L,KAAMkB,EAAMhF,MAAM6vB,oBAClBpgB,SAAoCzK,EAAM8qB,YjBMlBC,EiBN+B/qB,EAAM+qB,cjBMtBC,EiBNqChrB,EAAMgrB,YjBM9BC,EiBN2CjrB,EAAMirB,ajBMnCC,EiBNiDlrB,EAAMkrB,gBAAiBlrB,EAAMmrB,gBjBM5CC,EiBN6DprB,EAAMorB,ejBOpL,CACX,CACI1gB,UAAW,GACXC,KAAM,GACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNE,UAAW,SAACC,EAAMlC,GACd,OAAO,kBAACwQ,GAAD,CAAgBC,MAAO2R,EAAgBlS,WAAYlQ,MAGlE,CACI0B,UAAW,OACXC,KAAM,cACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqC,UAAW,SAACC,EAAMlC,GACd,OAAIA,EAAIqiB,cACI,yBAAKnlB,QAAS,kBAAMglB,EAAgBliB,EAAIqiB,cAAeriB,EAAIsiB,eAAejrB,UAAU,gCAC/E6K,GAGN,6BAAMA,KAGzB,CACIR,UAAW,WACXC,KAAM,QACNC,cAAe,aAEfC,QAAS,iCACTC,YAAa,QACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqC,UAAW,SAACC,EAAMlC,GACd,OAAIA,EAAIqiB,cACI,yBAAKnlB,QAAS,kBAAMglB,EAAgBliB,EAAIqiB,cAAeriB,EAAIsiB,eAAejrB,UAAU,iBAC/E6K,GAGN,6BAAMA,KAGzB,CACIR,UAAW,qBACXC,KAAM,YACNC,cAAe,aACfC,QAAS,iCACTC,YAAa,QACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqC,UAAW,SAACC,EAAMlC,GACd,OAAIA,EAAIuiB,aACI,yBAAKrlB,QAAS,kBAAMglB,EAAgBliB,EAAIuiB,aAAcviB,EAAIwiB,cAAcnrB,UAAU,iBAC7E6K,GAGN,6BAAMA,KAGzB,CACIR,UAAW,gBACXC,KAAM,WACNC,cAAe,aACfC,QAAS,kCACTC,YAAa,QACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqC,UAAW,SAACC,EAAMlC,GACd,OAAIA,EAAIyiB,mBAAqB,EAEtBziB,EAAI0iB,YACK,6BAAK,0BAAMxlB,QAAS,kBAAMglB,EAAgBliB,EAAI0iB,YAAa1iB,EAAI2iB,aAAatrB,UAAU,iBAAiB6K,GAC1G,0BAAMoP,MAAM,oBAAoBpU,QAAS,kBAAM+kB,EAAajiB,KAA5D,OAAyEA,EAAIyiB,mBAA7E,YAID,6BAAMvgB,EAAK,0BAAMoP,MAAM,oBAAoBpU,QAAS,kBAAM+kB,EAAajiB,KAA5D,OAAyEA,EAAIyiB,mBAA7E,YAKhBziB,EAAI0iB,YACG,yBAAKxlB,QAAS,kBAAMglB,EAAgBliB,EAAI0iB,YAAa1iB,EAAI2iB,aAAatrB,UAAU,iBAAiB6K,GAEhG,6BAAMA,KAM7B,CACIR,UAAW,kBACXC,KAAM,mBACNC,cAAe,aACfC,QAAS,iCACTC,YAAa,QACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqC,UAAW,SAACC,EAAMlC,GACd,OAAIA,EAAIuiB,aACI,yBAAKrlB,QAAS,kBAAMglB,EAAgBliB,EAAIuiB,aAAcviB,EAAIwiB,cAAcnrB,UAAU,iBAC7E6K,GAGN,6BAAMA,KAGzB,CACIR,UAAW,gBACXC,KAAM,mBACNC,cAAe,aACfC,QAAS,iCACTC,YAAa,QACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,IAC9CqC,UAAW,SAACC,EAAMlC,GACd,OAAIA,EAAIuiB,aACI,yBAAKrlB,QAAS,kBAAMglB,EAAgBliB,EAAIuiB,aAAcviB,EAAIwiB,cAAcnrB,UAAU,iBAC7E6K,GAGN,6BAAMA,KAGzB,CACIR,UAAW,GACXC,KAAM,GACNI,MAAM,EACNK,cAAc,EACdN,YAAa,QACbG,UAAW,SAACC,EAAMlC,GACV,OAAO,yBAAK5I,MAAM,SACV,4BAAQlF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM6kB,EAAc/hB,KAA/E,mBACJ,4BAAQ9N,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM8kB,EAAYhiB,KAA7E,uBiB9IQ4B,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRS,WAAW,qCACXC,iBAAkBtD,MAGxB,yBAAK3C,IAAI,gBAAgB2C,KjBF5C,IAAiD8iB,EAAeC,EAAaC,EAAcC,EAAkCE,EiBapHQ,I,wBCxDVC,G,YAEF,WAAY7rB,GAAQ,IAAD,8BACf,4CAAMA,KAsCV8qB,YAAc,SAAAxP,GACVC,MAAM,4BAxCS,EA2CnBwP,cAAgB,SAAA/hB,GAEZ,EAAKhJ,MAAMqjB,qBAAqBra,GAAK5E,MAAK,SAAAC,GAClC,EAAKrE,MAAMsE,SAAW0E,GAAOA,EAAI0D,OACjC,EAAK1M,MAAMsE,QAAQzB,KAAnB,yBAA0CmG,EAAI0D,YA/CvC,EAoDnBof,sBAAwB,WACpB,EAAKhoB,SAAS,CACV0X,mBAAmB,KAtDR,EA0DnBwP,YAAc,SAAAhiB,GACV,EAAKhJ,MAAMqjB,qBAAqBra,GAAK5E,MAAK,SAAAC,GAClC,EAAKrE,OAAS,EAAKA,MAAMsE,SAAW0E,GAAOA,EAAI0D,OAC/C,EAAK1M,MAAMsE,QAAQzB,KAAnB,mBAAoCmG,EAAI0D,YA7DjC,EAkEnBue,aAAe,SAAA3P,GACX,EAAKxX,SAAS,CACV2mB,qBAAqB,EAAMtP,aAAcG,KApE9B,EAyEnBP,iBAAmB,WACf,EAAKjX,SAAS,CACV2mB,qBAAqB,KA3EV,EA+EnB/L,kBAAoB,SAAC7X,GACjB,IAAIyK,EAAezK,EAAIsD,OAAO/N,MAC1B2vB,EAAoBC,KAAU,EAAKhxB,MAAMgR,aAE7C+f,EAAoB7qB,GAAmB6qB,EAAmBza,EADtC,CAAC,OAAQ,WAAY,qBAAsB,kBAE/D,EAAKxN,SAAS,CAAE+mB,oBAAqBkB,EAAmBza,aAAcA,KApFvD,EA6JnB6Z,gBAAkB,SAAA7P,GACd,EAAKtgB,MAAMmgB,aAAX,eAA+BG,GAC/B,EAAKtb,MAAMqjB,qBAAqB/H,GAAMlX,MAAK,SAAAC,GACvC,EAAKrE,MAAM7D,2BAA2B,KAAKiI,MAAK,WACxC,EAAKpE,MAAMsE,SAAWgX,GAAQA,EAAK5O,OACnC,EAAK1M,MAAMsE,QAAQzB,KAAnB,sBAlKG,EAyKnBopB,gBAAkB,WACd,EAAKC,SAAQ,SAAA3lB,GAAS,MAAK,CACvBmkB,iBAAiB,OAzKrB,EAAKI,YAAc,EAAKA,YAAYtmB,KAAjB,gBACnB,EAAKumB,cAAgB,EAAKA,cAAcvmB,KAAnB,gBACrB,EAAKwmB,YAAc,EAAKA,YAAYxmB,KAAjB,gBACnB,EAAK2mB,gBAAkB,EAAKA,gBAAgB3mB,KAArB,gBAEvB,EAAKxJ,MAAQ,CACTyvB,qBAAqB,EACrBnZ,aAAc,GACdtF,YAAa,GACb6e,oBAAqB,GACrBsB,aAAa,EACbzB,iBAAiB,EACjBvP,aAAc,GACdiQ,eAAgB,IAGpB,EAAKgB,iBAAmB,EAAKA,iBAAiB5nB,KAAtB,gBACxB,EAAK0mB,gBAAkB,EAAKA,gBAAgB1mB,KAArB,gBAnBR,E,iFAuBfrE,KAAKisB,mBACLjsB,KAAKksB,6B,yCAGUvnB,GACXA,EAAUnK,UAAYwF,KAAKH,MAAMrF,SACjCwF,KAAKisB,qB,6CAKsC,OAA3CxJ,SAA8F9gB,IAA3C8gB,IACnDA,GAAuC/Y,OAAO,yE,sCAoDtCyiB,EAAaC,INiSe,WAIF,OAAtCvJ,SAAoFlhB,IAAtCkhB,IAE9CA,GAAkCnZ,OAAO,+CAI7C,IAAMtK,EAAcpB,IAAM2L,YAoB1B,OAnBAkZ,GAAoCzjB,EAAYqE,SAElB,IAAItH,SAC9B,SAAUC,EAASoC,GAEfQ,GADO,UAAMtC,IAAN,Y3C3Ua,sC2C4UXmmB,IACR5e,MAAK,SAACC,GACH9H,EAAQ8H,EAAIvF,SAEfkL,OAAM,SAACxL,GACAL,IAAMU,WACNJ,QAAQC,IAAIF,IAGZC,QAAQD,MAAM,8DAA+DA,GAC7EG,EAAOuJ,YMxTnBskB,GACCxiB,OAAM,SAAAC,GACHxL,QAAQC,IAAIuL,MAGhB,IAAIwiB,EAAYtsB,KAAKH,MAAMlF,UAEvB2xB,EACIA,EAAUC,QACVD,EAAYhwB,OAAO2c,KAAKmT,EAAQ,gBAAiB,wCAA0C9vB,OAAO4c,OAAOC,WAAa,WAAa7c,OAAO4c,OAAOE,aACjJpZ,KAAKH,MAAMxD,2BAA2BiwB,KAGtCA,EAAYhwB,OAAO2c,KAAKkT,EAAa,gBAAiB,wCAA0C7vB,OAAO4c,OAAOC,WAAa,WAAa7c,OAAO4c,OAAOE,aACtJpZ,KAAKH,MAAMxD,2BAA2BiwB,KAG1CA,EAAYhwB,OAAO2c,KAAKmT,EAAQ,gBAAiB,wCAA0C9vB,OAAO4c,OAAOC,WAAa,WAAa7c,OAAO4c,OAAOE,aACjJpZ,KAAKH,MAAMxD,2BAA2BiwB,IAItCA,GACAA,EAAUE,U,yCAQE,IAAD,OACfxsB,KAAK2D,SAAS,CAAEqoB,aAAa,IAAQ,WAEjCS,YAAW,WACP3J,GAAsB,EAAKjjB,MAAMpF,MAAMwJ,MAAK,SAAAC,GACpCA,GAAOA,EAAIvF,MAAQ8B,MAAMC,QAAQwD,EAAIvF,OAASuF,EAAIvF,KAAKgC,OAAS,EAEhE,EAAKgD,SAAS,CAAEkI,YAAa3H,EAAIvF,KAAM+rB,oBAAqBxmB,EAAIvF,KAAMqtB,aAAa,IAAS,WACxF7J,QAGJ,EAAKxe,SAAS,CAAEqoB,aAAa,IAAS,WAClC7J,WAIPtY,OAAM,SAAAC,GACH,EAAKnG,SAAS,CAAEqoB,aAAa,EAAOngB,YAAa,GAAI6e,oBAAqB,KAAM,WAC5EvI,KACArjB,KAAQT,MAAM,8FAElBC,QAAQD,MAAM,0DAEvB,U,iDAIiB,IAAD,QN8LQ,WAGa,OAA5CukB,SAAgGjhB,IAA5CihB,IAEpDA,GAAwClZ,OAAO,+CAInD,IAAMtK,EAAcpB,IAAM2L,YAwB1B,OAvBAiZ,GAA0CxjB,EAAYqE,SAE7B,IAAItH,SACzB,SAAUC,EAASoC,GAEfQ,GADO,UAAMtC,IAAN,Y3CjSwB,4D2CkStBkmB,IAAyC3e,MAAK,SAAAC,GAEhDA,GAAOA,EAAIvF,KACVvC,EAAQ8H,EAAIvF,MAEZH,EAAOuJ,OAGd8B,OAAM,SAACxL,GACAL,IAAMU,WACNJ,QAAQC,IAAIF,IAGZC,QAAQD,MAAM,8CAA+CA,GAC7DG,EAAOuJ,YM1NnB2kB,GAAyBzoB,MAAK,SAAAC,GAC1B,EAAKP,SAAS,CAACsnB,eAAgB/mB,OAElC2F,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,Q,+BAwBlB,OAAI9J,KAAKnF,MAAMmxB,YAEP,yBAAK/rB,MAAM,SAASC,UAAU,QAA9B,iCACM,kBAACyR,GAAA,EAAD,CAASzB,UAAU,OAAOZ,KAAK,KAAKa,QAAQ,UAKlD,yBAAK3K,GAAG,aACJ,kBAAC,KAAD,MACA,kBAAC6kB,GAAD,CAAexvB,MAAOmF,KAAKnF,MACvB8vB,YAAa3qB,KAAK2qB,YAClBE,YAAa7qB,KAAK6qB,YAClBD,cAAe5qB,KAAK4qB,cACpBhQ,iBAAkB5a,KAAK4a,iBACvBkQ,aAAc9qB,KAAK8qB,aACnBvM,kBAAmBve,KAAKue,kBACxBwM,gBAAiB/qB,KAAK+qB,gBACtBC,gBAAiBhrB,KAAKgrB,gBACtBC,eAAgBjrB,KAAKnF,MAAMowB,sB,GAtM3B5qB,aAuNlB+G,GAAqB,CACvB8b,wBACA7mB,6BACAL,8BAEWsL,gBAdS,SAAC3K,GACrB,MAAO,CACHlC,KAAMkC,EAAME,IAAIpC,KAChBD,QAASmC,EAAME,IAAIrC,QACnBG,UAAWgC,EAAME,IAAIlC,UACrBJ,IAAKoC,EAAME,IAAItC,OASiB6M,GAAzBE,CAA6CC,YAAWmkB,KC9N/DxY,GAAYC,KAAZD,QAuDOyZ,OArDf,WACI,IAAIxoB,EAAUyoB,cACR3tB,EAAQ4tB,cAAR5tB,IACA6tB,EAAaC,cAAbD,SAHoB,EAIcrW,mBAAS,aAJvB,oBAInBuW,EAJmB,KAILC,EAJK,KAMpBC,EAAe/V,uBAAY,SAACgW,GAC9B,IAAMC,EAA0B,cAAXD,EAAyB,aAAzB,UAA2CluB,EAA3C,YAAkDkuB,GACvEhpB,EAAQzB,KAAK0qB,GACbH,EAAgBE,KACjB,IAkBH,OAhBAjW,qBAAU,WACN,IAAIiW,EAAS,GACVL,IAAa7tB,GACZkF,EAAQzB,KAAK,cACbyqB,EAAS,aAELL,IAAQ,UAAQ7tB,EAAR,aACZkuB,EAAS,WAELL,IAAQ,UAAQ7tB,EAAR,qBACZkuB,EAAS,kBAEbF,EAAgBE,KACjB,CAACL,IAIA,6BACI,kBAAC,KAAD,CAAMO,UAAWL,EAAc1Z,UAAU,EAAOnJ,SAAU+iB,GAClD,kBAAC,GAAD,CAAS3Z,IAAI,YAAYpO,IAAI,cAG7B,kBAAC,GAAD,CAASoO,IAAI,WAAWpO,IAAI,aAG5B,kBAAC,GAAD,CAASoO,IAAI,sBAAsBpO,IAAI,oBAKvC,kBAAC,IAAD,KACI,kBAAC,IAAD,CAAOmoB,OAAK,EAACC,KAAM,aAAcC,UAAW,kBAAO,kBAAC,GAAD,CAAWhoB,GAAG,YAAYgP,UAAWwY,OACxF,kBAAC,IAAD,CAAOM,OAAK,EAACC,KAAI,UAAKtuB,EAAL,aAAqBuuB,UAAW,kBAAO,kBAAC,GAAD,CAAWhoB,GAAG,cAAcgP,UAAWwY,OAC/F,kBAAC,IAAD,CAAOM,OAAK,EAACC,KAAI,UAAKtuB,EAAL,mBAA2BuuB,UAAW,kBAAO,kBAAC,GAAD,CAAgBhoB,GAAG,iBAAiBgP,UAAWwY,OAC7G,kBAAC,IAAD,CAAOO,KAAK,IAAIC,UAAWha,QClD7Cia,G,YAEF,WAAY5tB,GAAO,IAAD,8BACd,4CAAMA,KACD6tB,gBAAkB,GAEuC,MAA3DptB,GAAmB,EAAKT,MAAM5E,WAAY,cACzC,EAAKyyB,gBAAgBhrB,KAAK,kBAAC,GAAD,CAAoB8C,GAAG,eACjD,EAAK3F,MAAM7D,2BAA2B,MACsB,MAAvDsE,GAAmB,EAAKT,MAAM5E,WAAY,UAC/C,EAAKyyB,gBAAgBhrB,KAAK,kBAAC,GAAD,CAAkB8C,GAAG,WAC/C,EAAK3F,MAAM7D,2BAA2B,MAC2C,MAA5EsE,GAAmB,EAAKT,MAAM5E,WAAY,gCAC/C,EAAKyyB,gBAAgBhrB,KAAK,kBAAC,GAAD,CAA0B8C,GAAG,+BACvD,EAAK3F,MAAM7D,2BAA2B,MAZ5B,E,sEAkBd,OACI,oCACKgE,KAAK0tB,gBAAgBxb,KAAI,SAACyb,EAAMvb,GAC7B,OACI,yBAAKjN,IAAKiN,GAAQub,W,GAxBvBttB,aA2Cb+G,GAAqB,CACvBpL,8BAEWsL,gBAZS,SAAC3K,GACrB,MAAO,CACHlC,KAAMkC,EAAME,IAAIpC,KAChBD,QAASmC,EAAME,IAAIrC,QACnBD,IAAKoC,EAAME,IAAItC,IACfU,WAAa0B,EAAME,IAAI5B,cAOSmM,GAAzBE,CAA6CC,YAAWkmB,K,8BCjD1DG,GACT,aAAe,oBACV,IAAIC,EAA8BnR,GAAgB/f,GAAMC,WAAY,CAAC,MAAO,MAAO,mCAChFixB,IACD7tB,KAAK8tB,mBAAqBD,GAE7B,IAAME,EAAiBC,YAAqB,CAAEC,SAAU,KACxDjuB,KAAKkuB,YAAc,IAAIC,KACvBnuB,KAAKouB,YAAc,IAAIC,KAAoB,CACvCjwB,OAAQ,CACJ0vB,mBAAoB9tB,KAAK8tB,mBACzBQ,iBAAkB,EAClBC,sBAAsB,EACtBC,qBAAqB,EACrBC,sBAAsB,GAE1BC,WAAY,CAAC1uB,KAAKkuB,aAClBS,gBAAgB,gBACX3uB,KAAKkuB,YAAYU,WAAa,CAAEzqB,QAAS4pB,MAGlD/tB,KAAKouB,YAAYS,mB,UCtBlB,SAASC,GAAcC,GAE1B,IACI,IAAIC,EAAM,IAAIpB,GACdoB,EAAGZ,YAAYa,gCAGa,OADDC,MAEvBF,EAAGZ,YAAYe,wBAAwBD,MAE3CF,EAAGZ,YAAYgB,eAAe,CAAE/wB,MAAO,IAAIgxB,MAAJ,UAAathB,KAAKC,UAAU+gB,KAAkBO,cAAeC,KAAcF,OAASG,MAC3HR,EAAGZ,YAAYqB,QACjB,MAAO3lB,GACLxL,QAAQC,IAAI,2BAA4BuL,IAIzC,SAAS4lB,GAAgBC,GAE5B,IACI,IAAIX,EAAK,IAAIpB,GACboB,EAAGZ,YAAYa,gCAGa,OADDC,MAEvBF,EAAGZ,YAAYe,wBAAwBD,MAG3CF,EAAGZ,YAAYwB,WAAW,CAAE9wB,QAAQ,GAAD,OAAKiP,KAAKC,UAAU2hB,IAAgBL,cAAeC,KAAcM,aAAeL,MACnHR,EAAGZ,YAAYqB,QAClB,MAAM3lB,GAEHxL,QAAQC,IAAI,wBAAyBuL,IAwC7C,SAASolB,KAEL,IAAIY,EAAsB,KACtBr1B,EAAQkC,GAAMC,WAAWC,IAAIpC,KAChC,GAAGA,EACH,CACE,IAAIuM,EAAWvM,EAAKuM,SAEnB8oB,EAAuB,SAACC,GACpBA,EAASC,KAAK,cAAgBhpB,EAC9B+oB,EAASC,KAAK,sBAAwBhpB,GAI9C,OAAO8oB,EAGX,SAASN,KACL,IAAIS,EAAa,GACbx1B,EAAQkC,GAAMC,WAAWC,IAAIpC,KAOhC,OANGA,IAEDw1B,EAAWjpB,SAAW0V,GAAgBjiB,EAAM,CAAC,SAC7Cw1B,EAAWtS,UAAYjB,GAAgBjiB,EAAM,CAAC,gBAAiB,QAC/Dw1B,EAAWC,UAAYxT,GAAgBjiB,EAAM,CAAC,gBAAiB,wBAE1Dw1B,E,cC7FSE,G,iDACnBC,aAAe,K,KACfC,WAAa,K,KAEbC,gBAAkB,SAAC/1B,GACjB,IAAIg2B,EAAYC,UAAUC,UAAUC,QAAQ,WAAa,EACrDtyB,EAAS,CACXuyB,KAAM,CACJtZ,SAAU9c,EAAIq2B,yBACdC,UAAWt2B,EAAIu2B,0BACfC,sBAAuBz0B,OAAOE,SAASC,OACvCu0B,YAAa10B,OAAOE,SAASC,OAC7Bw0B,2BAA2B,GAE7BC,MAAO,CACLC,cAAe,eACfC,wBAAwB,EACxBC,eAAe,GAEjBC,OAAQ,CACNC,kBAAmBhB,EAAY,IAAQ,IACvCiB,kBAAmB,IACnBC,iBAAkB,IAClBC,cAAe,CACbC,SAAUC,KAASC,QACnBC,eAAgB,EAAKC,WACrBC,mBAAmB,GAErBC,UAAW,CACTC,gBAAiB,4BACjBC,mBAAoBC,YAEtBC,0BAA2B,MAO/B,OAHA,EAAKhC,WAAajyB,EAClB,EAAKgyB,aAAe,IAAIkC,KAAwBl0B,GAEzC,EAAKgyB,c,KAGd2B,WAAa,SAACQ,EAAOzzB,EAAS0zB,GAC5B,OAAQD,GACN,KAAKX,KAASvC,MACZ/wB,QAAQD,MAAMS,GACdgwB,GAAchwB,GACd,MAGF,KAAK8yB,KAASa,QACZn0B,QAAQo0B,KAAK5zB,GACb4wB,GAAgB5wB,GAChB,MAGF,QACER,QAAQC,IAAIO,GACZ4wB,GAAgB5wB,K,KAMtB6zB,sBAAwB,SAACC,EAAWC,EAAQC,GAC1CA,EAASA,GAAkB,OAC3B,IAAMC,EAAe,CACnBF,OAAO,aAAKA,GACZC,SACAF,YACAI,cAAc,GAEhB,EAAK5C,aAAa6C,qBAAqBF,I,KAGzCG,SAAW,SAACN,EAAWC,GACrB,IAAMM,EAAU,eACXN,EADW,CAEdD,YACAI,cAAc,IAEhB,OAAO,EAAK5C,aAAagD,UAAUD,K,UCtFjCE,G,YAEF,WAAYxzB,GAAO,IAAD,8BACd,4CAAMA,KAEDyzB,gBAAkB,EAAKA,gBAAgBjvB,KAArB,gBAHT,E,+EAOXrE,KAAKH,MAAMsE,SACVnE,KAAKH,MAAMsE,QAAQzB,KAAK,O,+BAK5B,OACI,6BACI,kBAACwM,GAAA,EAAD,CACI1K,OAAQxE,KAAKH,MAAM0zB,uBACnBnvB,OAAQpE,KAAKH,MAAM2zB,wBACnBnkB,UAAU,EAEVhK,OAAO,OACPnF,UAAU,eACVqP,cAAc,uBACdC,eAAe,qBACfC,iBAAiB,uBACjBC,UAAQ,GACR,kBAACC,GAAA,EAAD,MAGA,kBAACE,GAAA,EAAD,KACI,yBAAK3P,UAAU,YACX,yBAAKA,UAAU,iBACVF,KAAKH,MAAMf,WAIxB,kBAACojB,GAAA,EAAD,KAEQ,oCACI,kBAACuR,GAAA,EAAD,CAAQ/hB,MAAM,yBAAyB3L,QAAS/F,KAAKszB,iBAArD,6B,GAzCElzB,IAAM+G,eAoDzBI,eAAW8rB,ICnDnB,SAASK,GACZ7zB,GA8lBA,OA3lBI,yBAAKK,UAAU,aAMX,yBAAKA,UAAU,QACX,yBAAKA,UAAU,uCACX,kBAAC8U,GAAA,EAAD,CAAOuK,IAAI,OAAOrf,UAAU,2BAA5B,gBACA,kBAAC8U,GAAA,EAAD,CAAOuK,IAAI,OAAOrf,UAAU,2BAA2BL,EAAMvE,gBAAkBuE,EAAMvE,eAAeof,KAAO7a,EAAMvE,eAAeof,KAAO,IAF3I,KAGA,yBAAKxa,UAAU,uCACX,yBAAKA,UAAU,iCAAiCD,MAAM,SAClD,4BAAQlF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAMlG,EAAM8zB,oBAAvE,WAKX9zB,GAASA,EAAMhF,MACZ,6BACI,yBAAKqF,UAAU,4DAA4DsF,GAAG,qBAC1E,yBAAKtF,UAAU,2CACX,yBAAK0zB,UAAW/zB,EAAMhF,MAAM+4B,UAAW1zB,UAAU,uDAC7C,yBAAKA,UAAU,wBAGX,yBAAKA,UAAU,4BACX,kBAACoa,GAAA,EAAD,KACwD,SAAlDza,EAAMhF,MAAMg5B,gBAAgBC,mBAC1B,yBAAK5zB,UAAU,OACX,yBAAKA,UAAU,oDACX,yBAAKA,UAAU,OACX,yBAAKA,UAAU,2CACX,yBAAKA,UAAU,4DAAf,iBAGA,6BAEI,yBAAKA,UAAU,OACX,yBAAKA,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,yBAAKta,UAAU,qBACX,kBAAC8U,GAAA,EAAD,CAAOuK,IAAI,cAAX,kBAEJ,2BAAOxkB,KAAK,OACJmF,UAAU,mBACV6f,OAAQlgB,EAAMk0B,uBACd93B,MAAO4D,EAAMhF,MAAMg5B,gBAAgBG,aAAaC,WAChD9pB,SAAU,SAAC+pB,GAAD,OAAOr0B,EAAMs0B,uBAAuBD,MAIjDr0B,GAASA,EAAMhF,OAASgF,EAAMhF,MAAMqjB,UAAYre,EAAMhF,MAAMqjB,SAASkW,eAAwD,KAAvCv0B,EAAMhF,MAAMqjB,SAASkW,eACzG,kBAAC,GAAD,CAAUlW,SAAU,CAAC,CAAC,KAAQre,EAAMhF,MAAMqjB,SAASkW,cAAe,MAAS,8BAA+BjW,eAAgB,qCAKrIte,EAAMhF,MAAMw5B,eACZ,yBAAKn0B,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,yBAAKta,UAAU,qBACX,kBAAC8U,GAAA,EAAD,CAAOuK,IAAI,QAAX,kBAEJ,kBAACjZ,GAAA,EAAD,CAAUoU,KAAK,OAAO8E,UAAQ,EAC1Bhb,OAAQ3E,EAAMhF,MAAMy5B,oBACpBlwB,OAAQvE,EAAM00B,oBACdr0B,UAAU,qDACV,kBAACqG,GAAA,EAAD,CAAgBmZ,OAAK,GAAE7f,EAAMhF,MAAMg5B,gBAAgBG,aAAaQ,YAChE,kBAAChuB,GAAA,EAAD,KAEQ,6BACK3G,EAAMhF,MAAM45B,eAAeviB,KAAI,SAAC0H,EAAMxH,GAAP,OAC5B,kBAAC3L,GAAA,EAAD,CAActB,IAAKiN,EAAOrM,QAAS,kBAAMlG,EAAM60B,oBAAoB9a,KAC/D,6BAAMA,GAAQA,EAAKc,KAAOd,EAAKc,KAAO,WAS7D7a,GAASA,EAAMhF,OAASgF,EAAMhF,MAAMqjB,UAAYre,EAAMhF,MAAMqjB,SAASyW,eAAwD,KAAvC90B,EAAMhF,MAAMqjB,SAASyW,eACrG,kBAAC,GAAD,CAAUzW,SAAU,CAAC,CAAC,KAAQre,EAAMhF,MAAMqjB,SAASyW,cAAe,MAAS,8BAA+BxW,eAAgB,qCAK7I,yBAAKje,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,yBAAKta,UAAU,qBACX,kBAAC8U,GAAA,EAAD,CAAOuK,IAAI,iBAAX,+BAEJ,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,0BACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBG,aAAaY,wBAChDzqB,SAAUtK,EAAM0e,sBAI5B,yBAAKre,UAAU,wCACP,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,yBAAKta,UAAU,qBACX,kBAAC8U,GAAA,EAAD,CAAOuK,IAAI,WAAX,iBAEJ,kBAACjZ,GAAA,EAAD,CAAUoU,KAAK,UAAU8E,UAAQ,EAC7Bhb,OAAQ3E,EAAMhF,MAAMg6B,cACpBzwB,OAAQvE,EAAMi1B,cACd50B,UAAU,qDACV,kBAACqG,GAAA,EAAD,CAAgBmZ,OAAK,GAAE7f,EAAMhF,MAAMg5B,gBAAgBkB,eACnD,kBAACvuB,GAAA,EAAD,KAEQ,6BACK3G,EAAMhF,MAAMm6B,aAAa9iB,KAAI,SAAC0H,EAAMxH,GAAP,OAC1B,kBAAC3L,GAAA,EAAD,CAActB,IAAKiN,EAAOrM,QAAS,kBAAMlG,EAAMo1B,oBAAoBrb,KAC/D,6BAAMA,GAAQA,EAAK3d,MAAQ2d,EAAK3d,MAAQ,iBAa5F,yBAAKiE,UAAU,4BACf,yBAAKA,UAAU,OACP,yBAAKA,UAAU,oGAAf,6BAIR,yBAAKA,UAAU,OACX,yBAAKA,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,kBAE8C,aAA9C1f,EAAMhF,MAAMg5B,gBAAgBkB,cAC5B,2BACIh6B,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,gBACLxa,UAAU,mBACVsf,UAAQ,EACRvjB,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAY9N,cAC/Cjd,SAAUtK,EAAM0e,oBAGhB,kBAACjY,GAAA,EAAD,CAAUoU,KAAK,cAAc8E,UAAQ,EACjChb,OAAQ3E,EAAMhF,MAAMs6B,eACpB/wB,OAAQvE,EAAMu1B,eACdl1B,UAAU,qDACV,kBAACqG,GAAA,EAAD,CAAgBmZ,OAAK,GAAE7f,EAAMhF,MAAMg5B,gBAAgBqB,YAAY9N,eAC/D,kBAAC5gB,GAAA,EAAD,KAEQ,6BACK3G,EAAMhF,MAAMw6B,gBAAgBnjB,KAAI,SAACojB,EAAMljB,GAAP,OAC7B,kBAAC3L,GAAA,EAAD,CAActB,IAAKiN,EAAOrM,QAAS,kBAAMlG,EAAM01B,qBAAqBD,KAChE,6BAAMA,GAAQA,EAAKE,UAAYF,EAAKE,UAAY,aAUpF,yBAAKt1B,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,gBACJ,kBAACjZ,GAAA,EAAD,CAAUoU,KAAK,OAAO8E,UAAQ,EAC1Bhb,OAAQ3E,EAAMhF,MAAM46B,mBACpBrxB,OAAQvE,EAAM61B,mBACdx1B,UAAU,qDACV,kBAACqG,GAAA,EAAD,CAAgBmZ,OAAK,GAAE7f,EAAMhF,MAAMg5B,gBAAgBqB,YAAYS,mBAC/D,kBAACnvB,GAAA,EAAD,KAEQ,6BACK3G,EAAMhF,MAAM+6B,eAAe1jB,KAAI,SAAC0H,EAAMxH,GAAP,OAC5B,kBAAC3L,GAAA,EAAD,CAActB,IAAKiN,EAAOrM,QAAS,kBAAMlG,EAAMg2B,mBAAmBjc,KAC9D,6BAAMA,GAAQA,EAAKc,KAAOd,EAAKc,KAAO,YASzD7a,GAASA,EAAMhF,OAASgF,EAAMhF,MAAMqjB,UAAYre,EAAMhF,MAAMqjB,SAAS4X,YAAkD,KAApCj2B,EAAMhF,MAAMqjB,SAAS4X,YACnG,kBAAC,GAAD,CAAU5X,SAAU,CAAC,CAAC,KAAQre,EAAMhF,MAAMqjB,SAAS4X,WAAY,MAAS,8BAA+B3X,eAAgB,oCAGrI,yBAAKje,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,aACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,qBACLxa,UAAU,mBACV61B,UAAW,EACXvW,UAAQ,EACRvjB,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAYc,QAC/C7rB,SAAUtK,EAAM0e,kBAChBwB,OAAQlgB,EAAMo2B,gBAIjBp2B,GAASA,EAAMhF,OAASgF,EAAMhF,MAAMqjB,UAAYre,EAAMhF,MAAMqjB,SAAS4X,YAAkD,KAApCj2B,EAAMhF,MAAMqjB,SAAS4X,YACnG,kBAAC,GAAD,CAAU5X,SAAU,CAAC,CAAC,KAAQre,EAAMhF,MAAMqjB,SAAS4X,WAAY,MAAS,8BAA+B3X,eAAgB,oCAGrI,yBAAKje,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBAEjB,yBAAKta,UAAU,qBACX,kBAAC8U,GAAA,EAAD,CAAOuK,IAAI,QAAX,0BAEJ,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,gBACLxa,UAAU,mBACVsf,UAAQ,EACRvjB,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAYgB,cAC/C/rB,SAAUtK,EAAM0e,kBAChBwB,OAAQlgB,EAAMkf,eAIjBlf,GAASA,EAAMhF,OAASgF,EAAMhF,MAAMqjB,UAAYre,EAAMhF,MAAMqjB,SAASiY,eAAwD,KAAvCt2B,EAAMhF,MAAMqjB,SAASiY,eACjG,kBAAC,GAAD,CAAUjY,SAAU,CAAC,CAAC,KAAQre,EAAMhF,MAAMqjB,SAASiY,cAAe,MAAS,8BAA+BhY,eAAgB,oCAG7I,yBAAKje,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,aACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,WACLxa,UAAU,mBACVsf,UAAQ,EACRvjB,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAYlV,SAC/CV,SAAS,iBAMzB,yBAAKpf,UAAU,4BACX,yBAAKA,UAAU,OACX,yBAAKA,UAAU,oGAAf,wBAIJ,yBAAKA,UAAU,OACX,yBAAKA,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,kBACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,kCACLxa,UAAU,mBACVsf,UAAQ,EACRvjB,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAYkB,gCAC/CjsB,SAAUtK,EAAM0e,sBAI5B,yBAAKre,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,QACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,+BACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAYmB,6BAC/ClsB,SAAUtK,EAAM0e,sBAI5B,yBAAKre,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,kBACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,oCACZwQ,KAAK,iCACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAYoB,+BAC/CnsB,SAAUtK,EAAM0e,sBAI5B,yBAAKre,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,kBACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,uBACZwQ,KAAK,iCACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAYqB,+BAC/CpsB,SAAUtK,EAAM0e,sBAI5B,yBAAKre,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,kBACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,iCACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAYsB,+BAC/CrsB,SAAUtK,EAAM0e,yBAOxC,yBAAKre,UAAU,oDACX,6BACI,yBAAKA,UAAU,OACX,yBAAKA,UAAU,oGAAf,YAIJ,yBAAKA,UAAU,OACX,yBAAKA,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,UACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,QACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAYuB,MAC/CtsB,SAAUtK,EAAM0e,sBAI5B,yBAAKre,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,UACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,QACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAYwB,MAC/CvsB,SAAUtK,EAAM0e,sBAI5B,yBAAKre,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,UACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,QACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAYyB,MAC/CxsB,SAAUtK,EAAM0e,sBAI5B,yBAAKre,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,UACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,QACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAY0B,MAC/CzsB,SAAUtK,EAAM0e,wBAMpC,yBAAKre,UAAU,4BACX,yBAAKA,UAAU,OACX,yBAAKA,UAAU,oGAAf,qBAIJ,yBAAKA,UAAU,OACX,yBAAKA,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,kBACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,6BACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAY2B,2BAC/C1sB,SAAUtK,EAAM0e,sBAI5B,yBAAKre,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,QACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,oBACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAY4B,kBAC/C3sB,SAAUtK,EAAM0e,sBAI5B,yBAAKre,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,kBACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,4BACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAY6B,0BAC/C5sB,SAAUtK,EAAM0e,sBAI5B,yBAAKre,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,kBACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,4BACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAY8B,0BAC/C7sB,SAAUtK,EAAM0e,sBAI5B,yBAAKre,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,kBACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,4BACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAY+B,0BAC/C9sB,SAAUtK,EAAM0e,wBAMpC,yBAAKre,UAAU,4BACX,yBAAKA,UAAU,OACX,yBAAKA,UAAU,oGAAf,qBAIJ,yBAAKA,UAAU,OACX,yBAAKA,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,kBACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,8BACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAYgC,4BAC/C/sB,SAAUtK,EAAM0e,sBAI5B,yBAAKre,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,QACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,qBACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAYiC,mBAC/ChtB,SAAUtK,EAAM0e,sBAI5B,yBAAKre,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,kBACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,6BACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAYkC,2BAC/CjtB,SAAUtK,EAAM0e,sBAI5B,yBAAKre,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,kBACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,6BACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAYmC,2BAC/CltB,SAAUtK,EAAM0e,sBAI5B,yBAAKre,UAAU,wCACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,iBAAX,kBACA,2BACIxkB,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,6BACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAMg5B,gBAAgBqB,YAAYoC,2BAC/CntB,SAAUtK,EAAM0e,0BAU5C1e,EAAM1E,MAAuB,SAAf0E,EAAM1E,MAChB,yBAAK+E,UAAU,OACX,yBAAKA,UAAU,wEACX,4BAAQnF,KAAK,SAASof,MAAM,6DAA6DpU,QAAS,kBAAMlG,EAAM8zB,oBAA9G,UACA,4BAAQ54B,KAAK,SAASof,MAAM,yDACxBpU,QAASlG,EAAM+e,MADnB,mBAmB1C,yBAAKzZ,IAAI,gBAAgB2C,IAG/B,kBAAC,GAAD,CACIyrB,uBAAwB1zB,EAAMhF,MAAM04B,uBACpCz0B,QAASe,EAAMhF,MAAM08B,mBC3lB9B,IAAIhX,GAA+B,KAC/BiX,GAA0C,KCP9C,SAASC,GAAkC5D,EAAiB94B,EAAMI,EAAMG,EAAgBJ,GAC3F,OAAOH,GACH,IAAK,QACD,OAqBZ,SAA8B84B,GAC1B,MAAO,CACH,eAAkBA,GAAmBA,EAAgB6D,eAAiB7D,EAAgB6D,eAAiB,GACvG,YAAe,GACf,YAAe7D,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAYyC,UAAY9D,EAAgBqB,YAAYyC,UAAW,IAzBrIC,CAAqB/D,GAGhC,IAAK,MACD,OAGJ,IAAK,OACD,OAyBZ,SAA6BA,EAAiB14B,EAAMG,EAAgBJ,GAChE,MAAO,CACH,KAAQC,EACR,MAASG,EAAeiR,MACxB,GAAe,WAATpR,GAAoBD,EAAkBA,EAAgBsK,GAAc,KAC1E,UAAaquB,GAAoBA,EAAgBG,cAAgBH,EAAgBG,aAAaY,wBAA0Bf,EAAgBG,aAAaY,wBAA0B,GAC/K,YAAef,GAAoBA,EAAgBG,cAAgBH,EAAgBG,aAAa6D,gBAAkBhE,EAAgBG,aAAa6D,gBAAkB,IACjK,KAAQhE,GAAoBA,EAAgBG,cAAgBH,EAAgBG,aAAaC,WAAaJ,EAAgBG,aAAaC,WAAa,GAChJ,cAAiBJ,GAAmBA,EAAgBiE,qBAAuBjE,EAAgBiE,qBAAsB,GACjH,gBAAmB,CACjB,aAAgBjE,GAAmBA,EAAgBqB,YAAcrB,EAAgBqB,YAAY6C,aAAc,GAC3G,uBAA0B,KAC1B,mBAAsB,KACtB,mBAAsBlE,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAY9N,cAAgByM,EAAgBqB,YAAY9N,cAAgB,GAChK,qBAAwB,KACxB,iBAAoB,KACpB,2BAA8B,IAC9B,yBAA4ByM,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAYgB,cAAgBrC,EAAgBqB,YAAYgB,cAAe,GACrK,oBAAuBrC,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAYlV,SAAW6T,EAAgBqB,YAAYlV,SAAU,GACtJ,kBAAqB6T,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAYmB,6BAA+BxC,EAAgBqB,YAAYkB,gCAAkC,GAChM,oBAAuB,KACvB,gBAAmBvC,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAYmB,6BAA+BxC,EAAgBqB,YAAYmB,6BAA+B,GAC3L,yBAA4BxC,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAYmB,6BAA+BxC,EAAgBqB,YAAYoB,+BAAiC,GACtM,yBAA4BzC,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAYmB,6BAA+BxC,EAAgBqB,YAAYqB,+BAAiC,GACtM,yBAA4B1C,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAYmB,6BAA+BxC,EAAgBqB,YAAYsB,+BAAiC,GACtM,yBAA4B,KAC5B,6BAAgC3C,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAY2B,2BAA6BhD,EAAgBqB,YAAY2B,2BAA4B,GACnM,yBAA4BhD,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAY4B,kBAAoBjD,EAAgBqB,YAAY4B,kBAAmB,GAC7K,yBAA4BjD,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAY6B,0BAA4BlD,EAAgBqB,YAAY6B,0BAA4B,GAC9L,yBAA4BlD,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAY8B,0BAA4BnD,EAAgBqB,YAAY8B,0BAA4B,GAC9L,yBAA4BnD,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAY+B,0BAA4BpD,EAAgBqB,YAAY+B,0BAA4B,GAC9L,6BAAgCpD,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAYgC,4BAA8BrD,EAAgBqB,YAAYgC,4BAA6B,GACrM,yBAA4BrD,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAYiC,mBAAqBtD,EAAgBqB,YAAYiC,mBAAoB,GAC/K,yBAA4BtD,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAYkC,2BAA6BvD,EAAgBqB,YAAYkC,2BAA6B,GAChM,yBAA4BvD,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAYmC,2BAA6BxD,EAAgBqB,YAAYmC,2BAA6B,GAChM,yBAA4BxD,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAYoC,2BAA6BzD,EAAgBqB,YAAYoC,2BAA6B,GAChM,wBAA2BzD,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAYuB,MAAQ5C,EAAgBqB,YAAYuB,MAAQ,GACrJ,wBAA2B5C,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAYwB,MAAQ7C,EAAgBqB,YAAYwB,MAAQ,GACrJ,wBAA2B7C,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAYyB,MAAQ9C,EAAgBqB,YAAYyB,MAAQ,GACrJ,wBAA2B9C,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAY0B,MAAQ/C,EAAgBqB,YAAY0B,MAAQ,GACrJ,mBAAsB/C,GAAmBA,EAAgBqB,aAAerB,EAAgBqB,YAAYc,QAAUnC,EAAgBqB,YAAYc,QAAU,GACpJ,YAAe,KAlENgC,CAAoBnE,EAAiB14B,EAAMG,EAAgBJ,GAGtE,IAAK,SACD,QAyEL,ICrFM+8B,GAAuB,SAACpvB,EAAK1N,GAAN,OAAe,SAACe,GAChD,OAAOC,QAAQC,QACVF,EAAS,CACLnB,KlEFuB,uBkEGvBC,QAAS6N,EACT1N,KAAMA,OCKb+8B,G,YACF,WAAYr4B,GAAQ,IAAD,8BACf,4CAAMA,KAyZVuE,OAAS,SAAAmP,GACL,IAAI4kB,GAAkB,EAClBpwB,EAAW,6DACXmW,EAAW,EAAKrjB,MAAMqjB,SACG,MAAzB,EAAKrjB,MAAM+4B,UACP,EAAK/4B,MAAMw5B,cAEP8D,IADA,EAAKt9B,MAAMu9B,0BAA0BpE,aAAaC,WAI9C,EAAKp5B,MAAMw5B,gBAEf8D,KADA,EAAKt9B,MAAMu9B,0BAA0BpE,aAAaC,YAAc,EAAKp5B,MAAMu9B,0BAA0BpE,aAAaQ,YAAc,EAAK35B,MAAMu9B,0BAA0BpE,aAAaqE,sBAO1J,MAAzB,EAAKx9B,MAAM+4B,UAEduE,IADA,EAAKt9B,MAAMu9B,0BAA0BE,cAActC,QAIvB,MAAzB,EAAKn7B,MAAM+4B,UAEduE,IADA,EAAKt9B,MAAMu9B,0BAA0BG,mBAIT,MAAzB,EAAK19B,MAAM+4B,YAEmC,QAAjD,EAAK/4B,MAAMg5B,gBAAgBC,kBACvB,EAAKj5B,MAAMu9B,0BAA0BlD,YAAYgB,gBACjDiC,GAAkB,GAEkC,SAAjD,EAAKt9B,MAAMg5B,gBAAgBC,kBAC9B,EAAKj5B,MAAMu9B,0BAA0BlD,YAAYgB,eAAiB,EAAKr7B,MAAMu9B,0BAA0BlD,YAAYsD,cACnHL,GAAkB,GAEf,EAAKt9B,MAAMu9B,0BAA0BlD,YAAYuD,0BAA4B,EAAK59B,MAAMu9B,0BAA0BlD,YAAYwD,OAAS,EAAK79B,MAAMu9B,0BAA0BlD,YAAYyD,KAC/L5wB,EAAW,iHACXowB,GAAkB,IAElBpwB,EAAW,iHACXowB,GAAkB,IAI1B,IAAIS,EAAgB1a,EAAS2a,WAAU,SAAAjf,GAAI,OAAIA,EAAKpP,OAASzC,KACzDowB,GAAmBS,GAAiB,EACpC1a,EAAS4a,OAAOF,EAAe,GACvBT,IAAsC,IAAnBS,GAC3B1a,EAASxb,KAAK,CACV3H,KAAMkN,GACNuC,KAAMzC,EACNoS,MAAOjS,KAGY,EAAKrN,MAAM+4B,YAAcrgB,GAChD,EAAK5P,SAAS,CAAEiwB,UAAWrgB,EAAK2K,SAAUA,IAC9C,EAAKva,SAAS,CAAEua,SAAUA,KAld1B,EAAK9Z,OAAS,EAAKA,OAAOC,KAAZ,gBACd,EAAKka,kBAAoB,EAAKA,kBAAkBla,KAAvB,gBACzB,EAAKqF,OAAS,EAAKA,OAAOrF,KAAZ,gBACd,EAAKua,KAAO,EAAKA,KAAKva,KAAV,gBACZ,EAAKkwB,oBAAsB,EAAKA,oBAAoBlwB,KAAzB,gBAC3B,EAAKqwB,oBAAsB,EAAKA,oBAAoBrwB,KAAzB,gBAC3B,EAAK00B,mBAAqB,EAAKA,mBAAmB10B,KAAxB,gBAC1B,EAAK20B,mBAAqB,EAAKA,mBAAmB30B,KAAxB,gBAC1B,EAAK40B,iBAAmB,EAAKA,iBAAiB50B,KAAtB,gBACxB,EAAK60B,aAAe,EAAKA,aAAa70B,KAAlB,gBACpB,EAAK80B,aAAe,EAAKA,aAAa90B,KAAlB,gBACpB,EAAK+0B,sBAAwB,EAAKA,sBAAsB/0B,KAA3B,gBAC7B,EAAKg1B,sBAAwB,EAAKA,sBAAsBh1B,KAA3B,gBAC7B,EAAK4xB,aAAe,EAAKA,aAAa5xB,KAAlB,gBACpB,EAAKi1B,eAAiB,EAAKA,eAAej1B,KAApB,gBACtB,EAAKk1B,eAAiB,EAAKA,eAAel1B,KAApB,gBACtB,EAAKm1B,UAAY,EAAKA,UAAUn1B,KAAf,gBACjB,EAAKo1B,cAAgB,EAAKA,cAAcp1B,KAAnB,gBACrB,EAAKq1B,uBAAyB,EAAKA,uBAAuBr1B,KAA5B,gBAC9B,EAAKs1B,uBAAyB,EAAKA,uBAAuBt1B,KAA5B,gBAC9B,EAAK0a,YAAc,EAAKA,YAAY1a,KAAjB,gBACnB,EAAKu1B,mCAAqC,EAAKA,mCAAmCv1B,KAAxC,gBAC1C,EAAK8vB,uBAAyB,EAAKA,uBAAuB9vB,KAA5B,gBAC9B,EAAK0vB,uBAAyB,EAAKA,uBAAuB1vB,KAA5B,gBAC9B,EAAKw1B,oBAAsB,EAAKA,oBAAoBx1B,KAAzB,gBAC3B,EAAKy1B,qBAAuB,EAAKA,qBAAqBz1B,KAA1B,gBAC5B,EAAK01B,oBAAsB,EAAKA,oBAAoB11B,KAAzB,gBAC3B,EAAK21B,qBAAuB,EAAKA,qBAAqB31B,KAA1B,gBAC5B,EAAK41B,oBAAsB,EAAKA,oBAAoB51B,KAAzB,gBAC3B,EAAKqxB,mBAAqB,EAAKA,mBAAmBrxB,KAAxB,gBAC1B,EAAKwxB,mBAAqB,EAAKA,mBAAmBxxB,KAAxB,gBAE1B,EAAK61B,gBAAkB,EAAKA,gBAAgB71B,KAArB,gBACvB,EAAKsvB,gBAAkB,EAAKA,gBAAgBtvB,KAArB,gBACvB,EAAK+wB,eAAiB,EAAKA,eAAe/wB,KAApB,gBACtB,EAAKywB,cAAgB,EAAKA,cAAczwB,KAAnB,gBACrB,EAAKkxB,qBAAuB,EAAKA,qBAAqBlxB,KAA1B,gBAC5B,EAAK4wB,oBAAsB,EAAKA,oBAAoB5wB,KAAzB,gBAE3B,EAAK81B,YAAc,GACS,OAAxB,EAAKt6B,MAAMu6B,eAA6Cz4B,IAAxB,EAAK9B,MAAMu6B,WAC3C,EAAKD,YAAc,EAAKt6B,MAAMu6B,UAGlC,EAAKC,UAAY,GACQ,OAArB,EAAKx6B,MAAMvF,YAAuCqH,IAArB,EAAK9B,MAAMvF,QACxC,EAAK+/B,UAAY,EAAKx6B,MAAMvF,OAGhC,EAAKggC,YAAc,KACY,OAA3B,EAAKz6B,MAAMy6B,kBAAmD34B,IAA3B,EAAK9B,MAAMy6B,cAC9C,EAAKA,YAAc,EAAKz6B,MAAMy6B,aAGlC,EAAKC,YAAc,KACY,OAA3B,EAAK16B,MAAM06B,kBAAmD54B,IAA3B,EAAK9B,MAAM06B,cAC9C,EAAKA,YAAc,EAAK16B,MAAM06B,aAGlC,EAAK1/B,MAAQ,CACT+4B,UAAW,IACXC,gBAAiB,CACbG,aAAc,CACVC,WAAY,GACZO,WAAY,GACZqD,gBAAiB,GACjBQ,oBAAqB,GACrBzD,wBAAyB,GACzB4F,cAAe,IAEnBlC,cAAe,CACXtC,QAAS,GACTyE,aAAc,GACdC,aAAc,GACdC,aAAc,GACdC,aAAc,GACdC,KAAM,GACNC,cAAe,GACfC,cAAe,IAEnBxC,mBAAoB,GACpBzE,kBAAmB,OACnB4D,eAAgB,GAChB3C,cAAe,GACf+C,qBAAsB,GACtBkD,cAAc,EACd9F,YAAa,CACTyC,UAAW,GACXc,yBAA0B,GAC1BC,MAAO,GACPC,IAAK,GACLsC,iBAAkB,GAClBC,gBAAiB,GACjBlb,SAAU,GACVoH,cAAe,GACf8O,cAAe,GACfsC,YAAa,GACb/B,MAAO,GACPC,MAAO,GACPC,MAAO,GACPC,MAAO,GACPuE,wBAAwB,EACxBC,4BAA6B,GAC7BvE,2BAA4B,GAC5BC,kBAAmB,GACnBC,0BAA2B,GAC3BC,0BAA2B,GAC3BC,0BAA2B,GAC3Bb,gCAAiC,GACjCC,6BAA8B,GAC9BC,+BAAgC,GAChCC,+BAAgC,GAChCC,+BAAgC,GAChCU,4BAA6B,GAC7BC,mBAAoB,GACpBC,2BAA4B,GAC5BC,2BAA4B,GAC5BC,2BAA4B,GAC5BtB,QAAS,KACT+B,cAAc,EACdpC,kBAAmB,IAEvB0F,SAAU,CACN9d,UAAW,GACXC,SAAU,IAEd8d,kBAAmB,GACnBC,sBAAuB,CACnBC,MAAO,GACPC,OAAQ,GACRC,YAAa,GACbC,aAAc,GACdC,gBAAiB,GACjBC,aAAc,GACdC,YAAa,KAIrB1D,0BAA2B,CACvBpE,aAAc,CACVC,YAAY,EACZO,YAAY,EACZ6D,qBAAqB,GAEzBC,cAAe,CACXtC,SAAS,GAEbuC,oBAAoB,EACpBrD,YAAa,CACTuD,0BAA0B,EAC1BC,OAAO,EACPC,KAAK,EACLzC,eAAe,EACfsC,aAAa,IAGrBlE,qBAAqB,EACrBmB,oBAAoB,EACpBN,gBAAgB,EAChBN,eAAe,EACfJ,eAAgB,CAAC,CAAC,KAAQ,WAAY,MAAS,KAAM,CAAC,KAAQ,aAAc,MAAS,MACrFmB,eAAgB,CAAC,CAAC,KAAQ,YAAa,OAAS,GAAQ,CAAC,KAAQ,YAAa,OAAS,IACvFmG,cAAc,EACdC,cAAe,CAAC,UAAW,WAC3BC,uBAAuB,EACvBC,qBAAsB,CAAC,MAAO,MAC9BC,oBAAoB,EACpBC,kBAAmB,CAAC,cAAe,cAAe,eAClDC,sBAAsB,EACtBC,qBAAqB,EACrBv0B,SAAU,GACVmW,SAAU,GACVqe,WAAY,GACZvH,aAAc,GACdwH,wBAAwB,EACxBC,sBAAuB,CAAC,CAAE,MAAS,OAAQ,YAAe,cAAgB,CAAE,MAAS,QAAS,YAAe,2BAC7GC,cAAe,GACfrI,eAAe,EACfsI,WAAW,EACXC,eAAe,EACfC,UAAW,CAAC,CAAE,UAAa,KAAM,UAAa,UAAY,CAAE,UAAa,KAAM,UAAa,WAAa,CAAE,UAAa,KAAM,UAAa,YAAc,CAAE,UAAa,KAAM,UAAa,kBAAoB,CAAE,UAAa,KAAM,UAAa,WAAa,CAAE,UAAa,KAAM,UAAa,cAAgB,CAAE,UAAa,KAAM,UAAa,YAAc,CAAE,UAAa,KAAM,UAAa,eAAiB,CAAE,UAAa,KAAM,UAAa,cAAgB,CAAE,UAAa,KAAM,UAAa,wBAA0B,CAAE,UAAa,KAAM,UAAa,YAAc,CAAE,UAAa,KAAM,UAAa,WAAa,CAAE,UAAa,KAAM,UAAa,kCAAoC,CAAE,UAAa,KAAM,UAAa,WAAa,CAAE,UAAa,KAAM,UAAa,QAAU,CAAE,UAAa,KAAM,UAAa,UAAY,CAAE,UAAa,KAAM,UAAa,QAAU,CAAE,UAAa,KAAM,UAAa,SAAW,CAAE,UAAa,KAAM,UAAa,YAAc,CAAE,UAAa,KAAM,UAAa,WAAa,CAAE,UAAa,KAAM,UAAa,UAAY,CAAE,UAAa,KAAM,UAAa,YAAc,CAAE,UAAa,KAAM,UAAa,aAAe,CAAE,UAAa,KAAM,UAAa,iBAAmB,CAAE,UAAa,KAAM,UAAa,YAAc,CAAE,UAAa,KAAM,UAAa,SAAW,CAAE,UAAa,KAAM,UAAa,oBAAsB,CAAE,UAAa,KAAM,UAAa,YAAc,CAAE,UAAa,KAAM,UAAa,aAAe,CAAE,UAAa,KAAM,UAAa,YAAc,CAAE,UAAa,KAAM,UAAa,eAAiB,CAAE,UAAa,KAAM,UAAa,WAAa,CAAE,UAAa,KAAM,UAAa,kBAAoB,CAAE,UAAa,KAAM,UAAa,gBAAkB,CAAE,UAAa,KAAM,UAAa,YAAc,CAAE,UAAa,KAAM,UAAa,iBAAmB,CAAE,UAAa,KAAM,UAAa,cAAgB,CAAE,UAAa,KAAM,UAAa,cAAgB,CAAE,UAAa,KAAM,UAAa,UAAY,CAAE,UAAa,KAAM,UAAa,YAAc,CAAE,UAAa,KAAM,UAAa,QAAU,CAAE,UAAa,KAAM,UAAa,YAAc,CAAE,UAAa,KAAM,UAAa,UAAY,CAAE,UAAa,KAAM,UAAa,gBAAkB,CAAE,UAAa,KAAM,UAAa,eAAiB,CAAE,UAAa,KAAM,UAAa,SAAW,CAAE,UAAa,KAAM,UAAa,gBAAkB,CAAE,UAAa,KAAM,UAAa,kBAAoB,CAAE,UAAa,KAAM,UAAa,gBAAkB,CAAE,UAAa,KAAM,UAAa,aAAe,CAAE,UAAa,KAAM,UAAa,SAAW,CAAE,UAAa,KAAM,UAAa,+BAAiC,CAAE,UAAa,KAAM,UAAa,QAAU,CAAE,UAAa,KAAM,UAAa,YAAc,CAAE,UAAa,KAAM,UAAa,kBAAoB,CAAE,UAAa,KAAM,UAAa,WAAa,CAAE,UAAa,KAAM,UAAa,cAAgB,CAAE,UAAa,KAAM,UAAa,aAAe,CAAE,UAAa,KAAM,UAAa,iBAAmB,CAAE,UAAa,KAAM,UAAa,YAC55FC,YAAa,CAAC,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,wBAA0B,CAAE,YAAe,KAAM,YAAe,eAAiB,CAAE,YAAe,KAAM,YAAe,uBAAyB,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,aAAe,CAAE,YAAe,KAAM,YAAe,kBAAoB,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,aAAe,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,iBAAmB,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,0BAA4B,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,gBAAkB,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,oBAAsB,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,qBAAuB,CAAE,YAAe,KAAM,YAAe,mCAAqC,CAAE,YAAe,KAAM,YAAe,qCAAuC,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,iBAAmB,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,2BAA6B,CAAE,YAAe,KAAM,YAAe,yCAA2C,CAAE,YAAe,KAAM,YAAe,4BAA8B,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,eAAiB,CAAE,YAAe,KAAM,YAAe,iBAAmB,CAAE,YAAe,KAAM,YAAe,gBAAkB,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,QAAU,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,oBAAsB,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,kBAAoB,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,sBAAwB,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,kBAAoB,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,QAAU,CAAE,YAAe,KAAM,YAAe,+BAAiC,CAAE,YAAe,KAAM,YAAe,mCAAqC,CAAE,YAAe,KAAM,YAAe,iBAAmB,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,kBAAoB,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,iBAAmB,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,aAAe,CAAE,YAAe,KAAM,YAAe,aAAe,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,qBAAuB,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,gDAAkD,CAAE,YAAe,KAAM,YAAe,aAAe,CAAE,YAAe,KAAM,YAAe,QAAU,CAAE,YAAe,KAAM,YAAe,iBAAmB,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,aAAe,CAAE,YAAe,KAAM,YAAe,qCAAuC,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,aAAe,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,eAAiB,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,kCAAoC,CAAE,YAAe,KAAM,YAAe,QAAU,CAAE,YAAe,KAAM,YAAe,6BAA+B,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,yBAA2B,CAAE,YAAe,KAAM,YAAe,0CAA4C,CAAE,YAAe,KAAM,YAAe,sBAAwB,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,kBAAoB,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,oCAAsC,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,eAAiB,CAAE,YAAe,KAAM,YAAe,iBAAmB,CAAE,YAAe,KAAM,YAAe,aAAe,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,aAAe,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,0BAA4B,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,wBAA0B,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,8BAAgC,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,oBAAsB,CAAE,YAAe,KAAM,YAAe,8CAAgD,CAAE,YAAe,KAAM,YAAe,QAAU,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,4BAA8B,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,aAAe,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,iBAAmB,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,kBAAoB,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,aAAe,CAAE,YAAe,KAAM,YAAe,eAAiB,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,QAAU,CAAE,YAAe,KAAM,YAAe,eAAiB,CAAE,YAAe,KAAM,YAAe,QAAU,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,QAAU,CAAE,YAAe,KAAM,YAAe,oBAAsB,CAAE,YAAe,KAAM,YAAe,oBAAsB,CAAE,YAAe,KAAM,YAAe,eAAiB,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,6BAA+B,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,eAAiB,CAAE,YAAe,KAAM,YAAe,mCAAqC,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,sBAAwB,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,gBAAkB,CAAE,YAAe,KAAM,YAAe,mBAAqB,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,aAAe,CAAE,YAAe,KAAM,YAAe,gDAAkD,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,0BAA4B,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,gBAAkB,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,eAAiB,CAAE,YAAe,KAAM,YAAe,yBAA2B,CAAE,YAAe,KAAM,YAAe,eAAiB,CAAE,YAAe,KAAM,YAAe,6BAA+B,CAAE,YAAe,KAAM,YAAe,wBAA0B,CAAE,YAAe,KAAM,YAAe,aAAe,CAAE,YAAe,KAAM,YAAe,4BAA8B,CAAE,YAAe,KAAM,YAAe,QAAU,CAAE,YAAe,KAAM,YAAe,+BAAiC,CAAE,YAAe,KAAM,YAAe,QAAU,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,eAAiB,CAAE,YAAe,KAAM,YAAe,gBAAkB,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,uBAAyB,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,6BAA+B,CAAE,YAAe,KAAM,YAAe,gCAAkC,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,wCAA0C,CAAE,YAAe,KAAM,YAAe,iBAAmB,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,cAAgB,CAAE,YAAe,KAAM,YAAe,iCAAmC,CAAE,YAAe,KAAM,YAAe,oCAAsC,CAAE,YAAe,KAAM,YAAe,qCAAuC,CAAE,YAAe,KAAM,YAAe,2BAA6B,CAAE,YAAe,KAAM,YAAe,wBAA0B,CAAE,YAAe,KAAM,YAAe,YAAc,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,qBAAuB,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,SAAW,CAAE,YAAe,KAAM,YAAe,WAAa,CAAE,YAAe,KAAM,YAAe,gBAAkB,CAAE,YAAe,KAAM,YAAe,UAAY,CAAE,YAAe,KAAM,YAAe,aACr/azH,gBAAiB,GACjB9B,wBAAwB,EACxBgE,gBAAiB,IA3LN,E,iFAkMf,IAAIwF,EAAW/8B,KAAKH,MAAM3E,gBAAkB8E,KAAKH,MAAM3E,gBAAgBsK,GAAK,GACxEw3B,EAAQh9B,KAAKH,MAAMvE,eAAiB0E,KAAKH,MAAMvE,eAAeiR,MAAO,GAE5D,KAAVywB,EACCh9B,KAAK2D,SAAS,CAAC4vB,wBAAwB,EAAMgE,gBpD9MnB,qDoD8M4DoF,WAAW,KAGjG38B,KAAKi9B,6BACFj9B,KAAKH,MAAM1E,MAA4B,SAApB6E,KAAKH,MAAM1E,MAExB6E,KAAKH,MAAM1E,MAA4B,WAApB6E,KAAKH,MAAM1E,KADnC6E,KAAKk9B,4BAA4BH,EAAUC,IAK3Ch9B,KAAKm9B,cAAcH,GACnBh9B,KAAK2D,SAAS,CAACg5B,WAAW,IAAQ,WAC9Bta,Y,kDAOY0a,EAAUC,GAAO,IAAD,OACxCha,GAAY,UAAWga,GAAO/4B,MAAK,SAAAC,GAC/B,EAAKP,SAAS,CAACqxB,aAAc9wB,IAAM,WAC/B,EAAKk5B,qBAAqBL,EAAUC,SAG3CnzB,OAAM,SAAAC,GACHxL,QAAQC,IAAIuL,GACZ,EAAKnG,SAAS,CAACqxB,aAAc,KAAK,WAC9B,EAAKoI,qBAAqBL,EAAUC,W,mDAKnB,IAAD,OACrBh9B,KAAKH,MAAMvE,gBAAkB0E,KAAKH,MAAMvE,eAAeiR,OHtL5B,SAACywB,GAGY,OAA5CxF,SAAgG71B,IAA5C61B,IAGnDA,GAAwC9tB,OAAO,0EAInD,IAAMtK,EAAcpB,IAAM2L,YAmC1B,OAlCA6tB,GAA0Cp4B,EAAYqE,SAElB,IAAItH,SACpC,SAAUC,EAASoC,GACXw+B,EAGAh+B,GADO,UAAMtC,IAAN,YzD5De,4CyD4Df,kBAAsDsgC,GACpDxF,IAAyCvzB,MAAK,SAAAC,GAEhDA,EAAIvF,MAAQuF,EAAIvF,KAAKgC,OAAS,EAC7BvE,EAAQ8H,EAAIvF,MAEZvC,EAAQ,OAGfyN,OAAM,SAACxL,GACDL,IAAMU,SAASL,GAEdC,QAAQC,IAAIF,IAGhBC,QAAQD,MAAM,kCAAmCA,GACjDG,EAAOuJ,SAKXzJ,QAAQD,MAAM,0BACdG,EAAOuJ,QGgJXs1B,CAAuBr9B,KAAKH,MAAMvE,eAAeiR,OAAOtI,MAAK,SAAAC,GACzD,EAAKP,SAAS,CAAC0xB,gBAAiBnxB,OAEnC2F,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACd,EAAKnG,SAAS,CAAC0xB,gBAAiB,U,2CAMvBiI,EAAUN,GAAO,IAAD,QjBoBN,SAACD,EAAUC,GAEE,OAAxCta,SAAwF/gB,IAAxC+gB,IAEhDA,GAAoChZ,OAAO,8FAI/C,IAAMtK,EAAcpB,IAAM2L,YAwB1B,OAvBA+Y,GAAsCtjB,EAAYqE,SAElB,IAAItH,SAChC,SAAUC,EAASoC,GAEfQ,GADO,UAAMtC,IAAN,Y3C/QkB,uC2C+QlB,qBAAwDqgC,EAAxD,kBAA0EC,GACxEta,IAAqCze,MAAK,SAAAC,GAE5CA,GAAOA,EAAIvF,KACVvC,EAAQ8H,EAAIvF,MAEZH,EAAOuJ,OAGd8B,OAAM,SAACxL,GACAL,IAAMU,WACNJ,QAAQC,IAAIF,IAGZC,QAAQD,MAAM,mDAAoDA,GAClEG,EAAOuJ,YiB/CnBw1B,CAAoBD,EAAUN,GAAO/4B,MAAK,SAAAC,GACtC,EAAKP,SAAS,CAAC65B,YAAat5B,EAAKy4B,WAAW,IAAQ,WAChD,EAAKzC,kBACL7X,WAGRxY,OAAM,SAAAC,GACH,EAAKnG,SAAS,CAACg5B,WAAW,IAAQ,WACjCta,QAEDvjB,KAAQT,MAAM,qCACdC,QAAQC,IAAI,sD,oCAKLy+B,GAAO,IAAD,OAChBha,GAAY,UAAWga,GAAO/4B,MAAK,SAAAC,GAC/B,EAAKP,SAAS,CAACqxB,aAAc9wB,OAEhC2F,OAAM,SAAAC,GACHxL,QAAQC,IAAIuL,GACZ,EAAKnG,SAAS,CAACqxB,aAAc,KAC7Bl2B,KAAQT,MAAM,6C,6CAKmB,OAAjCkiB,SAA0E5e,IAAjC4e,IACzCA,GAA6B7W,OAAO,mEAGxC1J,KAAKH,MAAMo4B,qBAAqB,KAAM,Q,wCAGlCj4B,KAAKH,MAAMsE,SACXnE,KAAKH,MAAMsE,QAAQzB,KAAnB,mBAAoC1C,KAAKH,MAAMvE,gBAAkB0E,KAAKH,MAAMvE,eAAeiR,MAAQvM,KAAKH,MAAMvE,eAAeiR,MAAQ,O,oCAI/HtQ,GACX,KAAG+D,KAAKnF,MAAM45B,gBAAkBh0B,MAAMC,QAAQV,KAAKnF,MAAM45B,iBAAmBz0B,KAAKnF,MAAM45B,eAAe9zB,OAAS,GAAK1E,GAOhH,MAAO,GANN,IAAI,IAAI2E,EAAE,EAAGA,EAAGZ,KAAKnF,MAAM45B,eAAe9zB,OAAQC,IAC9C,GAAGZ,KAAKnF,MAAM45B,eAAe7zB,GAAG3E,QAAUA,EACtC,OAAQ+D,KAAKnF,MAAM45B,eAAe7zB,GAAG8Z,KAAO1a,KAAKnF,MAAM45B,eAAe7zB,GAAG8Z,KAAO,K,mCAQnFze,GACT,KAAG+D,KAAKnF,MAAM+6B,gBAAkBn1B,MAAMC,QAAQV,KAAKnF,MAAM+6B,iBAAmB51B,KAAKnF,MAAM+6B,eAAej1B,OAAS,GAO3G,MAAO,GANN,IAAI,IAAIC,EAAE,EAAGA,EAAGZ,KAAKnF,MAAM+6B,eAAej1B,OAAQC,IAC9C,GAAGZ,KAAKnF,MAAM+6B,eAAeh1B,GAAG3E,QAAUA,EACtC,OAAQ+D,KAAKnF,MAAM+6B,eAAeh1B,GAAG8Z,KAAO1a,KAAKnF,MAAM+6B,eAAeh1B,GAAG8Z,KAAO,K,0CAQ5E+iB,GAChB,IAAIC,EAAa,GACjB,GAAG19B,KAAKnF,MAAMm6B,cAAgBv0B,MAAMC,QAAQV,KAAKnF,MAAMm6B,eAAiByI,EACrE,IAAI,IAAI78B,EAAE,EAAGA,EAAGZ,KAAKnF,MAAMm6B,aAAar0B,OAAQC,IAC5C,GAAGZ,KAAKnF,MAAMm6B,aAAap0B,GAAG+8B,cAAgBF,EAAQ,CAClDC,EAAa19B,KAAKnF,MAAMm6B,aAAap0B,GAAG3E,MACxC,MAKX,OAAOyhC,I,wCAKR,IAAIE,EAAc/R,GAAU7rB,KAAKnF,OACjC,GAAGmF,KAAKnF,MAAM2iC,aAAe/8B,MAAMC,QAAQV,KAAKnF,MAAM2iC,cAAgBx9B,KAAKnF,MAAM2iC,YAAY78B,OAAS,EAAG,CACrG,IAAIk9B,EAAqB79B,KAAKnF,MAAM2iC,YAAY,GAAGK,mBAAqB9vB,KAAKyO,MAAMxc,KAAKnF,MAAM2iC,YAAY,GAAGK,oBAAsB,GAGnID,EAAY/J,gBAAgBG,aAAaC,WAAaj0B,KAAKnF,MAAM2iC,YAAY,GAAG9iB,KAChFkjB,EAAY/J,gBAAgBG,aAAaY,wBAA0B50B,KAAKnF,MAAM2iC,YAAY,GAAGM,UAC7FF,EAAY/J,gBAAgBG,aAAaQ,WAAax0B,KAAK+9B,cAAc/9B,KAAKnF,MAAM2iC,YAAY,GAAGtW,aACnG0W,EAAY/J,gBAAgBG,aAAa6D,gBAAkB73B,KAAKnF,MAAM2iC,YAAY,GAAGtW,YAErF,IAAIwW,EAAa19B,KAAKg+B,oBAAoBh+B,KAAKnF,MAAM2iC,YAAY,GAAGS,eACpEL,EAAY/J,gBAAgBkB,cAAgB2I,EAC5CE,EAAY/J,gBAAgBiE,qBAAuB93B,KAAKnF,MAAM2iC,YAAY,GAAGS,cAG7EL,EAAY/J,gBAAgBqB,YAAY9N,cAAgByW,EAAmBK,mBAC3EN,EAAY/J,gBAAgBqB,YAAY6C,aAAe8F,EAAmBM,aAC1EP,EAAY/J,gBAAgBqB,YAAYS,kBAAoB31B,KAAKo+B,aAAaP,EAAmBM,cACjGP,EAAY/J,gBAAgBqB,YAAYgB,cAAgB2H,EAAmBQ,yBAC3ET,EAAY/J,gBAAgBqB,YAAYlV,SAAW6d,EAAmBS,oBACtEV,EAAY/J,gBAAgBqB,YAAYc,QAAU6H,EAAmBU,mBAIrEX,EAAY/J,gBAAgBqB,YAAYkB,gCAAkCyH,EAAmBW,kBAC7FZ,EAAY/J,gBAAgBqB,YAAYmB,6BAA+BwH,EAAmBY,gBAC1Fb,EAAY/J,gBAAgBqB,YAAYoB,+BAAiCuH,EAAmBa,yBAC5Fd,EAAY/J,gBAAgBqB,YAAYqB,+BAAiCsH,EAAmBc,yBAC5Ff,EAAY/J,gBAAgBqB,YAAYsB,+BAAiCqH,EAAmBe,yBAI5FhB,EAAY/J,gBAAgBqB,YAAY2B,2BAA6BgH,EAAmBgB,6BACxFjB,EAAY/J,gBAAgBqB,YAAY4B,kBAAoB+G,EAAmBiB,yBAC/ElB,EAAY/J,gBAAgBqB,YAAY6B,0BAA6B8G,EAAmBkB,yBACxFnB,EAAY/J,gBAAgBqB,YAAY8B,0BAA6B6G,EAAmBmB,yBACxFpB,EAAY/J,gBAAgBqB,YAAY+B,0BAA6B4G,EAAmBoB,yBAIxFrB,EAAY/J,gBAAgBqB,YAAYgC,4BAA8B2G,EAAmBqB,6BACzFtB,EAAY/J,gBAAgBqB,YAAYiC,mBAAqB0G,EAAmBsB,yBAChFvB,EAAY/J,gBAAgBqB,YAAYkC,2BAA6ByG,EAAmBuB,yBACxFxB,EAAY/J,gBAAgBqB,YAAYmC,2BAA6BwG,EAAmBwB,yBACxFzB,EAAY/J,gBAAgBqB,YAAYoC,2BAA6BuG,EAAmByB,yBAGxF1B,EAAY/J,gBAAgBqB,YAAYuB,MAAQoH,EAAmB0B,wBACnE3B,EAAY/J,gBAAgBqB,YAAYwB,MAAQmH,EAAmB2B,wBACnE5B,EAAY/J,gBAAgBqB,YAAYyB,MAAQkH,EAAmB4B,wBACnE7B,EAAY/J,gBAAgBqB,YAAY0B,MAAQiH,EAAmB6B,wBAGnE9B,EAAYjB,WAAY,EACxB38B,KAAK2D,SAAL,eAAkBi6B,O,6CAKH75B,GAEnB,IAAI65B,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OACzC+iC,EAAY/J,gBAAgBG,aAAaC,WAAalwB,EAAMiG,OAAO/N,MACnE+D,KAAK2D,SAASi6B,K,6CAGK75B,GACnB,IAAI65B,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,QACtC+iC,EAAY1f,WACX0f,EAAY1f,SAASkW,cAAgB,IAEkB,KAAxDwJ,EAAY/J,gBAAgBG,aAAaC,YACxC2J,EAAY1f,SAASkW,cAAgB,2BFnUhB,SAAC1Z,EAAMklB,GACpC,IAAIC,GAAoB,EAExB,GAAGD,GAAcn/B,MAAMC,QAAQk/B,IAAeA,EAAWj/B,OAAS,EAC9D,IAAI,IAAIC,EAAE,EAAGA,EAAGg/B,EAAWj/B,OAAQC,IAC/B,GAAGg/B,EAAWh/B,GAAG8Z,MAAQA,GAAQklB,EAAWh/B,GAAG8Z,KAAK7Y,gBAAkB6Y,EAAK7Y,cAAc,CACrFg+B,GAAoB,EACpB,MAKZ,OAAOA,EEyTqBA,CAAkBjC,EAAY/J,gBAAgBG,aAAaC,WAAYj0B,KAAKH,MAAMzE,oBAC9D,WAApB4E,KAAKH,MAAM1E,OAC3ByiC,EAAY1f,SAASkW,cAAgB,8BAI7Cp0B,KAAK2D,SAASi6B,K,0CAmEEpJ,GAChB,IAAIoJ,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OACzC+iC,EAAY/J,gBAAgBG,aAAaQ,WAAaA,EAAW9Z,KACjEkjB,EAAY/J,gBAAgBG,aAAa6D,gBAAkBrD,EAAWv4B,MACtE+D,KAAK2D,SAASi6B,K,yCAICkC,GACf,IAAIlC,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OACzC+iC,EAAY/J,gBAAgBqB,YAAY6C,aAAe+H,EAAU7jC,MACjE2hC,EAAY/J,gBAAgBqB,YAAYS,kBAAoB31B,KAAKo+B,aAAa0B,EAAU7jC,OACxF+D,KAAK2D,SAASi6B,K,4CAId,GAAI59B,KAAKnF,MAAMy5B,oBAAqB,CAMhCt0B,KAAKi2B,aALK,CACNjsB,OAAQ,CACJ0Q,KAAM,UAKlB1a,KAAK2D,UAAS,SAAAyC,GAAS,MAAK,CACxBkuB,qBAAsBluB,EAAUkuB,0B,2CAKpCt0B,KAAK2D,UAAS,SAAAyC,GAAS,MAAK,CACxBqvB,oBAAqBrvB,EAAUqvB,yB,uCAKnCz1B,KAAK2D,UAAS,SAAAyC,GAAS,MAAK,CACxB+uB,gBAAiB/uB,EAAU+uB,qB,sCAK/Bn1B,KAAK2D,UAAS,SAAAyC,GAAS,MAAK,CACxByuB,eAAgBzuB,EAAUyuB,oB,2CAIbkL,GACjB,IAAInC,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OACzC+iC,EAAY/J,gBAAgBqB,YAAY9N,cAAgB2Y,EAAYvK,UACpEx1B,KAAK2D,SAASi6B,K,0CAGEoC,GAChB,IAAIpC,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OACzC+iC,EAAY/J,gBAAgBkB,cAAgBiL,EAAQ/jC,MACpD2hC,EAAY/J,gBAAgBiE,qBAAuBkI,EAAQrC,YAC3DC,EAAY/J,gBAAgBqB,YAAY9N,cAAgB,GACxDpnB,KAAK2D,SAASi6B,K,2CAId,IAAIA,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OACzC+iC,EAAY/J,gBAAgBmH,cAAgB4C,EAAY/J,gBAAgBmH,aACxEh7B,KAAK2D,SAASi6B,K,qCAGd59B,KAAK2D,UAAS,SAAAyC,GAAS,MAAK,CACxB21B,cAAe31B,EAAU21B,mB,mCAGpBN,GACT,IAAImC,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OACzC+iC,EAAY/J,gBAAgB0H,sBAAsBE,OAASA,EAC3Dz7B,KAAK2D,SAASi6B,K,8CAGd59B,KAAK2D,UAAS,SAAAyC,GAAS,MAAK,CACxB61B,uBAAwB71B,EAAU61B,4B,4CAIpBgE,GAClB,IAAIrC,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OACzC+iC,EAAY/J,gBAAgB0H,sBAAsBK,gBAAkBqE,EACpEjgC,KAAK2D,SAASi6B,K,+CAId59B,KAAK2D,UAAS,SAAAyC,GAAS,MAAK,CACxBo2B,wBAAyBp2B,EAAUo2B,6B,6CAIpBvgC,GACnB,IAAI2hC,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OACzC+iC,EAAY/J,gBAAgBqB,YAAY+F,iBAAmBh/B,EAC3D+D,KAAK2D,SAASi6B,K,2CAGGl3B,GACjB,GAAI1G,KAAKnF,MAAMwhC,qBAAsB,CAMjCr8B,KAAKi2B,aALK,CACNjsB,OAAQ,CACJ0Q,KAAM,aAKlB1a,KAAK2D,UAAS,SAAAyC,GAAS,MAAK,CACxBi2B,sBAAuBj2B,EAAUi2B,2B,2CAIpBpgC,GACjB,IAAI2hC,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OACzC+iC,EAAY/J,gBAAgByE,cAActC,QAAU/5B,EACpD+D,KAAK2D,SAASi6B,K,4CAId59B,KAAK2D,UAAS,SAAAyC,GAAS,MAAK,CACxBk2B,qBAAsBl2B,EAAUk2B,0B,0CAIpBrgC,GAChB,IAAI2hC,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OACzC+iC,EAAY/J,gBAAgByE,cAAcwC,cAAgB7+B,EAC1D+D,KAAK2D,SAASi6B,K,yDAGiBl3B,GAC/B,IAAIk3B,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OACzC+iC,EAAY/J,gBAAgBqB,YAAYiG,wBAA0ByC,EAAY/J,gBAAgBqB,YAAYiG,uBAC1Gn7B,KAAK2D,SAASi6B,K,kCAGNl3B,GAAM,IAAD,OACb,QAAyB/E,IAArB+E,EAAIsD,OAAO/N,OACa,KAArByK,EAAIsD,OAAO/N,MAAc,CAC5B,IAAI0tB,EAAWjjB,EAAIsD,OAAO/N,MAC1B+D,KAAK2D,SAAS,CAAE6M,WAAW,IAAQ,YH3mBpB,SAACoZ,EAAWtvB,EAAOuB,EAAaC,GAElB,OAAjCykB,SAA0E5e,IAAjC4e,IACzCA,GAA6B7W,OAAO,+DAIxC,IAAMtK,EAAcpB,IAAM2L,YA6C1B,OA5CA4W,GAA+BnhB,EAAYqE,SAIlB,IAAItH,SACzB,SAAUC,EAASoC,GAEfQ,GADUtC,IAAc,IAAMM,EAAe2W,QAAQ,aAAciW,GAC1DtvB,GAA+D2J,MAAK,SAAAC,GAGzE,GADA5F,QAAQC,IAAI,0CAA2C2F,GACtC,OAAbA,EAAIvF,WACWgD,GAAZuC,EAAIvF,MACe,OAAnBuF,EAAIvF,KAAK1C,YACU0F,IAAnBuC,EAAIvF,KAAK1C,OACTwE,MAAMC,QAAQwD,EAAIvF,KAAK1C,QACvBiI,EAAIvF,KAAK1C,MAAM0E,OAAS,EAAG,CAC9B,IAAIkpB,EAAc3lB,EAAIvF,KAAK1C,MAAM,GACN,OAAvB4tB,EAAYjrB,aACc+C,IAAvBkoB,EAAYjrB,QACgB,OAA5BirB,EAAYjrB,OAAOkrB,WACSnoB,IAA5BkoB,EAAYjrB,OAAOkrB,MACS,WAA5BD,EAAYjrB,OAAOkrB,KACtB1tB,EAAQ8H,EAAIvF,KAAK1C,MAAM,IAEvBuC,EAAOuJ,SAIXzJ,QAAQC,IAAI,+DACZC,EAAOuJ,OAIV8B,OAAM,SAACxL,GACAL,IAAMU,WACNJ,QAAQC,IAAIF,IAGZC,QAAQD,MAAM,qDAAsDA,GACpEG,EAAOuJ,YG6jBfgiB,CAAYJ,EAAU,EAAK0Q,UAAW,EAAKC,YAAa,EAAKC,aACxDt2B,MAAK,SAAAtF,GACF,GAAwB,OAApBA,EAAKqrB,iBACkBroB,IAApBhD,EAAKqrB,YACLvpB,MAAMC,QAAQ/B,EAAKqrB,aACnBrrB,EAAKqrB,WAAWrpB,OAAS,EAAG,CAC/B,IAAIspB,EAAW,GADgB,uBAE/B,YAAgBtrB,EAAKqrB,WAArB,+CAAiC,CAAC,IAAzBE,EAAwB,QAC7B,GAAqB,OAAjBA,EAAIC,eAAsCxoB,IAAjBuoB,EAAIC,UAA0BD,EAAIC,WAAaR,EAAU,CAClF,GAAqB,OAAjBO,EAAIE,eAAsCzoB,IAAjBuoB,EAAIE,SAAwB,CACrDH,EAAWC,EAAIE,SACf,IAAIwT,EAAct8B,OAAOq+B,OAAO,GAAI,EAAK9kC,OACzC+iC,EAAY/J,gBAAgBqB,YAAYlV,SAAWkK,EAAIE,SACvDwT,EAAYxF,0BAA0BlD,YAAYgB,eAAgB,EAClE0H,EAAY1f,SAASiY,cAAgB,GACrC,EAAKxyB,SAASi6B,GAElB,QAZuB,kFAiB/B,GAAiB,KAAb3T,EAAiB,CACjB,IAAI2T,EAAct8B,OAAOq+B,OAAO,GAAI,EAAK9kC,OACzC+iC,EAAY1f,SAASiY,cAAgB,0CACrCyH,EAAY/J,gBAAgBqB,YAAYlV,SAAW,GACnD,EAAKrc,SAASi6B,QAEf,CACH,IAAIA,EAAct8B,OAAOq+B,OAAO,GAAI,EAAK9kC,OACzC+iC,EAAY1f,SAASiY,cAAgB,0CACrCyH,EAAY/J,gBAAgBqB,YAAYlV,SAAW,GACnD,EAAKrc,SAASi6B,OAGrB/zB,OAAM,SAAAxL,GAEH,IAAIu/B,EAAct8B,OAAOq+B,OAAO,GAAI,EAAK9kC,OACzC+iC,EAAY1f,SAASiY,cAAgB,0CACrCyH,EAAY/J,gBAAgBqB,YAAYlV,SAAW,GACnD,EAAKrc,SAASi6B,aAGxB,CACF,IAAIA,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OACzC+iC,EAAY1f,SAASiY,cAAgB,8BACrCyH,EAAY/J,gBAAgBqB,YAAYlV,SAAW,GACnDhgB,KAAK2D,SAASi6B,M,qCAGPrqB,GACX,IAAI2sB,GAAc,EAOlB,MANY,MAAR3sB,IAEI2sB,GADAlgC,KAAKnF,MAAMu9B,0BAA0BpE,aAAaC,aAAcj0B,KAAKnF,MAAMu9B,0BAA0BpE,aAAaQ,YAKnH0L,I,uCAKP,OAFanyB,KAAKC,UAAUhO,KAAKnF,MAAMu9B,2BACtBzd,OAAO,WACb,I,6BAOP,IAAD,OAEH,GAAI3a,KAAKnF,MAAMg5B,iBAAmB7zB,KAAKnF,MAAMg5B,gBAAgBC,kBACzD,OAAQ9zB,KAAKnF,MAAMg5B,gBAAgBC,mBAC/B,IAAK,QACa2D,GAAkCz3B,KAAKnF,MAAMg5B,gBAAiB,QAAS7zB,KAAKH,MAAM1E,KAAM6E,KAAKH,MAAMvE,eAAgB0E,KAAKH,MAAM3E,iBAC5I,MAEJ,IAAK,MACau8B,GAAkCz3B,KAAKnF,MAAMg5B,gBAAiB,MAAO7zB,KAAKH,MAAM1E,KAAM6E,KAAKH,MAAMvE,eAAgB0E,KAAKH,MAAM3E,iBAC1I,MAEJ,IAAK,QjBxhBuC,SAACilC,EAAwC7lC,EAAOuB,GAGzC,OAA3D2mB,SAA8H7gB,IAA3D6gB,IAEnEA,GAAuD9Y,OAAO,8FAIlE,IAAMtK,EAAcpB,IAAM2L,YAqB1B,OApBA6Y,GAAyDpjB,EAAYqE,SAElB,IAAItH,SACnD,SAAUC,EAASoC,GAEfa,GAD4C,UAAM3C,IAAN,Y3C1KA,6D2C2KGyjC,EAAwC7lC,GAA4E2J,MAAK,SAAAC,GAEpK5F,QAAQC,IAAI,mEAAoE2F,GAChF9H,EAAQ8H,MAEP2F,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,oEAAqEF,GACjFG,EAAOuJ,YiBggBXq4B,CADc3I,GAAkCz3B,KAAKnF,MAAMg5B,gBAAiB,OAAQ7zB,KAAKH,MAAM1E,KAAM6E,KAAKH,MAAMvE,eAAgB0E,KAAKH,MAAM3E,iBACrF8E,KAAKq6B,UAAWr6B,KAAKs6B,aACtEr2B,MAAK,SAAAtF,GACEA,GAAQA,EAAKA,KAAK0hC,YAAuC,WAAzB1hC,EAAKA,KAAK0hC,YAC1CvhC,KAAQyS,KAAK,6BACT,EAAK1R,MAAMsE,SACV,EAAKtE,MAAMsE,QAAQzB,KAAnB,mBAAoC,EAAK7C,MAAMvE,eAAeiR,UAGnEzN,KAAQT,MAAM,4CACdC,QAAQD,MAAMM,OAGrBkL,OAAM,SAAAxL,GACHS,KAAQT,MAAM,qCACdC,QAAQD,MAAMA,MAElB,MAER,IAAK,SACao5B,GAAkCz3B,KAAKnF,MAAMg5B,gBAAiB,a,kCAkGxF7zB,KAAK2D,SAAS,CAAEkwB,gBApFM,CAClBG,aAAc,CACVC,WAAY,GACZO,WAAY,GACZqD,gBAAiB,GACjBQ,oBAAqB,GACrBzD,wBAAyB,IAE7B0D,cAAe,CACXtC,QAAS,GACTyE,aAAc,GACdC,aAAc,GACdC,aAAc,GACdC,aAAc,GACdC,KAAM,GACNC,cAAe,GACfC,cAAe,IAEnBxC,mBAAoB,GACpBzE,kBAAmB,OACnBiB,cAAe,GACf+C,qBAAsB,GACtBkD,cAAc,EACd9F,YAAa,CACTyC,UAAW,GACXc,yBAA0B,GAC1BC,MAAO,GACPC,IAAK,GACLsC,iBAAkB,GAClBC,gBAAiB,GACjBlb,SAAU,GACVoH,cAAe,GACf8O,cAAe,GACfsC,YAAa,GACb/B,MAAO,GACPC,MAAO,GACPC,MAAO,GACPC,MAAO,GACPuE,wBAAwB,EACxBC,4BAA6B,GAC7BvE,2BAA4B,GAC5BC,kBAAmB,GACnBC,0BAA2B,GAC3BC,0BAA2B,GAC3BC,0BAA2B,GAC3BjB,QAAS,KACT+B,cAAc,EACdpC,kBAAoB,IAExB0F,SAAU,CACN9d,UAAW,GACXC,SAAU,IAEd8d,kBAAmB,GACnBC,sBAAuB,CACnBC,MAAO,GACPC,OAAQ,GACRC,YAAa,GACbC,aAAc,GACdC,gBAAiB,GACjBC,aAAc,GACdC,YAAa,KAuB6B1D,0BAnBlB,CAC5BpE,aAAc,CACVC,YAAY,EACZO,YAAY,EACZ6D,qBAAqB,GAEzBC,cAAe,CACXtC,SAAS,GAEbuC,oBAAoB,EACpBrD,YAAa,CACTuD,0BAA0B,EAC1BC,OAAO,EACPC,KAAK,EACLzC,eAAe,EACfsC,aAAa,Q,+BAOrBx4B,KAAKw5B,YAELx5B,KAAK2D,SAAS,CACV28B,kBAAkB,EAAMpiB,SAFb,O,yCAKAxX,GACf,IAAM65B,EAAgB,qFAClBx4B,EAAW,GACS,UAApBrB,EAAIsD,OAAO0Q,MAA0C,KAArBhU,EAAIsD,OAAO/N,OAAiBskC,EAAcC,KAAK95B,EAAIsD,OAAO/N,OAE/D,QAApByK,EAAIsD,OAAO0Q,MAAwC,KAArBhU,EAAIsD,OAAO/N,OAAiBskC,EAAcC,KAAK95B,EAAIsD,OAAO/N,SAC/F8L,EAAW,uBAFXA,EAAW,wBAIf/H,KAAK2D,SAAS,CAAEoE,SAAUA,M,uCAEbrB,GACb,IAAM+5B,EAAc,wHAChB14B,EAAW,GACS,6BAApBrB,EAAIsD,OAAO0Q,MAA6D,KAArBhU,EAAIsD,OAAO/N,OAAiBwkC,EAAYD,KAAK95B,EAAIsD,OAAO/N,OAGlF,wBAApByK,EAAIsD,OAAO0Q,MAAwD,KAArBhU,EAAIsD,OAAO/N,OAAiBwkC,EAAYD,KAAK95B,EAAIsD,OAAO/N,SAC3G8L,EAAW,8CAHXA,EAAW,kDAKf/H,KAAK2D,SAAS,CAAEoE,SAAUA,M,mCAEjBrB,GACT,IAAIk3B,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OAGrCkN,EAAW,GAEQ,SAApBrB,EAAIsD,OAAO0Q,MACV3S,EAAW,2BACX61B,EAAY1f,SAASyW,cAAgB,GACsB,KAAvD30B,KAAKnF,MAAMg5B,gBAAgBG,aAAaQ,aACxCoJ,EAAY1f,SAASyW,cAAgB5sB,IAEb,uBAApBrB,EAAIsD,OAAO0Q,OACnB3S,EAAW,uBACX61B,EAAY1f,SAAS4X,WAAa,GACsB,KAApD8H,EAAY/J,gBAAgBqB,YAAYc,UACxC4H,EAAY1f,SAAS4X,WAAa/tB,IAG1C/H,KAAK2D,SAASi6B,K,wCAGAl3B,GACd,IACMyB,EAAqB,kBACrBC,EAAoB,mBACpBq4B,EAAc,sBACdC,EAAY,aACZH,EAAgB,mBAChBI,EAAe,WAEjB/C,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OAEjB,eAApB6L,EAAIsD,OAAO0Q,MAAyBhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACpI2hC,EAAY/J,gBAAgBG,aAAaC,WAAavtB,EAAIsD,OAAO/N,MAExC,wBAApByK,EAAIsD,OAAO0Q,MAAkChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBwkC,EAAYD,KAAK95B,EAAIsD,OAAO/N,QAC3I2hC,EAAY/J,gBAAgBG,aAAaqE,oBAAsB3xB,EAAIsD,OAAO/N,MAEjD,4BAApByK,EAAIsD,OAAO0Q,MAAsChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBmM,EAAkBo4B,KAAK95B,EAAIsD,OAAO/N,QACrJ2hC,EAAY/J,gBAAgBG,aAAaY,wBAA0BluB,EAAIsD,OAAO/N,MAErD,kBAApByK,EAAIsD,OAAO0Q,MAA4BhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBykC,EAAUF,KAAK95B,EAAIsD,OAAO/N,QACnI2hC,EAAY/J,gBAAgBG,aAAawG,cAAgB9zB,EAAIsD,OAAO/N,MAE3C,YAApByK,EAAIsD,OAAO0Q,MAAsBhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACtI2hC,EAAY/J,gBAAgByE,cAActC,QAAUtvB,EAAIsD,OAAO/N,MAEtC,iBAApByK,EAAIsD,OAAO0Q,MAA2BhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,SAC3I2hC,EAAY/J,gBAAgByE,cAAcmC,aAAe/zB,EAAIsD,OAAO/N,MACpE2hC,EAAY/J,gBAAgBqB,YAAYoB,+BAAiC5vB,EAAIsD,OAAO/N,OAE3D,iBAApByK,EAAIsD,OAAO0Q,MAA2BhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,SAC3I2hC,EAAY/J,gBAAgByE,cAAcoC,aAAeh0B,EAAIsD,OAAO/N,MACpE2hC,EAAY/J,gBAAgBqB,YAAYqB,+BAAiC7vB,EAAIsD,OAAO/N,OAE3D,iBAApByK,EAAIsD,OAAO0Q,MAA2BhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,SAC3I2hC,EAAY/J,gBAAgByE,cAAcqC,aAAej0B,EAAIsD,OAAO/N,MACpE2hC,EAAY/J,gBAAgBqB,YAAYsB,+BAAiC9vB,EAAIsD,OAAO/N,OAE3D,iBAApByK,EAAIsD,OAAO0Q,MAA2BhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QAC3I2hC,EAAY/J,gBAAgByE,cAAcsC,aAAel0B,EAAIsD,OAAO/N,MAE3C,SAApByK,EAAIsD,OAAO0Q,MAAmBhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACnI2hC,EAAY/J,gBAAgByE,cAAcuC,KAAOn0B,EAAIsD,OAAO/N,MAEnC,kBAApByK,EAAIsD,OAAO0Q,MAA4BhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QAC5I2hC,EAAY/J,gBAAgByE,cAAcwC,cAAgBp0B,EAAIsD,OAAO/N,MAE5C,kBAApByK,EAAIsD,OAAO0Q,MAA4BhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBykC,EAAUF,KAAK95B,EAAIsD,OAAO/N,QACnI2hC,EAAY/J,gBAAgByE,cAAcyC,cAAgBr0B,EAAIsD,OAAO/N,MAE5C,uBAApByK,EAAIsD,OAAO0Q,MAAiChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACjJ2hC,EAAY/J,gBAAgB0E,mBAAqB7xB,EAAIsD,OAAO/N,MAEnC,sBAApByK,EAAIsD,OAAO0Q,KAChBkjB,EAAY/J,gBAAgBC,kBAAoBptB,EAAIsD,OAAO/N,MAElC,cAApByK,EAAIsD,OAAO0Q,MAAwBhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACxI2hC,EAAY/J,gBAAgBqB,YAAYyC,UAAYjxB,EAAIsD,OAAO/N,MAEtC,6BAApByK,EAAIsD,OAAO0Q,MAAuChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBwkC,EAAYD,KAAK95B,EAAIsD,OAAO/N,QAChJ2hC,EAAY/J,gBAAgBqB,YAAYuD,yBAA2B/xB,EAAIsD,OAAO/N,MAErD,UAApByK,EAAIsD,OAAO0Q,MAA0C,KAArBhU,EAAIsD,OAAO/N,QAAgBskC,EAAcC,KAAK95B,EAAIsD,OAAO/N,OAGrE,QAApByK,EAAIsD,OAAO0Q,MAAwC,KAArBhU,EAAIsD,OAAO/N,QAAgBskC,EAAcC,KAAK95B,EAAIsD,OAAO/N,OAGnE,oBAApByK,EAAIsD,OAAO0Q,MAA8BhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QAC9I2hC,EAAY/J,gBAAgBqB,YAAYgG,gBAAkBx0B,EAAIsD,OAAO/N,MAE5C,kBAApByK,EAAIsD,OAAO0Q,MAA4BhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgB0kC,EAAaH,KAAK95B,EAAIsD,OAAO/N,QACtI2hC,EAAY/J,gBAAgBqB,YAAYgB,cAAgBxvB,EAAIsD,OAAO/N,MAE1C,kBAApByK,EAAIsD,OAAO0Q,MAA4BhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QAC5I2hC,EAAY/J,gBAAgBqB,YAAY9N,cAAgB1gB,EAAIsD,OAAO/N,MAE1C,gBAApByK,EAAIsD,OAAO0Q,MAA0BhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QAC1I2hC,EAAY/J,gBAAgBqB,YAAYsD,YAAc9xB,EAAIsD,OAAO/N,MAExC,UAApByK,EAAIsD,OAAO0Q,MAAoBhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACpI2hC,EAAY/J,gBAAgBqB,YAAYuB,MAAQ/vB,EAAIsD,OAAO/N,MAElC,UAApByK,EAAIsD,OAAO0Q,MAAoBhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACpI2hC,EAAY/J,gBAAgBqB,YAAYwB,MAAQhwB,EAAIsD,OAAO/N,MAElC,UAApByK,EAAIsD,OAAO0Q,MAAoBhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACpI2hC,EAAY/J,gBAAgBqB,YAAYyB,MAAQjwB,EAAIsD,OAAO/N,MAElC,UAApByK,EAAIsD,OAAO0Q,MAAoBhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACpI2hC,EAAY/J,gBAAgBqB,YAAY0B,MAAQlwB,EAAIsD,OAAO/N,MAElC,gCAApByK,EAAIsD,OAAO0Q,MAA0ChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QAC1J2hC,EAAY/J,gBAAgBqB,YAAYkG,4BAA8B10B,EAAIsD,OAAO/N,MAExD,+BAApByK,EAAIsD,OAAO0Q,MAAyChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACzJ2hC,EAAY/J,gBAAgBqB,YAAY2B,2BAA6BnwB,EAAIsD,OAAO/N,MAEvD,sBAApByK,EAAIsD,OAAO0Q,MAAgChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QAChJ2hC,EAAY/J,gBAAgBqB,YAAY4B,kBAAoBpwB,EAAIsD,OAAO/N,MAE9C,8BAApByK,EAAIsD,OAAO0Q,MAAwChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACxJ2hC,EAAY/J,gBAAgBqB,YAAY6B,0BAA4BrwB,EAAIsD,OAAO/N,MAEtD,8BAApByK,EAAIsD,OAAO0Q,MAAwChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACxJ2hC,EAAY/J,gBAAgBqB,YAAY8B,0BAA4BtwB,EAAIsD,OAAO/N,MAEtD,8BAApByK,EAAIsD,OAAO0Q,MAAwChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACxJ2hC,EAAY/J,gBAAgBqB,YAAY+B,0BAA4BvwB,EAAIsD,OAAO/N,MAEtD,cAApByK,EAAIsD,OAAO0Q,MAAwBhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACxI2hC,EAAY/J,gBAAgBwH,SAAS9d,UAAY7W,EAAIsD,OAAO/N,MAEnC,aAApByK,EAAIsD,OAAO0Q,MAAuBhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACvI2hC,EAAY/J,gBAAgBwH,SAAS7d,SAAW9W,EAAIsD,OAAO/N,MAElC,sBAApByK,EAAIsD,OAAO0Q,MAAgChU,EAAIsD,OAAO/N,MAAM0E,QAAU,MAA6B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACjJ2hC,EAAY/J,gBAAgByH,kBAAoB50B,EAAIsD,OAAO/N,MAElC,UAApByK,EAAIsD,OAAO0Q,MAAoBhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACpI2hC,EAAY/J,gBAAgB0H,sBAAsBC,MAAQ90B,EAAIsD,OAAO/N,MAE5C,WAApByK,EAAIsD,OAAO0Q,MAAqBhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACrI2hC,EAAY/J,gBAAgB0H,sBAAsBE,OAAS/0B,EAAIsD,OAAO/N,MAE7C,gBAApByK,EAAIsD,OAAO0Q,MAA0BhU,EAAIsD,OAAO/N,MAAM0E,QAAU,IAA2B,KAArB+F,EAAIsD,OAAO/N,OAAgB0kC,EAAaH,KAAK95B,EAAIsD,OAAO/N,QACnI2hC,EAAY/J,gBAAgB0H,sBAAsBG,YAAch1B,EAAIsD,OAAO/N,MAElD,iBAApByK,EAAIsD,OAAO0Q,MAA2BhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QAC3I2hC,EAAY/J,gBAAgB0H,sBAAsBI,aAAej1B,EAAIsD,OAAO/N,MAEnD,oBAApByK,EAAIsD,OAAO0Q,MAA8BhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QAC9I2hC,EAAY/J,gBAAgB0H,sBAAsBK,gBAAkBl1B,EAAIsD,OAAO/N,MAEtD,iBAApByK,EAAIsD,OAAO0Q,MAA2BhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QAC3I2hC,EAAY/J,gBAAgB0H,sBAAsBM,aAAen1B,EAAIsD,OAAO/N,MAEnD,gBAApByK,EAAIsD,OAAO0Q,MAA0BhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QAC1I2hC,EAAY/J,gBAAgB0H,sBAAsBO,YAAcp1B,EAAIsD,OAAO/N,MAElD,iCAApByK,EAAIsD,OAAO0Q,MAA2ChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QAC3J2hC,EAAY/J,gBAAgBqB,YAAYmB,6BAA+B3vB,EAAIsD,OAAO/N,MAEzD,oCAApByK,EAAIsD,OAAO0Q,MAA8ChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBmM,EAAkBo4B,KAAK95B,EAAIsD,OAAO/N,QAC7J2hC,EAAY/J,gBAAgBqB,YAAYkB,gCAAkC1vB,EAAIsD,OAAO/N,MAE5D,mCAApByK,EAAIsD,OAAO0Q,MAA6ChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBmM,EAAkBo4B,KAAK95B,EAAIsD,OAAO/N,QAC5J2hC,EAAY/J,gBAAgBqB,YAAYoB,+BAAiC5vB,EAAIsD,OAAO/N,MAE3D,mCAApByK,EAAIsD,OAAO0Q,MAA6ChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBmM,EAAkBo4B,KAAK95B,EAAIsD,OAAO/N,QAC5J2hC,EAAY/J,gBAAgBqB,YAAYqB,+BAAiC7vB,EAAIsD,OAAO/N,MAE3D,mCAApByK,EAAIsD,OAAO0Q,MAA6ChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBmM,EAAkBo4B,KAAK95B,EAAIsD,OAAO/N,QAC5J2hC,EAAY/J,gBAAgBqB,YAAYsB,+BAAiC9vB,EAAIsD,OAAO/N,MAE3D,gCAApByK,EAAIsD,OAAO0Q,MAA0ChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QAC1J2hC,EAAY/J,gBAAgBqB,YAAYgC,4BAA8BxwB,EAAIsD,OAAO/N,MAExD,uBAApByK,EAAIsD,OAAO0Q,MAAiChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACjJ2hC,EAAY/J,gBAAgBqB,YAAYiC,mBAAqBzwB,EAAIsD,OAAO/N,MAE/C,+BAApByK,EAAIsD,OAAO0Q,MAAyChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACzJ2hC,EAAY/J,gBAAgBqB,YAAYkC,2BAA6B1wB,EAAIsD,OAAO/N,MAEvD,+BAApByK,EAAIsD,OAAO0Q,MAAyChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACzJ2hC,EAAY/J,gBAAgBqB,YAAYmC,2BAA6B3wB,EAAIsD,OAAO/N,MAEvD,+BAApByK,EAAIsD,OAAO0Q,MAAyChU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBkM,EAAmBq4B,KAAK95B,EAAIsD,OAAO/N,QACzJ2hC,EAAY/J,gBAAgBqB,YAAYoC,2BAA6B5wB,EAAIsD,OAAO/N,MAExD,uBAApByK,EAAIsD,OAAO0Q,OACfkjB,EAAY/J,gBAAgBqB,YAAYc,QAAUtvB,EAAIsD,OAAO/N,OAzG7D2hC,EAAY/J,gBAAgBqB,YAAYyD,IAAMjyB,EAAIsD,OAAO/N,MAHzD2hC,EAAY/J,gBAAgBqB,YAAYwD,MAAQhyB,EAAIsD,OAAO/N,MA8G/D+D,KAAK2D,SAASi6B,K,sCAGD,IAAD,OACZ59B,KAAK2D,UAAS,iBAAO,CAAEg5B,WAAW,EAAMC,eAAe,MjBh/B/B,WAGO,OAA/Bta,SAAsE3gB,IAA/B2gB,IAEvCA,GAA2B5Y,OAAO,8DAItC,IAAMtK,EAAcpB,IAAM2L,YAqB1B,OApBA2Y,GAA6BljB,EAAYqE,SAElB,IAAItH,SACvB,SAAUC,EAASoC,GAEfa,GADmB3C,IAAe,mCACf,GAAI4lB,IAA4Bre,MAAK,SAAAC,GAEpD5F,QAAQC,IAAI,mCAAoC2F,GAChD9H,EAAQ8H,MAEP2F,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,oCAAqCF,GAChDG,EAAOuJ,WiBu9BxB64B,GACK38B,MAAK,SAAAtF,GACF,IAAI49B,EAAa,GACbG,EAAgB,GACpB,GAAkB,OAAd/9B,EAAKA,WAA6CgD,IAA5BhD,EAAKA,KAAKkW,eAA2D,OAA5BlW,EAAKA,KAAKkW,eAA0BpU,MAAMC,QAAQ/B,EAAKA,KAAKkW,gBAAmBlW,EAAKA,KAAKkW,cAAclU,OAAS,EAAI,CACnL47B,EAAa59B,EAAKA,KAAKkW,cAD4J,2BAEnL,YAA8B0nB,EAAWsE,UAAzC,+CAAoD,CAAC,IAAD,0BAAjCpF,GAAiC,WAChDiB,EAAch6B,KAAK+4B,EAAOqF,cAHqJ,mFAOvL,EAAKn9B,SAAS,CAAE44B,WAAYA,EAAYG,cAAeA,EAAeC,WAAW,OAEpF9yB,OAAM,SAAAxL,GACH,EAAKsF,UAAS,iBAAO,CAAEi5B,eAAe,EAAMv+B,MAAOA,EAAMS,iB,4CAI9C,IAAD,OAClBkB,KAAK2D,UAAS,iBAAO,CAAEg5B,WAAW,EAAMC,eAAe,MjBz6BzB,SAAC3gC,EAAO3B,EAAOuB,EAAaC,GAGrB,OAArCymB,SAAkF5gB,IAArC4gB,IAE7CA,GAAiC7Y,OAAO,qEAI5C,IAAMtK,EAAcpB,IAAM2L,YAsB1B,OArBA4Y,GAAmCnjB,EAAYqE,SAElB,IAAItH,SAC7B,SAAUC,EAASoC,GAGfQ,GAFyBtC,IAAe,wCAA+CT,EAAQ,KAEvE3B,GAAmE2J,MAAK,SAAAC,GAE5F5F,QAAQC,IAAI,0CAA2C2F,GACvD9H,EAAQ8H,MAEP2F,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,2CAA4CF,GACxDG,EAAOuJ,WiB+4BvBg5B,CAAuB,UAAW/gC,KAAKq6B,UAAWr6B,KAAKs6B,YAAat6B,KAAKu6B,aACpEt2B,MAAK,SAAAtF,GACF,IAAIm+B,EAAc,GAEA,OAAdn+B,EAAKA,WAA6CgD,IAA5BhD,EAAKA,KAAKkW,eAA2D,OAA5BlW,EAAKA,KAAKkW,eAA0BpU,MAAMC,QAAQ/B,EAAKA,KAAKkW,gBAAmBlW,EAAKA,KAAKkW,cAAclU,OAAS,IAC/Km8B,EAAcn+B,EAAKA,KAAKkW,eAI5B,EAAKlR,SAAS,CAAEm5B,YAAaA,OAEhCjzB,OAAM,SAAAxL,GACH,EAAKsF,UAAS,iBAAO,CAAEi5B,eAAe,EAAMv+B,MAAOA,EAAMS,iB,+BAKjE,OACIkB,KAAKnF,MAAM+hC,cACP,yBAAK18B,UAAU,eAAe8H,IAC5BhI,KAAKnF,MAAM8hC,UACT,yBAAKz8B,UAAU,eAAf,gCAA4D,kBAACyR,GAAA,EAAD,CAASzB,UAAU,OAAOZ,KAAK,KAAKa,QAAQ,UACpG,kBAACujB,GAAD,CACA74B,MAAOmF,KAAKnF,MACZuJ,OAAQpE,KAAKoE,OACbsF,OAAQ1J,KAAK0J,OACb6U,kBAAmBve,KAAKue,kBACxB0X,aAAcj2B,KAAKi2B,aACnBrX,KAAM5e,KAAK4e,KACX2V,oBAAqBv0B,KAAKu0B,oBAC1BG,oBAAqB10B,KAAK00B,oBAC1BqE,mBAAoB/4B,KAAK+4B,mBACzBC,mBAAoBh5B,KAAKg5B,mBACzBC,iBAAkBj5B,KAAKi5B,iBACvBC,aAAcl5B,KAAKk5B,aACnBC,aAAcn5B,KAAKm5B,aACnBC,sBAAuBp5B,KAAKo5B,sBAC5BC,sBAAuBr5B,KAAKq5B,sBAC5BC,eAAgBt5B,KAAKs5B,eACrBC,eAAgBv5B,KAAKu5B,eACrBG,uBAAwB15B,KAAK05B,uBAC7BC,uBAAwB35B,KAAK25B,uBAC7B5a,YAAa/e,KAAK+e,YAClB6a,mCAAoC55B,KAAK45B,mCACzCzF,uBAAwBn0B,KAAKm0B,uBAC7BJ,uBAAwB/zB,KAAK+zB,uBAE7B+F,qBAAsB95B,KAAK85B,qBAC3BE,qBAAsBh6B,KAAKg6B,qBAC3BD,oBAAqB/5B,KAAK+5B,oBAC1BE,oBAAqBj6B,KAAKi6B,oBAC1B9+B,KAAM6E,KAAKH,MAAM1E,KACjBG,eAAgB0E,KAAKH,MAAMvE,eAC3Bq4B,gBAAiB3zB,KAAK2zB,gBACtBkC,mBAAoB71B,KAAK61B,mBACzBH,mBAAoB11B,KAAK01B,mBACzBN,eAAgBp1B,KAAKo1B,eACrBG,qBAAsBv1B,KAAKu1B,qBAC3BT,cAAiB90B,KAAK80B,cACtBG,oBAAuBj1B,KAAKi1B,0B,GAtmC3B50B,aAsnCnB+G,GAAqB,CACvB6wB,yBAGW3wB,gBAbS,SAAA3K,GACpB,MAAO,CACHzB,gBAAiByB,EAAMqkC,QAAQ9lC,gBAC/BI,eAAgBqB,EAAMskC,UAAU3lC,eAChCH,KAAMwB,EAAMqkC,QAAQ7lC,KACpBC,kBAAmBuB,EAAMqkC,QAAQ5lC,qBAQDgM,GAAzBE,CAA6C4wB,ICroCrD,SAASgJ,GAAgBC,EAAqBxW,EAAayW,GAkG9D,MAjGe,CAEX,CACI72B,UAAW,OACXC,KAAM,cACNC,cAAe,gCACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEzD,CACI6B,UAAW,QACXC,KAAM,eACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OACI,6BAEOkC,KAMnB,CACIR,UAAW,cACXC,KAAM,OACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEzD,CACI6B,UAAW,eACXC,KAAM,QACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEzD,CACI6B,UAAW,aACXC,KAAM,MACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEzD,CACI6B,UAAW,WACXC,KAAM,SACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OACI,6BAyCb,SAAyBkC,GAC5B,MAAY,MAATA,EACQ,SACM,MAATA,EACG,YAEA,GA9CUs2B,CAAgBt2B,MAKjC,CACIR,UAAW,YACXC,KAAM,iBACNC,cAAe,aACfE,YAAa,QACbD,QAAS,iCACTE,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEzD,CACI6B,UAAW,GACXC,KAAM,GACNI,MAAM,EACNK,cAAc,EACdN,YAAa,QACbD,QAAS,wBACTI,UAAW,SAACC,EAAMlC,GACd,OACI,yBAAK5I,MAAM,QAAQkC,MAAO,CAACyD,QAAS,SAChC,4BAAQ7K,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAMo7B,EAAoBt4B,KAArF,0BACA,4BAAQ9N,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAMq7B,EAAqBv4B,KAAtF,kBAKZ8J,OAAQ,KAmBpB,SAASnK,GAAgBC,EAAOC,GAC5B,OAAKD,EACc,QAAVA,EAAyB,0BAAMvI,UAAU,6BAC/B,SAAVuI,EAA0B,0BAAMvI,UAAU,2BAC5C,KAHa,0BAAMA,UAAU,wBC1GjC,SAASohC,GACZzhC,GA6EA,OA1EI,6BAEI,yBAAKK,UAAU,aACX,yBAAKA,UAAU,OACX,yBAAKA,UAAU,yDAAf,YAIJ,yBAAKA,UAAU,OACX,yBAAKA,UAAU,aAIf,yBAAKA,UAAU,0CAA0CD,MAAM,SAC3D,4BAAQlF,KAAK,SAASof,MAAM,yCAAyCpU,QAASlG,EAAM0hC,WAApF,cACA,4BAAQxmC,KAAK,SAASof,MAAM,mBAAmBpU,QAAS,kBAAMlG,EAAM8zB,oBAApE,UAIR,yBAAKzzB,UAAU,OACX,yBAAKA,UAAU,kBACX,kBAAC8U,GAAA,EAAD,CAAOuK,IAAI,OAAOrf,UAAU,2BAA5B,gBACA,kBAAC8U,GAAA,EAAD,CAAOuK,IAAI,QAAQ1f,EAAMvE,gBAAkBuE,EAAMvE,eAAeof,KAAO7a,EAAMvE,eAAeof,KAAO,KAEvG,yBAAKxa,UAAU,iBACf,kBAACoa,GAAA,EAAD,KACI,kBAACC,GAAA,EAAD,CAAWC,UAAU,mBAEjB,2BACIzf,KAAK,OACL0f,aAAa,MACbvQ,YAAY,SACZwQ,KAAK,aACLxa,UAAU,mBACVjE,MAAO4D,EAAMhF,MAAM0V,WACnBpG,SAAUtK,EAAM8a,aAM/B9a,GAASA,EAAMhF,MACZ,yBAAK2K,GAAG,oBAAoBtF,UAAU,yBAClC,kBAAC,KAAD,CACImK,SAAS,KACT1L,KAAMkB,EAAMhF,MAAM0hC,WAClBjyB,QAAS42B,GAAgBrhC,EAAMshC,oBAAqBthC,EAAM8qB,YAAa9qB,EAAMuhC,sBAC7E32B,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRS,WAAW,mDACXC,iBAAkBtD,GAClB05B,UACI,CACIz7B,QAAS,SAAC9C,EAAG4F,EAAK44B,GACO,WAAlBx+B,EAAE+G,OAAOjP,MACT8E,EAAMuhC,qBAAqBv4B,QAOhD,yBAAK1D,IAAI,gBAAgB2C,KAKnC,kBAAC,GAAD,CACIyrB,uBAAwB1zB,EAAMhF,MAAM04B,uBACpCz0B,QAASe,EAAMhF,MAAM08B,mBC5E9B,IAAImK,GAAoC,KCF1BC,G,YAEjB,WAAY9hC,GAAO,IAAD,8BACd,4CAAMA,KACD+hC,YAAc,EAAKA,YAAYv9B,KAAjB,gBAFL,E,6GAWlB,OACI,6BACQ,kBAAC6K,GAAA,EAAD,CACI1K,OAAQxE,KAAKH,MAAMgiC,mBACnBz9B,OAAQpE,KAAKH,MAAMiiC,0BACnBzyB,UAAU,EACV0yB,SAAU/hC,KAAK4hC,YAEfv8B,OAAO,OACPnF,UAAU,eACVqP,cAAc,uBACdC,eAAe,qBACfC,iBAAiB,uBACjBC,UAAQ,GACR,kBAACC,GAAA,EAAD,CAAavL,OAAQpE,KAAKH,MAAMmiC,0BAA2BpyB,SAAS,MACpE,kBAACC,GAAA,EAAD,KAEQ,oCACI,+DAGA,gCAMZ,kBAACqS,GAAA,EAAD,KAEQ,oCACI,kBAACuR,GAAA,EAAD,CAAQ/hB,MAAM,2BAA2B3L,QAAS/F,KAAKH,MAAMoiC,cAA7D,iBACA,kBAACxO,GAAA,EAAD,CAAQ/hB,MAAM,yBAAyB3L,QAAS/F,KAAKH,MAAMqiC,sBAA3D,gC,GA5CW9hC,IAAM+G,eCUpCg7B,GAAb,YACI,WAAYtiC,GAAQ,IAAD,8BACf,4CAAMA,KAmBVkb,kBAAoB,WAGM,KAAnB,EAAKuiB,SAEJ,EAAK35B,SAAS,CAAC4vB,wBAAwB,EAAMgE,gBzDnC5B,mEyDqCjB,EAAK6K,mBA3BM,EAgEnBznB,OAAS,SAACjU,GACN,IAAIyK,EAAezK,EAAIsD,OAAO/N,MAC1BomC,EAAiB,aAAO,EAAKxnC,MAAMynC,oBAEvCD,EAAoBthC,GAAmBshC,EAAmBlxB,EADtC,CAAC,OAAQ,QAAS,cAAe,eAAgB,aAAc,cAEnF,EAAKxN,SAAS,CAAE44B,WAAY8F,EAAmB9xB,WAAYY,KAnE3D,EAAKwJ,OAAS,EAAKA,OAAOtW,KAAZ,gBACd,EAAKxJ,MAAQ,CACTwgB,mBAAmB,EACnBC,aAAa,EACbihB,WAAY,GACZ+F,mBAAoB,GACpB/xB,WAAY,GACZsxB,oBAAoB,EACpB7V,aAAa,EACbuH,wBAAwB,EACxBgE,gBAAiB,IAGrB,EAAK+F,SAAY,EAAKz9B,MAAMvE,gBAAkB,EAAKuE,MAAMvE,eAAeiR,MAAQ,EAAK1M,MAAMvE,eAAeiR,MAAO,GAEjH,EAAK61B,gBAAkB,EAAKA,gBAAgB/9B,KAArB,gBAjBR,EADvB,gFAiCuBM,GACXA,EAAUnK,UAAYwF,KAAKH,MAAMrF,SACjCwF,KAAKoiC,oBAnCjB,wCAuCsB,IAAD,OACbpiC,KAAK2D,SAAS,CAACqoB,aAAa,IAAO,YF7CX,SAACzf,GAEa,OAAtCm1B,SAAoF//B,IAAtC+/B,IAC9CA,GAAkCh4B,OAAO,0DAI7C,IAAMtK,EAAcpB,IAAM2L,YA4B1B,OA3BA+3B,GAAoCtiC,EAAYqE,SAIlB,IAAItH,SAC9B,SAAUC,EAASoC,GAEfQ,GADO,UAAMtC,IAAN,Y/DLgB,0C+DKhB,kBAAmD6P,GACjDm1B,IAAmCz9B,MAAK,SAAAC,GAE1CA,GAAOA,EAAIvF,MAAqC,IAA7BuF,EAAIvF,KAAK+N,gBAC3BtQ,EAAQ8H,EAAIvF,KAAKkW,eAEjBrW,EAAOuJ,OAGd8B,OAAM,SAACxL,GACAL,IAAMU,WACNJ,QAAQC,IAAIF,IAGZC,QAAQD,MAAM,+CAAgDA,GAC9DG,EAAOuJ,YEkBfw6B,CAAiB,EAAKjF,UAAUr5B,MAAK,SAAAC,GAC7BA,GAAOzD,MAAMC,QAAQwD,IAAQA,EAAIvD,OAAS,EAC1C,EAAKgD,SAAS,CAAE44B,WAAYr4B,EAAKo+B,mBAAoBp+B,EAAK8nB,aAAa,IAAS,WAC5E7J,KACA,EAAKtiB,MAAM2iC,wBAAwBt+B,MAGvC,EAAKP,SAAS,CAACqoB,aAAa,IAAQ,WAChC7J,WAIXtY,OAAM,SAAAC,GACH,EAAKnG,SAAS,CAACqoB,aAAa,EAAOuQ,WAAY,GAAI+F,mBAAoB,KAAK,WACxEngB,KACArjB,KAAQT,MAAM,iFAElBC,QAAQC,IAAIuL,WA3D5B,wCAyEY9J,KAAKH,MAAMsE,SACXnE,KAAKH,MAAMsE,QAAQzB,KAAK,OA1EpC,0CA8EwBmG,GAAM,IAAD,OAErB7I,KAAKH,MAAMo4B,qBAAqBpvB,EAAK,UAAU5E,MAAK,SAAAw+B,GAC5C,EAAK5iC,MAAMsE,SACX,EAAKtE,MAAMsE,QAAQzB,KAAK,oBAlFxC,kCAuFgBmG,MAvFhB,kCA4FQ7I,KAAKkiC,yBA5Fb,qCA+FmB,IAAD,OACVliC,KAAKH,MAAMo4B,qBAAqB,KAAM,OAAOh0B,MAAK,SAAAw+B,GAC1C,EAAK5iC,MAAMsE,SACX,EAAKtE,MAAMsE,QAAQzB,KAAK,oBAlGxC,6CA0GQ,IAAIzD,EAAOe,KAAKH,MAAMtF,KAAOyF,KAAKH,MAAMtF,IAAImoC,mCAAqC1iC,KAAKH,MAAMtF,IAAImoC,mCAAsC,GAClIpW,EAAYhwB,OAAO2c,KAAKha,EAAK,gBAAiB,wCAAwC3C,OAAO4c,OAAOC,WAAW,WAAW7c,OAAO4c,OAAOE,aACzIkT,GACCA,EAAUE,QAGdxsB,KAAK2D,SAAS,CAACk+B,oBAAoB,MAhH3C,kDAoHQ7hC,KAAK2D,SAAS,CAACk+B,oBAAqB7hC,KAAKnF,MAAMgnC,uBApHvD,2CAuHyBh5B,GAIjB,IAAIyjB,EAAYtsB,KAAKH,MAAMlF,UAE3B,GAAG2xB,EACC,GAAIA,EAAUC,OAAO,CACjB,IAAIttB,EAAM4J,GAAOA,EAAI85B,cAAiB95B,EAAI85B,cAAgB,GAC1DrW,EAAYhwB,OAAO2c,KAAKha,EAAK,gBAAiB,wCAAwC3C,OAAO4c,OAAOC,WAAW,WAAW7c,OAAO4c,OAAOE,aACxIpZ,KAAKH,MAAMxD,2BAA2BiwB,OAEtC,CACA,IAAIrtB,EAAM4J,GAAOA,EAAI+5B,SAAY/5B,EAAI+5B,SAAW,GAChDtW,EAAYhwB,OAAO2c,KAAKha,EAAK,gBAAiB,wCAAwC3C,OAAO4c,OAAOC,WAAW,WAAW7c,OAAO4c,OAAOE,aACxIpZ,KAAKH,MAAMxD,2BAA2BiwB,OAE1C,CACA,IAAIrtB,EAAM4J,GAAOA,EAAI85B,cAAiB95B,EAAI85B,cAAgB,GAC1DrW,EAAYhwB,OAAO2c,KAAKha,EAAK,gBAAiB,wCAAwC3C,OAAO4c,OAAOC,WAAW,WAAW7c,OAAO4c,OAAOE,aACxIpZ,KAAKH,MAAMxD,2BAA2BiwB,GAIvCA,GACCA,EAAUE,UAhJtB,+BAqJc,IAAD,OAEL,OAAGxsB,KAAKnF,MAAMmxB,YACF,yBAAK/rB,MAAM,SAASC,UAAU,QAA9B,6BAAiE,kBAACyR,GAAA,EAAD,CAASzB,UAAU,OAAOZ,KAAK,KAAKa,QAAQ,UAIjH,oCACI,kBAAC,KAAD,MACA,kBAACmxB,GAAD,CACIzmC,MAAOmF,KAAKnF,MACZ84B,gBAAiB,kBAAM,EAAKA,mBAC5BwN,oBAAqB,SAACt4B,GAAD,OAAS,EAAKs4B,oBAAoBt4B,IACvDu4B,qBAAsB,SAACv4B,GAAD,OAAS,EAAKu4B,qBAAqBv4B,IACzD04B,UAAW,kBAAM,EAAKA,aACtB5W,YAAa,SAAC9hB,GAAD,OAAS,EAAK8hB,YAAY9hB,IACvCvN,eAAgB0E,KAAKH,MAAMvE,eAC3Bqf,OAAQ3a,KAAK2a,SAGjB,kBAAC,GAAD,CACIknB,mBAAoB7hC,KAAKnF,MAAMgnC,mBAC/BG,0BAA2B,kBAAM,EAAKA,6BACtCC,aAAc,kBAAM,EAAKA,gBACzBC,qBAAsB,kBAAM,EAAKA,+BA7KzD,GAA6B7hC,aA8LvB+G,GAAqB,CACvB6wB,wBACAuK,wBNjMoC,SAACK,GAAD,OAAU,SAAC3mC,GAC/C,OAAOC,QAAQC,QACXF,EAAS,CACLnB,KlEV6B,2BkEW7BC,QAAS6nC,OM8LjBxmC,8BAEWiL,gBAdS,SAAC3K,GACrB,MAAO,CACHrB,eAAgBqB,EAAMskC,UAAU3lC,eAChCd,QAASmC,EAAME,IAAIrC,QACnBG,UAAWgC,EAAME,IAAIlC,UACrBJ,IAAMoC,EAAME,IAAItC,OASgB6M,GAAzBE,CAA6CC,YAAW46B,K,UC1M/DW,I,OAAYC,KAAZD,SAGD,SAASE,GAAkBnjC,GAE9B,IAAMojC,EAAc,CAChBvoB,KAAM,OACNwoB,OAAO,OACPC,UAAU,EACVC,cAAe,gBAAGC,EAAH,EAAGA,UAAWC,EAAd,EAAcA,QAASC,EAAvB,EAAuBA,WAAYC,EAAnC,EAAmCA,KAAnC,OAA8CC,EAAa,CAAEJ,YAAWC,UAASC,aAAYC,UAC5Gr5B,SAAU,SAACoH,GAAD,OAAUmyB,EAAyBnyB,IAC7CoyB,SAAU,QAIRF,EAAe,SAAC,GAA8C,IAA5CJ,EAA2C,EAA3CA,UAAWC,EAAgC,EAAhCA,QAASC,EAAuB,EAAvBA,WAAYC,EAAW,EAAXA,MvB2N9B,SAACA,EAAMh+B,EAAI0G,EAAO1M,GAE5C,IAAIb,EAAO,IAAIilC,SA8Bf,OA7BAjlC,EAAKklC,OAAO,cAAeL,GAC3B7kC,EAAKklC,OAAO,WAAYL,EAAK9oB,MAC7B/b,EAAKklC,OAAO,QAASr+B,GACrB7G,EAAKklC,OAAO,KAAM33B,GAEM,IAAI/P,SAAQ,SAAUC,EAASoC,GAInDe,GAFO,UAAM7C,IAAN,Y3C1OiB,yC2C4OLiC,EAAM,KAAMa,GAAkByE,MAC7C,SAAA6/B,GACOA,GAAgBA,EAAanlC,MAA8C,IAAtCmlC,EAAanlC,KAAK+N,gBAEtDtQ,EAAQ0nC,GAERtlC,EAAO,sCAIjBqL,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,yCAA0CuL,GACtDtL,EAAOsL,WuBpPbi6B,CAAeP,EAAM3jC,EAAMy9B,SAAUz9B,EAAMqwB,WAAW,SAACzwB,GAAD,OAAmBD,EAAiBC,EAAe+jC,EAAMD,MAAat/B,MAAK,SAAA+/B,GAC/H1lC,QAAQC,IAAI,kBAAmBylC,GAC/BX,EAAU,KAAMG,MAEjB35B,OAAM,SAAAC,GACLxL,QAAQC,IAAI,oBAAqBuL,GACjCw5B,QAIF9jC,EAAmB,SAACC,EAAe+jC,EAAMD,GAC3CA,EAAW,CAAEU,QAASC,KAAKC,MAAM1kC,EAAc2kC,OAAS3kC,EAAc4kC,MAAQ,KAAKjhC,QAAQ,IAAMogC,IAG/FE,EAA2B,SAACnyB,GACXA,EAAKiyB,KAAhB5kC,QA+EZ,OAlEI,6BACI,yBAAKsB,UAAU,aACX,yBAAKA,UAAU,OACX,yBAAKA,UAAU,yDAAf,oBAIHL,GAASA,EAAMy9B,SACZ,6BACI,yBAAKp9B,UAAU,sCAEX,4BAAQnF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAMlG,EAAM8rB,0BAAvE,SAEJ,yBAAKzrB,UAAU,OACX,yBAAKA,UAAU,gHAAgHsF,GAAG,0BAE9H,6BAEI,kBAAC8U,GAAA,EAAD,KACI,yBAAKpa,UAAU,OACX,yBAAKA,UAAU,2CACX,kBAACqa,GAAA,EAAD,CAAWC,UAAU,uBACjB,kBAACxF,GAAA,EAAD,CAAOuK,IAAI,OAAOrf,UAAU,2BAA5B,gBACA,kBAAC8U,GAAA,EAAD,CAAOuK,IAAI,QAAQ1f,EAAMvE,gBAAkBuE,EAAMvE,eAAeof,KAAO7a,EAAMvE,eAAeof,KAAO,OAK/G,yBAAKxa,UAAU,OACX,yBAAKA,UAAU,2CAGX,kBAAC4iC,GAAD,iBAAaG,EAAb,CAA0B/iC,UAAU,kBAChC,uBAAGA,UAAU,wBAAuB,kBAAC,KAAD,CAAMnF,KAAK,WAC/C,uBAAGmF,UAAU,mBAAb,6DAA0FL,EAAMvE,gBAAkBuE,EAAMvE,eAAeof,KAAO7a,EAAMvE,eAAeof,KAAO,GAA1K,aA0B9B,yBAAKvV,IAAI,gBAAgB2C,MC1GxC,IAAMw8B,GAAb,YACI,WAAYzkC,GAAQ,IAAD,8BACf,4CAAMA,KAMV8qB,YAAc,SAAAxP,GACVC,MAAM,4BARS,EAWnBuQ,sBAAwB,WAClB,EAAK9rB,MAAMsE,SACV,EAAKtE,MAAMsE,QAAQzB,KAAK,MAX3B,EAAKioB,YAAc,EAAKA,YAAYtmB,KAAjB,gBACnB,EAAKi5B,SAAY,EAAKz9B,MAAM0kC,OAAS,EAAK1kC,MAAM0kC,MAAMC,QAAU,EAAK3kC,MAAM0kC,MAAMC,OAAOh/B,GAAO,EAAK3F,MAAM0kC,MAAMC,OAAOh/B,GAAK,GAC5H,EAAK0qB,UAAa,EAAKrwB,MAAMpF,MAAQ,EAAKoF,MAAMpF,KAAKuM,SAAY,EAAKnH,MAAMpF,KAAKuM,SAAW,GAJ7E,EADvB,iFzBkBIqC,KAAK+Y,KAAK,cAAe,CAAC7Y,SAAU,GAAKC,QAAS,MyBlBtD,+BAuBQ,OACI,kBAACw5B,GAAD,CACInoC,MAAOmF,KAAKnF,MACZ8vB,YAAa3qB,KAAK2qB,YAClBgB,sBAAuB3rB,KAAK2rB,sBAC5B2R,SAAUt9B,KAAKs9B,SACfhiC,eAAgB0E,KAAKH,MAAMvE,eAC3B40B,UAAWlwB,KAAKkwB,gBA9BhC,GAAmC7vB,aA8CpBiH,gBAVS,SAAC3K,GACrB,MAAO,CACHrB,eAAgBqB,EAAMskC,UAAU3lC,eAChCb,KAAMkC,EAAME,IAAIpC,QAIG,GAGZ6M,CAA6CC,YAAW+8B,KClDhE,SAASG,GAAkBC,EAAUjpB,GAmFxC,MAlFe,CACX,CACIlR,UAAW,WACXC,KAAM,YACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAO,6BAAMkC,KAGrB,CACIR,UAAW,kBACXC,KAAM,mBACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAO,6BAAMkC,KAGrB,CACIR,UAAW,qBACXC,KAAM,wBACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAO,6BAAMkC,KAGrB,CACIR,UAAW,GACXC,KAAM,YACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,IAAI87B,EAA+B,OAAlB97B,EAAI+7B,UAAqB,2BAA6B/7B,EAAI+7B,UAAW,IAAM/7B,EAAIg8B,YAAc,QAAQ,GACtH,OAAO,6BAAMF,EAAN,OAGf,CACIp6B,UAAW,GACXC,KAAM,SACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GAEd,IAAIi8B,EAAaj8B,EAAIk8B,UAIf,GAHC,YAAmC,KAArBl8B,EAAIm8B,aAAsB,iBAAmBn8B,EAAIm8B,aAAe,IAAM,KAC/D,KAArBn8B,EAAIo8B,aAAsB,iBAAwC,KAArBp8B,EAAIq8B,aAAsBr8B,EAAIq8B,aAAer8B,EAAIo8B,cAAgB,IAAK,KAC9F,KAAjBp8B,EAAIk0B,SAAkB,UAA+B,KAAnBl0B,EAAIorB,WAAoBprB,EAAIorB,WAAaprB,EAAIk0B,UAAY,IAElGvyB,EAAO3B,EAAIs8B,SAAY,uCAAyCt8B,EAAIu8B,YAAc,IAAO,GAC7F,OAAO,6BAAMN,EAAY,IAAMt6B,EAAxB,OAGf,CACID,UAAW,GACXC,KAAM,GACNI,MAAM,EACNK,cAAc,EACdN,YAAa,QACbF,cAAe,aACfmR,gBAAiB,SAAC7Q,EAAMlC,GACpB,OAAQ,yBAAK5I,MAAM,QAAQC,UAAU,0CAA0C6F,QAAS,kBAAM0V,MAAtF,cAEZ3Q,UAAW,SAACC,EAAMlC,GACV,OAAO,yBAAK5I,MAAM,SACd,4BAAQlF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM2+B,EAAS77B,KAA1E,YAQxB,SAASL,GAAgBC,EAAOC,GAC5B,OAAKD,EACc,QAAVA,EAAyB,0BAAMvI,UAAU,6BAC/B,SAAVuI,EAA0B,0BAAMvI,UAAU,2BAC5C,KAHa,0BAAMA,UAAU,wBCrFxC,IAgUemlC,GAhUU,SAAC,GACQ,IADNC,EACK,EADLA,WAAYnqC,EACP,EADOA,KAAMoqC,EACb,EADaA,mBAAoB3mB,EACjC,EADiCA,KAAM5D,EACvC,EADuCA,aAAcwqB,EACrD,EADqDA,cAAejnB,EACpE,EADoEA,kBAAmBI,EACvF,EADuFA,qBACpH8mB,EAA6B,EAA7BA,wBAA6B,EACehvB,oBAAS,GADxB,oBACtBivB,EADsB,KACNC,EADM,KAIvBC,EAAkB,CACnB,WACA,eAGL,OACI,oCACI,kBAAC12B,GAAA,EAAD,CAAO1K,OAAQghC,EAAephC,OAAQmhC,EAClCrlC,UAAU,uCACVqP,cAAc,uBACdC,eAAe,qBACfC,iBAAiB,uBACjBpK,OAAO,OACPqK,UAAQ,EACRJ,KAAK,MACL,kBAACK,GAAA,EAAD,CAAavL,OAAQmhC,EAAoBrlC,UAAU,yDAE/C,2BAAOA,UAAU,oBAA6B,QAAT/E,EAAiB,OAAS,QAA/D,UAEJ,kBAAC0U,GAAA,EAAD,KACI,oCACI,6BACI,kBAACyK,GAAA,EAAD,KACI,yBAAKpa,UAAU,OACX,yBAAKA,UAAU,2CACX,2BAAOA,UAAU,mBAAjB,oBAAqD8a,GAAgBA,EAAaN,QAI1F,yBAAKxa,UAAU,wBACX,yBAAKA,UAAU,yCACX,kBAACqa,GAAA,EAAD,CAAWra,UAAU,uBACjB,2BAAOA,UAAU,mBAAjB,aACA,2BACInF,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,WACLxa,UAAU,qCACVjE,MAAOqpC,EAAWO,SAClB17B,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,SAMnD,yBAAKxG,UAAU,OACX,yBAAKA,UAAU,yCACX,kBAACqa,GAAA,EAAD,CAAWra,UAAU,oDACjB,6BACI,2BAAOA,UAAU,mBAAjB,eACA,2BACInF,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,WACLxa,UAAU,0FACVjE,MAAOqpC,EAAWQ,gBAClBxmB,UAAQ,KAIhB,yBAAKpf,UAAU,oCACX,4BAAQnF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM0/B,EAAwB,iBAAzF,aAIZ,yBAAKvlC,UAAU,yCACX,kBAACqa,GAAA,EAAD,CAAWra,UAAU,oDACjB,6BACA,2BAAOA,UAAU,mBAAjB,uBACA,2BACInF,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,qBACDxa,UAAU,0FACVjE,MAAOqpC,EAAWS,yBAA0DpkC,IAApC2jC,EAAWU,qBAAqC,MAAOV,EAAWU,qBAAsB,IACpI77B,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,IAC/B4Y,UAAQ,KAGhB,yBAAKpf,UAAU,oCACX,4BAAQnF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM0/B,EAAwB,eAAe,uBAAxG,cAKhB,yBAAKvlC,UAAU,wBACX,yBAAKA,UAAU,2CACX,kBAACqa,GAAA,EAAD,CAAWra,UAAU,uBACjB,2BAAOA,UAAU,qDACb,2BAAOnF,KAAK,WACR2f,KAAK,oBACLlP,UAAS85B,EAAWW,mBAAoBX,EAAWW,kBACnD97B,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,MACvC,0BAAMxG,UAAU,wBAEpB,2BAAOA,UAAU,mBAAjB,oBACA,2BACInF,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,kBACLxa,UAAW,6DAA+DolC,EAAWW,kBAAoB,iCAAmC,IAC5IhqC,MAAOqpC,EAAWY,iBAAmBZ,EAAWa,iBAAkD,OAA/Bb,EAAWY,iBAA2D,OAA/BZ,EAAWa,gBAC9Gb,EAAWa,gBAAkB,MAAQb,EAAWY,gBAC/CZ,EAAWc,kBAAoD,OAAhCd,EAAWc,iBAA6Bd,EAAWc,iBAAmB,GAC7G9mB,UAAQ,IAIhB,yBAAKpf,UAAU,oCACP,4BAAQnF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM0/B,EAAwB,gBAAgBnmB,UAAWgmB,EAAWW,mBAA/H,cA2BhB,yBAAK/lC,UAAU,wBACX,yBAAKA,UAAU,2CACX,2BAAOA,UAAU,qDACb,2BAAOnF,KAAK,WACR2f,KAAK,cACLlP,QAAS85B,EAAWe,YACpBl8B,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,MACvC,0BAAMxG,UAAU,wBAEpB,2BAAOA,UAAU,mBAAjB,cAGJ,yBAAKA,UAAU,2CACX,kBAACqa,GAAA,EAAD,CAAWra,UAAU,uBACjB,2BAAOA,UAAU,mBAAjB,2BACA,kBAACoG,GAAA,EAAD,CAAUoU,KAAK,WAAW8E,UAAQ,EAC9Bhb,OAAQkhC,EACRthC,OAAQ,kBAAMuhC,GAAkB,SAAAW,GAAkB,OAAKhB,EAAWe,aAAgBC,EAAqBA,MAEvGpmC,UAAW,uEAAyEolC,EAAWe,YAAc,GAAI,uBACjH,kBAAC9/B,GAAA,EAAD,CAAgBmZ,OAAK,GAA2B,OAAzB4lB,EAAWV,UAAqBU,EAAWV,UAAW,IAC7E,kBAACp+B,GAAA,EAAD,KAEQ,6BACKo/B,GAAuC,OAApBA,GAA4BA,EAAgB1zB,KAAI,SAAC0H,EAAMxH,GAAP,OAChE,kBAAC3L,GAAA,EAAD,CAActB,IAAKiN,EAAOrM,QAAS,kBAAM4Y,EAAqB/E,EAAM,eAChE,6BAAMA,UAO9B,2BACI7e,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,cACLxa,UAAU,0CACVjE,MAAOqpC,EAAWT,YAClB16B,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,IACnC4Y,UAAWgmB,EAAWe,cAE1B,2BAAOnmC,UAAU,mBAAjB,WAKZ,yBAAKA,UAAU,wBACX,yBAAKA,UAAU,2CACX,2BAAOA,UAAU,mBAAjB,WAEJ,yBAAKA,UAAU,2CACX,2BAAOA,UAAU,qDACb,2BAAOnF,KAAK,WACR2f,KAAK,YACLlP,QAAS85B,EAAWP,UACpB56B,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,MACvC,0BAAMxG,UAAU,sBAAhB,yBAGR,yBAAKA,UAAU,2CACX,kBAACqa,GAAA,EAAD,CAAWra,UAAU,iCAEjB,2BAAOA,UAAU,mBAAjB,WACA,2BAAOA,UAAU,mBAAjB,gBACA,2BACInF,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,eACLxa,UAAW,sCAAwColC,EAAWP,UAAY,qBAAuB,IACjG9oC,MAAOqpC,EAAWN,mBAA8CrjC,IAA9B2jC,EAAWiB,eAAgC,MAAQjB,EAAWiB,eAAkB,IAClHp8B,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,IACnC4Y,UAAQ,IAEZ,yBAAKpf,UAAU,oCACX,4BAAQnF,KAAK,SACTmF,UAAU,kBACV6F,QAAS,kBAAM0/B,EAAwB,eAAgB,gBACvDnmB,SAAUgmB,EAAWP,WAHzB,WAQJ,2BAAO7kC,UAAU,mBAAjB,eACA,2BACInF,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,eACLxa,UAAW,sCAAwColC,EAAWP,UAAY,qBAAuB,IACjG9oC,MAAOqpC,EAAWJ,mBAA8CvjC,IAA9B2jC,EAAWkB,eAAgC,MAAQlB,EAAWkB,eAAkB,IAClHr8B,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,IACnC4Y,UAAQ,IAEZ,yBAAKpf,UAAU,oCACX,4BAAQnF,KAAK,SACTmF,UAAU,kBACV6F,QAAS,kBAAM0/B,EAAwB,gBACvCnmB,SAAUgmB,EAAWP,WAHzB,WASJ,2BAAO7kC,UAAU,mBAAjB,SACA,2BACInF,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,WACLxa,UAAW,sCAAwColC,EAAWP,UAAY,qBAAuB,IACjG9oC,MAAOqpC,EAAWvI,eAAuCp7B,IAA1B2jC,EAAWrR,YAAsD,KAA1BqR,EAAWrR,WAAsB,MAAQqR,EAAWrR,WAAc,IACxI3U,UAAQ,IAEZ,yBAAKpf,UAAU,oCACX,4BAAQnF,KAAK,SACTmF,UAAU,kBACV6F,QAAS,kBAAM0/B,EAAwB,UACvCnmB,SAAUgmB,EAAWP,WAHzB,aAWZ,yBAAK7kC,UAAU,2CACX,kBAACqa,GAAA,EAAD,CAAWra,UAAU,uBACjB,2BAAOA,UAAU,qDACb,2BAAOnF,KAAK,WACR2f,KAAK,WACLlP,QAAS85B,EAAWH,SACpBh7B,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,MACvC,0BAAMxG,UAAU,wBAEpB,2BAAOA,UAAU,mBAAjB,uCACA,2BACInF,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,cACLxa,UAAU,0CACVjE,MAAOqpC,EAAWF,YAClBj7B,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,IACnC4Y,UAAWgmB,EAAWH,kBAYtD,kBAACjjB,GAAA,EAAD,CAAahiB,UAAU,2BACnB,yBAAKD,MAAM,SACP,4BAAQlF,KAAK,SAASmF,UAAU,iDAAiD6F,QAAS,kBAAMw/B,MAAhG,UADJ,QAEI,4BAAQxqC,KAAK,SAASmF,UAAU,+CAA+C6F,QAAS,kBAAM6Y,MAChF,SAATzjB,EAAkB,OAAS,YCDzCsrC,GA9SW,SAAC,GAAsH,IAApHC,EAAmH,EAAnHA,wBAAyBjB,EAA0F,EAA1FA,wBAAyBkB,EAAiE,EAAjEA,kBAAmBC,EAA8C,EAA9CA,sBAA8C,KAAxBX,kBAClFxvB,mBAAS,KADiG,oBACrIgO,EADqI,KAC1HC,EAD0H,OAE5GjO,mBAAS,IAFmG,oBAErI8N,EAFqI,KAE3HC,EAF2H,KAG5ItN,qBAAU,WACNsN,EAAYoiB,EAAsBjoC,MAClC+lB,GAAa,SAAAmiB,GAAa,MAAI,QAC/B,CAACD,IAsNJ,SAASp+B,EAAgBC,EAAOC,GAC5B,OAAKD,EACc,QAAVA,EAAyB,0BAAMvI,UAAU,6BAC/B,SAAVuI,EAA0B,0BAAMvI,UAAU,2BAC5C,KAHa,0BAAMA,UAAU,wBAaxC,OACI,oCACI,kBAACgP,GAAA,EAAD,CAAO1K,OAAQkiC,EAAyBtiC,OAAQqhC,EAC5CvlC,UAAW,gBAAoD,gBAAjC0mC,EAAsBnjC,QAA6D,UAAjCmjC,EAAsBnjC,OAChG,6BAA+B,IACrC8L,cAAc,uBACdC,eAAe,qBACfC,iBAAiB,uBACjBpK,OAAO,OACPiK,KAAuC,iBAAjCs3B,EAAsBnjC,OAA4B,KAAO,GAC/DiM,UAAQ,GACR,kBAACC,GAAA,EAAD,CAAavL,OAAQqhC,EAAyBvlC,UAAU,yDAClB,gBAAjC0mC,EAAsBnjC,OACnB,2BAAOvD,UAAU,oBAAjB,yBACoC,iBAAjC0mC,EAAsBnjC,OAA6B,2BAAOvD,UAAU,oBAAjB,uBACd,gBAAjC0mC,EAAsBnjC,OAA4B,2BAAOvD,UAAU,oBAAjB,uBACb,UAAjC0mC,EAAsBnjC,OAAsB,2BAAOvD,UAAU,oBAAjB,iBACP,gBAAjC0mC,EAAsBnjC,OAA4B,2BAAOvD,UAAU,oBAAjB,uBAC/C,IAG1B,kBAAC2P,GAAA,EAAD,KACI,oCACI,yBAAK3P,UAAU,4BACX,2BACInF,KAAK,OACLmF,UAAU,2CACVgK,YAA8C,gBAAjC08B,EAAsBnjC,OAA2B,iCACvB,UAAjCmjC,EAAsBnjC,OAAqB,wBACN,gBAAjCmjC,EAAsBnjC,OAA2B,8BAAgC,0BAC3F0G,SAAU,SAAClH,GAAD,OAjQV,SAACA,GACzB,IAAIhH,EAAQgH,EAAE+G,OAAO/N,MACjBktB,EAAepoB,GAAmB6lC,EAAsBjoC,KAAM1C,GAClEyoB,GAAa,SAAAuB,GAAa,OAAIhqB,KAC9BuoB,EAAY2E,GA6P6B2d,CAAoB7jC,IACrChH,MAAOwoB,IAGX,4BAAQvkB,UAAU,yBACdnF,KAAK,QACLgL,QAAS,kBAjQV,WACvB,IAAIojB,EAAepoB,GAAmB6lC,EAAsBjoC,KAAM,IAClE+lB,GAAa,SAAAuB,GAAa,MAAI,MAC9BzB,EAAY2E,GA8P2B4d,OAKnBxiB,EACI,yBAAK/e,GAAG,wBAAwBtF,UAAU,mDACtC,kBAAC,KAAD,CACImK,SApDrB,SAACu8B,GACZ,MAAqC,gBAAjCA,EAAsBnjC,OAAiC,kBACjB,iBAAjCmjC,EAAsBnjC,OAAkC,gBACvB,gBAAjCmjC,EAAsBnjC,OAAiC,eACtB,UAAjCmjC,EAAsBnjC,OAA2B,aAChB,gBAAjCmjC,EAAsBnjC,OAAiC,WACpD,kBA8C8BujC,CAAOJ,GACjBjoC,KAAM4lB,EACNja,QAtQd,SAACq8B,GACnB,IAAMM,EAAoB,CACtB,CACI18B,UAAW,kBACXC,KAAM,mBACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,EAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAO,6BAAMkC,KAGrB,CACIR,UAAW,GACXC,KAAM,GACNI,MAAM,EACNK,cAAc,EACdN,YAAa,QACbF,cAAe,aAEfK,UAAW,SAACC,EAAMlC,GACd,OAAQ,yBAAK5I,MAAM,SACf,4BAAQlF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM4gC,EAAkB99B,KAAnF,cAKVq+B,EAAoB,CACtB,CACI38B,UAAW,gBACXC,KAAM,iBACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,EAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAO,6BAAMkC,KAGrB,CACIR,UAAW,OACXC,KAAM,oBACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,EAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAO,6BAAMkC,KAGrB,CACIR,UAAW,cACXC,KAAM,cACNC,cAAe,aACfE,YAAa,OAEbG,UAAW,SAACC,EAAMlC,GACd,OAAO,6BAAMkC,KAGrB,CACIR,UAAW,GACXC,KAAM,GACNI,MAAM,EACNK,cAAc,EACdN,YAAa,QACbF,cAAe,aAEfK,UAAW,SAACC,EAAMlC,GACd,OAAQ,yBAAK5I,MAAM,SACf,4BAAQlF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM4gC,EAAkB99B,KAAnF,cAKVs+B,EAAmB,CACrB,CACI58B,UAAW,eACXC,KAAM,gBACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,EAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAO,6BAAMkC,KAGrB,CACIR,UAAW,iBACXC,KAAM,mBACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,EAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAO,6BAAMkC,KAGrB,CACIR,UAAW,GACXC,KAAM,GACNI,MAAM,EACNK,cAAc,EACdN,YAAa,QACbF,cAAe,aAEfK,UAAW,SAACC,EAAMlC,GACd,OAAQ,yBAAK5I,MAAM,SACf,4BAAQlF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM4gC,EAAkB99B,KAAnF,cAKVu+B,EAAc,CAChB,CACI78B,UAAW,aACXC,KAAM,WACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,EAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAO,6BAAMkC,KAGrB,CACIR,UAAW,OACXC,KAAM,aACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,EAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAO,6BAAMkC,KAGrB,CACIR,UAAW,GACXC,KAAM,GACNI,MAAM,EACNK,cAAc,EACdN,YAAa,QACbF,cAAe,aAEfK,UAAW,SAACC,EAAMlC,GACd,OAAQ,yBAAK5I,MAAM,SACf,4BAAQlF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM4gC,EAAkB99B,KAAnF,cAKVw+B,EAAoB,CACtB,CACI98B,UAAW,WACXC,KAAM,mBACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,EAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAO,6BAAMkC,KAGrB,CACIR,UAAW,WACXC,KAAM,OACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,EAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAO,6BAAMkC,KAGrB,CACIR,UAAW,GACXC,KAAM,GACNI,MAAM,EACNK,cAAc,EACdN,YAAa,QACbF,cAAe,aAEfK,UAAW,SAACC,EAAMlC,GACd,OAAQ,yBAAK5I,MAAM,SACf,4BAAQlF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM4gC,EAAkB99B,KAAnF,cAMhB,MAAqC,gBAAjC+9B,EAAsBnjC,OACfwjC,EAC+B,iBAAjCL,EAAsBnjC,OACpByjC,EAC+B,gBAAjCN,EAAsBnjC,OACpB0jC,EAC+B,gBAAjCP,EAAsBnjC,OACpB4jC,EAEAD,EA8D8BE,CAAcX,GACvBl8B,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRS,WAAW,qCACXC,iBAAkBtD,MAGxB,yBAAK3C,IAAI,gBAAgB2C,MAK3C,kBAACoa,GAAA,EAAD,CAAahiB,UAAU,2BACnB,4BAAQnF,KAAK,SAASmF,UAAU,yCAAyC6F,QAAS,kBAAM0/B,MAAxF,cC8QL8B,GApiBM,SAAC1nC,GAAW,IAAD,EACI4W,mBAAS,IADb,oBACrB+wB,EADqB,KACXC,EADW,OAEIhxB,mBAAS,IAFb,oBAErB8N,EAFqB,KAEXC,EAFW,OAGM/N,mBAAS,IAHf,oBAGrBgO,EAHqB,KAGVC,EAHU,OAIUjO,oBAAS,GAJnB,oBAIrB1K,EAJqB,KAIRuX,EAJQ,OAKY7M,mBAAS,IALrB,oBAKrBuE,EALqB,KAKP6J,EALO,OAM8BpO,oBAAS,GANvC,oBAMrB2M,EANqB,KAMEmC,EANF,OAOQ9O,mBAAS,IAPjB,oBAOrB6uB,EAPqB,KAOToC,EAPS,OAQQjxB,mBAAS,IARjB,oBAQrB8lB,EARqB,KAQToL,EARS,OASJlxB,mBAAS,IATL,oBASrBtb,EATqB,KASf6oB,EATe,OAUcvN,oBAAS,GAVvB,oBAUrB+uB,EAVqB,KAUNoC,EAVM,OAWkCnxB,oBAAS,GAX3C,oBAWrBiwB,EAXqB,KAWImB,EAXJ,OAYkBpxB,mBAAS,IAZ3B,oBAYrBqxB,EAZqB,KAYJC,EAZI,OAagBtxB,mBAAS,IAbzB,qBAarBuxB,GAbqB,MAaLC,GAbK,SAckBxxB,mBAAS,IAd3B,sBAcrByxB,GAdqB,MAcJC,GAdI,SAe8B1xB,mBAAS,IAfvC,sBAerBmwB,GAfqB,MAeEwB,GAfF,MAgBtB9sC,GAAiB0b,aAAY,SAAAnc,GAAK,OAAI6hB,GAAgB7hB,EAAO,CAAC,YAAa,sBAhBrD,GAiBI4b,oBAAS,GAjBb,sBAiBrB4xB,GAjBqB,MAiBXC,GAjBW,SAkBY7xB,mBAAS,IAlBrB,sBAkBrB8xB,GAlBqB,MAkBPC,GAlBO,MAmB5BtxB,qBAAU,WAEN,OADA2N,GAAgB,SAAAW,GAAsB,OAAO,eAAKlqB,OAC3C,WAC2C,OAA1CklB,SAA4F7e,IAA1C6e,IAClDA,GAAsC9W,OAAO,uEAEL,OAAxCqX,SAAwFpf,IAAxCof,IAChDA,GAAoCrX,OAAO,uEAEP,OAApCmX,SAAgFlf,IAApCkf,IAC5CA,GAAgCnX,OAAO,uEAEI,OAA3CwX,SAA8Fvf,IAA3Cuf,IACnDA,GAAuCxX,OAAO,uEAEG,OAAjD0X,SAA0Gzf,IAAjDyf,IACzDA,GAA6C1X,OAAO,uEAET,OAA3C4X,SAA8F3f,IAA3C2f,IACnDA,GAAuC5X,OAAO,uEAEC,OAA/C8X,SAAsG7f,IAA/C6f,IACvDA,GAA2C9X,OAAO,0EAG3D,IAEHwN,qBAAU,WACF8D,GAAgBA,EAAapO,OAC7B0W,GAAe,SAAAK,GAAe,OAAI,KAClC8kB,GAAYztB,EAAapO,MACzB6sB,GAAcze,EAAapO,MAC3B87B,KACAC,KACAC,KACAC,QAEL,CAAC7tB,IAEJ9D,qBAAU,WACN2N,GAAgB,SAAAW,GAAsB,OAAO,eAAKlqB,OAClDopB,GAAa,SAAAuB,GAAa,MAAI,QAC/B,CAAC3qB,KACJ4b,qBAAU,gBACsBvV,IAAxB2jC,EAAWO,UACXiD,OACL,CAACT,KAEJ,IAAMI,GAAc,SAAC77B,GAEjBkU,GAAmBlU,GAAM3I,MAAK,SAAAC,GAE1B,GAAmB,MAAfA,EAAItF,QACJ,GAAIsF,GAAOA,EAAIvF,MAAQuF,EAAIvF,MAAqB,OAAbuF,EAAIvF,MAAiB8B,MAAMC,QAAQwD,EAAIvF,MAAO,CAC7E,IAAIA,EAAOuF,EAAIvF,KACf8oC,EAAY9oC,GACZ6lB,EAAY7lB,SAGhBwjB,KACArjB,KAAQT,MAAM,sDACdC,QAAQD,MAAM,wCAElBilB,GAAe,SAAAK,GAAe,OAAI,QAGjC9Z,OAAM,SAAAC,GACHwZ,GAAe,SAAAK,GAAe,OAAI,KAClCxB,KACArjB,KAAQT,MAAM,sDACdC,QAAQD,MAAM,4CAcpBo7B,GAAgB,SAACjoB,GAEnBiP,GAAqBjP,GAAUvN,MAAK,SAAAC,GAEhC,GAAmB,MAAfA,EAAItF,QACJ,GAAIsF,GAAOA,EAAIvF,MAAQuF,EAAIvF,MAAqB,OAAbuF,EAAIvF,MAAiB8B,MAAMC,QAAQwD,EAAIvF,MAAO,CAC7E,IAAIA,EAAI,CAAI,CACRwX,cAAe,GACfuE,KAAM,GACNquB,WAAY,GACZC,IAAK,KAJD,oBAKF9kC,EAAIvF,OACVgpC,EAAchpC,SAGlBwjB,KACArjB,KAAQT,MAAM,wDACdC,QAAQD,MAAM,2CAIjBwL,OAAM,SAAAC,GACHqY,KACArjB,KAAQT,MAAM,wDACdC,QAAQD,MAAM,4CAGpBqqC,GAAqB,WACvBvnB,GAAsBnG,EAAapO,MAAM3I,MAAK,SAAAC,GAEvB,MAAfA,EAAItF,OACAsF,GAAOA,EAAIvF,MAAQuF,EAAIvF,MAAqB,OAAbuF,EAAIvF,MAAiB8B,MAAMC,QAAQwD,EAAIvF,OACtEopC,EAAmB7jC,EAAIvF,OAG3BwjB,KACArjB,KAAQT,MAAM,6DACdC,QAAQD,MAAM,iDAIjBwL,OAAM,SAAAC,GACHqY,KACArjB,KAAQT,MAAM,6DACdC,QAAQD,MAAM,iDAGpBsqC,GAAqB,WACvBtnB,GAA4BrG,EAAapO,MAAM3I,MAAK,SAAAC,GAE7B,MAAfA,EAAItF,OACAsF,GAAOA,EAAIvF,MAAQuF,EAAIvF,MAAqB,OAAbuF,EAAIvF,MAAiB8B,MAAMC,QAAQwD,EAAIvF,OACtEspC,GAAkB/jC,EAAIvF,OAG1BwjB,KACArjB,KAAQT,MAAM,6DACdC,QAAQD,MAAM,6CAIjBwL,OAAM,SAAAC,GACHqY,KACArjB,KAAQT,MAAM,6DACdC,QAAQD,MAAM,6CAGpBuqC,GAAsB,WACxBrnB,KAAwBtd,MAAK,SAAAC,GAEN,MAAfA,EAAItF,OACAsF,GAAOA,EAAIvF,MAAQuF,EAAIvF,MAAqB,OAAbuF,EAAIvF,MAAiB8B,MAAMC,QAAQwD,EAAIvF,OACtEwpC,GAAmBjkC,EAAIvF,OAG3BwjB,KACArjB,KAAQT,MAAM,8DACdC,QAAQD,MAAM,6CAIjBwL,OAAM,SAAAC,GACHqY,KACArjB,KAAQT,MAAM,8DACdC,QAAQD,MAAM,6CAGpBwqC,GAAqB,WACvBpnB,KAA4Bxd,MAAK,SAAAC,GAEV,MAAfA,EAAItF,OACAsF,GAAOA,EAAIvF,MAAQuF,EAAIvF,MAAqB,OAAbuF,EAAIvF,MAAiB8B,MAAMC,QAAQwD,EAAIvF,OACtE6pC,GAAgBtkC,EAAIvF,OAGxBwjB,KACArjB,KAAQT,MAAM,6DACdC,QAAQD,MAAM,iDAIjBwL,OAAM,SAAAC,GACHqY,KACArjB,KAAQT,MAAM,8DACdC,QAAQD,MAAM,iDAGpBglB,GAAwB,WAC1BkC,GAAyB,SAAAqC,GAAyB,OAAKA,MAQrD6d,GAA0B,SAAChiC,GAA2B,IAAnBwlC,EAAkB,uDAAP,GAChDpB,GAA2B,SAAAqB,GAA2B,OAAKA,KAC3D,IAYItC,EAAwB,CAAEnjC,OAAQA,EAAQ9E,KAX/B,gBAAX8E,EACI,aAAOqkC,GACO,gBAAXrkC,EACH,aAAOukC,IACO,iBAAXvkC,EACH,aAAOykC,IACO,gBAAXzkC,EACH,aAAO8kC,IAEP,aAAOhM,GAE2C0M,WAAYA,GACtEb,GAAyBxB,IAkLvBkC,GAAW,WACbxlB,GAAe,SAAAK,GAAe,OAAI,KAClC3C,GAAmBskB,EAAYnqC,GAAM8I,MAAK,SAAAC,GACnB,YAAfA,EAAItF,QACJgpC,GAAiB,SAAAuB,GAAe,OAAI,KACpCV,GAAYztB,EAAapO,MACzB86B,EAAc,IACd1jB,EAAQ,IACRV,GAAe,SAAAK,GAAe,OAAI,OAElCL,GAAe,SAAAK,GAAe,OAAI,KAClCxB,KACArjB,KAAQT,MAAM,mDAGjBwL,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACdwZ,GAAe,SAAAK,GAAe,OAAI,KAClCxB,KACArjB,KAAQT,MAAM,mDAG1B,OACI,oCACI,yBAAK6B,UAAU,kCAEP6L,EAAc,yBAAK9L,MAAM,SAASC,UAAU,QAA9B,qBACY,kBAACyR,GAAA,EAAD,CAASzB,UAAU,OAAOZ,KAAK,KAAKa,QAAQ,UAEhE,oCACE,kBAAC,KAAD,MACA,yBAAKjQ,UAAU,OACX,yBAAKA,UAAU,uEAAf,eAEyByB,IAAjBqZ,GAA+C,OAAjBA,GAA0C,KAAjBA,QAA6CrZ,IAAtBqZ,EAAapO,KAAqB,MAAQ,YAC5H,0BAAM1M,UAAU,iBAAiB6F,QAAS,kBAAMsd,OAAhD,UAHJ,WAQiB1hB,IAAjBqZ,GAA+C,OAAjBA,GAA0C,KAAjBA,QAA6CrZ,IAAtBqZ,EAAapO,KACrF,qCAEF,oCACI,yBAAK1M,UAAU,OACX,yBAAKA,UAAU,uEAAf,eACiB8a,GAAgBA,EAAaN,OAGlD,yBAAKxa,UAAU,OACX,yBAAKA,UAAU,yCAEX,yBAAKA,UAAU,4BACX,2BACInF,KAAK,OACLmF,UAAU,2CACVgK,YAAY,kBACZC,SAAU,SAAClH,GAAD,OAzXzC,SAACA,GAClB,IAAIhH,EAAQgH,EAAE+G,OAAO/N,MACjBmtC,EAAeroC,GAAmBymC,EAAUvrC,GAChDyoB,GAAa,SAAAuB,GAAa,OAAIhqB,KAC9BuoB,EAAY4kB,GAqXqDhgB,CAAanmB,IAC9BhH,MAAOwoB,IAGX,4BAAQvkB,UAAU,yBACdnF,KAAK,QACLgL,QAAS,kBAzXzC,WAChB,IAAIqjC,EAAeroC,GAAmBymC,EAAU,IAChD9iB,GAAa,SAAAuB,GAAa,MAAI,MAC9BzB,EAAY4kB,GAsXmD/f,SAM/B,yBAAKnpB,UAAU,OACX,yBAAKA,UAAU,2CAGX,yBAAKA,UAAU,OACX,yBAAKA,UAAU,2CAEXsnC,EACI,yBAAKhiC,GAAG,kBAAkBtF,UAAU,mDAChC,kBAAC,KAAD,CACImK,SAAS,KACT1L,KAAM4lB,EACNja,QAASm6B,IAtHxD,SAAA57B,GACb,IAAIw9B,EAAiC,OAAlBx9B,EAAI+7B,UACnBqB,OAA8CtkC,IAAzBkH,EAAIu9B,kBAA2D,OAAzBv9B,EAAIu9B,kBAAsD,KAAzBv9B,EAAIu9B,iBAChGiD,EAAO,eAAQxgC,EAAR,CAAaw9B,YAAaA,EAAaJ,kBAAmBA,IACrEyB,EAAc2B,GACdrlB,EAAQ,QACR4jB,GAAiB,SAAAuB,GAAe,OAAI,QAtC5B,WACRzB,EAAc,CACV4B,YAAatuB,EAAazO,MAC1Bg9B,SAAUvuB,EAAapO,KACvBi5B,SAAU,GACVhB,YAAa,GACbD,UAAW,KACXI,aAAc,GACduB,eAAgB,GAChBtB,aAAa,GACbC,aAAc,GACdsB,eAAe,GACfzJ,SAAU,GACV9I,WAAY,GACZmR,YAAa,GACbD,UAAU,EACVqE,kBAAoB,IACpBzD,mBAAoB,GACpBC,qBAAsB,GACtByD,qBAAsB,EACtB3D,gBAAiB,MACjBO,aAAa,EACbJ,mBAAmB,EACnBC,gBAAiB,GACjBE,iBAAkB,GAClBD,gBAAiB,GACjBpB,WAAW,IAEf/gB,EAAQ,OACR4jB,GAAiB,SAAAuB,GAAe,OAAI,QA0HwB1+B,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRS,WAAW,qCACXC,iBAAkBtD,MAGxB,yBAAK3C,IAAI,gBAAgB2C,WAkB3E,kBAAC,GAAD,CACIw9B,WAAYA,EACZtqB,aAAcA,EACd7f,KAAMA,EACNoqC,mBArTe,WACvBqC,GAAiB,SAAAuB,GAAe,OAAKA,KACrCzB,EAAc,IACd1jB,EAAQ,KAmTApF,KA5IC,WAGT,GAAK0mB,EAAWe,aAAgBf,EAAWH,UAAaG,EAAWW,oBAAqBX,EAAWP,UAuB/FuD,IAAY,SAAAoB,GAAY,OAAKA,SAvB8E,CAC3G,IAAI9E,EAAaU,EAAWe,YAAqBf,EAAWV,UAAlB,KACtCC,EAAeS,EAAWe,YAAmBf,EAAWT,YAAhB,GACxCO,EAAeE,EAAWH,SAAgBG,EAAWF,YAAhB,GACrCc,EAAmBZ,EAAWW,kBAAyBX,EAAWY,gBAAhB,GAClDC,EAAmBb,EAAWW,kBAAyBX,EAAWa,gBAAhB,GAClDC,EAAoBd,EAAWW,kBAAyBX,EAAWc,iBAAhB,GACnDpB,EAAeM,EAAWP,UAAY,GAAKO,EAAWN,aACtDuB,EAAiBjB,EAAWP,UAAY,GAAKO,EAAWiB,eACxDtB,EAAeK,EAAWP,UAAY,GAAKO,EAAWL,aACtDC,EAAeI,EAAWP,UAAY,GAAKO,EAAWJ,aACtDsB,EAAiBlB,EAAWP,UAAY,GAAKO,EAAWkB,eACxDzJ,EAAWuI,EAAWP,UAAY,GAAKO,EAAWvI,SAClD9I,EAAaqR,EAAWP,UAAY,GAAKO,EAAWrR,WACxDyT,GAAc,SAAAiC,GACV,OAAO,eACAA,EADP,CACuB/E,UAAWA,EAAWC,YAAaA,EAAaO,YAAaA,EAAagB,iBAAkBA,EAC/GF,gBAAiBA,EAAiBC,gBAAiBA,EAAiBnB,aAAcA,EAAcuB,eAAgBA,EAChHtB,aAAcA,EAAcC,aAAcA,EAAcsB,eAAgBA,EAAgBzJ,SAAUA,EAAU9I,WAAYA,OAGhIqU,IAAY,SAAAoB,GAAY,OAAKA,OAsHzBlE,cAAeA,EACfjnB,kBA9Nc,SAAA7X,GACtB,IAAIzK,EAAQyK,EAAIsD,OAAO/N,MACC,aAApByK,EAAIsD,OAAO0Q,KACXgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4B9D,SAAU5pC,OAC7C,gBAApByK,EAAIsD,OAAO0Q,KAClBgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4B9E,YAAa5oC,OAChD,aAApByK,EAAIsD,OAAO0Q,KAClBgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4BxE,UAAWwE,EAAexE,cAM7D,gBAApBz+B,EAAIsD,OAAO0Q,KAClBgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4BvE,YAAanpC,OAChD,iBAApByK,EAAIsD,OAAO0Q,KAClBgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4B3E,aAAc/oC,OACjD,iBAApByK,EAAIsD,OAAO0Q,KAClBgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4BzE,aAAcjpC,OACjD,uBAApByK,EAAIsD,OAAO0Q,KAClBgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4B5D,mBAAoB9pC,OACvD,gBAApByK,EAAIsD,OAAO0Q,KAClBgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4BtD,aAAcsD,EAAetD,iBAChE,sBAApB3/B,EAAIsD,OAAO0Q,KAClBgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4B1D,mBAAoB0D,EAAe1D,uBACtE,cAApBv/B,EAAIsD,OAAO0Q,MAClBgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4B5E,WAAY4E,EAAe5E,gBAqMrFpmB,qBAlMiB,SAAC/E,EAAMnW,GACjB,cAAXA,EACAikC,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4B/E,UAAWhrB,OACvD,aAAXnW,EACPikC,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4B5M,SAAUnjB,EAAKmvB,WAAY9U,WAAYra,EAAKc,UACxF,gBAAXjX,GACPikC,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4BzD,gBAAiBtsB,EAAKgwB,SAAUzD,gBAAiBvsB,EAAKiwB,SAAUzD,iBAAkBxsB,EAAKkwB,sBA6LjJrE,wBAAyBA,GACzB8C,aAAcA,KAElB,kBAAC,GAAD,CACInlB,sBAAuBA,EACvBC,sBAAuBA,KAE3B,kBAAC,GAAD,CACIqjB,wBAAyBA,EACzBjB,wBAAyBA,GACzBkB,kBA9Sc,SAACoD,GACc,gBAAjCnD,GAAsBnjC,OACc,qBAAhCsmC,EAAYjE,gBACZ4B,GAAc,SAAAiC,GACV,OAAO,eACAA,EADP,CACuBF,qBAAsB,KACzC3D,gBAAiBiE,EAAYjE,gBAC7B0D,kBAAoD,qBAAhCO,EAAYjE,gBAA0C,IAAM,SAIxF4B,GAAc,SAAAiC,GACV,OAAO,eACAA,EADP,CACuBF,qBAAsBM,EAAYN,qBACrD3D,gBAAiBiE,EAAYjE,gBAC7B0D,kBAAoD,qBAAhCO,EAAYjE,gBAA0C,IAAM,SAKtD,gBAAjCc,GAAsBnjC,OAC3BikC,GAAc,SAAAiC,GACV,OAAO,eACAA,EADP,CAEI1E,aAAc8E,EAAY9E,aAC1BC,aAAc6E,EAAY7E,aAC1BsB,eAAgBuD,EAAYvD,oBAGI,UAAjCI,GAAsBnjC,OAC7BikC,GAAc,SAAAiC,GACV,OAAO,eACAA,EADP,CAEI5M,SAAUgN,EAAYhB,WACtB9U,WAAY8V,EAAYrvB,UAGQ,gBAAjCksB,GAAsBnjC,OAC7BikC,GAAc,SAAAiC,GACV,OAAO,eACAA,EADP,CAEIzD,gBAAiB6D,EAAYH,SAC7BzD,gBAAiB4D,EAAYF,SAC7BzD,iBAAkB2D,EAAYD,qBAIA,iBAAjClD,GAAsBnjC,SACc,sBAArCmjC,GAAsBqC,WACtBvB,GAAc,SAAAiC,GACV,OAAO,eACAA,EADP,CACuB5D,mBAAoBgE,EAAYC,cACnDhE,qBAAsB+D,EAAYrvB,UAI1CgtB,GAAc,SAAAiC,GACV,OAAO,eACAA,EADP,CACuB3E,aAAc+E,EAAYC,cAC7CzD,eAAgBwD,EAAYrvB,WAK5CmtB,GAA2B,SAAAqB,GAA2B,OAAKA,KAC3Dd,GAAyB,KA8OjBxB,sBAAuBA,OCfxBqD,GA7gBgB,SAACpqC,GAAW,IAAD,EACN4W,mBAAS,IADH,oBAC/B+wB,EAD+B,KACrBC,EADqB,OAENhxB,mBAAS,IAFH,oBAE/B8N,EAF+B,KAErBC,EAFqB,OAGJ/N,mBAAS,IAHL,oBAG/BgO,EAH+B,KAGpBC,EAHoB,OAIAjO,oBAAS,GAJT,oBAI/B1K,EAJ+B,KAIlBuX,EAJkB,OAKE7M,mBAAS,IALX,oBAK/BuE,EAL+B,KAKjB6J,EALiB,OAMoBpO,oBAAS,GAN7B,iCAOFA,mBAAS,KAPP,oBAO/B6uB,EAP+B,KAOnBoC,EAPmB,OAQFjxB,mBAAS,IARP,oBAQ/B8lB,EAR+B,KAQnBoL,EARmB,OASdlxB,mBAAS,IATK,oBAS/Btb,EAT+B,KASzB6oB,EATyB,OAUIvN,oBAAS,GAVb,oBAU/B+uB,EAV+B,KAUhBoC,EAVgB,OAWwBnxB,oBAAS,GAXjC,oBAW/BiwB,EAX+B,KAWNmB,EAXM,OAYQpxB,mBAAS,IAZjB,oBAY/BqxB,EAZ+B,KAYdC,EAZc,OAaMtxB,mBAAS,IAbf,oBAa/BuxB,EAb+B,KAafC,EAbe,QAcQxxB,mBAAS,IAdjB,sBAc/ByxB,GAd+B,MAcdC,GAdc,SAeoB1xB,mBAAS,IAf7B,sBAe/BmwB,GAf+B,MAeRwB,GAfQ,MAgBhC9sC,GAAiB,CAAEof,KAAM,cAAe9N,KAAM,KAAML,MAAO,MAhB3B,GAiBNkK,oBAAS,GAjBH,sBAiB/B4xB,GAjB+B,MAiBrBC,GAjBqB,SAkBE7xB,mBAAS,IAlBX,sBAkB/B8xB,GAlB+B,MAkBjBC,GAlBiB,MAmBtCtxB,qBAAU,WAGN,OAFA2N,GAAgB,SAAAW,GAAsB,OAAO,eAAKlqB,OAClDopB,GAAa,SAAAuB,GAAa,MAAI,MACvB,WAC2C,OAA1CzF,SAA4F7e,IAA1C6e,IAClDA,GAAsC9W,OAAO,qEAEL,OAAxCqX,SAAwFpf,IAAxCof,IAChDA,GAAoCrX,OAAO,uEAEP,OAApCmX,SAAgFlf,IAApCkf,IAC5CA,GAAgCnX,OAAO,mEAEI,OAA3CwX,SAA8Fvf,IAA3Cuf,IACnDA,GAAuCxX,OAAO,0EAEG,OAAjD0X,SAA0Gzf,IAAjDyf,IACzDA,GAA6C1X,OAAO,qEAET,OAA3C4X,SAA8F3f,IAA3C2f,IACnDA,GAAuC5X,OAAO,sEAEC,OAA/C8X,SAAsG7f,IAA/C6f,IACvDA,GAA2C9X,OAAO,wEAG3D,IAEHwN,qBAAU,WACF8D,GAAgBA,EAAapO,OAC7B0W,GAAe,SAAAK,GAAe,OAAI,KAClC8kB,GAAYztB,EAAapO,MACzB6sB,GAAcze,EAAapO,MAC3B87B,KACAC,KACAC,KACAC,QAEL,CAAC7tB,IAGJ9D,qBAAU,gBACsBvV,IAAxB2jC,EAAWO,UACXiD,OACL,CAACT,KAEJ,IAAMI,GAAc,SAAC77B,GAEjBkU,GAAmBlU,GAAM3I,MAAK,SAAAC,GAE1B,GAAmB,MAAfA,EAAItF,QACJ,GAAIsF,GAAOA,EAAIvF,MAAQuF,EAAIvF,MAAqB,OAAbuF,EAAIvF,MAAiB8B,MAAMC,QAAQwD,EAAIvF,MAAO,CAC7E,IAAIA,EAAOuF,EAAIvF,KACf8oC,EAAY9oC,GACZ6lB,EAAY7lB,SAGhBwjB,KACArjB,KAAQT,MAAM,sDACdC,QAAQD,MAAM,wCAElBilB,GAAe,SAAAK,GAAe,OAAI,QAGjC9Z,OAAM,SAAAC,GACHwZ,GAAe,SAAAK,GAAe,OAAI,KAClCxB,KACArjB,KAAQT,MAAM,sDACdC,QAAQD,MAAM,4CAcpBo7B,GAAgB,SAACjoB,GAEnBiP,GAAqBjP,GAAUvN,MAAK,SAAAC,GAEhC,GAAmB,MAAfA,EAAItF,QACJ,GAAIsF,GAAOA,EAAIvF,MAAQuF,EAAIvF,MAAqB,OAAbuF,EAAIvF,MAAiB8B,MAAMC,QAAQwD,EAAIvF,MAAO,CAC7E,IAAIA,EAAI,CAAI,CACRwX,cAAe,GACfuE,KAAM,GACNquB,WAAY,GACZC,IAAK,KAJD,oBAKF9kC,EAAIvF,OACVgpC,EAAchpC,SAGlBwjB,KACArjB,KAAQT,MAAM,wDACdC,QAAQD,MAAM,2CAIjBwL,OAAM,SAAAC,GACHqY,KACArjB,KAAQT,MAAM,wDACdC,QAAQD,MAAM,4CAGpBqqC,GAAqB,WACvBvnB,GAAsBnG,EAAapO,MAAM3I,MAAK,SAAAC,GAEvB,MAAfA,EAAItF,OACAsF,GAAOA,EAAIvF,MAAQuF,EAAIvF,MAAqB,OAAbuF,EAAIvF,MAAiB8B,MAAMC,QAAQwD,EAAIvF,OACtEopC,EAAmB7jC,EAAIvF,OAG3BwjB,KACArjB,KAAQT,MAAM,6DACdC,QAAQD,MAAM,iDAIjBwL,OAAM,SAAAC,GACHqY,KACArjB,KAAQT,MAAM,6DACdC,QAAQD,MAAM,iDAGpBsqC,GAAqB,WACvBtnB,GAA4BrG,EAAapO,MAAM3I,MAAK,SAAAC,GAE7B,MAAfA,EAAItF,OACAsF,GAAOA,EAAIvF,MAAQuF,EAAIvF,MAAqB,OAAbuF,EAAIvF,MAAiB8B,MAAMC,QAAQwD,EAAIvF,OACtEspC,EAAkB/jC,EAAIvF,OAG1BwjB,KACArjB,KAAQT,MAAM,6DACdC,QAAQD,MAAM,6CAIjBwL,OAAM,SAAAC,GACHqY,KACArjB,KAAQT,MAAM,6DACdC,QAAQD,MAAM,6CAGpBuqC,GAAsB,WACxBrnB,KAAwBtd,MAAK,SAAAC,GAEN,MAAfA,EAAItF,OACAsF,GAAOA,EAAIvF,MAAQuF,EAAIvF,MAAqB,OAAbuF,EAAIvF,MAAiB8B,MAAMC,QAAQwD,EAAIvF,OACtEwpC,GAAmBjkC,EAAIvF,OAG3BwjB,KACArjB,KAAQT,MAAM,8DACdC,QAAQD,MAAM,6CAIjBwL,OAAM,SAAAC,GACHqY,KACArjB,KAAQT,MAAM,8DACdC,QAAQD,MAAM,6CAGpBwqC,GAAqB,WACvBpnB,KAA4Bxd,MAAK,SAAAC,GAEV,MAAfA,EAAItF,OACAsF,GAAOA,EAAIvF,MAAQuF,EAAIvF,MAAqB,OAAbuF,EAAIvF,MAAiB8B,MAAMC,QAAQwD,EAAIvF,OACtE6pC,GAAgBtkC,EAAIvF,OAGxBwjB,KACArjB,KAAQT,MAAM,6DACdC,QAAQD,MAAM,iDAIjBwL,OAAM,SAAAC,GACHqY,KACArjB,KAAQT,MAAM,8DACdC,QAAQD,MAAM,iDAUpBonC,GAA0B,SAAChiC,GAA2B,IAAnBwlC,EAAkB,uDAAP,GAChDpB,GAA2B,SAAAqB,GAA2B,OAAKA,KAC3D,IAYItC,EAAwB,CAAEnjC,OAAQA,EAAQ9E,KAX/B,gBAAX8E,EACI,aAAOqkC,GACO,gBAAXrkC,EACH,aAAOukC,GACO,iBAAXvkC,EACH,aAAOykC,IACO,gBAAXzkC,EACH,aAAO8kC,IAEP,aAAOhM,GAE2C0M,WAAYA,GACtEb,GAAyBxB,IA6KvBkC,GAAW,WACbxlB,GAAe,SAAAK,GAAe,OAAI,KAClC3C,GAAmBskB,EAAYnqC,GAAM8I,MAAK,SAAAC,GACnB,YAAfA,EAAItF,QACJgpC,GAAiB,SAAAuB,GAAe,OAAI,KACpCV,GAAYztB,EAAapO,MACzB86B,EAAc,IACd1jB,EAAQ,IACRV,GAAe,SAAAK,GAAe,OAAI,OAElCL,GAAe,SAAAK,GAAe,OAAI,KAClCxB,KACArjB,KAAQT,MAAM,mDAGjBwL,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACdwZ,GAAe,SAAAK,GAAe,OAAI,KAClCxB,KACArjB,KAAQT,MAAM,mDAG1B,OACI,oCACI,yBAAK6B,UAAU,kCAEP6L,EAAc,yBAAK9L,MAAM,SAASC,UAAU,QAA9B,qBACY,kBAACyR,GAAA,EAAD,CAASzB,UAAU,OAAOZ,KAAK,KAAKa,QAAQ,UAEhE,oCACE,kBAAC,KAAD,MAGQ,oCACI,yBAAKjQ,UAAU,OACX,yBAAKA,UAAU,uEAAf,4BAIJ,yBAAKA,UAAU,OACX,yBAAKA,UAAU,yCAEX,yBAAKA,UAAU,4BACX,2BACInF,KAAK,OACLmF,UAAU,2CACVgK,YAAY,kBACZC,SAAU,SAAClH,GAAD,OAxWzC,SAACA,GAClB,IAAIhH,EAAQgH,EAAE+G,OAAO/N,MACjBmtC,EAAeroC,GAAmBymC,EAAUvrC,GAChDyoB,GAAa,SAAAuB,GAAa,OAAIhqB,KAC9BuoB,EAAY4kB,GAoWqDhgB,CAAanmB,IAC9BhH,MAAOwoB,IAGX,4BAAQvkB,UAAU,yBACdnF,KAAK,QACLgL,QAAS,kBAxWzC,WAChB,IAAIqjC,EAAeroC,GAAmBymC,EAAU,IAChD9iB,GAAa,SAAAuB,GAAa,MAAI,MAC9BzB,EAAY4kB,GAqWmD/f,SAM/B,yBAAKnpB,UAAU,OACX,yBAAKA,UAAU,2CAGX,yBAAKA,UAAU,OACX,yBAAKA,UAAU,2CAEXsnC,EACI,yBAAKhiC,GAAG,kBAAkBtF,UAAU,mDAChC,kBAAC,KAAD,CACImK,SAAS,gBACT1L,KAAM4lB,EACNja,QAASm6B,IA5GxD,SAAA57B,GACb,IAAIw9B,EAAiC,OAAlBx9B,EAAI+7B,UACnBqB,OAA8CtkC,IAAzBkH,EAAIu9B,kBAA2D,OAAzBv9B,EAAIu9B,kBAAsD,KAAzBv9B,EAAIu9B,iBAChGiD,EAAO,eAAQxgC,EAAR,CAAaw9B,YAAaA,EAAaJ,kBAAmBA,IACrEyB,EAAc2B,GACdrlB,EAAQ,QACR4jB,GAAiB,SAAAuB,GAAe,OAAI,QAtC5B,WACRzB,EAAc,CACV4B,YAAatuB,EAAazO,MAC1Bg9B,SAAUvuB,EAAapO,KACvBi5B,SAAU,GACVhB,YAAa,GACbD,UAAW,KACXI,aAAc,GACduB,eAAgB,GAChBtB,aAAa,GACbC,aAAc,GACdsB,eAAe,GACfzJ,SAAU,GACV9I,WAAY,GACZmR,YAAa,GACbD,UAAU,EACVqE,kBAAoB,IACpBzD,mBAAoB,GACpBC,qBAAsB,GACtByD,qBAAsB,EACtB3D,gBAAiB,MACjBO,aAAa,EACbJ,mBAAmB,EACnBC,gBAAiB,GACjBE,iBAAkB,GAClBD,gBAAiB,GACjBpB,WAAW,IAEf/gB,EAAQ,OACR4jB,GAAiB,SAAAuB,GAAe,OAAI,QAgHwB1+B,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRS,WAAW,qCACXC,iBAAkBtD,MAGxB,yBAAK3C,IAAI,gBAAgB2C,WAkB3E,kBAAC,GAAD,CACIw9B,WAAYA,EACZtqB,aAAcA,EACd7f,KAAMA,EACNoqC,mBAtSe,WACvBqC,GAAiB,SAAAuB,GAAe,OAAKA,KACrCzB,EAAc,IACd1jB,EAAQ,KAoSApF,KAlIC,WAET,GAAK0mB,EAAWe,aAAgBf,EAAWH,UAAaG,EAAWW,oBAAqBX,EAAWP,UAwB/FuD,IAAY,SAAAoB,GAAY,OAAKA,SAxB8E,CAC3G,IAAI9E,EAAaU,EAAWe,YAAqBf,EAAWV,UAAlB,KACtCC,EAAeS,EAAWe,YAAmBf,EAAWT,YAAhB,GACxCO,EAAeE,EAAWH,SAAgBG,EAAWF,YAAhB,GACrCc,EAAmBZ,EAAWW,kBAAyBX,EAAWY,gBAAhB,GAClDC,EAAmBb,EAAWW,kBAAyBX,EAAWa,gBAAhB,GAClDC,EAAoBd,EAAWW,kBAAyBX,EAAWc,iBAAhB,GACnDpB,EAAeM,EAAWP,UAAY,GAAKO,EAAWN,aACtDuB,EAAiBjB,EAAWP,UAAY,GAAKO,EAAWiB,eACxDtB,EAAeK,EAAWP,UAAY,GAAKO,EAAWL,aACtDC,EAAeI,EAAWP,UAAY,GAAKO,EAAWJ,aACtDsB,EAAiBlB,EAAWP,UAAY,GAAKO,EAAWkB,eACxDzJ,EAAWuI,EAAWP,UAAY,GAAKO,EAAWvI,SAClD9I,EAAaqR,EAAWP,UAAY,GAAKO,EAAWrR,WAExDyT,GAAc,SAAAiC,GACV,OAAO,eACAA,EADP,CACuB/E,UAAWA,EAAWC,YAAaA,EAAaO,YAAaA,EAAagB,iBAAkBA,EAC/GF,gBAAiBA,EAAiBC,gBAAiBA,EAAiBnB,aAAcA,EAAcuB,eAAgBA,EAChHtB,aAAcA,EAAcC,aAAcA,EAAcsB,eAAgBA,EAAgBzJ,SAAUA,EAAU9I,WAAYA,OAGhIqU,IAAY,SAAAoB,GAAY,OAAKA,OA2GzBlE,cAAeA,EACfjnB,kBA9Mc,SAAA7X,GACtB,IAAIzK,EAAQyK,EAAIsD,OAAO/N,MACC,aAApByK,EAAIsD,OAAO0Q,KACXgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4B9D,SAAU5pC,OAC7C,gBAApByK,EAAIsD,OAAO0Q,KAClBgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4B9E,YAAa5oC,OAChD,aAApByK,EAAIsD,OAAO0Q,KAClBgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4BxE,UAAWwE,EAAexE,cAC7D,gBAApBz+B,EAAIsD,OAAO0Q,KAClBgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4BvE,YAAanpC,OAChD,iBAApByK,EAAIsD,OAAO0Q,KAClBgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4B3E,aAAc/oC,OACjD,iBAApByK,EAAIsD,OAAO0Q,KAClBgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4BzE,aAAcjpC,OACjD,uBAApByK,EAAIsD,OAAO0Q,KAClBgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4B5D,mBAAoB9pC,OACvD,gBAApByK,EAAIsD,OAAO0Q,KAClBgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4BtD,aAAcsD,EAAetD,iBAChE,sBAApB3/B,EAAIsD,OAAO0Q,KAClBgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4B1D,mBAAoB0D,EAAe1D,uBACtE,cAApBv/B,EAAIsD,OAAO0Q,MAClBgtB,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4B5E,WAAY4E,EAAe5E,gBA0LrFpmB,qBAvLiB,SAAC/E,EAAMnW,GACjB,cAAXA,EACAikC,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4B/E,UAAWhrB,OACvD,aAAXnW,EACPikC,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4B5M,SAAUnjB,EAAKmvB,WAAY9U,WAAYra,EAAKc,UACxF,gBAAXjX,GACPikC,GAAc,SAAAiC,GAAoB,OAAO,eAAKA,EAAZ,CAA4BzD,gBAAiBtsB,EAAKgwB,SAAUzD,gBAAiBvsB,EAAKiwB,SAAUzD,iBAAkBxsB,EAAKkwB,sBAkLjJrE,wBAAyBA,GACzB8C,aAAcA,KAGlB,kBAAC,GAAD,CACI7B,wBAAyBA,EACzBjB,wBAAyBA,GACzBkB,kBA3Rc,SAACoD,GACc,gBAAjCnD,GAAsBnjC,OACc,qBAAhCsmC,EAAYjE,gBACZ4B,GAAc,SAAAiC,GACV,OAAO,eACAA,EADP,CACuBF,qBAAsB,KACzC3D,gBAAiBiE,EAAYjE,gBAC7B0D,kBAAoD,qBAAhCO,EAAYjE,gBAA0C,IAAM,SAIxF4B,GAAc,SAAAiC,GACV,OAAO,eACAA,EADP,CACuBF,qBAAsBM,EAAYN,qBACrD3D,gBAAiBiE,EAAYjE,gBAC7B0D,kBAAoD,qBAAhCO,EAAYjE,gBAA0C,IAAM,SAKtD,gBAAjCc,GAAsBnjC,OAC3BikC,GAAc,SAAAiC,GACV,OAAO,eACAA,EADP,CAEI1E,aAAc8E,EAAY9E,aAC1BC,aAAc6E,EAAY7E,aAC1BsB,eAAgBuD,EAAYvD,oBAGI,UAAjCI,GAAsBnjC,OAC7BikC,GAAc,SAAAiC,GACV,OAAO,eACAA,EADP,CAEI5M,SAAUgN,EAAYhB,WACtB9U,WAAY8V,EAAYrvB,UAGQ,gBAAjCksB,GAAsBnjC,OAC7BikC,GAAc,SAAAiC,GACV,OAAO,eACAA,EADP,CAEIzD,gBAAiB6D,EAAYH,SAC7BzD,gBAAiB4D,EAAYF,SAC7BzD,iBAAkB2D,EAAYD,qBAIA,iBAAjClD,GAAsBnjC,SACc,sBAArCmjC,GAAsBqC,WACtBvB,GAAc,SAAAiC,GACV,OAAO,eACAA,EADP,CACuB5D,mBAAoBgE,EAAYC,cACnDhE,qBAAsB+D,EAAYrvB,UAI1CgtB,GAAc,SAAAiC,GACV,OAAO,eACAA,EADP,CACuB3E,aAAc+E,EAAYC,cAC7CzD,eAAgBwD,EAAYrvB,WAK5CmtB,GAA2B,SAAAqB,GAA2B,OAAKA,KAC3Dd,GAAyB,KA2NjBxB,sBAAuBA,OCrhB/B1zB,GAAYC,KAAZD,QAEFg3B,G,YAEF,WAAYrqC,GAAQ,IAAD,8BACf,4CAAMA,KACDhF,MAAQ,CACT2Z,UAAW,KAGf,EAAK0Y,aAAe,EAAKA,aAAa7oB,KAAlB,gBANL,E,0EAmBN8lC,GAETnqC,KAAK2D,UAAS,SAAAyC,GAAS,MAAK,CACxBoO,UAAW21B,Q,+BAOf,OACI,6BACI,6BACI,kBAAC,KAAD,CAAM92B,iBAAkBrT,KAAKnF,MAAM2Z,UAAWlB,UAAU,EAAOnJ,SAAUnK,KAAKktB,aAAcnyB,KAAK,QAC7F,kBAAC,GAAD,CAASwY,IAAI,cAAcpO,IAAI,KAC3B,kBAAC,GAAD,CAAwBqP,UAAWxU,KAAKnF,MAAM2Z,UAAWrQ,QAASnE,KAAKH,MAAMsE,WAEjF,kBAAC,GAAD,CAASoP,IAAI,kBAAkBpO,IAAI,KAC/B,kBAAC,GAAD,CAAcqP,UAAWxU,KAAKnF,MAAM2Z,UAAWrQ,QAASnE,KAAKH,MAAMsE,kB,GAvC3D9D,aAmDrBkH,eAAW2iC,ICvDnB,SAASE,GAAqBzjB,GA2HjC,MA1HgB,CACZ,CACIpc,UAAW,UACXC,KAAM,aACNI,MAAM,EACNF,QAAS,0CACTC,YAAa,OACbG,UAAW,SAACC,GACR,YAAapJ,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCACnD,8BAAOA,EAAKkR,MAAM,KAAK,KAEvCpR,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEzD,CACI6B,UAAW,WACXC,KAAM,kBACNC,cAAe,aACfG,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDgC,QAAS,+BACTC,YAAa,OACbG,UAAW,SAACC,GACR,YAAapJ,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCACnD,8BAAOA,EAAKkR,MAAM,KAAK,MAG3C,CACI1R,UAAW,kBACXC,KAAM,UACNI,MAAM,EACNF,QAAS,+BACTC,YAAa,OACbG,UAAW,SAACC,EAAMlC,GACd,YAAalH,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCACnDlC,EAAIwhC,iBAEpBx/B,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEzD,CACI6B,UAAW,UACXC,KAAM,cACNI,MAAM,EACNF,QAAS,+BACTC,YAAa,OACbG,UAAW,SAACC,GACR,YAAapJ,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCACnD,8BAAOA,KAG3B,CACIR,UAAW,UACXC,KAAM,OACNI,MAAM,EACNF,QAAS,+BACTC,YAAa,OACbG,UAAW,SAACC,GACR,YAAapJ,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCACnD,8BAAOA,IAEvBF,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEzD,CACI6B,UAAW,QACXC,KAAM,eACNI,MAAM,EACNF,QAAS,+BACTC,YAAa,OACbG,UAAW,SAACC,GACR,YAAapJ,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCACnD,8BAAOA,IAEvBF,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEzD,CACI6B,UAAW,QACXC,KAAM,WACNI,MAAM,EACND,YAAa,QACbD,QAAS,iCACTI,UAAW,SAACC,GACR,YAAapJ,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCAC9C,GAARA,EAAkB,mCACf,8BrE4FrB,SAAwBA,GAC3B,OAAKA,GACS7H,GAAW6H,EAAM,GAAKm5B,KAAKoG,MAAMv/B,EAAM,KAAQ,EAGjD7H,GAAW6H,EAAM,GAGjBm5B,KAAKoG,MAAMv/B,IAEVnJ,WAAW+R,QAAQ,0BAA2B,OATzC,IqE7Fa42B,CAAex/B,KAEtCF,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEzD,CACI6B,UAAW,YACXC,KAAM,QACNI,MAAM,EACND,YAAa,QACbD,QAAS,iCACTI,UAAW,SAACC,GACR,YAAapJ,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCAC9C,GAARA,EAAkB,oCACf,8BAAOjJ,GAAiBiJ,KAExCF,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEzD,CACI6B,UAAW,QACXC,KAAM,SACNI,MAAM,EACND,YAAa,QACbD,QAAS,iCACTI,UAAW,SAACC,EAAMlC,GACd,YAAalH,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCAGvDA,EAAO,EAAU,0BAAM7K,UAAU,gBAAgB2I,EAAI2hC,UACnD3nC,GAAYK,GAAW6H,EAAM,IAAM,IACnClI,GAAYK,GAAW6H,EAAM,KAC1BA,EAAO,EAAU,0BAAM7K,UAAU,gBAAgB2I,EAAI2hC,UACxD3nC,GAAYK,GAAW6H,EAAM,IAAM,IACnClI,GAAYK,GAAW6H,EAAM,KACvB,qCAIpBF,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,MAgLjE,SAASF,GAAgBC,EAAOC,GAC5B,OAAKD,EACc,QAAVA,EAAyB,0BAAMvI,UAAU,6BAC/B,SAAVuI,EAA0B,0BAAMvI,UAAU,2BAC5C,KAHa,0BAAMA,UAAU,wBCnSxC,IAqGeuqC,GArGI,WAAO,IAAD,EACiBh0B,oBAAS,GAD1B,oBACd1K,EADc,KACDuX,EADC,OAEe7M,mBAAS,MAFxB,oBAEdi0B,EAFc,KAEFC,EAFE,OAG2Bl0B,mBAAS,IAHpC,oBAGdm0B,EAHc,KAGIC,EAHJ,KAIfvvC,EAAiB0b,aAAY,SAAAnc,GAAK,OAAI6hB,GAAgB7hB,EAAO,CAAC,YAAa,sBAC3Ee,EAAqBob,aAAY,SAAAnc,GAAK,OAAI6hB,GAAgB7hB,EAAO,CAAC,aAAc,0BACtFqc,qBAAU,WAGN,OADA4zB,IACO,WAEuD,OAAtDppB,SAAoH/f,IAAtD+f,IAC9DA,GAAkDhY,OAAO,qFAGlE,IAGH,IAAMohC,EAAkB,WAChBxvC,GAAkBM,GAAsD,OAAhCA,EAAmBkgB,aAC3Dxd,QAAQC,IAAI,qBAAuB3C,GACnC0nB,GAAe,SAAAK,GAAe,OAAI,KnC2jBE,SAAConB,GAEa,OAAtDrpB,SAAoH/f,IAAtD+f,IAC9DA,GAAkDhY,OAAO,gDAI7D,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBA+X,GAAoDtiB,EAAYqE,SAEzB,IAAItH,SAAQ,SAAUC,EAASoC,GAGlEQ,GAFO,UAAMtC,IAAN,YxCpjB0B,oCwCojB1B,wBAAkEquC,EAAlE,sBAEErpB,IAAmDzd,MACxD,SAAAC,GACQA,EAAIvF,KACJvC,EAAQ8H,EAAIvF,MAEZH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,6DAA8DuL,GAC1EtL,EAAOsL,UmCplBXkhC,CAAiCpvC,EAAmBkgB,YAAY7X,MAAK,SAAAC,GAG7DA,EACIA,GAAOA,EAAIjI,OAASiI,EAAIjI,MAAM0E,OAAS,GAAiC,OAA5BuD,EAAIjI,MAAM,GAAGgvC,YAAuBxqC,MAAMC,QAAQwD,EAAIjI,MAAM,GAAGgvC,cAC3GN,EAAczmC,EAAIjI,MAAM,GAAGgvC,YAC3BJ,EAAoB3mC,EAAIjI,MAAM,GAAGgvC,cAGrC9oB,KACArjB,KAAQT,MAAM,qEACdC,QAAQD,MAAM,0DAElBilB,GAAe,SAAAK,GAAe,OAAI,QAGjC9Z,OAAM,SAAAC,GACHwZ,GAAe,SAAAK,GAAe,OAAI,KAClCxB,KACArjB,KAAQT,MAAM,qEACdC,QAAQD,MAAM,8DAiB9B,OACI,oCAEQ0N,EAAc,yBAAK9L,MAAM,SAASC,UAAU,6BAA9B,4BACgB,kBAACyR,GAAA,EAAD,CAASzB,UAAU,OAAOZ,KAAK,KAAKa,QAAQ,UAEpE,oCAEMu6B,EACI,6BACI,yBAAKxqC,UAAU,OACX,yBAAKA,UAAU,+BACX,2BAAOnF,KAAK,OAAOmP,YAAY,qBAAqBhK,UAAU,mBAAmBiK,SAAU,SAAClH,GAAD,OApBjG,SAACc,GAC/B,GAA2B,KAAvBA,EAAMiG,OAAO/N,MACb4uC,EAAoBH,OACjB,CACH,IAAIzgC,EAAYlJ,GAAmB2pC,EAAY3mC,EAAMiG,OAAO/N,MAAO,CAAC,UAAW,WAAY,MAAO,UAAW,UAAW,QAAS,QAAS,YAAY,UACtJ4uC,EAAoB5gC,IAe8GihC,CAA0BjoC,QAIpI,yBAAK/C,UAAU,YACX,yBAAKA,UAAU,iCACX,yBAAKsF,GAAG,wBAAwBtF,UAAU,mDACtC,kBAAC,KAAD,CACImK,SAAS,KACT1L,KAAMisC,EACNtgC,QAAS8/B,KACT3/B,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRS,WAAW,qCACXC,iBAAkBtD,SAKpC,yBAAK3C,IAAI,eAAejF,UAAU,gDAAgD4H,OC4DrGqjC,GAtJQ,WAAO,IAAD,EACa10B,oBAAS,GADtB,oBAClB1K,EADkB,KACLuX,EADK,OAEmB7M,mBAAS,MAF5B,oBAElB20B,EAFkB,KAEFC,EAFE,OAG+B50B,mBAAS,IAHxC,oBAGlB60B,EAHkB,KAGIC,EAHJ,KAInBjwC,EAAiB0b,aAAY,SAAAnc,GAAK,OAAI6hB,GAAgB7hB,EAAO,CAAC,YAAa,sBAC3Ee,EAAqBob,aAAY,SAAAnc,GAAK,OAAI6hB,GAAgB7hB,EAAO,CAAC,aAAc,0BACtFqc,qBAAU,WAGN,OADA4zB,IACO,WAE2D,OAA1DnpB,SAA4HhgB,IAA1DggB,IAClEA,GAAsDjY,OAAO,yFAGtE,IACH,IAAMohC,EAAkB,WAChBxvC,GAAkBM,GAAwD,OAAlCA,EAAmBkgB,aAC3Dxd,QAAQC,IAAI,qBAAuB3C,GACnC0C,QAAQC,IAAI,iBAAmBjD,GAC/BgoB,GAAe,SAAAK,GAAe,OAAI,KpCkmBM,SAACne,EAAGgmC,GAEU,OAA1D7pB,SAA4HhgB,IAA1DggB,IAClEA,GAAsDjY,OAAO,gDAIjE,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBAgY,GAAwDviB,EAAYqE,SAEzB,IAAItH,SAAQ,SAAUC,EAASoC,GAGtEQ,GAFO,UAAMtC,IAAN,YxC1lB8B,qDwC0lB9B,eAA6D8I,EAA7D,uBAA8EgmC,GAE5E9pB,IAAmDzd,MACxD,SAAAC,GACQA,EAAIvF,KACJvC,EAAQ8H,EAAIvF,MAEZH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,6DAA8DuL,GAC1EtL,EAAOsL,UoC3nBX2hC,CAAqCnwC,EAAeiR,MAAO3Q,EAAmBkgB,YAAY7X,MAAK,SAAAC,GAEvFA,GAAOzD,MAAMC,QAAQwD,IACjBmnC,EAAkBnnC,GAClBqnC,EAAwBrnC,KAE5Bie,KACArjB,KAAQT,MAAM,yEACdC,QAAQD,MAAM,8DAElBilB,GAAe,SAAAK,GAAe,OAAI,QAGjC9Z,OAAM,SAAAC,GACHwZ,GAAe,SAAAK,GAAe,OAAI,KAClCxB,KACArjB,KAAQT,MAAM,yEACdC,QAAQD,MAAM,kEAmE9B,OACI,oCAEQ0N,EAAc,yBAAK9L,MAAM,SAASC,UAAU,6BAA9B,4BACgB,kBAACyR,GAAA,EAAD,CAASzB,UAAU,OAAOZ,KAAK,KAAKa,QAAQ,UAEpE,oCAEMi7B,EACI,6BACI,yBAAKlrC,UAAU,OACX,yBAAKA,UAAU,+BACX,2BAAOnF,KAAK,OAAOmP,YAAY,qBAAqBhK,UAAU,mBAAmBiK,SAAU,SAAClH,GAAD,OApBjG,SAACc,GAC/B,GAA2B,KAAvBA,EAAMiG,OAAO/N,MACbsvC,EAAwBH,OACrB,CACH,IAAInhC,EAAYlJ,GAAmBqqC,EAAgBrnC,EAAMiG,OAAO/N,MAAO,CAAC,YAAa,sBAAuB,eAAgB,cAAe,cAAc,8BACzJsvC,EAAwBthC,IAe0GihC,CAA0BjoC,QAIpI,yBAAK/C,UAAU,YACX,yBAAKA,UAAU,iCACX,yBAAKsF,GAAG,wBAAwBtF,UAAU,mDACtC,kBAAC,KAAD,CACImK,SAAS,KACT1L,KAAM2sC,EACNhhC,QFPhC,CACZ,CACIC,UAAW,YACXC,KAAM,mBACNI,MAAM,EACNF,QAAS,0CACTC,YAAa,OACbG,UAAW,SAACC,GACR,YAAapJ,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCACnD,8BAAOA,EAAKkR,MAAM,KAAK,KAEvCpR,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,sBACXC,KAAM,UACNI,MAAM,EACNF,QAAS,+BACTC,YAAa,OACbG,UAAW,SAACC,EAAMlC,GACd,YAAalH,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCACnDlC,EAAIwhC,iBAEpBx/B,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,aACXC,KAAM,kBACNI,MAAM,EACNF,QAAS,+BACTC,YAAa,OACbG,UAAW,SAACC,EAAMlC,GACd,YAAalH,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCACnDlC,EAAIwhC,iBAEpBx/B,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,aACXC,KAAM,aACNI,MAAM,EACNF,QAAS,+BACTC,YAAa,OACbG,UAAW,SAACC,EAAMlC,GACd,YAAalH,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCACnDlC,EAAIwhC,iBAEpBx/B,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,SACXC,KAAM,SACNI,MAAM,EACNF,QAAS,+BACTC,YAAa,OACbG,UAAW,SAACC,EAAMlC,GACd,YAAalH,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCACnDlC,EAAIwhC,iBAEpBx/B,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,cACXC,KAAM,cACNI,MAAM,EACNF,QAAS,+BACTC,YAAa,OACbG,UAAW,SAACC,GACR,YAAapJ,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCACnD,8BAAOA,KAG3B,CACIR,UAAW,UACXC,KAAM,OACNI,MAAM,EACNF,QAAS,+BACTC,YAAa,OACbG,UAAW,SAACC,GACR,YAAapJ,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCACnD,8BAAOA,IAEvBF,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,eACXC,KAAM,gBACNI,MAAM,EACND,YAAa,QACbD,QAAS,iCACTI,UAAW,SAACC,EAAMlC,GACd,YAAalH,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCAC7C,IAATA,EAAmB,oCASjB,8BAAOlI,GAAYK,GAAW6H,EAAM,MAInDF,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,cACXC,KAAM,eACNI,MAAM,EACND,YAAa,QACbD,QAAS,iCACTI,UAAW,SAACC,EAAMlC,GACd,YAAalH,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCAC7C,IAATA,EAAmB,oCASjB,8BAAOlI,GAAYK,GAAW6H,EAAM,MAInDF,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,4BACXC,KAAM,iBACNI,MAAM,EACNF,QAAS,+BACTC,YAAa,OACbG,UAAW,SAACC,EAAMlC,GACd,YAAalH,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCACnD,8BAAOA,IAEvBF,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,aACXC,KAAM,aACNI,MAAM,EACNF,QAAS,+BACTC,YAAa,OACbG,UAAW,SAACC,EAAMlC,GACd,YAAalH,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCACnDlC,EAAIwhC,iBAEpBx/B,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,KAElD,CACI8B,UAAW,SACXC,KAAM,SACNI,MAAM,EACNF,QAAS,+BACTC,YAAa,OACbG,UAAW,SAACC,EAAMlC,GACd,YAAalH,IAAToJ,GAA+B,OAATA,GAA0B,KAATA,EAAoB,mCACnDlC,EAAIwhC,iBAEpBx/B,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,ME5JNgC,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRS,WAAW,qCACXC,iBAAkBtD,SAOtC,yBAAK3C,IAAI,eAAejF,UAAU,gDAAgD4H,OC/I1GoL,GAAYC,KAAZD,QACFw4B,G,YAEF,WAAY7rC,GAAQ,IAAD,8BACf,4CAAMA,KASV8rC,OAAS,WACL,EAAK9rC,MAAMsE,QAAQzB,KAAnB,UAA2B,EAAK7C,MAAM2pB,SAAtC,iBATA,EAAK3uB,MAAQ,CACT2Z,UAAU,KAGd,EAAK0Y,aAAe,EAAKA,aAAa7oB,KAAlB,gBACpB,EAAKsnC,OAAS,EAAKA,OAAOtnC,KAAZ,gBAPC,E,0EAcN8lC,GACTnqC,KAAK2D,UAAS,SAAAyC,GAAS,MAAK,CACxBoO,UAAW21B,Q,+BAKT,IAAD,OACL,OACI,oCAEQ,yBAAKjqC,UAAU,kCACX,yBAAKA,UAAU,OACX,yBAAKA,UAAU,2CACX,2BAAOia,MAAM,2BAAb,kBAKPna,KAAKH,MAAMvE,gBAAkB0E,KAAKH,MAAMvE,eAAeof,MAAQ1a,KAAKH,MAAMjE,oBAAsBoE,KAAKH,MAAMjE,mBAAmBkgB,WAC3H,yBAAK5b,UAAU,YACX,yBAAKA,UAAU,2CACX,2BAAOqf,IAAI,OAAOrf,UAAU,2BAA2B,kBAAoBF,KAAKH,MAAMvE,gBAAkB0E,KAAKH,MAAMvE,eAAeof,OAClI,2BAAO6E,IAAI,OAAOrf,UAAU,2BAA2B,kBAAoBF,KAAKH,MAAMjE,oBAAsBoE,KAAKH,MAAMjE,mBAAmB8e,KAAO,MAAQ1a,KAAKH,MAAMjE,oBAAsBoE,KAAKH,MAAMjE,mBAAmByjB,YAAc,MAC1O,yBAAKnf,UAAU,sCAAsCD,MAAM,UACvD,yBAAKC,UAAU,iCAAiCD,MAAM,SAClD,4BAAQlF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM,EAAK4lC,WAAtE,UANZ,KAUA,yBAAKzrC,UAAU,QACX,yBAAKA,UAAU,2CACX,yBAAKA,UAAU,iCAAiCD,MAAM,SAClD,4BAAQlF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAM,EAAK4lC,WAAtE,WAGf3rC,KAAKH,MAAMvE,gBAAkB0E,KAAKH,MAAMvE,eAAeof,MAAQ1a,KAAKH,MAAMjE,oBAAsBoE,KAAKH,MAAMjE,mBAAmBkgB,WAC3H,yBAAK5b,UAAU,OACX,yBAAKA,UAAU,2CACX,kBAAC,KAAD,CAAMmT,iBAAkBrT,KAAKnF,MAAMwyB,UAAW/Z,UAAU,EAAOnJ,SAAUnK,KAAKktB,cAC1E,kBAAC,GAAD,CAAS3Z,IAAI,cAAcpO,IAAI,KAC3B,kBAAC,GAAD,CAAYqP,UAAWxU,KAAKnF,MAAMwyB,aAEtC,kBAAC,GAAD,CAAS9Z,IAAI,kBAAkBpO,IAAI,KAC/B,kBAAC,GAAD,CAAgBqP,UAAWxU,KAAKnF,MAAMwyB,gBAK7C,S,GAjEVhtB,aAmFZurC,GAHKC,YAChBvkC,aAPoB,SAAAzM,GACpB,MAAO,CACHS,eAAgBT,EAAMomC,UAAU3lC,eAChCM,mBAAoBf,EAAMixC,WAAWlwC,uBAM9BgwC,CAAYF,IC1FpB,SAASK,GAAqBC,EAAYvwB,GA4C7C,MA3Ce,CACX,CACIlR,UAAW,aACXC,KAAM,WACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAO,6BAAMkC,KAGrB,CACIR,UAAW,OACXC,KAAM,OACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAO,6BAAMkC,KAKrB,CACIR,UAAW,GACXC,KAAM,GACNI,MAAM,EACNK,cAAc,EACdN,YAAa,QACbF,cAAe,aACfmR,gBAAiB,SAAC7Q,EAAMlC,GACpB,OAAQ,yBAAK5I,MAAM,QAAQC,UAAU,0CAA0C6F,QAAS,kBAAM0V,MAAtF,cAEZ3Q,UAAW,SAACC,EAAMlC,GACV,OAAO,yBAAK5I,MAAM,SACd,4BAAQlF,KAAK,SAASmF,UAAU,kBAAkB6F,QAAS,kBAAMimC,EAAWnjC,KAA5E,YAQxB,SAASL,GAAgBC,EAAOC,GAC5B,OAAKD,EACc,QAAVA,EAAyB,0BAAMvI,UAAU,6BAC/B,SAAVuI,EAA0B,0BAAMvI,UAAU,2BAC5C,KAHa,0BAAMA,UAAU,wBC9CxC,IAiFe+rC,GAjFO,SAAC,GAA6D,IAA3D9wC,EAA0D,EAA1DA,KAAMojB,EAAoD,EAApDA,kBAAmB2tB,EAAiC,EAAjCA,aAAcxiC,EAAmB,EAAnBA,OAAQkV,EAAW,EAAXA,KAEpE,OACI,oCAEQzjB,EAAO,6BACH,yBAAK+E,UAAU,OAEE,SAAT/E,EAEI,yBAAK+E,UAAU,sEAAf,gBACkBgsC,EAAaxxB,MAG/B,yBAAKxa,UAAU,sEAAf,kBAMZ,6BACI,kBAACoa,GAAA,EAAD,KAEI,yBAAKpa,UAAU,OACX,yBAAKA,UAAU,wCACX,kBAACqa,GAAA,EAAD,KACI,6CACA,2BACIxf,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,OACLxa,UAAU,mBACVjE,MAAOiwC,EAAaxxB,KACpBvQ,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,SAuBnD,yBAAKxG,UAAU,OACX,yBAAKA,UAAU,gCAAgCD,MAAM,SACjD,4BAAQlF,KAAK,SAASmF,UAAU,sDAAsD6F,QAAS,kBAAM2D,MAArG,UADJ,QAEI,4BAAQ3O,KAAK,SAASmF,UAAU,oDAAoD6F,QAAS,kBAAM6Y,MACrF,SAATzjB,EAAkB,OAAS,YAUhD,yBAAK+E,UAAU,OACX,yBAAKA,UAAU,sEAAf,4BCmKTisC,GA7NK,SAACtsC,GAAW,IAAD,EACW4W,oBAAS,GADpB,oBACpB1K,EADoB,KACPuX,EADO,OAES7M,mBAAS,IAFlB,oBAEpB8lB,EAFoB,KAERoL,EAFQ,OAGKlxB,mBAAS,IAHd,oBAGpB8N,EAHoB,KAGVC,EAHU,OAIO/N,mBAAS,IAJhB,oBAIpBgO,EAJoB,KAITC,EAJS,OAKajO,mBAAS,IALtB,oBAKpBy1B,EALoB,KAKNE,EALM,OAMH31B,mBAAS,IANN,oBAMpBtb,EANoB,KAMd6oB,EANc,KAOrB1oB,EAAiB0b,aAAY,SAAAnc,GAAK,OAAI6hB,GAAgB7hB,EAAO,CAAC,YAAa,sBAPtD,EAQa4b,mBAAS,IARtB,oBAQpBuE,EARoB,KAQN6J,EARM,OAS+BpO,oBAAS,GATxC,oBASpB2M,EAToB,KASGmC,EATH,KAW3BrO,qBAAU,WAGN,OADA2N,GAAgB,SAAAW,GAAsB,OAAO,eAAKlqB,MAC3C,WAE2C,OAA1ColB,SAA4F/e,IAA1C+e,IAClDA,GAAsChX,OAAO,uEAEH,OAA1C8W,SAA4F7e,IAA1C6e,IAClDA,GAAsC9W,OAAO,0EAItD,IAEHwN,qBAAU,WACF8D,GAAgBA,EAAapO,OAC7B0W,GAAe,SAAAK,GAAe,OAAI,KAClC8V,EAAcze,EAAapO,MAC3B8X,GAAa,SAAAuB,GAAa,MAAI,SAEnC,CAACjL,IAEJ9D,qBAAU,WACN2N,GAAgB,SAAAW,GAAsB,OAAO,eAAKlqB,QACnD,CAACA,IAEJ,IAAM+nB,EAAwB,WAC1BkC,GAAyB,SAAAqC,GAAyB,OAAKA,MAGrD6R,EAAgB,SAACjoB,GACnBiP,GAAqBjP,GAAUvN,MAAK,SAAAC,GAEhC,GAAmB,MAAfA,EAAItF,QACJ,GAAIsF,GAAOA,EAAIvF,MAAQuF,EAAIvF,MAAqB,OAAbuF,EAAIvF,MAAiB8B,MAAMC,QAAQwD,EAAIvF,MAAO,CAC7E,IAAIA,EAAOuF,EAAIvF,KACfgpC,EAAchpC,GACd6lB,EAAY7lB,SAGhBwjB,KACArjB,KAAQT,MAAM,wDACdC,QAAQD,MAAM,wCAElBilB,GAAe,SAAAK,GAAe,OAAI,QAGjC9Z,OAAM,SAAAC,GACHwZ,GAAe,SAAAK,GAAe,OAAI,KAClCxB,KACArjB,KAAQT,MAAM,wDACdC,QAAQD,MAAM,4CAoE1B,OACI,oCACI,yBAAK6B,UAAU,kCAEP6L,EAAc,yBAAK9L,MAAM,SAASC,UAAU,QAA9B,sBACY,kBAACyR,GAAA,EAAD,CAASzB,UAAU,OAAOZ,KAAK,KAAKa,QAAQ,UAEhE,oCACE,kBAAC,KAAD,MACA,yBAAKjQ,UAAU,OACX,yBAAKA,UAAU,uEAAf,eAEyByB,IAAjBqZ,GAA+C,OAAjBA,GAA0C,KAAjBA,QAA6CrZ,IAAtBqZ,EAAapO,KAAqB,MAAQ,YAC5H,0BAAM1M,UAAU,iBAAiB6F,QAAS,kBAAMsd,MAAhD,UAHJ,WAQiB1hB,IAAjBqZ,GAA+C,OAAjBA,GAA0C,KAAjBA,QAA6CrZ,IAAtBqZ,EAAapO,KACrF,qCAGF,yBAAK1M,UAAU,OACX,yBAAKA,UAAU,yCACX,yBAAKA,UAAU,8BAAf,oBACsB8a,GAAgBA,EAAaN,MAEnD,yBAAKxa,UAAU,4BACX,2BACInF,KAAK,OACLmF,UAAU,2CACVgK,YAAY,mBACZC,SAAU,SAAClH,GAAD,OAjGrC,SAACA,GAClB,IAAIhH,EAAQgH,EAAE+G,OAAO/N,MACjBowC,EAAiBtrC,GAAmBw7B,EAAYtgC,GACpDyoB,GAAa,SAAAuB,GAAa,OAAIhqB,KAC9BuoB,EAAY6nB,GA6FiDjjB,CAAanmB,IAC9BhH,MAAOwoB,IAGX,4BAAQvkB,UAAU,yBACdnF,KAAK,QACLgL,QAAS,kBAjGrC,WAChB,IAAIsmC,EAAiBtrC,GAAmBw7B,EAAY,IACpD7X,GAAa,SAAAuB,GAAa,MAAI,MAC9BzB,EAAY6nB,GA8F+ChjB,OAKvB,6BAEQkT,EACI,yBAAK/2B,GAAG,wBAAwBtF,UAAU,mDACtC,kBAAC,KAAD,CACImK,SAAS,KACT1L,KAAM4lB,EACNja,QAASyhC,IA5FlD,SAAAljC,GACfmb,EAAQ,QACR,IAAIsoB,EAAK,eAAQzjC,EAAR,CAAa1N,KAAM,SAAU,KAAQ6f,EAAapO,OAC3Dw/B,EAAgB,eAAKE,OAfb,WACRtoB,EAAQ,OACRooB,EAAgB,CACZ,WAAc,GACd,KAAQ,GACR,KAAQpxB,EAAapO,KACrB,WAAc,QACd,IAAO,GACP,SAAY,IACZ,KAAQ,qBAgG4CnC,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRS,WAAW,qCACXC,iBAAkBtD,MAGxB,yBAAK3C,IAAI,gBAAgB2C,MAO3C,yBAAK5H,UAAU,yCACX,kBAAC,GAAD,CACIgsC,aAAcA,EACdlxB,aAAcA,EACd7f,KAAMA,EACNojB,kBA1GlB,SAAA7X,GACtB,IAAIzK,EAAQyK,EAAIsD,OAAO/N,MACC,SAApByK,EAAIsD,OAAO0Q,MACX0xB,GAAgB,SAAAG,GAAsB,OAAO,eAAKA,EAAZ,CAA8B7xB,KAAMze,QAwGtCyN,OAlG7B,WACX0iC,EAAgB,IAChBpoB,EAAQ,KAiGgCpF,KA/F/B,WAET0E,GAAe,SAAAK,GAAe,OAAI,KAClChD,GAAqBurB,GAAcjoC,MAAK,SAAAC,GAChCA,GACAu1B,EAAcze,EAAapO,MAC3Bw/B,EAAgB,IAChBpoB,EAAQ,IACRV,GAAe,SAAAK,GAAe,OAAI,OAElCL,GAAe,SAAAK,GAAe,OAAI,KAClCxB,KACArjB,KAAQT,MAAM,qDAGjBwL,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACdwZ,GAAe,SAAAK,GAAe,OAAI,KAClCxB,KACArjB,KAAQT,MAAM,2DAqFlB,kBAAC,GAAD,CACI+kB,sBAAuBA,EACvBC,sBAAuBA,MCZxBmpB,GA1Me,SAAC3sC,GAAW,IAAD,EACC4W,oBAAS,GADV,oBAC9B1K,EAD8B,KACjBuX,EADiB,OAED7M,mBAAS,IAFR,oBAE9B8lB,EAF8B,KAElBoL,EAFkB,OAGLlxB,mBAAS,IAHJ,oBAG9B8N,EAH8B,KAGpBC,EAHoB,OAIH/N,mBAAS,IAJN,oBAI9BgO,EAJ8B,KAInBC,EAJmB,OAKGjO,mBAAS,IALZ,oBAK9By1B,EAL8B,KAKhBE,EALgB,OAMb31B,mBAAS,IANI,oBAM9Btb,EAN8B,KAMxB6oB,EANwB,KAO/B1oB,EAAiB,CAAEof,KAAM,cAAe9N,KAAM,KAAML,MAAO,MAP5B,EAQGkK,mBAAS,IARZ,oBAQ9BuE,EAR8B,KAQhB6J,EARgB,KAWrC3N,qBAAU,WAGN,OADA2N,GAAgB,SAAAW,GAAsB,OAAO,eAAKlqB,MAC3C,WAE2C,OAA1ColB,SAA4F/e,IAA1C+e,IAClDA,GAAsChX,OAAO,uEAEH,OAA1C8W,SAA4F7e,IAA1C6e,IAClDA,GAAsC9W,OAAO,0EAItD,IAEHwN,qBAAU,WACF8D,GAAgBA,EAAapO,OACjC0W,GAAe,SAAAK,GAAe,OAAI,KAClC8V,EAAcze,EAAapO,MAC3B8X,GAAa,SAAAuB,GAAa,MAAI,SAE/B,CAACjL,IAMJ,IAAMye,EAAgB,SAACjoB,GACnBiP,GAAqBjP,GAAUvN,MAAK,SAAAC,GAEhC,GAAmB,MAAfA,EAAItF,QACJ,GAAIsF,GAAOA,EAAIvF,MAAQuF,EAAIvF,MAAqB,OAAbuF,EAAIvF,MAAiB8B,MAAMC,QAAQwD,EAAIvF,MAAO,CAC7E,IAAIA,EAAOuF,EAAIvF,KACfgpC,EAAchpC,GACd6lB,EAAY7lB,SAGhBwjB,KACArjB,KAAQT,MAAM,wDACdC,QAAQD,MAAM,wCAElBilB,GAAe,SAAAK,GAAe,OAAI,QAGjC9Z,OAAM,SAAAC,GACHwZ,GAAe,SAAAK,GAAe,OAAI,KAClCxB,KACArjB,KAAQT,MAAM,wDACdC,QAAQD,MAAM,4CAoE1B,OACI,oCACI,yBAAK6B,UAAU,kCAEP6L,EAAc,yBAAK9L,MAAM,SAASC,UAAU,QAA9B,sBACY,kBAACyR,GAAA,EAAD,CAASzB,UAAU,OAAOZ,KAAK,KAAKa,QAAQ,UAEhE,oCACE,kBAAC,KAAD,MAEA,yBAAKjQ,UAAU,OACX,yBAAKA,UAAU,yCACX,yBAAKA,UAAU,8BAAf,gCAGA,yBAAKA,UAAU,4BACX,2BACInF,KAAK,OACLmF,UAAU,2CACVgK,YAAY,mBACZC,SAAU,SAAClH,GAAD,OArF7B,SAACA,GAClB,IAAIhH,EAAQgH,EAAE+G,OAAO/N,MACjBowC,EAAiBtrC,GAAmBw7B,EAAYtgC,GACpDyoB,GAAa,SAAAuB,GAAa,OAAIhqB,KAC9BuoB,EAAY6nB,GAiFyCjjB,CAAanmB,IAC9BhH,MAAOwoB,IAGX,4BAAQvkB,UAAU,yBACdnF,KAAK,QACLgL,QAAS,kBArF7B,WAChB,IAAIsmC,EAAiBtrC,GAAmBw7B,EAAY,IACpD7X,GAAa,SAAAuB,GAAa,MAAI,MAC9BzB,EAAY6nB,GAkFuChjB,OAKvB,6BAEQkT,EACI,yBAAK/2B,GAAG,wBAAwBtF,UAAU,mDACtC,kBAAC,KAAD,CACImK,SAAS,KACT1L,KAAM4lB,EACNja,QAASyhC,IAhF1C,SAAAljC,GACfmb,EAAQ,QACR,IAAIsoB,EAAK,eAAQzjC,EAAR,CAAa1N,KAAM,SAAU,KAAQ6f,EAAapO,OAC3Dw/B,EAAgB,eAAKE,OAfb,WACRtoB,EAAQ,OACRooB,EAAgB,CACZ,WAAc,GACd,KAAQ,GACR,KAAQpxB,EAAapO,KACrB,WAAc,QACd,IAAO,GACP,SAAY,IACZ,KAAQ,qBAoFoCnC,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRS,WAAW,qCACXC,iBAAkBtD,MAGxB,yBAAK3C,IAAI,gBAAgB2C,MAO3C,yBAAK5H,UAAU,yCACX,kBAAC,GAAD,CACIgsC,aAAcA,EACdlxB,aAAcA,EACd7f,KAAMA,EACNojB,kBA9FV,SAAA7X,GACtB,IAAIzK,EAAQyK,EAAIsD,OAAO/N,MACC,SAApByK,EAAIsD,OAAO0Q,MACX0xB,GAAgB,SAAAG,GAAsB,OAAO,eAAKA,EAAZ,CAA8B7xB,KAAMze,QA4F9CyN,OAtFrB,WACX0iC,EAAgB,IAChBpoB,EAAQ,KAqFwBpF,KAnFvB,WAET0E,GAAe,SAAAK,GAAe,OAAI,KAClChD,GAAqBurB,GAAcjoC,MAAK,SAAAC,GAChCA,GACAu1B,EAAcze,EAAapO,MAC3Bw/B,EAAgB,IAChBpoB,EAAQ,IACRV,GAAe,SAAAK,GAAe,OAAI,OAElCL,GAAe,SAAAK,GAAe,OAAI,KAClCxB,KACArjB,KAAQT,MAAM,qDAGjBwL,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACdwZ,GAAe,SAAAK,GAAe,OAAI,KAClCxB,KACArjB,KAAQT,MAAM,6DCnItB6U,GAAYC,KAAZD,QAEFu5B,G,YAEF,WAAY5sC,GAAQ,IAAD,8BACf,4CAAMA,KACDhF,MAAQ,CACT2Z,UAAW,KAEf,EAAK0Y,aAAe,EAAKA,aAAa7oB,KAAlB,gBALL,E,0EAkBN8lC,GAgBTnqC,KAAK2D,UAAS,SAAAyC,GAAS,MAAK,CACxBoO,UAAW21B,Q,+BAOf,OACI,6BACI,6BACI,kBAAC,KAAD,CAAM92B,iBAAkBrT,KAAKnF,MAAM2Z,UAAWlB,UAAU,EAAOnJ,SAAUnK,KAAKktB,aAAcnyB,KAAK,QAC7F,kBAAC,GAAD,CAASwY,IAAI,cAAcpO,IAAI,KAC3B,kBAAC,GAAD,OAEJ,kBAAC,GAAD,CAASoO,IAAI,kBAAkBpO,IAAI,KAC/B,kBAAC,GAAD,c,GApDP9E,aA+DNkH,eAAWklC,IChElBv5B,GAAYC,KAAZD,QAEFw5B,G,YAEF,WAAY7sC,GAAQ,IAAD,8BACf,4CAAMA,KASV8sC,aAAe,WACX,IAAMC,EAAe,EAAK/sC,MAAMsE,QAAQ3H,SAASswB,SAC7CO,EAAY,IAOhB,OANIuf,IAAY,UAAQ,EAAK/sC,MAAM0kC,MAAMtlC,MAAS2tC,IAAY,UAAQ,EAAK/sC,MAAM0kC,MAAMtlC,IAAzB,eAC1DouB,EAAY,IACPuf,IAAY,UAAQ,EAAK/sC,MAAM0kC,MAAMtlC,IAAzB,YAAyC2tC,IAAY,UAAQ,EAAK/sC,MAAM0kC,MAAMtlC,IAAzB,4BAAyD2tC,IAAY,UAAQ,EAAK/sC,MAAM0kC,MAAMtlC,IAAzB,yBAC3IouB,EAAY,IACPuf,IAAY,UAAQ,EAAK/sC,MAAM0kC,MAAMtlC,IAAzB,mBACjBouB,EAAY,KACTA,GAjBP,EAAKxyB,MAAQ,CACT2Z,UAAW,EAAKm4B,gBAGpB,EAAKzf,aAAe,EAAKA,aAAa7oB,KAAlB,gBACpB,EAAKsoC,aAAe,EAAKA,aAAatoC,KAAlB,gBAPL,E,0EAsBN8lC,GACT,OAAQA,GACJ,IAAK,IACDnqC,KAAKH,MAAMsE,QAAQzB,KAAK1C,KAAKH,MAAM0kC,MAAMtlC,IAAM,eAC/C,MAEJ,IAAK,IACDe,KAAKH,MAAMsE,QAAQzB,KAAK1C,KAAKH,MAAM0kC,MAAMtlC,IAAM,WAC/C,MAEJ,IAAK,IACDe,KAAKH,MAAMsE,QAAQzB,KAAK1C,KAAKH,MAAM0kC,MAAMtlC,IAAM,iBAQvDe,KAAK2D,UAAS,SAAAyC,GAAS,MAAK,CACxBoO,UAAW21B,Q,+BAKT,IAAD,OAEL,OACI,yBAAKjqC,UAAU,oBACX,yBAAKA,UAAU,gBACf,kBAAC,KAAD,CAAMmT,iBAAkBrT,KAAKnF,MAAM2Z,UAAWlB,UAAU,EAAOnJ,SAAUnK,KAAKktB,aAAc2f,YAJzF,QAKC,kBAAC,GAAD,CAASt5B,IAAI,eAAepO,IAAI,MAG5B,kBAAC,GAAD,CAASoO,IAAI,SAASpO,IAAI,MAG1B,kBAAC,GAAD,CAASoO,IAAI,gBAAgBpO,IAAI,QAKzC,yBAAKjF,UAAU,oBAEX,kBAAC,IAAD,KACI,kBAAC,IAAD,CAAOotB,OAAK,EAACC,KAAI,UAAKvtB,KAAKH,MAAM0kC,MAAMtlC,KAAO6tC,OAAQ,kBAAM,kBAAC,IAAD,CAAUxjC,GAAE,UAAK,EAAKzJ,MAAM0kC,MAAMtlC,IAAtB,oBACpE,kBAAC,IAAD,CAAOquB,OAAK,EAACC,KAAI,UAAKvtB,KAAKH,MAAM0kC,MAAMtlC,IAAtB,WAAoCuuB,UAAW,kBAAO,kBAAC,GAAD,CAAQhZ,UAAW,EAAK3Z,MAAM2Z,UAAWrQ,QAAS,EAAKtE,MAAMsE,QAASqlB,SAAU,EAAK3pB,MAAM0kC,MAAMtlC,SACxK,kBAAC,IAAD,CAAOquB,OAAK,EAACC,KAAI,UAAKvtB,KAAKH,MAAM0kC,MAAMtlC,IAAtB,eAAwCuuB,UAAW,kBAAO,kBAAC,GAAD,CAAahZ,UAAW,EAAK3Z,MAAM2Z,UAAWrQ,QAAS,EAAKtE,MAAMsE,QAASqlB,SAAU,EAAK3pB,MAAM0kC,MAAMtlC,SACrL,kBAAC,IAAD,CAAOquB,OAAK,EAACC,KAAI,UAAKvtB,KAAKH,MAAM0kC,MAAMtlC,IAAtB,iBAA0CuuB,UAAW,kBAAO,kBAAC,GAAD,CAAchZ,UAAW,EAAK3Z,MAAM2Z,UAAWrQ,QAAS,EAAKtE,MAAMsE,aAC5I,kBAAC,IAAD,CAAOmpB,OAAK,EAACC,KAAI,UAAKvtB,KAAKH,MAAM0kC,MAAMtlC,IAAtB,4BAAqDuuB,UAAW,kBAAO,kBAAC,GAAD,CAAchZ,UAAW,EAAK3Z,MAAM2Z,UAAWrQ,QAAS,EAAKtE,MAAMsE,QAASqlB,SAAU,EAAK3pB,MAAM0kC,MAAMtlC,SACnM,kBAAC,IAAD,CAAOsuB,KAAK,IAAIC,UAAWha,Y,GA1E1BnT,aAoFVkH,eAAWmlC,IC9FnB,SAASK,GAAuBC,EAAatuB,EAAuBuuB,GA6EvE,MA5Ee,CAEX,CACI1iC,UAAW,UACXC,KAAM,aACNC,cAAe,gCACfC,QAAS,+BACTC,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAO,yBAAK3C,MAAO6E,GACVA,KAIjB,CACIR,UAAW,YACXC,KAAM,aACNC,cAAe,aAEfC,QAAS,+BACTC,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEzD,CACI6B,UAAW,WACXC,KAAM,YACNC,cAAe,aACfC,QAAS,+BACTC,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEzD,CACI6B,UAAW,iBACXC,KAAM,iBACNC,cAAe,aACfC,QAAS,+BACTC,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,KAEzD,CACI6B,UAAW,GACXC,KAAM,GACNI,MAAM,EACNK,cAAc,EACdN,YAAa,QACbF,cAAe,aACfmR,gBAAiB,SAAC7Q,EAAMlC,GACpB,OAAQ,yBAAK5I,MAAM,QAAQC,UAAU,0CAA0C6F,QAAS,kBAAMinC,MAAtF,cAEZliC,UAAW,SAACC,EAAMlC,GACd,OACI,yBAAK3I,UAAU,mBACX,yBACID,MAAM,QACNC,UAAU,gBACVgG,MAAM,gBACNH,QAAS,kBAAMknC,EAAapkC,MAEhC,yBACI5I,MAAM,QACNC,UAAU,8BACVgG,MAAM,kBACNH,QAAS,kBAAM2Y,EAAsB7V,UAWjE,SAASL,GAAgBC,EAAOC,GAC5B,OAAKD,EACc,QAAVA,EAAyB,0BAAMvI,UAAU,6BAC/B,SAAVuI,EAA0B,0BAAMvI,UAAU,2BAC5C,KAHa,0BAAMA,UAAU,wBC1EjC,IAAIgtC,GAA2C,KAoC3CC,GAAsC,KAkCtCC,GAAyC,KAoCzCC,GAAuC,KC8HnCC,GAnOM,SAACztC,GAAW,IAAD,EACI4W,mBAAS,CACrC82B,QAAS,GACThwB,UAAW,GACXC,SAAU,GACVgwB,eAAe,KALS,oBACrBj7B,EADqB,KACXk7B,EADW,OAOYh3B,oBAAS,GAPrB,oBAOrBi3B,EAPqB,KAOPC,EAPO,KAS5Bz2B,qBAAU,WAEN,OAAO,WACyC,OAAxCi2B,SAAwFxrC,IAAxCwrC,IAChDA,GAAoCzjC,OAAO,uEAEF,OAAzC2jC,SAA0F1rC,IAAzC0rC,IACjDA,GAAqC3jC,OAAO,0EAGrD,IAEHwN,qBAAU,WACa,SAAfrX,EAAM1E,MACNsyC,EAAY5tC,EAAM+tC,kBAClBD,GAAgB,SAAAE,GAAgB,OAAI,MACd,QAAfhuC,EAAM1E,MACbsyC,EAAY,CACRF,QAAS,GACThwB,UAAW,GACXC,SAAU,GACVgwB,eAAe,OAGxB,CAAC3tC,EAAM1E,KAAM0E,EAAM+tC,mBAEtB,IA4BMrvB,EAAoB,SAAA7X,GACtB,IAAIzK,EAAQyK,EAAIsD,OAAO/N,MACC,YAApByK,EAAIsD,OAAO0Q,KACX+yB,GAAY,SAAAK,GAAkB,OAAO,eAAKA,EAAZ,CAA0BP,QAAStxC,OACtC,cAApByK,EAAIsD,OAAO0Q,MAAwBhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBmM,GAAkBo4B,KAAK95B,EAAIsD,OAAO/N,QACzIwxC,GAAY,SAAAK,GAAkB,OAAO,eAAKA,EAAZ,CAA0BvwB,UAAWthB,OACxC,aAApByK,EAAIsD,OAAO0Q,MAAuBhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBmM,GAAkBo4B,KAAK95B,EAAIsD,OAAO/N,QACxIwxC,GAAY,SAAAK,GAAkB,OAAO,eAAKA,EAAZ,CAA0BtwB,SAAUvhB,OACvC,mBAApByK,EAAIsD,OAAO0Q,MAA6BhU,EAAIsD,OAAO/N,MAAM0E,QAAU,KAA4B,KAArB+F,EAAIsD,OAAO/N,OAAgBmM,GAAkBo4B,KAAK95B,EAAIsD,OAAO/N,SAC9IwxC,GAAY,SAAAK,GAAkB,OAAO,eAAKA,EAAZ,CAA0BN,eAAgBvxC,QAe1E8xC,EAAQ,WACVN,GAAY,SAAAK,GAAkB,OAAO,eAAKA,EAAZ,CAA0BP,QAAS,GAAIhwB,UAAW,GAAIC,SAAU,GAAIgwB,eAAe,QACjH3tC,EAAMmuC,YAAW,SAAAC,GAAW,OAAI,MAE9BrvB,EAAO,WACU,QAAf/e,EAAM1E,KD5DgB,SAACylB,GACa,OAAxCusB,SAAwFxrC,IAAxCwrC,IAChDA,GAAoCzjC,OAAO,gDAI/C,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBAwjC,GAAsC/tC,EAAYqE,SAElB,IAAItH,SAAQ,SAAUC,EAASoC,GAG3Da,GAFO,UAAM3C,IAAN,YrFSgB,mDqFPbkkB,EAAYusB,IAAqClpC,MACvD,SAAA2hB,GACQA,EAAYjnB,KACZvC,EAAQwpB,EAAYjnB,MAEpBH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,uCAAwCuL,GACpDtL,EAAOsL,UCoCXokC,CAAmB37B,GAAUtO,MAAK,SAAAC,GAC1BA,IACArE,EAAMf,QAAQ2Z,QAAQ,gCACtBs1B,IACAluC,EAAMrF,cAITqP,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACdjK,EAAMf,QAAQT,MAAM,8BDAL,SAACuiB,GACa,OAAzCysB,SAA0F1rC,IAAzC0rC,IACjDA,GAAqC3jC,OAAO,gDAIhD,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBA0jC,GAAuCjuC,EAAYqE,SAEzB,IAAItH,SAAQ,SAAUC,EAASoC,GAGrDa,GAFO,UAAM3C,IAAN,YrF5DgB,mDqF8DbkkB,EAAYysB,IAAsCppC,MACxD,SAAA2hB,GACQA,EAAYjnB,KACZvC,EAAQwpB,EAAYjnB,MAEpBH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,uCAAwCuL,GACpDtL,EAAOsL,UCtBXqkC,CAAoB57B,GAAUtO,MAAK,SAAAC,GAC3BA,IACArE,EAAMf,QAAQ2Z,QAAQ,kCACtBs1B,IACAluC,EAAMrF,cAITqP,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACdjK,EAAMf,QAAQT,MAAM,mCAOpC,OACI,oCACI,kBAAC,KAAD,CAAS8G,IAAI,kBACb,yBAAKjF,UAAU,MAAMiF,IAAI,iBACrB,yBAAKjF,UAAU,qEAAqEiF,IAAI,iBACpE,QAAftF,EAAM1E,KAAiB,mBAAqC,SAAf0E,EAAM1E,KAAmB,kBAAoBoX,EAASg7B,QAAU,wBAKnG,QAAf1tC,EAAM1E,MAAiC,SAAf0E,EAAM1E,KACxB,yBAAKgK,IAAI,iBACP,kBAACmV,GAAA,EAAD,CAAMnV,IAAI,iBAEN,yBAAKjF,UAAU,MAAMiF,IAAI,iBACrB,yBAAKjF,UAAU,uCAAuCiF,IAAI,iBACtD,kBAACoV,GAAA,EAAD,CAAWpV,IAAI,iBACX,2BAAOA,IAAI,iBAAX,mBACA,2BACIpK,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,UACLxa,UAAU,qCACVjE,MAAOsW,EAASg7B,QAChBpjC,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,IACnCqZ,OAAQ,SAAArZ,GAAG,OAzEhC,SAAAA,GACf,I9E5CwB6mC,E8E4CpBtxC,EAAQyK,EAAIsD,OAAO/N,MACC,YAApByK,EAAIsD,OAAO0Q,Q9E7CS6yB,E8E8CCtxC,I9E5Cf,iDACSukC,KAAK+M,G8E+ChBI,GAAgB,SAAAE,GAAgB,OAAI,MAHpC/uC,KAAQT,MAAM,uCACdsvC,GAAgB,SAAAE,GAAgB,OAAI,OAoEOO,CAAW1nC,IAC1BvB,IAAI,oBAIhB,yBAAKjF,UAAU,uCAAuCiF,IAAI,iBACtD,kBAACoV,GAAA,EAAD,CAAWpV,IAAI,iBACX,2BAAOA,IAAI,iBAAX,gBACA,2BACIpK,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,YACLxa,UAAU,mBACVjE,MAAOsW,EAASgL,UAChBpT,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,IACnCvB,IAAI,oBAIhB,yBAAKjF,UAAU,uCAAuCiF,IAAI,iBACtD,kBAACoV,GAAA,EAAD,CAAWpV,IAAI,iBACX,2BAAOA,IAAI,iBAAX,eACA,2BACIpK,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,WACLxa,UAAU,mBACVjE,MAAOsW,EAASiL,SAChBrT,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,IACnCvB,IAAI,qBAMpB,yBAAKjF,UAAU,OACX,yBAAKA,UAAU,uCAAuCiF,IAAI,iBACtD,kBAACoV,GAAA,EAAD,CAAWpV,IAAI,iBACX,2BAAOA,IAAI,iBAAX,oBACA,2BACIpK,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,iBACLxa,UAAU,mBACVjE,MAAOsW,EAASi7B,eAChBrjC,SAAU,SAAAzD,GAAG,OAAI6X,EAAkB7X,IACnCvB,IAAI,qBAMpB,yBAAKjF,UAAU,MAAMiF,IAAI,iBACrB,yBAAKjF,UAAU,gCAAgCD,MAAM,QAAQkF,IAAI,iBAC7D,4BAAQpK,KAAK,SAASmF,UAAU,sDAAsD6F,QAAS,kBAAMgoC,KAAS5oC,IAAI,iBAAlH,UADJ,OAMJ,4BAAQpK,KAAK,SAASmF,UAAU,oDAAoD6F,QAAS,kBAAM6Y,KACvFU,UAAWouB,GAAuC,KAAvBn7B,EAASgL,WAA0C,KAAtBhL,EAASiL,SAAiBrY,IAAI,iBACtE,QAAftF,EAAM1E,KAAiB,MAAQ,YAOlD,KC9EPkzC,GA5IU,SAACxuC,GAAW,IAAD,EACM4W,oBAAS,GADf,oBACzB1K,EADyB,KACZuX,EADY,OAEU7M,mBAAS,IAFnB,oBAEzB63B,EAFyB,KAEVC,EAFU,OAG0B93B,mBAAS,IAHnC,oBAGzB+3B,EAHyB,KAGFC,EAHE,OAIFh4B,oBAAS,GAJP,oBAIzBi4B,EAJyB,KAIhBV,EAJgB,OAK0Bv3B,oBAAS,GALnC,oBAKzBk4B,EALyB,KAKFC,EALE,OAMgBn4B,mBAAS,IANzB,oBAMzBm3B,EANyB,KAMPiB,EANO,OAORp4B,mBAAS,IAPD,oBAOzBtb,EAPyB,KAOnB6oB,EAPmB,KAShC9M,qBAAU,WAGN,OAFAoM,GAAe,SAAAK,GAAe,OAAI,KAClCmrB,IACO,WAC8C,OAA7C5B,SAAkGvrC,IAA7CurC,IACrDA,GAAyCxjC,OAAO,uEAEL,OAA3C0jC,SAA8FzrC,IAA3CyrC,IACnDA,GAAuC1jC,OAAO,0EAGvD,IAEH,IAUMolC,EAAU,YFtCkB,WAEe,OAA7C5B,SAAkGvrC,IAA7CurC,IACrDA,GAAyCxjC,OAAO,gDAIpD,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBAujC,GAA2C9tC,EAAYqE,SAEzB,IAAItH,SAAQ,SAAUC,EAASoC,GAGzDQ,GAFO,UAAMtC,IAAN,YrF2CoB,iDqFzClBwwC,IAA0CjpC,MAC/C,SAAAxF,GACQA,EACArC,EAAQqC,GAERD,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,+CAAgDuL,GAC5DtL,EAAOsL,WEcfilC,GAA0B9qC,MAAK,SAAAC,GACvBA,GAAsB,MAAfA,EAAItF,QAAkBsF,EAAIvF,MAAmB,MAAXuF,EAAIvF,MACjD4vC,EAAiBrqC,EAAIvF,MACrB8vC,EAAyBvqC,EAAIvF,MAC7B2kB,GAAe,SAAAK,GAAe,OAAI,QAEjC9Z,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACdhL,KAAQT,MAAM,iCACdilB,GAAe,SAAAK,GAAe,OAAI,SAsCxCnpB,EAAU,WACZs0C,IACAD,EAAoB,IACpB7qB,EAAQ,KAEZ,OACI,oCACI,kBAAC,KAAD,CAAS7e,IAAI,eACZ4G,EACK,yBAAK9L,MAAM,SAASC,UAAU,OAAOiF,IAAI,cAAzC,iCACM,kBAACwM,GAAA,EAAD,CAASzB,UAAU,OAAOZ,KAAK,KAAKa,QAAQ,OAAOhL,IAAI,gBAG/D,yBAAKjF,UAAU,iCAAiCiF,IAAI,cAChD,yBAAKjF,UAAU,MAAMiF,IAAI,cACrB,yBAAKjF,UAAU,8BAA8BD,MAAM,QAAQkF,IAAI,cAC3D,2BAAOpK,KAAK,OAAOmP,YAAY,cAAchK,UAAU,mBAAmBiK,SAAU,SAAClH,GAAD,OA3E/E,SAACc,GAC1B,GAA2B,KAAvBA,EAAMiG,OAAO/N,MACbwyC,EAAyBH,OAEtB,CACH,IAAIrkC,EAAYlJ,GAAmButC,EAAevqC,EAAMiG,OAAO/N,MAAM,CAAC,UAAW,YAAa,aAC9FwyC,EAAyBxkC,IAqEkFkL,CAAqBlS,IAAIkC,IAAI,iBAGhI,yBAAKjF,UAAU,WAAWiF,IAAI,cAC1B,yBAAKjF,UAAU,+BAA+BiF,IAAI,cAC9C,kBAAC,KAAD,CACIkF,SAAS,aACT1L,KAAM6vC,EACNlkC,QAASyiC,IAlCjB,WAChB/oB,EAAQ,OACRgqB,GAAW,SAAAC,GAAW,OAAI,KAC1BY,EAAoB,OA3BM,SAAAhmC,GAC1B+lC,GAAyB,SAAAI,GAAyB,OAAI,KACtDH,EAAoBhmC,MA2BH,SAAAA,GACjBmb,EAAQ,QACR6qB,EAAoBhmC,GACpBmlC,GAAW,SAAAC,GAAW,OAAI,QA2BFxjC,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRU,iBAAkBtD,MAG1B,yBAAK5H,UAAU,8BAA8BiF,IAAI,cAC5CupC,EACK,kBAAC,GAAD,CACEl0C,QAASA,EACTwzC,WAAYA,EACZlvC,QAASA,KACT3D,KAAMA,EACN6oB,QAASA,EACT4pB,iBAAkBA,IAEpB,wCAMtB,kBAAC,GAAD,CACI/rB,2BAA4B8sB,EAC5B7sB,6BA/EyB,WACjC8sB,GAAyB,SAAAI,GAAyB,OAAKA,MA+E/CjtB,oBAAqB,sDAAwD6rB,EAAiBL,QAC9FvrB,wBAAyB,iBACzBC,cA/EU,SAAAxe,GAClB6f,GAAe,SAAAK,GAAe,OAAI,KAC9BiqB,QAAoDjsC,IAAhCisC,EAAiBqB,YAA2D,KAA/BrB,EAAiB7kC,WFSzD,SAACkmC,GACa,OAA3C7B,SAA8FzrC,IAA3CyrC,IACnDA,GAAuC1jC,OAAO,gDAIlD,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBAyjC,GAAyChuC,EAAYqE,SAExB,IAAItH,SAAQ,SAAUC,EAASoC,GAGxDQ,GAFO,UAAMtC,IAAN,YrFzBkB,kDqFyBlB,uBAAsDuyC,GAEpD7B,IAAwCnpC,MAC7C,SAAAxF,GACQA,EACArC,EAAQqC,GAERD,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,0CAA2CuL,GACvDtL,EAAOsL,UEjCXolC,CAAsBtB,EAAiBqB,YAAYhrC,MAAK,SAAAC,GAChDA,IACApF,KAAQ2Z,QAAQ,kCAChBje,QAGHqP,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACdhL,KAAQT,MAAM,0CAG1BwwC,EAAoB,IACpBD,GAAyB,SAAAI,GAAyB,OAAKA,UCjFxD,SAASG,GAAuBC,EAAYC,GA0F/C,MAzFe,CACX,CACI9kC,UAAW,OACXC,KAAM,cACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAO,6BAAMkC,KAGrB,CACIR,UAAW,cACXC,KAAM,gBACNC,cAAe,gCACfC,QAAS,uDACTC,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAO,yBAAK3C,MAAO6E,GACVA,KAIjB,CACIR,UAAW,UACXC,KAAM,aACNC,cAAe,gCACfC,QAAS,+BACTC,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAQ,yBAAK3C,MAAO6E,QAEHpJ,IAAToJ,GAA+B,OAATA,EhFiBjB,SAACgK,GAAiC,IAA3BJ,EAA0B,uDAAjB,aAErC26B,EAAWv6B,aAAgB9C,KAAQ8C,EAAO,IAAI9C,KAAK8C,GACnDw6B,EAAKD,EAAQE,UACbC,EAAKH,EAAQI,WAAa,EAE1BC,EAAOL,EAAQM,cACfL,EAAK,KACLA,EAAK,IAAMA,GAEXE,EAAK,KACLA,EAAK,IAAMA,GAQf,MALe,eAAX96B,EACeg7B,EAAO,IAAMF,EAAK,IAAMF,EAExBE,EAAK,IAAMF,EAAK,IAAMI,EgFlCiBE,CAAc9kC,GAAQ,MAK5E,CACIR,UAAW,UACXC,KAAM,kBACNC,cAAe,gCACfC,QAAS,+BACTC,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAAmBF,GAAgBC,EAAOC,IACrDoC,UAAW,SAACC,EAAMlC,GACd,OAAQ,yBAAK3I,UAAU,iCACnB,yBAAKgG,MAAO6E,QAECpJ,IAAToJ,GAA+B,OAATA,EAAgBA,EAAO,KAGjD,yBAAK7K,UAAU,gBAAgBgG,MAAM,aAAaH,QAAS,kBAAMspC,EAAyBxmC,SAMtG,CACI0B,UAAW,GACXC,KAAM,GACNI,MAAM,EACNK,cAAc,EACdN,YAAa,QACbF,cAAe,aAEfK,UAAW,SAACC,EAAMlC,GACd,OAAQ,yBAAK5I,MAAM,SAEd4I,EAAIinC,aAAmC,OAApBjnC,EAAIinC,aAA4C,KAApBjnC,EAAIinC,YAC9C,4BAAQ/0C,KAAK,SAASmF,UAAU,kBAC9B6F,QAAS,kBAAMqpC,EAAWvmC,EAAK,UADjC,QAEA,GAGN,4BAAQ9N,KAAK,SAASmF,UAAU,kBAC5B6F,QAAS,kBAAMqpC,EAAWvmC,EAAK,SADnC,sBAWpB,SAASL,GAAgBC,EAAOC,GAC5B,OAAKD,EACc,QAAVA,EAAyB,0BAAMvI,UAAU,6BAC/B,SAAVuI,EAA0B,0BAAMvI,UAAU,2BAC5C,KAHa,0BAAMA,UAAU,wBCvFjC,IA2BI6vC,GAAoC,KAkCpCC,GAA+C,KAqC/CC,GAAyC,KAEvCC,GAAwB,SAACp0B,GAEa,OAA3Cm0B,SAA8FtuC,IAA3CsuC,IACnDA,GAAuCvmC,OAAO,gDAIlD,IAAMtK,EAAcpB,IAAM2L,YAwB1B,OAvBAsmC,GAAyC7wC,EAAYqE,SAEzB,IAAItH,SAAQ,SAAUC,EAASoC,GAGvDQ,GADO,UAAMtC,IAAN,YzFhDkB,0CyFgDlB,sBAAqDof,GACnDm0B,IAAwChsC,MAC7C,SAAAxF,GACQA,EAASE,KACTvC,EAAQqC,EAASE,MAEjBH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,6CAA8CuL,GAC1DtL,EAAOsL,WCkBRqmC,GApJa,SAAC,GAA8G,IAA5GC,EAA2G,EAA3GA,2BAA4BC,EAA+E,EAA/EA,gCAAiC3sB,EAA8C,EAA9CA,gBAAiBpoB,EAA6B,EAA7BA,eAAgBwD,EAAa,EAAbA,QAAa,EAC1F2X,mBAAS,IADiF,oBAC/H65B,EAD+H,KAC/GC,EAD+G,OAEhG95B,mBAAS,IAFuF,oBAE/H+5B,EAF+H,KAElHC,EAFkH,OAG5Fh6B,oBAAS,GAHmF,oBAG/Hi6B,EAH+H,KAGhHC,EAHgH,OAI1Fl6B,mBAAS,IAJiF,oBAI/Hm6B,EAJ+H,KAI/GC,EAJ+G,KAKtI35B,qBAAU,WACN,IAAI0P,EAAUtrB,GAAqC,OAAnBA,GAA2BA,EAAew1C,QAAUx1C,EAAew1C,QAAU,GACzGF,EAAiBt1C,GAAqC,OAAnBA,GAA2BA,EAAey1C,QAAUz1C,EAAey1C,QAAa,GACvHR,EAAkB3pB,GACF,KAAZA,GACAoqB,EAAepqB,EAAS,OAAQgqB,KACrC,CAACt1C,IAEJ,IAAMsjB,EAAO,YDsD0B,SAACgC,GAEa,OAAjDovB,SAA0GruC,IAAjDquC,IACzDA,GAA6CtmC,OAAO,gDAIxD,IAAMtK,EAAcpB,IAAM2L,YAyB1B,OAxBAqmC,GAA+C5wC,EAAYqE,SAEzB,IAAItH,SAAQ,SAAUC,EAASoC,GAI7Da,GAFO,UAAM3C,IAAN,YzFZwB,sCyFcrBkkB,EAAYovB,IAA8C/rC,MAChE,SAAAxF,GACQA,EAASE,KACTvC,EAAQqC,EAASE,MAEjBH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,gDAAiDuL,GAC7DtL,EAAOsL,WC/EfmnC,CADc,CAAE,KAAQ31C,EAAesR,KAAM,cAAiB0jC,EAAgB,eAAkB,MAAO,eAAkBM,EAAeM,UACnGjtC,MAAK,SAAAC,GACnB,YAAfA,EAAItF,QACJyxC,IACA3sB,MAEA2sB,IACAvxC,EAAQT,MAAM,mEAGjBwL,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACdhL,EAAQT,MAAM,+DACdgyC,QAeNW,EAAiB,SAACl1B,EAAYrY,GAAwB,IAAhBstC,EAAe,uDAAP,GAEhDb,GAAsBp0B,GAAY7X,MAAK,SAAAC,GACnC,GAAIA,GAAOA,GAAOzD,MAAMC,QAAQwD,IAAQA,EAAIvD,OAAS,GAEjD,GADA8vC,EAAevsC,GACA,SAAXT,EACA,GAAmB,IAAfS,EAAIvD,OACJkwC,EAAkB,CAAEK,QAAShtC,EAAI,GAAGgtC,QAASC,UAAWjtC,EAAI,GAAGitC,gBAC5D,CAAC,IAAD,uBACH,YAAuBjtC,EAAI28B,UAA3B,+CAAsC,CAAC,IAAzBgC,EAAwB,2BAC9BA,EAAKqO,UAAYH,GACjBF,EACK,CAAEK,QAASH,EAASI,UAAWtO,EAAKsO,aAJ9C,yFAaXryC,EAAQT,MAAM,6BACdC,QAAQD,MAAM,gCAGjBwL,OAAM,SAAAC,GACHhL,EAAQT,MAAM,6BACdC,QAAQD,MAAM,6BAA+ByL,OAGzD,OACI,oCACI,kBAACoF,GAAA,EAAD,CAAO1K,OAAQ4rC,EAA4BhsC,OAAQisC,EAC/CnwC,UAAU,eACVqP,cAAc,uBACdC,eAAe,qBACfC,iBAAiB,uBACjBpK,OAAO,OACPqK,UAAQ,EACRvK,IAAI,UACJ,kBAACwK,GAAA,EAAD,CAAavL,OAAQisC,EAAiCnwC,UAAU,wDAAwDiF,IAAI,UAExH,2BAAOjF,UAAU,mBAAmBiF,IAAI,UAAxC,yBAEJ,kBAAC0K,GAAA,EAAD,CAAW1K,IAAI,UAEX,yBAAKA,IAAI,UAEL,kBAACoV,GAAA,EAAD,CAAWpV,IAAI,UACX,yBAAKjF,UAAU,oBAAoBiF,IAAI,UACnC,kBAAC6P,GAAA,EAAD,CAAOuK,IAAI,OAAOpa,IAAI,UAAtB,qCAAkE7J,GAAqC,OAAnBA,GAA2BA,EAAeof,OAGlI,2BACI3f,KAAK,OACL0f,aAAa,MACbvQ,YAAY,GACZwQ,KAAK,iBACLxa,UAAU,qCACVjE,MAAOq0C,EACPnmC,SAAU,SAAAzD,GAAG,OAxEf,SAAAA,GACtB,IAAIzK,EAAQyK,EAAIsD,OAAO/N,MACC,mBAApByK,EAAIsD,OAAO0Q,MAA6Bze,EAAM0E,QAAU,KAAiB,KAAV1E,GAAgBkM,GAAmBq4B,KAAKvkC,KACvGs0C,EAAkBt0C,GAqEmBsiB,CAAkB7X,IACnCqZ,OAAQ,SAAArZ,GAAG,OAnElB,SAACA,GAClB,IAAIoV,EAAapV,GAAOA,EAAIsD,OAAStD,EAAIsD,OAAO/N,MAAQyK,EACxDsqC,EAAel1B,EAAY,UAiEYma,CAAavvB,IAC5BvB,IAAI,YAIXqrC,EAAY7vC,OAAS,EAChB,yBAAKT,UAAU,uBAAuBiF,IAAI,WACxC,kBAACoV,GAAA,EAAD,CAAWpV,IAAI,WACX,yBAAKjF,UAAU,oBAAoBiF,IAAI,WACnC,kBAAC6P,GAAA,EAAD,CAAOuK,IAAI,OAAOpa,IAAI,WAAtB,qBAGR,kBAACmB,GAAA,EAAD,CAAUoU,KAAK,UAAU8E,UAAQ,EAC7Bhb,OAAQksC,EACRtsC,OAAQ,kBAAMusC,GAAiB,SAAAS,GAAiB,OAAKA,MACjDlxC,UAAU,oDACViF,IAAI,WACJ,kBAACoB,GAAA,EAAD,CAAgBmZ,OAAK,EAACva,IAAI,WAAWyrC,EAAeO,WACpD,kBAAC3qC,GAAA,EAAD,CAAcrB,IAAI,WAEdqrC,EAAYt+B,KAAI,SAAC0H,EAAMxH,GAAP,OACZ,kBAAC3L,GAAA,EAAD,CAActB,IAAKiN,EAAOrM,QAAS,kBAAM8qC,EAAkB,eAAKj3B,MAC5D,yBAAKzU,IAAK,UAAUiN,GAAQwH,EAAKu3B,mBAQxD,KAMb,kBAACjvB,GAAA,EAAD,CAAahiB,UAAU,0BAA0BiF,IAAI,UACjD,4BAAQpK,KAAK,SAASmF,UAAU,yCAAyC6F,QAAS,kBAAMsqC,KAAmClrC,IAAI,UAA/H,UACA,4BAAQpK,KAAK,SAASmF,UAAU,qCAAqC6F,QAAS,kBAAM6Y,KAAQzZ,IAAI,UAAhG,YC9HLksC,GAlBI,SAAC,GAAoB,IAAnBC,EAAkB,EAAlBA,aAAkB,EACX76B,qBADW,oBAC5B1U,EAD4B,KACvBwvC,EADuB,KAenC,OAZAr6B,qBAAU,WACNq6B,EAASD,IAAgB,KAC1B,CAACA,IAUG,CAACvvC,MAAKqC,OARE+S,uBAAY,WACvBo6B,GAAS,SAAAnrC,GAAS,OAAKA,OACxB,IAMkBorC,gBAJGr6B,uBAAY,SAAClb,GACjCs1C,EAASt1C,IAAS,KACnB,MCXC6mC,GAAYC,KAAZD,QAmDO2O,GAjDW,SAAC5xC,GACvB,IAAM4jC,EAAe,SAAC,GAA6C,IAA3CJ,EAA0C,EAA1CA,UAAWC,EAA+B,EAA/BA,QAASC,EAAsB,EAAtBA,WAAYC,EAAU,EAAVA,MHE5B,SAACh+B,EAAIg+B,EAAMhkC,GAwBvC,OAtB8B,IAAIrD,SAC9B,SAAUC,EAASoC,GACf,IAAIkzC,EAAW,IAAI9N,SACnB8N,EAAS7N,OAAO,WAAYr+B,GAC5BksC,EAAS7N,OAAO,oBAAqBL,GACrCkO,EAAS7N,OAAO,mBAAmB,GAGnCtkC,GAFO,UAAM7C,IAAN,YzFqDgB,oCyFnDJg1C,EAAU,KAAMlyC,GAAkByE,MAAK,SAAAC,GACtD9H,EAAQ8H,MAEP2F,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,+DAAgEF,GAC5EG,EAAOuJ,YGnBvB4pC,CAAiB9xC,EAAMvE,eAAesR,KAAM42B,GAAM,SAAC/jC,GAAD,OAAmBD,EAAiBC,EAAe+jC,EAAMD,MACtGt/B,MAAK,SAAAC,GACFm/B,EAAU,KAAMG,MAEnB35B,OAAM,SAAAC,GACHw5B,QAMN9jC,EAAmB,SAACC,EAAe+jC,EAAMD,GAC3CA,EAAW,CAAEU,QAASC,KAAKC,MAAM1kC,EAAc2kC,OAAS3kC,EAAc4kC,MAAQ,KAAKjhC,QAAQ,IAAMogC,IAa/FP,EAAc,CAChBvoB,KAAM,OACNwoB,OAAQ,OACRC,UAAU,EACVC,cAAe,gBAAGC,EAAH,EAAGA,UAAWC,EAAd,EAAcA,QAASC,EAAvB,EAAuBA,WAAYC,EAAnC,EAAmCA,KAAnC,OAA8CC,EAAa,CAAEJ,YAAWC,UAASC,aAAYC,UAC5Gr5B,SAAU,SAACoH,GAAD,OAhBmB,SAACA,GAAS,IAC/B3S,EAAW2S,EAAKiyB,KAAhB5kC,OAIO,SAAXA,GACAiB,EAAM6jB,kBAUUggB,CAAyBnyB,IAC7CoyB,SAAU,QAGd,OACI,oCACI,kBAAC,GAAD,iBAAaV,EAAb,CAA0B/iC,UAAU,kBAChC,uBAAGA,UAAU,wBAAuB,kBAAC,KAAD,CAAMnF,KAAK,WAC/C,uBAAGmF,UAAU,mBAAb,6DCXD0xC,GAhCwB,SAAC,GAA0E,IAAzEt2C,EAAwE,EAAxEA,eAAgBooB,EAAwD,EAAxDA,gBAAiBvU,EAAuC,EAAvCA,WAAYC,EAA2B,EAA3BA,YAAajP,EAAc,EAAdA,SAC/F,OACI,6BACI,kBAAC+O,GAAA,EAAD,CACI1K,OAAQ2K,IAAc,EACtB/K,OAAQgL,EACRC,UAAU,EACVC,KAAK,UACLjK,OAAO,OACPnF,UAAU,eACVqP,cAAc,uBACdC,eAAe,qBACfC,iBAAiB,uBACjBC,UAAQ,GACR,kBAACC,GAAA,EAAD,CAAavL,OAAQgL,EAAaQ,SAAS,MAC3C,kBAACC,GAAA,EAAD,KACI,oCAEQ1P,EAGA,kBAAC,GAAD,CACI7E,eAAgBA,EAChBooB,gBAAiBA,SC0HlCmuB,GAtIU,SAAChyC,GAAW,IAAD,EACM4W,oBAAS,GADf,oBACzB1K,EADyB,KACZuX,EADY,OAEI7M,mBAAS,IAFb,oBAEzBq7B,EAFyB,KAEbC,EAFa,OAGYt7B,qBAHZ,oBAGzBnb,EAHyB,KAGT02C,EAHS,KAI1Bv3C,EAAOuc,aAAY,SAAAnc,GAAK,OAAI6hB,GAAgB7hB,EAAO,CAAC,MAAO,YAJjC,EAKF4b,mBAAS,IALP,oBAKzB3G,EALyB,KAKhBmiC,EALgB,OAMoCx7B,oBAAS,GAN7C,oBAMzB25B,EANyB,KAMG8B,EANH,OAOwBb,IAAW,GAAvDc,EAPoB,EAOzBpwC,IAA8BqwC,EAPL,EAOHhuC,OAPG,EAQmCitC,IAAW,GAAlEgB,EARoB,EAQzBtwC,IAAmCuwC,EARV,EAQEluC,OAclC8S,qBAAU,WACFi7B,GACAF,EAAW,MAEhB,CAACE,IAEJj7B,qBAAU,WAEN,OADAwM,IACO,WAC4C,OAA3CjB,SAA8F9gB,IAA3C8gB,IACnDA,GAAuC/Y,OAAO,uEAER,OAAtCqmC,SAAoFpuC,IAAtCouC,IAC9CA,GAAkCrmC,OAAO,uEAEQ,OAAjDsmC,SAA0GruC,IAAjDquC,IACzDA,GAA6CtmC,OAAO,0EAG7D,IACH,IAAM6oC,EAAa,SAAA1pC,ILnBS,SAAC0f,GAEa,OAAtCwnB,SAAoFpuC,IAAtCouC,IAE9CA,GAAkCrmC,OAAO,oDAG7C,IAAMtK,EAAcpB,IAAM2L,YAuB1B,OAtBAomC,GAAoC3wC,EAAYqE,SAElB,IAAItH,SAC9B,SAAUC,EAASoC,GAEfa,GADO,UAAM3C,IAAN,YzFqBgB,iCyFpBb6rB,EAASwnB,IAAmC9rC,MAClD,SAAAxF,GACQA,EAASE,KACTvC,EAAQqC,EAASE,MAEjBH,EAAOwJ,OAGjB6B,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,uCAAwCuL,GACpDtL,EAAOsL,WKFnB0oC,CAJc,CACV,SAAY3pC,EAAI+D,KAChB,iBAAmB,IAEG3I,MAAK,SAAAwN,GAC3BwgC,EAAWxgC,MAEV5H,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACdhL,KAAQT,MAAM,4CAGpBqlB,EAAkB,WACpBJ,GAAe,SAAAK,GAAe,OAAI,KAClCb,GAAsBroB,GAAMwJ,MAAK,SAAAC,GACzBA,GAAOA,EAAIvF,MAAQ8B,MAAMC,QAAQwD,EAAIvF,OAASuF,EAAIvF,KAAKgC,OAAS,GAChEoxC,EAAc7tC,EAAIvF,MAGtB2kB,GAAe,SAAAK,GAAe,OAAI,QAEjC9Z,OAAM,SAAAC,GACHhL,KAAQT,MAAM,8BACdC,QAAQD,MAAM,kCAY1B,OACI,oCACI,kBAAC,KAAD,MACC0N,EACK,yBAAK9L,MAAM,SAASC,UAAU,OAAOiF,IAAI,SAAzC,kCACM,kBAACwM,GAAA,EAAD,CAASzB,UAAU,OAAOZ,KAAK,KAAKa,QAAQ,OAAOhL,IAAI,WAG/D,yBAAKjF,UAAU,iCAAiCiF,IAAI,SAChD,yBAAKjF,UAAU,WAAWiF,IAAI,SAC1B,yBAAKjF,UAAU,gCAAgCiF,IAAI,SAC/C,kBAAC,KAAD,CACIkF,SAAS,YACT1L,KAAMmzC,EACNxnC,QAAS6kC,IAlFlB,SAACtmC,EAAKpF,GACrBuuC,EAAkBnpC,GACH,SAAXpF,IACA8uC,EAAW1pC,GACXupC,KAGU,QAAX3uC,GACC6uC,OAmDyB,SAACzpC,GAC9BqpC,GAA8B,SAAAO,GAA8B,OAAI,KAChET,EAAkBnpC,MAsBM4B,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRU,iBAAkBtD,GAClB3C,IAAI,aAMxB,kBAAC,GAAD,CACIirC,2BAA4BA,EAC5BC,gCAhC4B,WACpC6B,GAA8B,SAAAO,GAA8B,OAAKA,KACjET,EAAkB,KA+BVtuB,gBAAiBA,EACjBpoB,eAAgBA,EAChBwD,QAASA,OAEVxD,GAAkBA,EAAeiR,OAAkC,OAAzBjR,EAAeiR,OAAkBjR,EAAeiR,OAC1F,oCACK,kBAAC,GAAD,CAAeuD,QAASA,EAAUA,EAAQ4iC,cAAgB,GAAItjC,YAAagjC,EAAiBjjC,WAAYgjC,GACpG,yBAAKjyC,UAAU,OACX,yBAAKA,UAAU,iCAAiC5E,GAAkBA,EAAeof,KAAjF,iCAIR,kBAAC,GAAD,CACItL,YAAakjC,EACbnjC,WAAYkjC,EACZ/2C,eAAgBA,EAChBooB,gBAAiBA,GACjB,yBAAKxjB,UAAU,OACX,yBAAKA,UAAU,iCAAiC5E,GAAkBA,EAAeof,KAAjF,sCC9HpBxH,GAAYC,KAAZD,QAEFy/B,G,YAEF,WAAY9yC,GAAQ,IAAD,8BACf,4CAAMA,KASV8sC,aAAe,WACX,IAAMC,EAAe,EAAK/sC,MAAMsE,QAAQ3H,SAASswB,SAC7CO,EAAY,IAiBhB,OAhBIuf,IAAY,UAAQ,EAAK/sC,MAAM0kC,MAAMtlC,IAAzB,sBAAmD2tC,IAAY,UAAQ,EAAK/sC,MAAM0kC,MAAMtlC,KACpGouB,EAAY,IACPuf,IAAY,UAAQ,EAAK/sC,MAAM0kC,MAAMtlC,IAAzB,aACjBouB,EAAY,IACPuf,IAAY,UAAQ,EAAK/sC,MAAM0kC,MAAMtlC,IAAzB,gBACV2tC,IAAY,UAAQ,EAAK/sC,MAAM0kC,MAAMtlC,IAAzB,2BACZ2tC,IAAY,UAAQ,EAAK/sC,MAAM0kC,MAAMtlC,IAAzB,uBACZ2tC,IAAY,UAAQ,EAAK/sC,MAAM0kC,MAAMtlC,IAAzB,6BACZ2tC,IAAY,UAAQ,EAAK/sC,MAAM0kC,MAAMtlC,IAAzB,4BACnBouB,EAAY,IACPuf,IAAY,UAAQ,EAAK/sC,MAAM0kC,MAAMtlC,IAAzB,mBACjBouB,EAAY,IACPuf,IAAY,UAAQ,EAAK/sC,MAAM0kC,MAAMtlC,IAAzB,qBACjBouB,EAAY,IACPuf,IAAY,UAAQ,EAAK/sC,MAAM0kC,MAAMtlC,IAAzB,qBACjBouB,EAAY,KACTA,GA3BP,EAAKxyB,MAAQ,CACT2Z,UAAW,EAAKm4B,gBAGpB,EAAKzf,aAAe,EAAKA,aAAa7oB,KAAlB,gBACpB,EAAKsoC,aAAe,EAAKA,aAAatoC,KAAlB,gBAPL,E,0EAgCN8lC,GACT,OAAQA,GACJ,IAAK,IACDnqC,KAAKH,MAAMsE,QAAQzB,KAAK1C,KAAKH,MAAM0kC,MAAMtlC,IAAM,qBAC/C,MAGJ,IAAK,IACDe,KAAKH,MAAMsE,QAAQzB,KAAK1C,KAAKH,MAAM0kC,MAAMtlC,IAAM,aAC/C,MAEJ,IAAK,IACDe,KAAKH,MAAMsE,QAAQzB,KAAK1C,KAAKH,MAAM0kC,MAAMtlC,IAAM,eAC/C,MAEJ,IAAK,IACDe,KAAKH,MAAMsE,QAAQzB,KAAK1C,KAAKH,MAAM0kC,MAAMtlC,IAAM,mBAC/C,MAEJ,IAAK,IACDe,KAAKH,MAAMsE,QAAQzB,KAAK1C,KAAKH,MAAM0kC,MAAMtlC,IAAM,qBAC/C,MAEJ,IAAK,IACDe,KAAKH,MAAMsE,QAAQzB,KAAK1C,KAAKH,MAAM0kC,MAAMtlC,IAAM,sB,0CAStC,IAAD,OAChBe,KAAK4yC,uBAAyB5yC,KAAKH,MAAMsE,QAAQ0uC,QAAO,WACpD,IAAMC,EAAe,EAAKnG,eAC1B,EAAKhpC,SAAL,eAAkB,EAAK9I,MAAvB,CAA8B2Z,UAAWs+B,U,6CAK1C9yC,KAAK4yC,wBACJ5yC,KAAK4yC,2B,+BAIH,IAAD,OACL,OACI,6BACI,kBAAC,KAAD,CAAMvlB,UAAWrtB,KAAKnF,MAAM2Z,UAAWlB,UAAU,EAAOnJ,SAAUnK,KAAKktB,cACnE,kBAAC,GAAD,CAAS3Z,IAAI,oBAAoBpO,IAAI,MAGrC,kBAAC,GAAD,CAASoO,IAAI,WAAWpO,IAAI,MAG5B,kBAAC,GAAD,CAASoO,IAAI,aAAapO,IAAI,MAG9B,kBAAC,GAAD,CAASoO,IAAI,sBAAsBpO,IAAI,MAGvC,kBAAC,GAAD,CAASoO,IAAI,oBAAoBpO,IAAI,MAGrC,kBAAC,GAAD,CAASoO,IAAI,kBAAkBpO,IAAI,OAKnC,kBAAC,IAAD,KACI,kBAAC,IAAD,CAAOmoB,OAAK,EAACC,KAAMvtB,KAAKH,MAAM0kC,MAAMtlC,IAAK6tC,OAAQ,kBAAM,kBAAC,IAAD,CAAUxjC,GAAE,UAAK,EAAKzJ,MAAM0kC,MAAMtlC,IAAtB,0BACnE,kBAAC,IAAD,CAAOquB,OAAK,EAACC,KAAI,UAAKvtB,KAAKH,MAAM0kC,MAAMtlC,IAAtB,qBAA8CuuB,UAAW,kBAAO,kBAAC,GAAD,CAAkBhoB,GAAG,mBAAmBgP,UAAW,EAAK3Z,MAAM2Z,eAC/I,kBAAC,IAAD,CAAO8Y,OAAK,EAACC,KAAI,UAAKvtB,KAAKH,MAAM0kC,MAAMtlC,IAAtB,aAAsCuuB,UAAW,kBAAO,kBAAC,GAAD,CAAWhoB,GAAG,cAAcgP,UAAW,EAAK3Z,MAAM2Z,eAC3H,kBAAC,IAAD,CAAO8Y,OAAO,EAAOC,KAAI,UAAKvtB,KAAKH,MAAM0kC,MAAMtlC,IAAtB,eAAwCuuB,UAAW,kBAAO,kBAAC,GAAD,CAAYhZ,UAAW,EAAK3Z,MAAM2Z,UAAWrQ,QAAS,EAAKtE,MAAMsE,aACpJ,kBAAC,IAAD,CAAOmpB,OAAK,EAACC,KAAI,UAAKvtB,KAAKH,MAAM0kC,MAAMtlC,IAAtB,mBAA4CuuB,UAAW,kBAAO,kBAAC,GAAD,CAAgBhZ,UAAW,EAAK3Z,MAAM2Z,UAAWrQ,QAAS,EAAKtE,MAAMsE,aACpJ,kBAAC,IAAD,CAAOmpB,OAAK,EAACC,KAAI,UAAKvtB,KAAKH,MAAM0kC,MAAMtlC,IAAtB,qBAA8CuuB,UAAW,kBAAO,kBAAC,GAAD,CAAkBhZ,UAAW,EAAK3Z,MAAM2Z,UAAWrQ,QAAS,EAAKtE,MAAMsE,aACxJ,kBAAC,IAAD,CAAOmpB,OAAK,EAACC,KAAI,UAAKvtB,KAAKH,MAAM0kC,MAAMtlC,IAAtB,mBAA4CuuB,UAAW,kBAAO,kBAAC,GAAD,CAAkBhZ,UAAW,EAAK3Z,MAAM2Z,UAAWrQ,QAAS,EAAKtE,MAAMsE,aACtJ,kBAAC,IAAD,CAAOopB,KAAK,IAAIC,UAAWha,W,GAhHtBnT,aAwHdkH,eAAWorC,ICvIbI,GAAb,sCACIC,eAAiB,GADrB,KAEIC,YAAc,GAFlB,KAGIC,WAAa,GAHjB,KAIIC,aAAe,GAJnB,KAKIC,iBAAmB,GALvB,KAMIC,oBAAsB,GAN1B,KAOIC,mBAAqB,GAPzB,KAQIC,QAAU,GARd,KASIC,SAAW,GATf,KAUIC,iBAAmB,GAVvB,KAWIC,cAAgB,2DAXpB,KAYIC,qBAAuB,GAZ3B,KAaIC,YAAc,GAblB,KAcIC,2BAA6B,GAdjC,KAeIC,sBAAwB,GAf5B,KAgBIC,eAAiB,GAhBrB,KAiBIC,qBAAuB,GAjB3B,KAkBIC,aAAe,GAlBnB,KAmBIC,UAAY,IAGVC,G,sCACFC,aAAe,G,KACfC,SAAW,G,KACXC,UAAY,G,KACZC,WAAa,G,KACbC,SAAW,G,KACXC,sBAAuB,G,KACvBC,eAAgB,G,KAChBC,WAAa,IAIV,SAASC,GAAqBC,GACjC,IAAIhS,EAAO,GACX,GAAGgS,GAAap0C,MAAMC,QAAQm0C,IAAcA,EAAUl0C,OAAS,EAE3D,IAAI,IAAIC,EAAE,EAAGA,EAAGi0C,EAAUl0C,OAAQC,IAAI,CAClC,IAAIk0C,EAAmB,IAAIX,GAC3BW,EAAiBV,aAAeS,EAAUj0C,GAAGm0C,aAC7CD,EAAiBT,SAAWQ,EAAUj0C,GAAG4R,SACzCsiC,EAAiBH,WAAcE,EAAUj0C,GAAGm0C,cAA4C,MAA5BF,EAAUj0C,GAAGo0C,WAAqB,IAAY,IAC1GF,EAAiBL,sBAAwBI,EAAUj0C,GAAGq0C,sBACtDH,EAAiBJ,eAAiBG,EAAUj0C,GAAGs0C,eAC/CJ,EAAiBR,UAAYO,EAAUj0C,GAAGyc,UAC1Cy3B,EAAiBP,WAAaM,EAAUj0C,GAAGu0C,WAC3CL,EAAiBN,SAAWK,EAAUj0C,GAAG0c,SAEzCulB,EAAKngC,KAAKoyC,GAIlB,OAAOjS,E,cC/CJ,SAASuS,GAAgCxkC,EAAczV,EAAMk6C,GAuC5D,MAtCW,CACX,CACI9qC,UAAW,eACXC,KAAM,gBACNC,cAAe,aACfE,YAAa,OACbC,MAAM,EACNC,UAAW,SAACpC,EAAOC,GAAR,OAkCvB,SAAyBD,EAAOC,GAC5B,IAAKD,EAAO,OAAQ,0BAAMvI,UAAU,wBAC/B,GAAc,QAAVuI,EAAiB,OAAQ,0BAAMvI,UAAU,6BAC7C,GAAc,SAAVuI,EAAkB,OAAQ,0BAAMvI,UAAU,2BACnD,OAAO,KAtC+BsI,CAAgBC,KAElD,CACI8B,UAAW,GACXC,KAAM,UACNI,MAAM,EACNK,cAAc,EACdN,YAAa,OACbG,UAAW,SAACC,EAAMlC,GACd,OACI,yBAAK5I,MAAM,SAEH,yBAAKkC,MAAO,CAACyD,QAAS,SAClB,kBAAC,KAAD,CAASM,MAAM,+BACX,yBAAKhG,UAAU,qBAAqB6F,QAAS,kBAAM6K,EAAa/H,OAGvD,WAAT1N,GACC,kBAAC,KAAD,CAAS+K,MAAM,mBACZ,kBAACovC,GAAA,EAAD,CAAcnzC,MAAO,CAAE6D,SAAU,OAAQgF,OAAQ,WAAajF,QAAS,kBAAMsvC,EAAexsC,Y,ICvB9H0sC,G,YACF,WAAY11C,GAAO,IAAD,8BACd,4CAAMA,KACDhF,MAAQ,CACT26C,cAAe,GACf/kC,gBAAgB,EAChBX,QAAS,MAGb,EAAKulC,eAAiB,EAAKA,eAAehxC,KAApB,gBACtB,EAAKyM,gBAAkB,EAAKA,gBAAgBzM,KAArB,gBACvB,EAAKuM,aAAe,EAAKA,aAAavM,KAAlB,gBAVN,E,iFAcdrE,KAAKy1C,oC,wDAGyB,IAAD,OACzBpnC,EAAiBrO,KAAKH,MAAMyR,eAAiBtR,KAAKH,MAAMyR,eAAiB,GAC1EjD,GjFuX6C,SAAC7I,GAEa,OAA9DkI,SAAoI/L,IAA9D+L,IAEtEA,GAA0DhE,OAAO,uCAGrE,IAAMtK,EAAcpB,IAAM2L,YAqB1B,OApBA+D,GAA4DtO,EAAYqE,SAGlB,IAAItH,SACtD,SAAUC,EAASoC,GAEfQ,GADO,UAAMtB,EAAN,2BAAyD8H,GACvDkI,IAA2DzJ,MAAK,SAAAC,GACrE9H,EAAQ8H,EAAIvF,SAEfkL,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,mEAAoEF,GAChFG,EAAOuJ,WiF7Yf2tC,CAAyCrnC,GACxCpK,MAAK,SAAAC,GACF,EAAKP,SAAS,CAAC6xC,cAAc,aAAK7yC,GAAeuB,SAEpD2F,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,Q,mCAKbjB,GAAK,IAAD,OACb,GAAGA,GAAOA,EAAIwF,eAAe,CAEzB,IAAIsnC,EAA+B,qBAArB9sC,EAAI+sC,aAA2D,cAArB/sC,EAAIgtC,aAA+B,OAAS,SAAW,aAC/GtnC,GAAoC1F,EAAIwF,eAAgBsnC,EAAS9sC,EAAI4F,YAAYxK,MAAK,SAAAwN,GAClF,EAAK9N,SAAS,CAAC8M,gBAAgB,EAAMX,QAAS2B,OAEjD5H,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,S,qCAKXjB,GAAK,IAAD,OACX+F,EAAQ/F,GAAOA,EAAI4F,WAAa5F,EAAI4F,WAAa,GACrDE,GAAmCC,GAAO3K,MAAK,SAAAC,GAC3CpF,KAAQyS,KAAK,oBACb,EAAKkkC,qCAER5rC,OAAM,SAAAC,GACHxL,QAAQC,IAAIuL,Q,wCAKhB9J,KAAK2D,SAAS,CAAC8M,gBAAkBzQ,KAAKnF,MAAM4V,mB,+BAI5C,OACI,6BACI,yBAAKvQ,UAAU,OACX,yBAAKA,UAAU,iCACX,yBAAKA,UAAU,+CAAf,+BAMR,yBAAKA,UAAU,QACX,kBAAC,KAAD,CACIsF,GAAG,uCACH6E,SAAS,YACT1L,KAAMqB,KAAKnF,MAAM26C,cACjBlrC,QAAS8qC,GAAgCp1C,KAAK4Q,aAAc5Q,KAAKH,MAAM1E,KAAM6E,KAAKq1C,gBAClF5qC,cAAc,SACdS,UAAU,EACVR,QAAQ,uBACRS,WAAW,qCACXC,iBAAkBtD,MAG1B,kBAAC,GAAD,CAAeqH,WAAYnP,KAAKnF,MAAM4V,eAAgBrB,YAAapP,KAAK8Q,gBAAiBhB,QAAS9P,KAAKnF,MAAMiV,e,GAnFpFzP,aAyF1BkH,eAAWguC,IC/FlBzS,GAAYC,KAAZD,QAEagT,G,YAEjB,WAAYj2C,GAAO,IAAD,8BACd,4CAAMA,KACDhF,MAAQ,GAFC,E,6EASqC,IAAD,OAAvCwoC,EAAuC,EAAvCA,UAAWC,EAA4B,EAA5BA,QAASC,EAAmB,EAAnBA,WAAYC,EAAO,EAAPA,MlF0WR,SAACh+B,EAAIg+B,EAAMt3B,EAAO1M,GAuBzD,OArByC,IAAIrD,SACzC,SAAUC,EAASoC,GACf,IAAIkzC,EAAW,IAAI9N,SACnB8N,EAAS7N,OAAO,iBAAkBr+B,GAClCksC,EAAS7N,OAAO,YAAa33B,GAC7BwlC,EAAS7N,OAAO,OAAQL,GAExBjkC,GAAc9B,EAAwCi0C,EAAU,KAAMlyC,GAAkByE,MAAK,SAAAC,GACzF9H,EAAQ8H,MAEX2F,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,4DAA6DF,GACzEG,EAAOuJ,YkF1XnBguC,CAA4B/1C,KAAKH,MAAMyR,eAAgBkyB,EAAMxjC,KAAKH,MAAMqwB,WAAY,SAACzwB,GAAD,OAAmB,EAAKD,iBAAiBC,EAAe+jC,EAAMD,MACjJt/B,MAAK,SAAAC,GACFm/B,EAAU,KAAMG,MAEnB35B,OAAM,SAAAC,GACHw5B,S,uCAKS7jC,EAAe+jC,EAAMD,GAClCA,EAAW,CAAEU,QAASC,KAAKC,MAAM1kC,EAAc2kC,OAAS3kC,EAAc4kC,MAAQ,KAAKjhC,QAAQ,IAAMogC,K,+CAG5EjyB,GACFA,EAAKiyB,KAAhB5kC,S,+BAWF,IAAD,OAECqkC,EAAc,CAChBvoB,KAAM,OACNwoB,OAAO,OACPC,UAAU,EACVC,cAAe,gBAAGC,EAAH,EAAGA,UAAWC,EAAd,EAAcA,QAASC,EAAvB,EAAuBA,WAAYC,EAAnC,EAAmCA,KAAnC,OAA8C,EAAKC,aAAa,CAAEJ,YAAWC,UAASC,aAAYC,UACjHr5B,SAAU,SAACoH,GAAD,OAAU,EAAKmyB,yBAAyBnyB,IAClDoyB,SAAU,QAGd,OACI,6BACI,yBAAKzjC,UAAU,OACX,yBAAKA,UAAU,yDAAf,gCAIJ,yBAAKA,UAAU,YACX,yBAAKA,UAAU,iCACP,kBAAC,GAAD,iBAAa+iC,EAAb,CAA0B/iC,UAAU,kBAChC,uBAAGA,UAAU,wBAAuB,kBAAC,KAAD,CAAMnF,KAAK,WAC/C,uBAAGmF,UAAU,mBAAb,mE,GA7DiCG,aCHlD,SAAS8zC,GAAqBt0C,GACzC,OACI,yBAAKK,UAAU,OACX,yBAAKA,UAAU,gCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,gCAAjB,aAGA,yBAAKiC,MAAO,CAAEyD,QAAS,SAEiB,MAAhC/F,EAAMo1C,uBACN,2BAAO/0C,UAAU,gEACb,2BAAOnF,KAAK,WACRoP,SAAUtK,EAAMm2C,sBAChB12B,WAAUzf,GAASA,EAAM0S,UAAY1S,EAAM0S,SAASwiC,cACpDvpC,WAAS3L,IAASA,EAAM0S,UAA0C,MAA9B1S,EAAM0S,SAASyiC,cAEvD,0BAAM90C,UAAU,eAGxB,2BAAOnF,KAAK,OACRmF,UAAU,mBACVjE,MAAO4D,GAASA,EAAM0S,UAAY1S,EAAM0S,SAASC,SAAW3S,EAAM0S,SAASC,SAAW,GACtFiI,aAAa,MAAMw7B,UAAQ,MAGvC,yBAAK/1C,UAAU,gCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,gCAAjB,UAGA,2BAAOnF,KAAK,OACRmF,UAAU,mBACVjE,MAAO4D,GAASA,EAAM0S,UAAY1S,EAAM0S,SAASwiC,aAAel1C,EAAM0S,SAASwiC,aAAe,GAC9Ft6B,aAAa,MAAMw7B,UAAQ,M,cC/BvCC,GAASC,KAATD,KAEO,SAASE,GAAwCv2C,GAC5D,OAEI,yBAAKK,UAAU,kBACX,yBAAKA,UAAU,sBAAsBD,MAAM,UACvC,yBAAKC,UAAU,gCACf,kBAAC,KAAD,CAAOm2C,QAASx2C,EAAMy2C,eAAgB13C,OAAQiB,EAAM02C,sBAChD,kBAACL,GAAD,CAAMhwC,MAAM,4BACZ,kBAACgwC,GAAD,CAAMhwC,MAAM,sBACZ,kBAACgwC,GAAD,CAAMhwC,MAAM,yBACZ,kBAACgwC,GAAD,CAAMhwC,MAAM,gB,ICG1BswC,G,YAEF,WAAY32C,GAAO,IAAD,8BACd,4CAAMA,KAEDhF,MAAQ,CACT47C,qBAAsB,IAAI1D,GAC1B2D,YAAaziC,KACblI,aAAa,EACb4qC,wBAAyB,GACzBC,0BAA2B,GAC3BC,0BAA2B,GAC3BP,eAAgB,EAChBQ,qBAAqB,EACrBP,qBAAsB,GACtBQ,0BAA0B,GAG9B,EAAKx4B,kBAAoB,EAAKA,kBAAkBla,KAAvB,gBACzB,EAAK2yC,wBAA0B,EAAKA,wBAAwB3yC,KAA7B,gBAC/B,EAAK4yC,kBAAoB,EAAKA,kBAAkB5yC,KAAvB,gBACzB,EAAK2xC,sBAAwB,EAAKA,sBAAsB3xC,KAA3B,gBAC7B,EAAK6yC,kBAAoB,EAAKA,kBAAkB7yC,KAAvB,gBACzB,EAAK8yC,uBAAyB,EAAKA,uBAAuB9yC,KAA5B,gBArBhB,E,iFA0Bd,G5DXJgF,KAAK+Y,KAAK,4BAA6B,CAAC7Y,SAAU,GAAKC,QAAS,K4DWzDxJ,KAAKH,MAAM1E,MAA6B,WAApB6E,KAAKH,MAAM1E,MAAyC,SAApB6E,KAAKH,MAAM1E,KAG9D,CACA,IAAIyiC,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OACzC+iC,EAAY6Y,qBAAqBxD,YAAch/B,KAASU,O9FxB1C,c8FyBd3U,KAAK2D,SAASi6B,QALd59B,KAAKo3C,iC,qDAUkB,IAAD,OAC1Bp3C,KAAK2D,SAAS,CAACoI,aAAa,IAAO,WAC3B,IAAIsC,EAAiB,EAAKxO,MAAMnE,sBAAwB,EAAKmE,MAAMnE,qBAAqB4V,eAAiB,EAAKzR,MAAMnE,qBAAqB4V,eAAiB,KACvJjD,GrFwG6B,SAACA,GAEa,OAAtDlB,SAAoHxL,IAAtDwL,IAE9DA,GAAkDzD,OAAO,oEAG7D,IAAMtK,EAAcpB,IAAM2L,YAwB1B,OAvBAwD,GAAoD/N,EAAYqE,SAGnB,IAAItH,SAC7C,SAAUC,EAASoC,GAEfQ,GADO,UAAM3B,EAAN,eAA4CgR,GAC1ClB,IAAmDlJ,MAAK,SAAAC,GAC1DA,GAAOA,EAAIvF,KACVvC,EAAQ8H,EAAIvF,MAEZH,EAAOuJ,OAGd8B,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,gFAAiFF,GAC7FG,EAAOuJ,WqFlIPsvC,CAAiChpC,GAAgBpK,MAAK,SAAAtF,GAC/CA,GACC,EAAKgF,SAAS,CAACoI,aAAa,IAAQ,WAChC,EAAKurC,uBAAuB34C,SAIvCkL,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACd,EAAKnG,SAAS,CAACoI,aAAa,Y,wCAO9BhI,GACd,IAAIwzC,EAAcxzC,EAAMiG,OAAOjP,KAC/B,GAAmB,SAAhBw8C,GAA0C,aAAhBA,GAA8C,UAAhBA,EAAwB,CAC/E,IAAI3Z,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OAEzC,GAA0B,qBAAtBkJ,EAAMiG,OAAO0Q,MAAqD,wBAAtB3W,EAAMiG,OAAO0Q,MAC7B,KAAvB3W,EAAMiG,OAAO/N,OAFD,6BAE8BukC,KAAKz8B,EAAMiG,OAAO/N,SAAW8H,EAAMiG,OAAO/N,MAAM0E,QAAU,KACrGi9B,EAAY6Y,qBAAqB1yC,EAAMiG,OAAO0Q,MAAQ3W,EAAMiG,OAAO/N,MAC1C,qBAAtB8H,EAAMiG,OAAO0Q,OACZkjB,EAAY+Y,wBAA0B5yC,EAAMiG,OAAO/N,OAG9B,wBAAtB8H,EAAMiG,OAAO0Q,OACZkjB,EAAYgZ,0BAA4B7yC,EAAMiG,OAAO/N,OAEzD+D,KAAK2D,SAASi6B,SAEhB,GAAyB,uBAAtB75B,EAAMiG,OAAO0Q,KAA8B,CACb,sBACL8lB,KAAKz8B,EAAMiG,OAAO/N,SAC5C2hC,EAAY6Y,qBAAqB1yC,EAAMiG,OAAO0Q,MAAQ3W,EAAMiG,OAAO/N,MACnE+D,KAAK2D,SAASi6B,SAIlBA,EAAY6Y,qBAAqB1yC,EAAMiG,OAAO0Q,MAAQ3W,EAAMiG,OAAO/N,MACnE+D,KAAK2D,SAASi6B,M,8CAMF77B,GACpB,GAAGA,EAAI,CACH,IAAI67B,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OACzC+iC,EAAY6Y,qBAAqBxD,YAAclxC,EAAI4S,O9FrFrC,c8FsFdipB,EAAY8Y,YAAcziC,GAAOlS,EAAI4S,O9FtFvB,4B8FuFd3U,KAAK2D,SAASi6B,M,+BAKK,WAApB59B,KAAKH,MAAM1E,KACV6E,KAAKw3C,cAAc,QAEnBx3C,KAAKy3C,cAAc,U,iCAKA,WAApBz3C,KAAKH,MAAM1E,KACV6E,KAAKw3C,cAAc,UAEnBx3C,KAAKy3C,cAAc,Y,iCAKpBz3C,KAAKH,MAAMsE,SACVnE,KAAKH,MAAMsE,QAAQzB,KAAK,gC,oCAIlBvH,GAAM,IAAD,OAEf,GAAG6E,KAAK03C,oBAAoB13C,KAAKnF,MAAMg8C,2BAA2B,CAGlE,IAAIc,EAAiB33C,KAAKH,MAAMpF,KAAKuM,SAGjC42B,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OAEzC+iC,EAAY6Y,qBAAqBkB,eAAiBA,EAClD/Z,EAAY6Y,qBAAqBvC,UAAjC,aAAiDU,GAAqB50C,KAAKnF,MAAMg8C,4BACjFjZ,EAAYkZ,qBAAqB,EACjClZ,EAAY0Y,eAAiB,EAC7B1Y,EAAY2Y,qBAAuB,GAEnCv2C,KAAK2D,SAASi6B,GAAc,YrFiHW,SAAC1/B,EAAS/C,GAEI,OAArDmS,SAAkH3L,IAArD2L,IAE7DA,GAAiD5D,OAAO,6EAG5D,IAAMtK,EAAcpB,IAAM2L,YA0B1B,OAzBA2D,GAAmDlO,EAAYqE,SAGlB,IAAItH,SAC7C,SAAUC,EAASoC,GACf,IAAIG,EAAO,CACP,SAAqB,WAATxD,EACZ,uBAA0B+C,GAG1B4P,EAAUzL,GAAY0L,KAAKC,UAAUrP,IAEzCU,GAAKnC,EAAoC4Q,EAASR,IAAkDrJ,MAAK,SAAAC,GACrG9H,EAAQ8H,MAEX2F,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,0DAA2DF,GACvEG,EAAOuJ,YqF7If6vC,CAAgC,EAAK/8C,MAAM47C,qBAAsBt7C,GAAM8I,MAAK,SAAAC,GACxE,IAAIoN,EAAiBpN,EAAIvF,KACzB,EAAKgF,SAAS,CAAC2yC,eAAgB,IAC3BhoC,GAAsBgD,GAAgBrN,MAAK,SAAA4zC,GAC7B,WAAT18C,GACG,EAAKwI,SAAS,CAAC2yC,eAAgB,IAC/BloC,GAAwBkD,GAAgBrN,MAAK,SAAA6zC,GACzC,EAAKn0C,SAAS,CAAC2yC,eAAgB,IAC/B5nC,GAAsC4C,EAAgB,OAAOrN,MAAK,SAAA8zC,GAC9D,EAAKp0C,SAAS,CAACmzC,qBAAqB,EAAOR,eAAgB,IAAI,WAC3Dx3C,KAAQyS,KAAK,qCAAsC,GACnD,EAAK1R,MAAMsE,QAAQzB,KAAK,oCAG/BmH,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACdhL,KAAQT,MAAM,4DAA6D,GAC3E,EAAKsF,SAAS,CAAC4yC,qBAAsB,UAAU,WAC3C,EAAKW,6BAIhBrtC,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACdhL,KAAQT,MAAM,qGAAsG,GACpH,EAAKsF,SAAS,CAAC4yC,qBAAsB,UAAU,WAC3C,EAAKW,2BAKb,EAAKvzC,SAAS,CAACmzC,qBAAqB,IAAQ,WACxCh4C,KAAQyS,KAAK,+BACb,EAAK1R,MAAMsE,QAAQzB,KAAK,6BAA8B,SAIjEmH,OAAM,SAAAC,GAEHxL,QAAQD,MAAMyL,GACdhL,KAAQT,MAAM,4GAA6G,GAC3H,EAAKsF,SAAS,CAAC4yC,qBAAsB,UAAU,WAC3C,EAAKW,6BAIpBrtC,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACdhL,KAAQT,MAAM,gEAAiE,GAC/E,EAAKsF,SAAS,CAAC4yC,qBAAsB,UAAU,WAC3C,EAAKW,kCAKhBp4C,KAAQk5C,QAAQ,yC,0CAID,IAAD,OACfvrB,YAAW,WACP,EAAK9oB,SAAS,CAACmzC,qBAAqB,MACrC,O,oCAIO37C,GAAM,IAAD,OAEf,GAAG6E,KAAK03C,oBAAoB13C,KAAKnF,MAAMg8C,2BAA2B,CAGlE,IAAIc,EAAiB33C,KAAKH,MAAMpF,KAAKuM,SAGjC42B,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OAEzC+iC,EAAY6Y,qBAAqBkB,eAAiBA,EAClD/Z,EAAY6Y,qBAAqBvC,UAAjC,aAAiDU,GAAqB50C,KAAKnF,MAAMg8C,4BACjFjZ,EAAYkZ,qBAAqB,EACjClZ,EAAY0Y,eAAiB,EAC7B1Y,EAAY2Y,qBAAuB,GAEnCv2C,KAAK2D,SAASi6B,GAAa,WACvB/vB,GAAgC,EAAKhT,MAAM47C,qBAAsBt7C,GAAM8I,MAAK,SAAAC,GACxE,EAAKP,SAAS,CAAC2yC,eAAgB,IAC/B,IAAIhlC,EAAiBpN,EAAIvF,KACzB,EAAK9D,MAAM47C,qBAAqBzD,eAAiB1hC,EAC7ChD,GAAsBgD,GAAgBrN,MAAK,SAAA4zC,GAC3B,WAAT18C,GAEC,EAAKwI,SAAS,CAAC2yC,eAAgB,IAC/BloC,GAAwBkD,GAAgBrN,MAAK,SAAA6zC,GACzC,EAAKn0C,SAAS,CAAC2yC,eAAgB,IAC/B5nC,GAAsC4C,EAAgB,OAAOrN,MAAK,SAAA8zC,GAC9D,EAAKp0C,SAAS,CAACmzC,qBAAqB,EAAOR,eAAgB,IAAI,WAC3Dx3C,KAAQyS,KAAK,qCAAsC,GACnD,EAAK1R,MAAMsE,QAAQzB,KAAK,oCAG/BmH,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACdhL,KAAQT,MAAM,4DAA6D,GAC3E,EAAKsF,SAAS,CAAC4yC,qBAAsB,UAAU,WAC3C,EAAKW,6BAIhBrtC,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACdhL,KAAQT,MAAM,qGAAsG,GACpH,EAAKsF,SAAS,CAAC4yC,qBAAsB,UAAU,WAC3C,EAAKW,2BAKb,EAAKvzC,SAAS,CAACmzC,qBAAqB,EAAOR,eAAgB,IAAI,WAC3Dx3C,KAAQyS,KAAK,8BAA+B,GAC5C,EAAK1R,MAAMsE,QAAQzB,KAAK,oCAInCmH,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACdhL,KAAQT,MAAM,4GAA6G,GAC3H,EAAKsF,SAAS,CAAC4yC,qBAAsB,UAAU,WAC3C,EAAKW,6BAKpBrtC,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACdhL,KAAQT,MAAM,gEAAiE,GAC/E,EAAKsF,SAAS,CAAC4yC,qBAAsB,UAAU,WAC3C,EAAKW,kCAMhBp4C,KAAQk5C,QAAQ,yC,6CAMEr5C,GACnB,IAAIi/B,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OAwBrC,GAvBA+iC,EAAY6Y,qBAAqBzD,eAAiBr0C,EAAK2S,eAAiB3S,EAAK2S,eAAiB,GAC9FssB,EAAY6Y,qBAAqBvD,WAAav0C,EAAKs5C,WAAat5C,EAAKs5C,WAAa,GAClFra,EAAY6Y,qBAAqBtD,aAAex0C,EAAKu5C,aAAev5C,EAAKu5C,aAAe,GACxFta,EAAY6Y,qBAAqBlD,QAAU50C,EAAKw5C,QAAUx5C,EAAKw5C,QAAU,GACzEva,EAAY6Y,qBAAqBjD,SAAW70C,EAAKy5C,SAAWz5C,EAAKy5C,SAAW,GAC5Exa,EAAY6Y,qBAAqBhD,iBAAmB90C,EAAK05C,iBAAmB15C,EAAK05C,iBAAmB,GACpGza,EAAY6Y,qBAAqB/C,cAAgB/0C,EAAK25C,cAAgB35C,EAAK25C,cAAgB,GAC3F1a,EAAY6Y,qBAAqB7C,YAAcj1C,EAAK45C,oBAAsB55C,EAAK45C,oBAAsB,GACrG3a,EAAY6Y,qBAAqB5C,2BAA6Bl1C,EAAK65C,2BAA6B75C,EAAK65C,2BAA6B,GAClI5a,EAAY6Y,qBAAqB9C,qBAAuBh1C,EAAK85C,qBAAuB95C,EAAK85C,qBAAuB,GAChH7a,EAAY6Y,qBAAqBrD,iBAAmBz0C,EAAK+5C,iBAAmBz2C,WAAWtD,EAAK+5C,kBAAqB,GACjH9a,EAAY6Y,qBAAqBpD,oBAAsB10C,EAAKg6C,oBAAsB12C,WAAWtD,EAAKg6C,qBAAuB,GACzH/a,EAAY6Y,qBAAqBnD,mBAAqB30C,EAAKi6C,mBAAsBj6C,EAAKi6C,mBAAqB,GAC3Ghb,EAAY6Y,qBAAqB7C,YAAcj1C,EAAKk6C,YAAel6C,EAAKk6C,YAAc,GACtFjb,EAAY6Y,qBAAqB3C,sBAAwBn1C,EAAKm6C,sBAAwBn6C,EAAKm6C,sBAAwB,GACnHlb,EAAY6Y,qBAAqB1C,eAAiBp1C,EAAKo6C,eAAiBp6C,EAAKo6C,eAAiB,GAC9Fnb,EAAY6Y,qBAAqBzC,qBAAuBr1C,EAAKq6C,qBAAwBr6C,EAAKq6C,qBAAuB,GACjHpb,EAAY6Y,qBAAqBxC,aAAet1C,EAAKs6C,aAAet6C,EAAKs6C,aAAe,GACxFrb,EAAY6Y,qBAAqBxD,YAAct0C,EAAKu6C,YAAcv6C,EAAKu6C,YAAc,GACrFtb,EAAY8Y,YAAcziC,GAAOtV,EAAKu6C,Y9F1SxB,c8F2Sdtb,EAAY+Y,wBAA0Bh4C,EAAK+5C,iBAAmBz2C,WAAWtD,EAAK+5C,kBAAkBx2C,eAAe,QAAS,CAAEC,MAAO,WAAYC,SAAU,QAAW,GAClKw7B,EAAYgZ,0BAA4Bj4C,EAAKg6C,oBAAsB12C,WAAWtD,EAAKg6C,qBAAqBz2C,eAAe,QAAS,CAAEC,MAAO,WAAYC,SAAU,QAAW,GAEvKzD,EAAKk2C,WAAap0C,MAAMC,QAAQ/B,EAAKk2C,WAAW,CAC/C,IAAIsE,EAAan5C,KAAKo5C,8BAA8Bz6C,EAAKk2C,WACzD70C,KAAKq5C,+BAA+B16C,EAAKk2C,UAAWsE,GACpDn5C,KAAKs5C,kCAAkC36C,EAAKk2C,WAC5CjX,EAAYiZ,0BAAZ,aAA4Cl0C,GAAehE,EAAKk2C,YAChEjX,EAAYmZ,yBAA2BoC,OAEvCvb,EAAYiZ,0BAA4B,GACxCjZ,EAAYmZ,0BAA2B,EAG/C/2C,KAAK2D,SAASi6B,K,wCAGA15B,GACd,GAAGA,GAAOA,EAAI2Q,eAAiBpU,MAAMC,QAAQwD,EAAI2Q,gBAAkB3Q,EAAI2Q,cAAclU,OAAS,EAAE,CAC5F,IAAIhC,EAAOuF,EAAI2Q,cAAc,GACzB+oB,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OAErCo5C,EAAY,UAAMt1C,EAAK46C,QAAU56C,EAAK46C,QAAU,GAApC,0CAahB,GAZA3b,EAAY6Y,qBAAqBxC,aAAeA,EAChDrW,EAAY6Y,qBAAqBvD,WAAav0C,EAAK66C,WAAa76C,EAAK66C,WAAa,GAClF5b,EAAY6Y,qBAAqBlD,QAAU50C,EAAK86C,SAAW96C,EAAK86C,SAAW,GAC3E7b,EAAY6Y,qBAAqBjD,SAAW70C,EAAK46C,QAAU56C,EAAK46C,QAAU,GAC1E3b,EAAY6Y,qBAAqBhD,iBAAmB90C,EAAK05C,iBAAmB15C,EAAK05C,iBAAmB,GACpGza,EAAY6Y,qBAAqB7C,YAAcj1C,EAAK45C,oBAAsB55C,EAAK45C,oBAAsB,GACrG3a,EAAY6Y,qBAAqB5C,2BAA6Bl1C,EAAK+6C,uBAAyB/6C,EAAK+6C,uBAAyB,GAC1H9b,EAAY6Y,qBAAqB9C,qBAAuBh1C,EAAKg7C,gBAAkBh7C,EAAKg7C,gBAAkB,GACtG/b,EAAY6Y,qBAAqBrD,iBAAmBz0C,EAAK+5C,iBAAmB/5C,EAAK+5C,iBAAoB,GACrG9a,EAAY6Y,qBAAqBpD,oBAAsB10C,EAAKi7C,yBAA2Bj7C,EAAKi7C,yBAA2B,GACvHhc,EAAY+Y,wBAA0Bh4C,EAAK+5C,iBAAmBz2C,WAAWtD,EAAK+5C,kBAAkBx2C,eAAe,QAAS,CAAEC,MAAO,WAAYC,SAAU,QAAW,GAClKw7B,EAAYgZ,0BAA4Bj4C,EAAKg6C,oBAAsB12C,WAAWtD,EAAKg6C,qBAAqBz2C,eAAe,QAAS,CAAEC,MAAO,WAAYC,SAAU,QAAW,GACvKzD,EAAKk7C,yBAA2Bp5C,MAAMC,QAAQ/B,EAAKk7C,yBAAyB,CAE3E75C,KAAKq5C,+BAA+B16C,EAAKk7C,yBADxB,GAEjB,IAAIC,EAAqB,ajG9MA,SAACl3C,GACtC,GAAGA,GAAOnC,MAAMC,QAAQkC,IAAQA,EAAIjC,OAAS,EACzC,IAAI,IAAIC,EAAE,EAAGA,EAAGgC,EAAIjC,OAAQC,IACxBgC,EAAIhC,GAAJ,UAAsBA,EACtBgC,EAAIhC,GAAJ,WAAuB,IAG/B,OAAOgC,EiGuMqCm3C,CAA0Bp7C,EAAKk7C,0BAC/D75C,KAAKs5C,kCAAkCQ,GACvClc,EAAYiZ,0BAAZ,aAA4CiD,GAC5Clc,EAAYmZ,0BALK,OAOjBnZ,EAAYmZ,0BAA2B,EACvCnZ,EAAYiZ,0BAA4B,GAG5C72C,KAAK2D,SAASi6B,M,qDAISiX,EAAWsE,GAClC,GAAGA,EACC,IAAI,IAAIv4C,EAAE,EAAGA,EAAGi0C,EAAUl0C,OAAQC,IACY,MAAvCi0C,EAAUj0C,GAAGq0C,wBACZJ,EAAUj0C,GAAGo0C,WAAa,UAIlC,IAAI,IAAIp0C,EAAE,EAAGA,EAAGi0C,EAAUl0C,OAAQC,IACY,MAAvCi0C,EAAUj0C,GAAGq0C,wBACZJ,EAAUj0C,GAAGo0C,WAAa,O,oDAMhBH,GAGtB,IAFJ,IAAIsE,GAAY,EAEJv4C,EAAE,EAAGA,EAAGi0C,EAAUl0C,OAAQC,IAC9B,GAA0C,MAAvCi0C,EAAUj0C,GAAGq0C,uBAA6D,MAA5BJ,EAAUj0C,GAAGo0C,WAAmB,CAC7EmE,GAAY,EACZ,MAIX,OAAOA,I,wDAGsBtE,GAC9B,IAAI,IAAIj0C,EAAE,EAAGA,EAAGi0C,EAAUl0C,OAAQC,IACY,MAAvCi0C,EAAUj0C,GAAGq0C,uBAAgE,OAA9BJ,EAAUj0C,GAAGm0C,mBAAuDpzC,IAA9BkzC,EAAUj0C,GAAGm0C,cAA4D,KAA9BF,EAAUj0C,GAAGm0C,eAC5IF,EAAUj0C,GAAGo0C,WAAa,O,0CAKlBH,GAChB,IAAImF,GAAa,EAEjB,GAAGnF,GAAap0C,MAAMC,QAAQm0C,IAAcA,EAAUl0C,OAAS,EAC3D,IAAI,IAAIC,EAAE,EAAGA,EAAGi0C,EAAUl0C,OAAQC,IAC9B,GAA+B,MAA5Bi0C,EAAUj0C,GAAGo0C,WAAmB,CAC/BgF,GAAc,EACd,MAKZ,OAAOA,I,6CAIYxoC,GAAU,IAAD,OAEzBA,GACHxR,KAAK2D,SAAS,CAACoI,aAAa,IAAO,YrFtXR,SAACyF,GAEa,OAAzCvE,SAA0FtL,IAAzCsL,IAEjDA,GAAqCvD,OAAO,2DAGhD,IAAMtK,EAAcpB,IAAM2L,YAwB1B,OAvBAsD,GAAuC7N,EAAYqE,SAGN,IAAItH,SAC7C,SAAUC,EAASoC,GAEfQ,GADO,UAAMtC,IAAN,YjB1CmB,iEiB0CnB,2BAA+D8U,GAC7DvE,IAAsChJ,MAAK,SAAAC,GAC7CA,GAAOA,EAAIvF,MAAQuF,EAAIvF,KAAK0hC,YAAsC,MAAxBn8B,EAAIvF,KAAK0hC,WAClDjkC,EAAQ8H,EAAIvF,MAEZH,EAAOuJ,OAGd8B,OAAM,SAACxL,GACAL,IAAMU,SAASL,GACfC,QAAQC,IAAIF,IAGZC,QAAQC,IAAI,mEAAoEF,GAChFG,EAAOuJ,YqF4VfkyC,CAAoBzoC,GAAUvN,MAAK,SAAAC,GAC/B,EAAKP,SAAS,CAACoI,aAAa,IAAQ,WAChC,EAAKkrC,kBAAkB/yC,SAG9B2F,OAAM,SAAAC,GACHxL,QAAQD,MAAMyL,GACd,IAAIowC,EAAW,IAAInH,GACnBmH,EAAS/G,aAAe,EAAKt4C,MAAM47C,qBAAqBtD,aACxD+G,EAASjH,YAAc,EAAKp4C,MAAM47C,qBAAqBxD,YAAc,EAAKp4C,MAAM47C,qBAAqBxD,YAAc,GACnH,IAAIyD,EAAcwD,EAASjH,YAAeh/B,GAAOimC,EAASjH,Y9FjahD,c8Fia2Eh/B,KACrF,EAAKtQ,SAAS,CAACoI,aAAa,EAAO0qC,qBAAsByD,EAAUxD,YAAaA,Y,sCAM5E3yC,GACZ,IAAI65B,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OAEhB,qBAAtBkJ,EAAMiG,OAAO0Q,OAEL3W,EAAMiG,OAAO/N,MACR+F,MAAM+B,EAAMiG,OAAO/N,SACnB2hC,EAAY6Y,qBAAqBrD,iBAAmBrvC,EAAMiG,OAAO/N,MACjE2hC,EAAY+Y,wBAA0B10C,WAAW8B,EAAMiG,OAAO/N,OAAOiG,eAAe,QAAS,CAAEC,MAAO,WAAYC,SAAU,UAGhIw7B,EAAY6Y,qBAAqBrD,iBAAmB,GACpDxV,EAAY+Y,wBAA0B,KAKzB,wBAAtB5yC,EAAMiG,OAAO0Q,OACL3W,EAAMiG,OAAO/N,MACR+F,MAAM+B,EAAMiG,OAAO/N,SACnB2hC,EAAY6Y,qBAAqBpD,oBAAsBtvC,EAAMiG,OAAO/N,MACpE2hC,EAAYgZ,0BAA4B30C,WAAW8B,EAAMiG,OAAO/N,OAAOiG,eAAe,QAAS,CAAEC,MAAO,WAAYC,SAAU,UAGlIw7B,EAAY6Y,qBAAqBpD,oBAAsB,GACvDzV,EAAYgZ,0BAA4B,KAI3B,uBAAtB7yC,EAAMiG,OAAO0Q,OACT3W,EAAMiG,OAAO/N,MACZ2hC,EAAY6Y,qBAAqB1C,eAAjC,oCACiC/zC,KAAKnF,MAAM47C,qBAAqBjD,SADjE,kDACmHxzC,KAAKm6C,kCAAkCn6C,KAAKnF,MAAMg8C,2BADrK,sEAC6P72C,KAAKnF,MAAM47C,qBAAqBnD,mBAD7R,+EAGA1V,EAAY6Y,qBAAqBnD,mBAAqB,GACtD1V,EAAY6Y,qBAAqB1C,eAAiB,KAI1D/zC,KAAK2D,SAASi6B,K,wDAGgB0Q,GAC9B,IAAIuG,EAAa,GACjB,GAAGvG,GAAiB7tC,MAAMC,QAAQ4tC,IAAkBA,EAAc3tC,OAAS,EACvE,IAAI,IAAIC,EAAE,EAAGA,EAAG0tC,EAAc3tC,OAAQC,IAClCtC,QAAQC,IAAI+vC,EAAc1tC,IACoB,MAA3C0tC,EAAc1tC,GAAGq0C,uBAAiC3G,EAAc1tC,GAAG4R,WAClEqiC,GAAqB,UAAMvG,EAAc1tC,GAAG4R,SAAvB,OAMjC,OADAlU,QAAQC,IAAIs2C,GACLA,I,0CAGS9wC,GAChB,IAAI65B,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OAEhB,qBAAtBkJ,EAAMiG,OAAO0Q,OACZkjB,EAAY+Y,wBAA0B32C,KAAKnF,MAAM47C,qBAAqBrD,kBAGjD,wBAAtBrvC,EAAMiG,OAAO0Q,OACZkjB,EAAYgZ,0BAA4B52C,KAAKnF,MAAM47C,qBAAqBpD,qBAI5ErzC,KAAK2D,SAASi6B,K,yCAGC,IAAD,OACd,GAAuB,WAApB59B,KAAKH,MAAM1E,KAAkB,CAG5B,IAAIw8C,EAAiB33C,KAAKH,MAAMpF,KAAKuM,SAGjC42B,EAAct8B,OAAOq+B,OAAO,GAAI3/B,KAAKnF,OAEzC+iC,EAAY6Y,qBAAqBkB,eAAiBA,EAClD/Z,EAAY6Y,qBAAqBvC,UAAjC,aAAiDU,GAAqB50C,KAAKnF,MAAMg8C,4BACjFjZ,EAAY7xB,aAAa,EAEzB/L,KAAK2D,SAASi6B,GAAa,WACvB/vB,GAAgC,EAAKhT,MAAM47C,qBAAsB,QAAQxyC,MAAK,SAAAC,GAC1E,IAAI05B,EAAct8B,OAAOq+B,OAAO,GAAI,EAAK9kC,OACzC+iC,EAAY6Y,qBAAqBzD,eAAiB9uC,EAAIvF,KACtDi/B,EAAY7xB,aAAa,EACzB,EAAKpI,SAASi6B,GACd9+B,KAAQyS,KAAK,4EAEhB1H,OAAM,SAAAC,GACHhL,KAAQT,MAAM,6EACd,EAAKsF,SAAS,CAACoI,aAAa,a,4CAOtBhI,EAAOwO,GACzB,GAAGA,EAAS,CAER,IADA,IAAI6nC,EAAqBvuB,GAAU7rB,KAAKnF,MAAMg8C,2BACtCj2C,EAAE,EAAGA,EAAGw5C,EAAmBz5C,OAAQC,IACvC,GAAGw5C,EAAmBx5C,GAAGy5C,YAAc9nC,EAAS8nC,UAAU,CACtDD,EAAmBx5C,GAAGo0C,WAAajxC,EAAMiG,OAAOwB,QAAU,IAAM,IAChE,MAGRxL,KAAK2D,SAAS,CAACkzC,0BAA2BuD,GAAsBA,EAAmBz5C,OAAS,EAAIy5C,EAAqB,Q,6CAItGr2C,GAGnB,IADA,IAAIq2C,EAAqBvuB,GAAU7rB,KAAKnF,MAAMg8C,2BACtCj2C,EAAE,EAAGA,EAAGw5C,EAAmBz5C,OAAQC,IACY,MAAhDw5C,EAAmBx5C,GAAGq0C,wBACrBmF,EAAmBx5C,GAAGo0C,WAAajxC,EAAMiG,OAAOwB,QAAU,IAAM,KAIxExL,KAAK2D,SAAS,CACVkzC,0BAA2BuD,GAAsBA,EAAmBz5C,OAAS,EAAIy5C,EAAqB,GACtGrD,yBAA0BhzC,EAAMiG,OAAOwB,Y,+BAKrC,IAAD,OACL,OACI,oCAEQxL,KAAKnF,MAAMkR,aAAiB,kBAAC,GAAD,MAI5B/L,KAAKnF,MAAMi8C,qBAAwB,kBAACV,GAAD,CAAyCE,eAAgBt2C,KAAKnF,MAAMy7C,eAAgBC,qBAAsBv2C,KAAKnF,MAAM07C,uBAG5J,yBAAKr2C,UAAU,sCACX,yBAAKA,UAAU,OACX,yBAAKA,UAAU,gCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,+BAAjB,0BAIJ,yBAAKA,UAAU,+BAA+BD,MAAM,SAChD,kBAAC+U,GAAA,EAAD,mBACiB,kBAAC,KAAD,CAAY/Y,MAAOgY,GAAOjU,KAAKnF,MAAM67C,aAAc/hC,O9F/jBtE,a8F+jB0FM,WAAW,EAAO9K,SAAUnK,KAAKg3C,6BAIjI,yBAAK92C,UAAU,YACX,yBAAKA,UAAU,gCAAgCD,MAAM,UACjD,kBAAC+U,GAAA,EAAD,CAAO9U,UAAU,+BAAjB,4CAGR,yBAAKA,UAAU,uBACX,yBAAKA,UAAU,OAEX,yBAAKA,UAAU,gCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,gCAAjB,cAGA,2BAAOnF,KAAK,OAAOmF,UAAU,mBAAmBwa,KAAK,eAAeze,MAAO+D,KAAKnF,MAAM47C,qBAAqBtD,aACvGpd,UAAW,GACXtb,aAAa,MACbtQ,SAAUnK,KAAKue,kBACfe,SAA+B,WAApBtf,KAAKH,MAAM1E,MAAyC,SAApB6E,KAAKH,MAAM1E,KACtD4kB,OAAQ,kBAAM,EAAKu6B,uBAAuB,EAAKz/C,MAAM47C,qBAAqBtD,kBAGlF,yBAAKjzC,UAAU,gCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,gCAAjB,gBAGA,2BAAOnF,KAAK,OAAOmF,UAAU,mBAAmBwa,KAAK,aACjDze,MAAO+D,KAAKnF,MAAM47C,qBAAqBvD,WAAY/oC,SAAUnK,KAAKue,kBAClEwX,UAAW,IACXtb,aAAa,MACb6E,UAAUtf,KAAKnF,MAAM47C,qBAAqBtD,iBAItD,yBAAKjzC,UAAU,OACX,yBAAKA,UAAU,gCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,gCAAjB,sBAGA,2BAAOnF,KAAK,OAAOmF,UAAU,mBAAmBwa,KAAK,mBACjDqb,UAAW,GACXzW,UAAUtf,KAAKnF,MAAM47C,qBAAqBtD,aAC1CpzB,OAAQ,SAAC9c,GAAD,OAAO,EAAKs3C,gBAAgBt3C,IACpCu3C,QAAS,SAACv3C,GAAD,OAAO,EAAKw3C,oBAAoBx3C,IACzChH,MAAO+D,KAAKnF,MAAM87C,wBAAyBxsC,SAAUnK,KAAKue,kBAAmB9D,aAAa,SAElG,yBAAKva,UAAU,gCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,gCAAjB,gCAGA,2BAAOnF,KAAK,OAAOmF,UAAU,mBAAmBwa,KAAK,sBACrDqb,UAAW,GACX95B,MAAO+D,KAAKnF,MAAM+7C,0BAClBt3B,UAAUtf,KAAKnF,MAAM47C,qBAAqBtD,aAC1CpzB,OAAQ,SAAC9c,GAAD,OAAO,EAAKs3C,gBAAgBt3C,IACpCu3C,QAAS,SAACv3C,GAAD,OAAO,EAAKw3C,oBAAoBx3C,IACzCkH,SAAUnK,KAAKue,kBAAmB9D,aAAa,UAGvD,yBAAKva,UAAU,OACX,yBAAKA,UAAU,gCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,gCAAjB,YAGA,2BAAOnF,KAAK,OAAOmF,UAAU,mBAAmBwa,KAAK,UACjDqb,UAAW,IACXzW,UAAUtf,KAAKnF,MAAM47C,qBAAqBtD,aAC1Cl3C,MAAO+D,KAAKnF,MAAM47C,qBAAqBlD,QAASppC,SAAUnK,KAAKue,kBAAmB9D,aAAa,SAEvG,yBAAKva,UAAU,gCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,gCAAjB,eAGA,2BAAOnF,KAAK,OAAOmF,UAAU,mBAAmBwa,KAAK,WACjDqb,UAAW,IACXzW,UAAUtf,KAAKnF,MAAM47C,qBAAqBtD,aAC1Cl3C,MAAO+D,KAAKnF,MAAM47C,qBAAqBjD,SAAUrpC,SAAUnK,KAAKue,kBAAmB9D,aAAa,UAG5G,yBAAKva,UAAU,OACX,yBAAKA,UAAU,iCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,gCAAjB,6BAGA,2BAAOnF,KAAK,OAAOmF,UAAU,mBAAmBwa,KAAK,uBACjDqb,UAAW,IACXzW,UAAUtf,KAAKnF,MAAM47C,qBAAqBtD,aAC1Cl3C,MAAO+D,KAAKnF,MAAM47C,qBAAqB9C,qBAAsBxpC,SAAUnK,KAAKue,kBAAmB9D,aAAa,UAGxH,yBAAKva,UAAU,OACX,yBAAKA,UAAU,gCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,gCAAjB,6BAGA,8BAAUA,UAAU,6CAA6Cib,KAAK,IAAIu/B,KAAK,KAAKhgC,KAAK,cACrF4E,UAAUtf,KAAKnF,MAAM47C,qBAAqBtD,aAC1Cl3C,MAAO+D,KAAKnF,MAAM47C,qBAAqB7C,YAAazpC,SAAUnK,KAAKue,kBAAmB9D,aAAa,SAE3G,yBAAKva,UAAU,gCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,gCAAjB,yCAGA,8BAAUA,UAAU,6CAA6Cib,KAAK,IAAIu/B,KAAK,KAAKhgC,KAAK,6BACrF4E,UAAUtf,KAAKnF,MAAM47C,qBAAqBtD,aAC1Cl3C,MAAO+D,KAAKnF,MAAM47C,qBAAqB5C,2BAA4B1pC,SAAUnK,KAAKue,kBAAmB9D,aAAa,UAG9H,yBAAKva,UAAU,OACX,yBAAKA,UAAU,gCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,gCAAjB,wBAGA,2BAAOnF,KAAK,OAAOmF,UAAU,mBAAmBwa,KAAK,qBACjDqb,UAAW,GACXzW,UAAUtf,KAAKnF,MAAM47C,qBAAqBtD,aAC1Cl3C,MAAO+D,KAAKnF,MAAM47C,qBAAqBnD,mBACvCnpC,SAAUnK,KAAKue,kBACfwB,OAAQ,SAAC9c,GAAD,OAAO,EAAKs3C,gBAAgBt3C,IACpCwX,aAAa,UAGzB,yBAAKva,UAAU,OACX,yBAAKA,UAAU,gCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,gCAAjB,uCAGA,8BAAUA,UAAU,6CAA6Cib,KAAK,IAAIu/B,KAAK,KAAKhgC,KAAK,wBACrF4E,UAAUtf,KAAKnF,MAAM47C,qBAAqBtD,aAC1Cl3C,MAAO+D,KAAKnF,MAAM47C,qBAAqB3C,sBAAuB3pC,SAAUnK,KAAKue,kBAAmB9D,aAAa,SAErH,yBAAKva,UAAU,gCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,gCAAjB,mBAGA,8BAAUA,UAAU,6CAA6Cib,KAAK,IAAIu/B,KAAK,KAAKhgC,KAAK,iBACrF4E,UAAUtf,KAAKnF,MAAM47C,qBAAqBtD,aAC1Cl3C,MAAO+D,KAAKnF,MAAM47C,qBAAqB1C,eAAgB5pC,SAAUnK,KAAKue,kBAAmB9D,aAAa,UAGlH,yBAAKva,UAAU,OACX,yBAAKA,UAAU,gCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,gCAAjB,+DAIJ,yBAAKA,UAAU,gCACX,0BAAMA,UAAU,6BACZ,2BAAOnF,KAAK,QAAQ2f,KAAK,uBAAuBlV,GAAG,kBAAkBvJ,MAAM,IAAIkO,SAAUnK,KAAKue,kBAAmB/S,QAAkE,MAAzDxL,KAAKnF,MAAM47C,qBAAqBzC,uBAA+C,2BAAO2G,QAAQ,mBAAf,OACzM,2BAAO5/C,KAAK,QAAQ2f,KAAK,uBAAuBlV,GAAG,iBAAiBvJ,MAAM,IAAIkO,SAAUnK,KAAKue,kBAAmB/S,QAAkE,MAAzDxL,KAAKnF,MAAM47C,qBAAqBzC,uBAA+C,2BAAO2G,QAAQ,kBAAf,SAIpN,yBAAKz6C,UAAU,OACX,yBAAKA,UAAU,iCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,gCAAjB,sBAGA,2BAAOnF,KAAK,OAAOmF,UAAU,mBACzBof,UAAUtf,KAAKnF,MAAM47C,qBAAqBtD,aAC1ChpC,SAAUnK,KAAKue,kBACf7D,KAAK,gBACLze,MAAO+D,KAAKnF,MAAM47C,qBAAqB/C,cAAej5B,aAAa,UAItD,SAApBza,KAAKH,MAAM1E,MACR6E,KAAKnF,MAAM47C,qBAAqBtD,cAChCnzC,KAAKnF,MAAM47C,qBAAqBzD,gBAEhC,kBAAC,GAAD,CACI1hC,eAAgBtR,KAAKnF,MAAM47C,sBAAwBz2C,KAAKnF,MAAM47C,qBAAqBzD,eAAiBhzC,KAAKnF,MAAM47C,qBAAqBzD,eAAiB,GACrJ9iB,UAAWlwB,KAAKH,MAAMpF,MAAQuF,KAAKH,MAAMpF,KAAKuM,SAAWhH,KAAKH,MAAMpF,KAAKuM,SAAW,KAI5FhH,KAAKnF,MAAM47C,qBAAqBtD,cAC5B,yBAAKjzC,UAAU,OACX,yBAAKA,UAAU,gCACW,SAApBF,KAAKH,MAAM1E,OAAqB6E,KAAKnF,MAAM47C,qBAAqBzD,gBAC3D,yBAAK/yC,MAAM,SAAQ,4BAAQlF,KAAK,SAASmF,UAAU,kBAAkBiC,MAAO,CAACiD,SAAS,WAAYw1C,IAAK,OAAQ5vC,OAAQ,UAAW3F,OAAQ,GAAIU,QAAS,kBAAM,EAAK80C,qBAA/I,iBAC1B,kBAAC,GAAD,CACI1/C,KAAM6E,KAAKH,MAAM1E,KACjBmW,eAAgBtR,KAAKnF,MAAM47C,qBAAqBzD,mBAMpE,yBAAK9yC,UAAU,OACX,yBAAKA,UAAU,iCACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,gCAAjB,aAGA,2BAAOnF,KAAK,OAAOmF,UAAU,mBACzBof,UAAUtf,KAAKnF,MAAM47C,qBAAqBtD,aAC1ChpC,SAAUnK,KAAKue,kBACf7D,KAAK,eACLze,MAAO+D,KAAKnF,MAAM47C,qBAAqBxC,aAAej0C,KAAKnF,MAAM47C,qBAAqBxC,aAAe,GAAIx5B,aAAa,UAM9Hza,KAAKnF,MAAMg8C,0BAA0Bz1C,QAAO,SAAA05C,GAAI,MAAmC,MAA/BA,EAAK7F,yBAA+Bt0C,OAAS,GAC7F,yBAAKT,UAAU,QACX,yBAAKiC,MAAO,CAAEyD,QAAS,SACnB,2BAAO1F,UAAU,gEACb,2BAAOnF,KAAK,WACRoP,SAAUnK,KAAKm3C,uBACf3rC,SAAiD,IAAxCxL,KAAKnF,MAAMk8C,2BAExB,0BAAM72C,UAAU,eAEpB,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,yFAAjB,oCAGAF,KAAKnF,MAAMg8C,0BAA0Bz1C,QAAO,SAAA05C,GAAI,MAAmC,MAA/BA,EAAK7F,yBAA+B/iC,KAAI,SAACK,EAAUH,GACnG,OACI,kBAAC,GAAD,CACIG,SAAUA,EACVpN,IAAKiN,EACL4jC,sBAAuB,SAAC/yC,GAAD,OAAO,EAAK+yC,sBAAsB/yC,EAAGsP,IAC5D0iC,sBAAuB,UAS/Cj1C,KAAKnF,MAAMg8C,0BAA0Bz1C,QAAO,SAAA05C,GAAI,MAAmC,MAA/BA,EAAK7F,yBAA+Bt0C,OAAS,GAC7F,yBAAKT,UAAU,QACX,kBAAC8U,GAAA,EAAD,CAAO9U,UAAU,+CAAjB,yBAEIF,KAAKnF,MAAMg8C,0BAA0Bz1C,QAAO,SAAA05C,GAAI,MAAmC,MAA/BA,EAAK7F,yBAA+B/iC,KAAI,SAACK,EAAUH,GACnG,OACI,kBAAC,GAAD,CACIG,SAAUA,EACVpN,IAAKiN,EACL4jC,sBAAuB,SAAC/yC,GAAD,OAAO,EAAK+yC,sBAAsB/yC,EAAGsP,IAC5D0iC,sBAAuB,WAWnD,yBAAK/0C,UAAU,YAEa,SAApBF,KAAKH,MAAM1E,MACP,yBAAK+E,UAAU,gCAAgCD,MAAM,SACjD,4BAAQlF,KAAK,SAASmF,UAAU,mCAAqC6F,QAAS,kBAAM,EAAKg1C,aAAzF,UADJ,QAEI,4BAAQhgD,KAAK,SAASmF,UAAU,mCAAmCof,UAAUtf,KAAKnF,MAAM47C,qBAAqBtD,aAA8BptC,QAAS,kBAAM,EAAKi1C,WAA/J,cAFJ,QAGI,4BAAQjgD,KAAK,SAASmF,UAAU,iCAAiCof,UAAUtf,KAAKnF,MAAM47C,qBAAqBtD,aAA8BptC,QAAS,kBAAM,EAAKk1C,aAA7J,8B,GA70BU56C,aAs2BnCiH,gBAXS,SAAC3K,GACrB,MAAO,CACHlC,KAAOkC,EAAME,IAAIpC,KACjBU,KAAMwB,EAAMu+C,0BAA0B//C,KACtCO,qBAAsBiB,EAAMu+C,0BAA0Bx/C,wBAInC,GAGZ4L,CAA6CC,YAAWivC,KCn3BjE2E,G,YACF,WAAYt7C,GAAO,qEACTA,I,iFAKHG,KAAKH,MAAMnE,sBAAwBsE,KAAKH,MAAMnE,qBAAqB4V,gBAG/DtR,KAAKH,MAAMsE,SACVnE,KAAKH,MAAMsE,QAAQzB,KAAK,gC,+BAMhC,OACI,6BACI,yBAAKxC,UAAU,iBACX,yBAAKA,UAAU,iCACX,0BAAMA,UAAU,qBAAhB,kBADJ,SACuEF,KAAKH,MAAMnE,sBAAwBsE,KAAKH,MAAMnE,qBAAqBw8C,aAAgBl4C,KAAKH,MAAMnE,qBAAqBw8C,aAAe,IAEzM,yBAAKh4C,UAAU,iCACX,0BAAMA,UAAU,qBAAhB,gBADJ,SACqEF,KAAKH,MAAMnE,sBAAwBsE,KAAKH,MAAMnE,qBAAqBu8C,WAAcj4C,KAAKH,MAAMnE,qBAAqBu8C,WAAa,IAEnM,yBAAK/3C,UAAU,iCACX,0BAAMA,UAAU,qBAAhB,iBADJ,SACsEF,KAAKH,MAAMnE,sBAAwBsE,KAAKH,MAAMnE,qBAAqBw9C,YAAel5C,KAAKH,MAAMnE,qBAAqBw9C,YAAc,KAG1M,yBAAKh5C,UAAU,iBACX,yBAAKA,UAAU,iCAEa,SAApBF,KAAKH,MAAM1E,MACP,kBAAC,GAAD,CACImW,eAAgBtR,KAAKH,MAAMnE,sBAAwBsE,KAAKH,MAAMnE,qBAAqB4V,eAAiBtR,KAAKH,MAAMnE,qBAAqB4V,eAAiB,GACrJ4e,UAAWlwB,KAAKH,MAAMpF,MAAQuF,KAAKH,MAAMpF,KAAKuM,SAAWhH,KAAKH,MAAMpF,KAAKuM,SAAW,OAKxG,yBAAK9G,UAAU,kBACX,kBAAC,GAAD,CACKoR,eAAgBtR,KAAKH,MAAMnE,sBAAwBsE,KAAKH,MAAMnE,qBAAqB4V,eAAiBtR,KAAKH,MAAMnE,qBAAqB4V,eAAiB,GACrJnW,KAAM6E,KAAKH,MAAM1E,a,GA5COkF,aA+DlCiH,gBAZS,SAAC3K,GACrB,MAAO,CACHlC,KAAMkC,EAAME,IAAIpC,KAChBD,QAASmC,EAAME,IAAIrC,QACnBkB,qBAAsBiB,EAAMu+C,0BAA0Bx/C,qBACtDP,KAAMwB,EAAMu+C,0BAA0B//C,QAInB,GAGZmM,CAA6CC,YAAW4zC,KCjE/DrY,GAAYC,KAAZD,QAsEOsY,OApEf,YAA2C,IAATlvC,EAAQ,EAARA,MAExB+2B,EAAc,CAChBvoB,KAAM,OACNwoB,OAAO,QACPC,UAAU,EACVC,cAAe,gBAAGC,EAAH,EAAGA,UAAWC,EAAd,EAAcA,QAASC,EAAvB,EAAuBA,WAAYC,EAAnC,EAAmCA,KAAnC,OAA8CC,EAAa,CAAEJ,YAAWC,UAASC,aAAYC,UAC5Gr5B,SAAU,SAACoH,GAAD,OAAUmyB,EAAyBnyB,IAC7CoyB,SAAU,QAIRF,EAAe,SAAC,GAA8C,IAA5CJ,EAA2C,EAA3CA,UAAWC,EAAgC,EAAhCA,QAASC,EAAuB,EAAvBA,WAAYC,EAAW,EAAXA,MCbrB,SAACA,EAAMt3B,EAAO1M,GAEjD,IAAIb,EAAO,IAAIilC,SAuBf,OAtBAjlC,EAAKklC,OAAO,OAAQL,GACpB7kC,EAAKklC,OAAO,QAAS33B,GAEG,IAAI/P,SAAQ,SAAUC,EAASoC,GAInDe,GAFO,UAAM1B,GAEMc,EAAM,KAAMa,GAAkByE,MAC7C,SAAAo3C,GACI/8C,QAAQC,IAAI88C,GACZj/C,EAAQi/C,MAEdxxC,OAAM,SAAAC,GACA9L,GAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,+CAAgDuL,GAC5DtL,EAAOsL,WDLfwxC,CAAwB9X,EAAMt3B,GAAO,SAACzM,GAAD,OAAmBD,EAAiBC,EAAe+jC,EAAMD,MAAat/B,MAAK,SAAA+/B,GAC5G1lC,QAAQC,IAAI,kBAAmBylC,GAC/BX,EAAU,KAAMG,MAEjB35B,OAAM,SAAAC,GACLxL,QAAQC,IAAI,oBAAqBuL,GACjCw5B,QAKF9jC,EAAmB,SAACC,EAAe+jC,EAAMD,GAC3CA,EAAW,CAAEU,QAASC,KAAKC,MAAM1kC,EAAc2kC,OAAS3kC,EAAc4kC,MAAQ,KAAKjhC,QAAQ,IAAMogC,IAG/FE,EAA2B,SAACnyB,GAAU,IAChC3S,EAAW2S,EAAKiyB,KAAhB5kC,OACO,cAAXA,GAGgB,SAAXA,GAGa,UAAXA,GAETN,QAAQD,MAAMkT,IAKpB,OACI,6BACI,yBAAKrR,UAAU,aACX,yBAAKA,UAAU,OACX,yBAAKA,UAAU,yDAAf,4BAIJ,yBAAKA,UAAU,OACX,yBAAKA,UAAU,2CAEX,kBAAC,GAAD,iBAAa+iC,EAAb,CAA0B/iC,UAAU,kBAChC,uBAAGA,UAAU,wBAAuB,kBAAC,KAAD,CAAMnF,KAAK,WAC/C,uBAAGmF,UAAU,mBAAb,wEE/Cbq7C,OAXf,WAEI,IAAMrvC,EAAQ8K,aAAY,SAAAnc,GAAK,OAAI6hB,GAAgB7hB,EAAO,CAAC,MAAO,OAAQ,gBAE1E,OACI,6BACI,kBAAC,GAAD,CAAyBqR,MAAOA,MCPpC42B,GAAYC,KAAZD,QAsEO0Y,OApEf,YAAuC,IAATtvC,EAAQ,EAARA,MAEpB+2B,EAAc,CAChBvoB,KAAM,OACNwoB,OAAO,QACPC,UAAU,EACVC,cAAe,gBAAGC,EAAH,EAAGA,UAAWC,EAAd,EAAcA,QAASC,EAAvB,EAAuBA,WAAYC,EAAnC,EAAmCA,KAAnC,OAA8CC,EAAa,CAAEJ,YAAWC,UAASC,aAAYC,UAC5Gr5B,SAAU,SAACoH,GAAD,OAAUmyB,EAAyBnyB,IAC7CoyB,SAAU,QAIRF,EAAe,SAAC,GAA8C,IAA5CJ,EAA2C,EAA3CA,UAAWC,EAAgC,EAAhCA,QAASC,EAAuB,EAAvBA,WAAYC,EAAW,EAAXA,MCbzB,SAACA,EAAMt3B,EAAO1M,GAE7C,IAAIb,EAAO,IAAIilC,SAuBf,OAtBAjlC,EAAKklC,OAAO,OAAQL,GACpB7kC,EAAKklC,OAAO,QAAS33B,GAEG,IAAI/P,SAAQ,SAAUC,EAASoC,GAInDe,GAFO,UAAMzB,GAEMa,EAAM,KAAMa,GAAkByE,MAC7C,SAAAo3C,GACI/8C,QAAQC,IAAI88C,GACZj/C,EAAQi/C,MAEdxxC,OAAM,SAAAC,GACA9L,GAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,4CAA6CuL,GACzDtL,EAAOsL,WDLf2xC,CAAoBjY,EAAMt3B,GAAO,SAACzM,GAAD,OAAmBD,EAAiBC,EAAe+jC,EAAMD,MAAat/B,MAAK,SAAA+/B,GACxG1lC,QAAQC,IAAI,kBAAmBylC,GAC/BX,EAAU,KAAMG,MAEjB35B,OAAM,SAAAC,GACLxL,QAAQC,IAAI,oBAAqBuL,GACjCw5B,QAKF9jC,EAAmB,SAACC,EAAe+jC,EAAMD,GAC3CA,EAAW,CAAEU,QAASC,KAAKC,MAAM1kC,EAAc2kC,OAAS3kC,EAAc4kC,MAAQ,KAAKjhC,QAAQ,IAAMogC,IAG/FE,EAA2B,SAACnyB,GAAU,IAChC3S,EAAW2S,EAAKiyB,KAAhB5kC,OACO,cAAXA,GAGgB,SAAXA,GAGa,UAAXA,GAETN,QAAQD,MAAMkT,IAKpB,OACI,6BACI,yBAAKrR,UAAU,aACX,yBAAKA,UAAU,OACX,yBAAKA,UAAU,yDAAf,uBAIJ,yBAAKA,UAAU,OACX,yBAAKA,UAAU,2CAEX,kBAAC,GAAD,iBAAa+iC,EAAb,CAA0B/iC,UAAU,kBAChC,uBAAGA,UAAU,wBAAuB,kBAAC,KAAD,CAAMnF,KAAK,WAC/C,uBAAGmF,UAAU,mBAAb,mEE/Cbw7C,OAXf,WAEI,IAAMxvC,EAAQ8K,aAAY,SAAAnc,GAAK,OAAI6hB,GAAgB7hB,EAAO,CAAC,MAAO,OAAQ,gBAE1E,OACI,6BACI,kBAAC,GAAD,CAAqBqR,MAAOA,MCa3ByvC,GAAuB,KACzB/2C,GAAe,KACpBg3C,G,YAEF,WAAY/7C,GAAQ,IAAD,8BACf,4CAAMA,KA2HZg8C,gBAAkB,SAAC3tC,I3G/GS,SAACA,GAEY,OAAnCvO,SAA8EgC,IAAnChC,IAC3CA,GAA+B+J,OAAO,+DAI1C,IAAMtK,EAAcpB,IAAM2L,YAoB1B,OAnBAhK,GAAiCP,EAAYqE,SAElB,IAAItH,SAAQ,SAAUC,EAASoC,GAEtDQ,GADmB,UAAM1B,EAAN,oBAA6C4Q,GAC7CvO,IAAgCsE,MAC/C,SAAA63C,GACI1/C,EAAQ0/C,MAEdjyC,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,2CAA4CuL,GACxDtL,EAAOsL,W2G2FnBiyC,CAAc7tC,GACXjK,MAAK,SAACC,GACL,IAAI83C,EAAc93C,GAAOA,EAAIvF,KAAOuF,EAAIvF,KAAO,GAC/C+wB,GAAgBssB,GAChB,EAAKn8C,MAAMo8C,mBAAmBD,GAC9B,IAAIE,EC/IwB,SAACF,GACnC,IAAIE,EAAS,GA+Cb,MA7CqD,MAAjD57C,GAAmB07C,EAAa,cAElCE,EAAOx5C,KACL,kBAAC,IAAD,CAAOyC,IAAI,YAAYmoB,OAAO,EAAOC,KAAK,aAAaC,UAAWb,KAClE,kBAAC,IAAD,CAAOxnB,IAAI,YAAYmoB,OAAK,EAACC,KAAK,cAAcC,UAAW0K,KAC3D,kBAAC,IAAD,CAAO/yB,IAAI,UAAUmoB,OAAK,EAACC,KAAK,eAAeC,UAAW2U,KAC1D,kBAAC,IAAD,CACEh9B,IAAI,iBACJmoB,OAAK,EACLC,KAAK,qBACLC,UAAW8W,MAKgC,MAA7ChkC,GAAmB07C,EAAa,UAClCE,EAAOx5C,KACL,kBAAC,IAAD,CAAOyC,IAAI,QAAQmoB,OAAO,EAAOC,KAAK,SAASC,UAAWmlB,MAIQ,MAAlEryC,GAAmB07C,EAAa,+BAClCE,EAAOx5C,KACL,kBAAC,IAAD,CACEyC,IAAI,4BACJmoB,OAAK,EACLC,KAAK,6BACLC,UAAWpa,KAEb,kBAAC,IAAD,CACEjO,IAAI,uBACJmoB,OAAK,EACLC,KAAK,wBACLC,UAAWgpB,KAEb,kBAAC,IAAD,CACErxC,IAAI,qCACJmoB,OAAK,EACLC,KAAK,uCACLC,UAAW2tB,MAIjBe,EAAOx5C,KAAK,kBAAC,IAAD,CAAOyC,IAAI,gBAAgBmoB,OAAK,EAACC,KAAK,MAAMC,UAAW+tB,MACnEW,EAAOx5C,KAAK,kBAAC,IAAD,CAAOyC,IAAI,YAAYmoB,OAAK,EAACC,KAAK,aAAaC,UAAWkuB,MAC/DQ,ED+FYC,CAAqBH,GAClC,EAAKr4C,SAAS,CAAEy4C,cAAc,EAAMC,UAAWH,OAEhDryC,OAAM,SAACC,GACNxL,QAAQD,MAAMyL,OApId,EAAKjP,MAAQ,CACTuhD,cAAc,EACdE,eAAe,EACfC,iBAAiB,EACjBF,UAAW,GACXnsB,UAAW,IAEf,EAAKssB,UAAY,EAAKA,UAAUn4C,KAAf,gBACjB,EAAKo4C,WAAa,EAAKA,WAAWp4C,KAAhB,gBAClB,EAAKq4C,uBAAyB,EAAKA,uBAAuBr4C,KAA5B,gBAXf,E,iFAeE,IAAD,OAChB/H,OAAOmpB,iBAAiB,sBAAuBzlB,KAAKy8C,YACpDn+C,QAAQC,IAAR,yBAA8BqJ,GAAYwqB,UAC1CpyB,KAAKH,MAAM88C,kBAAkB38C,KAAKH,MAAM+8C,aAAa34C,MAAK,SAAA44C,GACtDntB,GAAgB,EAAK7vB,MAAMtF,KAC3BkyB,YAAW,WACP,EAAK+vB,cACN,KACH,EAAKE,8B,yCAIM/3C,GACX3E,KAAKH,MAAM5E,aAAe0J,EAAU1J,YAEpC+E,KAAK2D,SAAS,CAAEm5C,UAAU,M,+CAIR,IAAD,OAEvBC,aAAY,YxD8CoB,SAACziD,EAAO0iD,GAC5C,IAAIC,GAAoB,EAExB,GAAI3iD,EAAO,CACT,IAAI4iD,EAAcnhC,GAAezhB,GACjC,GAAoB,OAAhB4iD,EAAsB,CACxB,IAAIC,EAAazgC,GAAgBwgC,EAAa,CAAC,QAC3CE,EAAiB1gC,GAAgBwgC,EAAa,CAAC,QAC/CG,GAAc,IAAIprC,MAAOqrC,UAAY,IACzCh/C,QAAQC,IAAR,wBACmB4+C,EADnB,8BACmDC,EADnD,2BACoFC,IAGhFD,GAAkBC,EAAcL,EAAe,MACjDC,GAAoB,IAK1B,OAAOA,GwDhEGM,CAAuB,EAAK19C,MAAMvF,MAFrB,OAGfgE,QAAQC,IAAI,gDACZ,EAAKi/C,YAAY,EAAK3iD,MAAMq1B,cAJb,O,kCAUV,IAAD,OAGVyrB,GAAuB,IAAIxrB,IAC3BvrB,GAAe+2C,GAAqBrrB,gBAAgBtwB,KAAKH,MAAMtF,MAE5DkjD,wBACAx5C,MAAK,SAACC,GACL,GAAIA,EACF,EAAKw5C,0BAA0Bx5C,OAC1B,CACL,IAAMyiB,EAAW/hB,GAAa+4C,iBAC1Bh3B,GAAYA,EAAShmB,OAAS,GAChCrC,QAAQC,IAAI,uBACZ,EAAKoF,UAAS,SAAAyC,GAAS,sBAAQA,EAAR,CAAmB8pB,UAAWvJ,EAAS,GAAGi3B,cACjEh5C,GACGi5C,mBAAmB,CAClBj3B,QAASD,EAAS,GAClBqM,cAAc,EACdH,OAAQ,CAAC,EAAKhzB,MAAMtF,IAAIujD,4BAEzB75C,MAAK,SAAC85C,GACL,EAAKL,0BAA0BK,MAEhCl0C,OAAM,SAACC,GACNxL,QAAQD,MAAM,gBAAiByL,GAC/B,EAAK0zC,YAAY72B,EAAS,GAAGi3B,eAIjCt/C,QAAQC,IAAI,6BACZo9C,GAAqBhpB,2BAAsBhxB,EAAW,CACpD,EAAK9B,MAAMtF,IAAIujD,gCAKtBj0C,OAAM,SAACC,GAENxL,QAAQD,MAAMyL,GACdglB,GAAchlB,GACG,iCAAbA,EAAI4Q,KACNihC,GAAqBhpB,2BACnBhxB,EACA,CAAC,EAAK9B,MAAMtF,IAAIujD,0BAChB,kBAGF1iC,MACE,+F,kCAMEwX,GAAY,IAAD,OACrB+oB,GACGzoB,SAASN,EAAW,CAAC5yB,KAAKH,MAAMtF,IAAIujD,2BACpC75C,MAAK,SAAC+5C,GACL,EAAKC,2BAA2BD,MAEjCn0C,OAAM,SAACC,GACNxL,QAAQC,IAAI,qBAAsBuL,GAClCglB,GAAchlB,GACd6xC,GAAqBhpB,sBACnBC,EACA,CAAC,EAAK/yB,MAAMtF,IAAIujD,gC,gDAKE55C,GACxB,IAAMzJ,ExDlDqB,SAACH,GAC9B,IAAIG,EAAO,CAAEigB,KAAM,GAAI1T,SAAU,GAAIk3C,mBAAoB,IAErDhB,EAAcnhC,GAAezhB,GASjC,OARoB,OAAhB4iD,IACFziD,EAAKigB,KAAOgC,GAAgBwgC,EAAa,CAAC,SAC1CziD,EAAKuM,SAAW0V,GAAgBwgC,EAAa,CAAC,uBAC9CziD,EAAKyjD,mBAAqBxhC,GAAgBwgC,EAAa,CACrD,wBAIGziD,EwDsCQ0jD,CAAgBj6C,EAAIk6C,aAC3BC,EAAU5jD,EAAKuM,SAAWvM,EAAKuM,SAAW,GAChDhH,KAAKH,MAAMy+C,UAAUp6C,EAAIk6C,aACzBp+C,KAAKH,MAAM0+C,aAAa9jD,GACxBuF,KAAK67C,gBAAgBwC,K,mCAmBjBr+C,KAAK2D,SAAS,CAAE44C,iBAAiB,M,2CAIjCv8C,KAAK2D,SAAS,CAAE44C,iBAAiB,M,+BAG3B,IAAD,OACL,OAAOv8C,KAAKnF,MAAMuhD,aAChB,kBAAC,GAAD,KACE,kBAAC,IAAD,CAAQj4C,QAASnE,KAAKH,MAAMsE,SAC1B,kBAAC,WAAD,CACEq6C,SACE,yBAAKv+C,MAAM,UAAX,uCAGF,kBAACqD,GAAD,KACE,kBAAC,IAAD,KACE,kBAAC,IAAD,CAAOgqB,OAAK,EAACC,KAAK,IAAIC,UAAWC,KAChCztB,KAAKnF,MAAMwhD,UAAUnqC,KAAI,SAACusC,GACzB,OAAOA,KAET,kBAAC,IAAD,CAAOlxB,KAAK,IAAIC,UAAWha,SAKnC,kBAAC,KAAD,CACEtT,UAAU,yBACV0S,UAAU,QACV8rC,UAAU,EACVC,gBAAgB,EAChBC,QAAS5+C,KAAKnF,MAAM0hD,gBACpBsC,QAAS,kBAAM,EAAKC,sBACpBx5C,MACEhJ,OAAOyiD,YAAc,IAAMziD,OAAOyiD,WAAaziD,OAAOyiD,WAAa,GAGrE,yBAAK7+C,UAAU,QAAf,mCAGFF,KAAKnF,MAAMyhD,cACb,yBAAKr8C,MAAM,UAAX,4DAIA,yBAAKA,MAAM,UACT,yBAAKuF,GAAG,mBAAmBtF,UAAU,oBACnC,kCAEE,kBAACyR,GAAA,EAAD,CACEzB,UAAU,OACVZ,KAAK,KACLa,QAAQ,OACRjQ,UAAU,oC,GApMVE,IAAMC,WAoNlB+G,GAAqB,CACvBu1C,kB/G1O6B,SAACqC,GAAD,OAAe,SAAC9iD,GAC9C,OAAOC,QAAQC,QACVF,EAAS,CACLnB,KNPwB,uBMQxBC,QAASgkD,O+GuOjBV,U/GlOG,SAAmBhkD,GAEtB,MAAO,CACHS,KNjBoB,eMkBpBC,QAASV,I+G+NbikD,a/GnNG,SAAsBryC,GACzB,MAAM,CACFnR,KN7Bc,SM8BdC,QAASkR,I+GiNb+vC,mB/G7MG,SAA4BgD,GAC/B,MAAO,CACHlkD,KN9B4B,uBM+B5BC,QAASikD,I+G2MbjjD,8BAOW4vC,GAJKC,YAChBvkC,aAhBoB,SAAA3K,GACpB,MAAO,CACHpC,IAAKoC,EAAME,IAAItC,IACfD,MAAOqC,EAAME,IAAIvC,SAaI8M,IAGdwkC,CAAYgQ,IEhPPsD,QACW,cAA7B5iD,OAAOE,SAAS2iD,UAEe,UAA7B7iD,OAAOE,SAAS2iD,UAEhB7iD,OAAOE,SAAS2iD,SAAS5a,MACvB,2DChBN,uCAcA,IAAMhoC,GAAUwI,SAASq6C,qBAAqB,QAAQ,GAAGC,aAAa,QAEhEl7C,GAAU6pB,YAAqB,CAAEC,SAAU1xB,KAIpCI,GCXE,SAAwBwH,EAAS9J,GAC5C,IAAMilD,EAAW,CACb,IAAO1kD,EACP,QAAWS,EACX,UAAaE,EACb,sBAAyBE,EACzB,0BAA6BE,EAC7B,WAAcI,GAGZwjD,EAAa,CACfC,KAKEC,EAAY,GASZC,EAAcC,YAAgB,eAC7BL,IAIP,OAAOM,YACHF,EACArlD,EACAwxC,IAAO,WAAP,GAAQgU,IAAe,WAAf,EAAmBN,IAA3B,OAA2CE,KDtB9BK,CAAe37C,EADf7H,OAAOyjD,mBAGtBC,GAAcj7C,SAASk7C,eAAe,QAGxCphD,GAAU,IAAIqhD,QAClBrhD,GAAQglC,OAAO,SAAU,YACzBhlC,GAAQglC,OAAO,gBAAiB,YAQhCsc,MADU,0BALQ,CAChBhhD,OAAQ,MACRN,aAKDoF,MAAK,SAAAC,GAAG,OAAIA,EAAIk8C,UAChBn8C,MAAK,SAAA+6C,GACJ1gD,QAAQC,IAAI,oBAAqBygD,GACjC1gD,QAAQC,IAAI,uBAAwBqJ,GAAYC,aAC7Cm3C,GAAaA,EAAUn3C,aAAem3C,EAAUn3C,cAAgBD,GAAYC,aAC7EvJ,QAAQC,IAAI,+DAEXjC,OAAOE,SAAS6jD,KAAhB,UAA0B/jD,OAAOE,SAAS6jD,KAA1C,sBAGD/hD,QAAQC,IAAI,4B9GrCuB,WAGc,OAA7CmB,SAAkGiC,IAA7CjC,IACrDA,GAAyCgK,OAAO,qEAIpD,IAAMtK,EAAcpB,IAAM2L,YAmB1B,OAlBAjK,GAA2CN,EAAYqE,SAEnB,IAAItH,SAAQ,SAAUC,EAASoC,GAC/DQ,GAAIjC,EAA2B2C,IAA0CuE,MACrE,SAAAq8C,GACIlkD,EAAQkkD,MAEdz2C,OAAM,SAAAC,GACA9L,IAAMU,SAASoL,GACfxL,QAAQC,IAAIuL,IAEZxL,QAAQC,IAAI,gDAAiDuL,GAC7DtL,EAAOsL,U8GiBnBy2C,GAA0Bt8C,MAAK,SAACC,GAC9Bs8C,IAAS1T,OACP,kBAAC,IAAD,CAAUnwC,MAAOA,IACX,kBAAC,GAAD,CAAKwH,QAASA,GAASy4C,YAAa14C,EAAIvF,QAE9CqhD,OAEHn2C,OAAM,SAACC,GACNxL,QAAQC,IACN,wDACAuL,UAKPD,OAAM,SAAAC,GACLsR,MAAM,uCDwCF,kBAAmBoV,WACrBA,UAAUiwB,cAAcC,MAAMz8C,MAAK,SAAA08C,GACjCA,EAAaC,iB","file":"static/js/main.e1f9b33e.chunk.js","sourcesContent":["import { INSERT_TOKEN, INSERT_ENV_VARIABLES, REFRESH, ADD_FA, INSERT_FA_PREFERENCE, UPDATE_SELECTED_MENU, UPDATE_SSO_WINDOW } from \"../actions/actionTypes\";\r\n\r\nconst initialState = {\r\n token: null,\r\n env: [],\r\n refresh:false,\r\n user: {},\r\n defaultSelectedMenu: null,\r\n ssoWindow: null\r\n}\r\n\r\nexport function AppReducer(state=initialState, action){\r\n\r\n switch(action.type)\r\n {\r\n\r\n case INSERT_TOKEN:\r\n {\r\n return {\r\n ...state, \r\n token : action.payload\r\n }\r\n }\r\n\r\n case INSERT_ENV_VARIABLES:{\r\n return {\r\n ...state,\r\n env: action.payload\r\n }\r\n }\r\n case REFRESH: {\r\n return {\r\n ...state,\r\n refresh: action.payload\r\n }\r\n }\r\n case ADD_FA: {\r\n return{\r\n ...state,\r\n user: action.payload\r\n }\r\n }\r\n\r\n case INSERT_FA_PREFERENCE:{\r\n return {\r\n ...state,\r\n faFeatures: action.payload\r\n }\r\n }\r\n\r\n case UPDATE_SELECTED_MENU:{\r\n return {\r\n ...state,\r\n defaultSelectedMenu: action.payload\r\n }\r\n }\r\n\r\n case UPDATE_SSO_WINDOW:{\r\n return {\r\n ...state,\r\n ssoWindow: action.payload\r\n }\r\n }\r\n\r\n \r\n\r\n default:\r\n return state;\r\n }\r\n}","export const INSERT_TOKEN = 'INSERT_TOKEN';\r\nexport const INSERT_ENV_VARIABLES = 'INSERT_ENV_VARIABLES';\r\nexport const REFRESH = 'REFRESH_APP';\r\nexport const ADD_FA = 'ADD_FA';\r\nexport const ADD_WIRE_INSTRUCTION = 'ADD_WIRE_INSTRUCTION';\r\nexport const UPDATE_SELECTED_CLIENT = 'UPDATE_SELECTED_CLIENT';\r\nexport const UPDATE_CLIENT_VENDORLIST = 'UPDATE_CLIENT_VENDORLIST';\r\nexport const UPDATE_CLIENT_VISIBILITY_SELECTED_USER = 'UPDATE_CLIENT_VISIBILITY_SELECTED_USER';\r\nexport const UPDATE_DISCRETIONARY_DISTRIBUTION_MODE = 'UPDATE_DISCRETIONARY_DISTRIBUTION_MODE';\r\nexport const INSERT_FA_PREFERENCE = 'INSERT_FA_PREFERENCE';\r\nexport const UPDATE_SELECTED_MENU = 'UPDATE_SELECTED_MENU';\r\nexport const UPDATE_SSO_WINDOW = 'UPDATE_SSO_WINDOW';\r\nexport const UPDATE_SELECTED_SUB_ACCOUNT = \"UPDATE_SELECTED_SUB_ACCOUNT\";","import { ADD_WIRE_INSTRUCTION, UPDATE_CLIENT_VENDORLIST } from \"../actions/actionTypes\";\r\n\r\nconst initialState = {\r\n wireInstruction: null,\r\n mode: null,\r\n clientVendorsList: []\r\n}\r\n\r\nexport function VendorsReducer(state=initialState, action){\r\n\r\n switch(action.type)\r\n {\r\n\r\n case ADD_WIRE_INSTRUCTION:\r\n {\r\n return {\r\n ...state, \r\n wireInstruction : action.payload,\r\n mode: action.mode\r\n }\r\n }\r\n\r\n case UPDATE_CLIENT_VENDORLIST:\r\n {\r\n return {\r\n ...state,\r\n clientVendorsList: action.payload\r\n }\r\n }\r\n\r\n default:\r\n return state;\r\n }\r\n}","import { UPDATE_SELECTED_CLIENT } from \"../actions/actionTypes\";\r\n\r\nconst initialState = {\r\n selectedClient: null,\r\n}\r\n\r\nexport function DashBoardReducer(state=initialState, action){\r\n\r\n switch(action.type)\r\n {\r\n\r\n case UPDATE_SELECTED_CLIENT:\r\n {\r\n return {\r\n ...state, \r\n selectedClient : action.payload,\r\n }\r\n }\r\n\r\n default:\r\n return state;\r\n }\r\n}","import { UPDATE_CLIENT_VISIBILITY_SELECTED_USER } from \"../actions/actionTypes\";\r\n\r\nconst initialState = {\r\n selectedUser: null,\r\n}\r\n\r\nexport function AdminClientVisibilityReducer(state=initialState, action){\r\n\r\n switch(action.type)\r\n {\r\n\r\n case UPDATE_CLIENT_VISIBILITY_SELECTED_USER:\r\n {\r\n return {\r\n ...state, \r\n selectedUser : action.payload,\r\n }\r\n }\r\n\r\n default:\r\n return state;\r\n }\r\n}","import {UPDATE_DISCRETIONARY_DISTRIBUTION_MODE } from \"../actions/actionTypes\";\r\n\r\nconst initialState = {\r\n mode: null,\r\n selectedDistribution: null,\r\n}\r\n\r\nexport function DiscretionaryDistributionReducer(state=initialState, action){\r\n\r\n switch(action.type)\r\n {\r\n\r\n case UPDATE_DISCRETIONARY_DISTRIBUTION_MODE:\r\n {\r\n return {\r\n ...state, \r\n selectedDistribution : action.payload,\r\n mode: action.mode\r\n }\r\n }\r\n\r\n default:\r\n return state;\r\n }\r\n}","import { UPDATE_SELECTED_SUB_ACCOUNT } from \"../actions/actionTypes\";\r\n\r\nconst initialState = {\r\n selectedSubAccount: null,\r\n contextJson: null,\r\n profileJson:null\r\n}\r\n\r\nexport function AccountingReducer(state=initialState, action){\r\n\r\n switch(action.type)\r\n {\r\n case UPDATE_SELECTED_SUB_ACCOUNT:\r\n {\r\n return {\r\n ...state, \r\n selectedSubAccount : action.payload,\r\n }\r\n }\r\n\r\n default:\r\n return state;\r\n }\r\n}","import { INSERT_TOKEN, INSERT_ENV_VARIABLES, REFRESH, ADD_FA, INSERT_FA_PREFERENCE, UPDATE_SELECTED_MENU, UPDATE_SSO_WINDOW} from \"./actionTypes\";\r\n\r\n\r\n\r\n\r\nexport const ADD_ENV_VARIABLES = (variables) => (dispatch) => {\r\n return Promise.resolve(\r\n dispatch({\r\n type: INSERT_ENV_VARIABLES,\r\n payload: variables\r\n })\r\n )\r\n}\r\n\r\nexport function ADD_TOKEN(token)\r\n{\r\n return {\r\n type: INSERT_TOKEN,\r\n payload: token\r\n }\r\n}\r\n\r\nexport function REFRESH_APP(isRefresh)\r\n{\r\n return {\r\n type: REFRESH,\r\n payload:isRefresh\r\n }\r\n}\r\n\r\nexport function ADD_FADetail(email){\r\n return{\r\n type: ADD_FA,\r\n payload: email\r\n }\r\n}\r\n\r\nexport function INSERT_FA_FEATURES(featureList){\r\n return {\r\n type: INSERT_FA_PREFERENCE,\r\n payload: featureList\r\n }\r\n}\r\n\r\nexport const UPDATE_SELECTED_MENU_VALUE = (value) => (dispatch) => {\r\n return Promise.resolve(\r\n dispatch({\r\n type: UPDATE_SELECTED_MENU,\r\n payload: value\r\n })\r\n )\r\n }\r\n\r\n export function UPDATE_SSO_WINDOW_INSTANCE(window){\r\n return {\r\n type: UPDATE_SSO_WINDOW,\r\n payload: window\r\n }\r\n}\r\n","import { store } from \"..\";\r\n\r\n//let baseUrl = process.env.REACT_APP_BASEURL; \r\nlet baseUrl = window.location.origin;\r\n//let apiBaseUrl = process.env.REACT_APP_API_BASEURL;\r\n\r\nexport const apiBaseUrl = () => {\r\n return store.getState().app.env.REACT_APP_API_BASEURL;\r\n}\r\n\r\n\r\nexport const getEnvironmentVariableUrl = `${baseUrl}/api/EnvironmentConfig/Environment`;\r\nexport const billPayURL = \"payment/api/billmgmt\";\r\nexport const referenceAPIURL = \"referenceapi/odata\";\r\nexport const mmSummaryUrl = \"mm/odata/MMSummary\";\r\nexport var validateABAUrl = \"cashmanagement/mm/odata/GetABA('ATOCH,ABANumber')\";\r\nexport const getVendorsListUrl = \"payment/api/billmgmt/getMatrixinfo\";\r\nexport const invoiceUploadUrl = \"payment/api/billmgmt/attachmentUpload\";\r\nexport const searchVendorListUrl = \"payment/api/payment/getClientVendorList\";\r\nexport const createUpdateVendorWirePaymentInstruction = \"payment/api/payment/manageVendorPaymentInstructionForWire\";\r\nexport const getWireInstructionUrl = 'payment/api/payment/searchVendorList';\r\nexport const getEligibleFromAccturl = \"payment/api/billmgmt/retrieveFromAcctList\";\r\nexport const getLookUpValue = \"payment/api/payment/getLookUpValues\";\r\nexport const getUsersListUrl = \"payment/api/enterprise/searchRcmUserList\";\r\nexport const getClientsListUrl = \"payment/api/enterprise/searchRcmUserOrg\";\r\nexport const manageUserOrgsUrl = \"payment/api/enterprise/manageRcmUserOrg\";\r\nexport const submitDiscritionaryDistributionUrl = `${baseUrl}/api/DiscritionaryDistribution/Add`;\r\nexport const updateDiscritionaryDistributionUrl = `${baseUrl}/api/DiscritionaryDistribution/Update`;\r\nexport const getDiscritionaryDistributionListUrl = `${baseUrl}/api/DiscritionaryDistribution/List`;\r\nexport const getCompletedDiscritionaryDistributionListUrl = `${baseUrl}/api/DiscritionaryDistribution/CompletedList`\r\nexport const getDiscritionaryDistributionUrl = `${baseUrl}/api/DiscritionaryDistribution/distribution`;\r\nexport const getEntityInfomationUrl = 'payment/api/trustcompany/getTrustDiscretionaryDistributionInfo';\r\nexport const createDocusignEnvelopeUrl = 'acctopngapi/api/AccountProfile/CreateDocusignEnvelope_DD';\r\nexport const createDistributionPdfUrl = 'payment/api/billmgmt/getDiscretionaryById';\r\nexport const financialAdvisorsFeatureUrl = `${baseUrl}/api/pilotfeature/list`;\r\nexport const updatedistributionStatusUrl = `${baseUrl}/api/DiscritionaryDistribution/UpdateStatus`;\r\nexport const fetchDistributionDocumentsUrl = `${baseUrl}/api/DiscritionaryDistribution/Document`;\r\nexport const getwiresListsUrl = \"payment/api/enterprise/getBillInfo\";\r\nexport const uploadDiscretionaryDistributionDocsUrl = `${baseUrl}/api/DiscritionaryDistribution/UploadDocument`;\r\nexport const getDiscretionaryDocumentsListUrl = `${baseUrl}/api/DiscritionaryDistribution/DiscretionaryDocumentList`;\r\nexport const deleteDiscrtionaryDocumentUrl = `${baseUrl}/api/DiscritionaryDistribution/DeleteDistributionDocument`;\r\nexport const deleteDiscrtionaryDistributionUrl = `${baseUrl}/api/DiscritionaryDistribution/Delete`;\r\nexport const uploadPrivateEquitiesUrl = `${baseUrl}/api/PrivateEquity/UploadPrivateEquities`;\r\nexport const uploadHedgeFundsUrl = `${baseUrl}/api/HedgeFund/UploadHedgeFunds`;\r\n \r\nexport const fetchSubAccountCategoriesUrl = `${baseUrl}/api/Accounting/FetchSubAccountCategories`;\r\nexport const getSubAccountListUrl = `payment/api/billmgmt/retrieveOrgSubAccount`;\r\nexport const addEditSubAccountUrl = 'payment/api/billmgmt/updateSubAccount';\r\nexport const linkSubAccountUrl = \"profileapi/odata/aggregatedaccount\";\r\nexport const unlinkSubAccountUrl = \"assetag/odata/ExtAssetAggregationSubmit\";\r\nexport const getTransactionsSourceDataUrl = `activityapi/odata/activitysummary`;\r\nexport const getTransactionsAccountingDataUrl = `trustapi/api/Transactions/GetProcessedTransactions`;\r\nexport const getVendorListUrl = `payment/api/d365/getUIVendorPayee?entityId=`;\r\nexport const addEditVendorUrl = 'payment/api/d365/updUIVendorPayee';\r\n\r\nexport const getRuleListUrl = 'trustapi/api/VendorPayeeRule/GetRules';\r\nexport const addRuleUrl = 'trustapi/api/VendorPayeeRule/AddRule';\r\nexport const updateRuleUrl = 'trustapi/api/VendorPayeeRule/UpdateRule';\r\nexport const getInstitutionListUrl = 'trustapi/api/VendorPayeeRule/GetInstitutions?';\r\nexport const getAccountSubaccountListUrl = 'trustapi/api/VendorPayeeRule/GetSubAccounts';\r\nexport const getMainAccountListUrl = 'trustapi/api/VendorPayeeRule/GetMainAccounts';\r\nexport const getTransactionListUrl = 'trustapi/api/VendorPayeeRule/GetTransactions';\r\n\r\nexport const getApproversListUrl = 'trustapi/api/AuthorizedApprovers/GetApprovers';\r\nexport const addApproversUrl = 'trustapi/api/AuthorizedApprovers/InsertApprover';\r\nexport const deleteApproverUrl = 'trustapi/api/AuthorizedApprovers/DeleteApprover';\r\nexport const editApproverUrl = 'trustapi/api/AuthorizedApprovers/UpdateApprover';\r\n\r\nexport const getFailedPaymentListUrl = `payment/api/billmgmt/getBillStatus`\r\nexport const updateFailedPaymentUrl = `payment/api/billmgmt/updBillStatus`\r\nexport const uploadPaymentLOAUrl = 'payment/api/payment/UploadLOADoc';\r\nexport const fetchLOADocumentUrl = 'payment/api/payment/GetLOADoc';\r\nexport const updatePaymentAccountUrl = 'trustapi/api/PaymentAccount/Update';\r\nexport const getPartyIdListUrl = 'trustapi/api/Accounting/GetAccountParty';\r\n\r\nexport const billDotComSsoLogUrl = `trustapi/api/PaymentAccount/SSOLog`\r\n/* Ninth waves */\r\nexport var getAALoginTokenUrl = \"assetag/odata/ExtAssetAggregationStartSession\";\r\nexport var fetchMatrixContexualMenuItemsUrl = `payment/api/payment/getDynamicsFeatures?isAdminUser=true`\r\n\r\n/*Graph API */\r\nexport var graphApiUrl = 'https://graph.microsoft.com/v1.0';\r\nexport var getMSAuthorityUrl = 'https://login.microsoftonline.com/rockco.onmicrosoft.com';\r\n\r\n","import axios from 'axios';\r\n\r\n// Add a request interceptor\r\naxios.interceptors.request.use(function (config) {\r\n // Do something before request is sent\r\n return config;\r\n }, function (error) {\r\n // Do something with request error\r\n console.log(\"Api request error\", error);\r\n return Promise.reject(error);\r\n });\r\n\r\n// Add a response interceptor\r\naxios.interceptors.response.use(function (response) {\r\n // Do something with response data\r\n return response;\r\n }, function (error) {\r\n // Do something with response error\r\n logErrors(error);\r\n return Promise.reject(error);\r\n });\r\n\r\n\r\nfunction logErrors(error) {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure.\r\n if (error.response) {\r\n // The request was made and the server responded with a status code\r\n // that falls out of the range of 2xx\r\n console.log(\"data\", error.response.data, \"status\", error.response.status, \"headers\", error.response.headers);\r\n } else if (error.request) {\r\n // The request was made but no response was received\r\n // `error.request` is an instance of XMLHttpRequest in the browser and an instance of\r\n // http.ClientRequest in node.js\r\n console.log(error.request);\r\n } else {\r\n // Something happened in setting up the request that triggered an Error\r\n console.log('Error', error.message);\r\n }\r\n console.log(error.config);\r\n }\r\n}\r\n\r\n export default axios;","import axios from './servicecallsInterceptor';\r\nimport { store } from '..';\r\n\r\nexport function Get(url, cancellationSource) {\r\n let token = store.getState().app.token;\r\n let headers = {\r\n \"Content-Type\": \"application/json; charset=UTF-8; odata=verbose\",\r\n \"Access-Control-Allow-Origin\": \"*\",\r\n //\"version\": \"v1\",\r\n \"Cache-Control\": \"No-Store\",\r\n \"Access-Control-Max-Age\": 600,\r\n \"Authorization\": `Bearer ${token}`\r\n };\r\n\r\n return axios({\r\n method: 'get',\r\n url: url,\r\n headers: headers,\r\n cancelToken: (cancellationSource && cancellationSource.token ) ? cancellationSource.token : null\r\n }); \r\n}\r\n\r\nexport function Post(url, requestBody, cancellationSource) {\r\n let token = store.getState().app.token;\r\n let headers = {\r\n \"Content-Type\": \"application/json; charset=UTF-8; odata=verbose\",\r\n \"Access-Control-Allow-Origin\": \"*\",\r\n //\"version\": \"v1\",\r\n \"Cache-Control\": \"No-Store\",\r\n \"Access-Control-Max-Age\": 600,\r\n \"Authorization\": `Bearer ${token}`\r\n };\r\n\r\n return axios({\r\n method: 'post',\r\n url: url,\r\n data: requestBody,\r\n headers: headers,\r\n cancelToken: (cancellationSource && cancellationSource.token ) ? cancellationSource.token : null\r\n })\r\n \r\n}\r\n\r\nexport function PostMultiPart(url, requestBody, cancellationSource, onUploadProgress){\r\n let token = store.getState().app.token;\r\n \r\n let headers = {\r\n //Note: Ask apim to have allowed header * to upload multipart files\r\n \"Access-Control-Allow-Origin\": \"*\",\r\n \"Authorization\": `Bearer ${token}`\r\n }\r\n\r\n return axios({\r\n method: 'post',\r\n url: url,\r\n data: requestBody,\r\n headers: headers,\r\n onUploadProgress: onUploadProgress? (progressEvent) => { onUploadProgress(progressEvent) }:null,\r\n cancelToken: (cancellationSource && cancellationSource.token ) ? cancellationSource.token : null\r\n })\r\n}\r\n\r\n\r\nexport function Delete(url, requestBody, cancellationSource) {\r\n let token = store.getState().app.token;\r\n let headers = {\r\n \"Content-Type\": \"application/json; charset=UTF-8; odata=verbose\",\r\n \"Access-Control-Allow-Origin\": \"*\",\r\n //\"version\": \"v1\",\r\n \"Cache-Control\": \"No-Store\",\r\n \"Access-Control-Max-Age\": 600,\r\n \"Authorization\": `Bearer ${token}`\r\n };\r\n\r\n return axios({\r\n method: 'delete',\r\n url: url,\r\n data: requestBody,\r\n headers: headers,\r\n cancelToken: (cancellationSource && cancellationSource.token ) ? cancellationSource.token : null\r\n })\r\n \r\n}\r\n\r\n\r\nexport function ninthwavesGet(url, appId, token, cancellationSource){\r\n\r\n let headers = {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Access-Control-Allow-Origin\": \"*\",\r\n \"Authorization\": `${token}`,\r\n \"ApplicationId\": `${appId}`,\r\n \"Cache-Control\": \"No-Store\",\r\n \"Access-Control-Max-Age\": 600\r\n };\r\n\r\n return axios({\r\n method: 'get',\r\n url: url,\r\n headers: headers,\r\n cancelToken: (cancellationSource && cancellationSource.token ) ? cancellationSource.token : null\r\n }); \r\n\r\n}\r\n\r\nexport function ninthwavesPost(url, requestBody, appId, token, cancellationSource){\r\n\r\n let headers = {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Access-Control-Allow-Origin\": \"*\",\r\n \"Authorization\": `${token}`,\r\n \"ApplicationId\": `${appId}`,\r\n \"Cache-Control\": \"No-Store\",\r\n \"Access-Control-Max-Age\": 600\r\n };\r\n\r\n return axios({\r\n method: 'post',\r\n url: url,\r\n headers: headers,\r\n data: requestBody,\r\n cancelToken: (cancellationSource && cancellationSource.token ) ? cancellationSource.token : null\r\n }); \r\n\r\n}\r\n\r\nexport function GetForGraph(url, token, cancellationSource) {\r\n //let token = store.getState().app.token;\r\n let headers = {\r\n \"Content-Type\": \"application/json; charset=UTF-8; odata=verbose\",\r\n \"Access-Control-Allow-Origin\": \"*\",\r\n //\"version\": \"v1\",\r\n \"Cache-Control\": \"No-Store\",\r\n \"Access-Control-Max-Age\": 600,\r\n \"Authorization\": `Bearer ${token}`\r\n };\r\n\r\n return axios({\r\n method: 'get',\r\n url: url,\r\n headers: headers,\r\n cancelToken: (cancellationSource && cancellationSource.token) ? cancellationSource.token : null\r\n });\r\n}\r\n","import axios from \"axios\";\r\nimport { getEnvironmentVariableUrl, financialAdvisorsFeatureUrl } from \"../serviceConstant\";\r\nimport { Get } from \"../servicecalls\";\r\n\r\n\r\nexport var getEnvironmentVariablesCancellationToken = null;\r\nexport var getfaFeaturesCancellationToken = null;\r\n\r\n\r\nexport const getEnvironmentVariables = () => {\r\n \r\n\r\n if (getEnvironmentVariablesCancellationToken !== null && getEnvironmentVariablesCancellationToken !== undefined) {\r\n getEnvironmentVariablesCancellationToken.cancel(\"Cancel existing get environment variables to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getEnvironmentVariablesCancellationToken = cancelToken.source();\r\n\r\n let getEnvironmentVariablePromise = new Promise(function (resolve, reject) {\r\n Get(getEnvironmentVariableUrl, getEnvironmentVariablesCancellationToken).then(\r\n environmentRes => {\r\n resolve(environmentRes);\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Fetching environment data\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getEnvironmentVariablePromise;\r\n\r\n\r\n}\r\n\r\nexport const getfaFeatures = (emailId) => {\r\n\r\n if (getfaFeaturesCancellationToken !== null && getfaFeaturesCancellationToken !== undefined) {\r\n getfaFeaturesCancellationToken.cancel(\"Cancel existing get fa featurescall to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getfaFeaturesCancellationToken = cancelToken.source();\r\n\r\n let getfaFeaturesPromise = new Promise(function (resolve, reject) {\r\n const faFeaturesUrl = `${financialAdvisorsFeatureUrl}?emailId=${emailId}`;\r\n Get(faFeaturesUrl, getfaFeaturesCancellationToken).then(\r\n faResponse => {\r\n resolve(faResponse);\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Fetching fa features\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getfaFeaturesPromise;\r\n\r\n}\r\n","import React from 'react'\r\nimport { Icon } from 'antd';\r\n\r\nclass ErrorBoundary extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = { hasError: false };\r\n }\r\n \r\n static getDerivedStateFromError(error) {\r\n // Update state so the next render will show the fallback UI.\r\n return { hasError: true };\r\n }\r\n \r\n componentDidCatch(error, errorInfo) {\r\n // You can also log the error to an error reporting service\r\n console.log(\"Error Occured !!\", error, errorInfo);\r\n }\r\n \r\n render() {\r\n if (this.state.hasError) {\r\n // You can render any custom fallback UI\r\n return (\r\n
\r\n \r\n

Something went wrong, have some coffee and come back after sometime.

\r\n
\r\n )\r\n }\r\n \r\n return this.props.children; \r\n }\r\n }\r\n\r\n export default ErrorBoundary;\r\n","import download from 'downloadjs';\r\nexport function downloadDoc(data, fileName) {\r\n if (data) {\r\n var base64str = data;\r\n\r\n // decode base64 string, remove space for IE compatibility\r\n var binary = atob(base64str.replace(/\\s/g, \"\"));\r\n var len = binary.length;\r\n var buffer = new ArrayBuffer(len);\r\n var view = new Uint8Array(buffer);\r\n for (var i = 0; i < len; i++) {\r\n view[i] = binary.charCodeAt(i);\r\n }\r\n\r\n // create the blob object with content-type \"application/pdf\"\r\n var blob = new Blob([view], { type: \"application/pdf\" });\r\n\r\n fileName = fileName.split('/').join('') + '.pdf'\r\n download(blob, fileName, \"application/pdf\");\r\n return 'pdf downloaded'\r\n\r\n\r\n } else {\r\n console.log(\"didn't receive document from webapi\")\r\n return null\r\n }\r\n}\r\nexport const validateEmailId = (emailid) => {\r\n var isValid = true;\r\n var pattern = /^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/;\r\n if (emailid && pattern.test(emailid)) {\r\n isValid = true;\r\n }\r\n else {\r\n isValid = false;\r\n }\r\n return isValid;\r\n}\r\n\r\nexport function onlyUnique(value, index, self) { \r\n return self.indexOf(value) === index;\r\n}\r\n\r\nexport function downloadReferenceDoc(data, fileName,contentType) {\r\n if (data) {\r\n var base64str = data;\r\n\r\n // decode base64 string, remove space for IE compatibility\r\n var binary = atob(base64str.replace(/\\s/g, \"\"));\r\n var len = binary.length;\r\n var buffer = new ArrayBuffer(len);\r\n var view = new Uint8Array(buffer);\r\n for (var i = 0; i < len; i++) {\r\n view[i] = binary.charCodeAt(i);\r\n }\r\n var blob = new Blob([view], { type: contentType });\r\n download(blob, fileName, contentType);\r\n return 'file downloaded';\r\n } else {\r\n console.log(\"didn't receive document from webapi\")\r\n return null\r\n }\r\n}\r\n\r\nexport function removeNonAlphaNumericChar(input){\r\n let response = '';\r\n if(input !== null && input !== undefined){\r\n response = input.replace(/[^0-9a-z]/gi, '');\r\n }\r\n\r\n return response;\r\n}\r\n\r\n\r\nexport function getPreferenceValue(featuresList, featurename){\r\n let value = '';\r\n\r\n if(featuresList && Array.isArray(featuresList) && featuresList.length >0){\r\n for(let i=0; i< featuresList.length; i++){\r\n if(featuresList[i].featureName === featurename)\r\n {\r\n value = featuresList[i].showFeature ? featuresList[i].showFeature : '';\r\n }\r\n }\r\n }\r\n\r\n return value;\r\n}\r\n\r\nexport function arrayFilterByValue(array, string, searchkeylist) \r\n{\r\n let filteredArr = [];\r\n \r\n if(array && Array.isArray(array) && array.length > 0){\r\n filteredArr = array.filter(o => { \r\n return Object.keys(o).some(k => {\r\n if(searchkeylist && searchkeylist.includes(k)){\r\n if(o[k] !== null && o[k] !== undefined && (typeof o[k] === 'string' || typeof o[k] === 'number')) \r\n return o[k].toString().toLowerCase().includes(string.toLowerCase()); \r\n }\r\n }); \r\n });\r\n }\r\n \r\n \r\n return filteredArr;\r\n}\r\n\r\n\r\nexport function formatInCurrency(val){\r\n if(val){\r\n return isNaN(val) ? \"$0\" : `${parseFloat(val).toLocaleString('en-US', {style: 'currency', currency: 'USD'})}`\r\n }else{\r\n return \"-\";\r\n }\r\n}\r\n\r\n\r\nexport function toUTF8Array(str) {\r\n var utf8 = [];\r\n for (var i=0; i < str.length; i++) {\r\n var charcode = str.charCodeAt(i);\r\n if (charcode < 0x80) utf8.push(charcode);\r\n else if (charcode < 0x800) {\r\n utf8.push(0xc0 | (charcode >> 6), \r\n 0x80 | (charcode & 0x3f));\r\n }\r\n else if (charcode < 0xd800 || charcode >= 0xe000) {\r\n utf8.push(0xe0 | (charcode >> 12), \r\n 0x80 | ((charcode>>6) & 0x3f), \r\n 0x80 | (charcode & 0x3f));\r\n }\r\n // surrogate pair\r\n else {\r\n i++;\r\n // UTF-16 encodes 0x10000-0x10FFFF by\r\n // subtracting 0x10000 and splitting the\r\n // 20 bits of 0x0-0xFFFFF into two halves\r\n charcode = 0x10000 + (((charcode & 0x3ff)<<10)\r\n | (str.charCodeAt(i) & 0x3ff));\r\n utf8.push(0xf0 | (charcode >>18), \r\n 0x80 | ((charcode>>12) & 0x3f), \r\n 0x80 | ((charcode>>6) & 0x3f), \r\n 0x80 | (charcode & 0x3f));\r\n }\r\n }\r\n return utf8;\r\n}\r\n\r\n\r\nexport const addIndexToList = (arr) => {\r\n if(arr && Array.isArray(arr) && arr.length > 0){\r\n for(let i=0; i< arr.length; i++){\r\n arr[i]['uniqueIdx'] = i; \r\n }\r\n }\r\n return arr;\r\n}\r\n\r\nexport const addIncludeIndicatorToList = (arr) => {\r\n if(arr && Array.isArray(arr) && arr.length > 0){\r\n for(let i=0; i< arr.length; i++){\r\n arr[i]['uniqueIdx'] = i;\r\n arr[i]['indInclude'] = 'Y' \r\n }\r\n }\r\n return arr;\r\n}\r\nexport function formatMoney(amount, decimalCount = 2, decimal = \".\", thousands = \",\") {\r\n try {\r\n if (amount) {\r\n amount = parseFloat(amount);\r\n return amount.toLocaleString('en-US', { style: 'currency', currency: 'USD', minimumFractionDigits: decimalCount });\r\n }\r\n }\r\n catch (e) {\r\n console.log(e)\r\n }\r\n}\r\n\r\nexport function roundUnitValue(cell) {\r\n if (!cell) return '-';\r\n var result = (roundvalue(cell, 2) - Math.floor(cell, 2)) !== 0;\r\n let value;\r\n if (result) {\r\n value = roundvalue(cell, 2);\r\n }\r\n else {\r\n value = Math.floor(cell);\r\n }\r\n return value.toString().replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, \"$1,\");//this regex is used for thousand seprator \r\n}\r\n\r\nexport function roundvalue(value, decimals) {\r\n if (!value) return '-';\r\n var floatValue = parseFloat(value);\r\n return floatValue.toFixed(decimals);\r\n\r\n}\r\n","import React from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { withRouter } from 'react-router-dom';\r\nimport './NavMenu.css';\r\nimport { authProvider } from '../App';\r\nimport { REFRESH_APP, UPDATE_SELECTED_MENU_VALUE } from '../actions/appActions';\r\n//import img from './../images/user.svg';\r\nimport { getPreferenceValue } from '../common/utilities';\r\nimport 'antd/dist/antd.css';\r\nimport { Layout, Menu, Tooltip, Avatar } from 'antd';\r\nimport { LogoutOutlined, UserOutlined } from '@ant-design/icons';\r\nimport { Dropdown, DropdownToggle, DropdownMenu, DropdownItem } from 'reactstrap';\r\nconst { Header } = Layout;\r\n\r\nclass NavMenu extends React.PureComponent {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.toggle = this.toggle.bind(this);\r\n this.RefreshApplication = this.RefreshApplication.bind(this);\r\n this.handleMenuItemClick = this.handleMenuItemClick.bind(this);\r\n this.openCloseAdminDropdown = this.openCloseAdminDropdown.bind(this);\r\n this.openCloseAdminSubMenuDropdown = this.openCloseAdminSubMenuDropdown.bind(this);\r\n this.handleSubMenuItemClick = this.handleSubMenuItemClick.bind(this);\r\n this.state = {\r\n isOpen: false,\r\n selectedKey: null,\r\n adminDropdownOpen: false,\r\n adminSubMenuDropdownOpen: false,\r\n dashBoardDropdownOpen: false\r\n };\r\n }\r\n toggle() {\r\n this.setState({\r\n isOpen: !this.state.isOpen\r\n });\r\n }\r\n openCloseAdminDropdown = (source) => {\r\n let value = false;\r\n if (source === \"onMouseOver\") {\r\n value = true;\r\n } else if (source === 'onMouseLeave') {\r\n value = false;\r\n } else {\r\n value = !this.state.adminDropdownOpen;\r\n }\r\n this.setState({\r\n adminDropdownOpen: value\r\n });\r\n }\r\n openCloseAdminSubMenuDropdown = source => {\r\n let value = false;\r\n if (source === \"onMouseOver\") {\r\n value = true;\r\n } else if (source === 'onMouseLeave') {\r\n value = false;\r\n } else {\r\n value = !this.state.adminSubMenuDropdownOpen;\r\n this.openCloseAdminDropdown();\r\n }\r\n this.setState({\r\n adminSubMenuDropdownOpen: value\r\n });\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.defaultSelectedMenu !== this.props.defaultSelectedMenu) {\r\n this.setState({ selectedKey: this.props.defaultSelectedMenu });\r\n }\r\n }\r\n\r\n\r\n logoutUser() {\r\n //authProvider.clearCache();\r\n authProvider.logout();\r\n }\r\n\r\n RefreshApplication() {\r\n let refresh = !this.props.refresh;\r\n this.props.REFRESH_APP(refresh);\r\n\r\n }\r\n\r\n showUserPlanner() {\r\n document.dispatchEvent(new CustomEvent('showUserTaskPlanner', { bubbles: true }));\r\n }\r\n\r\n handleMenuItemClick(event) {\r\n if (event.key && event.key !== '0') {\r\n\r\n this.props.UPDATE_SELECTED_MENU_VALUE(event.key).then(res => {\r\n switch (event.key) {\r\n case \"1\": {\r\n this.props.history.push('/');\r\n break;\r\n }\r\n\r\n case \"2\": {\r\n this.props.history.push('/admin');\r\n break;\r\n }\r\n\r\n case \"3\": {\r\n this.props.history.push('/discretionarydistribution');\r\n break;\r\n }\r\n\r\n default: {\r\n break;\r\n }\r\n }\r\n\r\n })\r\n }\r\n }\r\n handleSubMenuItemClick = (event, source) => {\r\n event.stopPropagation();\r\n if (source && source !== '0') {\r\n\r\n this.props.UPDATE_SELECTED_MENU_VALUE('2').then(res => {\r\n switch (source) {\r\n\r\n case \"1\": {\r\n this.props.history.push('/admin/clientVisibility');\r\n break;\r\n }\r\n case \"2\": {\r\n this.props.history.push('/admin/payments');\r\n break;\r\n }\r\n case \"3\": {\r\n this.props.history.push('/admin/accounting');\r\n break;\r\n }\r\n case \"4\": {\r\n this.props.history.push('/admin/accounting/subAccount');\r\n break;\r\n }\r\n case \"5\": {\r\n this.props.history.push('/admin/accounting/payees');\r\n break;\r\n }\r\n case \"6\": {\r\n this.props.history.push('/admin/accounting/postingRules');\r\n break;\r\n }\r\n case \"7\": {\r\n this.props.history.push('/admin/paymentApprovers');\r\n break;\r\n }\r\n case \"8\": {\r\n this.props.history.push('/admin/clientSettings');\r\n break;\r\n }\r\n\r\n case \"9\": {\r\n this.props.history.push('/admin/failedpayments');\r\n break;\r\n }\r\n default: {\r\n break;\r\n } \r\n }\r\n })\r\n }\r\n }\r\n\r\n handleDashBoardMenuItemClick(event, source) {\r\n event.stopPropagation();\r\n this.props.history.push(source === \"dashboard\" ? \"/dashboard\" : `/dashboard/${source}`)\r\n }\r\n\r\n render() {\r\n\r\n return (\r\n <>\r\n
\r\n
RCM Payment Hub
\r\n \r\n \r\n \r\n \r\n {(getPreferenceValue(this.props.faFeatures, 'DASHBOARD') === 'Y') && (\r\n this.setState(prevState => { return {...prevState, dashBoardDropdownOpen: true}})}\r\n onMouseLeave={() => this.setState(prevState => { return {...prevState, dashBoardDropdownOpen: false}})}>\r\n this.setState(prevState => { return {...prevState, dashBoardDropdownOpen: !prevState.dashBoardDropdownOpen}})}>\r\n \r\n DashBoard\r\n \r\n \r\n this.handleDashBoardMenuItemClick(evt, 'dashboard')}>Dashboard\r\n this.handleDashBoardMenuItemClick(evt, 'payments')}>Payments\r\n this.handleDashBoardMenuItemClick(evt, 'failedPayments')}>Payments For Action\r\n \r\n \r\n )}\r\n {(getPreferenceValue(this.props.faFeatures, 'ADMIN') === 'Y') && this.openCloseAdminDropdown(\"onMouseOver\")}\r\n onMouseLeave={() => this.openCloseAdminDropdown(\"onMouseLeave\")}>\r\n this.openCloseAdminDropdown()}>\r\n \r\n Admin\r\n \r\n \r\n this.handleSubMenuItemClick(evt, '1')}>Client Visibility\r\n this.handleSubMenuItemClick(evt, '2')}>Payments\r\n this.handleSubMenuItemClick(evt, '3')}\r\n onMouseOver={() => this.openCloseAdminSubMenuDropdown(\"onMouseOver\")}\r\n onMouseLeave={() => this.openCloseAdminSubMenuDropdown(\"onMouseLeave\")}>\r\n this.openCloseAdminSubMenuDropdown()} direction='right'>\r\n \r\n Accounting\r\n \r\n \r\n this.handleSubMenuItemClick(evt, '4')}>Sub Accounts\r\n this.handleSubMenuItemClick(evt, '5')}>Payees\r\n this.handleSubMenuItemClick(evt, '6')}>Posting Rules\r\n \r\n \r\n \r\n this.handleSubMenuItemClick(evt, '9')}>Payments For Action\r\n this.handleSubMenuItemClick(evt, '7')}>Payment Approvers\r\n this.handleSubMenuItemClick(evt, '8')}>Client Settings\r\n \r\n \r\n }\r\n {(getPreferenceValue(this.props.faFeatures, 'DISCRETIONARY_DISTRIBUTION') === 'Y') && Discretionary Distribution}\r\n\r\n \r\n\r\n
this.showUserPlanner()}>\r\n } /> {this.props.user.userName}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = store => {\r\n return {\r\n user: store.app.user,\r\n refresh: store.app.refresh,\r\n faFeatures: store.app.faFeatures,\r\n defaultSelectedMenu: store.app.defaultSelectedMenu\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = {\r\n REFRESH_APP,\r\n UPDATE_SELECTED_MENU_VALUE\r\n}\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(withRouter(NavMenu));\r\n","import React from 'react';\r\nimport NavMenu from './NavMenu';\r\n\r\nimport 'antd/dist/antd.css';\r\nimport { Layout, Divider } from 'antd';\r\nimport packageJson from '../../package.json';\r\n\r\nconst { Content, Footer } = Layout;\r\n\r\n\r\nexport default props => (\r\n \r\n \r\n \r\n
\r\n {props.children}\r\n
\r\n
\r\n \r\n
\r\n);\r\n","\r\n\r\nexport const MsgForNoData = 'No data found';\r\nexport const errorMsg = \"We could not process your request at this time. Please try again or contact your Advisor for assistance.\";\r\nexport const MsgForFailedData = \"Failed to fetch data, please try again.\";\r\nexport const NoClientFound = \"You need to choose client from dashboard to view vendors list.\";\r\nexport const NoClientFoundSetupBill = \"Please select client from dashboard to setup bill.\";\r\nexport const UnAuthorizedClientAccess = \"You do not have access to this client, please select valid client from dashboard.\";\r\n\r\nexport const MessageType = {\r\n 'SUCCESS': 'Success',\r\n 'ERROR': 'Error',\r\n 'INFO': 'Info',\r\n 'WARNING': 'Warning',\r\n 'LABEL':'Label',\r\n 'PREFERENCE_WARNING':'PREFERENCE_WARNING'\r\n \r\n}\r\n\r\nexport const MessageClass = {\r\n 'SUCCESS': 'alert alert-success alert-dismissible fade show',\r\n 'ERROR': 'RCM_validation_error_text',\r\n 'INFO': 'alert alert-info alert-dismissible fade show',\r\n 'WARNING': 'alert alert-warning alert-dismissible fade show',\r\n 'LABEL':\"\",\r\n 'PREFERENCE_WARNING':''\r\n}\r\n\r\nexport const dateFormat = \"MM/DD/YYYY\";\r\nexport const alphanumericFormat = /^[a-zA-Z 0-9'/]+$/;\r\n\r\nexport function arrayFilterByValue(array, string) {\r\n let filteredArr = [];\r\n\r\n if (array && Array.isArray(array) && array.length > 0) {\r\n filteredArr = array.filter(o => {\r\n return Object.keys(o).some(k => {\r\n if (o[k] !== null && o[k] !== undefined && typeof o[k] === 'string')\r\n return o[k].toLowerCase().includes(string.toLowerCase());\r\n });\r\n });\r\n }\r\n\r\n\r\n return filteredArr;\r\n}\r\nexport const validateEmailId = (emailid) => {\r\n var isValid = true;\r\n var pattern = /^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,63})+$/;\r\n if (emailid && pattern.test(emailid)) {\r\n isValid = true;\r\n }\r\n else {\r\n isValid = false;\r\n }\r\n return isValid;\r\n}\r\n\r\nexport const getDateString = (date, format = 'mm/dd/yyyy') => {\r\n\r\n let newDate = (date instanceof Date) ? date : new Date(date);\r\n var dd = newDate.getDate();\r\n var mm = newDate.getMonth() + 1;\r\n\r\n var yyyy = newDate.getFullYear();\r\n if (dd < 10) {\r\n dd = '0' + dd;\r\n }\r\n if (mm < 10) {\r\n mm = '0' + mm;\r\n }\r\n var returnString = '';\r\n if (format === 'yyyy-mm-dd') {\r\n returnString = yyyy + '-' + mm + '-' + dd;\r\n } else {\r\n returnString = mm + '/' + dd + '/' + yyyy;\r\n }\r\n return returnString;\r\n}\r\n\r\nexport const basicAlphaNumeric = /^[a-zA-Z0-9 -]+$/;\r\n","import axios from \"axios\";\r\nimport { getUsersListUrl, apiBaseUrl, getClientsListUrl, manageUserOrgsUrl } from \"../serviceConstant\";\r\nimport { Get } from \"../servicecalls\";\r\nimport { MsgForFailedData } from '../../common/constants'\r\n \r\n\r\nexport var getUsersListCancellationToken = null;\r\nexport var getClientsListCancellationToken = null;\r\nexport var manageRCMUserOrgCancellationToken = null;\r\n\r\n\r\nexport const getUsersList = () => {\r\n \r\n if (getUsersListCancellationToken !== null && getUsersListCancellationToken !== undefined) {\r\n getUsersListCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getUsersListCancellationToken = cancelToken.source();\r\n\r\n let getUsersListPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${getUsersListUrl}`\r\n Get(url, getUsersListCancellationToken).then(\r\n userListRes => {\r\n if(userListRes.data && Array.isArray(userListRes.data)){\r\n resolve(userListRes.data);\r\n }else{\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Fetching userslist data\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getUsersListPromise;\r\n\r\n\r\n}\r\n\r\nexport const getClientsList = (useremail) => {\r\n \r\n if (getClientsListCancellationToken !== null && getClientsListCancellationToken !== undefined) {\r\n getClientsListCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getClientsListCancellationToken = cancelToken.source();\r\n\r\n let getClientsListPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${getClientsListUrl}?rcmUserId=${useremail}`;\r\n Get(url, getClientsListCancellationToken).then(\r\n clientsListRes => {\r\n if(clientsListRes.data && Array.isArray(clientsListRes.data)){\r\n resolve(clientsListRes.data);\r\n }else{\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Fetching clientslist data\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getClientsListPromise;\r\n\r\n\r\n}\r\n\r\nexport const manageRCMUserOrg = (mode, orgId, useremail, pkId) => {\r\n \r\n if (manageRCMUserOrgCancellationToken !== null && manageRCMUserOrgCancellationToken !== undefined) {\r\n manageRCMUserOrgCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n manageRCMUserOrgCancellationToken = cancelToken.source();\r\n\r\n let getClientsListPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${manageUserOrgsUrl}?operationMode=${mode}&orgId=${orgId}&RcmUserId=${useremail}&pkId=${pkId}`;\r\n Get(url, manageRCMUserOrgCancellationToken).then(\r\n manageUserOrgRes => {\r\n if(manageUserOrgRes.data && manageUserOrgRes.data.response_status === 0){\r\n resolve(manageUserOrgRes.data);\r\n }else{\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While updating user org data\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getClientsListPromise;\r\n\r\n\r\n}","import React from 'react';\r\n\r\nexport function getUsersListColumn(handleOnAssignClient){\r\n const column = [\r\n\r\n {\r\n dataField: 'rcmUserId',\r\n text: 'User Email',\r\n headerClasses: 'RCM_noWrap RCM_clientName_col',\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return(
\r\n {cell}\r\n
);\r\n }\r\n },\r\n {\r\n dataField: 'firstname',\r\n text: 'First Name',\r\n headerClasses: 'RCM_noWrap',\r\n //classes: 'RCM_common_table_column_text RCM_common_table_column_text_right',\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'lastname',\r\n text: 'Last Name',\r\n headerClasses: 'RCM_noWrap',\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: '',\r\n text: '',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'right',\r\n formatter: (cell, row) => {\r\n return(
\r\n \r\n
);\r\n }\r\n }\r\n ]\r\n\r\n return column;\r\n}\r\nfunction customCaretSort(order, column) {\r\n if (!order) return ();\r\n else if (order === 'asc') return ();\r\n else if (order === 'desc') return ();\r\n return null;\r\n}\r\n","import React, { Component } from 'react'\r\nimport { getUsersList } from '../../../services/adminServices/clientVisibilityService';\r\nimport { MsgForNoData } from '../../../common/constants';\r\nimport {getUsersListColumn} from './usersListColumns';\r\nimport BootstrapTable from 'react-bootstrap-table-next';\r\nimport { connect } from 'react-redux';\r\nimport { withRouter} from 'react-router-dom';\r\nimport { UpdateClientVisibilitySelectedUser } from '../../../actions/adminClientVisiblityAction';\r\nimport gsap from 'gsap/gsap-core';\r\nimport { arrayFilterByValue } from '../../../common/utilities';\r\nimport { message } from 'antd';\r\n\r\nclass UsersList extends Component {\r\n\r\n constructor(props){\r\n super(props);\r\n this.state = {\r\n usersList: [],\r\n filtereduserList: [],\r\n selectedUser: null\r\n }\r\n\r\n this.handleOnAssignClient = this.handleOnAssignClient.bind(this);\r\n }\r\n\r\n componentDidMount(){\r\n this.fetchUsersList();\r\n }\r\n\r\n componentWillUnmount(){\r\n this.props.UpdateClientVisibilitySelectedUser(null);\r\n }\r\n\r\n componentDidUpdate(prevProps){\r\n if(this.props.refresh !== prevProps.refresh){\r\n this.fetchUsersList();\r\n }\r\n }\r\n\r\n fetchUsersList(){\r\n gsap.to('#admin_clientvisibility_userlist', {duration: 0, opacity: 0, onComplete: () => {\r\n getUsersList().then(res => {\r\n this.setState({usersList: res, filtereduserList: res}, () => {\r\n gsap.to('#admin_clientvisibility_userlist', {duration: 1, opacity: 1});\r\n })\r\n })\r\n .catch(err => {\r\n console.error(\"Error Occured \", err);\r\n this.setState({usersList: [], filtereduserList: []}, () => {\r\n gsap.to('#admin_clientvisibility_userlist', {duration: 0, opacity: 1});\r\n message.error('Unable to pull users list, you try again by using refresh option');\r\n });\r\n \r\n })\r\n }});\r\n \r\n }\r\n\r\n handleOnAssignClient(row){\r\n if(row){\r\n this.setState({selectedUser: row}, () => {\r\n this.props.UpdateClientVisibilitySelectedUser(row);\r\n })\r\n }\r\n }\r\n\r\n rowClassForSelectedUser = (row) => {\r\n let cssClass = null;\r\n if (row && row.rcmUserId && this.state.selectedUser && this.state.selectedUser.rcmUserId === row.rcmUserId) {\r\n cssClass = \"RCM_Selected_User_Row\";\r\n }\r\n\r\n return cssClass;\r\n }\r\n\r\n handleOnSearchUserChange(event){\r\n if(event.target.value === ''){\r\n this.setState({filtereduserList: this.state.usersList});\r\n }else{\r\n let filterArr = arrayFilterByValue(this.state.usersList, event.target.value, ['rcmUserId', 'firstname', 'lastname']);\r\n this.setState({filtereduserList: filterArr});\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n
\r\n
\r\n this.handleOnSearchUserChange(e)} />\r\n
\r\n
\r\n\r\n
\r\n this.rowClassForSelectedUser(row)}\r\n noDataIndication={MsgForNoData}\r\n />\r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\nconst mapStateToProps = (store) => {\r\n return {\r\n refresh: store.app.refresh,\r\n env: store.app.env\r\n };\r\n}\r\n\r\nconst mapDispatchToProps = {\r\n UpdateClientVisibilitySelectedUser\r\n}\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(withRouter(UsersList));\r\n","import { UPDATE_CLIENT_VISIBILITY_SELECTED_USER } from \"./actionTypes\";\r\n\r\nexport const UpdateClientVisibilitySelectedUser = (row) => (dispatch) => {\r\n return Promise.resolve(\r\n dispatch({\r\n type: UPDATE_CLIENT_VISIBILITY_SELECTED_USER,\r\n payload: row,\r\n })\r\n )\r\n }","import React from 'react';\r\n\r\nexport function getClientsListColumn(handleOnClientSelect){\r\n const column = [\r\n {\r\n dataField: \"isUserBelongToOrg\",\r\n text: \"Include\",\r\n sort: false,\r\n editable: false,\r\n formatter: (cell, row) => {\r\n return (\r\n handleOnClientSelect(row)} />\r\n )\r\n }\r\n },\r\n {\r\n dataField: 'organizationName',\r\n text: 'Client Name',\r\n headerClasses: 'RCM_noWrap RCM_clientName_col',\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n }\r\n ]\r\n\r\n return column;\r\n}\r\nfunction customCaretSort(order, column) {\r\n if (!order) return ();\r\n else if (order === 'asc') return ();\r\n else if (order === 'desc') return ();\r\n return null;\r\n}\r\n","import React from \"react\";\r\n\r\nconst OverlayProcessing = (props) => {\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default OverlayProcessing;","import React, { Component } from 'react'\r\nimport { getClientsList, manageRCMUserOrg } from '../../../services/adminServices/clientVisibilityService';\r\nimport { getClientsListColumn } from './clientsListColumns';\r\nimport { MsgForNoData } from '../../../common/constants';\r\nimport BootstrapTable from 'react-bootstrap-table-next';\r\nimport { connect } from 'react-redux';\r\nimport { withRouter} from 'react-router-dom';\r\nimport OverlayProcessing from '../../../common/overlayProcessing';\r\nimport { arrayFilterByValue } from '../../../common/utilities';\r\nimport { message } from 'antd';\r\n\r\n\r\nclass ClientsList extends Component {\r\n\r\n constructor(props){\r\n super(props);\r\n\r\n this.state= {\r\n clientsList: [],\r\n filterdClientList: [],\r\n showOverlay: false,\r\n searchClientStr: ''\r\n }\r\n\r\n this.handleOnClientSelect = this.handleOnClientSelect.bind(this);\r\n }\r\n\r\n\r\n componentDidUpdate(prevProps){\r\n if(this.props.selectedUser && this.props.selectedUser !== prevProps.selectedUser){\r\n if(this.props.selectedUser.rcmUserId){\r\n this.setState({searchClientStr: ''}, () => {\r\n this.fetchClientsList(this.props.selectedUser.rcmUserId);\r\n })\r\n }\r\n }\r\n\r\n if(this.props.refresh !== prevProps.refresh){\r\n this.setState({searchClientStr: '', clientsList: [], filterdClientList: []})\r\n }\r\n }\r\n\r\n fetchClientsList(email){\r\n this.setState({showOverlay: true}, () => {\r\n getClientsList(email).then(res => {\r\n this.setState({clientsList: res, filterdClientList: res, showOverlay: false}, () => {\r\n });\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n this.setState({showOverlay: false, clientsList: [], filterdClientList: []});\r\n message.error('We are unable to pull client information');\r\n })\r\n })\r\n \r\n }\r\n\r\n handleOnClientSelect(row){\r\n if(row){\r\n if(this.props.selectedUser && this.props.selectedUser.rcmUserId){\r\n let mode = row.isUserBelongToOrg && row.isUserBelongToOrg === 'Y' ? 'REMOVE' : 'ADD';\r\n this.setState({showOverlay: true}, () => {\r\n manageRCMUserOrg(mode, row.orgId, this.props.selectedUser.rcmUserId, row.pKid).then(res => {\r\n this.fetchClientsList(this.props.selectedUser.rcmUserId);\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n })\r\n });\r\n }\r\n }\r\n }\r\n\r\n handleOnSearchClientChange(event){\r\n if(event.target.value === ''){\r\n this.setState({filterdClientList: this.state.clientsList, searchClientStr: ''});\r\n }else{\r\n let filterArr = arrayFilterByValue(this.state.clientsList, event.target.value, ['organizationName']);\r\n this.setState({filterdClientList: filterArr, searchClientStr: event.target.value});\r\n }\r\n }\r\n\r\n\r\n render() {\r\n return (\r\n
\r\n\r\n {\r\n this.state.showOverlay && ()\r\n }\r\n
\r\n
\r\n this.handleOnSearchClientChange(e)}/>\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\nconst mapStateToProps = (store) => {\r\n return {\r\n refresh: store.app.refresh,\r\n env: store.app.env,\r\n selectedUser: store.adminClientVisibility.selectedUser\r\n };\r\n}\r\n\r\nconst mapDispatchToProps = {\r\n \r\n}\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(withRouter(ClientsList));\r\n","import React, { Component } from 'react';\r\nimport UsersList from './usersList';\r\nimport ClientsList from './clientsList';\r\nimport { connect } from 'react-redux';\r\nimport { withRouter} from 'react-router-dom';\r\n\r\nclass ClientVisibility extends Component {\r\n\r\n constructor(props){\r\n super(props);\r\n this.state= {\r\n \r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\nconst mapStateToProps = (store) => {\r\n return {\r\n refresh: store.app.refresh\r\n };\r\n}\r\n\r\nconst mapDispatchToProps = {\r\n \r\n}\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(withRouter(ClientVisibility));\r\n\r\n\r\n","import { submitDiscritionaryDistributionUrl, apiBaseUrl, getEntityInfomationUrl, \r\n getDiscritionaryDistributionListUrl, getDiscritionaryDistributionUrl, createDistributionPdfUrl, uploadDiscretionaryDistributionDocsUrl,\r\n createDocusignEnvelopeUrl, updateDiscritionaryDistributionUrl, fetchDistributionDocumentsUrl, getDiscretionaryDocumentsListUrl,\r\n getCompletedDiscritionaryDistributionListUrl, updatedistributionStatusUrl, deleteDiscrtionaryDocumentUrl, deleteDiscrtionaryDistributionUrl } from \"../serviceConstant\";\r\nimport {errorMsg} from '../../common/constants';\r\nimport { Post, Get, PostMultiPart, Delete} from \"../servicecalls\";\r\nimport axios from \"axios\";\r\nimport {toUTF8Array} from '../../common/utilities';\r\n\r\nexport var SubmitDiscritionaryDistributionCancellationToken = null;\r\nexport var GetEntityInfomationCancellationToken = null;\r\nexport var GetDiscretionaryDistributionCancellationToken = null;\r\nexport var GetDiscretionaryDistributionInfoCancellationToken =null;\r\nexport var CreateDocuSignEnvelopDDCancellationToken = null;\r\nexport var CreateDistributionPdfCancellationToken = null;\r\nexport var UpdateDiscritionaryDistributionCancellationToken =null;\r\nexport var FetchDiscretionDistributionDocumentCancellationToken = null;\r\nexport var GetCompletedDiscretionaryDistributionCancellationToken = null;\r\nexport var UpdateDiscritionaryDistributionStatusCancellationToken = null;\r\nexport var GetDiscretionaryDistributionDocumentListCancellationToken = null;\r\nexport var DeleteDiscretionaryDistributionDocumentCancellationToken = null;\r\nexport var DeleteDiscretionaryDistributionCancellationToken = null;\r\n\r\nexport const SubmitDiscritionaryDistribution = (request, mode) => {\r\n\r\n if (SubmitDiscritionaryDistributionCancellationToken !== null && SubmitDiscritionaryDistributionCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n SubmitDiscritionaryDistributionCancellationToken.cancel('Cancelling the get vendor list request to prevent memory leaks.');\r\n }\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n SubmitDiscritionaryDistributionCancellationToken = cancelToken.source();\r\n\r\n\r\n let submitDiscritionaryDistributionPromise = new Promise(\r\n function (resolve, reject) {\r\n let data = {\r\n \"IsSubmit\": mode === 'SUBMIT' ? true : false,\r\n \"DiscritionDistribution\": request\r\n }\r\n\r\n let byteArr = toUTF8Array(JSON.stringify(data));\r\n\r\n Post(submitDiscritionaryDistributionUrl, byteArr, SubmitDiscritionaryDistributionCancellationToken).then(res => {\r\n resolve(res);\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Bill Pay Service : Error submit distribution list : :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return submitDiscritionaryDistributionPromise;\r\n}\r\n\r\n\r\nexport const GetEntityInfomation = (entityId) => {\r\n\r\n if (GetEntityInfomationCancellationToken !== null && GetEntityInfomationCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n GetEntityInfomationCancellationToken.cancel('Cancelling the get entity data to prevent memory leaks.');\r\n }\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n GetEntityInfomationCancellationToken = cancelToken.source();\r\n\r\n\r\n let submitDiscritionaryDistributionPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${getEntityInfomationUrl}?rockItClientID=${entityId}`\r\n Get(url, GetEntityInfomationCancellationToken).then(res => {\r\n if(res && res.data && res.data.error_code && res.data.error_code === \"0\"){\r\n resolve(res.data);\r\n }else{\r\n reject(errorMsg);\r\n }\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Discretionary Distributiob Service : Error get entity info : :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return submitDiscritionaryDistributionPromise;\r\n}\r\n\r\n\r\nexport const GetDiscretionaryDistribution = (emailId, showAllTxn) => {\r\n\r\n\r\n if (GetDiscretionaryDistributionCancellationToken !== null && GetDiscretionaryDistributionCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n GetDiscretionaryDistributionCancellationToken.cancel('Cancelling the get list of distribution to prevent memory leaks.');\r\n }\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n GetDiscretionaryDistributionCancellationToken = cancelToken.source();\r\n\r\n\r\n let submitDiscritionaryDistributionPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = `${getDiscritionaryDistributionListUrl}?email=${emailId}&alltxn=${showAllTxn}`\r\n Get(url, GetDiscretionaryDistributionCancellationToken).then(res => {\r\n if(res && res.data){\r\n resolve(res.data);\r\n }else{\r\n reject(errorMsg);\r\n }\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Discretionary Distributiob Service : Error get distribution list : :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return submitDiscritionaryDistributionPromise;\r\n}\r\n\r\nexport const GetCompletedDiscretionaryDistribution = (emailId, showAllTxn) => {\r\n\r\n if (GetCompletedDiscretionaryDistributionCancellationToken !== null && GetCompletedDiscretionaryDistributionCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n GetCompletedDiscretionaryDistributionCancellationToken.cancel('Cancelling the get list of distribution to prevent memory leaks.');\r\n }\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n GetCompletedDiscretionaryDistributionCancellationToken = cancelToken.source();\r\n\r\n\r\n let getDistributionlistPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = `${getCompletedDiscritionaryDistributionListUrl}?email=${emailId}&alltxn=${showAllTxn}`\r\n Get(url, GetCompletedDiscretionaryDistributionCancellationToken).then(res => {\r\n if(res && res.data){\r\n resolve(res.data);\r\n }else{\r\n reject(errorMsg);\r\n }\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Discretionary Distributiob Service : Error get distribution list : :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return getDistributionlistPromise;\r\n}\r\n\r\n\r\nexport const GetDiscretionaryDistributionInfo = (distributionId) => {\r\n\r\n if (GetDiscretionaryDistributionInfoCancellationToken !== null && GetDiscretionaryDistributionInfoCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n GetDiscretionaryDistributionInfoCancellationToken.cancel('Cancelling the get list of distribution to prevent memory leaks.');\r\n }\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n GetDiscretionaryDistributionInfoCancellationToken = cancelToken.source();\r\n\r\n\r\n let submitDiscritionaryDistributionPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = `${getDiscritionaryDistributionUrl}?id=${distributionId}`\r\n Get(url, GetDiscretionaryDistributionInfoCancellationToken).then(res => {\r\n if(res && res.data){\r\n resolve(res.data);\r\n }else{\r\n reject(errorMsg);\r\n }\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Discretionary Distributiob Service : Error get distribution information : :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return submitDiscritionaryDistributionPromise;\r\n}\r\n\r\n\r\n\r\nexport const CreateDocuSignEnvelopDD = (distributionId) => {\r\n\r\n if (CreateDocuSignEnvelopDDCancellationToken !== null && CreateDocuSignEnvelopDDCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n CreateDocuSignEnvelopDDCancellationToken.cancel('Cancelling the get list of distribution to prevent memory leaks.');\r\n }\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n CreateDocuSignEnvelopDDCancellationToken = cancelToken.source();\r\n\r\n\r\n let CreateDocuSignEnvelopDDPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${createDocusignEnvelopeUrl}?id=${distributionId}`\r\n Get(url, CreateDocuSignEnvelopDDCancellationToken).then(res => {\r\n if(res && res.data){\r\n resolve(res.data);\r\n }else{\r\n reject(errorMsg);\r\n }\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Discretionary Distributiob Service : Error to create docusign : :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return CreateDocuSignEnvelopDDPromise;\r\n}\r\n\r\n\r\nexport const CreateDistributionPdf = (distributionId) => {\r\n\r\n if (CreateDistributionPdfCancellationToken !== null && CreateDistributionPdfCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n CreateDistributionPdfCancellationToken.cancel('Cancelling the get list of distribution to prevent memory leaks.');\r\n }\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n CreateDistributionPdfCancellationToken = cancelToken.source();\r\n\r\n\r\n let CreateDocuSignEnvelopDDPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${createDistributionPdfUrl}?id=${distributionId}`\r\n Post(url, '', CreateDistributionPdfCancellationToken).then(res => {\r\n if(res && res.data){\r\n resolve(res.data);\r\n }else{\r\n reject(errorMsg);\r\n }\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Discretionary Distributiob Service : Error to create distributio pdf : :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return CreateDocuSignEnvelopDDPromise;\r\n}\r\n\r\nexport const UpdateDiscritionaryDistribution = (request, mode) => {\r\n\r\n if (UpdateDiscritionaryDistributionCancellationToken !== null && UpdateDiscritionaryDistributionCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n UpdateDiscritionaryDistributionCancellationToken.cancel('Cancelling the update discretionary distribution to prevent memory leaks.');\r\n }\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n UpdateDiscritionaryDistributionCancellationToken = cancelToken.source();\r\n\r\n\r\n let submitDiscritionaryDistributionPromise = new Promise(\r\n function (resolve, reject) {\r\n let data = {\r\n \"IsSubmit\": mode === 'SUBMIT' ? true : false,\r\n \"DiscritionDistribution\": request\r\n }\r\n\r\n let byteArr = toUTF8Array(JSON.stringify(data));\r\n\r\n Post(updateDiscritionaryDistributionUrl, byteArr, UpdateDiscritionaryDistributionCancellationToken).then(res => {\r\n resolve(res);\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Bill Pay Service : Error submit distribution list : :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return submitDiscritionaryDistributionPromise;\r\n}\r\n\r\n\r\nexport const FetchDiscretionDistributionDocument = (distributionId, doctype, documentId) => {\r\n\r\n if (FetchDiscretionDistributionDocumentCancellationToken !== null && FetchDiscretionDistributionDocumentCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n FetchDiscretionDistributionDocumentCancellationToken.cancel('Cancelling the get list of distribution to prevent memory leaks.');\r\n }\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n FetchDiscretionDistributionDocumentCancellationToken = cancelToken.source();\r\n\r\n\r\n let FetchDiscretionDistributionDocumentPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = `${fetchDistributionDocumentsUrl}?id=${distributionId}&doctype=${doctype}&docId=${documentId}`\r\n Get(url, FetchDiscretionDistributionDocumentCancellationToken).then(res => {\r\n if(res && res.data){\r\n resolve(res.data);\r\n }else{\r\n reject(errorMsg);\r\n }\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Discretionary Distributiob Service : Error while fetching document : :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return FetchDiscretionDistributionDocumentPromise;\r\n}\r\n\r\n\r\nexport const UpdateDiscritionaryDistributionStatus = (id, status) => {\r\n\r\n if (UpdateDiscritionaryDistributionStatusCancellationToken !== null && UpdateDiscritionaryDistributionStatusCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n UpdateDiscritionaryDistributionStatusCancellationToken.cancel('Cancelling the update discretionary distribution to prevent memory leaks.');\r\n }\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n UpdateDiscritionaryDistributionStatusCancellationToken = cancelToken.source();\r\n\r\n\r\n let updateDistributionStatusPromise = new Promise(\r\n function (resolve, reject) {\r\n let data = {\r\n \"id\": id,\r\n \"status\": status\r\n }\r\n\r\n\r\n Post(updatedistributionStatusUrl, data, UpdateDiscritionaryDistributionStatusCancellationToken).then(res => {\r\n resolve(res);\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Bill Pay Service : Error update distribution status : :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return updateDistributionStatusPromise;\r\n}\r\n\r\n\r\n\r\nexport const UploadDiscretionaryDocument = (id, file, email, onUploadProgress) => {\r\n\r\n let UploadDiscretionaryDocumentPromise = new Promise(\r\n function (resolve, reject) {\r\n let formData = new FormData();\r\n formData.append('DistributionId', id);\r\n formData.append('UserEmail', email);\r\n formData.append('File', file);\r\n\r\n PostMultiPart(uploadDiscretionaryDistributionDocsUrl, formData, null, onUploadProgress).then(res => {\r\n resolve(res);\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Bill Pay Service : Error update distribution status : :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n\r\n return UploadDiscretionaryDocumentPromise;\r\n}\r\n\r\nexport const GetDiscretionaryDistributionDocumentList = (id) => {\r\n\r\n if (GetDiscretionaryDistributionDocumentListCancellationToken !== null && GetDiscretionaryDistributionDocumentListCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n GetDiscretionaryDistributionDocumentListCancellationToken.cancel('Cancelling to prevent memory leaks.');\r\n }\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n GetDiscretionaryDistributionDocumentListCancellationToken = cancelToken.source();\r\n\r\n\r\n let GetDiscretionaryDistributionDocumentListPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = `${getDiscretionaryDocumentsListUrl}?distributionId=${id}`\r\n Get(url, GetDiscretionaryDistributionDocumentListCancellationToken).then(res => {\r\n resolve(res.data);\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Bill Pay Service : Error fetch distribution documents list : :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n\r\n return GetDiscretionaryDistributionDocumentListPromise;\r\n}\r\n\r\n\r\nexport const DeleteDiscretionaryDistributionDoc = (docId) => {\r\n\r\n if (DeleteDiscretionaryDistributionDocumentCancellationToken !== null && DeleteDiscretionaryDistributionDocumentCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n DeleteDiscretionaryDistributionDocumentCancellationToken.cancel('Cancelling the delete distribution doc to prevent memory leaks.');\r\n }\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n DeleteDiscretionaryDistributionDocumentCancellationToken = cancelToken.source();\r\n\r\n\r\n let deleteDiscritionaryDistributionDocPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = `${deleteDiscrtionaryDocumentUrl}?docId=${docId}`\r\n Delete(url, null, DeleteDiscretionaryDistributionDocumentCancellationToken).then(res => {\r\n resolve(res);\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Discretionary Distributiob Service : Error delete distribution doc : :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return deleteDiscritionaryDistributionDocPromise;\r\n}\r\n\r\nexport const DeleteDiscretionaryDistribution = (id, email) => {\r\n\r\n if (DeleteDiscretionaryDistributionCancellationToken !== null && DeleteDiscretionaryDistributionCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n DeleteDiscretionaryDistributionCancellationToken.cancel('Cancelling the delete distribution to prevent memory leaks.');\r\n }\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n DeleteDiscretionaryDistributionCancellationToken = cancelToken.source();\r\n\r\n const data = {\r\n 'DistributionId': id,\r\n 'RequestorEmail': email\r\n }\r\n\r\n let deleteDiscritionaryDistributionPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = `${deleteDiscrtionaryDistributionUrl}`\r\n\r\n Post(url, data, DeleteDiscretionaryDistributionCancellationToken).then(res => {\r\n resolve(res);\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Discretionary Distributiob Service : Error delete distribution : :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return deleteDiscritionaryDistributionPromise;\r\n}\r\n\r\n\r\n","import React from 'react';\r\nimport { Divider, Popconfirm } from 'antd';\r\n\r\n\r\nexport function getDistributionColumn(handleEditClick, handleViewClick, openDocument, handleViewDocumentsClick, handleDeleteClick, showAllTxn) {\r\n const column = [\r\n\r\n {\r\n dataField: 'requestDate',\r\n text: 'Request Date',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n sortFunc: (a, b, order) => {\r\n try {\r\n if (order === 'asc') {\r\n return new Date(b) - new Date(a);\r\n }\r\n return new Date(a) - new Date(b); // desc\r\n } catch (err) {\r\n console.error(err);\r\n if (order === 'asc') {\r\n return b - a;\r\n }\r\n return a - b;\r\n }\r\n }\r\n },\r\n {\r\n dataField: 'entityNumber',\r\n text: 'Entity Number',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return (\r\n
\r\n {\r\n cell\r\n }\r\n
\r\n )\r\n },\r\n },\r\n {\r\n dataField: 'trustTitle',\r\n text: 'Trust Title',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: 'distributionAmount',\r\n text: 'Distribution Amount',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return (\r\n
\r\n {cell}\r\n
\r\n )\r\n }\r\n },\r\n {\r\n dataField: 'status',\r\n text: 'Status',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: 'approvals',\r\n text: 'Approvers',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return (\r\n <>\r\n {\r\n\r\n (cell && Array.isArray(cell) && cell.length > 0) && (\r\n cell.map((approval, index) => {\r\n return (\r\n \r\n {approval.approver && approval.approver.fullName ? approval.approver.fullName : ''}\r\n {approval.approvalStatus === 'Approved' && '✓'}\r\n {cell.length - 1 !== index && }\r\n \r\n )\r\n })\r\n )\r\n }\r\n \r\n )\r\n }\r\n },\r\n ...((showAllTxn && showAllTxn === 'Y') ? [\r\n {\r\n dataField: 'createdBy',\r\n text: 'Created By',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return (\r\n <>\r\n {\r\n cell ? cell : ''\r\n }\r\n \r\n )\r\n }\r\n }\r\n ] : []),\r\n {\r\n dataField: 'df1',\r\n text: 'Documents',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'left',\r\n formatter: (cell, row) => {\r\n return (\r\n
\r\n {\r\n (row.isEsignDocExist === 'Y') && (\r\n
openDocument(row.distributionID, 'SIGN')} title=\"Sent Document\">
\r\n )\r\n }\r\n {\r\n (row.isEsignedDocExist === 'Y') && (\r\n
openDocument(row.distributionID, 'SIGNED')} title=\"Signed Document\">
\r\n )\r\n }\r\n
\r\n )\r\n },\r\n events: {\r\n // onClick: this.openConfirmationPopup\r\n }\r\n },\r\n {\r\n dataField: 'df2',\r\n text: '',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'left',\r\n formatter: (cell, row) => {\r\n return (\r\n
\r\n {\r\n (row.status && row.status === 'Draft') ?\r\n (\r\n <>\r\n \r\n \r\n )\r\n :\r\n ()\r\n }\r\n\r\n {\r\n (\r\n <>\r\n \r\n handleDeleteClick(row)} okText=\"Yes\" cancelText=\"No\">\r\n \r\n \r\n \r\n )\r\n }\r\n
\r\n )\r\n },\r\n events: {\r\n // onClick: this.openConfirmationPopup\r\n }\r\n }\r\n ]\r\n\r\n return column;\r\n}\r\n\r\n\r\nexport function getCompletedDistributionColumn(openDocument, showAllTxn) {\r\n const column = [\r\n\r\n {\r\n dataField: 'requestDate',\r\n text: 'Request Date',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n sortFunc: (a, b, order) => {\r\n try{\r\n if (order === 'asc') {\r\n return new Date(b) - new Date(a);\r\n }\r\n return new Date(a) - new Date(b); // desc\r\n }catch(err){\r\n console.error(err);\r\n if(order === 'asc'){\r\n return b - a;\r\n }\r\n return a - b;\r\n }\r\n }\r\n },\r\n {\r\n dataField: 'entityNumber',\r\n text: 'Entity Number',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return (\r\n
\r\n {\r\n cell\r\n }\r\n
\r\n )\r\n },\r\n },\r\n {\r\n dataField: 'trustTitle',\r\n text: 'Trust Title',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: 'distributionAmount',\r\n text: 'Distribution Amount',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return (\r\n
\r\n {cell}\r\n
\r\n )\r\n }\r\n },\r\n {\r\n dataField: 'trustees',\r\n text: 'Trustee Name',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: 'status',\r\n text: 'Status',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: 'approvals',\r\n text: 'Approvers',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return (\r\n <>\r\n {\r\n\r\n (cell && Array.isArray(cell) && cell.length > 0) && (\r\n cell.map((approval, index) => {\r\n return (\r\n \r\n {approval.approver && approval.approver.fullName ? approval.approver.fullName : ''}\r\n {approval.approvalStatus === 'Approved' && '✓'}\r\n {cell.length - 1 !== index && }\r\n \r\n )\r\n })\r\n )\r\n }\r\n \r\n )\r\n }\r\n },\r\n ...((showAllTxn && showAllTxn === 'Y') ? [\r\n {\r\n dataField: 'createdBy',\r\n text: 'Created By',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return (\r\n <>\r\n {\r\n cell ? cell : ''\r\n }\r\n \r\n )\r\n }\r\n }\r\n ] : []),\r\n {\r\n dataField: '',\r\n text: 'Documents',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'left',\r\n formatter: (cell, row) => {\r\n return (\r\n
\r\n {\r\n (row.isEsignDocExist === 'Y') && (\r\n
openDocument(row.distributionID, 'SIGN')} title=\"Sent Document\">
\r\n )\r\n }\r\n {\r\n (row.isEsignedDocExist === 'Y') && (\r\n
openDocument(row.distributionID, 'SIGNED')} title=\"Signed Document\">
\r\n )\r\n }\r\n
\r\n )\r\n },\r\n events: {\r\n // onClick: this.openConfirmationPopup\r\n }\r\n }\r\n ]\r\n\r\n return column;\r\n}\r\n\r\nfunction customCaretSort(order, column) {\r\n if (!order) return ();\r\n else if (order === 'asc') return ();\r\n else if (order === 'desc') return ();\r\n return null;\r\n}","import { UPDATE_DISCRETIONARY_DISTRIBUTION_MODE } from \"./actionTypes\";\r\n\r\nexport const UpdateDiscretionaryDistributionMode = (row, mode) => (dispatch) => {\r\n return Promise.resolve(\r\n dispatch({\r\n type: UPDATE_DISCRETIONARY_DISTRIBUTION_MODE,\r\n payload: row,\r\n mode: mode\r\n })\r\n )\r\n }","import React from 'react';\r\nimport { Modal, ModalHeader, ModalBody } from 'reactstrap';\r\nimport Spinner from 'reactstrap/lib/Spinner';\r\n\r\nexport default class PdfViwerModal extends React.PureComponent {\r\n\r\n constructor(props){\r\n super(props);\r\n this.modalHeight = window.innerHeight - 200;\r\n }\r\n\r\n\r\n render() {\r\n\r\n return (\r\n \r\n
\r\n \r\n \r\n \r\n <>\r\n
DOCUMENT VIEWER
\r\n {\r\n this.props.children\r\n }\r\n {\r\n this.props.pdfdata ?\r\n \"\r\n // )\r\n this.setState({pdfViewerState: true, pdfdata: doc});\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n })\r\n }\r\n\r\n handleOnNewDistribution() {\r\n this.props.UpdateDiscretionaryDistributionMode(null, 'ADD').then(() => {\r\n if (this.props.history) {\r\n this.props.history.push(\"/discretionaryrequest\");\r\n }\r\n })\r\n }\r\n\r\n togglePdfViewer(){\r\n this.setState({pdfViewerState: !this.state.pdfViewerState});\r\n }\r\n\r\n\r\n render() {\r\n return (\r\n
\r\n {\r\n this.state.isLoading ?\r\n (
Loading Distribution List\r\n  \r\n
) :\r\n (\r\n <>\r\n
\r\n
\r\n
\r\n this.filterDistrubtion(e)} />\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n )\r\n }\r\n\r\n \r\n \r\n
\r\n )\r\n }\r\n}\r\n\r\nconst mapStateToProps = (store) => {\r\n return {\r\n user: store.app.user,\r\n refresh: store.app.refresh,\r\n faFeatures: store.app.faFeatures\r\n };\r\n}\r\n\r\nconst mapDispatchToProps = {\r\n UpdateDiscretionaryDistributionMode\r\n}\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(withRouter(DiscretionDistributionCompletedList));\r\n\r\n","import React, {Component} from 'react';\r\nimport DiscretionDistributionList from './discretiondistributionlist';\r\nimport DiscretionDistributionCompletedList from './discretiondistributioncompletedlist';\r\nimport 'antd/dist/antd.css';\r\nimport { Tabs } from 'antd';\r\nconst { TabPane } = Tabs;\r\n\r\nclass DiscrtionaryDistribution extends Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = { };\r\n\r\n }\r\n\r\n render() {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nexport default DiscrtionaryDistribution;","import React from 'react';\r\nimport 'antd/dist/antd.css';\r\nimport { Result } from 'antd';\r\n\r\nexport default function Notfound() {\r\n\r\n const backhome = () => {\r\n window.location.replace(window.location.origin);\r\n }\r\n\r\n return (\r\n
\r\n backhome()} />}\r\n >\r\n \r\n
\r\n )\r\n}\r\n","import React from 'react';\r\nimport { formatInCurrency } from '../../../common/utilities';\r\n\r\nexport function getWiresListColumn(){\r\n const column = [\r\n {\r\n dataField: 'createdTime',\r\n text: 'Payment Date',\r\n headerClasses: 'RCM_noWrap',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n sortFunc: (a, b, order) => {\r\n try{\r\n if (order === 'asc') {\r\n return new Date(b) - new Date(a);\r\n }\r\n return new Date(a) - new Date(b); // desc\r\n }catch(err){\r\n console.error(err);\r\n if(order === 'asc'){\r\n return b - a;\r\n }\r\n return a - b;\r\n }\r\n }\r\n \r\n },\r\n {\r\n dataField: 'entity',\r\n text: 'Entity Number',\r\n headerClasses: 'RCM_noWrap',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'vendorname',\r\n text: 'Vendor Name',\r\n headerClasses: 'RCM_noWrap',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'amount',\r\n text: 'Amount',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'right',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n sortFunc: (a, b, order) => {\r\n if (order === 'asc') {\r\n return b - a;\r\n }\r\n return a - b; // desc\r\n },\r\n formatter: (cell, row) => {\r\n return(\r\n
\r\n {formatInCurrency(cell)}\r\n
\r\n )\r\n }\r\n },\r\n {\r\n dataField: 'paymentType',\r\n text: 'Payment Type',\r\n headerClasses: 'RCM_noWrap',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'paymentStatus',\r\n text: 'Payment Status',\r\n headerClasses: 'RCM_noWrap',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'approvalStatus',\r\n text: 'Approval Status',\r\n headerClasses: 'RCM_noWrap',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'isWireSent',\r\n text: 'Wire Sent',\r\n headerClasses: 'RCM_noWrap',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n }\r\n ]\r\n\r\n return column;\r\n}\r\nfunction customCaretSort(order, column) {\r\n if (!order) return ();\r\n else if (order === 'asc') return ();\r\n else if (order === 'desc') return ();\r\n return null;\r\n}","import axios from 'axios';\r\nimport { MsgForFailedData } from '../../common/constants';\r\nimport { getwiresListsUrl, apiBaseUrl } from '../serviceConstant';\r\nimport { Get } from '../servicecalls';\r\n\r\nexport var getWiresListCancellationToken = null;\r\n\r\nexport const getWiresList = (fromDate, toDate) => {\r\n \r\n if (getWiresListCancellationToken !== null && getWiresListCancellationToken !== undefined) {\r\n getWiresListCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getWiresListCancellationToken = cancelToken.source();\r\n\r\n let getUsersListPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${getwiresListsUrl}?fromDate=${fromDate}&toDate=${toDate}`;\r\n Get(url, getWiresListCancellationToken).then(\r\n wiresListRes => {\r\n //console.log(wiresListRes);\r\n if(wiresListRes.data ){\r\n resolve(wiresListRes.data);\r\n }else{\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Fetching wireslist data\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getUsersListPromise;\r\n\r\n\r\n}","import React, { Component } from 'react';\r\nimport { getWiresListColumn } from './wiresListColumns';\r\nimport { MsgForNoData, dateFormat } from '../../../common/constants';\r\nimport { getWiresList } from '../../../services/adminServices/wiresListService';\r\nimport BootstrapTable from 'react-bootstrap-table-next';\r\nimport 'antd/dist/antd.css';\r\nimport { DatePicker } from 'antd';\r\nimport OverlayProcessing from '../../../common/overlayProcessing';\r\nimport * as moment from \"moment\";\r\nimport { connect } from 'react-redux';\r\nimport { arrayFilterByValue } from '../../../common/utilities';\r\nimport { Label } from 'reactstrap';\r\n\r\n\r\nclass WiresList extends Component {\r\n\r\n constructor(props){\r\n super(props);\r\n\r\n this.state = {\r\n showOverlay: false,\r\n searchText: '',\r\n wiresList: [],\r\n filterdWiresList: [],\r\n fromDate: moment().subtract(30, 'days'),\r\n toDate: moment()\r\n }\r\n\r\n this.defaultWiresListSorted = [{\r\n dataField: 'createdTime',\r\n order: 'desc'\r\n }]\r\n\r\n this.onToDateChange = this.onToDateChange.bind(this);\r\n this.onFromDateChange = this.onFromDateChange.bind(this);\r\n }\r\n\r\n componentDidMount(){\r\n this.fetchWiresList();\r\n }\r\n\r\n componentDidUpdate(prevProps){\r\n if (prevProps.refresh !== this.props.refresh) {\r\n this.setState({fromDate: moment().subtract(30, 'days'), toDate: moment()}, () => {\r\n this.fetchWiresList();\r\n })\r\n }\r\n\r\n if(prevProps.ActiveKey !== this.props.ActiveKey && this.props.ActiveKey === '2'){\r\n this.setState({fromDate: moment().subtract(30, 'days'), toDate: moment()}, () => {\r\n this.fetchWiresList();\r\n })\r\n }\r\n }\r\n\r\n fetchWiresList(){\r\n this.setState({showOverlay: true}, () => {\r\n //call api here\r\n let fromDate = this.state.fromDate ? this.state.fromDate.format('L') : \"\";\r\n let toDate = this.state.toDate ? this.state.toDate.format('L') : \"\";\r\n getWiresList(fromDate, toDate).then(res => {\r\n let wires = res.response_data && Array.isArray(res.response_data) ? res.response_data : [];\r\n this.setState({wiresList: wires, filterdWiresList: wires, showOverlay: false});\r\n })\r\n .catch(err => {\r\n this.setState({showOverlay: false});\r\n })\r\n });\r\n }\r\n\r\n handleOnSearchChange(evt){\r\n let searchString = evt.target.value;\r\n if (searchString) {\r\n var updatedWiresList = [...this.state.wiresList];\r\n let searchKeyList = ['createdTime', 'entity', 'vendorname', 'amount', 'paymentType', 'paymentStatus', 'approvalStatus', 'isWireSent'];\r\n updatedWiresList = arrayFilterByValue(updatedWiresList, searchString, searchKeyList);\r\n this.setState({ filterdWiresList: updatedWiresList, searchText: searchString });\r\n } else {\r\n this.setState({ filterdWiresList: this.state.wiresList, searchText: searchString });\r\n }\r\n }\r\n\r\n onFromDateChange(date){\r\n this.setState({fromDate: date}, () => {\r\n this.fetchWiresList();\r\n });\r\n }\r\n\r\n onToDateChange(date){\r\n this.setState({toDate: date}, () => {\r\n this.fetchWiresList();\r\n });\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n {\r\n this.state.showOverlay && ()\r\n }\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n this.handleOnSearchChange(e)}/>\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\n\r\nconst mapStateToProps = (store) => {\r\n return {\r\n user: store.app.user,\r\n refresh: store.app.refresh,\r\n };\r\n}\r\n\r\nconst mapDispatchToProps = {\r\n \r\n}\r\nexport default connect(mapStateToProps, mapDispatchToProps)(WiresList);\r\n\r\n","import moment from \"moment\";\r\nimport React from \"react\";\r\nimport { formatInCurrency } from \"../../../common/utilities\";\r\n\r\nexport function getFailedPaymentColumns(retryFailedPayment) {\r\n const column = [\r\n {\r\n dataField: \"dueDate\",\r\n text: \"Due Date\",\r\n headerClasses: \"RCM_noWrap\",\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n sortFunc: (a, b, order) => {\r\n try {\r\n if (order === \"asc\") {\r\n return new Date(b) - new Date(a);\r\n }\r\n return new Date(a) - new Date(b); // desc\r\n } catch (err) {\r\n console.error(err);\r\n if (order === \"asc\") {\r\n return b - a;\r\n }\r\n return a - b;\r\n }\r\n },\r\n formatter: (cell, row) => {\r\n return
{cell ? moment(cell).format(\"L\") : \"-\"}
;\r\n },\r\n },\r\n {\r\n dataField: \"legalEntityId\",\r\n text: \"Entity Number\",\r\n headerClasses: \"RCM_noWrap\",\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: \"clientName\",\r\n text: \"Client\",\r\n headerClasses: \"RCM_noWrap\",\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: \"vendorName\",\r\n text: \"Vendor Name\",\r\n headerClasses: \"RCM_noWrap\",\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: \"paymentItems\",\r\n text: \"Amount\",\r\n headerClasses: \"RCM_noWrap\",\r\n headerAlign: \"right\",\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n sortFunc: (a, b, order) => {\r\n if (order === \"asc\") {\r\n return b[0].amount - a[0].amount;\r\n }\r\n return a[0].amount - b[0].amount; // desc\r\n },\r\n formatter: (cell, row) => {\r\n return (\r\n
\r\n {row &&\r\n row.paymentItems &&\r\n Array.isArray(row.paymentItems) &&\r\n row.paymentItems.length > 0\r\n ? formatInCurrency(row.paymentItems[0].amount)\r\n : \"-\"}\r\n
\r\n );\r\n },\r\n },\r\n {\r\n dataField: \"paynmentType\",\r\n text: \"Payment Type\",\r\n headerClasses: \"RCM_noWrap\",\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: \"statusCode\",\r\n text: \"Approval Status\",\r\n headerClasses: \"RCM_noWrap\",\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: \"statusDesc\",\r\n text: \"Description\",\r\n headerClasses: \"RCM_noWrap\",\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: \"nextActions\",\r\n text: \"Action\",\r\n headerClasses: \"RCM_noWrap\",\r\n sort: false,\r\n formatter: (cell, row) => {\r\n return (\r\n
\r\n {cell &&\r\n Array.isArray(cell) &&\r\n cell[0].actionCode &&\r\n cell[0].actionCode !== \"NOUI\" && (\r\n retryFailedPayment(row)}\r\n />\r\n )}\r\n
\r\n );\r\n },\r\n },\r\n ];\r\n\r\n return column;\r\n}\r\nfunction customCaretSort(order, column) {\r\n if (!order) return ;\r\n else if (order === \"asc\")\r\n return ;\r\n else if (order === \"desc\")\r\n return ;\r\n return null;\r\n}\r\n","import axios from 'axios';\r\nimport { MsgForFailedData } from '../../common/constants';\r\nimport { apiBaseUrl, getFailedPaymentListUrl, updateFailedPaymentUrl } from '../serviceConstant';\r\nimport { Get, Post } from '../servicecalls';\r\n\r\nexport var getFailedPaymentsCancellationToken = null;\r\nexport var retryFailedPaymentsCancellationToken = null;\r\n\r\nexport const getFailedPaymentList = () => {\r\n \r\n if (getFailedPaymentsCancellationToken !== null && getFailedPaymentsCancellationToken !== undefined) {\r\n getFailedPaymentsCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getFailedPaymentsCancellationToken = cancelToken.source();\r\n\r\n let getFailedPaymentPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${getFailedPaymentListUrl}?pkid=1`;\r\n Get(url, getFailedPaymentsCancellationToken).then(\r\n failedPaymentRes => {\r\n //console.log(wiresListRes);\r\n if(failedPaymentRes.data ){\r\n resolve(failedPaymentRes.data);\r\n }else{\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Fetching failed payment data\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getFailedPaymentPromise;\r\n\r\n\r\n}\r\n\r\n\r\nexport const updateFailedPayment = (row) => {\r\n if (retryFailedPaymentsCancellationToken !== null && retryFailedPaymentsCancellationToken !== undefined) {\r\n retryFailedPaymentsCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n retryFailedPaymentsCancellationToken = cancelToken.source();\r\n\r\n let retryFailedPaymentPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${updateFailedPaymentUrl}?action=${row && row.nextActions && Array.isArray(row.nextActions) && row.nextActions.length > 0 && row.nextActions[0].actionCode ? row.nextActions[0].actionCode : ''}`;\r\n const data = {\r\n clientId: row && row.clientId ? row.clientId : undefined,\r\n id: row && row.id ? row.id : undefined,\r\n StatusCode: row && row.statusCode ? row.statusCode : undefined,\r\n StatusDesc: row && row.statusDesc ? row.statusDesc : undefined,\r\n Processor: row && row.processor ? row.processor : undefined,\r\n ConfirmationType: row && row.confirmationType ? row.confirmationType : undefined,\r\n ConfirmationId: row && row.confirmationId ? row.confirmationId : undefined,\r\n CreatedOn: row && row.createdOn ? row.createdOn : undefined,\r\n UpdatedOn: row && row.updatedOn ? row.updatedOn : undefined,\r\n NextActions: row && row.nextActions && Array.isArray(row.nextActions) ? \r\n row.nextActions.map(action => {\r\n return {\r\n StatusCode: action && action.statusCode ? action.statusCode : undefined,\r\n StatusName: action && action.statusName ? action.statusName : undefined,\r\n ActionCode: action && action.actionCode ? action.actionCode : undefined,\r\n ActionName: action && action.actionName ? action.actionName : undefined \r\n }\r\n })\r\n : undefined\r\n }\r\n Post(url, data ,retryFailedPaymentsCancellationToken).then(\r\n updatePaymentRes => {\r\n //console.log(wiresListRes);\r\n if(updatePaymentRes.data ){\r\n resolve(updatePaymentRes.data);\r\n }else{\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Updating failed payment data\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return retryFailedPaymentPromise;\r\n\r\n}","import React, { useEffect } from \"react\";\r\nimport BootstrapTable from \"react-bootstrap-table-next\";\r\nimport { getFailedPaymentColumns } from \"./failedpaymentColumns\";\r\nimport { MsgForNoData } from \"../../../common/constants\";\r\nimport {\r\n getFailedPaymentList,\r\n updateFailedPayment,\r\n} from \"../../../services/adminServices/failedPaymentService\";\r\nimport { useState } from \"react\";\r\nimport { message } from \"antd\";\r\nimport { useCallback } from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { Spinner } from \"reactstrap\";\r\nimport moment from \"moment\";\r\n\r\nconst filterPaymentByText = (payments, text) => {\r\n let filtered = []\r\n if(payments && text && Array.isArray(payments)) {\r\n const lowerCaseText = text.toLowerCase();\r\n filtered = payments.filter(p => {\r\n if((p.clientName && p.clientName.toLowerCase().includes(lowerCaseText))\r\n || (p.legalEntityId && p.legalEntityId.toLowerCase().includes(lowerCaseText))\r\n || (p.vendorName && p.vendorName.toLowerCase().includes(lowerCaseText))\r\n || (p.vendorName && p.vendorName.toLowerCase().includes(lowerCaseText))\r\n || (p.statusCode && p.statusCode.toLowerCase().includes(lowerCaseText))\r\n || (p.statusDesc && p.statusDesc.toLowerCase().includes(lowerCaseText))\r\n || (p.paymentItems && Array.isArray(p.paymentItems) && p.paymentItems.length > 0 && p.paymentItems[0] && p.paymentItems[0].amount && p.paymentItems[0].amount.toString().includes(text))\r\n || (p.dueDate && moment(p.dueDate).format(\"L\").includes(text))\r\n )\r\n {\r\n return true;\r\n } else {\r\n return false \r\n }\r\n })\r\n }\r\n return filtered;\r\n}\r\n\r\nconst FailedPayments = () => {\r\n const [searchtext, setSearchText] = useState();\r\n const [failedPayments, setFailedPayments] = useState();\r\n const [filteredPayments, setFilteredPayments] = useState();\r\n const refresh = useSelector((store) => store.app.refresh);\r\n const [isLoading, setIsLoading] = useState(true);\r\n\r\n useEffect(() => {\r\n //call api and update the failedPayment\r\n setIsLoading(true);\r\n getFailedPaymentList()\r\n .then((res) => {\r\n if (res && Array.isArray(res)) {\r\n setFailedPayments(res);\r\n setFilteredPayments(searchtext ? filterPaymentByText(res, searchtext) : res)\r\n setIsLoading(false);\r\n }\r\n })\r\n .catch((err) => {\r\n setIsLoading(false);\r\n console.error(\"Error While fetching failed payments\", err);\r\n message.error(\"Unable to fetch failed payments\");\r\n });\r\n }, [refresh]);\r\n\r\n const retryFailedPayment = useCallback((row) => {\r\n updateFailedPayment(row)\r\n .then(() => {\r\n getFailedPaymentList()\r\n .then((response) => {\r\n if (response && Array.isArray(response)) {\r\n setFailedPayments(response);\r\n setFilteredPayments(searchtext ? filterPaymentByText(response, searchtext) : response)\r\n message.success(\"Payment Updated\");\r\n }\r\n })\r\n .catch((err) => {\r\n console.error(\"Error While fetching failed payments\", err);\r\n message.error(\r\n \"Failed Payment updated but unable to fetch failed payments information\"\r\n );\r\n });\r\n })\r\n .catch((err) => {\r\n console.error(\"Error while updating failed payment\", err);\r\n message.error(\"Unable to update failed payment\");\r\n });\r\n }, []);\r\n\r\n const handleOnSearchTextChange = (event) => {\r\n const _searchText = event && event.target ? event.target.value : undefined\r\n setSearchText(_searchText)\r\n setFilteredPayments(_searchText ? filterPaymentByText(failedPayments, _searchText) : failedPayments)\r\n }\r\n\r\n\r\n if (isLoading) {\r\n return (\r\n
\r\n Loading Payments For Action \r\n
\r\n );\r\n }\r\n\r\n return (\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default React.memo(FailedPayments);\r\n","import React from 'react';\r\nimport { Menu, Dropdown } from 'antd';\r\nimport {store} from '../../index'\r\n\r\nconst { SubMenu } = Menu;\r\n\r\n\r\nfunction openWindow(_url, matrixItem) {\r\n let url = _url;\r\n if(matrixItem){\r\n url = _url.replace('[$cmp$]', matrixItem.dynamicsLegalEntity)\r\n }\r\n window.open(url, 'menuwindow', 'toolbar=0,location=0,menubar=0,width=' + window.screen.availWidth + \",height=\" + window.screen.availHeight);\r\n}\r\n\r\nfunction formatMenuItems(items, matrixItem) {\r\n return (\r\n \r\n \r\n \r\n openWindow(store.getState().app.env.REACT_APP_DYNAMICS_ACCOUNTING_URL)}>Accounting 365\r\n {\r\n matrixItem && matrixItem.dynamicsLegalEntity &&\r\n items.map(item => {\r\n return openWindow(item.url, matrixItem)}>{item.feature}\r\n })\r\n }\r\n \r\n \r\n Marketing Material\r\n openWindow(store.getState().app.env.REACT_APP_REPORTING_URL)}>Reporting\r\n Trading\r\n \r\n );\r\n}\r\n\r\n export function ContextualMenu({items, matrixItem}) {\r\n return (\r\n \r\n formatMenuItems(items, matrixItem)}>\r\n e.preventDefault()}>\r\n ...\r\n \r\n \r\n
\r\n );\r\n }\r\n\r\n\r\nexport function getDashBoardViewGridColumn(viewInvoice, uploadInvoice, goToVendors, goToPayments, openInboxWindow, goToSubAccounts, contextualMenu){\r\n const column = [\r\n {\r\n dataField: '',\r\n text: '',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: false,\r\n formatter: (cell, row) => {\r\n return \r\n }\r\n },\r\n {\r\n dataField: 'name',\r\n text: 'Client Name',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n if (row.deeplinkInbox)\r\n return (
openInboxWindow(row.deeplinkInbox, row.ssOlinkInbox)} className=\"RCM_icon_hand RCM_Table_link\">\r\n {cell}\r\n
);\r\n else\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: 'inboxCnt',\r\n text: 'Inbox',\r\n headerClasses: 'RCM_noWrap',\r\n //classes: 'RCM_common_table_column_text RCM_common_table_column_text_right',\r\n classes: 'RCM_common_table_column_number',\r\n headerAlign: 'right',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n if (row.deeplinkInbox)\r\n return (
openInboxWindow(row.deeplinkInbox, row.ssOlinkInbox)} className=\"RCM_icon_hand\">\r\n {cell}\r\n
);\r\n else\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: 'pendingApprovalCnt',\r\n text: 'Approvals',\r\n headerClasses: 'RCM_noWrap',\r\n classes: 'RCM_common_table_column_number',\r\n headerAlign: 'right',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n if (row.deeplinkBill)\r\n return (
openInboxWindow(row.deeplinkBill, row.ssOlinkBill)} className=\"RCM_icon_hand\">\r\n {cell}\r\n
);\r\n else\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: 'pendingPayCnt',\r\n text: 'Payments',\r\n headerClasses: 'RCM_noWrap',\r\n classes: 'RCM_common_table_column_number ',\r\n headerAlign: 'right',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n if (row.noOfPaymentsFailed > 0)\r\n {\r\n if(row.deeplinkPay){\r\n return(
openInboxWindow(row.deeplinkPay, row.ssOlinkPay)} className=\"RCM_icon_hand\">{cell}\r\n goToPayments(row)}> {row.noOfPaymentsFailed} Failed\r\n
);\r\n }else{\r\n return (\r\n
{cell} goToPayments(row)}> {row.noOfPaymentsFailed} Failed
\r\n );\r\n }\r\n } \r\n else{\r\n if(row.deeplinkPay){\r\n return(
openInboxWindow(row.deeplinkPay, row.ssOlinkPay)} className=\"RCM_icon_hand\">{cell}
);\r\n }else{\r\n return
{cell}
;\r\n }\r\n }\r\n \r\n },\r\n },\r\n {\r\n dataField: 'scheduledPayCnt',\r\n text: 'Schedule Payment',\r\n headerClasses: 'RCM_noWrap',\r\n classes: 'RCM_common_table_column_number',\r\n headerAlign: 'right',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n if (row.deeplinkBill)\r\n return (
openInboxWindow(row.deeplinkBill, row.ssOlinkBill)} className=\"RCM_icon_hand\">\r\n {cell}\r\n
);\r\n else\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: 'partialPayCnt',\r\n text: 'Payment Due Soon',\r\n headerClasses: 'RCM_noWrap',\r\n classes: 'RCM_common_table_column_number',\r\n headerAlign: 'right',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n if (row.deeplinkBill)\r\n return (
openInboxWindow(row.deeplinkBill, row.ssOlinkBill)} className=\"RCM_icon_hand\">\r\n {cell}\r\n
);\r\n else\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: '',\r\n text: '',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'right',\r\n formatter: (cell, row) => {\r\n return(
\r\n \r\n \r\n {/**/}\r\n
);\r\n }\r\n }\r\n ]\r\n\r\n return column;\r\n}\r\nfunction customCaretSort(order, column) {\r\n if (!order) return ();\r\n else if (order === 'asc') return ();\r\n else if (order === 'desc') return ();\r\n return null;\r\n}\r\n\r\n","import React from 'react';\r\n\r\nexport function getPaymentsColumn(retryPayment) {\r\n const column = [\r\n\r\n {\r\n dataField: 'vendorName',\r\n text: 'Vendor Name',\r\n headerClasses: 'RCM_noWrap RCM_clientName_col',\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: 'paymentNumber',\r\n text: 'Payment #',\r\n headerClasses: 'RCM_noWrap',\r\n classes: 'RCM_common_table_column_number',\r\n headerAlign: 'right',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: 'paymentType',\r\n text: 'Payment Type',\r\n headerClasses: 'RCM_noWrap',\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: 'paymentStatus',\r\n text: 'Status',\r\n headerClasses: 'RCM_noWrap',\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n if (cell === \"success\")\r\n return
Success
;\r\n else\r\n return
Failed
;\r\n },\r\n },\r\n {\r\n dataField: '',\r\n text: '',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'right',\r\n classes: 'RCM_manage_groups_delete_col',\r\n formatter: (cell, row) => {\r\n if (row.paymentStatus === \"success\")\r\n return
\r\n else\r\n return ;\r\n },\r\n events: {\r\n // onClick: this.openConfirmationPopup\r\n }\r\n }\r\n ]\r\n\r\n return column;\r\n}\r\nfunction customCaretSort(order, column) {\r\n if (!order) return ();\r\n else if (order === 'asc') return ();\r\n else if (order === 'desc') return ();\r\n return null;\r\n}\r\nexport default getPaymentsColumn;","import React from 'react';\r\nimport BootstrapTable from 'react-bootstrap-table-next';\r\nimport { Form, FormGroup } from \"reactstrap\";\r\nimport { MsgForNoData } from '../../common/constants';\r\nimport { getPaymentsColumn } from './paymentsColumn.js';\r\n\r\nexport function PaymentsView(\r\n props\r\n) {\r\n let paymentsView = (\r\n
\r\n\r\n
\r\n
\r\n
\r\n Payments\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n {props && props.state ?\r\n
\r\n \r\n
\r\n :
{MsgForNoData}
\r\n }\r\n\r\n
\r\n\r\n\r\n
\r\n )\r\n return paymentsView\r\n}","import React, { Component } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { PaymentsView } from './paymentsView.jsx';\r\n\r\nexport class Payments extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.retryPayment = this.retryPayment.bind(this);\r\n this.search = this.search.bind(this);\r\n\r\n this.state = {\r\n openUploadInvoice: false,\r\n openVendors: false,\r\n activeClient: {},\r\n paymentsList: [],\r\n originalPaymentsList: [],\r\n searchText: ''\r\n };\r\n }\r\n componentDidMount = () => {\r\n this.setState({\r\n paymentsList: this.props.state.activeClient.payments, originalPaymentsList: this.props.state.activeClient.payments\r\n });\r\n }\r\n search = (evt) => {\r\n let searchString = evt.target.value;\r\n var updatedPaymentsList = [...this.state.originalPaymentsList];\r\n updatedPaymentsList = updatedPaymentsList.filter(function (item) {\r\n return item.vendorName.toLowerCase().search(\r\n searchString.toLowerCase()) !== -1;\r\n });\r\n this.setState({ paymentsList: updatedPaymentsList, searchText: searchString });\r\n }\r\n retryPayment = (rows) => {\r\n alert(\"in Retry Payment method\");\r\n }\r\n render() {\r\n return (\r\n \r\n );\r\n }\r\n\r\n}\r\nconst mapStateToProps = (store) => {\r\n return {\r\n };\r\n}\r\n\r\nconst mapDispatchToProps = {\r\n\r\n}\r\nexport default connect(mapStateToProps, mapDispatchToProps)(Payments);\r\n\r\n","import React from 'react';\r\nimport { getPreferenceValue } from '../../common/utilities.js';\r\nexport function getSubAccountsGridColumn(editSubAccount, add, handleTransactions, features){\r\n const column = [\r\n\r\n {\r\n dataField: 'shortName',\r\n text: 'Number',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: 'name',\r\n text: 'Name',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: '',\r\n text: '',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'right',\r\n headerClasses: 'RCM_noWrap',\r\n headerFormatter: (cell, row) => {\r\n return (
add()} >+ Add New
)\r\n },\r\n formatter: (cell, row) => {\r\n return(
\r\n \r\n {row.isAggregated === 'Y' && row.accountKey !== null && row.accountKey !== undefined && row.accountKey !== '' && getPreferenceValue(features, \"ADMVIEWTRANSACTIONS\") === \"Y\" ? : ''}\r\n
\r\n );\r\n }\r\n }\r\n ]\r\n\r\n return column;\r\n}\r\nfunction customCaretSort(order, column) {\r\n if (!order) return ();\r\n else if (order === 'asc') return ();\r\n else if (order === 'desc') return ();\r\n return null;\r\n}\r\n\r\n","import { LogLevel, Logger } from 'msal';\r\nimport { store } from '..';\r\n\r\nexport const authConfiguration = () => {\r\n let config = {\r\n auth: {\r\n clientId: store.getState().app.env.REACT_APP_AZURE_CLIENTID,\r\n authority: store.getState().app.env.REACT_APP_AZURE_AUTHORITY,\r\n redirectUri: window.location.origin,\r\n postLogoutRedirectUri: window.location.origin\r\n },\r\n cache: {\r\n cacheLocation: \"localStorage\",\r\n storeAuthStateInCookie: true\r\n },\r\n system: {\r\n logger : logger(),\r\n loadFrameTimeout: 60000\r\n }\r\n }\r\n\r\n return config;\r\n\r\n}\r\n\r\nconst logger = () => {\r\n return new Logger(\r\n loggerCallback,\r\n {\r\n correlationId: 'MSAL_LOGGING', \r\n level: LogLevel.Verbose, \r\n piiLoggingEnabled: true\r\n });\r\n}\r\n\r\nconst loggerCallback = (logLevel, message, containsPii) => {\r\n console.log(`MSAL: [${logLevel} ${message}`);\r\n}\r\n\r\nexport const apiTokenScope = () => {\r\n return {\r\n scopes: [store.getState().app.env.REACT_APP_AZURE_APISCOPE]\r\n }\r\n}\r\n\r\n\r\nexport const isTokenRefreshRequired = (intervalTime, token) => {\r\n let isRefreshRequired = false;\r\n let parsedToken = decodeJwtToken(token);\r\n if (parsedToken !== null) {\r\n let issuedTime = getNestedObject(parsedToken, ['iat']);\r\n let expirationTime = getNestedObject(parsedToken, ['exp']);\r\n let currentTime = new Date().valueOf() / 1000;\r\n console.log(`Issued Time:: ${issuedTime} Expiration Time:: ${expirationTime} Current Time:: ${currentTime}`);\r\n\r\n if (expirationTime <= currentTime + intervalTime / 1000) {\r\n isRefreshRequired = true;\r\n }\r\n }\r\n\r\n return isRefreshRequired;\r\n}\r\n\r\nexport function decodeJwtToken (token) {\r\n let response = null;\r\n try{\r\n var base64Url = token.split('.')[1];\r\n var base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/');\r\n var jsonPayload = decodeURIComponent(atob(base64).split('').map(function(c) {\r\n return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);\r\n }).join(''));\r\n\r\n response = JSON.parse(jsonPayload);\r\n }\r\n catch(exception)\r\n {\r\n //\r\n }\r\n return response;\r\n}\r\n\r\n\r\nexport function getNestedObject(nestedObj, pathArr) {\r\n\r\n if(nestedObj !== null && nestedObj !== undefined \r\n && pathArr !== null && pathArr !== undefined && Array.isArray(pathArr)){\r\n return pathArr.reduce((obj, key) =>\r\n (obj && obj[key] !== undefined && obj[key] !== null ) ? obj[key] : \"\", nestedObj);\r\n }\r\n}\r\n","import React from 'react';\r\nimport { Modal, ModalHeader, ModalBody } from 'reactstrap';\r\nimport RCMNinthWaveWidget, {ThemeType, AccountSelectionMode} from 'rcmninthwavewidget'\r\nimport { useSelector } from 'react-redux';\r\nconst NinthWavePopup = ({ openNinthwaveModelPopup, toggleNinthwaveModelPopup}) => {\r\n\r\n const {token} = useSelector(store => store.app)\r\n const {REACT_APP_API_BASEURL, REACT_APP_NW_DbUrl, APPINSIGHTS_INSTRUMENTATIONKEY} = useSelector(store => store.app.env)\r\n const {userName, name} = useSelector(store => store.app.user)\r\n const splittedName = name ? name.split(',') : []\r\n const firstName = splittedName[0] ? splittedName[0]: ''\r\n const lastName = splittedName[1] ? splittedName[1] : ''\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n}\r\nexport default NinthWavePopup;","import React, { Component } from 'react';\r\nimport { MessageType, MessageClass } from './constants'\r\nclass Messages extends Component {\r\n render() {\r\n return (\r\n 0) ? this.props.containerClass : \"\"}>\r\n {\r\n this.props.messages && this.props.messages.map((msg, index) =>\r\n
\r\n {\r\n msg.class === MessageClass.ERROR\r\n ?
\r\n < div className=\"RCM_error_img\" >
\r\n
{msg.text}
\r\n
\r\n : \"\"\r\n }\r\n {\r\n msg.class === MessageClass.SUCCESS\r\n ?
\r\n
{msg.text}
\r\n
\r\n : \"\"\r\n }\r\n {\r\n msg.class === MessageClass.INFO\r\n ?
\r\n
{msg.text}
\r\n
\r\n : \"\"\r\n }\r\n {\r\n msg.class === MessageClass.WARNING\r\n ?
\r\n
Warning! {msg.text}
\r\n
\r\n : \"\"\r\n }\r\n {\r\n msg.class === MessageClass.LABEL\r\n ?
\r\n
{msg.text}
\r\n
\r\n : \"\"\r\n }\r\n {\r\n msg.class === MessageClass.PREFERENCE_WARNING\r\n ?
\r\n
Account having ⚠ sign is not updated
\r\n
\r\n : \"\"\r\n \r\n }\r\n \r\n )\r\n }\r\n \r\n )\r\n }\r\n}\r\nexport default Messages\r\n","import React, { useState, useEffect } from 'react';\r\nimport { Form, FormGroup, Label, DropdownToggle, DropdownMenu, Dropdown, DropdownItem } from \"reactstrap\";\r\nimport NinthWavePopup from './ninthWavePopup';\r\nimport Messages from '../../common/messages.jsx';\r\nconst SubAccountsAddEdit = ({ showNinthWaveWidget, mode, handleFormChanges, activeAccount, isLinkAccountDisabled, openConfirmationPopup,\r\n handleDropdownChange, cancel, save, openNinthwaveModelPopup, toggleNinthwaveModelPopup, categoryLevel1Type, categoryLevel2Type,\r\n getBankName, bankRoutingNumberErrorMsg }) => {\r\n\r\n\r\n const [isCategoryLevel1Open, setIsCategoryLevel1Open] = useState(false);\r\n const [isCategoryLevel2Open, setIsCategoryLevel2Open] = useState(false);\r\n\r\n return (\r\n <>\r\n {\r\n mode ?
\r\n
\r\n {\r\n mode === \"edit\"\r\n ?\r\n
\r\n Edit Account - {activeAccount.shortName}\r\n
\r\n :\r\n
\r\n Add New Sub Account\r\n
\r\n }\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n handleFormChanges(evt)}\r\n disabled={mode === \"edit\"}\r\n />\r\n \r\n
\r\n
\r\n \r\n \r\n handleFormChanges(evt)}\r\n \r\n />\r\n \r\n
\r\n
\r\n {/*\r\n \r\n handleFormChanges(evt)}\r\n />\r\n */}\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n setIsCategoryLevel1Open(prevIsCategoryLevel1Open => !prevIsCategoryLevel1Open)}\r\n className=\"RCM_form_control RCM_select_box RCM_mm_select_box\">\r\n {activeAccount.categoryCode1}\r\n \r\n {\r\n
\r\n {categoryLevel1Type && categoryLevel1Type !== null && categoryLevel1Type.map((item, index) =>\r\n handleDropdownChange(item, 'categorylevel1')}>\r\n
{item.name}
\r\n
\r\n )}\r\n
\r\n }\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n setIsCategoryLevel2Open(prevIsCategoryLevel2Open => !prevIsCategoryLevel2Open)}\r\n className=\"RCM_form_control RCM_select_box RCM_mm_select_box\">\r\n {activeAccount.categoryCode2}\r\n \r\n {\r\n
\r\n {categoryLevel2Type && categoryLevel2Type !== null && categoryLevel2Type.map((item, index) =>\r\n handleDropdownChange(item, 'categorylevel2')}>\r\n
{item.name}
\r\n
\r\n )}\r\n
\r\n }\r\n
\r\n
\r\n
\r\n
\r\n\r\n {showNinthWaveWidget\r\n ? <>\r\n\r\n
\r\n {activeAccount.isAggregated === null || activeAccount.isAggregated !== 'Y'\r\n ? isLinkAccountDisabled\r\n ? \r\n : \r\n : \r\n \r\n }\r\n \r\n \r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n handleFormChanges(evt)}\r\n onBlur={evt => getBankName(evt)}\r\n disabled={activeAccount.isAggregated === 'Y'}\r\n />\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n handleFormChanges(evt)}\r\n disabled={activeAccount.isAggregated === 'Y' || activeAccount.bankRoutingNumber !== ''}\r\n />\r\n \r\n
\r\n
\r\n \r\n \r\n handleFormChanges(evt)}\r\n disabled={activeAccount.isAggregated === 'Y'}\r\n />\r\n \r\n
\r\n
\r\n {\r\n (bankRoutingNumberErrorMsg !== '')\r\n && \r\n }\r\n
\r\n\r\n \r\n : ''\r\n\r\n }\r\n
\r\n\r\n
\r\n
\r\n  \r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n :\r\n
\r\n
\r\n Please select an account\r\n
\r\n
\r\n\r\n }\r\n \r\n )\r\n}\r\nexport default SubAccountsAddEdit;","\r\nimport axios from 'axios';\r\nimport {\r\n fetchSubAccountCategoriesUrl, getSubAccountListUrl, apiBaseUrl, addEditSubAccountUrl, linkSubAccountUrl, unlinkSubAccountUrl, validateABAUrl,\r\n getVendorListUrl, addEditVendorUrl, addRuleUrl, updateRuleUrl, getRuleListUrl, getInstitutionListUrl, getAccountSubaccountListUrl,\r\n getMainAccountListUrl, getTransactionListUrl, getTransactionsSourceDataUrl, getTransactionsAccountingDataUrl\r\n} from '../serviceConstant';\r\nimport { Get, Post } from '../servicecalls';\r\nimport { MsgForFailedData } from '../../common/constants';\r\n\r\nexport var fetchSubAcctCategoriesCancellationToken = null;\r\n\r\nexport const fetchSubAccountCategories= () => {\r\n \r\n if (fetchSubAcctCategoriesCancellationToken !== null && fetchSubAcctCategoriesCancellationToken !== undefined) {\r\n fetchSubAcctCategoriesCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n fetchSubAcctCategoriesCancellationToken = cancelToken.source();\r\n\r\n let getUsersListPromise = new Promise(function (resolve, reject) {\r\n let url = `${fetchSubAccountCategoriesUrl}`;\r\n Get(url,'', fetchSubAcctCategoriesCancellationToken).then(\r\n catResponse => {\r\n //console.log(wiresListRes);\r\n if(catResponse.data ){\r\n resolve(catResponse.data);\r\n }else{\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Fetching sub account categories data\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getUsersListPromise;\r\n\r\n\r\n}\r\n\r\nexport var getSubAccountListServiceCancellationToken = null;\r\n\r\nexport const getSubAccountListService = (pkid) => {\r\n\r\n if (getSubAccountListServiceCancellationToken !== null && getSubAccountListServiceCancellationToken !== undefined) {\r\n getSubAccountListServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getSubAccountListServiceCancellationToken = cancelToken.source();\r\n\r\n let getSubAccountListPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${getSubAccountListUrl}?orgId=${pkid}`;\r\n //let url = `${getSubAccountListUrl}` + '?orgId=' + orgId;\r\n Post(url, getSubAccountListServiceCancellationToken).then(\r\n catResponse => {\r\n if (catResponse.data) {\r\n resolve(catResponse.data);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Fetching sub account list.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getSubAccountListPromise;\r\n\r\n\r\n}\r\n\r\nexport var addEditSubAccountServiceCancellationToken = null;\r\n\r\nexport const addEditSubAccountService = (account) => {\r\n\r\n if (addEditSubAccountServiceCancellationToken !== null && addEditSubAccountServiceCancellationToken !== undefined) {\r\n addEditSubAccountServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n addEditSubAccountServiceCancellationToken = cancelToken.source();\r\n\r\n let addEditSubAccountPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${addEditSubAccountUrl}`;\r\n //let url = `${getSubAccountListUrl}` + '?orgId=' + orgId;\r\n Post(url, account, addEditSubAccountServiceCancellationToken).then(\r\n catResponse => {\r\n if (catResponse.data) {\r\n resolve(catResponse.data);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While adding sub account list.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return addEditSubAccountPromise;\r\n\r\n\r\n}\r\nexport var linkSubAccountServiceCancellationToken = null;\r\n\r\nexport const linkSubAccountService = (accountsListsJson) => {\r\n\r\n if (linkSubAccountServiceCancellationToken !== null && linkSubAccountServiceCancellationToken !== undefined) {\r\n linkSubAccountServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n linkSubAccountServiceCancellationToken = cancelToken.source();\r\n\r\n let linkSubAccountPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${linkSubAccountUrl}`;\r\n \r\n Post(url, accountsListsJson, linkSubAccountServiceCancellationToken).then(\r\n response => {\r\n if (response.data) {\r\n resolve(response.data);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While adding sub account list.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return linkSubAccountPromise;\r\n\r\n\r\n}\r\n\r\nexport var unlinkSubAccountServiceCancellationToken = null;\r\n\r\nexport const unlinkSubAccountService = (deleteAccount) => {\r\n\r\n if (unlinkSubAccountServiceCancellationToken !== null && unlinkSubAccountServiceCancellationToken !== undefined) {\r\n unlinkSubAccountServiceCancellationToken.cancel(\"Cancel existing get aggregated account request to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n unlinkSubAccountServiceCancellationToken = cancelToken.source();\r\n\r\n let deleteExternalAccountPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${unlinkSubAccountUrl}`;\r\n \r\n Post(url, deleteAccount, unlinkSubAccountServiceCancellationToken).then(data => {\r\n resolve(data);\r\n })\r\n .catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While adding sub account list.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n return deleteExternalAccountPromise;\r\n}\r\n\r\nexport var validateABACancellationToken = null;\r\n\r\nexport const validateABA = (abaNumber) => {\r\n\r\n if (validateABACancellationToken !== null && validateABACancellationToken !== undefined) {\r\n validateABACancellationToken.cancel(\"Cancel existing validate ABA request to revent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n validateABACancellationToken = cancelToken.source();\r\n\r\n let validateABAPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = apiBaseUrl() + \"/\" + validateABAUrl.replace(/ABANumber/g, abaNumber);\r\n let errorMsg = \"Not able to validate ABA Number\";\r\n Get(url, validateABACancellationToken).then(res => {\r\n // get the response in case of successful call.\r\n \r\n if (res.data !== null\r\n && res.data != undefined\r\n && res.data.value !== null\r\n && res.data.value !== undefined\r\n && Array.isArray(res.data.value)\r\n && res.data.value.length > 0) {\r\n let abaResponse = res.data.value[0];\r\n if (abaResponse.status !== null\r\n && abaResponse.status !== undefined\r\n && abaResponse.status.Code !== null\r\n && abaResponse.status.Code !== undefined\r\n && abaResponse.status.Code === \"000000\") {\r\n resolve(res.data.value[0]);\r\n } else {\r\n reject(errorMsg);\r\n }\r\n\r\n } else {\r\n console.log(\"Sub Account : Validate ABA :: \" + errorMsg);\r\n reject(errorMsg);\r\n }\r\n\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel()) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure.\r\n console.error(\"Sub Account : Validate ABA :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n\r\n });\r\n return validateABAPromise;\r\n};\r\n\r\nexport var getVendorListServiceCancellationToken = null;\r\n\r\nexport const getVendorListService = (entityId) => {\r\n\r\n if (getVendorListServiceCancellationToken !== null && getVendorListServiceCancellationToken !== undefined) {\r\n getVendorListServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getVendorListServiceCancellationToken = cancelToken.source();\r\n\r\n let getVendorListPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${getVendorListUrl}${entityId}`;\r\n \r\n Get(url, getVendorListServiceCancellationToken).then(\r\n response => {\r\n if (response) {\r\n resolve(response);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Fetching vendor list.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getVendorListPromise;\r\n\r\n\r\n}\r\n\r\nexport var addEditVendorServiceCancellationToken = null;\r\n\r\nexport const addEditVendorService = (reqPayload) => {\r\n\r\n if (addEditVendorServiceCancellationToken !== null && addEditVendorServiceCancellationToken !== undefined) {\r\n addEditVendorServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n addEditVendorServiceCancellationToken = cancelToken.source();\r\n\r\n let addEditVendorPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${addEditVendorUrl}`;\r\n \r\n Post(url, reqPayload, addEditVendorServiceCancellationToken).then(\r\n response => {\r\n if (response.data) {\r\n resolve(response.data);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While adding Vendor.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return addEditVendorPromise;\r\n\r\n\r\n}\r\n\r\nexport var getRuleServiceCancellationToken = null;\r\n\r\nexport const getRuleListService = (clientId) => {\r\n\r\n if (getRuleServiceCancellationToken !== null && getRuleServiceCancellationToken !== undefined) {\r\n getRuleServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getRuleServiceCancellationToken = cancelToken.source();\r\n\r\n let getRuleListPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${getRuleListUrl}?clientid=${clientId}`;\r\n\r\n Get(url, getRuleServiceCancellationToken).then(\r\n response => {\r\n if (response) {\r\n resolve(response);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Fetching rule list.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getRuleListPromise;\r\n\r\n\r\n}\r\n\r\nexport var addEditRuleServiceCancellationToken = null;\r\n\r\nexport const addEditRuleService = (reqPayload, mode) => {\r\n\r\n if (addEditRuleServiceCancellationToken !== null && addEditRuleServiceCancellationToken !== undefined) {\r\n addEditRuleServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n addEditRuleServiceCancellationToken = cancelToken.source();\r\n\r\n let addEditRulePromise = new Promise(function (resolve, reject) {\r\n let serviceUrl = (mode === 'add') ? addRuleUrl : updateRuleUrl;\r\n \r\n let url = `${apiBaseUrl()}/${serviceUrl}`;\r\n\r\n Post(url, reqPayload, addEditRuleServiceCancellationToken).then(\r\n response => {\r\n if (response.data) {\r\n resolve(response.data);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While adding Rule.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return addEditRulePromise;\r\n\r\n\r\n}\r\n\r\nexport var getInstitutionServiceCancellationToken = null;\r\n\r\nexport const getInstitutionService = (clientId) => {\r\n\r\n if (getInstitutionServiceCancellationToken !== null && getInstitutionServiceCancellationToken !== undefined) {\r\n getInstitutionServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getInstitutionServiceCancellationToken = cancelToken.source();\r\n\r\n let getInstitutionListPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${getInstitutionListUrl}clientid=${clientId}`;\r\n\r\n Get(url, getInstitutionServiceCancellationToken).then(\r\n response => {\r\n if (response) {\r\n resolve(response);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Fetching institution list.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getInstitutionListPromise;\r\n\r\n\r\n}\r\n\r\n//export var getInstitutionServiceCancellationToken = null;\r\n\r\n//export const getInstitutionService = (clientOrgId) => {\r\n\r\n// if (getInstitutionServiceCancellationToken !== null && getInstitutionServiceCancellationToken !== undefined) {\r\n// getInstitutionServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n// }\r\n\r\n// //Create a new cancellation token\r\n// const cancelToken = axios.CancelToken;\r\n// getInstitutionServiceCancellationToken = cancelToken.source();\r\n\r\n// let getInstitutionListPromise = new Promise(function (resolve, reject) {\r\n// let url = `${apiBaseUrl()}/${getInstitutionListUrl}`;\r\n\r\n// Get(url, getInstitutionServiceCancellationToken).then(\r\n// response => {\r\n// if (response) {\r\n// resolve(response);\r\n// } else {\r\n// reject(MsgForFailedData);\r\n// }\r\n// }\r\n// ).catch(err => {\r\n// if (axios.isCancel(err)) {\r\n// console.log(err);\r\n// } else {\r\n// console.log(\"Error Occured While Fetching institution list.\", err);\r\n// reject(err);\r\n// }\r\n// })\r\n// });\r\n\r\n\r\n// return getInstitutionListPromise;\r\n\r\n\r\n//}\r\n\r\nexport var getAccountSubaccountServiceCancellationToken = null;\r\n\r\nexport const getAccountSubaccountService = (clientId) => {\r\n\r\n if (getAccountSubaccountServiceCancellationToken !== null && getAccountSubaccountServiceCancellationToken !== undefined) {\r\n getAccountSubaccountServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getAccountSubaccountServiceCancellationToken = cancelToken.source();\r\n\r\n let getAccountSubaccountListPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${getAccountSubaccountListUrl}?clientid=${clientId}`;\r\n\r\n Get(url, getAccountSubaccountServiceCancellationToken).then(\r\n response => {\r\n if (response) {\r\n resolve(response);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Fetching Subaccount list.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getAccountSubaccountListPromise;\r\n}\r\n\r\nexport var getMainAccountServiceCancellationToken = null;\r\n\r\nexport const getMainAccountService = () => {\r\n\r\n if (getMainAccountServiceCancellationToken !== null && getMainAccountServiceCancellationToken !== undefined) {\r\n getMainAccountServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getMainAccountServiceCancellationToken = cancelToken.source();\r\n\r\n let getMainAccountListPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${getMainAccountListUrl}`;\r\n\r\n Get(url, getMainAccountServiceCancellationToken).then(\r\n response => {\r\n if (response) {\r\n resolve(response);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Fetching main account list.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getMainAccountListPromise;\r\n\r\n}\r\n\r\nexport var getTransactionListServiceCancellationToken = null;\r\n\r\nexport const getTransactionListService = () => {\r\n\r\n if (getTransactionListServiceCancellationToken !== null && getTransactionListServiceCancellationToken !== undefined) {\r\n getTransactionListServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getTransactionListServiceCancellationToken = cancelToken.source();\r\n\r\n let getTransactionListPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${getTransactionListUrl}`;\r\n\r\n Get(url, getTransactionListServiceCancellationToken).then(\r\n response => {\r\n if (response) {\r\n resolve(response);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Fetching transaction list.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getTransactionListPromise;\r\n\r\n} \r\n\r\nexport var getTransactionsSourceDataServiceCancellationToken = null;\r\n\r\nexport const getTransactionsSourceDataService = (Account) => {\r\n\r\n if (getTransactionsSourceDataServiceCancellationToken !== null && getTransactionsSourceDataServiceCancellationToken !== undefined) {\r\n getTransactionsSourceDataServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getTransactionsSourceDataServiceCancellationToken = cancelToken.source();\r\n\r\n let getTransactionsSourceDataPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${getTransactionsSourceDataUrl}?AccountList=${Account}&DateRange=Last,90`;\r\n //let url = `https://api.dev.rockco.com/activityapi/odata/activitysummary?AccountList=${Account}&DateRange=Last,90`;\r\n Get(url, getTransactionsSourceDataServiceCancellationToken).then(\r\n res => {\r\n if (res.data) {\r\n resolve(res.data);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Fetching Transactions for Source Data.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getTransactionsSourceDataPromise;\r\n\r\n\r\n}\r\n\r\nexport var getTransactionsAccountingDataServiceCancellationToken = null;\r\n\r\nexport const getTransactionsAccountingDataService = (id,subaccount) => {\r\n\r\n if (getTransactionsAccountingDataServiceCancellationToken !== null && getTransactionsAccountingDataServiceCancellationToken !== undefined) {\r\n getTransactionsAccountingDataServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getTransactionsAccountingDataServiceCancellationToken = cancelToken.source();\r\n\r\n let getTransactionsAccountingDataPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${getTransactionsAccountingDataUrl}?id=${id}&subaccount=${subaccount}`;\r\n //let url = `https://api.dev.rockco.com/trustapi/api/Transactions/GetProcessedTransactions?id=test&subaccount=test`;\r\n Get(url, getTransactionsSourceDataServiceCancellationToken).then(\r\n res => {\r\n if (res.data) {\r\n resolve(res.data);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Fetching Transactions for Source Data.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getTransactionsAccountingDataPromise;\r\n\r\n\r\n}\r\n","import React from 'react';\r\nimport { Modal, ModalHeader, ModalBody, ModalFooter, Label } from 'reactstrap';\r\n\r\nconst ConfirmationPopup = ({ openConfirmationModelPopup, toggleConfirmationModelPopup, confirmationMessage, confirmationPopupSource, confirmAction}) => {\r\n\r\n return (\r\n <>\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n )\r\n}\r\nexport default ConfirmationPopup;","import gsap from \"gsap\";\r\n\r\n\r\nexport const animateRockefellerLogo = () => {\r\n gsap.to('#RCM_Loading_Logo', {duration: 1, scale: 20 });\r\n}\r\n\r\nexport const animateDashBoardPage = () => {\r\n gsap.from('#dashboard', {duration: 0.7, opacity: 0});\r\n}\r\n\r\nexport const animateRow = () => {\r\n let row_animation = gsap.from('.RCM_tow_level_table1_row_animation', { duration: 1, opacity: 0 });\r\n setTimeout(() => {\r\n row_animation.progress(1);\r\n }, 1000);\r\n };\r\n\r\n\r\nexport const animateViewTable = () => {\r\n gsap.from('.RCM_two_level_table1', {duration: 1, opacity: 0});\r\n}\r\n\r\nexport const uploadInvoiceViewAnimation = () => {\r\n gsap.from('.ant-upload', {duration: 0.7, opacity: 0});\r\n}\r\n\r\nexport const wireInstructionFormAnimation = () => {\r\n gsap.from('.RCM_billpay_form_box', {duration: 0.7, opacity: 0});\r\n}\r\n\r\nexport const rcmLoaderDotsAnimation = () => {\r\n gsap.from('.RCM_Loader_Dots_Animation', {duration: 0.2, opacity: 0, repeat: 1});\r\n}\r\n\r\nexport const rcmDiscritionaryDistributionFormAnimation = () => {\r\n gsap.from('.RCM_Discr_form_container', {duration: 0.7, opacity: 0})\r\n // let winLenght = window.innerWidth/2;\r\n // gsap.from('.RCM_Discr_form_container', {duration: 0.5, x: winLenght});\r\n}","import { billPayURL, mmSummaryUrl, referenceAPIURL, apiBaseUrl, getVendorsListUrl, \r\n invoiceUploadUrl, createUpdateVendorWirePaymentInstruction, getWireInstructionUrl, \r\n getLookUpValue, fetchMatrixContexualMenuItemsUrl, billDotComSsoLogUrl } from \"../serviceConstant\";\r\nimport { errorMsg} from '../../common/constants';\r\nimport { Post, Get, PostMultiPart } from \"../servicecalls\";\r\nimport axios from \"axios\";\r\n\r\nexport var addVendorCancellationToken = null;\r\nexport var getVendorCancellationToken = null;\r\nexport var getHolidayListCancellationToken = null;\r\nexport var getCountryStateCancellationToken = null;\r\nexport var createVendorPaymentInstructionForWireCancellationToken = null;\r\nexport var GetPaymentListServiceCancellationToken = null;\r\nexport var GetWireInstructionCancellationToken = null;\r\nexport var GetPayTermsCancellationToken = null;\r\nexport var GetContextualMenuItemsCancellationToken = null;\r\nexport var BillDotComSsoLogCancellationToken = null;\r\n\r\nexport const addVendorService = (vendorDetails, token, contextJson) => {\r\n\r\n //Check if cancellation token has value;\r\n if (addVendorCancellationToken !== null && addVendorCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n addVendorCancellationToken.cancel('Cancelling the add vendor request to prevent memory leaks.');\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n addVendorCancellationToken = cancelToken.source();\r\n\r\n let addVendorPromise = new Promise(\r\n function (resolve, reject) {\r\n let addVendorurl = apiBaseUrl() + \"/\" + billPayURL + \"/createVendor\";\r\n Post(addVendorurl, vendorDetails, token, contextJson, addVendorCancellationToken).then(res => {\r\n // get the response in case of successful call.\r\n console.log(\"Bill Pay Service : Add Vendor ::\", res);\r\n resolve(res);\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Bill Pay Service : Add Vendor :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return addVendorPromise;\r\n}\r\n\r\nexport const getVendorService = () => {\r\n\r\n //Check if cancellation token has value;\r\n if (getVendorCancellationToken !== null && getVendorCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n getVendorCancellationToken.cancel('Cancelling the get vendor request to prevent memory leaks.');\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getVendorCancellationToken = cancelToken.source();\r\n\r\n let getVendorPromise = new Promise(\r\n function (resolve, reject) {\r\n let getVendorurl = apiBaseUrl() + \"/\" + billPayURL + \"/getVendors\";\r\n Post(getVendorurl, \"\", getVendorCancellationToken).then(res => {\r\n // get the response in case of successful call.\r\n console.log(\"Bill Pay Service : get Vendor ::\", res);\r\n resolve(res);\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Bill Pay Service : get Vendor :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return getVendorPromise;\r\n}\r\n\r\nexport const getHolidayList = (token, contextJson, profileJson) => {\r\n\r\n //Check if cancellation token has value;\r\n if (getHolidayListCancellationToken !== null && getHolidayListCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n getHolidayListCancellationToken.cancel('Cancelling the existing holiday list request to prevent memory leaks.');\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getHolidayListCancellationToken = cancelToken.source();\r\n\r\n\r\n let getHolidayListPromise = new Promise(\r\n function (resolve, reject) {\r\n let holidayList = [];\r\n let holidayListUrl = `${mmSummaryUrl}?SearchBy=Holiday&DateRange=Years,1`;\r\n Get(holidayListUrl, token, contextJson, profileJson, getHolidayListCancellationToken).then(res => {\r\n if (res.data !== null\r\n && res.data != undefined\r\n && res.data.value !== null\r\n && res.data.value !== undefined\r\n && Array.isArray(res.data.value)\r\n && res.data.value.length > 0) {\r\n\r\n //get the valid response \r\n console.log(\"Money Movement Service : Holiday List::\", res.data.value[0]);\r\n let response = res.data.value[0];\r\n if (response.holidays !== null\r\n && response.holidays !== undefined\r\n && Array.isArray(response.holidays)\r\n && response.holidays.length > 0\r\n ) {\r\n holidayList = response.holidays;\r\n resolve(holidayList);\r\n } else {\r\n resolve(holidayList);\r\n }\r\n } else {\r\n reject(errorMsg);\r\n }\r\n\r\n })\r\n .catch(error => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n console.log(\"Payments service :: getHolidayList \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n\r\n\r\n\r\n });\r\n\r\n return getHolidayListPromise;\r\n}\r\nexport const getCountryStateService = (value, token, contextJson, profileJson ) => {\r\n\r\n //Check if cancellation token has value;\r\n if (getCountryStateCancellationToken !== null && getCountryStateCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n getCountryStateCancellationToken.cancel('Cancelling the get country/state request to prevent memory leaks.');\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getCountryStateCancellationToken = cancelToken.source();\r\n\r\n let getCountryStatePromise = new Promise(\r\n function (resolve, reject) {\r\n let getCountryStateurl = apiBaseUrl() + \"/\" + referenceAPIURL + \"/CommonReference('\" + value + \"')\";\r\n \r\n Get(getCountryStateurl, token, contextJson, profileJson, getCountryStateCancellationToken).then(res => {\r\n // get the response in case of successful call.\r\n console.log(\"Bill Pay Service : get Country State ::\", res);\r\n resolve(res);\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Bill Pay Service : get Country State :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return getCountryStatePromise;\r\n}\r\nexport const CreateVendorPaymentInstructionForWireService = (vendorPaymentInstructionForWireDetails, token, contextJson) => {\r\n\r\n //Check if cancellation token has value;\r\n if (createVendorPaymentInstructionForWireCancellationToken !== null && createVendorPaymentInstructionForWireCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n createVendorPaymentInstructionForWireCancellationToken.cancel('Cancelling the create Vendor Payment Instruction For Wire request to prevent memory leaks.');\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n createVendorPaymentInstructionForWireCancellationToken = cancelToken.source();\r\n\r\n let createVendorPaymentInstructionForWirePromise = new Promise(\r\n function (resolve, reject) {\r\n let createVendorPaymentInstructionForWireurl = `${apiBaseUrl()}/${createUpdateVendorWirePaymentInstruction}`;\r\n Post(createVendorPaymentInstructionForWireurl, vendorPaymentInstructionForWireDetails, token, contextJson, createVendorPaymentInstructionForWireCancellationToken).then(res => {\r\n // get the response in case of successful call.\r\n console.log(\"Bill Pay Service : create Vendor Payment Instruction For Wire ::\", res);\r\n resolve(res);\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Bill Pay Service : create Vendor Payment Instruction For Wire :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return createVendorPaymentInstructionForWirePromise;\r\n}\r\n\r\nexport const GetPaymentListService = (user) => {\r\n\r\n //userid = \"TThaveesaengsiri@rockco.com\";\r\n //Check if cancellation token has value;\r\n if (GetPaymentListServiceCancellationToken !== null && GetPaymentListServiceCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n GetPaymentListServiceCancellationToken.cancel('Cancelling the get vendor list request to prevent memory leaks.');\r\n }\r\n\r\n let userid = (user.userName)? user.userName : '';\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n GetPaymentListServiceCancellationToken = cancelToken.source();\r\n\r\n let getVendorsListPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${getVendorsListUrl}?rcmUser=${userid}`;\r\n Post(url, '', GetPaymentListServiceCancellationToken).then(res => {\r\n resolve(res);\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Bill Pay Service : Error get vendors list : :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return getVendorsListPromise;\r\n}\r\n\r\nexport const uploadInvoices = (file, id, email, onUploadProgress) => {\r\n\r\n var data = new FormData();\r\n data.append(\"fileContent\", file); \r\n data.append(\"fileName\", file.name);\r\n data.append(\"orgid\", id);\r\n data.append(\"id\", email);\r\n\r\n let uploadFilePromise = new Promise(function (resolve, reject) {\r\n\r\n let url = `${apiBaseUrl()}/${invoiceUploadUrl}`;\r\n\r\n PostMultiPart(url, data, null, onUploadProgress).then(\r\n docUploadRes => {\r\n if(docUploadRes && docUploadRes.data && docUploadRes.data.response_status === 0)\r\n {\r\n resolve(docUploadRes);\r\n }else{\r\n reject('Error While uploading the file ');\r\n }\r\n\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Uploading document\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n return uploadFilePromise;\r\n\r\n}\r\n\r\n\r\nexport const getWireInstructions = (vendorid, orgid) => {\r\n //Check if cancellation token has value;\r\n if (GetWireInstructionCancellationToken !== null && GetWireInstructionCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n GetWireInstructionCancellationToken.cancel('Cancelling the create Vendor Payment Instruction For Wire request to prevent memory leaks.');\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n GetWireInstructionCancellationToken = cancelToken.source();\r\n\r\n let getWireInstructionPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${getWireInstructionUrl}?vendorId=${vendorid}&orgId=${orgid}`;\r\n Get(url, GetWireInstructionCancellationToken).then(res => {\r\n // get the response in case of successful call.\r\n if(res && res.data){\r\n resolve(res.data);\r\n }else{\r\n reject(errorMsg);\r\n }\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel()) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure.\r\n console.error(\"Vendor Service : get wire instruction for vendor\", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return getWireInstructionPromise;\r\n }\r\n\r\n\r\n export const getPayTerms = (groupCode, orgId) => {\r\n\r\n //Check if cancellation token has value;\r\n if (GetPayTermsCancellationToken !== null && GetPayTermsCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n GetPayTermsCancellationToken.cancel('Cancelling the create Vendor Payment Instruction For Wire request to prevent memory leaks.');\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n GetPayTermsCancellationToken = cancelToken.source();\r\n\r\n let getPayTermsPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${getLookUpValue}?groupCode=${groupCode}&orgId=${orgId}`;\r\n Get(url, GetPayTermsCancellationToken).then(res => {\r\n // get the response in case of successful call.\r\n if(res && res.data){\r\n resolve(res.data);\r\n }else{\r\n reject(errorMsg);\r\n }\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel()) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure.\r\n console.error(\"Vendor Service : get wire instruction for vendor\", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return getPayTermsPromise;\r\n\r\n\r\n }\r\n\r\n\r\n export const getContextualMenuItems = () => {\r\n\r\n //Check if cancellation token has value;\r\n if (GetContextualMenuItemsCancellationToken !== null && GetContextualMenuItemsCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n GetContextualMenuItemsCancellationToken.cancel('Cancelling request to prevent memory leaks.');\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n GetContextualMenuItemsCancellationToken = cancelToken.source();\r\n\r\n let getPayTermsPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${fetchMatrixContexualMenuItemsUrl}`;\r\n Get(url, GetContextualMenuItemsCancellationToken).then(res => {\r\n // get the response in case of successful call.\r\n if(res && res.data){\r\n resolve(res.data);\r\n }else{\r\n reject(errorMsg);\r\n }\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel()) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure.\r\n console.error(\"Payments Service : get contexual menu items\", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return getPayTermsPromise;\r\n\r\n\r\n }\r\n\r\n export const billDotComTrackingSsoLogService = () => {\r\n\r\n //Check if cancellation token has value \r\n\r\n if (BillDotComSsoLogCancellationToken !== null && BillDotComSsoLogCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n BillDotComSsoLogCancellationToken.cancel('Cancelling request to prevent memory leaks.');\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n BillDotComSsoLogCancellationToken = cancelToken.source();\r\n\r\n let billDotComSsoLogPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${billDotComSsoLogUrl}`;\r\n Get(url, BillDotComSsoLogCancellationToken)\r\n .then((res) => {\r\n resolve(res.data);\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel()) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure.\r\n console.error(\"Payments Service : while logging bill.com sso tracking info\", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n return billDotComSsoLogPromise;\r\n\r\n }","import { UPDATE_SELECTED_CLIENT } from \"./actionTypes\";\r\n\r\nexport const UpdateSelectedClient = (row) => (dispatch) => {\r\n return Promise.resolve(\r\n dispatch({\r\n type: UPDATE_SELECTED_CLIENT,\r\n payload: row,\r\n })\r\n )\r\n }","import React, { useState, useEffect, useCallback } from 'react';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport { MsgForNoData } from '../../common/constants';\r\nimport { Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap';\r\nimport { Spinner } from 'reactstrap';\r\nimport BootstrapTable from 'react-bootstrap-table-next';\r\nimport { GetPaymentListService, GetPaymentListServiceCancellationToken } from '../../services/billpayservice/billpayservices';\r\nimport { UpdateSelectedClient } from '../../actions/dashboardAction';\r\nimport { getNestedObject } from '../../common/common';\r\n\r\nconst ClientListPopup = ({ isClientListPopupOpen, data, toggleClientListPopup }) => {\r\n const [showOverlay, setShowOverlay] = useState(false);\r\n const [clientsList, setClientsList] = useState([]);\r\n const dispatch = useDispatch();\r\n const user = useSelector(state => getNestedObject(state, ['app', 'user']));\r\n\r\n const updateActiveClient = useCallback(\r\n (row) => dispatch(UpdateSelectedClient(row)),\r\n [dispatch]\r\n )\r\n useEffect(() => {\r\n\r\n fetchClientList();\r\n return () => {\r\n if (GetPaymentListServiceCancellationToken !== null && GetPaymentListServiceCancellationToken !== undefined) {\r\n GetPaymentListServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n }\r\n }, []);\r\n const fetchClientList = () => {\r\n if (clientsList.length === 0 && user && user !== null) {\r\n setShowOverlay(prevShowOverlay => true);\r\n GetPaymentListService(user).then(res => {\r\n if (res && res.data && Array.isArray(res.data) && res.data.length > 0) {\r\n setClientsList(res.data);\r\n }\r\n //setIsClientListPopupOpen(prevIsClientListPopupOpen => true);\r\n setShowOverlay(prevShowOverlay => false);\r\n })\r\n .catch(err => {\r\n\r\n console.error(\"Error Occured while fetching the user vendor list\");\r\n })\r\n } \r\n }\r\n const handleSelectClient = row => {\r\n updateActiveClient(row);\r\n toggleClientListPopup();\r\n }\r\n const getClientGridColumn = (handleSelectClient) => {\r\n const column = [\r\n {\r\n dataField: 'name',\r\n text: 'Client Name',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n },\r\n\r\n {\r\n dataField: '',\r\n text: '',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'right',\r\n headerClasses: 'RCM_noWrap',\r\n \r\n formatter: (cell, row) => {\r\n return (
\r\n \r\n
);\r\n }\r\n }\r\n ]\r\n\r\n return column;\r\n }\r\n function customCaretSort(order, column) {\r\n if (!order) return ();\r\n else if (order === 'asc') return ();\r\n else if (order === 'desc') return ();\r\n return null;\r\n }\r\n return (\r\n <>\r\n \r\n \r\n\r\n \r\n \r\n \r\n {\r\n showOverlay ?
Loading Clients\r\n  \r\n
\r\n : <>\r\n\r\n {\r\n clientsList ?\r\n
\r\n \r\n
\r\n :
{MsgForNoData}
\r\n\r\n }\r\n \r\n }\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n )\r\n}\r\nexport default ClientListPopup;","import React, { useState, useEffect } from 'react';\r\nimport { useCallback } from 'react';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport BootstrapTable from 'react-bootstrap-table-next';\r\nimport { Spinner } from 'reactstrap';\r\nimport { getSubAccountsGridColumn } from './SubAccountsColumns';\r\nimport { MsgForNoData, arrayFilterByValue } from '../../common/constants';\r\nimport { getNestedObject } from '../../common/common';\r\nimport SubAccountsAddEdit from './subAccountAddEdit';\r\nimport {\r\n getSubAccountListService, getSubAccountListServiceCancellationToken,\r\n addEditSubAccountService, addEditSubAccountServiceCancellationToken,\r\n fetchSubAccountCategories, linkSubAccountService,\r\n linkSubAccountServiceCancellationToken, unlinkSubAccountService,\r\n unlinkSubAccountServiceCancellationToken, validateABA, validateABACancellationToken, setContextForSourceDataTransactions\r\n} from '../../services/accountingServices/accountingService';\r\nimport ConfirmationPopup from './confirmationPopup';\r\nimport { animateViewTable } from '../../common/animation';\r\nimport ClientListPopup from './clientListPopup';\r\nimport { BackTop, message } from 'antd';\r\nimport { UpdateSelectedSubAccount } from '../../actions/accountingActions';\r\nconst SubAccounts = (props) => {\r\n const [showOverlay, setShowOverlay] = useState(false);\r\n const [activeAccount, setActiveAccount] = useState({});\r\n\r\n const [mode, setMode] = useState(\"\");\r\n const [showNinthWaveWidget, setShowNinthWaveWidget] = useState(false);\r\n const [openNinthwaveModelPopup, setOpenNinthwaveModelPopup] = useState(false);\r\n const [disableLinkedAccount, setDisableLinkedAccount] = useState(false);\r\n const [subAccountsList, setSubAccountsList] = useState([]);\r\n const [gridData, setGridData] = useState([]);\r\n const [filterKey, setFilterKey] = useState(\"\");\r\n const [categoryLevel1Type, setCategoryLevel1Type] = useState([]);\r\n const [categoryLevel2Type, setCategoryLevel2Type] = useState([]);\r\n const [activeClient, setActiveClient] = useState({});\r\n const [isLinkAccountDisabled, setIsLinkAccountDisabled] = useState(true);\r\n\r\n const [openConfirmationModelPopup, setOpenConfirmationModelPopup] = useState(false);\r\n const [confirmationMessage, setConfirmationMessage] = useState('');\r\n const [confirmationPopupSource, setConfirmationPopupSource] = useState('');\r\n const [changedCategoryInfo, setChangedCategoryInfo] = useState({});\r\n const [deleteAccountKey, setDeleteAccountKey] = useState('');\r\n const [bankRoutingNumberErrorMsg, setBankRoutingNumberErrorMsg] = useState('');\r\n const [isClientListPopupOpen, setIsClientListPopupOpen] = useState(false);\r\n const [contextKey, setContextKey] = useState('')\r\n const [openTransactionPopup, setOpenTransactionPopup] = useState(false);\r\n //useEffect to listen Event Listner for ninth wave account\r\n const dispatch = useDispatch(); \r\n const features = useSelector(state => getNestedObject(state,['app','faFeatures']))\r\n const selectedClient = useSelector(state => getNestedObject(state, ['dashboard', 'selectedClient']));\r\n\r\n useEffect(() => {\r\n setActiveClient(prevActiveClient => { return { ...selectedClient } });\r\n window.addEventListener('NW_ENROLLED_ACCTS', handleNinthWaveAccountAdd);\r\n return () => {\r\n window.removeEventListener('NW_ENROLLED_ACCTS', handleNinthWaveAccountAdd);\r\n if (getSubAccountListServiceCancellationToken !== null && getSubAccountListServiceCancellationToken !== undefined) {\r\n getSubAccountListServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n if (addEditSubAccountServiceCancellationToken !== null && addEditSubAccountServiceCancellationToken !== undefined) {\r\n addEditSubAccountServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n if (linkSubAccountServiceCancellationToken !== null && linkSubAccountServiceCancellationToken !== undefined) {\r\n linkSubAccountServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n if (unlinkSubAccountServiceCancellationToken !== null && unlinkSubAccountServiceCancellationToken !== undefined) {\r\n unlinkSubAccountServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n if (validateABACancellationToken !== null && validateABACancellationToken !== undefined) {\r\n validateABACancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n\r\n }\r\n }, []);\r\n useEffect(() => {\r\n\r\n //call api and set categories\r\n fetchSubAccountCategories().then(res => {\r\n //let item = { name: '', code: '', canAggregate: 'N' };\r\n\r\n setCategoryLevel1Type([...res.category1]);\r\n setCategoryLevel2Type([...res.category2]);\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n })\r\n\r\n }, []);\r\n useEffect(() => {\r\n if (activeClient && activeClient.pKid) {\r\n getSubAccountList();\r\n setFilterKey(pervFilterKey => \"\");\r\n }\r\n }, [activeClient]);\r\n useEffect(() => {\r\n if (activeAccount.isSave || activeAccount.delink) {\r\n save();\r\n } else\r\n checkRequiredFields();\r\n }, [activeAccount]);\r\n\r\n useEffect(() => {\r\n setActiveClient(prevActiveClient => { return { ...selectedClient } });\r\n }, [selectedClient]);\r\n\r\n const getSubAccountList = () => {\r\n setShowOverlay(prevShowOverlay => true);\r\n setBankRoutingNumberErrorMsg(prevBankRoutingNumberErrorMsg => '');\r\n getSubAccountListService(activeClient.pKid).then(res => {\r\n \r\n //console.log(\"SubaccountsList: \" + JSON.stringify(res));\r\n if (res.status.code === '000000') {\r\n if (res && res.subAcctList && res.subAcctList && res.subAcctList !== null && Array.isArray(res.subAcctList)) {\r\n let data = res.subAcctList;\r\n setSubAccountsList(data);\r\n setGridData(data);\r\n }\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to get account list, you can try again.\");\r\n console.error(\"Error Occured while fetching account\");\r\n }\r\n setShowOverlay(prevShowOverlay => false);\r\n\r\n })\r\n .catch(err => {\r\n setShowOverlay(prevShowOverlay => false);\r\n animateViewTable();\r\n message.error(\"We are unable to get account list, you can try again.\");\r\n console.error(\"Error Occured while fetching account\");\r\n })\r\n }\r\n const handleFilter = (e) => {\r\n let value = e.target.value\r\n let filteredAcct = arrayFilterByValue(subAccountsList, value);\r\n setFilterKey(pervFilterKey => value);\r\n setGridData(filteredAcct);\r\n }\r\n const clearFilter = () => {\r\n let filteredAcct = arrayFilterByValue(subAccountsList, \"\");\r\n setFilterKey(pervFilterKey => \"\");\r\n setGridData(filteredAcct);\r\n }\r\n const handleNinthWaveAccountAdd = useCallback((event) => {\r\n //console.log(\"event data: \" + JSON.stringify(event));\r\n if (event && event.detail && event.detail.accounts && event.detail.accounts !== undefined\r\n && event.detail.accounts.length !== 0) {\r\n let account = (event && event.detail && event.detail.accounts && event.detail.accounts && event.detail.accounts.length > 0 &&\r\n event.detail.accounts[0]) ? event.detail.accounts[0] : {};\r\n let reqJson = {\r\n \"profileid\": \"\",\r\n \"aggregatedAccounts\": [{\r\n \"number\": (account && account.fullAccountNumber) ? window.btoa(account.fullAccountNumber) : \"\",\r\n \"key\": (account && account.accountKey) ? account.accountKey : \"\",\r\n \"status\": (account && account.accountStatus) ? account.accountStatus : \"\",\r\n \"accttype\": (account && account.accountType) ? account.accountType : \"\",\r\n \"routingTransitNumber\": (account && account.routingTransitNumber) ? account.routingTransitNumber : \"\",\r\n \"nickname\": (account && account.accountNumber) ? window.btoa(account.accountNumber) : \"\",\r\n \"finame\": (event && event.detail ) ? event.detail.fiName : '',\r\n \"fiid\": (event && event.detail) ? event.detail.fiid : '',\r\n }]\r\n };\r\n linkSubAccountService(reqJson).then(res => {\r\n if (res.value !== 0) {\r\n setActiveAccount(prevActiveAccount => {\r\n return {\r\n ...prevActiveAccount, bankName: event.detail.fiName,\r\n financialInstitutionKey: event.detail.fiid, bankAccount: account.fullAccountNumber,\r\n accountId: parseInt(res.value), isAggregated: 'Y', isSave: true, bankRoutingNumber: '', accountKey: account.accountKey\r\n }\r\n });\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to link account, you can try again.\");\r\n }\r\n })\r\n .catch(err => {\r\n animateViewTable();\r\n message.error(\"We are unable to link account, you can try again.\");\r\n\r\n console.error(\"Error Occured while linking account\");\r\n\r\n })\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to enroll account, you can try again.\");\r\n }\r\n setOpenNinthwaveModelPopup(prevOpenNinthwaveModelPopup => !prevOpenNinthwaveModelPopup);\r\n setDisableLinkedAccount(true);\r\n\r\n }, []);\r\n const toggleNinthwaveModelPopup = () => {\r\n setOpenNinthwaveModelPopup(prevOpenNinthwaveModelPopup => !prevOpenNinthwaveModelPopup)\r\n }\r\n const toggleClientListPopup = () => {\r\n setIsClientListPopupOpen(prevIsClientListPopupOpen => !prevIsClientListPopupOpen);\r\n }\r\n const toggleTransactionsModalPopup = () => {\r\n setOpenTransactionPopup(prevOPenTransactionPopup => !prevOPenTransactionPopup);\r\n }\r\n const openConfirmationPopup = (source) => {\r\n let confirmationMessage = \"\";\r\n\r\n switch (source) {\r\n case \"ninthwave-link\": {\r\n if ((activeAccount.bankName !== null && activeAccount.bankName !== \"\") || (activeAccount.bankAccount !== null && activeAccount.bankAccount !== \"\")) {\r\n confirmationMessage = 'The Custodian/Bank and the Account # will be replaced with the linked account information, are you sure?';\r\n setConfirmationMessage(prevConfirmationMessage => confirmationMessage);\r\n setOpenConfirmationModelPopup(prevOpenConfirmationModelPopup => true);\r\n setConfirmationPopupSource(prevConfirmationPopupSource => source);\r\n } else {\r\n setOpenNinthwaveModelPopup(prevOpenNinthwaveModelPopup => true);\r\n }\r\n break;\r\n }\r\n\r\n case \"ninthwave-delink\": {\r\n confirmationMessage = 'Are you sure you want to unlink the account? This will story transaction feeds from the linked account. It does not impact previous transactions received';\r\n setConfirmationMessage(prevConfirmationMessage => confirmationMessage);\r\n setOpenConfirmationModelPopup(prevOpenConfirmationModelPopup => true);\r\n setConfirmationPopupSource(prevConfirmationPopupSource => source);\r\n break;\r\n }\r\n case \"categorylevel2-change\": {\r\n confirmationMessage = 'You have a linked account into this custodian, are you sure you want to break the link';\r\n setConfirmationMessage(prevConfirmationMessage => confirmationMessage);\r\n setOpenConfirmationModelPopup(prevOpenConfirmationModelPopup => true);\r\n setConfirmationPopupSource(prevConfirmationPopupSource => source);\r\n break;\r\n }\r\n }\r\n\r\n\r\n }\r\n const toggleConfirmationModelPopup = () => {\r\n setConfirmationMessage(prevConfirmationMessage => '');\r\n setOpenConfirmationModelPopup(prevOpenConfirmationModelPopup => !prevOpenConfirmationModelPopup);\r\n setConfirmationPopupSource(prevConfirmationPopupSource => '');\r\n }\r\n const confirmAction = (source) => {\r\n setOpenConfirmationModelPopup(prevOpenConfirmationModelPopup => !prevOpenConfirmationModelPopup);\r\n if (source === 'ninthwave-link') {\r\n setOpenNinthwaveModelPopup(prevOpenNinthwaveModelPopup => true);\r\n } else if (source === 'ninthwave-delink' || source === 'categorylevel2-change') {\r\n setDeleteAccountKey(prevDeleteAccountKey => activeAccount.accountKey);\r\n unlinkSubAccount(source);\r\n }\r\n }\r\n const unlinkSubAccount = (source) => {\r\n //setDeleteAccountKey(prevDeleteAccountKey => activeAccount.accountKey);\r\n if (source === 'categorylevel2-change') {\r\n setShowNinthWaveWidget(prevShowNinthWaveWidget => false);\r\n setActiveAccount(prevActiveAccount => {\r\n return {\r\n ...prevActiveAccount, bankName: '', financialInstitutionKey: '', bankAccount: '', accountKey: '',\r\n accountId: null, isAggregated: 'N', delink: true, bankRoutingNumber: '', categoryCode2: changedCategoryInfo.name\r\n }\r\n });\r\n } else {\r\n setActiveAccount(prevActiveAccount => {\r\n return {\r\n ...prevActiveAccount, bankName: '', financialInstitutionKey: '', bankAccount: '',\r\n accountId: null, isAggregated: 'N', delink: true, bankRoutingNumber: '', accountKey: ''\r\n }\r\n });\r\n }\r\n }\r\n const editSubAccount = row => {\r\n setActiveAccount(prevActiveAccount => { return { ...row } });\r\n setMode(\"edit\");\r\n let bankType = categoryLevel2Type.filter(category => category.name === row.categoryCode2);\r\n if (bankType && bankType.length > 0 && bankType[0].canAggregate === 'Y')\r\n setShowNinthWaveWidget(prevShowNinthWaveWidget => true);\r\n else\r\n setShowNinthWaveWidget(prevShowNinthWaveWidget => false);\r\n setBankRoutingNumberErrorMsg(prevBankRoutingNumberErrorMsg => '');\r\n }\r\n\r\n const handleTransactions = row => {\r\n setActiveAccount(prevActiveAccount => { return { ...row } });\r\n updateSubAccount(row);\r\n props.history.push(`${props.matchUrl}/subAccount/transactions`);\r\n }\r\n\r\n const updateSubAccount = useCallback(\r\n (row) => dispatch(UpdateSelectedSubAccount(row)),\r\n [dispatch]\r\n )\r\n const cancel = () => {\r\n setActiveAccount({});\r\n setMode(\"\");\r\n setShowNinthWaveWidget(prevShowNinthWaveWidget => false);\r\n setBankRoutingNumberErrorMsg(prevBankRoutingNumberErrorMsg => '');\r\n }\r\n const save = () => {\r\n setBankRoutingNumberErrorMsg(prevBankRoutingNumberErrorMsg => '');\r\n if (activeAccount.delink !== undefined && !activeAccount.delink) {\r\n setShowOverlay(prevShowOverlay => true);\r\n }\r\n let reqJson = { ...activeAccount };\r\n if (activeAccount.shortName === null) {\r\n reqJson.shortName = '';\r\n }\r\n addEditSubAccountService(reqJson).then(res => {\r\n\r\n if (res && res.status && res.status.code && res.status.code === \"000000\") {\r\n if (activeAccount.delink) {\r\n deLinkSubAccount();\r\n getSubAccountList();\r\n } else if (activeAccount.isSave) {\r\n \r\n setActiveAccount(prevActiveAccount => {\r\n return { ...prevActiveAccount, delink: false, isSave: false }\r\n });\r\n getSubAccountList();\r\n } else {\r\n getSubAccountList();\r\n setActiveAccount({});\r\n setMode(prevMode => \"\");\r\n setShowNinthWaveWidget(prevShowNinthWaveWidget => false);\r\n }\r\n\r\n } else {\r\n setShowOverlay(prevShowOverlay => false);\r\n animateViewTable();\r\n message.error(\"We are unable save account, you can try again.\");\r\n }\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n setShowOverlay(prevShowOverlay => false);\r\n animateViewTable();\r\n message.error(\"We are unable save account, you can try again.\");\r\n })\r\n\r\n }\r\n\r\n //const setContext = (key) => {\r\n // setShowOverlay(prevShowOverlay => true);\r\n // setContextForSourceDataTransactions(key).then(res => {\r\n // console.log(\"response=\"+res)\r\n // if (res && res.status && res.status=== 200) {\r\n // console.log(res);\r\n // setShowOverlay(prevShowOverlay => false);\r\n // setContextKey(res.data);\r\n // } else {\r\n // setShowOverlay(prevShowOverlay => false);\r\n // animateViewTable();\r\n // message.error(\"We are unable to set Context, you can try again.\");\r\n // }\r\n // })\r\n // .catch(err => {\r\n // console.error(err);\r\n // setShowOverlay(prevShowOverlay => false);\r\n // animateViewTable();\r\n // message.error(\"We are unable to set Context, you can try again.\");\r\n // })\r\n\r\n //}\r\n const deLinkSubAccount = () => {\r\n\r\n let reqJson = {\r\n \"extassetaggregationid\": \"f9b43c74-3d16-416b-906c-0895e24947a0\",\r\n \"accountkey\": (deleteAccountKey),\r\n \"isremove\": true\r\n }\r\n unlinkSubAccountService(reqJson).then(res => {\r\n if (res && res.data && res.data.value && res.data.value.length > 0 && res.data.value[0].status && res.data.value[0].status.code === \"0\") {\r\n //setActiveAccount(prevActiveAccount => {\r\n // return { ...prevActiveAccount, delink: false }\r\n //});\r\n if (confirmationPopupSource === \"categorylevel2 - change\") {\r\n setShowNinthWaveWidget(prevShowNinthWaveWidget => false);\r\n setConfirmationPopupSource(prevConfirmationPopupSource => \"\");\r\n } else {\r\n setConfirmationPopupSource(prevConfirmationPopupSource => \"\");\r\n }\r\n setDeleteAccountKey(prevDeleteAccountKey => '');\r\n getSubAccountList();\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to unlink account, you can try again.\");\r\n console.error(\"Error Occured while unlinking account\");\r\n }\r\n })\r\n .catch(err => {\r\n animateViewTable();\r\n message.error(\"We are unable to unlink account, you can try again.\");\r\n console.error(\"Error Occured while unlinking account\");\r\n })\r\n setActiveAccount(prevActiveAccount => {\r\n return { ...prevActiveAccount, delink: false, isSave: false }\r\n });\r\n }\r\n const add = () => {\r\n setMode(\"add\");\r\n setActiveAccount({\r\n //id: '',\r\n shortName:'',\r\n orgId: activeClient.orgId,\r\n pKid: activeClient.pKid,\r\n number: '',\r\n name: '',\r\n //description: '',\r\n categoryCode1: '',\r\n categoryCode2: '',\r\n canaggregate: 'N',\r\n bankName: '',\r\n financialInstitutionKey: '',\r\n bankAccount: '',\r\n accountId: null,\r\n isAggregated: 'N',\r\n accountKey: '',\r\n bankRoutingNumber: ''\r\n });\r\n setShowNinthWaveWidget(prevShowNinthWaveWidget => false);\r\n }\r\n const handleFormChanges = evt => {\r\n let value = evt.target.value;\r\n if (evt.target.name === \"name\") {\r\n setActiveAccount(prevActiveAccount => { return { ...prevActiveAccount, name: value } });\r\n //} else if (evt.target.name === 'description') {\r\n // setActiveAccount(prevActiveAccount => { return { ...prevActiveAccount, description: value } });\r\n } else if (evt.target.name === 'number') {\r\n setActiveAccount(prevActiveAccount => { return { ...prevActiveAccount, shortName: value } });\r\n } else if (evt.target.name === 'custodianname') {\r\n setActiveAccount(prevActiveAccount => { return { ...prevActiveAccount, bankName: value } });\r\n } else if (evt.target.name === 'linkedaccountnumber') {\r\n setActiveAccount(prevActiveAccount => { return { ...prevActiveAccount, bankAccount: value } });\r\n\r\n } else if (evt.target.name === 'bankRoutingNumber') {\r\n setActiveAccount(prevActiveAccount => { return { ...prevActiveAccount, bankRoutingNumber: value } });\r\n }\r\n\r\n }\r\n const handleDropdownChange = (category, source) => {\r\n if (source === 'categorylevel1') {\r\n setActiveAccount(prevActiveAccount => { return { ...prevActiveAccount, categoryCode1: category.name } });\r\n\r\n } else if (source === 'categorylevel2') {\r\n if (activeAccount.isAggregated === 'Y') {\r\n let changedBankType = categoryLevel2Type.filter(categoryType => categoryType.name === category.name);\r\n if ((changedBankType && changedBankType.length > 0 && changedBankType[0].canAggregate === 'N') &&\r\n ((activeAccount.bankName !== null && activeAccount.bankName !== \"\") || (activeAccount.bankAccount !== null && activeAccount.bankAccount !== \"\"))) {\r\n setChangedCategoryInfo({ ...category });\r\n openConfirmationPopup('categorylevel2-change');\r\n } else {\r\n setActiveAccount(prevActiveAccount => { return { ...prevActiveAccount, categoryCode2: category.name } });\r\n if (category.canAggregate === 'Y') {\r\n setShowNinthWaveWidget(prevShowNinthWaveWidget => true);\r\n\r\n } else {\r\n setShowNinthWaveWidget(prevShowNinthWaveWidget => false);\r\n }\r\n }\r\n } else {\r\n setActiveAccount(prevActiveAccount => { return { ...prevActiveAccount, categoryCode2: category.name } });\r\n if (category.canAggregate === 'Y') {\r\n setShowNinthWaveWidget(prevShowNinthWaveWidget => true);\r\n\r\n } else {\r\n setShowNinthWaveWidget(prevShowNinthWaveWidget => false);\r\n }\r\n }\r\n }\r\n }\r\n\r\n const checkRequiredFields = () => {\r\n if (showNinthWaveWidget === true && (activeAccount.id !== null && activeAccount.id !== '')\r\n //&& (activeAccount.shortName !== null || activeAccount.shortName !== '')\r\n && (activeAccount.name !== null && activeAccount.name !== '')) {\r\n setIsLinkAccountDisabled(prevIsLinkAccountDisabled => false);\r\n } else {\r\n setIsLinkAccountDisabled(prevIsLinkAccountDisabled => true);\r\n }\r\n }\r\n\r\n const selectRow = {\r\n mode: 'radio',\r\n clickToSelect: true,\r\n hideSelectColumn: true,\r\n onSelect: (row) => editSubAccount(row)\r\n };\r\n const goToDashBoard = () => {\r\n props.history.push('/');\r\n }\r\n const getBankName = (evt) => {\r\n //let errorMsg = \"\";\r\n setBankRoutingNumberErrorMsg(prevBankRoutingNumberErrorMsg => '');\r\n if (evt.target.value !== undefined\r\n && evt.target.value !== \"\") {\r\n let inputABA = evt.target.value;\r\n //this.setState({ isLoading: true }, () => {\r\n validateABA(inputABA)\r\n .then(data => {\r\n if (data.ABANumbers !== null\r\n && data.ABANumbers !== undefined\r\n && Array.isArray(data.ABANumbers)\r\n && data.ABANumbers.length > 0) {\r\n let bankname = \"\";\r\n for (let aba of data.ABANumbers) {\r\n if (aba.BankCode !== null && aba.BankCode !== undefined && aba.BankCode === inputABA) {\r\n if (aba.BankName !== null && aba.BankName !== undefined) {\r\n bankname = aba.BankName;\r\n setActiveAccount(prevActiveAccount => { return { ...prevActiveAccount, bankName: bankname } });\r\n //setBankRoutingNumberErrorMsg(prevBankRoutingNumberErrorMsg => '');\r\n }\r\n break;\r\n }\r\n }\r\n\r\n //check if we did not receive any bank name\r\n if (bankname === \"\") {\r\n\r\n setBankRoutingNumberErrorMsg(prevBankRoutingNumberErrorMsg => \"Please provide valid ABA Routing number\");\r\n setActiveAccount(prevActiveAccount => { return { ...prevActiveAccount, bankName: \"\" } });\r\n }\r\n } else {\r\n setBankRoutingNumberErrorMsg(prevBankRoutingNumberErrorMsg => \"Please provide valid ABA Routing number\");\r\n setActiveAccount(prevActiveAccount => { return { ...prevActiveAccount, bankName: \"\" } });\r\n }\r\n })\r\n .catch(error => {\r\n setBankRoutingNumberErrorMsg(prevBankRoutingNumberErrorMsg => \"Please provide valid ABA Routing number\");\r\n setActiveAccount(prevActiveAccount => { return { ...prevActiveAccount, bankName: \"\" } });\r\n\r\n });\r\n // });\r\n } else {\r\n setBankRoutingNumberErrorMsg(prevBankRoutingNumberErrorMsg => \"Please provide valid ABA Routing number\");\r\n setActiveAccount(prevActiveAccount => { return { ...prevActiveAccount, bankName: \"\" } });\r\n }\r\n\r\n }\r\n\r\n return (\r\n <>\r\n
\r\n {\r\n //showOverlay && ()\r\n showOverlay ?
Loading Sub Accounts\r\n  \r\n
\r\n : <>\r\n \r\n
\r\n
\r\n Select {\r\n activeClient === undefined || activeClient === null || activeClient === \"\" || activeClient.pKid === undefined ? \" a \" : ' another '}\r\n toggleClientListPopup()}>client.\r\n
\r\n
\r\n {\r\n activeClient === undefined || activeClient === null || activeClient === \"\" || activeClient.pKid === undefined\r\n ? <>\r\n :\r\n\r\n
\r\n
\r\n \r\n
\r\n LIST OF SUB ACCOUNTS - {activeClient && activeClient.name}\r\n
\r\n
\r\n handleFilter(e)}\r\n value={filterKey}\r\n\r\n />\r\n \r\n
\r\n
\r\n {\r\n subAccountsList ?\r\n
\r\n \r\n
\r\n :
{MsgForNoData}
\r\n\r\n }\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n }\r\n \r\n }\r\n
\r\n \r\n \r\n \r\n \r\n )\r\n\r\n};\r\n\r\nexport default SubAccounts;","import { UPDATE_SELECTED_SUB_ACCOUNT } from \"./actionTypes\";\r\n\r\nexport const UpdateSelectedSubAccount = (row) => (dispatch) => {\r\n return Promise.resolve(\r\n dispatch({\r\n type: UPDATE_SELECTED_SUB_ACCOUNT,\r\n payload: row,\r\n })\r\n )\r\n}\r\n\r\n//export const SetContextKey = (key) => (dispatch) => {\r\n// return Promise.resolve(\r\n// dispatch({\r\n// type: SET_CONTEXT_KEY,\r\n// payload: key,\r\n// })\r\n// )\r\n//}","import React from 'react';\r\nimport {getDashBoardViewGridColumn} from './DashBoardViewColumns';\r\nimport BootstrapTable from 'react-bootstrap-table-next';\r\nimport { Form, FormGroup} from \"reactstrap\";\r\nimport {MsgForNoData} from '../../common/constants';\r\nimport Payments from '../clientpayments/payments';\r\nimport SubAccounts from '../accounting/subAccounts';\r\n\r\nexport default function DashBoardView(props) {\r\n\r\n const renderConditionalView = () => {\r\n\r\n if(props && props.state && props.state.openClientsPayments){\r\n return(\r\n \r\n )\r\n }else if (props && props.state && props.state.openSubAccounts) {\r\n return (\r\n \r\n )\r\n } \r\n else{\r\n return (\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {props && props.state ?\r\n
\r\n \r\n
\r\n :
{MsgForNoData}
\r\n }\r\n
\r\n )\r\n }\r\n\r\n }\r\n\r\n return (\r\n
\r\n {\r\n renderConditionalView()\r\n }\r\n
\r\n )\r\n}\r\n","import React, { Component } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { withRouter } from 'react-router-dom';\r\nimport DashBoardView from './DashBoardView';\r\nimport { GetPaymentListService, GetPaymentListServiceCancellationToken, getContextualMenuItems, billDotComTrackingSsoLogService } from '../../services/billpayservice/billpayservices';\r\nimport cloneDeep from 'lodash/cloneDeep';\r\nimport { UpdateSelectedClient } from '../../actions/dashboardAction';\r\nimport { UPDATE_SSO_WINDOW_INSTANCE, UPDATE_SELECTED_MENU_VALUE } from '../../actions/appActions';\r\nimport { animateViewTable } from '../../common/animation';\r\nimport { arrayFilterByValue } from '../../common/utilities';\r\nimport { Spinner } from 'reactstrap';\r\nimport { BackTop, message } from 'antd';\r\n\r\nclass DashBoard extends Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n this.viewInvoice = this.viewInvoice.bind(this);\r\n this.uploadInvoice = this.uploadInvoice.bind(this);\r\n this.goToVendors = this.goToVendors.bind(this);\r\n this.goToSubAccounts = this.goToSubAccounts.bind(this);\r\n\r\n this.state = {\r\n openClientsPayments: false,\r\n searchString: \"\",\r\n clientsList: [],\r\n filteredClientsList: [],\r\n showloading: false,\r\n openSubAccounts: false,\r\n activeClient: {},\r\n contextualMenu: []\r\n };\r\n\r\n this.fetchPaymentList = this.fetchPaymentList.bind(this);\r\n this.openInboxWindow = this.openInboxWindow.bind(this);\r\n }\r\n\r\n componentDidMount() {\r\n this.fetchPaymentList();\r\n this.fetchContextualMenuItems();\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.refresh !== this.props.refresh) {\r\n this.fetchPaymentList();\r\n }\r\n }\r\n\r\n componentWillUnmount() {\r\n if (GetPaymentListServiceCancellationToken !== null && GetPaymentListServiceCancellationToken !== undefined) {\r\n GetPaymentListServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n }\r\n\r\n viewInvoice = rows => {\r\n alert(\"in viewInvoice function\");\r\n }\r\n\r\n uploadInvoice = row => {\r\n\r\n this.props.UpdateSelectedClient(row).then(res => {\r\n if (this.props.history && row && row.orgId) {\r\n this.props.history.push(`/uploadInvoice/${row.orgId}`)\r\n }\r\n });\r\n }\r\n\r\n backFromUploadInvoice = () => {\r\n this.setState({\r\n openUploadInvoice: false\r\n })\r\n }\r\n\r\n goToVendors = row => {\r\n this.props.UpdateSelectedClient(row).then(res => {\r\n if (this.props && this.props.history && row && row.orgId) {\r\n this.props.history.push(`/vendors/${row.orgId}`)\r\n }\r\n });\r\n }\r\n\r\n goToPayments = rows => {\r\n this.setState({\r\n openClientsPayments: true, activeClient: rows\r\n })\r\n\r\n }\r\n\r\n backFromPayments = () => {\r\n this.setState({\r\n openClientsPayments: false\r\n })\r\n }\r\n\r\n handleFormChanges = (evt) => {\r\n let searchString = evt.target.value;\r\n let updatedClientList = cloneDeep(this.state.clientsList);\r\n let searchKeyList = ['name', 'inboxCnt', 'pendingApprovalCnt', 'pendingPayCnt'];\r\n updatedClientList = arrayFilterByValue(updatedClientList, searchString, searchKeyList);\r\n this.setState({ filteredClientsList: updatedClientList, searchString: searchString });\r\n }\r\n\r\n openInboxWindow(deeplinkUrl, ssoUrl) {\r\n\r\n //Have async logging call \r\n billDotComTrackingSsoLogService()\r\n .catch(err => {\r\n console.log(err)\r\n });\r\n\r\n let windowObj = this.props.ssoWindow;\r\n\r\n if (windowObj) {\r\n if (windowObj.closed) {\r\n windowObj = window.open(ssoUrl, 'billpaywindow', 'toolbar=0,location=0,menubar=0,width=' + window.screen.availWidth + \",height=\" + window.screen.availHeight);\r\n this.props.UPDATE_SSO_WINDOW_INSTANCE(windowObj);\r\n }\r\n else {\r\n windowObj = window.open(deeplinkUrl, 'billpaywindow', 'toolbar=0,location=0,menubar=0,width=' + window.screen.availWidth + \",height=\" + window.screen.availHeight);\r\n this.props.UPDATE_SSO_WINDOW_INSTANCE(windowObj);\r\n }\r\n } else {\r\n windowObj = window.open(ssoUrl, 'billpaywindow', 'toolbar=0,location=0,menubar=0,width=' + window.screen.availWidth + \",height=\" + window.screen.availHeight);\r\n this.props.UPDATE_SSO_WINDOW_INSTANCE(windowObj);\r\n }\r\n\r\n\r\n if (windowObj) {\r\n windowObj.focus();\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n\r\n fetchPaymentList() {\r\n this.setState({ showloading: true }, () => {\r\n //gsap.to('.RCM_two_level_table1', {duration: 0 , opacity: 0});\r\n setTimeout(() => {\r\n GetPaymentListService(this.props.user).then(res => {\r\n if (res && res.data && Array.isArray(res.data) && res.data.length > 0) {\r\n\r\n this.setState({ clientsList: res.data, filteredClientsList: res.data, showloading: false }, () => {\r\n animateViewTable();\r\n });\r\n } else {\r\n this.setState({ showloading: false }, () => {\r\n animateViewTable();\r\n })\r\n }\r\n })\r\n .catch(err => {\r\n this.setState({ showloading: false, clientsList: [], filteredClientsList: [] }, () => {\r\n animateViewTable();\r\n message.error(\"We are unable to fetch payments information, you can try again by using refresh option.\");\r\n })\r\n console.error(\"Error Occured while fetching the user vendor list\");\r\n })\r\n }, 500);\r\n });\r\n }\r\n\r\n fetchContextualMenuItems() {\r\n getContextualMenuItems().then(res => {\r\n this.setState({contextualMenu: res})\r\n })\r\n .catch(err => {\r\n console.error(err)\r\n })\r\n }\r\n\r\n goToSubAccounts = rows => {\r\n this.state.activeClient = { ...rows };\r\n this.props.UpdateSelectedClient(rows).then(res => {\r\n this.props.UPDATE_SELECTED_MENU_VALUE(\"2\").then(() => {\r\n if (this.props.history && rows && rows.orgId) {\r\n this.props.history.push(`/subAccount`)\r\n }\r\n })\r\n });\r\n\r\n }\r\n\r\n backSubAccounts = () => {\r\n this.setStat(prevState => ({\r\n openSubAccounts: false\r\n }));\r\n }\r\n\r\n render() {\r\n\r\n if (this.state.showloading) {\r\n return (\r\n
Loading Payment DashBoard\r\n  \r\n
);\r\n }\r\n else {\r\n return (\r\n
\r\n \r\n \r\n
\r\n )\r\n }\r\n }\r\n}\r\n\r\nconst mapStateToProps = (store) => {\r\n return {\r\n user: store.app.user,\r\n refresh: store.app.refresh,\r\n ssoWindow: store.app.ssoWindow,\r\n env: store.app.env\r\n };\r\n}\r\n\r\nconst mapDispatchToProps = {\r\n UpdateSelectedClient,\r\n UPDATE_SSO_WINDOW_INSTANCE,\r\n UPDATE_SELECTED_MENU_VALUE\r\n}\r\nexport default connect(mapStateToProps, mapDispatchToProps)(withRouter(DashBoard));","import React from 'react'\r\nimport { useState } from 'react'\r\nimport { Route, Switch, useHistory, useRouteMatch, useLocation } from 'react-router-dom'\r\nimport {Tabs,} from 'antd'\r\nimport Notfound from '../../common/notfound';\r\nimport WiresList from '../admin/wiresdetails/wireslist'\r\nimport FailedPayments from '../admin/failedpayments/failedpayments'\r\nimport DashBoard from './DashBoard'\r\nimport { useCallback } from 'react';\r\nimport { useEffect } from 'react';\r\n\r\nconst { TabPane } = Tabs;\r\n\r\nfunction DashBoardContainer() {\r\n let history = useHistory()\r\n let { url } = useRouteMatch()\r\n let { pathname } = useLocation()\r\n const [activeTabKey, setActiveTabKey] = useState('dashboard')\r\n\r\n const onTabChanges = useCallback((tabKey) => {\r\n const newlocation = tabKey === \"dashboard\" ? \"/dashboard\" : `${url}/${tabKey}`\r\n history.push(newlocation)\r\n setActiveTabKey(tabKey)\r\n }, [])\r\n\r\n useEffect(() => {\r\n let tabKey = ''\r\n if(pathname === url) {\r\n history.push('/dashboard')\r\n tabKey = 'dashboard'\r\n }\r\n else if(pathname === `${url}/payments`) {\r\n tabKey = 'payments'\r\n }\r\n else if(pathname === `${url}/failedPayments`) {\r\n tabKey = 'failedPayments'\r\n }\r\n setActiveTabKey(tabKey)\r\n }, [pathname])\r\n\r\n\r\n return (\r\n
\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n {\r\n \r\n ()} />\r\n ()} />\r\n ()} />\r\n \r\n \r\n }\r\n
\r\n )\r\n}\r\n\r\nexport default DashBoardContainer\r\n","import React, { Component } from 'react'\r\nimport { connect } from 'react-redux';\r\nimport { withRouter} from 'react-router-dom';\r\nimport ClientVisibility from './admin/clientVisibility/clientVisibility';\r\nimport DiscrtionaryDistribution from './discretionarydistrequest/discrtionarydistribution';\r\nimport { getPreferenceValue } from '../common/utilities';\r\nimport {UPDATE_SELECTED_MENU_VALUE} from '../actions/appActions';\r\nimport DashBoardContainer from './dashboard/DashBoardContainer';\r\n\r\nclass Home extends Component {\r\n\r\n constructor(props){\r\n super(props)\r\n this.currentComponet = [];\r\n\r\n if(getPreferenceValue(this.props.faFeatures, 'DASHBOARD') === 'Y'){\r\n this.currentComponet.push();\r\n this.props.UPDATE_SELECTED_MENU_VALUE('1');\r\n }else if(getPreferenceValue(this.props.faFeatures, 'ADMIN') === 'Y'){\r\n this.currentComponet.push();\r\n this.props.UPDATE_SELECTED_MENU_VALUE('2');\r\n }else if(getPreferenceValue(this.props.faFeatures, 'DISCRETIONARY_DISTRIBUTION') === 'Y'){\r\n this.currentComponet.push()\r\n this.props.UPDATE_SELECTED_MENU_VALUE('3');\r\n }\r\n }\r\n\r\n\r\n render() {\r\n return (\r\n <>\r\n {this.currentComponet.map((comp, index) => {\r\n return (\r\n
{comp}
\r\n )\r\n })\r\n }\r\n \r\n )\r\n }\r\n}\r\n\r\n\r\nconst mapStateToProps = (store) => {\r\n return {\r\n user: store.app.user,\r\n refresh: store.app.refresh,\r\n env: store.app.env,\r\n faFeatures : store.app.faFeatures\r\n };\r\n}\r\n\r\nconst mapDispatchToProps = {\r\n UPDATE_SELECTED_MENU_VALUE\r\n}\r\nexport default connect(mapStateToProps, mapDispatchToProps)(withRouter(Home));\r\n","import { ApplicationInsights } from '@microsoft/applicationinsights-web';\r\nimport { ReactPlugin } from '@microsoft/applicationinsights-react-js';\r\nimport { createBrowserHistory } from \"history\";\r\nimport { store } from '..';\r\nimport { getNestedObject } from './common';\r\n\r\nexport class TelemetryService {\r\n constructor() {\r\n let sessionInstrumentationKey = getNestedObject(store.getState(), ['app', 'env', 'APPINSIGHTS_INSTRUMENTATIONKEY']);\r\n if(sessionInstrumentationKey){\r\n this.instrumentationKey = sessionInstrumentationKey;\r\n }\r\n const browserHistory = createBrowserHistory({ basename: '' });\r\n this.reactPlugin = new ReactPlugin();\r\n this.appInsights = new ApplicationInsights({\r\n config: {\r\n instrumentationKey: this.instrumentationKey,\r\n maxBatchInterval: 0,\r\n disableFetchTracking: true,\r\n disableAjaxTracking: true,\r\n isStorageUseDisabled: true\r\n },\r\n extensions: [this.reactPlugin],\r\n extensionConfig: {\r\n [this.reactPlugin.identifier]: { history: browserHistory }\r\n }\r\n });\r\n this.appInsights.loadAppInsights();\r\n \r\n }\r\n}\r\n//export let ai = new TelemetryService();","import {TelemetryService} from \"./TelemetryService\";\r\nimport { SeverityLevel } from '@microsoft/applicationinsights-web';\r\nimport { getNestedObject } from \"../common/common\";\r\nimport {store} from \"../index\";\r\n\r\nexport function _logException(errorMessage)\r\n{\r\n try {\r\n let ai = new TelemetryService();\r\n ai.appInsights.clearAuthenticatedUserContext();\r\n\r\n let telemetryInitializer = getTelemetryInitializer();\r\n if(telemetryInitializer !== null){\r\n ai.appInsights.addTelemetryInitializer(getTelemetryInitializer());\r\n } \r\n ai.appInsights.trackException({ error: new Error(`${JSON.stringify(errorMessage)}`), severityLevel: SeverityLevel.Error }, addCustomData());\r\n ai.appInsights.flush();\r\n } catch (err) {\r\n console.log(\"Unable to log exception \", err);\r\n }\r\n}\r\n\r\nexport function _logInformation(infoMessage)\r\n{\r\n try{\r\n let ai = new TelemetryService();\r\n ai.appInsights.clearAuthenticatedUserContext();\r\n \r\n let telemetryInitializer = getTelemetryInitializer();\r\n if(telemetryInitializer !== null){\r\n ai.appInsights.addTelemetryInitializer(getTelemetryInitializer());\r\n }\r\n\r\n ai.appInsights.trackTrace({ message: `${JSON.stringify(infoMessage)}`, severityLevel: SeverityLevel.Information }, addCustomData());\r\n ai.appInsights.flush();\r\n }catch(err)\r\n {\r\n console.log(\"Unable to log tarces \", err);\r\n }\r\n}\r\n\r\nexport function _logEvent(eventName)\r\n{\r\n try{\r\n \r\n let ai = new TelemetryService();\r\n ai.appInsights.clearAuthenticatedUserContext();\r\n let telemetryInitializer = getTelemetryInitializer();\r\n if(telemetryInitializer !== null){\r\n ai.appInsights.addTelemetryInitializer(getTelemetryInitializer());\r\n } \r\n ai.appInsights.trackEvent({ name: eventName }, addCustomData());\r\n ai.appInsights.flush();\r\n }catch(err){\r\n console.log(\"Unable to log event \", err);\r\n }\r\n}\r\n\r\nexport function _logPageView(pageView){\r\n\r\n try{\r\n let ai = new TelemetryService();\r\n ai.appInsights.clearAuthenticatedUserContext();\r\n \r\n let telemetryInitializer = getTelemetryInitializer();\r\n if(telemetryInitializer !== null){\r\n ai.appInsights.addTelemetryInitializer(getTelemetryInitializer());\r\n }\r\n\r\n ai.appInsights.trackPageView(pageView);\r\n ai.appInsights.flush();\r\n }catch(err)\r\n {\r\n\r\n }\r\n}\r\n\r\nfunction getTelemetryInitializer()\r\n{\r\n let telemetryInitializer =null;\r\n let user = store.getState().app.user;\r\n if(user)\r\n {\r\n let userName = user.userName;\r\n\r\n telemetryInitializer = (envelope) => {\r\n envelope.tags['ai.user.id'] = userName;\r\n envelope.tags['ai.user.authUserId'] = userName;\r\n };\r\n }\r\n\r\n return telemetryInitializer;\r\n}\r\n\r\nfunction addCustomData(){\r\n let customData = {};\r\n let user = store.getState().app.user;\r\n if(user)\r\n {\r\n customData.userName = getNestedObject(user, ['name']);\r\n customData.azureAdId = getNestedObject(user, ['idTokenClaims', 'oid']);\r\n customData.userEmail = getNestedObject(user, ['idTokenClaims', 'preferred_username']);\r\n }\r\n return customData;\r\n}\r\n\r\n","/**\r\n * Get MSAL Instance and Logging feature\r\n */\r\n\r\nimport { PublicClientApplication } from \"@azure/msal-browser\";\r\nimport { LogLevel } from \"msal\";\r\nimport { version } from \"../../package.json\";\r\nimport { getNestedObject, decodeJwtToken } from \"../common/common.js\";\r\nimport { _logInformation, _logException } from \"../common/_logging.js\";\r\n\r\nexport default class ClientOnlineMsalProvider {\r\n msalInstance = null;\r\n msalConfig = null;\r\n\r\n getMsalInstance = (env) => {\r\n let is_safari = navigator.userAgent.indexOf(\"Safari\") > -1;\r\n let config = {\r\n auth: {\r\n clientId: env.REACT_APP_AZURE_CLIENTID,\r\n authority: env.REACT_APP_AZURE_AUTHORITY,\r\n postLogoutRedirectUri: window.location.origin,\r\n redirectUri: window.location.origin,\r\n navigateToLoginRequestUrl: false,\r\n },\r\n cache: {\r\n cacheLocation: \"localStorage\",\r\n storeAuthStateInCookie: false,\r\n storeInMemory: true,\r\n },\r\n system: {\r\n iframeHashTimeout: is_safari ? 10000 : 60000,\r\n windowHashTimeout: 60000,\r\n loadFrameTimeout: 500,\r\n loggerOptions: {\r\n logLevel: LogLevel.Verbose,\r\n loggerCallback: this.msalLogger,\r\n piiLoggingEnabled: true,\r\n },\r\n telemetry: {\r\n applicationName: \"Rockefeller Client Online\",\r\n applicationVersion: version,\r\n },\r\n tokenRenewalOffsetSeconds: 300,\r\n },\r\n };\r\n\r\n this.msalConfig = config;\r\n this.msalInstance = new PublicClientApplication(config);\r\n\r\n return this.msalInstance;\r\n };\r\n\r\n msalLogger = (level, message, containPii) => {\r\n switch (level) {\r\n case LogLevel.Error: {\r\n console.error(message);\r\n _logException(message);\r\n break;\r\n }\r\n\r\n case LogLevel.Warning: {\r\n console.warn(message);\r\n _logInformation(message);\r\n break;\r\n }\r\n\r\n default: {\r\n console.log(message);\r\n _logInformation(message);\r\n break;\r\n }\r\n }\r\n };\r\n\r\n interactionBasedLogin = (loginHint, scopes, prompt) => {\r\n prompt = prompt ? prompt : \"none\";\r\n const tokenRequest = {\r\n scopes: [...scopes],\r\n prompt,\r\n loginHint,\r\n forceRefresh: true,\r\n };\r\n this.msalInstance.acquireTokenRedirect(tokenRequest);\r\n };\r\n\r\n ssoLogin = (loginHint, scopes) => {\r\n const ssoRequest = {\r\n ...scopes,\r\n loginHint,\r\n forceRefresh: true,\r\n };\r\n return this.msalInstance.ssoSilent(ssoRequest);\r\n };\r\n}\r\n\r\nexport const getLoggedInUser = (token) => {\r\n let user = { name: \"\", userName: \"\", preferred_username: \"\" };\r\n\r\n let parsedToken = decodeJwtToken(token);\r\n if (parsedToken !== null) {\r\n user.name = getNestedObject(parsedToken, [\"name\"]);\r\n user.userName = getNestedObject(parsedToken, [\"preferred_username\"]);\r\n user.preferred_username = getNestedObject(parsedToken, [\r\n \"preferred_username\",\r\n ]);\r\n }\r\n\r\n return user;\r\n};\r\n\r\nexport const isTokenRefreshRequired = (token, intervalTime) => {\r\n let isRefreshRequired = false;\r\n\r\n if (token) {\r\n let parsedToken = decodeJwtToken(token);\r\n if (parsedToken !== null) {\r\n let issuedTime = getNestedObject(parsedToken, [\"iat\"]);\r\n let expirationTime = getNestedObject(parsedToken, [\"exp\"]);\r\n let currentTime = new Date().valueOf() / 1000;\r\n console.log(\r\n `Issued Time:: ${issuedTime} Expiration Time:: ${expirationTime} Current Time:: ${currentTime}`\r\n );\r\n\r\n if (expirationTime <= currentTime + intervalTime / 1000) {\r\n isRefreshRequired = true;\r\n }\r\n }\r\n }\r\n\r\n return isRefreshRequired;\r\n};\r\n","import React from 'react'\r\nimport { Button, Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap';\r\nimport { withRouter } from 'react-router-dom';\r\nimport { connect } from 'react-redux';\r\n\r\nclass GenericMessageModal extends React.PureComponent {\r\n\r\n constructor(props){\r\n super(props);\r\n \r\n this.movetodashboard = this.movetodashboard.bind(this);\r\n }\r\n\r\n movetodashboard(){\r\n if(this.props.history){\r\n this.props.history.push('/');\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {this.props.message}\r\n
\r\n
\r\n
\r\n \r\n {\r\n <>\r\n \r\n \r\n }\r\n \r\n \r\n
\r\n )\r\n }\r\n}\r\n\r\n\r\nexport default withRouter(GenericMessageModal);","import React from 'react';\r\nimport { MsgForNoData } from '../../common/constants';\r\nimport Messages from '../../common/messages.jsx';\r\nimport { Form, FormGroup, Label, DropdownToggle, DropdownMenu, Dropdown, DropdownItem } from 'reactstrap';\r\nimport GenericMessageModal from '../../common/genericMsgModal';\r\n\r\nexport function SetupBillsView(\r\n props\r\n) {\r\n let setupbillsview = (\r\n
\r\n {/*
\r\n
\r\n \r\n
\r\n
*/}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n {props && props.state ?\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n {(props.state.billInformation.vendorpaymenttype === \"WIRE\") &&\r\n
\r\n
\r\n
\r\n
\r\n
\r\n VENDOR BASICS\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n props.handleVendorNameChange(s)}\r\n />\r\n\r\n {\r\n (props && props.state && props.state.messages && props.state.messages.vendorNameErr && props.state.messages.vendorNameErr !== '')\r\n && \r\n } \r\n
\r\n
\r\n {\r\n props.state.isLargeVendor ||\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n {props.state.billInformation.vendorbasics.vendortype}\r\n \r\n {\r\n
\r\n {props.state.typesOfVendors.map((item, index) =>\r\n props.typesOfVendorChange(item)}>\r\n
{item && item.name ? item.name : ''}
\r\n
\r\n )}\r\n
\r\n }\r\n
\r\n
\r\n\r\n {\r\n (props && props.state && props.state.messages && props.state.messages.vendorTypeErr && props.state.messages.vendorTypeErr !== '')\r\n && \r\n } \r\n
\r\n
\r\n }\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n {props.state.billInformation.vendorpayterm}\r\n \r\n {\r\n
\r\n {props.state.payTermsList.map((item, index) =>\r\n props.handlePayTermChange(item)}>\r\n
{item && item.value ? item.value : ''}
\r\n
\r\n )}\r\n
\r\n }\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n WIRE PAYMENT INFORMATION\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {\r\n props.state.billInformation.vendorpayterm !== 'NFS Wire' ?\r\n \r\n :\r\n \r\n {props.state.billInformation.paymentinfo.accountNumber}\r\n \r\n {\r\n
\r\n {props.state.clientFromAccts.map((acct, index) =>\r\n props.handleFromAcctChange(acct)}>\r\n
{acct && acct.accountNo ? acct.accountNo : ''}
\r\n
\r\n )}\r\n
\r\n }\r\n
\r\n
\r\n }\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {props.state.billInformation.paymentinfo.partydisplayvalue}\r\n \r\n {\r\n
\r\n {props.state.typesOfParties.map((item, index) =>\r\n props.typesOfPartyChange(item)}>\r\n
{item && item.name ? item.name : ''}
\r\n
\r\n )}\r\n
\r\n }\r\n
\r\n
\r\n
\r\n {\r\n (props && props.state && props.state.messages && props.state.messages.countryErr && props.state.messages.countryErr !== '')\r\n && \r\n }\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {\r\n (props && props.state && props.state.messages && props.state.messages.countryErr && props.state.messages.countryErr !== '')\r\n && \r\n }\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n {\r\n (props && props.state && props.state.messages && props.state.messages.routingNumErr && props.state.messages.routingNumErr !== '')\r\n && \r\n }\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n BENEFICIARY DETAILS\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n DETAILS\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n FURTHER CREDIT 1\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n FURTHER CREDIT 2 \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n }\r\n {\r\n props.mode && props.mode === 'VIEW' || (\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n )\r\n }\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n :
{MsgForNoData}
\r\n }\r\n\r\n \r\n\r\n
\r\n )\r\n return setupbillsview\r\n}","import { validateABAUrl, apiBaseUrl, getEligibleFromAccturl} from \"../serviceConstant\";\r\nimport { errorMsg} from \"../../common/constants\";\r\nimport { Get } from \"../servicecalls\";\r\nimport axios from \"axios\";\r\n\r\n\r\nexport var validateABACancellationToken = null;\r\nexport var getEligibleFromAccountCancellationToken = null;\r\n\r\nexport const validateABA = (abaNumber, token, contextJson, profileJson) => {\r\n\r\n if (validateABACancellationToken !== null && validateABACancellationToken !== undefined) {\r\n validateABACancellationToken.cancel(\"Cancel existing validate ABA request to revent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n validateABACancellationToken = cancelToken.source();\r\n\r\n\r\n\r\n let validateABAPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = apiBaseUrl() +\"/\" + validateABAUrl.replace(/ABANumber/g, abaNumber);\r\n Get(url, token, contextJson, profileJson, validateABACancellationToken).then(res => {\r\n // get the response in case of successful call.\r\n console.log(\"Manage external account :: validate ABA\", res);\r\n if (res.data !== null\r\n && res.data != undefined\r\n && res.data.value !== null\r\n && res.data.value !== undefined\r\n && Array.isArray(res.data.value)\r\n && res.data.value.length > 0) {\r\n let abaResponse = res.data.value[0];\r\n if (abaResponse.status !== null\r\n && abaResponse.status !== undefined\r\n && abaResponse.status.Code !== null\r\n && abaResponse.status.Code !== undefined\r\n && abaResponse.status.Code === \"000000\") {\r\n resolve(res.data.value[0]);\r\n } else {\r\n reject(errorMsg);\r\n }\r\n\r\n } else {\r\n console.log(\"Manage External Account Service Non Zero : Validate ABA :: \");\r\n reject(errorMsg);\r\n }\r\n\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel()) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure.\r\n console.error(\"Manage External Account Service : Validate ABA :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n\r\n });\r\n return validateABAPromise;\r\n};\r\n\r\nexport const getEligibleFromAccount = (orgid) => {\r\n\r\n //Check if cancellation token has value;\r\n if(getEligibleFromAccountCancellationToken !== null && getEligibleFromAccountCancellationToken !== undefined)\r\n {\r\n //Cancel the existing call\r\n getEligibleFromAccountCancellationToken.cancel('Cancelling the existing eligible pair request to prevent memory leaks.');\r\n }\r\n \r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getEligibleFromAccountCancellationToken = cancelToken.source(); \r\n\r\n let getEligibleFromAccountPromise = new Promise(\r\n function (resolve, reject) {\r\n if (orgid) {\r\n //Call eligible pair service \r\n let url = `${apiBaseUrl()}/${getEligibleFromAccturl}?orgid=${orgid}` \r\n Get(url, getEligibleFromAccountCancellationToken).then(res => {\r\n // get the response in case of successful call. \r\n if(res.data && res.data.length > 0){\r\n resolve(res.data);\r\n }else{\r\n resolve([]);\r\n }\r\n })\r\n .catch((error) => {\r\n if(axios.isCancel(error))\r\n {\r\n console.log(error);\r\n }else{\r\n //Log the error on console incase of failure.\r\n console.error(\"Reterive from account error :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n }\r\n else {\r\n console.error(\"Invalid orgid provided\");\r\n reject(errorMsg);\r\n }\r\n\r\n }\r\n );\r\n\r\n return getEligibleFromAccountPromise;\r\n}\r\n","export function generatePaymentInstructionRequest(billInformation, type, mode, selectedClient, wireInstruction){\r\n switch(type){\r\n case 'CHECK': {\r\n return generateCheckPmtInst(billInformation)\r\n }\r\n \r\n case 'ACH': {\r\n return generateAchPmtInst(billInformation);\r\n }\r\n\r\n case 'WIRE': {\r\n return generateWirePmtInst(billInformation, mode, selectedClient, wireInstruction);\r\n }\r\n\r\n case 'INVITE': {\r\n return generateInvitePmtInst(billInformation);\r\n }\r\n\r\n default :{\r\n break;\r\n }\r\n }\r\n}\r\n\r\nfunction generateCheckPmtInst(billInformation){\r\n return {\r\n \"vendorParentId\": billInformation && billInformation.vendorparentid ? billInformation.vendorparentid : '',\r\n \"description\": '',\r\n \"nameOnCheck\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.paytoname ? billInformation.paymentinfo.paytoname: ''\r\n }\r\n}\r\n\r\nfunction generateAchPmtInst(billInformation){\r\n \r\n}\r\n\r\nfunction generateWirePmtInst(billInformation, mode, selectedClient, wireInstruction){\r\n return {\r\n \"Mode\": mode,\r\n \"OrgId\": selectedClient.orgId,\r\n \"Id\": mode === 'UPDATE'? (wireInstruction ? wireInstruction.id : null ) : null,\r\n \"AccNumber\": billInformation && billInformation.vendorbasics && billInformation.vendorbasics.accountnumberwithvendor ? billInformation.vendorbasics.accountnumberwithvendor : \"\",\r\n \"AccountType\": billInformation && billInformation.vendorbasics && billInformation.vendorbasics.vendortypevalue ? billInformation.vendorbasics.vendortypevalue : \"0\",\r\n \"Name\": billInformation && billInformation.vendorbasics && billInformation.vendorbasics.vendorname ? billInformation.vendorbasics.vendorname : \"\",\r\n \"PaymentTermId\": billInformation && billInformation.vendorpaytermrefcode ? billInformation.vendorpaytermrefcode: '',\r\n \"wireInstruction\": {\r\n \"IsThirdParty\": billInformation && billInformation.paymentinfo ? billInformation.paymentinfo.isThirdParty: '',\r\n \"BankAcctFromBankIdType\": null, //Not Required\r\n \"BankAcctFromBankId\": null, // Not Required\r\n \"BankAcctFromAcctId\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.accountNumber ? billInformation.paymentinfo.accountNumber : '',\r\n \"BankAcctFromAcctType\": null, //Not required\r\n \"BankAcctFromName\": null, //Not Required\r\n \"BeneficiaryBankRoutingType\": \"A\",\r\n \"BeneficiaryBankRoutingId\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.routingNumber ? billInformation.paymentinfo.routingNumber :'',\r\n \"BeneficiaryBankName\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.bankName ? billInformation.paymentinfo.bankName :'',\r\n \"BeneficiaryAcctId\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.beneficiaryDetailsVendorname ? billInformation.paymentinfo.beneficiaryDetailsAccountNumber : '',\r\n \"BeneficiaryAcctType\": null,\r\n \"BeneficiaryName\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.beneficiaryDetailsVendorname ? billInformation.paymentinfo.beneficiaryDetailsVendorname : '',\r\n \"BeneficiaryNameAddrLine1\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.beneficiaryDetailsVendorname ? billInformation.paymentinfo.beneficiaryDetailsAddressline1 : '',\r\n \"BeneficiaryNameAddrLine2\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.beneficiaryDetailsVendorname ? billInformation.paymentinfo.beneficiaryDetailsAddressline2 : '',\r\n \"BeneficiaryNameAddrLine3\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.beneficiaryDetailsVendorname ? billInformation.paymentinfo.beneficiaryDetailsAddressline3 : '',\r\n \"BeneficiaryNameAddrLine4\": null,\r\n \"FurtherCredit1_AccountNumber\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.furtherCreditAccountNumber ? billInformation.paymentinfo.furtherCreditAccountNumber: '',\r\n \"FurtherCredit1_NameLine1\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.furtherCreditName ? billInformation.paymentinfo.furtherCreditName :\"\",\r\n \"FurtherCredit1_NameLine2\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.furtherCreditAddressLine1 ? billInformation.paymentinfo.furtherCreditAddressLine1 : \"\",\r\n \"FurtherCredit1_NameLine3\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.furtherCreditAddressLine2 ? billInformation.paymentinfo.furtherCreditAddressLine2 : \"\",\r\n \"FurtherCredit1_NameLine4\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.furtherCreditAddressLine3 ? billInformation.paymentinfo.furtherCreditAddressLine3 : \"\",\r\n \"FurtherCredit2_AccountNumber\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.furtherCredit2AccountNumber ? billInformation.paymentinfo.furtherCredit2AccountNumber: '',\r\n \"FurtherCredit2_NameLine1\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.furtherCredit2Name ? billInformation.paymentinfo.furtherCredit2Name :\"\",\r\n \"FurtherCredit2_NameLine2\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.furtherCredit2AddressLine1 ? billInformation.paymentinfo.furtherCredit2AddressLine1 : \"\",\r\n \"FurtherCredit2_NameLine3\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.furtherCredit2AddressLine2 ? billInformation.paymentinfo.furtherCredit2AddressLine2 : \"\",\r\n \"FurtherCredit2_NameLine4\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.furtherCredit2AddressLine3 ? billInformation.paymentinfo.furtherCredit2AddressLine3 : \"\",\r\n \"WireDisbursementDetail1\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.line1 ? billInformation.paymentinfo.line1 : \"\",\r\n \"WireDisbursementDetail2\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.line2 ? billInformation.paymentinfo.line2 : \"\",\r\n \"WireDisbursementDetail3\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.line3 ? billInformation.paymentinfo.line3 : \"\",\r\n \"WireDisbursementDetail4\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.line4 ? billInformation.paymentinfo.line4 : \"\",\r\n \"DestinationCountry\": billInformation && billInformation.paymentinfo && billInformation.paymentinfo.country ? billInformation.paymentinfo.country : \"\",\r\n \"DisplayName\": \"\"\r\n }\r\n }\r\n\r\n}\r\n\r\nfunction generateInvitePmtInst(billInformation){\r\n \r\n}\r\n\r\n\r\nexport const isVendorNameExist = (name, vendorlist) => {\r\n let isVendorNameExist = false;\r\n\r\n if(vendorlist && Array.isArray(vendorlist) && vendorlist.length > 0){\r\n for(let i=0; i< vendorlist.length; i++){\r\n if(vendorlist[i].name && name && vendorlist[i].name.toLowerCase() === name.toLowerCase()){\r\n isVendorNameExist = true;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n return isVendorNameExist;\r\n}","\r\nimport { ADD_WIRE_INSTRUCTION, UPDATE_CLIENT_VENDORLIST } from \"./actionTypes\";\r\n\r\nexport const ViewWireInstructions = (row, mode) => (dispatch) => {\r\n return Promise.resolve(\r\n dispatch({\r\n type: ADD_WIRE_INSTRUCTION,\r\n payload: row,\r\n mode: mode\r\n })\r\n )\r\n }\r\n\r\n export const UpdateClientVendorsList = (list) => (dispatch) => {\r\n return Promise.resolve(\r\n dispatch({\r\n type: UPDATE_CLIENT_VENDORLIST,\r\n payload: list\r\n })\r\n )\r\n }","import React, { Component } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { SetupBillsView } from './setupbillsview.jsx';\r\nimport { MessageType, MessageClass, MsgForFailedData, NoClientFoundSetupBill } from '../../common/constants';\r\nimport { getVendorService, getCountryStateService, CreateVendorPaymentInstructionForWireService, getWireInstructions, getPayTerms } from '../../services/billpayservice/billpayservices';\r\nimport { validateABA, validateABACancellationToken, getEligibleFromAccount } from \"../../services/externalaccountservice/externalAccountService\";\r\nimport { generatePaymentInstructionRequest, isVendorNameExist } from './setupBillUtility.js';\r\nimport { ViewWireInstructions } from '../../actions/vendorsAction';\r\nimport * as cloneDeep from 'lodash/cloneDeep';\r\nimport { wireInstructionFormAnimation } from '../../common/animation.js';\r\nimport { Spinner } from 'reactstrap';\r\nimport { message } from 'antd';\r\n\r\nclass SetupBills extends Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.toggle = this.toggle.bind(this);\r\n this.handleFormChanges = this.handleFormChanges.bind(this);\r\n this.cancel = this.cancel.bind(this);\r\n this.save = this.save.bind(this);\r\n this.typesOfVendorToggle = this.typesOfVendorToggle.bind(this);\r\n this.typesOfVendorChange = this.typesOfVendorChange.bind(this);\r\n this.toggleAutoPaySetup = this.toggleAutoPaySetup.bind(this);\r\n this.checkPhoneNoFormat = this.checkPhoneNoFormat.bind(this);\r\n this.checkEmailFormat = this.checkEmailFormat.bind(this);\r\n this.vendorToggle = this.vendorToggle.bind(this);\r\n this.vendorChange = this.vendorChange.bind(this);\r\n this.combinePaymentsToggle = this.combinePaymentsToggle.bind(this);\r\n this.combinePaymentsChange = this.combinePaymentsChange.bind(this);\r\n this.handleOnBlur = this.handleOnBlur.bind(this);\r\n this.disableNextBtn = this.disableNextBtn.bind(this);\r\n this.isSaveDisabled = this.isSaveDisabled.bind(this);\r\n this.clearData = this.clearData.bind(this);\r\n this.getVendorList = this.getVendorList.bind(this);\r\n this.accountOwnershipToggle = this.accountOwnershipToggle.bind(this);\r\n this.accountOwnershipChange = this.accountOwnershipChange.bind(this);\r\n this.getBankName = this.getBankName.bind(this);\r\n this.handleNewStandingInstructionChange = this.handleNewStandingInstructionChange.bind(this);\r\n this.handleVendorNameChange = this.handleVendorNameChange.bind(this);\r\n this.handleVendorNameOnBlur = this.handleVendorNameOnBlur.bind(this);\r\n this.getCountryStateList = this.getCountryStateList.bind(this);\r\n this.addressCountryToggle = this.addressCountryToggle.bind(this);\r\n this.stateProvinceChange = this.stateProvinceChange.bind(this);\r\n this.addressCountryChange = this.addressCountryChange.bind(this);\r\n this.stateProvinceToggle = this.stateProvinceToggle.bind(this);\r\n this.typesOfPartyToggle = this.typesOfPartyToggle.bind(this);\r\n this.typesOfPartyChange = this.typesOfPartyChange.bind(this);\r\n\r\n this.prepopulateData = this.prepopulateData.bind(this);\r\n this.backFromVendors = this.backFromVendors.bind(this);\r\n this.fromAcctToggle = this.fromAcctToggle.bind(this);\r\n this.payTermToggle = this.payTermToggle.bind(this);\r\n this.handleFromAcctChange = this.handleFromAcctChange.bind(this);\r\n this.handlePayTermChange = this.handlePayTermChange.bind(this);\r\n\r\n this.requesterId = \"\";\r\n if (this.props.portalid !== null && this.props.portalid !== undefined) {\r\n this.requesterId = this.props.portalid;\r\n }\r\n\r\n this.authToken = \"\";\r\n if (this.props.token !== null && this.props.token !== undefined) {\r\n this.authToken = this.props.token;\r\n }\r\n\r\n this.contextjson = null;\r\n if (this.props.contextjson !== null && this.props.contextjson !== undefined) {\r\n this.contextjson = this.props.contextjson;\r\n }\r\n\r\n this.profilejson = null;\r\n if (this.props.profilejson !== null && this.props.profilejson !== undefined) {\r\n this.profilejson = this.props.profilejson;\r\n }\r\n\r\n this.state = {\r\n activeTab: '1',\r\n billInformation: {\r\n vendorbasics: {\r\n vendorname: \"\",\r\n vendortype: \"\",\r\n vendortypevalue: \"\",\r\n primarycontactemail: \"\",\r\n accountnumberwithvendor: \"\",\r\n vendorZipcode: \"\"\r\n },\r\n vendoraddress: {\r\n country: \"\",\r\n addressline1: \"\",\r\n addressline2: \"\",\r\n addressline3: \"\",\r\n addressline4: \"\",\r\n city: \"\",\r\n stateprovince: \"\",\r\n zippostalcode: \"\",\r\n },\r\n vendorbanklocation: \"\",\r\n vendorpaymenttype: \"WIRE\",\r\n vendorparentid: '',\r\n vendorpayterm: '',\r\n vendorpaytermrefcode: '',\r\n autopaysetup: false,\r\n paymentinfo: {\r\n paytoname: \"\",\r\n paymentnotificationemail: \"\",\r\n phone: \"\",\r\n fax: \"\",\r\n accountOwnership: \"\",\r\n accountNickname: \"\",\r\n bankName: \"\",\r\n accountNumber: \"\",\r\n routingNumber: \"\",\r\n wirePurpose: \"\",\r\n line1: \"\",\r\n line2: \"\",\r\n line3: \"\",\r\n line4: \"\",\r\n newStandingInstruction: false,\r\n standingInstructionNickname: \"\",\r\n furtherCreditAccountNumber: \"\",\r\n furtherCreditName: \"\",\r\n furtherCreditAddressLine1: \"\",\r\n furtherCreditAddressLine2: \"\",\r\n furtherCreditAddressLine3: \"\",\r\n beneficiaryDetailsAccountNumber: \"\",\r\n beneficiaryDetailsVendorname: \"\",\r\n beneficiaryDetailsAddressline1: \"\",\r\n beneficiaryDetailsAddressline2: \"\",\r\n beneficiaryDetailsAddressline3: \"\",\r\n furtherCredit2AccountNumber: \"\",\r\n furtherCredit2Name: \"\",\r\n furtherCredit2AddressLine1: \"\",\r\n furtherCredit2AddressLine2: \"\",\r\n furtherCredit2AddressLine3: \"\",\r\n country: 'US',\r\n isThirdParty: false,\r\n partydisplayvalue: ''\r\n },\r\n contacts: {\r\n firstname: \"\",\r\n lastname: \"\"\r\n },\r\n vendordescription: \"\",\r\n additionalInformation: {\r\n taxid: \"\",\r\n vendor: \"\",\r\n vendorsince: \"\",\r\n leadtimedays: \"\",\r\n combinepayments: \"\",\r\n paymentterms: \"\",\r\n companyname: \"\"\r\n\r\n }\r\n },\r\n validationBillInformation: {\r\n vendorbasics: {\r\n vendorname: false,\r\n vendortype: false,\r\n primarycontactemail: true,\r\n },\r\n vendoraddress: {\r\n country: false\r\n },\r\n vendorbanklocation: false,\r\n paymentinfo: {\r\n paymentnotificationemail: true,\r\n phone: true,\r\n fax: true,\r\n routingNumber: false,\r\n wirePurpose: false,\r\n },\r\n },\r\n isTypesOfVendorOpen: false,\r\n isTypesOfPartyOpen: false,\r\n isFromAcctOpen: false,\r\n isPayTermOpen: false,\r\n typesOfVendors: [{'name': \"Business\", 'value': \"1\"}, {'name': \"Individual\", 'value': \"2\"}],\r\n typesOfParties: [{'name': \"1st Party\", 'value': false}, {'name': \"3rd Party\", 'value': true}],\r\n isVendorOpen: false,\r\n listOfVendors: [\"Vendor1\", \"Vendor2\"],\r\n isCombinePaymentsOpen: false,\r\n combinePaymentsTypes: [\"Yes\", \"No\"],\r\n isPaymentTermsOpen: false,\r\n paymentTermsTypes: [\"Term Type 1\", \"Term Type 2\", \"Term Type 3\"],\r\n isAddressCountryOpen: false,\r\n isStateProvinceOpen: false,\r\n errorMsg: \"\",\r\n messages: {},\r\n vendorList: [],\r\n payTermsList: [],\r\n isAccountOwnershipOpen: false,\r\n accountOwnershipTypes: [{ \"value\": \"self\", \"description\": \"My Account\" }, { \"value\": \"other\", \"description\": \"Someone Else's Account\" }],\r\n vendorOptions: [],\r\n isLargeVendor: false,\r\n isloading: true,\r\n requestFailed: false,\r\n stateList: [{ \"statecode\": \"AK\", \"statename\": \"ALASKA\" }, { \"statecode\": \"AL\", \"statename\": \"ALABAMA\" }, { \"statecode\": \"AR\", \"statename\": \"ARKANSAS\" }, { \"statecode\": \"AS\", \"statename\": \"AMERICAN SAMOA\" }, { \"statecode\": \"AZ\", \"statename\": \"ARIZONA\" }, { \"statecode\": \"CA\", \"statename\": \"CALIFORNIA\" }, { \"statecode\": \"CO\", \"statename\": \"COLORADO\" }, { \"statecode\": \"CT\", \"statename\": \"CONNECTICUT\" }, { \"statecode\": \"CZ\", \"statename\": \"CANAL ZONE\" }, { \"statecode\": \"DC\", \"statename\": \"DISTRICT OF COLUMBIA\" }, { \"statecode\": \"DE\", \"statename\": \"DELAWARE\" }, { \"statecode\": \"FL\", \"statename\": \"FLORIDA\" }, { \"statecode\": \"FM\", \"statename\": \"FEDERATED STATES OF MICRONESIA\" }, { \"statecode\": \"GA\", \"statename\": \"GEORGIA\" }, { \"statecode\": \"GU\", \"statename\": \"GUAM\" }, { \"statecode\": \"HI\", \"statename\": \"HAWAII\" }, { \"statecode\": \"IA\", \"statename\": \"IOWA\" }, { \"statecode\": \"ID\", \"statename\": \"IDAHO\" }, { \"statecode\": \"IL\", \"statename\": \"ILLINOIS\" }, { \"statecode\": \"IN\", \"statename\": \"INDIANA\" }, { \"statecode\": \"KS\", \"statename\": \"KANSAS\" }, { \"statecode\": \"KY\", \"statename\": \"KENTUCKY\" }, { \"statecode\": \"LA\", \"statename\": \"LOUISIANA\" }, { \"statecode\": \"MA\", \"statename\": \"MASSACHUSETTS\" }, { \"statecode\": \"MD\", \"statename\": \"MARYLAND\" }, { \"statecode\": \"ME\", \"statename\": \"MAINE\" }, { \"statecode\": \"MH\", \"statename\": \"MARSHALL ISLANDS\" }, { \"statecode\": \"MI\", \"statename\": \"MICHIGAN\" }, { \"statecode\": \"MN\", \"statename\": \"MINNESOTA\" }, { \"statecode\": \"MO\", \"statename\": \"MISSOURI\" }, { \"statecode\": \"MS\", \"statename\": \"MISSISSIPPI\" }, { \"statecode\": \"MT\", \"statename\": \"MONTANA\" }, { \"statecode\": \"NC\", \"statename\": \"NORTH CAROLINA\" }, { \"statecode\": \"ND\", \"statename\": \"NORTH DAKOTA\" }, { \"statecode\": \"NE\", \"statename\": \"NEBRASKA\" }, { \"statecode\": \"NH\", \"statename\": \"NEW HAMPSHIRE\" }, { \"statecode\": \"NJ\", \"statename\": \"NEW JERSEY\" }, { \"statecode\": \"NM\", \"statename\": \"NEW MEXICO\" }, { \"statecode\": \"NV\", \"statename\": \"NEVADA\" }, { \"statecode\": \"NY\", \"statename\": \"NEW YORK\" }, { \"statecode\": \"OH\", \"statename\": \"OHIO\" }, { \"statecode\": \"OK\", \"statename\": \"OKLAHOMA\" }, { \"statecode\": \"OR\", \"statename\": \"OREGON\" }, { \"statecode\": \"PA\", \"statename\": \"PENNSYLVANIA\" }, { \"statecode\": \"PR\", \"statename\": \"PUERTO RICO\" }, { \"statecode\": \"PW\", \"statename\": \"PALAU\" }, { \"statecode\": \"RI\", \"statename\": \"RHODE ISLAND\" }, { \"statecode\": \"SC\", \"statename\": \"SOUTH CAROLINA\" }, { \"statecode\": \"SD\", \"statename\": \"SOUTH DAKOTA\" }, { \"statecode\": \"TN\", \"statename\": \"TENNESSEE\" }, { \"statecode\": \"TX\", \"statename\": \"TEXAS\" }, { \"statecode\": \"UM\", \"statename\": \"U.S. MINOR OUTLYING ISLANDS\" }, { \"statecode\": \"UT\", \"statename\": \"UTAH\" }, { \"statecode\": \"VA\", \"statename\": \"VIRGINIA\" }, { \"statecode\": \"VI\", \"statename\": \"VIRGIN ISLANDS\" }, { \"statecode\": \"VT\", \"statename\": \"VERMONT\" }, { \"statecode\": \"WA\", \"statename\": \"WASHINGTON\" }, { \"statecode\": \"WI\", \"statename\": \"WISCONSIN\" }, { \"statecode\": \"WV\", \"statename\": \"WEST VIRGINIA\" }, { \"statecode\": \"WY\", \"statename\": \"WYOMING\" }],\r\n countryList: [{ \"countrycode\": \"AD\", \"countryname\": \"Andorra\" }, { \"countrycode\": \"AE\", \"countryname\": \"United Arab Emirates\" }, { \"countrycode\": \"AF\", \"countryname\": \"Afghanistan\" }, { \"countrycode\": \"AG\", \"countryname\": \"Antigua and Barbuda\" }, { \"countrycode\": \"AI\", \"countryname\": \"Anguilla\" }, { \"countrycode\": \"AL\", \"countryname\": \"Albania\" }, { \"countrycode\": \"AM\", \"countryname\": \"Armenia\" }, { \"countrycode\": \"AO\", \"countryname\": \"Angola\" }, { \"countrycode\": \"AQ\", \"countryname\": \"Antarctica\" }, { \"countrycode\": \"AR\", \"countryname\": \"Argentina\" }, { \"countrycode\": \"AS\", \"countryname\": \"American Samoa\" }, { \"countrycode\": \"AT\", \"countryname\": \"Austria\" }, { \"countrycode\": \"AU\", \"countryname\": \"Australia\" }, { \"countrycode\": \"AW\", \"countryname\": \"Aruba\" }, { \"countrycode\": \"AX\", \"countryname\": \"Aland Islands\" }, { \"countrycode\": \"AZ\", \"countryname\": \"Azerbaijan\" }, { \"countrycode\": \"BA\", \"countryname\": \"Bosnia and Herzegovina\" }, { \"countrycode\": \"BB\", \"countryname\": \"Barbados\" }, { \"countrycode\": \"BD\", \"countryname\": \"Bangladesh\" }, { \"countrycode\": \"BE\", \"countryname\": \"Belgium\" }, { \"countrycode\": \"BF\", \"countryname\": \"Burkina Faso\" }, { \"countrycode\": \"BG\", \"countryname\": \"Bulgaria\" }, { \"countrycode\": \"BH\", \"countryname\": \"Bahrain\" }, { \"countrycode\": \"BI\", \"countryname\": \"Burundi\" }, { \"countrycode\": \"BJ\", \"countryname\": \"Benin\" }, { \"countrycode\": \"BL\", \"countryname\": \"Saint Barthelemy\" }, { \"countrycode\": \"BM\", \"countryname\": \"Bermuda\" }, { \"countrycode\": \"BN\", \"countryname\": \"Brunei Darussalam\" }, { \"countrycode\": \"BO\", \"countryname\": \"Bolivia, Plurinational State of\" }, { \"countrycode\": \"BQ\", \"countryname\": \"Bonaire, Saint Eustatius and Saba\" }, { \"countrycode\": \"BR\", \"countryname\": \"Brazil\" }, { \"countrycode\": \"BS\", \"countryname\": \"Bahamas\" }, { \"countrycode\": \"BT\", \"countryname\": \"Bhutan\" }, { \"countrycode\": \"BV\", \"countryname\": \"Bouvet Island\" }, { \"countrycode\": \"BW\", \"countryname\": \"Botswana\" }, { \"countrycode\": \"BY\", \"countryname\": \"Belarus\" }, { \"countrycode\": \"BZ\", \"countryname\": \"Belize\" }, { \"countrycode\": \"CA\", \"countryname\": \"Canada\" }, { \"countrycode\": \"CC\", \"countryname\": \"Cocos (Keeling) Islands\" }, { \"countrycode\": \"CD\", \"countryname\": \"Congo, the Democratic Republic of the\" }, { \"countrycode\": \"CF\", \"countryname\": \"Central African Republic\" }, { \"countrycode\": \"CG\", \"countryname\": \"Congo\" }, { \"countrycode\": \"CH\", \"countryname\": \"Switzerland\" }, { \"countrycode\": \"CI\", \"countryname\": \"Cote d'Ivoire\" }, { \"countrycode\": \"CK\", \"countryname\": \"Cook Islands\" }, { \"countrycode\": \"CL\", \"countryname\": \"Chile\" }, { \"countrycode\": \"CM\", \"countryname\": \"Cameroon\" }, { \"countrycode\": \"CN\", \"countryname\": \"China\" }, { \"countrycode\": \"CO\", \"countryname\": \"Colombia\" }, { \"countrycode\": \"CR\", \"countryname\": \"Costa Rica\" }, { \"countrycode\": \"CU\", \"countryname\": \"Cuba\" }, { \"countrycode\": \"CV\", \"countryname\": \"Cape Verde\" }, { \"countrycode\": \"CW\", \"countryname\": \"Curacao\" }, { \"countrycode\": \"CX\", \"countryname\": \"Christmas Island\" }, { \"countrycode\": \"CY\", \"countryname\": \"Cyprus\" }, { \"countrycode\": \"CZ\", \"countryname\": \"Czech Republic\" }, { \"countrycode\": \"DE\", \"countryname\": \"Germany\" }, { \"countrycode\": \"DJ\", \"countryname\": \"Djibouti\" }, { \"countrycode\": \"DK\", \"countryname\": \"Denmark\" }, { \"countrycode\": \"DM\", \"countryname\": \"Dominica\" }, { \"countrycode\": \"DO\", \"countryname\": \"Dominican Republic\" }, { \"countrycode\": \"DZ\", \"countryname\": \"Algeria\" }, { \"countrycode\": \"EC\", \"countryname\": \"Ecuador\" }, { \"countrycode\": \"EE\", \"countryname\": \"Estonia\" }, { \"countrycode\": \"EG\", \"countryname\": \"Egypt\" }, { \"countrycode\": \"EH\", \"countryname\": \"Western Sahara\" }, { \"countrycode\": \"ER\", \"countryname\": \"Eritrea\" }, { \"countrycode\": \"ES\", \"countryname\": \"Spain\" }, { \"countrycode\": \"ET\", \"countryname\": \"Ethiopia\" }, { \"countrycode\": \"FI\", \"countryname\": \"Finland\" }, { \"countrycode\": \"FJ\", \"countryname\": \"Fiji\" }, { \"countrycode\": \"FK\", \"countryname\": \"Falkland Islands (Malvinas)\" }, { \"countrycode\": \"FM\", \"countryname\": \"Micronesia, Federated States of\" }, { \"countrycode\": \"FO\", \"countryname\": \"Faroe Islands\" }, { \"countrycode\": \"FR\", \"countryname\": \"France\" }, { \"countrycode\": \"GA\", \"countryname\": \"Gabon\" }, { \"countrycode\": \"GB\", \"countryname\": \"United Kingdom\" }, { \"countrycode\": \"GD\", \"countryname\": \"Grenada\" }, { \"countrycode\": \"GE\", \"countryname\": \"Georgia\" }, { \"countrycode\": \"GF\", \"countryname\": \"French Guiana\" }, { \"countrycode\": \"GG\", \"countryname\": \"Guernsey\" }, { \"countrycode\": \"GH\", \"countryname\": \"Ghana\" }, { \"countrycode\": \"GI\", \"countryname\": \"Gibraltar\" }, { \"countrycode\": \"GL\", \"countryname\": \"Greenland\" }, { \"countrycode\": \"GM\", \"countryname\": \"Gambia\" }, { \"countrycode\": \"GN\", \"countryname\": \"Guinea\" }, { \"countrycode\": \"GP\", \"countryname\": \"Guadeloupe\" }, { \"countrycode\": \"GQ\", \"countryname\": \"Equatorial Guinea\" }, { \"countrycode\": \"GR\", \"countryname\": \"Greece\" }, { \"countrycode\": \"GS\", \"countryname\": \"South Georgia and the South Sandwich Islands\" }, { \"countrycode\": \"GT\", \"countryname\": \"Guatemala\" }, { \"countrycode\": \"GU\", \"countryname\": \"Guam\" }, { \"countrycode\": \"GW\", \"countryname\": \"Guinea-Bissau\" }, { \"countrycode\": \"GY\", \"countryname\": \"Guyana\" }, { \"countrycode\": \"HK\", \"countryname\": \"Hong Kong\" }, { \"countrycode\": \"HM\", \"countryname\": \"Heard Island and McDonald Islands\" }, { \"countrycode\": \"HN\", \"countryname\": \"Honduras\" }, { \"countrycode\": \"HR\", \"countryname\": \"Croatia\" }, { \"countrycode\": \"HT\", \"countryname\": \"Haiti\" }, { \"countrycode\": \"HU\", \"countryname\": \"Hungary\" }, { \"countrycode\": \"ID\", \"countryname\": \"Indonesia\" }, { \"countrycode\": \"IE\", \"countryname\": \"Ireland\" }, { \"countrycode\": \"IL\", \"countryname\": \"Israel\" }, { \"countrycode\": \"IM\", \"countryname\": \"Isle of Man\" }, { \"countrycode\": \"IN\", \"countryname\": \"India\" }, { \"countrycode\": \"IO\", \"countryname\": \"British Indian Ocean Territory\" }, { \"countrycode\": \"IQ\", \"countryname\": \"Iraq\" }, { \"countrycode\": \"IR\", \"countryname\": \"Iran, Islamic Republic of\" }, { \"countrycode\": \"IS\", \"countryname\": \"Iceland\" }, { \"countrycode\": \"IT\", \"countryname\": \"Italy\" }, { \"countrycode\": \"JE\", \"countryname\": \"Jersey\" }, { \"countrycode\": \"JM\", \"countryname\": \"Jamaica\" }, { \"countrycode\": \"JO\", \"countryname\": \"Jordan\" }, { \"countrycode\": \"JP\", \"countryname\": \"Japan\" }, { \"countrycode\": \"KE\", \"countryname\": \"Kenya\" }, { \"countrycode\": \"KG\", \"countryname\": \"Kyrgyzstan\" }, { \"countrycode\": \"KH\", \"countryname\": \"Cambodia\" }, { \"countrycode\": \"KI\", \"countryname\": \"Kiribati\" }, { \"countrycode\": \"KM\", \"countryname\": \"Comoros\" }, { \"countrycode\": \"KN\", \"countryname\": \"Saint Kitts and Nevis\" }, { \"countrycode\": \"KP\", \"countryname\": \"Korea, Democratic People's Republic of\" }, { \"countrycode\": \"KR\", \"countryname\": \"Korea, Republic of\" }, { \"countrycode\": \"KW\", \"countryname\": \"Kuwait\" }, { \"countrycode\": \"KY\", \"countryname\": \"Cayman Islands\" }, { \"countrycode\": \"KZ\", \"countryname\": \"Kazakhstan\" }, { \"countrycode\": \"LA\", \"countryname\": \"Lao People's Democratic Republic\" }, { \"countrycode\": \"LB\", \"countryname\": \"Lebanon\" }, { \"countrycode\": \"LC\", \"countryname\": \"Saint Lucia\" }, { \"countrycode\": \"LI\", \"countryname\": \"Liechtenstein\" }, { \"countrycode\": \"LK\", \"countryname\": \"Sri Lanka\" }, { \"countrycode\": \"LR\", \"countryname\": \"Liberia\" }, { \"countrycode\": \"LS\", \"countryname\": \"Lesotho\" }, { \"countrycode\": \"LT\", \"countryname\": \"Lithuania\" }, { \"countrycode\": \"LU\", \"countryname\": \"Luxembourg\" }, { \"countrycode\": \"LV\", \"countryname\": \"Latvia\" }, { \"countrycode\": \"LY\", \"countryname\": \"Libyan Arab Jamahiriya\" }, { \"countrycode\": \"MA\", \"countryname\": \"Morocco\" }, { \"countrycode\": \"MC\", \"countryname\": \"Monaco\" }, { \"countrycode\": \"MD\", \"countryname\": \"Moldova, Republic of\" }, { \"countrycode\": \"ME\", \"countryname\": \"Montenegro\" }, { \"countrycode\": \"MF\", \"countryname\": \"Saint Martin (French part)\" }, { \"countrycode\": \"MG\", \"countryname\": \"Madagascar\" }, { \"countrycode\": \"MH\", \"countryname\": \"Marshall Islands\" }, { \"countrycode\": \"MK\", \"countryname\": \"Macedonia, the former Yugoslav Republic of\" }, { \"countrycode\": \"ML\", \"countryname\": \"Mali\" }, { \"countrycode\": \"MM\", \"countryname\": \"Myanmar\" }, { \"countrycode\": \"MN\", \"countryname\": \"Mongolia\" }, { \"countrycode\": \"MO\", \"countryname\": \"Macao\" }, { \"countrycode\": \"MP\", \"countryname\": \"Northern Mariana Islands\" }, { \"countrycode\": \"MQ\", \"countryname\": \"Martinique\" }, { \"countrycode\": \"MR\", \"countryname\": \"Mauritania\" }, { \"countrycode\": \"MS\", \"countryname\": \"Montserrat\" }, { \"countrycode\": \"MT\", \"countryname\": \"Malta\" }, { \"countrycode\": \"MU\", \"countryname\": \"Mauritius\" }, { \"countrycode\": \"MV\", \"countryname\": \"Maldives\" }, { \"countrycode\": \"MW\", \"countryname\": \"Malawi\" }, { \"countrycode\": \"MX\", \"countryname\": \"Mexico\" }, { \"countrycode\": \"MY\", \"countryname\": \"Malaysia\" }, { \"countrycode\": \"MZ\", \"countryname\": \"Mozambique\" }, { \"countrycode\": \"NA\", \"countryname\": \"Namibia\" }, { \"countrycode\": \"NC\", \"countryname\": \"New Caledonia\" }, { \"countrycode\": \"NE\", \"countryname\": \"Niger\" }, { \"countrycode\": \"NF\", \"countryname\": \"Norfolk Island\" }, { \"countrycode\": \"NG\", \"countryname\": \"Nigeria\" }, { \"countrycode\": \"NI\", \"countryname\": \"Nicaragua\" }, { \"countrycode\": \"NL\", \"countryname\": \"Netherlands\" }, { \"countrycode\": \"NO\", \"countryname\": \"Norway\" }, { \"countrycode\": \"NP\", \"countryname\": \"Nepal\" }, { \"countrycode\": \"NR\", \"countryname\": \"Nauru\" }, { \"countrycode\": \"NU\", \"countryname\": \"Niue\" }, { \"countrycode\": \"NZ\", \"countryname\": \"New Zealand\" }, { \"countrycode\": \"OM\", \"countryname\": \"Oman\" }, { \"countrycode\": \"PA\", \"countryname\": \"Panama\" }, { \"countrycode\": \"PE\", \"countryname\": \"Peru\" }, { \"countrycode\": \"PF\", \"countryname\": \"French Polynesia\" }, { \"countrycode\": \"PG\", \"countryname\": \"Papua New Guinea\" }, { \"countrycode\": \"PH\", \"countryname\": \"Philippines\" }, { \"countrycode\": \"PK\", \"countryname\": \"Pakistan\" }, { \"countrycode\": \"PL\", \"countryname\": \"Poland\" }, { \"countrycode\": \"PM\", \"countryname\": \"Saint Pierre and Miquelon\" }, { \"countrycode\": \"PN\", \"countryname\": \"Pitcairn\" }, { \"countrycode\": \"PR\", \"countryname\": \"Puerto Rico\" }, { \"countrycode\": \"PS\", \"countryname\": \"Palestinian Territory, Occupied\" }, { \"countrycode\": \"PT\", \"countryname\": \"Portugal\" }, { \"countrycode\": \"PW\", \"countryname\": \"Palau\" }, { \"countrycode\": \"PY\", \"countryname\": \"Paraguay\" }, { \"countrycode\": \"QA\", \"countryname\": \"Qatar\" }, { \"countrycode\": \"RE\", \"countryname\": \"Reunion\" }, { \"countrycode\": \"RO\", \"countryname\": \"Romania\" }, { \"countrycode\": \"RS\", \"countryname\": \"Serbia\" }, { \"countrycode\": \"RU\", \"countryname\": \"Russian Federation\" }, { \"countrycode\": \"RW\", \"countryname\": \"Rwanda\" }, { \"countrycode\": \"SA\", \"countryname\": \"Saudi Arabia\" }, { \"countrycode\": \"SB\", \"countryname\": \"Solomon Islands\" }, { \"countrycode\": \"SC\", \"countryname\": \"Seychelles\" }, { \"countrycode\": \"SD\", \"countryname\": \"Sudan\" }, { \"countrycode\": \"SE\", \"countryname\": \"Sweden\" }, { \"countrycode\": \"SG\", \"countryname\": \"Singapore\" }, { \"countrycode\": \"SH\", \"countryname\": \"Saint Helena, Ascension and Tristan da Cunha\" }, { \"countrycode\": \"SI\", \"countryname\": \"Slovenia\" }, { \"countrycode\": \"SJ\", \"countryname\": \"Svalbard and Jan Mayen\" }, { \"countrycode\": \"SK\", \"countryname\": \"Slovakia\" }, { \"countrycode\": \"SL\", \"countryname\": \"Sierra Leone\" }, { \"countrycode\": \"SM\", \"countryname\": \"San Marino\" }, { \"countrycode\": \"SN\", \"countryname\": \"Senegal\" }, { \"countrycode\": \"SO\", \"countryname\": \"Somalia\" }, { \"countrycode\": \"SR\", \"countryname\": \"Suriname\" }, { \"countrycode\": \"SS\", \"countryname\": \"South Sudan\" }, { \"countrycode\": \"ST\", \"countryname\": \"Sao Tome and Principe\" }, { \"countrycode\": \"SV\", \"countryname\": \"El Salvador\" }, { \"countrycode\": \"SX\", \"countryname\": \"Sint Maarten (Dutch part)\" }, { \"countrycode\": \"SY\", \"countryname\": \"Syrian Arab Republic\" }, { \"countrycode\": \"SZ\", \"countryname\": \"Swaziland\" }, { \"countrycode\": \"TC\", \"countryname\": \"Turks and Caicos Islands\" }, { \"countrycode\": \"TD\", \"countryname\": \"Chad\" }, { \"countrycode\": \"TF\", \"countryname\": \"French Southern Territories\" }, { \"countrycode\": \"TG\", \"countryname\": \"Togo\" }, { \"countrycode\": \"TH\", \"countryname\": \"Thailand\" }, { \"countrycode\": \"TJ\", \"countryname\": \"Tajikistan\" }, { \"countrycode\": \"TK\", \"countryname\": \"Tokelau\" }, { \"countrycode\": \"TL\", \"countryname\": \"Timor-Leste\" }, { \"countrycode\": \"TM\", \"countryname\": \"Turkmenistan\" }, { \"countrycode\": \"TN\", \"countryname\": \"Tunisia\" }, { \"countrycode\": \"TO\", \"countryname\": \"Tonga\" }, { \"countrycode\": \"TR\", \"countryname\": \"Turkey\" }, { \"countrycode\": \"TT\", \"countryname\": \"Trinidad and Tobago\" }, { \"countrycode\": \"TV\", \"countryname\": \"Tuvalu\" }, { \"countrycode\": \"TW\", \"countryname\": \"Taiwan, Province of China\" }, { \"countrycode\": \"TZ\", \"countryname\": \"Tanzania, United Republic of\" }, { \"countrycode\": \"UA\", \"countryname\": \"Ukraine\" }, { \"countrycode\": \"UG\", \"countryname\": \"Uganda\" }, { \"countrycode\": \"UM\", \"countryname\": \"United States Minor Outlying Islands\" }, { \"countrycode\": \"US\", \"countryname\": \"United States\" }, { \"countrycode\": \"UY\", \"countryname\": \"Uruguay\" }, { \"countrycode\": \"UZ\", \"countryname\": \"Uzbekistan\" }, { \"countrycode\": \"VA\", \"countryname\": \"Holy See (Vatican City State)\" }, { \"countrycode\": \"VC\", \"countryname\": \"Saint Vincent and the Grenadines\" }, { \"countrycode\": \"VE\", \"countryname\": \"Venezuela, Bolivarian Republic of\" }, { \"countrycode\": \"VG\", \"countryname\": \"Virgin Islands, British\" }, { \"countrycode\": \"VI\", \"countryname\": \"Virgin Islands, U.S.\" }, { \"countrycode\": \"VN\", \"countryname\": \"Viet Nam\" }, { \"countrycode\": \"VU\", \"countryname\": \"Vanuatu\" }, { \"countrycode\": \"WF\", \"countryname\": \"Wallis and Futuna\" }, { \"countrycode\": \"WS\", \"countryname\": \"Samoa\" }, { \"countrycode\": \"YE\", \"countryname\": \"Yemen\" }, { \"countrycode\": \"YT\", \"countryname\": \"Mayotte\" }, { \"countrycode\": \"ZA\", \"countryname\": \"South Africa\" }, { \"countrycode\": \"ZM\", \"countryname\": \"Zambia\" }, { \"countrycode\": \"ZW\", \"countryname\": \"Zimbabwe\" }],\r\n clientFromAccts: [],\r\n selectClientModalState: false,\r\n genericModalMsg: ''\r\n }\r\n }\r\n \r\n componentDidMount() {\r\n //Get the account numbers for the selected client in parallel \r\n\r\n let vendorid = this.props.wireInstruction ? this.props.wireInstruction.id : '';\r\n let orgid = this.props.selectedClient ? this.props.selectedClient.orgId: '';\r\n \r\n if(orgid === ''){\r\n this.setState({selectClientModalState: true, genericModalMsg: NoClientFoundSetupBill, isloading: false});\r\n }else{\r\n\r\n this.fetchFromAccountsForClient();\r\n if(this.props.mode && this.props.mode === 'VIEW'){\r\n this.fetchPayTermAndInstructions(vendorid, orgid);\r\n }else if(this.props.mode && this.props.mode === 'UPDATE'){\r\n this.fetchPayTermAndInstructions(vendorid, orgid);\r\n }else{\r\n //fetch vendorlist and show in dropdown \r\n this.fetchPayTerms(orgid);\r\n this.setState({isloading: false}, () => {\r\n wireInstructionFormAnimation();\r\n });\r\n }\r\n }\r\n }\r\n\r\n\r\n fetchPayTermAndInstructions(vendorid, orgid){\r\n getPayTerms('PAYTERM', orgid).then(res => {\r\n this.setState({payTermsList: res}, () => {\r\n this.fetchWireInstruction(vendorid, orgid);\r\n })\r\n })\r\n .catch(err => {\r\n console.log(err);\r\n this.setState({payTermsList: []}, () => {\r\n this.fetchWireInstruction(vendorid, orgid);\r\n })\r\n })\r\n }\r\n\r\n fetchFromAccountsForClient(){\r\n if(this.props.selectedClient && this.props.selectedClient.orgId){\r\n getEligibleFromAccount(this.props.selectedClient.orgId).then(res => {\r\n this.setState({clientFromAccts: res});\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n this.setState({clientFromAccts: []});\r\n })\r\n }\r\n }\r\n\r\n\r\n fetchWireInstruction(vendorId, orgid){\r\n getWireInstructions(vendorId, orgid).then(res => {\r\n this.setState({wireDetails: res, isloading: false}, () => {\r\n this.prepopulateData();\r\n wireInstructionFormAnimation();\r\n });\r\n })\r\n .catch(err => {\r\n this.setState({isloading: false}, () => {\r\n wireInstructionFormAnimation();\r\n });\r\n message.error('Unable to fetch wires information');\r\n console.log(\"Error occured while fetching wire instruction\");\r\n })\r\n }\r\n\r\n\r\n fetchPayTerms(orgid){\r\n getPayTerms('PAYTERM', orgid).then(res => {\r\n this.setState({payTermsList: res})\r\n })\r\n .catch(err => {\r\n console.log(err);\r\n this.setState({payTermsList: []});\r\n message.error('Unable to fetch payment term options');\r\n })\r\n }\r\n\r\n componentWillUnmount() {\r\n if (validateABACancellationToken !== null && validateABACancellationToken !== undefined) {\r\n validateABACancellationToken.cancel(\"Cancelling validate ABA call on unmount to prevent memory leak.\");\r\n }\r\n\r\n this.props.ViewWireInstructions(null, null);\r\n }\r\n backFromVendors() {\r\n if (this.props.history) {\r\n this.props.history.push(`/vendors/${this.props.selectedClient && this.props.selectedClient.orgId ? this.props.selectedClient.orgId : ''}`);\r\n }\r\n }\r\n\r\n getVendorType(value){\r\n if(this.state.typesOfVendors && Array.isArray(this.state.typesOfVendors) && this.state.typesOfVendors.length > 0 && value){\r\n for(let i=0; i< this.state.typesOfVendors.length; i++){\r\n if(this.state.typesOfVendors[i].value === value){\r\n return (this.state.typesOfVendors[i].name ? this.state.typesOfVendors[i].name : \"\");\r\n }\r\n }\r\n }else{\r\n return \"\";\r\n }\r\n }\r\n\r\n getPartyType(value){\r\n if(this.state.typesOfParties && Array.isArray(this.state.typesOfParties) && this.state.typesOfParties.length > 0){\r\n for(let i=0; i< this.state.typesOfParties.length; i++){\r\n if(this.state.typesOfParties[i].value === value){\r\n return (this.state.typesOfParties[i].name ? this.state.typesOfParties[i].name : \"\");\r\n }\r\n }\r\n }else{\r\n return \"\";\r\n }\r\n }\r\n\r\n getPaymentTermValue(refcode){\r\n let paytermval = '';\r\n if(this.state.payTermsList && Array.isArray(this.state.payTermsList) && refcode){\r\n for(let i=0; i< this.state.payTermsList.length; i++){\r\n if(this.state.payTermsList[i].referenceId === refcode){\r\n paytermval = this.state.payTermsList[i].value;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n return paytermval;\r\n }\r\n\r\n prepopulateData(){\r\n //Prepopulate data in state\r\n let clonedState = cloneDeep(this.state);\r\n if(this.state.wireDetails && Array.isArray(this.state.wireDetails) && this.state.wireDetails.length > 0 ){\r\n let paymentInstruction = this.state.wireDetails[0].paymentInstruction ? JSON.parse(this.state.wireDetails[0].paymentInstruction) : {};\r\n\r\n //vendor details\r\n clonedState.billInformation.vendorbasics.vendorname = this.state.wireDetails[0].name;\r\n clonedState.billInformation.vendorbasics.accountnumberwithvendor = this.state.wireDetails[0].accNumber;\r\n clonedState.billInformation.vendorbasics.vendortype = this.getVendorType(this.state.wireDetails[0].accountType);\r\n clonedState.billInformation.vendorbasics.vendortypevalue = this.state.wireDetails[0].accountType;\r\n\r\n let paytermval = this.getPaymentTermValue(this.state.wireDetails[0].paymentTermId);\r\n clonedState.billInformation.vendorpayterm = paytermval;\r\n clonedState.billInformation.vendorpaytermrefcode = this.state.wireDetails[0].paymentTermId;\r\n\r\n //account info\r\n clonedState.billInformation.paymentinfo.accountNumber = paymentInstruction.BankAcctFromAcctId;\r\n clonedState.billInformation.paymentinfo.isThirdParty = paymentInstruction.IsThirdParty; \r\n clonedState.billInformation.paymentinfo.partydisplayvalue = this.getPartyType(paymentInstruction.IsThirdParty);\r\n clonedState.billInformation.paymentinfo.routingNumber = paymentInstruction.BeneficiaryBankRoutingId;\r\n clonedState.billInformation.paymentinfo.bankName = paymentInstruction.BeneficiaryBankName;\r\n clonedState.billInformation.paymentinfo.country = paymentInstruction.DestinationCountry;\r\n\r\n //update the cloned \r\n\r\n clonedState.billInformation.paymentinfo.beneficiaryDetailsAccountNumber = paymentInstruction.BeneficiaryAcctId;\r\n clonedState.billInformation.paymentinfo.beneficiaryDetailsVendorname = paymentInstruction.BeneficiaryName;\r\n clonedState.billInformation.paymentinfo.beneficiaryDetailsAddressline1 = paymentInstruction.BeneficiaryNameAddrLine1;\r\n clonedState.billInformation.paymentinfo.beneficiaryDetailsAddressline2 = paymentInstruction.BeneficiaryNameAddrLine2;\r\n clonedState.billInformation.paymentinfo.beneficiaryDetailsAddressline3 = paymentInstruction.BeneficiaryNameAddrLine3;\r\n\r\n //Further credit 1\r\n\r\n clonedState.billInformation.paymentinfo.furtherCreditAccountNumber = paymentInstruction.FurtherCredit1_AccountNumber;\r\n clonedState.billInformation.paymentinfo.furtherCreditName = paymentInstruction.FurtherCredit1_NameLine1;\r\n clonedState.billInformation.paymentinfo.furtherCreditAddressLine1 = paymentInstruction.FurtherCredit1_NameLine2;\r\n clonedState.billInformation.paymentinfo.furtherCreditAddressLine2 = paymentInstruction.FurtherCredit1_NameLine3;\r\n clonedState.billInformation.paymentinfo.furtherCreditAddressLine3 = paymentInstruction.FurtherCredit1_NameLine4;\r\n\r\n //Further credit 2\r\n\r\n clonedState.billInformation.paymentinfo.furtherCredit2AccountNumber = paymentInstruction.FurtherCredit2_AccountNumber;\r\n clonedState.billInformation.paymentinfo.furtherCredit2Name = paymentInstruction.FurtherCredit2_NameLine1;\r\n clonedState.billInformation.paymentinfo.furtherCredit2AddressLine1 = paymentInstruction.FurtherCredit2_NameLine2;\r\n clonedState.billInformation.paymentinfo.furtherCredit2AddressLine2 = paymentInstruction.FurtherCredit2_NameLine3;\r\n clonedState.billInformation.paymentinfo.furtherCredit2AddressLine3 = paymentInstruction.FurtherCredit2_NameLine4;\r\n\r\n //detail lines\r\n clonedState.billInformation.paymentinfo.line1 = paymentInstruction.WireDisbursementDetail1;\r\n clonedState.billInformation.paymentinfo.line2 = paymentInstruction.WireDisbursementDetail2;\r\n clonedState.billInformation.paymentinfo.line3 = paymentInstruction.WireDisbursementDetail3;\r\n clonedState.billInformation.paymentinfo.line4 = paymentInstruction.WireDisbursementDetail4;\r\n\r\n\r\n clonedState.isloading = false;\r\n this.setState({...clonedState});\r\n }\r\n\r\n }\r\n\r\n handleVendorNameChange(event) {\r\n //const alphanumericFormat = /^[0-9a-zA-Z ]+$/;\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.billInformation.vendorbasics.vendorname = event.target.value;\r\n this.setState(clonedState);\r\n }\r\n\r\n handleVendorNameOnBlur(event) {\r\n let clonedState = Object.assign({}, this.state);\r\n if(clonedState.messages){\r\n clonedState.messages.vendorNameErr = '';\r\n }\r\n if(clonedState.billInformation.vendorbasics.vendorname === ''){\r\n clonedState.messages.vendorNameErr = 'Vendor name is required.'\r\n }else{\r\n let isVendorExist = isVendorNameExist(clonedState.billInformation.vendorbasics.vendorname, this.props.clientVendorsList);\r\n if(isVendorExist && this.props.mode !== 'UPDATE'){\r\n clonedState.messages.vendorNameErr = 'Vendor name already exist.'\r\n }\r\n }\r\n\r\n this.setState(clonedState);\r\n }\r\n\r\n\r\n\r\n toggle = tab => {\r\n var currentTabValid = true;\r\n var errorMsg = \"Please fill the required fields before going to other tab.\";\r\n var messages = this.state.messages;\r\n if (this.state.activeTab === '1') {\r\n if (this.state.isLargeVendor) {\r\n if (this.state.validationBillInformation.vendorbasics.vendorname) {\r\n currentTabValid = true;\r\n } else\r\n currentTabValid = false;\r\n } else if (!this.state.isLargeVendor) {\r\n if (this.state.validationBillInformation.vendorbasics.vendorname && this.state.validationBillInformation.vendorbasics.vendortype && this.state.validationBillInformation.vendorbasics.primarycontactemail) {\r\n currentTabValid = true;\r\n }\r\n else\r\n currentTabValid = false;\r\n }\r\n\r\n } else if (this.state.activeTab === '2') {\r\n if (this.state.validationBillInformation.vendoraddress.country) {\r\n currentTabValid = true;\r\n } else\r\n currentTabValid = false;\r\n } else if (this.state.activeTab === '3') {\r\n if (this.state.validationBillInformation.vendorbanklocation) {\r\n currentTabValid = true;\r\n } else\r\n currentTabValid = false;\r\n } else if (this.state.activeTab === '5') {\r\n //errorMsg = \"Please fill valid values for 'Payment notification email', 'Phone' and 'Fax' fields before going to other tab.\";\r\n if (this.state.billInformation.vendorpaymenttype === \"ACH\") {\r\n if (this.state.validationBillInformation.paymentinfo.routingNumber) {\r\n currentTabValid = true;\r\n }\r\n } else if (this.state.billInformation.vendorpaymenttype === \"WIRE\") {\r\n if (this.state.validationBillInformation.paymentinfo.routingNumber && this.state.validationBillInformation.paymentinfo.wirePurpose) {\r\n currentTabValid = true;\r\n }\r\n } else if (this.state.validationBillInformation.paymentinfo.paymentnotificationemail && this.state.validationBillInformation.paymentinfo.phone && this.state.validationBillInformation.paymentinfo.fax) {\r\n errorMsg = \"Please fill valid values for 'Payment notification email', 'Phone' and 'Fax' fields before going to other tab.\";\r\n currentTabValid = true;\r\n } else {\r\n errorMsg = \"Please fill valid values for 'Payment notification email', 'Phone' and 'Fax' fields before going to other tab.\";\r\n currentTabValid = false;\r\n }\r\n\r\n }\r\n var errormsgIndex = messages.findIndex(item => item.text === errorMsg);\r\n if (currentTabValid && errormsgIndex > -1) {\r\n messages.splice(errormsgIndex, 1);\r\n } else if (!currentTabValid && errormsgIndex === -1) {\r\n messages.push({\r\n type: MessageType.INFO,\r\n text: errorMsg,\r\n class: MessageClass.ERROR\r\n })\r\n }\r\n if (/*currentTabValid && */this.state.activeTab !== tab)\r\n this.setState({ activeTab: tab, messages: messages });\r\n this.setState({ messages: messages });\r\n }\r\n\r\n typesOfVendorChange(vendortype) {\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.billInformation.vendorbasics.vendortype = vendortype.name;\r\n clonedState.billInformation.vendorbasics.vendortypevalue = vendortype.value;\r\n this.setState(clonedState);\r\n\r\n }\r\n\r\n typesOfPartyChange(partytype) {\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.billInformation.paymentinfo.isThirdParty = partytype.value;\r\n clonedState.billInformation.paymentinfo.partydisplayvalue = this.getPartyType(partytype.value)\r\n this.setState(clonedState);\r\n }\r\n \r\n typesOfVendorToggle() {\r\n if (this.state.isTypesOfVendorOpen) {\r\n var evt = {\r\n target: {\r\n name: \"type\"\r\n }\r\n };\r\n this.handleOnBlur(evt);\r\n }\r\n this.setState(prevState => ({\r\n isTypesOfVendorOpen: !prevState.isTypesOfVendorOpen\r\n }))\r\n }\r\n\r\n typesOfPartyToggle() {\r\n this.setState(prevState => ({\r\n isTypesOfPartyOpen: !prevState.isTypesOfPartyOpen\r\n }))\r\n }\r\n\r\n fromAcctToggle() {\r\n this.setState(prevState => ({\r\n isFromAcctOpen: !prevState.isFromAcctOpen\r\n }))\r\n }\r\n\r\n payTermToggle() {\r\n this.setState(prevState => ({\r\n isPayTermOpen: !prevState.isPayTermOpen\r\n }))\r\n }\r\n\r\n handleFromAcctChange(fromaccount){\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.billInformation.paymentinfo.accountNumber = fromaccount.accountNo;\r\n this.setState(clonedState);\r\n }\r\n\r\n handlePayTermChange(payterm){\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.billInformation.vendorpayterm = payterm.value;\r\n clonedState.billInformation.vendorpaytermrefcode = payterm.referenceId;\r\n clonedState.billInformation.paymentinfo.accountNumber = '';\r\n this.setState(clonedState);\r\n }\r\n\r\n toggleAutoPaySetup() {\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.billInformation.autopaysetup = !clonedState.billInformation.autopaysetup;\r\n this.setState(clonedState);\r\n }\r\n vendorToggle() {\r\n this.setState(prevState => ({\r\n isVendorOpen: !prevState.isVendorOpen\r\n }))\r\n }\r\n vendorChange(vendor) {\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.billInformation.additionalInformation.vendor = vendor;\r\n this.setState(clonedState);\r\n }\r\n combinePaymentsToggle() {\r\n this.setState(prevState => ({\r\n isCombinePaymentsOpen: !prevState.isCombinePaymentsOpen\r\n }))\r\n }\r\n\r\n combinePaymentsChange(combinePayments) {\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.billInformation.additionalInformation.combinepayments = combinePayments;\r\n this.setState(clonedState);\r\n }\r\n\r\n accountOwnershipToggle() {\r\n this.setState(prevState => ({\r\n isAccountOwnershipOpen: !prevState.isAccountOwnershipOpen\r\n }))\r\n }\r\n\r\n accountOwnershipChange(value) {\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.billInformation.paymentinfo.accountOwnership = value;\r\n this.setState(clonedState);\r\n }\r\n\r\n addressCountryToggle(evt) {\r\n if (this.state.isAddressCountryOpen) {\r\n var evt = {\r\n target: {\r\n name: \"country\"\r\n }\r\n };\r\n this.handleOnBlur(evt);\r\n }\r\n this.setState(prevState => ({\r\n isAddressCountryOpen: !prevState.isAddressCountryOpen\r\n }))\r\n }\r\n\r\n addressCountryChange(value) {\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.billInformation.vendoraddress.country = value;\r\n this.setState(clonedState);\r\n }\r\n\r\n stateProvinceToggle() {\r\n this.setState(prevState => ({\r\n isStateProvinceOpen: !prevState.isStateProvinceOpen\r\n }))\r\n }\r\n\r\n stateProvinceChange(value) {\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.billInformation.vendoraddress.stateprovince = value;\r\n this.setState(clonedState);\r\n }\r\n\r\n handleNewStandingInstructionChange(evt) {\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.billInformation.paymentinfo.newStandingInstruction = !clonedState.billInformation.paymentinfo.newStandingInstruction;\r\n this.setState(clonedState);\r\n }\r\n\r\n getBankName(evt) {\r\n if (evt.target.value !== undefined\r\n && evt.target.value !== \"\") {\r\n let inputABA = evt.target.value;\r\n this.setState({ isLoading: true }, () => {\r\n validateABA(inputABA, this.authToken, this.contextjson, this.profilejson)\r\n .then(data => {\r\n if (data.ABANumbers !== null\r\n && data.ABANumbers !== undefined\r\n && Array.isArray(data.ABANumbers)\r\n && data.ABANumbers.length > 0) {\r\n let bankname = \"\";\r\n for (let aba of data.ABANumbers) {\r\n if (aba.BankCode !== null && aba.BankCode !== undefined && aba.BankCode === inputABA) {\r\n if (aba.BankName !== null && aba.BankName !== undefined) {\r\n bankname = aba.BankName;\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.billInformation.paymentinfo.bankName = aba.BankName;\r\n clonedState.validationBillInformation.paymentinfo.routingNumber = true;\r\n clonedState.messages.routingNumErr = '';\r\n this.setState(clonedState);\r\n }\r\n break;\r\n }\r\n }\r\n\r\n //check if we did not receive any bank name\r\n if (bankname === \"\") {\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.messages.routingNumErr = \"Please provide valid ABA Routing number\";\r\n clonedState.billInformation.paymentinfo.bankName = \"\";\r\n this.setState(clonedState);\r\n }\r\n } else {\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.messages.routingNumErr = \"Please provide valid ABA Routing number\";\r\n clonedState.billInformation.paymentinfo.bankName = \"\";\r\n this.setState(clonedState);\r\n }\r\n })\r\n .catch(error => {\r\n //Do nothing\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.messages.routingNumErr = \"Please provide valid ABA Routing number\";\r\n clonedState.billInformation.paymentinfo.bankName = \"\";\r\n this.setState(clonedState);\r\n });\r\n });\r\n } else{\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.messages.routingNumErr = \"Routing number is required.\";\r\n clonedState.billInformation.paymentinfo.bankName = \"\";\r\n this.setState(clonedState);\r\n }\r\n }\r\n disableNextBtn(tab) {\r\n var returnValue = false;\r\n if (tab === '2') {\r\n if (this.state.validationBillInformation.vendorbasics.vendorname && this.state.validationBillInformation.vendorbasics.vendortype)\r\n returnValue = false\r\n else\r\n returnValue = true\r\n }\r\n return returnValue;\r\n }\r\n isSaveDisabled() {\r\n var myJSON = JSON.stringify(this.state.validationBillInformation);\r\n var pos = myJSON.search(\":false\");\r\n if (pos > -1) {\r\n return true;\r\n }\r\n return false;\r\n\r\n }\r\n\r\n save() {\r\n\r\n if (this.state.billInformation && this.state.billInformation.vendorpaymenttype) {\r\n switch (this.state.billInformation.vendorpaymenttype) {\r\n case 'CHECK': {\r\n let reqBody = generatePaymentInstructionRequest(this.state.billInformation, 'CHECK', this.props.mode, this.props.selectedClient, this.props.wireInstruction);\r\n break;\r\n }\r\n case 'ACH': {\r\n let reqBody = generatePaymentInstructionRequest(this.state.billInformation, 'ACH', this.props.mode, this.props.selectedClient, this.props.wireInstruction);\r\n break;\r\n }\r\n case 'WIRE': {\r\n let reqBody = generatePaymentInstructionRequest(this.state.billInformation, 'WIRE', this.props.mode, this.props.selectedClient, this.props.wireInstruction);\r\n CreateVendorPaymentInstructionForWireService(reqBody, this.authToken, this.contextjson)\r\n .then(data => {\r\n if (data && data.data.error_code && data.data.error_code === '000000') {\r\n message.info('Wire instruction created.');\r\n if(this.props.history){\r\n this.props.history.push(`/vendors/${this.props.selectedClient.orgId}`);\r\n }\r\n }else{\r\n message.error(\"We are unable to create wire instruction\");\r\n console.error(data);\r\n }\r\n })\r\n .catch(error => {\r\n message.error('Unable to create wire instruction');\r\n console.error(error);\r\n })\r\n break;\r\n }\r\n case 'INVITE': {\r\n let reqBody = generatePaymentInstructionRequest(this.state.billInformation, 'INVITE');\r\n break;\r\n }\r\n\r\n default: {\r\n break;\r\n }\r\n }\r\n //Call api here...\r\n }\r\n\r\n\r\n }\r\n clearData() {\r\n var billInformation = {\r\n vendorbasics: {\r\n vendorname: \"\",\r\n vendortype: \"\",\r\n vendortypevalue: \"\",\r\n primarycontactemail: \"\",\r\n accountnumberwithvendor: \"\"\r\n },\r\n vendoraddress: {\r\n country: \"\",\r\n addressline1: \"\",\r\n addressline2: \"\",\r\n addressline3: \"\",\r\n addressline4: \"\",\r\n city: \"\",\r\n stateprovince: \"\",\r\n zippostalcode: \"\",\r\n },\r\n vendorbanklocation: \"\",\r\n vendorpaymenttype: \"WIRE\",\r\n vendorpayterm: '',\r\n vendorpaytermrefcode: '',\r\n autopaysetup: false,\r\n paymentinfo: {\r\n paytoname: \"\",\r\n paymentnotificationemail: \"\",\r\n phone: \"\",\r\n fax: \"\",\r\n accountOwnership: \"\",\r\n accountNickname: \"\",\r\n bankName: \"\",\r\n accountNumber: \"\",\r\n routingNumber: \"\",\r\n wirePurpose: \"\",\r\n line1: \"\",\r\n line2: \"\",\r\n line3: \"\",\r\n line4: \"\",\r\n newStandingInstruction: false,\r\n standingInstructionNickname: \"\",\r\n furtherCreditAccountNumber: \"\",\r\n furtherCreditName: \"\",\r\n furtherCreditAddressLine1: \"\",\r\n furtherCreditAddressLine2: \"\",\r\n furtherCreditAddressLine3: \"\",\r\n country: 'US',\r\n isThirdParty: false,\r\n partydisplayvalue : ''\r\n },\r\n contacts: {\r\n firstname: \"\",\r\n lastname: \"\"\r\n },\r\n vendordescription: \"\",\r\n additionalInformation: {\r\n taxid: \"\",\r\n vendor: \"\",\r\n vendorsince: \"\",\r\n leadtimedays: \"\",\r\n combinepayments: \"\",\r\n paymentterms: \"\",\r\n companyname: \"\"\r\n\r\n }\r\n }\r\n var validationBillInformation = {\r\n vendorbasics: {\r\n vendorname: false,\r\n vendortype: false,\r\n primarycontactemail: true,\r\n },\r\n vendoraddress: {\r\n country: false\r\n },\r\n vendorbanklocation: false,\r\n paymentinfo: {\r\n paymentnotificationemail: true,\r\n phone: true,\r\n fax: true,\r\n routingNumber: false,\r\n wirePurpose: false,\r\n },\r\n };\r\n\r\n this.setState({ billInformation: billInformation, validationBillInformation: validationBillInformation });\r\n }\r\n cancel() {\r\n this.clearData();\r\n var messages = {};\r\n this.setState({\r\n toggleVendorList: true, messages: messages\r\n })\r\n }\r\n checkPhoneNoFormat(evt) {\r\n const phoneNoFormat = /^[\\+]?[0-9]{0,2}[0-9]{0,1}[\\s.-]?[(]?[0-9]{3,4}[)]?[\\s.-]?[0-9]{3}[\\s.-]?[0-9]{4}$/;\r\n var errorMsg = \"\";\r\n if (evt.target.name === \"phone\" && (evt.target.value === \"\" || !phoneNoFormat.test(evt.target.value))) {\r\n errorMsg = \"Phone No is not valid\";\r\n } else if (evt.target.name === \"fax\" && (evt.target.value === \"\" || !phoneNoFormat.test(evt.target.value))) {\r\n errorMsg = \"Fax No is not valid\";\r\n }\r\n this.setState({ errorMsg: errorMsg });\r\n }\r\n checkEmailFormat(evt) {\r\n const emailFormat = /^([a-zA-Z0-9_\\-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([a-zA-Z0-9\\-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$/;\r\n var errorMsg = \"\";\r\n if (evt.target.name === \"paymentnotificationemail\" && (evt.target.value === \"\" || !emailFormat.test(evt.target.value))) {\r\n errorMsg = \"Payment notification email address is not valid\";\r\n }\r\n else if (evt.target.name === \"primarycontactemail\" && (evt.target.value === \"\" || !emailFormat.test(evt.target.value))) {\r\n errorMsg = \"Primary contact email address is not valid\";\r\n }\r\n this.setState({ errorMsg: errorMsg });\r\n }\r\n handleOnBlur(evt) {\r\n let clonedState = Object.assign({}, this.state);\r\n //const emailFormat = /^([a-zA-Z0-9_\\-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([a-zA-Z0-9\\-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$/;\r\n //const phoneNoFormat = /^[\\+]?[0-9]{0,2}[0-9]{0,1}[\\s.-]?[(]?[0-9]{3,4}[)]?[\\s.-]?[0-9]{3}[\\s.-]?[0-9]{4}$/;\r\n var errorMsg = \"\";\r\n\r\n if (evt.target.name === \"type\") {\r\n errorMsg = 'Vendor Type is required.';\r\n clonedState.messages.vendorTypeErr = '';\r\n if (this.state.billInformation.vendorbasics.vendortype === \"\") {\r\n clonedState.messages.vendorTypeErr = errorMsg;\r\n }\r\n } else if (evt.target.name === \"paymentinfoCountry\") {\r\n errorMsg = 'Country is required.';\r\n clonedState.messages.countryErr = '';\r\n if (clonedState.billInformation.paymentinfo.country === \"\") {\r\n clonedState.messages.countryErr = errorMsg\r\n }\r\n } \r\n this.setState(clonedState);\r\n }\r\n\r\n handleFormChanges(evt) {\r\n const amountFormat = /^[0-9]+(\\.)?([0-9]{1,2})?$/;\r\n const alphanumericFormat = /^[0-9a-zA-Z ]+$/;\r\n const basicAlphaNumeric = /^[a-zA-Z0-9 -]+$/;\r\n const emailFormat = /^[a-zA-Z0-9 @._-]+$/;\r\n const zipFormat = /^[0-9 -]*$/;\r\n const phoneNoFormat = /^[0-9 +().-\\s]*$/;\r\n const numberFormat = /^[0-9]*$/;\r\n\r\n let clonedState = Object.assign({}, this.state);\r\n\r\n if (evt.target.name === \"vendorname\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.vendorbasics.vendorname = evt.target.value;\r\n }\r\n else if (evt.target.name === \"primarycontactemail\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || emailFormat.test(evt.target.value))) {\r\n clonedState.billInformation.vendorbasics.primarycontactemail = evt.target.value;\r\n }\r\n else if (evt.target.name === \"accountnumberwithvendor\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || basicAlphaNumeric.test(evt.target.value))) {\r\n clonedState.billInformation.vendorbasics.accountnumberwithvendor = evt.target.value;\r\n }\r\n else if (evt.target.name === \"vendorZipcode\" && evt.target.value.length <= 10 && (evt.target.value === \"\" || zipFormat.test(evt.target.value))) {\r\n clonedState.billInformation.vendorbasics.vendorZipcode = evt.target.value;\r\n }\r\n else if (evt.target.name === \"country\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.vendoraddress.country = evt.target.value;\r\n }\r\n else if (evt.target.name === \"addressline1\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.vendoraddress.addressline1 = evt.target.value;\r\n clonedState.billInformation.paymentinfo.beneficiaryDetailsAddressline1 = evt.target.value;\r\n }\r\n else if (evt.target.name === \"addressline2\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.vendoraddress.addressline2 = evt.target.value;\r\n clonedState.billInformation.paymentinfo.beneficiaryDetailsAddressline2 = evt.target.value;\r\n }\r\n else if (evt.target.name === \"addressline3\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.vendoraddress.addressline3 = evt.target.value;\r\n clonedState.billInformation.paymentinfo.beneficiaryDetailsAddressline3 = evt.target.value;\r\n }\r\n else if (evt.target.name === \"addressline4\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.vendoraddress.addressline4 = evt.target.value;\r\n }\r\n else if (evt.target.name === \"city\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.vendoraddress.city = evt.target.value;\r\n }\r\n else if (evt.target.name === \"stateprovince\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.vendoraddress.stateprovince = evt.target.value;\r\n }\r\n else if (evt.target.name === \"zippostalcode\" && evt.target.value.length <= 10 && (evt.target.value === \"\" || zipFormat.test(evt.target.value))) {\r\n clonedState.billInformation.vendoraddress.zippostalcode = evt.target.value;\r\n }\r\n else if (evt.target.name === \"vendorbanklocation\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.vendorbanklocation = evt.target.value;\r\n }\r\n else if (evt.target.name === \"vendorpaymenttype\") {\r\n clonedState.billInformation.vendorpaymenttype = evt.target.value;\r\n }\r\n else if (evt.target.name === \"paytoname\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.paytoname = evt.target.value;\r\n }\r\n else if (evt.target.name === \"paymentnotificationemail\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || emailFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.paymentnotificationemail = evt.target.value;\r\n }\r\n else if (evt.target.name === \"phone\" && (evt.target.value === \"\" || phoneNoFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.phone = evt.target.value;\r\n }\r\n else if (evt.target.name === \"fax\" && (evt.target.value === \"\" || phoneNoFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.fax = evt.target.value;\r\n }\r\n else if (evt.target.name === \"accountNickname\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.accountNickname = evt.target.value;\r\n }\r\n else if (evt.target.name === \"routingNumber\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || numberFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.routingNumber = evt.target.value;\r\n }\r\n else if (evt.target.name === \"accountNumber\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.accountNumber = evt.target.value;\r\n }\r\n else if (evt.target.name === \"wirePurpose\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.wirePurpose = evt.target.value;\r\n }\r\n else if (evt.target.name === \"line1\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.line1 = evt.target.value;\r\n }\r\n else if (evt.target.name === \"line2\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.line2 = evt.target.value;\r\n }\r\n else if (evt.target.name === \"line3\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.line3 = evt.target.value;\r\n }\r\n else if (evt.target.name === \"line4\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.line4 = evt.target.value;\r\n }\r\n else if (evt.target.name === \"standingInstructionNickname\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.standingInstructionNickname = evt.target.value;\r\n }\r\n else if (evt.target.name === \"furtherCreditAccountNumber\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.furtherCreditAccountNumber = evt.target.value;\r\n }\r\n else if (evt.target.name === \"furtherCreditName\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.furtherCreditName = evt.target.value;\r\n }\r\n else if (evt.target.name === \"furtherCreditAddressLine1\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.furtherCreditAddressLine1 = evt.target.value;\r\n }\r\n else if (evt.target.name === \"furtherCreditAddressLine2\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.furtherCreditAddressLine2 = evt.target.value;\r\n }\r\n else if (evt.target.name === \"furtherCreditAddressLine3\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.furtherCreditAddressLine3 = evt.target.value;\r\n }\r\n else if (evt.target.name === \"firstname\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.contacts.firstname = evt.target.value;\r\n }\r\n else if (evt.target.name === \"lastname\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.contacts.lastname = evt.target.value;\r\n }\r\n else if (evt.target.name === \"vendordescription\" && evt.target.value.length <= 250 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.vendordescription = evt.target.value;\r\n }\r\n else if (evt.target.name === \"taxid\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.additionalInformation.taxid = evt.target.value;\r\n }\r\n else if (evt.target.name === \"vendor\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.additionalInformation.vendor = evt.target.value;\r\n }\r\n else if (evt.target.name === \"vendorsince\" && evt.target.value.length <= 4 && (evt.target.value === \"\" || numberFormat.test(evt.target.value))) {\r\n clonedState.billInformation.additionalInformation.vendorsince = evt.target.value;\r\n }\r\n else if (evt.target.name === \"leadtimedays\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.additionalInformation.leadtimedays = evt.target.value;\r\n }\r\n else if (evt.target.name === \"combinepayments\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.additionalInformation.combinepayments = evt.target.value;\r\n }\r\n else if (evt.target.name === \"paymentterms\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.additionalInformation.paymentterms = evt.target.value;\r\n }\r\n else if (evt.target.name === \"companyname\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.additionalInformation.companyname = evt.target.value;\r\n }\r\n else if (evt.target.name === \"beneficiaryDetailsVendorname\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.beneficiaryDetailsVendorname = evt.target.value;\r\n }\r\n else if (evt.target.name === \"beneficiaryDetailsAccountNumber\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || basicAlphaNumeric.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.beneficiaryDetailsAccountNumber = evt.target.value;\r\n }\r\n else if (evt.target.name === \"beneficiaryDetailsAddressline1\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || basicAlphaNumeric.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.beneficiaryDetailsAddressline1 = evt.target.value;\r\n }\r\n else if (evt.target.name === \"beneficiaryDetailsAddressline2\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || basicAlphaNumeric.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.beneficiaryDetailsAddressline2 = evt.target.value;\r\n }\r\n else if (evt.target.name === \"beneficiaryDetailsAddressline3\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || basicAlphaNumeric.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.beneficiaryDetailsAddressline3 = evt.target.value;\r\n }\r\n else if (evt.target.name === \"furtherCredit2AccountNumber\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.furtherCredit2AccountNumber = evt.target.value;\r\n }\r\n else if (evt.target.name === \"furtherCredit2Name\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.furtherCredit2Name = evt.target.value;\r\n }\r\n else if (evt.target.name === \"furtherCredit2AddressLine1\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.furtherCredit2AddressLine1 = evt.target.value;\r\n }\r\n else if (evt.target.name === \"furtherCredit2AddressLine2\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.furtherCredit2AddressLine2 = evt.target.value;\r\n }\r\n else if (evt.target.name === \"furtherCredit2AddressLine3\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || alphanumericFormat.test(evt.target.value))) {\r\n clonedState.billInformation.paymentinfo.furtherCredit2AddressLine3 = evt.target.value;\r\n }\r\n else if(evt.target.name === \"paymentinfoCountry\") {\r\n clonedState.billInformation.paymentinfo.country = evt.target.value;\r\n }\r\n this.setState(clonedState);\r\n }\r\n\r\n getVendorList() {\r\n this.setState(() => ({ isloading: true, requestFailed: false }));\r\n getVendorService()\r\n .then(data => {\r\n var vendorList = [];\r\n var vendorOptions = [];\r\n if (data.data !== null && data.data.response_data !== undefined && data.data.response_data !== null && Array.isArray(data.data.response_data) && (data.data.response_data.length > 0)) {\r\n vendorList = data.data.response_data;\r\n for (const [index, vendor] of vendorList.entries()) {\r\n vendorOptions.push(vendor.nameOnCheck);\r\n }\r\n }\r\n\r\n this.setState({ vendorList: vendorList, vendorOptions: vendorOptions, isloading: false });\r\n })\r\n .catch(error => {\r\n this.setState(() => ({ requestFailed: true, error: error.message }));\r\n })\r\n }\r\n\r\n getCountryStateList() {\r\n this.setState(() => ({ isloading: true, requestFailed: false }));\r\n getCountryStateService(\"Country\", this.authToken, this.contextjson, this.profilejson)\r\n .then(data => {\r\n var countryList = [];\r\n //var vendorOptions = [];\r\n if (data.data !== null && data.data.response_data !== undefined && data.data.response_data !== null && Array.isArray(data.data.response_data) && (data.data.response_data.length > 0)) {\r\n countryList = data.data.response_data;\r\n\r\n }\r\n\r\n this.setState({ countryList: countryList });\r\n })\r\n .catch(error => {\r\n this.setState(() => ({ requestFailed: true, error: error.message }));\r\n })\r\n }\r\n\r\n render() {\r\n return (\r\n this.state.requestFailed ?\r\n
{MsgForFailedData}
\r\n : this.state.isloading ?\r\n
Loading Wire Instruction  
:\r\n \r\n )\r\n\r\n }\r\n}\r\n\r\nconst mapStateToProps = store => {\r\n return {\r\n wireInstruction: store.vendors.wireInstruction,\r\n selectedClient: store.dashboard.selectedClient,\r\n mode: store.vendors.mode,\r\n clientVendorsList: store.vendors.clientVendorsList\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = {\r\n ViewWireInstructions\r\n}\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(SetupBills);\r\n","import React from 'react';\r\n\r\nexport function getVendorColumn(openWireInstruction, viewInvoice, openBilldotcomVendor) {\r\n const column = [\r\n\r\n {\r\n dataField: 'name',\r\n text: 'Vendor Name',\r\n headerClasses: 'RCM_noWrap RCM_clientName_col',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: 'payBy',\r\n text: 'Payment Type',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return (\r\n
\r\n {\r\n cell\r\n }\r\n
\r\n )\r\n },\r\n },\r\n {\r\n dataField: 'addressCity',\r\n text: 'City',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: 'addressState',\r\n text: 'State',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: 'addressZip',\r\n text: 'Zip',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: 'isActive',\r\n text: 'Status',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return (\r\n
\r\n {getActiveStatus(cell)}\r\n
\r\n )\r\n },\r\n },\r\n {\r\n dataField: 'accNumber',\r\n text: 'Account Number',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'right',\r\n classes: 'RCM_common_table_column_number',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: '',\r\n text: '',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'right',\r\n classes: 'RCM_Vendor_Action_col',\r\n formatter: (cell, row) => {\r\n return (\r\n
\r\n \r\n \r\n \r\n
\r\n )\r\n },\r\n events: {\r\n // onClick: this.openConfirmationPopup\r\n }\r\n }\r\n ]\r\n\r\n return column;\r\n}\r\n\r\n\r\nexport function getActiveStatus(cell){\r\n if(cell === '1')\r\n return \"Active\"\r\n else if(cell === '2')\r\n return \"In Active\"\r\n else\r\n return \"\" \r\n}\r\n\r\nfunction customCaretSort(order, column) {\r\n if (!order) return ();\r\n else if (order === 'asc') return ();\r\n else if (order === 'desc') return ();\r\n return null;\r\n}\r\nexport default getVendorColumn;","import React from 'react';\r\nimport { Label } from 'reactstrap';\r\nimport BootstrapTable from 'react-bootstrap-table-next';\r\nimport { Form, FormGroup } from \"reactstrap\";\r\nimport { MsgForNoData } from '../../common/constants';\r\nimport { getVendorColumn } from './vendorsColumn';\r\nimport GenericMessageModal from '../../common/genericMsgModal';\r\n\r\nexport function VendorsView(\r\n props\r\n) {\r\n let vendorsView = (\r\n
\r\n\r\n
\r\n
\r\n
\r\n VENDORS\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n {props && props.state ?\r\n
\r\n {\r\n if(e.target.type !== 'button'){\r\n props.openBilldotcomVendor(row)\r\n }\r\n }\r\n }\r\n }\r\n />\r\n
\r\n :
{MsgForNoData}
\r\n }\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n )\r\n return vendorsView\r\n}","import { searchVendorListUrl, apiBaseUrl} from \"../serviceConstant\";\r\nimport { errorMsg} from \"../../common/constants\";\r\nimport { Get } from \"../servicecalls\";\r\nimport axios from \"axios\";\r\n\r\n\r\nexport var searchVendorListCancellationToken = null;\r\n\r\n\r\nexport const searchVendorList = (orgId) => {\r\n\r\n if (searchVendorListCancellationToken !== null && searchVendorListCancellationToken !== undefined) {\r\n searchVendorListCancellationToken.cancel(\"Cancel existing get vendor list to revent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n searchVendorListCancellationToken = cancelToken.source();\r\n\r\n\r\n\r\n let searchVendorListPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${searchVendorListUrl}?orgId=${orgId}`;\r\n Get(url, searchVendorListCancellationToken).then(res => {\r\n // get the response in case of successful call.\r\n if(res && res.data && res.data.response_status === 0){\r\n resolve(res.data.response_data);\r\n }else{\r\n reject(errorMsg);\r\n }\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel()) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure.\r\n console.error(\"Vendor Service : get vendor list for client \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n\r\n });\r\n\r\n return searchVendorListPromise;\r\n};\r\n","import React from 'react'\r\nimport { Button, Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap';\r\n\r\n\r\nexport default class HowToPayModal extends React.PureComponent{\r\n\r\n constructor(props){\r\n super(props);\r\n this.onModalOpen = this.onModalOpen.bind(this);\r\n }\r\n\r\n onModalOpen(){\r\n \r\n }\r\n\r\n render(){\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n {\r\n <>\r\n
\r\n How will you pay this vendor?\r\n
\r\n
\r\n \r\n
\r\n \r\n }\r\n
\r\n \r\n {\r\n <>\r\n \r\n \r\n \r\n }\r\n \r\n \r\n
\r\n )\r\n}\r\n}\r\n","import React, { Component } from 'react';\r\nimport { withRouter } from 'react-router-dom';\r\nimport { connect } from 'react-redux';\r\nimport { VendorsView } from './vendorsView.jsx';\r\nimport { searchVendorList } from '../../services/vendorService/vendorService.js';\r\nimport { ViewWireInstructions, UpdateClientVendorsList } from '../../actions/vendorsAction';\r\nimport {UPDATE_SSO_WINDOW_INSTANCE} from '../../actions/appActions';\r\nimport HowToPayModal from './howToPayModal.jsx';\r\nimport { animateViewTable } from '../../common/animation.js';\r\nimport { arrayFilterByValue } from '../../common/utilities.js';\r\nimport { Spinner } from 'reactstrap';\r\nimport { BackTop, message } from 'antd';\r\nimport { NoClientFound } from '../../common/constants.js';\r\n\r\nexport class Vendors extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.search = this.search.bind(this);\r\n this.state = {\r\n openUploadInvoice: false,\r\n openVendors: false,\r\n vendorList: [],\r\n originalVendorList: [],\r\n searchText: '',\r\n howToPayModalState: false,\r\n showloading: false,\r\n selectClientModalState: false,\r\n genericModalMsg: ''\r\n };\r\n\r\n this.vendorId = (this.props.selectedClient && this.props.selectedClient.orgId ? this.props.selectedClient.orgId: '');\r\n\r\n this.fetchVendorList = this.fetchVendorList.bind(this);\r\n }\r\n\r\n componentDidMount = () => {\r\n //call get vendor api\r\n \r\n if(this.vendorId === ''){\r\n //show modal for select client \r\n this.setState({selectClientModalState: true, genericModalMsg: NoClientFound});\r\n }else{\r\n this.fetchVendorList();\r\n }\r\n\r\n }\r\n\r\n componentDidUpdate(prevProps){\r\n if (prevProps.refresh !== this.props.refresh) {\r\n this.fetchVendorList();\r\n }\r\n }\r\n\r\n fetchVendorList(){\r\n this.setState({showloading: true}, () => {\r\n //gsap.to('.RCM_two_level_table1', {duration: 0 , opacity: 0});\r\n searchVendorList(this.vendorId).then(res => {\r\n if (res && Array.isArray(res) && res.length > 0) {\r\n this.setState({ vendorList: res, originalVendorList: res, showloading: false }, () => {\r\n animateViewTable();\r\n this.props.UpdateClientVendorsList(res);\r\n });\r\n }else{\r\n this.setState({showloading: false}, () => {\r\n animateViewTable();\r\n })\r\n }\r\n })\r\n .catch(err => {\r\n this.setState({showloading: false, vendorList: [], originalVendorList: []}, () => {\r\n animateViewTable();\r\n message.error('We are unable to pull vendors list, you can retry by using refresh option.');\r\n })\r\n console.log(err);\r\n })\r\n })\r\n }\r\n\r\n\r\n search = (evt) => {\r\n let searchString = evt.target.value;\r\n var updatedVendorList = [...this.state.originalVendorList];\r\n let searchKeyList = ['name', 'payBy', 'addressCity', 'addressState', 'addressZip', 'accNumber'];\r\n updatedVendorList = arrayFilterByValue(updatedVendorList, searchString, searchKeyList);\r\n this.setState({ vendorList: updatedVendorList, searchText: searchString });\r\n }\r\n backFromVendors() {\r\n if (this.props.history) {\r\n this.props.history.push('/');\r\n }\r\n }\r\n\r\n openWireInstruction(row) {\r\n //put the row value in store\r\n this.props.ViewWireInstructions(row, 'UPDATE').then(afterSettingWireInstruction => {\r\n if (this.props.history) {\r\n this.props.history.push('/setupbills');\r\n }\r\n });\r\n }\r\n\r\n viewInvoice(row) {\r\n //put the invoice value in store\r\n }\r\n\r\n addVendor() {\r\n this.payUsingOtherPayment();\r\n }\r\n\r\n payUsingWire(){\r\n this.props.ViewWireInstructions(null, 'ADD').then(afterSettingWireInstruction => {\r\n if (this.props.history) {\r\n this.props.history.push('/setupbills');\r\n }\r\n });\r\n }\r\n\r\n payUsingOtherPayment(){\r\n\r\n //ge the url from environment variables.\r\n let url = this.props.env && this.props.env.REACT_APP_OTHER_PAYMENT_METHOD_URL ? this.props.env.REACT_APP_OTHER_PAYMENT_METHOD_URL : '';\r\n let windowObj = window.open(url, 'billpaywindow', 'toolbar=0,location=0,menubar=0,width='+window.screen.availWidth+\",height=\"+window.screen.availHeight);\r\n if(windowObj){\r\n windowObj.focus();\r\n }\r\n\r\n this.setState({howToPayModalState: false});\r\n }\r\n\r\n toggleHowToPayAcceptModal(){\r\n this.setState({howToPayModalState: !this.state.howToPayModalState});\r\n }\r\n\r\n openBilldotcomVendor(row){\r\n //console.log(row);\r\n //ge the url from environment variables.\r\n\r\n let windowObj = this.props.ssoWindow;\r\n\r\n if(windowObj){\r\n if (windowObj.closed){\r\n let url = row && row.billdotComSso ? row.billdotComSso : '';\r\n windowObj = window.open(url, 'billpaywindow', 'toolbar=0,location=0,menubar=0,width='+window.screen.availWidth+\",height=\"+window.screen.availHeight);\r\n this.props.UPDATE_SSO_WINDOW_INSTANCE(windowObj);\r\n }\r\n else{\r\n let url = row && row.deepLink ? row.deepLink : '';\r\n windowObj = window.open(url, 'billpaywindow', 'toolbar=0,location=0,menubar=0,width='+window.screen.availWidth+\",height=\"+window.screen.availHeight);\r\n this.props.UPDATE_SSO_WINDOW_INSTANCE(windowObj);\r\n }\r\n }else{\r\n let url = row && row.billdotComSso ? row.billdotComSso : '';\r\n windowObj = window.open(url, 'billpaywindow', 'toolbar=0,location=0,menubar=0,width='+window.screen.availWidth+\",height=\"+window.screen.availHeight);\r\n this.props.UPDATE_SSO_WINDOW_INSTANCE(windowObj);\r\n }\r\n\r\n \r\n if(windowObj){\r\n windowObj.focus();\r\n }\r\n }\r\n\r\n\r\n render() {\r\n\r\n if(this.state.showloading){\r\n return (
Loading Vendors List  
)\r\n }\r\n else{\r\n return(\r\n <>\r\n \r\n this.backFromVendors()}\r\n openWireInstruction={(row) => this.openWireInstruction(row)}\r\n openBilldotcomVendor={(row) => this.openBilldotcomVendor(row)}\r\n addVendor={() => this.addVendor()}\r\n viewInvoice={(row) => this.viewInvoice(row)}\r\n selectedClient={this.props.selectedClient}\r\n search={this.search}\r\n />\r\n\r\n this.toggleHowToPayAcceptModal()}\r\n payUsingWire={() => this.payUsingWire()}\r\n payUsingOtherPayment={() => this.payUsingOtherPayment()}\r\n />\r\n \r\n );\r\n }\r\n }\r\n\r\n}\r\nconst mapStateToProps = (store) => {\r\n return {\r\n selectedClient: store.dashboard.selectedClient,\r\n refresh: store.app.refresh,\r\n ssoWindow: store.app.ssoWindow,\r\n env: store.app.env\r\n };\r\n}\r\n\r\nconst mapDispatchToProps = {\r\n ViewWireInstructions,\r\n UpdateClientVendorsList,\r\n UPDATE_SSO_WINDOW_INSTANCE\r\n}\r\nexport default connect(mapStateToProps, mapDispatchToProps)(withRouter(Vendors));\r\n\r\n","import React from 'react';\r\nimport { MsgForNoData } from '../../common/constants';\r\nimport { Form, FormGroup, Label } from \"reactstrap\";\r\nimport 'antd/dist/antd.css';\r\nimport { Upload, Icon, message } from 'antd';\r\nimport { uploadInvoices } from '../../services/billpayservice/billpayservices';\r\nimport uuid from 'uuid';\r\nconst { Dragger } = Upload;\r\n\r\n\r\nexport function UploadInvoiceView(props) \r\n{\r\n const uploadProps = {\r\n name: 'file',\r\n accept:'.pdf',\r\n multiple: true,\r\n customRequest: ({ onSuccess, onError, onProgress, file }) => onFileUpload({ onSuccess, onError, onProgress, file }),\r\n onChange: (info) => onFileUploadStatusChange(info),\r\n listType: 'text'\r\n };\r\n \r\n\r\n const onFileUpload = ({ onSuccess, onError, onProgress, file }) => {\r\n\r\n uploadInvoices(file, props.vendorId, props.userEmail, (progressEvent) => onUploadProgress(progressEvent, file, onProgress)).then(uploadRes => {\r\n console.log('upload response', uploadRes);\r\n onSuccess(null, file);\r\n })\r\n .catch(err => {\r\n console.log('file upload error', err);\r\n onError();\r\n })\r\n }\r\n \r\n const onUploadProgress = (progressEvent, file, onProgress) => {\r\n onProgress({ percent: Math.round(progressEvent.loaded / progressEvent.total * 100).toFixed(2) }, file)\r\n }\r\n\r\n const onFileUploadStatusChange = (info) => {\r\n const { status } = info.file;\r\n if (status !== 'uploading') {\r\n //do something \r\n }\r\n if (status === 'done') {\r\n //message.success(`${info.file.name} file uploaded successfully.`);\r\n } else if (status === 'error') {\r\n //message.error(`${info.file.name} file upload failed.`);\r\n }\r\n }\r\n \r\n\r\n let uploadInvoiceView = (\r\n
\r\n
\r\n
\r\n
\r\n UPLOAD INVOICES\r\n
\r\n
\r\n {props && props.vendorId ?\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n {/* */}\r\n \r\n \r\n

\r\n

Click or drag file(s) to this area to upload invoices for {props.selectedClient && props.selectedClient.name ? props.selectedClient.name : ''}

\r\n
\r\n\r\n
\r\n\r\n
\r\n {/*
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
*/}\r\n {/*
\r\n
\r\n \r\n
\r\n\r\n
*/}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n :
{MsgForNoData}
\r\n }\r\n\r\n
\r\n
\r\n )\r\n return uploadInvoiceView\r\n}","import React, { Component } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { withRouter } from 'react-router-dom';\r\nimport { UploadInvoiceView } from './uploadInvoiceView.jsx';\r\nimport { uploadInvoiceViewAnimation } from '../../common/animation.js';\r\n\r\nexport class UploadInvoice extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.viewInvoice = this.viewInvoice.bind(this);\r\n this.vendorId = (this.props.match && this.props.match.params && this.props.match.params.id ) ? this.props.match.params.id : '';\r\n this.userEmail = (this.props.user && this.props.user.userName) ? this.props.user.userName : '';\r\n\r\n }\r\n viewInvoice = rows => {\r\n alert(\"in viewInvoice function\");\r\n }\r\n\r\n backFromUploadInvoice = () => {\r\n if(this.props.history){\r\n this.props.history.push('/');\r\n }\r\n }\r\n\r\n componentDidMount(){\r\n uploadInvoiceViewAnimation();\r\n }\r\n\r\n render() {\r\n return (\r\n \r\n );\r\n\r\n }\r\n}\r\nconst mapStateToProps = (store) => {\r\n return {\r\n selectedClient: store.dashboard.selectedClient,\r\n user: store.app.user\r\n };\r\n}\r\n\r\nconst mapDispatchToProps = {\r\n\r\n}\r\nexport default connect(mapStateToProps, mapDispatchToProps)(withRouter(UploadInvoice));\r\n\r\n","import React from 'react';\r\n\r\nexport function getRuleGridColumn(editRule, add){\r\n const column = [\r\n {\r\n dataField: 'rulename',\r\n text: 'Rule Name',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: 'institutionname',\r\n text: 'Institution Name',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: 'sourcecoaaccountno',\r\n text: 'Source Main Account #',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: '',\r\n text: 'Condition',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n let renderText = row.condition !== null ? \"Transaction description \" + row.condition +\" \" + row.description + ' then':'';\r\n return
{renderText}
;\r\n }\r\n },\r\n {\r\n dataField: '',\r\n text: 'Action',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n \r\n let payeeText = !row.isexclude\r\n ? (\"Post to \" + (row.coaaccountno !== '' ? \"Main Account: \" + row.coaaccountno + \" \" : '')\r\n + (row.subaccountid !== '' ? \"Sub Account: \" + (row.subaccountno !== \"\" ? row.subaccountno : row.subaccountid) + \" \": '')\r\n + (row.vendorid !== '' ? \"Payee \" + (row.vendorname !== \"\" ? row.vendorname : row.vendorid) : ''))\r\n : '';\r\n let text = row.isrename ? (' And rename the discription to this ' + row.renameddesc + '.') : '';\r\n return
{payeeText + ' ' + text}
;\r\n }\r\n },\r\n {\r\n dataField: '',\r\n text: '',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'right',\r\n headerClasses: 'RCM_noWrap',\r\n headerFormatter: (cell, row) => {\r\n return (
add()} >+ Add New
)\r\n },\r\n formatter: (cell, row) => {\r\n return(
\r\n \r\n
);\r\n }\r\n }\r\n ]\r\n\r\n return column;\r\n}\r\nfunction customCaretSort(order, column) {\r\n if (!order) return ();\r\n else if (order === 'asc') return ();\r\n else if (order === 'desc') return ();\r\n return null;\r\n}\r\n\r\n","import React, { useState } from 'react';\r\nimport { Form, FormGroup, DropdownToggle, DropdownMenu, Dropdown, DropdownItem, Modal, ModalHeader, ModalBody, ModalFooter, Label } from \"reactstrap\";\r\n\r\nconst PostingRulesView = ({ activeRule, mode, toggleAddEditPopup, save, activeClient, isAddEditOpen, handleFormChanges, handleDropdownChange,\r\n toggleSelectValuesPopup}) => {\r\n const [isContainsOpen, setIsContainsOpen] = useState(false);\r\n //const [isTransactionTypeOpen, setIsTransactionTypeOpen] = useState(false);\r\n\r\n const containsOptions = [\r\n 'Contains',\r\n 'Exact Match'\r\n ];\r\n \r\n return (\r\n <>\r\n \r\n \r\n\r\n \r\n \r\n \r\n <>\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n handleFormChanges(evt)}\r\n\r\n />\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n handleFormChanges(evt)}\r\n disabled\r\n />\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n {/*\r\n setIsTransactionTypeOpen(prevIsTransactionTypeOpen => (activeRule.isTransactionType) ? !prevIsTransactionTypeOpen : prevIsTransactionTypeOpen)}\r\n\r\n className={\"RCM_form_control RCM_select_box RCM_mm_select_box RCM_Rules_control\" + (activeRule.isTransactionType ? '' : ' RCM_link_disabled')}>\r\n {activeRule.transactionname && activeRule.transactioncode && activeRule.transactionname !== null && activeRule.transactioncode !== null\r\n ? (activeRule.transactioncode + ' : ' + activeRule.transactionname)\r\n : ((activeRule.vendortrantypeid && activeRule.vendortrantypeid !== null) ? activeRule.vendortrantypeid : '')}\r\n \r\n {\r\n
\r\n {transactions && transactions !== null && transactions.map((item, index) =>\r\n handleDropdownChange(item, 'transaction')}>\r\n
{item.trancode + ' : ' +item.tranname}
\r\n
\r\n )}\r\n
\r\n }\r\n
\r\n
*/}\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n setIsContainsOpen(prevIsContainsOpen => (activeRule.iscondition) ? !prevIsContainsOpen : prevIsContainsOpen)}\r\n\r\n className={\"RCM_form_control RCM_select_box RCM_mm_select_box RCM_Rules_control\" + (activeRule.iscondition ? '' :' RCM_link_disabled')}>\r\n {activeRule.condition !== null ? activeRule.condition :''}\r\n \r\n {\r\n
\r\n {containsOptions && containsOptions !== null && containsOptions.map((item, index) =>\r\n handleDropdownChange(item, 'condition')}>\r\n
{item}
\r\n
\r\n )}\r\n
\r\n }\r\n
\r\n
\r\n handleFormChanges(evt)}\r\n disabled={!activeRule.iscondition}\r\n />\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n handleFormChanges(evt)}\r\n disabled\r\n />\r\n
\r\n \r\n
\r\n \r\n handleFormChanges(evt)}\r\n disabled\r\n />\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n handleFormChanges(evt)}\r\n disabled={!activeRule.isrename}\r\n />\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n
\r\n  \r\n \r\n
\r\n\r\n
\r\n
\r\n\r\n \r\n \r\n )\r\n\r\n};\r\n\r\nexport default PostingRulesView;","import React, { useState, useEffect } from 'react';\r\nimport { MsgForNoData } from '../../../common/constants';\r\nimport { Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap';\r\nimport { Spinner } from 'reactstrap';\r\nimport BootstrapTable from 'react-bootstrap-table-next';\r\nimport { arrayFilterByValue } from './../../../common/constants';\r\n\r\nconst SelectValuesPopup = ({ isSelectValuesPopupOpen, toggleSelectValuesPopup, handleValueChange, selectValuesPopupData,isTransactionType }) => {\r\n const [filterKey, setFilterKey] = useState(\"\"); \r\n const [gridData, setGridData] = useState([]); \r\n useEffect(() => {\r\n setGridData(selectValuesPopupData.data);\r\n setFilterKey(prevFilterKey => \"\");\r\n }, [selectValuesPopupData]);\r\n const handleAccountFilter = (e) => {\r\n let value = e.target.value\r\n let filteredAcct = arrayFilterByValue(selectValuesPopupData.data, value);\r\n setFilterKey(pervFilterKey => value);\r\n setGridData(filteredAcct);\r\n }\r\n const clearAccountFilter = () => {\r\n let filteredAcct = arrayFilterByValue(selectValuesPopupData.data, \"\");\r\n setFilterKey(pervFilterKey => \"\");\r\n setGridData(filteredAcct);\r\n }\r\n const getGridColumn = (handleValueChange) => {\r\n const institutionColumn = [\r\n {\r\n dataField: 'institutionname',\r\n text: 'Institution Name',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: '',\r\n text: '',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'right',\r\n headerClasses: 'RCM_noWrap',\r\n\r\n formatter: (cell, row) => {\r\n return (
\r\n \r\n
);\r\n }\r\n }\r\n ];\r\n const mainAccountColumn = [\r\n {\r\n dataField: 'mainaccountid',\r\n text: 'Main Account #',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: 'name',\r\n text: 'Main Account Name',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: 'description',\r\n text: 'Description',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n \r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n }, \r\n {\r\n dataField: '',\r\n text: '',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'right',\r\n headerClasses: 'RCM_noWrap',\r\n\r\n formatter: (cell, row) => {\r\n return (
\r\n \r\n
);\r\n }\r\n }\r\n ];\r\n const subAccountColumn = [\r\n {\r\n dataField: 'subaccountno',\r\n text: 'Sub Account #',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: 'subaccountname',\r\n text: 'Sub Account Name',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: '',\r\n text: '',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'right',\r\n headerClasses: 'RCM_noWrap',\r\n\r\n formatter: (cell, row) => {\r\n return (
\r\n \r\n
);\r\n }\r\n }\r\n ];\r\n const payeeColumn = [\r\n {\r\n dataField: 'rcmPayeeId',\r\n text: 'Payee Id',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: 'name',\r\n text: 'Payee Name',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: '',\r\n text: '',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'right',\r\n headerClasses: 'RCM_noWrap',\r\n\r\n formatter: (cell, row) => {\r\n return (
\r\n \r\n
);\r\n }\r\n }\r\n ];\r\n const transactionColumn = [\r\n {\r\n dataField: 'trancode',\r\n text: 'Transaction code',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: 'tranname',\r\n text: 'Name',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: '',\r\n text: '',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'right',\r\n headerClasses: 'RCM_noWrap',\r\n\r\n formatter: (cell, row) => {\r\n return (
\r\n \r\n
);\r\n }\r\n }\r\n ];\r\n\r\n if (selectValuesPopupData.source === 'Institution')\r\n return institutionColumn;\r\n else if (selectValuesPopupData.source === 'MainAccounts')\r\n return mainAccountColumn;\r\n else if (selectValuesPopupData.source === 'SubAccounts')\r\n return subAccountColumn;\r\n else if (selectValuesPopupData.source === 'Transaction')\r\n return transactionColumn;\r\n else \r\n return payeeColumn;\r\n }\r\n function customCaretSort(order, column) {\r\n if (!order) return ();\r\n else if (order === 'asc') return ();\r\n else if (order === 'desc') return ();\r\n return null;\r\n }\r\n const getKey = (selectValuesPopupData)=>{\r\n if (selectValuesPopupData.source === 'Institution') return 'institutionname';\r\n else if (selectValuesPopupData.source === 'MainAccounts') return 'mainaccountid';\r\n else if (selectValuesPopupData.source === 'SubAccounts') return 'subaccountno';\r\n else if (selectValuesPopupData.source === 'Payee') return 'rcmPayeeId';\r\n else if (selectValuesPopupData.source === 'Transaction') return 'trancode';\r\n else return 'institutionname';\r\n }\r\n return (\r\n <>\r\n \r\n \r\n {selectValuesPopupData.source === 'Institution' ?\r\n \r\n : (selectValuesPopupData.source === 'MainAccounts') ? \r\n : (selectValuesPopupData.source === 'SubAccounts') ? \r\n : (selectValuesPopupData.source === 'Payee') ? \r\n : (selectValuesPopupData.source === 'Transaction') ? \r\n : ''\r\n }\r\n \r\n \r\n <>\r\n
\r\n handleAccountFilter(e)}\r\n value={filterKey}\r\n \r\n />\r\n \r\n
\r\n\r\n {\r\n gridData ?\r\n
\r\n \r\n
\r\n :
{MsgForNoData}
\r\n\r\n }\r\n \r\n
\r\n \r\n \r\n\r\n \r\n
\r\n\r\n \r\n )\r\n}\r\nexport default SelectValuesPopup;","import React, { useState, useEffect } from 'react';\r\nimport { useSelector } from 'react-redux';\r\nimport { Spinner } from 'reactstrap';\r\nimport { BackTop, message } from 'antd';\r\nimport BootstrapTable from 'react-bootstrap-table-next';\r\nimport { MsgForNoData, arrayFilterByValue } from '../../../common/constants';\r\nimport { getRuleGridColumn } from './ruleListColumns';\r\nimport PostingRulesView from './postingRulesView';\r\nimport { getNestedObject } from '../../../common/common';\r\nimport ClientListPopup from '../clientListPopup';\r\nimport SelectValuesPopup from './selectValuesPopup';\r\n\r\nimport {\r\n getVendorListService, getVendorListServiceCancellationToken,\r\n addEditRuleService, addEditRuleServiceCancellationToken,\r\n getRuleListService, getRuleServiceCancellationToken,\r\n getInstitutionService, getInstitutionServiceCancellationToken,\r\n getAccountSubaccountService, getAccountSubaccountServiceCancellationToken,\r\n getMainAccountService, getMainAccountServiceCancellationToken,\r\n getTransactionListService, getTransactionListServiceCancellationToken\r\n} from './../../../services/accountingServices/accountingService';\r\nimport { animateViewTable } from '../../../common/animation';\r\n\r\nconst PostingRules = (props) => {\r\n const [ruleList, setRuleList] = useState([]);\r\n const [gridData, setGridData] = useState([]);\r\n const [filterKey, setFilterKey] = useState(\"\");\r\n const [showOverlay, setShowOverlay] = useState(false);\r\n const [activeClient, setActiveClient] = useState({});\r\n const [isClientListPopupOpen, setIsClientListPopupOpen] = useState(false);\r\n const [activeRule, setActiveRule] = useState({});\r\n const [vendorList, setVendorList] = useState([]);\r\n const [mode, setMode] = useState(\"\");\r\n const [isAddEditOpen, setIsAddEditOpen] = useState(false);\r\n const [isSelectValuesPopupOpen, setIsSelectValuesPopupOpen] = useState(false);\r\n const [institutionList, setInstitutionList] = useState([]);\r\n const [subAccountList, setSubAccountList] = useState([]);\r\n const [mainAccountList, setMainAccountList] = useState([]);\r\n const [selectValuesPopupData, setSelectValuesPopupData] = useState({});\r\n const selectedClient = useSelector(state => getNestedObject(state, ['dashboard', 'selectedClient']));\r\n const [modified, setModified] = useState(false);\r\n const [transactions, setTransactions] = useState([]);\r\n useEffect(() => {\r\n setActiveClient(prevActiveClient => { return { ...selectedClient } });\r\n return () => {\r\n if (getVendorListServiceCancellationToken !== null && getVendorListServiceCancellationToken !== undefined) {\r\n getVendorListServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n if (addEditRuleServiceCancellationToken !== null && addEditRuleServiceCancellationToken !== undefined) {\r\n addEditRuleServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n if (getRuleServiceCancellationToken !== null && getRuleServiceCancellationToken !== undefined) {\r\n getRuleServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n if (getInstitutionServiceCancellationToken !== null && getInstitutionServiceCancellationToken !== undefined) {\r\n getInstitutionServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n if (getAccountSubaccountServiceCancellationToken !== null && getAccountSubaccountServiceCancellationToken !== undefined) {\r\n getAccountSubaccountServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n if (getMainAccountServiceCancellationToken !== null && getMainAccountServiceCancellationToken !== undefined) {\r\n getMainAccountServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n if (getTransactionListServiceCancellationToken !== null && getTransactionListServiceCancellationToken !== undefined) {\r\n getTransactionListServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n } \r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (activeClient && activeClient.pKid) {\r\n setShowOverlay(prevShowOverlay => true);\r\n getRuleList(activeClient.pKid);\r\n getVendorList(activeClient.pKid);\r\n getInstitutionList();\r\n getSubAccountsList();\r\n getMainAccountsList();\r\n getTransactionList();\r\n }\r\n }, [activeClient]);\r\n\r\n useEffect(() => {\r\n setActiveClient(prevActiveClient => { return { ...selectedClient } });\r\n setFilterKey(pervFilterKey => \"\");\r\n }, [selectedClient]);\r\n useEffect(() => {\r\n if (activeRule.rulename !== undefined)\r\n saveRule();\r\n }, [modified]);\r\n\r\n const getRuleList = (pKid) => {\r\n \r\n getRuleListService(pKid).then(res => {\r\n\r\n if (res.status === 200) {\r\n if (res && res.data && res.data && res.data !== null && Array.isArray(res.data)) {\r\n let data = res.data;\r\n setRuleList(data);\r\n setGridData(data);\r\n }\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to get rule list, you can try again.\");\r\n console.error(\"Error Occured while fetching vendors\");\r\n }\r\n setShowOverlay(prevShowOverlay => false);\r\n\r\n })\r\n .catch(err => {\r\n setShowOverlay(prevShowOverlay => false);\r\n animateViewTable();\r\n message.error(\"We are unable to get rule list, you can try again.\");\r\n console.error(\"Error Occured while fetching vendors\");\r\n })\r\n }\r\n const handleFilter = (e) => {\r\n let value = e.target.value\r\n let filteredRule = arrayFilterByValue(ruleList, value);\r\n setFilterKey(pervFilterKey => value);\r\n setGridData(filteredRule);\r\n }\r\n const clearFilter = () => {\r\n let filteredRule = arrayFilterByValue(ruleList, \"\");\r\n setFilterKey(pervFilterKey => \"\");\r\n setGridData(filteredRule);\r\n }\r\n const getVendorList = (entityId) => {\r\n \r\n getVendorListService(entityId).then(res => {\r\n\r\n if (res.status === 200) {\r\n if (res && res.data && res.data && res.data !== null && Array.isArray(res.data)) {\r\n let data = [{\r\n legalEntityId: \"\",\r\n name: \"\",\r\n rcmPayeeId: '',\r\n sid: \"\"\r\n }, ...res.data];\r\n setVendorList(data);\r\n }\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to get vendor list, you can try again.\");\r\n console.error(\"Error Occured while fetching vendors\");\r\n }\r\n\r\n })\r\n .catch(err => {\r\n animateViewTable();\r\n message.error(\"We are unable to get vendor list, you can try again.\");\r\n console.error(\"Error Occured while fetching vendors\");\r\n })\r\n }\r\n const getInstitutionList = () => {\r\n getInstitutionService(activeClient.pKid).then(res => {\r\n\r\n if (res.status === 200) {\r\n if (res && res.data && res.data && res.data !== null && Array.isArray(res.data)) {\r\n setInstitutionList(res.data);\r\n }\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to get institution list, you can try again.\");\r\n console.error(\"Error Occured while fetching institutions\");\r\n }\r\n\r\n })\r\n .catch(err => {\r\n animateViewTable();\r\n message.error(\"We are unable to get institution list, you can try again.\");\r\n console.error(\"Error Occured while fetching institutions\");\r\n })\r\n }\r\n const getSubAccountsList = () => {\r\n getAccountSubaccountService(activeClient.pKid).then(res => {\r\n\r\n if (res.status === 200) {\r\n if (res && res.data && res.data && res.data !== null && Array.isArray(res.data)) {\r\n setSubAccountList(res.data);\r\n }\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to get sub account list, you can try again.\");\r\n console.error(\"Error Occured while fetching accounts\");\r\n }\r\n\r\n })\r\n .catch(err => {\r\n animateViewTable();\r\n message.error(\"We are unable to get sub account list, you can try again.\");\r\n console.error(\"Error Occured while fetching accounta\");\r\n })\r\n }\r\n const getMainAccountsList = () => {\r\n getMainAccountService().then(res => {\r\n\r\n if (res.status === 200) {\r\n if (res && res.data && res.data && res.data !== null && Array.isArray(res.data)) {\r\n setMainAccountList(res.data);\r\n }\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to get main account list, you can try again.\");\r\n console.error(\"Error Occured while fetching accounts\");\r\n }\r\n\r\n })\r\n .catch(err => {\r\n animateViewTable();\r\n message.error(\"We are unable to get main account list, you can try again.\");\r\n console.error(\"Error Occured while fetching accounts\");\r\n })\r\n }\r\n const getTransactionList = () => {\r\n getTransactionListService().then(res => {\r\n\r\n if (res.status === 200) {\r\n if (res && res.data && res.data && res.data !== null && Array.isArray(res.data)) {\r\n setTransactions(res.data);\r\n }\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to get transaction list, you can try again.\");\r\n console.error(\"Error Occured while fetching transactions\");\r\n }\r\n\r\n })\r\n .catch(err => {\r\n animateViewTable();\r\n message.error(\"We are unable to get transactions list, you can try again.\");\r\n console.error(\"Error Occured while fetching transactions\");\r\n })\r\n }\r\n const toggleClientListPopup = () => {\r\n setIsClientListPopupOpen(prevIsClientListPopupOpen => !prevIsClientListPopupOpen);\r\n }\r\n\r\n const toggleAddEditPopup = () => {\r\n setIsAddEditOpen(prevAddEditOpen => !prevAddEditOpen);\r\n setActiveRule({});\r\n setMode(\"\");\r\n }\r\n const toggleSelectValuesPopup = (source, mainSource=\"\") => {\r\n setIsSelectValuesPopupOpen(prevIsSelectValuesPopupOpen => !prevIsSelectValuesPopupOpen);\r\n let data = [];\r\n if (source === 'Institution') {\r\n data = [...institutionList];\r\n } else if (source === 'SubAccounts') {\r\n data = [...subAccountList];\r\n } else if (source === 'MainAccounts') {\r\n data = [...mainAccountList];\r\n } else if (source === 'Transaction') {\r\n data = [...transactions];\r\n } else {\r\n data = [...vendorList];\r\n }\r\n let selectValuesPopupData = { source: source, data: data, mainSource: mainSource};\r\n setSelectValuesPopupData(selectValuesPopupData);\r\n }\r\n \r\n const handleValueChange = (selectedrow) => {\r\n if (selectValuesPopupData.source === 'Institution') {\r\n if (selectedrow.institutionname === 'All Institutions') {\r\n setActiveRule(prevActiveRule => {\r\n return {\r\n ...prevActiveRule, accountinstitutionid: null,\r\n institutionname: selectedrow.institutionname,\r\n isallinstitutions: (selectedrow.institutionname === 'All Institutions') ? 'Y' : 'N'\r\n }\r\n });\r\n } else {\r\n setActiveRule(prevActiveRule => {\r\n return {\r\n ...prevActiveRule, accountinstitutionid: selectedrow.accountinstitutionid,\r\n institutionname: selectedrow.institutionname,\r\n isallinstitutions: (selectedrow.institutionname === 'All Institutions') ? 'Y' : 'N'\r\n }\r\n });\r\n }\r\n }\r\n else if (selectValuesPopupData.source === 'SubAccounts') {\r\n setActiveRule(prevActiveRule => {\r\n return {\r\n ...prevActiveRule,\r\n subaccountid: selectedrow.subaccountid,\r\n subaccountno: selectedrow.subaccountno,\r\n subaccountname: selectedrow.subaccountname\r\n }\r\n });\r\n } else if (selectValuesPopupData.source === 'Payee') {\r\n setActiveRule(prevActiveRule => {\r\n return {\r\n ...prevActiveRule,\r\n vendorid: selectedrow.rcmPayeeId,\r\n vendorname: selectedrow.name\r\n }\r\n });\r\n } else if (selectValuesPopupData.source === 'Transaction') {\r\n setActiveRule(prevActiveRule => {\r\n return {\r\n ...prevActiveRule,\r\n transactionname: selectedrow.tranname,\r\n transactioncode: selectedrow.trancode,\r\n vendortrantypeid: selectedrow.vendortrantypid\r\n }\r\n });\r\n }\r\n else if (selectValuesPopupData.source === 'MainAccounts') {\r\n if (selectValuesPopupData.mainSource === 'SourceMainAccount') {\r\n setActiveRule(prevActiveRule => {\r\n return {\r\n ...prevActiveRule, sourcecoaaccountno: selectedrow.mainaccountid,\r\n sourcecoaaccountname: selectedrow.name\r\n }\r\n });\r\n } else {\r\n setActiveRule(prevActiveRule => {\r\n return {\r\n ...prevActiveRule, coaaccountno: selectedrow.mainaccountid,\r\n coaaccountname: selectedrow.name\r\n }\r\n });\r\n }\r\n }\r\n setIsSelectValuesPopupOpen(prevIsSelectValuesPopupOpen => !prevIsSelectValuesPopupOpen);\r\n setSelectValuesPopupData({});\r\n }\r\n \r\n const handleFormChanges = evt => {\r\n let value = evt.target.value;\r\n if (evt.target.name === \"rulename\") {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, rulename: value } });\r\n } else if (evt.target.name === 'description') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, description: value } });\r\n } else if (evt.target.name === 'isrename') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, isrename: !prevActiveRule.isrename } });\r\n //if (!activeRule.isrename) {\r\n // setActiveRule(prevActiveRule => { return { ...prevActiveRule, isrename: !prevActiveRule.isrename } });\r\n //} else {\r\n // setActiveRule(prevActiveRule => { return { ...prevActiveRule, isrename: !prevActiveRule.isrename, renameddesc:''} });\r\n //}\r\n } else if (evt.target.name === 'renameddesc') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, renameddesc: value } });\r\n } else if (evt.target.name === 'coaaccountno') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, coaaccountno: value } });\r\n } else if (evt.target.name === 'subaccountno') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, subaccountno: value } });\r\n } else if (evt.target.name === 'sourcecoaaccountno') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, sourcecoaaccountno: value } });\r\n } else if (evt.target.name === 'iscondition') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, iscondition: !prevActiveRule.iscondition } });\r\n } else if (evt.target.name === 'isTransactionType') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, isTransactionType: !prevActiveRule.isTransactionType } });\r\n } else if (evt.target.name === 'isexclude') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, isexclude: !prevActiveRule.isexclude } });\r\n }\r\n }\r\n const handleDropdownChange = (item, source) => {\r\n if (source === 'condition') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, condition: item } });\r\n } else if (source === 'vendorid') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, vendorid: item.rcmPayeeId, vendorname: item.name } });\r\n } else if (source === 'transaction') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, transactionname: item.tranname, transactioncode: item.trancode, vendortrantypeid: item.vendortrantypid} });\r\n } \r\n }\r\n const add = () => {\r\n setActiveRule({\r\n clientorgid: activeClient.orgId,\r\n clientid: activeClient.pKid,\r\n rulename: '',\r\n description: '',\r\n condition: null,\r\n coaaccountno: '',\r\n coaaccountname: '',\r\n subaccountid:'',\r\n subaccountno: '',\r\n subaccountname:'',\r\n vendorid: '',\r\n vendorname: '',\r\n renameddesc: '',\r\n isrename: false,\r\n isallinstitutions : 'N',\r\n sourcecoaaccountno: '',\r\n sourcecoaaccountname: '',\r\n accountinstitutionid: 1,\r\n institutionname: 'NFS',\r\n iscondition: true,\r\n isTransactionType: false,\r\n transactionname: '',\r\n vendortrantypeid: '',\r\n transactioncode: '',\r\n isexclude: false\r\n });\r\n setMode(\"add\");\r\n setIsAddEditOpen(prevAddEditOpen => true);\r\n \r\n }\r\n const editRule = row => {\r\n let iscondition = (row.condition === null) ? false : true;\r\n let isTransactionType = (row.vendortrantypeid === undefined || row.vendortrantypeid === null || row.vendortrantypeid === '') ? false : true;\r\n let editrow = { ...row, iscondition: iscondition, isTransactionType: isTransactionType};\r\n setActiveRule(editrow);\r\n setMode(\"edit\");\r\n setIsAddEditOpen(prevAddEditOpen => true);\r\n }\r\n \r\n const save = () => {\r\n \r\n\r\n if (!activeRule.iscondition || !activeRule.isrename || !activeRule.isTransactionType || activeRule.isexclude ) {\r\n let condition = !activeRule.iscondition ? null : activeRule.condition;\r\n let description = !activeRule.iscondition ? '' : activeRule.description;\r\n let renameddesc = !activeRule.isrename ? '' : activeRule.renameddesc;\r\n let transactionname = !activeRule.isTransactionType ? '' : activeRule.transactionname;\r\n let transactioncode = !activeRule.isTransactionType ? '' : activeRule.transactioncode;\r\n let vendortrantypeid = !activeRule.isTransactionType ? '' : activeRule.vendortrantypeid;\r\n let coaaccountno = activeRule.isexclude ? '' : activeRule.coaaccountno;\r\n let coaaccountname = activeRule.isexclude ? '' : activeRule.coaaccountname;\r\n let subaccountid = activeRule.isexclude ? '' : activeRule.subaccountid;\r\n let subaccountno = activeRule.isexclude ? '' : activeRule.subaccountno;\r\n let subaccountname = activeRule.isexclude ? '' : activeRule.subaccountname;\r\n let vendorid = activeRule.isexclude ? '' : activeRule.vendorid;\r\n let vendorname = activeRule.isexclude ? '' : activeRule.vendorname;\r\n setActiveRule(prevActiveRule => {\r\n return {\r\n ...prevActiveRule, condition: condition, description: description, renameddesc: renameddesc, vendortrantypeid: vendortrantypeid,\r\n transactionname: transactionname, transactioncode: transactioncode, coaaccountno: coaaccountno, coaaccountname: coaaccountname,\r\n subaccountid: subaccountid, subaccountno: subaccountno, subaccountname: subaccountname, vendorid: vendorid, vendorname: vendorname\r\n }\r\n });\r\n setModified(pervModified => !pervModified); \r\n } else\r\n setModified(pervModified => !pervModified); \r\n }\r\n const saveRule = () => {\r\n setShowOverlay(prevShowOverlay => true);\r\n addEditRuleService(activeRule, mode).then(res => {\r\n if (res.status === \"success\") {\r\n setIsAddEditOpen(prevAddEditOpen => false);\r\n getRuleList(activeClient.pKid);\r\n setActiveRule({});\r\n setMode(\"\");\r\n setShowOverlay(prevShowOverlay => false);\r\n } else {\r\n setShowOverlay(prevShowOverlay => false);\r\n animateViewTable();\r\n message.error(\"We are unable save rule, you can try again.\");\r\n }\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n setShowOverlay(prevShowOverlay => false);\r\n animateViewTable();\r\n message.error(\"We are unable save rule, you can try again.\");\r\n }) \r\n }\r\n return (\r\n <>\r\n
\r\n {\r\n showOverlay ?
Loading Rules\r\n  \r\n
\r\n : <>\r\n \r\n
\r\n
\r\n Select {\r\n activeClient === undefined || activeClient === null || activeClient === \"\" || activeClient.pKid === undefined ? \" a \" : ' another '}\r\n toggleClientListPopup()}>client.\r\n \r\n
\r\n
\r\n {\r\n activeClient === undefined || activeClient === null || activeClient === \"\" || activeClient.pKid === undefined\r\n ? <>\r\n :\r\n <>\r\n
\r\n
\r\n RULES FOR - {activeClient && activeClient.name}\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n handleFilter(e)}\r\n value={filterKey}\r\n\r\n />\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {\r\n ruleList ?\r\n
\r\n \r\n
\r\n :
{MsgForNoData}
\r\n\r\n }\r\n
\r\n\r\n
\r\n\r\n\r\n
\r\n\r\n\r\n
\r\n \r\n\r\n }\r\n \r\n }\r\n
\r\n \r\n \r\n \r\n \r\n \r\n )\r\n\r\n};\r\n\r\nexport default PostingRules;","import React, { useState, useEffect } from 'react';\r\nimport { useSelector } from 'react-redux';\r\nimport { Spinner } from 'reactstrap';\r\nimport { BackTop, message } from 'antd';\r\nimport BootstrapTable from 'react-bootstrap-table-next';\r\nimport { MsgForNoData, arrayFilterByValue } from '../../../common/constants';\r\nimport { getRuleGridColumn } from './ruleListColumns';\r\nimport PostingRulesView from './postingRulesView';\r\nimport { getNestedObject } from '../../../common/common';\r\n\r\nimport SelectValuesPopup from './selectValuesPopup';\r\n\r\nimport {\r\n getVendorListService, getVendorListServiceCancellationToken,\r\n addEditRuleService, addEditRuleServiceCancellationToken,\r\n getRuleListService, getRuleServiceCancellationToken,\r\n getInstitutionService, getInstitutionServiceCancellationToken,\r\n getAccountSubaccountService, getAccountSubaccountServiceCancellationToken,\r\n getMainAccountService, getMainAccountServiceCancellationToken,\r\n getTransactionListService, getTransactionListServiceCancellationToken\r\n} from '../../../services/accountingServices/accountingService';\r\nimport { animateViewTable } from '../../../common/animation';\r\n\r\nconst PostingRulesAllClients = (props) => {\r\n const [ruleList, setRuleList] = useState([]);\r\n const [gridData, setGridData] = useState([]);\r\n const [filterKey, setFilterKey] = useState(\"\");\r\n const [showOverlay, setShowOverlay] = useState(false);\r\n const [activeClient, setActiveClient] = useState({});\r\n const [isClientListPopupOpen, setIsClientListPopupOpen] = useState(false);\r\n const [activeRule, setActiveRule] = useState({});\r\n const [vendorList, setVendorList] = useState([]);\r\n const [mode, setMode] = useState(\"\");\r\n const [isAddEditOpen, setIsAddEditOpen] = useState(false);\r\n const [isSelectValuesPopupOpen, setIsSelectValuesPopupOpen] = useState(false);\r\n const [institutionList, setInstitutionList] = useState([]);\r\n const [subAccountList, setSubAccountList] = useState([]);\r\n const [mainAccountList, setMainAccountList] = useState([]);\r\n const [selectValuesPopupData, setSelectValuesPopupData] = useState({});\r\n const selectedClient = { name: 'All Clients', pKid: '-1', orgId: '-1' };\r\n const [modified, setModified] = useState(false);\r\n const [transactions, setTransactions] = useState([]);\r\n useEffect(() => {\r\n setActiveClient(prevActiveClient => { return { ...selectedClient } });\r\n setFilterKey(pervFilterKey => \"\");\r\n return () => {\r\n if (getVendorListServiceCancellationToken !== null && getVendorListServiceCancellationToken !== undefined) {\r\n getVendorListServiceCancellationToken.cancel(\"Cancelling vendor list request on unmount to prevent memory leak.\");\r\n }\r\n if (addEditRuleServiceCancellationToken !== null && addEditRuleServiceCancellationToken !== undefined) {\r\n addEditRuleServiceCancellationToken.cancel(\"Cancelling Add/Edit rule request on unmount to prevent memory leak.\");\r\n }\r\n if (getRuleServiceCancellationToken !== null && getRuleServiceCancellationToken !== undefined) {\r\n getRuleServiceCancellationToken.cancel(\"Cancelling rule list request on unmount to prevent memory leak.\");\r\n }\r\n if (getInstitutionServiceCancellationToken !== null && getInstitutionServiceCancellationToken !== undefined) {\r\n getInstitutionServiceCancellationToken.cancel(\"Cancelling institution list request on unmount to prevent memory leak.\");\r\n }\r\n if (getAccountSubaccountServiceCancellationToken !== null && getAccountSubaccountServiceCancellationToken !== undefined) {\r\n getAccountSubaccountServiceCancellationToken.cancel(\"Cancelling subAcccount request on unmount to prevent memory leak.\");\r\n }\r\n if (getMainAccountServiceCancellationToken !== null && getMainAccountServiceCancellationToken !== undefined) {\r\n getMainAccountServiceCancellationToken.cancel(\"Cancelling account list request on unmount to prevent memory leak.\");\r\n }\r\n if (getTransactionListServiceCancellationToken !== null && getTransactionListServiceCancellationToken !== undefined) {\r\n getTransactionListServiceCancellationToken.cancel(\"Cancelling transaction request on unmount to prevent memory leak.\");\r\n } \r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (activeClient && activeClient.pKid) {\r\n setShowOverlay(prevShowOverlay => true);\r\n getRuleList(activeClient.pKid);\r\n getVendorList(activeClient.pKid);\r\n getInstitutionList();\r\n getSubAccountsList();\r\n getMainAccountsList();\r\n getTransactionList();\r\n }\r\n }, [activeClient]);\r\n\r\n \r\n useEffect(() => {\r\n if (activeRule.rulename !== undefined)\r\n saveRule();\r\n }, [modified]);\r\n\r\n const getRuleList = (pKid) => {\r\n \r\n getRuleListService(pKid).then(res => {\r\n\r\n if (res.status === 200) {\r\n if (res && res.data && res.data && res.data !== null && Array.isArray(res.data)) {\r\n let data = res.data;\r\n setRuleList(data);\r\n setGridData(data);\r\n }\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to get rule list, you can try again.\");\r\n console.error(\"Error Occured while fetching vendors\");\r\n }\r\n setShowOverlay(prevShowOverlay => false);\r\n\r\n })\r\n .catch(err => {\r\n setShowOverlay(prevShowOverlay => false);\r\n animateViewTable();\r\n message.error(\"We are unable to get rule list, you can try again.\");\r\n console.error(\"Error Occured while fetching vendors\");\r\n })\r\n }\r\n const handleFilter = (e) => {\r\n let value = e.target.value\r\n let filteredRule = arrayFilterByValue(ruleList, value);\r\n setFilterKey(pervFilterKey => value);\r\n setGridData(filteredRule);\r\n }\r\n const clearFilter = () => {\r\n let filteredRule = arrayFilterByValue(ruleList, \"\");\r\n setFilterKey(pervFilterKey => \"\");\r\n setGridData(filteredRule);\r\n }\r\n const getVendorList = (entityId) => {\r\n \r\n getVendorListService(entityId).then(res => {\r\n\r\n if (res.status === 200) {\r\n if (res && res.data && res.data && res.data !== null && Array.isArray(res.data)) {\r\n let data = [{\r\n legalEntityId: \"\",\r\n name: \"\",\r\n rcmPayeeId: '',\r\n sid: \"\"\r\n }, ...res.data];\r\n setVendorList(data);\r\n }\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to get vendor list, you can try again.\");\r\n console.error(\"Error Occured while fetching vendors\");\r\n }\r\n\r\n })\r\n .catch(err => {\r\n animateViewTable();\r\n message.error(\"We are unable to get vendor list, you can try again.\");\r\n console.error(\"Error Occured while fetching vendors\");\r\n })\r\n }\r\n const getInstitutionList = () => {\r\n getInstitutionService(activeClient.pKid).then(res => {\r\n\r\n if (res.status === 200) {\r\n if (res && res.data && res.data && res.data !== null && Array.isArray(res.data)) {\r\n setInstitutionList(res.data);\r\n }\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to get institution list, you can try again.\");\r\n console.error(\"Error Occured while fetching institutions\");\r\n }\r\n\r\n })\r\n .catch(err => {\r\n animateViewTable();\r\n message.error(\"We are unable to get institution list, you can try again.\");\r\n console.error(\"Error Occured while fetching institutions\");\r\n })\r\n }\r\n const getSubAccountsList = () => {\r\n getAccountSubaccountService(activeClient.pKid).then(res => {\r\n\r\n if (res.status === 200) {\r\n if (res && res.data && res.data && res.data !== null && Array.isArray(res.data)) {\r\n setSubAccountList(res.data);\r\n }\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to get sub account list, you can try again.\");\r\n console.error(\"Error Occured while fetching accounts\");\r\n }\r\n\r\n })\r\n .catch(err => {\r\n animateViewTable();\r\n message.error(\"We are unable to get sub account list, you can try again.\");\r\n console.error(\"Error Occured while fetching accounta\");\r\n })\r\n }\r\n const getMainAccountsList = () => {\r\n getMainAccountService().then(res => {\r\n\r\n if (res.status === 200) {\r\n if (res && res.data && res.data && res.data !== null && Array.isArray(res.data)) {\r\n setMainAccountList(res.data);\r\n }\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to get main account list, you can try again.\");\r\n console.error(\"Error Occured while fetching accounts\");\r\n }\r\n\r\n })\r\n .catch(err => {\r\n animateViewTable();\r\n message.error(\"We are unable to get main account list, you can try again.\");\r\n console.error(\"Error Occured while fetching accounts\");\r\n })\r\n }\r\n const getTransactionList = () => {\r\n getTransactionListService().then(res => {\r\n\r\n if (res.status === 200) {\r\n if (res && res.data && res.data && res.data !== null && Array.isArray(res.data)) {\r\n setTransactions(res.data);\r\n }\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to get transaction list, you can try again.\");\r\n console.error(\"Error Occured while fetching transactions\");\r\n }\r\n\r\n })\r\n .catch(err => {\r\n animateViewTable();\r\n message.error(\"We are unable to get transactions list, you can try again.\");\r\n console.error(\"Error Occured while fetching transactions\");\r\n })\r\n }\r\n \r\n\r\n const toggleAddEditPopup = () => {\r\n setIsAddEditOpen(prevAddEditOpen => !prevAddEditOpen);\r\n setActiveRule({});\r\n setMode(\"\");\r\n }\r\n const toggleSelectValuesPopup = (source, mainSource=\"\") => {\r\n setIsSelectValuesPopupOpen(prevIsSelectValuesPopupOpen => !prevIsSelectValuesPopupOpen);\r\n let data = [];\r\n if (source === 'Institution') {\r\n data = [...institutionList];\r\n } else if (source === 'SubAccounts') {\r\n data = [...subAccountList];\r\n } else if (source === 'MainAccounts') {\r\n data = [...mainAccountList];\r\n } else if (source === 'Transaction') {\r\n data = [...transactions];\r\n } else {\r\n data = [...vendorList];\r\n }\r\n let selectValuesPopupData = { source: source, data: data, mainSource: mainSource};\r\n setSelectValuesPopupData(selectValuesPopupData);\r\n }\r\n \r\n const handleValueChange = (selectedrow) => {\r\n if (selectValuesPopupData.source === 'Institution') {\r\n if (selectedrow.institutionname === 'All Institutions') {\r\n setActiveRule(prevActiveRule => {\r\n return {\r\n ...prevActiveRule, accountinstitutionid: null,\r\n institutionname: selectedrow.institutionname,\r\n isallinstitutions: (selectedrow.institutionname === 'All Institutions') ? 'Y' : 'N'\r\n }\r\n });\r\n } else {\r\n setActiveRule(prevActiveRule => {\r\n return {\r\n ...prevActiveRule, accountinstitutionid: selectedrow.accountinstitutionid,\r\n institutionname: selectedrow.institutionname,\r\n isallinstitutions: (selectedrow.institutionname === 'All Institutions') ? 'Y' : 'N'\r\n }\r\n });\r\n }\r\n }\r\n else if (selectValuesPopupData.source === 'SubAccounts') {\r\n setActiveRule(prevActiveRule => {\r\n return {\r\n ...prevActiveRule,\r\n subaccountid: selectedrow.subaccountid,\r\n subaccountno: selectedrow.subaccountno,\r\n subaccountname: selectedrow.subaccountname\r\n }\r\n });\r\n } else if (selectValuesPopupData.source === 'Payee') {\r\n setActiveRule(prevActiveRule => {\r\n return {\r\n ...prevActiveRule,\r\n vendorid: selectedrow.rcmPayeeId,\r\n vendorname: selectedrow.name\r\n }\r\n });\r\n } else if (selectValuesPopupData.source === 'Transaction') {\r\n setActiveRule(prevActiveRule => {\r\n return {\r\n ...prevActiveRule,\r\n transactionname: selectedrow.tranname,\r\n transactioncode: selectedrow.trancode,\r\n vendortrantypeid: selectedrow.vendortrantypid\r\n }\r\n });\r\n }\r\n else if (selectValuesPopupData.source === 'MainAccounts') {\r\n if (selectValuesPopupData.mainSource === 'SourceMainAccount') {\r\n setActiveRule(prevActiveRule => {\r\n return {\r\n ...prevActiveRule, sourcecoaaccountno: selectedrow.mainaccountid,\r\n sourcecoaaccountname: selectedrow.name\r\n }\r\n });\r\n } else {\r\n setActiveRule(prevActiveRule => {\r\n return {\r\n ...prevActiveRule, coaaccountno: selectedrow.mainaccountid,\r\n coaaccountname: selectedrow.name\r\n }\r\n });\r\n }\r\n }\r\n setIsSelectValuesPopupOpen(prevIsSelectValuesPopupOpen => !prevIsSelectValuesPopupOpen);\r\n setSelectValuesPopupData({});\r\n }\r\n \r\n const handleFormChanges = evt => {\r\n let value = evt.target.value;\r\n if (evt.target.name === \"rulename\") {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, rulename: value } });\r\n } else if (evt.target.name === 'description') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, description: value } });\r\n } else if (evt.target.name === 'isrename') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, isrename: !prevActiveRule.isrename } });\r\n } else if (evt.target.name === 'renameddesc') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, renameddesc: value } });\r\n } else if (evt.target.name === 'coaaccountno') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, coaaccountno: value } });\r\n } else if (evt.target.name === 'subaccountno') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, subaccountno: value } });\r\n } else if (evt.target.name === 'sourcecoaaccountno') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, sourcecoaaccountno: value } });\r\n } else if (evt.target.name === 'iscondition') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, iscondition: !prevActiveRule.iscondition } });\r\n } else if (evt.target.name === 'isTransactionType') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, isTransactionType: !prevActiveRule.isTransactionType } });\r\n } else if (evt.target.name === 'isexclude') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, isexclude: !prevActiveRule.isexclude } });\r\n }\r\n }\r\n const handleDropdownChange = (item, source) => {\r\n if (source === 'condition') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, condition: item } });\r\n } else if (source === 'vendorid') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, vendorid: item.rcmPayeeId, vendorname: item.name } });\r\n } else if (source === 'transaction') {\r\n setActiveRule(prevActiveRule => { return { ...prevActiveRule, transactionname: item.tranname, transactioncode: item.trancode, vendortrantypeid: item.vendortrantypid} });\r\n } \r\n }\r\n const add = () => {\r\n setActiveRule({\r\n clientorgid: activeClient.orgId,\r\n clientid: activeClient.pKid,\r\n rulename: '',\r\n description: '',\r\n condition: null,\r\n coaaccountno: '',\r\n coaaccountname: '',\r\n subaccountid:'',\r\n subaccountno: '',\r\n subaccountname:'',\r\n vendorid: '',\r\n vendorname: '',\r\n renameddesc: '',\r\n isrename: false,\r\n isallinstitutions : 'N',\r\n sourcecoaaccountno: '',\r\n sourcecoaaccountname: '',\r\n accountinstitutionid: 1,\r\n institutionname: 'NFS',\r\n iscondition: true,\r\n isTransactionType: false,\r\n transactionname: '',\r\n vendortrantypeid: '',\r\n transactioncode: '',\r\n isexclude: false\r\n });\r\n setMode(\"add\");\r\n setIsAddEditOpen(prevAddEditOpen => true);\r\n \r\n }\r\n const editRule = row => {\r\n let iscondition = (row.condition === null) ? false : true;\r\n let isTransactionType = (row.vendortrantypeid === undefined || row.vendortrantypeid === null || row.vendortrantypeid === '') ? false : true;\r\n let editrow = { ...row, iscondition: iscondition, isTransactionType: isTransactionType };\r\n setActiveRule(editrow);\r\n setMode(\"edit\");\r\n setIsAddEditOpen(prevAddEditOpen => true);\r\n }\r\n \r\n const save = () => {\r\n\r\n if (!activeRule.iscondition || !activeRule.isrename || !activeRule.isTransactionType || activeRule.isexclude ) {\r\n let condition = !activeRule.iscondition ? null : activeRule.condition;\r\n let description = !activeRule.iscondition ? '' : activeRule.description;\r\n let renameddesc = !activeRule.isrename ? '' : activeRule.renameddesc;\r\n let transactionname = !activeRule.isTransactionType ? '' : activeRule.transactionname;\r\n let transactioncode = !activeRule.isTransactionType ? '' : activeRule.transactioncode;\r\n let vendortrantypeid = !activeRule.isTransactionType ? '' : activeRule.vendortrantypeid;\r\n let coaaccountno = activeRule.isexclude ? '' : activeRule.coaaccountno;\r\n let coaaccountname = activeRule.isexclude ? '' : activeRule.coaaccountname;\r\n let subaccountid = activeRule.isexclude ? '' : activeRule.subaccountid;\r\n let subaccountno = activeRule.isexclude ? '' : activeRule.subaccountno;\r\n let subaccountname = activeRule.isexclude ? '' : activeRule.subaccountname;\r\n let vendorid = activeRule.isexclude ? '' : activeRule.vendorid;\r\n let vendorname = activeRule.isexclude ? '' : activeRule.vendorname;\r\n\r\n setActiveRule(prevActiveRule => {\r\n return {\r\n ...prevActiveRule, condition: condition, description: description, renameddesc: renameddesc, vendortrantypeid: vendortrantypeid,\r\n transactionname: transactionname, transactioncode: transactioncode, coaaccountno: coaaccountno, coaaccountname: coaaccountname,\r\n subaccountid: subaccountid, subaccountno: subaccountno, subaccountname: subaccountname, vendorid: vendorid, vendorname: vendorname\r\n }\r\n });\r\n setModified(pervModified => !pervModified); \r\n } else\r\n setModified(pervModified => !pervModified); \r\n }\r\n const saveRule = () => {\r\n setShowOverlay(prevShowOverlay => true);\r\n addEditRuleService(activeRule, mode).then(res => {\r\n if (res.status === \"success\") {\r\n setIsAddEditOpen(prevAddEditOpen => false);\r\n getRuleList(activeClient.pKid);\r\n setActiveRule({});\r\n setMode(\"\");\r\n setShowOverlay(prevShowOverlay => false);\r\n } else {\r\n setShowOverlay(prevShowOverlay => false);\r\n animateViewTable();\r\n message.error(\"We are unable save rule, you can try again.\");\r\n }\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n setShowOverlay(prevShowOverlay => false);\r\n animateViewTable();\r\n message.error(\"We are unable save rule, you can try again.\");\r\n }) \r\n }\r\n return (\r\n <>\r\n
\r\n {\r\n showOverlay ?
Loading Rules\r\n  \r\n
\r\n : <>\r\n \r\n \r\n {\r\n <>\r\n
\r\n
\r\n RULES FOR - ALL CLIENTS\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n handleFilter(e)}\r\n value={filterKey}\r\n\r\n />\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {\r\n ruleList ?\r\n
\r\n \r\n
\r\n :
{MsgForNoData}
\r\n\r\n }\r\n
\r\n\r\n
\r\n\r\n\r\n
\r\n\r\n\r\n
\r\n \r\n\r\n }\r\n \r\n }\r\n
\r\n \r\n \r\n \r\n \r\n \r\n )\r\n\r\n};\r\n\r\nexport default PostingRulesAllClients;","import React, { Component } from 'react';\r\nimport { Route, Switch } from 'react-router';\r\nimport { Redirect, withRouter } from 'react-router-dom';\r\nimport PostingRules from './postingRules';\r\nimport PostingRulesAllClients from './postingRulesAllClients';\r\nimport 'antd/dist/antd.css';\r\nimport { Tabs } from 'antd';\r\nconst { TabPane } = Tabs;\r\n\r\nclass PostingRulesContainer extends Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n ActiveKey: '1'\r\n }\r\n\r\n this.onTabChanges = this.onTabChanges.bind(this);\r\n }\r\n\r\n //getActiveTab = () => {\r\n // const currentRoute = this.props.history.location.pathname;\r\n // let activeKey = \"1\";\r\n // if (currentRoute === `${this.props.match.url}` || currentRoute === `${this.props.match.url}/allclientpayees`)\r\n // activeKey = \"1\";\r\n // else if (currentRoute === `${this.props.match.url}/specificclientpayees`)\r\n // activeKey = \"2\";\r\n // return activeKey;\r\n //}\r\n\r\n onTabChanges(activetabKey) {\r\n \r\n this.setState(prevState => ({\r\n ActiveKey: activetabKey\r\n }));\r\n\r\n }\r\n\r\n render() {\r\n \r\n return (\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default withRouter(PostingRulesContainer);\r\n\r\n\r\n","import React from 'react';\r\nimport { formatInCurrency, roundvalue, formatMoney, roundUnitValue } from './../../../common/utilities';\r\n\r\n\r\nexport const defaultSorted = [{ dataField: 'dtsettle', order: 'desc' }];\r\nexport function getSourceDataColumns(accounts) {\r\n const columns = [\r\n {\r\n dataField: 'dttrade',\r\n text: 'Trade Date',\r\n sort: true,\r\n classes: 'RCM_common_table_column_text RCM_noWrap',\r\n headerAlign: 'left',\r\n formatter: (cell) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else return {cell.split('T')[0]};\r\n },\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'dtsettle',\r\n text: 'Settlement Date',\r\n headerClasses: 'RCM_noWrap',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n formatter: (cell) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else return {cell.split('T')[0]};\r\n }\r\n },\r\n {\r\n dataField: 'accountnickname',\r\n text: 'Account',\r\n sort: true,\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n formatter: (cell, row) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else return row.accountnickname;\r\n },\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'trndesc',\r\n text: 'Description',\r\n sort: false,\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n formatter: (cell) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else return {cell};\r\n }\r\n },\r\n {\r\n dataField: 'trntype',\r\n text: 'Type',\r\n sort: true,\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n formatter: (cell) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else return {cell};\r\n },\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'secid',\r\n text: 'Symbol/Cusip',\r\n sort: true,\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n formatter: (cell) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else return {cell};\r\n },\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'units',\r\n text: 'Quantity',\r\n sort: true,\r\n headerAlign: 'right',\r\n classes: 'RCM_common_table_column_number',\r\n formatter: (cell) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else if (cell == 0) return 0;\r\n else return {roundUnitValue(cell)};\r\n },\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'unitprice',\r\n text: 'Price',\r\n sort: true,\r\n headerAlign: 'right',\r\n classes: 'RCM_common_table_column_number',\r\n formatter: (cell) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else if (cell == 0) return $0;\r\n else return {formatInCurrency(cell)};\r\n },\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'total',\r\n text: 'Amount',\r\n sort: true,\r\n headerAlign: 'right',\r\n classes: 'RCM_common_table_column_number',\r\n formatter: (cell, row) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else {\r\n //let modifiedCell = parseFloat(String(cell).replace(\"*\", \"\"));\r\n if (cell < 0) return {row.ispending\r\n ? formatMoney(roundvalue(cell, 2)) + \"*\"\r\n : formatMoney(roundvalue(cell, 2))};\r\n else if (cell > 0) return {row.ispending\r\n ? formatMoney(roundvalue(cell, 2)) + \"*\"\r\n : formatMoney(roundvalue(cell, 2))};\r\n else return $0;\r\n }\r\n\r\n },\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n ]\r\n return columns;\r\n}\r\n\r\nexport function getAccountingDataColumns(accounts) {\r\n const columns = [\r\n {\r\n dataField: 'transdate',\r\n text: 'Transaction Date',\r\n sort: true,\r\n classes: 'RCM_common_table_column_text RCM_noWrap',\r\n headerAlign: 'left',\r\n formatter: (cell) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else return {cell.split('T')[0]};\r\n },\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'accountdisplayvalue',\r\n text: 'Account',\r\n sort: true,\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n formatter: (cell, row) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else return row.accountnickname;\r\n },\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'subaccount',\r\n text: 'Posting Account',\r\n sort: true,\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n formatter: (cell, row) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else return row.accountnickname;\r\n },\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'subaccount',\r\n text: 'SubAccount',\r\n sort: true,\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n formatter: (cell, row) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else return row.accountnickname;\r\n },\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'vendor',\r\n text: 'Vendor',\r\n sort: true,\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n formatter: (cell, row) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else return row.accountnickname;\r\n },\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'description',\r\n text: 'Description',\r\n sort: false,\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n formatter: (cell) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else return {cell};\r\n }\r\n },\r\n {\r\n dataField: 'trntype',\r\n text: 'Type',\r\n sort: true,\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n formatter: (cell) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else return {cell};\r\n },\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'creditamount',\r\n text: 'Credit Amount',\r\n sort: true,\r\n headerAlign: 'right',\r\n classes: 'RCM_common_table_column_number',\r\n formatter: (cell, row) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else if (cell === 0) return $0\r\n else {\r\n //let modifiedCell = parseFloat(String(cell).replace(\"*\", \"\"));\r\n //if (cell < 0) return {row.ispending\r\n // ? formatMoney(roundvalue(cell, 2)) + \"*\"\r\n // : formatMoney(roundvalue(cell, 2))};\r\n //else if (cell > 0) return {row.ispending\r\n // ? formatMoney(roundvalue(cell, 2)) + \"*\"\r\n // : formatMoney(roundvalue(cell, 2))};\r\n return {formatMoney(roundvalue(cell, 2))};\r\n }\r\n\r\n },\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'debitamount',\r\n text: 'Debit Amount',\r\n sort: true,\r\n headerAlign: 'right',\r\n classes: 'RCM_common_table_column_number',\r\n formatter: (cell, row) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else if (cell === 0) return $0\r\n else {\r\n //let modifiedCell = parseFloat(String(cell).replace(\"*\", \"\"));\r\n //if (cell < 0) return {row.ispending\r\n // ? formatMoney(roundvalue(cell, 2)) + \"*\"\r\n // : formatMoney(roundvalue(cell, 2))};\r\n //else if (cell > 0) return {row.ispending\r\n // ? formatMoney(roundvalue(cell, 2)) + \"*\"\r\n // : formatMoney(roundvalue(cell, 2))};\r\n return {formatMoney(roundvalue(cell, 2))};\r\n }\r\n\r\n },\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'offsetaccountdisplayvalue',\r\n text: 'Offset Account',\r\n sort: true,\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n formatter: (cell, row) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else return {cell};\r\n },\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'subaccount',\r\n text: 'SubAccount',\r\n sort: true,\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n formatter: (cell, row) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else return row.accountnickname;\r\n },\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'vendor',\r\n text: 'Vendor',\r\n sort: true,\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n formatter: (cell, row) => {\r\n if (cell === undefined || cell === null || cell === '') return -;\r\n else return row.accountnickname;\r\n },\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n ]\r\n return columns;\r\n}\r\nfunction customCaretSort(order, column) {\r\n if (!order) return ();\r\n else if (order === 'asc') return ();\r\n else if (order === 'desc') return ();\r\n return null;\r\n}\r\n\r\n\r\n","import React, { useState, useEffect, useCallback } from 'react';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport { MsgForNoData } from '../../../common/constants';\r\nimport { Spinner } from 'reactstrap';\r\nimport BootstrapTable from 'react-bootstrap-table-next';\r\nimport { getNestedObject } from '../../../common/common'\r\nimport { getSourceDataColumns } from './transactionColumns';\r\nimport { arrayFilterByValue } from '../../../common/utilities';\r\nimport { getTransactionsSourceDataService, getTransactionsSourceDataServiceCancellationToken } from '../../../services/accountingServices/accountingService';\r\nimport { animateViewTable } from '../../../common/animation';\r\nimport { BackTop, message } from 'antd';\r\nconst SourceData = () => {\r\n const [showOverlay, setShowOverlay] = useState(false);\r\n const [sourceData, setSourceData] = useState(null);\r\n const [filterSourceData, setfilterSourceData] = useState([]);\r\n const selectedClient = useSelector(state => getNestedObject(state, ['dashboard', 'selectedClient']));\r\n const selectedSubAccount = useSelector(state => getNestedObject(state, ['accounting', 'selectedSubAccount']));\r\n useEffect(() => {\r\n\r\n fetchSourceData();\r\n return () => {\r\n //cancellation token needs to be added here\r\n if (getTransactionsSourceDataServiceCancellationToken !== null && getTransactionsSourceDataServiceCancellationToken !== undefined) {\r\n getTransactionsSourceDataServiceCancellationToken.cancel(\"Cancelling Source data transactions request on unmount to prevent memory leak.\");\r\n }\r\n }\r\n }, []);\r\n\r\n \r\n const fetchSourceData = () => {\r\n if (selectedClient && selectedSubAccount && selectedSubAccount.accountKey!==null) {\r\n console.log(\"selectedSubAccount\" + selectedSubAccount);\r\n setShowOverlay(prevShowOverlay => true);\r\n getTransactionsSourceDataService(selectedSubAccount.accountKey).then(res => {\r\n\r\n //console.log(\"SubaccountsList: \" + JSON.stringify(res));\r\n if (res) {\r\n if (res && res.value && res.value.length > 0 && res.value[0].activities !== null && Array.isArray(res.value[0].activities)) {\r\n setSourceData(res.value[0].activities);\r\n setfilterSourceData(res.value[0].activities);\r\n }\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to get Source Data Transactions, you can try again.\");\r\n console.error(\"Error Occured while fetching Source Data Transactions\");\r\n }\r\n setShowOverlay(prevShowOverlay => false);\r\n\r\n })\r\n .catch(err => {\r\n setShowOverlay(prevShowOverlay => false);\r\n animateViewTable();\r\n message.error(\"We are unable to get Source Data Transactions, you can try again.\");\r\n console.error(\"Error Occured while fetching Source Data Transactions\");\r\n })\r\n //let response = { \"@odata.context\": \"https://Activitysummary/odata/$metadata#ActivitySummary\", \"value\": [{ \"activitysummary\": \"RJL000001,RJL000002,RJL000004,RJL000006,RJL000007,RJL000008,RJL000010,RJL000011,RJL000012,RJL000013,RJL000014,RJL000019,RJL000020,RJL000024,RJL000025,RJL000026,RJL000029,RJL000030,RJL000036,RJL000065,RJL000067,RJL000069,RJL000070,RKZ000018,RJL000068,RJL000066,RJL000064,RJL000061,RJL000060,RJL000056,RJL000055,RJL000041,RJL000031,RJL000023,RJL000022,RJL000005,RJL000003\", \"numberofaccounts\": 37, \"numberofactivities\": 180, \"numberofpages\": 0, \"pagenumber\": 0, \"pagesize\": 0, \"statuscode\": 0, \"activities\": [{ \"acct\": \"RJL000001\", \"key\": \"RJL000001\", \"displayname\": \"Individual - 0001\", \"dtentry\": \"2020-09-20T00:00:00-04:00\", \"dttrade\": \"2020-09-20T00:00:00-04:00\", \"dtsettle\": \"2020-09-20T00:00:00-04:00\", \"trntype\": \"INTEREST\", \"catseq\": \"7\", \"trncode\": \"in\", \"trndesc\": \"MARGIN INTEREST @ 4.000% AVG BAL 347DR\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1.20000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"INT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000008\", \"key\": \"RJL000008\", \"displayname\": \"Individual - 0008\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"by\", \"trndesc\": \"TRANSFERRED FROM VS RJL-000030-1/ANGEL OAK MULTI STRATEGY INCOME CL A\", \"secid\": \"ANGLX\", \"cusipnumber\": \"03463K307\", \"total\": 0.00000, \"units\": 1.00000, \"unitprice\": 0.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000008\", \"key\": \"RJL000008\", \"displayname\": \"Individual - 0008\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"dp\", \"trndesc\": \"TRANSFERRED FROM VS RJL-000030-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 100.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-10-08T00:00:00-04:00\", \"dttrade\": \"2020-10-08T00:00:00-04:00\", \"dtsettle\": \"2020-10-08T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000089-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1008.01000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-10-08T00:00:00-04:00\", \"dttrade\": \"2020-10-08T00:00:00-04:00\", \"dtsettle\": \"2020-10-08T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000090-1 CURRENT CONTRIBUTION\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1008.02000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $1.000/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": -16.52000, \"units\": 16.52000, \"unitprice\": 1.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": 16.52000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-25T00:00:00-04:00\", \"dttrade\": \"2020-09-25T00:00:00-04:00\", \"dtsettle\": \"2020-09-25T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000090-1 CURRENT CONTRIBUTION\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -13.23000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-25T00:00:00-04:00\", \"dttrade\": \"2020-09-25T00:00:00-04:00\", \"dtsettle\": \"2020-09-25T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000090-1 CURRENT CONTRIBUTION\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -22.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-17T00:00:00-04:00\", \"dttrade\": \"2020-09-17T00:00:00-04:00\", \"dtsettle\": \"2020-09-17T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID AD36010302 /DIRECTED\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -17.09000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-17T00:00:00-04:00\", \"dttrade\": \"2020-09-17T00:00:00-04:00\", \"dtsettle\": \"2020-09-17T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38326231\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 16.09000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-16T00:00:00-04:00\", \"dttrade\": \"2020-09-16T00:00:00-04:00\", \"dtsettle\": \"2020-09-16T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJM-000003-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -98.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"DEPOSIT RECEIVED CHECK RECEIVED\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1.20000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": true, \"tranmnemonic\": \"CKR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"DEPOSIT RECEIVED CHECK RECEIVED\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 8.26000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": true, \"tranmnemonic\": \"CKR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"DEPOSIT RECEIVED CHECK RECEIVED\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 9.10000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": true, \"tranmnemonic\": \"CKR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000012\", \"key\": \"RJL000012\", \"displayname\": \"Individual - 0012\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $1.000/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": -0.81000, \"units\": 0.81000, \"unitprice\": 1.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000012\", \"key\": \"RJL000012\", \"displayname\": \"Individual - 0012\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": 0.81000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-07T00:00:00-04:00\", \"dttrade\": \"2020-10-07T00:00:00-04:00\", \"dtsettle\": \"2020-10-07T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"CHECK ISSUED CHECK PAID 327345723\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -500.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CKP\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-06T00:00:00-04:00\", \"dttrade\": \"2020-10-06T00:00:00-04:00\", \"dtsettle\": \"2020-10-06T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01679411\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"sl\", \"trndesc\": \"TRANSFERRED TO VS RJL-000055-1/LORD ABBETT BOND DEBENTURE CLASS A\", \"secid\": \"LBNDX\", \"cusipnumber\": \"544004104\", \"total\": 0.00000, \"units\": -500.00000, \"unitprice\": 0.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"sl\", \"trndesc\": \"TRANSFERRED TO VS RJL-000055-1/CATERPILLAR INC COM USD1.00\", \"secid\": \"CAT\", \"cusipnumber\": \"149123101\", \"total\": 0.00000, \"units\": -1.00000, \"unitprice\": 0.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"sl\", \"trndesc\": \"TRANSFERRED TO VS RJL-000055-1/BANK OF NEW YORK MELLON CORP COM USD0.01\", \"secid\": \"BK\", \"cusipnumber\": \"064058100\", \"total\": 0.00000, \"units\": -200.00000, \"unitprice\": 0.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"JOURNAL\", \"catseq\": \"8\", \"trncode\": \"dp\", \"trndesc\": \"JOURNALED MARGIN TO CASH A/C\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 2690.52000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"JNL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"JOURNAL\", \"catseq\": \"8\", \"trncode\": \"wd\", \"trndesc\": \"JOURNALED MARGIN TO CASH A/C\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -2690.52000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"JNL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000014 REDEMPTION\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000055-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -50000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-02T00:00:00-04:00\", \"dttrade\": \"2020-10-02T00:00:00-04:00\", \"dtsettle\": \"2020-10-02T00:00:00-04:00\", \"trntype\": \"JOURNAL\", \"catseq\": \"8\", \"trncode\": \"dp\", \"trndesc\": \"JOURNALED MARGIN TO CASH A/C\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1.23000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"JNL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-02T00:00:00-04:00\", \"dttrade\": \"2020-10-02T00:00:00-04:00\", \"dtsettle\": \"2020-10-02T00:00:00-04:00\", \"trntype\": \"JOURNAL\", \"catseq\": \"8\", \"trncode\": \"wd\", \"trndesc\": \"JOURNALED MARGIN TO CASH A/C\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1.23000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"JNL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-02T00:00:00-04:00\", \"dttrade\": \"2020-10-02T00:00:00-04:00\", \"dtsettle\": \"2020-10-02T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000037-1 CURRENT CONTRIBUTION\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1.23000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $7.990/LORD ABBETT BOND DEBENTURE CLASS A\", \"secid\": \"LBNDX\", \"cusipnumber\": \"544004104\", \"total\": -68.60000, \"units\": 8.58600, \"unitprice\": 7.990000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/LORD ABBETT BOND DEBENTURE CLASS A\", \"secid\": \"LBNDX\", \"cusipnumber\": \"544004104\", \"total\": 68.60000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-02T00:00:00-04:00\", \"trntype\": \"SELL\", \"catseq\": \"9\", \"trncode\": \"sl\", \"trndesc\": \"YOU SOLD CONF:000000006 PERSONAL WITHDRAWAL/LORD ABBETT BOND DEBENTURE CLASS A\", \"secid\": \"LBNDX\", \"cusipnumber\": \"544004104\", \"total\": 300.00000, \"units\": -37.45300, \"unitprice\": 8.010000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SEL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-02T00:00:00-04:00\", \"trntype\": \"SELL\", \"catseq\": \"9\", \"trncode\": \"sl\", \"trndesc\": \"YOU SOLD CONF:000000017 PERSONAL WITHDRAWAL/AMERICAN CAPITAL INCOME BUILDER CL A\", \"secid\": \"CAIBX\", \"cusipnumber\": \"140193103\", \"total\": 100.00000, \"units\": -1.71700, \"unitprice\": 58.240000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SEL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-01T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01672672\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-01T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"CHECK ISSUED CHECK PAID 327345325\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1300.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CKP\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-01T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01672673\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -10000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": 18.99000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-28T00:00:00-04:00\", \"dttrade\": \"2020-09-28T00:00:00-04:00\", \"dtsettle\": \"2020-09-28T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"CHECK ISSUED CHECK PAID 327344887\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1500.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CKP\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-18T00:00:00-04:00\", \"dttrade\": \"2020-09-18T00:00:00-04:00\", \"dtsettle\": \"2020-09-18T00:00:00-04:00\", \"trntype\": \"JOURNAL\", \"catseq\": \"8\", \"trncode\": \"dp\", \"trndesc\": \"JOURNALED VS RJL-000014-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 85.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"JNL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $112.0450TRADE DATE 09-11-20/APPLE INC COM USD0.00001\", \"secid\": \"AAPL\", \"cusipnumber\": \"037833100\", \"total\": -12.00000, \"units\": 0.10700, \"unitprice\": 112.045000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-16T00:00:00-04:00\", \"dttrade\": \"2020-09-16T00:00:00-04:00\", \"dtsettle\": \"2020-09-18T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT SOLICITED ORDER/ROSEMONT ILL TAXABLE GO REF BDS SER. 04.00000% 12/01/2020 2011C\", \"secid\": \"777543XS3\", \"cusipnumber\": \"777543XS3\", \"total\": -5098.99000, \"units\": 5000.00000, \"unitprice\": 100.652000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-16T00:00:00-04:00\", \"dttrade\": \"2020-09-16T00:00:00-04:00\", \"dtsettle\": \"2020-09-17T00:00:00-04:00\", \"trntype\": \"SELL\", \"catseq\": \"9\", \"trncode\": \"sl\", \"trndesc\": \"YOU SOLD UNSOLICITED ORDER CONF:000000005/LORD ABBETT BOND DEBENTURE CLASS A\", \"secid\": \"LBNDX\", \"cusipnumber\": \"544004104\", \"total\": 1000.00000, \"units\": -124.06900, \"unitprice\": 8.060000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SEL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-16T00:00:00-04:00\", \"dttrade\": \"2020-09-16T00:00:00-04:00\", \"dtsettle\": \"2020-09-16T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38323945\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 700.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-16T00:00:00-04:00\", \"dttrade\": \"2020-09-16T00:00:00-04:00\", \"dtsettle\": \"2020-09-16T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38323944\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $59.160/AMERICAN CAPITAL INCOME BUILDER CL A\", \"secid\": \"CAIBX\", \"cusipnumber\": \"140193103\", \"total\": -27.63000, \"units\": 0.46700, \"unitprice\": 59.160000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/AMERICAN CAPITAL INCOME BUILDER CL A\", \"secid\": \"CAIBX\", \"cusipnumber\": \"140193103\", \"total\": 27.63000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-16T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT PERIODIC INVESTMENT CONF:035803097/LORD ABBETT BOND DEBENTURE CLASS A\", \"secid\": \"LBNDX\", \"cusipnumber\": \"544004104\", \"total\": -500.00000, \"units\": 62.03500, \"unitprice\": 8.060000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-16T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT PERIODIC INVESTMENT CONF:035803096/LORD ABBETT BOND DEBENTURE CLASS A\", \"secid\": \"LBNDX\", \"cusipnumber\": \"544004104\", \"total\": -500.00000, \"units\": 60.97600, \"unitprice\": 8.200000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-16T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT PERIODIC INVESTMENT CONF:035808002/AMERICAN CAPITAL INCOME BUILDER CL A\", \"secid\": \"CAIBX\", \"cusipnumber\": \"140193103\", \"total\": -500.00000, \"units\": 8.04000, \"unitprice\": 62.190000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-16T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT PERIODIC INVESTMENT CONF:035808003/AMERICAN CAPITAL INCOME BUILDER CL A\", \"secid\": \"CAIBX\", \"cusipnumber\": \"140193103\", \"total\": -200.00000, \"units\": 3.36800, \"unitprice\": 59.390000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000014 REDEMPTION\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -100.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000014 REDEMPTION\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -100.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000014 REDEMPTION\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -500.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"CHECK ISSUED CHECK PAID 327344417\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -500.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CKP\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"CHECK ISSUED CHECK PAID 327344418\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -500.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CKP\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"CHECK ISSUED CHECK PAID 327344416\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1234.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CKP\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-14T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT PROSPECTUS UNDER SEPARATE COVER/COLUMBIA ACORN CLASS A\", \"secid\": \"LACAX\", \"cusipnumber\": \"197199102\", \"total\": -10000.00000, \"units\": 832.07800, \"unitprice\": 12.018100000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-14T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"BY\", \"trndesc\": \"BUY CANCEL UNSOLICITED ORDER CONF:020501562/COLUMBIA ACORN CLASS A\", \"secid\": \"LACAX\", \"cusipnumber\": \"197199102\", \"total\": 10000.00000, \"units\": -831.94700, \"unitprice\": 12.020000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/SIRIUS XM HOLDINGS INC COM\", \"secid\": \"SIRI\", \"cusipnumber\": \"82968B103\", \"total\": 0.01000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/WALT DISNEY CO\", \"secid\": \"DIS\", \"cusipnumber\": \"254687106\", \"total\": 0.03000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/APPLE INC COM USD0.00001\", \"secid\": \"AAPL\", \"cusipnumber\": \"037833100\", \"total\": 12.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/APPLE INC COM USD0.00001\", \"secid\": \"AAPL\", \"cusipnumber\": \"037833100\", \"total\": 12.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"SELL\", \"catseq\": \"9\", \"trncode\": \"sl\", \"trndesc\": \"YOU SOLD SOLICITED ORDER/WALT DISNEY CO\", \"secid\": \"DIS\", \"cusipnumber\": \"254687106\", \"total\": 39939.11000, \"units\": -300.00000, \"unitprice\": 133.703000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SEL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-14T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT PROSPECTUS UNDER SEPARATE COVER/COLUMBIA ACORN CLASS A\", \"secid\": \"LACAX\", \"cusipnumber\": \"197199102\", \"total\": -10000.00000, \"units\": 831.94700, \"unitprice\": 12.020000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"SELL\", \"catseq\": \"9\", \"trncode\": \"sl\", \"trndesc\": \"YOU SOLD SOLICITED ORDER EX-DIV DATE 09/14/20/BEST BUY CO INC COM USD0.10\", \"secid\": \"BBY\", \"cusipnumber\": \"086516101\", \"total\": 10790.62000, \"units\": -100.00000, \"unitprice\": 108.518000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SEL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT SOLICITED ORDER/BANK OF NEW YORK MELLON CORP COM USD0.01\", \"secid\": \"BK\", \"cusipnumber\": \"064058100\", \"total\": -43862.52000, \"units\": 1221.00000, \"unitprice\": 35.798500000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT UNSOLICITED ORDER/BANK OF NEW YORK MELLON CORP COM USD0.01\", \"secid\": \"BK\", \"cusipnumber\": \"064058100\", \"total\": -1850.88000, \"units\": 50.00000, \"unitprice\": 35.798500000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-14T00:00:00-04:00\", \"trntype\": \"SELL\", \"catseq\": \"9\", \"trncode\": \"sl\", \"trndesc\": \"YOU SOLD UNSOLICITED ORDER CONF:000000153/AMERICAN BALANCED CLASS A\", \"secid\": \"ABALX\", \"cusipnumber\": \"024071102\", \"total\": 49102.06000, \"units\": -1695.51300, \"unitprice\": 28.960000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SEL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID AD36010152 /DIRECTED\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -6.78000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"JOURNAL\", \"catseq\": \"8\", \"trncode\": \"dp\", \"trndesc\": \"JOURNALED VS RJL-000058-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"JNL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-10-06T00:00:00-04:00\", \"dttrade\": \"2020-10-06T00:00:00-04:00\", \"dtsettle\": \"2020-10-06T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"STATE TAX W/H IL STAT WTH ED01679412\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -250.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-10-06T00:00:00-04:00\", \"dttrade\": \"2020-10-06T00:00:00-04:00\", \"dtsettle\": \"2020-10-06T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"FED TAX W/H RET FED WTH ED01679412\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -250.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"FPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-10-06T00:00:00-04:00\", \"dttrade\": \"2020-10-06T00:00:00-04:00\", \"dtsettle\": \"2020-10-06T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"EARLY DIST NO EXCEPT EARLY DST/NO EXCP APED01679412\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -2000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"PPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"CONTRIB CURRENT YR VS RJL-000013-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CYC\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"JOURNAL\", \"catseq\": \"8\", \"trncode\": \"dp\", \"trndesc\": \"JOURNALED INCOME TO CASH A/C\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 0.11000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"JNL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"JOURNAL\", \"catseq\": \"8\", \"trncode\": \"wd\", \"trndesc\": \"JOURNALED INCOME TO CASH A/C\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -0.11000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"JNL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-01T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"CONTRIB CURRENT YR CASH CONTRB CURR YR ER38336199\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CYC\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY GOVERNMENT CASH RESERVES\", \"secid\": \"FDRXX\", \"cusipnumber\": \"316067107\", \"total\": 0.11000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-25T00:00:00-04:00\", \"dttrade\": \"2020-09-25T00:00:00-04:00\", \"dtsettle\": \"2020-09-25T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"EARLY DIST NO EXCEPT EARLY DST/NO EXCP APED01667448\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -0.09000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"PPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-18T00:00:00-04:00\", \"dttrade\": \"2020-09-18T00:00:00-04:00\", \"dtsettle\": \"2020-09-18T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"STATE TAX W/H IL STAT WTH\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -5.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-18T00:00:00-04:00\", \"dttrade\": \"2020-09-18T00:00:00-04:00\", \"dtsettle\": \"2020-09-18T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"FED TAX W/H FEDERAL TAX WITHHELD\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -10.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"FPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-18T00:00:00-04:00\", \"dttrade\": \"2020-09-18T00:00:00-04:00\", \"dtsettle\": \"2020-09-18T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"EARLY DIST NO EXCEPT VS RJL-000013-1 PART PREMATURE DISTR\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -85.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"PPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"STATE TAX W/H IL STAT WTH ED01661823\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -50.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"FED TAX W/H RET FED WTH ED01661823\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -50.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"FPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"EARLY DIST NO EXCEPT EARLY DST/NO EXCP APED01661823\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -400.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"PPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"CONTRIB CURRENT YR VS RJL-000013-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 100.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CYC\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"CONTRIB CURRENT YR VS RJL-000013-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 100.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CYC\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"CONTRIB CURRENT YR VS RJL-000013-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 500.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CYC\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"CONTRIB CURRENT YR CASH CONTRB CURR YR ER38317549\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1300.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CYC\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000020\", \"key\": \"RJL000020\", \"displayname\": \"Joint WROS - 0020\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $1.000/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": -0.26000, \"units\": 0.26000, \"unitprice\": 1.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000020\", \"key\": \"RJL000020\", \"displayname\": \"Joint WROS - 0020\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": 0.26000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000029\", \"key\": \"RJL000029\", \"displayname\": \"Individual - 0029\", \"dtentry\": \"2020-10-09T00:00:00-04:00\", \"dttrade\": \"2020-10-09T00:00:00-04:00\", \"dtsettle\": \"2020-10-09T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38343566\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 9.99000, \"units\": null, \"unitprice\": null, \"ispending\": true, \"allowcancel\": true, \"allowchange\": false, \"confirmationnumber\": \"CACT3\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": true, \"trandate\": \"2020-10-09-00.45.50.298396\", \"checknumber\": null }, { \"acct\": \"RJL000029\", \"key\": \"RJL000029\", \"displayname\": \"Individual - 0029\", \"dtentry\": \"2020-10-08T00:00:00-04:00\", \"dttrade\": \"2020-10-08T00:00:00-04:00\", \"dtsettle\": \"2020-10-08T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"dp\", \"trndesc\": \"TRANSFERRED FROM VS RJL-000089-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 9.98000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000029\", \"key\": \"RJL000029\", \"displayname\": \"Individual - 0029\", \"dtentry\": \"2020-10-07T00:00:00-04:00\", \"dttrade\": \"2020-10-07T00:00:00-04:00\", \"dtsettle\": \"2020-10-07T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000099-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -232.32000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000029\", \"key\": \"RJL000029\", \"displayname\": \"Individual - 0029\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-01T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"dp\", \"trndesc\": \"TRANSFERRED FROM VS RJL-000089-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 4.58000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000029\", \"key\": \"RJL000029\", \"displayname\": \"Individual - 0029\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": 0.01000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000029\", \"key\": \"RJL000029\", \"displayname\": \"Individual - 0029\", \"dtentry\": \"2020-09-17T00:00:00-04:00\", \"dttrade\": \"2020-09-17T00:00:00-04:00\", \"dtsettle\": \"2020-09-17T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38326234\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 16.09000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000029\", \"key\": \"RJL000029\", \"displayname\": \"Individual - 0029\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"DEPOSIT RECEIVED CHECK RECEIVED\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 0.74000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": true, \"tranmnemonic\": \"CKR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000030\", \"key\": \"RJL000030\", \"displayname\": \"Individual - 0030\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $10.740/DOUBLELINE TOTAL RT BOND FD CL N\", \"secid\": \"DLTNX\", \"cusipnumber\": \"258620202\", \"total\": -87.71000, \"units\": 8.16700, \"unitprice\": 10.740000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000030\", \"key\": \"RJL000030\", \"displayname\": \"Individual - 0030\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/DOUBLELINE TOTAL RT BOND FD CL N\", \"secid\": \"DLTNX\", \"cusipnumber\": \"258620202\", \"total\": 87.71000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000030\", \"key\": \"RJL000030\", \"displayname\": \"Individual - 0030\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $10.240/ANGEL OAK MULTI STRATEGY INCOME CL A\", \"secid\": \"ANGLX\", \"cusipnumber\": \"03463K307\", \"total\": -43.00000, \"units\": 4.19900, \"unitprice\": 10.240000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000030\", \"key\": \"RJL000030\", \"displayname\": \"Individual - 0030\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/ANGEL OAK MULTI STRATEGY INCOME CL A\", \"secid\": \"ANGLX\", \"cusipnumber\": \"03463K307\", \"total\": 43.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000030\", \"key\": \"RJL000030\", \"displayname\": \"Individual - 0030\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $1.000/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": -0.08000, \"units\": 0.08000, \"unitprice\": 1.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000030\", \"key\": \"RJL000030\", \"displayname\": \"Individual - 0030\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": 0.08000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000030\", \"key\": \"RJL000030\", \"displayname\": \"Individual - 0030\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID AD36010102 /DIRECTED\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -100.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000030\", \"key\": \"RJL000030\", \"displayname\": \"Individual - 0030\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"sl\", \"trndesc\": \"TRANSFERRED TO VS RJL-000008-1/ANGEL OAK MULTI STRATEGY INCOME CL A\", \"secid\": \"ANGLX\", \"cusipnumber\": \"03463K307\", \"total\": 0.00000, \"units\": -1.00000, \"unitprice\": 0.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000030\", \"key\": \"RJL000030\", \"displayname\": \"Individual - 0030\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000008-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -100.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": null, \"trndesc\": \" DIV OF $12.44 PENDING REINVESTMENT/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": 0.00000, \"units\": null, \"unitprice\": null, \"ispending\": true, \"allowcancel\": true, \"allowchange\": false, \"confirmationnumber\": \"*DIVP\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": true, \"trandate\": \"2020-10-09-03.49.17.683805\", \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": null, \"trndesc\": \" DIV OF $160.57 PENDING REINVESTMENT/DEERE & CO\", \"secid\": \"DE\", \"cusipnumber\": \"244199105\", \"total\": 0.00000, \"units\": null, \"unitprice\": null, \"ispending\": true, \"allowcancel\": true, \"allowchange\": false, \"confirmationnumber\": \"*DIVP\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": true, \"trandate\": \"2020-10-09-03.49.17.682865\", \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-10-09T00:00:00-04:00\", \"dttrade\": \"2020-10-09T00:00:00-04:00\", \"dtsettle\": \"2020-10-09T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": true, \"allowcancel\": true, \"allowchange\": false, \"confirmationnumber\": \"CACT3\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": true, \"trandate\": \"2020-10-09-03.45.45.127874\", \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $10.090/PUTNAM ULTRA SHORT DURATION INCOME CL A\", \"secid\": \"PSDTX\", \"cusipnumber\": \"74676P755\", \"total\": -0.93000, \"units\": 0.09200, \"unitprice\": 10.090000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/PUTNAM ULTRA SHORT DURATION INCOME CL A\", \"secid\": \"PSDTX\", \"cusipnumber\": \"74676P755\", \"total\": 0.93000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $4.200/LORD ABBETT SHORT DURATION INCOME CL C\", \"secid\": \"LDLAX\", \"cusipnumber\": \"543916704\", \"total\": -0.05000, \"units\": 0.01200, \"unitprice\": 4.200000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/LORD ABBETT SHORT DURATION INCOME CL C\", \"secid\": \"LDLAX\", \"cusipnumber\": \"543916704\", \"total\": 0.05000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $4.170/LORD ABBETT SHORT DURATION INCOME CL A\", \"secid\": \"LALDX\", \"cusipnumber\": \"543916100\", \"total\": -21.23000, \"units\": 5.09100, \"unitprice\": 4.170000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/LORD ABBETT SHORT DURATION INCOME CL A\", \"secid\": \"LALDX\", \"cusipnumber\": \"543916100\", \"total\": 21.23000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-01T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $397.630/ISHARES S&P 500 INDEX INVESTOR A\", \"secid\": \"BSPAX\", \"cusipnumber\": \"066923566\", \"total\": -101.36000, \"units\": 0.25500, \"unitprice\": 397.630000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-01T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/ISHARES S&P 500 INDEX INVESTOR A\", \"secid\": \"BSPAX\", \"cusipnumber\": \"066923566\", \"total\": 101.36000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-01T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38336205\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $1.000/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": -11.11000, \"units\": 11.11000, \"unitprice\": 1.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": 11.11000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-25T00:00:00-04:00\", \"dttrade\": \"2020-09-25T00:00:00-04:00\", \"dtsettle\": \"2020-09-25T00:00:00-04:00\", \"trntype\": \"INTEREST\", \"catseq\": \"7\", \"trncode\": \"in\", \"trndesc\": \"INTEREST/FEDL NATL MTG ASSN SER 2012-056 CL 6-WB 3.50000% 05/25/2042\", \"secid\": \"3136A6WD2\", \"cusipnumber\": \"3136A6WD2\", \"total\": 291.67000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"INT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-25T00:00:00-04:00\", \"dttrade\": \"2020-09-25T00:00:00-04:00\", \"dtsettle\": \"2020-09-25T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01667972\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -500.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-25T00:00:00-04:00\", \"dttrade\": \"2020-09-25T00:00:00-04:00\", \"dtsettle\": \"2020-09-25T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01667973\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-25T00:00:00-04:00\", \"dttrade\": \"2020-09-25T00:00:00-04:00\", \"dtsettle\": \"2020-09-25T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01667975\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1500.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-25T00:00:00-04:00\", \"dttrade\": \"2020-09-25T00:00:00-04:00\", \"dtsettle\": \"2020-09-25T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01667974\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -25000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-25T00:00:00-04:00\", \"dttrade\": \"2020-09-25T00:00:00-04:00\", \"dtsettle\": \"2020-09-25T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"CHECK ISSUED CHECK PAID 327344801\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -30000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CKP\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-22T00:00:00-04:00\", \"dttrade\": \"2020-09-22T00:00:00-04:00\", \"dtsettle\": \"2020-09-22T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01666916\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"sl\", \"trndesc\": \"ADJ REINVESTMENT REINVEST @ $36.8850TRADE DATE 09-11-20/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": 10.72000, \"units\": -0.29100, \"unitprice\": 36.885000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"sl\", \"trndesc\": \"ADJ REINVESTMENT REINVEST @ $215.2700TRADE DATE 09-11-20/DEERE & CO\", \"secid\": \"DE\", \"cusipnumber\": \"244199105\", \"total\": 160.57000, \"units\": -0.74600, \"unitprice\": 215.270000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01662837\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-14T00:00:00-04:00\", \"dttrade\": \"2020-09-14T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT PERIODIC INVESTMENT CONF:021124948/ISHARES S&P 500 INDEX INVESTOR A\", \"secid\": \"BSPAX\", \"cusipnumber\": \"066923566\", \"total\": -5035.00000, \"units\": 12.46100, \"unitprice\": 401.260000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $10.870/PIMCO STOCKSPLUS ABSOLUTE RTRN CL A\", \"secid\": \"PTOAX\", \"cusipnumber\": \"72200Q620\", \"total\": -49.09000, \"units\": 4.51600, \"unitprice\": 10.870000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/PIMCO STOCKSPLUS ABSOLUTE RTRN CL A\", \"secid\": \"PTOAX\", \"cusipnumber\": \"72200Q620\", \"total\": 49.09000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $5.9650TRADE DATE 09-11-20/GENERAL ELECTRIC CO COM USD0.06\", \"secid\": \"GE\", \"cusipnumber\": \"369604103\", \"total\": -758.30000, \"units\": 127.12500, \"unitprice\": 5.965000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $5.9650TRADE DATE 09-11-20/GENERAL ELECTRIC CO COM USD0.06\", \"secid\": \"GE\", \"cusipnumber\": \"369604103\", \"total\": -758.30000, \"units\": 127.12500, \"unitprice\": 5.965000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/GENERAL ELECTRIC CO COM USD0.06\", \"secid\": \"GE\", \"cusipnumber\": \"369604103\", \"total\": 758.30000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/GENERAL ELECTRIC CO COM USD0.06\", \"secid\": \"GE\", \"cusipnumber\": \"369604103\", \"total\": 758.30000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $36.8850TRADE DATE 09-11-20/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": -10.72000, \"units\": 0.29100, \"unitprice\": 36.885000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": 10.72000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/WALT DISNEY CO\", \"secid\": \"DIS\", \"cusipnumber\": \"254687106\", \"total\": 0.01000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $215.2700TRADE DATE 09-11-20/DEERE & CO\", \"secid\": \"DE\", \"cusipnumber\": \"244199105\", \"total\": -160.57000, \"units\": 0.74600, \"unitprice\": 215.270000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/DEERE & CO\", \"secid\": \"DE\", \"cusipnumber\": \"244199105\", \"total\": 160.57000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-14T00:00:00-04:00\", \"trntype\": \"SELL\", \"catseq\": \"9\", \"trncode\": \"sl\", \"trndesc\": \"YOU SOLD CONF:000000010 PERSONAL WITHDRAWAL/LORD ABBETT SHORT DURATION INCOME CL C\", \"secid\": \"LDLAX\", \"cusipnumber\": \"543916704\", \"total\": 0.06000, \"units\": -0.01400, \"unitprice\": 4.210000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SEL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01660984\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1.23000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01661010\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -5.67000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38314053\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 2.34000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38313478\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 5000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT PERIODIC INVESTMENT CONF:021124947/ISHARES S&P 500 INDEX INVESTOR A\", \"secid\": \"BSPAX\", \"cusipnumber\": \"066923566\", \"total\": -5035.00000, \"units\": 12.63000, \"unitprice\": 395.880000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"CHECK ISSUED CHECK PAID 327344298\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -3.45000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CKP\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID AD36010140 /DIRECTED\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -4.56000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38312878\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RKZ000018\", \"key\": \"RKZ000018\", \"displayname\": \"Individual - 0018\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-01T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/JPMORGAN INVESTOR GROWTH & INCOME CL A\", \"secid\": \"ONGIX\", \"cusipnumber\": \"4812C2858\", \"total\": 17.93000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RKZ000018\", \"key\": \"RKZ000018\", \"displayname\": \"Individual - 0018\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT NET INT REINVEST/CASH\", \"secid\": \"FCASH\", \"cusipnumber\": \"315994103\", \"total\": -67.08000, \"units\": 67.08000, \"unitprice\": 1.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RKZ000018\", \"key\": \"RKZ000018\", \"displayname\": \"Individual - 0018\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"INTEREST\", \"catseq\": \"7\", \"trncode\": \"in\", \"trndesc\": \"CREDIT INTEREST INTEREST RECEIVED/CASH\", \"secid\": \"FCASH\", \"cusipnumber\": \"315994103\", \"total\": 67.08000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"INT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RKZ000018\", \"key\": \"RKZ000018\", \"displayname\": \"Individual - 0018\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/SIRIUS XM HOLDINGS INC COM\", \"secid\": \"SIRI\", \"cusipnumber\": \"82968B103\", \"total\": 0.05000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000064\", \"key\": \"RJL000064\", \"displayname\": \"Individual - 0064\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38333979\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 100.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000064\", \"key\": \"RJL000064\", \"displayname\": \"Individual - 0064\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38317554\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 3000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000055\", \"key\": \"RJL000055\", \"displayname\": \"Individual - 0055\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"by\", \"trndesc\": \"TRANSFERRED FROM VS RJL-000013-1/LORD ABBETT BOND DEBENTURE CLASS A\", \"secid\": \"LBNDX\", \"cusipnumber\": \"544004104\", \"total\": 0.00000, \"units\": 500.00000, \"unitprice\": 0.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000055\", \"key\": \"RJL000055\", \"displayname\": \"Individual - 0055\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"by\", \"trndesc\": \"TRANSFERRED FROM VS RJL-000013-1/CATERPILLAR INC COM USD1.00\", \"secid\": \"CAT\", \"cusipnumber\": \"149123101\", \"total\": 0.00000, \"units\": 1.00000, \"unitprice\": 0.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000055\", \"key\": \"RJL000055\", \"displayname\": \"Individual - 0055\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"by\", \"trndesc\": \"TRANSFERRED FROM VS RJL-000013-1/BANK OF NEW YORK MELLON CORP COM USD0.01\", \"secid\": \"BK\", \"cusipnumber\": \"064058100\", \"total\": 0.00000, \"units\": 200.00000, \"unitprice\": 0.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000055\", \"key\": \"RJL000055\", \"displayname\": \"Individual - 0055\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"dp\", \"trndesc\": \"TRANSFERRED FROM VS RJL-000013-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 50000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000055\", \"key\": \"RJL000055\", \"displayname\": \"Individual - 0055\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $5.9650TRADE DATE 09-11-20/GENERAL ELECTRIC CO COM USD0.06\", \"secid\": \"GE\", \"cusipnumber\": \"369604103\", \"total\": -75.23000, \"units\": 12.61200, \"unitprice\": 5.965000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000055\", \"key\": \"RJL000055\", \"displayname\": \"Individual - 0055\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $5.9650TRADE DATE 09-11-20/GENERAL ELECTRIC CO COM USD0.06\", \"secid\": \"GE\", \"cusipnumber\": \"369604103\", \"total\": -75.23000, \"units\": 12.61200, \"unitprice\": 5.965000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000055\", \"key\": \"RJL000055\", \"displayname\": \"Individual - 0055\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/GENERAL ELECTRIC CO COM USD0.06\", \"secid\": \"GE\", \"cusipnumber\": \"369604103\", \"total\": 75.23000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000055\", \"key\": \"RJL000055\", \"displayname\": \"Individual - 0055\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/GENERAL ELECTRIC CO COM USD0.06\", \"secid\": \"GE\", \"cusipnumber\": \"369604103\", \"total\": 75.23000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000041\", \"key\": \"RJL000041\", \"displayname\": \"Traditional IRA - 0041\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $1.000/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": -6.88000, \"units\": 6.88000, \"unitprice\": 1.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000041\", \"key\": \"RJL000041\", \"displayname\": \"Traditional IRA - 0041\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": 6.88000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000041\", \"key\": \"RJL000041\", \"displayname\": \"Traditional IRA - 0041\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/PFIZER INC\", \"secid\": \"PFE\", \"cusipnumber\": \"717081103\", \"total\": 18.75000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000041\", \"key\": \"RJL000041\", \"displayname\": \"Traditional IRA - 0041\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": 18.75000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000041\", \"key\": \"RJL000041\", \"displayname\": \"Traditional IRA - 0041\", \"dtentry\": \"2020-09-09T00:00:00-04:00\", \"dttrade\": \"2020-09-09T00:00:00-04:00\", \"dtsettle\": \"2020-09-09T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND CHARGED/APPLE INC COM USD0.00001\", \"secid\": \"AAPL\", \"cusipnumber\": \"037833100\", \"total\": -4425.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000041\", \"key\": \"RJL000041\", \"displayname\": \"Traditional IRA - 0041\", \"dtentry\": \"2020-09-09T00:00:00-04:00\", \"dttrade\": \"2020-09-09T00:00:00-04:00\", \"dtsettle\": \"2020-09-09T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND CHARGED/APPLE INC COM USD0.00001\", \"secid\": \"AAPL\", \"cusipnumber\": \"037833100\", \"total\": -4425.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000041\", \"key\": \"RJL000041\", \"displayname\": \"Traditional IRA - 0041\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": 21.75000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000023\", \"key\": \"RJL000023\", \"displayname\": \"Corporation - 0023\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": null, \"trndesc\": \" DIV OF $0.51 PENDING REINVESTMENT/MICROSOFT CORP\", \"secid\": \"MSFT\", \"cusipnumber\": \"594918104\", \"total\": 0.00000, \"units\": null, \"unitprice\": null, \"ispending\": true, \"allowcancel\": true, \"allowchange\": false, \"confirmationnumber\": \"*DIVP\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": true, \"trandate\": \"2020-10-09-03.49.06.527109\", \"checknumber\": null }, { \"acct\": \"RJL000023\", \"key\": \"RJL000023\", \"displayname\": \"Corporation - 0023\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": null, \"trndesc\": \" DIV OF $0.87 PENDING REINVESTMENT/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": 0.00000, \"units\": null, \"unitprice\": null, \"ispending\": true, \"allowcancel\": true, \"allowchange\": false, \"confirmationnumber\": \"*DIVP\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": true, \"trandate\": \"2020-10-09-03.49.06.526211\", \"checknumber\": null }, { \"acct\": \"RJL000023\", \"key\": \"RJL000023\", \"displayname\": \"Corporation - 0023\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $1.000/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": -2.80000, \"units\": 2.80000, \"unitprice\": 1.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000023\", \"key\": \"RJL000023\", \"displayname\": \"Corporation - 0023\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": 2.80000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000023\", \"key\": \"RJL000023\", \"displayname\": \"Corporation - 0023\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"sl\", \"trndesc\": \"ADJ REINVESTMENT REINVEST @ $36.8850TRADE DATE 09-11-20/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": 0.75000, \"units\": -0.02000, \"unitprice\": 36.885000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000023\", \"key\": \"RJL000023\", \"displayname\": \"Corporation - 0023\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $36.8850TRADE DATE 09-11-20/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": -0.75000, \"units\": 0.02000, \"unitprice\": 36.885000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000023\", \"key\": \"RJL000023\", \"displayname\": \"Corporation - 0023\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": 0.75000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }] }] }\r\n //setSourceData(response.value[0].activities);\r\n //setShowOverlay(prevShowOverlay => false);\r\n //setfilterSourceData(response.value[0].activities);\r\n }\r\n }\r\n const accounts = []\r\n const handleOnSearchTransaction = (event) => {\r\n if (event.target.value === '') {\r\n setfilterSourceData(sourceData);\r\n } else {\r\n let filterArr = arrayFilterByValue(sourceData, event.target.value, ['dttrade', 'dtsettle', 'key', 'trndesc', 'trntype', 'secid', 'units', 'unitprice','total']);\r\n setfilterSourceData(filterArr);\r\n }\r\n }\r\n return (\r\n <>\r\n {\r\n showOverlay ?
Loading Transactions\r\n  \r\n
\r\n : <>\r\n {\r\n sourceData ?\r\n
\r\n
\r\n
\r\n handleOnSearchTransaction(e)} />\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n :
{MsgForNoData}
\r\n\r\n }\r\n \r\n }\r\n\r\n\r\n \r\n )\r\n}\r\nexport default SourceData;","import React, { useState, useEffect, useCallback } from 'react';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport { MsgForNoData } from '../../../common/constants';\r\nimport { Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap';\r\nimport { Spinner } from 'reactstrap';\r\nimport BootstrapTable from 'react-bootstrap-table-next';\r\nimport { getNestedObject } from '../../../common/common'\r\nimport { getAccountingDataColumns } from './transactionColumns';\r\nimport { arrayFilterByValue } from '../../../common/utilities';\r\nimport { getTransactionsAccountingDataServiceCancellationToken, getTransactionsAccountingDataService } from '../../../services/accountingServices/accountingService';\r\nimport { animateViewTable } from '../../../common/animation';\r\nimport { BackTop, message } from 'antd';\r\nconst AccountingData = () => {\r\n const [showOverlay, setShowOverlay] = useState(false);\r\n const [accountingData, setAccountingData] = useState(null);\r\n const [filterAccountingData, setfilterAccountingData] = useState([]);\r\n const selectedClient = useSelector(state => getNestedObject(state, ['dashboard', 'selectedClient']));\r\n const selectedSubAccount = useSelector(state => getNestedObject(state, ['accounting', 'selectedSubAccount']));\r\n useEffect(() => {\r\n\r\n fetchSourceData();\r\n return () => {\r\n //cancellation token needs to be added here\r\n if (getTransactionsAccountingDataServiceCancellationToken !== null && getTransactionsAccountingDataServiceCancellationToken !== undefined) {\r\n getTransactionsAccountingDataServiceCancellationToken.cancel(\"Cancelling Accounting data transactions request on unmount to prevent memory leak.\");\r\n }\r\n }\r\n }, []);\r\n const fetchSourceData = () => {\r\n if (selectedClient && selectedSubAccount && selectedSubAccount.accountKey !== null) {\r\n console.log(\"selectedSubAccount\" + selectedSubAccount);\r\n console.log(\"selectedclient\" + selectedClient);\r\n setShowOverlay(prevShowOverlay => true);\r\n getTransactionsAccountingDataService(selectedClient.orgId, selectedSubAccount.accountKey).then(res => {\r\n\r\n if (res && Array.isArray(res)){\r\n setAccountingData(res);\r\n setfilterAccountingData(res);\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to get Accounting Data Transactions, you can try again.\");\r\n console.error(\"Error Occured while fetching Accounting Data Transactions\");\r\n }\r\n setShowOverlay(prevShowOverlay => false);\r\n\r\n })\r\n .catch(err => {\r\n setShowOverlay(prevShowOverlay => false);\r\n animateViewTable();\r\n message.error(\"We are unable to get Accounting Data Transactions, you can try again.\");\r\n console.error(\"Error Occured while fetching Accounting Data Transactions\");\r\n })\r\n //let response = { \"@odata.context\": \"https://Activitysummary/odata/$metadata#ActivitySummary\", \"value\": [{ \"activitysummary\": \"RJL000001,RJL000002,RJL000004,RJL000006,RJL000007,RJL000008,RJL000010,RJL000011,RJL000012,RJL000013,RJL000014,RJL000019,RJL000020,RJL000024,RJL000025,RJL000026,RJL000029,RJL000030,RJL000036,RJL000065,RJL000067,RJL000069,RJL000070,RKZ000018,RJL000068,RJL000066,RJL000064,RJL000061,RJL000060,RJL000056,RJL000055,RJL000041,RJL000031,RJL000023,RJL000022,RJL000005,RJL000003\", \"numberofaccounts\": 37, \"numberofactivities\": 180, \"numberofpages\": 0, \"pagenumber\": 0, \"pagesize\": 0, \"statuscode\": 0, \"activities\": [{ \"acct\": \"RJL000001\", \"key\": \"RJL000001\", \"displayname\": \"Individual - 0001\", \"dtentry\": \"2020-09-20T00:00:00-04:00\", \"dttrade\": \"2020-09-20T00:00:00-04:00\", \"dtsettle\": \"2020-09-20T00:00:00-04:00\", \"trntype\": \"INTEREST\", \"catseq\": \"7\", \"trncode\": \"in\", \"trndesc\": \"MARGIN INTEREST @ 4.000% AVG BAL 347DR\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1.20000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"INT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000008\", \"key\": \"RJL000008\", \"displayname\": \"Individual - 0008\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"by\", \"trndesc\": \"TRANSFERRED FROM VS RJL-000030-1/ANGEL OAK MULTI STRATEGY INCOME CL A\", \"secid\": \"ANGLX\", \"cusipnumber\": \"03463K307\", \"total\": 0.00000, \"units\": 1.00000, \"unitprice\": 0.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000008\", \"key\": \"RJL000008\", \"displayname\": \"Individual - 0008\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"dp\", \"trndesc\": \"TRANSFERRED FROM VS RJL-000030-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 100.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-10-08T00:00:00-04:00\", \"dttrade\": \"2020-10-08T00:00:00-04:00\", \"dtsettle\": \"2020-10-08T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000089-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1008.01000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-10-08T00:00:00-04:00\", \"dttrade\": \"2020-10-08T00:00:00-04:00\", \"dtsettle\": \"2020-10-08T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000090-1 CURRENT CONTRIBUTION\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1008.02000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $1.000/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": -16.52000, \"units\": 16.52000, \"unitprice\": 1.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": 16.52000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-25T00:00:00-04:00\", \"dttrade\": \"2020-09-25T00:00:00-04:00\", \"dtsettle\": \"2020-09-25T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000090-1 CURRENT CONTRIBUTION\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -13.23000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-25T00:00:00-04:00\", \"dttrade\": \"2020-09-25T00:00:00-04:00\", \"dtsettle\": \"2020-09-25T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000090-1 CURRENT CONTRIBUTION\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -22.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-17T00:00:00-04:00\", \"dttrade\": \"2020-09-17T00:00:00-04:00\", \"dtsettle\": \"2020-09-17T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID AD36010302 /DIRECTED\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -17.09000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-17T00:00:00-04:00\", \"dttrade\": \"2020-09-17T00:00:00-04:00\", \"dtsettle\": \"2020-09-17T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38326231\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 16.09000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-16T00:00:00-04:00\", \"dttrade\": \"2020-09-16T00:00:00-04:00\", \"dtsettle\": \"2020-09-16T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJM-000003-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -98.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"DEPOSIT RECEIVED CHECK RECEIVED\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1.20000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": true, \"tranmnemonic\": \"CKR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"DEPOSIT RECEIVED CHECK RECEIVED\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 8.26000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": true, \"tranmnemonic\": \"CKR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000011\", \"key\": \"RJL000011\", \"displayname\": \"Individual - 0011\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"DEPOSIT RECEIVED CHECK RECEIVED\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 9.10000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": true, \"tranmnemonic\": \"CKR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000012\", \"key\": \"RJL000012\", \"displayname\": \"Individual - 0012\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $1.000/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": -0.81000, \"units\": 0.81000, \"unitprice\": 1.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000012\", \"key\": \"RJL000012\", \"displayname\": \"Individual - 0012\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": 0.81000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-07T00:00:00-04:00\", \"dttrade\": \"2020-10-07T00:00:00-04:00\", \"dtsettle\": \"2020-10-07T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"CHECK ISSUED CHECK PAID 327345723\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -500.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CKP\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-06T00:00:00-04:00\", \"dttrade\": \"2020-10-06T00:00:00-04:00\", \"dtsettle\": \"2020-10-06T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01679411\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"sl\", \"trndesc\": \"TRANSFERRED TO VS RJL-000055-1/LORD ABBETT BOND DEBENTURE CLASS A\", \"secid\": \"LBNDX\", \"cusipnumber\": \"544004104\", \"total\": 0.00000, \"units\": -500.00000, \"unitprice\": 0.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"sl\", \"trndesc\": \"TRANSFERRED TO VS RJL-000055-1/CATERPILLAR INC COM USD1.00\", \"secid\": \"CAT\", \"cusipnumber\": \"149123101\", \"total\": 0.00000, \"units\": -1.00000, \"unitprice\": 0.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"sl\", \"trndesc\": \"TRANSFERRED TO VS RJL-000055-1/BANK OF NEW YORK MELLON CORP COM USD0.01\", \"secid\": \"BK\", \"cusipnumber\": \"064058100\", \"total\": 0.00000, \"units\": -200.00000, \"unitprice\": 0.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"JOURNAL\", \"catseq\": \"8\", \"trncode\": \"dp\", \"trndesc\": \"JOURNALED MARGIN TO CASH A/C\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 2690.52000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"JNL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"JOURNAL\", \"catseq\": \"8\", \"trncode\": \"wd\", \"trndesc\": \"JOURNALED MARGIN TO CASH A/C\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -2690.52000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"JNL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000014 REDEMPTION\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000055-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -50000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-02T00:00:00-04:00\", \"dttrade\": \"2020-10-02T00:00:00-04:00\", \"dtsettle\": \"2020-10-02T00:00:00-04:00\", \"trntype\": \"JOURNAL\", \"catseq\": \"8\", \"trncode\": \"dp\", \"trndesc\": \"JOURNALED MARGIN TO CASH A/C\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1.23000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"JNL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-02T00:00:00-04:00\", \"dttrade\": \"2020-10-02T00:00:00-04:00\", \"dtsettle\": \"2020-10-02T00:00:00-04:00\", \"trntype\": \"JOURNAL\", \"catseq\": \"8\", \"trncode\": \"wd\", \"trndesc\": \"JOURNALED MARGIN TO CASH A/C\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1.23000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"JNL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-02T00:00:00-04:00\", \"dttrade\": \"2020-10-02T00:00:00-04:00\", \"dtsettle\": \"2020-10-02T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000037-1 CURRENT CONTRIBUTION\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1.23000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $7.990/LORD ABBETT BOND DEBENTURE CLASS A\", \"secid\": \"LBNDX\", \"cusipnumber\": \"544004104\", \"total\": -68.60000, \"units\": 8.58600, \"unitprice\": 7.990000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/LORD ABBETT BOND DEBENTURE CLASS A\", \"secid\": \"LBNDX\", \"cusipnumber\": \"544004104\", \"total\": 68.60000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-02T00:00:00-04:00\", \"trntype\": \"SELL\", \"catseq\": \"9\", \"trncode\": \"sl\", \"trndesc\": \"YOU SOLD CONF:000000006 PERSONAL WITHDRAWAL/LORD ABBETT BOND DEBENTURE CLASS A\", \"secid\": \"LBNDX\", \"cusipnumber\": \"544004104\", \"total\": 300.00000, \"units\": -37.45300, \"unitprice\": 8.010000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SEL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-02T00:00:00-04:00\", \"trntype\": \"SELL\", \"catseq\": \"9\", \"trncode\": \"sl\", \"trndesc\": \"YOU SOLD CONF:000000017 PERSONAL WITHDRAWAL/AMERICAN CAPITAL INCOME BUILDER CL A\", \"secid\": \"CAIBX\", \"cusipnumber\": \"140193103\", \"total\": 100.00000, \"units\": -1.71700, \"unitprice\": 58.240000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SEL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-01T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01672672\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-01T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"CHECK ISSUED CHECK PAID 327345325\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1300.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CKP\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-01T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01672673\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -10000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": 18.99000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-28T00:00:00-04:00\", \"dttrade\": \"2020-09-28T00:00:00-04:00\", \"dtsettle\": \"2020-09-28T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"CHECK ISSUED CHECK PAID 327344887\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1500.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CKP\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-18T00:00:00-04:00\", \"dttrade\": \"2020-09-18T00:00:00-04:00\", \"dtsettle\": \"2020-09-18T00:00:00-04:00\", \"trntype\": \"JOURNAL\", \"catseq\": \"8\", \"trncode\": \"dp\", \"trndesc\": \"JOURNALED VS RJL-000014-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 85.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"JNL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $112.0450TRADE DATE 09-11-20/APPLE INC COM USD0.00001\", \"secid\": \"AAPL\", \"cusipnumber\": \"037833100\", \"total\": -12.00000, \"units\": 0.10700, \"unitprice\": 112.045000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-16T00:00:00-04:00\", \"dttrade\": \"2020-09-16T00:00:00-04:00\", \"dtsettle\": \"2020-09-18T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT SOLICITED ORDER/ROSEMONT ILL TAXABLE GO REF BDS SER. 04.00000% 12/01/2020 2011C\", \"secid\": \"777543XS3\", \"cusipnumber\": \"777543XS3\", \"total\": -5098.99000, \"units\": 5000.00000, \"unitprice\": 100.652000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-16T00:00:00-04:00\", \"dttrade\": \"2020-09-16T00:00:00-04:00\", \"dtsettle\": \"2020-09-17T00:00:00-04:00\", \"trntype\": \"SELL\", \"catseq\": \"9\", \"trncode\": \"sl\", \"trndesc\": \"YOU SOLD UNSOLICITED ORDER CONF:000000005/LORD ABBETT BOND DEBENTURE CLASS A\", \"secid\": \"LBNDX\", \"cusipnumber\": \"544004104\", \"total\": 1000.00000, \"units\": -124.06900, \"unitprice\": 8.060000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SEL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-16T00:00:00-04:00\", \"dttrade\": \"2020-09-16T00:00:00-04:00\", \"dtsettle\": \"2020-09-16T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38323945\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 700.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-16T00:00:00-04:00\", \"dttrade\": \"2020-09-16T00:00:00-04:00\", \"dtsettle\": \"2020-09-16T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38323944\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $59.160/AMERICAN CAPITAL INCOME BUILDER CL A\", \"secid\": \"CAIBX\", \"cusipnumber\": \"140193103\", \"total\": -27.63000, \"units\": 0.46700, \"unitprice\": 59.160000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/AMERICAN CAPITAL INCOME BUILDER CL A\", \"secid\": \"CAIBX\", \"cusipnumber\": \"140193103\", \"total\": 27.63000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-16T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT PERIODIC INVESTMENT CONF:035803097/LORD ABBETT BOND DEBENTURE CLASS A\", \"secid\": \"LBNDX\", \"cusipnumber\": \"544004104\", \"total\": -500.00000, \"units\": 62.03500, \"unitprice\": 8.060000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-16T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT PERIODIC INVESTMENT CONF:035803096/LORD ABBETT BOND DEBENTURE CLASS A\", \"secid\": \"LBNDX\", \"cusipnumber\": \"544004104\", \"total\": -500.00000, \"units\": 60.97600, \"unitprice\": 8.200000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-16T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT PERIODIC INVESTMENT CONF:035808002/AMERICAN CAPITAL INCOME BUILDER CL A\", \"secid\": \"CAIBX\", \"cusipnumber\": \"140193103\", \"total\": -500.00000, \"units\": 8.04000, \"unitprice\": 62.190000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-16T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT PERIODIC INVESTMENT CONF:035808003/AMERICAN CAPITAL INCOME BUILDER CL A\", \"secid\": \"CAIBX\", \"cusipnumber\": \"140193103\", \"total\": -200.00000, \"units\": 3.36800, \"unitprice\": 59.390000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000014 REDEMPTION\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -100.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000014 REDEMPTION\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -100.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000014 REDEMPTION\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -500.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"CHECK ISSUED CHECK PAID 327344417\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -500.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CKP\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"CHECK ISSUED CHECK PAID 327344418\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -500.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CKP\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"CHECK ISSUED CHECK PAID 327344416\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1234.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CKP\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-14T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT PROSPECTUS UNDER SEPARATE COVER/COLUMBIA ACORN CLASS A\", \"secid\": \"LACAX\", \"cusipnumber\": \"197199102\", \"total\": -10000.00000, \"units\": 832.07800, \"unitprice\": 12.018100000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-14T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"BY\", \"trndesc\": \"BUY CANCEL UNSOLICITED ORDER CONF:020501562/COLUMBIA ACORN CLASS A\", \"secid\": \"LACAX\", \"cusipnumber\": \"197199102\", \"total\": 10000.00000, \"units\": -831.94700, \"unitprice\": 12.020000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/SIRIUS XM HOLDINGS INC COM\", \"secid\": \"SIRI\", \"cusipnumber\": \"82968B103\", \"total\": 0.01000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/WALT DISNEY CO\", \"secid\": \"DIS\", \"cusipnumber\": \"254687106\", \"total\": 0.03000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/APPLE INC COM USD0.00001\", \"secid\": \"AAPL\", \"cusipnumber\": \"037833100\", \"total\": 12.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/APPLE INC COM USD0.00001\", \"secid\": \"AAPL\", \"cusipnumber\": \"037833100\", \"total\": 12.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"SELL\", \"catseq\": \"9\", \"trncode\": \"sl\", \"trndesc\": \"YOU SOLD SOLICITED ORDER/WALT DISNEY CO\", \"secid\": \"DIS\", \"cusipnumber\": \"254687106\", \"total\": 39939.11000, \"units\": -300.00000, \"unitprice\": 133.703000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SEL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-14T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT PROSPECTUS UNDER SEPARATE COVER/COLUMBIA ACORN CLASS A\", \"secid\": \"LACAX\", \"cusipnumber\": \"197199102\", \"total\": -10000.00000, \"units\": 831.94700, \"unitprice\": 12.020000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"SELL\", \"catseq\": \"9\", \"trncode\": \"sl\", \"trndesc\": \"YOU SOLD SOLICITED ORDER EX-DIV DATE 09/14/20/BEST BUY CO INC COM USD0.10\", \"secid\": \"BBY\", \"cusipnumber\": \"086516101\", \"total\": 10790.62000, \"units\": -100.00000, \"unitprice\": 108.518000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SEL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT SOLICITED ORDER/BANK OF NEW YORK MELLON CORP COM USD0.01\", \"secid\": \"BK\", \"cusipnumber\": \"064058100\", \"total\": -43862.52000, \"units\": 1221.00000, \"unitprice\": 35.798500000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT UNSOLICITED ORDER/BANK OF NEW YORK MELLON CORP COM USD0.01\", \"secid\": \"BK\", \"cusipnumber\": \"064058100\", \"total\": -1850.88000, \"units\": 50.00000, \"unitprice\": 35.798500000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-14T00:00:00-04:00\", \"trntype\": \"SELL\", \"catseq\": \"9\", \"trncode\": \"sl\", \"trndesc\": \"YOU SOLD UNSOLICITED ORDER CONF:000000153/AMERICAN BALANCED CLASS A\", \"secid\": \"ABALX\", \"cusipnumber\": \"024071102\", \"total\": 49102.06000, \"units\": -1695.51300, \"unitprice\": 28.960000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SEL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID AD36010152 /DIRECTED\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -6.78000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000013\", \"key\": \"RJL000013\", \"displayname\": \"Individual - 0013\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"JOURNAL\", \"catseq\": \"8\", \"trncode\": \"dp\", \"trndesc\": \"JOURNALED VS RJL-000058-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"JNL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-10-06T00:00:00-04:00\", \"dttrade\": \"2020-10-06T00:00:00-04:00\", \"dtsettle\": \"2020-10-06T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"STATE TAX W/H IL STAT WTH ED01679412\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -250.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-10-06T00:00:00-04:00\", \"dttrade\": \"2020-10-06T00:00:00-04:00\", \"dtsettle\": \"2020-10-06T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"FED TAX W/H RET FED WTH ED01679412\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -250.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"FPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-10-06T00:00:00-04:00\", \"dttrade\": \"2020-10-06T00:00:00-04:00\", \"dtsettle\": \"2020-10-06T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"EARLY DIST NO EXCEPT EARLY DST/NO EXCP APED01679412\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -2000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"PPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"CONTRIB CURRENT YR VS RJL-000013-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CYC\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"JOURNAL\", \"catseq\": \"8\", \"trncode\": \"dp\", \"trndesc\": \"JOURNALED INCOME TO CASH A/C\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 0.11000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"JNL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"JOURNAL\", \"catseq\": \"8\", \"trncode\": \"wd\", \"trndesc\": \"JOURNALED INCOME TO CASH A/C\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -0.11000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"JNL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-01T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"CONTRIB CURRENT YR CASH CONTRB CURR YR ER38336199\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CYC\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY GOVERNMENT CASH RESERVES\", \"secid\": \"FDRXX\", \"cusipnumber\": \"316067107\", \"total\": 0.11000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-25T00:00:00-04:00\", \"dttrade\": \"2020-09-25T00:00:00-04:00\", \"dtsettle\": \"2020-09-25T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"EARLY DIST NO EXCEPT EARLY DST/NO EXCP APED01667448\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -0.09000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"PPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-18T00:00:00-04:00\", \"dttrade\": \"2020-09-18T00:00:00-04:00\", \"dtsettle\": \"2020-09-18T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"STATE TAX W/H IL STAT WTH\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -5.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-18T00:00:00-04:00\", \"dttrade\": \"2020-09-18T00:00:00-04:00\", \"dtsettle\": \"2020-09-18T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"FED TAX W/H FEDERAL TAX WITHHELD\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -10.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"FPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-18T00:00:00-04:00\", \"dttrade\": \"2020-09-18T00:00:00-04:00\", \"dtsettle\": \"2020-09-18T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"EARLY DIST NO EXCEPT VS RJL-000013-1 PART PREMATURE DISTR\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -85.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"PPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"STATE TAX W/H IL STAT WTH ED01661823\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -50.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"FED TAX W/H RET FED WTH ED01661823\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -50.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"FPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"EARLY DIST NO EXCEPT EARLY DST/NO EXCP APED01661823\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -400.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"PPM\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"CONTRIB CURRENT YR VS RJL-000013-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 100.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CYC\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"CONTRIB CURRENT YR VS RJL-000013-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 100.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CYC\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"CONTRIB CURRENT YR VS RJL-000013-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 500.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CYC\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000014\", \"key\": \"RJL000014\", \"displayname\": \"Traditional IRA - 0014\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"CONTRIB CURRENT YR CASH CONTRB CURR YR ER38317549\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1300.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CYC\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000020\", \"key\": \"RJL000020\", \"displayname\": \"Joint WROS - 0020\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $1.000/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": -0.26000, \"units\": 0.26000, \"unitprice\": 1.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000020\", \"key\": \"RJL000020\", \"displayname\": \"Joint WROS - 0020\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": 0.26000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000029\", \"key\": \"RJL000029\", \"displayname\": \"Individual - 0029\", \"dtentry\": \"2020-10-09T00:00:00-04:00\", \"dttrade\": \"2020-10-09T00:00:00-04:00\", \"dtsettle\": \"2020-10-09T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38343566\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 9.99000, \"units\": null, \"unitprice\": null, \"ispending\": true, \"allowcancel\": true, \"allowchange\": false, \"confirmationnumber\": \"CACT3\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": true, \"trandate\": \"2020-10-09-00.45.50.298396\", \"checknumber\": null }, { \"acct\": \"RJL000029\", \"key\": \"RJL000029\", \"displayname\": \"Individual - 0029\", \"dtentry\": \"2020-10-08T00:00:00-04:00\", \"dttrade\": \"2020-10-08T00:00:00-04:00\", \"dtsettle\": \"2020-10-08T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"dp\", \"trndesc\": \"TRANSFERRED FROM VS RJL-000089-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 9.98000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000029\", \"key\": \"RJL000029\", \"displayname\": \"Individual - 0029\", \"dtentry\": \"2020-10-07T00:00:00-04:00\", \"dttrade\": \"2020-10-07T00:00:00-04:00\", \"dtsettle\": \"2020-10-07T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000099-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -232.32000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000029\", \"key\": \"RJL000029\", \"displayname\": \"Individual - 0029\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-01T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"dp\", \"trndesc\": \"TRANSFERRED FROM VS RJL-000089-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 4.58000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000029\", \"key\": \"RJL000029\", \"displayname\": \"Individual - 0029\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": 0.01000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000029\", \"key\": \"RJL000029\", \"displayname\": \"Individual - 0029\", \"dtentry\": \"2020-09-17T00:00:00-04:00\", \"dttrade\": \"2020-09-17T00:00:00-04:00\", \"dtsettle\": \"2020-09-17T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38326234\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 16.09000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000029\", \"key\": \"RJL000029\", \"displayname\": \"Individual - 0029\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"DEPOSIT RECEIVED CHECK RECEIVED\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 0.74000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": true, \"tranmnemonic\": \"CKR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000030\", \"key\": \"RJL000030\", \"displayname\": \"Individual - 0030\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $10.740/DOUBLELINE TOTAL RT BOND FD CL N\", \"secid\": \"DLTNX\", \"cusipnumber\": \"258620202\", \"total\": -87.71000, \"units\": 8.16700, \"unitprice\": 10.740000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000030\", \"key\": \"RJL000030\", \"displayname\": \"Individual - 0030\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/DOUBLELINE TOTAL RT BOND FD CL N\", \"secid\": \"DLTNX\", \"cusipnumber\": \"258620202\", \"total\": 87.71000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000030\", \"key\": \"RJL000030\", \"displayname\": \"Individual - 0030\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $10.240/ANGEL OAK MULTI STRATEGY INCOME CL A\", \"secid\": \"ANGLX\", \"cusipnumber\": \"03463K307\", \"total\": -43.00000, \"units\": 4.19900, \"unitprice\": 10.240000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000030\", \"key\": \"RJL000030\", \"displayname\": \"Individual - 0030\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/ANGEL OAK MULTI STRATEGY INCOME CL A\", \"secid\": \"ANGLX\", \"cusipnumber\": \"03463K307\", \"total\": 43.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000030\", \"key\": \"RJL000030\", \"displayname\": \"Individual - 0030\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $1.000/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": -0.08000, \"units\": 0.08000, \"unitprice\": 1.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000030\", \"key\": \"RJL000030\", \"displayname\": \"Individual - 0030\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": 0.08000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000030\", \"key\": \"RJL000030\", \"displayname\": \"Individual - 0030\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID AD36010102 /DIRECTED\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -100.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000030\", \"key\": \"RJL000030\", \"displayname\": \"Individual - 0030\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"sl\", \"trndesc\": \"TRANSFERRED TO VS RJL-000008-1/ANGEL OAK MULTI STRATEGY INCOME CL A\", \"secid\": \"ANGLX\", \"cusipnumber\": \"03463K307\", \"total\": 0.00000, \"units\": -1.00000, \"unitprice\": 0.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000030\", \"key\": \"RJL000030\", \"displayname\": \"Individual - 0030\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"wd\", \"trndesc\": \"TRANSFERRED TO VS RJL-000008-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -100.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": null, \"trndesc\": \" DIV OF $12.44 PENDING REINVESTMENT/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": 0.00000, \"units\": null, \"unitprice\": null, \"ispending\": true, \"allowcancel\": true, \"allowchange\": false, \"confirmationnumber\": \"*DIVP\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": true, \"trandate\": \"2020-10-09-03.49.17.683805\", \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": null, \"trndesc\": \" DIV OF $160.57 PENDING REINVESTMENT/DEERE & CO\", \"secid\": \"DE\", \"cusipnumber\": \"244199105\", \"total\": 0.00000, \"units\": null, \"unitprice\": null, \"ispending\": true, \"allowcancel\": true, \"allowchange\": false, \"confirmationnumber\": \"*DIVP\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": true, \"trandate\": \"2020-10-09-03.49.17.682865\", \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-10-09T00:00:00-04:00\", \"dttrade\": \"2020-10-09T00:00:00-04:00\", \"dtsettle\": \"2020-10-09T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": true, \"allowcancel\": true, \"allowchange\": false, \"confirmationnumber\": \"CACT3\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": true, \"trandate\": \"2020-10-09-03.45.45.127874\", \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $10.090/PUTNAM ULTRA SHORT DURATION INCOME CL A\", \"secid\": \"PSDTX\", \"cusipnumber\": \"74676P755\", \"total\": -0.93000, \"units\": 0.09200, \"unitprice\": 10.090000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/PUTNAM ULTRA SHORT DURATION INCOME CL A\", \"secid\": \"PSDTX\", \"cusipnumber\": \"74676P755\", \"total\": 0.93000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $4.200/LORD ABBETT SHORT DURATION INCOME CL C\", \"secid\": \"LDLAX\", \"cusipnumber\": \"543916704\", \"total\": -0.05000, \"units\": 0.01200, \"unitprice\": 4.200000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/LORD ABBETT SHORT DURATION INCOME CL C\", \"secid\": \"LDLAX\", \"cusipnumber\": \"543916704\", \"total\": 0.05000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $4.170/LORD ABBETT SHORT DURATION INCOME CL A\", \"secid\": \"LALDX\", \"cusipnumber\": \"543916100\", \"total\": -21.23000, \"units\": 5.09100, \"unitprice\": 4.170000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/LORD ABBETT SHORT DURATION INCOME CL A\", \"secid\": \"LALDX\", \"cusipnumber\": \"543916100\", \"total\": 21.23000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-01T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $397.630/ISHARES S&P 500 INDEX INVESTOR A\", \"secid\": \"BSPAX\", \"cusipnumber\": \"066923566\", \"total\": -101.36000, \"units\": 0.25500, \"unitprice\": 397.630000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-01T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/ISHARES S&P 500 INDEX INVESTOR A\", \"secid\": \"BSPAX\", \"cusipnumber\": \"066923566\", \"total\": 101.36000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-01T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38336205\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $1.000/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": -11.11000, \"units\": 11.11000, \"unitprice\": 1.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": 11.11000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-25T00:00:00-04:00\", \"dttrade\": \"2020-09-25T00:00:00-04:00\", \"dtsettle\": \"2020-09-25T00:00:00-04:00\", \"trntype\": \"INTEREST\", \"catseq\": \"7\", \"trncode\": \"in\", \"trndesc\": \"INTEREST/FEDL NATL MTG ASSN SER 2012-056 CL 6-WB 3.50000% 05/25/2042\", \"secid\": \"3136A6WD2\", \"cusipnumber\": \"3136A6WD2\", \"total\": 291.67000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"INT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-25T00:00:00-04:00\", \"dttrade\": \"2020-09-25T00:00:00-04:00\", \"dtsettle\": \"2020-09-25T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01667972\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -500.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-25T00:00:00-04:00\", \"dttrade\": \"2020-09-25T00:00:00-04:00\", \"dtsettle\": \"2020-09-25T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01667973\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-25T00:00:00-04:00\", \"dttrade\": \"2020-09-25T00:00:00-04:00\", \"dtsettle\": \"2020-09-25T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01667975\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1500.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-25T00:00:00-04:00\", \"dttrade\": \"2020-09-25T00:00:00-04:00\", \"dtsettle\": \"2020-09-25T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01667974\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -25000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-25T00:00:00-04:00\", \"dttrade\": \"2020-09-25T00:00:00-04:00\", \"dtsettle\": \"2020-09-25T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"CHECK ISSUED CHECK PAID 327344801\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -30000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CKP\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-22T00:00:00-04:00\", \"dttrade\": \"2020-09-22T00:00:00-04:00\", \"dtsettle\": \"2020-09-22T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01666916\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"sl\", \"trndesc\": \"ADJ REINVESTMENT REINVEST @ $36.8850TRADE DATE 09-11-20/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": 10.72000, \"units\": -0.29100, \"unitprice\": 36.885000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"sl\", \"trndesc\": \"ADJ REINVESTMENT REINVEST @ $215.2700TRADE DATE 09-11-20/DEERE & CO\", \"secid\": \"DE\", \"cusipnumber\": \"244199105\", \"total\": 160.57000, \"units\": -0.74600, \"unitprice\": 215.270000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01662837\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-14T00:00:00-04:00\", \"dttrade\": \"2020-09-14T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT PERIODIC INVESTMENT CONF:021124948/ISHARES S&P 500 INDEX INVESTOR A\", \"secid\": \"BSPAX\", \"cusipnumber\": \"066923566\", \"total\": -5035.00000, \"units\": 12.46100, \"unitprice\": 401.260000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $10.870/PIMCO STOCKSPLUS ABSOLUTE RTRN CL A\", \"secid\": \"PTOAX\", \"cusipnumber\": \"72200Q620\", \"total\": -49.09000, \"units\": 4.51600, \"unitprice\": 10.870000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/PIMCO STOCKSPLUS ABSOLUTE RTRN CL A\", \"secid\": \"PTOAX\", \"cusipnumber\": \"72200Q620\", \"total\": 49.09000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $5.9650TRADE DATE 09-11-20/GENERAL ELECTRIC CO COM USD0.06\", \"secid\": \"GE\", \"cusipnumber\": \"369604103\", \"total\": -758.30000, \"units\": 127.12500, \"unitprice\": 5.965000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $5.9650TRADE DATE 09-11-20/GENERAL ELECTRIC CO COM USD0.06\", \"secid\": \"GE\", \"cusipnumber\": \"369604103\", \"total\": -758.30000, \"units\": 127.12500, \"unitprice\": 5.965000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/GENERAL ELECTRIC CO COM USD0.06\", \"secid\": \"GE\", \"cusipnumber\": \"369604103\", \"total\": 758.30000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/GENERAL ELECTRIC CO COM USD0.06\", \"secid\": \"GE\", \"cusipnumber\": \"369604103\", \"total\": 758.30000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $36.8850TRADE DATE 09-11-20/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": -10.72000, \"units\": 0.29100, \"unitprice\": 36.885000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": 10.72000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/WALT DISNEY CO\", \"secid\": \"DIS\", \"cusipnumber\": \"254687106\", \"total\": 0.01000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $215.2700TRADE DATE 09-11-20/DEERE & CO\", \"secid\": \"DE\", \"cusipnumber\": \"244199105\", \"total\": -160.57000, \"units\": 0.74600, \"unitprice\": 215.270000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/DEERE & CO\", \"secid\": \"DE\", \"cusipnumber\": \"244199105\", \"total\": 160.57000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-14T00:00:00-04:00\", \"trntype\": \"SELL\", \"catseq\": \"9\", \"trncode\": \"sl\", \"trndesc\": \"YOU SOLD CONF:000000010 PERSONAL WITHDRAWAL/LORD ABBETT SHORT DURATION INCOME CL C\", \"secid\": \"LDLAX\", \"cusipnumber\": \"543916704\", \"total\": 0.06000, \"units\": -0.01400, \"unitprice\": 4.210000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"SEL\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01660984\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -1.23000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID ED01661010\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -5.67000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38314053\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 2.34000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38313478\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 5000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"BUY\", \"catseq\": \"1\", \"trncode\": \"by\", \"trndesc\": \"YOU BOUGHT PERIODIC INVESTMENT CONF:021124947/ISHARES S&P 500 INDEX INVESTOR A\", \"secid\": \"BSPAX\", \"cusipnumber\": \"066923566\", \"total\": -5035.00000, \"units\": 12.63000, \"unitprice\": 395.880000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"BUY\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"CHECK ISSUED CHECK PAID 327344298\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -3.45000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"CKP\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"WITHDRAWAL\", \"catseq\": \"10\", \"trncode\": \"wd\", \"trndesc\": \"MONEY LINE PAID EFT FUNDS PAID AD36010140 /DIRECTED\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": -4.56000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000036\", \"key\": \"RJL000036\", \"displayname\": \"Individual - 0036\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38312878\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 1000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RKZ000018\", \"key\": \"RKZ000018\", \"displayname\": \"Individual - 0018\", \"dtentry\": \"2020-10-01T00:00:00-04:00\", \"dttrade\": \"2020-10-01T00:00:00-04:00\", \"dtsettle\": \"2020-10-01T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/JPMORGAN INVESTOR GROWTH & INCOME CL A\", \"secid\": \"ONGIX\", \"cusipnumber\": \"4812C2858\", \"total\": 17.93000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RKZ000018\", \"key\": \"RKZ000018\", \"displayname\": \"Individual - 0018\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT NET INT REINVEST/CASH\", \"secid\": \"FCASH\", \"cusipnumber\": \"315994103\", \"total\": -67.08000, \"units\": 67.08000, \"unitprice\": 1.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RKZ000018\", \"key\": \"RKZ000018\", \"displayname\": \"Individual - 0018\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"INTEREST\", \"catseq\": \"7\", \"trncode\": \"in\", \"trndesc\": \"CREDIT INTEREST INTEREST RECEIVED/CASH\", \"secid\": \"FCASH\", \"cusipnumber\": \"315994103\", \"total\": 67.08000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"INT\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RKZ000018\", \"key\": \"RKZ000018\", \"displayname\": \"Individual - 0018\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/SIRIUS XM HOLDINGS INC COM\", \"secid\": \"SIRI\", \"cusipnumber\": \"82968B103\", \"total\": 0.05000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000064\", \"key\": \"RJL000064\", \"displayname\": \"Individual - 0064\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38333979\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 100.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000064\", \"key\": \"RJL000064\", \"displayname\": \"Individual - 0064\", \"dtentry\": \"2020-09-15T00:00:00-04:00\", \"dttrade\": \"2020-09-15T00:00:00-04:00\", \"dtsettle\": \"2020-09-15T00:00:00-04:00\", \"trntype\": \"DEPOSIT/CONTRIBUTION\", \"catseq\": \"3\", \"trncode\": \"dp\", \"trndesc\": \"MONEY LINE RECEIVED EFT FUNDS RECEIVED ER38317554\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 3000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"ETF\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000055\", \"key\": \"RJL000055\", \"displayname\": \"Individual - 0055\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"by\", \"trndesc\": \"TRANSFERRED FROM VS RJL-000013-1/LORD ABBETT BOND DEBENTURE CLASS A\", \"secid\": \"LBNDX\", \"cusipnumber\": \"544004104\", \"total\": 0.00000, \"units\": 500.00000, \"unitprice\": 0.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000055\", \"key\": \"RJL000055\", \"displayname\": \"Individual - 0055\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"by\", \"trndesc\": \"TRANSFERRED FROM VS RJL-000013-1/CATERPILLAR INC COM USD1.00\", \"secid\": \"CAT\", \"cusipnumber\": \"149123101\", \"total\": 0.00000, \"units\": 1.00000, \"unitprice\": 0.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000055\", \"key\": \"RJL000055\", \"displayname\": \"Individual - 0055\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"by\", \"trndesc\": \"TRANSFERRED FROM VS RJL-000013-1/BANK OF NEW YORK MELLON CORP COM USD0.01\", \"secid\": \"BK\", \"cusipnumber\": \"064058100\", \"total\": 0.00000, \"units\": 200.00000, \"unitprice\": 0.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000055\", \"key\": \"RJL000055\", \"displayname\": \"Individual - 0055\", \"dtentry\": \"2020-10-05T00:00:00-04:00\", \"dttrade\": \"2020-10-05T00:00:00-04:00\", \"dtsettle\": \"2020-10-05T00:00:00-04:00\", \"trntype\": \"EXCHANGE/TRANSFER\", \"catseq\": \"5\", \"trncode\": \"dp\", \"trndesc\": \"TRANSFERRED FROM VS RJL-000013-1\", \"secid\": \"\", \"cusipnumber\": \"\", \"total\": 50000.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"TFR\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000055\", \"key\": \"RJL000055\", \"displayname\": \"Individual - 0055\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $5.9650TRADE DATE 09-11-20/GENERAL ELECTRIC CO COM USD0.06\", \"secid\": \"GE\", \"cusipnumber\": \"369604103\", \"total\": -75.23000, \"units\": 12.61200, \"unitprice\": 5.965000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000055\", \"key\": \"RJL000055\", \"displayname\": \"Individual - 0055\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $5.9650TRADE DATE 09-11-20/GENERAL ELECTRIC CO COM USD0.06\", \"secid\": \"GE\", \"cusipnumber\": \"369604103\", \"total\": -75.23000, \"units\": 12.61200, \"unitprice\": 5.965000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000055\", \"key\": \"RJL000055\", \"displayname\": \"Individual - 0055\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/GENERAL ELECTRIC CO COM USD0.06\", \"secid\": \"GE\", \"cusipnumber\": \"369604103\", \"total\": 75.23000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000055\", \"key\": \"RJL000055\", \"displayname\": \"Individual - 0055\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/GENERAL ELECTRIC CO COM USD0.06\", \"secid\": \"GE\", \"cusipnumber\": \"369604103\", \"total\": 75.23000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000041\", \"key\": \"RJL000041\", \"displayname\": \"Traditional IRA - 0041\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $1.000/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": -6.88000, \"units\": 6.88000, \"unitprice\": 1.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000041\", \"key\": \"RJL000041\", \"displayname\": \"Traditional IRA - 0041\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": 6.88000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000041\", \"key\": \"RJL000041\", \"displayname\": \"Traditional IRA - 0041\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/PFIZER INC\", \"secid\": \"PFE\", \"cusipnumber\": \"717081103\", \"total\": 18.75000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000041\", \"key\": \"RJL000041\", \"displayname\": \"Traditional IRA - 0041\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": 18.75000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000041\", \"key\": \"RJL000041\", \"displayname\": \"Traditional IRA - 0041\", \"dtentry\": \"2020-09-09T00:00:00-04:00\", \"dttrade\": \"2020-09-09T00:00:00-04:00\", \"dtsettle\": \"2020-09-09T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND CHARGED/APPLE INC COM USD0.00001\", \"secid\": \"AAPL\", \"cusipnumber\": \"037833100\", \"total\": -4425.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000041\", \"key\": \"RJL000041\", \"displayname\": \"Traditional IRA - 0041\", \"dtentry\": \"2020-09-09T00:00:00-04:00\", \"dttrade\": \"2020-09-09T00:00:00-04:00\", \"dtsettle\": \"2020-09-09T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND CHARGED/APPLE INC COM USD0.00001\", \"secid\": \"AAPL\", \"cusipnumber\": \"037833100\", \"total\": -4425.00000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000041\", \"key\": \"RJL000041\", \"displayname\": \"Traditional IRA - 0041\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": 21.75000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000023\", \"key\": \"RJL000023\", \"displayname\": \"Corporation - 0023\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": null, \"trndesc\": \" DIV OF $0.51 PENDING REINVESTMENT/MICROSOFT CORP\", \"secid\": \"MSFT\", \"cusipnumber\": \"594918104\", \"total\": 0.00000, \"units\": null, \"unitprice\": null, \"ispending\": true, \"allowcancel\": true, \"allowchange\": false, \"confirmationnumber\": \"*DIVP\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": true, \"trandate\": \"2020-10-09-03.49.06.527109\", \"checknumber\": null }, { \"acct\": \"RJL000023\", \"key\": \"RJL000023\", \"displayname\": \"Corporation - 0023\", \"dtentry\": \"2020-09-10T00:00:00-04:00\", \"dttrade\": \"2020-09-10T00:00:00-04:00\", \"dtsettle\": \"2020-09-10T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": null, \"trndesc\": \" DIV OF $0.87 PENDING REINVESTMENT/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": 0.00000, \"units\": null, \"unitprice\": null, \"ispending\": true, \"allowcancel\": true, \"allowchange\": false, \"confirmationnumber\": \"*DIVP\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": true, \"trandate\": \"2020-10-09-03.49.06.526211\", \"checknumber\": null }, { \"acct\": \"RJL000023\", \"key\": \"RJL000023\", \"displayname\": \"Corporation - 0023\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $1.000/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": -2.80000, \"units\": 2.80000, \"unitprice\": 1.000000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000023\", \"key\": \"RJL000023\", \"displayname\": \"Corporation - 0023\", \"dtentry\": \"2020-09-30T00:00:00-04:00\", \"dttrade\": \"2020-09-30T00:00:00-04:00\", \"dtsettle\": \"2020-09-30T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/FIDELITY TREASURY MMKT CAPITAL RESRVS\", \"secid\": \"FSRXX\", \"cusipnumber\": \"650914104\", \"total\": 2.80000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000023\", \"key\": \"RJL000023\", \"displayname\": \"Corporation - 0023\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"sl\", \"trndesc\": \"ADJ REINVESTMENT REINVEST @ $36.8850TRADE DATE 09-11-20/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": 0.75000, \"units\": -0.02000, \"unitprice\": 36.885000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000023\", \"key\": \"RJL000023\", \"displayname\": \"Corporation - 0023\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"by\", \"trndesc\": \"REINVESTMENT REINVEST @ $36.8850TRADE DATE 09-11-20/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": -0.75000, \"units\": 0.02000, \"unitprice\": 36.885000000, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": false, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"RIN\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }, { \"acct\": \"RJL000023\", \"key\": \"RJL000023\", \"displayname\": \"Corporation - 0023\", \"dtentry\": \"2020-09-11T00:00:00-04:00\", \"dttrade\": \"2020-09-11T00:00:00-04:00\", \"dtsettle\": \"2020-09-11T00:00:00-04:00\", \"trntype\": \"DIVIDEND\", \"catseq\": \"4\", \"trncode\": \"dv\", \"trndesc\": \"DIVIDEND RECEIVED/EXXON MOBIL CORP\", \"secid\": \"XOM\", \"cusipnumber\": \"30231G102\", \"total\": 0.75000, \"units\": null, \"unitprice\": null, \"ispending\": false, \"allowcancel\": false, \"allowchange\": false, \"confirmationnumber\": \"\", \"istradeactivity\": false, \"incomeordistributionactivity\": false, \"iscashtransaction\": true, \"isdebitcardoratm\": false, \"isbillpay\": false, \"isdeposit\": false, \"iswithdraw\": false, \"ischeckdeposit\": false, \"tranmnemonic\": \"DIV\", \"isintraday\": false, \"trandate\": null, \"checknumber\": null }] }] }\r\n //setSourceData(response.value[0].activities);\r\n //setShowOverlay(prevShowOverlay => false);\r\n //setfilterSourceData(response.value[0].activities);\r\n }\r\n //if (accountingData.length === 0 && user && user !== null) {\r\n // setShowOverlay(prevShowOverlay => true);\r\n // let response = {\r\n // \"@odata.context\": \"https://Activitysummary/odata/$metadata#ActivitySummary\", \"value\": [{\r\n // \"accountdisplayvalue\": \"test\",\r\n // \"accounttype\": \"test\",\r\n // \"cashdiscount\": 1.100000000,\r\n // \"cashdiscountamount\": 1.100000000,\r\n // \"cashdiscountdate\": \"10/14/2020 7:10:45 AM\",\r\n // \"creditamount\": 1.100000000,\r\n // \"currencycode\": \"DL\",\r\n // \"debitamount\": 1.100000000,\r\n // \"defaultdimensiondisplayvalue\": \"test\",\r\n // \"description\": \"test\",\r\n // \"document\": \"test\",\r\n // \"documentdate\": \"10/14/2020 7:10:45 AM\",\r\n // \"duedate\": \"10/14/2020 7:10:45 AM\",\r\n // \"exchangerate\": 1.100000000,\r\n // \"exchangeratesecondary\": 1.100000000,\r\n // \"invoice\": \"test\",\r\n // \"itemsalestaxgroup\": \"test\",\r\n // \"journalbatchnumber\": \"test\",\r\n // \"journalname\": \"test\",\r\n // \"linenumber\": 1,\r\n // \"offsetaccountdisplayvalue\": \"test\",\r\n // \"offsetaccounttype\": \"test\",\r\n // \"offsetdefaultdimensiondisplayvalue\": \"test\",\r\n // \"offsettext\": \"test\",\r\n // \"paymentid\": \"test\",\r\n // \"paymentmethod\": \"test\",\r\n // \"paymentreference\": \"test\",\r\n // \"postinglayer\": \"test\",\r\n // \"postingprofile\": \"test\",\r\n // \"quantity\": 1.100000000,\r\n // \"reportingcurrencyexchrate\": 1.100000000,\r\n // \"reportingcurrencyexchratesecondary\": 1.100000000,\r\n // \"reversedate\": \"10/14/2020 7:10:45 AM\",\r\n // \"reverseentry\": \"test\",\r\n // \"salestaxcode\": \"test\",\r\n // \"salestaxgroup\": \"test\",\r\n // \"taxexemptnumber\": \"test\",\r\n // \"text\": \"test\",\r\n // \"transdate\": \"10/14/2020 7:10:45 AM\",\r\n // \"voucher\": \"test\",\r\n // \"entityid\": \"test\"\r\n // }] }\r\n // setAccountingData(response.value)\r\n // setfilterAccountingData(response.value)\r\n // setShowOverlay(prevShowOverlay => false);\r\n //}\r\n }\r\n const accounts = []\r\n const handleOnSearchTransaction = (event) => {\r\n if (event.target.value === '') {\r\n setfilterAccountingData(accountingData);\r\n } else {\r\n let filterArr = arrayFilterByValue(accountingData, event.target.value, ['transdate', 'accountdisplayvalue', 'creditamount', 'debitamount', 'description','offsetaccountdisplayvalue']);\r\n setfilterAccountingData(filterArr);\r\n }\r\n }\r\n return (\r\n <>\r\n {\r\n showOverlay ?
Loading Transactions\r\n  \r\n
\r\n : <>\r\n {\r\n accountingData ?\r\n
\r\n
\r\n
\r\n handleOnSearchTransaction(e)} />\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n :\r\n
{MsgForNoData}
\r\n \r\n\r\n }\r\n \r\n }\r\n\r\n\r\n \r\n )\r\n}\r\nexport default AccountingData;","import React, { Component } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { compose } from 'redux';\r\nimport 'antd/dist/antd.css';\r\nimport { Tabs } from 'antd';\r\nimport SourceData from './sourceData';\r\nimport AccountingData from './accountingData';\r\nimport { getNestedObject } from '../../../common/common';\r\nconst { TabPane } = Tabs;\r\nclass Transactions extends Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n ActiveKey:\"1\"\r\n }\r\n\r\n this.onTabChanges = this.onTabChanges.bind(this);\r\n this.goBack = this.goBack.bind(this);\r\n //this.getActiveTab = this.getActiveTab.bind(this);\r\n }\r\n goBack = () => {\r\n this.props.history.push(`${this.props.matchUrl}/subAccount`);\r\n }\r\n\r\n onTabChanges(activetabKey) {\r\n this.setState(prevState => ({\r\n ActiveKey: activetabKey\r\n }));\r\n\r\n }\r\n\r\n render() {\r\n return (\r\n <>\r\n {\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n {this.props.selectedClient && this.props.selectedClient.name && this.props.selectedSubAccount && this.props.selectedSubAccount.accountKey ?\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n :\r\n
\r\n
\r\n
\r\n \r\n
}\r\n\r\n {this.props.selectedClient && this.props.selectedClient.name && this.props.selectedSubAccount && this.props.selectedSubAccount.accountKey ?\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n
: ''}\r\n
\r\n }\r\n\r\n\r\n \r\n )\r\n }\r\n}\r\nconst mapStateToProps = state => {\r\n return {\r\n selectedClient: state.dashboard.selectedClient,\r\n selectedSubAccount: state.accounting.selectedSubAccount,\r\n };\r\n};\r\nconst enhancement = compose(\r\n connect(mapStateToProps)\r\n)\r\nexport default enhancement(Transactions);\r\n//const Transactions = (props) => {\r\n// const [activeClient, setActiveClient] = useState({});\r\n// const [activeKey, setActiveKey] = useState(\"1\");\r\n// const [selectedClient, setSelectedClient] = useState({ name: \"test\"})\r\n// const [selectedSubAccount, setSelectedSubAccount] = useState({ accountKey: \"1234\" })\r\n// // const user = useSelector(state => getNestedObject(state, ['app', 'user']));\r\n// //const selectedClient = useSelector(state => getNestedObject(state, ['dashboard', 'selectedClient']));\r\n// //const selectedSubAccount = useSelector(state => getNestedObject(state, ['accounting', 'selectedSubAccount']));\r\n\r\n// const onTabChanges = activetabKey => {\r\n// setActiveKey(prevActiveKey => activetabKey);\r\n// }\r\n\r\n// //useEffect(() => {\r\n// // setActiveClient(prevActiveClient => { return { ...selectedClient } });\r\n// //}, []);\r\n// const goBack = () => {\r\n// props.history.push('/subAccount');\r\n// }\r\n// return (\r\n// <>\r\n// {\r\n//
\r\n//
\r\n//
\r\n// \r\n//
\r\n\r\n//
\r\n\r\n// {selectedClient && selectedClient.name && selectedSubAccount && selectedSubAccount.accountKey ?\r\n//
\r\n//
\r\n// \r\n// \r\n// \r\n//
\r\n//
\r\n//
\r\n// \r\n//
\r\n//
\r\n// :\r\n//
\r\n//
\r\n//
\r\n// \r\n//
}\r\n\r\n// {selectedClient && selectedClient.name && selectedSubAccount && selectedSubAccount.accountKey ?\r\n//
\r\n//
\r\n// \r\n// \r\n// \r\n// \r\n// \r\n// )} />\r\n// \r\n\r\n// \r\n//
\r\n//
:''}\r\n//
\r\n// }\r\n\r\n\r\n// \r\n// )\r\n//}\r\n//export default Transactions;","import React from 'react';\r\n\r\nexport function getVendorsGridColumn(editVendor, add){\r\n const column = [\r\n {\r\n dataField: 'rcmPayeeId',\r\n text: 'Payee Id',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: 'name',\r\n text: 'Name',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n },\r\n \r\n \r\n {\r\n dataField: '',\r\n text: '',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'right',\r\n headerClasses: 'RCM_noWrap',\r\n headerFormatter: (cell, row) => {\r\n return (
add()} >+ Add New
)\r\n },\r\n formatter: (cell, row) => {\r\n return(
\r\n \r\n
);\r\n }\r\n }\r\n ]\r\n\r\n return column;\r\n}\r\nfunction customCaretSort(order, column) {\r\n if (!order) return ();\r\n else if (order === 'asc') return ();\r\n else if (order === 'desc') return ();\r\n return null;\r\n}\r\n\r\n","import React from 'react';\r\nimport { Form, FormGroup } from \"reactstrap\";\r\n\r\nconst VendorAddEdit = ({ mode, handleFormChanges, activeVendor, cancel, save }) => {\r\n\r\n return (\r\n <>\r\n {\r\n mode ?
\r\n
\r\n {\r\n mode === \"edit\"\r\n ?\r\n
\r\n Edit Payee - {activeVendor.name}\r\n
\r\n :\r\n
\r\n Add New Payee\r\n
\r\n }\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n handleFormChanges(evt)}\r\n\r\n />\r\n \r\n
\r\n \r\n {/*
\r\n \r\n \r\n handleFormChanges(evt)}\r\n />\r\n \r\n
*/}\r\n \r\n
\r\n\r\n
\r\n
\r\n  \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n :\r\n
\r\n
\r\n Please select a payee\r\n
\r\n
\r\n\r\n }\r\n \r\n )\r\n}\r\nexport default VendorAddEdit;","import React, { useState, useEffect } from 'react';\r\nimport { useSelector } from 'react-redux';\r\nimport { Spinner } from 'reactstrap';\r\nimport { BackTop, message } from 'antd';\r\nimport BootstrapTable from 'react-bootstrap-table-next';\r\nimport { MsgForNoData, arrayFilterByValue } from '../../../common/constants';\r\nimport { getVendorsGridColumn } from './vendorListColumns';\r\nimport VendorAddEdit from './vendorAddEdit';\r\nimport { getNestedObject } from '../../../common/common';\r\nimport {\r\n addEditVendorService, addEditVendorServiceCancellationToken,\r\n getVendorListService, getVendorListServiceCancellationToken\r\n} from './../../../services/accountingServices/accountingService';\r\nimport ClientListPopup from '../clientListPopup';\r\nimport { animateViewTable } from '../../../common/animation';\r\n\r\n\r\nconst VendorsList = (props) => {\r\n const [showOverlay, setShowOverlay] = useState(false);\r\n const [vendorList, setVendorList] = useState([]);\r\n const [gridData, setGridData] = useState([]);\r\n const [filterKey, setFilterKey] = useState(\"\"); \r\n const [activeVendor, setActiveVendor] = useState({});\r\n const [mode, setMode] = useState(\"\");\r\n const selectedClient = useSelector(state => getNestedObject(state, ['dashboard', 'selectedClient']));\r\n const [activeClient, setActiveClient] = useState({});\r\n const [isClientListPopupOpen, setIsClientListPopupOpen] = useState(false);\r\n \r\n useEffect(() => {\r\n \r\n setActiveClient(prevActiveClient => { return { ...selectedClient } });\r\n return () => {\r\n \r\n if (addEditVendorServiceCancellationToken !== null && addEditVendorServiceCancellationToken !== undefined) {\r\n addEditVendorServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n if (getVendorListServiceCancellationToken !== null && getVendorListServiceCancellationToken !== undefined) {\r\n getVendorListServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n \r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (activeClient && activeClient.pKid) {\r\n setShowOverlay(prevShowOverlay => true);\r\n getVendorList(activeClient.pKid);\r\n setFilterKey(pervFilterKey => \"\");\r\n }\r\n }, [activeClient]);\r\n\r\n useEffect(() => {\r\n setActiveClient(prevActiveClient => { return { ...selectedClient } });\r\n }, [selectedClient]);\r\n\r\n const toggleClientListPopup = () => {\r\n setIsClientListPopupOpen(prevIsClientListPopupOpen => !prevIsClientListPopupOpen);\r\n }\r\n \r\n const getVendorList = (entityId) => {\r\n getVendorListService(entityId).then(res => {\r\n \r\n if (res.status === 200) {\r\n if (res && res.data && res.data && res.data !== null && Array.isArray(res.data)) {\r\n let data = res.data;\r\n setVendorList(data);\r\n setGridData(data);\r\n }\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to get vendor list, you can try again.\");\r\n console.error(\"Error Occured while fetching vendors\");\r\n }\r\n setShowOverlay(prevShowOverlay => false);\r\n\r\n })\r\n .catch(err => {\r\n setShowOverlay(prevShowOverlay => false);\r\n animateViewTable();\r\n message.error(\"We are unable to get vendor list, you can try again.\");\r\n console.error(\"Error Occured while fetching vendors\");\r\n })\r\n }\r\n const handleFilter = (e) => {\r\n let value = e.target.value\r\n let filteredVendor = arrayFilterByValue(vendorList, value);\r\n setFilterKey(pervFilterKey => value);\r\n setGridData(filteredVendor);\r\n }\r\n const clearFilter = () => {\r\n let filteredVendor = arrayFilterByValue(vendorList, \"\");\r\n setFilterKey(pervFilterKey => \"\");\r\n setGridData(filteredVendor);\r\n }\r\n const add = () => {\r\n setMode(\"add\");\r\n setActiveVendor({\r\n \"rcmPayeeId\": \"\",\r\n \"name\": \"\",\r\n \"pKid\": activeClient.pKid,\r\n \"vendorType\": \"payee\",\r\n \"sid\": \"\",\r\n \"isActive\": \"Y\",\r\n \"mode\": \"INSERT-IF-NEW\"\r\n }); \r\n }\r\n const editVendor = row => {\r\n setMode(\"edit\");\r\n let payee = { ...row, mode: 'UPDATE', \"pKid\": activeClient.pKid };\r\n setActiveVendor({ ...payee });\r\n }\r\n \r\n const handleFormChanges = evt => {\r\n let value = evt.target.value;\r\n if (evt.target.name === \"name\") {\r\n setActiveVendor(prevActiveVendor => { return { ...prevActiveVendor, name: value } });\r\n }\r\n //else if (evt.target.name === 'description') {\r\n // setActiveVendor(prevActiveVendor => { return { ...prevActiveVendor, description: value } });\r\n //} \r\n }\r\n const cancel = () => {\r\n setActiveVendor({});\r\n setMode(\"\");\r\n }\r\n const save = () => {\r\n \r\n setShowOverlay(prevShowOverlay => true);\r\n addEditVendorService(activeVendor).then(res => {\r\n if (res) { \r\n getVendorList(activeClient.pKid);\r\n setActiveVendor({});\r\n setMode(\"\");\r\n setShowOverlay(prevShowOverlay => false);\r\n } else {\r\n setShowOverlay(prevShowOverlay => false);\r\n animateViewTable();\r\n message.error(\"We are unable save vendor, you can try again.\");\r\n }\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n setShowOverlay(prevShowOverlay => false);\r\n animateViewTable();\r\n message.error(\"We are unable save vendor, you can try again.\");\r\n })\r\n\r\n }\r\n return (\r\n <>\r\n
\r\n {\r\n showOverlay ?
Loading Payees\r\n  \r\n
\r\n : <>\r\n \r\n
\r\n
\r\n Select {\r\n activeClient === undefined || activeClient === null || activeClient === \"\" || activeClient.pKid === undefined ? \" a \" : ' another '}\r\n toggleClientListPopup()}>client.\r\n \r\n
\r\n
\r\n {\r\n activeClient === undefined || activeClient === null || activeClient === \"\" || activeClient.pKid === undefined\r\n ? <>\r\n :\r\n\r\n
\r\n
\r\n
\r\n LIST OF PAYEES - {activeClient && activeClient.name}\r\n
\r\n
\r\n handleFilter(e)}\r\n value={filterKey}\r\n\r\n />\r\n \r\n
\r\n\r\n\r\n
\r\n {\r\n vendorList ?\r\n
\r\n \r\n
\r\n :
{MsgForNoData}
\r\n\r\n }\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n }\r\n \r\n }\r\n
\r\n \r\n \r\n )\r\n\r\n};\r\n\r\nexport default VendorsList;","import React, { useState, useEffect } from 'react';\r\nimport { useSelector } from 'react-redux';\r\nimport { Spinner } from 'reactstrap';\r\nimport { BackTop, message } from 'antd';\r\nimport BootstrapTable from 'react-bootstrap-table-next';\r\nimport { MsgForNoData, arrayFilterByValue } from '../../../common/constants';\r\nimport { getVendorsGridColumn } from './vendorListColumns';\r\nimport VendorAddEdit from './vendorAddEdit';\r\nimport { getNestedObject } from '../../../common/common';\r\nimport {\r\n addEditVendorService, addEditVendorServiceCancellationToken,\r\n getVendorListService, getVendorListServiceCancellationToken\r\n} from '../../../services/accountingServices/accountingService';\r\nimport ClientListPopup from '../clientListPopup';\r\nimport { animateViewTable } from '../../../common/animation';\r\n\r\n\r\nconst AllClientsVendorsList = (props) => {\r\n const [showOverlay, setShowOverlay] = useState(false);\r\n const [vendorList, setVendorList] = useState([]);\r\n const [gridData, setGridData] = useState([]);\r\n const [filterKey, setFilterKey] = useState(\"\");\r\n const [activeVendor, setActiveVendor] = useState({});\r\n const [mode, setMode] = useState(\"\");\r\n const selectedClient = { name: 'All Clients', pKid: '-1', orgId: '-1' };\r\n const [activeClient, setActiveClient] = useState({});\r\n \r\n\r\n useEffect(() => {\r\n\r\n setActiveClient(prevActiveClient => { return { ...selectedClient } });\r\n return () => {\r\n\r\n if (addEditVendorServiceCancellationToken !== null && addEditVendorServiceCancellationToken !== undefined) {\r\n addEditVendorServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n if (getVendorListServiceCancellationToken !== null && getVendorListServiceCancellationToken !== undefined) {\r\n getVendorListServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (activeClient && activeClient.pKid) {\r\n setShowOverlay(prevShowOverlay => true);\r\n getVendorList(activeClient.pKid);\r\n setFilterKey(pervFilterKey => \"\");\r\n }\r\n }, [activeClient]);\r\n\r\n \r\n\r\n \r\n\r\n const getVendorList = (entityId) => {\r\n getVendorListService(entityId).then(res => {\r\n\r\n if (res.status === 200) {\r\n if (res && res.data && res.data && res.data !== null && Array.isArray(res.data)) {\r\n let data = res.data;\r\n setVendorList(data);\r\n setGridData(data);\r\n }\r\n } else {\r\n animateViewTable();\r\n message.error(\"We are unable to get vendor list, you can try again.\");\r\n console.error(\"Error Occured while fetching vendors\");\r\n }\r\n setShowOverlay(prevShowOverlay => false);\r\n\r\n })\r\n .catch(err => {\r\n setShowOverlay(prevShowOverlay => false);\r\n animateViewTable();\r\n message.error(\"We are unable to get vendor list, you can try again.\");\r\n console.error(\"Error Occured while fetching vendors\");\r\n })\r\n }\r\n const handleFilter = (e) => {\r\n let value = e.target.value\r\n let filteredVendor = arrayFilterByValue(vendorList, value);\r\n setFilterKey(pervFilterKey => value);\r\n setGridData(filteredVendor);\r\n }\r\n const clearFilter = () => {\r\n let filteredVendor = arrayFilterByValue(vendorList, \"\");\r\n setFilterKey(pervFilterKey => \"\");\r\n setGridData(filteredVendor);\r\n }\r\n const add = () => {\r\n setMode(\"add\");\r\n setActiveVendor({\r\n \"rcmPayeeId\": \"\",\r\n \"name\": \"\",\r\n \"pKid\": activeClient.pKid,\r\n \"vendorType\": \"payee\",\r\n \"sid\": \"\",\r\n \"isActive\": \"Y\",\r\n \"mode\": \"INSERT-IF-NEW\"\r\n });\r\n }\r\n const editVendor = row => {\r\n setMode(\"edit\");\r\n let payee = { ...row, mode: 'UPDATE', \"pKid\": activeClient.pKid };\r\n setActiveVendor({ ...payee });\r\n }\r\n\r\n const handleFormChanges = evt => {\r\n let value = evt.target.value;\r\n if (evt.target.name === \"name\") {\r\n setActiveVendor(prevActiveVendor => { return { ...prevActiveVendor, name: value } });\r\n }\r\n //else if (evt.target.name === 'description') {\r\n // setActiveVendor(prevActiveVendor => { return { ...prevActiveVendor, description: value } });\r\n //} \r\n }\r\n const cancel = () => {\r\n setActiveVendor({});\r\n setMode(\"\");\r\n }\r\n const save = () => {\r\n\r\n setShowOverlay(prevShowOverlay => true);\r\n addEditVendorService(activeVendor).then(res => {\r\n if (res) {\r\n getVendorList(activeClient.pKid);\r\n setActiveVendor({});\r\n setMode(\"\");\r\n setShowOverlay(prevShowOverlay => false);\r\n } else {\r\n setShowOverlay(prevShowOverlay => false);\r\n animateViewTable();\r\n message.error(\"We are unable save vendor, you can try again.\");\r\n }\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n setShowOverlay(prevShowOverlay => false);\r\n animateViewTable();\r\n message.error(\"We are unable save vendor, you can try again.\");\r\n })\r\n\r\n }\r\n return (\r\n <>\r\n
\r\n {\r\n showOverlay ?
Loading Payees\r\n  \r\n
\r\n : <>\r\n \r\n\r\n
\r\n
\r\n
\r\n LIST OF PAYEES - ALL CLIENTS\r\n
\r\n
\r\n handleFilter(e)}\r\n value={filterKey}\r\n\r\n />\r\n \r\n
\r\n\r\n\r\n
\r\n {\r\n vendorList ?\r\n
\r\n \r\n
\r\n :
{MsgForNoData}
\r\n\r\n }\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n \r\n }\r\n
\r\n \r\n \r\n )\r\n\r\n};\r\n\r\nexport default AllClientsVendorsList;","import React, { Component } from 'react';\r\nimport { Route, Switch } from 'react-router';\r\nimport { Redirect, withRouter } from 'react-router-dom';\r\nimport VendorsList from './vendorList';\r\nimport AllClientsVendorsList from './allClientsVendorList'\r\nimport 'antd/dist/antd.css';\r\nimport { Tabs } from 'antd';\r\n\r\nimport Notfound from '../../../common/notfound';\r\nconst { TabPane } = Tabs;\r\n\r\nclass Vendor extends Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n ActiveKey: \"1\"\r\n }\r\n this.onTabChanges = this.onTabChanges.bind(this);\r\n }\r\n\r\n //getActiveTab = () => {\r\n // const currentRoute = this.props.history.location.pathname;\r\n // let activeKey = \"1\";\r\n // if (currentRoute === `${this.props.match.url}` || currentRoute === `${this.props.match.url}/allclientpayees`)\r\n // activeKey = \"1\";\r\n // else if (currentRoute === `${this.props.match.url}/specificclientpayees`)\r\n // activeKey = \"2\";\r\n // return activeKey;\r\n //}\r\n\r\n onTabChanges(activetabKey) {\r\n //switch (activetabKey) {\r\n // case \"1\": {\r\n // this.props.history.push(this.props.match.url + '/allclientpayees');\r\n // break;\r\n // }\r\n // case \"2\": {\r\n // this.props.history.push(this.props.match.url + '/specificclientpayees');\r\n // break;\r\n // }\r\n \r\n\r\n // default: {\r\n // break;\r\n // }\r\n //}\r\n this.setState(prevState => ({\r\n ActiveKey: activetabKey\r\n }));\r\n\r\n }\r\n\r\n render() {\r\n \r\n return (\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default withRouter(Vendor);\r\n\r\n\r\n","import React, { Component } from 'react';\r\nimport { Route, Switch } from 'react-router';\r\nimport { Redirect, withRouter } from 'react-router-dom';\r\nimport SubAccounts from './subAccounts';\r\nimport PostingRules from './postingRules/postingRulesContainer';\r\nimport 'antd/dist/antd.css';\r\nimport { Tabs } from 'antd';\r\nimport Transactions from './transactions/transactions';\r\nimport Notfound from '../../common/notfound';\r\nimport Vendor from './vendors/vendor'; \r\nconst { TabPane } = Tabs;\r\n\r\nclass Accounting extends Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n ActiveKey: this.getActiveTab()\r\n }\r\n\r\n this.onTabChanges = this.onTabChanges.bind(this);\r\n this.getActiveTab = this.getActiveTab.bind(this);\r\n }\r\n\r\n getActiveTab = () => {\r\n const currentRoute = this.props.history.location.pathname;\r\n let activeKey = \"1\";\r\n if (currentRoute === `${this.props.match.url}` || currentRoute === `${this.props.match.url}/subAccount`)\r\n activeKey = \"1\";\r\n else if (currentRoute === `${this.props.match.url}/payees` || currentRoute === `${this.props.match.url}/payees/allclientpayees` || currentRoute === `${this.props.match.url}/specificclientpayees`)\r\n activeKey = \"2\";\r\n else if (currentRoute === `${this.props.match.url}/postingRules`)\r\n activeKey = \"3\";\r\n return activeKey; \r\n }\r\n\r\n onTabChanges(activetabKey) {\r\n switch (activetabKey) {\r\n case \"1\": {\r\n this.props.history.push(this.props.match.url + '/subAccount');\r\n break;\r\n }\r\n case \"2\": {\r\n this.props.history.push(this.props.match.url + '/payees');\r\n break;\r\n }\r\n case \"3\": {\r\n this.props.history.push(this.props.match.url + '/postingRules');\r\n break;\r\n }\r\n\r\n default: {\r\n break;\r\n }\r\n }\r\n this.setState(prevState => ({\r\n ActiveKey: activetabKey\r\n }));\r\n\r\n }\r\n\r\n render() {\r\n let mode = 'left';\r\n return (\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n {\r\n \r\n } />\r\n ()} />\r\n ()} />\r\n ()} />\r\n ()} />\r\n \r\n \r\n }\r\n
\r\n\r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default withRouter(Accounting);\r\n\r\n\r\n","import React from 'react';\r\n\r\nexport function getApproversListColumn(addApprover, openConfirmationPopup, editApprover){\r\n const column = [\r\n\r\n {\r\n dataField: 'emailid',\r\n text: 'User Email',\r\n headerClasses: 'RCM_noWrap RCM_clientName_col',\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return(
\r\n {cell}\r\n
);\r\n }\r\n },\r\n {\r\n dataField: 'firstname',\r\n text: 'First Name',\r\n headerClasses: 'RCM_noWrap',\r\n //classes: 'RCM_common_table_column_text RCM_common_table_column_text_right',\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'lastname',\r\n text: 'Last Name',\r\n headerClasses: 'RCM_noWrap',\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: 'wsportaluserid',\r\n text: 'WSPortalUserId',\r\n headerClasses: 'RCM_noWrap',\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column)\r\n },\r\n {\r\n dataField: '',\r\n text: '',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'right',\r\n headerClasses: 'RCM_noWrap',\r\n headerFormatter: (cell, row) => {\r\n return (
addApprover()} >+ Add New
)\r\n },\r\n formatter: (cell, row) => {\r\n return (\r\n
\r\n editApprover(row)}>\r\n
\r\n openConfirmationPopup(row)}>\r\n \r\n \r\n \r\n );\r\n }\r\n }\r\n ]\r\n\r\n return column;\r\n}\r\nfunction customCaretSort(order, column) {\r\n if (!order) return ();\r\n else if (order === 'asc') return ();\r\n else if (order === 'desc') return ();\r\n return null;\r\n}\r\n","import axios from 'axios';\r\nimport {\r\n getApproversListUrl, apiBaseUrl, deleteApproverUrl, addApproversUrl, editApproverUrl, graphApiUrl\r\n} from '../serviceConstant';\r\nimport { Get, Post, GetForGraph } from '../servicecalls';\r\nimport { MsgForFailedData } from '../../common/constants';\r\n\r\n\r\nexport var getApproversListServiceCancellationToken = null;\r\nexport const getApproversListService= () => {\r\n\r\n if (getApproversListServiceCancellationToken !== null && getApproversListServiceCancellationToken !== undefined) {\r\n getApproversListServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getApproversListServiceCancellationToken = cancelToken.source();\r\n\r\n let getApproversListPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${getApproversListUrl}`;\r\n\r\n Get(url, getApproversListServiceCancellationToken).then(\r\n response => {\r\n if (response) {\r\n resolve(response);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While Fetching approvers list.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getApproversListPromise;\r\n}\r\n\r\nexport var addApproverServiceCancellationToken = null;\r\nexport const addApproverService = (reqPayload) => {\r\n if (addApproverServiceCancellationToken !== null && addApproverServiceCancellationToken !== undefined) {\r\n addApproverServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n addApproverServiceCancellationToken = cancelToken.source();\r\n\r\n let addApproverServicePromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${addApproversUrl}`;\r\n \r\n Post(url, reqPayload, addApproverServiceCancellationToken).then(\r\n catResponse => {\r\n if (catResponse.data) {\r\n resolve(catResponse.data);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While adding approver.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return addApproverServicePromise;\r\n}\r\nexport var deleteApproverServiceCancellationToken = null;\r\n\r\nexport const deleteApproverService = (approverid) => {\r\n if (deleteApproverServiceCancellationToken !== null && deleteApproverServiceCancellationToken !== undefined) {\r\n deleteApproverServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n deleteApproverServiceCancellationToken = cancelToken.source();\r\n\r\n let deleteApproverPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${deleteApproverUrl}?approverid=${approverid}`;\r\n\r\n Get(url, deleteApproverServiceCancellationToken).then(\r\n response => {\r\n if (response) {\r\n resolve(response);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While deleting approver. \", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return deleteApproverPromise;\r\n}\r\n\r\nexport var editApproverServiceCancellationToken = null;\r\n\r\nexport const editApproverService = (reqPayload) => {\r\n if (editApproverServiceCancellationToken !== null && editApproverServiceCancellationToken !== undefined) {\r\n editApproverServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n editApproverServiceCancellationToken = cancelToken.source();\r\n\r\n let editApproverPromise = new Promise(function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${editApproverUrl}`;\r\n\r\n Post(url, reqPayload, editApproverServiceCancellationToken).then(\r\n catResponse => {\r\n if (catResponse.data) {\r\n resolve(catResponse.data);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While adding approver.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return editApproverPromise;\r\n}\r\nexport var getUserListServiceCancellationToken = null;\r\n\r\nexport const getUserListService = (token) => {\r\n if (getUserListServiceCancellationToken !== null && getUserListServiceCancellationToken !== undefined) {\r\n getUserListServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n getUserListServiceCancellationToken = cancelToken.source();\r\n\r\n let getUserListPromise = new Promise(function (resolve, reject) {\r\n let url = `${graphApiUrl}/users`;\r\n\r\n GetForGraph(url, token, getUserListServiceCancellationToken).then(\r\n catResponse => {\r\n if (catResponse.data) {\r\n resolve(catResponse.data);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured While fetching user list.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n\r\n return getUserListPromise;\r\n}\r\n","import React, { useState, useEffect } from 'react';\r\nimport { useSelector } from 'react-redux';\r\nimport { Form, FormGroup } from \"reactstrap\";\r\nimport { validateEmailId, basicAlphaNumeric } from './../../../common/constants';\r\nimport { BackTop, message } from 'antd';\r\nimport { authProvider } from '../../../App';\r\nimport {\r\n addApproverService, addApproverServiceCancellationToken,\r\n editApproverService, editApproverServiceCancellationToken,\r\n getUserListService\r\n} from './../../../services/approversService/approversService';\r\n\r\n\r\nconst AddApprovers = (props) => {\r\n const [approver, setApprover] = useState({\r\n emailid: '',\r\n firstname: '',\r\n lastname: '',\r\n wsportaluserid:''\r\n });\r\n const [isEmailValid, setIsEmailValid] = useState(false);\r\n //const user = useSelector(state => getNestedObject(state,['app', 'user']));\r\n useEffect(() => {\r\n //getGraphAPIUserList();\r\n return () => {\r\n if (addApproverServiceCancellationToken !== null && addApproverServiceCancellationToken !== undefined) {\r\n addApproverServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n if (editApproverServiceCancellationToken !== null && editApproverServiceCancellationToken !== undefined) {\r\n editApproverServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (props.mode === 'edit') {\r\n setApprover(props.selectedApprover);\r\n setIsEmailValid(prevIsEmailValid => true);\r\n } else if (props.mode === 'add') {\r\n setApprover({\r\n emailid: '',\r\n firstname: '',\r\n lastname: '',\r\n wsportaluserid:''\r\n });\r\n }\r\n }, [props.mode, props.selectedApprover]);\r\n\r\n const getGraphAPIUserList = () => {\r\n const accounts = authProvider.getAllAccounts();\r\n if (accounts && accounts.length > 0) {\r\n console.log(\"User exist in cache\");\r\n\r\n authProvider\r\n .acquireTokenSilent({\r\n account: accounts[0],\r\n //loginHint: user.userName,\r\n forceRefresh: true,\r\n scopes: [\"user.read\"],\r\n })\r\n .then((silentres) => {\r\n getUserListService(silentres.accessToken)\r\n .then((res) => {\r\n alert(res);\r\n })\r\n .catch((err) => {\r\n console.log(\"error: \" + err);\r\n })\r\n\r\n })\r\n .catch((err) => {\r\n console.error(\" failed\", err);\r\n\r\n });\r\n }\r\n }\r\n const handleFormChanges = evt => {\r\n let value = evt.target.value;\r\n if (evt.target.name === \"emailid\") {\r\n setApprover(prevApprover => { return { ...prevApprover, emailid: value } });\r\n } else if (evt.target.name === \"firstname\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || basicAlphaNumeric.test(evt.target.value))) {\r\n setApprover(prevApprover => { return { ...prevApprover, firstname: value } });\r\n } else if (evt.target.name === \"lastname\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || basicAlphaNumeric.test(evt.target.value))) {\r\n setApprover(prevApprover => { return { ...prevApprover, lastname: value } });\r\n } else if (evt.target.name === \"wsportaluserid\" && evt.target.value.length <= 50 && (evt.target.value === \"\" || basicAlphaNumeric.test(evt.target.value))) {\r\n setApprover(prevApprover => { return { ...prevApprover, wsportaluserid: value } });\r\n }\r\n\r\n }\r\n const handleBlur = evt => {\r\n let value = evt.target.value;\r\n if (evt.target.name === \"emailid\") {\r\n if (!validateEmailId(value)) {\r\n message.error(\"Please enter a valid email address.\");\r\n setIsEmailValid(prevIsEmailValid => false);\r\n } else {\r\n setIsEmailValid(prevIsEmailValid => true);\r\n }\r\n }\r\n }\r\n const clear = () => {\r\n setApprover(prevApprover => { return { ...prevApprover, emailid: '', firstname: '', lastname: '', wsportaluserid:'' } });\r\n props.setShowAdd(prevShowAdd => false);\r\n }\r\n const save = () => {\r\n if (props.mode === 'add') {\r\n addApproverService(approver).then(res => {\r\n if (res) {\r\n props.message.success(\"Approver added successfully.\");\r\n clear();\r\n props.refresh();\r\n }\r\n\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n props.message.error(\"Unable to add approver.\");\r\n })\r\n } else {\r\n editApproverService(approver).then(res => {\r\n if (res) {\r\n props.message.success(\"Approver updated successfully.\");\r\n clear();\r\n props.refresh();\r\n }\r\n\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n props.message.error(\"Unable to updated approver.\");\r\n })\r\n }\r\n\r\n\r\n }\r\n\r\n return (\r\n <>\r\n \r\n
\r\n
\r\n {props.mode === \"add\" ? 'Add New Approver' : (props.mode === \"edit\") ? 'Edit Approver: ' + approver.emailid : 'Select an approver.'}\r\n
\r\n\r\n
\r\n {\r\n props.mode === \"add\" || props.mode === \"edit\"\r\n ?
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n handleFormChanges(evt)}\r\n onBlur={evt => handleBlur(evt)}\r\n key=\"AddApprover10\"\r\n />\r\n \r\n
\r\n
\r\n \r\n \r\n handleFormChanges(evt)}\r\n key=\"AddApprover14\"\r\n />\r\n \r\n
\r\n
\r\n \r\n \r\n handleFormChanges(evt)}\r\n key=\"AddApprover18\"\r\n />\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n handleFormChanges(evt)}\r\n key=\"AddApprover23\"\r\n />\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n  \r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n : ''\r\n }\r\n \r\n )\r\n\r\n};\r\n\r\nexport default AddApprovers;","import React, { useState, useEffect } from 'react';\r\nimport { arrayFilterByValue } from '../../../common/utilities';\r\nimport { MsgForNoData } from '../../../common/constants';\r\nimport BootstrapTable from 'react-bootstrap-table-next';\r\nimport { getApproversListColumn } from './approversListColumns';\r\nimport AddApprovers from './addApprovers';\r\nimport ConfirmationPopup from './../../accounting/confirmationPopup';\r\nimport { BackTop, message } from 'antd';\r\nimport { Spinner } from 'reactstrap';\r\nimport {\r\n getApproversListService, getApproversListServiceCancellationToken,\r\n deleteApproverService, deleteApproverServiceCancellationToken,\r\n \r\n} from './../../../services/approversService/approversService';\r\n\r\nconst PaymentApprovers = (props) => {\r\n const [showOverlay, setShowOverlay] = useState(false);\r\n const [approversList, setApproversList] = useState([]);\r\n const [filteredApproversList, setFilteredApproversList] = useState([]);\r\n const [showAdd, setShowAdd] = useState(false);\r\n const [showConfirmationPopup, setShowConfirmationPopup] = useState(false);\r\n const [selectedApprover, setSelectedApprover] = useState({});\r\n const [mode, setMode] = useState(\"\");\r\n\r\n useEffect(() => {\r\n setShowOverlay(prevShowOverlay => true);\r\n getData(); \r\n return () => {\r\n if (getApproversListServiceCancellationToken !== null && getApproversListServiceCancellationToken !== undefined) {\r\n getApproversListServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n if (deleteApproverServiceCancellationToken !== null && deleteApproverServiceCancellationToken !== undefined) {\r\n deleteApproverServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n }\r\n }, []);\r\n \r\n const handleOnSearchChange = (event) => {\r\n if (event.target.value === '') {\r\n setFilteredApproversList(approversList);\r\n \r\n } else {\r\n let filterArr = arrayFilterByValue(approversList, event.target.value,['emailid', 'firstname', 'lastname']);\r\n setFilteredApproversList(filterArr);\r\n }\r\n }\r\n \r\n const getData = () => {\r\n //call api and get approvers\r\n getApproversListService().then(res => {\r\n if (res && res.status === 200 && res.data && res.data !=null)\r\n setApproversList(res.data);\r\n setFilteredApproversList(res.data);\r\n setShowOverlay(prevShowOverlay => false);\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n message.error(\"Unable to get approvers list.\");\r\n setShowOverlay(prevShowOverlay => false);\r\n })\r\n \r\n }\r\n const openConfirmationPopup = row => {\r\n setShowConfirmationPopup(pervShowConfirmationPopup => true);\r\n setSelectedApprover(row);\r\n }\r\n const toggleConfirmationModelPopup = () => {\r\n setShowConfirmationPopup(pervShowConfirmationPopup => !pervShowConfirmationPopup);\r\n }\r\n const confirmAction = source => {\r\n setShowOverlay(prevShowOverlay => true);\r\n if (selectedApprover && selectedApprover.approverid !== undefined && selectedApprover.rcmUserId !== \"\") {\r\n deleteApproverService(selectedApprover.approverid).then(res => {\r\n if (res) {\r\n message.success(\"Successfully deleted approver.\");\r\n refresh();\r\n }\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n message.error(\"Unable to delete selected approver.\");\r\n });\r\n }\r\n setSelectedApprover({});\r\n setShowConfirmationPopup(pervShowConfirmationPopup => !pervShowConfirmationPopup);\r\n }\r\n const addApprover = () => {\r\n setMode(\"add\");\r\n setShowAdd(prevShowAdd => true);\r\n setSelectedApprover({});\r\n }\r\n const editApprover = row => {\r\n setMode(\"edit\");\r\n setSelectedApprover(row);\r\n setShowAdd(prevShowAdd => true);\r\n }\r\n const refresh = () => {\r\n getData();\r\n setSelectedApprover({});\r\n setMode('');\r\n }\r\n return (\r\n <>\r\n \r\n {showOverlay\r\n ?
Loading Payment Approvers\r\n  \r\n
\r\n :\r\n
\r\n
\r\n
\r\n handleOnSearchChange(e)} key=\"Approver07\"/>\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {showAdd\r\n ? \r\n : <>\r\n }\r\n
\r\n
\r\n
\r\n }\r\n \r\n \r\n )\r\n\r\n};\r\n\r\nexport default PaymentApprovers;","import React from 'react';\r\nimport { getDateString } from './../../../common/constants';\r\n\r\nexport function getAgreementListColumn(addViewLOA, openPaymentsAccountPopup){\r\n const column = [\r\n {\r\n dataField: 'name',\r\n text: 'Client Name',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return
{cell}
;\r\n }\r\n },\r\n {\r\n dataField: 'docLocation',\r\n text: 'Document Name',\r\n headerClasses: 'RCM_noWrap RCM_clientName_col',\r\n classes: 'RCM_common_table_column_text RCM_table_overflow_cell',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return(
\r\n {cell}\r\n
);\r\n }\r\n },\r\n {\r\n dataField: 'docDate',\r\n text: 'Updated On',\r\n headerClasses: 'RCM_noWrap RCM_clientName_col',\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return (
\r\n {\r\n cell !== undefined && cell !== null ? getDateString(cell) : ''\r\n }\r\n
);\r\n }\r\n },\r\n {\r\n dataField: 'payAcct',\r\n text: 'Payment Account',\r\n headerClasses: 'RCM_noWrap RCM_clientName_col',\r\n classes: 'RCM_common_table_column_text',\r\n headerAlign: 'left',\r\n sort: true,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n formatter: (cell, row) => {\r\n return (
\r\n
\r\n {\r\n cell !== undefined && cell !== null ? cell : '-'\r\n }\r\n
\r\n
openPaymentsAccountPopup(row)}>
\r\n \r\n
\r\n );\r\n }\r\n },\r\n {\r\n dataField: '',\r\n text: '',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'right',\r\n headerClasses: 'RCM_noWrap',\r\n \r\n formatter: (cell, row) => {\r\n return (
\r\n \r\n {row.docLocation && row.docLocation !== null && row.docLocation !== ''\r\n ? \r\n : ''\r\n }\r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n }\r\n ]\r\n\r\n return column;\r\n}\r\nfunction customCaretSort(order, column) {\r\n if (!order) return ();\r\n else if (order === 'asc') return ();\r\n else if (order === 'desc') return ();\r\n return null;\r\n}\r\n","import {\r\n apiBaseUrl, uploadPaymentLOAUrl, fetchLOADocumentUrl, updatePaymentAccountUrl,\r\n getPartyIdListUrl\r\n} from \"../serviceConstant\";\r\nimport { errorMsg, MsgForFailedData } from '../../common/constants';\r\nimport {PostMultiPart, Post, Get} from \"../servicecalls\";\r\nimport axios from \"axios\";\r\n\r\n\r\nexport const UploadPaymentLOA = (id, file, onUploadProgress) => {\r\n\r\n let uploadPaymentLOAPromise = new Promise(\r\n function (resolve, reject) {\r\n let formData = new FormData();\r\n formData.append('clientid', id);\r\n formData.append('paymentloaContent', file);\r\n formData.append('isforpaymentloa', true);\r\n let url = `${apiBaseUrl()}/${uploadPaymentLOAUrl}`;\r\n\r\n PostMultiPart(url, formData, null, onUploadProgress).then(res => {\r\n resolve(res);\r\n })\r\n .catch((error) => {\r\n if (axios.isCancel(error)) {\r\n console.log(error);\r\n } else {\r\n //Log the error on console incase of failure. \r\n console.log(\"Upload Payment LOA Service : Error while uploading LOA : :: \", error);\r\n reject(errorMsg);\r\n }\r\n });\r\n });\r\n\r\n return uploadPaymentLOAPromise;\r\n}\r\n\r\nexport var fetchLOADocumentCancellationToken = null;\r\n\r\nexport const FetchLOADocument = (reqJson) => {\r\n\r\n if (fetchLOADocumentCancellationToken !== null && fetchLOADocumentCancellationToken !== undefined) {\r\n //Cancel the existing call\r\n fetchLOADocumentCancellationToken.cancel('Cancelling the get call to prevent memory leaks.');\r\n }\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n fetchLOADocumentCancellationToken = cancelToken.source();\r\n\r\n let fetchLOADocumentPromise = new Promise(\r\n function (resolve, reject) {\r\n let url = `${apiBaseUrl()}/${fetchLOADocumentUrl}`;\r\n Post(url, reqJson, fetchLOADocumentCancellationToken).then(\r\n response => {\r\n if (response.data) {\r\n resolve(response.data);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error Occured fetching LOA document.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n return fetchLOADocumentPromise;\r\n}\r\nexport var updatePaymentAccountServiceCancellationToken = null;\r\n\r\nexport const updatePaymentAccountService = (reqPayload) => {\r\n\r\n if (updatePaymentAccountServiceCancellationToken !== null && updatePaymentAccountServiceCancellationToken !== undefined) {\r\n updatePaymentAccountServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n updatePaymentAccountServiceCancellationToken = cancelToken.source();\r\n\r\n let updatePaymentAccountPromise = new Promise(function (resolve, reject) {\r\n\r\n let url = `${apiBaseUrl()}/${updatePaymentAccountUrl}`;\r\n\r\n Post(url, reqPayload, updatePaymentAccountServiceCancellationToken).then(\r\n response => {\r\n if (response.data) {\r\n resolve(response.data);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error occured while updating payment account.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n return updatePaymentAccountPromise;\r\n}\r\n\r\nexport var GetPartyIdListServiceCancellationToken = null;\r\n\r\nexport const GetPartyIdListService = (accountKey) => {\r\n\r\n if (GetPartyIdListServiceCancellationToken !== null && GetPartyIdListServiceCancellationToken !== undefined) {\r\n GetPartyIdListServiceCancellationToken.cancel(\"Cancel existing call to prevent memory leak.\");\r\n }\r\n\r\n //Create a new cancellation token\r\n const cancelToken = axios.CancelToken;\r\n GetPartyIdListServiceCancellationToken = cancelToken.source();\r\n\r\n let getPartyIdListPromise = new Promise(function (resolve, reject) {\r\n\r\n let url = `${apiBaseUrl()}/${getPartyIdListUrl}?accountno=${accountKey}`;\r\n Get(url, GetPartyIdListServiceCancellationToken).then(\r\n response => {\r\n if (response.data) {\r\n resolve(response.data);\r\n } else {\r\n reject(MsgForFailedData);\r\n }\r\n }\r\n ).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log(err);\r\n } else {\r\n console.log(\"Error occured while getting party id list.\", err);\r\n reject(err);\r\n }\r\n })\r\n });\r\n\r\n return getPartyIdListPromise;\r\n}\r\n","import React, { useState, useEffect } from 'react';\r\nimport { FormGroup, Modal, ModalHeader, ModalBody, ModalFooter, Label, DropdownToggle, DropdownMenu, Dropdown, DropdownItem } from 'reactstrap';\r\nimport { updatePaymentAccountService, GetPartyIdListService } from './../../../services/paymentAgreementService/paymentAgreementService';\r\nimport { alphanumericFormat } from './../../../common/constants';\r\n\r\nconst PaymentAccountPopup = ({ isOpenPaymentsAccountPopup, togglePaymentsAccountModelPopup, fetchClientList, selectedClient, message}) => {\r\n const [paymentAccount, setPaymentAccount] = useState('');\r\n const [partyIdList, setPartyIdList] = useState([]);\r\n const [isPartyIdopen, setIsPartyIdopen] = useState(false);\r\n const [paymentPartyId, setPaymentPartyId] = useState({});\r\n useEffect(() => {\r\n let account = selectedClient && selectedClient !== null && selectedClient.payAcct ? selectedClient.payAcct : '';\r\n let paymentPartyId = selectedClient && selectedClient !== null && selectedClient.partyId ? selectedClient.partyId : '';\r\n setPaymentAccount(account);\r\n if (account !== '')\r\n getPartyIdList(account, 'init', paymentPartyId);\r\n }, [selectedClient]);\r\n\r\n const save = () => {\r\n let reqJson = { \"pkid\": selectedClient.pKid, \"accountnumber\": paymentAccount, \"pmtaccounttype\": \"PMT\", \"paymentpartyid\": paymentPartyId.partyid };\r\n updatePaymentAccountService(reqJson).then(res => {\r\n if (res.status === \"success\") {\r\n togglePaymentsAccountModelPopup();\r\n fetchClientList();\r\n } else {\r\n togglePaymentsAccountModelPopup();\r\n message.error(\"We are unable to update payment account, you can try again.\");\r\n }\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n message.error(\"We are unable to update payment account, you can try again.\");\r\n togglePaymentsAccountModelPopup();\r\n }) \r\n }\r\n const handleFormChanges = evt => {\r\n let value = evt.target.value;\r\n if (evt.target.name === \"paymentAccount\" && value.length <= 20 && (value === \"\" || alphanumericFormat.test(value))) {\r\n setPaymentAccount(value);\r\n } \r\n }\r\n const handleOnBlur = (evt) => {\r\n let accountKey = evt && evt.target ? evt.target.value : evt;\r\n getPartyIdList(accountKey, 'onBlur');\r\n \r\n }\r\n\r\n const getPartyIdList = (accountKey, source, partyId='') => {\r\n\r\n GetPartyIdListService(accountKey).then(res => {\r\n if (res && res && Array.isArray(res) && res.length > 0) {\r\n setPartyIdList(res);\r\n if (source === 'init') {\r\n if (res.length === 1) {\r\n setPaymentPartyId({ partyid: res[0].partyid, partyname: res[0].partyname });\r\n } else {\r\n for (const [, list] of res.entries()) {\r\n if (list.partyid === partyId) {\r\n setPaymentPartyId(\r\n { partyid: partyId, partyname: list.partyname }\r\n );\r\n }\r\n }\r\n }\r\n }\r\n \r\n }\r\n else {\r\n message.error(\"Unable to fetch Party Id.\");\r\n console.error(\"Unable to fetch Party Id.\");\r\n }\r\n })\r\n .catch(err => {\r\n message.error(\"Unable to fetch Party Id.\");\r\n console.error(\"Unable to fetch Party Id: \" + err);\r\n })\r\n }\r\n return (\r\n <>\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n handleFormChanges(evt)}\r\n onBlur={evt => handleOnBlur(evt)}\r\n key=\"PAMP08\"\r\n />\r\n \r\n
\r\n {partyIdList.length > 0\r\n ?
\r\n \r\n
\r\n \r\n
\r\n\r\n setIsPartyIdopen(prevIsPartyIdopen => !prevIsPartyIdopen)}\r\n className=\"RCM_form_control RCM_select_box RCM_mm_select_box\"\r\n key=\"PAMP005\">\r\n {paymentPartyId.partyname}\r\n \r\n {\r\n partyIdList.map((item, index) =>\r\n setPaymentPartyId({ ...item })}>\r\n
{item.partyname}
\r\n
\r\n )}\r\n
\r\n
\r\n
\r\n
\r\n\r\n :''\r\n }\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n )\r\n}\r\nexport default PaymentAccountPopup;","import { useCallback, useEffect, useState } from \"react\"\r\n\r\nconst useBoolean = ({initialValue}) => {\r\n const [val, setValue] = useState()\r\n\r\n useEffect(() => {\r\n setValue(initialValue || false)\r\n }, [initialValue])\r\n\r\n const toggle = useCallback(() => {\r\n setValue(prevState => !prevState)\r\n }, [])\r\n\r\n const setBooleanValue = useCallback((value) => {\r\n setValue(value || false)\r\n }, []) \r\n\r\n return {val, toggle, setBooleanValue}\r\n}\r\n\r\nexport default useBoolean\r\n","import React from 'react';\r\nimport 'antd/dist/antd.css';\r\nimport { Upload, Icon } from 'antd';\r\nimport { UploadPaymentLOA } from './../../../services/paymentAgreementService/paymentAgreementService';\r\nconst { Dragger } = Upload;\r\n\r\nconst AgreementDragDrop = (props) => {\r\n const onFileUpload = ({ onSuccess, onError, onProgress, file }) =>{\r\n\r\n UploadPaymentLOA(props.selectedClient.pKid, file, (progressEvent) => onUploadProgress(progressEvent, file, onProgress))\r\n .then(res => {\r\n onSuccess(null, file);\r\n })\r\n .catch(err => {\r\n onError();\r\n })\r\n\r\n\r\n }\r\n\r\n const onUploadProgress = (progressEvent, file, onProgress)=> {\r\n onProgress({ percent: Math.round(progressEvent.loaded / progressEvent.total * 100).toFixed(2) }, file)\r\n }\r\n const onFileUploadStatusChange = (info)=> {\r\n const { status } = info.file;\r\n if (status !== 'uploading') {\r\n //do something \r\n }\r\n if (status === 'done') {\r\n props.fetchClientList();\r\n } else if (status === 'error') {\r\n //props.message.error(`${info.file.name} file upload failed.`);\r\n }\r\n }\r\n const uploadProps = {\r\n name: 'file',\r\n accept: '.pdf',\r\n multiple: true,\r\n customRequest: ({ onSuccess, onError, onProgress, file }) => onFileUpload({ onSuccess, onError, onProgress, file }),\r\n onChange: (info) => onFileUploadStatusChange(info),\r\n listType: 'text'\r\n };\r\n \r\n return (\r\n <>\r\n \r\n

\r\n

Click or drag file(s) to this area to upload documents

\r\n
\r\n \r\n ) \r\n\r\n\r\n};\r\n\r\nexport default AgreementDragDrop;\r\n\r\n","import React from 'react'\r\nimport {Modal, ModalHeader, ModalBody} from 'reactstrap'\r\nimport AgreementDragDrop from './agreementDragDrop'\r\n\r\nconst PaymentAgreementLoaUploadPopup = ({selectedClient, fetchClientList, modalState, toggleModal, children}) => {\r\n return (\r\n
\r\n \r\n \r\n \r\n <>\r\n {\r\n children\r\n }\r\n {\r\n \r\n }\r\n \r\n \r\n \r\n
\r\n )\r\n}\r\n\r\nexport default PaymentAgreementLoaUploadPopup\r\n","import React, { useState, useEffect } from 'react';\r\nimport { useSelector } from 'react-redux';\r\nimport BootstrapTable from 'react-bootstrap-table-next';\r\nimport { MsgForNoData } from '../../../common/constants';\r\nimport { getAgreementListColumn } from './agreementListColumns';\r\nimport { BackTop, message } from 'antd';\r\nimport { Spinner } from 'reactstrap';\r\nimport { GetPaymentListService, GetPaymentListServiceCancellationToken } from '../../../services/billpayservice/billpayservices';\r\nimport { getNestedObject } from '../../../common/common';\r\nimport { FetchLOADocument, fetchLOADocumentCancellationToken, updatePaymentAccountServiceCancellationToken } from '../../../services/paymentAgreementService/paymentAgreementService';\r\nimport PaymentAccountPopup from './paymentAccountPopup';\r\nimport PdfViwerModal from '../../../common/pdfViwerModal';\r\nimport { useBoolean } from '../../../common/hooks'\r\nimport PaymentAgreementLoaUploadPopup from './paymentAgreementLoaUploadPopup';\r\n\r\nconst PaymentAgreement = (props) => {\r\n const [showOverlay, setShowOverlay] = useState(false);\r\n const [clientList, setClientList] = useState([]);\r\n const [selectedClient, setSelectedClient] = useState();\r\n const user = useSelector(state => getNestedObject(state, ['app', 'user']));\r\n const [pdfdata, setPdfdata] = useState('');\r\n const [isOpenPaymentsAccountPopup, setIsOpenPaymentsAccountPopup] = useState(false);\r\n const {val: isLoaViewerOpen, toggle: toggleLoaViewer} = useBoolean(false)\r\n const {val: isLoaUploadModalOpen, toggle: toggleLoaUploadModal } = useBoolean(false)\r\n\r\n const addViewLOA = (row, source) => {\r\n setSelectedClient(row);\r\n if (source === 'view') {\r\n getPDFData(row);\r\n toggleLoaViewer()\r\n }\r\n\r\n if(source === 'add') {\r\n toggleLoaUploadModal()\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n if(!isLoaViewerOpen) {\r\n setPdfdata('')\r\n }\r\n }, [isLoaViewerOpen])\r\n\r\n useEffect(() => {\r\n fetchClientList();\r\n return () => {\r\n if (GetPaymentListServiceCancellationToken !== null && GetPaymentListServiceCancellationToken !== undefined) {\r\n GetPaymentListServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n if (fetchLOADocumentCancellationToken !== null && fetchLOADocumentCancellationToken !== undefined) {\r\n fetchLOADocumentCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n if (updatePaymentAccountServiceCancellationToken !== null && updatePaymentAccountServiceCancellationToken !== undefined) {\r\n updatePaymentAccountServiceCancellationToken.cancel(\"Cancelling eligible pair request on unmount to prevent memory leak.\");\r\n }\r\n }\r\n }, []);\r\n const getPDFData = row => {\r\n let reqJson = {\r\n \"ClientId\": row.pKid,\r\n \"isforpaymentloa\": true\r\n }\r\n FetchLOADocument(reqJson).then(doc => {\r\n setPdfdata(doc);\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n message.error(\"Unable to fetch client LOA document.\");\r\n });\r\n }\r\n const fetchClientList = () => {\r\n setShowOverlay(prevShowOverlay => true);\r\n GetPaymentListService(user).then(res => {\r\n if (res && res.data && Array.isArray(res.data) && res.data.length > 0) {\r\n setClientList(res.data);\r\n }\r\n\r\n setShowOverlay(prevShowOverlay => false);\r\n })\r\n .catch(err => {\r\n message.error(\"Unable to fetch User List.\");\r\n console.error(\"Unable to fetch User List.\");\r\n })\r\n }\r\n const openPaymentsAccountPopup = (row) => {\r\n setIsOpenPaymentsAccountPopup(prevIsOpenPaymentsAccountPopup => true);\r\n setSelectedClient(row);\r\n }\r\n const togglePaymentsAccountModelPopup = () => {\r\n setIsOpenPaymentsAccountPopup(prevIsOpenPaymentsAccountPopup => !prevIsOpenPaymentsAccountPopup);\r\n setSelectedClient({});\r\n }\r\n \r\n return (\r\n <>\r\n \r\n {showOverlay\r\n ?
Loading Payment Agreements\r\n  \r\n
\r\n :\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n }\r\n \r\n { selectedClient && selectedClient.orgId && selectedClient.orgId !== null && selectedClient.orgId &&\r\n <>\r\n \r\n
\r\n
{selectedClient && selectedClient.name}: View Client LOA/Agreement
\r\n
\r\n
\r\n\r\n \r\n
\r\n
{selectedClient && selectedClient.name}: Upload Client LOA/Agreement
\r\n
\r\n
\r\n \r\n }\r\n \r\n )\r\n\r\n};\r\n\r\nexport default PaymentAgreement;","import React, { Component } from 'react'\r\nimport { Route, Switch } from 'react-router';\r\nimport { Redirect, withRouter } from 'react-router-dom';\r\nimport WiresList from './wiresdetails/wireslist'\r\nimport ClientVisibility from './clientVisibility/clientVisibility';\r\nimport Accounting from './../accounting/accounting';\r\nimport 'antd/dist/antd.css';\r\nimport { Tabs } from 'antd';\r\nimport FailedPayments from './failedpayments/failedpayments';\r\nimport PaymentApprovers from './paymentapprovers/paymentApprovers';\r\nimport PaymentAgreement from './paymentagreement/paymentAgreement';\r\nimport Notfound from '../../common/notfound';\r\n\r\nconst { TabPane } = Tabs;\r\n\r\nclass Admininstrator extends Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n ActiveKey: this.getActiveTab()\r\n }\r\n\r\n this.onTabChanges = this.onTabChanges.bind(this);\r\n this.getActiveTab = this.getActiveTab.bind(this);\r\n }\r\n\r\n getActiveTab = () => {\r\n const currentRoute = this.props.history.location.pathname;\r\n let activeKey = \"1\";\r\n if (currentRoute === `${this.props.match.url}/clientVisibility` || currentRoute === `${this.props.match.url}`)\r\n activeKey = \"1\";\r\n else if (currentRoute === `${this.props.match.url}/payments`)\r\n activeKey = \"2\";\r\n else if (currentRoute === `${this.props.match.url}/accounting` \r\n || currentRoute === `${this.props.match.url}/accounting/subAccount` \r\n || currentRoute === `${this.props.match.url}/accounting/payees` \r\n || currentRoute === `${this.props.match.url}/accounting/postingRules` \r\n || currentRoute === `${this.props.match.url}/accounting/transactions`)\r\n activeKey = \"3\";\r\n else if (currentRoute === `${this.props.match.url}/failedpayments`)\r\n activeKey = \"4\";\r\n else if (currentRoute === `${this.props.match.url}/paymentApprovers`)\r\n activeKey = \"5\"; \r\n else if (currentRoute === `${this.props.match.url}/clientSettings`)\r\n activeKey = \"6\"; \r\n return activeKey;\r\n }\r\n\r\n onTabChanges(activetabKey) {\r\n switch (activetabKey) {\r\n case \"1\": {\r\n this.props.history.push(this.props.match.url + '/clientVisibility');\r\n break;\r\n }\r\n\r\n case \"2\": {\r\n this.props.history.push(this.props.match.url + '/payments');\r\n break;\r\n }\r\n case \"3\": {\r\n this.props.history.push(this.props.match.url + '/accounting');\r\n break;\r\n }\r\n case \"4\": {\r\n this.props.history.push(this.props.match.url + \"/failedpayments\");\r\n break;\r\n }\r\n case \"5\": {\r\n this.props.history.push(this.props.match.url + \"/paymentApprovers\");\r\n break; \r\n }\r\n case \"6\": {\r\n this.props.history.push(this.props.match.url + \"/clientSettings\");\r\n break;\r\n }\r\n default: {\r\n break;\r\n }\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n this.unregisterRouteListner = this.props.history.listen(() => {\r\n const activeKeyTab = this.getActiveTab()\r\n this.setState({...this.state, ActiveKey: activeKeyTab})\r\n })\r\n }\r\n\r\n componentWillUnmount() {\r\n if(this.unregisterRouteListner) {\r\n this.unregisterRouteListner();\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n {\r\n \r\n } />\r\n ()} />\r\n ()} />\r\n ()} />\r\n ()} />\r\n ()} />\r\n ()} />\r\n \r\n \r\n }\r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default withRouter(Admininstrator);","export class DiscretionDistributionRequest{\r\n DistributionID = '';\r\n RequestDate = '';\r\n TrustTitle = '';\r\n EntityNumber = '';\r\n CurrentValuation = '';\r\n EstdAnnualNetIncome = '';\r\n DistributionAmount = '';\r\n Grantor = '';\r\n Trustees = '';\r\n TrustCompanyName = '';\r\n TrusteeAction = 'The Trustee approves the recommendation set forth above.';\r\n PrimaryBeneficiaries = '';\r\n Termination = '';\r\n DiscretionaryDistProvision = '';\r\n RequestedDistribution = '';\r\n Recommendation = '';\r\n SkippingTaxableEvent = '';\r\n ApprovedText = '';\r\n Approvers = [];\r\n}\r\n\r\nclass DistributionApprover{\r\n EmailAddress = '';\r\n FullName = '';\r\n FirstName= '';\r\n MiddleName = '';\r\n LastName = '';\r\n IsTrustCompanyTrustee ='';\r\n SignatureOrder= '';\r\n IndInclude = '';\r\n}\r\n\r\n\r\nexport function requestApproversList(approvers){\r\n let list = [];\r\n if(approvers && Array.isArray(approvers) && approvers.length > 0){\r\n //convert the request to approvers list\r\n for(let i=0; i< approvers.length; i++){\r\n let distributionAppr = new DistributionApprover();\r\n distributionAppr.EmailAddress = approvers[i].emailAddress;\r\n distributionAppr.FullName = approvers[i].fullName;\r\n distributionAppr.IndInclude = (approvers[i].emailAddress) ? approvers[i].indInclude === 'Y' ? 'Y' : 'N' : 'N';\r\n distributionAppr.IsTrustCompanyTrustee = approvers[i].isTrustCompanyTrustee;\r\n distributionAppr.SignatureOrder = approvers[i].signatureOrder;\r\n distributionAppr.FirstName = approvers[i].firstName;\r\n distributionAppr.MiddleName = approvers[i].middleName;\r\n distributionAppr.LastName = approvers[i].lastName;\r\n\r\n list.push(distributionAppr);\r\n }\r\n }\r\n\r\n return list;\r\n}","\r\nimport React from 'react';\r\nimport { Tooltip } from 'antd';\r\nimport { DeleteFilled } from '@ant-design/icons';\r\n\r\n\r\nexport function getDiscretionaryDocumentColumns(openDocument, mode, deleteDocument){\r\n const column = [\r\n {\r\n dataField: 'documentName',\r\n text: 'Document Name',\r\n headerClasses: 'RCM_noWrap',\r\n headerAlign: 'left',\r\n sort: false,\r\n sortCaret: (order, column) => customCaretSort(order, column),\r\n },\r\n {\r\n dataField: '',\r\n text: 'Actions',\r\n sort: false,\r\n isDummyField: true,\r\n headerAlign: 'left',\r\n formatter: (cell, row) => {\r\n return (\r\n
\r\n {\r\n
\r\n \r\n
openDocument(row)}>
\r\n
\r\n {\r\n mode === 'UPDATE' && \r\n (\r\n deleteDocument(row)}/>\r\n )\r\n }\r\n \r\n
\r\n }\r\n
\r\n )\r\n }\r\n }\r\n ]\r\n\r\n return column;\r\n}\r\n\r\nfunction customCaretSort(order, column) {\r\n if (!order) return ();\r\n else if (order === 'asc') return ();\r\n else if (order === 'desc') return ();\r\n return null;\r\n}","import React, { Component } from 'react'\r\nimport { GetDiscretionaryDistributionDocumentList, FetchDiscretionDistributionDocument, DeleteDiscretionaryDistributionDoc } from '../../../services/discritionarydistributionservice/discritionarydistributionservice';\r\nimport { MsgForNoData } from '../../../common/constants';\r\nimport { getDiscretionaryDocumentColumns } from './discretionartdistributiondocColumn';\r\nimport BootstrapTable from 'react-bootstrap-table-next';\r\nimport {addIndexToList} from '../../../common/utilities';\r\nimport { withRouter } from 'react-router-dom';\r\nimport { message } from 'antd';\r\nimport PdfViwerModal from '../../../common/pdfViwerModal';\r\n\r\nclass DiscretionaryDocumentsList extends Component {\r\n constructor(props){\r\n super(props);\r\n this.state = {\r\n documentsList: [],\r\n pdfViewerState: false,\r\n pdfdata: null\r\n }\r\n\r\n this.deleteDocument = this.deleteDocument.bind(this);\r\n this.togglePdfViewer = this.togglePdfViewer.bind(this);\r\n this.openDocument = this.openDocument.bind(this);\r\n }\r\n\r\n componentDidMount(){\r\n this.fetchDiscretionaryDocumentsList();\r\n }\r\n\r\n fetchDiscretionaryDocumentsList(){\r\n let distributionId = this.props.distributionID ? this.props.distributionID : '';\r\n if(distributionId){\r\n GetDiscretionaryDistributionDocumentList(distributionId)\r\n .then(res => {\r\n this.setState({documentsList: [...addIndexToList(res)]});\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n })\r\n }\r\n }\r\n\r\n openDocument(row){\r\n if(row && row.distributionId){\r\n //then call api \r\n let docType = row.documentType === 'Process Document' ? row.documentName === 'Sent File' ? 'SIGN' : 'SIGNED' : 'ADDITIONAL';\r\n FetchDiscretionDistributionDocument(row.distributionId, docType, row.documentId).then(doc => {\r\n this.setState({pdfViewerState: true, pdfdata: doc});\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n });\r\n }\r\n }\r\n\r\n deleteDocument(row){\r\n let docId = row && row.documentId ? row.documentId : '';\r\n DeleteDiscretionaryDistributionDoc(docId).then(res => {\r\n message.info(\"Document Deleted\");\r\n this.fetchDiscretionaryDocumentsList();\r\n })\r\n .catch(err => {\r\n console.log(err);\r\n })\r\n }\r\n\r\n togglePdfViewer(){\r\n this.setState({pdfViewerState: !this.state.pdfViewerState});\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n ADDITIONAL DOCUMENTS LIST\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default withRouter(DiscretionaryDocumentsList);\r\n","import React, { Component } from 'react';\r\nimport 'antd/dist/antd.css';\r\nimport { Upload, Icon } from 'antd';\r\nimport { UploadDiscretionaryDocument } from '../../../services/discritionarydistributionservice/discritionarydistributionservice';\r\nconst { Dragger } = Upload;\r\n\r\nexport default class UploadDiscretionaryDistributionDocs extends Component {\r\n\r\n constructor(props){\r\n super(props);\r\n this.state = {\r\n\r\n }\r\n\r\n \r\n }\r\n\r\n onFileUpload({ onSuccess, onError, onProgress, file }){\r\n\r\n UploadDiscretionaryDocument(this.props.distributionID, file, this.props.userEmail, (progressEvent) => this.onUploadProgress(progressEvent, file, onProgress))\r\n .then(res => {\r\n onSuccess(null, file);\r\n })\r\n .catch(err => {\r\n onError();\r\n })\r\n\r\n }\r\n\r\n onUploadProgress(progressEvent, file, onProgress){\r\n onProgress({ percent: Math.round(progressEvent.loaded / progressEvent.total * 100).toFixed(2) }, file)\r\n }\r\n\r\n onFileUploadStatusChange(info){\r\n const { status } = info.file;\r\n if (status !== 'uploading') {\r\n //do something \r\n }\r\n if (status === 'done') {\r\n //message.success(`${info.file.name} file uploaded successfully.`);\r\n } else if (status === 'error') {\r\n //message.error(`${info.file.name} file upload failed.`);\r\n }\r\n }\r\n\r\n render() {\r\n\r\n const uploadProps = {\r\n name: 'file',\r\n accept:'.pdf',\r\n multiple: true,\r\n customRequest: ({ onSuccess, onError, onProgress, file }) => this.onFileUpload({ onSuccess, onError, onProgress, file }),\r\n onChange: (info) => this.onFileUploadStatusChange(info),\r\n listType: 'text'\r\n };\r\n\r\n return (\r\n
\r\n
\r\n
\r\n UPLOAD ADDITIONAL DOCUMENTS\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n

Click or drag file(s) to this area to upload documents

\r\n
\r\n
\r\n
\r\n
\r\n )\r\n }\r\n}\r\n","import React from 'react';\r\nimport { Label } from 'reactstrap';\r\n\r\nexport default function DistributionApprover(props) {\r\n return (\r\n
\r\n
\r\n \r\n
\r\n {\r\n props.isTrustCompanyTrustee === 'N' &&\r\n \r\n }\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n )\r\n}\r\n","import React from 'react';\r\nimport { Steps } from 'antd';\r\nimport 'antd/dist/antd.css';\r\n\r\nconst { Step } = Steps;\r\n\r\nexport default function DiscretionarydistributionSubmitProgress(props) {\r\n return (\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n )\r\n}\r\n","import React, { Component } from 'react'\r\nimport { Label } from 'reactstrap';\r\nimport 'antd/dist/antd.css';\r\nimport { DatePicker, message } from 'antd'\r\nimport { dateFormat } from '../../common/constants';\r\nimport { DiscretionDistributionRequest, requestApproversList } from './discretionrequest';\r\nimport { SubmitDiscritionaryDistribution, UpdateDiscritionaryDistribution, GetEntityInfomation, GetDiscretionaryDistributionInfo, CreateDistributionPdf, CreateDocuSignEnvelopDD, UpdateDiscritionaryDistributionStatus } from '../../services/discritionarydistributionservice/discritionarydistributionservice';\r\nimport * as moment from 'moment';\r\nimport { withRouter } from 'react-router-dom';\r\nimport { connect } from 'react-redux';\r\nimport { rcmDiscritionaryDistributionFormAnimation } from '../../common/animation';\r\nimport OverlayProcessing from '../../common/overlayProcessing';\r\nimport DiscretionaryDocumentsList from './documents/discretionarydocumentslist';\r\nimport UploadDiscretionaryDistributionDocs from './documents/uploaddiscretionarydistributiondocs';\r\nimport DistributionApprover from './distributionApprover';\r\nimport { addIncludeIndicatorToList, addIndexToList } from '../../common/utilities';\r\nimport * as cloneDeep from 'lodash/cloneDeep';\r\nimport DiscretionarydistributionSubmitProgress from './discretionarydistributionSubmitProgress';\r\n\r\nclass NewDiscretionaryDistributionReqForm extends Component {\r\n\r\n constructor(props){\r\n super(props);\r\n\r\n this.state = {\r\n discretionaryRequest: new DiscretionDistributionRequest(),\r\n defaultDate: moment(),\r\n showOverlay: false,\r\n displayCurrentValuation: '',\r\n displayEstimatedNetIncome: '',\r\n distributionApproversList: [],\r\n currentProcess: 0,\r\n showOverlayProgress: false,\r\n currentProcessStatus: '',\r\n trustCompanyApprCheckbox: true\r\n }\r\n\r\n this.handleFormChanges = this.handleFormChanges.bind(this);\r\n this.handleRequestDateChange = this.handleRequestDateChange.bind(this);\r\n this.prepopulateFields = this.prepopulateFields.bind(this);\r\n this.approverIncludeChange = this.approverIncludeChange.bind(this);\r\n this.closeShowProgress = this.closeShowProgress.bind(this);\r\n this.trustCompanyApprChange = this.trustCompanyApprChange.bind(this);\r\n }\r\n\r\n componentDidMount(){\r\n rcmDiscritionaryDistributionFormAnimation();\r\n if(this.props.mode && (this.props.mode === 'UPDATE' || this.props.mode === 'VIEW')){\r\n this.fetchDistributionInformation();\r\n }\r\n else{\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.discretionaryRequest.RequestDate = moment().format(dateFormat);\r\n this.setState(clonedState);\r\n }\r\n \r\n }\r\n\r\n fetchDistributionInformation(){\r\n this.setState({showOverlay: true}, () => {\r\n let distributionId = this.props.selectedDistribution && this.props.selectedDistribution.distributionID ? this.props.selectedDistribution.distributionID : null;\r\n if(distributionId){\r\n GetDiscretionaryDistributionInfo(distributionId).then(data => {\r\n if(data){\r\n this.setState({showOverlay: false}, () => {\r\n this.populateEditableFields(data);\r\n })\r\n }\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n this.setState({showOverlay: false});\r\n })\r\n } \r\n })\r\n }\r\n\r\n\r\n handleFormChanges(event){\r\n let controlType = event.target.type;\r\n if(controlType === 'text' || controlType === 'textarea' || controlType === 'radio'){\r\n let clonedState = Object.assign({}, this.state);\r\n const amountFormat = /^[0-9]+(\\.)?([0-9]{1,2})?$/;\r\n if (event.target.name === \"CurrentValuation\" || event.target.name === \"EstdAnnualNetIncome\") {\r\n if ((event.target.value === \"\" || amountFormat.test(event.target.value)) && event.target.value.length <= 19) {\r\n clonedState.discretionaryRequest[event.target.name] = event.target.value;\r\n if(event.target.name === \"CurrentValuation\"){\r\n clonedState.displayCurrentValuation = event.target.value;\r\n }\r\n\r\n if(event.target.name === \"EstdAnnualNetIncome\"){\r\n clonedState.displayEstimatedNetIncome = event.target.value;\r\n }\r\n this.setState(clonedState);\r\n }\r\n }else if(event.target.name === \"DistributionAmount\"){\r\n const alphaNumericWithPercentage = /^[0-9a-zA-Z%,$. ]*$/;\r\n if(alphaNumericWithPercentage.test(event.target.value)){\r\n clonedState.discretionaryRequest[event.target.name] = event.target.value;\r\n this.setState(clonedState);\r\n }\r\n }\r\n else{\r\n clonedState.discretionaryRequest[event.target.name] = event.target.value;\r\n this.setState(clonedState);\r\n }\r\n }\r\n }\r\n\r\n\r\n handleRequestDateChange(val){\r\n if(val){\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.discretionaryRequest.RequestDate = val.format(dateFormat);\r\n clonedState.defaultDate = moment(val.format(dateFormat), dateFormat);\r\n this.setState(clonedState);\r\n } \r\n }\r\n\r\n onSave(){\r\n if(this.props.mode === 'UPDATE'){\r\n this.updateRequest('SAVE');\r\n }else{\r\n this.submitRequest('SAVE');\r\n }\r\n }\r\n\r\n onSubmit(){\r\n if(this.props.mode === 'UPDATE'){\r\n this.updateRequest('SUBMIT');\r\n }else{\r\n this.submitRequest('SUBMIT');\r\n } \r\n }\r\n\r\n onCancel(){\r\n if(this.props.history){\r\n this.props.history.push(\"/discretionarydistribution\")\r\n }\r\n }\r\n\r\n updateRequest(mode){\r\n\r\n if(this.isApproversIncluded(this.state.distributionApproversList)){\r\n\r\n //let ApprovedText = `${this.state.discretionaryRequest.Trustees}, TRUSTEE, THROUGH ITS TRUST COMMITTEE`;\r\n let RequestorEmail = this.props.user.userName;\r\n\r\n //cloned object \r\n let clonedState = Object.assign({}, this.state);\r\n //clonedState.discretionaryRequest.ApprovedText = ApprovedText;\r\n clonedState.discretionaryRequest.RequestorEmail = RequestorEmail;\r\n clonedState.discretionaryRequest.Approvers = [...requestApproversList(this.state.distributionApproversList)];\r\n clonedState.showOverlayProgress= true;\r\n clonedState.currentProcess = 0;\r\n clonedState.currentProcessStatus = '';\r\n\r\n this.setState(clonedState, () => {\r\n UpdateDiscritionaryDistribution(this.state.discretionaryRequest, mode).then(res => {\r\n let distributionID = res.data;\r\n this.setState({currentProcess: 1});\r\n CreateDistributionPdf(distributionID).then(pdrRes => {\r\n if(mode === 'SUBMIT'){\r\n this.setState({currentProcess: 2});\r\n CreateDocuSignEnvelopDD(distributionID).then(docusignRes => {\r\n this.setState({currentProcess: 3});\r\n UpdateDiscritionaryDistributionStatus(distributionID, 'PND').then(statusRes => {\r\n this.setState({showOverlayProgress: false, currentProcess: 4}, () => {\r\n message.info('Successfully updated distribution.', 7);\r\n this.props.history.push('/discretionarydistribution');\r\n });\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n message.error('Distribution has been updated but unable to update status', 7);\r\n this.setState({currentProcessStatus: 'error'}, () => {\r\n this.closeShowProgress();\r\n })\r\n })\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n message.error('Distribution has been updated but unable to create docusign record, you can resubmit/edit anytime.', 7)\r\n this.setState({currentProcessStatus: 'error'}, () => {\r\n this.closeShowProgress();\r\n })\r\n })\r\n }\r\n else{\r\n this.setState({showOverlayProgress: false}, () => {\r\n message.info('Distribution has been saved');\r\n this.props.history.push('/discretionarydistribution', 7);\r\n })\r\n }\r\n })\r\n .catch(err => {\r\n\r\n console.error(err);\r\n message.error('Distribution has been updated but unable to create document for processing, you can resubmit/edit anytime', 7);\r\n this.setState({currentProcessStatus: 'error'}, () => {\r\n this.closeShowProgress();\r\n })\r\n })\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n message.error(\"We are unable to update distribution, please try again later.\", 7);\r\n this.setState({currentProcessStatus: 'error'}, () => {\r\n this.closeShowProgress();\r\n })\r\n })\r\n })\r\n }else{\r\n message.warning('Please select atleast one approver.');\r\n }\r\n }\r\n\r\n closeShowProgress(){\r\n setTimeout(() => {\r\n this.setState({showOverlayProgress: false});\r\n }, 1000);\r\n }\r\n\r\n\r\n submitRequest(mode){\r\n\r\n if(this.isApproversIncluded(this.state.distributionApproversList)){\r\n\r\n //let ApprovedText = `${this.state.discretionaryRequest.Trustees}, TRUSTEE, THROUGH ITS TRUST COMMITTEE`;\r\n let RequestorEmail = this.props.user.userName;\r\n\r\n //cloned object \r\n let clonedState = Object.assign({}, this.state);\r\n //clonedState.discretionaryRequest.ApprovedText = ApprovedText;\r\n clonedState.discretionaryRequest.RequestorEmail = RequestorEmail;\r\n clonedState.discretionaryRequest.Approvers = [...requestApproversList(this.state.distributionApproversList)];\r\n clonedState.showOverlayProgress= true;\r\n clonedState.currentProcess = 0;\r\n clonedState.currentProcessStatus = '';\r\n\r\n this.setState(clonedState, () => {\r\n SubmitDiscritionaryDistribution(this.state.discretionaryRequest, mode).then(res => {\r\n this.setState({currentProcess: 1});\r\n let distributionID = res.data;\r\n this.state.discretionaryRequest.DistributionID = distributionID;\r\n CreateDistributionPdf(distributionID).then(pdrRes => {\r\n if(mode === 'SUBMIT'){\r\n\r\n this.setState({currentProcess: 2});\r\n CreateDocuSignEnvelopDD(distributionID).then(docusignRes => {\r\n this.setState({currentProcess: 3});\r\n UpdateDiscritionaryDistributionStatus(distributionID, 'PND').then(statusRes => {\r\n this.setState({showOverlayProgress: false, currentProcess: 4}, () => {\r\n message.info('Successfully created distribution.', 7);\r\n this.props.history.push('/discretionarydistribution');\r\n })\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n message.error('Distribution has been created but unable to update status', 7);\r\n this.setState({currentProcessStatus: 'error'}, () => {\r\n this.closeShowProgress();\r\n })\r\n })\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n message.error('Distribution has been created but unable to create docusign record, you can resubmit/edit anytime.', 7)\r\n this.setState({currentProcessStatus: 'error'}, () => {\r\n this.closeShowProgress();\r\n })\r\n })\r\n }\r\n else{\r\n this.setState({showOverlayProgress: false, currentProcess: 4}, () => {\r\n message.info('Distribution has been saved', 7);\r\n this.props.history.push('/discretionarydistribution');\r\n })\r\n }\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n message.error('Distribution has been created but unable to create document for processing, you can resubmit/edit anytime', 7);\r\n this.setState({currentProcessStatus: 'error'}, () => {\r\n this.closeShowProgress();\r\n })\r\n })\r\n \r\n })\r\n .catch(err => {\r\n console.error(err);\r\n message.error(\"We are unable to create distribution, please try again later.\", 7);\r\n this.setState({currentProcessStatus: 'error'}, () => {\r\n this.closeShowProgress();\r\n })\r\n })\r\n })\r\n }else{\r\n //\r\n message.warning('Please select atleast one approver.');\r\n }\r\n }\r\n\r\n \r\n\r\n populateEditableFields(data){\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.discretionaryRequest.DistributionID = data.distributionID ? data.distributionID : '';\r\n clonedState.discretionaryRequest.TrustTitle = data.trustTitle ? data.trustTitle : '';\r\n clonedState.discretionaryRequest.EntityNumber = data.entityNumber ? data.entityNumber : '';\r\n clonedState.discretionaryRequest.Grantor = data.grantor ? data.grantor : '';\r\n clonedState.discretionaryRequest.Trustees = data.trustees ? data.trustees : '';\r\n clonedState.discretionaryRequest.TrustCompanyName = data.trustCompanyName ? data.trustCompanyName : '';\r\n clonedState.discretionaryRequest.TrusteeAction = data.trusteeAction ? data.trusteeAction : '';\r\n clonedState.discretionaryRequest.Termination = data.remainderProvisions ? data.remainderProvisions : '';\r\n clonedState.discretionaryRequest.DiscretionaryDistProvision = data.discretionaryDistProvision ? data.discretionaryDistProvision : '';\r\n clonedState.discretionaryRequest.PrimaryBeneficiaries = data.primaryBeneficiaries ? data.primaryBeneficiaries : '';\r\n clonedState.discretionaryRequest.CurrentValuation = data.currentValuation ? parseFloat(data.currentValuation) : '';\r\n clonedState.discretionaryRequest.EstdAnnualNetIncome = data.estdAnnualNetIncome ? parseFloat(data.estdAnnualNetIncome) : '';\r\n clonedState.discretionaryRequest.DistributionAmount = data.distributionAmount ? data.distributionAmount : '';\r\n clonedState.discretionaryRequest.Termination = data.termination ? data.termination : '';\r\n clonedState.discretionaryRequest.RequestedDistribution = data.requestedDistribution ? data.requestedDistribution : '';\r\n clonedState.discretionaryRequest.Recommendation = data.recommendation ? data.recommendation : '';\r\n clonedState.discretionaryRequest.SkippingTaxableEvent = data.skippingTaxableEvent ? data.skippingTaxableEvent : '';\r\n clonedState.discretionaryRequest.ApprovedText = data.approvedText ? data.approvedText : '';\r\n clonedState.discretionaryRequest.RequestDate = data.requestDate ? data.requestDate : '';\r\n clonedState.defaultDate = moment(data.requestDate, dateFormat);\r\n clonedState.displayCurrentValuation = data.currentValuation ? parseFloat(data.currentValuation).toLocaleString('en-US', { style: 'currency', currency: 'USD' }) : '';\r\n clonedState.displayEstimatedNetIncome = data.estdAnnualNetIncome ? parseFloat(data.estdAnnualNetIncome).toLocaleString('en-US', { style: 'currency', currency: 'USD' }) : '';\r\n\r\n if(data.approvers && Array.isArray(data.approvers)){\r\n let isPresent = this.isTrustCompanyApproverPresent(data.approvers);\r\n this.includeExcludeTrustCompanyAppr(data.approvers, isPresent);\r\n this.excludeNonEmailAdditionalApprover(data.approvers);\r\n clonedState.distributionApproversList = [...addIndexToList(data.approvers)];\r\n clonedState.trustCompanyApprCheckbox = isPresent;\r\n }else{\r\n clonedState.distributionApproversList = [];\r\n clonedState.trustCompanyApprCheckbox = false;\r\n }\r\n\r\n this.setState(clonedState);\r\n }\r\n\r\n prepopulateFields(res){\r\n if(res && res.response_data && Array.isArray(res.response_data) && res.response_data.length > 0){\r\n let data = res.response_data[0];\r\n let clonedState = Object.assign({}, this.state);\r\n \r\n let ApprovedText = `${data.trustee ? data.trustee : ''}, TRUSTEE, THROUGH ITS TRUST COMMITTEE`;\r\n clonedState.discretionaryRequest.ApprovedText = ApprovedText;\r\n clonedState.discretionaryRequest.TrustTitle = data.legalName1 ? data.legalName1 : '';\r\n clonedState.discretionaryRequest.Grantor = data.grantors ? data.grantors : '';\r\n clonedState.discretionaryRequest.Trustees = data.trustee ? data.trustee : '';\r\n clonedState.discretionaryRequest.TrustCompanyName = data.trustCompanyName ? data.trustCompanyName : '';\r\n clonedState.discretionaryRequest.Termination = data.remainderProvisions ? data.remainderProvisions : '';\r\n clonedState.discretionaryRequest.DiscretionaryDistProvision = data.distributionProvisions ? data.distributionProvisions : '';\r\n clonedState.discretionaryRequest.PrimaryBeneficiaries = data.beneficiaryName ? data.beneficiaryName : '';\r\n clonedState.discretionaryRequest.CurrentValuation = data.currentValuation ? data.currentValuation : '';\r\n clonedState.discretionaryRequest.EstdAnnualNetIncome = data.estimatedAnnualNetIncome ? data.estimatedAnnualNetIncome : '';\r\n clonedState.displayCurrentValuation = data.currentValuation ? parseFloat(data.currentValuation).toLocaleString('en-US', { style: 'currency', currency: 'USD' }) : '';\r\n clonedState.displayEstimatedNetIncome = data.estdAnnualNetIncome ? parseFloat(data.estdAnnualNetIncome).toLocaleString('en-US', { style: 'currency', currency: 'USD' }) : '';\r\n if(data.trustCommitteeSignature && Array.isArray(data.trustCommitteeSignature)){\r\n let isPresent = true;\r\n this.includeExcludeTrustCompanyAppr(data.trustCommitteeSignature, isPresent);\r\n let lsApproverWithInclude = [...addIncludeIndicatorToList(data.trustCommitteeSignature)];\r\n this.excludeNonEmailAdditionalApprover(lsApproverWithInclude);\r\n clonedState.distributionApproversList = [...lsApproverWithInclude];\r\n clonedState.trustCompanyApprCheckbox = isPresent;\r\n }else{\r\n clonedState.trustCompanyApprCheckbox = false;\r\n clonedState.distributionApproversList = [];\r\n }\r\n\r\n this.setState(clonedState);\r\n }\r\n }\r\n\r\n includeExcludeTrustCompanyAppr(approvers, isPresent){\r\n if(isPresent){\r\n for(let i=0; i< approvers.length; i++){\r\n if(approvers[i].isTrustCompanyTrustee === 'Y'){\r\n approvers[i].indInclude = 'Y';\r\n }\r\n }\r\n }else{\r\n for(let i=0; i< approvers.length; i++){\r\n if(approvers[i].isTrustCompanyTrustee === 'Y'){\r\n approvers[i].indInclude = 'N';\r\n }\r\n }\r\n }\r\n }\r\n\r\n isTrustCompanyApproverPresent(approvers){\r\n let isPresent = false;\r\n\r\n for(let i=0; i< approvers.length; i++){\r\n if(approvers[i].isTrustCompanyTrustee === 'Y' && approvers[i].indInclude === 'Y'){\r\n isPresent = true;\r\n break;\r\n }\r\n }\r\n\r\n return isPresent \r\n }\r\n\r\n excludeNonEmailAdditionalApprover(approvers){\r\n for(let i=0; i< approvers.length; i++){\r\n if(approvers[i].isTrustCompanyTrustee !== 'Y' && (approvers[i].emailAddress === null || approvers[i].emailAddress === undefined || approvers[i].emailAddress === '' )){\r\n approvers[i].indInclude = 'N';\r\n }\r\n }\r\n }\r\n\r\n isApproversIncluded(approvers){\r\n let isIncluded = false;\r\n\r\n if(approvers && Array.isArray(approvers) && approvers.length > 0){\r\n for(let i=0; i< approvers.length; i++){\r\n if(approvers[i].indInclude === 'Y'){\r\n isIncluded = true;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n return isIncluded;\r\n }\r\n\r\n\r\n fetchEntityInformation(entityId){\r\n\r\n if(entityId){\r\n this.setState({showOverlay: true}, () => {\r\n GetEntityInfomation(entityId).then(res => {\r\n this.setState({showOverlay: false}, () => {\r\n this.prepopulateFields(res);\r\n })\r\n })\r\n .catch(err => {\r\n console.error(err);\r\n let clearReq = new DiscretionDistributionRequest();\r\n clearReq.EntityNumber = this.state.discretionaryRequest.EntityNumber;\r\n clearReq.RequestDate = this.state.discretionaryRequest.RequestDate ? this.state.discretionaryRequest.RequestDate : '';\r\n let defaultDate = clearReq.RequestDate ? moment(clearReq.RequestDate, dateFormat) : moment();\r\n this.setState({showOverlay: false, discretionaryRequest: clearReq, defaultDate: defaultDate});\r\n })\r\n });\r\n }\r\n }\r\n\r\n handleAmtOnBlur(event){\r\n let clonedState = Object.assign({}, this.state);\r\n\r\n if(event.target.name === \"CurrentValuation\"){\r\n\r\n if(event.target.value){\r\n if(!isNaN(event.target.value)){\r\n clonedState.discretionaryRequest.CurrentValuation = event.target.value;\r\n clonedState.displayCurrentValuation = parseFloat(event.target.value).toLocaleString('en-US', { style: 'currency', currency: 'USD' });\r\n }\r\n }else{\r\n clonedState.discretionaryRequest.CurrentValuation = '';\r\n clonedState.displayCurrentValuation = ''\r\n }\r\n \r\n }\r\n\r\n if(event.target.name === \"EstdAnnualNetIncome\"){\r\n if(event.target.value){\r\n if(!isNaN(event.target.value)){\r\n clonedState.discretionaryRequest.EstdAnnualNetIncome = event.target.value;\r\n clonedState.displayEstimatedNetIncome = parseFloat(event.target.value).toLocaleString('en-US', { style: 'currency', currency: 'USD' });\r\n }\r\n }else{\r\n clonedState.discretionaryRequest.EstdAnnualNetIncome = '';\r\n clonedState.displayEstimatedNetIncome = ''\r\n }\r\n }\r\n\r\n if(event.target.name === \"DistributionAmount\"){\r\n if(event.target.value){\r\n clonedState.discretionaryRequest.Recommendation = \r\n `Upon the consideration of ${this.state.discretionaryRequest.Trustees} acting through the Trust Committee of ${this.getCommaSeparatedTrusteeApprovers(this.state.distributionApproversList)} approval of a discretionary distribution in the amount of ${this.state.discretionaryRequest.DistributionAmount} USD for the purposes described above has been recommended as appropriate.`;\r\n }else{\r\n clonedState.discretionaryRequest.DistributionAmount = '';\r\n clonedState.discretionaryRequest.Recommendation = '';\r\n }\r\n }\r\n\r\n this.setState(clonedState);\r\n }\r\n\r\n getCommaSeparatedTrusteeApprovers(approversList){\r\n let approvers = '';\r\n if(approversList && Array.isArray(approversList) && approversList.length > 0){\r\n for(let i=0; i< approversList.length; i++){\r\n console.log(approversList[i]);\r\n if(approversList[i].isTrustCompanyTrustee === 'Y' && approversList[i].fullName){ \r\n approvers = approvers + `${approversList[i].fullName}, `\r\n }\r\n }\r\n }\r\n\r\n console.log(approvers);\r\n return approvers;\r\n }\r\n\r\n handleAmtFieldFocus(event){\r\n let clonedState = Object.assign({}, this.state);\r\n\r\n if(event.target.name === \"CurrentValuation\"){\r\n clonedState.displayCurrentValuation = this.state.discretionaryRequest.CurrentValuation;\r\n }\r\n\r\n if(event.target.name === \"EstdAnnualNetIncome\"){\r\n clonedState.displayEstimatedNetIncome = this.state.discretionaryRequest.EstdAnnualNetIncome;\r\n }\r\n \r\n\r\n this.setState(clonedState);\r\n }\r\n\r\n showFileUploader(){\r\n if(this.props.mode !== 'UPDATE'){\r\n //call submit api\r\n //let ApprovedText = `${this.state.discretionaryRequest.Trustees}, TRUSTEE, THROUGH ITS TRUST COMMITTEE`;\r\n let RequestorEmail = this.props.user.userName;\r\n\r\n //cloned object \r\n let clonedState = Object.assign({}, this.state);\r\n //clonedState.discretionaryRequest.ApprovedText = ApprovedText;\r\n clonedState.discretionaryRequest.RequestorEmail = RequestorEmail;\r\n clonedState.discretionaryRequest.Approvers = [...requestApproversList(this.state.distributionApproversList)];\r\n clonedState.showOverlay= true;\r\n\r\n this.setState(clonedState, () => {\r\n SubmitDiscritionaryDistribution(this.state.discretionaryRequest, 'SAVE').then(res => {\r\n let clonedState = Object.assign({}, this.state);\r\n clonedState.discretionaryRequest.DistributionID = res.data;\r\n clonedState.showOverlay= false;\r\n this.setState(clonedState);\r\n message.info('Saved your distribution before allowing to upload additioanl document');\r\n })\r\n .catch(err => {\r\n message.error('Unable to save your request before allowing to upload additional document');\r\n this.setState({showOverlay: false});\r\n })\r\n });\r\n\r\n }\r\n }\r\n\r\n approverIncludeChange(event, approver){\r\n if(approver){\r\n let clonedApproverList = cloneDeep(this.state.distributionApproversList);\r\n for(let i=0; i< clonedApproverList.length; i++){\r\n if(clonedApproverList[i].uniqueIdx === approver.uniqueIdx){\r\n clonedApproverList[i].indInclude = event.target.checked ? 'Y' : 'N';\r\n break;\r\n }\r\n }\r\n this.setState({distributionApproversList: clonedApproverList && clonedApproverList.length > 0 ? clonedApproverList : []});\r\n }\r\n }\r\n\r\n trustCompanyApprChange(event){\r\n //include and exclude all trust company approver\r\n let clonedApproverList = cloneDeep(this.state.distributionApproversList);\r\n for(let i=0; i< clonedApproverList.length; i++){\r\n if(clonedApproverList[i].isTrustCompanyTrustee === 'Y'){\r\n clonedApproverList[i].indInclude = event.target.checked ? 'Y' : 'N';\r\n }\r\n }\r\n\r\n this.setState({\r\n distributionApproversList: clonedApproverList && clonedApproverList.length > 0 ? clonedApproverList : [],\r\n trustCompanyApprCheckbox: event.target.checked\r\n });\r\n }\r\n\r\n\r\n render() {\r\n return (\r\n <>\r\n {\r\n this.state.showOverlay && ()\r\n }\r\n\r\n {\r\n this.state.showOverlayProgress && ()\r\n }\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n this.fetchEntityInformation(this.state.discretionaryRequest.EntityNumber)}>\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n this.handleAmtOnBlur(e)}\r\n onFocus={(e) => this.handleAmtFieldFocus(e)} \r\n value={this.state.displayCurrentValuation} onChange={this.handleFormChanges} autoComplete=\"off\"/>\r\n
\r\n
\r\n \r\n this.handleAmtOnBlur(e)} \r\n onFocus={(e) => this.handleAmtFieldFocus(e)}\r\n onChange={this.handleFormChanges} autoComplete=\"off\">\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n