{"version":3,"sources":["actions/DeliveryDetailsAction.ts","actions/ChooseNumberAction.ts","components/Util/UpdateStatusAPI.js","api/EcommerceEndpoints.ts","api/api.ts","actions/AbsherVerificationAction.ts","actions/SSAAbsherVerificationAction.ts","actions/OTPVerificationAction.ts","actions/MNPOTPVerificationAction.ts","actions/SIMSwapOTPVerificationAction.ts","actions/SimOptionAction.ts","actions/NumberOptionAction.ts","actions/CurrentOperatorAction.ts","actions/SuccessPageAction.ts","actions/CheckoutAction.ts","actions/UnpaidBillsAction.ts","actions/AppointmentDetailsAction.ts","actions/FamilyPlanCheckAction.ts","actions/EnterSIMIDDetailsAction.ts","local.tsx","actions/SecurityDepositAction.ts","actions/ODBDetailsAction.ts","actions/DeliveryAppointmentAction.ts","assets/ArrowLeft.svg","actions/ProductOfferingQualificationAction.ts","reducers/SequenceManagerReducer.ts","reducers/ProductOfferReducer.ts","reducers/ShoppingCartReducer.ts","reducers/ProductOfferingQualificationReducer.ts","reducers/CheckoutReducer.ts","reducers/NumberOptionReducer.ts","reducers/SimOptionReducer.ts","reducers/ChooseNumberReducer.ts","reducers/DeliveryDetailsReducer.ts","reducers/FTTHServiceabilityReducer.ts","reducers/TCCEligibilityCheckReducer.ts","reducers/EPlanCheckReducer.ts","reducers/UnpaidBillsReducer.ts","reducers/SecurityDepositReducer.ts","reducers/AbsherVerificationReducer.ts","reducers/SSAAbsherVerificationReducer.ts","reducers/SuccessPageReducer.ts","reducers/PersonalDetailsReducer.ts","reducers/ContractLengthReducer.ts","reducers/AppointmentDetailsReducer.ts","reducers/IDVerificationReducer.ts","reducers/CurrentNumberReducer.ts","reducers/CurrentOperatorReducer.ts","reducers/FamilyPlanCheckReducer.ts","reducers/FTTHFlowRuleDetailsReducer.ts","reducers/ODBDetailsReducer.ts","reducers/EnterSIMIDDetailsReducer.ts","reducers/MobilyOTPLineReducer.ts","reducers/OTPVerificationReducer.ts","reducers/MNPOTPVerificationReducer.ts","reducers/SIMSwapOTPVerificationReducer.ts","reducers/DeliveryAppointmentReducer.ts","reducers/index.ts","EcommerceStore.ts","actions/EPlanCheckAction.ts","actions/PersonalDetailsAction.ts","actions/ContractLengthAction.ts","actions/FTTHFlowRuleDetailsAction.ts","actions/MobilyOTPLineAction.ts","actions/ShoppingCartAction.ts","managers/SequenceManager.tsx","i18n.tsx","index.tsx","actions/SequenceManagerAction.ts","Util/AuditErrorRequest.js","actions/CurrentNumberAction.ts","actions/TCCEligibilityCheckAction.ts","actions/IDVerificationAction.ts","actions/ProductOfferAction.ts","actions/FTTHServiceabilityAction.ts"],"names":["DeliveryDetailsAction","getDeliveryDetails","email","name","phone","contactPhone","address","notes","currLoc","nationalAddress","natPostalCode","natPoBox","nationalCityName","nationalName","natId","isConsentBoxChecked","dispatch","getState","type","DELIVERY_DETAILS_SUCCESS","payload","SequenceManagerAction","SECTION_COMPLETE","deliveryCheck","lat","lng","city","mapDeliveryCheck","then","response","DELIVERY_CHECK_SUCCESS","data","catch","error","GENERIC_ERROR","OTPInitiate","phoneNumber","modId","lang","otpLength","isNumeric","deliverySendOtp","DELIVERY_OTP_INITIATE_SUCCESS","OTPValidateApi","otp","hashCode","deliveryValidateOtp","DELIVERY_OTP_VALIDATE_SUCCESS","rSendOTP","rSendOtp","DELIVERY_OTP_RSEND_SUCCESS","ChooseNumberAction","fetchMsisdnList","vanityType","newStack","fetchMsisdn","FETCH_MSISDN_SUCCESS","reserveNumber","productType","numberType","tier","numbersList","selectedNumber","selection","offerContainerId","reserveMsisdn","RESERVE_MSISDN_SUCCESS","chooseNumberComplete","status","URLSearchParams","window","location","search","get","getUpdateStatus","apiName","getUpdateStatusApi","console","log","endpoints","win","apigeeBaseApiUrl","apigeeBMBaseURL","apigeeBMXAPIKey","cemKey","token","otpToken","serverURL","updateAPIURL","x_trans_id","createTransactionID","isCorrelationId","currentDateTime","Date","toISOString","replace","slice","Math","ceil","random","config","api","baseURL","headers","Authorization","edata","xCorelId","decode","decodeURIComponent","atob","JSON","parse","xCoId","getCoreId","otpConfig","Accept","transactionId","channel","AbsherConfig","axios","create","customerInquiryApi","otpApi","absherApi","interceptors","request","use","a","conf","options","timeZone","hour12","saudiDate","toLocaleString","saudiISODate","url","includes","RETRIEVE_APPOINTMENTS","DELIVERY_COVERAGE_CHECK","err","getProductOfferByID","productId","query","post","QUERY_GRAPHQL","getExternalId","shoppingCart","store","SequenceManager","ProductOffer","journey","productCharacteristics","productCharecteristics","productOfferingPrice","itemTerm","productOfferingTerm","productCharacteristic","contractLength","split","length","filter","productOffer","duration","amount","units","i","defaultSimType","specCharacteristicValue","sc","isDefault","push","value","offerContainer","additionalAttributes","orderType","cartItem","action","productOffering","id","productKey","product","quantity","category","processContext","relatedParty","SHOPPING_CART","getProductCharacteristic","characteristic","ShoppingCart","ci","selectedProduct","productChars","patchSignature","context","shoppingCartPatch","operation","path","ProductOfferingQualification","productOfferingQualification","signature","patch","patchSimType","simType","ocId","productOcId","ChangeOfProcessContextSC","processContextVal","updatedOC","map","item","existingShoppingCart","put","patchUnpaidBills","UnpaidBills","unpaidBillsOcId","unpaidBillsResponse","ShoppingCartRequest","patchSecurityDeposit","SecurityDeposit","fetchSecurityDepositResponse","qualifyProds","installedBase","additionalCharacteristics","customer","account","agreement","contactMedium","productInventory","description","instantSyncQualification","productOfferingQualificationItemContainer","productOfferingQualificationItem","provideAlternative","provideUnavailabilityReason","QUALIFY_PRODUCTS","validateSCart","getShoppingCartById","GET_SHOPPING_CART","updateAndValidateShoppingCart","ShoppingCartId","UPDATE_VALIDATE_SHOPPING_CART","captData","sectionsRequestBody","sectionsVisited","sections","requestBody","serviceability","CAPTURE_DATA","structure","CHECKOUT_STRUCTURE","getCheckoutBySCId","GET_CHECKOUT_STRUCTURE","validityToken","isVIP","NewStack","JourneyName","journeyName","resourceCapacityDemand","resourceCapacityDemandAmount","resourcePool","vanity","msisdn","package","version","GET_MSISDN","reservedNumber","reservationItem","cartId","appliedCapacityAmount","resource","RESERVE_MSISDN","getTccEligibility","personId","nationality","requestType","customerConsent","IdType","charAt","subscriptionType","msisdnType","packageName","TCC_ELIGIBILITY_CHECK","initiateOtp","customerId","OrderId","orderId","CustomerId","Language","Reason","INITIATE_OTP","validateOtp","verificationCode","TransactionId","VerificationCode","VALIDATE_OTP","getCustomerRelatedAccount","accessToken","IdTypeValue","GET_CUSTOMER_RELATED_ACCOUNT","getUnpaidBills","CartId","OrderType","CustomerIdType","UNPAID_BILLS","getDeposit","bandWidth","plan","IDDocNumber","IDDocType","Package","Bandwidth","GET_SECURITY_DEPOSIT","lon","packageSize","mapCoverageCheck","Latitude","Longitude","FTTH_COVERAGE_CHECK","getMainAndAroundODB","GET_MAIN_AND_AROUND_ODB","generateOrder","shoppingCartId","GENERATE_ORDER_PRESSA","GENERATE_ORDER","getSimDetails","SIMType","GET_SIM_DETAILS","tccRegisterApi","IAMToken","getSimIccid","getSimImsi","msisdnNumber","idNumber","Nationality","payType","appToken","exceptionFlag","RequestType","iccid","imsi","MSISDN","PayType","IdNumber","IAMAppToken","TCC_REGISTRATION","getQrCode","GET_QR_CODE","getEmailService","RecipientEmail","EMAIL_SERVICE","getAllPlanDetails","externalIds","ftthFeasibilityCheck","odb","bandwidth","seekerID","ODBID","SeekerID","FTTH_FEASIBILITY_CHECK","getAppointments","startDate","endDate","provider","typeOfService","district","region","appointmentEndPoint","toLowerCase","GET_APPOINTMENTS_NON_MOBILY","GET_APPOINTMENTS","ODB","Provider","TypeOfService","PreferredStartDate","PreferredEndDate","Object","assign","DISTRICT","CITY","REGION","reserveAppointment","slotId","endData","RESERVE_APPOINTMENT_NON_MOBILY","RESERVE_APPOINTMENT","SlotId","customerDetailsApi","GET_CUSTOMER_DETAILS","simswapCustomerDetailsApi","createOrder","CREATE_ORDER_ID","FamilyPlanCheckApi","idValue","packageId","CustomerType","FamilyLineActType","customerIdValue","FAMILY_PLAN_CHECK","ValidateSimApi","serialNumber","puk1Number","externalID","externalId","SIMNumber","PUK1","PackageName","PackageId","VALIDATE_SIM","number","language","extraInfo","DELIVERY_SEND_CEM_OTP","mnpSendOtp","selectedProductLabel","key","simSwapSendOtp","verifyValue","date","moduleId","verification","emailAddress","dynamicParams","DELIVERY_SEND_OTP","simSwapResendOtp","toUpperCase","DELIVERY_RESEND_OTP","simSwapValidateOtp","DELIVERY_VALIDATE_OTP","DELIVERY_VALIDATE_CEM_OTP","DELIVERY_RESEND_CEM_OTP","mobilyOtpSend","otpType","productLabel","technicalName","nationalityCode","tccIdType","fecEncrypted","currentOperator","orderMSISDN","FECEncrypted","SAN","OTPType","OTPStatus","PackageCommercialName","PersonIdType","CurrentOperator","OrderMSISDN","MOBILY_OTP_INITIATE","mobilyOtpValidate","requestId","ServiceRequestID","OTP","MOBILY_OTP_VALIADTE","mobilyOtpResend","MOBILY_OTP_REGENERATE","byPassVerification","eSimValidation","IDNumber","ESIM_VALIDATION","paymentInitiateApiCall","paymentProcessor","INITIATE_PAYMENT","ecomPaymentInitiateApi","INITIATE_PAYMENT_ECOM","retrieveAppointments","DeliveryDetails","serviceType","pc","planType","steps","fields","toString","cemSimSwapSendOtp","CEM_INITIATE_OTP","tccCemBffSendOtp","cemSimSwapValidateOtp","refId","clientId","ClientSecret","CEM_VALIDATE_OTP","cemSimSwapResendOtp","modes","CEM_RESEND_OTP","res","getTCCMappingErrorApi","TCC_ERROR_MAPPING_API","getAuditServiceSave","AUDIT_SERVICE_SAVE","AbsherVerificationAction","getSimTypeDetails","GET_SIM_DETAILS_SUCCESS","tccRegisterDetails","sim","TCC_REGISTRATION_SUCCESS","tccData","storeTccRegisterDetails","simDetails","tccRegisterResponse","nafathOption","ABSHER_VERIFICATION_COMPLETE","SSAAbsherVerificationAction","OTPVerificationAction","OTPVerificationValue","OTP_VERIFICATION_VALUE","VERIFICATION_OTP_INITIATE_SUCCESS","OTPValidate","VERIFICATION_OTP_VALIDATE_SUCCESS","OTPResend","VERIFICATION_OTP_RSEND_SUCCESS","MNPOTPVerificationAction","MNP_OTP_VERIFICATION_VALUE","operator","MNP_VERIFICATION_OTP_INITIATE_SUCCESS","MNP_VERIFICATION_OTP_VALIDATE_SUCCESS","MNP_VERIFICATION_OTP_RSEND_SUCCESS","SIMSwapOTPVerificationAction","SIMSWAP_OTP_INITIATE_SUCCESS","SIMSWAP_OTP_VALIDATE_SUCCESS","SIMSWAP_OTP_RSEND_SUCCESS","SimOptionAction","simSelection","SELECT_SIM_TYPE","NumberOptionAction","makeSelection","selectionText","MAKE_SELECTION","CurrentOperatorAction","chooseOperator","SELECT_OPERATOR","SuccessPageAction","getQrCodeDetails","QR_CODE_SUCCESS","emailServiceDetails","EMAIL_SERVICE_SUCCESS","getCustomerDetailsSSA","GET_CUSTOMER_DETAILS_SUCCESS","CheckoutAction","getPlanDetails","CHECKOUT_PLAN_DETAILS_SUCCESS","initiatePayment","INITIATE_PAYMENT_SUCCESS","ecomInitiatePayment","handleCheckout","paymentMethod","HANDLE_CHECKOUT","UnpaidBillsAction","getCustomerUnpaidBills","FETCH_UNPAID_BILLS_SUCCESS","getAllUnpaidPlanDetails","GET_PLAN_DETAILS_SUCCESS","acceptUnpaidBills","unpaidBillResponse","UNPAID_BILLS_ACCEPTED","AppointmentDetailsAction","getAppointmentsSlots","GET_APPOINTMENTS_SUCCESS","reserveAppointmentSlot","slot","selectedDate","start","end","RESERVE_APPOINTMENT_SUCCESS","appointmentStart","appointmentEnd","skipAppointment","SKIP_APPOINTMENT_SUCCESS","FamilyPlanCheckAction","getPackageExternalId","GET_EXTERNAL_ID_SUCCESS","familyPlanValidation","custType","actType","FAMILY_PLAN_CHECK_SUCCESS","familyPlanCheckDone","familyPlanCheckResponse","ErrorCode","ErrorDescription","planCheckValue","redirectUrl","FAMILY_PLAN_CHECK_DONE","EnterSIMIDDetailsAction","SimValidation","VALIDATE_SIM_SUCCESS","VALIDATE_SIM_FAILURE","saveSimIdDetails","simNumber","validateSimResponse","SAVE_SIMID_DETAILS","href","sessionStorage","productURL","productCategory","document","documentElement","process","REACT_APP_STORE_GMK","REACT_APP_CLIENT_TKN","REACT_APP_DAPI_TKN","REACT_APP_APIGEE_BM_X_APIK","REACT_APP_CEM_K","REACT_APP_BM_RSA_PK","REACT_APP_BM_RSA_PRK","REACT_APP_DBR_LI_K","REACT_APP_BM_CI","REACT_APP_SI_BM_CS","REACT_APP_CEM_CLK_PK","SecurityDepositAction","fetchSecurityDeposit","FETCH_SECURITY_DEPOSIT_SUCCESS","acceptSecurityDeposit","securityDepositResponse","SECURITY_DEPOSIT_ACCEPTED","ODBDetailsAction","feasibilityCheck","FTTH_FEASIBILITY_CHECK_SUCCESS","odbDetails","FeasibilityID","UPDATE_ODB_DETAILS","DeliveryAppointmentAction","retrieveAppointmentsSlots","RETRIEVE_APPOINTMENTS_SUCCESS","RETRIEVE_APPOINTMENTS_FAILURE","updateSelectedDate","UPDATE_SELECTED_DATE","ProductOfferingQualificationAction","dir","initState","rtl","sectionToShow","appState","selectedSimType","selectedMsisdn","selectedMsisdnType","selectedTier","productExternalId","orderStatus","paymentTransactionId","tccToken","nationCode","role","maskedEmail","xCorrelationId","nafathStatus","isBundle","captureDataResponse","getCategory","getOrderType","getJourneyName","simVal","SequenceManagerReducer","state","INIT","SET_PRODUCT_KEY_COMPLETE","LOAD_PRODUCT_OFFER_COMPLETE","CREATE_SHOPPING_CART_COMPLETE","QUALIFY_PRODUCTS_COMPLETE","SHOPPING_CART_PATCH_SIGNATURE_COMPLETE","SHOPPING_CART_VALIDATION_COMPLETE","UPDATE_VALIDATE_CART_COMPLETE","SHOPPING_CART_UPDATE_COMPLETE","STRUCTURE_UPDATE_COMPLETE","GET_CHECKOUT_COMPLETE","CREATE_ORDER_COMPLETE","CAPTURE_DATA_COMPLETE","DISPLAY_NEXT_SECTION","SET_PRODUCT_KEY","STRUCTURE_UPDATE_SUCCESS","DISPLAY_PREVIOUS_SECTION","DISPLAY_SECTION","section","sectionId","sects","ConfigData","section_mappings","sect","checkoutSectionId","indexOf","params","ProductOfferAction","LOAD_PRODUCT_OFFER_SUCCESS","productName","offerLabels","CurrentNumberAction","Email","MaskedEmail","GET_CHECKOUT_SUCCESS","GENERATE_ORDER_SUCCESS","CREATE_ORDER_SUCCESS","ACCESS_TOKEN","SHOPPING_CART_SIM_TYPE","CAPTURE_DATA_SUCCESS","getProductOffer","ProductOfferReducer","specCharValueUse","isSimTypePatchDone","isUnpaidBillsPatchDone","isSecurityDepositPatchDone","isProcessContextPut","ShoppingCartReducer","ShoppingCartAction","SHOPPING_CART_CREATE_SUCCESS","SHOPPING_CART_PATCH_SIGNATURE_SUCCESS","SHOPPING_CART_UPDATE_SUCCESS","SHOPPING_CART_PATCH_SIM_TYPE_SUCCESS","SHOPPING_CART_PUT_PROCESS_CONTEXT_SUCCESS","SHOPPING_CART_PATCH_UNPAID_BILLS_SUCCESS","SHOPPING_CART_PATCH_UNPAID_BILLS_VERIFIED","SHOPPING_CART_PATCH_SECURITY_DEPOSIT_SUCCESS","SHOPPING_CART_PATCH_SECURITY_DEPOSIT_VERIFIED","SHOPPING_CART_VALIDATION_SUCCESS","UPDATE_VALIDATE_CART_SUCCESS","SHOPPING_CART_INVALIDATE","ProductOfferingQualificationReducer","QUALIFY_PRODUCTS_SUCCESS","sequence","stepId","planDetailsResponse","initiatePaymentResponse","CheckoutReducer","CheckoutValue","paymentType","NumberOptionReducer","NumberValue","numberTypeValue","initSimType","SimOptionReducer","SimOptionValue","simValueType","fetchMsisdnResponse","reserveMsisdnResponse","ChooseNumberReducer","ChooseNumberValue","num","join","stringify","MSISDN_spcId","ChooseNumberField","field","deliveryCheckResponse","initiateOTPResponse","validateOTPResponse","rSendOTPResponse","DeliveryDetailsReducer","DeliveryDetailsValue","DeliveryDetailsField","coverageCheckResponse","allOdbsResponse","mapLocation","FTTHServiceabilityReducer","FTTHServiceabilityValue","FTTHServiceabilityAction","FTTH_COVERAGE_CHECK_SUCCESS","FTTH_UPDATE_MAP_LOCATION","FTTH_GET_MAIN_AND_AROUND_ODBS","FTTH_CLEAR_ODBS","FTTH_SERVICEABILITY_UPDATE","cityName","checkoutField","initEligibilityCheck","tccEligibilityResponse","customerRelatedAccountResponse","eSimValidationResponse","eligibilitySendOtpResponse","eligibilityValidateOtpResponse","eligibilityResendOtpResponse","EligibilityCheckReducer","tccValue","TCCEligibilityCheckAction","TCC_ELIGIBILITY_CHECK_SUCCESS","nationalityFieldName","nationalityName","idType","CUSTOMER_RELATED_ACCOUNT_SUCCESS","ESIM_VALIDATION_SUCCESS","TCC_ELIGIBILITY_CEM_OTP_INITIATE_SUCCESS","TCC_ELIGIBILITY_CEM_OTP_VALIDATE_SUCCESS","TCC_ELIGIBILITY_CEM_OTP_RSEND_SUCCESS","STORE_CUSTOMER_DETAILS","mobilycustomer","MobilyCustomer","OTPDetails","otpVoiceLines","activeVoiceLines","newStackVal","otpVal","tccValueField","initEPlanCheck","EPlanCheckReducer","ePlanValue","EPlanCheckAction","EPLAN_CHECK_SUCCESS","ePlanAvilable","ePlanPackage","ePlanCustomerResponse","initUnpaidBills","allPlanDetailsResponse","UnpaidBillsReducer","UnpaidValue","TotalAmountDue","UnpaidValueField","SecurityDepositReducer","SecurityDepositValue","SecurityDepositAmount","initAbsherVerify","getSimDetailsData","tccRegisterData","byPassVerificationData","AbsherVerificationReducer","AbsherData","BYPASS_VERIFICATION_SUCCESS","splice","AbsherField","SSAAbsherVerificationReducer","qrCodeResponse","emailServiceResponse","customerDetailsResponse","SuccessPageReducer","PersonalDetailsReducer","PersonalDetailsValue","PersonalDetailsAction","PERSONAL_DETAILS_SUCCESS","fName","mName","lName","birthDate","birthdayType","PersonalDetailsField","PersonalDetailsOption","ContractLengthReducer","ContractLengthAction","MONTHS_SELECTION","contractMonths","getAppointmentsSlotsResponse","reserveAppointmentResponse","AppointmentDetailsReducer","AppointmnetDetailsValue","AppointmnetDetailsField","initiateIDVerificationOTPResponse","validateIDVerificationOTPResponse","resendIDVerificationOTPResponse","IDVerificationReducer","IDVerificationValue","IDVerificationAction","ID_VERIFICATION_CEM_OTP_INITIATE_SUCCESS","ID_VERIFICATION_CEM_OTP_VALIDATE_SUCCESS","ID_VERIFICATION_CEM_OTP_RSEND_SUCCESS","OTP_INITIATE_SUCCESS","OTP_VALIDATE_SUCCESS","UPDATE_ID_VERIFICATION","nationalityISOCode","getCustomerDetailsData","initiateOTPSwapResponse","validateOTPSwapResponse","rSendOTPSwapResponse","CurrentNumberReducer","CURRENT_NUMBER_SELECTION","numberValueData","getCustomerDetailsResponse","NationalityString","IMSI","Plan","IDDocTypeString","SIMSWAP_CEM_OTP_INITIATE_SUCCESS","SIMSWAP_CEM_OTP_VALIDATE_SUCCESS","SIMSWAP_CEM_OTP_RSEND_SUCCESS","numberValueRes","CurrentOperatorReducer","currentValue","currentOperater","getExternalIdResponse","FamilyPlanCheckReducer","FamilyPlanValue","FTTHFlowRuleDetailsReducer","FTTHFlowRuleValue","FTTHFlowRuleDetailsAction","FTTH_FLOW_RULE_DETAILS_SUCCESS","flowRuleValue","feasibilityCheckResponse","ODBDetailsReducer","ODBDetailsValue","EnterSIMIDDetailsReducer","SimIdDetails","StatusCode","StatusMessage","Message","ResellerCRID","ResellerMSISDN","DealerId","DealerName","PromoCode","SimIdDetailsField","MobilyOTPLineReducer","mobilyOtpValue","MobilyOTPLineAction","MOBILY_OTP_MAKE_SELECTION","OTPVerificationReducer","MNPOTPVerificationReducer","SIMSwapOTPVerificationReducer","DeliveryAppointmentReducer","DeliveryAppointmentValue","day","time","EcommerceReducer","combineReducers","paymentMethodAndTermsConditions","NumberOption","ChooseNumber","SimOption","FTTHServiceability","TCCEligibilityCheck","TCCEligibilityCheckReducer","EPlanCheck","AbsherVerification","SSAAbsherVerification","PersonalDetails","SuccessPage","ContractLength","AppointmentDetails","IDVerification","CurrentNumber","FamilyPlanCheck","FTTHFlowRuleDetails","ODBDetails","EnterSIMIDDetails","MobilyOTPLine","OTPVerification","MNPOTPVerification","SIMSwapOTPVerification","DeliveryAppointment","middlewares","thunk","enhancers","applyMiddleware","composedEnhancers","composeWithDevTools","createStore","ePlanCheckComplete","getPersonalDetails","monthsSelection","ftthFlowRuleDetails","numberSelected","createShoppingCart","st","patchSimTypeShoppingCart","ChangeOfProcessContextForSC","patchUnpaidBillsShoppingCart","patchUnpaidVerified","isUnpaidPatchDone","patchSecurityDepositShoppingCart","patchSecurityDepositVerified","getShoppingCart","updateAndValidateShoppingCartById","appStateUpdate","React","lazy","Checkout","paymentPage","ecommercePage","homePage","useState","loading","setLoading","checkoutRequired","setCheckoutRequired","useQueryParams","setUseQueryParams","componentToDisplay","setComponentToDisplay","currentSection","setCurrentSection","useSelector","FamilyPlanCheckData","FTTHFlowRuleDetailsData","ODBDetailsData","EPlanCheckData","CheckoutData","TCCEligibilityCheckData","browserBackClick","setBrowserBackClick","modalTitle","setModalTitle","modalSubtitle","setModalSubtitle","modalSubmitText","setModalSubmitText","modalCancelText","setModalCancelText","retryAPICallCountNew","setRetryAPICallCountNew","t","useTranslation","useDispatch","urlParams","getItem","useEffect","stopBrowserBack","statusCode","spcartId","scId","jN","auditJourneyName","auditScId","auditXCorrelationId","setDocumentTitle","j","auditStatusCode","method","generateCheckoutOrder","setProductKey","getProductOfferById","createOrderId","getStructure","decodedParams","oId","pURL","sST","sP","sPL","sT","pT","prT","pE","sN","sNT","o","pM","pTyp","nCode","maEml","step","displaySection","sectionToNavigate","nafathVersion","open","focus","encoded","btoa","encodeURIComponent","returnUrl","cartTotalPrice","price","priceType","taxIncludedAlteredAmount","displayNextSection","captureData","getCheckout","setTimeout","callAuditServiceApi","sectionDisplay","displaySectionUI","totalPay","paymentUrl","history","pushState","onpopstate","browserBackModalContent","title","journeyTitle","style","display","direction","margin","className","percent","getCompletionPercent","src","ArrowLeft","onClick","onBackPressed","getComponentById","scroll","top","left","percentComplete","containE50Section","size","fallback","idBtn","idBtnOutLine","idCloseIcon","subText","buttonName","outlineButtonName","showModal","onClickClose","onclickButton","onclickOutLineButton","undefined","resources","en","translation","translationEN","ar","translationAR","i18n","Backend","initReactI18next","init","fallbackLng","debug","keySeparator","interpolation","escapeValue","react","useSuspense","ReactDOM","render","Suspense","getElementById","getServiceName","part","pop","serviceName","test","arr","errorPage","req","errorData","createdOnDate","correlationId","xSourceChannel","setItem","safeParse","responseMsg","responseURL","Method","auditErrorRequest","Status","getCustomerDetails","cemSwapSendOtp","cemSwapValidateOtp","cemSwapResendOtp","performTCCEligibilityCheck","isCustomerConsent","performGetCustomerRelatedAccount","storeCustomerDetails","eSimValidationAPI","eligibilitySendOtp","eligibilityValidateOtp","eligibilityResendOtp","mode","updateIDVerification","idVerifySendOtp","idVerifyValidateOtp","idVerifyResendOtp","updateLocation","getOdbs","coverageCheck","updateFTTHServiceability","feasibility"],"mappings":"4HAAA,gNAEWA,EAFX,gB,SAEWA,K,oDAAAA,E,gDAAAA,E,8DAAAA,E,8DAAAA,E,yDAAAA,M,KAUX,IAAMC,EAAqB,SAACC,EAAYC,EAAWC,EAAYC,EAAmBC,EAAcC,EAAYC,EAAcC,EAAsBC,EAAoBC,EAAeC,EAAuBC,EAAmBC,EAAYC,GACrO,OAAO,SAAUC,EAAeC,GAC5BD,EAAS,CAAEE,KAAMlB,EAAsBmB,yBAA0BC,QAAS,CAAClB,MAAOA,EAAOC,KAAMA,EAAMC,MAAOA,EAAOC,aAAcA,EAAcC,QAASA,EAASC,MAAOA,EAAOC,QAASA,EAASC,gBAAiBA,EAAiBC,cAAeA,EAAeC,SAAUA,EAAUC,iBAAkBA,EAAkBC,aAAcA,EAAcC,MAAOA,EAAOC,oBAAqBA,KACxXC,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,uBAIrEG,EAAgB,SAACC,EAAUC,EAAUC,GACvC,OAAO,SAAUV,EAAeC,GAC5BU,YAAiBH,EAAKC,EAAKC,GAAME,MAAK,SAACC,GACnCb,EAAS,CAAEE,KAAMlB,EAAsB8B,uBAAwBV,QAAS,CAACS,SAAQ,OAAEA,QAAF,IAAEA,OAAF,EAAEA,EAAUE,KAAMP,IAAKA,EAAKC,IAAKA,QAErHO,OAAM,SAACC,IAEJ,OAAGA,QAAH,IAAGA,OAAH,EAAGA,EAAOJ,UACNb,EAAS,CAAEE,KAAMlB,EAAsB8B,uBAAwBV,QAAS,CAACS,SAAQ,OAAEI,QAAF,IAAEA,OAAF,EAAEA,EAAOJ,SAAUL,IAAKA,EAAKC,IAAKA,KAEvHT,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAOnEE,EAAc,SAACC,EAAiBC,EAAYC,EAAWC,EAAgBC,GACzE,OAAO,SAAUxB,EAAeC,GAC5BwB,YAAgBL,EAAaC,EAAOC,EAAMC,EAAWC,GAAWZ,MAAK,SAACC,GAClEb,EAAS,CAAEE,KAAMlB,EAAsB0C,8BAA+BtB,QAAQS,OAEjFG,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKnEU,EAAiB,SAACC,EAAUC,GAC9B,OAAO,SAAU7B,EAAeC,GAC5B6B,YAAoBF,EAAKC,GAAUjB,MAAK,SAACC,GACrCb,EAAS,CAAEE,KAAMlB,EAAsB+C,8BAA+B3B,QAAQS,OAErFG,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAK/De,EAAW,SAACH,GACd,OAAO,SAAU7B,EAAeC,GAC5BgC,YAASJ,GAAUjB,MAAK,SAACC,GACrBb,EAAS,CAAEE,KAAMlB,EAAsBkD,2BAA4B9B,QAAQS,OAE9EG,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,U,iCCnEzE,4IAGWkB,EAHX,gB,SAGWA,K,8BAAAA,E,4CAAAA,E,gDAAAA,E,gDAAAA,E,6CAAAA,M,KAQX,IAAMC,EAAkB,SAACC,EAAoBC,GACzC,OAAO,SAAUtC,EAAcC,GAC3BsC,YAAYF,EAAYC,GAAU1B,MAAK,SAACC,GACpCb,EAAS,CAACE,KAAMiC,EAAmBK,qBAAsBpC,QAAQS,OAEpEG,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKnEwB,EAAgB,SAACC,EAAkBC,EAAiBC,EAAWC,EAAkBC,EAAqBC,EAAeC,EAAuBV,GAC9I,OAAO,SAAUtC,EAAcC,GAC3BgD,YAAcF,EAAWT,GAAU1B,MAAK,SAACC,GACrCb,EAAS,CAACE,KAAMiC,EAAmBe,uBAAwB9C,QAAS,CAACsC,YAAaA,EAAaE,KAAMA,EAAMD,WAAYA,EAAYE,YAAaA,EAAahC,SAAUA,EAAUiC,eAAgBA,EAAgBC,UAAWA,EAAWC,iBAAkBA,QAGxPhC,OAAM,SAACC,IAEJ,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACPb,EAAS,CAAEE,KAAMiC,EAAmBe,uBAAwB9C,QAAS,CAAEsC,YAAaA,EAAaE,KAAMA,EAAMD,WAAYA,EAAYE,YAAaA,EAAahC,SAAUI,EAAMJ,SAAUiC,eAAgBA,EAAgBC,UAAWA,EAAWC,iBAAkBA,KAEjQhD,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAM7EkC,EAAuB,WACzB,OAAO,SAAUnD,EAAeC,GAC5BD,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,qB,iCC1C3E,8CAEMgD,EADY,IAAIC,gBAAgBC,OAAOC,SAASC,QAC7BC,IAAI,UAEhBC,EAAkB,SAACC,EAAS1C,GAEtB,YAAXmC,GACAQ,YAAmBD,EAAS1C,GAAOL,MAAK,SAACC,GACrCgD,QAAQC,IAAIjD,Q,gpECRbkD,E,mEAAAA,K,2CAAAA,E,+CAAAA,E,8DAAAA,E,iFAAAA,E,qDAAAA,E,yDAAAA,E,2EAAAA,E,yGAAAA,E,yFAAAA,E,uFAAAA,E,gEAAAA,E,2EAAAA,E,2DAAAA,E,gEAAAA,E,gFAAAA,E,kDAAAA,E,gEAAAA,E,0DAAAA,E,oDAAAA,E,8DAAAA,E,8CAAAA,E,iDAAAA,E,gEAAAA,E,uDAAAA,E,kEAAAA,E,+EAAAA,E,sEAAAA,E,6EAAAA,E,qFAAAA,E,4FAAAA,E,yFAAAA,E,kDAAAA,E,oEAAAA,E,2DAAAA,E,yCAAAA,E,6CAAAA,E,iDAAAA,E,mEAAAA,E,mEAAAA,E,uEAAAA,E,mDAAAA,E,+DAAAA,E,yDAAAA,E,yDAAAA,E,8CAAAA,E,8CAAAA,E,wCAAAA,E,6CAAAA,E,qDAAAA,E,iDAAAA,E,0DAAAA,E,8GAAAA,E,8DAAAA,M,KAuDIA,QCjDTC,G,OAAWV,QAEXW,GADOD,EAAG,KACSA,EAAG,qBACtBE,EAAkBF,EAAG,mBACrBG,EAAkBH,EAAG,oBACrBI,EAASJ,EAAG,QACdK,EAAQL,EAAG,YACXM,EAAWN,EAAG,UAEdO,GADqBP,EAAG,qBACZA,EAAG,iBAEfQ,GADYR,EAAG,aACAA,EAAG,uBACtBA,EAAIS,WAAa,GAEjB,IAAMC,EAAsB,WAAuC,IAAtCC,EAAqC,wDAC5DC,GAAkB,IAAIC,MAAOC,cAAcC,QAAQ,UAAW,IAAIA,QAAQ,IAAK,IAAIC,MAAM,GAAGA,MAAM,GAAI,GAC1G,MAAO,OAASL,EAAkB,IAAM,IAAMC,EAAkB,IAAMK,KAAKC,KAAqB,IAAhBD,KAAKE,WAsBnFC,EAAS,CACXC,IAAK,CACHC,QAASpB,EACTqB,QAAS,CACP,eAAgB,mBAChBC,cAAe,GACf,YAAarB,EACb,mBAxBiB,WACrB,IACIsB,EADc,IAAIpC,gBAAgBC,OAAOC,SAASC,QAChCC,IAAI,SACtBiC,EAAgB,GACpB,GAAID,EAAO,CACT,IAAIE,EAASrC,OAAOsC,mBAAmBC,KAAKJ,GAAgB,KAI5D,OAFAC,EADaI,KAAKC,MAAMJ,GACNK,OACfhC,EAAG,WAAiBA,EAAG,SAAe0B,GAClCA,EAIP,OAFAA,EAAWhB,GAAoB,IAC5BV,EAAG,WAAiBA,EAAG,SAAe0B,GAClCA,EAWeO,GACpB,mBAAoB,SACpB,mBAAoB,MAKtBC,EAAY,CACdb,IAAK,CACHC,QAASrB,EACTsB,QAAS,CACPY,OAAQ,mBACR,eAAgB,mBAChBX,cAAe,GACfY,cAAe,GACfC,QAAS,SACT,UAAWjC,KAKbkC,EAAe,CACjBjB,IAAK,CACHC,QAASrB,EACTsB,QAAS,CACPY,OAAQ,mBACR,eAAgB,mBAChBE,QAAS,SACT,UAAWjC,KAMJiB,EAAMkB,IAAMC,OAAN,eAAkBpB,EAAOC,MAC/BoB,EAAqBF,IAAMC,OAAN,eAAkBpB,EAAOC,MAC9CqB,EAASH,IAAMC,OAAN,eAAkBN,EAAUb,MACrCsB,EAAYJ,IAAMC,OAAN,eAAkBF,EAAajB,MAC/BkB,IAAMC,SAE/BnB,EAAIuB,aAAaC,QAAQC,IAAzB,+BAAAC,EAAA,MACE,WAAOC,GAAP,mBAAAD,EAAA,6DACQE,EAAU,CAAEC,SAAU,cAAeC,QAAQ,GAC7CC,GAAY,IAAIvC,MAAOwC,eAAe,QAASJ,GAC/CK,EAAe,IAAIzC,KAAKuC,GAAWtC,cACzCkC,EAAKzB,QAAQC,cAAgB,UAAYnB,EACzC2C,EAAKzB,QAAQ,oBAAsBb,IACnCsC,EAAKzB,QAAQ,eAAiB+B,GAC1BN,EAAKO,IAAIC,SAASzD,EAAU0D,wBAA0BT,EAAKO,IAAIC,SAASzD,EAAU2D,4BACpFV,EAAKzB,QAAQ,gBAAkB,UARnC,kBAUSyB,GAVT,2CADF,uDAaE,SAACW,GACC9D,QAAQC,IAAI,oBAAqB6D,MAIrClB,EAAmBG,aAAaC,QAAQC,IAAxC,uCACE,WAAOE,GAAP,mBAAAD,EAAA,6DACQE,EAAU,CAAEC,SAAU,cAAeC,QAAQ,GAC7CC,GAAY,IAAIvC,MAAOwC,eAAe,QAASJ,GAC/CK,EAAe,IAAIzC,KAAKuC,GAAWtC,cACzCkC,EAAKzB,QAAQ,oBAAsBb,IACnCsC,EAAKzB,QAAQ,eAAiB+B,EALhC,kBAMSN,GANT,2CADF,uDASE,SAACW,GACC9D,QAAQC,IAAI,oBAAqB6D,MAIrCjB,EAAOE,aAAaC,QAAQC,IAA5B,uCACE,WAAOE,GAAP,SAAAD,EAAA,6DACEC,EAAKzB,QAAQC,cAAgB,UAAYlB,EACzC0C,EAAKzB,QAAQa,cAAgB1B,IAF/B,kBAGSsC,GAHT,2CADF,uDAME,SAACW,GACC9D,QAAQC,IAAI,oBAAqB6D,MAIrChB,EAAUC,aAAaC,QAAQC,IAA/B,+BAAAC,EAAA,MACE,WAAOC,GAAP,SAAAD,EAAA,+EACSC,GADT,2CADF,uDAIE,SAACW,GACC9D,QAAQC,IAAI,oBAAqB6D,MAIrC,IAAMC,EAAsB,SAACC,GAC3B,IAAIC,EAAQ,mCACkBD,EADlB,giCAkEZ,OAAOxC,EAAI0C,KAAKhE,EAAUiE,cAAe,CAAEF,MAAOA,KAG9CG,EAAgB,SAACJ,GACrB,IAAIC,EAAQ,mCACkBD,EADlB,qCAKZ,OAAOxC,EAAI0C,KAAKhE,EAAUiE,cAAe,CAAEF,MAAOA,KAG9CI,EAAe,WAAO,IAAD,EASsC,EAR/D,EAA0CC,IAAMlI,WAAxCmI,EAAR,EAAQA,gBAAiBC,EAAzB,EAAyBA,aACrBC,EAAUF,EAAgBE,QAC1BC,EAAsB,OAAGF,QAAH,IAAGA,OAAH,EAAGA,EAAcG,uBACvCC,EAAoB,OAAGJ,QAAH,IAAGA,OAAH,EAAGA,EAAcI,qBACrCC,EAAQ,UAAGD,EAAqB,UAAxB,aAAG,EAAyBE,oBACpCC,EAAwB,GAExBC,EAAiBP,EAAQQ,MAAM,KACT,SAAtBD,EAAe,IAAiBA,EAAeE,OAAS,IAC1DL,EAAQ,UAAGD,EAAqBO,QAAO,SAACC,GAAuB,IAAD,QAC5D,OAAQJ,EAAe,MAAoB,OAAZI,QAAY,IAAZA,GAAA,UAAAA,EAAcN,oBAAoB,UAAlC,mBAAsCO,gBAAtC,eAAgDC,QAAS,KAAzD,OAA+DF,QAA/D,IAA+DA,GAA/D,UAA+DA,EAAcN,oBAAoB,UAAjG,iBAA+D,EAAsCO,gBAArG,aAA+D,EAAgDE,UAC7I,UAFK,aAAG,EAEJT,qBAET,IAAK,IAAIU,EAAI,EAAGA,EAAId,EAAuBQ,OAAQM,IACjD,GAAuC,aAAnCd,EAAuBc,GAAGlK,KAAqB,CACjD,IAAImK,EAAiBf,EAAuBc,GAAGE,wBAAwBP,QAAO,SAACQ,GAAD,OAA+B,KAAhB,OAAFA,QAAE,IAAFA,OAAA,EAAAA,EAAIC,cAAoB,GAC/GH,EACFV,EAAsBc,KAAK,CAAEvK,KAAMoJ,EAAuBc,GAAGlK,KAAMwK,MAAK,OAAEL,QAAF,IAAEA,OAAF,EAAEA,EAAgBK,SAE1Ff,EAAsBc,KAAK,CAAEvK,KAAMoJ,EAAuBc,GAAGlK,KAAMwK,MAAO,iBAC1E9F,QAAQC,IAAI,yCAGd8E,EAAsBc,KAAK,CAAEvK,KAAMoJ,EAAuBc,GAAGlK,KAAMwK,MAAOpB,EAAuBc,GAAGE,wBAAwB,GAAGI,QAInI,IAAI5I,EAAO,CACTsF,QAAS+B,EAAgB/B,QACzBuD,eAAgB,CAAC,CACfC,qBAAsB,CAAC,CACrB1K,KAAM,YACNwK,MAAOvB,EAAgB0B,YAEzBC,SAAU,CAAC,CACTC,OAAQ,MACRC,gBAAiB,CACfC,GAAI9B,EAAgB+B,WACpBhL,KAAM,WAERuJ,SAAUA,EACV0B,QAAS,CACPxB,sBAAuBA,GAEzByB,SAAU,IAEZC,SAAUlC,EAAgBkC,SAC1BC,eAAgB,QAElBC,aAAa,CACX,CACEN,GAAI,UACJ,gBAAiB,cAKvB,OAAO7E,EAAI0C,KAAKhE,EAAU0G,cAAgB,yBAA0B1J,IAGhE2J,EAA2B,SAACC,GAOhC,IANA,MAA0CxC,IAAMlI,WAAxCmI,EAAR,EAAQA,gBAIJG,EAJJ,EAAyBqC,aACI1C,aAAa0B,eAAe,GAAGG,SAASf,QAAO,SAAC6B,GAC3E,OAAQA,EAAGT,QAAQjL,OAASiJ,EAAgB0C,mBAEP,GAAGV,QAAQxB,sBAC9CmC,EAAe,GACV1B,EAAI,EAAGA,EAAId,EAAuBQ,OAAQM,IACjD,GAAId,EAAuBc,GAAGlK,OAASwL,EAAgB,CACrDI,EAAarB,KAAK,CAAEvK,KAAMoJ,EAAuBc,GAAGlK,KAAMwK,MAAOpB,EAAuBc,GAAGM,QAC3F,MAGJ,OAAOoB,GAGHC,EAAiB,WACrB,MAAuD7C,IAAMlI,WAArD2K,EAAR,EAAQA,aAEJ7J,EAAO,CACTkK,QAAS,GACTC,kBAAmB,CAAC,CAClBC,UAAW,UACXC,KAAM,aACNzB,MAAO,CAPX,EAAsB0B,6BAOmBC,6BAA6BC,cAItE,OAAOlG,EAAImG,MAAMzH,EAAU0G,cAAgB,IAAMG,EAAa1C,aAAagC,GAAInJ,IAG3E0K,EAAe,SAACC,EAAiB5B,GACrC,IAAQc,EAAiBzC,IAAMlI,WAAvB2K,aACJe,EAAOf,EAAa1C,aAAa0B,eAAe,GAAGM,GACnD0B,EAAchB,EAAa1C,aAAa0B,eAAe,GAAGG,SAAS,GAAGG,GAEtEnJ,EAAO,CACTkK,QAAS,GACTC,kBAAmB,CAAC,CAClBC,UAAW,QACXC,KAAM,mBAAqBO,EAAO,aAAeC,EAAc,iCAC/DjC,MAAO,CAAC,CAAE,KAAQ,WAAY,MAAS+B,KAEzC,CACEP,UAAW,QACXC,KAAM,mBAAqBO,EAAO,aAAeC,EAAc,iCAC/DjC,MAAO,CAAC,CAAE,KAAQ,YAAa,MAASG,KAE1C,CACEqB,UAAW,QACXC,KAAM,mBAAqBO,EAAO,iCAClChC,MAAO,CAAC,CAAE,MAASG,OAIvB,OAAOzE,EAAImG,MAAMzH,EAAU0G,cAAgB,IAAMG,EAAa1C,aAAagC,GAAInJ,IAG3E8K,EAA2B,SAACC,GAChC,IAAQlB,EAAiBzC,IAAMlI,WAAvB2K,aACFmB,EAAS,OAAGnB,QAAH,IAAGA,OAAH,EAAGA,EAAc1C,aAAa0B,eAAeoC,KAAI,SAACC,GAC/D,MAA+B,QAAxBA,EAAK1B,eAAL,2BACF0B,GADE,IACI1B,eAAgBuB,IAAqBG,KAE9ClL,EAAO,CACTmL,qBAAoB,OAAEtB,QAAF,IAAEA,OAAF,EAAEA,EAAc1C,aACpC0B,eAAgBmC,GAGlB,OAAO1G,EAAI8G,IAAIpI,EAAU0G,cAAgB,IAAMG,EAAa1C,aAAagC,GAAInJ,IAGzEqL,EAAmB,WAAO,IAAD,MAC7B,EAAsCjE,IAAMlI,WAApC2K,EAAR,EAAQA,aAAcyB,EAAtB,EAAsBA,YAElBV,EAAOf,EAAa1C,aAAa0B,eAAe,GAAGM,GACnDoC,EAAkB1B,EAAa1C,aAAa0B,eAAe,GAAGG,SAASf,QAAO,SAAC6B,GACjF,MAA4B,iBAApBA,EAAGT,QAAQjL,QAClB,GAAG+K,GACNrG,QAAQC,IAAIwI,GAEZ,IAAIvL,EAAO,CACTkK,QAAS,GACTC,kBAAmB,CACjB,CACEC,UAAW,SACXC,KAAM,mBAAqBO,EAAO,aAAeW,EACjD3C,MAAO,CAAC,KAEV,CACEwB,UAAW,MACXC,KAAM,mBAAqBO,EAAO,YAClChC,MAAO,WACL0C,EAAYE,2BADP,iBACL,EAAiCxL,YAD5B,iBACL,EAAuCyL,2BADlC,aACL,EAA4DzC,SAAS,OAM7E,OAAO1E,EAAImG,MAAMzH,EAAU0G,cAAgB,IAAMG,EAAa1C,aAAagC,GAAInJ,IAG3E0L,EAAuB,WAC3B,MAA0CtE,IAAMlI,WAAxC2K,EAAR,EAAQA,aAAc8B,EAAtB,EAAsBA,gBAElBf,EAAOf,EAAa1C,aAAa0B,eAAe,GAAGM,GAKnDnJ,EAAO,CACTkK,QAAS,GACTC,kBAAmB,CACjB,CACEC,UAAW,SACXC,KAAM,mBAAqBO,EAAO,aATdf,EAAa1C,aAAa0B,eAAe,GAAGG,SAASf,QAAO,SAAC6B,GACrF,MAA4B,qBAApBA,EAAGT,QAAQjL,QAClB,GAAG+K,GAQAP,MAAO,CAAC,KAEV,CACEwB,UAAW,MACXC,KAAM,mBAAqBO,EAAO,YAClChC,MAAO,CACL+C,EAAgBC,6BAA6BH,oBAAoBzC,SAAS,OAMlF,OAAO1E,EAAImG,MAAMzH,EAAU0G,cAAgB,IAAMG,EAAa1C,aAAagC,GAAInJ,IAG3E6L,EAAe,WACnB,IAAQxE,EAAoBD,IAAMlI,WAA1BmI,gBACAwC,EAAiBzC,IAAMlI,WAAvB2K,aAEJ7J,EAAO,CACTsF,QAAS+B,EAAgB/B,QACzB4E,QAAS,CACP4B,cAAe,CACbC,0BAA2B,GAC3BC,SAAU,CACR3J,OAAQ,SACR4J,QAAS,GACTC,UAAW,GACXC,cAAe,IAEjBC,iBAAkB,IAEpBjF,aAAc0C,EAAa1C,cAE7BkF,YAAa,gBACbC,0BAA0B,EAC1BC,0CAA2C,CACzC,CACEhD,SAAUlC,EAAgBkC,SAC1BJ,GAAIU,EAAa1C,aAAa0B,eAAe,GAAGM,GAChDK,eAAgB,MAChBgD,iCAAkC,KAGtCC,oBAAoB,EACpBC,6BAA6B,GAG/B,OAAOpI,EAAI0C,KAAKhE,EAAU2J,iBAAkB3M,IAGxC4M,EAAgB,WACpB,IAAQ/C,EAAiBzC,IAAMlI,WAAvB2K,aACR,OAAOvF,EAAI0C,KAAKhE,EAAU0G,cAAgB,IAAMG,EAAa1C,aAAagC,GAA1D,oCAGZ0D,EAAsB,SAAC1D,GAC3B,OAAO7E,EAAI5B,IAAIM,EAAU8J,kBAAoB,IAAM3D,IAG/C4D,EAAgC,SAAC5D,GACrC,IAAInJ,EAAY,CACdgN,eAAgB7D,GAElB,OAAO7E,EAAI0C,KAAKhE,EAAUiK,8BAA+BjN,IAGrDkN,EAAW,WAOf,IANA,IAAQ7F,EAAoBD,IAAMlI,WAA1BmI,gBACAwC,EAAiBzC,IAAMlI,WAAvB2K,aACFsD,EAA2B/F,IAAMlI,WACjCkO,EAAkB/F,EAAgB+F,gBAEpCC,EAAW,GACN/E,EAAI,EAAGA,EAAI8E,EAAgBpF,OAAQM,IAC1C+E,EAAS1E,KAAKwE,EAAoBC,EAAgB9E,IAAIgF,aAGxD,IAAItN,EAAO,CACTkK,QAAS,CACP5E,QAAS+B,EAAgB/B,QACzBiI,eAAgB,GAChBpG,aAAc0C,EAAa1C,cAE7BkG,SAAUA,GAGZ,OAAO/I,EAAI0C,KAAKhE,EAAUwK,aAAcxN,IAGpCyN,EAAY,WAChB,IAAQpG,EAAoBD,IAAMlI,WAA1BmI,gBACAwC,EAAiBzC,IAAMlI,WAAvB2K,aAEJ7J,EAAO,CACTkK,QAAS,CACP5E,QAAS+B,EAAgB/B,QACzBiI,eAAgB,GAChBpG,aAAc0C,EAAa1C,eAG/B,OAAO7C,EAAI0C,KAAKhE,EAAU0K,mBAAoB1N,IAG1C2N,EAAoB,WACxB,IAAQ9D,EAAiBzC,IAAMlI,WAAvB2K,aACR,OAAOvF,EAAI5B,IAAIM,EAAU4K,uBAAyB,IAAM/D,EAAa1C,aAAagC,GAAI,CACpF3E,QAAS,CACP,cAAiBqF,EAAa1C,aAAa0G,kBAK3CrM,EAAW,uCAAG,WAAOsM,EAAgBvM,GAAvB,mBAAAyE,EAAA,+DACUoB,IAAMlI,WAA1BmI,EADU,EACVA,gBACJrH,EAAO,GAGTA,EADE8N,EACK,CACLC,SAAUxM,EACVyM,YAAa3G,EAAgB4G,YAC7BC,uBAAwB,CACtBC,6BAA8B,MAC9BC,aAAc,CACZjF,GAAI,EACJjD,QAAS,CACPmI,OAAQ,OACRC,OAAQ3E,EAAyB,iBAAiB,GAAGf,MACrD2F,QAAS5E,EAAyB,0BAA0B,GAAGf,MAC/D4F,QAAS,OAGbrP,KAAM,iBAIH,CACL4O,SAAUxM,EACVyM,YAAa3G,EAAgB4G,YAC7BC,uBAAwB,CACtBC,6BAA8B,MAC9BC,aAAc,CACZjF,GAAI,EACJjD,QAAS,CACPmI,OAAQ,OACRC,OAAQ3E,EAAyB,iBAAiB,GAAGf,MACrD2F,QAAS,KAGbpP,KAAM,iBApCM,kBAwCXmF,EAAI0C,KAAKhE,EAAUyL,WAAYzO,IAxCpB,2CAAH,wDA4CXkC,EAAgB,SAACwM,EAAqBnN,GAE1C,MAA0C6F,IAAMlI,WAAxC2K,EAAR,EAAQA,aAAcxC,EAAtB,EAAsBA,gBAClBrH,EAAO,CACTgO,YAAa3G,EAAgB4G,YAC7BU,gBAAiB,CACf,CACEZ,SAAUxM,EACVqN,OAAQ/E,EAAa1C,aAAagC,GAClCJ,UAAW1B,EAAgB0B,UAC3BO,SAAU,EACVuF,sBAAuB,CACrBC,SAAU,CACR,CACE3F,GAAIuF,EACJtQ,KAAM,SACNe,KAAM,oBAQlB,OAAOmF,EAAI0C,KAAKhE,EAAU+L,eAAgB/O,IAItCgP,EAAoB,SAACC,EAAeC,EAAkBC,EAAkBC,GAC5E,IACIpP,EAAO,CACTgO,YAF0B5G,IAAMlI,WAA1BmI,gBAEuB4G,YAC7BkB,YAAaA,EACbE,OAA+B,MAAvBJ,EAASK,OAAO,GAAa,oBAAsB,QAC3DL,SAAUA,EACVC,YAAaA,EACbK,iBAAkB5F,EAAyB,qBAAqB,GAAGf,MACnE4G,WAAY7F,EAAyB,UAAU,GAAGf,MAClD6G,YAAa9F,EAAyB,0BAA0B,GAAGf,MACnEwG,iBAAqC,IAApBA,EAA2B,OAAS,IAEvD,OAAO9K,EAAI0C,KAAKhE,EAAU0M,sBAAuB1P,IAI7C2P,EAAc,SAACC,GACnB,IAAQvI,EAAoBD,IAAMlI,WAA1BmI,gBACJrH,EAAO,CACTgO,YAAa3G,EAAgB4G,YAC7B4B,QAASxI,EAAgByI,QACzBC,WAAYH,EACZI,SAAU,KACVC,OAAQ,sBAEV,OAAO3L,EAAI0C,KAAKhE,EAAUkN,aAAclQ,IAGpCmQ,EAAc,SAACP,EAAiBvK,EAAoB+K,GACxD,IACIpQ,EAAO,CACTgO,YAF0B5G,IAAMlI,WAA1BmI,gBAEuB4G,YAC7B8B,WAAYH,EACZS,cAAehL,EACfiL,iBAAkBF,GAEpB,OAAO9L,EAAI0C,KAAKhE,EAAUuN,aAAcvQ,IAGpCwQ,EAA4B,SAACvB,EAAewB,GAChD,IAAQpJ,EAAoBD,IAAMlI,WAA1BmI,gBACFqJ,EAAqC,MAAvBzB,EAASK,OAAO,GAAa,oBAAsB,QACvE,OAAO5J,EAAmBhD,IAAIM,EAAU2N,6BAAV,cAAgD1B,EAAhD,mBAAmEyB,EAAnE,wBAA8FrJ,EAAgB4G,aAAe,CACzJzJ,QAAS,CACPC,cAAc,UAAD,OAAYgM,OAMzBG,EAAiB,SAAC3B,EAAe1N,GACrC,MAA0C6F,IAAMlI,WAAxC2K,EAAR,EAAQA,aAAcxC,EAAtB,EAAsBA,gBAClBrH,EAAO,CACTgO,YAAa3G,EAAgB4G,YAC7B4C,OAAQhH,EAAa1C,aAAagC,GAClC2H,UAAW,MACXC,eAAuC,MAAvB9B,EAASK,OAAO,GAAa,oBAAsB,QACnES,WAAYd,EACZlB,SAAUxM,GAEZ,OAAOmE,EAAmBsB,KAAKhE,EAAUgO,aAAchR,EAAM,CAC3DwE,QAAS,CACPC,cAAc,UAAD,OAAY4C,EAAgBoJ,iBAMzCQ,EAAa,SAAChC,EAAeiC,GACjC,MAA0C9J,IAAMlI,WAAxC2K,EAAR,EAAQA,aAAcxC,EAAtB,EAAsBA,gBAChB8J,EAAOxH,EAAyB,0BAA0B,GAAGf,MAC/D5I,EAAO,CACTgO,YAAa3G,EAAgB4G,YAC7B4C,OAAQhH,EAAa1C,aAAagC,GAClCiI,YAAanC,EACboC,UAAkC,MAAvBpC,EAASK,OAAO,GAAa,oBAAsB,QAC9DgC,QAASH,EACTI,UAAWL,GAEb,OAAO5M,EAAI0C,KAAKhE,EAAUwO,qBAAsBxR,IAI5CJ,EAAmB,SAACH,EAAUgS,EAAU9R,GAC5C,IAAIK,EAAO,CACTL,OACA+R,YAAa,UACbjS,MACAgS,OAGF,OAAOnN,EAAI0C,KAAKhE,EAAU2D,wBAAyB3G,IAI/C2R,GAAmB,SAAClS,EAAUC,GAClC,IACIM,EAAO,CACT6P,QAF0BzI,IAAMlI,WAA1BmI,gBAEmByI,QACzB8B,SAAUnS,EACVoS,UAAWnS,GAEb,OAAO4E,EAAI0C,KAAKhE,EAAU8O,oBAAqB9R,IAG3C+R,GAAsB,SAACtS,EAAUC,GACrC,IAAIM,EAAO,CACT,SAAYP,EACZ,UAAaC,EACb,MAAS,KAGX,OAAO4E,EAAI0C,KAAKhE,EAAUgP,wBAAyBhS,EAAM,CAACwE,QAAS,CACjE,eAAgB,aAIdyN,GAAgB,SAACrD,EAAaX,GAClC,IACIjO,EAAO,CACTgO,YAAaC,EACbiE,eAAgBtD,GAElB,MAAoC,WALRxH,IAAMlI,WAA1BmI,gBAKY4G,YACX3J,EAAI0C,KAAKhE,EAAUmP,sBAAuBnS,GAE1CsE,EAAI0C,KAAKhE,EAAUoP,eAAgBpS,IAMxCqS,GAAgB,SAACtE,GACrB,MAA0C3G,IAAMlI,WAAxC2K,EAAR,EAAQA,aAAcxC,EAAtB,EAAsBA,gBAClBrH,EAAO,CACT+N,SAAUA,EACVC,YAAa3G,EAAgB4G,YAC7BqE,QAAS,cACT1D,OAAQ/E,EAAa1C,aAAagC,GAClCJ,UAAW1B,EAAgB0B,WAE7B,OAAOzE,EAAI0C,KAAKhE,EAAUuP,gBAAiBvS,IAIvCwS,GAAiB,SAACC,EAAetD,EAAkBuD,EAAkBC,EAAiBC,EAAmBC,EAAeC,EAAkBC,EAAcC,EAAeC,EAAoB1R,GAC/L,MAA0C6F,IAAMlI,WAAxC2K,EAAR,EAAQA,aAAcxC,EAAtB,EAAsBA,gBAClBrH,EAAO,CACTgO,YAAa3G,EAAgB4G,YAC7BiF,YAAa/D,EACbsD,SAAUA,EACVU,MAAOT,EACPU,KAAMT,EACNU,OAAQT,EACRE,YAAaA,EACbQ,QAASP,GAAoBpJ,EAAyB,kBAAkB,GAAGf,MAC3E4G,WAAY7F,EAAyB,UAAU,GAAGf,MAClDyG,OAA+B,MAAvBwD,EAASvD,OAAO,GAAa,oBAAsB,QAC3DiE,SAAUV,EACVjE,OAAQ/E,EAAa1C,aAAagC,GAClCJ,UAAW1B,EAAgB0B,UAC3ByK,YAAaR,EACbC,cAAeA,EACflF,SAASxM,GAEX,OAAO+C,EAAI0C,KAAKhE,EAAUyQ,iBAAkBzT,IAIxC0T,GAAY,SAAC5D,GACjB,IACI9P,EAAO,CACTgO,YAF0B5G,IAAMlI,WAA1BmI,gBAEuB4G,YAC7B4B,QAASC,GAEX,OAAOxL,EAAI0C,KAAKhE,EAAU2Q,YAAa3T,IAGnC4T,GAAkB,SAAC9D,EAAc3R,GACrC,IACI6B,EAAO,CACTgO,YAF0B5G,IAAMlI,WAA1BmI,gBAEuB4G,YAC7B4B,QAASC,EACT+D,eAAgB1V,GAElB,OAAOmG,EAAI0C,KAAKhE,EAAU8Q,cAAe9T,IAErC+T,GAAoB,SAACC,GACzB,IAAIjN,EAAQ,0DACyCiN,EADzC,0SAoBZ,OAAO1P,EAAI0C,KAAKhE,EAAUiE,cAAe,CAAEF,MAAOA,KAG9CkN,GAAuB,SAACC,EAAUC,EAAgBC,GACtD,IACIpU,EAAO,CACT6P,QAF0BzI,IAAMlI,WAA1BmI,gBAEmByI,QACzBuE,MAAOH,EACP3C,UAAW4C,EACXG,SAAUF,GAEZ,OAAO9P,EAAI0C,KAAKhE,EAAUuR,uBAAwBvU,IAG9CwU,GAAkB,SAACN,EAAUO,EAAgBC,EAAcC,EAAeC,EAAoB1D,EAAgBvR,EAAWkV,EAAeC,GAC5I,IAAQzN,EAAoBD,IAAMlI,WAA1BmI,gBACF0N,EAAiD,WAA3BJ,EAASK,cACnChS,EAAUiS,4BAA8BjS,EAAUkS,iBAChDlV,EAAY,CACdgO,YAAa3G,EAAgB4G,YAC7B4B,QAASxI,EAAgByI,QACzBqF,IAAKjB,EACLkB,SAAUT,EACVU,cAAeT,EACfU,mBAAoBb,EACpBc,iBAAkBb,GAMpB,MAJ+B,WAA3BC,EAASK,eACXQ,OAAOC,OAAOzV,EAAM,CAAEuR,UAAWL,GAAa,CAAEwE,SAAUb,GAAY,CAAEc,KAAMhW,GAAQ,CAAEiW,OAAQd,IAElGhS,QAAQC,IAAI,4CACLuB,EAAI0C,KAAK+N,EAAqB/U,IAGjC6V,GAAqB,SAAC3B,EAAU4B,EAAanB,EAAeF,EAAgBsB,GAChF,IAAQ1O,EAAoBD,IAAMlI,WAA1BmI,gBACF0N,EAAiD,WAA3BJ,EAASK,cACnChS,EAAUgT,+BAAiChT,EAAUiT,oBACnDjW,EAAY,CACdgO,YAAa3G,EAAgB4G,YAC7B4B,QAASxI,EAAgByI,QACzBoG,OAAQJ,EACRX,IAAKjB,GAKP,MAH+B,WAA3BS,EAASK,eACXQ,OAAOC,OAAOzV,EAAM,CAAEoV,SAAUT,GAAY,CAAEY,iBAAkBQ,GAAW,CAAET,mBAAoBb,IAE5FnQ,EAAI0C,KAAK+N,EAAqB/U,IAGjCmW,GAAqB,SAAC9C,GAC1B,IAAQhM,EAAoBD,IAAMlI,WAA1BmI,gBACR,OAAO/C,EAAI5B,IAAIM,EAAUoT,qBAAV,kBAA4C/C,EAA5C,wBAAkEhM,EAAgB4G,eAG7FoI,GAA4B,SAAChD,EAAa5C,GAC9C,IAAQpJ,EAAoBD,IAAMlI,WAA1BmI,gBACR,OAAO3B,EAAmBhD,IAAIM,EAAUoT,qBAAV,kBAA4C/C,EAA5C,wBAAkEhM,EAAgB4G,aAAe,CAC7HzJ,QAAS,CACPC,cAAc,UAAD,OAAYgM,OAKzB6F,GAAc,WAClB,OAAOhS,EAAI5B,IAAIM,EAAUuT,kBAOrBC,GAAqB,SAACC,EAAcC,GACxC,IACI1W,EAAO,CACTgO,YAF0B5G,IAAMlI,WAA1BmI,gBAEuB4G,YAC7B0I,aAAc,WACdC,kBAAmBjN,EAAyB,wBAAwB,GAAGf,MACvEmI,eAAsC,MAAtB0F,EAAQnH,OAAO,GAAa,oBAAsB,QAClEuH,gBAAiBJ,EACjBC,UAAWA,GAEb,OAAOpS,EAAI0C,KAAKhE,EAAU8T,kBAAmB9W,IAIzC+W,GAAiB,SAACC,EAAmBC,GACzC,MAA0C7P,IAAMlI,WAAxC2K,EAAR,EAAQA,aAAcxC,EAAtB,EAAsBA,gBAChB6P,EAAYrN,EAAa1C,aAAa0B,eAAe,GAAGG,SAAS,GAAGE,gBAAgBiO,WACtFnX,EAAO,CACTgO,YAAa3G,EAAgB4G,YAC7BmJ,UAAWJ,EACXK,KAAMJ,EACNpG,OAAQhH,EAAa1C,aAAagC,GAClCmO,YAAa3N,EAAyB,0BAA0B,GAAGf,MACnE2O,UAAWL,GAEb,OAAO5S,EAAI0C,KAAKhE,EAAUwU,aAAcxX,IAIpCU,GAAkB,SAAC+W,EAAanX,EAAYC,EAAWC,EAAgBC,GAC3E,IAAQ4G,EAAoBD,IAAMlI,WAA1BmI,gBACJrH,EAAO,CACTwO,QAAS,KACTjH,QAA0C,YAAlB,OAAfF,QAAe,IAAfA,OAAA,EAAAA,EAAiB4G,aAA2B,SAAW,SAChE7D,UAAW,WACXsN,SAAUnX,EACVoX,UAAW,CACT,CACE,IAAO,iBACP,MAASF,GAEX,CACE,IAAO,aACP,MAASjX,GAEX,CACE,IAAO,aACP,MAASC,KAKd,OAAO6D,EAAI0C,KAAKhE,EAAU4U,sBAAuB5X,IAI9C6X,GAAa,SAACJ,EAAaK,EAA2BvX,EAAWC,EAAgBC,GACrF,IAAIT,EAAO,CACTwO,QAAS,KACTjH,QAAS,WACT6C,UAAW,WACXsN,SAAUnX,EACVoX,UAAW,CACT,CACEI,IAAK,iBACLnP,MAAO6O,GAET,CACEM,IAAK,aACLnP,MAAOpI,GAET,CACEuX,IAAK,aACLnP,MAAOnI,GAET,CACEsX,IAAK,SACLnP,MAAO6O,GAET,CACEM,IAAK,SACLnP,MAAOkP,KAIb,OAAOxT,EAAI0C,KAAKhE,EAAU4U,sBAAuB5X,IAG7CgY,GAAiB,SAACP,EAAanX,EAAYnC,EAAY8Z,EAAkBC,EAAW3X,EAAWC,EAAgBC,GACnH,IAAIT,EAAO,CACTsO,OAAQmJ,EACRU,SAAU7X,EACVoX,SAAUnX,EACVC,UAAWA,EACXC,UAAWA,EACX2X,aAAcH,EACdI,aAAcla,EACdma,cAAe,CAACb,EAAQS,IAE1B,OAAOvS,EAAOqB,KAAKhE,EAAUuV,kBAAmBvY,IAG5CwY,GAAmB,SAAC1X,EAAesX,GACvC,MAA0ChR,IAAMlI,WAC5Cc,GADJ,EAAQ6J,aACG,CACT/I,SAAUA,EACV4W,SAHF,EAAsBrQ,gBAGM9G,KAAKkY,cAC/BjY,UAAW,IACXC,UAAW,IACX2X,aAAcA,IAEhB,OAAOzS,EAAOyF,IAAIpI,EAAU0V,oBAAqB1Y,IAE7C2Y,GAAqB,SAAC9X,EAAUC,GACpC,IAAId,EAAO,CACTa,IAAKA,EACLC,SAAUA,GAEZ,OAAO6E,EAAOyF,IAAIpI,EAAU4V,sBAAuB5Y,IAI/Ce,GAAsB,SAACF,EAAUC,GACrC,IAAId,EAAO,CACToK,UAAW,eACXuN,UAAW,CACT,CACEI,IAAK,SACLnP,MAAO9H,GAET,CACEiX,IAAK,MACLnP,MAAO/H,KAIZ,OAAOyD,EAAI8G,IAAIpI,EAAU6V,0BAA2B7Y,IAKjDkB,GAAW,SAACJ,GAChB,IAAId,EAAO,CACToK,UAAW,aACXuN,UAAW,CACT,CACEI,IAAK,SACLnP,MAAO9H,KAIb,OAAOwD,EAAI8G,IAAIpI,EAAU8V,wBAAyB9Y,IAG9C+Y,GAAgB,SAACnJ,EAAiBtB,EAAa0K,EAAcC,EACjEC,EAAoBjL,EAAkBkL,EAAsBC,EAAgBC,EAAmBC,EAAsBC,GACrH,MAA0CnS,IAAMlI,WAAxC2K,EAAR,EAAQA,aAEJ7J,EAAO,CACT+P,WAAYH,EACZyD,OAAQ/E,EACRkL,aAAcH,EACdI,IAAK,GACLC,QAASV,EACTW,UAAW,GACXC,sBAAuBX,EACvB3B,YAAa4B,EACblJ,SAAiD,OAXnD,EAAsB3I,gBAWM9G,KAAKkY,cAAyB,UAAY,SACpE5H,OAAQhH,EAAa1C,aAAagC,GAClC6E,YAAaC,EACb4L,aAAcT,EACdtG,YAAaqG,EACbW,gBAAiBR,EACjBS,YAAaR,GAEf,OAAOjV,EAAI0C,KAAKhE,EAAUgX,oBAAqBha,IAI3Cia,GAAoB,SAACC,EAAgB5L,EAAazN,EAAUoN,GAChE,MAA0C7G,IAAMlI,WAAxC2K,EAAR,EAAQA,aACJ7J,GADJ,EAAsBqH,gBACX,CACT8S,iBAAkBD,EAClB7G,OAAQ/E,EACR8L,IAAKvZ,EACLgQ,OAAQhH,EAAa1C,aAAagC,GAClC6E,YAAaC,IAEf,OAAO3J,EAAI0C,KAAKhE,EAAUqX,oBAAqBra,IAI3Csa,GAAkB,SAACxK,EAAcoK,EAAgBjM,GACrD,MAA0C7G,IAAMlI,WAAxC2K,EAAR,EAAQA,aAEJ7J,GAFJ,EAAsBqH,gBAEX,CACTwI,QAASC,EACTqK,iBAAkBD,EAClBrJ,OAAQhH,EAAa1C,aAAagC,GAClC6E,YAAaC,IAEf,OAAO3J,EAAI0C,KAAKhE,EAAUuX,sBAAuBva,IAG7Cwa,GAAqB,WAEzB,OAAO5U,EAAUlD,IADR,4EAIL+X,GAAiB,SAAClH,EAAetF,GACrC,MAA0C7G,IAAMlI,WAAxC2K,EAAR,EAAQA,aAEJ7J,GAFJ,EAAsBqH,gBAEX,CACT2G,YAAaC,EACbyM,SAAUnH,EACV1C,OAAQhH,EAAa1C,aAAagC,KAEpC,OAAO7E,EAAI0C,KAAKhE,EAAU2X,gBAAiB3a,IAMvC4a,GAAyB,WAC7B,MAA0CxT,IAAMlI,WAAxC2K,EAAR,EAAQA,aAAcxC,EAAtB,EAAsBA,gBAElBrH,EAAO,CACTwO,QAAS,KACTjH,QAASF,EAAgB4G,YACzB7D,UAAW,qBACXyQ,iBAAkB,OAClBnD,SAAUrQ,EAAgB9G,KAAKyU,cAC/B2C,UAAW,CACT,CACEI,IAAK,mBACLnP,MAAOiB,EAAa1C,aAAagC,MAIvC,OAAO7E,EAAI0C,KAAKhE,EAAU8X,iBAAkB9a,EAAM,CAACwE,QAAS,CAAC,UAAWnB,MAIpE0X,GAAyB,WAC7B,MAA0C3T,IAAMlI,WAAxC2K,EAAR,EAAQA,aAAcxC,EAAtB,EAAsBA,gBAElBrH,EAAO,CACTwO,QAAS,KACTP,YAAa5G,EAAgB4G,YAC7B7D,UAAW,qBACXyQ,iBAAkB,OAClBnD,SAAUrQ,EAAgB9G,KAAKyU,cAC/B2C,UAAW,CACT,CACEI,IAAK,mBACLnP,MAAOiB,EAAa1C,aAAagC,MAItC,OAAO7E,EAAI0C,KAAKhE,EAAUgY,sBAAuBhb,EAAM,CAACwE,QAAS,CAAC,UAAWnB,MAI1E4X,GAAuB,WAAO,IAAD,kBACjC,EAAyD7T,IAAMlI,WAAxDgc,EAAP,EAAOA,gBAAiB7T,EAAxB,EAAwBA,gBAOlBrH,EAAY,CAChBmb,YAAa,SACbzJ,YAH2D,UAAzC,WALH,UADjB,EAAyC7H,aACR1C,aAAa0B,eAAe,GAAGG,SAASf,QAAO,SAAC6B,GAC/E,OAAQA,EAAGT,QAAQjL,OAASiJ,EAAgB0C,0BAD7B,aAAG,EAEf,GAAGV,QAAQxB,sBAAsBI,QAAO,SAACmT,GAC5C,MAAoB,2BAAZA,EAAGhd,SAEmB,UAAZ,mBAAgBwK,aAAhB,eAAuB6P,eAA2B,cAAlD,iBAA4EpR,EAAgBgU,UAI9G5b,IAAG,UAAEyb,EAAgB5N,YAAYgO,MAAM,GAAGC,cAAvC,iBAAE,EAA8C,UAAhD,iBAAE,EAAkD3S,aAApD,aAAE,EAAyD4S,WAC9D/J,IAAG,UAAEyJ,EAAgB5N,YAAYgO,MAAM,GAAGC,cAAvC,iBAAE,EAA8C,UAAhD,iBAAE,EAAkD3S,aAApD,aAAE,EAAyD4S,YAGhE,OADA1Y,QAAQC,IAAI,iDACLuB,EAAI0C,KAAKhE,EAAU0D,sBAAuB1G,IAI7Cyb,GAAoB,SAAChE,EAAa5E,EAActS,GACpD,IAAIP,EAAO,CAETwO,QAAS,KACTjH,QAAS,QACT6C,UAAW,cACXsN,SAAUnX,EACVoX,UAAW,CACT,CACEI,IAAK,iBACLnP,MAAO6O,GAET,CACEM,IAAK,eACLnP,MAAO,UAET,CACEmP,IAAK,YACLnP,MAAOiK,GAET,CACEkF,IAAK,aACLnP,MAAO,WAIb,OAAOtE,EAAI0C,KAAKhE,EAAU0Y,iBAAkB1b,EAAM,CAAEwE,QAAS,CAAE,UAAWvB,EAAG,YAGzE0Y,GAAmB,SAAClE,EAAa5E,EAAetS,EAAW2O,GAC/D,IAAIlP,EAAO,CAETwO,QAAS,KACTjH,QAAS,QACT6C,UAAW,cACXsN,SAAUnX,EACVoX,UAAW,CACT,CACEI,IAAK,iBACLnP,MAAO6O,GAET,CACEM,IAAK,eACLnP,MAAO,UAET,CACEmP,IAAK,YACLnP,MAAOiK,GAET,CACEkF,IAAK,cACLnP,MAAOsG,GAET,CACE6I,IAAK,aACLnP,MAAO,WAIb,OAAOtE,EAAI0C,KAAKhE,EAAU0Y,iBAAkB1b,EAAM,CAAEwE,QAAS,CAAE,UAAWvB,EAAG,YAIzE2Y,GAAwB,SAAC/a,EAAUgb,EAAYC,EAAeC,GAClE,IAAI/b,EAAO,CACToK,UAAW,wBACXuN,UAAW,CACT,CACEI,IAAK,SACLnP,MAAOiT,GAET,CACE9D,IAAK,MACLnP,MAAO/H,GAET,CACEkX,IAAK,iBACLnP,MAAO,KAET,CACEmP,IAAK,YACLnP,MAAOkT,GAET,CACE/D,IAAK,gBACLnP,MAAOmT,KAIb,OAAOzX,EAAI0C,KAAKhE,EAAUgZ,iBAAkBhc,EAAM,CAAEwE,QAAS,CAAE,UAAWvB,EAAG,YAIzEgZ,GAAsB,SAACJ,EAAYK,GACvC,IAAIlc,EAAO,CACToK,UAAW,aACXuN,UAAW,CACT,CACEI,IAAK,SACLnP,MAAOiT,GAET,CACE9D,IAAK,QACLnP,MAAOsT,KAIb,OAAO5X,EAAI8G,IAAIpI,EAAUmZ,eAAgBnc,EAAM,CAAEwE,QAAS,CAAE,UAAWvB,EAAG,YAItEJ,GAAqB,SAACD,EAAiBwZ,GAE3CtZ,QAAQC,IAAIH,EAASwZ,GACrB,IAAIpc,EAAO,CACT,UAAY,GAAZ,OAAgB4C,EAAhB,YAA2BwZ,IAE7B,OAAO5W,IAAMwB,KAAN,UAAcxD,GAAd,OAA0BC,GAAgBzD,IAG7Cqc,GAAwB,WAC5B,OAAO/X,EAAI5B,IAAIM,EAAUsZ,wBAGrBC,GAAsB,SAACvc,GAC3B,OAAOsE,EAAI0C,KAAKhE,EAAUwZ,mBAAoBxc,K,q7ECxvChD,4IAGWyc,EAHX,gB,SAGWA,K,kDAAAA,E,oDAAAA,E,kDAAAA,E,oDAAAA,E,4DAAAA,E,0DAAAA,E,2DAAAA,M,KAUX,IAAMC,EAAoB,SAAC3O,GACzB,OAAO,SAAU9O,EAAeC,GAC9BmT,YAActE,GAAUlO,MAAK,SAACC,GAC1BgD,QAAQC,IAAIjD,GACZb,EAAS,CAACE,KAAMsd,EAAyBE,wBAAyBtd,QAAQS,EAASE,UAEtFC,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAK/D0c,EAAqB,SAACnK,EAAetD,EAAkB0N,EAAUzJ,EAAWR,EAAmBC,EAAeC,EAAkBC,EAAcC,EAAeC,EAAoB1R,GACrL,OAAO,SAAUtC,EAAeC,GAC9BsT,aAAeC,EAAUtD,EAAa0N,EAAKzJ,EAAMR,EAAcC,EAAUC,EAAaC,EAASC,EAAUC,EAAe1R,GAAU1B,MAAK,SAACC,GACpIb,EAAS,CAACE,KAAMsd,EAAyBK,yBAA0Bzd,QAAQ,CAAC0d,QAASjd,QAExFG,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAiB/D8c,EAA0B,SAAEvK,EAAewK,EAAiBC,EAA0BtS,EAAWuS,GACrG,OAAO,SAAUle,EAAeC,GAC9BD,EAAS,CAACE,KAAMsd,EAAyBW,6BAA8B/d,QAAQ,CAACoT,SAAUA,EAAUwK,WAAYA,EAAYC,oBAAqBA,EAAqBtS,KAAMA,EAAMuS,aAAcA,KAChMle,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,2B,iCCrDvE,4IAGWge,EAHX,gB,SAGWA,K,kDAAAA,E,oDAAAA,E,kDAAAA,E,oDAAAA,E,4DAAAA,E,0DAAAA,E,2DAAAA,M,KAUX,IAAMX,EAAoB,SAAC3O,GACzB,OAAO,SAAU9O,EAAeC,GAC9BmT,YAActE,GAAUlO,MAAK,SAACC,GAC1BgD,QAAQC,IAAIjD,GACZb,EAAS,CAACE,KAAMke,EAA4BV,wBAAyBtd,QAAQS,EAASE,UAEzFC,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAK/D0c,EAAqB,SAACnK,EAAetD,EAAkB0N,EAAUzJ,EAAWR,EAAmBC,EAAeC,EAAkBC,EAAcC,EAAeC,EAAoB1R,GACrL,OAAO,SAAUtC,EAAeC,GAC9BsT,aAAeC,EAAUtD,EAAa0N,EAAKzJ,EAAMR,EAAcC,EAAUC,EAAaC,EAASC,EAAUC,EAAe1R,GAAU1B,MAAK,SAACC,GACpIb,EAAS,CAACE,KAAMke,EAA4BP,yBAA0Bzd,QAAQ,CAAC0d,QAASjd,EAASE,WAEpGC,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAiB/D8c,EAA0B,SAAEvK,EAAewK,EAAiBC,EAA0BtS,EAAWuS,GACrG,OAAO,SAAUle,EAAeC,GAC9BD,EAAS,CAACE,KAAMke,EAA4BD,6BAA8B/d,QAAQ,CAACoT,SAAUA,EAAUwK,WAAYA,EAAYC,oBAAqBA,EAAqBtS,KAAMA,EAAMuS,aAAcA,KACnMle,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,8B,iCCrDvE,8KAEWie,EAFX,gB,SAEWA,K,gDAAAA,E,sEAAAA,E,sEAAAA,E,iEAAAA,M,KASX,IAAMC,EAAuB,SAAC1c,EAAUoB,GACpC,OAAO,SAAUhD,EAAeC,GAC5BD,EAAS,CAAEE,KAAMme,EAAsBE,uBAAwBne,QAAS,CAAEwB,IAAKA,EAAKoB,iBAAkBA,KACtGhD,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,uBAIrEe,EAAc,SAACwP,EAAiBtB,EAAa0K,EAAcC,EAAmBC,EAAoBjL,EAAkBkL,EAAsBC,EAAgBC,EAAmBC,EAAsBC,GACrM,OAAO,SAAUta,EAAeC,GAC5B6Z,YAAcnJ,EAAYtB,EAAQ0K,EAASC,EAAcC,EAAejL,EAAakL,EAAiBC,EAAWC,EAAcC,EAAiBC,GAAa1Z,MAAK,SAACC,GAC/Jb,EAAS,CAAEE,KAAMme,EAAsBG,kCAAmCpe,QAASS,OAElFG,OAAM,SAACC,IACJ,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACPb,EAAS,CAAEE,KAAMme,EAAsBG,kCAAmCpe,QAASa,EAAMJ,WAEzFb,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAM7Ewd,EAAc,SAACxD,EAAgB5L,EAAazN,EAAUoN,GACxD,OAAO,SAAUhP,EAAeC,GAC5B+a,YAAkBC,EAAW5L,EAAQzN,EAAKoN,GAAapO,MAAK,SAACC,GACzDb,EAAS,CAAEE,KAAMme,EAAsBK,kCAAmCte,QAASS,OAElFG,OAAM,SAACC,IAEJ,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACPb,EAAS,CAAEE,KAAMme,EAAsBK,kCAAmCte,QAAO,OAAEa,QAAF,IAAEA,OAAF,EAAEA,EAAOJ,WAE1Fb,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAM7E0d,EAAY,SAAC9N,EAAcoK,EAAgBjM,GAC7C,OAAO,SAAUhP,EAAeC,GAC5Bob,YAAgBxK,EAASoK,EAAWjM,GAAapO,MAAK,SAACC,GACnDb,EAAS,CAAEE,KAAMme,EAAsBO,+BAAgCxe,QAASS,OAE/EG,OAAM,SAACC,IAEJ,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACPb,EAAS,CAAEE,KAAMme,EAAsBO,+BAAgCxe,QAAO,OAAEa,QAAF,IAAEA,OAAF,EAAEA,EAAOJ,WAEvFb,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,U,iCC3DnF,8KAEW4d,EAFX,gB,SAEWA,K,wDAAAA,E,8EAAAA,E,8EAAAA,E,yEAAAA,M,KASX,IAAMP,EAAuB,SAAC1c,EAAUoB,GACpC,OAAO,SAAUhD,EAAeC,GAC5BD,EAAS,CAAEE,KAAM2e,EAAyBC,2BAA4B1e,QAAS,CAAEwB,IAAKA,EAAKoB,iBAAkBA,KAC7GhD,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,0BAIrEe,EAAc,SAACkO,EAAa0P,EAAezd,EAAWC,EAAgBC,GACxE,OAAO,SAAUxB,EAAeC,GAC5B2Y,YAAWvJ,EAAQ0P,EAAUzd,EAAMC,EAAWC,GAAWZ,MAAK,SAACC,GAC3Db,EAAS,CAAEE,KAAM2e,EAAyBG,sCAAuC5e,QAASS,OAEzFG,OAAM,SAACC,IAEJ,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACPb,EAAS,CAAEE,KAAM2e,EAAyBG,sCAAuC5e,QAASa,EAAMJ,WAEhGb,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAM7Ewd,EAAc,SAAC7c,EAAUC,GAC3B,OAAO,SAAU7B,EAAeC,GAC5B6B,YAAoBF,EAAKC,GAAUjB,MAAK,SAACC,GACrCb,EAAS,CAAEE,KAAM2e,EAAyBI,sCAAuC7e,QAASS,OAEzFG,OAAM,SAACC,IAEJ,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACPb,EAAS,CAAEE,KAAM2e,EAAyBI,sCAAuC7e,QAASa,EAAMJ,WAEhGb,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAM7E0d,EAAY,SAAC9c,GACf,OAAO,SAAU7B,EAAeC,GAC5BgC,YAASJ,GAAUjB,MAAK,SAACC,GACrBb,EAAS,CAAEE,KAAM2e,EAAyBK,mCAAoC9e,QAASS,OAEtFG,OAAM,SAACC,IAEJ,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACXb,EAAS,CAAEE,KAAM2e,EAAyBK,mCAAoC9e,QAAO,OAAEa,QAAF,IAAEA,OAAF,EAAEA,EAAOJ,WAE9Fb,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,U,iCC5D7E,8KAEWke,EAFX,gB,SAEWA,K,gDAAAA,E,4DAAAA,E,4DAAAA,E,uDAAAA,M,KASX,IAAMb,EAAuB,SAAC1c,EAAUoB,GACpC,OAAO,SAAUhD,EAAeC,GAC5BD,EAAS,CAAEE,KAAMif,EAA6BZ,uBAAwBne,QAAS,CAAEwB,IAAKA,EAAKoB,iBAAkBA,KAC7GhD,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,8BAIrEe,EAAc,SAACkO,EAAahO,EAAYnC,EAAY8Z,EAAkBC,EAAW3X,EAAWC,EAAgBC,GAC9G,OAAO,SAAUxB,EAAeC,GAC5B8Y,aAAe1J,EAAQhO,EAAOnC,EAAO8Z,EAAaC,EAAM3X,EAAMC,EAAWC,GAAWZ,MAAK,SAACC,GACtFb,EAAS,CAAEE,KAAMif,EAA6BC,6BAA8Bhf,QAASS,OAEpFG,OAAM,SAACC,IAEJ,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACPb,EAAS,CAAEE,KAAMif,EAA6BC,6BAA8Bhf,QAASa,EAAMJ,WAE3Fb,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAM7Ewd,EAAc,SAAC7c,EAAUC,GAC3B,OAAO,SAAU7B,EAAeC,GAC5ByZ,aAAmB9X,EAAKC,GAAUjB,MAAK,SAACC,GACpCb,EAAS,CAAEE,KAAMif,EAA6BE,6BAA8Bjf,QAASS,OAEpFG,OAAM,SAACC,IAEJ,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACPb,EAAS,CAAEE,KAAMif,EAA6BE,6BAA8Bjf,QAAO,OAAEa,QAAF,IAAEA,OAAF,EAAEA,EAAOJ,WAE5Fb,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAM7E0d,EAAY,SAAC9c,EAAesX,GAC9B,OAAO,SAAUnZ,EAAeC,GAC5BsZ,aAAiB1X,EAAUsX,GAAcvY,MAAK,SAACC,GAC3Cb,EAAS,CAAEE,KAAMif,EAA6BG,0BAA2Blf,QAASS,OAEjFG,OAAM,SAACC,IAEJ,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACPb,EAAS,CAAEE,KAAMif,EAA6BG,0BAA2Blf,QAAO,OAAEa,QAAF,IAAEA,OAAF,EAAEA,EAAOJ,WAEzFb,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,U,iCC5DnF,wEAEWse,EAFX,Q,SAEWA,K,mCAAAA,M,KAIX,IAAMC,EAAe,SAACzc,EAAgBC,GACpC,OAAO,SAAUhD,EAAeC,GAC9BD,EAAS,CAAEE,KAAMqf,EAAgBE,gBAAiBrf,QAAS,CAAC2C,UAAUA,EAAWC,iBAAkBA,KACnGhD,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,kB,iCCTvE,wEAEWsf,EAFX,Q,SAEWA,K,iCAAAA,M,KAIX,IAAMC,EAAgB,SAAC5c,EAAgB6c,EAAoB5c,GACzD,OAAO,SAAUhD,EAAeC,GAC9BD,EAAS,CAAEE,KAAMwf,EAAmBG,eAAgBzf,QAAS,CAAE2C,UAAWA,EAAW6c,cAAeA,EAAe5c,iBAAkBA,KACrIhD,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,qB,iCCTvE,wEAEW0f,EAFX,Q,SAEWA,K,mCAAAA,M,KAIX,IAAMC,EAAiB,SAAChd,EAAgBC,GACpC,OAAO,SAAUhD,EAAeC,GAC5BD,EAAS,CAAEE,KAAM4f,EAAsBE,gBAAiB5f,QAAS,CAAE2C,UAAWA,EAAWC,iBAAkBA,KAC3GhD,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,wB,iCCT3E,4IAGW6f,EAHX,gB,SAGWA,K,kCAAAA,E,kCAAAA,E,8CAAAA,E,8CAAAA,E,4DAAAA,E,6DAAAA,M,KASX,IAAMC,EAAmB,SAACrP,GACtB,OAAO,SAAU7Q,EAAeC,GAC5BwU,YAAU5D,GAASjQ,MAAK,SAACC,GACrBgD,QAAQC,IAAIjD,GACZb,EAAS,CAACE,KAAM+f,EAAkBE,gBAAiB/f,QAASS,EAASE,UAExEC,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKnEmf,EAAsB,SAACvP,EAAc3R,GACvC,OAAO,SAAUc,EAAeC,GAC5B0U,YAAgB9D,EAAS3R,GAAO0B,MAAK,SAACC,GAClCgD,QAAQC,IAAIjD,GACZb,EAAS,CAACE,KAAM+f,EAAkBI,sBAAuBjgB,QAASS,OAErEG,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKnEqf,EAAwB,SAACjR,GAC3B,OAAO,SAAUrP,EAAeC,GAC9BiX,YAAmB7H,GAAQzO,MAAK,SAACC,GAC7BgD,QAAQC,IAAIjD,GACZb,EAAS,CAACE,KAAM+f,EAAkBM,6BAA8BngB,QAAQS,EAASE,UAEpFC,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,U,iCC9CvE,8KAGWuf,EAHX,gB,SAGWA,K,kCAAAA,E,8DAAAA,E,qDAAAA,M,KAMX,IAAMC,EAAiB,SAAC1L,GACpB,OAAO,SAAU/U,EAAeC,GAC5B6U,YAAkBC,GAAanU,MAAK,SAACC,GACjCb,EAAS,CAACE,KAAMsgB,EAAeE,8BAA+BtgB,QAAQS,EAASE,UAElFC,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKnE0f,EAAkB,WACpB,OAAO,SAAU3gB,EAAeC,GAC5B0b,cAAyB/a,MAAK,SAACC,GAC3Bb,EAAS,CAACE,KAAMsgB,EAAeI,yBAA0BxgB,QAAQS,OAEpEG,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKnE4f,EAAsB,WACxB,OAAO,SAAU7gB,EAAeC,GAC5B6b,cAAyBlb,MAAK,SAACC,GAC3Bb,EAAS,CAACE,KAAMsgB,EAAeI,yBAA0BxgB,QAAQS,OAEpEG,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKnE6f,EAAiB,SAACC,GACpB,OAAO,SAAU/gB,EAAeC,GAC9BD,EAAS,CAAEE,KAAMsgB,EAAeQ,gBAAiB5gB,QAAS,CAAC2gB,cAAcA,KACzE/gB,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,wC,iCChDzE,4IAGW6gB,EAHX,gB,SAGWA,K,wDAAAA,E,wDAAAA,E,oDAAAA,E,oDAAAA,E,+CAAAA,M,KAQX,IAAMC,EAAyB,SAAClR,EAAe1N,GAC3C,OAAO,SAAUtC,EAAeC,GAC5B0R,YAAe3B,EAAU1N,GAAU1B,MAAK,SAACC,GACrCb,EAAS,CAACE,KAAM+gB,EAAkBE,2BAA4B/gB,QAAQS,OAEzEG,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKnEmgB,EAA0B,SAACrM,GAC7B,OAAO,SAAU/U,EAAeC,GAC5B6U,YAAkBC,GAAanU,MAAK,SAACC,GACjCb,EAAS,CAACE,KAAM+gB,EAAkBI,yBAA0BjhB,QAAQS,EAASE,UAEhFC,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKnEqgB,EAAoB,SAAEC,EAAyBve,GACjD,OAAO,SAAUhD,EAAeC,GAC5BD,EAAS,CAAEE,KAAM+gB,EAAkBO,sBAAuBphB,QAAS,CAAEmhB,mBAAoBA,EAAoBve,iBAAkBA,KAC/HhD,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,oB,iCCtC3E,4IAGWqhB,EAHX,gB,SAGWA,K,oDAAAA,E,oDAAAA,E,0DAAAA,E,0DAAAA,E,oDAAAA,E,qDAAAA,M,KASX,IAAMC,EAAuB,SAACzM,EAAYO,EAAkBC,EAAgBC,EAAeC,EAAmB1D,EAAgBvR,EAAWkV,EAAeC,GACpJ,OAAO,SAAU7V,EAAcC,GAC3BsV,YAAgBN,EAAKO,EAAWC,EAASC,EAAUC,EAAe1D,EAAWvR,EAAMkV,EAAUC,GAAQjV,MAAK,SAACC,GACvGb,EAAS,CAACE,KAAMuhB,EAAyBE,yBAA0BvhB,QAAQS,OAE9EG,OAAM,SAACC,IAEJ,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACPb,EAAS,CAAEE,KAAMuhB,EAAyBE,yBAA0BvhB,QAAO,OAAEa,QAAF,IAAEA,OAAF,EAAEA,EAAOJ,WAEpFb,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAMzE2gB,EAAyB,SAAC3M,EAAY4M,EAAUC,EAAqBpM,GACvE,OAAO,SAAU1V,EAAcC,GAC3B2W,YAAmB3B,EAAK4M,EAAK3X,GAAIwL,EAAUmM,EAAKE,MAAOF,EAAKG,KAAKphB,MAAK,SAACC,GACnEb,EAAS,CAACE,KAAMuhB,EAAyBQ,4BAA6B7hB,QAAQ,CAAC0hB,aAAaA,EAAcI,iBAAiBL,EAAKE,MAAOI,eAAeN,EAAKG,IAAKnL,OAAOgL,EAAK3X,GAAIwL,SAASA,EAAU7U,SAAUA,KAC7Mb,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,2BAEtEY,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKnEmhB,EAAkB,WACpB,OAAO,SAAUpiB,EAAcC,GAC3BD,EAAS,CAACE,KAAMuhB,EAAyBY,2BACzCriB,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,2B,iCC5C3E,4IAGWkiB,EAHX,gB,SAGWA,K,sDAAAA,E,sDAAAA,E,kDAAAA,E,kDAAAA,E,iDAAAA,M,KAQX,IAAMC,EAAuB,SAACpY,GAC5B,OAAO,SAAUnK,EAAeC,GAC9BgI,YAAckC,GAAYvJ,MAAK,SAACC,GAC1Bb,EAAS,CAACE,KAAMoiB,EAAsBE,wBAAyBpiB,QAAQS,EAASE,UAEnFC,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKjEwhB,EAAuB,SAACC,EAAeC,GAC3C,OAAO,SAAU3iB,EAAeC,GAC9BsX,YAAmBmL,EAAUC,GAAS/hB,MAAK,SAACC,GACtCb,EAAS,CAACE,KAAMoiB,EAAsBM,0BAA2BxiB,QAAQS,OAE5EG,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKjE4hB,EAAsB,SAAEC,EAA8BC,EAAgBC,EAAuBhgB,EAAuBigB,GAAgD,IAA3BC,EAA0B,uDAAP,GAChK,OAAO,SAAUljB,EAAeC,GAC5BD,EAAS,CAAEE,KAAMoiB,EAAsBa,uBAAwB/iB,QAAS,CAAE0iB,wBAAyBA,EAAyBC,UAAWA,EAAWC,iBAAkBA,EAAkBhgB,iBAAkBA,EAAkBigB,eAAgBA,EAAgBC,YAAaA,KACvQljB,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,wB,iCCtCzE,0GAGWgjB,EAHX,gB,SAGWA,K,wCAAAA,E,4CAAAA,E,6CAAAA,M,KAMX,IAAMC,EAAgB,SAACtL,EAAmBC,GACxC,OAAO,SAAUhY,EAAeC,GAC9B6X,YAAeC,EAAcC,GAC1BpX,MAAK,SAACC,GACLb,EAAS,CAAEE,KAAMkjB,EAAwBE,qBAAsBljB,QAASS,OAEzEG,OAAM,SAACC,IAEN,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACTb,EAAS,CAAEE,KAAMkjB,EAAwBG,qBAAsBnjB,QAAO,OAAEa,QAAF,IAAEA,OAAF,EAAEA,EAAOJ,WAE/Eb,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAMnEuiB,EAAmB,SAACC,EAAgBzL,EAAiB0L,EAA0B1gB,GACnF,OAAO,SAAUhD,EAAeC,GAC9BD,EAAS,CAAEE,KAAMkjB,EAAwBO,mBAAoBvjB,QAAS,CAAEqjB,UAAWA,EAAWzL,WAAYA,EAAY0L,oBAAqBA,EAAqB1gB,iBAAkBA,KAClLhD,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,0B,4CC3BjE4D,EAAUV,OACZA,OAAOC,SAASqgB,KAAKpc,SAAS,eAChC3D,QAAQC,IAAI,iCACZE,EAAG,KAAW,KAGdA,EAAG,WAAiB,QACpBV,OAAOugB,eAAe1Z,WAAa,uBAKnC7G,OAAOugB,eAAeC,WAAa,+EACnCxgB,OAAOugB,eAAeE,gBAAkB,MACxCzgB,OAAOugB,eAAevb,QAAU,WAChChF,OAAOugB,eAAezH,SAAW,WACjC4H,SAASC,gBAAgB3iB,KAAO0C,EAAG,MAChCA,EAAG,YAAkBA,EAAG,UAAgBkgB,8KAAYC,sBACpDngB,EAAG,cAAoBA,EAAG,YAAkBkgB,8KAAYE,uBACxDpgB,EAAG,YAAkBA,EAAG,UAAgBkgB,8KAAYG,qBACpDrgB,EAAG,uBAA6BA,EAAG,qBAA2B,KAC9DA,EAAG,sBAA4BA,EAAG,oBAA0B,qCAC5DA,EAAG,kBAAwBA,EAAG,gBAAsB,wBACpDA,EAAG,oBAA0BA,EAAG,kBAAwB,QACxDA,EAAG,qBAA2BA,EAAG,mBAAyB,iCAE1DA,EAAG,sBAA4BA,EAAG,oBAA0BkgB,8KAAYI,6BACxEtgB,EAAG,UAAgBA,EAAG,QAAckgB,8KAAYK,kBAChDvgB,EAAG,eAAqBA,EAAG,aAAmB,qBAC9CA,EAAG,iBAAuBA,EAAG,eAAqB,+CAClDA,EAAG,gBAAsBA,EAAG,cAAoB,mEAChDA,EAAG,mBAAyBA,EAAG,iBAAuB,mEACtDA,EAAG,wBAA8BA,EAAG,sBAA4B,iEAChEA,EAAG,uBAA6BA,EAAG,qBAA2B,wEAC9DA,EAAG,UAAgBA,EAAG,QAAc,2DACpCA,EAAG,eAAqBA,EAAG,aAAmB,2DAC9CA,EAAG,aAAmBA,EAAG,WAAiB,0DAC1CA,EAAG,gBAAsBA,EAAG,cAAoB,oDAChDA,EAAG,iBAAuBA,EAAG,eAAqB,uEAClDA,EAAG,gBAAsBA,EAAG,cAAoB,8DAChDA,EAAG,4BAAkCA,EAAG,0BAAgC,gFACxEA,EAAG,qBAA2BA,EAAG,mBAAyB,yEAC1DA,EAAG,oBAA0BA,EAAG,kBAAwBkgB,8KAAYM,sBACpExgB,EAAG,qBAA2BA,EAAG,mBAAyBkgB,8KAAYO,uBACtEzgB,EAAG,aAAmBA,EAAG,WAAiBkgB,8KAAYQ,qBACtD1gB,EAAG,aAAmBA,EAAG,WAAiB,uDAC1CA,EAAG,eAAqBA,EAAG,aAAmBkgB,8KAAYS,kBAC1D3gB,EAAG,mBAAyBA,EAAG,iBAAuBkgB,8KAAYU,qBAClE5gB,EAAG,0BAAgCA,EAAG,wBAA8BkgB,8KAAYW,uBAChF7gB,EAAG,wBAA8BA,EAAG,sBAA4B,qBAChEA,EAAG,+BAAqCA,EAAG,6BAAmC,iGAC9EA,EAAG,qBAA2BA,EAAG,mBAAyB,iD,iCCrD/D,0GAGW8gB,EAHX,gB,SAGWA,K,gEAAAA,E,gEAAAA,E,uDAAAA,M,KAMX,IAAMC,EAAuB,SAAC/U,EAAeiC,GACzC,OAAO,SAAUjS,EAAcC,GAC3B+R,YAAWhC,EAAUiC,GAAWrR,MAAK,SAACC,GAClCb,EAAS,CAACE,KAAM4kB,EAAsBE,+BAAgC5kB,QAAQS,EAASE,UAE1FC,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKnEgkB,EAAwB,SAACC,EAA8BliB,GACzD,OAAO,SAAUhD,EAAcC,GAC3BD,EAAS,CAAEE,KAAM4kB,EAAsBK,0BAA2B/kB,QAAS,CAAE8kB,wBAAyBA,EAAyBliB,iBAAkBA,KACjJhD,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,wB,iCCxB3E,0GAGWglB,EAHX,gB,SAGWA,K,wCAAAA,E,gEAAAA,E,iEAAAA,M,KAMX,IAAMC,EAAmB,SAACpQ,EAASC,EAAeQ,GAC9C,OAAO,SAAU1V,EAAeC,GAC5B+U,YAAqBC,EAAKC,EAAWQ,GAAU9U,MAAK,SAACC,GACjDb,EAAS,CAAEE,KAAMklB,EAAiBE,+BAAgCllB,QAASS,EAASE,UAEvFC,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKnEskB,EAAa,SAAC7kB,EAAWkV,EAAeC,EAAa2P,GACvD,OAAO,SAAUxlB,EAAeC,GAC5BD,EAAS,CAAEE,KAAMklB,EAAiBK,mBAAoBrlB,QAAS,CAACM,KAAMA,EAAMkV,SAAUA,EAAWC,OAAQA,EAAS2P,cAAeA,KACjIxlB,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,mB,iCCxB3E,0GAGWslB,EAHX,gB,SAGWA,K,8DAAAA,E,8DAAAA,E,6CAAAA,M,KAMX,IAAMC,EAA4B,WAC9B,OAAO,SAAU3lB,EAAcC,GAC3B+b,cAAuBpb,MAAK,SAACC,GACzBb,EAAS,CAACE,KAAMwlB,EAA0BE,8BAA+BxlB,QAAQS,OAEpFG,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMwlB,EAA0BG,8BAA+BzlB,QAAQa,EAAMJ,gBAM7FilB,EAAqB,SAAC/kB,GACxB,OAAO,SAAUf,EAAcC,GAC3BD,EAAS,CAACE,KAAMwlB,EAA0BK,qBAAsB3lB,QAAQW,IACxEf,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,4B,iCCzB3E,OAAe,cAA0B,uC,oCCG9B4lB,E,sHCQLhiB,EAAWV,OACb2iB,EAAsB,OAAhBjiB,EAAG,MAAqC,OAAhBA,EAAG,KAAoB,MAAQ,MAC3D1C,EAAO0C,EAAG,KAGVkiB,EAAY,CACdC,IAHiB,OAAT7kB,EAIR2kB,IAAKA,EACL3kB,KAAMA,EACN6M,gBAAiB,GACjBiY,cAAe,GACfC,SAAU,GACVlc,WAAY,GACZ2Z,WAAY,GACZphB,YAAa,IACb4F,QAAS,GACT8T,SAAU,GACVnb,MAAO,GACPuN,UAAW,GACX1D,gBAAiB,GACjB+N,qBAAsB,GACtByN,gBAAiB,GACjBC,eAAgB,GAChBC,mBAAoB,gBACpBC,aAAc,GACdC,kBAAmB,GACnB3H,SAAU,SACVjV,UAAW,GACX+G,QAAS,GACT8V,YAAa,GACbC,qBAAsB,GACtBC,SAAU,GACV/S,QAAS,GACTgT,WAAY,GACZzgB,QAAS,CAAEud,KAAM,GAAI1Z,GAAI,iBAAkB/K,KAAM,UAAW4nB,KAAM,IAClEzc,SAAU,GACVpL,MAAO,GACP8nB,YAAa,GACbC,eAAgBjjB,EAAG,SAEnBgL,YAAa,cACbkY,aAAc,GACdC,UAAU,EACV3V,YAAa,GACb4V,oBAAoB,IAElBC,EAAc,SAAC/c,GACjB,OAAQA,GACJ,IAAK,MACD,MAAO,CAAEJ,GAAI,kBAAmB/K,KAAM,UAE1C,IAAK,WACD,MAAO,CAAE+K,GAAI,6BAA8B/K,KAAM,mBAIvDmoB,EAAe,SAAChf,GAalB,MAXgB,gBAAZA,GAAyC,gBAAZA,EACjB,WACO,aAAZA,EACK,WACO,QAAZA,EACK,MACLA,EAAQd,SAAS,QACZ,OAEA,cAKd+f,EAAiB,SAACjf,EAAcge,GAElC,IAAIkB,EAA6B,KAApBlB,GAA8C,iBAApBA,EAAqC,GAAKA,EACjF,OAAQhe,GACJ,IAAK,UACD,MAAkB,KAAXkf,EAAgB,cAAqC,SAApBlB,EAA6B,kBAAoB,SAE7F,IAAK,OACD,MAAO,kBAEX,IAAK,MACD,MAAkB,KAAXkB,EAAgB,cAAqC,SAApBlB,EAA6B,mBAAqB,kBAE9F,IAAK,WACD,MAAO,WAEX,IAAK,cACD,MAAO,gBAEX,IAAK,cACD,MAAkB,KAAXkB,EAAgB,cAAqC,SAApBlB,EAA6B,gBAAkB,eAE3F,IAAK,OAGL,IAAK,eAGL,IAAK,gBACD,MAAO,SAyKJmB,EApKgB,WAA0C,IAAD,kCAAxCC,EAAwC,uDAA3BxB,EAAWlc,EAAgB,uCAC5D9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QAER,OAAQF,GACJ,KAAKG,IAAsBsnB,KAC3B,KAAKtnB,IAAsBunB,yBAC3B,KAAKvnB,IAAsBwnB,4BAC3B,KAAKxnB,IAAsBynB,8BAC3B,KAAKznB,IAAsB0nB,0BAC3B,KAAK1nB,IAAsB2nB,uCAC3B,KAAK3nB,IAAsB4nB,kCAC3B,KAAK5nB,IAAsB6nB,8BAC3B,KAAK7nB,IAAsB8nB,8BAC3B,KAAK9nB,IAAsB+nB,0BAC3B,KAAK/nB,IAAsBgoB,sBAC3B,KAAKhoB,IAAsBioB,sBAC3B,KAAKjoB,IAAsBkoB,sBAC3B,KAAKloB,IAAsBmoB,qBACvB,OAAO,2BAAKd,GAAZ,IAAmBrB,SAAUnmB,IAEjC,KAAKG,IAAsBooB,gBACvB,OAAO,2BACAf,GADP,IACcrB,SAAUnmB,EACpBoI,QAASlI,EAAQkI,QACjBwB,UAAWwd,EAAalnB,EAAQkI,SAChCgC,SAAU+c,EAAYjnB,EAAQ2jB,iBAC9B5Z,WAAY/J,EAAQ+J,WACpBiS,SAAUhc,EAAQgc,SAClB0H,WAAY1jB,EAAQ0jB,WACpB9U,YAAauY,EAAennB,EAAQkI,QAASof,EAAMpB,mBAG3D,KAAKjmB,IAAsBqoB,yBACvB,OAAO,2BAAKhB,GAAZ,IAAmBlZ,UAAWpO,IAElC,KAAKC,IAAsBC,iBACvB,OAAO,2BACAonB,GADP,IACcrB,SAAUnmB,EACpBiO,gBAAgB,GAAD,mBAAMuZ,EAAMvZ,iBAAZ,YAAgC/N,MAGvD,KAAKC,IAAsBsoB,yBACvB,OAAO,2BACAjB,GADP,IACcrB,SAAUnmB,EACpBiO,gBAAgB,YAAKuZ,EAAMvZ,gBAAgBnJ,MAAM,EAAG0iB,EAAMvZ,gBAAgBpF,OAAS3I,MAG3F,KAAKC,IAAsBuoB,gBACvB,IAAIxa,EAAWsZ,EAAMlZ,UAAUJ,SAASpC,KAAI,SAAC6c,GAAD,OAAkBA,EAAQC,aAClEC,EAAQ3a,EAASpC,KAAI,SAAC6c,GACtB,OACIG,EAAWC,iBAAiBjgB,QAAO,SAACkgB,GAChC,OAAQA,EAAKC,oBAAsBN,KACpC,GAAGA,WAId,OADAhlB,QAAQC,IAAIilB,EAAM/jB,MAAM,EAAG+jB,EAAMK,QAAQhpB,EAAQyoB,WAC1C,2BACAnB,GADP,IACcrB,SAAUnmB,EACpBkmB,cAAehmB,EAAQyoB,QACvBhC,SAAUzmB,EAAQipB,OAAOxC,SAAWzmB,EAAQipB,OAAOxC,SAAWa,EAAMb,SACpE1c,WAAY/J,EAAQipB,OAAOlf,WAAa/J,EAAQipB,OAAOlf,WAAaud,EAAMvd,WAC1E2Z,WAAY1jB,EAAQipB,OAAOvF,WAAa1jB,EAAQipB,OAAOvF,WAAa4D,EAAM5D,WAC1Eha,UAAW1J,EAAQipB,OAAO/gB,QAAUgf,EAAalnB,EAAQipB,OAAO/gB,SAAWof,EAAM5d,UACjFxB,QAASlI,EAAQipB,OAAO/gB,QAAUlI,EAAQipB,OAAO/gB,QAAUof,EAAMpf,QACjE8T,SAAUhc,EAAQipB,OAAOjN,SAAWhc,EAAQipB,OAAOjN,SAAWsL,EAAMtL,SACpE1Z,YAAatC,EAAQipB,OAAO3mB,YAActC,EAAQipB,OAAO3mB,YAAcglB,EAAMhlB,YAC7Eqc,SAAU3e,EAAQipB,OAAOtK,SAAW3e,EAAQipB,OAAOtK,SAAW2I,EAAM3I,SACpEzU,SAAUlK,EAAQipB,OAAOtF,gBAAkBsD,EAAYjnB,EAAQipB,OAAOtF,iBAAmB2D,EAAMpd,SAC/FQ,gBAAiB1K,EAAQipB,OAAOve,gBAAkB1K,EAAQipB,OAAOve,gBAAkB4c,EAAM5c,gBACzF+N,qBAAsBzY,EAAQipB,OAAOxQ,qBAAuBzY,EAAQipB,OAAOxQ,qBAAuB6O,EAAM7O,qBACxGyN,gBAAiBlmB,EAAQipB,OAAO/C,gBAAkBlmB,EAAQipB,OAAO/C,gBAAkBoB,EAAMpB,gBACzFI,kBAAmBtmB,EAAQipB,OAAO3C,kBAAoBtmB,EAAQipB,OAAO3C,kBAAoBgB,EAAMhB,kBAC/F7V,QAASzQ,EAAQipB,OAAOxY,QAAUzQ,EAAQipB,OAAOxY,QAAU6W,EAAM7W,QACjE1C,gBAAiB4a,EAAM/jB,MAAM,EAAG+jB,EAAMK,QAAQhpB,EAAQyoB,UACtDtC,eAAgBnmB,EAAQipB,OAAO9C,eAAiBnmB,EAAQipB,OAAO9C,eAAiBmB,EAAMnB,eACtFC,mBAAoBpmB,EAAQipB,OAAO7C,mBAAqBpmB,EAAQipB,OAAO7C,mBAAqBkB,EAAMlB,mBAClGC,aAAcrmB,EAAQipB,OAAO5C,aAAermB,EAAQipB,OAAO5C,aAAeiB,EAAMjB,aAChF3S,QAAS1T,EAAQipB,OAAOvV,QAAU1T,EAAQipB,OAAOvV,QAAU4T,EAAM5T,QACjEgT,WAAY1mB,EAAQipB,OAAOvC,WAAa1mB,EAAQipB,OAAOvC,WAAaY,EAAMZ,WAC1E5nB,MAAOkB,EAAQipB,OAAOnqB,MAAQkB,EAAQipB,OAAOnqB,MAAQwoB,EAAMxoB,MAC3D8nB,YAAa5mB,EAAQipB,OAAOrC,YAAc5mB,EAAQipB,OAAOrC,YAAcU,EAAMV,YAC7EC,eAAgB7mB,EAAQipB,OAAOpC,eAAiB7mB,EAAQipB,OAAOpC,eAAiBS,EAAMT,eAEtFjY,YAAa5O,EAAQipB,OAAOra,YAAc5O,EAAQipB,OAAOra,YAAc0Y,EAAM1Y,YAC7EkY,aAAc9mB,EAAQipB,OAAOnC,aAAe9mB,EAAQipB,OAAOnC,aAAeQ,EAAMR,eAGxF,KAAKoC,IAAmBC,2BAEpB,IACoG,IAE7F,IAHHC,EAAc,GAClB,GAAqB,OAAjBppB,EAAQkB,OAAiB,UAAAlB,EAAQS,gBAAR,mBAAkBE,YAAlB,eAAwB6G,oBAAoB,GAAG6hB,YAAY1gB,QAAS,EAC7FygB,EAAW,UAAGppB,EAAQS,gBAAX,iBAAG,EAAkBE,YAArB,aAAG,EAAwB6G,oBAAoB,GAAG6hB,YAAY,GAAGtqB,UAE5EqqB,EAAW,UAAGppB,EAAQS,gBAAX,iBAAG,EAAkBE,YAArB,aAAG,EAAwB6G,oBAAoB,GAAGzI,KAEjE,OAAO,2BACAuoB,GADP,IACc7O,qBAAsB2Q,EAChC1e,gBAAe,UAAE1K,EAAQS,gBAAV,iBAAE,EAAkBE,YAApB,aAAE,EAAwB6G,oBAAoB,GAAGzI,KAChEunB,kBAAiB,UAAEtmB,EAAQS,gBAAV,iBAAE,EAAkBE,YAApB,aAAE,EAAwB6G,oBAAoB,GAAGqQ,WAClEkP,SAAQ,UAAE/mB,EAAQS,gBAAV,iBAAE,EAAkBE,YAApB,iBAAE,EAAwB6G,oBAAoB,UAA9C,aAAE,EAAgDuf,WAGlE,KAAKzH,IAAmBG,eACpB,OAAO,2BACA6H,GADP,IACcpf,QAA+B,gBAAtBlI,EAAQ2C,UAA8B,MAAQ2kB,EAAMpf,QACvEwB,UAAiC,gBAAtB1J,EAAQ2C,UAA8B,MAAQ,eAGjE,KAAKZ,IAAmBe,uBACpB,OAAO,2BACAwkB,GADP,IACchlB,YAAatC,EAAQsC,YAC/B6jB,eAAgBnmB,EAAQ0C,eACxB0jB,mBAAoBpmB,EAAQuC,WAC5B8jB,aAAcrmB,EAAQwC,OAG9B,KAAK2c,IAAgBE,gBACjB,OAAO,uCAAIiI,GAAX,IAAkBpB,gBAAiBlmB,EAAQ2C,WACA,QAAtB3C,EAAQ2C,WAAyC,YAAlB2kB,EAAMpf,QAAwB,CAACwB,UAAW,UAAY,IAD1G,IAEkBkF,YAAauY,EAAeG,EAAMpf,QAASlI,EAAQ2C,aAGzE,KAAK+c,IAAsBE,gBACvB,OAAO,2BAAK0H,GAAZ,IAAmB3I,SAAU3e,EAAQ2C,YAEzC,KAAK2mB,IAAoBnJ,6BACrB,OAAO,2BACAmH,GADP,IACc5T,QAAO,OAAE1T,QAAF,IAAEA,GAAF,UAAEA,EAASW,YAAX,aAAE,EAAesT,QAClCyS,WAAU,OAAE1mB,QAAF,IAAEA,GAAF,UAAEA,EAASW,YAAX,aAAE,EAAe8S,YAC3B3U,MAAK,OAAEkB,QAAF,IAAEA,GAAF,UAAEA,EAASW,YAAX,aAAE,EAAe4oB,MACtB3C,YAAW,OAAE5mB,QAAF,IAAEA,GAAF,UAAEA,EAASW,YAAX,aAAE,EAAe6oB,cAGpC,KAAKvpB,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,cAAtBA,EAAQC,aAEpB,OAAO,2BAAKpB,GAAZ,IAAmBpB,gBAAiBuC,EAAQ,GAAKA,EAAQ,GAAGxM,MAAM,GAAGpV,QAAQ,GAAG0C,MAAQ+d,EAAMpB,kBAElG,KAAKjmB,IAAsBypB,uBACvB,OAAO,2BAAKpC,GAAZ,IAAmBd,qBAAoB,UAAExmB,EAAQS,gBAAV,iBAAE,EAAkBE,YAApB,aAAE,EAAwB6lB,qBAAsB/V,QAAO,UAAEzQ,EAAQS,gBAAV,iBAAE,EAAkBE,YAApB,aAAE,EAAwB8P,QAAS8V,YAAavmB,EAAQS,SAASuC,SAEnK,KAAK/C,IAAsB0pB,qBACvB,OAAO,2BAAKrC,GAAZ,IAAmB7W,QAASzQ,EAAQS,SAASE,OAEjD,KAAKV,IAAsB2pB,aACvB,OAAO,2BAAKtC,GAAZ,IAAmBlW,YAAapR,IAEpC,KAAKC,IAAsB4pB,uBACvB,OAAO,2BAAKvC,GAAZ,IAAmBpB,gBAAiBlmB,IAExC,KAAKC,IAAsBa,cACvB,OAAO,2BAAKwmB,GAAZ,IAAmBrB,SAAUnmB,EAAMe,MAAOb,IAE9C,KAAKC,IAAsB6pB,qBACvB,OAAO,2BAAKxC,GAAZ,IAAmBN,oBAAqBhnB,IAE5C,QACI,OAAOsnB,ICnRbxB,EAAY,CACdzd,qBAAsB,GACtBD,uBAAwB,GACxB2hB,gBAAiB,IAmBNC,EAhBa,WAA0C,IAAD,YAAxC1C,EAAwC,uDAA3BxB,EAAWlc,EAAgB,uCACzD9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QAER,OAAQF,IACCopB,IAAmBC,2BAEb,2BAAK7B,GAAZ,IAAmBjf,qBAAoB,UAAErI,EAAQS,gBAAV,iBAAE,EAAkBE,YAApB,aAAE,EAAwB6G,oBAAoB,GAAGa,qBACxED,uBAAsB,UAAEpI,EAAQS,gBAAV,iBAAE,EAAkBE,YAApB,aAAE,EAAwB6G,oBAAoB,GAAGyiB,iBACvEF,gBAAe,UAAE/pB,EAAQS,gBAAV,iBAAE,EAAkBE,YAApB,aAAE,EAAwB6G,oBAAoB,KAGtE8f,G,QClBbxB,EAAY,CACdhe,aAAe,GACfoiB,oBAAqB,EACrBC,wBAAyB,EACzBC,4BAA6B,EAC7BC,qBAAsB,GA2CXC,EAxCa,WAAwC,IAAvChD,EAAsC,uDAA1BxB,EAAWlc,EAAe,uCACvD9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QAER,OAAQF,GACJ,KAAKyqB,IAAmBC,6BACxB,KAAKD,IAAmBE,sCACxB,KAAKF,IAAmBG,6BACpB,OAAO,2BAAIpD,GAAX,IAAkBxf,aAAa9H,IAEnC,KAAKuqB,IAAmBI,qCACpB,OAAO,2BAAIrD,GAAX,IAAkBxf,aAAa9H,EAASkqB,oBAAmB,IAE/D,KAAKK,IAAmBK,0CACpB,OAAO,2BAAItD,GAAX,IAAkBxf,aAAa9H,EAASqqB,qBAAoB,IAEhE,KAAKE,IAAmBM,yCACpB,OAAO,2BAAIvD,GAAX,IAAkBxf,aAAa9H,IAEnC,KAAKuqB,IAAmBO,0CACpB,OAAO,2BAAIxD,GAAX,IAAkB6C,uBAAuBnqB,IAE7C,KAAKuqB,IAAmBQ,6CACpB,OAAO,2BAAIzD,GAAX,IAAkBxf,aAAa9H,IAEnC,KAAKuqB,IAAmBS,8CAChB,OAAO,2BAAI1D,GAAX,IAAkB8C,2BAA2BpqB,IAErD,KAAKuqB,IAAmBU,iCACxB,KAAKV,IAAmBW,6BACpB,OAAO,2BAAI5D,GAAX,IAAkBxf,aAAa9H,EAAQ8H,eAE3C,KAAKyiB,IAAmBY,yBACpB,OAAO,2BAAI7D,GAAX,IAAkBxf,aAAa,KAEnC,QACI,OAAOwf,I,gBH3CR1B,K,oDAAAA,E,qDAAAA,M,KAKX,IINME,EAAY,CACd5a,6BAA+B,IAiBpBkgB,EAd6B,WAAwC,IAAvC9D,EAAsC,uDAA1BxB,EAAWlc,EAAe,uCACvE9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QAER,OAAQF,IACC8lB,EAAmCyF,yBAC7B,2BAAI/D,GAAX,IAAkBpc,6BAA6BlL,IAGxCsnB,G,SCZbxB,EAAY,CACd7X,YAAa,CACTya,UAAW,kCACX3pB,KAAM,oCACNkd,MAAO,CACH,CACIqP,SAAU,IACVC,OAAQ,gBACRrP,OAAQ,CACJ,CACInd,KAAM,uBACNwK,MAAO,KAGf1C,QAAS,CACL,CACI9H,KAAM,gBACNwK,MAAO,MAInB,CACI+hB,SAAU,IACVC,OAAQ,qBACR1kB,QAAS,CACL,CACI9H,KAAM,gBACNwK,MAAO,YAM3BiiB,oBAAsB,GACtBC,wBAA0B,IAyCfC,EAtCS,WAA0C,IAAD,QAAxCpE,EAAwC,uDAA3BxB,EAAWlc,EAAgB,uCACrD9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJ2rB,EAAa,eAAQrE,EAAMrZ,YAAYgO,OAE3C,OAAQnc,GACJ,KAAKsgB,IAAeE,8BAChB,OAAO,2BAAIgH,GAAX,IAAkBkE,oBAAqBxrB,IAE3C,KAAKogB,IAAeI,yBAEhB,OADAmL,EAAc,GAAGzP,OAAO,GAAG3S,OAAQ,UAAAvJ,EAAQW,YAAR,mBAAcA,YAAd,eAAoB6b,OAApB,UAA4Bxc,EAAQW,YAApC,iBAA4B,EAAcA,YAA1C,aAA4B,EAAoB6b,MAAQ,GACpF,2BAAK8K,GAAZ,IAAmBmE,wBAAyBzrB,IAEhD,KAAKogB,IAAeQ,gBAEhB,OADA+K,EAAc,GAAG9kB,QAAQ,GAAG0C,MAAQvJ,EAAQ2gB,cACrC2G,EAEX,KAAKrnB,IAAsBsoB,yBAC3B,KAAKtoB,IAAsBuoB,gBACvB,OAAO,2BAAKlB,GAAZ,IAAmBkE,oBAAqB,GAAIC,wBAAyB,KAEzE,KAAKxrB,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,oCAAtBA,EAAQC,aAEpB,GAAID,EAAQ9f,OAAS,EAAG,CACpB,IAAIijB,EAAcnD,EAAQ,GAAGxM,MAAM,GAAGpV,QAAQ,GAC1C2V,EAAQiM,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GACvCyP,EAAc,GAAGzP,OAAO,GAAG3S,MAAQiT,EAAQA,EAAMjT,MAAQ,GACzDoiB,EAAc,GAAG9kB,QAAQ,GAAG0C,MAAQqiB,EAAcA,EAAYriB,MAAQ,GAE1E,OAAO+d,EAEX,QACI,OAAOA,ICvEbxB,EAAY,CAChB7X,YAAa,CACXya,UAAW,eACX3pB,KAAM,gBACNkd,MAAO,CACL,CACEqP,SAAU,IACVC,OAAQ,eACR3oB,iBAAkB,GAClBiE,QAAS,CACP,CACE9H,KAAM,eACNwK,MAAO,GACP2S,OAAQ,CACN,CACEnd,KAAM,eACNwK,MAAO,WAuCRsiB,EA7Ba,WAA0C,IAAzCvE,EAAwC,uDAA3BxB,EAAWlc,EAAgB,uCAC3D9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJ8rB,EAAW,eAAQxE,EAAMrZ,YAAYgO,OAEzC,OAAQnc,GACN,KAAKwf,IAAmBG,eAItB,OAHAqM,EAAY,GAAGjlB,QAAQ,GAAG0C,MAAQvJ,EAAQ2C,UAC1CmpB,EAAY,GAAGjlB,QAAQ,GAAGqV,OAAO,GAAG3S,MAAQvJ,EAAQwf,cACpDsM,EAAY,GAAGlpB,iBAAmB5C,EAAQ4C,iBACnC0kB,EAET,KAAKrnB,IAAsBwpB,qBACzB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACrC,MAA8B,iBAAtBA,EAAQC,aAElB,GAAID,EAAQ9f,OAAS,EAAG,CACtB,IAAIojB,EAAkBtD,EAAQ,GAAGxM,MAAM,GAAGpV,QAAQ,GAClDilB,EAAY,GAAGlpB,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBACtDkpB,EAAY,GAAGjlB,QAAQ,GAAG0C,MAAQwiB,EAAkBA,EAAgBxiB,MAAQ,GAC5EuiB,EAAY,GAAGjlB,QAAQ,GAAGqV,OAAO,GAAG3S,MAAQwiB,EAAkBA,EAAgB7P,OAAO,GAAG3S,MAAQ,GAElG,OAAO+d,EAET,QACE,OAAOA,ICnDP0E,EAAc,CAChB/d,YAAa,CACTya,UAAW,YACX3pB,KAAM,kBACNkd,MAAO,CACH,CACIqP,SAAU,IACV1oB,iBAAkB,GAClB2oB,OAAQ,gBACR1kB,QAAS,CACL,CACI9H,KAAM,WACNwK,MAAO,SAmChB0iB,EA3BU,WAA4C,IAA3C3E,EAA0C,uDAA7B0E,EAAapiB,EAAgB,uCACxD9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJksB,EAAc,eAAQ5E,EAAMrZ,YAAYgO,OAE5C,OAAQnc,GACJ,KAAKqf,IAAgBE,gBAGjB,OAFA6M,EAAe,GAAGrlB,QAAQ,GAAG0C,MAAQvJ,EAAQ2C,UAC7CupB,EAAe,GAAGtpB,iBAAmB5C,EAAQ4C,iBACtC0kB,EAEX,KAAKrnB,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,cAAtBA,EAAQC,aAEpB,GAAID,EAAQ9f,OAAS,EAAG,CACpB,IAAIwjB,EAAe1D,EAAQ,GAAGxM,MAAM,GAAGpV,QAAQ,GAC/CqlB,EAAe,GAAGtpB,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBACzDspB,EAAe,GAAGrlB,QAAQ,GAAG0C,MAAQ4iB,EAAeA,EAAa5iB,MAAQ,GAE7E,OAAO+d,EAEX,QACI,OAAOA,IC3CbxB,EAAY,CACd7X,YAAa,CACTya,UAAW,eACX3pB,KAAM,gBACNkd,MAAO,CACH,CACIqP,SAAU,IACV1oB,iBAAkB,GAClB2oB,OAAQ,eACRrP,OAAQ,CACJ,CACInd,KAAM,wBACNwK,MAAO,IAEX,CACIxK,KAAM,wBACNwK,MAAO,IAEX,CACIxK,KAAM,iBACNwK,MAAO,IAEX,CACIxK,KAAM,8BACNwK,MAAO,QAM3B6iB,oBAAqB,GAGrBC,sBAAuB,IAkDZC,EA5Ca,WAA0C,IAAD,IAAxChF,EAAwC,uDAA3BxB,EAAWlc,EAAgB,uCACzD9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJusB,EAAiB,eAAQjF,EAAMrZ,YAAYgO,OAE/C,OAAQnc,GAEJ,KAAKiC,IAAmBK,qBACpB,OAAO,2BAAKklB,GAAZ,IAAmB8E,oBAAqBpsB,IAE5C,KAAK+B,IAAmBe,uBAOpB,OANAypB,EAAkB,GAAG3pB,iBAAmB5C,EAAQ4C,iBAChD2pB,EAAkB,GAAGrQ,OAAO,GAAG3S,MAAQvJ,EAAQyC,YAAYmJ,KAAI,SAAC4gB,GAAa,OAAOA,EAAI1iB,MAAK2iB,OAC7FF,EAAkB,GAAGrQ,OAAO,GAAG3S,MAAQ7D,KAAKgnB,UAAU1sB,EAAQS,SAASE,MACvE4rB,EAAkB,GAAGrQ,OAAO,GAAG3S,MAAQvJ,EAAQ2C,UAC/C4pB,EAAkB,GAAGrQ,OAAO,GAAG3S,MAA/B,UAAuCvJ,EAAQS,gBAA/C,iBAAuC,EAAkBE,YAAzD,aAAuC,EAAwBgsB,aAExD,2BAAKrF,GAAZ,IAAmB+E,sBAAuBrsB,EAAQS,WAEtD,KAAKR,IAAsBsoB,yBAC3B,KAAKtoB,IAAsBuoB,gBAG3B,KAAKvoB,IAAsBuoB,gBACvB,OAAO,2BAAKlB,GAAZ,IAAmB8E,oBAAqB,GAAIC,sBAAuB,KAEvE,KAAKpsB,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,iBAAtBA,EAAQC,aAEpB,GAAGD,EAAQ9f,OAAS,EAAG,CACnB4jB,EAAkB,GAAG3pB,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBAC5D,IAFmB,eAEVqG,GACL,IAAM2jB,EAAoBnE,EAAQ,GAAGxM,MAAM,GAAGC,OAAOtT,QAAO,SAACikB,GAAiB,OAAQA,EAAM9tB,OAASwtB,EAAkB,GAAGrQ,OAAOjT,GAAGlK,QAAS,GAC7IwtB,EAAkB,GAAGrQ,OAAOjT,GAAGM,MAAQqjB,EAAoBA,EAAkBrjB,MAAQ,IAFhFN,EAAI,EAAGA,EAAIsjB,EAAkB,GAAGrQ,OAAOvT,OAAQM,IAAM,EAArDA,GAKb,OAAOqe,EAEX,QACI,OAAOA,I,SC/EbxB,EAAY,CACd7X,YAAa,CACTya,UAAW,kBACX3pB,KAAM,mBACNkd,MAAO,CACH,CACIqP,SAAU,IACVC,OAAQ,kBACRrP,OAAQ,CACJ,CACInd,KAAM,QACNwK,MAAO,IAEX,CACIxK,KAAM,gBACNwK,MAAO,IAEX,CACIxK,KAAM,wBACNwK,MAAO,IAEX,CACIxK,KAAM,mBACNwK,MAAO,IAEX,CACIxK,KAAM,iBACNwK,MAAO,IAEX,CACIxK,KAAM,WACNwK,MAAO,IAEX,CACIxK,KAAM,YACNwK,MAAO,IAEX,CACIxK,KAAM,4BACNwK,MAAO,IAEX,CACIxK,KAAM,qBACNwK,MAAO,IAEX,CACIxK,KAAM,mBACNwK,MAAO,IAEX,CACIxK,KAAM,YACNwK,MAAO,IAEX,CACIxK,KAAM,kBACNwK,MAAO,IAEX,CACIxK,KAAM,aACNwK,MAAO,IAEX,CACIxK,KAAM,QACNwK,MAAO,IAEX,CACIxK,KAAM,OACNwK,MAAO,IAEX,CACIxK,KAAM,UACNwK,MAAO,QAM3BujB,sBAAuB,GAGvBC,oBAAqB,GAGrBC,oBAAqB,GAGrBC,iBAAkB,GAGlB7tB,QAAS,IA+DE8tB,EA1DgB,WAA0C,IAAzC5F,EAAwC,uDAA3BxB,EAAWlc,EAAgB,uCAC5D9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJmtB,EAAoB,eAAQ7F,EAAMrZ,YAAYgO,OAElD,OAAQnc,GACJ,KAAKlB,IAAsB0C,8BACvB,OAAO,2BAAKgmB,GAAZ,IAAmByF,oBAAqB/sB,IAE5C,KAAKpB,IAAsB+C,8BACvB,OAAO,2BAAK2lB,GAAZ,IAAmB0F,oBAAqBhtB,IAE5C,KAAKpB,IAAsBkD,2BACvB,OAAO,2BAAKwlB,GAAZ,IAAmB2F,iBAAkBjtB,IAEzC,KAAKpB,IAAsBmB,yBAcvB,OAbAotB,EAAqB,GAAGjR,OAAO,GAAG3S,MAAQvJ,EAAQlB,MAClDquB,EAAqB,GAAGjR,OAAO,GAAG3S,MAAQvJ,EAAQjB,KAClDouB,EAAqB,GAAGjR,OAAO,GAAG3S,MAAQvJ,EAAQhB,MAClDmuB,EAAqB,GAAGjR,OAAO,GAAG3S,MAAQvJ,EAAQd,QAClDiuB,EAAqB,GAAGjR,OAAO,GAAG3S,MAAQvJ,EAAQb,MAClDguB,EAAqB,GAAGjR,OAAO,GAAG3S,MAAQvJ,EAAQf,aAClDkuB,EAAqB,GAAGjR,OAAO,GAAG3S,MAAQvJ,EAAQX,gBAClD8tB,EAAqB,GAAGjR,OAAO,IAAI3S,MAAQvJ,EAAQN,MACnDytB,EAAqB,GAAGjR,OAAO,IAAI3S,OAAwC,IAAhCvJ,EAAQL,oBAA+B,OAAS,GAC3FwtB,EAAqB,GAAGjR,OAAO,IAAI3S,MAAQvJ,EAAQV,cACnD6tB,EAAqB,GAAGjR,OAAO,IAAI3S,MAAQvJ,EAAQT,SACnD4tB,EAAqB,GAAGjR,OAAO,IAAI3S,MAAQvJ,EAAQR,iBACnD2tB,EAAqB,GAAGjR,OAAO,IAAI3S,MAAQvJ,EAAQP,aAC5C,2BAAK6nB,GAAZ,IAAmBloB,QAASY,EAAQZ,UAExC,KAAKR,IAAsB8B,uBAIvB,OAHAysB,EAAqB,GAAGjR,OAAO,GAAG3S,MAAQvJ,EAAQI,IAClD+sB,EAAqB,GAAGjR,OAAO,GAAG3S,MAAQvJ,EAAQK,IAClD8sB,EAAqB,GAAGjR,OAAO,GAAG3S,MAAQ7D,KAAKgnB,UAAU1sB,EAAQS,UAC1D,2BAAK6mB,GAAZ,IAAmBwF,sBAAuB9sB,EAAQS,WAEtD,KAAKR,IAAsBsoB,yBAC3B,KAAKtoB,IAAsBuoB,gBACvB,OAAO,2BAAKlB,GAAZ,IAAmBwF,sBAAuB,GAAIC,oBAAqB,GAAIC,oBAAqB,GAAIC,iBAAkB,KAEtH,KAAKhtB,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,oBAAtBA,EAAQC,aAEpB,GAAID,EAAQ9f,OAAS,EACjB,IADqB,IAAD,WACXM,GACL,IAAMmkB,EAAuB3E,EAAQ,GAAGxM,MAAM,GAAGC,OAAOtT,QAAO,SAACikB,GAAiB,OAAQA,EAAM9tB,OAASouB,EAAqB,GAAGjR,OAAOjT,GAAGlK,QAAS,GACnJouB,EAAqB,GAAGjR,OAAOjT,GAAGM,MAAQ6jB,EAAuBA,EAAqB7jB,MAAQ,IAFzFN,EAAI,EAAGA,EAAIkkB,EAAqB,GAAGjR,OAAOvT,OAAQM,IAAM,EAAxDA,GAKb,OAAOqe,EAEX,QACI,OAAOA,I,QCpJbxB,EAAY,CACd7X,YAAa,CACTya,UAAW,qBACX3pB,KAAM,sBACNkd,MAAO,CACH,CACIqP,SAAU,IACVC,OAAQ,iBACRrP,OAAQ,CACJ,CACInd,KAAM,0BACNwK,MAAO,IAEX,CACIxK,KAAM,mBACNwK,MAAO,IAEX,CACIxK,KAAM,OACNwK,MAAO,IAEX,CACIxK,KAAM,iBACNwK,MAAO,IAEX,CACIxK,KAAM,SACNwK,MAAO,IAEX,CACIxK,KAAM,eACNwK,MAAO,QAM3B8jB,sBAAuB,GACvBC,gBAAiB,GACjBC,YAAa,IAqDFC,EAlDmB,WAA0C,IAAzClG,EAAwC,uDAA3BxB,EAAWlc,EAAgB,uCAC/D9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJytB,EAAuB,eAAQnG,EAAMrZ,YAAYgO,OAErD,OAAQnc,GACJ,KAAK4tB,IAAyBC,4BAC1B,OAAO,2BAAKrG,GAAZ,IAAmB+F,sBAAuBrtB,IAE9C,KAAK0tB,IAAyBE,yBAC1B,OAAO,2BAAKtG,GAAZ,IAAmBiG,YAAavtB,IAEpC,KAAK0tB,IAAyBG,8BAC1B,OAAO,2BAAKvG,GAAZ,IAAmBgG,gBAAiBttB,IAExC,KAAK0tB,IAAyBI,gBAC1B,OAAO,2BAAKxG,GAAZ,IAAmBgG,gBAAiB,KAExC,KAAKI,IAAyBK,2BAQ1B,OAPAN,EAAwB,GAAGvR,OAAO,GAAG3S,MAAQ7D,KAAKgnB,UAAUpF,EAAM+F,uBAClEI,EAAwB,GAAGvR,OAAO,GAAG3S,MAAQvJ,EAAQd,QACrDuuB,EAAwB,GAAGvR,OAAO,GAAG3S,MAAQvJ,EAAQguB,SACrDP,EAAwB,GAAGvR,OAAO,GAAG3S,MAAQvJ,EAAQb,MACrDsuB,EAAwB,GAAGvR,OAAO,GAAG3S,MAAQvJ,EAAQ6U,IACrD4Y,EAAwB,GAAGvR,OAAO,GAAG3S,MAAQvJ,EAAQsV,SAE9CgS,EAEX,KAAKrnB,IAAsBsoB,yBAC3B,KAAKtoB,IAAsBuoB,gBACvB,OAAO,2BAAKlB,GAAZ,IAAmB+F,sBAAuB,KAE9C,KAAKptB,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,uBAAtBA,EAAQC,aAEpB,GAAID,EAAQ9f,OAAS,EACjB,IADqB,IAAD,WACXM,GACL,IAAMglB,EAAgBxF,EAAQ,GAAGxM,MAAM,GAAGC,OAAOtT,QAAO,SAACikB,GAAiB,OAAQA,EAAM9tB,OAAS0uB,EAAwB,GAAGvR,OAAOjT,GAAGlK,QAAS,GAC/I0uB,EAAwB,GAAGvR,OAAOjT,GAAGM,MAAQ0kB,EAAgBA,EAAc1kB,MAAQ,IAF9EN,EAAI,EAAGA,EAAIwkB,EAAwB,GAAGvR,OAAOvT,OAAQM,IAAM,EAA3DA,GAKb,OAAOqe,EAEX,QACI,OAAOA,I,QCtFb4G,EAAuB,CACzBjgB,YAAa,CACTya,UAAW,sBACX3pB,KAAM,wBACNkd,MAAO,CACH,CACIqP,SAAU,IACVC,OAAQ,sBACR3oB,iBAAkB,GAClBsZ,OAAQ,CACJ,CACInd,KAAM,WACNwK,MAAO,IAEX,CACIxK,KAAM,GACNwK,MAAO,IAEX,CACIxK,KAAM,iBACNwK,MAAO,IAEX,CACIxK,KAAM,qBACNwK,MAAO,IAEX,CACIxK,KAAM,QACNwK,MAAO,IAEX,CACIxK,KAAM,UACNwK,MAAO,IAEX,CACIxK,KAAM,mBACNwK,MAAO,IAEX,CACIxK,KAAM,iCACNwK,MAAO,IAEX,CACIxK,KAAM,qBACNwK,MAAO,IAEX,CACIxK,KAAM,eACNwK,MAAO,IAEX,CACIxK,KAAM,WACNwK,MAAO,KAEX,CACIxK,KAAM,kBACNwK,MAAO,IAEX,CACIxK,KAAM,MACNwK,MAAO,KAGf1C,QAAS,CACL,CACI9H,KAAM,SACNwK,MAAO,QAO3B4kB,uBAAwB,GAGxBC,+BAAgC,GAGhCtU,gBAAiB,GACjBuU,uBAAuB,GAGvBC,2BAA2B,GAC3BC,+BAA+B,GAC/BC,6BAA6B,IAwFlBC,EArFiB,WAAqD,IAAD,sBAAnDnH,EAAmD,uDAAtC4G,EAAsBtkB,EAAgB,uCACxE9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJ0uB,EAAQ,eAAQpH,EAAMrZ,YAAYgO,OACtC,OAAQnc,GACJ,KAAK6uB,IAA0BC,8BAU3B,OATAF,EAAS,GAAGxS,OAAO,GAAG3S,MAAQvJ,EAAQ4P,SACtC8e,EAAS,GAAGxS,OAAO,GAAGnd,KAAOiB,EAAQ6uB,qBACrCH,EAAS,GAAGxS,OAAO,GAAG3S,MAAQvJ,EAAQ8uB,gBACtCJ,EAAS,GAAG7nB,QAAQ,GAAG0C,MAA2B,MAAnBvJ,EAAQ+uB,OAAiB,oBAAsB,QAC9EzH,EAAMxN,gBAAkB9Z,EAAQ6P,YAChC6e,EAAS,GAAGxS,OAAO,GAAG3S,MAAQvJ,EAAQf,aACtCyvB,EAAS,GAAGxS,OAAO,GAAG3S,MAAQvJ,EAAQ6P,YACtC6e,EAAS,GAAGxS,OAAO,IAAI3S,OAAQ,UAAAvJ,EAAQS,SAASE,YAAjB,eAAuB+N,UAAvB,UAAkC1O,EAAQS,gBAA1C,iBAAkC,EAAkBE,YAApD,aAAkC,EAAwB+N,SAAW,IACpGggB,EAAS,GAAGxS,OAAO,IAAI3S,OAAqC,KAAtB,OAAPvJ,QAAO,IAAPA,OAAA,EAAAA,EAAS+P,iBAA2B,OAAS,GACrE,2BAAKuX,GAAZ,IAAmB6G,uBAAwBnuB,EAAQS,WAEvD,KAAKkuB,IAA0BK,iCAE3B,OAAO,2BAAK1H,GAAZ,IAAmB8G,+BAAgCpuB,EAAQS,WAE/D,KAAKkuB,IAA0BM,wBAE3B,OAAO,2BAAK3H,GAAZ,IAAmB+G,uBAAwBruB,EAAQS,WAEvD,KAAKkuB,IAA0BO,yCAE3B,OAAO,2BAAK5H,GAAZ,IAAmBgH,2BAA4BtuB,IAEnD,KAAK2uB,IAA0BQ,yCAE3B,OAAO,2BAAK7H,GAAZ,IAAmBiH,+BAAgCvuB,IAEvD,KAAK2uB,IAA0BS,sCAE3B,OAAO,2BAAK9H,GAAZ,IAAmBkH,6BAA8BxuB,IAErD,KAAK2uB,IAA0BU,uBAC3B,IAAIC,GAAiB,UAAAtvB,EAAQouB,sCAAR,eAAwCmB,gBAAiBvvB,EAAQouB,+BAA+BmB,eAAiB,GAClIzwB,GAAQ,UAAAkB,EAAQouB,sCAAR,mBAAwCzhB,gBAAxC,mBAAkDC,QAAQ,UAA1D,eAA8D9N,OAAQkB,EAAQouB,+BAA+BzhB,SAASC,QAAQ,GAAG9N,MAAQ,GACjJ6a,GAAU,UAAA3Z,EAAQouB,sCAAR,mBAAwCoB,kBAAxC,eAAoDnV,SAAUra,EAAQouB,+BAA+BoB,WAAWnV,QAAU,GACpIoV,GAAgB,UAAAzvB,EAAQouB,sCAAR,mBAAwCzhB,gBAAxC,eAAkD+iB,kBAAmB1vB,EAAQouB,+BAA+BzhB,SAAS+iB,iBAAmB,GACxJ1V,EAAyC,WAA1BL,EAAQP,cAA6B,IAAM,IAW9D,OAVAsV,EAAS,GAAGxS,OAAO,GAAG3S,MAAQ+lB,EAC9BZ,EAAS,GAAGxS,OAAO,GAAG3S,MAAOzK,EAC7B4vB,EAAS,GAAGxS,OAAO,GAAG3S,MAAQoQ,EAC9B+U,EAAS,GAAGxS,OAAO,GAAG3S,MAAQ7D,KAAKgnB,UAAU+C,GAC7Cf,EAAS,GAAGxS,OAAO,GAAG3S,MAAQ7D,KAAKgnB,UAAU1sB,EAAQouB,gCACrDM,EAAS,GAAGxS,OAAO,GAAG3S,MAAQyQ,EAC9B0U,EAAS,GAAG9rB,iBAAmB5C,EAAQ4C,iBACvC8rB,EAAS,GAAGxS,OAAO,IAAI3S,MAAQvJ,EAAQ2vB,YAAc3vB,EAAQ2vB,YAAc,IAC3EjB,EAAS,GAAGxS,OAAO,IAAI3S,MAAQvJ,EAAQ4vB,OAEhCtI,EAEX,KAAKrnB,IAAsBsoB,yBAC3B,KAAKtoB,IAAsBuoB,gBACvB,OAAO,2BAAKlB,GAAZ,IAAmB6G,uBAAwB,GAAIC,+BAAgC,GAC/EC,uBAAwB,GAAIC,2BAA4B,GAAIC,+BAAgC,GAAIC,6BAA8B,KAElI,KAAKvuB,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,wBAAtBA,EAAQC,aAEpB,GAAID,EAAQ9f,OAAS,EAAG,CACpB+lB,EAAS,GAAG9rB,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBACnD,IAFoB,eAEXqG,GACJ,IAAM4mB,EAAgBpH,EAAQ,GAAGxM,MAAM,GAAGpV,QAAQ+B,QAAO,SAACikB,GAAiB,OAAQA,EAAM9tB,OAAS2vB,EAAS,GAAG7nB,QAAQoC,GAAGlK,QAAS,GAClI2vB,EAAS,GAAG7nB,QAAQoC,GAAGM,MAAQsmB,EAAgBA,EAActmB,MAAQ,IAFjEN,EAAI,EAAGA,EAAIylB,EAAS,GAAG7nB,QAAQ8B,OAAQM,IAAM,EAA7CA,GAKT,IAPoB,eAOXA,GACL,IAAM4mB,EAAgBpH,EAAQ,GAAGxM,MAAM,GAAGC,OAAOtT,QAAO,SAACikB,GAAiB,OAAQA,EAAM9tB,OAAS2vB,EAAS,GAAGxS,OAAOjT,GAAGlK,QAAS,GAChI2vB,EAAS,GAAGxS,OAAOjT,GAAGM,MAAQsmB,EAAgBA,EAActmB,MAAQ,IAF/DN,EAAI,EAAGA,EAAIylB,EAAS,GAAGxS,OAAOvT,OAAQM,IAAM,EAA5CA,GAIVylB,EAAS,GAAGxS,OAAO,GAAGnd,KAAO0pB,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAGnd,KAC3D2vB,EAAS,GAAGxS,OAAO,GAAG3S,MAAQkf,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAG3S,MAE/D,OAAO+d,EAEX,QACI,OAAOA,I,SC1KbwI,EAAiB,CACnB7hB,YAAa,CACTya,UAAW,yCACX3pB,KAAM,+CACNkd,MAAO,CACH,CACIqP,SAAU,IACV1oB,iBAAkB,GAClB2oB,OAAQ,yCACR1kB,QAAS,CACL,CACI9H,KAAM,qCACNwK,MAAO,KAGf2S,OAAQ,CACJ,CACInd,KAAM,iCACNwK,MAAO,SAuChBwmB,EA9BW,WAA+C,IAA9CzI,EAA6C,uDAAhCwI,EAAgBlmB,EAAgB,uCAC5D9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJgwB,EAAU,eAAQ1I,EAAMrZ,YAAYgO,OACxC,OAAQnc,GAEJ,KAAKmwB,IAAiBC,oBAIlB,OAHAF,EAAW,GAAGnpB,QAAQ,GAAG0C,MAAQvJ,EAAQmwB,cACzCH,EAAW,GAAG9T,OAAO,GAAG3S,MAAQ7D,KAAKgnB,UAAU1sB,EAAQouB,gCACvD4B,EAAW,GAAGptB,iBAAmB5C,EAAQ4C,iBAClC0kB,EAEX,KAAKrnB,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,2CAAtBA,EAAQC,aAEpB,GAAID,EAAQ9f,OAAS,EAAG,CACpB,IAAIynB,EAAe3H,EAAQ,GAAGxM,MAAM,GAAGpV,QAAQ,GAC3CwpB,EAAwB5H,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GACvD8T,EAAW,GAAGptB,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBACrDotB,EAAW,GAAGnpB,QAAQ,GAAG0C,MAAQ6mB,EAAeA,EAAa7mB,MAAQ,GACrEymB,EAAW,GAAG9T,OAAO,GAAG3S,MAAQ8mB,EAAwBA,EAAsB9mB,MAAQ,GAE1F,OAAO+d,EAEX,QACI,OAAOA,I,SCrDbgJ,GAAkB,CACpBriB,YAAa,CACTya,UAAW,cACX3pB,KAAM,kCACNkd,MAAO,CACH,CACIqP,SAAU,IACV1oB,iBAAkB,GAClB2oB,OAAQ,cACR1kB,QAAS,CACL,CACI9H,KAAM,iBACNwK,MAAO,SAGf2S,OAAQ,CACJ,CACInd,KAAM,eACNwK,MAAO,IAEX,CACIxK,KAAM,wBACNwK,MAAO,QAM3B4C,oBAAsB,GAGtBokB,uBAAyB,IA6CdC,GAxCY,WAAgD,IAA/ClJ,EAA8C,uDAAjCgJ,GAAiB1mB,EAAgB,uCAC9D9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJywB,EAAW,eAAOnJ,EAAMrZ,YAAYgO,OAExC,OAAQnc,GACJ,KAAK+gB,IAAkBE,2BACnB,OAAO,2BAAIuG,GAAX,IAAkBnb,oBAAsBnM,IAE5C,KAAK6gB,IAAkBI,yBACnB,OAAO,2BAAIqG,GAAX,IAAkBiJ,uBAAwBvwB,IAE9C,KAAK6gB,IAAkBO,sBAInB,OAHAqP,EAAY,GAAG7tB,iBAAmB5C,EAAQ4C,iBAC1C6tB,EAAY,GAAGvU,OAAO,GAAG3S,MAAQvJ,EAAQmhB,mBAAmBuP,eAAiB1wB,EAAQmhB,mBAAmBuP,eAAiB,EACzHD,EAAY,GAAGvU,OAAO,GAAG3S,MAAQ7D,KAAKgnB,UAAU1sB,EAAQmhB,oBACjDmG,EAEX,KAAKrnB,IAAsBsoB,yBAC3B,KAAKtoB,IAAsBuoB,gBACvB,OAAO,2BAAKlB,GAAZ,IAAmBnb,oBAAqB,GAAIokB,uBAAwB,KAExE,KAAKtwB,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,gBAAtBA,EAAQC,aAEpB,GAAGD,EAAQ9f,OAAS,EAAG,CACnB8nB,EAAY,GAAG7tB,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBACtD,IAFmB,eAEVqG,GACL,IAAM0nB,EAAmBlI,EAAQ,GAAGxM,MAAM,GAAGC,OAAOtT,QAAO,SAACikB,GAAiB,OAAQA,EAAM9tB,OAAS0xB,EAAY,GAAGvU,OAAOjT,GAAGlK,QAAS,GACtI0xB,EAAY,GAAGvU,OAAOjT,GAAGM,MAAQonB,EAAmBA,EAAiBpnB,MAAQ,IAFxEN,EAAI,EAAGA,EAAIwnB,EAAY,GAAGvU,OAAOvT,OAAQM,IAAM,EAA/CA,GAKb,OAAOqe,EAEX,QACI,OAAOA,I,UCxEbxB,GAAY,CACd7X,YAAa,CACTya,UAAW,kBACX3pB,KAAM,mBACNkd,MAAO,CACH,CACIqP,SAAU,IACVC,OAAQ,kBACR3oB,iBAAkB,GAClBiE,QAAS,CACL,CACI9H,KAAM,mBACNwK,MAAO,SAGf2S,OAAQ,CACJ,CACInd,KAAM,iBACNwK,MAAO,IAEX,CACIxK,KAAM,0BACNwK,MAAO,QAM3BgD,6BAA8B,IA6CnBqkB,GAxCgB,WAA0C,IAAzCtJ,EAAwC,uDAA3BxB,GAAWlc,EAAgB,uCAC5D9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJ6wB,EAAoB,eAAOvJ,EAAMrZ,YAAYgO,OAEjD,OAAQnc,GACJ,KAAK4kB,KAAsBE,+BACvB,OAAO,2BAAK0C,GAAZ,IAAmB/a,6BAA8BvM,IAErD,KAAK0kB,KAAsBK,0BAIvB,OAHA8L,EAAqB,GAAGjuB,iBAAmB5C,EAAQ4C,iBACnDiuB,EAAqB,GAAG3U,OAAO,GAAG3S,MAAQvJ,EAAQ8kB,wBAAwBgM,sBAC1ED,EAAqB,GAAG3U,OAAO,GAAG3S,MAAQ7D,KAAKgnB,UAAU1sB,EAAQ8kB,yBAC1DwC,EAEX,KAAKrnB,IAAsBsoB,yBAC3B,KAAKtoB,IAAsBuoB,gBAG3B,KAAKvoB,IAAsBuoB,gBACvB,OAAO,2BAAKlB,GAAZ,IAAmB/a,6BAA8B,KAErD,KAAKtM,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,oBAAtBA,EAAQC,aAEpB,GAAGD,EAAQ9f,OAAS,EAAG,CACnBkoB,EAAqB,GAAGjuB,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBAC/D,IAFmB,eAEVqG,GACL,IAAM0nB,EAAmBlI,EAAQ,GAAGxM,MAAM,GAAGC,OAAOtT,QAAO,SAACikB,GAAiB,OAAQA,EAAM9tB,OAAS8xB,EAAqB,GAAG3U,OAAOjT,GAAGlK,QAAS,GAC/I8xB,EAAqB,GAAG3U,OAAOjT,GAAGM,MAAQonB,EAAmBA,EAAiBpnB,MAAQ,IAFjFN,EAAI,EAAGA,EAAI4nB,EAAqB,GAAG3U,OAAOvT,OAAQM,IAAM,EAAxDA,GAKb,OAAOqe,EAEX,QACI,OAAOA,I,UCrEbyJ,GAAmB,CACrB9iB,YAAa,CACTya,UAAW,qCACX3pB,KAAM,yCACNkd,MAAO,CACH,CACIqP,SAAU,IACVC,OAAQ,qCACR3oB,iBAAkB,GAClBsZ,OAAQ,CACJ,CACInd,KAAM,WACNwK,MAAO,IAEX,CACIxK,KAAM,cACNwK,MAAO,IAEX,CACIxK,KAAM,2BACNwK,MAAO,KAGf1C,QAAS,CACL,CACI9H,KAAM,gBACNwK,MAAO,QAM3BynB,kBAAmB,GACnBC,gBAAiB,GACjBC,uBAAwB,IAiDbC,GA9CmB,WAAiD,IAAhD7J,EAA+C,uDAAlCyJ,GAAkBnnB,EAAgB,uCACtE9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJoxB,EAAU,eAAQ9J,EAAMrZ,YAAYgO,OACxC,OAAQnc,GAEJ,KAAKsd,KAAyBE,wBAC1B,OAAO,2BAAKgK,GAAZ,IAAmB0J,kBAAmBhxB,IAE1C,KAAKod,KAAyBK,yBAC1B,OAAO,2BAAK6J,GAAZ,IAAmB2J,gBAAiBjxB,EAAQ0d,UAEhD,KAAKN,KAAyBiU,4BAC1B,OAAO,2BAAK/J,GAAZ,IAAmB4J,uBAAwBlxB,IAE/C,KAAKod,KAAyBW,6BAU1B,OATAqT,EAAW,GAAGxuB,iBAAmB5C,EAAQuL,KACzC6lB,EAAW,GAAGlV,OAAO,GAAG3S,MAAQvJ,EAAQoT,SACxCge,EAAW,GAAGlV,OAAO,GAAG3S,MAAQvJ,EAAQ4d,WAAalY,KAAKgnB,UAAU1sB,EAAQ4d,YAAc,GAC1FwT,EAAW,GAAGlV,OAAO,GAAG3S,MAAQ7D,KAAKgnB,UAAU1sB,EAAQ6d,qBACvDuT,EAAW,GAAGvqB,QAAQ,GAAG0C,MAAQvJ,EAAQ8d,aAEpCsT,EAAW,GAAGlV,OAAO,GAAG3S,OACzB6nB,EAAW,GAAGlV,OAAOoV,OAAO,EAAE,GAE3BhK,EAEX,KAAKrnB,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,uCAAtBA,EAAQC,aAEpB,GAAID,EAAQ9f,OAAS,EAAG,CACpByoB,EAAW,GAAGxuB,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBACrDwuB,EAAW,GAAGvqB,QAAQ,GAAG0C,MAAQkf,EAAQ,GAAGxM,MAAM,GAAGpV,QAAQ,GAAG0C,MAChE,IAHoB,eAGXN,GACL,IAAMsoB,EAAc9I,EAAQ,GAAGxM,MAAM,GAAGC,OAAOtT,QAAO,SAACikB,GAAiB,OAAQA,EAAM9tB,OAASqyB,EAAW,GAAGlV,OAAOjT,GAAGlK,QAAS,GAChIqyB,EAAW,GAAGlV,OAAOjT,GAAGM,MAAQgoB,EAAcA,EAAYhoB,MAAQ,IAF7DN,EAAI,EAAGA,EAAImoB,EAAW,GAAGlV,OAAOvT,OAAQM,IAAM,EAA9CA,GAKb,OAAOqe,EAEX,QACI,OAAOA,I,UC/EbyJ,GAAmB,CACrB9iB,YAAa,CACTya,UAAW,wCACV3pB,KAAM,6CACPkd,MAAO,CACH,CACIqP,SAAU,IACVC,OAAQ,wCACR3oB,iBAAkB,GAClBsZ,OAAQ,CACJ,CACInd,KAAM,WACNwK,MAAO,IAEX,CACIxK,KAAM,cACNwK,MAAO,IAEX,CACIxK,KAAM,2BACNwK,MAAO,KAGf1C,QAAS,CACL,CACI9H,KAAM,gBACNwK,MAAO,QAM3BynB,kBAAmB,GACnBC,gBAAiB,GACjBC,uBAAwB,IAiDbM,GA9CsB,WAAiD,IAAhDlK,EAA+C,uDAAlCyJ,GAAkBnnB,EAAgB,uCACzE9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJoxB,EAAU,eAAQ9J,EAAMrZ,YAAYgO,OACxC,OAAQnc,GAEJ,KAAKke,KAA4BV,wBAC7B,OAAO,2BAAKgK,GAAZ,IAAmB0J,kBAAmBhxB,IAE1C,KAAKge,KAA4BP,yBAC7B,OAAO,2BAAK6J,GAAZ,IAAmB2J,gBAAiBjxB,EAAQ0d,UAEhD,KAAKM,KAA4BqT,4BAC7B,OAAO,2BAAK/J,GAAZ,IAAmB4J,uBAAwBlxB,IAE/C,KAAKge,KAA4BD,6BAU7B,OATAqT,EAAW,GAAGxuB,iBAAmB5C,EAAQuL,KACzC6lB,EAAW,GAAGlV,OAAO,GAAG3S,MAAQvJ,EAAQoT,SACxCge,EAAW,GAAGlV,OAAO,GAAG3S,MAAQvJ,EAAQ4d,WAAalY,KAAKgnB,UAAU1sB,EAAQ4d,YAAc,GAC1FwT,EAAW,GAAGlV,OAAO,GAAG3S,MAAQ7D,KAAKgnB,UAAU1sB,EAAQ6d,qBACvDuT,EAAW,GAAGvqB,QAAQ,GAAG0C,MAAQvJ,EAAQ8d,aAEpCsT,EAAW,GAAGlV,OAAO,GAAG3S,OACzB6nB,EAAW,GAAGlV,OAAOoV,OAAO,EAAE,GAE3BhK,EAEX,KAAKrnB,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,2CAAtBA,EAAQC,aAEpB,GAAID,EAAQ9f,OAAS,EAAG,CACpByoB,EAAW,GAAGxuB,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBACrDwuB,EAAW,GAAGvqB,QAAQ,GAAG0C,MAAQkf,EAAQ,GAAGxM,MAAM,GAAGpV,QAAQ,GAAG0C,MAChE,IAHoB,eAGXN,GACL,IAAMsoB,EAAc9I,EAAQ,GAAGxM,MAAM,GAAGC,OAAOtT,QAAO,SAACikB,GAAiB,OAAQA,EAAM9tB,OAASqyB,EAAW,GAAGlV,OAAOjT,GAAGlK,QAAS,GAChIqyB,EAAW,GAAGlV,OAAOjT,GAAGM,MAAQgoB,EAAcA,EAAYhoB,MAAQ,IAF7DN,EAAI,EAAGA,EAAImoB,EAAW,GAAGlV,OAAOvT,OAAQM,IAAM,EAA9CA,GAKb,OAAOqe,EAEX,QACI,OAAOA,I,UChFbxB,GAAY,CACd2L,eAAgB,GAChBC,qBAAsB,GACtBC,wBAAyB,IAuBdC,GApBY,WAA0C,IAAzCtK,EAAwC,uDAA3BxB,GAAWlc,EAAgB,uCACxD9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QAER,OAAQF,GACJ,KAAK+f,KAAkBE,gBACnB,OAAO,2BAAKuH,GAAZ,IAAmBmK,eAAgBzxB,IAEvC,KAAK6f,KAAkBI,sBACnB,OAAO,2BAAKqH,GAAZ,IAAmBoK,qBAAsB1xB,IAE7C,KAAK6f,KAAkBM,6BACnB,OAAO,2BAAKmH,GAAZ,IAAmBqK,wBAAyB3xB,IAE5C,QACA,OAAOsnB,I,UCpBbxB,GAAY,CACd7X,YAAa,CACTya,UAAW,kBACX3pB,KAAM,mBACNkd,MAAO,CACH,CACIqP,SAAU,IACVC,OAAQ,kBACRrP,OAAQ,CACJ,CACInd,KAAM,aACNwK,MAAO,IAEX,CACIxK,KAAM,cACNwK,MAAO,IAEX,CACIxK,KAAM,YACNwK,MAAO,IAEX,CACIxK,KAAM,eACNwK,MAAO,IAEX,CACIxK,KAAM,QACNwK,MAAO,IAEX,CACIxK,KAAM,eACNwK,MAAO,KAGf1C,QAAS,CACL,CACI9H,KAAM,eACNwK,MAAO,SA6ChBsoB,GArCgB,WAA0C,IAAzCvK,EAAwC,uDAA3BxB,GAAWlc,EAAgB,uCAC5D9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJ8xB,EAAoB,eAAQxK,EAAMrZ,YAAYgO,OAElD,OAAQnc,GACJ,KAAKiyB,KAAsBC,yBAQvB,OAPAF,EAAqB,GAAG5V,OAAO,GAAG3S,MAAQvJ,EAAQiyB,MAClDH,EAAqB,GAAG5V,OAAO,GAAG3S,MAAQvJ,EAAQkyB,MAClDJ,EAAqB,GAAG5V,OAAO,GAAG3S,MAAQvJ,EAAQmyB,MAClDL,EAAqB,GAAG5V,OAAO,GAAG3S,MAAQvJ,EAAQhB,MAClD8yB,EAAqB,GAAG5V,OAAO,GAAG3S,MAAQvJ,EAAQlB,MAClDgzB,EAAqB,GAAG5V,OAAO,GAAG3S,MAAQvJ,EAAQoyB,UAClDN,EAAqB,GAAGjrB,QAAQ,GAAG0C,MAAQvJ,EAAQqyB,aAC5C/K,EAEX,KAAKrnB,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,oBAAtBA,EAAQC,aAEpB,GAAGD,EAAQ9f,OAAS,EAAG,CACnB,IADoB,IAAD,WACVM,GACL,IAAMqpB,EAAuB7J,EAAQ,GAAGxM,MAAM,GAAGC,OAAOtT,QAAO,SAACikB,GAAiB,OAAQA,EAAM9tB,OAAS+yB,EAAqB,GAAG5V,OAAOjT,GAAGlK,QAAS,GACnJ+yB,EAAqB,GAAG5V,OAAOjT,GAAGM,MAAQ+oB,EAAuBA,EAAqB/oB,MAAQ,IAFzFN,EAAI,EAAGA,EAAI6oB,EAAqB,GAAG5V,OAAOvT,OAAQM,IAAM,EAAxDA,GAIT,IALmB,eAKVA,GACL,IAAMspB,EAAwB9J,EAAQ,GAAGxM,MAAM,GAAGpV,QAAQ+B,QAAO,SAACikB,GAAiB,OAAQA,EAAM9tB,OAAS+yB,EAAqB,GAAGjrB,QAAQoC,GAAGlK,QAAS,GACtJ+yB,EAAqB,GAAGjrB,QAAQoC,GAAGM,MAAQgpB,EAAwBA,EAAsBhpB,MAAQ,IAF5FN,EAAI,EAAGA,EAAI6oB,EAAqB,GAAGjrB,QAAQ8B,OAAQM,IAAM,EAAzDA,GAKb,OAAOqe,EAEV,QACG,OAAOA,I,UC9EbxB,GAAY,CACd7X,YAAa,CACTya,UAAW,iBACX3pB,KAAM,kBACNkd,MAAO,CACH,CACIqP,SAAU,IACV1oB,iBAAkB,GAClB2oB,OAAQ,wBACR1kB,QAAS,CACL,CACI9H,KAAM,iBACNwK,MAAO,SAmChBipB,GA3Be,WAA0C,IAAzClL,EAAwC,uDAA3BxB,GAAWlc,EAAgB,uCAC3D9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJ8rB,EAAW,eAAQxE,EAAMrZ,YAAYgO,OAEzC,OAAQnc,GACJ,KAAK2yB,KAAqBC,iBAGtB,OAFA5G,EAAY,GAAGjlB,QAAQ,GAAG0C,MAAQvJ,EAAQ2C,UAC1CmpB,EAAY,GAAGlpB,iBAAmB5C,EAAQ4C,iBACnC0kB,EAEX,KAAKrnB,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,mBAAtBA,EAAQC,aAEpB,GAAID,EAAQ9f,OAAS,EAAG,CACpB,IAAIgqB,EAAiBlK,EAAQ,GAAGxM,MAAM,GAAGpV,QAAQ,GACjDilB,EAAY,GAAGlpB,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBACtDkpB,EAAY,GAAGjlB,QAAQ,GAAG0C,MAAQopB,EAAiBA,EAAeppB,MAAQ,GAE9E,OAAO+d,EAEX,QACI,OAAOA,I,UC3CbxB,GAAY,CACd7X,YAAa,CACTya,UAAW,qBACX3pB,KAAM,sBACNkd,MAAO,CACH,CACIqP,SAAU,IACVC,OAAQ,GACRrP,OAAQ,CACJ,CACInd,KAAM,GACNwK,MAAO,IAEX,CACIxK,KAAM,GACNwK,MAAO,IAEX,CACIxK,KAAM,OACNwK,MAAO,IAEX,CACIxK,KAAM,mBACNwK,MAAO,IAEX,CACIxK,KAAM,iBACNwK,MAAO,IAEX,CACIxK,KAAM,UACNwK,MAAO,QAM3BqpB,6BAA8B,GAG9BC,2BAA4B,IA2DjBC,GAtDmB,WAA0C,IAAzCxL,EAAwC,uDAA3BxB,GAAWlc,EAAgB,uCAC/D9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJ+yB,EAAuB,eAAQzL,EAAMrZ,YAAYgO,OAErD,OAAQnc,GACJ,KAAKuhB,KAAyBE,yBAC1B,OAAO,2BAAK+F,GAAZ,IAAmBsL,6BAA8B5yB,IAErD,KAAKqhB,KAAyBQ,4BAgB1B,MAfuC,WAAnC7hB,EAAQsV,SAASK,eACjBod,EAAwB,GAAGxH,OAAS,+BACpCwH,EAAwB,GAAG7W,OAAO,GAAGnd,KAAO,6BAC5Cg0B,EAAwB,GAAG7W,OAAO,GAAGnd,KAAO,mCAE5Cg0B,EAAwB,GAAGxH,OAAS,2BACpCwH,EAAwB,GAAG7W,OAAO,GAAGnd,KAAO,yBAC5Cg0B,EAAwB,GAAG7W,OAAO,GAAGnd,KAAO,8BAEhDg0B,EAAwB,GAAG7W,OAAO,GAAG3S,MAAQ7D,KAAKgnB,UAAUpF,EAAMsL,8BAClEG,EAAwB,GAAG7W,OAAO,GAAG3S,MAAQ7D,KAAKgnB,UAAU1sB,EAAQS,SAASE,MAC7EoyB,EAAwB,GAAG7W,OAAO,GAAG3S,MAAQvJ,EAAQ0hB,aAAahZ,MAAM,KAAK,GAAK,IAClFqqB,EAAwB,GAAG7W,OAAO,GAAG3S,MAAQvJ,EAAQ8hB,iBACrDiR,EAAwB,GAAG7W,OAAO,GAAG3S,MAAQvJ,EAAQ+hB,eACrDgR,EAAwB,GAAG7W,OAAO,GAAG3S,MAAQvJ,EAAQyW,OAC9C,2BAAK6Q,GAAZ,IAAmBuL,2BAA4B7yB,EAAQS,WAE3D,KAAK4gB,KAAyBY,yBAI1B,OAHA8Q,EAAwB,GAAGxH,OAAS,2BACpCwH,EAAwB,GAAG7W,OAAO,GAAGnd,KAAO,yBAC5Cg0B,EAAwB,GAAG7W,OAAO,GAAGnd,KAAO,6BACrCuoB,EAEX,KAAKrnB,IAAsBsoB,yBAC3B,KAAKtoB,IAAsBuoB,gBACvB,OAAO,2BAAKlB,GAAZ,IAAmBsL,6BAA8B,GAAIC,2BAA4B,KAErF,KAAK5yB,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,uBAAtBA,EAAQC,aAEpB,GAAID,EAAQ9f,OAAS,EACjB,IADqB,IAAD,WACXM,GACL,IAAM+pB,EAA0BvK,EAAQ,GAAGxM,MAAM,GAAGC,OAAOtT,QAAO,SAACikB,GAAiB,OAAQA,EAAM9tB,OAASg0B,EAAwB,GAAG7W,OAAOjT,GAAGlK,QAAS,GACzJg0B,EAAwB,GAAG7W,OAAOjT,GAAGM,MAAQypB,EAA0BA,EAAwBzpB,MAAQ,IAFlGN,EAAI,EAAGA,EAAI8pB,EAAwB,GAAG7W,OAAOvT,OAAQM,IAAM,EAA3DA,GAKb,OAAOqe,EAEX,QACI,OAAOA,I,SC/FbxB,GAAY,CACd7X,YAAa,CACTya,UAAW,iBACX3pB,KAAM,kBACNkd,MAAO,CACH,CACIqP,SAAU,IACVC,OAAQ,iBACR3oB,iBAAkB,GAClBsZ,OAAQ,CACJ,CACInd,KAAM,WACNwK,MAAO,IAEX,CACIxK,KAAM,GACNwK,MAAO,IAEX,CACIxK,KAAM,UACNwK,MAAO,IAEX,CACIxK,KAAM,qBACNwK,MAAO,IAEX,CACIxK,KAAM,qBACNwK,MAAO,KAGf1C,QAAS,CACL,CACI9H,KAAM,SACNwK,MAAO,QAM3BwjB,oBAAqB,GAGrBC,oBAAqB,GAGrBiG,kCAAmC,GAGnCC,kCAAmC,GAGpCC,gCAAiC,IA8DrBC,GAzDe,WAA0C,IAAzC9L,EAAwC,uDAA3BxB,GAAWlc,EAAgB,uCAC3D9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJqzB,EAAmB,eAAQ/L,EAAMrZ,YAAYgO,OAEjD,OAAQnc,GACJ,KAAKwzB,KAAqBC,yCACtB,OAAO,2BAAKjM,GAAZ,IAAmB2L,kCAAmCjzB,IAE1D,KAAKszB,KAAqBE,yCACtB,OAAO,2BAAKlM,GAAZ,IAAmB4L,kCAAmClzB,IAE1D,KAAKszB,KAAqBG,sCACtB,OAAO,2BAAKnM,GAAZ,IAAmB6L,gCAAiCnzB,IAExD,KAAKszB,KAAqBI,qBACtB,OAAO,2BAAKpM,GAAZ,IAAmByF,oBAAqB/sB,IAE5C,KAAKszB,KAAqBK,qBACtB,OAAO,2BAAKrM,GAAZ,IAAmB0F,oBAAqBhtB,IAE5C,KAAKszB,KAAqBM,uBAStB,OARAP,EAAoB,GAAGnX,OAAO,GAAG3S,MAAQvJ,EAAQwT,SACjD6f,EAAoB,GAAGnX,OAAO,GAAGnd,KAAOiB,EAAQ6uB,qBAChDwE,EAAoB,GAAGnX,OAAO,GAAG3S,MAAQvJ,EAAQ6P,YACjDwjB,EAAoB,GAAGnX,OAAO,GAAG3S,MAAQvJ,EAAQyQ,QACjD4iB,EAAoB,GAAGnX,OAAO,GAAG3S,MAAQvJ,EAAQf,aACjDo0B,EAAoB,GAAGnX,OAAO,GAAG3S,MAAQvJ,EAAQ6zB,mBACjDR,EAAoB,GAAGzwB,iBAAmB5C,EAAQ4C,iBAClDywB,EAAoB,GAAGxsB,QAAQ,GAAG0C,MAAuC,MAA/BvJ,EAAQwT,SAASvD,OAAO,GAAa,oBAAsB,QAC9FqX,EAEX,KAAKrnB,IAAsBsoB,yBAC3B,KAAKtoB,IAAsBuoB,gBACvB,OAAO,2BAAKlB,GAAZ,IAAmByF,oBAAqB,GAAIC,oBAAoB,GAAIiG,kCAAkC,GAAGC,kCAAkC,GAAIC,gCAAgC,KAEnL,KAAKlzB,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,mBAAtBA,EAAQC,aAEpB,GAAGD,EAAQ9f,OAAS,EAAG,CACnB0qB,EAAoB,GAAGzwB,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBAC9DywB,EAAoB,GAAGxsB,QAAQ,GAAG0C,MAAQkf,EAAQ,GAAGxM,MAAM,GAAGpV,QAAQ,GAAG0C,MACzE8pB,EAAoB,GAAGnX,OAAO,GAAGnd,KAAO0pB,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAGnd,KACtEs0B,EAAoB,GAAGnX,OAAO,GAAG3S,MAAQkf,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAG3S,MACvE,IALmB,eAKVN,GACL,IAAMglB,EAAgBxF,EAAQ,GAAGxM,MAAM,GAAGC,OAAOtT,QAAO,SAACikB,GAAiB,OAAQA,EAAM9tB,OAASs0B,EAAoB,GAAGnX,OAAOjT,GAAGlK,QAAS,GAC3Is0B,EAAoB,GAAGnX,OAAOjT,GAAGM,MAAQ0kB,EAAgBA,EAAc1kB,MAAQ,IAF1EN,EAAI,EAAGA,EAAIoqB,EAAoB,GAAGnX,OAAOvT,OAAQM,IAAM,EAAvDA,GAKb,OAAOqe,EAEV,QACG,OAAOA,IC9GbxB,GAAY,CACd7X,YAAa,CACTya,UAAW,gBACX3pB,KAAM,iBACNkd,MAAO,CACH,CACIqP,SAAU,IACV1oB,iBAAkB,GAClB2oB,OAAQ,GACRrP,OAAQ,CACJ,CACInd,KAAM,SACNwK,MAAO,QAM3BuqB,uBAAwB,GAExBC,wBAAyB,GACzBC,wBAAyB,GACzBC,qBAAsB,IAiNXC,GA9Mc,WAA0C,IAAzC5M,EAAwC,uDAA3BxB,GAAWlc,EAAgB,uCAC1D9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QAGR,OAAQF,GACJ,KAAKwpB,IAAoB6K,yBACrB,IACkD,EAD9CC,EAAuB,GAC3B,GAAsB,6BAAnBp0B,EAAQurB,OACP6I,EACA,CACI1L,UAAW,gBACX3pB,KAAM,iBACNkd,MAAO,CACH,CACIqP,SAAU,IACV1oB,iBAAkB5C,EAAQ4C,iBAC1B2oB,OAAQvrB,EAAQurB,OAChBrP,OAAQ,CACJ,CACInd,KAAM,SACNwK,MAAOvJ,EAAQgB,aAEnB,CACIjC,KAAM,WACNwK,MAAOvJ,EAAQq0B,2BAA2BhZ,UAE9C,CACItc,KAAM,cACNwK,MAAOvJ,EAAQq0B,2BAA2BC,mBAE9C,CACIv1B,KAAM,WACNwK,OAAO,UAAAvJ,EAAQq0B,kCAAR,eAAoC3lB,UAAW1O,EAAQq0B,2BAA2B3lB,SAAW,KAExG,CACI3P,KAAM,eACNwK,MAAOvJ,EAAQq0B,2BAA2Btc,WAE9C,CACIhZ,KAAM,UACNwK,MAAOvJ,EAAQq0B,2BAA2BE,MAE9C,CACIx1B,KAAM,cACNwK,MAAOvJ,EAAQq0B,2BAA2BG,MAE9C,CACIz1B,KAAM,aACNwK,MAAOvJ,EAAQ4vB,SAGvB/oB,QAAS,CACL,CACI9H,KAAM,SACNwK,MAAOvJ,EAAQq0B,2BAA2BI,0BAQ9DL,EAAkB,CACd1L,UAAW,gBACX3pB,KAAM,iBACNkd,MAAO,CACH,CACIqP,SAAU,IACV1oB,iBAAkB5C,EAAQ4C,iBAC1B2oB,OAAQvrB,EAAQurB,OAChBrP,OAAQ,CACJ,CACInd,KAAM,SACNwK,MAAOvJ,EAAQgB,iBAUvC,OAAO,2BAAIsmB,GAAX,IAAkBrZ,YAAammB,IAEnC,KAAK9K,IAAoBnJ,6BACrB,OAAO,2BAAKmH,GAAZ,IAAmBwM,uBAAwB9zB,IAC3C,KAAKspB,IAAoBoL,iCACrB,OAAO,2BAAKpN,GAAZ,IAAmByM,wBAAyB/zB,IAEhD,KAAKspB,IAAoBqL,iCACrB,OAAO,2BAAKrN,GAAZ,IAAmB0M,wBAAyBh0B,IAEhD,KAAKspB,IAAoBsL,8BACrB,OAAO,2BAAKtN,GAAZ,IAAmB2M,qBAAsBj0B,IAEjD,KAAKC,IAAsBwpB,qBACvB,IAAIoL,EAAsB,CACtBnM,UAAW,gBACX3pB,KAAM,iBACNkd,MAAO,CACH,CACIqP,SAAU,IACV1oB,iBAAkB,GAClB2oB,OAAQ,GACRrP,OAAQ,CACJ,CACInd,KAAM,SACNwK,MAAO,QAMvBkf,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,kBAAtBA,EAAQC,aAmFpB,OAjFID,EAAQ9f,OAAS,IAYbksB,EAD8B,6BAA/BpM,EAAQ,GAAGxM,MAAM,GAAGsP,OAEnB,CACI7C,UAAW,gBACX3pB,KAAM,iBACNkd,MAAO,CACH,CACIqP,SAAU,IACV1oB,iBAAkB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBACtC2oB,OAAQ9C,EAAQ,GAAGxM,MAAM,GAAGsP,OAC5BrP,OAAQ,CACJ,CACInd,KAAM,SACNwK,MAAOkf,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAG3S,MAAQkf,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAG3S,MAAQ,IAEvF,CACIxK,KAAM,WACNwK,MAAOkf,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAG3S,MAAQkf,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAG3S,MAAQ,IAEvF,CACIxK,KAAM,cACNwK,MAAOkf,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAG3S,MAAQkf,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAG3S,MAAQ,IAEvF,CACIxK,KAAM,WACNwK,MAAOkf,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAG3S,MAAQkf,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAG3S,MAAQ,IAEvF,CACIxK,KAAM,eACNwK,MAAOkf,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAG3S,MAAQkf,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAG3S,MAAQ,IAEvF,CACIxK,KAAM,UACNwK,MAAOkf,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAG3S,MAAQkf,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAG3S,MAAQ,IAEvF,CACIxK,KAAM,cACNwK,MAAOkf,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAG3S,MAAQkf,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAG3S,MAAQ,KAG3F1C,QAAS,CACL,CACI9H,KAAM,SACNwK,MAAOkf,EAAQ,GAAGxM,MAAM,GAAGpV,QAAQ,GAAG0C,MAAQkf,EAAQ,GAAGxM,MAAM,GAAGpV,QAAQ,GAAG0C,MAAQ,QAQxF,CACbmf,UAAW,gBACX3pB,KAAM,iBACNkd,MAAO,CACH,CACIqP,SAAU,IACV1oB,iBAAkB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBACtC2oB,OAAQ9C,EAAQ,GAAGxM,MAAM,GAAGsP,OAC5BrP,OAAQ,CACJ,CACInd,KAAM,SACNwK,MAAOkf,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAG3S,MAAQkf,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GAAG3S,MAAQ,SAQxG,2BAAI+d,GAAX,IAAkBrZ,YAAa4mB,IAEnC,QACI,OAAOvN,ICnObxB,GAAY,CACd7X,YAAa,CACTya,UAAW,kBACX3pB,KAAM,mBACNkd,MAAO,CACH,CACIqP,SAAU,IACV1oB,iBAAkB,GAClB2oB,OAAQ,kBACRrP,OAAQ,CACJ,CACInd,KAAM,kBACNwK,MAAO,SAmChBurB,GA3BgB,WAA0C,IAAzCxN,EAAwC,uDAA3BxB,GAAWlc,EAAgB,uCAC5D9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJ+0B,EAAY,eAAQzN,EAAMrZ,YAAYgO,OAE1C,OAAQnc,GACJ,KAAK4f,IAAsBE,gBAGvB,OAFAmV,EAAa,GAAG7Y,OAAO,GAAG3S,MAAQvJ,EAAQ2C,UAC1CoyB,EAAa,GAAGnyB,iBAAmB5C,EAAQ4C,iBACpC0kB,EAEX,KAAKrnB,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,oBAAtBA,EAAQC,aAEpB,GAAID,EAAQ9f,OAAS,EAAG,CACpBosB,EAAa,GAAGnyB,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBACvD,IAAIoyB,EAAkBvM,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GACjD6Y,EAAa,GAAG7Y,OAAO,GAAG3S,MAAQyrB,EAAkBA,EAAgBzrB,MAAQ,GAEhF,OAAO+d,EAEX,QACI,OAAOA,I,UC3CbxB,GAAY,CAChB7X,YAAa,CACXya,UAAW,kBACX3pB,KAAM,oBACNkd,MAAO,CACL,CACEqP,SAAU,IACV1oB,iBAAkB,GAClB2oB,OAAQ,kBACRrP,OAAQ,CACN,CACEnd,KAAM,aACNwK,MAAO,IAET,CACExK,KAAM,cACNwK,MAAO,KAGX1C,QAAS,CACP,CACE9H,KAAM,oBACNwK,MAAO,QAMjBmZ,wBAAyB,GAGzBuS,sBAAuB,GAGvBnS,YAAa,IAsCAoS,GAnCgB,WAA0C,IAAzC5N,EAAwC,uDAA3BxB,GAAWlc,EAAgB,uCAC9D9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJm1B,EAAe,eAAQ7N,EAAMrZ,YAAYgO,OAE7C,OAAQnc,GACN,KAAKoiB,KAAsBM,0BACzB,OAAO,2BAAK8E,GAAZ,IAAmB5E,wBAAyB1iB,IAE9C,KAAKkiB,KAAsBE,wBACzB,OAAO,2BAAKkF,GAAZ,IAAmB2N,sBAAuBj1B,IAE5C,KAAKkiB,KAAsBa,uBAKzB,OAJAoS,EAAgB,GAAGjZ,OAAO,GAAG3S,MAAQvJ,EAAQ2iB,UAC7CwS,EAAgB,GAAGjZ,OAAO,GAAG3S,MAAQvJ,EAAQ4iB,iBAC7CuS,EAAgB,GAAGtuB,QAAQ,GAAG0C,MAAQvJ,EAAQ6iB,eAC9CsS,EAAgB,GAAGvyB,iBAAmB5C,EAAQ4C,iBACvC,2BAAI0kB,GAAX,IAAkBxE,YAAc9iB,EAAQ8iB,cAE1C,KAAK7iB,IAAsBwpB,qBACzB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACrC,MAA8B,oBAAtBA,EAAQC,aAElB,GAAID,EAAQ9f,OAAS,EAAG,CACtB,IAAIojB,EAAkBtD,EAAQ,GAAGxM,MAAM,GAAGpV,QAAQ,GAClDsuB,EAAgB,GAAGvyB,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBAC1DuyB,EAAgB,GAAGtuB,QAAQ,GAAG0C,MAAQwiB,EAAkBA,EAAgBxiB,MAAQ,GAElF,OAAO+d,EAET,QACE,OAAOA,I,UCnEPxB,GAAY,CACd7X,YAAa,CACTya,UAAW,sBACX3pB,KAAM,yBACNkd,MAAO,CACH,CACIqP,SAAU,IACVC,OAAQ,eACR3oB,iBAAkB,GAClBsZ,OAAQ,CACJ,CACInd,KAAM,eACNwK,MAAO,SAuChB6rB,GA/BoB,WAA0C,IAAzC9N,EAAwC,uDAA3BxB,GAAWlc,EAAgB,uCAChE9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJq1B,EAAiB,eAAQ/N,EAAMrZ,YAAYgO,OAE/C,OAAQnc,GAEJ,KAAKw1B,KAA0BC,+BAG3B,OAFAF,EAAkB,GAAGzyB,iBAAmB5C,EAAQ4C,iBAChDyyB,EAAkB,GAAGnZ,OAAO,GAAG3S,MAAQvJ,EAAQw1B,cACxClO,EAEX,KAAKrnB,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,wBAAtBA,EAAQC,aAEpB,GAAID,EAAQ9f,OAAS,EAAG,CACpB0sB,EAAkB,GAAGzyB,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBAC5D,IAFoB,eAEXqG,GACL,IAAMglB,EAAgBxF,EAAQ,GAAGxM,MAAM,GAAGC,OAAOtT,QAAO,SAACikB,GAAiB,OAAQA,EAAM9tB,OAASs2B,EAAkB,GAAGnZ,OAAOjT,GAAGlK,QAAS,GACzIs2B,EAAkB,GAAGnZ,OAAOjT,GAAGM,MAAQ0kB,EAAgBA,EAAc1kB,MAAQ,IAFxEN,EAAI,EAAGA,EAAIosB,EAAkB,GAAGnZ,OAAOvT,OAAQM,IAAM,EAArDA,GAKb,OAAOqe,EAEX,QACI,OAAOA,I,UC/CbxB,GAAY,CACd7X,YAAa,CACTya,UAAW,aACX3pB,KAAM,cACNkd,MAAO,CACH,CACIqP,SAAU,IACVC,OAAQ,aACRrP,OAAQ,CACJ,CACInd,KAAM,OACNwK,MAAO,IAEX,CACIxK,KAAM,WACNwK,MAAO,IAEX,CACIxK,KAAM,SACNwK,MAAO,IAEX,CACIxK,KAAM,iBACNwK,MAAO,QAM3BksB,yBAA0B,IA6CfC,GAxCW,WAA0C,IAAzCpO,EAAwC,uDAA3BxB,GAAWlc,EAAgB,uCACvD9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJ21B,EAAe,eAAQrO,EAAMrZ,YAAYgO,OAE7C,OAAQnc,GAEJ,KAAKklB,KAAiBE,+BAClB,OAAO,2BAAKoC,GAAZ,IAAmBmO,yBAA0Bz1B,IAEjD,KAAKglB,KAAiBK,mBAMlB,OALAsQ,EAAgB,GAAGzZ,OAAO,GAAG3S,MAAQvJ,EAAQM,KAC7Cq1B,EAAgB,GAAGzZ,OAAO,GAAG3S,MAAQvJ,EAAQwV,SAC7CmgB,EAAgB,GAAGzZ,OAAO,GAAG3S,MAAQvJ,EAAQyV,OAC7CkgB,EAAgB,GAAGzZ,OAAO,GAAG3S,MAAQvJ,EAAQolB,cAEtCkC,EAEX,KAAKrnB,IAAsBsoB,yBAC3B,KAAKtoB,IAAsBuoB,gBACvB,OAAO,2BAAKlB,GAAZ,IAAmBmO,yBAA0B,KAEjD,KAAKx1B,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,eAAtBA,EAAQC,aAEpB,GAAID,EAAQ9f,OAAS,EACjB,IADqB,IAAD,WACXM,GACL,IAAMglB,EAAgBxF,EAAQ,GAAGxM,MAAM,GAAGC,OAAOtT,QAAO,SAACikB,GAAiB,OAAQA,EAAM9tB,OAAS42B,EAAgB,GAAGzZ,OAAOjT,GAAGlK,QAAS,GACvI42B,EAAgB,GAAGzZ,OAAOjT,GAAGM,MAAQ0kB,EAAgBA,EAAc1kB,MAAQ,IAFtEN,EAAI,EAAGA,EAAI0sB,EAAgB,GAAGzZ,OAAOvT,OAAQM,IAAM,EAAnDA,GAKb,OAAOqe,EAEX,QACI,OAAOA,I,UCrEbxB,GAAY,CACd7X,YAAa,CACTya,UAAW,oBACX3pB,KAAM,uBACNkd,MAAO,CACH,CACIqP,SAAU,IACVC,OAAQ,oBACR3oB,iBAAkB,GAClBsZ,OAAQ,CACJ,CACInd,KAAM,oBACNwK,MAAO,IAEX,CACIxK,KAAM,kBACNwK,MAAO,IAEX,CACIxK,KAAM,cACNwK,MAAO,IAEX,CACIxK,KAAM,iBACNwK,MAAO,IAEX,CACIxK,KAAM,UACNwK,MAAO,IAEX,CACIxK,KAAM,OACNwK,MAAO,IAEX,CACIxK,KAAM,gBACNwK,MAAO,IAEX,CACIxK,KAAM,kBACNwK,MAAO,IAEX,CACIxK,KAAM,YACNwK,MAAO,IAEX,CACIxK,KAAM,cACNwK,MAAO,IAEX,CACIxK,KAAM,aACNwK,MAAO,IAEX,CACIxK,KAAM,WACNwK,MAAO,SAM3B+Z,oBAAsB,IAmDXsS,GA9CkB,WAA0C,IAAD,IAAxCtO,EAAwC,uDAA3BxB,GAAWlc,EAAgB,uCAC9D9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJ61B,EAAY,eAAQvO,EAAMrZ,YAAYgO,OAE1C,OAAQnc,GACJ,KAAKkjB,KAAwBO,mBAczB,OAbAsS,EAAa,GAAG3Z,OAAO,GAAG3S,MAAQvJ,EAAQqjB,UAC1CwS,EAAa,GAAG3Z,OAAO,GAAG3S,MAAQvJ,EAAQ4X,WAC1Cie,EAAa,GAAG3Z,OAAO,GAAG3S,MAAQvJ,EAAQsjB,oBAAoBwS,WAC9DD,EAAa,GAAG3Z,OAAO,GAAG3S,MAAQvJ,EAAQsjB,oBAAoByS,cAC9DF,EAAa,GAAG3Z,OAAO,GAAG3S,MAAQvJ,EAAQsjB,oBAAoB0S,QAC9DH,EAAa,GAAG3Z,OAAO,GAAG3S,MAAQvJ,EAAQsjB,oBAAoBiR,KAC9DsB,EAAa,GAAG3Z,OAAO,GAAG3S,MAAQvJ,EAAQsjB,oBAAoB2S,aAC9DJ,EAAa,GAAG3Z,OAAO,GAAG3S,MAAQvJ,EAAQsjB,oBAAoB4S,eAC9DL,EAAa,GAAG3Z,OAAO,GAAG3S,MAAQvJ,EAAQsjB,oBAAoB6S,SAC9DN,EAAa,GAAG3Z,OAAO,GAAG3S,MAAQvJ,EAAQsjB,oBAAoB8S,WAC9DP,EAAa,GAAG3Z,OAAO,IAAI3S,MAAQvJ,EAAQsjB,oBAAoB+S,UAC/DR,EAAa,GAAG3Z,OAAO,IAAI3S,OAAe,OAAPvJ,QAAO,IAAPA,GAAA,UAAAA,EAASsjB,2BAAT,eAA8B5U,UAA9B,OAAyC1O,QAAzC,IAAyCA,GAAzC,UAAyCA,EAASsjB,2BAAlD,aAAyC,EAA8B5U,SAAW,IACrHmnB,EAAa,GAAGjzB,iBAAmB5C,EAAQ4C,iBACpC0kB,EAEX,KAAKtE,KAAwBE,qBAG7B,KAAKF,KAAwBG,qBACzB,OAAO,2BAAKmE,GAAZ,IAAmBhE,oBAAqBtjB,IAE5C,KAAKC,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,sBAAtBA,EAAQC,aAEpB,GAAID,EAAQ9f,OAAS,EAAG,CACpBktB,EAAa,GAAGjzB,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBACvD,IAFoB,eAEXqG,GACL,IAAMqtB,EAAoB7N,EAAQ,GAAGxM,MAAM,GAAGC,OAAOtT,QAAO,SAACikB,GAAiB,OAAQA,EAAM9tB,OAAS82B,EAAa,GAAG3Z,OAAOjT,GAAGlK,QAAS,GACxI82B,EAAa,GAAG3Z,OAAOjT,GAAGM,MAAQ+sB,EAAoBA,EAAkB/sB,MAAQ,IAF3EN,EAAI,EAAGA,EAAI4sB,EAAa,GAAG3Z,OAAOvT,OAAQM,IAAM,EAAhDA,GAKb,OAAOqe,EAEX,QACI,OAAOA,I,UC7GbxB,GAAY,CACd7X,YAAa,CACTya,UAAW,gBACP3pB,KAAM,gBACNkd,MAAO,CACH,CACIqP,SAAU,IACVC,OAAQ,gBACR3oB,iBAAkB,GAClBsZ,OAAQ,CACJ,CACInd,KAAM,SACNwK,MAAO,SAmClBgtB,GA3Bc,WAA0C,IAAzCjP,EAAwC,uDAA3BxB,GAAWlc,EAAgB,uCAC5D9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJw2B,EAAc,eAAQlP,EAAMrZ,YAAYgO,OAE5C,OAAQnc,GACN,KAAK22B,KAAoBC,0BAGvB,OAFAF,EAAe,GAAGta,OAAO,GAAG3S,MAAQvJ,EAAQ2C,UAC5C6zB,EAAe,GAAG5zB,iBAAmB5C,EAAQ4C,iBACtC0kB,EAET,KAAKrnB,IAAsBwpB,qBACzB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACrC,MAA8B,kBAAtBA,EAAQC,aAElB,GAAID,EAAQ9f,OAAS,EAAG,CACtB,IAAIojB,EAAkBtD,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GACjDsa,EAAe,GAAG5zB,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBACzD4zB,EAAe,GAAGta,OAAO,GAAG3S,MAAQwiB,EAAkBA,EAAgBxiB,MAAQ,GAEhF,OAAO+d,EAET,QACE,OAAOA,I,UC3CTxB,GAAY,CACd7X,YAAa,CACTya,UAAW,kBACX3pB,KAAM,kBACNkd,MAAO,CACH,CACIqP,SAAU,IACVC,OAAQ,kBACR3oB,iBAAkB,GAClBsZ,OAAQ,CACJ,CACInd,KAAM,MACNwK,MAAO,QAM3BwjB,oBAAqB,GAGrBC,oBAAqB,GAGrBC,iBAAkB,IA4CL0J,GAvCgB,WAA0C,IAAzCrP,EAAwC,uDAA3BxB,GAAWlc,EAAgB,uCAC9D9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJke,EAAoB,eAAQoJ,EAAMrZ,YAAYgO,OAElD,OAAQnc,GACN,KAAKme,KAAsBE,uBAGzB,OAFAD,EAAqB,GAAGhC,OAAO,GAAG3S,MAAQvJ,EAAQwB,IAClD0c,EAAqB,GAAGtb,iBAAmB5C,EAAQ4C,iBAC5C0kB,EAEP,KAAKrJ,KAAsBG,kCACvB,OAAO,2BAAKkJ,GAAZ,IAAmByF,oBAAqB/sB,IAE5C,KAAKie,KAAsBK,kCACvB,OAAO,2BAAKgJ,GAAZ,IAAmB0F,oBAAqBhtB,IAE5C,KAAKie,KAAsBO,+BACvB,OAAO,2BAAK8I,GAAZ,IAAmB2F,iBAAkBjtB,IAEzC,KAAKC,IAAsBuoB,gBACvB,OAAO,2BAAKlB,GAAZ,IAAmByF,oBAAqB,KAE9C,KAAK9sB,IAAsBwpB,qBACzB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACrC,MAA8B,oBAAtBA,EAAQC,aAElB,GAAID,EAAQ9f,OAAS,EAAG,CACtB,IAAIojB,EAAkBtD,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GACjDgC,EAAqB,GAAGtb,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBAC/Dsb,EAAqB,GAAGhC,OAAO,GAAG3S,MAAQwiB,EAAkBA,EAAgBxiB,MAAQ,GAEtF,OAAO+d,EAET,QACE,OAAOA,I,UChETxB,GAAY,CACd7X,YAAa,CACTya,UAAW,qBACX3pB,KAAM,uBACNkd,MAAO,CACH,CACIqP,SAAU,IACVC,OAAQ,qBACR3oB,iBAAkB,GAClBsZ,OAAQ,CACJ,CACInd,KAAM,YACNwK,MAAO,QAM3BwjB,oBAAqB,GAGrBC,oBAAqB,GAGrBC,iBAAkB,IAyCL2J,GApCmB,WAA0C,IAAzCtP,EAAwC,uDAA3BxB,GAAWlc,EAAgB,uCACjE9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJke,EAAoB,eAAQoJ,EAAMrZ,YAAYgO,OAElD,OAAQnc,GACN,KAAK2e,KAAyBC,2BAG5B,OAFAR,EAAqB,GAAGhC,OAAO,GAAG3S,MAAQvJ,EAAQwB,IAClD0c,EAAqB,GAAGtb,iBAAmB5C,EAAQ4C,iBAC5C0kB,EAEP,KAAK7I,KAAyBG,sCAC1B,OAAO,2BAAK0I,GAAZ,IAAmByF,oBAAqB/sB,IAE5C,KAAKye,KAAyBI,sCAC1B,OAAO,2BAAKyI,GAAZ,IAAmB0F,oBAAqBhtB,IAE5C,KAAKye,KAAyBK,mCAC1B,OAAO,2BAAKwI,GAAZ,IAAmB2F,iBAAkBjtB,IAE3C,KAAKC,IAAsBwpB,qBACzB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACrC,MAA8B,uBAAtBA,EAAQC,aAElB,GAAID,EAAQ9f,OAAS,EAAG,CACtB,IAAIojB,EAAkBtD,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GACjDgC,EAAqB,GAAGtb,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBAC/Dsb,EAAqB,GAAGhC,OAAO,GAAG3S,MAAQwiB,EAAkBA,EAAgBxiB,MAAQ,GAEtF,OAAO+d,EAET,QACE,OAAOA,I,UC7DTxB,GAAY,CACd7X,YAAa,CACTya,UAAW,yBACX3pB,KAAM,4BACNkd,MAAO,CACH,CACIqP,SAAU,IACVC,OAAQ,yBACR3oB,iBAAkB,GAClBsZ,OAAQ,CACJ,CACInd,KAAM,YACNwK,MAAO,QAM3BwjB,oBAAqB,GAGrBC,oBAAqB,GAGrBC,iBAAkB,IAyCL4J,GApCuB,WAA0C,IAAzCvP,EAAwC,uDAA3BxB,GAAWlc,EAAgB,uCACrE9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJke,EAAoB,eAAQoJ,EAAMrZ,YAAYgO,OAElD,OAAQnc,GACN,KAAKif,KAA6BZ,uBAGhC,OAFAD,EAAqB,GAAGhC,OAAO,GAAG3S,MAAQvJ,EAAQwB,IAClD0c,EAAqB,GAAGtb,iBAAmB5C,EAAQ4C,iBAC5C0kB,EAEP,KAAKvI,KAA6BC,6BAC9B,OAAO,2BAAKsI,GAAZ,IAAmByF,oBAAqB/sB,IAE5C,KAAK+e,KAA6BE,6BAC9B,OAAO,2BAAKqI,GAAZ,IAAmB0F,oBAAqBhtB,IAE5C,KAAK+e,KAA6BG,0BAC9B,OAAO,2BAAKoI,GAAZ,IAAmB2F,iBAAkBjtB,IAE3C,KAAKC,IAAsBwpB,qBACzB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACrC,MAA8B,2BAAtBA,EAAQC,aAElB,GAAID,EAAQ9f,OAAS,EAAG,CACtB,IAAIojB,EAAkBtD,EAAQ,GAAGxM,MAAM,GAAGC,OAAO,GACjDgC,EAAqB,GAAGtb,iBAAmB6lB,EAAQ,GAAGxM,MAAM,GAAGrZ,iBAC/Dsb,EAAqB,GAAGhC,OAAO,GAAG3S,MAAQwiB,EAAkBA,EAAgBxiB,MAAQ,GAEtF,OAAO+d,EAET,QACE,OAAOA,I,UC7DTxB,GAAY,CACd7X,YAAa,CACTya,UAAW,sBACX3pB,KAAM,uBACNkd,MAAO,CACH,CACIqP,SAAU,IACVC,OAAQ,sBACRrP,OAAQ,CACJ,CACInd,KAAM,eACNwK,MAAO,IAEX,CACIxK,KAAM,gBACNwK,MAAO,QAM3BqpB,6BAA8B,IAoCnBkE,GAjCoB,WAA0C,IAAzCxP,EAAwC,uDAA3BxB,GAAWlc,EAAgB,uCAChE9J,EAAS8J,EAAT9J,KACAE,EAAY4J,EAAZ5J,QACJ+2B,EAAwB,eAAQzP,EAAMrZ,YAAYgO,OAEtD,OAAQnc,GACJ,KAAKwlB,KAA0BE,8BAC3B,OAAO,2BAAK8B,GAAZ,IAAmBsL,6BAA8B5yB,IACrD,KAAKslB,KAA0BK,qBAG3B,OAFAoR,EAAyB,GAAG7a,OAAO,GAAG3S,MAAQvJ,EAAQg3B,IACtDD,EAAyB,GAAG7a,OAAO,GAAG3S,MAAQvJ,EAAQi3B,KAC/C3P,EACX,KAAKrnB,IAAsBsoB,yBAC3B,KAAKtoB,IAAsBuoB,gBACvB,OAAO,2BAAKlB,GAAZ,IAAmBsL,6BAA8B,GAAIC,2BAA4B,KAErF,KAAK5yB,IAAsBwpB,qBACvB,IAAIhB,EAAUzoB,EAAQgO,SAASpF,QAAO,SAAC6f,GACnC,MAA8B,wBAAtBA,EAAQC,aAEpB,GAAID,EAAQ9f,OAAS,EACjB,IADqB,IAAD,WACXM,GACL,IAAM+pB,EAA0BvK,EAAQ,GAAGxM,MAAM,GAAGC,OAAOtT,QAAO,SAACikB,GAAiB,OAAQA,EAAM9tB,OAASg4B,EAAyB,GAAG7a,OAAOjT,GAAGlK,QAAS,GAC1Jg4B,EAAyB,GAAG7a,OAAOjT,GAAGM,MAAQypB,EAA0BA,EAAwBzpB,MAAQ,IAFnGN,EAAI,EAAGA,EAAI8tB,EAAyB,GAAG7a,OAAOvT,OAAQM,IAAM,EAA5DA,GAKb,OAAOqe,EAEX,QACI,OAAOA,ICaJ4P,GAnCUC,0BAAgB,CACvCnvB,gBAAkBqf,EAClBpf,aAAe+hB,EACfxf,aAAe8f,EACfrf,6BAA+BmgB,EAC/BgM,gCAAkC1L,EAClC2L,aAAexL,EACfyL,aAAehL,EACfiL,UAAYtL,EACZpQ,gBAAkBqR,EAClBsK,mBAAqBhK,EACrBiK,oBAAsBC,EACtBC,WAAa5H,EACb9jB,YAAcukB,GACdlkB,gBAAkBskB,GAClBgH,mBAAqBzG,GACrB0G,sBAAwBrG,GACxBsG,gBAAkBjG,GAClBkG,YAAcnG,GACdoG,eAAiBxF,GACjByF,mBAAqBnF,GACrBoF,eAAgB9E,GAChB+E,cAAgBjE,GAChBzZ,gBAAiBqa,GACjBsD,gBAAiBlD,GACjBmD,oBAAqBjD,GACrBkD,WAAY5C,GACZ6C,kBAAmB3C,GACnB4C,cAAejC,GACfkC,gBAAiB9B,GACjB+B,mBAAoB9B,GACpB+B,uBAAwB9B,GACxB+B,oBAAqB9B,KC5DnB+B,GAAoB,GAItBA,GAAc,CAACC,KAGjB,IACMC,GAAY,CADSC,kBAAe,WAAf,cAAmBH,MAExCI,GAAoBC,sBAAmB,WAAnB,EAAuBH,IAE3ChxB,GAAQoxB,sBAAYjC,GAAkB+B,IAC7BlxB,Q,iCClBf,wEAGWkoB,EAHX,Q,SAGWA,K,2CAAAA,M,KAIX,IAAMmJ,EAAqB,SAACjJ,EAAmB/B,EAAqCxrB,GAClF,OAAO,SAAUhD,EAAcC,GAC3BD,EAAS,CAACE,KAAMmwB,EAAiBC,oBAAqBlwB,QAAQ,CAACmwB,cAAeA,EAAe/B,+BAAgCA,EAAgCxrB,iBAAkBA,KAC/KhD,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,mB,iCCVzE,wEAEW+xB,EAFX,Q,SAEWA,K,qDAAAA,M,KAKX,IAAMsH,EAAqB,SAACpH,EAAYC,EAAYC,EAAYnzB,EAAaF,EAAYszB,EAAgBC,GACrG,OAAO,SAAUzyB,EAAeC,GAC5BD,EAAS,CAAEE,KAAMiyB,EAAsBC,yBAA0BhyB,QAAS,CAACiyB,MAAOA,EAAOC,MAAOA,EAAOC,MAAOA,EAAOnzB,MAAOA,EAAOF,MAAOA,EAAOszB,UAAWA,EAAWC,aAAcA,KACrLzyB,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,wB,iCCV3E,wEAEWyyB,EAFX,Q,SAEWA,K,qCAAAA,M,KAIX,IAAM6G,EAAkB,SAAC32B,EAAgBC,GACvC,OAAO,SAAUhD,EAAeC,GAC9BD,EAAS,CAAEE,KAAM2yB,EAAqBC,iBAAkB1yB,QAAS,CAAC2C,UAAUA,EAAWC,iBAAkBA,KACzGhD,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,uB,iCCTvE,wEAEWs1B,EAFX,Q,SAEWA,K,iEAAAA,M,KAIX,IAAMiE,EAAsB,SAAC/D,EAAoB5yB,GAC7C,OAAO,SAAUhD,EAAeC,GAC5BD,EAAS,CAAEE,KAAMw1B,EAA0BC,+BAAgCv1B,QAAS,CAACw1B,cAAeA,EAAe5yB,iBAAkBA,KACrIhD,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,4B,iCCT3E,wEAEWy2B,EAFX,Q,SAEWA,K,uDAAAA,M,KAIX,IAAM+C,EAAiB,SAAC72B,EAAgBC,GACtC,OAAO,SAAUhD,EAAeC,GAC9BD,EAAS,CAAEE,KAAM22B,EAAoBC,0BAA2B12B,QAAS,CAAE2C,UAAWA,EAAWC,iBAAkBA,KACnHhD,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,sB,+jnFCTvE,wVAIWuqB,EAJX,yB,SAIWA,K,oDAAAA,E,4DAAAA,E,4DAAAA,E,8EAAAA,E,8EAAAA,E,oEAAAA,E,oEAAAA,E,4DAAAA,E,4DAAAA,E,4EAAAA,E,4EAAAA,E,oFAAAA,E,oFAAAA,E,4FAAAA,E,4FAAAA,E,4DAAAA,E,4DAAAA,E,sFAAAA,E,8FAAAA,E,uFAAAA,M,KAuBX,IAAMkP,EAAqB,WACvB,OAAO,SAAU75B,EAAcC,GAC3BiI,cAAetH,MAAK,SAACC,GAAmB,IAAD,YACnCb,EAAS,CAACE,KAAMyqB,EAAmBC,6BAA8BxqB,QAAQS,EAASE,OAClFf,EAAS,CAACE,KAAMG,IAAsBynB,8BAA+B1nB,QAAQS,EAASE,OACtF,IAAM2K,EAAO,OAAG7K,QAAH,IAAGA,GAAH,UAAGA,EAAUE,YAAb,iBAAG,EAAgB6I,sBAAnB,iBAAG,EAAiC,UAApC,iBAAG,EAAqCG,gBAAxC,iBAAG,EAAgD,UAAnD,iBAAG,EAAoDK,eAAvD,aAAG,EAA6DxB,sBAAsBI,QAAO,SAAC8wB,GAAD,MAA0B,cAAX,OAAFA,QAAE,IAAFA,OAAA,EAAAA,EAAI36B,SAAqB,GAChJa,EAAS,CAACE,KAAMG,IAAsB4pB,uBAAwB7pB,QAAO,OAACsL,QAAD,IAACA,OAAD,EAACA,EAAS/B,WAElF3I,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAkBnE84B,EAA2B,SAACzT,EAAwBxc,GACtD,OAAO,SAAU9J,EAAcC,GAC3BwL,YAAa6a,EAAiBxc,GAAWlJ,MAAK,SAACC,GAC3Cb,EAAS,CAACE,KAAMyqB,EAAmBI,qCAAsC3qB,QAAQS,EAASE,UAE7FC,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKnE+4B,EAA8B,SAACluB,GACjC,OAAO,SAAU9L,EAAcC,GAC3B4L,YAAyBC,GAAmBlL,MAAK,SAACC,GAC9Cb,EAAS,CAACE,KAAMyqB,EAAmBK,0CAA2C5qB,QAAQS,EAASE,UAElGC,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKnEg5B,EAA+B,WACjC,OAAO,SAAUj6B,EAAcC,GAC3BmM,cAAmBxL,MAAK,SAACC,GACrBb,EAAS,CAACE,KAAMyqB,EAAmBM,yCAA0C7qB,QAASS,EAASE,UAElGC,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKnEi5B,EAAsB,SAAEC,GAC1B,OAAO,SAAUn6B,EAAeC,GAC5BD,EAAS,CAACE,KAAMyqB,EAAmBO,0CAA2C9qB,QAAS+5B,MAIzFC,EAAmC,WACrC,OAAO,SAAUp6B,EAAcC,GAC3BwM,cAAuB7L,MAAK,SAACC,GACzBb,EAAS,CAACE,KAAMyqB,EAAmBQ,6CAA8C/qB,QAAQS,EAASE,UAErGC,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKnEo5B,EAA+B,SAAE7P,GACnC,OAAO,SAAUxqB,EAAeC,GAC5BD,EAAS,CAACE,KAAMyqB,EAAmBS,8CAA+ChrB,QAASoqB,MAiB7F8P,EAAkB,SAACpwB,GACrB,OAAO,SAAUlK,EAAcC,GAC3BD,EAAS,CAACE,KAAMyqB,EAAmBY,2BACnC3d,YAAoB1D,GAAItJ,MAAK,SAACC,GAC1B6C,YAAgB,oBAAD,OAAsB7C,QAAtB,IAAsBA,OAAtB,EAAsBA,EAAUuC,QAC/CpD,EAAS,CAACE,KAAMyqB,EAAmBG,6BAA8B1qB,QAAQS,EAASE,OAClFf,EAAS,CAACE,KAAMG,IAAsB8nB,8BAA+B/nB,QAAQS,EAASE,UAEzFC,OAAM,SAACC,GAAW,IAAD,EAEdyC,YAAgB,oBAAD,OAAsBzC,QAAtB,IAAsBA,GAAtB,UAAsBA,EAAOJ,gBAA7B,aAAsB,EAAiBuC,QACtDpD,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKnEs5B,EAAoC,SAACrwB,GAA4C,IAApCswB,EAAmC,wDAClF,OAAO,SAAUx6B,EAAeC,GAC5BD,EAAS,CAACE,KAAMyqB,EAAmBY,2BACnCzd,aAA8B5D,GAAItJ,MAAK,SAACC,GACpCb,EAAS,CAACE,KAAMyqB,EAAmBW,6BAA8BlrB,QAAQS,EAASE,OAC/Ey5B,GACCx6B,EAAS,CAACE,KAAMG,IAAsB6nB,mCAG7ClnB,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,U,2PC9InEw2B,EAAegD,IAAMC,MAAK,kBAAM,kCAChChD,EAAe+C,IAAMC,MAAK,kBAAM,kCAChCze,EAAkBwe,IAAMC,MAAK,kBAAM,sEACnC9C,EAAqB6C,IAAMC,MAAK,kBAAM,+DACtC/C,EAAY8C,IAAMC,MAAK,kBAAM,kCAC7BC,EAAWF,IAAMC,MAAK,kBAAM,iCAC5B7C,EAAsB4C,IAAMC,MAAK,kBAAM,+DACvC3C,EAAa0C,IAAMC,MAAK,kBAAM,kCAC9BruB,EAAcouB,IAAMC,MAAK,kBAAM,kCAC/BhuB,EAAkB+tB,IAAMC,MAAK,kBAAM,kCACnCrC,EAAqBoC,IAAMC,MAAK,kBAAM,kCACtCxC,EAAkBuC,IAAMC,MAAK,kBAAM,kCACnC1C,EAAqByC,IAAMC,MAAK,kBAAM,kCACtCzC,EAAwBwC,IAAMC,MAAK,kBAAM,kCACzCpC,EAAiBmC,IAAMC,MAAK,kBAAM,+DAClCvC,EAAcsC,IAAMC,MAAK,kBAAM,iCAC/BtC,EAAiBqC,IAAMC,MAAK,kBAAM,kCAClC7f,EAAkB4f,IAAMC,MAAK,kBAAM,iCACnCnC,EAAgBkC,IAAMC,MAAK,kBAAM,wDACjClC,EAAkBiC,IAAMC,MAAK,kBAAM,kCACnCjC,EAAsBgC,IAAMC,MAAK,kBAAM,kCACvChC,EAAa+B,IAAMC,MAAK,kBAAM,kCAC9B/B,EAAoB8B,IAAMC,MAAK,kBAAM,yDACrC9B,EAAgB6B,IAAMC,MAAK,kBAAM,kCACjC7B,EAAkB4B,IAAMC,MAAK,kBAAM,wDACnC5B,EAAqB2B,IAAMC,MAAK,kBAAM,wDACtC3B,EAAyB0B,IAAMC,MAAK,kBAAM,wDAC1C1B,EAAsByB,IAAMC,MAAK,kBAAK,kCAEtC12B,EAAWV,OAGbs3B,GAFY52B,EAAG,gBACHA,EAAG,aACDA,EAAG,gBACjB62B,EAAgB72B,EAAG,iBACnBijB,EAAiBjjB,EAAG,SACpB82B,EAAW92B,EAAG,cAmkBHoE,MAjkBf,WACI,MAA8B2yB,oBAAS,GAAvC,mBAAOC,EAAP,KAAgBC,EAAhB,KACA,EAAgDF,oBAAS,GAAzD,mBAAOG,EAAP,KAAyBC,EAAzB,KACA,EAA4CJ,oBAAS,GAArD,oBAAOK,GAAP,MAAuBC,GAAvB,MACA,GAAoDN,mBAAS,8BAA7D,qBAAOO,GAAP,MAA2BC,GAA3B,MACA,GAA4CR,mBAAS,IAArD,qBAAOS,GAAP,MAAuBC,GAAvB,MAEA,GAA0CC,aAAY,SAAChU,GAAD,OAAgBA,KAA9Dtf,GAAR,GAAQA,gBAAiBwC,GAAzB,GAAyBA,aACnB+wB,GAAsBD,aAAY,SAAChU,GAAD,OAAgBA,EAAM8Q,mBACxDoD,GAA0BF,aAAY,SAAChU,GAAD,OAAgBA,EAAM+Q,uBAC5DoD,GAAiBH,aAAY,SAAChU,GAAD,OAAgBA,EAAMgR,cACnDoD,GAAiBJ,aAAY,SAAChU,GAAD,OAAgBA,EAAMqQ,cACnDgE,GAAeL,aAAY,SAAChU,GAAD,OAAgBA,EAAM8P,mCACjDwE,GAA0BN,aAAY,SAAChU,GAAD,OAAgBA,EAAMmQ,uBAClE,GAAgDkD,oBAAS,GAAzD,qBAAOkB,GAAP,MAAyBC,GAAzB,MACA,GAAoCnB,mBAAS,IAA7C,qBAAOoB,GAAP,MAAmBC,GAAnB,MACA,GAA0CrB,mBAAS,IAAnD,qBAAOsB,GAAP,MAAsBC,GAAtB,MACA,GAA8CvB,mBAAS,IAAvD,qBAAOwB,GAAP,MAAwBC,GAAxB,MACA,GAA8CzB,mBAAS,IAAvD,qBAAO0B,GAAP,MAAwBC,GAAxB,MACA,GAAsD3B,mBAAS,GAA/D,qBAAK4B,GAAL,MAA2BC,GAA3B,MACQC,GAAMC,cAAND,EACF78B,GAAW+8B,cACX1W,GAAWje,GAAgBie,SAC3BlY,GAAkB/F,GAAgB+F,gBAClCiY,GAAgBhe,GAAgBge,cAChCO,GAAcve,GAAgBue,YAC9BS,GAAsBhf,GAAgBgf,oBACpCjB,GAAQ/d,GAAR+d,IAEF6W,GAAY,IAAI35B,gBAAgBC,OAAOC,SAASC,QAClDsgB,GAAaD,eAAeoZ,QAAQ,cACpCrgB,GAAQmf,GAAa1tB,YAAYgO,MAAM,GAAGC,OAAO,GAAG3S,MAClDoX,GAAgBgb,GAAa1tB,YAAYgO,MAAM,GAAGpV,QAAQ,GAAG0C,MAC7DoQ,GAAUiiB,GAAwB3tB,YAAYgO,MAAM,GAAGC,OAAO,GAAG3S,MAEvE9F,QAAQC,IAAI,qCAA6BuiB,IAEzC6W,qBAAU,WACNC,KACAt5B,QAAQC,IAAI,yCACZ,IAAIV,EAAS45B,GAAUv5B,IAAI,UACvBgC,EAAQu3B,GAAUv5B,IAAI,SACtB25B,EAAaJ,GAAUv5B,IAAI,SAE/B,GAAIL,GAAUqC,EAAO,CAEjB,IAAIE,EAASrC,OAAOsC,mBAAmBC,KAAKJ,GAAgB,KACxD4jB,EAASvjB,KAAKC,MAAMJ,GACpB03B,EAAQ,OAAGhU,QAAH,IAAGA,OAAH,EAAGA,EAAQiU,KACnBtuB,EAAW,OAAGqa,QAAH,IAAGA,OAAH,EAAGA,EAAQkU,GACtBtW,EAAc,OAAGoC,QAAH,IAAGA,OAAH,EAAGA,EAAQrjB,MAM7B,GALAhC,EAAIw5B,iBAAmBxuB,EACvBhL,EAAIy5B,UAAYJ,EAChBr5B,EAAI05B,oBAAsBzW,EAE1B0W,GAAiBtU,EAAOuU,GACT,YAAXx6B,EAAsB,CACtBY,EAAI65B,gBAAkBT,EAEtB,IAAMz1B,EAAM,CACRvC,OAAQ,CACJmC,IAAK,mCACLhC,QAAS,CAAEoE,MAAO,yCAClBm0B,OAAQ,GACR/8B,KAAM+E,KAAKgnB,UAAL,4DAGL9sB,GAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASuH,SAEpElC,IACA41B,IAAkB,GAClBF,GAAoB,GAKhBn7B,GAHW,YAAXoD,GAAyC,qBAAhB4L,GAAsD,WAAhBA,EAGtDsrB,YAAgB+C,GAFhBU,YAAsBV,EAAUruB,UAOrDhP,GAAS,CAAEE,KAAMG,IAAsBsnB,SAE5C,IAEHuV,qBAAU,WAEN,OADAr5B,QAAQC,IAAI,MAAOuiB,IACXA,IACJ,KAAKhmB,IAAsBsnB,KACvBsT,GAAW,GACXj7B,GAASg+B,eACT,MAEJ,KAAK39B,IAAsBunB,yBACvB+V,GAAiBv1B,GAAgBE,SACjCtI,GAASi+B,YAAoB71B,GAAgB+B,WAAY/B,GAAgB9G,OACzE,MAEJ,KAAKjB,IAAsBwnB,4BACvB7nB,GAAS65B,eACT,MAEJ,KAAKx5B,IAAsBynB,8BACnB1f,GAAgBE,QAAQd,SAAS,QACjCxH,GAASk+B,eAETl+B,GAASu6B,YAAkC3vB,GAAa1C,aAAagC,IAAI,IAE7E,MAEJ,KAAK7J,IAAsBioB,sBACvBtoB,GAASu6B,YAAkC3vB,GAAa1C,aAAagC,IAAI,IACzE,MAEJ,KAAK7J,IAAsB4nB,kCAC3B,KAAK5nB,IAAsB6nB,8BAC3B,KAAK7nB,IAAsBkoB,sBAC3B,KAAKloB,IAAsBgoB,sBACvB4S,GAAW,GACXE,GAAoB,GACpBn7B,GAASm+B,eACT,MAEJ,KAAK99B,IAAsB+nB,0BACvB,GAAIgT,GAAgB,CAChBC,IAAkB,GAClB,IAAIj4B,EAAS45B,GAAUv5B,IAAI,UACvBgC,EAAQu3B,GAAUv5B,IAAI,SAC1B,GAAIgC,EAAO,CAEP,IAAIE,EAASrC,OAAOsC,mBAAmBC,KAAKJ,GAAgB,KACxD4jB,EAASvjB,KAAKC,MAAMJ,GACpBy4B,EAAgB,CAChBvtB,QAASwY,EAAOgV,IAChBva,WAAYuF,EAAOiV,KACnBh2B,QAAS+gB,EAAOuU,EAChBtX,gBAAiB+C,EAAOkV,IACxBzzB,gBAAiBue,EAAOmV,GACxB3lB,qBAAsBwQ,EAAOoV,IAC7BhY,aAAc4C,EAAOqV,GACrBtiB,SAAUiN,EAAOsV,GACjBj8B,YAAa2mB,EAAOuV,IACpBlY,kBAAmB2C,EAAOwV,GAC1BtY,eAAgB8C,EAAOyV,GACvBtY,mBAAoB6C,EAAO0V,IAC3BhgB,SAAUsK,EAAO2V,EACjBje,cAAesI,EAAO4V,GACtBnrB,QAASuV,EAAO6V,KAChBpY,WAAYuC,EAAO8V,MACnBjgC,MAAOmqB,EAAOnqB,MACd8nB,YAAaqC,EAAO+V,MACpBnY,eAAgBoC,EAAOrjB,MACvBgJ,YAAaqa,EAAOkU,GACpB8B,KAAMhW,EAAOgW,MAWjB,GARIj8B,IACe,YAAXA,GACApD,GAASs/B,YAAe,cAAelB,IAE5B,YAAXh7B,GACApD,GAASs/B,YAAe,kCAAmClB,KAGxC,SAAvBA,EAAciB,MAA0C,YAAvBjB,EAAciB,KAAoB,CACnE,IAAIE,EAAoBvW,EAAWC,iBAAiBjgB,QAAO,SAAC6f,GAAD,OAAkBA,EAAQwW,MAAQjB,EAAciB,QACvGxY,EAAgB,GAChBK,EAAoB,GAEpB,GADa8V,GAAUv5B,IAAI,UACf,CACR,IAAI+7B,EAAgBxC,GAAUv5B,IAAI,iBAClCyjB,EAAe8V,GAAUv5B,IAAI,gBAEzBojB,EADkB,eAAlB2Y,EACWxC,GAAUv5B,IAAI,YAAcu5B,GAAUv5B,IAAI,YAAc,WAExD+7B,OAGf3Y,EAAW,GAEnBuX,EAAgB7nB,OAAOC,OAAO4nB,EAAe,CAAEvX,SAAUA,EAAUK,aAAcA,IACjFlnB,GAASs/B,YAAeC,EAAkB,GAAG1W,QAASuV,UAI3D,CAE2E,IAAD,IAA7E,GADAv6B,QAAQC,IAAI03B,IACW,oBAAnBA,IAAwCG,GAAoBzY,YAC5D,GAAqE,QAA/C,OAAnByY,SAAmB,IAAnBA,IAAA,UAAAA,GAAqB7Y,+BAArB,mBAA8C/hB,YAA9C,eAAoDgiB,WAAoB,CAE3E,IAAMpb,EAAG,OAAGg0B,SAAH,IAAGA,QAAH,EAAGA,GAAqB7Y,wBACjC9iB,GAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASuH,SAE/DrE,OAAOm8B,KAAK9D,GAAoBzY,YAAa,cAE1C,GAAuB,wBAAnBsY,IAA6G,UAAjEI,GAAwBvtB,YAAYgO,MAAM,GAAGC,OAAO,GAAG3S,MAAmB,CAAC,IAAD,EAC7H,UAAArG,OAAOm8B,KAAKr3B,GAAgB0b,WAAa,mBAAoB,gBAA7D,SAAuE4b,aACpE,GAAuB,eAAnBlE,IAAoCK,GAAextB,YAAYgO,MAAM,GAAGC,OAAO,GAAG3S,MAEtF,GAAuB,oCAAnB6xB,GACP,GAAmC,qBAAhCpzB,GAAgB4G,aAAsE,aAAhC5G,GAAgB4G,aAA8D,WAAhC5G,GAAgB4G,YAA0B,CAC7I,IAAIjO,EAAY,CACZu8B,KAAM1yB,GAAa1C,aAAagC,GAChC0zB,EAAGx1B,GAAgBE,QACnBi2B,IAAKn2B,GAAgBke,gBACrBkY,GAAIp2B,GAAgB0C,gBACpB2zB,IAAKr2B,GAAgByQ,qBACrB8lB,GAAIv2B,GAAgBgU,SACpBwiB,IAAKx2B,GAAgB1F,YACrBs8B,EAAG52B,GAAgB2W,SACnB/Y,MAAOoC,GAAgB6e,eACvBsW,GAAIn1B,GAAgB4G,YACpBsvB,KAAMl2B,GAAgB0b,WACtBub,KAAsC,aAAhCj3B,GAAgB4G,YAA6B,UAAY,IAE/D2wB,EAAUr8B,OAAOs8B,KAAKC,mBAAmB/5B,KAAKgnB,UAAU/rB,KAExD++B,EAAYjF,EAAgB,UAAY8E,EAAU,UAAYv3B,GAAgB6e,eACnErc,GAAa1C,aAAa63B,eAAe/2B,QAAO,SAACg3B,GAAD,MAAqC,YAApBA,EAAMC,aAA0B,GAAGD,MAAME,yBAAyBv2B,MACnI,EACyB,qBAAhCvB,GAAgB4G,YAChB1L,OAAOC,SAASqgB,KAAO5f,EAAG,cAAoB,cAAgB87B,EAAY,UAAYljB,GAAQ,cAE9FtZ,OAAOC,SAASqgB,KAAO5f,EAAG,cAAoB,cAAgB87B,EAAY,UAAYljB,GAA/D5Y,mBAAiGoE,GAAgB4G,YAGzG,qBAAhC5G,GAAgB4G,YACfhP,GAAS+9B,YAAsBnzB,GAAa1C,aAAagC,GAAI9B,GAAgB4G,cACvC,aAAhC5G,GAAgB4G,YACtBhP,GAASs/B,YAAe,0BAExBt/B,GAAS+9B,YAAsBnzB,GAAa1C,aAAagC,GAAI9B,GAAgB4G,mBAIrFhP,GAAS+9B,YAAsBnzB,GAAa1C,aAAagC,GAAI9B,GAAgB4G,mBAE9E,GAAuB,eAAnBwsB,IAAmCM,GAAeztB,YAAYgO,MAAM,GAAGpV,QAAQ,GAAG0C,MAAO,CAAC,IAAD,EAChG,UAAArG,OAAOm8B,KAAKz7B,EAAG,cAAmB,gBAAlC,SAA4C07B,aAE5C1/B,GAD0B,0BAAnBw7B,GACEuC,YAAsBnzB,GAAa1C,aAAagC,GAAI9B,GAAgB4G,aAGpEmxB,mBA9CuF,CAAC,IAAD,EAChG,UAAA78B,OAAOm8B,KAAKr3B,GAAgB0b,WAAa,mBAAoB,gBAA7D,SAAuE4b,SAgD/E,MAEJ,KAAKr/B,IAAsBC,iBACvB26B,GAAW,GACXj7B,GAASogC,eACT,MAEJ,KAAK//B,IAAsB8nB,8BACnB+S,IACAD,GAAW,GACXj7B,GAASqgC,gBAEb,MAEJ,KAAKhgC,IAAsBa,cACC,0BAAnBs6B,IAAgF,OAAb,OAAnBpU,SAAmB,IAAnBA,QAAA,EAAAA,GAAqBhkB,SAAoBu5B,GAAuB,EACjH2D,YAAW,WACP1D,KAA0BD,IAC1B38B,GAASogC,iBACV,KAEHpgC,GAASugC,YAAoBn4B,GAAiBwC,GAAa1C,aAAagC,GAAIsxB,KAEhF,MAEJ,KAAKn7B,IAAsBmoB,qBAE3B,KAAKnoB,IAAsBsoB,yBACvB,IAAIE,EAAUzgB,GAAgBoG,UAAUJ,SAAShG,GAAgB+F,gBAAgBpF,QAE7Ey3B,EAAiBxX,EAAWC,iBAAiBjgB,QAAO,SAACkgB,GACrD,OAAQA,EAAKC,oBAAsBN,EAAQC,aAC5C,GAAGD,QACN4X,GAAiBD,GACjB,MAEJ,KAAKngC,IAAsBuoB,gBACvB6X,GAAiBra,OAG1B,CAACC,GAAUlY,GAAiBwuB,KA2B/BO,qBAAU,WAEN,GADAr5B,QAAQC,IAAI,QACR6iB,GAAa,CACb,IAAIvjB,EAAS45B,GAAUv5B,IAAI,UACvBgC,EAAQu3B,GAAUv5B,IAAI,SACtBkC,EAASrC,OAAOsC,mBAAmBC,KAAKJ,GAAgB,KACxD4jB,EAAS5jB,EAAQK,KAAKC,MAAMJ,GAAU,GACtC03B,EAAW53B,EAAQ4jB,EAAOiU,KAAO1yB,GAAa1C,aAAagC,GAC3D8E,EAAcvJ,EAAQ4jB,EAAOkU,GAAKn1B,GAAgB4G,YACtD,GAAe,YAAX5L,GAAyC,qBAAhB4L,GAAsD,WAAhBA,EAE5D,GAA+B,YAA3B2X,GAAYyW,YAAuD,SAA3BzW,GAAYyW,WAAuB,CAClF,IAAMsD,EAAW91B,GAAa1C,aAAa63B,eAAe/2B,QAAO,SAACg3B,GAAD,MAAqC,YAApBA,EAAMC,aAA0B,GAAGD,MAAME,yBAAyBv2B,MAEpJ,GAAsB,qBAAlBoX,IAAqD,IAAb2f,EAExC1gC,GAASs/B,YAAe,cAAe,CAAEzuB,QAASzI,GAAgByI,gBAC/D,GAAsB,oBAAlBkQ,GAAqC,CAC5C,IAAIhgB,EAAY,CACZu8B,KAAM1yB,GAAa1C,aAAagC,GAChCm0B,IAAKj2B,GAAgByI,QACrBytB,KAAMl2B,GAAgB0b,WACtB8Z,EAAGx1B,GAAgBE,QACnBi2B,IAAKn2B,GAAgBke,gBACrBkY,GAAIp2B,GAAgB0C,gBACpB2zB,IAAKr2B,GAAgByQ,qBACrB8lB,GAAIv2B,GAAgBgU,SACpBwiB,IAAKx2B,GAAgB1F,YACrBm8B,GAAIz2B,GAAgBse,kBACpBoY,GAAI12B,GAAgBme,eACpBwY,IAAK32B,GAAgBoe,mBACrBkY,GAAIt2B,GAAgBqe,aACpBuY,EAAG52B,GAAgB2W,SACnBmgB,KAAM92B,GAAgB0L,QACtBqrB,MAAO/2B,GAAgB0e,WACvB5nB,MAAOkJ,GAAgBlJ,MACvBkgC,MAAOh3B,GAAgB4e,YACvBhhB,MAAOoC,GAAgB6e,eACvBsW,GAAIn1B,GAAgB4G,YACpBqwB,KAAK,IAELM,EAAUr8B,OAAOs8B,KAAKC,mBAAmB/5B,KAAKgnB,UAAU/rB,KAExD4/B,EAAa/F,EAAc,QAAQxyB,GAAgByI,QAAQ,QAAQzI,GAAgBwe,qBACnFkZ,EAAYjF,EAAe,UAAU8E,EAAQ,UAAUv3B,GAAgB6e,eACvC,qBAAhC7e,GAAgB4G,aAAsE,aAAhC5G,GAAgB4G,aAA8D,WAAhC5G,GAAgB4G,YACpHhP,GAASs/B,YAAe,cAAe,CAAEzuB,QAASzI,GAAgByI,WAElEvN,OAAOC,SAASqgB,KAAO+c,EAAa,cAAgBb,OAGzD,CAEF,IAAMn4B,EAAM,CACRvC,OAAQ,CACJmC,IAAK,mBACLhC,QAAS,CAAEoE,MAAO,8CAClBm0B,OAAQ,GACR/8B,KAAM+E,KAAKgnB,UAAL,6DAGd9sB,GAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASuH,SAnDhE3H,GAASs6B,YAAgB+C,OAsDlC,CAAC1W,KAEJ,IAWMwW,GAAkB,WACpBn5B,EAAI48B,QAAQC,UAAU,KAAM,GAAI78B,EAAIT,SAASqgB,MAC7C5f,EAAI88B,WAAa,WACb98B,EAAI48B,QAAQC,UAAU,KAAM,GAAI78B,EAAIT,SAASqgB,MAC7Cmd,OAIFA,GAA0B,WACI,aAA5B34B,GAAgBE,SAChB8zB,GAAcS,GAAE,wBAChBP,GAAiBO,GAAE,iCACnBL,GAAmBK,GAAE,wBACrBH,GAAmBG,GAAE,oBACrBX,IAAoB,KAEpBE,GAAcS,GAAE,2BAChBP,GAAiBO,GAAE,mCACnBL,GAAmBK,GAAE,sBACrBH,GAAmBG,GAAE,6BACrBX,IAAoB,KAItByB,GAAmB,SAACr1B,GACtB,IAAI04B,EAAQ,GACI,aAAZ14B,IACA04B,EAAQnE,GAAE,wBAEd7Y,SAASgd,MAAQA,GAqCfP,GAAmB,SAAC3X,GACtBmS,GAAW,GACXQ,GAAkB3S,GAClB,IAAImY,EAAoB,GAEpBA,EAD4B,YAA5B74B,GAAgBE,SAAqD,SAA5BF,GAAgBE,SAAsBF,GAAgBE,QAAQd,SAAS,QAE5G,mCACK2e,GAAM,oBAAG+a,MAAO,CAAEC,QAAS,QAArB,UAA+B,+BAAOtE,GAAE,SAAxC,IAAuD,uBAAMqE,MAAO,CAAEE,UAAW,MAAOC,OAAQ,SAAzC,cAAsDj5B,GAAgByQ,2BAAmC,+BAAOgkB,GAAE,OAASz0B,GAAgByQ,yBAI9K,QAA5BzQ,GAAgBE,QAEnB,mCACK6d,GAAM,oBAAG+a,MAAO,CAAEC,QAAS,QAArB,UAA+B,+BAAOtE,GAAE,iBAAxC,IAA+D,uBAAMqE,MAAO,CAAEE,UAAW,MAAOC,OAAQ,SAAzC,cAAsDj5B,GAAgByQ,2BAAmC,+BAAOgkB,GAAE,eAAiBz0B,GAAgByQ,yBAG9L,aAA5BzQ,GAAgBE,QACR,GAEA6d,GAAM,uBAAM+a,MAAO,CAAEE,UAAW,MAAOD,QAAS,SAA1C,cAAuD/4B,GAAgByQ,wBAA+BzQ,GAAgByQ,qBAE/I0iB,GAAsB,qCAClB,qBAAKrxB,GAAG,uBAAuBg3B,MAAO,CAAEC,QAAS,QAAjD,SAA4D/4B,GAAgB4G,cAC5E,qBAAK9E,GAAG,iBAAiBg3B,MAAO,CAAEC,QAAS,QAA3C,SAAsDla,IACtD,qBAAKqa,UAAU,YAAYp3B,GAAG,YAAYg3B,MAAO,CAAEC,QAAS,QAA5D,SAAuErY,IAExD,gBAAdA,EAA8B,6BAAS,sBAAKwY,UAAU,6BAAf,UACpC,cAAC,IAAD,CAAYnb,IAAKA,GAAKmb,UAAU,mBAAhC,SAAqDL,IACrD,cAAC,IAAD,CAAiB9a,IAAKA,GAAKob,QAASC,OACpC,qBAAKF,UAAU,sBAAf,SACI,qBAAKA,UAAU,mBAAmBG,IAAKC,UAAWC,QAAS,YAjErD,SAAC7Y,GAcD,oBAAdA,GAA6D,WAA1B/O,GAAQP,cAC3CxZ,GAASs/B,YAAe,kBAEQ,aAA5Bl3B,GAAgBE,SAChB8zB,GAAcS,GAAE,wBAChBP,GAAiBO,GAAE,iCACnBL,GAAmBK,GAAE,wBACrBH,GAAmBG,GAAE,oBACrBX,IAAoB,KAEpBE,GAAcS,GAAE,2BAChBP,GAAiBO,GAAE,mCACnBL,GAAmBK,GAAE,sBACrBH,GAAmBG,GAAE,6BACrBX,IAAoB,IAqCmD0F,CAAc9Y,WAOxF+Y,GAAiB/Y,OAEtBxlB,OAAOw+B,OAAO,CAAEC,IAAK,EAAGC,KAAM,KAG5BH,GAAmB,SAAC/Y,GACtB,OACI,qCACmB,iBAAdA,GAAgC,cAAC2O,EAAD,IAClB,iBAAd3O,GAAgC,cAAC4O,EAAD,IAClB,cAAd5O,GAA6B,cAAC6O,EAAD,IACf,wBAAd7O,GAAuC,cAAC+O,EAAD,IACzB,eAAd/O,GAA8B,cAACiP,EAAD,IAChB,gBAAdjP,GAA+B,cAACzc,EAAD,IACjB,oBAAdyc,GAAmC,cAACpc,EAAD,IACrB,uBAAdoc,GAAsC,cAACuP,EAAD,IACxB,oBAAdvP,GAAmC,cAACoP,EAAD,IACrB,mBAAdpP,GAAkC,cAACwP,EAAD,IACpB,uBAAdxP,GAAsC,cAACkP,EAAD,IACxB,0BAAdlP,GAAyC,cAACmP,EAAD,IAC3B,oBAAdnP,GAAmC,cAAC7M,EAAD,IACrB,uBAAd6M,GAAsC,cAAC8O,EAAD,IACxB,oCAAd9O,GAAmD,cAAC6R,EAAD,IACrC,gBAAd7R,GAA+B,cAACqP,EAAD,IACjB,mBAAdrP,GAAkC,cAACsP,EAAD,IACpB,oBAAdtP,GAAmC,cAACjO,EAAD,IACrB,kBAAdiO,GAAiC,cAACyP,EAAD,IACnB,oBAAdzP,GAAmC,cAAC0P,EAAD,IACrB,wBAAd1P,GAAuC,cAAC2P,EAAD,IACzB,eAAd3P,GAA8B,cAAC4P,EAAD,IAChB,sBAAd5P,GAAqC,cAAC6P,EAAD,IACvB,kBAAd7P,GAAiC,cAAC8P,EAAD,IACnB,oBAAd9P,GAAmC,cAAC+P,EAAD,IACrB,uBAAd/P,GAAsC,cAACgQ,EAAD,IACxB,2BAAdhQ,GAA0C,cAACiQ,EAAD,IAC5B,wBAAdjQ,GAAuC,cAACkQ,EAAD,QAK9CwI,GAAuB,WACzB,IAAIhzB,EAAYpG,GAAgBoG,UAAUJ,SACtC6zB,EAAkB,EACtB,GAAIzzB,EAAW,CACX,IAAI0zB,EAAoB1zB,EAAUxF,QAAO,SAAC6f,GAAmB,OAAOA,EAAQC,UAAUthB,SAAS,eAAeuB,OAAS,EAGvHk5B,GAF2B75B,GAAgB+F,gBAAgBpF,OAEhB,IADhBm5B,EAAqB1zB,EAAUzF,OAAS,EAAKyF,EAAUzF,QACV,IAE5E,OAAOk5B,GAGX,OAAIjH,EACO,cAAC,IAAD,CAAMsG,UAAU,aAAaa,KAAK,UAGrC,cAAC,WAAD,CAAUC,SAAU,cAAC,IAAD,CAAMd,UAAU,aAAaa,KAAK,UAAtD,SAEI,sBAAKb,UAAU,kBAAf,UACKhG,GACD,qBAAKgG,UAAU,wBAAf,SACI,cAAC,IAAD,CACIp3B,GAAG,wBACHm4B,MAAM,8BACNC,aAAa,qCACbC,YAAY,6BACZvB,MAAO7E,GACPqG,QAASnG,GACToG,WAAYlG,GACZmG,kBAAmBjG,GACnBkG,UAAW1G,GACX2G,aAAc,kBAAM1G,IAAoB,IACxC2G,cAAe,kBAAM3G,IAAoB,IACzC4G,qBA5LG,WACvB5G,IAAoB,GACpBjB,GAAW,GACXj3B,EAAI88B,gBAAaiC,EAEbz/B,OAAOC,SAASqgB,KADhBE,IAGuBgX,a,iEC9a7B92B,GAAWV,OACb7C,GAAyC,MAAfuD,GAAG,KAAmB,KAAOA,GAAG,KAExDg/B,GAAY,CAChBC,GAAI,CACFC,YAAaC,IAEfC,GAAI,CACFF,YAAaG,KAIjBC,IACGx8B,IAAIy8B,MACJz8B,IAAI08B,MACJC,KAAK,CACJT,aACAU,YAAa,KACbjjC,OACAkjC,OAAO,EACPC,cAAc,EACdC,cAAe,CACbC,aAAa,GAMfC,MAAO,CACLC,aAAa,KAIJV,EAAf,E,cC3BAW,IAASC,OACP,cAAC,IAAMC,SAAP,CAAgB/B,SAAU,wBAA1B,SACE,cAAC,IAAD,CAAUj6B,MAAOA,IAAjB,SACE,cAAC,EAAD,QAGJ6b,SAASogB,eAAe,U,uXCTf/jC,E,wBCiELgkC,EAAiB,SAAC98B,GACpB,IAAM+8B,EAAO/8B,EAAIuB,MAAM,KAAKy7B,MACxBC,EAAcF,EAEdA,EAAK98B,SAAS,OACdg9B,EAAcF,EAAKx7B,MAAM,KAAK,IAIlC,GADkB,kEACJ27B,KAAKH,GAAO,CACtB,IAAMI,EAAMn9B,EAAIuB,MAAM,KACtB07B,EAAcE,EAAIA,EAAI37B,OAAS,GAGnC,OAAOy7B,GDpFLxgC,EAAWV,OACbiB,EAAYP,EAAG,gBACf2gC,EAAY3gC,EAAG,aACIA,EAAG,oB,SAEf3D,K,YAAAA,E,kCAAAA,E,oDAAAA,E,0DAAAA,E,8DAAAA,E,sDAAAA,E,gFAAAA,E,sEAAAA,E,8DAAAA,E,8DAAAA,E,sDAAAA,E,8CAAAA,E,8BAAAA,E,oCAAAA,E,4CAAAA,E,oDAAAA,E,oDAAAA,E,oDAAAA,E,4CAAAA,E,4CAAAA,E,8CAAAA,E,4CAAAA,E,4CAAAA,E,kCAAAA,E,gDAAAA,E,gDAAAA,E,4CAAAA,E,4CAAAA,E,8CAAAA,E,4BAAAA,E,iDAAAA,M,KAkCX,IAAM29B,EAAgB,WAClB,OAAO,SAAUh+B,EAAeC,GAC5BD,EAAS,CACLE,KAAMG,EAAsBooB,gBAAiBroB,QAAS,CAClD+J,WAAY0Z,eAAeoZ,QAAQ,cACnCnZ,WAAYD,eAAeoZ,QAAQ,cACnClZ,gBAAiBF,eAAeoZ,QAAQ,mBACxC7gB,SAAUyH,eAAeoZ,QAAQ,YACjC30B,QAASub,eAAeoZ,QAAQ,cAGxCj9B,EAAS,CAAEE,KAAMG,EAAsBunB,6BAIzCwY,EAAc,WAChB,OAAO,SAAUpgC,EAAeC,GAC5BgO,cAAWrN,MAAK,SAACC,GACbb,EAAS,CAAEE,KAAMG,EAAsB6pB,qBAAsB9pB,QAASS,IACtEb,EAAS,CAAEE,KAAMG,EAAsBkoB,2BAEtCvnB,OAAM,SAACC,GAEJjB,EAAS,CAAEE,KAAMG,EAAsB6pB,qBAAsB9pB,QAAO,OAAEa,QAAF,IAAEA,OAAF,EAAEA,EAAOJ,WAC7Eb,EAAS,CAAEE,KAAMG,EAAsBa,cAAed,QAASa,SAKzEk9B,EAAe,WACjB,OAAO,SAAUn+B,EAAeC,GAC5BuO,eACK5N,MAAK,SAACC,GAEHb,EAAS,CAAEE,KAAMG,EAAsBqoB,yBAA0BtoB,QAASS,EAASE,OACnFf,EAAS,CAAEE,KAAMG,EAAsB+nB,+BAE1CpnB,OAAM,SAACC,GAGJjB,EAAS,CAAEE,KAAMG,EAAsBa,cAAed,QAASa,SAKzEo/B,EAAc,WAChB,OAAO,SAAUrgC,EAAeC,GAC5ByO,cAAoB9N,MAAK,SAACC,GACtBgD,QAAQC,IAAIjD,GACZ6C,YAAgB,wBAAD,OAA0B7C,QAA1B,IAA0BA,OAA1B,EAA0BA,EAAUuC,QACnDpD,EAAS,CAAEE,KAAMG,EAAsBwpB,qBAAsBzpB,QAASS,EAASE,OAC/Ef,EAAS,CAAEE,KAAMG,EAAsBgoB,2BAEtCrnB,OAAM,SAACC,GAGJjB,EAAS,CAAEE,KAAMG,EAAsBa,cAAed,QAASa,SAKzEk/B,EAAqB,WACvB,OAAO,SAAUngC,EAAeC,GAC5BD,EAAS,CAAEE,KAAMG,EAAsBmoB,yBAUzC8W,EAAiB,SAACzW,GAAoC,IAAtBQ,EAAqB,uDAAP,GAChD,OAAO,SAAUrpB,EAAeC,GAC5BD,EAAS,CAAEE,KAAMG,EAAsBuoB,gBAAiBxoB,QAAS,CAAEyoB,QAASA,EAASQ,OAAQA,OAI/F0U,EAAwB,SAACpuB,EAAaX,GACxC,OAAO,SAAUhP,EAAeC,GAC5B+S,YAAcrD,EAAQX,GAAapO,MAAK,SAACC,GAErCb,EAAS,CAAEE,KAAMG,EAAsBypB,uBAAwB1pB,QAAS,CAAES,SAAUA,EAASE,WAE5FC,OAAM,SAACC,GAGJjB,EAAS,CAAEE,KAAMG,EAAsBa,cAAed,QAASa,SAKzEi9B,EAAgB,WAClB,OAAO,SAAUl+B,EAAeC,GAC5BoX,cACKzW,MAAK,SAACC,GACHb,EAAS,CAAEE,KAAMG,EAAsB0pB,qBAAsB3pB,QAAS,CAAES,SAAUA,KAClFb,EAAS,CAAEE,KAAMG,EAAsBioB,2BAE1CtnB,OAAM,SAACC,GAEJjB,EAAS,CAAEE,KAAMG,EAAsBa,cAAed,QAASa,SAKzEs/B,EAAsB,SAACn4B,EAAsB6K,EAAqBuoB,GACpE,IAAMoJ,ECvJuB,SAACx8B,EAAiB6K,EAAgBuoB,GAAoB,IAAD,gBAC1Ev6B,EAAUmH,EAAVnH,MACF4jC,GAAiB,OAAL5jC,QAAK,IAALA,OAAA,EAAAA,EAAOJ,UAAP,OAAkBI,QAAlB,IAAkBA,OAAlB,EAAkBA,EAAOJ,SAAWI,EAChDu8B,GAAkC,OAAfp1B,QAAe,IAAfA,OAAA,EAAAA,EAAiB4G,aAAjB,OAA+B5G,QAA/B,IAA+BA,OAA/B,EAA+BA,EAAiB4G,YAAc1L,OAAOk6B,iBACxFE,GAAqC,OAAft1B,QAAe,IAAfA,OAAA,EAAAA,EAAiB6e,gBAAjB,OAAkC7e,QAAlC,IAAkCA,OAAlC,EAAkCA,EAAiB6e,eAAiB3jB,OAAOo6B,oBACjGD,EAAYxqB,GAAkC3P,OAAOm6B,UACrDqH,GAAyB,OAATD,QAAS,IAATA,GAAA,UAAAA,EAAWz/B,cAAX,eAAmBG,QAAQ,gBAA3B,OAA4Cs/B,QAA5C,IAA4CA,GAA5C,UAA4CA,EAAWz/B,cAAvD,aAA4C,EAAmBG,QAAQ,eAAiB,GACxGa,GAAyB,OAATy+B,QAAS,IAATA,GAAA,UAAAA,EAAWz/B,cAAX,eAAmBG,QAAQ,qBAA3B,OAAiDs/B,QAAjD,IAAiDA,GAAjD,UAAiDA,EAAWz/B,cAA5D,aAAiD,EAAmBG,QAAQ,oBAAsB,cAClHw/B,GAAyB,OAATF,QAAS,IAATA,GAAA,UAAAA,EAAWz/B,cAAX,eAAmBG,QAAQ,qBAA3B,OAAiDs/B,QAAjD,IAAiDA,GAAjD,UAAiDA,EAAWz/B,cAA5D,aAAiD,EAAmBG,QAAQ,oBAAsBm4B,EAClHsH,GAA0B,OAATH,QAAS,IAATA,GAAA,UAAAA,EAAWz/B,cAAX,eAAmBG,QAAQ,qBAA3B,OAAiDs/B,QAAjD,IAAiDA,GAAjD,UAAiDA,EAAWz/B,cAA5D,aAAiD,EAAmBG,QAAQ,oBAAsB,SACnH63B,GAAsB,OAATyH,QAAS,IAATA,OAAA,EAAAA,EAAWzhC,QAAX,OAAoByhC,QAApB,IAAoBA,OAApB,EAAoBA,EAAWzhC,OAASE,OAAOu6B,gBAElEha,eAAeohB,QAAQ,uBAAwBF,GAC/ClhB,eAAeohB,QAAQ,sBAAwB7+B,GAC/Cyd,eAAeohB,QAAQ,oBAAqBzH,GAC5C3Z,eAAeohB,QAAQ,iBAAkBzJ,GAAkC,aAC3E3X,eAAeohB,QAAQ,kBAAmB7H,GAA0B,8BAEpE,IAAM8H,EAAY,SAACnkC,GACf,IACI,OAAO+E,KAAKC,MAAMhF,GACpB,SACE,OAAOA,GAAQ,KAIfqE,EAAoBy/B,EAApBz/B,OAAQyB,EAAYg+B,EAAZh+B,QACVU,GAAY,OAANnC,QAAM,IAANA,OAAA,EAAAA,EAAQmC,IAAIwB,QAAS,EAAIs7B,EAAc,OAACj/B,QAAD,IAACA,OAAD,EAACA,EAAQmC,KAAO,YAE7D49B,EAAc/H,EAAU,mCAA+BA,GAAe,2BA0C5E,MAzCY,CACR,YAAe71B,EACf,YAAei2B,EACf,aAAsB,OAAP32B,QAAO,IAAPA,OAAA,EAAAA,EAASu+B,aAAT,OAAuBv+B,QAAvB,IAAuBA,OAAvB,EAAuBA,EAASu+B,aAAoB,OAANhgC,QAAM,IAANA,OAAA,EAAAA,EAAQE,UAAR,OAAkBF,QAAlB,IAAkBA,OAAlB,EAAkBA,EAAQmC,KACvF,eAAkBk2B,EAClB,cAAiBr3B,EACjB,cAAiB2+B,EACjB,SAAY,gBACZ,aAAqB,OAAN3/B,QAAM,IAANA,OAAA,EAAAA,EAAQrE,MAAOmkC,EAAS,OAAC9/B,QAAD,IAACA,OAAD,EAACA,EAAQrE,MAAQ,GACxD,cAAuB,OAAP8F,QAAO,IAAPA,OAAA,EAAAA,EAAShG,UAAWqkC,EAAS,OAACr+B,QAAD,IAACA,OAAD,EAACA,EAAShG,UAAYskC,EACnE,mBAAsB,KACtB,eAAkB,GAClB,gBAAmB,GACnB,iBAAoB,GACpB,kBAAqB,GACrB,WAAc,GACd,QAAW,CACP,OAAU,CAAC,aACLE,OAAM,OAAEjgC,QAAF,IAAEA,OAAF,EAAEA,EAAQ04B,OAAOtkB,eADnB,OACqCpU,QADrC,IACqCA,OADrC,EACqCA,EAAQG,WAG3D,YAAe,CACX,OAAU,CACN,CACI,KAAQ,mBACR,MAASw/B,GAEb,CACI,KAAQ,mBACR,MAASC,GAEb,CACI,KAAQ,mBACR,MAAS5+B,KAIrB,UAAa0+B,EACb,eAAkB,EAClB,OAAU1H,EAAaA,EAAW7gB,WAAa,kBDkFvC+oB,CAAkBl9B,EAAiB6K,EAAeuoB,GAEtDrV,EAAQ/d,EAAR+d,IAER,OAAO,WACH7I,YAAoBsnB,GACfhkC,MAAK,SAACuc,GACO,OAAHynB,QAAG,IAAHA,KAAKW,OAEJjiC,OAAOC,SAASqgB,KAAOrf,EAAYogC,EAAZ,uBAAwCxe,EAAM,gHAAwB,gBAItGnlB,OAAM,WACC,OAAH4jC,QAAG,IAAHA,KAAKW,OAEAjiC,OAAOC,SAASqgB,KAAOrf,EAAYogC,EAAZ,uBAAwCxe,EAAM,gHAAwB,mB,gCEvKrH,gNAGWuD,EAHX,gB,SAGWA,K,oDAAAA,E,4DAAAA,E,4DAAAA,E,oEAAAA,E,oEAAAA,E,+DAAAA,M,KASX,IAAM8b,EAAqB,SAACn2B,EAAamC,GACvC,OAAO,SAAUxR,EAAeC,GAC9BmX,aAA0B/H,EAAQmC,GAAa5Q,MAAK,SAACC,GACnDgD,QAAQC,IAAIjD,GACZb,EAAS,CAAEE,KAAMwpB,EAAoBnJ,6BAA8BngB,QAASS,OAE3EG,OAAM,SAACC,GAENjB,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAKjE0e,EAAgB,SAACve,EAAkBuqB,EAAa3oB,EAAuByxB,EAAiCzE,GAC5G,OAAO,SAAUhwB,EAAeC,GAC9BD,EAAS,CAAEE,KAAMwpB,EAAoB6K,yBAA0Bn0B,QAAS,CAAEgB,YAAaA,EAAauqB,OAAQA,EAAQ3oB,iBAAkBA,EAAkByxB,2BAA4BA,EAA4BzE,OAAQA,KACxNhwB,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,qBAKjEqlC,EAAiB,SAACjtB,EAAa5E,EAAetS,GAClD,OAAO,SAAUtB,EAAeC,GAC9Buc,YAAkBhE,EAAQ5E,EAAUtS,GAAMV,MAAK,SAACC,GAC9Cb,EAAS,CAAEE,KAAMwpB,EAAoBoL,iCAAkC10B,QAASS,OAE/EG,OAAM,SAACC,IAEN,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACTb,EAAS,CAAEE,KAAMwpB,EAAoBoL,iCAAkC10B,QAASa,EAAMJ,WAEtFb,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAMnEykC,EAAqB,SAAC9jC,EAAUgb,EAAYC,EAAeC,GAC/D,OAAO,SAAU9c,EAAeC,GAC9B0c,YAAsB/a,EAAKgb,EAAOC,EAAUC,GAAclc,MAAK,SAACC,GAC9Db,EAAS,CAAEE,KAAMwpB,EAAoBqL,iCAAkC30B,QAASS,OAE/EG,OAAM,SAACC,IAEN,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACTb,EAAS,CAAEE,KAAMwpB,EAAoBqL,iCAAkC30B,QAASa,EAAMJ,WAEtFb,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAMnE0kC,EAAmB,SAAC/oB,EAAYK,GACpC,OAAO,SAAUjd,EAAeC,GAC9B+c,YAAoBJ,EAAOK,GAAOrc,MAAK,SAACC,GACtCb,EAAS,CAAEE,KAAMwpB,EAAoBsL,8BAA+B50B,QAASS,OAE5EG,OAAM,SAACC,IAEN,OAAGA,QAAH,IAAGA,OAAH,EAAGA,EAAOJ,UACRb,EAAS,CAAEE,KAAMwpB,EAAoBsL,8BAA+B50B,QAASa,EAAMJ,WAErFb,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,U,gCC3ErE,oRAIW8tB,EAJX,gB,SAIWA,K,8DAAAA,E,8DAAAA,E,oEAAAA,E,oEAAAA,E,gDAAAA,E,kDAAAA,E,kDAAAA,E,oFAAAA,E,oFAAAA,E,+EAAAA,M,KAaX,IAAM6W,EAA6B,SAAC51B,EAAeC,EAAkBif,EAAsBD,EAA2B/e,EAAkB7Q,EAAmBwmC,GACzJ,OAAO,SAAU7lC,EAAeC,GAC9B8P,YAAkBC,EAAUC,EAAaC,EAAa21B,GAAmBjlC,MAAK,SAACC,GAC7Eb,EAAS,CACPE,KAAM6uB,EAA0BC,8BAChC5uB,QAAS,CACPS,SAAUA,EACVmP,SAAUA,EACVC,YAAaA,EACbif,gBAAiBA,EACjBD,qBAAsBA,EACtBE,OAAQnf,EAASK,OAAO,GACxBhR,aAAcA,EACd8Q,gBAAiB01B,QAIpB7kC,OAAM,SAACC,GAENjB,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAKjE6kC,EAAmC,SAAC91B,EAAewB,GACvD,OAAO,SAAUxR,EAAeC,GAC9BsR,YAA0BvB,EAAUwB,GAAa5Q,MAAK,SAACC,GACrDb,EAAS,CAAEE,KAAM6uB,EAA0BK,iCAAkChvB,QAAS,CAAES,SAAUA,EAASE,WAE1GC,OAAM,SAACC,GAENjB,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAKjE8kC,EAAuB,SAACvX,EAAqCxrB,EAAuBwO,EAAkBwe,EAAaD,GACvH,OAAO,SAAU/vB,EAAeC,GAC9BD,EAAS,CAAEE,KAAM6uB,EAA0BU,uBAAwBrvB,QAAS,CAAEouB,+BAAgCA,EAAgCxrB,iBAAkBA,EAAkBgtB,OAAQA,EAAQD,YAAaA,KAC/M/vB,EAAS,CAAEE,KAAMG,IAAsB2pB,aAAc5pB,QAASoR,IAC9DxR,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,2BAIjE4lC,EAAoB,SAACvqB,EAAezM,GACxC,OAAO,SAAUhP,EAAeC,GAC9Bub,YAAeC,EAAUzM,GAAapO,MAAK,SAACC,GAC1Cb,EAAS,CAAEE,KAAM6uB,EAA0BM,wBAAyBjvB,QAAS,CAAES,SAAUA,QAExFG,OAAM,SAACC,GAENjB,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAKjEglC,EAAqB,SAACztB,EAAa5E,EAAetS,EAAW2O,GACjE,OAAO,SAAUjQ,EAAeC,GAC9Byc,aAAiBlE,EAAQ5E,EAAUtS,EAAM2O,GAAarP,MAAK,SAACC,GAC1Db,EAAS,CAAEE,KAAM6uB,EAA0BO,yCAA0ClvB,QAASS,OAE7FG,OAAM,SAACC,IAEN,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACTb,EAAS,CAAEE,KAAM6uB,EAA0BO,yCAA0ClvB,QAASa,EAAMJ,WAEpGb,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAMnEilC,EAAyB,SAACtkC,EAAUgb,EAAYC,EAAeC,GACnE,OAAO,SAAU9c,EAAeC,GAC9B0c,YAAsB/a,EAAKgb,EAAOC,EAAUC,GAAclc,MAAK,SAACC,GAC9Db,EAAS,CAAEE,KAAM6uB,EAA0BQ,yCAA0CnvB,QAASS,OAE7FG,OAAM,SAACC,IAEN,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACTb,EAAS,CAAEE,KAAM6uB,EAA0BQ,yCAA0CnvB,QAASa,EAAMJ,WAEpGb,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAMnEklC,EAAuB,SAACvpB,EAAYwpB,GACxC,OAAO,SAAUpmC,EAAeC,GAC9B+c,YAAoBJ,EAAOwpB,GAAMxlC,MAAK,SAACC,GACrCb,EAAS,CAAEE,KAAM6uB,EAA0BS,sCAAuCpvB,QAASS,OAE1FG,OAAM,SAACC,IAEN,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACTb,EAAS,CAAEE,KAAM6uB,EAA0BS,sCAAuCpvB,QAAO,OAAEa,QAAF,IAAEA,OAAF,EAAEA,EAAOJ,WAElGb,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,U,gCCnHzE,8KAGWyyB,EAHX,gB,SAGWA,K,4CAAAA,E,4CAAAA,E,4CAAAA,E,4CAAAA,E,gDAAAA,E,oFAAAA,E,oFAAAA,E,+EAAAA,M,KAWX,IA6BM2S,EAAuB,SAACzyB,EAAe3D,EAAkBY,EAAcoe,EAA2BjsB,EAAuBwO,EAAkBnS,EAAkB40B,GAC/J,OAAO,SAAUj0B,EAAeC,GAC5BD,EAAS,CAAEE,KAAMwzB,EAAqBM,uBAAwB5zB,QAAS,CAAEwT,SAAUA,EAAU3D,YAAaA,EAAaY,QAASA,EAASoe,qBAAsBA,EAAsBjsB,iBAAkBA,EAAkB3D,aAAcA,EAAe40B,mBAAmBA,KACzQj0B,EAAS,CAAEE,KAAMG,IAAsB2pB,aAAc5pB,QAASoR,IAC9DxR,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,sBAIrEkmC,EAAkB,SAAC9tB,EAAa5E,EAAetS,EAAW2O,GAC5D,OAAO,SAAUjQ,EAAeC,GAC5Byc,aAAiBlE,EAAQ5E,EAAUtS,EAAM2O,GAAarP,MAAK,SAACC,GACxDb,EAAS,CAAEE,KAAMwzB,EAAqBC,yCAA0CvzB,QAASS,OAExFG,OAAM,SAACC,IAEJ,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACPb,EAAS,CAAEE,KAAMwzB,EAAqBC,yCAA0CvzB,QAASa,EAAMJ,WAE/Fb,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAM7EslC,EAAsB,SAAC3kC,EAAUgb,EAAYC,EAAeC,GAC9D,OAAO,SAAU9c,EAAeC,GAC5B0c,YAAsB/a,EAAKgb,EAAOC,EAAUC,GAAclc,MAAK,SAACC,GAC5Db,EAAS,CAAEE,KAAMwzB,EAAqBE,yCAA0CxzB,QAASS,OAExFG,OAAM,SAACC,IAEJ,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACPb,EAAS,CAAEE,KAAMwzB,EAAqBE,yCAA0CxzB,QAASa,EAAMJ,WAE/Fb,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,SAM7EulC,EAAoB,SAAC5pB,EAAYwpB,GACnC,OAAO,SAAUpmC,EAAeC,GAC5B+c,YAAoBJ,EAAOwpB,GAAMxlC,MAAK,SAACC,GACnCb,EAAS,CAAEE,KAAMwzB,EAAqBG,sCAAuCzzB,QAASS,OAErFG,OAAM,SAACC,IAEJ,OAAIA,QAAJ,IAAIA,OAAJ,EAAIA,EAAOJ,UACPb,EAAS,CAAEE,KAAMwzB,EAAqBG,sCAAuCzzB,QAASa,EAAMJ,WAE5Fb,EAAS,CAAEE,KAAMG,IAAsBa,cAAed,QAASa,U,gCC7FnF,wEAGWqoB,EAHX,gB,SAGWA,K,wDAAAA,E,yDAAAA,M,KAKX,IAAM2U,EAAsB,SAACp2B,EAAkBvG,GAC3C,OAAO,SAAUtB,EAAcC,GAC3B2H,YAAoBC,GAAWjH,MAAK,SAACC,GAEjCb,EAAS,CAACE,KAAMopB,EAAmBC,2BAA4BnpB,QAAQ,CAACS,SAASA,EAASE,KAAMO,KAAMA,KACtGtB,EAAS,CAACE,KAAMG,IAAsBwnB,iCAEzC7mB,OAAM,SAACC,GAEJjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,U,gCCjBzE,8KAGW6sB,EAHX,gB,SAGWA,K,0DAAAA,E,0DAAAA,E,wDAAAA,E,oDAAAA,E,8DAAAA,E,mCAAAA,M,KASX,IAAM2Y,EAAiB,SAACjmC,EAAUC,GAC9B,OAAO,SAAUT,EAAeC,GAC5BD,EAAS,CAAEE,KAAM4tB,EAAyBE,yBAA0B5tB,QAAS,CAAC,IAAOI,EAAK,IAAOC,OAInGimC,EAAU,SAAClmC,EAAUC,GACvB,OAAO,SAAUT,EAAeC,GAC5BD,EAAS,CAAEE,KAAM4tB,EAAyBI,kBAC1Cpb,YAAoBtS,EAAKC,GAAKG,MAAK,SAACC,GAChCb,EAAS,CAAEE,KAAM4tB,EAAyBG,8BAA+B7tB,QAASS,OAEjFG,OAAM,SAACC,GACJjB,EAAS,CAAEE,KAAM4tB,EAAyBG,8BAA+B7tB,QAASa,EAAMJ,gBAKlG8lC,EAAgB,SAACnmC,EAAUC,GAC7B,OAAO,SAAUT,EAAeC,GAC5ByS,YAAiBlS,EAAKC,GAAKG,MAAK,SAACC,GAC7Bb,EAAS,CAAEE,KAAM4tB,EAAyBC,4BAA6B3tB,QAASS,EAASE,UAExFC,OAAM,SAACC,GAERjB,EAAS,CAACE,KAAMG,IAAsBa,cAAed,QAAQa,SAKnE2lC,EAA2B,SAACtnC,EAAcC,EAAY0V,EAASS,EAAc0Y,GAAyC,IAA1ByY,EAAyB,uDAAP,GAChH,OAAO,SAAU7mC,EAAeC,GAC5BD,EAAS,CAAEE,KAAM4tB,EAAyBK,2BAA4B/tB,QAAS,CAACd,QAASA,EAASC,MAAOA,EAAO0V,IAAKA,EAAKS,SAAUA,EAAS0Y,SAAUA,EAAUyY,YAAaA,KAC9K7mC,EAAS,CAAEE,KAAMG,IAAsBC,iBAAkBF,QAAS,CAAC,4B","file":"static/js/main.d653531c.chunk.js","sourcesContent":["import { SequenceManagerAction } from '../actions/SequenceManagerAction';\nimport { mapDeliveryCheck, deliverySendOtp, deliveryValidateOtp, rSendOtp } from \"../api/api\";\nconst enum DeliveryDetailsAction {\n DELIVERY_DETAILS_SUCCESS = 'DELIVERY_DETAILS_SUCCESS',\n DELIVERY_CHECK_SUCCESS = 'DELIVERY_CHECK_SUCCESS',\n DELIVERY_OTP_INITIATE_SUCCESS = 'DELIVERY_OTP_INITIATE_SUCCESS',\n DELIVERY_OTP_VALIDATE_SUCCESS = 'DELIVERY_OTP_VALIDATE_SUCCESS',\n DELIVERY_OTP_RSEND_SUCCESS = 'DELIVERY_OTP_RSEND_SUCCESS',\n\n}\n\n\nconst getDeliveryDetails = (email: any, name: any, phone: any, contactPhone: any, address: any, notes: any, currLoc: any, nationalAddress: any, natPostalCode: any, natPoBox: any, nationalCityName: any, nationalName: any, natId: any, isConsentBoxChecked: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: DeliveryDetailsAction.DELIVERY_DETAILS_SUCCESS, payload: {email: email, name: name, phone: phone, contactPhone: contactPhone, address: address, notes: notes, currLoc: currLoc, nationalAddress: nationalAddress, natPostalCode: natPostalCode, natPoBox: natPoBox, nationalCityName: nationalCityName, nationalName: nationalName, natId: natId, isConsentBoxChecked: isConsentBoxChecked } });\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['DeliveryDetails'] });\n }\n}\n\nconst deliveryCheck = (lat: any, lng: any, city: any) => {\n return function (dispatch: any, getState: any) {\n mapDeliveryCheck(lat, lng, city).then((response: any) => {\n dispatch({ type: DeliveryDetailsAction.DELIVERY_CHECK_SUCCESS, payload: {response: response?.data, lat: lat, lng: lng }});\n })\n .catch((error) => {\n //Display error\n if(error?.response) {\n dispatch({ type: DeliveryDetailsAction.DELIVERY_CHECK_SUCCESS, payload: {response: error?.response, lat: lat, lng: lng }});\n } else {\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n }\n })\n }\n\n}\n\nconst OTPInitiate = (phoneNumber:any, modId: any, lang: any, otpLength: any, isNumeric: any) => {\n return function (dispatch: any, getState: any) {\n deliverySendOtp(phoneNumber, modId, lang, otpLength, isNumeric).then((response) => {\n dispatch({ type: DeliveryDetailsAction.DELIVERY_OTP_INITIATE_SUCCESS, payload:response});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst OTPValidateApi = (otp: any, hashCode: any) => {\n return function (dispatch: any, getState: any) {\n deliveryValidateOtp(otp, hashCode).then((response) => {\n dispatch({ type: DeliveryDetailsAction.DELIVERY_OTP_VALIDATE_SUCCESS, payload:response});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst rSendOTP = (hashCode:any) => {\n return function (dispatch: any, getState: any) {\n rSendOtp(hashCode).then((response) => {\n dispatch({ type: DeliveryDetailsAction.DELIVERY_OTP_RSEND_SUCCESS, payload:response});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nexport { DeliveryDetailsAction, getDeliveryDetails, deliveryCheck, OTPInitiate, OTPValidateApi, rSendOTP };","import { fetchMsisdn, reserveMsisdn } from \"../api/api\";\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction';\n\nconst enum ChooseNumberAction {\n CHOOSE_NUMBER = 'CHOOSE_NUMBER',\n FETCH_MSISDN_SUCCESS = 'FETCH_MSISDN_SUCCESS',\n RESERVE_MSISDN_SUCCESS = 'RESERVE_MSISDN_SUCCESS',\n RESERVE_MSISDN_FAILURE = 'RESERVE_MSISDN_FAILURE',\n FETCH_MSISDN_FAILURE = 'FETCH_MSISDN_FAILURE',\n}\n\nconst fetchMsisdnList = (vanityType:boolean, newStack:any) => {\n return function (dispatch:any, getState:any) {\n fetchMsisdn(vanityType, newStack).then((response) => {\n dispatch({type: ChooseNumberAction.FETCH_MSISDN_SUCCESS, payload:response});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst reserveNumber = (productType: any, numberType: any, tier: any, numbersList: any, selectedNumber: any, selection:any, offerContainerId: any, newStack:any) => {\n return function (dispatch:any, getState:any) {\n reserveMsisdn(selection, newStack).then((response) => {\n dispatch({type: ChooseNumberAction.RESERVE_MSISDN_SUCCESS, payload: {productType: productType, tier: tier, numberType: numberType, numbersList: numbersList, response: response, selectedNumber: selectedNumber, selection: selection, offerContainerId: offerContainerId}});\n \n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: ChooseNumberAction.RESERVE_MSISDN_SUCCESS, payload: { productType: productType, tier: tier, numberType: numberType, numbersList: numbersList, response: error.response, selectedNumber: selectedNumber, selection: selection, offerContainerId: offerContainerId } });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n })\n }\n}\n\nconst chooseNumberComplete = () => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['ChooseNumber']});\n };\n };\n\nexport { ChooseNumberAction,reserveNumber ,fetchMsisdnList, chooseNumberComplete };","import { getUpdateStatusApi } from \"../../api/api\";\nconst urlParams = new URLSearchParams(window.location.search);\nconst status = urlParams.get('status');\n\nexport const getUpdateStatus = (apiName, error) => {\n\n if (status === \"success\") {\n getUpdateStatusApi(apiName, error).then((response) => {\n console.log(response);\n })\n }\n}","const enum endpoints {\n QUERY_GRAPHQL = '/catalog-agg-query/graphql',\n SHOPPING_CART = '/shopping-cart/v3/shoppingCart',\n GET_SHOPPING_CART = '/shopping-cart-projection/v3/shoppingCart',\n QUALIFY_PRODUCTS = '/product-offering-qualification-management/v3/qualifyProducts',\n CAPTURE_DATA = '/checkout-api/v3/checkout/captureData',\n CHECKOUT_STRUCTURE = '/checkout-api/v3/checkout/structure',\n TCC_ELIGIBILITY_CHECK = '/bmi-tcc-eligibility/services/tcc/eligibilityCheck',\n GET_CUSTOMER_RELATED_ACCOUNT = '/bmi-customer-management/services/installedbase/getCustomerProductDetails',\n GET_MSISDN = '/resource-pool-management/services/resourcePoolManagement/AvailabilityCheck',\n RESERVE_MSISDN = '/resource-pool-management/services/resourcePoolManagement/Reservation',\n UNPAID_BILLS = '/bmi-customer-unpaidbills/services/customer/dues',\n GET_SECURITY_DEPOSIT = '/bmi-customer-security-deposit/services/deposit/get',\n DELIVERY_COVERAGE_CHECK = '/api/v1/dp/r2r/oto/checkCoverage',\n\tFTTH_COVERAGE_CHECK = '/bmi-serviceability/serviceability/mobily',\n FTTH_FEASIBILITY_CHECK = '/bmi-serviceability/services/serviceability/non-mobily',\n GENERATE_ORDER = '/OrderGenerator/postProductOrder',\n GENERATE_ORDER_PRESSA = '/OrderGenerator/pressa/postProductOrder',\n GET_CHECKOUT_STRUCTURE = '/checkout-projection/v3/checkout',\n GET_SIM_DETAILS = '/bmi-sim-details/services/sim/get',\n TCC_REGISTRATION ='/bmi-tcc-eligibility/services/tcc/register',\n GET_QR_CODE = '/mobily-qr-code/services/qr/get',\n EMAIL_SERVICE = '/mobily-qr-code/services/qr/send',\n INITIATE_OTP = '/mobily-otp-services/services/otp-rayah/initiate',\n VALIDATE_OTP = '/mobily-otp-services/otp-rayah/validate',\n GET_CUSTOMER_DETAILS = '/bmi-customer-management/services/customer',\n FAMILY_PLAN_CHECK = '/bmi-customer-management/services/installedbase/familyPlan',\n GET_APPOINTMENTS = '/bmi-appointments/services/appointments/mobily/get',\n RESERVE_APPOINTMENT = '/bmi-appointments/services/appointments/mobily/reserve',\n GET_APPOINTMENTS_NON_MOBILY = '/bmi-appointments/services/appointments/non-mobily/get',\n RESERVE_APPOINTMENT_NON_MOBILY = '/bmi-appointments/services/appointments/non-mobily/reserve',\n UPDATE_VALIDATE_SHOPPING_CART = '/mobily-shopping-cart-management/api/update-and-validate',\n CREATE_ORDER_ID = '/OrderGenerator/generateOrderId',\n GET_ODB_DETAILS = '/wiremock/non-mobily/serviceability/getODBDetails',\n VALIDATE_SIM = '/bmi-sim-details/mobily/simvalidationandorc',\n DELIVERY_SEND_OTP = '/utility/v1/otp/send',\n DELIVERY_RESEND_OTP = '/utility/v1/otp/resend',\n DELIVERY_VALIDATE_OTP = '/utility/v1/otp/validate',\n MOBILY_OTP_INITIATE = '/mobily-otp-services/services/otp/generation',\n MOBILY_OTP_VALIADTE = '/mobily-otp-services/services/otp/validation',\n MOBILY_OTP_REGENERATE = '/mobily-otp-services/services/otp/regeneration',\n INITIATE_PAYMENT = '/cem/bff/dpc/v1/initiatePayment',\n ESIM_VALIDATION ='/bmi-sim-details/services/esim/v1/validation',\n INITIATE_PAYMENT_ECOM = '/cem/bff/ecom/v1/initiatePayment',\n RETRIEVE_APPOINTMENTS = '/api/v1/dp/r2r/oto/retrieveslots',\n CEM_INITIATE_OTP='/cem/bff/login/v1/initiate',\n CEM_VALIDATE_OTP='/cem/bff/login/v1/validate',\n CEM_RESEND_OTP='/cem/bff/otp/v1/resend',\n DELIVERY_SEND_CEM_OTP = '/cem/bff/otp/v1/send',\n DELIVERY_VALIDATE_CEM_OTP = '/cem/bff/otp/v1/validate',\n DELIVERY_RESEND_CEM_OTP = '/cem/bff/otp/v1/resend',\n AUDIT_SERVICE_SAVE='/api/mobily-audit-service/audit/save',\n TCC_ERROR_MAPPING_API = 'api/digital/v1/data/mappings?contextId=CTX_PORTAL&catalogKey=TCC_REGISTER_ERROR_CODES',\n GET_MAIN_AND_AROUND_ODB= '/api/v1/dp/gis/GetMainAndAroundODB'\n}\nexport default endpoints;","import axios from \"axios\";\nimport store from '../EcommerceStore';\nimport endpoints from './EcommerceEndpoints';\nimport '../local';\n\n\nconst win: any = window;\nconst lang = win[\"lang\"];\nconst apigeeBaseApiUrl = win[\"apigee_base_api_url\"];\nconst apigeeBMBaseURL = win[\"apigee_bm_base_url\"];\nconst apigeeBMXAPIKey = win[\"apigee_bm_x_api_key\"];\nconst cemKey = win[\"cem_key\"];\nvar token = win[\"clientToken\"];\nvar otpToken = win[\"dapiToken\"];\nvar reGenerateTokenUrl = win[\"regenerate_token_url\"];\nvar serverURL = win[\"base_portal_url\"];\nvar errorPage = win[\"errorPageURL\"];\nvar updateAPIURL = win[\"update_api_status_url\"];\nwin.x_trans_id = \"\";\n\nconst createTransactionID = (isCorrelationId: boolean = false) => {\n let currentDateTime = new Date().toISOString().replace(/-|:|T/gi, '').replace('.', '').slice(2).slice(0, -1);\n return 'POR' + (isCorrelationId ? 'C' : '') + currentDateTime + '_' + Math.ceil(Math.random() * 100000);\n}\n\n\n// getCoreId function is to generate correlation id if xCoId is empty\nconst getCoreId: any = () => {\n const urlParams = new URLSearchParams(window.location.search);\n let edata = urlParams.get('edata');\n let xCorelId: any = \"\";\n if (edata) {\n let decode = window.decodeURIComponent(atob(edata ? edata : \"\"));\n let params = JSON.parse(decode);\n xCorelId = params.xCoId;\n !!!win[\"x_cor_id\"] && (win[\"x_cor_id\"] = xCorelId);\n return xCorelId\n } else {\n xCorelId = createTransactionID(true);\n !!!win[\"x_cor_id\"] && (win[\"x_cor_id\"] = xCorelId);\n return xCorelId\n }\n};\n\nlet config = {\n api: {\n baseURL: apigeeBMBaseURL,\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: \"\",\n \"x-api-key\": apigeeBMXAPIKey,\n \"X-Correlation-Id\": getCoreId(),\n \"X-Source-Channel\": \"PORTAL\",\n \"X-Transaction-Id\": \"\"\n },\n },\n};\n\nlet otpConfig = {\n api: {\n baseURL: apigeeBaseApiUrl,\n headers: {\n Accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n Authorization: \"\",\n transactionId: \"\",\n channel: \"PORTAL\",\n \"cem-key\": cemKey\n },\n },\n};\n\nlet AbsherConfig = {\n api: {\n baseURL: apigeeBaseApiUrl,\n headers: {\n Accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n channel: \"PORTAL\",\n \"cem-key\": cemKey\n },\n },\n};\n\n\nexport const api = axios.create({ ...config.api });\nexport const customerInquiryApi = axios.create({ ...config.api });\nexport const otpApi = axios.create({ ...otpConfig.api });\nexport const absherApi = axios.create({ ...AbsherConfig.api });\nexport const simpleApi = axios.create();\n\napi.interceptors.request.use(\n async (conf: any) => {\n const options = { timeZone: 'Asia/Riyadh', hour12: false };\n const saudiDate = new Date().toLocaleString('en-US', options);\n const saudiISODate = new Date(saudiDate).toISOString();\n conf.headers.Authorization = \"Bearer \" + token;\n conf.headers['X-Transaction-Id'] = createTransactionID();\n conf.headers['X-Timestamp'] = saudiISODate;\n if (conf.url.includes(endpoints.RETRIEVE_APPOINTMENTS) || conf.url.includes(endpoints.DELIVERY_COVERAGE_CHECK)) {\n conf.headers['x-channel-id'] = 'PORTAL';\n }\n return conf;\n },\n (err) => {\n console.log(\"error in getting \", err);\n }\n);\n\ncustomerInquiryApi.interceptors.request.use(\n async (conf: any) => {\n const options = { timeZone: 'Asia/Riyadh', hour12: false };\n const saudiDate = new Date().toLocaleString('en-US', options);\n const saudiISODate = new Date(saudiDate).toISOString();\n conf.headers['X-Transaction-Id'] = createTransactionID();\n conf.headers['X-Timestamp'] = saudiISODate;\n return conf;\n },\n (err) => {\n console.log(\"error in getting \", err);\n }\n);\n\notpApi.interceptors.request.use(\n async (conf: any) => {\n conf.headers.Authorization = \"Bearer \" + otpToken;\n conf.headers.transactionId = createTransactionID();\n return conf;\n },\n (err) => {\n console.log(\"error in getting \", err);\n }\n);\n\nabsherApi.interceptors.request.use(\n async (conf: any) => {\n return conf;\n },\n (err) => {\n console.log(\"error in getting \", err);\n }\n);\n\nconst getProductOfferByID = (productId: any) => {\n var query = `{\n getProductOfferByID(id: \"`+ productId + `\") {\n id {\n key\n version\n }\n isBundle\n name\n createdBy\n createdOn\n externalID\n productSpecification {\n id\n name\n }\n specCharValueUse {\n name\n specCharacteristicValue {\n value\n isDefault\n }\n }\n category {\n id\n name\n type\n parentId\n isAnchor\n isOfferContainer\n parentHierarchy {\n id\n name\n parentId\n isAnchor\n isOfferContainer\n }\n }\n productOfferingPrice {\n id\n code\n name\n externalID\n productOfferingTerm{\n duration{\n amount\n units\n }\n }\n processContext {\n id\n name\n }\n priceType\n price {\n unit\n value\n }\n }\n offerLabels{\n name\n description\n channel\n }\n }\n }`\n\n return api.post(endpoints.QUERY_GRAPHQL, { query: query });\n}\n\nconst getExternalId = (productId: any) => {\n var query = `{\n getProductOfferByID(id: \"`+ productId + `\") {\n externalID\n }\n }`\n return api.post(endpoints.QUERY_GRAPHQL, { query: query });\n}\n\nconst shoppingCart = () => {\n const { SequenceManager, ProductOffer } = store.getState();\n let journey = SequenceManager.journey;\n let productCharacteristics = ProductOffer?.productCharecteristics;\n let productOfferingPrice = ProductOffer?.productOfferingPrice;\n let itemTerm = productOfferingPrice[0]?.productOfferingTerm;\n let productCharacteristic = [];\n\n let contractLength = journey.split('_');\n if (contractLength[0] === \"FTTH\" && contractLength.length > 1) {\n itemTerm = productOfferingPrice.filter((productOffer: any) => {\n return (contractLength[1] === (productOffer?.productOfferingTerm[0]?.duration?.amount + ':' + productOffer?.productOfferingTerm[0]?.duration?.units))\n })[0]?.productOfferingTerm\n }\n for (let i = 0; i < productCharacteristics.length; i++) {\n if (productCharacteristics[i].name === 'SIM Type') {\n let defaultSimType = productCharacteristics[i].specCharacteristicValue.filter((sc: any) => sc?.isDefault === true)[0];\n if (defaultSimType) {\n productCharacteristic.push({ name: productCharacteristics[i].name, value: defaultSimType?.value });\n } else {\n productCharacteristic.push({ name: productCharacteristics[i].name, value: 'Not Required' });\n console.log(\"Default simType is not provided\")\n }\n } else {\n productCharacteristic.push({ name: productCharacteristics[i].name, value: productCharacteristics[i].specCharacteristicValue[0].value })\n }\n }\n\n var data = {\n channel: SequenceManager.channel,\n offerContainer: [{\n additionalAttributes: [{\n name: \"orderType\",\n value: SequenceManager.orderType\n }],\n cartItem: [{\n action: 'Add',\n productOffering: {\n id: SequenceManager.productKey,\n name: 'Product'\n },\n itemTerm: itemTerm,\n product: {\n productCharacteristic: productCharacteristic\n },\n quantity: 1\n }],\n category: SequenceManager.category,\n processContext: 'ACQ'\n }],\n relatedParty:[\n {\n id: \"Cust-01\",\n \"@referredType\": \"Customer\"\n }\n ]\n }\n\n return api.post(endpoints.SHOPPING_CART + '?isNonPersistent=false', data);\n}\n\nconst getProductCharacteristic = (characteristic: any) => {\n const { SequenceManager, ShoppingCart } = store.getState();\n let cartItems = ShoppingCart.shoppingCart.offerContainer[0].cartItem.filter((ci: any) => {\n return (ci.product.name === SequenceManager.selectedProduct)\n });\n let productCharacteristics = cartItems[0].product.productCharacteristic;\n let productChars = [];\n for (let i = 0; i < productCharacteristics.length; i++) {\n if (productCharacteristics[i].name === characteristic) {\n productChars.push({ name: productCharacteristics[i].name, value: productCharacteristics[i].value })\n break;\n }\n }\n return productChars;\n}\n\nconst patchSignature = () => {\n const { ShoppingCart, ProductOfferingQualification } = store.getState();\n\n var data = {\n context: {},\n shoppingCartPatch: [{\n operation: \"replace\",\n path: \"/signature\",\n value: [ProductOfferingQualification.productOfferingQualification.signature]\n }]\n }\n\n return api.patch(endpoints.SHOPPING_CART + '/' + ShoppingCart.shoppingCart.id, data);\n}\n\nconst patchSimType = (simType: string, orderType: string) => {\n const { ShoppingCart } = store.getState();\n let ocId = ShoppingCart.shoppingCart.offerContainer[0].id;\n let productOcId = ShoppingCart.shoppingCart.offerContainer[0].cartItem[0].id;\n\n var data = {\n context: {},\n shoppingCartPatch: [{\n operation: \"patch\",\n path: \"/offercontainer/\" + ocId + \"/cartitem/\" + productOcId + \"/product/productcharacteristic\",\n value: [{ \"name\": \"SIM Type\", \"value\": simType }]\n },\n {\n operation: \"patch\",\n path: \"/offercontainer/\" + ocId + \"/cartitem/\" + productOcId + \"/product/productcharacteristic\",\n value: [{ \"name\": \"OrderType\", \"value\": orderType }]\n },\n {\n operation: \"patch\",\n path: \"/offercontainer/\" + ocId + \"/additionalAttribute/orderType\",\n value: [{ \"value\": orderType }]\n }]\n }\n\n return api.patch(endpoints.SHOPPING_CART + '/' + ShoppingCart.shoppingCart.id, data);\n}\n\nconst ChangeOfProcessContextSC = (processContextVal: string) => {\n const { ShoppingCart } = store.getState();\n const updatedOC = ShoppingCart?.shoppingCart.offerContainer.map((item: any) => {\n return item.processContext === \"ACQ\" ? \n {... item, processContext: processContextVal} : item\n })\n var data = {\n existingShoppingCart: ShoppingCart?.shoppingCart,\n offerContainer: updatedOC\n }\n\n return api.put(endpoints.SHOPPING_CART + '/' + ShoppingCart.shoppingCart.id, data);\n}\n\nconst patchUnpaidBills = () => {\n const { ShoppingCart, UnpaidBills } = store.getState();\n\n let ocId = ShoppingCart.shoppingCart.offerContainer[0].id;\n let unpaidBillsOcId = ShoppingCart.shoppingCart.offerContainer[0].cartItem.filter((ci: any) => {\n return (ci.product.name === 'Unpaid Bills')\n })[0].id;\n console.log(unpaidBillsOcId);\n\n var data = {\n context: {},\n shoppingCartPatch: [\n {\n operation: \"delete\",\n path: \"/offercontainer/\" + ocId + \"/cartitem/\" + unpaidBillsOcId,\n value: [{}]\n },\n {\n operation: \"add\",\n path: \"/offercontainer/\" + ocId + \"/cartitem\",\n value: [\n UnpaidBills.unpaidBillsResponse?.data?.ShoppingCartRequest?.cartItem[0]\n ]\n }\n ]\n }\n\n return api.patch(endpoints.SHOPPING_CART + '/' + ShoppingCart.shoppingCart.id, data);\n}\n\nconst patchSecurityDeposit = () => {\n const { ShoppingCart, SecurityDeposit } = store.getState();\n\n let ocId = ShoppingCart.shoppingCart.offerContainer[0].id;\n let securityDepositOcId = ShoppingCart.shoppingCart.offerContainer[0].cartItem.filter((ci: any) => {\n return (ci.product.name === 'Security Deposit')\n })[0].id;\n\n var data = {\n context: {},\n shoppingCartPatch: [\n {\n operation: \"delete\",\n path: \"/offercontainer/\" + ocId + \"/cartitem/\" + securityDepositOcId,\n value: [{}]\n },\n {\n operation: \"add\",\n path: \"/offercontainer/\" + ocId + \"/cartitem\",\n value: [\n SecurityDeposit.fetchSecurityDepositResponse.ShoppingCartRequest.cartItem[0]\n ]\n }\n ]\n }\n\n return api.patch(endpoints.SHOPPING_CART + '/' + ShoppingCart.shoppingCart.id, data);\n}\n\nconst qualifyProds = () => {\n const { SequenceManager } = store.getState();\n const { ShoppingCart } = store.getState();\n\n var data = {\n channel: SequenceManager.channel,\n context: {\n installedBase: {\n additionalCharacteristics: [],\n customer: {\n status: 'Active',\n account: [],\n agreement: [],\n contactMedium: []\n },\n productInventory: []\n },\n shoppingCart: ShoppingCart.shoppingCart\n },\n description: 'Qualification',\n instantSyncQualification: true,\n productOfferingQualificationItemContainer: [\n {\n category: SequenceManager.category,\n id: ShoppingCart.shoppingCart.offerContainer[0].id,\n processContext: 'ACQ',\n productOfferingQualificationItem: []\n }\n ],\n provideAlternative: true,\n provideUnavailabilityReason: true\n }\n\n return api.post(endpoints.QUALIFY_PRODUCTS, data);\n}\n\nconst validateSCart = () => {\n const { ShoppingCart } = store.getState();\n return api.post(endpoints.SHOPPING_CART + '/' + ShoppingCart.shoppingCart.id + `/validate?isNonPersistent=false`);\n}\n\nconst getShoppingCartById = (id: any) => {\n return api.get(endpoints.GET_SHOPPING_CART + '/' + id);\n}\n\nconst updateAndValidateShoppingCart = (id: any) => {\n let data: any = {\n ShoppingCartId: id\n }\n return api.post(endpoints.UPDATE_VALIDATE_SHOPPING_CART, data);\n}\n\nconst captData = () => {\n const { SequenceManager } = store.getState();\n const { ShoppingCart } = store.getState();\n const sectionsRequestBody = store.getState();\n const sectionsVisited = SequenceManager.sectionsVisited;\n\n let sections = [];\n for (let i = 0; i < sectionsVisited.length; i++) {\n sections.push(sectionsRequestBody[sectionsVisited[i]].requestBody);\n }\n\n var data = {\n context: {\n channel: SequenceManager.channel,\n serviceability: {},\n shoppingCart: ShoppingCart.shoppingCart\n },\n sections: sections\n }\n\n return api.post(endpoints.CAPTURE_DATA, data);\n}\n\nconst structure = () => {\n const { SequenceManager } = store.getState();\n const { ShoppingCart } = store.getState();\n\n var data = {\n context: {\n channel: SequenceManager.channel,\n serviceability: {},\n shoppingCart: ShoppingCart.shoppingCart\n }\n }\n return api.post(endpoints.CHECKOUT_STRUCTURE, data);\n}\n\nconst getCheckoutBySCId = () => {\n const { ShoppingCart } = store.getState();\n return api.get(endpoints.GET_CHECKOUT_STRUCTURE + '/' + ShoppingCart.shoppingCart.id, {\n headers: {\n 'validityToken': ShoppingCart.shoppingCart.validityToken\n }\n });\n}\n\nconst fetchMsisdn = async (isVIP: boolean, newStack: any) => {\n const { SequenceManager } = store.getState();\n var data = {}\n\n if (isVIP) {\n data = {\n NewStack: newStack,\n JourneyName: SequenceManager.journeyName,\n resourceCapacityDemand: {\n resourceCapacityDemandAmount: \"100\",\n resourcePool: {\n id: 1,\n options: {\n vanity: \"None\",\n msisdn: getProductCharacteristic('Normal Number')[0].value,\n package: getProductCharacteristic('Technical Package Name')[0].value,\n version: 'V1'\n }\n },\n type: \"phone number\"\n }\n }\n } else {\n data = {\n NewStack: newStack,\n JourneyName: SequenceManager.journeyName,\n resourceCapacityDemand: {\n resourceCapacityDemandAmount: \"100\",\n resourcePool: {\n id: 1,\n options: {\n vanity: \"None\",\n msisdn: getProductCharacteristic('Normal Number')[0].value,\n package: \"\"\n }\n },\n type: \"phone number\"\n }\n }\n }\n return api.post(endpoints.GET_MSISDN, data);\n // return api.get('http://localhost:3001/availableMsisdn');\n};\n\nconst reserveMsisdn = (reservedNumber: any, newStack: any) => {\n\n const { ShoppingCart, SequenceManager } = store.getState();\n var data = {\n JourneyName: SequenceManager.journeyName,\n reservationItem: [\n {\n NewStack: newStack,\n cartId: ShoppingCart.shoppingCart.id,\n orderType: SequenceManager.orderType,\n quantity: 1,\n appliedCapacityAmount: {\n resource: [\n {\n id: reservedNumber,\n name: \"MSISDN\",\n type: \"PhoneNumber\"\n }\n ]\n }\n }\n ]\n }\n\n return api.post(endpoints.RESERVE_MSISDN, data);\n // return api.get('http://localhost:3001/reserveMsisdn'); \n};\n\nconst getTccEligibility = (personId: any, nationality: any, requestType: any, customerConsent: any) => {\n const { SequenceManager } = store.getState();\n let data = {\n JourneyName: SequenceManager.journeyName,\n requestType: requestType,\n IdType: personId.charAt(0) === \"1\" ? \"Saudi National ID\" : \"IQAMA\",\n personId: personId,\n nationality: nationality,\n subscriptionType: getProductCharacteristic('Subscription Type')[0].value,\n msisdnType: getProductCharacteristic('MSISDN')[0].value,\n packageName: getProductCharacteristic('Technical Package Name')[0].value,\n customerConsent: customerConsent === true ? \"true\" : \"\"\n }\n return api.post(endpoints.TCC_ELIGIBILITY_CHECK, data);\n // return api.get('http://localhost:3001/tccEligibilityCheck');\n}\n\nconst initiateOtp = (customerId: any) => {\n const { SequenceManager } = store.getState();\n var data = {\n JourneyName: SequenceManager.journeyName,\n OrderId: SequenceManager.orderId,\n CustomerId: customerId,\n Language: \"en\",\n Reason: \"To conform payment\"\n }\n return api.post(endpoints.INITIATE_OTP, data);\n};\n\nconst validateOtp = (customerId: any, transactionId: any, verificationCode: any) => {\n const { SequenceManager } = store.getState();\n var data = {\n JourneyName: SequenceManager.journeyName,\n CustomerId: customerId,\n TransactionId: transactionId,\n VerificationCode: verificationCode\n }\n return api.post(endpoints.VALIDATE_OTP, data);\n};\n\nconst getCustomerRelatedAccount = (personId: any, accessToken: any) => {\n const { SequenceManager } = store.getState();\n const IdTypeValue = personId.charAt(0) === \"1\" ? \"Saudi National ID\" : \"IQAMA\";\n return customerInquiryApi.get(endpoints.GET_CUSTOMER_RELATED_ACCOUNT + `?id=${personId}&idType=${IdTypeValue}&JourneyName=${SequenceManager.journeyName}`, {\n headers: {\n Authorization: `Bearer ${accessToken}`\n }\n });\n // return api.get('http://localhost:3001/customerRelatedInquiry');\n}\n\nconst getUnpaidBills = (personId: any, newStack: any) => {\n const { ShoppingCart, SequenceManager } = store.getState();\n let data = {\n JourneyName: SequenceManager.journeyName,\n CartId: ShoppingCart.shoppingCart.id,\n OrderType: \"GSM\",\n CustomerIdType: personId.charAt(0) === \"1\" ? \"Saudi National ID\" : \"IQAMA\",\n CustomerId: personId,\n NewStack: newStack\n }\n return customerInquiryApi.post(endpoints.UNPAID_BILLS, data, {\n headers: {\n Authorization: `Bearer ${SequenceManager.accessToken}`\n }\n });\n // return api.get('http://localhost:3001/unpaidBills');\n}\n\nconst getDeposit = (personId: any, bandWidth: any) => {\n const { ShoppingCart, SequenceManager } = store.getState();\n const plan = getProductCharacteristic('Technical Package Name')[0].value;\n let data = {\n JourneyName: SequenceManager.journeyName,\n CartId: ShoppingCart.shoppingCart.id,\n IDDocNumber: personId,\n IDDocType: personId.charAt(0) === \"1\" ? \"Saudi National ID\" : \"IQAMA\",\n Package: plan,\n Bandwidth: bandWidth\n }\n return api.post(endpoints.GET_SECURITY_DEPOSIT, data);\n // return api.get('http://localhost:3001/securityDeposit');\n}\n\nconst mapDeliveryCheck = (lat: any, lon: any, city: any) => {\n var data = {\n city,\n packageSize: 'simcard',\n lat,\n lon\n }\n\n return api.post(endpoints.DELIVERY_COVERAGE_CHECK, data);\n // return api.post(\"http://localhost:3001\" + endpoints.DELIVERY_COVERAGE_CHECK, data);\n}\n\nconst mapCoverageCheck = (lat: any, lng: any) => {\n const { SequenceManager } = store.getState();\n var data = {\n OrderId: SequenceManager.orderId,\n Latitude: lat,\n Longitude: lng\n }\n return api.post(endpoints.FTTH_COVERAGE_CHECK, data);\n}\n\nconst getMainAndAroundODB = (lat: any, lng: any) => {\n let data = {\n \"latitude\": lat,\n \"longitude\": lng,\n \"range\": 100\n }\n\n return api.post(endpoints.GET_MAIN_AND_AROUND_ODB, data, {headers: {\n \"x-channel-id\": \"PORTAL\"\n }});\n}\n\nconst generateOrder = (cartId: any, journeyName: any) => {\n const { SequenceManager } = store.getState();\n let data = {\n JourneyName: journeyName,\n shoppingCartId: cartId\n }\n if (SequenceManager.journeyName === 'PreSSA') {\n return api.post(endpoints.GENERATE_ORDER_PRESSA, data);\n } else {\n return api.post(endpoints.GENERATE_ORDER, data);\n }\n \n // return api.get('http://localhost:3001/postProductOrder');\n}\n\nconst getSimDetails = (NewStack: any) => {\n const { ShoppingCart, SequenceManager } = store.getState();\n let data = {\n NewStack: NewStack,\n JourneyName: SequenceManager.journeyName,\n SIMType: \"Digital SIM\",\n cartId: ShoppingCart.shoppingCart.id,\n orderType: SequenceManager.orderType\n }\n return api.post(endpoints.GET_SIM_DETAILS, data);\n // return api.get('http://localhost:3001/getEsim'); \n}\n\nconst tccRegisterApi = (IAMToken: any, requestType: any, getSimIccid: any, getSimImsi: any, msisdnNumber: any, idNumber: any, Nationality: any, payType: any, appToken: any, exceptionFlag: any, newStack: any) => {\n const { ShoppingCart, SequenceManager } = store.getState();\n let data = {\n JourneyName: SequenceManager.journeyName,\n RequestType: requestType,\n IAMToken: IAMToken,\n iccid: getSimIccid,\n imsi: getSimImsi,\n MSISDN: msisdnNumber,\n Nationality: Nationality,\n PayType: payType ? payType : getProductCharacteristic('TCCPackageType')[0].value,\n msisdnType: getProductCharacteristic('MSISDN')[0].value,\n IdType: idNumber.charAt(0) === \"1\" ? \"Saudi National ID\" : \"IQAMA\",\n IdNumber: idNumber,\n cartId: ShoppingCart.shoppingCart.id,\n orderType: SequenceManager.orderType,\n IAMAppToken: appToken,\n exceptionFlag: exceptionFlag,\n NewStack:newStack\n }\n return api.post(endpoints.TCC_REGISTRATION, data);\n // return api.get('http://localhost:3001/tccRegistration'); \n}\n\nconst getQrCode = (orderId: any) => {\n const { SequenceManager } = store.getState();\n let data = {\n JourneyName: SequenceManager.journeyName,\n OrderId: orderId\n }\n return api.post(endpoints.GET_QR_CODE, data);\n}\n\nconst getEmailService = (orderId: any, email: any) => {\n const { SequenceManager } = store.getState();\n let data = {\n JourneyName: SequenceManager.journeyName,\n OrderId: orderId,\n RecipientEmail: email\n }\n return api.post(endpoints.EMAIL_SERVICE, data);\n}\nconst getAllPlanDetails = (externalIds: any) => {\n var query = `{\n getProductOffersByExternalIDs(externalIds: [`+ externalIds + `]) {\n id {\n key\n }\n externalID\n name\n attachment {\n id\n name\n url\n }\n offerLabels{\n name\n description\n channel\n }\n }\n }`\n\n return api.post(endpoints.QUERY_GRAPHQL, { query: query });\n}\n\nconst ftthFeasibilityCheck = (odb: any, bandwidth: any, seekerID: any) => {\n const { SequenceManager } = store.getState();\n let data = {\n OrderId: SequenceManager.orderId,\n ODBID: odb,\n Bandwidth: bandwidth,\n SeekerID: seekerID\n }\n return api.post(endpoints.FTTH_FEASIBILITY_CHECK, data);\n}\n\nconst getAppointments = (odb: any, startDate: any, endDate: any, provider: any, typeOfService: any, bandWidth: any, city: any, district: any, region: any) => {\n const { SequenceManager } = store.getState();\n const appointmentEndPoint = provider.toLowerCase() !== 'mobily' ?\n endpoints.GET_APPOINTMENTS_NON_MOBILY : endpoints.GET_APPOINTMENTS;\n var data: any = {\n JourneyName: SequenceManager.journeyName,\n OrderId: SequenceManager.orderId,\n ODB: odb,\n Provider: provider,\n TypeOfService: typeOfService,//\"Fibernet Provider\",\n PreferredStartDate: startDate,\n PreferredEndDate: endDate\n }\n if (provider.toLowerCase() !== 'mobily') {\n Object.assign(data, { Bandwidth: bandWidth }, { DISTRICT: district }, { CITY: city }, { REGION: region });\n }\n console.log('----------- GET APPOINTMENTS -----------');\n return api.post(appointmentEndPoint, data);\n}\n\nconst reserveAppointment = (odb: any, slotId: any, provider: any, startDate: any, endData: any) => {\n const { SequenceManager } = store.getState();\n const appointmentEndPoint = provider.toLowerCase() !== 'mobily' ?\n endpoints.RESERVE_APPOINTMENT_NON_MOBILY : endpoints.RESERVE_APPOINTMENT;\n var data: any = {\n JourneyName: SequenceManager.journeyName,\n OrderId: SequenceManager.orderId,\n SlotId: slotId,\n ODB: odb\n }\n if (provider.toLowerCase() !== 'mobily') {\n Object.assign(data, { Provider: provider }, { PreferredEndDate: endData }, { PreferredStartDate: startDate });\n }\n return api.post(appointmentEndPoint, data);\n}\n\nconst customerDetailsApi = (MSISDN: any) => {\n const { SequenceManager } = store.getState();\n return api.get(endpoints.GET_CUSTOMER_DETAILS + `?MSISDN=${MSISDN}&JourneyName=${SequenceManager.journeyName}`);\n}\n\nconst simswapCustomerDetailsApi = (MSISDN: any, accessToken: any) => {\n const { SequenceManager } = store.getState();\n return customerInquiryApi.get(endpoints.GET_CUSTOMER_DETAILS + `?MSISDN=${MSISDN}&JourneyName=${SequenceManager.journeyName}`, {\n headers: {\n Authorization: `Bearer ${accessToken}`\n }\n });\n}\n\nconst createOrder = () => {\n return api.get(endpoints.CREATE_ORDER_ID);\n}\n\nconst fetchOdbDetails = (ODBID: any, provider: any) => {\n return api.get(endpoints.GET_ODB_DETAILS + `?ODBID=${ODBID}&Provider=${provider}`);\n}\n\nconst FamilyPlanCheckApi = (idValue: any, packageId: any) => {\n const { SequenceManager } = store.getState();\n let data = {\n JourneyName: SequenceManager.journeyName,\n CustomerType: \"Postpaid\",\n FamilyLineActType: getProductCharacteristic('Family Line Act Type')[0].value, //\"Master\",\n CustomerIdType: idValue.charAt(0) === '1' ? \"Saudi National ID\" : \"IQAMA\", //\"IQAMA\",\n customerIdValue: idValue, //\"2020910800\",\n packageId: packageId, //\"2098\"\n }\n return api.post(endpoints.FAMILY_PLAN_CHECK, data);\n\n}\n\nconst ValidateSimApi = (serialNumber: any, puk1Number: any) => {\n const { ShoppingCart, SequenceManager } = store.getState();\n const externalID= ShoppingCart.shoppingCart.offerContainer[0].cartItem[0].productOffering.externalId;\n let data = {\n JourneyName: SequenceManager.journeyName,\n SIMNumber: serialNumber,\n PUK1: puk1Number,\n CartId: ShoppingCart.shoppingCart.id,\n PackageName: getProductCharacteristic('Technical Package Name')[0].value,\n PackageId: externalID \n }\n return api.post(endpoints.VALIDATE_SIM, data);\n // return api.get('http://localhost:3001/simValidation'); \n}\n\nconst deliverySendOtp = (number: any, modId: any, lang: any, otpLength: any, isNumeric: any) => {\n const { SequenceManager } = store.getState();\n let data = {\n version: \"v1\",\n journey: SequenceManager?.journeyName === 'PreSSA' ? \"PRESSA\" : \"COMMON\",\n operation: \"SEND_OTP\",\n language: lang,\n extraInfo: [\n {\n \"key\": \"ACCOUNT_NUMBER\",\n \"value\": number,\n },\n {\n \"key\": \"OTP_LENGTH\",\n \"value\": otpLength\n },\n {\n \"key\": \"IS_NUMERIC\",\n \"value\": isNumeric\n },\n\n ]\n }\n return api.post(endpoints.DELIVERY_SEND_CEM_OTP, data);\n // return api.get('http://localhost:3001/dapiInitiateOtp');\n}\n\nconst mnpSendOtp = (number: any, selectedProductLabel: any, lang: any, otpLength: any, isNumeric: any) => {\n let data = {\n version: \"v1\",\n journey: \"MNP_ESIM\",\n operation: \"SEND_OTP\",\n language: lang,\n extraInfo: [\n {\n key: \"ACCOUNT_NUMBER\",\n value: number,\n },\n {\n key: \"OTP_LENGTH\",\n value: otpLength\n },\n {\n key: \"IS_NUMERIC\",\n value: isNumeric\n },\n {\n key: \"PARAM1\",\n value: number\n },\n {\n key: \"PARAM2\",\n value: selectedProductLabel\n },\n ]\n }\n return api.post(endpoints.DELIVERY_SEND_CEM_OTP, data);\n}\n\nconst simSwapSendOtp = (number: any, modId: any, email: any, verifyValue: any, date: any, lang: any, otpLength: any, isNumeric: any) => {\n let data = {\n msisdn: number,\n moduleId: modId,\n language: lang,\n otpLength: otpLength,\n isNumeric: isNumeric,\n verification: verifyValue,\n emailAddress: email,\n dynamicParams: [number, date]\n }\n return otpApi.post(endpoints.DELIVERY_SEND_OTP, data);\n}\n\nconst simSwapResendOtp = (hashCode: any, verification: any) => {\n const { ShoppingCart, SequenceManager } = store.getState();\n let data = {\n hashCode: hashCode,\n language: SequenceManager.lang.toUpperCase(),\n otpLength: \"4\",\n isNumeric: \"Y\",\n verification: verification\n }\n return otpApi.put(endpoints.DELIVERY_RESEND_OTP, data);\n}\nconst simSwapValidateOtp = (otp: any, hashCode: any) => {\n let data = {\n otp: otp,\n hashCode: hashCode\n }\n return otpApi.put(endpoints.DELIVERY_VALIDATE_OTP, data);\n // return api.get('http://localhost:3001/dapiValidateOtp');\n}\n\nconst deliveryValidateOtp = (otp: any, hashCode: any) => {\n let data = {\n operation: \"VALIDATE_OTP\",\n extraInfo: [\n {\n key: \"REF_ID\",\n value: hashCode\n },\n {\n key: \"OTP\",\n value: otp\n }\n ]\n }\n return api.put(endpoints.DELIVERY_VALIDATE_CEM_OTP, data);\n // return api.get('http://localhost:3001/dapiValidateOtp');\n}\n\n\nconst rSendOtp = (hashCode: any) => {\n let data = {\n operation: \"RESEND_OTP\",\n extraInfo: [\n {\n key: \"REF_ID\",\n value: hashCode\n }\n ]\n }\n return api.put(endpoints.DELIVERY_RESEND_CEM_OTP, data);\n}\n\nconst mobilyOtpSend = (customerId: any, msisdn: any, otpType: any, productLabel: any,\n technicalName: any, journeyName: any, nationalityCode: any, tccIdType: any, fecEncrypted: any, currentOperator: any, orderMSISDN: any) => {\n const { ShoppingCart, SequenceManager } = store.getState();\n\n let data = {\n CustomerId: customerId, // New field added\n MSISDN: msisdn,\n FECEncrypted: fecEncrypted,\n SAN: \"\",\n OTPType: otpType,\n OTPStatus: \"\",\n PackageCommercialName: productLabel, // commercialName arabic and english\n PackageName: technicalName, // Technical Package name\n Language: SequenceManager.lang.toUpperCase() === \"EN\" ? \"English\" : \"Arabic\",\n CartId: ShoppingCart.shoppingCart.id,\n JourneyName: journeyName,\n PersonIdType: tccIdType,\n Nationality: nationalityCode,\n CurrentOperator: currentOperator,\n OrderMSISDN: orderMSISDN\n };\n return api.post(endpoints.MOBILY_OTP_INITIATE, data);\n // return api.get('http://localhost:3001/eaiGenerateOtp');\n}\n\nconst mobilyOtpValidate = (requestId: any, msisdn: any, otp: any, journeyName: any) => {\n const { ShoppingCart, SequenceManager } = store.getState();\n let data = {\n ServiceRequestID: requestId,\n MSISDN: msisdn,\n OTP: otp,\n CartId: ShoppingCart.shoppingCart.id,\n JourneyName: journeyName\n }\n return api.post(endpoints.MOBILY_OTP_VALIADTE, data);\n // return api.get('http://localhost:3001/eaiValidateOtp');\n}\n\nconst mobilyOtpResend = (orderId: any, requestId: any, journeyName: any) => {\n const { ShoppingCart, SequenceManager } = store.getState();\n\n let data = {\n OrderId: orderId,\n ServiceRequestID: requestId,\n CartId: ShoppingCart.shoppingCart.id,\n JourneyName: journeyName\n };\n return api.post(endpoints.MOBILY_OTP_REGENERATE, data);\n}\n\nconst byPassVerification = () => {\n const url = `/digital/v1/data/mappings?contextId=CTX_PORTAL&catalogKey=PORTAL_CONFIG`;\n return absherApi.get(url);\n};\n\nconst eSimValidation = (IdNumber: any, journeyName: any) => {\n const { ShoppingCart, SequenceManager } = store.getState();\n\n let data = {\n JourneyName: journeyName,\n IDNumber: IdNumber,\n CartId: ShoppingCart.shoppingCart.id\n };\n return api.post(endpoints.ESIM_VALIDATION, data);\n // return api.get('https://run.mocky.io/v3/a0a587ea-9d1c-4c77-968f-d872c1fc8a34'); //eSIM activation allowed success\n // return api.get('https://run.mocky.io/v3/1fb2817a-1814-464b-8e6a-42a83c094e2c'); //eSIM activation Not-allowed success\n\n};\n\nconst paymentInitiateApiCall = () => {\n const { ShoppingCart, SequenceManager } = store.getState();\n\n let data = {\n version: \"v2\",\n journey: SequenceManager.journeyName,\n operation: \"INITIATE-AUTHORIZE\",\n paymentProcessor: \"MPGS\",\n language: SequenceManager.lang.toLowerCase(),\n extraInfo: [\n {\n key: \"SHOPPING_CART_ID\",\n value: ShoppingCart.shoppingCart.id\n }\n ]\n };\n return api.post(endpoints.INITIATE_PAYMENT, data, {headers: {\"cem-key\": cemKey}});\n // return api.get('http://localhost:3001/initiatePayment');\n}\n\nconst ecomPaymentInitiateApi = () => {\n const { ShoppingCart, SequenceManager } = store.getState();\n\n let data = {\n version: \"v2\",\n journeyName: SequenceManager.journeyName,\n operation: \"INITIATE-AUTHORIZE\",\n paymentProcessor: \"MPGS\",\n language: SequenceManager.lang.toLowerCase(),\n extraInfo: [\n {\n key: \"SHOPPING_CART_ID\",\n value: ShoppingCart.shoppingCart.id\n }\n ]\n };\n return api.post(endpoints.INITIATE_PAYMENT_ECOM, data, {headers: {\"cem-key\": cemKey}});\n // return api.get('http://localhost:3001/initiatePayment');\n}\n\nconst retrieveAppointments = () => {\n const {DeliveryDetails, SequenceManager, ShoppingCart} = store.getState();\n const packageName = ShoppingCart.shoppingCart.offerContainer[0].cartItem.filter((ci: any) => {\n return (ci.product.name === SequenceManager.selectedProduct)\n })?.[0].product.productCharacteristic.filter((pc: any) => {\n return (pc.name === 'Technical Package Name')\n });\n const packageSize = packageName[0]?.value?.toUpperCase() === 'RAQI' ? 'Pressa-RAQI' : `Pressa-${SequenceManager.planType}`;\n const data: any = {\n serviceType: \"bullet\",\n packageSize,\n lat: DeliveryDetails.requestBody.steps[0].fields?.[5]?.value?.toString(),\n lon: DeliveryDetails.requestBody.steps[0].fields?.[6]?.value?.toString()\n }\n console.log('----------- DELIVERY APPOINTMENTS -----------');\n return api.post(endpoints.RETRIEVE_APPOINTMENTS, data);\n // return api.get('http://localhost:3001/retrieveslots');\n}\n\nconst cemSimSwapSendOtp = (number: any, idNumber:any, lang: any) => {\n let data = {\n\n version: \"v1\",\n journey: \"LOGIN\",\n operation: \"QUICK_LOGIN\",\n language: lang,\n extraInfo: [\n {\n key: \"ACCOUNT_NUMBER\",\n value: number\n },\n {\n key: \"ACCOUNT_TYPE\",\n value: \"MSISDN\"\n },\n {\n key: \"ID_NUMBER\",\n value: idNumber\n },\n {\n key: \"LOGIN_TYPE\",\n value: \"QUICK\"\n }\n ]\n }\n return api.post(endpoints.CEM_INITIATE_OTP, data, { headers: { 'cem-key': win[\"cem_key\"] } });\n // return api.get('http://localhost:3001/cemOTPInitiate');\n}\nconst tccCemBffSendOtp = (number: any, idNumber: any, lang: any, nationality: any) => {\n let data = {\n\n version: \"v1\",\n journey: \"LOGIN\",\n operation: \"QUICK_LOGIN\",\n language: lang,\n extraInfo: [\n {\n key: \"ACCOUNT_NUMBER\",\n value: number\n },\n {\n key: \"ACCOUNT_TYPE\",\n value: \"MSISDN\"\n },\n {\n key: \"ID_NUMBER\",\n value: idNumber\n },\n {\n key: \"NATIONALITY\",\n value: nationality\n },\n {\n key: \"LOGIN_TYPE\",\n value: \"QUICK\"\n }\n ]\n }\n return api.post(endpoints.CEM_INITIATE_OTP, data, { headers: { 'cem-key': win[\"cem_key\"] } });\n // return api.get('http://localhost:3001/cemOTPInitiate');\n}\n\nconst cemSimSwapValidateOtp = (otp: any, refId: any, clientId: any, ClientSecret: any) => {\n let data = {\n operation: \"VALIDATE_LOGIN_BY_OTP\",\n extraInfo: [\n {\n key: \"REF_ID\",\n value: refId\n },\n {\n key: \"OTP\",\n value: otp\n },\n {\n key: \"IS_OAUTH_TOKEN\",\n value: \"N\"\n },\n {\n key: \"CLIENT_ID\",\n value: clientId\n },\n {\n key: \"CLIENT_SECRET\",\n value: ClientSecret\n }\n ]\n }\n return api.post(endpoints.CEM_VALIDATE_OTP, data, { headers: { 'cem-key': win[\"cem_key\"] } });\n // return api.get('http://localhost:3001/cemOtpValidate');\n}\n\nconst cemSimSwapResendOtp = (refId: any, modes: any) => {\n let data = {\n operation: \"RESEND_OTP\",\n extraInfo: [\n {\n key: \"REF_ID\",\n value: refId\n },\n {\n key: \"MODES\",\n value: modes //\"SMS,EMAIL\"\n }\n ]\n }\n return api.put(endpoints.CEM_RESEND_OTP, data, { headers: { 'cem-key': win[\"cem_key\"] } });\n // return api.get('http://localhost:3001/cemOtpValidate');\n}\n\nconst getUpdateStatusApi = (apiName: string, res: any) => {\n // console.log(apiName, res.status);\n console.log(apiName, res);\n let data = {\n \"apiStatus\": `${apiName}-${res}`\n }\n return axios.post(`${serverURL}${updateAPIURL}`, data);\n}\n\nconst getTCCMappingErrorApi = () => {\n return api.get(endpoints.TCC_ERROR_MAPPING_API );\n}\n\nconst getAuditServiceSave = (data: any) => {\n return api.post(endpoints.AUDIT_SERVICE_SAVE, data);\n}\n\nexport { getProductOfferByID, structure, getCheckoutBySCId, shoppingCart, mapDeliveryCheck, getShoppingCartById, qualifyProds, captData, validateSCart, patchSignature, patchSimType, patchUnpaidBills, patchSecurityDeposit, fetchMsisdn, getTccEligibility, reserveMsisdn, getCustomerRelatedAccount, getUnpaidBills, getDeposit, generateOrder, getSimDetails, tccRegisterApi, getQrCode, getEmailService, getAllPlanDetails, initiateOtp, validateOtp, getAppointments, reserveAppointment, mapCoverageCheck, ftthFeasibilityCheck, customerDetailsApi, updateAndValidateShoppingCart, createOrder, fetchOdbDetails, FamilyPlanCheckApi, getExternalId, ValidateSimApi, deliverySendOtp, mnpSendOtp, simSwapSendOtp, deliveryValidateOtp, rSendOtp, mobilyOtpSend, mobilyOtpValidate, mobilyOtpResend, byPassVerification, simSwapResendOtp, paymentInitiateApiCall, eSimValidation, ecomPaymentInitiateApi, cemSimSwapSendOtp, cemSimSwapValidateOtp, cemSimSwapResendOtp, simswapCustomerDetailsApi, simSwapValidateOtp, getUpdateStatusApi,getTCCMappingErrorApi, tccCemBffSendOtp, getAuditServiceSave, retrieveAppointments, ChangeOfProcessContextSC, getMainAndAroundODB };\n","import { getSimDetails, tccRegisterApi, byPassVerification } from \"../api/api\";\nimport { SequenceManagerAction } from \"./SequenceManagerAction\";\n\nconst enum AbsherVerificationAction {\n GET_SIM_DETAILS_SUCCESS = \"GET_SIM_DETAILS_SUCCESS\",\n TCC_REGISTRATION_SUCCESS = \"TCC_REGISTRATION_SUCCESS\",\n GET_SIM_DETAILS_FAILURE = \"GET_SIM_DETAILS_FAILURE\",\n TCC_REGISTRATION_FAILURE = \"TCC_REGISTRATION_FAILURE\",\n ABSHER_VERIFICATION_COMPLETE = \"ABSHER_VERIFICATION_COMPLETE\",\n BYPASS_VERIFICATION_SUCCESS = \"BYPASS_VERIFICATION_SUCCESS\",\n BYPASS_VERIFICATION_FAILURE = \"BYPASS_VERIFICATION_FAILURE\"\n}\n\nconst getSimTypeDetails = (NewStack: any)=>{\n return function (dispatch: any, getState: any) {\n getSimDetails(NewStack).then((response) => {\n console.log(response);\n dispatch({type: AbsherVerificationAction.GET_SIM_DETAILS_SUCCESS, payload:response.data});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n}\n}\n\nconst tccRegisterDetails = (IAMToken: any, requestType: any, sim: any, imsi: any, msisdnNumber: any, idNumber: any, Nationality: any, payType: any, appToken: any, exceptionFlag: any, newStack: any)=>{\n return function (dispatch: any, getState: any) {\n tccRegisterApi(IAMToken, requestType, sim, imsi, msisdnNumber, idNumber, Nationality, payType, appToken, exceptionFlag, newStack).then((response) => {\n dispatch({type: AbsherVerificationAction.TCC_REGISTRATION_SUCCESS, payload:{tccData: response}});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n}\n}\n\nconst byPassVerificationCall = ()=>{\n return function (dispatch: any, getState: any) {\n byPassVerification().then((response) => {\n dispatch({type: AbsherVerificationAction.BYPASS_VERIFICATION_SUCCESS, payload:response});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n}\n}\n\nconst storeTccRegisterDetails = ( IAMToken: any, simDetails: any, tccRegisterResponse: any, ocId: any, nafathOption: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({type: AbsherVerificationAction.ABSHER_VERIFICATION_COMPLETE, payload:{IAMToken: IAMToken, simDetails: simDetails, tccRegisterResponse: tccRegisterResponse, ocId: ocId, nafathOption: nafathOption}});\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['AbsherVerification'] });\n }\n}\n\nexport { AbsherVerificationAction, getSimTypeDetails, tccRegisterDetails, storeTccRegisterDetails, byPassVerificationCall };\n","import { getSimDetails, tccRegisterApi, byPassVerification } from \"../api/api\";\nimport { SequenceManagerAction } from \"./SequenceManagerAction\";\n\nconst enum SSAAbsherVerificationAction {\n GET_SIM_DETAILS_SUCCESS = \"GET_SIM_DETAILS_SUCCESS\",\n TCC_REGISTRATION_SUCCESS = \"TCC_REGISTRATION_SUCCESS\",\n GET_SIM_DETAILS_FAILURE = \"GET_SIM_DETAILS_FAILURE\",\n TCC_REGISTRATION_FAILURE = \"TCC_REGISTRATION_FAILURE\",\n ABSHER_VERIFICATION_COMPLETE = \"ABSHER_VERIFICATION_COMPLETE\",\n BYPASS_VERIFICATION_SUCCESS = \"BYPASS_VERIFICATION_SUCCESS\",\n BYPASS_VERIFICATION_FAILURE = \"BYPASS_VERIFICATION_FAILURE\"\n}\n\nconst getSimTypeDetails = (NewStack: any)=>{\n return function (dispatch: any, getState: any) {\n getSimDetails(NewStack).then((response) => {\n console.log(response);\n dispatch({type: SSAAbsherVerificationAction.GET_SIM_DETAILS_SUCCESS, payload:response.data});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n}\n}\n\nconst tccRegisterDetails = (IAMToken: any, requestType: any, sim: any, imsi: any, msisdnNumber: any, idNumber: any, Nationality: any, payType: any, appToken: any, exceptionFlag: any, newStack: any)=>{\n return function (dispatch: any, getState: any) {\n tccRegisterApi(IAMToken, requestType, sim, imsi, msisdnNumber, idNumber, Nationality, payType, appToken, exceptionFlag, newStack).then((response) => {\n dispatch({type: SSAAbsherVerificationAction.TCC_REGISTRATION_SUCCESS, payload:{tccData: response.data}});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n}\n}\n\nconst byPassVerificationCall = ()=>{\n return function (dispatch: any, getState: any) {\n byPassVerification().then((response) => {\n dispatch({type: SSAAbsherVerificationAction.BYPASS_VERIFICATION_SUCCESS, payload:response});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n}\n}\n\nconst storeTccRegisterDetails = ( IAMToken: any, simDetails: any, tccRegisterResponse: any, ocId: any, nafathOption: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({type: SSAAbsherVerificationAction.ABSHER_VERIFICATION_COMPLETE, payload:{IAMToken: IAMToken, simDetails: simDetails, tccRegisterResponse: tccRegisterResponse, ocId: ocId, nafathOption: nafathOption}});\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['SSAAbsherVerification'] });\n // dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['AbsherVerification'] });\n }\n}\n\nexport { SSAAbsherVerificationAction, getSimTypeDetails, tccRegisterDetails, storeTccRegisterDetails, byPassVerificationCall };\n","import { SequenceManagerAction } from '../actions/SequenceManagerAction';\nimport { mobilyOtpSend, mobilyOtpValidate, mobilyOtpResend } from \"../api/api\";\nconst enum OTPVerificationAction {\n OTP_VERIFICATION_VALUE = 'OTP_VERIFICATION_VALUE',\n VERIFICATION_OTP_INITIATE_SUCCESS = 'VERIFICATION_OTP_INITIATE_SUCCESS',\n VERIFICATION_OTP_VALIDATE_SUCCESS = 'VERIFICATION_OTP_VALIDATE_SUCCESS',\n VERIFICATION_OTP_RSEND_SUCCESS = 'VERIFICATION_OTP_RSEND_SUCCESS',\n\n}\n\n\nconst OTPVerificationValue = (otp: any, offerContainerId: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: OTPVerificationAction.OTP_VERIFICATION_VALUE, payload: { otp: otp, offerContainerId: offerContainerId } });\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['OTPVerification'] });\n }\n}\n\nconst OTPInitiate = (customerId: any, msisdn: any, otpType: any, productLabel: any, technicalName: any, journeyName: any, nationalityCode: any, tccIdType: any, fecEncrypted: any, currentOperator: any, orderMSISDN: any) => {\n return function (dispatch: any, getState: any) {\n mobilyOtpSend(customerId, msisdn, otpType, productLabel, technicalName, journeyName, nationalityCode, tccIdType, fecEncrypted, currentOperator, orderMSISDN).then((response) => {\n dispatch({ type: OTPVerificationAction.VERIFICATION_OTP_INITIATE_SUCCESS, payload: response });\n })\n .catch((error) => {\n if (error?.response) {\n dispatch({ type: OTPVerificationAction.VERIFICATION_OTP_INITIATE_SUCCESS, payload: error.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n })\n }\n}\n\nconst OTPValidate = (requestId: any, msisdn: any, otp: any, journeyName: any) => {\n return function (dispatch: any, getState: any) {\n mobilyOtpValidate(requestId, msisdn, otp, journeyName).then((response) => {\n dispatch({ type: OTPVerificationAction.VERIFICATION_OTP_VALIDATE_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: OTPVerificationAction.VERIFICATION_OTP_VALIDATE_SUCCESS, payload: error?.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n })\n }\n}\n\nconst OTPResend = (orderId: any, requestId: any, journeyName: any) => {\n return function (dispatch: any, getState: any) {\n mobilyOtpResend(orderId, requestId, journeyName).then((response) => {\n dispatch({ type: OTPVerificationAction.VERIFICATION_OTP_RSEND_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: OTPVerificationAction.VERIFICATION_OTP_RSEND_SUCCESS, payload: error?.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n })\n }\n}\n\nexport { OTPVerificationAction, OTPVerificationValue, OTPInitiate, OTPValidate, OTPResend };","import { SequenceManagerAction } from '../actions/SequenceManagerAction';\nimport { mnpSendOtp, deliveryValidateOtp, rSendOtp } from \"../api/api\";\nconst enum MNPOTPVerificationAction {\n MNP_OTP_VERIFICATION_VALUE = 'MNP_OTP_VERIFICATION_VALUE',\n MNP_VERIFICATION_OTP_INITIATE_SUCCESS = 'MNP_VERIFICATION_OTP_INITIATE_SUCCESS',\n MNP_VERIFICATION_OTP_VALIDATE_SUCCESS = 'MNP_VERIFICATION_OTP_VALIDATE_SUCCESS',\n MNP_VERIFICATION_OTP_RSEND_SUCCESS = 'MNP_VERIFICATION_OTP_RSEND_SUCCESS',\n\n}\n\n\nconst OTPVerificationValue = (otp: any, offerContainerId: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: MNPOTPVerificationAction.MNP_OTP_VERIFICATION_VALUE, payload: { otp: otp, offerContainerId: offerContainerId } });\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['MNPOTPVerification'] });\n }\n}\n\nconst OTPInitiate = (msisdn: any, operator: any, lang: any, otpLength: any, isNumeric: any) => {\n return function (dispatch: any, getState: any) {\n mnpSendOtp(msisdn, operator, lang, otpLength, isNumeric).then((response) => {\n dispatch({ type: MNPOTPVerificationAction.MNP_VERIFICATION_OTP_INITIATE_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: MNPOTPVerificationAction.MNP_VERIFICATION_OTP_INITIATE_SUCCESS, payload: error.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n })\n }\n}\n\nconst OTPValidate = (otp: any, hashCode: any) => {\n return function (dispatch: any, getState: any) {\n deliveryValidateOtp(otp, hashCode).then((response) => {\n dispatch({ type: MNPOTPVerificationAction.MNP_VERIFICATION_OTP_VALIDATE_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: MNPOTPVerificationAction.MNP_VERIFICATION_OTP_VALIDATE_SUCCESS, payload: error.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error});\n }\n })\n }\n}\n\nconst OTPResend = (hashCode: any) => {\n return function (dispatch: any, getState: any) {\n rSendOtp(hashCode).then((response) => {\n dispatch({ type: MNPOTPVerificationAction.MNP_VERIFICATION_OTP_RSEND_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: MNPOTPVerificationAction.MNP_VERIFICATION_OTP_RSEND_SUCCESS, payload: error?.response });\n } else {\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n }\n })\n }\n}\n\nexport { MNPOTPVerificationAction, OTPVerificationValue, OTPInitiate, OTPValidate, OTPResend };","import { SequenceManagerAction } from '../actions/SequenceManagerAction';\nimport { simSwapSendOtp, simSwapValidateOtp, simSwapResendOtp } from \"../api/api\";\nconst enum SIMSwapOTPVerificationAction {\n OTP_VERIFICATION_VALUE = 'OTP_VERIFICATION_VALUE',\n SIMSWAP_OTP_INITIATE_SUCCESS = 'SIMSWAP_OTP_INITIATE_SUCCESS',\n SIMSWAP_OTP_VALIDATE_SUCCESS = 'SIMSWAP_OTP_VALIDATE_SUCCESS',\n SIMSWAP_OTP_RSEND_SUCCESS = 'SIMSWAP_OTP_RSEND_SUCCESS',\n\n}\n\n\nconst OTPVerificationValue = (otp: any, offerContainerId: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: SIMSwapOTPVerificationAction.OTP_VERIFICATION_VALUE, payload: { otp: otp, offerContainerId: offerContainerId } });\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['SIMSwapOTPVerification'] });\n }\n}\n\nconst OTPInitiate = (msisdn: any, modId: any, email: any, verifyValue: any, date: any, lang: any, otpLength: any, isNumeric: any) => {\n return function (dispatch: any, getState: any) {\n simSwapSendOtp(msisdn, modId, email, verifyValue, date, lang, otpLength, isNumeric).then((response) => {\n dispatch({ type: SIMSwapOTPVerificationAction.SIMSWAP_OTP_INITIATE_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: SIMSwapOTPVerificationAction.SIMSWAP_OTP_INITIATE_SUCCESS, payload: error.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n })\n }\n}\n\nconst OTPValidate = (otp: any, hashCode: any) => {\n return function (dispatch: any, getState: any) {\n simSwapValidateOtp(otp, hashCode).then((response) => {\n dispatch({ type: SIMSwapOTPVerificationAction.SIMSWAP_OTP_VALIDATE_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: SIMSwapOTPVerificationAction.SIMSWAP_OTP_VALIDATE_SUCCESS, payload: error?.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n })\n }\n}\n\nconst OTPResend = (hashCode: any, verification: any) => {\n return function (dispatch: any, getState: any) {\n simSwapResendOtp(hashCode, verification).then((response) => {\n dispatch({ type: SIMSwapOTPVerificationAction.SIMSWAP_OTP_RSEND_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: SIMSwapOTPVerificationAction.SIMSWAP_OTP_RSEND_SUCCESS, payload: error?.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n })\n }\n}\n\nexport { SIMSwapOTPVerificationAction, OTPVerificationValue, OTPInitiate, OTPValidate, OTPResend };","import { SequenceManagerAction } from \"./SequenceManagerAction\";\n\nconst enum SimOptionAction {\n SELECT_SIM_TYPE = \"SELECT_SIM_TYPE\",\n}\n\nconst simSelection = (selection: any, offerContainerId: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: SimOptionAction.SELECT_SIM_TYPE, payload: {selection:selection, offerContainerId: offerContainerId} });\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['SimOption'] });\n };\n};\n\nexport { SimOptionAction, simSelection };\n","import { SequenceManagerAction } from \"./SequenceManagerAction\";\n\nconst enum NumberOptionAction {\n MAKE_SELECTION = \"MAKE_SELECTION\",\n}\n\nconst makeSelection = (selection: any, selectionText: any, offerContainerId: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: NumberOptionAction.MAKE_SELECTION, payload: { selection: selection, selectionText: selectionText, offerContainerId: offerContainerId } });\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['NumberOption'] });\n };\n};\n\nexport { NumberOptionAction, makeSelection };\n","import { SequenceManagerAction } from \"./SequenceManagerAction\";\n\nconst enum CurrentOperatorAction {\n SELECT_OPERATOR = \"SELECT_OPERATOR\",\n}\n\nconst chooseOperator = (selection: any, offerContainerId: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: CurrentOperatorAction.SELECT_OPERATOR, payload: { selection: selection, offerContainerId: offerContainerId } });\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['CurrentOperator'] });\n };\n};\n\nexport { CurrentOperatorAction, chooseOperator };","import { getQrCode, getEmailService, customerDetailsApi } from \"../api/api\";\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction';\n\nconst enum SuccessPageAction {\nQR_CODE_SUCCESS = 'QR_CODE_SUCCESS',\nQR_CODE_FAILURE = 'QR_CODE_FAILURE',\nEMAIL_SERVICE_SUCCESS = 'EMAIL_SERVICE_SUCCESS',\nEMAIL_SERVICE_FAILURE = 'EMAIL_SERVICE_FAILURE',\nGET_CUSTOMER_DETAILS_SUCCESS = 'GET_CUSTOMER_DETAILS_SUCCESS',\nGET_CUSTOMER_DETAILS_FAILURE = 'GET_CUSTOMER_DETAILS_FAILURE'\n}\n\nconst getQrCodeDetails = (orderId: any)=>{\n return function (dispatch: any, getState: any) {\n getQrCode(orderId).then((response) => {\n console.log(response);\n dispatch({type: SuccessPageAction.QR_CODE_SUCCESS, payload: response.data});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst emailServiceDetails = (orderId: any, email: any)=>{\n return function (dispatch: any, getState: any) {\n getEmailService(orderId, email).then((response) => {\n console.log(response);\n dispatch({type: SuccessPageAction.EMAIL_SERVICE_SUCCESS, payload: response});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst getCustomerDetailsSSA = (msisdn: any)=>{\n return function (dispatch: any, getState: any) {\n customerDetailsApi(msisdn).then((response) => {\n console.log(response);\n dispatch({type: SuccessPageAction.GET_CUSTOMER_DETAILS_SUCCESS, payload:response.data});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n } \n\n\nexport { SuccessPageAction, getQrCodeDetails, emailServiceDetails, getCustomerDetailsSSA };","import { getAllPlanDetails, paymentInitiateApiCall, ecomPaymentInitiateApi } from \"../api/api\";\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction';\n\nconst enum CheckoutAction {\n HANDLE_CHECKOUT = \"HANDLE_CHECKOUT\",\n CHECKOUT_PLAN_DETAILS_SUCCESS = \"CHECKOUT_PLAN_DETAILS_SUCCESS\",\n INITIATE_PAYMENT_SUCCESS = \"INITIATE_PAYMENT_SUCCESS\"\n}\n\nconst getPlanDetails = (externalIds:any) => {\n return function (dispatch: any, getState: any) {\n getAllPlanDetails(externalIds).then((response) => {\n dispatch({type: CheckoutAction.CHECKOUT_PLAN_DETAILS_SUCCESS, payload:response.data});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst initiatePayment = () => {\n return function (dispatch: any, getState: any) {\n paymentInitiateApiCall().then((response) => {\n dispatch({type: CheckoutAction.INITIATE_PAYMENT_SUCCESS, payload:response});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst ecomInitiatePayment = () => {\n return function (dispatch: any, getState: any) {\n ecomPaymentInitiateApi().then((response) => {\n dispatch({type: CheckoutAction.INITIATE_PAYMENT_SUCCESS, payload:response});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst handleCheckout = (paymentMethod: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: CheckoutAction.HANDLE_CHECKOUT, payload: {paymentMethod:paymentMethod} });\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['paymentMethodAndTermsConditions']});\n };\n};\n\nexport { CheckoutAction, getPlanDetails, handleCheckout, initiatePayment, ecomInitiatePayment };","import { getUnpaidBills, getAllPlanDetails } from \"../api/api\";\nimport { SequenceManagerAction } from './SequenceManagerAction';\n\nconst enum UnpaidBillsAction {\n FETCH_UNPAID_BILLS_SUCCESS = \"FETCH_UNPAID_BILLS_SUCCESS\",\n FETCH_UNPAID_BILLS_FAILURE = \"FETCH_UNPAID_BILLS_FAILURE\",\n GET_PLAN_DETAILS_SUCCESS = \"GET_PLAN_DETAILS_SUCCESS\",\n GET_PLAN_DETAILS_FAILURE = \"GET_PLAN_DETAILS_FAILURE\",\n UNPAID_BILLS_ACCEPTED = \"UNPAID_BILLS_ACCEPTED\"\n}\n\nconst getCustomerUnpaidBills = (personId: any, newStack:any) => {\n return function (dispatch: any, getState: any) {\n getUnpaidBills(personId, newStack).then((response) => {\n dispatch({type: UnpaidBillsAction.FETCH_UNPAID_BILLS_SUCCESS, payload:response});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst getAllUnpaidPlanDetails = (externalIds:any) => {\n return function (dispatch: any, getState: any) {\n getAllPlanDetails(externalIds).then((response) => {\n dispatch({type: UnpaidBillsAction.GET_PLAN_DETAILS_SUCCESS, payload:response.data});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst acceptUnpaidBills = ( unpaidBillResponse: any, offerContainerId: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: UnpaidBillsAction.UNPAID_BILLS_ACCEPTED, payload: { unpaidBillResponse: unpaidBillResponse, offerContainerId: offerContainerId }});\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['UnpaidBills']});\n }\n}\n\nexport { UnpaidBillsAction, getCustomerUnpaidBills, getAllUnpaidPlanDetails, acceptUnpaidBills };\n","import { getAppointments, reserveAppointment } from \"../api/api\";\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction';\n\nconst enum AppointmentDetailsAction {\n GET_APPOINTMENTS_SUCCESS = 'GET_APPOINTMENTS_SUCCESS',\n GET_APPOINTMENTS_FAILURE = 'GET_APPOINTMENTS_FAILURE',\n RESERVE_APPOINTMENT_SUCCESS = 'RESERVE_APPOINTMENT_SUCCESS',\n RESERVE_APPOINTMENT_FAILURE = 'RESERVE_APPOINTMENT_FAILURE',\n SKIP_APPOINTMENT_SUCCESS = 'SKIP_APPOINTMENT_SUCCESS',\n SKIP_APPOINTMENT_FAILURE = 'SKIP_APPOINTMENT_FAILURE',\n}\n\nconst getAppointmentsSlots = (odb:string, startDate:string, endDate:string, provider: any, typeOfService:any, bandWidth: any, city: any, district: any, region: any) => {\n return function (dispatch:any, getState:any) {\n getAppointments(odb, startDate, endDate, provider, typeOfService, bandWidth, city, district, region).then((response) => {\n dispatch({type: AppointmentDetailsAction.GET_APPOINTMENTS_SUCCESS, payload:response});\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: AppointmentDetailsAction.GET_APPOINTMENTS_SUCCESS, payload: error?.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n })\n }\n}\n\nconst reserveAppointmentSlot = (odb:string, slot:any, selectedDate:string, provider:string) => {\n return function (dispatch:any, getState:any) {\n reserveAppointment(odb, slot.id, provider, slot.start, slot.end).then((response) => {\n dispatch({type: AppointmentDetailsAction.RESERVE_APPOINTMENT_SUCCESS, payload:{selectedDate:selectedDate, appointmentStart:slot.start, appointmentEnd:slot.end, slotId:slot.id, provider:provider, response: response}});\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['AppointmentDetails']});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst skipAppointment = () => {\n return function (dispatch:any, getState:any) {\n dispatch({type: AppointmentDetailsAction.SKIP_APPOINTMENT_SUCCESS});\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['AppointmentDetails']});\n }\n}\n\nexport { AppointmentDetailsAction, getAppointmentsSlots, reserveAppointmentSlot, skipAppointment };","import { FamilyPlanCheckApi, getExternalId } from \"../api/api\";\nimport { SequenceManagerAction } from \"./SequenceManagerAction\";\n\nconst enum FamilyPlanCheckAction {\nFAMILY_PLAN_CHECK_SUCCESS = \"FAMILY_PLAN_CHECK_SUCCESS\",\nFAMILY_PLAN_CHECK_FAILURE = \"FAMILY_PLAN_CHECK_FAILURE\",\nGET_EXTERNAL_ID_SUCCESS = \"GET_EXTERNAL_ID_SUCCESS\",\nGET_EXTERNAL_ID_FAILURE = \"GET_EXTERNAL_ID_FAILURE\",\nFAMILY_PLAN_CHECK_DONE = \"FAMILY_PLAN_CHECK_DONE\"\n}\n\nconst getPackageExternalId = (productKey: any) => {\n return function (dispatch: any, getState: any) {\n getExternalId(productKey).then((response) => {\n dispatch({type: FamilyPlanCheckAction.GET_EXTERNAL_ID_SUCCESS, payload:response.data});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst familyPlanValidation = (custType: any, actType: any) => {\n return function (dispatch: any, getState: any) {\n FamilyPlanCheckApi(custType, actType).then((response) => {\n dispatch({type: FamilyPlanCheckAction.FAMILY_PLAN_CHECK_SUCCESS, payload:response});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst familyPlanCheckDone = ( familyPlanCheckResponse: any, ErrorCode: any, ErrorDescription: any, offerContainerId: any, planCheckValue: any, redirectUrl: any = \"\") => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: FamilyPlanCheckAction.FAMILY_PLAN_CHECK_DONE, payload: { familyPlanCheckResponse: familyPlanCheckResponse, ErrorCode: ErrorCode, ErrorDescription: ErrorDescription, offerContainerId: offerContainerId, planCheckValue: planCheckValue, redirectUrl: redirectUrl }});\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['FamilyPlanCheck']});\n }\n}\n\nexport { FamilyPlanCheckAction, familyPlanValidation, getPackageExternalId, familyPlanCheckDone };\n","import { SequenceManagerAction } from \"./SequenceManagerAction\";\nimport { ValidateSimApi } from '../api/api';\n\nconst enum EnterSIMIDDetailsAction {\n SAVE_SIMID_DETAILS = \"SAVE_SIMID_DETAILS\",\n VALIDATE_SIM_SUCCESS = \"VALIDATE_SIM_SUCCESS\",\n VALIDATE_SIM_FAILURE = \"VALIDATE_SIM_FAILURE\"\n}\n\nconst SimValidation = (serialNumber: any, puk1Number: any) => {\n return function (dispatch: any, getState: any) {\n ValidateSimApi(serialNumber, puk1Number)\n .then((response) => {\n dispatch({ type: EnterSIMIDDetailsAction.VALIDATE_SIM_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: EnterSIMIDDetailsAction.VALIDATE_SIM_FAILURE, payload: error?.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n })\n }\n}\n\nconst saveSimIdDetails = (simNumber: any, puk1Number: any, validateSimResponse: any, offerContainerId: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: EnterSIMIDDetailsAction.SAVE_SIMID_DETAILS, payload: { simNumber: simNumber, puk1Number: puk1Number, validateSimResponse: validateSimResponse, offerContainerId: offerContainerId } });\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['EnterSIMIDDetails'] });\n };\n};\n\nexport { EnterSIMIDDetailsAction, saveSimIdDetails, SimValidation };","class localhostSettings {}\n\nconst win:any = window;\nif (window.location.href.includes(\"localhost\")) {\n console.log('local settings from local tsx');\n win[\"lang\"] = \"en\";\n // win[\"lang\"] = \"ar\";\n // document.documentElement.dir = \"rtl\";\n win[\"isLoggedIn\"] = 'false';\n window.sessionStorage.productKey = \"prepaid_150-of_h7uiw\"; //fiber_prepaid_100-of_txisl // for SSA Journey\n //window.sessionStorage.productKey = \"postpaid_esim50-of_uocli\";\n // window.sessionStorage.productKey = \"postpaid_400-of_y5r25\";\n // window.sessionStorage.productKey = \"upgrade_my_sim_to_esim-of_kg7j5\";\n // window.sessionStorage.productKey = \"replace_your_current_sim-of_8cr62\";\n window.sessionStorage.productURL = \"http://sdea004:8080/wps/wcm/connect/en/personal/mobile/postpaid/postpaid-400\";\n window.sessionStorage.productCategory = 'sim'; //internet or sim\n window.sessionStorage.journey = 'COLD_SSA'; //MNP, UPGRADE_SIM, REPLACE_SIM, NEW_SIM, ESIM, FTTH_6:Month, FTTH_12:Month, FTTH, COLD_SSA\n window.sessionStorage.planType = 'postpaid'; //postpaid, welcome\n document.documentElement.lang = win[\"lang\"];\n !!!win['store_gmk'] && (win['store_gmk'] = process.env.REACT_APP_STORE_GMK);\n !!!win[\"clientToken\"] && (win[\"clientToken\"] = process.env.REACT_APP_CLIENT_TKN);\n !!!win[\"dapiToken\"] && (win[\"dapiToken\"] = process.env.REACT_APP_DAPI_TKN);\n !!!win[\"regenerate_token_url\"] && (win[\"regenerate_token_url\"] = \"\");\n !!!win[\"apigee_base_api_url\"] && (win[\"apigee_base_api_url\"] = \"https://apisit.mobily.com.sa/api\");\n !!!win[\"base_portal_url\"] && (win[\"base_portal_url\"] = \"http://ssta004:8080\");\n !!!win[\"environment_value\"] && (win[\"environment_value\"] = \"SIT\");\n !!!win[\"apigee_bm_base_url\"] && (win[\"apigee_bm_base_url\"] = \"https://apisit.mobily.com.sa\");\n // !!!win[\"apigee_bm_base_url\"] && (win[\"apigee_bm_base_url\"] = \"https://apidev.mobily.com.sa\");\n !!!win[\"apigee_bm_x_api_key\"] && (win[\"apigee_bm_x_api_key\"] = process.env.REACT_APP_APIGEE_BM_X_APIK);\n !!!win[\"cem_key\"] && (win[\"cem_key\"] = process.env.REACT_APP_CEM_K);\n !!!win[\"errorPageURL\"] && (win[\"errorPageURL\"] = \"/localhost:3000/\");\n !!!win[\"paymentPageURL\"] && (win[\"paymentPageURL\"] = \"http://ssta004:8080/wps/portal/web/payment\");\n !!!win[\"dpcPaymentUrl\"] && (win[\"dpcPaymentUrl\"] = \"https://apisit.mobily.com.sa/api/wps/portal/web/direct-payment\");\n !!!win[\"ecommercePageURL\"] && (win[\"ecommercePageURL\"] = \"http://ssta004:8080/wps/portal/web/personal/e-commerce/buy-sim\");\n !!!win[\"deposit_questions_url\"] && (win[\"deposit_questions_url\"] = \"http://ssta004:8080/web/en/personal/e-commerce/deposit-terms\");\n !!!win[\"terms_conditions_url\"] && (win[\"terms_conditions_url\"] = \"http://ssta004:8080/web/en/personal/e-commerce/terms-and-conditions\");\n !!!win[\"eSimUrl\"] && (win[\"eSimUrl\"] = \"http://ssta004:8080/online/newsim/onlineSimSwap.mobily\");\n !!!win[\"keepMyNumUrl\"] && (win[\"keepMyNumUrl\"] = \"http://sdea004:8080/online/newsim/onlineSimSwap.mobily\");\n !!!win[\"absher_url\"] && (win[\"absher_url\"] = \"http://mobily.com.sa/mobily/IAMIntegration?returnURL=\");\n !!!win[\"home_page_url\"] && (win[\"home_page_url\"] = \"http://ssta004:8080/wps/wcm/connect/en/personal\");\n !!!win[\"contact_us_url\"] && (win[\"contact_us_url\"] = \"http://ssta004:8080/wps/portal/web/personal/am-overview/contact-us\");\n !!!win[\"quick_pay_url\"] && (win[\"quick_pay_url\"] = \"https://www.mobily.com.sa/online/quickpay/quickPay.mobily\");\n !!!win[\"supplementary_package_url\"] && (win[\"supplementary_package_url\"] = \"http://ssta004:8080/web/en/personal/mobile/familypackage/supplementary-line\");\n !!!win[\"master_package_url\"] && (win[\"master_package_url\"] = \"http://ssta004:8080/web/en/personal/mobile/familypackage/master-line\");\n !!!win[\"bm_rsa_public_key\"] && (win[\"bm_rsa_public_key\"] = process.env.REACT_APP_BM_RSA_PK);\n !!!win[\"bm_rsa_private_key\"] && (win[\"bm_rsa_private_key\"] = process.env.REACT_APP_BM_RSA_PRK);\n !!!win[\"DBRlicense\"] && (win[\"DBRlicense\"] = process.env.REACT_APP_DBR_LI_K);\n !!!win[\"nafath_url\"] && (win[\"nafath_url\"] = \"http://ssta004:8080/wps/portal/web/personal/nafath\");\n !!!win[\"bm_client_id\"] && (win[\"bm_client_id\"] = process.env.REACT_APP_BM_CI);\n !!!win[\"bm_client_secret\"] && (win[\"bm_client_secret\"] = process.env.REACT_APP_SI_BM_CS);\n !!!win[\"cem_keycloak_public_key\"] && (win[\"cem_keycloak_public_key\"] = process.env.REACT_APP_CEM_CLK_PK);\n !!!win[\"update_api_status_url\"] && (win[\"update_api_status_url\"] = '/updateAPIStatus');\n !!!win[\"WooCommerce_mobile_plans_url\"] && (win[\"WooCommerce_mobile_plans_url\"] = \"http://ssta004:8080/wps/portal/web/personal/mobily-plans/postpaid-plans/voice-postpaid-plans\");\n !!!win[\"timeout_error_page\"] && (win[\"timeout_error_page\"] = \"/wps/portal/web/personal/store/timeouterror\");\n\n}\n\nexport default localhostSettings;\n","import { getDeposit } from \"../api/api\";\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction';\n\nconst enum SecurityDepositAction {\n FETCH_SECURITY_DEPOSIT_SUCCESS = 'FETCH_SECURITY_DEPOSIT_SUCCESS',\n FETCH_SECURITY_DEPOSIT_FAILURE = 'FETCH_SECURITY_DEPOSIT_FAILURE',\n SECURITY_DEPOSIT_ACCEPTED = 'SECURITY_DEPOSIT_ACCEPTED'\n}\n\nconst fetchSecurityDeposit = (personId: any, bandWidth: any) => {\n return function (dispatch:any, getState:any) {\n getDeposit(personId, bandWidth).then((response) => {\n dispatch({type: SecurityDepositAction.FETCH_SECURITY_DEPOSIT_SUCCESS, payload:response.data});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst acceptSecurityDeposit = (securityDepositResponse: any, offerContainerId: any) => {\n return function (dispatch:any, getState:any) {\n dispatch({ type: SecurityDepositAction.SECURITY_DEPOSIT_ACCEPTED, payload: { securityDepositResponse: securityDepositResponse, offerContainerId: offerContainerId }});\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['SecurityDeposit']});\n }\n}\n\n\nexport { SecurityDepositAction, fetchSecurityDeposit, acceptSecurityDeposit};","import { SequenceManagerAction } from '../actions/SequenceManagerAction';\nimport { ftthFeasibilityCheck } from \"../api/api\";\n\nconst enum ODBDetailsAction {\n UPDATE_ODB_DETAILS = 'UPDATE_ODB_DETAILS',\n FTTH_FEASIBILITY_CHECK_SUCCESS = 'FTTH_FEASIBILITY_CHECK_SUCCESS',\n FTTH_FEASIBILITY_CHECK_FAILURE = 'FTTH_FEASIBILITY_CHECK_FAILURE',\n}\n\nconst feasibilityCheck = (odb:any, bandwidth:any, provider:any) => {\n return function (dispatch: any, getState: any) {\n ftthFeasibilityCheck(odb, bandwidth, provider).then((response: any) => {\n dispatch({ type: ODBDetailsAction.FTTH_FEASIBILITY_CHECK_SUCCESS, payload: response.data });\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst odbDetails = (city: any, district: any, region: any, FeasibilityID: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: ODBDetailsAction.UPDATE_ODB_DETAILS, payload: {city: city, district: district, region: region, FeasibilityID: FeasibilityID} });\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['ODBDetails'] });\n }\n}\n\nexport { ODBDetailsAction, odbDetails, feasibilityCheck};","import { retrieveAppointments } from \"../api/api\";\nimport { SequenceManagerAction } from \"./SequenceManagerAction\";\n\nconst enum DeliveryAppointmentAction {\n RETRIEVE_APPOINTMENTS_SUCCESS = 'RETRIEVE_APPOINTMENTS_SUCCESS',\n RETRIEVE_APPOINTMENTS_FAILURE = 'RETRIEVE_APPOINTMENTS_FAILURE',\n UPDATE_SELECTED_DATE = 'UPDATE_SELECTED_DATE'\n}\n\nconst retrieveAppointmentsSlots = () => {\n return function (dispatch:any, getState:any) {\n retrieveAppointments().then((response) => {\n dispatch({type: DeliveryAppointmentAction.RETRIEVE_APPOINTMENTS_SUCCESS, payload:response});\n })\n .catch((error) => {\n //Display error\n dispatch({type: DeliveryAppointmentAction.RETRIEVE_APPOINTMENTS_FAILURE, payload:error.response});\n // dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst updateSelectedDate = (data: any) => {\n return function (dispatch:any, getState:any) {\n dispatch({type: DeliveryAppointmentAction.UPDATE_SELECTED_DATE, payload:data});\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['DeliveryAppointment'] });\n }\n}\nexport { retrieveAppointmentsSlots, DeliveryAppointmentAction, updateSelectedDate };","export default __webpack_public_path__ + \"static/media/ArrowLeft.299ec036.svg\";","import { qualifyProds } from \"../api/api\";\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction';\n\nconst enum ProductOfferingQualificationAction {\n QUALIFY_PRODUCTS_SUCCESS = 'QUALIFY_PRODUCTS_SUCCESS',\n QUALIFY_PRODUCTS_FAILURE = 'QUALIFY_PRODUCTS_FAILURE'\n}\n\nconst qualifyProducts = () => {\n return function (dispatch:any, getState:any) {\n qualifyProds().then((response) => {\n console.log(response);\n dispatch({type: ProductOfferingQualificationAction.QUALIFY_PRODUCTS_SUCCESS, payload:response.data});\n dispatch({type: SequenceManagerAction.QUALIFY_PRODUCTS_COMPLETE});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nexport { ProductOfferingQualificationAction, qualifyProducts };","import { SequenceManagerAction } from \"../actions/SequenceManagerAction\";\nimport { ProductOfferAction } from \"../actions/ProductOfferAction\";\nimport { CheckoutAction } from \"../actions/CheckoutAction\";\nimport { SimOptionAction } from \"../actions/SimOptionAction\";\nimport { NumberOptionAction } from \"../actions/NumberOptionAction\";\nimport { ChooseNumberAction } from \"../actions/ChooseNumberAction\";\nimport { CurrentOperatorAction } from \"../actions/CurrentOperatorAction\";\nimport { CurrentNumberAction } from '../actions/CurrentNumberAction'\nimport '../local';\nimport ConfigData from '../EcommerceConfig.json';\n\nconst win: any = window;\nlet dir = win[\"lang\"] === null || win[\"lang\"] === \"en\" ? \"ltr\" : \"rtl\";\nconst lang = win[\"lang\"];\nconst rtl = lang === \"ar\";\n\nconst initState = {\n rtl: rtl,\n dir: dir,\n lang: lang,\n sectionsVisited: [],\n sectionToShow: '',\n appState: '',\n productKey: '',\n productURL: '',\n productType: 'V',\n journey: '',\n planType: '',\n error: {},\n structure: '',\n selectedProduct: '',\n selectedProductLabel: '',\n selectedSimType: '',\n selectedMsisdn: '',\n selectedMsisdnType: 'Normal number',\n selectedTier: '',\n productExternalId: '',\n operator: 'Mobily',\n orderType: '',\n orderId: '',\n orderStatus: '',\n paymentTransactionId: '',\n tccToken: '',\n payType: '',\n nationCode: '',\n channel: { href: \"\", id: \"bo_lov_portals\", name: \"Portals\", role: \"\" },\n category: {},\n email: \"\",\n maskedEmail: \"\",\n xCorrelationId: win[\"x_cor_id\"],\n // xTransactionIds: win[\"x_trans_id\"],\n journeyName: 'Pre_Journey',\n nafathStatus: '',\n isBundle: false,\n accessToken: '',\n captureDataResponse:{}\n}\nconst getCategory = (category: any) => {\n switch (category) {\n case 'sim':\n return { id: \"mobile-pc_laf6x\", name: \"Mobile\" };\n\n case 'internet':\n return { id: \"home_internet_-pc_fb4tm_v1\", name: \"Home Internet\" };\n }\n}\n\nconst getOrderType = (journey: any) => {\n let orderType = '';\n if (journey === \"UPGRADE_SIM\" || journey === \"REPLACE_SIM\") {\n orderType = \"Sim SWAP\";\n } else if (journey === \"COLD_SSA\") {\n orderType = \"Cold SSA\";\n } else if (journey === \"MNP\") {\n orderType = \"MNP\";\n } else if (journey.includes(\"FTTH\")) {\n orderType = \"FTTH\";\n } else {\n orderType = \"Activation\";\n }\n return orderType;\n}\n\nconst getJourneyName = (journey: any, selectedSimType: any) => {\n // NEW_NUMBER_SIM, NEW_NUMBER_eSIM, KEEP_NUMBER_SIM, KEEP_NUMBER_eSIM, Cold_SSA, Sim SWAP_SIM, Sim SWAP_eSIM, MNP_ACTIVATION_CANCEL \n let simVal = selectedSimType === '' || selectedSimType === 'Not Required' ? '' : selectedSimType;\n switch (journey) {\n case 'NEW_SIM':\n return simVal === '' ? 'Pre_Journey' : (selectedSimType === \"eSIM\" ? \"NEW_NUMBER_eSIM\" : \"PreSSA\");\n\n case 'ESIM':\n return \"NEW_NUMBER_eSIM\";\n\n case 'MNP':\n return simVal === '' ? 'Pre_Journey' : (selectedSimType === \"eSIM\" ? \"KEEP_NUMBER_eSIM\" : \"KEEP_NUMBER_SIM\");\n\n case 'COLD_SSA':\n return \"Cold_SSA\";\n\n case 'UPGRADE_SIM':\n return \"Sim SWAP_eSIM\";\n\n case 'REPLACE_SIM':\n return simVal === '' ? 'Pre_Journey' : (selectedSimType === \"eSIM\" ? \"Sim SWAP_eSIM\" : \"Sim SWAP_SIM\");\n\n case 'FTTH':\n return \"FTTH\";\n\n case 'FTTH_6:Month':\n return \"FTTH\";\n\n case 'FTTH_12:Month':\n return \"FTTH\";\n }\n}\n\n\nconst SequenceManagerReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n\n switch (type) {\n case SequenceManagerAction.INIT:\n case SequenceManagerAction.SET_PRODUCT_KEY_COMPLETE:\n case SequenceManagerAction.LOAD_PRODUCT_OFFER_COMPLETE:\n case SequenceManagerAction.CREATE_SHOPPING_CART_COMPLETE:\n case SequenceManagerAction.QUALIFY_PRODUCTS_COMPLETE:\n case SequenceManagerAction.SHOPPING_CART_PATCH_SIGNATURE_COMPLETE:\n case SequenceManagerAction.SHOPPING_CART_VALIDATION_COMPLETE:\n case SequenceManagerAction.UPDATE_VALIDATE_CART_COMPLETE:\n case SequenceManagerAction.SHOPPING_CART_UPDATE_COMPLETE:\n case SequenceManagerAction.STRUCTURE_UPDATE_COMPLETE:\n case SequenceManagerAction.GET_CHECKOUT_COMPLETE:\n case SequenceManagerAction.CREATE_ORDER_COMPLETE:\n case SequenceManagerAction.CAPTURE_DATA_COMPLETE:\n case SequenceManagerAction.DISPLAY_NEXT_SECTION:\n return { ...state, appState: type }\n\n case SequenceManagerAction.SET_PRODUCT_KEY:\n return {\n ...state, appState: type,\n journey: payload.journey,\n orderType: getOrderType(payload.journey),\n category: getCategory(payload.productCategory),\n productKey: payload.productKey,\n planType: payload.planType,\n productURL: payload.productURL,\n journeyName: getJourneyName(payload.journey, state.selectedSimType)\n }\n\n case SequenceManagerAction.STRUCTURE_UPDATE_SUCCESS:\n return { ...state, structure: payload }\n\n case SequenceManagerAction.SECTION_COMPLETE:\n return {\n ...state, appState: type,\n sectionsVisited: [...state.sectionsVisited, ...payload]\n }\n\n case SequenceManagerAction.DISPLAY_PREVIOUS_SECTION:\n return {\n ...state, appState: type,\n sectionsVisited: [...state.sectionsVisited.slice(0, state.sectionsVisited.length - payload)]\n }\n\n case SequenceManagerAction.DISPLAY_SECTION:\n let sections = state.structure.sections.map((section: any) => section.sectionId);\n let sects = sections.map((section: any) => {\n return (\n ConfigData.section_mappings.filter((sect: any) => {\n return (sect.checkoutSectionId === section)\n })[0].section\n )\n })\n console.log(sects.slice(0, sects.indexOf(payload.section)));\n return {\n ...state, appState: type,\n sectionToShow: payload.section,\n tccToken: payload.params.tccToken ? payload.params.tccToken : state.tccToken,\n productKey: payload.params.productKey ? payload.params.productKey : state.productKey,\n productURL: payload.params.productURL ? payload.params.productURL : state.productURL,\n orderType: payload.params.journey ? getOrderType(payload.params.journey) : state.orderType,\n journey: payload.params.journey ? payload.params.journey : state.journey,\n planType: payload.params.planType ? payload.params.planType : state.planType,\n productType: payload.params.productType ? payload.params.productType : state.productType,\n operator: payload.params.operator ? payload.params.operator : state.operator,\n category: payload.params.productCategory ? getCategory(payload.params.productCategory) : state.category,\n selectedProduct: payload.params.selectedProduct ? payload.params.selectedProduct : state.selectedProduct,\n selectedProductLabel: payload.params.selectedProductLabel ? payload.params.selectedProductLabel : state.selectedProductLabel,\n selectedSimType: payload.params.selectedSimType ? payload.params.selectedSimType : state.selectedSimType,\n productExternalId: payload.params.productExternalId ? payload.params.productExternalId : state.productExternalId,\n orderId: payload.params.orderId ? payload.params.orderId : state.orderId,\n sectionsVisited: sects.slice(0, sects.indexOf(payload.section)),\n selectedMsisdn: payload.params.selectedMsisdn ? payload.params.selectedMsisdn : state.selectedMsisdn,\n selectedMsisdnType: payload.params.selectedMsisdnType ? payload.params.selectedMsisdnType : state.selectedMsisdnType,\n selectedTier: payload.params.selectedTier ? payload.params.selectedTier : state.selectedTier,\n payType: payload.params.payType ? payload.params.payType : state.payType,\n nationCode: payload.params.nationCode ? payload.params.nationCode : state.nationCode,\n email: payload.params.email ? payload.params.email : state.email,\n maskedEmail: payload.params.maskedEmail ? payload.params.maskedEmail : state.maskedEmail,\n xCorrelationId: payload.params.xCorrelationId ? payload.params.xCorrelationId : state.xCorrelationId,\n // xTransactionIds: payload.params.xTransactionIds? payload.params.xTransactionIds : state.xTransactionIds,\n journeyName: payload.params.journeyName ? payload.params.journeyName : state.journeyName,\n nafathStatus: payload.params.nafathStatus ? payload.params.nafathStatus : state.nafathStatus,\n }\n\n case ProductOfferAction.LOAD_PRODUCT_OFFER_SUCCESS:\n // this product name is to display arabic and english name\n let productName = \"\";\n if (payload.lang === 'ar' && payload.response?.data?.getProductOfferByID[0].offerLabels.length > 0) {\n productName = payload.response?.data?.getProductOfferByID[0].offerLabels[0].name;\n } else {\n productName = payload.response?.data?.getProductOfferByID[0].name;\n }\n return {\n ...state, selectedProductLabel: productName,\n selectedProduct: payload.response?.data?.getProductOfferByID[0].name,\n productExternalId: payload.response?.data?.getProductOfferByID[0].externalID,\n isBundle: payload.response?.data?.getProductOfferByID[0]?.isBundle\n }\n\n case NumberOptionAction.MAKE_SELECTION:\n return {\n ...state, journey: payload.selection === 'KEEP_NUMBER' ? 'MNP' : state.journey,\n orderType: payload.selection === 'KEEP_NUMBER' ? \"MNP\" : \"Activation\"\n }\n\n case ChooseNumberAction.RESERVE_MSISDN_SUCCESS:\n return {\n ...state, productType: payload.productType,\n selectedMsisdn: payload.selectedNumber,\n selectedMsisdnType: payload.numberType,\n selectedTier: payload.tier\n }\n\n case SimOptionAction.SELECT_SIM_TYPE:\n return {...state, selectedSimType: payload.selection,\n ...payload.selection === 'SIM' && state.journey === \"NEW_SIM\" ? {orderType: 'PreSSA'} : {},\n journeyName: getJourneyName(state.journey, payload.selection)\n }\n\n case CurrentOperatorAction.SELECT_OPERATOR:\n return { ...state, operator: payload.selection }\n\n case CurrentNumberAction.GET_CUSTOMER_DETAILS_SUCCESS:\n return {\n ...state, payType: payload?.data?.PayType,\n nationCode: payload?.data?.Nationality,\n email: payload?.data?.Email,\n maskedEmail: payload?.data?.MaskedEmail\n }\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'SimOption')\n });\n return { ...state, selectedSimType: section[0] ? section[0].steps[0].options[0].value : state.selectedSimType }\n\n case SequenceManagerAction.GENERATE_ORDER_SUCCESS:\n return { ...state, paymentTransactionId: payload.response?.data?.paymentTransactionId, orderId: payload.response?.data?.orderId, orderStatus: payload.response.status }\n\n case SequenceManagerAction.CREATE_ORDER_SUCCESS:\n return { ...state, orderId: payload.response.data }\n\n case SequenceManagerAction.ACCESS_TOKEN:\n return { ...state, accessToken: payload }\n\n case SequenceManagerAction.SHOPPING_CART_SIM_TYPE:\n return { ...state, selectedSimType: payload }\n\n case SequenceManagerAction.GENERIC_ERROR:\n return { ...state, appState: type, error: payload }\n\n case SequenceManagerAction.CAPTURE_DATA_SUCCESS:\n return { ...state, captureDataResponse: payload }\n\n default:\n return state;\n }\n}\n\nexport default SequenceManagerReducer;\n","import { ProductOfferAction } from '../actions/ProductOfferAction'\n\nconst initState = {\n productOfferingPrice: '',\n productCharecteristics: '',\n getProductOffer: ''\n}\n\nconst ProductOfferReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n\n switch (type) {\n case ProductOfferAction.LOAD_PRODUCT_OFFER_SUCCESS:\n \n return { ...state, productOfferingPrice: payload.response?.data?.getProductOfferByID[0].productOfferingPrice,\n productCharecteristics: payload.response?.data?.getProductOfferByID[0].specCharValueUse,\n getProductOffer: payload.response?.data?.getProductOfferByID[0] }\n\n default:\n return state;\n }\n}\n\nexport default ProductOfferReducer;","import { ShoppingCartAction } from '../actions/ShoppingCartAction';\n\nconst initState = {\n shoppingCart : {},\n isSimTypePatchDone : false,\n isUnpaidBillsPatchDone : false,\n isSecurityDepositPatchDone : false,\n isProcessContextPut : false\n}\n\nconst ShoppingCartReducer = (state:any = initState, action:any) => {\n const { type } = action;\n const { payload } = action;\n\n switch (type) {\n case ShoppingCartAction.SHOPPING_CART_CREATE_SUCCESS:\n case ShoppingCartAction.SHOPPING_CART_PATCH_SIGNATURE_SUCCESS:\n case ShoppingCartAction.SHOPPING_CART_UPDATE_SUCCESS:\n return {...state, shoppingCart:payload}\n\n case ShoppingCartAction.SHOPPING_CART_PATCH_SIM_TYPE_SUCCESS:\n return {...state, shoppingCart:payload, isSimTypePatchDone:true}\n\n case ShoppingCartAction.SHOPPING_CART_PUT_PROCESS_CONTEXT_SUCCESS:\n return {...state, shoppingCart:payload, isProcessContextPut:true}\n\n case ShoppingCartAction.SHOPPING_CART_PATCH_UNPAID_BILLS_SUCCESS:\n return {...state, shoppingCart:payload}\n\n case ShoppingCartAction.SHOPPING_CART_PATCH_UNPAID_BILLS_VERIFIED:\n return {...state, isUnpaidBillsPatchDone:payload}\n\n case ShoppingCartAction.SHOPPING_CART_PATCH_SECURITY_DEPOSIT_SUCCESS:\n return {...state, shoppingCart:payload}\n\n case ShoppingCartAction.SHOPPING_CART_PATCH_SECURITY_DEPOSIT_VERIFIED:\n return {...state, isSecurityDepositPatchDone:payload}\n\n case ShoppingCartAction.SHOPPING_CART_VALIDATION_SUCCESS:\n case ShoppingCartAction.UPDATE_VALIDATE_CART_SUCCESS:\n return {...state, shoppingCart:payload.shoppingCart}\n\n case ShoppingCartAction.SHOPPING_CART_INVALIDATE:\n return {...state, shoppingCart:{}}\n \n default:\n return state;\n }\n}\n\nexport default ShoppingCartReducer;","import { ProductOfferingQualificationAction } from '../actions/ProductOfferingQualificationAction'\n\nconst initState = {\n productOfferingQualification : ''\n}\n\nconst ProductOfferingQualificationReducer = (state:any = initState, action:any) => {\n const { type } = action;\n const { payload } = action;\n\n switch (type) {\n case ProductOfferingQualificationAction.QUALIFY_PRODUCTS_SUCCESS:\n return {...state, productOfferingQualification:payload}\n\n default:\n return state;\n\n }\n}\n\nexport default ProductOfferingQualificationReducer;","import { CheckoutAction } from '../actions/CheckoutAction'\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction'\n\nconst initState = {\n requestBody: {\n sectionId: \"paymentMethodAndTermsConditions\",\n name: \"paymentMethod And TermsConditions\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"paymentMethod\",\n fields: [\n {\n name: \"PaymentTransactionID\",\n value: \"\"\n }\n ],\n options: [\n {\n name: \"paymentMethod\",\n value: \"\"\n }\n ]\n },\n {\n sequence: \"0\",\n stepId: \"termsAndConditions\",\n options: [\n {\n name: \"termsAccepted\",\n value: \"true\"\n }\n ]\n }\n ]\n },\n planDetailsResponse : {},\n initiatePaymentResponse : {}\n}\n\nconst CheckoutReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n var CheckoutValue = { ...state.requestBody.steps };\n\n switch (type) {\n case CheckoutAction.CHECKOUT_PLAN_DETAILS_SUCCESS:\n return {...state, planDetailsResponse: payload}\n\n case CheckoutAction.INITIATE_PAYMENT_SUCCESS:\n CheckoutValue[0].fields[0].value = payload.data?.data?.refId ? payload.data?.data?.refId : '';\n return { ...state, initiatePaymentResponse: payload }\n\n case CheckoutAction.HANDLE_CHECKOUT:\n CheckoutValue[0].options[0].value = payload.paymentMethod\n return state;\n\n case SequenceManagerAction.DISPLAY_PREVIOUS_SECTION:\n case SequenceManagerAction.DISPLAY_SECTION:\n return { ...state, planDetailsResponse: {}, initiatePaymentResponse: {} };\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'paymentMethodAndTermsConditions')\n });\n if (section.length > 0) {\n let paymentType = section[0].steps[0].options[0];\n let refId = section[0].steps[0].fields[0];\n CheckoutValue[0].fields[0].value = refId ? refId.value : \"\";\n CheckoutValue[0].options[0].value = paymentType ? paymentType.value : \"\";\n }\n return state;\n\n default:\n return state;\n }\n}\n\nexport default CheckoutReducer;","import { NumberOptionAction } from '../actions/NumberOptionAction'\nimport { SequenceManagerAction } from \"../actions/SequenceManagerAction\";\n\nconst initState = {\n requestBody: {\n sectionId: \"NumberOption\",\n name: \"Number Option\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"NumberOption\",\n offerContainerId: \"\",\n options: [\n {\n name: \"numberOption\",\n value: \"\",\n fields: [\n {\n name: \"Request Type\",\n value: \"\",\n }\n ],\n },\n ]\n },\n ],\n },\n}\n\nconst NumberOptionReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n var NumberValue = { ...state.requestBody.steps };\n\n switch (type) {\n case NumberOptionAction.MAKE_SELECTION:\n NumberValue[0].options[0].value = payload.selection;\n NumberValue[0].options[0].fields[0].value = payload.selectionText;\n NumberValue[0].offerContainerId = payload.offerContainerId;\n return state;\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'NumberOption')\n });\n if (section.length > 0) {\n let numberTypeValue = section[0].steps[0].options[0];\n NumberValue[0].offerContainerId = section[0].steps[0].offerContainerId;\n NumberValue[0].options[0].value = numberTypeValue ? numberTypeValue.value : \"\";\n NumberValue[0].options[0].fields[0].value = numberTypeValue ? numberTypeValue.fields[0].value : \"\";\n }\n return state;\n\n default:\n return state;\n }\n}\n\nexport default NumberOptionReducer;","import { SimOptionAction } from \"../actions/SimOptionAction\";\nimport { SequenceManagerAction } from \"../actions/SequenceManagerAction\";\n\nconst initSimType = {\n requestBody: {\n sectionId: \"SimOption\",\n name: \"Sim Option Type\",\n steps: [\n {\n sequence: \"0\",\n offerContainerId: \"\",\n stepId: \"ChooseSIMType\",\n options: [\n {\n name: \"SIM Type\",\n value: \"\",\n },\n ],\n },\n ],\n }\n};\n\nconst SimOptionReducer = (state: any = initSimType, action: any) => {\n const { type } = action;\n const { payload } = action;\n var SimOptionValue = { ...state.requestBody.steps };\n\n switch (type) {\n case SimOptionAction.SELECT_SIM_TYPE:\n SimOptionValue[0].options[0].value = payload.selection;\n SimOptionValue[0].offerContainerId = payload.offerContainerId;\n return state;\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'SimOption')\n });\n if (section.length > 0) {\n let simValueType = section[0].steps[0].options[0];\n SimOptionValue[0].offerContainerId = section[0].steps[0].offerContainerId;\n SimOptionValue[0].options[0].value = simValueType ? simValueType.value : \"\";\n }\n return state;\n\n default:\n return state;\n }\n};\n\nexport default SimOptionReducer;\n","import { ChooseNumberAction } from '../actions/ChooseNumberAction';\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction';\n\nconst initState = {\n requestBody: {\n sectionId: \"ChooseNumber\",\n name: \"Choose Number\",\n steps: [\n {\n sequence: \"0\",\n offerContainerId: \"\",\n stepId: \"ChooseNumber\",\n fields: [\n {\n name: \"GetMSISDNListResponse\",\n value: \"\"\n },\n {\n name: \"ReserveMSISDNResponse\",\n value: \"\"\n },\n {\n name: \"SelectedMSISDN\",\n value: \"\"\n },\n {\n name: \"SelectedMSISDNReservationID\",\n value: \"\"\n }\n ]\n }\n ]\n },\n fetchMsisdnResponse: {\n\n },\n reserveMsisdnResponse: {\n\n }\n}\n\n\nconst ChooseNumberReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n var ChooseNumberValue = { ...state.requestBody.steps };\n\n switch (type) {\n\n case ChooseNumberAction.FETCH_MSISDN_SUCCESS:\n return { ...state, fetchMsisdnResponse: payload };\n\n case ChooseNumberAction.RESERVE_MSISDN_SUCCESS: \n ChooseNumberValue[0].offerContainerId = payload.offerContainerId;\n ChooseNumberValue[0].fields[0].value = payload.numbersList.map((num:any)=> { return num.id}).join();\n ChooseNumberValue[0].fields[1].value = JSON.stringify(payload.response.data);\n ChooseNumberValue[0].fields[2].value = payload.selection;\n ChooseNumberValue[0].fields[3].value = payload.response?.data?.MSISDN_spcId;\n\n return { ...state, reserveMsisdnResponse: payload.response };\n\n case SequenceManagerAction.DISPLAY_PREVIOUS_SECTION:\n case SequenceManagerAction.DISPLAY_SECTION:\n return { ...state, fetchMsisdnResponse: {}, reserveMsisdnResponse: {} };\n\n case SequenceManagerAction.DISPLAY_SECTION:\n return { ...state, fetchMsisdnResponse: {}, reserveMsisdnResponse: {} };\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'ChooseNumber')\n });\n if(section.length > 0) {\n ChooseNumberValue[0].offerContainerId = section[0].steps[0].offerContainerId;\n for (let i = 0; i < ChooseNumberValue[0].fields.length; i++) {\n const ChooseNumberField = section[0].steps[0].fields.filter((field: any) => { return (field.name === ChooseNumberValue[0].fields[i].name) })[0];\n ChooseNumberValue[0].fields[i].value = ChooseNumberField ? ChooseNumberField.value : \"\";\n }\n }\n return state;\n\n default:\n return state;\n }\n}\n\nexport default ChooseNumberReducer;","import { DeliveryDetailsAction } from '../actions/DeliveryDetailsAction'\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction'\n\nconst initState = {\n requestBody: {\n sectionId: \"DeliveryDetails\",\n name: \"Delivery Details\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"DeliveryDetails\",\n fields: [\n {\n name: \"Email\",\n value: \"\"\n },\n {\n name: \"Receiver Name\",\n value: \"\"\n },\n {\n name: \"Receiver Phone Number\",\n value: \"\"\n },\n {\n name: \"Delivery Address\",\n value: \"\"\n },\n {\n name: \"Delivery Notes\",\n value: \"\"\n },\n {\n name: \"Latitude\",\n value: \"\"\n },\n {\n name: \"Longitude\",\n value: \"\"\n },\n {\n name: \"DeliveryLocation Response\",\n value: \"\"\n },\n {\n name: \"ContactPhoneNumber\",\n value: \"\"\n },\n {\n name: \"National address\",\n value: \"\"\n },\n {\n name: \"ID number\",\n value: \"\"\n },\n {\n name: \"Address Consent\",\n value: \"\"\n },\n {\n name: \"PostalCode\",\n value: \"\"\n },\n {\n name: \"PoBox\",\n value: \"\"\n },\n {\n name: \"City\",\n value: \"\"\n },\n {\n name: \"Country\",\n value: \"\"\n }\n ]\n }\n ],\n },\n deliveryCheckResponse: {\n\n },\n initiateOTPResponse: {\n\n },\n validateOTPResponse: {\n\n },\n rSendOTPResponse: {\n\n },\n currLoc: {\n\n },\n}\n\nconst DeliveryDetailsReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n var DeliveryDetailsValue = { ...state.requestBody.steps };\n\n switch (type) {\n case DeliveryDetailsAction.DELIVERY_OTP_INITIATE_SUCCESS:\n return { ...state, initiateOTPResponse: payload };\n\n case DeliveryDetailsAction.DELIVERY_OTP_VALIDATE_SUCCESS:\n return { ...state, validateOTPResponse: payload };\n\n case DeliveryDetailsAction.DELIVERY_OTP_RSEND_SUCCESS:\n return { ...state, rSendOTPResponse: payload };\n\n case DeliveryDetailsAction.DELIVERY_DETAILS_SUCCESS:\n DeliveryDetailsValue[0].fields[0].value = payload.email;\n DeliveryDetailsValue[0].fields[1].value = payload.name;\n DeliveryDetailsValue[0].fields[2].value = payload.phone;\n DeliveryDetailsValue[0].fields[3].value = payload.address;\n DeliveryDetailsValue[0].fields[4].value = payload.notes;\n DeliveryDetailsValue[0].fields[8].value = payload.contactPhone;\n DeliveryDetailsValue[0].fields[9].value = payload.nationalAddress;\n DeliveryDetailsValue[0].fields[10].value = payload.natId;\n DeliveryDetailsValue[0].fields[11].value = payload.isConsentBoxChecked === true ? \"true\" : \"\";\n DeliveryDetailsValue[0].fields[12].value = payload.natPostalCode;\n DeliveryDetailsValue[0].fields[13].value = payload.natPoBox;\n DeliveryDetailsValue[0].fields[14].value = payload.nationalCityName;\n DeliveryDetailsValue[0].fields[15].value = payload.nationalName;\n return { ...state, currLoc: payload.currLoc };\n\n case DeliveryDetailsAction.DELIVERY_CHECK_SUCCESS:\n DeliveryDetailsValue[0].fields[5].value = payload.lat;\n DeliveryDetailsValue[0].fields[6].value = payload.lng;\n DeliveryDetailsValue[0].fields[7].value = JSON.stringify(payload.response);\n return { ...state, deliveryCheckResponse: payload.response };\n\n case SequenceManagerAction.DISPLAY_PREVIOUS_SECTION:\n case SequenceManagerAction.DISPLAY_SECTION:\n return { ...state, deliveryCheckResponse: {}, initiateOTPResponse: {}, validateOTPResponse: {}, rSendOTPResponse: {} }\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'DeliveryDetails')\n });\n if (section.length > 0) {\n for (let i = 0; i < DeliveryDetailsValue[0].fields.length; i++) {\n const DeliveryDetailsField = section[0].steps[0].fields.filter((field: any) => { return (field.name === DeliveryDetailsValue[0].fields[i].name) })[0];\n DeliveryDetailsValue[0].fields[i].value = DeliveryDetailsField ? DeliveryDetailsField.value : \"\";\n }\n }\n return state;\n\n default:\n return state;\n }\n}\n\nexport default DeliveryDetailsReducer;","import { FTTHServiceabilityAction } from '../actions/FTTHServiceabilityAction'\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction'\n\nconst initState = {\n requestBody: {\n sectionId: \"FTTHServiceability\",\n name: \"FTTH Serviceability\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"Serviceability\",\n fields: [\n {\n name: \"serviceability Response\",\n value: \"\"\n },\n {\n name: \"Delivery Address\",\n value: \"\"\n },\n {\n name: \"City\",\n value: \"\"\n },\n {\n name: \"Delivery Notes\",\n value: \"\"\n },\n {\n name: \"ODB ID\",\n value: \"\"\n },\n {\n name: \"ODB Provider\",\n value: \"\"\n }\n ]\n }\n ]\n },\n coverageCheckResponse: {},\n allOdbsResponse: {},\n mapLocation: {}\n}\n\nconst FTTHServiceabilityReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n var FTTHServiceabilityValue = { ...state.requestBody.steps };\n\n switch (type) {\n case FTTHServiceabilityAction.FTTH_COVERAGE_CHECK_SUCCESS:\n return { ...state, coverageCheckResponse: payload };\n\n case FTTHServiceabilityAction.FTTH_UPDATE_MAP_LOCATION:\n return { ...state, mapLocation: payload };\n\n case FTTHServiceabilityAction.FTTH_GET_MAIN_AND_AROUND_ODBS:\n return { ...state, allOdbsResponse: payload };\n\n case FTTHServiceabilityAction.FTTH_CLEAR_ODBS:\n return { ...state, allOdbsResponse: {}};\n\n case FTTHServiceabilityAction.FTTH_SERVICEABILITY_UPDATE:\n FTTHServiceabilityValue[0].fields[0].value = JSON.stringify(state.coverageCheckResponse);\n FTTHServiceabilityValue[0].fields[1].value = payload.address;\n FTTHServiceabilityValue[0].fields[2].value = payload.cityName;\n FTTHServiceabilityValue[0].fields[3].value = payload.notes;\n FTTHServiceabilityValue[0].fields[4].value = payload.odb;\n FTTHServiceabilityValue[0].fields[5].value = payload.provider;\n\n return state;\n\n case SequenceManagerAction.DISPLAY_PREVIOUS_SECTION:\n case SequenceManagerAction.DISPLAY_SECTION:\n return { ...state, coverageCheckResponse: {} }\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'FTTHServiceability')\n });\n if (section.length > 0) {\n for (let i = 0; i < FTTHServiceabilityValue[0].fields.length; i++) {\n const checkoutField = section[0].steps[0].fields.filter((field: any) => { return (field.name === FTTHServiceabilityValue[0].fields[i].name) })[0];\n FTTHServiceabilityValue[0].fields[i].value = checkoutField ? checkoutField.value : \"\";\n }\n }\n return state;\n\n default:\n return state;\n }\n\n}\n\nexport default FTTHServiceabilityReducer;","import { TCCEligibilityCheckAction } from \"../actions/TCCEligibilityCheckAction\";\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction';\n\n\nconst initEligibilityCheck = {\n requestBody: {\n sectionId: \"TCCEligibilityCheck\",\n name: \"TCC Eligibility Check\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"TCCEligibilityCheck\",\n offerContainerId: \"\",\n fields: [\n {\n name: \"IDNumber\",\n value: \"\"\n },\n {\n name: \"\",\n value: \"\"\n },\n {\n name: \"Mobilycustomer\",\n value: \"\"\n },\n {\n name: \"ContactPhoneNumber\",\n value: \"\"\n },\n {\n name: \"Email\",\n value: \"\"\n },\n {\n name: \"OTPType\",\n value: \"\"\n },\n {\n name: \"ActiveVoiceLines\",\n value: \"\"\n },\n {\n name: \"CustomerRelatedAccountResponse\",\n value: \"\"\n },\n {\n name: \"NationalityISOCode\",\n value: \"\"\n },\n {\n name: \"FECEncrypted\",\n value: \"\"\n },\n {\n name: \"NewStack\",\n value: \"N\"\n },\n {\n name: \"CustomerConsent\",\n value: \"\"\n },\n {\n name: \"OTP\",\n value: \"\"\n }\n ],\n options: [\n {\n name: \"IDName\",\n value: \"\"\n }\n ]\n }\n ]\n },\n\n tccEligibilityResponse: {\n\n },\n customerRelatedAccountResponse: {\n\n },\n nationalityCode: \"\",\n eSimValidationResponse:{\n\n },\n eligibilitySendOtpResponse:{},\n eligibilityValidateOtpResponse:{},\n eligibilityResendOtpResponse:{}\n}\n\nconst EligibilityCheckReducer = (state: any = initEligibilityCheck, action: any) => {\n const { type } = action;\n const { payload } = action;\n var tccValue = { ...state.requestBody.steps };\n switch (type) {\n case TCCEligibilityCheckAction.TCC_ELIGIBILITY_CHECK_SUCCESS:\n tccValue[0].fields[0].value = payload.personId;\n tccValue[0].fields[1].name = payload.nationalityFieldName;\n tccValue[0].fields[1].value = payload.nationalityName;\n tccValue[0].options[0].value = payload.idType === \"1\" ? \"Saudi National ID\" : \"IQAMA\";\n state.nationalityCode = payload.nationality;\n tccValue[0].fields[3].value = payload.contactPhone;\n tccValue[0].fields[8].value = payload.nationality;\n tccValue[0].fields[10].value = payload.response.data?.NewStack ? payload.response?.data?.NewStack : \"N\";\n tccValue[0].fields[11].value = payload?.customerConsent === true ? \"true\" : \"\";\n return { ...state, tccEligibilityResponse: payload.response };\n\n case TCCEligibilityCheckAction.CUSTOMER_RELATED_ACCOUNT_SUCCESS:\n\n return { ...state, customerRelatedAccountResponse: payload.response };\n\n case TCCEligibilityCheckAction.ESIM_VALIDATION_SUCCESS:\n\n return { ...state, eSimValidationResponse: payload.response };\n\n case TCCEligibilityCheckAction.TCC_ELIGIBILITY_CEM_OTP_INITIATE_SUCCESS:\n\n return { ...state, eligibilitySendOtpResponse: payload };\n\n case TCCEligibilityCheckAction.TCC_ELIGIBILITY_CEM_OTP_VALIDATE_SUCCESS:\n\n return { ...state, eligibilityValidateOtpResponse: payload };\n\n case TCCEligibilityCheckAction.TCC_ELIGIBILITY_CEM_OTP_RSEND_SUCCESS:\n\n return { ...state, eligibilityResendOtpResponse: payload };\n\n case TCCEligibilityCheckAction.STORE_CUSTOMER_DETAILS:\n let mobilycustomer = payload.customerRelatedAccountResponse?.MobilyCustomer ? payload.customerRelatedAccountResponse.MobilyCustomer : \"\";\n let email = payload.customerRelatedAccountResponse?.customer?.account[0]?.email ? payload.customerRelatedAccountResponse.customer.account[0].email : \"\";\n let otpType = payload.customerRelatedAccountResponse?.OTPDetails?.OTPType ? payload.customerRelatedAccountResponse.OTPDetails.OTPType : \"\";\n let otpVoiceLines = payload.customerRelatedAccountResponse?.customer?.activeVoiceLines ? payload.customerRelatedAccountResponse.customer.activeVoiceLines : \"\";\n let fecEncrypted = otpType.toUpperCase() === 'MOBILY' ? '0' : '1';\n tccValue[0].fields[2].value = mobilycustomer;\n tccValue[0].fields[4].value =email;\n tccValue[0].fields[5].value = otpType;\n tccValue[0].fields[6].value = JSON.stringify(otpVoiceLines);\n tccValue[0].fields[7].value = JSON.stringify(payload.customerRelatedAccountResponse);\n tccValue[0].fields[9].value = fecEncrypted;\n tccValue[0].offerContainerId = payload.offerContainerId;\n tccValue[0].fields[10].value = payload.newStackVal ? payload.newStackVal : 'N';\n tccValue[0].fields[12].value = payload.otpVal;\n\n return state;\n\n case SequenceManagerAction.DISPLAY_PREVIOUS_SECTION:\n case SequenceManagerAction.DISPLAY_SECTION:\n return { ...state, tccEligibilityResponse: {}, customerRelatedAccountResponse: {}, \n eSimValidationResponse: {}, eligibilitySendOtpResponse: {}, eligibilityValidateOtpResponse: {}, eligibilityResendOtpResponse: {} };\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'TCCEligibilityCheck')\n });\n if (section.length > 0) {\n tccValue[0].offerContainerId = section[0].steps[0].offerContainerId;\n for (let i = 0; i < tccValue[0].options.length; i++) {\n const tccValueField = section[0].steps[0].options.filter((field: any) => { return (field.name === tccValue[0].options[i].name) })[0];\n tccValue[0].options[i].value = tccValueField ? tccValueField.value : \"\";\n }\n\n for (let i = 0; i < tccValue[0].fields.length; i++) {\n const tccValueField = section[0].steps[0].fields.filter((field: any) => { return (field.name === tccValue[0].fields[i].name) })[0];\n tccValue[0].fields[i].value = tccValueField ? tccValueField.value : \"\";\n }\n tccValue[0].fields[1].name = section[0].steps[0].fields[1].name;\n tccValue[0].fields[1].value = section[0].steps[0].fields[1].value;\n }\n return state;\n\n default:\n return state;\n }\n};\n\nexport default EligibilityCheckReducer;","import { EPlanCheckAction } from \"../actions/EPlanCheckAction\";\nimport { SequenceManagerAction } from \"../actions/SequenceManagerAction\";\n\nconst initEPlanCheck = {\n requestBody: {\n sectionId: \"E50Check,Installedbase&CustomerDetails\",\n name: \"E50 Check, Installed base & Customer Details\",\n steps: [\n {\n sequence: \"0\",\n offerContainerId: \"\",\n stepId: \"E50Check,Installedbase&CustomerDetails\",\n options: [\n {\n name: \"PackageE50AvailableInInstalledBase\",\n value: \"\"\n }\n ],\n fields: [\n {\n name: \"CustomerRelatedAccountResponse\",\n value: \"\"\n }\n ]\n }\n ]\n }\n}\n\n\nconst EPlanCheckReducer = (state: any = initEPlanCheck, action: any) => {\n const { type } = action;\n const { payload } = action;\n var ePlanValue = { ...state.requestBody.steps };\n switch (type) {\n\n case EPlanCheckAction.EPLAN_CHECK_SUCCESS:\n ePlanValue[0].options[0].value = payload.ePlanAvilable;\n ePlanValue[0].fields[0].value = JSON.stringify(payload.customerRelatedAccountResponse);\n ePlanValue[0].offerContainerId = payload.offerContainerId;\n return state;\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'E50Check,Installedbase&CustomerDetails')\n });\n if (section.length > 0) {\n let ePlanPackage = section[0].steps[0].options[0];\n let ePlanCustomerResponse = section[0].steps[0].fields[0];\n ePlanValue[0].offerContainerId = section[0].steps[0].offerContainerId;\n ePlanValue[0].options[0].value = ePlanPackage ? ePlanPackage.value : \"\";\n ePlanValue[0].fields[0].value = ePlanCustomerResponse ? ePlanCustomerResponse.value : \"\";\n }\n return state;\n\n default:\n return state;\n }\n};\n\nexport default EPlanCheckReducer;","import { UnpaidBillsAction } from \"../actions/UnpaidBillsAction\";\nimport { SequenceManagerAction } from \"../actions/SequenceManagerAction\";\n\nconst initUnpaidBills = {\n requestBody: {\n sectionId: \"UnpaidBills\",\n name: \"Unpaid Bills check for customer\",\n steps: [\n {\n sequence: \"0\",\n offerContainerId: \"\",\n stepId: \"UnpaidBills\",\n options: [\n {\n name: \"Customer Bills\",\n value: \"true\"\n }\n ],\n fields: [\n {\n name: \"Bills Amount\",\n value: \"\"\n },\n {\n name: \"Unpaid Bills Response\",\n value: \"\"\n }\n ]\n }\n ]\n },\n unpaidBillsResponse : {\n\n },\n allPlanDetailsResponse : {\n\n }\n}\n\nconst UnpaidBillsReducer = (state: any = initUnpaidBills, action: any) => {\n const { type } = action;\n const { payload } = action;\n var UnpaidValue = {...state.requestBody.steps};\n\n switch (type) {\n case UnpaidBillsAction.FETCH_UNPAID_BILLS_SUCCESS:\n return {...state, unpaidBillsResponse : payload };\n\n case UnpaidBillsAction.GET_PLAN_DETAILS_SUCCESS:\n return {...state, allPlanDetailsResponse: payload}\n\n case UnpaidBillsAction.UNPAID_BILLS_ACCEPTED:\n UnpaidValue[0].offerContainerId = payload.offerContainerId;\n UnpaidValue[0].fields[0].value = payload.unpaidBillResponse.TotalAmountDue ? payload.unpaidBillResponse.TotalAmountDue : 0;\n UnpaidValue[0].fields[1].value = JSON.stringify(payload.unpaidBillResponse);\n return state;\n\n case SequenceManagerAction.DISPLAY_PREVIOUS_SECTION:\n case SequenceManagerAction.DISPLAY_SECTION:\n return { ...state, unpaidBillsResponse: {}, allPlanDetailsResponse: {} };\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'UnpaidBills')\n });\n if(section.length > 0) {\n UnpaidValue[0].offerContainerId = section[0].steps[0].offerContainerId;\n for (let i = 0; i < UnpaidValue[0].fields.length; i++) {\n const UnpaidValueField = section[0].steps[0].fields.filter((field: any) => { return (field.name === UnpaidValue[0].fields[i].name) })[0];\n UnpaidValue[0].fields[i].value = UnpaidValueField ? UnpaidValueField.value : \"\";\n }\n }\n return state;\n\n default:\n return state;\n }\n};\n\nexport default UnpaidBillsReducer;","import { SecurityDepositAction } from '../actions/SecurityDepositAction';\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction';\n\nconst initState = {\n requestBody: {\n sectionId: \"SecurityDeposit\",\n name: \"Security Deposit\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"SecurityDeposit\",\n offerContainerId: \"\",\n options: [\n {\n name: \"Security Deposit\",\n value: \"true\"\n }\n ],\n fields: [\n {\n name: \"Deposit Amount\",\n value: \"\"\n },\n {\n name: \"Deposit Amount Response\",\n value: \"\"\n }\n ]\n }\n ]\n },\n fetchSecurityDepositResponse: {\n\n }\n}\n\nconst SecurityDepositReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n var SecurityDepositValue = {...state.requestBody.steps};\n \n switch (type) {\n case SecurityDepositAction.FETCH_SECURITY_DEPOSIT_SUCCESS:\n return { ...state, fetchSecurityDepositResponse: payload };\n\n case SecurityDepositAction.SECURITY_DEPOSIT_ACCEPTED:\n SecurityDepositValue[0].offerContainerId = payload.offerContainerId;\n SecurityDepositValue[0].fields[0].value = payload.securityDepositResponse.SecurityDepositAmount;\n SecurityDepositValue[0].fields[1].value = JSON.stringify(payload.securityDepositResponse);\n return state;\n\n case SequenceManagerAction.DISPLAY_PREVIOUS_SECTION:\n case SequenceManagerAction.DISPLAY_SECTION:\n return { ...state, fetchSecurityDepositResponse: {} };\n\n case SequenceManagerAction.DISPLAY_SECTION:\n return { ...state, fetchSecurityDepositResponse: {} };\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'SecurityDeposit')\n });\n if(section.length > 0) {\n SecurityDepositValue[0].offerContainerId = section[0].steps[0].offerContainerId;\n for (let i = 0; i < SecurityDepositValue[0].fields.length; i++) {\n const UnpaidValueField = section[0].steps[0].fields.filter((field: any) => { return (field.name === SecurityDepositValue[0].fields[i].name) })[0];\n SecurityDepositValue[0].fields[i].value = UnpaidValueField ? UnpaidValueField.value : \"\";\n }\n }\n return state;\n\n default:\n return state;\n }\n}\n\nexport default SecurityDepositReducer;","import { AbsherVerificationAction } from \"../actions/AbsherVerificationAction\"\nimport { SequenceManagerAction } from \"../actions/SequenceManagerAction\";\n\nconst initAbsherVerify = {\n requestBody: {\n sectionId: \"AbsherVerification&TCCRegistration\",\n name: \"Absher Verification & TCC Registration\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"AbsherVerification&TCCRegistration\",\n offerContainerId: \"\",\n fields: [\n {\n name: \"IAMToken\",\n value: \"\"\n },\n {\n name: \"SIM Details\",\n value: \"\"\n },\n {\n name: \"TCCRegistration Response\",\n value: \"\"\n }\n ],\n options: [\n {\n name: \"Nafath Option\",\n value: \"\"\n }\n ]\n }\n ]\n },\n getSimDetailsData: {},\n tccRegisterData: {},\n byPassVerificationData: {},\n};\n\nconst AbsherVerificationReducer = (state: any = initAbsherVerify, action: any) => {\n const { type } = action;\n const { payload } = action;\n var AbsherData = { ...state.requestBody.steps }\n switch (type) {\n\n case AbsherVerificationAction.GET_SIM_DETAILS_SUCCESS:\n return { ...state, getSimDetailsData: payload }\n\n case AbsherVerificationAction.TCC_REGISTRATION_SUCCESS:\n return { ...state, tccRegisterData: payload.tccData }\n\n case AbsherVerificationAction.BYPASS_VERIFICATION_SUCCESS:\n return { ...state, byPassVerificationData: payload }\n\n case AbsherVerificationAction.ABSHER_VERIFICATION_COMPLETE:\n AbsherData[0].offerContainerId = payload.ocId;\n AbsherData[0].fields[0].value = payload.IAMToken;\n AbsherData[0].fields[1].value = payload.simDetails ? JSON.stringify(payload.simDetails) : \"\";\n AbsherData[0].fields[2].value = JSON.stringify(payload.tccRegisterResponse);\n AbsherData[0].options[0].value = payload.nafathOption;\n // remove sim details for cold_SSA as sim details is empty\n if (!AbsherData[0].fields[1].value){\n AbsherData[0].fields.splice(1,1);\n }\n return state;\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'AbsherVerification&TCCRegistration')\n });\n if (section.length > 0) {\n AbsherData[0].offerContainerId = section[0].steps[0].offerContainerId;\n AbsherData[0].options[0].value = section[0].steps[0].options[0].value;\n for (let i = 0; i < AbsherData[0].fields.length; i++) {\n const AbsherField = section[0].steps[0].fields.filter((field: any) => { return (field.name === AbsherData[0].fields[i].name) })[0];\n AbsherData[0].fields[i].value = AbsherField ? AbsherField.value : \"\";\n }\n }\n return state;\n\n default:\n return state;\n }\n};\n\nexport default AbsherVerificationReducer;\n","import { SSAAbsherVerificationAction } from \"../actions/SSAAbsherVerificationAction\"\nimport { SequenceManagerAction } from \"../actions/SequenceManagerAction\";\n\nconst initAbsherVerify = {\n requestBody: {\n sectionId: \"SSAAbsherVerification&TCCRegistration\",\n name: \"SSA Absher Verification & TCC Registration\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"SSAAbsherVerification&TCCRegistration\",\n offerContainerId: \"\",\n fields: [\n {\n name: \"IAMToken\",\n value: \"\"\n },\n {\n name: \"SIM Details\",\n value: \"\"\n },\n {\n name: \"TCCRegistration Response\",\n value: \"\"\n }\n ],\n options: [\n {\n name: \"Nafath Option\",\n value: \"\"\n }\n ]\n }\n ]\n },\n getSimDetailsData: {},\n tccRegisterData: {},\n byPassVerificationData: {},\n};\n\nconst SSAAbsherVerificationReducer = (state: any = initAbsherVerify, action: any) => {\n const { type } = action;\n const { payload } = action;\n var AbsherData = { ...state.requestBody.steps }\n switch (type) {\n\n case SSAAbsherVerificationAction.GET_SIM_DETAILS_SUCCESS:\n return { ...state, getSimDetailsData: payload }\n\n case SSAAbsherVerificationAction.TCC_REGISTRATION_SUCCESS:\n return { ...state, tccRegisterData: payload.tccData }\n\n case SSAAbsherVerificationAction.BYPASS_VERIFICATION_SUCCESS:\n return { ...state, byPassVerificationData: payload }\n\n case SSAAbsherVerificationAction.ABSHER_VERIFICATION_COMPLETE:\n AbsherData[0].offerContainerId = payload.ocId;\n AbsherData[0].fields[0].value = payload.IAMToken;\n AbsherData[0].fields[1].value = payload.simDetails ? JSON.stringify(payload.simDetails) : \"\";\n AbsherData[0].fields[2].value = JSON.stringify(payload.tccRegisterResponse);\n AbsherData[0].options[0].value = payload.nafathOption;\n // remove sim details for cold_SSA as sim details is empty\n if (!AbsherData[0].fields[1].value){\n AbsherData[0].fields.splice(1,1);\n }\n return state;\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'SSA-AbsherVerification&TCCRegistration')\n });\n if (section.length > 0) {\n AbsherData[0].offerContainerId = section[0].steps[0].offerContainerId;\n AbsherData[0].options[0].value = section[0].steps[0].options[0].value;\n for (let i = 0; i < AbsherData[0].fields.length; i++) {\n const AbsherField = section[0].steps[0].fields.filter((field: any) => { return (field.name === AbsherData[0].fields[i].name) })[0];\n AbsherData[0].fields[i].value = AbsherField ? AbsherField.value : \"\";\n }\n }\n return state;\n\n default:\n return state;\n }\n};\n\nexport default SSAAbsherVerificationReducer;\n","import { SuccessPageAction } from '../actions/SuccessPageAction'\n\nconst initState = {\n qrCodeResponse: {},\n emailServiceResponse: {},\n customerDetailsResponse: {},\n}\n\nconst SuccessPageReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n\n switch (type) {\n case SuccessPageAction.QR_CODE_SUCCESS:\n return { ...state, qrCodeResponse: payload };\n\n case SuccessPageAction.EMAIL_SERVICE_SUCCESS:\n return { ...state, emailServiceResponse: payload };\n\n case SuccessPageAction.GET_CUSTOMER_DETAILS_SUCCESS:\n return { ...state, customerDetailsResponse: payload };\n\n default:\n return state;\n }\n\n}\n\nexport default SuccessPageReducer;","import { PersonalDetailsAction } from '../actions/PersonalDetailsAction'\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction'\n\nconst initState = {\n requestBody: {\n sectionId: \"personalDetails\",\n name: \"personal Details\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"personalDetails\",\n fields: [\n {\n name: \"First Name\",\n value: \"\"\n },\n {\n name: \"Middle Name\",\n value: \"\"\n },\n {\n name: \"Last Name\",\n value: \"\"\n },\n {\n name: \"Phone number\",\n value: \"\"\n },\n {\n name: \"Email\",\n value: \"\"\n },\n {\n name: \"BirthdayDate\",\n value: \"\"\n }\n ],\n options: [\n {\n name: \"BirthdayType\",\n value: \"\"\n }\n ]\n }\n ],\n }\n}\n\nconst PersonalDetailsReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n var PersonalDetailsValue = { ...state.requestBody.steps };\n\n switch (type) {\n case PersonalDetailsAction.PERSONAL_DETAILS_SUCCESS:\n PersonalDetailsValue[0].fields[0].value = payload.fName;\n PersonalDetailsValue[0].fields[1].value = payload.mName;\n PersonalDetailsValue[0].fields[2].value = payload.lName;\n PersonalDetailsValue[0].fields[3].value = payload.phone;\n PersonalDetailsValue[0].fields[4].value = payload.email;\n PersonalDetailsValue[0].fields[5].value = payload.birthDate;\n PersonalDetailsValue[0].options[0].value = payload.birthdayType;\n return state;\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'personalDetails')\n });\n if(section.length > 0) {\n for (let i = 0; i < PersonalDetailsValue[0].fields.length; i++) {\n const PersonalDetailsField = section[0].steps[0].fields.filter((field: any) => { return (field.name === PersonalDetailsValue[0].fields[i].name) })[0];\n PersonalDetailsValue[0].fields[i].value = PersonalDetailsField ? PersonalDetailsField.value : \"\";\n }\n for (let i = 0; i < PersonalDetailsValue[0].options.length; i++) {\n const PersonalDetailsOption = section[0].steps[0].options.filter((field: any) => { return (field.name === PersonalDetailsValue[0].options[i].name) })[0];\n PersonalDetailsValue[0].options[i].value = PersonalDetailsOption ? PersonalDetailsOption.value : \"\";\n }\n }\n return state;\n \n default:\n return state;\n }\n}\n\nexport default PersonalDetailsReducer;","import { ContractLengthAction } from '../actions/ContractLengthAction'\nimport { SequenceManagerAction } from \"../actions/SequenceManagerAction\";\n\nconst initState = {\n requestBody: {\n sectionId: \"contractLength\",\n name: \"Contract Length\",\n steps: [\n {\n sequence: \"0\",\n offerContainerId: \"\",\n stepId: \"contractLengthDetails\",\n options: [\n {\n name: \"contractLength\",\n value: \"\"\n }\n ]\n }\n ]\n },\n}\n\nconst ContractLengthReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n var NumberValue = { ...state.requestBody.steps };\n\n switch (type) {\n case ContractLengthAction.MONTHS_SELECTION:\n NumberValue[0].options[0].value = payload.selection;\n NumberValue[0].offerContainerId = payload.offerContainerId;\n return state;\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'contractLength')\n });\n if (section.length > 0) {\n let contractMonths = section[0].steps[0].options[0]\n NumberValue[0].offerContainerId = section[0].steps[0].offerContainerId;\n NumberValue[0].options[0].value = contractMonths ? contractMonths.value : \"\";\n }\n return state;\n\n default:\n return state;\n }\n}\n\nexport default ContractLengthReducer;","import { AppointmentDetailsAction } from '../actions/AppointmentDetailsAction';\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction';\n\nconst initState = {\n requestBody: {\n sectionId: \"appointmentDetails\",\n name: \"Appointment Details\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"\",\n fields: [\n {\n name: \"\",\n value: \"\"\n },\n {\n name: \"\",\n value: \"\"\n },\n {\n name: \"Date\",\n value: \"\"\n },\n {\n name: \"AppointmentStart\",\n value: \"\"\n },\n {\n name: \"AppointmentEnd\",\n value: \"\"\n },\n {\n name: \"Slot Id\",\n value: \"\"\n }\n ]\n }\n ]\n },\n getAppointmentsSlotsResponse: {\n\n },\n reserveAppointmentResponse: {\n\n }\n}\n\nconst AppointmentDetailsReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n var AppointmnetDetailsValue = { ...state.requestBody.steps };\n\n switch (type) {\n case AppointmentDetailsAction.GET_APPOINTMENTS_SUCCESS:\n return { ...state, getAppointmentsSlotsResponse: payload };\n\n case AppointmentDetailsAction.RESERVE_APPOINTMENT_SUCCESS:\n if (payload.provider.toLowerCase() !== 'mobily') {\n AppointmnetDetailsValue[0].stepId = \"Non-MobilyappointmentDetails\";\n AppointmnetDetailsValue[0].fields[0].name = \"Non-Mobily GET Appointment\";\n AppointmnetDetailsValue[0].fields[1].name = \"Non-Mobily Reserve Appointment\";\n } else {\n AppointmnetDetailsValue[0].stepId = \"MobilyappointmentDetails\";\n AppointmnetDetailsValue[0].fields[0].name = \"Mobily GET Appointment\";\n AppointmnetDetailsValue[0].fields[1].name = \"Mobily Reserve Appointment\";\n }\n AppointmnetDetailsValue[0].fields[0].value = JSON.stringify(state.getAppointmentsSlotsResponse);\n AppointmnetDetailsValue[0].fields[1].value = JSON.stringify(payload.response.data);\n AppointmnetDetailsValue[0].fields[2].value = payload.selectedDate.split('.')[0] + 'Z';\n AppointmnetDetailsValue[0].fields[3].value = payload.appointmentStart;\n AppointmnetDetailsValue[0].fields[4].value = payload.appointmentEnd;\n AppointmnetDetailsValue[0].fields[5].value = payload.slotId;\n return { ...state, reserveAppointmentResponse: payload.response };\n\n case AppointmentDetailsAction.SKIP_APPOINTMENT_SUCCESS:\n AppointmnetDetailsValue[0].stepId = \"MobilyappointmentDetails\";\n AppointmnetDetailsValue[0].fields[0].name = \"Mobily GET Appointment\";\n AppointmnetDetailsValue[0].fields[1].name = \"Mobily Reserve Appointment\";\n return state;\n \n case SequenceManagerAction.DISPLAY_PREVIOUS_SECTION:\n case SequenceManagerAction.DISPLAY_SECTION:\n return { ...state, getAppointmentsSlotsResponse: {}, reserveAppointmentResponse: {} }\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'appointmentDetails')\n });\n if (section.length > 0) {\n for (let i = 0; i < AppointmnetDetailsValue[0].fields.length; i++) {\n const AppointmnetDetailsField = section[0].steps[0].fields.filter((field: any) => { return (field.name === AppointmnetDetailsValue[0].fields[i].name) })[0];\n AppointmnetDetailsValue[0].fields[i].value = AppointmnetDetailsField ? AppointmnetDetailsField.value : \"\";\n }\n }\n return state;\n\n default:\n return state;\n }\n}\n\nexport default AppointmentDetailsReducer;","import { IDVerificationAction } from '../actions/IDVerificationAction'\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction'\n\nconst initState = {\n requestBody: {\n sectionId: \"idVerification\",\n name: \"ID Verification\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"idVerification\",\n offerContainerId: \"\",\n fields: [\n {\n name: \"IDNumber\",\n value: \"\"\n },\n {\n name: \"\",\n value: \"\"\n },\n {\n name: \"OrderId\",\n value: \"\"\n },\n {\n name: \"ContactPhoneNumber\",\n value: \"\"\n }, \n {\n name: \"NationalityISOCode\",\n value: \"\"\n }\n ],\n options: [\n {\n name: \"IDName\",\n value: \"\"\n }\n ]\n }\n ]\n },\n initiateOTPResponse: {\n\n },\n validateOTPResponse: {\n\n },\n initiateIDVerificationOTPResponse: {\n\n },\n validateIDVerificationOTPResponse: {\n\n },\n resendIDVerificationOTPResponse: {\n\n }\n}\n\nconst IDVerificationReducer = (state: any = initState, action: any) => { \n const { type } = action;\n const { payload } = action;\n var IDVerificationValue = { ...state.requestBody.steps };\n\n switch (type) {\n case IDVerificationAction.ID_VERIFICATION_CEM_OTP_INITIATE_SUCCESS:\n return { ...state, initiateIDVerificationOTPResponse: payload };\n\n case IDVerificationAction.ID_VERIFICATION_CEM_OTP_VALIDATE_SUCCESS:\n return { ...state, validateIDVerificationOTPResponse: payload };\n\n case IDVerificationAction.ID_VERIFICATION_CEM_OTP_RSEND_SUCCESS:\n return { ...state, resendIDVerificationOTPResponse: payload };\n\n case IDVerificationAction.OTP_INITIATE_SUCCESS:\n return { ...state, initiateOTPResponse: payload };\n\n case IDVerificationAction.OTP_VALIDATE_SUCCESS:\n return { ...state, validateOTPResponse: payload };\n\n case IDVerificationAction.UPDATE_ID_VERIFICATION:\n IDVerificationValue[0].fields[0].value = payload.idNumber;\n IDVerificationValue[0].fields[1].name = payload.nationalityFieldName;\n IDVerificationValue[0].fields[1].value = payload.nationality;\n IDVerificationValue[0].fields[2].value = payload.orderId;\n IDVerificationValue[0].fields[3].value = payload.contactPhone;\n IDVerificationValue[0].fields[4].value = payload.nationalityISOCode;\n IDVerificationValue[0].offerContainerId = payload.offerContainerId;\n IDVerificationValue[0].options[0].value = payload.idNumber.charAt(0) === '1' ? \"Saudi National ID\" : \"IQAMA\";\n return state;\n\n case SequenceManagerAction.DISPLAY_PREVIOUS_SECTION:\n case SequenceManagerAction.DISPLAY_SECTION:\n return { ...state, initiateOTPResponse: {}, validateOTPResponse:{}, initiateIDVerificationOTPResponse:{},validateIDVerificationOTPResponse:{}, resendIDVerificationOTPResponse:{} };\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'idVerification')\n });\n if(section.length > 0) {\n IDVerificationValue[0].offerContainerId = section[0].steps[0].offerContainerId;\n IDVerificationValue[0].options[0].value = section[0].steps[0].options[0].value;\n IDVerificationValue[0].fields[1].name = section[0].steps[0].fields[1].name;\n IDVerificationValue[0].fields[1].value = section[0].steps[0].fields[1].value;\n for (let i = 0; i < IDVerificationValue[0].fields.length; i++) {\n const checkoutField = section[0].steps[0].fields.filter((field: any) => { return (field.name === IDVerificationValue[0].fields[i].name) })[0];\n IDVerificationValue[0].fields[i].value = checkoutField ? checkoutField.value : \"\";\n }\n }\n return state;\n \n default:\n return state;\n }\n}\n\nexport default IDVerificationReducer;","import { CurrentNumberAction } from '../actions/CurrentNumberAction'\nimport { SequenceManagerAction } from \"../actions/SequenceManagerAction\";\n\nconst initState = {\n requestBody: {\n sectionId: \"CurrentNumber\",\n name: \"Current Number\",\n steps: [\n {\n sequence: \"0\",\n offerContainerId: \"\",\n stepId: \"\",\n fields: [\n {\n name: \"Number\",\n value: \"\"\n }\n ]\n }\n ],\n },\n getCustomerDetailsData: {},\n\n initiateOTPSwapResponse: {},\n validateOTPSwapResponse: {},\n rSendOTPSwapResponse: {},\n}\n\nconst CurrentNumberReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n // var NumberValue = { ...state.requestBody.steps };\n\n switch (type) {\n case CurrentNumberAction.CURRENT_NUMBER_SELECTION:\n let numberValueData: any = {};\n if(payload.stepId === \"SIMServicesCurrentNumber\") {\n numberValueData = \n {\n sectionId: \"CurrentNumber\",\n name: \"Current Number\",\n steps: [\n {\n sequence: \"0\",\n offerContainerId: payload.offerContainerId,\n stepId: payload.stepId,\n fields: [\n {\n name: \"Number\",\n value: payload.phoneNumber\n },\n {\n name: \"IDNumber\",\n value: payload.getCustomerDetailsResponse.IDNumber\n },\n {\n name: \"Nationality\",\n value: payload.getCustomerDetailsResponse.NationalityString\n },\n {\n name: \"NewStack\",\n value: payload.getCustomerDetailsResponse?.NewStack ? payload.getCustomerDetailsResponse.NewStack : 'N'\n },\n {\n name: \"OldSIMNumber\",\n value: payload.getCustomerDetailsResponse.SIMNumber\n },\n {\n name: \"OldIMSI\",\n value: payload.getCustomerDetailsResponse.IMSI\n },\n {\n name: \"PackageType\",\n value: payload.getCustomerDetailsResponse.Plan\n },\n {\n name: \"SimswapOTP\",\n value: payload.otpVal\n }\n ],\n options: [\n {\n name: \"IDName\",\n value: payload.getCustomerDetailsResponse.IDDocTypeString\n }\n ]\n }\n ],\n }\n \n } else {\n numberValueData = {\n sectionId: \"CurrentNumber\",\n name: \"Current Number\",\n steps: [\n {\n sequence: \"0\",\n offerContainerId: payload.offerContainerId,\n stepId: payload.stepId,\n fields: [\n {\n name: \"Number\",\n value: payload.phoneNumber\n }\n ]\n }\n ],\n }\n }\n // NumberValue[0].stepId = payload.stepId;\n // NumberValue[0].fields[0].value = payload.phoneNumber;\n // NumberValue[0].offerContainerId = payload.offerContainerId;\n return {...state, requestBody: numberValueData};\n\n case CurrentNumberAction.GET_CUSTOMER_DETAILS_SUCCESS:\n return { ...state, getCustomerDetailsData: payload }\n case CurrentNumberAction.SIMSWAP_CEM_OTP_INITIATE_SUCCESS:\n return { ...state, initiateOTPSwapResponse: payload };\n \n case CurrentNumberAction.SIMSWAP_CEM_OTP_VALIDATE_SUCCESS:\n return { ...state, validateOTPSwapResponse: payload };\n \n case CurrentNumberAction.SIMSWAP_CEM_OTP_RSEND_SUCCESS:\n return { ...state, rSendOTPSwapResponse: payload };\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let numberValueRes: any = {\n sectionId: \"CurrentNumber\",\n name: \"Current Number\",\n steps: [\n {\n sequence: \"0\",\n offerContainerId: \"\",\n stepId: \"\",\n fields: [\n {\n name: \"Number\",\n value: \"\"\n }\n ]\n }\n ],\n };\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'CurrentNumber')\n });\n if (section.length > 0) {\n // NumberValue[0].offerContainerId = section[0].steps[0].offerContainerId;\n // if(section[0].steps[0].stepId === \"SIMServicesCurrentNumber\") {\n // let nationalityType = section[0].steps[0].options[0];\n // NumberValue[0].options[0].value = nationalityType ? nationalityType.value : \"\";\n // }\n // NumberValue[0].stepId = section[0].steps[0].stepId;\n // for (let i = 0; i < NumberValue[0].fields.length; i++) {\n // const currDate = section[0].steps[0].fields.filter((field: any) => { return (field.name === NumberValue[0].fields[i].name) })[0];\n // NumberValue[0].fields[i].value = currDate ? currDate.value : \"\";\n // }\n if(section[0].steps[0].stepId === \"SIMServicesCurrentNumber\") {\n numberValueRes = \n {\n sectionId: \"CurrentNumber\",\n name: \"Current Number\",\n steps: [\n {\n sequence: \"0\",\n offerContainerId: section[0].steps[0].offerContainerId,\n stepId: section[0].steps[0].stepId,\n fields: [\n {\n name: \"Number\",\n value: section[0].steps[0].fields[0].value ? section[0].steps[0].fields[0].value : \"\"\n },\n {\n name: \"IDNumber\",\n value: section[0].steps[0].fields[1].value ? section[0].steps[0].fields[1].value : \"\"\n },\n {\n name: \"Nationality\",\n value: section[0].steps[0].fields[2].value ? section[0].steps[0].fields[2].value : \"\"\n },\n {\n name: \"NewStack\",\n value: section[0].steps[0].fields[3].value ? section[0].steps[0].fields[3].value : \"\"\n },\n {\n name: \"OldSIMNumber\",\n value: section[0].steps[0].fields[4].value ? section[0].steps[0].fields[4].value : \"\"\n },\n {\n name: \"OldIMSI\",\n value: section[0].steps[0].fields[5].value ? section[0].steps[0].fields[5].value : \"\"\n },\n {\n name: \"PackageType\",\n value: section[0].steps[0].fields[6].value ? section[0].steps[0].fields[6].value : \"\"\n }\n ],\n options: [\n {\n name: \"IDName\",\n value: section[0].steps[0].options[0].value ? section[0].steps[0].options[0].value : \"\"\n }\n ]\n }\n ],\n }\n \n } else {\n numberValueRes = {\n sectionId: \"CurrentNumber\",\n name: \"Current Number\",\n steps: [\n {\n sequence: \"0\",\n offerContainerId: section[0].steps[0].offerContainerId,\n stepId: section[0].steps[0].stepId,\n fields: [\n {\n name: \"Number\",\n value: section[0].steps[0].fields[0].value ? section[0].steps[0].fields[0].value : \"\"\n }\n ]\n }\n ],\n }\n }\n }\n return {...state, requestBody: numberValueRes};\n\n default:\n return state;\n }\n}\n\nexport default CurrentNumberReducer;","import { CurrentOperatorAction } from '../actions/CurrentOperatorAction'\nimport { SequenceManagerAction } from \"../actions/SequenceManagerAction\";\n\nconst initState = {\n requestBody: {\n sectionId: \"CurrentOperator\",\n name: \"Current Operator\",\n steps: [\n {\n sequence: \"0\",\n offerContainerId: \"\",\n stepId: \"CurrentOperator\",\n fields: [\n {\n name: \"CurrentOperator\",\n value: \"\"\n }\n ]\n }\n ]\n },\n}\n\nconst CurrentOperatorReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n let currentValue = { ...state.requestBody.steps };\n\n switch (type) {\n case CurrentOperatorAction.SELECT_OPERATOR:\n currentValue[0].fields[0].value = payload.selection;\n currentValue[0].offerContainerId = payload.offerContainerId;\n return state;\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'CurrentOperator')\n });\n if (section.length > 0) {\n currentValue[0].offerContainerId = section[0].steps[0].offerContainerId;\n let currentOperater = section[0].steps[0].fields[0];\n currentValue[0].fields[0].value = currentOperater ? currentOperater.value : \"\";\n }\n return state;\n\n default:\n return state;\n }\n}\n\nexport default CurrentOperatorReducer;","import { FamilyPlanCheckAction } from '../actions/FamilyPlanCheckAction'\nimport { SequenceManagerAction } from \"../actions/SequenceManagerAction\";\n\nconst initState = {\n requestBody: {\n sectionId: \"familyPlanCheck\",\n name: \"family Plan Check\",\n steps: [\n {\n sequence: \"0\",\n offerContainerId: \"\",\n stepId: \"familyPlanCheck\",\n fields: [\n {\n name: \"Error Code\",\n value: \"\"\n },\n {\n name: \"Description\",\n value: \"\"\n }\n ],\n options: [\n {\n name: \"family Plan Check\",\n value: \"\"\n }\n ]\n }\n ]\n },\n familyPlanCheckResponse: {\n\n },\n getExternalIdResponse: {\n\n },\n redirectUrl: \"\",\n}\n\nconst FamilyPlanCheckReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n var FamilyPlanValue = { ...state.requestBody.steps };\n\n switch (type) {\n case FamilyPlanCheckAction.FAMILY_PLAN_CHECK_SUCCESS:\n return { ...state, familyPlanCheckResponse: payload };\n\n case FamilyPlanCheckAction.GET_EXTERNAL_ID_SUCCESS:\n return { ...state, getExternalIdResponse: payload };\n\n case FamilyPlanCheckAction.FAMILY_PLAN_CHECK_DONE:\n FamilyPlanValue[0].fields[0].value = payload.ErrorCode;\n FamilyPlanValue[0].fields[1].value = payload.ErrorDescription;\n FamilyPlanValue[0].options[0].value = payload.planCheckValue;\n FamilyPlanValue[0].offerContainerId = payload.offerContainerId;\n return {...state, redirectUrl : payload.redirectUrl};\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'familyPlanCheck')\n });\n if (section.length > 0) {\n let numberTypeValue = section[0].steps[0].options[0];\n FamilyPlanValue[0].offerContainerId = section[0].steps[0].offerContainerId;\n FamilyPlanValue[0].options[0].value = numberTypeValue ? numberTypeValue.value : \"\";\n }\n return state;\n\n default:\n return state;\n }\n}\n\nexport default FamilyPlanCheckReducer;","import { FTTHFlowRuleDetailsAction } from '../actions/FTTHFlowRuleDetailsAction'\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction'\n\n\nconst initState = {\n requestBody: {\n sectionId: \"FTTHFlowRuleDetails\",\n name: \"FTTH Flow Rule Details\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"FTTHFlowRule\",\n offerContainerId: \"\",\n fields: [\n {\n name: \"FTTHFlowRule\",\n value: \"\"\n }\n ]\n }\n ]\n }\n}\n\nconst FTTHFlowRuleDetailsReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n var FTTHFlowRuleValue = { ...state.requestBody.steps };\n\n switch (type) {\n\n case FTTHFlowRuleDetailsAction.FTTH_FLOW_RULE_DETAILS_SUCCESS:\n FTTHFlowRuleValue[0].offerContainerId = payload.offerContainerId;\n FTTHFlowRuleValue[0].fields[0].value = payload.flowRuleValue;\n return state;\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'FTTHFlowRuleDetails')\n });\n if (section.length > 0) {\n FTTHFlowRuleValue[0].offerContainerId = section[0].steps[0].offerContainerId;\n for (let i = 0; i < FTTHFlowRuleValue[0].fields.length; i++) {\n const checkoutField = section[0].steps[0].fields.filter((field: any) => { return (field.name === FTTHFlowRuleValue[0].fields[i].name) })[0];\n FTTHFlowRuleValue[0].fields[i].value = checkoutField ? checkoutField.value : \"\";\n }\n }\n return state;\n\n default:\n return state;\n }\n\n}\n\nexport default FTTHFlowRuleDetailsReducer;\n","import { ODBDetailsAction } from '../actions/ODBDetailsAction'\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction'\n\nconst initState = {\n requestBody: {\n sectionId: \"ODBDetails\",\n name: \"ODB Details\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"ODBDetails\",\n fields: [\n {\n name: \"City\",\n value: \"\"\n },\n {\n name: \"District\",\n value: \"\"\n },\n {\n name: \"Region\",\n value: \"\"\n },\n {\n name: \"Feasibility ID\",\n value: \"\"\n }\n ]\n }\n ]\n },\n feasibilityCheckResponse: {\n\n }\n}\n\nconst ODBDetailsReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n var ODBDetailsValue = { ...state.requestBody.steps };\n\n switch (type) {\n\n case ODBDetailsAction.FTTH_FEASIBILITY_CHECK_SUCCESS:\n return { ...state, feasibilityCheckResponse: payload };\n\n case ODBDetailsAction.UPDATE_ODB_DETAILS:\n ODBDetailsValue[0].fields[0].value = payload.city;\n ODBDetailsValue[0].fields[1].value = payload.district;\n ODBDetailsValue[0].fields[2].value = payload.region;\n ODBDetailsValue[0].fields[3].value = payload.FeasibilityID;\n\n return state;\n\n case SequenceManagerAction.DISPLAY_PREVIOUS_SECTION:\n case SequenceManagerAction.DISPLAY_SECTION:\n return { ...state, feasibilityCheckResponse: {} }\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'ODBDetails')\n });\n if (section.length > 0) {\n for (let i = 0; i < ODBDetailsValue[0].fields.length; i++) {\n const checkoutField = section[0].steps[0].fields.filter((field: any) => { return (field.name === ODBDetailsValue[0].fields[i].name) })[0];\n ODBDetailsValue[0].fields[i].value = checkoutField ? checkoutField.value : \"\";\n }\n }\n return state;\n\n default:\n return state;\n }\n\n}\n\nexport default ODBDetailsReducer;","import { EnterSIMIDDetailsAction } from '../actions/EnterSIMIDDetailsAction'\nimport { SequenceManagerAction } from \"../actions/SequenceManagerAction\";\n\nconst initState = {\n requestBody: {\n sectionId: \"EnterSIMIDDetails\",\n name: \"Enter SIM ID Details\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"EnterSimIdDetails\",\n offerContainerId: \"\",\n fields: [\n {\n name: \"SIM Serial Number\",\n value: \"\"\n },\n {\n name: \"SIM PUK1 Number\",\n value: \"\"\n },\n {\n name: \"Status Code\",\n value: \"\"\n },\n {\n name: \"Status Message\",\n value: \"\"\n },\n {\n name: \"Message\",\n value: \"\"\n },\n {\n name: \"IMSI\",\n value: \"\"\n },\n {\n name: \"Reseller CRID\",\n value: \"\"\n },\n {\n name: \"Reseller MSISDN\",\n value: \"\"\n },\n {\n name: \"Dealer Id\",\n value: \"\"\n },\n {\n name: \"Dealer Name\",\n value: \"\"\n },\n {\n name: \"Promo Code\",\n value: \"\"\n },\n {\n name: \"NewStack\",\n value: \"N\"\n }\n ]\n }\n ]\n },\n validateSimResponse : {\n\n }\n}\n\nconst EnterSIMIDDetailsReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n var SimIdDetails = { ...state.requestBody.steps };\n\n switch (type) {\n case EnterSIMIDDetailsAction.SAVE_SIMID_DETAILS:\n SimIdDetails[0].fields[0].value = payload.simNumber;\n SimIdDetails[0].fields[1].value = payload.puk1Number;\n SimIdDetails[0].fields[2].value = payload.validateSimResponse.StatusCode;\n SimIdDetails[0].fields[3].value = payload.validateSimResponse.StatusMessage;\n SimIdDetails[0].fields[4].value = payload.validateSimResponse.Message;\n SimIdDetails[0].fields[5].value = payload.validateSimResponse.IMSI;\n SimIdDetails[0].fields[6].value = payload.validateSimResponse.ResellerCRID;\n SimIdDetails[0].fields[7].value = payload.validateSimResponse.ResellerMSISDN;\n SimIdDetails[0].fields[8].value = payload.validateSimResponse.DealerId;\n SimIdDetails[0].fields[9].value = payload.validateSimResponse.DealerName;\n SimIdDetails[0].fields[10].value = payload.validateSimResponse.PromoCode;\n SimIdDetails[0].fields[11].value = payload?.validateSimResponse?.NewStack ? payload?.validateSimResponse?.NewStack : \"N\";\n SimIdDetails[0].offerContainerId = payload.offerContainerId;\n return state;\n\n case EnterSIMIDDetailsAction.VALIDATE_SIM_SUCCESS:\n return { ...state, validateSimResponse: payload };\n\n case EnterSIMIDDetailsAction.VALIDATE_SIM_FAILURE:\n return { ...state, validateSimResponse: payload };\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'EnterSIMIDDetails')\n });\n if (section.length > 0) {\n SimIdDetails[0].offerContainerId = section[0].steps[0].offerContainerId;\n for (let i = 0; i < SimIdDetails[0].fields.length; i++) {\n const SimIdDetailsField = section[0].steps[0].fields.filter((field: any) => { return (field.name === SimIdDetails[0].fields[i].name) })[0];\n SimIdDetails[0].fields[i].value = SimIdDetailsField ? SimIdDetailsField.value : \"\";\n }\n }\n return state;\n\n default:\n return state;\n }\n}\n\nexport default EnterSIMIDDetailsReducer;","import { MobilyOTPLineAction } from '../actions/MobilyOTPLineAction'\nimport { SequenceManagerAction } from \"../actions/SequenceManagerAction\";\n\nconst initState = {\n requestBody: {\n sectionId: \"MobilyOTPLine\",\n name: \"MobilyOTPLine\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"MobilyOTPLine\",\n offerContainerId: \"\",\n fields: [\n {\n name: \"MSISDN\",\n value: \"\"\n }\n ]\n }\n ]\n },\n }\n \n const MobilyOTPLineReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n var mobilyOtpValue = { ...state.requestBody.steps };\n \n switch (type) {\n case MobilyOTPLineAction.MOBILY_OTP_MAKE_SELECTION:\n mobilyOtpValue[0].fields[0].value = payload.selection;\n mobilyOtpValue[0].offerContainerId = payload.offerContainerId;\n return state;\n \n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'MobilyOTPLine')\n });\n if (section.length > 0) {\n let numberTypeValue = section[0].steps[0].fields[0];\n mobilyOtpValue[0].offerContainerId = section[0].steps[0].offerContainerId;\n mobilyOtpValue[0].fields[0].value = numberTypeValue ? numberTypeValue.value : \"\";\n }\n return state;\n \n default:\n return state;\n }\n }\n \n export default MobilyOTPLineReducer;","import { OTPVerificationAction } from '../actions/OTPVerificationAction'\nimport { SequenceManagerAction } from \"../actions/SequenceManagerAction\";\n\nconst initState = {\n requestBody: {\n sectionId: \"OTPVerification\",\n name: \"OTPVerification\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"OTPVerification\",\n offerContainerId: \"\",\n fields: [\n {\n name: \"OTP\",\n value: \"\"\n }\n ]\n }\n ]\n },\n initiateOTPResponse: {\n\n },\n validateOTPResponse: {\n\n },\n rSendOTPResponse: {\n\n },\n }\n \n const OTPVerificationReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n var OTPVerificationValue = { ...state.requestBody.steps };\n \n switch (type) {\n case OTPVerificationAction.OTP_VERIFICATION_VALUE:\n OTPVerificationValue[0].fields[0].value = payload.otp;\n OTPVerificationValue[0].offerContainerId = payload.offerContainerId;\n return state;\n\n case OTPVerificationAction.VERIFICATION_OTP_INITIATE_SUCCESS:\n return { ...state, initiateOTPResponse: payload };\n\n case OTPVerificationAction.VERIFICATION_OTP_VALIDATE_SUCCESS:\n return { ...state, validateOTPResponse: payload };\n\n case OTPVerificationAction.VERIFICATION_OTP_RSEND_SUCCESS:\n return { ...state, rSendOTPResponse: payload };\n \n case SequenceManagerAction.DISPLAY_SECTION:\n return { ...state, initiateOTPResponse: {} };\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'OTPVerification')\n });\n if (section.length > 0) {\n let numberTypeValue = section[0].steps[0].fields[0];\n OTPVerificationValue[0].offerContainerId = section[0].steps[0].offerContainerId;\n OTPVerificationValue[0].fields[0].value = numberTypeValue ? numberTypeValue.value : \"\";\n }\n return state;\n \n default:\n return state;\n }\n }\n \n export default OTPVerificationReducer;","import { MNPOTPVerificationAction } from '../actions/MNPOTPVerificationAction'\nimport { SequenceManagerAction } from \"../actions/SequenceManagerAction\";\n\nconst initState = {\n requestBody: {\n sectionId: \"MNPOTPVerification\",\n name: \"MNP OTP Verification\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"MNPOTPVerification\",\n offerContainerId: \"\",\n fields: [\n {\n name: \"OTPStatus\",\n value: \"\"\n }\n ]\n }\n ]\n },\n initiateOTPResponse: {\n\n },\n validateOTPResponse: {\n\n },\n rSendOTPResponse: {\n\n },\n }\n \n const MNPOTPVerificationReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n var OTPVerificationValue = { ...state.requestBody.steps };\n \n switch (type) {\n case MNPOTPVerificationAction.MNP_OTP_VERIFICATION_VALUE:\n OTPVerificationValue[0].fields[0].value = payload.otp;\n OTPVerificationValue[0].offerContainerId = payload.offerContainerId;\n return state;\n\n case MNPOTPVerificationAction.MNP_VERIFICATION_OTP_INITIATE_SUCCESS:\n return { ...state, initiateOTPResponse: payload };\n\n case MNPOTPVerificationAction.MNP_VERIFICATION_OTP_VALIDATE_SUCCESS:\n return { ...state, validateOTPResponse: payload };\n\n case MNPOTPVerificationAction.MNP_VERIFICATION_OTP_RSEND_SUCCESS:\n return { ...state, rSendOTPResponse: payload };\n \n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'MNPOTPVerification')\n });\n if (section.length > 0) {\n let numberTypeValue = section[0].steps[0].fields[0];\n OTPVerificationValue[0].offerContainerId = section[0].steps[0].offerContainerId;\n OTPVerificationValue[0].fields[0].value = numberTypeValue ? numberTypeValue.value : \"\";\n }\n return state;\n \n default:\n return state;\n }\n }\n \n export default MNPOTPVerificationReducer;","import { SIMSwapOTPVerificationAction } from '../actions/SIMSwapOTPVerificationAction'\nimport { SequenceManagerAction } from \"../actions/SequenceManagerAction\";\n\nconst initState = {\n requestBody: {\n sectionId: \"SIMSwapOTPVerification\",\n name: \"SIM Swap OTP Verification\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"SIMSwapOTPVerification\",\n offerContainerId: \"\",\n fields: [\n {\n name: \"OTPStatus\",\n value: \"\"\n }\n ]\n }\n ]\n },\n initiateOTPResponse: {\n\n },\n validateOTPResponse: {\n\n },\n rSendOTPResponse: {\n\n },\n }\n \n const SIMSwapOTPVerificationReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n var OTPVerificationValue = { ...state.requestBody.steps };\n \n switch (type) {\n case SIMSwapOTPVerificationAction.OTP_VERIFICATION_VALUE:\n OTPVerificationValue[0].fields[0].value = payload.otp;\n OTPVerificationValue[0].offerContainerId = payload.offerContainerId;\n return state;\n\n case SIMSwapOTPVerificationAction.SIMSWAP_OTP_INITIATE_SUCCESS:\n return { ...state, initiateOTPResponse: payload };\n\n case SIMSwapOTPVerificationAction.SIMSWAP_OTP_VALIDATE_SUCCESS:\n return { ...state, validateOTPResponse: payload };\n\n case SIMSwapOTPVerificationAction.SIMSWAP_OTP_RSEND_SUCCESS:\n return { ...state, rSendOTPResponse: payload };\n \n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'SIMSwapOTPVerification')\n });\n if (section.length > 0) {\n let numberTypeValue = section[0].steps[0].fields[0];\n OTPVerificationValue[0].offerContainerId = section[0].steps[0].offerContainerId;\n OTPVerificationValue[0].fields[0].value = numberTypeValue ? numberTypeValue.value : \"\";\n }\n return state;\n \n default:\n return state;\n }\n }\n \n export default SIMSwapOTPVerificationReducer;","import { DeliveryAppointmentAction } from '../actions/DeliveryAppointmentAction';\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction';\n\nconst initState = {\n requestBody: {\n sectionId: \"DeliveryAppointment\",\n name: \"Delivery Appointment\",\n steps: [\n {\n sequence: \"0\",\n stepId: \"DeliveryAppointment\",\n fields: [\n {\n name: \"Delivery Day\",\n value: \"\"\n },\n {\n name: \"Delivery Time\",\n value: \"\"\n }\n ]\n }\n ]\n },\n getAppointmentsSlotsResponse: {}\n}\n\nconst DeliveryAppointmentReducer = (state: any = initState, action: any) => {\n const { type } = action;\n const { payload } = action;\n var DeliveryAppointmentValue = { ...state.requestBody.steps };\n\n switch (type) {\n case DeliveryAppointmentAction.RETRIEVE_APPOINTMENTS_SUCCESS:\n return { ...state, getAppointmentsSlotsResponse: payload };\n case DeliveryAppointmentAction.UPDATE_SELECTED_DATE:\n DeliveryAppointmentValue[0].fields[0].value = payload.day\n DeliveryAppointmentValue[0].fields[1].value = payload.time\n return state\n case SequenceManagerAction.DISPLAY_PREVIOUS_SECTION:\n case SequenceManagerAction.DISPLAY_SECTION:\n return { ...state, getAppointmentsSlotsResponse: {}, reserveAppointmentResponse: {} }\n\n case SequenceManagerAction.GET_CHECKOUT_SUCCESS:\n let section = payload.sections.filter((section: any) => {\n return (section.sectionId === 'DeliveryAppointment')\n });\n if (section.length > 0) {\n for (let i = 0; i < DeliveryAppointmentValue[0].fields.length; i++) {\n const AppointmnetDetailsField = section[0].steps[0].fields.filter((field: any) => { return (field.name === DeliveryAppointmentValue[0].fields[i].name) })[0];\n DeliveryAppointmentValue[0].fields[i].value = AppointmnetDetailsField ? AppointmnetDetailsField.value : \"\";\n }\n }\n return state;\n\n default:\n return state;\n }\n}\n\nexport default DeliveryAppointmentReducer;","import { combineReducers } from 'redux';\nimport SequenceManagerReducer from './SequenceManagerReducer'\nimport ProductOfferReducer from './ProductOfferReducer'\nimport ShoppingCartReducer from './ShoppingCartReducer'\nimport ProductOfferingQualificationReducer from './ProductOfferingQualificationReducer'\nimport CheckoutReducer from './CheckoutReducer';\nimport NumberOptionReducer from './NumberOptionReducer'\nimport SimOptionReducer from \"./SimOptionReducer\";\nimport ChooseNumberReducer from './ChooseNumberReducer'\nimport DeliveryDetailsReducer from './DeliveryDetailsReducer';\nimport FTTHServiceabilityReducer from './FTTHServiceabilityReducer';\nimport TCCEligibilityCheckReducer from './TCCEligibilityCheckReducer';\nimport EPlanCheckReducer from './EPlanCheckReducer';\nimport UnpaidBillsReducer from './UnpaidBillsReducer';\nimport SecurityDepositReducer from './SecurityDepositReducer';\nimport AbsherVerificationReducer from './AbsherVerificationReducer';\nimport SSAAbsherVerificationReducer from './SSAAbsherVerificationReducer';\nimport SuccessPageReducer from './SuccessPageReducer';\nimport PersonalDetailsReducer from './PersonalDetailsReducer';\nimport ContractLengthReducer from './ContractLengthReducer';\nimport AppointmentDetailsReducer from './AppointmentDetailsReducer';\nimport IDVerificationReducer from './IDVerificationReducer';\nimport CurrentNumberReducer from './CurrentNumberReducer';\nimport CurrentOperatorReducer from './CurrentOperatorReducer';\nimport FamilyPlanCheckReducer from './FamilyPlanCheckReducer';\nimport FTTHFlowRuleDetailsReducer from './FTTHFlowRuleDetailsReducer';\nimport ODBDetailsReducer from './ODBDetailsReducer';\nimport EnterSIMIDDetailsReducer from './EnterSIMIDDetailsReducer';\nimport MobilyOTPLineReducer from './MobilyOTPLineReducer';\nimport OTPVerificationReducer from './OTPVerificationReducer';\nimport MNPOTPVerificationReducer from './MNPOTPVerificationReducer';\nimport SIMSwapOTPVerificationReducer from './SIMSwapOTPVerificationReducer';\nimport DeliveryAppointmentReducer from './DeliveryAppointmentReducer';\n\nconst EcommerceReducer = combineReducers({\n SequenceManager : SequenceManagerReducer,\n ProductOffer : ProductOfferReducer, \n ShoppingCart : ShoppingCartReducer,\n ProductOfferingQualification : ProductOfferingQualificationReducer,\n paymentMethodAndTermsConditions : CheckoutReducer,\n NumberOption : NumberOptionReducer,\n ChooseNumber : ChooseNumberReducer,\n SimOption : SimOptionReducer,\n DeliveryDetails : DeliveryDetailsReducer,\n FTTHServiceability : FTTHServiceabilityReducer,\n TCCEligibilityCheck : TCCEligibilityCheckReducer,\n EPlanCheck : EPlanCheckReducer,\n UnpaidBills : UnpaidBillsReducer,\n SecurityDeposit : SecurityDepositReducer,\n AbsherVerification : AbsherVerificationReducer,\n SSAAbsherVerification : SSAAbsherVerificationReducer,\n PersonalDetails : PersonalDetailsReducer,\n SuccessPage : SuccessPageReducer,\n ContractLength : ContractLengthReducer,\n AppointmentDetails : AppointmentDetailsReducer,\n IDVerification: IDVerificationReducer,\n CurrentNumber : CurrentNumberReducer,\n CurrentOperator: CurrentOperatorReducer,\n FamilyPlanCheck: FamilyPlanCheckReducer, \n FTTHFlowRuleDetails: FTTHFlowRuleDetailsReducer,\n ODBDetails: ODBDetailsReducer,\n EnterSIMIDDetails: EnterSIMIDDetailsReducer,\n MobilyOTPLine: MobilyOTPLineReducer,\n OTPVerification: OTPVerificationReducer,\n MNPOTPVerification: MNPOTPVerificationReducer,\n SIMSwapOTPVerification: SIMSwapOTPVerificationReducer,\n DeliveryAppointment: DeliveryAppointmentReducer\n})\n\nexport default EcommerceReducer","import { createStore, applyMiddleware } from 'redux';\nimport thunk from 'redux-thunk';\nimport { logger } from 'redux-logger';\nimport { composeWithDevTools } from 'redux-devtools-extension';\nimport EcommerceReducer from './reducers';\n\nlet middlewares:any[] = [];\nif (process.env.NODE_ENV === 'development') {\n middlewares = [thunk];\n} else {\n middlewares = [thunk];\n}\n\nconst middlewareEnhancer = applyMiddleware(...middlewares);\nconst enhancers = [middlewareEnhancer];\nconst composedEnhancers = composeWithDevTools(...enhancers);\n\nconst store = createStore(EcommerceReducer, composedEnhancers);\nexport default store;","import { SequenceManagerAction } from \"./SequenceManagerAction\";\n\n\nconst enum EPlanCheckAction {\n EPLAN_CHECK_SUCCESS = 'EPLAN_CHECK_SUCCESS'\n}\n\nconst ePlanCheckComplete = (ePlanAvilable:any, customerRelatedAccountResponse: any, offerContainerId: any) => {\n return function (dispatch:any, getState:any) {\n dispatch({type: EPlanCheckAction.EPLAN_CHECK_SUCCESS, payload:{ePlanAvilable: ePlanAvilable, customerRelatedAccountResponse: customerRelatedAccountResponse, offerContainerId: offerContainerId}});\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['EPlanCheck'] });\n }\n}\n\nexport { EPlanCheckAction, ePlanCheckComplete };","import { SequenceManagerAction } from '../actions/SequenceManagerAction';\n\nconst enum PersonalDetailsAction {\n PERSONAL_DETAILS_SUCCESS = 'PERSONAL_DETAILS_SUCCESS',\n}\n\n\nconst getPersonalDetails = (fName: any, mName: any, lName: any, phone: any, email: any, birthDate: any, birthdayType: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: PersonalDetailsAction.PERSONAL_DETAILS_SUCCESS, payload: {fName: fName, mName: mName, lName: lName, phone: phone, email: email, birthDate: birthDate, birthdayType: birthdayType} });\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['PersonalDetails'] });\n }\n}\n\n\nexport { PersonalDetailsAction, getPersonalDetails };","import { SequenceManagerAction } from \"./SequenceManagerAction\";\n\nconst enum ContractLengthAction {\n MONTHS_SELECTION = \"MONTHS_SELECTION\",\n}\n\nconst monthsSelection = (selection: any, offerContainerId: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: ContractLengthAction.MONTHS_SELECTION, payload: {selection:selection, offerContainerId: offerContainerId} });\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['ContractLength']});\n };\n};\n\nexport { ContractLengthAction, monthsSelection };","import { SequenceManagerAction } from '../actions/SequenceManagerAction';\n\nconst enum FTTHFlowRuleDetailsAction {\n FTTH_FLOW_RULE_DETAILS_SUCCESS = 'FTTH_FLOW_RULE_DETAILS_SUCCESS',\n}\n\nconst ftthFlowRuleDetails = (flowRuleValue: any, offerContainerId: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: FTTHFlowRuleDetailsAction.FTTH_FLOW_RULE_DETAILS_SUCCESS, payload: {flowRuleValue: flowRuleValue, offerContainerId: offerContainerId} });\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['FTTHFlowRuleDetails'] });\n }\n}\n\nexport { FTTHFlowRuleDetailsAction, ftthFlowRuleDetails};","import { SequenceManagerAction } from \"./SequenceManagerAction\";\n\nconst enum MobilyOTPLineAction {\n MOBILY_OTP_MAKE_SELECTION = \"MOBILY_OTP_MAKE_SELECTION\",\n}\n\nconst numberSelected = (selection: any, offerContainerId: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: MobilyOTPLineAction.MOBILY_OTP_MAKE_SELECTION, payload: { selection: selection, offerContainerId: offerContainerId } });\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['MobilyOTPLine'] });\n };\n};\n\nexport { MobilyOTPLineAction, numberSelected };","import { shoppingCart, validateSCart, patchSignature, patchSimType, patchUnpaidBills, patchSecurityDeposit, getShoppingCartById, updateAndValidateShoppingCart, ChangeOfProcessContextSC } from \"../api/api\";\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction';\nimport { getUpdateStatus } from '../components/Util/UpdateStatusAPI';\n\nconst enum ShoppingCartAction {\n SHOPPING_CART_INVALIDATE = 'SHOPPING_CART_INVALIDATE',\n SHOPPING_CART_CREATE_SUCCESS = 'SHOPPING_CART_CREATE_SUCCESS',\n SHOPPING_CART_CREATE_FAILURE = 'SHOPPING_CART_CREATE_FAILURE',\n SHOPPING_CART_PATCH_SIGNATURE_SUCCESS = 'SHOPPING_CART_PATCH_SIGNATURE_SUCCESS',\n SHOPPING_CART_PATCH_SIGNATURE_FAILURE = 'SHOPPING_CART_PATCH_SIGNATURE_FAILURE',\n SHOPPING_CART_VALIDATION_SUCCESS = 'SHOPPING_CART_VALIDATION_SUCCESS',\n SHOPPING_CART_VALIDATION_FAILURE = 'SHOPPING_CART_VALIDATION_FAILURE',\n SHOPPING_CART_UPDATE_SUCCESS = 'SHOPPING_CART_UPDATE_SUCCESS',\n SHOPPING_CART_UPDATE_FAILURE = 'SHOPPING_CART_UPDATE_FAILURE',\n SHOPPING_CART_PATCH_SIM_TYPE_SUCCESS = 'SHOPPING_CART_PATCH_SIM_TYPE_SUCCESS',\n SHOPPING_CART_PATCH_SIM_TYPE_FAILURE = 'SHOPPING_CART_PATCH_SIM_TYPE_FAILURE',\n SHOPPING_CART_PATCH_UNPAID_BILLS_SUCCESS = 'SHOPPING_CART_PATCH_UNPAID_BILLS_SUCCESS',\n SHOPPING_CART_PATCH_UNPAID_BILLS_FAILURE = 'SHOPPING_CART_PATCH_UNPAID_BILLS_FAILURE',\n SHOPPING_CART_PATCH_SECURITY_DEPOSIT_SUCCESS = 'SHOPPING_CART_PATCH_SECURITY_DEPOSIT_SUCCESS',\n SHOPPING_CART_PATCH_SECURITY_DEPOSIT_FAILURE = 'SHOPPING_CART_PATCH_SECURITY_DEPOSIT_FAILURE',\n UPDATE_VALIDATE_CART_SUCCESS = \"UPDATE_VALIDATE_CART_SUCCESS\",\n UPDATE_VALIDATE_CART_FAILURE = \"UPDATE_VALIDATE_CART_FAILURE\",\n SHOPPING_CART_PATCH_UNPAID_BILLS_VERIFIED = 'SHOPPING_CART_PATCH_UNPAID_BILLS_VERIFIED',\n SHOPPING_CART_PATCH_SECURITY_DEPOSIT_VERIFIED = 'SHOPPING_CART_PATCH_SECURITY_DEPOSIT_VERIFIED',\n SHOPPING_CART_PUT_PROCESS_CONTEXT_SUCCESS = 'SHOPPING_CART_PUT_PROCESS_CONTEXT_SUCCESS'\n}\n\nconst createShoppingCart = () => {\n return function (dispatch:any, getState:any) {\n shoppingCart().then((response: any) => {\n dispatch({type: ShoppingCartAction.SHOPPING_CART_CREATE_SUCCESS, payload:response.data});\n dispatch({type: SequenceManagerAction.CREATE_SHOPPING_CART_COMPLETE, payload:response.data});\n const simType = response?.data?.offerContainer?.[0]?.cartItem?.[0]?.product?.productCharacteristic.filter((st: any) => st?.name === \"SIM Type\")[0];\n dispatch({type: SequenceManagerAction.SHOPPING_CART_SIM_TYPE, payload:simType?.value});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst patchSignatureShoppingCart = () => {\n return function (dispatch:any, getState:any) {\n patchSignature().then((response) => {\n dispatch({type: ShoppingCartAction.SHOPPING_CART_PATCH_SIGNATURE_SUCCESS, payload:response.data});\n dispatch({type: SequenceManagerAction.SHOPPING_CART_PATCH_SIGNATURE_COMPLETE});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst patchSimTypeShoppingCart = (selectedSimType:string, orderType: string) => {\n return function (dispatch:any, getState:any) {\n patchSimType(selectedSimType, orderType).then((response) => {\n dispatch({type: ShoppingCartAction.SHOPPING_CART_PATCH_SIM_TYPE_SUCCESS, payload:response.data});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst ChangeOfProcessContextForSC = (processContextVal:string) => {\n return function (dispatch:any, getState:any) {\n ChangeOfProcessContextSC(processContextVal).then((response) => {\n dispatch({type: ShoppingCartAction.SHOPPING_CART_PUT_PROCESS_CONTEXT_SUCCESS, payload:response.data});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst patchUnpaidBillsShoppingCart = () => {\n return function (dispatch:any, getState:any) {\n patchUnpaidBills().then((response) => {\n dispatch({type: ShoppingCartAction.SHOPPING_CART_PATCH_UNPAID_BILLS_SUCCESS, payload: response.data});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst patchUnpaidVerified = ( isUnpaidPatchDone: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({type: ShoppingCartAction.SHOPPING_CART_PATCH_UNPAID_BILLS_VERIFIED, payload: isUnpaidPatchDone});\n }\n }\n\nconst patchSecurityDepositShoppingCart = () => {\n return function (dispatch:any, getState:any) {\n patchSecurityDeposit().then((response) => {\n dispatch({type: ShoppingCartAction.SHOPPING_CART_PATCH_SECURITY_DEPOSIT_SUCCESS, payload:response.data});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst patchSecurityDepositVerified = ( isSecurityDepositPatchDone: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({type: ShoppingCartAction.SHOPPING_CART_PATCH_SECURITY_DEPOSIT_VERIFIED, payload: isSecurityDepositPatchDone});\n }\n }\n\nconst validateShoppingCart = () => {\n return function (dispatch:any, getState:any) {\n validateSCart().then((response) => {\n dispatch({type: ShoppingCartAction.SHOPPING_CART_VALIDATION_SUCCESS, payload:response.data});\n dispatch({type: SequenceManagerAction.SHOPPING_CART_VALIDATION_COMPLETE});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst getShoppingCart = (id:any) => {\n return function (dispatch:any, getState:any) {\n dispatch({type: ShoppingCartAction.SHOPPING_CART_INVALIDATE});\n getShoppingCartById(id).then((response) => {\n getUpdateStatus(\"GET_SHOPPING_CART\", response?.status);\n dispatch({type: ShoppingCartAction.SHOPPING_CART_UPDATE_SUCCESS, payload:response.data});\n dispatch({type: SequenceManagerAction.SHOPPING_CART_UPDATE_COMPLETE, payload:response.data});\n })\n .catch((error) => {\n //Display error\n getUpdateStatus(\"GET_SHOPPING_CART\", error?.response?.status);\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst updateAndValidateShoppingCartById = (id:any, appStateUpdate:boolean = false) => {\n return function (dispatch: any, getState: any) {\n dispatch({type: ShoppingCartAction.SHOPPING_CART_INVALIDATE});\n updateAndValidateShoppingCart(id).then((response) => {\n dispatch({type: ShoppingCartAction.UPDATE_VALIDATE_CART_SUCCESS, payload:response.data});\n if(appStateUpdate) {\n dispatch({type: SequenceManagerAction.UPDATE_VALIDATE_CART_COMPLETE});\n }\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n }\n\nexport { ShoppingCartAction, createShoppingCart, patchSignatureShoppingCart, patchSimTypeShoppingCart, patchUnpaidBillsShoppingCart, patchSecurityDepositShoppingCart, validateShoppingCart, getShoppingCart, updateAndValidateShoppingCartById, patchUnpaidVerified, patchSecurityDepositVerified, ChangeOfProcessContextForSC };","import React, { useState, useEffect, Suspense } from 'react';\nimport { useSelector, useDispatch } from 'react-redux';\nimport { useTranslation } from \"react-i18next\";\nimport { Spin } from 'antd';\nimport { Typography, LineProgressBar, ConfirmModal } from \"mobily-ui-library/lib\";\nimport { SequenceManagerAction, setProductKey, displayNextSection, displayPrevSection, displaySection, getStructure, getCheckout, captureData, generateCheckoutOrder, createOrderId, callAuditServiceApi } from '../actions/SequenceManagerAction'\nimport { getProductOfferById } from '../actions/ProductOfferAction';\nimport { createShoppingCart, getShoppingCart, updateAndValidateShoppingCartById } from '../actions/ShoppingCartAction';\n// import { qualifyProducts } from '../actions/ProductOfferingQualificationAction'\nimport ConfigData from '../EcommerceConfig.json';\nimport ArrowLeft from '../assets/ArrowLeft.svg';\nimport './SequenceManager.scss';\n\nconst NumberOption = React.lazy(() => import('../components/NumberOption/NumberOption'));\nconst ChooseNumber = React.lazy(() => import('../components/ChooseNumber/ChooseNumber'));\nconst DeliveryDetails = React.lazy(() => import('../components/DeliveryDetails/DeliveryDetails'));\nconst FTTHServiceability = React.lazy(() => import('../components/DeliveryDetails/FTTHServiceability'));\nconst SimOption = React.lazy(() => import('../components/SimOption/SimOption'));\nconst Checkout = React.lazy(() => import('../components/Checkout/Checkout'));\nconst TCCEligibilityCheck = React.lazy(() => import('../components/TCCEligibilityCheck/TCCEligibilityCheck'));\nconst EPlanCheck = React.lazy(() => import('../components/EPlanCheck/EPlanCheck'));\nconst UnpaidBills = React.lazy(() => import('../components/UnpaidBills/UnpaidBills'));\nconst SecurityDeposit = React.lazy(() => import('../components/SecurityDeposit/SecurityDeposit'));\nconst AppointmentDetails = React.lazy(() => import('../components/AppointmentDetails/AppointmentDetails'));\nconst PersonalDetails = React.lazy(() => import('../components/PersonalDetails/PersonalDetails'));\nconst AbsherVerification = React.lazy(() => import('../components/AbsherVerification/AbsherVerification'));\nconst SSAAbsherVerification = React.lazy(() => import('../components/SSAAbsherVerification/SSAAbsherVerification'));\nconst IDVerification = React.lazy(() => import('../components/IDVerification/IDVerification'));\nconst SuccessPage = React.lazy(() => import('../components/SuccessPage/SuccessPage'));\nconst ContractLength = React.lazy(() => import('../components/ContractLength/ContractLength'));\nconst CurrentOperator = React.lazy(() => import('../components/CurrentOperator/CurrentOperator'));\nconst CurrentNumber = React.lazy(() => import('../components/CurrentNumber/CurrentNumber'));\nconst FamilyPlanCheck = React.lazy(() => import('../components/FamilyPlanCheck/FamilyPlanCheck'));\nconst FTTHFlowRuleDetails = React.lazy(() => import('../components/FTTHFlowRuleDetails/FTTHFlowRuleDetails'));\nconst ODBDetails = React.lazy(() => import('../components/ODBDetails/ODBDetails'));\nconst EnterSIMIDDetails = React.lazy(() => import('../components/EnterSIMIDDetails/EnterSIMIDDetails'));\nconst MobilyOTPLine = React.lazy(() => import('../components/MobilyOTPLine/MobilyOTPLine'));\nconst OTPVerification = React.lazy(() => import('../components/OTPVerification/OTPVerification'));\nconst MNPOTPVerification = React.lazy(() => import('../components/MNPOTPVerification/MNPOTPVerification'));\nconst SIMSwapOTPVerification = React.lazy(() => import('../components/SIMSwapOTPVerification/SIMSwapOTPVerification'));\nconst DeliveryAppointment = React.lazy(()=> import('../components/DeliveryAppointment/DeliveryAppointment'));\n\nconst win: any = window;\nvar serverURL = win[\"base_portal_url\"];\nvar errorPage = win[\"errorPageURL\"];\nvar paymentPage = win[\"paymentPageURL\"];\nvar ecommercePage = win[\"ecommercePageURL\"];\nlet xCorrelationId = win[\"x_cor_id\"];\nlet homePage = win[\"home_page_url\"];\n\nfunction SequenceManager() {\n const [loading, setLoading] = useState(true);\n const [checkoutRequired, setCheckoutRequired] = useState(false);\n const [useQueryParams, setUseQueryParams] = useState(false);\n const [componentToDisplay, setComponentToDisplay] = useState(<>);\n const [currentSection, setCurrentSection] = useState('');\n // const [previousSection, setPreviousSection] = useState('');\n const { SequenceManager, ShoppingCart } = useSelector((state: any) => state);\n const FamilyPlanCheckData = useSelector((state: any) => state.FamilyPlanCheck);\n const FTTHFlowRuleDetailsData = useSelector((state: any) => state.FTTHFlowRuleDetails);\n const ODBDetailsData = useSelector((state: any) => state.ODBDetails);\n const EPlanCheckData = useSelector((state: any) => state.EPlanCheck);\n const CheckoutData = useSelector((state: any) => state.paymentMethodAndTermsConditions);\n const TCCEligibilityCheckData = useSelector((state: any) => state.TCCEligibilityCheck);\n const [browserBackClick, setBrowserBackClick] = useState(false)\n const [modalTitle, setModalTitle] = useState(\"\");\n const [modalSubtitle, setModalSubtitle] = useState(\"\");\n const [modalSubmitText, setModalSubmitText] = useState(\"\");\n const [modalCancelText, setModalCancelText] = useState(\"\");\n let [retryAPICallCountNew, setRetryAPICallCountNew] = useState(1);\n const { t } = useTranslation();\n const dispatch = useDispatch();\n const appState = SequenceManager.appState;\n const sectionsVisited = SequenceManager.sectionsVisited;\n const sectionToShow = SequenceManager.sectionToShow;\n const orderStatus = SequenceManager.orderStatus;\n const captureDataResponse = SequenceManager.captureDataResponse;\n const { rtl } = SequenceManager;\n const dir = rtl ? \"right\" : \"left\";\n const urlParams = new URLSearchParams(window.location.search);\n let productURL = sessionStorage.getItem(\"productURL\");\n let refId = CheckoutData.requestBody.steps[0].fields[0].value;\n const paymentMethod = CheckoutData.requestBody.steps[0].options[0].value\n const otpType = TCCEligibilityCheckData.requestBody.steps[0].fields[5].value;\n\n console.log('🚀-- SequenceManager -- ' + appState);\n\n useEffect(() => {\n stopBrowserBack()\n console.log('----------- ON MOUNT ----------------');\n let status = urlParams.get('status');\n let edata = urlParams.get('edata');\n let statusCode = urlParams.get('scode');\n\n if (status || edata) {\n // let decode = window.atob(edata ? edata : \"\");\n let decode = window.decodeURIComponent(atob(edata ? edata : \"\"));\n let params = JSON.parse(decode);\n let spcartId = params?.scId;\n let journeyName = params?.jN;\n let xCorrelationId = params?.xCoId;\n win.auditJourneyName = journeyName;\n win.auditScId = spcartId;\n win.auditXCorrelationId = xCorrelationId;\n\n setDocumentTitle(params.j);\n if (status === 'failure') {\n win.auditStatusCode = statusCode;\n //Audit API\n const err = {\n config: {\n url: 'AfterPayment failed at ecommerce',\n headers: { value: \"Recived the Payment status as failure\" },\n method: '',\n data: JSON.stringify(`paymnet got failed and went to error page in ecommerce`)\n }\n };\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: err });\n } else {\n if (edata) {\n setUseQueryParams(true);\n setCheckoutRequired(true);\n // dispatch(getProductOfferById(\"prepaid_150-of_h7uiw\", SequenceManager.lang));\n if (status === 'success' && (journeyName === 'KEEP_NUMBER_eSIM' || journeyName === 'PreSSA')) {\n dispatch(generateCheckoutOrder(spcartId, journeyName));\n } else {\n dispatch(getShoppingCart(spcartId));\n }\n }\n }\n } else {\n dispatch({ type: SequenceManagerAction.INIT });\n }\n }, []);\n\n useEffect(() => {\n console.log(\"two\", appState)\n switch (appState) {\n case SequenceManagerAction.INIT:\n setLoading(true);\n dispatch(setProductKey());\n break;\n\n case SequenceManagerAction.SET_PRODUCT_KEY_COMPLETE:\n setDocumentTitle(SequenceManager.journey);\n dispatch(getProductOfferById(SequenceManager.productKey, SequenceManager.lang));\n break;\n\n case SequenceManagerAction.LOAD_PRODUCT_OFFER_COMPLETE:\n dispatch(createShoppingCart());\n break;\n\n case SequenceManagerAction.CREATE_SHOPPING_CART_COMPLETE:\n if (SequenceManager.journey.includes(\"FTTH\")) {\n dispatch(createOrderId());\n } else {\n dispatch(updateAndValidateShoppingCartById(ShoppingCart.shoppingCart.id, true));\n }\n break;\n\n case SequenceManagerAction.CREATE_ORDER_COMPLETE:\n dispatch(updateAndValidateShoppingCartById(ShoppingCart.shoppingCart.id, true));\n break;\n\n case SequenceManagerAction.SHOPPING_CART_VALIDATION_COMPLETE:\n case SequenceManagerAction.UPDATE_VALIDATE_CART_COMPLETE:\n case SequenceManagerAction.CAPTURE_DATA_COMPLETE:\n case SequenceManagerAction.GET_CHECKOUT_COMPLETE:\n setLoading(true);\n setCheckoutRequired(false);\n dispatch(getStructure());\n break;\n\n case SequenceManagerAction.STRUCTURE_UPDATE_COMPLETE:\n if (useQueryParams) {\n setUseQueryParams(false);\n let status = urlParams.get('status');\n let edata = urlParams.get('edata');\n if (edata) {\n // let decode = window.atob(edata?edata:\"\");\n let decode = window.decodeURIComponent(atob(edata ? edata : \"\"));\n let params = JSON.parse(decode);\n let decodedParams = {\n orderId: params.oId,\n productURL: params.pURL,\n journey: params.j,\n selectedSimType: params.sST,\n selectedProduct: params.sP,\n selectedProductLabel: params.sPL,\n selectedTier: params.sT,\n planType: params.pT,\n productType: params.prT,\n productExternalId: params.pE,\n selectedMsisdn: params.sN,\n selectedMsisdnType: params.sNT,\n operator: params.o,\n paymentMethod: params.pM,\n payType: params.pTyp,\n nationCode: params.nCode,\n email: params.email,\n maskedEmail: params.maEml,\n xCorrelationId: params.xCoId,\n journeyName: params.jN,\n step: params.step\n }\n\n if (status) {\n if (status === 'success') {\n dispatch(displaySection('SuccessPage', decodedParams));\n }\n if (status === 'failure') {\n dispatch(displaySection('paymentMethodAndTermsConditions', decodedParams));\n }\n }\n if (decodedParams.step === \"avtr\" || decodedParams.step === \"ssaavtr\") {\n let sectionToNavigate = ConfigData.section_mappings.filter((section: any) => section.step == decodedParams.step);\n let tccToken: any = \"\";\n let nafathStatus: any = \"\";\n let source = urlParams.get('source');\n if (source) {\n let nafathVersion = urlParams.get('nafathVersion');\n nafathStatus = urlParams.get('nafathStatus');\n if (nafathVersion === \"versionOne\") {\n tccToken = urlParams.get('IAMToken') ? urlParams.get('IAMToken') : \"NO_TOKEN\";\n } else {\n tccToken = nafathVersion;\n }\n } else {\n tccToken = \"\";\n }\n decodedParams = Object.assign(decodedParams, { tccToken: tccToken, nafathStatus: nafathStatus });\n dispatch(displaySection(sectionToNavigate[0].section, decodedParams));\n }\n // window.history.pushState(\"\", \"\", \"/\");\n }\n } else {\n console.log(currentSection);\n if (currentSection === 'FamilyPlanCheck' && FamilyPlanCheckData.redirectUrl) {\n if(FamilyPlanCheckData?.familyPlanCheckResponse?.data?.ErrorCode === 9999) {\n //Audit API\n const err = FamilyPlanCheckData?.familyPlanCheckResponse;\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: err });\n } else {\n window.open(FamilyPlanCheckData.redirectUrl, \"_self\");\n }\n } else if (currentSection === 'FTTHFlowRuleDetails' && FTTHFlowRuleDetailsData.requestBody.steps[0].fields[0].value === \"false\") {\n window.open(SequenceManager.productURL + '?viewPlanDetails', '_self')?.focus();\n } else if (currentSection === 'ODBDetails' && !ODBDetailsData.requestBody.steps[0].fields[3].value) {\n window.open(SequenceManager.productURL + '?viewPlanDetails', '_self')?.focus();\n } else if (currentSection === 'paymentMethodAndTermsConditions') {\n if(SequenceManager.journeyName === 'KEEP_NUMBER_eSIM' || SequenceManager.journeyName === 'Cold_SSA' || SequenceManager.journeyName === 'PreSSA') {\n let data: any = {\n scId: ShoppingCart.shoppingCart.id,\n j: SequenceManager.journey,\n sST: SequenceManager.selectedSimType,\n sP: SequenceManager.selectedProduct,\n sPL: SequenceManager.selectedProductLabel,\n pT: SequenceManager.planType,\n prT: SequenceManager.productType,\n o: SequenceManager.operator,\n xCoId: SequenceManager.xCorrelationId,\n jN: SequenceManager.journeyName,\n pURL: SequenceManager.productURL,\n step: SequenceManager.journeyName === 'Cold_SSA' ? \"ssaavtr\" : \"\",\n }\n let encoded = window.btoa(encodeURIComponent(JSON.stringify(data)));\n // let encoded = window.btoa(JSON.stringify(data));\n let returnUrl = ecommercePage + '?edata=' + encoded + '&xCoId=' + SequenceManager.xCorrelationId;\n let totalPay = ShoppingCart.shoppingCart.cartTotalPrice.filter((price: any) => (price.priceType === 'Onetime'))[0].price.taxIncludedAlteredAmount.value;\n if (totalPay > 0) {\n if (SequenceManager.journeyName === 'KEEP_NUMBER_eSIM') {\n window.location.href = win[\"dpcPaymentUrl\"] + '?returnUrl=' + returnUrl + '&refId=' + refId + '&ptype=autr';\n } else {\n window.location.href = win[\"dpcPaymentUrl\"] + '?returnUrl=' + returnUrl + '&refId=' + refId + '&ptype=autr' + '&src=' + SequenceManager.journeyName;\n }\n } else {\n if(SequenceManager.journeyName === 'KEEP_NUMBER_eSIM') {\n dispatch(generateCheckoutOrder(ShoppingCart.shoppingCart.id, SequenceManager.journeyName));\n } else if(SequenceManager.journeyName === 'Cold_SSA') {\n dispatch(displaySection(\"SSAAbsherVerification\"))\n } else {\n dispatch(generateCheckoutOrder(ShoppingCart.shoppingCart.id, SequenceManager.journeyName));\n }\n }\n } else {\n dispatch(generateCheckoutOrder(ShoppingCart.shoppingCart.id, SequenceManager.journeyName));\n }\n } else if (currentSection === 'EPlanCheck' && EPlanCheckData.requestBody.steps[0].options[0].value) {\n window.open(win[\"home_page_url\"], \"_self\")?.focus();\n } else if (currentSection === 'SSAAbsherVerification') {\n dispatch(generateCheckoutOrder(ShoppingCart.shoppingCart.id, SequenceManager.journeyName));\n\n } else {\n dispatch(displayNextSection());\n }\n }\n break;\n\n case SequenceManagerAction.SECTION_COMPLETE:\n setLoading(true);\n dispatch(captureData());\n break;\n\n case SequenceManagerAction.SHOPPING_CART_UPDATE_COMPLETE:\n if (checkoutRequired) {\n setLoading(true);\n dispatch(getCheckout());\n }\n break;\n\n case SequenceManagerAction.GENERIC_ERROR:\n if ((currentSection === \"SSAAbsherVerification\") && (captureDataResponse?.status !== 200) && (retryAPICallCountNew < 3)) {\n setTimeout(() => {\n setRetryAPICallCountNew(++retryAPICallCountNew)\n dispatch(captureData());\n }, 5000);\n } else {\n dispatch(callAuditServiceApi(SequenceManager, ShoppingCart.shoppingCart.id, currentSection));\n }\n break;\n\n case SequenceManagerAction.DISPLAY_NEXT_SECTION:\n\n case SequenceManagerAction.DISPLAY_PREVIOUS_SECTION:\n let section = SequenceManager.structure.sections[SequenceManager.sectionsVisited.length];\n // let section = SequenceManager.structure.sections[5];\n let sectionDisplay = ConfigData.section_mappings.filter((sect: any) => {\n return (sect.checkoutSectionId === section.sectionId)\n })[0].section;\n displaySectionUI(sectionDisplay);\n break;\n\n case SequenceManagerAction.DISPLAY_SECTION:\n displaySectionUI(sectionToShow);\n break;\n }\n }, [appState, sectionsVisited, retryAPICallCountNew])\n\n // useEffect(() => {\n // console.log(\"three\", appState)\n // switch (appState) {\n // case SequenceManagerAction.DISPLAY_NEXT_SECTION:\n // case SequenceManagerAction.DISPLAY_PREVIOUS_SECTION:\n // let section = SequenceManager.structure.sections[SequenceManager.sectionsVisited.length];\n // // let section = SequenceManager.structure.sections[5];\n // let sectionDisplay = ConfigData.section_mappings.filter((sect: any) => {\n // return (sect.checkoutSectionId === section.sectionId)\n // })[0].section;\n // displaySectionUI(sectionDisplay);\n // break;\n // }\n // }, [appState, sectionsVisited])\n\n\n // useEffect(() => {\n // console.log(\"four\", appState)\n // switch (appState) {\n // case SequenceManagerAction.DISPLAY_SECTION:\n // displaySectionUI(sectionToShow);\n // break;\n // }\n // }, [appState, sectionToShow])\n\n useEffect(() => {\n console.log(\"five\")\n if (orderStatus) {\n let status = urlParams.get('status');\n let edata = urlParams.get('edata');\n let decode = window.decodeURIComponent(atob(edata ? edata : \"\"));\n let params = edata ? JSON.parse(decode) : \"\";\n let spcartId = edata ? params.scId : ShoppingCart.shoppingCart.id;\n let journeyName = edata ? params.jN : SequenceManager.journeyName;\n if (status === 'success' && (journeyName === 'KEEP_NUMBER_eSIM' || journeyName === 'PreSSA')) {\n dispatch(getShoppingCart(spcartId));\n } else if (orderStatus.statusCode === \"MBE_000\" || orderStatus.statusCode === \"0000\") {\n const totalPay = ShoppingCart.shoppingCart.cartTotalPrice.filter((price: any) => (price.priceType === 'Onetime'))[0].price.taxIncludedAlteredAmount.value;\n // naviagte to success page when total pay is 0 for Cold SSA. (nothing to pay)\n if (paymentMethod === 'Cash on Delivery' || totalPay === 0) {\n // window.history.pushState(\"\", \"\", \"/\");\n dispatch(displaySection('SuccessPage', { orderId: SequenceManager.orderId }));\n } else if (paymentMethod === 'Upfront Payment') {\n let data: any = {\n scId: ShoppingCart.shoppingCart.id,\n oId: SequenceManager.orderId,\n pURL: SequenceManager.productURL,\n j: SequenceManager.journey,\n sST: SequenceManager.selectedSimType,\n sP: SequenceManager.selectedProduct,\n sPL: SequenceManager.selectedProductLabel,\n pT: SequenceManager.planType,\n prT: SequenceManager.productType,\n pE: SequenceManager.productExternalId,\n sN: SequenceManager.selectedMsisdn,\n sNT: SequenceManager.selectedMsisdnType,\n sT: SequenceManager.selectedTier,\n o: SequenceManager.operator,\n pTyp: SequenceManager.payType,\n nCode: SequenceManager.nationCode,\n email: SequenceManager.email,\n maEml: SequenceManager.maskedEmail,\n xCoId: SequenceManager.xCorrelationId,\n jN: SequenceManager.journeyName,\n step:\"\"\n }\n let encoded = window.btoa(encodeURIComponent(JSON.stringify(data)));\n // let encoded = window.btoa(JSON.stringify(data));\n let paymentUrl = paymentPage + '?oId='+SequenceManager.orderId+'&pId='+SequenceManager.paymentTransactionId;\n let returnUrl = ecommercePage +'?edata='+encoded+'&xCoId='+SequenceManager.xCorrelationId;\n if (SequenceManager.journeyName === 'KEEP_NUMBER_eSIM' || SequenceManager.journeyName === 'Cold_SSA' || SequenceManager.journeyName === 'PreSSA') {\n dispatch(displaySection('SuccessPage', { orderId: SequenceManager.orderId }));\n } else {\n window.location.href = paymentUrl + '&returnUrl=' + returnUrl;\n }\n }\n } else {\n //Audit API\n const err = {\n config: {\n url: 'postProductOrder',\n headers: { value: \"From postProductOrder got wrong statusCode\" },\n method: '',\n data: JSON.stringify(`Recived Wrong statusCode from postProductOrder Response`)\n }\n };\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: err });\n }\n }\n }, [orderStatus])\n\n const handleStopTracking = () => {\n setBrowserBackClick(false)\n setLoading(true);\n win.onpopstate = undefined\n if (productURL) {\n window.location.href = productURL;\n } else {\n window.location.href = homePage\n }\n }\n\n const stopBrowserBack = () => {\n win.history.pushState(null, '', win.location.href)\n win.onpopstate = () => {\n win.history.pushState(null, '', win.location.href)\n browserBackModalContent();\n }\n }\n\n const browserBackModalContent = () => {\n if (SequenceManager.journey === \"COLD_SSA\") {\n setModalTitle(t(\"stop_sim_activation\"));\n setModalSubtitle(t(\"sure_want_to_stop_activating\"));\n setModalSubmitText(t(\"continue_activation\"));\n setModalCancelText(t(\"stop_activation\"));\n setBrowserBackClick(true);\n } else {\n setModalTitle(t(\"stop_purchase_with_qus\"));\n setModalSubtitle(t(\"you_are_about_to_stop_purchase\"));\n setModalSubmitText(t(\"continue_purchase\"));\n setModalCancelText(t(\"stop_purchase_upper_case\"));\n setBrowserBackClick(true);\n }\n }\n\n const setDocumentTitle = (journey: any) => {\n let title = \"\";\n if (journey === \"COLD_SSA\") {\n title = t(\"sim_self_activation\");\n }\n document.title = title;\n }\n\n const onBackPressed = (sectionId: any) => {\n // let sectionIndex = SequenceManager.structure.sections.findIndex((section: any) => (currentSection === section.sectionId));\n // let prevSection = SequenceManager.structure.sections[sectionIndex - 1];\n // if (sectionIndex === 0) {\n // window.location.href = SequenceManager.productURL;\n // } else {\n // let step = 1;\n // setLoading(true);\n // if (prevSection.sectionId.includes('E50Check')) {\n // step = 2;\n // }\n // dispatch(displayPrevSection(step));\n // }\n\n if (sectionId === \"OTPVerification\" && otpType.toUpperCase() === 'MOBILY') {\n dispatch(displaySection('MobilyOTPLine'));\n } else {\n if (SequenceManager.journey === \"COLD_SSA\") {\n setModalTitle(t(\"stop_sim_activation\"));\n setModalSubtitle(t(\"sure_want_to_stop_activating\"));\n setModalSubmitText(t(\"continue_activation\"));\n setModalCancelText(t(\"stop_activation\"));\n setBrowserBackClick(true);\n } else {\n setModalTitle(t(\"stop_purchase_with_qus\"));\n setModalSubtitle(t(\"you_are_about_to_stop_purchase\"));\n setModalSubmitText(t(\"continue_purchase\"));\n setModalCancelText(t(\"stop_purchase_upper_case\"));\n setBrowserBackClick(true);\n }\n }\n\n }\n\n const displaySectionUI = (sectionId: any) => {\n setLoading(false);\n setCurrentSection(sectionId);\n let journeyTitle: any = \"\";\n if (SequenceManager.journey === \"NEW_SIM\" || SequenceManager.journey === \"ESIM\" || SequenceManager.journey.includes(\"FTTH\")) {\n journeyTitle = (\n <>\n {rtl ?

{t(\"buy\")} {SequenceManager.selectedProductLabel}

: {t(\"buy\") + SequenceManager.selectedProductLabel}}\n \n )\n\n } else if (SequenceManager.journey === \"MNP\") {\n journeyTitle = (\n <>\n {rtl ?

{t(\"transfer_to\")} {SequenceManager.selectedProductLabel}

: {t(\"transfer_to\") + SequenceManager.selectedProductLabel}}\n \n )\n } else if (SequenceManager.journey === \"COLD_SSA\") {\n journeyTitle = \"\";\n } else {\n journeyTitle = rtl ? {SequenceManager.selectedProductLabel} : SequenceManager.selectedProductLabel;\n }\n setComponentToDisplay(<>\n
{SequenceManager.journeyName}
\n
{xCorrelationId}
\n
{sectionId}
\n\n {sectionId === 'SuccessPage' ? <> : (
\n {journeyTitle}\n \n
\n { onBackPressed(sectionId) }} />\n {/* \n {t(\"backTo\").toUpperCase()} {previousSection}\n */}\n
\n
)}\n\n {getComponentById(sectionId)}\n );\n window.scroll({ top: 0, left: 0 });\n }\n\n const getComponentById = (sectionId: String) => {\n return (\n <>\n {sectionId === 'NumberOption' && }\n {sectionId === 'ChooseNumber' && }\n {sectionId === 'SimOption' && }\n {sectionId === 'TCCEligibilityCheck' && }\n {sectionId === 'EPlanCheck' && }\n {sectionId === 'UnpaidBills' && }\n {sectionId === 'SecurityDeposit' && }\n {sectionId === 'AppointmentDetails' && }\n {sectionId === 'PersonalDetails' && }\n {sectionId === 'IDVerification' && }\n {sectionId === 'AbsherVerification' && }\n {sectionId === 'SSAAbsherVerification' && }\n {sectionId === 'DeliveryDetails' && }\n {sectionId === 'FTTHServiceability' && }\n {sectionId === 'paymentMethodAndTermsConditions' && }\n {sectionId === 'SuccessPage' && }\n {sectionId === 'ContractLength' && }\n {sectionId === 'CurrentOperator' && }\n {sectionId === 'CurrentNumber' && }\n {sectionId === 'FamilyPlanCheck' && }\n {sectionId === 'FTTHFlowRuleDetails' && }\n {sectionId === 'ODBDetails' && }\n {sectionId === 'EnterSIMIDDetails' && }\n {sectionId === 'MobilyOTPLine' && }\n {sectionId === 'OTPVerification' && }\n {sectionId === 'MNPOTPVerification' && }\n {sectionId === 'SIMSwapOTPVerification' && }\n {sectionId === 'DeliveryAppointment' && }\n \n );\n }\n\n const getCompletionPercent = () => {\n let structure = SequenceManager.structure.sections;\n let percentComplete = 0;\n if (structure) {\n let containE50Section = structure.filter((section: any) => { return section.sectionId.includes('E50Check') }).length > 0;\n let numOfSectionsVisited = SequenceManager.sectionsVisited.length;\n let numOfDisplaySections = containE50Section ? (structure.length - 1) : structure.length;\n percentComplete = ((numOfSectionsVisited + 1) / numOfDisplaySections) * 100;\n }\n return percentComplete;\n }\n\n if (loading) {\n return \n } else {\n return (\n }>\n\n
\n {componentToDisplay}\n
\n setBrowserBackClick(false)}\n onclickButton={() => setBrowserBackClick(false)}\n onclickOutLineButton={handleStopTracking}\n />\n
\n\n
\n
\n )\n }\n}\n\nexport default SequenceManager;","import i18n from \"i18next\";\nimport { initReactI18next } from \"react-i18next\";\nimport Backend from \"i18next-http-backend\";\nimport translationEN from \"./translation/en.json\";\nimport translationAR from \"./translation/ar.json\";\n\nconst win: any = window;\nlet lng: string | undefined = win[\"lang\"] == null ? \"ar\" : win[\"lang\"];\n\nconst resources = {\n en: {\n translation: translationEN,\n },\n ar: {\n translation: translationAR,\n },\n};\n\ni18n\n .use(Backend)\n .use(initReactI18next)\n .init({\n resources,\n fallbackLng: \"en\",\n lng,\n debug: false,\n keySeparator: false,\n interpolation: {\n escapeValue: false,\n },\n // backend: {\n // loadPath: window.location.href.includes(\"localhost\") ? \"/translations/{{lng}}.json\" : \"/.complaints-portal4/react-app/build/translations/{{lng}}.json\" ,\n // allowMultiLoading: true,\n // },\n react: {\n useSuspense: true,\n }\n });\n\nexport default i18n;","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { Provider } from 'react-redux';\nimport store from './EcommerceStore';\nimport SequenceManager from './managers/SequenceManager';\n\nimport './local';\nimport './index.css';\nimport './i18n';\nimport './portal.css';\nimport 'antd/dist/antd.css';\n\nReactDOM.render(\n }>\n \n \n \n ,\n document.getElementById('root')\n);","import { captData, structure, getCheckoutBySCId, generateOrder, createOrder, getAuditServiceSave } from \"../api/api\";\nimport { getUpdateStatus } from '../components/Util/UpdateStatusAPI';\nimport { auditErrorRequest } from \"../Util/AuditErrorRequest\";\n\nconst win: any = window;\nvar serverURL = win[\"base_portal_url\"];\nvar errorPage = win[\"errorPageURL\"];\nvar timeoutErrorPage = win[\"timeout_error_page\"];\n\nconst enum SequenceManagerAction {\n INIT = 'INIT',\n SET_PRODUCT_KEY = 'SET_PRODUCT_KEY',\n SET_PRODUCT_KEY_COMPLETE = 'SET_PRODUCT_KEY_COMPLETE',\n LOAD_PRODUCT_OFFER_COMPLETE = 'LOAD_PRODUCT_OFFER_COMPLETE',\n CREATE_SHOPPING_CART_COMPLETE = 'CREATE_SHOPPING_CART_COMPLETE',\n QUALIFY_PRODUCTS_COMPLETE = 'QUALIFY_PRODUCTS_COMPLETE',\n SHOPPING_CART_PATCH_SIGNATURE_COMPLETE = 'SHOPPING_CART_PATCH_SIGNATURE_COMPLETE',\n SHOPPING_CART_VALIDATION_COMPLETE = 'SHOPPING_CART_VALIDATION_COMPLETE',\n UPDATE_VALIDATE_CART_COMPLETE = 'UPDATE_VALIDATE_CART_COMPLETE',\n SHOPPING_CART_UPDATE_COMPLETE = 'SHOPPING_CART_UPDATE_COMPLETE',\n STRUCTURE_UPDATE_COMPLETE = 'STRUCTURE_UPDATE_COMPLETE',\n CAPTURE_DATA_COMPLETE = 'CAPTURE_DATA_COMPLETE',\n GENERIC_ERROR = 'GENERIC_ERROR',\n SECTION_COMPLETE = \"SECTION_COMPLETE\",\n DISPLAY_NEXT_SECTION = \"DISPLAY_NEXT_SECTION\",\n DISPLAY_PREVIOUS_SECTION = \"DISPLAY_PREVIOUS_SECTION\",\n STRUCTURE_UPDATE_SUCCESS = 'STRUCTURE_UPDATE_SUCCESS',\n STRUCTURE_UPDATE_FAILURE = 'STRUCTURE_UPDATE_FAILURE',\n GET_CHECKOUT_SUCCESS = 'GET_CHECKOUT_SUCCESS',\n GET_CHECKOUT_FAILURE = 'GET_CHECKOUT_FAILURE',\n GET_CHECKOUT_COMPLETE = 'GET_CHECKOUT_COMPLETE',\n CAPTURE_DATA_SUCCESS = 'CAPTURE_DATA_SUCCESS',\n CAPTURE_DATA_FAILURE = 'CAPTURE_DATA_FAILURE',\n DISPLAY_SECTION = 'DISPLAY_SECTION',\n GENERATE_ORDER_SUCCESS = 'GENERATE_ORDER_SUCCESS',\n GENERATE_ORDER_FAILURE = 'GENERATE_ORDER_FAILURE',\n CREATE_ORDER_SUCCESS = 'CREATE_ORDER_SUCCESS',\n CREATE_ORDER_FAILURE = 'CREATE_ORDER_FAILURE',\n CREATE_ORDER_COMPLETE = 'CREATE_ORDER_COMPLETE',\n ACCESS_TOKEN = 'ACCESS_TOKEN',\n SHOPPING_CART_SIM_TYPE = 'SHOPPING_CART_SIM_TYPE'\n}\n\nconst setProductKey = () => {\n return function (dispatch: any, getState: any) {\n dispatch({\n type: SequenceManagerAction.SET_PRODUCT_KEY, payload: {\n productKey: sessionStorage.getItem(\"productKey\"),\n productURL: sessionStorage.getItem(\"productURL\"),\n productCategory: sessionStorage.getItem(\"productCategory\"),\n planType: sessionStorage.getItem(\"planType\"),\n journey: sessionStorage.getItem(\"journey\")\n }\n });\n dispatch({ type: SequenceManagerAction.SET_PRODUCT_KEY_COMPLETE });\n }\n}\n\nconst captureData = () => {\n return function (dispatch: any, getState: any) {\n captData().then((response: any) => {\n dispatch({ type: SequenceManagerAction.CAPTURE_DATA_SUCCESS, payload: response });\n dispatch({ type: SequenceManagerAction.CAPTURE_DATA_COMPLETE });\n })\n .catch((error) => {\n //Display error\n dispatch({ type: SequenceManagerAction.CAPTURE_DATA_SUCCESS, payload: error?.response });\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n })\n }\n}\n\nconst getStructure = () => {\n return function (dispatch: any, getState: any) {\n structure()\n .then((response: any) => {\n // getUpdateStatus(\"CHECKOUT_STRUCTURE\", response?.status);\n dispatch({ type: SequenceManagerAction.STRUCTURE_UPDATE_SUCCESS, payload: response.data });\n dispatch({ type: SequenceManagerAction.STRUCTURE_UPDATE_COMPLETE });\n })\n .catch((error) => {\n //Display error\n // getUpdateStatus(\"CHECKOUT_STRUCTURE\", error?.response?.status);\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n })\n }\n}\n\nconst getCheckout = () => {\n return function (dispatch: any, getState: any) {\n getCheckoutBySCId().then((response: any) => {\n console.log(response);\n getUpdateStatus(\"GET_CAPTURE_STRUCTURE\", response?.status);\n dispatch({ type: SequenceManagerAction.GET_CHECKOUT_SUCCESS, payload: response.data });\n dispatch({ type: SequenceManagerAction.GET_CHECKOUT_COMPLETE });\n })\n .catch((error) => {\n //Display error\n // getUpdateStatus(\"GET_CAPTURE_STRUCTURE\", error?.response?.status);\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n })\n }\n}\n\nconst displayNextSection = () => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: SequenceManagerAction.DISPLAY_NEXT_SECTION });\n }\n}\n\nconst displayPrevSection = (steps: any = 1) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: SequenceManagerAction.DISPLAY_PREVIOUS_SECTION, payload: steps });\n }\n}\n\nconst displaySection = (section: any, params: any = {}) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: SequenceManagerAction.DISPLAY_SECTION, payload: { section: section, params: params } });\n }\n}\n\nconst generateCheckoutOrder = (cartId: any, journeyName: any) => {\n return function (dispatch: any, getState: any) {\n generateOrder(cartId, journeyName).then((response) => {\n // getUpdateStatus(\"postProductOrder\", response?.status);\n dispatch({ type: SequenceManagerAction.GENERATE_ORDER_SUCCESS, payload: { response: response.data } });\n })\n .catch((error) => {\n //Display error\n // getUpdateStatus(\"postProductOrder\", error?.response?.status);\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n })\n }\n}\n\nconst createOrderId = () => {\n return function (dispatch: any, getState: any) {\n createOrder()\n .then((response) => {\n dispatch({ type: SequenceManagerAction.CREATE_ORDER_SUCCESS, payload: { response: response } });\n dispatch({ type: SequenceManagerAction.CREATE_ORDER_COMPLETE });\n })\n .catch((error) => {\n //Display error\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n })\n }\n}\n\nconst callAuditServiceApi = (SequenceManager: any, shoppingCartId: any, currentSection?:any) => {\n const req = auditErrorRequest(SequenceManager, shoppingCartId,currentSection);\n\n const { rtl } = SequenceManager;\n\n return function () {\n getAuditServiceSave(req)\n .then((res: any) => {\n if(req?.Status === \"504\") {\n // window.location.href = serverURL + timeoutErrorPage+`?value=Timeout`;\n window.location.href = serverURL + errorPage + `?errorSource=${rtl ? \"التجارة الإلكترونية\" : \"ecommerce\"}`;\n } else {\n window.location.href = serverURL + errorPage + `?errorSource=${rtl ? \"التجارة الإلكترونية\" : \"ecommerce\"}`;\n }\n }).catch(()=> {\n if(req?.Status === \"504\") {\n // window.location.href = serverURL + timeoutErrorPage+`?value=Timeout`;\n window.location.href = serverURL + errorPage + `?errorSource=${rtl ? \"التجارة الإلكترونية\" : \"ecommerce\"}`;\n } else {\n window.location.href = serverURL + errorPage + `?errorSource=${rtl ? \"التجارة الإلكترونية\" : \"ecommerce\"}`;\n }\n })\n }\n}\n\nexport { SequenceManagerAction, setProductKey, displayNextSection, displayPrevSection, displaySection, getStructure, getCheckout, captureData, generateCheckoutOrder, createOrderId, callAuditServiceApi };\n\n","export const auditErrorRequest = (SequenceManager, shoppingCartId, currentSection) => {\n const { error } = SequenceManager;\n const errorData = error?.response ? error?.response : error;\n const auditJourneyName = SequenceManager?.journeyName ? SequenceManager?.journeyName : window.auditJourneyName;\n const auditXCorrelationId = SequenceManager?.xCorrelationId ? SequenceManager?.xCorrelationId : window.auditXCorrelationId;\n const auditScId = shoppingCartId ? shoppingCartId : window.auditScId;\n const createdOnDate = errorData?.config?.headers['X-Timestamp'] ? errorData?.config?.headers['X-Timestamp'] : '';\n const transactionId = errorData?.config?.headers['X-Transaction-Id'] ? errorData?.config?.headers['X-Transaction-Id'] : \"No Trans Id\";\n const correlationId = errorData?.config?.headers['X-Correlation-Id'] ? errorData?.config?.headers['X-Correlation-Id'] : auditXCorrelationId;\n const xSourceChannel = errorData?.config?.headers[\"X-Source-Channel\"] ? errorData?.config?.headers[\"X-Source-Channel\"] : \"PORTAL\";\n const statusCode = errorData?.status ? errorData?.status : window.auditStatusCode;\n\n sessionStorage.setItem('xcoorelationid-error', correlationId);\n sessionStorage.setItem('transactionid-error', transactionId);\n sessionStorage.setItem('journeyname-error', auditJourneyName);\n sessionStorage.setItem('stepname-error', currentSection ? currentSection : 'eCommerce');\n sessionStorage.setItem('errorcode-error', statusCode ? statusCode : 'No statusCode from Backend');\n \n const safeParse = (data) => {\n try {\n return JSON.parse(data);\n } catch {\n return data || \"\";\n }\n };\n\n const { config, request } = errorData;\n const url = config?.url.length > 0 ? getServiceName(config?.url) : 'eCommerce';\n \n const responseMsg = statusCode ? `Customer Connection Rest ${statusCode}` : \"Customer Connection Rest\";\n const req = {\n \"ServiceName\": url,\n \"JourneyName\": auditJourneyName,\n \"EndpointURL\": request?.responseURL ? request?.responseURL : config?.baseURL + config?.url,\n \"ShoppingCartId\": auditScId,\n \"TransactionId\": transactionId,\n \"CorrelationId\": correlationId,\n \"SourceId\": \"PORTAL_CLIENT\",\n \"JsonRequest\": config?.data ? safeParse(config?.data) : \"\",\n \"JsonResponse\": request?.response ? safeParse(request?.response) : responseMsg,\n \"BackendRequestType\": \"MQ\",\n \"BackendRequest\": \"\",\n \"BackendResponse\": \"\",\n \"RequestQueueName\": \"\",\n \"ResponseQueueName\": \"\",\n \"BackendURL\": \"\",\n \"Payload\": {\n \"header\": [\n { Method: config?.method.toUpperCase(), ...config?.headers }\n ]\n },\n \"HTTPHeaders\": {\n \"header\": [\n {\n \"name\": \"X-Correlation-Id\",\n \"value\": correlationId\n },\n {\n \"name\": \"X-Source-Channel\",\n \"value\": xSourceChannel\n },\n {\n \"name\": \"X-Transaction-Id\",\n \"value\": transactionId\n }\n ]\n },\n \"CreatedOn\": createdOnDate,\n \"ProcessingTime\": 0,\n \"Status\": statusCode ? statusCode.toString() : 'no Status code'\n }\n return req;\n}\n\nconst getServiceName = (url) => {\n const part = url.split('/').pop();\n let serviceName = part;\n\n if (part.includes('?')) {\n serviceName = part.split('?')[0];\n }\n\n const uuidRegex = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/i;\n if (uuidRegex.test(part)) {\n const arr = url.split('/')\n serviceName = arr[arr.length - 2];\n }\n\n return serviceName;\n}","import { SequenceManagerAction } from \"./SequenceManagerAction\";\nimport { simswapCustomerDetailsApi, cemSimSwapSendOtp, cemSimSwapValidateOtp, cemSimSwapResendOtp } from \"../api/api\";\n\nconst enum CurrentNumberAction {\n CURRENT_NUMBER_SELECTION = \"CURRENT_NUMBER_SELECTION\",\n GET_CUSTOMER_DETAILS_SUCCESS = \"GET_CUSTOMER_DETAILS_SUCCESS\",\n GET_CUSTOMER_DETAILS_FAILURE = \"GET_CUSTOMER_DETAILS_FAILURE\",\n SIMSWAP_CEM_OTP_INITIATE_SUCCESS = 'SIMSWAP_CEM_OTP_INITIATE_SUCCESS',\n SIMSWAP_CEM_OTP_VALIDATE_SUCCESS = 'SIMSWAP_CEM_OTP_VALIDATE_SUCCESS',\n SIMSWAP_CEM_OTP_RSEND_SUCCESS = 'SIMSWAP_CEM_OTP_RSEND_SUCCESS',\n}\n\nconst getCustomerDetails = (msisdn: any, accessToken: any) => {\n return function (dispatch: any, getState: any) {\n simswapCustomerDetailsApi(msisdn, accessToken).then((response) => {\n console.log(response);\n dispatch({ type: CurrentNumberAction.GET_CUSTOMER_DETAILS_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n })\n }\n}\n\nconst makeSelection = (phoneNumber: any, stepId: any, offerContainerId: any, getCustomerDetailsResponse: any, otpVal: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: CurrentNumberAction.CURRENT_NUMBER_SELECTION, payload: { phoneNumber: phoneNumber, stepId: stepId, offerContainerId: offerContainerId, getCustomerDetailsResponse: getCustomerDetailsResponse, otpVal: otpVal } });\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['CurrentNumber'] });\n };\n};\n\n\nconst cemSwapSendOtp = (number: any, idNumber: any, lang: any) => {\n return function (dispatch: any, getState: any) {\n cemSimSwapSendOtp(number, idNumber, lang).then((response) => {\n dispatch({ type: CurrentNumberAction.SIMSWAP_CEM_OTP_INITIATE_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: CurrentNumberAction.SIMSWAP_CEM_OTP_INITIATE_SUCCESS, payload: error.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n })\n }\n}\n\nconst cemSwapValidateOtp = (otp: any, refId: any, clientId: any, ClientSecret: any) => {\n return function (dispatch: any, getState: any) {\n cemSimSwapValidateOtp(otp, refId, clientId, ClientSecret).then((response) => {\n dispatch({ type: CurrentNumberAction.SIMSWAP_CEM_OTP_VALIDATE_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: CurrentNumberAction.SIMSWAP_CEM_OTP_VALIDATE_SUCCESS, payload: error.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n })\n }\n}\n\nconst cemSwapResendOtp = (refId: any, modes: any) => {\n return function (dispatch: any, getState: any) {\n cemSimSwapResendOtp(refId, modes).then((response) => {\n dispatch({ type: CurrentNumberAction.SIMSWAP_CEM_OTP_RSEND_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n if(error?.response) {\n dispatch({ type: CurrentNumberAction.SIMSWAP_CEM_OTP_RSEND_SUCCESS, payload: error.response });\n } else {\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n }\n })\n }\n}\n\nexport { CurrentNumberAction, makeSelection, getCustomerDetails, cemSwapSendOtp, cemSwapValidateOtp, cemSwapResendOtp };","import { getTccEligibility, getCustomerRelatedAccount, eSimValidation, tccCemBffSendOtp, cemSimSwapValidateOtp, cemSimSwapResendOtp } from \"../api/api\";\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction';\n\n\nconst enum TCCEligibilityCheckAction {\n TCC_ELIGIBILITY_CHECK_SUCCESS = \"TCC_ELIGIBILITY_CHECK_SUCCESS\",\n TCC_ELIGIBILITY_CHECK_FAILURE = 'TCC_ELIGIBILITY_CHECK_FAILURE',\n CUSTOMER_RELATED_ACCOUNT_SUCCESS = \"CUSTOMER_RELATED_ACCOUNT_SUCCESS\",\n CUSTOMER_RELATED_ACCOUNT_FAILURE = 'CUSTOMER_RELATED_ACCOUNT_FAILURE',\n STORE_CUSTOMER_DETAILS = 'STORE_CUSTOMER_DETAILS',\n ESIM_VALIDATION_SUCCESS = 'ESIM_VALIDATION_SUCCESS',\n ESIM_VALIDATION_FAILURE = 'ESIM_VALIDATION_FAILURE',\n TCC_ELIGIBILITY_CEM_OTP_INITIATE_SUCCESS = 'TCC_ELIGIBILITY_CEM_OTP_INITIATE_SUCCESS',\n TCC_ELIGIBILITY_CEM_OTP_VALIDATE_SUCCESS = 'TCC_ELIGIBILITY_CEM_OTP_VALIDATE_SUCCESS',\n TCC_ELIGIBILITY_CEM_OTP_RSEND_SUCCESS = 'TCC_ELIGIBILITY_CEM_OTP_RSEND_SUCCESS',\n}\n\nconst performTCCEligibilityCheck = (personId: any, nationality: any, nationalityName: any, nationalityFieldName: any, requestType: any, contactPhone: any, isCustomerConsent: any) => {\n return function (dispatch: any, getState: any) {\n getTccEligibility(personId, nationality, requestType, isCustomerConsent).then((response) => {\n dispatch({\n type: TCCEligibilityCheckAction.TCC_ELIGIBILITY_CHECK_SUCCESS,\n payload: {\n response: response,\n personId: personId,\n nationality: nationality,\n nationalityName: nationalityName,\n nationalityFieldName: nationalityFieldName,\n idType: personId.charAt(0),\n contactPhone: contactPhone,\n customerConsent: isCustomerConsent\n }\n });\n })\n .catch((error) => {\n //Display error\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n })\n }\n}\n\nconst performGetCustomerRelatedAccount = (personId: any, accessToken: any) => {\n return function (dispatch: any, getState: any) {\n getCustomerRelatedAccount(personId, accessToken).then((response) => {\n dispatch({ type: TCCEligibilityCheckAction.CUSTOMER_RELATED_ACCOUNT_SUCCESS, payload: { response: response.data } });\n })\n .catch((error) => {\n //Display error\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n })\n }\n}\n\nconst storeCustomerDetails = (customerRelatedAccountResponse: any, offerContainerId: any, accessToken: any, otpVal: any, newStackVal: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: TCCEligibilityCheckAction.STORE_CUSTOMER_DETAILS, payload: { customerRelatedAccountResponse: customerRelatedAccountResponse, offerContainerId: offerContainerId, otpVal: otpVal, newStackVal: newStackVal } });\n dispatch({ type: SequenceManagerAction.ACCESS_TOKEN, payload: accessToken });\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['TCCEligibilityCheck'] });\n }\n}\n\nconst eSimValidationAPI = (IDNumber: any, journeyName: any) => {\n return function (dispatch: any, getState: any) {\n eSimValidation(IDNumber, journeyName).then((response) => {\n dispatch({ type: TCCEligibilityCheckAction.ESIM_VALIDATION_SUCCESS, payload: { response: response } });\n })\n .catch((error) => {\n //Display error\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n })\n }\n}\n\nconst eligibilitySendOtp = (number: any, idNumber: any, lang: any, nationality: any) => {\n return function (dispatch: any, getState: any) {\n tccCemBffSendOtp(number, idNumber, lang, nationality).then((response) => {\n dispatch({ type: TCCEligibilityCheckAction.TCC_ELIGIBILITY_CEM_OTP_INITIATE_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: TCCEligibilityCheckAction.TCC_ELIGIBILITY_CEM_OTP_INITIATE_SUCCESS, payload: error.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n })\n }\n}\n\nconst eligibilityValidateOtp = (otp: any, refId: any, clientId: any, ClientSecret: any) => {\n return function (dispatch: any, getState: any) {\n cemSimSwapValidateOtp(otp, refId, clientId, ClientSecret).then((response) => {\n dispatch({ type: TCCEligibilityCheckAction.TCC_ELIGIBILITY_CEM_OTP_VALIDATE_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: TCCEligibilityCheckAction.TCC_ELIGIBILITY_CEM_OTP_VALIDATE_SUCCESS, payload: error.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n })\n }\n}\n\nconst eligibilityResendOtp = (refId: any, mode: any) => {\n return function (dispatch: any, getState: any) {\n cemSimSwapResendOtp(refId, mode).then((response) => {\n dispatch({ type: TCCEligibilityCheckAction.TCC_ELIGIBILITY_CEM_OTP_RSEND_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: TCCEligibilityCheckAction.TCC_ELIGIBILITY_CEM_OTP_RSEND_SUCCESS, payload: error?.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n })\n }\n}\n\nexport { TCCEligibilityCheckAction, performTCCEligibilityCheck, performGetCustomerRelatedAccount, storeCustomerDetails, eSimValidationAPI, eligibilitySendOtp, eligibilityValidateOtp, eligibilityResendOtp };","import { SequenceManagerAction } from '../actions/SequenceManagerAction';\nimport { initiateOtp, validateOtp, tccCemBffSendOtp, cemSimSwapValidateOtp, cemSimSwapResendOtp } from '../api/api';\n\nconst enum IDVerificationAction {\n OTP_INITIATE_SUCCESS = 'OTP_INITIATE_SUCCESS',\n OTP_INITIATE_FAILURE = 'OTP_INITIATE_FAILURE',\n OTP_VALIDATE_SUCCESS = 'OTP_VALIDATE_SUCCESS',\n OTP_VALIDATE_FAILURE = 'OTP_VALIDATE_FAILURE',\n UPDATE_ID_VERIFICATION = 'UPDATE_ID_VERIFICATION',\n ID_VERIFICATION_CEM_OTP_INITIATE_SUCCESS = 'ID_VERIFICATION_CEM_OTP_INITIATE_SUCCESS',\n ID_VERIFICATION_CEM_OTP_VALIDATE_SUCCESS = 'ID_VERIFICATION_CEM_OTP_VALIDATE_SUCCESS',\n ID_VERIFICATION_CEM_OTP_RSEND_SUCCESS = 'ID_VERIFICATION_CEM_OTP_RSEND_SUCCESS',\n}\n\nconst OTPInitiate = (customerId: any) => {\n return function (dispatch: any, getState: any) {\n initiateOtp(customerId).then((response) => {\n dispatch({ type: IDVerificationAction.OTP_INITIATE_SUCCESS, payload:response});\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: IDVerificationAction.OTP_INITIATE_SUCCESS, payload: error?.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n\n })\n }\n}\n\nconst OTPValidate = (customerId: any, transactionId: any, verificationCode: any) => {\n return function (dispatch: any, getState: any) {\n validateOtp(customerId, transactionId, verificationCode).then((response) => {\n dispatch({ type: IDVerificationAction.OTP_VALIDATE_SUCCESS, payload: response.data });\n })\n .catch((error) => {\n //Display error\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n })\n }\n}\n\nconst updateIDVerification = (idNumber: any, nationality: any, orderId: any, nationalityFieldName: any, offerContainerId: any, accessToken: any, contactPhone: any,nationalityISOCode:any) => { \n return function (dispatch: any, getState: any) {\n dispatch({ type: IDVerificationAction.UPDATE_ID_VERIFICATION, payload: { idNumber: idNumber, nationality: nationality, orderId: orderId, nationalityFieldName: nationalityFieldName, offerContainerId: offerContainerId, contactPhone: contactPhone , nationalityISOCode:nationalityISOCode} });\n dispatch({ type: SequenceManagerAction.ACCESS_TOKEN, payload: accessToken });\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['IDVerification'] });\n }\n}\n\nconst idVerifySendOtp = (number: any, idNumber: any, lang: any, nationality: any) => {\n return function (dispatch: any, getState: any) {\n tccCemBffSendOtp(number, idNumber, lang, nationality).then((response) => {\n dispatch({ type: IDVerificationAction.ID_VERIFICATION_CEM_OTP_INITIATE_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: IDVerificationAction.ID_VERIFICATION_CEM_OTP_INITIATE_SUCCESS, payload: error.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n })\n }\n}\n\nconst idVerifyValidateOtp = (otp: any, refId: any, clientId: any, ClientSecret: any) => {\n return function (dispatch: any, getState: any) {\n cemSimSwapValidateOtp(otp, refId, clientId, ClientSecret).then((response) => {\n dispatch({ type: IDVerificationAction.ID_VERIFICATION_CEM_OTP_VALIDATE_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: IDVerificationAction.ID_VERIFICATION_CEM_OTP_VALIDATE_SUCCESS, payload: error.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n })\n }\n}\n\nconst idVerifyResendOtp = (refId: any, mode: any) => {\n return function (dispatch: any, getState: any) {\n cemSimSwapResendOtp(refId, mode).then((response) => {\n dispatch({ type: IDVerificationAction.ID_VERIFICATION_CEM_OTP_RSEND_SUCCESS, payload: response });\n })\n .catch((error) => {\n //Display error\n if (error?.response) {\n dispatch({ type: IDVerificationAction.ID_VERIFICATION_CEM_OTP_RSEND_SUCCESS, payload: error.response });\n } else {\n dispatch({ type: SequenceManagerAction.GENERIC_ERROR, payload: error });\n }\n })\n }\n}\n\n\n\nexport { IDVerificationAction, OTPInitiate, OTPValidate, updateIDVerification, idVerifySendOtp, idVerifyValidateOtp, idVerifyResendOtp };","import { getProductOfferByID } from \"../api/api\";\nimport { SequenceManagerAction } from '../actions/SequenceManagerAction';\n\nconst enum ProductOfferAction {\n LOAD_PRODUCT_OFFER_SUCCESS = 'LOAD_PRODUCT_OFFER_SUCCESS',\n LOAD_PRODUCT_OFFER_FAILURE = 'LOAD_PRODUCT_OFFER_FAILURE'\n}\n\nconst getProductOfferById = (productId:String, lang:string) => {\n return function (dispatch:any, getState:any) {\n getProductOfferByID(productId).then((response) => {\n // let label = response.data?.data?.getProductOfferByID[0]?.offerLabels[0].name\n dispatch({type: ProductOfferAction.LOAD_PRODUCT_OFFER_SUCCESS, payload:{response:response.data, lang: lang}});\n dispatch({type: SequenceManagerAction.LOAD_PRODUCT_OFFER_COMPLETE});\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nexport { ProductOfferAction, getProductOfferById };","import { SequenceManagerAction } from './SequenceManagerAction';\nimport { mapCoverageCheck, getMainAndAroundODB } from \"../api/api\";\n\nconst enum FTTHServiceabilityAction {\n FTTH_COVERAGE_CHECK_SUCCESS = 'FTTH_COVERAGE_CHECK_SUCCESS',\n FTTH_COVERAGE_CHECK_FAILURE = 'FTTH_COVERAGE_CHECK_FAILURE',\n FTTH_SERVICEABILITY_UPDATE = 'FTTH_SERVICEABILITY_UPDATE',\n FTTH_UPDATE_MAP_LOCATION = 'FTTH_UPDATE_MAP_LOCATION',\n FTTH_GET_MAIN_AND_AROUND_ODBS = 'FTTH_GET_MAIN_AND_AROUND_ODBS',\n FTTH_CLEAR_ODBS = 'FTTH_CLEAR_ODBS'\n}\n\nconst updateLocation = (lat: any, lng: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: FTTHServiceabilityAction.FTTH_UPDATE_MAP_LOCATION, payload: {\"lat\": lat, \"lng\": lng } });\n }\n}\n\nconst getOdbs = (lat: any, lng: any) => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: FTTHServiceabilityAction.FTTH_CLEAR_ODBS });\n getMainAndAroundODB(lat, lng).then((response: any) => {\n dispatch({ type: FTTHServiceabilityAction.FTTH_GET_MAIN_AND_AROUND_ODBS, payload: response });\n })\n .catch((error) => {\n dispatch({ type: FTTHServiceabilityAction.FTTH_GET_MAIN_AND_AROUND_ODBS, payload: error.response });\n })\n }\n}\n\nconst coverageCheck = (lat: any, lng: any) => {\n return function (dispatch: any, getState: any) {\n mapCoverageCheck(lat, lng).then((response: any) => {\n dispatch({ type: FTTHServiceabilityAction.FTTH_COVERAGE_CHECK_SUCCESS, payload: response.data });\n })\n .catch((error) => {\n //Display error\n dispatch({type: SequenceManagerAction.GENERIC_ERROR, payload:error});\n })\n }\n}\n\nconst updateFTTHServiceability = (address: any, notes: any, odb:any, provider:any, cityName: any, feasibility:any = \"\") => {\n return function (dispatch: any, getState: any) {\n dispatch({ type: FTTHServiceabilityAction.FTTH_SERVICEABILITY_UPDATE, payload: {address: address, notes: notes, odb: odb, provider: provider,cityName: cityName, feasibility: feasibility} });\n dispatch({ type: SequenceManagerAction.SECTION_COMPLETE, payload: ['FTTHServiceability'] });\n }\n}\n\nexport { FTTHServiceabilityAction, coverageCheck, updateFTTHServiceability, updateLocation, getOdbs };"],"sourceRoot":""}