{"version":3,"file":"TextAreaControl.CJu2mJUA.mjs","names":["useState","useRef","useMemo","useCallback"],"sources":["https:/framerusercontent.com/modules/YLdmDVt8TgYPkRUv9Qaj/yMfesKLFrD5KxNAxY6uC/TextAreaControl.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{AnimatePresence,motion}from\"framer-motion\";import{useCallback,useEffect,useMemo,useRef,useState}from\"react\";import{useConditionArray,CONDITION_ARRAY_CONTROL}from\"https://framer.com/m/ConditionalLogicUtil-69lIOW.js\";// ============================================================================\n// DEFAULTS\n// ============================================================================\nconst DEFAULT_VALIDATION={minLength:0,maxLength:0,liveValidation:false,showBrowserTooltip:false,requiredMessage:\"\",minLengthMessage:\"\",maxLengthMessage:\"\"};const DEFAULT_LABEL={show:true,requiredMark:\"*\",font:{fontSize:12,fontWeight:\"500\",lineHeight:\"1.2em\"},color:\"#888888\"};const DEFAULT_LAYOUT={direction:\"vertical\",gap:8,labelWidth:120};const DEFAULT_TEXTAREA_STYLE={font:{fontSize:14,lineHeight:1.4},color:\"#999999\",placeholderColor:\"#999999\",background:\"rgba(187,187,187,0.15)\",padding:\"12px 15px 12px 12px\",border:{borderWidth:1,borderStyle:\"solid\",borderColor:\"rgba(0,0,0,0.06)\"},radius:\"10px\",shadow:\"\"};const DEFAULT_FOCUS_STYLE={borderColor:\"#3B82F6\",shadow:\"\",scale:1};const DEFAULT_ERROR_STYLE={color:\"#dc2626\",font:{fontSize:12,lineHeight:1.4}};// ============================================================================\n// MAIN COMPONENT\n// ============================================================================\n/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n * @framerIntrinsicWidth 300\n * @framerIntrinsicHeight 140\n * @framerDisableUnlink\n */export default function TextAreaControl(props){const{name,labelText,placeholder,required,defaultValue,rows,resize,validation,label,layout,textareaStyle,focusStyle,errorStyle,conditions,_meta,style}=props;// Merge configs with defaults\nconst validationConfig={...DEFAULT_VALIDATION,...validation||{}};const labelConfig={...DEFAULT_LABEL,...label||{},font:{...DEFAULT_LABEL.font,...label&&label.font||{}}};const layoutConfig={...DEFAULT_LAYOUT,...layout||{}};const textareaStyleConfig={...DEFAULT_TEXTAREA_STYLE,...textareaStyle||{},font:{...DEFAULT_TEXTAREA_STYLE.font,...textareaStyle&&textareaStyle.font||{}},border:{...DEFAULT_TEXTAREA_STYLE.border,...textareaStyle&&textareaStyle.border||{}}};const focusStyleConfig={...DEFAULT_FOCUS_STYLE,...focusStyle||{}};const errorStyleConfig={...DEFAULT_ERROR_STYLE,...errorStyle||{},font:{...DEFAULT_ERROR_STYLE.font,...errorStyle&&errorStyle.font||{}}};const fieldName=name||\"textarea\";const currentLabelText=labelText||\"Message\";const inputId=`field-${fieldName}`;const errorId=`error-${fieldName}`;const[value,setValue]=useState(defaultValue);const[error,setError]=useState(\"\");const[isFocused,setIsFocused]=useState(false);const textareaRef=useRef(null);const isCanvas=RenderTarget.current()===RenderTarget.canvas;const Wrapper=isCanvas?\"div\":motion.div;const conditionItems=useMemo(()=>conditions||[],[conditions]);const handleValueReset=useCallback(()=>{setValue(\"\");setError(\"\");},[]);const{isVisible,isRequired,isReadOnly,isDisabled}=useConditionArray(conditionItems,\"\",isCanvas,handleValueReset);const effectiveRequired=conditionItems.some(c=>c.type===\"required\")?isRequired:required;const effectiveReadOnly=conditionItems.some(c=>c.type===\"readOnly\")?isReadOnly:false;const effectiveDisabled=conditionItems.some(c=>c.type===\"disable\")?isDisabled:false;const parsedMeta=useMemo(()=>{if(!_meta)return null;try{return JSON.parse(_meta);}catch{return null;}},[_meta]);void parsedMeta;useEffect(()=>{setValue(defaultValue);},[defaultValue]);// ========================================================================\n// VALIDATION HELPERS\n// ========================================================================\nconst applyTokens=useCallback((template,fallback)=>{const source=template?.trim()?template:fallback;const tokens={label:currentLabelText||fieldName,name:fieldName,min:`${validationConfig.minLength}`,max:`${validationConfig.maxLength}`,count:`${value.length}`};return source.replace(/\\{(label|name|min|max|count)\\}/g,(_,key)=>{return tokens[key]??\"\";});},[currentLabelText,fieldName,validationConfig.maxLength,validationConfig.minLength,value.length]);const hasCustomMessages=Boolean(validationConfig.requiredMessage.trim()||validationConfig.minLengthMessage.trim()||validationConfig.maxLengthMessage.trim());const resolveMessage=useCallback(el=>{if(el.validity.valueMissing){return applyTokens(validationConfig.requiredMessage,`${currentLabelText||fieldName} is required`);}if(el.validity.tooShort){return applyTokens(validationConfig.minLengthMessage,`Minimum ${validationConfig.minLength} characters required`);}if(el.validity.tooLong){return applyTokens(validationConfig.maxLengthMessage,`Maximum ${validationConfig.maxLength} characters allowed`);}return el.validationMessage;},[applyTokens,fieldName,currentLabelText,validationConfig.maxLength,validationConfig.maxLengthMessage,validationConfig.minLength,validationConfig.minLengthMessage,validationConfig.requiredMessage]);const validate=useCallback(()=>{const el=textareaRef.current;if(!el)return;el.setCustomValidity(\"\");if(!el.validity.valid){const message=resolveMessage(el);setError(message);if(hasCustomMessages){el.setCustomValidity(message);}}else{setError(\"\");}},[hasCustomMessages,resolveMessage]);// ========================================================================\n// EVENT HANDLERS\n// ========================================================================\nconst handleFocus=useCallback(()=>{setIsFocused(true);setError(\"\");},[]);const handleBlur=useCallback(()=>{setIsFocused(false);validate();},[validate]);const handleChange=useCallback(event=>{const nextValue=event.currentTarget.value;setValue(nextValue);if(validationConfig.liveValidation){validate();return;}if(error){const el=textareaRef.current;if(el&&el.validity.valid){setError(\"\");el.setCustomValidity(\"\");}}},[error,validate,validationConfig.liveValidation]);const handleInvalid=useCallback(event=>{if(!validationConfig.showBrowserTooltip){event.preventDefault();}validate();},[validate,validationConfig.showBrowserTooltip]);// ========================================================================\n// STYLES\n// ========================================================================\nconst wrapperVariants={idle:{borderColor:textareaStyleConfig.border?.borderColor||\"#D1D5DB\",boxShadow:textareaStyleConfig.shadow||\"none\",scale:1},focused:{borderColor:focusStyleConfig.borderColor,boxShadow:focusStyleConfig.shadow||\"none\",scale:focusStyleConfig.scale},error:{borderColor:errorStyleConfig.color,boxShadow:\"0 0 0 3px rgba(239,68,68,0.2)\",scale:1}};const wrapperState=error?\"error\":isFocused?\"focused\":\"idle\";const describedBy=error?errorId:undefined;const containerStyle={display:\"flex\",flexDirection:layoutConfig.direction===\"horizontal\"?\"row\":\"column\",alignItems:layoutConfig.direction===\"horizontal\"?\"flex-start\":\"stretch\",gap:`${layoutConfig.gap}px`,width:\"100%\",...style};const normalizedLabelFontWeight=(()=>{const current=labelConfig.font?.fontWeight;if(current===undefined||current===null||current===\"\"||current===\"normal\"||current===\"regular\"||current===400||current===\"400\"){return 500;}return current;})();const labelStyle={...labelConfig.font,fontWeight:normalizedLabelFontWeight,color:labelConfig.color,flexShrink:0,...layoutConfig.direction===\"horizontal\"?{width:`${layoutConfig.labelWidth}px`,paddingTop:\"12px\"}:{}};const textareaWrapperStyle={...textareaStyleConfig.border,borderWidth:textareaStyleConfig.border?.borderWidth||1,borderStyle:textareaStyleConfig.border?.borderStyle||\"solid\",borderColor:textareaStyleConfig.border?.borderColor||\"#D1D5DB\",borderRadius:textareaStyleConfig.radius,backgroundColor:textareaStyleConfig.background,padding:textareaStyleConfig.padding,boxShadow:textareaStyleConfig.shadow||\"none\",opacity:1};const textareaElementStyle={...textareaStyleConfig.font,color:textareaStyleConfig.color,opacity:1,border:\"none\",outline:\"none\",width:\"100%\",boxSizing:\"border-box\",backgroundColor:\"transparent\",padding:0,margin:0,resize:resize||\"vertical\",minHeight:\"60px\"};const errorMessageStyle={...errorStyleConfig.font,color:errorStyleConfig.color,marginTop:\"6px\",overflow:\"hidden\"};// ========================================================================\n// RENDER\n// ========================================================================\nif(!isVisible)return null;return /*#__PURE__*/_jsxs(\"div\",{style:{...containerStyle,opacity:effectiveDisabled?.5:effectiveReadOnly?.6:1,cursor:effectiveDisabled||effectiveReadOnly?\"not-allowed\":undefined},children:[labelConfig.show&&currentLabelText&&/*#__PURE__*/_jsxs(\"label\",{htmlFor:inputId,style:labelStyle,children:[currentLabelText,effectiveRequired&&/*#__PURE__*/_jsx(\"span\",{style:{color:errorStyleConfig.color,marginLeft:\"2px\"},children:labelConfig.requiredMark||\"*\"})]}),/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,minWidth:0,width:\"100%\"},children:[/*#__PURE__*/_jsx(\"style\",{children:`.fp-textarea-control__textarea::placeholder { color: ${textareaStyleConfig.placeholderColor}; opacity: 1; }`}),/*#__PURE__*/_jsx(Wrapper,{...!isCanvas&&{animate:wrapperState,variants:wrapperVariants,transition:{duration:.2,ease:\"easeOut\"}},style:textareaWrapperStyle,children:/*#__PURE__*/_jsx(\"textarea\",{ref:textareaRef,id:inputId,name:fieldName,placeholder:placeholder,required:effectiveRequired,disabled:effectiveDisabled,readOnly:effectiveReadOnly,value:value,rows:rows||4,minLength:validationConfig.minLength>0?validationConfig.minLength:undefined,maxLength:validationConfig.maxLength>0?validationConfig.maxLength:undefined,onFocus:handleFocus,onBlur:handleBlur,onInput:handleChange,onChange:handleChange,onInvalid:handleInvalid,\"aria-invalid\":error?\"true\":undefined,\"aria-describedby\":describedBy,className:\"fp-textarea-control__textarea\",style:textareaElementStyle})}),/*#__PURE__*/_jsx(AnimatePresence,{children:error&&!isCanvas&&/*#__PURE__*/_jsx(motion.div,{id:errorId,role:\"alert\",initial:{opacity:0,y:-4,height:0},animate:{opacity:1,y:0,height:\"auto\"},exit:{opacity:0,y:-4,height:0},transition:{duration:.2,ease:\"easeOut\"},style:errorMessageStyle,children:error},\"error-message\")})]})]});}TextAreaControl.displayName=\"Text Area\";TextAreaControl.defaultProps={name:\"textarea\",labelText:\"Message\",placeholder:\"Enter your message...\",required:false,defaultValue:\"\",rows:4,resize:\"vertical\",validation:DEFAULT_VALIDATION,label:DEFAULT_LABEL,layout:DEFAULT_LAYOUT,textareaStyle:DEFAULT_TEXTAREA_STYLE,focusStyle:DEFAULT_FOCUS_STYLE,errorStyle:DEFAULT_ERROR_STYLE,conditions:[],_meta:\"\",style:{}};// ============================================================================\n// PROPERTY CONTROLS\n// ============================================================================\naddPropertyControls(TextAreaControl,{name:{type:ControlType.String,title:\"Field Name\",defaultValue:\"textarea\",description:\"Unique name used in submitted form data.\"},labelText:{type:ControlType.String,title:\"Label Name\",defaultValue:\"Message\"},placeholder:{type:ControlType.String,title:\"Placeholder\",defaultValue:\"Enter your message...\"},required:{type:ControlType.Boolean,title:\"Required\",defaultValue:false,enabledTitle:\"Yes\",disabledTitle:\"No\"},defaultValue:{type:ControlType.String,title:\"Default Value\",defaultValue:\"\"},rows:{type:ControlType.Number,title:\"Rows\",defaultValue:4,min:1,max:20,step:1,displayStepper:true,description:\"Number of visible text lines.\"},resize:{type:ControlType.Enum,title:\"Resize\",defaultValue:\"vertical\",options:[\"none\",\"vertical\",\"horizontal\",\"both\"],optionTitles:[\"None\",\"Vertical\",\"Horizontal\",\"Both\"],description:\"Allow user to resize the textarea.\"},validation:{type:ControlType.Object,title:\"Validation\",controls:{requiredMessage:{type:ControlType.String,title:\"Required Error\",defaultValue:\"\",description:\"Message for required validation. Supports {label}, {name}.\"},minLength:{type:ControlType.Number,title:\"Min Length\",defaultValue:0,min:0,step:1,displayStepper:true},minLengthMessage:{type:ControlType.String,title:\"Min Error\",defaultValue:\"\",description:\"Message for min length validation. Supports {min}, {count}, {label}.\",hidden(props){return!props.minLength||props.minLength===0;}},maxLength:{type:ControlType.Number,title:\"Max Length\",defaultValue:0,min:0,step:1,displayStepper:true},maxLengthMessage:{type:ControlType.String,title:\"Max Error\",defaultValue:\"\",description:\"Message for max length validation. Supports {max}, {count}, {label}.\",hidden(props){return!props.maxLength||props.maxLength===0;}},liveValidation:{type:ControlType.Boolean,title:\"Validate While Typing\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",description:\"Checks input on each keystroke instead of waiting for blur.\"},showBrowserTooltip:{type:ControlType.Boolean,title:\"Browser Tooltip\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",description:\"Show browser default validation popup. Turn off to display only custom error text.\"}}},label:{type:ControlType.Object,title:\"Label Style\",controls:{show:{type:ControlType.Boolean,title:\"Show Label\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},requiredMark:{type:ControlType.String,title:\"Required Mark\",defaultValue:\"*\",hidden(props){return props.show===false;}},font:{type:ControlType.Font,title:\"Label Font\",controls:\"basic\",displayFontSize:true,defaultFontType:\"sans-serif\",defaultValue:{fontSize:12,fontWeight:\"500\",lineHeight:\"1.2em\"},hidden(props){return props.show===false;}},color:{type:ControlType.Color,title:\"Label Color\",defaultValue:\"#888888\",hidden(props){return props.show===false;}}}},layout:{type:ControlType.Object,title:\"Layout\",controls:{direction:{type:ControlType.Enum,title:\"Direction\",defaultValue:\"vertical\",options:[\"vertical\",\"horizontal\"],optionTitles:[\"Vertical\",\"Horizontal\"],optionIcons:[\"direction-vertical\",\"direction-horizontal\"],displaySegmentedControl:true},gap:{type:ControlType.Number,title:\"Gap\",defaultValue:8,min:0,max:40,step:2,unit:\"px\"},labelWidth:{type:ControlType.Number,title:\"Label Width\",defaultValue:120,min:40,max:300,step:4,unit:\"px\",hidden(props){return props.direction!==\"horizontal\";}}}},textareaStyle:{type:ControlType.Object,title:\"Textarea Style\",controls:{font:{type:ControlType.Font,title:\"Font\",controls:\"basic\",displayFontSize:true,defaultFontType:\"sans-serif\",defaultValue:{fontSize:14,lineHeight:1.4}},color:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#999999\"},placeholderColor:{type:ControlType.Color,title:\"Placeholder\",defaultValue:\"#999999\"},background:{type:ControlType.Color,title:\"Background\",defaultValue:\"rgba(187,187,187,0.15)\"},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"12px 15px 12px 12px\"},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:1,borderStyle:\"solid\",borderColor:\"rgba(0,0,0,0.06)\"}},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"10px\"},shadow:{type:ControlType.BoxShadow,title:\"Shadow\"}}},focusStyle:{type:ControlType.Object,title:\"Focus Style\",controls:{borderColor:{type:ControlType.Color,title:\"Border\",defaultValue:\"#3B82F6\"},shadow:{type:ControlType.BoxShadow,title:\"Shadow\"},scale:{type:ControlType.Number,title:\"Scale\",defaultValue:1,min:1,max:1.05,step:.005}}},errorStyle:{type:ControlType.Object,title:\"Error Style\",description:\"by [Forms Plugin](https://formsplugin.com/?ref=field_setting)\",controls:{color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#dc2626\"},font:{type:ControlType.Font,title:\"Font\",controls:\"basic\",displayFontSize:true,defaultFontType:\"sans-serif\",defaultValue:{fontSize:12,lineHeight:1.4}}}},...CONDITION_ARRAY_CONTROL,_meta:{type:ControlType.String,defaultValue:\"\",hidden(){return true;}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"TextAreaControl\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"300\",\"framerIntrinsicHeight\":\"140\",\"framerDisableUnlink\":\"\",\"framerSupportedLayoutHeight\":\"auto\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./TextAreaControl.map"],"mappings":"4VAYG,SAAwB,EAAgB,EAAM,CAAC,GAAK,CAAC,OAAK,YAAU,cAAY,WAAS,eAAa,OAAK,SAAO,aAAW,QAAM,SAAO,gBAAc,cAAW,aAAW,aAAW,QAAM,UAAO,EACnM,EAAiB,CAAC,GAAG,EAAmB,GAAG,GAAY,CAAC,CAAC,EAAQ,EAAY,CAAC,GAAG,EAAc,GAAG,GAAO,CAAC,EAAE,KAAK,CAAC,GAAG,EAAc,KAAK,GAAG,GAAO,EAAM,MAAM,CAAC,CAAC,CAAC,EAAQ,EAAa,CAAC,GAAG,EAAe,GAAG,GAAQ,CAAC,CAAC,EAAQ,EAAoB,CAAC,GAAG,EAAuB,GAAG,GAAe,CAAC,EAAE,KAAK,CAAC,GAAG,EAAuB,KAAK,GAAG,GAAe,EAAc,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,EAAuB,OAAO,GAAG,GAAe,EAAc,QAAQ,CAAC,CAAC,CAAC,EAAQ,EAAiB,CAAC,GAAG,EAAoB,GAAG,IAAY,CAAC,CAAC,EAAQ,EAAiB,CAAC,GAAG,EAAoB,GAAG,GAAY,CAAC,EAAE,KAAK,CAAC,GAAG,EAAoB,KAAK,GAAG,GAAY,EAAW,MAAM,CAAC,CAAC,CAAC,EAAQ,EAAU,GAAM,WAAiB,EAAiB,GAAW,UAAgB,EAAQ,SAAS,IAAkB,EAAQ,SAAS,IAAiB,CAAC,EAAM,GAAUA,EAAS,CAAY,EAAO,CAAC,EAAM,GAAUA,EAAS,EAAE,EAAO,CAAC,GAAU,GAAcA,EAAS,EAAK,EAAQ,EAAYC,EAAO,IAAI,EAAQ,EAAS,EAAa,QAAQ,IAAI,EAAa,OAAa,GAAQ,EAAS,MAAM,EAAO,IAAU,EAAeC,MAAY,GAAY,CAAC,EAAE,CAAC,CAAU,CAAC,EAA+E,CAAC,aAAU,cAAW,cAAW,eAAY,GAAkB,EAAe,GAAG,EAAvIC,MAAgB,CAAC,EAAS,EAAE,EAAE,EAAS,EAAE,CAAE,EAAE,CAAC,CAAiH,CAAC,EAAQ,EAAkB,EAAe,KAAK,GAAG,EAAE,OAAO,UAAU,EAAE,GAAW,EAAe,EAAkB,EAAe,KAAK,GAAG,EAAE,OAAO,UAAU,EAAE,GAAW,GAAY,EAAkB,EAAe,KAAK,GAAG,EAAE,OAAO,SAAS,EAAE,GAAW,GAAuB,MAAY,CAAC,GAAG,CAAC,EAAM,OAAO,KAAK,GAAG,CAAC,OAAO,KAAK,MAAM,CAAK,CAAE,MAAM,CAAC,OAAO,IAAK,CAAC,EAAE,CAAC,CAAK,CAAC,EAAkB,OAAc,CAAC,EAAS,CAAY,CAAE,EAAE,CAAC,CAAY,CAAC,EAGztD,IAAM,EAAYA,GAAa,EAAS,IAAW,CAAC,IAAM,EAAO,GAAU,KAAK,EAAE,EAAS,EAAe,EAAO,CAAC,MAAM,GAAkB,EAAU,KAAK,EAAU,IAAI,GAAG,EAAiB,YAAY,IAAI,GAAG,EAAiB,YAAY,MAAM,GAAG,EAAM,QAAQ,EAAE,OAAO,EAAO,QAAQ,mCAAmC,EAAE,IAAc,EAAO,IAAM,EAAI,CAAE,EAAE,CAAC,EAAiB,EAAU,EAAiB,UAAU,EAAiB,UAAU,EAAM,MAAM,CAAC,EAAQ,EAAkB,GAAQ,EAAiB,gBAAgB,KAAK,GAAG,EAAiB,iBAAiB,KAAK,GAAG,EAAiB,iBAAiB,KAAK,GAAS,EAAeA,EAAY,GAAQ,EAAG,SAAS,aAAqB,EAAY,EAAiB,gBAAgB,GAAG,GAAkB,EAAU,aAAa,EAAM,EAAG,SAAS,SAAiB,EAAY,EAAiB,iBAAiB,WAAW,EAAiB,UAAU,qBAAqB,EAAM,EAAG,SAAS,QAAgB,EAAY,EAAiB,iBAAiB,WAAW,EAAiB,UAAU,oBAAoB,EAAU,EAAG,kBAAoB,CAAC,EAAY,EAAU,EAAiB,EAAiB,UAAU,EAAiB,iBAAiB,EAAiB,UAAU,EAAiB,iBAAiB,EAAiB,eAAe,CAAC,EAAQ,EAASA,MAAgB,CAAC,IAAM,EAAG,EAAY,QAAY,KAAmC,GAAzB,EAAG,kBAAkB,EAAE,EAAM,EAAG,SAAS,MAAqH,EAAS,EAAE,MAA1H,CAAC,IAAM,EAAQ,EAAe,CAAE,EAAE,EAAS,CAAO,EAAK,GAAmB,EAAG,kBAAkB,CAAO,CAAG,CAAoB,EAAE,CAAC,EAAkB,CAAc,CAAC,EAGphD,GAAYA,MAAgB,CAAC,EAAa,EAAI,EAAE,EAAS,EAAE,CAAE,EAAE,CAAC,CAAC,EAAQ,GAAWA,MAAgB,CAAC,EAAa,EAAK,EAAE,EAAS,CAAE,EAAE,CAAC,CAAQ,CAAC,EAAQ,GAAaA,EAAY,GAAO,CAAC,IAAM,EAAU,EAAM,cAAc,MAA0B,GAApB,EAAS,CAAS,EAAK,EAAiB,eAAe,CAAC,EAAS,EAAE,MAAO,CAAC,GAAG,EAAM,CAAC,IAAM,EAAG,EAAY,QAAW,GAAI,EAAG,SAAS,QAAO,EAAS,EAAE,EAAE,EAAG,kBAAkB,EAAE,EAAG,CAAC,EAAE,CAAC,EAAM,EAAS,EAAiB,cAAc,CAAC,EAAQ,GAAcA,EAAY,GAAO,CAAK,EAAiB,oBAAoB,EAAM,eAAe,EAAG,EAAS,CAAE,EAAE,CAAC,EAAS,EAAiB,kBAAkB,CAAC,EAG/mB,GAAgB,CAAC,KAAK,CAAC,YAAY,EAAoB,QAAQ,aAAa,UAAU,UAAU,EAAoB,QAAQ,OAAO,MAAM,CAAC,EAAE,QAAQ,CAAC,YAAY,EAAiB,YAAY,UAAU,EAAiB,QAAQ,OAAO,MAAM,EAAiB,KAAK,EAAE,MAAM,CAAC,YAAY,EAAiB,MAAM,UAAU,gCAAgC,MAAM,CAAC,CAAC,EAAQ,GAAa,EAAM,QAAQ,GAAU,UAAU,OAAa,GAAY,EAAM,EAAQ,IAAA,GAAgB,GAAe,CAAC,QAAQ,OAAO,cAAc,EAAa,YAAY,aAAa,MAAM,SAAS,WAAW,EAAa,YAAY,aAAa,aAAa,UAAU,IAAI,GAAG,EAAa,IAAI,IAAI,MAAM,OAAO,GAAG,EAAK,EAAQ,QAA+B,CAAC,IAAM,EAAQ,EAAY,MAAM,WAAsJ,OAAxI,GAA+B,MAAM,IAAU,IAAI,IAAU,UAAU,IAAU,WAAW,IAAU,KAAK,IAAU,MAAc,IAAY,CAAQ,EAAA,CAAG,EAAQ,GAAW,CAAC,GAAG,EAAY,KAAK,WAAW,GAA0B,MAAM,EAAY,MAAM,WAAW,EAAE,GAAG,EAAa,YAAY,aAAa,CAAC,MAAM,GAAG,EAAa,WAAW,IAAI,WAAW,MAAM,EAAE,CAAC,CAAC,EAAQ,GAAqB,CAAC,GAAG,EAAoB,OAAO,YAAY,EAAoB,QAAQ,aAAa,EAAE,YAAY,EAAoB,QAAQ,aAAa,QAAQ,YAAY,EAAoB,QAAQ,aAAa,UAAU,aAAa,EAAoB,OAAO,gBAAgB,EAAoB,WAAW,QAAQ,EAAoB,QAAQ,UAAU,EAAoB,QAAQ,OAAO,QAAQ,CAAC,EAAQ,GAAqB,CAAC,GAAG,EAAoB,KAAK,MAAM,EAAoB,MAAM,QAAQ,EAAE,OAAO,OAAO,QAAQ,OAAO,MAAM,OAAO,UAAU,aAAa,gBAAgB,cAAc,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAQ,WAAW,UAAU,MAAM,EAAQ,GAAkB,CAAC,GAAG,EAAiB,KAAK,MAAM,EAAiB,MAAM,UAAU,MAAM,SAAS,QAAQ,EAG/2D,OAAtB,GAA0C,EAAM,MAAM,CAAC,MAAM,CAAC,GAAG,GAAe,QAAQ,EAAkB,GAAG,EAAkB,GAAG,EAAE,OAAO,GAAmB,EAAkB,cAAc,IAAA,EAAS,EAAE,SAAS,CAAC,EAAY,MAAM,GAA+B,EAAM,QAAQ,CAAC,QAAQ,EAAQ,MAAM,GAAW,SAAS,CAAC,EAAiB,GAAgC,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAiB,MAAM,WAAW,KAAK,EAAE,SAAS,EAAY,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,MAAM,EAAE,SAAS,CAAc,EAAK,QAAQ,CAAC,SAAS,wDAAwD,EAAoB,iBAAiB,gBAAgB,CAAC,EAAe,EAAK,GAAQ,CAAC,GAAG,CAAC,GAAU,CAAC,QAAQ,GAAa,SAAS,GAAgB,WAAW,CAAC,SAAS,GAAG,KAAK,SAAS,CAAC,EAAE,MAAM,GAAqB,SAAsB,EAAK,WAAW,CAAC,IAAI,EAAY,GAAG,EAAQ,KAAK,EAAsB,cAAY,SAAS,EAAkB,SAAS,EAAkB,SAAS,EAAwB,QAAM,KAAK,GAAM,EAAE,UAAU,EAAiB,UAAU,EAAE,EAAiB,UAAU,IAAA,GAAU,UAAU,EAAiB,UAAU,EAAE,EAAiB,UAAU,IAAA,GAAU,QAAQ,GAAY,OAAO,GAAW,QAAQ,GAAa,SAAS,GAAa,UAAU,GAAc,eAAe,EAAM,OAAO,IAAA,GAAU,mBAAmB,GAAY,UAAU,gCAAgC,MAAM,EAAoB,CAAC,CAAC,CAAC,EAAe,EAAK,GAAgB,CAAC,SAAS,GAAO,CAAC,GAAuB,EAAK,EAAO,IAAI,CAAC,GAAG,EAAQ,KAAK,QAAQ,QAAQ,CAAC,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,EAAE,OAAO,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,WAAW,CAAC,SAAS,GAAG,KAAK,SAAS,EAAE,MAAM,GAAkB,SAAS,CAAK,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAA5uD,IAA8uD,6BAzB3sD,IAAiE,IAAkD,IAAiE,IAA2G,EAGjV,EAAmB,CAAC,UAAU,EAAE,UAAU,EAAE,eAAe,GAAM,mBAAmB,GAAM,gBAAgB,GAAG,iBAAiB,GAAG,iBAAiB,EAAE,EAAQ,EAAc,CAAC,KAAK,GAAK,aAAa,IAAI,KAAK,CAAC,SAAS,GAAG,WAAW,MAAM,WAAW,OAAO,EAAE,MAAM,SAAS,EAAQ,EAAe,CAAC,UAAU,WAAW,IAAI,EAAE,WAAW,GAAG,EAAQ,EAAuB,CAAC,KAAK,CAAC,SAAS,GAAG,WAAW,GAAG,EAAE,MAAM,UAAU,iBAAiB,UAAU,WAAW,yBAAyB,QAAQ,sBAAsB,OAAO,CAAC,YAAY,EAAE,YAAY,QAAQ,YAAY,kBAAkB,EAAE,OAAO,OAAO,OAAO,EAAE,EAAQ,EAAoB,CAAC,YAAY,UAAU,OAAO,GAAG,MAAM,CAAC,EAAQ,EAAoB,CAAC,MAAM,UAAU,KAAK,CAAC,SAAS,GAAG,WAAW,GAAG,CAAC,EAsB+gC,EAAgB,YAAY,YAAY,EAAgB,aAAa,CAAC,KAAK,WAAW,UAAU,UAAU,YAAY,wBAAwB,SAAS,GAAM,aAAa,GAAG,KAAK,EAAE,OAAO,WAAW,WAAW,EAAmB,MAAM,EAAc,OAAO,EAAe,cAAc,EAAuB,WAAW,EAAoB,WAAW,EAAoB,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC,EAGppE,EAAoB,EAAgB,CAAC,KAAK,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,WAAW,YAAY,0CAA0C,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,SAAS,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,uBAAuB,EAAE,SAAS,CAAC,KAAK,EAAY,QAAQ,MAAM,WAAW,aAAa,GAAM,aAAa,MAAM,cAAc,IAAI,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,gBAAgB,aAAa,EAAE,EAAE,KAAK,CAAC,KAAK,EAAY,OAAO,MAAM,OAAO,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,eAAe,GAAK,YAAY,+BAA+B,EAAE,OAAO,CAAC,KAAK,EAAY,KAAK,MAAM,SAAS,aAAa,WAAW,QAAQ,CAAC,OAAO,WAAW,aAAa,MAAM,EAAE,aAAa,CAAC,OAAO,WAAW,aAAa,MAAM,EAAE,YAAY,oCAAoC,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAY,OAAO,MAAM,iBAAiB,aAAa,GAAG,YAAY,4DAA4D,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAI,EAAE,iBAAiB,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,GAAG,YAAY,uEAAuE,OAAO,EAAM,CAAC,MAAM,CAAC,EAAM,WAAW,EAAM,YAAY,CAAE,CAAC,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAI,EAAE,iBAAiB,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,GAAG,YAAY,uEAAuE,OAAO,EAAM,CAAC,MAAM,CAAC,EAAM,WAAW,EAAM,YAAY,CAAE,CAAC,EAAE,eAAe,CAAC,KAAK,EAAY,QAAQ,MAAM,wBAAwB,aAAa,GAAM,aAAa,KAAK,cAAc,MAAM,YAAY,6DAA6D,EAAE,mBAAmB,CAAC,KAAK,EAAY,QAAQ,MAAM,kBAAkB,aAAa,GAAM,aAAa,KAAK,cAAc,MAAM,YAAY,oFAAoF,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,SAAS,CAAC,KAAK,CAAC,KAAK,EAAY,QAAQ,MAAM,aAAa,aAAa,GAAK,aAAa,OAAO,cAAc,MAAM,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,gBAAgB,aAAa,IAAI,OAAO,EAAM,CAAC,OAAO,EAAM,OAAO,EAAM,CAAC,EAAE,KAAK,CAAC,KAAK,EAAY,KAAK,MAAM,aAAa,SAAS,QAAQ,gBAAgB,GAAK,gBAAgB,aAAa,aAAa,CAAC,SAAS,GAAG,WAAW,MAAM,WAAW,OAAO,EAAE,OAAO,EAAM,CAAC,OAAO,EAAM,OAAO,EAAM,CAAC,EAAE,MAAM,CAAC,KAAK,EAAY,MAAM,MAAM,cAAc,aAAa,UAAU,OAAO,EAAM,CAAC,OAAO,EAAM,OAAO,EAAM,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,SAAS,CAAC,UAAU,CAAC,KAAK,EAAY,KAAK,MAAM,YAAY,aAAa,WAAW,QAAQ,CAAC,WAAW,YAAY,EAAE,aAAa,CAAC,WAAW,YAAY,EAAE,YAAY,CAAC,qBAAqB,sBAAsB,EAAE,wBAAwB,EAAI,EAAE,IAAI,CAAC,KAAK,EAAY,OAAO,MAAM,MAAM,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,KAAK,IAAI,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,IAAI,IAAI,GAAG,IAAI,IAAI,KAAK,EAAE,KAAK,KAAK,OAAO,EAAM,CAAC,OAAO,EAAM,YAAY,YAAa,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,KAAK,EAAY,OAAO,MAAM,iBAAiB,SAAS,CAAC,KAAK,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,SAAS,QAAQ,gBAAgB,GAAK,gBAAgB,aAAa,aAAa,CAAC,SAAS,GAAG,WAAW,GAAG,CAAC,EAAE,MAAM,CAAC,KAAK,EAAY,MAAM,MAAM,aAAa,aAAa,SAAS,EAAE,iBAAiB,CAAC,KAAK,EAAY,MAAM,MAAM,cAAc,aAAa,SAAS,EAAE,WAAW,CAAC,KAAK,EAAY,MAAM,MAAM,aAAa,aAAa,wBAAwB,EAAE,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,UAAU,aAAa,qBAAqB,EAAE,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,CAAC,YAAY,EAAE,YAAY,QAAQ,YAAY,kBAAkB,CAAC,EAAE,OAAO,CAAC,KAAK,EAAY,aAAa,MAAM,SAAS,aAAa,MAAM,EAAE,OAAO,CAAC,KAAK,EAAY,UAAU,MAAM,QAAQ,CAAC,CAAC,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,SAAS,CAAC,YAAY,CAAC,KAAK,EAAY,MAAM,MAAM,SAAS,aAAa,SAAS,EAAE,OAAO,CAAC,KAAK,EAAY,UAAU,MAAM,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,EAAE,IAAI,EAAE,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,YAAY,gEAAgE,SAAS,CAAC,MAAM,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,aAAa,SAAS,EAAE,KAAK,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,SAAS,QAAQ,gBAAgB,GAAK,gBAAgB,aAAa,aAAa,CAAC,SAAS,GAAG,WAAW,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAwB,MAAM,CAAC,KAAK,EAAY,OAAO,aAAa,GAAG,QAAQ,CAAC,MAAO,EAAK,CAAC,CAAC,CAAC"}