{"version":3,"file":"RiveAnimation.D_zWDRPF.mjs","names":["url","useRef","useState","__esmMin","init_npm_react_18_3_1","init_ssg_sandbox_shims","window","_e","p","ce","de","init_framer_B1b760uK","RenderTarget","addPropertyControls","ControlType","loadRiveRuntime","riveModulePromise","RIVE_RUNTIME_URL","error","RiveAnimation","props","canvasRef","wrapperRef","riveRef","loaded","setLoaded","failed","setFailed","isThumbnail","isExport","reducedMotion","setReducedMotion","respectReducedMotion","mq","update","hasPoster","poster","shouldRenderRive","src","canvasNode","wrapper","canvas","disposed","inView","playOnlyInView","observer","resizeObserver","clipUpdater","wantsPlay","autoplay","api","mod","RiveCtor","LayoutCtor","fitValue","FIT_KEYS","fit","alignValue","ALIGN_KEYS","alignment","rive","artboard","stateMachine","target","pickTarget","updateClip","wantErase","eraseEnabled","eraseWidth","eraseHeight","wantCrop","cropTop","b","aw","ah","cw","ch","fitKey","sx","sy","alignKey","ax","ay","ox","oy","x0","eraseX","y0","eraseY","x1","y1","r","v","sms","anims","syncPlayback","entries","instance","showPoster","style","init_RiveAnimation","init_jsx_runtime"],"sources":["https:/framerusercontent.com/modules/ySM5NLTvnGfjGbP43jHQ/i3DDlokwkGvhiVYG0deZ/RiveAnimation.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useRef,useState}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";// The Rive runtime is loaded on demand from a CDN (dynamic import with a\n// non-literal specifier so the bundler leaves it alone). Only runs in the browser.\nconst RIVE_RUNTIME_URL=\"https://esm.sh/@rive-app/canvas@2.30.3\";let riveModulePromise=null;function loadRiveRuntime(){if(!riveModulePromise){const url=RIVE_RUNTIME_URL;riveModulePromise=import(/* @vite-ignore */url).catch(error=>{riveModulePromise=null;throw error;});}return riveModulePromise;}const FIT_KEYS={contain:\"Contain\",cover:\"Cover\",fill:\"Fill\",fitWidth:\"FitWidth\",fitHeight:\"FitHeight\",none:\"None\",scaleDown:\"ScaleDown\",layout:\"Layout\"};const ALIGN_KEYS={center:\"Center\",topLeft:\"TopLeft\",topCenter:\"TopCenter\",topRight:\"TopRight\",centerLeft:\"CenterLeft\",centerRight:\"CenterRight\",bottomLeft:\"BottomLeft\",bottomCenter:\"BottomCenter\",bottomRight:\"BottomRight\"};/**\n * Plays a Rive (.riv) animation. Sizes to its frame; pauses when scrolled out of view.\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerIntrinsicWidth 356\n * @framerIntrinsicHeight 210\n */export default function RiveAnimation(props){const{src,stateMachine=\"\",artboard=\"\",fit=\"contain\",alignment=\"center\",autoplay=true,playOnlyInView=true,respectReducedMotion=true,poster,eraseEnabled=false,eraseX=0,eraseY=0,eraseWidth=0,eraseHeight=0,cropTop=0,style}=props;const canvasRef=useRef(null);const wrapperRef=useRef(null);const riveRef=useRef(null);const[loaded,setLoaded]=useState(false);const[failed,setFailed]=useState(false);const isThumbnail=RenderTarget.current()===RenderTarget.thumbnail;const isExport=RenderTarget.current()===RenderTarget.export;// Visitors who prefer reduced motion get the static poster instead of a\n// paused canvas: these files start on an empty frame, so pausing at 0\n// would show nothing. Evaluated after mount so SSR output stays stable.\nconst[reducedMotion,setReducedMotion]=useState(false);useEffect(()=>{if(!respectReducedMotion||typeof window===\"undefined\"||typeof window.matchMedia!==\"function\"){setReducedMotion(false);return;}const mq=window.matchMedia(\"(prefers-reduced-motion: reduce)\");const update=()=>setReducedMotion(mq.matches);update();mq.addEventListener?.(\"change\",update);return()=>mq.removeEventListener?.(\"change\",update);},[respectReducedMotion]);const hasPoster=Boolean(poster?.src);const shouldRenderRive=Boolean(src)&&!isThumbnail&&!isExport&&!(reducedMotion&&hasPoster);useEffect(()=>{if(!shouldRenderRive)return;const canvasNode=canvasRef.current;const wrapper=wrapperRef.current;if(!canvasNode||!wrapper||!src)return;const canvas=canvasNode;let disposed=false;let inView=!playOnlyInView;let observer=null;let resizeObserver=null;let clipUpdater=null;// If we got here with reducedMotion on, there is no poster to fall back\n// to, so play anyway rather than leave an empty first frame.\nconst wantsPlay=autoplay;loadRiveRuntime().then(mod=>{if(disposed)return;// esm.sh exposes CommonJS builds under `default`; support both shapes.\nconst api=mod&&mod.Rive?mod:mod?.default??mod;const RiveCtor=api.Rive;const LayoutCtor=api.Layout;if(typeof RiveCtor!==\"function\"||typeof LayoutCtor!==\"function\"){throw new Error(\"Rive runtime did not expose Rive/Layout\");}const fitValue=api.Fit?.[FIT_KEYS[fit]??\"Contain\"];const alignValue=api.Alignment?.[ALIGN_KEYS[alignment]??\"Center\"];const rive=new RiveCtor({src,canvas,autoplay:false,artboard:artboard||undefined,stateMachines:stateMachine||undefined,layout:new LayoutCtor({fit:fitValue,alignment:alignValue}),onLoad:()=>{if(disposed)return;rive.resizeDrawingSurfaceToCanvas();clipUpdater?.();setLoaded(true);setFailed(false);const target=pickTarget();if(target)rive.play(target);if(!wantsPlay||playOnlyInView&&!inView)rive.pause();},onLoadError:()=>{if(disposed)return;setFailed(true);}});riveRef.current=rive;// Optional erase region (e.g. a label baked into the artboard):\n// notch it out of the canvas with a CSS clip-path. Region is in\n// artboard units, mapped through the fit/alignment layout so it\n// tracks the drawn artboard at any canvas size.\nfunction updateClip(){if(disposed)return;const wantErase=eraseEnabled&&eraseWidth>0&&eraseHeight>0;const wantCrop=cropTop>0;if(!wantErase)canvas.style.clipPath=\"\";if(!wantCrop)canvas.style.transform=\"\";if(!wantErase&&!wantCrop)return;const b=rive.bounds;if(!b)return;const aw=b.maxX-b.minX;const ah=b.maxY-b.minY;const cw=canvas.clientWidth;const ch=canvas.clientHeight;if(!aw||!ah||!cw||!ch)return;const fitKey=FIT_KEYS[fit]??\"Contain\";let sx;let sy;if(fitKey===\"Cover\")sx=sy=Math.max(cw/aw,ch/ah);else if(fitKey===\"Fill\"){sx=cw/aw;sy=ch/ah;}else if(fitKey===\"FitWidth\")sx=sy=cw/aw;else if(fitKey===\"FitHeight\")sx=sy=ch/ah;else if(fitKey===\"None\")sx=sy=1;else{sx=sy=Math.min(cw/aw,ch/ah);if(fitKey===\"ScaleDown\")sx=sy=Math.min(sx,1);}const alignKey=ALIGN_KEYS[alignment]??\"Center\";const ax=/Left/.test(alignKey)?0:/Right/.test(alignKey)?1:.5;const ay=/^top/i.test(alignKey)?0:/^bottom/i.test(alignKey)?1:.5;const ox=(cw-aw*sx)*ax;const oy=(ch-ah*sy)*ay;// Crop: slide the drawn artboard up so its top `cropTop` units fall\n// outside the (overflow-hidden) wrapper. Artwork size is unchanged.\nif(wantCrop)canvas.style.transform=`translateY(${-Math.round(cropTop*sy*100)/100}px)`;if(!wantErase)return;const x0=ox+eraseX*sx;const y0=oy+eraseY*sy;const x1=x0+eraseWidth*sx;const y1=y0+eraseHeight*sy;const r=v=>`${Math.round(v*100)/100}px`;// Full rectangle with the erase rectangle cut out (even-odd polygon path).\ncanvas.style.clipPath=`polygon(evenodd, 0 0, 100% 0, 100% 100%, 0 100%, 0 0, ${r(x0)} ${r(y0)}, ${r(x1)} ${r(y0)}, ${r(x1)} ${r(y1)}, ${r(x0)} ${r(y1)}, ${r(x0)} ${r(y0)})`;}clipUpdater=updateClip;function pickTarget(){if(stateMachine)return stateMachine;const sms=rive.stateMachineNames??[];if(sms.length>0)return sms[0];const anims=rive.animationNames??[];if(anims.length>0)return anims[0];return undefined;}function syncPlayback(){if(disposed)return;if(wantsPlay&&inView)rive.play();else rive.pause();}if(playOnlyInView&&typeof IntersectionObserver!==\"undefined\"){observer=new IntersectionObserver(entries=>{inView=entries.some(e=>e.isIntersecting);syncPlayback();},{threshold:.05});observer.observe(wrapper);}if(typeof ResizeObserver!==\"undefined\"){resizeObserver=new ResizeObserver(()=>{if(disposed)return;rive.resizeDrawingSurfaceToCanvas();clipUpdater?.();});resizeObserver.observe(wrapper);}}).catch(()=>{if(!disposed)setFailed(true);});return()=>{disposed=true;observer?.disconnect();resizeObserver?.disconnect();const instance=riveRef.current;riveRef.current=null;if(instance)instance.cleanup();};},[src,stateMachine,artboard,fit,alignment,autoplay,playOnlyInView,respectReducedMotion,shouldRenderRive,eraseEnabled,eraseX,eraseY,eraseWidth,eraseHeight,cropTop]);const showPoster=hasPoster&&(!shouldRenderRive||!loaded||failed);return /*#__PURE__*/_jsxs(\"div\",{ref:wrapperRef,style:{position:\"relative\",width:\"100%\",height:\"100%\",overflow:\"hidden\",...style},children:[shouldRenderRive&&/*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,\"aria-hidden\":poster?.alt?undefined:true,role:poster?.alt?\"img\":undefined,\"aria-label\":poster?.alt||undefined,style:{display:\"block\",width:\"100%\",height:\"100%\",opacity:showPoster?0:1,transition:\"opacity 0.3s ease\"}}),showPoster&&/*#__PURE__*/_jsx(\"img\",{src:poster.src,srcSet:poster.srcSet,alt:poster.alt??\"\",style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",objectFit:fit===\"cover\"?\"cover\":\"contain\",pointerEvents:\"none\"}})]});}addPropertyControls(RiveAnimation,{src:{type:ControlType.File,title:\"Rive File\",allowedFileTypes:[\".riv\"]},stateMachine:{type:ControlType.String,title:\"State Machine\",defaultValue:\"\",placeholder:\"Auto (first)\",preventLocalization:true},artboard:{type:ControlType.String,title:\"Artboard\",defaultValue:\"\",placeholder:\"Auto (default)\",preventLocalization:true},fit:{type:ControlType.Enum,title:\"Fit\",defaultValue:\"contain\",options:[\"contain\",\"cover\",\"fill\",\"fitWidth\",\"fitHeight\",\"none\",\"scaleDown\",\"layout\"],optionTitles:[\"Contain\",\"Cover\",\"Fill\",\"Fit Width\",\"Fit Height\",\"None\",\"Scale Down\",\"Layout\"]},alignment:{type:ControlType.Enum,title:\"Alignment\",defaultValue:\"center\",options:[\"center\",\"topLeft\",\"topCenter\",\"topRight\",\"centerLeft\",\"centerRight\",\"bottomLeft\",\"bottomCenter\",\"bottomRight\"],optionTitles:[\"Center\",\"Top Left\",\"Top Center\",\"Top Right\",\"Center Left\",\"Center Right\",\"Bottom Left\",\"Bottom Center\",\"Bottom Right\"]},autoplay:{type:ControlType.Boolean,title:\"Autoplay\",defaultValue:true},playOnlyInView:{type:ControlType.Boolean,title:\"Pause Offscreen\",defaultValue:true},respectReducedMotion:{type:ControlType.Boolean,title:\"Reduced Motion\",defaultValue:true,description:\"Show the poster instead of the animation when the visitor prefers reduced motion.\"},poster:{type:ControlType.ResponsiveImage,title:\"Poster\",description:\"Shown while loading and in static exports. Alt text is used for accessibility.\"},eraseEnabled:{type:ControlType.Boolean,title:\"Erase Region\",defaultValue:false,description:\"Hide a rectangle of the drawn artboard (artboard units).\"},eraseX:{type:ControlType.Number,title:\"Erase X\",defaultValue:0,min:0,max:2e3,step:1,displayStepper:true,hidden:p=>!p.eraseEnabled},eraseY:{type:ControlType.Number,title:\"Erase Y\",defaultValue:0,min:0,max:2e3,step:1,displayStepper:true,hidden:p=>!p.eraseEnabled},eraseWidth:{type:ControlType.Number,title:\"Erase W\",defaultValue:0,min:0,max:2e3,step:1,displayStepper:true,hidden:p=>!p.eraseEnabled},eraseHeight:{type:ControlType.Number,title:\"Erase H\",defaultValue:0,min:0,max:2e3,step:1,displayStepper:true,hidden:p=>!p.eraseEnabled},cropTop:{type:ControlType.Number,title:\"Crop Top\",defaultValue:0,min:0,max:500,step:1,displayStepper:true,description:\"Hide this many artboard units from the top; the artwork shifts up by the same amount.\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"RiveAnimation\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"210\",\"framerIntrinsicWidth\":\"356\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./RiveAnimation.map"],"mappings":"A,2MAE2F,SAASe,GAAiB,CAAwJ,MAAvJ,CAAkDC,IAAkB;;AAAyBhB,EAAI,CAAC,MAAM,GAAO,CAAwB,KAAvB,GAAkB,KAAWkB,CAAM,CAAC,EAAUF,CAAkB,CAOnS,SAAwBG,EAAc,EAAM,CAAC,GAAK,CAAC,MAAI,eAAa,GAAG,WAAS,GAAG,MAAI,UAAU,YAAU,SAAS,WAAS,GAAK,iBAAe,GAAK,uBAAqB,GAAK,SAAO,eAAa,GAAM,SAAO,EAAE,SAAO,EAAE,aAAW,EAAE,cAAY,EAAE,UAAQ,EAAE,SAAOC,EAAYC,EAAUpB,EAAO,IAAI,EAAQqB,EAAWrB,EAAO,IAAI,EAAQsB,EAAQtB,EAAO,IAAI,EAAO,CAACuB,EAAOC,GAAWvB,EAAS,EAAK,EAAO,CAACwB,EAAOC,GAAWzB,EAAS,EAAK,EAAQ0B,EAAYhB,EAAa,QAAQ,IAAIA,EAAa,UAAgBiB,EAASjB,EAAa,QAAQ,IAAIA,EAAa,OAGziB,CAACkB,EAAcC,GAAkB7B,EAAS,EAAK,EAAEO,MAAc,CAAC,GAAG,CAACuB,GAA6B1B,IAAS,QAAa,OAAOA,EAAO,YAAa,WAAW,CAACyB,EAAiB,EAAK,EAAE,MAAO,CAAC,IAAME,EAAG3B,EAAO,WAAW,kCAAkC,EAAQ4B,MAAWH,EAAiBE,EAAG,OAAO,EAAkD,OAAhDC,EAAO,EAAED,EAAG,mBAAmB,SAASC,CAAM,MAAYD,EAAG,sBAAsB,SAASC,CAAM,CAAE,EAAE,CAACF,CAAoB,CAAC,EAAE,IAAMG,EAAU,EAAQC,GAAQ,IAAWC,EAAiB,EAAQC,GAAM,CAACV,GAAa,CAACC,GAAU,EAAEC,GAAeK,GAAW1B,MAAc,CAAC,GAAG,CAAC4B,EAAiB,OAAO,IAAME,EAAWlB,EAAU,QAAcmB,EAAQlB,EAAW,QAAQ,GAAG,CAACiB,GAAY,CAACC,GAAS,CAACF,EAAI,OAAO,IAAMG,EAAOF,EAAeG,EAAS,GAAUC,EAAO,CAACC,EAAmBC,EAAS,KAASC,EAAe,KAASC,EAAY,KAE5zBC,EAAUC,EAQi6B,OARx5BlC,EAAgB,CAAC,CAAC,KAAK,GAAK,CAAC,GAAG2B,EAAS,OAClE,IAAMQ,EAAIC,GAAKA,EAAI,KAAKA,EAAIA,GAAK,SAASA,EAAUC,EAASF,EAAI,KAAWG,EAAWH,EAAI,OAAO,GAAG,OAAOE,GAAW,YAAY,OAAOC,GAAa,WAAY,MAAU,MAAM,yCAAyC,EAAG,IAAMC,EAASJ,EAAI,MAAMK,EAASC,IAAM,WAAiBC,EAAWP,EAAI,YAAYQ,EAAWC,IAAY,UAAgBC,EAAK,IAAIR,EAAS,CAAC,MAAI,SAAO,SAAS,GAAM,SAASS,GAAU,IAAA,GAAU,cAAcC,GAAc,IAAA,GAAU,OAAO,IAAIT,EAAW,CAAC,IAAIC,EAAS,UAAUG,CAAU,CAAC,EAAE,WAAW,CAAC,GAAGf,EAAS,OAAOkB,EAAK,6BAA6B,EAAEb,IAAc,EAAEtB,EAAU,EAAI,EAAEE,EAAU,EAAK,EAAE,IAAMoC,EAAOC,EAAW,EAAKD,GAAOH,EAAK,KAAKG,CAAM,GAAK,CAACf,GAAWJ,GAAgB,CAACD,IAAOiB,EAAK,MAAM,CAAE,EAAE,gBAAgB,CAAIlB,GAAgBf,EAAU,EAAI,CAAE,CAAC,CAAC,EAAE,EAAQ,QAAQiC,EAI7yB,SAASK,GAAY,CAAC,GAAGvB,EAAS,OAAO,IAAMwB,EAAUC,GAAcC,EAAW,GAAGC,EAAY,EAAQC,EAASC,EAAQ,EAAgF,GAA1EL,IAAU,EAAO,MAAM,SAAS,IAAOI,IAAS,EAAO,MAAM,UAAU,IAAM,CAACJ,GAAW,CAACI,EAAS,OAAO,IAAME,EAAEZ,EAAK,OAAO,GAAG,CAACY,EAAE,OAAO,IAAMC,EAAGD,EAAE,KAAKA,EAAE,KAAWE,EAAGF,EAAE,KAAKA,EAAE,KAAWG,EAAGlC,EAAO,YAAkBmC,EAAGnC,EAAO,aAAa,GAAG,CAACgC,GAAI,CAACC,GAAI,CAACC,GAAI,CAACC,EAAG,OAAO,IAAMC,EAAOtB,EAASC,IAAM,UAAcsB,EAAOC,EAAMF,IAAS,QAAQ,EAAG,EAAG,KAAK,IAAIF,EAAGF,EAAGG,EAAGF,CAAE,EAAUG,IAAS,QAAQ,EAAGF,EAAGF,EAAG,EAAGG,EAAGF,GAAYG,IAAS,WAAW,EAAG,EAAGF,EAAGF,EAAWI,IAAS,YAAY,EAAG,EAAGD,EAAGF,EAAWG,IAAS,OAAO,EAAG,EAAG,GAAO,EAAG,EAAG,KAAK,IAAIF,EAAGF,EAAGG,EAAGF,CAAE,EAAKG,IAAS,cAAY,EAAG,EAAG,KAAK,IAAIC,EAAG,CAAC,IAAG,IAAME,EAAStB,EAAWC,IAAY,SAAesB,EAAG,OAAO,KAAKD,CAAQ,EAAE,EAAE,QAAQ,KAAKA,CAAQ,EAAE,EAAE,GAASE,EAAG,QAAQ,KAAKF,CAAQ,EAAE,EAAE,WAAW,KAAKA,CAAQ,EAAE,EAAE,GAASG,GAAIR,EAAGF,EAAGK,GAAIG,EAASG,GAAIR,EAAGF,EAAGK,GAAIG,EAEj2B,GAAnFZ,IAAS,EAAO,MAAM,UAAU,cAAc,CAAC,KAAK,MAAMC,EAAQQ,EAAG,GAAG,EAAE,IAAI,MAAQ,CAACb,EAAU,OAAO,IAAMmB,EAAGF,EAAGG,EAAOR,EAASS,EAAGH,EAAGI,EAAOT,EAASU,EAAGJ,EAAGjB,EAAWU,EAASY,EAAGH,EAAGlB,EAAYU,EAASY,EAAE,GAAG,GAAG,KAAK,MAAMC,EAAE,GAAG,EAAE,IAAI,IAChP,EAAO,MAAM,SAAS,yDAAyDD,EAAEN,CAAE,EAAE,GAAGM,EAAEJ,CAAE,EAAE,IAAII,EAAEF,CAAE,EAAE,GAAGE,EAAEJ,CAAE,EAAE,IAAII,EAAEF,CAAE,EAAE,GAAGE,EAAED,CAAE,EAAE,IAAIC,EAAEN,CAAE,EAAE,GAAGM,EAAED,CAAE,EAAE,IAAIC,EAAEN,CAAE,EAAE,GAAGM,EAAEJ,CAAE,EAAE,EAAG,CAAC,EAAYtB,EAAW,SAASD,GAAY,CAAC,GAAGF,EAAa,OAAOA,EAAa,IAAM+B,EAAIjC,EAAK,mBAAmB,CAAC,EAAE,GAAGiC,EAAI,OAAO,EAAE,OAAOA,EAAI,GAAG,IAAMC,EAAMlC,EAAK,gBAAgB,CAAC,EAAE,GAAGkC,EAAM,OAAO,EAAE,OAAOA,EAAM,EAAoB,CAAC,SAASC,GAAc,CAAIrD,IAAmBM,GAAWL,EAAOiB,EAAK,KAAK,EAAOA,EAAK,MAAM,EAAE,CAAIhB,GAAgB,OAAO,qBAAuB,MAAa,EAAS,IAAI,qBAAqB,GAAS,CAAC,EAAOoD,EAAQ,KAAK,GAAG,EAAE,cAAc,EAAED,EAAa,CAAE,EAAE,CAAC,UAAU,GAAG,CAAC,EAAElD,EAAS,QAAQL,CAAO,GAAM,OAAO,eAAiB,MAAa,EAAe,IAAI,mBAAmB,CAAIE,IAAgBkB,EAAK,6BAA6B,EAAEb,IAAc,EAAE,CAAC,EAAED,EAAe,QAAQN,CAAO,EAAG,CAAC,CAAC,CAAC,UAAU,CAAKE,GAASf,EAAU,EAAI,CAAE,CAAC,MAAY,CAAC,EAAS,GAAKkB,GAAU,WAAW,EAAEC,GAAgB,WAAW,EAAE,IAAMmD,EAAS1E,EAAQ,QAAQ,EAAQ,QAAQ,KAAQ0E,GAASA,EAAS,QAAQ,CAAE,CAAE,EAAE,CAAC3D,EAAIwB,EAAaD,EAASL,EAAIG,EAAUV,EAASL,EAAeZ,EAAqBK,EAAiB8B,EAAamB,EAAOE,EAAOpB,EAAWC,EAAYE,CAAO,CAAC,EAAE,IAAM2B,EAAW/D,IAAY,CAACE,GAAkB,CAACb,GAAQE,GAAQ,MAAoB,gBAAM,MAAM,CAAC,IAAIJ,EAAW,MAAM,CAAC,SAAS,WAAW,MAAM,OAAO,OAAO,OAAO,SAAS,SAAS,GAAG6E,CAAK,EAAE,SAAS,CAAC9D,GAA+B,gBAAK,SAAS,CAAC,IAAIhB,EAAU,cAAc,IAAQ,KAAI,IAAA,GAAe,KAAKe,GAAQ,IAAI,MAAM,IAAA,GAAU,aAAaA,GAAQ,KAAK,IAAA,GAAU,MAAM,CAAC,QAAQ,QAAQ,MAAM,OAAO,OAAO,OAAO,QAAQ,IAAe,WAAW,mBAAmB,CAAC,CAAC,EAAE8D,GAAyB,gBAAK,MAAM,CAAC,IAAI9D,EAAO,IAAI,OAAOA,EAAO,OAAO,IAAIA,EAAO,KAAK,GAAG,MAAM,CAAC,SAAS,WAAW,MAAM,EAAE,MAAM,OAAO,OAAO,OAAO,UAAUoB,IAAM,QAAQ,QAAQ,UAAU,cAAc,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,C,0DApBn7D,EAAiB,yCAA6C,EAAkB,KAAuN,EAAS,CAAC,QAAQ,UAAU,MAAM,QAAQ,KAAK,OAAO,SAAS,WAAW,UAAU,YAAY,KAAK,OAAO,UAAU,YAAY,OAAO,QAAQ,EAAQ,EAAW,CAAC,OAAO,SAAS,QAAQ,UAAU,UAAU,YAAY,SAAS,WAAW,WAAW,aAAa,YAAY,cAAc,WAAW,aAAa,aAAa,eAAe,YAAY,aAAa,EAoB6xC3C,EAAoBM,EAAc,CAAC,IAAI,CAAC,KAAKL,EAAY,KAAK,MAAM,YAAY,iBAAiB,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC,KAAKA,EAAY,OAAO,MAAM,gBAAgB,aAAa,GAAG,YAAY,eAAe,oBAAoB,EAAI,EAAE,SAAS,CAAC,KAAKA,EAAY,OAAO,MAAM,WAAW,aAAa,GAAG,YAAY,iBAAiB,oBAAoB,EAAI,EAAE,IAAI,CAAC,KAAKA,EAAY,KAAK,MAAM,MAAM,aAAa,UAAU,QAAQ,CAAC,UAAU,QAAQ,OAAO,WAAW,YAAY,OAAO,YAAY,QAAQ,EAAE,aAAa,CAAC,UAAU,QAAQ,OAAO,YAAY,aAAa,OAAO,aAAa,QAAQ,CAAC,EAAE,UAAU,CAAC,KAAKA,EAAY,KAAK,MAAM,YAAY,aAAa,SAAS,QAAQ,CAAC,SAAS,UAAU,YAAY,WAAW,aAAa,cAAc,aAAa,eAAe,aAAa,EAAE,aAAa,CAAC,SAAS,WAAW,aAAa,YAAY,cAAc,eAAe,cAAc,gBAAgB,cAAc,CAAC,EAAE,SAAS,CAAC,KAAKA,EAAY,QAAQ,MAAM,WAAW,aAAa,EAAI,EAAE,eAAe,CAAC,KAAKA,EAAY,QAAQ,MAAM,kBAAkB,aAAa,EAAI,EAAE,qBAAqB,CAAC,KAAKA,EAAY,QAAQ,MAAM,iBAAiB,aAAa,GAAK,YAAY,mFAAmF,EAAE,OAAO,CAAC,KAAKA,EAAY,gBAAgB,MAAM,SAAS,YAAY,gFAAgF,EAAE,aAAa,CAAC,KAAKA,EAAY,QAAQ,MAAM,eAAe,aAAa,GAAM,YAAY,0DAA0D,EAAE,OAAO,CAAC,KAAKA,EAAY,OAAO,MAAM,UAAU,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,eAAe,GAAK,OAAO,GAAG,CAACN,EAAE,YAAY,EAAE,OAAO,CAAC,KAAKM,EAAY,OAAO,MAAM,UAAU,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,eAAe,GAAK,OAAO,GAAG,CAACN,EAAE,YAAY,EAAE,WAAW,CAAC,KAAKM,EAAY,OAAO,MAAM,UAAU,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,eAAe,GAAK,OAAO,GAAG,CAACN,EAAE,YAAY,EAAE,YAAY,CAAC,KAAKM,EAAY,OAAO,MAAM,UAAU,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,eAAe,GAAK,OAAO,GAAG,CAACN,EAAE,YAAY,EAAE,QAAQ,CAAC,KAAKM,EAAY,OAAO,MAAM,WAAW,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,eAAe,GAAK,YAAY,uFAAuF,CAAC,CAAC,C"}