{"version":3,"file":"SlideshowUltra.BJuTYcBW.mjs","names":["React.useState","React.useRef","React.useCallback","_Fragment"],"sources":["https:/framerusercontent.com/modules/BGoHpdYfZT9K9htX25XO/qESITmshxMtBX9P3f3ht/SlideshowUltra.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import*as React from\"react\";import{Frame,addPropertyControls,ControlType}from\"framer\";import{motion,useMotionValue,animate,useDragControls}from\"framer-motion\";/**\n * @framerDisableUnlink\n *\n * @framerIntrinsicWidth 200\n * @framerIntrinsicHeight 200\n */export default function SlideshowUltra(props){const{gap=40,stacks=[],visibleCount=1,interactionMode=\"Drag\",transition={type:\"spring\",stiffness:260,damping:32},showArrows=true,prevArrow,nextArrow,arrowInset=16,arrowInactiveOpacity=.4,arrowZIndex=6,indicatorType=\"None\",dotType=\"Native\",dots={},progress={},activeDot,inactiveDot,customDots={},inactiveOpacity=.6,initialIndex=1}=props;const enableDrag=interactionMode===\"Drag\";const enableSwipe=interactionMode===\"Swipe\";// Dot settings\nconst{gap:customDotGap=6,inset:customDotInset=16}=customDots;const{activeColor:dotActiveColor=\"#000000\",inactiveColor:dotInactiveColor=\"#B0B0B0\",inset:dotInset=16,radius:dotRadius=4,gap:dotGap=6,containerPadding=8,containerRadius=12,containerFill=\"transparent\",dotWidth=8,dotHeight=8,zIndex:dotZIndex=6}=dots;// Progress settings\nconst{bgColor=\"#E0E0E0\",fillColor=\"#007AFF\",height:barHeight=4,widthMode=\"fill\",fixedWidth=200,inset:progressInset=16,radius:progressRadius=4,zIndex:progressZIndex=6}=progress;// Slides\nconst slides=stacks.filter(Boolean);const slideCount=slides.length;const canDrag=slideCount>visibleCount;const x=useMotionValue(0);// Measure container width\nconst[compWidth,setCompWidth]=React.useState(0);const rootRef=React.useRef(null);React.useLayoutEffect(()=>{if(!rootRef.current)return;const measure=()=>setCompWidth(rootRef.current.offsetWidth);measure();const ro=new ResizeObserver(measure);ro.observe(rootRef.current);return()=>ro.disconnect();},[]);// Dimensions & helpers\nconst slideWidth=visibleCount>0?(compWidth-gap*(visibleCount-1))/visibleCount:0;const pageSize=slideWidth+gap;const clamp=(v,min,max)=>Math.max(min,Math.min(max,v));// Animation constants\nconst SWIPE_SNAP_DELAY=40;const MOMENTUM_PAGES=1.2;const OVERSHOOT_RESISTANCE=.15;// Current index state\nconst[currentIndex,setCurrentIndex]=React.useState(clamp(initialIndex-1,0,slideCount-visibleCount));React.useEffect(()=>{if(pageSize===0)return;snapToIndex(initialIndex-1);},[pageSize,initialIndex,slideCount,visibleCount]);// Drag refs\nconst isDraggingRef=React.useRef(false);const dragControls=useDragControls();// Swipe momentum state\nconst swipeStateRef=React.useRef({velocity:0,lastTime:0,accumulated:0});const snapTimeoutRef=React.useRef(null);// Arrow component (was missing)\nconst ArrowWrapper=({isLeft,arrow,disabled,onTap})=>{if(!arrow)return null;const sizeProp=arrow.props?.width||arrow.props?.height||arrow.props?.size||40;const opacity=disabled?arrowInactiveOpacity:1;const arrowEl=/*#__PURE__*/React.isValidElement(arrow)?/*#__PURE__*/React.cloneElement(arrow,{width:\"100%\",height:\"100%\",style:{...arrow.props.style,pointerEvents:\"none\"}}):arrow;return /*#__PURE__*/_jsx(Frame,{width:sizeProp,height:sizeProp,position:\"absolute\",left:isLeft?arrowInset:undefined,right:isLeft?undefined:arrowInset,top:\"50%\",y:-sizeProp/2,background:\"transparent\",opacity:opacity,style:{display:\"flex\",alignItems:\"center\",justifyContent:isLeft?\"flex-start\":\"flex-end\",cursor:disabled?\"default\":\"pointer\",zIndex:arrowZIndex},onTap:disabled?undefined:onTap,children:arrowEl});};// Snapping logic\nconst snapToIndex=i=>{const clamped=clamp(i,0,slideCount-visibleCount);const effTrans=enableSwipe?{type:\"spring\",stiffness:240,damping:22,mass:.5}:transition;animate(x,-clamped*pageSize,effTrans);setCurrentIndex(clamped);isDraggingRef.current=false;};// Drag end handler\nconst handleDragEnd=(_,info)=>{if(!canDrag){isDraggingRef.current=false;return;}const projected=-x.get()/pageSize-info.velocity.x/1e3;snapToIndex(Math.round(projected));};// Wheel swipe with momentum (removed state.isActive assignments)\nconst handleWheel=React.useCallback(e=>{if(!enableSwipe||!canDrag)return;const now=Date.now();const state=swipeStateRef.current;const isHorizontal=Math.abs(e.deltaX)>Math.abs(e.deltaY);const isSignificant=Math.abs(e.deltaX)>2;if(!isHorizontal||!isSignificant)return;e.preventDefault();e.stopPropagation();const dX=e.deltaX;const dt=now-state.lastTime;if(dt>0){const instVel=dX/dt;state.velocity=state.velocity*.8+instVel*.2;}const factor=Math.min(1,Math.abs(state.velocity)*100);const scaled=dX*(.8+factor*.4);state.accumulated+=scaled;state.lastTime=now;let newPos=x.get()-scaled;const maxPos=0;const minPos=-(slideCount-visibleCount)*pageSize;if(newPos>maxPos){newPos=maxPos+(newPos-maxPos)*OVERSHOOT_RESISTANCE;}else if(newPos<minPos){newPos=minPos-(minPos-newPos)*OVERSHOOT_RESISTANCE;}x.set(newPos);if(snapTimeoutRef.current)clearTimeout(snapTimeoutRef.current);snapTimeoutRef.current=window.setTimeout(()=>{const finalVel=state.velocity;const pos=x.get();const proj=-pos/pageSize+finalVel*MOMENTUM_PAGES;const target=clamp(Math.round(proj),0,slideCount-visibleCount);snapToIndex(target);state.velocity=0;state.accumulated=0;snapTimeoutRef.current=null;},SWIPE_SNAP_DELAY);},[enableSwipe,canDrag,x,pageSize,slideCount,visibleCount]);React.useEffect(()=>()=>snapTimeoutRef.current&&clearTimeout(snapTimeoutRef.current),[]);// Compute progress width with animation\nconst fullWidth=widthMode===\"fill\"?compWidth:fixedWidth;const fraction=slideCount===0?0:Math.min(1,(currentIndex+visibleCount)/slideCount);// Animated motion value for progress bar\nconst progressWidth=useMotionValue(fullWidth*fraction);React.useEffect(()=>{// Smoothly animate to new width when fraction or fullWidth changes\nanimate(progressWidth,fullWidth*fraction,{type:\"tween\",ease:\"easeOut\",duration:.35});},[fullWidth,fraction]);return /*#__PURE__*/_jsxs(Frame,{ref:rootRef,width:\"100%\",height:\"100%\",background:\"none\",overflow:\"visible\",position:\"relative\",children:[/*#__PURE__*/_jsx(motion.div,{style:{display:\"flex\",x,cursor:enableDrag?\"grab\":\"default\",touchAction:enableSwipe?\"pan-y\":\"auto\",overscrollBehaviorX:\"contain\",userSelect:\"none\",width:\"100%\",height:\"100%\"},drag:enableDrag?\"x\":false,dragListener:enableDrag,dragControls:dragControls,dragElastic:.05,dragMomentum:false,onDragStart:()=>isDraggingRef.current=true,onDragEnd:handleDragEnd,onWheel:handleWheel,children:slides.map((slide,i)=>/*#__PURE__*/_jsx(\"div\",{draggable:false,onDragStart:e=>e.preventDefault(),onPointerDownCapture:e=>enableDrag&&dragControls.start(e),onClickCapture:e=>{if(isDraggingRef.current){e.preventDefault();e.stopPropagation();}},style:{width:slideWidth,height:\"100%\",position:\"relative\",marginRight:i<slideCount-1?gap:0,flexShrink:0,opacity:i>=currentIndex&&i<currentIndex+visibleCount?1:inactiveOpacity,transition:\"opacity 0.3s ease\",userSelect:\"none\"},children:/*#__PURE__*/React.isValidElement(slide)?/*#__PURE__*/React.cloneElement(slide,props.forceFillSlides?{size:\"100%\",style:{...slide.props?.style||{},width:\"100%\",height:\"100%\",maxWidth:\"100%\",boxSizing:\"border-box\",userSelect:\"none\"}}:{style:{...slide.props?.style||{},maxWidth:\"100%\",boxSizing:\"border-box\",userSelect:\"none\"}}):slide},i))}),showArrows&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(ArrowWrapper,{isLeft:true,arrow:prevArrow,disabled:currentIndex===0,onTap:()=>snapToIndex(currentIndex-1)}),/*#__PURE__*/_jsx(ArrowWrapper,{isLeft:false,arrow:nextArrow,disabled:currentIndex>=slideCount-visibleCount,onTap:()=>snapToIndex(currentIndex+1)})]}),indicatorType===\"Dots\"&&slideCount>1&&(dotType===\"Custom\"&&activeDot&&inactiveDot?/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",left:\"50%\",transform:\"translateX(-50%)\",bottom:customDotInset,display:\"flex\",gap:customDotGap,pointerEvents:\"none\",zIndex:dotZIndex},children:Array.from({length:slideCount}).map((_,idx)=>{const DotComp=idx>=currentIndex&&idx<currentIndex+visibleCount?activeDot:inactiveDot;return /*#__PURE__*/_jsx(\"div\",{onClick:()=>snapToIndex(idx),style:{cursor:\"pointer\",pointerEvents:\"auto\"},children:/*#__PURE__*/React.isValidElement(DotComp)?/*#__PURE__*/React.cloneElement(DotComp,{}):DotComp},idx);})}):/*#__PURE__*/_jsx(Frame,{width:dotWidth*slideCount+dotGap*(slideCount-1)+containerPadding*2,height:dotHeight+containerPadding*2,background:containerFill,radius:containerRadius,position:\"absolute\",left:\"50%\",bottom:dotInset,center:\"x\",style:{display:\"flex\",gap:dotGap,alignItems:\"center\",justifyContent:\"center\",padding:containerPadding,zIndex:dotZIndex,pointerEvents:\"auto\"},children:Array.from({length:slideCount}).map((_,idx)=>/*#__PURE__*/_jsx(\"div\",{onClick:()=>snapToIndex(idx),style:{width:dotWidth,height:dotHeight,background:idx>=currentIndex&&idx<currentIndex+visibleCount?dotActiveColor:dotInactiveColor,borderRadius:dotRadius,cursor:\"pointer\",flexShrink:0}},idx))})),indicatorType===\"Progress\"&&/*#__PURE__*/_jsx(Frame,{width:widthMode===\"fill\"?compWidth:fixedWidth,height:barHeight,background:bgColor,position:\"absolute\",left:\"50%\",bottom:progressInset,center:\"x\",radius:progressRadius,style:{overflow:\"hidden\",zIndex:progressZIndex},children:/*#__PURE__*/_jsx(motion.div,{style:{width:progressWidth,height:\"100%\",background:fillColor,borderRadius:progressRadius}})})]});}addPropertyControls(SlideshowUltra,{stacks:{title:\"Slides\",type:ControlType.Array,propertyControl:{type:ControlType.ComponentInstance},group:\"Content\"},gap:{title:\"Gap\",type:ControlType.Number,defaultValue:40,step:1,unit:\"px\",displayStepper:true,group:\"Layout\"},visibleCount:{title:\"Visible\",type:ControlType.Number,defaultValue:1,min:1,step:1,displayStepper:true,group:\"Layout\"},initialIndex:{title:\"Active Slide\",type:ControlType.Number,defaultValue:1,min:1,step:1,displayStepper:true,group:\"Layout\"},forceFillSlides:{title:\"Fill Slides\",type:ControlType.Boolean,defaultValue:true,group:\"Layout\"},inactiveOpacity:{title:\"Inactive Opacity\",type:ControlType.Number,defaultValue:.6,min:0,max:1,step:.05,group:\"Style\"},interactionMode:{title:\"Interaction\",type:ControlType.Enum,options:[\"Drag\",\"Swipe\"],optionTitles:[\"Drag\",\"Swipe\"],defaultValue:\"Drag\",group:\"Interaction\"},transition:{title:\"Transition\",type:ControlType.Transition,defaultValue:{type:\"spring\",stiffness:260,damping:32},hidden:({interactionMode})=>interactionMode!==\"Drag\",group:\"Animation\"},showArrows:{title:\"Show Arrows\",type:ControlType.Boolean,defaultValue:true,group:\"Arrows\"},prevArrow:{title:\"Prev Arrow\",type:ControlType.ComponentInstance,hidden:({showArrows})=>!showArrows,group:\"Arrows\"},nextArrow:{title:\"Next Arrow\",type:ControlType.ComponentInstance,hidden:({showArrows})=>!showArrows,group:\"Arrows\"},arrowInset:{title:\"Arrow Inset\",type:ControlType.Number,defaultValue:16,unit:\"px\",displayStepper:true,hidden:({showArrows})=>!showArrows,group:\"Arrows\"},arrowInactiveOpacity:{title:\"Arrow Disabled Opacity\",type:ControlType.Number,defaultValue:.4,min:0,max:1,step:.05,hidden:({showArrows})=>!showArrows,group:\"Arrows\"},arrowZIndex:{title:\"Arrow Z-Index\",type:ControlType.Number,defaultValue:10,displayStepper:true,hidden:({showArrows})=>!showArrows,group:\"Arrows\"},indicatorType:{title:\"Indicator\",type:ControlType.Enum,options:[\"None\",\"Dots\",\"Progress\"],defaultValue:\"None\",optionTitles:[\"None\",\"Dots\",\"Progress\"],group:\"Indicators\"},dotType:{title:\"Type\",type:ControlType.Enum,options:[\"Native\",\"Custom\"],defaultValue:\"Native\",optionTitles:[\"Native\",\"Custom\"],hidden:({indicatorType})=>indicatorType!==\"Dots\",group:\"Indicators\"},activeDot:{title:\"Active Dot\",type:ControlType.ComponentInstance,hidden:({indicatorType,dotType})=>indicatorType!==\"Dots\"||dotType!==\"Custom\",group:\"Indicators\"},inactiveDot:{title:\"Inactive Dot\",type:ControlType.ComponentInstance,hidden:({indicatorType,dotType})=>indicatorType!==\"Dots\"||dotType!==\"Custom\",group:\"Indicators\"},customDots:{title:\"Custom Dot Settings\",type:ControlType.Object,hidden:({indicatorType,dotType})=>indicatorType!==\"Dots\"||dotType!==\"Custom\",controls:{gap:{title:\"Gap\",type:ControlType.Number,defaultValue:6,unit:\"px\",displayStepper:true},inset:{title:\"Inset\",type:ControlType.Number,defaultValue:16,unit:\"px\",displayStepper:true}},group:\"Indicators\"},dots:{title:\"Dot Settings\",type:ControlType.Object,hidden:({indicatorType,dotType})=>indicatorType!==\"Dots\"||dotType!==\"Native\",controls:{activeColor:{title:\"Active Color\",type:ControlType.Color,defaultValue:\"#000000\"},inactiveColor:{title:\"Inactive Color\",type:ControlType.Color,defaultValue:\"#B0B0B0\"},inset:{title:\"Inset\",type:ControlType.Number,defaultValue:16,unit:\"px\",displayStepper:true},radius:{title:\"Radius\",type:ControlType.Number,defaultValue:4,unit:\"px\",displayStepper:true},gap:{title:\"Gap\",type:ControlType.Number,defaultValue:6,unit:\"px\",displayStepper:true},containerPadding:{title:\"Padding\",type:ControlType.Number,defaultValue:8,unit:\"px\",displayStepper:true},containerRadius:{title:\"Bg Radius\",type:ControlType.Number,defaultValue:12,unit:\"px\",displayStepper:true},containerFill:{title:\"Bg Fill\",type:ControlType.Color,defaultValue:\"transparent\"},dotWidth:{title:\"Dot Width\",type:ControlType.Number,defaultValue:8,unit:\"px\",displayStepper:true},dotHeight:{title:\"Dot Height\",type:ControlType.Number,defaultValue:8,unit:\"px\",displayStepper:true},zIndex:{title:\"Z-Index\",type:ControlType.Number,defaultValue:6,displayStepper:true}},group:\"Indicators\"},progress:{title:\"Progress Settings\",type:ControlType.Object,hidden:({indicatorType})=>indicatorType!==\"Progress\",controls:{bgColor:{title:\"Bg Color\",type:ControlType.Color,defaultValue:\"#E0E0E0\"},fillColor:{title:\"Fill Color\",type:ControlType.Color,defaultValue:\"#007AFF\"},height:{title:\"Height\",type:ControlType.Number,defaultValue:4,unit:\"px\",displayStepper:true},widthMode:{title:\"Width Mode\",type:ControlType.Enum,options:[\"fill\",\"fixed\"],defaultValue:\"fill\",optionTitles:[\"Fill\",\"Fixed\"]},fixedWidth:{title:\"Fixed Width\",type:ControlType.Number,defaultValue:200,unit:\"px\",displayStepper:true,hidden:props=>props.widthMode!==\"fixed\"},inset:{title:\"Inset\",type:ControlType.Number,defaultValue:16,unit:\"px\",displayStepper:true},radius:{title:\"Radius\",type:ControlType.Number,defaultValue:4,unit:\"px\",displayStepper:true},zIndex:{// ← NEW\ntitle:\"Z-Index\",type:ControlType.Number,defaultValue:6,displayStepper:true}},group:\"Indicators\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"SlideshowUltra\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"*\",\"framerIntrinsicWidth\":\"200\",\"framerIntrinsicHeight\":\"200\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./SlideshowUltra.map"],"mappings":"2TAKG,SAAwB,EAAe,EAAM,CAAC,GAAK,CAAC,MAAI,GAAG,SAAO,CAAC,EAAE,eAAa,EAAE,kBAAgB,OAAO,aAAW,CAAC,KAAK,SAAS,UAAU,IAAI,QAAQ,EAAE,EAAE,aAAW,GAAK,YAAU,YAAU,aAAW,GAAG,wBAAqB,GAAG,eAAY,EAAE,gBAAc,OAAO,WAAQ,SAAS,QAAK,CAAC,EAAE,YAAS,CAAC,EAAE,aAAU,eAAY,cAAW,CAAC,EAAE,mBAAgB,GAAG,eAAa,GAAG,EAAY,EAAW,IAAkB,OAAa,EAAY,IAAkB,QAC1c,CAAC,IAAI,GAAa,EAAE,MAAM,GAAe,IAAI,GAAgB,CAAC,YAAY,GAAe,UAAU,cAAc,GAAiB,UAAU,MAAM,GAAS,GAAG,OAAO,GAAU,EAAE,IAAI,EAAO,EAAE,mBAAiB,EAAE,mBAAgB,GAAG,iBAAc,cAAc,WAAS,EAAE,YAAU,EAAE,OAAO,EAAU,GAAG,GAC3S,CAAC,WAAQ,UAAU,aAAU,UAAU,OAAO,GAAU,EAAE,YAAU,OAAO,aAAW,IAAI,MAAM,GAAc,GAAG,OAAO,EAAe,EAAE,OAAO,GAAe,GAAG,GACjK,EAAO,EAAO,OAAO,OAAO,EAAQ,EAAW,EAAO,OAAa,EAAQ,EAAW,EAAmB,EAAE,EAAe,CAAC,EAC5H,CAAC,EAAU,IAAcA,EAAe,CAAC,EAAQ,EAAQC,EAAa,IAAI,EAAE,OAA0B,CAAC,GAAG,CAAC,EAAQ,QAAQ,OAAO,IAAM,MAAY,GAAa,EAAQ,QAAQ,WAAW,EAAE,EAAQ,EAAE,IAAM,EAAG,IAAI,eAAe,CAAO,EAA8B,OAA5B,EAAG,QAAQ,EAAQ,OAAO,MAAY,EAAG,WAAW,CAAE,EAAE,CAAC,CAAC,EAC5S,IAAM,EAAW,EAAa,GAAG,EAAU,GAAK,EAAa,IAAI,EAAa,EAAQ,EAAS,EAAW,EAAU,GAAO,EAAE,EAAI,IAAM,KAAK,IAAI,EAAI,KAAK,IAAI,EAAI,CAAC,CAAC,EAC1G,EAAqB,IACzE,CAAC,EAAa,IAAiBD,EAAe,EAAM,EAAa,EAAE,EAAE,EAAW,CAAY,CAAC,EAAE,MAAoB,CAAI,IAAW,GAAS,EAAY,EAAa,CAAC,CAAE,EAAE,CAAC,EAAS,EAAa,EAAW,CAAY,CAAC,EAC7N,IAAM,EAAcC,EAAa,EAAK,EAAQ,EAAa,GAAgB,EACrE,GAAcA,EAAa,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,EAAQ,EAAeA,EAAa,IAAI,EACxG,GAAc,CAAC,SAAO,QAAM,WAAS,WAAS,CAAC,GAAG,CAAC,EAAM,OAAO,KAAK,IAAM,EAAS,EAAM,OAAO,OAAO,EAAM,OAAO,QAAQ,EAAM,OAAO,MAAM,GAAS,EAAQ,EAAS,GAAqB,EAAQ,EAAqB,EAAqB,CAAK,EAAe,EAAmB,EAAM,CAAC,MAAM,OAAO,OAAO,OAAO,MAAM,CAAC,GAAG,EAAM,MAAM,MAAM,cAAc,MAAM,CAAC,CAAC,EAAE,EAAM,OAAoB,EAAK,EAAM,CAAC,MAAM,EAAS,OAAO,EAAS,SAAS,WAAW,KAAK,EAAO,EAAW,IAAA,GAAU,MAAM,EAAO,IAAA,GAAU,EAAW,IAAI,MAAM,EAAE,CAAC,EAAS,EAAE,WAAW,cAAsB,UAAQ,MAAM,CAAC,QAAQ,OAAO,WAAW,SAAS,eAAe,EAAO,aAAa,WAAW,OAAO,EAAS,UAAU,UAAU,OAAO,EAAW,EAAE,MAAM,EAAS,IAAA,GAAU,EAAM,SAAS,CAAO,CAAC,CAAE,EAC7wB,EAAY,GAAG,CAAC,IAAM,EAAQ,EAAM,EAAE,EAAE,EAAW,CAAY,EAAQ,EAAS,EAAY,CAAC,KAAK,SAAS,UAAU,IAAI,QAAQ,GAAG,KAAK,EAAE,EAAE,EAAW,EAAQ,EAAE,CAAC,EAAQ,EAAS,CAAQ,EAAE,GAAgB,CAAO,EAAE,EAAc,QAAQ,EAAM,EACnP,IAAe,EAAE,IAAO,CAAC,GAAG,CAAC,EAAQ,CAAC,EAAc,QAAQ,GAAM,MAAO,CAAC,IAAM,EAAU,CAAC,EAAE,IAAI,EAAE,EAAS,EAAK,SAAS,EAAE,IAAI,EAAY,KAAK,MAAM,CAAS,CAAC,CAAE,EACnK,GAAYC,EAAkB,GAAG,CAAC,GAAG,CAAC,GAAa,CAAC,EAAQ,OAAO,IAAM,EAAI,KAAK,IAAI,EAAQ,EAAM,GAAc,QAAc,EAAa,KAAK,IAAI,EAAE,MAAM,EAAE,KAAK,IAAI,EAAE,MAAM,EAAQ,EAAc,KAAK,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,GAAc,CAAC,EAAc,OAAO,EAAE,eAAe,EAAE,EAAE,gBAAgB,EAAE,IAAM,EAAG,EAAE,OAAa,EAAG,EAAI,EAAM,SAAS,GAAG,EAAG,EAAE,CAAC,IAAM,EAAQ,EAAG,EAAG,EAAM,SAAS,EAAM,SAAS,GAAG,EAAQ,EAAG,CAAuD,IAAM,EAAO,GAAI,GAA1D,KAAK,IAAI,EAAE,KAAK,IAAI,EAAM,QAAQ,EAAE,GAA8B,EAAE,IAAI,EAAM,aAAa,EAAO,EAAM,SAAS,EAAI,IAAI,EAAO,EAAE,IAAI,EAAE,EAA4B,EAAO,EAAE,EAAW,GAAc,EAAY,EAAO,EAAQ,EAAO,GAAQ,EAAO,GAAQ,EAA8B,EAAO,IAAQ,EAAO,GAAQ,EAAO,GAAQ,GAAsB,EAAE,IAAI,CAAM,EAAK,EAAe,SAAQ,aAAa,EAAe,OAAO,EAAE,EAAe,QAAQ,EAAO,eAAe,CAAC,IAAM,EAAS,EAAM,SAAiC,EAAK,CAAnB,EAAE,IAAoB,EAAE,EAAS,EAAS,IAAqB,EAAO,EAAM,KAAK,MAAM,CAAI,EAAE,EAAE,EAAW,CAAY,EAAE,EAAY,CAAM,EAAE,EAAM,SAAS,EAAE,EAAM,YAAY,EAAE,EAAe,QAAQ,IAAK,EAAE,EAAgB,CAAE,EAAE,CAAC,EAAY,EAAQ,EAAE,EAAS,EAAW,CAAY,CAAC,EAAE,UAAwB,EAAe,SAAS,aAAa,EAAe,OAAO,EAAE,CAAC,CAAC,EAC7yC,IAAM,EAAU,IAAY,OAAO,EAAU,EAAiB,EAAS,IAAa,EAAE,EAAE,KAAK,IAAI,GAAG,EAAa,GAAc,CAAU,EACnI,EAAc,EAAe,EAAU,CAAQ,EACwD,OADtD,MAAoB,CAC3E,EAAQ,EAAc,EAAU,EAAS,CAAC,KAAK,QAAQ,KAAK,UAAU,SAAS,GAAG,CAAC,CAAE,EAAE,CAAC,EAAU,CAAQ,CAAC,EAAsB,EAAM,EAAM,CAAC,IAAI,EAAQ,MAAM,OAAO,OAAO,OAAO,WAAW,OAAO,SAAS,UAAU,SAAS,WAAW,SAAS,CAAc,EAAK,EAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,OAAO,IAAE,OAAO,EAAW,OAAO,UAAU,YAAY,EAAY,QAAQ,OAAO,oBAAoB,UAAU,WAAW,OAAO,MAAM,OAAO,OAAO,MAAM,EAAE,KAAK,EAAW,IAAI,GAAM,aAAa,EAAwB,eAAa,YAAY,IAAI,aAAa,GAAM,gBAAgB,EAAc,QAAQ,GAAK,UAAU,GAAc,QAAQ,GAAY,SAAS,EAAO,KAAK,EAAM,IAAiB,EAAK,MAAM,CAAC,UAAU,GAAM,YAAY,GAAG,EAAE,eAAe,EAAE,qBAAqB,GAAG,GAAY,EAAa,MAAM,CAAC,EAAE,eAAe,GAAG,CAAI,EAAc,UAAS,EAAE,eAAe,EAAE,EAAE,gBAAgB,EAAG,EAAE,MAAM,CAAC,MAAM,EAAW,OAAO,OAAO,SAAS,WAAW,YAAY,EAAE,EAAW,EAAE,EAAI,EAAE,WAAW,EAAE,QAAQ,GAAG,GAAc,EAAE,EAAa,EAAa,EAAE,GAAgB,WAAW,oBAAoB,WAAW,MAAM,EAAE,SAAsB,EAAqB,CAAK,EAAe,EAAmB,EAAM,EAAM,gBAAgB,CAAC,KAAK,OAAO,MAAM,CAAC,GAAG,EAAM,OAAO,OAAO,CAAC,EAAE,MAAM,OAAO,OAAO,OAAO,SAAS,OAAO,UAAU,aAAa,WAAW,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,EAAM,OAAO,OAAO,CAAC,EAAE,SAAS,OAAO,UAAU,aAAa,WAAW,MAAM,CAAC,CAAC,EAAE,CAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAAyB,EAAMC,GAAU,CAAC,SAAS,CAAc,EAAK,EAAa,CAAC,OAAO,GAAK,MAAM,EAAU,SAAS,IAAe,EAAE,UAAU,EAAY,EAAa,CAAC,CAAC,CAAC,EAAe,EAAK,EAAa,CAAC,OAAO,GAAM,MAAM,EAAU,SAAS,GAAc,EAAW,EAAa,UAAU,EAAY,EAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAgB,QAAQ,EAAW,IAAI,KAAU,UAAU,IAAW,GAAyB,EAAK,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,KAAK,MAAM,UAAU,mBAAmB,OAAO,GAAe,QAAQ,OAAO,IAAI,GAAa,cAAc,OAAO,OAAO,CAAS,EAAE,SAAS,MAAM,KAAK,CAAC,OAAO,CAAU,CAAC,CAAC,CAAC,KAAK,EAAE,IAAM,CAAC,IAAM,EAAQ,GAAK,GAAc,EAAI,EAAa,EAAa,GAAU,GAAY,OAAoB,EAAK,MAAM,CAAC,YAAY,EAAY,CAAG,EAAE,MAAM,CAAC,OAAO,UAAU,cAAc,MAAM,EAAE,SAAsB,EAAqB,CAAO,EAAe,EAAmB,EAAQ,CAAC,CAAC,EAAE,CAAO,EAAE,CAAG,CAAE,CAAC,CAAC,CAAC,EAAe,EAAK,EAAM,CAAC,MAAM,EAAS,EAAW,GAAQ,EAAW,GAAG,EAAiB,EAAE,OAAO,EAAU,EAAiB,EAAE,WAAW,GAAc,OAAO,GAAgB,SAAS,WAAW,KAAK,MAAM,OAAO,GAAS,OAAO,IAAI,MAAM,CAAC,QAAQ,OAAO,IAAI,EAAO,WAAW,SAAS,eAAe,SAAS,QAAQ,EAAiB,OAAO,EAAU,cAAc,MAAM,EAAE,SAAS,MAAM,KAAK,CAAC,OAAO,CAAU,CAAC,CAAC,CAAC,KAAK,EAAE,IAAmB,EAAK,MAAM,CAAC,YAAY,EAAY,CAAG,EAAE,MAAM,CAAC,MAAM,EAAS,OAAO,EAAU,WAAW,GAAK,GAAc,EAAI,EAAa,EAAa,GAAe,GAAiB,aAAa,GAAU,OAAO,UAAU,WAAW,CAAC,CAAC,EAAE,CAAG,CAAC,CAAC,CAAC,GAAG,IAAgB,YAAyB,EAAK,EAAM,CAAC,MAAM,IAAY,OAAO,EAAU,EAAW,OAAO,GAAU,WAAW,GAAQ,SAAS,WAAW,KAAK,MAAM,OAAO,GAAc,OAAO,IAAI,OAAO,EAAe,MAAM,CAAC,SAAS,SAAS,OAAO,EAAc,EAAE,SAAsB,EAAK,EAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAc,OAAO,OAAO,WAAW,GAAU,aAAa,CAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,qBArB92G,IAA4B,IAA0D,IAAyE,EAqBgtG,EAAoB,EAAe,CAAC,OAAO,CAAC,MAAM,SAAS,KAAK,EAAY,MAAM,gBAAgB,CAAC,KAAK,EAAY,iBAAiB,EAAE,MAAM,SAAS,EAAE,IAAI,CAAC,MAAM,MAAM,KAAK,EAAY,OAAO,aAAa,GAAG,KAAK,EAAE,KAAK,KAAK,eAAe,GAAK,MAAM,QAAQ,EAAE,aAAa,CAAC,MAAM,UAAU,KAAK,EAAY,OAAO,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,GAAK,MAAM,QAAQ,EAAE,aAAa,CAAC,MAAM,eAAe,KAAK,EAAY,OAAO,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,GAAK,MAAM,QAAQ,EAAE,gBAAgB,CAAC,MAAM,cAAc,KAAK,EAAY,QAAQ,aAAa,GAAK,MAAM,QAAQ,EAAE,gBAAgB,CAAC,MAAM,mBAAmB,KAAK,EAAY,OAAO,aAAa,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,MAAM,OAAO,EAAE,gBAAgB,CAAC,MAAM,cAAc,KAAK,EAAY,KAAK,QAAQ,CAAC,OAAO,OAAO,EAAE,aAAa,CAAC,OAAO,OAAO,EAAE,aAAa,OAAO,MAAM,aAAa,EAAE,WAAW,CAAC,MAAM,aAAa,KAAK,EAAY,WAAW,aAAa,CAAC,KAAK,SAAS,UAAU,IAAI,QAAQ,EAAE,EAAE,QAAQ,CAAC,qBAAmB,IAAkB,OAAO,MAAM,WAAW,EAAE,WAAW,CAAC,MAAM,cAAc,KAAK,EAAY,QAAQ,aAAa,GAAK,MAAM,QAAQ,EAAE,UAAU,CAAC,MAAM,aAAa,KAAK,EAAY,kBAAkB,QAAQ,CAAC,gBAAc,CAAC,EAAW,MAAM,QAAQ,EAAE,UAAU,CAAC,MAAM,aAAa,KAAK,EAAY,kBAAkB,QAAQ,CAAC,gBAAc,CAAC,EAAW,MAAM,QAAQ,EAAE,WAAW,CAAC,MAAM,cAAc,KAAK,EAAY,OAAO,aAAa,GAAG,KAAK,KAAK,eAAe,GAAK,QAAQ,CAAC,gBAAc,CAAC,EAAW,MAAM,QAAQ,EAAE,qBAAqB,CAAC,MAAM,yBAAyB,KAAK,EAAY,OAAO,aAAa,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,QAAQ,CAAC,gBAAc,CAAC,EAAW,MAAM,QAAQ,EAAE,YAAY,CAAC,MAAM,gBAAgB,KAAK,EAAY,OAAO,aAAa,GAAG,eAAe,GAAK,QAAQ,CAAC,gBAAc,CAAC,EAAW,MAAM,QAAQ,EAAE,cAAc,CAAC,MAAM,YAAY,KAAK,EAAY,KAAK,QAAQ,CAAC,OAAO,OAAO,UAAU,EAAE,aAAa,OAAO,aAAa,CAAC,OAAO,OAAO,UAAU,EAAE,MAAM,YAAY,EAAE,QAAQ,CAAC,MAAM,OAAO,KAAK,EAAY,KAAK,QAAQ,CAAC,SAAS,QAAQ,EAAE,aAAa,SAAS,aAAa,CAAC,SAAS,QAAQ,EAAE,QAAQ,CAAC,mBAAiB,IAAgB,OAAO,MAAM,YAAY,EAAE,UAAU,CAAC,MAAM,aAAa,KAAK,EAAY,kBAAkB,QAAQ,CAAC,gBAAc,aAAW,IAAgB,QAAQ,IAAU,SAAS,MAAM,YAAY,EAAE,YAAY,CAAC,MAAM,eAAe,KAAK,EAAY,kBAAkB,QAAQ,CAAC,gBAAc,aAAW,IAAgB,QAAQ,IAAU,SAAS,MAAM,YAAY,EAAE,WAAW,CAAC,MAAM,sBAAsB,KAAK,EAAY,OAAO,QAAQ,CAAC,gBAAc,aAAW,IAAgB,QAAQ,IAAU,SAAS,SAAS,CAAC,IAAI,CAAC,MAAM,MAAM,KAAK,EAAY,OAAO,aAAa,EAAE,KAAK,KAAK,eAAe,EAAI,EAAE,MAAM,CAAC,MAAM,QAAQ,KAAK,EAAY,OAAO,aAAa,GAAG,KAAK,KAAK,eAAe,EAAI,CAAC,EAAE,MAAM,YAAY,EAAE,KAAK,CAAC,MAAM,eAAe,KAAK,EAAY,OAAO,QAAQ,CAAC,gBAAc,aAAW,IAAgB,QAAQ,IAAU,SAAS,SAAS,CAAC,YAAY,CAAC,MAAM,eAAe,KAAK,EAAY,MAAM,aAAa,SAAS,EAAE,cAAc,CAAC,MAAM,iBAAiB,KAAK,EAAY,MAAM,aAAa,SAAS,EAAE,MAAM,CAAC,MAAM,QAAQ,KAAK,EAAY,OAAO,aAAa,GAAG,KAAK,KAAK,eAAe,EAAI,EAAE,OAAO,CAAC,MAAM,SAAS,KAAK,EAAY,OAAO,aAAa,EAAE,KAAK,KAAK,eAAe,EAAI,EAAE,IAAI,CAAC,MAAM,MAAM,KAAK,EAAY,OAAO,aAAa,EAAE,KAAK,KAAK,eAAe,EAAI,EAAE,iBAAiB,CAAC,MAAM,UAAU,KAAK,EAAY,OAAO,aAAa,EAAE,KAAK,KAAK,eAAe,EAAI,EAAE,gBAAgB,CAAC,MAAM,YAAY,KAAK,EAAY,OAAO,aAAa,GAAG,KAAK,KAAK,eAAe,EAAI,EAAE,cAAc,CAAC,MAAM,UAAU,KAAK,EAAY,MAAM,aAAa,aAAa,EAAE,SAAS,CAAC,MAAM,YAAY,KAAK,EAAY,OAAO,aAAa,EAAE,KAAK,KAAK,eAAe,EAAI,EAAE,UAAU,CAAC,MAAM,aAAa,KAAK,EAAY,OAAO,aAAa,EAAE,KAAK,KAAK,eAAe,EAAI,EAAE,OAAO,CAAC,MAAM,UAAU,KAAK,EAAY,OAAO,aAAa,EAAE,eAAe,EAAI,CAAC,EAAE,MAAM,YAAY,EAAE,SAAS,CAAC,MAAM,oBAAoB,KAAK,EAAY,OAAO,QAAQ,CAAC,mBAAiB,IAAgB,WAAW,SAAS,CAAC,QAAQ,CAAC,MAAM,WAAW,KAAK,EAAY,MAAM,aAAa,SAAS,EAAE,UAAU,CAAC,MAAM,aAAa,KAAK,EAAY,MAAM,aAAa,SAAS,EAAE,OAAO,CAAC,MAAM,SAAS,KAAK,EAAY,OAAO,aAAa,EAAE,KAAK,KAAK,eAAe,EAAI,EAAE,UAAU,CAAC,MAAM,aAAa,KAAK,EAAY,KAAK,QAAQ,CAAC,OAAO,OAAO,EAAE,aAAa,OAAO,aAAa,CAAC,OAAO,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,cAAc,KAAK,EAAY,OAAO,aAAa,IAAI,KAAK,KAAK,eAAe,GAAK,OAAO,GAAO,EAAM,YAAY,OAAO,EAAE,MAAM,CAAC,MAAM,QAAQ,KAAK,EAAY,OAAO,aAAa,GAAG,KAAK,KAAK,eAAe,EAAI,EAAE,OAAO,CAAC,MAAM,SAAS,KAAK,EAAY,OAAO,aAAa,EAAE,KAAK,KAAK,eAAe,EAAI,EAAE,OAAO,CACvtQ,MAAM,UAAU,KAAK,EAAY,OAAO,aAAa,EAAE,eAAe,EAAI,CAAC,EAAE,MAAM,YAAY,CAAC,CAAC"}