{"version":3,"file":"CountdownTimer.ChbNEoDM.mjs","names":["useRef","useMemo","useState","Fragment","__esmMin","init_ssg_sandbox_shims","init_npm_react_18_3_1","window","te","x","pe","ce","p","init_jsx_runtime","_e","de","useInView","init_framer_motion_DhsWWWsN","init_framer_BWFVvmND","addPropertyControls","RenderTarget","ControlType","useIsStaticRenderer","init_StableId","FONT_FACES","OPACITY","TEXT_STYLES","init_Tokens","SPACE","textStyleCSS","textStyle","useStableId","px","init_FramerStyles","COLOR","wallClock","picked","dateISO","match","time","day","meridiem","hours","minutes","zoneOffset","parts","at","get","part","type","targetInstant","clock","year","month","timeZone","VISITOR","asUTC","Digits","text","value","font","digit","index","split","rest","ms","unit","units","UNIT_MS","CountdownTimer","NUMBER_STYLE","LABEL_STYLE","props","isStatic","onCanvas","ref","inView","scope","target","date","now","setNow","current","id","tick","css","styleOrDefault","numberStyle","numberColor","labelStyle","labelColor","isFinished","shown","UNITS","numberSource","numberFont","labels","labelDays","labelHours","labelMinutes","labelSeconds","root","align","gap","style","whenFinished","finished","hidden","separators","showLabels","TIME_ZONES","TIME_ZONE_TITLES","STYLE_IDS","labelHidden","init_CountdownTimer","a","b","fallback"],"sources":["https:/framerusercontent.com/modules/nYMgNFAwIh2A0ZO1jSoe/DRW2GtthvY3jjjgzxnEe/CountdownTimer.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget,useIsStaticRenderer}from\"framer\";import{Fragment,startTransition,useEffect,useMemo,useRef,useState}from\"react\";import{useInView}from\"framer-motion\";import{TEXT_STYLES}from\"https://framerusercontent.com/modules/nPiTlyBaYqC39GgwEAxP/lmMijsvp9CnA5Ttbn3DB/FramerStyles.js\";import{COLOR,FONT_FACES,OPACITY,SPACE,textStyle,textStyleCSS,px}from\"https://framerusercontent.com/modules/bDvMqzh3tDWq2tuDG5lK/LQny7stYczazFt765EgF/Tokens.js\";import{useStableId}from\"https://framerusercontent.com/modules/qM89JPzalXN7CLmj5aig/p0h5RMTBZxebDc1G5jBj/StableId.js\";const UNIT_MS={days:864e5,hours:36e5,minutes:6e4,seconds:1e3};const UNITS={dhms:[\"days\",\"hours\",\"minutes\",\"seconds\"],dhm:[\"days\",\"hours\",\"minutes\"],dh:[\"days\",\"hours\"],d:[\"days\"]};const VISITOR=\"visitor\";const TIME_ZONES=[VISITOR,\"America/Los_Angeles\",\"America/Denver\",\"America/Chicago\",\"America/New_York\",\"Europe/London\",\"Europe/Berlin\",\"UTC\"];const TIME_ZONE_TITLES=[\"Visitor's Local Time\",\"Pacific\",\"Mountain\",\"Central\",\"Eastern (NYC, Toronto)\",\"UK (London)\",\"Central Europe\",\"UTC\"];const NUMBER_STYLE=\"FCNpCp4qS\"// _H3 big\n;const LABEL_STYLE=\"TJAwtCngh\"// _Text-XS Med\n;const STYLE_IDS=Object.keys(TEXT_STYLES).filter(id=>!TEXT_STYLES[id].name.startsWith(\"[old]\")).sort((a,b)=>TEXT_STYLES[a].name.localeCompare(TEXT_STYLES[b].name));const styleOrDefault=(id,fallback)=>textStyle(id in TEXT_STYLES?id:fallback);/** The picked day plus a typed time (\"18:00\", \"6 PM\", \"6:30pm\") as wall-clock parts, or null when either is invalid. */function wallClock(dateISO,time){const picked=Date.parse(dateISO);const match=/^\\s*(\\d{1,2})(?:[:.](\\d{2}))?\\s*([ap])?\\.?\\s*m?\\.?\\s*$/i.exec(time||\"0:00\");if(!Number.isFinite(picked)||!match)return null;// The Date control stores the picked day as midnight (UTC or the editor's), so the nearest UTC noon is that day\n// wherever the editor was.\nconst day=new Date(picked+12*36e5);const meridiem=match[3]?.toLowerCase();const hours=meridiem?Number(match[1])%12+(meridiem===\"p\"?12:0):Number(match[1]);const minutes=Number(match[2]||0);if(hours>23||minutes>59)return null;return[day.getUTCFullYear(),day.getUTCMonth(),day.getUTCDate(),hours,minutes];}/** How far a time zone is ahead of UTC at an instant, in ms. */function zoneOffset(at,timeZone){// i18n-ignore: parsed into numbers for time zone math, never shown\nconst parts=new Intl.DateTimeFormat(\"en-US\",{timeZone,hourCycle:\"h23\",year:\"numeric\",month:\"numeric\",day:\"numeric\",hour:\"numeric\",minute:\"numeric\",second:\"numeric\"}).formatToParts(new Date(at));const get=type=>Number(parts.find(part=>part.type===type)?.value);return Date.UTC(get(\"year\"),get(\"month\")-1,get(\"day\"),get(\"hour\"),get(\"minute\"),get(\"second\"))-at;}/** The instant a wall-clock time happens in a time zone, or in the visitor's own. */function targetInstant(clock,timeZone){if(!clock)return NaN;const[year,month,day,hours,minutes]=clock;if(timeZone===VISITOR)return new Date(year,month,day,hours,minutes).getTime();const asUTC=Date.UTC(year,month,day,hours,minutes);// Second pass in case daylight saving changes between the first guess and the target.\nreturn asUTC-zoneOffset(asUTC-zoneOffset(asUTC,timeZone),timeZone);}/** Each digit sits in a cell as wide as \"0\" (the font has no tabular figures), so the countdown never changes width as\n *  it ticks. A third day digit adds a cell. */function Digits({value,font}){const text=String(value).padStart(2,\"0\");return /*#__PURE__*/_jsxs(\"span\",{className:\"vcd-number\",style:font,children:[/*#__PURE__*/_jsx(\"span\",{className:\"vcd-sr\",children:text}),text.split(\"\").map((digit,index)=>/*#__PURE__*/_jsxs(\"span\",{className:\"vcd-digit\",\"aria-hidden\":true,children:[/*#__PURE__*/_jsx(\"span\",{className:\"vcd-zero\",children:\"0\"}),/*#__PURE__*/_jsx(\"span\",{className:\"vcd-value\",children:digit})]},text.length-index))]});}function split(ms,units){let rest=Math.max(0,ms);const parts={days:0,hours:0,minutes:0,seconds:0};for(const unit of units){parts[unit]=Math.floor(rest/UNIT_MS[unit]);rest-=parts[unit]*UNIT_MS[unit];}return parts;}/**\n * @framerIntrinsicWidth 400\n * @framerIntrinsicHeight 80\n *\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n */export default function CountdownTimer(props){const{date=\"\",time=\"00:00\",timeZone=VISITOR,units=\"dhms\",showLabels=true,labelDays=\"Days\",labelHours=\"Hours\",labelMinutes=\"Minutes\",labelSeconds=\"Seconds\",separators=false,numberSource=\"style\",numberStyle=NUMBER_STYLE,numberFont,numberColor=COLOR.text,labelStyle=LABEL_STYLE,labelColor=COLOR.text60,align=\"center\",gap=SPACE.s24,whenFinished=\"hide\",finished,style}=props;const isStatic=useIsStaticRenderer();const onCanvas=RenderTarget.current()===RenderTarget.canvas;const ref=useRef(null);const inView=useInView(ref,{amount:.1});const scope=`vcd-${useStableId(props)}`;const target=useMemo(()=>targetInstant(wallClock(date,time),timeZone),[date,time,timeZone]);// The page HTML is rendered once, at publish time, so its numbers are always stale. The server and the first browser\n// render both show hidden zeros (so hydration matches), and the real time fills in right after mount.\nconst[now,setNow]=useState(()=>isStatic?Date.now():null);useEffect(()=>{setNow(current=>current??Date.now());},[]);// Tick on each new second (not every 1000ms from mount), and only while the countdown is on screen.\nuseEffect(()=>{if(isStatic||!inView)return;let id=0;const tick=()=>{startTransition(()=>setNow(Date.now()));id=window.setTimeout(tick,1e3-Date.now()%1e3+10);};tick();return()=>window.clearTimeout(id);},[isStatic,inView]);const css=useMemo(()=>FONT_FACES+textStyleCSS(`.${scope} .vcd-number`,styleOrDefault(numberStyle,NUMBER_STYLE),`color:${numberColor}; display:flex; font-variant-numeric:tabular-nums;`)+textStyleCSS(`.${scope} .vcd-separator`,styleOrDefault(numberStyle,NUMBER_STYLE),`color:${numberColor}; opacity:${OPACITY.subtext};`)+textStyleCSS(`.${scope} .vcd-label`,styleOrDefault(labelStyle,LABEL_STYLE),`color:${labelColor}; white-space:nowrap;`)+`.${scope} .vcd-digit { position:relative; } .${scope} .vcd-zero { visibility:hidden; } `+`.${scope} .vcd-value { position:absolute; top:0; left:50%; transform:translateX(-50%); } `+`.${scope} .vcd-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }`+`.${scope}[data-vcd-pending] .vcd-number { visibility:hidden; }`+// Hidden means gone: the countdown's Framer container leaves the layout, gap included.\n    `*:has(> [data-vcd-hidden]) { display:none !important; }`,[scope,numberStyle,numberColor,labelStyle,labelColor]);const isFinished=now!==null&&Number.isFinite(target)&&now>=target;const shown=UNITS[units]??UNITS.dhms;const parts=split(now===null?0:target-now,shown);// Custom font (e.g. Inter Display, as on Vision) until countdown sizes get their own text style; it overrides the\n// text style, set per breakpoint on the canvas.\nconst font=numberSource===\"custom\"?numberFont:undefined;const labels={days:labelDays,hours:labelHours,minutes:labelMinutes,seconds:labelSeconds};const root={display:\"flex\",justifyContent:align,alignItems:\"flex-start\",gap:px(gap),width:\"100%\",...style};if(isFinished&&whenFinished===\"slot\"&&finished){return /*#__PURE__*/_jsx(\"div\",{ref:ref,className:scope,style:root,children:finished});}// On the canvas a finished countdown stays visible (dimmed at zero) so it can still be styled.\nconst hidden=isFinished&&!onCanvas;return /*#__PURE__*/_jsxs(\"div\",{ref:ref,className:scope,style:{...root,opacity:isFinished?OPACITY.icon:undefined},role:\"timer\",\"aria-live\":\"off\",\"data-vcd-hidden\":hidden?\"\":undefined,\"data-vcd-pending\":now===null?\"\":undefined,children:[/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:css}}),!Number.isFinite(target)?// i18n-ignore: setup hint for the editor, shown only until a valid date is set\n/*#__PURE__*/_jsx(\"span\",{className:\"vcd-label\",children:\"Pick a date and a time like 18:00\"}):shown.map((unit,index)=>/*#__PURE__*/_jsxs(Fragment,{children:[separators&&index>0&&/*#__PURE__*/_jsx(\"span\",{className:\"vcd-separator\",style:font,\"aria-hidden\":true,children:\":\"}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"center\",gap:px(SPACE.s4)},children:[/*#__PURE__*/_jsx(Digits,{value:parts[unit],font:font}),showLabels&&/*#__PURE__*/_jsx(\"span\",{className:\"vcd-label\",children:labels[unit]})]})]},unit))]});}CountdownTimer.displayName=\"<countdown_timer>\";const labelHidden=unit=>props=>!(props.showLabels??true)||!(UNITS[props.units??\"dhms\"]??[]).includes(unit);addPropertyControls(CountdownTimer,{date:{type:ControlType.Date,title:\"Date\",displayTime:false},time:{type:ControlType.String,title:\"Time\",defaultValue:\"00:00\",placeholder:\"18:00 or 6:00 PM\",preventLocalization:true},timeZone:{type:ControlType.Enum,title:\"Time Zone\",options:TIME_ZONES,optionTitles:TIME_ZONE_TITLES,defaultValue:VISITOR,description:\"Visitor's Local Time: the same clock time everywhere (e.g. midnight on Christmas wherever you are). A zone: one moment for everyone (e.g. a livestream).\"},units:{type:ControlType.Enum,title:\"Units\",options:[\"dhms\",\"dhm\",\"dh\",\"d\"],optionTitles:[\"Days → Seconds\",\"Days → Minutes\",\"Days + Hours\",\"Days\"],defaultValue:\"dhms\"},showLabels:{type:ControlType.Boolean,title:\"Labels\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},labelDays:{type:ControlType.String,title:\"Days\",defaultValue:\"Days\",hidden:labelHidden(\"days\")},labelHours:{type:ControlType.String,title:\"Hours\",defaultValue:\"Hours\",hidden:labelHidden(\"hours\")},labelMinutes:{type:ControlType.String,title:\"Minutes\",defaultValue:\"Minutes\",hidden:labelHidden(\"minutes\")},labelSeconds:{type:ControlType.String,title:\"Seconds\",defaultValue:\"Seconds\",hidden:labelHidden(\"seconds\")},separators:{type:ControlType.Boolean,title:\"Separators\",defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\"},numberSource:{type:ControlType.Enum,title:\"Numbers\",options:[\"style\",\"custom\"],optionTitles:[\"Text Style\",\"Custom\"],defaultValue:\"style\",displaySegmentedControl:true},numberFont:{type:ControlType.Font,title:\"Number Font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:72,lineHeight:\"1em\",letterSpacing:\"-0.02em\"},hidden:props=>props.numberSource!==\"custom\"},numberStyle:{type:ControlType.Enum,title:\"Number Style\",hidden:props=>props.numberSource===\"custom\",options:STYLE_IDS,optionTitles:STYLE_IDS.map(id=>TEXT_STYLES[id].name),defaultValue:NUMBER_STYLE,description:\"Framer text styles (new ones appear after the style sync).\"},numberColor:{type:ControlType.Color,title:\"Number Color\",defaultValue:COLOR.text},labelStyle:{type:ControlType.Enum,title:\"Label Style\",options:STYLE_IDS,optionTitles:STYLE_IDS.map(id=>TEXT_STYLES[id].name),defaultValue:LABEL_STYLE,hidden:props=>!(props.showLabels??true)},labelColor:{type:ControlType.Color,title:\"Label Color\",defaultValue:COLOR.text60,hidden:props=>!(props.showLabels??true)},align:{type:ControlType.Enum,title:\"Align\",options:[\"flex-start\",\"center\",\"flex-end\"],optionTitles:[\"Start\",\"Center\",\"End\"],defaultValue:\"center\",displaySegmentedControl:true},gap:{type:ControlType.Number,title:\"Gap\",defaultValue:SPACE.s24,min:0,max:160,step:4,unit:\"px\"},whenFinished:{type:ControlType.Enum,title:\"When Finished\",options:[\"hide\",\"slot\"],optionTitles:[\"Hide\",\"Show Slot\"],defaultValue:\"hide\",displaySegmentedControl:true,description:\"Hide removes it from the layout. To design the slot, set a past date.\"},finished:{type:ControlType.Slot,title:\"Finished\",maxCount:1,hidden:props=>props.whenFinished!==\"slot\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CountdownTimer\",\"slots\":[\"finished\"],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"auto\",\"framerIntrinsicWidth\":\"400\",\"framerIntrinsicHeight\":\"80\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"A,0aAEyW,SAASmC,GAAU,EAAQ,EAAK,CAAC,IAAMC,EAAO,KAAK,MAAMC,CAAO,EAAQC,EAAM,0DAA0D,KAAKC,GAAM,MAAM,EAAE,GAAG,CAAC,OAAO,SAASH,CAAM,GAAG,CAACE,EAAM,OAAO,KAE/iB,IAAME,EAAI,IAAI,KAAKJ,EAAO,KAAO,EAAQK,EAASH,EAAM,EAAE,EAAE,YAAY,EAAQI,EAAMD,EAAS,OAAOH,EAAM,EAAE,EAAE,IAAIG,IAAW,IAAI,GAAG,GAAG,OAAOH,EAAM,EAAE,EAAQK,EAAQ,OAAOL,EAAM,IAAI,CAAC,EAAsC,OAAjCI,EAAM,IAAIC,EAAQ,GAAU,KAAW,CAACH,EAAI,eAAe,EAAEA,EAAI,YAAY,EAAEA,EAAI,WAAW,EAAEE,EAAMC,CAAO,CAAE,CAAiE,SAASC,EAAW,EAAG,EAAS,CAC/Y,IAAMC,EAAM,IAAI,KAAK,eAAe,QAAQ,CAAC,WAAS,UAAU,MAAM,KAAK,UAAU,MAAM,UAAU,IAAI,UAAU,KAAK,UAAU,OAAO,UAAU,OAAO,SAAS,CAAC,CAAC,CAAC,cAAc,IAAI,KAAKC,CAAE,CAAC,EAAQC,EAAI,GAAM,OAAOF,EAAM,KAAK,GAAMG,EAAK,OAAOC,CAAI,CAAC,EAAE,KAAK,EAAE,OAAO,KAAK,IAAIF,EAAI,MAAM,EAAEA,EAAI,OAAO,EAAE,EAAEA,EAAI,KAAK,EAAEA,EAAI,MAAM,EAAEA,EAAI,QAAQ,EAAEA,EAAI,QAAQ,CAAC,EAAED,CAAG,CAAsF,SAASI,GAAc,EAAM,EAAS,CAAC,GAAG,CAACC,EAAM,MAAO,KAAI,GAAK,CAACC,EAAKC,EAAMb,EAAIE,EAAMC,GAASQ,EAAM,GAAGG,IAAWC,EAAQ,OAAO,IAAI,KAAKH,EAAKC,EAAMb,EAAIE,EAAMC,CAAO,CAAC,CAAC,QAAQ,EAAE,IAAMa,EAAM,KAAK,IAAIJ,EAAKC,EAAMb,EAAIE,EAAMC,CAAO,EACjqB,OAAOa,EAAMZ,EAAWY,EAAMZ,EAAWY,EAAMF,CAAQ,EAAEA,CAAQ,CAAE,CACpB,SAASG,GAAO,CAAC,QAAM,QAAM,CAAC,IAAMC,EAAK,OAAOC,CAAK,CAAC,CAAC,SAAS,EAAE,GAAG,EAAE,MAAoB,gBAAM,OAAO,CAAC,UAAU,aAAa,MAAMC,EAAK,SAAS,CAAc,gBAAK,OAAO,CAAC,UAAU,SAAS,SAASF,CAAI,CAAC,EAAEA,EAAK,MAAM,EAAE,CAAC,CAAC,KAAK,EAAM,IAAqB,gBAAM,OAAO,CAAC,UAAU,YAAY,cAAc,GAAK,SAAS,CAAc,gBAAK,OAAO,CAAC,UAAU,WAAW,SAAS,GAAG,CAAC,EAAe,gBAAK,OAAO,CAAC,UAAU,YAAY,SAASG,CAAK,CAAC,CAAC,CAAC,EAAEH,EAAK,OAAOI,CAAK,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,SAASC,GAAM,EAAG,EAAM,CAAC,IAAIC,EAAK,KAAK,IAAI,EAAEC,CAAE,EAAQpB,EAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,IAAI,IAAMqB,KAAQC,EAAO,EAAMD,GAAM,KAAK,MAAMF,EAAKI,EAAQF,EAAK,EAAE,GAAMrB,EAAMqB,GAAME,EAAQF,GAAO,OAAOrB,CAAM,CAM3tB,SAAwBwB,EAAe,EAAM,CAAC,GAAK,CAAC,OAAK,GAAG,OAAK,QAAQ,WAASd,EAAQ,QAAM,OAAO,aAAW,GAAK,YAAU,OAAO,aAAW,QAAQ,eAAa,UAAU,eAAa,UAAU,aAAW,GAAM,eAAa,QAAQ,cAAYe,EAAa,aAAW,cAAYpC,EAAM,KAAK,aAAWqC,EAAY,aAAWrC,EAAM,OAAO,QAAM,SAAS,MAAIN,EAAM,IAAI,eAAa,OAAO,WAAS,UAAO4C,EAAYC,EAASnD,EAAoB,EAAQoD,GAAStD,EAAa,QAAQ,IAAIA,EAAa,OAAauD,EAAI3E,EAAO,IAAI,EAAQ4E,EAAO5D,GAAU2D,EAAI,CAAC,OAAO,EAAE,CAAC,EAAQE,EAAM,OAAO9C,GAAYyC,CAAK,IAAUM,EAAO7E,MAAYiD,GAAcf,GAAU4C,EAAKxC,CAAI,EAAEe,CAAQ,EAAE,CAACyB,EAAKxC,EAAKe,CAAQ,CAAC,EAEhsB,CAAC0B,EAAIC,GAAQ/E,MAAauE,EAAS,KAAK,IAAI,EAAE,IAAI,EAAE9D,MAAc,CAACsE,EAAO,GAASC,GAAS,KAAK,IAAI,CAAC,CAAE,EAAE,CAAC,CAAC,EACjHvE,MAAc,CAAC,GAAG8D,GAAU,CAACG,EAAO,OAAO,IAAIO,EAAG,EAAQC,MAAS,CAAC5E,MAAoByE,EAAO,KAAK,IAAI,CAAC,CAAC,EAAE,EAAG1E,EAAO,WAAW6E,EAAK,IAAI,KAAK,IAAI,EAAE,IAAI,EAAE,CAAE,EAAS,OAAPA,EAAK,MAAY7E,EAAO,aAAa4E,CAAE,CAAE,EAAE,CAACV,EAASG,CAAM,CAAC,EAAE,IAAMS,GAAIpF,MAAYuB,EAAWK,EAAa,IAAIgD,EAAM,cAAcS,EAAeC,EAAYjB,CAAY,EAAE,SAASkB,EAAY,mDAAmD,EAAE3D,EAAa,IAAIgD,EAAM,iBAAiBS,EAAeC,EAAYjB,CAAY,EAAE,SAASkB,EAAY,YAAY/D,EAAQ,QAAQ,EAAE,EAAEI,EAAa,IAAIgD,EAAM,aAAaS,EAAeG,EAAWlB,CAAW,EAAE,SAASmB,EAAW,sBAAsB,EAAE,IAAIb,EAAM,sCAAsCA,EAAM,qCAAwCA,EAAM,mFAAsFA,EAAM,oHAAuHA,EAAM,8GACl5B,CAACA,EAAMU,EAAYC,EAAYC,EAAWC,CAAU,CAAC,EAAQC,EAAWX,IAAM,MAAM,OAAO,SAASF,CAAM,GAAGE,GAAKF,EAAac,EAAMC,EAAM1B,IAAQ0B,EAAM,KAAWhD,GAAMkB,GAAMiB,IAAM,KAAK,EAAEF,EAAOE,EAAIY,CAAK,EAErQhC,EAAKkC,IAAe,SAASC,EAAW,IAAA,GAAgBC,GAAO,CAAC,KAAKC,EAAU,MAAMC,EAAW,QAAQC,EAAa,QAAQC,CAAY,EAAQC,EAAK,CAAC,QAAQ,OAAO,eAAeC,EAAM,WAAW,aAAa,IAAItE,EAAGuE,CAAG,EAAE,MAAM,OAAO,GAAGC,EAAK,EAAE,GAAGb,GAAYc,IAAe,QAAQC,EAAU,MAAoB,gBAAK,MAAM,CAAK,MAAI,UAAU7B,EAAM,MAAMwB,EAAK,SAASK,CAAQ,CAAC,EACjY,IAAMC,GAAOhB,GAAY,CAACjB,GAAS,MAAoB,gBAAM,MAAM,CAAK,MAAI,UAAUG,EAAM,MAAM,CAAC,GAAGwB,EAAK,QAAQV,EAAWlE,EAAQ,KAAK,IAAA,EAAS,EAAE,KAAK,QAAQ,YAAY,MAAM,kBAAkBkF,GAAO,GAAG,IAAA,GAAU,mBAAmB3B,IAAM,KAAK,GAAG,IAAA,GAAU,SAAS,CAAc,gBAAK,QAAQ,CAAC,wBAAwB,CAAC,OAAOK,EAAG,CAAC,CAAC,EAAG,OAAO,SAASP,CAAM,EAC1Qc,EAAM,KAAK,EAAK,IAAqB,gBAAMzF,EAAS,CAAC,SAAS,CAACyG,GAAY9C,EAAM,GAAgB,gBAAK,OAAO,CAAC,UAAU,gBAAgB,MAAMF,EAAK,cAAc,GAAK,SAAS,GAAG,CAAC,EAAe,gBAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,WAAW,SAAS,IAAI5B,EAAGJ,EAAM,EAAE,CAAC,EAAE,SAAS,CAAc,gBAAK6B,GAAO,CAAC,MAAMZ,GAAMqB,GAAW,MAAI,CAAC,EAAE2C,GAAyB,gBAAK,OAAO,CAAC,UAAU,YAAY,SAASb,GAAO9B,EAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAEA,CAAI,CAAC,EAAphB,gBAAK,OAAO,CAAC,UAAU,YAAY,SAAS,mCAAmC,CAAC,CAAqc,CAAC,CAAC,CAAE,C,sFArB+G,EAAQ,CAAC,KAAK,MAAM,MAAM,KAAK,QAAQ,IAAI,QAAQ,GAAG,EAAQ,EAAM,CAAC,KAAK,CAAC,OAAO,QAAQ,UAAU,SAAS,EAAE,IAAI,CAAC,OAAO,QAAQ,SAAS,EAAE,GAAG,CAAC,OAAO,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,EAAQ,EAAQ,UAAgB,EAAW,CAACX,EAAQ,sBAAsB,iBAAiB,kBAAkB,mBAAmB,gBAAgB,gBAAgB,KAAK,EAAQ,EAAiB,CAAC,uBAAuB,UAAU,WAAW,UAAU,yBAAyB,cAAc,iBAAiB,KAAK,EAAQ,EAAa,YACjoC,EAAY,YACZ,EAAU,OAAO,KAAK7B,CAAW,CAAC,CAAC,OAAO,GAAI,CAACA,EAAYyD,EAAG,CAAC,KAAK,WAAW,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,IAAIzD,EAAYyF,EAAE,CAAC,KAAK,cAAczF,EAAY0F,EAAE,CAAC,IAAI,CAAC,EAAQ,GAAgB,EAAG,IAAWtF,EAAUqD,KAAMzD,EAAYyD,EAAGkC,CAAQ,EAmBwT,EAAe,YAAY,oBAA0B,EAAY,GAAM,GAAO,EAAE7C,EAAM,YAAY,KAAO,EAAEqB,EAAMrB,EAAM,OAAO,SAAS,CAAC,EAAA,CAAG,SAASN,CAAI,EAAE/C,EAAoBkD,EAAe,CAAC,KAAK,CAAC,KAAKhD,EAAY,KAAK,MAAM,OAAO,YAAY,EAAK,EAAE,KAAK,CAAC,KAAKA,EAAY,OAAO,MAAM,OAAO,aAAa,QAAQ,YAAY,mBAAmB,oBAAoB,EAAI,EAAE,SAAS,CAAC,KAAKA,EAAY,KAAK,MAAM,YAAY,QAAQyF,EAAW,aAAaC,EAAiB,aAAaxD,EAAQ,YAAY,0JAA0J,EAAE,MAAM,CAAC,KAAKlC,EAAY,KAAK,MAAM,QAAQ,QAAQ,CAAC,OAAO,MAAM,KAAK,GAAG,EAAE,aAAa,CAAC,iBAAiB,iBAAiB,eAAe,MAAM,EAAE,aAAa,MAAM,EAAE,WAAW,CAAC,KAAKA,EAAY,QAAQ,MAAM,SAAS,aAAa,GAAK,aAAa,OAAO,cAAc,MAAM,EAAE,UAAU,CAAC,KAAKA,EAAY,OAAO,MAAM,OAAO,aAAa,OAAO,OAAO4F,EAAY,MAAM,CAAC,EAAE,WAAW,CAAC,KAAK5F,EAAY,OAAO,MAAM,QAAQ,aAAa,QAAQ,OAAO4F,EAAY,OAAO,CAAC,EAAE,aAAa,CAAC,KAAK5F,EAAY,OAAO,MAAM,UAAU,aAAa,UAAU,OAAO4F,EAAY,SAAS,CAAC,EAAE,aAAa,CAAC,KAAK5F,EAAY,OAAO,MAAM,UAAU,aAAa,UAAU,OAAO4F,EAAY,SAAS,CAAC,EAAE,WAAW,CAAC,KAAK5F,EAAY,QAAQ,MAAM,aAAa,aAAa,GAAM,aAAa,OAAO,cAAc,MAAM,EAAE,aAAa,CAAC,KAAKA,EAAY,KAAK,MAAM,UAAU,QAAQ,CAAC,QAAQ,QAAQ,EAAE,aAAa,CAAC,aAAa,QAAQ,EAAE,aAAa,QAAQ,wBAAwB,EAAI,EAAE,WAAW,CAAC,KAAKA,EAAY,KAAK,MAAM,cAAc,SAAS,WAAW,gBAAgB,aAAa,aAAa,CAAC,SAAS,GAAG,WAAW,MAAM,cAAc,SAAS,EAAE,OAAO,GAAOmD,EAAM,eAAe,QAAQ,EAAE,YAAY,CAAC,KAAKnD,EAAY,KAAK,MAAM,eAAe,OAAO,GAAOmD,EAAM,eAAe,SAAS,QAAQwC,EAAU,aAAaA,EAAU,IAAI,GAAItF,EAAYyD,EAAG,CAAC,IAAI,EAAE,aAAab,EAAa,YAAY,4DAA4D,EAAE,YAAY,CAAC,KAAKjD,EAAY,MAAM,MAAM,eAAe,aAAaa,EAAM,IAAI,EAAE,WAAW,CAAC,KAAKb,EAAY,KAAK,MAAM,cAAc,QAAQ2F,EAAU,aAAaA,EAAU,IAAI,GAAItF,EAAYyD,EAAG,CAAC,IAAI,EAAE,aAAaZ,EAAY,OAAO,GAAO,EAAEC,EAAM,YAAY,GAAK,EAAE,WAAW,CAAC,KAAKnD,EAAY,MAAM,MAAM,cAAc,aAAaa,EAAM,OAAO,OAAO,GAAO,EAAEsC,EAAM,YAAY,GAAK,EAAE,MAAM,CAAC,KAAKnD,EAAY,KAAK,MAAM,QAAQ,QAAQ,CAAC,aAAa,SAAS,UAAU,EAAE,aAAa,CAAC,QAAQ,SAAS,KAAK,EAAE,aAAa,SAAS,wBAAwB,EAAI,EAAE,IAAI,CAAC,KAAKA,EAAY,OAAO,MAAM,MAAM,aAAaO,EAAM,IAAI,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,KAAK,IAAI,EAAE,aAAa,CAAC,KAAKP,EAAY,KAAK,MAAM,gBAAgB,QAAQ,CAAC,OAAO,MAAM,EAAE,aAAa,CAAC,OAAO,WAAW,EAAE,aAAa,OAAO,wBAAwB,GAAK,YAAY,uEAAuE,EAAE,SAAS,CAAC,KAAKA,EAAY,KAAK,MAAM,WAAW,SAAS,EAAE,OAAO,GAAOmD,EAAM,eAAe,MAAM,CAAC,CAAC,C"}