{"version":3,"file":"script_main.Bx2aPwf6.mjs","names":["serializationHash","variantClassNames","humanReadableVariantMap","getProps","Component","className","_Fragment","css","x","Nav","DrawLineCursor","isBrowser","className","Image","PropertyOverrides","css","Layout","breakpoints"],"sources":["https:/framerusercontent.com/modules/a1V0rhNImF3zfOEfMKCT/5LAdjW318M159w7f5Wo0/yq407wrqT.js","https:/framerusercontent.com/modules/4YF6kUsCFqQnLXfxFXqo/s4aVOqoCDzFJNXsErQHa/CustomCursor.js","https:/framerusercontent.com/modules/bjdC30PJBQNsvKuec8NH/kCCavKyHx43vpGxnL16A/HxQXNSY96.js","framer:toplevel/main"],"sourcesContent":["// Generated by Framer (ce6e1ae)\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,Floating,getFontsFromSharedStyle,Link,RichText,SVG,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useOverlayState,useVariantState,withCSS,withFX}from\"framer\";import{AnimatePresence,LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import*as sharedStyle from\"https://framerusercontent.com/modules/eUpzvk4cVFc52wVbjLjA/DjOA6W2R2G8Nv7uSErCQ/P6Pjby6ex.js\";const MotionDivWithFX=withFX(motion.div);const cycleOrder=[\"uMejUTGSL\",\"CZ3Jc1xvq\"];const serializationHash=\"framer-UaJZ3\";const variantClassNames={CZ3Jc1xvq:\"framer-v-9g0hfx\",uMejUTGSL:\"framer-v-1q7wsau\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const transition2={bounce:.25,delay:0,duration:.45,type:\"spring\"};const animation={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition2,y:-10};const animation1={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition2,x:0,y:20};const animation2={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition2,x:0,y:0};const animation3={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:20};const Overlay=({children,blockDocumentScrolling,enabled=true})=>{const[visible,setVisible]=useOverlayState({blockDocumentScrolling});return children({hide:()=>setVisible(false),show:()=>setVisible(true),toggle:()=>setVisible(!visible),visible:enabled&&visible});};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 Variants=motion.create(React.Fragment);const humanReadableVariantMap={Desktop:\"uMejUTGSL\",Phone:\"CZ3Jc1xvq\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"uMejUTGSL\"};};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,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"uMejUTGSL\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onMouseEntertxyyif=({overlay,loadMore})=>activeVariantCallback(async(...args)=>{overlay.show();});const sharedStyleClassNames=[sharedStyle.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const ref1=React.useRef(null);const ref2=React.useRef(null);const ref3=React.useRef(null);const ref4=React.useRef(null);const ref5=React.useRef(null);const ref6=React.useRef(null);const ref7=React.useRef(null);const ref8=React.useRef(null);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.nav,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-1q7wsau\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"uMejUTGSL\",ref:refBinding,style:{backgroundColor:\"var(--token-afc12c4e-22b8-4d3a-a848-829879fae208, rgb(255, 255, 255))\",borderBottomLeftRadius:50,borderBottomRightRadius:50,borderTopLeftRadius:50,borderTopRightRadius:50,boxShadow:\"0px 5px 20px 0px rgba(0, 0, 0, 0.25)\",...style},...addPropertyOverrides({CZ3Jc1xvq:{\"data-framer-name\":\"Phone\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1a2xv6j\",\"data-framer-name\":\"links\",layoutDependency:layoutDependency,layoutId:\"OZE6e3g9E\",style:{backgroundColor:\"var(--token-beab68cf-a5ba-473e-87ce-38371a5b394c, rgb(235, 236, 237))\",borderBottomLeftRadius:50,borderBottomRightRadius:50,borderTopLeftRadius:50,borderTopRightRadius:50},children:[/*#__PURE__*/_jsx(Overlay,{blockDocumentScrolling:false,children:overlay=>/*#__PURE__*/_jsx(_Fragment,{children:/*#__PURE__*/_jsx(Link,{href:{hash:\":dofvITjNT\",webPageId:\"augiA20Il\"},motionChild:true,nodeId:\"BKuWoin2D\",openInNewTab:false,scopeId:\"yq407wrqT\",smoothScroll:true,children:/*#__PURE__*/_jsxs(motion.a,{className:\"framer-1gnrpwp framer-z28zk3\",\"data-framer-name\":\"home\",\"data-highlight\":true,id:`${layoutId}-1gnrpwp`,layoutDependency:layoutDependency,layoutId:\"BKuWoin2D\",onMouseEnter:onMouseEntertxyyif({overlay}),ref:ref1,style:{borderBottomLeftRadius:50,borderBottomRightRadius:50,borderTopLeftRadius:50,borderTopRightRadius:50},whileHover:animation,children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-hxr82y\",\"data-framer-name\":\"home\",fill:\"black\",intrinsicHeight:24,intrinsicWidth:24,layoutDependency:layoutDependency,layoutId:\"xdlfUOkDd\",svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M6 19h3v-5q0-.425.288-.712T10 13h4q.425 0 .713.288T15 14v5h3v-9l-6-4.5L6 10zm-2 0v-9q0-.475.213-.9t.587-.7l6-4.5q.525-.4 1.2-.4t1.2.4l6 4.5q.375.275.588.7T20 10v9q0 .825-.588 1.413T18 21h-4q-.425 0-.712-.288T13 20v-5h-2v5q0 .425-.288.713T10 21H6q-.825 0-1.412-.587T4 19m8-6.75\"/></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(AnimatePresence,{children:overlay.visible&&/*#__PURE__*/_jsx(Floating,{alignment:\"center\",anchorRef:ref1,className:cx(scopingClassNames,classNames),collisionDetection:true,collisionDetectionPadding:20,\"data-framer-portal-id\":`${layoutId}-1gnrpwp`,offsetX:0,offsetY:-16,onDismiss:overlay.hide,placement:\"top\",safeArea:true,zIndex:11,children:/*#__PURE__*/_jsx(MotionDivWithFX,{__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,animate:animation2,className:\"framer-1a0j2nf\",exit:animation1,initial:animation3,layoutDependency:layoutDependency,layoutId:\"tzlQmPiJC\",ref:ref2,role:\"dialog\",style:{backgroundColor:\"var(--token-afc12c4e-22b8-4d3a-a848-829879fae208, rgb(255, 255, 255))\",borderBottomLeftRadius:50,borderBottomRightRadius:50,borderTopLeftRadius:50,borderTopRightRadius:50,boxShadow:\"0px 10px 20px 0px rgba(0, 0, 0, 0.2)\"},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-styles-preset-10lckhq\",\"data-styles-preset\":\"P6Pjby6ex\",style:{\"--framer-text-color\":\"var(--extracted-tcooor, var(--token-29e0763e-941f-4cbc-9765-d7de17de9ea2, rgb(0, 0, 0)))\"},children:\"Home\"})}),className:\"framer-1q9066y\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"Rfx3tz2hF\",style:{\"--extracted-tcooor\":\"var(--token-29e0763e-941f-4cbc-9765-d7de17de9ea2, rgb(0, 0, 0))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true})})})})]})})})}),/*#__PURE__*/_jsx(Overlay,{blockDocumentScrolling:false,children:overlay1=>/*#__PURE__*/_jsx(_Fragment,{children:/*#__PURE__*/_jsx(Link,{href:{hash:\":wQskmGaUH\",webPageId:\"augiA20Il\"},motionChild:true,nodeId:\"eFK3PNtyj\",openInNewTab:false,scopeId:\"yq407wrqT\",smoothScroll:true,children:/*#__PURE__*/_jsxs(motion.a,{className:\"framer-1hifxpm framer-z28zk3\",\"data-framer-name\":\"projects\",\"data-highlight\":true,id:`${layoutId}-1hifxpm`,layoutDependency:layoutDependency,layoutId:\"eFK3PNtyj\",onMouseEnter:onMouseEntertxyyif({overlay:overlay1}),ref:ref3,style:{borderBottomLeftRadius:50,borderBottomRightRadius:50,borderTopLeftRadius:50,borderTopRightRadius:50},whileHover:animation,children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-flk38l\",\"data-framer-name\":\"projects\",fill:\"black\",intrinsicHeight:24,intrinsicWidth:24,layoutDependency:layoutDependency,layoutId:\"xyja9bCsO\",svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M7.675 16 5.5 7 12 1l6.5 6-2.175 9zm1.575-2h5.5l1.525-6.325L13 4.65V7.3q.35.25.55.625t.2.825q0 .725-.513 1.238T12 10.5t-1.237-.513-.513-1.237q0-.45.2-.825T11 7.3V4.65L7.725 7.675zM4 21l.55-1.625q.2-.625.725-1T6.45 18h11.1q.65 0 1.175.375t.725 1L20 21z\"/></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(AnimatePresence,{children:overlay1.visible&&/*#__PURE__*/_jsx(Floating,{alignment:\"center\",anchorRef:ref3,className:cx(scopingClassNames,classNames),collisionDetection:true,collisionDetectionPadding:20,\"data-framer-portal-id\":`${layoutId}-1hifxpm`,offsetX:0,offsetY:-16,onDismiss:overlay1.hide,placement:\"top\",safeArea:true,zIndex:11,children:/*#__PURE__*/_jsx(MotionDivWithFX,{__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,animate:animation2,className:\"framer-1av4572\",exit:animation1,initial:animation3,layoutDependency:layoutDependency,layoutId:\"YYgD_rZg8\",ref:ref4,role:\"dialog\",style:{backgroundColor:\"var(--token-afc12c4e-22b8-4d3a-a848-829879fae208, rgb(255, 255, 255))\",borderBottomLeftRadius:50,borderBottomRightRadius:50,borderTopLeftRadius:50,borderTopRightRadius:50,boxShadow:\"0px 10px 20px 0px rgba(0, 0, 0, 0.2)\"},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-styles-preset-10lckhq\",\"data-styles-preset\":\"P6Pjby6ex\",style:{\"--framer-text-color\":\"var(--extracted-tcooor, var(--token-29e0763e-941f-4cbc-9765-d7de17de9ea2, rgb(0, 0, 0)))\"},children:\"Projects\"})}),className:\"framer-1ix7bjo\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"WGjLk5XMS\",style:{\"--extracted-tcooor\":\"var(--token-29e0763e-941f-4cbc-9765-d7de17de9ea2, rgb(0, 0, 0))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true})})})})]})})})}),/*#__PURE__*/_jsx(Overlay,{blockDocumentScrolling:false,children:overlay2=>/*#__PURE__*/_jsx(_Fragment,{children:/*#__PURE__*/_jsx(Link,{href:{hash:\":xPj8h3_qu\",webPageId:\"augiA20Il\"},motionChild:true,nodeId:\"lQj095WOV\",openInNewTab:false,scopeId:\"yq407wrqT\",smoothScroll:true,children:/*#__PURE__*/_jsxs(motion.a,{className:\"framer-1f070k9 framer-z28zk3\",\"data-framer-name\":\"services\",\"data-highlight\":true,id:`${layoutId}-1f070k9`,layoutDependency:layoutDependency,layoutId:\"lQj095WOV\",onMouseEnter:onMouseEntertxyyif({overlay:overlay2}),ref:ref5,style:{borderBottomLeftRadius:50,borderBottomRightRadius:50,borderTopLeftRadius:50,borderTopRightRadius:50},whileHover:animation,children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-t4lbj0\",\"data-framer-name\":\"services\",fill:\"black\",intrinsicHeight:24,intrinsicWidth:24,layoutDependency:layoutDependency,layoutId:\"pYkKleZZs\",svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"m8.8 10.95 2.15-2.175-1.4-1.425-1.1 1.1-1.4-1.4 1.075-1.1L7 4.825 4.825 7zm8.2 8.225L19.175 17l-1.125-1.125-1.1 1.075-1.4-1.4 1.075-1.1-1.425-1.4-2.15 2.15zM17.6 5l1.425 1.425zM7.25 21H3v-4.25l4.375-4.375L2 7l5-5 5.4 5.4 5.225-5.25 4.2 4.25-5.2 5.225L22 17l-5 5-5.375-5.375zM5 19h1.4l9.8-9.775L14.775 7.8 5 17.6zM15.5 8.525l-.725-.725L16.2 9.225z\"/></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(AnimatePresence,{children:overlay2.visible&&/*#__PURE__*/_jsx(Floating,{alignment:\"center\",anchorRef:ref5,className:cx(scopingClassNames,classNames),collisionDetection:true,collisionDetectionPadding:20,\"data-framer-portal-id\":`${layoutId}-1f070k9`,offsetX:0,offsetY:-16,onDismiss:overlay2.hide,placement:\"top\",safeArea:true,zIndex:11,children:/*#__PURE__*/_jsx(MotionDivWithFX,{__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,animate:animation2,className:\"framer-qvy1y5\",exit:animation1,initial:animation3,layoutDependency:layoutDependency,layoutId:\"bXtAhNTSa\",ref:ref6,role:\"dialog\",style:{backgroundColor:\"var(--token-afc12c4e-22b8-4d3a-a848-829879fae208, rgb(255, 255, 255))\",borderBottomLeftRadius:50,borderBottomRightRadius:50,borderTopLeftRadius:50,borderTopRightRadius:50,boxShadow:\"0px 10px 20px 0px rgba(0, 0, 0, 0.2)\"},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-styles-preset-10lckhq\",\"data-styles-preset\":\"P6Pjby6ex\",style:{\"--framer-text-color\":\"var(--extracted-tcooor, var(--token-29e0763e-941f-4cbc-9765-d7de17de9ea2, rgb(0, 0, 0)))\"},children:\"Design services\"})}),className:\"framer-16lxhh1\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"L5Vmh00vn\",style:{\"--extracted-tcooor\":\"var(--token-29e0763e-941f-4cbc-9765-d7de17de9ea2, rgb(0, 0, 0))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true})})})})]})})})}),/*#__PURE__*/_jsx(Overlay,{blockDocumentScrolling:false,children:overlay3=>/*#__PURE__*/_jsx(_Fragment,{children:/*#__PURE__*/_jsx(Link,{href:{hash:\":PNenD1Zlm\",webPageId:\"augiA20Il\"},motionChild:true,nodeId:\"VjgIv8I6F\",openInNewTab:false,scopeId:\"yq407wrqT\",smoothScroll:true,children:/*#__PURE__*/_jsxs(motion.a,{className:\"framer-148yiy6 framer-z28zk3\",\"data-framer-name\":\"testimonials\",\"data-highlight\":true,id:`${layoutId}-148yiy6`,layoutDependency:layoutDependency,layoutId:\"VjgIv8I6F\",onMouseEnter:onMouseEntertxyyif({overlay:overlay3}),ref:ref7,style:{borderBottomLeftRadius:50,borderBottomRightRadius:50,borderTopLeftRadius:50,borderTopRightRadius:50},whileHover:animation,children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-b1bjlr\",\"data-framer-name\":\"testimonials\",fill:\"black\",intrinsicHeight:24,intrinsicWidth:24,layoutDependency:layoutDependency,layoutId:\"Ss84p8qBI\",svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M6 14h3.05l6.025-6.025L12.1 4.85 6 10.95zm7-6.075L12.075 7zM7.5 12.5v-.95l2.525-2.525.5.45.45.5L8.45 12.5zm3.025-3.025.45.5-.95-.95zm.65 4.525H18v-2h-4.825zM2 22V2h20v16H6zm3.15-6H20V4H4v13.125zM4 16V4z\"/></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(AnimatePresence,{children:overlay3.visible&&/*#__PURE__*/_jsx(Floating,{alignment:\"center\",anchorRef:ref7,className:cx(scopingClassNames,classNames),collisionDetection:true,collisionDetectionPadding:20,\"data-framer-portal-id\":`${layoutId}-148yiy6`,offsetX:0,offsetY:-16,onDismiss:overlay3.hide,placement:\"top\",safeArea:true,zIndex:11,children:/*#__PURE__*/_jsx(MotionDivWithFX,{__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,animate:animation2,className:\"framer-oempx2\",exit:animation1,initial:animation3,layoutDependency:layoutDependency,layoutId:\"vJ6I8Xy2y\",ref:ref8,role:\"dialog\",style:{backgroundColor:\"var(--token-afc12c4e-22b8-4d3a-a848-829879fae208, rgb(255, 255, 255))\",borderBottomLeftRadius:50,borderBottomRightRadius:50,borderTopLeftRadius:50,borderTopRightRadius:50,boxShadow:\"0px 10px 20px 0px rgba(0, 0, 0, 0.2)\"},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-styles-preset-10lckhq\",\"data-styles-preset\":\"P6Pjby6ex\",style:{\"--framer-text-color\":\"var(--extracted-tcooor, var(--token-29e0763e-941f-4cbc-9765-d7de17de9ea2, rgb(0, 0, 0)))\"},children:\"References\"})}),className:\"framer-3bu7uv\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"jtY_zPDaz\",style:{\"--extracted-tcooor\":\"var(--token-29e0763e-941f-4cbc-9765-d7de17de9ea2, rgb(0, 0, 0))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true})})})})]})})})})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-UaJZ3.framer-z28zk3, .framer-UaJZ3 .framer-z28zk3 { display: block; }\",\".framer-UaJZ3.framer-1q7wsau { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 5px; height: min-content; justify-content: center; overflow: visible; padding: 5px; position: relative; width: 348px; }\",\".framer-UaJZ3 .framer-1a2xv6j { align-content: center; align-items: center; align-self: stretch; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; height: auto; justify-content: space-between; overflow: visible; padding: 0px 30px 0px 30px; position: relative; width: 1px; }\",\".framer-UaJZ3 .framer-1gnrpwp, .framer-UaJZ3 .framer-1hifxpm, .framer-UaJZ3 .framer-1f070k9, .framer-UaJZ3 .framer-148yiy6 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: hidden; padding: 10px; position: relative; text-decoration: none; width: min-content; will-change: var(--framer-will-change-effect-override, transform); }\",\".framer-UaJZ3 .framer-hxr82y, .framer-UaJZ3 .framer-flk38l, .framer-UaJZ3 .framer-t4lbj0, .framer-UaJZ3 .framer-b1bjlr { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 24px); position: relative; width: 24px; }\",\".framer-UaJZ3 .framer-1a0j2nf, .framer-UaJZ3 .framer-1av4572, .framer-UaJZ3 .framer-qvy1y5, .framer-UaJZ3 .framer-oempx2 { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: hidden; padding: 12px 20px 12px 20px; position: relative; width: min-content; will-change: var(--framer-will-change-override, transform); }\",\".framer-UaJZ3 .framer-1q9066y, .framer-UaJZ3 .framer-1ix7bjo, .framer-UaJZ3 .framer-16lxhh1, .framer-UaJZ3 .framer-3bu7uv { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-UaJZ3.framer-v-9g0hfx.framer-1q7wsau { width: 390px; }\",\".framer-UaJZ3.framer-v-9g0hfx .framer-1a2xv6j { padding: 0px 16px 0px 16px; }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 54\n * @framerIntrinsicWidth 348\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"CZ3Jc1xvq\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const Frameryq407wrqT=withCSS(Component,css,\"framer-UaJZ3\");export default Frameryq407wrqT;Frameryq407wrqT.displayName=\"nav\";Frameryq407wrqT.defaultProps={height:54,width:348};addPropertyControls(Frameryq407wrqT,{variant:{options:[\"uMejUTGSL\",\"CZ3Jc1xvq\"],optionTitles:[\"Desktop\",\"Phone\"],title:\"Variant\",type:ControlType.Enum}});addFonts(Frameryq407wrqT,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Frameryq407wrqT\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"348\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"CZ3Jc1xvq\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicHeight\":\"54\",\"framerContractVersion\":\"1\",\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerImmutableVariables\":\"true\",\"framerAutoSizeImages\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./yq407wrqT.map","// Animated line that follows either the mouse or a predefined path for Framer\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{useRef,useEffect,useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";/**\n * DrawLineCursor\n *\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */function DrawLineCursor(props){const{color,size,trailLength,hideCursor,mode,pathPoints,speed,style}=props;const canvasRef=useRef(null);const[bounds,setBounds]=useState({width:400,height:400});const trail=useRef([]);const containerRef=useRef(null);const animationRef=useRef({t:0,lastTime:0});useEffect(()=>{if(!containerRef.current)return;const rect=containerRef.current.getBoundingClientRect();setBounds({width:rect.width,height:rect.height});},[style?.width,style?.height]);// Mouse mode: update trail with mouse\nuseEffect(()=>{if(mode!==\"mouse\")return;function handleMouseMove(e){if(!containerRef.current)return;const rect=containerRef.current.getBoundingClientRect();const x=e.clientX-rect.left;const y=e.clientY-rect.top;trail.current.push({x,y});if(trail.current.length>trailLength){trail.current.shift();}}function handleMouseLeave(){trail.current=[];}document.addEventListener(\"mousemove\",handleMouseMove);document.addEventListener(\"mouseleave\",handleMouseLeave);return()=>{document.removeEventListener(\"mousemove\",handleMouseMove);document.removeEventListener(\"mouseleave\",handleMouseLeave);};},[mode,trailLength]);// Path mode: animate along pathPoints\nuseEffect(()=>{if(mode!==\"path\")return;trail.current=[];animationRef.current.t=0;animationRef.current.lastTime=0;function animatePath(ts){if(!Array.isArray(pathPoints)||pathPoints.length<2)return;if(!containerRef.current)return;const total=pathPoints.length;let t=animationRef.current.t;let lastTime=animationRef.current.lastTime;if(!lastTime)lastTime=ts;const dt=(ts-lastTime)/1e3;t+=dt*speed;if(t>total-1)t=0;animationRef.current.t=t;animationRef.current.lastTime=ts;// Build trail\nconst trailArr=[];for(let i=0;i<trailLength;i++){let idx=t-(trailLength-1-i)*.5;if(idx<0)idx+=total;const idx0=Math.floor(idx)%total;const idx1=(idx0+1)%total;const frac=idx-Math.floor(idx);const x=pathPoints[idx0].x*(1-frac)+pathPoints[idx1].x*frac;const y=pathPoints[idx0].y*(1-frac)+pathPoints[idx1].y*frac;trailArr.push({x,y});}trail.current=trailArr;requestAnimationFrame(animatePath);}requestAnimationFrame(animatePath);return()=>{animationRef.current.lastTime=0;};},[mode,pathPoints,trailLength,speed]);useEffect(()=>{const canvas=canvasRef.current;if(!canvas)return;const ctx=canvas.getContext(\"2d\");let running=true;function draw(){ctx.clearRect(0,0,bounds.width,bounds.height);if(!hideCursor&&trail.current.length>1){ctx.save();ctx.lineJoin=\"round\";ctx.lineCap=\"round\";ctx.strokeStyle=color;ctx.lineWidth=size;ctx.globalAlpha=1;ctx.beginPath();ctx.moveTo(trail.current[0].x,trail.current[0].y);for(let i=1;i<trail.current.length;i++){ctx.lineTo(trail.current[i].x,trail.current[i].y);}ctx.stroke();ctx.restore();}if(running)requestAnimationFrame(draw);}draw();return()=>{running=false;};},[color,size,trailLength,hideCursor,bounds.width,bounds.height]);return /*#__PURE__*/_jsx(\"div\",{ref:containerRef,style:{...style,width:\"100%\",height:\"100%\",position:\"relative\",overflow:\"hidden\",cursor:\"default\"},\"aria-label\":\"Guided Line Container\",children:/*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,width:bounds.width,height:bounds.height,style:{width:\"100%\",height:\"100%\",display:hideCursor?\"none\":\"block\",position:\"absolute\",top:0,left:0,pointerEvents:\"none\"}})});}addPropertyControls(DrawLineCursor,{mode:{type:ControlType.Enum,title:\"Mode\",options:[\"mouse\",\"path\"],optionTitles:[\"Mouse\",\"Path\"],defaultValue:\"mouse\"},pathPoints:{type:ControlType.Array,title:\"Path Points\",control:{type:ControlType.Object,controls:{x:{type:ControlType.Number,defaultValue:100,min:0,max:1e3},y:{type:ControlType.Number,defaultValue:100,min:0,max:1e3}}},defaultValue:[{x:50,y:50},{x:350,y:50},{x:350,y:350},{x:50,y:350},{x:50,y:50}],hidden:({mode})=>mode!==\"path\"},speed:{type:ControlType.Number,title:\"Path Speed\",min:.1,max:10,step:.1,defaultValue:2,hidden:({mode})=>mode!==\"path\"},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#B3EC11\"},size:{type:ControlType.Number,title:\"Line Width\",min:2,max:32,step:1,defaultValue:8},trailLength:{type:ControlType.Number,title:\"Trail Length\",min:4,max:64,defaultValue:24},hideCursor:{type:ControlType.Boolean,title:\"Hide Effect\",defaultValue:false}});export default DrawLineCursor;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"DrawLineCursor\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CustomCursor.map","// Generated by Framer (e0edd7a)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,ComponentViewportProvider,Container,cx,GeneratedComponentContext,getFonts,getLoadingLazyAtYPosition,Image,PropertyOverrides,RenderTarget,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,withCSS}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Nav from\"#framer/local/canvasComponent/yq407wrqT/yq407wrqT.js\";import DrawLineCursor from\"#framer/local/codeFile/rlLOTs9/CustomCursor.js\";const NavFonts=getFonts(Nav);const DrawLineCursorFonts=getFonts(DrawLineCursor);const breakpoints={aI74NZsKK:\"(max-width: 809px)\",JqdzSMShE:\"(min-width: 810px) and (max-width: 1199px)\",lVXwy9wwd:\"(min-width: 1200px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-JkpQg\";const variantClassNames={aI74NZsKK:\"framer-v-45699p\",JqdzSMShE:\"framer-v-13qqe1w\",lVXwy9wwd:\"framer-v-1m4yoau\"};const breakpointRules={aI74NZsKK:[\".framer-JkpQg .framer-16eg1l1-container { height: 54px; left: 16px; right: 16px; top: 590px; transform: unset; width: unset; }\"],JqdzSMShE:[\".framer-JkpQg .framer-16eg1l1-container { width: 51%; }\"]};const breakpointKeys=Object.keys(breakpointRules);const selectors={aI74NZsKK:\".framer-45699p-override\",JqdzSMShE:\".framer-13qqe1w-override\"};const rules=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-JkpQg.framer-15een0e, .framer-JkpQg .framer-15een0e { display: block; }\",'.framer-JkpQg.framer-1m4yoau { --selection-background-color: var(--token-29e0763e-941f-4cbc-9765-d7de17de9ea2, #000000) /* {\"name\":\"Black\"} */; --selection-color: var(--token-afc12c4e-22b8-4d3a-a848-829879fae208, #ffffff) /* {\"name\":\"White\"} */; align-content: center; align-items: center; background-color: var(--token-beab68cf-a5ba-473e-87ce-38371a5b394c, #ebeced); display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: hidden; padding: 0px; position: relative; width: 100%; }',\".framer-JkpQg .framer-e5lm0g { flex: none; height: calc(min(var(--framer-viewport-height, 100vh), 100%) * 1); left: 0px; opacity: 0.1; overflow: visible; pointer-events: none; position: var(--framer-canvas-fixed-position, fixed); top: 0px; width: 100%; z-index: 1; }\",\".framer-JkpQg .framer-16eg1l1-container { flex: none; height: auto; left: 50%; max-width: 700px; position: var(--framer-canvas-fixed-position, fixed); top: 24px; transform: translateX(-50%); width: 32%; z-index: 9; }\",\".framer-JkpQg .framer-190ucxe-container { flex: none; height: calc(min(var(--framer-viewport-height, 100%), 100%) * 1); left: 0px; pointer-events: none; position: var(--framer-canvas-fixed-position, fixed); top: 0px; width: 100%; z-index: 10; }\",\".framer-JkpQg .framer-8q6s7b { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -0px; position: relative; width: 0px; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -0px; }','.framer-JkpQg[data-selection=\"true\"] * ::selection, .framer-JkpQg [data-selection=\"true\"] * ::selection { color: var(--selection-color, none); background-color: var(--selection-background-color, none); }'];const mediaQueries={aI74NZsKK:\"(max-width: 809px)\",JqdzSMShE:\"(min-width: 810px) and (max-width: 1199px)\",lVXwy9wwd:\"(min-width: 1200px)\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const humanReadableVariantMap={Desktop:\"lVXwy9wwd\",Phone:\"aI74NZsKK\",Tablet:\"JqdzSMShE\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"lVXwy9wwd\"};};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{style,className,layoutId,variant,children,...restProps}=getProps(props);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if(!isBrowser())return true;if([\"JqdzSMShE\",\"aI74NZsKK\"].includes(baseVariant))return false;return true;};useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{isLayoutTemplate:true,primaryVariantId:\"lVXwy9wwd\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\":root body { background: var(--token-beab68cf-a5ba-473e-87ce-38371a5b394c, rgb(235, 236, 237)); }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-1m4yoau\",className),\"data-layout-template\":true,\"data-selection\":true,ref:refBinding,style:{...style},children:[/*#__PURE__*/_jsx(Image,{background:{alt:\"Background shadow\",fit:\"fill\",intrinsicHeight:2048,intrinsicWidth:1751,loading:getLoadingLazyAtYPosition(0),pixelHeight:2048,pixelWidth:1751,sizes:\"100vw\",src:\"https://framerusercontent.com/images/CC0JINKmEAhG7PuLwqAk8MhTQw.webp\",srcSet:\"https://framerusercontent.com/images/CC0JINKmEAhG7PuLwqAk8MhTQw.webp?scale-down-to=1024 875w,https://framerusercontent.com/images/CC0JINKmEAhG7PuLwqAk8MhTQw.webp 1751w\"},className:\"framer-e5lm0g\",\"data-framer-name\":\"bg img\"}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{aI74NZsKK:{width:\"min(100vw - 32px, 700px)\",y:590},JqdzSMShE:{width:\"min(51.4815vw, 700px)\"}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:54,width:\"min(31.9167vw, 700px)\",y:24,children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{aI74NZsKK:{\"data-framer-layout-hint-center-x\":undefined}},children:/*#__PURE__*/_jsx(Container,{className:\"framer-16eg1l1-container\",\"data-framer-layout-hint-center-x\":true,layoutScroll:true,nodeId:\"MIhegJspt\",scopeId:\"HxQXNSY96\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{aI74NZsKK:{style:{height:\"100%\",maxWidth:\"100%\",width:\"100%\"},variant:\"CZ3Jc1xvq\"}},children:/*#__PURE__*/_jsx(Nav,{height:\"100%\",id:\"MIhegJspt\",layoutId:\"MIhegJspt\",style:{maxWidth:\"100%\",width:\"100%\"},variant:\"uMejUTGSL\",width:\"100%\"})})})})})}),isDisplayed()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-190ucxe-container hidden-13qqe1w hidden-45699p\",isAuthoredByUser:true,layoutScroll:true,nodeId:\"Y1HEQI4eA\",scopeId:\"HxQXNSY96\",children:/*#__PURE__*/_jsx(DrawLineCursor,{color:\"var(--token-29e0763e-941f-4cbc-9765-d7de17de9ea2, rgb(0, 0, 0))\",height:\"100%\",hideCursor:false,id:\"Y1HEQI4eA\",layoutId:\"Y1HEQI4eA\",mode:\"mouse\",pathPoints:[{x:50,y:50},{x:350,y:50},{x:350,y:350},{x:50,y:350},{x:50,y:50}],size:2,speed:2,style:{height:\"100%\",width:\"100%\"},trailLength:10,width:\"100%\"})})}),children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-8q6s7b\"})]}),/*#__PURE__*/_jsx(\"div\",{id:\"template-overlay\"})]})});});const css=target=>{const isStaticRenderer=target===RenderTarget.canvas||target===RenderTarget.export;if(!isStaticRenderer){return[...rules,...breakpointKeys.map(key=>{const query=mediaQueries[key];return`@media ${query} { ${breakpointRules[key].join(\" \")} }`;})];}return[...rules,...breakpointKeys.flatMap(key=>{const selector=selectors[key];return breakpointRules[key].map(rule=>`${selector} {${rule}}`);})];};/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 1000\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"JqdzSMShE\":{\"layout\":[\"fixed\",\"fixed\"]},\"aI74NZsKK\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"lVXwy9wwd\":[\".framer-16eg1l1-container\"],\"JqdzSMShE\":[\".framer-16eg1l1-container\"],\"aI74NZsKK\":[\".framer-16eg1l1-container\"]}\n * @framerBreakpoints {\"lVXwy9wwd\":{\"min\":1200,\"canvasClassName\":\"framer-1m4yoau-override\",\"minHeight\":1000,\"name\":\"Desktop\",\"width\":1200,\"rootFontSize\":16},\"JqdzSMShE\":{\"min\":810,\"max\":1199,\"canvasClassName\":\"framer-13qqe1w-override\",\"minHeight\":1000,\"viewportHeight\":1080,\"name\":\"Tablet\",\"width\":810,\"rootFontSize\":16},\"aI74NZsKK\":{\"max\":809,\"canvasClassName\":\"framer-45699p-override\",\"minHeight\":1000,\"viewportHeight\":844,\"name\":\"Phone\",\"width\":390,\"rootFontSize\":16}}\n * @framerDefaultVariant lVXwy9wwd\n * @framerLayoutTemplate\n */const FramerHxQXNSY96=withCSS(Component,css,\"framer-JkpQg\");export default FramerHxQXNSY96;FramerHxQXNSY96.displayName=\"Layout\";FramerHxQXNSY96.defaultProps={height:1e3,width:1200};addFonts(FramerHxQXNSY96,[{explicitInter:true,fonts:[]},...NavFonts,...DrawLineCursorFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerHxQXNSY96\",\"slots\":[],\"annotations\":{\"framerDefaultVariant\":\"lVXwy9wwd\",\"framerHitTargets\":\"{\\\"lVXwy9wwd\\\":[\\\".framer-16eg1l1-container\\\"],\\\"JqdzSMShE\\\":[\\\".framer-16eg1l1-container\\\"],\\\"aI74NZsKK\\\":[\\\".framer-16eg1l1-container\\\"]}\",\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerIntrinsicHeight\":\"1000\",\"framerColorSyntax\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerLayoutTemplate\":\"\",\"framerBreakpoints\":\"{\\\"lVXwy9wwd\\\":{\\\"min\\\":1200,\\\"canvasClassName\\\":\\\"framer-1m4yoau-override\\\",\\\"minHeight\\\":1000,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":1200,\\\"rootFontSize\\\":16},\\\"JqdzSMShE\\\":{\\\"min\\\":810,\\\"max\\\":1199,\\\"canvasClassName\\\":\\\"framer-13qqe1w-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":1080,\\\"name\\\":\\\"Tablet\\\",\\\"width\\\":810,\\\"rootFontSize\\\":16},\\\"aI74NZsKK\\\":{\\\"max\\\":809,\\\"canvasClassName\\\":\\\"framer-45699p-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":844,\\\"name\\\":\\\"Phone\\\",\\\"width\\\":390,\\\"rootFontSize\\\":16}}\",\"framerIntrinsicWidth\":\"1200\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"JqdzSMShE\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"aI74NZsKK\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","\r\n        import * as Framer from \"framer\";\r\nimport * as React from \"react\";\r\nimport { createPortal } from \"react-dom\";\r\nimport * as ReactDOM from \"react-dom/client\";\r\nimport Layout from \"https://framerusercontent.com/modules/bjdC30PJBQNsvKuec8NH/kCCavKyHx43vpGxnL16A/HxQXNSY96.js\";\r\n\r\n        const routes = {augiA20Il: {elements: {dofvITjNT: \"header\", LDKwEJ1we: \"hero\", PNenD1Zlm: \"testimonials\", wQskmGaUH: \"projects\", xPj8h3_qu: \"services\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/lFuVxdzqbpvvTmguHTW0/XDaQ8zvSz611XQgwIgf6/augiA20Il.js\")), path: \"/\"}, PoBDfa2gA: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/152TisW0ebYiaO0u6oEM/d9uJCbR3VXY9QLXBf6dP/PoBDfa2gA.js\")), path: \"/404\"}, p8ndgxrGr: {collectionId: \"W9QMmauMU\", elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/aYG7PE1NnUQF49Am6SGz/nzf66yt4HkMjUrGgRdh5/p8ndgxrGr.js\")), path: \"/projects/:LxvcFNSoV\"}}\r\n\r\n        const locales = [{code: \"en\", id: \"default\", name: \"English\", slug: \"\"}]\r\n        const collectionUtils = {W9QMmauMU: async () => (await import(\"https://framerusercontent.com/modules/n26E4bz1EIWeKzQ7JJi9/5hU7Oj2cDIDjuDtdBPzR/W9QMmauMU.js\"))?.[\"utils\"]}\r\n        const framerSiteId = \"6a0a0b1eafa530461a91c196f0d91ab30bcf0607ee0a7209362ba6c64262582a\"\r\n        function Template({routeId, children, style, ...rest}) {const templateProps = {}\r\nconst props = templateProps[routeId] ?? {}\r\nswitch (routeId) {case \"augiA20Il\":\r\ncase \"PoBDfa2gA\":\r\ncase \"p8ndgxrGr\":\r\nreturn React.createElement(Layout, {...props, key: \"Layout\", routeId, style}, children(true));\r\ndefault: { return children(false) }}}\r\nexport function getLayoutTemplateBreakpoints(routeId) {switch (routeId) {case \"augiA20Il\":\r\ncase \"PoBDfa2gA\":\r\ncase \"p8ndgxrGr\":\r\nreturn [{hash: \"1m4yoau\", mediaQuery: \"(min-width: 1200px)\"}, {hash: \"13qqe1w\", mediaQuery: \"(min-width: 810px) and (max-width: 1199px)\"}, {hash: \"45699p\", mediaQuery: \"(max-width: 809px)\"}]\r\ndefault: { return undefined }}}\r\n\r\n        export async function getPageRoot({ routeId, pathVariables, localeId }) {\r\n            const rootPreload = routes[routeId].page.preload()\r\n\r\n            const content = React.createElement(\r\n                Framer.PageRoot,\r\n                {\r\n                    isWebsite: true,\r\n                    routeId,\r\n                    pathVariables,\r\n                    routes,\r\n                    collectionUtils,\r\n                    framerSiteId,\r\n                    notFoundPage: Framer.lazy(() => import(\"https://framerusercontent.com/modules/152TisW0ebYiaO0u6oEM/d9uJCbR3VXY9QLXBf6dP/PoBDfa2gA.js\")),\r\n                    isReducedMotion: undefined,\r\n                    localeId,\r\n                    locales,\r\n                    preserveQueryParams: undefined,\r\n                    siteCanonicalURL: \"https://tuliosantanadesign.framer.website\",\r\n                    EditorBar: \r\ntypeof window !== \"undefined\" ? (() => {\r\n    const isBot = /bot|-google|google-|yandex|ia_archiver|crawl|spider/iu.test(navigator.userAgent)\r\n    if (isBot) return\r\n\r\n    return Framer.lazy(async () => {\r\n        const dependencies = {\r\n            __version: 2,\r\n            framer: {\r\n                useCurrentRoute: Framer.useCurrentRoute,\r\n                useLocaleInfo: Framer.useLocaleInfo,\r\n                useRouter: Framer.useRouter,\r\n            },\r\n            react: {\r\n                createElement: React.createElement,\r\n                Fragment: React.Fragment,\r\n                memo: React.memo,\r\n                useCallback: React.useCallback,\r\n                useEffect: React.useEffect,\r\n                useRef: React.useRef,\r\n                useState: React.useState,\r\n            },\r\n            \"react-dom\": { createPortal },\r\n        }\r\n\r\n        window.__framer_editorBarDependencies = dependencies\r\n\r\n        const { createEditorBar } = await import(\"https://framer.com/edit/init.mjs\")\r\n        return {\r\n            default: createEditorBar({ dependencies }),\r\n        }\r\n    })\r\n})() : undefined\r\n,\r\n                    LayoutTemplate: Template,\r\n                }\r\n            )\r\n\r\n            const contentWithFeaturesContext = React.createElement(\r\n                Framer.LibraryFeaturesProvider,\r\n                {\r\n                    children: content,\r\n                    value: {editorBarDisableFrameAncestorsSecurity: false, editorBarOnPageEditing: false, motionDivToDiv: false, motionDivToDivBackgroundImage: true, pauseOffscreen: true, replaceNestedLinks: true, synchronousNavigationOnDesktop: false, yieldOnTap: false}\r\n                }\r\n            )\r\n\r\n            const contentWithGracefullyDegradingErrorBoundary = React.createElement(Framer.GracefullyDegradingErrorBoundary, {\r\n                children: contentWithFeaturesContext\r\n            })\r\n\r\n            \r\n            const page = React.createElement(Framer.PageEffectsProvider, {\r\n                children: contentWithGracefullyDegradingErrorBoundary,\r\n                value: {global: {enter: {opacity: 0, rotate: 0, rotate3d: false, rotateX: 0, rotateY: 0, scale: 1, transition: {bounce: 0.2, damping: 50, delay: 0, duration: 0.2, durationBasedSpring: false, ease: [0.27, 0, 0.51, 1], mass: 1, stiffness: 300, type: \"spring\"}, x: \"0px\", y: \"100%\"}, exit: {opacity: 0, rotate: 0, rotate3d: false, rotateX: 0, rotateY: 0, scale: 1, transition: {bounce: 0.2, damping: 50, delay: 0, duration: 0.2, durationBasedSpring: false, ease: [0.27, 0, 0.51, 1], mass: 1, stiffness: 300, type: \"spring\"}, x: \"0px\", y: \"-20%\"}}, routes: {}}\r\n            })\r\n\r\n            // We don't want the initial render to immediately have to suspend.\r\n            await rootPreload\r\n            return page\r\n        }\r\n\r\n        const isBrowser = typeof document !== \"undefined\"\r\n        if (isBrowser) {\r\n            window.__framer_importFromPackage = (packageAndFilename, exportIdentifier) => () => {\r\n                return React.createElement(Framer.ErrorPlaceholder, { error: 'Package component not supported: \"' + exportIdentifier + '\" in \"' + packageAndFilename + '\"' })\r\n            }\r\n\r\n            // A lot of libraries assume process.env.NODE_ENV is present in runtime/buildtime, so we are polyfilling it\r\n            window.process = {\r\n                ...window.process,\r\n                env: {\r\n                    ...(window.process ? window.process.env: undefined),\r\n                    NODE_ENV: \"production\"\r\n                }\r\n            }\r\n\r\n            window.__framer_events = window.__framer_events || []\r\n\r\n            // Fallback support for stack gaps\r\n            Framer.installFlexboxGapWorkaroundIfNeeded()\r\n\r\n            const container = document.getElementById(\"main\")\r\n            // We know that #main is parsed before this script, so we don't need to wait for DOMContentLoaded or similar events.\r\n            if (\"framerHydrateV2\" in container.dataset) main(true, container)\r\n            else main(false, container)\r\n        }\r\n\r\n        function track() {\r\n            if (!isBrowser) return\r\n            window.__framer_events.push(arguments)\r\n        }\r\n\r\n        async function main(shouldHydrate, container) {\r\n            function handleError(error, errorInfo, recoverable = true) {\r\n                if (error.caught || window.__framer_hadFatalError) return // we already logged it\r\n\r\n                const componentStack = errorInfo?.componentStack\r\n                if (recoverable) {\r\n                    console.warn(\"Recoverable error has happened. Please check any custom code or code overrides to fix server/client mismatches:\\n\", error, componentStack)\r\n                    // we only want to collect 1%, because this can be quite noisy (floods the data pipeline)\r\n                    if (Math.random() > 0.01) return\r\n                } else {\r\n                    console.error(\"Fatal crash has happened. If you are the author of this website, please report this issue to the Framer team via https://www.framer.community/:\\n\", error, componentStack)\r\n                }\r\n                track(recoverable ? \"published_site_load_recoverable_error\" : \"published_site_load_error\", {\r\n                    message: String(error),\r\n                    componentStack, // componentStack is more useful\r\n                    stack: componentStack ? undefined : error instanceof Error && typeof error.stack === \"string\" ? error.stack : null,\r\n                })\r\n            }\r\n\r\n            try {\r\n                let routeId, localeId, pathVariables, breakpoints\r\n                if (shouldHydrate) {\r\n                    const routeData = JSON.parse(container.dataset[\"framerHydrateV2\"])\r\n                    routeId = routeData.routeId\r\n                    localeId = routeData.localeId\r\n                    pathVariables = routeData.pathVariables\r\n                    breakpoints = routeData.breakpoints\r\n\r\n                    routeId = Framer.patchRoutesForABTesting(routes, routeId) // Prioritize optimized route id to avoid flickering in browsers not supporting the server-timing header (Safari older than 16.4)\r\n                } else {\r\n                    Framer.patchRoutesForABTesting(routes, undefined) // This must happen before inferInitialRouteFromPath\r\n\r\n                    const routeData = Framer.inferInitialRouteFromPath(routes, decodeURIComponent(location.pathname), true, locales)\r\n                    routeId = routeData.routeId\r\n                    localeId = routeData.localeId\r\n                    pathVariables = routeData.pathVariables\r\n                }\r\n\r\n                const pagePromise = getPageRoot({ routeId, localeId, pathVariables })\r\n\r\n                \r\nif (typeof window !== \"undefined\") {\r\n    void (async () => {\r\n        const route = routes[routeId]\r\n\r\n        const defaultLocaleId = \"default\"\r\n        const framerLocale = locales.find(({ id }) => !localeId ? id === defaultLocaleId : id === localeId).code\r\n\r\n        let collectionItemId = null\r\n        if (route?.collectionId && collectionUtils) {\r\n              const utils = await collectionUtils[route.collectionId]?.()\r\n              const [slug] = Object.values(pathVariables)\r\n              if (utils && typeof slug === \"string\") {\r\n                  collectionItemId = (await utils.getRecordIdBySlug(slug, framerLocale || undefined)) ?? null\r\n              }\r\n        }\r\n\r\n        const resolvedDateTimeOptions = Intl.DateTimeFormat().resolvedOptions()\r\n        const timezone = resolvedDateTimeOptions.timeZone\r\n        const locale = resolvedDateTimeOptions.locale\r\n\r\n        // wait for the page to be activated before sending the pageview event\r\n        // https://developer.chrome.com/docs/web-platform/prerender-pages#impact-on-analytics\r\n        await new Promise((resolve) => {\r\n            if (document.prerendering) {\r\n                document.addEventListener(\"prerenderingchange\", resolve, { once: true })\r\n            } else {\r\n                resolve()\r\n            }\r\n        })\r\n\r\n        window.__framer_events.push([\r\n            \"published_site_pageview\",\r\n            {\r\n                framerSiteId: framerSiteId ?? null,\r\n                routePath: route?.path || \"/\",\r\n                collectionItemId,\r\n                framerLocale: framerLocale || null,\r\n                webPageId: route?.abTestingVariantId ?? routeId,\r\n                abTestId: route?.abTestId,\r\n                referrer: document.referrer || null,\r\n                url: window.location.href,\r\n                hostname: window.location.hostname || null,\r\n                pathname: window.location.pathname || null,\r\n                hash: window.location.hash || null,\r\n                search: window.location.search || null,\r\n                timezone,\r\n                locale,\r\n            },\r\n            \"eager\"\r\n        ])\r\n\r\n        // Yield to avoid blocking the main thread with the user code\r\n        await Framer.yieldToMain({ priority: \"background\", ensureContinueBeforeUnload: true, continueAfter: \"paint\" })\r\n\r\n        document.dispatchEvent(new CustomEvent(\"framer:pageview\", {\r\n            detail: { framerLocale: framerLocale || null }\r\n        }))\r\n    })()\r\n}\r\n\r\n\r\n                const page = await pagePromise\r\n                if (shouldHydrate) {\r\n                    \r\n\r\n                    Framer.withPerformanceMarks(\"framer-rewrite-breakpoints\", () => {\r\n                        Framer.removeHiddenBreakpointLayersV2(breakpoints)\r\n                        window.__framer_onRewriteBreakpoints?.(breakpoints)\r\n                    })\r\n\r\n                    \r\n\r\n                    const startTransition = React.startTransition\r\n                    startTransition(() => {\r\n                        Framer.markHydrationStart()\r\n                        if (true) Framer.turnOffReactEventHandling()\r\n                        ReactDOM.hydrateRoot(container, page, { onRecoverableError: handleError })\r\n                    })\r\n                } else {\r\n                    \r\n                    ReactDOM.createRoot(container, { onRecoverableError: handleError }).render(page)\r\n                }\r\n            } catch (error) {\r\n                handleError(error, undefined, false)\r\n                throw error\r\n            }\r\n        }\r\n\r\n        \r\n\r\n        \r\n        ;(function () {\r\n            if (!isBrowser) return\r\n\r\n            React.startTransition(() => {\r\n                ReactDOM.hydrateRoot(\r\n                    document.getElementById(\"__framer-badge-container\"),\r\n                    React.createElement(React.Suspense, {}, React.createElement(React.lazy(() => import(\"__framer-badge\"))))\r\n                )\r\n            })\r\n        })()\r\n    "],"mappings":"6oDAC4vB,SAAS,GAAqB,EAAU,GAAG,EAAS,CAAC,IAAM,EAAc,CAAE,EAAsF,MAArF,IAAU,QAAQ,GAAS,GAAS,OAAO,OAAO,EAAc,EAAU,GAAS,CAAC,CAAQ,CAAe,mEAUtmB,AAV7U,GAA+E,IAA8N,KAAkF,IAA4B,CAA0B,IAAyH,CAAM,EAAgB,GAAO,EAAO,IAAI,CAAO,GAAW,CAAC,YAAY,WAAY,EAAOA,GAAkB,eAAqBC,GAAkB,CAAC,UAAU,kBAAkB,UAAU,kBAAmB,EAA8L,GAAY,CAAC,OAAO,GAAG,MAAM,EAAE,SAAS,GAAG,KAAK,QAAS,EAAO,EAAY,CAAC,OAAO,IAAI,MAAM,EAAE,SAAS,IAAI,KAAK,QAAS,EAAO,EAAU,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAY,EAAE,GAAI,EAAO,EAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAY,EAAE,EAAE,EAAE,EAAG,EAAO,EAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAY,EAAE,EAAE,EAAE,CAAE,EAAO,EAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAG,EAAO,EAAQ,CAAC,CAAC,WAAS,yBAAuB,WAAQ,EAAK,GAAG,CAAC,GAAK,CAAC,EAAQ,EAAW,CAAC,GAAgB,CAAC,wBAAuB,EAAC,CAAC,MAAO,GAAS,CAAC,KAAK,IAAI,GAAW,EAAM,CAAC,KAAK,IAAI,GAAW,EAAK,CAAC,OAAO,IAAI,GAAY,EAAQ,CAAC,QAAQ,GAAS,CAAQ,EAAC,AAAE,EAAO,GAAW,CAAC,CAAC,QAAM,WAAS,GAAG,CAAC,IAAM,EAAO,GAAiB,EAAoB,CAAO,EAAW,GAAO,EAAO,WAAiB,EAAa,EAAc,KAAK,CAAC,GAAG,EAAO,YAAW,GAAE,CAAC,KAAK,UAAU,EAAW,AAAC,EAAC,CAAC,MAAoB,GAAK,EAAoB,SAAS,CAAC,MAAM,EAAsB,UAAS,EAAC,AAAE,EAAO,GAAS,EAAO,OAAA,EAAsB,CAAOC,GAAwB,CAAC,QAAQ,YAAY,MAAM,WAAY,EAAOC,GAAS,CAAC,CAAC,SAAO,KAAG,QAAM,GAAG,EAAM,IAAU,CAAC,GAAG,EAAM,QAAQD,GAAwB,EAAM,UAAU,EAAM,SAAS,WAAY,GAAS,GAAuB,CAAC,EAAM,IAAe,EAAM,iBAAwB,EAAS,KAAK,IAAI,CAAC,EAAM,iBAAwB,EAAS,KAAK,IAAI,CAASE,GAAuB,EAAiB,SAAS,EAAM,EAAI,CAAC,IAAM,EAAY,EAAO,KAAK,CAAO,EAAW,GAAK,EAAkB,EAAgB,GAAa,CAAM,CAAC,eAAa,YAAU,CAAC,GAAe,CAAO,EAAkB,IAAsB,CAAM,CAAC,QAAM,UAAA,EAAU,WAAS,UAAQ,GAAG,EAAU,CAAC,GAAS,EAAM,CAAM,CAAC,cAAY,aAAW,uBAAoB,mBAAgB,iBAAe,aAAU,kBAAgB,aAAW,WAAS,CAAC,GAAgB,CAAC,cAAW,eAAe,YAAY,IAAI,EAAW,UAAQ,kBAAA,EAAkB,EAAC,CAAO,EAAiB,GAAuB,EAAM,EAAS,CAAM,CAAC,yBAAsB,SAAM,CAAC,GAAyB,EAAY,CAAO,EAAmB,CAAC,CAAC,UAAQ,WAAS,GAAG,GAAsB,MAAM,GAAG,IAAO,CAAC,EAAQ,MAAM,AAAE,EAAC,CAAO,EAAsB,CAAA,EAAuB,EAAO,EAAkB,EAAGJ,GAAkB,GAAG,EAAsB,CAAO,GAAK,EAAa,KAAK,CAAO,GAAK,EAAa,KAAK,CAAO,GAAK,EAAa,KAAK,CAAO,GAAK,EAAa,KAAK,CAAO,GAAK,EAAa,KAAK,CAAO,GAAK,EAAa,KAAK,CAAO,EAAK,EAAa,KAAK,CAAO,GAAK,EAAa,KAAK,CAAC,MAAoB,GAAK,GAAY,CAAC,GAAG,GAAU,EAAgB,SAAsB,EAAK,GAAS,CAAC,QAAQ,EAAS,SAAQ,EAAM,SAAsB,EAAK,GAAW,CAAC,MAAM,GAAY,SAAsB,EAAK,EAAO,IAAI,CAAC,GAAG,EAAU,GAAG,GAAgB,UAAU,EAAG,EAAkB,iBAAiBY,EAAU,EAAW,CAAC,mBAAmB,UAA2B,mBAAiB,SAAS,YAAY,IAAI,EAAW,MAAM,CAAC,gBAAgB,wEAAwE,uBAAuB,GAAG,wBAAwB,GAAG,oBAAoB,GAAG,qBAAqB,GAAG,UAAU,uCAAuC,GAAG,CAAM,EAAC,GAAG,GAAqB,CAAC,UAAU,CAAC,mBAAmB,OAAQ,CAAC,EAAC,EAAY,EAAe,CAAC,SAAsB,EAAM,EAAO,IAAI,CAAC,UAAU,iBAAiB,mBAAmB,QAAyB,mBAAiB,SAAS,YAAY,MAAM,CAAC,gBAAgB,wEAAwE,uBAAuB,GAAG,wBAAwB,GAAG,oBAAoB,GAAG,qBAAqB,EAAG,EAAC,SAAS,CAAc,EAAK,EAAQ,CAAC,wBAAuB,EAAM,SAAS,GAAsB,EAAKN,EAAU,CAAC,SAAsB,EAAK,EAAK,CAAC,KAAK,CAAC,KAAK,aAAa,UAAU,WAAY,EAAC,aAAY,EAAK,OAAO,YAAY,cAAa,EAAM,QAAQ,YAAY,cAAa,EAAK,SAAsB,EAAM,EAAO,EAAE,CAAC,UAAU,+BAA+B,mBAAmB,OAAO,kBAAiB,EAAK,MAAM,EAAS,UAA2B,mBAAiB,SAAS,YAAY,aAAa,EAAmB,CAAC,SAAQ,EAAC,CAAC,IAAI,GAAK,MAAM,CAAC,uBAAuB,GAAG,wBAAwB,GAAG,oBAAoB,GAAG,qBAAqB,EAAG,EAAC,WAAW,EAAU,SAAS,CAAc,EAAK,EAAI,CAAC,UAAU,gBAAgB,mBAAmB,OAAO,KAAK,QAAQ,gBAAgB,GAAG,eAAe,GAAoB,mBAAiB,SAAS,YAAY,IAAI,yXAAyX,oBAAmB,CAAK,EAAC,CAAc,EAAK,EAAgB,CAAC,SAAS,EAAQ,SAAsB,EAAK,EAAS,CAAC,UAAU,SAAS,UAAU,GAAK,UAAU,EAAG,EAAkB,EAAW,CAAC,oBAAmB,EAAK,0BAA0B,GAAG,2BAA2B,EAAS,UAAU,QAAQ,EAAE,QAAQ,IAAI,UAAU,EAAQ,KAAK,UAAU,MAAM,UAAS,EAAK,OAAO,GAAG,SAAsB,EAAK,EAAgB,CAAC,iBAAgB,EAAM,oBAAmB,EAAK,gBAAgB,EAAE,QAAQ,EAAW,UAAU,iBAAiB,KAAK,EAAW,QAAQ,EAA4B,mBAAiB,SAAS,YAAY,IAAI,GAAK,KAAK,SAAS,MAAM,CAAC,gBAAgB,wEAAwE,uBAAuB,GAAG,wBAAwB,GAAG,oBAAoB,GAAG,qBAAqB,GAAG,UAAU,sCAAuC,EAAC,SAAsB,EAAK,EAAS,CAAC,uBAAsB,EAAK,SAAsB,EAAA,EAAoB,CAAC,SAAsB,EAAK,EAAO,IAAI,CAAC,UAAU,+BAA+B,qBAAqB,YAAY,MAAM,CAAC,sBAAsB,0FAA2F,EAAC,SAAS,MAAO,EAAC,AAAC,EAAC,CAAC,UAAU,iBAAiB,MAAM,CAAC,OAAQ,EAAkB,mBAAiB,SAAS,YAAY,MAAM,CAAC,qBAAqB,kEAAkE,2BAA2B,mBAAmB,gCAAgC,WAAY,EAAC,kBAAkB,MAAM,oBAAmB,CAAK,EAAC,AAAC,EAAC,AAAC,EAAC,AAAC,EAAC,AAAC,CAAC,EAAC,AAAC,EAAC,AAAC,EAAC,AAAC,EAAC,CAAc,EAAK,EAAQ,CAAC,wBAAuB,EAAM,SAAS,GAAuB,EAAKA,EAAU,CAAC,SAAsB,EAAK,EAAK,CAAC,KAAK,CAAC,KAAK,aAAa,UAAU,WAAY,EAAC,aAAY,EAAK,OAAO,YAAY,cAAa,EAAM,QAAQ,YAAY,cAAa,EAAK,SAAsB,EAAM,EAAO,EAAE,CAAC,UAAU,+BAA+B,mBAAmB,WAAW,kBAAiB,EAAK,MAAM,EAAS,UAA2B,mBAAiB,SAAS,YAAY,aAAa,EAAmB,CAAC,QAAQ,CAAS,EAAC,CAAC,IAAI,GAAK,MAAM,CAAC,uBAAuB,GAAG,wBAAwB,GAAG,oBAAoB,GAAG,qBAAqB,EAAG,EAAC,WAAW,EAAU,SAAS,CAAc,EAAK,EAAI,CAAC,UAAU,gBAAgB,mBAAmB,WAAW,KAAK,QAAQ,gBAAgB,GAAG,eAAe,GAAoB,mBAAiB,SAAS,YAAY,IAAI,gWAAgW,oBAAmB,CAAK,EAAC,CAAc,EAAK,EAAgB,CAAC,SAAS,EAAS,SAAsB,EAAK,EAAS,CAAC,UAAU,SAAS,UAAU,GAAK,UAAU,EAAG,EAAkB,EAAW,CAAC,oBAAmB,EAAK,0BAA0B,GAAG,2BAA2B,EAAS,UAAU,QAAQ,EAAE,QAAQ,IAAI,UAAU,EAAS,KAAK,UAAU,MAAM,UAAS,EAAK,OAAO,GAAG,SAAsB,EAAK,EAAgB,CAAC,iBAAgB,EAAM,oBAAmB,EAAK,gBAAgB,EAAE,QAAQ,EAAW,UAAU,iBAAiB,KAAK,EAAW,QAAQ,EAA4B,mBAAiB,SAAS,YAAY,IAAI,GAAK,KAAK,SAAS,MAAM,CAAC,gBAAgB,wEAAwE,uBAAuB,GAAG,wBAAwB,GAAG,oBAAoB,GAAG,qBAAqB,GAAG,UAAU,sCAAuC,EAAC,SAAsB,EAAK,EAAS,CAAC,uBAAsB,EAAK,SAAsB,EAAA,EAAoB,CAAC,SAAsB,EAAK,EAAO,IAAI,CAAC,UAAU,+BAA+B,qBAAqB,YAAY,MAAM,CAAC,sBAAsB,0FAA2F,EAAC,SAAS,UAAW,EAAC,AAAC,EAAC,CAAC,UAAU,iBAAiB,MAAM,CAAC,OAAQ,EAAkB,mBAAiB,SAAS,YAAY,MAAM,CAAC,qBAAqB,kEAAkE,2BAA2B,mBAAmB,gCAAgC,WAAY,EAAC,kBAAkB,MAAM,oBAAmB,CAAK,EAAC,AAAC,EAAC,AAAC,EAAC,AAAC,EAAC,AAAC,CAAC,EAAC,AAAC,EAAC,AAAC,EAAC,AAAC,EAAC,CAAc,EAAK,EAAQ,CAAC,wBAAuB,EAAM,SAAS,GAAuB,EAAKA,EAAU,CAAC,SAAsB,EAAK,EAAK,CAAC,KAAK,CAAC,KAAK,aAAa,UAAU,WAAY,EAAC,aAAY,EAAK,OAAO,YAAY,cAAa,EAAM,QAAQ,YAAY,cAAa,EAAK,SAAsB,EAAM,EAAO,EAAE,CAAC,UAAU,+BAA+B,mBAAmB,WAAW,kBAAiB,EAAK,MAAM,EAAS,UAA2B,mBAAiB,SAAS,YAAY,aAAa,EAAmB,CAAC,QAAQ,CAAS,EAAC,CAAC,IAAI,GAAK,MAAM,CAAC,uBAAuB,GAAG,wBAAwB,GAAG,oBAAoB,GAAG,qBAAqB,EAAG,EAAC,WAAW,EAAU,SAAS,CAAc,EAAK,EAAI,CAAC,UAAU,gBAAgB,mBAAmB,WAAW,KAAK,QAAQ,gBAAgB,GAAG,eAAe,GAAoB,mBAAiB,SAAS,YAAY,IAAI,+bAA+b,oBAAmB,CAAK,EAAC,CAAc,EAAK,EAAgB,CAAC,SAAS,EAAS,SAAsB,EAAK,EAAS,CAAC,UAAU,SAAS,UAAU,GAAK,UAAU,EAAG,EAAkB,EAAW,CAAC,oBAAmB,EAAK,0BAA0B,GAAG,2BAA2B,EAAS,UAAU,QAAQ,EAAE,QAAQ,IAAI,UAAU,EAAS,KAAK,UAAU,MAAM,UAAS,EAAK,OAAO,GAAG,SAAsB,EAAK,EAAgB,CAAC,iBAAgB,EAAM,oBAAmB,EAAK,gBAAgB,EAAE,QAAQ,EAAW,UAAU,gBAAgB,KAAK,EAAW,QAAQ,EAA4B,mBAAiB,SAAS,YAAY,IAAI,GAAK,KAAK,SAAS,MAAM,CAAC,gBAAgB,wEAAwE,uBAAuB,GAAG,wBAAwB,GAAG,oBAAoB,GAAG,qBAAqB,GAAG,UAAU,sCAAuC,EAAC,SAAsB,EAAK,EAAS,CAAC,uBAAsB,EAAK,SAAsB,EAAA,EAAoB,CAAC,SAAsB,EAAK,EAAO,IAAI,CAAC,UAAU,+BAA+B,qBAAqB,YAAY,MAAM,CAAC,sBAAsB,0FAA2F,EAAC,SAAS,iBAAkB,EAAC,AAAC,EAAC,CAAC,UAAU,iBAAiB,MAAM,CAAC,OAAQ,EAAkB,mBAAiB,SAAS,YAAY,MAAM,CAAC,qBAAqB,kEAAkE,2BAA2B,mBAAmB,gCAAgC,WAAY,EAAC,kBAAkB,MAAM,oBAAmB,CAAK,EAAC,AAAC,EAAC,AAAC,EAAC,AAAC,EAAC,AAAC,CAAC,EAAC,AAAC,EAAC,AAAC,EAAC,AAAC,EAAC,CAAc,EAAK,EAAQ,CAAC,wBAAuB,EAAM,SAAS,GAAuB,EAAKA,EAAU,CAAC,SAAsB,EAAK,EAAK,CAAC,KAAK,CAAC,KAAK,aAAa,UAAU,WAAY,EAAC,aAAY,EAAK,OAAO,YAAY,cAAa,EAAM,QAAQ,YAAY,cAAa,EAAK,SAAsB,EAAM,EAAO,EAAE,CAAC,UAAU,+BAA+B,mBAAmB,eAAe,kBAAiB,EAAK,MAAM,EAAS,UAA2B,mBAAiB,SAAS,YAAY,aAAa,EAAmB,CAAC,QAAQ,CAAS,EAAC,CAAC,IAAI,EAAK,MAAM,CAAC,uBAAuB,GAAG,wBAAwB,GAAG,oBAAoB,GAAG,qBAAqB,EAAG,EAAC,WAAW,EAAU,SAAS,CAAc,EAAK,EAAI,CAAC,UAAU,gBAAgB,mBAAmB,eAAe,KAAK,QAAQ,gBAAgB,GAAG,eAAe,GAAoB,mBAAiB,SAAS,YAAY,IAAI,+SAA+S,oBAAmB,CAAK,EAAC,CAAc,EAAK,EAAgB,CAAC,SAAS,EAAS,SAAsB,EAAK,EAAS,CAAC,UAAU,SAAS,UAAU,EAAK,UAAU,EAAG,EAAkB,EAAW,CAAC,oBAAmB,EAAK,0BAA0B,GAAG,2BAA2B,EAAS,UAAU,QAAQ,EAAE,QAAQ,IAAI,UAAU,EAAS,KAAK,UAAU,MAAM,UAAS,EAAK,OAAO,GAAG,SAAsB,EAAK,EAAgB,CAAC,iBAAgB,EAAM,oBAAmB,EAAK,gBAAgB,EAAE,QAAQ,EAAW,UAAU,gBAAgB,KAAK,EAAW,QAAQ,EAA4B,mBAAiB,SAAS,YAAY,IAAI,GAAK,KAAK,SAAS,MAAM,CAAC,gBAAgB,wEAAwE,uBAAuB,GAAG,wBAAwB,GAAG,oBAAoB,GAAG,qBAAqB,GAAG,UAAU,sCAAuC,EAAC,SAAsB,EAAK,EAAS,CAAC,uBAAsB,EAAK,SAAsB,EAAA,EAAoB,CAAC,SAAsB,EAAK,EAAO,IAAI,CAAC,UAAU,+BAA+B,qBAAqB,YAAY,MAAM,CAAC,sBAAsB,0FAA2F,EAAC,SAAS,YAAa,EAAC,AAAC,EAAC,CAAC,UAAU,gBAAgB,MAAM,CAAC,OAAQ,EAAkB,mBAAiB,SAAS,YAAY,MAAM,CAAC,qBAAqB,kEAAkE,2BAA2B,mBAAmB,gCAAgC,WAAY,EAAC,kBAAkB,MAAM,oBAAmB,CAAK,EAAC,AAAC,EAAC,AAAC,EAAC,AAAC,EAAC,AAAC,CAAC,EAAC,AAAC,EAAC,AAAC,EAAC,AAAC,EAAC,AAAC,CAAC,EAAC,AAAC,EAAC,AAAC,EAAC,AAAC,EAAC,AAAC,EAAC,AAAE,EAAC,CAAOS,GAAI,CAAC,kFAAkF,gFAAgF,iQAAiQ,wSAAwS,2cAA2c,mPAAmP,ibAAib,6MAA6M,iEAAiE,gFAAgF,GAAA,EAAmB,EAUp+jB,EAAgB,GAAQX,GAAUW,GAAI,eAAe,IAAgB,EAAgB,EAAgB,YAAY,MAAM,EAAgB,aAAa,CAAC,OAAO,GAAG,MAAM,GAAI,EAAC,GAAoB,EAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,WAAY,EAAC,aAAa,CAAC,UAAU,OAAQ,EAAC,MAAM,UAAU,KAAK,EAAY,IAAK,CAAC,EAAC,CAAC,GAAS,EAAgB,CAAC,CAAC,eAAc,EAAK,MAAM,CAAC,CAAC,OAAO,QAAQ,OAAO,SAAS,MAAM,SAAS,aAAa,0EAA0E,IAAI,yEAAyE,OAAO,KAAM,EAAC,CAAC,OAAO,QAAQ,OAAO,SAAS,MAAM,SAAS,aAAa,wDAAwD,IAAI,yEAAyE,OAAO,KAAM,EAAC,CAAC,OAAO,QAAQ,OAAO,SAAS,MAAM,SAAS,aAAa,cAAc,IAAI,wEAAwE,OAAO,KAAM,EAAC,CAAC,OAAO,QAAQ,OAAO,SAAS,MAAM,SAAS,aAAa,cAAc,IAAI,wEAAwE,OAAO,KAAM,EAAC,CAAC,OAAO,QAAQ,OAAO,SAAS,MAAM,SAAS,aAAa,uGAAuG,IAAI,wEAAwE,OAAO,KAAM,EAAC,CAAC,OAAO,QAAQ,OAAO,SAAS,MAAM,SAAS,aAAa,6JAA6J,IAAI,sEAAsE,OAAO,KAAM,EAAC,CAAC,OAAO,QAAQ,OAAO,SAAS,MAAM,SAAS,aAAa,oGAAoG,IAAI,wEAAwE,OAAO,KAAM,CAAC,CAAC,EAAC,GAAG,GAAA,GAA0C,AAAC,EAAC,CAAC,8BAA6B,CAAK,EAAC,GCJp/D,SAAS,GAAe,EAAM,CAAC,GAAK,CAAC,QAAM,OAAK,cAAY,aAAW,OAAK,aAAW,QAAM,QAAM,CAAC,EAAY,EAAU,EAAO,KAAK,CAAM,CAAC,EAAO,EAAU,CAAC,EAAS,CAAC,MAAM,IAAI,OAAO,GAAI,EAAC,CAAO,EAAM,EAAO,CAAE,EAAC,CAAO,EAAa,EAAO,KAAK,CAAO,EAAa,EAAO,CAAC,EAAE,EAAE,SAAS,CAAE,EAAC,CAGs2B,MAHr2B,GAAU,IAAI,CAAC,IAAI,EAAa,QAAQ,OAAO,IAAM,EAAK,EAAa,QAAQ,uBAAuB,CAAC,EAAU,CAAC,MAAM,EAAK,MAAM,OAAO,EAAK,MAAO,EAAC,AAAE,EAAC,CAAC,GAAO,MAAM,GAAO,MAAO,EAAC,CAC7d,EAAU,IAAI,CAAC,GAAG,IAAO,QAAQ,OAAO,SAAS,EAAgB,EAAE,CAAC,IAAI,EAAa,QAAQ,OAAO,IAAM,EAAK,EAAa,QAAQ,uBAAuB,CAAOP,EAAE,EAAE,QAAQ,EAAK,KAAW,EAAE,EAAE,QAAQ,EAAK,IAA8B,AAA1B,EAAM,QAAQ,KAAK,CAAC,EAAA,EAAE,GAAE,EAAC,CAAI,EAAM,QAAQ,OAAO,GAAa,EAAM,QAAQ,OAAO,AAAG,UAAS,GAAkB,CAAC,EAAM,QAAQ,CAAE,CAAE,CAAgH,gBAAvG,iBAAiB,YAAY,EAAgB,CAAC,SAAS,iBAAiB,aAAa,EAAiB,CAAO,IAAI,CAA2D,AAA1D,SAAS,oBAAoB,YAAY,EAAgB,CAAC,SAAS,oBAAoB,aAAa,EAAiB,AAAE,CAAE,EAAC,CAAC,EAAK,CAAY,EAAC,CAChmB,EAAU,IAAI,CAAC,GAAG,IAAO,OAAO,OAAiD,AAA1C,EAAM,QAAQ,CAAE,EAAC,EAAa,QAAQ,EAAE,EAAE,EAAa,QAAQ,SAAS,EAAE,SAAS,EAAY,EAAG,CAA2D,IAAtD,MAAM,QAAQ,EAAW,EAAE,EAAW,OAAO,IAAa,EAAa,QAAQ,OAAO,IAAM,EAAM,EAAW,OAAW,EAAE,EAAa,QAAQ,EAAM,EAAS,EAAa,QAAQ,SAAS,AAAa,IAAS,EAAG,IAAM,GAAI,EAAG,GAAU,IAA0D,AAAtD,GAAG,EAAG,EAAS,EAAE,EAAM,IAAE,EAAE,GAAE,EAAa,QAAQ,EAAE,EAAE,EAAa,QAAQ,SAAS,EACld,IAAM,EAAS,CAAE,EAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAY,IAAI,CAAC,IAAI,EAAI,GAAG,EAAY,EAAE,GAAG,GAAG,AAAG,EAAI,IAAE,GAAK,GAAM,IAAM,EAAK,KAAK,MAAM,EAAI,CAAC,EAAY,GAAM,EAAK,GAAG,EAAY,EAAK,EAAI,KAAK,MAAM,EAAI,CAAOA,EAAE,EAAW,GAAM,GAAG,EAAE,GAAM,EAAW,GAAM,EAAE,EAAW,EAAE,EAAW,GAAM,GAAG,EAAE,GAAM,EAAW,GAAM,EAAE,EAAK,EAAS,KAAK,CAAC,EAAA,EAAE,GAAE,EAAC,AAAE,CAAuB,EAAjB,QAAQ,EAAS,sBAAsB,EAAY,AAAE,CAAmC,6BAAb,EAAY,CAAO,IAAI,CAAC,EAAa,QAAQ,SAAS,CAAG,CAAE,EAAC,CAAC,EAAK,EAAW,EAAY,CAAM,EAAC,CAAC,EAAU,IAAI,CAAC,IAAM,EAAO,EAAU,QAAQ,IAAI,EAAO,OAAO,IAAM,EAAI,EAAO,WAAW,KAAK,CAAK,GAAQ,EAAK,SAAS,GAAM,CAA+C,GAA9C,EAAI,UAAU,EAAE,EAAE,EAAO,MAAM,EAAO,OAAO,EAAK,GAAY,EAAM,QAAQ,OAAO,EAAE,CAAgI,AAA/H,EAAI,MAAM,CAAC,EAAI,SAAS,QAAQ,EAAI,QAAQ,QAAQ,EAAI,YAAY,EAAM,EAAI,UAAU,EAAK,EAAI,YAAY,EAAE,EAAI,WAAW,CAAC,EAAI,OAAO,EAAM,QAAQ,GAAG,EAAE,EAAM,QAAQ,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAM,QAAQ,OAAO,IAAK,EAAI,OAAO,EAAM,QAAQ,GAAG,EAAE,EAAM,QAAQ,GAAG,EAAE,CAAe,AAAb,EAAI,QAAQ,CAAC,EAAI,SAAS,AAAE,CAAG,GAAQ,sBAAsB,EAAK,AAAE,CAAO,UAAD,CAAO,IAAI,CAAC,GAAQ,CAAO,CAAE,EAAC,CAAC,EAAM,EAAK,EAAY,EAAW,EAAO,MAAM,EAAO,MAAO,EAAC,CAAqB,EAAK,MAAM,CAAC,IAAI,EAAa,MAAM,CAAC,GAAG,EAAM,MAAM,OAAO,OAAO,OAAO,SAAS,WAAW,SAAS,SAAS,OAAO,SAAU,EAAC,aAAa,wBAAwB,SAAsB,EAAK,SAAS,CAAC,IAAI,EAAU,MAAM,EAAO,MAAM,OAAO,EAAO,OAAO,MAAM,CAAC,MAAM,OAAO,OAAO,OAAO,QAAQ,EAAW,OAAO,QAAQ,SAAS,WAAW,IAAI,EAAE,KAAK,EAAE,cAAc,MAAO,CAAC,EAAC,AAAC,EAAC,AAAE,kBAT/hD,GAA2C,IAA6C,IAAoD,CASm5C,GAAoB,GAAe,CAAC,KAAK,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,QAAQ,CAAC,QAAQ,MAAO,EAAC,aAAa,CAAC,QAAQ,MAAO,EAAC,aAAa,OAAQ,EAAC,WAAW,CAAC,KAAK,EAAY,MAAM,MAAM,cAAc,QAAQ,CAAC,KAAK,EAAY,OAAO,SAAS,CAAC,EAAE,CAAC,KAAK,EAAY,OAAO,aAAa,IAAI,IAAI,EAAE,IAAI,GAAI,EAAC,EAAE,CAAC,KAAK,EAAY,OAAO,aAAa,IAAI,IAAI,EAAE,IAAI,GAAI,CAAC,CAAC,EAAC,aAAa,CAAC,CAAC,EAAE,GAAG,EAAE,EAAG,EAAC,CAAC,EAAE,IAAI,EAAE,EAAG,EAAC,CAAC,EAAE,IAAI,EAAE,GAAI,EAAC,CAAC,EAAE,GAAG,EAAE,GAAI,EAAC,CAAC,EAAE,GAAG,EAAE,EAAG,CAAC,EAAC,OAAO,CAAC,CAAC,OAAK,GAAG,IAAO,MAAO,EAAC,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,aAAa,EAAE,OAAO,CAAC,CAAC,OAAK,GAAG,IAAO,MAAO,EAAC,MAAM,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,aAAa,SAAU,EAAC,KAAK,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,aAAa,CAAE,EAAC,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,eAAe,IAAI,EAAE,IAAI,GAAG,aAAa,EAAG,EAAC,WAAW,CAAC,KAAK,EAAY,QAAQ,MAAM,cAAc,cAAa,CAAM,CAAC,EAAC,IAAgB,mECKhxE,AAdxL,GAAyD,IAA+P,KAA8C,IAA4B,CAA0B,IAAsE,KAA2E,CAAM,GAAS,GAASC,GAAI,CAAO,GAAoB,GAASC,GAAe,CAAO,GAAY,CAAC,UAAU,qBAAqB,UAAU,6CAA6C,UAAU,qBAAsB,EAAOC,GAAU,WAAW,SAAW,IAAkB,GAAkB,eAAqB,GAAkB,CAAC,UAAU,kBAAkB,UAAU,mBAAmB,UAAU,kBAAmB,EAAO,EAAgB,CAAC,UAAU,CAAC,gIAAiI,EAAC,UAAU,CAAC,yDAA0D,CAAC,EAAO,GAAe,OAAO,KAAK,EAAgB,CAAO,GAAU,CAAC,UAAU,0BAA0B,UAAU,0BAA2B,EAAO,GAAM,CAAC,kFAAkF,kFAAkF,2iBAA2iB,6QAA6Q,2NAA2N,uPAAuP,yJAAyJ,oEAAoE,6MAA8M,EAAO,GAAa,CAAC,UAAU,qBAAqB,UAAU,6CAA6C,UAAU,qBAAsB,EAAO,GAAU,CAAC,CAAC,QAAM,GAAG,CAAC,IAAM,EAAS,IAAqB,CAAyB,OAArB,EAAgB,KAAyB,EAAK,QAAQ,CAAC,wBAAwB,CAAC,OAAO,CAAM,EAAC,yBAAyB,EAAG,EAAC,AAAE,EAAO,GAAwB,CAAC,QAAQ,YAAY,MAAM,YAAY,OAAO,WAAY,EAAO,GAAS,CAAC,CAAC,SAAO,KAAG,QAAM,GAAG,EAAM,IAAU,CAAC,GAAG,EAAM,QAAQ,GAAwB,EAAM,UAAU,EAAM,SAAS,WAAY,GAAS,GAAuB,EAAiB,SAAS,EAAM,EAAI,CAAC,IAAM,EAAY,EAAO,KAAK,CAAO,EAAW,GAAK,EAAkB,EAAgB,GAAa,CAAM,CAAC,eAAa,YAAU,CAAC,GAAe,CAAM,CAAC,QAAM,UAAA,EAAU,WAAS,UAAQ,WAAS,GAAG,EAAU,CAAC,GAAS,EAAM,CAAM,CAAC,EAAY,EAAoB,CAAC,GAA8B,EAAQ,IAAY,EAAM,CAAO,EAA+B,GAAsB,CAAE,EAAO,GAAkB,EAAG,GAAkB,GAAG,GAAsB,CAAO,EAAY,IAAS,IAAW,EAAgB,CAAC,YAAY,WAAY,EAAC,SAAS,EAAY,EAAvD,EAAwG,MAArB,IAAiB,CAAE,EAAC,CAAqB,EAAK,GAA0B,SAAS,CAAC,MAAM,CAAC,kBAAiB,EAAK,iBAAiB,YAAY,oBAAkB,EAAC,SAAsB,EAAM,GAAY,CAAC,GAAG,GAAU,EAAgB,SAAS,CAAc,EAAK,GAAU,CAAC,MAAM,mGAAoG,EAAC,CAAc,EAAM,EAAO,IAAI,CAAC,GAAG,EAAU,UAAU,EAAG,GAAkB,iBAAiBC,EAAU,CAAC,wBAAuB,EAAK,kBAAiB,EAAK,IAAI,EAAW,MAAM,CAAC,GAAG,CAAM,EAAC,SAAS,CAAc,EAAKC,GAAM,CAAC,WAAW,CAAC,IAAI,oBAAoB,IAAI,OAAO,gBAAgB,KAAK,eAAe,KAAK,QAAQ,GAA0B,EAAE,CAAC,YAAY,KAAK,WAAW,KAAK,MAAM,QAAQ,IAAI,uEAAuE,OAAO,yKAA0K,EAAC,UAAU,gBAAgB,mBAAmB,QAAS,EAAC,CAAc,EAAKC,EAAkB,CAAC,WAAW,EAAY,UAAU,CAAC,UAAU,CAAC,MAAM,2BAA2B,EAAE,GAAI,EAAC,UAAU,CAAC,MAAM,uBAAwB,CAAC,EAAC,SAAsB,EAAK,GAA0B,CAAC,OAAO,GAAG,MAAM,wBAAwB,EAAE,GAAG,SAAsB,EAAKA,EAAkB,CAAC,WAAW,EAAY,UAAU,CAAC,UAAU,CAAC,uCAAA,EAA6C,CAAC,EAAC,SAAsB,EAAK,EAAU,CAAC,UAAU,2BAA2B,oCAAmC,EAAK,cAAa,EAAK,OAAO,YAAY,QAAQ,YAAY,SAAsB,EAAKA,EAAkB,CAAC,WAAW,EAAY,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,OAAO,SAAS,OAAO,MAAM,MAAO,EAAC,QAAQ,WAAY,CAAC,EAAC,SAAsB,EAAKL,GAAI,CAAC,OAAO,OAAO,GAAG,YAAY,SAAS,YAAY,MAAM,CAAC,SAAS,OAAO,MAAM,MAAO,EAAC,QAAQ,YAAY,MAAM,MAAO,EAAC,AAAC,EAAC,AAAC,EAAC,AAAC,EAAC,AAAC,EAAC,AAAC,EAAC,CAAC,GAAa,EAAe,EAAK,GAA0B,CAAC,SAAsB,EAAK,EAAU,CAAC,UAAU,wDAAwD,kBAAiB,EAAK,cAAa,EAAK,OAAO,YAAY,QAAQ,YAAY,SAAsB,EAAKC,GAAe,CAAC,MAAM,kEAAkE,OAAO,OAAO,YAAW,EAAM,GAAG,YAAY,SAAS,YAAY,KAAK,QAAQ,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,EAAG,EAAC,CAAC,EAAE,IAAI,EAAE,EAAG,EAAC,CAAC,EAAE,IAAI,EAAE,GAAI,EAAC,CAAC,EAAE,GAAG,EAAE,GAAI,EAAC,CAAC,EAAE,GAAG,EAAE,EAAG,CAAC,EAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,OAAO,MAAM,MAAO,EAAC,YAAY,GAAG,MAAM,MAAO,EAAC,AAAC,EAAC,AAAC,EAAC,CAAC,EAAsB,EAAK,MAAM,CAAC,UAAU,eAAgB,EAAC,AAAC,CAAC,EAAC,CAAc,EAAK,MAAM,CAAC,GAAG,kBAAmB,EAAC,AAAC,CAAC,EAAC,AAAC,EAAC,AAAE,EAAC,CAAOK,GAAI,GAAQ,CAAC,IAAM,EAAiB,IAAS,GAAa,QAAQ,IAAS,GAAa,OAA0K,OAA/J,EAAqK,CAAC,GAAG,GAAM,GAAG,GAAe,QAAQ,GAAK,CAAC,IAAM,EAAS,GAAU,GAAK,MAAO,GAAgB,GAAK,IAAI,MAAS,EAAS,IAAI,EAAK,GAAG,AAAE,EAAC,AAAC,EAAvR,CAAC,GAAG,GAAM,GAAG,GAAe,IAAI,GAAK,CAAC,IAAM,EAAM,GAAa,GAAK,OAAO,SAAS,EAAM,KAAK,EAAgB,GAAK,KAAK,IAAI,CAAC,GAAK,EAAC,AAAC,CAAoJ,EAcv4O,EAAgB,GAAQ,GAAUA,GAAI,eAAe,IAAgB,EAAgB,EAAgB,YAAY,SAAS,EAAgB,aAAa,CAAC,OAAO,IAAI,MAAM,IAAK,EAAC,GAAS,EAAgB,CAAC,CAAC,eAAc,EAAK,MAAM,CAAE,CAAC,EAAC,GAAG,GAAS,GAAG,EAAoB,EAAC,CAAC,8BAA6B,CAAK,EAAC,GCHhT,SAAS,GAAS,CAAC,UAAS,WAAU,QAAO,GAAG,EAAK,CAAE,CAAC,IAAM,EAAgB,CAAE,EAClF,EAAQ,EAAc,IAAY,CAAE,EAC1C,OAAQ,EAAR,CAAkB,IAAK,YACvB,IAAK,YACL,IAAK,YACL,MAAO,GAAoBC,GAAQ,CAAC,GAAG,EAAO,IAAK,SAAU,UAAS,OAAM,EAAE,GAAS,EAAK,CAAC,CAC7F,QAAW,MAAO,IAAS,EAAM,AAAG,CAAC,CACrC,SAAgB,GAA6B,EAAS,CAAC,OAAQ,EAAR,CAAkB,IAAK,YAC9E,IAAK,YACL,IAAK,YACL,MAAO,CAAC,CAAC,KAAM,UAAW,WAAY,qBAAsB,EAAE,CAAC,KAAM,UAAW,WAAY,4CAA6C,EAAE,CAAC,KAAM,SAAU,WAAY,oBAAqB,CAAC,EAC9L,QAAW,MAAmB,CAAC,CAEvB,eAAsB,GAAY,CAAE,UAAS,gBAAe,WAAU,CAAE,CACpE,IAAM,EAAc,EAAO,GAAS,KAAK,SAAS,CAE5C,EAAU,EAAA,GAEZ,CACI,WAAW,EACX,UACA,gBACA,SACA,kBACA,gBACA,aAAc,EAAY,IAAM,OAAO,8DAAgG,CACvI,oBAAA,GACA,WACA,UACA,wBAAA,GACA,iBAAkB,4CAClB,UACb,eA+BH,GA/B4B,CAAC,IAAM,CACnC,IAAM,EAAQ,wDAAwD,KAAK,EAAU,UAAU,CAC3F,MAEJ,MAAO,GAAY,SAAY,CAC3B,IAAM,EAAe,CACjB,UAAW,EACX,OAAQ,gDAIP,EACD,MAAO,CACH,cAAA,EACA,SAAA,EACA,KAAA,EACA,YAAA,GACA,UAAA,EACA,OAAA,EACA,SAAA,CACH,EACD,YAAa,CAAE,aAAA,CAAc,CAChC,EAED,EAAO,+BAAiC,EAExC,GAAM,CAAE,kBAAiB,CAAG,MAAM,OAAO,oCACzC,MAAO,CACH,QAAS,EAAgB,CAAE,cAAc,EAAC,AAC7C,CACJ,EAAC,AACL,IAAG,CAEgB,eAAgB,EACnB,EACJ,CAEK,EAA6B,EAAA,GAE/B,CACI,SAAU,EACV,MAAO,CAAC,wCAAwC,EAAO,wBAAwB,EAAO,gBAAgB,EAAO,+BAA+B,EAAM,gBAAgB,EAAM,oBAAoB,EAAM,gCAAgC,EAAO,YAAY,CAAM,CAC9P,EACJ,CAEK,EAA8C,EAAA,GAA6D,CAC7G,SAAU,CACb,EAAC,CAGI,EAAO,EAAA,GAAgD,CACzD,SAAU,EACV,MAAO,CAAC,OAAQ,CAAC,MAAO,CAAC,QAAS,EAAG,OAAQ,EAAG,UAAU,EAAO,QAAS,EAAG,QAAS,EAAG,MAAO,EAAG,WAAY,CAAC,OAAQ,GAAK,QAAS,GAAI,MAAO,EAAG,SAAU,GAAK,qBAAqB,EAAO,KAAM,CAAC,IAAM,EAAG,IAAM,CAAE,EAAE,KAAM,EAAG,UAAW,IAAK,KAAM,QAAS,EAAE,EAAG,MAAO,EAAG,MAAO,EAAE,KAAM,CAAC,QAAS,EAAG,OAAQ,EAAG,UAAU,EAAO,QAAS,EAAG,QAAS,EAAG,MAAO,EAAG,WAAY,CAAC,OAAQ,GAAK,QAAS,GAAI,MAAO,EAAG,SAAU,GAAK,qBAAqB,EAAO,KAAM,CAAC,IAAM,EAAG,IAAM,CAAE,EAAE,KAAM,EAAG,UAAW,IAAK,KAAM,QAAS,EAAE,EAAG,MAAO,EAAG,MAAO,CAAC,EAAE,OAAQ,CAAE,CAAC,CAC/iB,EAAC,CAIF,OADA,MAAM,EACC,CACV,CA4BD,SAAS,IAAQ,CACR,GACL,EAAO,gBAAgB,KAAK,UAAU,AACzC,CAED,eAAe,GAAK,EAAe,EAAW,CAC1C,SAAS,EAAY,EAAO,EAAW,GAAc,EAAM,CACvD,GAAI,EAAM,QAAU,EAAO,uBAAwB,OAEnD,IAAM,EAAiB,GAAW,eAClC,GAAI,EAGA,IAFA,QAAQ,KAAK;EAAqH,EAAO,EAAe,CAEpJ,KAAK,QAAQ,CAAG,IAAM,MAAA,MAE1B,QAAQ,MAAM;EAAqJ,EAAO,EAAe,CAE7L,GAAM,EAAc,wCAA0C,4BAA6B,CACvF,QAAS,OAAO,EAAM,CACtB,iBACA,MAAO,MAAA,GAA6B,aAAiB,cAAgB,EAAM,OAAU,SAAW,EAAM,MAAQ,IACjH,EAAC,AACL,CAED,GAAI,CACA,IAAI,EAAS,EAAU,EAAeC,EACtC,GAAI,EAAe,CACf,IAAM,EAAY,KAAK,MAAM,EAAU,QAAQ,gBAAmB,CAMlE,AALA,EAAU,EAAU,QACpB,EAAW,EAAU,SACrB,EAAgB,EAAU,cAC1B,EAAc,EAAU,YAExB,EAAU,GAA+B,EAAQ,EAAQ,AAC5D,KAAM,CACH,GAA+B,MAAA,GAAkB,CAEjD,IAAM,EAAY,GAAiC,EAAQ,mBAAmB,SAAS,SAAS,EAAE,EAAM,EAAQ,CAGhH,AAFA,EAAU,EAAU,QACpB,EAAW,EAAU,SACrB,EAAgB,EAAU,aAC7B,CAED,IAAM,EAAc,GAAY,CAAE,UAAS,WAAU,eAAe,EAAC,CAGrF,AAAW,YACF,CAAC,SAAY,CACd,IAAM,EAAQ,EAAO,GAEf,EAAkB,UAClB,EAAe,EAAQ,KAAK,CAAC,CAAE,KAAI,GAAM,EAAoC,IAAO,EAAhC,IAAO,EAAkC,CAAC,KAEhG,EAAmB,KACvB,GAAI,GAAO,cAAgB,EAAiB,CACtC,IAAM,EAAQ,KAAM,GAAgB,EAAM,iBAAiB,CACrD,CAAC,EAAK,CAAG,OAAO,OAAO,EAAc,CAC3C,AAAI,UAAgB,GAAS,WACzB,EAAoB,KAAM,GAAM,kBAAkB,EAAM,OAAA,GAA0B,EAAK,KAEhG,CAED,IAAM,EAA0B,KAAK,gBAAgB,CAAC,iBAAiB,CACjE,EAAW,EAAwB,SACnC,EAAS,EAAwB,OAoCvC,AAhCA,MAAM,IAAI,QAAQ,AAAC,GAAY,CAC3B,AAAI,SAAS,aACT,SAAS,iBAAiB,qBAAsB,EAAS,CAAE,MAAM,CAAM,EAAC,CAExE,GAAS,AAEhB,GAED,EAAO,gBAAgB,KAAK,CACxB,0BACA,CACI,aAAc,IAAgB,KAC9B,UAAW,GAAO,MAAQ,IAC1B,mBACA,aAAc,GAAgB,KAC9B,UAAW,GAAO,oBAAsB,EACxC,SAAU,GAAO,SACjB,SAAU,SAAS,UAAY,KAC/B,IAAK,EAAO,SAAS,KACrB,SAAU,EAAO,SAAS,UAAY,KACtC,SAAU,EAAO,SAAS,UAAY,KACtC,KAAM,EAAO,SAAS,MAAQ,KAC9B,OAAQ,EAAO,SAAS,QAAU,KAClC,WACA,QACH,EACD,OACH,EAAC,CAGF,KAAM,IAAmB,CAAE,SAAU,aAAc,4BAA4B,EAAM,cAAe,OAAS,EAAC,CAE9G,SAAS,cAAc,IAAI,YAAY,kBAAmB,CACtD,OAAQ,CAAE,aAAc,GAAgB,IAAM,CACjD,GAAE,AACN,IAAG,CAIQ,IAAM,EAAO,MAAM,EACnB,GAAI,EAAe,CAGf,GAA4B,6BAA8B,IAAM,CAE5D,AADA,GAAsCA,EAAY,CAClD,EAAO,gCAAgCA,EAAY,AACtD,EAAC,CAIF,IAAM,EAAA,EACN,EAAgB,IAAM,CAGlB,AAFA,IAA2B,CACjB,IAAkC,CAC5C,EAAqB,EAAW,EAAM,CAAE,mBAAoB,CAAa,EAAC,AAC7E,EAAC,AACL,MAEG,GAAoB,EAAW,CAAE,mBAAoB,CAAa,EAAC,CAAC,OAAO,EAAK,AAEvF,OAAQ,EAAO,CAEZ,KADA,GAAY,MAAA,IAAkB,EAAM,CAC9B,CACT,CACJ,0BA7JD,OAxGA,GAAiC,CACzC,GAA+B,CAC/B,GAAyC,CACzC,GAA6C,CAC7C,IAAkH,CAEpG,EAAS,CAAC,UAAW,CAAC,SAAU,CAAC,UAAW,SAAU,UAAW,OAAQ,UAAW,eAAgB,UAAW,WAAY,UAAW,UAAW,EAAE,KAAM,EAAY,IAAM,OAAO,8DAAgG,CAAE,KAAM,GAAI,EAAE,UAAW,CAAC,SAAU,CAAE,EAAE,KAAM,EAAY,IAAM,OAAO,8DAAgG,CAAE,KAAM,MAAO,EAAE,UAAW,CAAC,aAAc,YAAa,SAAU,CAAE,EAAE,KAAM,EAAY,IAAM,OAAO,8DAAgG,CAAE,KAAM,sBAAuB,CAAC,EAE9pB,EAAU,CAAC,CAAC,KAAM,KAAM,GAAI,UAAW,KAAM,UAAW,KAAM,EAAI,CAAA,EAClE,EAAkB,CAAC,UAAW,UAAa,MAAM,OAAO,gEAAmG,KAAS,EACpK,GAAe,mEA6Ff,SAAmB,SAAa,IAClC,EAAW,CAiBX,AAhBA,EAAO,2BAA6B,CAAC,EAAoB,IAAqB,IACnE,EAAA,EAA6C,CAAE,MAAO,qCAAuC,EAAmB,SAAW,EAAqB,GAAK,EAAC,CAIjK,EAAO,QAAU,CACb,GAAG,EAAO,QACV,IAAK,CACD,GAAI,EAAO,QAAU,EAAO,QAAQ,QAAA,GACpC,SAAU,YACb,CACJ,EAED,EAAO,gBAAkB,EAAO,iBAAmB,CAAE,EAGrD,IAA4C,CAE5C,IAAM,EAAY,SAAS,eAAe,OAAO,CAEjD,AAAI,oBAAqB,EAAU,QAAS,IAAK,EAAM,EAAU,CAC5D,IAAK,EAAO,EAAU,AAC9B,CA2IA,CAAC,UAAY,CACL,GAEL,EAAsB,IAAM,CACxB,EACI,SAAS,eAAe,2BAA2B,CACnD,EAAA,EAAoC,CAAE,EAAE,EAAoB,EAAW,IAAM,OAAO,4BAAkB,CAAC,CAAC,CAC3G,AACJ,EAAC,AACL,IAAG"}