{"version":3,"file":"ProTextType.ut6gzSVL.mjs","names":["useRef","useMemo","getProps","useRef","useCallback","useState","useMemo","Phosphor","React.useContext","React.useMemo","React.Fragment","useRef","React.useId","RichText","useState","useRef","React.useMemo","React.useState","React.useRef","React.useCallback","p"],"sources":["https:/framerusercontent.com/modules/89ZqmR2KCSQLPefe4ZeQ/z6nb0w2qG4VanxdrrZxg/ScrollText.js","https:/framerusercontent.com/modules/lRDHiNWNVWmE0lqtoVHP/Sn64gjTwaJh0TFAuaV07/Video.js","https:/framerusercontent.com/modules/vgkFAgvd2WDCTyzcSFXh/1QW2LN2MddLtHsbghxrb/Animated_Background.js","https:/framerusercontent.com/modules/iqG114yDUrvqm3qh4Wpd/8QXrxwHi5DeRnGohp3Zc/N54jyHY2Z.js","https:/framerusercontent.com/modules/7o5YlT01I3SpEeUNtk9u/fkJoPEY6s3iDEdhwUxZ1/AIChatWidget.js","https:/framerusercontent.com/modules/5g7ayuHgZHoL9OKOXkVL/m0Y4fgiMp9Ko6aWCRJj5/ProTextType.js"],"sourcesContent":["// Scroll Text with animation per word, slots for inline components, blur/fade on scroll, full font/text control. No DOMPurify.\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{motion,useScroll,useTransform,useSpring}from\"framer-motion\";import{useRef,useMemo}from\"react\";const EachWord=({word,starting,ending,startOpacity,endOpacity,progress,children,animationStyle,enableBlur,enableSmooth,isCanvas})=>{const sanitizedWord=word;const progressVal=useTransform(progress,[starting,ending],[startOpacity,endOpacity]);const yVal=useTransform(progress,[starting,ending],animationStyle===\"slide\"?[20,0]:[0,0]);const blurVal=useTransform(progress,[starting,ending],enableBlur?[10,0]:[0,0]);const filterVal=useTransform(blurVal,value=>`blur(${value}px)`);const springConfig={stiffness:100,damping:20,mass:1};const smoothOpacity=useSpring(progressVal,springConfig);const smoothY=useSpring(yVal,springConfig);const smoothBlur=useSpring(blurVal,springConfig);const smoothFilter=useTransform(smoothBlur,value=>`blur(${value}px)`);const finalOpacity=isCanvas?1:enableSmooth?smoothOpacity:progressVal;const finalY=isCanvas?0:enableSmooth?smoothY:yVal;const finalFilter=isCanvas?\"none\":enableSmooth?smoothFilter:filterVal;if(children){return /*#__PURE__*/_jsx(motion.span,{style:{opacity:finalOpacity,y:finalY,filter:enableBlur?finalFilter:undefined,willChange:animationStyle===\"slide\"?\"opacity, transform\":\"opacity\",display:\"inline-flex\",alignItems:\"center\"},children:children});}return /*#__PURE__*/_jsx(motion.span,{style:{opacity:finalOpacity,y:finalY,filter:enableBlur?finalFilter:undefined,willChange:animationStyle===\"slide\"?\"opacity, transform\":\"opacity\",display:\"inline\"},dangerouslySetInnerHTML:{__html:sanitizedWord}});};/**\n *\n * @framerIntrinsicWidth 480\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight auto\n */export default function ScrollText(props){const text=props.text;const ref=useRef(null);const{scrollYProgress}=useScroll({target:ref,offset:[`start ${props.startOffset}`,`end ${props.endOffset}`]});const isCanvas=RenderTarget.current()===RenderTarget.canvas;const segments=useMemo(()=>{const textWithNewlines=text.replace(/<br\\s*\\/?>(\\s*<br\\s*\\/?>(\\s*))?/gi,\"\\n\\n\").replace(/<br\\s*\\/?>(?!\\n)/gi,\"\\n\");const slotEnabled=props.showSlots;return textWithNewlines.split(/(\\[[^\\]]*\\]|\\n+|<[^>]+>[^<]*<\\/[^^>]+>|<[^>]+>|[^\\s\\[\\]<>\\n]+)/g).filter(Boolean).map((segment,index)=>{if(segment.match(/\\n+/)){return{type:\"linebreak\",content:segment};}if(segment.startsWith(\"[\")&&segment.endsWith(\"]\")){const slotIndex=parseInt(segment.slice(1,-1))-1;if(slotEnabled&&!isNaN(slotIndex)&&slotIndex>=0){return{type:\"slot\",index:slotIndex};}else{return{type:\"text\",content:segment};}}if(segment.match(/^\\s+$/)){return null;}return{type:\"text\",content:segment};}).filter(segment=>segment!==null&&segment!==undefined);},[text,props.showSlots]);const totalSegments=segments.length;return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{width:\"100%\",height:\"auto\",// Remove maxWidth: 480,\n...props.font,color:props.textColor,margin:0,padding:0,display:\"flex\",flexWrap:\"wrap\",alignItems:\"center\",gap:\"0.25em\",wordBreak:\"break-word\"},children:segments.map((segment,idx)=>{if(segment.type===\"linebreak\"){return /*#__PURE__*/_jsx(\"span\",{style:{flexBasis:\"100%\",height:0}},`break-${idx}`);}if(segment.type===\"slot\"){if(!props.showSlots)return null;const slotContent=props.slots?.[segment.index];if(!slotContent){// Render purple placeholder box when slot is empty\nconst fontSize=parseFloat(props.font?.fontSize)||36;const lineHeight=props.font?.lineHeight||1.1;const lineHeightValue=typeof lineHeight===\"string\"?parseFloat(lineHeight)*fontSize:lineHeight*fontSize;const boxSize=lineHeightValue;return /*#__PURE__*/_jsx(EachWord,{word:\"\",starting:idx/totalSegments,ending:(idx+1)/totalSegments,startOpacity:props.startOpacity,endOpacity:props.endOpacity,progress:scrollYProgress,animationStyle:props.animationStyle,enableBlur:props.enableBlur,enableSmooth:props.enableSmooth,isCanvas:isCanvas,children:/*#__PURE__*/_jsx(\"span\",{style:{display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",alignSelf:\"baseline\",marginLeft:props.layerGap||0,marginRight:props.layerGap||0,backgroundColor:\"rgba(136, 85, 255, 0.1)\",color:\"#8855FF\",padding:\"4px 12px\",border:\"1px solid #8855FF\",fontSize:\"14px\",fontWeight:\"bold\",width:boxSize,height:boxSize},children:segment.index+1})},`slot-${idx}`);}return /*#__PURE__*/_jsx(EachWord,{word:\"\",starting:idx/totalSegments,ending:(idx+1)/totalSegments,startOpacity:props.startOpacity,endOpacity:props.endOpacity,progress:scrollYProgress,animationStyle:props.animationStyle,enableBlur:props.enableBlur,enableSmooth:props.enableSmooth,isCanvas:isCanvas,children:/*#__PURE__*/_jsx(\"span\",{style:{display:\"inline-flex\",alignItems:\"center\",marginLeft:props.layerGap||0,marginRight:props.layerGap||0},children:slotContent})},`slot-${idx}`);}return /*#__PURE__*/_jsx(EachWord,{word:segment.content,starting:idx/totalSegments,ending:(idx+1)/totalSegments,startOpacity:props.startOpacity,endOpacity:props.endOpacity,progress:scrollYProgress,animationStyle:props.animationStyle,enableBlur:props.enableBlur,enableSmooth:props.enableSmooth,isCanvas:isCanvas,children:null},`text-${idx}`);})});}addPropertyControls(ScrollText,{text:{title:\"Text\",type:ControlType.String,defaultValue:\"Turn your [1] into something people truly value in less time and with more [2]\",displayTextArea:true},showSlots:{type:ControlType.Boolean,title:\"Show Slots\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},slots:{type:ControlType.Array,title:\"Slots\",description:\"Add components to slots. Use [1], [2], etc. in text above.\",control:{type:ControlType.ComponentInstance},defaultValue:[],maxCount:10,hidden:props=>!props?.showSlots},layerGap:{type:ControlType.Number,title:\"Layer Gap\",defaultValue:2,min:0,max:100,step:1},font:{type:ControlType.Font,controls:\"extended\",defaultValue:{fontSize:36,variant:\"Regular\",lineHeight:1.1},defaultFontType:\"sans-serif\"},textColor:{type:ControlType.Color,defaultValue:\"#FFFFFF\"},animationStyle:{type:ControlType.Enum,title:\"Animation\",options:[\"fade\",\"slide\"],optionTitles:[\"Fade\",\"Slide\"],defaultValue:\"fade\",displaySegmentedControl:true},enableSmooth:{type:ControlType.Boolean,title:\"Smooth\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},enableBlur:{type:ControlType.Boolean,title:\"Blur\",defaultValue:false,enabledTitle:\"Yes\",disabledTitle:\"No\"},startOffset:{title:\"Start Offset\",type:ControlType.Number,defaultValue:.5,min:0,max:1,step:.01},endOffset:{title:\"End Offset\",type:ControlType.Number,defaultValue:.5,min:0,max:1,step:.01},startOpacity:{title:\"Start Opacity\",type:ControlType.Number,defaultValue:0,min:0,max:1,step:.01},endOpacity:{title:\"End Opacity\",type:ControlType.Number,defaultValue:1,min:0,max:1,step:.01}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ScrollText\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"480\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"auto\",\"framerSupportedLayoutWidth\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ScrollText.map","// ⚠️⚠️⚠️⚠️⚠️\n// Edit these files in https://github.com/framer/FramerCodeComponents\n// ⚠️⚠️⚠️⚠️⚠️\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,useIsInCurrentNavigationTarget,RenderTarget}from\"framer\";import{isMotionValue,useInView}from\"framer-motion\";import{borderRadiusControl,defaultEvents,useIsBrowserSafari,useIsOnCanvas,useOnEnter,useOnExit,useRadius,useRenderTarget}from\"https://framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/OIjZRBmWDcIE2B6qgG1j/index.js\";// https://framer.com/m/framer/default-utils.js@^0.45.0\nimport{memo,useCallback,useEffect,useMemo,useRef,useState}from\"react\";var ObjectFitType;(function(ObjectFitType){ObjectFitType[\"Fill\"]=\"fill\";ObjectFitType[\"Contain\"]=\"contain\";ObjectFitType[\"Cover\"]=\"cover\";ObjectFitType[\"None\"]=\"none\";ObjectFitType[\"ScaleDown\"]=\"scale-down\";})(ObjectFitType||(ObjectFitType={}));var SrcType;(function(SrcType){SrcType[\"Video\"]=\"Upload\";SrcType[\"Url\"]=\"URL\";})(SrcType||(SrcType={}));const defaultVideo=\"https://framerusercontent.com/assets/MLWPbW1dUQawJLhhun3dBwpgJak.mp4\";// Reduce renders\nfunction getProps(props){const{width,height,topLeft,topRight,bottomRight,bottomLeft,id,children,...rest}=props;return rest;}/**\n * VIDEO\n *\n * @framerIntrinsicWidth 200\n * @framerIntrinsicHeight 112\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export function Video(props){const newProps=getProps(props);return /*#__PURE__*/_jsx(VideoMemo,{...newProps});}function usePlaybackControls(videoRef){const isInCurrentNavigationTarget=useIsInCurrentNavigationTarget();const requestingPlay=useRef(false);const isPlayingRef=useRef(false);const setProgress=useCallback(rawProgress=>{if(!videoRef.current)return;const newProgress=(rawProgress===1?.999:rawProgress)*videoRef.current.duration;const isAlreadySet=Math.abs(videoRef.current.currentTime-newProgress)<.1;if(videoRef.current.duration>0&&!isAlreadySet){videoRef.current.currentTime=newProgress;}},[]);const play=useCallback(()=>{const video=videoRef.current;if(!video)return;video.preload=\"auto\"// makes sure browsers don't throttle: https://html.spec.whatwg.org/multipage/media.html#:~:text=When%20the%20media%20resource%20is%20playing%2C%20hints%20to%20the%20user%20agent%20that%20bandwidth%20is%20to%20be%20considered%20scarce%2C%20e.g.%20suggesting%20throttling%20the%20download%20so%20that%20the%20media%20data%20is%20obtained%20at%20the%20slowest%20possible%20rate%20that%20still%20maintains%20consistent%20playback.\n;const isPlaying=video.currentTime>0&&video.onplaying&&!video.paused&&!video.ended&&video.readyState>=video.HAVE_CURRENT_DATA;if(!isPlaying&&video&&!requestingPlay.current&&isInCurrentNavigationTarget){requestingPlay.current=true;isPlayingRef.current=true;video.play().catch(e=>{})// It's likely fine, swallow error\n.finally(()=>requestingPlay.current=false);}},[]);const pause=useCallback(()=>{if(!videoRef.current||requestingPlay.current)return;videoRef.current.pause();isPlayingRef.current=false;},[]);return{play,pause,setProgress,isPlaying:isPlayingRef};}function useAutoplayBehavior({playingProp,muted,loop,playsinline,controls}){const[initialPlayingProp]=useState(playingProp);const[hasPlayingPropChanged,setHasPlayingPropChanged]=useState(false);if(playingProp!==initialPlayingProp&&!hasPlayingPropChanged){setHasPlayingPropChanged(true);}const behavesAsGif=// passing `playing === true` on mount indicates that the video should\n// autoplay, like a GIF\ninitialPlayingProp&&muted&&loop&&playsinline&&!controls&&// Some users of the <Video> component use it by wrapping it with\n// another smart component and adding their own controls on top. (The\n// controls use transitions to control the video: e.g., when clicking\n// the play button, the smart component will transition to a state with\n// <Video playing={true} />.) In this case, we don't want the video to\n// behave as a gif, as it will be weird if the video suddenly started\n// acting as such (and auto-pausing when leaving the viewport) as soon\n// as the site visitor mutes it and clicks “Play”.\n!hasPlayingPropChanged;let autoplay;if(behavesAsGif)autoplay=\"on-viewport\";else if(initialPlayingProp)autoplay=\"on-mount\";else autoplay=\"no-autoplay\";return autoplay;}const VideoMemo=/*#__PURE__*/memo(function VideoInner(props){const{// default props\nsrcType=\"URL\",srcUrl,srcFile=\"\",posterEnabled=false,controls=false,playing=true,loop=true,muted=true,playsinline=true,restartOnEnter=false,objectFit=\"cover\",backgroundColor=\"rgba(0,0,0,0)\",radius=0,volume=25,startTime:startTimeProp=0,poster,playing:playingProp,progress,onSeeked,onPause,onPlay,onEnd,onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp}=props;const videoRef=useRef();const isSafari=useIsBrowserSafari();const wasPausedOnLeave=useRef(null);const wasEndedOnLeave=useRef(null);const isOnCanvas=useIsOnCanvas();const renderTarget=useRenderTarget();const isStaticRenderer=isOnCanvas||renderTarget===RenderTarget.export;const borderRadius=useRadius(props);// Hard-coding `autoplayBehavior` and `isInViewport` when on canvas as a\n// tiny perf optimization. isStaticRenderer won’t change through the lifecycle of\n// the component, so using these hooks conditionally should be safe\nconst autoplayBehavior=isStaticRenderer?\"no-autoplay\":useAutoplayBehavior({playingProp,muted,loop,playsinline,controls});const isInViewport=isStaticRenderer?true:useInView(videoRef);const isCloseToViewport=isStaticRenderer?false:useInView(videoRef,{margin:\"10%\",once:true});// Video elements behave oddly at 100% duration\nconst startTime=startTimeProp===100?99.9:startTimeProp;const{play,pause,setProgress,isPlaying}=usePlaybackControls(videoRef);// Pause/play via props\nuseEffect(()=>{if(isStaticRenderer)return;if(autoplayBehavior===\"on-viewport\")return;if(playingProp)play();else pause();},[autoplayBehavior,playingProp]);// Pause/play via viewport\nuseEffect(()=>{if(isStaticRenderer)return;// this also explicitly retries playing for videos that play on-mount, which could fail if they're not muted for example\nif(isInViewport&&playingProp&&autoplayBehavior!==\"no-autoplay\")play();if(autoplayBehavior!==\"on-viewport\")return;pause();},[autoplayBehavior,isInViewport,playingProp]);useEffect(()=>{if(!isOnCanvas||poster||posterEnabled||startTime||!videoRef.current)return;// forces a poster to show up when the video is in an iframe; this is needed when `poster` changes\nvideoRef.current.currentTime=.01;},[posterEnabled,poster,startTime]);/**\n     * The Video component has some effects that sync the video element with props\n     * like `startTime`, `progress`, etc. React calls these effects whenever these\n     * props change. However, it also calls them on the first mount, and this is\n     * troublesome – if we’re doing SSR, and the user changed the video state before\n     * the video was hydrated, the initial `useEffect` call will reset the video\n     * state. To avoid this, we use this flag.\n     */const isMountedAndReadyForProgressChanges=useRef(false);// Allow scrubbling via progress prop\n// 1) Handle cases when the progress prop itself changes\nuseEffect(()=>{if(!isMountedAndReadyForProgressChanges.current){isMountedAndReadyForProgressChanges.current=true;return;}const rawProgressValue=isMotionValue(progress)?progress.get():(progress??0)*.01;setProgress(// When the progress value exists (e.g. <Video startTime={10}\n// progress={50} />), we respect the `progress` value over\n// `startTime`, even if `startTime` changes. That’s because\n// `startTime` == start == changing it shouldn’t affect the current\n// progress\n(rawProgressValue??0)||// Then why fall back to `startTime` when `progress` doesn’t exist,\n// you might ask? Now, that’s for\n// - canvas UX: we want the video progress to change when the user\n//   is scrobbling the “Start Time” in component settings.\n// - backwards compatibility: maybe some users *are* scrobbling\n//   using `startTime` instead of `progress`? We don’t know, and it\n//   always supported it, so let’s not break it\n(startTime??0)/100);},[startTime,srcFile,srcUrl,progress]);// 2) Handle cases when the motion value inside the progress prop changes\nuseEffect(()=>{if(!isMotionValue(progress))return;return progress.on(\"change\",value=>setProgress(value));},[progress]);// (Prototyping) Checking if we need to play on navigation enter\nuseOnEnter(()=>{if(wasPausedOnLeave.current===null)return;if(videoRef.current){// if (restartOnEnter) setProgress(0)\nif(!wasEndedOnLeave&&loop||!wasPausedOnLeave.current)play();}});// (Prototyping) Pausing & saving playing state on navigation exit\nuseOnExit(()=>{if(videoRef.current){wasEndedOnLeave.current=videoRef.current.ended;wasPausedOnLeave.current=videoRef.current.paused;pause();}});const src=useMemo(()=>{let fragment=\"\";// if (\n//     startTime > 0 &&\n//     videoRef.current &&\n//     !isNaN(videoRef.current.duration) &&\n//     !isStaticRenderer\n// ) {\n//     console.log(startTime, videoRef.current.duration)\n//     fragment = `#t=${startTime * videoRef.current.duration}`\n// }\nif(srcType===\"URL\")return srcUrl+fragment;if(srcType===\"Upload\")return srcFile+fragment;},[srcType,srcFile,srcUrl,startTime]);// Autoplay via JS to work in Safari\nuseEffect(()=>{if(isSafari&&videoRef.current&&autoplayBehavior===\"on-mount\"){setTimeout(()=>play(),50);}},[]);// Volume Control\nuseEffect(()=>{if(videoRef.current&&!muted)videoRef.current.volume=(volume??0)/100;},[volume]);// When video is ready, set start-time, then autoplay if needed\nconst handleReady=()=>{const video=videoRef.current;if(!video)return;if(video.currentTime<.3&&startTime>0)setProgress((startTime??0)*.01);if(// when the component updates (e.g. only srcFile/url changes), and the video was already playing, keep playing\nisPlaying.current||autoplayBehavior===\"on-mount\"||playingProp&&autoplayBehavior===\"on-viewport\"&&isInViewport)play();};return /*#__PURE__*/_jsx(\"video\",{onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp,src:src,loop:loop,ref:videoRef,onSeeked:e=>onSeeked?.(e),onPause:e=>onPause?.(e),onPlay:e=>onPlay?.(e),onEnded:e=>onEnd?.(e),autoPlay:isPlaying.current||autoplayBehavior===\"on-mount\"||playingProp&&autoplayBehavior===\"on-viewport\"&&isInViewport,preload:isPlaying.current?\"auto\":isStaticRenderer&&!poster?\"metadata\":autoplayBehavior!==\"on-mount\"&&!isCloseToViewport?\"none\":// `autoplay` overrides this too\n\"metadata\",poster:posterEnabled&&!srcFile&&srcUrl===defaultVideo?\"https://framerusercontent.com/images/5ILRvlYXf72kHSVHqpa3snGzjU.jpg\":posterEnabled&&poster?poster:undefined,onLoadedData:handleReady,controls:controls,muted:isStaticRenderer?true:muted,playsInline:playsinline,style:{cursor:!!onClick?\"pointer\":\"auto\",width:\"100%\",height:\"100%\",borderRadius,display:\"block\",objectFit:objectFit,backgroundColor:backgroundColor,objectPosition:\"50% 50%\"}});});Video.displayName=\"Video\";function capitalizeFirstLetter(value){return value.charAt(0).toUpperCase()+value.slice(1);}export function titleCase(value){const groups=value.match(/[A-Z]{2,}|[A-Z][a-z]+|[a-z]+|[A-Z]|\\d+/gu)||[];return groups.map(capitalizeFirstLetter).join(\" \");}const objectFitOptions=[\"cover\",\"fill\",\"contain\",\"scale-down\",\"none\"];addPropertyControls(Video,{srcType:{type:ControlType.Enum,displaySegmentedControl:true,title:\"Source\",options:[\"URL\",\"Upload\"]},srcUrl:{type:ControlType.String,title:\"URL\",defaultValue:\"https://framerusercontent.com/assets/MLWPbW1dUQawJLhhun3dBwpgJak.mp4\",hidden(props){return props.srcType===\"Upload\";}},srcFile:{type:ControlType.File,title:\"File\",allowedFileTypes:[\"mp4\",\"webm\"],description:\"Only MP4 and WebM\",hidden(props){return props.srcType===\"URL\";}},playing:{type:ControlType.Boolean,title:\"Playing\",enabledTitle:\"Yes\",disabledTitle:\"No\"},...borderRadiusControl,posterEnabled:{type:ControlType.Boolean,title:\"Poster\",enabledTitle:\"Yes\",disabledTitle:\"No\"},poster:{type:ControlType.Image,title:\"Image\",hidden:({posterEnabled})=>!posterEnabled,description:\"We recommend adding a poster. [Learn more](https://www.framer.com/help/articles/how-are-videos-optimized-in-framer/).\"},backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"rgba(0,0,0,0)\"},startTime:{title:\"Start Time\",type:ControlType.Number,min:0,max:100,step:.1,unit:\"%\"},loop:{type:ControlType.Boolean,title:\"Loop\",enabledTitle:\"Yes\",disabledTitle:\"No\"},objectFit:{type:ControlType.Enum,title:\"Fit\",options:objectFitOptions,optionTitles:objectFitOptions.map(titleCase)},// restartOnEnter: {\n//     type: ControlType.Boolean,\n//     title: \"On ReEnter\",\n//     enabledTitle: \"Restart\",\n//     disabledTitle: \"Resume\",\n// },\ncontrols:{type:ControlType.Boolean,title:\"Controls\",enabledTitle:\"Show\",disabledTitle:\"Hide\",defaultValue:false},muted:{type:ControlType.Boolean,title:\"Muted\",enabledTitle:\"Yes\",disabledTitle:\"No\"},volume:{type:ControlType.Number,max:100,min:0,unit:\"%\",hidden:({muted})=>muted,defaultValue:25},onEnd:{type:ControlType.EventHandler},onSeeked:{type:ControlType.EventHandler},onPause:{type:ControlType.EventHandler},onPlay:{type:ControlType.EventHandler},...defaultEvents});\nexport const __FramerMetadata__ = {\"exports\":{\"titleCase\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Video\":{\"type\":\"reactComponent\",\"name\":\"Video\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"112\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"200\",\"framerContractVersion\":\"1\"}},\"VideoProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Video.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{motion}from\"framer-motion\";import{addPropertyControls,ControlType}from\"framer\";export default function FluidGradient({color1=\"#FF9479\",color2=\"#F57FB9\",color3=\"#B781E3\",gradientSpeed=3,blur=100}){const duration=20/gradientSpeed;return /*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",height:\"100%\",position:\"relative\",overflow:\"hidden\",minWidth:\"100px\",minHeight:\"100px\"},children:[/*#__PURE__*/_jsx(motion.div,{style:{position:\"absolute\",width:\"150%\",height:\"150%\",left:\"-25%\",top:\"-25%\",background:`radial-gradient(circle at 80% 50%, ${color1} 0%, transparent 50%)`,filter:`blur(${blur}px)`},animate:{x:[\"0%\",\"20%\",\"0%\"],y:[\"0%\",\"25%\",\"0%\"]},transition:{duration:duration,repeat:Infinity,ease:\"easeInOut\"}}),/*#__PURE__*/_jsx(motion.div,{style:{position:\"absolute\",width:\"150%\",height:\"150%\",left:\"-25%\",top:\"-25%\",background:`radial-gradient(circle at 20% 80%, ${color2} 0%, transparent 50%)`,filter:`blur(${blur}px)`},animate:{x:[\"0%\",\"-20%\",\"0%\"],y:[\"0%\",\"20%\",\"0%\"]},transition:{duration:duration*1.2,repeat:Infinity,ease:\"easeInOut\"}}),/*#__PURE__*/_jsx(motion.div,{style:{position:\"absolute\",width:\"150%\",height:\"150%\",left:\"-25%\",top:\"-25%\",background:`radial-gradient(circle at 50% 20%, ${color3} 0%, transparent 50%)`,filter:`blur(${blur}px)`},animate:{x:[\"0%\",\"15%\",\"0%\"],y:[\"0%\",\"-20%\",\"0%\"]},transition:{duration:duration*.9,repeat:Infinity,ease:\"easeInOut\"}})]});}FluidGradient.defaultProps={width:400,height:400};addPropertyControls(FluidGradient,{color1:{type:ControlType.Color,title:\"Color 1\",defaultValue:\"#FF9479\"},color2:{type:ControlType.Color,title:\"Color 2\",defaultValue:\"#F57FB9\"},color3:{type:ControlType.Color,title:\"Color 3\",defaultValue:\"#B781E3\"},blur:{type:ControlType.Number,title:\"Blur\",min:20,max:200,step:10,defaultValue:100,unit:\"px\",displayStepper:true},gradientSpeed:{type:ControlType.Number,title:\"Speed\",min:.1,max:3,step:.1,defaultValue:3,displayStepper:true}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FluidGradient\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Animated_Background.map","// Generated by Framer (f36d8c8)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,Link,RichText,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import{Icon as Phosphor}from\"https://framerusercontent.com/modules/tYScH7LTqUtz5KUaUAYP/CAjjxbTJBxHwH1MagCef/Phosphor.js\";const PhosphorFonts=getFonts(Phosphor);const enabledGestures={aRNsT34Lp:{hover:true},dkRRHvIit:{hover:true},LM0spWUZZ:{hover:true}};const cycleOrder=[\"aRNsT34Lp\",\"dkRRHvIit\",\"LM0spWUZZ\"];const serializationHash=\"framer-ZG1sp\";const variantClassNames={aRNsT34Lp:\"framer-v-1tr592g\",dkRRHvIit:\"framer-v-1x5t1q4\",LM0spWUZZ:\"framer-v-1jzd4rg\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const LAzjETJtz=undefined;const FmJQ14t3U=undefined;const transition1={damping:60,delay:0,mass:1,stiffness:360,type:\"spring\"};const transition2={delay:0,duration:.3,ease:[.44,0,.56,1],type:\"tween\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={\"Variant 1\":\"aRNsT34Lp\",\"Variant 3\":\"LM0spWUZZ\",Secondary:\"dkRRHvIit\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,link,title,width,...props})=>{return{...props,FmJQ14t3U:title??props.FmJQ14t3U??\"Start for free\",LAzjETJtz:link??props.LAzjETJtz,variant:humanReadableVariantMap[props.variant]??props.variant??\"aRNsT34Lp\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,FmJQ14t3U,LAzjETJtz,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"aRNsT34Lp\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,...addPropertyOverrides({LM0spWUZZ:{value:transition2}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(Link,{href:LAzjETJtz,motionChild:true,nodeId:\"aRNsT34Lp\",scopeId:\"N54jyHY2Z\",children:/*#__PURE__*/_jsxs(motion.a,{...restProps,...gestureHandlers,className:`${cx(scopingClassNames,\"framer-1tr592g\",className,classNames)} framer-xrndst`,\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"aRNsT34Lp\",ref:refBinding,style:{backgroundColor:\"var(--token-825dae40-55d4-4fdb-a9a6-4c865968e205, rgb(255, 255, 255))\",borderBottomLeftRadius:64,borderBottomRightRadius:64,borderTopLeftRadius:64,borderTopRightRadius:64,...style},variants:{\"LM0spWUZZ-hover\":{backgroundColor:\"var(--token-a1f48761-c7aa-443a-8236-85f1be8a3dae, rgb(242, 86, 58))\"},dkRRHvIit:{backgroundColor:\"var(--token-859670ae-fca4-43af-9b18-9c7e85485a74, rgb(242, 242, 242))\"},LM0spWUZZ:{backgroundColor:\"var(--token-cc033da2-d08d-442c-ad40-760c54e4e408, rgb(35, 35, 36))\"}},...addPropertyOverrides({\"aRNsT34Lp-hover\":{\"data-framer-name\":undefined},\"dkRRHvIit-hover\":{\"data-framer-name\":undefined},\"LM0spWUZZ-hover\":{\"data-framer-name\":undefined},dkRRHvIit:{\"data-framer-name\":\"Secondary\"},LM0spWUZZ:{\"data-framer-name\":\"Variant 3\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h3,{dir:\"auto\",style:{\"--font-selector\":\"R0Y7U2NoaWJzdGVkIEdyb3Rlc2stNTAw\",\"--framer-font-family\":'\"Schibsted Grotesk\", \"Schibsted Grotesk Placeholder\", sans-serif',\"--framer-font-size\":\"24px\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1.4em\",\"--framer-text-color\":\"var(--extracted-a0htzi, var(--token-22e34c00-f547-475f-b85c-d728de6742b6, rgb(28, 28, 28)))\"},children:\"Start for free\"})}),className:\"framer-kp7iat\",fonts:[\"GF;Schibsted Grotesk-500\"],layoutDependency:layoutDependency,layoutId:\"vArzq1pPI\",style:{\"--extracted-a0htzi\":\"var(--token-22e34c00-f547-475f-b85c-d728de6742b6, rgb(28, 28, 28))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:FmJQ14t3U,variants:{\"aRNsT34Lp-hover\":{\"--extracted-a0htzi\":\"var(--token-825dae40-55d4-4fdb-a9a6-4c865968e205, rgb(255, 255, 255))\"},\"dkRRHvIit-hover\":{\"--extracted-a0htzi\":\"rgb(255, 255, 255)\"},LM0spWUZZ:{\"--extracted-a0htzi\":\"var(--token-859670ae-fca4-43af-9b18-9c7e85485a74, rgb(242, 242, 242))\"}},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({\"aRNsT34Lp-hover\":{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h3,{dir:\"auto\",style:{\"--font-selector\":\"R0Y7U2NoaWJzdGVkIEdyb3Rlc2stNTAw\",\"--framer-font-family\":'\"Schibsted Grotesk\", \"Schibsted Grotesk Placeholder\", sans-serif',\"--framer-font-size\":\"24px\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1.4em\",\"--framer-text-color\":\"var(--extracted-a0htzi, var(--token-825dae40-55d4-4fdb-a9a6-4c865968e205, rgb(255, 255, 255)))\"},children:\"Start for free\"})})},\"dkRRHvIit-hover\":{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h3,{dir:\"auto\",style:{\"--font-selector\":\"R0Y7U2NoaWJzdGVkIEdyb3Rlc2stNTAw\",\"--framer-font-family\":'\"Schibsted Grotesk\", \"Schibsted Grotesk Placeholder\", sans-serif',\"--framer-font-size\":\"24px\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1.4em\",\"--framer-text-color\":\"var(--extracted-a0htzi, rgb(255, 255, 255))\"},children:\"Start for free\"})})},LM0spWUZZ:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h3,{dir:\"auto\",style:{\"--font-selector\":\"R0Y7U2NoaWJzdGVkIEdyb3Rlc2stNTAw\",\"--framer-font-family\":'\"Schibsted Grotesk\", \"Schibsted Grotesk Placeholder\", sans-serif',\"--framer-font-size\":\"23px\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1.4em\",\"--framer-text-color\":\"var(--extracted-a0htzi, var(--token-859670ae-fca4-43af-9b18-9c7e85485a74, rgb(242, 242, 242)))\"},children:\"Start for free\"})})}},baseVariant,gestureVariant)}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1obched\",layoutDependency:layoutDependency,layoutId:\"k7x429RzT\",style:{borderBottomLeftRadius:300,borderBottomRightRadius:300,borderTopLeftRadius:300,borderTopRightRadius:300},children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-154o8fm\",layoutDependency:layoutDependency,layoutId:\"YegfakssM\",style:{backgroundColor:\"var(--token-a1f48761-c7aa-443a-8236-85f1be8a3dae, rgb(69, 63, 233))\",borderBottomLeftRadius:400,borderBottomRightRadius:400,borderTopLeftRadius:400,borderTopRightRadius:400},variants:{LM0spWUZZ:{backgroundColor:\"var(--token-0ccbf651-1cd4-4386-9679-0d67c3c40f16, rgb(222, 223, 227))\"}}}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1sj5o3x\",layoutDependency:layoutDependency,layoutId:\"e4Wtr5cCw\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-51d5d-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"IUKRVBj6B-container\",nodeId:\"IUKRVBj6B\",rendersWithMotion:true,scopeId:\"N54jyHY2Z\",style:{rotate:-90},children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-825dae40-55d4-4fdb-a9a6-4c865968e205, rgb(255, 255, 255))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"ArrowDown\",id:\"IUKRVBj6B\",layoutId:\"IUKRVBj6B\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"regular\",width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-16re5jn-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"AEIc8pIff-container\",nodeId:\"AEIc8pIff\",rendersWithMotion:true,scopeId:\"N54jyHY2Z\",style:{rotate:-90},children:/*#__PURE__*/_jsx(Phosphor,{color:\"var(--token-825dae40-55d4-4fdb-a9a6-4c865968e205, rgb(255, 255, 255))\",height:\"100%\",iconSearch:\"House\",iconSelection:\"ArrowDown\",id:\"AEIc8pIff\",layoutId:\"AEIc8pIff\",mirrored:false,selectByList:true,style:{height:\"100%\",width:\"100%\"},weight:\"regular\",width:\"100%\",...addPropertyOverrides({LM0spWUZZ:{color:\"var(--token-a1f48761-c7aa-443a-8236-85f1be8a3dae, rgb(242, 86, 58))\"}},baseVariant,gestureVariant)})})})]})]})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-ZG1sp.framer-xrndst, .framer-ZG1sp .framer-xrndst { display: block; }\",\".framer-ZG1sp.framer-1tr592g { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 96px; justify-content: flex-start; overflow: hidden; padding: 32px; position: relative; text-decoration: none; width: 360px; will-change: var(--framer-will-change-override, transform); }\",\".framer-ZG1sp .framer-kp7iat { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-ZG1sp .framer-1obched { flex: none; gap: 10px; height: 48px; overflow: visible; position: absolute; right: 22px; top: calc(50.00000000000002% - 48px / 2); width: 48px; z-index: 2; }\",\".framer-ZG1sp .framer-154o8fm { flex: none; height: 48px; left: calc(50.00000000000002% - 48px / 2); overflow: hidden; position: absolute; top: calc(50.00000000000002% - 48px / 2); width: 48px; will-change: var(--framer-will-change-override, transform); z-index: 1; }\",\".framer-ZG1sp .framer-1sj5o3x { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 4px; height: 24px; justify-content: flex-end; left: calc(50.00000000000002% - 24px / 2); overflow: hidden; padding: 0px; position: absolute; top: calc(50.00000000000002% - 24px / 2); width: 24px; z-index: 1; }\",\".framer-ZG1sp .framer-51d5d-container, .framer-ZG1sp .framer-16re5jn-container { flex: none; height: 24px; position: relative; width: 24px; }\",\".framer-ZG1sp.framer-v-1tr592g.hover .framer-kp7iat { z-index: 3; }\",\".framer-ZG1sp.framer-v-1tr592g.hover .framer-154o8fm, .framer-ZG1sp.framer-v-1x5t1q4.hover .framer-154o8fm { height: 115px; left: calc(-229.1666666666666% - 764.5833333333333% / 2); top: calc(50.00000000000002% - 115px / 2); width: 765%; }\",\".framer-ZG1sp.framer-v-1tr592g.hover .framer-1sj5o3x { justify-content: flex-start; }\",\".framer-ZG1sp.framer-v-1x5t1q4.hover .framer-kp7iat { z-index: 4; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 96\n * @framerIntrinsicWidth 360\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"dkRRHvIit\":{\"layout\":[\"fixed\",\"fixed\"]},\"LM0spWUZZ\":{\"layout\":[\"fixed\",\"fixed\"]},\"siH5jF6O7\":{\"layout\":[\"fixed\",\"fixed\"]},\"kpRMxAUX4\":{\"layout\":[\"fixed\",\"fixed\"]},\"PLX9Qsrn5\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"FmJQ14t3U\":\"title\",\"LAzjETJtz\":\"link\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerN54jyHY2Z=withCSS(Component,css,\"framer-ZG1sp\");export default FramerN54jyHY2Z;FramerN54jyHY2Z.displayName=\"Elements/ Button 2\";FramerN54jyHY2Z.defaultProps={height:96,width:360};addPropertyControls(FramerN54jyHY2Z,{variant:{options:[\"aRNsT34Lp\",\"dkRRHvIit\",\"LM0spWUZZ\"],optionTitles:[\"Variant 1\",\"Secondary\",\"Variant 3\"],title:\"Variant\",type:ControlType.Enum},FmJQ14t3U:{defaultValue:\"Start for free\",displayTextArea:false,title:\"Title\",type:ControlType.String},onFmJQ14t3UChange:{changes:\"FmJQ14t3U\",type:ControlType.ChangeHandler},LAzjETJtz:{title:\"Link\",type:ControlType.Link}});addFonts(FramerN54jyHY2Z,[{explicitInter:true,fonts:[{cssFamilyName:\"Schibsted Grotesk\",source:\"google\",style:\"normal\",uiFamilyName:\"Schibsted Grotesk\",url:\"https://fonts.gstatic.com/s/schibstedgrotesk/v7/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNEMEASsJuXFGVOQ.woff2\",weight:\"500\"}]},...PhosphorFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerN54jyHY2Z\",\"slots\":[],\"annotations\":{\"framerImmutableVariables\":\"true\",\"framerColorSyntax\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"dkRRHvIit\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"LM0spWUZZ\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"siH5jF6O7\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"kpRMxAUX4\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"PLX9Qsrn5\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerComponentViewportWidth\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerVariables\":\"{\\\"FmJQ14t3U\\\":\\\"title\\\",\\\"LAzjETJtz\\\":\\\"link\\\"}\",\"framerIntrinsicHeight\":\"96\",\"framerIntrinsicWidth\":\"360\",\"framerContractVersion\":\"1\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./N54jyHY2Z.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useState,useRef,useEffect}from\"react\";import{addPropertyControls,ControlType}from\"framer\";import{motion,AnimatePresence}from\"framer-motion\";import LiquidGlassSurface from\"https://framerusercontent.com/modules/qxaKNqT4vLdDur3hgQeO/NNBDiIT09HB5pm7YIcCI/LiquidGlassSurface.js\";/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n * @framerIntrinsicWidth 600\n * @framerIntrinsicHeight 120\n */export default function AIChatWidget(props){const[openMenu,setOpenMenu]=useState(null);const[selectedCorpus,setSelectedCorpus]=useState(\"MuniLM OS Corpus\");const[selectedAnalysis,setSelectedAnalysis]=useState(\"Analysis/Extraction Type\");const[text,setText]=useState(\"\");const[isFocused,setIsFocused]=useState(false);const widgetRef=useRef(null);// THE MANUAL TOGGLE\nconst isMobile=props.isMobile;useEffect(()=>{if(isMobile)return;// Mobile uses the full-screen overlay to close\nfunction handleClickOutside(event){if(widgetRef.current&&!widgetRef.current.contains(event.target)){setOpenMenu(null);}}document.addEventListener(\"mousedown\",handleClickOutside);return()=>document.removeEventListener(\"mousedown\",handleClickOutside);},[isMobile]);const toggleMenu=menu=>{setOpenMenu(openMenu===menu?null:menu);};const handleWaitlistTrigger=e=>{if(props.onClick)props.onClick(e);};// --- DYNAMIC STYLES ---\nconst dynamicToolbarStyle={display:\"flex\",flexDirection:isMobile?\"column\":\"row\",justifyContent:isMobile?\"flex-start\":\"space-between\",alignItems:isMobile?\"stretch\":\"center\",width:\"100%\",position:\"relative\",zIndex:21,gap:isMobile?\"12px\":\"0px\"};const dynamicRightGroupStyle={display:\"flex\",alignItems:\"center\",justifyContent:isMobile?\"space-between\":\"flex-start\",gap:\"12px\",width:isMobile?\"100%\":\"auto\"};const pillTextStyle={fontSize:isMobile?\"13px\":\"15px\",color:\"#FFFFFF\",fontWeight:\"500\",whiteSpace:\"nowrap\"};const analysisMenuWidth=\"480px\";const analysisMenuGrid=\"1fr 1fr\";const corpusMenuWidth=\"auto\";// Helper for mobile sheet options\nconst isCorpus=openMenu===\"corpus\";const mobileOptions=isCorpus?[\"Upload your OS documents\",\"MuniLM OS Corpus\"]:[\"Chat With OS\",\"CUSIP Extraction\",\"Table Extraction\",\"Map & Project Photo Extraction\",\"Figure Extraction\",\"Export OS in XML\",\"Export to JSON/Markdown\",\"(Future Features - Geospatial)\"];const handleMobileSelect=option=>{if(isCorpus)setSelectedCorpus(option);else setSelectedAnalysis(option);setOpenMenu(null);};return /*#__PURE__*/_jsxs(\"div\",{ref:widgetRef,style:{...props.style,width:\"100%\",height:\"100%\",position:\"relative\",overflow:\"visible\",zIndex:1,// Jailbreak transform on mobile so the Bottom Sheet can escape to full screen\ntransform:isMobile?\"none\":\"translateZ(0)\",WebkitTransform:isMobile?\"none\":\"translateZ(0)\",willChange:isMobile?\"auto\":\"transform\",backfaceVisibility:\"hidden\"},children:[/*#__PURE__*/_jsx(\"style\",{children:`\n                @keyframes blink {\n                    0%, 100% { opacity: 1; }\n                    50% { opacity: 0; }\n                }\n                .blinking-cursor {\n                    animation: blink 1.2s step-end infinite;\n                    color: #FFFFFF;\n                    font-weight: 300;\n                    margin-right: 2px;\n                }\n                .glass-textarea::placeholder {\n                    color: rgba(255, 255, 255, 0.7) !important;\n                }\n                .dropdown-item {\n                    padding: 10px 16px;\n                    color: rgba(255, 255, 255, 0.9);\n                    font-size: 13px;\n                    font-weight: 500;\n                    cursor: pointer;\n                    white-space: nowrap;\n                    transition: all 0.2s ease;\n                    border-radius: 6px; \n                }\n                .dropdown-item:hover {\n                    background: rgba(255, 255, 255, 0.15); \n                    color: #FFFFFF;\n                }\n                /* Mobile Sheet Scrollbar */\n                .sheet-scroll::-webkit-scrollbar {\n                    width: 4px;\n                }\n                .sheet-scroll::-webkit-scrollbar-track {\n                    background: transparent;\n                }\n                .sheet-scroll::-webkit-scrollbar-thumb {\n                    background: rgba(255, 255, 255, 0.2);\n                    border-radius: 10px;\n                }\n            `}),/*#__PURE__*/_jsx(AnimatePresence,{children:isMobile&&openMenu&&/*#__PURE__*/_jsx(motion.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:.2},style:{position:\"fixed\",top:0,left:0,right:0,bottom:0,backgroundColor:\"rgba(0, 0, 0, 0.6)\",zIndex:99999,display:\"flex\",flexDirection:\"column\",justifyContent:\"flex-end\"},onClick:()=>setOpenMenu(null),children:/*#__PURE__*/_jsxs(motion.div,{initial:{y:\"100%\"},animate:{y:0},exit:{y:\"100%\"},transition:{type:\"spring\",damping:25,stiffness:200},drag:\"y\",dragConstraints:{top:0},dragElastic:.2,onDragEnd:(e,info)=>{// If the user swipes down hard or drags far enough, close it\nif(info.offset.y>100||info.velocity.y>500){setOpenMenu(null);}},style:{background:\"linear-gradient(to bottom, rgba(30, 30, 30, 0.75) 0%, rgba(10, 10, 10, 0.95) 100%)\",backdropFilter:\"blur(24px)\",WebkitBackdropFilter:\"blur(24px)\",borderTop:\"1px solid rgba(255, 255, 255, 0.2)\",borderTopLeftRadius:\"24px\",borderTopRightRadius:\"24px\",padding:\"20px 20px 40px 20px\",width:\"100%\",boxSizing:\"border-box\",boxShadow:\"0 -10px 40px rgba(0, 0, 0, 0.5)\",touchAction:\"none\"},onClick:e=>e.stopPropagation(),children:[/*#__PURE__*/_jsx(\"div\",{style:{width:\"40px\",height:\"5px\",backgroundColor:\"rgba(255, 255, 255, 0.3)\",borderRadius:\"3px\",margin:\"0 auto 20px auto\"}}),/*#__PURE__*/_jsx(\"div\",{className:\"sheet-scroll\",// Stop drag event from fighting scrolling\nonPointerDown:e=>e.stopPropagation(),style:{display:\"flex\",flexDirection:\"column\",gap:\"8px\",maxHeight:\"50vh\",overflowY:\"auto\",paddingRight:\"5px\"},children:mobileOptions.map(option=>/*#__PURE__*/_jsx(\"div\",{onClick:()=>handleMobileSelect(option),style:{padding:\"16px\",fontSize:\"15px\",color:\"#FFFFFF\",fontWeight:\"500\",backgroundColor:\"rgba(255, 255, 255, 0.05)\",borderRadius:\"12px\",border:\"1px solid rgba(255, 255, 255, 0.05)\",cursor:\"pointer\"},children:option},option))})]})})}),/*#__PURE__*/_jsx(LiquidGlassSurface,{borderRadius:24,distortionScale:props.distortionScale,blur:props.blur,chromaAmount:props.chromaAmount,glassOpacity:props.glassOpacity,children:/*#__PURE__*/_jsxs(\"div\",{style:innerContainerStyle,children:[!isFocused&&text===\"\"&&/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",top:\"20px\",left:\"20px\",pointerEvents:\"none\",color:\"rgba(255, 255, 255, 0.7)\",fontSize:\"17px\",fontFamily:\"inherit\",lineHeight:1.5,zIndex:22,paddingRight:\"20px\"},children:[/*#__PURE__*/_jsx(\"span\",{className:\"blinking-cursor\",children:\"|\"}),props.placeholder]}),/*#__PURE__*/_jsx(\"textarea\",{className:\"glass-textarea\",style:textAreaStyle,rows:isMobile?3:2,value:text,onChange:e=>setText(e.target.value),onFocus:()=>setIsFocused(true),onBlur:()=>setIsFocused(false),onKeyDown:e=>{if(e.key===\"Enter\"){e.preventDefault();handleWaitlistTrigger(e);}}}),/*#__PURE__*/_jsxs(\"div\",{style:dynamicToolbarStyle,children:[/*#__PURE__*/_jsxs(\"div\",{style:pillButtonStyle,onClick:()=>toggleMenu(\"corpus\"),children:[/*#__PURE__*/_jsx(\"svg\",{width:\"14\",height:\"14\",viewBox:\"0 0 24 24\",fill:\"rgba(255, 255, 255, 0.9)\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8l-2-2z\"})}),/*#__PURE__*/_jsx(\"span\",{style:pillTextStyle,children:selectedCorpus}),/*#__PURE__*/_jsx(\"svg\",{width:\"12\",height:\"12\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"rgba(255, 255, 255, 0.7)\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{transform:openMenu===\"corpus\"?\"rotate(180deg)\":\"none\",transition:\"transform 0.2s ease\"},children:/*#__PURE__*/_jsx(\"polyline\",{points:\"6 9 12 15 18 9\"})})]}),/*#__PURE__*/_jsxs(\"div\",{style:dynamicRightGroupStyle,children:[/*#__PURE__*/_jsxs(\"div\",{style:{...pillButtonStyle,flex:isMobile?1:\"none\",justifyContent:isMobile?\"space-between\":\"flex-start\"},onClick:()=>toggleMenu(\"analysis\"),children:[/*#__PURE__*/_jsx(\"span\",{style:pillTextStyle,children:selectedAnalysis}),/*#__PURE__*/_jsx(\"svg\",{width:\"12\",height:\"12\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"rgba(255, 255, 255, 0.7)\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{transform:openMenu===\"analysis\"?\"rotate(180deg)\":\"none\",transition:\"transform 0.2s ease\"},children:/*#__PURE__*/_jsx(\"polyline\",{points:\"6 9 12 15 18 9\"})})]}),/*#__PURE__*/_jsx(\"button\",{style:sendButtonStyle,onClick:handleWaitlistTrigger,children:/*#__PURE__*/_jsxs(\"svg\",{width:\"16\",height:\"16\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"#000000\",strokeWidth:\"2.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:[/*#__PURE__*/_jsx(\"line\",{x1:\"5\",y1:\"12\",x2:\"19\",y2:\"12\"}),/*#__PURE__*/_jsx(\"polyline\",{points:\"12 5 19 12 12 19\"})]})})]})]})]})}),!isMobile&&openMenu===\"corpus\"&&/*#__PURE__*/_jsxs(\"div\",{style:{...dropdownMenuStyle,top:\"calc(100% - 15px)\",left:\"20px\",display:\"flex\",flexDirection:\"column\"},children:[/*#__PURE__*/_jsx(\"div\",{className:\"dropdown-item\",onClick:()=>{setSelectedCorpus(\"Upload your OS documents\");setOpenMenu(null);},children:\"Upload your OS documents\"}),/*#__PURE__*/_jsx(\"div\",{className:\"dropdown-item\",onClick:()=>{setSelectedCorpus(\"MuniLM OS Corpus\");setOpenMenu(null);},children:\"MuniLM OS Corpus\"})]}),!isMobile&&openMenu===\"analysis\"&&/*#__PURE__*/_jsx(\"div\",{style:{...dropdownMenuStyle,top:\"calc(100% - 15px)\",right:\"68px\",width:analysisMenuWidth,display:\"grid\",gridTemplateColumns:analysisMenuGrid,gap:\"4px\"},children:[\"Chat With OS\",\"CUSIP Extraction\",\"Table Extraction\",\"Map & Project Photo Extraction\",\"Figure Extraction\",\"Export OS in XML\",\"Export to JSON/Markdown\",\"(Future Features - Geospatial)\"].map(option=>/*#__PURE__*/_jsx(\"div\",{className:\"dropdown-item\",onClick:()=>{setSelectedAnalysis(option);setOpenMenu(null);},children:option},option))})]});}// --- FRAMER PROPERTY CONTROLS ---\naddPropertyControls(AIChatWidget,{isMobile:{type:ControlType.Boolean,title:\"Mobile Mode\",defaultValue:false},placeholder:{type:ControlType.String,title:\"Placeholder\",defaultValue:\"Coming Soon... Drop In Official Statement For Analysis\"},distortionScale:{type:ControlType.Number,title:\"Refraction\",min:-300,max:0,step:5,defaultValue:-160},blur:{type:ControlType.Number,title:\"Glass Blur\",min:0,max:30,step:1,defaultValue:8},chromaAmount:{type:ControlType.Number,title:\"Chroma Split\",min:0,max:24,step:1,defaultValue:5},glassOpacity:{type:ControlType.Number,title:\"Glass Opacity\",min:0,max:1,step:.01,defaultValue:.15}});const innerContainerStyle={position:\"relative\",zIndex:20,pointerEvents:\"auto\",display:\"flex\",flexDirection:\"column\",width:\"100%\",height:\"100%\",padding:\"20px\",gap:\"16px\",fontFamily:\"-apple-system, BlinkMacSystemFont, 'Inter', sans-serif\",boxSizing:\"border-box\"};const textAreaStyle={flex:1,width:\"100%\",background:\"transparent\",border:\"none\",outline:\"none\",fontSize:\"17px\",color:\"#FFFFFF\",resize:\"none\",fontFamily:\"inherit\",lineHeight:1.5,padding:0,margin:0,position:\"relative\",zIndex:21};const pillButtonStyle={display:\"flex\",alignItems:\"center\",gap:\"8px\",padding:\"8px 12px\",background:\"linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.02) 100%)\",border:\"1px solid rgba(255, 255, 255, 0.15)\",boxShadow:\"inset 0px 1px 1px rgba(255, 255, 255, 0.1)\",borderRadius:\"20px\",cursor:\"pointer\",userSelect:\"none\"};const sendButtonStyle={display:\"flex\",alignItems:\"center\",justifyContent:\"center\",width:\"36px\",height:\"36px\",backgroundColor:\"#FFFFFF\",boxShadow:\"0 4px 12px rgba(0,0,0,0.1)\",border:\"none\",borderRadius:\"50%\",cursor:\"pointer\",flexShrink:0};const dropdownMenuStyle={position:\"absolute\",background:\"linear-gradient(to bottom, rgba(15, 15, 15, 0.85) 0%, rgba(5, 5, 5, 0.95) 100%)\",backdropFilter:\"blur(24px)\",WebkitBackdropFilter:\"blur(24px)\",border:\"1px solid rgba(255, 255, 255, 0.2)\",borderRadius:\"12px\",padding:\"8px\",boxShadow:\"0 12px 40px rgba(0, 0, 0, 0.6)\",zIndex:100};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"AIChatWidget\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"120\",\"framerSupportedLayoutWidth\":\"any\",\"framerSupportedLayoutHeight\":\"any\",\"framerIntrinsicWidth\":\"600\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import*as React from\"react\";import{motion}from\"framer-motion\";/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerIntrinsicWidth 600\n * @framerIntrinsicHeight 120\n */export default function ProTextTypeEffect(props){const{text,as:asTag,typingSpeed,letterSpacing,initialDelay,pauseDuration,deletingSpeed,loop,className,showCursor,hideCursorWhileTyping,cursorMode,cursorCharacterPreset,customCursorCharacter,cursorClassName,cursorBlinkDuration,textColors,cursorColorMode,cursorCustomColor,variableSpeed,startOnVisible,reverseMode,sizingMode,minFont,maxFont,fluidVw,style,...rest}=props;// Accept single string or array\nconst textArray=React.useMemo(()=>Array.isArray(text)?text:[text??\"\"],[text]);// Cursor character resolution\nconst cursorChar=cursorMode===\"custom\"?customCursorCharacter?.length?customCursorCharacter:\"|\":cursorCharacterPreset;const[displayedText,setDisplayedText]=React.useState(\"\");const[currentCharIndex,setCurrentCharIndex]=React.useState(0);const[isDeleting,setIsDeleting]=React.useState(false);const[currentTextIndex,setCurrentTextIndex]=React.useState(0);const[isVisible,setIsVisible]=React.useState(!startOnVisible);// Colors\nconst firstColor=textColors&&textColors[0]||\"#ffffff\";const resolvedCursorColor=cursorColorMode===\"custom\"&&cursorCustomColor?cursorCustomColor:firstColor;const containerRef=React.useRef(null);const As=asTag||\"div\";// Variable typing speed\nconst getRandomSpeed=React.useCallback(()=>{if(!variableSpeed)return typingSpeed;const{min,max}=variableSpeed;const lo=Math.max(0,Number(min)||0);const hi=Math.max(lo,Number(max)||lo);return Math.random()*(hi-lo)+lo;},[variableSpeed,typingSpeed]);const getCurrentTextColor=React.useCallback(()=>{if(!textColors||textColors.length===0)return\"#ffffff\";return textColors[currentTextIndex%textColors.length];},[textColors,currentTextIndex]);// Start on visible\nReact.useEffect(()=>{if(!startOnVisible||!containerRef.current)return;const el=containerRef.current;const obs=new IntersectionObserver(entries=>{entries.forEach(entry=>{if(entry.isIntersecting)setIsVisible(true);});},{threshold:.1});obs.observe(el);return()=>obs.disconnect();},[startOnVisible]);// Typing loop\nReact.useEffect(()=>{if(!isVisible)return;let timeout;const currentText=textArray[currentTextIndex]??\"\";const processed=reverseMode?currentText.split(\"\").reverse().join(\"\"):currentText;const run=()=>{if(isDeleting){if(displayedText.length===0){setIsDeleting(false);if(currentTextIndex===textArray.length-1&&!loop)return;setCurrentTextIndex(i=>(i+1)%textArray.length);setCurrentCharIndex(0);timeout=setTimeout(()=>{},pauseDuration);}else{timeout=setTimeout(()=>{setDisplayedText(prev=>prev.slice(0,-1));},deletingSpeed);}}else{if(currentCharIndex<processed.length){timeout=setTimeout(()=>{setDisplayedText(prev=>prev+processed[currentCharIndex]);setCurrentCharIndex(i=>i+1);},variableSpeed?getRandomSpeed():typingSpeed);}else{if(textArray.length>1&&(loop||currentTextIndex<textArray.length-1)){timeout=setTimeout(()=>setIsDeleting(true),pauseDuration);}else{// stop on last sentence; keep cursor blinking\n}}}};if(currentCharIndex===0&&!isDeleting&&displayedText===\"\"){timeout=setTimeout(run,initialDelay);}else{run();}return()=>timeout&&clearTimeout(timeout);},[isVisible,textArray,currentTextIndex,loop,currentCharIndex,displayedText,isDeleting,typingSpeed,deletingSpeed,pauseDuration,initialDelay,reverseMode,variableSpeed,getRandomSpeed]);// Fluid font style via CSS clamp\nconst fluidStyle=sizingMode===\"fluid\"?{fontSize:`clamp(${minFont}px, ${fluidVw}vw, ${maxFont}px)`}:{};// Base container style\nconst{clipOverflow=false}=props;const baseStyle={display:\"block\",width:\"100%\",height:\"100%\",whiteSpace:\"pre-wrap\",// --- MOBILE FIXES ---\nwordBreak:\"break-word\",overflowWrap:\"break-word\",// --------------------\noverflow:clipOverflow?\"hidden\":\"visible\",textAlign:props.textAlign,...style};const shouldHideCursor=hideCursorWhileTyping&&(currentCharIndex<(textArray[currentTextIndex]??\"\").length||isDeleting);return /*#__PURE__*/_jsxs(As,{ref:containerRef,className:`text-type ${className||\"\"}`,style:baseStyle,...rest,children:[/*#__PURE__*/_jsx(\"span\",{className:\"text-type__content\",style:{// Removed 'all: \"unset\"' here to allow text-wrapping inheritance\ndisplay:\"inline\",color:getCurrentTextColor(),...props.font,letterSpacing:`${letterSpacing}px`,...fluidStyle},children:displayedText}),showCursor&&!shouldHideCursor&&/*#__PURE__*/_jsx(motion.span,{className:`text-type__cursor ${cursorClassName||\"\"}`,style:{marginLeft:\"0.25rem\",display:\"inline-block\",color:resolvedCursorColor,...props.font,...fluidStyle},animate:{opacity:[1,0]},transition:{duration:cursorBlinkDuration,repeat:Infinity,repeatType:\"reverse\",ease:\"easeInOut\"},children:cursorChar})]});}ProTextTypeEffect.displayName=\"Pro Text Type Effect\";addPropertyControls(ProTextTypeEffect,{text:{type:ControlType.Array,title:\"Text\",defaultValue:[\"Building the Future of Innovation For Municipal Finance\",\"Explore, Research, and Extract Valuable Data From Official Statements\",\"Connect to Local Data, Develop Custom Analytics, All With Natural Language →\"],control:{type:ControlType.String,displayTextArea:true,defaultValue:\"\"}},font:{type:\"font\",controls:\"extended\",defaultFontType:\"schibsted grotesk\",defaultValue:{fontSize:16,lineHeight:1.2}},sizingMode:{type:ControlType.Enum,title:\"Sizing\",options:[\"fixed\",\"fluid\"],optionTitles:[\"Fixed\",\"Fluid (clamp)\"],defaultValue:\"fluid\",description:\"Choose how the text scales\"},letterSpacing:{type:ControlType.Number,title:\"Letter Space\",defaultValue:0,min:-5,max:20,step:.5,displayStepper:true},minFont:{type:ControlType.Number,title:\"Min px\",defaultValue:18,min:8,max:200,hidden:p=>p.sizingMode!==\"fluid\",description:\"Smallest allowed font size\"},maxFont:{type:ControlType.Number,title:\"Max px\",defaultValue:64,min:8,max:200,hidden:p=>p.sizingMode!==\"fluid\",description:\"Largest allowed font size\"},fluidVw:{type:ControlType.Number,title:\"Scale (vw)\",defaultValue:6,min:.1,max:20,step:.1,hidden:p=>p.sizingMode!==\"fluid\",description:\"How quickly the font grows as the screen width increases\"},textColors:{type:ControlType.Array,title:\"Text Colors\",control:{type:ControlType.Color,defaultValue:\"#ffffff\"},defaultValue:[\"#ffffff\"],description:\"Cycles through colors per sentence\"},textAlign:{type:ControlType.Enum,title:\"Text Align\",options:[\"left\",\"center\",\"right\",\"justify\"],optionTitles:[\"Left\",\"Center\",\"Right\",\"Justify\"],defaultValue:\"left\"},as:{type:ControlType.Enum,title:\"Tag\",options:[\"div\",\"p\",\"span\",\"h1\",\"h2\",\"h3\",\"h4\",\"h5\",\"h6\"],optionTitles:[\"div\",\"p\",\"span\",\"H1\",\"H2\",\"H3\",\"H4\",\"H5\",\"H6\"],defaultValue:\"p\"},typingSpeed:{type:ControlType.Number,title:\"Type (ms)\",min:1,max:500,step:1,defaultValue:50,description:\"Time between characters\"},deletingSpeed:{type:ControlType.Number,title:\"Delete (ms)\",min:1,max:500,step:1,defaultValue:30,description:\"Time between deletions\"},initialDelay:{type:ControlType.Number,title:\"Delay (ms)\",min:0,max:5e3,step:10,defaultValue:0,description:\"Waiting time before starting\"},pauseDuration:{type:ControlType.Number,title:\"Pause (ms)\",min:0,max:1e4,step:50,defaultValue:2e3,description:\"Waiting time before deleting/next\"},loop:{type:ControlType.Boolean,title:\"Loop\",defaultValue:true},reverseMode:{type:ControlType.Boolean,title:\"Reverse text\",defaultValue:false},startOnVisible:{type:ControlType.Boolean,title:\"Start on visible\",defaultValue:false,description:\"Begin typing only when in view\"},showCursor:{type:ControlType.Boolean,title:\"Show cursor\",defaultValue:true},cursorMode:{type:ControlType.Enum,title:\"Cursor\",options:[\"preset\",\"custom\"],optionTitles:[\"Preset\",\"Custom\"],defaultValue:\"preset\",hidden:p=>!p.showCursor},cursorCharacterPreset:{type:ControlType.Enum,title:\"Preset\",options:[\"|\",\"_\",\"‖\",\"❚\",\"▋\",\"▌\",\"█\"],optionTitles:[\"Pipe |\",\"Underscore _\",\"Double Bar ‖\",\"Block ❚\",\"Left Half ▋\",\"Right Half ▌\",\"Full Block █\"],defaultValue:\"|\",hidden:p=>!p.showCursor||p.cursorMode!==\"preset\"},customCursorCharacter:{type:ControlType.String,title:\"Custom char\",placeholder:\"Any character(s)\",defaultValue:\"|\",hidden:p=>!p.showCursor||p.cursorMode!==\"custom\"},cursorColorMode:{type:ControlType.Enum,title:\"Cursor color\",options:[\"matchFirst\",\"custom\"],optionTitles:[\"Match first color\",\"Custom\"],defaultValue:\"matchFirst\",hidden:p=>!p.showCursor},cursorCustomColor:{type:ControlType.Color,title:\"Custom color\",optional:true,hidden:p=>!p.showCursor||p.cursorColorMode!==\"custom\"},cursorBlinkDuration:{type:ControlType.Number,title:\"Blink (s)\",min:.05,max:2,step:.05,defaultValue:.5,hidden:p=>!p.showCursor},hideCursorWhileTyping:{type:ControlType.Boolean,title:\"Hide while typing\",defaultValue:false,hidden:p=>!p.showCursor},variableSpeed:{type:ControlType.Object,title:\"Variable speed\",optional:true,controls:{min:{type:ControlType.Number,title:\"Min (ms)\",min:1,max:500,step:1,defaultValue:30},max:{type:ControlType.Number,title:\"Max (ms)\",min:1,max:500,step:1,defaultValue:80}},description:\"Random delay between characters\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ProTextTypeEffect\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"600\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicHeight\":\"120\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ProTextType.map"],"mappings":"6jBAOG,SAAwB,EAAW,EAAM,CAAC,IAAM,EAAK,EAAM,KAAW,EAAIA,EAAO,KAAK,CAAM,CAAC,mBAAiB,EAAU,CAAC,OAAO,EAAI,OAAO,CAAC,SAAS,EAAM,cAAc,OAAO,EAAM,YAAY,CAAC,CAAC,CAAO,EAAS,EAAa,SAAS,GAAG,EAAa,OAAa,EAASC,MAAY,CAAC,IAAM,EAAiB,EAAK,QAAQ,oCAAoC;;EAAO,CAAC,QAAQ,qBAAqB;EAAK,CAAO,EAAY,EAAM,UAAU,OAAO,EAAiB,MAAM,kEAAkE,CAAC,OAAO,QAAQ,CAAC,KAAK,EAAQ,IAAQ,CAAC,GAAG,EAAQ,MAAM,MAAM,CAAE,MAAM,CAAC,KAAK,YAAY,QAAQ,EAAQ,CAAE,GAAG,EAAQ,WAAW,IAAI,EAAE,EAAQ,SAAS,IAAI,CAAC,CAAC,IAAM,EAAU,SAAS,EAAQ,MAAM,EAAE,GAAG,CAAC,CAAC,EAA6F,OAAxF,GAAa,CAAC,MAAM,EAAU,EAAE,GAAW,EAAS,CAAC,KAAK,OAAO,MAAM,EAAU,CAAa,CAAC,KAAK,OAAO,QAAQ,EAAQ,CAA2C,OAArC,EAAQ,MAAM,QAAQ,CAAS,KAAY,CAAC,KAAK,OAAO,QAAQ,EAAQ,EAAG,CAAC,OAAO,GAAS,GAAU,KAA0B,EAAG,CAAC,EAAK,EAAM,UAAU,CAAC,CAAO,EAAc,EAAS,OAAO,OAAoB,EAAK,MAAM,CAAK,MAAI,MAAM,CAAC,MAAM,OAAO,OAAO,OACxmC,GAAG,EAAM,KAAK,MAAM,EAAM,UAAU,OAAO,EAAE,QAAQ,EAAE,QAAQ,OAAO,SAAS,OAAO,WAAW,SAAS,IAAI,SAAS,UAAU,aAAa,CAAC,SAAS,EAAS,KAAK,EAAQ,IAAM,CAAC,GAAG,EAAQ,OAAO,YAAa,OAAoB,EAAK,OAAO,CAAC,MAAM,CAAC,UAAU,OAAO,OAAO,EAAE,CAAC,CAAC,SAAS,IAAM,CAAE,GAAG,EAAQ,OAAO,OAAO,CAAC,GAAG,CAAC,EAAM,UAAU,OAAO,KAAK,IAAM,EAAY,EAAM,QAAQ,EAAQ,OAAO,GAAG,CAAC,EAAY,CACla,IAAM,EAAS,WAAW,EAAM,MAAM,SAAS,EAAE,GAAS,EAAW,EAAM,MAAM,YAAY,IAAiH,EAAvF,OAAO,GAAa,SAAS,WAAW,EAAW,CAAC,EAAS,EAAW,EAAuC,OAAoB,EAAK,EAAS,CAAC,KAAK,GAAG,SAAS,EAAI,EAAc,QAAQ,EAAI,GAAG,EAAc,aAAa,EAAM,aAAa,WAAW,EAAM,WAAW,SAAS,EAAgB,eAAe,EAAM,eAAe,WAAW,EAAM,WAAW,aAAa,EAAM,aAAsB,WAAS,SAAsB,EAAK,OAAO,CAAC,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,eAAe,SAAS,UAAU,WAAW,WAAW,EAAM,UAAU,EAAE,YAAY,EAAM,UAAU,EAAE,gBAAgB,0BAA0B,MAAM,UAAU,QAAQ,WAAW,OAAO,oBAAoB,SAAS,OAAO,WAAW,OAAO,MAAM,EAAQ,OAAO,EAAQ,CAAC,SAAS,EAAQ,MAAM,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAM,CAAE,OAAoB,EAAK,EAAS,CAAC,KAAK,GAAG,SAAS,EAAI,EAAc,QAAQ,EAAI,GAAG,EAAc,aAAa,EAAM,aAAa,WAAW,EAAM,WAAW,SAAS,EAAgB,eAAe,EAAM,eAAe,WAAW,EAAM,WAAW,aAAa,EAAM,aAAsB,WAAS,SAAsB,EAAK,OAAO,CAAC,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,WAAW,EAAM,UAAU,EAAE,YAAY,EAAM,UAAU,EAAE,CAAC,SAAS,EAAY,CAAC,CAAC,CAAC,QAAQ,IAAM,CAAE,OAAoB,EAAK,EAAS,CAAC,KAAK,EAAQ,QAAQ,SAAS,EAAI,EAAc,QAAQ,EAAI,GAAG,EAAc,aAAa,EAAM,aAAa,WAAW,EAAM,WAAW,SAAS,EAAgB,eAAe,EAAM,eAAe,WAAW,EAAM,WAAW,aAAa,EAAM,aAAsB,WAAS,SAAS,KAAK,CAAC,QAAQ,IAAM,EAAG,CAAC,CAAC,oBARhrD,IAAiE,IAAmE,IAAkC,CAAM,GAAU,CAAC,OAAK,WAAS,SAAO,eAAa,aAAW,WAAS,WAAS,iBAAe,aAAW,eAAa,cAAY,CAAC,IAAM,EAAc,EAAW,EAAY,EAAa,EAAS,CAAC,EAAS,EAAO,CAAC,CAAC,EAAa,EAAW,CAAC,CAAO,EAAK,EAAa,EAAS,CAAC,EAAS,EAAO,CAAC,IAAiB,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAO,EAAQ,EAAa,EAAS,CAAC,EAAS,EAAO,CAAC,EAAW,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAO,EAAU,EAAa,EAAQ,GAAO,QAAQ,EAAM,KAAK,CAAO,EAAa,CAAC,UAAU,IAAI,QAAQ,GAAG,KAAK,EAAE,CAAO,EAAc,EAAU,EAAY,EAAa,CAAO,EAAQ,EAAU,EAAK,EAAa,CAAwD,EAAa,EAAnD,EAAU,EAAQ,EAAa,CAA4C,GAAO,QAAQ,EAAM,KAAK,CAAO,EAAa,EAAS,EAAE,EAAa,EAAc,EAAkB,EAAO,EAAS,EAAE,EAAa,EAAQ,EAAW,EAAY,EAAS,OAAO,EAAa,EAAa,EAA6Q,OAAhQ,EAA8B,EAAK,EAAO,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAa,EAAE,EAAO,OAAO,EAAW,EAAY,IAAA,GAAU,WAAW,IAAiB,QAAQ,qBAAqB,UAAU,QAAQ,cAAc,WAAW,SAAS,CAAU,WAAS,CAAC,CAAsB,EAAK,EAAO,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAa,EAAE,EAAO,OAAO,EAAW,EAAY,IAAA,GAAU,WAAW,IAAiB,QAAQ,qBAAqB,UAAU,QAAQ,SAAS,CAAC,wBAAwB,CAAC,OAAO,EAAc,CAAC,CAAC,EAQ0G,EAAoB,EAAW,CAAC,KAAK,CAAC,MAAM,OAAO,KAAK,EAAY,OAAO,aAAa,iFAAiF,gBAAgB,GAAK,CAAC,UAAU,CAAC,KAAK,EAAY,QAAQ,MAAM,aAAa,aAAa,GAAK,aAAa,MAAM,cAAc,KAAK,CAAC,MAAM,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,YAAY,6DAA6D,QAAQ,CAAC,KAAK,EAAY,kBAAkB,CAAC,aAAa,EAAE,CAAC,SAAS,GAAG,OAAO,GAAO,CAAC,GAAO,UAAU,CAAC,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,CAAC,KAAK,CAAC,KAAK,EAAY,KAAK,SAAS,WAAW,aAAa,CAAC,SAAS,GAAG,QAAQ,UAAU,WAAW,IAAI,CAAC,gBAAgB,aAAa,CAAC,UAAU,CAAC,KAAK,EAAY,MAAM,aAAa,UAAU,CAAC,eAAe,CAAC,KAAK,EAAY,KAAK,MAAM,YAAY,QAAQ,CAAC,OAAO,QAAQ,CAAC,aAAa,CAAC,OAAO,QAAQ,CAAC,aAAa,OAAO,wBAAwB,GAAK,CAAC,aAAa,CAAC,KAAK,EAAY,QAAQ,MAAM,SAAS,aAAa,GAAK,aAAa,MAAM,cAAc,KAAK,CAAC,WAAW,CAAC,KAAK,EAAY,QAAQ,MAAM,OAAO,aAAa,GAAM,aAAa,MAAM,cAAc,KAAK,CAAC,YAAY,CAAC,MAAM,eAAe,KAAK,EAAY,OAAO,aAAa,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC,UAAU,CAAC,MAAM,aAAa,KAAK,EAAY,OAAO,aAAa,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC,aAAa,CAAC,MAAM,gBAAgB,KAAK,EAAY,OAAO,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC,WAAW,CAAC,MAAM,cAAc,KAAK,EAAY,OAAO,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,ICJ/vG,SAASC,EAAS,EAAM,CAAC,GAAK,CAAC,QAAM,SAAO,UAAQ,WAAS,cAAY,aAAW,KAAG,WAAS,GAAG,GAAM,EAAM,OAAO,EAQnH,SAAgB,EAAM,EAAM,CAAgC,OAAoB,EAAK,GAAU,CAAC,GAApDA,EAAS,EAAM,CAAiD,CAAC,CAAE,SAAS,GAAoB,EAAS,CAAC,IAAM,EAA4B,GAAgC,CAAO,EAAeC,EAAO,GAAM,CAAO,EAAaA,EAAO,GAAM,CAAO,EAAYC,EAAY,GAAa,CAAC,GAAG,CAAC,EAAS,QAAQ,OAAO,IAAM,GAAa,IAAc,EAAE,KAAK,GAAa,EAAS,QAAQ,SAAe,EAAa,KAAK,IAAI,EAAS,QAAQ,YAAY,EAAY,CAAC,GAAM,EAAS,QAAQ,SAAS,GAAG,CAAC,IAAc,EAAS,QAAQ,YAAY,IAAe,EAAE,CAAC,CAEja,MAAM,CAAC,KAFsaA,MAAgB,CAAC,IAAM,EAAM,EAAS,QAAY,IAAa,EAAM,QAAQ,OACtjB,EAAhH,EAAM,YAAY,GAAG,EAAM,WAAW,CAAC,EAAM,QAAQ,CAAC,EAAM,OAAO,EAAM,YAAY,EAAM,oBAAiC,GAAO,CAAC,EAAe,SAAS,IAA6B,EAAe,QAAQ,GAAK,EAAa,QAAQ,GAAK,EAAM,MAAM,CAAC,MAAM,GAAG,GAAG,CACxR,YAAY,EAAe,QAAQ,GAAM,IAAI,EAAE,CAAC,CAAwJ,MAA3IA,MAAgB,CAAI,CAAC,EAAS,SAAS,EAAe,UAAe,EAAS,QAAQ,OAAO,CAAC,EAAa,QAAQ,KAAQ,EAAE,CAAC,CAAmB,cAAY,UAAU,EAAa,CAAE,SAAS,GAAoB,CAAC,cAAY,QAAM,OAAK,cAAY,YAAU,CAAC,GAAK,CAAC,GAAoBC,EAAS,EAAY,CAAM,CAAC,EAAsB,GAA0BA,EAAS,GAAM,CAAI,IAAc,GAAoB,CAAC,GAAuB,EAAyB,GAAK,CAAE,IAAM,EAEzhB,GAAoB,GAAO,GAAM,GAAa,CAAC,GAQ/C,CAAC,EAA0B,EAA2H,MAAlH,CAA2F,EAAxF,EAAsB,cAAsB,EAA4B,WAAyB,cAAqB,EAgDoU,SAAS,GAAsB,EAAM,CAAC,OAAO,EAAM,OAAO,EAAE,CAAC,aAAa,CAAC,EAAM,MAAM,EAAE,CAAE,SAAgB,GAAU,EAAM,CAA0E,OAA5D,EAAM,MAAM,2CAA2C,EAAE,EAAE,EAAe,IAAI,GAAsB,CAAC,KAAK,IAAI,kCAtE7qB,IAAgG,IAAmD,IAAwN,IAChV,EAAmB,SAAS,EAAc,CAAC,EAAc,KAAQ,OAAO,EAAc,QAAW,UAAU,EAAc,MAAS,QAAQ,EAAc,KAAQ,OAAO,EAAc,UAAa,eAAgB,AAAgB,KAAc,EAAE,CAAE,EAAc,SAAS,EAAQ,CAAC,EAAQ,MAAS,SAAS,EAAQ,IAAO,QAAS,AAAU,KAAQ,EAAE,CAAE,CAAO,GAAa,uEAqBzQ,GAAuB,EAAK,SAAoB,EAAM,CAAC,GAAK,CACzO,UAAQ,MAAM,SAAO,UAAQ,GAAG,gBAAc,GAAM,WAAS,GAAM,UAAQ,GAAK,OAAK,GAAK,QAAM,GAAK,cAAY,GAAK,iBAAe,GAAM,YAAU,QAAQ,kBAAgB,gBAAgB,SAAO,EAAE,SAAO,GAAG,UAAU,EAAc,EAAE,SAAO,QAAQ,EAAY,WAAS,WAAS,UAAQ,SAAO,QAAM,UAAQ,eAAa,eAAa,eAAY,cAAW,EAAY,EAASF,GAAQ,CAAO,GAAS,IAAoB,CAAO,EAAiBA,EAAO,KAAK,CAAO,EAAgBA,EAAO,KAAK,CAAO,EAAW,GAAe,CAAO,EAAa,IAAiB,CAAO,EAAiB,GAAY,IAAe,EAAa,OAAa,EAAa,GAAU,EAAM,CAGvpB,EAAiB,EAAiB,cAAc,GAAoB,CAAC,cAAY,QAAM,OAAK,cAAY,WAAS,CAAC,CAAO,EAAa,EAAiB,GAAK,EAAU,EAAS,CAAO,EAAkB,EAAiB,GAAM,EAAU,EAAS,CAAC,OAAO,MAAM,KAAK,GAAK,CAAC,CAC3Q,EAAU,IAAgB,IAAI,KAAK,EAAmB,CAAC,OAAK,QAAM,cAAY,aAAW,GAAoB,EAAS,CAC5H,MAAc,CAAI,GAA2B,IAAmB,gBAAwB,EAAY,GAAM,CAAM,GAAO,GAAG,CAAC,EAAiB,EAAY,CAAC,CACzJ,MAAc,CAAI,IACf,GAAc,GAAa,IAAmB,eAAc,GAAM,CAAI,IAAmB,eAAqB,GAAO,GAAG,CAAC,EAAiB,EAAa,EAAY,CAAC,CAAC,MAAc,CAAI,CAAC,GAAY,GAAQ,GAAe,GAAW,CAAC,EAAS,UACnP,EAAS,QAAQ,YAAY,MAAM,CAAC,EAAc,EAAO,EAAU,CAAC,CAO7D,IAAM,EAAoCA,EAAO,GAAM,CAE9D,MAAc,CAAC,GAAG,CAAC,EAAoC,QAAQ,CAAC,EAAoC,QAAQ,GAAK,OAAwF,IAAzD,EAAc,EAAS,CAAC,EAAS,KAAK,EAAE,GAAU,GAAG,MAKlL,KAOlB,GAAW,GAAG,IAAI,EAAG,CAAC,EAAU,EAAQ,EAAO,EAAS,CAAC,CAC1D,MAAc,CAAK,KAAc,EAAS,CAAQ,OAAO,EAAS,GAAG,SAAS,GAAO,EAAY,EAAM,CAAC,EAAG,CAAC,EAAS,CAAC,CACtH,MAAe,CAAI,EAAiB,UAAU,MAAe,EAAS,UACnE,CAAC,GAAiB,GAAM,CAAC,EAAiB,UAAQ,GAAM,EAAI,CAC/D,OAAc,CAAI,EAAS,UAAS,EAAgB,QAAQ,EAAS,QAAQ,MAAM,EAAiB,QAAQ,EAAS,QAAQ,OAAO,GAAO,GAAI,CAAC,IAAM,EAAIG,MAAY,CAStK,GAAG,IAAU,MAAM,OAAO,EAAO,GAAS,GAAG,IAAU,SAAS,OAAO,EAAQ,IAAW,CAAC,EAAQ,EAAQ,EAAO,EAAU,CAAC,CAIN,OAHvH,MAAc,CAAI,IAAU,EAAS,SAAS,IAAmB,YAAY,eAAe,GAAM,CAAC,GAAG,EAAI,EAAE,CAAC,CAC7G,MAAc,CAAI,EAAS,SAAS,CAAC,IAAM,EAAS,QAAQ,QAAQ,GAAQ,GAAG,MAAM,CAAC,EAAO,CAAC,CAE6C,EAAK,QAAQ,CAAC,UAAQ,eAAa,eAAa,eAAY,aAAc,MAAS,OAAK,IAAI,EAAS,SAAS,GAAG,IAAW,EAAE,CAAC,QAAQ,GAAG,IAAU,EAAE,CAAC,OAAO,GAAG,IAAS,EAAE,CAAC,QAAQ,GAAG,IAAQ,EAAE,CAAC,SAAS,EAAU,SAAS,IAAmB,YAAY,GAAa,IAAmB,eAAe,EAAa,QAAQ,EAAU,QAAQ,OAAO,GAAkB,CAAC,EAAO,WAAW,IAAmB,YAAY,CAAC,EAAkB,OAC7jB,WAAW,OAAO,GAAe,CAAC,GAAS,IAAS,GAAa,sEAAsE,GAAe,EAAO,EAAO,IAAA,GAAU,iBAFxJ,CAAC,IAAM,EAAM,EAAS,QAAY,IAAgB,EAAM,YAAY,IAAI,EAAU,GAAE,GAAa,GAAW,GAAG,IAAI,EACzI,EAAU,SAAS,IAAmB,YAAY,GAAa,IAAmB,eAAe,IAAa,GAAM,GAC4F,WAAS,MAAM,EAAiB,GAAK,EAAM,YAAY,EAAY,MAAM,CAAC,OAAS,EAAQ,UAAU,OAAO,MAAM,OAAO,OAAO,OAAO,eAAa,QAAQ,QAAkB,YAA0B,kBAAgB,eAAe,UAAU,CAAC,CAAC,EAAG,CAAC,EAAM,YAAY,QAAuQ,GAAiB,CAAC,QAAQ,OAAO,UAAU,aAAa,OAAO,CAAC,EAAoB,EAAM,CAAC,QAAQ,CAAC,KAAK,EAAY,KAAK,wBAAwB,GAAK,MAAM,SAAS,QAAQ,CAAC,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,MAAM,aAAa,uEAAuE,OAAO,EAAM,CAAC,OAAO,EAAM,UAAU,UAAW,CAAC,QAAQ,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,iBAAiB,CAAC,MAAM,OAAO,CAAC,YAAY,oBAAoB,OAAO,EAAM,CAAC,OAAO,EAAM,UAAU,OAAQ,CAAC,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,UAAU,aAAa,MAAM,cAAc,KAAK,CAAC,GAAG,EAAoB,cAAc,CAAC,KAAK,EAAY,QAAQ,MAAM,SAAS,aAAa,MAAM,cAAc,KAAK,CAAC,OAAO,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,QAAQ,CAAC,mBAAiB,CAAC,EAAc,YAAY,wHAAwH,CAAC,gBAAgB,CAAC,KAAK,EAAY,MAAM,MAAM,aAAa,aAAa,gBAAgB,CAAC,UAAU,CAAC,MAAM,aAAa,KAAK,EAAY,OAAO,IAAI,EAAE,IAAI,IAAI,KAAK,GAAG,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,EAAY,QAAQ,MAAM,OAAO,aAAa,MAAM,cAAc,KAAK,CAAC,UAAU,CAAC,KAAK,EAAY,KAAK,MAAM,MAAM,QAAQ,GAAiB,aAAa,GAAiB,IAAI,GAAU,CAAC,CAMzgE,SAAS,CAAC,KAAK,EAAY,QAAQ,MAAM,WAAW,aAAa,OAAO,cAAc,OAAO,aAAa,GAAM,CAAC,MAAM,CAAC,KAAK,EAAY,QAAQ,MAAM,QAAQ,aAAa,MAAM,cAAc,KAAK,CAAC,OAAO,CAAC,KAAK,EAAY,OAAO,IAAI,IAAI,IAAI,EAAE,KAAK,IAAI,QAAQ,CAAC,WAAS,EAAM,aAAa,GAAG,CAAC,MAAM,CAAC,KAAK,EAAY,aAAa,CAAC,SAAS,CAAC,KAAK,EAAY,aAAa,CAAC,QAAQ,CAAC,KAAK,EAAY,aAAa,CAAC,OAAO,CAAC,KAAK,EAAY,aAAa,CAAC,GAAG,EAAc,CAAC,IC/EvU,SAAwB,GAAc,CAAC,SAAO,UAAU,SAAO,UAAU,SAAO,UAAU,gBAAc,EAAE,OAAK,KAAK,CAAC,IAAM,EAAS,GAAG,EAAc,OAAoB,EAAM,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,OAAO,OAAO,SAAS,WAAW,SAAS,SAAS,SAAS,QAAQ,UAAU,QAAQ,CAAC,SAAS,CAAc,EAAK,EAAO,IAAI,CAAC,MAAM,CAAC,SAAS,WAAW,MAAM,OAAO,OAAO,OAAO,KAAK,OAAO,IAAI,OAAO,WAAW,sCAAsC,EAAO,uBAAuB,OAAO,QAAQ,EAAK,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,MAAM,KAAK,CAAC,EAAE,CAAC,KAAK,MAAM,KAAK,CAAC,CAAC,WAAW,CAAU,WAAS,OAAO,IAAS,KAAK,YAAY,CAAC,CAAC,CAAc,EAAK,EAAO,IAAI,CAAC,MAAM,CAAC,SAAS,WAAW,MAAM,OAAO,OAAO,OAAO,KAAK,OAAO,IAAI,OAAO,WAAW,sCAAsC,EAAO,uBAAuB,OAAO,QAAQ,EAAK,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,OAAO,KAAK,CAAC,EAAE,CAAC,KAAK,MAAM,KAAK,CAAC,CAAC,WAAW,CAAC,SAAS,EAAS,IAAI,OAAO,IAAS,KAAK,YAAY,CAAC,CAAC,CAAc,EAAK,EAAO,IAAI,CAAC,MAAM,CAAC,SAAS,WAAW,MAAM,OAAO,OAAO,OAAO,KAAK,OAAO,IAAI,OAAO,WAAW,sCAAsC,EAAO,uBAAuB,OAAO,QAAQ,EAAK,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,MAAM,KAAK,CAAC,EAAE,CAAC,KAAK,OAAO,KAAK,CAAC,CAAC,WAAW,CAAC,SAAS,EAAS,GAAG,OAAO,IAAS,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAr2C,IAAkC,IAAoD,CAAixC,GAAc,aAAa,CAAC,MAAM,IAAI,OAAO,IAAI,CAAC,EAAoB,GAAc,CAAC,OAAO,CAAC,KAAK,EAAY,MAAM,MAAM,UAAU,aAAa,UAAU,CAAC,OAAO,CAAC,KAAK,EAAY,MAAM,MAAM,UAAU,aAAa,UAAU,CAAC,OAAO,CAAC,KAAK,EAAY,MAAM,MAAM,UAAU,aAAa,UAAU,CAAC,KAAK,CAAC,KAAK,EAAY,OAAO,MAAM,OAAO,IAAI,GAAG,IAAI,IAAI,KAAK,GAAG,aAAa,IAAI,KAAK,KAAK,eAAe,GAAK,CAAC,cAAc,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,IAAI,GAAG,IAAI,EAAE,KAAK,GAAG,aAAa,EAAE,eAAe,GAAK,CAAC,CAAC,ICCnmC,SAAS,EAAqB,EAAU,GAAG,EAAS,CAAC,IAAM,EAAc,EAAE,CAAsF,OAArF,GAAU,QAAQ,GAAS,GAAS,OAAO,OAAO,EAAc,EAAU,GAAS,CAAC,CAAQ,6DAAv7B,IAA0M,IAAkE,IAA4B,IAAoJ,CAAM,GAAc,EAASC,EAAS,CAAO,GAAgB,CAAC,UAAU,CAAC,MAAM,GAAK,CAAC,UAAU,CAAC,MAAM,GAAK,CAAC,UAAU,CAAC,MAAM,GAAK,CAAC,CAAO,GAAW,CAAC,YAAY,YAAY,YAAY,CAAO,GAAkB,eAAqB,GAAkB,CAAC,UAAU,mBAAmB,UAAU,mBAAmB,UAAU,mBAAmB,CAAkP,GAAY,CAAC,QAAQ,GAAG,MAAM,EAAE,KAAK,EAAE,UAAU,IAAI,KAAK,SAAS,CAAO,GAAY,CAAC,MAAM,EAAE,SAAS,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,KAAK,QAAQ,CAAO,IAAY,CAAC,QAAM,cAAY,CAAC,IAAM,EAAOC,EAAiB,EAAoB,CAAO,EAAW,GAAO,EAAO,WAAiB,EAAaC,OAAmB,CAAC,GAAG,EAAO,aAAW,EAAE,CAAC,KAAK,UAAU,EAAW,CAAC,CAAC,CAAC,OAAoB,EAAK,EAAoB,SAAS,CAAC,MAAM,EAAsB,WAAS,CAAC,EAAS,GAAwB,CAAC,YAAY,YAAY,YAAY,YAAY,UAAU,YAAY,CAAO,GAAS,EAAO,OAAOC,EAAe,CAAO,IAAU,CAAC,SAAO,KAAG,OAAK,QAAM,QAAM,GAAG,MAAgB,CAAC,GAAG,EAAM,UAAU,GAAO,EAAM,WAAW,iBAAiB,UAAU,GAAM,EAAM,UAAU,QAAQ,GAAwB,EAAM,UAAU,EAAM,SAAS,YAAY,EAAS,IAAwB,EAAM,IAAe,EAAM,iBAAwB,EAAS,KAAK,IAAI,CAAC,EAAM,iBAAwB,EAAS,KAAK,IAAI,CAW5gE,EAAgB,EAX4hE,EAAiB,SAAS,EAAM,EAAI,CAAC,IAAM,EAAYC,EAAO,KAAK,CAAO,EAAW,GAAK,EAAkB,EAAgBC,GAAa,CAAM,CAAC,eAAa,aAAW,IAAe,CAAyB,GAAsB,CAAC,GAAK,CAAC,QAAM,YAAU,WAAS,UAAQ,YAAU,YAAU,GAAG,GAAW,GAAS,EAAM,CAAM,CAAC,cAAY,aAAW,sBAAoB,kBAAgB,iBAAe,YAAU,kBAAgB,aAAW,YAAU,EAAgB,CAAC,cAAW,eAAe,YAAY,mBAAgB,IAAI,EAAW,UAAQ,qBAAkB,CAAC,CAAO,EAAiB,GAAuB,EAAM,EAAS,CAAsC,EAAkB,EAAG,GAA2C,CAAC,OAAoB,EAAK,EAAY,CAAC,GAAG,GAAU,EAAgB,SAAsB,EAAK,GAAS,CAAC,QAAQ,EAAS,QAAQ,GAAM,SAAsB,EAAK,GAAW,CAAC,MAAM,GAAY,GAAG,EAAqB,CAAC,UAAU,CAAC,MAAM,GAAY,CAAC,CAAC,EAAY,EAAe,CAAC,SAAsB,EAAK,GAAK,CAAC,KAAK,EAAU,YAAY,GAAK,OAAO,YAAY,QAAQ,YAAY,SAAsB,EAAM,EAAO,EAAE,CAAC,GAAG,EAAU,GAAG,EAAgB,UAAU,GAAG,EAAG,EAAkB,iBAAiB,EAAU,EAAW,CAAC,gBAAgB,mBAAmB,YAA6B,mBAAiB,SAAS,YAAY,IAAI,EAAW,MAAM,CAAC,gBAAgB,wEAAwE,uBAAuB,GAAG,wBAAwB,GAAG,oBAAoB,GAAG,qBAAqB,GAAG,GAAG,EAAM,CAAC,SAAS,CAAC,kBAAkB,CAAC,gBAAgB,sEAAsE,CAAC,UAAU,CAAC,gBAAgB,wEAAwE,CAAC,UAAU,CAAC,gBAAgB,qEAAqE,CAAC,CAAC,GAAG,EAAqB,CAAC,kBAAkB,CAAC,mBAAmB,IAAA,GAAU,CAAC,kBAAkB,CAAC,mBAAmB,IAAA,GAAU,CAAC,kBAAkB,CAAC,mBAAmB,IAAA,GAAU,CAAC,UAAU,CAAC,mBAAmB,YAAY,CAAC,UAAU,CAAC,mBAAmB,YAAY,CAAC,CAAC,EAAY,EAAe,CAAC,SAAS,CAAc,EAAKC,GAAS,CAAC,sBAAsB,GAAK,SAAsB,EAAKH,EAAe,CAAC,SAAsB,EAAK,EAAO,GAAG,CAAC,IAAI,OAAO,MAAM,CAAC,kBAAkB,mCAAmC,uBAAuB,mEAAmE,qBAAqB,OAAO,uBAAuB,MAAM,uBAAuB,QAAQ,sBAAsB,8FAA8F,CAAC,SAAS,iBAAiB,CAAC,CAAC,CAAC,CAAC,UAAU,gBAAgB,MAAM,CAAC,2BAA2B,CAAkB,mBAAiB,SAAS,YAAY,MAAM,CAAC,qBAAqB,qEAAqE,2BAA2B,mBAAmB,gCAAgC,YAAY,CAAC,KAAK,EAAU,SAAS,CAAC,kBAAkB,CAAC,qBAAqB,wEAAwE,CAAC,kBAAkB,CAAC,qBAAqB,qBAAqB,CAAC,UAAU,CAAC,qBAAqB,wEAAwE,CAAC,CAAC,kBAAkB,MAAM,mBAAmB,GAAK,GAAG,EAAqB,CAAC,kBAAkB,CAAC,SAAsB,EAAKA,EAAe,CAAC,SAAsB,EAAK,EAAO,GAAG,CAAC,IAAI,OAAO,MAAM,CAAC,kBAAkB,mCAAmC,uBAAuB,mEAAmE,qBAAqB,OAAO,uBAAuB,MAAM,uBAAuB,QAAQ,sBAAsB,iGAAiG,CAAC,SAAS,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,SAAsB,EAAKA,EAAe,CAAC,SAAsB,EAAK,EAAO,GAAG,CAAC,IAAI,OAAO,MAAM,CAAC,kBAAkB,mCAAmC,uBAAuB,mEAAmE,qBAAqB,OAAO,uBAAuB,MAAM,uBAAuB,QAAQ,sBAAsB,8CAA8C,CAAC,SAAS,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAsB,EAAKA,EAAe,CAAC,SAAsB,EAAK,EAAO,GAAG,CAAC,IAAI,OAAO,MAAM,CAAC,kBAAkB,mCAAmC,uBAAuB,mEAAmE,qBAAqB,OAAO,uBAAuB,MAAM,uBAAuB,QAAQ,sBAAsB,iGAAiG,CAAC,SAAS,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAY,EAAe,CAAC,CAAC,CAAc,EAAM,EAAO,IAAI,CAAC,UAAU,iBAAkC,mBAAiB,SAAS,YAAY,MAAM,CAAC,uBAAuB,IAAI,wBAAwB,IAAI,oBAAoB,IAAI,qBAAqB,IAAI,CAAC,SAAS,CAAc,EAAK,EAAO,IAAI,CAAC,UAAU,iBAAkC,mBAAiB,SAAS,YAAY,MAAM,CAAC,gBAAgB,sEAAsE,uBAAuB,IAAI,wBAAwB,IAAI,oBAAoB,IAAI,qBAAqB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,gBAAgB,wEAAwE,CAAC,CAAC,CAAC,CAAc,EAAM,EAAO,IAAI,CAAC,UAAU,iBAAkC,mBAAiB,SAAS,YAAY,SAAS,CAAc,EAAK,EAA0B,CAAC,SAAsB,EAAK,EAA8B,CAAC,UAAU,yBAAyB,iBAAiB,GAAK,iBAAiB,GAAsB,mBAAiB,SAAS,sBAAsB,OAAO,YAAY,kBAAkB,GAAK,QAAQ,YAAY,MAAM,CAAC,OAAO,IAAI,CAAC,SAAsB,EAAKH,EAAS,CAAC,MAAM,wEAAwE,OAAO,OAAO,WAAW,QAAQ,cAAc,YAAY,GAAG,YAAY,SAAS,YAAY,SAAS,GAAM,aAAa,GAAK,MAAM,CAAC,OAAO,OAAO,MAAM,OAAO,CAAC,OAAO,UAAU,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAc,EAAK,EAA0B,CAAC,SAAsB,EAAK,EAA8B,CAAC,UAAU,2BAA2B,iBAAiB,GAAK,iBAAiB,GAAsB,mBAAiB,SAAS,sBAAsB,OAAO,YAAY,kBAAkB,GAAK,QAAQ,YAAY,MAAM,CAAC,OAAO,IAAI,CAAC,SAAsB,EAAKA,EAAS,CAAC,MAAM,wEAAwE,OAAO,OAAO,WAAW,QAAQ,cAAc,YAAY,GAAG,YAAY,SAAS,YAAY,SAAS,GAAM,aAAa,GAAK,MAAM,CAAC,OAAO,OAAO,MAAM,OAAO,CAAC,OAAO,UAAU,MAAM,OAAO,GAAG,EAAqB,CAAC,UAAU,CAAC,MAAM,sEAAsE,CAAC,CAAC,EAAY,EAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAG,CAAW,CAAC,kFAAkF,gFAAgF,mWAAmW,gHAAgH,gMAAgM,8QAA8Q,wWAAwW,gJAAgJ,sEAAsE,kPAAkP,wFAAwF,sEAAsE,CAW39V,eAAe,IAAgB,EAAgB,EAAgB,YAAY,qBAAqB,EAAgB,aAAa,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,EAAoB,EAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,YAAY,YAAY,CAAC,aAAa,CAAC,YAAY,YAAY,YAAY,CAAC,MAAM,UAAU,KAAK,EAAY,KAAK,CAAC,UAAU,CAAC,aAAa,iBAAiB,gBAAgB,GAAM,MAAM,QAAQ,KAAK,EAAY,OAAO,CAAC,kBAAkB,CAAC,QAAQ,YAAY,KAAK,EAAY,cAAc,CAAC,UAAU,CAAC,MAAM,OAAO,KAAK,EAAY,KAAK,CAAC,CAAC,CAAC,EAAS,EAAgB,CAAC,CAAC,cAAc,GAAK,MAAM,CAAC,CAAC,cAAc,oBAAoB,OAAO,SAAS,MAAM,SAAS,aAAa,oBAAoB,IAAI,mHAAmH,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,GAAc,CAAC,CAAC,6BAA6B,GAAK,CAAC,ICPx6B,SAAwB,GAAa,EAAM,CAAC,GAAK,CAAC,EAAS,GAAaO,EAAS,KAAK,CAAM,CAAC,EAAe,GAAmBA,EAAS,mBAAmB,CAAM,CAAC,EAAiB,GAAqBA,EAAS,2BAA2B,CAAM,CAAC,EAAK,GAASA,EAAS,GAAG,CAAM,CAAC,EAAU,GAAcA,EAAS,GAAM,CAAO,EAAUC,EAAO,KAAK,CACrV,EAAS,EAAM,SAAS,MAAc,CAAC,GAAG,EAAS,OACzD,SAAS,EAAmB,EAAM,CAAI,EAAU,SAAS,CAAC,EAAU,QAAQ,SAAS,EAAM,OAAO,EAAE,EAAY,KAAK,CAA6D,OAA1D,SAAS,iBAAiB,YAAY,EAAmB,KAAW,SAAS,oBAAoB,YAAY,EAAmB,EAAG,CAAC,EAAS,CAAC,CAAC,IAAM,EAAW,GAAM,CAAC,EAAY,IAAW,EAAK,KAAK,EAAK,EAAS,EAAsB,GAAG,CAAI,EAAM,SAAQ,EAAM,QAAQ,EAAE,EACnY,EAAoB,CAAC,QAAQ,OAAO,cAAc,EAAS,SAAS,MAAM,eAAe,EAAS,aAAa,gBAAgB,WAAW,EAAS,UAAU,SAAS,MAAM,OAAO,SAAS,WAAW,OAAO,GAAG,IAAI,EAAS,OAAO,MAAM,CAAO,EAAuB,CAAC,QAAQ,OAAO,WAAW,SAAS,eAAe,EAAS,gBAAgB,aAAa,IAAI,OAAO,MAAM,EAAS,OAAO,OAAO,CAAO,EAAc,CAAC,SAAS,EAAS,OAAO,OAAO,MAAM,UAAU,WAAW,MAAM,WAAW,SAAS,CACrf,EAAS,IAAW,SAAe,EAAc,EAAS,CAAC,2BAA2B,mBAAmB,CAAC,CAAC,eAAe,mBAAmB,mBAAmB,iCAAiC,oBAAoB,mBAAmB,0BAA0B,iCAAiC,CAAO,EAAmB,GAAQ,CAAI,EAAS,EAAkB,EAAO,CAAM,EAAoB,EAAO,CAAC,EAAY,KAAK,EAAG,OAAoB,EAAM,MAAM,CAAC,IAAI,EAAU,MAAM,CAAC,GAAG,EAAM,MAAM,MAAM,OAAO,OAAO,OAAO,SAAS,WAAW,SAAS,UAAU,OAAO,EACrjB,UAAU,EAAS,OAAO,gBAAgB,gBAAgB,EAAS,OAAO,gBAAgB,WAAW,EAAS,OAAO,YAAY,mBAAmB,SAAS,CAAC,SAAS,CAAc,EAAK,QAAQ,CAAC,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAuC9L,CAAC,CAAc,EAAK,EAAgB,CAAC,SAAS,GAAU,GAAuB,EAAK,EAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,WAAW,CAAC,SAAS,GAAG,CAAC,MAAM,CAAC,SAAS,QAAQ,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,qBAAqB,OAAO,MAAM,QAAQ,OAAO,cAAc,SAAS,eAAe,WAAW,CAAC,YAAY,EAAY,KAAK,CAAC,SAAsB,EAAM,EAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,KAAK,SAAS,QAAQ,GAAG,UAAU,IAAI,CAAC,KAAK,IAAI,gBAAgB,CAAC,IAAI,EAAE,CAAC,YAAY,GAAG,WAAW,EAAE,IAAO,EACrlB,EAAK,OAAO,EAAE,KAAK,EAAK,SAAS,EAAE,MAAK,EAAY,KAAK,EAAI,MAAM,CAAC,WAAW,qFAAqF,eAAe,aAAa,qBAAqB,aAAa,UAAU,qCAAqC,oBAAoB,OAAO,qBAAqB,OAAO,QAAQ,sBAAsB,MAAM,OAAO,UAAU,aAAa,UAAU,kCAAkC,YAAY,OAAO,CAAC,QAAQ,GAAG,EAAE,iBAAiB,CAAC,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,OAAO,MAAM,gBAAgB,2BAA2B,aAAa,MAAM,OAAO,mBAAmB,CAAC,CAAC,CAAc,EAAK,MAAM,CAAC,UAAU,eAC9qB,cAAc,GAAG,EAAE,iBAAiB,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,MAAM,UAAU,OAAO,UAAU,OAAO,aAAa,MAAM,CAAC,SAAS,EAAc,IAAI,GAAqB,EAAK,MAAM,CAAC,YAAY,EAAmB,EAAO,CAAC,MAAM,CAAC,QAAQ,OAAO,SAAS,OAAO,MAAM,UAAU,WAAW,MAAM,gBAAgB,4BAA4B,aAAa,OAAO,OAAO,sCAAsC,OAAO,UAAU,CAAC,SAAS,EAAO,CAAC,EAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAc,EAAK,EAAmB,CAAC,aAAa,GAAG,gBAAgB,EAAM,gBAAgB,KAAK,EAAM,KAAK,aAAa,EAAM,aAAa,aAAa,EAAM,aAAa,SAAsB,EAAM,MAAM,CAAC,MAAM,GAAoB,SAAS,CAAC,CAAC,GAAW,IAAO,IAAiB,EAAM,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,IAAI,OAAO,KAAK,OAAO,cAAc,OAAO,MAAM,2BAA2B,SAAS,OAAO,WAAW,UAAU,WAAW,IAAI,OAAO,GAAG,aAAa,OAAO,CAAC,SAAS,CAAc,EAAK,OAAO,CAAC,UAAU,kBAAkB,SAAS,IAAI,CAAC,CAAC,EAAM,YAAY,CAAC,CAAC,CAAc,EAAK,WAAW,CAAC,UAAU,iBAAiB,MAAM,GAAc,KAAK,EAAS,EAAE,EAAE,MAAM,EAAK,SAAS,GAAG,EAAQ,EAAE,OAAO,MAAM,CAAC,YAAY,EAAa,GAAK,CAAC,WAAW,EAAa,GAAM,CAAC,UAAU,GAAG,CAAI,EAAE,MAAM,UAAS,EAAE,gBAAgB,CAAC,EAAsB,EAAE,GAAI,CAAC,CAAc,EAAM,MAAM,CAAC,MAAM,EAAoB,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,GAAgB,YAAY,EAAW,SAAS,CAAC,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,2BAA2B,SAAsB,EAAK,OAAO,CAAC,EAAE,8FAA8F,CAAC,CAAC,CAAC,CAAc,EAAK,OAAO,CAAC,MAAM,EAAc,SAAS,EAAe,CAAC,CAAc,EAAK,MAAM,CAAC,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OAAO,OAAO,2BAA2B,YAAY,IAAI,cAAc,QAAQ,eAAe,QAAQ,MAAM,CAAC,UAAU,IAAW,SAAS,iBAAiB,OAAO,WAAW,sBAAsB,CAAC,SAAsB,EAAK,WAAW,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAc,EAAM,MAAM,CAAC,MAAM,EAAuB,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,GAAG,GAAgB,KAAK,EAAS,EAAE,OAAO,eAAe,EAAS,gBAAgB,aAAa,CAAC,YAAY,EAAW,WAAW,CAAC,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,EAAc,SAAS,EAAiB,CAAC,CAAc,EAAK,MAAM,CAAC,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OAAO,OAAO,2BAA2B,YAAY,IAAI,cAAc,QAAQ,eAAe,QAAQ,MAAM,CAAC,UAAU,IAAW,WAAW,iBAAiB,OAAO,WAAW,sBAAsB,CAAC,SAAsB,EAAK,WAAW,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAc,EAAK,SAAS,CAAC,MAAM,GAAgB,QAAQ,EAAsB,SAAsB,EAAM,MAAM,CAAC,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OAAO,OAAO,UAAU,YAAY,MAAM,cAAc,QAAQ,eAAe,QAAQ,SAAS,CAAc,EAAK,OAAO,CAAC,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC,CAAc,EAAK,WAAW,CAAC,OAAO,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAU,IAAW,UAAuB,EAAM,MAAM,CAAC,MAAM,CAAC,GAAG,GAAkB,IAAI,oBAAoB,KAAK,OAAO,QAAQ,OAAO,cAAc,SAAS,CAAC,SAAS,CAAc,EAAK,MAAM,CAAC,UAAU,gBAAgB,YAAY,CAAC,EAAkB,2BAA2B,CAAC,EAAY,KAAK,EAAG,SAAS,2BAA2B,CAAC,CAAc,EAAK,MAAM,CAAC,UAAU,gBAAgB,YAAY,CAAC,EAAkB,mBAAmB,CAAC,EAAY,KAAK,EAAG,SAAS,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAU,IAAW,YAAyB,EAAK,MAAM,CAAC,MAAM,CAAC,GAAG,GAAkB,IAAI,oBAAoB,MAAM,OAAO,MAAM,QAAkB,QAAQ,OAAO,oBAAoB,UAAiB,IAAI,MAAM,CAAC,SAAS,CAAC,eAAe,mBAAmB,mBAAmB,iCAAiC,oBAAoB,mBAAmB,0BAA0B,iCAAiC,CAAC,IAAI,GAAqB,EAAK,MAAM,CAAC,UAAU,gBAAgB,YAAY,CAAC,EAAoB,EAAO,CAAC,EAAY,KAAK,EAAG,SAAS,EAAO,CAAC,EAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,kCAnD7lI,IAA6C,IAAoD,IAAkD,IAAsI,CAoDlV,EAAoB,GAAa,CAAC,SAAS,CAAC,KAAK,EAAY,QAAQ,MAAM,cAAc,aAAa,GAAM,CAAC,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,yDAAyD,CAAC,gBAAgB,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,IAAI,KAAK,IAAI,EAAE,KAAK,EAAE,aAAa,KAAK,CAAC,KAAK,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,aAAa,EAAE,CAAC,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,eAAe,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,aAAa,EAAE,CAAC,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,gBAAgB,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,aAAa,IAAI,CAAC,CAAC,CAAO,GAAoB,CAAC,SAAS,WAAW,OAAO,GAAG,cAAc,OAAO,QAAQ,OAAO,cAAc,SAAS,MAAM,OAAO,OAAO,OAAO,QAAQ,OAAO,IAAI,OAAO,WAAW,yDAAyD,UAAU,aAAa,CAAO,GAAc,CAAC,KAAK,EAAE,MAAM,OAAO,WAAW,cAAc,OAAO,OAAO,QAAQ,OAAO,SAAS,OAAO,MAAM,UAAU,OAAO,OAAO,WAAW,UAAU,WAAW,IAAI,QAAQ,EAAE,OAAO,EAAE,SAAS,WAAW,OAAO,GAAG,CAAO,GAAgB,CAAC,QAAQ,OAAO,WAAW,SAAS,IAAI,MAAM,QAAQ,WAAW,WAAW,uFAAuF,OAAO,sCAAsC,UAAU,6CAA6C,aAAa,OAAO,OAAO,UAAU,WAAW,OAAO,CAAO,GAAgB,CAAC,QAAQ,OAAO,WAAW,SAAS,eAAe,SAAS,MAAM,OAAO,OAAO,OAAO,gBAAgB,UAAU,UAAU,6BAA6B,OAAO,OAAO,aAAa,MAAM,OAAO,UAAU,WAAW,EAAE,CAAO,GAAkB,CAAC,SAAS,WAAW,WAAW,kFAAkF,eAAe,aAAa,qBAAqB,aAAa,OAAO,qCAAqC,aAAa,OAAO,QAAQ,MAAM,UAAU,iCAAiC,OAAO,IAAI,IC/C/9D,SAAwB,GAAkB,EAAM,CAAC,GAAK,CAAC,OAAK,GAAG,EAAM,cAAY,gBAAc,eAAa,gBAAc,gBAAc,OAAK,YAAU,aAAW,wBAAsB,aAAW,wBAAsB,wBAAsB,kBAAgB,sBAAoB,aAAW,kBAAgB,oBAAkB,gBAAc,iBAAe,cAAY,aAAW,UAAQ,WAAQ,WAAQ,QAAM,GAAG,IAAM,EACxZ,EAAUC,MAAkB,MAAM,QAAQ,EAAK,CAAC,EAAK,CAAC,GAAM,GAAG,CAAC,CAAC,EAAK,CAAC,CACvE,EAAW,IAAa,SAAS,GAAuB,OAAO,EAAsB,IAAI,EAA2B,CAAC,EAAc,GAAkBC,EAAe,GAAG,CAAM,CAAC,EAAiB,IAAqBA,EAAe,EAAE,CAAM,CAAC,EAAW,GAAeA,EAAe,GAAM,CAAM,CAAC,EAAiB,IAAqBA,EAAe,EAAE,CAAM,CAAC,EAAU,GAAcA,EAAe,CAAC,EAAe,CACvZ,GAAW,GAAY,EAAW,IAAI,UAAgB,EAAoB,IAAkB,UAAU,EAAkB,EAAkB,GAAiB,EAAaC,EAAa,KAAK,CAAO,GAAG,GAAO,MAC3M,EAAeC,MAAsB,CAAC,GAAG,CAAC,EAAc,OAAO,EAAY,GAAK,CAAC,MAAI,OAAK,EAAoB,EAAG,KAAK,IAAI,EAAE,OAAO,EAAI,EAAE,EAAE,CAAO,EAAG,KAAK,IAAI,EAAG,OAAO,EAAI,EAAE,EAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,EAAG,GAAI,GAAK,CAAC,EAAc,EAAY,CAAC,CAAO,EAAoBA,MAA0B,CAAC,GAAY,EAAW,SAAS,EAAQ,UAAiB,EAAW,EAAiB,EAAW,QAAU,CAAC,EAAW,EAAiB,CAAC,CACpb,MAAoB,CAAC,GAAG,CAAC,GAAgB,CAAC,EAAa,QAAQ,OAAO,IAAM,EAAG,EAAa,QAAc,EAAI,IAAI,qBAAqB,GAAS,CAAC,EAAQ,QAAQ,GAAO,CAAI,EAAM,gBAAe,EAAa,GAAK,EAAG,EAAG,CAAC,UAAU,GAAG,CAAC,CAAiB,OAAhB,EAAI,QAAQ,EAAG,KAAW,EAAI,YAAY,EAAG,CAAC,EAAe,CAAC,CACvS,MAAoB,CAAC,GAAG,CAAC,EAAU,OAAO,IAAI,EAAc,EAAY,EAAU,IAAmB,GAAS,EAAU,EAAY,EAAY,MAAM,GAAG,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,EAAkB,MAAQ,CAAC,GAAG,EAAY,GAAG,EAAc,SAAS,EAAE,CAAsB,GAArB,EAAc,GAAM,CAAI,IAAmB,EAAU,OAAO,GAAG,CAAC,EAAK,OAAO,GAAoB,IAAI,EAAE,GAAG,EAAU,OAAO,CAAC,GAAoB,EAAE,CAAC,EAAQ,eAAe,GAAG,EAAc,MAAO,EAAQ,eAAe,CAAC,EAAiB,GAAM,EAAK,MAAM,EAAE,GAAG,CAAC,EAAG,EAAc,MAAW,EAAiB,EAAU,OAAQ,EAAQ,eAAe,CAAC,EAAiB,GAAM,EAAK,EAAU,GAAkB,CAAC,GAAoB,GAAG,EAAE,EAAE,EAAG,EAAc,GAAgB,CAAC,EAAY,CAAU,EAAU,OAAO,IAAI,GAAM,EAAiB,EAAU,OAAO,KAAI,EAAQ,eAAe,EAAc,GAAK,CAAC,EAAc,GACjuB,OAAzG,IAAmB,GAAG,CAAC,GAAY,IAAgB,GAAI,EAAQ,WAAW,EAAI,EAAa,CAAO,GAAK,KAAY,GAAS,aAAa,EAAQ,EAAG,CAAC,EAAU,EAAU,EAAiB,EAAK,EAAiB,EAAc,EAAW,EAAY,EAAc,EAAc,EAAa,EAAY,EAAc,EAAe,CAAC,CAChV,IAAM,EAAW,IAAa,QAAQ,CAAC,SAAS,SAAS,EAAQ,MAAM,GAAQ,MAAM,GAAQ,KAAK,CAAC,EAAE,CAChG,CAAC,eAAa,IAAO,EAAY,EAAU,CAAC,QAAQ,QAAQ,MAAM,OAAO,OAAO,OAAO,WAAW,WACvG,UAAU,aAAa,aAAa,aACpC,SAAS,EAAa,SAAS,UAAU,UAAU,EAAM,UAAU,GAAG,EAAM,CAAO,EAAiB,IAAwB,GAAkB,EAAU,IAAmB,IAAI,QAAQ,GAAY,OAAoB,EAAM,GAAG,CAAC,IAAI,EAAa,UAAU,aAAa,GAAW,KAAK,MAAM,EAAU,GAAG,GAAK,SAAS,CAAc,EAAK,OAAO,CAAC,UAAU,qBAAqB,MAAM,CAC1X,QAAQ,SAAS,MAAM,GAAqB,CAAC,GAAG,EAAM,KAAK,cAAc,GAAG,EAAc,IAAI,GAAG,EAAW,CAAC,SAAS,EAAc,CAAC,CAAC,GAAY,CAAC,GAA+B,EAAK,EAAO,KAAK,CAAC,UAAU,qBAAqB,GAAiB,KAAK,MAAM,CAAC,WAAW,UAAU,QAAQ,eAAe,MAAM,EAAoB,GAAG,EAAM,KAAK,GAAG,EAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,SAAS,EAAoB,OAAO,IAAS,WAAW,UAAU,KAAK,YAAY,CAAC,SAAS,EAAW,CAAC,CAAC,CAAC,CAAC,mBAjB1b,IAAoD,IAA4B,IAAkC,CAiB0U,GAAkB,YAAY,uBAAuB,EAAoB,GAAkB,CAAC,KAAK,CAAC,KAAK,EAAY,MAAM,MAAM,OAAO,aAAa,CAAC,0DAA0D,wEAAwE,+EAA+E,CAAC,QAAQ,CAAC,KAAK,EAAY,OAAO,gBAAgB,GAAK,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,OAAO,SAAS,WAAW,gBAAgB,oBAAoB,aAAa,CAAC,SAAS,GAAG,WAAW,IAAI,CAAC,CAAC,WAAW,CAAC,KAAK,EAAY,KAAK,MAAM,SAAS,QAAQ,CAAC,QAAQ,QAAQ,CAAC,aAAa,CAAC,QAAQ,gBAAgB,CAAC,aAAa,QAAQ,YAAY,6BAA6B,CAAC,cAAc,CAAC,KAAK,EAAY,OAAO,MAAM,eAAe,aAAa,EAAE,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,eAAe,GAAK,CAAC,QAAQ,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,OAAO,GAAGC,EAAE,aAAa,QAAQ,YAAY,6BAA6B,CAAC,QAAQ,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,OAAO,GAAGA,EAAE,aAAa,QAAQ,YAAY,4BAA4B,CAAC,QAAQ,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,EAAE,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,OAAO,GAAGA,EAAE,aAAa,QAAQ,YAAY,2DAA2D,CAAC,WAAW,CAAC,KAAK,EAAY,MAAM,MAAM,cAAc,QAAQ,CAAC,KAAK,EAAY,MAAM,aAAa,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,YAAY,qCAAqC,CAAC,UAAU,CAAC,KAAK,EAAY,KAAK,MAAM,aAAa,QAAQ,CAAC,OAAO,SAAS,QAAQ,UAAU,CAAC,aAAa,CAAC,OAAO,SAAS,QAAQ,UAAU,CAAC,aAAa,OAAO,CAAC,GAAG,CAAC,KAAK,EAAY,KAAK,MAAM,MAAM,QAAQ,CAAC,MAAM,IAAI,OAAO,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,CAAC,aAAa,CAAC,MAAM,IAAI,OAAO,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,CAAC,aAAa,IAAI,CAAC,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,aAAa,GAAG,YAAY,0BAA0B,CAAC,cAAc,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,aAAa,GAAG,YAAY,yBAAyB,CAAC,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,IAAI,EAAE,IAAI,IAAI,KAAK,GAAG,aAAa,EAAE,YAAY,+BAA+B,CAAC,cAAc,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,IAAI,EAAE,IAAI,IAAI,KAAK,GAAG,aAAa,IAAI,YAAY,oCAAoC,CAAC,KAAK,CAAC,KAAK,EAAY,QAAQ,MAAM,OAAO,aAAa,GAAK,CAAC,YAAY,CAAC,KAAK,EAAY,QAAQ,MAAM,eAAe,aAAa,GAAM,CAAC,eAAe,CAAC,KAAK,EAAY,QAAQ,MAAM,mBAAmB,aAAa,GAAM,YAAY,iCAAiC,CAAC,WAAW,CAAC,KAAK,EAAY,QAAQ,MAAM,cAAc,aAAa,GAAK,CAAC,WAAW,CAAC,KAAK,EAAY,KAAK,MAAM,SAAS,QAAQ,CAAC,SAAS,SAAS,CAAC,aAAa,CAAC,SAAS,SAAS,CAAC,aAAa,SAAS,OAAO,GAAG,CAACA,EAAE,WAAW,CAAC,sBAAsB,CAAC,KAAK,EAAY,KAAK,MAAM,SAAS,QAAQ,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,eAAe,eAAe,UAAU,cAAc,eAAe,eAAe,CAAC,aAAa,IAAI,OAAO,GAAG,CAACA,EAAE,YAAYA,EAAE,aAAa,SAAS,CAAC,sBAAsB,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,YAAY,mBAAmB,aAAa,IAAI,OAAO,GAAG,CAACA,EAAE,YAAYA,EAAE,aAAa,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAY,KAAK,MAAM,eAAe,QAAQ,CAAC,aAAa,SAAS,CAAC,aAAa,CAAC,oBAAoB,SAAS,CAAC,aAAa,aAAa,OAAO,GAAG,CAACA,EAAE,WAAW,CAAC,kBAAkB,CAAC,KAAK,EAAY,MAAM,MAAM,eAAe,SAAS,GAAK,OAAO,GAAG,CAACA,EAAE,YAAYA,EAAE,kBAAkB,SAAS,CAAC,oBAAoB,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,IAAI,IAAI,IAAI,EAAE,KAAK,IAAI,aAAa,GAAG,OAAO,GAAG,CAACA,EAAE,WAAW,CAAC,sBAAsB,CAAC,KAAK,EAAY,QAAQ,MAAM,oBAAoB,aAAa,GAAM,OAAO,GAAG,CAACA,EAAE,WAAW,CAAC,cAAc,CAAC,KAAK,EAAY,OAAO,MAAM,iBAAiB,SAAS,GAAK,SAAS,CAAC,IAAI,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,aAAa,GAAG,CAAC,IAAI,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,aAAa,GAAG,CAAC,CAAC,YAAY,kCAAkC,CAAC,CAAC"}