{"version":3,"file":"default-utils.js@_0.45.BiFfTM6n.mjs","names":["BaseForm","useState","useCallback","contentType","containerStyles","useRef","useRef","useCallback","value","animate","useMemo"],"sources":["https:/framerusercontent.com/modules/5Bxmy5zxWs85n2HBjY3U/ABEcDrJfvARhQYgYhUGk/BaseForm.js","https:/framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js","https:/framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js","https:/framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js","https:/framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js","https:/framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js","https:/framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js","https:/framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js","https:/framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js","https:/framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js","https:/framerusercontent.com/modules/4zHZnO5JojN1PrIbu2jm/revv9QCWpkh8lPzi2jje/time.js","https:/framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js","https:/framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js","https:/framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js","https:/framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js","https:/framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js","https:/framer.com/m/framer/default-utils.js@^0.45.0"],"sourcesContent":["/*\nMIT License\nCopyright © Joel Whitaker\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nThe Software is provided \"as is\", without warranty of any kind, express or\nimplied, including but not limited to the warranties of merchantability,\nfitness for a particular purpose and noninfringement. In no event shall the\nauthors or copyright holders be liable for any claim, damages or other\nliability, whether in an action of contract, tort or otherwise, arising from,\nout of or in connection with the Software or the use or other dealings in the\nSoftware.\n*/ import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useCallback,useState}from\"react\";import{addPropertyControls,ControlType,withCSS,useRouter,inferInitialRouteFromPath}from\"framer\";import{motion,useAnimationControls}from\"framer-motion\";var FieldType;(function(FieldType){FieldType[\"Text\"]=\"text\";FieldType[\"Number\"]=\"number\";FieldType[\"Email\"]=\"email\";FieldType[\"Url\"]=\"url\";FieldType[\"Tel\"]=\"tel\";FieldType[\"TextArea\"]=\"textarea\";FieldType[\"Select\"]=\"select\";FieldType[\"Checkbox\"]=\"checkbox\";FieldType[\"Radio\"]=\"radio\";FieldType[\"Time\"]=\"time\";FieldType[\"Week\"]=\"week\";FieldType[\"Month\"]=\"month\";FieldType[\"Date\"]=\"date\";FieldType[\"DateTimeLocal\"]=\"datetime-local\";FieldType[\"Password\"]=\"password\";FieldType[\"Hidden\"]=\"hidden\";})(FieldType||(FieldType={}));function isExternalURL(url){try{return!!new URL(url);}catch{}try{return!!new URL(`https://${url}`);}catch{}return false;}function hasMinMaxStep(type){return[FieldType.Time,FieldType.Week,FieldType.Number,FieldType.Date,FieldType.DateTimeLocal,].includes(type);}/**\n * Increment the number whenever shipping a new version to customers.\n * This will ensure that multiple versions of this component can exist\n * in the same project without css rules overlapping. Only use valid css class characters.\n */ const VERSION=\"v1\";/**\n * BASEFORM\n * By Joel Whitaker (Alphi.dev)\n * Based on INPUT by Benjamin den Boer\n *\n * @framerDisableUnlink\n *\n * @framerIntrinsicWidth 300\n * @framerIntrinsicHeight 40\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any\n */ const BaseForm=withCSS(function BaseForm({url,method,contentType,redirectAs,link,inputs,button,styles,extraHeaders,extraFields,style,onSubmit}){const[isError,setError]=useState(false);const[isLoading,setLoading]=useState(false);const[getFocus,setFocus]=useState(null);const{paddingPerSide:labelPaddingPerSide,paddingTop:labelPaddingTop,paddingRight:labelPaddingRight,paddingBottom:labelPaddingBottom,paddingLeft:labelPaddingLeft,padding:labelPadding,borderRadius:labelBorderRadius,borderObject:labelBorderObject,shadowObject:labelShadowObject}=styles.label;const{paddingPerSide:inputPaddingPerSide,paddingTop:inputPaddingTop,paddingRight:inputPaddingRight,paddingBottom:inputPaddingBottom,paddingLeft:inputPaddingLeft,padding:inputPadding,borderRadius:inputBorderRadius,borderObject:inputBorderObject,focusObject:inputFocusObject,shadowObject:inputShadowObject}=styles.input;const{paddingPerSide:buttonPaddingPerSide,paddingTop:buttonPaddingTop,paddingRight:buttonPaddingRight,paddingBottom:buttonPaddingBottom,paddingLeft:buttonPaddingLeft,padding:buttonPadding,borderRadius:buttonBorderRadius,borderObject:buttonBorderObject,shadowObject:buttonShadowObject}=styles.button;const labelPaddingValue=labelPaddingPerSide?`${labelPaddingTop}px ${labelPaddingRight}px ${labelPaddingBottom}px ${labelPaddingLeft}px`:`${labelPadding}px ${labelPadding}px ${labelPadding}px ${labelPadding}px`;const inputPaddingValue=inputPaddingPerSide?`${inputPaddingTop}px ${inputPaddingRight}px ${inputPaddingBottom}px ${inputPaddingLeft}px`:`${inputPadding}px ${inputPadding}px ${inputPadding}px ${inputPadding}px`;const buttonPaddingValue=buttonPaddingPerSide?`${buttonPaddingTop}px ${buttonPaddingRight}px ${buttonPaddingBottom}px ${buttonPaddingLeft}px`:`${buttonPadding}px ${buttonPadding}px ${buttonPadding}px ${buttonPadding}px`;const router=useRouter();const onSuccess=()=>{/* Reset */ setLoading(false);setFocus(null);if(redirectAs===\"link\"&&link&&!isError){const[path,hash]=link.split(\"#\");const{routeId,pathVariables}=inferInitialRouteFromPath(router.routes,path);if(routeId){router.navigate(routeId,hash,pathVariables);}if(isExternalURL(link)){setError(true);formControls.start(\"error\");return false;}}return;};const handleChange=useCallback(event=>{setError(false);},[]);const handleFocus=useCallback((event,input)=>{setFocus(input.name);},[]);const handleBlur=useCallback(event=>{setFocus(null);setError(false);},[]);const handleSubmit=useCallback(event=>{event.preventDefault();// Prevent submitting while submitting\nif(isLoading)return;setLoading(true);setError(false);const headers=new Headers;if(extraHeaders){for(const[key,value]of Object.entries(extraHeaders)){headers.append(key,value);}}const formData=new FormData(event.target);let requestOptions={method:method,headers:headers};if(method===\"get\"){// Add form fields to URL for GET requests\nconst urlSearchParams=new URLSearchParams;for(const[name,value1]of formData){urlSearchParams.append(name,value1.toString());}const queryString=urlSearchParams.toString();url+=queryString?`?${queryString}`:\"\";}else{headers.append(\"Content-Type\",contentType);if(contentType===\"application/json\"){headers.append(\"accept\",\"application/json\");}if(contentType===\"application/x-www-form-urlencoded\"){const urlSearchParams1=new URLSearchParams;for(const[name1,value2]of formData){urlSearchParams1.append(name1,value2.toString());}if(extraFields){for(const[key1,value3]of Object.entries(extraFields)){urlSearchParams1.append(key1,value3.toString());}}requestOptions[\"body\"]=urlSearchParams1.toString();}else if(contentType===\"application/json\"){const bodyObject={};for(const[name2,value4]of formData){bodyObject[name2]=value4;}if(extraFields){for(const[key2,value5]of Object.entries(extraFields)){bodyObject[key2]=value5;}}requestOptions[\"body\"]=JSON.stringify(bodyObject);}}fetch(url,requestOptions).then(response=>{const statusCode=response.status;const contentType=response.headers.get(\"content-type\");if(contentType&&contentType.includes(\"application/json\")){return response.json().then(data=>({statusCode,data}));}else if(contentType&&contentType.includes(\"text/plain\")){return response.text().then(data=>({statusCode,data}));}else{throw new Error(\"Unsupported response type\");}}).then(({statusCode,data})=>{if(statusCode>=200&&statusCode<300){// Reset state\nsetLoading(false);event.target.reset();// Handle success\nonSuccess();if(redirectAs===\"overlay\")onSubmit===null||onSubmit===void 0?void 0:onSubmit();}else{// Handle errors\nlet errorMessage=\"An error occurred submitting the form\";throw new Error(errorMessage);}}).catch(error=>{console.error(error);setError(true);setLoading(false);formControls.start(\"error\");});},[onSubmit,isLoading]);// Animation\nconst formControls=useAnimationControls();// Label Box Shadow Styles\nconst labelShadowStyles=styles.label.shadowObject?`${labelShadowObject.shadowX}px ${labelShadowObject.shadowY}px ${labelShadowObject.shadowBlur}px ${labelShadowObject.shadowColor}`:null;const labelBorderStyles=styles.label.borderObject?`inset 0 0 0 ${labelBorderObject.borderWidth}px ${labelBorderObject.borderColor}`:null;// Input Box Shadow Styles\nconst inputFocusStylesFrom=styles.input.focusObject?`inset 0 0 0 ${inputFocusObject.focusWidthFrom}px ${inputFocusObject.focusColor}`:null;const inputFocusStylesTo=styles.input.focusObject?`inset 0 0 0 ${inputFocusObject.focusWidthTo}px ${inputFocusObject.focusColor}`:null;const inputShadowStyles=styles.input.shadowObject?`${inputShadowObject.shadowX}px ${inputShadowObject.shadowY}px ${inputShadowObject.shadowBlur}px ${inputShadowObject.shadowColor}`:null;const inputBorderStyles=styles.input.borderObject?`inset 0 0 0 ${inputBorderObject.borderWidth}px ${inputBorderObject.borderColor}`:null;// Button Box Shadow Styles\nconst buttonShadowStyles=styles.button.shadowObject?`${buttonShadowObject.shadowX}px ${buttonShadowObject.shadowY}px ${buttonShadowObject.shadowBlur}px ${buttonShadowObject.shadowColor}`:null;const buttonBorderStyles=styles.button.borderObject?`inset 0 0 0 ${buttonBorderObject.borderWidth}px ${buttonBorderObject.borderColor}`:null;// Shake or wiggle as error\nconst formVariants={default:{x:0},error:{x:[0,-4,4,0],transition:{duration:.2}}};const inputVariants={default:{boxShadow:dynamicBoxShadow(inputFocusStylesFrom,inputShadowStyles,inputBorderStyles)},focused:{boxShadow:dynamicBoxShadow(inputFocusStylesTo,inputShadowStyles,inputBorderStyles)}};const label=input=>{if(!input.label){return null;}return /*#__PURE__*/ _jsxs(\"label\",{htmlFor:input.name,style:{marginBottom:\"0.375rem\",alignSelf:\"flex-start\",padding:labelPaddingValue,borderRadius:labelBorderRadius,fontSize:16,...styles.label.font,background:styles.label.fill,color:styles.label.color,boxShadow:dynamicBoxShadow(labelShadowStyles,labelBorderStyles)},children:[input.label,requiredFlag(input.required)]});};const getInputSpan=input=>{return input.gridColumn>styles.form.columns?styles.form.columns:input.gridColumn;};const getButtonSpan=()=>{const totalSpan=inputs.reduce((sum,input)=>sum+Number(input.gridColumn),0);const shouldBeInline=totalSpan===styles.form.columns-1;return shouldBeInline?1:styles.form.columns;};const baseInput=input=>{return /*#__PURE__*/ _jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gridColumn:`span ${getInputSpan(input)}`},children:[label(input),/*#__PURE__*/ _jsx(motion.input,{name:input.name,type:input.type,defaultValue:input.value,placeholder:input.placeholder,className:`${VERSION} framer-custom-input`,onChange:handleChange,onFocus:event=>handleFocus(event,input),onBlur:handleBlur,autoComplete:\"off\",autoCapitalize:\"off\",autoCorrect:\"off\",spellCheck:\"false\",required:input.required,style:{...defaultStyle,padding:inputPaddingValue,borderRadius:inputBorderRadius,fontSize:16,...styles.input.font,background:styles.input.fill,color:styles.input.color,boxShadow:dynamicBoxShadow(inputFocusStylesFrom,inputShadowStyles,inputBorderStyles)},variants:inputVariants,initial:false,animate:getFocus===input.name?\"focused\":\"default\",transition:{duration:.3},min:input.min,max:input.max,step:input.step})]});};const textareaInput=input=>{return /*#__PURE__*/ _jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gridColumn:`span ${getInputSpan(input)}`},children:[label(input),/*#__PURE__*/ _jsx(motion.textarea,{name:input.name,defaultValue:input.value,placeholder:input.placeholder,className:`${VERSION} framer-custom-input`,onChange:handleChange,onFocus:event=>handleFocus(event,input),onBlur:handleBlur,autoComplete:\"off\",autoCapitalize:\"off\",autoCorrect:\"off\",spellCheck:\"false\",required:input.required,style:{...defaultStyle,padding:inputPaddingValue,borderRadius:inputBorderRadius,fontSize:16,...styles.input.font,background:styles.input.fill,color:styles.input.color,boxShadow:dynamicBoxShadow(inputFocusStylesFrom,inputShadowStyles,inputBorderStyles)},variants:inputVariants,initial:false,animate:getFocus===input.name?\"focused\":\"default\",transition:{duration:.3}})]});};const optionsHMTL=options=>{return options.map(option=>{return /*#__PURE__*/ _jsx(\"option\",{value:option.value,children:option.text});});};const selectInput=input=>{let options=[];if(input.placeholder){options.push({text:input.placeholder,value:\"\"});}options=options.concat(input.options);return /*#__PURE__*/ _jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gridColumn:`span ${getInputSpan(input)}`},children:[label(input),/*#__PURE__*/ _jsxs(\"div\",{style:{position:\"relative\",display:\"inline-block\"},children:[/*#__PURE__*/ _jsx(\"div\",{style:{...selectChevron,borderColor:`${styles.input.color} transparent transparent transparent`}}),/*#__PURE__*/ _jsx(motion.select,{name:input.name,placeholder:input.placeholder,className:`${VERSION} framer-custom-input`,onChange:handleChange,onFocus:event=>handleFocus(event,input),onBlur:handleBlur,autoComplete:\"off\",autoCapitalize:\"off\",autoCorrect:\"off\",spellCheck:\"false\",required:input.required,style:{...defaultStyle,padding:inputPaddingValue,borderRadius:inputBorderRadius,fontSize:16,...styles.input.font,background:styles.input.fill,color:styles.input.color,boxShadow:dynamicBoxShadow(inputFocusStylesFrom,inputShadowStyles,inputBorderStyles)},variants:inputVariants,initial:false,animate:getFocus===input.name?\"focused\":\"default\",transition:{duration:.3},disabled:isLoading,children:optionsHMTL(options)})]})]});};function checkboxInput(input){return /*#__PURE__*/ _jsx(\"div\",{style:{gridColumn:`span ${getInputSpan(input)}`},children:/*#__PURE__*/ _jsxs(\"label\",{style:{display:\"flex\",alignItems:\"center\",fontSize:16,...styles.label.font,background:styles.label.fill,color:styles.label.color},children:[/*#__PURE__*/ _jsx(motion.input,{name:input.name,type:\"checkbox\",value:input.value||\"on\",required:input.required,style:{margin:\"0px 8px 0px 4px\"}}),input.label]})});}function radioInput(input){return /*#__PURE__*/ _jsx(\"div\",{style:{gridColumn:`span ${getInputSpan(input)}`},children:/*#__PURE__*/ _jsxs(\"label\",{style:{display:\"flex\",alignItems:\"center\",fontSize:16,...styles.label.font,background:styles.label.fill,color:styles.label.color},children:[/*#__PURE__*/ _jsx(motion.input,{name:input.name,type:\"radio\",value:input.value||\"on\",required:input.required,style:{margin:\"0px 8px 0px 4px\"}}),input.label]})});}const inputsHTML=inputs.map(input=>{let inputElement=null;if(input.type===FieldType.Select){inputElement=selectInput(input);}else if(input.type===FieldType.TextArea){inputElement=textareaInput(input);}else if(input.type===FieldType.Checkbox){inputElement=checkboxInput(input);}else if(input.type===FieldType.Radio){inputElement=radioInput(input);}else{inputElement=baseInput(input);}return inputElement;});return /*#__PURE__*/ _jsx(motion.div,{style:{...style,...containerStyles,\"--framer-custom-placeholder-color\":styles.input.placeholderColor},variants:formVariants,animate:formControls,children:/*#__PURE__*/ _jsxs(\"form\",{style:{width:\"100%\",display:\"grid\",gridTemplateColumns:styles.form.columns>1&&getButtonSpan()===1?\"1fr auto\":`repeat(${styles.form.columns}, 1fr)`,gap:`${styles.form.rowGap}px ${styles.form.columnGap}px`,background:styles.form.fill},onSubmit:handleSubmit,method:\"POST\",children:[inputsHTML,/*#__PURE__*/ _jsxs(\"div\",{style:{display:\"flex\",gridColumn:`span ${getButtonSpan()}`},children:[!button.shouldAppear&&isLoading&&/*#__PURE__*/ _jsx(Spinner,{shouldAppear:button.shouldAppear,paddingPerSide:buttonPaddingPerSide,paddingTop:buttonPaddingTop,paddingRight:buttonPaddingRight,padding:buttonPadding,color:styles.input.color}),button.shouldAppear&&/*#__PURE__*/ _jsx(\"div\",{style:{width:\"100%\",display:\"flex\",flexDirection:\"column\"},children:/*#__PURE__*/ _jsxs(\"div\",{style:{height:\"100%\",display:\"flex\",position:\"relative\",alignSelf:styles.button.align},children:[/*#__PURE__*/ _jsx(motion.input,{type:\"submit\",value:button.label,style:{...defaultStyle,width:\"100%\",height:\"100%\",cursor:\"pointer\",padding:buttonPaddingValue,borderRadius:buttonBorderRadius,fontWeight:styles.button.fontWeight,fontSize:16,...styles.button.font,background:styles.button.fill,color:styles.button.color,zIndex:1,boxShadow:dynamicBoxShadow(buttonShadowStyles,buttonBorderStyles)}}),isLoading&&/*#__PURE__*/ _jsx(\"div\",{style:{borderRadius:buttonBorderRadius,position:\"absolute\",display:\"flex\",justifyContent:\"center\",alignItems:\"center\",width:\"100%\",height:\"100%\",inset:0,zIndex:2,color:styles.button.color,background:styles.button.fill,boxShadow:dynamicBoxShadow(buttonShadowStyles,buttonBorderStyles)},children:/*#__PURE__*/ _jsx(Spinner,{color:styles.button.color})})]})})]})]})});},[`.${VERSION}.framer-custom-input::placeholder { color: var(--framer-custom-placeholder-color) !important; }`,]);const Spinner=props=>{const noButtonStyles=!props.shouldAppear?{position:\"absolute\",top:`calc(50% - 8px)`,right:props.inputPaddingPerSide?props.inputPaddingRight:props.inputPadding}:{};return /*#__PURE__*/ _jsx(motion.div,{style:{height:16,width:16,...noButtonStyles},initial:{rotate:0},animate:{rotate:360},transition:{duration:1,repeat:Infinity},children:/*#__PURE__*/ _jsx(motion.div,{initial:{scale:0},animate:{scale:1},children:/*#__PURE__*/ _jsxs(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"16\",height:\"16\",style:{fill:\"currentColor\",color:props.color},children:[/*#__PURE__*/ _jsx(\"path\",{d:\"M 8 0 C 3.582 0 0 3.582 0 8 C 0 12.419 3.582 16 8 16 C 12.418 16 16 12.419 16 8 C 15.999 3.582 12.418 0 8 0 Z M 8 14 C 4.687 14 2 11.314 2 8 C 2 4.687 4.687 2 8 2 C 11.314 2 14 4.687 14 8 C 14 11.314 11.314 14 8 14 Z\",fill:\"currentColor\",opacity:\"0.2\"}),/*#__PURE__*/ _jsx(\"path\",{d:\"M 8 0 C 12.418 0 15.999 3.582 16 8 C 16 8 16 9 15 9 C 14 9 14 8 14 8 C 14 4.687 11.314 2 8 2 C 4.687 2 2 4.687 2 8 C 2 8 2 9 1 9 C 0 9 0 8 0 8 C 0 3.582 3.582 0 8 0 Z\",fill:\"currentColor\"})]})})});};const basePropertyControls={url:{title:\"Url\",type:ControlType.String},method:{type:ControlType.Enum,defaultValue:\"post\",options:[\"get\",\"post\",\"put\",\"patch\",\"delete\"],optionTitles:[\"Get\",\"Post\",\"Put\",\"Patch\",\"Delete\"]},contentType:{type:ControlType.Enum,defaultValue:\"application/json\",options:[\"application/json\",\"application/x-www-form-urlencoded\"],optionTitles:[\"json\",\"x-www-form-urlencoded\"],hidden:props=>props.method===\"get\"},inputs:{title:\"Inputs\",type:ControlType.Array,control:{type:ControlType.Object,controls:{label:{title:\"Label\",type:ControlType.String},name:{title:\"Name\",type:ControlType.String},placeholder:{title:\"Placeholder\",type:ControlType.String,hidden:props=>props.type===\"checkbox\"},type:{type:ControlType.Enum,options:Object.values(FieldType),optionTitles:Object.keys(FieldType)},options:{type:ControlType.Array,title:\"Options\",control:{type:ControlType.Object,title:\"Option\",controls:{text:{type:ControlType.String,title:\"Text\"},value:{type:ControlType.String,title:\"Value\"}}},hidden:props=>props.type!==\"select\"},min:{type:ControlType.String,hidden:props=>!hasMinMaxStep(props.type)},max:{type:ControlType.String,hidden:props=>!hasMinMaxStep(props.type)},step:{type:ControlType.Number,hidden:props=>!hasMinMaxStep(props.type)},value:{type:ControlType.String},required:{type:ControlType.Boolean},gridColumn:{title:\"Grid Col\",type:ControlType.Enum,defaultValue:1,displaySegmentedControl:true,segmentedControlDirection:\"horizontal\",options:[\"1\",\"2\",\"3\"],optionTitles:[\"1\",\"2\",\"3\"]}}}},button:{title:\"Button\",type:ControlType.Object,controls:{shouldAppear:{title:\"Show\",type:ControlType.Boolean,defaultValue:true},label:{title:\"Label\",type:ControlType.String,defaultValue:\"Submit\"}}},redirectAs:{title:\"Success\",type:ControlType.Enum,options:[\"link\",\"overlay\"],optionTitles:[\"Open Link\",\"Show Overlay\"],defaultValue:\"link\"},link:{title:\"Redirect\",type:ControlType.Link,hidden:props=>props.redirectAs===\"overlay\"},onSubmit:{title:\"Submit\",type:ControlType.EventHandler,hidden:props=>props.redirectAs===\"link\"},styles:{type:ControlType.Object,controls:{form:{type:ControlType.Object,controls:{fill:{title:\"Fill\",type:ControlType.Color,defaultValue:\"#fff\"},columns:{title:\"Columns\",type:ControlType.Enum,options:[\"1\",\"2\",\"3\"],displaySegmentedControl:true},rowGap:{title:\"Row gap\",type:ControlType.Number,displayStepper:true,min:0,defaultValue:8},columnGap:{title:\"Col Gap\",type:ControlType.Number,displayStepper:true,min:0,defaultValue:8}}},label:{type:ControlType.Object,controls:{font:{type:ControlType.Font,title:\"Font\",controls:\"extended\"},fill:{title:\"Fill\",type:ControlType.Color,defaultValue:\"transparent\"},color:{title:\"Text\",type:ControlType.Color,defaultValue:\"#000\"},padding:{title:\"Padding\",type:ControlType.FusedNumber,toggleKey:\"paddingPerSide\",toggleTitles:[\"Padding\",\"Padding per side\"],defaultValue:0,valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\",],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},borderRadius:{title:\"Radius\",type:ControlType.Number,displayStepper:true,min:0,defaultValue:8},borderObject:{type:ControlType.Object,title:\"Border\",optional:true,controls:{borderWidth:{title:\"Width\",type:ControlType.Number,displayStepper:true,defaultValue:1},borderColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(200,200,200,0.5)\"}}},shadowObject:{type:ControlType.Object,title:\"Shadow\",optional:true,controls:{shadowColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.25)\"},shadowX:{title:\"Shadow X\",type:ControlType.Number,min:-100,max:100,defaultValue:0},shadowY:{title:\"Shadow Y\",type:ControlType.Number,min:-100,max:100,defaultValue:2},shadowBlur:{title:\"Shadow B\",type:ControlType.Number,min:0,max:100,defaultValue:4}}}}},input:{type:ControlType.Object,controls:{font:{type:ControlType.Font,title:\"Font\",controls:\"extended\"},placeholderColor:{title:\"Placeholder\",type:ControlType.Color,defaultValue:\"rgba(0, 0, 0, 0.3)\"},fill:{title:\"Fill\",type:ControlType.Color,defaultValue:\"#EBEBEB\"},color:{title:\"Text\",type:ControlType.Color,defaultValue:\"#000\"},padding:{title:\"Padding\",type:ControlType.FusedNumber,toggleKey:\"paddingPerSide\",toggleTitles:[\"Padding\",\"Padding per side\"],defaultValue:12,valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\",],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},borderRadius:{title:\"Radius\",type:ControlType.Number,displayStepper:true,min:0,defaultValue:8},focusObject:{type:ControlType.Object,title:\"Focus\",optional:true,controls:{focusWidthFrom:{title:\"From\",type:ControlType.Number,displayStepper:true,defaultValue:0},focusWidthTo:{title:\"To\",type:ControlType.Number,displayStepper:true,defaultValue:2},focusColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"#09F\"}}},borderObject:{type:ControlType.Object,title:\"Border\",optional:true,controls:{borderWidth:{title:\"Width\",type:ControlType.Number,displayStepper:true,defaultValue:1},borderColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(200,200,200,0.5)\"}}},shadowObject:{type:ControlType.Object,title:\"Shadow\",optional:true,controls:{shadowColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.25)\"},shadowX:{title:\"Shadow X\",type:ControlType.Number,min:-100,max:100,defaultValue:0},shadowY:{title:\"Shadow Y\",type:ControlType.Number,min:-100,max:100,defaultValue:2},shadowBlur:{title:\"Shadow B\",type:ControlType.Number,min:0,max:100,defaultValue:4}}}}},button:{type:ControlType.Object,controls:{font:{type:ControlType.Font,title:\"Font\",controls:\"extended\"},fill:{title:\"Fill\",type:ControlType.Color,defaultValue:\"#333\"},color:{title:\"Text\",type:ControlType.Color,defaultValue:\"#FFF\"},align:{title:\"Align\",type:ControlType.Enum,segmentedControlDirection:\"vertical\",options:[\"flex-start\",\"center\",\"flex-end\",\"stretch\",],optionTitles:[\"Start\",\"Center\",\"End\",\"Stretch\"],defaultValue:\"stretch\"},padding:{title:\"Padding\",type:ControlType.FusedNumber,toggleKey:\"paddingPerSide\",toggleTitles:[\"Padding\",\"Padding per side\"],defaultValue:15,valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\",],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},borderRadius:{title:\"Radius\",type:ControlType.Number,displayStepper:true,min:0,defaultValue:8},borderObject:{type:ControlType.Object,title:\"Border\",optional:true,controls:{borderWidth:{title:\"Width\",type:ControlType.Number,displayStepper:true,defaultValue:1},borderColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(200,200,200,0.5)\"}}},shadowObject:{type:ControlType.Object,title:\"Shadow\",optional:true,controls:{shadowColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.25)\"},shadowX:{title:\"Shadow X\",type:ControlType.Number,min:-100,max:100,defaultValue:0},shadowY:{title:\"Shadow Y\",type:ControlType.Number,min:-100,max:100,defaultValue:2},shadowBlur:{title:\"Shadow B\",type:ControlType.Number,min:0,max:100,defaultValue:4}}}}}}}};addPropertyControls(BaseForm,basePropertyControls);const defaultStyle={WebkitAppearance:\"none\",width:\"100%\",height:\"auto\",outline:\"none\",border:\"none\"};const containerStyles={position:\"relative\",width:\"100%\",height:\"100%\",display:\"flex\",justifyContent:\"center\",alignItems:\"center\"};const selectChevron={position:\"absolute\",top:\"50%\",right:\"12px\",transform:\"translateY(-50%)\",width:\"0\",height:\"0\",borderStyle:\"solid\",borderWidth:\"5px 5px 0 5px\",pointerEvents:\"none\"};function dynamicBoxShadow(...shadows){const output=[];shadows.forEach(shadow=>shadow&&output.push(shadow));return output.join(\", \");}function requiredFlag(isRequired){if(isRequired){return /*#__PURE__*/ _jsx(\"span\",{children:\"*\"});}return null;}BaseForm.defaultProps={url:\"\",styles:{form:{columns:1,rowGap:8,columnGap:8},label:{color:\"#000\"},input:{borderObject:{borderColor:\"#ccc\"}},button:{}},inputs:[{name:\"name\",label:\"Name\",placeholder:\"Jane\",type:FieldType.Text,required:false},{name:\"email\",label:\"Email\",placeholder:\"jane@example.com\",type:FieldType.Email,required:false},{name:\"service\",label:\"Service\",placeholder:\"- select -\",type:FieldType.Select,required:false,options:[]},{name:\"message\",label:\"Message\",placeholder:\"\",type:FieldType.TextArea,required:false},{name:\"terms\",label:\"I accept the terms & conditions\",type:FieldType.Checkbox,required:false},]};export default BaseForm;export{basePropertyControls};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"BaseForm\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"40\",\"framerIntrinsicWidth\":\"300\",\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"*\",\"framerSupportedLayoutHeight\":\"any\",\"framerSupportedLayoutWidth\":\"fixed\"}},\"basePropertyControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./BaseForm.map","import { ControlType } from \"framer\";\nexport const fontStack = `\"Inter\", system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"`;\nexport const containerStyles = {\n    position: \"relative\",\n    width: \"100%\",\n    height: \"100%\",\n    display: \"flex\",\n    justifyContent: \"center\",\n    alignItems: \"center\"\n};\nexport const emptyStateStyle = {\n    ...containerStyles,\n    borderRadius: 6,\n    background: \"rgba(136, 85, 255, 0.3)\",\n    color: \"#85F\",\n    border: \"1px dashed #85F\",\n    flexDirection: \"column\"\n};\nexport const defaultEvents = {\n    onClick: {\n        type: ControlType.EventHandler\n    },\n    onMouseEnter: {\n        type: ControlType.EventHandler\n    },\n    onMouseLeave: {\n        type: ControlType.EventHandler\n    }\n};\nexport const fontSizeOptions = {\n    type: ControlType.Number,\n    title: \"Font Size\",\n    min: 2,\n    max: 200,\n    step: 1,\n    displayStepper: true\n};\nexport const fontControls = {\n    font: {\n        type: ControlType.Boolean,\n        title: \"Font\",\n        defaultValue: false,\n        disabledTitle: \"Default\",\n        enabledTitle: \"Custom\"\n    },\n    fontFamily: {\n        type: ControlType.String,\n        title: \"Family\",\n        placeholder: \"Inter\",\n        hidden: ({ font  })=>!font\n    },\n    fontWeight: {\n        type: ControlType.Enum,\n        title: \"Weight\",\n        options: [\n            100,\n            200,\n            300,\n            400,\n            500,\n            600,\n            700,\n            800,\n            900\n        ],\n        optionTitles: [\n            \"Thin\",\n            \"Extra-light\",\n            \"Light\",\n            \"Regular\",\n            \"Medium\",\n            \"Semi-bold\",\n            \"Bold\",\n            \"Extra-bold\",\n            \"Black\", \n        ],\n        hidden: ({ font  })=>!font\n    }\n};\n// @TODO check if we're missing anything here — there doesn't seem to be a reliable browser API for this\nexport const localeOptions = {\n    af: \"Afrikaans\",\n    sq: \"Albanian\",\n    an: \"Aragonese\",\n    ar: \"Arabic (Standard)\",\n    \"ar-dz\": \"Arabic (Algeria)\",\n    \"ar-bh\": \"Arabic (Bahrain)\",\n    \"ar-eg\": \"Arabic (Egypt)\",\n    \"ar-iq\": \"Arabic (Iraq)\",\n    \"ar-jo\": \"Arabic (Jordan)\",\n    \"ar-kw\": \"Arabic (Kuwait)\",\n    \"ar-lb\": \"Arabic (Lebanon)\",\n    \"ar-ly\": \"Arabic (Libya)\",\n    \"ar-ma\": \"Arabic (Morocco)\",\n    \"ar-om\": \"Arabic (Oman)\",\n    \"ar-qa\": \"Arabic (Qatar)\",\n    \"ar-sa\": \"Arabic (Saudi Arabia)\",\n    \"ar-sy\": \"Arabic (Syria)\",\n    \"ar-tn\": \"Arabic (Tunisia)\",\n    \"ar-ae\": \"Arabic (U.A.E.)\",\n    \"ar-ye\": \"Arabic (Yemen)\",\n    hy: \"Armenian\",\n    as: \"Assamese\",\n    ast: \"Asturian\",\n    az: \"Azerbaijani\",\n    eu: \"Basque\",\n    bg: \"Bulgarian\",\n    be: \"Belarusian\",\n    bn: \"Bengali\",\n    bs: \"Bosnian\",\n    br: \"Breton\",\n    my: \"Burmese\",\n    ca: \"Catalan\",\n    ch: \"Chamorro\",\n    ce: \"Chechen\",\n    zh: \"Chinese\",\n    \"zh-hk\": \"Chinese (Hong Kong)\",\n    \"zh-cn\": \"Chinese (PRC)\",\n    \"zh-sg\": \"Chinese (Singapore)\",\n    \"zh-tw\": \"Chinese (Taiwan)\",\n    cv: \"Chuvash\",\n    co: \"Corsican\",\n    cr: \"Cree\",\n    hr: \"Croatian\",\n    cs: \"Czech\",\n    da: \"Danish\",\n    nl: \"Dutch (Standard)\",\n    \"nl-be\": \"Dutch (Belgian)\",\n    en: \"English\",\n    \"en-au\": \"English (Australia)\",\n    \"en-bz\": \"English (Belize)\",\n    \"en-ca\": \"English (Canada)\",\n    \"en-ie\": \"English (Ireland)\",\n    \"en-jm\": \"English (Jamaica)\",\n    \"en-nz\": \"English (New Zealand)\",\n    \"en-ph\": \"English (Philippines)\",\n    \"en-za\": \"English (South Africa)\",\n    \"en-tt\": \"English (Trinidad & Tobago)\",\n    \"en-gb\": \"English (United Kingdom)\",\n    \"en-us\": \"English (United States)\",\n    \"en-zw\": \"English (Zimbabwe)\",\n    eo: \"Esperanto\",\n    et: \"Estonian\",\n    fo: \"Faeroese\",\n    fa: \"Farsi\",\n    fj: \"Fijian\",\n    fi: \"Finnish\",\n    fr: \"French (Standard)\",\n    \"fr-be\": \"French (Belgium)\",\n    \"fr-ca\": \"French (Canada)\",\n    \"fr-fr\": \"French (France)\",\n    \"fr-lu\": \"French (Luxembourg)\",\n    \"fr-mc\": \"French (Monaco)\",\n    \"fr-ch\": \"French (Switzerland)\",\n    fy: \"Frisian\",\n    fur: \"Friulian\",\n    gd: \"Gaelic (Scots)\",\n    \"gd-ie\": \"Gaelic (Irish)\",\n    gl: \"Galacian\",\n    ka: \"Georgian\",\n    de: \"German (Standard)\",\n    \"de-at\": \"German (Austria)\",\n    \"de-de\": \"German (Germany)\",\n    \"de-li\": \"German (Liechtenstein)\",\n    \"de-lu\": \"German (Luxembourg)\",\n    \"de-ch\": \"German (Switzerland)\",\n    el: \"Greek\",\n    gu: \"Gujurati\",\n    ht: \"Haitian\",\n    he: \"Hebrew\",\n    hi: \"Hindi\",\n    hu: \"Hungarian\",\n    is: \"Icelandic\",\n    id: \"Indonesian\",\n    iu: \"Inuktitut\",\n    ga: \"Irish\",\n    it: \"Italian (Standard)\",\n    \"it-ch\": \"Italian (Switzerland)\",\n    ja: \"Japanese\",\n    kn: \"Kannada\",\n    ks: \"Kashmiri\",\n    kk: \"Kazakh\",\n    km: \"Khmer\",\n    ky: \"Kirghiz\",\n    tlh: \"Klingon\",\n    ko: \"Korean\",\n    \"ko-kp\": \"Korean (North Korea)\",\n    \"ko-kr\": \"Korean (South Korea)\",\n    la: \"Latin\",\n    lv: \"Latvian\",\n    lt: \"Lithuanian\",\n    lb: \"Luxembourgish\",\n    mk: \"FYRO Macedonian\",\n    ms: \"Malay\",\n    ml: \"Malayalam\",\n    mt: \"Maltese\",\n    mi: \"Maori\",\n    mr: \"Marathi\",\n    mo: \"Moldavian\",\n    nv: \"Navajo\",\n    ng: \"Ndonga\",\n    ne: \"Nepali\",\n    no: \"Norwegian\",\n    nb: \"Norwegian (Bokmal)\",\n    nn: \"Norwegian (Nynorsk)\",\n    oc: \"Occitan\",\n    or: \"Oriya\",\n    om: \"Oromo\",\n    \"fa-ir\": \"Persian/Iran\",\n    pl: \"Polish\",\n    pt: \"Portuguese\",\n    \"pt-br\": \"Portuguese (Brazil)\",\n    pa: \"Punjabi\",\n    \"pa-in\": \"Punjabi (India)\",\n    \"pa-pk\": \"Punjabi (Pakistan)\",\n    qu: \"Quechua\",\n    rm: \"Rhaeto-Romanic\",\n    ro: \"Romanian\",\n    \"ro-mo\": \"Romanian (Moldavia)\",\n    ru: \"Russian\",\n    \"ru-mo\": \"Russian (Moldavia)\",\n    sz: \"Sami (Lappish)\",\n    sg: \"Sango\",\n    sa: \"Sanskrit\",\n    sc: \"Sardinian\",\n    sd: \"Sindhi\",\n    si: \"Singhalese\",\n    sr: \"Serbian\",\n    sk: \"Slovak\",\n    sl: \"Slovenian\",\n    so: \"Somani\",\n    sb: \"Sorbian\",\n    es: \"Spanish\",\n    \"es-ar\": \"Spanish (Argentina)\",\n    \"es-bo\": \"Spanish (Bolivia)\",\n    \"es-cl\": \"Spanish (Chile)\",\n    \"es-co\": \"Spanish (Colombia)\",\n    \"es-cr\": \"Spanish (Costa Rica)\",\n    \"es-do\": \"Spanish (Dominican Republic)\",\n    \"es-ec\": \"Spanish (Ecuador)\",\n    \"es-sv\": \"Spanish (El Salvador)\",\n    \"es-gt\": \"Spanish (Guatemala)\",\n    \"es-hn\": \"Spanish (Honduras)\",\n    \"es-mx\": \"Spanish (Mexico)\",\n    \"es-ni\": \"Spanish (Nicaragua)\",\n    \"es-pa\": \"Spanish (Panama)\",\n    \"es-py\": \"Spanish (Paraguay)\",\n    \"es-pe\": \"Spanish (Peru)\",\n    \"es-pr\": \"Spanish (Puerto Rico)\",\n    \"es-es\": \"Spanish (Spain)\",\n    \"es-uy\": \"Spanish (Uruguay)\",\n    \"es-ve\": \"Spanish (Venezuela)\",\n    sx: \"Sutu\",\n    sw: \"Swahili\",\n    sv: \"Swedish\",\n    \"sv-fi\": \"Swedish (Finland)\",\n    \"sv-sv\": \"Swedish (Sweden)\",\n    ta: \"Tamil\",\n    tt: \"Tatar\",\n    te: \"Teluga\",\n    th: \"Thai\",\n    tig: \"Tigre\",\n    ts: \"Tsonga\",\n    tn: \"Tswana\",\n    tr: \"Turkish\",\n    tk: \"Turkmen\",\n    uk: \"Ukrainian\",\n    hsb: \"Upper Sorbian\",\n    ur: \"Urdu\",\n    ve: \"Venda\",\n    vi: \"Vietnamese\",\n    vo: \"Volapuk\",\n    wa: \"Walloon\",\n    cy: \"Welsh\",\n    xh: \"Xhosa\",\n    ji: \"Yiddish\",\n    zu: \"Zulu\"\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./constants.map","import { useIsInCurrentNavigationTarget } from \"framer\";\nimport { useEffect } from \"react\";\nexport function useOnEnter(onEnter, enabled) {\n    return useOnSpecificTargetChange(true, onEnter, enabled);\n}\nexport function useOnExit(onExit, enabled) {\n    return useOnSpecificTargetChange(false, onExit, enabled);\n}\nfunction useOnSpecificTargetChange(goal, callback, enabled = true) {\n    const isInTarget = useIsInCurrentNavigationTarget();\n    useEffect(()=>{\n        if (enabled && isInTarget === goal) callback();\n    }, [\n        isInTarget\n    ]);\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useOnEnter\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnNavigationTargetChange.map","import { useRef } from \"react\";\n/**\n * Creates a constant value over the lifecycle of a component.\n *\n * Even if `useMemo` is provided an empty array as its final argument, it doesn't offer\n * a guarantee that it won't re-run for performance reasons later on. By using `useConstant`\n * you can ensure that initialisers don't execute twice or more.\n */ export function useConstant(init) {\n    const ref = useRef(null);\n    if (ref.current === null) {\n        ref.current = init();\n    }\n    return ref.current;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useConstant.map","import { Color } from \"framer\";\nexport function colorFromToken(color) {\n    if (color.startsWith(\"var(--token-\")) return \"rgb\" + color.split(\") /*\")[0].split(\", rgb\")[1];\n    return color;\n}\nexport function colorTokentoValue(color) {\n    return Color(colorFromToken(color)).toValue();\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"colorFromToken\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./colorFromToken.map","import { MotionValue } from \"framer\";\nexport const isMotionValue = (v)=>v instanceof MotionValue\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isMotionValue.map","import * as React from \"react\";\nconst letters = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\";\nconst l = ()=>letters[Math.floor(Math.random() * letters.length)]\n;\nexport const randomID = ()=>l() + l() + l() + l() + l() + l() + l() + l() + l()\n;\nfunction createUniqueClass(suffix) {\n    return `framer-${suffix}-${randomID()}`;\n}\nexport function useUniqueClassName(suffix, deps) {\n    const [className, setClassName] = React.useState(createUniqueClass(suffix));\n    React.useEffect(()=>{\n        setClassName(createUniqueClass(suffix));\n    }, [\n        suffix,\n        ...deps\n    ]);\n    return className;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useUniqueClassName\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useUniqueClassName.map","import { ControlType } from \"framer\";\n// I realize this only applies to select right now\n// but we can work on it in here\nexport function getVariantControls(Component, variant, additionalControls = {\n}) {\n    return {\n        [`${variant}TextColor`]: {\n            type: ControlType.Color,\n            title: \"Text Color\",\n            defaultValue: Component.defaultProps[`${variant}TextColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}IconColor`]: {\n            type: ControlType.Color,\n            title: \"Icon Color\",\n            defaultValue: Component.defaultProps[`${variant}IconColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BackgroundColor`]: {\n            type: ControlType.Color,\n            title: \"Bg Color\",\n            defaultValue: Component.defaultProps[`${variant}BackgroundColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BorderColor`]: {\n            type: ControlType.Color,\n            title: \"Border Color\",\n            defaultValue: Component.defaultProps[`${variant}BorderColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BorderWidth`]: {\n            type: ControlType.Number,\n            title: \" \",\n            min: 0,\n            max: 5,\n            displayStepper: true,\n            defaultValue: Component.defaultProps[`${variant}BorderWidth`],\n            hidden: (props)=>props.variant !== variant\n        },\n        ...additionalControls\n    };\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"getVariantControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./variantUtils.map","import { useMemo } from \"react\";\nexport const isBrowserSafari = ()=>{\n    if (typeof navigator !== `undefined`) {\n        const userAgent = navigator.userAgent.toLowerCase();\n        const isSafari = (userAgent.indexOf(\"safari\") > -1 || userAgent.indexOf(\"framermobile\") > -1 || userAgent.indexOf(\"framerx\") > -1) && userAgent.indexOf(\"chrome\") < 0;\n        return isSafari;\n    } else return false;\n};\nexport const useIsBrowserSafari = ()=>useMemo(()=>isBrowserSafari()\n    , [])\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isBrowser.map","import { useEffect } from \"react\";\n//@ts-ignore\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\nexport function useOnChange(value, callback) {\n    useEffect(()=>// @ts-ignore this should be detected as a MV :shrug:\n        isMotionValue(value) ? value.onChange(callback) : undefined\n    );\n}\nexport function useMultiOnChange(values, handler) {\n    useEffect(()=>{\n        const subscriptions = values.map((value)=>value.onChange(handler)\n        );\n        return ()=>subscriptions.forEach((unsubscribe)=>unsubscribe()\n            )\n        ;\n    });\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"Subscriber\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnChange.map","export function mstoMinAndSec(millis) {\n    const minutes = Math.floor(millis / 60000);\n    const seconds = parseInt((millis % 60000 / 1000).toFixed(0));\n    return minutes + \":\" + (seconds < 10 ? \"0\" : \"\") + seconds;\n}\nexport function secondsToMinutes(seconds) {\n    const minutes = Math.floor(seconds / 60);\n    const s = Math.floor(seconds % 60);\n    return minutes + \":\" + (s < 10 ? \"0\" : \"\") + s;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"mstoMinAndSec\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"secondsToMinutes\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./time.map","import { useCallback, useEffect, useRef } from \"react\";\nimport { motionValue, animate, RenderTarget } from \"framer\";\n// @ts-ignore\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\n// @ts-ignore\nimport { useConstant } from \"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";\nexport function useAutoMotionValue(inputValue, options) {\n    var ref;\n    // Put options on a local ref\n    // Might wanna just memo instead but it works for now\n    const optionsRef = useRef(options);\n    const animation = useRef();\n    const didInitialMount = useRef(false);\n    const isOnCanvas = RenderTarget.current() === RenderTarget.canvas;\n    // in-progress - trying to figure out effect hooks\n    const onChangeDeps = (options === null || options === void 0 ? void 0 : options.onChangeDeps) ? options.onChangeDeps : [];\n    // Memoize the onChange handler\n    const onChange = useCallback(options === null || options === void 0 ? void 0 : options.onChange, [\n        ...onChangeDeps, \n    ]);\n    // Optionally scale the value from props\n    const transformer = useCallback((value)=>((ref = optionsRef.current) === null || ref === void 0 ? void 0 : ref.transform) ? optionsRef.current.transform(value) : value\n    , []);\n    // Create new MotionValue from inputValue\n    const value = useConstant(()=>isMotionValue(inputValue) ? inputValue : motionValue(transformer(inputValue))\n    );\n    // Setting value from prop change\n    useEffect(()=>{\n        if (!isMotionValue(inputValue) && didInitialMount.current) {\n            var ref1, ref2;\n            const newValue = transformer(inputValue);\n            (ref1 = animation.current) === null || ref1 === void 0 ? void 0 : ref1.stop();\n            // Call change callback\n            if (onChange) onChange(newValue, value);\n            // Trigger animation to new value\n            if (((ref2 = optionsRef.current) === null || ref2 === void 0 ? void 0 : ref2.animate) && !isOnCanvas) {\n                var ref3;\n                // @ts-ignore\n                animation.current = animate(value, newValue, (ref3 = optionsRef.current) === null || ref3 === void 0 ? void 0 : ref3.transition);\n            } else {\n                value.set(newValue);\n            }\n        }\n        didInitialMount.current = true;\n    }, [\n        inputValue,\n        ...onChangeDeps\n    ]);\n    return value;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useAutoMotionValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}","// @ts-ignore\nimport{fontStore}from\"framer\";import{useEffect}from\"react\";import{fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";const fontWeights={100:\"Thin\",200:\"Extra-light\",300:\"Light\",400:\"Regular\",500:\"Medium\",600:\"Semi-bold\",700:\"Bold\",800:\"Extra-bold\",900:\"Black\"};export function useFontControls(props){const{fontFamily=\"Inter\",fontSize=16,fontWeight=400,font=false}=props;const fontWeightName=fontWeights[fontWeight];const customFontStack=`\"${fontFamily} ${fontWeightName}\", \"${fontFamily}\", ${fontStack}`;const fontFamilyStyle=fontFamily?{fontSize,fontWeight,fontFamily:customFontStack}:{fontSize,fontWeight};const fetchCustomFonts=async()=>{await fontStore.loadWebFontsFromSelectors([`CUSTOM;${fontFamily}`,`CUSTOM;${fontFamily} ${fontWeightName}`,`GF;${fontFamily}-${fontWeightName.toLowerCase()}`,]).catch(e=>console.error(e));};useEffect(()=>{if(font)fetchCustomFonts();},[font,fontFamily,fontWeight]);return fontFamilyStyle;}\nexport const __FramerMetadata__ = {\"exports\":{\"useFontControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useFontControls.map","import { useMemo } from \"react\";\nimport { RenderTarget } from \"framer\";\nexport function useRenderTarget() {\n    const currentRenderTarget = useMemo(()=>RenderTarget.current()\n    , []);\n    return currentRenderTarget;\n}\nexport function useIsInPreview() {\n    const inPreview = useMemo(()=>RenderTarget.current() === RenderTarget.preview\n    , []);\n    return inPreview;\n}\nexport function useIsOnCanvas() {\n    const onCanvas = useMemo(()=>RenderTarget.current() === RenderTarget.canvas\n    , []);\n    return onCanvas;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsInPreview\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useRenderTarget.map","import * as React from \"react\";\nexport function useControlledState(value) {\n    const [controlledValue, setValue] = React.useState(value);\n    React.useEffect(()=>{\n        setValue(value);\n    }, [\n        value\n    ]);\n    return [\n        controlledValue,\n        setValue\n    ];\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useControlledState\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useControlledState.map","import { useMemo } from \"react\";\nimport { ControlType } from \"framer\";\nexport function useRadius(props) {\n    const { borderRadius , isMixedBorderRadius , topLeftRadius , topRightRadius , bottomRightRadius , bottomLeftRadius ,  } = props;\n    const radiusValue = useMemo(()=>isMixedBorderRadius ? `${topLeftRadius}px ${topRightRadius}px ${bottomRightRadius}px ${bottomLeftRadius}px` : `${borderRadius}px`\n    , [\n        borderRadius,\n        isMixedBorderRadius,\n        topLeftRadius,\n        topRightRadius,\n        bottomRightRadius,\n        bottomLeftRadius, \n    ]);\n    return radiusValue;\n}\nexport const borderRadiusControl = {\n    borderRadius: {\n        title: \"Radius\",\n        type: ControlType.FusedNumber,\n        toggleKey: \"isMixedBorderRadius\",\n        toggleTitles: [\n            \"Radius\",\n            \"Radius per corner\"\n        ],\n        valueKeys: [\n            \"topLeftRadius\",\n            \"topRightRadius\",\n            \"bottomRightRadius\",\n            \"bottomLeftRadius\", \n        ],\n        valueLabels: [\n            \"TL\",\n            \"TR\",\n            \"BR\",\n            \"BL\"\n        ],\n        min: 0\n    }\n};\nexport function usePadding(props) {\n    const { padding , paddingPerSide , paddingTop , paddingRight , paddingBottom , paddingLeft ,  } = props;\n    const paddingValue = useMemo(()=>paddingPerSide ? `${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px` : padding\n    , [\n        padding,\n        paddingPerSide,\n        paddingTop,\n        paddingRight,\n        paddingBottom,\n        paddingLeft, \n    ]);\n    return paddingValue;\n}\nexport const paddingControl = {\n    padding: {\n        type: ControlType.FusedNumber,\n        toggleKey: \"paddingPerSide\",\n        toggleTitles: [\n            \"Padding\",\n            \"Padding per side\"\n        ],\n        valueKeys: [\n            \"paddingTop\",\n            \"paddingRight\",\n            \"paddingBottom\",\n            \"paddingLeft\", \n        ],\n        valueLabels: [\n            \"T\",\n            \"R\",\n            \"B\",\n            \"L\"\n        ],\n        min: 0,\n        title: \"Padding\"\n    }\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RadiusProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"PaddingProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./propUtils.map","import{defaultEvents,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";import{useOnEnter,useOnExit}from\"https://framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js\";import{useConstant}from\"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";import{colorTokentoValue,colorFromToken}from\"https://framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js\";import{isMotionValue}from\"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";import{useUniqueClassName,randomID}from\"https://framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js\";import{getVariantControls}from\"https://framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js\";import{useIsBrowserSafari}from\"https://framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js\";import{useMultiOnChange,useOnChange}from\"https://framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js\";import{mstoMinAndSec,secondsToMinutes}from\"https://framerusercontent.com/modules/4zHZnO5JojN1PrIbu2jm/revv9QCWpkh8lPzi2jje/time.js\";import{useAutoMotionValue}from\"https://framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js\";import{useFontControls}from\"https://framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js\";import{useRenderTarget,useIsInPreview,useIsOnCanvas}from\"https://framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js\";import{useControlledState}from\"https://framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js\";import{usePadding,useRadius,paddingControl,borderRadiusControl}from\"https://framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js\";import{detectAutoSizingAxis}from\"https://framerusercontent.com/modules/8CkHAZatUz1UR8jNTcfD/HwbnIAZlUmQ2oTpcLkaH/detectAutoSizingAxis.js\";export{useOnEnter,useOnExit,defaultEvents,isMotionValue,colorFromToken,colorTokentoValue,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack,useUniqueClassName,getVariantControls,useIsBrowserSafari,randomID,useConstant,useMultiOnChange,useOnChange,usePadding,useRadius,paddingControl,borderRadiusControl,mstoMinAndSec,useFontControls,secondsToMinutes,useAutoMotionValue,useRenderTarget,useIsInPreview,useControlledState,detectAutoSizingAxis,useIsOnCanvas,};\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useUniqueClassName\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getVariantControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorFromToken\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useControlledState\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useFontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useAutoMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsInPreview\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"detectAutoSizingAxis\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"mstoMinAndSec\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnEnter\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"secondsToMinutes\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}"],"mappings":"mmBAqBqwB,SAAS,GAAc,EAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,IAAI,EAAI,MAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,IAAI,WAAW,IAAM,MAAO,EAAE,MAAO,GAAO,SAAS,EAAc,EAAK,CAAC,MAAM,CAAC,EAAU,KAAK,EAAU,KAAK,EAAU,OAAO,EAAU,KAAK,EAAU,cAAe,CAAC,SAAS,EAAK,CA0Bsgd,SAAS,EAAiB,GAAG,EAAQ,CAAC,IAAM,EAAO,EAAE,CAAsD,OAArD,EAAQ,QAAQ,GAAQ,GAAQ,EAAO,KAAK,EAAO,CAAC,CAAQ,EAAO,KAAK,KAAK,CAAE,SAAS,GAAa,EAAW,CAAkE,OAA9D,EAAiC,EAAK,OAAO,CAAC,SAAS,IAAI,CAAC,CAAS,8CA1Bjsf,IAAwC,IAAgG,IAAuD,EAAe,SAAS,EAAU,CAAC,EAAU,KAAQ,OAAO,EAAU,OAAU,SAAS,EAAU,MAAS,QAAQ,EAAU,IAAO,MAAM,EAAU,IAAO,MAAM,EAAU,SAAY,WAAW,EAAU,OAAU,SAAS,EAAU,SAAY,WAAW,EAAU,MAAS,QAAQ,EAAU,KAAQ,OAAO,EAAU,KAAQ,OAAO,EAAU,MAAS,QAAQ,EAAU,KAAQ,OAAO,EAAU,cAAiB,iBAAiB,EAAU,SAAY,WAAW,EAAU,OAAU,WAAY,AAAY,IAAU,EAAE,CAAE,CAI1vB,EAAQ,KAYR,EAAS,EAAQ,SAAkB,CAAC,MAAI,SAAO,cAAY,aAAW,OAAK,SAAO,SAAO,SAAO,eAAa,cAAY,QAAM,YAAU,CAAC,GAAK,CAAC,GAAQ,GAAUC,EAAS,GAAM,CAAM,CAAC,EAAU,GAAYA,EAAS,GAAM,CAAM,CAAC,EAAS,GAAUA,EAAS,KAAK,CAAM,CAAC,eAAe,EAAoB,WAAW,EAAgB,aAAa,GAAkB,cAAc,GAAmB,YAAY,GAAiB,QAAQ,EAAa,aAAa,EAAkB,aAAa,EAAkB,aAAa,GAAmB,EAAO,MAAW,CAAC,eAAe,GAAoB,WAAW,GAAgB,aAAa,GAAkB,cAAc,GAAmB,YAAY,GAAiB,QAAQ,EAAa,aAAa,EAAkB,aAAa,EAAkB,YAAY,EAAiB,aAAa,GAAmB,EAAO,MAAW,CAAC,eAAe,EAAqB,WAAW,EAAiB,aAAa,EAAmB,cAAc,GAAoB,YAAY,GAAkB,QAAQ,EAAc,aAAa,GAAmB,aAAa,EAAmB,aAAa,GAAoB,EAAO,OAAa,EAAkB,EAAoB,GAAG,EAAgB,KAAK,GAAkB,KAAK,GAAmB,KAAK,GAAiB,IAAI,GAAG,EAAa,KAAK,EAAa,KAAK,EAAa,KAAK,EAAa,IAAU,EAAkB,GAAoB,GAAG,GAAgB,KAAK,GAAkB,KAAK,GAAmB,KAAK,GAAiB,IAAI,GAAG,EAAa,KAAK,EAAa,KAAK,EAAa,KAAK,EAAa,IAAU,GAAmB,EAAqB,GAAG,EAAiB,KAAK,EAAmB,KAAK,GAAoB,KAAK,GAAkB,IAAI,GAAG,EAAc,KAAK,EAAc,KAAK,EAAc,KAAK,EAAc,IAAU,EAAO,IAAW,CAAO,OAAc,CAA8C,GAAjC,EAAW,GAAM,CAAC,EAAS,KAAK,CAAI,IAAa,QAAQ,GAAM,CAAC,GAAQ,CAAC,GAAK,CAAC,EAAK,GAAM,EAAK,MAAM,IAAI,CAAM,CAAC,UAAQ,iBAAe,GAA0B,EAAO,OAAO,EAAK,CAA0D,GAAtD,GAAS,EAAO,SAAS,EAAQ,EAAK,EAAc,CAAK,GAAc,EAAK,CAA6C,OAA3C,EAAS,GAAK,CAAC,EAAa,MAAM,QAAQ,CAAQ,KAAuB,EAAaM,EAAY,GAAO,CAAC,EAAS,GAAM,EAAG,EAAE,CAAC,CAAO,EAAYA,GAAa,EAAM,IAAQ,CAAC,EAAS,EAAM,KAAK,EAAG,EAAE,CAAC,CAAO,EAAWA,EAAY,GAAO,CAAC,EAAS,KAAK,CAAC,EAAS,GAAM,EAAG,EAAE,CAAC,CAAO,GAAaA,EAAY,GAAO,CACn5E,GADo5E,EAAM,gBAAgB,CACv6E,EAAU,OAAO,EAAW,GAAK,CAAC,EAAS,GAAM,CAAC,IAAM,EAAQ,IAAI,QAAQ,GAAG,EAAc,IAAI,GAAK,CAAC,EAAI,KAAS,OAAO,QAAQ,EAAa,CAAE,EAAQ,OAAO,EAAI,EAAM,CAAG,IAAM,EAAS,IAAI,SAAS,EAAM,OAAO,CAAK,EAAe,CAAQ,SAAe,UAAQ,CAAC,GAAG,IAAS,MAAM,CAChS,IAAM,EAAgB,IAAI,gBAAgB,IAAI,GAAK,CAAC,EAAK,KAAU,EAAU,EAAgB,OAAO,EAAK,EAAO,UAAU,CAAC,CAAE,IAAM,EAAY,EAAgB,UAAU,CAAC,GAAK,EAAY,IAAI,IAAc,WAAS,EAAQ,OAAO,eAAe,EAAY,CAAI,IAAc,oBAAoB,EAAQ,OAAO,SAAS,mBAAmB,CAAK,IAAc,oCAAoC,CAAC,IAAM,EAAiB,IAAI,gBAAgB,IAAI,GAAK,CAAC,EAAM,KAAU,EAAU,EAAiB,OAAO,EAAM,EAAO,UAAU,CAAC,CAAE,GAAG,EAAa,IAAI,GAAK,CAAC,EAAK,KAAU,OAAO,QAAQ,EAAY,CAAE,EAAiB,OAAO,EAAK,EAAO,UAAU,CAAC,CAAG,EAAe,KAAQ,EAAiB,UAAU,SAAU,IAAc,mBAAmB,CAAC,IAAM,EAAW,EAAE,CAAC,IAAI,GAAK,CAAC,EAAM,KAAU,EAAU,EAAW,GAAO,EAAQ,GAAG,EAAa,IAAI,GAAK,CAAC,EAAK,KAAU,OAAO,QAAQ,EAAY,CAAE,EAAW,GAAM,EAAS,EAAe,KAAQ,KAAK,UAAU,EAAW,CAAG,MAAM,EAAI,EAAe,CAAC,KAAK,GAAU,CAAC,IAAM,EAAW,EAAS,OAAaJ,EAAY,EAAS,QAAQ,IAAI,eAAe,CAAC,GAAGA,GAAaA,EAAY,SAAS,mBAAmB,CAAE,OAAO,EAAS,MAAM,CAAC,KAAK,IAAO,CAAC,aAAW,OAAK,EAAE,IAAUA,GAAaA,EAAY,SAAS,aAAa,CAAE,OAAO,EAAS,MAAM,CAAC,KAAK,IAAO,CAAC,aAAW,OAAK,EAAE,CAAO,MAAU,MAAM,4BAA4B,EAAI,CAAC,MAAM,CAAC,aAAW,UAAQ,CAAC,GAAG,GAAY,KAAK,EAAW,IAC35C,EAAW,GAAM,CAAC,EAAM,OAAO,OAAO,CACtC,IAAW,CAAI,IAAa,WAAU,KAAoD,MACjC,MAAU,MAAlD,wCAAqE,EAAI,CAAC,MAAM,GAAO,CAAC,QAAQ,MAAM,EAAM,CAAC,EAAS,GAAK,CAAC,EAAW,GAAM,CAAC,EAAa,MAAM,QAAQ,EAAG,EAAG,CAAC,EAAS,EAAU,CAAC,CAC/M,EAAa,IAAsB,CACnC,GAAkB,EAAO,MAAM,aAAa,GAAG,EAAkB,QAAQ,KAAK,EAAkB,QAAQ,KAAK,EAAkB,WAAW,KAAK,EAAkB,cAAc,KAAW,GAAkB,EAAO,MAAM,aAAa,eAAe,EAAkB,YAAY,KAAK,EAAkB,cAAc,KACxT,EAAqB,EAAO,MAAM,YAAY,eAAe,EAAiB,eAAe,KAAK,EAAiB,aAAa,KAAW,GAAmB,EAAO,MAAM,YAAY,eAAe,EAAiB,aAAa,KAAK,EAAiB,aAAa,KAAW,EAAkB,EAAO,MAAM,aAAa,GAAG,EAAkB,QAAQ,KAAK,EAAkB,QAAQ,KAAK,EAAkB,WAAW,KAAK,EAAkB,cAAc,KAAW,EAAkB,EAAO,MAAM,aAAa,eAAe,EAAkB,YAAY,KAAK,EAAkB,cAAc,KAC1kB,GAAmB,EAAO,OAAO,aAAa,GAAG,EAAmB,QAAQ,KAAK,EAAmB,QAAQ,KAAK,EAAmB,WAAW,KAAK,EAAmB,cAAc,KAAW,GAAmB,EAAO,OAAO,aAAa,eAAe,EAAmB,YAAY,KAAK,EAAmB,cAAc,KAClU,GAAa,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,SAAS,GAAG,CAAC,CAAC,CAAO,GAAc,CAAC,QAAQ,CAAC,UAAU,EAAiB,EAAqB,EAAkB,EAAkB,CAAC,CAAC,QAAQ,CAAC,UAAU,EAAiB,GAAmB,EAAkB,EAAkB,CAAC,CAAC,CAAO,GAAM,GAAY,EAAM,MAAyC,EAAM,QAAQ,CAAC,QAAQ,EAAM,KAAK,MAAM,CAAC,aAAa,WAAW,UAAU,aAAa,QAAQ,EAAkB,aAAa,EAAkB,SAAS,GAAG,GAAG,EAAO,MAAM,KAAK,WAAW,EAAO,MAAM,KAAK,MAAM,EAAO,MAAM,MAAM,UAAU,EAAiB,GAAkB,GAAkB,CAAC,CAAC,SAAS,CAAC,EAAM,MAAM,GAAa,EAAM,SAAS,CAAC,CAAC,CAAC,CAAzX,KAAkY,EAAa,GAAe,EAAM,WAAW,EAAO,KAAK,QAAQ,EAAO,KAAK,QAAQ,EAAM,WAAmB,OAAmC,EAAO,QAAQ,EAAI,IAAQ,EAAI,OAAO,EAAM,WAAW,CAAC,EAAE,GAAkC,EAAO,KAAK,QAAQ,EAAwB,EAAE,EAAO,KAAK,QAAgB,GAAU,GAA6B,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,WAAW,QAAQ,EAAa,EAAM,GAAG,CAAC,SAAS,CAAC,GAAM,EAAM,CAAe,EAAK,EAAO,MAAM,CAAC,KAAK,EAAM,KAAK,KAAK,EAAM,KAAK,aAAa,EAAM,MAAM,YAAY,EAAM,YAAY,UAAU,GAAG,EAAQ,sBAAsB,SAAS,EAAa,QAAQ,GAAO,EAAY,EAAM,EAAM,CAAC,OAAO,EAAW,aAAa,MAAM,eAAe,MAAM,YAAY,MAAM,WAAW,QAAQ,SAAS,EAAM,SAAS,MAAM,CAAC,GAAG,EAAa,QAAQ,EAAkB,aAAa,EAAkB,SAAS,GAAG,GAAG,EAAO,MAAM,KAAK,WAAW,EAAO,MAAM,KAAK,MAAM,EAAO,MAAM,MAAM,UAAU,EAAiB,EAAqB,EAAkB,EAAkB,CAAC,CAAC,SAAS,GAAc,QAAQ,GAAM,QAAQ,IAAW,EAAM,KAAK,UAAU,UAAU,WAAW,CAAC,SAAS,GAAG,CAAC,IAAI,EAAM,IAAI,IAAI,EAAM,IAAI,KAAK,EAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAS,GAAc,GAA6B,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,WAAW,QAAQ,EAAa,EAAM,GAAG,CAAC,SAAS,CAAC,GAAM,EAAM,CAAe,EAAK,EAAO,SAAS,CAAC,KAAK,EAAM,KAAK,aAAa,EAAM,MAAM,YAAY,EAAM,YAAY,UAAU,GAAG,EAAQ,sBAAsB,SAAS,EAAa,QAAQ,GAAO,EAAY,EAAM,EAAM,CAAC,OAAO,EAAW,aAAa,MAAM,eAAe,MAAM,YAAY,MAAM,WAAW,QAAQ,SAAS,EAAM,SAAS,MAAM,CAAC,GAAG,EAAa,QAAQ,EAAkB,aAAa,EAAkB,SAAS,GAAG,GAAG,EAAO,MAAM,KAAK,WAAW,EAAO,MAAM,KAAK,MAAM,EAAO,MAAM,MAAM,UAAU,EAAiB,EAAqB,EAAkB,EAAkB,CAAC,CAAC,SAAS,GAAc,QAAQ,GAAM,QAAQ,IAAW,EAAM,KAAK,UAAU,UAAU,WAAW,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAS,GAAY,GAAiB,EAAQ,IAAI,GAA8B,EAAK,SAAS,CAAC,MAAM,EAAO,MAAM,SAAS,EAAO,KAAK,CAAC,CAAG,CAAS,GAAY,GAAO,CAAC,IAAI,EAAQ,EAAE,CAA8G,OAA1G,EAAM,aAAa,EAAQ,KAAK,CAAC,KAAK,EAAM,YAAY,MAAM,GAAG,CAAC,CAAE,EAAQ,EAAQ,OAAO,EAAM,QAAQ,CAAsB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,WAAW,QAAQ,EAAa,EAAM,GAAG,CAAC,SAAS,CAAC,GAAM,EAAM,CAAe,EAAM,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,QAAQ,eAAe,CAAC,SAAS,CAAe,EAAK,MAAM,CAAC,MAAM,CAAC,GAAG,GAAc,YAAY,GAAG,EAAO,MAAM,MAAM,sCAAsC,CAAC,CAAC,CAAe,EAAK,EAAO,OAAO,CAAC,KAAK,EAAM,KAAK,YAAY,EAAM,YAAY,UAAU,GAAG,EAAQ,sBAAsB,SAAS,EAAa,QAAQ,GAAO,EAAY,EAAM,EAAM,CAAC,OAAO,EAAW,aAAa,MAAM,eAAe,MAAM,YAAY,MAAM,WAAW,QAAQ,SAAS,EAAM,SAAS,MAAM,CAAC,GAAG,EAAa,QAAQ,EAAkB,aAAa,EAAkB,SAAS,GAAG,GAAG,EAAO,MAAM,KAAK,WAAW,EAAO,MAAM,KAAK,MAAM,EAAO,MAAM,MAAM,UAAU,EAAiB,EAAqB,EAAkB,EAAkB,CAAC,CAAC,SAAS,GAAc,QAAQ,GAAM,QAAQ,IAAW,EAAM,KAAK,UAAU,UAAU,WAAW,CAAC,SAAS,GAAG,CAAC,SAAS,EAAU,SAAS,GAAY,EAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAG,SAAS,GAAc,EAAM,CAAC,OAAqB,EAAK,MAAM,CAAC,MAAM,CAAC,WAAW,QAAQ,EAAa,EAAM,GAAG,CAAC,SAAuB,EAAM,QAAQ,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,SAAS,SAAS,GAAG,GAAG,EAAO,MAAM,KAAK,WAAW,EAAO,MAAM,KAAK,MAAM,EAAO,MAAM,MAAM,CAAC,SAAS,CAAe,EAAK,EAAO,MAAM,CAAC,KAAK,EAAM,KAAK,KAAK,WAAW,MAAM,EAAM,OAAO,KAAK,SAAS,EAAM,SAAS,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAC,CAAC,EAAM,MAAM,CAAC,CAAC,CAAC,CAAC,CAAE,SAAS,GAAW,EAAM,CAAC,OAAqB,EAAK,MAAM,CAAC,MAAM,CAAC,WAAW,QAAQ,EAAa,EAAM,GAAG,CAAC,SAAuB,EAAM,QAAQ,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,SAAS,SAAS,GAAG,GAAG,EAAO,MAAM,KAAK,WAAW,EAAO,MAAM,KAAK,MAAM,EAAO,MAAM,MAAM,CAAC,SAAS,CAAe,EAAK,EAAO,MAAM,CAAC,KAAK,EAAM,KAAK,KAAK,QAAQ,MAAM,EAAM,OAAO,KAAK,SAAS,EAAM,SAAS,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAC,CAAC,EAAM,MAAM,CAAC,CAAC,CAAC,CAAC,CAAE,IAAM,GAAW,EAAO,IAAI,GAAO,CAAC,IAAI,EAAa,KAA0U,MAArU,CAAsS,EAAnS,EAAM,OAAO,EAAU,OAAqB,GAAY,EAAM,CAAU,EAAM,OAAO,EAAU,SAAuB,GAAc,EAAM,CAAU,EAAM,OAAO,EAAU,SAAuB,GAAc,EAAM,CAAU,EAAM,OAAO,EAAU,MAAoB,GAAW,EAAM,CAAoB,GAAU,EAAM,CAAS,GAAe,CAAC,OAAqB,EAAK,EAAO,IAAI,CAAC,MAAM,CAAC,GAAG,EAAM,GAAGC,GAAgB,oCAAoC,EAAO,MAAM,iBAAiB,CAAC,SAAS,GAAa,QAAQ,EAAa,SAAuB,EAAM,OAAO,CAAC,MAAM,CAAC,MAAM,OAAO,QAAQ,OAAO,oBAAoB,EAAO,KAAK,QAAQ,GAAG,IAAe,GAAG,EAAE,WAAW,UAAU,EAAO,KAAK,QAAQ,QAAQ,IAAI,GAAG,EAAO,KAAK,OAAO,KAAK,EAAO,KAAK,UAAU,IAAI,WAAW,EAAO,KAAK,KAAK,CAAC,SAAS,GAAa,OAAO,OAAO,SAAS,CAAC,GAAyB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,QAAQ,IAAe,GAAG,CAAC,SAAS,CAAC,CAAC,EAAO,cAAc,GAAyB,EAAK,GAAQ,CAAC,aAAa,EAAO,aAAa,eAAe,EAAqB,WAAW,EAAiB,aAAa,EAAmB,QAAQ,EAAc,MAAM,EAAO,MAAM,MAAM,CAAC,CAAC,EAAO,cAA4B,EAAK,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,QAAQ,OAAO,cAAc,SAAS,CAAC,SAAuB,EAAM,MAAM,CAAC,MAAM,CAAC,OAAO,OAAO,QAAQ,OAAO,SAAS,WAAW,UAAU,EAAO,OAAO,MAAM,CAAC,SAAS,CAAe,EAAK,EAAO,MAAM,CAAC,KAAK,SAAS,MAAM,EAAO,MAAM,MAAM,CAAC,GAAG,EAAa,MAAM,OAAO,OAAO,OAAO,OAAO,UAAU,QAAQ,GAAmB,aAAa,GAAmB,WAAW,EAAO,OAAO,WAAW,SAAS,GAAG,GAAG,EAAO,OAAO,KAAK,WAAW,EAAO,OAAO,KAAK,MAAM,EAAO,OAAO,MAAM,OAAO,EAAE,UAAU,EAAiB,GAAmB,GAAmB,CAAC,CAAC,CAAC,CAAC,GAAyB,EAAK,MAAM,CAAC,MAAM,CAAC,aAAa,GAAmB,SAAS,WAAW,QAAQ,OAAO,eAAe,SAAS,WAAW,SAAS,MAAM,OAAO,OAAO,OAAO,MAAM,EAAE,OAAO,EAAE,MAAM,EAAO,OAAO,MAAM,WAAW,EAAO,OAAO,KAAK,UAAU,EAAiB,GAAmB,GAAmB,CAAC,CAAC,SAAuB,EAAK,GAAQ,CAAC,MAAM,EAAO,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAG,CAAC,IAAI,EAAQ,iGAAkG,CAAC,CAAO,GAAQ,GAAO,CAAC,IAAM,EAAgB,EAAM,aAAoI,EAAE,CAAzH,CAAC,SAAS,WAAW,IAAI,kBAAkB,MAAM,EAAM,oBAAoB,EAAM,kBAAkB,EAAM,aAAa,CAAI,OAAqB,EAAK,EAAO,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,MAAM,GAAG,GAAG,EAAe,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,IAAS,CAAC,SAAuB,EAAK,EAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,SAAuB,EAAM,MAAM,CAAC,MAAM,6BAA6B,MAAM,KAAK,OAAO,KAAK,MAAM,CAAC,KAAK,eAAe,MAAM,EAAM,MAAM,CAAC,SAAS,CAAe,EAAK,OAAO,CAAC,EAAE,2NAA2N,KAAK,eAAe,QAAQ,MAAM,CAAC,CAAe,EAAK,OAAO,CAAC,EAAE,yKAAyK,KAAK,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAS,GAAqB,CAAC,IAAI,CAAC,MAAM,MAAM,KAAK,EAAY,OAAO,CAAC,OAAO,CAAC,KAAK,EAAY,KAAK,aAAa,OAAO,QAAQ,CAAC,MAAM,OAAO,MAAM,QAAQ,SAAS,CAAC,aAAa,CAAC,MAAM,OAAO,MAAM,QAAQ,SAAS,CAAC,CAAC,YAAY,CAAC,KAAK,EAAY,KAAK,aAAa,mBAAmB,QAAQ,CAAC,mBAAmB,oCAAoC,CAAC,aAAa,CAAC,OAAO,wBAAwB,CAAC,OAAO,GAAO,EAAM,SAAS,MAAM,CAAC,OAAO,CAAC,MAAM,SAAS,KAAK,EAAY,MAAM,QAAQ,CAAC,KAAK,EAAY,OAAO,SAAS,CAAC,MAAM,CAAC,MAAM,QAAQ,KAAK,EAAY,OAAO,CAAC,KAAK,CAAC,MAAM,OAAO,KAAK,EAAY,OAAO,CAAC,YAAY,CAAC,MAAM,cAAc,KAAK,EAAY,OAAO,OAAO,GAAO,EAAM,OAAO,WAAW,CAAC,KAAK,CAAC,KAAK,EAAY,KAAK,QAAQ,OAAO,OAAO,EAAU,CAAC,aAAa,OAAO,KAAK,EAAU,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAY,MAAM,MAAM,UAAU,QAAQ,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,SAAS,CAAC,KAAK,CAAC,KAAK,EAAY,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,CAAC,CAAC,CAAC,OAAO,GAAO,EAAM,OAAO,SAAS,CAAC,IAAI,CAAC,KAAK,EAAY,OAAO,OAAO,GAAO,CAAC,EAAc,EAAM,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,EAAY,OAAO,OAAO,GAAO,CAAC,EAAc,EAAM,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,EAAY,OAAO,OAAO,GAAO,CAAC,EAAc,EAAM,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,EAAY,OAAO,CAAC,SAAS,CAAC,KAAK,EAAY,QAAQ,CAAC,WAAW,CAAC,MAAM,WAAW,KAAK,EAAY,KAAK,aAAa,EAAE,wBAAwB,GAAK,0BAA0B,aAAa,QAAQ,CAAC,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,SAAS,KAAK,EAAY,OAAO,SAAS,CAAC,aAAa,CAAC,MAAM,OAAO,KAAK,EAAY,QAAQ,aAAa,GAAK,CAAC,MAAM,CAAC,MAAM,QAAQ,KAAK,EAAY,OAAO,aAAa,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,UAAU,KAAK,EAAY,KAAK,QAAQ,CAAC,OAAO,UAAU,CAAC,aAAa,CAAC,YAAY,eAAe,CAAC,aAAa,OAAO,CAAC,KAAK,CAAC,MAAM,WAAW,KAAK,EAAY,KAAK,OAAO,GAAO,EAAM,aAAa,UAAU,CAAC,SAAS,CAAC,MAAM,SAAS,KAAK,EAAY,aAAa,OAAO,GAAO,EAAM,aAAa,OAAO,CAAC,OAAO,CAAC,KAAK,EAAY,OAAO,SAAS,CAAC,KAAK,CAAC,KAAK,EAAY,OAAO,SAAS,CAAC,KAAK,CAAC,MAAM,OAAO,KAAK,EAAY,MAAM,aAAa,OAAO,CAAC,QAAQ,CAAC,MAAM,UAAU,KAAK,EAAY,KAAK,QAAQ,CAAC,IAAI,IAAI,IAAI,CAAC,wBAAwB,GAAK,CAAC,OAAO,CAAC,MAAM,UAAU,KAAK,EAAY,OAAO,eAAe,GAAK,IAAI,EAAE,aAAa,EAAE,CAAC,UAAU,CAAC,MAAM,UAAU,KAAK,EAAY,OAAO,eAAe,GAAK,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAY,OAAO,SAAS,CAAC,KAAK,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,SAAS,WAAW,CAAC,KAAK,CAAC,MAAM,OAAO,KAAK,EAAY,MAAM,aAAa,cAAc,CAAC,MAAM,CAAC,MAAM,OAAO,KAAK,EAAY,MAAM,aAAa,OAAO,CAAC,QAAQ,CAAC,MAAM,UAAU,KAAK,EAAY,YAAY,UAAU,iBAAiB,aAAa,CAAC,UAAU,mBAAmB,CAAC,aAAa,EAAE,UAAU,CAAC,aAAa,eAAe,gBAAgB,cAAe,CAAC,YAAY,CAAC,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC,MAAM,SAAS,KAAK,EAAY,OAAO,eAAe,GAAK,IAAI,EAAE,aAAa,EAAE,CAAC,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,SAAS,GAAK,SAAS,CAAC,YAAY,CAAC,MAAM,QAAQ,KAAK,EAAY,OAAO,eAAe,GAAK,aAAa,EAAE,CAAC,YAAY,CAAC,MAAM,QAAQ,KAAK,EAAY,MAAM,aAAa,wBAAwB,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,SAAS,GAAK,SAAS,CAAC,YAAY,CAAC,MAAM,QAAQ,KAAK,EAAY,MAAM,aAAa,mBAAmB,CAAC,QAAQ,CAAC,MAAM,WAAW,KAAK,EAAY,OAAO,IAAI,KAAK,IAAI,IAAI,aAAa,EAAE,CAAC,QAAQ,CAAC,MAAM,WAAW,KAAK,EAAY,OAAO,IAAI,KAAK,IAAI,IAAI,aAAa,EAAE,CAAC,WAAW,CAAC,MAAM,WAAW,KAAK,EAAY,OAAO,IAAI,EAAE,IAAI,IAAI,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAY,OAAO,SAAS,CAAC,KAAK,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,SAAS,WAAW,CAAC,iBAAiB,CAAC,MAAM,cAAc,KAAK,EAAY,MAAM,aAAa,qBAAqB,CAAC,KAAK,CAAC,MAAM,OAAO,KAAK,EAAY,MAAM,aAAa,UAAU,CAAC,MAAM,CAAC,MAAM,OAAO,KAAK,EAAY,MAAM,aAAa,OAAO,CAAC,QAAQ,CAAC,MAAM,UAAU,KAAK,EAAY,YAAY,UAAU,iBAAiB,aAAa,CAAC,UAAU,mBAAmB,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,eAAe,gBAAgB,cAAe,CAAC,YAAY,CAAC,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC,MAAM,SAAS,KAAK,EAAY,OAAO,eAAe,GAAK,IAAI,EAAE,aAAa,EAAE,CAAC,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,SAAS,GAAK,SAAS,CAAC,eAAe,CAAC,MAAM,OAAO,KAAK,EAAY,OAAO,eAAe,GAAK,aAAa,EAAE,CAAC,aAAa,CAAC,MAAM,KAAK,KAAK,EAAY,OAAO,eAAe,GAAK,aAAa,EAAE,CAAC,WAAW,CAAC,MAAM,QAAQ,KAAK,EAAY,MAAM,aAAa,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,SAAS,GAAK,SAAS,CAAC,YAAY,CAAC,MAAM,QAAQ,KAAK,EAAY,OAAO,eAAe,GAAK,aAAa,EAAE,CAAC,YAAY,CAAC,MAAM,QAAQ,KAAK,EAAY,MAAM,aAAa,wBAAwB,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,SAAS,GAAK,SAAS,CAAC,YAAY,CAAC,MAAM,QAAQ,KAAK,EAAY,MAAM,aAAa,mBAAmB,CAAC,QAAQ,CAAC,MAAM,WAAW,KAAK,EAAY,OAAO,IAAI,KAAK,IAAI,IAAI,aAAa,EAAE,CAAC,QAAQ,CAAC,MAAM,WAAW,KAAK,EAAY,OAAO,IAAI,KAAK,IAAI,IAAI,aAAa,EAAE,CAAC,WAAW,CAAC,MAAM,WAAW,KAAK,EAAY,OAAO,IAAI,EAAE,IAAI,IAAI,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAY,OAAO,SAAS,CAAC,KAAK,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,SAAS,WAAW,CAAC,KAAK,CAAC,MAAM,OAAO,KAAK,EAAY,MAAM,aAAa,OAAO,CAAC,MAAM,CAAC,MAAM,OAAO,KAAK,EAAY,MAAM,aAAa,OAAO,CAAC,MAAM,CAAC,MAAM,QAAQ,KAAK,EAAY,KAAK,0BAA0B,WAAW,QAAQ,CAAC,aAAa,SAAS,WAAW,UAAW,CAAC,aAAa,CAAC,QAAQ,SAAS,MAAM,UAAU,CAAC,aAAa,UAAU,CAAC,QAAQ,CAAC,MAAM,UAAU,KAAK,EAAY,YAAY,UAAU,iBAAiB,aAAa,CAAC,UAAU,mBAAmB,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,eAAe,gBAAgB,cAAe,CAAC,YAAY,CAAC,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC,MAAM,SAAS,KAAK,EAAY,OAAO,eAAe,GAAK,IAAI,EAAE,aAAa,EAAE,CAAC,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,SAAS,GAAK,SAAS,CAAC,YAAY,CAAC,MAAM,QAAQ,KAAK,EAAY,OAAO,eAAe,GAAK,aAAa,EAAE,CAAC,YAAY,CAAC,MAAM,QAAQ,KAAK,EAAY,MAAM,aAAa,wBAAwB,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,SAAS,GAAK,SAAS,CAAC,YAAY,CAAC,MAAM,QAAQ,KAAK,EAAY,MAAM,aAAa,mBAAmB,CAAC,QAAQ,CAAC,MAAM,WAAW,KAAK,EAAY,OAAO,IAAI,KAAK,IAAI,IAAI,aAAa,EAAE,CAAC,QAAQ,CAAC,MAAM,WAAW,KAAK,EAAY,OAAO,IAAI,KAAK,IAAI,IAAI,aAAa,EAAE,CAAC,WAAW,CAAC,MAAM,WAAW,KAAK,EAAY,OAAO,IAAI,EAAE,IAAI,IAAI,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAoB,EAAS,GAAqB,CAAO,EAAa,CAAC,iBAAiB,OAAO,MAAM,OAAO,OAAO,OAAO,QAAQ,OAAO,OAAO,OAAO,CAAOA,GAAgB,CAAC,SAAS,WAAW,MAAM,OAAO,OAAO,OAAO,QAAQ,OAAO,eAAe,SAAS,WAAW,SAAS,CAAO,GAAc,CAAC,SAAS,WAAW,IAAI,MAAM,MAAM,OAAO,UAAU,mBAAmB,MAAM,IAAI,OAAO,IAAI,YAAY,QAAQ,YAAY,gBAAgB,cAAc,OAAO,CAAsP,EAAS,aAAa,CAAC,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,MAAM,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,YAAY,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,OAAO,MAAM,OAAO,YAAY,OAAO,KAAK,EAAU,KAAK,SAAS,GAAM,CAAC,CAAC,KAAK,QAAQ,MAAM,QAAQ,YAAY,mBAAmB,KAAK,EAAU,MAAM,SAAS,GAAM,CAAC,CAAC,KAAK,UAAU,MAAM,UAAU,YAAY,aAAa,KAAK,EAAU,OAAO,SAAS,GAAM,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,UAAU,MAAM,UAAU,YAAY,GAAG,KAAK,EAAU,SAAS,SAAS,GAAM,CAAC,CAAC,KAAK,QAAQ,MAAM,kCAAkC,KAAK,EAAU,SAAS,SAAS,GAAM,CAAE,CAAC,IAAgB,wBC/C91gB,CACxB,EAAY,oKACZ,EAAkB,CAC3B,SAAU,WACV,MAAO,OACP,OAAQ,OACR,QAAS,OACT,eAAgB,SAChB,WAAY,SACf,CACY,EAAkB,CAC3B,GAAG,EACH,aAAc,EACd,WAAY,0BACZ,MAAO,OACP,OAAQ,kBACR,cAAe,SAClB,CAGa,EAAY,aAGZ,EAAY,aAGZ,EAAY,aAIhB,EAAY,OASR,EAAY,QAOZ,EAAY,OAMZ,EAAY,QClD1B,SAAgB,GAAW,EAAS,EAAS,CACzC,OAAO,GAA0B,GAAM,EAAS,EAAQ,CAE5D,SAAgB,GAAU,EAAQ,EAAS,CACvC,OAAO,GAA0B,GAAO,EAAQ,EAAQ,CAE5D,SAAS,GAA0B,EAAM,EAAU,EAAU,GAAM,CAC/D,IAAM,EAAa,GAAgC,CACnD,MAAc,CACN,GAAW,IAAe,GAAM,GAAU,EAC/C,CACC,EACH,CAAC,mBAdkD,IACtB,ICM9B,SAAgB,GAAY,EAAM,CAClC,IAAM,EAAME,EAAO,KAAK,CAIxB,OAHI,EAAI,UAAY,OAChB,EAAI,QAAU,GAAM,EAEjB,EAAI,yBAZgB,iBCAA,mBCAM,CACxB,EAAiB,GAAI,aAAa,kBCDhB,iBCAM,qBCAL,ICGhC,SAAgB,EAAY,EAAO,EAAU,CACzC,MACI,EAAc,EAAM,CAAG,EAAM,SAAS,EAAS,CAAG,IAAA,GACrD,mBAN6B,IAE+F,ICGjI,SAAgB,GAAiB,EAAS,CACtC,IAAM,EAAU,KAAK,MAAM,EAAU,GAAG,CAClC,EAAI,KAAK,MAAM,EAAU,GAAG,CAClC,OAAO,EAAU,KAAO,EAAI,GAAK,IAAM,IAAM,oBCFjD,SAAgB,GAAmB,EAAY,EAAS,CAIpD,IAAM,EAAaA,EAAO,EAAQ,CAC5B,EAAYA,GAAQ,CACpB,EAAkBA,EAAO,GAAM,CAC/B,EAAa,EAAa,SAAS,GAAK,EAAa,OAErD,EAAgB,GAA0D,aAAgB,EAAQ,aAAe,EAAE,CAEnH,EAAWC,EAAY,GAA0D,SAAU,CAC7F,GAAG,EACN,CAAC,CAEI,EAAcA,EAAa,GAAgB,EAAW,SAAmD,UAAa,EAAW,QAAQ,UAAUC,EAAM,CAAGA,EAChK,EAAE,CAAC,CAEC,EAAQ,OAAgB,EAAc,EAAW,CAAG,EAAa,EAAY,EAAY,EAAW,CAAC,CAC1G,CAuBD,OArBA,MAAc,CACV,GAAI,CAAC,EAAc,EAAW,EAAI,EAAgB,QAAS,CACvD,IAAI,EACJ,IAAM,EAAW,EAAY,EAAW,EACvC,EAAO,EAAU,UAAa,MAAmC,EAAK,MAAM,CAEzE,GAAU,EAAS,EAAU,EAAM,CAE1B,EAAW,SAAqD,SAAY,CAAC,EAGtF,EAAU,QAAUC,EAAQ,EAAO,EAAkB,EAAW,SAAqD,WAAW,CAEhI,EAAM,IAAI,EAAS,CAG3B,EAAgB,QAAU,IAC3B,CACC,EACA,GAAG,EACN,CAAC,CACK,mBAhD4C,IACK,IAEqE,IAEJ,ICJkM,SAAgB,EAAgB,EAAM,CAAC,GAAK,CAAC,aAAW,QAAQ,WAAS,GAAG,aAAW,IAAI,OAAK,IAAO,EAAY,EAAe,EAAY,GAAkB,EAAgB,IAAI,EAAW,GAAG,EAAe,MAAM,EAAW,KAAK,IAAkB,EAAgB,EAAW,CAAC,WAAS,aAAW,WAAW,EAAgB,CAAC,CAAC,WAAS,aAAW,CAAO,EAAiB,SAAS,CAAC,MAAM,EAAU,0BAA0B,CAAC,UAAU,IAAa,UAAU,EAAW,GAAG,IAAiB,MAAM,EAAW,GAAG,EAAe,aAAa,GAAI,CAAC,CAAC,MAAM,GAAG,QAAQ,MAAM,EAAE,CAAC,EAA6E,OAA1E,MAAc,CAAI,GAAK,GAAkB,EAAG,CAAC,EAAK,EAAW,EAAW,CAAC,CAAQ,qBAA56B,IAA6B,IAAoH,CAAM,EAAY,CAAC,IAAI,OAAO,IAAI,cAAc,IAAI,QAAQ,IAAI,UAAU,IAAI,SAAS,IAAI,YAAY,IAAI,OAAO,IAAI,aAAa,IAAI,QAAQ,kBCD9R,IACM,iBCDP,ICE/B,SAAgB,GAAU,EAAO,CAC7B,GAAM,CAAE,eAAe,sBAAsB,gBAAgB,iBAAiB,oBAAoB,oBAAwB,EAU1H,OAToBC,MAAY,EAAsB,GAAG,EAAc,KAAK,EAAe,KAAK,EAAkB,KAAK,EAAiB,IAAM,GAAG,EAAa,IAC5J,CACE,EACA,EACA,EACA,EACA,EACA,EACH,CAAC,CA2BN,SAAgB,EAAW,EAAO,CAC9B,GAAM,CAAE,UAAU,iBAAiB,aAAa,eAAe,gBAAgB,eAAmB,EAUlG,OATqBA,MAAY,EAAiB,GAAG,EAAW,KAAK,EAAa,KAAK,EAAc,KAAK,EAAY,IAAM,EAC1H,CACE,EACA,EACA,EACA,EACA,EACA,EACH,CAAC,uBAjD0B,IACK,CAcxB,EAAsB,CAC/B,aAAc,CACV,MAAO,SACP,KAAM,EAAY,YAClB,UAAW,sBACX,aAAc,CACV,SACA,oBACH,CACD,UAAW,CACP,gBACA,iBACA,oBACA,mBACH,CACD,YAAa,CACT,KACA,KACA,KACA,KACH,CACD,IAAK,EACR,CACJ,CAcY,EAAiB,CAC1B,QAAS,CACL,KAAM,EAAY,YAClB,UAAW,iBACX,aAAc,CACV,UACA,mBACH,CACD,UAAW,CACP,aACA,eACA,gBACA,cACH,CACD,YAAa,CACT,IACA,IACA,IACA,IACH,CACD,IAAK,EACL,MAAO,UACV,CACJ,iBC3E4M,KAAiJ,IAAwH,IAAgJ,IAA4H,IAA+I,IAAgI,IAA6H,KAAyI,IAAoI,IAAsI,IAAgI,KAA6J,IAAsI,KAAkK"}