{"version":3,"file":"shared-lib.By8Tf7Ti.mjs","names":["__esmMin","init_npm_react_18_3_1","init_ssg_sandbox_shims","window","c","init_jsx_runtime","ce","animate","init_framer_motion_DhsWWWsN","addPropertyControls","RenderTarget","init_framer_D6uXRwWs","ControlType","skipOnTouch","isTouch","inside","o","p","pre","fromPath","toPath","linkOf","eligible","a","h","shape","top","bottom","flag","v","FLAG","setY","pct","show","on","getOverlay","w","KEY","NS","root","svg","path","bypass","url","here","type","TOUCH_EVENTS","pending","u","onClick","exit","applyCfg","cfg","enter","amp","EASE","wait","HTML_ATTR","finish","start","started","go","e","from","navigate","guard","ev","t0","check","PageTransition","props","skipList","touchSkip","x","isCanvas","fresh","firstLoad","fill","zIndex","inDuration","outDuration","hold","bend","init_PageTransition","r","ms","metadata","init_siteMetadata"],"sources":["https:/framerusercontent.com/modules/4YXVXhggE7RXOentjb9x/TP48swMjBFOcHMzz42qo/PageTransition.js","https:/framerusercontent.com/modules/6gpZWGea3WvVHvREVeeF/TB0Yh2lYOvGww2imGPbA/siteMetadata.js"],"sourcesContent":["// PageTransition — transizione tra pagine ispirata a gucciosteria.com\n//\n//  1. click su un link interno → un pannello pieno sale dal basso con il bordo\n//     superiore che si incurva verso l'alto (la curva è massima a metà corsa\n//     e torna piatta esattamente quando il pannello copre tutto lo schermo);\n//  2. a schermo coperto Framer cambia pagina;\n//  3. appena la nuova pagina è montata il pannello esce verso l'alto, con il\n//     bordo inferiore che si incurva.\n//\n// Il pannello è UNO solo, creato una volta su document.body e animato fuori\n// da React: sopravvive al cambio pagina (niente flash, niente lag di rimontaggio).\n//\n// Uso: un'istanza di \"PageTransition\" su ogni pagina (posizione/dimensione\n// non contano, sul sito non si vede).\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect}from\"react\";import{animate}from\"framer-motion\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";const KEY=\"__vitaPageTransition\";const FLAG=\"__vitaPageTransitionCovered\";// curva morbida tipo \"expo in-out\": parte e arriva dolce, veloce a metà\nconst EASE=[.76,0,.24,1];const HTML_ATTR=\"data-pt-covered\";let bypass=false;let pending=null;const here=()=>location.pathname+location.search;// Dispositivi touch: Framer cambia pagina già al tocco (solo con eventi reali),\n// quindi lì tratteniamo il tocco e apriamo la pagina noi a schermo coperto.\nconst isTouch=()=>typeof window!==\"undefined\"&&(window.matchMedia?.(\"(hover: none)\").matches||window.matchMedia?.(\"(pointer: coarse)\").matches);// Su touch, nessuna transizione se si parte da / si arriva a queste sezioni\nfunction skipOnTouch(o,fromPath,toPath){if(!isTouch())return false;const inside=p=>o.cfg.touchSkip.some(pre=>p===pre||p.startsWith(pre+\"/\"));return inside(fromPath)||inside(toPath);}const TOUCH_EVENTS=[\"pointerup\",\"mousedown\",\"mouseup\",\"touchstart\",\"touchend\"];const wait=ms=>new Promise(r=>window.setTimeout(r,ms));function linkOf(e){return e.target?.closest?.(\"a[href]\");}function eligible(a){if(a.target&&a.target!==\"_self\")return false;if(a.hasAttribute(\"download\")||a.hasAttribute(\"data-no-transition\"))return false;const h=a.getAttribute(\"href\")||\"\";if(h.startsWith(\"#\")||/^(mailto|tel|sms|javascript):/i.test(h))return false;return true;}// viewBox 1000x1000, preserveAspectRatio none.\n// top > 0  → bordo superiore che sporge verso l'alto (fuori dal rettangolo)\n// bottom > 0 → bordo inferiore il cui centro risale (coda del pannello)\nfunction shape(top,bottom){return`M0,0 Q500,${-2*top} 1000,0 `+`L1000,1000 Q500,${1e3-2*bottom} 0,1000 Z`;}function flag(v){try{if(v===undefined)return sessionStorage.getItem(FLAG)===\"1\";v?sessionStorage.setItem(FLAG,\"1\"):sessionStorage.removeItem(FLAG);}catch{}return false;}function setY(o,pct){o.root.style.transform=`translate3d(0, ${pct}%, 0)`;}function show(o,on){o.root.style.visibility=on?\"visible\":\"hidden\";o.root.style.pointerEvents=on?\"auto\":\"none\";}function getOverlay(){const w=window;if(w[KEY])return w[KEY];const NS=\"http://www.w3.org/2000/svg\";const root=document.createElement(\"div\");root.setAttribute(\"aria-hidden\",\"true\");Object.assign(root.style,{position:\"fixed\",left:\"0\",top:\"-1px\",width:\"100%\",height:\"calc(100vh + 2px)\",zIndex:\"9999\",visibility:\"hidden\",pointerEvents:\"none\",willChange:\"transform\",transform:\"translate3d(0, 101%, 0)\",contain:\"layout style\"});if(typeof CSS!==\"undefined\"&&CSS.supports?.(\"height\",\"100lvh\"))root.style.height=\"calc(100lvh + 2px)\";const svg=document.createElementNS(NS,\"svg\");svg.setAttribute(\"viewBox\",\"0 0 1000 1000\");svg.setAttribute(\"preserveAspectRatio\",\"none\");Object.assign(svg.style,{position:\"absolute\",inset:\"0\",width:\"100%\",height:\"100%\",overflow:\"visible\",display:\"block\"});const path=document.createElementNS(NS,\"path\");path.setAttribute(\"d\",shape(0,0));svg.appendChild(path);root.appendChild(svg);document.body.appendChild(root);const o={root,path,phase:\"idle\",cfg:{fill:\"#FBF9F4\",zIndex:9999,inDuration:.6,outDuration:.7,hold:.05,bend:1,touchSkip:[\"/carta-vini\"]}};w[KEY]=o;// Listener globali (uno solo per tutto il sito)\n// pointerdown: fissa l'indirizzo ASSOLUTO della destinazione prima che\n// qualsiasi cambio pagina possa rendere sbagliato un href relativo.\nwindow.addEventListener(\"pointerdown\",e=>{if(bypass)return;const a=linkOf(e);if(!a||!eligible(a))return;let url;try{url=new URL(a.getAttribute(\"href\")||\"\",location.href);}catch{pending=null;return;}if(url.origin!==location.origin)return;if(skipOnTouch(o,location.pathname,url.pathname)){pending=null// navigazione nativa di Framer, nessuna transizione\n;return;}pending={a,url:url.href,from:here(),t:Date.now()};if(isTouch()&&url.pathname+url.search!==here())e.stopImmediatePropagation();},{capture:true,passive:true});// su touch: blocca gli eventi del tocco che farebbero navigare Framer subito\nfor(const type of TOUCH_EVENTS){window.addEventListener(type,e=>{if(bypass||!isTouch()||!pending)return;const a=linkOf(e);if(a&&a===pending.a&&Date.now()-pending.t<5e3){const u=new URL(pending.url);if(u.pathname+u.search!==pending.from)e.stopImmediatePropagation();}},{capture:true,passive:true});}window.addEventListener(\"click\",e=>onClick(o,e),true);// ritorno con \"indietro\" dalla cache del browser: mai restare coperti\nwindow.addEventListener(\"pageshow\",e=>{if(e.persisted&&o.phase!==\"idle\"){o.phase=\"covered\";exit(o);}});return o;}function applyCfg(o,cfg){o.cfg=cfg;// style (non attributo) così funziona anche con var(--token-…) dello stile colore\no.path.style.fill=cfg.fill||\"#FBF9F4\";o.root.style.zIndex=String(cfg.zIndex);}function enter(o){o.stop?.();o.phase=\"entering\";const amp=140*o.cfg.bend;show(o,true);setY(o,101);const a=animate(0,1,{duration:o.cfg.inDuration,ease:EASE,onUpdate:p=>{setY(o,101*(1-p));o.path.setAttribute(\"d\",shape(amp*Math.sin(Math.PI*p),0));}});o.stop=()=>a.stop();// se l'animazione viene sospesa (scheda in background, risparmio\n// energetico) non restare bloccati: prosegui comunque\nreturn Promise.race([Promise.resolve(a),wait(o.cfg.inDuration*1e3+400)]).then(()=>{a.stop();setY(o,0);o.path.setAttribute(\"d\",shape(0,0));o.phase=\"covered\";});}function exit(o){if(o.phase===\"exiting\"||o.phase===\"idle\")return;window.clearTimeout(o.fallback);o.stop?.();o.phase=\"exiting\";flag(false);const amp=140*o.cfg.bend;setY(o,0);show(o,true);document.documentElement.removeAttribute(HTML_ATTR);const finish=()=>{if(o.phase!==\"exiting\")return;o.phase=\"idle\";show(o,false);setY(o,101);o.path.setAttribute(\"d\",shape(0,0));};const start=()=>{const a=animate(0,1,{duration:o.cfg.outDuration,ease:EASE,onUpdate:p=>{setY(o,-101*p);o.path.setAttribute(\"d\",shape(0,amp*Math.sin(Math.PI*p)));}});o.stop=()=>a.stop();Promise.race([Promise.resolve(a),wait(o.cfg.outDuration*1e3+500)]).then(()=>{a.stop();finish();});};// aspetta che la nuova pagina sia dipinta, poi esci\nlet started=false;const go=()=>{if(started)return;started=true;if(o.cfg.hold>0)window.setTimeout(start,o.cfg.hold*1e3);else start();};requestAnimationFrame(()=>requestAnimationFrame(go));window.setTimeout(go,120)// se requestAnimationFrame è sospeso\n;}function onClick(o,e){if(bypass||e.defaultPrevented)return;if(e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;const a=linkOf(e);if(!a||!eligible(a))return;const p=pending&&pending.a===a&&Date.now()-pending.t<5e3?pending:null;pending=null;const from=p?p.from:here();let url;try{url=new URL(p?p.url:a.href);}catch{return;}if(url.origin!==location.origin)return;if(url.pathname+url.search===from)return;// stessa pagina / ancora\nif(skipOnTouch(o,location.pathname,url.pathname))return;// lascia fare a Framer\ne.preventDefault();e.stopPropagation();e.stopImmediatePropagation();// Su touch Framer può aver già cambiato pagina al rilascio del dito:\n// in quel caso blocchiamo solo la navigazione nativa (href relativo ormai\n// sbagliato → \"page not found\") e lasciamo fare a Framer.\nif(here()!==from)return;if(o.phase===\"entering\"||o.phase===\"covered\")return;enter(o).then(()=>navigate(o,a,url,from));}function navigate(o,a,url,from){flag(true);// su touch Framer accetta solo tocchi reali: apri direttamente la pagina\n// (nasce già coperta grazie allo snippet nell'head, nessun lampo)\nif(isTouch()){location.assign(url.href);return;}// 1) prova il cambio pagina interno di Framer (veloce, senza ricarica)\nif(a.isConnected){// impedisce SEMPRE la navigazione nativa dell'href relativo\nconst guard=ev=>{if(!ev.defaultPrevented)ev.preventDefault();};window.addEventListener(\"click\",guard);bypass=true;try{a.click();}finally{bypass=false;window.removeEventListener(\"click\",guard);}}// 2) se la pagina non cambia subito, aprila con l'indirizzo assoluto giusto\nconst t0=Date.now();const check=()=>{if(o.phase!==\"covered\")return;// nuova pagina arrivata, già in uscita\nif(here()!==from)return;// Framer ha cambiato pagina, attendi il montaggio\nif(Date.now()-t0>350){location.assign(url.href);return;}window.setTimeout(check,50);};window.setTimeout(check,50);// 3) rete di sicurezza finale: mai restare coperti\no.fallback=window.setTimeout(()=>{if(o.phase===\"covered\"&&here()!==from)exit(o);},4e3);}/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n */export default function PageTransition(props){const{fill=\"#FBF9F4\",zIndex=9999,inDuration=.6,outDuration=.7,hold=.05,bend=1,firstLoad=false,touchSkip=\"/carta-vini\"}=props;const skipList=touchSkip.split(\",\").map(x=>x.trim().replace(/\\/+$/,\"\")).filter(Boolean);const isCanvas=RenderTarget.current()===RenderTarget.canvas;useEffect(()=>{if(isCanvas||typeof window===\"undefined\")return;const fresh=!window[KEY];const o=getOverlay();applyCfg(o,{fill,zIndex,inDuration,outDuration,hold,bend,touchSkip:skipList});if(o.phase===\"covered\"){// arrivati su una nuova pagina con il pannello sopra → esci\nexit(o);}else if(fresh&&(flag()||firstLoad)){// caricamento completo della pagina (o intro al primo accesso)\no.phase=\"covered\";setY(o,0);show(o,true);exit(o);}},[]);useEffect(()=>{if(isCanvas||typeof window===\"undefined\")return;const o=window[KEY];if(o)applyCfg(o,{fill,zIndex,inDuration,outDuration,hold,bend,touchSkip:skipList});},[fill,zIndex,inDuration,outDuration,hold,bend,touchSkip]);if(!isCanvas)return null;return /*#__PURE__*/_jsx(\"div\",{style:{...props.style,position:\"relative\",width:\"100%\",height:\"100%\",minWidth:120,minHeight:40,background:fill,color:\"#181818\",border:\"1px solid rgba(0,0,0,0.15)\",font:\"600 12px/1.2 Inter, sans-serif\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",borderRadius:6},children:\"Page Transition\"});}addPropertyControls(PageTransition,{fill:{type:ControlType.Color,title:\"Colore\",defaultValue:\"#FBF9F4\"},inDuration:{type:ControlType.Number,title:\"Entrata\",defaultValue:.6,min:.2,max:2,step:.05,unit:\"s\"},outDuration:{type:ControlType.Number,title:\"Uscita\",defaultValue:.7,min:.2,max:2,step:.05,unit:\"s\"},hold:{type:ControlType.Number,title:\"Pausa\",defaultValue:.05,min:0,max:1.5,step:.05,unit:\"s\"},bend:{type:ControlType.Number,title:\"Curvatura\",defaultValue:1,min:0,max:2.5,step:.1},zIndex:{type:ControlType.Number,title:\"Z-index\",defaultValue:9999,min:0,max:99999,displayStepper:true},touchSkip:{type:ControlType.String,title:\"No su touch\",defaultValue:\"/carta-vini\",placeholder:\"/carta-vini, /altra-sezione\",description:\"Su telefono e tablet nessuna transizione se si parte da queste sezioni o ci si arriva.\"},firstLoad:{type:ControlType.Boolean,title:\"Al 1\\xb0 accesso\",defaultValue:false}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"PageTransition\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any\",\"framerSupportedLayoutWidth\":\"any\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./PageTransition.map","// Generated by Framer (7bba2ed)\nexport default function metadata(params,contentLocale){return{description:\"Location per compleanni, lauree, addio al nubilato/celibato ed eventi aziendali a Brescia. Con un men\\xf9 fisso adatto a tutte le occasioni.\",favicon:\"https://framerusercontent.com/assets/UIw5Z5cjxi3r96zDKcbQhvw3uw.jpg\",robots:\"max-image-preview:large\",title:\"Feste ed eventi a Brescia | VITA, Piazzale Arnaldo\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"A,iPAkBA,SAASa,EAAY,EAAE,EAAS,EAAO,CAAC,GAAG,CAACC,EAAQ,EAAE,MAAO,GAAM,IAAMC,EAAO,GAAGC,EAAE,IAAI,UAAU,KAAK,GAAKC,IAAIC,GAAKD,EAAE,WAAWC,EAAI,GAAG,CAAC,EAAE,OAAOH,EAAOI,CAAQ,GAAGJ,EAAOK,CAAM,CAAE,CAAuI,SAASC,EAAO,EAAE,CAAC,OAAO,EAAE,QAAQ,UAAU,SAAS,CAAE,CAAC,SAASC,EAAS,EAAE,CAA8C,GAA1CC,EAAE,QAAQA,EAAE,SAAS,SAAwBA,EAAE,aAAa,UAAU,GAAGA,EAAE,aAAa,oBAAoB,EAAE,MAAO,GAAM,IAAMC,EAAED,EAAE,aAAa,MAAM,GAAG,GAA+E,MAA5E,EAAGC,EAAE,WAAW,GAAG,GAAG,iCAAiC,KAAKA,CAAC,EAA2B,CAGpoB,SAASC,EAAM,EAAI,EAAO,CAAC,MAAM,aAAa,GAAGC,EAAI,0BAA6B,IAAI,EAAEC,EAAO,UAAW,CAAC,SAASC,EAAK,EAAE,CAAC,GAAG,CAAC,GAAGC,IAAI,IAAA,GAAU,OAAO,eAAe,QAAQC,CAAI,IAAI,IAAID,EAAE,eAAe,QAAQC,EAAK,GAAG,EAAE,eAAe,WAAWA,CAAI,CAAE,MAAM,CAAC,CAAC,MAAO,EAAM,CAAC,SAASC,EAAK,EAAE,EAAI,CAAC,EAAE,KAAK,MAAM,UAAU,kBAAkBC,EAAI,MAAO,CAAC,SAASC,EAAK,EAAE,EAAG,CAAC,EAAE,KAAK,MAAM,WAAWC,EAAG,UAAU,SAAS,EAAE,KAAK,MAAM,cAAcA,EAAG,OAAO,MAAO,CAAC,SAASC,GAAY,CAAC,IAAMC,EAAEjC,EAAO,GAAGiC,EAAEC,GAAK,OAAOD,EAAEC,GAAK,IAAMC,EAAG,6BAAmCC,EAAK,SAAS,cAAc,KAAK,EAAEA,EAAK,aAAa,cAAc,MAAM,EAAE,OAAO,OAAOA,EAAK,MAAM,CAAC,SAAS,QAAQ,KAAK,IAAI,IAAI,OAAO,MAAM,OAAO,OAAO,oBAAoB,OAAO,OAAO,WAAW,SAAS,cAAc,OAAO,WAAW,YAAY,UAAU,0BAA0B,QAAQ,cAAc,CAAC,EAAK,OAAO,IAAM,KAAa,IAAI,WAAW,SAAS,QAAQ,IAAE,EAAK,MAAM,OAAO,sBAAqB,IAAMC,EAAI,SAAS,gBAAgBF,EAAG,KAAK,EAAEE,EAAI,aAAa,UAAU,eAAe,EAAEA,EAAI,aAAa,sBAAsB,MAAM,EAAE,OAAO,OAAOA,EAAI,MAAM,CAAC,SAAS,WAAW,MAAM,IAAI,MAAM,OAAO,OAAO,OAAO,SAAS,UAAU,QAAQ,OAAO,CAAC,EAAE,IAAMC,EAAK,SAAS,gBAAgBH,EAAG,MAAM,EAAEG,EAAK,aAAa,IAAIhB,EAAM,EAAE,CAAC,CAAC,EAAEe,EAAI,YAAYC,CAAI,EAAEF,EAAK,YAAYC,CAAG,EAAE,SAAS,KAAK,YAAYD,CAAI,EAAE,IAAM,EAAE,CAAC,OAAK,OAAK,MAAM,OAAO,IAAI,CAAC,KAAK,UAAU,OAAO,KAAK,WAAW,GAAG,YAAY,GAAG,KAAK,IAAI,KAAK,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC,EAAE,EAAEF,GAAK,EAGrgDlC,EAAO,iBAAiB,cAAc,GAAG,CAAC,GAAGuC,EAAO,OAAO,IAAMnB,EAAEF,EAAO,CAAC,EAAE,GAAG,CAACE,GAAG,CAACD,EAASC,CAAC,EAAE,OAAO,IAAIoB,EAAI,GAAG,CAAC,EAAI,IAAI,IAAIpB,EAAE,aAAa,MAAM,GAAG,GAAG,SAAS,IAAI,CAAE,MAAM,CAAC,EAAQ,KAAK,MAAO,CAAIoB,EAAI,SAAS,SAAS,SAAiB9B,EAAY,EAAE,SAAS,SAAS8B,EAAI,QAAQ,EAAG,EAAQ,MAC9R,EAAQ,CAAC,IAAE,IAAIA,EAAI,KAAK,KAAKC,EAAK,EAAE,EAAE,KAAK,IAAI,CAAC,EAAK9B,EAAQ,GAAG6B,EAAI,SAASA,EAAI,SAASC,EAAK,GAAE,EAAE,yBAAyB,GAAE,EAAE,CAAC,QAAQ,GAAK,QAAQ,EAAI,CAAC,EACpK,IAAI,IAAMC,KAAQC,EAAc3C,EAAO,iBAAiB0C,EAAK,GAAG,CAAC,GAAGH,GAAQ,CAAC5B,EAAQ,GAAG,CAACiC,EAAQ,OAAO,IAAMxB,EAAEF,EAAO,CAAC,EAAE,GAAGE,GAAGA,IAAIwB,EAAQ,GAAG,KAAK,IAAI,EAAEA,EAAQ,EAAE,IAAI,CAAC,IAAMC,EAAE,IAAI,IAAID,EAAQ,GAAG,EAAKC,EAAE,SAASA,EAAE,SAASD,EAAQ,MAAK,EAAE,yBAAyB,CAAE,CAAC,EAAE,CAAC,QAAQ,GAAK,QAAQ,EAAI,CAAC,EAChM,OADmM5C,EAAO,iBAAiB,QAAQ,GAAG8C,EAAQ,EAAE,CAAC,EAAE,EAAI,EAC9V9C,EAAO,iBAAiB,WAAW,GAAG,CAAI,EAAE,WAAW,EAAE,QAAQ,SAAQ,EAAE,MAAM,UAAU+C,EAAK,CAAC,EAAG,CAAC,EAAS,CAAE,CAAC,SAASC,EAAS,EAAE,EAAI,CAAC,EAAE,IAAIC,EAChJ,EAAE,KAAK,MAAM,KAAKA,EAAI,MAAM,UAAU,EAAE,KAAK,MAAM,OAAO,OAAOA,EAAI,MAAM,CAAE,CAAC,SAASC,EAAM,EAAE,CAACrC,EAAE,OAAO,EAAE,EAAE,MAAM,WAAW,IAAMsC,EAAI,IAAItC,EAAE,IAAI,KAAKiB,EAAKjB,EAAE,EAAI,EAAEe,EAAKf,EAAE,GAAG,EAAE,IAAMO,EAAEhB,EAAQ,EAAE,EAAE,CAAC,SAASS,EAAE,IAAI,WAAW,KAAKuC,EAAK,SAAS,GAAG,CAACxB,EAAKf,EAAE,KAAK,EAAEC,EAAE,EAAED,EAAE,KAAK,aAAa,IAAIS,EAAM6B,EAAI,KAAK,IAAI,KAAK,GAAGrC,CAAC,EAAE,CAAC,CAAC,CAAE,CAAC,CAAC,EAEpU,MAFsU,GAAE,SAASM,EAAE,KAAK,EAEjV,QAAQ,KAAK,CAAC,QAAQ,QAAQA,CAAC,EAAEiC,EAAKxC,EAAE,IAAI,WAAW,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAACO,EAAE,KAAK,EAAEQ,EAAKf,EAAE,CAAC,EAAEA,EAAE,KAAK,aAAa,IAAIS,EAAM,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,SAAU,CAAC,CAAE,CAAC,SAASyB,EAAK,EAAE,CAAC,GAAGlC,EAAE,QAAQ,WAAWA,EAAE,QAAQ,OAAO,OAAOb,EAAO,aAAaa,EAAE,QAAQ,EAAEA,EAAE,OAAO,EAAE,EAAE,MAAM,UAAUY,EAAK,EAAK,EAAE,IAAM0B,EAAI,IAAItC,EAAE,IAAI,KAAKe,EAAKf,EAAE,CAAC,EAAEiB,EAAKjB,EAAE,EAAI,EAAE,SAAS,gBAAgB,gBAAgByC,CAAS,EAAE,IAAMC,MAAW,CAAI1C,EAAE,QAAQ,YAAiB,EAAE,MAAM,OAAOiB,EAAKjB,EAAE,EAAK,EAAEe,EAAKf,EAAE,GAAG,EAAEA,EAAE,KAAK,aAAa,IAAIS,EAAM,EAAE,CAAC,CAAC,EAAE,EAAQkC,MAAU,CAAC,IAAMpC,EAAEhB,EAAQ,EAAE,EAAE,CAAC,SAASS,EAAE,IAAI,YAAY,KAAKuC,EAAK,SAAS,GAAG,CAACxB,EAAKf,EAAE,KAAKC,CAAC,EAAED,EAAE,KAAK,aAAa,IAAIS,EAAM,EAAE6B,EAAI,KAAK,IAAI,KAAK,GAAGrC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,EAAE,EAAE,SAASM,EAAE,KAAK,EAAE,QAAQ,KAAK,CAAC,QAAQ,QAAQA,CAAC,EAAEiC,EAAKxC,EAAE,IAAI,YAAY,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAACO,EAAE,KAAK,EAAEmC,EAAO,CAAE,CAAC,CAAE,EACpyBE,EAAQ,GAAYC,MAAO,CAAID,IAAe,EAAQ,GAAQ5C,EAAE,IAAI,KAAK,EAAEb,EAAO,WAAWwD,EAAM3C,EAAE,IAAI,KAAK,GAAG,EAAO2C,EAAM,EAAE,EAAE,0BAA0B,sBAAsBE,CAAE,CAAC,EAAE1D,EAAO,WAAW0D,EAAG,GAAG,CAClN,CAAC,SAASZ,EAAQ,EAAE,EAAE,CAAsC,GAAlCP,GAAQoB,EAAE,kBAA2BA,EAAE,SAAS,GAAGA,EAAE,SAASA,EAAE,SAASA,EAAE,UAAUA,EAAE,OAAO,OAAO,IAAMvC,EAAEF,EAAOyC,CAAC,EAAE,GAAG,CAACvC,GAAG,CAACD,EAASC,CAAC,EAAE,OAAO,IAAMN,EAAE8B,GAASA,EAAQ,IAAIxB,GAAG,KAAK,IAAI,EAAEwB,EAAQ,EAAE,IAAIA,EAAQ,KAAK,EAAQ,KAAK,IAAMgB,EAAK9C,EAAEA,EAAE,KAAK2B,EAAK,EAAMD,EAAI,GAAG,CAAC,EAAI,IAAI,IAAI1B,EAAEA,EAAE,IAAIM,EAAE,IAAI,CAAE,MAAM,CAAC,MAAO,CAAIoB,EAAI,SAAS,SAAS,QAAiBA,EAAI,SAASA,EAAI,SAASoB,IACnZlD,EAAYG,EAAE,SAAS,SAAS2B,EAAI,QAAQ,IAC/CmB,EAAE,eAAe,EAAEA,EAAE,gBAAgB,EAAEA,EAAE,yBAAyB,EAG/DlB,EAAK,IAAImB,GAAe/C,EAAE,QAAQ,YAAYA,EAAE,QAAQ,WAAiBqC,EAAMrC,CAAC,CAAC,CAAC,SAASgD,EAAShD,EAAEO,EAAEoB,EAAIoB,CAAI,CAAC,GAAE,CAAC,SAASC,EAAS,EAAE,EAAE,EAAI,EAAK,CAEtJ,GAFuJpC,EAAK,EAAI,EAE7Jd,EAAQ,EAAE,CAAC,SAAS,OAAO6B,EAAI,IAAI,EAAE,MAAO,CAC/C,GAAGpB,EAAE,YAAY,CACjB,IAAM0C,EAAM,GAAI,CAAKC,EAAG,kBAAiBA,EAAG,eAAe,CAAE,EAAE/D,EAAO,iBAAiB,QAAQ8D,CAAK,EAAE,EAAO,GAAK,GAAG,CAAC1C,EAAE,MAAM,CAAE,QAAQ,CAAC,EAAO,GAAMpB,EAAO,oBAAoB,QAAQ8D,CAAK,CAAE,CAAC,CACjM,IAAME,EAAG,KAAK,IAAI,EAAQC,MAAU,CAAIpD,EAAE,QAAQ,WAC/C4B,EAAK,IAAImB,IACT,KAAK,IAAI,EAAEI,EAAG,IAAK,SAAS,OAAOxB,EAAI,IAAI,EAAUxC,EAAO,WAAWiE,EAAM,EAAE,EAAE,EAAEjE,EAAO,WAAWiE,EAAM,EAAE,EAChH,EAAE,SAASjE,EAAO,eAAe,CAAIa,EAAE,QAAQ,WAAW4B,EAAK,IAAImB,GAAKb,EAAKlC,CAAC,CAAE,EAAE,GAAG,CAAE,CAGpF,SAAwBqD,EAAe,EAAM,CAAC,GAAK,CAAC,OAAK,UAAU,SAAO,KAAK,aAAW,GAAG,cAAY,GAAG,OAAK,IAAI,OAAK,EAAE,YAAU,GAAM,YAAU,eAAeC,EAAYC,EAASC,EAAU,MAAM,GAAG,CAAC,CAAC,IAAI,GAAGC,EAAE,KAAK,CAAC,CAAC,QAAQ,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,OAAO,EAAQC,EAAShE,EAAa,QAAQ,IAAIA,EAAa,OAER,OAFeJ,MAAc,CAAC,GAAGoE,GAAiBvE,IAAS,OAAY,OAAO,IAAMwE,EAAM,CAACxE,EAAOkC,GAAWrB,EAAEmB,EAAW,EAAEgB,EAASnC,EAAE,CAAC,OAAK,SAAO,aAAW,cAAY,OAAK,OAAK,UAAUuD,CAAQ,CAAC,EAAKvD,EAAE,QAAQ,UAC1gBkC,EAAKlC,CAAC,EAAW2D,IAAQ/C,EAAK,GAAGgD,KACjC,EAAE,MAAM,UAAU7C,EAAKf,EAAE,CAAC,EAAEiB,EAAKjB,EAAE,EAAI,EAAEkC,EAAKlC,CAAC,EAAG,EAAE,CAAC,CAAC,EAAEV,MAAc,CAAC,GAAGoE,GAAiBvE,IAAS,OAAY,OAAO,IAAMa,EAAEb,EAAOkC,GAAQrB,GAAEmC,EAASnC,EAAE,CAAC,OAAK,SAAO,aAAW,cAAY,OAAK,OAAK,UAAUuD,CAAQ,CAAC,CAAE,EAAE,CAACM,EAAKC,EAAOC,EAAWC,EAAYC,EAAKC,EAAKV,CAAS,CAAC,EAAME,EAAyC,gBAAK,MAAM,CAAC,MAAM,CAAC,GAAGJ,EAAM,MAAM,SAAS,WAAW,MAAM,OAAO,OAAO,OAAO,SAAS,IAAI,UAAU,GAAG,WAAWO,EAAK,MAAM,UAAU,OAAO,6BAA6B,KAAK,iCAAiC,QAAQ,OAAO,WAAW,SAAS,eAAe,SAAS,aAAa,CAAC,EAAE,SAAS,iBAAiB,CAAC,EAApV,IAAsV,C,0EApCld,EAAI,uBAA6B,EAAK,8BAClN,EAAK,CAAC,IAAI,EAAE,IAAI,CAAC,EAAQ,EAAU,kBAAsB,EAAO,GAAU,EAAQ,KAAW,MAAS,SAAS,SAAS,SAAS,OAEjI,MAAmB1E,IAAS,SAAcA,EAAO,aAAa,eAAe,CAAC,CAAC,SAASA,EAAO,aAAa,mBAAmB,CAAC,CAAC,SACqD,EAAa,CAAC,YAAY,YAAY,UAAU,aAAa,UAAU,EAAQ,EAAK,GAAI,IAAI,QAAQ,GAAGA,EAAO,WAAWiF,EAAEC,CAAE,CAAC,EAgC2U5E,EAAoB4D,EAAe,CAAC,KAAK,CAAC,KAAKzD,EAAY,MAAM,MAAM,SAAS,aAAa,SAAS,EAAE,WAAW,CAAC,KAAKA,EAAY,OAAO,MAAM,UAAU,aAAa,GAAG,IAAI,GAAG,IAAI,EAAE,KAAK,IAAI,KAAK,GAAG,EAAE,YAAY,CAAC,KAAKA,EAAY,OAAO,MAAM,SAAS,aAAa,GAAG,IAAI,GAAG,IAAI,EAAE,KAAK,IAAI,KAAK,GAAG,EAAE,KAAK,CAAC,KAAKA,EAAY,OAAO,MAAM,QAAQ,aAAa,IAAI,IAAI,EAAE,IAAI,IAAI,KAAK,IAAI,KAAK,GAAG,EAAE,KAAK,CAAC,KAAKA,EAAY,OAAO,MAAM,YAAY,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,EAAE,OAAO,CAAC,KAAKA,EAAY,OAAO,MAAM,UAAU,aAAa,KAAK,IAAI,EAAE,IAAI,MAAM,eAAe,EAAI,EAAE,UAAU,CAAC,KAAKA,EAAY,OAAO,MAAM,cAAc,aAAa,cAAc,YAAY,8BAA8B,YAAY,wFAAwF,EAAE,UAAU,CAAC,KAAKA,EAAY,QAAQ,MAAM,gBAAmB,aAAa,EAAK,CAAC,CAAC,C,OCjDngD,SAAwB0E,EAAS,EAAO,EAAc,CAAC,MAAM,CAAC,YAAY,4IAA+I,QAAQ,sEAAsE,OAAO,0BAA0B,MAAM,oDAAoD,CAAE,C"}