{"version":3,"sources":["fonts/Montserrat-Regular.ttf","fonts/Montserrat-SemiBold.ttf","Components/ServiceItem.jsx","Components/PruebaGoogleMaps.jsx","Components/Hotels/HotelDetails.jsx","Components/ServicioCard.jsx","Components/Booking/Login.jsx","Components/Booking/FormPax.jsx","Components/Booking/WaitBooking.jsx","Components/Booking/NRFMessage.jsx","Components/Booking/HotelBooking.jsx","Components/Hotels/HotelsGoogleMap.jsx","Components/CardFilter.jsx","Components/GetCriteriaHotels.jsx","Components/Hotels/LoadingHotels.jsx","Components/Hotels/NotAvailability.jsx","App.jsx","index.js"],"names":["module","exports","RoomItem","item","parseHtml","require","classes","makeStyles","theme","root","flexGrow","grid","backgroundColor","bg","paddingLeft","paddingTop","modal","display","alignItems","justifyContent","paper","palette","background","boxShadow","shadows","padding","spacing","paperCancelacion","border","reservar","color","fontFamily","textTransform","reservarNaranja","Amount","MealsPlan","fontStyle","TituloHotel","TituloHotelP","textAlign","fontWeight","TituloHabitacion","TituloHabitacionP","useStyles","React","useState","open","setOpen","policy","setPolicy","handleClose","Fragment","Grid","container","className","sm","Typography","variant","gutterBottom","DescripcionCombinacion","Box","Regimen","direction","justify","fecha","d","Date","substring","weekday","Array","getDay","GetWeekDay","fechainicio","Link","href","onClick","url","IDEncabezado","IDCombinacion","Operador","axios","get","then","response","console","log","data","length","Condiciones","politicas","push","Cargo","Descripcion","Fecha","Habitacion","Tipo","catch","error","moneda","Number","montototal","toFixed","Button","disableElevation","size","hotelSelected","hotelOperador","token","mensajeReserva","Modal","aria-labelledby","aria-describedby","onClose","closeAfterTransition","BackdropComponent","Backdrop","BackdropProps","timeout","Fade","in","p","style","width","fontSize","verticalAlign","flexDirection","m","css","HotelNombre","Divider","separador","List","map","resultX","i","ListItem","ListItemText","key","disableTypography","primary","type","secondary","CircularProgress","GoogleMapsContainer","props","onMarkerClick","marker","e","setState","selectedPlace","activeMarker","showingInfoWindow","onMapClick","state","hotel","Latitud","Longitud","bind","this","bar","height","overflow","AppBar","position","Toolbar","nombreHotel","containerStyle","xs","google","zoom","scroll","initialCenter","lat","lng","title","name","visible","Paper","component","Direccion","Component","GoogleApiWrapper","apiKey","margin","maxWidth","buttonDestacado","borderColor","paddingBottom","paperAmenities","HotelAddress","paperInterno","marginBottom","marginTop","fondo","gallery","fondoImage","expansion","TituloNombre","listitemicon","minWidth","CheckGroup","criterio","findIndex","element","Grupo","HotelDetails","columnas","setColumnas","descripcionLarga","setDescripcionLarga","imagenes","setImagenes","HotelDetailsData","setHotelDetailsData","isLoading","setIsLoading","capitalizarPalabras","val","toLowerCase","trim","split","filter","v","toUpperCase","substr","join","useEffect","ColumnnaX","Imagenes","URL","code","DestinationCode","original","thumbnail","DescripcionLarga","DescripcionHotel","replace","Instalaciones","Columna","SearchDetails","Container","categoriaMapeada","Rating","value","parseInt","readOnly","emptyIcon","destacado","lg","items","autoPlay","PruebaGoogleMaps","indice","elevation","s","dense","ListItemIcon","marginLeft","marginRight","borderStyle","borderWidth","rootDestacado","RoomsCard","RoomsCardAction","RoomsDescription","paddingRight","RoomsName","RoomsDireccion","RoomsContainer","RoomsContainerDestacados","GridImagen","HotelDescription","marging","appBar","flex","operador","tooltip","forwardRef","ref","Slide","HotelCard","expanded","setExpanded","useTheme","useMediaQuery","breakpoints","down","handleExpandClick","getRoomItem","iAux","AgenciaWeb","bookingClick","nombre","opcion_nombre","opcion_descripcion","precio_total","idCombinacion","idEncabezado","codigo","precio_moneda","fechafin","fecha_fin","fecha_inicio","node","loadCSS","document","querySelector","parentNode","removeChild","tipo","Card","CardContent","CardMedia","alt","image","imagen1","destinonombre","descripcion","Collapse","unmountOnExit","CardActions","IconButton","clsx","expand","expandOpen","aria-expanded","aria-label","Icon","rootCard","inputsenores","formControl","selectEmpty","textfield","selectJG","botonLogin","GridLogin","Login","agencies","setAgencies","agents","setAgents","flagAuth","setFlagAuth","setDisableBook","agencySelected","setAgencySelected","agentSelected","setAgentSelected","searchName","setSearchName","searchAgent","openMessage","setOpenMessage","searchPassword","setSearchPassword","searchContrasena","registered","setRegistered","condiciones","setCondiciones","nombreApellido","setNombreApellido","telefono","setTelefono","email","setEmail","mensaje","setMensaje","captchaValido","setCaptchaValido","urlCondiciones","seturlCondiciones","LabelCondiciones","setLabelCondiciones","disBook","login","contrasena","registrado","onChange","SearchAgency","headers","captcha","useRef","onChangeHandlerAgency","event","target","onChangeHandlerAgent","bgcolor","FormControl","FormGroup","row","FormControlLabel","control","Switch","checked","label","labelPlacement","Autocomplete","id","freeSolo","disableClearable","options","defaultvalue","newValue","option","getOptionLabel","NOMBRE","renderOption","renderInput","params","TextField","input","InputProps","inputProps","align","SearchAgents","Alert","severity","AlertTitle","Width","rows","multiline","Checkbox","sitekey","current","getValue","FormRoom","paxP","pax","setPax","handleInputChange","persist","fullWidth","Nombre","bookingOkf","Apellido","Edad","LoadingHotels","src","hotelName","countryFlag","zoneName","NotAvailability","CardTittulo","CardTittuloHab","cardseccion","RoomsCardPrincipal","DetalleHabitacion","DetalleHabitacionPrecio","headerseccion","headerhabsub","headerhab","headerhabBooking","iconAlert","titleAlert","Transition","HotelBooking","openWait","setOpenWait","openNRF","setOpenNRF","flagNRF","setFlagNRF","flagPoliticas","setFlagPoliticas","openDetails","setOpenDetails","notas","setNotas","paxes","setPaxes","setLogin","bookingOk","setBookingOk","bookingKO","setBookingaKO","notaBooking","setNotaBooking","numeroBooking","setNumeroBooking","politicasOnline","setPoliticasOnline","notasOnline","setNotasOnline","fullScreen","window","scrollTo","getPolicy","creaPaxes","Paxes","dist","distribution","nombreHab","ipax","Hab","NombreHabitacion","contenidoHab","ipax0","Id","iHab","Genero","ipax1","NotasTmp","PoliticasTmp","EnPenalidad","ii","Notas","handleChangePax","room","CardHeader","categoria","String","minHeight","resultY","alert","disabled","pp","claveControl","prompt","forEach","x","habs","cantAdultos","cantNinos","result","hab","resultPaxes","APELLIDO","EDAD","ORDEN","DESCRIPCION","PASAJEROS","codigoIbero","book","ITEMS","HABITACIONES","DESCRIPCIONCOMBINACION","IDENCABEZADO","IDCOMBINADOS","TIPO","FECHAENTRADA","FECHASALIDA","CODIGO","PROVEEDOR","CIUDAD","destino","CIUDADNAME","OBSERVACIONES","REGIMEN","PRECIO","MONEDA","CATEGORIA","ADULTOS","NINOS","PoliticasOnline","NotasOnline","AGENCIA","NOMBREAGENTE","CORREO","PASDIRECTO","CELULAR","TELEFONO","MENSAJE","ASIGNADOA","EXPEDIENTEREFERENCIA","PASSWORD","urlBooking","post","STATUS","ITEMRSS","NOTAS","EXPEDIENTE","button","endIcon","startIcon","onCancel","Dialog","TransitionComponent","disableBackdropClick","disableEscapeKeyDown","DialogContent","DialogContentText","ApplyFilterName","hotelNombre","dataHotelsDetails","hotelDireccion","hotelCodigo","getElementById","ReactDOM","render","Children","only","onOpen","onInfoWindowOpen","muiTheme","createMuiTheme","overrides","MuiSlider","thumb","track","rootChip","flexWrap","listStyle","chip","form","TituloFiltroG","TituloFiltro","media","extendedIcon","buttonFilter","icon","borderRadius","backgroundImage","outline","outlineOffset","checkedIcon","content","textField","InputPropsName","LabelCheck","inputLabel","CardFilter","destacadosState","setDestacadosState","flagPrice","setFlagPrice","chipData","setChipData","cat6","cat5","cat4","cat3","cat2","cat1","filltersCat","setfilltersCat","SA","AD","MP","PC","TI","filltersReg","setfilltersReg","setHotel","precioDesde","precioHasta","valueSlider","setValueSlider","flagFilter","ResetFilter","handleChange","filtC","DeleteChip","addchipData","FilterCat","fCat","chipToAdd","chipToDelete","fReg","FilterReg","filterDest","chips","filtR","AplyFilter","precios","ValidateHadFilter","ClearFilter","handleCloseDialog","dest","includes","InputLabelProps","focused","shrink","ThemeProvider","Slider","valueLabelDisplay","getAriaValueText","min","max","mb","Fab","noValidate","autoComplete","onKeyPress","preventDefault","onKeyUp","keyCode","mt","Chip","onDelete","undefined","HotelsGoogleMap","SearchHotels","noches","setNoches","citiesData","indexOf","setCities","search","citySelected","setCitySelected","addMonths","now","dateFrom","setDateFrom","addDays","dateTo","setDateTo","anchorEl","searchA","setsearchA","firstSearchA","setfirstSearchA","h1Adultos","setH1Adultos","h1Ninos","setH1Ninos","h1E1","setH1E1","h1E2","setH1E2","h1E3","setH1E3","flagCriterio","setFlagCriterio","criterioMensaje","setCriterioMensaje","Boolean","pepe","synonymous","card","cardRooms","TituloBuscador","rand","Math","random","toString","formControlSmall","InputLabel","Select","labelId","defaultValue","find","displayEmpty","MenuItem","locale","deLocale","utils","DateFnsUtils","DatePicker","disableToolbar","format","autoOk","timeDiff","abs","getTime","numberOfNights","ceil","citySelectedAux","strDate","from","to","habdistri","j","searchObject","SearchToken","parse","city","country_name","country_code","getFullYear","getMonth","slice","getDate","App","dataHotels","setdataHotels","dataHotelsDestacados","setdataHotelsDestacados","dataBooking","setdataBooking","setdataHotelsDetails","searchToken","setsearchToken","setsearchObject","principalSearch","setPrincipalSearch","ShowDestacados","setShowDestacados","ShowDestacadosAux","setShowDestacadosAux","flagNotAvailability","setFlagNotAvailability","firstSearch","setfirstSearch","setFirstPagination","indexPagination","setIndexPagination","setPrecioDesde","setPrecioHasta","indDestacados","urlAgencia","seturlAgencia","TotalPagination","setTotalPagination","setAgenciaWeb","indicePaginacion","precioRango","paginationObject","setPaginationObject","bookingFlag","setbookingFlag","epale","SetEpale","epaleDestacados","flagMensajeEspera","setFlagMensajeEspera","setFlagFilter","GridBarra","text","pagination","paper2","fondoGetCriteria","fondoGetCriteriaPag","divFondo","buttonSeguimos","Pagination","onbeforeunload","FillHotels","FillPaginationObject","destacadosFiltro","location","handleQueryString","regFilter","Disponibilidades","ProcesaServiciosResults","foo","URLSearchParams","ToBookingClick","tmp","itemHotel","resultXX","tipoAPI","TotalPagineo","hotelsList","totalServicios","Set","codeAux","TmpHotelsList","Hotels","codigoHotel","sort","a","b","Precio","precioMinimo","precioMaximo","ClearData","ObjectTmp","backgroundRepeat","backgroundSize","shadow","frameBorder","SearchO","Criterio","fillterReg","ClearFiltro","CantDestacados","count","page","bookingP","paxesP","BookingAPI","flagBooking","fromX","toX","StrictMode"],"mappings":"2MAAAA,EAAOC,QAAU,IAA0B,gD,oBCA3CD,EAAOC,QAAU,IAA0B,iD,wSCkB5B,SAASC,EAASC,GAC/B,IAAMC,EAAYC,EAAQ,IAkFpBC,EAhFYC,aAAW,SAACC,GAAD,MAAY,CACvCC,KAAM,CACJC,SAAU,GAQZC,KAAM,CACJC,gBAAiBT,EAAKU,GACtBC,YAAa,KACbC,WAAY,QAEdC,MAAO,CACLC,QAAS,OACTC,WAAY,SACZC,eAAgB,UAElBC,MAAO,CACLR,gBAAiBJ,EAAMa,QAAQC,WAAWF,MAE1CG,UAAWf,EAAMgB,QAAQ,GACzBC,QAASjB,EAAMkB,QAAQ,EAAG,EAAG,IAE/BC,iBAAkB,CAChBf,gBAAiB,QACjBgB,OAAQ,oBACRL,UAAWf,EAAMgB,QAAQ,GACzBC,QAASjB,EAAMkB,QAAQ,EAAG,EAAG,IAE/BG,SAAU,CACRP,WAAY,UACZQ,MAAO,QACPC,WAAY,qBACZC,cAAe,aACf,UAAW,CACTV,WAAY,UACZQ,MAAO,UAGXG,gBAAiB,CACfX,WAAY,UACZQ,MAAO,QACPC,WAAY,qBACZC,cAAe,aACf,UAAW,CACTV,WAAY,UACZQ,MAAO,UAGXI,OAAQ,CACNJ,MAAO,SAETK,UAAW,CACTL,MAAO,UACPM,UAAW,WAEbC,YAAa,CACXP,MAAO,UACPC,WAAY,sBAGdO,aAAc,CACZR,MAAO,UACPS,UAAW,SACXC,WAAY,UAEdC,iBAAkB,CAChBX,MAAO,UACPC,WAAY,qBACZS,WAAY,QAEdE,kBAAmB,CACjBZ,MAAO,UACPS,UAAW,SACXC,WAAY,aAGAG,GAnFqB,EAoFbC,IAAMC,UAAS,GApFF,mBAoF9BC,EApF8B,KAoFxBC,EApFwB,OAqFTH,IAAMC,SAAS,IArFN,mBAqF9BG,EArF8B,KAqFtBC,EArFsB,KA8J/BC,EAAc,WAClBH,GAAQ,IA8BV,OACE,kBAAC,IAAMI,SAAP,KAEI,kBAACC,EAAA,EAAD,CAAMC,WAAS,EAAC3B,QAAS,EAAG4B,UAAWhD,EAAQK,MAC7C,kBAACyC,EAAA,EAAD,CAAMjD,MAAI,EAACoD,GAAI,GACb,kBAACC,EAAA,EAAD,CACEC,QAAQ,YACRC,cAAY,EACZJ,UAAWhD,EAAQmC,kBAElBrC,EAAUD,EAAKwD,yBAGlB,kBAACC,EAAA,EAAD,CAAKN,UAAWhD,EAAQ6B,WACtB,kBAACqB,EAAA,EAAD,CAAYC,QAAQ,QAAQC,cAAY,GACvCtD,EAAUD,EAAK0D,YAIpB,kBAACT,EAAA,EAAD,CAAMjD,MAAI,EAACoD,GAAI,EAAGF,WAAS,EAACS,UAAU,SAASC,QAAQ,UACvD,kBAACP,EAAA,EAAD,CAAYC,QAAQ,YAAYC,cAAY,GAnCjC,SAACM,GAClB,IAAMC,EAAI,IAAIC,KAAKF,EAAMG,UAAU,EAAG,GAAGH,EAAMG,UAAU,EAAG,GAAG,EAAEH,EAAMG,UAAU,EAAG,IAElFC,EAAU,IAAIC,MAAM,GAS1B,OARAD,EAAQ,GAAK,UACbA,EAAQ,GAAK,QACbA,EAAQ,GAAK,SACbA,EAAQ,GAAK,YACbA,EAAQ,GAAK,SACbA,EAAQ,GAAK,UACbA,EAAQ,GAAK,YAELA,EAAQH,EAAEK,UAAY,IAAMN,EAAMG,UAAU,EAAG,GAAG,IAAIH,EAAMG,UAAU,EAAG,GAAG,IAAIH,EAAMG,UAAU,EAAG,GAwB5FI,CAAWpE,EAAKqE,cAEnB,kBAACC,EAAA,EAAD,CAAMC,KAAK,IAAIC,QA7HN,WACjB1B,EAAU,IAEV,IAAM2B,EAAM,wFACZzE,EAAK0E,aACL,kBACA1E,EAAK2E,cACL,aACA3E,EAAK4E,SACLC,IACGC,IACCL,GAEDM,MAAK,SAACC,GAEL,GADAC,QAAQC,IAAIF,EAASG,MACQ,IAAzBH,EAASG,KAAKC,OAChBtC,EAAUkC,EAASG,KAAK,GAAGE,aAC3BJ,QAAQC,IAAIF,EAASG,UAChB,CAEL,IAAIG,EAAY,GACM,SAAlBtF,EAAK4E,SACRU,EAAUC,KAAK,CACdC,MAAO,GACPC,YAAa,GACbC,MAAO,kCACPC,WAAY,GACZC,KAAM,KAGNN,EAAUC,KAAK,CACfC,MAAO,yCACPC,YAAa,MACbC,MAAO,+CACPC,WAAY,GACZC,KAAM,KAGRX,QAAQC,IAAI,aACZD,QAAQC,IAAII,GACZxC,EAAUwC,OAGbO,OAAM,SAACC,GACNb,QAAQC,IAAIY,GACZb,QAAQC,IAAIlF,EAAK4E,UACjB,IAAIU,EAAY,GACM,SAAlBtF,EAAK4E,SACPU,EAAUC,KAAK,CACfC,MAAO,GACPC,YAAa,GACbC,MAAO,kCACPC,WAAY,GACZC,KAAM,KAGNN,EAAUC,KAAK,CACfC,MAAO,yCACPC,YAAa,MACbC,MAAO,+CACPC,WAAY,GACZC,KAAM,KAGR9C,EAAUwC,GACVL,QAAQC,IAAIY,MAGhBlD,GAAQ,KA0DE,kBAACS,EAAA,EAAD,CAAYC,QAAQ,UAAUC,cAAY,GAA1C,oCAKJ,kBAACN,EAAA,EAAD,CACEjD,MAAI,EACJoD,GAAI,EACJF,WAAS,EACTS,UAAU,SACV5C,WAAW,SACX6C,QAAQ,UAER,kBAACP,EAAA,EAAD,CACEC,QAAQ,YACRC,cAAY,EACZJ,UAAWhD,EAAQ4B,QAElB/B,EAAK+F,OALR,IAKiBC,OAAOhG,EAAKiG,YAAYC,QAAQ,IAEjD,kBAACC,EAAA,EAAD,CACE7C,QAAQ,YACR3B,MAAM,UACNwB,UAAWhD,EAAQ2B,gBACnBsE,kBAAgB,EAChBC,KAAK,QACL7B,QA7ES,SAAC8B,GACpBrB,QAAQC,IAAI,yBACZD,QAAQC,IAAIlF,GACZA,EAAKwE,QACHxE,EAAKuG,cACLvG,EAAK2E,cACL3E,EAAK4E,SACL5E,EAAK0E,aACL1E,EAAKwG,SA0EIxG,EAAKyG,kBAKd,kBAACC,EAAA,EAAD,CACEC,kBAAgB,yBAChBC,mBAAiB,+BACjBzD,UAAWhD,EAAQU,MACnB8B,KAAMA,EACNkE,QAAS9D,EACT+D,sBAAoB,EACpBC,kBAAmBC,IACnBC,cAAe,CACbC,QAAS,MAGX,kBAACC,EAAA,EAAD,CAAMC,GAAIzE,GACR,yBAAKQ,UAAWhD,EAAQqB,kBACrBqB,EAAOuC,OAAS,EACf,kBAAC,IAAMpC,SAAP,KACE,kBAACS,EAAA,EAAD,CAAK3C,QAAQ,OAAOuG,EAAG,EAAGC,MAAO,CAAEC,MAAO,SACxC,kBAAC9D,EAAA,EAAD,CAAKlD,SAAU,GACb,kBAAC8C,EAAA,EAAD,CAAYC,QAAQ,KAAKH,UAAWhD,EAAQ+B,aAA5C,mCAIF,kBAACuB,EAAA,EAAD,CAAK4D,EAAG,EAAGvG,QAAQ,OAAOC,WAAW,UACnC,kBAACuD,EAAA,EAAD,CAAMC,KAAK,IAAIC,QAASzB,GACtB,kBAAC,IAAD,CAAWyE,SAAS,SAASF,MAAO,CAAC3F,MAAO,gBAKlD,kBAAC8B,EAAA,EAAD,CACE3C,QAAQ,OACRE,eAAe,SACfyG,cAAc,SACdC,cAAc,SACdC,EAAG,EACHN,EAAG,EACHO,IAAK,CAAEL,MAAO,SAEd,kBAAClE,EAAA,EAAD,CAAYC,QAAQ,KAAKH,UAAWhD,EAAQgC,cACzCnC,EAAK6H,aAER,kBAACxE,EAAA,EAAD,CACEC,QAAQ,YACRH,UAAWhD,EAAQoC,mBAElBtC,EAAUD,EAAKwD,0BAGpB,kBAACsE,EAAA,EAAD,CAASxE,QAAQ,SAASH,UAAWhD,EAAQ4H,YAU7C,kBAACC,EAAA,EAAD,CAAM7E,UAAWhD,EAAQG,MACvB,kBAACmD,EAAA,EAAD,CACE3C,QAAQ,OACRE,eAAe,SACfyG,cAAc,SACdC,cAAc,SACdC,EAAG,EACHN,EAAG,EACHO,IAAK,CAAEL,MAAO,SAEb1E,EAAOoF,KAAI,SAACC,EAASC,GAAV,OACV,kBAACC,EAAA,EAAD,KACE,kBAACC,EAAA,EAAD,CACEC,IAAKH,EACLI,mBAAiB,EACjBC,QACE,kBAACnF,EAAA,EAAD,CACEoF,KAAK,QACLnB,MAAO,CAAE3F,MAAO,OAAQS,UAAW,WAElC8F,EAAQxC,OAGbgD,UACE,kBAACrF,EAAA,EAAD,CACEoF,KAAK,QACLnB,MAAO,CAAE3F,MAAO,QAASS,UAAW,WAEnC8F,EAAQ1C,gBAUzB,kBAACmD,EAAA,EAAD,U,gOC7VRC,G,kDACJ,WAAYC,GAAQ,IAAD,8BACjB,cAAMA,IAkBRC,cAAgB,SAACD,EAAOE,EAAQC,GAC9B,EAAKC,SAAS,CACZC,cAAeL,EACfM,aAAcJ,EACdK,mBAAmB,KAvBJ,EA0BnBC,WAAa,SAACR,GACR,EAAKS,MAAMF,mBACb,EAAKH,SAAS,CACZG,mBAAmB,EACnBD,aAAc,QA5BlB,EAAKG,MAAQ,CACXF,mBAAmB,EACnBD,aAAc,GACdD,cAAe,IAGjBjE,QAAQC,IAAI,gBACZD,QAAQC,IAAI,EAAK2D,OACjB5D,QAAQC,IAAI,EAAK2D,MAAMU,MAAMC,SAC7BvE,QAAQC,IAAI,EAAK2D,MAAMU,MAAME,UAE7BxE,QAAQC,IAAI,EAAK2D,MAAMU,MAAMA,OAG7B,EAAKT,cAAgB,EAAKA,cAAcY,KAAnB,gBACrB,EAAKL,WAAa,EAAKA,WAAWK,KAAhB,gBAjBD,E,qDAiFjB,OACI,yBAAKpC,MAAOqC,KAAKd,MAAMe,IAhCV,CACfrC,MAAO,QACPsC,OAAQ,QACRC,SAAU,UAGY,CACtBvC,MAAO,QACPsC,OAAQ,QACRC,SAAU,WAwBTH,KAAKd,MAAMe,IAAM,kBAACG,GAAA,EAAD,CAAQzC,MApBb,CACb0C,SAAU,WACVvJ,gBAAiB,YAmBb,kBAACwJ,GAAA,EAAD,KACE,kBAAC5G,EAAA,EAAD,CAAYC,QAAQ,KAAKgE,MAjBb,CAClB3F,MAAO,UAiBMgI,KAAKd,MAAMU,MAAMW,eAK5B,KAEE,kBAAC,MAAD,CACEC,eAjDe,CACrB5C,MAAO,QACPsC,OAAQ,SAgDF7J,MAAI,EACJoK,GAAI,GACJ9C,MAAOqC,KAAKd,MAAMe,IA7DZ,CACZrC,MAAO,QACPsC,OAAQ,QAEW,CACnBtC,MAAO,QACPsC,OAAQ,QAwDFQ,OAAQV,KAAKd,MAAMwB,OACnB7F,QAASmF,KAAKN,WACdiB,KAAM,GACNC,OAAO,OACPC,cAAe,CACbC,IAAKd,KAAKd,MAAMU,MAAMC,QACtBkB,IAAKf,KAAKd,MAAMU,MAAME,WAGxB,kBAAC,SAAD,CACEjF,QAASmF,KAAKb,cACd6B,MAAO,yBACPX,SAAU,CACRS,IAAKd,KAAKd,MAAMU,MAAMC,QACtBkB,IAAKf,KAAKd,MAAMU,MAAME,UAExBmB,KAAM,2BAER,kBAAC,aAAD,CACE7B,OAAQY,KAAKL,MAAMH,aACnB0B,QAASlB,KAAKL,MAAMF,mBAEpB,kBAAC0B,EAAA,EAAD,KACE,kBAACzH,EAAA,EAAD,CACE0H,UAAU,KACVzD,MAnDM,CAClB3F,MAAO,UACPU,WAAY,WAmDiBsH,KAAKd,MAAMU,MAAMW,aAEpC,kBAAC7G,EAAA,EAAD,CACE0H,UAAU,SAETpB,KAAKd,MAAMU,MAAMyB,mB,GAnIFvI,IAAMwI,WAgJzBC,+BAAiB,SAAArC,GAAK,MAAK,CACxCsC,OAnJ2B,6CAkJdD,CAEXtC,I,8DCtIEpG,GAAYpC,aAAW,SAACC,GAAD,MAAY,CACvCY,MAAO,CACLK,QAASjB,EAAMkB,QAAQ,GACvB6J,OAAQ,OACRC,SAAU,UAEZC,gBAAiB,CACf3J,MAAO,UACP6F,SAAU,MACV+D,YAAa,UACb3K,WAAY,MACZ4K,cAAe,OAEjBC,eAAgB,CACdlE,MAAO,QAETrF,YAAa,CACXP,MAAO,UACPC,WAAY,sBAEd8J,aAAc,CACZ/J,MAAO,UACPM,UAAW,UACXwF,cAAe,MACf+D,cAAe,GAEjBG,aAAc,CACZpE,MAAO,IACP9G,gBAAiB,eAEnBsH,UAAW,CACT6D,aAAc,GACdC,UAAW,IAEbC,MAAO,CACLrL,gBAAiB,SAEnBsL,QAAS,CACPlC,OAAQ,SAEVmC,WAAY,CACVvL,gBAAiB,UACjBqJ,SAAU,SACVD,OAAQ,SAEVoC,UAAW,CACTxL,gBAAiB,WAGnByL,aAAc,CACZvK,MAAO,UACPC,WAAY,sBAEduK,aAAc,CACZC,SAAU,OACVxL,WAAY,MACZ4K,cAAe,WASba,GAAa,SAAClH,EAAMmH,GAExB,OADArH,QAAQC,IAAIC,EAAKoH,WAAU,SAACC,GAAD,OAAaA,EAAQC,OAASH,OACU,IAA5DnH,EAAKoH,WAAU,SAACC,GAAD,OAAaA,EAAQC,OAASH,MAKvC,SAASI,GAAa1M,GAAO,IAAD,EACT0C,mBAAS,IADA,mBAClCiK,EADkC,KACxBC,EADwB,OAEOlK,mBAAS,IAFhB,mBAElCmK,EAFkC,KAEhBC,EAFgB,OAGTpK,mBAAS,IAHA,mBAGlCqK,EAHkC,KAGxBC,EAHwB,OAIOtK,mBAAS,IAJhB,mBAIlCuK,EAJkC,KAIhBC,EAJgB,OAKPxK,oBAAS,GALF,mBAKlCyK,EALkC,KAKvBC,EALuB,KAOnCnN,EAAYC,EAAQ,IA0S1B,SAASmN,EAAoBC,GAC3B,GAAmB,qBAARA,GAA+B,KAARA,EAChC,MAAO,GAEP,IACE,OAAOA,EACJC,cACAC,OACAC,MAAM,KACNC,QAAO,SAAC1N,GAAD,MAA0B,KAAhBA,EAAKwN,UACtBvF,KAAI,SAAC0F,GAAD,OAAOA,EAAE,GAAGC,cAAgBD,EAAEE,OAAO,MACzCC,KAAK,KACR,MAAOhI,GACPb,QAAQa,MAAM,gBACdb,QAAQa,MAAMA,IAlBpBiI,qBAAU,YAhSY,WACpB,IAAIC,EAAY,GACZC,EAAW,GACTC,EACJ,4EAA8ElO,EAAKuJ,MAAMA,MAAM,GAAG4E,KAAO,aAAenO,EAAKuJ,MAAMA,MAAM,GAAG3E,SAAW,YAAc5E,EAAKuJ,MAAMA,MAAM,GAAG6E,gBAG3LnJ,QAAQC,IAAIgJ,GAEZrJ,IACGC,IAAIoJ,EAAK,IACTnJ,MAAK,SAACC,GAkBL,GAZAgI,EAAY,IACZhI,EAASG,KAAK,GAAG8I,SAAShG,KAAI,SAACjI,GAE7BiO,EAAS1I,KAAK,CAAE8I,SAAUrO,EAAKyE,IAAK6J,UAAWtO,EAAKyE,SAEtDuI,EAAYiB,GAC8B,KAAtCjJ,EAASG,KAAK,GAAGoJ,iBACnBzB,EAAoB9M,EAAKuJ,MAAMA,MAAM,GAAGiF,iBAAiBC,QAAQ,KAAK,SAASA,QAAQ,KAAK,UAE5F3B,EAAoB9H,EAASG,KAAK,GAAGoJ,iBAAiBE,QAAQ,KAAK,SAASA,QAAQ,KAAK,UAGpD,OAAnCzJ,EAASG,KAAK,GAAGuJ,cAAwB,CAG7C,OAAQ1O,EAAKuJ,MAAMA,MAAM,GAAG3E,UAC1B,IAAK,MACCyH,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,UAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,UAEpCJ,GACErH,EAASG,KAAK,GAAGuJ,cACjB,4BAGFV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,4BAEpCJ,GACErH,EAASG,KAAK,GAAGuJ,cACjB,0BAGFV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,0BAEpCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,wBAE3CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,wBAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,QAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,QAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,QAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,QAEpCJ,GACErH,EAASG,KAAK,GAAGuJ,cACjB,uCAGFV,EAAUzI,KAAK,CACboJ,QAAS,EACTlC,MAAO,uCAGTJ,GACErH,EAASG,KAAK,GAAGuJ,cACjB,qCAGFV,EAAUzI,KAAK,CACboJ,QAAS,EACTlC,MAAO,qCAGTJ,GACErH,EAASG,KAAK,GAAGuJ,cACjB,wCAGFV,EAAUzI,KAAK,CACboJ,QAAS,EACTlC,MAAO,wCAGTJ,GACErH,EAASG,KAAK,GAAGuJ,cACjB,gCAGFV,EAAUzI,KAAK,CACboJ,QAAS,EACTlC,MAAO,gCAGTJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,uBAE3CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,uBAEpCJ,GACErH,EAASG,KAAK,GAAGuJ,cACjB,8BAGFV,EAAUzI,KAAK,CACboJ,QAAS,EACTlC,MAAO,8BAGTJ,GACErH,EAASG,KAAK,GAAGuJ,cACjB,0CAGFV,EAAUzI,KAAK,CACboJ,QAAS,EACTlC,MAAO,0CAGTJ,GACErH,EAASG,KAAK,GAAGuJ,cACjB,2CAGFV,EAAUzI,KAAK,CACboJ,QAAS,EACTlC,MAAO,2CAGTJ,GACErH,EAASG,KAAK,GAAGuJ,cACjB,kCAGFV,EAAUzI,KAAK,CACboJ,QAAS,EACTlC,MAAO,kCAEPJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,WAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,WACtC,MACF,IAAK,YACCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,aAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,aAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,mBAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,mBAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,qBAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,qBAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,UAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,UAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,WAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,WAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,YAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,YAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,YAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,YAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,YAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,YAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,mBAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,mBAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,aAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,aAEpCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,wBAE3CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,wBAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,qBAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,qBAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,kBAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,kBAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,iBAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,iBAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,aAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,aAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,WAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,UACtC,MAEF,QAEIJ,GACErH,EAASG,KAAK,GAAGuJ,cACjB,kCAGFV,EAAUzI,KAAK,CACboJ,QAAS,EACTlC,MAAO,kCAGTJ,GACErH,EAASG,KAAK,GAAGuJ,cACjB,wCAGFV,EAAUzI,KAAK,CACboJ,QAAS,EACTlC,MAAO,wCAEPJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,kBAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,kBAEpCJ,GACErH,EAASG,KAAK,GAAGuJ,cACjB,8BAGFV,EAAUzI,KAAK,CACboJ,QAAS,EACTlC,MAAO,8BAGTJ,GACErH,EAASG,KAAK,GAAGuJ,cACjB,6DAGFV,EAAUzI,KAAK,CACboJ,QAAS,EACTlC,MAAO,6DAGTJ,GACErH,EAASG,KAAK,GAAGuJ,cACjB,+BAGFV,EAAUzI,KAAK,CACboJ,QAAS,EACTlC,MAAO,+BAGTJ,GACErH,EAASG,KAAK,GAAGuJ,cACjB,0BAGFV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,0BAEpCJ,GACErH,EAASG,KAAK,GAAGuJ,cACjB,0BAGFV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,0BAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,yBAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,yBAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,iBAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,iBAEpCJ,GACErH,EAASG,KAAK,GAAGuJ,cACjB,iCAGFV,EAAUzI,KAAK,CACboJ,QAAS,EACTlC,MAAO,iCAEPJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,oBAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,oBAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,oBAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,oBAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,kBAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,kBAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,aAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,aAClCJ,GAAWrH,EAASG,KAAK,GAAGuJ,cAAe,oBAC7CV,EAAUzI,KAAK,CAAEoJ,QAAS,EAAGlC,MAAO,oBAI1CG,EAAYoB,GAEZd,EAAoBlI,EAASG,KAAK,GAAGuJ,eAGrCtB,GAAa,MAEdvH,OAAM,SAACC,GACNb,QAAQC,IAAIY,MAKhB8I,KACC,IAqBH,IAAMzO,EAAUqC,KAEhB,OACE,yBAAKW,UAAWhD,EAAQ2L,OACtB,kBAAC+C,GAAA,EAAD,CAAWxD,SAAS,MAClB,kBAAC5H,EAAA,EAAD,CAAK3C,QAAQ,OAAOuG,EAAG,EAAGC,MAAO,CAAEC,MAAO,SACxC,kBAAC9D,EAAA,EAAD,CAAKlD,SAAU,GACb,kBAAC8C,EAAA,EAAD,CAAYC,QAAQ,KAAKH,UAAWhD,EAAQ+B,aACzCmL,EAAoBrN,EAAKuJ,MAAMA,MAAM,GAAGW,cAE3C,kBAAC7G,EAAA,EAAD,CACEE,cAAY,EACZD,QAAQ,YACRH,UAAWhD,EAAQuL,cAEnB,kBAAC,IAAD,CACElE,SAAS,QACTrE,UAAWhD,EAAQuL,eAEpB2B,EAAoBrN,EAAKuJ,MAAMA,MAAM,GAAGyB,aAS7C,kBAACvH,EAAA,EAAD,CAAK4D,EAAG,EAAGvG,QAAQ,OAAOC,WAAW,UACnC,kBAACkC,EAAA,EAAD,CACEC,WAAS,EACTS,UAAU,SACVC,QAAQ,WACR7C,WAAW,YAEX,kBAACkC,EAAA,EAAD,CAAMjD,MAAI,GACV,kBAACsE,EAAA,EAAD,CAAMC,KAAK,IAAIC,QA/VP,WAClBxE,EAAKwE,YA+Va,kBAAC,IAAD,CAAWgD,SAAS,SAASF,MAAO,CAAC3F,MAAO,eAGpD,kBAACsB,EAAA,EAAD,CAAMjD,MAAI,GACiC,KAAxCA,EAAKuJ,MAAMA,MAAM,GAAGuF,kBACmB,KAAxC9O,EAAKuJ,MAAMA,MAAM,GAAGuF,kBACoB,KAAxC9O,EAAKuJ,MAAMA,MAAM,GAAGuF,kBACoB,KAAxC9O,EAAKuJ,MAAMA,MAAM,GAAGuF,kBACoB,KAAxC9O,EAAKuJ,MAAMA,MAAM,GAAGuF,iBAClB,8BAEA,kBAACC,EAAA,EAAD,CACEnE,KAAK,aACLoE,MAAOC,SAASjP,EAAKuJ,MAAMA,MAAM,GAAGuF,kBACpCzI,KAAK,QACL6I,UAAU,EACVC,UAAW,kBAAC,IAAD,CAAgB3H,SAAS,eAQzCxH,EAAKuJ,MAAMA,MAAM,GAAG6F,UACnB,kBAAC,IAAMpM,SAAP,KACE,kBAACC,EAAA,EAAD,CAAMjD,MAAI,GACR,kBAACmG,EAAA,EAAD,CACEE,KAAK,QACL/C,QAAQ,WACRH,UAAWhD,EAAQmL,iBAHrB,kBAKkB,IAChB,kBAAC,KAAD,CACEhE,MAAO,CACL3F,MAAO,WACPhB,YAAa,MACb6G,SAAU,aAYpB,iCAMR,kBAACvE,EAAA,EAAD,CAAMC,WAAS,EAAC3B,QAAS,GACvB,kBAAC0B,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,GAAIhH,GAAI,GAAIiM,GAAI,IAEc,MAAxCrP,EAAKuJ,MAAMA,MAAM,GAAGiF,iBACjB,qBACAvO,EAAU4M,IAGlB,kBAAC5J,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,GAAIhH,GAAI,GAAIiM,GAAI,IAC7B,kBAACvH,EAAA,EAAD,CAASxE,QAAQ,SAASH,UAAWhD,EAAQ4H,aAE/C,kBAAC9E,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,EAAGhH,GAAI,EAAGiM,GAAI,GAC3B,yBAAKlM,UAAWhD,EAAQ6L,YACtB,kBAAC,IAAD,CACEsD,MAAOvC,EACP5J,UAAWhD,EAAQ4L,QACnBwD,SAAS,WAIf,kBAACtM,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,EAAGhH,GAAI,EAAGiM,GAAI,GAC3B,kBAACG,GAAD,CACEjG,MAAOvJ,EAAKuJ,MAAMA,MAAM,GACxBK,KAAK,MAKX,kBAAC9B,EAAA,EAAD,CAASxE,QAAQ,SAASH,UAAWhD,EAAQ4H,YAC5CoF,GACC,kBAAC,IAAMnK,SAAP,KACE,kBAACS,EAAA,EAAD,CACE3C,QAAQ,OACRE,eAAe,SACfyG,cAAc,SACdE,EAAG,EACHN,EAAG,EACHO,IAAK,CAAEL,MAAO,SAEd,kBAACoB,EAAA,EAAD,CACErB,MAAO,CAAE3F,MAAO,WAAYL,QAAS,OAAQ8J,OAAQ,WAGzD,kBAACtD,EAAA,EAAD,CAASxE,QAAQ,SAASH,UAAWhD,EAAQ4H,aAGhD4E,EAASvH,OAAS,GAAK6H,EAAiB7H,OAAS,EAChD,kBAAC,IAAMpC,SAAP,KACE,kBAACK,EAAA,EAAD,CACEC,QAAQ,KACRH,UAAWhD,EAAQ+B,YACnBoF,MAAO,CAAEkE,cAAe,OAAQnJ,WAAY,SAH9C,yBAOA,kBAACY,EAAA,EAAD,CAAMC,WAAS,EAACC,UAAWhD,EAAQG,KAAMiB,QAAS,GAChD,kBAAC0B,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IACb,kBAACnH,EAAA,EAAD,CAAMC,WAAS,EAACU,QAAQ,SAASrC,QAAS,GACvC,CAAC,EAAG,EAAG,GAAG0G,KAAI,SAACwH,GAAD,OACb,kBAACxM,EAAA,EAAD,CAAMqF,IAAKmH,EAAQzP,MAAI,GACrB,kBAAC8K,EAAA,EAAD,CAAO3H,UAAWhD,EAAQwL,aAAc+D,UAAW,GAChD/C,EACEe,QAAO,SAACiC,GAAD,OAAOA,EAAEhB,UAAYc,KAC5BxH,KAAI,SAAC+G,EAAO7G,GAAR,OACH,kBAAC,IAAMnF,SAAP,KACE,kBAACK,EAAA,EAAD,CACEC,QAAQ,QACRH,UAAWhD,EAAQ+L,aACnB5E,MAAO,CAAE1G,WAAY,SAEpBoO,EAAMvC,OAET,kBAACzE,EAAA,EAAD,CAAM4H,MAAM,OAAOpE,cAAc,MAC9ByB,EAAiBS,QAChB,SAACiC,GAAD,OAAOA,EAAElD,QAAUuC,EAAMvC,SACzBxE,KAAI,SAACjI,EAAMmI,GAAP,OACJ,kBAACC,EAAA,EAAD,KACE,kBAACyH,GAAA,EAAD,CACE1M,UAAWhD,EAAQgM,cAEnB,kBAAC,KAAD,CACE3E,SAAS,QACTF,MAAO,CAAE3F,MAAO,cAGpB,kBAAC0G,EAAA,EAAD,CAAcG,QAASxI,EAAKyF,gCAapD,OCnkBZ,IAAMjD,GAAYpC,aAAW,SAACC,GAAD,MAAY,CACvCC,KAAM,CACJ+K,SAAU,KACV/J,QAAS,EACTsK,aAAc,KACdC,UAAW,EACXiE,WAAY,EACZC,YAAa,EACbC,YAAa,QACbC,YAAa,MACb1E,YAAa,WAEf2E,cAAe,CACb7E,SAAU,KACV/J,QAAS,EACTsK,aAAc,KACdC,UAAW,EACXiE,WAAY,EACZC,YAAa,EACbC,YAAa,QACbC,YAAa,MACb1E,YAAa,WAEfD,gBAAiB,CACf3J,MAAO,UACP6F,SAAU,MACV+D,YAAa,UACb3K,WAAY,MACZ4K,cAAe,OAEjB2E,UAAW,CACT7O,QAAS,EACT8J,OAAQ,EACR,eAAgB,CACdI,cAAe,IAGnB4E,gBAAiB,CACf9O,QAAS,EACT8J,OAAQ,EACR3K,gBAAiB,WAEnB4P,iBAAkB,CAChBzP,WAAY,KACZD,YAAa,KACb2P,aAAc,MAEhBC,UAAW,CACT3P,WAAY,OACZ0P,aAAc,KACd9E,cAAe,GAEjBgF,eAAgB,CACdjQ,SAAU,EACVK,WAAY,MACZ4K,cAAe,KACf7H,UAAW,MACXC,QAAS,SACT7C,WAAY,UAEd0P,eAAgB,CACdjF,cAAe,OACf/K,gBAAiB,SAEnBiQ,yBAA0B,CACxBlF,cAAe,OACf/K,gBAAiB,WAEnBkQ,WAAY,CACVnF,cAAe,MAEjBtJ,YAAa,CACXP,MAAO,UAEPC,WAAY,sBAGd8J,aAAc,CACZ/J,MAAO,UACPM,UAAW,UACXwF,cAAe,MACf+D,cAAe,GAEjBoF,iBAAkB,CAChB9P,QAAS,OACTC,WAAY,SACZH,WAAY,KACZD,YAAa,KACb2P,aAAc,KACd9E,cAAe,KACfqF,QAAS,KACThH,OAAQ,GACRlI,MAAO,WAETmP,OAAQ,CACN9G,SAAU,WACVvJ,gBAAiB,WAEnBkK,MAAO,CACLmF,WAAY,GACZiB,KAAM,GAERC,SAAU,CACRrP,MAAO,UACP6F,SAAU,OAEZyJ,QAAS,CACPzJ,SAAU,MACV/G,gBAAiB,WAEnBI,MAAO,CACLC,QAAS,OACTC,WAAY,SACZC,eAAgB,SAChB8I,SAAS,UAEXtI,iBAAkB,CAChBf,gBAAiB,QACjBgB,OAAQ,oBACRL,UAAWf,EAAMgB,QAAQ,GACzBC,QAASjB,EAAMkB,QAAQ,EAAG,EAAG,GAC7BgG,MAAO,WAWQ9E,IAAMyO,YAAW,SAAoBrI,EAAOsI,GAC7D,OAAO,kBAACC,EAAA,EAAD,eAAOzN,UAAU,KAAKwN,IAAKA,GAAStI,OAG9B,SAASwI,GAAUnJ,EAASC,GACzC,IAAMhI,EAAUqC,KAD4B,EAEZC,IAAMC,UAAS,GAFH,mBAErC4O,EAFqC,KAE3BC,EAF2B,OAGpB9O,IAAMC,UAAS,GAHK,mBAGrCC,EAHqC,KAG/BC,EAH+B,OAINH,IAAMC,UAAS,GAJT,mBAKtCrC,GALsC,UAK9BmR,eAERvR,GADawR,YAAcpR,EAAMqR,YAAYC,KAAK,OACtCzR,EAAQ,KAGpB0R,EAAoB,WACxBL,GAAaD,IAcf,SAASO,EAAYnE,EAAQnE,GAC3B,IAAIuI,EAAO,EAgCX,OA/BiB5J,EAAQqB,MAAMtB,KAAI,SAAUjI,GAE3C,GADA8R,GAAc,IACVpE,GAAUoE,EApBL,GAqBF,CACL,IAAIrL,EAAiB,WAIrB,MAH6B,UAAvByB,EAAQ6J,YAAiD,OAAvB7J,EAAQ6J,aAC5CtL,EAAiB,aAInB,kBAAC1G,EAAD,CACEuI,IAAKwJ,EACLtN,QAASwN,EACTtR,GAAIoR,EAAO,IAAM,EAAI,UAAY,UACjCjK,YAAa7H,EAAKiS,OAClBzO,uBAAwBxD,EAAKkS,cAC7BxO,QAAS1D,EAAKmS,mBACdlM,WAAYjG,EAAKoS,aACjBzN,cAAe3E,EAAKqS,cACpBzN,SAAU5E,EAAKgR,SACftM,aAAc1E,EAAKsS,aACnB/L,cAAevG,EAAKuS,OAAO,IAAIvS,EAAKgR,SACpCjL,OAAQ/F,EAAKwS,cACbC,SAAUzS,EAAK0S,UACfrO,YAAarE,EAAK2S,aAClBnM,MAAOxG,EAAKwG,MACZC,eAAgBA,QAvC1BhE,IAAMsL,WAAU,WACd,IAAM6E,EAAOC,kBACX,2DACAC,SAASC,cAAc,sBAGzB,OAAO,WACLH,EAAKI,WAAWC,YAAYL,MAE7B,IAuGH,IAAMZ,EAAe,SACnBzL,EACA5B,EACAC,EACAF,EACA8B,GAEAvB,QAAQC,IAAI,0BACZD,QAAQC,IACNqB,EAAgB,IAAM5B,EAAgB,IAAMC,EAAW,IAAMF,EAAc,IAAM8B,GAEnF0B,EAAQ1D,QACN+B,EACA5B,EACAC,EACAF,EACAwD,EAAQgL,KACR1M,IAQEzD,EAAc,WAClBH,GAAQ,IAmBV,OACE,kBAAC,IAAMI,SAAP,KACE,kBAACmQ,EAAA,EAAD,CACEhQ,UAAWhD,EAAQG,MAEnB,kBAAC8S,EAAA,EAAD,CAAajQ,UAAWhD,EAAQgQ,WAC9B,kBAAClN,EAAA,EAAD,CACEC,WAAS,EACT3B,QAAS,EACT4B,UAAWhD,EAAQsQ,gBAEnB,kBAACxN,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,EAAGjH,UAAWhD,EAAQwQ,YACnC,kBAAC7F,EAAA,EAAD,CAAO3H,UAAWhD,EAAQc,OACxB,kBAACoS,EAAA,EAAD,CACEtI,UAAU,MACVuI,IAAKpL,EAAQqB,MAAM,GAAG0I,OACtBpI,OAAO,MACP0J,MAC8B,MAA5BrL,EAAQqB,MAAM,GAAGiK,QACb,iBACAtL,EAAQqB,MAAM,GAAGiK,QAEvB7I,MAAOzC,EAAQqB,MAAM,GAAG0I,WAI9B,kBAAChP,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,EAAGjH,UAAWhD,EAAQkQ,kBACnC,kBAACpN,EAAA,EAAD,CAAMC,WAAS,EAAC3B,QAAS,EAAG4B,UAAWhD,EAAQoQ,WAC7C,kBAACtN,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IACb,kBAAC/G,EAAA,EAAD,CAAYC,QAAQ,KAAKH,UAAWhD,EAAQ+B,aAEvC,IACAgG,EAAQqB,MAAM,GAAG0I,QAKpB,kBAACxO,EAAA,EAAD,CAAK3C,QAAQ,OAAOC,WAAW,UAC7B,kBAAC0C,EAAA,EAAD,KACE,kBAAC,IAAD,CACE+D,SAAS,QACTrE,UAAWhD,EAAQuL,gBAGvB,kBAACjI,EAAA,EAAD,KACE,kBAACJ,EAAA,EAAD,CACEC,QAAQ,QACRH,UAAWhD,EAAQuL,cAElBxD,EAAQqB,MAAM,GAAGkK,cAInB,2BAAOnM,MAAO,CAAE3F,MAAO,QAAS6F,SAAU,SACxCU,EAAQqB,MAAM,GAAGyH,SADnB,IAEE9I,EAAQqB,MAAM,GAAGgJ,aAuC9B,kBAAC9O,EAAA,EAAD,CAAKN,UAAWhD,EAAQyQ,kBACtB,kBAACvN,EAAA,EAAD,CAAYC,QAAQ,SACe,MAAhC4E,EAAQqB,MAAM,GAAGmK,YAChB,qBACExL,EAAQqB,MAAM,GAAGmK,YAAYtO,OAAS,IACxC,kBAAC,IAAMpC,SAAP,KACG/C,EAAUiI,EAAQqB,MAAM,GAAGmK,YAAY1P,UAAU,EAAG,MAAO,IAC5D,kBAACM,EAAA,EAAD,CAAMC,KAAK,IAAKC,QA7HjB,WACf5B,GAAQ,IA4H8C0E,MAAO,CAACjF,WAAY,SAA1D,6BAKFpC,EAAUiI,EAAQqB,MAAM,GAAGmK,iBAMpCpC,EAAW,GAAKO,GAAY,EAAM3J,EAAQqB,MAAM,GAAG0I,SAEtD,kBAAC0B,EAAA,EAAD,CAAUvM,GAAIkK,EAAUpK,QAAQ,OAAO0M,eAAa,GACjD/B,GAAY,EAAO3J,EAAQqB,MAAM,GAAG0I,SAEtC/J,EAAQqB,MAAMnE,OAvRR,EAwRL,kBAACyO,EAAA,EAAD,CAAa1Q,UAAWhD,EAAQiQ,iBAC9B,yBAAK9I,MAAO,CAAEC,MAAO,SAClB+J,EACC,kBAAC,IAAMtO,SAAP,KACE,kBAACS,EAAA,EAAD,CACE3C,QAAQ,OACRE,eAAe,SACfD,WAAW,UAEX,kBAAC0C,EAAA,EAAD,KACE,kBAACqQ,EAAA,EAAD,CACE3Q,UAAW4Q,kBAAK5T,EAAQ6T,OAAT,eACZ7T,EAAQ8T,WAAa3C,IAExB9M,QAASoN,EACTsC,gBAAe5C,EACf6C,aAAW,aAEX,kBAAC9Q,EAAA,EAAD,CAAYC,QAAQ,SAApB,6BAMJ,kBAACG,EAAA,EAAD,KACE,kBAAC2Q,EAAA,EAAD,CACEjR,UAAU,qBACVqE,SAAS,QACTF,MAAO,CAAE3F,MAAO,gBAMxB,kBAAC,IAAMqB,SAAP,KACE,kBAACS,EAAA,EAAD,CACE3C,QAAQ,OACRE,eAAe,SACfD,WAAW,UAEX,kBAAC0C,EAAA,EAAD,KACE,kBAACqQ,EAAA,EAAD,CACE3Q,UAAW4Q,kBAAK5T,EAAQ6T,OAAT,eACZ7T,EAAQ8T,WAAa3C,IAExB9M,QAASoN,EACTsC,gBAAe5C,EACf6C,aAAW,aAEX,kBAAC9Q,EAAA,EAAD,CAAYC,QAAQ,SAApB,sBAKJ,kBAACG,EAAA,EAAD,KACE,kBAAC2Q,EAAA,EAAD,CACEjR,UAAU,oBACVqE,SAAS,QACTF,MAAO,CAAE3F,MAAO,kBAS9B,IAgCV,kBAAC+E,EAAA,EAAD,CACQC,kBAAgB,yBAChBC,mBAAiB,+BACjBzD,UAAWhD,EAAQU,MACnB8B,KAAMA,EACNkE,QAAS9D,EACT+D,sBAAoB,EACpBC,kBAAmBC,IACnBC,cAAe,CACbC,QAAS,MAGX,kBAACC,EAAA,EAAD,CAAMC,GAAIzE,GACR,yBAAKQ,UAAWhD,EAAQqB,kBACpB,kBAAC,IAAMwB,SAAP,KACE,kBAACS,EAAA,EAAD,CAAK3C,QAAQ,OAAOuG,EAAG,EAAGC,MAAO,CAAEC,MAAO,SACxC,kBAAC9D,EAAA,EAAD,CAAKlD,SAAU,GACb,kBAAC8C,EAAA,EAAD,CAAYC,QAAQ,KAAKH,UAAWhD,EAAQgC,cAA5C,gCAIF,kBAACsB,EAAA,EAAD,CAAK4D,EAAG,EAAGvG,QAAQ,OAAOC,WAAW,UACnC,kBAACuD,EAAA,EAAD,CAAMC,KAAK,IAAIC,QAASzB,GACtB,kBAAC,IAAD,CAAWyE,SAAS,SAASF,MAAO,CAAC3F,MAAO,gBAKlD,kBAAC8B,EAAA,EAAD,CACE3C,QAAQ,OACRE,eAAe,SACfyG,cAAc,SACdC,cAAc,SACdC,EAAG,EACHN,EAAG,EACHO,IAAK,CAAEL,MAAO,SAEd,kBAAClE,EAAA,EAAD,CAAYC,QAAQ,KAAKH,UAAWhD,EAAQ+B,aACzCgG,EAAQqB,MAAM,GAAG0I,QAEpB,kBAACnK,EAAA,EAAD,CAASxE,QAAQ,SAASH,UAAWhD,EAAQ4H,YAC7C,kBAAC1E,EAAA,EAAD,CACEC,QAAQ,YACRH,UAAWhD,EAAQoC,mBAElBtC,EAAUiI,EAAQqB,MAAM,GAAGmK,oB,0JCpkB1ClR,GAAYpC,aAAW,SAACC,GAAD,MAAY,CACvCC,KAAM,CACJ+K,SAAU,KACV/J,QAAS,EACT8J,OAAQ,GAEVvK,MAAO,CACLC,QAAS,OACTC,WAAY,SACZC,eAAgB,UAElBqT,SAAU,CACRhJ,SAAU,IACV5K,gBAAiB,SAEnB6T,aAAc,CACZ1T,WAAY,OAEdK,MAAO,CACLK,QAASjB,EAAMkB,QAAQ,GACvBa,UAAW,UAEbmS,YAAa,CACXnJ,OAAQ/K,EAAMkB,QAAQ,GACtB6K,SAAU,KAEZoI,YAAa,CACX3I,UAAWxL,EAAMkB,QAAQ,IAE3BkT,UAAW,CACT7T,WAAY,MACZ4K,cAAe,MACf7K,YAAa,MACb2P,aAAc,OAEhBoE,SAAU,CACR,YAAa,CACX9T,WAAY,MACZH,gBAAiB,QAGrBkU,WAAY,CACV7E,WAAY,MACZC,YAAa,MACbxI,MAAO,OACP9G,gBAAiB,WAEnBmU,UAAW,CACTvJ,SAAU,aAIC,SAASwJ,GAAMhM,GAC5B,IAAM1I,EAAUqC,KADmB,EAEHC,IAAMC,WAFH,mBAE5BoS,EAF4B,KAElBC,EAFkB,OAGPtS,IAAMC,WAHC,mBAG5BsS,EAH4B,KAGpBC,EAHoB,OAIHxS,IAAMC,UAAS,GAJZ,mBAI5BwS,EAJ4B,KAIlBC,EAJkB,OAKG1S,IAAMC,UAAS,GALlB,mBAKf0S,GALe,aAMS3S,IAAMC,SAAS,IANxB,mBAM5B2S,EAN4B,KAMZC,EANY,OAOO7S,IAAMC,SAAS,IAPtB,mBAO5B6S,EAP4B,KAObC,EAPa,OAQC/S,IAAMC,SAAS,IARhB,mBAQ5B+S,EAR4B,KAQhBC,EARgB,OASGjT,IAAMC,SAAS,IATlB,mBAS5BiT,EAT4B,aAUGlT,IAAMC,UAAS,IAVlB,mBAU5BkT,EAV4B,KAUfC,EAVe,OAWSpT,IAAMC,SAAS,IAXxB,mBAW5BoT,EAX4B,KAWZC,EAXY,OAYatT,IAAMC,SAAS,UAZ5B,mBAY5BsT,EAZ4B,aAaCvT,IAAMC,UAAS,IAbhB,oBAa5BuT,GAb4B,MAahBC,GAbgB,SAcGzT,IAAMC,UAAS,GAdlB,qBAc5ByT,GAd4B,MAcfC,GAde,SAeS3T,IAAMC,SAAS,IAfxB,qBAe5B2T,GAf4B,MAeZC,GAfY,SAgBH7T,IAAMC,SAAS,IAhBZ,qBAgB5B6T,GAhB4B,MAgBlBC,GAhBkB,SAiBT/T,IAAMC,SAAS,IAjBN,qBAiB5B+T,GAjB4B,MAiBrBC,GAjBqB,SAkBLjU,IAAMC,SAAS,IAlBV,qBAkB5BiU,GAlB4B,MAkBnBC,GAlBmB,SAmBOlU,oBAAS,GAnBhB,qBAmB5BmU,GAnB4B,MAmBbC,GAnBa,SAoBSpU,mBAAS,IApBlB,qBAoB5BqU,GApB4B,MAoBZC,GApBY,SAqBatU,mBAAS,IArBtB,qBAqB5BuU,GArB4B,MAqBVC,GArBU,MAwBnCnJ,qBAAU,WACR,IAAIoJ,GAAU,EAqBd,OApBIN,KAQEM,GAPe,IAAflB,KAEmB,KAAnBI,IACa,KAAbE,IACU,KAAVE,KACAN,OAOe,IAAbjB,IAAqBiB,KAOrBtN,EAAMkJ,YACZ,IAAK,QACHiF,GAAkB,2FAClBE,GAAoB,oDACpB,MACF,IAAK,KACHF,GAAkB,iEAClBE,GAAoB,6CACpB,MACF,QACEF,GAAkB,iEACpBE,GAAoB,sDAWtB9B,EAAe+B,GACf,IAAIC,EAAQ,CACV/B,eAAgBA,EAChBE,cAAeA,EACfc,eAAgBA,GAChBE,SAAUA,GACVE,MAAOA,GACPE,QAASA,GACTzB,SAAUiC,EACVE,WAAYrB,EACZsB,WAAYrB,IAEdpN,EAAM0O,SAASH,KACd,CACD/B,EACAE,EACAc,GACAE,GACAE,GACAR,GACAE,GACAH,EACAa,KAGF9I,qBAAU,WACRyJ,OACC,IAIH,IAAMA,GAAe,WAEnB3S,IACGC,IAFS,6DAEA,CACR2S,QAAS,CACP,8BAA+B,OAGlC1S,MAAK,SAACC,GAGL+P,EAAY/P,EAASG,SAEtBU,OAAM,SAACC,GACNb,QAAQC,IAAIY,OA4DZ4R,GAAUC,iBAAO,MAqBjBC,GAAwB,SAACC,GAC7BhC,GAAe,GACfH,EAAcmC,EAAMC,OAAO9I,QAGvB+I,GAAuB,SAACF,GAC5BrC,EAAiBqC,EAAMC,OAAO9I,QA+BhC,OACE,yBAAK7L,UAAWhD,EAAQG,MACtB,kBAACmD,EAAA,EAAD,CACE3C,QAAQ,OACRE,eAAe,SACf2G,EAAG,EACHN,EAAG,EACH2Q,QAAQ,oBAER,kBAACvU,EAAA,EAAD,CAAK4D,EAAG,GACN,kBAACpE,EAAA,EAAD,CACEC,WAAS,EACT3B,QAAS,EACToC,UAAU,MACVR,UAAWhD,EAAQyU,UACnBhR,QAAQ,SACR7C,WAAW,UAEa,UAArB8H,EAAMkJ,YAA+C,OAArBlJ,EAAMkJ,WACzC,kBAAC9O,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IACb,kBAACU,EAAA,EAAD,CAAO4E,UAAW,EAAGvM,UAAWhD,EAAQc,OACtC,kBAACgX,GAAA,EAAD,CAAalN,UAAU,YACrB,kBAACmN,GAAA,EAAD,CAAW/D,aAAW,WAAWgE,KAAG,GAClC,kBAACC,GAAA,EAAD,CACEpJ,MAAM,UACNqJ,QACE,kBAACC,GAAA,EAAD,CACE3W,MAAM,UACN4W,QAAStC,GACTsB,SAzDU,SAACM,GACjC3B,GAAc2B,EAAMC,OAAOS,YA2DTC,MAAM,wCACNC,eAAe,QACf9W,MAAM,gBAMR,mCAePsU,KAAef,EACd,kBAAC,IAAMlS,SAAP,KACE,kBAACC,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IAEb,kBAACsO,GAAA,EAAD,CACEC,GAAG,mBACHC,UAAQ,EACRC,iBAAiB,QACjBC,QAAShE,EACT9F,MAAOqG,EACP0D,aAAc,CAAC,IACfxB,SAAU,SAACM,EAAOmB,GAChB1D,EAAkB0D,IAEpB7Y,QAAS,CACP8Y,OAAQ9Y,EAAQ8Y,QAElBC,eAAgB,SAACD,GAAD,OAAYA,EAAOE,QACnCC,aAAc,SAACH,GAAD,OACZ,kBAAC,IAAMjW,SAAP,KACE,0BAAMsE,MAAO,CAAEE,SAAU,SACtByR,EAAOE,UAIdE,YAAa,SAACC,GAAD,OACX,kBAACC,GAAA,EAAD,iBACMD,EADN,CAEEhS,MAAO,CAAE7G,gBAAiB,SAC1B+X,MAAM,2BACNpN,OAAO,QACP4D,MAAOyG,EACPtS,UAAWhD,EAAQqZ,MACnBjC,SAAUK,GACVtU,QAAQ,WACRmW,WAAU,6BAAOH,EAAOG,YAAd,IAA0BhR,KAAM,WAC1CpC,KAAK,eAOb,kBAACpD,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,GAEb,kBAACmP,GAAA,EAAD,CACEjS,MAAO,CAAE7G,gBAAiB,SAC1B+X,MAAM,gBACN/P,KAAK,WACL2C,OAAO,QACP4D,MAAO8G,EACP3S,UAAWhD,EAAQqZ,MACnBE,WAAY,CAAE,aAAc,gBAC5BnC,SA1Jc,SAACM,GAC/BhC,GAAe,GACfE,EAAkB8B,EAAMC,OAAO9I,QAyJf1L,QAAQ,WACR+C,KAAK,WAIT,kBAACpD,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,EAAG9C,MAAO,CAAEqS,MAAO,WAEhC,kBAACxT,EAAA,EAAD,CACE7C,QAAQ,YACR+C,KAAK,SACL1E,MAAM,UACNwB,UAAWhD,EAAQwU,WACnBnQ,QAvNE,WAClByQ,EAAU,IACV,IAAMxQ,EACJ,4DACAqR,EACA,WACAT,EAAe8D,OACjBtU,IACGC,IAAIL,EAAK,CACRgT,QAAS,CACP,8BAA+B,OAGlC1S,MAAK,SAACC,GACLmQ,GAAY,GACZlQ,QAAQC,IAAI,QACZD,QAAQC,IAAIF,EAASG,MACjBH,EAASG,KAAKC,OAAS,GACrBJ,EAASG,KAAK,GAAG8M,SAAWoD,EAAe8D,QAC7ChE,GAAY,GACZU,GAAe,GAxCJ,WACnB,IAAMpR,EACJ,6DACA4Q,EAAe8D,OACjBtU,IACGC,IAAIL,EAAK,CACRgT,QAAS,CACP,8BAA+B,OAGlC1S,MAAK,SAACC,GAGLiQ,EAAUjQ,EAASG,SAEpBU,OAAM,SAACC,GACNb,QAAQC,IAAIY,MAyBR8T,KAMF/D,GAAe,GACfV,GAAY,OAGftP,OAAM,SAACC,GACNb,QAAQC,IAAIY,QAkLF,UAWD8P,EACC,kBAAC3S,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IACb,kBAACyP,GAAA,EAAD,CAAOC,SAAS,SACd,kBAACC,GAAA,EAAD,cADF,+BAMF,IAIJ,GAED9D,IAAcf,EACb,kBAAC,IAAMlS,SAAP,KACE,kBAACC,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,GAAI9C,MAAO,CAAEqS,MAAO,WACjC,kBAAC7O,EAAA,EAAD,CAAO4E,UAAU,IAAIvM,UAAWhD,EAAQc,OACtC,kBAACoC,EAAA,EAAD,CAAYC,QAAQ,KAAKC,cAAY,GAClC8R,EAAe8D,QAElB,kBAACT,GAAA,EAAD,CACEC,GAAG,mBACHqB,MAAM,QACNpB,UAAQ,EACRC,iBAAiB,QACjBC,QAAS9D,EACThG,MAAOuG,EACPgC,SAAU,SAACM,EAAOmB,GAChBxD,EAAiBwD,GACjB7D,GAAY,IAEdhV,QAAS,CACP8Y,OAAQ9Y,EAAQ8Y,QAElBC,eAAgB,SAACD,GAAD,OAAYA,EAAOE,QACnCC,aAAc,SAACH,GAAD,OACZ,kBAAC,IAAMjW,SAAP,KACE,0BAAMsE,MAAO,CAAEE,SAAU,SACtByR,EAAOE,UAIdE,YAAa,SAACC,GAAD,OACX,kBAACC,GAAA,EAAD,iBACMD,EADN,CAEEhS,MAAO,CAAE7G,gBAAiB,SAC1B+X,MAAM,oBACNpN,OAAO,QACP4D,MAAO2G,EACPxS,UAAWhD,EAAQqZ,MACnBjC,SAAUQ,GACVzU,QAAQ,WACRmW,WAAU,6BAAOH,EAAOG,YAAd,IAA0BhR,KAAM,WAC1CpC,KAAK,iBAOd4P,GA6DH,GA5DA,kBAAC,IAAMjT,SAAP,KACE,kBAACC,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IACb,kBAACmP,GAAA,EAAD,CACEjS,MAAO,CAAE7G,gBAAiB,QAAS8G,MAAO,QAC1CiR,MAAM,oBACNpN,OAAO,QACP4D,MAAOqH,GACPlT,UAAWhD,EAAQqZ,MACnBE,WAAY,CAAE,aAAc,qBAC5BnC,SA1NoB,SAACM,GACrCvB,GAAkBuB,EAAMC,OAAO9I,QA0Nf1L,QAAQ,WACR+C,KAAK,WAGT,kBAACpD,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,GACb,kBAACmP,GAAA,EAAD,CACEjS,MAAO,CAAE7G,gBAAiB,SAC1B+X,MAAM,cACNpN,OAAO,QACP3C,KAAK,MACLuG,MAAOuH,GACPpT,UAAWhD,EAAQqZ,MACnBE,WAAY,CAAE,aAAc,eAC5BnC,SApOc,SAACM,GAC/BrB,GAAYqB,EAAMC,OAAO9I,QAoOT1L,QAAQ,WACR+C,KAAK,WAGT,kBAACpD,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,GACb,kBAACmP,GAAA,EAAD,CACEjS,MAAO,CAAE7G,gBAAiB,SAC1B+X,MAAM,QACN/P,KAAK,QACL2C,OAAO,QACP4D,MAAOyH,GACPtT,UAAWhD,EAAQqZ,MACnBE,WAAY,CAAE,aAAc,SAC5BnC,SA9OW,SAACM,GAC5BnB,GAASmB,EAAMC,OAAO9I,QA8ON1L,QAAQ,WACR+C,KAAK,WAGT,kBAACpD,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IACb,kBAACmP,GAAA,EAAD,CACEjS,MAAO,CAAE7G,gBAAiB,QAAS8G,MAAO,QAC1C0S,KAAM,EACNzB,MAAM,UACNjR,MAAM,OACN2S,WAAW,EACX9O,OAAO,QACP4D,MAAO2H,GACPxT,UAAWhD,EAAQqZ,MACnBE,WAAY,CAAE,aAAc,WAC5BnC,SA1Pa,SAACM,GAC9BjB,GAAWiB,EAAMC,OAAO9I,QA0PR1L,QAAQ,WACR+C,KAAK,eAUnB,kBAAC5C,EAAA,EAAD,CACE3C,QAAQ,OACRE,eAAe,SACf2G,EAAG,EACHN,EAAG,EACHO,IAAK,CAAEL,MAAO,SAEd,kBAAC0Q,GAAA,EAAD,CAAalN,UAAU,YACrB,kBAACmN,GAAA,EAAD,CAAW/D,aAAW,WAAWgE,KAAG,GAClC,kBAACC,GAAA,EAAD,CACEpJ,MAAM,UACNqJ,QACE,kBAAC8B,GAAA,EAAD,CACExY,MAAM,UACN4W,QAASpC,GACToB,SArSmB,SAACM,GAClCzB,GAAeyB,EAAMC,OAAOS,YAuSlBC,MACE,kBAAClU,EAAA,EAAD,CAAMC,KAAMwS,GAAgBe,OAAO,UAChCb,IAGLwB,eAAe,QACf9W,MAAM,eAKZ,kBAAC8B,EAAA,EAAD,CACE3C,QAAQ,OACRE,eAAe,SACf2G,EAAG,EACHN,EAAG,EACHO,IAAK,CAAEL,MAAO,SAEd,kBAAC0Q,GAAA,EAAD,CAAalN,UAAU,YACrB,kBAACmN,GAAA,EAAD,CAAW/D,aAAW,WAAWgE,KAAG,GAClC,kBAAC,KAAD,CACE7P,IAAI,UACJ6I,IAAKuG,GACL0C,QAAQ,2CACR7C,SAhWY,WACpBG,GAAQ2C,QAAQC,YAClBxD,IAAiB,UCrPvB,IAAMtU,GAAYpC,aAAW,SAACC,GAAD,MAAY,CACrCC,KAAM,CACF+K,SAAU,KACV5K,gBAAiB,YACjBa,QAAS,EACT8J,OAAQ,GAEZkJ,aAAc,CACV1T,WAAY,OAEhB2T,YAAa,CAETnI,SAAU,IACVxL,WAAY,MACZH,gBAAiB,SAErB+T,YAAa,CACT3I,UAAWxL,EAAMkB,QAAQ,IAEjCkT,UAAW,CACP7T,WAAY,MACZ4K,cAAe,MACf7K,YAAa,MACb2P,aAAc,OAElBoE,SAAU,CACN,YAAa,CACV9T,WAAY,MACZH,gBAAiB,YAQT,SAAS8Z,GAASC,EAAMrS,GAEnC,IAAMhI,EAAUqC,KAFsB,EAGhBE,mBAAS8X,GAHO,mBAG/BC,EAH+B,KAG1BC,EAH0B,KAIhCC,EAAoB,SAAA9C,GACtBA,EAAM+C,UACN,IAAM5L,EAAQ6I,EAAMC,OAAO9I,MAC3B0L,EAAO,6BACAD,GADD,kBAED5C,EAAMC,OAAOlN,KAAOoE,MAS7B,OALAjB,qBAAU,WACJyM,EAAKjD,SAASkD,KAEjB,CAACA,IAGA,kBAAChX,EAAA,EAAD,CAAK3C,QAAQ,OAAOE,eAAe,SAAS2G,EAAG,EAAGN,EAAG,GACjD,kBAAC5D,EAAA,EAAD,CAAKN,UAAWhD,EAAQsU,WACpB,kBAAC8E,GAAA,EAAD,CAAWZ,GAAG,iBAAiBH,MAAM,SAASqC,WAAS,EAACjQ,KAAK,SAASoE,MAAOyL,EAAIK,OAC7EzU,KAAK,QACLkR,SAAUoD,EACVlB,WAAY,CACRvK,SAASsL,EAAKO,eAK1B,kBAACtX,EAAA,EAAD,CAAMN,UAAWhD,EAAQsU,WACrB,kBAAC8E,GAAA,EAAD,CAAWZ,GAAG,iBAAiBH,MAAM,WAAWqC,WAAS,EAACjQ,KAAK,WAAWoE,MAAOyL,EAAIO,SAAUzD,SAAUoD,EACrGtU,KAAK,QACLoT,WAAY,CACRvK,SAASsL,EAAKO,eAG1B,kBAACtX,EAAA,EAAD,CAAMN,UAAWhD,EAAQsU,WACrB,kBAAC8E,GAAA,EAAD,CAAWZ,GAAG,iBAAiBH,MAAM,OAAOqC,WAAS,EAACjQ,KAAK,OAAOoE,MAAOyL,EAAIQ,KAAM1D,SAAUoD,EACzFtU,KAAK,QACLoT,WAAY,CACRvK,SAASsL,EAAKO,gB,yBC3EvB,SAASG,GAAcrS,GAElC,OACI,kBAAC,IAAM7F,SAAP,KACI,6BAEI,kBAACC,EAAA,EAAD,CACIC,WAAS,EACTS,UAAU,SACVC,QAAQ,SACR7C,WAAW,SACXQ,QAAS,GAKT,kBAACkC,EAAA,EAAD,KACI,kBAACkF,EAAA,EAAD,CAAmBrB,MAAO,CAAC3F,MAAO,eAEhB,UAArBkH,EAAMkJ,WACH,yBAAKoJ,IAAK,+BAAgC5T,MAAM,QAAQ+L,IAAI,SAE5D,mCAEoB,OAArBzK,EAAMkJ,WACL,yBAAKoJ,IAAK,sBAAuB5T,MAAM,QAAQ+L,IAAI,SAEnD,yBAAK6H,IAAK,uBAAwB5T,MAAM,QAAQ+L,IAAI,SAExD,kBAACjQ,EAAA,EAAD,CAAYC,QAAQ,KAAKC,cAAY,GAArC,0BAGA,kBAACF,EAAA,EAAD,CAAYC,QAAQ,KAAKC,cAAY,GAChCsF,EAAMuS,WAEX,kBAAC/X,EAAA,EAAD,CAAYC,QAAQ,KAAKC,cAAY,GACjC,8BAAM,yBAAK4X,IAAKtS,EAAMwS,YAAa9T,MAAM,OAAO+L,IAAI,aADxD,IAC8EzK,EAAMyS,UAKpF,kBAACjY,EAAA,EAAD,CAAaC,QAAQ,YAAYC,cAAY,GAA7C,4CC1CL,SAASgY,GAAgB1S,GAEpC,OACI,kBAAC,IAAM7F,SAAP,KACI,6BAEI,kBAACC,EAAA,EAAD,CACIC,WAAS,EACTS,UAAU,SACVC,QAAQ,SACR7C,WAAW,SACXQ,QAAS,GAET,kBAAC0B,EAAA,EAAD,CAAMjD,MAAI,EAACoK,IAAE,GACT,yBAAK+Q,IAAK,uBAAwB5T,MAAM,QAAQ+L,IAAI,UAGxD,kBAACjQ,EAAA,EAAD,CAAYC,QAAQ,KAAKC,cAAY,GAArC,oCAGA,kBAACF,EAAA,EAAD,CAAYC,QAAQ,YAAYC,cAAY,GAA5C,YACcsF,EAAMuS,UADpB,uBAGA,kBAAC/X,EAAA,EAAD,CAAYC,QAAQ,YAAYC,cAAY,GAA5C,2D,wBCMdf,GAAYpC,YAAW,CAC3Bob,YAAa,CACX7Z,MAAO,UACPC,WAAY,sBAEd6Z,eAAgB,CACd9Z,MAAO,UACPC,WAAY,qBAEdtB,KAAM,CACJ+K,SAAU,KACV5K,gBAAiB,QACjBa,QAAS,EACTsK,aAAc,KACdC,UAAW,EACXiE,WAAY,EACZC,YAAa,EACbC,YAAa,OACbC,YAAa,MACb1E,YAAa,WAEfmQ,YAAa,CACXrQ,SAAU,KACV/J,QAAS,EACT8J,OAAQ,EACR4E,YAAa,OACbC,YAAa,MACb1E,YAAa,UACb9K,gBAAiB,SAGnB0P,UAAW,CACT7O,QAAS,MAEXqa,mBAAoB,CAClBra,QAAS,EACT8J,OAAQ,EACR3K,gBAAiB,SAEnB2P,gBAAiB,CACf9O,QAAS,EACT8J,OAAQ,EACR3K,gBAAiB,WAEnB4P,iBAAkB,CAChBzP,WAAY,KACZD,YAAa,KACb2P,aAAc,MAEhBC,UAAW,CACT3P,WAAY,OACZ0P,aAAc,KACd9E,cAAe,GAEjBgF,eAAgB,CACdjQ,SAAU,EACVK,WAAY,MACZ4K,cAAe,KACf7H,UAAW,MACXC,QAAS,SACT7C,WAAY,UAEd0P,eAAgB,CACdjF,cAAe,OACf/K,gBAAiB,WAEnBkQ,WAAY,CACVnF,cAAe,MAEjBtJ,YAAa,CACXP,MAAO,WAGT+J,aAAc,CACZ/J,MAAO,UACPM,UAAW,UACXwF,cAAe,MACf+D,cAAe,GAEjBoF,iBAAkB,CAChB9P,QAAS,OACTC,WAAY,SACZH,WAAY,KACZ0P,aAAc,OACdzG,OAAQ,GACRlI,MAAO,WAETW,iBAAkB,CAChBX,MAAO,WAETia,kBAAmB,CACjBja,MAAO,WAETka,wBAAyB,CACvBla,MAAO,QACPU,WAAY,QAEdyO,OAAQ,CACN9G,SAAU,WACVvJ,gBAAiB,WAEnBkK,MAAO,CACLmF,WAAY,GACZiB,KAAM,GAERC,SAAU,CACRrP,MAAO,UACP6F,SAAU,OAEZsU,cAAe,CACbrb,gBAAiB,UACjBkB,MAAO,QACP6F,SAAU,UAEZuU,aAAc,CACZlQ,UAAW,MACXD,aAAc,MACdhL,WAAY,MACZ4K,cAAe,MACf7J,MAAO,UACPC,WAAY,oBACZnB,gBAAiB,SAEnBub,UAAW,CACTnQ,UAAW,MACXD,aAAc,MACdhL,WAAY,MACZ4K,cAAe,MACf7J,MAAO,UACPC,WAAY,qBACZnB,gBAAiB,aAEnBwb,iBAAkB,CAChBpQ,UAAW,MACXD,aAAc,MACdhL,WAAY,MACZ4K,cAAe,MACf7J,MAAO,UACPC,WAAY,qBACZnB,gBAAiB,WAEnByb,UAAW,CACT,mBAAoB,CAClB1U,SAAU,IAEZA,SAAU,UAEZ2U,WAAY,CACV,mBAAoB,CAClB3U,SAAU,aAYV4U,GAAa3Z,IAAMyO,YAAW,SAAoBrI,EAAOsI,GAC7D,OAAO,kBAACC,EAAA,EAAD,eAAOzN,UAAU,KAAKwN,IAAKA,GAAStI,OAG9B,SAASwT,GAAanU,EAASC,GAC5C,IAAMhI,EAAUqC,KAD+B,EAEvBC,IAAMC,UAAS,GAFQ,mBAExCC,EAFwC,KAElCC,EAFkC,OAGfH,IAAMC,UAAS,GAHA,mBAGxC4Z,EAHwC,KAG9BC,EAH8B,OAIjB9Z,IAAMC,UAAS,GAJE,mBAIxC8Z,EAJwC,KAI/BC,EAJ+B,OAKfha,IAAMC,UAAS,GALA,mBAKxCwS,EALwC,KAK9BC,EAL8B,OAMjB1S,IAAMC,UAAS,GANE,mBAMxCga,EANwC,KAM/BC,EAN+B,OAOLla,IAAMC,UAAS,GAPV,mBAOxCka,EAPwC,KAOzBC,EAPyB,OAQTpa,IAAMC,UAAS,GARN,mBAQxCoa,EARwC,KAQ3BC,EAR2B,OASnBta,IAAMC,SAAS,IATI,mBASxCG,EATwC,KAShCC,EATgC,OAUrBL,IAAMC,SAAS,IAVM,oBAUxCsa,GAVwC,MAUjCC,GAViC,SAWrBxa,IAAMC,SAAS,IAXM,qBAWxCwa,GAXwC,MAWjCC,GAXiC,SAYrB1a,IAAMC,SAAS,IAZM,qBAYxC0U,GAZwC,MAYjCgG,GAZiC,SAab3a,IAAMC,UAAS,GAbF,qBAaxC2a,GAbwC,MAa7BC,GAb6B,SAcZ7a,IAAMC,UAAS,GAdH,qBAcxC6a,GAdwC,MAc7BC,GAd6B,SAeT/a,IAAMC,SAAS,IAfN,qBAexC+a,GAfwC,MAe3BC,GAf2B,SAgBLjb,IAAMC,SAAS,IAhBV,qBAgBxCib,GAhBwC,MAgBzBC,GAhByB,SAiBDnb,IAAMC,SAAS,IAjBd,qBAiBxCmb,GAjBwC,MAiBvBC,GAjBuB,SAkBTrb,IAAMC,SAAS,IAlBN,qBAkBxCqb,GAlBwC,MAkB3BC,GAlB2B,MAmBzC3d,GAAQmR,cACRyM,GAAaxM,YAAcpR,GAAMqR,YAAYC,KAAK,OACxD1M,QAAQC,IAAI,WACZD,QAAQC,IAAIgD,GAEZzF,IAAMsL,WAAU,WACdmQ,OAAOC,SAAS,EAAG,GACnBC,KACAC,KACA,IAAMzL,EAAOC,kBACX,2DACAC,SAASC,cAAc,sBAGzB,OAAO,WACLH,EAAKI,WAAWC,YAAYL,MAE7B,IAED,IAAM3S,GAAYC,EAAQ,IAEtBme,GAAY,WAChB,IAAIC,EAAQ,GACZrZ,QAAQC,IAAI,kBACZD,QAAQC,IAAIgD,GAEZ,IAAIqW,EAAO,GACXA,EAAKhZ,KAAK2C,EAAQsW,cAClBvZ,QAAQC,IAAI,UACZD,QAAQC,IAAIqZ,GACZ,IAAIE,EAAYvW,EAAQqB,MAAM2I,cAoD9B,GADQ,EACyB,IAA7BqM,EADI,GACO9Q,MAAM,KAAK,GAAU,CAClC,IASIiR,EATAjE,EAAM,CACRkE,IAHI,EAIJC,iBAAkBH,EAClB/a,QAASwE,EAAQqB,MAAM7F,QACvB4a,MAAO,IAILO,EAAeN,EAVb,GAUwB9Q,MAAM,KAAK,GAAGA,MAAM,KAElD,IAAKiR,EAAO,EAAGA,EAAOG,EAAazZ,OAAQsZ,IACzC,OAAQA,GACN,KAAK,EAEH,IAAII,EACJ,IAAKA,EAAQ,EAAGA,EAAQD,EAAaH,GAAOI,IAC1CrE,EAAI6D,MAAM/Y,KAAK,CACbwZ,GAAIC,OAAeF,EACnBlZ,KAAM,SACNqV,KAAM,GACNH,OAAQ,GACRE,SAAU,GACViE,OAAQ,KAGZ,MAEF,KAAK,EACH,IAAIC,EACJ,IAAKA,EAAQ,EAAGA,EAAQL,EAAaH,GAAOQ,IAC1CzE,EAAI6D,MAAM/Y,KAAK,CACbwZ,GAAIC,OAAeE,EACnBtZ,KAAM,OACNqV,KAAM4D,EAAaH,EAAOQ,EAAQ,GAClCpE,OAAQ,GACRE,SAAU,GACViE,OAAQ,MAQlBX,EAAM/Y,KAAKkV,GACb0C,GAASmB,IAGLF,GAAY,WAChB,IAAIe,EAAW,GACXC,EAAe,GAEhB3a,EAAM,wFACPyD,EAAQqB,MAAM+I,aACd,kBACApK,EAAQqB,MAAM8I,cACd,aACAnK,EAAQqB,MAAMyH,SAEhBnM,IACGC,IAAIL,GACJM,MAAK,SAACC,GAIL,GAHIA,EAASG,KAAK,GAAGka,aACnB1C,GAAW,GAET3X,EAASG,KAAK,GAAGE,YAAYD,OAAS,EAAG,CAC3CyX,GAAiB,GACjB/Z,EAAUkC,EAASG,KAAK,GAAGE,aAC3B,IAAK,IAAI8C,EAAI,EAAGA,EAAInD,EAASG,KAAK,GAAGE,YAAYD,OAAQ+C,IACvDiX,EACEA,EACApa,EAASG,KAAK,GAAGE,YAAY8C,GAAGzC,MAChC,KACAV,EAASG,KAAK,GAAGE,YAAY8C,GAAG3C,MAChC,UAEC,CAEL,IAAIF,EAAY,GACe,SAA3B4C,EAAQqB,MAAM3E,UAChBiY,GAAiB,GACjBvX,EAAUC,KAAK,CACbC,MAAO,GACPC,YAAa,GACbC,MAAO,kCACPC,WAAY,GACZC,KAAM,OAGRiX,GAAiB,GACjBvX,EAAUC,KAAK,CACbC,MAAO,GACPC,YAAa,GACbC,MAAO,6CACPC,WAAY,GACZC,KAAM,MAGV9C,EAAUwC,GACV,IAAK,IAAIga,EAAK,EAAGA,EAAKha,EAAUF,OAAQka,IACtCF,EACEA,EACA9Z,EAAUga,GAAI5Z,MACd,KACAJ,EAAUga,GAAI9Z,MACd,MAGNyX,GAASjY,EAASG,KAAK,GAAGoa,OAC1B,IAASpX,EAAI,EAAGA,EAAInD,EAASG,KAAK,GAAGoa,MAAMna,OAAQ+C,IACjDgX,EAAWA,EAAWna,EAASG,KAAK,GAAGoa,MAAMpX,GAAG1C,YAAc,MAEhEuY,GAAemB,GAEfrB,GAAmBsB,MAEpBvZ,OAAM,SAACC,GACN+W,GAAiB,GACjB,IAAIvX,EAAY,GACe,SAA3B4C,EAAQqB,MAAM3E,SAChBU,EAAUC,KAAK,CACbC,MAAO,GACPC,YAAa,GACbC,MAAO,kCACPC,WAAY,GACZC,KAAM,KAGRN,EAAUC,KAAK,CACbC,MAAO,yCACPC,YAAa,MACbC,MAAO,+CACPC,WAAY,GACZC,KAAM,KAGV9C,EAAUwC,GACV,IAAK,IAAI6C,EAAI,EAAGA,EAAI7C,EAAUF,OAAQ+C,IAEpCiX,EAAeA,EAAe9Z,EAAU6C,GAAGzC,MAAQ,IAAMJ,EAAU6C,GAAG3C,MAAQ,MAEhFsY,GAAmBsB,OAoNnBI,GAAkB,SAAC/E,GACvByC,GACEA,GAAM3Q,WAAU,SAACoD,GAAD,OAAOA,EAAEgP,KAAOlE,EAAIgF,KAAKV,GAAGtR,MAAM,KAAK,OACvD6Q,MAAM5Q,QAAO,SAACiC,GAAD,OAAOA,EAAEoP,IAAMtE,EAAIgF,KAAKV,MAAI,GAAGjE,OAASL,EAAIK,OAC3DoC,GACEA,GAAM3Q,WAAU,SAACoD,GAAD,OAAOA,EAAEgP,KAAOlE,EAAIgF,KAAKV,GAAGtR,MAAM,KAAK,OACvD6Q,MAAM5Q,QAAO,SAACiC,GAAD,OAAOA,EAAEoP,IAAMtE,EAAIgF,KAAKV,MAAI,GAAG/D,SAAWP,EAAIO,SAC7DkC,GACEA,GAAM3Q,WAAU,SAACoD,GAAD,OAAOA,EAAEgP,KAAOlE,EAAIgF,KAAKV,GAAGtR,MAAM,KAAK,OACvD6Q,MAAM5Q,QAAO,SAACiC,GAAD,OAAOA,EAAEoP,IAAMtE,EAAIgF,KAAKV,MAAI,GAAG9D,KAAOR,EAAIQ,KAEzDkC,GAASD,KAIX,OACE,kBAAC,IAAMla,SAAP,KACE,kBAACmQ,EAAA,EAAD,CAAMhQ,UAAWhD,EAAQG,KAAMgD,QAAQ,aACtB,IAAd+Z,GACC,8BAEA,kBAAC,IAAMra,SAAP,MACiB,IAAdua,GACC,kBAAC,IAAMva,SAAP,KACE,kBAAC6W,GAAA,EAAD,CACEC,SAAS,UACTxW,QAAQ,SACRH,UAAWhD,EAAQ+b,WAEnB,kBAACnC,GAAA,EAAD,CAAYzS,MAAO,CAAEE,SAAU,WAA/B,mCALF,kCAQ8B,gCAASmW,MAIzC,kBAAC,IAAM3a,SAAP,KACE,kBAAC6W,GAAA,EAAD,CAAOC,SAAS,UAAUxW,QAAQ,UAChC,kBAACyW,GAAA,EAAD,0CADF,wDASV,kBAAC3G,EAAA,EAAD,CAAajQ,UAAWhD,EAAQwb,oBAC9B,kBAACxI,EAAA,EAAD,CAAMhQ,UAAWhD,EAAQub,YAAapY,QAAQ,YAC5C,kBAACoc,GAAA,EAAD,CACEvc,UAAWka,GAAYld,EAAQ8b,iBAAmB9b,EAAQ6b,UAC1DrR,MACE,kBAACtH,EAAA,EAAD,CACEC,QAAQ,KACRC,cAAY,EACZJ,UAAWhD,EAAQqb,aAHrB,2BASJ,kBAACpI,EAAA,EAAD,CAAajQ,UAAWhD,EAAQgQ,WAC9B,kBAAClN,EAAA,EAAD,CAAMC,WAAS,EAAC3B,QAAS,EAAG4B,UAAWhD,EAAQoQ,WAC7C,kBAACtN,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,EAAGjH,UAAWhD,EAAQwQ,YACnC,kBAAC7F,EAAA,EAAD,CAAO3H,UAAWhD,EAAQc,OACxB,kBAACoS,EAAA,EAAD,CACEtI,UAAU,MACVuI,IAAKpL,EAAQqB,MAAM0I,OACnBpI,OAAO,MACP0J,MAC2B,MAAzBrL,EAAQqB,MAAMiK,QACV,iBACAtL,EAAQqB,MAAMiK,QAEpB7I,MAAOzC,EAAQqB,MAAM0I,WAI3B,kBAAChP,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,EAAGjH,UAAWhD,EAAQkQ,kBACnC,kBAACpN,EAAA,EAAD,CAAMC,WAAS,EAAC3B,QAAS,EAAG4B,UAAWhD,EAAQoQ,WAC7C,kBAACtN,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IACb,kBAAC/G,EAAA,EAAD,CAAYC,QAAQ,KAAKH,UAAWhD,EAAQ+B,aAEzCgG,EAAQqB,MAAM0I,QAGjB,kBAACxO,EAAA,EAAD,CAAK3C,QAAQ,OAAOC,WAAW,UAC7B,kBAAC0C,EAAA,EAAD,KACE,kBAAC,IAAD,CACE+D,SAAS,QACTrE,UAAWhD,EAAQuL,gBAGvB,kBAACjI,EAAA,EAAD,KACE,kBAACJ,EAAA,EAAD,CACEC,QAAQ,QACRH,UAAWhD,EAAQuL,cAElBxD,EAAQqB,MAAMkK,kBAMvB,kBAACxQ,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,GAeb,kBAAC/G,EAAA,EAAD,CAAYC,QAAQ,UAAUgE,MAAO,CAAE3F,MAAO,SAC3CuG,EAAQqB,MAAMoW,UADjB,MAC+BzX,EAAQqB,MAAM3E,YAIjD,kBAACnB,EAAA,EAAD,CAAKN,UAAWhD,EAAQyQ,kBACtB,kBAACvN,EAAA,EAAD,CAAYC,QAAQ,SACY,MAA7B4E,EAAQqB,MAAMmK,YACb,qBACExL,EAAQqB,MAAMmK,YAAYtO,OAAS,IACrC,kBAAC,IAAMpC,SAAP,KACG/C,GACC2f,OAAO1X,EAAQqB,MAAMmK,YAAY1P,UAAU,EAAE,OAC5C,KAML/D,GAAUiI,EAAQqB,MAAMmK,mBAQtC,kBAACP,EAAA,EAAD,CAAMhQ,UAAWhD,EAAQub,YAAapY,QAAQ,YAC5C,kBAACoc,GAAA,EAAD,CACEvc,UAAWka,GAAYld,EAAQ8b,iBAAmB9b,EAAQ6b,UAC1DrR,MACE,kBAACtH,EAAA,EAAD,CACEC,QAAQ,KACRC,cAAY,EACZJ,UAAWhD,EAAQqb,aAHrB,2BASJ,kBAACpI,EAAA,EAAD,CAAajQ,UAAWhD,EAAQgQ,WAC9B,kBAAClN,EAAA,EAAD,CAAMC,WAAS,EAAC3B,QAAS,EAAG4B,UAAWhD,EAAQoQ,WAC7C,kBAACtN,EAAA,EAAD,CACEjD,MAAI,EACJoD,GAAI,EACJkE,MAAO,CAAE1G,WAAY,OAErB,kBAACqC,EAAA,EAAD,CACEC,WAAS,EACT3B,QAAS,EACT4B,UAAWhD,EAAQK,KACnBmD,UAAU,MACVC,QAAQ,gBACR0D,MAAO,CAAEuY,UAAW,QACpB9e,WAAW,cAEX,kBAACkC,EAAA,EAAD,CAAMjD,MAAI,EAACoD,GAAI,GACb,kBAAC0H,EAAA,EAAD,CAAOxD,MAAO,CAAElF,UAAW,UAAYsN,UAAW,GAChD,kBAACrM,EAAA,EAAD,CACEC,QAAQ,YACRC,cAAY,EACZJ,UAAWhD,EAAQmC,kBAHrB,sBAOA,kBAACmB,EAAA,EAAD,KACE,kBAACJ,EAAA,EAAD,CAAYC,QAAQ,QAAQC,cAAY,EAACJ,UAAWhD,EAAQyb,mBACzD1T,EAAQqB,MAAMoJ,aAAa3O,UAAU,EAAG,GACvC,MACAkE,EAAQqB,MAAMoJ,aAAa3O,UAAU,EAAG,GACxC,MACAkE,EAAQqB,MAAMoJ,aAAa3O,UAAU,EAAG,OAMlD,kBAACf,EAAA,EAAD,CAAMjD,MAAI,EAACoD,GAAI,GACb,kBAAC0H,EAAA,EAAD,CAAOxD,MAAO,CAAElF,UAAW,QAAUsN,UAAW,GAC9C,kBAACrM,EAAA,EAAD,CACEC,QAAQ,YACRC,cAAY,EACZJ,UAAWhD,EAAQmC,kBAHrB,aAOA,kBAACmB,EAAA,EAAD,KACE,kBAACJ,EAAA,EAAD,CAAYC,QAAQ,QAAQC,cAAY,EAACJ,UAAWhD,EAAQyb,mBACzD1T,EAAQqB,MAAM2I,oBA2D3B,kBAACjP,EAAA,EAAD,CACEjD,MAAI,EACJoK,GAAI,EACJ9C,MAAO,CAAE1G,WAAY,OAErB,kBAACqC,EAAA,EAAD,CACEC,WAAS,EACT3B,QAAS,EACT4B,UAAWhD,EAAQK,KACnBmD,UAAU,MACVC,QAAQ,gBACR0D,MAAO,CAAEuY,UAAW,QACpB9e,WAAW,cAEX,kBAACkC,EAAA,EAAD,CAAMjD,MAAI,EAACoD,GAAI,IACb,kBAAC0H,EAAA,EAAD,CAAOxD,MAAO,CAAElF,UAAW,QAAUsN,UAAW,GAC9C,kBAACrM,EAAA,EAAD,CACEC,QAAQ,YACRC,cAAY,EACZJ,UAAWhD,EAAQmC,mBAIrB,kBAACe,EAAA,EAAD,CAAYC,QAAQ,QAAQC,cAAY,EAACJ,UAAWhD,EAAQyb,mBACzD1T,EAAQqB,MAAM/F,0BAIrB,kBAACP,EAAA,EAAD,CAAMjD,MAAI,EAACoD,GAAI,GACb,kBAAC0H,EAAA,EAAD,CAAOxD,MAAO,CAAElF,UAAW,SAAWsN,UAAW,GAC/C,kBAACrM,EAAA,EAAD,CACEC,QAAQ,YACRC,cAAY,EACZJ,UAAWhD,EAAQmC,kBAHrB,UAOA,kBAACe,EAAA,EAAD,CAAYC,QAAQ,QAAQC,cAAY,EAACJ,UAAWhD,EAAQ0b,yBACzD3T,EAAQqB,MAAMiJ,cADjB,IACiCtK,EAAQqB,MAAM6I,qBAU7D,kBAACe,EAAA,EAAD,CAAMhQ,UAAWhD,EAAQG,KAAMgD,QAAQ,YACrC,kBAACoc,GAAA,EAAD,CACEvc,UACEka,GAAYld,EAAQ8b,iBAAmB9b,EAAQ6b,UAEjDrR,MACE,kBAACtH,EAAA,EAAD,CACEC,QAAQ,KACRC,cAAY,EACZJ,UAAWhD,EAAQqb,aAHrB,4BASJ,kBAACpI,EAAA,EAAD,CAAajQ,UAAWhD,EAAQwb,oBAC9B,kBAAC1Y,EAAA,EAAD,CAAMC,WAAS,EAAC3B,QAAS,EAAG4B,UAAWhD,EAAQoQ,WAC7C,kBAACtN,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IACZ8S,GAAMjV,KAAI,SAACC,EAASC,GAAV,OACT,kBAACgL,EAAA,EAAD,CAAMhQ,UAAWhD,EAAQub,YAAapY,QAAQ,WAAWqV,GAAIxQ,GAC3D,kBAACuX,GAAA,EAAD,CACEvc,UAAWhD,EAAQ4b,aACnBpR,MACE,kBAACtH,EAAA,EAAD,CACEC,QAAQ,KACRC,cAAY,EACZJ,UAAWhD,EAAQsb,gBAElBvT,EAAQ0W,oBAIf,kBAACxL,EAAA,EAAD,CAAajQ,UAAWhD,EAAQgQ,WAC7BjI,EAAQoW,MAAMrW,KAAI,SAAC6X,EAAS3X,GAAV,OACjB,kBAAC,GAAD,CACEG,IAAKH,EACLsX,KAAMK,EACNvI,SAAUiI,GACVzE,WAAYsC,iBAW9B,kBAAC,IAAMra,SAAP,KACE,kBAACmQ,EAAA,EAAD,CAAMhQ,UAAWhD,EAAQub,YAAapY,QAAQ,YAC5C,kBAACoc,GAAA,EAAD,CACEvc,UACEka,GAAYld,EAAQ8b,iBAAmB9b,EAAQ6b,UAEjDrR,MACE,kBAACtH,EAAA,EAAD,CACEC,QAAQ,KACRC,cAAY,EACZJ,UAAWhD,EAAQqb,aAHrB,oCASJ,kBAACpI,EAAA,EAAD,CAAajQ,UAAWhD,EAAQgQ,WAC9B,kBAAClN,EAAA,EAAD,CAAMC,WAAS,EAAC3B,QAAS,EAAG4B,UAAWhD,EAAQoQ,WAC7C,kBAACtN,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IACZvH,EAAOuC,OAAS,EACf,yBAAKkC,MAAO,CAAEvG,WAAY,WACvB8B,EAAOoF,KAAI,SAACC,EAASC,GAAV,OACV,kBAAC9E,EAAA,EAAD,CAAYC,QAAQ,YAAYC,cAAY,GACzC2E,EAAQxC,MADX,KACoBwC,EAAQ1C,UAG7BkX,EACC,kBAAC,WAAD,KACE,6BACA,kBAACrZ,EAAA,EAAD,CAAYC,QAAQ,KAAKC,cAAY,EAAC+D,MAAO,CAAE3F,MAAO,MAAOS,UAAW,WAAxE,4CAGA,8BAGF,+BAGJ,kBAACuG,EAAA,EAAD,WAQXqU,GAAM5X,OAAS,EACd,kBAAC,IAAMpC,SAAP,KACE,kBAACmQ,EAAA,EAAD,CAAMhQ,UAAWhD,EAAQub,YAAapY,QAAQ,YAC5C,kBAACoc,GAAA,EAAD,CACEvc,UACEka,GAAYld,EAAQ8b,iBAAmB9b,EAAQ6b,UAEjDrR,MACE,kBAACtH,EAAA,EAAD,CACEC,QAAQ,KACRC,cAAY,EACZJ,UAAWhD,EAAQqb,aAHrB,yCASJ,kBAACpI,EAAA,EAAD,CAAajQ,UAAWhD,EAAQgQ,WAC9B,kBAAClN,EAAA,EAAD,CAAMC,WAAS,EAAC3B,QAAS,EAAG4B,UAAWhD,EAAQoQ,WAC7C,kBAACtN,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IACb,kBAAC/G,EAAA,EAAD,CACEC,QAAQ,YACRC,cAAY,EACZJ,UAAWhD,EAAQmC,mBAEpB0a,GAAM5X,OAAS,EACd,yBAAKkC,MAAO,CAAEvG,WAAY,WACvBic,GAAM/U,KAAI,SAACC,EAASC,GAAV,OAKT,kBAAC,IAAMnF,SAAP,KAC2B,uBAAxBkF,EAAQzC,aACiB,gBAAxByC,EAAQzC,YACRxF,GAAUiI,EAAQzC,aAElB,mCAMR,kBAACkD,EAAA,EAAD,WAQZ,8BAGc,IAAf8U,GACC,kBAAC,IAAMza,SAAP,KACE,kBAACmQ,EAAA,EAAD,CAAMhQ,UAAWhD,EAAQub,YAAapY,QAAQ,YAC5C,kBAACoc,GAAA,EAAD,CACEvc,UAAWhD,EAAQ8b,iBACnBtR,MAAM,mCAER,kBAACyI,EAAA,EAAD,CAAajQ,UAAWhD,EAAQgQ,WAC9B,kBAAClN,EAAA,EAAD,CAAMC,WAAS,EAAC3B,QAAS,EAAG4B,UAAWhD,EAAQoQ,WAC7C,kBAACtN,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IACZqT,QAOX,KAIW,IAAdJ,GACC,kBAAC,IAAMra,SAAP,KAGE,kBAACmQ,EAAA,EAAD,CAAMhQ,UAAWhD,EAAQG,KAAMgD,QAAQ,YACrC,kBAACoc,GAAA,EAAD,CACEvc,UACEka,GAAYld,EAAQ8b,iBAAmB9b,EAAQ6b,UAEjDrR,MACE,kBAACtH,EAAA,EAAD,CACEC,QAAQ,KACRC,cAAY,EACZJ,UAAWhD,EAAQqb,aAHrB,+BASJ,kBAACpI,EAAA,EAAD,CAAajQ,UAAWhD,EAAQwb,oBAC9B,kBAAC1Y,EAAA,EAAD,CAAMC,WAAS,EAAC3B,QAAS,EAAG4B,UAAWhD,EAAQoQ,WAC7C,kBAACtN,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IACb,kBAACyK,GAAD,CAAO0C,SApgBH,SAACH,GACfA,EAAMlC,YACc,IAAlB0H,GACFzH,EAAYiC,EAAMlC,UAClBkI,GAAShG,IAET2I,MAAM,2BA8fkChO,WAAY7J,EAAQ6J,iBAM1D,kBAACtO,EAAA,EAAD,CACE3C,QAAQ,OACR4G,cAAc,cACdL,EAAG,EACHM,EAAG,EACHqQ,QAAQ,oBAER,kBAACvU,EAAA,EAAD,CAAK4D,EAAG,GACN,kBAAClB,EAAA,EAAD,CACE7C,QAAQ,YACR3B,MAAM,UACNqe,UAAW9K,EACX1Q,QA9qBS,WACrB,IAiBIyb,EAjBAC,EAAe,KAEfxD,IACiC,mBAA/BtF,GAAM/B,eAAe8D,OAEH,WADhB+G,EAAeC,OAAO,+DAExBJ,MAAM,oBACNG,EAAe,MAEfA,EAAe,MAGjBzD,GAAW,GACXyD,EAAe,KACf/K,GAAY,KAMhB,GAFAoH,GAAY,GACZW,GAAMkD,SAAQ,SAACjY,GAAD,OAAO8X,EAAK9X,EAAEmW,MAAM5Q,QAAO,SAAC2S,GAAD,MAAoB,KAAbA,EAAEvF,QAAgC,KAAfuF,EAAErF,UAA8B,KAAXqF,EAAEpF,MAAmC,qBAAboF,EAAEvF,QAAgD,qBAAfuF,EAAErF,UAA8C,qBAAXqF,EAAEpF,QAAsB7V,UACrM,IAAP6a,GAA4B,MAAhBC,EAAsB,CAEpC/K,GAAY,GACZ,IAAImL,EAAO,GACPC,EAAc,EACdC,EAAY,EAChBtD,GAAMjV,KAAI,SAACwY,EAAQtY,GACjB,IAAIuY,EAAM,GACVD,EAAOnC,MAAMrW,KAAI,SAAC0Y,EAAaxY,GAC7B,IAAIsS,EAAM,GACVA,EAAItB,OAASwH,EAAY7F,OACzBL,EAAImG,SAAWD,EAAY3F,SAC3BP,EAAIoG,KAAOF,EAAY1F,KACvByF,EAAInb,KAAKkV,GACgB,KAArBkG,EAAY1F,MAAe0F,EAAY1F,KAAO,GAChDsF,GAA4B,EAE5BC,GAAwB,KAG5BF,EAAK/a,KAAK,CACRub,MAAO3Y,EACP4Y,YAAaN,EAAO7B,iBACpBoC,UAAWN,OAGfzb,QAAQC,IAAIgD,GACZ,IAAI+Y,EAAc,GAClB,OAAQ/Y,EAAQ6J,YACd,IAAK,QACHkP,EAAc,SACd,MACF,IAAK,KACHA,EAAc,KACd,MACF,QACEA,EAAc,GAMlB,IAAIC,EAAO,CACTC,MAAO,CACL,CACEC,aAAcd,EACde,uBAAwBnZ,EAAQqB,MAAM2I,cACtCoP,aAAcpZ,EAAQqB,MAAM+I,aAC5BiP,aAAcrZ,EAAQqB,MAAM8I,cAC5BmP,KAAM,WACNT,YAAa7Y,EAAQqB,MAAM0I,OAC3BwP,aAAcvZ,EAAQqB,MAAMoJ,aAC5B+O,YAAaxZ,EAAQqB,MAAMmJ,UAC3BiP,OAAQzZ,EAAQqB,MAAMgJ,OACtBqP,UAAW1Z,EAAQqB,MAAMyH,SACzB6Q,OAAQ3Z,EAAQqB,MAAMuY,QACtBC,WAAY7Z,EAAQqB,MAAMkK,cAC1BuO,cAAe5K,GAAMT,QACrBsL,QAAS,GACTC,OAAQha,EAAQqB,MAAM6I,aACtB+P,OAAQja,EAAQqB,MAAMiJ,cACtB4P,UAAW,GACXC,QAAS9B,EACT+B,MAAO9B,EACP+B,gBAAiB1E,GACjB2E,YAAazE,GAAY/Z,UAAU,EAAG,QAG1Cye,QAAS,CACP,CACEtJ,OAAQ/B,GAAM/B,eAAe8D,OAC7BuJ,aAActL,GAAM7B,cAAc4D,OAClCwJ,OAAQ,GACRhB,OAAQV,IAGZ2B,WAAY,CACV,CACEzJ,OAAQ/B,GAAMf,eACdwM,QAAS,GACTC,SAAU1L,GAAMb,SAChBoM,OAAQvL,GAAMX,MACdsM,QAAS3L,GAAMT,UAGnBqM,UAAW5L,GAAME,WAAa,KAAO,KACrC2L,qBAAsB,GACtBC,SAAU9L,GAAMC,YAGlBpS,QAAQC,IAAI,QACZD,QAAQC,IAAIgc,GACZ,IAAIiC,EAAa,gEACU,UAAvBjb,EAAQ6J,YAAiD,OAAvB7J,EAAQ6J,aAC5CoR,EAAa,+EAGfte,IACGue,KAAKD,EAAYjC,GAEjBnc,MAAK,SAACC,GACLC,QAAQC,IAAI,wBACZD,QAAQC,IAAIF,EAASG,MACW,OAA5BH,EAASG,KAAK,GAAGke,QACnB/F,IAAa,GACbE,IAAc,GAC2C,KAArDxY,EAASG,KAAK,GAAGme,QAAQ,GAAGC,MAAM,GAAGxC,aACvCrD,GAAe1Y,EAASG,KAAK,GAAGme,QAAQ,GAAGC,MAAM,GAAGxC,aAEtDnD,GAAiB5Y,EAASG,KAAK,GAAGqe,cAElCzD,MAAM/a,EAASG,KAAK,GAAG4d,SACvBvF,IAAc,GACdF,IAAa,IAEff,GAAY,MAEb1W,OAAM,SAACC,GACN0X,IAAc,GACdF,IAAa,GACbf,GAAY,WAIhBA,GAAY,GACQ,MAAhB2D,GACFH,MAAM,iCA4hBEzY,MAAO,CAAE7G,gBAAiB,WAC1B0C,UAAWhD,EAAQsjB,OACnBC,QAAS,kBAAC,KAAD,OAPX,aAYF,kBAACjgB,EAAA,EAAD,CAAK4D,EAAG,GACN,kBAAClB,EAAA,EAAD,CACE7C,QAAQ,YAERH,UAAWhD,EAAQsjB,OACnBE,UAAW,kBAAC,KAAD,MACXnf,QAhsBY,WACxB0D,EAAQ0b,UAAS,KA0rBP,sBAaN,GAEF,kBAACC,GAAA,EAAD,CACEhJ,WAAS,EACTxP,SAAS,KACT1I,KAAMA,EACNkE,QAluBoB,WACxBjE,GAAQ,IAkuBJkhB,oBAAqB1H,IAErB,kBAAC5M,GAAD,CAAkBjG,MAAOrB,EAAQqB,MAAOK,KAAK,KAG/C,kBAACia,GAAA,EAAD,CACEhJ,WAAS,EACTxP,SAAS,KACT1I,KAAMma,EACNjW,QA5tB2B,WAC/BkW,GAAe,IA4tBX+G,oBAAqB1H,IAErB,kBAAC1P,GAAD,CACEnD,MAAOrB,EACP0B,KAAK,EACL0R,SAAUpT,EAAQoT,SAClBD,YAAanT,EAAQmT,eAKzB,kBAACwI,GAAA,EAAD,CACEE,sBAAoB,EACpBC,sBAAoB,EACpB/F,WAAYA,GACZtb,KAAM2Z,EACNzV,QAzvBwB,WAC5B0V,GAAY,IAyvBR5V,kBAAgB,2BAEhB,kBAACsd,GAAA,EAAD,KACE,kBAACC,GAAA,EAAD,KACE,kBAAC,GAAD,CACE5I,SAAUpT,EAAQoT,SAClBD,YAAanT,EAAQmT,YACrBD,UAAWlT,EAAQqB,MAAMW,YACzB6H,WAAY7J,EAAQ6J,gBAO5B,kBAAC8R,GAAA,EAAD,CACE5F,WAAYA,GACZtb,KAAM6Z,EACN3V,QAxwBuB,WAC3B4V,GAAW,IAwwBP9V,kBAAgB,2BAEhB,kBAACsd,GAAA,EAAD,KACE,kBAACC,GAAA,EAAD,KACE,kBAAC,GAAD,CACE5I,SAAUpT,EAAQoT,SAClBD,YAAanT,EAAQmT,YACrBD,UAAWlT,EAAQqB,MAAMW,kB,uDC9tCjCtB,I,yDACF,WAAYC,GAAQ,IAAD,8BACf,cAAMA,IAYTwE,oBAAsB,SAACC,GACpB,GAAmB,qBAARA,GAA+B,KAARA,EAChC,MAAO,GAEP,IACE,OAAOA,EACJC,cACAC,OACAC,MAAM,KACNC,QAAO,SAAC1N,GAAD,MAA0B,KAAhBA,EAAKwN,UACtBvF,KAAI,SAAC0F,GAAD,OAAOA,EAAE,GAAGC,cAAgBD,EAAEE,OAAO,MACzCC,KAAK,KACR,MAAOhI,GACPb,QAAQa,MAAM,gBACdb,QAAQa,MAAMA,KA3BH,EAgCnBqe,gBAAkB,WACdlf,QAAQC,IAAI,0BACZD,QAAQC,IAAI,EAAKoE,MAAM8a,aACvB,EAAKvb,MAAMrE,QAAQ,EAAK8E,MAAM8a,cAnCf,EA8CnBtb,cAAgB,SAACD,EAAOE,EAAQC,GAC5B/D,QAAQC,IAAI,EAAK2D,MAAMwb,kBAAkB,IACzC,EAAKpb,SAAS,CACVC,cAAeL,EACfM,aAAcJ,EACdK,mBAAmB,EACnBgb,YAAarb,EAAOqb,YACpBE,eAAgBvb,EAAOub,eACvBC,YAAaxb,EAAOwb,eAtDT,EAyDnBlb,WAAa,SAACR,GACN,EAAKS,MAAMF,mBACX,EAAKH,SAAS,CACVG,mBAAmB,EACnBD,aAAc,KACdob,YAAa,GACbD,eAAgB,GAChBF,YAAa,MA9DrB,EAAK9a,MAAQ,CACTF,mBAAmB,EACnBD,aAAc,GACdD,cAAe,IAInB,EAAKJ,cAAgB,EAAKA,cAAcY,KAAnB,gBACrB,EAAKL,WAAa,EAAKA,WAAWK,KAAhB,gBAVH,E,6DAsCFb,EAAOG,GAAI,IAAD,OACbya,EAAW,kBAACnf,EAAA,EAAD,CAAMC,KAAK,IAAIC,QAAS,SAAAwE,GAAM,EAAKmb,mBAAqBxiB,MAAM,WAAWgI,KAAKL,MAAM8a,aAE/D,MAAlCtR,SAAS0R,eAAe,QAC5BC,IAASC,OAAOjiB,IAAMkiB,SAASC,KAAKnB,GAAS3Q,SAAS0R,eAAe,U,+BA0BnE,IAAD,OA8CL,OACI,yBAAKld,MAjCQ,CAGbC,MAAO,QACPsC,OAAQ,QACRC,SAAU,WA6BN,kBAACC,GAAA,EAAD,CAAQzC,MArBD,CACX0C,SAAU,WACVvJ,gBAAiB,YAoBT,kBAACwJ,GAAA,EAAD,KACI,kBAAC5G,EAAA,EAAD,CAAYC,QAAQ,KAAKgE,MAlBrB,CAChB3F,MAAO,UAiBK,0BAC2B,8BAAM,yBAAKwZ,IAAKxR,KAAKd,MAAMwS,YAAa9T,MAAM,UADzE,IAC+FoC,KAAKd,MAAMyS,YAIlH,kBAAC,MAAD,CACInR,eA/CW,CACnB5C,MAAO,OACPsC,OAAQ,SA8CA7J,MAAI,EACJoK,GAAI,GACJ9C,MAzDE,CAGVC,MAAO,QACPsC,OAAQ,QAsDAQ,OAAQV,KAAKd,MAAMwB,OACnB7F,QAASmF,KAAKN,WACdiB,KAAM,GACNC,OAAO,OACPC,cAAe,CACXC,IAAKd,KAAKd,MAAMwb,kBAAkB3W,QAAO,SAAAiC,GAAC,MAAkB,KAAdA,EAAEnG,SAAiC,KAAfmG,EAAElG,YAAiB,GAAGD,QACxFkB,IAAKf,KAAKd,MAAMwb,kBAAkB3W,QAAO,SAAAiC,GAAC,MAAkB,KAAdA,EAAEnG,SAAiC,KAAfmG,EAAElG,YAAiB,GAAGA,WAG3FE,KAAKd,MAAMwb,kBAAkBpc,KAAI,SAACsB,EAAOpB,GAAR,MACX,KAAlBoB,EAAMC,SAAqC,KAAnBD,EAAME,SACvB,kBAAC,SAAD,CACInB,IAAKH,EACL3D,QAAS,EAAKsE,cACdyb,YAAahb,EAAMhD,cACnB+d,eAAgB/a,EAAMyB,UACtBoZ,YAAa7a,EAAM6a,YACnBpa,SAAU,CAAES,IAAKlB,EAAMC,QAASkB,IAAKnB,EAAME,UAC3CmB,KAAMrB,EAAMhD,gBAElB,MAEV,kBAAC,aAAD,CACIwC,OAAQY,KAAKL,MAAMH,aACnB0B,QAASlB,KAAKL,MAAMF,kBACpByb,OAAQ,SAAA7b,GACJ,EAAK8b,iBAAiB,EAAKjc,MAAOG,KAGtC,kBAAC8B,EAAA,EAAD,KACA,kBAACxG,EAAA,EAAD,CAAMC,KAAK,IAAIC,QAASmF,KAAKwa,iBACzB,kBAAC9gB,EAAA,EAAD,CACI0H,UAAU,KACVzD,MAzDJ,CAChB3F,MAAO,UACPU,WAAY,WAyDS,yBAAKsW,GAAG,UAIb,kBAACtV,EAAA,EAAD,CACI0H,UAAU,SAEV,6BACCpB,KAAK0D,oBAAoB1D,KAAKL,MAAMgb,yB,GA5KnC7hB,IAAMwI,YA6LzBC,+BAAiB,SAAArC,GAAK,MAAK,CACtCsC,OAhM2B,6CA+LhBD,CAEXtC,I,6DC/KEmc,GAAWC,aAAe,CAC9BC,UAAW,CACTC,UAAW,CACTC,MAAO,CACLxjB,MAAO,WAETyjB,MAAO,CACLzjB,MAAO,eASTa,GAAYpC,aAAW,SAACC,GAAD,MAAY,CACvCC,KAAM,CACJ+K,SAAU,IACV5K,gBAAiB,mBACjBmL,aAAc,EACdoE,YAAa,QACbzE,YAAa,UACb0E,YAAa,QAEfoV,SAAU,CACRvkB,QAAS,OACTE,eAAgB,SAChBskB,SAAU,OACVC,UAAW,OACXjkB,QAASjB,EAAMkB,QAAQ,IACvB6J,OAAQ,GAEVoa,KAAM,CACJpa,OAAQ/K,EAAMkB,QAAQ,KAExBme,WAAY,CACV/d,MAAO,WAEToG,UAAW,CACT6D,aAAc,GACdC,UAAW,IAEb4Z,KAAM,CACJ7kB,WAAY,MAEd8kB,cAAe,CACb/jB,MAAO,UACP6J,cAAe,EACf5J,WAAY,sBAEd+jB,aAAc,CACZhkB,MAAO,UACP6J,cAAe,EACf5J,WAAY,sBAGdsK,aAAc,CACZvK,MAAO,WAETikB,MAAO,CACL/b,OAAQ,EACRjJ,WAAY,UAEdwS,YAAa,CACXzS,YAAa,EACbC,WAAY,EACZ4K,cAAe,GAEjB2O,SAAU,CACRvZ,WAAY,EACZ4K,cAAe,GAEjBqa,aAAc,GAGdC,aAAc,CACZ3kB,WAAY,UACZQ,MAAO,QACPC,WAAY,qBACZC,cAAe,aACf,UAAW,CACTV,WAAY,UACZQ,MAAO,UAGXokB,KAAM,CACJC,aAAc,EACdze,MAAO,GACPsC,OAAQ,GACRzI,UACE,sEACFX,gBAAiB,UACjBwlB,gBACE,+DACF,2BAA4B,CAC1BC,QAAS,+BACTC,cAAe,GAEjB,kBAAmB,CACjB1lB,gBAAiB,WAEnB,qBAAsB,CACpBW,UAAW,OACXD,WAAY,yBAGhBilB,YAAa,CACX3lB,gBAAiB,UACjBwlB,gBACE,+DACF,WAAY,CACVnlB,QAAS,QACTyG,MAAO,GACPsC,OAAQ,GACRoc,gBACE,mUAGFI,QAAS,MAEX,kBAAmB,CACjB5lB,gBAAiB,YAGrB6lB,UAAW,CACT/e,MAAO,OACPwI,YAAa,OAEf0J,WAAY,CACVjS,SAAU,OACV7G,YAAa,MACb2P,aAAc,MACdlO,UAAW,SAEbmkB,eAAgB,CACd/e,SAAU,OACV7G,YAAa,MACb2P,aAAc,OAEhBkW,WAAY,CACVzW,YAAa,MACbnE,aAAc,OAEhB6a,WAAY,CAIVjf,SAAU,OACV,WAAY,CAEVA,SAAU,aAKV4U,GAAa3Z,IAAMyO,YAAW,SAAoBrI,EAAOsI,GAC7D,OAAO,kBAACC,EAAA,EAAD,eAAOzN,UAAU,KAAKwN,IAAKA,GAAStI,OAG9B,SAAS6d,GAAW7d,EAAOrC,GACxC,IAAMrG,EAAUqC,KAD+B,EAEvBC,IAAMC,UAAS,GAFQ,mBAExCC,EAFwC,KAElCC,EAFkC,OAGDH,IAAMC,UAAS,GAHd,mBAGxCikB,EAHwC,KAGvBC,EAHuB,OAIbnkB,IAAMC,UAAS,GAJF,mBAIxCmkB,EAJwC,KAI7BC,EAJ6B,OAQfrkB,IAAMC,SAAS,IARA,mBAQxCqkB,EARwC,KAQ9BC,EAR8B,OASTvkB,IAAMC,SAAS,CACnDukB,MAAM,EACNC,MAAM,EACNC,MAAM,EACNC,MAAM,EACNC,MAAM,EACNC,MAAM,IAfuC,mBASxCC,EATwC,KAS3BC,EAT2B,OAiBT/kB,IAAMC,SAAS,CACnD+kB,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,IAAI,IAtByC,mBAiBxCC,EAjBwC,KAiB3BC,EAjB2B,OAwBrBtlB,IAAMC,SAAS,IAxBM,mBAwBxC6G,EAxBwC,KAwBjCye,EAxBiC,OAyBTvlB,IAAMC,SAAS,CACnDmG,EAAMof,YACNpf,EAAMqf,cA3BuC,mBAyBxCC,EAzBwC,KAyB3BC,EAzB2B,KA8B/Cra,qBAAU,WACRqa,EAAe,CAACvf,EAAMof,YAAapf,EAAMqf,gBACxC,CAACrf,EAAMof,cAEVla,qBAAU,WACRqa,EAAe,CAACvf,EAAMof,YAAapf,EAAMqf,gBACxC,CAACrf,EAAMqf,cAEVna,qBAAU,WACJlF,EAAMwf,YACRC,OAED,CAACzf,EAAMwf,aAEV,IAAME,EAAe,SAAC3d,GAAD,OAAU,SAACiN,GAC9B2P,EAAe,6BAAKD,GAAN,kBAAoB3c,EAAOiN,EAAMC,OAAOS,WAEtD,IAAIiQ,EAAK,6BAAQjB,GAAR,kBAAsB3c,EAAOiN,EAAMC,OAAOS,WAElC,IAAfiQ,EAAMlB,OACS,IAAfkB,EAAMnB,OACS,IAAfmB,EAAMpB,OACS,IAAfoB,EAAMrB,OACS,IAAfqB,EAAMtB,OACS,IAAfsB,EAAMvB,KAENwB,EAAW,CAAEngB,IAAK,EAAGkQ,MAAO,qBAE5BkQ,EAAY,CAAEpgB,IAAK,EAAGkQ,MAAO,qBAE/BmQ,EAAUH,KAGZ,SAASG,EAAUC,GAEjB/f,EAAMrE,QACJokB,EACArf,EACAV,EAAMrC,MACN,IACA,CAAC,EAAG,GACJshB,GAPgB,EAShBnB,GAIJ,SAAS+B,EAAYG,GACnB,IAAI5I,EAAK8G,EAC4D,IAAjEA,EAASrZ,QAAO,SAAC8X,GAAD,OAAUA,EAAKld,MAAQugB,EAAUvgB,OAAKlD,QACxD6a,EAAG1a,KAAKsjB,GAEV7B,EAAY/G,GAOd,SAASwI,EAAWK,GAClB,OAAQA,EAAatQ,OACnB,IAAK,mBACH,IAAIoQ,EAAO,CACT3B,MAAM,EACNC,MAAM,EACNC,MAAM,EACNC,MAAM,EACNC,MAAM,EACNC,MAAM,GAERE,EAAeoB,GACfD,EAAUC,GACV,MACF,IAAK,aACH,IAAIG,EAAO,CACTtB,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,IAAI,GAENE,EAAegB,GACfC,EAAUD,GACV,MACF,IAAK,UACHjC,GAAa,GAEbje,EAAMrE,QACJ+iB,EACAhe,EACAV,EAAMrC,MACN,IACA,CAAC,EAAG,GACJshB,GAPgB,EAShBnB,GAEF,MACF,IAAK,SACHqB,EAAS,IAETnf,EAAMrE,QACJ+iB,EACA,GACA1e,EAAMrC,MACN,IACA,CAAC,EAAG,GACJshB,GACA,EACAnB,GAEF,MACF,IAAK,aACHC,GAAmB,GACnBqC,IAAW,GAIfjC,GAAY,SAACkC,GAAD,OACVA,EAAMxb,QAAO,SAAC8X,GAAD,OAAUA,EAAKld,MAAQwgB,EAAaxgB,UAsBrD,SAAS0gB,EAAUG,GAEjBtgB,EAAMrE,QACJ+iB,EACAhe,EACAV,EAAMrC,MACN,IACA,CAAC,EAAG,GACJ2iB,GAPgB,EAShBxC,GAiBJ,IA0CMyC,EAAa,SAACpgB,GAClB,IAAIqgB,EAAU,GAUd,GATKxC,GAGHwC,EAAUlB,EACVO,EAAY,CAAEpgB,IAAK,EAAGkQ,MAAO,aAH7B6Q,EAAU,CAAC,EAAG,GAKF,KAAV9f,GACFmf,EAAY,CAAEpgB,IAAK,EAAGkQ,MAAO,WAE3B8Q,IAAqB,CAEvBzgB,EAAMrE,QACJ+iB,EACAhe,EACAV,EAAMrC,MACN,IACA6iB,EACAvB,GAPgB,EAShBnB,QAGF4C,MAIED,EAAoB,SAACtgB,GACzB,SACGue,EAAYD,MACZC,EAAYF,MACZE,EAAYH,MACZG,EAAYJ,MACZI,EAAYL,MACZK,EAAYN,MACZa,EAAYL,IACZK,EAAYJ,IACZI,EAAYH,IACZG,EAAYF,IACZE,EAAYD,IACJ,IAATte,GACCsd,GACAF,IAQC4C,GAAc,SAACvgB,GACnBge,EAAY,IACZ,IAAI4B,EAAO,CACT3B,MAAM,EACNC,MAAM,EACNC,MAAM,EACNC,MAAM,EACNC,MAAM,EACNC,MAAM,GAERE,EAAeoB,GACf,IAAIG,EAAO,CACTtB,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,IAAI,GAENE,EAAegB,GACff,EAAS,IACTlB,GAAa,GACbF,GAAmB,GAGnB/d,EAAMrE,QAAQokB,EADJ,GACe/f,EAAMrC,MAAO,IAAK,CAAC,EAAG,GAAIuiB,GAFjC,EAEoD,IAGlET,GAAc,SAACtf,GACnBwe,EAAe,CACbN,MAAM,EACNC,MAAM,EACNC,MAAM,EACNC,MAAM,EACNC,MAAM,IAERS,EAAe,CACbN,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,IAAI,IAENG,EAAS,IACTlB,GAAa,GACbF,GAAmB,GACnBI,EAAY,IACZoB,EAAe,CAAC,EAAG,KASfoB,GAAoB,WACxB5mB,GAAQ,IAeV,SAASqmB,GAAWQ,GAClB,IAAIJ,EAAU,GAIZA,EAHGxC,EAGOsB,EAFA,CAAC,EAAG,GAsChBtf,EAAMrE,QACJ+iB,EACAhe,EACAV,EAAMrC,MACN,IACA6iB,EACAvB,GAPW,EASX2B,GAoBJ,OACE,kBAAC,WAAD,KACE,kBAACtW,EAAA,EAAD,CAAMhQ,UAAWhD,EAAQG,MACvB,kBAAC8S,EAAA,EAAD,CAAajQ,UAAWhD,EAAQiT,YAAauG,MAAM,UACjD,kBAACtW,EAAA,EAAD,CACEsV,GAAG,eACHrV,QAAQ,KACRH,UAAWhD,EAAQulB,cACnB/L,MAAM,UAJR,2BASC9Q,EAAMyS,SAASoO,SAAS,WACvB,kBAAC,WAAD,KACE,kBAAC5hB,EAAA,EAAD,CAASxE,QAAQ,SAASH,UAAWhD,EAAQ4H,YAE7C,kBAAC1E,EAAA,EAAD,CACEC,QAAQ,QACRH,UAAWhD,EAAQwlB,aACnBhM,MAAM,UAHR,mCAOA,kBAAC1B,GAAA,EAAD,CAAalN,UAAU,YACrB,kBAACmN,GAAA,EAAD,KACE,kBAACE,GAAA,EAAD,CAEEC,QACE,kBAAC8B,GAAA,EAAD,CACEhX,UAAWhD,EAAQga,SACnB5C,SAAUgR,EAAa,QACvBhQ,QAASgP,EAAYD,KACrBtY,MAAOuY,EAAYD,KACnB3lB,MAAM,UACNykB,YACE,0BACEjjB,UAAW4Q,kBAAK5T,EAAQ4lB,KAAM5lB,EAAQimB,eAG1CL,KAAM,0BAAM5iB,UAAWhD,EAAQ4lB,SAGnCvN,MAAO,kBAACnV,EAAA,EAAD,CAAYC,QAAQ,SAApB,YAET,kBAAC8U,GAAA,EAAD,CACEC,QACE,kBAAC8B,GAAA,EAAD,CACEhX,UAAWhD,EAAQga,SACnB5C,SAAUgR,EAAa,QACvBhQ,QAASgP,EAAYF,KACrBrY,MAAOuY,EAAYF,KACnB1lB,MAAM,UACNykB,YACE,0BACEjjB,UAAW4Q,kBAAK5T,EAAQ4lB,KAAM5lB,EAAQimB,eAG1CL,KAAM,0BAAM5iB,UAAWhD,EAAQ4lB,SAGnCvN,MAAO,kBAACnV,EAAA,EAAD,CAAYC,QAAQ,QAAQgE,MAAO,CAAElF,UAAW,OAAQyJ,UAAW,QAAnE,eAET,kBAACuM,GAAA,EAAD,CACEC,QACE,kBAAC8B,GAAA,EAAD,CACEhX,UAAWhD,EAAQga,SACnB5C,SAAUgR,EAAa,QACvBhQ,QAASgP,EAAYH,KACrBpY,MAAOuY,EAAYH,KACnBzlB,MAAM,UACNykB,YACE,0BACEjjB,UAAW4Q,kBAAK5T,EAAQ4lB,KAAM5lB,EAAQimB,eAG1CL,KAAM,0BAAM5iB,UAAWhD,EAAQ4lB,SAGnCvN,MAAO,kBAACnV,EAAA,EAAD,CAAYC,QAAQ,QAAQgE,MAAO,CAAElF,UAAW,OAAQyJ,UAAW,QAAnE,mDAwCT,kBAACuM,GAAA,EAAD,CACEC,QACE,kBAAC8B,GAAA,EAAD,CACEhX,UAAWhD,EAAQga,SACnB5C,SAAUgR,EAAa,QACvBhQ,QAASgP,EAAYN,KACrBjY,MAAOuY,EAAYN,KACnBtlB,MAAM,UACNykB,YACE,0BACEjjB,UAAW4Q,kBAAK5T,EAAQ4lB,KAAM5lB,EAAQimB,eAG1CL,KAAM,0BAAM5iB,UAAWhD,EAAQ4lB,SAGnCvN,MAAO,kBAACnV,EAAA,EAAD,CAAYC,QAAQ,QAAQgE,MAAO,CAAElF,UAAW,OAAQyJ,UAAW,QAAnE,cAMf,kBAAC,WAAD,MAGF,kBAAC/D,EAAA,EAAD,CAASxE,QAAQ,SAASH,UAAWhD,EAAQ4H,YAE7C,kBAAC1E,EAAA,EAAD,CACEsV,GAAG,eACHrV,QAAQ,QACRH,UAAWhD,EAAQwlB,aACnBhM,MAAM,UAJR,mBAQA,yBAAKrS,MAAO,CAAEC,MAAO,OAAQsE,UAAW,SACtC,kBAACpI,EAAA,EAAD,CACE3C,QAAQ,OACRE,eAAe,SACfD,WAAW,SACXQ,QAAS,GAET,kBAACkC,EAAA,EAAD,KACE,kBAAC8V,GAAA,EAAD,CACEf,MAAM,QACNG,GAAG,sBACHc,WAAY,CACVtZ,QAAS,CACPG,KAAMH,EAAQsZ,WACdD,MAAOrZ,EAAQsZ,aAGnBkQ,gBAAiB,CACfxpB,QAAS,CACPG,KAAMH,EAAQsmB,WACdmD,QAAS,UACTC,OAAQ,WAGZ7a,MAAOmZ,EAAY,GAKnBhlB,UAAWhD,EAAQmmB,UACnBhjB,QAAQ,WACR+C,KAAK,WAGT,kBAAC5C,EAAA,EAAD,KACE,kBAAC8V,GAAA,EAAD,CACEpW,UAAWhD,EAAQmmB,UACnB9N,MAAM,QACNiB,WAAY,CACVtZ,QAAS,CACPG,KAAMH,EAAQsZ,WACdD,MAAOrZ,EAAQsZ,aAGnBkQ,gBAAiB,CACfxpB,QAAS,CACPG,KAAMH,EAAQsmB,WACdmD,QAAS,UACTC,OAAQ,WAGZlR,GAAG,uBACH3J,MAAOmZ,EAAY,GAKnB7kB,QAAQ,WACR+C,KAAK,YAIX,6BACE,kBAACyjB,GAAA,EAAD,CAAezpB,MAAO0kB,IACpB,kBAACgF,GAAA,EAAD,CACE/a,MAAOmZ,EACP5Q,SAldW,SAACM,EAAOmB,GAC7BA,EAAS,IAAMnQ,EAAMof,aAAejP,EAAS,IAAMnQ,EAAMqf,aAC3DpB,GAAa,GAEfsB,EAAepP,IA+cDgR,kBAAkB,MAClBrjB,kBAAgB,eAChBsjB,iBA5chB,SAAyB9B,GACvB,MAAM,QAAN,OAAYA,IA4cE+B,IAAKrhB,EAAMof,YACXkC,IAAKthB,EAAMqf,gBAIhBrB,EACC,yBAAKvf,MAAO,CAAEC,MAAO,SACnB,kBAAC9D,EAAA,EAAD,CACE3C,QAAQ,OACRE,eAAe,SACfD,WAAW,SACXgK,UAAU,OACVrD,cAAc,SACdC,EAAG,GAEH,kBAAClE,EAAA,EAAD,CAAKkE,EAAG,EAAGyiB,GAAI,GACb,kBAACC,GAAA,EAAD,CACEhkB,KAAK,QACL1E,MAAM,UACN2B,QAAQ,WACRkB,QAAS4kB,EACTjmB,UAAWhD,EAAQ2lB,cAEnB,kBAAC,KAAD,CAAY3iB,UAAWhD,EAAQ0lB,eAPjC,sBAcN,+BAIJ,kBAAC/d,EAAA,EAAD,CAASxE,QAAQ,SAASH,UAAWhD,EAAQ4H,YAC7C,kBAAC1E,EAAA,EAAD,CACEC,QAAQ,QACRH,UAAWhD,EAAQwlB,aACnBhM,MAAM,UAHR,sBAOA,0BAAMxW,UAAWhD,EAAQslB,KAAM6E,YAAU,EAACC,aAAa,OACrD,kBAAChR,GAAA,EAAD,CACEE,WAAY,CACVtZ,QAAS,CACPG,KAAMH,EAAQomB,eACd/M,MAAOrZ,EAAQomB,iBAGnB5N,GAAG,iBACHrV,QAAQ,WACRsH,KAAK,QACL2M,SA9fQ,SAACM,GACnB,IAAM7I,EAAQ6I,EAAMC,OAAO9I,MAC3BgZ,EAAShZ,IA6fC3I,KAAK,QACL2I,MAAOzF,EACPihB,WAvSW,SAACxhB,GACT,SAATA,EAAEV,KACJU,EAAEyhB,kBAsSMC,QAlSQ,SAAC1hB,GAIF,IAAbA,EAAE2hB,SACJ3hB,EAAEyhB,qBAgSGlhB,EACC,yBAAKjC,MAAO,CAAEC,MAAO,SACnB,kBAAC9D,EAAA,EAAD,CACE3C,QAAQ,OACRE,eAAe,SACfD,WAAW,SACXgK,UAAU,OACVrD,cAAc,SACdC,EAAG,GAEH,kBAAClE,EAAA,EAAD,CAAKkE,EAAG,EAAGijB,GAAI,GACb,kBAACP,GAAA,EAAD,CACEhkB,KAAK,QACL1E,MAAM,UACN2B,QAAQ,WACRkB,QAAS4kB,EACTjmB,UAAWhD,EAAQ2lB,cAEnB,kBAAC,KAAD,CAAY3iB,UAAWhD,EAAQ0lB,eAPjC,sBAcN,+BAGJ,kBAAChS,EAAA,EAAD,KACE,yBAAKvM,MAAO,CAAEC,MAAO,SACnB,kBAACO,EAAA,EAAD,CAASxE,QAAQ,SAASH,UAAWhD,EAAQ4H,YAC5Cgf,EAAS3hB,OAAS,EACjB,kBAAC0F,EAAA,EAAD,CAAOC,UAAU,KAAK5H,UAAWhD,EAAQklB,UACtC0B,EAAS9e,KAAI,SAAC9C,GACb,IAAI4gB,EAxpBE+C,EA8pBN,MAJmB,UAAf3jB,EAAKqT,QACPuN,EAAO,kBAAC,KAAD,OAIP,wBAAIzd,IAAKnD,EAAKmD,KACZ,kBAACuiB,GAAA,EAAD,CACExkB,KAAK,QACL0f,KAAMA,EACNvN,MAAOrT,EAAKqT,MACZsS,SACiB,UAAf3lB,EAAKqT,WACDuS,GAtqBNjC,EAuqBmB3jB,EAvqBF,WACrCsjB,EAAWK,KAwqBS3lB,UAAWhD,EAAQqlB,YAO7B,8BAEF,kBAAC/hB,EAAA,EAAD,CACE3C,QAAQ,OACRE,eAAe,SACfD,WAAW,SACXgK,UAAU,OACVrD,cAAc,SACdC,EAAG,GAaH,kBAAClE,EAAA,EAAD,CAAKkE,EAAG,GACN,kBAAC0iB,GAAA,EAAD,CACEhkB,KAAK,QACL1E,MAAM,UACN2B,QAAQ,WACRkB,QAAS+kB,GACTpmB,UAAWhD,EAAQ2lB,cAEnB,kBAAC,KAAD,CAAkB3iB,UAAWhD,EAAQ0lB,eAPvC,wBAgBV,kBAAChC,GAAA,EAAD,CACEhJ,WAAS,EACTxP,SAAS,KACT1I,KAAMA,EACNkE,QAAS2iB,GACT1F,oBAAqB1H,IAErB,kBAAC4O,GAAD,CACE3G,kBAAmBxb,EAAMwb,kBACzB7f,QAzmBgB,SAAC4W,GACvBmO,KACA,IACIX,EAAO,CACT3B,MAAM,EACNC,MAAM,EACNC,MAAM,EACNC,MAAM,EACNC,MAAM,EACNC,MAAM,GAERE,EAAeoB,GACf,IAAIG,EAAO,CACTtB,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,IAAI,GAENE,EAAegB,GACfjC,GAAa,GACbF,GAAmB,GACnB4C,KACAxB,EAAS5M,GAETvS,EAAMrE,QACJokB,EACAxN,EACAvS,EAAMrC,MACN,IA3BY,CAAC,EAAG,GA6BhBuiB,GAPgB,GAShB,IAykBIzN,SAAUzS,EAAMyS,SAChBD,YAAaxS,EAAMwS,YACnBrM,MAAOnG,EAAMof,gB,qGCt9BR,SAASgD,GAAapiB,GAAQ,IAAD,EACdnG,mBAAS,GADK,mBACnCwoB,EADmC,KAC3BC,EAD2B,OAEdzoB,mBAC1B0oB,GAAW1d,QAAO,qBAAG9C,KAAgBygB,QAAQ,UAAY,MAHjB,mBAE3BC,GAF2B,aAKd5oB,mBAAS,IALK,mBAKnC6oB,EALmC,aAMF9oB,IAAMC,SAAS,KANb,mBAMnC8oB,EANmC,KAMrBC,EANqB,OAOVhpB,IAAMC,SACpCgpB,aAAU,IAAI3nB,KAAKA,KAAK4nB,OAAQ,IARQ,mBAOnCC,EAPmC,KAOzBC,EAPyB,OAUdppB,IAAMC,SAASopB,aAAQF,EAAUV,IAVnB,mBAUnCa,EAVmC,KAU3BC,EAV2B,OAYVvpB,IAAMC,SAAS,MAZL,mBAYnCupB,EAZmC,aAaZvpB,mBAAS,KAbG,mBAanCwpB,EAbmC,KAa1BC,EAb0B,OAcFzpB,oBAAS,GAdP,mBAcnC0pB,EAdmC,KAcrBC,EAdqB,OAeZ3pB,mBAAS,GAfG,gCAgBRA,mBAAS,IAhBD,mBAgBnC4pB,EAhBmC,KAgBxBC,EAhBwB,OAiBR7pB,mBAAS,GAjBD,gCAkBRA,mBAAS,IAlBD,gCAmBZA,mBAAS,IAnBG,oBAmBnC8pB,GAnBmC,MAmB1BC,GAnB0B,SAoBZ/pB,mBAAS,GApBG,qCAqBZA,mBAAS,IArBG,qCAsBlBA,mBAAS,IAtBS,qBAsBnCgqB,GAtBmC,MAsB7BC,GAtB6B,SAuBlBjqB,mBAAS,GAvBS,qBAuBnCkqB,GAvBmC,MAuB7BC,GAvB6B,SAwBlBnqB,mBAAS,GAxBS,qBAwBnCoqB,GAxBmC,MAwB7BC,GAxB6B,SAyBlBrqB,mBAAS,GAzBS,qCA0BlBA,mBAAS,IA1BS,qCA2BlBA,mBAAS,IA3BS,qCA4BlBA,mBAAS,IA5BS,qCA6BlBA,mBAAS,IA7BS,qCA8BlBA,mBAAS,IA9BS,qCA+BFA,oBAAS,IA/BP,qBA+BnCsqB,GA/BmC,MA+BrBC,GA/BqB,SAgCIvqB,mBAAS,IAhCb,qBAgCnCwqB,GAhCmC,MAgClBC,GAhCkB,MAiG7BC,QAAQnB,GAOrBle,qBAAU,WACR,IAAIsf,EAAO,GACI,KAAX9B,GAAiBA,EAAOnmB,QAAU,IACpCioB,EAAOjC,GAAW1d,QAChB,qBAAG4f,WACU/f,cAAc8d,QAAQE,EAAOhe,gBAAkB,MAGhE+d,EAAU+B,GACVJ,IAAgB,KACf,CAAC1B,IAEJxd,qBAAU,WAIRkf,IAAgB,KACf,CAACrB,EAAUG,IAEdhe,qBAAU,WACJqe,GACFvjB,EAAMrE,QAAQ0nB,KAEf,CAACA,IAEJ,IAqCM1pB,GAAYpC,YAAW,CAC3B6Y,OAAQ,CACNzR,SAAU,GACV,WAAY,CACVuI,YAAa,GACbvI,SAAU,IAEZ/G,gBAAiB,WAEnB8sB,KAAM,CACJhmB,MAAO,OACP8D,SAAU,SACV5K,gBAAiB,WAEnB+sB,UAAW,CACTjmB,MAAO,OACP8D,SAAU,SACV5K,gBAAiB,SAEnBqlB,aAAc,CACZ3kB,WAAY,UACZQ,MAAO,QACPC,WAAY,qBACZC,cAAe,aACf,UAAW,CACTV,WAAY,UACZQ,MAAO,UAGX8rB,eAAgB,CACd9rB,MAAO,WAWP+rB,GAAO,WACT,OAAOC,KAAKC,SAASC,SAAS,IAAIhgB,OAAO,IAQ3C,IAkIM1N,GAAUqC,KAChB,OACE,kBAAC,IAAMQ,SAAP,KAEE,kBAACmQ,EAAA,EAAD,CAAMhQ,UAAWhD,GAAQotB,KAAMjqB,QAAQ,YACrC,kBAAC8P,EAAA,EAAD,CAAajQ,UAAWhD,GAAQ0O,WAC9B,kBAACxL,EAAA,EAAD,CACE0H,UAAW,MACXzH,QAAQ,KACRC,cAAY,EACZJ,UAAWhD,GAAQstB,eACnBnmB,MAAO,CAAE1F,WAAY,uBALvB,0CASA,kBAAC6B,EAAA,EAAD,eAAKuiB,aAAa,gBAjKL,CACnBhO,QAAS,mBACTzM,YAAa,UACb5D,EAAG,EACHlG,OAAQ,IA8JA,kBAACwB,EAAA,EAAD,CAAMC,WAAS,EAACU,QAAQ,gBACtB,kBAACX,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,EACZ9C,MAAO,CAAEuE,UAAW,OAAQD,aAAc,QAE3C,kBAACqM,GAAA,EAAD,CAAa9U,UAAWhD,GAAQ2tB,iBAAmBxmB,MAAO,CAAEC,MAAO,SACjE,kBAACwmB,GAAA,EAAD,CACElE,QAAM,EACNlR,GAAG,8CAFL,oCAMA,kBAACqV,GAAA,EAAD,CACEC,QAAQ,6CACRtV,GAAG,uCACHuV,aAAc,MAGd3W,SAtPY,SAACM,GAC7B5S,QAAQC,IAAI,QACZD,QAAQC,IAAI2S,EAAMC,OAAO9I,OACzB,IAAIqe,EAEJA,EAAOjC,GAAW+C,MAAK,SAAClO,GAAD,OAAQA,EAAG9R,OAAS0J,EAAMC,OAAO9I,SAGxDyc,EAAgB4B,GAChBpoB,QAAQC,IAAImoB,IA8OI7U,MAAM,wBACN4V,cAAY,EACZjrB,UAAWhD,GAAQqU,aAEnB,kBAAC6Z,GAAA,EAAD,CAAUrf,MAAO,OAAjB,SACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,OAAjB,cA6CN,kBAAC/L,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,GACb,kBAAC,KAAD,CACEkkB,OAAQC,KACRC,MAAOC,KACPtrB,UAAW,eAEX,kBAACurB,GAAA,EAAD,CACEC,gBAAc,EACdrrB,QAAQ,SACRkV,MAAM,cACNoW,OAAO,aACPxjB,OAAO,SACPuN,GAAG,WACH3J,MAAO4c,EACPrU,SAtSO,SAACM,GACxBgU,EAAYhU,GACZmU,EAAUF,aAAQjU,EAAOqT,KAqST2D,OAAO,WAoBb,kBAAC5rB,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,GACb,kBAAC,KAAD,CAAyBkkB,OAAQC,KAAUC,MAAOC,MAChD,kBAACC,GAAA,EAAD,CACEC,gBAAc,EACdrrB,QAAQ,SACRkV,MAAM,cACNoW,OAAO,aACPxjB,OAAO,SACPuN,GAAG,SACH3J,MAAO+c,EACPxU,SAhUK,SAACM,GACtB,GAAIA,GAAS+T,EACX7L,MAAM,gEACD,CACLiM,EAAUnU,GACV,IAAIiX,EAAWnB,KAAKoB,IAAIlX,EAAMmX,UAAYpD,EAASoD,WAC/CC,EAAiBtB,KAAKuB,KAAKJ,EAAQ,OACvC3D,EAAU8D,KA0TIJ,OAAO,WAMb,kBAAC5rB,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,GACb,kBAACnH,EAAA,EAAD,CACEjD,MAAI,EACJoK,GAAI,GACJlH,WAAS,EACTU,QAAQ,eACR0D,MAAO,CAAEuE,UAAW,OAAQD,aAAc,QAE1C,kBAAC3I,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,GACb,kBAAC6N,GAAA,EAAD,CAAa9U,UAAWhD,GAAQ2tB,kBAC9B,kBAACC,GAAA,EAAD,CACElE,QAAM,EACNlR,GAAG,8CAFL,WAMA,kBAACqV,GAAA,EAAD,CACEC,QAAQ,6CACRtV,GAAG,uCACH3J,MAAOsd,EACP/U,SA/cQ,SAACM,GAC7B0U,EAAa1U,EAAMC,OAAO9I,QA+cNof,cAAY,EACZjrB,UAAWhD,GAAQqU,aAEnB,kBAAC6Z,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,QAIN,kBAAC/L,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,GACb,kBAAC6N,GAAA,EAAD,CAAa9U,UAAWhD,GAAQ2tB,kBAC9B,kBAACC,GAAA,EAAD,CACElE,QAAM,EACNlR,GAAG,8CAFL,YAMA,kBAACqV,GAAA,EAAD,CACEC,QAAQ,6CACRtV,GAAG,uCACH3J,MAAOwd,GACPjV,SApeM,SAACM,GAC3B4U,GAAW5U,EAAMC,OAAO9I,QAoeJof,cAAY,EACZjrB,UAAWhD,GAAQqU,aAEnB,kBAAC6Z,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,QAIN,kBAAC/L,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,GACZoiB,IAAW,EACV,kBAACvU,GAAA,EAAD,CAAa9U,UAAWhD,GAAQ2tB,kBAC9B,kBAACC,GAAA,EAAD,CACElE,QAAM,EACNlR,GAAG,8CAFL,QAMA,kBAACqV,GAAA,EAAD,CACEC,QAAQ,6CACRtV,GAAG,uCACH3J,MAAO0d,GACPnV,SAzfC,SAACM,GACxB8U,GAAQ9U,EAAMC,OAAO9I,QAyfCof,cAAY,EACZjrB,UAAWhD,GAAQqU,aAEnB,kBAAC6Z,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,QAIJ,8BAEDwd,IAAW,EACV,kBAACvU,GAAA,EAAD,CAAa9U,UAAWhD,GAAQ2tB,kBAC9B,kBAACC,GAAA,EAAD,CACElE,QAAM,EACNlR,GAAG,8CAFL,QAMA,kBAACqV,GAAA,EAAD,CACEC,QAAQ,6CACRtV,GAAG,uCACH3J,MAAO4d,GACPrV,SA9hBC,SAACM,GACxBgV,GAAQhV,EAAMC,OAAO9I,QA8hBCof,cAAY,EACZjrB,UAAWhD,GAAQqU,aAEnB,kBAAC6Z,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,QAIJ,8BAEDwd,IAAW,EACV,kBAACvU,GAAA,EAAD,CAAa9U,UAAWhD,GAAQ2tB,kBAC9B,kBAACC,GAAA,EAAD,CACElE,QAAM,EACNlR,GAAG,8CAFL,QAMA,kBAACqV,GAAA,EAAD,CACEC,QAAQ,6CACRtV,GAAG,uCACH3J,MAAO8d,GACPvV,SAnkBC,SAACM,GACxBkV,GAAQlV,EAAMC,OAAO9I,QAmkBCof,cAAY,EACZjrB,UAAWhD,GAAQqU,aAEnB,kBAAC6Z,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,GAAjB,KACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,MACA,kBAACqf,GAAA,EAAD,CAAUrf,MAAO,IAAjB,QAIJ,iCA4nBR,kBAAC/L,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,EAAGlH,WAAS,EAACS,UAAU,MAAMC,QAAQ,UAClD,kBAACqU,GAAA,EAAD,CAAa7M,OAAO,UAClB,kBAACif,GAAA,EAAD,CACEhkB,KAAK,SACL/C,QAAQ,WACRkB,QArjCG,SAACwE,GAEpB,IAAImmB,EAAkB,GACtB,GAAqB,KAAjB3D,EAAoB,CAEtB2D,EAAkB/D,GAAW+C,MAAK,SAAClO,GAAD,MAAoB,QAAZA,EAAG9R,QAC7Csd,EAFW,SAIX0D,EAAkB3D,EAGpBvmB,QAAQC,IAAIiqB,GACZ,IAEIhnB,EAvBeinB,EAqBbC,EAAO,IAAItrB,KAAK6nB,GAChB0D,EAAK,IAAIvrB,KAAKgoB,GAEhBwD,EAAY,GAChB,IAAKpnB,EAAI,EAAGA,EAAI,EAAGA,IACjB,OAAQA,GACN,KAAK,EAEH,IAAIqnB,EACJ,IAFAD,EAAY,QAAUjD,EAAY,IAAME,GAEnCgD,EAAI,EAAGA,EAAIhD,GAASgD,IACvB,OAAQA,GACN,KAAK,EACHD,EAAYA,EAAY,IAAM7C,GAC9B,MACF,KAAK,EACH6C,EAAYA,EAAY,IAAM3C,GAC9B,MACF,KAAK,EACH2C,EAAYA,EAAY,IAAMzC,IA4D1C,GAAoC,qBAAzBqC,EAAgBhhB,KACzB,GAAIkhB,GAAQC,EAAI,CACdrC,IAAgB,GAChB,IAAMwC,EAAe,CACnBC,YAAahC,KAASA,MAvGT0B,EAuG8BrrB,OAtGrCA,KAAK4rB,MAAMP,GACR,KAsGTQ,KAAMT,EAAgBhhB,KACtBmN,SAAU6T,EAAgBvkB,KAAO,KAAOukB,EAAgBU,aACxDxU,YAAa,iBAAmB8T,EAAgBW,aAAe,OAC/DT,KACEA,EAAKU,cACL,IACC,KAAOV,EAAKW,WAAa,IAAIC,OAAO,IAEpC,IAAMZ,EAAKa,WAAWD,OAAO,GAChCX,GACEA,EAAGS,cACH,IACC,KAAOT,EAAGU,WAAa,IAAIC,OAAO,IAElC,IAAMX,EAAGY,WAAWD,OAAO,GAC9BzR,aAAc+Q,GAEhBlD,GAAgB,GAChBF,EAAWsD,QAEXtC,GACE,wDAEFF,IAAgB,QAGlBE,GAAmB,qCACnBF,IAAgB,IA47BF9pB,UAAWhD,GAAQ2lB,cAEnB,kBAAC,KAAD,CAAY3iB,UAAWhD,GAAQ0lB,eANjC,aAUHmH,IACC,kBAAC/pB,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,GAAIlH,WAAS,EAACS,UAAU,MAAMC,QAAQ,UACnD,kBAACiW,GAAA,EAAD,CACEC,SAAS,QACTxS,MAAO,CAAEC,MAAO,OAAQ6D,OAAQ,QAE/B8hB,U,cCtzCN,SAAShS,GAAcrS,GAElC,OADJ5D,QAAQC,IAAI2D,GAEJ,kBAAC,IAAM7F,SAAP,KACI,6BAEI,kBAACC,EAAA,EAAD,CACIC,WAAS,EACTS,UAAU,SACVC,QAAQ,SACR7C,WAAW,SACXQ,QAAS,GAKT,kBAACkC,EAAA,EAAD,KACI,kBAACkF,EAAA,EAAD,CAAmBrB,MAAO,CAAC3F,MAAO,eAEtC,kBAACsB,EAAA,EAAD,CAAMjD,MAAI,EAACoK,IAAE,GAMU,UAArBvB,EAAMkJ,WACJ,yBAAKoJ,IAAK,+BAAgC5T,MAAM,QAAQ+L,IAAI,SAE5D,mCAEkB,OAArBzK,EAAMkJ,WACH,yBAAKoJ,IAAK,sBAAuB5T,MAAM,QAAQ+L,IAAI,SAEnD,mCAEqB,cAArBzK,EAAMkJ,YAAmD,SAArBlJ,EAAMkJ,YAA8C,OAArBlJ,EAAMkJ,WACzE,yBAAKoJ,IAAK,uBAAwB5T,MAAM,QAAQ+L,IAAI,SAEpD,oCAIJ,kBAACjQ,EAAA,EAAD,CAAYC,QAAQ,KAAKC,cAAY,GAArC,yBAGA,kBAACF,EAAA,EAAD,CAAYC,QAAQ,KAAKC,cAAY,GACjC,8BAAM,yBAAK4X,IAAKtS,EAAMwS,YAAa9T,MAAM,OAAO+L,IAAI,aADxD,IAC8EzK,EAAMyS,UAEpF,kBAACjY,EAAA,EAAD,CAAaC,QAAQ,YAAYC,cAAY,GAA7C,gDAGA,kBAACF,EAAA,EAAD,CAAaC,QAAQ,YAAYC,cAAY,GAA7C,4C,qBCpDL,SAASgY,GAAgB1S,GAEpC,OACI,kBAAC,IAAM7F,SAAP,KACI,6BAEI,kBAACC,EAAA,EAAD,CACIC,WAAS,EACTS,UAAU,SACVC,QAAQ,SACR7C,WAAW,SACXQ,QAAS,GAGT,kBAAC0B,EAAA,EAAD,CAAMjD,MAAI,EAACoK,IAAE,GACS,UAArBvB,EAAMkJ,WACC,yBAAKoJ,IAAK,+BAAgC5T,MAAM,QAAQ+L,IAAI,SAE5D,mCAEkB,OAArBzK,EAAMkJ,WACH,yBAAKoJ,IAAK,sBAAuB5T,MAAM,QAAQ+L,IAAI,SAEnD,mCAEkB,cAArBzK,EAAMkJ,YAAmD,SAArBlJ,EAAMkJ,YAA8C,OAArBlJ,EAAMkJ,WACtE,yBAAKoJ,IAAK,uBAAwB5T,MAAM,QAAQ+L,IAAI,SAEpD,oCAIR,kBAACjQ,EAAA,EAAD,CAAYC,QAAQ,KAAKC,cAAY,GAArC,uCASA,kBAACF,EAAA,EAAD,CAAaC,QAAQ,YAAYC,cAAY,GAA7C,+CCXL,SAAS4sB,KAAO,IAAD,EACQztB,mBAAS,IADjB,mBACrB0tB,EADqB,KACTC,EADS,OAE4B3tB,mBAAS,IAFrC,mBAErB4tB,EAFqB,KAECC,EAFD,OAGU7tB,mBAAS,IAHnB,mBAGrB8tB,EAHqB,KAGRC,EAHQ,OAIsB/tB,mBAAS,IAJ/B,mBAIrB2hB,EAJqB,KAIFqM,EAJE,OAKUhuB,mBAAS,IALnB,mBAKrBiuB,EALqB,KAKRC,EALQ,OAMYluB,mBAAS,IANrB,mBAMrB+sB,EANqB,KAMPoB,EANO,OAOkBnuB,oBAAS,GAP3B,mBAOrBouB,EAPqB,KAOJC,EAPI,OAQgBruB,oBAAS,GARzB,mBAQrBsuB,EARqB,KAQLC,EARK,OASsBvuB,oBAAS,GAT/B,mBASrBwuB,EATqB,KASFC,EATE,OAU0BzuB,oBAAS,GAVnC,mBAUrB0uB,EAVqB,KAUAC,EAVA,OAWU3uB,oBAAS,GAXnB,oBAWrB4uB,GAXqB,MAWRC,GAXQ,SAYkB7uB,mBAAS,GAZ3B,qBAYJ8uB,IAZI,gBAakB9uB,mBAAS,GAb3B,qBAarB+uB,GAbqB,MAaJC,GAbI,SAcUhvB,mBAAS,GAdnB,qBAcrBulB,GAdqB,MAcR0J,GAdQ,SAeUjvB,mBAAS,GAfnB,qBAerBwlB,GAfqB,MAeR0J,GAfQ,SAgBclvB,oBAAS,GAhBvB,qBAgBrBmvB,GAhBqB,gBAiBQnvB,mBAAS,KAjBjB,qBAiBrBovB,GAjBqB,MAiBTC,GAjBS,SAkBkBrvB,mBAAS,GAlB3B,qBAkBrBsvB,GAlBqB,MAkBJC,GAlBI,SAmBQvvB,mBAAS,QAnBjB,qBAmBrBqP,GAnBqB,MAmBTmgB,GAnBS,SAqBoBxvB,mBAAS,CACvD6kB,YAAa,GACbhe,MAAO,GACP/C,MAAO,GACP2rB,iBAAkB,GAClBC,YAAa,GACbtK,YAAa,KA3Ba,qBAqBrBuK,GArBqB,MAqBHC,GArBG,SA6BJ7vB,IAAMC,UAAS,GA7BX,qBA6BrBC,GA7BqB,MA6BfC,GA7Be,SA8BUH,IAAMC,UAAS,GA9BzB,qBA8BrB6vB,GA9BqB,MA8BRC,GA9BQ,SA+BF/vB,IAAMC,SAAS,SA/Bb,qBA+BrB+vB,GA/BqB,MA+BdC,GA/Bc,SAgCkBjwB,IAAMC,SAAS,SAhCjC,qBAgCrBiwB,GAhCqB,MAiCtBtyB,IAjCsB,MAiCdmR,eACRyM,GAAaxM,YAAcpR,GAAMqR,YAAYC,KAAK,OAlC5B,GAmCFlP,IAAMC,SAAS,IAnCb,qBAmCdya,IAnCc,gBAoCsB1a,IAAMC,SAAS,SApCrC,qBAoCrBkwB,GApCqB,MAoCFC,GApCE,SAqCQpwB,IAAMC,UAAS,GArCvB,qBAqCrB2lB,GArCqB,MAqCTyK,GArCS,MAwHtB3yB,GA7EYC,aAAW,SAACC,GAAD,MAAY,CACvCC,KAAM,CACJC,SAAU,GAEZwyB,UAAW,CACTpyB,YAAa,OAEfM,MAAO,CACLK,QAASjB,EAAMkB,QAAQ,GACvBa,UAAW,SACXT,MAAOtB,EAAMa,QAAQ8xB,KAAKtqB,WAE5BuqB,WAAY,CACVtxB,MAAO,UACP,kBAAmB,CACjBlB,gBAAiB,UACjBkB,MAAO,UAGXuxB,OAAQ,CACN5xB,QAAS,EACT8J,OAAQ,EACRzJ,MAAOtB,EAAMa,QAAQ8xB,KAAKtqB,UAC1BjI,gBAAiB,WAEnByC,UAAW,CACTmI,SAAU,SACV5K,gBAAiB,QACjBoJ,OAAQ,OACRvI,QAAS,MACTF,UAAW,+DAEb+xB,iBAAkB,CAChB5rB,MAAO,MACPsC,OAAQ,QACR/I,QAAS,OACTC,WAAY,SACZC,eAAgB,UAElBoyB,oBAAqB,CACnB7rB,MAAO,OACPzG,QAAS,OACTC,WAAY,SACZC,eAAgB,SAChBJ,WAAY,QAEdyyB,SAAU,CACR5yB,gBAAiB,QACjBG,WAAY,MAMd0yB,eAAgB,CACd3xB,MAAO,UACP4J,YAAa,UACb3K,WAAY,MACZ4K,cAAe,OAEjB+nB,WAAY,CACV,QAAS,CACP1nB,UAAWxL,EAAMkB,QAAQ,GACzBgG,MAAO,OACPsC,OAAQ,OACR/I,QAAS,OACTC,WAAY,SACZC,eAAgB,SAChBP,gBAAiB,WAEnB6L,SAAU,CACRwD,WAAY,KACZC,YAAa,UAKHvN,GA4BhBuL,qBAAU,WACRmQ,OAAOsV,eAAiB,WACtB,MAAO,8BAIXzlB,qBAAU,WACJujB,IAEFrG,OAED,CAACwE,IAEJ1hB,qBAAU,cAIP,CAAC4kB,KAEJ5kB,qBAAU,WACW,IAAf4iB,GAEF8C,OAED,CAAChB,KAEJ1kB,qBAAU,WACW,IAAf4iB,IAEF/tB,IAAQ,GACR8wB,GACErB,GAAiB9K,YACjB8K,GAAiB9oB,MACjB8oB,GAAiB7rB,MACjBirB,GACAY,GAAiBD,YACjBC,GAAiBvK,YACjBuK,GAAiBsB,kBAEnBzV,OAAO0V,SAASrvB,KAAO,UAExB,CAACktB,KAEJ1jB,qBAAU,WACRmQ,OAAOC,SAAS,EAAG,KAElB,IAEHpQ,qBAAU,WACR9I,QAAQC,IAAI,MACZD,QAAQC,IAAI6M,MACX,CAACA,KAEJhE,qBAAU,WACR8lB,QAMF,IA0DM5I,GAAe,WACnBroB,IAAQ,GACR4uB,GAAmB,GACnBE,GAAmB,GACnBoB,IAAc,GACd,IAAMruB,EACJ,0EACAgrB,EAAaC,YACb,oBACAD,EAAaG,KACb,aACAH,EAAaJ,KACb,WACAI,EAAaH,GACb,IACAG,EAAajR,aACb,gBACF3Z,IACGC,IAAIL,EAAK,CACRgT,QAAS,CACP,8BAA+B,OAGlC1S,MAAK,SAACC,GACL4rB,EAAe5rB,EAASG,MACxBuuB,GACE,CACExM,MAAM,EACNC,MAAM,EACNC,MAAM,EACNC,MAAM,EACNC,MAAM,GAER,GACAtiB,EAASG,KACT,EACA,CAAC,EAAG,GACJ,CACEsiB,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,IAAI,GAEN,MAGHhiB,OAAM,SAACC,GAEN8qB,EAAe,OAGjBK,GAAkB,IAIhBwC,GAAa,WACjB,IAAIrB,EAAcC,GAAiBD,YAC/B7K,EAAc8K,GAAiB9K,YAC/BO,EAAcuK,GAAiBvK,YAC/Bve,EAAQ8oB,GAAiB9oB,MACzB/C,EAAQ6rB,GAAiB7rB,MACzB2rB,EAAmBE,GAAiBF,iBAepC2B,GAdmBzB,GAAiBsB,iBAcxB7L,EAAYD,GAAK,eAAiB,gBAClDiM,EAAYhM,EAAYF,GACpBkM,EAAY,eACZA,EAAY,eAChBA,EAAYhM,EAAYH,GACpBmM,EAAY,eACZA,EAAY,eAChBA,EAAYhM,EAAYJ,GACpBoM,EAAY,eACZA,EAAY,eAChBA,EAAYhM,EAAYL,GACpBqM,EAAY,eACZA,EAAY,eAIA,KAAVvqB,IACEge,EAAYN,OACd1d,GAAe,eAEbge,EAAYL,OACd3d,GAAe,eAEbge,EAAYJ,OACd5d,GAAe,eAEbge,EAAYH,OACd7d,GAAe,eAEbge,EAAYF,OACd9d,GAAe,eAEbge,EAAYD,OACd/d,GAAe,gBASrB,IAIM9E,EACJ,gFACA0tB,EADA,uBAIA5oB,EACA,WAViB6oB,EAAY,GAY7B,WAXiBA,EAAY,GAa7B,iBACA5rB,EAGF3B,IACGC,IAAIL,EAAK,CACRgT,QAAS,CACP,8BAA+B,IAC/B,+BAAgC,OAGnC1S,MAAK,SAACC,GACDksB,GACFD,GAAkB,GAEpB4B,IAAqB,GACjB7tB,EAASG,KAAK4uB,iBAAiB3uB,OAAS,GAC1C2rB,GAAmB,GAEpBiD,GAAwBhvB,EAASG,KAAM,UAEtCksB,GAAuB,GAqCzBzuB,IAAQ,MAETiD,OAAM,SAACC,QA4GJ+tB,GAAoB,WACxB,IAAMtI,EAASrN,OAAO0V,SAASrI,OAEnB0I,EADG,IAAIC,gBAAgB3I,GACVzmB,IAAI,WAIzB,OAHY,KAARmvB,GACF/B,GAAc+B,GAERliB,IACN,IAAK,QACHggB,GAAc,mEACd,MACF,IAAK,KACHA,GAAc,gEACd,MACF,QACEA,GAAc,yCA8EpBoC,GAAiB,SACrB5tB,EACA5B,EACAC,EACAF,EACAkB,EACAY,GAKA,GAFAvB,QAAQC,IAAI,gBACZD,QAAQC,IAAIqB,EAAgB,IAAM5B,EAAgB,IAAMC,EAAW,IAAMF,EAAe,IAAMkB,EAAM,IAAMY,IACrG+rB,GAAa,CAChB,GAAa,eAAT3sB,EACF,IAAIwuB,EAAM9D,EACRA,EAAqB/jB,WACnB,SAACoD,GAAD,OAAOA,EAAEpJ,gBAAkBA,MAE7B8tB,UAAU3mB,QACV,SAACiC,GAAD,OACAA,EAAE0C,gBAAkB1N,GACpBgL,EAAEqB,WAAapM,GACf+K,EAAE2C,eAAiB5N,GACnBiL,EAAEnJ,QAAUA,SAET,CACLvB,QAAQC,IAAI,cACZD,QAAQC,IAAIkrB,GACRgE,EAAMhE,EACRA,EAAW7jB,WAAU,SAACoD,GAAD,OAAOA,EAAEpJ,gBAAkBA,MAChD8tB,UAAU3mB,QACV,SAACiC,GAAD,OACEA,EAAE0C,gBAAkB1N,GACpBgL,EAAEqB,WAAapM,GACf+K,EAAE2C,eAAiB5N,GACnBiL,EAAEnJ,QAAUA,KAKlBvB,QAAQC,IAAI,OACbD,QAAQC,IAAIkvB,GACZnvB,QAAQC,IAAIkvB,EAAI,GAAGC,WAElB5D,EAAe2D,GACf5B,IAAe,KA8EbwB,GAA0B,SAACM,EAAUC,GACzC,IACIC,EADAC,EAAa,GAEhBD,EAAeF,EAASI,eAIzB,IAAMjU,EAASvc,MAAMmrB,KAAK,IAAIsF,IAAIL,EAASP,iBAAiB9rB,KAAI,SAAC0H,GAAD,OAAOA,EAAE4C,YAAUtK,KAAI,SAACsK,GAEtF,IAEIhM,EAAgBgM,YAChBqiB,EAAUriB,EACVsiB,EAAgBJ,EAAWtG,MAAK,SAACxgB,GAAD,MAJvB,WAI8BA,EAAE/I,YAAuB6vB,EAAWtG,MAAK,SAACxgB,GAAD,MAJvE,WAI8EA,EAAE/I,YAAqBkwB,OAAS,GAS3H,MARsB,KAAlBD,EACFJ,EAAWlvB,KAAK,CACdX,SAPS,SAQTkwB,QAASL,EAAWrvB,OAAS,EAAI,UARxB,UAQiD,IAAMwvB,IAGlEH,EAAWtG,MAAK,SAACxgB,GAAD,MAXL,WAWYA,EAAE/I,YAAqBkwB,OAASD,EAAgB,IAAMD,EAExE,CACLG,YAAaH,EACbruB,cAAeA,EACf8tB,UAAWC,EAASP,iBAAiBrmB,QAAO,SAACiC,GAAD,MAhBjC,WAgBwCA,EAAEqB,UAAuBrB,EAAE4C,SAAWqiB,KAASI,MAAK,SAAUC,EAAGC,GAClH,OAAID,EAAEE,OAASD,EAAEC,OACR,EAELF,EAAEE,OAASD,EAAEC,QACP,EAEH,SAIblD,GAAmBtE,KAAKuB,KAAKsF,EAAe,KAoB7CvvB,QAAQC,IAAI,UACZD,QAAQC,IAAIub,GACX4P,EAAc5P,GACd7d,IAAQ,GACR+uB,GAAe2C,EAASc,cACxBxD,GAAe0C,EAASe,eAmDpBC,GAAY,WAChBjF,EAAc,IACdE,EAAwB,IACxBE,EAAe,IACfC,EAAqB,KAGjBgD,GAAuB,SAC3BnM,EACAhe,EACA/C,EACA2rB,EACAC,EACAtK,EACA6L,GAqBA,IAAI4B,EAAYlD,GAChBkD,EAAUhO,YAAcA,EACxBgO,EAAUhsB,MAAQA,EAClBgsB,EAAU/uB,MAAQA,EAClB+uB,EAAUpD,iBAAmBA,EAC7BoD,EAAUnD,YAAcA,EACxBmD,EAAUzN,YAAcA,EACxByN,EAAU5B,iBAAmBA,EAC7BrB,GAAoBiD,GACpB,IAAItV,EAAK,IAAIlc,KACb2uB,GAASzS,GACT6S,IAAc,IAKhB,OACE,yBAAKxrB,MAxzBmB,CACxB2e,gBAAiB,+BACrBrlB,WAAY,OACR40B,iBAAkB,YAClBC,eAAgB,QAChB5rB,OAAQ,OACRgW,UAAW,WAmzBT,uBAAGjV,KAAK,QACR,kBAACiE,GAAA,EAAD,CAAW1L,UAAWhD,GAAQ+C,UAAWwyB,QAAQ,GAC/B,UAAf3jB,GACD,kBAAC,KAAD,CAAQtN,IAAKqtB,GACXvqB,MAAM,SACNsC,OAAO,QACP8O,GAAG,OACHgd,YAAY,IACZ7rB,SAAS,SAEThJ,QAAQ,UACRkJ,SAAS,aAET,kBAAC,KAAD,CAAQvF,IAAKqtB,GACbvqB,MAAM,SACNsC,OAAO,QACP8O,GAAG,OACHgd,YAAY,IACZ7rB,SAAS,SAEThJ,QAAQ,UACRkJ,SAAS,aAEX,yBAAK7G,UAAWhD,GAAQkzB,UACpBd,GAeA,8BAdA,yBACEjrB,MAAOwpB,EA10BE,CACnB7K,gBACE,6FAGFuP,iBAAkB,YAClBC,eAAgB,QAChBzP,aAAc,MACd5a,OAAQ,QAk0B0C,KACxCjI,UACE2tB,EACI3wB,GAAQgzB,iBACRhzB,GAAQizB,qBAGd,kBAAC,GAAD,CACE5uB,QAjGC,SAACoxB,GACC,aAAXA,GAAqC,IAAXA,IAE5B3E,GAAkB,GAClBM,IAAe,GACf+D,KACAzE,EAAgB+E,KA4FNzyB,UAAWhD,GAAQ01B,YAMvB/E,GAAoByB,GA6LpB,8BA5LA,kBAAC,WAAD,KACE,yBAAKpvB,UAAWhD,GAAQG,MACC,IAAtB8vB,EAAWhrB,QAAgBwtB,GAC1B,kBAAC,WAAD,KACE,kBAAC3vB,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IACb,kBAAC3G,EAAA,EAAD,CACE3C,QAAQ,OACRE,eAAe,SACf2G,EAAG,EACHN,EAAG,EACHlE,UAAWhD,GAAQmzB,eACnBhwB,QAAQ,YAER,kBAACG,EAAA,EAAD,CAAK6M,aAAc,GACjB,kBAAC3H,EAAA,EAAD,CAAkBrB,MAAO,CAAE3F,MAAO,eAEpC,kBAAC8B,EAAA,EAAD,KACE,kBAACJ,EAAA,EAAD,CACEC,QAAQ,KACRgE,MAAO,CAAE1F,WAAY,uBAFvB,qDAOF,kBAAC6B,EAAA,EAAD,CAAK9C,YAAa,GAChB,kBAACgI,EAAA,EAAD,CAAkBrB,MAAO,CAAE3F,MAAO,kBAM1C,8BAEF,kBAAC8B,EAAA,EAAD,CAAK3C,QAAQ,OAAO6G,EAAG,EAAGN,EAAG,GAEzB,kBAACpE,EAAA,EAAD,CAAMC,WAAS,EAAC3B,QAAS,GACvB,kBAAC0B,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,EAAGjH,UAAWhD,GAAQ4yB,WACnC,kBAACrM,GAAD,CACEliB,QA/ZE,SACxB+iB,EACAhe,EACA/C,EACA2rB,EACAC,EACA0D,EACAC,EACApC,GAGA1uB,QAAQC,IAAI,eACZD,QAAQC,IAAIqiB,GACZuL,IAAc,GACdlwB,IAAQ,GAYR0vB,GARW,CACT/K,YAAaA,EACbhe,MAAOA,EACP/C,MAAOA,EACP2rB,iBAAkB,EAClBC,YAAaA,EACbtK,YAAagO,IAGfpE,GAAmB,GACnBgC,GACEnM,EACAhe,EACA/C,EACA,EACA4rB,EACA0D,EACAnC,EAAmB,EAAI,GAErBoC,EACF5E,GAAqB,IAErBF,GAAkB,GAClBE,GAAqB,IAGvBF,GAAkB,GAClBE,GAAqB,IAmXC3qB,MAAOmqB,EACPtM,kBAAmBA,EACnB/I,SAAUmU,EAAanU,SACvBD,YAAaoU,EAAapU,YAC1B4M,YAAaA,GACbC,YAAaA,GACbG,WAAYA,GACZ2N,eAAgBnE,MAGpB,kBAAC5uB,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IACZ4mB,EAAqC,GAAnBS,GACjB,kBAACte,EAAA,EAAD,CACE7L,MAAO,CACL7G,gBAAiB,UACjBkB,MAAO,QACPiK,aAAc,QAGhB,kBAAC8T,GAAA,EAAD,CACEpY,MAAO,CACL1G,WAAY,MACZ4K,cAAe,OAEjBb,MACE,kBAACtH,EAAA,EAAD,CACEC,QAAQ,KACRgE,MAAO,CACLuE,UAAW,MACXD,aAAc,MACdhK,WAAY,uBALhB,wBAaJ,kBAACwR,EAAA,EAAD,CACE9L,MAAO,CACL7G,gBAAiB,qBAMnB,kBAACwC,EAAA,EAAD,CAAMC,WAAS,EAAC3B,QAAS,GACvB,kBAAC0B,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IACZkmB,EAAqBroB,KAAI,SAACC,EAASC,GAAV,OACxB,kBAACkJ,GAAD,CACE7M,QAAS2vB,GACT7rB,IAAKH,EACLoB,MAAOrB,EAAQmsB,UACf/Y,SAAUmU,EAAanU,SACvBD,YAAaoU,EAAapU,YAC1BnI,KAAK,sBA0BjB,8BAEDkd,EAAWnoB,KAAI,SAACC,EAASC,GAAV,OACd,kBAACkJ,GAAD,CACE7M,QAAS2vB,GACT7rB,IAAKH,EACLoB,MAAOrB,EAAQmsB,UACf/Y,SAAUmU,EAAanU,SACvBD,YAAaoU,EAAapU,YAC1BnI,KAAK,QACLnB,WAAYA,SAKK,IAAtBqe,EAAWhrB,OACV,kBAACnC,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IACb,yBAAKjH,UAAWhD,GAAQozB,YACtB,kBAACA,GAAA,EAAD,CACE0C,MAAOjE,GACP7uB,UAAWhD,GAAQ8yB,WACnBiD,KAAMzE,GACNla,SAAU,SAACM,EAAO7I,GAAR,OACR0iB,GAAmB1iB,QAM3B,gCAKe,IAAtBohB,EAAWhrB,QAAgBwtB,GAC1B,kBAAC,WAAD,KACE,kBAAC3vB,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IACb,kBAAC3G,EAAA,EAAD,CACE3C,QAAQ,OACRE,eAAe,SACf2G,EAAG,EACHN,EAAG,EACHlE,UAAWhD,GAAQmzB,eACnBhwB,QAAQ,YAER,kBAACG,EAAA,EAAD,CAAK6M,aAAc,GACjB,kBAAC3H,EAAA,EAAD,CAAkBrB,MAAO,CAAE3F,MAAO,eAEpC,kBAAC8B,EAAA,EAAD,KACE,kBAACJ,EAAA,EAAD,CACEC,QAAQ,KACRgE,MAAO,CAAE1F,WAAY,uBAFvB,qDAOF,kBAAC6B,EAAA,EAAD,CAAK9C,YAAa,GAChB,kBAACgI,EAAA,EAAD,CAAkBrB,MAAO,CAAE3F,MAAO,kBAM1C,gCAOP4wB,GACC,yBAAKpvB,UAAWhD,GAAQG,MACtB,kBAACmD,EAAA,EAAD,CAAK3C,QAAQ,OAAO6G,EAAG,EAAGN,EAAG,GAEzB,kBAACpE,EAAA,EAAD,CAAMC,WAAS,EAAC3B,QAAS,GACvB,kBAAC0B,EAAA,EAAD,CAAMjD,MAAI,EAACoK,GAAI,IACb,kBAACiS,GAAD,CACE7X,QA9dD,SAAC2xB,IAnPH,SAACA,EAAUC,GA6C5B,IAAM3xB,EACJ,iEACAgrB,EAAaC,YACb,oBACAD,EAAaG,KACb,aACAH,EAAaJ,KACb,WACAI,EAAaH,GACb,IACAG,EAAajR,aACb,gBACF3Z,IACGC,IAAIL,EAAK,CACRgT,QAAS,CACP,8BAA+B,OAGlC1S,MAAK,SAACC,GACLC,QAAQC,IAAIF,GACZ4rB,EAAe5rB,EAASG,MACxBuuB,GACE,CACExM,MAAM,EACNC,MAAM,EACNC,MAAM,EACNC,MAAM,EACNC,MAAM,GAER,GACAtiB,EAASG,KACT,EACA,CAAC,EAAG,GACJ,CACEsiB,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,IAAI,GAEN,MAGHhiB,OAAM,SAACC,GAEN8qB,EAAe,OA0JnByF,IA8doB9e,SAvkBF,SAAC6e,GACnBjZ,GAASiZ,IAukBWxS,SApkBA,SAAC0S,GACrB9D,GAAe8D,IAokBK/sB,MAAOinB,EAAY,GACnB+F,MAAO9G,EAAaJ,KACpBmH,IAAK/G,EAAaH,GAClB9Q,aAAciR,EAAajR,aAC3BlD,SAAUmU,EAAanU,SACvBD,YAAaoU,EAAapU,YAC1BtJ,WAAYA,SAQxB,+BAKJ,kBAAC8R,GAAA,EAAD,CACEE,sBAAoB,EACpBC,sBAAoB,EACpB/F,WAAYA,GACZtb,KAAMA,GACNkE,QAzmBkB,WACxBjE,IAAQ,IAymBF+D,kBAAgB,2BAEhB,kBAACsd,GAAA,EAAD,KACE,kBAACC,GAAA,EAAD,KACE,kBAAC,GAAD,CACE5I,SAAUmU,EAAanU,SACvBD,YAAaoU,EAAapU,YAC1BtJ,WAAYA,QAMpB,kBAAC8R,GAAA,EAAD,CACE5F,WAAYA,GACZtb,KAAMyuB,EACNvqB,QAtnB8B,WACpCwqB,GAAuB,IAsnBjB1qB,kBAAgB,2BAEhB,kBAACsd,GAAA,EAAD,KACE,kBAACC,GAAA,EAAD,KACE,kBAAC,GAAD,CACE5I,SAAUmU,EAAanU,SACvBD,YAAaoU,EAAapU,YAC1BtJ,WAAYA,QAMJ,UAAfA,GACD,kBAAC,KAAD,CAAQtN,IAAI,sCACV8C,MAAM,SACNsC,OAAO,OACP8O,GAAG,OACHgd,YAAY,IACZ7rB,SAAS,SAEThJ,QAAQ,UACRkJ,SAAS,aACP,yBAAK1C,MAAO,CAAEC,MAAO,QAASsC,OAAQ,Y,2BCnwClD4a,IAASC,OACP,kBAAC,IAAM+R,WAAP,KACE,kBAAC,KAAD,KACA,kBAACtG,GAAD,QAGFrd,SAAS0R,eAAe,U","file":"static/js/main.e51e096d.chunk.js","sourcesContent":["module.exports = __webpack_public_path__ + \"static/media/Montserrat-Regular.ee653992.ttf\";","module.exports = __webpack_public_path__ + \"static/media/Montserrat-SemiBold.c641dbee.ttf\";","import React from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport Modal from \"@material-ui/core/Modal\";\r\nimport Backdrop from \"@material-ui/core/Backdrop\";\r\nimport Fade from \"@material-ui/core/Fade\";\r\nimport axios from \"axios\";\r\nimport List from \"@material-ui/core/List\";\r\nimport ListItem from \"@material-ui/core/ListItem\";\r\nimport ListItemText from \"@material-ui/core/ListItemText\";\r\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport Divider from \"@material-ui/core/Divider\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\n\r\nexport default function RoomItem(item) {\r\n const parseHtml = require(\"html-react-parser\");\r\n\r\n const useStyles = makeStyles((theme) => ({\r\n root: {\r\n flexGrow: 1,\r\n },\r\n /* paper: {\r\n backgroundColor: theme.palette.background.paper,\r\n padding: theme.spacing(2),\r\n textAlign: 'center',\r\n color: theme.palette.text.secondary,\r\n }, */\r\n grid: {\r\n backgroundColor: item.bg,\r\n paddingLeft: \"1%\",\r\n paddingTop: \"0.3%\",\r\n },\r\n modal: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n },\r\n paper: {\r\n backgroundColor: theme.palette.background.paper,\r\n // border: '2px solid #000',\r\n boxShadow: theme.shadows[5],\r\n padding: theme.spacing(2, 4, 3),\r\n },\r\n paperCancelacion: {\r\n backgroundColor: \"white\",\r\n border: \"1px solid #FE5215\",\r\n boxShadow: theme.shadows[5],\r\n padding: theme.spacing(2, 4, 3),\r\n },\r\n reservar: {\r\n background: \"#016AA2\",\r\n color: \"white\",\r\n fontFamily: \"MontserratSemiBold\",\r\n textTransform: \"capitalize\",\r\n \"&:hover\": {\r\n background: \"#FE5215\",\r\n color: \"white\",\r\n },\r\n },\r\n reservarNaranja: {\r\n background: \"#FE5215\",\r\n color: \"white\",\r\n fontFamily: \"MontserratSemiBold\",\r\n textTransform: \"capitalize\",\r\n \"&:hover\": {\r\n background: \"#016AA2\",\r\n color: \"white\",\r\n },\r\n },\r\n Amount: {\r\n color: \"black\",\r\n },\r\n MealsPlan: {\r\n color: \"#757575\",\r\n fontStyle: \"oblique\",\r\n },\r\n TituloHotel: {\r\n color: \"#016AA2\",\r\n fontFamily: \"MontserratSemiBold\",\r\n // fontWeight: 'bolder'\r\n },\r\n TituloHotelP: {\r\n color: \"#FE5215\",\r\n textAlign: \"center\",\r\n fontWeight: \"bolder\",\r\n },\r\n TituloHabitacion: {\r\n color: \"#3f51b5\",\r\n fontFamily: \"MontserratSemiBold\",\r\n fontWeight: 'bold'\r\n },\r\n TituloHabitacionP: {\r\n color: \"#757575\",\r\n textAlign: \"center\",\r\n fontWeight: \"bolder\",\r\n },\r\n }));\r\n const classes = useStyles();\r\n const [open, setOpen] = React.useState(false);\r\n const [policy, setPolicy] = React.useState([]);\r\n\r\n const handleOpen = () => {\r\n setPolicy([]);\r\n\r\n const url = \"https://webtravel2-online.com/APIhoteles/api/PoliticasServiciosRetrieve?idEncabezado=\" +\r\n item.IDEncabezado +\r\n \"&idCombinacion=\" +\r\n item.IDCombinacion +\r\n \"&Operador=\" +\r\n item.Operador;\r\n axios\r\n .get(\r\n url\r\n )\r\n .then((response) => {\r\n console.log(response.data);\r\n if (response.data.length !== 0) {\r\n setPolicy(response.data[0].Condiciones);\r\n console.log(response.data);\r\n } else {\r\n \r\n var politicas = [];\r\n if (item.Operador === \"ATOM\") {\r\n politicas.push({\r\n Cargo: \"\",\r\n Descripcion: \"\",\r\n Fecha: \"Favor consultar con Atom Travel\",\r\n Habitacion: \"\",\r\n Tipo: \"\",\r\n })\r\n } else {\r\n politicas.push({\r\n Cargo: \"se cobrará 100% del total de noches\",\r\n Descripcion: \"fff\",\r\n Fecha: \"ERROR EN WS ----- En gastos desde la reserva\",\r\n Habitacion: \"\",\r\n Tipo: \"\",\r\n })\r\n }\r\n console.log(\"epaepaepa\");\r\n console.log(politicas);\r\n setPolicy(politicas);\r\n }\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n console.log(item.Operador);\r\n var politicas = [];\r\n if (item.Operador === \"ATOM\") {\r\n politicas.push({\r\n Cargo: \"\",\r\n Descripcion: \"\",\r\n Fecha: \"Favor consultar con Atom Travel\",\r\n Habitacion: \"\",\r\n Tipo: \"\",\r\n })\r\n } else {\r\n politicas.push({\r\n Cargo: \"se cobrará 100% del total de noches\",\r\n Descripcion: \"fff\",\r\n Fecha: \"ERROR EN WS ----- En gastos desde la reserva\",\r\n Habitacion: \"\",\r\n Tipo: \"\",})\r\n }\r\n \r\n setPolicy(politicas);\r\n console.log(error);\r\n //setOpen(false);\r\n }); //\r\n setOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const bookingClick = (hotelSelected) => {\r\n console.log(\"bookingClick-RoomItem\");\r\n console.log(item);\r\n item.onClick(\r\n item.hotelOperador,\r\n item.IDCombinacion,\r\n item.Operador,\r\n item.IDEncabezado,\r\n item.token\r\n );\r\n };\r\n\r\n const GetWeekDay = (fecha) => {\r\n const d = new Date(fecha.substring(0, 4),fecha.substring(6, 4)-1,fecha.substring(8, 6));\r\n\r\nconst weekday = new Array(7);\r\nweekday[0] = \"Domingo\";\r\nweekday[1] = \"Lunes\";\r\nweekday[2] = \"Martes\";\r\nweekday[3] = \"Miercoles\";\r\nweekday[4] = \"Jueves\";\r\nweekday[5] = \"Viernes\";\r\nweekday[6] = \"Sábado\";\r\n\r\nreturn weekday[d.getDay()] + \" \" + fecha.substring(8, 6)+\"/\"+fecha.substring(6, 4)+\"/\"+fecha.substring(0, 4) ;\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n {parseHtml(item.DescripcionCombinacion)}\r\n \r\n \r\n \r\n \r\n {parseHtml(item.Regimen)}\r\n \r\n \r\n \r\n \r\n \r\n {GetWeekDay(item.fechainicio)}\r\n \r\n \r\n \r\n Políticas de cancelación\r\n \r\n \r\n \r\n \r\n \r\n {item.moneda} {Number(item.montototal).toFixed(2)}\r\n \r\n \r\n {/* \r\n RESERVAR\r\n */}\r\n {item.mensajeReserva}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {policy.length > 0 ? (\r\n \r\n \r\n \r\n \r\n Políticas de Cancelación\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {item.HotelNombre}\r\n \r\n \r\n {parseHtml(item.DescripcionCombinacion)}\r\n \r\n \r\n \r\n {/* \r\n {item.HotelNombre}\r\n \r\n \r\n {item.DescripcionCombinacion}\r\n */}\r\n \r\n \r\n {policy.map((resultX, i) => (\r\n \r\n \r\n {resultX.Fecha}\r\n \r\n }\r\n secondary={\r\n \r\n {resultX.Cargo}\r\n \r\n }\r\n />\r\n \r\n ))}\r\n \r\n \r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n
\r\n \r\n
\r\n );\r\n}\r\n","import React from 'react';\r\nimport { GoogleApiWrapper, InfoWindow, Map, Marker } from 'google-maps-react';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\n\r\nimport AppBar from '@material-ui/core/AppBar';\r\nimport Toolbar from '@material-ui/core/Toolbar';\r\n\r\n\r\n\r\n\r\nconst GOOGLE_MAPS_JS_API_KEY='AIzaSyCWCu2mMfPB0twxHyFuvk6mbB-o_bBqITM';\r\n\r\nclass GoogleMapsContainer extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n showingInfoWindow: false,\r\n activeMarker: {},\r\n selectedPlace: {}\r\n }\r\n\r\n console.log('props goolge')\r\n console.log(this.props)\r\n console.log(this.props.hotel.Latitud)\r\n console.log(this.props.hotel.Longitud)\r\n\r\n console.log(this.props.hotel.hotel)\r\n\r\n // binding this to event-handler functions\r\n this.onMarkerClick = this.onMarkerClick.bind(this);\r\n this.onMapClick = this.onMapClick.bind(this);\r\n }\r\n onMarkerClick = (props, marker, e) => {\r\n this.setState({\r\n selectedPlace: props,\r\n activeMarker: marker,\r\n showingInfoWindow: true\r\n });\r\n }\r\n onMapClick = (props) => {\r\n if (this.state.showingInfoWindow) {\r\n this.setState({\r\n showingInfoWindow: false,\r\n activeMarker: null\r\n });\r\n }\r\n }\r\n render() {\r\n \r\n const style = {\r\n width: '600px',\r\n height: '500x'\r\n }\r\n const styleDetails = {\r\n width: '600px',\r\n height: '436x'\r\n }\r\n\r\n const containerStyle = {\r\n width: '600px',\r\n height: '436px'\r\n }\r\n\r\n const styleDiv = {\r\n width: '600px',\r\n height: '500px',\r\n overflow: 'hidden'\r\n }\r\n\r\n const styleDivDetails = {\r\n width: '600px',\r\n height: '436px',\r\n overflow: 'hidden'\r\n }\r\n\r\n\r\n const appBar = {\r\n position: 'relative',\r\n backgroundColor: '#FE5215'\r\n }\r\n\r\n const TituloHotel = {\r\n color: 'white'\r\n }\r\n\r\n const hotelMarker = {\r\n color: '#016AA2',\r\n fontWeight: 'bolder'\r\n }\r\n\r\n const Address = {\r\n fontStyle: 'oblique'\r\n }\r\n\r\n return (\r\n
\r\n {this.props.bar ? \r\n \r\n \r\n {this.props.hotel.nombreHotel}\r\n \r\n \r\n \r\n :\r\n null\r\n }\r\n \r\n \r\n \r\n \r\n \r\n {this.props.hotel.nombreHotel}\r\n \r\n \r\n {this.props.hotel.Direccion}\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\n/* export default GoogleApiWrapper({\r\n api: (GOOGLE_MAPS_JS_API_KEY)\r\n})(GoogleMapsContainer) */\r\n\r\nexport default GoogleApiWrapper(props => ({\r\n apiKey: GOOGLE_MAPS_JS_API_KEY,\r\n}))(GoogleMapsContainer);","import ImageGallery from \"react-image-gallery\";\r\nimport React, { useState, useEffect } from \"react\";\r\nimport \"../../Style/image-gallery.scss\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport PruebaGoogleMaps from \"../PruebaGoogleMaps\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport LocationOnIcon from \"@material-ui/icons/LocationOn\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Divider from \"@material-ui/core/Divider\";\r\nimport Rating from \"@material-ui/lab/Rating\";\r\nimport StarBorderIcon from \"@material-ui/icons/StarBorder\";\r\nimport Container from \"@material-ui/core/Container\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport List from \"@material-ui/core/List\";\r\nimport ListItem from \"@material-ui/core/ListItem\";\r\nimport ListItemIcon from \"@material-ui/core/ListItemIcon\";\r\nimport ListItemText from \"@material-ui/core/ListItemText\";\r\nimport CheckCircleOutlineIcon from \"@material-ui/icons/CheckCircleOutline\";\r\nimport axios from \"axios\";\r\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport ThumbUpAltIcon from \"@material-ui/icons/ThumbUpAlt\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport Link from \"@material-ui/core/Link\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n paper: {\r\n padding: theme.spacing(0),\r\n margin: \"auto\",\r\n maxWidth: \"1200px\",\r\n },\r\n buttonDestacado: {\r\n color: \"#FE5215\",\r\n fontSize: \"9px\",\r\n borderColor: \"#FE5215\",\r\n paddingTop: \"0px\",\r\n paddingBottom: \"0px\",\r\n },\r\n paperAmenities: {\r\n width: \"100%\",\r\n },\r\n TituloHotel: {\r\n color: \"#016AA2\",\r\n fontFamily: \"MontserratSemiBold\",\r\n },\r\n HotelAddress: {\r\n color: \"#016AA2\",\r\n fontStyle: \"oblique\",\r\n verticalAlign: \"top\",\r\n paddingBottom: 7,\r\n },\r\n paperInterno: {\r\n width: 350,\r\n backgroundColor: \"transparent\",\r\n },\r\n separador: {\r\n marginBottom: 15,\r\n marginTop: 20,\r\n },\r\n fondo: {\r\n backgroundColor: \"white\",\r\n },\r\n gallery: {\r\n height: \"436px\",\r\n },\r\n fondoImage: {\r\n backgroundColor: \"#e3f2fd\",\r\n overflow: \"hidden\",\r\n height: \"436px\",\r\n },\r\n expansion: {\r\n backgroundColor: \"#90caf9\",\r\n // color: 'white'\r\n },\r\n TituloNombre: {\r\n color: \"#016AA2\",\r\n fontFamily: \"MontserratSemiBold\",\r\n },\r\n listitemicon: {\r\n minWidth: \"30px\",\r\n paddingTop: \"0px\",\r\n paddingBottom: \"0px\",\r\n },\r\n}));\r\n\r\n/* const appBar = {\r\n position: \"relative\",\r\n backgroundColor: \"white\",\r\n}; */\r\n\r\nconst CheckGroup = (data, criterio) => {\r\n console.log(data.findIndex((element) => element.Grupo == criterio));\r\n return data.findIndex((element) => element.Grupo == criterio) !== -1\r\n ? true\r\n : false;\r\n};\r\n\r\nexport default function HotelDetails(item) {\r\n const [columnas, setColumnas] = useState([]);\r\n const [descripcionLarga, setDescripcionLarga] = useState(\"\");\r\n const [imagenes, setImagenes] = useState([]);\r\n const [HotelDetailsData, setHotelDetailsData] = useState([]);\r\n const [isLoading, setIsLoading] = useState(true);\r\n // const [open, setOpen] = React.useState(false);\r\n const parseHtml = require(\"html-react-parser\");\r\n\r\n const handleClose = () => {\r\n item.onClick()\r\n }; \r\n\r\n const SearchDetails = () => {\r\n var ColumnnaX = [];\r\n var Imagenes = [];\r\n const URL =\r\n \"https://webtravel2-online.com/APIhoteles/api/DetalleHotelRetrieve?codigo=\" + item.hotel.hotel[0].code + \"&Operador=\" + item.hotel.hotel[0].Operador + \"&destino=\" + item.hotel.hotel[0].DestinationCode;\r\n \r\n //const URL = 'https://webtravel2-online.com/APIhoteles/api/DetalleHotelRetrieve?codigo=JP148467&Operador=W2M'\r\n console.log(URL);\r\n \r\n axios\r\n .get(URL, {})\r\n .then((response) => {\r\n /* console.log(response);\r\n console.log(\"Data SearchDetails\");\r\n \r\n console.log(response.data[0].DescripcionLarga.replace('\\n','
')); */\r\n\r\n setImagenes([]);\r\n response.data[0].Imagenes.map((item) => {\r\n //console.log(item.url);\r\n Imagenes.push({ original: item.url, thumbnail: item.url });\r\n });\r\n setImagenes(Imagenes);\r\n if (response.data[0].DescripcionLarga === \"\") {\r\n setDescripcionLarga(item.hotel.hotel[0].DescripcionHotel.replace('\\n','
').replace('\\n','
'));\r\n } else {\r\n setDescripcionLarga(response.data[0].DescripcionLarga.replace('\\n','
').replace('\\n','
'));\r\n } \r\n \r\n if (response.data[0].Instalaciones !== null) {\r\n\r\n \r\n switch (item.hotel.hotel[0].Operador) {\r\n case \"W2M\":\r\n if (CheckGroup(response.data[0].Instalaciones, \"Hotel\"))\r\n ColumnnaX.push({ Columna: 1, Grupo: \"Hotel\" });\r\n if (\r\n CheckGroup(\r\n response.data[0].Instalaciones,\r\n \"Hotel, Languages spoken\"\r\n )\r\n )\r\n ColumnnaX.push({ Columna: 1, Grupo: \"Hotel, Languages spoken\" });\r\n if (\r\n CheckGroup(\r\n response.data[0].Instalaciones,\r\n \"Hotel, Getting around\"\r\n )\r\n )\r\n ColumnnaX.push({ Columna: 1, Grupo: \"Hotel, Getting around\" });\r\n if (\r\n CheckGroup(response.data[0].Instalaciones, \"Hotel, For the kids\")\r\n )\r\n ColumnnaX.push({ Columna: 1, Grupo: \"Hotel, For the kids\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"CAT\"))\r\n ColumnnaX.push({ Columna: 1, Grupo: \"CAT\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"SPT\"))\r\n ColumnnaX.push({ Columna: 1, Grupo: \"SPT\" });\r\n if (\r\n CheckGroup(\r\n response.data[0].Instalaciones,\r\n \"Hotel, Things to do, ways to relax\"\r\n )\r\n )\r\n ColumnnaX.push({\r\n Columna: 1,\r\n Grupo: \"Hotel, Things to do, ways to relax\",\r\n });\r\n if (\r\n CheckGroup(\r\n response.data[0].Instalaciones,\r\n \"Hotel, Services and conveniences\"\r\n )\r\n )\r\n ColumnnaX.push({\r\n Columna: 1,\r\n Grupo: \"Hotel, Services and conveniences\",\r\n });\r\n if (\r\n CheckGroup(\r\n response.data[0].Instalaciones,\r\n \"Hotel, Things to do & ways to relax\"\r\n )\r\n )\r\n ColumnnaX.push({\r\n Columna: 1,\r\n Grupo: \"Hotel, Things to do & ways to relax\",\r\n });\r\n if (\r\n CheckGroup(\r\n response.data[0].Instalaciones,\r\n \"Hotel, Fitness & recreation\"\r\n )\r\n )\r\n ColumnnaX.push({\r\n Columna: 1,\r\n Grupo: \"Hotel, Fitness & recreation\",\r\n });\r\n if (\r\n CheckGroup(response.data[0].Instalaciones, \"Hotel, Land sports\")\r\n )\r\n ColumnnaX.push({ Columna: 1, Grupo: \"Hotel, Land sports\" });\r\n if (\r\n CheckGroup(\r\n response.data[0].Instalaciones,\r\n \"Hotel, Swimming & soaking\"\r\n )\r\n )\r\n ColumnnaX.push({\r\n Columna: 1,\r\n Grupo: \"Hotel, Swimming & soaking\",\r\n });\r\n if (\r\n CheckGroup(\r\n response.data[0].Instalaciones,\r\n \"Hotel, Dining, drinking, and snacking\"\r\n )\r\n )\r\n ColumnnaX.push({\r\n Columna: 1,\r\n Grupo: \"Hotel, Dining, drinking, and snacking\",\r\n });\r\n if (\r\n CheckGroup(\r\n response.data[0].Instalaciones,\r\n \"Hotel, Dining, drinking & and snacking\"\r\n )\r\n )\r\n ColumnnaX.push({\r\n Columna: 1,\r\n Grupo: \"Hotel, Dining, drinking & and snacking\",\r\n });\r\n if (\r\n CheckGroup(\r\n response.data[0].Instalaciones,\r\n \"Hotel, Available in all rooms\"\r\n )\r\n )\r\n ColumnnaX.push({\r\n Columna: 1,\r\n Grupo: \"Hotel, Available in all rooms\",\r\n });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Cuarto\"))\r\n ColumnnaX.push({ Columna: 1, Grupo: \"Cuarto\" });\r\n break;\r\n case \"HOTELSPRO\":\r\n if (CheckGroup(response.data[0].Instalaciones, \"Location\"))\r\n ColumnnaX.push({ Columna: 1, Grupo: \"Location\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Transportation\"))\r\n ColumnnaX.push({ Columna: 1, Grupo: \"Transportation\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Pools & Wellness\"))\r\n ColumnnaX.push({ Columna: 1, Grupo: \"Pools & Wellness\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Beach\"))\r\n ColumnnaX.push({ Columna: 1, Grupo: \"Beach\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Policy\"))\r\n ColumnnaX.push({ Columna: 1, Grupo: \"Policy\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Parking\"))\r\n ColumnnaX.push({ Columna: 1, Grupo: \"Parking\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"General\"))\r\n ColumnnaX.push({ Columna: 1, Grupo: \"General\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Payment\"))\r\n ColumnnaX.push({ Columna: 1, Grupo: \"Payment\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Hotel Services\"))\r\n ColumnnaX.push({ Columna: 2, Grupo: \"Hotel Services\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Shopping\"))\r\n ColumnnaX.push({ Columna: 2, Grupo: \"Shopping\" });\r\n if (\r\n CheckGroup(response.data[0].Instalaciones, \"Activities & Sports\")\r\n )\r\n ColumnnaX.push({ Columna: 2, Grupo: \"Activities & Sports\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Hotel Facilities\"))\r\n ColumnnaX.push({ Columna: 2, Grupo: \"Hotel Facilities\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Entertainment\"))\r\n ColumnnaX.push({ Columna: 2, Grupo: \"Entertainment\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Food & Drink\"))\r\n ColumnnaX.push({ Columna: 3, Grupo: \"Food & Drink\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Internet\"))\r\n ColumnnaX.push({ Columna: 3, Grupo: \"Internet\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Rooms)\"))\r\n ColumnnaX.push({ Columna: 3, Grupo: \"Rooms\" });\r\n break;\r\n //case \"HOTELBEDS\":\r\n default:\r\n if (\r\n CheckGroup(\r\n response.data[0].Instalaciones,\r\n \"Green Programmes - América\"\r\n )\r\n )\r\n ColumnnaX.push({\r\n Columna: 1,\r\n Grupo: \"Green Programmes - América\",\r\n });\r\n if (\r\n CheckGroup(\r\n response.data[0].Instalaciones,\r\n \"Green Programmes - Asia-Pacífico\"\r\n )\r\n )\r\n ColumnnaX.push({\r\n Columna: 1,\r\n Grupo: \"Green Programmes - Asia-Pacífico\",\r\n });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Tipo de hotel\"))\r\n ColumnnaX.push({ Columna: 1, Grupo: \"Tipo de hotel\" });\r\n if (\r\n CheckGroup(\r\n response.data[0].Instalaciones,\r\n \"Green Programmes - Europa\"\r\n )\r\n )\r\n ColumnnaX.push({\r\n Columna: 1,\r\n Grupo: \"Green Programmes - Europa\",\r\n });\r\n if (\r\n CheckGroup(\r\n response.data[0].Instalaciones,\r\n \"Equipamiento de habitaciones (habitación estándar)\"\r\n )\r\n )\r\n ColumnnaX.push({\r\n Columna: 2,\r\n Grupo: \"Equipamiento de habitaciones (habitación estándar)\",\r\n });\r\n if (\r\n CheckGroup(\r\n response.data[0].Instalaciones,\r\n \"Green Programmes - Mundial\"\r\n )\r\n )\r\n ColumnnaX.push({\r\n Columna: 2,\r\n Grupo: \"Green Programmes - Mundial\",\r\n });\r\n if (\r\n CheckGroup(\r\n response.data[0].Instalaciones,\r\n \"Posibilidades de pago\"\r\n )\r\n )\r\n ColumnnaX.push({ Columna: 2, Grupo: \"Posibilidades de pago\" });\r\n if (\r\n CheckGroup(\r\n response.data[0].Instalaciones,\r\n \"Distancia (en metros)\"\r\n )\r\n )\r\n ColumnnaX.push({ Columna: 2, Grupo: \"Distancia (en metros)\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Puntos de interés\"))\r\n ColumnnaX.push({ Columna: 2, Grupo: \"Puntos de interés\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Ubicación\"))\r\n ColumnnaX.push({ Columna: 3, Grupo: \"Ubicación\" });\r\n if (\r\n CheckGroup(\r\n response.data[0].Instalaciones,\r\n \"Green Programmes - África\"\r\n )\r\n )\r\n ColumnnaX.push({\r\n Columna: 3,\r\n Grupo: \"Green Programmes - África\",\r\n });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Salud y Belleza\"))\r\n ColumnnaX.push({ Columna: 3, Grupo: \"Salud y Belleza\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Entretenimiento\"))\r\n ColumnnaX.push({ Columna: 3, Grupo: \"Entretenimiento\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Instalaciones\"))\r\n ColumnnaX.push({ Columna: 1, Grupo: \"Instalaciones\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Negocios\"))\r\n ColumnnaX.push({ Columna: 3, Grupo: \"Negocios\" });\r\n if (CheckGroup(response.data[0].Instalaciones, \"Restauración\"))\r\n ColumnnaX.push({ Columna: 1, Grupo: \"Restauración\" });\r\n\r\n break; \r\n }\r\n setColumnas(ColumnnaX);\r\n\r\n setHotelDetailsData(response.data[0].Instalaciones);\r\n //setHotelDetailsData(HotelDetailsDataX);\r\n }\r\n setIsLoading(false);\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n SearchDetails();\r\n }, []);\r\n\r\n function capitalizarPalabras(val) {\r\n if (typeof val === \"undefined\" || val === \"\") {\r\n return \"\";\r\n } else {\r\n try {\r\n return val\r\n .toLowerCase()\r\n .trim()\r\n .split(\" \")\r\n .filter((item) => item.trim() !== \"\")\r\n .map((v) => v[0].toUpperCase() + v.substr(1))\r\n .join(\" \");\r\n } catch (error) {\r\n console.error(\"errortoUpper\");\r\n console.error(error);\r\n }\r\n }\r\n }\r\n\r\n const classes = useStyles();\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n {capitalizarPalabras(item.hotel.hotel[0].nombreHotel)}\r\n \r\n \r\n \r\n {capitalizarPalabras(item.hotel.hotel[0].Direccion)}\r\n \r\n {/* \r\n \r\n \"País\"\r\n {\" \"}\r\n {item.zoneName}\r\n */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {item.hotel.hotel[0].categoriaMapeada != \"1\" &&\r\n item.hotel.hotel[0].categoriaMapeada != \"2\" &&\r\n item.hotel.hotel[0].categoriaMapeada != \"3\" &&\r\n item.hotel.hotel[0].categoriaMapeada != \"4\" &&\r\n item.hotel.hotel[0].categoriaMapeada != \"5\" ? (\r\n
\r\n ) : (\r\n }\r\n />\r\n )}\r\n {/* {getStarImage(\r\n resultX.hotel[0].categoriaMapeada,\r\n resultX.hotel[0].categoria\r\n )} */}\r\n
\r\n {item.hotel.hotel[0].destacado ? (\r\n \r\n \r\n \r\n Hotel destacado{\" \"}\r\n \r\n \r\n \r\n \r\n ) : (\r\n /* \r\n \r\n \r\n \r\n */\r\n
\r\n )}\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {/* */}\r\n {item.hotel.hotel[0].DescripcionHotel == null\r\n ? \"Sin descripción\"\r\n : parseHtml(descripcionLarga)}\r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n \r\n {isLoading && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n {columnas.length > 0 && HotelDetailsData.length > 0 ? (\r\n \r\n \r\n Más Información\r\n \r\n \r\n \r\n \r\n {[1, 2, 3].map((indice) => (\r\n \r\n \r\n {columnas\r\n .filter((s) => s.Columna === indice)\r\n .map((value, i) => (\r\n \r\n \r\n {value.Grupo}\r\n \r\n \r\n {HotelDetailsData.filter(\r\n (s) => s.Grupo === value.Grupo\r\n ).map((item, i) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n \r\n ))}\r\n \r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n ) : null}\r\n
\r\n
\r\n );\r\n}\r\n","import React, { Fragment } from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Card from \"@material-ui/core/Card\";\r\nimport CardContent from \"@material-ui/core/CardContent\";\r\nimport CardMedia from \"@material-ui/core/CardMedia\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport Modal from \"@material-ui/core/Modal\";\r\nimport RoomItem from \"./ServiceItem\";\r\nimport CardActions from \"@material-ui/core/CardActions\";\r\nimport clsx from \"clsx\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport Collapse from \"@material-ui/core/Collapse\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport LocationOnIcon from \"@material-ui/icons/LocationOn\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport { loadCSS } from \"fg-loadcss\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\nimport Backdrop from \"@material-ui/core/Backdrop\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport Rating from \"@material-ui/lab/Rating\";\r\nimport useMediaQuery from \"@material-ui/core/useMediaQuery\";\r\nimport { useTheme } from \"@material-ui/core/styles\";\r\nimport StarBorderIcon from \"@material-ui/icons/StarBorder\";\r\nimport Slide from \"@material-ui/core/Slide\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport HotelDetails from \"../Components/Hotels/HotelDetails\";\r\nimport ThumbUpAltIcon from \"@material-ui/icons/ThumbUpAlt\";\r\nimport Fade from \"@material-ui/core/Fade\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport Divider from \"@material-ui/core/Divider\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n maxWidth: \"lg\",\r\n padding: 0,\r\n marginBottom: \"1%\",\r\n marginTop: 0,\r\n marginLeft: 0,\r\n marginRight: 0,\r\n borderStyle: \"solid\",\r\n borderWidth: \"1px\",\r\n borderColor: \"#F8E8E8\",\r\n },\r\n rootDestacado: {\r\n maxWidth: \"lg\",\r\n padding: 0,\r\n marginBottom: \"1%\",\r\n marginTop: 0,\r\n marginLeft: 0,\r\n marginRight: 0,\r\n borderStyle: \"solid\",\r\n borderWidth: \"2px\",\r\n borderColor: \"#FE5215\",\r\n },\r\n buttonDestacado: {\r\n color: \"#FE5215\",\r\n fontSize: \"9px\",\r\n borderColor: '#FE5215',\r\n paddingTop: '0px',\r\n paddingBottom: '0px'\r\n },\r\n RoomsCard: {\r\n padding: 0,\r\n margin: 0,\r\n \"&:last-child\": {\r\n paddingBottom: 0,\r\n },\r\n },\r\n RoomsCardAction: {\r\n padding: 0,\r\n margin: 0,\r\n backgroundColor: \"#ffe0b2\",\r\n },\r\n RoomsDescription: {\r\n paddingTop: \"1%\",\r\n paddingLeft: \"1%\",\r\n paddingRight: \"1%\",\r\n },\r\n RoomsName: {\r\n paddingTop: \"0.7%\",\r\n paddingRight: \"0%\",\r\n paddingBottom: 0,\r\n },\r\n RoomsDireccion: {\r\n flexGrow: 1,\r\n paddingTop: \"0px\",\r\n paddingBottom: \"1%\",\r\n direction: \"row\",\r\n justify: \"center\",\r\n alignItems: \"center\",\r\n },\r\n RoomsContainer: {\r\n paddingBottom: \"0.7%\",\r\n backgroundColor: \"white\",\r\n },\r\n RoomsContainerDestacados: {\r\n paddingBottom: \"0.7%\",\r\n backgroundColor: \"#f9ebd7\",\r\n },\r\n GridImagen: {\r\n paddingBottom: \"0%\",\r\n },\r\n TituloHotel: {\r\n color: \"#3f51b5\",\r\n // color: \"#FE5215\",\r\n fontFamily: \"MontserratSemiBold\"\r\n // fontWeight: 'bolder'\r\n },\r\n HotelAddress: {\r\n color: \"#016AA2\",\r\n fontStyle: \"oblique\",\r\n verticalAlign: \"top\",\r\n paddingBottom: 7,\r\n },\r\n HotelDescription: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n paddingTop: \"1%\",\r\n paddingLeft: \"1%\",\r\n paddingRight: \"1%\",\r\n paddingBottom: \"0%\",\r\n marging: \"0%\",\r\n height: 70,\r\n color: \"#757575\",\r\n },\r\n appBar: {\r\n position: \"relative\",\r\n backgroundColor: \"#016AA2\",\r\n },\r\n title: {\r\n marginLeft: 10,\r\n flex: 1,\r\n },\r\n operador: {\r\n color: \"#E0E0E0\",\r\n fontSize: \"9px\",\r\n },\r\n tooltip: {\r\n fontSize: \"9px\",\r\n backgroundColor: \"#016AA2\",\r\n },\r\n modal: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n overflow:\"scroll\", \r\n },\r\n paperCancelacion: {\r\n backgroundColor: \"white\",\r\n border: \"1px solid #FE5215\",\r\n boxShadow: theme.shadows[5],\r\n padding: theme.spacing(2, 4, 3),\r\n width: \"80%\",\r\n },\r\n}));\r\n\r\nconst styles = {\r\n dialogPaper: {\r\n width: \"800px\",\r\n Height: \"800px\",\r\n },\r\n};\r\n\r\nconst Transition = React.forwardRef(function Transition(props, ref) {\r\n return ;\r\n});\r\n\r\nexport default function HotelCard(resultX, i) {\r\n const classes = useStyles();\r\n const [expanded, setExpanded] = React.useState(false);\r\n const [open, setOpen] = React.useState(false);\r\n const [openDetails, setOpenDetails] = React.useState(false);\r\n const theme = useTheme();\r\n const fullScreen = useMediaQuery(theme.breakpoints.down(\"sm\"));\r\n const parseHtml = require('html-react-parser');\r\n\r\n const Tope = 2;\r\n const handleExpandClick = () => {\r\n setExpanded(!expanded);\r\n };\r\n\r\n React.useEffect(() => {\r\n const node = loadCSS(\r\n \"https://use.fontawesome.com/releases/v5.12.0/css/all.css\",\r\n document.querySelector(\"#font-awesome-css\")\r\n );\r\n\r\n return () => {\r\n node.parentNode.removeChild(node);\r\n };\r\n }, []);\r\n\r\n function getRoomItem(filter, hotel) {\r\n var iAux = 0;\r\n var roomsListr = resultX.hotel.map(function (item) {\r\n iAux = iAux + 1;\r\n if (filter && iAux > Tope) {\r\n } else {\r\n var mensajeReserva = \"Reservar\";\r\n if (resultX.AgenciaWeb === \"Ibero\" || resultX.AgenciaWeb === \"MC\") {\r\n mensajeReserva = \"Solicitar\";\r\n }\r\n return (\r\n \r\n \r\n );\r\n }\r\n });\r\n return roomsListr;\r\n }\r\n\r\n function getStarImage(catMapeada, catOperador) {\r\n switch (catMapeada) {\r\n case \"1\":\r\n var StarCategory = (\r\n }\r\n />\r\n );\r\n break;\r\n case \"2\":\r\n var StarCategory = (\r\n }\r\n />\r\n );\r\n break;\r\n case \"3\":\r\n var StarCategory = (\r\n }\r\n />\r\n );\r\n break;\r\n case \"4\":\r\n var StarCategory = (\r\n }\r\n />\r\n );\r\n break;\r\n case \"5\":\r\n var StarCategory = (\r\n }\r\n />\r\n );\r\n break;\r\n default:\r\n var StarCategory = catOperador;\r\n break;\r\n }\r\n\r\n return StarCategory;\r\n }\r\n\r\n const bookingClick = (\r\n hotelOperador,\r\n IDCombinacion,\r\n Operador,\r\n IDEncabezado,\r\n token\r\n ) => {\r\n console.log(\"bookingClick-HotelCard\");\r\n console.log(\r\n hotelOperador + \" \" + IDCombinacion + \" \" + Operador + \" \" + IDEncabezado+ \" \" + token\r\n );\r\n resultX.onClick(\r\n hotelOperador,\r\n IDCombinacion,\r\n Operador,\r\n IDEncabezado,\r\n resultX.tipo,\r\n token\r\n );\r\n };\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const handleClickOpenDialog = () => {\r\n setOpen(true);\r\n };\r\n\r\n const handleCloseDialog = () => {\r\n setOpen(false);\r\n };\r\n\r\n const handleClickOpenDialogDetails = () => {\r\n setOpenDetails(true);\r\n };\r\n\r\n const handleCloseDialogDetails = () => {\r\n setOpenDetails(false);\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* */}\r\n {\" \"}\r\n {resultX.hotel[0].nombre}\r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {resultX.hotel[0].destinonombre}\r\n {/* */}\r\n \r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n {resultX.hotel[0].operador}-\r\n {resultX.hotel[0].codigo}\r\n \r\n \r\n
\r\n
*/}\r\n
\r\n \r\n \r\n {resultX.hotel[0].descripcion == null ? (\r\n \"Sin descripción\"\r\n ) : resultX.hotel[0].descripcion.length > 360 ? (\r\n \r\n {parseHtml(resultX.hotel[0].descripcion.substring(0, 360))}{\" \"}\r\n \r\n ...más información\r\n \r\n \r\n ) : (\r\n parseHtml(resultX.hotel[0].descripcion)\r\n )}\r\n \r\n \r\n \r\n \r\n {expanded ? \"\" : getRoomItem(true, resultX.hotel[0].nombre)}\r\n
\r\n \r\n {getRoomItem(false, resultX.hotel[0].nombre)}\r\n \r\n {resultX.hotel.length > Tope ? (\r\n \r\n
\r\n {expanded ? (\r\n \r\n \r\n \r\n \r\n \r\n Mostrar menos servicios\r\n \r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n \r\n \r\n \r\n Más servicios\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n
\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n \r\n\r\n {/* \r\n \r\n \r\n\r\n \r\n \r\n */}\r\n\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n Información del servicio\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {resultX.hotel[0].nombre}\r\n \r\n \r\n \r\n {parseHtml(resultX.hotel[0].descripcion)}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n
\r\n );\r\n}\r\n","import React, { useState, useEffect, useRef } from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport FormGroup from \"@material-ui/core/FormGroup\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport Switch from \"@material-ui/core/Switch\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport Card from \"@material-ui/core/Card\";\r\nimport CardActions from \"@material-ui/core/CardActions\";\r\nimport CardContent from \"@material-ui/core/CardContent\";\r\nimport axios from \"axios\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport Autocomplete from \"@material-ui/lab/Autocomplete\";\r\nimport { Alert, AlertTitle } from \"@material-ui/lab\";\r\nimport { Link } from \"@material-ui/core\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport ReCAPTCHA from \"react-google-recaptcha\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n maxWidth: \"lg\",\r\n padding: 0,\r\n margin: 0,\r\n },\r\n modal: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n },\r\n rootCard: {\r\n maxWidth: 450,\r\n backgroundColor: \"green\",\r\n },\r\n inputsenores: {\r\n paddingTop: \"3px\",\r\n },\r\n paper: {\r\n padding: theme.spacing(2),\r\n textAlign: \"center\",\r\n },\r\n formControl: {\r\n margin: theme.spacing(1),\r\n minWidth: 120,\r\n },\r\n selectEmpty: {\r\n marginTop: theme.spacing(2),\r\n },\r\n textfield: {\r\n paddingTop: \"0px\",\r\n paddingBottom: \"0px\",\r\n paddingLeft: \"8px\",\r\n paddingRight: \"8px\",\r\n },\r\n selectJG: {\r\n \"&::before\": {\r\n paddingTop: \"3px\",\r\n backgroundColor: \"red\",\r\n },\r\n },\r\n botonLogin: {\r\n marginLeft: \"0px\",\r\n marginRight: \"0px\",\r\n width: \"100%\",\r\n backgroundColor: \"#016AA2\",\r\n },\r\n GridLogin: {\r\n maxWidth: \"400px\",\r\n },\r\n}));\r\n\r\nexport default function Login(props) {\r\n const classes = useStyles();\r\n const [agencies, setAgencies] = React.useState();\r\n const [agents, setAgents] = React.useState();\r\n const [flagAuth, setFlagAuth] = React.useState(false);\r\n const [disableBook, setDisableBook] = React.useState(false);\r\n const [agencySelected, setAgencySelected] = React.useState(\"\");\r\n const [agentSelected, setAgentSelected] = React.useState(\"\");\r\n const [searchName, setSearchName] = React.useState(\"\");\r\n const [searchAgent, setSearchAgent] = React.useState(\"\");\r\n const [openMessage, setOpenMessage] = React.useState(false);\r\n const [searchPassword, setSearchPassword] = React.useState(\"\");\r\n const [searchContrasena, setSearchContrasena] = React.useState(\"24twxs\");\r\n const [registered, setRegistered] = React.useState(false);\r\n const [condiciones, setCondiciones] = React.useState(false);\r\n const [nombreApellido, setNombreApellido] = React.useState(\"\");\r\n const [telefono, setTelefono] = React.useState(\"\");\r\n const [email, setEmail] = React.useState(\"\");\r\n const [mensaje, setMensaje] = React.useState(\"\");\r\n const [captchaValido, setCaptchaValido] = useState(false);\r\n const [urlCondiciones, seturlCondiciones] = useState(\"\");\r\n const [LabelCondiciones, setLabelCondiciones] = useState(\"\");\r\n\r\n //------------------------- USE EFFECT\r\n useEffect(() => {\r\n let disBook = false;\r\n if (captchaValido) {\r\n if (registered === false) {\r\n if (\r\n nombreApellido !== \"\" &&\r\n telefono !== \"\" &&\r\n email !== \"\" &&\r\n condiciones\r\n ) {\r\n disBook = true;\r\n } else {\r\n disBook = false;\r\n }\r\n } else {\r\n if (flagAuth === true && condiciones) {\r\n disBook = true;\r\n } else {\r\n disBook = false;\r\n }\r\n } \r\n }\r\n switch (props.AgenciaWeb) {\r\n case 'Ibero':\r\n seturlCondiciones(\"https://www.iberolunatravel.com/ContenidoWeb/Paginas/Ibero/home/terminos-clausulas.aspx\"); \r\n setLabelCondiciones(\"Acepta terminos y condiciones de Iberoluna, C.A.\"); \r\n break;\r\n case 'MC':\r\n seturlCondiciones(\"https://atom.travel/web/condiciones-generales-atom-travel.pdf\");\r\n setLabelCondiciones(\"Acepta terminos y condiciones de MC, C.A.\"); \r\n break;\r\n default:\r\n seturlCondiciones(\"https://atom.travel/web/condiciones-generales-atom-travel.pdf\");\r\n setLabelCondiciones(\"Acepta terminos y condiciones de Atom Travel, C.A.\"); \r\n break; \r\n }\r\n /* if (props.AgenciaWeb === \"Ibero\") {\r\n seturlCondiciones(\"https://www.iberolunatravel.com/ContenidoWeb/Paginas/Ibero/home/terminos-clausulas.aspx\"); \r\n setLabelCondiciones(\"Acepta terminos y condiciones de Iberoluna, C.A.\");\r\n }\r\n else {\r\n seturlCondiciones(\"https://atom.travel/web/condiciones-generales-atom-travel.pdf\");\r\n setLabelCondiciones(\"Acepta terminos y condiciones de Atom Travel, C.A.\"); \r\n } */\r\n setDisableBook(disBook);\r\n let login = {\r\n agencySelected: agencySelected,\r\n agentSelected: agentSelected,\r\n nombreApellido: nombreApellido,\r\n telefono: telefono,\r\n email: email,\r\n mensaje: mensaje,\r\n flagAuth: disBook,\r\n contrasena: searchContrasena,\r\n registrado: registered\r\n };\r\n props.onChange(login);\r\n }, [\r\n agencySelected,\r\n agentSelected,\r\n nombreApellido,\r\n telefono,\r\n email,\r\n registered,\r\n condiciones,\r\n searchContrasena,\r\n captchaValido\r\n ]);\r\n\r\n useEffect(() => {\r\n SearchAgency();\r\n }, []);\r\n //-------- USE EFFECT (FIN)\r\n\r\n //------------------------- API\r\n const SearchAgency = () => {\r\n const url = \"https://webtravel2-online.com/APIatom/api/Agencias?Nombre=\";\r\n axios\r\n .get(url, {\r\n headers: {\r\n \"Access-Control-Allow-Origin\": \"*\",\r\n },\r\n })\r\n .then((response) => {\r\n /* console.log(\"response.data\");\r\n console.log(response.data); */\r\n setAgencies(response.data);\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n };\r\n\r\n const SearchAgents = () => {\r\n const url =\r\n \"https://webtravel2-online.com/APIatom/api/Agentes?Agencia=\" +\r\n agencySelected.NOMBRE;\r\n axios\r\n .get(url, {\r\n headers: {\r\n \"Access-Control-Allow-Origin\": \"*\",\r\n },\r\n })\r\n .then((response) => {\r\n/* console.log(\"response.data\");\r\n console.log(response.data); */\r\n setAgents(response.data);\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n };\r\n\r\n const loginAgency = () => {\r\n setAgents([]);\r\n const url =\r\n \"https://webtravel2-online.com/APIatom/api/Chequeo?codigo=\" +\r\n searchPassword +\r\n \"&nombre=\" +\r\n agencySelected.NOMBRE;\r\n axios\r\n .get(url, {\r\n headers: {\r\n \"Access-Control-Allow-Origin\": \"*\",\r\n },\r\n })\r\n .then((response) => {\r\n setFlagAuth(false);\r\n console.log(\"Auth\");\r\n console.log(response.data);\r\n if (response.data.length > 0) {\r\n if (response.data[0].nombre === agencySelected.NOMBRE) {\r\n setFlagAuth(true);\r\n setOpenMessage(false);\r\n SearchAgents();\r\n } else {\r\n setOpenMessage(true);\r\n setFlagAuth(false);\r\n }\r\n } else {\r\n setOpenMessage(true);\r\n setFlagAuth(false);\r\n }\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n };\r\n\r\n const captcha = useRef(null);\r\n\r\n const onChangeReCAPTCHA = () => {\r\n if (captcha.current.getValue()) {\r\n setCaptchaValido(true);\r\n }\r\n };\r\n //------------------------- API (FIN)\r\n\r\n //------------------------- FUNCIONES\r\n\r\n //-------------------------HANDLERS\r\n const onChangeHandlerPassword = (event) => {\r\n setOpenMessage(false);\r\n setSearchPassword(event.target.value);\r\n };\r\n\r\n const onChangeHandlerContrasena = (event) => {\r\n setSearchContrasena(event.target.value);\r\n };\r\n\r\n const onChangeHandlerAgency = (event) => {\r\n setOpenMessage(false);\r\n setSearchName(event.target.value);\r\n };\r\n\r\n const onChangeHandlerAgent = (event) => {\r\n setAgentSelected(event.target.value);\r\n };\r\n\r\n const onChangeHandlerRegistered = (event) => {\r\n setRegistered(event.target.checked);\r\n };\r\n\r\n const onChangeHandlerCondiciones = (event) => {\r\n setCondiciones(event.target.checked);\r\n };\r\n\r\n const onChangeHandlerNombreApellido = (event) => {\r\n setNombreApellido(event.target.value);\r\n };\r\n\r\n const onChangeHandlerTelefono = (event) => {\r\n setTelefono(event.target.value);\r\n };\r\n\r\n const onChangeHandlerEmail = (event) => {\r\n setEmail(event.target.value);\r\n };\r\n\r\n const onChangeHandlerMensaje = (event) => {\r\n setMensaje(event.target.value);\r\n };\r\n\r\n //-------------------------HANDLERS FIN\r\n\r\n //-----------------------------------\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n {props.AgenciaWeb !== \"Ibero\" && props.AgenciaWeb !== \"MC\" ? (\r\n \r\n \r\n \r\n \r\n \r\n }\r\n label=\"¿ Usted es un usuario registrado ?\"\r\n labelPlacement=\"start\"\r\n color=\"primary\"\r\n />\r\n \r\n \r\n \r\n \r\n ) : ( )\r\n }\r\n {/* \r\n \r\n */}\r\n {registered && !flagAuth ? (\r\n \r\n \r\n {/* */}\r\n {\r\n setAgencySelected(newValue);\r\n }}\r\n classes={{\r\n option: classes.option,\r\n }}\r\n getOptionLabel={(option) => option.NOMBRE}\r\n renderOption={(option) => (\r\n \r\n \r\n {option.NOMBRE}\r\n \r\n \r\n )}\r\n renderInput={(params) => (\r\n \r\n )}\r\n />\r\n\r\n {/* */}\r\n \r\n \r\n {/* */}\r\n \r\n {/* */}\r\n \r\n \r\n {/* */}\r\n \r\n Login\r\n \r\n {/* */}\r\n \r\n {openMessage ? (\r\n \r\n \r\n Error\r\n Contraseña incorrecta !\r\n \r\n \r\n ) : (\r\n \"\"\r\n )}\r\n \r\n ) : (\r\n \"\"\r\n )}\r\n {registered && flagAuth ? (\r\n \r\n \r\n \r\n \r\n {agencySelected.NOMBRE}\r\n \r\n {\r\n setAgentSelected(newValue);\r\n setFlagAuth(true);\r\n }}\r\n classes={{\r\n option: classes.option,\r\n }}\r\n getOptionLabel={(option) => option.NOMBRE}\r\n renderOption={(option) => (\r\n \r\n \r\n {option.NOMBRE}\r\n \r\n \r\n )}\r\n renderInput={(params) => (\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n ) : !registered ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n \"\"\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n label={\r\n \r\n {LabelCondiciones}\r\n \r\n }\r\n labelPlacement=\"start\"\r\n color=\"primary\"\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n","import React, { useState, useEffect } from 'react';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport Box from '@material-ui/core/Box';\r\n\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n maxWidth: \"sm\",\r\n backgroundColor: 'lightgray',\r\n padding: 0,\r\n margin: 0\r\n },\r\n inputsenores: {\r\n paddingTop: '3px' \r\n },\r\n formControl: {\r\n // margin: theme.spacing(1),\r\n minWidth: 120,\r\n paddingTop: '3px',\r\n backgroundColor: 'green'\r\n },\r\n selectEmpty: {\r\n marginTop: theme.spacing(2),\r\n },\r\ntextfield: {\r\n paddingTop: '0px', \r\n paddingBottom: '0px', \r\n paddingLeft: '8px', \r\n paddingRight: '8px'\r\n},\r\nselectJG: {\r\n '&::before': {\r\n paddingTop: '3px',\r\n backgroundColor: 'red'\r\n }\r\n}\r\n\r\n \r\n}));\r\n\r\n\r\nexport default function FormRoom(paxP, i) {\r\n\r\n const classes = useStyles();\r\n const [pax, setPax] = useState(paxP)\r\n const handleInputChange = event => {\r\n event.persist()\r\n const value = event.target.value;\r\n setPax({\r\n ...pax,\r\n [event.target.name]: value\r\n });\r\n }\r\n\r\n useEffect(() => {\r\n paxP.onChange(pax);\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [pax]);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n );\r\n}\r\n","import React from 'react';\r\n// import Paper from '@material-ui/core/Paper';\r\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport Box from \"@material-ui/core/Box\";\r\n\r\n\r\nexport default function LoadingHotels(props) {\r\n\r\n return (\r\n \r\n
\r\n {/* */}\r\n \r\n {/* \r\n \r\n */}\r\n \r\n \r\n \r\n {props.AgenciaWeb === \"Ibero\" ? (\r\n \"Logo\"\r\n ) : (\r\n \r\n )}\r\n {props.AgenciaWeb === \"MC\" ? (\r\n \"Logo\"\r\n ) : (\r\n \"Logo\"\r\n )}\r\n \r\n Realizando reserva del\r\n \r\n \r\n {props.hotelName}\r\n \r\n \r\n \"País\" {props.zoneName}\r\n \r\n {/* \r\n Estamos buscando el mejor precio disponible.\r\n */}\r\n \r\n El proceso puede durar unos segundos.\r\n \r\n {/* */}\r\n\r\n \r\n {/* */}\r\n
\r\n
\r\n );\r\n}\r\n","import React from 'react';\r\n// import CircularProgress from \"@material-ui/core/CircularProgress\";\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Grid from '@material-ui/core/Grid';\r\n// import Box from \"@material-ui/core/Box\";\r\n\r\n\r\nexport default function NotAvailability(props) {\r\n\r\n return (\r\n \r\n
\r\n {/* */}\r\n \r\n \r\n \"Logo\"\r\n \r\n {/* */}\r\n \r\n No se puede realizar la reserva.\r\n \r\n \r\n El hotel {props.hotelName} esta en penalidad.\r\n \r\n \r\n Favor comunicarse con Atom para realizar la reserva.\r\n \r\n {/* */}\r\n\r\n \r\n {/* */}\r\n
\r\n
\r\n );\r\n}\r\n","import React from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Card from \"@material-ui/core/Card\";\r\nimport CardContent from \"@material-ui/core/CardContent\";\r\nimport CardMedia from \"@material-ui/core/CardMedia\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport CardHeader from \"@material-ui/core/CardHeader\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport LocationOnIcon from \"@material-ui/icons/LocationOn\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport { loadCSS } from \"fg-loadcss\";\r\nimport PruebaGoogleMaps from \"../PruebaGoogleMaps\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport CheckCircleOutlinedIcon from \"@material-ui/icons/CheckCircleOutlined\";\r\nimport Slide from \"@material-ui/core/Slide\";\r\nimport HotelDetails from \"../../Components/Hotels/HotelDetails\";\r\nimport Login from \"./Login\";\r\nimport axios from \"axios\";\r\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\r\nimport FormPax from \"./FormPax\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport CancelOutlinedIcon from \"@material-ui/icons/CancelOutlined\";\r\nimport { Alert, AlertTitle } from \"@material-ui/lab\";\r\nimport Rating from \"@material-ui/lab/Rating\";\r\nimport StarBorderIcon from \"@material-ui/icons/StarBorder\";\r\nimport WaitBooking from \"./WaitBooking\";\r\nimport NRFMessages from \"./NRFMessage\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport useMediaQuery from \"@material-ui/core/useMediaQuery\";\r\nimport { useTheme } from \"@material-ui/core/styles\";\r\nimport { Fragment } from \"react\";\r\nimport { useLocation } from 'react-router-dom';\r\n\r\nconst useStyles = makeStyles({\r\n CardTittulo: {\r\n color: \"#016AA2\",\r\n fontFamily: \"MontserratSemiBold\",\r\n },\r\n CardTittuloHab: {\r\n color: \"#757575\",\r\n fontFamily: \"MontserratRegular\",\r\n },\r\n root: {\r\n maxWidth: \"lg\",\r\n backgroundColor: \"white\",\r\n padding: 0,\r\n marginBottom: \"1%\",\r\n marginTop: 0,\r\n marginLeft: 0,\r\n marginRight: 0,\r\n borderStyle: \"none\",\r\n borderWidth: \"1px\",\r\n borderColor: \"#F8E8E8\",\r\n },\r\n cardseccion: {\r\n maxWidth: \"lg\",\r\n padding: 0,\r\n margin: 0,\r\n borderStyle: \"none\",\r\n borderWidth: \"1px\",\r\n borderColor: \"#cfd8dc\",\r\n backgroundColor: \"white\",\r\n },\r\n\r\n RoomsCard: {\r\n padding: \"1%\",\r\n },\r\n RoomsCardPrincipal: {\r\n padding: 0,\r\n margin: 0,\r\n backgroundColor: \"white\",\r\n },\r\n RoomsCardAction: {\r\n padding: 0,\r\n margin: 0,\r\n backgroundColor: \"#ffe0b2\",\r\n },\r\n RoomsDescription: {\r\n paddingTop: \"1%\",\r\n paddingLeft: \"1%\",\r\n paddingRight: \"1%\",\r\n },\r\n RoomsName: {\r\n paddingTop: \"0.7%\",\r\n paddingRight: \"1%\",\r\n paddingBottom: 0,\r\n },\r\n RoomsDireccion: {\r\n flexGrow: 1,\r\n paddingTop: \"0px\",\r\n paddingBottom: \"1%\",\r\n direction: \"row\",\r\n justify: \"center\",\r\n alignItems: \"center\",\r\n },\r\n RoomsContainer: {\r\n paddingBottom: \"0.7%\",\r\n backgroundColor: \"#E0E0E0\",\r\n },\r\n GridImagen: {\r\n paddingBottom: \"0%\",\r\n },\r\n TituloHotel: {\r\n color: \"#FE5215\",\r\n // fontWeight: 'bolder'\r\n },\r\n HotelAddress: {\r\n color: \"#016AA2\",\r\n fontStyle: \"oblique\",\r\n verticalAlign: \"top\",\r\n paddingBottom: 7,\r\n },\r\n HotelDescription: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n paddingTop: \"1%\",\r\n paddingRight: \"0.5%\",\r\n height: 70,\r\n color: \"#757575\",\r\n },\r\n TituloHabitacion: {\r\n color: \"#016AA2\",\r\n },\r\n DetalleHabitacion: {\r\n color: \"#757575\",\r\n },\r\n DetalleHabitacionPrecio: {\r\n color: \"black\",\r\n fontWeight: \"bold\"\r\n },\r\n appBar: {\r\n position: \"relative\",\r\n backgroundColor: \"#016AA2\",\r\n },\r\n title: {\r\n marginLeft: 10,\r\n flex: 1,\r\n },\r\n operador: {\r\n color: \"#E0E0E0\",\r\n fontSize: \"9px\",\r\n },\r\n headerseccion: {\r\n backgroundColor: \"#ef6c00\",\r\n color: \"white\",\r\n fontSize: \"1.8rem\",\r\n },\r\n headerhabsub: {\r\n marginTop: \"0px\",\r\n marginBottom: \"0px\",\r\n paddingTop: \"0px\",\r\n paddingBottom: \"0px\",\r\n color: \"#016AA2\",\r\n fontFamily: \"MontserratRegular\",\r\n backgroundColor: \"white\",\r\n },\r\n headerhab: {\r\n marginTop: \"0px\",\r\n marginBottom: \"0px\",\r\n paddingTop: \"0px\",\r\n paddingBottom: \"0px\",\r\n color: \"#016AA2\",\r\n fontFamily: \"MontserratSemiBold\",\r\n backgroundColor: \"aliceblue\",\r\n },\r\n headerhabBooking: {\r\n marginTop: \"0px\",\r\n marginBottom: \"0px\",\r\n paddingTop: \"0px\",\r\n paddingBottom: \"0px\",\r\n color: \"#016AA2\",\r\n fontFamily: \"MontserratSemiBold\",\r\n backgroundColor: \"#c8e6c9\",\r\n },\r\n iconAlert: {\r\n \"& .MuiAlert-icon\": {\r\n fontSize: 55,\r\n },\r\n fontSize: \"1.3rem\",\r\n },\r\n titleAlert: {\r\n \"& .MuiAlertTitle\": {\r\n fontSize: \"1.8rem\",\r\n },\r\n },\r\n});\r\n\r\n/* const styles = {\r\n dialogPaper: {\r\n width: \"800px\",\r\n Height: \"800px\",\r\n },\r\n}; */\r\n\r\nconst Transition = React.forwardRef(function Transition(props, ref) {\r\n return ;\r\n});\r\n\r\nexport default function HotelBooking(resultX, i) {\r\n const classes = useStyles();\r\n const [open, setOpen] = React.useState(false);\r\n const [openWait, setOpenWait] = React.useState(false);\r\n const [openNRF, setOpenNRF] = React.useState(false);\r\n const [flagAuth, setFlagAuth] = React.useState(false);\r\n const [flagNRF, setFlagNRF] = React.useState(false);\r\n const [flagPoliticas, setFlagPoliticas] = React.useState(false);\r\n const [openDetails, setOpenDetails] = React.useState(false);\r\n const [policy, setPolicy] = React.useState([]);\r\n const [notas, setNotas] = React.useState([]);\r\n const [paxes, setPaxes] = React.useState([]);\r\n const [login, setLogin] = React.useState([]);\r\n const [bookingOk, setBookingOk] = React.useState(false);\r\n const [bookingKO, setBookingaKO] = React.useState(false);\r\n const [notaBooking, setNotaBooking] = React.useState(\"\");\r\n const [numeroBooking, setNumeroBooking] = React.useState(\"\");\r\n const [politicasOnline, setPoliticasOnline] = React.useState(\"\");\r\n const [notasOnline, setNotasOnline] = React.useState(\"\");\r\n const theme = useTheme();\r\n const fullScreen = useMediaQuery(theme.breakpoints.down(\"sm\"));\r\n console.log('booking');\r\n console.log(resultX);\r\n\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0)\r\n getPolicy();\r\n creaPaxes();\r\n const node = loadCSS(\r\n \"https://use.fontawesome.com/releases/v5.12.0/css/all.css\",\r\n document.querySelector(\"#font-awesome-css\")\r\n );\r\n\r\n return () => {\r\n node.parentNode.removeChild(node);\r\n };\r\n }, []);\r\n\r\n const parseHtml = require(\"html-react-parser\");\r\n\r\n const creaPaxes = () => {\r\n var Paxes = [];\r\n console.log(\"resultX Distri\")\r\n console.log(resultX);\r\n //distribution: 'hab1=1,2,10,15&hab2=0&hab3=0',\r\n var dist = [];\r\n dist.push(resultX.distribution);\r\n console.log(\"Distri\")\r\n console.log(dist);\r\n var nombreHab = resultX.hotel.opcion_nombre;\r\n // RECORRE CADA UNA DE LAS HABITACIONES+\r\n var iHab;\r\n /* for (iHab = 0; iHab < dist.length; iHab++) {\r\n if (dist[iHab].split(\"=\")[1] !== 0) {\r\n var pax = {\r\n Hab: iHab,\r\n NombreHabitacion: nombreHab[iHab],\r\n Regimen: resultX.hotel.Regimen,\r\n Paxes: [],\r\n };\r\n\r\n // RECORRE CADA UNA DE LOS DATOS DE LA HABITACION LUEGO DEL = (1,2,10,15)\r\n var contenidoHab = dist[iHab].split(\"=\")[1].split(\",\");\r\n var ipax;\r\n for (ipax = 0; ipax < contenidoHab.length; ipax++) {\r\n switch (ipax) {\r\n case 0:\r\n // RECORRE LOS ADULTOS POR CADA HABITACION (1) - (1,2,10,15)\r\n var ipax0;\r\n for (ipax0 = 0; ipax0 < contenidoHab[ipax]; ipax0++) {\r\n pax.Paxes.push({\r\n Id: iHab + \"-A-\" + ipax0,\r\n Tipo: \"ADULTO\",\r\n Edad: \"\",\r\n Nombre: \"\",\r\n Apellido: \"\",\r\n Genero: \"\",\r\n });\r\n }\r\n break;\r\n // RECORRE LOS NIÑOS POR CADA HABITACION (2) - (1,2,10,15)\r\n case 1:\r\n var ipax1;\r\n for (ipax1 = 0; ipax1 < contenidoHab[ipax]; ipax1++) {\r\n pax.Paxes.push({\r\n Id: iHab + \"-N-\" + ipax1,\r\n Tipo: \"NINO\",\r\n Edad: contenidoHab[ipax + ipax1 + 1],\r\n Nombre: \"\",\r\n Apellido: \"\",\r\n Genero: \"\",\r\n });\r\n }\r\n break;\r\n default:\r\n }\r\n }\r\n Paxes.push(pax);\r\n }\r\n } */\r\n iHab = 0;\r\n if (dist[iHab].split(\"=\")[1] !== 0) {\r\n var pax = {\r\n Hab: iHab,\r\n NombreHabitacion: nombreHab,\r\n Regimen: resultX.hotel.Regimen,\r\n Paxes: [],\r\n };\r\n\r\n // RECORRE CADA UNA DE LOS DATOS DE LA HABITACION LUEGO DEL = (1,2,10,15)\r\n var contenidoHab = dist[iHab].split(\"=\")[1].split(\",\");\r\n var ipax;\r\n for (ipax = 0; ipax < contenidoHab.length; ipax++) {\r\n switch (ipax) {\r\n case 0:\r\n // RECORRE LOS ADULTOS POR CADA HABITACION (1) - (1,2,10,15)\r\n var ipax0;\r\n for (ipax0 = 0; ipax0 < contenidoHab[ipax]; ipax0++) {\r\n pax.Paxes.push({\r\n Id: iHab + \"-A-\" + ipax0,\r\n Tipo: \"ADULTO\",\r\n Edad: \"\",\r\n Nombre: \"\",\r\n Apellido: \"\",\r\n Genero: \"\",\r\n });\r\n }\r\n break;\r\n // RECORRE LOS NIÑOS POR CADA HABITACION (2) - (1,2,10,15)\r\n case 1:\r\n var ipax1;\r\n for (ipax1 = 0; ipax1 < contenidoHab[ipax]; ipax1++) {\r\n pax.Paxes.push({\r\n Id: iHab + \"-N-\" + ipax1,\r\n Tipo: \"NINO\",\r\n Edad: contenidoHab[ipax + ipax1 + 1],\r\n Nombre: \"\",\r\n Apellido: \"\",\r\n Genero: \"\",\r\n });\r\n }\r\n break;\r\n default:\r\n }\r\n }\r\n }\r\n Paxes.push(pax);\r\n setPaxes(Paxes);\r\n };\r\n\r\n const getPolicy = () => {\r\n var NotasTmp = \"\";\r\n var PoliticasTmp = \"\";\r\n\r\n const url = \"https://webtravel2-online.com/APIhoteles/api/PoliticasServiciosRetrieve?idEncabezado=\" +\r\n resultX.hotel.idEncabezado +\r\n \"&idCombinacion=\" +\r\n resultX.hotel.idCombinacion +\r\n \"&Operador=\" +\r\n resultX.hotel.operador;\r\n \r\n axios\r\n .get(url)\r\n .then((response) => {\r\n if (response.data[0].EnPenalidad) {\r\n setFlagNRF(true);\r\n }\r\n if (response.data[0].Condiciones.length > 0) {\r\n setFlagPoliticas(true);\r\n setPolicy(response.data[0].Condiciones);\r\n for (var i = 0; i < response.data[0].Condiciones.length; i++) {\r\n PoliticasTmp =\r\n PoliticasTmp +\r\n response.data[0].Condiciones[i].Fecha +\r\n \": \" +\r\n response.data[0].Condiciones[i].Cargo +\r\n \" & \";\r\n }\r\n } else {\r\n\r\n var politicas = [];\r\n if (resultX.hotel.Operador === \"ATOM\") {\r\n setFlagPoliticas(true);\r\n politicas.push({\r\n Cargo: \"\",\r\n Descripcion: \"\",\r\n Fecha: \"Favor consultar con Atom Travel\",\r\n Habitacion: \"\",\r\n Tipo: \"\",\r\n })\r\n } else {\r\n setFlagPoliticas(false);\r\n politicas.push({\r\n Cargo: \"\",\r\n Descripcion: \"\",\r\n Fecha: \"No existen políticas de cancelación.\",\r\n Habitacion: \"\",\r\n Tipo: \"\",\r\n })\r\n }\r\n setPolicy(politicas);\r\n for (var ii = 0; ii < politicas.length; ii++) {\r\n PoliticasTmp =\r\n PoliticasTmp +\r\n politicas[ii].Fecha +\r\n \": \" +\r\n politicas[ii].Cargo +\r\n \" & \";\r\n }\r\n }\r\n setNotas(response.data[0].Notas);\r\n for (var i = 0; i < response.data[0].Notas.length; i++) {\r\n NotasTmp = NotasTmp + response.data[0].Notas[i].Descripcion + \" & \";\r\n }\r\n setNotasOnline(NotasTmp);\r\n\r\n setPoliticasOnline(PoliticasTmp);\r\n })\r\n .catch((error) => {\r\n setFlagPoliticas(false);\r\n var politicas = [];\r\n if (resultX.hotel.Operador === \"ATOM\") {\r\n politicas.push({\r\n Cargo: \"\",\r\n Descripcion: \"\",\r\n Fecha: \"Favor consultar con Atom Travel\",\r\n Habitacion: \"\",\r\n Tipo: \"\",\r\n })\r\n } else {\r\n politicas.push({\r\n Cargo: \"se cobrará 100% del total de noches\",\r\n Descripcion: \"fff\",\r\n Fecha: \"ERROR EN WS ----- En gastos desde la reserva\",\r\n Habitacion: \"\",\r\n Tipo: \"\",\r\n })\r\n }\r\n setPolicy(politicas);\r\n for (var i = 0; i < politicas.length; i++) {\r\n // PoliticasTmp = PoliticasTmp + policy[i].Fecha + \": \" + policy[i].Cargo + \" & \";\r\n PoliticasTmp = PoliticasTmp + politicas[i].Fecha + \" \" + politicas[i].Cargo + \" & \";\r\n }\r\n setPoliticasOnline(PoliticasTmp);\r\n }); //\r\n };\r\n\r\n const date_diff_indays = (dt1, dt2) => {\r\n // {resultX.fromX.substring(8, 6) + \" / \" + resultX.fromX.substring(6, 4) + \" / \" + resultX.fromX.substring(0, 4)}\r\n return Math.floor(\r\n (Date.UTC(\r\n dt2.substring(0, 4),\r\n dt2.substring(6, 4) - 1,\r\n dt2.substring(8, 6)\r\n ) -\r\n Date.UTC(\r\n dt1.substring(0, 4),\r\n dt1.substring(6, 4) - 1,\r\n dt1.substring(8, 6)\r\n )) /\r\n (1000 * 60 * 60 * 24)\r\n );\r\n };\r\n\r\n const handleClickOpenDialog = () => {\r\n setOpen(true);\r\n };\r\n\r\n const handleCloseDialog = () => {\r\n setOpen(false);\r\n };\r\n\r\n const handleCloseDialogWait = () => {\r\n setOpenWait(false);\r\n };\r\n\r\n const handleCloseDialogNRF = () => {\r\n setOpenNRF(false);\r\n };\r\n\r\n const handleClickOpenDialogDetails = () => {\r\n setOpenDetails(true);\r\n };\r\n\r\n const handleCloseDialogDetails = () => {\r\n setOpenDetails(false);\r\n };\r\n\r\n const handleClickCancel = () => {\r\n resultX.onCancel(false);\r\n };\r\n\r\n const onClickBooking = () => {\r\n var claveControl = \"SI\";\r\n\r\n if (flagNRF) {\r\n if (login.agencySelected.NOMBRE == \"ATOM - RESERVAS\") {\r\n var claveControl = prompt(\"LA RESERVA ESTA EN PENALIDAD. Ingrese la clave de control\");\r\n if (claveControl != \"24twxs\") {\r\n alert(\"Clave incorrecta\")\r\n claveControl = \"NO\";\r\n } else {\r\n claveControl = \"SI\";\r\n }\r\n } else {\r\n setOpenNRF(true);\r\n claveControl = \"NO\";\r\n setFlagAuth(false);\r\n }\r\n }\r\n let pp;\r\n setOpenWait(true);\r\n paxes.forEach((i) => pp = i.Paxes.filter((x) => x.Nombre === \"\" || x.Apellido === \"\" || x.Edad === \"\" || typeof x.Nombre === \"undefined\" || typeof x.Apellido === \"undefined\" || typeof x.Edad === \"undefined\").length);\r\n if (pp === 0 && claveControl == \"SI\") {\r\n\r\n setFlagAuth(false);\r\n var habs = [];\r\n var cantAdultos = 0;\r\n var cantNinos = 0;\r\n paxes.map((result, i) => {\r\n let hab = [];\r\n result.Paxes.map((resultPaxes, i) => {\r\n let pax = {};\r\n pax.NOMBRE = resultPaxes.Nombre;\r\n pax.APELLIDO = resultPaxes.Apellido;\r\n pax.EDAD = resultPaxes.Edad;\r\n hab.push(pax);\r\n if (resultPaxes.Edad === \"\" || resultPaxes.Edad > 17) {\r\n cantAdultos = cantAdultos + 1;\r\n } else {\r\n cantNinos = cantNinos + 1;\r\n }\r\n });\r\n habs.push({\r\n ORDEN: i,\r\n DESCRIPCION: result.NombreHabitacion,\r\n PASAJEROS: hab,\r\n });\r\n });\r\n console.log(resultX);\r\n var codigoIbero = \"\";\r\n switch (resultX.AgenciaWeb) {\r\n case \"Ibero\":\r\n codigoIbero = \"A94502\";\r\n break;\r\n case \"MC\":\r\n codigoIbero = \"MC\";\r\n break;\r\n default:\r\n codigoIbero = \"\";\r\n break;\r\n }\r\n /* if (resultX.AgenciaWeb === \"Ibero\") {\r\n codigoIbero = \"A94502\";\r\n } */\r\n var book = {\r\n ITEMS: [\r\n {\r\n HABITACIONES: habs,\r\n DESCRIPCIONCOMBINACION: resultX.hotel.opcion_nombre,\r\n IDENCABEZADO: resultX.hotel.idEncabezado,\r\n IDCOMBINADOS: resultX.hotel.idCombinacion,\r\n TIPO: \"SERVICIO\",\r\n DESCRIPCION: resultX.hotel.nombre,\r\n FECHAENTRADA: resultX.hotel.fecha_inicio,\r\n FECHASALIDA: resultX.hotel.fecha_fin,\r\n CODIGO: resultX.hotel.codigo,\r\n PROVEEDOR: resultX.hotel.operador,\r\n CIUDAD: resultX.hotel.destino,\r\n CIUDADNAME: resultX.hotel.destinonombre,\r\n OBSERVACIONES: login.mensaje,\r\n REGIMEN: \"\",\r\n PRECIO: resultX.hotel.precio_total,\r\n MONEDA: resultX.hotel.precio_moneda,\r\n CATEGORIA: \"\",\r\n ADULTOS: cantAdultos,\r\n NINOS: cantNinos,\r\n PoliticasOnline: politicasOnline,\r\n NotasOnline: notasOnline.substring(0, 1400),\r\n },\r\n ],\r\n AGENCIA: [\r\n {\r\n NOMBRE: login.agencySelected.NOMBRE,\r\n NOMBREAGENTE: login.agentSelected.NOMBRE,\r\n CORREO: \"\",\r\n CODIGO: codigoIbero,\r\n },\r\n ],\r\n PASDIRECTO: [\r\n {\r\n NOMBRE: login.nombreApellido,\r\n CELULAR: \"\",\r\n TELEFONO: login.telefono,\r\n CORREO: login.email,\r\n MENSAJE: login.mensaje,\r\n },\r\n ],\r\n ASIGNADOA: login.registrado ? \"AG\" : \"DI\",\r\n EXPEDIENTEREFERENCIA: \"\",\r\n PASSWORD: login.contrasena,\r\n };\r\n\r\n console.log('book');\r\n console.log(book);\r\n var urlBooking = \"https://webtravel2-online.com/APIhoteles/api/ReservaServicios\";\r\n if (resultX.AgenciaWeb !== \"Ibero\" || resultX.AgenciaWeb !== \"MC\") {\r\n urlBooking = \"https://webtravel2-online.com/APIhoteles/api/ReservaServicios/agencia=Ibero\"; \r\n }\r\n \r\n axios\r\n .post(urlBooking, book)\r\n //.post('http://localhost:60691/api/Reserva', book)\r\n .then((response) => {\r\n console.log('ENTRO EN EL RESPONSE');\r\n console.log(response.data);\r\n if (response.data[0].STATUS === \"OK\") {\r\n setBookingOk(true);\r\n setBookingaKO(false);\r\n if (response.data[0].ITEMRSS[0].NOTAS[0].DESCRIPCION !== \"\") {\r\n setNotaBooking(response.data[0].ITEMRSS[0].NOTAS[0].DESCRIPCION);\r\n }\r\n setNumeroBooking(response.data[0].EXPEDIENTE);\r\n } else {\r\n alert(response.data[0].MENSAJE)\r\n setBookingaKO(true);\r\n setBookingOk(false);\r\n }\r\n setOpenWait(false);\r\n })\r\n .catch((error) => {\r\n setBookingaKO(true);\r\n setBookingOk(false);\r\n setOpenWait(false);\r\n }); //\r\n\r\n } else {\r\n setOpenWait(false);\r\n if (claveControl == \"SI\") {\r\n alert(\"Favor indique los pasajeros.\")\r\n }\r\n }\r\n };\r\n\r\n const UpdateLogin = (login) => {\r\n if (login.flagAuth) {\r\n if (flagPoliticas === true) {\r\n setFlagAuth(login.flagAuth);\r\n setLogin(login);\r\n } else {\r\n alert('Error en polítcas.')\r\n }\r\n }\r\n };\r\n\r\n const handleChangePax = (pax) => {\r\n paxes[\r\n paxes.findIndex((s) => s.Hab == pax.room.Id.split(\"-\")[0])\r\n ].Paxes.filter((s) => s.Id == pax.room.Id)[0].Nombre = pax.Nombre;\r\n paxes[\r\n paxes.findIndex((s) => s.Hab == pax.room.Id.split(\"-\")[0])\r\n ].Paxes.filter((s) => s.Id == pax.room.Id)[0].Apellido = pax.Apellido;\r\n paxes[\r\n paxes.findIndex((s) => s.Hab == pax.room.Id.split(\"-\")[0])\r\n ].Paxes.filter((s) => s.Id == pax.room.Id)[0].Edad = pax.Edad;\r\n\r\n setPaxes(paxes);\r\n //resultX.onChange(paxes)\r\n };\r\n\r\n return (\r\n \r\n \r\n {bookingOk === false ? (\r\n
\r\n ) : (\r\n \r\n {bookingKO === false ? (\r\n \r\n \r\n \r\n Reserva realizada con éxito.\r\n \r\n El número de la reserva es: {numeroBooking}\r\n \r\n \r\n ) : (\r\n \r\n \r\n Ha habido un error en la reserva.\r\n Favor volver a intentarlo. Disculpe las moletias.\r\n \r\n \r\n )}\r\n \r\n )}\r\n
\r\n \r\n \r\n \r\n Servicio seleccionado\r\n \r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* {resultX.hotel.nombreHotel} */}\r\n {resultX.hotel.nombre}\r\n \r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {resultX.hotel.destinonombre}\r\n \r\n \r\n \r\n {/* */}\r\n \r\n \r\n {/* \r\n {resultX.hotel.categoriaMapeada != \"1\" &&\r\n resultX.hotel.categoriaMapeada != \"2\" &&\r\n resultX.hotel.categoriaMapeada != \"3\" &&\r\n resultX.hotel.categoriaMapeada != \"4\" &&\r\n resultX.hotel.categoriaMapeada != \"5\" ?
:\r\n }\r\n />}\r\n
*/}\r\n \r\n {resultX.hotel.categoria} - {resultX.hotel.Operador}\r\n \r\n
\r\n
\r\n \r\n \r\n {resultX.hotel.descripcion == null ? (\r\n \"Sin descripción\"\r\n ) : resultX.hotel.descripcion.length > 380 ? (\r\n \r\n {parseHtml(\r\n String(resultX.hotel.descripcion.substring(0,380))\r\n )}{\" \"}\r\n {/* \r\n ...más información\r\n */}\r\n \r\n ) : (\r\n parseHtml(resultX.hotel.descripcion)\r\n )}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Detalle de la Reserva\r\n \r\n }\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Fecha del servicio\r\n \r\n \r\n \r\n {resultX.hotel.fecha_inicio.substring(8, 6) +\r\n \" / \" +\r\n resultX.hotel.fecha_inicio.substring(6, 4) +\r\n \" / \" +\r\n resultX.hotel.fecha_inicio.substring(0, 4)}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Opción\r\n \r\n \r\n \r\n {resultX.hotel.opcion_nombre}\r\n \r\n \r\n \r\n \r\n\r\n {/* \r\n \r\n \r\n Fecha de Salida\r\n \r\n \r\n \r\n {resultX.toX.substring(8, 6) +\r\n \" / \" +\r\n resultX.toX.substring(6, 4) +\r\n \" / \" +\r\n resultX.toX.substring(0, 4)}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Noches\r\n \r\n \r\n {date_diff_indays(resultX.fromX, resultX.toX)}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Régimen Alimenticio\r\n \r\n \r\n {resultX.hotel.Regimen}\r\n \r\n \r\n */}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {/* Tipo de Habitación */}\r\n \r\n \r\n {resultX.hotel.DescripcionCombinacion}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Precio\r\n \r\n \r\n {resultX.hotel.precio_moneda} {resultX.hotel.precio_total}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Datos de los Pasajeros\r\n \r\n }\r\n />\r\n \r\n \r\n \r\n {paxes.map((resultX, i) => (\r\n \r\n \r\n {resultX.NombreHabitacion}\r\n \r\n }\r\n />\r\n \r\n {resultX.Paxes.map((resultY, i) => (\r\n \r\n ))}\r\n \r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Políticas de Cancelación\r\n \r\n }\r\n />\r\n \r\n \r\n \r\n {policy.length > 0 ? (\r\n
\r\n {policy.map((resultX, i) => (\r\n \r\n {resultX.Fecha}: {resultX.Cargo}\r\n \r\n ))}\r\n {flagNRF ? (\r\n \r\n

\r\n \r\n La reserva ya se encuentra en penalidad.\r\n \r\n

\r\n
\r\n ) :\r\n
}\r\n
\r\n ) : (\r\n \r\n )}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n {notas.length > 0 ? (\r\n \r\n \r\n \r\n Nota Importantes de Confirmación\r\n \r\n }\r\n />\r\n \r\n \r\n \r\n \r\n {notas.length > 0 ? (\r\n
\r\n {notas.map((resultX, i) => (\r\n /* \r\n {encodeHTMLEntities(resultX.Descripcion)}\r\n */\r\n //
\r\n \r\n {resultX.Descripcion !== \"Con Disponibilidad\" &&\r\n resultX.Descripcion !== \"BookingCode\" ? (\r\n parseHtml(resultX.Descripcion)\r\n ) : (\r\n
\r\n )}\r\n
\r\n ))}\r\n
\r\n ) : (\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n
\r\n )}\r\n\r\n {notaBooking != \"\" ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {notaBooking}\r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n \"\"\r\n )}\r\n \r\n\r\n {bookingOk === false ? (\r\n \r\n\r\n\r\n \r\n \r\n Responsable de la Reserva\r\n \r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n }\r\n >\r\n Reservar\r\n \r\n \r\n \r\n }\r\n onClick={handleClickCancel}\r\n >\r\n Volver atrás\r\n \r\n \r\n \r\n \r\n ) : (\r\n \"\"\r\n )}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n {/* MODAL DE LOADING RESERVA */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n {/* MODAL DE RESERVA EN PENALIDAD*/}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import React from 'react';\r\nimport { GoogleApiWrapper, InfoWindow, Map, Marker } from 'google-maps-react';\r\nimport ReactDOM from \"react-dom\";\r\nimport Paper from '@material-ui/core/Paper';\r\nimport Typography from '@material-ui/core/Typography';\r\n// import { makeStyles } from '@material-ui/core/styles';\r\nimport AppBar from '@material-ui/core/AppBar';\r\nimport Toolbar from '@material-ui/core/Toolbar';\r\nimport '../../HotelMaterial.css'\r\nimport Link from '@material-ui/core/Link';\r\n// import { Button } from '@material-ui/core';\r\n\r\n\r\nconst GOOGLE_MAPS_JS_API_KEY = 'AIzaSyCWCu2mMfPB0twxHyFuvk6mbB-o_bBqITM';\r\n\r\nclass GoogleMapsContainer extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n showingInfoWindow: false,\r\n activeMarker: {},\r\n selectedPlace: {}\r\n }\r\n\r\n // binding this to event-handler functions\r\n this.onMarkerClick = this.onMarkerClick.bind(this);\r\n this.onMapClick = this.onMapClick.bind(this);\r\n }\r\n\r\n capitalizarPalabras = (val) => {\r\n if (typeof val === \"undefined\" || val === \"\") {\r\n return \"\";\r\n } else {\r\n try {\r\n return val\r\n .toLowerCase()\r\n .trim()\r\n .split(\" \")\r\n .filter((item) => item.trim() !== \"\")\r\n .map((v) => v[0].toUpperCase() + v.substr(1))\r\n .join(\" \");\r\n } catch (error) {\r\n console.error(\"errortoUpper\");\r\n console.error(error);\r\n }\r\n }\r\n }\r\n\r\n ApplyFilterName = () => {\r\n console.log(\"this.state.hotelNombre\")\r\n console.log(this.state.hotelNombre)\r\n this.props.onClick(this.state.hotelNombre)\r\n }\r\n\r\n onInfoWindowOpen(props, e) {\r\n const button = ( {this.ApplyFilterName();}} color=\"inherit\">{this.state.hotelNombre});\r\n // );\r\n if (document.getElementById(\"iwc\") != null ) {\r\n ReactDOM.render(React.Children.only(button), document.getElementById(\"iwc\"));\r\n }\r\n }\r\n\r\n onMarkerClick = (props, marker, e) => {\r\n console.log(this.props.dataHotelsDetails[0])\r\n this.setState({\r\n selectedPlace: props,\r\n activeMarker: marker,\r\n showingInfoWindow: true,\r\n hotelNombre: marker.hotelNombre,\r\n hotelDireccion: marker.hotelDireccion,\r\n hotelCodigo: marker.hotelCodigo,\r\n });\r\n }\r\n onMapClick = (props) => {\r\n if (this.state.showingInfoWindow) {\r\n this.setState({\r\n showingInfoWindow: false,\r\n activeMarker: null,\r\n hotelCodigo: '',\r\n hotelDireccion: '',\r\n hotelNombre: '', \r\n });\r\n }\r\n }\r\n render() {\r\n\r\n const style = {\r\n /* width: '50vw',\r\n height: '75vh', */\r\n width: '960px',\r\n height: '700x'\r\n }\r\n\r\n const containerStyle = {\r\n width: '100%',\r\n height: '620px'\r\n }\r\n\r\n const styleDiv = {\r\n /* width: '50vw',\r\n height: '75vh', */\r\n width: '960px',\r\n height: '700px',\r\n overflow: 'hidden'\r\n }\r\n/* const styleDivBar = {\r\n width: '960px',\r\n height: '64px',\r\n overflow: 'hidden'\r\n } */\r\n\r\n const appBar = {\r\n position: 'relative',\r\n backgroundColor: '#FE5215'\r\n }\r\n\r\n const TituloHotel = {\r\n color: 'white'\r\n }\r\n\r\n const hotelMarker = {\r\n color: '#016AA2',\r\n fontWeight: 'bolder'\r\n }\r\n\r\n/* const Address = {\r\n fontStyle: 'oblique'\r\n } */\r\n\r\n \r\n return (\r\n
\r\n \r\n \r\n \r\n Hoteles disponibles en {this.props.zoneName}\r\n \r\n \r\n \r\n s.Latitud !== '' || s.Longitud !== '')[0].Latitud,\r\n lng: this.props.dataHotelsDetails.filter(s => s.Latitud !== '' || s.Longitud !== '')[0].Longitud\r\n }}\r\n >\r\n {this.props.dataHotelsDetails.map((hotel, i) =>\r\n (hotel.Latitud !== '' || hotel.Longitud !== '') ?\r\n \r\n : ''\r\n )}\r\n {\r\n this.onInfoWindowOpen(this.props, e);\r\n }}\r\n >\r\n \r\n \r\n \r\n
\r\n {/* {this.state.hotelNombre} */}\r\n \r\n \r\n \r\n
\r\n {this.capitalizarPalabras(this.state.hotelDireccion)} \r\n \r\n {/* {this.state.hotelCodigo} */}\r\n \r\n \r\n {/* */}\r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\n/* export default GoogleApiWrapper({\r\n api: (GOOGLE_MAPS_JS_API_KEY)\r\n})(GoogleMapsContainer) */\r\n\r\nexport default GoogleApiWrapper(props => ({\r\n apiKey: GOOGLE_MAPS_JS_API_KEY,\r\n}))(GoogleMapsContainer);","import React, { Fragment, useEffect } from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Card from \"@material-ui/core/Card\";\r\nimport CardContent from \"@material-ui/core/CardContent\";\r\nimport CardActions from \"@material-ui/core/CardActions\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport FormGroup from \"@material-ui/core/FormGroup\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport Fab from \"@material-ui/core/Fab\";\r\nimport SearchIcon from \"@material-ui/icons/Search\";\r\nimport HighlightOffIcon from \"@material-ui/icons/HighlightOff\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport Rating from \"@material-ui/lab/Rating\";\r\nimport StarBorderIcon from \"@material-ui/icons/StarBorder\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport clsx from \"clsx\";\r\nimport Divider from \"@material-ui/core/Divider\";\r\nimport HotelsGoogleMap from \"./Hotels/HotelsGoogleMap\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport Slide from \"@material-ui/core/Slide\";\r\nimport Slider from \"@material-ui/core/Slider\";\r\nimport { ThemeProvider } from \"@material-ui/core\";\r\nimport { createMuiTheme } from \"@material-ui/core/styles\";\r\n// import Switch from \"@material-ui/core/Switch\";\r\nimport Chip from \"@material-ui/core/Chip\";\r\nimport TagFacesIcon from \"@material-ui/icons/TagFaces\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\n\r\nconst muiTheme = createMuiTheme({\r\n overrides: {\r\n MuiSlider: {\r\n thumb: {\r\n color: \"#FE5215\",\r\n },\r\n track: {\r\n color: \"#FE5215\",\r\n },\r\n /* rail: {\r\n color: 'black'\r\n } */\r\n },\r\n },\r\n});\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n maxWidth: 345,\r\n backgroundColor: \"rgb(241 238 238)\",\r\n marginBottom: 6,\r\n borderStyle: \"solid\",\r\n borderColor: \"#949494\",\r\n borderWidth: \"thin\",\r\n },\r\n rootChip: {\r\n display: \"flex\",\r\n justifyContent: \"center\",\r\n flexWrap: \"wrap\",\r\n listStyle: \"none\",\r\n padding: theme.spacing(0.5),\r\n margin: 0,\r\n },\r\n chip: {\r\n margin: theme.spacing(0.5),\r\n },\r\n CardHeader: {\r\n color: \"#016AA2\",\r\n },\r\n separador: {\r\n marginBottom: 15,\r\n marginTop: 20,\r\n },\r\n form: {\r\n paddingTop: \"0%\",\r\n },\r\n TituloFiltroG: {\r\n color: \"#FF5400\",\r\n paddingBottom: 7,\r\n fontFamily: \"MontserratSemiBold\",\r\n },\r\n TituloFiltro: {\r\n color: \"#016AA2\",\r\n paddingBottom: 7,\r\n fontFamily: \"MontserratSemiBold\",\r\n },\r\n\r\n TituloNombre: {\r\n color: \"#016AA2\",\r\n },\r\n media: {\r\n height: 0,\r\n paddingTop: \"56.25%\", // 16:9\r\n },\r\n CardContent: {\r\n paddingLeft: 8,\r\n paddingTop: 8,\r\n paddingBottom: 0,\r\n },\r\n Checkbox: {\r\n paddingTop: 3,\r\n paddingBottom: 3,\r\n },\r\n extendedIcon: {\r\n // marginRight: theme.spacing(1),\r\n },\r\n buttonFilter: {\r\n background: \"#FE5215\",\r\n color: \"white\",\r\n fontFamily: \"MontserratSemiBold\",\r\n textTransform: \"capitalize\",\r\n \"&:hover\": {\r\n background: \"#016AA2\",\r\n color: \"white\",\r\n },\r\n },\r\n icon: {\r\n borderRadius: 3,\r\n width: 16,\r\n height: 16,\r\n boxShadow:\r\n \"inset 0 0 0 1px rgba(16,22,26,.2), inset 0 -1px 0 rgba(16,22,26,.1)\",\r\n backgroundColor: \"#f5f8fa\",\r\n backgroundImage:\r\n \"linear-gradient(180deg,hsla(0,0%,100%,.8),hsla(0,0%,100%,0))\",\r\n \"$root.Mui-focusVisible &\": {\r\n outline: \"2px auto rgba(19,124,189,.6)\",\r\n outlineOffset: 2,\r\n },\r\n \"input:hover ~ &\": {\r\n backgroundColor: \"#ebf1f5\",\r\n },\r\n \"input:disabled ~ &\": {\r\n boxShadow: \"none\",\r\n background: \"rgba(206,217,224,.5)\",\r\n },\r\n },\r\n checkedIcon: {\r\n backgroundColor: \"#137cbd\",\r\n backgroundImage:\r\n \"linear-gradient(180deg,hsla(0,0%,100%,.1),hsla(0,0%,100%,0))\",\r\n \"&:before\": {\r\n display: \"block\",\r\n width: 16,\r\n height: 16,\r\n backgroundImage:\r\n \"url(\\\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath\" +\r\n \" fill-rule='evenodd' clip-rule='evenodd' d='M12 5c-.28 0-.53.11-.71.29L7 9.59l-2.29-2.3a1.003 \" +\r\n \"1.003 0 00-1.42 1.42l3 3c.18.18.43.29.71.29s.53-.11.71-.29l5-5A1.003 1.003 0 0012 5z' fill='%23fff'/%3E%3C/svg%3E\\\")\",\r\n content: '\"\"',\r\n },\r\n \"input:hover ~ &\": {\r\n backgroundColor: \"#106ba3\",\r\n },\r\n },\r\n textField: {\r\n width: \"70px\",\r\n marginRight: \"5px\",\r\n },\r\n InputProps: {\r\n fontSize: \"12px\",\r\n paddingLeft: \"3px\",\r\n paddingRight: \"3px\",\r\n textAlign: \"right\",\r\n },\r\n InputPropsName: {\r\n fontSize: \"12px\",\r\n paddingLeft: \"3px\",\r\n paddingRight: \"3px\",\r\n },\r\n LabelCheck: {\r\n marginRight: \"7px\",\r\n marginBottom: \"3px\",\r\n },\r\n inputLabel: {\r\n /* \"&.focused\": {\r\n color: 'red'\r\n }, */\r\n fontSize: \"12px\",\r\n \"&.shrink\": {\r\n // backgroundColor: \"grey\",\r\n fontSize: \"16px\",\r\n },\r\n },\r\n}));\r\n\r\nconst Transition = React.forwardRef(function Transition(props, ref) {\r\n return ;\r\n});\r\n\r\nexport default function CardFilter(props, token) {\r\n const classes = useStyles();\r\n const [open, setOpen] = React.useState(false);\r\n const [destacadosState, setDestacadosState] = React.useState(false);\r\n const [flagPrice, setFlagPrice] = React.useState(false);\r\n // const [flagReset, setFlagReset] = React.useState(props.flagFilter);\r\n /* const [precioDesde, setPrecioDesde] = React.useState(props.precioDesde)\r\n const [precioHasta, setPrecioHasta] = React.useState(props.precioHasta) */\r\n const [chipData, setChipData] = React.useState([]);\r\n const [filltersCat, setfilltersCat] = React.useState({\r\n cat6: false,\r\n cat5: false,\r\n cat4: false,\r\n cat3: false,\r\n cat2: false,\r\n cat1: false,\r\n });\r\n const [filltersReg, setfilltersReg] = React.useState({\r\n SA: false,\r\n AD: false,\r\n MP: false,\r\n PC: false,\r\n TI: false,\r\n });\r\n const [hotel, setHotel] = React.useState(\"\");\r\n const [valueSlider, setValueSlider] = React.useState([\r\n props.precioDesde,\r\n props.precioHasta,\r\n ]);\r\n\r\n useEffect(() => {\r\n setValueSlider([props.precioDesde, props.precioHasta]);\r\n }, [props.precioDesde]);\r\n\r\n useEffect(() => {\r\n setValueSlider([props.precioDesde, props.precioHasta]);\r\n }, [props.precioHasta]);\r\n\r\n useEffect(() => {\r\n if (props.flagFilter) {\r\n ResetFilter();\r\n }\r\n }, [props.flagFilter]);\r\n\r\n const handleChange = (name) => (event) => {\r\n setfilltersCat({ ...filltersCat, [name]: event.target.checked });\r\n\r\n var filtC = { ...filltersCat, [name]: event.target.checked };\r\n if (\r\n filtC.cat1 === false &&\r\n filtC.cat2 === false &&\r\n filtC.cat3 === false &&\r\n filtC.cat4 === false &&\r\n filtC.cat5 === false &&\r\n filtC.cat6 === false\r\n ) {\r\n DeleteChip({ key: 0, label: \"Clasificación\" });\r\n } else {\r\n addchipData({ key: 0, label: \"Clasificación\" });\r\n }\r\n FilterCat(filtC);\r\n };\r\n\r\n function FilterCat(fCat) {\r\n var ClearFiltro = false;\r\n props.onClick(\r\n fCat,\r\n hotel,\r\n props.token,\r\n \"1\",\r\n [0, 0],\r\n filltersReg,\r\n ClearFiltro,\r\n destacadosState\r\n );\r\n }\r\n\r\n function addchipData(chipToAdd) {\r\n var pp = chipData;\r\n if (chipData.filter((chip) => chip.key === chipToAdd.key).length === 0) {\r\n pp.push(chipToAdd);\r\n }\r\n setChipData(pp);\r\n }\r\n\r\n const handleDelete = (chipToDelete) => () => {\r\n DeleteChip(chipToDelete);\r\n };\r\n\r\n function DeleteChip(chipToDelete) {\r\n switch (chipToDelete.label) {\r\n case \"Clasificación\":\r\n var fCat = {\r\n cat6: false,\r\n cat5: false,\r\n cat4: false,\r\n cat3: false,\r\n cat2: false,\r\n cat1: false,\r\n };\r\n setfilltersCat(fCat);\r\n FilterCat(fCat);\r\n break;\r\n case \"Régimen\":\r\n var fReg = {\r\n SA: false,\r\n AD: false,\r\n MP: false,\r\n PC: false,\r\n TI: false,\r\n };\r\n setfilltersReg(fReg);\r\n FilterReg(fReg);\r\n break;\r\n case \"Precios\":\r\n setFlagPrice(false);\r\n var ClearFiltro = false;\r\n props.onClick(\r\n filltersCat,\r\n hotel,\r\n props.token,\r\n \"1\",\r\n [0, 0],\r\n filltersReg,\r\n ClearFiltro,\r\n destacadosState\r\n );\r\n break;\r\n case \"Nombre\":\r\n setHotel(\"\");\r\n\r\n props.onClick(\r\n filltersCat,\r\n \"\",\r\n props.token,\r\n \"1\",\r\n [0, 0],\r\n filltersReg,\r\n false,\r\n destacadosState\r\n );\r\n break;\r\n case \"Destacados\":\r\n setDestacadosState(false);\r\n filterDest(false);\r\n break;\r\n default:\r\n }\r\n setChipData((chips) =>\r\n chips.filter((chip) => chip.key !== chipToDelete.key)\r\n );\r\n }\r\n\r\n const handleChangeReg = (name) => (event) => {\r\n setfilltersReg({ ...filltersReg, [name]: event.target.checked });\r\n\r\n var filtR = { ...filltersReg, [name]: event.target.checked };\r\n if (\r\n filtR.SA === false &&\r\n filtR.AD === false &&\r\n filtR.MP === false &&\r\n filtR.PC === false &&\r\n filtR.TI === false\r\n ) {\r\n DeleteChip({ key: 1, label: \"Régimen\" });\r\n } else {\r\n addchipData({ key: 1, label: \"Régimen\" });\r\n }\r\n FilterReg(filtR);\r\n };\r\n\r\n function FilterReg(filtR) {\r\n var ClearFiltro = false;\r\n props.onClick(\r\n filltersCat,\r\n hotel,\r\n props.token,\r\n \"1\",\r\n [0, 0],\r\n filtR,\r\n ClearFiltro,\r\n destacadosState\r\n );\r\n }\r\n\r\n const handleChangeSlider = (event, newValue) => {\r\n if (newValue[0] != props.precioDesde || newValue[1] != props.precioHasta) {\r\n setFlagPrice(true);\r\n }\r\n setValueSlider(newValue);\r\n /* setPrecioDesde(newValue[0])\r\n setPrecioHasta(newValue[1]) */\r\n };\r\n\r\n function valuetextSlider(valueSlider) {\r\n return `°C${valueSlider}`;\r\n }\r\n\r\n const handleHotel = (event) => {\r\n const value = event.target.value;\r\n setHotel(value);\r\n };\r\n\r\n const FilterGoogleMap = (hotelName) => {\r\n ClearFilter();\r\n var precios = [0, 0];\r\n var fCat = {\r\n cat6: false,\r\n cat5: false,\r\n cat4: false,\r\n cat3: false,\r\n cat2: false,\r\n cat1: false,\r\n };\r\n setfilltersCat(fCat);\r\n var fReg = {\r\n SA: false,\r\n AD: false,\r\n MP: false,\r\n PC: false,\r\n TI: false,\r\n };\r\n setfilltersReg(fReg);\r\n setFlagPrice(false);\r\n setDestacadosState(false);\r\n handleCloseDialog();\r\n setHotel(hotelName);\r\n var ClearFiltro = false;\r\n props.onClick(\r\n fCat,\r\n hotelName,\r\n props.token,\r\n \"1\",\r\n precios,\r\n fReg,\r\n ClearFiltro,\r\n false\r\n );\r\n };\r\n\r\n const AplyFilter = (e) => {\r\n var precios = [];\r\n if (!flagPrice) {\r\n precios = [0, 0];\r\n } else {\r\n precios = valueSlider;\r\n addchipData({ key: 3, label: \"Precios\" });\r\n }\r\n if (hotel !== \"\") {\r\n addchipData({ key: 4, label: \"Nombre\" });\r\n }\r\n if (ValidateHadFilter()) {\r\n var ClearFiltro = false;\r\n props.onClick(\r\n filltersCat,\r\n hotel,\r\n props.token,\r\n \"1\",\r\n precios,\r\n filltersReg,\r\n ClearFiltro,\r\n destacadosState\r\n );\r\n } else {\r\n ClearFilter();\r\n }\r\n };\r\n\r\n const ValidateHadFilter = (e) => {\r\n if (\r\n !filltersCat.cat1 &&\r\n !filltersCat.cat2 &&\r\n !filltersCat.cat3 &&\r\n !filltersCat.cat4 &&\r\n !filltersCat.cat5 &&\r\n !filltersCat.cat6 &&\r\n !filltersReg.SA &&\r\n !filltersReg.AD &&\r\n !filltersReg.MP &&\r\n !filltersReg.PC &&\r\n !filltersReg.TI &&\r\n hotel == \"\" &&\r\n !flagPrice &&\r\n !destacadosState\r\n ) {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n };\r\n\r\n const ClearFilter = (e) => {\r\n setChipData([]);\r\n var fCat = {\r\n cat6: false,\r\n cat5: false,\r\n cat4: false,\r\n cat3: false,\r\n cat2: false,\r\n cat1: false,\r\n };\r\n setfilltersCat(fCat);\r\n var fReg = {\r\n SA: false,\r\n AD: false,\r\n MP: false,\r\n PC: false,\r\n TI: false,\r\n };\r\n setfilltersReg(fReg);\r\n setHotel(\"\");\r\n setFlagPrice(false);\r\n setDestacadosState(false);\r\n var ClearFiltro = true;\r\n var hot = \"\";\r\n props.onClick(fCat, hot, props.token, \"1\", [0, 0], fReg, ClearFiltro, 0);\r\n };\r\n\r\n const ResetFilter = (e) => {\r\n setfilltersCat({\r\n cat5: false,\r\n cat4: false,\r\n cat3: false,\r\n cat2: false,\r\n cat1: false,\r\n });\r\n setfilltersReg({\r\n SA: false,\r\n AD: false,\r\n MP: false,\r\n PC: false,\r\n TI: false,\r\n });\r\n setHotel(\"\");\r\n setFlagPrice(false);\r\n setDestacadosState(false);\r\n setChipData([]);\r\n setValueSlider([0, 0]);\r\n };\r\n\r\n const handleClickOpenDialog = () => {\r\n /* setPrecioDesde(props.precioDesde)\r\n setPrecioHasta(props.precioHasta) */\r\n setOpen(true);\r\n };\r\n\r\n const handleCloseDialog = () => {\r\n setOpen(false);\r\n };\r\n\r\n const handleChangeDestacados = (event) => {\r\n setDestacadosState(event.target.checked);\r\n\r\n var dest = event.target.checked;\r\n if (dest === false) {\r\n DeleteChip({ key: 2, label: \"Destacados\" });\r\n } else {\r\n addchipData({ key: 2, label: \"Destacados\" });\r\n }\r\n filterDest(dest);\r\n };\r\n\r\n function filterDest(dest) {\r\n var precios = [];\r\n if (!flagPrice) {\r\n precios = [0, 0];\r\n } else {\r\n precios = valueSlider;\r\n }\r\n // VALIDA LOS FILTROS PARA MOSTRAR O NO LA SECCION DE LOS HOTELES DESTACADOS\r\n /* var fC = {\r\n cat5: false,\r\n cat4: false,\r\n cat3: false,\r\n cat2: false,\r\n cat1: false,\r\n };\r\n var fR = {\r\n SA: false,\r\n AD: false,\r\n MP: false,\r\n PC: false,\r\n TI: false,\r\n };\r\n\r\n if (\r\n !flagPrice &&\r\n hotel == \"\" &&\r\n !dest &&\r\n filltersCat.cat1 == fC.cat1 &&\r\n filltersCat.cat2 == fC.cat2 &&\r\n filltersCat.cat3 == fC.cat3 &&\r\n filltersCat.cat4 == fC.cat4 &&\r\n filltersCat.cat5 == fC.cat5 &&\r\n filltersReg.cat1 == fR.cat1 &&\r\n filltersReg.cat2 == fR.cat2 &&\r\n filltersReg.cat3 == fR.cat3 &&\r\n filltersReg.cat4 == fR.cat4 &&\r\n filltersReg.cat5 == fR.cat5\r\n ) {\r\n ClearFilter();\r\n } else { */\r\n var clearF = false;\r\n props.onClick(\r\n filltersCat,\r\n hotel,\r\n props.token,\r\n \"1\",\r\n precios,\r\n filltersReg,\r\n clearF,\r\n dest\r\n );\r\n /* }*/\r\n }\r\n\r\n const keyPressNombre = (e) => {\r\n if (e.key == \"Enter\") {\r\n e.preventDefault();\r\n }\r\n };\r\n\r\n const keyUpNombre = (e) => {\r\n /* console.log(e.target.value);\r\n console.log(e.target.keyCode);\r\n console.log(e.target.charCode); */\r\n if (e.keyCode == 13) {\r\n e.preventDefault();\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n Criterio de Búsqueda\r\n \r\n\r\n {props.zoneName.includes(\"Orlando\") ? (\r\n \r\n \r\n\r\n \r\n Clasificación de atracciones\r\n \r\n \r\n \r\n }\r\n control={\r\n \r\n }\r\n icon={}\r\n />\r\n }\r\n label={Disney}\r\n />\r\n \r\n }\r\n icon={}\r\n />\r\n }\r\n label={Universal}\r\n />\r\n \r\n }\r\n icon={}\r\n />\r\n }\r\n label={SeaWorld: Incluye Busch Gardens y Aquatica *}\r\n />\r\n{/* \r\n }\r\n icon={}\r\n />\r\n }\r\n label={\r\n Busch Gardens\r\n }\r\n />\r\n \r\n }\r\n icon={}\r\n />\r\n }\r\n label={Aquatica}\r\n /> */}\r\n \r\n }\r\n icon={}\r\n />\r\n }\r\n label={Otros}\r\n />\r\n \r\n \r\n \r\n ) : (\r\n \r\n )}\r\n\r\n \r\n\r\n \r\n Rango de precio\r\n \r\n
\r\n \r\n \r\n {\r\n setPrecioDesde(event.target.value);\r\n setValueSlider([event.target.value, precioHasta]);\r\n }} */\r\n className={classes.textField}\r\n variant=\"outlined\"\r\n size=\"small\"\r\n />\r\n \r\n \r\n {\r\n setPrecioHasta(event.target.value);\r\n setValueSlider([precioDesde, event.target.value]);\r\n }} */\r\n variant=\"outlined\"\r\n size=\"small\"\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n {flagPrice ? (\r\n
\r\n \r\n \r\n \r\n Filtrar\r\n precio\r\n \r\n \r\n \r\n
\r\n ) : (\r\n
\r\n )}\r\n
\r\n\r\n \r\n \r\n Nombre de servicio\r\n \r\n
\r\n \r\n \r\n {hotel ? (\r\n
\r\n \r\n \r\n \r\n Filtrar\r\n nombre\r\n \r\n \r\n \r\n
\r\n ) : (\r\n
\r\n )}\r\n
\r\n \r\n
\r\n \r\n {chipData.length > 0 ? (\r\n \r\n {chipData.map((data) => {\r\n let icon;\r\n\r\n if (data.label === \"React\") {\r\n icon = ;\r\n }\r\n\r\n return (\r\n
  • \r\n \r\n
  • \r\n );\r\n })}\r\n
    \r\n ) : (\r\n
    \r\n )}\r\n \r\n {/* \r\n \r\n Aplicar filtros\r\n \r\n */}\r\n \r\n \r\n Borrar\r\n filtros\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n
    \r\n );\r\n}\r\n","/* eslint-disable no-use-before-define */\r\nimport React, { useEffect, useState } from \"react\";\r\nimport Autocomplete from \"@material-ui/lab/Autocomplete\";\r\nimport citiesData from \"../data/CitiesAtom.json\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport Card from \"@material-ui/core/Card\";\r\nimport CardContent from \"@material-ui/core/CardContent\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport DateFnsUtils from \"@date-io/date-fns\";\r\nimport { MuiPickersUtilsProvider } from \"@material-ui/pickers\";\r\nimport { DatePicker } from \"@material-ui/pickers\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\n// import Divider from \"@material-ui/core/Divider\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\n// import Popover from \"@material-ui/core/Popover\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport Fab from \"@material-ui/core/Fab\";\r\nimport SearchIcon from \"@material-ui/icons/Search\";\r\n// import Button from \"@material-ui/core/Button\";\r\nimport deLocale from \"date-fns/locale/es\";\r\nimport { addDays } from \"date-fns\";\r\nimport { addMonths } from \"date-fns/esm\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport Alert from \"@material-ui/lab/Alert\";\r\n// import { subDays } from 'date-fns'\r\n\r\n//import 'https://atom.travel/css/thumbnail-gallery.css';\r\n\r\nexport default function SearchHotels(props) {\r\n const [noches, setNoches] = useState(1);\r\n const [cities, setCities] = useState(\r\n citiesData.filter(({ name }) => name.indexOf(\"Miami\") > -1)\r\n );\r\n const [search, setSearch] = useState(\"\");\r\n const [citySelected, setCitySelected] = React.useState(\"\");\r\n const [dateFrom, setDateFrom] = React.useState(\r\n addMonths(new Date(Date.now()), 1)\r\n );\r\n const [dateTo, setDateTo] = React.useState(addDays(dateFrom, noches));\r\n\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n const [searchA, setsearchA] = useState({});\r\n const [firstSearchA, setfirstSearchA] = useState(false);\r\n const [cantHab, setCantHab] = useState(1);\r\n const [h1Adultos, setH1Adultos] = useState(2);\r\n const [h2Adultos, setH2Adultos] = useState(0);\r\n const [h3Adultos, setH3Adultos] = useState(0);\r\n const [h1Ninos, setH1Ninos] = useState(0);\r\n const [h2Ninos, setH2Ninos] = useState(0);\r\n const [h3Ninos, setH3Ninos] = useState(0);\r\n const [h1E1, setH1E1] = useState(5);\r\n const [h1E2, setH1E2] = useState(5);\r\n const [h1E3, setH1E3] = useState(5);\r\n const [h2E1, setH2E1] = useState(5);\r\n const [h2E2, setH2E2] = useState(5);\r\n const [h2E3, setH2E3] = useState(5);\r\n const [h3E1, setH3E1] = useState(5);\r\n const [h3E2, setH3E2] = useState(5);\r\n const [h3E3, setH3E3] = useState(5);\r\n const [flagCriterio, setFlagCriterio] = useState(false);\r\n const [criterioMensaje, setCriterioMensaje] = useState(\"\");\r\n\r\n const handleChangeCantHab = (event) => {\r\n setCantHab(event.target.value);\r\n };\r\n\r\n //HABITACION 1\r\n const HandleChangeH1Adultos = (event) => {\r\n setH1Adultos(event.target.value);\r\n };\r\n const HandleChangeH1Ninos = (event) => {\r\n setH1Ninos(event.target.value);\r\n };\r\n const handleChangeH1E1 = (event) => {\r\n setH1E1(event.target.value);\r\n };\r\n const handleChangeH1E2 = (event) => {\r\n setH1E2(event.target.value);\r\n };\r\n const handleChangeH1E3 = (event) => {\r\n setH1E3(event.target.value);\r\n };\r\n\r\n //HABITACION 2\r\n const HandleChangeH2Adultos = (event) => {\r\n setH2Adultos(event.target.value);\r\n };\r\n const HandleChangeH2Ninos = (event) => {\r\n setH2Ninos(event.target.value);\r\n };\r\n const handleChangeH2E1 = (event) => {\r\n setH2E1(event.target.value);\r\n };\r\n const handleChangeH2E2 = (event) => {\r\n setH2E2(event.target.value);\r\n };\r\n const handleChangeH2E3 = (event) => {\r\n setH2E3(event.target.value);\r\n };\r\n\r\n //HABITACION 3\r\n const HandleChangeH3Adultos = (event) => {\r\n setH3Adultos(event.target.value);\r\n };\r\n const HandleChangeH3Ninos = (event) => {\r\n setH3Ninos(event.target.value);\r\n };\r\n const handleChangeH3E1 = (event) => {\r\n setH3E1(event.target.value);\r\n };\r\n const handleChangeH3E2 = (event) => {\r\n setH3E2(event.target.value);\r\n };\r\n const handleChangeH3E3 = (event) => {\r\n setH3E3(event.target.value);\r\n };\r\n\r\n const handleClick = (event) => {\r\n setAnchorEl(event.currentTarget);\r\n };\r\n\r\n const handleClose = () => {\r\n setAnchorEl(null);\r\n };\r\n\r\n const open = Boolean(anchorEl);\r\n const id = open ? \"simple-popover\" : undefined;\r\n\r\n /* const handleDateChange = (date) => {\r\n setSelectedDate(date);\r\n }; */\r\n\r\n useEffect(() => {\r\n var pepe = [];\r\n if (search !== \"\" && search.length >= 3) {\r\n pepe = citiesData.filter(\r\n ({ synonymous }) =>\r\n synonymous.toLowerCase().indexOf(search.toLowerCase()) > -1\r\n );\r\n }\r\n setCities(pepe);\r\n setFlagCriterio(false);\r\n }, [search]);\r\n\r\n useEffect(() => {\r\n /* if (dateTo <= dateFrom) {\r\n setDateTo(addDays(dateFrom, 10));\r\n } */\r\n setFlagCriterio(false);\r\n }, [dateFrom, dateTo]);\r\n\r\n useEffect(() => {\r\n if (firstSearchA) {\r\n props.onClick(searchA);\r\n }\r\n }, [searchA]);\r\n\r\n const onChangeHandler = (event) => {\r\n setSearch(event.target.value);\r\n };\r\n\r\n const onChangeHandlerSelect = (event) => {\r\n console.log(\"pepe\");\r\n console.log(event.target.value);\r\n var pepe = [];\r\n \r\n pepe = citiesData.find((pp) => pp.code === event.target.value);\r\n\r\n // setSearch(event.target.value);\r\n setCitySelected(pepe);\r\n console.log(pepe);\r\n };\r\n\r\n const onChangeNoches = (event) => {\r\n setNoches(event.target.value);\r\n setDateTo(addDays(dateFrom, event.target.value));\r\n };\r\n\r\n const onChangeDateFrom = (event) => {\r\n setDateFrom(event);\r\n setDateTo(addDays(event, noches));\r\n };\r\n\r\n const onChangeDateTo = (event) => {\r\n if (event <= dateFrom) {\r\n alert(\"La fecha fin no puede ser anterior a la fecha de inicio.\");\r\n } else {\r\n setDateTo(event);\r\n var timeDiff = Math.abs(event.getTime() - dateFrom.getTime());\r\n var numberOfNights = Math.ceil(timeDiff / (1000 * 3600 * 24));\r\n setNoches(numberOfNights);\r\n }\r\n };\r\n\r\n const useStyles = makeStyles({\r\n option: {\r\n fontSize: 15,\r\n \"& > span\": {\r\n marginRight: 10,\r\n fontSize: 18,\r\n },\r\n backgroundColor: \"#eceff1\",\r\n },\r\n card: {\r\n width: \"100%\",\r\n maxWidth: \"1165px\",\r\n backgroundColor: \"#016AA2\",\r\n },\r\n cardRooms: {\r\n width: \"100%\",\r\n maxWidth: \"1165px\",\r\n backgroundColor: \"white\",\r\n },\r\n buttonFilter: {\r\n background: \"#FE5215\",\r\n color: \"white\",\r\n fontFamily: \"MontserratSemiBold\",\r\n textTransform: \"capitalize\",\r\n \"&:hover\": {\r\n background: \"#016AA2\",\r\n color: \"white\",\r\n },\r\n },\r\n TituloBuscador: {\r\n color: \"white\",\r\n },\r\n });\r\n\r\n const defaultProps = {\r\n bgcolor: \"background.paper\",\r\n borderColor: \"#016AA2\",\r\n m: 1,\r\n border: 1,\r\n };\r\n\r\n var rand = function () {\r\n return Math.random().toString(36).substr(2); // remove `0.`\r\n };\r\n\r\n function toTimestamp(strDate) {\r\n var datum = Date.parse(strDate);\r\n return datum / 1000;\r\n }\r\n\r\n const handleDateChangeRaw = (e) => {\r\n e.preventDefault();\r\n };\r\n\r\n const SearchHotels = (e) => {\r\n \r\n var citySelectedAux = \"\";\r\n if (citySelected === \"\"){\r\n var pepe = [];\r\n citySelectedAux = citiesData.find((pp) => pp.code === \"ORL\");\r\n setCitySelected(pepe); \r\n } else {\r\n citySelectedAux = citySelected;\r\n }\r\n\r\n console.log(citySelectedAux);\r\n const from = new Date(dateFrom);\r\n const to = new Date(dateTo);\r\n var i;\r\n var habdistri = \"\";\r\n for (i = 0; i < 3; i++) {\r\n switch (i) {\r\n case 0:\r\n habdistri = \"hab1=\" + h1Adultos + \",\" + h1Ninos;\r\n var j;\r\n for (j = 0; j < h1Ninos; j++) {\r\n switch (j) {\r\n case 0:\r\n habdistri = habdistri + \",\" + h1E1;\r\n break;\r\n case 1:\r\n habdistri = habdistri + \",\" + h1E2;\r\n break;\r\n case 2:\r\n habdistri = habdistri + \",\" + h1E3;\r\n break;\r\n default:\r\n }\r\n }\r\n break;\r\n // case 1:\r\n // if (h2Adultos !== 0) {\r\n // habdistri = habdistri + \"&hab2=\" + h2Adultos + \",\" + h2Ninos;\r\n // var j1;\r\n // for (j1 = 0; j1 < h2Ninos; j1++) {\r\n // switch (j1) {\r\n // case 0:\r\n // habdistri = habdistri + \",\" + h2E1;\r\n // break;\r\n // case 1:\r\n // habdistri = habdistri + \",\" + h2E2;\r\n // break;\r\n // case 2:\r\n // habdistri = habdistri + \",\" + h2E3;\r\n // break;\r\n // default:\r\n // }\r\n // }\r\n // } else {\r\n // habdistri = habdistri + \"&hab2=0\";\r\n // }\r\n\r\n // break;\r\n // case 2:\r\n // if (h3Adultos !== 0) {\r\n // habdistri = habdistri + \"&hab3=\" + h3Adultos + \",\" + h3Ninos;\r\n // var j2;\r\n // for (j2 = 0; j2 < h3Ninos; j2++) {\r\n // switch (j2) {\r\n // case 0:\r\n // habdistri = habdistri + \",\" + h3E1;\r\n // break;\r\n // case 1:\r\n // habdistri = habdistri + \",\" + h3E2;\r\n // break;\r\n // case 2:\r\n // habdistri = habdistri + \",\" + h3E3;\r\n // break;\r\n // default:\r\n // }\r\n // }\r\n // } else {\r\n // habdistri = habdistri + \"&hab3=0\";\r\n // }\r\n // break;\r\n default:\r\n }\r\n }\r\n /* console.log(habdistri);\r\n console.log(\"citySelected.code\");\r\n console.log(citySelected.code);\r\n console.log(from)\r\n console.log(to)\r\n console.log(from >= to) */\r\n if (typeof citySelectedAux.code !== \"undefined\") {\r\n if (from <= to) {\r\n setFlagCriterio(false);\r\n const searchObject = {\r\n SearchToken: rand() + rand() + toTimestamp(Date()),\r\n city: citySelectedAux.code,\r\n zoneName: citySelectedAux.name + \", \" + citySelectedAux.country_name,\r\n countryFlag: \"/Images/Flags/\" + citySelectedAux.country_code + \".png\",\r\n from:\r\n from.getFullYear() +\r\n \"\" +\r\n (\"0\" + (from.getMonth() + 1)).slice(-2) +\r\n \"\" +\r\n (\"0\" + from.getDate()).slice(-2),\r\n to:\r\n to.getFullYear() +\r\n \"\" +\r\n (\"0\" + (to.getMonth() + 1)).slice(-2) +\r\n \"\" +\r\n (\"0\" + to.getDate()).slice(-2),\r\n distribution: habdistri,\r\n };\r\n setfirstSearchA(true);\r\n setsearchA(searchObject);\r\n } else {\r\n setCriterioMensaje(\r\n \"La fecha fin debe ser superior a la fecha de inicio.\"\r\n );\r\n setFlagCriterio(true);\r\n }\r\n } else {\r\n setCriterioMensaje(\"Favor indica la zona de busqueda.\");\r\n setFlagCriterio(true);\r\n }\r\n };\r\n\r\n const classes = useStyles();\r\n return (\r\n \r\n {/*
    */}\r\n \r\n \r\n \r\n Busca los mejores precios en servicios\r\n \r\n \r\n \r\n \r\n \r\n \r\n Favor indique el destino deseado\r\n \r\n \r\n Miami\r\n Orlando\r\n \r\n \r\n {/* {\r\n // console.log('evento ' + event.target.value);\r\n // }}\r\n value={citySelected}\r\n defaultValue={citySelected.name}\r\n onChange={(event, newValue) => {\r\n setCitySelected(newValue);\r\n }}\r\n classes={{\r\n option: classes.option,\r\n }}\r\n getOptionLabel={(option) => option.name}\r\n renderOption={(option) => (\r\n \r\n \r\n \r\n \r\n {option.name}, {option.country_name}\r\n \r\n )}\r\n renderInput={(params) => (\r\n \r\n )}\r\n /> */}\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {/* \r\n \r\n */}\r\n \r\n \r\n \r\n \r\n \r\n\r\n {/* COLOCADO PARA SOLO TRABAJAR CON UNA SOLA HABITACION */}\r\n \r\n \r\n \r\n \r\n \r\n Adultos\r\n \r\n \r\n 1\r\n 2\r\n 3\r\n 4\r\n 5\r\n \r\n \r\n \r\n \r\n \r\n \r\n Niños\r\n \r\n \r\n 0\r\n 1\r\n 2\r\n 3\r\n \r\n \r\n \r\n \r\n {h1Ninos >= 1 ? (\r\n \r\n \r\n Edad\r\n \r\n \r\n 0\r\n 1\r\n 2\r\n 3\r\n 4\r\n 5\r\n 6\r\n 7\r\n 8\r\n 9\r\n 10\r\n 11\r\n 12\r\n 13\r\n 14\r\n 15\r\n 16\r\n 17\r\n 18\r\n \r\n \r\n ) : (\r\n
    \r\n )}\r\n {h1Ninos >= 2 ? (\r\n \r\n \r\n Edad\r\n \r\n \r\n 0\r\n 1\r\n 2\r\n 3\r\n 4\r\n 5\r\n 6\r\n 7\r\n 8\r\n 9\r\n 10\r\n 11\r\n 12\r\n 13\r\n 14\r\n 15\r\n 16\r\n 17\r\n 18\r\n \r\n \r\n ) : (\r\n
    \r\n )}\r\n {h1Ninos >= 3 ? (\r\n \r\n \r\n Edad\r\n \r\n \r\n 0\r\n 1\r\n 2\r\n 3\r\n 4\r\n 5\r\n 6\r\n 7\r\n 8\r\n 9\r\n 10\r\n 11\r\n 12\r\n 13\r\n 14\r\n 15\r\n 16\r\n 17\r\n 18\r\n \r\n \r\n ) : (\r\n
    \r\n )}\r\n
    \r\n
    \r\n \r\n\r\n {/* EN COMENTARIO PARA PODER MANEJAR SOLO UNA HABITACIÓN */}\r\n {/* \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Cantidad habitaciones\r\n \r\n \r\n \r\n \r\n \r\n 1\r\n 2\r\n 3\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Habitación 1\r\n \r\n \r\n \r\n \r\n \r\n \r\n Adultos\r\n \r\n \r\n 1\r\n 2\r\n 3\r\n 4\r\n 5\r\n \r\n \r\n \r\n \r\n \r\n \r\n Niños\r\n \r\n \r\n 0\r\n 1\r\n 2\r\n 3\r\n \r\n \r\n \r\n \r\n {h1Ninos >= 1 ? (\r\n \r\n \r\n Edad\r\n \r\n \r\n 0\r\n 1\r\n 2\r\n 3\r\n 4\r\n 5\r\n 6\r\n 7\r\n 8\r\n 9\r\n 10\r\n 11\r\n 12\r\n 13\r\n 14\r\n 15\r\n 16\r\n 17\r\n 18\r\n \r\n \r\n ) : (\r\n
    \r\n )}\r\n {h1Ninos >= 2 ? (\r\n \r\n \r\n Edad\r\n \r\n \r\n 0\r\n 1\r\n 2\r\n 3\r\n 4\r\n 5\r\n 6\r\n 7\r\n 8\r\n 9\r\n 10\r\n 11\r\n 12\r\n 13\r\n 14\r\n 15\r\n 16\r\n 17\r\n 18\r\n \r\n \r\n ) : (\r\n
    \r\n )}\r\n {h1Ninos >= 3 ? (\r\n \r\n \r\n Edad\r\n \r\n \r\n 0\r\n 1\r\n 2\r\n 3\r\n 4\r\n 5\r\n 6\r\n 7\r\n 8\r\n 9\r\n 10\r\n 11\r\n 12\r\n 13\r\n 14\r\n 15\r\n 16\r\n 17\r\n 18\r\n \r\n \r\n ) : (\r\n
    \r\n )}\r\n
    \r\n \r\n \r\n
    \r\n {cantHab >= 2 ? (\r\n \r\n \r\n \r\n \r\n \r\n Habitación 2\r\n \r\n \r\n \r\n \r\n \r\n \r\n Adultos\r\n \r\n \r\n 1\r\n 2\r\n 3\r\n 4\r\n 5\r\n \r\n \r\n \r\n \r\n \r\n \r\n Niños\r\n \r\n \r\n 0\r\n 1\r\n 2\r\n 3\r\n \r\n \r\n \r\n \r\n {h2Ninos >= 1 ? (\r\n \r\n \r\n Edad\r\n \r\n \r\n 0\r\n 1\r\n 2\r\n 3\r\n 4\r\n 5\r\n 6\r\n 7\r\n 8\r\n 9\r\n 10\r\n 11\r\n 12\r\n 13\r\n 14\r\n 15\r\n 16\r\n 17\r\n 18\r\n \r\n \r\n ) : (\r\n
    \r\n )}\r\n {h2Ninos >= 2 ? (\r\n \r\n \r\n Edad\r\n \r\n \r\n 0\r\n 1\r\n 2\r\n 3\r\n 4\r\n 5\r\n 6\r\n 7\r\n 8\r\n 9\r\n 10\r\n 11\r\n 12\r\n 13\r\n 14\r\n 15\r\n 16\r\n 17\r\n 18\r\n \r\n \r\n ) : (\r\n
    \r\n )}\r\n {h2Ninos >= 3 ? (\r\n \r\n \r\n Edad\r\n \r\n \r\n 0\r\n 1\r\n 2\r\n 3\r\n 4\r\n 5\r\n 6\r\n 7\r\n 8\r\n 9\r\n 10\r\n 11\r\n 12\r\n 13\r\n 14\r\n 15\r\n 16\r\n 17\r\n 18\r\n \r\n \r\n ) : (\r\n
    \r\n )}\r\n
    \r\n
    \r\n \r\n
    \r\n ) : (\r\n
    \r\n )}\r\n {cantHab >= 3 ? (\r\n \r\n \r\n \r\n \r\n \r\n Habitación 3\r\n \r\n \r\n \r\n \r\n \r\n \r\n Adultos\r\n \r\n \r\n 1\r\n 2\r\n 3\r\n 4\r\n 5\r\n \r\n \r\n \r\n \r\n \r\n \r\n Niños\r\n \r\n \r\n 0\r\n 1\r\n 2\r\n 3\r\n \r\n \r\n \r\n \r\n {h3Ninos >= 1 ? (\r\n \r\n \r\n Edad\r\n \r\n \r\n 0\r\n 1\r\n 2\r\n 3\r\n 4\r\n 5\r\n 6\r\n 7\r\n 8\r\n 9\r\n 10\r\n 11\r\n 12\r\n 13\r\n 14\r\n 15\r\n 16\r\n 17\r\n 18\r\n \r\n \r\n ) : (\r\n
    \r\n )}\r\n {h3Ninos >= 2 ? (\r\n \r\n \r\n Edad\r\n \r\n \r\n 0\r\n 1\r\n 2\r\n 3\r\n 4\r\n 5\r\n 6\r\n 7\r\n 8\r\n 9\r\n 10\r\n 11\r\n 12\r\n 13\r\n 14\r\n 15\r\n 16\r\n 17\r\n 18\r\n \r\n \r\n ) : (\r\n
    \r\n )}\r\n {h3Ninos >= 3 ? (\r\n \r\n \r\n Edad\r\n \r\n \r\n 0\r\n 1\r\n 2\r\n 3\r\n 4\r\n 5\r\n 6\r\n 7\r\n 8\r\n 9\r\n 10\r\n 11\r\n 12\r\n 13\r\n 14\r\n 15\r\n 16\r\n 17\r\n 18\r\n \r\n \r\n ) : (\r\n
    \r\n )}\r\n
    \r\n
    \r\n \r\n
    \r\n ) : (\r\n
    \r\n )}\r\n
    \r\n \r\n \r\n \r\n */}\r\n \r\n \r\n \r\n Buscar\r\n \r\n \r\n \r\n {flagCriterio && (\r\n \r\n \r\n {criterioMensaje}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n\r\n {/*
    */}\r\n
    \r\n );\r\n}\r\n","import React from 'react';\r\n// import Paper from '@material-ui/core/Paper';\r\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport Box from \"@material-ui/core/Box\";\r\n\r\n\r\nexport default function LoadingHotels(props) {\r\nconsole.log(props)\r\n return (\r\n \r\n
    \r\n {/* */}\r\n \r\n {/* \r\n \r\n */}\r\n \r\n \r\n \r\n \r\n {/* {props.AgenciaWeb === \"Ibero\" ? (\r\n \"Logo\"\r\n ) : (\r\n \"Logo\"\r\n )} */}\r\n {props.AgenciaWeb === \"Ibero\" ? (\r\n \"Logo\"\r\n ) : (\r\n \r\n )}\r\n {props.AgenciaWeb === \"MC\" ? (\r\n \"Logo\"\r\n ) : (\r\n \r\n )}\r\n {props.AgenciaWeb === \"undefined\" || props.AgenciaWeb === \"Atom\" || props.AgenciaWeb === null ? (\r\n \"Logo\"\r\n ) : (\r\n \r\n )}\r\n \r\n {/* */}\r\n \r\n Buscando servicios en\r\n \r\n \r\n \"País\" {props.zoneName}\r\n \r\n \r\n Estamos buscando el mejor precio disponible.\r\n \r\n \r\n El proceso puede durar unos segundos.\r\n \r\n {/* */}\r\n\r\n \r\n {/* */}\r\n
    \r\n
    \r\n );\r\n}\r\n","import React from 'react';\r\n// import CircularProgress from \"@material-ui/core/CircularProgress\";\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Grid from '@material-ui/core/Grid';\r\n// import Box from \"@material-ui/core/Box\";\r\n\r\n\r\nexport default function NotAvailability(props) {\r\n\r\n return (\r\n \r\n
    \r\n {/* */}\r\n \r\n \r\n \r\n {props.AgenciaWeb === \"Ibero\" ? (\r\n \"Logo\"\r\n ) : (\r\n \r\n )}\r\n {props.AgenciaWeb === \"MC\" ? (\r\n \"Logo\"\r\n ) : (\r\n \r\n )}\r\n {props.AgenciaWeb === \"undefined\" || props.AgenciaWeb === \"Atom\" || props.AgenciaWeb === null ? (\r\n \"Logo\"\r\n ) : (\r\n \r\n )}\r\n \r\n {/* */}\r\n \r\n No hemos conseguido disponibilidad.\r\n \r\n {/* \r\n \"País\" {props.zoneName}\r\n */}\r\n {/* \r\n No hemos conseguido disponibilidad.\r\n */}\r\n \r\n Favor ajustes los criterios de busqueda.\r\n \r\n {/* */}\r\n\r\n \r\n {/* */}\r\n
    \r\n
    \r\n );\r\n}\r\n","import React, { useState, useEffect, Fragment } from \"react\";\r\nimport HotelCard from \"./Components/ServicioCard\";\r\nimport HotelBooking from \"./Components/Booking/HotelBooking\";\r\nimport CardFilter from \"./Components/CardFilter\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Container from \"@material-ui/core/Container\";\r\nimport axios from \"axios\";\r\nimport GetCriteriaHotels from \"./Components/GetCriteriaHotels\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport Pagination from \"@material-ui/lab/Pagination\";\r\nimport { useTheme } from \"@material-ui/core/styles\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport useMediaQuery from \"@material-ui/core/useMediaQuery\";\r\nimport LoadingHotels from \"./Components/Hotels/LoadingHotels\";\r\nimport Iframe from 'react-iframe'\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\r\nimport Card from \"@material-ui/core/Card\";\r\nimport CardHeader from \"@material-ui/core/CardHeader\";\r\nimport CardContent from \"@material-ui/core/CardContent\";\r\nimport queryString from \"query-string\";\r\nimport {useHistory} from \"react-router-dom\";\r\n// import { BrowserRouter, useHistory } from \"react-router-dom\";\r\nimport NotAvailability from \"./Components/Hotels/NotAvailability\";\r\n// import { CompareSharp } from \"@material-ui/icons\";\r\n\r\n/* function wait(ms) {\r\n var start = new Date().getTime();\r\n var end = start;\r\n while (end < start + ms) {\r\n end = new Date().getTime();\r\n }\r\n} */\r\n\r\nexport default function App() {\r\n const [dataHotels, setdataHotels] = useState([]);\r\n const [dataHotelsDestacados, setdataHotelsDestacados] = useState([]);\r\n const [dataBooking, setdataBooking] = useState([]);\r\n const [dataHotelsDetails, setdataHotelsDetails] = useState([]);\r\n const [searchToken, setsearchToken] = useState(\"\");\r\n const [searchObject, setsearchObject] = useState({});\r\n const [principalSearch, setPrincipalSearch] = useState(true);\r\n const [ShowDestacados, setShowDestacados] = useState(false);\r\n const [ShowDestacadosAux, setShowDestacadosAux] = useState(false);\r\n const [flagNotAvailability, setFlagNotAvailability] = useState(false);\r\n const [firstSearch, setfirstSearch] = useState(false);\r\n const [firstPagination, setFirstPagination] = useState(1);\r\n const [indexPagination, setIndexPagination] = useState(1);\r\n const [precioDesde, setPrecioDesde] = useState(0);\r\n const [precioHasta, setPrecioHasta] = useState(0);\r\n const [indDestacados, setIndDestacados] = useState(false);\r\n const [urlAgencia, seturlAgencia] = useState(\"\");\r\n const [TotalPagination, setTotalPagination] = useState(1);\r\n const [AgenciaWeb, setAgenciaWeb] = useState(\"Atom\");\r\n // const [expanded, setExpanded] = React.useState(\"panel1\");\r\n const [paginationObject, setPaginationObject] = useState({\r\n filltersCat: {},\r\n hotel: \"\",\r\n token: \"\",\r\n indicePaginacion: \"\",\r\n precioRango: [],\r\n filltersReg: {},\r\n });\r\n const [open, setOpen] = React.useState(false);\r\n const [bookingFlag, setbookingFlag] = React.useState(false);\r\n const [epale, SetEpale] = React.useState(\"false\");\r\n const [epaleDestacados, SetEpaleDestacados] = React.useState(\"false\");\r\n const theme = useTheme();\r\n const fullScreen = useMediaQuery(theme.breakpoints.down(\"sm\"));\r\n const [paxes, setPaxes] = React.useState([]);\r\n const [flagMensajeEspera, setFlagMensajeEspera] = React.useState(\"false\");\r\n const [flagFilter, setFlagFilter] = React.useState(false);\r\n\r\n // const tiempoEspera = 3000;\r\n // const history = useHistory();\r\n\r\n // ---------------------- STYLE ---------------------------\r\n const useStyles = makeStyles((theme) => ({\r\n root: {\r\n flexGrow: 1,\r\n },\r\n GridBarra: {\r\n paddingLeft: \"1px\",\r\n },\r\n paper: {\r\n padding: theme.spacing(0),\r\n textAlign: \"center\",\r\n color: theme.palette.text.secondary,\r\n },\r\n pagination: {\r\n color: \"#016AA2\",\r\n \"& .Mui-selected\": {\r\n backgroundColor: \"#016AA2\",\r\n color: \"white\",\r\n },\r\n },\r\n paper2: {\r\n padding: 0,\r\n margin: 0,\r\n color: theme.palette.text.secondary,\r\n backgroundColor: \"#016AA2\",\r\n },\r\n container: {\r\n maxWidth: \"1240px\",\r\n backgroundColor: \"white\",\r\n height: \"100%\",\r\n padding: \"0px\",\r\n boxShadow: \"0 4px 8px 0 rgb(0 0 0 / 20%), 0 6px 20px 0 rgb(0 0 0 / 19%)\" \r\n },\r\n fondoGetCriteria: {\r\n width: \"98%\",\r\n height: \"300px\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n },\r\n fondoGetCriteriaPag: {\r\n width: \"100%\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n paddingTop: \"0.5%\",\r\n },\r\n divFondo: {\r\n backgroundColor: \"white\",\r\n paddingTop: \"0%\",\r\n /* boxShadow: \"1px 0px 7px 0px rgba(0,0,0,0.31)\",\r\n WebkitBoxShadow: \"1px 0px 7px 0px rgba(0,0,0,0.31)\",\r\n MozBoxShadow: \"1px 0px 7px 0px rgba(0,0,0,0.31)\",\r\n borderRadius: \"7px\", */\r\n },\r\n buttonSeguimos: {\r\n color: \"#FE5215\",\r\n borderColor: \"#FE5215\",\r\n paddingTop: \"0px\",\r\n paddingBottom: \"0px\",\r\n },\r\n Pagination: {\r\n \"& > *\": {\r\n marginTop: theme.spacing(2),\r\n width: \"100%\",\r\n height: \"50px\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n backgroundColor: \"#F3F2F1\",\r\n },\r\n criterio: {\r\n marginLeft: \"2%\",\r\n marginRight: \"2%\",\r\n },\r\n },\r\n }));\r\n\r\n const classes = useStyles();\r\n\r\n const sectionStyleFondo = {\r\n backgroundImage: \"url('/Images/fondoweb.jpg') \",\r\npaddingTop: \"10px\",\r\n backgroundRepeat: \"no-repeat\",\r\n backgroundSize: \"cover\",\r\n height: \"auto\",\r\n minHeight: \"1100px\",\r\n };\r\n\r\n const sectionStyle = {\r\n backgroundImage:\r\n \"linear-gradient(rgba(255,255,255,.5), rgba(255,255,255,.5)), url('/Images/lobbyhotel.jpg')\",\r\n // \"url('/Images/lobbyhotel.jpg') \",\r\n\r\n backgroundRepeat: \"no-repeat\",\r\n backgroundSize: \"cover\",\r\n borderRadius: \"7px\",\r\n margin: \"10px\"\r\n };\r\n\r\n /* const sectionStyle2 = {\r\n margingTop: \"0.5%\",\r\n }; */\r\n // ---------------------- STYLE (FIN) ---------------------------\r\n\r\n // ---------------------- USEEFFECT ---------------------------\r\n useEffect(() => {\r\n window.onbeforeunload = function () {\r\n return \"Your work will be lost.\";\r\n };\r\n });\r\n\r\n useEffect(() => {\r\n if (firstSearch) {\r\n // SearchHotelsDestacados();\r\n SearchHotels();\r\n }\r\n }, [searchObject]);\r\n\r\n useEffect(() => {\r\n if (searchToken == \"\") {\r\n } else {\r\n }\r\n }, [epaleDestacados]);\r\n\r\n useEffect(() => {\r\n if (searchToken == \"\") {\r\n } else {\r\n FillHotels();\r\n }\r\n }, [epale]);\r\n\r\n useEffect(() => {\r\n if (searchToken == \"\") {\r\n } else {\r\n setOpen(true);\r\n FillPaginationObject(\r\n paginationObject.filltersCat,\r\n paginationObject.hotel,\r\n paginationObject.token,\r\n indexPagination,\r\n paginationObject.precioRango,\r\n paginationObject.filltersReg,\r\n paginationObject.destacadosFiltro\r\n );\r\n window.location.href = \"#one\";\r\n }\r\n }, [indexPagination]);\r\n\r\n useEffect(() => {\r\n window.scrollTo(0, 0)\r\n \r\n }, []);\r\n\r\n useEffect(() => {\r\n console.log(\"jg\")\r\n console.log(AgenciaWeb)\r\n }, [AgenciaWeb]);\r\n \r\n useEffect(() => {\r\n handleQueryString();\r\n });\r\n\r\n // ---------------------- USEEFFECT (FIN)---------------------------\r\n\r\n // ---------------------- API ---------------------------\r\n const SearchHotelsDestacados = () => {\r\n setOpen(true);\r\n setFirstPagination(1);\r\n setIndexPagination(1);\r\n setFlagMensajeEspera(false);\r\n setFlagFilter(true);\r\n searchObject.city = \"15011\";\r\n const url =\r\n \"https://webtravel2-online.com/APIhoteles/api/BusquedaDestacados?session=\" +\r\n searchObject.SearchToken +\r\n \"D\" +\r\n \"&DestinationCode=\" +\r\n searchObject.city +\r\n \"&datefrom=\" +\r\n searchObject.from +\r\n \"&dateto=\" +\r\n searchObject.to +\r\n \"&\" +\r\n searchObject.distribution +\r\n \"&agencia=atom\";\r\n axios\r\n .get(url, {\r\n headers: {\r\n \"Access-Control-Allow-Origin\": \"*\",\r\n },\r\n })\r\n .then((response) => {\r\n // setsearchToken(searchObject.SearchToken + \"D\");\r\n var pp = new Date();\r\n SetEpaleDestacados(pp);\r\n /* FillPaginationObject({\r\n cat5: false,\r\n cat4: false,\r\n cat3: false,\r\n cat2: false,\r\n cat1: false\r\n }, '', searchObject.SearchToken + 'D', 1, [0, 0], {\r\n SA: false,\r\n AD: false,\r\n MP: false,\r\n PC: false,\r\n TI: false\r\n }) */\r\n if (response.data.Disponibilidades.length > 0) {\r\n setFlagMensajeEspera(true);\r\n setShowDestacados(true);\r\n setPrincipalSearch(false);\r\n ProcesaServiciosResults(response.data, \"Destacados\");\r\n } else {\r\n setShowDestacados(false);\r\n }\r\n })\r\n .catch((error) => {\r\n setOpen(false);\r\n setsearchToken(\"\");\r\n });\r\n };\r\n\r\n const SearchHotels = () => {\r\n setOpen(true);\r\n setFirstPagination(1);\r\n setIndexPagination(1);\r\n setFlagFilter(true);\r\n const url =\r\n \"https://webtravel2-online.com/APIhoteles/api/BusquedaServicios?session=\" +\r\n searchObject.SearchToken +\r\n \"&DestinationCode=\" +\r\n searchObject.city +\r\n \"&datefrom=\" +\r\n searchObject.from +\r\n \"&dateto=\" +\r\n searchObject.to +\r\n \"&\" +\r\n searchObject.distribution +\r\n \"&agencia=atom\";\r\n axios\r\n .get(url, {\r\n headers: {\r\n \"Access-Control-Allow-Origin\": \"*\",\r\n },\r\n })\r\n .then((response) => {\r\n setsearchToken(response.data);\r\n FillPaginationObject(\r\n {\r\n cat5: false,\r\n cat4: false,\r\n cat3: false,\r\n cat2: false,\r\n cat1: false,\r\n },\r\n \"\",\r\n response.data,\r\n 1,\r\n [0, 0],\r\n {\r\n SA: false,\r\n AD: false,\r\n MP: false,\r\n PC: false,\r\n TI: false,\r\n },\r\n 0\r\n );\r\n })\r\n .catch((error) => {\r\n // setOpen(false);\r\n setsearchToken(\"\");\r\n // console.log(error);\r\n });\r\n setShowDestacados(false);\r\n \r\n };\r\n\r\n const FillHotels = () => {\r\n var precioRango = paginationObject.precioRango;\r\n var filltersCat = paginationObject.filltersCat;\r\n var filltersReg = paginationObject.filltersReg;\r\n var hotel = paginationObject.hotel;\r\n var token = paginationObject.token;\r\n var indicePaginacion = paginationObject.indicePaginacion;\r\n var destacadosFiltro = paginationObject.destacadosFiltro;\r\n\r\n /* let catFilter = filltersCat.cat5 ? \"&categoria5=1\" : \"&categoria5=0\";\r\n catFilter = filltersCat.cat4 ? catFilter + \"&categoria4=1\" : catFilter + \"&categoria4=0\";\r\n catFilter = filltersCat.cat3\r\n ? catFilter + \"&categoria3=1\"\r\n : catFilter + \"&categoria3=0\";\r\n catFilter = filltersCat.cat2\r\n ? catFilter + \"&categoria2=1\"\r\n : catFilter + \"&categoria2=0\";\r\n catFilter = filltersCat.cat1\r\n ? catFilter + \"&categoria1=1\"\r\n : catFilter + \"&categoria1=0\"; */\r\n\r\n let regFilter = filltersReg.TI ? \"®imenTI=1\" : \"®imenTI=0\";\r\n regFilter = filltersReg.PC\r\n ? regFilter + \"®imenPC=1\"\r\n : regFilter + \"®imenPC=0\";\r\n regFilter = filltersReg.MP\r\n ? regFilter + \"®imenMP=1\"\r\n : regFilter + \"®imenMP=0\";\r\n regFilter = filltersReg.AD\r\n ? regFilter + \"®imenAD=1\"\r\n : regFilter + \"®imenAD=0\";\r\n regFilter = filltersReg.SA\r\n ? regFilter + \"®imenSA=1\"\r\n : regFilter + \"®imenSA=0\";\r\n\r\n //FILTRO POR ATRACCIONES\r\n \r\n if (hotel === \"\") {\r\n if (filltersCat.cat6) {\r\n hotel= hotel + \"%filtroJB%6\";\r\n } \r\n if (filltersCat.cat5) {\r\n hotel= hotel + \"%filtroJB%5\";\r\n } \r\n if (filltersCat.cat4) {\r\n hotel= hotel + \"%filtroJB%4\";\r\n } \r\n if (filltersCat.cat3) {\r\n hotel= hotel + \"%filtroJB%3\";\r\n } \r\n if (filltersCat.cat2) {\r\n hotel= hotel + \"%filtroJB%2\";\r\n } \r\n if (filltersCat.cat1) {\r\n hotel= hotel + \"%filtroJB%1\";\r\n } \r\n }\r\n /* console.log(\"filtro\");\r\n console.log(hotel);\r\n console.log(filltersCat); */\r\n\r\n /* var hotelsList = [];\r\n var TotalPagineo = \"\"; */\r\n var precioDesdeX = precioRango[0];\r\n var precioHastaX = precioRango[1];\r\n //setOpen(true);\r\n\r\n const url =\r\n \"https://webtravel2-online.com/APIhoteles/api/ServiciosPagineoRetrieve?pagina=\" +\r\n indicePaginacion +\r\n \"&cantidad=10\" +\r\n \"&nombre=\" +\r\n hotel +\r\n \"&minimo=\" +\r\n precioDesdeX +\r\n \"&maximo=\" +\r\n precioHastaX +\r\n \"&IdEncabezado=\" +\r\n token;\r\n\r\n //const url =\"https://run.mocky.io/v3/124e6443-047f-4ac5-b138-56b88b9324d1\";\r\n axios\r\n .get(url, {\r\n headers: {\r\n \"Access-Control-Allow-Origin\": \"*\",\r\n \"Access-Control-Allow-Methods\": \"*\",\r\n },\r\n })\r\n .then((response) => {\r\n if (ShowDestacadosAux) {\r\n setShowDestacados(true);\r\n }\r\n setFlagMensajeEspera(false);\r\n if (response.data.Disponibilidades.length > 0) {\r\n setPrincipalSearch(false);\r\n // ProcesaHotelsResults(response.data, \"Todos\");\r\n ProcesaServiciosResults(response.data, \"Todos\");\r\n } else {\r\n setFlagNotAvailability(true);\r\n }\r\n /* TotalPagineo = response.data.totalHoteles\r\n \r\n const result = Array.from(new Set(response.data.Disponibilidades.map(s => s.hotelOperador)))\r\n .map(hotelOperador => {\r\n var OpeAux = response.data.Disponibilidades.filter(s => s.hotelOperador === hotelOperador)[0].Operador\r\n var codeAux = response.data.Disponibilidades.filter(s => s.hotelOperador === hotelOperador)[0].code\r\n var TmpHotelsList = (hotelsList.find(v => v.Operador == OpeAux)) ? hotelsList.find(v => v.Operador == OpeAux).Hotels : '';\r\n if (TmpHotelsList == '') {\r\n hotelsList.push({ Operador: OpeAux, Hotels: ((hotelsList.length > 0) ? '$' + OpeAux : OpeAux) + '|' + codeAux })\r\n }\r\n else {\r\n hotelsList.find(v => v.Operador == OpeAux).Hotels = TmpHotelsList + ';' + codeAux;\r\n }\r\n return {\r\n codigoHotel: codeAux,\r\n hotelOperador: hotelOperador,\r\n itemHotel: response.data.Disponibilidades.filter(s => s.hotelOperador === hotelOperador)\r\n };\r\n });\r\n setTotalPagination(Math.ceil(TotalPagineo / 10))\r\n var HotelsDetails = []\r\n if (firstPagination == 1) {\r\n setdataHotelsDetails(response.data.DetalleHoteles)\r\n if (response.data.DetalleHoteles.length > 0) {\r\n setFirstPagination(0);\r\n }\r\n }\r\n if (dataHotelsDetails.length === 0) {\r\n HotelsDetails = response.data.DetalleHoteles\r\n } else {\r\n HotelsDetails = dataHotelsDetails\r\n }\r\n GetHotelsDetails(hotelsList.map(a => a.Hotels).toString().replace(',$', '$'), result, HotelsDetails)\r\n setPrecioDesde(response.data.precioMinimo)\r\n setPrecioHasta(response.data.precioMaximo) */\r\n setOpen(false);\r\n })\r\n .catch((error) => {\r\n // setOpen(false);\r\n // console.log(error);\r\n });\r\n };\r\n\r\n const BookingAPI = (bookingP, paxesP) => {\r\n /* var book = {\r\n ITEMS: [\r\n {\r\n HABITACIONES: [\r\n {\r\n PASAJEROS: paxesP,\r\n ORDEN: 1,\r\n DESCRIPCION: \"Doble Select 2AD\",\r\n CODIGO: \"1\",\r\n CODIGOREGIMEN: \"TI\",\r\n PRECIO: 10322.94,\r\n },\r\n ],\r\n IDENCABEZADO: bookingP.IDENCABEZADO,\r\n IDCOMBINADOS: bookingP.IDCOMBINADOS,\r\n TIPO: \"HOTEL\",\r\n DESCRIPCION: bookingP.DESCRIPCION,\r\n FECHAENTRADA: bookingP.FECHAENTRADA,\r\n FECHASALIDA: bookingP.FECHASALIDA,\r\n CODIGO: bookingP.CODIGO,\r\n PROVEEDOR: bookingP.PROVEEDOR,\r\n CIUDAD: bookingP.CIUDAD,\r\n OBSERVACIONES: bookingP.OBSERVACIONES,\r\n },\r\n ],\r\n AGENCIA: [\r\n {\r\n NOMBRE: bookingP.NOMBRE,\r\n NOMBREAGENTE: bookingP.NOMBREAGENTE,\r\n CORREO: bookingP.CORREO,\r\n },\r\n ],\r\n PASDIRECTO: [\r\n {\r\n NOMBRE: bookingP.NOMBRE,\r\n CELULAR: bookingP.CELULAR,\r\n TELEFONO: bookingP.TELEFONO,\r\n CORREO: bookingP.CORREO,\r\n },\r\n ],\r\n ASIGNADOA: \"KZ\",\r\n EXPEDIENTEREFERENCIA: \"B41254\",\r\n }; */\r\n\r\n const url =\r\n \"https://webtravel2-online.com/APIhoteles/api/Busqueda?session=\" +\r\n searchObject.SearchToken +\r\n \"&DestinationCode=\" +\r\n searchObject.city +\r\n \"&datefrom=\" +\r\n searchObject.from +\r\n \"&dateto=\" +\r\n searchObject.to +\r\n \"&\" +\r\n searchObject.distribution +\r\n \"&agencia=atom\";\r\n axios\r\n .get(url, {\r\n headers: {\r\n \"Access-Control-Allow-Origin\": \"*\",\r\n },\r\n })\r\n .then((response) => {\r\n console.log(response);\r\n setsearchToken(response.data);\r\n FillPaginationObject(\r\n {\r\n cat5: false,\r\n cat4: false,\r\n cat3: false,\r\n cat2: false,\r\n cat1: false,\r\n },\r\n \"\",\r\n response.data,\r\n 1,\r\n [0, 0],\r\n {\r\n SA: false,\r\n AD: false,\r\n MP: false,\r\n PC: false,\r\n TI: false,\r\n },\r\n 0\r\n );\r\n })\r\n .catch((error) => {\r\n // setOpen(false);\r\n setsearchToken(\"\");\r\n // console.log(error);\r\n });\r\n };\r\n\r\n // ---------------------- API(FIN) ---------------------------\r\n\r\n // ---------------------- HANDLE ---------------------------\r\n /* const handleClickOpenDialog = () => {\r\n setOpen(true);\r\n }; */\r\n\r\n const handleQueryString = () => {\r\n const search = window.location.search;\r\n const params = new URLSearchParams(search);\r\n const foo = params.get('agencia');\r\n if (foo !== \"\") {\r\n setAgenciaWeb(foo);\r\n }\r\n switch (AgenciaWeb) {\r\n case 'Ibero':\r\n seturlAgencia(\"https://webtravel2-online.com/serviciosonline2/headeribero.html\"); \r\n break;\r\n case 'MC':\r\n seturlAgencia(\"https://webtravel2-online.com/serviciosonline2/headermc.html\"); \r\n break;\r\n default:\r\n seturlAgencia(\"https://atom.travel/headeratom.html\"); \r\n break; \r\n }\r\n }\r\n\r\n const cambiaUrl = () => {\r\n if (AgenciaWeb !== \"Ibero\") {\r\n seturlAgencia(\"https://webtravel2-online.com/serviciosonline2/headeribero.html\"); \r\n }\r\n else {\r\n seturlAgencia(\"https://atom.travel/headeratom.html\"); \r\n }\r\n }\r\n\r\n const handleCloseDialog = () => {\r\n setOpen(false);\r\n };\r\n\r\n const handleCloseDialogAvailability = () => {\r\n setFlagNotAvailability(false);\r\n };\r\n\r\n const UpdatePaxes = (paxesP) => {\r\n setPaxes(paxesP);\r\n };\r\n\r\n const CancelBooking = (flagBooking) => {\r\n setbookingFlag(flagBooking);\r\n };\r\n\r\n const FillHotelsFilters = (\r\n filltersCat,\r\n hotel,\r\n token,\r\n indicePaginacion,\r\n precioRango,\r\n fillterReg,\r\n ClearFiltro,\r\n destacadosFiltro\r\n ) => {\r\n\r\n console.log(\"filltersCat\");\r\n console.log(filltersCat);\r\n setFlagFilter(false);\r\n setOpen(true);\r\n\r\n //setFirstPagination(1);\r\n\r\n var pObj = {\r\n filltersCat: filltersCat,\r\n hotel: hotel,\r\n token: token,\r\n indicePaginacion: 1,\r\n precioRango: precioRango,\r\n filltersReg: fillterReg,\r\n };\r\n setPaginationObject(pObj);\r\n setIndexPagination(1);\r\n FillPaginationObject(\r\n filltersCat,\r\n hotel,\r\n token,\r\n 1,\r\n precioRango,\r\n fillterReg,\r\n destacadosFiltro ? 1 : 0\r\n );\r\n if (ClearFiltro) {\r\n setShowDestacadosAux(true);\r\n } else {\r\n setShowDestacados(false);\r\n setShowDestacadosAux(false);\r\n }\r\n //colocado para deshabilitar la secci�n de hoteles destacados\r\n setShowDestacados(false);\r\n setShowDestacadosAux(false);\r\n };\r\n\r\n const ToBookingClick = (\r\n hotelOperador,\r\n IDCombinacion,\r\n Operador,\r\n IDEncabezado,\r\n Tipo, \r\n token\r\n ) => {\r\n\r\n console.log(\"BookingClick\")\r\n console.log(hotelOperador + \" \" + IDCombinacion + \" \" + Operador + \" \" + IDEncabezado + \" \" + Tipo+ \" \" + token);\r\n if (!bookingFlag) {\r\n if (Tipo === \"Destacados\") {\r\n var tmp = dataHotelsDestacados[\r\n dataHotelsDestacados.findIndex(\r\n (s) => s.hotelOperador === hotelOperador\r\n )\r\n ].itemHotel.filter(\r\n (s) =>\r\n s.idCombinacion === IDCombinacion &&\r\n s.operador === Operador &&\r\n s.idEncabezado === IDEncabezado&&\r\n s.token === token\r\n );\r\n } else {\r\n console.log(\"dataHoltes\");\r\n console.log(dataHotels);\r\n var tmp = dataHotels[\r\n dataHotels.findIndex((s) => s.hotelOperador === hotelOperador)\r\n ].itemHotel.filter(\r\n (s) =>\r\n s.idCombinacion === IDCombinacion &&\r\n s.operador === Operador &&\r\n s.idEncabezado === IDEncabezado&&\r\n s.token === token\r\n );\r\n }\r\n\r\n /* var tmp = dataHotels.filter(s => s.hotelOperador === hotelOperador) */\r\n console.log(\"tmp\")\r\n console.log(tmp)\r\n console.log(tmp[0].itemHotel)\r\n\r\n setdataBooking(tmp);\r\n setbookingFlag(true);\r\n }\r\n };\r\n\r\n const BookingClick = (bookingP) => {\r\n BookingAPI(bookingP, paxes);\r\n };\r\n\r\n /* const handleChangeAccordion = (panel) => (event, newExpanded) => {\r\n setExpanded(newExpanded ? panel : false);\r\n }; */\r\n // ---------------------- HANDLE (FIN) ---------------------------\r\n\r\n // ---------------------- FUNCIONES ---------------------------\r\n\r\n const ProcesaHotelsResults = (resultXX, tipoAPI) => {\r\n var hotelsList = [];\r\n var TotalPagineo = \"\";\r\n TotalPagineo = resultXX.totalServicios;\r\n\r\n const result = Array.from(new Set(resultXX.Disponibilidades.map((s) => s.hotelOperador))).map((hotelOperador) => {\r\n var OpeAux = resultXX.Disponibilidades.filter((s) => s.hotelOperador === hotelOperador)[0].Operador;\r\n var codeAux = resultXX.Disponibilidades.filter((s) => s.hotelOperador === hotelOperador)[0].code;\r\n var TmpHotelsList = hotelsList.find((v) => v.Operador == OpeAux) ? hotelsList.find((v) => v.Operador == OpeAux).Hotels : \"\";\r\n if (TmpHotelsList == \"\") {\r\n hotelsList.push({\r\n Operador: OpeAux,\r\n Hotels: (hotelsList.length > 0 ? \"$\" + OpeAux : OpeAux) + \"|\" + codeAux,\r\n });\r\n } else {\r\n hotelsList.find((v) => v.Operador == OpeAux).Hotels = TmpHotelsList + \";\" + codeAux;\r\n }\r\n return {\r\n codigoHotel: codeAux,\r\n hotelOperador: hotelOperador,\r\n itemHotel: resultXX.Disponibilidades.filter((s) => s.hotelOperador === hotelOperador).sort(function (a, b) {\r\n if (a.Precio > b.Precio) {\r\n return 1;\r\n }\r\n if (a.Precio < b.Precio) {\r\n return -1;\r\n }\r\n return 0;\r\n }),\r\n };\r\n });\r\n setTotalPagination(Math.ceil(TotalPagineo / 10));\r\n var HotelsDetails = [];\r\n /* console.log(\"firstPagination\")\r\n console.log(firstPagination)\r\n console.log(dataHotelsDetails) */\r\n if (firstPagination === 1) {\r\n setdataHotelsDetails(resultXX.DetalleHoteles);\r\n if (resultXX.DetalleHoteles.length > 0) {\r\n if (tipoAPI !== \"Destacados\") {\r\n setFirstPagination(0);\r\n }\r\n }\r\n }\r\n if (dataHotelsDetails.length === 0 || (firstPagination === 1) & (tipoAPI !== \"Destacados\")) {\r\n HotelsDetails = resultXX.DetalleHoteles;\r\n } else {\r\n HotelsDetails = dataHotelsDetails;\r\n }\r\n GetHotelsDetails(\r\n hotelsList\r\n .map((a) => a.Hotels)\r\n .toString()\r\n .replace(\",$\", \"$\"),\r\n result,\r\n HotelsDetails,\r\n tipoAPI\r\n );\r\n setPrecioDesde(resultXX.precioMinimo);\r\n setPrecioHasta(resultXX.precioMaximo);\r\n setIndDestacados(resultXX.indDestacados);\r\n };\r\n\r\n const ProcesaServiciosResults = (resultXX, tipoAPI) => {\r\n var hotelsList = [];\r\n var TotalPagineo = \"\";\r\n TotalPagineo = resultXX.totalServicios;\r\n\r\n\r\n //LUEGO DE AGREGAR A LA RESPUESTA DE LA DISPO EL CAMPO COMPUESTO DE OPERADOR Y CODIGO CAMBIAR COMO ESTA EL DE HOTELES hotelOperador\r\n const result = Array.from(new Set(resultXX.Disponibilidades.map((s) => s.codigo))).map((codigo) => {\r\n //var OpeAux = resultXX.Disponibilidades.filter((s) => s.codigo === codigo)[0].Operador;\r\n var OpeAux = \"GALAXY\";\r\n //var codeAux = resultXX.Disponibilidades.filter((s) => s.hotelOperador === hotelOperador)[0].code;\r\n var hotelOperador = codigo + \"-\" + OpeAux;\r\n var codeAux = codigo;\r\n var TmpHotelsList = hotelsList.find((v) => v.Operador === OpeAux) ? hotelsList.find((v) => v.Operador === OpeAux).Hotels : \"\";\r\n if (TmpHotelsList === \"\") {\r\n hotelsList.push({\r\n Operador: OpeAux,\r\n Hotels: (hotelsList.length > 0 ? \"$\" + OpeAux : OpeAux) + \"|\" + codeAux,\r\n });\r\n } else {\r\n hotelsList.find((v) => v.Operador === OpeAux).Hotels = TmpHotelsList + \";\" + codeAux;\r\n }\r\n return {\r\n codigoHotel: codeAux,\r\n hotelOperador: hotelOperador,\r\n itemHotel: resultXX.Disponibilidades.filter((s) => s.operador === OpeAux && s.codigo === codeAux).sort(function (a, b) {\r\n if (a.Precio > b.Precio) {\r\n return 1;\r\n }\r\n if (a.Precio < b.Precio) {\r\n return -1;\r\n }\r\n return 0;\r\n }),\r\n };\r\n });\r\n setTotalPagination(Math.ceil(TotalPagineo / 10));\r\n var HotelsDetails = [];\r\n /* console.log(\"firstPagination\")\r\n console.log(firstPagination)\r\n console.log(dataHotelsDetails) */\r\n/* if (firstPagination == 1) {\r\n setdataHotelsDetails(resultXX.DetalleHoteles);\r\n if (resultXX.DetalleHoteles.length > 0) {\r\n if (tipoAPI !== \"Destacados\") {\r\n setFirstPagination(0);\r\n }\r\n }\r\n }\r\n if (dataHotelsDetails.length === 0 || (firstPagination == 1) & (tipoAPI !== \"Destacados\")) {\r\n HotelsDetails = resultXX.DetalleHoteles;\r\n } else {\r\n HotelsDetails = dataHotelsDetails;\r\n } \r\n GetHotelsDetails(hotelsList.map((a) => a.Hotels).toString().replace(\",$\", \"$\"),result,HotelsDetails,tipoAPI);\r\n */\r\n console.log(\"RESULT\");\r\n console.log(result);\r\n setdataHotels(result);\r\n setOpen(false);\r\n setPrecioDesde(resultXX.precioMinimo);\r\n setPrecioHasta(resultXX.precioMaximo);\r\n //setIndDestacados(resultXX.indDestacados);\r\n };\r\n\r\n const GetHotelsDetails = (\r\n listHotels,\r\n result,\r\n dataHotelsDetailsX,\r\n tipoAPI\r\n ) => {\r\n var i;\r\n\r\n for (i = 0; i < result.length; i++) {\r\n let resultTmp = dataHotelsDetailsX.find(\r\n (v) => v.hotelOperador == result[i].hotelOperador\r\n );\r\n\r\n if (typeof resultTmp == \"undefined\") {\r\n } else {\r\n var j;\r\n for (j = 0; j < result[i].itemHotel.length; j++) {\r\n result[i].itemHotel[j].DescripcionHotel = resultTmp.Descripcion;\r\n result[i].itemHotel[j].UrlImagen1 = resultTmp.Imagen;\r\n result[i].itemHotel[j].Direccion = resultTmp.Direccion;\r\n result[i].itemHotel[j].Latitud = resultTmp.Latitud;\r\n result[i].itemHotel[j].Longitud = resultTmp.Longitud;\r\n }\r\n }\r\n }\r\n\r\n if (tipoAPI === \"Destacados\") {\r\n setdataHotelsDestacados(result);\r\n } else {\r\n setdataHotels(result);\r\n // console.log(result);\r\n }\r\n\r\n // setdataBooking(result);\r\n setOpen(false);\r\n };\r\n\r\n const Search = (SearchO) => {\r\n if (SearchO == \"undefined\" || SearchO == \"\") {\r\n } else {\r\n setShowDestacados(false);\r\n setfirstSearch(true);\r\n ClearData();\r\n setsearchObject(SearchO);\r\n }\r\n };\r\n\r\n const ClearData = () => {\r\n setdataHotels([]);\r\n setdataHotelsDestacados([]);\r\n setdataBooking([]);\r\n setdataHotelsDetails([]);\r\n };\r\n\r\n const FillPaginationObject = (\r\n filltersCat,\r\n hotel,\r\n token,\r\n indicePaginacion,\r\n precioRango,\r\n filltersReg,\r\n destacadosFiltro\r\n /* filltersCat = {\r\n cat5: false,\r\n cat4: false,\r\n cat3: false,\r\n cat2: false,\r\n cat1: false,\r\n },\r\n hotel = \"\",\r\n token = \"\",\r\n indicePaginacion = \"N\",\r\n precioRango,\r\n filltersReg = {\r\n SA: false,\r\n AD: false,\r\n MP: false,\r\n PC: false,\r\n TI: false, \r\n },\r\n destacadosFiltro */\r\n ) => {\r\n var ObjectTmp = paginationObject;\r\n ObjectTmp.filltersCat = filltersCat;\r\n ObjectTmp.hotel = hotel;\r\n ObjectTmp.token = token;\r\n ObjectTmp.indicePaginacion = indicePaginacion;\r\n ObjectTmp.precioRango = precioRango;\r\n ObjectTmp.filltersReg = filltersReg;\r\n ObjectTmp.destacadosFiltro = destacadosFiltro;\r\n setPaginationObject(ObjectTmp);\r\n var pp = new Date();\r\n SetEpale(pp);\r\n setFlagFilter(false);\r\n };\r\n\r\n // ---------------------- FUNCIONES (FIN) ---------------------------\r\n\r\n return (\r\n
    \r\n \r\n \r\n {AgenciaWeb === \"Ibero\" ? (\r\n