{"version":3,"sources":["redux/modals.js","TableBooking.js","redux/tableBooking.js","redux/authentication.js","redux/options.js","redux/rootReducer.js","redux/store.js","Home.js","core/utils/useLaunch.js","view/Loading.js","view/check-in/CheckIn.js","LoadTableBooking.js","Launching.js","App.js","reportWebVitals.js","index.js","view/TableBooking/Modals/ErrorModal.js","view/TableBooking/BookingView.js","View.js","redux/propertyData.js","Loading.js","Hooks/useBooking.js","view/TableBooking/BookingDetailsList.js","view/TableBooking/BookingDetails.js","view/TableBooking/FooterAdd.js","core/Layout/Footer.js","view/TableBooking/Modals/ModalsComponent.js","core/Layout/Header.js","core/Layout/Layout.js","view/TableBooking/TableBookingComp.js","redux/launch.js"],"names":["sendOTP","createAsyncThunk","_ref","Object","_Users_romulaspaulm_Developer_Lucid_TableBookingGuest_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__","_regeneratorRuntime","mark","_callee","obj","res","wrap","_context","prev","next","axios","get","concat","process","params","OTPFor","MobileNo","ContactNo","contactNoRef","headers","Authorization","token","Content-Type","then","response","console","log","data","sent","abrupt","stop","_x","apply","this","arguments","modalSlice","createSlice","name","initialState","modalTitle","otpData","reducers","handleModalTitle","state","action","payload","extraReducers","builder","addCase","fulfilled","actions","__webpack_require__","r","__webpack_exports__","react__WEBPACK_IMPORTED_MODULE_0__","react__WEBPACK_IMPORTED_MODULE_0___default","n","_view_TableBooking_TableBookingComp__WEBPACK_IMPORTED_MODULE_1__","TableBooking","props","a","createElement","setViewPage","getGuestTotalBooking","totalBooking","errorCode","message","getGuestListHandler","_ref2","_callee2","_context2","CurrentPageNumber","NoOfRowsPerPage","outletList","_x2","tableSlice","tableData","item","window","localStorage","getItem","JSON","parse","initialBooking","loggedIn","initialLoggedIn","guestList","sessionStorage","initialGuestList","guestTotalBooking","selectedProperty","initialProperty","selectedOutlet","initialOutlet","timeSlotList","isOpenBL","handleBooking","setItem","stringify","handleBookingClear","removeItem","handleLogin","handlePropertySelection","handleOutletSelection","handleIsOpenBL","authSlice","userData","initialUser","handleLogout","getTitleList","asyncToGenerator","titleList","map","title","value","titleId","label","titleName","getMobileCountryCode","mobileOption","mobileCountryCodeList","code","countryCode","telephoneCode","catch","error","optionsSlice","optionsTitle","initialTitle","optionsMobileCode","initialMobile","rootReducer","launch","authentication","propertyList","tableBooking","modals","options","store","configureStore","reducer","middleware","getDefaultMiddleware","serializableCheck","Home","react_default","Fragment","useLaunch","dispatch","useDispatch","launchData","useSelector","_useSearchParams","useSearchParams","searchParams","slicedToArray","_useState","useState","urlKey","_useState3","paramData","organizationId","_useState4","OrganizationId","setOrganizationId","_useState5","propertyId","_useState6","PropertyId","setPropertyId","_useState7","_useState8","propertyName","setPropertyName","_useState9","_useState10","outletCode","setOutletCode","_useState11","_useState12","outletName","setOutletName","_useState13","_useState14","remarks","setRemarks","_useState15","_useState16","setToken","refUrl","useRef","refToken","useEffect","current","getGuestAppToken","urlString","replace","post","username","password","requestIP","userId","isSuccessful","paramDataTemp","longUrlInput","clear","handleParamData","getOrgDetails","handlePageId","Loading","reactstrap_module","className","animation","color","CheckIn","propertyData","optionsData","_useState2","setTitle","setOptionsTitle","mobileNo","setMobileNo","setName","pax","setPax","imageUrl","setImageurl","_useState17","_useState18","_useState19","_useState20","_useState21","_useState22","_useState23","_useState24","saving","setSaving","_useState25","_useState26","checkInId","setCheckInId","_useState27","backgroundColor","_useState28","buttonUnSelectedStyle","setButtonUnSelectedStyle","_useState29","display","justifyContent","_useState30","logoStyle","setLogoStyle","_useState31","_useState32","propertyNameFontSettings","setPropertyNameFontSettings","_useState33","_useState34","outletNameFontSettings","setOutletNameFontSettings","_useState35","borderTop","_useState36","bodySettings","setBodySettings","_useState37","border","paddingTop","_useState38","bodyStyle","setBodyStyle","_useState39","_useState40","footerSettings","setFooterSettings","_useState41","fontWeight","fontSize","_useState42","footerFonts","setFooterFonts","_useState43","zIndex","_useState44","headerStyle","setHeaderStyle","titleRef","themeSettings","status","body","footer","header","objectSpread","nonSelectedButtonSettings","fontSettings","fontFamily","height","backgroundImage","backgroundImages","logoPosition","changeIconColor","flexDirection","bold","fontStyle","italic","alignment","size","outletDetails","otDetails","getPropertyList","getOutletList","forEach","outletListData","getOutletDetails","tokenOption","favicon","document","getElementById","href","length","View","style","src","alt","maxHeight","maxWidth","visibility","hideLogo","width","row","for","sm","id","placeholder","type","disabled","onChange","e","target","defaultValue","itm","key","min","trim","onClick","preventDefault","OutletCode","NoOfPax","NoOfTables","AssignedTables","GuestTitle","GuestName","GuestMobileNo","GuestEmailId","Status","IsSelfCheckIn","SystemDetails","ApplicationName","ApplicationVersion","BrowserName","BrowserVersion","DeviceId","DeviceType","IP","Mac","OPS","Source","SystemName","SystemTimeZoneId","alert","subMitHandler","view_Loading","react_router_dom","to","open","LoadTableBooking","lazy","Promise","resolve","bind","react","Launching","setSelfCheckIn","viewPage","setImageUrl","pageId","setPageId","tokenRef","refOtDetails","themePageId","getPageThemeSettingsetails","getPageDefaultThemeSettings","tableBookingHandler","handleViewPage","BookingId","split","BookingType","check_in_CheckIn","src_LoadTableBooking","App","react_router","path","element","src_Home","src_Launching","src_TableBooking","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","ReactDOM","createRoot","render","StrictMode","es","src_App","ErrorModal","modal","setModal","toggle","errorMessage","isOpen","BookingView","bookingStatusDetails","setBookingStatusDetails","setBookingStatusColor","setErrorMessage","reservationId","setReservationId","bookingRef","margin","bookingDetails","outletImageUrl","currentStatus","bookingStatusHandler","prpId","ooutlId","reservId","ReservationId","resId","borderRadius","textAlign","background","boxShadow","guestName","toLowerCase","index_es","icon","faCalendarXmark","index_esm","faClipboard","marginBottom","bookingId","borderRight","marginTop","padding","reservationDate","reservationTime","noOfGuest","paddingRight","cancelReason","showRefresh","textDecoration","paddingLeft","cursor","refresh_ccw","strokeWidth","bookedOn","bookingSource","showTableBookingLink","viewTableBooking","Modals_ErrorModal","setParamData","walkingStatusDetails","setWalkingStatusDetails","setBookingId","bookingType","view","setView","walkinRef","outletDetailsRef","backgroundRepeat","walkingBookingStatusHandler","CheckInId","walking","Wlcontent","walkInDetails","currentWaitlistNo","Confirmcontent","tableNos","showOrderNow","orderNowLink","orderNowDisplayName","CancelContent","outline","TableBookingComp","fluid","TableBooking_BookingView","checkInDate","checkInTime","propertySlice","initialPropertyData","query","bookmarks","suggestions","handleProperty","reactstrap__WEBPACK_IMPORTED_MODULE_1__","useBooking","setModalTitle","modalErrorMessage","setModalErrorMessage","otpReferenceId","setOtpReferenceId","otpExpiryDuration","setOtpExpiryDuration","setContactNo","setLoggedIn","bkng","otpHandler","Number","contactHandler","no","BookingDetailsList","isTabletOrMobile","useMediaQuery","modalsData","setIsOpenBL","currentPage","setCurrentPage","setTotalBooking","GuestTableBookingList","setGuestTableBookingList","spinnerToggle","setSpinnerToggle","guestRef","bookingLinkStyle","setBookingLinkStyle","gridheaderStyle","setGridheaderStyle","color1","setColor1","color2","setColor2","yourBookingGridSettings","headerColor","themeSettingsDefault","scrollTo","scrollHeight","overflow","setTimeout","minus_circle","plus_circle","setModalError","modalError","minHeight","responsive","colSpan","variant","bookingList","location","bookingDate","bookingTime","textDecorationLine","allowCancel","outcode","role","react_paginate_default","breakLabel","nextLabel","onPageChange","page","selected","handlePagination","forcePage","paginationDetail","currentPageNumber","pageRangeDisplayed","pageCount","Math","ceil","totalRecords","noOfRowsPerPage","previousLabel","renderOnZeroPageCount","activeClassName","pageClassName","breakClassName","pageLinkClassName","nextLinkClassName","breakLinkClassName","nextClassName","previousLinkClassName","previousClassName","containerClassName","BookingDetails","TableBooking_BookingDetailsList","FooterAdd","TableBooking_BookingDetails","Footer","TableBooking_FooterAdd","outletData","ModalsComponent","Modal","setAppElement","property","optionsTelephoneCode","setOptionsTelephoneCode","bookingHandlerToggle","setBookingHandlerToggle","inputOTP4FocRef","inputOTP4Ref","errorMessageOTP","setErrorMessageOTP","countDown","setCountDown","setSaveToggle","modalContent","setModalContent","FirstName","setFirstName","LastName","setLastName","diffNo","setSelectedTelephoneCode","setpropertyList","_useState45","_useState46","_useState47","_useState48","setOutletList","selectRestaRef","_useState49","content","top","left","right","bottom","marginRight","transform","minWidth","_useState50","customStyles","setCustomStyles","_useState51","_useState52","modalIsOpenLink","setIsOpenLink","_useState53","_useState54","openModalLink","afterOpenModal","closeModalLink","otpExpiryDurationTemp","Date","now","PropertyModal","prop","handleOutletList","SelectRestaurant","outlet","LoginModalContent","filter","field","autoFocus","renderer","minutes","seconds","OTPModalContent","max","innerRef","maxLength","date","intervalDelay","precision","autoStart","SaveModal","check","dateFormat","BookingTime","NoOfGuest","lib_default","onAfterOpen","onRequestClose","overlayClassName","paddingBottom","OTPReferenceId","OTP","contactNo","firstName","lastName","otpValidateHandler","Header","outletCount","setOutletCount","propertyCount","setPropertyCount","setOutletDetails","outletListRef","setHideLogo","changeIconStyle","setchangeIconStyle","loginStyle","setLoginStyle","logoImageStyle","setLogoImageStyle","logoPropertyAlign","setLogoPropertyAlign","loginPosition","backgroundSize","logoSize","logInLogOutFontSettings","_launchData$outletLis","defaultOutletObj","_launchData$outletLis3","sel","pr","propertyObj","_property$propertyDat2","outl","maxwidth","edit","float","position","Modals_ModalsComponent","Layout","children","Layout_Footer","setNoOfGuest","maxPax","setMaxPax","setBookingTime","buttonSelectedStyle","setButtonSelectedStyle","selectedTitle","setSelectedTitle","selectedTelephoneCode","EmailId","setEmailId","Instruction","setInstruction","saveToggle","mobileCodeRef","propertyRef","timeSlotRef","setDiffNo","d","toISOString","setBookingDate","setTimeSlotList","_useState55","_useState56","termsandConditionStyle","setTermsandcondtionsStyle","termsAndConditionFontSettings","selectedButtonSettings","maximumPax","timeSlotListHandler","BookingDate","moment","format","GuestDetails","GuestTitleId","ContactNoCountryCode","list","updateTableBookingData","selectedTitleId","core_Layout_Layout","Layout_Header","md","required","overflowY","time","timeSlot","minLength","enableInstruction","termsAndConditions","textUnderlineOffset","dangerouslySetInnerHTML","__html","TokenKey","_ref3","_callee3","_context3","_x3","_ref4","_callee4","_context4","_x4","_ref5","_callee5","_context5","PageId","_x5","_ref6","_callee6","_context6","_x6","launchSlice","initialData","initialTK","initialTheme","defaultTheme","initialOutletDetails"],"mappings":"88MASa,IAAMA,EAAUC,YAAiB,iBAAD,eAAAC,EAAAC,OAAAC,EAAA,EAAAD,CAAAE,IAAAC,KAAmB,SAAAC,EAAOC,GAAP,IAAAC,EAAA,OAAAJ,IAAAK,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACtCC,IAAMC,IAAN,GAAAC,OAAaC,6BAAb,uBAClB,CACCC,OAAO,CACLC,OAAO,EACPC,SAASZ,EAAIa,WAAab,EAAIc,cAEhCC,QAAS,CAAEC,cAAa,UAAAR,OAAYR,EAAIiB,QACxCC,eAAgB,qBAEjBC,KAAK,SAACC,GAKJ,OAHHC,QAAQC,IAAIF,EAASG,KAAKH,UAGhBA,EAASG,KAAKH,WAfiC,cAClDnB,EADkDE,EAAAqB,KAAArB,EAAAsB,OAAA,SAkBnDxB,GAlBmD,wBAAAE,EAAAuB,SAAA3B,MAAnB,gBAAA4B,GAAA,OAAAjC,EAAAkC,MAAAC,KAAAC,YAAA,IAqBhCC,EAAaC,YAAY,CACpCC,KAAM,SACNC,aAAc,CACZC,WAAY,GACZC,QAAQ,IAEVC,SAAU,CACRC,iBAAkB,SAACC,EAAOC,GACxBD,EAAMJ,WAAaK,EAAOC,QAC1BpB,QAAQC,IAAIkB,EAAOC,WAIrBC,cAAe,SAAAC,GACbA,EACGC,QAAQpD,EAAQqD,UAAW,SAACN,EAAOC,GAClCD,EAAMH,QAAUI,EAAOC,QACvBpB,QAAQC,IAAIkB,EAAOC,cAOdH,EAAqBP,EAAWe,QAAhCR,iBAEAP,MAAf,sFCxDAgB,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,GAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,IAUeO,UAPS,SAACC,GAEhB,OACOJ,EAAAK,EAAAC,cAACJ,EAAA,EAAD,CAAkBK,YAAcH,EAAMG,qgNCFnD,IA4BaC,EAAuBlE,YAAiB,oCAAD,eAAAC,EAAAC,OAAAC,EAAA,EAAAD,CAAAE,IAAAC,KAAsC,SAAAC,EAAOC,GAAP,IAAAC,EAAA,OAAAJ,IAAAK,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cACrFJ,EAAMK,IAAMC,IAAN,GAAAC,OAAaC,iEAAb,wBAA+E,CAC3EC,OAAO,CACLG,UAAUb,EAAIa,WAEhBE,QAAS,CAAEC,cAAa,UAAAR,OAAYR,EAAIiB,QACvCC,eAAgB,qBAEjBC,KAAK,SAAClB,GAGL,MAAO,CAAC2D,aAAa3D,EAAIsB,KAAKH,SAASwC,aAAcC,UAAW5D,EAAIsB,KAAKsC,UAAWC,QAAQ7D,EAAIsB,KAAKuC,WAX3B3D,EAAAsB,OAAA,SAatExB,GAbsE,wBAAAE,EAAAuB,SAAA3B,MAAtC,gBAAA4B,GAAA,OAAAjC,EAAAkC,MAAAC,KAAAC,YAAA,IAgBpCiC,EAAsBtE,YAAiB,mCAAD,eAAAuE,EAAArE,OAAAC,EAAA,EAAAD,CAAAE,IAAAC,KAAqC,SAAAmE,EAAOjE,GAAP,IAAAC,EAAA,OAAAJ,IAAAK,KAAA,SAAAgE,GAAA,cAAAA,EAAA9D,KAAA8D,EAAA7D,MAAA,cAChFJ,EAAQK,IAAMC,IAAN,GAAAC,OAAaC,iEAAb,4BAAmF,CAC/FC,OAAO,CACLyD,kBAAkB,EAClBC,gBAAgB,GAChBvD,UAAUb,EAAIa,WAEhBE,QAAS,CAAEC,cAAa,UAAAR,OAAYR,EAAIqE,WAAWpD,OAASjB,EAAIiB,QAC/DC,eAAgB,qBAElBC,KAAK,SAACC,GAKL,OAHHC,QAAQC,IAAIF,EAASG,KAAKH,UAGhBA,EAASG,KAAKH,WAf+D8C,EAAAzC,OAAA,SAkBjFxB,GAlBiF,wBAAAiE,EAAAxC,SAAAuC,MAArC,gBAAAK,GAAA,OAAAN,EAAApC,MAAAC,KAAAC,YAAA,IAyC1CyC,EAAavC,YAAY,CACpCC,KAAM,eACNC,aAAc,CACZsC,UAxFoB,WACrB,IAAMC,EAAOC,OAAOC,aAAaC,QAAQ,gBAEzC,OAAOH,EAAOI,KAAKC,MAAML,GAAQ,GAqFrBM,GACXC,SAnFsB,WACtB,IAAMP,EAAOC,OAAOC,aAAaC,QAAQ,YAEzC,QAAOH,GAAOI,KAAKC,MAAML,GAgFhBQ,GACTC,UA/EuB,WACvB,IAAMT,EAAOC,OAAOS,eAAeP,QAAQ,aAE3C,QAAOH,GAAOI,KAAKC,MAAML,GA4EdW,GACXC,kBAAkB,GAClBC,iBA5EsB,WACtB,IAAMb,EAAOC,OAAOS,eAAeP,QAAQ,YAE3C,QAAOH,GAAOI,KAAKC,MAAML,GAyERc,GACjBC,eAxEoB,WACpB,IAAMf,EAAOC,OAAOS,eAAeP,QAAQ,UAG3C,OADGvD,QAAQC,IAAIuD,KAAKC,MAAML,MACnBA,GAAOI,KAAKC,MAAML,GAoEVgB,GACfC,aAAa,GACbC,UAAS,GAEXtD,SAAU,CACRuD,cAAe,SAACrD,EAAOC,GACrBD,EAAMiC,UAAYhC,EAAOC,QACzBkC,aAAakB,QAAQ,eAAgBhB,KAAKiB,UAAUtD,EAAOC,WAE7DsD,mBAAoB,SAAAxD,GAClBA,EAAMiC,UAAY,GAElBW,eAAea,WAAW,iBAE5BC,YAAa,SAAC1D,EAAOC,GAClBD,EAAMyC,SAAWxC,EAAOC,QAExBkC,aAAakB,QAAQ,WAAYhB,KAAKiB,UAAUtD,EAAOC,WAE1DyD,wBAAyB,SAAC3D,EAAOC,GAC5BD,EAAM+C,iBAAmB9C,EAAOC,QAChCpB,QAAQC,IAAIkB,EAAOC,SACnB0C,eAAeU,QAAQ,WAAYhB,KAAKiB,UAAUtD,EAAOC,WAE9D0D,sBAAuB,SAAC5D,EAAOC,GAC7BD,EAAMiD,eAAiBhD,EAAOC,QAC9B0C,eAAeU,QAAQ,SAAUhB,KAAKiB,UAAUtD,EAAOC,UACvDpB,QAAQC,IAAIkB,EAAOC,UAEpB2D,eAAgB,SAAC7D,EAAOC,GACvBD,EAAMoD,SAAWnD,EAAOC,UAG3BC,cAAe,SAAAC,GACdA,EACGC,QAAQmB,EAAoBlB,UAAW,SAACN,EAAOC,GAC9CD,EAAM2C,UAAY1C,EAAOC,QACzBpB,QAAQC,IAAIkB,EAAOC,SACnB0C,eAAeU,QAAQ,YAAahB,KAAKiB,UAAUtD,EAAOC,YAG3DG,QAAQe,EAAqBd,UAAW,SAACN,EAAOC,GAC/CD,EAAM8C,kBAAoB7C,EAAOC,QACjCpB,QAAQC,IAAIkB,EAAOC,gBAWqG8B,EAAWzB,QAA9H8C,kBAAmCK,KAApBF,qBAAoBE,aAAaC,4BAAyBC,0BAAuBC,mBAEhG7B,MAAf,oHCjJa8B,EAAYrE,YAAY,CACnCC,KAAM,iBACNC,aAAc,CACZoE,SATgB,WAClB,IAAM7B,EAAOC,OAAOS,eAAeP,QAAQ,YAE3C,OAAOH,EAAOI,KAAKC,MAAML,GAAQ,GAMrB8B,IAEZlE,SAAU,CACR4D,YAAa,SAAC1D,EAAOC,GACnBD,EAAM+D,SAAW9D,EAAOC,QACxB0C,eAAeU,QAAQ,WAAYhB,KAAKiB,UAAUtD,EAAOC,WAE3D+D,aAAc,SAAAjE,GACZA,EAAM+D,SAAW,GAEjBnB,eAAea,WAAW,kBAKaK,EAAUvD,QAExCuD,KAFAJ,cAAaO,aAEbH,EAAf,i1MCtBK,IAYcI,EAAehH,YAAiB,uBAAD,eAAAC,EAAAC,OAAA+G,EAAA,EAAA/G,CAAAE,IAAAC,KAAyB,SAAAC,EAAOkB,GAAP,IAAAhB,EAAA,OAAAJ,IAAAK,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAC7DJ,EAAOK,IAAMC,IAAN,GAAAC,OAAaC,6BAAb,4BACN,CACAM,QAAS,CAAEC,cAAa,UAAAR,OAAYS,IACpCC,eAAgB,qBAEfC,KAAK,SAACC,GAGN,OADWA,EAASG,KAAKH,SACZuF,UAAUC,IAAI,SAAAC,GAAK,MAAK,CAACC,MAAMD,EAAME,QAASC,MAAQH,EAAMI,eATd9G,EAAAsB,OAAA,SAYtDxB,GAZsD,wBAAAE,EAAAuB,SAAA3B,MAAzB,gBAAA4B,GAAA,OAAAjC,EAAAkC,MAAAC,KAAAC,YAAA,IAgB7BoF,EAAyBzH,YAAiB,+BAAD,eAAAuE,EAAArE,OAAA+G,EAAA,EAAA/G,CAAAE,IAAAC,KAAiC,SAAAmE,EAAOhD,GAAP,IAAAkG,EAAA,OAAAtH,IAAAK,KAAA,SAAAgE,GAAA,cAAAA,EAAA9D,KAAA8D,EAAA7D,MAAA,cACrE8G,EAAe7G,IAAMC,IAAN,GAAAC,OAAaC,6BAAb,oCACf,CACFM,QAAS,CAAEC,cAAa,UAAAR,OAAYS,IACpCC,eAAgB,qBAEfC,KAAK,SAACC,GAGR,OADgBA,EAASG,KAAKH,SAClBgG,sBAAsBR,IAAI,SAAAS,GAAI,MAAK,CAACP,MAAMO,EAAKC,YAAaN,MAAQK,EAAKE,mBAElFC,MAAM,SAAAC,GAAK,OAAIpG,QAAQC,IAAImG,KAX0CvD,EAAAzC,OAAA,SAajE0F,GAbiE,wBAAAjD,EAAAxC,SAAAuC,MAAjC,gBAAAK,GAAA,OAAAN,EAAApC,MAAAC,KAAAC,YAAA,IAwCnC4F,EAvBmB1F,YAAY,CACtCC,KAAM,UACNC,aAAc,CACZyF,aAhDI,WACnB,IAAMlD,EAAOC,OAAOS,eAAeP,QAAQ,gBAE3C,OAAOH,EAAOI,KAAKC,MAAML,GAAQ,GA6CJmD,GACdC,kBA3CK,WACnB,IAAMpD,EAAOC,OAAOS,eAAeP,QAAQ,qBAE3C,OAAOH,EAAOI,KAAKC,MAAML,GAAQ,GAwCDqD,IAEpBzF,SAAS,GAEPK,cAAe,SAAAC,GACXA,EACGC,QAAQ6D,EAAa5D,UAAW,SAACN,EAAOC,GACvCD,EAAMoF,aAAenF,EAAOC,QAC5B0C,eAAeU,QAAQ,eAAgBhB,KAAKiB,UAAUtD,EAAOC,YAG9DG,QAAQsE,EAAqBrE,UAAW,SAACN,EAAOC,GAC/CD,EAAMsF,kBAAoBrF,EAAOC,QAClC0C,eAAeU,QAAQ,oBAAqBhB,KAAKiB,UAAUtD,EAAOC,eAMnF,QC9DGsF,EAJK,CACnBC,WAAQC,iBAAgBC,iBAAcC,iBAAcC,WAAQC,WCLvDC,EAAQC,YAAe,CAC3BC,QAAST,EACTU,WAAY,SAAAC,GACV,OAAOA,EAAqB,CAC1BC,mBAAmB,8CCAVC,EAPF,WAET,OACIC,EAAArF,EAAAC,cAAAoF,EAAArF,EAAAsF,SAAA,4CCuHOC,EAxGG,WAChB,IAAMC,EAAWC,cACXC,EAAaC,YAAY,SAAC5G,GAAD,OAAWA,EAAMyF,SAF1BoB,EAGCC,cAAhBC,EAHe3J,OAAA4J,EAAA,EAAA5J,CAAAyJ,EAAA,MAAAI,EAILC,mBAASH,EAAa/I,IAAI,SAApCmJ,EAJe/J,OAAA4J,EAAA,EAAA5J,CAAA6J,EAAA,MAAAG,EAKsBF,mBAC1CP,EAAWU,UAAUC,gBANDC,EAAAnK,OAAA4J,EAAA,EAAA5J,CAAAgK,EAAA,GAKfI,EALeD,EAAA,GAKCE,EALDF,EAAA,GAAAG,EAQcR,mBAASP,EAAWU,UAAUM,YAR5CC,EAAAxK,OAAA4J,EAAA,EAAA5J,CAAAsK,EAAA,GAQfG,EAReD,EAAA,GAQHE,EARGF,EAAA,GAAAG,EASkBb,mBAAS,IAT3Bc,EAAA5K,OAAA4J,EAAA,EAAA5J,CAAA2K,EAAA,GASfE,EATeD,EAAA,GASDE,EATCF,EAAA,GAAAG,EAUcjB,mBAAS,IAVvBkB,EAAAhL,OAAA4J,EAAA,EAAA5J,CAAA+K,EAAA,GAUfE,EAVeD,EAAA,GAUHE,EAVGF,EAAA,GAAAG,EAWcrB,mBAAS,IAXvBsB,EAAApL,OAAA4J,EAAA,EAAA5J,CAAAmL,EAAA,GAWfE,EAXeD,EAAA,GAWHE,EAXGF,EAAA,GAAAG,EAYQzB,mBAAS,IAZjB0B,EAAAxL,OAAA4J,EAAA,EAAA5J,CAAAuL,EAAA,GAYfE,EAZeD,EAAA,GAYNE,EAZMF,EAAA,GAAAG,EAaI7B,mBAASP,EAAWjI,OAbxBsK,EAAA5L,OAAA4J,EAAA,EAAA5J,CAAA2L,EAAA,GAafrK,EAbesK,EAAA,GAaRC,EAbQD,EAAA,GAchBE,EAASC,iBAAO,MAChBC,EAAWD,iBAAO,MAsFxB,OApFAE,oBAAU,WACR,GAAK1C,EAAWU,UAAUC,gBAAmB4B,EAAOI,SAO7C,GAAI3C,EAAWU,UAAUC,gBAAkB4B,EAAOI,QACvD7C,EACE8C,YAAiB,CACf/B,eAAgBb,EAAWU,UAAUC,eACrCO,WAAYlB,EAAWU,UAAUM,cAIrCyB,EAASE,SAAU,OACd,GAAI3C,EAAWU,UAAUC,iBAAmB4B,EAAOI,QAAS,CACjE,IAAME,EAAYrC,EAAOsC,QAAQ,KAAM,KACvC1L,IACG2L,KAAK,4CAA6C,CACjDvC,OAAQqC,EACRG,SAAU,wBACVC,SAAU,sBACVC,UAAW,GACXC,OAAQ,KAETlL,KAAK,SAAClB,GACL,IAA8B,IAA1BA,EAAIsB,KAAK+K,aAAuB,CAClC,IAAMC,EAAgBtM,EAAIsB,KAAKiL,aAC/B,GAAID,EAAc1C,iBAAmBE,EAKnC,OAJApF,aAAa8H,QACbtH,eAAesH,QAEfpL,QAAQC,IAAIiL,GACLA,KAIZpL,KAAK,SAAClB,GACDA,GACFoB,QAAQC,IAAIrB,EAAI4J,eAAgBE,GAChCf,EAAS0D,YAAgBzM,IACzB+I,EACE8C,YAAiB,CACf/B,eAAgB9J,EAAI4J,eACpBO,WAAYnK,EAAIiK,cAGpB7I,QAAQC,IAAIrB,GACZ0L,EAASE,SAAU,IAEf9B,GAAmBb,EAAWjI,OAAU0K,EAASE,UACnD7C,EAAS8C,YAAiB,CAAE/B,iBAAgBK,gBAC5CuB,EAASE,SAAU,KAI3BJ,EAAOI,SAAU,QAxDjBxK,QAAQC,IAAI4H,EAAWU,UAAUC,gBACjCb,EAAS2D,YAAcjD,IACvB+B,EAAOI,SAAU,EACZnC,GACHV,EAAS4D,YAAa,KAsDzB,CAAC1D,EAAWU,UAAUC,iBAEzB+B,oBAAU,WACJ1C,IACFc,EAAkBd,EAAWU,UAAUC,gBACvCQ,EAAcnB,EAAWU,UAAUM,YACnCO,EAAgBvB,EAAWU,UAAUY,cACrCK,EAAc3B,EAAWU,UAAUgB,YACnCK,EAAc/B,EAAWU,UAAUoB,YACnCK,EAAWnC,EAAWU,UAAUwB,UAElCI,EAAStC,EAAWjI,QACnB,CAACiI,EAAWU,YAEfgC,oBAAU,aAQP,CAAC7B,EAAgBK,EAAYlB,EAAWjI,QAEpC,CAAEuJ,eAAcI,aAAYI,aAAYI,UAASnK,wBC3G3C4L,EAVC,WACZ,OAEYhE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKC,UAAU,uCACZlE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAASE,WAAS,EAACC,MAAM,cCqgB7BC,EAzeC,SAAC3J,GACf,IAAMyF,EAAWC,cACXjB,EAASmB,YAAY,SAAC5G,GAAD,OAAWA,EAAMyF,SACtCmF,EAAehE,YAAY,SAAC5G,GAAD,OAAWA,EAAM2F,eAC5CkF,EAAcjE,YAAY,SAAC5G,GAAD,OAAWA,EAAM8F,UAJxBmB,EAKCC,mBAASzB,EAAO/G,OALjBoM,EAAA1N,OAAA4J,EAAA,EAAA5J,CAAA6J,EAAA,GAKlBvI,EALkBoM,EAAA,GAKX7B,EALW6B,EAAA,GAAA1D,EAOCF,mBAAS,OAPVK,EAAAnK,OAAA4J,EAAA,EAAA5J,CAAAgK,EAAA,GAOlB9C,EAPkBiD,EAAA,GAOXwD,EAPWxD,EAAA,GAAAG,EASeR,mBAAS,IATxBU,EAAAxK,OAAA4J,EAAA,EAAA5J,CAAAsK,EAAA,GASlBtC,EATkBwC,EAAA,GASJoD,EATIpD,EAAA,GAAAG,EAUOb,mBAAS,IAVhBc,EAAA5K,OAAA4J,EAAA,EAAA5J,CAAA2K,EAAA,GAUlBkD,EAVkBjD,EAAA,GAURkD,EAVQlD,EAAA,GAAAG,EAWDjB,mBAAS,IAXRkB,EAAAhL,OAAA4J,EAAA,EAAA5J,CAAA+K,EAAA,GAWlBzI,EAXkB0I,EAAA,GAWZ+C,EAXY/C,EAAA,GAAAG,EAYHrB,mBAAS,GAZNsB,EAAApL,OAAA4J,EAAA,EAAA5J,CAAAmL,EAAA,GAYlB6C,EAZkB5C,EAAA,GAYb6C,EAZa7C,EAAA,GAAAG,EAcOzB,qBAdP0B,EAAAxL,OAAA4J,EAAA,EAAA5J,CAAAuL,EAAA,GAclB2C,EAdkB1C,EAAA,GAcR2C,EAdQ3C,EAAA,GAAAG,EAeW7B,mBAAS,IAfpB8B,EAAA5L,OAAA4J,EAAA,EAAA5J,CAAA2L,EAAA,GAelBV,EAfkBW,EAAA,GAeNV,EAfMU,EAAA,GAAAwC,EAgBWtE,mBAAS,IAhBpBuE,EAAArO,OAAA4J,EAAA,EAAA5J,CAAAoO,EAAA,GAgBlB/C,EAhBkBgD,EAAA,GAgBN/C,GAhBM+C,EAAA,GAAAC,GAiBWxE,mBAAS,IAjBpByE,GAAAvO,OAAA4J,EAAA,EAAA5J,CAAAsO,GAAA,GAiBlB/D,GAjBkBgE,GAAA,GAiBN7D,GAjBM6D,GAAA,GAAAC,GAkBe1E,mBAAS,IAlBxB2E,GAAAzO,OAAA4J,EAAA,EAAA5J,CAAAwO,GAAA,GAkBlB3D,GAlBkB4D,GAAA,GAkBJ3D,GAlBI2D,GAAA,GAAAC,GAmBG5E,oBAAS,GAnBZ6E,GAAA3O,OAAA4J,EAAA,EAAA5J,CAAA0O,GAAA,GAmBlBE,GAnBkBD,GAAA,GAmBVE,GAnBUF,GAAA,GAAAG,GAoBShF,mBAAS,IApBlBiF,GAAA/O,OAAA4J,EAAA,EAAA5J,CAAA8O,GAAA,GAoBlBE,GApBkBD,GAAA,GAoBPE,GApBOF,GAAA,GAAAG,GAqBiCpF,mBAAS,CACjEqF,gBAAiB,QACjB7B,MAAO,UAvBgB8B,GAAApP,OAAA4J,EAAA,EAAA5J,CAAAkP,GAAA,GAqBlBG,GArBkBD,GAAA,GAqBKE,GArBLF,GAAA,GAAAG,GA2BSzF,mBAAS,CACzC0F,QAAS,OACTC,eAAgB,SA7BOC,GAAA1P,OAAA4J,EAAA,EAAA5J,CAAAuP,GAAA,GA2BlBI,GA3BkBD,GAAA,GA2BPE,GA3BOF,GAAA,GAAAG,GAgCuC/F,mBAAS,CACvEwD,MAAO,UAjCgBwC,GAAA9P,OAAA4J,EAAA,EAAA5J,CAAA6P,GAAA,GAgClBE,GAhCkBD,GAAA,GAgCQE,GAhCRF,GAAA,GAAAG,GAoCmCnG,mBAAS,CACnEwD,MAAO,UArCgB4C,GAAAlQ,OAAA4J,EAAA,EAAA5J,CAAAiQ,GAAA,GAoClBE,GApCkBD,GAAA,GAoCME,GApCNF,GAAA,GAAAG,GAwCevG,mBAAS,CAC/CqF,gBAAiB,QACjBmB,UAAW,SA1CYC,GAAAvQ,OAAA4J,EAAA,EAAA5J,CAAAqQ,GAAA,GAwClBG,GAxCkBD,GAAA,GAwCJE,GAxCIF,GAAA,GAAAG,GA4CS5G,mBAAS,CACzCqF,gBAAiB,QACjBwB,OAAQ,OACRC,WAAY,SA/CWC,GAAA7Q,OAAA4J,EAAA,EAAA5J,CAAA0Q,GAAA,GA4ClBI,GA5CkBD,GAAA,GA4CPE,GA5COF,GAAA,GAAAG,GAkDmBlH,mBAAS,CACnDqF,gBAAiB,UACjBM,eAAgB,WApDOwB,GAAAjR,OAAA4J,EAAA,EAAA5J,CAAAgR,GAAA,GAkDlBE,GAlDkBD,GAAA,GAkDFE,GAlDEF,GAAA,GAAAG,GAsDatH,mBAAS,CAC7CuH,WAAY,SACZC,SAAU,OACVhE,MAAO,YAzDgBiE,GAAAvR,OAAA4J,EAAA,EAAA5J,CAAAoR,GAAA,GAsDlBI,GAtDkBD,GAAA,GAsDLE,GAtDKF,GAAA,GAAAG,GA2Da5H,mBAAS,CAC7C6G,OAAQ,OACRxB,gBAAiB,UACjBwC,OAAQ,MA9DeC,GAAA5R,OAAA4J,EAAA,EAAA5J,CAAA0R,GAAA,GA2DlBG,GA3DkBD,GAAA,GA2DLE,GA3DKF,GAAA,GAiEnBG,GAAWhG,kBAAO,GAExBE,oBAAU,WACR,GAAI5D,EAAO2J,eAAsD,IAArC3J,EAAO2J,cAAcpQ,KAAKqQ,OAAc,CAClEvQ,QAAQC,IAAI0G,EAAO2J,eACnB,IAAME,EAAO7J,EAAO2J,cAAcpQ,KAAKoQ,cAAcE,KAC/CC,EAAS9J,EAAO2J,cAAcpQ,KAAKoQ,cAAcG,OACjDC,EAAS/J,EAAO2J,cAAcpQ,KAAKoQ,cAAcI,OACvD9C,GAAyB,SAAC7O,GACxB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiB+C,EAAKI,0BAA0BnD,gBAA/B,GAAAtO,OACVqR,EAAKI,0BAA0BnD,iBAClC1O,EAAK0O,gBACT7B,MAAO4E,EAAKI,0BAA0BC,aAAajF,MAA5C,GAAAzM,OACAqR,EAAKI,0BAA0BC,aAAajF,OAC/C7M,EAAK6M,MACTkF,WAAYN,EAAKI,0BAA0BC,aAAaC,WAA5C,GAAA3R,OACLqR,EAAKI,0BAA0BC,aAAaC,YAC/C,OAIRxC,GAA4B,SAACvP,GAC3B,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAK,GAAAzM,OAAKuR,EAAOrC,yBAAyBzC,OAC1CkF,WAAU,GAAA3R,OAAKuR,EAAOrC,yBAAyByC,gBAInDpC,GAA0B,SAAC3P,GACzB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAK,GAAAzM,OAAKuR,EAAOjC,uBAAuB7C,OACxCkF,WAAU,GAAA3R,OAAKuR,EAAOjC,uBAAuBqC,gBAIjDV,GAAe,SAACrR,GACd,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiBiD,EAAOjD,gBAAP,GAAAtO,OACVuR,EAAOjD,iBACV1O,EAAK0O,gBACTsD,OAAM,GAAA5R,OAAKuR,EAAOK,QAClBC,gBAAe,OAAA7R,OAASuR,EAAOO,iBAAiB,GAAjC,SAInB3C,GAA4B,SAACvP,GAC3B,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAK,GAAAzM,OAAKuR,EAAOrC,yBAAyBzC,OAC1CkF,WAAU,GAAA3R,OAAKuR,EAAOrC,yBAAyByC,gBAInDpC,GAA0B,SAAC3P,GACzB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAK,GAAAzM,OAAKuR,EAAOjC,uBAAuB7C,OACxCkF,WAAU,GAAA3R,OAAKuR,EAAOjC,uBAAuBqC,gBAIjD/B,GAAgB,SAAChQ,GACf,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiB+C,EAAK/C,gBAAL,GAAAtO,OACVqR,EAAK/C,iBACR1O,EAAK0O,oBAIbS,GAAa,SAACnP,GACZ,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAGEgP,eAAgB2C,EAAOQ,aAAP,GAAA/R,OACTuR,EAAOQ,cACVnS,EAAKoS,gBACTC,cAAuC,UAAxBV,EAAOQ,aAA2B,cAAgB,OAIrE7B,GAAa,SAACtQ,GACZ,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiB+C,EAAK/C,gBAAL,GAAAtO,OACVqR,EAAK/C,iBACR1O,EAAK0O,gBACTuD,gBAAe,OAAA7R,OAASqR,EAAKS,iBAAiB,GAA/B,KACfhC,OAAQuB,EAAKvB,OAAL,GAAA9P,OAAiBqR,EAAKvB,QAAWlQ,EAAKkQ,OAC9C6B,WAAU,GAAA3R,OAAKqR,EAAKK,aAAaC,YACjClF,MAAK,GAAAzM,OAAKqR,EAAKK,aAAajF,OAC5B+D,WAAYa,EAAKK,aAAaQ,KAAO,OAAS,SAC9CC,UAAWd,EAAKK,aAAaU,OAAS,SAAW,aAIrD9B,GAAkB,SAAC1Q,GACjB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiBgD,EAAOhD,gBAAP,GAAAtO,OACVsR,EAAOhD,iBACV1O,EAAK0O,gBACTM,eAAgB0C,EAAOI,aAAaW,UAApB,GAAArS,OACTsR,EAAOI,aAAaW,WACvBzS,EAAKgP,mBAIbgC,GAAe,SAAChR,GACd,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAO6E,EAAOI,aAAajF,MAApB,GAAAzM,OACAsR,EAAOI,aAAajF,OACvB7M,EAAK6M,MACT6F,KAAMhB,EAAOI,aAAaY,KAApB,GAAAtS,OACCsR,EAAOI,aAAaY,MACvB1S,EAAK6M,MACTkF,WAAU,GAAA3R,OAAKsR,EAAOI,aAAaC,YACnCnB,WAAYc,EAAOI,aAAaQ,KAAO,OAAS,SAChDC,UAAWb,EAAOI,aAAaU,OAAS,SAAW,eAIxD,CAAC5K,EAAO2J,gBAEX/F,oBAAU,WACR,GAAI5D,EAAO+K,cAAcA,cAAe,CACtC,IAAMC,EAAYhL,EAAO+K,cAAcA,cACvCjF,EAAYkF,EAAUnF,UAGpB7F,EAAO/G,OAASyQ,GAAS7F,UAC3BL,EAASxD,EAAO/G,OAChB+H,EAASiK,YAAgBjL,EAAO/G,QAChC+H,EAASkK,YAAc,CAAEhJ,cAAYjJ,MAAO+G,EAAO/G,SACnD+H,EAASvC,EAAauB,EAAO/G,QAC7B+H,EAAS9B,EAAqBc,EAAO/G,QAErCyQ,GAAS7F,SAAU,IAEpB,CAAC7D,EAAO+K,cAAcA,gBAEzBnH,oBAAU,WACJuB,EAAaA,aAAajF,cAC5BiF,EAAaA,aAAajF,aAAaiL,QAAQ,SAAC1O,GAC1CA,EAAKyF,aAAeA,IACtBO,GAAgBhG,EAAK+F,iBAK1B,CAAC2C,EAAaA,aAAcjD,KAE/B0B,oBAAU,WACJ5D,EAAOoL,eAAe/O,YACxB2D,EAAOoL,eAAe/O,WAAW8O,QAAQ,SAAC1O,GACpCA,EAAKmG,aAAeA,GACtBK,GAAcxG,EAAKuG,eAIxB,CAAChD,EAAOoL,eAAe/O,WAAYuG,IA2FtC,OApCAgB,oBAAU,WACR,IAAMhC,EAAY5B,EAAO4B,UACzBS,GAAcT,EAAUM,YACxBW,EAAcjB,EAAUgB,YACpB5C,EAAO/G,OAAS2I,EAAUgB,YAC5B5B,EACEqK,YAAiB,CACfC,YAAatL,EAAO/G,MACpB2J,WAAYhB,EAAUgB,eAI3B,CAAC5C,EAAO4B,UAAW5B,EAAO/G,QAE7B2K,oBAAU,WACR,IAAM2H,EAAUC,SAASC,eAAe,WACpC5F,IAAU0F,EAAQG,KAAO7F,IAC5B,CAACA,IAEJjC,oBAAU,WACJwB,EAAYzF,aAAagM,OAAS,GACpCpG,EAAgBH,EAAYzF,eAC7B,CAACyF,EAAYzF,eAcZgH,GAGA9F,EAAArF,EAAAC,cAACmQ,EAAA,EAAD,CAAMjF,UAAWA,GAAWvE,WAAYpC,EAAO4B,UAAUM,aAIzDrB,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,KACEjE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAYC,UAAU,YAAY8G,MAAOrC,IACvC3I,EAAArF,EAAAC,cAAA,OAAKoQ,MAAOvE,GAAWvC,UAAU,QAC9Bc,GACChF,EAAArF,EAAAC,cAAA,OACEqQ,IAAKjG,EACLd,UAAU,iCACVgH,IAAI,MACJF,MAAO,CACLG,UAAW,OACXC,SAAU,QACVC,WACElM,EAAO2J,eAEL,SADF3J,EAAO2J,cAAcpQ,KAAKoQ,cAAcI,OAAOoC,SAE3C,SACA,aAIZtL,EAAArF,EAAAC,cAAA,OACEoQ,MAAO,CACL1E,QAAS,OACTsD,cAAe,SACflC,WAAY,SAGd1H,EAAArF,EAAAC,cAAA,QAAMsJ,UAAU,OAAO8G,MAAO/D,IAC3B9E,GACK,IACRnC,EAAArF,EAAAC,cAAA,QAAMsJ,UAAU,OAAO8G,MAAOnE,IAC3BlF,GAAc,QAQvB3B,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEC,UAAU,qCACV8G,MAAOpD,IAEP5H,EAAArF,EAAAC,cAAA,OAAKoQ,MAAO,CAAEO,MAAO,MAAOhC,OAAQ,UAClCvJ,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,KACEjE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAWuH,KAAG,GACZxL,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAOwH,IAAI,SAASC,GAAI,GAAxB,eAGA1L,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKyH,GAAI,GACP1L,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE0H,GAAG,OACHvS,KAAK,OACLwS,YAAY,MACZC,KAAK,OACLC,UAAQ,KAGZ9L,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKyH,GAAI,GACP1L,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE0H,GAAG,WACHvS,KAAK,WACLwS,YAAY,YACZC,KAAK,MACLE,SAAU,SAACC,GAAD,OAAOpH,EAAYoH,EAAEC,OAAOhO,YAI5C+B,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAWuH,KAAG,GACZxL,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAOwH,IAAI,OAAOC,GAAI,GAAtB,UAGA1L,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKyH,GAAI,GACP1L,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE0H,GAAG,QACHvS,KAAK,QACL8S,aAAc,MACdL,KAAK,SACLE,SAAU,SAACC,GAAD,OAAOvH,EAASuH,EAAEC,OAAOhO,SAElCa,GACCA,EAAaf,IAAI,SAACoO,EAAKR,GACrB,OAAO3L,EAAArF,EAAAC,cAAA,UAAQwR,IAAKT,GAAKQ,EAAIhO,WAIrC6B,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKyH,GAAI,GACP1L,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE0H,GAAG,OACHvS,KAAK,OACLwS,YAAY,OACZG,SAAU,SAACC,GAAD,OAAOnH,EAAQmH,EAAEC,OAAOhO,YAIxC+B,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAWuH,KAAG,GACZxL,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAOwH,IAAI,MAAMC,GAAI,GAArB,SAGA1L,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKyH,GAAI,GACP1L,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE0H,GAAG,MACHvS,KAAK,MACLyS,KAAK,SACLE,SAAU,SAACC,GAAD,OAAOjH,EAAOiH,EAAEC,OAAOhO,QACjCoO,IAAK,OAKbrM,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,iCACblE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE6H,SAAiC,IAAvB1S,EAAKkT,OAAOxB,SAAiBnG,EACvCqG,MAAO7E,GACPoG,QAAS,SAACP,GACJrH,EAASmG,QAAU,GACjB1R,EAAK0R,OAAS,EACZhG,EAAM,GArNR,SAACkH,GACrBA,EAAEQ,iBAEF/U,IACG2L,KADH,GAAAzL,OAEOC,6BAFP,0CAGI,CACE6U,WAAY1K,EACZ2K,QAAS5H,EACT6H,WAAY,EACZC,eAAgB,GAChBC,WAAY7O,EACZ8O,UAAW1T,EACX2T,cAAepI,EACfqI,aAAc,GACdC,OAAQ,EACRC,eAAe,EAEfC,cAAe,CACbC,gBAAiB,GACjBC,mBAAoB,MACpBC,YAAa,GACbC,eAAgB,GAChBC,SAAU,GACVC,WAAY,MACZC,GAAI,GACJC,IAAK,GACLC,IAAK,GACLC,OAAQ,YACRC,WAAY,UACZC,iBAAkB,IAGtB,CACE7V,QAAS,CAAEC,cAAa,UAAAR,OAAYS,IACpCC,eAAgB,qBAGnBC,KAAK,SAAClB,GAQL,GAPAuO,IAAU,GACiB,IAAvBvO,EAAIsB,KAAKsC,WACX+K,GAAa3O,EAAIsB,KAAKH,SAASuN,WAKN,IAAvB1O,EAAIsB,KAAKsC,UAAiB,CAC5B,IAAM4D,EAAQxH,EAAIsB,KAClBsV,MAAMpP,EAAM3D,YAsKEgT,CAAcjC,GACdrG,IAAU,IAEVqI,MAAM,2BAGRA,MAAM,0BAGRA,MAAM,kCAhBZ,WAuBDtI,IAAU1F,EAAArF,EAAAC,cAACsT,EAAD,QAGflO,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAY+G,MAAO1D,IACjBtH,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEC,UAAU,iCACV8G,MAAOhD,IAEPhI,EAAArF,EAAAC,cAAA,OAAKoQ,MAAO,CAAEO,MAAO,UACnBvL,EAAArF,EAAAC,cAAA,aACEoF,EAAArF,EAAAC,cAAA,MAAIoQ,MAAO1C,IAAX,eACAtI,EAAArF,EAAAC,cAACuT,EAAA,EAAD,CACEC,GAAG,GACH7B,QAAS,kBAAM1Q,OAAOwS,KAAK,wBAAyB,WACpDrD,MAAO1C,IAEPtI,EAAArF,EAAAC,cAAA,kCCnfH0T,SAZU,WAEpB,IAAM7T,EAAe8T,eAAK,kBAAMC,QAAAC,UAAAnW,KAAA4B,EAAAwU,KAAA,aAEhC,OACA1O,EAAArF,EAAAC,cAAC+T,EAAA,SAAD,KACA3O,EAAArF,EAAAC,cAACH,EAAD,SC+KUmU,EAxKG,WACD1O,IAAf,IACMG,EAAaC,YAAY,SAAC5G,GAAD,OAAWA,EAAMyF,SAC1CG,EAAegB,YAAY,SAAC5G,GAAD,OAAWA,EAAM4F,eAC5Ca,EAAWC,cAJKO,EAMgBC,oBAAS,GANzB4D,EAAA1N,OAAA4J,EAAA,EAAA5J,CAAA6J,EAAA,GAMFkO,GANErK,EAAA,GAAAA,EAAA,IAAA1D,EAQUF,qBARVK,EAAAnK,OAAA4J,EAAA,EAAA5J,CAAAgK,EAAA,GAQfgO,EARe7N,EAAA,GAQLpG,EARKoG,EAAA,GAAAG,EASsBR,mBAC1CP,EAAWU,UAAUC,gBAVDM,EAAAxK,OAAA4J,EAAA,EAAA5J,CAAAsK,EAAA,GAAAK,GAAAH,EAAA,GAAAA,EAAA,GAacV,mBAASP,EAAWU,UAAUM,aAb5CK,EAAA5K,OAAA4J,EAAA,EAAA5J,CAAA2K,EAAA,GAafJ,EAbeK,EAAA,GAaHF,EAbGE,EAAA,GAAAG,EAckBjB,mBAAS,IAd3BkB,EAAAhL,OAAA4J,EAAA,EAAA5J,CAAA+K,EAAA,GAcfF,EAdeG,EAAA,GAAAG,GAAAH,EAAA,GAeclB,mBAASP,EAAWU,UAAUgB,aAf5CG,EAAApL,OAAA4J,EAAA,EAAA5J,CAAAmL,EAAA,GAeHD,GAfGE,EAAA,GAAAA,EAAA,IAAAG,EAgBQzB,mBAASP,EAAWU,UAAUwB,SAhBtCD,EAAAxL,OAAA4J,EAAA,EAAA5J,CAAAuL,EAAA,GAgBfE,EAhBeD,EAAA,GAgBNE,EAhBMF,EAAA,GAAAG,EAiBI7B,mBAASP,EAAWjI,OAjBxBsK,EAAA5L,OAAA4J,EAAA,EAAA5J,CAAA2L,EAAA,GAiBfrK,EAjBesK,EAAA,GAiBRC,EAjBQD,EAAA,GAAAwC,EAkBoBtE,mBAAS,IAlB7BuE,EAAArO,OAAA4J,EAAA,EAAA5J,CAAAoO,EAAA,GAkBf4D,EAlBe3D,EAAA,GAAAC,GAAAD,EAAA,GAmBcvE,mBAASP,EAAW7E,aAnBlC6J,EAAAvO,OAAA4J,EAAA,EAAA5J,CAAAsO,EAAA,GAAAE,GAAAD,EAAA,GAAAA,EAAA,GAoBUzE,mBAAS,KApBnB2E,EAAAzO,OAAA4J,EAAA,EAAA5J,CAAAwO,EAAA,GAoBfN,EApBeO,EAAA,GAoBLwJ,EApBKxJ,EAAA,GAAAC,EAqBM5E,mBAASP,EAAW2O,QArB1BvJ,EAAA3O,OAAA4J,EAAA,EAAA5J,CAAA0O,EAAA,GAqBfwJ,EArBevJ,EAAA,GAqBPwJ,EArBOxJ,EAAA,GAsBhByJ,EAAWrM,kBAAO,GAElBsM,IADWtM,iBAAOvD,EAAaxC,UAChB+F,kBAAO,IAxBN+C,GAyBAhF,mBAAS,KAAxBwO,GAzBetY,OAAA4J,EAAA,EAAA5J,CAAA8O,GAAA,MAoCtB7C,oBAAU,WACR,IAAM2H,EAAUC,SAASC,eAAe,WACpC5F,IAAU0F,EAAQG,KAAO7F,GAE7BxM,QAAQC,IAAIuM,IACX,CAACA,IAEJjC,oBAAU,WACJ1C,IACFmB,EACsC,SAApCnB,EAAWU,UAAUM,WACjBhB,EAAWU,UAAUM,WACrB,MAENmB,EAAWnC,EAAWU,UAAUwB,SAChC1H,EAAYwF,EAAWyO,UACvBG,EAAU5O,EAAW2O,QACrBrM,EAAStC,EAAWjI,OACpB4J,EACsC,SAApC3B,EAAWU,UAAUgB,WACmB,SAApC1B,EAAWU,UAAUgB,WACrB,QAIH+G,GAAiBzI,EAAWjI,QAC/B+H,EACEkP,YAA2B,CACzBhO,aACA+N,eACAhX,MAAOiI,EAAWjI,SAGtB+H,EACEmP,YAA4B,CAC1BjO,aACA+N,eACAhX,MAAOiI,EAAWjI,WAIvB,CACDiI,EAAWU,UAAUM,WACrBhB,EAAWU,UAAUwB,QACrBlC,EAAWyO,SACXzO,EAAW2O,OACX3O,EAAWjI,MACXiI,EAAWU,UAAUgB,aAGvBgB,oBAAU,WAEN3K,GACoC,SAApCiI,EAAWU,UAAUgB,YACe,KAApC1B,EAAWU,UAAUgB,aACpBoN,GAAanM,QAGdmM,GAAanM,SAAU,EAEvBxK,QAAQC,IAAI,mBAEb,CAACL,EAAOiI,EAAWU,YAEtBgC,oBAAU,WACJ1C,EAAW6J,cAAcA,eAC3B6E,EAAY1O,EAAW6J,cAAcA,cAAclF,UAErDxM,QAAQC,IACN4H,EAAW6J,eAAiB7J,EAAW6J,cAAcA,eAEZ,IAAvC7J,EAAW6J,cAAclP,WAC3BmF,EAAS1G,YAAiB4G,EAAW6J,cAAcjP,WAEpD,CAACoF,EAAW6J,gBAEf,IAAMqF,GAAsB,WAC1BpP,EAAS4D,YAAa,KA8CxB,OAhBAhB,oBAAU,WACJR,EA3BY,mBAAZA,GAEFsM,GAAe,GACf1O,EAAS4D,YAAa,KAElBzE,EAAaxC,SACfqD,EAAS4D,YAAa,KAEtB8K,GAAe,GACf1O,EACEqP,YACExP,EAAArF,EAAAC,cAACmQ,EAAA,EAAD,CACE0E,UAAWlN,EAAQmN,MAAM,KAAK,GAC9BC,YAAapN,EAAQmN,MAAM,KAAK,GAChCH,oBAAqBA,GACrBhO,WAAYF,MAIlBlB,EAAS4D,YAAa,KAUf1D,EAAWU,WAAaV,EAAWU,UAAUC,gBACtDb,EAAS4D,YAAa,KAEvB,CAACxB,EAASyC,EAAU3E,EAAWU,YAElCgC,oBAAU,WAC8BmM,EAASlM,SAA9C5K,GACA,CAACA,IAEJ2K,oBAAU,WACJpB,IAAcgJ,SAAS3M,MAAQ2D,EAAe,oBACjD,CAACA,IAEW,IAAXqN,EACKF,EACa,IAAXE,EACFhP,EAAArF,EAAAC,cAACgV,EAAD,MACa,IAAXZ,EACFhP,EAAArF,EAAAC,cAACiV,EAAD,CAAkBhV,YAAaA,SADjC,GC5JMiV,MAff,WAEE,OACE9P,EAAArF,EAAAC,cAAA,WACAoF,EAAArF,EAAAC,cAACmV,EAAA,EAAD,KACE/P,EAAArF,EAAAC,cAACmV,EAAA,EAAD,CAAOC,KAAK,QAASC,QAASjQ,EAAArF,EAAAC,cAACsV,EAAD,QAC9BlQ,EAAArF,EAAAC,cAACmV,EAAA,EAAD,CAAOC,KAAM,IAAIC,QAAWjQ,EAAArF,EAAAC,cAACuV,EAAD,OAC3BnQ,EAAArF,EAAAC,cAACmV,EAAA,EAAD,CAAOC,KAAK,iBAAiBC,QAASjQ,EAAArF,EAAAC,cAACwV,EAAA,QAAD,QACvCpQ,EAAArF,EAAAC,cAACmV,EAAA,EAAD,CAAOC,KAAK,QAAQC,QAASjQ,EAAArF,EAAAC,cAACmQ,EAAA,EAAD,YCJpBsF,EAZS,SAAAC,GAClBA,GAAeA,aAAuBC,UACxCrW,EAAA8R,EAAA,GAAA1T,KAAA4B,EAAAwU,KAAA,WAAqBpW,KAAK,SAAAzB,GAAiD,IAA9C2Z,EAA8C3Z,EAA9C2Z,OAAQC,EAAsC5Z,EAAtC4Z,OAAQC,EAA8B7Z,EAA9B6Z,OAAQC,EAAsB9Z,EAAtB8Z,OAAQC,EAAc/Z,EAAd+Z,QAC3DJ,EAAOF,GACPG,EAAOH,GACPI,EAAOJ,GACPK,EAAOL,GACPM,EAAQN,mBCSDO,IAASC,WAAWnG,SAASC,eAAe,SACpDmG,OACH/Q,EAAArF,EAAAC,cAACoF,EAAArF,EAAMqW,WAAP,KACEhR,EAAArF,EAAAC,cAACuT,EAAA,EAAD,KACCnO,EAAArF,EAAAC,cAACqW,EAAA,EAAD,CAAUxR,MAAOA,GACfO,EAAArF,EAAAC,cAACsW,EAAD,UASPb,sJCCec,MA1Bf,SAAoBzW,GACD4F,YAAY,SAAA5G,GAAK,OAAIA,EAAMyF,SAA1C,IADuBwB,EAEGC,oBAAS,GAFZ4D,EAAA1N,OAAA4J,EAAA,EAAA5J,CAAA6J,EAAA,GAEhByQ,EAFgB5M,EAAA,GAET6M,EAFS7M,EAAA,GAIjB8M,EAAS,kBAAMD,GAAUD,IAMjC,OAJArO,oBAAU,WACFrI,EAAM6W,cAAcF,GAAUD,IACnC,CAAC1W,EAAM6W,eAGRvR,EAAArF,EAAAC,cAAA,WACEoF,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAOuN,OAAQJ,EAAOE,OAAQA,GAC5BtR,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,KACCvJ,EAAM6W,cAEPvR,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,KACEjE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAQG,MAAM,YAAYmI,QAAS+E,EAAQrH,KAAK,MAAhD,qBCofKwH,EAnfK,SAAC/W,GACnB,IAAMyE,EAASmB,YAAY,SAAC5G,GAAD,OAAWA,EAAMyF,SADfwB,GAEZP,cACmBQ,mBAASlG,EAAM6G,aAHtBiD,EAAA1N,OAAA4J,EAAA,EAAA5J,CAAA6J,EAAA,GAGtBU,EAHsBmD,EAAA,GAGVhD,EAHUgD,EAAA,GAAA1D,EAIHF,mBAASzB,EAAO/G,OAJb6I,EAAAnK,OAAA4J,EAAA,EAAA5J,CAAAgK,EAAA,GAItB1I,EAJsB6I,EAAA,GAIf0B,EAJe1B,EAAA,GAAAG,EAK2BR,mBAAS,IALpCU,EAAAxK,OAAA4J,EAAA,EAAA5J,CAAAsK,EAAA,GAKtBsQ,EALsBpQ,EAAA,GAKAqQ,EALArQ,EAAA,GAAAG,EAMuBb,mBAAS,WANhCc,EAAA5K,OAAA4J,EAAA,EAAA5J,CAAA2K,EAAA,GAMFmQ,GANElQ,EAAA,GAAAA,EAAA,IAAAG,EAOGjB,mBAAS,IAPZkB,EAAAhL,OAAA4J,EAAA,EAAA5J,CAAA+K,EAAA,GAOtBmD,EAPsBlD,EAAA,GAOZiN,EAPYjN,EAAA,GAAAG,EAQWrB,mBAAS,IARpBsB,EAAApL,OAAA4J,EAAA,EAAA5J,CAAAmL,EAAA,GAQtBsP,EARsBrP,EAAA,GAQR2P,EARQ3P,EAAA,GAAAG,EASOzB,mBAASlG,EAAM+R,YATtBnK,EAAAxL,OAAA4J,EAAA,EAAA5J,CAAAuL,EAAA,GAStBN,EATsBO,EAAA,GASVN,EATUM,EAAA,GAAAG,EAUa7B,mBAASlG,EAAM+U,WAV5B/M,EAAA5L,OAAA4J,EAAA,EAAA5J,CAAA2L,EAAA,GAUtBqP,EAVsBpP,EAAA,GAUPqP,EAVOrP,EAAA,GAWvBsP,EAAanP,kBAAO,GAXGqC,EAYKtE,mBAAS,CACzCqF,gBAAiB,QACjByB,WAAY,OACZuK,OAAQ,QAfmB9M,EAAArO,OAAA4J,EAAA,EAAA5J,CAAAoO,EAAA,GAYtB0C,EAZsBzC,EAAA,GAYX0C,EAZW1C,EAAA,GAAAC,EAsBWxE,mBAAS,CAC/CqF,gBAAiB,QACjBmB,UAAW,SAxBgB/B,EAAAvO,OAAA4J,EAAA,EAAA5J,CAAAsO,EAAA,GAsBRmC,GAtBQlC,EAAA,GAAAA,EAAA,IAAAC,GA0Be1E,mBAAS,CACnDqF,gBAAiB,UACjBM,eAAgB,WA5BWhB,GAAAzO,OAAA4J,EAAA,EAAA5J,CAAAwO,GAAA,GA0BtB0C,GA1BsBzC,GAAA,GA0BN0C,GA1BM1C,GAAA,GAAAC,GA8BS5E,mBAAS,CAC7CuH,WAAY,SACZC,SAAU,OACVhE,MAAO,YAjCoBqB,GAAA3O,OAAA4J,EAAA,EAAA5J,CAAA0O,GAAA,GA8BtB8C,GA9BsB7C,GAAA,GA8BT8C,GA9BS9C,GAAA,GAAAG,GAmCShF,mBAAS,CAC7C6G,OAAQ,OACRxB,gBAAiB,UACjBwC,OAAQ,MAtCmB5C,GAAA/O,OAAA4J,EAAA,EAAA5J,CAAA8O,GAAA,GAmCtB+C,GAnCsB9C,GAAA,GAmCT+C,GAnCS/C,GAAA,GAAAG,GAyCmCpF,mBAAS,CACvEwD,MAAO,UA1CoB8B,GAAApP,OAAA4J,EAAA,EAAA5J,CAAAkP,GAAA,GAyCIc,IAzCJZ,GAAA,GAAAA,GAAA,IAAAG,GA6C+BzF,mBAAS,CACnEwD,MAAO,UA9CoBoC,GAAA1P,OAAA4J,EAAA,EAAA5J,CAAAuP,GAAA,GA6CEa,IA7CFV,GAAA,GAAAA,GAAA,IAiDZ3D,kBAAO,GAExBE,oBAAU,WACR,GAAI5D,EAAO2J,eAAsD,IAArC3J,EAAO2J,cAAcpQ,KAAKqQ,OAAc,CAClEvQ,QAAQC,IAAI0G,EAAO2J,eACnB,IAAME,EAAO7J,EAAO2J,cAAcpQ,KAAKoQ,cAAcE,KAC/CC,EAAS9J,EAAO2J,cAAcpQ,KAAKoQ,cAAcG,OACjDC,EAAS/J,EAAO2J,cAAcpQ,KAAKoQ,cAAcI,OAEvDN,GAAe,SAACrR,GACd,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiBiD,EAAOjD,gBAAP,GAAAtO,OACVuR,EAAOjD,iBACV1O,EAAK0O,gBACTsD,OAAM,GAAA5R,OAAKuR,EAAOK,QAClBC,gBAAe,OAAA7R,OAASuR,EAAOO,iBAAiB,GAAjC,SAInB3C,GAA4B,SAACvP,GAC3B,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAK,GAAAzM,OAAKuR,EAAOrC,yBAAyBzC,OAC1CkF,WAAU,GAAA3R,OAAKuR,EAAOrC,yBAAyByC,gBAInDpC,GAA0B,SAAC3P,GACzB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAK,GAAAzM,OAAKuR,EAAOjC,uBAAuB7C,OACxCkF,WAAU,GAAA3R,OAAKuR,EAAOjC,uBAAuBqC,gBAIjDzB,EAAa,SAACtQ,GACZ,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiB+C,EAAK/C,gBAAL,GAAAtO,OACVqR,EAAK/C,iBACR1O,EAAK0O,gBACTuD,gBAAe,OAAA7R,OAASqR,EAAKS,iBAAiB,GAA/B,KACfhC,OAAQuB,EAAKvB,OAAL,GAAA9P,OAAiBqR,EAAKvB,QAAWlQ,EAAKkQ,OAC9C6B,WAAU,GAAA3R,OAAKqR,EAAKK,aAAaC,YACjClF,MAAK,GAAAzM,OAAKqR,EAAKK,aAAajF,OAC5B+D,WAAYa,EAAKK,aAAaQ,KAAO,OAAS,SAC9CC,UAAWd,EAAKK,aAAaU,OAAS,SAAW,aAKrDxC,EAAgB,SAAChQ,GACf,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiB+C,EAAK/C,gBAAL,GAAAtO,OACVqR,EAAK/C,iBACR1O,EAAK0O,oBAIbgC,GAAkB,SAAC1Q,GACjB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiBgD,EAAOhD,gBAAP,GAAAtO,OACVsR,EAAOhD,iBACV1O,EAAK0O,gBACTM,eAAgB0C,EAAOI,aAAaW,UAApB,GAAArS,OACTsR,EAAOI,aAAaW,WACvBzS,EAAKgP,mBAGbgC,GAAe,SAAChR,GACd,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAO6E,EAAOI,aAAajF,MAApB,GAAAzM,OACAsR,EAAOI,aAAajF,OACvB7M,EAAK6M,MACT6F,KAAMhB,EAAOI,aAAaY,KAApB,GAAAtS,OACCsR,EAAOI,aAAaY,MACvB1S,EAAK6M,MACTkF,WAAU,GAAA3R,OAAKsR,EAAOI,aAAaC,YACnCnB,WAAYc,EAAOI,aAAaQ,KAAO,OAAS,SAChDC,UAAWb,EAAOI,aAAaU,OAAS,SAAW,eAIxD,CAAC5K,EAAO2J,gBAEX/F,oBAAU,WACRJ,EAASxD,EAAO/G,QACf,CAAC+G,EAAO/G,QAEX2K,oBAAU,WACRJ,EAASxD,EAAOoL,eAAenS,OAC/BI,QAAQC,IAAI0G,EAAOoL,iBAClB,CAACpL,EAAOoL,iBAEXxH,oBAAU,WACJ2O,IACF3C,EAAY2C,EAAqBQ,eAAeC,gBAChDP,EAAsB,WACpB,MAA0D,cAAtDF,EAAqBQ,eAAeE,cAC/B,QACiD,cAAtDV,EAAqBQ,eAAeE,cAC/B,QACiD,eAAtDV,EAAqBQ,eAAeE,cAC/B,QAE+C,iBAAtDV,EAAqBQ,eAAeE,cAE7B,aAHT,MAMH,CAACV,IAEJ,IAAMW,GAAuB,SAACC,EAAOC,EAASC,GAG5Cha,QAAQC,IAAIuZ,EAAWhP,SACvBgP,EAAWhP,SACTvL,IACGC,IADH,GAAAC,OAEOC,iEAFP,2BAGI,CACEC,OAAQ,CACN0J,WAAY+Q,EACZ7F,WAAY8F,EACZE,cAAeD,GAEjBta,QAAS,CAAEC,cAAa,UAAAR,OAAYS,GAAS+G,EAAO/G,QACpDC,eAAgB,qBAGnBC,KAAK,SAAClB,GACsB,IAAvBA,EAAIsB,KAAKsC,WAEX2W,EAAwBva,EAAIsB,KAAKH,UAER,IAAvBnB,EAAIsB,KAAKsC,YACX6W,EAAgBza,EAAIsB,KAAKuC,SACzB0W,EAAwBva,EAAIsB,KAAKH,aAGzCyZ,EAAWhP,SAAU,GA2CvB,OAxCAD,oBAAU,WACR,GAAI5D,EAAO/G,MAAO,CAEhB,GAAIsC,EAAM6G,YAAc7G,EAAM+R,WAE5BjL,EAAc9G,EAAM6G,YACpBS,EAActH,EAAM+R,YACpBsF,EAAiBrX,EAAM+U,WACvB4C,GACE3X,EAAM6G,WACN7G,EAAM+R,WACN/R,EAAM+U,gBAEH,IACJ1N,GACD5C,EAAO+K,cAAcA,eACrB/K,EAAO4B,UAAUwB,QAAQmN,MAAM,KAAK,GACpC,CAEAlO,EAAcrC,EAAO4B,UAAUM,YAC/BW,EAAc7C,EAAO4B,UAAUgB,YAC/BgQ,EAAiB5S,EAAO4B,UAAUwB,QAAQmN,MAAM,KAAK,IAErD,IAAMgD,EAAQvT,EAAO4B,UAAUwB,QAAQmN,MAAM,KAAK,GAClD2C,GACElT,EAAO4B,UAAUM,WACjBlC,EAAO4B,UAAUgB,WACjB2Q,GAGJla,QAAQC,IAAIiC,EAAM6G,WAAY7G,EAAM+R,cAErC,CACD/R,EAAM6G,WACN7G,EAAM+R,WACN/R,EAAM+U,UACNtQ,EAAO+K,cAAcA,cACrB/K,EAAO/G,QAIP4H,EAAArF,EAAAC,cAAC+T,EAAA,SAAD,KACG+C,EAAqBQ,gBACpBlS,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAM+G,MAAOpD,GACX5H,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAYC,UAAU,4BAA4B8G,MAAOrC,IACtD3D,EACChF,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,qCACblE,EAAArF,EAAAC,cAAA,OACEqQ,IAAKjG,EACLgG,MAAO,CACLG,UAAW,OACXC,SAAU,QACVuH,aAAc,WAKpB3S,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,qCACblE,EAAArF,EAAAC,cAAA,OACEsJ,UAAU,gBACV8G,MAAO,CACL4H,UAAW,SACXC,WAAY,QACZF,aAAc,MACdG,UACE,8EAGJ9S,EAAArF,EAAAC,cAAA,MAAIsJ,UAAU,MAAM8G,MAAO,CAAE5G,MAAO,SACjCsN,GACCA,EAAqBQ,eAAe/P,WAAY,KAEpDnC,EAAArF,EAAAC,cAAA,MAAIoQ,MAAO,CAAE5G,MAAO,QAAUF,UAAU,SACrCwN,GACCA,EAAqBQ,eAAevQ,iBAMhD3B,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAUC,UAAU,aAClBlE,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,0CACblE,EAAArF,EAAAC,cAAA,sBACY,IACT8W,GACCA,EAAqBQ,eAAea,YAG1C/S,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,QACblE,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,0CAAf,4BAC4B,IACzBwN,GACCA,EAAqBQ,eAAeE,cAAcY,eAEtDhT,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,0CAEX,cADDwN,EAAqBQ,eAAeE,eAEnCpS,EAAArF,EAAAC,cAACqY,EAAA,EAAD,CACEC,KAAMC,IACNjP,UAAU,2CACV8G,MAAO,CAAE5C,SAAU,UAIrB,cADDsJ,EAAqBQ,eAAeE,eAEnCpS,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,qCACblE,EAAArF,EAAAC,cAACwY,EAAA,EAAD,CAAepI,MAAO,CAAE5C,SAAU,WAIpC,eADDsJ,EAAqBQ,eAAeE,eAEnCpS,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,qCACblE,EAAArF,EAAAC,cAACwY,EAAA,EAAD,CAAepI,MAAO,CAAE5C,SAAU,WAIpC,iBADDsJ,EAAqBQ,eAAeE,eAEnCpS,EAAArF,EAAAC,cAACqY,EAAA,EAAD,CACEC,KAAMG,IACNnP,UAAU,2CACV8G,MAAO,CAAE5C,SAAU,WAIzBpI,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,+CACblE,EAAArF,EAAAC,cAAA,MAAIoQ,MAAO,CAAE7C,WAAY,MAAOmL,aAAc,QAC3C,IACA5B,GACCA,EAAqBQ,eAAeqB,YAG1CvT,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,yCACblE,EAAArF,EAAAC,cAAA,oCAGFoF,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,sCACblE,EAAArF,EAAAC,cAAA,0CAEFoF,EAAArF,EAAAC,cAAA,OACEsJ,UAAU,iCACV8G,MAAO,CAAE5D,UAAW,oBAEpBpH,EAAArF,EAAAC,cAAA,OACEoQ,MAAO,CACLO,MAAO,UACPiI,YAAa,kBACbC,UAAW,MACXC,QAAS,OACTd,UAAW,SACXxK,SAAU,QAEZlE,UAAU,QAEVlE,EAAArF,EAAAC,cAAA,aACG8W,GACCA,EAAqBQ,eAAeyB,gBACtC3T,EAAArF,EAAAC,cAAA,qBAGJoF,EAAArF,EAAAC,cAAA,OACEoQ,MAAO,CACLO,MAAO,QACPiI,YAAa,kBACbC,UAAW,MACXC,QAAS,OACTd,UAAW,SACXxK,SAAU,QAEZlE,UAAU,QAEVlE,EAAArF,EAAAC,cAAA,aACG8W,GACCA,EAAqBQ,eAAe0B,gBACtC5T,EAAArF,EAAAC,cAAA,qBAGJoF,EAAArF,EAAAC,cAAA,OACEoQ,MAAO,CACLO,MAAO,SACPkI,UAAW,MACXC,QAAS,OACTd,UAAW,SACXxK,SAAU,QAEZlE,UAAU,QAETwN,GACC1R,EAAArF,EAAAC,cAAA,aACG8W,EAAqBQ,eAAe2B,UADvC,UAEE7T,EAAArF,EAAAC,cAAA,OAAKoQ,MAAO,CAAE8I,aAAc,QAA5B,aAKR9T,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,0CACblE,EAAArF,EAAAC,cAAA,UACEoF,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAOG,MAAO,SACXsN,GACCA,EAAqBQ,eAAeE,eAC/B,MAGbpS,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,0CACblE,EAAArF,EAAAC,cAAA,SAAOoQ,MAAO,CAAE5C,SAAU,SACvB,CACCsJ,GAEI,cADFA,EAAqBQ,eAAeE,eAEpCV,EAAqBQ,eAAe6B,cAEvCrC,GAEG,iBADFA,EAAqBQ,eAAeE,eAChB,CAClB,qDAIRpS,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,qCACZwN,GACCA,EAAqBQ,eAAe8B,aAClChU,EAAArF,EAAAC,cAAA,OACE2R,QAAS,WACPyF,EAAWhP,SAAU,EACrBqP,GACEhR,EACAU,EACA+P,IAGJ9G,MAAO,CACLiJ,eAAgB,OAChB7P,MAAO,QACP8P,YAAa,MACbC,OAAQ,YAGVnU,EAAArF,EAAAC,cAACwZ,EAAA,EAAD,CACEnK,KAAM,GACNoK,YAAY,MACZnQ,UAAU,aAKpBlE,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,sCACflE,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,0CACblE,EAAArF,EAAAC,cAAA,SAAOoQ,MAAO,CAAE5C,SAAU,QAAUlE,UAAU,QAC5ClE,EAAArF,EAAAC,cAAA,QAAMoQ,MAAO,CAAE8I,aAAc,QAA7B,cACCpC,GACCA,EAAqBQ,eAAeoC,SAAU,MAIpDtU,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,qCACblE,EAAArF,EAAAC,cAAA,SAAOoQ,MAAO,CAAE5C,SAAU,SACxBpI,EAAArF,EAAAC,cAAA,QAAMoQ,MAAO,CAAE8I,aAAc,QAA7B,mBAA6D,IAC5DpC,GACCA,EAAqBQ,eAAeqC,gBAG1CvU,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,0CACZwN,GACCA,EAAqBQ,eAAesC,sBAClCxU,EAAArF,EAAAC,cAAA,OAAKoQ,MAAO,CAAEsI,aAAc,QAC1BtT,EAAArF,EAAAC,cAAA,aACEoF,EAAArF,EAAAC,cAAA,KACE2R,QAAS7R,EAAM+Z,iBACfzJ,MAAO,CAAE5G,MAAO,OAAQ+P,OAAQ,YAFlC,2BAWZnU,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEC,UAAU,iCACV8G,MAAOhD,IAEPhI,EAAArF,EAAAC,cAAA,OAAKoQ,MAAO,CAAEO,MAAO,UACnBvL,EAAArF,EAAAC,cAAA,aACEoF,EAAArF,EAAAC,cAAA,MAAIoQ,MAAO1C,IAAX,eACAtI,EAAArF,EAAAC,cAACuT,EAAA,EAAD,CACEC,GAAG,GACH7B,QAAS,kBACP1Q,OAAOwS,KAAK,wBAAyB,WAEvCrD,MAAO1C,IAEPtI,EAAArF,EAAAC,cAAA,iCAQdoF,EAAArF,EAAAC,cAAC8Z,EAAD,CAAYnD,aAAcA,sBCiDjBxG,IA3hBF,SAACrQ,GACZ,IAAMyF,EAAWC,cACXjB,EAASmB,YAAY,SAAC5G,GAAD,OAAWA,EAAMyF,SAFtBwB,EAGYC,mBAASzB,EAAO4B,WAH5ByD,EAAA1N,OAAA4J,EAAA,EAAA5J,CAAA6J,EAAA,GAGfI,EAHeyD,EAAA,GAGJmQ,EAHInQ,EAAA,GAAA1D,EAIIF,mBAASzB,EAAO/G,OAJpB6I,EAAAnK,OAAA4J,EAAA,EAAA5J,CAAAgK,EAAA,GAIf1I,EAJe6I,EAAA,GAIR0B,EAJQ1B,EAAA,GAAAG,EAKkCR,mBAAS,IAL3CU,EAAAxK,OAAA4J,EAAA,EAAA5J,CAAAsK,EAAA,GAKfwT,EALetT,EAAA,GAKOuT,EALPvT,EAAA,GAAAG,EAMYb,mBAASlG,EAAM+U,WAN3B/N,EAAA5K,OAAA4J,EAAA,EAAA5J,CAAA2K,EAAA,GAMf8R,EANe7R,EAAA,GAMJoT,EANIpT,EAAA,GAAAG,EAOYjB,mBAChClG,EAAMoL,WAAa3G,EAAO4B,UAAUwB,QAAQmN,MAAM,KAAK,IARnC5N,EAAAhL,OAAA4J,EAAA,EAAA5J,CAAA+K,EAAA,GAOfiE,EAPehE,EAAA,GAOJiE,EAPIjE,EAAA,GAAAG,EAWArB,mBAASlG,EAAMiV,aAA9BoF,EAXeje,OAAA4J,EAAA,EAAA5J,CAAAmL,EAAA,MAAAI,EAYEzB,mBAAS,GAZX0B,EAAAxL,OAAA4J,EAAA,EAAA5J,CAAAuL,EAAA,GAYf2S,EAZe1S,EAAA,GAYT2S,EAZS3S,EAAA,GAAAG,EAckB7B,mBAAS,IAd3B8B,EAAA5L,OAAA4J,EAAA,EAAA5J,CAAA2L,EAAA,GAcf8O,EAde7O,EAAA,GAcDmP,EAdCnP,EAAA,GAehBwS,EAAYrS,kBAAO,GACnBsS,EAAmBtS,kBAAO,GAhBVqC,EAiBYtE,mBAAS,CACzC0F,QAAS,OACTC,eAAgB,SAnBIpB,GAAArO,OAAA4J,EAAA,EAAA5J,CAAAoO,EAAA,GAAAE,IAAAD,GAAA,GAAAA,GAAA,GAsBYvE,mBAAS,CACzCqF,gBAAiB,QACjBwB,OAAQ,OACRC,WAAY,UAzBQrC,GAAAvO,OAAA4J,EAAA,EAAA5J,CAAAsO,GAAA,GAsBfwC,GAtBevC,GAAA,GAsBJwC,GAtBIxC,GAAA,GAAAC,GA2BsB1E,mBAAS,CACnDqF,gBAAiB,UACjBM,eAAgB,WA7BIhB,GAAAzO,OAAA4J,EAAA,EAAA5J,CAAAwO,GAAA,GA2Bf0C,GA3BezC,GAAA,GA2BC0C,GA3BD1C,GAAA,GAAAC,GA+BgB5E,mBAAS,CAC7CuH,WAAY,SACZC,SAAU,OACVhE,MAAO,YAlCaqB,GAAA3O,OAAA4J,EAAA,EAAA5J,CAAA0O,GAAA,GA+BF+C,IA/BE9C,GAAA,GAAAA,GAAA,IAAAG,GAoCgBhF,mBAAS,CAC7C6G,OAAQ,OACRxB,gBAAiB,UACjBwC,OAAQ,MAvCY5C,GAAA/O,OAAA4J,EAAA,EAAA5J,CAAA8O,GAAA,GAoCf+C,GApCe9C,GAAA,GAoCF+C,GApCE/C,GAAA,GAAAG,GA0C0CpF,mBAAS,CACvEwD,MAAO,UA3Ca8B,GAAApP,OAAA4J,EAAA,EAAA5J,CAAAkP,GAAA,GA0CWc,IA1CXZ,GAAA,GAAAA,GAAA,IAAAG,GA8CsCzF,mBAAS,CACnEwD,MAAO,UA/CaoC,GAAA1P,OAAA4J,EAAA,EAAA5J,CAAAuP,GAAA,GA8CSa,IA9CTV,GAAA,GAAAA,GAAA,IAAAG,GAiDoC/F,mBAAS,CACjEqF,gBAAiB,QACjB7B,MAAO,UAnDawC,GAAA9P,OAAA4J,EAAA,EAAA5J,CAAA6P,GAAA,GAiDfR,GAjDeS,GAAA,GAiDQR,GAjDRQ,GAAA,GAqDtB7D,oBAAU,WACR,GAAI5D,EAAO2J,eAAsD,IAArC3J,EAAO2J,cAAcpQ,KAAKqQ,OAAc,CAClEvQ,QAAQC,IAAI0G,EAAO2J,eACnB,IAAME,EAAO7J,EAAO2J,cAAcpQ,KAAKoQ,cAAcE,KAC/CC,EAAS9J,EAAO2J,cAAcpQ,KAAKoQ,cAAcG,OACjDC,EAAS/J,EAAO2J,cAAcpQ,KAAKoQ,cAAcI,OAEvDN,GAAe,SAACrR,GACd,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiBiD,EAAOjD,gBAAP,GAAAtO,OACVuR,EAAOjD,iBACV1O,EAAK0O,gBACTsD,OAAM,GAAA5R,OAAKuR,EAAOK,QAClBC,gBAAe,OAAA7R,OAASuR,EAAOO,iBAAiB,GAAjC,KACf2L,iBAAkB,gBAItBtO,GAA4B,SAACvP,GAC3B,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAK,GAAAzM,OAAKuR,EAAOrC,yBAAyBzC,OAC1CkF,WAAU,GAAA3R,OAAKuR,EAAOrC,yBAAyByC,gBAInDpC,GAA0B,SAAC3P,GACzB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAK,GAAAzM,OAAKuR,EAAOjC,uBAAuB7C,OACxCkF,WAAU,GAAA3R,OAAKuR,EAAOjC,uBAAuBqC,gBAIjDzB,GAAa,SAACtQ,GACZ,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiB+C,EAAK/C,gBAAL,GAAAtO,OACVqR,EAAK/C,iBACR1O,EAAK0O,gBACTuD,gBAAe,OAAA7R,OAASqR,EAAKS,iBAAiB,GAA/B,KACfhC,OAAQuB,EAAKvB,OAAL,GAAA9P,OAAiBqR,EAAKvB,QAAWlQ,EAAKkQ,OAC9C6B,WAAU,GAAA3R,OAAKqR,EAAKK,aAAaC,YACjClF,MAAK,GAAAzM,OAAKqR,EAAKK,aAAajF,OAC5B+D,WAAYa,EAAKK,aAAaQ,KAAO,OAAS,SAC9CC,UAAWd,EAAKK,aAAaU,OAAS,SAAW,aAGrD3D,GAAyB,SAAC7O,GACxB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiB+C,EAAKI,0BAA0BnD,gBAA/B,GAAAtO,OACVqR,EAAKI,0BAA0BnD,iBAClC1O,EAAK0O,gBACT7B,MAAO4E,EAAKI,0BAA0BC,aAAajF,MAA5C,GAAAzM,OACAqR,EAAKI,0BAA0BC,aAAajF,OAC/C7M,EAAK6M,MACTkF,WAAYN,EAAKI,0BAA0BC,aAAaC,WAA5C,GAAA3R,OACLqR,EAAKI,0BAA0BC,aAAaC,YAC/C,OAIRrB,GAAkB,SAAC1Q,GACjB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiBgD,EAAOhD,gBAAP,GAAAtO,OACVsR,EAAOhD,iBACV1O,EAAK0O,gBACTM,eAAgB0C,EAAOI,aAAaW,UAApB,GAAArS,OACTsR,EAAOI,aAAaW,WACvBzS,EAAKgP,mBAGbgC,GAAe,SAAChR,GACd,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAO6E,EAAOI,aAAajF,MAApB,GAAAzM,OACAsR,EAAOI,aAAajF,OACvB7M,EAAK6M,MACT6F,KAAMhB,EAAOI,aAAaY,KAApB,GAAAtS,OACCsR,EAAOI,aAAaY,MACvB1S,EAAK6M,MACTkF,WAAU,GAAA3R,OAAKsR,EAAOI,aAAaC,YACnCnB,WAAYc,EAAOI,aAAaQ,KAAO,OAAS,SAChDC,UAAWb,EAAOI,aAAaU,OAAS,SAAW,eAIxD,CAAC5K,EAAO2J,gBAEX/F,oBAAU,WACJ5D,EAAO4B,YACT4B,EAASxD,EAAO/G,OAChBuc,EAAaxV,EAAO4B,WAElB5B,EAAO/G,OACP+G,EAAO4B,UAAUgB,YACjBoT,EAAiBnS,SACjB7D,EAAO4B,UAAUwB,UAEjB4S,EAAiBnS,SAAU,EAC3B7C,EACEqK,YAAiB,CACfC,YAAatL,EAAO/G,MACpB2J,WAAY5C,EAAO4B,UAAUgB,iBAKpC,CAAC5C,EAAO/G,MAAO+G,EAAO4B,UAAUgB,aAEnCgB,oBAAU,WACJrI,EAAM+U,WAAWqF,EAAapa,EAAM+U,YACvC,CAAC/U,EAAM+U,YAEV1M,oBAAU,WACJrI,EAAMoL,WAAWC,EAAarL,EAAMoL,YACvC,CAACpL,EAAMoL,YAEV,IASMuP,GAA8B,WAG9BH,EAAUlS,SACZvL,IACGC,IADH,GAAAC,OAEOC,iEAFP,0BAGI,CACEC,OAAQ,CACN0J,WAAYR,EAAUM,WACtBoL,WAAY1L,EAAUgB,WACtBuT,UAAWxP,GAAapL,EAAMoL,WAEhC5N,QAAS,CAAEC,cAAa,UAAAR,OAAYS,IACpCC,eAAgB,qBAGnBC,KAAK,SAAClB,GACsB,IAAvBA,EAAIsB,KAAKsC,WACX6Z,EAAwBzd,EAAIsB,KAAKH,UACR,IAAvBnB,EAAIsB,KAAKsC,WAAiB6W,EAAgBza,EAAIsB,KAAKuC,WAE7Dia,EAAUlS,SAAU,GAGtBD,oBAAU,WACR,IAAMwS,EACJxU,EAAUwB,SAA+C,MAApCxB,EAAUwB,QAAQmN,MAAM,KAAK,GAChDtX,IAC6C,MAA3C+G,EAAO4B,UAAUwB,QAAQmN,MAAM,KAAK,GACtCuF,EAAQ,GAC6B,kBAA5B9V,EAAO4B,UAAUwB,SAC1B0S,EAAQ,GACRI,MACSE,GAAWR,EACpBM,KACS3a,EAAM+U,WACfwF,EAAQ,KAGX,CAAC9V,EAAO4B,UAAW3I,EAAOmb,IAE7B,IAAMiC,GAAY,WAChB,OACExV,EAAArF,EAAAC,cAAC+T,EAAA,SAAD,KACE3O,EAAArF,EAAAC,cAAA,OACEsJ,UAAU,qCACV8G,MAAO,CAAEsI,aAAc,MAAOlP,MAAO,UAErCpE,EAAArF,EAAAC,cAAA,MAAIoQ,MAAO,CAAE7C,WAAY,QACtByM,GACCA,EAAqBa,cAAcC,oBAGzC1V,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,sCACblE,EAAArF,EAAAC,cAAA,QAAMoQ,MAAO,CAAEsI,aAAc,MAAOlP,MAAO,UACzCpE,EAAArF,EAAAC,cAAA,gDACAoF,EAAArF,EAAAC,cAAA,QACE2R,QAAS,WACP2I,EAAUlS,SAAU,EACpBqS,MAEFrK,MAAO,CACLiJ,eAAgB,OAChB7P,MAAO,QACP8P,YAAa,QAGdU,GACCA,EAAqBa,cAAczB,aACjChU,EAAArF,EAAAC,cAACwZ,EAAA,EAAD,CAAYnK,KAAM,GAAIoK,YAAY,MAAMnQ,UAAU,cAK5DlE,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,6CAKfyR,GAAiB,WACrB,OACE3V,EAAArF,EAAAC,cAAC+T,EAAA,SAAD,KACE3O,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,0CACblE,EAAArF,EAAAC,cAAA,MAAIoQ,MAAO,CAAE7C,WAAY,QACtB,IACAyM,GACCA,EAAqBa,cAAcG,WAGzC5V,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,qCACblE,EAAArF,EAAAC,cAAA,8BAGFoF,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,0CACZ0Q,GACCA,EAAqBa,cAAcI,cACjC7V,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEgG,KAAK,KACLe,MAAO7E,GACPoG,QAAS,kBACP1Q,OAAOwS,KACLuG,EAAqBa,cAAcK,aACnC,WAIHlB,EAAqBa,cAAcM,wBAQ5CC,GAAgB,WACpB,OACEhW,EAAArF,EAAAC,cAAC+T,EAAA,SAAD,KACE3O,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,0CACblE,EAAArF,EAAAC,cAAA,UACEoF,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAOgS,SAAO,EAAC7R,MAAM,SAArB,aAES,MAGbpE,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,oDACblE,EAAArF,EAAAC,cAAA,SAAOoQ,MAAO,CAAE5C,SAAU,SAA1B,IAEGwM,GACCA,EAAqBa,cAAc1B,aAHvC,MAOF/T,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,6CAuMrB,MAAa,UAAT8Q,EACKhV,EAAArF,EAAAC,cAACsb,EAAA,EAAD,CAAkBrb,YAAaH,EAAMG,YAAaiC,UAAU,IAGjEkD,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAWkS,OAAK,GACdnW,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,KACEjE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKC,UAAU,QACX8Q,IAASJ,GAAwB5U,EAAArF,EAAAC,cAACoJ,EAAA,EAAD,MACzB,IAATgR,GACChV,EAAArF,EAAAC,cAACwb,EAAD,CACE7U,WAAY7G,EAAM6G,WAClBkO,UAAW/U,EAAM+U,UACjBhD,WAAY/R,EAAM+R,WAClBgI,iBAlWW,WAKvBtU,EAAS4D,YAAa,IACtB5D,EAAS5C,aAAe,OA+VfqX,GAAwB5U,EAAArF,EAAAC,cA1MJ,WAC7B,OACEoF,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAM+G,MAAOpD,GAAW1D,UAAU,MAChClE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAYC,UAAU,4BAA4B8G,MAAOrC,IACtDiM,EAAqBa,cAActD,gBACpChT,EAAO2J,eAEL,UADF3J,EAAO2J,cAAcpQ,KAAKoQ,cAAcI,OAAOoC,SAE7CtL,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,qCACblE,EAAArF,EAAAC,cAAA,OACEqQ,IAAK2J,EAAqBa,cAActD,eACxCnH,MAAO,CACLI,SAAU,QACVD,UAAW,OACXwH,aAAc,OACdtH,WACElM,EAAO2J,eAEL,SADF3J,EAAO2J,cAAcpQ,KAAKoQ,cAAcI,OAAOoC,SAE3C,SACA,cAKZtL,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,sCACblE,EAAArF,EAAAC,cAAA,OACEsJ,UAAU,gBACV8G,MAAO,CACL4H,UAAW,SACXC,WAAY,QACZF,aAAc,MACdG,UACE,8EAGJ9S,EAAArF,EAAAC,cAAA,MAAIsJ,UAAU,MAAM8G,MAAO,CAAE5G,MAAO,SACjCwQ,GACCA,EAAqBa,cAActT,WAAY,KAEnDnC,EAAArF,EAAAC,cAAA,MAAIoQ,MAAO,CAAE5G,MAAO,QAAUF,UAAU,SACrC0Q,GACCA,EAAqBa,cAAc9T,iBAM/C3B,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAUC,UAAU,uBAClBlE,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,+CACblE,EAAArF,EAAAC,cAAA,MAAIoQ,MAAO,CAAEsI,aAAc,QAA3B,YACY,IACTsB,GACCA,EAAqBa,cAAc1C,UAAW,MAIpD/S,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,2CAC0C,IAArD0Q,EAAqBa,cAAcrD,eACkB,IAArDwC,EAAqBa,cAAcrD,gBACnC,gCACoD,IAArDwC,EAAqBa,cAAcrD,eAClC,mDACoD,IAArDwC,EAAqBa,cAAcrD,eAClC,iCAEJpS,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,2CAC0C,IAArD0Q,EAAqBa,cAAcrD,eACkB,IAArDwC,EAAqBa,cAAcrD,gBACnCpS,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,qCACblE,EAAArF,EAAAC,cAACwY,EAAA,EAAD,CAAepI,MAAO,CAAE5C,SAAU,OAAQhE,MAAO,YAGC,IAArDwQ,EAAqBa,cAAcrD,eAClCpS,EAAArF,EAAAC,cAACqY,EAAA,EAAD,CACEC,KAAMC,IACNjP,UAAU,2CACV8G,MAAO,CAAE5G,MAAO,QAASgE,SAAU,UAGe,IAArDwM,EAAqBa,cAAcrD,eAClCpS,EAAArF,EAAAC,cAACqY,EAAA,EAAD,CACEC,KAAMG,IACNnP,UAAU,2CACV8G,MAAO,CAAE5G,MAAO,QAASgE,SAAU,WAIzCpI,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAUC,UAAU,QACoC,IAArD0Q,EAAqBa,cAAcrD,eAClCpS,EAAArF,EAAAC,cAAC4a,GAAD,OAEqD,IAArDZ,EAAqBa,cAAcrD,eACkB,IAArDwC,EAAqBa,cAAcrD,gBACnCpS,EAAArF,EAAAC,cAAC+a,GAAD,MAEoD,IAArDf,EAAqBa,cAAcrD,eAClCpS,EAAArF,EAAAC,cAACob,GAAD,MAEFhW,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,sCACblE,EAAArF,EAAAC,cAAA,qCAEFoF,EAAArF,EAAAC,cAAA,OACEsJ,UAAU,iCACV8G,MAAO,CAAE5D,UAAW,oBAEpBpH,EAAArF,EAAAC,cAAA,OACEoQ,MAAO,CACLO,MAAO,QACPiI,YAAa,kBACbC,UAAW,MACXC,QAAS,OACTd,UAAW,SACXxK,SAAU,QAEZlE,UAAU,QAEVlE,EAAArF,EAAAC,cAAA,aACGga,GACCA,EAAqBa,cAAcY,YACrCrW,EAAArF,EAAAC,cAAA,qBAGJoF,EAAArF,EAAAC,cAAA,OACEoQ,MAAO,CACLO,MAAO,QACPiI,YAAa,kBACbC,UAAW,MACXC,QAAS,OACTd,UAAW,SACXxK,SAAU,QAEZlE,UAAU,QAEVlE,EAAArF,EAAAC,cAAA,aACGga,GACCA,EAAqBa,cAAca,YACrCtW,EAAArF,EAAAC,cAAA,qBAGJoF,EAAArF,EAAAC,cAAA,OACEoQ,MAAO,CACLO,MAAO,QACPkI,UAAW,MACXC,QAAS,OACTd,UAAW,SACXxK,SAAU,QAEZlE,UAAU,QAET0Q,GACC5U,EAAArF,EAAAC,cAAA,aACGga,EAAqBa,cAAc5B,UADtC,UAEE7T,EAAArF,EAAAC,cAAA,OAAKoQ,MAAO,CAAE8I,aAAc,QAA5B,cAMV9T,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEC,UAAU,iCACV8G,MAAOhD,IAEPhI,EAAArF,EAAAC,cAAA,OAAKoQ,MAAO,CAAEO,MAAO,UACnBvL,EAAArF,EAAAC,cAAA,aACEoF,EAAArF,EAAAC,cAAA,MAAIoQ,MAAO,CAAE5C,SAAU,OAAQhE,MAAO,YAAtC,aACa,KAEbpE,EAAArF,EAAAC,cAACuT,EAAA,EAAD,CACEC,GAAG,GACH7B,QAAS,kBAAM1Q,OAAOwS,KAAK,wBAAyB,WACpDrD,MAAO,CACL7C,WAAY,SACZC,SAAU,OACVhE,MAAO,YAGTpE,EAAArF,EAAAC,cAAA,kCAyBmB,QAG7BoF,EAAArF,EAAAC,cAAC8Z,EAAD,CAAYnD,aAAcA,43MC5iBhC,IAMcnH,EAAkBxT,YAAiB,+BAAD,eAAAC,EAAAC,OAAAC,EAAA,EAAAD,CAAAE,IAAAC,KAAiC,SAAAC,EAAOkB,GAAP,IAAAG,EAAA,OAAAvB,IAAAK,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACvDC,IAAMC,IAAN,GAAAC,OAAaC,iEAAb,mBAA0E,CAC3FM,QAAS,CAAEC,cAAa,UAAAR,OAAYS,IACpCC,eAAgB,qBAEjBC,KAAK,SAAAlB,GAEL,OAAOA,EAAIsB,KAAKH,WAPyD,cACzEA,EADyEjB,EAAAqB,KAAArB,EAAAsB,OAAA,SASxEL,GATwE,wBAAAjB,EAAAuB,SAAA3B,MAAjC,gBAAA4B,GAAA,OAAAjC,EAAAkC,MAAAC,KAAAC,YAAA,IAYnCsd,EAAgBpd,YAAY,CAClCC,KAAM,eACNC,aAAc,CACZiL,aArBmB,WAC1B,IAAM1I,EAAOC,OAAOS,eAAeP,QAAQ,gBAE3C,OAAOH,EAAOI,KAAKC,MAAML,GAAQ,GAkBb4a,GACbC,MAAO,GACPC,UAAW,GACXC,YAAa,IAEfnd,SAAU,CACRod,eAAgB,SAACld,EAAOC,GACvBD,EAAM4K,aAAgB3K,EAAOC,QAC7B0C,eAAeU,QAAQ,eAAgBhB,KAAKiB,UAAUtD,EAAOC,YAGhEC,cAAe,SAAAC,GACbA,EACGC,QAAQqQ,EAAgBpQ,UAAW,SAACN,EAAOC,GAC1CD,EAAM4K,aAAe3K,EAAOC,QAC5B0C,eAAeU,QAAQ,eAAgBhB,KAAKiB,UAAUtD,EAAOC,eAyBxC2c,EAActc,QAAjC2c,eAEAL,MAAf,yCCpEF,IAAAlc,EAAAH,EAAA,GAAAI,EAAAJ,EAAAK,EAAAF,GAAAwc,EAAA3c,EAAA,GAee8J,IAZC,WACZ,OAEY1J,EAAAK,EAAAC,cAACic,EAAA,EAAD,CAAK3S,UAAU,kKC2EhB4S,EA1EI,WACf,IAAM3W,EAAWC,cACXd,EAAegB,YAAY,SAAA5G,GAAK,OAAIA,EAAM4F,eAE1ClH,EADSkI,YAAY,SAAA5G,GAAK,OAAIA,EAAMyF,SACrB/G,MAJAuI,EAKeC,mBAAS,IALxB4D,EAAA1N,OAAA4J,EAAA,EAAA5J,CAAA6J,EAAA,GAKdrH,EALckL,EAAA,GAKFuS,EALEvS,EAAA,GAAA1D,EAM6BF,mBAAS,IANtCK,EAAAnK,OAAA4J,EAAA,EAAA5J,CAAAgK,EAAA,GAMdkW,EANc/V,EAAA,GAMKgW,EANLhW,EAAA,GAAAG,EAOuBR,mBAAS,IAPhCU,EAAAxK,OAAA4J,EAAA,EAAA5J,CAAAsK,EAAA,GAOd8V,EAPc5V,EAAA,GAOE6V,EAPF7V,EAAA,GAAAG,EAQ6Bb,mBAAS,GARtCc,EAAA5K,OAAA4J,EAAA,EAAA5J,CAAA2K,EAAA,GAQd2V,EARc1V,EAAA,GAQK2V,EARL3V,EAAA,GAAAG,EASajB,mBAAS,IATtBkB,EAAAhL,OAAA4J,EAAA,EAAA5J,CAAA+K,EAAA,GASd7J,EATc8J,EAAA,GASHwV,EATGxV,EAAA,GAAAG,EAUWrB,mBAAStB,EAAanD,UAVjC+F,EAAApL,OAAA4J,EAAA,EAAA5J,CAAAmL,EAAA,GAUd9F,EAVc+F,EAAA,GAUJqV,EAVIrV,EAAA,GAYrBa,oBAAU,WAEL,GAAIzD,EAAa3D,UAAW,CACxB,IAAM6b,EAAOlY,EAAa3D,UAC1B2b,EAAaE,EAAKxf,WAElBsH,EAAanD,UACbob,EAAYjY,EAAanD,WAGnC,CAACmD,EAAa3D,UAAW2D,EAAanD,WAEzC,IAAMsb,EAAa,YAGXtb,GAAYnE,GAAYP,IAAMC,IAAN,GAAAC,OAAaC,6BAAb,uBAC9B,CACCC,OAAO,CACLC,OAAO,EACPC,SAASC,GAEbE,QAAS,CAAEC,cAAa,UAAAR,OAAYS,IACpCC,eAAgB,qBAEfC,KAAK,SAACC,GAERC,QAAQC,IAAIF,EAASG,KAAKH,UACzB4e,EAAkB5e,EAASG,KAAKH,SAAS2e,gBACzCG,EAAqBK,OAAkD,IAA3Cnf,EAASG,KAAKH,SAAS6e,uBA8B7C,MAAO,CAACO,eAzBY,SAACC,GAEbpf,QAAQC,IAAImf,GACC,KAAdA,EAAG9M,QAAsC,KAArB9S,EAAU8S,OACjCmM,EAAqB,iCAMpBze,QAAQC,IAAIa,GACO,oBAAfA,GAAqCtB,IAC7Bsf,EAAaM,GACbzX,EAASpD,YAAcjG,OAAAqS,EAAA,EAAArS,CAAA,GAAIwI,EAAa3D,UAAlB,CAA6B3D,UAAU4f,MAC7DH,KAERR,EAAqB,IACnBQ,IACAV,EAAc,SAODU,aAAYL,oBAAmBF,iBAAgB5d,aAAYyd,gBAAeC,yFCga1Fa,EA/dY,SAACnd,GAC1B,IAAMod,EAAmBC,wBAAc,CAAEtB,MAAO,wBAC1CnX,EAAegB,YAAY,SAAC5G,GAAD,OAAWA,EAAM4F,eAC5CH,EAASmB,YAAY,SAAC5G,GAAD,OAAWA,EAAMyF,SAHRwB,EAIVC,mBAASzB,EAAO/G,OAJNoM,EAAA1N,OAAA4J,EAAA,EAAA5J,CAAA6J,EAAA,GAI7BvI,EAJ6BoM,EAAA,GAItB7B,EAJsB6B,EAAA,GAK9BwT,EAAa1X,YAAY,SAAC5G,GAAD,OAAWA,EAAM6F,SALZuB,EAMJF,oBAAS,GANLK,EAAAnK,OAAA4J,EAAA,EAAA5J,CAAAgK,EAAA,GAM7BhE,EAN6BmE,EAAA,GAMnBgX,EANmBhX,EAAA,GAAAG,EAOER,mBAAS,GAPXU,EAAAxK,OAAA4J,EAAA,EAAA5J,CAAAsK,EAAA,GAO7B8W,EAP6B5W,EAAA,GAOhB6W,EAPgB7W,EAAA,GAAAG,EAQIb,mBAAS,IARbc,EAAA5K,OAAA4J,EAAA,EAAA5J,CAAA2K,EAAA,GAQ7B1G,EAR6B2G,EAAA,GAQf0W,EARe1W,EAAA,GAAAG,EASsBjB,mBAAS,IAT/BkB,EAAAhL,OAAA4J,EAAA,EAAA5J,CAAA+K,EAAA,GAS7BwW,EAT6BvW,EAAA,GASNwW,EATMxW,EAAA,GAU9B3B,EAAWC,cAVmB6B,EAWFrB,mBAAStB,EAAa3D,UAAU3D,WAX9BkK,EAAApL,OAAA4J,EAAA,EAAA5J,CAAAmL,EAAA,GAW7BjK,EAX6BkK,EAAA,GAWlBoV,EAXkBpV,EAAA,GAAAG,EAYAzB,mBAAS,IAZT0B,EAAAxL,OAAA4J,EAAA,EAAA5J,CAAAuL,EAAA,GAYjBL,GAZiBM,EAAA,GAAAA,EAAA,IAAAG,EAcM7B,oBAAS,GAdf8B,EAAA5L,OAAA4J,EAAA,EAAA5J,CAAA2L,EAAA,GAc7B8V,EAd6B7V,EAAA,GAcd8V,EAdc9V,EAAA,GAiB9B+V,EAAW5V,kBAAO,GAjBYqC,GAkBYtE,mBAAS,CACvDwD,MAAO,QACPkC,QAAS,SACT6N,OAAQ,YArB0BhP,GAAArO,OAAA4J,EAAA,EAAA5J,CAAAoO,GAAA,GAkB7BwT,GAlB6BvT,GAAA,GAkBXwT,GAlBWxT,GAAA,GAAAC,GAuBUxE,mBAAS,CACrDqF,gBAAiB,OACjB7B,MAAO,UAzB2BiB,GAAAvO,OAAA4J,EAAA,EAAA5J,CAAAsO,GAAA,GAuB7BwT,GAvB6BvT,GAAA,GAuBZwT,GAvBYxT,GAAA,GAAAC,GA2BR1E,mBAAS,QA3BD2E,GAAAzO,OAAA4J,EAAA,EAAA5J,CAAAwO,GAAA,GA2B7BwT,GA3B6BvT,GAAA,GA2BrBwT,GA3BqBxT,GAAA,GAAAC,GA4BR5E,mBAAS,SA5BD6E,GAAA3O,OAAA4J,EAAA,EAAA5J,CAAA0O,GAAA,GA4B7BwT,GA5B6BvT,GAAA,GA4BrBwT,GA5BqBxT,GAAA,GA8BpC1C,oBAAU,WACR,GAAI5D,EAAO2J,cAAcpQ,MAA6C,IAArCyG,EAAO2J,cAAcpQ,KAAKqQ,OAAc,CACvE,IAAMC,EAAO7J,EAAO2J,cAAcpQ,KAAKoQ,cAAcE,KACrDxQ,QAAQC,IAAIuQ,GACZ2P,GAAoB,SAACphB,GACnB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAO4E,EAAKK,aAAajF,MAAlB,GAAAzM,OACAqR,EAAKK,aAAajF,OACrB7M,EAAK6M,UAGbyU,GAAmB,SAACthB,GAClB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiB+C,EAAKkQ,wBAAwBC,YAA7B,GAAAxhB,OACVqR,EAAKkQ,wBAAwBC,aAChC5hB,EAAK0O,oBAGb8S,GAAU,SAACxhB,GAET,OADAiB,QAAQC,IAAIuQ,EAAKkQ,wBAAwBJ,QAClC9P,EAAKkQ,wBAAwBJ,OAA7B,GAAAnhB,OACAqR,EAAKkQ,wBAAwBJ,QAD7B,GAAAnhB,OAEAJ,KAET0hB,GAAU,SAAC1hB,GACT,OAAOyR,EAAKkQ,wBAAwBF,OAA7B,GAAArhB,OACAqR,EAAKkQ,wBAAwBF,QAD7B,GAAArhB,OAEAJ,UAEJ,GAAI4H,EAAOia,qBAAqB1gB,KAAM,CAC3C,IAAMsQ,EAAO7J,EAAOia,qBAAqB1gB,KAAKoQ,cAAcE,KAC5DxQ,QAAQC,IAAIuQ,GACZ2P,GAAoB,SAACphB,GACnB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAO4E,EAAKK,aAAajF,MAAlB,GAAAzM,OACAqR,EAAKK,aAAajF,OACrB7M,EAAK6M,UAGbyU,GAAmB,CAAE5S,gBAAiB,OAAQ7B,MAAO,UAErD2U,GAAU,QACVE,GAAU,WAEX,CAAC9Z,EAAO2J,gBAEX/F,oBAAU,WACR,IAAMyU,EAAOlY,EAAa3D,UAQ1B2b,EAAaE,EAAKxf,YAGY,IAA1BsH,EAAanD,WACfmc,EAAyB,IACzBL,GAAY,KAEb,CAAC3Y,IAEJyD,oBAAU,WACJzD,EAAajD,WACfic,EAAyBhZ,EAAajD,YAEvC,CAACiD,EAAajD,YAEjB0G,oBAAU,WACJzD,EAAa9C,kBAAkBzB,cACjCqd,EAAgB9Y,EAAa9C,kBAAkBzB,cAGjDvC,QAAQC,IAAI6G,EAAa9C,oBACxB,CAAC8C,EAAa9C,kBAAkBzB,eAEnCgI,oBAAU,WACJ5D,GAEF6C,EAAc7C,EAAO4B,UAAUgB,aAGhC,CAAC5C,IAEJ4D,oBAAU,WACJ5D,EAAOoL,gBACT5H,EAASxD,EAAOoL,eAAenS,OAEjCI,QAAQC,IAAI0G,EAAOoL,iBAClB,CAACpL,EAAOoL,iBAEX,IAAMgF,GAAsB,WAC1BpP,EAASqP,YAAe,KACxBrP,EAAS4D,YAAa,KAKxBhB,oBAAU,WACJjG,IACF2b,EAASzV,SAAU,IAEpB,CAACkV,EAAapb,IAEjB,IAAM5B,GAAsB,WAE1BzD,IACGC,IADH,GAAAC,OAEOC,iEAFP,wBAGI,CACEC,OAAQ,CACNG,UAAWA,GAEbE,QAAS,CAAEC,cAAa,UAAAR,OAAYS,GAASsC,EAAMtC,QACnDC,eAAgB,qBAGnBC,KAAK,SAAClB,GACLghB,EAAgBhhB,EAAIsB,KAAKH,SAASwC,gBAGtCtD,IACGC,IADH,GAAAC,OAEOC,iEAFP,4BAGI,CACEC,OAAQ,CACNyD,kBAAmB4c,EACnB3c,gBAAiB,GACjBvD,UAAWA,GAEbE,QAAS,CAAEC,cAAa,UAAAR,OAAYS,GAASsC,EAAMtC,QACnDC,eAAgB,qBAGnBC,KAAK,SAAClB,GACLkhB,EAAyBlhB,EAAIsB,KAAKH,UAClCsD,OAAOwd,SAAS,EAAG1O,SAAS3B,KAAKsQ,cACjCb,EAASzV,SAAU,KAIzBD,oBAAU,WACJzD,EAAaxC,WACdA,GAAYmb,EAAY3Y,EAAaxC,WAGvC,CAACwC,EAAaxC,WAEjBiG,oBAAU,WACJjG,GAAYwC,EAAanD,UAAYnE,GAAaygB,EAASzV,UAC7DyV,EAASzV,SAAU,EACnBxK,QAAQC,IAAI4f,GACZnd,KACAyP,SAAS3B,KAAKgC,MAAMuO,SAAW,WAGjC/gB,QAAQC,IAAIqE,EAAUwC,EAAanD,SAAUnE,IAC5C,CACD8E,EACAwC,EAAanD,SACb+b,EACAxd,EAAMc,WACNd,EAAMtC,MACNJ,IAmDF,OARA+K,oBAAU,WACsB,yBAA1BiV,EAAW1e,YAAyCwD,GACtD0c,WAAW,kBAAMte,MAAuB,MAIzC,CAAC8c,EAAW1e,aAGb0G,EAAArF,EAAAC,cAAC+T,EAAA,SAAD,KACE3O,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKC,UAAU,QACblE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKyH,GAAI,EAAGV,MAAO,CAAEkJ,YAAa,SAC/BpX,EACCkD,EAAArF,EAAAC,cAAC6e,EAAA,EAAD,CAAaxP,KAAM,GAAI/F,UAAU,SAEjClE,EAAArF,EAAAC,cAAC8e,EAAA,EAAD,CAAYzP,KAAM,GAAI/F,UAAU,SAElClE,EAAArF,EAAAC,cAAA,KACEoQ,MAAO0N,GACPnM,QAAS,YAEqB,IAA1BjN,EAAanD,UACbnE,GACqB,KAArBA,EAAU8S,OAEV3K,EAAS1G,YAAiB,kCAES,IAA1B6F,EAAanD,SACtBgE,EAAS1G,YAAiB,kCAI1Bwe,GAAanb,KAIjBkD,EAAArF,EAAAC,cAAA,2BAEDG,GAAgBuE,EAAanD,UAC5B6D,EAAArF,EAAAC,cAAA,gBAAQG,EAAR,KAEFiF,EAAArF,EAAAC,cAAA,OACEoQ,MAAKlU,OAAAqS,EAAA,EAAArS,CAAA,CACHmd,eAAgB,QACbyE,IAELnM,QAAS,YACuB,IAA1BjN,EAAanD,UAA2C,KAArBnE,EAAU8S,QAC/C3K,EAAS1G,YAAiB,iCAE1BiB,EAAMif,eAAejf,EAAMkf,aAG3B1e,OAIH,KACAH,GACCiF,EAAArF,EAAAC,cAACwZ,EAAA,EAAD,CAAYnK,KAAM,GAAIoK,YAAY,MAAMnQ,UAAU,cAK1DlE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEC,UAAU,OACV8G,MAAO,CACL8H,UACE,kFAGJ9S,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,KACEjE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAUuN,OAAQ1U,GAChBkD,EAAArF,EAAAC,cAAA,OAAKoQ,MAAO,CAAE6O,UAAW,UACvB7Z,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE6V,YAAU,EACV7P,KAAK,KACLe,MACE8M,EACI,CAAE1P,SAAU,QACZ,CAAE8L,YAAa,OAAQJ,aAAc,SAG1CuE,GAAyBvb,GACxBkD,EAAArF,EAAAC,cAAA,SAAOoQ,MAAO4N,IACZ5Y,EAAArF,EAAAC,cAAA,UACEoF,EAAArF,EAAAC,cAAA,MAAIoQ,MAAO,CAAEO,MAAO,QAASqH,UAAW,WAAxC,YAGA5S,EAAArF,EAAAC,cAAA,MAAIoQ,MAAO,CAAEO,MAAO,SAApB,QACAvL,EAAArF,EAAAC,cAAA,MAAIoQ,MAAO,CAAEO,MAAO,SAApB,QACAvL,EAAArF,EAAAC,cAAA,MAAIoQ,MAAO,CAAE4H,UAAW,SAAUrH,MAAO,SAAzC,eAGAvL,EAAArF,EAAAC,cAAA,MAAIoQ,MAAO,CAAEO,MAAO,SAApB,UACAvL,EAAArF,EAAAC,cAAA,MAAIoQ,MAAO,CAAEO,MAAO,SAApB,QACAvL,EAAArF,EAAAC,cAAA,MAAIoQ,MAAO,CAAEO,MAAO,SAApB,YAINvL,EAAArF,EAAAC,cAAA,cACIyd,GAAyBvb,GACzBkD,EAAArF,EAAAC,cAAA,UACEoF,EAAArF,EAAAC,cAAA,MAAImf,QAAS,EAAG7V,UAAU,eACxBlE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAASE,UAAU,OAAO6V,QAAQ,cAIvC3B,GACCvb,GACAub,EAAsB4B,YAAYlc,IAAI,SAACnC,EAAM+P,GAC3C,OACE3L,EAAArF,EAAAC,cAAA,MACEwR,IAAKT,EACLX,MAAO,CACL/E,gBAAiB0F,EAAK,IAAM,EAAIqN,GAASF,KAG3C9Y,EAAArF,EAAAC,cAAA,MAAIsJ,UAAU,QAAQtI,EAAKse,UAC3Bla,EAAArF,EAAAC,cAAA,UAAKgB,EAAKue,aACVna,EAAArF,EAAAC,cAAA,UAAKgB,EAAKwe,aACVpa,EAAArF,EAAAC,cAAA,MAAIoQ,MAAO,CAAE4H,UAAW,WACrBhX,EAAKiY,WAER7T,EAAArF,EAAAC,cAAA,UAAKgB,EAAKmN,QACV/I,EAAArF,EAAAC,cAAA,UACEoF,EAAArF,EAAAC,cAAA,KACEoQ,MAAO,CACL5G,MAAO,QACPkC,QAAS,SACT6N,OAAQ,UACRkG,mBAAoB,aAGtB9N,QAAS,WACP/T,QAAQC,IAAImD,EAAKmG,WAAY5C,EAAO6P,QACpC7O,EACEqP,YACExP,EAAArF,EAAAC,cAACmQ,EAAA,EAAD,CACExJ,WAAY3F,EAAKyF,WACjBoO,UAAW7T,EAAK2X,UAChB9G,WAAY7Q,EAAKmG,WACjBwN,oBAAqBA,OAI3BpP,EAAS5C,aAAe,IACxB4C,EAAS4D,YAAa,MArB1B,SA6BF/D,EAAArF,EAAAC,cAAA,UACGgB,EAAK0e,aACJta,EAAArF,EAAAC,cAAA,OACEoQ,MAAO,CACL5G,MAAO,QACPkC,QAAS,SACT6N,OAAQ,UACRkG,mBAAoB,aAEtB9N,QAAS,WA5MjB,IAACgO,EAASlZ,EAAYkS,EAArBgH,EA8MW3e,EAAKmG,WA9MPV,EA+MEzF,EAAKyF,WA/MKkS,EAgNV3X,EAAK2X,UA/MrCiF,EAAiBjF,GACjB9b,IACG2L,KADH,GAAAzL,OAEOC,iEAFP,8BAGI,CACE2J,WAAYF,EACZoL,WAAY8N,EACZ9K,UAAW8D,EACXvb,UAAW0C,EAAM1C,WAEnB,CACEE,QAAS,CAAEC,cAAa,UAAAR,OAAYS,GAASsC,EAAMtC,UAGtDE,KAAK,SAAClB,GACsB,IAAvBA,EAAIsB,KAAKsC,WACXvD,IAAM2L,KAAN,GAAAzL,OACKC,iEADL,sBAEE,CACE2J,WAAYF,EACZoL,WAAY8N,EACZ9K,UAAW8D,EACXvb,UAAW0C,EAAM1C,WAEnB,CACEE,QAAS,CAAEC,cAAa,UAAAR,OAAYS,GAASsC,EAAMtC,YAK1DE,KAAK,WACJkhB,WAAW,WACThB,EAAiB,IACjBtd,MACC,SAiLsBqd,IAAkB3c,EAAK2X,UACtBvT,EAAArF,EAAAC,cAAA,OACEsJ,UAAU,+CACVsW,KAAK,WAGP,iBAWtBxa,EAAArF,EAAAC,cAAA,OACEsJ,UACE4T,EACI,gCACA,mCAEN9M,MAAO,CAAEO,MAAO,SAEhBvL,EAAArF,EAAAC,cAAA,OAAK8Q,GAAG,KACN1L,EAAArF,EAAAC,cAAC6f,EAAA9f,EAAD,CACEsP,KAAK,KACLyQ,WAAW,MACXC,UAAU,IACVC,aAAc,SAACC,GAAD,OA3aL,SAACA,GAAD,OAAU1C,EAAe0C,EAAKC,SAAW,GA2a1BC,CAAiBF,IACzCG,UACE3C,GACAA,EAAsB4C,iBAAiBC,kBAAoB,EAE7DC,mBAAoB,EACpBC,UACE/C,GACAgD,KAAKC,KACHjD,EAAsB4C,iBAAiBM,aACrClD,EAAsB4C,iBAAiBO,iBAG7CC,cAAc,IACdC,sBAAuB,KACvBC,gBAAgB,SAChBC,cAAc,YACdC,eAAe,YACfC,kBAAkB,YAClBC,kBAAkB,YAClBC,mBAAmB,YACnBC,cAAc,iBACdC,sBAAsB,YACtBC,kBAAkB,iBAClBC,mBAAmB,4DACnBpR,MAAO,CAAEI,SAAU,gBC1btBiR,EAjCS,SAAC3hB,GACVoc,IAAV,IACMxX,EAAegB,YAAY,SAAA5G,GAAK,OAAIA,EAAM4F,eAC1CH,EAASmB,YAAY,SAAA5G,GAAK,OAAIA,EAAMyF,SAHZwB,EAIEC,mBAAStB,EAAanD,UAJxBqI,EAAA1N,OAAA4J,EAAA,EAAA5J,CAAA6J,EAAA,GAIvBxE,EAJuBqI,EAAA,GAIb+S,EAJa/S,EAAA,GAAA1D,EAKMF,oBAAS,GALfK,EAAAnK,OAAA4J,EAAA,EAAA5J,CAAAgK,EAAA,GAKvB8Y,EALuB3Y,EAAA,GAKX0Y,EALW1Y,EAAA,GAAAG,EAMJR,mBAASzB,EAAOoL,gBANZjJ,EAAAxK,OAAA4J,EAAA,EAAA5J,CAAAsK,EAAA,GAMvBhJ,EANuBkJ,EAAA,GAMhBqB,EANgBrB,EAAA,GAkBrB,OAXLyB,oBAAU,WACLwU,EAAYjY,EAAanD,WAE3B,CAACmD,EAAanD,WAEjB4G,oBAAU,WACD5D,EAAOoL,eAAe/O,YACxBmH,EAASxD,EAAOoL,eAAenS,QAEnC,CAAC+G,EAAOoL,iBAGCvK,EAAArF,EAAAC,cAAC+T,EAAA,SAAD,KACI3O,EAAArF,EAAAC,cAAC0hB,EAAD,CACE9gB,WAAY2D,EAAO3D,WACnBme,cAAeA,EACfC,WAAYA,EACZzd,SAAUA,EACV/D,MAAQA,GAAS+G,EAAO/G,MACxB0E,SAAUpC,EAAMoC,aCnB5Byf,EAVG,SAAC7hB,GAEf,OACIsF,EAAArF,EAAAC,cAAC+T,EAAA,SAAD,KACM3O,EAAArF,EAAAC,cAAC4hB,EAAD,CAAgB1f,SAAYpC,EAAMoC,aCgGjC2f,EAlGA,SAAC/hB,GACd,IAAM2F,EAAaC,YAAY,SAAC5G,GAAD,OAAWA,EAAMyF,SADxBwB,EAEgBC,mBAAS,CAC/CqF,gBAAiB,QACjBwB,OAAQ,SAJcjD,EAAA1N,OAAA4J,EAAA,EAAA5J,CAAA6J,EAAA,GAEjB2G,EAFiB9C,EAAA,GAEH+C,EAFG/C,EAAA,GAAA1D,EAMoBF,mBAAS,CACnDqF,gBAAiB,UACjBM,eAAgB,WARMtF,EAAAnK,OAAA4J,EAAA,EAAA5J,CAAAgK,EAAA,GAMjBkH,EANiB/G,EAAA,GAMDgH,EANChH,EAAA,GAAAG,EAUcR,mBAAS,CAC7CuH,WAAY,SACZC,SAAU,OACVhE,MAAO,YAbe9C,EAAAxK,OAAA4J,EAAA,EAAA5J,CAAAsK,EAAA,GAUjBkH,EAViBhH,EAAA,GAUJiH,EAVIjH,EAAA,GAyExB,OA5CAyB,oBAAU,WACR,GACE1C,EAAWyI,cAAcpQ,MACgB,IAAzC2H,EAAWyI,cAAcpQ,KAAKqQ,OAC9B,CACA,IAAMC,EAAO3I,EAAWyI,cAAcpQ,KAAKoQ,cAAcE,KACnDC,EAAS5I,EAAWyI,cAAcpQ,KAAKoQ,cAAcG,OAE3D1B,EAAgB,SAAChQ,GACf,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiB+C,EAAK/C,gBAAL,GAAAtO,OACVqR,EAAK/C,iBACR1O,EAAK0O,oBAGbgC,EAAkB,SAAC1Q,GACjB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiBgD,EAAOhD,gBAAP,GAAAtO,OACVsR,EAAOhD,iBACV1O,EAAK0O,gBACTM,eAAgB0C,EAAOI,aAAaW,UAApB,GAAArS,OACTsR,EAAOI,aAAaW,WACvBzS,EAAKgP,mBAGbgC,EAAe,SAAChR,GACd,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAO6E,EAAOI,aAAajF,MAApB,GAAAzM,OACAsR,EAAOI,aAAajF,OACvB7M,EAAK6M,MACT6F,KAAMhB,EAAOI,aAAaY,KAApB,GAAAtS,OACCsR,EAAOI,aAAaY,MACvB1S,EAAK6M,MACTkF,WAAU,GAAA3R,OAAKsR,EAAOI,aAAaC,YACnCnB,WAAYc,EAAOI,aAAaQ,KAAO,OAAS,SAChDC,UAAWb,EAAOI,aAAaU,OAAS,SAAW,eAIxD,CAAC1J,EAAWyI,gBAGb9I,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAY+G,MAAO1D,GACjBtH,EAAArF,EAAAC,cAAC8hB,EAAD,CACEC,WAAYjiB,EAAMiiB,WAClBrjB,WAAYoB,EAAMpB,WAClBwD,SAAUpC,EAAMoC,WAElBkD,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKC,UAAU,iCAAiC8G,MAAOhD,GACrDhI,EAAArF,EAAAC,cAAA,OAAKoQ,MAAO,CAAEO,MAAO,UACnBvL,EAAArF,EAAAC,cAAA,aACEoF,EAAArF,EAAAC,cAAA,MAAIoQ,MAAO1C,GAAX,eACAtI,EAAArF,EAAAC,cAACuT,EAAA,EAAD,CACEC,GAAG,GACH7B,QAAS,kBAAM1Q,OAAOwS,KAAK,wBAAyB,WACpDrD,MAAO1C,GAEPtI,EAAArF,EAAAC,cAAA,oFC4mBCgiB,EAlrBS,SAACliB,GACvBmiB,IAAMC,cAAc,SACpB,IAAM3c,EAAWC,cACXjB,EAASmB,YAAY,SAAC5G,GAAD,OAAWA,EAAMyF,SACtC6Y,EAAa1X,YAAY,SAAC5G,GAAD,OAAWA,EAAM6F,SAC1CD,EAAegB,YAAY,SAAC5G,GAAD,OAAWA,EAAM4F,eAC5Cyd,EAAWzc,YAAY,SAAC5G,GAAD,OAAWA,EAAM2F,eANbsB,EAOPC,mBAASzB,EAAO/G,OAPToM,EAAA1N,OAAA4J,EAAA,EAAA5J,CAAA6J,EAAA,GAO1BvI,EAP0BoM,EAAA,GAOnB7B,EAPmB6B,EAAA,GAQ3BsT,EAAmBC,wBAAc,CAAEtB,MAAO,wBARf3V,EASuBF,mBAAS,IAThCK,EAAAnK,OAAA4J,EAAA,EAAA5J,CAAAgK,EAAA,GAS1Bkc,EAT0B/b,EAAA,GASJgc,EATIhc,EAAA,GAAAG,EAUDR,mBAAStB,EAAanD,UAVrBmF,EAAAxK,OAAA4J,EAAA,EAAA5J,CAAAsK,EAAA,GAU1BjF,EAV0BmF,EAAA,GAUhBiW,EAVgBjW,EAAA,GAAAG,EAWuBb,oBAAS,GAXhCc,EAAA5K,OAAA4J,EAAA,EAAA5J,CAAA2K,EAAA,GAW1Byb,EAX0Bxb,EAAA,GAWJyb,EAXIzb,EAAA,GAY3BzJ,EAAe4K,iBAAO,MAZKhB,EAaiBjB,mBAAS,IAb1BkB,EAAAhL,OAAA4J,EAAA,EAAA5J,CAAA+K,EAAA,GAa1BmV,EAb0BlV,EAAA,GAaPmV,EAbOnV,EAAA,GAc3Bsb,EAAkBva,iBAAO,MACzBwa,EAAexa,iBAAO,MAfKZ,EAgBarB,mBAAS,IAhBtBsB,EAAApL,OAAA4J,EAAA,EAAA5J,CAAAmL,EAAA,GAgB1Bqb,EAhB0Bpb,EAAA,GAgBTqb,EAhBSrb,EAAA,GAAAG,EAiBiBzB,mBAAS,IAjB1B0B,EAAAxL,OAAA4J,EAAA,EAAA5J,CAAAuL,EAAA,GAiB1B+U,EAjB0B9U,EAAA,GAiBP+U,EAjBO/U,EAAA,GAAAG,EAkBC7B,mBAAS,GAlBV8B,GAAA5L,OAAA4J,EAAA,EAAA5J,CAAA2L,EAAA,GAkB1B+a,GAlB0B9a,GAAA,GAkBf+a,GAlBe/a,GAAA,GAAAwC,GAmBGtE,mBAASlG,EAAMpB,YAnBlB6L,GAAArO,OAAA4J,EAAA,EAAA5J,CAAAoO,GAAA,GAmB1B5L,GAnB0B6L,GAAA,GAmBd4R,GAnBc5R,GAAA,GAAAC,GAoBGxE,oBAAS,GApBZyE,GAAAvO,OAAA4J,EAAA,EAAA5J,CAAAsO,GAAA,GAoBdsY,IApBcrY,GAAA,GAAAA,GAAA,IAAAC,GAqBC1E,mBAAS,IArBV2E,GAAAzO,OAAA4J,EAAA,EAAA5J,CAAAwO,GAAA,GAqB1BtN,GArB0BuN,GAAA,GAqBf+R,GArBe/R,GAAA,GAAAC,GAsBW5E,mBAAS,IAtBpB6E,GAAA3O,OAAA4J,EAAA,EAAA5J,CAAA0O,GAAA,GAsB1B0R,GAtB0BzR,GAAA,GAsBV0R,GAtBU1R,GAAA,GAAAG,GAuBOhF,mBAASlG,EAAMijB,cAvBtB9X,GAAA/O,OAAA4J,EAAA,EAAA5J,CAAA8O,GAAA,GAuB1B+X,GAvB0B9X,GAAA,GAuBZ+X,GAvBY/X,GAAA,GAAAG,GAwBCpF,mBAAS,IAxBVsF,GAAApP,OAAA4J,EAAA,EAAA5J,CAAAkP,GAAA,GAwB1B6X,GAxB0B3X,GAAA,GAwBf4X,GAxBe5X,GAAA,GAAAG,GAyBDzF,mBAAS,IAzBR4F,GAAA1P,OAAA4J,EAAA,EAAA5J,CAAAuP,GAAA,GAyB1B0X,GAzB0BvX,GAAA,GAyBhBwX,GAzBgBxX,GAAA,GAAAG,GA0BL/F,oBAAS,GA1BJgG,GAAA9P,OAAA4J,EAAA,EAAA5J,CAAA6P,GAAA,GA0B1BsX,GA1B0BrX,GAAA,GAAAG,IAAAH,GAAA,GA2ByBhG,mBAAS,KA3BlCoG,GAAAlQ,OAAA4J,EAAA,EAAA5J,CAAAiQ,GAAA,GA2BHmX,IA3BGlX,GAAA,GAAAA,GAAA,IAAAG,GA4BOvG,mBACtCmc,EAASzY,aAAajF,cA7BSgI,GAAAvQ,OAAA4J,EAAA,EAAA5J,CAAAqQ,GAAA,GA4B1B9H,GA5B0BgI,GAAA,GA4BZ8W,GA5BY9W,GAAA,GAAAG,GA+BO5G,mBAAS,IA/BhB+G,GAAA7Q,OAAA4J,EAAA,EAAA5J,CAAA0Q,GAAA,GA+BZ5F,IA/BY+F,GAAA,GAAAA,GAAA,IAAAG,GAgCGlH,mBAAS,IAhCZmH,GAAAjR,OAAA4J,EAAA,EAAA5J,CAAAgR,GAAA,GAgCdtG,IAhCcuG,GAAA,GAAAA,GAAA,IAAAG,GAiCGtH,mBAClCtB,EAAa3C,eAAeoF,YAlCGsG,GAAAvR,OAAA4J,EAAA,EAAA5J,CAAAoR,GAAA,GAiC1BnG,GAjC0BsG,GAAA,GAiCdrG,GAjCcqG,GAAA,GAAAG,GAoCG5H,mBAAS,IApCZ8H,GAAA5R,OAAA4J,EAAA,EAAA5J,CAAA0R,GAAA,GAoCdpG,IApCcsG,GAAA,GAAAA,GAAA,IAAA0V,GAqCDxd,mBAAS,IArCRyd,GAAAvnB,OAAA4J,EAAA,EAAA5J,CAAAsnB,GAAA,GAqChBrP,IArCgBsP,GAAA,GAAAA,GAAA,IAAAC,GAsCG1d,mBAAS,IAtCZ2d,GAAAznB,OAAA4J,EAAA,EAAA5J,CAAAwnB,GAAA,GAsC1B9iB,GAtC0B+iB,GAAA,GAsCdC,GAtCcD,GAAA,GAuC3BE,GAAiB5b,kBAAO,GAvCG6b,GAwCO9d,mBAAS,CAC/C+d,QAAS,CACPC,IAAK,MACLC,KAAM,MACNC,MAAO,OACPC,OAAQ,OACRC,YAAa,OACbC,UAAW,wBACX9T,UAAW,MAEXC,SAAU,MACV8T,SAAU,MACVvM,aAAc,OACd1M,gBAAiB,aArDYkZ,GAAAroB,OAAA4J,EAAA,EAAA5J,CAAA4nB,GAAA,GAwC1BU,GAxC0BD,GAAA,GAwCZE,GAxCYF,GAAA,GAAAG,GAwDQ1e,oBAAS,GAxDjB2e,GAAAzoB,OAAA4J,EAAA,EAAA5J,CAAAwoB,GAAA,GAwD1BE,GAxD0BD,GAAA,GAwDTE,GAxDSF,GAAA,GAAAG,GAyDC9e,mBAAS,IAzDV+e,GAAA7oB,OAAA4J,EAAA,EAAA5J,CAAA4oB,GAAA,GAyD1B9X,GAzD0B+X,GAAA,GAyDf9X,GAzDe8X,GAAA,GA2DjC,SAASC,KACPH,IAAc,GAGhB,SAASI,MAKT,SAASC,KAEU,wBAAfxmB,IAC6C,KAA7CgG,EAAa7C,iBAAiBsF,aAE9B0d,IAAc,GACdtf,EAAS1G,YAAiB,MAST,yBAAfH,IAAuCokB,IAAc,GAG3D3a,oBAAU,WACR,GAAI5D,EAAO2J,cAAcpQ,MAA6C,IAArCyG,EAAO2J,cAAcpQ,KAAKqQ,OAAc,CACvE,IAAMC,EAAO7J,EAAO2J,cAAcpQ,KAAKoQ,cAAcE,KACrDnB,GAAamB,GACbxQ,QAAQC,IAAIuQ,GACZqW,GAAgB,WAKd,MAAO,CACLV,QALQ7nB,OAAAqS,EAAA,EAAArS,CAAA,GACLsoB,GAAaT,QADR,CAER1Y,gBAAiB+C,GAAQA,EAAK/C,uBAOnC,CAAC9G,EAAO2J,gBAEX/F,oBAAU,WACRka,EAAwBviB,EAAMsiB,uBAC7B,CAACtiB,EAAMsiB,uBAEVja,oBAAU,WACJ5D,EAAOoL,iBACTiU,GAAcrf,EAAOoL,iBAGlBxI,IACD5C,EAAOoL,eAAe/O,YACtB2D,EAAOoL,eAAe/O,WAAWsP,OAAS,GAC1C2T,GAAezb,SAGf+T,GAAc,yBAUjB,CAAC5X,EAAOoL,eAAgBxI,KAE3BgB,oBAAU,WACR,IAAMyU,EAAOlY,EAAa3D,UAC1BnD,QAAQC,IAAI+e,GAKZsG,GAAatG,EAAKqG,WAClBG,GAAYxG,EAAKuG,UAEjBzG,GAAaE,EAAKxf,WAGlBuf,EAAYjY,EAAanD,WACxB,CAACmD,IAEJyD,oBAAU,WACJ5D,EAAO/G,OACTuK,EAASxD,EAAO/G,QAEjB,CAAC+G,EAAO/G,QAEX2K,oBAAU,WAGR,GADAgU,GAAciB,EAAW1e,YACrB0e,EAAWze,QAAS,CAEtB4d,GAAkBa,EAAWze,QAAQ2d,gBACrCG,EACEK,OAA8C,IAAvCM,EAAWze,QAAQ6d,oBAE5B,IAAM2I,EAAwBrI,OACW,IAAvCM,EAAWze,QAAQ6d,mBAErBqG,GAAauC,KAAKC,MAAQF,GAG5B,OAAO,WACLtC,GAAa,GACbpG,EAAqB,KAEtB,CAACW,EAAWze,QAASye,EAAW1e,aAcnCyJ,oBAAU,WACJga,EAASzY,cACX6Z,GAAgBpB,EAASzY,aAAajF,eACvC,CAAC0d,EAASzY,eAEb,IAAM6M,GAAa,SAACzW,GAClB,OACEsF,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,qCACblE,EAAArF,EAAAC,cAAA,KAAGoQ,MAAO,CAAE5G,MAAO,QAAU1J,EAAMO,WAKnCwc,GAAa,SAACG,GAClBpf,QAAQC,IAAIT,IAEPmE,IAAayb,IAAM3f,EAAa+K,SACnC7C,EACExJ,YAAQ,CACNihB,KACA3f,aAAcA,EAAa+K,QAC3B5K,MAAO+G,EAAOoL,eAAenS,UAK/Buf,GAAiB,SAACC,GAEJ,KAAdA,EAAG9M,OAELmM,EAAqB,gCAGH,oBAAf3d,KAAqCtB,IACtCA,KAAc4f,GAEV5f,KAAc4f,IAChBzX,EAAS/C,aAAY,IACrBka,GAAaM,IAIfH,GAAWG,GACXzX,EAAS1G,YAAiB,UAE1B6d,GAAaM,GACbX,EAAqB,IACrBQ,GAAWG,GACXzX,EAAS1G,YAAiB,UAKhCsJ,oBAAU,WACW,wBAAfzJ,IACFskB,GAAgB,KACf4B,IAAmBI,MACI,sBAAftmB,IACTskB,GAAgB,KACf4B,IAAmBI,MACI,oBAAftmB,IACTskB,GAAgB,IAEhBgC,MACwB,QAAftmB,IACTikB,EAAmB,IACnBK,GAAgB,KACf4B,IAAmBI,MACI,yBAAftmB,IACTskB,GAAgB,KACf4B,IAAmBI,MACXtmB,IAAcA,GAAWwR,OAAS,GAC3C8S,GAAgB5d,EAAArF,EAAAC,cAACuW,GAAD,QACfqO,IAAmBI,MAEpBE,MAED,CAACxmB,KAEJyJ,oBAAU,WACJrI,EAAMpB,YAAY6G,EAAS1G,YAAiBiB,EAAMpB,cACrD,CAACoB,EAAMpB,aAEV,IAAM4mB,GAAgB,WACpB,OACElgB,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAWuH,KAAG,EAACtH,UAAU,iCACtB7E,IACCA,GAAatB,IAAI,SAACoiB,EAAMxU,GACtB,OACE3L,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKC,UAAU,WAAWkI,IAAKT,GAC7B3L,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEgS,SAAO,EACPhM,KAAK,KACL/F,UAAU,KACV8G,MAAO,CACLO,MAAO,QACPhC,OAAQ,OACR0I,OAAQ,MACRhM,gBACE2B,IACAA,GAAUwB,0BAA0BnD,gBACtC7B,MACEwD,IACAA,GAAUwB,0BAA0BC,aAAajF,MACnDkF,WACE1B,IACAA,GAAUwB,0BAA0BC,aACjCC,YAEPiD,QAAS,WACP3K,GAAgBue,EAAKxe,cACrBH,GAAc2e,EAAK9e,YACnBye,KAGA9d,GAAc,IACdI,GAAc,IACdqc,GAAezb,SAAU,EACzB7C,EAASigB,YAAiB,KAC1BjgB,EAAS7C,YAAsB,KAC/B6C,EACE9C,YAAwB,CACtBsE,aAAcwe,EAAKxe,aACnBN,WAAY8e,EAAK9e,cAQrBlB,EACEkK,YAAc,CACZhJ,WAAY8e,EAAK9e,WACjBjJ,MAAO+G,EAAO/G,WAKnB+nB,EAAKxe,mBAShB0e,GAAmB,WACvB,OACErgB,EAAArF,EAAAC,cAAC+T,EAAA,SAAD,KACE3O,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAWuH,KAAG,EAACtH,UAAU,iCACtB/E,EAAOoL,eAAe/O,YACrB2D,EAAOoL,eAAe/O,WAAWuC,IAAI,SAACuiB,EAAQ3U,GAC5C,OACE3L,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKC,UAAU,WAAWkI,IAAKT,GAC7B3L,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEC,UAAU,KACV+R,SAAO,EACPhM,KAAK,KACLe,MAAO,CACLO,MAAO,QACPhC,OAAQ,OACR0I,OAAQ,MACRhM,gBACE2B,IACAA,GAAUwB,0BAA0BnD,gBACtC7B,MACEwD,IACAA,GAAUwB,0BAA0BC,aAAajF,MACnDkF,WACE1B,IACAA,GAAUwB,0BAA0BC,aACjCC,YAEPiD,QAAS,WACPnK,GAAcke,EAAOne,YACrBH,GAAcse,EAAOve,YACrBgN,GAAYuR,EAAOtb,UACnB8a,KACA/I,GAAc,IACd5W,EACE7C,YAAsB,CACpB6E,WAAYme,EAAOne,WACnBJ,WAAYue,EAAOve,WACnBiD,SAAUsb,EAAOtb,YAGrB7E,EACEqK,YAAiB,CACfzI,WAAYue,EAAOve,WACnB0I,YAAatL,EAAOoL,eAAenS,WAKxCkoB,EAAOne,gBAMpBnC,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,wCAKfqc,GAAoB,WACxB,OACEvgB,EAAArF,EAAAC,cAAA,WACEoF,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAWuH,KAAG,GACZxL,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE4H,KAAK,SACLzS,KAAK,QACLuS,GAAG,QACHzH,UAAU,WACV8G,MACE8M,EACI,CAAE1P,SAAU,OAAQmD,MAAO,QAC3B,CAAEA,MAAO,QAEfQ,SAAU,SAACC,GACTkS,GACElB,EAAqBwD,OACnB,SAAC5kB,GAAD,OAAUA,EAAKuC,QAAU6N,EAAEC,OAAOhO,WAKvC+e,GACCA,EAAqBjf,IAAI,SAAC0iB,GACxB,OAAOzgB,EAAArF,EAAAC,cAAA,UAAQwR,IAAKqU,EAAMxiB,OAAQwiB,EAAMtiB,UAG9C6B,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE4H,KAAK,SACLzS,KAAK,WACLuS,GAAG,WACHC,YAAY,aACZ1H,UAAU,YACVwc,UAAU,YACVxU,aAAclU,GAEdgT,MAAO,CAAEO,MAAO,SAChBQ,SAAU,SAACC,GACT/T,EAAa+K,QAAUgJ,EAAEC,OAAOhO,MAC5B+Y,GAAmBC,EAAqB,UAQlD0J,GAAW,SAAA9pB,GAA0B,IAAvB+pB,EAAuB/pB,EAAvB+pB,QAASC,EAAchqB,EAAdgqB,QAC3B,OACE7gB,EAAArF,EAAAC,cAAA,YACGgmB,EADH,IACaC,IAKXC,GAAkB,WACtB,OACE9gB,EAAArF,EAAAC,cAAC+T,EAAA,SAAD,KACE3O,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,iCACblE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE4H,KAAK,SACLzS,KAAK,OACLuS,GAAG,OACH+U,WAAS,EACTrU,IAAK,EACL0U,IAAK,EAELC,SAAU5D,EACVxR,YAAY,GACZqV,UAAU,IACV/c,UAAU,UACV8G,MAAO,CAAE4H,UAAW,SAAUrH,MAAO,SACrCQ,SAAU,SAACC,GACTqR,EAAara,QAAUgJ,EAAEC,OAAOhO,MAC5Bqf,GAAiBC,EAAmB,QAK7CD,EAAgBxS,OAAS,GACxB9K,EAAArF,EAAAC,cAAA,KAAGoQ,MAAO,CAAE5C,SAAU,OAAQhE,MAAO,QAAUkZ,GAGjDtd,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,qCACblE,EAAArF,EAAAC,cAAA,SACEoF,EAAArF,EAAAC,cAAA,gCACmB,IAChBwc,GACCpX,EAAArF,EAAAC,cAACqY,EAAA,EAAD,CACEiO,KAAM1D,GACNmD,SAAUA,GACVQ,cAAe,EACfC,UAAW,EACXC,WAAW,IAEZ,SAQTC,GAAY,WAChB,OACEthB,EAAArF,EAAAC,cAAC+T,EAAA,SAAD,KACE3O,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,KACEjE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,KACEjE,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,qCACblE,EAAArF,EAAAC,cAAA,OAAKoQ,MAAO,CAAEvD,OAAQ,iBACpBzH,EAAArF,EAAAC,cAAC2mB,EAAA,EAAD,CAAOnd,MAAM,QAAQ6F,KAAM,GAAIoK,YAAY,UAG/CrU,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,qCACblE,EAAArF,EAAAC,cAAA,SACEoF,EAAArF,EAAAC,cAAA,4CAKRoF,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,KACEjE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,KACEjE,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,sCACblE,EAAArF,EAAAC,cAAA,KAAGsJ,UAAU,YACV5E,EAAa3C,eAAewF,YAE/BnC,EAAArF,EAAAC,cAAA,KAAGsJ,UAAU,aACV5E,EAAa7C,iBAAiBkF,cAEjC3B,EAAArF,EAAAC,cAAA,KAAGsJ,UAAU,YAAb,SACS,IACNsd,YAAWliB,EAAa3D,UAAUwe,YAAa,eAElDna,EAAArF,EAAAC,cAAA,KAAGsJ,UAAU,YAAb,UACU5E,EAAa3D,UAAU8lB,aAEjCzhB,EAAArF,EAAAC,cAAA,KAAGsJ,UAAU,aAAb,YACY5E,EAAa3D,UAAU+lB,WAEnC1hB,EAAArF,EAAAC,cAAA,KAAGsJ,UAAU,sCACV,IADH,0BAE0B,KAE1BlE,EAAArF,EAAAC,cAAA,KAAGsJ,UAAU,iBACXlE,EAAArF,EAAAC,cAAA,wEAuJd,OAAOoF,EAAArF,EAAAC,cAjGa,WAClB,OACEoF,EAAArF,EAAAC,cAAA,WACEoF,EAAArF,EAAAC,cAAC+mB,EAAAhnB,EAAD,CACE6W,OAAQgO,GACRoC,YAAa/B,GACbgC,eAAgB/B,GAChB9U,MAAOoU,GACP0C,iBAAiB,WAEjB9hB,EAAArF,EAAAC,cAAA,OACEoQ,MAAO,CACL2H,aAAc,MACdpJ,OAAQ,OACRwY,cAAe,MACf3Z,SAAU,OAEVhE,MAAOwD,IAAaA,GAAUyB,aAAajF,MAC3CkF,WAAY1B,IAAaA,GAAUyB,aAAaC,aAGlC,yBAAfhQ,IAAyCA,IAE5C0G,EAAArF,EAAAC,cAAA,OAAKoQ,MAAO,CAAE0I,QAAS,MAAOD,UAAW,SACtCkK,GACe,QAAfrkB,IAAwB0G,EAAArF,EAAAC,cAACkmB,GAAD,MACT,oBAAfxnB,IAAoC0G,EAAArF,EAAAC,cAAC2lB,GAAD,MACrB,yBAAfjnB,IAAyC0G,EAAArF,EAAAC,cAAC0mB,GAAD,MAC1B,sBAAfhoB,IAAsC0G,EAAArF,EAAAC,cAACslB,GAAD,MACvB,wBAAf5mB,IACC6F,EAAOoL,eAAe/O,YAAcwE,EAAArF,EAAAC,cAACylB,GAAD,OAEvCrJ,EAAkBlM,OAAS,GAC1B9K,EAAArF,EAAAC,cAAA,WACEoF,EAAArF,EAAAC,cAAA,KAAGoQ,MAAO,CAAE5G,MAAO,MAAOgE,SAAU,SACjC4O,EAAmB,MAII,IAA7BA,EAAkBlM,QACjB9K,EAAArF,EAAAC,cAAA,WACEoF,EAAArF,EAAAC,cAAA,KAAGoQ,MAAO,CAAE5G,MAAO,MAAOgE,SAAU,SACjC4O,EAAmB,MAI1BhX,EAAArF,EAAAC,cAAA,OAAKsJ,UAAU,+BACG,oBAAf5K,IACC0G,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE+G,MAAO,CACL/E,gBACE2B,IACAA,GAAUwB,0BAA0BnD,gBACtC7B,MACEwD,IACAA,GAAUwB,0BAA0BC,aAAajF,MACnDkF,WACE1B,IACAA,GAAUwB,0BAA0BC,aAAaC,YAErDiD,QAAS,WACPtU,EAAa+K,QACT2U,GAAe1f,EAAa+K,SAC5B2U,GAAe3f,MAGpB,IAlBH,YAuBc,QAAfsB,IACC0G,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE+G,MAAO,CACL/E,gBACE2B,IACAA,GAAUwB,0BAA0BnD,gBACtC7B,MACEwD,IACAA,GAAUwB,0BAA0BC,aAAajF,MACnDkF,WACE1B,IACAA,GAAUwB,0BAA0BC,aAAaC,YAErDiD,QAAS,YAlII,WACzB,IAAM9B,EAAcjP,GAAWpD,OAASA,EAExCX,IACG2L,KADH,GAAAzL,OAEOC,6BAFP,2BAGI,CACEoqB,eAAgB9K,GAChB+K,IAAK5E,EAAara,SAEpB,CACE9K,QAAS,CAAEC,cAAa,UAAAR,OAAY8S,MAGvCnS,KAAK,SAAClB,GACsB,IAAvBA,EAAIsB,KAAKsC,YACXuiB,EAAmB,IACnBpd,EAAS/C,aAAY,IACrB+C,EAASpD,YAAcjG,OAAAqS,EAAA,EAAArS,CAAA,GAAKwI,EAAa3D,UAAnB,CAA8B3D,iBAEpDmI,EAAS1G,YAAiB,mBAEzByjB,GACC1D,WAAW,WACTsG,MACC,KAGLhkB,aAAakB,QACX,iBACAhB,KAAKiB,UAAU,CACbilB,UAAWlqB,GACXmqB,UAAWtE,GACXuE,SAAUrE,GACV5hB,UAAU,KAGV8hB,IAAQd,GAAwB,GACpCxS,SAAS3B,KAAKgC,MAAMuO,SAAW,WAEN,IAAvBniB,EAAIsB,KAAKsC,WACXuiB,EAAmB,iBA0FX8E,KAbJ,aAyBL,eC+IMC,EA/zBA,SAAC5nB,GACd,IAAM4E,EAAegB,YAAY,SAAC5G,GAAD,OAAWA,EAAM4F,eAD1BqB,EAEQC,mBAAStB,EAAanD,UAF9BqI,EAAA1N,OAAA4J,EAAA,EAAA5J,CAAA6J,EAAA,GAEjBxE,EAFiBqI,EAAA,GAEP+S,EAFO/S,EAAA,GAGlBuY,EAAWzc,YAAY,SAAC5G,GAAD,OAAWA,EAAM2F,eACxC2Y,EAAa1X,YAAY,SAAC5G,GAAD,OAAWA,EAAM6F,SAC1CY,EAAWC,cACXC,EAAaC,YAAY,SAAC5G,GAAD,OAAWA,EAAMyF,SANxB2B,EAOEF,mBAASP,EAAWjI,OAPtB6I,EAAAnK,OAAA4J,EAAA,EAAA5J,CAAAgK,EAAA,GAOjB1I,EAPiB6I,EAAA,GAOV0B,EAPU1B,EAAA,GAQlB6W,EAAmBC,wBAAc,CAAEtB,MAAO,wBARxBrV,EASYR,mBAASP,EAAWU,UAAUM,YAT1CC,EAAAxK,OAAA4J,EAAA,EAAA5J,CAAAsK,EAAA,GASjBC,EATiBC,EAAA,GASLE,EATKF,EAAA,GAAAG,EAUgBb,mBAAS,IAVzBc,EAAA5K,OAAA4J,EAAA,EAAA5J,CAAA2K,EAAA,GAUjBE,EAViBD,EAAA,GAUHE,EAVGF,EAAA,GAAAG,EAWYjB,mBAASP,EAAWU,UAAUgB,YAX1CD,EAAAhL,OAAA4J,EAAA,EAAA5J,CAAA+K,EAAA,GAWjBE,EAXiBD,EAAA,GAWLE,EAXKF,EAAA,GAAAG,EAYYrB,mBAAS,IAZrBsB,EAAApL,OAAA4J,EAAA,EAAA5J,CAAAmL,EAAA,GAYLG,GAZKF,EAAA,GAAAA,EAAA,IAAAG,EAaQzB,mBAAS,IAbjB0B,EAAAxL,OAAA4J,EAAA,EAAA5J,CAAAuL,EAAA,GAajB2C,EAbiB1C,EAAA,GAaPyM,EAbOzM,EAAA,GAAAG,EAcc7B,mBAAS,GAdvB8B,EAAA5L,OAAA4J,EAAA,EAAA5J,CAAA2L,EAAA,GAcjB8f,EAdiB7f,EAAA,GAcJ8f,EAdI9f,EAAA,GAAAwC,EAekBtE,mBAAS,GAf3BuE,EAAArO,OAAA4J,EAAA,EAAA5J,CAAAoO,EAAA,GAejBud,EAfiBtd,EAAA,GAeFud,EAfEvd,EAAA,GAAAC,GAgBkBxE,mBACxCP,EAAW6J,cAAcA,eAjBH7E,GAAAvO,OAAA4J,EAAA,EAAA5J,CAAAsO,GAAA,GAgBFud,IAhBEtd,GAAA,GAAAA,GAAA,IAoBlBud,GAAgB/f,kBAAO,GACvBsS,GAAmBtS,kBAAO,GArBRyC,GAuBc1E,mBAAS,CAC7CqF,gBAAiB,UACjBwC,OAAQ,IACRnC,QAAS,OACTsD,cAAe,SACfL,OAAQ,OACRC,gBAAiB,KA7BKjE,GAAAzO,OAAA4J,EAAA,EAAA5J,CAAAwO,GAAA,GAuBjBqD,GAvBiBpD,GAAA,GAuBJqD,GAvBIrD,GAAA,GAAAC,GAgCQ5E,mBAAS,WAhCjB6E,GAAA3O,OAAA4J,EAAA,EAAA5J,CAAA0O,GAAA,GAgCjB8F,GAhCiB7F,GAAA,GAgCPod,GAhCOpd,GAAA,GAAAG,GAiCwChF,mBAAS,CACvEwD,MAAO,UAlCeyB,GAAA/O,OAAA4J,EAAA,EAAA5J,CAAA8O,GAAA,GAiCjBiB,GAjCiBhB,GAAA,GAiCSiB,GAjCTjB,GAAA,GAAAG,GAqCoCpF,mBAAS,CACnEwD,MAAO,UAtCe8B,GAAApP,OAAA4J,EAAA,EAAA5J,CAAAkP,GAAA,GAqCjBiB,GArCiBf,GAAA,GAqCOgB,GArCPhB,GAAA,GAAAG,GAyCsBzF,mBAAS,CACrDwD,MAAO,UACP6P,eAAgB,OAChBP,QAAS,QA5CalN,GAAA1P,OAAA4J,EAAA,EAAA5J,CAAAuP,GAAA,GAyCjByc,GAzCiBtc,GAAA,GAyCAuc,GAzCAvc,GAAA,GAAAG,GA+CY/F,mBAAS,CAC3CwD,MAAO,QACPkC,QAAS,SACT6N,OAAQ,UACRkG,mBAAoB,cAnDEzT,GAAA9P,OAAA4J,EAAA,EAAA5J,CAAA6P,GAAA,GA+CjBqc,GA/CiBpc,GAAA,GA+CLqc,GA/CKrc,GAAA,GAAAG,GAuDUnG,mBAAS,CACzC0F,QAAS,OACTC,eAAgB,SAzDMS,GAAAlQ,OAAA4J,EAAA,EAAA5J,CAAAiQ,GAAA,GAuDjBN,GAvDiBO,GAAA,GAuDNN,GAvDMM,GAAA,GAAAG,GA4DoBvG,mBAAS,CACnD2I,OAAQ,OACRgC,MAAO,UA9DelE,GAAAvQ,OAAA4J,EAAA,EAAA5J,CAAAqQ,GAAA,GA4DjB+b,GA5DiB7b,GAAA,GA4DD8b,GA5DC9b,GAAA,GAAAG,GAiE0B5G,mBAAS,CACzD0F,QAAS,OACTsD,cAAe,QAnEOjC,GAAA7Q,OAAA4J,EAAA,EAAA5J,CAAA0Q,GAAA,GAiEjB4b,GAjEiBzb,GAAA,GAiEE0b,GAjEF1b,GAAA,GAAAG,GAsEAlH,mBAAS,CAC/B0F,QAAS,OACTC,eAAgB,QAChBmB,WAAY,MACZ4L,aAAc,QACdG,UAAW,SALN6P,GAtEiBxsB,OAAA4J,EAAA,EAAA5J,CAAAgR,GAAA,MAurBxB,OAzmBA/E,oBAAU,WACR,GACE1C,EAAWyI,cAAcpQ,MACgB,IAAzC2H,EAAWyI,cAAcpQ,KAAKqQ,OAC9B,CACA,IAAMG,EAAS7I,EAAWyI,cAAcpQ,KAAKoQ,cAAcI,OAC3D1Q,QAAQC,IAAI4H,EAAWyI,cAAcpQ,KAAKoQ,eAE1CF,GAAe,SAACrR,GACd,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiBiD,EAAOjD,gBAAP,GAAAtO,OACVuR,EAAOjD,iBACV1O,EAAK0O,gBACTsD,OAAM,GAAA5R,OAAK0I,EAAWyI,cAAcpQ,KAAKoQ,cAAcI,OAAOK,OAAxD,MACNC,gBAAe,OAAA7R,OAASuR,EAAOO,iBAAiB,GAAjC,KACf2L,iBAAkB,YAClBmO,eAAgB,YAGpBV,GACExiB,EAAWyI,cAAcpQ,MACyC,SAAhE2H,EAAWyI,cAAcpQ,KAAKoQ,cAAcI,OAAOoC,SACjD,OACA,WAGN+X,GAAqB,SAAC9rB,GACpB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEEqS,cAC0B,UAAxBV,EAAOQ,aAA2B,cAAgB,UAIxD5C,GAA4B,SAACvP,GAC3B,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAK,GAAAzM,OAAKuR,EAAOrC,yBAAyBzC,OAC1CkF,WAAU,GAAA3R,OAAKuR,EAAOrC,yBAAyByC,YAC/ClB,SAAQ,GAAAzQ,OAAKuR,EAAOrC,yBAAyBoD,MAC7C9B,WAC2C,SAAzCe,EAAOrC,yBAAyBgD,KAAkB,OAAS,SAC7DC,UAC4C,QAA1CZ,EAAOrC,yBAAyBkD,OAC5B,SACA,aAIV7C,GAA0B,SAAC3P,GACzB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAK,GAAAzM,OAAKuR,EAAOjC,uBAAuB7C,OACxCkF,WAAU,GAAA3R,OAAKuR,EAAOjC,uBAAuBqC,YAC7ClB,SAAQ,GAAAzQ,OAAKuR,EAAOjC,uBAAuBgD,MAC3C9B,WACyC,SAAvCe,EAAOjC,uBAAuB4C,KAAkB,OAAS,SAC3DC,UAC2C,SAAzCZ,EAAOjC,uBAAuB8C,OAC1B,SACA,aAGVvR,QAAQC,IAAIyQ,EAAOS,iBACnBoZ,GAAmB,SAACxrB,GAClB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAO8E,EAAOS,gBAAP,GAAAhS,OACAuR,EAAOS,iBACVpS,EAAKoS,oBAGbjD,GAAa,SAACnP,GACZ,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEEgP,eAAgB2C,EAAOQ,aAAP,GAAA/R,OACTuR,EAAOQ,cACVnS,EAAKoS,gBACTC,cAAuC,UAAxBV,EAAOQ,aAA2B,cAAgB,OAGrEyZ,GAAkB,SAAC5rB,GACjB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEEgU,MAAOrC,EAAOsa,SAASjY,MAAhB,GAAA5T,OACAuR,EAAOsa,SAASjY,OACnBhU,EAAKgU,MACThC,OAAQL,EAAOsa,SAASja,OAAhB,GAAA5R,OACDuR,EAAOsa,SAASja,QACnBhS,EAAKgS,WAGb0Z,GAAc,SAAC1rB,GACb,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAO8E,EAAOua,wBAAwBrf,MAA/B,GAAAzM,OACAuR,EAAOua,wBAAwBrf,OAClC7M,EAAK6M,MACTkF,WAAU,GAAA3R,OAAKuR,EAAOua,wBAAwBna,YAC9ClB,SAAQ,GAAAzQ,OAAKuR,EAAOua,wBAAwBxZ,MAC5C9B,WAC0C,SAAxCe,EAAOua,wBAAwB5Z,KAAkB,OAAS,SAC5DC,UAC2C,QAAzCZ,EAAOua,wBAAwB1Z,OAC3B,SACA,kBAGL,GAAI1J,EAAW+Y,qBAAsB,CAC1C,IAAMlQ,EAAS7I,EAAW+Y,qBAAqB1gB,KAAKoQ,cAAcI,OAClE1Q,QAAQC,IAAI4H,EAAW+Y,sBACvBxQ,GAAe,CACb3C,gBAAiB,UACjBwC,OAAQ,IACRnC,QAAS,OACTsD,cAAe,SACfL,OAAQ,OACRC,gBAAiB,KAEnBqZ,GAAY3Z,GAA8B,SAApBA,EAAOoC,SAAsB,OAAS,WAE5D+X,GAAqB,SAAC9rB,GACpB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEEqS,cAC0B,UAAxBV,EAAOQ,aAA2B,cAAgB,UAIxD5C,GAA4B,SAACvP,GAC3B,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAK,GAAAzM,OAAKuR,EAAOrC,yBAAyBzC,OAC1CkF,WAAU,GAAA3R,OAAKuR,EAAOrC,yBAAyByC,YAC/ClB,SAAQ,GAAAzQ,OAAKuR,EAAOrC,yBAAyBoD,MAC7C9B,WAC2C,SAAzCe,EAAOrC,yBAAyBgD,KAAkB,OAAS,SAC7DC,UAC4C,QAA1CZ,EAAOrC,yBAAyBkD,OAC5B,SACA,aAIV7C,GAA0B,SAAC3P,GACzB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAK,GAAAzM,OAAKuR,EAAOjC,uBAAuB7C,OACxCkF,WAAU,GAAA3R,OAAKuR,EAAOjC,uBAAuBqC,YAC7ClB,SAAQ,GAAAzQ,OAAKuR,EAAOjC,uBAAuBgD,MAC3C9B,WACyC,SAAvCe,EAAOjC,uBAAuB4C,KAAkB,OAAS,SAC3DC,UAC2C,SAAzCZ,EAAOjC,uBAAuB8C,OAC1B,SACA,aAGVvR,QAAQC,IAAIyQ,EAAOS,iBACnBoZ,GAAmB,SAACxrB,GAClB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAO8E,EAAOS,gBAAP,GAAAhS,OACAuR,EAAOS,iBACVpS,EAAKoS,oBAGbjD,GAAa,SAACnP,GACZ,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEEgP,eAAgB2C,EAAOQ,aAAP,GAAA/R,OACTuR,EAAOQ,cACVnS,EAAKoS,gBACTC,cAAuC,UAAxBV,EAAOQ,aAA2B,cAAgB,OAGrEyZ,GAAkB,SAAC5rB,GACjB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEEgU,MAAOrC,EAAOsa,SAASjY,MAAhB,GAAA5T,OACAuR,EAAOsa,SAASjY,OACnBhU,EAAKgU,MACThC,OAAQL,EAAOsa,SAASja,OAAhB,GAAA5R,OACDuR,EAAOsa,SAASja,QACnBhS,EAAKgS,WAGb0Z,GAAc,SAAC1rB,GACb,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE6M,MAAO8E,EAAOua,wBAAwBrf,MAA/B,GAAAzM,OACAuR,EAAOua,wBAAwBrf,OAClC7M,EAAK6M,MACTkF,WAAU,GAAA3R,OAAKuR,EAAOua,wBAAwBna,YAC9ClB,SAAQ,GAAAzQ,OAAKuR,EAAOua,wBAAwBxZ,MAC5C9B,WAC0C,SAAxCe,EAAOua,wBAAwB5Z,KAAkB,OAAS,SAC5DC,UAC2C,QAAzCZ,EAAOua,wBAAwB1Z,OAC3B,SACA,eAIX,CAAC1J,EAAWyI,gBAEf/F,oBAAU,WACJ1C,EAAW6J,cAAcA,gBAC3ByY,GAAiBtiB,EAAW6J,cAAcA,eACtC7J,EAAW6J,cAAcA,cAAcY,OAAS,IAClDqK,GAAiBnS,SAAU,IAkB3B3C,EAAWjI,OACbuK,EAAStC,EAAWjI,OAEtBI,QAAQC,IAAIyqB,KACX,CAAC7iB,EAAW6J,cAAe7J,EAAWjI,MAAOiI,EAAWsc,aAE3D5Z,oBAAU,WACR,GACsC,SAApC1C,EAAWU,UAAUgB,YACrB1B,EAAWkK,eAAe/O,WAI1B,GAFAwG,EAAc3B,EAAWU,UAAUgB,YAGjC1B,EAAWkK,eAAe/O,WAAWsP,OAAS,IAC7C/I,IACAzC,EAAa3C,eAAeoF,WAC7B,KAAA2hB,EAE2BrjB,EAAWkK,eAAe/O,WAAWglB,OAC9D,SAAC5kB,GAAD,OAAUA,EAAKmG,aAAe1B,EAAWU,UAAUgB,aAD9C4hB,EAFP7sB,OAAA4J,EAAA,EAAA5J,CAAA4sB,EAAA,MAMAC,GACExjB,EACE7C,YAAsB,CACpB6E,WAAYwhB,EAAiBxhB,WAC7BJ,WAAY4hB,EAAiB5hB,WAC7BiD,SAAU2e,EAAiB3e,iBAG5B,GACL3E,EAAWkK,eAAe/O,WAAWsP,OAAS,GAC9C/I,IACCzC,EAAa3C,eAAeoF,WAC7B,KAAA6hB,EAC2BvjB,EAAWkK,eAAe/O,WAAWglB,OAC9D,SAAC5kB,GAAD,OAAUA,EAAKmG,aAAe1B,EAAWU,UAAUgB,aAD9C4hB,EADP7sB,OAAA4J,EAAA,EAAA5J,CAAA8sB,EAAA,MAKAD,GACExjB,EACE7C,YAAsB,CACpB6E,WAAYwhB,EAAiBxhB,WAC7BJ,WAAY4hB,EAAiB5hB,WAC7BiD,SAAU2e,EAAiB3e,cAKpC,CACD3E,EAAWU,UAAUgB,WACrB1B,EAAWkK,eAAe/O,WAC1Bwc,EAAW1e,aAGbyJ,oBAAU,WAGR,GAFIzD,GAAciY,EAAYjY,EAAanD,UAEvCmD,EAAa7C,iBAAkB,CACjC,IAAMonB,EAAMvkB,EAAa7C,iBAEzBmF,EAAgBiiB,EAAIliB,cACpBH,EAAcqiB,EAAIxiB,YAOpB,GAA+C,SAA3C/B,EAAa3C,eAAeoF,WAAuB,CACrD,IAAM8hB,EAAMvkB,EAAa3C,eAEF,SAAnBknB,EAAI9hB,YAAwC,KAAfA,IAE/BK,EAAcyhB,EAAI1hB,YAClB4M,EAAY8U,EAAI7e,UAYd6e,EAAI9hB,YACe,SAAnB8hB,EAAI9hB,YACW,KAAfA,GACAoT,GAAiBnS,SACjB3C,EAAWkK,eAAenS,QAE1B+c,GAAiBnS,SAAU,EAC3B7C,EACEqK,YAAiB,CACfzI,WAAYzC,EAAa3C,eAAeoF,WACxC0I,YAAapK,EAAWkK,eAAenS,UAK3CyrB,EAAI9hB,aAAeA,GACnB1B,EAAW6J,cAAcA,eACyB,IAAlD7J,EAAW6J,cAAcA,cAAcY,SAEvCqK,GAAiBnS,SAAU,MAUhC,CACD1D,EAAa3C,eACb2C,EAAa7C,iBACb6C,EAAanD,SACbkE,EAAWkK,eAAenS,QAO5B2K,oBAAU,aAQP,CAACzD,EAAa3C,eAAeoF,WAAY1B,EAAWkK,eAAenS,QAEtE2K,oBAAU,WACJzD,EAAaxC,WAAa8lB,GAAc5f,UAE1C7C,EACEkK,YAAc,CACZhJ,WAAY/B,EAAa7C,iBAAiB4E,WAC1CjJ,MAAOiI,EAAWjI,SAGtB+c,GAAiBnS,SAAU,IAE5B,CAAC1D,EAAaxC,WAEjBiG,oBAAU,WACR,GAAIga,EAASzY,aAAajF,aAAc,CAEtC,IAAMykB,EAAK/G,EAASzY,aAAajF,aAKjC,GAJAqjB,EAAiBoB,EAAGhZ,QAKlBxL,EAAa7C,iBAAiB4E,YAC9BhB,EAAWjI,OACXwqB,GAAc5f,QAEd4f,GAAc5f,SAAU,EAEnB1D,EAAaxC,WAEhBqD,EACEkK,YAAc,CACZhJ,WAAY/B,EAAa7C,iBAAiB4E,WAC1CjJ,MAAOiI,EAAWjI,SAGtB+c,GAAiBnS,SAAU,QAExB,IAAK1D,EAAa7C,iBAAiB4E,WAsBxC,GApBuC,SAApChB,EAAWU,UAAUgB,YACnB1B,EAAWU,UAAUgB,YACrBA,GACc,SAAfA,IACF1B,EAAWjI,OAGTiI,EAAWU,UAAUM,YACwB,KAA7C/B,EAAa7C,iBAAiB4E,aAE9BlB,EACEkK,YAAc,CACZhJ,WAAYhB,EAAWU,UAAUM,WACjCjJ,MAAOiI,EAAWjI,SAGtBwqB,GAAc5f,SAAU,EACxBmS,GAAiBnS,SAAU,GAIiB,IAA9C+Z,EAASzY,aAAajF,aAAayL,QACnC1S,GACAwqB,GAAc5f,QACd,KACO+gB,EADPjtB,OAAA4J,EAAA,EAAA5J,CACsBimB,EAASzY,aAAajF,aAD5C,MAEAc,EACE9C,YAAwB,CACtBsE,aAAcoiB,EAAYpiB,aAC1BN,WAAY0iB,EAAY1iB,cAIxBjJ,IACF+H,EACEkK,YAAc,CAAEhJ,WAAY0iB,EAAY1iB,WAAYjJ,WAEtDwqB,GAAc5f,SAAU,EACxBmS,GAAiBnS,SAAU,QAExB,GAAI+Z,EAASzY,aAAajF,aAAayL,OAAS,EACrD,GAAKzJ,GAA6B,SAAfA,GAGZ,GAAIA,EAAY,KAAA2iB,EAECjH,EAASzY,aAAajF,aAAamhB,OACvD,SAAC5kB,GAAD,OAAUA,EAAKyF,aAAeA,IADzB0iB,EAFcjtB,OAAA4J,EAAA,EAAA5J,CAAAktB,EAAA,MAMrBD,GACE5jB,EACE9C,YAAwB,CACtBsE,aAAcoiB,EAAYpiB,aAC1BN,WAAY0iB,EAAY1iB,cAG1BjJ,GAAS2rB,IACX5jB,EACEkK,YAAc,CAAEhJ,WAAY0iB,EAAY1iB,WAAYjJ,WAEtDwqB,GAAc5f,SAAU,EACxBmS,GAAiBnS,SAAU,SApB7B7C,EAAS1G,YAAiB,sBAC1B0b,GAAiBnS,SAAU,IAyBlC,CACD+Z,EAASzY,aAAajF,aACtBgB,EAAWjI,MACXkH,EAAa7C,iBAAiB4E,aAgChC0B,oBAAU,WAER,GAAI1C,EAAWkK,eAAe/O,WAI5B,GAHAhD,QAAQC,IAAI4H,EAAWkK,eAAe/O,YACtCgnB,EAAeniB,EAAWkK,eAAe/O,WAAWsP,QAGjDxL,EAAa3C,eAAeoF,YACc,KAA3CzC,EAAa3C,eAAeoF,YACe,SAA3CzC,EAAa3C,eAAeoF,WA4D5BzC,EAAa3C,eAAeoF,YAC5BoT,GAAiBnS,UAEjBmS,GAAiBnS,SAAU,EAC3B7C,EACEqK,YAAiB,CACfzI,WAAYzC,EAAa3C,eAAeoF,WACxC0I,YAAapK,EAAWkK,eAAenS,eA/D3C,GAFAI,QAAQC,IAAI4H,EAAWkK,eAAe/O,WAAWsP,QAEG,IAAhDzK,EAAWkK,eAAe/O,WAAWsP,OAAc,KAC9CmZ,EAD8CntB,OAAA4J,EAAA,EAAA5J,CACtCuJ,EAAWkK,eAAe/O,WADY,MAErD2E,EAAS1G,YAAiB,KAC1BsV,EAAY,IACZ3M,EAAc,IAEdjC,EACE7C,YAAsB,CACpB6E,WAAY8hB,EAAK9hB,WACjBJ,WAAYkiB,EAAKliB,WACjBiD,SAAUif,EAAKjf,YAGnB7E,EACEqK,YAAiB,CACfzI,WAAYkiB,EAAKliB,WACjB0I,YAAapK,EAAWkK,eAAenS,cAIlCiI,EAAWkK,eAAe/O,WAAWsP,OAAS,IAOpDzK,EAAWU,UAAUgB,YACrBA,GACc,SAAfA,IAEA5B,EAAS7C,YAAsB,KAC/B6C,EAAS1G,YAAiB,yBAGE,sBAA1Bue,EAAW1e,aACbyV,EAAY,IACZ3M,EAAc,IAEdjC,EAAS7C,YAAsB,KAC/B6C,EAAS1G,YAAiB,2BAgCjC,CACD4G,EAAWkK,eAAe/O,WAC1B8D,EAAa3C,eAAeoF,WAC5BiW,EAAW1e,WACX+G,EAAWkK,eAAenS,QAa5B2K,oBAAU,WACR,IAAM2H,EAAUC,SAASC,eAAe,WACpC5F,IAAU0F,EAAQG,KAAO7F,IAC5B,CAACA,IAGFhF,EAAArF,EAAAC,cAAC+T,EAAA,SAAD,KACE3O,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAYC,UAAU,2BAA2B8G,MAAOrC,IAItD3I,EAAArF,EAAAC,cAAA,OAAKoQ,MAAOvE,IACVzG,EAAArF,EAAAC,cAAA,OAAKoQ,MAAOoY,IACTpe,GACChF,EAAArF,EAAAC,cAAA,OACEqQ,IAAKjG,EACLd,UAAU,gCACVgH,IAAI,MACJF,MACE8M,EACI,CACEoM,SAAU,QACV/Y,UAAW,OACX7E,QAASgF,IAEX,CACEH,UAAW+X,GAAe3Z,OAC1B6B,SAAU8X,GAAe3X,MACzBjF,QAASgF,MAKrBtL,EAAArF,EAAAC,cAAA,OACEoQ,MACE8M,EACI,CACExR,QAAS,OACTsD,cAAe,SACflC,WAAY,OACZU,SAAU,QAEZ,CACE9B,QAAS,OACTsD,cAAe,SACflC,WAAY,SAIpB1H,EAAArF,EAAAC,cAAA,QAAMsJ,UAAU,OAAO8G,MAAO/D,IAC3B3H,EAAa3C,eAAewF,WAC5BogB,EAAc,GACbviB,EAAArF,EAAAC,cAAA,QACE2R,QAAS,WACPpM,EAASkK,YAAc,CAAEhJ,aAAYjJ,WACrC+H,EAAS1G,YAAiB,yBAI5BuR,MAAO8X,IAEN,IACD9iB,EAAArF,EAAAC,cAACupB,EAAA,EAAD,CAAMla,KAAM,MAEb,KAELjK,EAAArF,EAAAC,cAAA,QAAMsJ,UAAU,OAAO8G,MAAOnE,IAC3BlF,EAEA8gB,EAAgB,GACfziB,EAAArF,EAAAC,cAAA,QACE2R,QAAS,WAMPpM,EAAS1G,YAAiB,uBAE5BuR,MAAO8X,IAEN,IACD9iB,EAAArF,EAAAC,cAACupB,EAAA,EAAD,CAAMla,KAAM,UAUxBjK,EAAArF,EAAAC,cAAA,OAAKoQ,MAAOsY,IACVtjB,EAAArF,EAAAC,cAAA,OACEoQ,MACE8M,EACI,CAAEsM,MAAO,QAASC,SAAU,WAAYjc,SAAU,QAClD,CACEgc,MAAO,QACPC,SAAU,WACVzF,IAAK,SAIZziB,EACC6D,EAAArF,EAAAC,cAAA,KACEsJ,UAAU,OACV8G,MAAOgY,GACPzW,QAAS,WACPzQ,aAAa8H,QACbtH,eAAesH,QACfzD,EAAS/C,aAAY,MANzB,UAYA4C,EAAArF,EAAAC,cAAA,KACEoQ,MAAOgY,GACP9e,UAAU,QACVqI,QAAS,WACPpM,EAAS1G,YAAiB,sBAJ9B,YAeRuG,EAAArF,EAAAC,cAAC0pB,EAAD,QCtzBSC,EAlBA,SAAC7pB,GAAU,IAAAiG,EACYC,qBADZ4D,EAAA1N,OAAA4J,EAAA,EAAA5J,CAAA6J,EAAA,GACjBrH,EADiBkL,EAAA,GAAAA,EAAA,GAGxB,OACExE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAMC,UAAU,UAIbxJ,EAAM8pB,SACPxkB,EAAArF,EAAAC,cAAC6pB,EAAD,CACE9H,WAAYjiB,EAAMiiB,WAClBrjB,WAAYA,EACZwD,SAAUpC,EAAMoC,sCC2iCToZ,IA5hCU,SAACxb,GACxB,IAAMyF,EAAWC,cACXjB,EAASmB,YAAY,SAAC5G,GAAD,OAAWA,EAAMyF,SAFVwB,GAGbL,YAAY,SAAC5G,GAAD,OAAWA,EAAM2F,aAAaiF,eACrB1D,mBAASzB,EAAO+K,gBAJxB1F,EAAA1N,OAAA4J,EAAA,EAAA5J,CAAA6J,EAAA,GAI3BuJ,EAJ2B1F,EAAA,GAIZme,EAJYne,EAAA,GAM5BsT,EAAmBC,wBAAc,CAAEtB,MAAO,wBAC1CnX,EAAegB,YAAY,SAAC5G,GAAD,OAAWA,EAAM4F,eAPhBwB,EAQRF,mBAASzB,EAAO/G,OARR6I,EAAAnK,OAAA4J,EAAA,EAAA5J,CAAAgK,EAAA,GAQ3B1I,EAR2B6I,EAAA,GAQpB0B,EARoB1B,EAAA,GAAAG,EASMR,mBAAS,IATfU,EAAAxK,OAAA4J,EAAA,EAAA5J,CAAAsK,EAAA,GASbQ,GATaN,EAAA,GAAAA,EAAA,IAAAG,EAUEb,mBAAS,IAVXc,EAAA5K,OAAA4J,EAAA,EAAA5J,CAAA2K,EAAA,GAUfW,GAVeV,EAAA,GAAAA,EAAA,IAAAG,EAWEjB,mBAClCtB,EAAa7C,iBAAiB4E,YAZES,EAAAhL,OAAA4J,EAAA,EAAA5J,CAAA+K,EAAA,GAW3BR,EAX2BS,EAAA,GAWfN,EAXeM,EAAA,GAAAG,EAcErB,mBAAS,IAdXsB,EAAApL,OAAA4J,EAAA,EAAA5J,CAAAmL,EAAA,GAc3BF,EAd2BG,EAAA,GAcfF,EAdeE,EAAA,GAAAG,EAeAzB,mBAAS,GAfT0B,EAAAxL,OAAA4J,EAAA,EAAA5J,CAAAuL,EAAA,GAe3Bqf,EAf2Bpf,EAAA,GAehBoiB,EAfgBpiB,EAAA,GAAAG,EAgBN7B,mBAAS,IAhBH8B,EAAA5L,OAAA4J,EAAA,EAAA5J,CAAA2L,EAAA,GAgB3BkiB,EAhB2BjiB,EAAA,GAgBnBkiB,EAhBmBliB,EAAA,GAAAwC,EAiBItE,mBAAS,IAjBbuE,EAAArO,OAAA4J,EAAA,EAAA5J,CAAAoO,EAAA,GAiB3Buc,GAjB2Btc,EAAA,GAiBd0f,GAjBc1f,EAAA,GAAAC,GAkBoBxE,mBAAS,CAC7DqF,gBAAiB,QACjB7B,MAAO,UApByBiB,GAAAvO,OAAA4J,EAAA,EAAA5J,CAAAsO,GAAA,GAkB3B0f,GAlB2Bzf,GAAA,GAkBN0f,GAlBM1f,GAAA,GAAAC,GAsBwB1E,mBAAS,CACjEqF,gBAAiB,QACjB7B,MAAO,UAxByBmB,GAAAzO,OAAA4J,EAAA,EAAA5J,CAAAwO,GAAA,GAsB3Ba,GAtB2BZ,GAAA,GAsBJa,GAtBIb,GAAA,GAAAC,GA0BQ5E,mBAAS,CACjD,CAAE3C,MAAO,EAAGE,MAAO,SA3BasH,GAAA3O,OAAA4J,EAAA,EAAA5J,CAAA0O,GAAA,GA0B3Bwf,GA1B2Bvf,GAAA,GA0BZwf,GA1BYxf,GAAA,GAAAG,GA6BMhF,mBAAS,IA7BfiF,GAAA/O,OAAA4J,EAAA,EAAA5J,CAAA8O,GAAA,GA6B3B9G,GA7B2B+G,GAAA,GA6BbnB,GA7BamB,GAAA,GAAAG,GA8BApF,mBAAS,IA9BTsF,GAAApP,OAAA4J,EAAA,EAAA5J,CAAAkP,GAAA,GA8B3B6X,GA9B2B3X,GAAA,GA8BhB4X,GA9BgB5X,GAAA,GAAAG,GA+BFzF,mBAAS,IA/BP4F,GAAA1P,OAAA4J,EAAA,EAAA5J,CAAAuP,GAAA,GA+B3B0X,GA/B2BvX,GAAA,GA+BjBwX,GA/BiBxX,GAAA,GAAAG,GAgCwB/F,mBAAS,CACjE,CAAE3C,MAAO,EAAGE,MAAO,QAjCayI,GAAA9P,OAAA4J,EAAA,EAAA5J,CAAA6P,GAAA,GAgC3Bue,GAhC2Bte,GAAA,GAgCJsX,GAhCItX,GAAA,GAAAG,GAmCsBnG,mBAAS,IAnC/BoG,GAAAlQ,OAAA4J,EAAA,EAAA5J,CAAAiQ,GAAA,GAmC3BiW,GAnC2BhW,GAAA,GAmCLiW,GAnCKjW,GAAA,GAAAG,GAoCAvG,mBAAS,IApCTyG,GAAAvQ,OAAA4J,EAAA,EAAA5J,CAAAqQ,GAAA,GAoC3BnP,GApC2BqP,GAAA,GAoChBiQ,GApCgBjQ,GAAA,GAAAG,GAsCJ5G,mBAAS,IAtCL+G,GAAA7Q,OAAA4J,EAAA,EAAA5J,CAAA0Q,GAAA,GAsC3B2d,GAtC2Bxd,GAAA,GAsClByd,GAtCkBzd,GAAA,GAAAG,GAuCIlH,mBAAS,IAvCbmH,GAAAjR,OAAA4J,EAAA,EAAA5J,CAAAgR,GAAA,GAuC3Bud,GAvC2Btd,GAAA,GAuCdud,GAvCcvd,GAAA,GAAAG,GAwCFtH,mBAAStB,EAAanD,UAxCpBkM,GAAAvR,OAAA4J,EAAA,EAAA5J,CAAAoR,GAAA,GAwC3B/L,GAxC2BkM,GAAA,GAwCjBkP,GAxCiBlP,GAAA,GAAAG,GAyCsB5H,oBAAS,GAzC/B8H,GAAA5R,OAAA4J,EAAA,EAAA5J,CAAA0R,GAAA,GAyC3B0U,GAzC2BxU,GAAA,GAyCLyU,GAzCKzU,GAAA,GAAA0V,GA0CExd,oBAAS,GA1CXyd,GAAAvnB,OAAA4J,EAAA,EAAA5J,CAAAsnB,GAAA,GA0C3BmH,GA1C2BlH,GAAA,GA0CfX,GA1CeW,GAAA,GA4C5BxV,GAAWhG,kBAAO,GAClB2iB,GAAgB3iB,kBAAO,GACvB4iB,GAAc5iB,kBAAO,GAGrB6iB,IAFmB7iB,kBAAO,GACVA,kBAAO,GACTA,kBAAO,IAjDOyb,GAkDN1d,oBAAS,GAlDH2d,GAAAznB,OAAA4J,EAAA,EAAA5J,CAAAwnB,GAAA,GAkD3BL,GAlD2BM,GAAA,GAkDnBoH,GAlDmBpH,GAAA,GAmD5BqH,GAAI,IAAI5F,KAnDoBtB,GAoDI9d,mBAASglB,GAAEC,cAAcnW,MAAM,KAAK,IApDxCyP,GAAAroB,OAAA4J,EAAA,EAAA5J,CAAA4nB,GAAA,GAoD3BvE,GApD2BgF,GAAA,GAoDd2G,GApDc3G,GAAA,GAAAG,GAqDA1e,mBAAS,CACzCqF,gBAAiB,QACjBwB,OAAQ,OACRC,WAAY,OACZ2B,aAAc,CACZjQ,KAAM,UACNkQ,WAAY,sBACZlF,MAAO,UACP6F,KAAM,OACNJ,KAAM,QACNE,OAAQ,QACRC,UAAW,MAhEmBuV,GAAAzoB,OAAA4J,EAAA,EAAA5J,CAAAwoB,GAAA,GAqD3B1X,GArD2B2X,GAAA,GAqDhB1X,GArDgB0X,GAAA,GAAAG,GAmEM9e,mBAAS,IAnEf+e,GAAA7oB,OAAA4J,EAAA,EAAA5J,CAAA4oB,GAAA,GAmE3B7iB,GAnE2B8iB,GAAA,GAmEboG,GAnEapG,GAAA,GAAAqG,GAoE0BplB,mBAAS,CACnEse,SAAU,QACVvM,aAAc,MACdC,UAAW,WAvEqBqT,GAAAnvB,OAAA4J,EAAA,EAAA5J,CAAAkvB,GAAA,GAoE3BE,GApE2BD,GAAA,GAoEHE,GApEGF,GAAA,GA0ElCljB,oBAAU,WACR,GAAI5D,EAAO2J,cAAcpQ,MAA6C,IAArCyG,EAAO2J,cAAcpQ,KAAKqQ,OAAc,CACvE,IAAMC,EAAO7J,EAAO2J,cAAcpQ,KAAKoQ,cAAcE,KAErDnB,GAAa,SAACtQ,GACZ,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiB+C,EAAK/C,gBAAL,GAAAtO,OACVqR,EAAK/C,iBACR1O,EAAK0O,gBACTuD,gBAAe,OAAA7R,OAASqR,EAAKS,iBAAiB,GAA/B,KACfhC,OAAQuB,EAAKvB,OAAL,GAAA9P,OAAiBqR,EAAKvB,QAAWlQ,EAAKkQ,OAC9C6B,WAAU,GAAA3R,OAAKqR,EAAKK,aAAaC,YACjClF,MAAK,GAAAzM,OAAKqR,EAAKK,aAAajF,OAC5B+D,WAAuC,SAA3Ba,EAAKK,aAAaQ,KAAkB,OAAS,SACzDC,UAAwC,SAA7Bd,EAAKK,aAAaU,OAAoB,SAAW,SAC5DqL,iBAAkB,YAClBmO,eAAgB,YAIpB4C,GAA0B,SAAC5uB,GACzB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE+R,WAAU,GAAA3R,OAAKqR,EAAKod,8BAA8B9c,YAClDlF,MAAK,GAAAzM,OAAKqR,EAAKod,8BAA8BhiB,OAC7C+D,WAC8C,SAA5Ca,EAAKod,8BAA8Bvc,KAC/B,OACA,SACNC,UACgD,SAA9Cd,EAAKod,8BAA8Brc,OAC/B,SACA,aAIV3D,GAAyB,SAAC7O,GACxB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiB+C,EAAKI,0BAA0BnD,gBAA/B,GAAAtO,OACVqR,EAAKI,0BAA0BnD,iBAClC1O,EAAK0O,gBACT7B,MAAO4E,EAAKI,0BAA0BC,aAAajF,MAA5C,GAAAzM,OACAqR,EAAKI,0BAA0BC,aAAajF,OAC/C7M,EAAK6M,MACTkF,WAAYN,EAAKI,0BAA0BC,aAAaC,WAA5C,GAAA3R,OACLqR,EAAKI,0BAA0BC,aAAaC,YAC/C,GACJnB,WAC8C,SAA5Ca,EAAKod,8BAA8Bvc,KAC/B,OACA,SACNC,UACgD,SAA9Cd,EAAKod,8BAA8Brc,OAC/B,SACA,aAGVgb,GAAuB,SAACxtB,GACtB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiB+C,EAAKqd,uBAAuBpgB,gBAA5B,GAAAtO,OACVqR,EAAKqd,uBAAuBpgB,iBAC/B1O,EAAK0O,gBACT7B,MAAO4E,EAAKqd,uBAAuBhd,aAAajF,MAAzC,GAAAzM,OACAqR,EAAKqd,uBAAuBhd,aAAajF,OAC5C7M,EAAK6M,MACTkF,WAAYN,EAAKqd,uBAAuBhd,aAAaC,WAAzC,GAAA3R,OACLqR,EAAKqd,uBAAuBhd,aAAaC,YAC5C,GACJnB,WAC8C,SAA5Ca,EAAKod,8BAA8Bvc,KAC/B,OACA,SACNC,UACgD,SAA9Cd,EAAKod,8BAA8Brc,OAC/B,SACA,kBAGL,GAAI5K,EAAOia,qBAAqB1gB,KAAM,CAC3C,IAAMsQ,EAAO7J,EAAOia,qBAAqB1gB,KAAKoQ,cAAcE,KAC5DnB,GAAa,SAACtQ,GACZ,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiB+C,EAAK/C,gBAAL,GAAAtO,OACVqR,EAAK/C,iBACR1O,EAAK0O,gBACTuD,gBAAe,OAAA7R,OAASqR,EAAKS,iBAAiB,GAA/B,KACfhC,OAAQuB,EAAKvB,OAAL,GAAA9P,OAAiBqR,EAAKvB,QAAWlQ,EAAKkQ,OAC9C6B,WAAU,GAAA3R,OAAKqR,EAAKK,aAAaC,YACjClF,MAAK,GAAAzM,OAAKqR,EAAKK,aAAajF,OAC5B+D,WAAuC,SAA3Ba,EAAKK,aAAaQ,KAAkB,OAAS,SACzDC,UAAwC,SAA7Bd,EAAKK,aAAaU,OAAoB,SAAW,SAC5DqL,iBAAkB,YAClBmO,eAAgB,YAIpB4C,GAA0B,SAAC5uB,GACzB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE+R,WAAU,GAAA3R,OAAKqR,EAAKod,8BAA8B9c,YAClDlF,MAAK,GAAAzM,OAAKqR,EAAKod,8BAA8BhiB,OAC7C+D,WAC8C,SAA5Ca,EAAKod,8BAA8Bvc,KAC/B,OACA,SACNC,UACgD,SAA9Cd,EAAKod,8BAA8Brc,OAC/B,SACA,aAIV3D,GAAyB,SAAC7O,GACxB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiB+C,EAAKI,0BAA0BnD,gBAA/B,GAAAtO,OACVqR,EAAKI,0BAA0BnD,iBAClC1O,EAAK0O,gBACT7B,MAAO4E,EAAKI,0BAA0BC,aAAajF,MAA5C,GAAAzM,OACAqR,EAAKI,0BAA0BC,aAAajF,OAC/C7M,EAAK6M,MACTkF,WAAYN,EAAKI,0BAA0BC,aAAaC,WAA5C,GAAA3R,OACLqR,EAAKI,0BAA0BC,aAAaC,YAC/C,GACJnB,WAC8C,SAA5Ca,EAAKod,8BAA8Bvc,KAC/B,OACA,SACNC,UACgD,SAA9Cd,EAAKod,8BAA8Brc,OAC/B,SACA,aAGVgb,GAAuB,SAACxtB,GACtB,OAAOT,OAAAqS,EAAA,EAAArS,CAAA,GACFS,EADL,CAEE0O,gBAAiB+C,EAAKqd,uBAAuBpgB,gBAA5B,GAAAtO,OACVqR,EAAKqd,uBAAuBpgB,iBAC/B1O,EAAK0O,gBACT7B,MAAO4E,EAAKqd,uBAAuBhd,aAAajF,MAAzC,GAAAzM,OACAqR,EAAKqd,uBAAuBhd,aAAajF,OAC5C7M,EAAK6M,MACTkF,WAAYN,EAAKqd,uBAAuBhd,aAAaC,WAAzC,GAAA3R,OACLqR,EAAKqd,uBAAuBhd,aAAaC,YAC5C,GACJnB,WAC8C,SAA5Ca,EAAKod,8BAA8Bvc,KAC/B,OACA,SACNC,UACgD,SAA9Cd,EAAKod,8BAA8Brc,OAC/B,SACA,eAIX,CAAC5K,EAAO2J,gBAEX/F,oBAAU,WAGR,GAFIzD,GAAciY,GAAYjY,EAAanD,UAEvCmD,EAAa7C,iBAAkB,CACjC,IAAMonB,EAAMvkB,EAAa7C,iBACzBmF,EAAgBiiB,EAAIliB,cACpBH,EAAcqiB,EAAIxiB,YAIhB/B,EAAa7C,kBAAoB0C,EAAO/G,OAC1C+H,EACEkP,YAA2B,CACzBhO,WAAY/B,EAAa7C,iBAAiB4E,WAC1C+N,YAAa,IACbhX,MAAO+G,EAAO/G,UAInB,CAACkH,EAAa7C,mBAEjBsG,oBAAU,WACR,IAAM8gB,EAAMvkB,EAAa3C,eAErBknB,EAAI9hB,aACN2jB,GAAY1iB,SAAU,EACtBZ,EAAcyhB,EAAI1hB,YAElBH,EAAc6hB,EAAI9hB,cAInB,CAACzC,EAAa3C,eAAeoF,aAYhCgB,oBAAU,WACJoX,KACFuL,GAAY1iB,SAAU,EACtBxK,QAAQC,IAAIitB,GAAY1iB,WAEzB,CAACmX,KAEJpX,oBAAU,WACJ5D,EAAO/G,OACTuK,EAASxD,EAAO/G,OAIhB+G,EAAO4B,UAAUC,gBACjB7B,EAAO/G,OACPqtB,GAAYziB,UAEZ7C,EAASiK,YAAgBjL,EAAO/G,QAChCqtB,GAAYziB,SAAU,IAgBvB,CACD7D,EAAO/G,MACP+G,EAAO4B,UACP5B,EAAO4B,UAAUM,WACjB/B,EAAa7C,iBAAiB4E,aAGhC0B,oBAAU,WACJ5D,EAAO+K,cAAcA,gBACvByY,EAAiBxjB,EAAO+K,eACxB/K,EAAO+K,cAAcA,cAAcoc,YACjC1B,EAAUlN,OAAOvY,EAAO+K,cAAcA,cAAcoc,eAEvD,CAACnnB,EAAO+K,cAAcA,gBAEzBnH,oBAAU,WACR,IAAMyU,EAAOlY,EAAa3D,UAItB6b,IACEA,EAAKqG,WAAWC,GAAatG,EAAKqG,WAElCrG,EAAKuG,UAAUC,GAAYxG,EAAKuG,UAEhCvG,EAAK0N,uBACPhH,GAAyB1G,EAAK0N,uBAE5B1N,EAAKxf,WAAWsf,GAAaE,EAAKxf,WAElCwf,EAAK2N,SAASC,GAAW5N,EAAK2N,SAE9B3N,EAAK6N,aAAaC,GAAe9N,EAAK6N,eAE3C,CAAC/lB,EAAa3D,YAEjBoH,oBAAU,WACJzD,EAAazC,cAAckpB,GAAgBzmB,EAAazC,eAC3D,CAACyC,EAAazC,eAEjBkG,oBAAU,WACRwU,GAAYjY,EAAanD,UAEpBmD,EAAanD,UAAa+gB,IAAyBe,KACtDH,GAAa,IACbE,GAAY,IACZ1G,GAAa,MAEd,CAAChY,EAAanD,SAAU+gB,KAE3Bna,oBAAU,WAEN0e,IACA5D,IACA7lB,IACAsH,EAAanD,UACbopB,IAEApI,IAAwB,IACzB,CAAC7d,EAAanD,WAEjB,IAAMoqB,GAAsB,WAC1B9uB,IACGC,IADH,GAAAC,OACUC,iEADV,mBACuE,CACnEC,OAAQ,CACNkK,WACEzC,EAAa3C,eAAeoF,YAC5B5C,EAAO4B,UAAUgB,WACnBykB,YAAarM,IAEfjiB,QAAS,CAAEC,cAAa,UAAAR,OAAYwH,EAAOoL,eAAenS,QAC1DC,eAAgB,qBAEjBC,KAAK,SAACC,GAC2B,IAA5BA,EAASG,KAAKsC,WAChBmF,EAAS1G,YAAiBlB,EAASG,KAAKuC,UAE1C8qB,GAAgBxtB,EAASG,KAAKH,YAE/BoG,MAAM,SAACC,GAAD,OAAWpG,QAAQC,IAAImG,KAEhC8mB,GAAY1iB,SAAU,GAGxBD,oBAAU,WAENzD,EAAaxC,UACbqC,EAAOoL,eAAenS,OACtBstB,GAAY1iB,UAEZ0iB,GAAY1iB,SAAU,EAEtBwW,WAAW,kBAAM+M,MAAuB,OAEzC,CAACjnB,EAAaxC,SAAUqC,EAAOoL,eAAenS,QAEjD2K,oBAAU,WAINzD,EAAanD,UACb+gB,IACAuE,IACAtH,IACAsH,IACAtiB,EAAOoL,eAAenS,OAEtBX,IACG2L,KADH,GAAAzL,OAEOC,iEAFP,wBAGI,CACE6U,WAAY1K,EACZykB,YAAarM,GACbsH,YAAagF,IAAOhF,GAAa,CAAC,WAAWiF,OAAO,SACpDhF,YACAiF,aAAc,CACZC,aAAc5B,GAAc,GAAG/mB,MAC/B4O,WAAYmY,GAAc,GAAG7mB,MAC7B0f,aACAE,YACA8I,qBAAsB3B,GAAsB,GAAG/mB,MAC/CnG,aACAmtB,YAEFE,gBAEF,CACEntB,QAAS,CAAEC,cAAa,UAAAR,OAAYwH,EAAOoL,eAAenS,UAG7DE,KAAK,SAACC,GAC2B,IAA5BA,EAASG,KAAKsC,YAChBmF,EAAS1G,YAAiBlB,EAASG,KAAKuC,UAExCkiB,IAAwB,IAGM,IAA5B5kB,EAASG,KAAKsC,WAChBvD,IACG2L,KADH,GAAAzL,OAEOC,iEAFP,oBAGI,CACE6U,WAAY1K,EACZykB,YAAarM,GACbsH,YAAagF,IAAOhF,GAAa,CAAC,WAAWiF,OAAO,SACpDhF,YACAiF,aAAc,CACZC,aAAc5B,GAAc,GAAG/mB,MAC/B4O,WAAYmY,GAAc,GAAG7mB,MAC7B0f,aACAE,YACA8I,qBAAsB3B,GAAsB,GAAG/mB,MAC/CnG,aACAmtB,YAEFE,gBAEF,CACEntB,QAAS,CACPC,cAAa,UAAAR,OAAYwH,EAAOoL,eAAenS,UAIpDE,KAAK,SAAClB,GACsB,IAAvBA,EAAIsB,KAAKsC,YACX0iB,IAAc,GAEdvd,EAAS1G,YAAiB,yBAC1BksB,IAAU,GAEVxI,IAAwB,GACxB2I,GAAeF,GAAEC,cAAcnW,MAAM,KAAK,IAC1CmV,GAAe,IACfH,EAAa,SAQ1B,CACDplB,EAAanD,SACb+gB,GACA/d,EAAOoL,eAAenS,QAGxB2K,oBAAU,WAIRvK,QAAQC,IACN0G,EAAOoL,eAAenS,MACtBkH,EAAa3C,eAAeoF,WAC5BoY,GACAuL,GAAY1iB,SAIZ7D,EAAOoL,eAAenS,OACtBkH,EAAa3C,eAAeoF,YAC5BoY,IACAuL,GAAY1iB,SAEZujB,KAEsC,IAApCpnB,EAAOoL,eAAevP,WACxBmF,EAAS1G,YAAiB0F,EAAOoL,eAAetP,WAEjD,CACDqE,EAAa3C,eAAeoF,WAC5BoY,GACAhb,EAAOoL,eAAenS,QAyBxB2K,oBAAU,WAEJ3K,IAtBAyQ,GAAS7F,SACXvL,IACGC,IADH,GAAAC,OACUC,6BADV,4BACwE,CACpEM,QAAS,CAAEC,cAAa,UAAAR,OAAYwH,EAAO/G,QAC3CC,eAAgB,qBAEjBC,KAAK,SAACC,GACL,IAAMuuB,EAAOvuB,EAASG,KAAKH,SAC3BmM,GAAgB,kBACdoiB,EAAKhpB,UAAUC,IAAI,SAACC,GAAD,MAAY,CAC7BC,MAAOD,EAAME,QACbC,MAAOH,EAAMI,iBAKlBO,MAAM,SAACC,GAAD,OAAWpG,QAAQC,IAAImG,KAClCiK,GAAS7F,SAAU,EASbwiB,GAAcxiB,SAChBvL,IACGC,IADH,GAAAC,OAEOC,6BAFP,oCAGI,CACEM,QAAS,CAAEC,cAAa,UAAAR,OAAYS,IACpCC,eAAgB,qBAGnBC,KAAK,SAACC,GAEL,IAAMuuB,EAAOvuB,EAASG,KAAKH,SAC3B0kB,GAAwB,kBACtB6J,EAAKvoB,sBAAsBR,IAAI,SAACS,GAAD,MAAW,CACxCP,MAAOO,EAAKC,YACZN,MAAOK,EAAKE,qBAIjBC,MAAM,SAACC,GAAD,OAAWpG,QAAQC,IAAImG,KAElC4mB,GAAcxiB,SAAU,IAEzB,CAAC5K,IAEJ,IAAM2uB,GAAyB,WAC7B5mB,EACEpD,YAAc,CACZod,eACAuH,YACAD,eACAuD,cAAeA,GACfgC,gBAAiBhC,GAAc,GAAG/mB,MAClC4f,aACAE,YACAmH,sBAAuBA,GAAsB,GAAG/mB,MAChDnG,aACAmtB,WACAE,mBAgDN,OACErlB,EAAArF,EAAAC,cAACqsB,EAAD,CAAQtK,WAAYzS,EAAepN,SAAUpC,EAAMoC,UACjDkD,EAAArF,EAAAC,cAACssB,EAAD,MAIC7lB,GAAcU,GACb/B,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAUC,UAAU,OAAO8G,MAAOpD,IAIhC5H,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKC,UAAU,sCACblE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKkjB,GAAI,EAAGzb,GAAI,GACd1L,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,KACEjE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEkjB,GAAI,EACJzb,GAAI,EACJV,MACE8M,EAAmB,CAAE1M,SAAU,OAAU,CAAEG,MAAO,QAGpDvL,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAOwH,IAAI,OAAOT,MAAO,CAAEO,MAAO,SAAlC,WAGAvL,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE4H,KAAK,OACL3H,UAAU,MACV9K,KAAK,OACLguB,UAAQ,EACRpc,MACE8M,EACI,CAAE1P,SAAU,OAAQmD,MAAO,OAAQhC,OAAQ,QAC3C,CAAEgC,MAAO,SAEftN,MAAOkc,GACP9N,IAAKuZ,GAAEC,cAAcnW,MAAM,KAAK,GAChC3D,SAAU,SAACC,GACT0Z,GAAY1iB,SAAU,EACtB8iB,GAAe9Z,EAAEC,OAAOhO,WAI9B+B,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEyH,GAAI,EACJV,MACE8M,EAAmB,CAAE1M,SAAU,OAAU,CAAEA,SAAU,QAGvDpL,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEwH,IAAI,YACJT,MACE8M,EACI,CAAEvM,MAAO,SACT,CAAEA,MAAO,QAASmI,QAAS,QALnC,kBAUA1T,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE4H,KAAK,SAELb,MACE8M,EACI,CAAE1P,SAAU,OAAQmD,MAAO,QAC3B,CAAEhC,OAAQ,OAAQgC,MAAO,SAE/BtN,MAAOyjB,EACPrV,IAAK,EACL0U,IAAK4D,EACL5Y,SAAU,SAACC,GACLA,EAAEC,OAAOhO,MAAQ0mB,GACnBxkB,EACE1G,YAAgB,gCAAA9B,OACkBgtB,KAGtCD,EAAa1Y,EAAEC,OAAOhO,YAK9B+B,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEC,UAAU,OACV8G,MAAO,CAAE1E,QAAS,OAAQsD,cAAe,QAEzC5J,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEyH,GAAG,KACHV,MACE8M,EACI,CACE1M,SAAU,OAEVkI,aAAc,QAEhB,IAGNtT,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEwH,IAAI,OACJT,MACE8M,EACI,CAAEvM,MAAO,SACT,CAAEA,MAAO,OAAQmI,QAAS,QALlC,WAUA1T,EAAArF,EAAAC,cAAA,OACEsJ,UAAU,mCACV8G,MACE8M,EACI,CACE1P,SAAU,OACVgD,SAAU,OACV7B,OAAQ,QACR8d,UAAW,SACXpV,OAAQ,OAEV,CACE1I,OAAQ,QACR8d,UAAW,SACX9b,MAAO,UAIb1O,IAAgBmD,EAAArF,EAAAC,cAACoJ,EAAA,EAAD,MACjBnH,IAAqD,IAArCA,GAAaA,aAAaiO,QACzC9K,EAAArF,EAAAC,cAAA,KAAGoQ,MAAO,CAAE5G,MAAO,QAAnB,iCAIDvH,IACCA,GAAaA,aAAakB,IAAI,SAACupB,EAAM3b,GACnC,OACE3L,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEgS,SAAO,EACP7J,IAAKT,EACLzH,UAAU,MACV+F,KAAM6N,EAAmB,KAAO,GAChC9M,MACE8M,EAAgBhhB,OAAAqS,EAAA,EAAArS,CAAA,CAEVsR,SAAU,QACNqZ,IACJA,KAAgB6F,EAAKC,SACjBzC,GACA3e,IANMrP,OAAAqS,EAAA,EAAArS,CAAA,GASN2qB,IACJA,KAAgB6F,EAAKC,SACjBzC,GACA3e,IAGZoG,QAAS,WACPsY,GAAeyC,EAAKC,YAIrBD,EAAKC,gBAWtBvnB,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKkjB,GAAI,EAAGzb,GAAI,EAAGV,MAAO,CAAEkJ,YAAa,SACvClU,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,KACEjE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,KACEjE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEwH,IAAI,OACJT,MACE8M,EAAmB,CAAEvM,MAAO,SAAY,CAAEA,MAAO,UAHrD,YAQAvL,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAWuH,KAAG,GACZxL,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE4H,KAAK,SACLzS,KAAK,QACLuS,GAAG,OACHzH,UAAU,WACV8G,MACE8M,EACI,CAAE1P,SAAU,OAAQmD,MAAO,QAC3B,CAAEA,MAAO,QAEfQ,SAAU,SAACC,GAAD,OACRiZ,GACEnmB,GAAa0hB,OACX,SAAC5kB,GAAD,OAAUA,EAAKuC,QAAU6N,EAAEC,OAAOhO,WAKvCa,IACCA,GAAaf,IAAI,SAAC0iB,GAChB,OACEzgB,EAAArF,EAAAC,cAAA,UAAQwR,IAAKqU,EAAMxiB,OAAQwiB,EAAMtiB,UAIzC6B,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE4H,KAAK,OACLzS,KAAK,QACLuS,GAAG,QACHC,YAAY,aACZ1H,UAAU,oBACV6H,SAAU,SAACC,GAAD,OAAO8R,GAAa9R,EAAEC,OAAOhO,QACvCA,MAAO4f,GACP7S,MACE8M,EACI,CAAE1P,SAAU,OAAQgD,SAAU,OAC9B,CAAEG,MAAO,WAGjBvL,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE4H,KAAK,OACLzS,KAAK,SACLuS,GAAG,QACHC,YAAY,YACZ1H,UAAU,oBACV6H,SAAU,SAACC,GAAD,OAAOgS,GAAYhS,EAAEC,OAAOhO,QACtCA,MAAO8f,GACP/S,MACE8M,EACI,CAAE1P,SAAU,OAAQgD,SAAU,OAC9B,CAAEG,MAAO,YAInBvL,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEwH,IAAI,OACJT,MACE8M,EAAmB,CAAEvM,MAAO,SAAY,CAAEA,MAAO,UAHrD,kBAQAvL,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAWuH,KAAG,GACZxL,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE4H,KAAK,SACLzS,KAAK,QACLuS,GAAG,QACHzH,UAAU,WACV8G,MACE8M,EACI,CAAE1P,SAAU,OAAQmD,MAAO,QAC3B,CAAEA,MAAO,QAEfQ,SAAU,SAACC,GAAD,OACRkS,GACElB,GAAqBwD,OACnB,SAAC5kB,GAAD,OAAUA,EAAKuC,QAAU6N,EAAEC,OAAOhO,WAKvC+e,IACCA,GAAqBjf,IAAI,SAAC0iB,GACxB,OACEzgB,EAAArF,EAAAC,cAAA,UAAQwR,IAAKqU,EAAMxiB,OAAQwiB,EAAMtiB,UAIzC6B,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE4H,KAAK,SACLzS,KAAK,SACLuS,GAAG,SACHC,YAAY,aACZZ,MACE8M,EACI,CAAE1P,SAAU,OAAQgD,SAAU,OAC9B,CAAEG,MAAO,SAEftN,MAAOjG,GACPkM,UAAU,oBACVsjB,UAAW,GACXvG,UAAW,GACXlV,SAAU,SAACC,GACTsL,GAAatL,EAAEC,OAAOhO,WAI5B+B,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEwH,IAAI,OACJT,MACE8M,EAAmB,CAAEvM,MAAO,SAAY,CAAEA,MAAO,UAHrD,aAMa,KAEbvL,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAWuH,KAAG,GACZxL,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE4H,KAAK,OACLzS,KAAK,QACLuS,GAAG,QACHC,YAAY,UACZ1H,UAAU,oBACV8G,MACE8M,EACI,CAAE1P,SAAU,OAAQgD,SAAU,OAC9B,CAAEG,MAAO,SAEfQ,SAAU,SAACC,GAAD,OAAOoZ,GAAWpZ,EAAEC,OAAOhO,WAIxCiM,EAAcA,eACbA,EAAcA,cAAcud,mBAC1BznB,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACEwH,IAAI,OACJT,MACE8M,EACI,CAAEvM,MAAO,SACT,CAAEA,MAAO,UALjB,eAQe,KAGlBrB,EAAcA,eACbA,EAAcA,cAAcud,mBAC1BznB,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAWuH,KAAG,GACZxL,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE4H,KAAK,OACLzS,KAAK,cACLuS,GAAG,cACHC,YAAY,cACZ1H,UAAU,oBACV8G,MACE8M,EACI,CAAE1P,SAAU,OAAQgD,SAAU,OAC9B,CAAEG,MAAO,SAEfQ,SAAU,SAACC,GAAD,OAAOsZ,GAAetZ,EAAEC,OAAOhO,eAUzD+B,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKC,UAAU,iCACblE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKkjB,GAAG,IAAInc,MAAO,CAAE4H,UAAW,WAC7B1I,EAAcA,eACbA,EAAcA,cAAcwd,mBAAmB5c,OAAS,GACtD9K,EAAArF,EAAAC,cAAA,KAAGoQ,MAAO,CAAE2c,oBAAqB,QAAjC,wBAMR3nB,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKC,UAAU,sCACblE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKkjB,GAAG,KACLjd,EAAcA,eACbA,EAAcA,cAAcwd,oBAC1B1nB,EAAArF,EAAAC,cAAA,OACEoQ,MAAOkb,GACP0B,wBAAyB,CACvBC,OAAQ3d,EAAcA,cAAcwd,mBAAmB3pB,IACrD,SAACnC,GAAD,OAAUA,EAAK8rB,0BAW7B1nB,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKC,UAAU,+BACblE,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CAAKyH,GAAI,EAAGV,MAAO,CAAE4H,UAAW,SAAUU,aAAc,SACtDtT,EAAArF,EAAAC,cAACqJ,EAAA,EAAD,CACE+G,MAAO7E,GACPoG,QAAS,WA1ahB4N,GAEOuH,EAEAD,GAGA5D,GAGA7lB,IAAkC,KAArBA,GAAU8S,OAWvB3O,GAKDnE,KAAcsH,EAAa3D,UAAU3D,WAC9C2tB,IAAU,GACVxlB,EAAS/C,aAAY,IACrB+f,IAAwB,GACxBhd,EAASxJ,YAAQ,CAAEqB,aAAWI,MAAO+G,EAAO/G,SAC5C+H,EAASpD,YAAcjG,OAAAqS,EAAA,EAAArS,CAAA,GAAKwI,EAAa3D,UAAnB,CAA8B3D,iBACpDmI,EAAS1G,YAAiB,QAC1BstB,OAIA5J,IAAwB,GACxB4J,OAhBA5mB,EAASxJ,YAAQ,CAAEqB,aAAWI,MAAO+G,EAAO/G,SAC5C+H,EAAS1G,YAAiB,QAC1B0jB,IAAwB,GACxB4J,MAdA5mB,EAAS1G,YAAiB,mCAH1B0G,EAAS1G,YAAiB,2BAH1B0G,EAAS1G,YAAiB,+BAF1B0G,EAAS1G,YAAiB,sBAF1B0G,EAAS1G,YAAiB,+BA4adikB,IAAc,KALlB,iBAcR1d,EAAArF,EAAAC,cAAC0pB,EAAD,CAIEnH,wBAAyBA,GACzBD,qBAAsBA,GACtBF,qBAAsBA,isNCjjC9B,IAiCalZ,EAAgBlN,YAC3B,uBAD2C,eAAAC,EAAAC,OAAAC,EAAA,EAAAD,CAAAE,IAAAC,KAE3C,SAAAC,EAAO2J,GAAP,IAAAqC,EAAA3K,EAAA,OAAAvB,IAAAK,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cACQ0L,EAAYrC,EAAOsC,QAAQ,KAAM,KADzC7L,EAAAE,KAAA,EAEyBC,IACpB2L,KAAK,4CAA6C,CACjDvC,OAAQqC,EACRG,SAAU,wBACVC,SAAU,sBACVC,UAAW,GACXC,OAAQ,KAETlL,KAAK,SAAClB,GACL,IAA8B,IAA1BA,EAAIsB,KAAK+K,aAAuB,OAAOrM,EAAIsB,KAAKiL,eAX1D,cAEQpL,EAFRjB,EAAAqB,KAAArB,EAAAsB,OAAA,SAcSL,GAdT,wBAAAjB,EAAAuB,SAAA3B,MAF2C,gBAAA4B,GAAA,OAAAjC,EAAAkC,MAAAC,KAAAC,YAAA,IAoBhCgK,EAAmBrM,YAC9B,0BAD8C,eAAAuE,EAAArE,OAAAC,EAAA,EAAAD,CAAAE,IAAAC,KAE9C,SAAAmE,EAAOjE,GAAP,IAAAC,EAAAgB,EAAA,OAAApB,IAAAK,KAAA,SAAAgE,GAAA,cAAAA,EAAA9D,KAAA8D,EAAA7D,MAAA,cAAA6D,EAAA7D,KAAA,EACoBC,IAAMC,IAAN,GAAAC,OACbC,6BADa,8CAEhB,CACEC,OAAQ,CACNqJ,eAAgB/J,EAAI+J,eACpBK,WAAYpK,EAAIoK,WAChBumB,SAAU,wCAGZzvB,eAAgB,qBAVtB,cACQjB,EADRiE,EAAA1C,KAaQP,EAAQhB,EAAIsB,KAAKH,SAASH,MAblCiD,EAAAzC,OAAA,SAcSR,GAdT,wBAAAiD,EAAAxC,SAAAuC,MAF8C,gBAAAK,GAAA,OAAAN,EAAApC,MAAAC,KAAAC,YAAA,IAqBnCuR,EAAmB5T,YAC9B,0BAD8C,eAAAmxB,EAAAjxB,OAAAC,EAAA,EAAAD,CAAAE,IAAAC,KAE9C,SAAA+wB,EAAO7wB,GAAP,IAAAC,EAAA,OAAAJ,IAAAK,KAAA,SAAA4wB,GAAA,cAAAA,EAAA1wB,KAAA0wB,EAAAzwB,MAAA,cAAAywB,EAAAzwB,KAAA,EACoBC,IACfC,IADe,GAAAC,OACRC,iEADQ,oBACsD,CACpEC,OAAQ,CACNkK,WAAY5K,EAAI4K,YAElB7J,QAAS,CAAEC,cAAa,UAAAR,OAAYR,EAAIsT,cACxCpS,eAAgB,qBAEjBC,KAAK,SAACC,GACL,MAAO,CACL2R,cAAe3R,EAASG,KAAKH,SAAS2R,cACtClP,UAAWzC,EAASG,KAAKsC,UACzBC,QAAS1C,EAASG,KAAKuC,WAb/B,cACQ7D,EADR6wB,EAAAtvB,KAAAsvB,EAAArvB,OAAA,SAgBSxB,GAhBT,wBAAA6wB,EAAApvB,SAAAmvB,MAF8C,gBAAAE,GAAA,OAAAH,EAAAhvB,MAAAC,KAAAC,YAAA,IAsBnCoR,EAAgBzT,YAC3B,uBAD2C,eAAAuxB,EAAArxB,OAAAC,EAAA,EAAAD,CAAAE,IAAAC,KAE3C,SAAAmxB,EAAOjxB,GAAP,IAAAC,EAAA,OAAAJ,IAAAK,KAAA,SAAAgxB,GAAA,cAAAA,EAAA9wB,KAAA8wB,EAAA7wB,MAAA,cAAA6wB,EAAA7wB,KAAA,EACoBC,IACfC,IADe,GAAAC,OACRC,iEADQ,iBACmD,CACjEC,OAAQ,CACN0J,WAAYpK,EAAIkK,YAElBnJ,QAAS,CAAEC,cAAa,UAAAR,OAAYR,EAAIiB,QACxCC,eAAgB,qBAEjBC,KAAK,SAACC,GAEL,MAAO,CACLH,MAAOG,EAASG,KAAKH,SAASH,MAC9BoD,WAAYjD,EAASG,KAAKH,SAASiD,WACnCR,UAAWzC,EAASG,KAAKsC,UACzBC,QAAS1C,EAASG,KAAKuC,WAf/B,cACQ7D,EADRixB,EAAA1vB,KAAA0vB,EAAAzvB,OAAA,SAkBSxB,GAlBT,wBAAAixB,EAAAxvB,SAAAuvB,MAF2C,gBAAAE,GAAA,OAAAH,EAAApvB,MAAAC,KAAAC,YAAA,IA0BhCoW,EAA6BzY,YACxC,oCADwD,eAAA2xB,EAAAzxB,OAAAC,EAAA,EAAAD,CAAAE,IAAAC,KAExD,SAAAuxB,EAAOrxB,GAAP,IAAAC,EAAA,OAAAJ,IAAAK,KAAA,SAAAoxB,GAAA,cAAAA,EAAAlxB,KAAAkxB,EAAAjxB,MAAA,cAAAixB,EAAAjxB,KAAA,EACoBC,IACfC,IADe,GAAAC,OAEXC,6BAFW,8DAGd,CACEC,OAAQ,CACN0J,WAAYpK,EAAIkK,WAChBqnB,OAAQvxB,EAAIiY,aAEdlX,QAAS,CAAEC,cAAa,UAAAR,OAAYR,EAAIiB,QACxCC,eAAgB,qBAGnBC,KAAK,SAACC,GACL,MAAO,CACLG,KAAMH,EAASG,KAAKH,SACpByC,UAAWzC,EAASG,KAAKsC,UACzBC,QAAS1C,EAASG,KAAKuC,WAjB/B,cACQ7D,EADRqxB,EAAA9vB,KAAA8vB,EAAA7vB,OAAA,SAoBSxB,GApBT,wBAAAqxB,EAAA5vB,SAAA2vB,MAFwD,gBAAAG,GAAA,OAAAJ,EAAAxvB,MAAAC,KAAAC,YAAA,IA0B7CqW,EAA8B1Y,YACzC,qCADyD,eAAAgyB,EAAA9xB,OAAAC,EAAA,EAAAD,CAAAE,IAAAC,KAEzD,SAAA4xB,EAAO1xB,GAAP,IAAAC,EAAA,OAAAJ,IAAAK,KAAA,SAAAyxB,GAAA,cAAAA,EAAAvxB,KAAAuxB,EAAAtxB,MAAA,cAAAsxB,EAAAtxB,KAAA,EACoBC,IACfC,IADe,GAAAC,OAEXC,6BAFW,qEAGd,CACEC,OAAQ,CACN0J,WAAYpK,EAAIkK,WAChBqnB,OAAQvxB,EAAIiY,aAEdlX,QAAS,CAAEC,cAAa,UAAAR,OAAYR,EAAIiB,QACxCC,eAAgB,qBAGnBC,KAAK,SAACC,GACL,MAAO,CACLG,KAAMH,EAASG,KAAKH,SACpByC,UAAWzC,EAASG,KAAKsC,UACzBC,QAAS1C,EAASG,KAAKuC,WAjB/B,cACQ7D,EADR0xB,EAAAnwB,KAAAmwB,EAAAlwB,OAAA,SAoBSxB,GApBT,wBAAA0xB,EAAAjwB,SAAAgwB,MAFyD,gBAAAE,GAAA,OAAAH,EAAA7vB,MAAAC,KAAAC,YAAA,IA0B9C+vB,EAAc7vB,YAAY,CACrCC,KAAM,SACNC,aAAc,CACZ0H,UAjLgB,WAClB,IAAMnF,EAAOC,OAAOS,eAAeP,QAAQ,aAE3C,OAAOH,EAAOI,KAAKC,MAAML,GAAQ,GA8KpBqtB,GACX7wB,MA7Kc,WAChB,IAAMwD,EAAOC,OAAOS,eAAeP,QAAQ,MAE3C,OAAOH,EAAOI,KAAKC,MAAML,GAAQ,GA0KxBstB,GACPpgB,cAzKiB,WACnB,IAAMlN,EAAOC,OAAOS,eAAeP,QAAQ,iBAE3C,OAAOH,EAAOI,KAAKC,MAAML,GAAQ,GAsKhButB,GACf/P,qBApKiB,WACnB,IAAMxd,EAAOC,OAAOC,aAAaC,QAAQ,gBACzC,OAAOH,EAAOI,KAAKC,MAAML,GAAQ,GAkKTwtB,GACtBlf,cAhKyB,WAC3B,IAAMtO,EAAOC,OAAOS,eAAeP,QAAQ,iBAE3C,OAAOH,EAAOI,KAAKC,MAAML,GAAQ,GA6JhBytB,GACf9e,eAAgB,GAChBuE,SAAU,GACVE,OAAQ,GAEVxV,SAAU,CACR4mB,iBAAkB,SAAC1mB,EAAOC,GACxBD,EAAM6Q,eAAiB5Q,EAAOC,QAC9B0C,eAAeU,QAAQ,aAAchB,KAAKiB,UAAUtD,EAAOC,WAE7D+D,aAAc,SAACjE,GACbA,EAAMqH,UAAY,GAElBzE,eAAea,WAAW,aAE5BqS,eAAgB,SAAC9V,EAAOC,GACtBD,EAAMoV,SAAWnV,EAAOC,SAE1BmK,aAAc,SAACrK,EAAOC,GACpBD,EAAMsV,OAASrV,EAAOC,SAExBiK,gBAAiB,SAACnK,EAAOC,GACvBD,EAAMqH,UAAYpH,EAAOC,QACzB0C,eAAeU,QAAQ,YAAahB,KAAKiB,UAAUtD,EAAOC,UAC1DpB,QAAQC,IAAIkB,EAAOC,WAGvBC,cAAe,SAACC,GACdA,EACGC,QAAQ+J,EAAc9J,UAAW,SAACN,EAAOC,GACxCD,EAAMqH,UAAYpH,EAAOC,QACzB0C,eAAeU,QAAQ,YAAahB,KAAKiB,UAAUtD,EAAOC,YAG3DG,QAAQkJ,EAAiBjJ,UAAW,SAACN,EAAOC,GAC3CD,EAAMtB,MAAQuB,EAAOC,UAItBG,QAAQsV,EAA2BrV,UAAW,SAACN,EAAOC,GACrDD,EAAMoP,cAAgBnP,EAAOC,QAC7BpB,QAAQC,IAAIkB,EAAOC,WAEpBG,QAAQuV,EAA4BtV,UAAW,SAACN,EAAOC,GACtDD,EAAM0f,qBAAuBzf,EAAOC,QACpCpB,QAAQC,IAAIkB,EAAOC,SACnBkC,aAAakB,QAAQ,eAAgBhB,KAAKiB,UAAUtD,EAAOC,YAE5DG,QAAQsQ,EAAcrQ,UAAW,SAACN,EAAOC,GACxCD,EAAM6Q,eAAiB5Q,EAAOC,QAC9BpB,QAAQC,IAAIkB,EAAOC,WAIpBG,QAAQyQ,EAAiBxQ,UAAW,SAACN,EAAOC,GAC3CD,EAAMwQ,cAAgBvQ,EAAOC,QAC7B0C,eAAeU,QAAQ,gBAAiBhB,KAAKiB,UAAUtD,EAAOC,iBAYlEovB,EAAY/uB,QALdmmB,qBAEA5Q,KADA7R,eACA6R,gBACAzL,iBACAF,oBAGamlB,MAAf","file":"static/js/main.27f5c6d6.chunk.js","sourcesContent":["// ** Redux Imports\r\nimport { createSlice, createAsyncThunk } from '@reduxjs/toolkit'\r\nimport axios from 'axios'\r\n// const initialUser = () => {\r\n// const item = window.localStorage.getItem('userData')\r\n// //** Parse stored json or if none return initialValue\r\n// return item ? JSON.parse(item) : {}\r\n// }\r\n\r\n export const sendOTP = createAsyncThunk('modals/sendOTP', async (obj) => {\r\n const res = await axios.get(`${process.env.REACT_APP_BASE_API_URL}LUCIDAPI/V1/SendOTP`,\r\n { \r\n params:{\r\n OTPFor:4,\r\n MobileNo:obj.ContactNo || obj.contactNoRef\r\n },\r\n headers: { Authorization: `Bearer ${obj.token}`},\r\n \"Content-Type\": \"application/json\"\r\n } \r\n ).then((response) => { \r\n //setOTPRefernceData(response.data.response)\r\n console.log(response.data.response)\r\n // setOtpReferenceId(response.data.response.otpReferenceId)\r\n // setOtpExpiryDuration(Number(response.data.response.otpExpiryDuration * 60000))\r\n return response.data.response\r\n }) \r\n \r\n return res \r\n })\r\n \r\nexport const modalSlice = createSlice({\r\n name: 'modals',\r\n initialState: {\r\n modalTitle: '',\r\n otpData:''\r\n },\r\n reducers: {\r\n handleModalTitle: (state, action) => {\r\n state.modalTitle = action.payload \r\n console.log(action.payload)\r\n // localStorage.setItem('userData', JSON.stringify(action.payload)) \r\n }\r\n },\r\n extraReducers: builder => {\r\n builder\r\n .addCase(sendOTP.fulfilled, (state, action) => {\r\n state.otpData = action.payload\r\n console.log(action.payload) \r\n // state.bookmarks = action.payload.bookmarks\r\n })\r\n }\r\n \r\n })\r\n\r\nexport const { handleModalTitle } = modalSlice.actions\r\n\r\nexport default modalSlice.reducer\r\n","import React from \"react\" \r\nimport TableBookingComp from \"./view/TableBooking/TableBookingComp\"\r\n\r\n const TableBooking = (props) => {\r\n \r\n return (\r\n \r\n )\r\n } \r\n \r\nexport default TableBooking","// ** Redux Imports\r\nimport { createSlice, createAsyncThunk } from '@reduxjs/toolkit'\r\nimport axios from 'axios'\r\n \r\n const initialBooking = () => {\r\n const item = window.localStorage.getItem('tableBooking')\r\n //** Parse stored json or if none return initialValue\r\n return item ? JSON.parse(item) : {}\r\n }\r\n\r\n const initialLoggedIn = () => {\r\n const item = window.localStorage.getItem('loggedIn')\r\n //** Parse stored json or if none return initialValue\r\n return item ? JSON.parse(item) : false\r\n }\r\n const initialGuestList = () => {\r\n const item = window.sessionStorage.getItem('guestList')\r\n //** Parse stored json or if none return initialValue\r\n return item ? JSON.parse(item) : false\r\n }\r\n const initialProperty = () => {\r\n const item = window.sessionStorage.getItem('property')\r\n //** Parse stored json or if none return initialValue\r\n return item ? JSON.parse(item) : false\r\n }\r\n const initialOutlet = () => {\r\n const item = window.sessionStorage.getItem('outlet')\r\n //** Parse stored json or if none return initialValue\r\n console.log(JSON.parse(item))\r\n return item ? JSON.parse(item) : false\r\n }\r\n\r\n export const getGuestTotalBooking = createAsyncThunk('tableBooking/getGuestTotalBooking', async (obj) => {\r\n const res = axios.get(`${process.env.REACT_APP_LUCIDPOS_GUEST_TABLE}GetGuestTotalBooking`, {\r\n params:{\r\n ContactNo:obj.ContactNo\r\n },\r\n headers: { Authorization: `Bearer ${obj.token}`},\r\n \"Content-Type\": \"application/json\"\r\n }\r\n ).then((res) =>{\r\n // return {outletDetails :response.data.response.outletDetails, errorCode: response.data.errorCode, message:response.data.message}\r\n // console.log(res)\r\n return {totalBooking:res.data.response.totalBooking, errorCode: res.data.errorCode, message:res.data.message}\r\n }) \r\n return res\r\n })\r\n\r\n export const getGuestListHandler = createAsyncThunk('tableBooking/getGuestListHandler', async (obj) => {\r\n const res = axios.get(`${process.env.REACT_APP_LUCIDPOS_GUEST_TABLE}GetGuestTableBookingList`, {\r\n params:{\r\n CurrentPageNumber:1,\r\n NoOfRowsPerPage:10,\r\n ContactNo:obj.ContactNo\r\n },\r\n headers: { Authorization: `Bearer ${obj.outletList.token || obj.token}`},\r\n \"Content-Type\": \"application/json\"\r\n }\r\n ).then((response) => { \r\n //setOTPRefernceData(response.data.response)\r\n console.log(response.data.response)\r\n // setOtpReferenceId(response.data.response.otpReferenceId)\r\n // setOtpExpiryDuration(Number(response.data.response.otpExpiryDuration * 60000))\r\n return response.data.response\r\n }) \r\n \r\n return res \r\n })\r\n\r\n // export const getTimeSlotListHandler = createAsyncThunk('tableBooking/getTimeSlotListHandler', async (obj) => {\r\n // const res = axios.get(`${process.env.REACT_APP_LUCIDPOS_GUEST_TABLE}GetTimeSlotList`, {\r\n // params:{\r\n // outletCode:obj.outletCode,\r\n // BookingDate:obj.bookingDate\r\n // },\r\n // headers: { Authorization: `Bearer ${obj.token}`},\r\n // \"Content-Type\": \"application/json\"\r\n // }\r\n // ).then((response) => { \r\n // \r\n // console.log(response.data.response)\r\n // \r\n // return response.data.response\r\n // }) \r\n // \r\n // return res \r\n // })\r\n \r\n \r\n export const tableSlice = createSlice({\r\n name: 'tableBooking',\r\n initialState: { \r\n tableData: initialBooking(),\r\n loggedIn:initialLoggedIn(),\r\n guestList: initialGuestList(),\r\n guestTotalBooking:'',\r\n selectedProperty:initialProperty(),\r\n selectedOutlet:initialOutlet(),\r\n timeSlotList:'',\r\n isOpenBL:false\r\n },\r\n reducers: { \r\n handleBooking: (state, action) => {\r\n state.tableData = action.payload \r\n localStorage.setItem('tableBooking', JSON.stringify(action.payload)) \r\n },\r\n handleBookingClear: state => {\r\n state.tableData = {} \r\n // ** Remove user, accessToken & refreshToken from sessionStorage\r\n sessionStorage.removeItem('tableBooking')\r\n },\r\n handleLogin: (state, action) => {\r\n state.loggedIn = action.payload \r\n // ** Remove user, accessToken & refreshToken from sessionStorage\r\n localStorage.setItem('loggedIn', JSON.stringify(action.payload)) \r\n },\r\n handlePropertySelection: (state, action) => {\r\n state.selectedProperty = action.payload\r\n console.log(action.payload)\r\n sessionStorage.setItem('property', JSON.stringify(action.payload)) \r\n },\r\n handleOutletSelection: (state, action) => {\r\n state.selectedOutlet = action.payload\r\n sessionStorage.setItem('outlet', JSON.stringify(action.payload)) \r\n console.log(action.payload)\r\n },\r\n handleIsOpenBL: (state, action) => {\r\n state.isOpenBL = action.payload \r\n }\r\n },\r\n extraReducers: builder => {\r\n builder\r\n .addCase(getGuestListHandler.fulfilled, (state, action) => {\r\n state.guestList = action.payload\r\n console.log(action.payload) \r\n sessionStorage.setItem('guestList', JSON.stringify(action.payload)) \r\n // state.bookmarks = action.payload.bookmarks\r\n })\r\n .addCase(getGuestTotalBooking.fulfilled, (state, action) => {\r\n state.guestTotalBooking = action.payload\r\n console.log(action.payload) \r\n // sessionStorage.setItem('guestList', JSON.stringify(action.payload)) \r\n // state.bookmarks = action.payload.bookmarks\r\n })\r\n // .addCase(getTimeSlotListHandler.fulfilled, (state, action) => {\r\n // state.timeSlotList = action.payload\r\n // console.log(action.payload) \r\n // })\r\n }\r\n })\r\n\r\nexport const { handleBooking, handleBookingClear, handleLogin, handlePropertySelection, handleOutletSelection, handleIsOpenBL } = tableSlice.actions\r\n\r\nexport default tableSlice.reducer\r\n","// ** Redux Imports\r\nimport { createSlice } from '@reduxjs/toolkit'\r\nconst initialUser = () => {\r\n const item = window.sessionStorage.getItem('userData')\r\n //** Parse stored json or if none return initialValue\r\n return item ? JSON.parse(item) : {}\r\n}\r\n\r\nexport const authSlice = createSlice({\r\n name: 'authentication',\r\n initialState: {\r\n userData: initialUser()\r\n },\r\n reducers: {\r\n handleLogin: (state, action) => {\r\n state.userData = action.payload \r\n sessionStorage.setItem('userData', JSON.stringify(action.payload)) \r\n },\r\n handleLogout: state => {\r\n state.userData = {} \r\n // ** Remove user, accessToken & refreshToken from sessionStorage\r\n sessionStorage.removeItem('userData')\r\n }\r\n }\r\n})\r\n\r\nexport const { handleLogin, handleLogout } = authSlice.actions\r\n\r\nexport default authSlice.reducer\r\n"," // ** Redux Imports\r\n import { createSlice, createAsyncThunk } from '@reduxjs/toolkit'\r\n \r\n // ** Axios Imports\r\n import axios from 'axios'\r\n\r\n const initialTitle = () => {\r\n const item = window.sessionStorage.getItem('optionsTitle') \r\n //** Parse stored json or if none return initialValue\r\n return item ? JSON.parse(item) : {}\r\n }\r\n\r\n const initialMobile = () => {\r\n const item = window.sessionStorage.getItem('optionsMobileCode') \r\n //** Parse stored json or if none return initialValue\r\n return item ? JSON.parse(item) : {}\r\n }\r\n\r\n export const getTitleList = createAsyncThunk('options/getTitleList', async (token) => { \r\n const res = axios.get(`${process.env.REACT_APP_BASE_API_URL}LUCIDAPI/V1/GetTitleList`,\r\n { \r\n headers: { Authorization: `Bearer ${token}`},\r\n \"Content-Type\": \"application/json\"\r\n } \r\n ).then((response) => { \r\n \r\n const list = response.data.response\r\n return list.titleList.map(title => ({value:title.titleId, label : title.titleName}))\r\n console.log(response.data.response)\r\n }) \r\n return res\r\n } \r\n )\r\n\r\n export const getMobileCountryCode = createAsyncThunk('options/getMobileCountryCode', async (token) => { \r\n const mobileOption = axios.get(`${process.env.REACT_APP_BASE_API_URL}LUCIDAPI/V1/GetMobileCountryCode`,\r\n { \r\n headers: { Authorization: `Bearer ${token}`},\r\n \"Content-Type\": \"application/json\"\r\n } \r\n ).then((response) => { \r\n // setMobileCountryCodeData(response.data.response)\r\n const list = response.data.response\r\n return list.mobileCountryCodeList.map(code => ({value:code.countryCode, label : code.telephoneCode}))\r\n console.log(response.data.response)\r\n }).catch(error => console.log(error)) \r\n \r\n return mobileOption\r\n } \r\n )\r\n\r\n export const optionsSlice = createSlice({\r\n name: 'options',\r\n initialState: { \r\n optionsTitle: initialTitle(),\r\n optionsMobileCode:initialMobile(), \r\n }, \r\n reducers:{ \r\n }, \r\n extraReducers: builder => {\r\n builder\r\n .addCase(getTitleList.fulfilled, (state, action) => {\r\n state.optionsTitle = action.payload \r\n sessionStorage.setItem('optionsTitle', JSON.stringify(action.payload)) \r\n // state.bookmarks = action.payload.bookmarks\r\n }) \r\n .addCase(getMobileCountryCode.fulfilled, (state, action) => {\r\n state.optionsMobileCode = action.payload \r\n sessionStorage.setItem('optionsMobileCode', JSON.stringify(action.payload)) \r\n // state.bookmarks = action.payload.bookmarks\r\n })\r\n }\r\n })\r\n \r\n export default optionsSlice.reducer","// ** Reducers Imports\r\nimport authentication from './authentication'\r\nimport propertyList from './propertyData'\r\nimport launch from './launch'\r\nimport tableBooking from './tableBooking'\r\nimport modals from './modals'\r\nimport options from './options'\r\n \r\nconst rootReducer = {\r\n launch, authentication, propertyList, tableBooking, modals, options\r\n}\r\n\r\nexport default rootReducer\r\n","// ** Redux Imports\r\nimport rootReducer from './rootReducer'\r\nimport { configureStore } from '@reduxjs/toolkit'\r\n\r\nconst store = configureStore({\r\n reducer: rootReducer,\r\n middleware: getDefaultMiddleware => {\r\n return getDefaultMiddleware({\r\n serializableCheck: false\r\n })\r\n }\r\n})\r\n\r\nexport { store }\r\n","import React from 'react';\r\nconst Home = () =>{\r\n\r\n return (\r\n <>Laoding....\r\n )\r\n}\r\n\r\nexport default Home\r\n","import { useEffect, useState } from \"react\";\r\nimport {\r\n getOrgDetails,\r\n getGuestAppToken,\r\n handlePageId,\r\n handleLogout,\r\n handleParamData,\r\n} from \"../../redux/launch\";\r\n\r\nimport { useSearchParams } from \"react-router-dom\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { useRef } from \"react\";\r\nimport axios from \"axios\";\r\nimport {\r\n handleBookingClear,\r\n handleLogin,\r\n handlePropertySelection,\r\n} from \"../../redux/tableBooking\";\r\n\r\nconst useLaunch = () => {\r\n const dispatch = useDispatch();\r\n const launchData = useSelector((state) => state.launch);\r\n const [searchParams] = useSearchParams();\r\n const [urlKey] = useState(searchParams.get(\"ukey\"));\r\n const [OrganizationId, setOrganizationId] = useState(\r\n launchData.paramData.organizationId\r\n );\r\n const [PropertyId, setPropertyId] = useState(launchData.paramData.propertyId);\r\n const [propertyName, setPropertyName] = useState(\"\");\r\n const [outletCode, setOutletCode] = useState(\"\");\r\n const [outletName, setOutletName] = useState(\"\");\r\n const [remarks, setRemarks] = useState(\"\");\r\n const [token, setToken] = useState(launchData.token);\r\n const refUrl = useRef(null);\r\n const refToken = useRef(null);\r\n\r\n useEffect(() => {\r\n if (!launchData.paramData.organizationId && !refUrl.current) {\r\n console.log(launchData.paramData.organizationId);\r\n dispatch(getOrgDetails(urlKey));\r\n refUrl.current = true;\r\n if (!urlKey) {\r\n dispatch(handlePageId(0));\r\n }\r\n } else if (launchData.paramData.organizationId && refUrl.current) {\r\n dispatch(\r\n getGuestAppToken({\r\n OrganizationId: launchData.paramData.organizationId,\r\n PropertyId: launchData.paramData.propertyId,\r\n })\r\n );\r\n\r\n refToken.current = true;\r\n } else if (launchData.paramData.organizationId && !refUrl.current) {\r\n const urlString = urlKey.replace(/ /g, \"+\");\r\n axios\r\n .post(\"https://ap-lucid.com/api-lucid/V1/LongUrl\", {\r\n urlKey: urlString,\r\n username: \"lucid@WebsiteShorturl\",\r\n password: \"web@Redirect[lucid]\",\r\n requestIP: \"\",\r\n userId: \"\",\r\n })\r\n .then((res) => {\r\n if (res.data.isSuccessful === true) {\r\n const paramDataTemp = res.data.longUrlInput;\r\n if (paramDataTemp.organizationId !== OrganizationId) {\r\n localStorage.clear();\r\n sessionStorage.clear();\r\n // alert(paramDataTemp.organizationId, OrganizationId)\r\n console.log(paramDataTemp);\r\n return paramDataTemp;\r\n }\r\n }\r\n })\r\n .then((res) => {\r\n if (res) {\r\n console.log(res.organizationId, OrganizationId);\r\n dispatch(handleParamData(res));\r\n dispatch(\r\n getGuestAppToken({\r\n OrganizationId: res.organizationId,\r\n PropertyId: res.propertyId,\r\n })\r\n );\r\n console.log(res);\r\n refToken.current = true;\r\n } else {\r\n if (OrganizationId && !launchData.token && !refToken.current) {\r\n dispatch(getGuestAppToken({ OrganizationId, PropertyId }));\r\n refToken.current = true;\r\n }\r\n }\r\n });\r\n refUrl.current = true;\r\n }\r\n }, [launchData.paramData.organizationId]);\r\n\r\n useEffect(() => {\r\n if (launchData) {\r\n setOrganizationId(launchData.paramData.organizationId);\r\n setPropertyId(launchData.paramData.propertyId);\r\n setPropertyName(launchData.paramData.propertyName);\r\n setOutletCode(launchData.paramData.outletCode);\r\n setOutletName(launchData.paramData.outletName);\r\n setRemarks(launchData.paramData.remarks);\r\n }\r\n setToken(launchData.token);\r\n }, [launchData.paramData]);\r\n\r\n useEffect(() => {\r\n //https://dev.lucidits.com/LUCIDPOSIntegrationAPI/V1/GetGuestAppToken\r\n //?OrganizationId=<>&PropertyId=<>&TokenKey=<>\r\n //if (OrganizationId && reDirect.current === false) {\r\n // if (OrganizationId && !launchData.token && !refToken.current) {\r\n // // dispatch(getGuestAppToken({OrganizationId, PropertyId}))\r\n // refToken.current = true\r\n // }\r\n }, [OrganizationId, PropertyId, launchData.token]);\r\n\r\n return { propertyName, outletCode, outletName, remarks, token };\r\n};\r\n\r\nexport default useLaunch;\r\n","import React from \"react\"\r\nimport {Row, Spinner } from \"reactstrap\"\r\n\r\nconst Loading = () => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n )\r\n}\r\n\r\nexport default Loading","import axios from \"axios\";\r\nimport React, { useEffect, useRef, useState } from \"react\";\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\nimport { Link } from \"react-router-dom\";\r\n// reactstrap\r\nimport {\r\n Button,\r\n Card,\r\n CardBody,\r\n CardFooter,\r\n CardHeader,\r\n Col,\r\n Form,\r\n FormGroup,\r\n Input,\r\n Label,\r\n Row,\r\n} from \"reactstrap\";\r\n\r\n//custome hooks\r\n// import useLaunch from \"../../core/utils/useLaunch\"\r\n\r\nimport {\r\n getOutletDetails,\r\n getOutletList,\r\n handlePageId,\r\n handleViewPage,\r\n} from \"../../redux/launch\";\r\n// import useWalkin from \"../../Hooks/useWalkin\";\r\nimport View from \"../../View\";\r\nimport Loading from \"../Loading\";\r\nimport { getMobileCountryCode, getTitleList } from \"../../redux/options\";\r\nimport { getPropertyList } from \"../../redux/propertyData\";\r\n// import WalkinStatus from \"../walkIn/WalkinStatus\";\r\n\r\nconst CheckIn = (props) => {\r\n const dispatch = useDispatch();\r\n const launch = useSelector((state) => state.launch);\r\n const propertyData = useSelector((state) => state.propertyList);\r\n const optionsData = useSelector((state) => state.options);\r\n const [token, setToken] = useState(launch.token);\r\n //const [walkinData, setWalkingData] = useState(sessionStorage.getItem('walkinData') ? JSON.parse(sessionStorage.getItem('walkinData')) : '')\r\n const [title, setTitle] = useState(\"Mr.\");\r\n\r\n const [optionsTitle, setOptionsTitle] = useState([]);\r\n const [mobileNo, setMobileNo] = useState(\"\");\r\n const [name, setName] = useState(\"\");\r\n const [pax, setPax] = useState(0);\r\n\r\n const [imageUrl, setImageurl] = useState();\r\n const [outletCode, setOutletCode] = useState(\"\");\r\n const [outletName, setOutletName] = useState(\"\");\r\n const [propertyId, setPropertyId] = useState(\"\");\r\n const [propertyName, setPropertyName] = useState(\"\");\r\n const [saving, setSaving] = useState(false);\r\n const [checkInId, setCheckInId] = useState(\"\");\r\n const [buttonUnSelectedStyle, setButtonUnSelectedStyle] = useState({\r\n backgroundColor: \"white\",\r\n color: \"black\",\r\n });\r\n // const useWalkinData = useWalkin(checkInId, tokenData.token)\r\n // const [refreshW, setRefreshW] = useState(false)\r\n const [logoStyle, setLogoStyle] = useState({\r\n display: \"flex\",\r\n justifyContent: \"left\",\r\n });\r\n\r\n const [propertyNameFontSettings, setPropertyNameFontSettings] = useState({\r\n color: \"black\",\r\n });\r\n\r\n const [outletNameFontSettings, setOutletNameFontSettings] = useState({\r\n color: \"black\",\r\n });\r\n\r\n const [bodySettings, setBodySettings] = useState({\r\n backgroundColor: \"white\",\r\n borderTop: \"none\",\r\n });\r\n const [bodyStyle, setBodyStyle] = useState({\r\n backgroundColor: \"white\",\r\n border: \"none\",\r\n paddingTop: \"80px\",\r\n });\r\n\r\n const [footerSettings, setFooterSettings] = useState({\r\n backgroundColor: \"#EAEAEA\",\r\n justifyContent: \"center\",\r\n });\r\n const [footerFonts, setFooterFonts] = useState({\r\n fontWeight: \"normal\",\r\n fontSize: \"11px\",\r\n color: \"#8D8D8D\",\r\n });\r\n const [headerStyle, setHeaderStyle] = useState({\r\n border: \"none\",\r\n backgroundColor: \"#EAEAEA\",\r\n zIndex: \"5\",\r\n });\r\n\r\n const titleRef = useRef(true);\r\n\r\n useEffect(() => {\r\n if (launch.themeSettings && launch.themeSettings.data.status === 1) {\r\n console.log(launch.themeSettings);\r\n const body = launch.themeSettings.data.themeSettings.body;\r\n const footer = launch.themeSettings.data.themeSettings.footer;\r\n const header = launch.themeSettings.data.themeSettings.header;\r\n setButtonUnSelectedStyle((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: body.nonSelectedButtonSettings.backgroundColor\r\n ? `${body.nonSelectedButtonSettings.backgroundColor}`\r\n : prev.backgroundColor,\r\n color: body.nonSelectedButtonSettings.fontSettings.color\r\n ? `${body.nonSelectedButtonSettings.fontSettings.color}`\r\n : prev.color,\r\n fontFamily: body.nonSelectedButtonSettings.fontSettings.fontFamily\r\n ? `${body.nonSelectedButtonSettings.fontSettings.fontFamily}`\r\n : \"\",\r\n };\r\n });\r\n\r\n setPropertyNameFontSettings((prev) => {\r\n return {\r\n ...prev,\r\n color: `${header.propertyNameFontSettings.color}`,\r\n fontFamily: `${header.propertyNameFontSettings.fontFamily}`,\r\n };\r\n });\r\n\r\n setOutletNameFontSettings((prev) => {\r\n return {\r\n ...prev,\r\n color: `${header.outletNameFontSettings.color}`,\r\n fontFamily: `${header.outletNameFontSettings.fontFamily}`,\r\n };\r\n });\r\n\r\n setHeaderStyle((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: header.backgroundColor\r\n ? `${header.backgroundColor}`\r\n : prev.backgroundColor,\r\n height: `${header.height}`,\r\n backgroundImage: `url(${header.backgroundImages[0]})`,\r\n };\r\n });\r\n\r\n setPropertyNameFontSettings((prev) => {\r\n return {\r\n ...prev,\r\n color: `${header.propertyNameFontSettings.color}`,\r\n fontFamily: `${header.propertyNameFontSettings.fontFamily}`,\r\n };\r\n });\r\n\r\n setOutletNameFontSettings((prev) => {\r\n return {\r\n ...prev,\r\n color: `${header.outletNameFontSettings.color}`,\r\n fontFamily: `${header.outletNameFontSettings.fontFamily}`,\r\n };\r\n });\r\n\r\n setBodySettings((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: body.backgroundColor\r\n ? `${body.backgroundColor}`\r\n : prev.backgroundColor,\r\n };\r\n });\r\n\r\n setLogoStyle((prev) => {\r\n return {\r\n ...prev,\r\n\r\n justifyContent: header.logoPosition\r\n ? `${header.logoPosition}`\r\n : prev.changeIconColor,\r\n flexDirection: header.logoPosition === \"right\" ? \"row-reverse\" : \"\",\r\n };\r\n });\r\n\r\n setBodyStyle((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: body.backgroundColor\r\n ? `${body.backgroundColor}`\r\n : prev.backgroundColor,\r\n backgroundImage: `url(${body.backgroundImages[0]})`,\r\n border: body.border ? `${body.border}` : prev.border,\r\n fontFamily: `${body.fontSettings.fontFamily}`,\r\n color: `${body.fontSettings.color}`,\r\n fontWeight: body.fontSettings.bold ? \"bold\" : \"normal\",\r\n fontStyle: body.fontSettings.italic ? \"italic\" : \"normal\",\r\n };\r\n });\r\n\r\n setFooterSettings((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: footer.backgroundColor\r\n ? `${footer.backgroundColor}`\r\n : prev.backgroundColor,\r\n justifyContent: footer.fontSettings.alignment\r\n ? `${footer.fontSettings.alignment}`\r\n : prev.justifyContent,\r\n };\r\n });\r\n\r\n setFooterFonts((prev) => {\r\n return {\r\n ...prev,\r\n color: footer.fontSettings.color\r\n ? `${footer.fontSettings.color}`\r\n : prev.color,\r\n size: footer.fontSettings.size\r\n ? `${footer.fontSettings.size}`\r\n : prev.color,\r\n fontFamily: `${footer.fontSettings.fontFamily}`,\r\n fontWeight: footer.fontSettings.bold ? \"bold\" : \"normal\",\r\n fontStyle: footer.fontSettings.italic ? \"italic\" : \"normal\",\r\n };\r\n });\r\n }\r\n }, [launch.themeSettings]);\r\n\r\n useEffect(() => {\r\n if (launch.outletDetails.outletDetails) {\r\n const otDetails = launch.outletDetails.outletDetails;\r\n setImageurl(otDetails.imageUrl);\r\n }\r\n\r\n if (launch.token && titleRef.current) {\r\n setToken(launch.token);\r\n dispatch(getPropertyList(launch.token));\r\n dispatch(getOutletList({ propertyId, token: launch.token }));\r\n dispatch(getTitleList(launch.token));\r\n dispatch(getMobileCountryCode(launch.token));\r\n\r\n titleRef.current = false;\r\n }\r\n }, [launch.outletDetails.outletDetails]);\r\n\r\n useEffect(() => {\r\n if (propertyData.propertyData.propertyList) {\r\n propertyData.propertyData.propertyList.forEach((item) => {\r\n if (item.propertyId === propertyId) {\r\n setPropertyName(item.propertyName);\r\n }\r\n });\r\n // setPropertyName(propty.propertyName)\r\n }\r\n }, [propertyData.propertyData, propertyId]);\r\n\r\n useEffect(() => {\r\n if (launch.outletListData.outletList) {\r\n launch.outletListData.outletList.forEach((item) => {\r\n if (item.outletCode === outletCode) {\r\n setOutletName(item.outletName);\r\n }\r\n });\r\n }\r\n }, [launch.outletListData.outletList, outletCode]);\r\n\r\n const subMitHandler = (e) => {\r\n e.preventDefault();\r\n // const url = 'https://dev.lucidits.com/lucidapi/V1/LUCIDPOS/SaveOutletCheckIn'\r\n axios\r\n .post(\r\n `${process.env.REACT_APP_BASE_API_URL}lucidapi/V1/LUCIDPOS/SaveOutletCheckIn`,\r\n {\r\n OutletCode: outletCode,\r\n NoOfPax: pax,\r\n NoOfTables: 1,\r\n AssignedTables: [],\r\n GuestTitle: title,\r\n GuestName: name,\r\n GuestMobileNo: mobileNo,\r\n GuestEmailId: \"\",\r\n Status: 2,\r\n IsSelfCheckIn: true,\r\n\r\n SystemDetails: {\r\n ApplicationName: \"\",\r\n ApplicationVersion: \"1.0\",\r\n BrowserName: \"\",\r\n BrowserVersion: \"\",\r\n DeviceId: \"\",\r\n DeviceType: \"Tab\",\r\n IP: \"\",\r\n Mac: \"\",\r\n OPS: \"\",\r\n Source: \"TabletPOS\",\r\n SystemName: \"Yuvaraj\",\r\n SystemTimeZoneId: 1,\r\n },\r\n },\r\n {\r\n headers: { Authorization: `Bearer ${token}` },\r\n \"Content-Type\": \"application/json\",\r\n }\r\n )\r\n .then((res) => {\r\n setSaving(false);\r\n if (res.data.errorCode === 0) {\r\n setCheckInId(res.data.response.checkInId);\r\n // dispatch(handleViewPage())\r\n // dispatch(handlePageId(2))\r\n // setView(2)\r\n }\r\n if (res.data.errorCode === 1) {\r\n const error = res.data;\r\n alert(error.message);\r\n }\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n const paramData = launch.paramData;\r\n setPropertyId(paramData.propertyId);\r\n setOutletCode(paramData.outletCode);\r\n if (launch.token && paramData.outletCode) {\r\n dispatch(\r\n getOutletDetails({\r\n tokenOption: launch.token,\r\n outletCode: paramData.outletCode,\r\n })\r\n );\r\n }\r\n }, [launch.paramData, launch.token]);\r\n\r\n useEffect(() => {\r\n const favicon = document.getElementById(\"favicon\");\r\n if (imageUrl) favicon.href = imageUrl;\r\n }, [imageUrl]);\r\n\r\n useEffect(() => {\r\n if (optionsData.optionsTitle.length > 0)\r\n setOptionsTitle(optionsData.optionsTitle);\r\n }, [optionsData.optionsTitle]);\r\n\r\n // useEffect(() => {\r\n // setWalkingData(sessionStorage.getItem('walkinData') ? JSON.parse(sessionStorage.getItem('walkinData')) : useWalkinData)\r\n // setRefreshW(false)\r\n // console.log(JSON.parse(sessionStorage.getItem('walkinData')))\r\n // console.log(walkinData)\r\n // }, [sessionStorage.getItem('walkinData')])\r\n // for props down purpose\r\n\r\n // const walkingBookingStatusHandler = () => {\r\n // useWalkinData.walkingStatusDetails()\r\n // }\r\n\r\n if (checkInId) {\r\n // return \r\n return (\r\n \r\n );\r\n } else\r\n return (\r\n \r\n \r\n
\r\n {imageUrl && (\r\n \r\n )}\r\n \r\n \r\n {outletName}\r\n {\" \"}\r\n \r\n {propertyName}{\" \"}\r\n \r\n
\r\n {\r\n // Right Side Logout\r\n }\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n setMobileNo(e.target.value)}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n setTitle(e.target.value)}\r\n >\r\n {optionsTitle &&\r\n optionsTitle.map((itm, id) => {\r\n return ;\r\n })}\r\n \r\n \r\n \r\n setName(e.target.value)}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n setPax(e.target.value)}\r\n min={1}\r\n />\r\n \r\n \r\n
\r\n
\r\n {\r\n if (mobileNo.length >= 10) {\r\n if (name.length > 2) {\r\n if (pax > 0) {\r\n subMitHandler(e);\r\n setSaving(true);\r\n } else {\r\n alert(\"Please Enter No. of Pax\");\r\n }\r\n } else {\r\n alert(\"Please Enter Your Name\");\r\n }\r\n } else {\r\n alert(\"Please Enter Valid Mobile No\");\r\n }\r\n }}\r\n >\r\n Submit\r\n \r\n
\r\n {saving && }\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n Powered by \r\n window.open(\"https://lucidpos.com/\", \"_blank\")}\r\n style={footerFonts}\r\n >\r\n LUCID POS\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default CheckIn;\r\n","import React, { Suspense, lazy } from \"react\"\r\nimport Loading from \"./Loading\";\r\n\r\nconst LoadTableBooking = () => {\r\n \r\n const TableBooking = lazy(() => import('./TableBooking'));\r\n\r\n return (\r\n \r\n \r\n \r\n )\r\n\r\n}\r\n\r\nexport default LoadTableBooking","import { useSelector, useDispatch } from \"react-redux\";\r\nimport {\r\n getPageDefaultThemeSettings,\r\n getPageThemeSettingsetails,\r\n handlePageId,\r\n handleViewPage,\r\n} from \"./redux/launch\";\r\nimport useLaunch from \"./core/utils/useLaunch\";\r\nimport React, { useEffect, useState, useRef, Fragment, lazy } from \"react\";\r\n\r\nimport View from \"./View\";\r\nimport CheckIn from \"./view/check-in/CheckIn\";\r\nimport LoadTableBooking from \"./LoadTableBooking\";\r\nimport Loading from \"./Loading\";\r\nimport { handleModalTitle } from \"./redux/modals\";\r\n\r\nconst Launching = () => {\r\n const launch = useLaunch();\r\n const launchData = useSelector((state) => state.launch);\r\n const tableBooking = useSelector((state) => state.tableBooking);\r\n const dispatch = useDispatch();\r\n //const TableBooking = lazy(() => import('./TableBooking'));\r\n const [selfCheckIn, setSelfCheckIn] = useState(false);\r\n //const navigate = useNavigate();\r\n const [viewPage, setViewPage] = useState();\r\n const [OrganizationId, setOrganizationId] = useState(\r\n launchData.paramData.organizationId\r\n );\r\n //const [OrganizationName] = useState(searchParams.get(\"orgname\"))\r\n const [propertyId, setPropertyId] = useState(launchData.paramData.propertyId);\r\n const [propertyName, setPropertyName] = useState(\"\"); //searchParams.get(\"propname\") wrong prop name from jay's api\r\n const [outletCode, setOutletCode] = useState(launchData.paramData.outletCode);\r\n const [remarks, setRemarks] = useState(launchData.paramData.remarks);\r\n const [token, setToken] = useState(launchData.token);\r\n const [themeSettings, setThemeSettings] = useState(\"\");\r\n const [outletList, setOutletList] = useState(launchData.outletList);\r\n const [imageUrl, setImageUrl] = useState(\"\");\r\n const [pageId, setPageId] = useState(launchData.pageId);\r\n const tokenRef = useRef(true);\r\n const reDirect = useRef(tableBooking.isOpenBL);\r\n const refOtDetails = useRef(false);\r\n const [themePageId] = useState(157);\r\n\r\n // outletlet list should be called only for multiple property options avaialble\r\n // useEffect(() => {\r\n // if (outletCode === 'NONE' || !outletCode) {\r\n // if (propertyId && launchData.token) dispatch(getOutletList({PropertyId: propertyId , token:launchData.token}))\r\n // console.log(launchData.token, outletCode === 'NONE', !outletCode)\r\n // }\r\n //\r\n // }, [propertyId,launchData.token, outletCode])\r\n\r\n useEffect(() => {\r\n const favicon = document.getElementById(\"favicon\");\r\n if (imageUrl) favicon.href = imageUrl;\r\n\r\n console.log(imageUrl);\r\n }, [imageUrl]);\r\n\r\n useEffect(() => {\r\n if (launchData) {\r\n setPropertyId(\r\n launchData.paramData.propertyId !== \"NONE\"\r\n ? launchData.paramData.propertyId\r\n : null\r\n );\r\n setRemarks(launchData.paramData.remarks);\r\n setViewPage(launchData.viewPage);\r\n setPageId(launchData.pageId);\r\n setToken(launchData.token);\r\n setOutletCode(\r\n launchData.paramData.outletCode !== \"NONE\"\r\n ? launchData.paramData.outletCode !== \"NONE\"\r\n : null\r\n );\r\n }\r\n\r\n if (!themeSettings && launchData.token) {\r\n dispatch(\r\n getPageThemeSettingsetails({\r\n propertyId,\r\n themePageId,\r\n token: launchData.token,\r\n })\r\n );\r\n dispatch(\r\n getPageDefaultThemeSettings({\r\n propertyId,\r\n themePageId,\r\n token: launchData.token,\r\n })\r\n );\r\n }\r\n }, [\r\n launchData.paramData.propertyId,\r\n launchData.paramData.remarks,\r\n launchData.viewPage,\r\n launchData.pageId,\r\n launchData.token,\r\n launchData.paramData.outletCode,\r\n ]);\r\n\r\n useEffect(() => {\r\n if (\r\n token &&\r\n launchData.paramData.outletCode !== \"NONE\" &&\r\n launchData.paramData.outletCode !== \"\" &&\r\n !refOtDetails.current\r\n ) {\r\n // dispatch(getOutletDetails({tokenOption:token, outletCode:launchData.paramData.outletCode}))\r\n refOtDetails.current = true;\r\n } else {\r\n console.log(\"No outlet Code\");\r\n }\r\n }, [token, launchData.paramData]);\r\n\r\n useEffect(() => {\r\n if (launchData.outletDetails.outletDetails) {\r\n setImageUrl(launchData.outletDetails.outletDetails.imageUrl);\r\n }\r\n console.log(\r\n launchData.outletDetails && launchData.outletDetails.outletDetails\r\n );\r\n if (launchData.outletDetails.errorCode === 1) {\r\n dispatch(handleModalTitle(launchData.outletDetails.message));\r\n }\r\n }, [launchData.outletDetails]);\r\n\r\n const tableBookingHandler = () => {\r\n dispatch(handlePageId(1));\r\n };\r\n\r\n const viewPageHandler = () => {\r\n if (remarks === \"tbr-self-chkin\") {\r\n // sessionStorage.setItem('paramData',JSON.stringify({organizationId:OrganizationId, propertyId:PropertyId, propertyName:propertyName, outletCode:OutletCode, outletName:outletName, remarks:remarks, imageUrl:imageUrl}))\r\n setSelfCheckIn(true);\r\n dispatch(handlePageId(3));\r\n } else {\r\n if (tableBooking.isOpenBL) {\r\n dispatch(handlePageId(1));\r\n } else {\r\n setSelfCheckIn(false);\r\n dispatch(\r\n handleViewPage(\r\n \r\n )\r\n );\r\n dispatch(handlePageId(2));\r\n }\r\n\r\n //setViewPage()\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (remarks) {\r\n viewPageHandler();\r\n } else if (launchData.paramData && launchData.paramData.organizationId) {\r\n dispatch(handlePageId(1));\r\n }\r\n }, [remarks, imageUrl, launchData.paramData]);\r\n\r\n useEffect(() => {\r\n !token ? (tokenRef.current = true) : (tokenRef.current = false);\r\n }, [token]);\r\n\r\n useEffect(() => {\r\n if (propertyName) document.title = propertyName + \"- Table Booking\";\r\n }, [propertyName]);\r\n\r\n if (pageId === 2) {\r\n return viewPage;\r\n } else if (pageId === 3) {\r\n return ;\r\n } else if (pageId === 1) {\r\n return ;\r\n } // else return \r\n};\r\n\r\nexport default Launching;\r\n"," \nimport './App.css';\nimport React from 'react';\nimport { Routes, Route, Navigate } from \"react-router-dom\";\nimport TableBooking from './TableBooking';\nimport Home from './Home';\nimport View from './View';\nimport Launching from './Launching';\nfunction App() {\n \n return (\n
\n \n } />\n } > \n }/> \n } />\n \n \n
\n );\n}\n\nexport default App;\n","const reportWebVitals = onPerfEntry => {\n if (onPerfEntry && onPerfEntry instanceof Function) {\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\n getCLS(onPerfEntry);\n getFID(onPerfEntry);\n getFCP(onPerfEntry);\n getLCP(onPerfEntry);\n getTTFB(onPerfEntry);\n });\n }\n};\n\nexport default reportWebVitals;\n","import React from 'react';\nimport ReactDOM from 'react-dom/client'; \n\n// ** Redux Imports\nimport { store } from './redux/store'\nimport { Provider } from 'react-redux'\n\nimport './index.css';\nimport App from './App';\nimport reportWebVitals from './reportWebVitals';\nimport 'bootstrap/dist/css/bootstrap.min.css';\nimport { BrowserRouter } from \"react-router-dom\";\nimport 'bootstrap/dist/css/bootstrap.min.css';\nimport './core/styles/style.css'\n \n\nconst root = ReactDOM.createRoot(document.getElementById('root'));\nroot.render(\n \n \n \n \n \n \n \n);\n\n// If you want to start measuring performance in your app, pass a function\n// to log results (for example: reportWebVitals(console.log))\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\nreportWebVitals();\n","import React, { useState } from 'react';\r\nimport { useEffect } from 'react';\r\nimport { useSelector } from 'react-redux';\r\nimport { Button, Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap';\r\n\r\nfunction ErrorModal(props) {\r\n const launch = useSelector(state => state.launch) \r\n const [modal, setModal] = useState(false);\r\n\r\n const toggle = () => setModal(!modal);\r\n\r\n useEffect(() => {\r\n if (props.errorMessage) setModal(!modal)\r\n }, [props.errorMessage])\r\n\r\n return (\r\n
\r\n \r\n \r\n {props.errorMessage}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n\r\nexport default ErrorModal;","import {\r\n faCalendarXmark,\r\n faClipboard,\r\n} from \"@fortawesome/free-regular-svg-icons\";\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\nimport axios from \"axios\";\r\nimport React, { Fragment, useEffect, useRef, useState } from \"react\";\r\nimport { RefreshCcw } from \"react-feather\";\r\nimport { GiPartyPopper } from \"react-icons/gi\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { Link } from \"react-router-dom\";\r\nimport {\r\n Badge,\r\n Card,\r\n CardBody,\r\n CardHeader,\r\n CardImg,\r\n CardText,\r\n Row,\r\n} from \"reactstrap\";\r\nimport { handlePageId } from \"../../redux/launch\";\r\nimport ErrorModal from \"./Modals/ErrorModal\";\r\n\r\nconst BookingView = (props) => {\r\n const launch = useSelector((state) => state.launch);\r\n const dispatch = useDispatch();\r\n const [propertyId, setPropertyId] = useState(props.PropertyId);\r\n const [token, setToken] = useState(launch.token);\r\n const [bookingStatusDetails, setBookingStatusDetails] = useState(\"\");\r\n const [bookingStatusColor, setBookingStatusColor] = useState(\"#316cf4\");\r\n const [imageUrl, setImageUrl] = useState(\"\");\r\n const [errorMessage, setErrorMessage] = useState(\"\");\r\n const [outletCode, setOutletCode] = useState(props.OutletCode);\r\n const [reservationId, setReservationId] = useState(props.BookingId);\r\n const bookingRef = useRef(true);\r\n const [bodyStyle, setBodyStyle] = useState({\r\n backgroundColor: \"white\",\r\n paddingTop: \"80px\",\r\n margin: \"0px\",\r\n });\r\n\r\n const tableBookingHandler = () => {\r\n dispatch(handlePageId(1));\r\n };\r\n\r\n const [bodySettings, setBodySettings] = useState({\r\n backgroundColor: \"white\",\r\n borderTop: \"none\",\r\n });\r\n const [footerSettings, setFooterSettings] = useState({\r\n backgroundColor: \"#EAEAEA\",\r\n justifyContent: \"center\",\r\n });\r\n const [footerFonts, setFooterFonts] = useState({\r\n fontWeight: \"normal\",\r\n fontSize: \"11px\",\r\n color: \"#8D8D8D\",\r\n });\r\n const [headerStyle, setHeaderStyle] = useState({\r\n border: \"none\",\r\n backgroundColor: \"#EAEAEA\",\r\n zIndex: \"5\",\r\n });\r\n\r\n const [propertyNameFontSettings, setPropertyNameFontSettings] = useState({\r\n color: \"black\",\r\n });\r\n\r\n const [outletNameFontSettings, setOutletNameFontSettings] = useState({\r\n color: \"black\",\r\n });\r\n\r\n const titleRef = useRef(true);\r\n\r\n useEffect(() => {\r\n if (launch.themeSettings && launch.themeSettings.data.status === 1) {\r\n console.log(launch.themeSettings);\r\n const body = launch.themeSettings.data.themeSettings.body;\r\n const footer = launch.themeSettings.data.themeSettings.footer;\r\n const header = launch.themeSettings.data.themeSettings.header;\r\n\r\n setHeaderStyle((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: header.backgroundColor\r\n ? `${header.backgroundColor}`\r\n : prev.backgroundColor,\r\n height: `${header.height}`,\r\n backgroundImage: `url(${header.backgroundImages[0]})`,\r\n };\r\n });\r\n\r\n setPropertyNameFontSettings((prev) => {\r\n return {\r\n ...prev,\r\n color: `${header.propertyNameFontSettings.color}`,\r\n fontFamily: `${header.propertyNameFontSettings.fontFamily}`,\r\n };\r\n });\r\n\r\n setOutletNameFontSettings((prev) => {\r\n return {\r\n ...prev,\r\n color: `${header.outletNameFontSettings.color}`,\r\n fontFamily: `${header.outletNameFontSettings.fontFamily}`,\r\n };\r\n });\r\n\r\n setBodyStyle((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: body.backgroundColor\r\n ? `${body.backgroundColor}`\r\n : prev.backgroundColor,\r\n backgroundImage: `url(${body.backgroundImages[0]})`,\r\n border: body.border ? `${body.border}` : prev.border,\r\n fontFamily: `${body.fontSettings.fontFamily}`,\r\n color: `${body.fontSettings.color}`,\r\n fontWeight: body.fontSettings.bold ? \"bold\" : \"normal\",\r\n fontStyle: body.fontSettings.italic ? \"italic\" : \"normal\",\r\n };\r\n });\r\n\r\n // for footer above part\r\n setBodySettings((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: body.backgroundColor\r\n ? `${body.backgroundColor}`\r\n : prev.backgroundColor,\r\n };\r\n });\r\n\r\n setFooterSettings((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: footer.backgroundColor\r\n ? `${footer.backgroundColor}`\r\n : prev.backgroundColor,\r\n justifyContent: footer.fontSettings.alignment\r\n ? `${footer.fontSettings.alignment}`\r\n : prev.justifyContent,\r\n };\r\n });\r\n setFooterFonts((prev) => {\r\n return {\r\n ...prev,\r\n color: footer.fontSettings.color\r\n ? `${footer.fontSettings.color}`\r\n : prev.color,\r\n size: footer.fontSettings.size\r\n ? `${footer.fontSettings.size}`\r\n : prev.color,\r\n fontFamily: `${footer.fontSettings.fontFamily}`,\r\n fontWeight: footer.fontSettings.bold ? \"bold\" : \"normal\",\r\n fontStyle: footer.fontSettings.italic ? \"italic\" : \"normal\",\r\n };\r\n });\r\n }\r\n }, [launch.themeSettings]);\r\n\r\n useEffect(() => {\r\n setToken(launch.token);\r\n }, [launch.token]);\r\n\r\n useEffect(() => {\r\n setToken(launch.outletListData.token);\r\n console.log(launch.outletListData);\r\n }, [launch.outletListData]);\r\n\r\n useEffect(() => {\r\n if (bookingStatusDetails) {\r\n setImageUrl(bookingStatusDetails.bookingDetails.outletImageUrl);\r\n setBookingStatusColor(() => {\r\n if (bookingStatusDetails.bookingDetails.currentStatus === \"Cancelled\")\r\n return \"black\";\r\n if (bookingStatusDetails.bookingDetails.currentStatus === \"Confirmed\")\r\n return \"black\";\r\n if (bookingStatusDetails.bookingDetails.currentStatus === \"Checked-In\")\r\n return \"black\";\r\n if (\r\n bookingStatusDetails.bookingDetails.currentStatus === \"Waiting List\"\r\n )\r\n return \"black\";\r\n });\r\n }\r\n }, [bookingStatusDetails]);\r\n\r\n const bookingStatusHandler = (prpId, ooutlId, reservId) => {\r\n // GET 'https://dev.lucidits.com/LUCIDPOSGuestTableReservationAPI/V1/\r\n //GetBookingStatusDetails?PropertyId=10000000131000000002&OutletCode=HAMR&ReservationId=d6140b0bf91244f9b58e01e76bbda440'\r\n console.log(bookingRef.current);\r\n bookingRef.current &&\r\n axios\r\n .get(\r\n `${process.env.REACT_APP_LUCIDPOS_GUEST_TABLE}GetBookingStatusDetails`,\r\n {\r\n params: {\r\n PropertyId: prpId,\r\n OutletCode: ooutlId,\r\n ReservationId: reservId,\r\n },\r\n headers: { Authorization: `Bearer ${token || launch.token}` }, // get from session storage from TableBooking outletList\r\n \"Content-Type\": \"application/json\",\r\n }\r\n )\r\n .then((res) => {\r\n if (res.data.errorCode === 0) {\r\n // bookingRef.current = false // to stop calling api 2 times\r\n setBookingStatusDetails(res.data.response);\r\n }\r\n if (res.data.errorCode === 1) {\r\n setErrorMessage(res.data.message);\r\n setBookingStatusDetails(res.data.response);\r\n }\r\n });\r\n bookingRef.current = false;\r\n };\r\n\r\n useEffect(() => {\r\n if (launch.token) {\r\n //from view click from your bookings\r\n if (props.PropertyId && props.OutletCode) {\r\n // refresh purpose\r\n setPropertyId(props.PropertyId);\r\n setOutletCode(props.OutletCode);\r\n setReservationId(props.BookingId);\r\n bookingStatusHandler(\r\n props.PropertyId,\r\n props.OutletCode,\r\n props.BookingId\r\n );\r\n } else if (\r\n !outletCode &&\r\n launch.outletDetails.outletDetails &&\r\n launch.paramData.remarks.split(\"|\")[1]\r\n ) {\r\n // refresh purpose\r\n setPropertyId(launch.paramData.propertyId);\r\n setOutletCode(launch.paramData.outletCode);\r\n setReservationId(launch.paramData.remarks.split(\"|\")[1]);\r\n // with remarks outlelevel call with reservation Id\r\n const resId = launch.paramData.remarks.split(\"|\")[1];\r\n bookingStatusHandler(\r\n launch.paramData.propertyId,\r\n launch.paramData.outletCode,\r\n resId\r\n );\r\n }\r\n console.log(props.PropertyId, props.OutletCode);\r\n }\r\n }, [\r\n props.PropertyId,\r\n props.OutletCode,\r\n props.BookingId,\r\n launch.outletDetails.outletDetails,\r\n launch.token,\r\n ]);\r\n\r\n return (\r\n \r\n {bookingStatusDetails.bookingDetails && (\r\n \r\n \r\n {imageUrl ? (\r\n
\r\n \r\n
\r\n ) : (\r\n
\r\n \r\n
\r\n {bookingStatusDetails &&\r\n bookingStatusDetails.bookingDetails.outletName}{\" \"}\r\n
\r\n
\r\n {bookingStatusDetails &&\r\n bookingStatusDetails.bookingDetails.propertyName}\r\n
\r\n
\r\n \r\n )}\r\n
\r\n \r\n
\r\n

\r\n Thank you{\" \"}\r\n {bookingStatusDetails &&\r\n bookingStatusDetails.bookingDetails.guestName}\r\n

\r\n
\r\n
\r\n
\r\n Your reservation has been{\" \"}\r\n {bookingStatusDetails &&\r\n bookingStatusDetails.bookingDetails.currentStatus.toLowerCase()}\r\n
\r\n
\r\n {bookingStatusDetails.bookingDetails.currentStatus ===\r\n \"Cancelled\" && (\r\n \r\n )}\r\n {bookingStatusDetails.bookingDetails.currentStatus ===\r\n \"Confirmed\" && (\r\n
\r\n \r\n
\r\n )}\r\n {bookingStatusDetails.bookingDetails.currentStatus ===\r\n \"Checked-In\" && (\r\n
\r\n \r\n
\r\n )}\r\n {bookingStatusDetails.bookingDetails.currentStatus ===\r\n \"Waiting List\" && (\r\n \r\n )}\r\n
\r\n
\r\n

\r\n {\" \"}\r\n {bookingStatusDetails &&\r\n bookingStatusDetails.bookingDetails.bookingId}\r\n

\r\n
\r\n
\r\n Reservation Number\r\n
\r\n\r\n
\r\n Your reservation details\r\n
\r\n \r\n \r\n \r\n {bookingStatusDetails &&\r\n bookingStatusDetails.bookingDetails.reservationDate}\r\n
Date
\r\n
\r\n
\r\n \r\n \r\n {bookingStatusDetails &&\r\n bookingStatusDetails.bookingDetails.reservationTime}\r\n
Time
\r\n
\r\n \r\n \r\n {bookingStatusDetails && (\r\n \r\n {bookingStatusDetails.bookingDetails.noOfGuest} People\r\n
Guests
\r\n
\r\n )}\r\n \r\n \r\n
\r\n

\r\n \r\n {bookingStatusDetails &&\r\n bookingStatusDetails.bookingDetails.currentStatus}\r\n {\" \"}\r\n

\r\n
\r\n
\r\n \r\n {[\r\n bookingStatusDetails &&\r\n bookingStatusDetails.bookingDetails.currentStatus ===\r\n \"Cancelled\" &&\r\n bookingStatusDetails.bookingDetails.cancelReason,\r\n ]}\r\n {bookingStatusDetails &&\r\n bookingStatusDetails.bookingDetails.currentStatus ===\r\n \"Waiting List\" && [\r\n \"Restaurant will update your booking status soon\",\r\n ]}\r\n \r\n
\r\n
\r\n {bookingStatusDetails &&\r\n bookingStatusDetails.bookingDetails.showRefresh && (\r\n {\r\n bookingRef.current = true;\r\n bookingStatusHandler(\r\n propertyId,\r\n outletCode,\r\n reservationId\r\n );\r\n }}\r\n style={{\r\n textDecoration: \"none\",\r\n color: \"black\",\r\n paddingLeft: \"7px\",\r\n cursor: \"pointer\",\r\n }}\r\n >\r\n \r\n
\r\n )}\r\n \r\n
\r\n
\r\n \r\n Booked On:\r\n {bookingStatusDetails &&\r\n bookingStatusDetails.bookingDetails.bookedOn}{\" \"}\r\n \r\n
\r\n\r\n
\r\n \r\n Booking Source:{\" \"}\r\n {bookingStatusDetails &&\r\n bookingStatusDetails.bookingDetails.bookingSource}\r\n \r\n
\r\n
\r\n {bookingStatusDetails &&\r\n bookingStatusDetails.bookingDetails.showTableBookingLink && (\r\n
\r\n \r\n \r\n Go To Table Booking\r\n

\r\n
\r\n
\r\n )}\r\n
\r\n \r\n \r\n
\r\n \r\n Powered by \r\n \r\n window.open(\"https://lucidpos.com/\", \"_blank\")\r\n }\r\n style={footerFonts}\r\n >\r\n LUCID POS\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n )}\r\n \r\n
\r\n );\r\n};\r\n\r\nexport default BookingView;\r\n","import React, { useState, useEffect, Fragment, useRef } from \"react\";\r\nimport axios from \"axios\";\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\nimport {\r\n faCalendarXmark,\r\n faClipboard,\r\n} from \"@fortawesome/free-regular-svg-icons\";\r\nimport { GiPartyPopper } from \"react-icons/gi\";\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\nimport { Row, Col, Container, CardFooter, Button } from \"reactstrap\";\r\nimport { RefreshCcw } from \"react-feather\";\r\nimport { Link } from \"react-router-dom\";\r\nimport {\r\n Card,\r\n CardImg,\r\n CardBody,\r\n CardText,\r\n CardHeader,\r\n Badge,\r\n} from \"reactstrap\";\r\nimport Loading from \"./Loading\";\r\nimport ErrorModal from \"./view/TableBooking/Modals/ErrorModal\";\r\nimport BookingView from \"./view/TableBooking/BookingView\";\r\nimport TableBookingComp from \"./view/TableBooking/TableBookingComp\";\r\nimport { getOutletDetails, handlePageId, handleViewPage } from \"./redux/launch\";\r\nimport { handleIsOpenBL } from \"./redux/tableBooking\";\r\n\r\nconst View = (props) => {\r\n const dispatch = useDispatch();\r\n const launch = useSelector((state) => state.launch);\r\n const [paramData, setParamData] = useState(launch.paramData);\r\n const [token, setToken] = useState(launch.token);\r\n const [walkingStatusDetails, setWalkingStatusDetails] = useState(\"\");\r\n const [bookingId, setBookingId] = useState(props.BookingId);\r\n const [checkInId, setCheckInId] = useState(\r\n props.checkInId || launch.paramData.remarks.split(\"|\")[1]\r\n );\r\n //launch.paramData.remarks.split('|')[1])\r\n const [bookingType] = useState(props.BookingType);\r\n const [view, setView] = useState(0);\r\n\r\n const [errorMessage, setErrorMessage] = useState(\"\");\r\n const walkinRef = useRef(true);\r\n const outletDetailsRef = useRef(true);\r\n const [logoStyle, setLogoStyle] = useState({\r\n display: \"flex\",\r\n justifyContent: \"left\",\r\n });\r\n //{backgroundColor: 'white', height:'100vh'}\r\n const [bodyStyle, setBodyStyle] = useState({\r\n backgroundColor: \"white\",\r\n border: \"none\",\r\n paddingTop: \"80px\",\r\n });\r\n const [footerSettings, setFooterSettings] = useState({\r\n backgroundColor: \"#EAEAEA\",\r\n justifyContent: \"center\",\r\n });\r\n const [footerFonts, setFooterFonts] = useState({\r\n fontWeight: \"normal\",\r\n fontSize: \"11px\",\r\n color: \"#8D8D8D\",\r\n });\r\n const [headerStyle, setHeaderStyle] = useState({\r\n border: \"none\",\r\n backgroundColor: \"#EAEAEA\",\r\n zIndex: \"5\",\r\n });\r\n\r\n const [propertyNameFontSettings, setPropertyNameFontSettings] = useState({\r\n color: \"black\",\r\n });\r\n\r\n const [outletNameFontSettings, setOutletNameFontSettings] = useState({\r\n color: \"black\",\r\n });\r\n const [buttonUnSelectedStyle, setButtonUnSelectedStyle] = useState({\r\n backgroundColor: \"white\",\r\n color: \"black\",\r\n });\r\n useEffect(() => {\r\n if (launch.themeSettings && launch.themeSettings.data.status === 1) {\r\n console.log(launch.themeSettings);\r\n const body = launch.themeSettings.data.themeSettings.body;\r\n const footer = launch.themeSettings.data.themeSettings.footer;\r\n const header = launch.themeSettings.data.themeSettings.header;\r\n\r\n setHeaderStyle((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: header.backgroundColor\r\n ? `${header.backgroundColor}`\r\n : prev.backgroundColor,\r\n height: `${header.height}`,\r\n backgroundImage: `url(${header.backgroundImages[0]})`,\r\n backgroundRepeat: \"no-repeat\",\r\n };\r\n });\r\n\r\n setPropertyNameFontSettings((prev) => {\r\n return {\r\n ...prev,\r\n color: `${header.propertyNameFontSettings.color}`,\r\n fontFamily: `${header.propertyNameFontSettings.fontFamily}`,\r\n };\r\n });\r\n\r\n setOutletNameFontSettings((prev) => {\r\n return {\r\n ...prev,\r\n color: `${header.outletNameFontSettings.color}`,\r\n fontFamily: `${header.outletNameFontSettings.fontFamily}`,\r\n };\r\n });\r\n\r\n setBodyStyle((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: body.backgroundColor\r\n ? `${body.backgroundColor}`\r\n : prev.backgroundColor,\r\n backgroundImage: `url(${body.backgroundImages[0]})`,\r\n border: body.border ? `${body.border}` : prev.border,\r\n fontFamily: `${body.fontSettings.fontFamily}`,\r\n color: `${body.fontSettings.color}`,\r\n fontWeight: body.fontSettings.bold ? \"bold\" : \"normal\",\r\n fontStyle: body.fontSettings.italic ? \"italic\" : \"normal\",\r\n };\r\n });\r\n setButtonUnSelectedStyle((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: body.nonSelectedButtonSettings.backgroundColor\r\n ? `${body.nonSelectedButtonSettings.backgroundColor}`\r\n : prev.backgroundColor,\r\n color: body.nonSelectedButtonSettings.fontSettings.color\r\n ? `${body.nonSelectedButtonSettings.fontSettings.color}`\r\n : prev.color,\r\n fontFamily: body.nonSelectedButtonSettings.fontSettings.fontFamily\r\n ? `${body.nonSelectedButtonSettings.fontSettings.fontFamily}`\r\n : \"\",\r\n };\r\n });\r\n\r\n setFooterSettings((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: footer.backgroundColor\r\n ? `${footer.backgroundColor}`\r\n : prev.backgroundColor,\r\n justifyContent: footer.fontSettings.alignment\r\n ? `${footer.fontSettings.alignment}`\r\n : prev.justifyContent,\r\n };\r\n });\r\n setFooterFonts((prev) => {\r\n return {\r\n ...prev,\r\n color: footer.fontSettings.color\r\n ? `${footer.fontSettings.color}`\r\n : prev.color,\r\n size: footer.fontSettings.size\r\n ? `${footer.fontSettings.size}`\r\n : prev.color,\r\n fontFamily: `${footer.fontSettings.fontFamily}`,\r\n fontWeight: footer.fontSettings.bold ? \"bold\" : \"normal\",\r\n fontStyle: footer.fontSettings.italic ? \"italic\" : \"normal\",\r\n };\r\n });\r\n }\r\n }, [launch.themeSettings]);\r\n\r\n useEffect(() => {\r\n if (launch.paramData) {\r\n setToken(launch.token);\r\n setParamData(launch.paramData);\r\n if (\r\n launch.token &&\r\n launch.paramData.outletCode &&\r\n outletDetailsRef.current &&\r\n launch.paramData.remarks\r\n ) {\r\n outletDetailsRef.current = false;\r\n dispatch(\r\n getOutletDetails({\r\n tokenOption: launch.token,\r\n outletCode: launch.paramData.outletCode,\r\n })\r\n );\r\n }\r\n }\r\n }, [launch.token, launch.paramData.outletCode]);\r\n\r\n useEffect(() => {\r\n if (props.BookingId) setBookingId(props.BookingId);\r\n }, [props.BookingId]);\r\n\r\n useEffect(() => {\r\n if (props.checkInId) setCheckInId(props.checkInId);\r\n }, [props.checkInId]);\r\n\r\n const viewTableBooking = () => {\r\n // setView('table') // removed it due to pageid is not getting reset\r\n // setTimeout(() => dispatch(handleViewPage(''), 1000))\r\n // dispatch(handleViewPage(''))\r\n // props.tableBookingHandler()\r\n dispatch(handlePageId(1)); // or the table view is not working on second click after coming back\r\n dispatch(handleIsOpenBL(true));\r\n };\r\n\r\n const walkingBookingStatusHandler = () => {\r\n //curl --location --request GET 'https://dev.lucidits.com/LUCIDPOSGuestTableReservationAPI/V1/GetWalkInStatusDetails?\r\n //PropertyId=10000000131000000002&OutletCode=HAMR&CheckInId=d6140b0bf91244f9b58e01e76bbda440'\r\n if (walkinRef.current)\r\n axios\r\n .get(\r\n `${process.env.REACT_APP_LUCIDPOS_GUEST_TABLE}GetWalkInStatusDetails`,\r\n {\r\n params: {\r\n PropertyId: paramData.propertyId,\r\n OutletCode: paramData.outletCode,\r\n CheckInId: checkInId || props.checkInId,\r\n },\r\n headers: { Authorization: `Bearer ${token}` }, // get from session storage from TableBooking outletList\r\n \"Content-Type\": \"application/json\",\r\n }\r\n )\r\n .then((res) => {\r\n if (res.data.errorCode === 0)\r\n setWalkingStatusDetails(res.data.response);\r\n if (res.data.errorCode === 1) setErrorMessage(res.data.message);\r\n });\r\n walkinRef.current = false;\r\n };\r\n\r\n useEffect(() => {\r\n const walking =\r\n paramData.remarks && paramData.remarks.split(\"|\")[0] === \"2\";\r\n if (token) {\r\n if (launch.paramData.remarks.split(\"|\")[0] === \"1\") {\r\n setView(1);\r\n } else if (launch.paramData.remarks == \"tbr-self-chkin\") {\r\n setView(3);\r\n walkingBookingStatusHandler();\r\n } else if (walking || bookingType) {\r\n walkingBookingStatusHandler();\r\n } else if (props.BookingId) {\r\n setView(1);\r\n }\r\n }\r\n }, [launch.paramData, token, bookingId]);\r\n\r\n const Wlcontent = () => {\r\n return (\r\n \r\n \r\n

\r\n {walkingStatusDetails &&\r\n walkingStatusDetails.walkInDetails.currentWaitlistNo}\r\n

\r\n \r\n
\r\n \r\n Your Current Wait List Number \r\n {\r\n walkinRef.current = true;\r\n walkingBookingStatusHandler();\r\n }}\r\n style={{\r\n textDecoration: \"none\",\r\n color: \"black\",\r\n paddingLeft: \"7px\",\r\n }}\r\n >\r\n {walkingStatusDetails &&\r\n walkingStatusDetails.walkInDetails.showRefresh && (\r\n \r\n )}\r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n };\r\n\r\n const Confirmcontent = () => {\r\n return (\r\n \r\n
\r\n

\r\n {\" \"}\r\n {walkingStatusDetails &&\r\n walkingStatusDetails.walkInDetails.tableNos}\r\n

\r\n
\r\n
\r\n Table Number\r\n
\r\n\r\n
\r\n {walkingStatusDetails &&\r\n walkingStatusDetails.walkInDetails.showOrderNow && (\r\n \r\n window.open(\r\n walkingStatusDetails.walkInDetails.orderNowLink,\r\n \"_self\"\r\n )\r\n }\r\n >\r\n {walkingStatusDetails.walkInDetails.orderNowDisplayName}\r\n \r\n )}\r\n
\r\n
\r\n );\r\n };\r\n\r\n const CancelContent = () => {\r\n return (\r\n \r\n
\r\n

\r\n \r\n Cancelled\r\n {\" \"}\r\n

\r\n
\r\n
\r\n \r\n [\r\n {walkingStatusDetails &&\r\n walkingStatusDetails.walkInDetails.cancelReason}\r\n ]\r\n \r\n
\r\n
\r\n {\r\n // for spacing prupose , not rquired for cancelled to order\r\n // walkingStatusDetails && walkingStatusDetails.walkInDetails.showOrderNow &&\r\n //

\r\n // window.open(walkingStatusDetails.walkInDetails.orderNowLink, '_self')}>{walkingStatusDetails.walkInDetails.orderNowDisplayName}\r\n //

\r\n }\r\n
\r\n
\r\n );\r\n };\r\n\r\n const WalkingStatusComponent = () => {\r\n return (\r\n \r\n \r\n {walkingStatusDetails.walkInDetails.outletImageUrl &&\r\n launch.themeSettings &&\r\n launch.themeSettings.data.themeSettings.header.hideLogo ===\r\n \"false\" ? (\r\n
\r\n \r\n
\r\n ) : (\r\n
\r\n \r\n
\r\n {walkingStatusDetails &&\r\n walkingStatusDetails.walkInDetails.outletName}{\" \"}\r\n
\r\n
\r\n {walkingStatusDetails &&\r\n walkingStatusDetails.walkInDetails.propertyName}\r\n
\r\n
\r\n \r\n )}\r\n
\r\n \r\n
\r\n

\r\n Thank you{\" \"}\r\n {walkingStatusDetails &&\r\n walkingStatusDetails.walkInDetails.guestName}{\" \"}\r\n

\r\n
\r\n\r\n
\r\n {(walkingStatusDetails.walkInDetails.currentStatus === 2 ||\r\n walkingStatusDetails.walkInDetails.currentStatus === 3) &&\r\n \"Your table has been confirmed\"}\r\n {walkingStatusDetails.walkInDetails.currentStatus === 1 &&\r\n \"Thanks for waiting, you will get your table soon\"}\r\n {walkingStatusDetails.walkInDetails.currentStatus === 4 &&\r\n \"Your table has been cancelled\"}\r\n
\r\n
\r\n {(walkingStatusDetails.walkInDetails.currentStatus === 2 ||\r\n walkingStatusDetails.walkInDetails.currentStatus === 3) && (\r\n
\r\n \r\n
\r\n )}\r\n {walkingStatusDetails.walkInDetails.currentStatus === 4 && (\r\n \r\n )}\r\n {walkingStatusDetails.walkInDetails.currentStatus === 1 && (\r\n \r\n )}\r\n
\r\n \r\n {walkingStatusDetails.walkInDetails.currentStatus === 1 && (\r\n \r\n )}\r\n {(walkingStatusDetails.walkInDetails.currentStatus === 2 ||\r\n walkingStatusDetails.walkInDetails.currentStatus === 3) && (\r\n \r\n )}\r\n {walkingStatusDetails.walkInDetails.currentStatus === 4 && (\r\n \r\n )}\r\n
\r\n Your walkin details\r\n
\r\n \r\n \r\n \r\n {walkingStatusDetails &&\r\n walkingStatusDetails.walkInDetails.checkInDate}\r\n
Date
\r\n
\r\n \r\n \r\n \r\n {walkingStatusDetails &&\r\n walkingStatusDetails.walkInDetails.checkInTime}\r\n
Time
\r\n
\r\n \r\n \r\n {walkingStatusDetails && (\r\n \r\n {walkingStatusDetails.walkInDetails.noOfGuest} People\r\n
Guests
\r\n
\r\n )}\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n Powered by{\" \"}\r\n \r\n window.open(\"https://lucidpos.com/\", \"_blank\")}\r\n style={{\r\n fontWeight: \"normal\",\r\n fontSize: \"11px\",\r\n color: \"#8D8D8D\",\r\n }}\r\n >\r\n LUCID POS\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n );\r\n };\r\n if (view === \"table\") {\r\n return ;\r\n } else\r\n return (\r\n \r\n \r\n \r\n {!view && !walkingStatusDetails && }\r\n {view === 1 && (\r\n \r\n )}\r\n {walkingStatusDetails && }\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default View;\r\n"," // ** Redux Imports\r\n import { createSlice, createAsyncThunk } from '@reduxjs/toolkit'\r\n\r\n // ** Axios Imports\r\n import axios from 'axios'\r\n const initialPropertyData = () => {\r\n const item = window.sessionStorage.getItem('propertyData') \r\n //** Parse stored json or if none return initialValue\r\n return item ? JSON.parse(item) : {}\r\n }\r\n \r\n export const getPropertyList = createAsyncThunk('propertyList/getPropertyList', async (token) => {\r\n const response = await axios.get(`${process.env.REACT_APP_LUCIDPOS_GUEST_TABLE}GetPropertyList`, {\r\n headers: { Authorization: `Bearer ${token}`},\r\n \"Content-Type\": \"application/json\"\r\n }\r\n ).then(res => {\r\n \r\n return res.data.response\r\n })\r\n return response\r\n })\r\n \r\n export const propertySlice = createSlice({\r\n name: 'propertyList',\r\n initialState: {\r\n propertyData:initialPropertyData(),\r\n query: '',\r\n bookmarks: [],\r\n suggestions: []\r\n },\r\n reducers: {\r\n handleProperty: (state, action) => {\r\n state.propertyData = action.payload\r\n sessionStorage.setItem('propertyData', JSON.stringify(action.payload)) \r\n }\r\n },\r\n extraReducers: builder => {\r\n builder\r\n .addCase(getPropertyList.fulfilled, (state, action) => {\r\n state.propertyData = action.payload \r\n sessionStorage.setItem('propertyData', JSON.stringify(action.payload)) \r\n // state.bookmarks = action.payload.bookmarks\r\n })\r\n // .addCase(updateBookmarked.fulfilled, (state, action) => {\r\n // let objectToUpdate \r\n // // ** find & update object\r\n // state.suggestions.find(item => {\r\n // if (item.id === action.payload) {\r\n // item.isBookmarked = !item.isBookmarked\r\n // objectToUpdate = item\r\n // }\r\n // })\r\n\r\n // ** Get index to add or remove bookmark from array\r\n // const bookmarkIndex = state.bookmarks.findIndex(x => x.id === action.payload)\r\n\r\n // if (bookmarkIndex === -1) {\r\n // state.bookmarks.push(objectToUpdate)\r\n // } else {\r\n // state.bookmarks.splice(bookmarkIndex, 1)\r\n // }\r\n //})\r\n }\r\n })\r\n\r\n export const { handleProperty } = propertySlice.actions\r\n\r\n export default propertySlice.reducer\r\n","import React from \"react\"\r\nimport { Col, Container, Row, Spinner } from \"reactstrap\"\r\n\r\nconst Loading = () => {\r\n return (\r\n \r\n \r\n {\r\n // \r\n } \r\n \r\n \r\n )\r\n}\r\n\r\nexport default Loading","import axios from \"axios\"\r\nimport { useEffect } from \"react\"\r\nimport { useState } from \"react\"\r\nimport { useSelector, useDispatch } from \"react-redux\"\r\nimport { handleBooking } from \"../redux/tableBooking\"\r\n\r\n\r\nconst useBooking = () => {\r\n const dispatch = useDispatch()\r\n const tableBooking = useSelector(state => state.tableBooking)\r\n const launch = useSelector(state => state.launch)\r\n const token = launch.token\r\n const [modalTitle, setModalTitle] = useState('')\r\n const [modalErrorMessage, setModalErrorMessage] = useState('')\r\n const [otpReferenceId, setOtpReferenceId] = useState('')\r\n const [otpExpiryDuration, setOtpExpiryDuration] = useState(0)\r\n const [ContactNo, setContactNo] = useState('')\r\n const [loggedIn, setLoggedIn] = useState(tableBooking.loggedIn)\r\n\r\n useEffect(() => { \r\n \r\n if (tableBooking.tableData) {\r\n const bkng = tableBooking.tableData \r\n setContactNo(bkng.ContactNo) \r\n } \r\n if (tableBooking.loggedIn) { \r\n setLoggedIn(tableBooking.loggedIn) \r\n } \r\n \r\n}, [tableBooking.tableData, tableBooking.loggedIn])\r\n\r\nconst otpHandler = () => {\r\n \r\n // GET 'https://dev.lucidits.com/LUCIDAPI/V1/SendOTP?OTPFor=4&MobileNo=9738854149'\r\n if ((!loggedIn && ContactNo)) axios.get(`${process.env.REACT_APP_BASE_API_URL}LUCIDAPI/V1/SendOTP`,\r\n { \r\n params:{\r\n OTPFor:4,\r\n MobileNo:ContactNo\r\n },\r\n headers: { Authorization: `Bearer ${token}`},\r\n \"Content-Type\": \"application/json\"\r\n } \r\n).then((response) => { \r\n //setOTPRefernceData(response.data.response)\r\nconsole.log(response.data.response)\r\n setOtpReferenceId(response.data.response.otpReferenceId)\r\n setOtpExpiryDuration(Number(response.data.response.otpExpiryDuration * 60000))\r\n \r\n}) \r\n}\r\n \r\n const contactHandler = (no) => { \r\n // if (ContactNo.length !== 10) {\r\n console.log(no)\r\n if (no.length !== 10 && ContactNo.length !== 10) {\r\n setModalErrorMessage('Kindly Enter Valid Mobile No')\r\n // modalErrorRef.current = 'Kindly Enter Valid Mobile No'\r\n // setModalError(!modalError)\r\n \r\n // setContactNo(contactNoRef.current)\r\n }else {\r\n console.log(modalTitle)\r\n if (modalTitle === 'Your Contact No' && !ContactNo) {\r\n setContactNo(no) \r\n dispatch(handleBooking({...tableBooking.tableData, ContactNo:no}))\r\n otpHandler() \r\n } \r\n setModalErrorMessage('') \r\n otpHandler() \r\n setModalTitle('OTP') \r\n \r\n } \r\n }\r\n\r\n \r\n\r\n return {contactHandler, otpHandler, otpExpiryDuration, otpReferenceId, modalTitle, setModalTitle, modalErrorMessage}\r\n\r\n}\r\n\r\nexport default useBooking","import axios from \"axios\";\r\nimport React, { Fragment, useEffect, useRef, useState } from \"react\";\r\nimport { MinusCircle, PlusCircle, RefreshCcw } from \"react-feather\";\r\nimport { useSelector } from \"react-redux\";\r\n\r\nimport { Col, Collapse, Row, Spinner, Table } from \"reactstrap\";\r\nimport { useMediaQuery } from \"react-responsive\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { handlePageId, handleViewPage } from \"../../redux/launch\";\r\nimport View from \"../../View\";\r\nimport ReactPaginate from \"react-paginate\";\r\nimport { handleModalTitle } from \"../../redux/modals\";\r\nimport { handleIsOpenBL } from \"../../redux/tableBooking\";\r\n\r\nconst BookingDetailsList = (props) => {\r\n const isTabletOrMobile = useMediaQuery({ query: \"(max-width: 1224px)\" });\r\n const tableBooking = useSelector((state) => state.tableBooking);\r\n const launch = useSelector((state) => state.launch);\r\n const [token, setToken] = useState(launch.token);\r\n const modalsData = useSelector((state) => state.modals);\r\n const [isOpenBL, setIsOpenBL] = useState(false);\r\n const [currentPage, setCurrentPage] = useState(1);\r\n const [totalBooking, setTotalBooking] = useState(\"\");\r\n const [GuestTableBookingList, setGuestTableBookingList] = useState(\"\");\r\n const dispatch = useDispatch();\r\n const [ContactNo, setContactNo] = useState(tableBooking.tableData.ContactNo);\r\n const [OutletCode, setOutletCode] = useState(\"\");\r\n // const [OrganizationId, setOrganizationId] = useState('')\r\n const [spinnerToggle, setSpinnerToggle] = useState(false);\r\n // const [bookingHandlerToggle, setBookingHandlerToggle] = useState(false)\r\n const handlePagination = (page) => setCurrentPage(page.selected + 1);\r\n const guestRef = useRef(false);\r\n const [bookingLinkStyle, setBookingLinkStyle] = useState({\r\n color: \"black\",\r\n display: \"inline\",\r\n cursor: \"pointer\",\r\n });\r\n const [gridheaderStyle, setGridheaderStyle] = useState({\r\n backgroundColor: \"grey\",\r\n color: \"black\",\r\n });\r\n const [color1, setColor1] = useState(\"grey\");\r\n const [color2, setColor2] = useState(\"white\");\r\n\r\n useEffect(() => {\r\n if (launch.themeSettings.data && launch.themeSettings.data.status === 1) {\r\n const body = launch.themeSettings.data.themeSettings.body;\r\n console.log(body);\r\n setBookingLinkStyle((prev) => {\r\n return {\r\n ...prev,\r\n color: body.fontSettings.color\r\n ? `${body.fontSettings.color}`\r\n : prev.color,\r\n };\r\n });\r\n setGridheaderStyle((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: body.yourBookingGridSettings.headerColor\r\n ? `${body.yourBookingGridSettings.headerColor}`\r\n : prev.backgroundColor,\r\n };\r\n });\r\n setColor1((prev) => {\r\n console.log(body.yourBookingGridSettings.color1);\r\n return body.yourBookingGridSettings.color1\r\n ? `${body.yourBookingGridSettings.color1}`\r\n : `${prev}`;\r\n });\r\n setColor2((prev) => {\r\n return body.yourBookingGridSettings.color2\r\n ? `${body.yourBookingGridSettings.color2}`\r\n : `${prev}`;\r\n });\r\n } else if (launch.themeSettingsDefault.data) {\r\n const body = launch.themeSettingsDefault.data.themeSettings.body;\r\n console.log(body);\r\n setBookingLinkStyle((prev) => {\r\n return {\r\n ...prev,\r\n color: body.fontSettings.color\r\n ? `${body.fontSettings.color}`\r\n : prev.color,\r\n };\r\n });\r\n setGridheaderStyle({ backgroundColor: \"grey\", color: \"black\" });\r\n // body.yourBookingGridSettings.color2, should update via default settings\r\n setColor1(\"grey\");\r\n setColor2(\"white\");\r\n }\r\n }, [launch.themeSettings]);\r\n\r\n useEffect(() => {\r\n const bkng = tableBooking.tableData;\r\n // setBookingDate(bkng.bookingDate)\r\n // setNoOfGuest(bkng.NoOfGuest)\r\n // setBookingTime(bkng.BookingTime)\r\n // setSelectedTitle()\r\n // setFirstName(bkng.FirstName)\r\n // setLastName(bkng.LastName)\r\n // setSelectedTelephoneCode(bkng.selectedTelephoneCode)\r\n setContactNo(bkng.ContactNo);\r\n // setEmailId(bkng.EmailId)\r\n // setInstruction(bkng.Instruction)\r\n if (tableBooking.loggedIn === false) {\r\n setGuestTableBookingList(\"\");\r\n setIsOpenBL(false);\r\n }\r\n }, [tableBooking]);\r\n\r\n useEffect(() => {\r\n if (tableBooking.guestList) {\r\n setGuestTableBookingList(tableBooking.guestList);\r\n }\r\n }, [tableBooking.guestList]);\r\n\r\n useEffect(() => {\r\n if (tableBooking.guestTotalBooking.totalBooking) {\r\n setTotalBooking(tableBooking.guestTotalBooking.totalBooking);\r\n }\r\n\r\n console.log(tableBooking.guestTotalBooking);\r\n }, [tableBooking.guestTotalBooking.totalBooking]);\r\n\r\n useEffect(() => {\r\n if (launch) {\r\n //setToken(launch.token)\r\n setOutletCode(launch.paramData.outletCode);\r\n // setOrganizationId(launch.paramData.organizationId)\r\n }\r\n }, [launch]);\r\n\r\n useEffect(() => {\r\n if (launch.outletListData) {\r\n setToken(launch.outletListData.token);\r\n }\r\n console.log(launch.outletListData);\r\n }, [launch.outletListData]);\r\n\r\n const tableBookingHandler = () => {\r\n dispatch(handleViewPage(\"\"));\r\n dispatch(handlePageId(1));\r\n // getGuestListHandler()\r\n\r\n // guestRef.current = true\r\n };\r\n useEffect(() => {\r\n if (isOpenBL) {\r\n guestRef.current = true;\r\n }\r\n }, [currentPage, isOpenBL]);\r\n\r\n const getGuestListHandler = () => {\r\n //GET 'https://dev.lucidits.com/LUCIDPOSGuestTableReservationAPI/V1/GetGuestTotalBooking?ContactNo=9738854149'\r\n axios\r\n .get(\r\n `${process.env.REACT_APP_LUCIDPOS_GUEST_TABLE}GetGuestTotalBooking`,\r\n {\r\n params: {\r\n ContactNo: ContactNo,\r\n },\r\n headers: { Authorization: `Bearer ${token || props.token}` },\r\n \"Content-Type\": \"application/json\",\r\n }\r\n )\r\n .then((res) => {\r\n setTotalBooking(res.data.response.totalBooking);\r\n });\r\n //GET 'https://dev.lucidits.com/LUCIDPOSGuestTableReservationAPI/V1/GetGuestTableBookingList?CurrentPageNumber=10&NoOfRowsPerPage=1&ContactNo=9738854149'\r\n axios\r\n .get(\r\n `${process.env.REACT_APP_LUCIDPOS_GUEST_TABLE}GetGuestTableBookingList`,\r\n {\r\n params: {\r\n CurrentPageNumber: currentPage,\r\n NoOfRowsPerPage: 10,\r\n ContactNo: ContactNo,\r\n },\r\n headers: { Authorization: `Bearer ${token || props.token}` },\r\n \"Content-Type\": \"application/json\",\r\n }\r\n )\r\n .then((res) => {\r\n setGuestTableBookingList(res.data.response);\r\n window.scrollTo(0, document.body.scrollHeight);\r\n guestRef.current = false;\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n if (tableBooking.isOpenBL) {\r\n !isOpenBL && setIsOpenBL(tableBooking.isOpenBL);\r\n // getGuestListHandler()\r\n }\r\n }, [tableBooking.isOpenBL]);\r\n\r\n useEffect(() => {\r\n if (isOpenBL && tableBooking.loggedIn && ContactNo && guestRef.current) {\r\n guestRef.current = false;\r\n console.log(GuestTableBookingList);\r\n getGuestListHandler();\r\n document.body.style.overflow = \"visible\";\r\n }\r\n\r\n console.log(isOpenBL, tableBooking.loggedIn, ContactNo);\r\n }, [\r\n isOpenBL,\r\n tableBooking.loggedIn,\r\n currentPage,\r\n props.outletList,\r\n props.token,\r\n ContactNo,\r\n ]);\r\n\r\n const cancelHandler = (outcode, propertyId, bookingId) => {\r\n setSpinnerToggle(bookingId);\r\n axios\r\n .post(\r\n `${process.env.REACT_APP_LUCIDPOS_GUEST_TABLE}ValidateCancelTableBooking`,\r\n {\r\n PropertyId: propertyId,\r\n OutletCode: outcode,\r\n BookingId: bookingId,\r\n ContactNo: props.ContactNo,\r\n },\r\n {\r\n headers: { Authorization: `Bearer ${token || props.token}` },\r\n }\r\n )\r\n .then((res) => {\r\n if (res.data.errorCode === 0) {\r\n axios.post(\r\n `${process.env.REACT_APP_LUCIDPOS_GUEST_TABLE}CancelTableBooking`,\r\n {\r\n PropertyId: propertyId,\r\n OutletCode: outcode,\r\n BookingId: bookingId,\r\n ContactNo: props.ContactNo,\r\n },\r\n {\r\n headers: { Authorization: `Bearer ${token || props.token}` },\r\n }\r\n );\r\n }\r\n })\r\n .then(() => {\r\n setTimeout(() => {\r\n setSpinnerToggle(\"\");\r\n getGuestListHandler();\r\n }, 2000);\r\n // setBookingHandlerToggle(false)\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n if (modalsData.modalTitle === \"Your Booking Success\" && isOpenBL) {\r\n setTimeout(() => getGuestListHandler(), 1000); // so that saved recoreds can be fetched\r\n }\r\n\r\n // return () => setModalTitle('')\r\n }, [modalsData.modalTitle]);\r\n\r\n return (\r\n \r\n \r\n \r\n {isOpenBL ? (\r\n \r\n ) : (\r\n \r\n )}\r\n {\r\n if (\r\n tableBooking.loggedIn === false &&\r\n ContactNo &&\r\n ContactNo.length !== 10\r\n ) {\r\n dispatch(handleModalTitle(\"Kindly Enter Valid Mobile No\"));\r\n // setModalError(!modalError)\r\n } else if (tableBooking.loggedIn === false) {\r\n dispatch(handleModalTitle(\"Kindly Login to View Bookings\"));\r\n // setModalTitle('Kindly Login to View Bookings')\r\n //setModalError(!modalError)\r\n } else {\r\n setIsOpenBL(!isOpenBL);\r\n }\r\n }}\r\n >\r\n Your Bookings\r\n

\r\n {totalBooking && tableBooking.loggedIn && (\r\n ({totalBooking})\r\n )}\r\n {\r\n if (tableBooking.loggedIn === false || ContactNo.length !== 10) {\r\n dispatch(handleModalTitle(\"Kindly Enter Valid Mobile No\"));\r\n // props.setModalTitle('Kindly Enter Valid Mobile No')\r\n props.setModalError(!props.modalError);\r\n } else {\r\n // props.setModalTitle('')\r\n getGuestListHandler();\r\n }\r\n }}\r\n >\r\n {\" \"}\r\n {totalBooking && (\r\n \r\n )}\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n {GuestTableBookingList && isOpenBL && (\r\n \r\n \r\n \r\n Location\r\n \r\n Date\r\n Time\r\n \r\n No of Guest\r\n \r\n Status\r\n View\r\n Cancel\r\n \r\n \r\n )}\r\n \r\n {!GuestTableBookingList && isOpenBL && (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n {GuestTableBookingList &&\r\n isOpenBL &&\r\n GuestTableBookingList.bookingList.map((item, id) => {\r\n return (\r\n \r\n {item.location}\r\n {item.bookingDate}\r\n {item.bookingTime}\r\n \r\n {item.noOfGuest}\r\n \r\n {item.status}\r\n \r\n {\r\n console.log(item.outletCode, launch.pageId);\r\n dispatch(\r\n handleViewPage(\r\n \r\n )\r\n );\r\n dispatch(handleIsOpenBL(false));\r\n dispatch(handlePageId(2));\r\n // sessionStorage.setItem('paramData',JSON.stringify({organizationId:OrganizationId, propertyId:item.propertyId, propertyName: propertyName,\r\n // outletName: outletName, outletCode:item.outletCode,imageUrl:imageUrl,}))\r\n }}\r\n >\r\n View\r\n

\r\n \r\n \r\n {item.allowCancel && (\r\n {\r\n cancelHandler(\r\n item.outletCode,\r\n item.propertyId,\r\n item.bookingId\r\n );\r\n }}\r\n >\r\n {spinnerToggle === item.bookingId ? (\r\n
\r\n ) : (\r\n \"Cancel\"\r\n )}\r\n \r\n )}\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n
\r\n \"\r\n onPageChange={(page) => handlePagination(page)}\r\n forcePage={\r\n GuestTableBookingList &&\r\n GuestTableBookingList.paginationDetail.currentPageNumber - 1\r\n }\r\n pageRangeDisplayed={5}\r\n pageCount={\r\n GuestTableBookingList &&\r\n Math.ceil(\r\n GuestTableBookingList.paginationDetail.totalRecords /\r\n GuestTableBookingList.paginationDetail.noOfRowsPerPage\r\n )\r\n }\r\n previousLabel=\"<\"\r\n renderOnZeroPageCount={null}\r\n activeClassName=\"active\"\r\n pageClassName=\"page-item\"\r\n breakClassName=\"page-item\"\r\n pageLinkClassName=\"page-link\"\r\n nextLinkClassName=\"page-link\"\r\n breakLinkClassName=\"page-link\"\r\n nextClassName=\"page-item next\"\r\n previousLinkClassName=\"page-link\"\r\n previousClassName=\"page-item prev\"\r\n containerClassName=\"pagination react-paginate pagination-danger pagination-sm\"\r\n style={{ maxWidth: \"50%\" }}\r\n />\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default BookingDetailsList;\r\n","import React, { useEffect, useState , Fragment } from \"react\"\r\nimport { useSelector } from \"react-redux\"\r\n \r\nimport useBooking from \"../../Hooks/useBooking\";\r\nimport BookingDetailsList from \"./BookingDetailsList\";\r\n \r\n \r\n const BookingDetails = (props) => {\r\n const x = useBooking()\r\n const tableBooking = useSelector(state => state.tableBooking) \r\n const launch = useSelector(state => state.launch) \r\n const [loggedIn, setLoggedIn] = useState(tableBooking.loggedIn) \r\n const [modalError, setModalError] = useState(false) \r\n const [token, setToken] = useState(launch.outletListData)\r\n useEffect(() => {\r\n setLoggedIn(tableBooking.loggedIn)\r\n \r\n }, [tableBooking.loggedIn])\r\n\r\n useEffect(() => {\r\n if (launch.outletListData.outletList) {\r\n setToken(launch.outletListData.token)\r\n }\r\n }, [launch.outletListData])\r\n \r\n return ( \r\n \r\n \r\n \r\n ) \r\n }\r\n\r\n // inside FooterADD \r\nexport default BookingDetails","import React, { Fragment } from \"react\"\r\n \r\nimport BookingDetails from \"./BookingDetails\"\r\n\r\nconst FooterAdd = (props) => {\r\n \r\n return (\r\n \r\n \r\n \r\n \r\n )\r\n}\r\n\r\nexport default FooterAdd","import React, { useEffect, useState } from \"react\";\r\nimport { Link } from \"react-router-dom\";\r\nimport { CardFooter, Row } from \"reactstrap\";\r\n\r\nimport FooterAdd from \"../../view/TableBooking/FooterAdd\";\r\nimport { useSelector } from \"react-redux\";\r\nconst Footer = (props) => {\r\n const launchData = useSelector((state) => state.launch);\r\n const [bodySettings, setBodySettings] = useState({\r\n backgroundColor: \"white\",\r\n border: \"none\",\r\n });\r\n const [footerSettings, setFooterSettings] = useState({\r\n backgroundColor: \"#EAEAEA\",\r\n justifyContent: \"center\",\r\n });\r\n const [footerFonts, setFooterFonts] = useState({\r\n fontWeight: \"normal\",\r\n fontSize: \"11px\",\r\n color: \"#8D8D8D\",\r\n });\r\n\r\n // \"footer\": {\r\n // \"backgroundColor\": \"\",\r\n // \"fontSettings\": {\r\n // \"name\": \"\",\r\n // \"color\": \"\",\r\n // \"size\": \"\",\r\n // \"bold\": \"\",\r\n // \"italic\": \"\",\r\n // \"alignment\": \"left\"\r\n // },\r\n // \"height\": \"\"\r\n // }\r\n\r\n useEffect(() => {\r\n if (\r\n launchData.themeSettings.data &&\r\n launchData.themeSettings.data.status === 1\r\n ) {\r\n const body = launchData.themeSettings.data.themeSettings.body;\r\n const footer = launchData.themeSettings.data.themeSettings.footer;\r\n\r\n setBodySettings((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: body.backgroundColor\r\n ? `${body.backgroundColor}`\r\n : prev.backgroundColor,\r\n };\r\n });\r\n setFooterSettings((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: footer.backgroundColor\r\n ? `${footer.backgroundColor}`\r\n : prev.backgroundColor,\r\n justifyContent: footer.fontSettings.alignment\r\n ? `${footer.fontSettings.alignment}`\r\n : prev.justifyContent,\r\n };\r\n });\r\n setFooterFonts((prev) => {\r\n return {\r\n ...prev,\r\n color: footer.fontSettings.color\r\n ? `${footer.fontSettings.color}`\r\n : prev.color,\r\n size: footer.fontSettings.size\r\n ? `${footer.fontSettings.size}`\r\n : prev.color,\r\n fontFamily: `${footer.fontSettings.fontFamily}`,\r\n fontWeight: footer.fontSettings.bold ? \"bold\" : \"normal\",\r\n fontStyle: footer.fontSettings.italic ? \"italic\" : \"normal\",\r\n };\r\n });\r\n }\r\n }, [launchData.themeSettings]);\r\n\r\n return (\r\n \r\n \r\n \r\n
\r\n \r\n Powered by \r\n window.open(\"https://lucidpos.com/\", \"_blank\")}\r\n style={footerFonts}\r\n >\r\n LUCID POS\r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default Footer;\r\n","import React, { Fragment, useState, useRef, useEffect } from \"react\";\r\nimport Modal from \"react-modal\";\r\nimport { useSelector, dispatch, useDispatch } from \"react-redux\";\r\nimport { Button, Col, FormGroup, Input, Row } from \"reactstrap\";\r\nimport { useMediaQuery } from \"react-responsive\";\r\n\r\nimport dateFormat from \"dateformat\";\r\nimport Countdown from \"react-countdown\";\r\nimport { Check } from \"react-feather\";\r\nimport axios from \"axios\";\r\nimport {\r\n handleBooking,\r\n handleLogin,\r\n handlePropertySelection,\r\n handleOutletSelection,\r\n getGuestTotalBooking,\r\n getGuestListHandler,\r\n} from \"../../../redux/tableBooking\";\r\nimport { handleModalTitle, sendOTP } from \"../../../redux/modals\";\r\nimport {\r\n getOutletDetails,\r\n getOutletList,\r\n handleOutletList,\r\n} from \"../../../redux/launch\";\r\n\r\nconst ModalsComponent = (props) => {\r\n Modal.setAppElement(\"#root\");\r\n const dispatch = useDispatch();\r\n const launch = useSelector((state) => state.launch);\r\n const modalsData = useSelector((state) => state.modals);\r\n const tableBooking = useSelector((state) => state.tableBooking);\r\n const property = useSelector((state) => state.propertyList);\r\n const [token, setToken] = useState(launch.token);\r\n const isTabletOrMobile = useMediaQuery({ query: \"(max-width: 1224px)\" });\r\n const [optionsTelephoneCode, setOptionsTelephoneCode] = useState(\"\");\r\n const [loggedIn, setLoggedIn] = useState(tableBooking.loggedIn);\r\n const [bookingHandlerToggle, setBookingHandlerToggle] = useState(false);\r\n const contactNoRef = useRef(null);\r\n const [modalErrorMessage, setModalErrorMessage] = useState(\"\");\r\n const inputOTP4FocRef = useRef(null);\r\n const inputOTP4Ref = useRef(null);\r\n const [errorMessageOTP, setErrorMessageOTP] = useState(\"\");\r\n const [otpExpiryDuration, setOtpExpiryDuration] = useState(\"\");\r\n const [countDown, setCountDown] = useState(0);\r\n const [modalTitle, setModalTitle] = useState(props.modalTitle);\r\n const [saveToggle, setSaveToggle] = useState(false);\r\n const [ContactNo, setContactNo] = useState(\"\");\r\n const [otpReferenceId, setOtpReferenceId] = useState(\"\");\r\n const [modalContent, setModalContent] = useState(props.modalContent);\r\n const [FirstName, setFirstName] = useState(\"\");\r\n const [LastName, setLastName] = useState(\"\");\r\n const [diffNo, setDiffNo] = useState(false);\r\n const [selectedTelephoneCode, setSelectedTelephoneCode] = useState(\"\");\r\n const [propertyList, setpropertyList] = useState(\r\n property.propertyData.propertyList\r\n );\r\n const [propertyName, setPropertyName] = useState(\"\");\r\n const [propertyId, setPropertyId] = useState(\"\");\r\n const [outletCode, setOutletCode] = useState(\r\n tableBooking.selectedOutlet.outletCode\r\n );\r\n const [outletName, setOutletName] = useState(\"\");\r\n const [imageUrl, setImageUrl] = useState(\"\");\r\n const [outletList, setOutletList] = useState(\"\");\r\n const selectRestaRef = useRef(false);\r\n const [customStyles, setCustomStyles] = useState({\r\n content: {\r\n top: \"40%\",\r\n left: \"50%\",\r\n right: \"auto\",\r\n bottom: \"auto\",\r\n marginRight: \"-50%\",\r\n transform: \"translate(-50%, -50%)\",\r\n maxHeight: \"90%\",\r\n //overflowY:'scroll',\r\n maxWidth: \"80%\",\r\n minWidth: \"30%\",\r\n borderRadius: \"10px\",\r\n backgroundColor: \"#FFFFFF\",\r\n },\r\n });\r\n const [modalIsOpenLink, setIsOpenLink] = useState(false);\r\n const [bodyStyle, setBodyStyle] = useState(\"\");\r\n\r\n function openModalLink() {\r\n setIsOpenLink(true);\r\n }\r\n\r\n function afterOpenModal() {\r\n // references are now sync'd and can be accessed.\r\n // subtitle.style.color = '#f00'\r\n }\r\n\r\n function closeModalLink() {\r\n if (\r\n modalTitle !== \"Select a Restaurant\" &&\r\n tableBooking.selectedProperty.outletCode !== \"\"\r\n ) {\r\n setIsOpenLink(false);\r\n dispatch(handleModalTitle(\"\"));\r\n }\r\n\r\n // setModalTitle('')\r\n // this has issues with multiple clicks and closing modal\r\n // if (modalTitle !== 'Select a Location') {\r\n // setTimeout(() => dispatch(handleModalTitle(''),500))\r\n // }\r\n\r\n if (modalTitle === \"Your Booking Success\") setSaveToggle(true);\r\n }\r\n\r\n useEffect(() => {\r\n if (launch.themeSettings.data && launch.themeSettings.data.status === 1) {\r\n const body = launch.themeSettings.data.themeSettings.body;\r\n setBodyStyle(body);\r\n console.log(body);\r\n setCustomStyles(() => {\r\n const temp = {\r\n ...customStyles.content,\r\n backgroundColor: body && body.backgroundColor,\r\n };\r\n return {\r\n content: temp,\r\n };\r\n });\r\n }\r\n }, [launch.themeSettings]);\r\n\r\n useEffect(() => {\r\n setOptionsTelephoneCode(props.optionsTelephoneCode);\r\n }, [props.optionsTelephoneCode]);\r\n\r\n useEffect(() => {\r\n if (launch.outletListData) {\r\n setOutletList(launch.outletListData);\r\n\r\n if (\r\n !outletCode &&\r\n launch.outletListData.outletList &&\r\n launch.outletListData.outletList.length > 1 &&\r\n selectRestaRef.current\r\n ) {\r\n // alert('greater length')\r\n setModalTitle(\"Select a Restaurant\");\r\n }\r\n // else if (!outletCode && launch.outletListData.outletList && launch.outletListData.outletList.length === 1 && selectRestaRef.current) {\r\n // const [outl] = launch.outletListData.outletList\r\n //\r\n // dispatch(handleOutletSelection({outletName:outl.outletName, outletCode:outl.outletCode, imageUrl:outl.imageUrl} ))\r\n // dispatch(getOutletDetails({outletCode:outl.outletCode, tokenOption:launch.outletListData.token}))\r\n //\r\n // }\r\n }\r\n }, [launch.outletListData, outletCode]);\r\n\r\n useEffect(() => {\r\n const bkng = tableBooking.tableData;\r\n console.log(bkng);\r\n // setBookingDate(bkng.bookingDate)\r\n // setNoOfGuest(bkng.NoOfGuest)\r\n // setBookingTime(bkng.BookingTime)\r\n // setSelectedTitle()\r\n setFirstName(bkng.FirstName);\r\n setLastName(bkng.LastName);\r\n // setSelectedTelephoneCode(bkng.selectedTelephoneCode)\r\n setContactNo(bkng.ContactNo);\r\n // setEmailId(bkng.EmailId)\r\n // setInstruction(bkng.Instruction)\r\n setLoggedIn(tableBooking.loggedIn);\r\n }, [tableBooking]);\r\n\r\n useEffect(() => {\r\n if (launch.token) {\r\n setToken(launch.token);\r\n }\r\n }, [launch.token]);\r\n\r\n useEffect(() => {\r\n // redux modal title update\r\n setModalTitle(modalsData.modalTitle);\r\n if (modalsData.otpData) {\r\n // alert(Date.now(Number(modalsData.otpData.otpExpiryDuration)))\r\n setOtpReferenceId(modalsData.otpData.otpReferenceId);\r\n setOtpExpiryDuration(\r\n Number(modalsData.otpData.otpExpiryDuration * 60000)\r\n );\r\n const otpExpiryDurationTemp = Number(\r\n modalsData.otpData.otpExpiryDuration * 60000\r\n );\r\n setCountDown(Date.now() + otpExpiryDurationTemp);\r\n }\r\n\r\n return () => {\r\n setCountDown(0);\r\n setOtpExpiryDuration(0);\r\n };\r\n }, [modalsData.otpData, modalsData.modalTitle]);\r\n\r\n // useEffect(() => {\r\n // if (modalsData.otpData) {\r\n // setOtpReferenceId(modalsData.otpData.otpReferenceId)\r\n // setOtpExpiryDuration(Number(modalsData.otpData.otpExpiryDuration * 60000))\r\n // }\r\n //\r\n // }, [modalsData.otpData])\r\n\r\n // useEffect(() => {\r\n // if (otpExpiryDuration) setCountDown(Date.now() + otpExpiryDuration)\r\n // }, [otpExpiryDuration])\r\n //\r\n useEffect(() => {\r\n if (property.propertyData)\r\n setpropertyList(property.propertyData.propertyList);\r\n }, [property.propertyData]);\r\n\r\n const ErrorModal = (props) => {\r\n return (\r\n
\r\n

{props.message}

\r\n
\r\n );\r\n };\r\n\r\n const otpHandler = (no) => {\r\n console.log(ContactNo);\r\n // GET 'https://dev.lucidits.com/LUCIDAPI/V1/SendOTP?OTPFor=4&MobileNo=9738854149'\r\n if (!loggedIn && (no || contactNoRef.current))\r\n dispatch(\r\n sendOTP({\r\n no,\r\n contactNoRef: contactNoRef.current,\r\n token: launch.outletListData.token,\r\n })\r\n );\r\n };\r\n\r\n const contactHandler = (no) => {\r\n // if (ContactNo.length !== 10) {\r\n if (no.length !== 10) {\r\n // && ContactNo.length !== 10 removed\r\n setModalErrorMessage(\"Kindly Enter Valid Mobile No\");\r\n } else {\r\n if (\r\n (modalTitle === \"Your Contact No\" && !ContactNo) ||\r\n ContactNo !== no\r\n ) {\r\n if (ContactNo !== no) {\r\n dispatch(handleLogin(false));\r\n setContactNo(no);\r\n }\r\n\r\n // dispatch(handleBooking({...tableBooking.tableData, ContactNo:no}))\r\n otpHandler(no);\r\n dispatch(handleModalTitle(\"OTP\"));\r\n } else {\r\n setContactNo(no);\r\n setModalErrorMessage(\"\");\r\n otpHandler(no);\r\n dispatch(handleModalTitle(\"OTP\"));\r\n }\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (modalTitle === \"Select a Restaurant\") {\r\n setModalContent(\"\");\r\n !modalIsOpenLink && openModalLink();\r\n } else if (modalTitle === \"Select a Location\") {\r\n setModalContent(\"\");\r\n !modalIsOpenLink && openModalLink();\r\n } else if (modalTitle === \"Your Contact No\") {\r\n setModalContent(\"\");\r\n // !modalIsOpenLink &&\r\n openModalLink();\r\n } else if (modalTitle === \"OTP\") {\r\n setErrorMessageOTP(\"\");\r\n setModalContent(\"\");\r\n !modalIsOpenLink && openModalLink();\r\n } else if (modalTitle === \"Your Booking Success\") {\r\n setModalContent(\"\");\r\n !modalIsOpenLink && openModalLink();\r\n } else if (modalTitle && modalTitle.length > 5) {\r\n setModalContent();\r\n !modalIsOpenLink && openModalLink();\r\n } else {\r\n closeModalLink();\r\n }\r\n }, [modalTitle]);\r\n\r\n useEffect(() => {\r\n if (props.modalTitle) dispatch(handleModalTitle(props.modalTitle));\r\n }, [props.modalTitle]);\r\n\r\n const PropertyModal = () => {\r\n return (\r\n \r\n {propertyList &&\r\n propertyList.map((prop, id) => {\r\n return (\r\n \r\n {\r\n setPropertyName(prop.propertyName);\r\n setPropertyId(prop.propertyId);\r\n closeModalLink();\r\n // setModalProperty(!modalProperty)\r\n //setModalTitle('Select a Restaurant')\r\n setOutletCode(\"\");\r\n setOutletName(\"\");\r\n selectRestaRef.current = true;\r\n dispatch(handleOutletList(\"\"));\r\n dispatch(handleOutletSelection({}));\r\n dispatch(\r\n handlePropertySelection({\r\n propertyName: prop.propertyName,\r\n propertyId: prop.propertyId,\r\n })\r\n );\r\n // call here outletlist based on property selection\r\n // dispatch(handleOutletSelection({outletName:'', outletCode:'', imageUrl:''}))\r\n\r\n // dispatch(handleOutletList(''))\r\n\r\n dispatch(\r\n getOutletList({\r\n propertyId: prop.propertyId,\r\n token: launch.token,\r\n })\r\n );\r\n }}\r\n >\r\n {prop.propertyName}\r\n \r\n \r\n );\r\n })}\r\n \r\n );\r\n };\r\n\r\n const SelectRestaurant = () => {\r\n return (\r\n \r\n \r\n {launch.outletListData.outletList &&\r\n launch.outletListData.outletList.map((outlet, id) => {\r\n return (\r\n \r\n {\r\n setOutletName(outlet.outletName);\r\n setOutletCode(outlet.outletCode);\r\n setImageUrl(outlet.imageUrl);\r\n closeModalLink();\r\n setModalTitle(\"\");\r\n dispatch(\r\n handleOutletSelection({\r\n outletName: outlet.outletName,\r\n outletCode: outlet.outletCode,\r\n imageUrl: outlet.imageUrl,\r\n })\r\n );\r\n dispatch(\r\n getOutletDetails({\r\n outletCode: outlet.outletCode,\r\n tokenOption: launch.outletListData.token,\r\n })\r\n );\r\n }}\r\n >\r\n {outlet.outletName}\r\n \r\n \r\n );\r\n })}\r\n \r\n
\r\n
\r\n );\r\n };\r\n\r\n const LoginModalContent = () => {\r\n return (\r\n
\r\n \r\n {\r\n setSelectedTelephoneCode(\r\n optionsTelephoneCode.filter(\r\n (item) => item.label === e.target.value\r\n )\r\n );\r\n }}\r\n >\r\n {optionsTelephoneCode &&\r\n optionsTelephoneCode.map((field) => {\r\n return ;\r\n })}\r\n \r\n {\r\n contactNoRef.current = e.target.value;\r\n if (modalErrorMessage) setModalErrorMessage(\"\");\r\n //setContactNo(e.target.value)\r\n }}\r\n />\r\n \r\n
\r\n );\r\n };\r\n const renderer = ({ minutes, seconds }) => {\r\n return (\r\n \r\n {minutes}:{seconds}\r\n \r\n );\r\n };\r\n\r\n const OTPModalContent = () => {\r\n return (\r\n \r\n
\r\n {\r\n inputOTP4Ref.current = e.target.value;\r\n if (errorMessageOTP) setErrorMessageOTP(\"\");\r\n }}\r\n />\r\n
\r\n\r\n {errorMessageOTP.length > 0 && (\r\n

{errorMessageOTP}

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

\r\n \r\n Resend OTP after{\" \"}\r\n {otpExpiryDuration && (\r\n \r\n )}{\" \"}\r\n \r\n

\r\n
\r\n
\r\n );\r\n };\r\n\r\n const SaveModal = () => {\r\n return (\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

\r\n Your Booking is Success\r\n

\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n

\r\n {tableBooking.selectedOutlet.outletName}\r\n

\r\n

\r\n {tableBooking.selectedProperty.propertyName}\r\n

\r\n

\r\n Date :{\" \"}\r\n {dateFormat(tableBooking.tableData.bookingDate, \"dd-mm-yyyy\")}\r\n

\r\n

\r\n Time : {tableBooking.tableData.BookingTime}\r\n

\r\n

\r\n Guests : {tableBooking.tableData.NoOfGuest}\r\n

\r\n

\r\n {\" \"}\r\n Booking Status: Waiting{\" \"}\r\n

\r\n

\r\n [Restaurant will update your booking status soon]\r\n

\r\n
\r\n \r\n
\r\n
\r\n );\r\n };\r\n const otpValidateHandler = () => {\r\n const tokenOption = outletList.token || token;\r\n\r\n axios\r\n .post(\r\n `${process.env.REACT_APP_BASE_API_URL}LUCIDAPI/V1/ValidateOTP`,\r\n {\r\n OTPReferenceId: otpReferenceId,\r\n OTP: inputOTP4Ref.current,\r\n },\r\n {\r\n headers: { Authorization: `Bearer ${tokenOption}` },\r\n }\r\n )\r\n .then((res) => {\r\n if (res.data.errorCode === 0) {\r\n setErrorMessageOTP(\"\");\r\n dispatch(handleLogin(true));\r\n dispatch(handleBooking({ ...tableBooking.tableData, ContactNo }));\r\n //bookingHandlerToggle &&\r\n dispatch(handleModalTitle(\"Login Success\"));\r\n // props.setBookingHandlerToggle(true)\r\n !bookingHandlerToggle &&\r\n setTimeout(() => {\r\n closeModalLink();\r\n }, 500);\r\n //if (modalOpened) setModalOpened(!modalOpened)\r\n // setModalOTP(false)\r\n localStorage.setItem(\r\n \"contactDetails\",\r\n JSON.stringify({\r\n contactNo: ContactNo,\r\n firstName: FirstName,\r\n lastName: LastName,\r\n loggedIn: true,\r\n })\r\n );\r\n if (diffNo) setBookingHandlerToggle(true);\r\n document.body.style.overflow = \"visible\";\r\n }\r\n if (res.data.errorCode === 1) {\r\n setErrorMessageOTP(\"Invalid OTP\");\r\n }\r\n });\r\n };\r\n\r\n const RenderModal = () => {\r\n return (\r\n
\r\n \r\n \r\n {modalTitle !== \"Your Booking Success\" && modalTitle}\r\n
\r\n
\r\n {modalContent}\r\n {modalTitle === \"OTP\" && }\r\n {modalTitle === \"Your Contact No\" && }\r\n {modalTitle === \"Your Booking Success\" && }\r\n {modalTitle === \"Select a Location\" && }\r\n {modalTitle === \"Select a Restaurant\" &&\r\n launch.outletListData.outletList && }\r\n
\r\n {modalErrorMessage.length > 0 && (\r\n
\r\n

\r\n {modalErrorMessage}{\" \"}\r\n

\r\n
\r\n )}\r\n {modalErrorMessage.length === 0 && (\r\n
\r\n

\r\n {modalErrorMessage}{\" \"}\r\n

\r\n
\r\n )}\r\n
\r\n {modalTitle === \"Your Contact No\" && (\r\n {\r\n contactNoRef.current\r\n ? contactHandler(contactNoRef.current)\r\n : contactHandler(ContactNo);\r\n }}\r\n >\r\n {\" \"}\r\n Continue\r\n \r\n )}\r\n\r\n {modalTitle === \"OTP\" && (\r\n {\r\n otpValidateHandler();\r\n }}\r\n >\r\n Login\r\n \r\n )}\r\n
\r\n \r\n \r\n );\r\n };\r\n\r\n return ;\r\n};\r\n\r\nexport default ModalsComponent;\r\n","import React, { useEffect, useRef, useState } from \"react\";\r\nimport { CardHeader } from \"reactstrap\";\r\nimport { useMediaQuery } from \"react-responsive\";\r\n\r\n// custome hooks\r\nimport useBooking from \"../../Hooks/useBooking\";\r\n\r\nimport { Edit, Image } from \"react-feather\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { Fragment } from \"react\";\r\nimport ModalsComponent from \"../../view/TableBooking/Modals/ModalsComponent\";\r\nimport { handleModalTitle } from \"../../redux/modals\";\r\nimport {\r\n handleLogin,\r\n handleOutletSelection,\r\n handlePropertySelection,\r\n} from \"../../redux/tableBooking\";\r\nimport { getPropertyList, handleProperty } from \"../../redux/propertyData\";\r\nimport {\r\n getOutletDetails,\r\n getOutletList,\r\n handleOutletList,\r\n} from \"../../redux/launch\";\r\n\r\nconst Header = (props) => {\r\n const tableBooking = useSelector((state) => state.tableBooking);\r\n const [loggedIn, setLoggedIn] = useState(tableBooking.loggedIn);\r\n const property = useSelector((state) => state.propertyList);\r\n const modalsData = useSelector((state) => state.modals);\r\n const dispatch = useDispatch();\r\n const launchData = useSelector((state) => state.launch);\r\n const [token, setToken] = useState(launchData.token);\r\n const isTabletOrMobile = useMediaQuery({ query: \"(max-width: 1224px)\" });\r\n const [propertyId, setPropertyId] = useState(launchData.paramData.propertyId);\r\n const [propertyName, setPropertyName] = useState(\"\"); //searchParams.get(\"propname\") wrong prop name from jay's api\r\n const [outletCode, setOutletCode] = useState(launchData.paramData.outletCode);\r\n const [outletName, setOutletName] = useState(\"\");\r\n const [imageUrl, setImageUrl] = useState(\"\");\r\n const [outletCount, setOutletCount] = useState(0);\r\n const [propertyCount, setPropertyCount] = useState(0);\r\n const [outletDetails, setOutletDetails] = useState(\r\n launchData.outletDetails.outletDetails\r\n );\r\n //const [modalTitle, setModalTitle] = useState() used Redux to pass modal Title\r\n const outletListRef = useRef(true);\r\n const outletDetailsRef = useRef(false);\r\n // header style\r\n const [headerStyle, setHeaderStyle] = useState({\r\n backgroundColor: \"#EAEAEA\",\r\n zIndex: \"5\",\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n height: \"55px\",\r\n backgroundImage: [],\r\n });\r\n\r\n const [hideLogo, setHideLogo] = useState(\"visible\");\r\n const [propertyNameFontSettings, setPropertyNameFontSettings] = useState({\r\n color: \"black\",\r\n });\r\n\r\n const [outletNameFontSettings, setOutletNameFontSettings] = useState({\r\n color: \"black\",\r\n });\r\n\r\n const [changeIconStyle, setchangeIconStyle] = useState({\r\n color: \"#2ECC71\",\r\n textDecoration: \"none\",\r\n padding: \"1px\",\r\n });\r\n\r\n const [loginStyle, setLoginStyle] = useState({\r\n color: \"black\",\r\n display: \"inline\",\r\n cursor: \"pointer\",\r\n textDecorationLine: \"underline\",\r\n });\r\n\r\n // logo div\r\n const [logoStyle, setLogoStyle] = useState({\r\n display: \"flex\",\r\n justifyContent: \"left\",\r\n });\r\n //logo image style\r\n const [logoImageStyle, setLogoImageStyle] = useState({\r\n height: \"50px\",\r\n width: \"100px\",\r\n });\r\n //property and outlet alignment\r\n const [logoPropertyAlign, setLogoPropertyAlign] = useState({\r\n display: \"flex\",\r\n flexDirection: \"row\",\r\n });\r\n\r\n const [loginPosition] = useState({\r\n display: \"flex\",\r\n justifyContent: \"right\",\r\n paddingTop: \"5px\",\r\n marginBottom: \"-40px\",\r\n marginTop: \"auto\",\r\n });\r\n\r\n useEffect(() => {\r\n if (\r\n launchData.themeSettings.data &&\r\n launchData.themeSettings.data.status === 1\r\n ) {\r\n const header = launchData.themeSettings.data.themeSettings.header;\r\n console.log(launchData.themeSettings.data.themeSettings);\r\n\r\n setHeaderStyle((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: header.backgroundColor\r\n ? `${header.backgroundColor}`\r\n : prev.backgroundColor,\r\n height: `${launchData.themeSettings.data.themeSettings.header.height}px`,\r\n backgroundImage: `url(${header.backgroundImages[0]})`,\r\n backgroundRepeat: \"no-repeat\",\r\n backgroundSize: \"cover\",\r\n };\r\n });\r\n setHideLogo(\r\n launchData.themeSettings.data &&\r\n launchData.themeSettings.data.themeSettings.header.hideLogo === \"true\"\r\n ? \"none\"\r\n : \"visible\"\r\n );\r\n\r\n setLogoPropertyAlign((prev) => {\r\n return {\r\n ...prev,\r\n flexDirection:\r\n header.logoPosition === \"right\" ? \"row-reverse\" : \"row\",\r\n };\r\n });\r\n\r\n setPropertyNameFontSettings((prev) => {\r\n return {\r\n ...prev,\r\n color: `${header.propertyNameFontSettings.color}`,\r\n fontFamily: `${header.propertyNameFontSettings.fontFamily}`,\r\n fontSize: `${header.propertyNameFontSettings.size}`,\r\n fontWeight:\r\n header.propertyNameFontSettings.bold === \"true\" ? \"bold\" : \"normal\",\r\n fontStyle:\r\n header.propertyNameFontSettings.italic == \"true\"\r\n ? \"italic\"\r\n : \"normal\",\r\n };\r\n });\r\n\r\n setOutletNameFontSettings((prev) => {\r\n return {\r\n ...prev,\r\n color: `${header.outletNameFontSettings.color}`,\r\n fontFamily: `${header.outletNameFontSettings.fontFamily}`,\r\n fontSize: `${header.outletNameFontSettings.size}`,\r\n fontWeight:\r\n header.outletNameFontSettings.bold === \"true\" ? \"bold\" : \"normal\",\r\n fontStyle:\r\n header.outletNameFontSettings.italic === \"true\"\r\n ? \"italic\"\r\n : \"normal\",\r\n };\r\n });\r\n console.log(header.changeIconColor);\r\n setchangeIconStyle((prev) => {\r\n return {\r\n ...prev,\r\n color: header.changeIconColor\r\n ? `${header.changeIconColor}`\r\n : prev.changeIconColor,\r\n };\r\n });\r\n setLogoStyle((prev) => {\r\n return {\r\n ...prev,\r\n justifyContent: header.logoPosition\r\n ? `${header.logoPosition}`\r\n : prev.changeIconColor,\r\n flexDirection: header.logoPosition === \"right\" ? \"row-reverse\" : \"\",\r\n };\r\n });\r\n setLogoImageStyle((prev) => {\r\n return {\r\n ...prev,\r\n width: header.logoSize.width\r\n ? `${header.logoSize.width}`\r\n : prev.width,\r\n height: header.logoSize.height\r\n ? `${header.logoSize.height}`\r\n : prev.height,\r\n };\r\n });\r\n setLoginStyle((prev) => {\r\n return {\r\n ...prev,\r\n color: header.logInLogOutFontSettings.color\r\n ? `${header.logInLogOutFontSettings.color}`\r\n : prev.color,\r\n fontFamily: `${header.logInLogOutFontSettings.fontFamily}`,\r\n fontSize: `${header.logInLogOutFontSettings.size}`,\r\n fontWeight:\r\n header.logInLogOutFontSettings.bold === \"true\" ? \"bold\" : \"normal\",\r\n fontStyle:\r\n header.logInLogOutFontSettings.italic == \"true\"\r\n ? \"italic\"\r\n : \"normal\",\r\n };\r\n });\r\n } else if (launchData.themeSettingsDefault) {\r\n const header = launchData.themeSettingsDefault.data.themeSettings.header;\r\n console.log(launchData.themeSettingsDefault);\r\n setHeaderStyle({\r\n backgroundColor: \"#EAEAEA\",\r\n zIndex: \"5\",\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n height: \"75px\",\r\n backgroundImage: [],\r\n });\r\n setHideLogo(header && header.hideLogo === \"true\" ? \"none\" : \"visible\");\r\n\r\n setLogoPropertyAlign((prev) => {\r\n return {\r\n ...prev,\r\n flexDirection:\r\n header.logoPosition === \"right\" ? \"row-reverse\" : \"row\",\r\n };\r\n });\r\n\r\n setPropertyNameFontSettings((prev) => {\r\n return {\r\n ...prev,\r\n color: `${header.propertyNameFontSettings.color}`,\r\n fontFamily: `${header.propertyNameFontSettings.fontFamily}`,\r\n fontSize: `${header.propertyNameFontSettings.size}`,\r\n fontWeight:\r\n header.propertyNameFontSettings.bold === \"true\" ? \"bold\" : \"normal\",\r\n fontStyle:\r\n header.propertyNameFontSettings.italic == \"true\"\r\n ? \"italic\"\r\n : \"normal\",\r\n };\r\n });\r\n\r\n setOutletNameFontSettings((prev) => {\r\n return {\r\n ...prev,\r\n color: `${header.outletNameFontSettings.color}`,\r\n fontFamily: `${header.outletNameFontSettings.fontFamily}`,\r\n fontSize: `${header.outletNameFontSettings.size}`,\r\n fontWeight:\r\n header.outletNameFontSettings.bold === \"true\" ? \"bold\" : \"normal\",\r\n fontStyle:\r\n header.outletNameFontSettings.italic === \"true\"\r\n ? \"italic\"\r\n : \"normal\",\r\n };\r\n });\r\n console.log(header.changeIconColor);\r\n setchangeIconStyle((prev) => {\r\n return {\r\n ...prev,\r\n color: header.changeIconColor\r\n ? `${header.changeIconColor}`\r\n : prev.changeIconColor,\r\n };\r\n });\r\n setLogoStyle((prev) => {\r\n return {\r\n ...prev,\r\n justifyContent: header.logoPosition\r\n ? `${header.logoPosition}`\r\n : prev.changeIconColor,\r\n flexDirection: header.logoPosition === \"right\" ? \"row-reverse\" : \"\",\r\n };\r\n });\r\n setLogoImageStyle((prev) => {\r\n return {\r\n ...prev,\r\n width: header.logoSize.width\r\n ? `${header.logoSize.width}`\r\n : prev.width,\r\n height: header.logoSize.height\r\n ? `${header.logoSize.height}`\r\n : prev.height,\r\n };\r\n });\r\n setLoginStyle((prev) => {\r\n return {\r\n ...prev,\r\n color: header.logInLogOutFontSettings.color\r\n ? `${header.logInLogOutFontSettings.color}`\r\n : prev.color,\r\n fontFamily: `${header.logInLogOutFontSettings.fontFamily}`,\r\n fontSize: `${header.logInLogOutFontSettings.size}`,\r\n fontWeight:\r\n header.logInLogOutFontSettings.bold === \"true\" ? \"bold\" : \"normal\",\r\n fontStyle:\r\n header.logInLogOutFontSettings.italic == \"true\"\r\n ? \"italic\"\r\n : \"normal\",\r\n };\r\n });\r\n }\r\n }, [launchData.themeSettings]);\r\n\r\n useEffect(() => {\r\n if (launchData.outletDetails.outletDetails) {\r\n setOutletDetails(launchData.outletDetails.outletDetails);\r\n if (launchData.outletDetails.outletDetails.length > 0)\r\n outletDetailsRef.current = false;\r\n }\r\n // if (launchData.paramData) {\r\n // closeModalLink()\r\n // if (launchData.paramData.propertyName !== 'NONE' && propertyName !== \"\" && propertyName !== \"NONE\") {\r\n // setPropertyName(launchData.paramData.propertyName)\r\n //\r\n // }\r\n // if (launchData.paramData.propertyId !== 'NONE' && propertyId !== \"\" && propertyId !== \"NONE\") {\r\n //\r\n // setPropertyId( launchData.paramData.propertyId)\r\n // }\r\n // if (launchData.paramData.outletName !== 'NONE' && outletName !== \"\" && outletName !== \"NONE\") {\r\n // setOutletName(launchData.paramData.outletName)\r\n //\r\n // }\r\n\r\n // }\r\n if (launchData.token) {\r\n setToken(launchData.token);\r\n }\r\n console.log(logoImageStyle);\r\n }, [launchData.outletDetails, launchData.token, launchData.outletData]);\r\n\r\n useEffect(() => {\r\n if (\r\n launchData.paramData.outletCode !== \"NONE\" &&\r\n launchData.outletListData.outletList\r\n ) {\r\n setOutletCode(launchData.paramData.outletCode);\r\n // console.log(launchData.outletListData.outletList, launchData.paramData.outletCode )\r\n if (\r\n launchData.outletListData.outletList.length > 0 &&\r\n !outletCode &&\r\n !tableBooking.selectedOutlet.outletCode\r\n ) {\r\n // outleCode is mentioned to avoid running it when reset tablebooking\r\n const [defaultOutletObj] = launchData.outletListData.outletList.filter(\r\n (item) => item.outletCode === launchData.paramData.outletCode\r\n );\r\n // alert(tableBooking.selectedOutlet.outletName)\r\n defaultOutletObj &&\r\n dispatch(\r\n handleOutletSelection({\r\n outletName: defaultOutletObj.outletName,\r\n outletCode: defaultOutletObj.outletCode,\r\n imageUrl: defaultOutletObj.imageUrl,\r\n })\r\n );\r\n } else if (\r\n launchData.outletListData.outletList.length > 0 &&\r\n outletCode &&\r\n !tableBooking.selectedOutlet.outletCode\r\n ) {\r\n const [defaultOutletObj] = launchData.outletListData.outletList.filter(\r\n (item) => item.outletCode === launchData.paramData.outletCode\r\n );\r\n // alert(tableBooking.selectedOutlet.outletName)\r\n defaultOutletObj &&\r\n dispatch(\r\n handleOutletSelection({\r\n outletName: defaultOutletObj.outletName,\r\n outletCode: defaultOutletObj.outletCode,\r\n imageUrl: defaultOutletObj.imageUrl,\r\n })\r\n );\r\n }\r\n }\r\n }, [\r\n launchData.paramData.outletCode,\r\n launchData.outletListData.outletList,\r\n modalsData.modalTitle,\r\n ]);\r\n\r\n useEffect(() => {\r\n if (tableBooking) setLoggedIn(tableBooking.loggedIn);\r\n\r\n if (tableBooking.selectedProperty) {\r\n const sel = tableBooking.selectedProperty;\r\n // console.log(sel.propertyId)\r\n setPropertyName(sel.propertyName);\r\n setPropertyId(sel.propertyId);\r\n\r\n // if (!launchData.outletListData.outletList) outletListRef.current = true // updated while coming back from view page , call outletlist post property update\r\n // isopenBL can be true while visiting back from view\r\n }\r\n\r\n // tableBooking.selectedOutlet === '' for reset while selecting new property\r\n if (tableBooking.selectedOutlet.outletCode !== \"NONE\") {\r\n const sel = tableBooking.selectedOutlet;\r\n // once outleCode is updated enable outletdetails ref\r\n if (sel.outletCode !== \"NONE\" || outletCode === \"\") {\r\n // setOutletCode(sel.outletCode)\r\n setOutletName(sel.outletName);\r\n setImageUrl(sel.imageUrl);\r\n // if (sel.outletCode !== outletCode) {\r\n // if (tableBooking.selectedOutlet.outletCode && tableBooking.selectedOutlet.outletCode !== 'NONE' && launchData.outletListData.token && outletDetailsRef.current) {\r\n //\r\n // outletDetailsRef.current = false\r\n // dispatch(getOutletDetails({outletCode:tableBooking.selectedOutlet.outletCode, tokenOption:launchData.outletListData.token}))\r\n //\r\n // }\r\n // console.log(outletDetailsRef.current, outletCode, sel.outletCode)\r\n //\r\n // }\r\n if (\r\n sel.outletCode &&\r\n sel.outletCode !== \"NONE\" &&\r\n outletCode === \"\" &&\r\n outletDetailsRef.current &&\r\n launchData.outletListData.token\r\n ) {\r\n outletDetailsRef.current = false;\r\n dispatch(\r\n getOutletDetails({\r\n outletCode: tableBooking.selectedOutlet.outletCode,\r\n tokenOption: launchData.outletListData.token,\r\n })\r\n );\r\n }\r\n if (\r\n sel.outletCode === outletCode &&\r\n launchData.outletDetails.outletDetails &&\r\n launchData.outletDetails.outletDetails.length === 0\r\n ) {\r\n outletDetailsRef.current = false;\r\n }\r\n }\r\n }\r\n\r\n // console.log(tableBooking)\r\n\r\n // if (!tableBooking.selectedOutlet.outletCode) {\r\n\r\n //}\r\n }, [\r\n tableBooking.selectedOutlet,\r\n tableBooking.selectedProperty,\r\n tableBooking.loggedIn,\r\n launchData.outletListData.token,\r\n ]);\r\n\r\n // for resetting while changing outleCode\r\n // Note : for different properties same outletCodes are repeated eg: Property 00002 - {\"outletCode\":\"HAMR\",\"outletName\":\"Hammered Dinein\"} ,\r\n // Property 000001 - {\"outletCode\":\"HAMR\",\"outletName\":\"HSR Dinein\",}\r\n\r\n useEffect(() => {\r\n // for updating outlet details post outlet selection\r\n // if (tableBooking.selectedOutlet.outletCode && tableBooking.selectedOutlet.outletCode !== 'NONE' && launchData.outletListData.token && outletDetailsRef.current) {\r\n // outletDetailsRef.current = false\r\n // dispatch(getOutletDetails({outletCode:tableBooking.selectedOutlet.outletCode, tokenOption:launchData.outletListData.token}))\r\n //\r\n // }\r\n // return () => outletDetailsRef.current = false\r\n }, [tableBooking.selectedOutlet.outletCode, launchData.outletListData.token]);\r\n\r\n useEffect(() => {\r\n if (tableBooking.isOpenBL && !outletListRef.current) {\r\n // outletListRef.current = true , getOutletList only while coming back from view\r\n dispatch(\r\n getOutletList({\r\n propertyId: tableBooking.selectedProperty.propertyId,\r\n token: launchData.token,\r\n })\r\n );\r\n outletDetailsRef.current = true;\r\n }\r\n }, [tableBooking.isOpenBL]);\r\n\r\n useEffect(() => {\r\n if (property.propertyData.propertyList) {\r\n // console.log(tableBooking.selectedProperty.propertyId, launchData.token, outletListRef.current)\r\n const pr = property.propertyData.propertyList;\r\n setPropertyCount(pr.length);\r\n // dispatch(handleOutletList(''))\r\n // dispatch(handleOutletSelection({}))\r\n // whenever page refresh happening outlet was not called, since outletcodes cane be similar, propertyId change can be used\r\n if (\r\n tableBooking.selectedProperty.propertyId &&\r\n launchData.token &&\r\n outletListRef.current\r\n ) {\r\n outletListRef.current = false;\r\n\r\n if (!tableBooking.isOpenBL) {\r\n // alert(tableBooking.isOpenBL)\r\n dispatch(\r\n getOutletList({\r\n propertyId: tableBooking.selectedProperty.propertyId,\r\n token: launchData.token,\r\n })\r\n );\r\n outletDetailsRef.current = true;\r\n }\r\n } else if (!tableBooking.selectedProperty.propertyId) {\r\n if (\r\n (launchData.paramData.outletCode === \"NONE\" ||\r\n !launchData.paramData.outletCode ||\r\n !outletCode ||\r\n outletCode === \"NONE\") &&\r\n launchData.token\r\n ) {\r\n if (\r\n launchData.paramData.propertyId &&\r\n tableBooking.selectedProperty.propertyId === \"\"\r\n ) {\r\n dispatch(\r\n getOutletList({\r\n propertyId: launchData.paramData.propertyId,\r\n token: launchData.token,\r\n })\r\n );\r\n outletListRef.current = false;\r\n outletDetailsRef.current = true;\r\n }\r\n }\r\n if (\r\n property.propertyData.propertyList.length === 1 &&\r\n token &&\r\n outletListRef.current\r\n ) {\r\n const [propertyObj] = property.propertyData.propertyList;\r\n dispatch(\r\n handlePropertySelection({\r\n propertyName: propertyObj.propertyName,\r\n propertyId: propertyObj.propertyId,\r\n })\r\n );\r\n\r\n if (token) {\r\n dispatch(\r\n getOutletList({ propertyId: propertyObj.propertyId, token })\r\n );\r\n outletListRef.current = false;\r\n outletDetailsRef.current = true;\r\n }\r\n } else if (property.propertyData.propertyList.length > 1) {\r\n if (!propertyId || propertyId === \"NONE\") {\r\n dispatch(handleModalTitle(\"Select a Location\"));\r\n outletDetailsRef.current = true;\r\n } else if (propertyId) {\r\n // console.log(property.propertyData.propertyList)\r\n const [propertyObj] = property.propertyData.propertyList.filter(\r\n (item) => item.propertyId === propertyId\r\n );\r\n // console.log(propertyObj)\r\n propertyObj &&\r\n dispatch(\r\n handlePropertySelection({\r\n propertyName: propertyObj.propertyName,\r\n propertyId: propertyObj.propertyId,\r\n })\r\n );\r\n if (token && propertyObj) {\r\n dispatch(\r\n getOutletList({ propertyId: propertyObj.propertyId, token })\r\n );\r\n outletListRef.current = false;\r\n outletDetailsRef.current = true;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }, [\r\n property.propertyData.propertyList,\r\n launchData.token,\r\n tableBooking.selectedProperty.propertyId,\r\n ]);\r\n\r\n // useEffect(() => {\r\n // if ((!propertyId || propertyId === \"NONE\") && (propertyList && propertyList.propertyList.length === 1)) {\r\n // const propertyNames = propertyList.propertyList.map(item => item.propertyName).filter(property => property)\r\n // const propertyIds = propertyList.propertyList.map(item => item.propertyId).filter(property => property)\r\n // // setPropertyId(propertyIds[0])\r\n // setPropertyName(propertyNames[0])\r\n // document.title = propertyNames[0] + '- Table Booking'\r\n //\r\n // } else if ((propertyId === \"NONE\" || !propertyId) && (propertyList && propertyList.propertyList.length > 1))\r\n // {\r\n // // setModalTitle(\"Select a Location\")\r\n //\r\n // }\r\n // if (propertyName === '' && (propertyId !== 'NONE' && propertyId) && propertyList && propertyList.propertyList.length ) {\r\n //\r\n // propertyList.propertyList.forEach(item => {\r\n // if (propertyId === item.propertyId) setPropertyName(item.propertyName)\r\n //\r\n // })\r\n // }\r\n\r\n //if (propertyList && PropertyId) {\r\n // const area = propertyList.propertyList.filter(item => item.propertyId === PropertyId)\r\n // setAreaName(area.areaName)\r\n // setCityName(area.cityName)\r\n //}\r\n // if (propertyList) setPropertyCount(propertyList.propertyList.length)\r\n // }, [propertyList])\r\n\r\n useEffect(() => {\r\n // console.log(modalsData)\r\n if (launchData.outletListData.outletList) {\r\n console.log(launchData.outletListData.outletList);\r\n setOutletCount(launchData.outletListData.outletList.length);\r\n\r\n if (\r\n !tableBooking.selectedOutlet.outletCode ||\r\n tableBooking.selectedOutlet.outletCode === \"\" ||\r\n tableBooking.selectedOutlet.outletCode === \"NONE\"\r\n ) {\r\n console.log(launchData.outletListData.outletList.length);\r\n\r\n if (launchData.outletListData.outletList.length === 1) {\r\n const [outl] = launchData.outletListData.outletList;\r\n dispatch(handleModalTitle(\"\"));\r\n setImageUrl(\"\");\r\n setOutletName(\"\");\r\n // setOutletCode('')\r\n dispatch(\r\n handleOutletSelection({\r\n outletName: outl.outletName,\r\n outletCode: outl.outletCode,\r\n imageUrl: outl.imageUrl,\r\n })\r\n );\r\n dispatch(\r\n getOutletDetails({\r\n outletCode: outl.outletCode,\r\n tokenOption: launchData.outletListData.token,\r\n })\r\n );\r\n // outletDetailsRef.current = true\r\n } else if (launchData.outletListData.outletList.length > 1) {\r\n // else if (launchData.paramData.outletCode && launchData.outletListData.outletList && launchData.outletListData.outletList.length > 0){\r\n // const [defaultOutletObj] = launchData.outletListData.outletList.filter(item => item.outletCode === launchData.paramData.outletCode)\r\n // alert(tableBooking.selectedOutlet.outletName)\r\n // defaultOutletObj && dispatch(handleOutletSelection({outletName:defaultOutletObj.outletName, outletCode:defaultOutletObj.outletCode, imageUrl:defaultOutletObj.imageUrl}))\r\n // }\r\n if (\r\n !launchData.paramData.outletCode ||\r\n !outletCode ||\r\n outletCode === \"NONE\"\r\n ) {\r\n dispatch(handleOutletSelection({}));\r\n dispatch(handleModalTitle(\"Select a Restaurant\"));\r\n }\r\n\r\n if (modalsData.modalTitle === \"Select a Location\") {\r\n setImageUrl(\"\");\r\n setOutletName(\"\");\r\n // setOutletCode('')\r\n dispatch(handleOutletSelection({}));\r\n dispatch(handleModalTitle(\"Select a Restaurant\"));\r\n // if (outletCode === 'NONE' || !outletCode || tableBooking.selectedOutlet.outletCode === '' || outletCode === '')\r\n }\r\n //else if (launchData.paramData.outletCode === 'NONE' || !launchData.paramData.outletCode || tableBooking.selectedOutlet.outletCode === '' || outletCode === '') {\r\n //\r\n // dispatch(handleModalTitle('Select a Restaurant'))\r\n\r\n // } else if (launchData.paramData.outletCode && modalsData.modalTitle !== 'Select a Restaurant') {\r\n // const [defaultOutletObj] = launchData.outletListData.outletList.filter(item => item.outletCode === launchData.paramData.outletCode)\r\n // alert(tableBooking.selectedOutlet.outletName)\r\n // dispatch(handleOutletSelection({outletName:defaultOutletObj.outletName, outletCode:defaultOutletObj.outletCode, imageUrl:defaultOutletObj.imageUrl}))\r\n // }\r\n //else {\r\n // dispatch(handleOutletSelection({outletName:outletName, outletCode:outletCode, imageUrl:imageUrl}))\r\n }\r\n } else if (\r\n tableBooking.selectedOutlet.outletCode &&\r\n outletDetailsRef.current\r\n ) {\r\n outletDetailsRef.current = false;\r\n dispatch(\r\n getOutletDetails({\r\n outletCode: tableBooking.selectedOutlet.outletCode,\r\n tokenOption: launchData.outletListData.token,\r\n })\r\n );\r\n // const [defaultOutletObj] = launchData.outletListData.outletList.filter(item => item.outletCode === tableBooking.selectedOutlet.outletCode)\r\n\r\n // dispatch(handleOutletSelection({outletName:defaultOutletObj.outletName, outletCode:defaultOutletObj.outletCode, imageUrl:defaultOutletObj.imageUrl}))\r\n }\r\n }\r\n // }\r\n }, [\r\n launchData.outletListData.outletList,\r\n tableBooking.selectedOutlet.outletCode,\r\n modalsData.modalTitle,\r\n launchData.outletListData.token,\r\n ]);\r\n\r\n // useEffect(() => {\r\n // if (outletDetails && outletDetails.imageUrl) {\r\n // // setOutletCount(outletList.outletList.length)\r\n // const imgurl = outletDetails.imageUrl\r\n // // closeModalLink()\r\n // setImageUrl(imgurl)\r\n // }\r\n //\r\n // }, [outletDetails])\r\n\r\n useEffect(() => {\r\n const favicon = document.getElementById(\"favicon\");\r\n if (imageUrl) favicon.href = imageUrl;\r\n }, [imageUrl]);\r\n\r\n return (\r\n \r\n \r\n {\r\n // Left Side Logout\r\n }\r\n
\r\n
\r\n {imageUrl && (\r\n \r\n )}\r\n \r\n \r\n {tableBooking.selectedOutlet.outletName}\r\n {outletCount > 1 && (\r\n {\r\n dispatch(getOutletList({ propertyId, token }));\r\n dispatch(handleModalTitle(\"Select a Restaurant\"));\r\n //setModalOutlet(!modalOutlet)\r\n // setModalTitle()\r\n }}\r\n style={changeIconStyle}\r\n >\r\n {\" \"}\r\n \r\n \r\n )}{\" \"}\r\n \r\n \r\n {propertyName}\r\n\r\n {propertyCount > 1 && (\r\n {\r\n // dispatch(handlePropertySelection({}))\r\n // dispatch(handleOutletList(''))\r\n\r\n // dispatch(getPropertyList(token))\r\n // setModalProperty(!modalProperty)\r\n dispatch(handleModalTitle(\"Select a Location\"));\r\n }}\r\n style={changeIconStyle}\r\n >\r\n {\" \"}\r\n \r\n \r\n )}\r\n \r\n
\r\n {\r\n // Right Side Logout\r\n }\r\n
\r\n \r\n
\r\n \r\n {loggedIn ? (\r\n {\r\n localStorage.clear();\r\n sessionStorage.clear();\r\n dispatch(handleLogin(false));\r\n }}\r\n >\r\n Logout\r\n

\r\n ) : (\r\n {\r\n dispatch(handleModalTitle(\"Your Contact No\"));\r\n // clearOTPInput()\r\n }}\r\n >\r\n Login\r\n

\r\n )}\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n );\r\n};\r\n\r\nexport default Header;\r\n","import React from \"react\";\r\nimport { useState } from \"react\";\r\nimport { Card } from \"reactstrap\";\r\nimport Footer from \"./Footer\";\r\nimport Header from \"./Header\";\r\n\r\nconst Layout = (props) => {\r\n const [modalTitle, setModalTitle] = useState();\r\n\r\n return (\r\n \r\n {\r\n //
\r\n }\r\n {props.children}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default Layout;\r\n","import React, { useState, useEffect, useRef, useCallback } from \"react\";\r\nimport { useMediaQuery } from \"react-responsive\";\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\nimport Layout from \"../../core/Layout/Layout\";\r\nimport {\r\n Button,\r\n CardBody,\r\n Col,\r\n Form,\r\n FormGroup,\r\n Input,\r\n Label,\r\n Row,\r\n Spinner,\r\n} from \"reactstrap\";\r\nimport moment from \"moment\";\r\nimport Loading from \"../../Loading\";\r\nimport axios from \"axios\";\r\n\r\nimport {\r\n getGuestListHandler,\r\n getGuestTotalBooking,\r\n handleBooking,\r\n handleLogin,\r\n handlePropertySelection,\r\n} from \"../../redux/tableBooking\";\r\nimport { handleModalTitle, sendOTP } from \"../../redux/modals\";\r\nimport ModalsComponent from \"./Modals/ModalsComponent\";\r\nimport { getPropertyList } from \"../../redux/propertyData\";\r\nimport { getOutletList, getPageThemeSettingsetails } from \"../../redux/launch\";\r\nimport Header from \"../../core/Layout/Header\";\r\n//import { faL } from \"@fortawesome/free-solid-svg-icons\";\r\n\r\nconst TableBookingComp = (props) => {\r\n const dispatch = useDispatch();\r\n const launch = useSelector((state) => state.launch);\r\n const propertyData = useSelector((state) => state.propertyList.propertyData);\r\n const [outletDetails, setOutletDetails] = useState(launch.outletDetails);\r\n\r\n const isTabletOrMobile = useMediaQuery({ query: \"(max-width: 1224px)\" });\r\n const tableBooking = useSelector((state) => state.tableBooking);\r\n const [token, setToken] = useState(launch.token);\r\n const [propertyName, setPropertyName] = useState(\"\");\r\n const [outletName, setOutletName] = useState(\"\");\r\n const [propertyId, setPropertyId] = useState(\r\n tableBooking.selectedProperty.propertyId\r\n );\r\n const [outletCode, setOutletCode] = useState(\"\");\r\n const [NoOfGuest, setNoOfGuest] = useState(1);\r\n const [maxPax, setMaxPax] = useState(10);\r\n const [BookingTime, setBookingTime] = useState(\"\");\r\n const [buttonSelectedStyle, setButtonSelectedStyle] = useState({\r\n backgroundColor: \"black\",\r\n color: \"white\",\r\n });\r\n const [buttonUnSelectedStyle, setButtonUnSelectedStyle] = useState({\r\n backgroundColor: \"white\",\r\n color: \"black\",\r\n });\r\n const [selectedTitle, setSelectedTitle] = useState([\r\n { value: 1, label: \"Mr.\" },\r\n ]);\r\n const [optionsTitle, setOptionsTitle] = useState([]);\r\n const [FirstName, setFirstName] = useState(\"\");\r\n const [LastName, setLastName] = useState(\"\");\r\n const [selectedTelephoneCode, setSelectedTelephoneCode] = useState([\r\n { value: 1, label: \"91\" },\r\n ]);\r\n const [optionsTelephoneCode, setOptionsTelephoneCode] = useState([]);\r\n const [ContactNo, setContactNo] = useState(\"\");\r\n\r\n const [EmailId, setEmailId] = useState(\"\");\r\n const [Instruction, setInstruction] = useState(\"\");\r\n const [loggedIn, setLoggedIn] = useState(tableBooking.loggedIn);\r\n const [bookingHandlerToggle, setBookingHandlerToggle] = useState(false);\r\n const [saveToggle, setSaveToggle] = useState(false);\r\n // const [outletList, setOutletList] = useState(launch.outletListData)\r\n const titleRef = useRef(true);\r\n const mobileCodeRef = useRef(true);\r\n const propertyRef = useRef(true);\r\n const outletDetailsRef = useRef(true);\r\n const outletListRef = useRef(true);\r\n const timeSlotRef = useRef(false);\r\n const [diffNo, setDiffNo] = useState(false);\r\n const d = new Date();\r\n const [bookingDate, setBookingDate] = useState(d.toISOString().split(\"T\")[0]);\r\n const [bodyStyle, setBodyStyle] = useState({\r\n backgroundColor: \"white\",\r\n border: \"none\",\r\n paddingTop: \"80px\",\r\n fontSettings: {\r\n name: \"Calibri\",\r\n fontFamily: \"Calibri, sans-serif\",\r\n color: \"#212529\",\r\n size: \"16px\",\r\n bold: \"false\",\r\n italic: \"false\",\r\n alignment: \"\",\r\n },\r\n });\r\n const [timeSlotList, setTimeSlotList] = useState(\"\");\r\n const [termsandConditionStyle, setTermsandcondtionsStyle] = useState({\r\n minWidth: \"100px\",\r\n borderRadius: \"5px\",\r\n textAlign: \"center\",\r\n });\r\n\r\n useEffect(() => {\r\n if (launch.themeSettings.data && launch.themeSettings.data.status === 1) {\r\n const body = launch.themeSettings.data.themeSettings.body;\r\n\r\n setBodyStyle((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: body.backgroundColor\r\n ? `${body.backgroundColor}`\r\n : prev.backgroundColor,\r\n backgroundImage: `url(${body.backgroundImages[0]})`,\r\n border: body.border ? `${body.border}` : prev.border,\r\n fontFamily: `${body.fontSettings.fontFamily}`,\r\n color: `${body.fontSettings.color}`,\r\n fontWeight: body.fontSettings.bold === \"true\" ? \"bold\" : \"normal\",\r\n fontStyle: body.fontSettings.italic === \"true\" ? \"italic\" : \"normal\",\r\n backgroundRepeat: \"no-repeat\",\r\n backgroundSize: \"cover\",\r\n };\r\n });\r\n\r\n setTermsandcondtionsStyle((prev) => {\r\n return {\r\n ...prev,\r\n fontFamily: `${body.termsAndConditionFontSettings.fontFamily}`,\r\n color: `${body.termsAndConditionFontSettings.color}`,\r\n fontWeight:\r\n body.termsAndConditionFontSettings.bold === \"true\"\r\n ? \"bold\"\r\n : \"normal\",\r\n fontStyle:\r\n body.termsAndConditionFontSettings.italic === \"true\"\r\n ? \"italic\"\r\n : \"normal\",\r\n };\r\n });\r\n\r\n setButtonUnSelectedStyle((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: body.nonSelectedButtonSettings.backgroundColor\r\n ? `${body.nonSelectedButtonSettings.backgroundColor}`\r\n : prev.backgroundColor,\r\n color: body.nonSelectedButtonSettings.fontSettings.color\r\n ? `${body.nonSelectedButtonSettings.fontSettings.color}`\r\n : prev.color,\r\n fontFamily: body.nonSelectedButtonSettings.fontSettings.fontFamily\r\n ? `${body.nonSelectedButtonSettings.fontSettings.fontFamily}`\r\n : \"\",\r\n fontWeight:\r\n body.termsAndConditionFontSettings.bold === \"true\"\r\n ? \"bold\"\r\n : \"normal\",\r\n fontStyle:\r\n body.termsAndConditionFontSettings.italic === \"true\"\r\n ? \"italic\"\r\n : \"normal\",\r\n };\r\n });\r\n setButtonSelectedStyle((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: body.selectedButtonSettings.backgroundColor\r\n ? `${body.selectedButtonSettings.backgroundColor}`\r\n : prev.backgroundColor,\r\n color: body.selectedButtonSettings.fontSettings.color\r\n ? `${body.selectedButtonSettings.fontSettings.color}`\r\n : prev.color,\r\n fontFamily: body.selectedButtonSettings.fontSettings.fontFamily\r\n ? `${body.selectedButtonSettings.fontSettings.fontFamily}`\r\n : \"\",\r\n fontWeight:\r\n body.termsAndConditionFontSettings.bold === \"true\"\r\n ? \"bold\"\r\n : \"normal\",\r\n fontStyle:\r\n body.termsAndConditionFontSettings.italic === \"true\"\r\n ? \"italic\"\r\n : \"normal\",\r\n };\r\n });\r\n } else if (launch.themeSettingsDefault.data) {\r\n const body = launch.themeSettingsDefault.data.themeSettings.body;\r\n setBodyStyle((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: body.backgroundColor\r\n ? `${body.backgroundColor}`\r\n : prev.backgroundColor,\r\n backgroundImage: `url(${body.backgroundImages[0]})`,\r\n border: body.border ? `${body.border}` : prev.border,\r\n fontFamily: `${body.fontSettings.fontFamily}`,\r\n color: `${body.fontSettings.color}`,\r\n fontWeight: body.fontSettings.bold === \"true\" ? \"bold\" : \"normal\",\r\n fontStyle: body.fontSettings.italic === \"true\" ? \"italic\" : \"normal\",\r\n backgroundRepeat: \"no-repeat\",\r\n backgroundSize: \"cover\",\r\n };\r\n });\r\n\r\n setTermsandcondtionsStyle((prev) => {\r\n return {\r\n ...prev,\r\n fontFamily: `${body.termsAndConditionFontSettings.fontFamily}`,\r\n color: `${body.termsAndConditionFontSettings.color}`,\r\n fontWeight:\r\n body.termsAndConditionFontSettings.bold === \"true\"\r\n ? \"bold\"\r\n : \"normal\",\r\n fontStyle:\r\n body.termsAndConditionFontSettings.italic === \"true\"\r\n ? \"italic\"\r\n : \"normal\",\r\n };\r\n });\r\n\r\n setButtonUnSelectedStyle((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: body.nonSelectedButtonSettings.backgroundColor\r\n ? `${body.nonSelectedButtonSettings.backgroundColor}`\r\n : prev.backgroundColor,\r\n color: body.nonSelectedButtonSettings.fontSettings.color\r\n ? `${body.nonSelectedButtonSettings.fontSettings.color}`\r\n : prev.color,\r\n fontFamily: body.nonSelectedButtonSettings.fontSettings.fontFamily\r\n ? `${body.nonSelectedButtonSettings.fontSettings.fontFamily}`\r\n : \"\",\r\n fontWeight:\r\n body.termsAndConditionFontSettings.bold === \"true\"\r\n ? \"bold\"\r\n : \"normal\",\r\n fontStyle:\r\n body.termsAndConditionFontSettings.italic === \"true\"\r\n ? \"italic\"\r\n : \"normal\",\r\n };\r\n });\r\n setButtonSelectedStyle((prev) => {\r\n return {\r\n ...prev,\r\n backgroundColor: body.selectedButtonSettings.backgroundColor\r\n ? `${body.selectedButtonSettings.backgroundColor}`\r\n : prev.backgroundColor,\r\n color: body.selectedButtonSettings.fontSettings.color\r\n ? `${body.selectedButtonSettings.fontSettings.color}`\r\n : prev.color,\r\n fontFamily: body.selectedButtonSettings.fontSettings.fontFamily\r\n ? `${body.selectedButtonSettings.fontSettings.fontFamily}`\r\n : \"\",\r\n fontWeight:\r\n body.termsAndConditionFontSettings.bold === \"true\"\r\n ? \"bold\"\r\n : \"normal\",\r\n fontStyle:\r\n body.termsAndConditionFontSettings.italic === \"true\"\r\n ? \"italic\"\r\n : \"normal\",\r\n };\r\n });\r\n }\r\n }, [launch.themeSettings]);\r\n\r\n useEffect(() => {\r\n if (tableBooking) setLoggedIn(tableBooking.loggedIn);\r\n\r\n if (tableBooking.selectedProperty) {\r\n const sel = tableBooking.selectedProperty;\r\n setPropertyName(sel.propertyName);\r\n setPropertyId(sel.propertyId);\r\n // timeSlotRef.current = true\r\n //tried this way for only property changed but outlet remain the same\r\n }\r\n if (tableBooking.selectedProperty && launch.token) {\r\n dispatch(\r\n getPageThemeSettingsetails({\r\n propertyId: tableBooking.selectedProperty.propertyId,\r\n themePageId: 157,\r\n token: launch.token,\r\n })\r\n );\r\n }\r\n }, [tableBooking.selectedProperty]);\r\n\r\n useEffect(() => {\r\n const sel = tableBooking.selectedOutlet;\r\n // setBookingDate(d.toISOString().split('T')[0])\r\n if (sel.outletCode) {\r\n timeSlotRef.current = true;\r\n setOutletName(sel.outletName);\r\n // if (sel.outletCode !== outletCode) {\r\n setOutletCode(sel.outletCode);\r\n // console.log('different outlet or not ', timeSlotRef.current, sel.outletCode === outletCode)\r\n // }\r\n }\r\n }, [tableBooking.selectedOutlet.outletCode]);\r\n\r\n // useEffect(() => {\r\n // if (outletCode){\r\n // // timeSlotRef.current = !timeSlotRef.current\r\n // // if (!timeSlotList || timeSlotList === '' || !timeSlotRef.current)\r\n // timeSlotRef.current = true\r\n // console.log(timeSlotRef.current)\r\n // }\r\n //\r\n // }, [outletCode, timeSlotList])\r\n\r\n useEffect(() => {\r\n if (bookingDate) {\r\n timeSlotRef.current = true;\r\n console.log(timeSlotRef.current);\r\n }\r\n }, [bookingDate]);\r\n\r\n useEffect(() => {\r\n if (launch.token) {\r\n setToken(launch.token);\r\n }\r\n\r\n if (\r\n launch.paramData.organizationId &&\r\n launch.token &&\r\n propertyRef.current\r\n ) {\r\n dispatch(getPropertyList(launch.token));\r\n propertyRef.current = false;\r\n }\r\n\r\n // if((!tableBooking.selectedProperty.propertyId && launch.paramData.outletCode === 'NONE' || !launch.paramData.outletCode || !outletCode || outletCode === 'NONE') && launch.token){\r\n //\r\n // if (launch.paramData.propertyId && tableBooking.selectedProperty.propertyId === '') {\r\n // dispatch(getOutletList({propertyId:launch.paramData.propertyId, token:launch.token}))\r\n // outletListRef.current = false\r\n // }\r\n // }\r\n // // whenever page refresh happening outlet was not called, since outletcodes cane be similar, propertyId change can be used\r\n // if (tableBooking.selectedProperty.propertyId && launch.token){\r\n // dispatch(getOutletList({propertyId:tableBooking.selectedProperty.propertyId, token:launch.token}))\r\n // outletListRef.current = false\r\n // console.log(tableBooking.selectedProperty.propertyId)\r\n // }\r\n }, [\r\n launch.token,\r\n launch.paramData,\r\n launch.paramData.propertyId,\r\n tableBooking.selectedProperty.propertyId,\r\n ]);\r\n\r\n useEffect(() => {\r\n if (launch.outletDetails.outletDetails) {\r\n setOutletDetails(launch.outletDetails);\r\n launch.outletDetails.outletDetails.maximumPax &&\r\n setMaxPax(Number(launch.outletDetails.outletDetails.maximumPax));\r\n }\r\n }, [launch.outletDetails.outletDetails]);\r\n\r\n useEffect(() => {\r\n const bkng = tableBooking.tableData;\r\n // setNoOfGuest(bkng.NoOfGuest)\r\n // setBookingTime(bkng.BookingTime)\r\n // setSelectedTitle(bkng.selectedTitle)\r\n if (bkng) {\r\n if (bkng.FirstName) setFirstName(bkng.FirstName);\r\n\r\n if (bkng.LastName) setLastName(bkng.LastName);\r\n\r\n if (bkng.selectedTelephoneCode)\r\n setSelectedTelephoneCode(bkng.selectedTelephoneCode);\r\n\r\n if (bkng.ContactNo) setContactNo(bkng.ContactNo);\r\n\r\n if (bkng.EmailId) setEmailId(bkng.EmailId);\r\n\r\n if (bkng.Instruction) setInstruction(bkng.Instruction);\r\n }\r\n }, [tableBooking.tableData]);\r\n\r\n useEffect(() => {\r\n if (tableBooking.timeSlotList) setTimeSlotList(tableBooking.timeSlotList);\r\n }, [tableBooking.timeSlotList]);\r\n\r\n useEffect(() => {\r\n setLoggedIn(tableBooking.loggedIn);\r\n\r\n if (!tableBooking.loggedIn && !bookingHandlerToggle && !diffNo) {\r\n setFirstName(\"\");\r\n setLastName(\"\");\r\n setContactNo(\"\");\r\n }\r\n }, [tableBooking.loggedIn, bookingHandlerToggle]);\r\n\r\n useEffect(() => {\r\n if (\r\n BookingTime &&\r\n FirstName &&\r\n ContactNo &&\r\n tableBooking.loggedIn &&\r\n saveToggle\r\n )\r\n setBookingHandlerToggle(true);\r\n }, [tableBooking.loggedIn]);\r\n\r\n const timeSlotListHandler = () => {\r\n axios\r\n .get(`${process.env.REACT_APP_LUCIDPOS_GUEST_TABLE}GetTimeSlotList`, {\r\n params: {\r\n outletCode:\r\n tableBooking.selectedOutlet.outletCode ||\r\n launch.paramData.outletCode,\r\n BookingDate: bookingDate,\r\n },\r\n headers: { Authorization: `Bearer ${launch.outletListData.token}` },\r\n \"Content-Type\": \"application/json\",\r\n })\r\n .then((response) => {\r\n if (response.data.errorCode === 1) {\r\n dispatch(handleModalTitle(response.data.message));\r\n }\r\n setTimeSlotList(response.data.response);\r\n })\r\n .catch((error) => console.log(error));\r\n\r\n timeSlotRef.current = false;\r\n };\r\n\r\n useEffect(() => {\r\n if (\r\n tableBooking.isOpenBL &&\r\n launch.outletListData.token &&\r\n timeSlotRef.current\r\n ) {\r\n timeSlotRef.current = false;\r\n // caling time, back from view page\r\n setTimeout(() => timeSlotListHandler(), 1000);\r\n }\r\n }, [tableBooking.isOpenBL, launch.outletListData.token]);\r\n\r\n useEffect(() => {\r\n // console.log(tableBooking.loggedIn, bookingHandlerToggle, BookingTime, bookingDate, BookingTime, launch.outletListData.token)\r\n\r\n if (\r\n tableBooking.loggedIn &&\r\n bookingHandlerToggle &&\r\n BookingTime &&\r\n bookingDate &&\r\n BookingTime &&\r\n launch.outletListData.token\r\n ) {\r\n axios\r\n .post(\r\n `${process.env.REACT_APP_LUCIDPOS_GUEST_TABLE}ValidateTableBooking`,\r\n {\r\n OutletCode: outletCode,\r\n BookingDate: bookingDate, // \"04-Aug-2022\",\r\n BookingTime: moment(BookingTime, [\"h:mm A\"]).format(\"HH:mm\"), // \"16:00\",\r\n NoOfGuest, // 10,\r\n GuestDetails: {\r\n GuestTitleId: selectedTitle[0].value,\r\n GuestTitle: selectedTitle[0].label, //: \"Mr.\",\r\n FirstName, //: \"Yuvi\",\r\n LastName, //\": \"A\",\r\n ContactNoCountryCode: selectedTelephoneCode[0].label, // \": \"91\",\r\n ContactNo, //\": \"9738854149\",\r\n EmailId, //\": \"yuvi@lucidits.com\"\r\n },\r\n Instruction,\r\n },\r\n {\r\n headers: { Authorization: `Bearer ${launch.outletListData.token}` },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.data.errorCode === 1) {\r\n dispatch(handleModalTitle(response.data.message));\r\n // setModalTitle(response.data.message)\r\n setBookingHandlerToggle(false);\r\n }\r\n\r\n if (response.data.errorCode === 0) {\r\n axios\r\n .post(\r\n `${process.env.REACT_APP_LUCIDPOS_GUEST_TABLE}SaveTableBooking`,\r\n {\r\n OutletCode: outletCode,\r\n BookingDate: bookingDate, // \"04-Aug-2022\",\r\n BookingTime: moment(BookingTime, [\"h:mm A\"]).format(\"HH:mm\"), // \"16:00\",\r\n NoOfGuest, // 10,\r\n GuestDetails: {\r\n GuestTitleId: selectedTitle[0].value,\r\n GuestTitle: selectedTitle[0].label, //: \"Mr.\",\r\n FirstName, //: \"Yuvi\",\r\n LastName, //\": \"A\",\r\n ContactNoCountryCode: selectedTelephoneCode[0].label, // \": \"91\",\r\n ContactNo, //\": \"9738854149\",\r\n EmailId, //\": \"yuvi@lucidits.com\"\r\n },\r\n Instruction,\r\n },\r\n {\r\n headers: {\r\n Authorization: `Bearer ${launch.outletListData.token}`,\r\n },\r\n }\r\n )\r\n .then((res) => {\r\n if (res.data.errorCode === 0) {\r\n setSaveToggle(false);\r\n // setModalTitle('')\r\n dispatch(handleModalTitle(\"Your Booking Success\"));\r\n setDiffNo(false);\r\n //setModalSave(!modalSave)\r\n setBookingHandlerToggle(false);\r\n setBookingDate(d.toISOString().split(\"T\")[0]);\r\n setBookingTime(\"\");\r\n setNoOfGuest(1);\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n // return () => setBookingHandlerToggle(false)\r\n }, [\r\n tableBooking.loggedIn,\r\n bookingHandlerToggle,\r\n launch.outletListData.token,\r\n ]);\r\n\r\n useEffect(() => {\r\n // const tokenOption = launch.outletListData.token\r\n // if (tokenOption && tableBooking.selectedOutlet.outletCode && bookingDate ) timeSlotRef.current = true\r\n\r\n console.log(\r\n launch.outletListData.token,\r\n tableBooking.selectedOutlet.outletCode,\r\n bookingDate,\r\n timeSlotRef.current\r\n );\r\n // GET 'https://dev.lucidits.com/LUCIDPOSGuestTableReservationAPI/V1/GetTimeSlotList?OutletCode=TERC&BookingDate=04-Aug-2022'\r\n if (\r\n launch.outletListData.token &&\r\n tableBooking.selectedOutlet.outletCode &&\r\n bookingDate &&\r\n timeSlotRef.current\r\n ) {\r\n timeSlotListHandler();\r\n }\r\n if (launch.outletListData.errorCode === 1) {\r\n dispatch(handleModalTitle(launch.outletListData.message));\r\n }\r\n }, [\r\n tableBooking.selectedOutlet.outletCode,\r\n bookingDate,\r\n launch.outletListData.token,\r\n ]);\r\n\r\n //'https://dev.lucidits.com/LUCIDAPI/V1/GetTitleList'\r\n const getTitleList = () => {\r\n if (titleRef.current)\r\n axios\r\n .get(`${process.env.REACT_APP_BASE_API_URL}LUCIDAPI/V1/GetTitleList`, {\r\n headers: { Authorization: `Bearer ${launch.token}` },\r\n \"Content-Type\": \"application/json\",\r\n })\r\n .then((response) => {\r\n const list = response.data.response;\r\n setOptionsTitle(() =>\r\n list.titleList.map((title) => ({\r\n value: title.titleId,\r\n label: title.titleName,\r\n }))\r\n );\r\n // console.log(response.data.response)\r\n })\r\n .catch((error) => console.log(error));\r\n titleRef.current = false;\r\n };\r\n\r\n useEffect(() => {\r\n //GET 'https://dev.lucidits.com/LUCIDAPI/V1/GetMobileCountryCode'\r\n if (token) {\r\n getTitleList();\r\n //toggleRef.current = false\r\n // getPropertyHandler()\r\n if (mobileCodeRef.current)\r\n axios\r\n .get(\r\n `${process.env.REACT_APP_BASE_API_URL}LUCIDAPI/V1/GetMobileCountryCode`,\r\n {\r\n headers: { Authorization: `Bearer ${token}` },\r\n \"Content-Type\": \"application/json\",\r\n }\r\n )\r\n .then((response) => {\r\n // setMobileCountryCodeData(response.data.response)\r\n const list = response.data.response;\r\n setOptionsTelephoneCode(() =>\r\n list.mobileCountryCodeList.map((code) => ({\r\n value: code.countryCode,\r\n label: code.telephoneCode,\r\n }))\r\n );\r\n })\r\n .catch((error) => console.log(error));\r\n\r\n mobileCodeRef.current = false;\r\n }\r\n }, [token]);\r\n\r\n const updateTableBookingData = () => {\r\n dispatch(\r\n handleBooking({\r\n bookingDate,\r\n NoOfGuest,\r\n BookingTime,\r\n selectedTitle: selectedTitle,\r\n selectedTitleId: selectedTitle[0].value,\r\n FirstName,\r\n LastName,\r\n selectedTelephoneCode: selectedTelephoneCode[0].label,\r\n ContactNo,\r\n EmailId,\r\n Instruction,\r\n })\r\n );\r\n };\r\n\r\n const bookingSubmitHandler = () => {\r\n if (!bookingDate) {\r\n dispatch(handleModalTitle(\"Kindly select Booking Date\"));\r\n } else if (!NoOfGuest) {\r\n dispatch(handleModalTitle(\"Kindly select Pax\"));\r\n } else if (!BookingTime) {\r\n dispatch(handleModalTitle(\"Kindly select Booking Time\"));\r\n // setModalError(!modalError)\r\n } else if (!FirstName) {\r\n dispatch(handleModalTitle(\"Kindly Enter Your Name\"));\r\n // setModalError(!modalError)\r\n } else if (!ContactNo || ContactNo.length !== 10) {\r\n dispatch(handleModalTitle(\"Kindly Enter Valid Contact No.\"));\r\n //setModalError(!modalError)\r\n // } //else if (ContactNo !== tableBooking.tableData.ContactNo) {\r\n\r\n // dispatch(sendOTP({ContactNo, token:launch.token}))\r\n // setErrorMessageOTP('')\r\n // dispatch(handleModalTitle('OTP'))\r\n // setModalOTP(!modalOTP)\r\n // setDiffNo(true)\r\n // }\r\n } else if (!loggedIn) {\r\n dispatch(sendOTP({ ContactNo, token: launch.token }));\r\n dispatch(handleModalTitle(\"OTP\"));\r\n setBookingHandlerToggle(false);\r\n updateTableBookingData();\r\n } else if (ContactNo !== tableBooking.tableData.ContactNo) {\r\n setDiffNo(true);\r\n dispatch(handleLogin(false)); // not to remove customer details while logout\r\n setBookingHandlerToggle(true); // not to remove customer details while logout\r\n dispatch(sendOTP({ ContactNo, token: launch.token }));\r\n dispatch(handleBooking({ ...tableBooking.tableData, ContactNo }));\r\n dispatch(handleModalTitle(\"OTP\"));\r\n updateTableBookingData();\r\n } else {\r\n // otpHandler ()\r\n // setErrorMessageOTP('')\r\n setBookingHandlerToggle(true);\r\n updateTableBookingData();\r\n }\r\n };\r\n\r\n return (\r\n \r\n
\r\n {\r\n // (!propertyName && !outletName) && \r\n }\r\n {propertyId && outletCode && (\r\n \r\n {\r\n //left head starts here\r\n }\r\n \r\n \r\n \r\n \r\n \r\n {\r\n timeSlotRef.current = true;\r\n setBookingDate(e.target.value);\r\n }}\r\n />\r\n \r\n \r\n \r\n No of Guest: *\r\n \r\n {\r\n if (e.target.value > maxPax)\r\n dispatch(\r\n handleModalTitle(\r\n `Maximum booking available is ${maxPax}`\r\n )\r\n );\r\n setNoOfGuest(e.target.value);\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n Time: *\r\n \r\n \r\n {!timeSlotList && }\r\n {timeSlotList && timeSlotList.timeSlotList.length === 0 && (\r\n

\r\n No Slot Available for booking\r\n

\r\n )}\r\n {timeSlotList &&\r\n timeSlotList.timeSlotList.map((time, id) => {\r\n return (\r\n {\r\n setBookingTime(time.timeSlot);\r\n // setTimeColor(\"black\");\r\n }}\r\n >\r\n {time.timeSlot}\r\n \r\n );\r\n })}\r\n \r\n \r\n
\r\n \r\n {\r\n //right head starts here\r\n }\r\n \r\n \r\n
\r\n \r\n Name : *\r\n \r\n \r\n \r\n setSelectedTitle(\r\n optionsTitle.filter(\r\n (item) => item.label === e.target.value\r\n )\r\n )\r\n }\r\n >\r\n {optionsTitle &&\r\n optionsTitle.map((field) => {\r\n return (\r\n \r\n );\r\n })}\r\n \r\n setFirstName(e.target.value)}\r\n value={FirstName}\r\n style={\r\n isTabletOrMobile\r\n ? { fontSize: \"11px\", maxWidth: \"36%\" }\r\n : { width: \"225px\" }\r\n }\r\n />\r\n setLastName(e.target.value)}\r\n value={LastName}\r\n style={\r\n isTabletOrMobile\r\n ? { fontSize: \"11px\", maxWidth: \"36%\" }\r\n : { width: \"225px\" }\r\n }\r\n />\r\n \r\n \r\n Contact No : *\r\n \r\n \r\n \r\n setSelectedTelephoneCode(\r\n optionsTelephoneCode.filter(\r\n (item) => item.label === e.target.value\r\n )\r\n )\r\n }\r\n >\r\n {optionsTelephoneCode &&\r\n optionsTelephoneCode.map((field) => {\r\n return (\r\n \r\n );\r\n })}\r\n \r\n {\r\n setContactNo(e.target.value);\r\n }}\r\n />\r\n \r\n \r\n Email ID :{\" \"}\r\n \r\n \r\n setEmailId(e.target.value)}\r\n />\r\n \r\n\r\n {outletDetails.outletDetails &&\r\n outletDetails.outletDetails.enableInstruction && (\r\n \r\n Instruction:{\" \"}\r\n \r\n )}\r\n {outletDetails.outletDetails &&\r\n outletDetails.outletDetails.enableInstruction && (\r\n \r\n setInstruction(e.target.value)}\r\n />\r\n \r\n )\r\n // NOTE : Submit handler is in footerAdd component, data accessed via redux\r\n }\r\n \r\n
\r\n \r\n \r\n \r\n \r\n {outletDetails.outletDetails &&\r\n outletDetails.outletDetails.termsAndConditions.length > 0 && (\r\n \r\n Terms & Conditions\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {outletDetails.outletDetails &&\r\n outletDetails.outletDetails.termsAndConditions && (\r\n item.termsAndConditions\r\n ),\r\n }}\r\n >\r\n {\r\n //border:'solid 1px #ced4da'\r\n }\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {\r\n // if ()\r\n bookingSubmitHandler();\r\n setSaveToggle(true);\r\n }}\r\n >\r\n Book Table\r\n \r\n \r\n \r\n
\r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default TableBookingComp;\r\n","// ** Redux Imports\r\nimport { createSlice, createAsyncThunk, current } from \"@reduxjs/toolkit\";\r\n\r\n// ** Axios Imports\r\nimport axios from \"axios\";\r\n\r\nconst initialData = () => {\r\n const item = window.sessionStorage.getItem(\"paramData\");\r\n //** Parse stored json or if none return initialValue\r\n return item ? JSON.parse(item) : {};\r\n};\r\nconst initialTK = () => {\r\n const item = window.sessionStorage.getItem(\"tk\");\r\n //** Parse stored json or if none return initialValue\r\n return item ? JSON.parse(item) : \"\";\r\n};\r\nconst initialTheme = () => {\r\n const item = window.sessionStorage.getItem(\"themeSettings\");\r\n //** Parse stored json or if none return initialValue\r\n return item ? JSON.parse(item) : \"\";\r\n};\r\n\r\nconst defaultTheme = () => {\r\n const item = window.localStorage.getItem(\"defaultTheme\");\r\n return item ? JSON.parse(item) : \"\";\r\n};\r\n\r\nconst initialOutletDetails = () => {\r\n const item = window.sessionStorage.getItem(\"outletDetails\");\r\n //** Parse stored json or if none return initialValue\r\n return item ? JSON.parse(item) : [];\r\n};\r\n\r\nconst initialOutletList = () => {\r\n const item = window.sessionStorage.getItem(\"outletList\");\r\n //** Parse stored json or if none return initialValue\r\n return item ? JSON.parse(item) : [];\r\n};\r\n\r\nexport const getOrgDetails = createAsyncThunk(\r\n \"launch/getOrgDetails\",\r\n async (urlKey) => {\r\n const urlString = urlKey.replace(/ /g, \"+\");\r\n const response = await axios\r\n .post(\"https://ap-lucid.com/api-lucid/V1/LongUrl\", {\r\n urlKey: urlString,\r\n username: \"lucid@WebsiteShorturl\",\r\n password: \"web@Redirect[lucid]\",\r\n requestIP: \"\",\r\n userId: \"\",\r\n })\r\n .then((res) => {\r\n if (res.data.isSuccessful === true) return res.data.longUrlInput;\r\n });\r\n\r\n return response;\r\n }\r\n);\r\n\r\nexport const getGuestAppToken = createAsyncThunk(\r\n \"launch/getGuestAppToken\",\r\n async (obj) => {\r\n const res = await axios.get(\r\n `${process.env.REACT_APP_BASE_API_URL}LUCIDPOSIntegrationAPI/V1/GetGuestAppToken`,\r\n {\r\n params: {\r\n OrganizationId: obj.OrganizationId,\r\n PropertyId: obj.PropertyId,\r\n TokenKey: \"A519618A-7218-4375-AC2B-34811ED6AD37\",\r\n },\r\n // headers: { Authorization: `Bearer ${userData.lucidapiToken}`},\r\n \"Content-Type\": \"application/json\",\r\n }\r\n );\r\n const token = res.data.response.token;\r\n return token;\r\n //, errorCode: res.data.errorCode, message:res.data.message}\r\n }\r\n);\r\n\r\nexport const getOutletDetails = createAsyncThunk(\r\n \"launch/getOutletDetails\",\r\n async (obj) => {\r\n const res = await axios\r\n .get(`${process.env.REACT_APP_LUCIDPOS_GUEST_TABLE}GetOutletDetails`, {\r\n params: {\r\n outletCode: obj.outletCode,\r\n }, // outletList.token should be used if multiple choices are available for property selection or use only guest api token\r\n headers: { Authorization: `Bearer ${obj.tokenOption}` },\r\n \"Content-Type\": \"application/json\",\r\n })\r\n .then((response) => {\r\n return {\r\n outletDetails: response.data.response.outletDetails,\r\n errorCode: response.data.errorCode,\r\n message: response.data.message,\r\n };\r\n });\r\n return res;\r\n }\r\n);\r\n\r\nexport const getOutletList = createAsyncThunk(\r\n \"launch/getOutletList\",\r\n async (obj) => {\r\n const res = await axios\r\n .get(`${process.env.REACT_APP_LUCIDPOS_GUEST_TABLE}GetOutletList`, {\r\n params: {\r\n PropertyId: obj.propertyId,\r\n },\r\n headers: { Authorization: `Bearer ${obj.token}` },\r\n \"Content-Type\": \"application/json\",\r\n })\r\n .then((response) => {\r\n // return response.data.response\r\n return {\r\n token: response.data.response.token,\r\n outletList: response.data.response.outletList,\r\n errorCode: response.data.errorCode,\r\n message: response.data.message,\r\n };\r\n });\r\n return res;\r\n }\r\n);\r\n\r\n// 'https://dev.lucidits.com/LUCIDProductSetupAPI/V1/ThemeSettings/\r\n// GetPageThemeSettings?PropertyId=%3C%3CPropertyId%3E%3E&PageId=150'\r\nexport const getPageThemeSettingsetails = createAsyncThunk(\r\n \"launch/getPageThemeSettingsetails\",\r\n async (obj) => {\r\n const res = await axios\r\n .get(\r\n `${process.env.REACT_APP_BASE_API_URL}LUCIDProductSetupAPI/V1/ThemeSettings/GetPageThemeSettings`,\r\n {\r\n params: {\r\n PropertyId: obj.propertyId,\r\n PageId: obj.themePageId,\r\n }, // outletList.token should be used if multiple choices are available for property selection or use only guest api token\r\n headers: { Authorization: `Bearer ${obj.token}` },\r\n \"Content-Type\": \"application/json\",\r\n }\r\n )\r\n .then((response) => {\r\n return {\r\n data: response.data.response,\r\n errorCode: response.data.errorCode,\r\n message: response.data.message,\r\n };\r\n });\r\n return res;\r\n }\r\n);\r\n\r\nexport const getPageDefaultThemeSettings = createAsyncThunk(\r\n \"launch/getPageDefaultThemeSettings\",\r\n async (obj) => {\r\n const res = await axios\r\n .get(\r\n `${process.env.REACT_APP_BASE_API_URL}LUCIDProductSetupAPI/V1/ThemeSettings/GetPageThemeSettingsDefault`,\r\n {\r\n params: {\r\n PropertyId: obj.propertyId,\r\n PageId: obj.themePageId,\r\n }, // outletList.token should be used if multiple choices are available for property selection or use only guest api token\r\n headers: { Authorization: `Bearer ${obj.token}` },\r\n \"Content-Type\": \"application/json\",\r\n }\r\n )\r\n .then((response) => {\r\n return {\r\n data: response.data.response,\r\n errorCode: response.data.errorCode,\r\n message: response.data.message,\r\n };\r\n });\r\n return res;\r\n }\r\n);\r\n\r\nexport const launchSlice = createSlice({\r\n name: \"launch\",\r\n initialState: {\r\n paramData: initialData(),\r\n token: initialTK(),\r\n themeSettings: initialTheme(),\r\n themeSettingsDefault: defaultTheme(),\r\n outletDetails: initialOutletDetails(),\r\n outletListData: \"\",\r\n viewPage: \"\",\r\n pageId: 0,\r\n },\r\n reducers: {\r\n handleOutletList: (state, action) => {\r\n state.outletListData = action.payload;\r\n sessionStorage.setItem(\"outletList\", JSON.stringify(action.payload));\r\n },\r\n handleLogout: (state) => {\r\n state.paramData = {};\r\n // ** Remove user, accessToken & refreshToken from localStorage\r\n sessionStorage.removeItem(\"userData\");\r\n },\r\n handleViewPage: (state, action) => {\r\n state.viewPage = action.payload;\r\n },\r\n handlePageId: (state, action) => {\r\n state.pageId = action.payload;\r\n },\r\n handleParamData: (state, action) => {\r\n state.paramData = action.payload;\r\n sessionStorage.setItem(\"paramData\", JSON.stringify(action.payload));\r\n console.log(action.payload);\r\n },\r\n },\r\n extraReducers: (builder) => {\r\n builder\r\n .addCase(getOrgDetails.fulfilled, (state, action) => {\r\n state.paramData = action.payload;\r\n sessionStorage.setItem(\"paramData\", JSON.stringify(action.payload));\r\n // state.bookmarks = action.payload.bookmarks\r\n })\r\n .addCase(getGuestAppToken.fulfilled, (state, action) => {\r\n state.token = action.payload;\r\n // sessionStorage.setItem('tk', JSON.stringify(action.payload))\r\n // state.bookmarks = action.payload.bookmarks\r\n })\r\n .addCase(getPageThemeSettingsetails.fulfilled, (state, action) => {\r\n state.themeSettings = action.payload;\r\n console.log(action.payload);\r\n })\r\n .addCase(getPageDefaultThemeSettings.fulfilled, (state, action) => {\r\n state.themeSettingsDefault = action.payload;\r\n console.log(action.payload);\r\n localStorage.setItem(\"defaultTheme\", JSON.stringify(action.payload));\r\n })\r\n .addCase(getOutletList.fulfilled, (state, action) => {\r\n state.outletListData = action.payload;\r\n console.log(action.payload);\r\n // sessionStorage.setItem('outletList', JSON.stringify(action.payload))\r\n // state.bookmarks = action.payload.bookmarks\r\n })\r\n .addCase(getOutletDetails.fulfilled, (state, action) => {\r\n state.outletDetails = action.payload;\r\n sessionStorage.setItem(\"outletDetails\", JSON.stringify(action.payload));\r\n // state.bookmarks = action.payload.bookmarks\r\n });\r\n },\r\n});\r\n\r\nexport const {\r\n handleOutletList,\r\n handleLogout,\r\n handleViewPage,\r\n handlePageId,\r\n handleParamData,\r\n} = launchSlice.actions;\r\n\r\nexport default launchSlice.reducer;\r\n"],"sourceRoot":""}