{"version":3,"file":"CountdownBanner.CNd04Py6.mjs","names":["set","p","React.useState","React.useRef","React.useCallback","_Fragment"],"sources":["https:/framerusercontent.com/modules/K2ieQUDCGIxcY4HFaR7U/KuvL40SwRn5RUB6i0RRX/CountdownBanner.js"],"sourcesContent":["// NavOfferProfileBar.tsx\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType}from\"framer\";/* ---------------- Helpers ---------------- */function deepGet(obj,path){if(!obj||!path)return undefined;return path.split(\".\").reduce((acc,part)=>{if(acc&&typeof acc===\"object\")return acc[part];return undefined;},obj);}function getFromLocalStorage(key){try{if(typeof window===\"undefined\")return null;const raw=window.localStorage.getItem(key);if(!raw)return null;try{return JSON.parse(raw);}catch{return raw;}}catch{return null;}}function getFromSessionStorage(key){try{if(typeof window===\"undefined\")return null;const raw=window.sessionStorage.getItem(key);return raw!=null?String(raw):null;}catch{return null;}}function getSessionTime(key){try{if(typeof window===\"undefined\")return null;const raw=window.sessionStorage.getItem(key);if(!raw)return null;const n=Number(raw);return Number.isFinite(n)?n:null;}catch{return null;}}function setSessionTime(key,value){try{if(typeof window===\"undefined\")return;window.sessionStorage.setItem(key,String(value));}catch{}}function collectStrings(input,out){if(input==null)return;const t=typeof input;if(t===\"string\")out.push(input);else if(t===\"number\"||t===\"boolean\")out.push(String(input));else if(Array.isArray(input))input.forEach(v=>collectStrings(v,out));else if(t===\"object\")Object.values(input).forEach(v=>collectStrings(v,out));}function extractGenderToTriState(input){if(input==null)return undefined;if(typeof input===\"object\"&&!Array.isArray(input)){const direct=input.value??input.label??input.name??input.text;if(typeof direct===\"string\")input=direct;}const strings=[];collectStrings(input,strings);if(strings.length===0)return undefined;const v=strings.join(\" \").trim().toLowerCase();const tokens=v.split(/[^a-z]+/g).filter(Boolean);const set=new Set(tokens);const FEMALE=[\"female\",\"woman\",\"women\",\"girl\",\"f\",\"feminine\",\"lady\"];const MALE=[\"male\",\"man\",\"men\",\"boy\",\"m\",\"masculine\",\"gentleman\",\"gent\"];if(FEMALE.some(t=>set.has(t)))return\"female\";if(MALE.some(t=>set.has(t)))return\"male\";return\"other\";}function normaliseCoupon(s){return s.trim().toLowerCase();}function parseAllowedCoupons(csv){if(!csv||!csv.trim())return[];return csv.split(\",\").map(x=>normaliseCoupon(x)).filter(Boolean);}/**\n * Matches when:\n * - session value exactly matches any allowed coupon; OR\n * - session value contains multiple coupons separated by commas/spaces; OR\n * - session value is JSON array of coupons\n */function sessionCouponMatches(sessionValueRaw,allowed){if(!sessionValueRaw)return false;if(!allowed||allowed.length===0)return false;const raw=sessionValueRaw.trim();if(!raw)return false;// Try JSON array\ntry{const parsed=JSON.parse(raw);if(Array.isArray(parsed)){const set=new Set(parsed.map(x=>normaliseCoupon(String(x))));return allowed.some(a=>set.has(a));}}catch{// ignore\n}// Split by common delimiters\nconst parts=raw.split(/[\\s,;|]+/g).map(x=>normaliseCoupon(x)).filter(Boolean);if(parts.length===0)return false;const set=new Set(parts);return allowed.some(a=>set.has(a));}const defaultMaleSVG='data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"128\" height=\"128\"><defs><clipPath id=\"r\"><circle cx=\"64\" cy=\"64\" r=\"64\"/></clipPath></defs><g clip-path=\"url(%23r)\"><rect width=\"128\" height=\"128\" fill=\"%23DDE7F5\"/><circle cx=\"64\" cy=\"50\" r=\"26\" fill=\"%2390A7C4\"/><rect x=\"18\" y=\"86\" width=\"92\" height=\"60\" rx=\"30\" fill=\"%236E86A6\"/></g></svg>';const defaultFemaleSVG='data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"128\" height=\"128\"><defs><clipPath id=\"r\"><circle cx=\"64\" cy=\"64\" r=\"64\"/></clipPath></defs><g clip-path=\"url(%23r)\"><rect width=\"128\" height=\"128\" fill=\"%23F7E7EC\"/><circle cx=\"64\" cy=\"50\" r=\"26\" fill=\"%23D48FA8\"/><rect x=\"18\" y=\"86\" width=\"92\" height=\"60\" rx=\"30\" fill=\"%23B76C88\"/></g></svg>';const defaultOtherSVG='data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"128\" height=\"128\"><defs><clipPath id=\"r\"><circle cx=\"64\" cy=\"64\" r=\"64\"/></clipPath></defs><g clip-path=\"url(%23r)\"><rect width=\"128\" height=\"128\" fill=\"%23EAEAEA\"/><circle cx=\"64\" cy=\"50\" r=\"26\" fill=\"%23999999\"/><rect x=\"18\" y=\"86\" width=\"92\" height=\"60\" rx=\"30\" fill=\"%23777777\"/></g></svg>';/* ---------------- Component ---------------- */export default function NavOfferProfileBar(p){const props={useStorage:true,nameStorageKey:\"cc_result_hc\",namePath:\"first_name\",fallbackName:\"Member\",genderStorageKey:\"cento_match_gender_age\",fallbackGender:\"other\",logoImage:undefined,logoMaxWidth:140,logoMaxHeight:32,maleIcon:undefined,femaleIcon:undefined,otherIcon:undefined,profileIconSize:32,navBg:\"#ffffff\",navHeight:65,navPaddingXDesktop:60,navPaddingYDesktop:24,navPaddingMobile:24,navBorderBottomColour:\"rgba(15,23,42,0.06)\",navBorderBottomWidth:1,sticky:true,stickyTop:0,mobileBreakpoint:768,navMaxWidth:0,gapLogoOffer:32,gapOfferProfile:24,offerBg:\"#0F172A\",offerRadius:999,offerPaddingXDesktop:18,offerPaddingYDesktop:10,offerPaddingMobile:16,offerMobileMarginTop:8,offerMobileMarginBottom:8,offerOuterPaddingMobile:0,// Coupon gating defaults\nallowedCouponsCsv:\"\",couponSessionKey:\"cc_coupon\",labelText:\"Welcome back\",labelSize:11,labelWeight:500,labelColour:\"rgba(15,23,42,0.6)\",nameFont:undefined,nameSize:14,nameWeight:600,nameColour:\"#111827\",check1Text:\"Discount applied\",check2Text:\"Spot reserved for next cohort\",showCheck2:true,checkFont:undefined,checkSize:12,checkWeight:500,checkColour:\"#E5E7EB\",checkIconColour:\"#22C55E\",checkRowGap:2,showTimer:true,timerMinutes:30,timerStorageKey:\"cc_banner_timer_start\",timerLabel:\"Time left\",timerFont:undefined,timerSize:12,timerWeight:600,timerColour:\"#0F172A\",timerBadgeBg:\"#FACC15\",timerBadgeRadius:999,timerBadgePaddingX:12,timerBadgePaddingY:6,timerMaxWidth:110,...p};const[mounted,setMounted]=React.useState(false);React.useEffect(()=>setMounted(true),[]);const[isMobile,setIsMobile]=React.useState(()=>{if(typeof window===\"undefined\")return false;return window.innerWidth<props.mobileBreakpoint;});React.useEffect(()=>{if(typeof window===\"undefined\")return;const onResize=()=>setIsMobile(window.innerWidth<props.mobileBreakpoint);window.addEventListener(\"resize\",onResize);return()=>window.removeEventListener(\"resize\",onResize);},[props.mobileBreakpoint]);const[mobileNavVisible,setMobileNavVisible]=React.useState(true);const lastScrollRef=React.useRef(0);React.useEffect(()=>{if(typeof window===\"undefined\")return;lastScrollRef.current=window.scrollY||window.pageYOffset||0;const onScroll=()=>{const y=window.scrollY||window.pageYOffset||0;if(!isMobile){setMobileNavVisible(true);lastScrollRef.current=y;return;}const TOP_REVEAL_PX=2;if(y<=TOP_REVEAL_PX){setMobileNavVisible(true);lastScrollRef.current=y;return;}const delta=y-lastScrollRef.current;const threshold=4;if(Math.abs(delta)<threshold)return;setMobileNavVisible(delta<=0);lastScrollRef.current=y;};window.addEventListener(\"scroll\",onScroll,{passive:true});return()=>window.removeEventListener(\"scroll\",onScroll);},[isMobile]);const[displayName,setDisplayName]=React.useState(props.useStorage?null:props.fallbackName||null);const[gender,setGender]=React.useState(props.fallbackGender);const loadFromStorage=React.useCallback(()=>{if(!props.useStorage||typeof window===\"undefined\"){setDisplayName(props.fallbackName||null);setGender(props.fallbackGender);return;}const rawNameSource=getFromLocalStorage(props.nameStorageKey);let resolvedName=null;if(rawNameSource!=null){if(typeof rawNameSource===\"object\"){const maybe=deepGet(rawNameSource,props.namePath);if(typeof maybe===\"string\"&&maybe.trim().length>0){resolvedName=maybe.trim();}}else if(typeof rawNameSource===\"string\"&&rawNameSource.trim().length>0){resolvedName=rawNameSource.trim();}}setDisplayName(resolvedName);const rawGenderSource=getFromLocalStorage(props.genderStorageKey);const parsedGender=extractGenderToTriState(rawGenderSource)??props.fallbackGender;setGender(parsedGender);},[props.useStorage,props.nameStorageKey,props.namePath,props.genderStorageKey,props.fallbackName,props.fallbackGender]);React.useEffect(()=>loadFromStorage(),[loadFromStorage]);React.useEffect(()=>{if(typeof window===\"undefined\")return;const onStorage=e=>{if(!e.key)return;if(e.key===props.nameStorageKey||e.key===props.genderStorageKey){loadFromStorage();}};window.addEventListener(\"storage\",onStorage);return()=>window.removeEventListener(\"storage\",onStorage);},[loadFromStorage,props.nameStorageKey,props.genderStorageKey]);const hasIdentity=displayName!=null&&displayName.trim().length>0;const avatarSrc=gender===\"male\"?props.maleIcon&&props.maleIcon.length>0?props.maleIcon:defaultMaleSVG:gender===\"female\"?props.femaleIcon&&props.femaleIcon.length>0?props.femaleIcon:defaultFemaleSVG:props.otherIcon&&props.otherIcon.length>0?props.otherIcon:defaultOtherSVG;// Coupon gating state\nconst[couponEligible,setCouponEligible]=React.useState(false);React.useEffect(()=>{if(typeof window===\"undefined\")return;const allowed=parseAllowedCoupons(props.allowedCouponsCsv);const recompute=()=>{const sessionCoupon=getFromSessionStorage(props.couponSessionKey);setCouponEligible(sessionCouponMatches(sessionCoupon,allowed));};recompute();// Keep checking lightly - coupon may be set after load\nconst id=window.setInterval(recompute,1e3);const onFocus=()=>recompute();const onVis=()=>{if(document.visibilityState===\"visible\")recompute();};window.addEventListener(\"focus\",onFocus);document.addEventListener(\"visibilitychange\",onVis);return()=>{window.clearInterval(id);window.removeEventListener(\"focus\",onFocus);document.removeEventListener(\"visibilitychange\",onVis);};},[props.allowedCouponsCsv,props.couponSessionKey]);/* ---------------- Timer ---------------- */const[remainingMs,setRemainingMs]=React.useState(Math.max(1,props.timerMinutes)*60*1e3);const startRef=React.useRef(null);React.useEffect(()=>{if(!props.showTimer||typeof window===\"undefined\"){setRemainingMs(Math.max(1,props.timerMinutes)*60*1e3);return;}const durationMs=Math.max(1,props.timerMinutes)*60*1e3;const now=Date.now();let start=getSessionTime(props.timerStorageKey);if(start==null||now-start>=durationMs){start=now;setSessionTime(props.timerStorageKey,start);}startRef.current=start;setRemainingMs(Math.max(0,durationMs-(now-start)));const id=window.setInterval(()=>{const nowTick=Date.now();const currentStart=startRef.current??nowTick;const elapsed=nowTick-currentStart;if(elapsed>=durationMs){const newStart=nowTick;startRef.current=newStart;setSessionTime(props.timerStorageKey,newStart);setRemainingMs(durationMs);}else{setRemainingMs(Math.max(0,durationMs-elapsed));}},1e3);return()=>window.clearInterval(id);},[props.showTimer,props.timerMinutes,props.timerStorageKey]);const totalSeconds=Math.max(0,Math.floor(remainingMs/1e3));const minutes=Math.floor(totalSeconds/60);const seconds=totalSeconds%60;const timerText=minutes.toString().padStart(2,\"0\")+\":\"+seconds.toString().padStart(2,\"0\");const nameFontFamily=props.nameFont?.family||props.nameFont?.fontFamily||\"system-ui, -apple-system, Arial\";const nameFontWeight=props.nameFont?.style?.fontWeight||props.nameWeight;const checkFontFamily=props.checkFont?.family||props.checkFont?.fontFamily||\"system-ui, -apple-system, Arial\";const checkFontWeight=props.checkFont?.style?.fontWeight||props.checkWeight;const timerFontFamily=props.timerFont?.family||props.timerFont?.fontFamily||\"system-ui, -apple-system, Arial\";const timerFontWeight=props.timerFont?.style?.fontWeight||props.timerWeight;// Checks are always shown if offer is shown\nconst showFirstCheck=!!props.check1Text&&props.check1Text.trim().length>0;const showSecondCheck=props.showCheck2&&!!props.check2Text&&props.check2Text.trim().length>0;const activeCheckCount=(showFirstCheck?1:0)+(showSecondCheck?1:0);const hasChecks=activeCheckCount>0;const hasTimer=mounted&&props.showTimer;const hasAnyOfferContent=hasChecks||hasTimer;// Offer shows only when coupon eligible and there is something to show\nconst showOfferCard=couponEligible&&hasAnyOfferContent;/* ---------------- Styles ---------------- */const rootStyle={width:\"100%\",boxSizing:\"border-box\",position:props.sticky?\"sticky\":\"relative\",top:props.sticky?props.stickyTop:undefined,zIndex:40,background:props.navBg,transform:isMobile&&!mobileNavVisible?\"translateY(-110%)\":\"translateY(0)\",transition:\"transform 0.2s ease-out\"};const navOuterStyle={width:\"100%\",boxSizing:\"border-box\",background:props.navBg,borderBottom:props.navBorderBottomWidth>0?`${props.navBorderBottomWidth}px solid ${props.navBorderBottomColour}`:\"none\"};const navInnerStyle={width:\"100%\",maxWidth:props.navMaxWidth>0?props.navMaxWidth:\"none\",margin:\"0 auto\",boxSizing:\"border-box\",height:props.navHeight,display:\"flex\",alignItems:\"center\",padding:isMobile?props.navPaddingMobile:`${props.navPaddingYDesktop}px ${props.navPaddingXDesktop}px`};const navRowStyle=isMobile?{display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\",width:\"100%\",boxSizing:\"border-box\"}:{display:\"grid\",gridTemplateColumns:\"1fr auto 1fr\",alignItems:\"center\",width:\"100%\",boxSizing:\"border-box\",columnGap:Math.max(0,Math.min(props.gapLogoOffer,props.gapOfferProfile))};// Force grid placement on desktop so profile never slides into the offer slot\nconst gridColLogo=!isMobile?{gridColumn:\"1 / 2\"}:{};const gridColOffer=!isMobile?{gridColumn:\"2 / 3\"}:{};const gridColProfile=!isMobile?{gridColumn:\"3 / 4\"}:{};const logoWrapper={...gridColLogo,display:\"flex\",alignItems:\"center\",justifyContent:\"flex-start\",flex:\"0 0 auto\",minWidth:0,justifySelf:\"start\"};const logoImgStyle={maxWidth:props.logoMaxWidth,maxHeight:props.logoMaxHeight,width:\"auto\",height:\"auto\",objectFit:\"contain\"};const desktopOfferWrapper={...gridColOffer,display:mounted&&!isMobile&&showOfferCard?\"flex\":\"none\",justifySelf:\"center\",alignSelf:\"center\",minWidth:0,width:520,maxWidth:520};const profileWrapper={...gridColProfile,display:hasIdentity?\"flex\":\"none\",alignItems:\"center\",justifyContent:\"flex-end\",flex:\"0 0 auto\",minWidth:0,justifySelf:\"end\"};const profileAvatarStyle={width:props.profileIconSize,height:props.profileIconSize,borderRadius:\"999px\",objectFit:\"cover\",flexShrink:0};const profileTextCol={display:\"flex\",flexDirection:\"column\",gap:2,marginLeft:10,minWidth:0};const labelStyle={fontSize:props.labelSize,fontWeight:props.labelWeight,color:props.labelColour,textTransform:\"uppercase\",letterSpacing:.3,lineHeight:1.2,whiteSpace:\"nowrap\"};const nameStyle={fontFamily:nameFontFamily,fontSize:props.nameSize,fontWeight:nameFontWeight,color:props.nameColour,lineHeight:1.3,whiteSpace:\"nowrap\",overflow:\"hidden\",textOverflow:\"ellipsis\",maxWidth:isMobile?140:160};const offerCardCommon={background:props.offerBg,borderRadius:props.offerRadius,display:\"flex\",alignItems:\"center\",justifyContent:\"flex-start\",gap:10,width:\"100%\",boxSizing:\"border-box\",minWidth:0,minHeight:42};const offerCardDesktop={...offerCardCommon,padding:`${props.offerPaddingYDesktop}px ${props.offerPaddingXDesktop}px`,maxWidth:520};const offerCardMobile={...offerCardCommon,padding:props.offerPaddingMobile};const checksCol={display:hasChecks?\"flex\":\"none\",flexDirection:\"column\",gap:props.checkRowGap,flex:1,minWidth:0};const checkRow={display:\"flex\",alignItems:\"center\",gap:6,minWidth:0};const checkIconStyle={width:16,height:16,borderRadius:999,border:`1.5px solid ${props.checkIconColour}`,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",flexShrink:0,background:\"transparent\"};const checkTextStyle={fontFamily:checkFontFamily,fontSize:props.checkSize,fontWeight:checkFontWeight,color:props.checkColour,lineHeight:1.3,minWidth:0,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"};const timerWrapper={display:hasTimer?\"flex\":\"none\",flexShrink:0,alignItems:\"center\",justifyContent:\"flex-end\",maxWidth:Math.max(40,props.timerMaxWidth),minWidth:0,overflow:\"hidden\"};const timerBadge={display:\"block\",maxWidth:\"100%\",minWidth:0,overflow:\"hidden\",padding:`${props.timerBadgePaddingY}px ${props.timerBadgePaddingX}px`,borderRadius:props.timerBadgeRadius,background:props.timerBadgeBg,color:props.timerColour,fontFamily:timerFontFamily,fontSize:props.timerSize,fontWeight:timerFontWeight,lineHeight:1.1,whiteSpace:\"nowrap\"};const timerTextClip={display:\"block\",overflow:\"hidden\",whiteSpace:\"nowrap\",textOverflow:\"clip\",fontVariantNumeric:\"tabular-nums\"};const mobileOfferOuter={display:mounted&&isMobile&&showOfferCard?\"flex\":\"none\",width:\"100%\",paddingLeft:props.offerOuterPaddingMobile,paddingRight:props.offerOuterPaddingMobile,paddingTop:props.offerMobileMarginTop,paddingBottom:props.offerMobileMarginBottom,boxSizing:\"border-box\",background:props.navBg};const renderOfferCard=style=>{if(!showOfferCard)return null;return /*#__PURE__*/_jsxs(\"div\",{style:style,children:[/*#__PURE__*/_jsxs(\"div\",{style:checksCol,children:[showFirstCheck&&/*#__PURE__*/_jsxs(\"div\",{style:checkRow,children:[/*#__PURE__*/_jsx(\"div\",{style:checkIconStyle,children:/*#__PURE__*/_jsx(\"svg\",{width:10,height:10,viewBox:\"0 0 10 10\",\"aria-hidden\":\"true\",children:/*#__PURE__*/_jsx(\"polyline\",{points:\"1 5.2 3.7 8 9 2\",fill:\"none\",stroke:props.checkIconColour,strokeWidth:1.5,strokeLinecap:\"round\",strokeLinejoin:\"round\"})})}),/*#__PURE__*/_jsx(\"span\",{style:checkTextStyle,children:props.check1Text})]}),showSecondCheck&&/*#__PURE__*/_jsxs(\"div\",{style:checkRow,children:[/*#__PURE__*/_jsx(\"div\",{style:checkIconStyle,children:/*#__PURE__*/_jsx(\"svg\",{width:10,height:10,viewBox:\"0 0 10 10\",\"aria-hidden\":\"true\",children:/*#__PURE__*/_jsx(\"polyline\",{points:\"1 5.2 3.7 8 9 2\",fill:\"none\",stroke:props.checkIconColour,strokeWidth:1.5,strokeLinecap:\"round\",strokeLinejoin:\"round\"})})}),/*#__PURE__*/_jsx(\"span\",{style:checkTextStyle,children:props.check2Text})]})]}),/*#__PURE__*/_jsx(\"div\",{style:timerWrapper,children:/*#__PURE__*/_jsx(\"div\",{style:timerBadge,\"aria-label\":props.timerLabel?`${props.timerLabel} ${timerText}`:timerText,title:props.timerLabel?`${props.timerLabel} ${timerText}`:timerText,children:/*#__PURE__*/_jsx(\"span\",{style:timerTextClip,children:props.timerLabel?`${props.timerLabel} ${timerText}`:timerText})})})]});};return /*#__PURE__*/_jsxs(\"div\",{style:rootStyle,children:[/*#__PURE__*/_jsx(\"div\",{style:navOuterStyle,children:/*#__PURE__*/_jsx(\"div\",{style:navInnerStyle,children:/*#__PURE__*/_jsxs(\"div\",{style:navRowStyle,children:[/*#__PURE__*/_jsx(\"div\",{style:logoWrapper,children:props.logoImage?/*#__PURE__*/_jsx(\"img\",{src:props.logoImage,alt:\"Logo\",style:logoImgStyle}):null}),/*#__PURE__*/_jsx(\"div\",{style:desktopOfferWrapper,children:renderOfferCard(offerCardDesktop)}),/*#__PURE__*/_jsx(\"div\",{style:profileWrapper,children:hasIdentity?/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"img\",{src:avatarSrc,alt:\"Profile avatar\",style:profileAvatarStyle}),/*#__PURE__*/_jsxs(\"div\",{style:profileTextCol,children:[props.labelText?/*#__PURE__*/_jsx(\"div\",{style:labelStyle,children:props.labelText}):null,/*#__PURE__*/_jsx(\"div\",{style:nameStyle,title:displayName||undefined,children:displayName})]})]}):null})]})})}),/*#__PURE__*/_jsx(\"div\",{style:mobileOfferOuter,children:renderOfferCard(offerCardMobile)})]});}/* ---------------- Property controls ---------------- */addPropertyControls(NavOfferProfileBar,{useStorage:{type:ControlType.Boolean,title:\"Use storage\",defaultValue:true},nameStorageKey:{type:ControlType.String,title:\"Name key\",defaultValue:\"cc_result_hc\"},namePath:{type:ControlType.String,title:\"Name path\",defaultValue:\"first_name\"},fallbackName:{type:ControlType.String,title:\"Fallback name\",defaultValue:\"Member\"},genderStorageKey:{type:ControlType.String,title:\"Gender key\",defaultValue:\"cento_match_gender_age\"},fallbackGender:{type:ControlType.Enum,title:\"Fallback gender\",options:[\"male\",\"female\",\"other\"],optionTitles:[\"Male\",\"Female\",\"Other\"],defaultValue:\"other\"},logoImage:{type:ControlType.Image,title:\"Logo\"},logoMaxWidth:{type:ControlType.Number,title:\"Logo max W\",defaultValue:140,min:40,max:400},logoMaxHeight:{type:ControlType.Number,title:\"Logo max H\",defaultValue:32,min:16,max:120},maleIcon:{type:ControlType.Image,title:\"Male icon\"},femaleIcon:{type:ControlType.Image,title:\"Female icon\"},otherIcon:{type:ControlType.Image,title:\"Other icon\"},profileIconSize:{type:ControlType.Number,title:\"Profile size\",defaultValue:32,min:20,max:100},navBg:{type:ControlType.Color,title:\"Nav BG\",defaultValue:\"#ffffff\"},navHeight:{type:ControlType.Number,title:\"Nav height\",defaultValue:65,min:40,max:120},navPaddingXDesktop:{type:ControlType.Number,title:\"Pad X desktop\",defaultValue:60,min:0,max:120},navPaddingYDesktop:{type:ControlType.Number,title:\"Pad Y desktop\",defaultValue:24,min:0,max:40},navPaddingMobile:{type:ControlType.Number,title:\"Padding mobile\",defaultValue:24,min:0,max:40},navMaxWidth:{type:ControlType.Number,title:\"Nav max W\",defaultValue:0,min:0,max:1800},navBorderBottomColour:{type:ControlType.Color,title:\"Border colour\",defaultValue:\"rgba(15,23,42,0.06)\"},navBorderBottomWidth:{type:ControlType.Number,title:\"Border width\",defaultValue:1,min:0,max:4},sticky:{type:ControlType.Boolean,title:\"Sticky\",defaultValue:true},stickyTop:{type:ControlType.Number,title:\"Sticky top\",defaultValue:0,min:-100,max:200},mobileBreakpoint:{type:ControlType.Number,title:\"Mobile < width\",defaultValue:768,min:320,max:1200},gapLogoOffer:{type:ControlType.Number,title:\"Gap logo↔offer\",defaultValue:32,min:0,max:120},gapOfferProfile:{type:ControlType.Number,title:\"Gap offer↔profile\",defaultValue:24,min:0,max:120},// Coupon gating controls\nallowedCouponsCsv:{type:ControlType.String,title:\"Allowed coupons\",defaultValue:\"\",placeholder:\"BP28, VIP, FOUNDERS\"},couponSessionKey:{type:ControlType.String,title:\"Coupon session key\",defaultValue:\"cc_coupon\"},offerBg:{type:ControlType.Color,title:\"Offer BG\",defaultValue:\"#0F172A\"},offerRadius:{type:ControlType.Number,title:\"Offer radius\",defaultValue:999,min:0,max:999},offerPaddingXDesktop:{type:ControlType.Number,title:\"Offer pad X\",defaultValue:18,min:4,max:60},offerPaddingYDesktop:{type:ControlType.Number,title:\"Offer pad Y\",defaultValue:10,min:2,max:40},offerPaddingMobile:{type:ControlType.Number,title:\"Offer pad mobile\",defaultValue:16,min:4,max:60},offerMobileMarginTop:{type:ControlType.Number,title:\"Offer mt mobile\",defaultValue:8,min:0,max:40},offerMobileMarginBottom:{type:ControlType.Number,title:\"Offer mb mobile\",defaultValue:8,min:0,max:40},offerOuterPaddingMobile:{type:ControlType.Number,title:\"Offer outer pad\",defaultValue:0,min:0,max:40},labelText:{type:ControlType.String,title:\"Label text\",defaultValue:\"Welcome back\"},labelSize:{type:ControlType.Number,title:\"Label size\",defaultValue:11,min:8,max:24},labelWeight:{type:ControlType.Number,title:\"Label weight\",defaultValue:500,min:300,max:900,step:50},labelColour:{type:ControlType.Color,title:\"Label colour\",defaultValue:\"rgba(15,23,42,0.6)\"},nameFont:{type:ControlType.Font,title:\"Name font\"},nameSize:{type:ControlType.Number,title:\"Name size\",defaultValue:14,min:10,max:32},nameWeight:{type:ControlType.Number,title:\"Name weight\",defaultValue:600,min:300,max:900,step:50},nameColour:{type:ControlType.Color,title:\"Name colour\",defaultValue:\"#111827\"},// Checks\ncheck1Text:{type:ControlType.String,title:\"Check #1\",defaultValue:\"Discount applied\"},check2Text:{type:ControlType.String,title:\"Check #2\",defaultValue:\"Spot reserved for next cohort\"},showCheck2:{type:ControlType.Boolean,title:\"Show check #2\",defaultValue:true},checkFont:{type:ControlType.Font,title:\"Check font\"},checkSize:{type:ControlType.Number,title:\"Check size\",defaultValue:12,min:8,max:24},checkWeight:{type:ControlType.Number,title:\"Check weight\",defaultValue:500,min:300,max:900,step:50},checkColour:{type:ControlType.Color,title:\"Check colour\",defaultValue:\"#E5E7EB\"},checkIconColour:{type:ControlType.Color,title:\"Tick colour\",defaultValue:\"#22C55E\"},checkRowGap:{type:ControlType.Number,title:\"Check gap\",defaultValue:2,min:0,max:16},showTimer:{type:ControlType.Boolean,title:\"Show timer\",defaultValue:true},timerMinutes:{type:ControlType.Number,title:\"Minutes\",defaultValue:30,min:1,max:240},timerStorageKey:{type:ControlType.String,title:\"Timer key\",defaultValue:\"cc_banner_timer_start\"},timerLabel:{type:ControlType.String,title:\"Timer label\",defaultValue:\"Time left\"},timerFont:{type:ControlType.Font,title:\"Timer font\"},timerSize:{type:ControlType.Number,title:\"Timer size\",defaultValue:12,min:8,max:24},timerWeight:{type:ControlType.Number,title:\"Timer weight\",defaultValue:600,min:300,max:900,step:50},timerColour:{type:ControlType.Color,title:\"Timer colour\",defaultValue:\"#0F172A\"},timerBadgeBg:{type:ControlType.Color,title:\"Timer BG\",defaultValue:\"#FACC15\"},timerBadgeRadius:{type:ControlType.Number,title:\"Badge radius\",defaultValue:999,min:0,max:999},timerBadgePaddingX:{type:ControlType.Number,title:\"Badge pad X\",defaultValue:12,min:4,max:32},timerBadgePaddingY:{type:ControlType.Number,title:\"Badge pad Y\",defaultValue:6,min:2,max:24},timerMaxWidth:{type:ControlType.Number,title:\"Timer max W\",defaultValue:110,min:40,max:220}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"NavOfferProfileBar\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CountdownBanner.map"],"mappings":"iNAC8M,SAAS,EAAQ,EAAI,EAAK,CAAI,MAAC,GAAK,CAAC,GAAsB,OAAO,EAAK,MAAM,IAAI,CAAC,QAAQ,EAAI,IAAO,CAAC,GAAG,GAAK,OAAO,GAAM,SAAS,OAAO,EAAI,IAAyB,EAAI,CAAE,SAAS,EAAoB,EAAI,CAAC,GAAG,CAAC,GAAU,IAAS,OAAY,OAAO,KAAK,IAAM,EAAI,EAAO,aAAa,QAAQ,EAAI,CAAC,GAAG,CAAC,EAAI,OAAO,KAAK,GAAG,CAAC,OAAO,KAAK,MAAM,EAAI,MAAO,CAAC,OAAO,QAAW,CAAC,OAAO,MAAO,SAAS,GAAsB,EAAI,CAAC,GAAG,CAAC,GAAU,IAAS,OAAY,OAAO,KAAK,IAAM,EAAI,EAAO,eAAe,QAAQ,EAAI,CAAC,OAAO,GAAK,KAAiB,KAAZ,OAAO,EAAI,MAAY,CAAC,OAAO,MAAO,SAAS,GAAe,EAAI,CAAC,GAAG,CAAC,GAAU,IAAS,OAAY,OAAO,KAAK,IAAM,EAAI,EAAO,eAAe,QAAQ,EAAI,CAAC,GAAG,CAAC,EAAI,OAAO,KAAK,IAAM,EAAE,OAAO,EAAI,CAAC,OAAO,OAAO,SAAS,EAAE,CAAC,EAAE,UAAW,CAAC,OAAO,MAAO,SAAS,EAAe,EAAI,EAAM,CAAC,GAAG,CAAC,GAAU,IAAS,OAAY,OAAO,EAAO,eAAe,QAAQ,EAAI,OAAO,EAAM,CAAC,MAAO,GAAG,SAAS,EAAe,EAAM,EAAI,CAAC,GAAG,GAAO,KAAK,OAAO,IAAM,EAAE,OAAO,EAAS,IAAI,SAAS,EAAI,KAAK,EAAM,CAAS,IAAI,UAAU,IAAI,UAAU,EAAI,KAAK,OAAO,EAAM,CAAC,CAAS,MAAM,QAAQ,EAAM,CAAC,EAAM,QAAQ,GAAG,EAAe,EAAE,EAAI,CAAC,CAAS,IAAI,UAAS,OAAO,OAAO,EAAM,CAAC,QAAQ,GAAG,EAAe,EAAE,EAAI,CAAC,CAAE,SAAS,GAAwB,EAAM,CAAC,GAAG,GAAO,KAAK,OAAiB,GAAG,OAAO,GAAQ,UAAU,CAAC,MAAM,QAAQ,EAAM,CAAC,CAAC,IAAM,EAAO,EAAM,OAAO,EAAM,OAAO,EAAM,MAAM,EAAM,KAAQ,OAAO,GAAS,WAAS,EAAM,GAAQ,IAAM,EAAQ,EAAE,CAA+B,GAA9B,EAAe,EAAM,EAAQ,CAAI,EAAQ,SAAS,EAAE,OAAgE,IAAM,EAA7C,EAAQ,KAAK,IAAI,CAAC,MAAM,CAAC,aAAa,CAAgB,MAAM,WAAW,CAAC,OAAO,QAAQ,CAAO,EAAI,IAAI,IAAI,EAAO,CAAqO,MAAvN,CAAC,SAAS,QAAQ,QAAQ,OAAO,IAAI,WAAW,OAAO,CAAoF,KAAK,GAAG,EAAI,IAAI,EAAE,CAAC,CAAO,SAAlG,CAAC,OAAO,MAAM,MAAM,MAAM,IAAI,YAAY,YAAY,OAAO,CAAsD,KAAK,GAAG,EAAI,IAAI,EAAE,CAAC,CAAO,OAAa,QAAS,SAAS,EAAgB,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,aAAa,CAAE,SAAS,GAAoB,EAAI,CAA+B,MAA3B,CAAC,GAAK,CAAC,EAAI,MAAM,CAAO,EAAE,CAAQ,EAAI,MAAM,IAAI,CAAC,IAAI,GAAG,EAAgB,EAAE,CAAC,CAAC,OAAO,QAAQ,CAK9vE,SAAS,GAAqB,EAAgB,EAAQ,CAAkC,GAA9B,CAAC,GAAgC,CAAC,GAAS,EAAQ,SAAS,EAAE,MAAO,GAAM,IAAM,EAAI,EAAgB,MAAM,CAAC,GAAG,CAAC,EAAI,MAAO,GACxL,GAAG,CAAC,IAAM,EAAO,KAAK,MAAM,EAAI,CAAC,GAAG,MAAM,QAAQ,EAAO,CAAC,CAAC,IAAMA,EAAI,IAAI,IAAI,EAAO,IAAI,GAAG,EAAgB,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAQ,KAAK,GAAGA,EAAI,IAAI,EAAE,CAAC,OAAQ,EAElK,IAAM,EAAM,EAAI,MAAM,YAAY,CAAC,IAAI,GAAG,EAAgB,EAAE,CAAC,CAAC,OAAO,QAAQ,CAAC,GAAG,EAAM,SAAS,EAAE,MAAO,GAAM,IAAM,EAAI,IAAI,IAAI,EAAM,CAAC,OAAO,EAAQ,KAAK,GAAG,EAAI,IAAI,EAAE,CAAC,CAAksC,SAAwB,EAAmB,EAAE,CAAC,IAAM,EAAM,CAAC,WAAW,GAAK,eAAe,eAAe,SAAS,aAAa,aAAa,SAAS,iBAAiB,yBAAyB,eAAe,QAAQ,UAAU,IAAA,GAAU,aAAa,IAAI,cAAc,GAAG,SAAS,IAAA,GAAU,WAAW,IAAA,GAAU,UAAU,IAAA,GAAU,gBAAgB,GAAG,MAAM,UAAU,UAAU,GAAG,mBAAmB,GAAG,mBAAmB,GAAG,iBAAiB,GAAG,sBAAsB,sBAAsB,qBAAqB,EAAE,OAAO,GAAK,UAAU,EAAE,iBAAiB,IAAI,YAAY,EAAE,aAAa,GAAG,gBAAgB,GAAG,QAAQ,UAAU,YAAY,IAAI,qBAAqB,GAAG,qBAAqB,GAAG,mBAAmB,GAAG,qBAAqB,EAAE,wBAAwB,EAAE,wBAAwB,EACtnE,kBAAkB,GAAG,iBAAiB,YAAY,UAAU,eAAe,UAAU,GAAG,YAAY,IAAI,YAAY,qBAAqB,SAAS,IAAA,GAAU,SAAS,GAAG,WAAW,IAAI,WAAW,UAAU,WAAW,mBAAmB,WAAW,gCAAgC,WAAW,GAAK,UAAU,IAAA,GAAU,UAAU,GAAG,YAAY,IAAI,YAAY,UAAU,gBAAgB,UAAU,YAAY,EAAE,UAAU,GAAK,aAAa,GAAG,gBAAgB,wBAAwB,WAAW,YAAY,UAAU,IAAA,GAAU,UAAU,GAAG,YAAY,IAAI,YAAY,UAAU,aAAa,UAAU,iBAAiB,IAAI,mBAAmB,GAAG,mBAAmB,EAAE,cAAc,IAAI,GAAGC,EAAE,CAAM,CAAC,EAAQ,GAAYC,EAAe,GAAM,CAAC,MAAoB,EAAW,GAAK,CAAC,EAAE,CAAC,CAAC,GAAK,CAAC,EAAS,GAAaA,MAA8B,IAAS,OAAmB,GAAa,EAAO,WAAW,EAAM,iBAAmB,CAAC,MAAoB,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,MAAa,EAAY,EAAO,WAAW,EAAM,iBAAiB,CAA4C,OAA3C,EAAO,iBAAiB,SAAS,EAAS,KAAW,EAAO,oBAAoB,SAAS,EAAS,EAAG,CAAC,EAAM,iBAAiB,CAAC,CAAC,GAAK,CAAC,EAAiB,GAAqBA,EAAe,GAAK,CAAO,EAAcC,EAAa,EAAE,CAAC,MAAoB,CAAC,GAAU,IAAS,OAAY,OAAO,EAAc,QAAQ,EAAO,SAAS,EAAO,aAAa,EAAE,IAAM,MAAa,CAAC,IAAM,EAAE,EAAO,SAAS,EAAO,aAAa,EAAE,GAAG,CAAC,EAAS,CAAC,EAAoB,GAAK,CAAC,EAAc,QAAQ,EAAE,OAA8B,GAAG,GAAL,EAAsB,CAAC,EAAoB,GAAK,CAAC,EAAc,QAAQ,EAAE,OAAQ,IAAM,EAAM,EAAE,EAAc,QAA6B,KAAK,IAAI,EAAM,CAApB,IAAsC,EAAoB,GAAO,EAAE,CAAC,EAAc,QAAQ,IAA8D,OAA1D,EAAO,iBAAiB,SAAS,EAAS,CAAC,QAAQ,GAAK,CAAC,KAAW,EAAO,oBAAoB,SAAS,EAAS,EAAG,CAAC,EAAS,CAAC,CAAC,GAAK,CAAC,EAAY,GAAgBD,EAAe,EAAM,WAAW,KAAK,EAAM,cAAc,KAAK,CAAM,CAAC,EAAO,GAAWA,EAAe,EAAM,eAAe,CAAO,EAAgBE,MAAsB,CAAC,GAAG,CAAC,EAAM,YAAmB,IAAS,OAAY,CAAC,EAAe,EAAM,cAAc,KAAK,CAAC,EAAU,EAAM,eAAe,CAAC,OAAQ,IAAM,EAAc,EAAoB,EAAM,eAAe,CAAK,EAAa,KAAK,GAAG,GAAe,QAAS,OAAO,GAAgB,SAAS,CAAC,IAAM,EAAM,EAAQ,EAAc,EAAM,SAAS,CAAI,OAAO,GAAQ,UAAU,EAAM,MAAM,CAAC,OAAO,IAAG,EAAa,EAAM,MAAM,OAAW,OAAO,GAAgB,UAAU,EAAc,MAAM,CAAC,OAAO,IAAG,EAAa,EAAc,MAAM,EAAG,EAAe,EAAa,CAAqJ,EAA/D,GAA/D,EAAoB,EAAM,iBAAiB,CAA4D,EAAE,EAAM,eAAsC,EAAG,CAAC,EAAM,WAAW,EAAM,eAAe,EAAM,SAAS,EAAM,iBAAiB,EAAM,aAAa,EAAM,eAAe,CAAC,CAAC,MAAoB,GAAiB,CAAC,CAAC,EAAgB,CAAC,CAAC,MAAoB,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAU,GAAG,CAAK,EAAE,MAAc,EAAE,MAAM,EAAM,gBAAgB,EAAE,MAAM,EAAM,mBAAkB,GAAiB,EAAiD,OAA7C,EAAO,iBAAiB,UAAU,EAAU,KAAW,EAAO,oBAAoB,UAAU,EAAU,EAAG,CAAC,EAAgB,EAAM,eAAe,EAAM,iBAAiB,CAAC,CAAC,IAAM,EAAY,GAAa,MAAM,EAAY,MAAM,CAAC,OAAO,EAAQ,EAAU,IAAS,OAAO,EAAM,UAAU,EAAM,SAAS,OAAO,EAAE,EAAM,SAAS,EAAe,IAAS,SAAS,EAAM,YAAY,EAAM,WAAW,OAAO,EAAE,EAAM,WAAW,EAAiB,EAAM,WAAW,EAAM,UAAU,OAAO,EAAE,EAAM,UAAU,EACjlH,CAAC,EAAe,GAAmBF,EAAe,GAAM,CAAC,MAAoB,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAQ,GAAoB,EAAM,kBAAkB,CAAO,MAAc,CAAmE,EAAkB,GAAhE,GAAsB,EAAM,iBAAiB,CAAsD,EAAQ,CAAC,EAAG,GAAW,CACvV,IAAM,EAAG,EAAO,YAAY,EAAU,IAAI,CAAO,MAAY,GAAW,CAAO,MAAU,CAAI,SAAS,kBAAkB,WAAU,GAAW,EAAgG,OAA7F,EAAO,iBAAiB,QAAQ,EAAQ,CAAC,SAAS,iBAAiB,mBAAmB,EAAM,KAAW,CAAC,EAAO,cAAc,EAAG,CAAC,EAAO,oBAAoB,QAAQ,EAAQ,CAAC,SAAS,oBAAoB,mBAAmB,EAAM,GAAK,CAAC,EAAM,kBAAkB,EAAM,iBAAiB,CAAC,CAA8C,GAAK,CAAC,EAAY,GAAgBA,EAAe,KAAK,IAAI,EAAE,EAAM,aAAa,CAAC,GAAG,IAAI,CAAO,EAASC,EAAa,KAAK,CAAC,MAAoB,CAAC,GAAG,CAAC,EAAM,WAAkB,IAAS,OAAY,CAAC,EAAe,KAAK,IAAI,EAAE,EAAM,aAAa,CAAC,GAAG,IAAI,CAAC,OAAQ,IAAM,EAAW,KAAK,IAAI,EAAE,EAAM,aAAa,CAAC,GAAG,IAAU,EAAI,KAAK,KAAK,CAAK,EAAM,GAAe,EAAM,gBAAgB,EAAI,GAAO,MAAM,EAAI,GAAO,KAAY,EAAM,EAAI,EAAe,EAAM,gBAAgB,EAAM,EAAE,EAAS,QAAQ,EAAM,EAAe,KAAK,IAAI,EAAE,GAAY,EAAI,GAAO,CAAC,CAAC,IAAM,EAAG,EAAO,gBAAgB,CAAC,IAAM,EAAQ,KAAK,KAAK,CAAoD,EAAQ,GAAxC,EAAS,SAAS,GAA2C,GAAG,GAAS,EAAW,CAAC,IAAM,EAAS,EAAQ,EAAS,QAAQ,EAAS,EAAe,EAAM,gBAAgB,EAAS,CAAC,EAAe,EAAW,MAAO,EAAe,KAAK,IAAI,EAAE,EAAW,EAAQ,CAAC,EAAI,IAAI,CAAC,UAAU,EAAO,cAAc,EAAG,EAAG,CAAC,EAAM,UAAU,EAAM,aAAa,EAAM,gBAAgB,CAAC,CAAC,IAAM,EAAa,KAAK,IAAI,EAAE,KAAK,MAAM,EAAY,IAAI,CAAC,CAAO,GAAQ,KAAK,MAAM,EAAa,GAAG,CAAO,GAAQ,EAAa,GAAS,EAAU,GAAQ,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,GAAQ,UAAU,CAAC,SAAS,EAAE,IAAI,CAAO,EAAe,EAAM,UAAU,QAAQ,EAAM,UAAU,YAAY,kCAAwC,EAAe,EAAM,UAAU,OAAO,YAAY,EAAM,WAAiB,EAAgB,EAAM,WAAW,QAAQ,EAAM,WAAW,YAAY,kCAAwC,EAAgB,EAAM,WAAW,OAAO,YAAY,EAAM,YAAkB,EAAgB,EAAM,WAAW,QAAQ,EAAM,WAAW,YAAY,kCAAwC,EAAgB,EAAM,WAAW,OAAO,YAAY,EAAM,YACxqE,EAAe,CAAC,CAAC,EAAM,YAAY,EAAM,WAAW,MAAM,CAAC,OAAO,EAAQ,EAAgB,EAAM,YAAY,CAAC,CAAC,EAAM,YAAY,EAAM,WAAW,MAAM,CAAC,OAAO,EAA0E,GAAhD,EAAe,EAAE,IAAI,EAAgB,EAAE,GAAoC,EAAQ,EAAS,GAAS,EAAM,UACpS,EAAc,IADyT,GAAW,GAC7O,GAAU,CAAC,MAAM,OAAO,UAAU,aAAa,SAAS,EAAM,OAAO,SAAS,WAAW,IAAI,EAAM,OAAO,EAAM,UAAU,IAAA,GAAU,OAAO,GAAG,WAAW,EAAM,MAAM,UAAU,GAAU,CAAC,EAAiB,oBAAoB,gBAAgB,WAAW,0BAA0B,CAAO,GAAc,CAAC,MAAM,OAAO,UAAU,aAAa,WAAW,EAAM,MAAM,aAAa,EAAM,qBAAqB,EAAE,GAAG,EAAM,qBAAqB,WAAW,EAAM,wBAAwB,OAAO,CAAO,GAAc,CAAC,MAAM,OAAO,SAAS,EAAM,YAAY,EAAE,EAAM,YAAY,OAAO,OAAO,SAAS,UAAU,aAAa,OAAO,EAAM,UAAU,QAAQ,OAAO,WAAW,SAAS,QAAQ,EAAS,EAAM,iBAAiB,GAAG,EAAM,mBAAmB,KAAK,EAAM,mBAAmB,IAAI,CAAO,GAAY,EAAS,CAAC,QAAQ,OAAO,WAAW,SAAS,eAAe,gBAAgB,MAAM,OAAO,UAAU,aAAa,CAAC,CAAC,QAAQ,OAAO,oBAAoB,eAAe,WAAW,SAAS,MAAM,OAAO,UAAU,aAAa,UAAU,KAAK,IAAI,EAAE,KAAK,IAAI,EAAM,aAAa,EAAM,gBAAgB,CAAC,CAAC,CAC1pC,GAAa,EAA8B,EAAE,CAAvB,CAAC,WAAW,QAAQ,CAAU,GAAc,EAA8B,EAAE,CAAvB,CAAC,WAAW,QAAQ,CAAU,EAAgB,EAA8B,EAAE,CAAvB,CAAC,WAAW,QAAQ,CAAU,GAAY,CAAC,GAAG,GAAY,QAAQ,OAAO,WAAW,SAAS,eAAe,aAAa,KAAK,WAAW,SAAS,EAAE,YAAY,QAAQ,CAAO,GAAa,CAAC,SAAS,EAAM,aAAa,UAAU,EAAM,cAAc,MAAM,OAAO,OAAO,OAAO,UAAU,UAAU,CAAO,GAAoB,CAAC,GAAG,GAAa,QAAQ,GAAS,CAAC,GAAU,EAAc,OAAO,OAAO,YAAY,SAAS,UAAU,SAAS,SAAS,EAAE,MAAM,IAAI,SAAS,IAAI,CAAO,GAAe,CAAC,GAAG,EAAe,QAAQ,EAAY,OAAO,OAAO,WAAW,SAAS,eAAe,WAAW,KAAK,WAAW,SAAS,EAAE,YAAY,MAAM,CAAO,GAAmB,CAAC,MAAM,EAAM,gBAAgB,OAAO,EAAM,gBAAgB,aAAa,QAAQ,UAAU,QAAQ,WAAW,EAAE,CAAO,GAAe,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAE,WAAW,GAAG,SAAS,EAAE,CAAO,GAAW,CAAC,SAAS,EAAM,UAAU,WAAW,EAAM,YAAY,MAAM,EAAM,YAAY,cAAc,YAAY,cAAc,GAAG,WAAW,IAAI,WAAW,SAAS,CAAO,GAAU,CAAC,WAAW,EAAe,SAAS,EAAM,SAAS,WAAW,EAAe,MAAM,EAAM,WAAW,WAAW,IAAI,WAAW,SAAS,SAAS,SAAS,aAAa,WAAW,SAAS,EAAS,IAAI,IAAI,CAAO,EAAgB,CAAC,WAAW,EAAM,QAAQ,aAAa,EAAM,YAAY,QAAQ,OAAO,WAAW,SAAS,eAAe,aAAa,IAAI,GAAG,MAAM,OAAO,UAAU,aAAa,SAAS,EAAE,UAAU,GAAG,CAAO,GAAiB,CAAC,GAAG,EAAgB,QAAQ,GAAG,EAAM,qBAAqB,KAAK,EAAM,qBAAqB,IAAI,SAAS,IAAI,CAAO,GAAgB,CAAC,GAAG,EAAgB,QAAQ,EAAM,mBAAmB,CAAO,GAAU,CAAC,QAAQ,EAAU,OAAO,OAAO,cAAc,SAAS,IAAI,EAAM,YAAY,KAAK,EAAE,SAAS,EAAE,CAAO,EAAS,CAAC,QAAQ,OAAO,WAAW,SAAS,IAAI,EAAE,SAAS,EAAE,CAAO,EAAe,CAAC,MAAM,GAAG,OAAO,GAAG,aAAa,IAAI,OAAO,eAAe,EAAM,kBAAkB,QAAQ,OAAO,WAAW,SAAS,eAAe,SAAS,WAAW,EAAE,WAAW,cAAc,CAAO,EAAe,CAAC,WAAW,EAAgB,SAAS,EAAM,UAAU,WAAW,EAAgB,MAAM,EAAM,YAAY,WAAW,IAAI,SAAS,EAAE,SAAS,SAAS,aAAa,WAAW,WAAW,SAAS,CAAO,GAAa,CAAC,QAAQ,EAAS,OAAO,OAAO,WAAW,EAAE,WAAW,SAAS,eAAe,WAAW,SAAS,KAAK,IAAI,GAAG,EAAM,cAAc,CAAC,SAAS,EAAE,SAAS,SAAS,CAAO,GAAW,CAAC,QAAQ,QAAQ,SAAS,OAAO,SAAS,EAAE,SAAS,SAAS,QAAQ,GAAG,EAAM,mBAAmB,KAAK,EAAM,mBAAmB,IAAI,aAAa,EAAM,iBAAiB,WAAW,EAAM,aAAa,MAAM,EAAM,YAAY,WAAW,EAAgB,SAAS,EAAM,UAAU,WAAW,EAAgB,WAAW,IAAI,WAAW,SAAS,CAAO,GAAc,CAAC,QAAQ,QAAQ,SAAS,SAAS,WAAW,SAAS,aAAa,OAAO,mBAAmB,eAAe,CAAO,GAAiB,CAAC,QAAQ,GAAS,GAAU,EAAc,OAAO,OAAO,MAAM,OAAO,YAAY,EAAM,wBAAwB,aAAa,EAAM,wBAAwB,WAAW,EAAM,qBAAqB,cAAc,EAAM,wBAAwB,UAAU,aAAa,WAAW,EAAM,MAAM,CAAO,EAAgB,GAAY,EAA8C,EAAM,MAAM,CAAO,QAAM,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,GAAU,SAAS,CAAC,GAA6B,EAAM,MAAM,CAAC,MAAM,EAAS,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,EAAe,SAAsB,EAAK,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,QAAQ,YAAY,cAAc,OAAO,SAAsB,EAAK,WAAW,CAAC,OAAO,kBAAkB,KAAK,OAAO,OAAO,EAAM,gBAAgB,YAAY,IAAI,cAAc,QAAQ,eAAe,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAc,EAAK,OAAO,CAAC,MAAM,EAAe,SAAS,EAAM,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,GAA8B,EAAM,MAAM,CAAC,MAAM,EAAS,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,EAAe,SAAsB,EAAK,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,QAAQ,YAAY,cAAc,OAAO,SAAsB,EAAK,WAAW,CAAC,OAAO,kBAAkB,KAAK,OAAO,OAAO,EAAM,gBAAgB,YAAY,IAAI,cAAc,QAAQ,eAAe,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAc,EAAK,OAAO,CAAC,MAAM,EAAe,SAAS,EAAM,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAc,EAAK,MAAM,CAAC,MAAM,GAAa,SAAsB,EAAK,MAAM,CAAC,MAAM,GAAW,aAAa,EAAM,WAAW,GAAG,EAAM,WAAW,GAAG,IAAY,EAAU,MAAM,EAAM,WAAW,GAAG,EAAM,WAAW,GAAG,IAAY,EAAU,SAAsB,EAAK,OAAO,CAAC,MAAM,GAAc,SAAS,EAAM,WAAW,GAAG,EAAM,WAAW,GAAG,IAAY,EAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAA13C,KAA63C,OAAoB,EAAM,MAAM,CAAC,MAAM,GAAU,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,GAAc,SAAsB,EAAK,MAAM,CAAC,MAAM,GAAc,SAAsB,EAAM,MAAM,CAAC,MAAM,GAAY,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,GAAY,SAAS,EAAM,UAAuB,EAAK,MAAM,CAAC,IAAI,EAAM,UAAU,IAAI,OAAO,MAAM,GAAa,CAAC,CAAC,KAAK,CAAC,CAAc,EAAK,MAAM,CAAC,MAAM,GAAoB,SAAS,EAAgB,GAAiB,CAAC,CAAC,CAAc,EAAK,MAAM,CAAC,MAAM,GAAe,SAAS,EAAyB,EAAME,EAAU,CAAC,SAAS,CAAc,EAAK,MAAM,CAAC,IAAI,EAAU,IAAI,iBAAiB,MAAM,GAAmB,CAAC,CAAc,EAAM,MAAM,CAAC,MAAM,GAAe,SAAS,CAAC,EAAM,UAAuB,EAAK,MAAM,CAAC,MAAM,GAAW,SAAS,EAAM,UAAU,CAAC,CAAC,KAAkB,EAAK,MAAM,CAAC,MAAM,GAAU,MAAM,GAAa,IAAA,GAAU,SAAS,EAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAc,EAAK,MAAM,CAAC,MAAM,GAAiB,SAAS,EAAgB,GAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,4BAdnpL,IAA4B,IAAoD,CAQmB,EAAe,+WAAqX,EAAiB,+WAAqX,EAAgB,+WAMi1J,EAAoB,EAAmB,CAAC,WAAW,CAAC,KAAK,EAAY,QAAQ,MAAM,cAAc,aAAa,GAAK,CAAC,eAAe,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,aAAa,eAAe,CAAC,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,aAAa,CAAC,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,gBAAgB,aAAa,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,yBAAyB,CAAC,eAAe,CAAC,KAAK,EAAY,KAAK,MAAM,kBAAkB,QAAQ,CAAC,OAAO,SAAS,QAAQ,CAAC,aAAa,CAAC,OAAO,SAAS,QAAQ,CAAC,aAAa,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAY,MAAM,MAAM,OAAO,CAAC,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,IAAI,IAAI,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,GAAG,IAAI,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,EAAY,MAAM,MAAM,YAAY,CAAC,WAAW,CAAC,KAAK,EAAY,MAAM,MAAM,cAAc,CAAC,UAAU,CAAC,KAAK,EAAY,MAAM,MAAM,aAAa,CAAC,gBAAgB,CAAC,KAAK,EAAY,OAAO,MAAM,eAAe,aAAa,GAAG,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAY,MAAM,MAAM,SAAS,aAAa,UAAU,CAAC,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,GAAG,IAAI,GAAG,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAY,OAAO,MAAM,gBAAgB,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAY,OAAO,MAAM,gBAAgB,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,CAAC,iBAAiB,CAAC,KAAK,EAAY,OAAO,MAAM,iBAAiB,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,CAAC,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,EAAE,IAAI,EAAE,IAAI,KAAK,CAAC,sBAAsB,CAAC,KAAK,EAAY,MAAM,MAAM,gBAAgB,aAAa,sBAAsB,CAAC,qBAAqB,CAAC,KAAK,EAAY,OAAO,MAAM,eAAe,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,EAAY,QAAQ,MAAM,SAAS,aAAa,GAAK,CAAC,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,EAAE,IAAI,KAAK,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAY,OAAO,MAAM,iBAAiB,aAAa,IAAI,IAAI,IAAI,IAAI,KAAK,CAAC,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,iBAAiB,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAY,OAAO,MAAM,oBAAoB,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,CACjgQ,kBAAkB,CAAC,KAAK,EAAY,OAAO,MAAM,kBAAkB,aAAa,GAAG,YAAY,sBAAsB,CAAC,iBAAiB,CAAC,KAAK,EAAY,OAAO,MAAM,qBAAqB,aAAa,YAAY,CAAC,QAAQ,CAAC,KAAK,EAAY,MAAM,MAAM,WAAW,aAAa,UAAU,CAAC,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,eAAe,aAAa,IAAI,IAAI,EAAE,IAAI,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,CAAC,qBAAqB,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,CAAC,mBAAmB,CAAC,KAAK,EAAY,OAAO,MAAM,mBAAmB,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,CAAC,qBAAqB,CAAC,KAAK,EAAY,OAAO,MAAM,kBAAkB,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,wBAAwB,CAAC,KAAK,EAAY,OAAO,MAAM,kBAAkB,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,wBAAwB,CAAC,KAAK,EAAY,OAAO,MAAM,kBAAkB,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,eAAe,CAAC,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,CAAC,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,eAAe,aAAa,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,GAAG,CAAC,YAAY,CAAC,KAAK,EAAY,MAAM,MAAM,eAAe,aAAa,qBAAqB,CAAC,SAAS,CAAC,KAAK,EAAY,KAAK,MAAM,YAAY,CAAC,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,GAAG,IAAI,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,GAAG,CAAC,WAAW,CAAC,KAAK,EAAY,MAAM,MAAM,cAAc,aAAa,UAAU,CACvmD,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,aAAa,mBAAmB,CAAC,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,aAAa,gCAAgC,CAAC,WAAW,CAAC,KAAK,EAAY,QAAQ,MAAM,gBAAgB,aAAa,GAAK,CAAC,UAAU,CAAC,KAAK,EAAY,KAAK,MAAM,aAAa,CAAC,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,CAAC,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,eAAe,aAAa,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,GAAG,CAAC,YAAY,CAAC,KAAK,EAAY,MAAM,MAAM,eAAe,aAAa,UAAU,CAAC,gBAAgB,CAAC,KAAK,EAAY,MAAM,MAAM,cAAc,aAAa,UAAU,CAAC,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,EAAY,QAAQ,MAAM,aAAa,aAAa,GAAK,CAAC,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,UAAU,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,wBAAwB,CAAC,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,YAAY,CAAC,UAAU,CAAC,KAAK,EAAY,KAAK,MAAM,aAAa,CAAC,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,CAAC,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,eAAe,aAAa,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,GAAG,CAAC,YAAY,CAAC,KAAK,EAAY,MAAM,MAAM,eAAe,aAAa,UAAU,CAAC,aAAa,CAAC,KAAK,EAAY,MAAM,MAAM,WAAW,aAAa,UAAU,CAAC,iBAAiB,CAAC,KAAK,EAAY,OAAO,MAAM,eAAe,aAAa,IAAI,IAAI,EAAE,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,CAAC,mBAAmB,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,cAAc,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,IAAI,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC"}