{"version":3,"file":"EstimationForm.B0bxk-OS.mjs","names":["useState"],"sources":["https:/framerusercontent.com/modules/wCS6SBawudVVoy0q4USz/EBfxQ2y8lUe0lpmNK3VN/EstimationForm.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useState}from\"react\";const EMAIL_RE=/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/;// Icône flèche ↗ (fournie par la cliente). Suit la couleur du texte du bouton.\nfunction ArrowIcon(){return /*#__PURE__*/_jsxs(\"svg\",{width:\"20\",height:\"20\",viewBox:\"0 0 20 20\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",style:{flexShrink:0},\"aria-hidden\":true,children:[/*#__PURE__*/_jsx(\"path\",{d:\"M5 15L15 5\",stroke:\"currentColor\",strokeWidth:\"1.25\",strokeLinecap:\"round\",strokeLinejoin:\"round\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M6.875 5H15V13.125\",stroke:\"currentColor\",strokeWidth:\"1.25\",strokeLinecap:\"round\",strokeLinejoin:\"round\"})]});}export default function EstimationForm(props){const{pageR_sultat,redirectPath,queryParam,webhookUrl,title,clientsLabel,clientsPlaceholder,emailLabel,emailPlaceholder,companyLabel,companyPlaceholder,showConsent,consentRequired,consentLabel,consentHelperText,buttonText,showIcon,noteText,titleFont,labelFont,inputFont,buttonFont,noteFont,cardBg,inputBg,inputBorder,textColor,mutedColor,errorColor,buttonBg,buttonTextColor,buttonHoverBg,buttonHoverBorder,cardPadding,cardRadius,fieldGap,labelGap,inputPadding,inputRadius,buttonPadding,buttonRadius,style}=props;const isCanvas=RenderTarget.current()===RenderTarget.canvas;const[clients,setClients]=useState(\"\");const[email,setEmail]=useState(\"\");const[company,setCompany]=useState(\"\");const[consentChecked,setConsentChecked]=useState(false);const[errors,setErrors]=useState({});const[submitting,setSubmitting]=useState(false);const[hovered,setHovered]=useState(false);function validate(){const next={};const n=parseInt(clients.replace(/\\D/g,\"\"),10);if(!Number.isFinite(n)||n<=0)next.clients=\"Indiquez un nombre de clients valide.\";if(!EMAIL_RE.test(email.trim()))next.email=\"Email invalide.\";if(company.trim().length<2)next.company=\"Champ requis.\";if(showConsent&&consentRequired&&!consentChecked){next.consent=\"Veuillez accepter ce consentement pour continuer.\";}setErrors(next);return Object.keys(next).length===0?n:null;}async function handleSubmit(e){e.preventDefault();if(submitting)return;const n=validate();if(n==null)return;setSubmitting(true);// 1) Envoi du lead (si un webhook est configuré). On n'attend pas qu'il\n//    réussisse pour rediriger : l'estimation doit rester fluide.\nif(webhookUrl){try{await fetch(webhookUrl,{method:\"POST\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify({clients:n,email:email.trim(),company:company.trim(),consent:showConsent?consentChecked:false,consentLabel:showConsent?consentLabel:\"\",estimation:Math.round(n*.1),source:\"estimation-form\",date:new Date().toISOString()})});}catch{// silencieux : on redirige quand même\n}}// 2) Redirection vers la page résultat (seul le nombre passe dans l'URL).\n// Priorité: pageR_sultat (legacy Framer) > redirectPath > \"/simulateur\".\nconst resultPage=((pageR_sultat??\"\").trim()||(redirectPath??\"\").trim()||\"/simulateur\").trim();const safeResultPage=resultPage||\"/simulateur\";const url=`${safeResultPage}?${queryParam}=${encodeURIComponent(String(n))}`;if(isCanvas){// Sur le canvas Framer, on ne navigue pas (édition).\n// eslint-disable-next-line no-console\nconsole.log(\"[EstimationForm] redirection vers:\",url);setSubmitting(false);return;}window.location.assign(url);}const labelStyle={fontFamily:\"Montserrat, sans-serif\",...labelFont,color:textColor,display:\"block\"};const inputStyle=hasError=>({width:\"100%\",boxSizing:\"border-box\",padding:inputPadding,fontFamily:\"Montserrat, sans-serif\",...inputFont,color:textColor,background:inputBg,border:`1px solid ${hasError?errorColor:inputBorder}`,borderRadius:inputRadius,outline:\"none\"});const errorStyle={fontFamily:\"Montserrat, sans-serif\",...noteFont,color:errorColor,marginTop:2};function field(key,label,node){return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:labelGap},children:[/*#__PURE__*/_jsx(\"label\",{style:labelStyle,children:label}),node,errors[key]?/*#__PURE__*/_jsx(\"div\",{style:errorStyle,children:errors[key]}):null]});}return /*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",boxSizing:\"border-box\",background:cardBg,borderRadius:cardRadius,padding:cardPadding,...style},children:[title?/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Gabarito, sans-serif\",...titleFont,color:textColor,marginBottom:fieldGap+6},children:title}):null,/*#__PURE__*/_jsxs(\"form\",{onSubmit:handleSubmit,noValidate:true,style:{display:\"flex\",flexDirection:\"column\",gap:fieldGap},children:[field(\"clients\",clientsLabel,/*#__PURE__*/_jsx(\"input\",{type:\"text\",inputMode:\"numeric\",placeholder:clientsPlaceholder,value:clients,onChange:e=>setClients(e.target.value.replace(/[^\\d\\s]/g,\"\")),style:inputStyle(!!errors.clients)})),field(\"email\",emailLabel,/*#__PURE__*/_jsx(\"input\",{type:\"email\",placeholder:emailPlaceholder,value:email,onChange:e=>setEmail(e.target.value),style:inputStyle(!!errors.email)})),field(\"company\",companyLabel,/*#__PURE__*/_jsx(\"input\",{type:\"text\",placeholder:companyPlaceholder,value:company,onChange:e=>setCompany(e.target.value),style:inputStyle(!!errors.company)})),showConsent?/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:6},children:[/*#__PURE__*/_jsxs(\"label\",{style:{...labelStyle,display:\"flex\",alignItems:\"flex-start\",gap:10,cursor:\"pointer\"},children:[/*#__PURE__*/_jsx(\"input\",{type:\"checkbox\",checked:consentChecked,onChange:e=>setConsentChecked(e.target.checked),style:{marginTop:2,accentColor:buttonHoverBorder}}),/*#__PURE__*/_jsx(\"span\",{children:consentLabel})]}),consentHelperText?/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Montserrat, sans-serif\",...noteFont,color:mutedColor},children:consentHelperText}):null,errors.consent?/*#__PURE__*/_jsx(\"div\",{style:errorStyle,children:errors.consent}):null]}):null,/*#__PURE__*/_jsxs(\"button\",{type:\"submit\",disabled:submitting,onMouseEnter:()=>setHovered(true),onMouseLeave:()=>setHovered(false),style:{width:\"100%\",boxSizing:\"border-box\",marginTop:6,padding:buttonPadding,fontFamily:\"Montserrat, sans-serif\",...buttonFont,textAlign:\"left\",color:buttonTextColor,// Au survol : fond transparent + bordure colorée.\n// Bordure transparente au repos (même épaisseur) = pas de décalage.\nbackground:hovered?buttonHoverBg:buttonBg,border:`1.5px solid ${hovered?buttonHoverBorder:\"transparent\"}`,borderRadius:buttonRadius,cursor:submitting?\"default\":\"pointer\",opacity:submitting?.7:1,transition:\"background 0.2s ease, border-color 0.2s ease, opacity 0.2s ease\",display:\"flex\",alignItems:\"center\",justifyContent:submitting?\"center\":showIcon?\"space-between\":\"flex-start\",gap:12},children:[submitting?\"...\":/*#__PURE__*/_jsx(\"span\",{children:buttonText}),!submitting&&showIcon?/*#__PURE__*/_jsx(ArrowIcon,{}):null]}),noteText?/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Montserrat, sans-serif\",...noteFont,color:mutedColor,marginTop:2},children:noteText}):null]})]});}EstimationForm.defaultProps={pageR_sultat:\"\",redirectPath:\"/simulateur\",queryParam:\"clients\",webhookUrl:\"\",title:\"Estimez le nombre de vos clients invisibles\",clientsLabel:\"Nombre total de clients\",clientsPlaceholder:\"Ex : 40 000\",emailLabel:\"Email\",emailPlaceholder:\"vous@entreprise.com\",companyLabel:\"Entreprise / organisation\",companyPlaceholder:\"Nom de votre entreprise\",showConsent:true,consentRequired:true,consentLabel:\"J’accepte que Deafi utilise mes informations pour me recontacter au sujet de ses solutions.\",consentHelperText:\"\",buttonText:\"Estimer mes clients Sourds et malentendants\",showIcon:true,noteText:\"Estimation indicative bas\\xe9e sur 10% de clients Sourds ou malentendants.\",titleFont:{fontSize:\"30px\",variant:\"Medium\",lineHeight:\"1.1em\",letterSpacing:\"-0.03em\"},labelFont:{fontSize:\"16px\",variant:\"Medium\",lineHeight:\"1.3em\",letterSpacing:\"-0.02em\"},inputFont:{fontSize:\"16px\",variant:\"Regular\",lineHeight:\"1.3em\",letterSpacing:\"-0.02em\"},buttonFont:{fontSize:\"17px\",variant:\"Medium\",lineHeight:\"1.1em\",letterSpacing:\"-0.02em\"},noteFont:{fontSize:\"12px\",variant:\"Regular\",lineHeight:\"1.4em\",letterSpacing:\"-0.02em\"},cardBg:\"#F7F7F7\",inputBg:\"#FFFFFF\",inputBorder:\"#D9DBE9\",textColor:\"#14142A\",mutedColor:\"#5F637A\",errorColor:\"#E0556B\",buttonBg:\"#85D4E3\",buttonTextColor:\"#14142A\",buttonHoverBg:\"rgba(0, 0, 0, 0)\",buttonHoverBorder:\"#85D4E3\",cardPadding:\"32px\",cardRadius:\"16px\",fieldGap:18,labelGap:8,inputPadding:\"14px 18px\",inputRadius:\"10px\",buttonPadding:\"16px 24px\",buttonRadius:\"12px\"};addPropertyControls(EstimationForm,{// ——— Données & navigation ———\npageR_sultat:{type:ControlType.String,title:\"Page r\\xe9sultat\",description:\"Chemin de la page d'estimation vers laquelle rediriger (ex : /simulateur).\",defaultValue:\"/simulateur\"},redirectPath:{type:ControlType.String,title:\"Page r\\xe9sultat\",description:\"Chemin de la page d'estimation vers laquelle rediriger (ex : /estimation).\",defaultValue:\"/simulateur\"},queryParam:{type:ControlType.String,title:\"Param URL\",description:\"Nom du param\\xe8tre ajout\\xe9 \\xe0 l'URL. Doit \\xeatre identique \\xe0 celui du composant r\\xe9sultat.\",defaultValue:\"clients\"},webhookUrl:{type:ControlType.String,title:\"Webhook URL\",description:\"URL Make / Zapier / Formspark pour collecter le lead (nombre, email, entreprise). Vide = aucune collecte.\",placeholder:\"https://hook.make.com/...\",defaultValue:\"\"},// ——— Contenu ———\ntitle:{type:ControlType.String,title:\"Titre\",description:\"Titre affich\\xe9 en haut de la carte.\",displayTextArea:true,defaultValue:\"Estimez le nombre de vos clients invisibles\"},clientsLabel:{type:ControlType.String,title:\"Label clients\",description:\"Libell\\xe9 du champ \\xab nombre de clients \\xbb.\",defaultValue:\"Nombre total de clients\"},clientsPlaceholder:{type:ControlType.String,title:\"Placeholder clients\",description:\"Texte d'exemple dans le champ \\xab nombre de clients \\xbb.\",defaultValue:\"Ex : 40 000\"},emailLabel:{type:ControlType.String,title:\"Label email\",description:\"Libell\\xe9 du champ email.\",defaultValue:\"Email\"},emailPlaceholder:{type:ControlType.String,title:\"Placeholder email\",description:\"Texte d'exemple dans le champ email.\",defaultValue:\"vous@entreprise.com\"},companyLabel:{type:ControlType.String,title:\"Label entreprise\",description:\"Libell\\xe9 du champ entreprise / organisation.\",defaultValue:\"Entreprise / organisation\"},companyPlaceholder:{type:ControlType.String,title:\"Placeholder entreprise\",description:\"Texte d'exemple dans le champ entreprise.\",defaultValue:\"Nom de votre entreprise\"},showConsent:{type:ControlType.Boolean,title:\"Afficher consentement\",description:\"Affiche une case \\xe0 cocher de consentement avant le bouton.\",defaultValue:true,enabledTitle:\"Oui\",disabledTitle:\"Non\"},consentRequired:{type:ControlType.Boolean,title:\"Consentement requis\",description:\"Quand activ\\xe9, la case doit \\xeatre coch\\xe9e avant l'envoi du formulaire.\",defaultValue:true,enabledTitle:\"Oui\",disabledTitle:\"Non\",hidden(props){return!props.showConsent;}},consentLabel:{type:ControlType.String,title:\"Texte consentement\",description:\"Texte affich\\xe9 \\xe0 c\\xf4t\\xe9 de la case de consentement.\",displayTextArea:true,defaultValue:\"J’accepte que Deafi utilise mes informations pour me recontacter au sujet de ses solutions.\",hidden(props){return!props.showConsent;}},consentHelperText:{type:ControlType.String,title:\"Aide consentement\",description:\"Petite mention sous la case (optionnelle).\",displayTextArea:true,defaultValue:\"\",hidden(props){return!props.showConsent;}},buttonText:{type:ControlType.String,title:\"Bouton\",description:\"Texte du bouton de validation.\",defaultValue:\"Estimer mes clients Sourds et malentendants\"},showIcon:{type:ControlType.Boolean,title:\"Ic\\xf4ne\",description:\"Affiche la fl\\xe8che \\xe0 droite du bouton.\",defaultValue:true,enabledTitle:\"Oui\",disabledTitle:\"Non\"},noteText:{type:ControlType.String,title:\"Note\",description:\"Petite mention sous le bouton. Vide pour la masquer.\",displayTextArea:true,defaultValue:\"Estimation indicative bas\\xe9e sur 10% de clients Sourds ou malentendants.\"},// ——— Typographie ———\ntitleFont:{type:ControlType.Font,title:\"Police titre\",description:\"Police, graisse et taille du titre.\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:\"30px\",variant:\"Medium\",lineHeight:\"1.1em\",letterSpacing:\"-0.03em\"}},labelFont:{type:ControlType.Font,title:\"Police labels\",description:\"Police des libell\\xe9s au-dessus des champs.\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:\"16px\",variant:\"Medium\",lineHeight:\"1.3em\",letterSpacing:\"-0.02em\"}},inputFont:{type:ControlType.Font,title:\"Police champs\",description:\"Police du texte saisi dans les champs.\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:\"16px\",variant:\"Regular\",lineHeight:\"1.3em\",letterSpacing:\"-0.02em\"}},buttonFont:{type:ControlType.Font,title:\"Police bouton\",description:\"Police du texte du bouton.\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:\"17px\",variant:\"Medium\",lineHeight:\"1.1em\",letterSpacing:\"-0.02em\"}},noteFont:{type:ControlType.Font,title:\"Police note\",description:\"Police de la mention sous le bouton et des messages d'erreur.\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:\"12px\",variant:\"Regular\",lineHeight:\"1.4em\",letterSpacing:\"-0.02em\"}},// ——— Couleurs ———\ncardBg:{type:ControlType.Color,title:\"Fond carte\",description:\"Couleur de fond de la carte du formulaire.\",defaultValue:\"#F7F7F7\"},inputBg:{type:ControlType.Color,title:\"Fond champs\",description:\"Couleur de fond des champs de saisie.\",defaultValue:\"#FFFFFF\"},inputBorder:{type:ControlType.Color,title:\"Bordure champs\",description:\"Couleur de bordure des champs au repos.\",defaultValue:\"#D9DBE9\"},textColor:{type:ControlType.Color,title:\"Texte\",description:\"Couleur du titre, des labels et du texte saisi.\",defaultValue:\"#14142A\"},mutedColor:{type:ControlType.Color,title:\"Texte note\",description:\"Couleur de la mention sous le bouton.\",defaultValue:\"#5F637A\"},errorColor:{type:ControlType.Color,title:\"Erreur\",description:\"Couleur des messages d'erreur et de la bordure d'un champ invalide.\",defaultValue:\"#E0556B\"},buttonBg:{type:ControlType.Color,title:\"Fond bouton\",description:\"Couleur de fond du bouton au repos.\",defaultValue:\"#85D4E3\"},buttonTextColor:{type:ControlType.Color,title:\"Texte bouton\",description:\"Couleur du texte et de l'ic\\xf4ne du bouton.\",defaultValue:\"#14142A\"},buttonHoverBg:{type:ControlType.Color,title:\"Fond bouton (survol)\",description:\"Couleur de fond du bouton au survol. Transparent par d\\xe9faut.\",defaultValue:\"rgba(0, 0, 0, 0)\"},buttonHoverBorder:{type:ControlType.Color,title:\"Bordure bouton (survol)\",description:\"Couleur de la bordure qui appara\\xeet autour du bouton au survol.\",defaultValue:\"#85D4E3\"},// ——— Mise en page ———\ncardPadding:{type:ControlType.Padding,title:\"Marge carte\",description:\"Espace int\\xe9rieur de la carte.\",defaultValue:\"32px\"},cardRadius:{type:ControlType.BorderRadius,title:\"Arrondi carte\",description:\"Rayon des coins de la carte.\",defaultValue:\"16px\"},fieldGap:{type:ControlType.Number,title:\"\\xc9cart champs\",description:\"Espace vertical entre les champs du formulaire.\",defaultValue:18,min:0,max:64,step:1,unit:\"px\"},labelGap:{type:ControlType.Number,title:\"\\xc9cart label\",description:\"Espace entre un label et son champ.\",defaultValue:8,min:0,max:32,step:1,unit:\"px\"},inputPadding:{type:ControlType.Padding,title:\"Marge champs\",description:\"Espace int\\xe9rieur des champs de saisie.\",defaultValue:\"14px 18px\"},inputRadius:{type:ControlType.BorderRadius,title:\"Arrondi champs\",description:\"Rayon des coins des champs de saisie.\",defaultValue:\"10px\"},buttonPadding:{type:ControlType.Padding,title:\"Marge bouton\",description:\"Espace int\\xe9rieur du bouton.\",defaultValue:\"16px 24px\"},buttonRadius:{type:ControlType.BorderRadius,title:\"Arrondi bouton\",description:\"Rayon des coins du bouton.\",defaultValue:\"12px\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"EstimationForm\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./EstimationForm.map"],"mappings":"uMACA,SAAS,IAAW,CAAC,OAAoB,EAAM,MAAM,CAAC,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OAAO,MAAM,6BAA6B,MAAM,CAAC,WAAW,CAAC,EAAE,cAAc,GAAK,SAAS,CAAc,EAAK,OAAO,CAAC,EAAE,aAAa,OAAO,eAAe,YAAY,OAAO,cAAc,QAAQ,eAAe,OAAO,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,qBAAqB,OAAO,eAAe,YAAY,OAAO,cAAc,QAAQ,eAAe,OAAO,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,SAAwB,EAAe,EAAM,CAAC,GAAK,CAAC,eAAa,eAAa,aAAW,aAAW,QAAM,eAAa,qBAAmB,aAAW,oBAAiB,eAAa,qBAAmB,cAAY,mBAAgB,eAAa,oBAAkB,aAAW,WAAS,WAAS,YAAU,aAAU,aAAU,cAAW,WAAS,UAAO,WAAQ,eAAY,YAAU,aAAW,aAAW,YAAS,mBAAgB,gBAAc,oBAAkB,cAAY,aAAW,WAAS,WAAS,eAAa,cAAY,gBAAc,eAAa,SAAO,EAAY,EAAS,EAAa,QAAQ,IAAI,EAAa,OAAY,CAAC,EAAQ,GAAYA,EAAS,EAAE,EAAO,CAAC,EAAM,IAAUA,EAAS,EAAE,EAAO,CAAC,EAAQ,IAAYA,EAAS,EAAE,EAAO,CAAC,EAAe,IAAmBA,EAAS,EAAK,EAAO,CAAC,EAAO,GAAWA,EAAS,CAAC,CAAC,EAAO,CAAC,EAAW,GAAeA,EAAS,EAAK,EAAO,CAAC,EAAQ,GAAYA,EAAS,EAAK,EAAE,SAAS,IAAU,CAAC,IAAM,EAAK,CAAC,EAAQ,EAAE,SAAS,EAAQ,QAAQ,MAAM,EAAE,EAAE,EAAE,EAA6U,OAAxU,CAAC,OAAO,SAAS,CAAC,GAAG,GAAG,KAAE,EAAK,QAAQ,yCAA4C,EAAS,KAAK,EAAM,KAAK,CAAC,IAAE,EAAK,MAAM,mBAAqB,EAAQ,KAAK,CAAC,CAAC,OAAO,IAAE,EAAK,QAAQ,iBAAmB,GAAa,IAAiB,CAAC,IAAgB,EAAK,QAAQ,qDAAqD,EAAU,CAAI,EAAS,OAAO,KAAK,CAAI,CAAC,CAAC,SAAS,EAAE,EAAE,IAAK,CAAC,eAAe,GAAa,EAAE,CAAoB,GAAnB,EAAE,eAAe,EAAK,EAAW,OAAO,IAAM,EAAE,GAAS,EAAE,GAAG,GAAG,KAAK,OAE/4D,GAFs5D,EAAc,EAAI,EAEr6D,EAAY,GAAG,CAAC,MAAM,MAAM,EAAW,CAAC,OAAO,OAAO,QAAQ,CAAC,eAAe,kBAAkB,EAAE,KAAK,KAAK,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAM,KAAK,EAAE,QAAQ,EAAQ,KAAK,EAAE,QAAQ,EAAY,EAAe,GAAM,aAAa,EAAY,EAAa,GAAG,WAAW,KAAK,MAAM,EAAE,EAAE,EAAE,OAAO,kBAAkB,KAAK,IAAI,KAAK,CAAA,CAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAE,MAAM,CAC7V,CAE6I,IAAM,EAAI,KAApI,GAAc,GAAA,CAAI,KAAK,IAAI,GAAc,GAAA,CAAI,KAAK,GAAG,cAAA,CAAe,KAAqC,GAAG,cAA0C,GAAG,EAAW,GAAG,mBAAmB,OAAO,CAAC,CAAC,IAAI,GAAG,EAAS,CAEtO,QAAQ,IAAI,qCAAqC,CAAG,EAAE,EAAc,EAAK,EAAE,MAAO,CAAC,GAAO,SAAS,OAAO,CAAG,CAAE,CAAC,IAAM,EAAW,CAAC,WAAW,yBAAyB,GAAG,GAAU,MAAM,EAAU,QAAQ,OAAO,EAAQ,EAAW,IAAW,CAAC,MAAM,OAAO,UAAU,aAAa,QAAQ,EAAa,WAAW,yBAAyB,GAAG,GAAU,MAAM,EAAU,WAAW,GAAQ,OAAO,aAAa,EAAS,EAAW,KAAc,aAAa,EAAY,QAAQ,MAAM,GAAS,EAAW,CAAC,WAAW,yBAAyB,GAAG,EAAS,MAAM,EAAW,UAAU,CAAC,EAAE,SAAS,EAAM,EAAI,EAAM,EAAK,CAAC,OAAoB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,CAAQ,EAAE,SAAS,CAAc,EAAK,QAAQ,CAAC,MAAM,EAAW,SAAS,CAAK,CAAC,EAAE,EAAK,EAAO,GAAkB,EAAK,MAAM,CAAC,MAAM,EAAW,SAAS,EAAO,EAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,OAAoB,EAAM,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,UAAU,aAAa,WAAW,GAAO,aAAa,EAAW,QAAQ,EAAY,GAAG,CAAK,EAAE,SAAS,CAAC,EAAmB,EAAK,MAAM,CAAC,MAAM,CAAC,WAAW,uBAAuB,GAAG,EAAU,MAAM,EAAU,aAAa,EAAS,CAAC,EAAE,SAAS,CAAK,CAAC,EAAE,KAAkB,EAAM,OAAO,CAAC,SAAS,GAAa,WAAW,GAAK,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,CAAQ,EAAE,SAAS,CAAC,EAAM,UAAU,EAA0B,EAAK,QAAQ,CAAC,KAAK,OAAO,UAAU,UAAU,YAAY,EAAmB,MAAM,EAAQ,SAAS,GAAG,EAAW,EAAE,OAAO,MAAM,QAAQ,WAAW,EAAE,CAAC,EAAE,MAAM,EAAW,CAAC,CAAC,EAAO,OAAO,CAAC,CAAC,CAAC,EAAE,EAAM,QAAQ,EAAwB,EAAK,QAAQ,CAAC,KAAK,QAAQ,YAAY,GAAiB,MAAM,EAAM,SAAS,GAAG,GAAS,EAAE,OAAO,KAAK,EAAE,MAAM,EAAW,CAAC,CAAC,EAAO,KAAK,CAAC,CAAC,CAAC,EAAE,EAAM,UAAU,EAA0B,EAAK,QAAQ,CAAC,KAAK,OAAO,YAAY,EAAmB,MAAM,EAAQ,SAAS,GAAG,GAAW,EAAE,OAAO,KAAK,EAAE,MAAM,EAAW,CAAC,CAAC,EAAO,OAAO,CAAC,CAAC,CAAC,EAAE,EAAyB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,CAAC,EAAE,SAAS,CAAc,EAAM,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAW,QAAQ,OAAO,WAAW,aAAa,IAAI,GAAG,OAAO,SAAS,EAAE,SAAS,CAAc,EAAK,QAAQ,CAAC,KAAK,WAAW,QAAQ,EAAe,SAAS,GAAG,GAAkB,EAAE,OAAO,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE,YAAY,CAAiB,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,SAAS,CAAY,CAAC,CAAC,CAAC,CAAC,EAAE,EAA+B,EAAK,MAAM,CAAC,MAAM,CAAC,WAAW,yBAAyB,GAAG,EAAS,MAAM,CAAU,EAAE,SAAS,CAAiB,CAAC,EAAE,KAAK,EAAO,QAAqB,EAAK,MAAM,CAAC,MAAM,EAAW,SAAS,EAAO,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,KAAkB,EAAM,SAAS,CAAC,KAAK,SAAS,SAAS,EAAW,iBAAiB,EAAW,EAAI,EAAE,iBAAiB,EAAW,EAAK,EAAE,MAAM,CAAC,MAAM,OAAO,UAAU,aAAa,UAAU,EAAE,QAAQ,EAAc,WAAW,yBAAyB,GAAG,GAAW,UAAU,OAAO,MAAM,GAEvzF,WAAW,EAAQ,EAAc,GAAS,OAAO,eAAe,EAAQ,EAAkB,gBAAgB,aAAa,EAAa,OAAO,EAAW,UAAU,UAAU,QAAQ,EAAW,GAAG,EAAE,WAAW,kEAAkE,QAAQ,OAAO,WAAW,SAAS,eAAe,EAAW,SAAS,EAAS,gBAAgB,aAAa,IAAI,EAAE,EAAE,SAAS,CAAC,EAAW,MAAmB,EAAK,OAAO,CAAC,SAAS,CAAU,CAAC,EAAE,CAAC,GAAY,EAAsB,EAAK,GAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,EAAsB,EAAK,MAAM,CAAC,MAAM,CAAC,WAAW,yBAAyB,GAAG,EAAS,MAAM,EAAW,UAAU,CAAC,EAAE,SAAS,CAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,uBAV1mB,IAAiE,IAA4B,EAAO,EAAS,6BAU8f,EAAe,aAAa,CAAC,aAAa,GAAG,aAAa,cAAc,WAAW,UAAU,WAAW,GAAG,MAAM,8CAA8C,aAAa,0BAA0B,mBAAmB,cAAc,WAAW,QAAQ,iBAAiB,sBAAsB,aAAa,4BAA4B,mBAAmB,0BAA0B,YAAY,GAAK,gBAAgB,GAAK,aAAa,8FAA8F,kBAAkB,GAAG,WAAW,8CAA8C,SAAS,GAAK,SAAS,0EAA6E,UAAU,CAAC,SAAS,OAAO,QAAQ,SAAS,WAAW,QAAQ,cAAc,SAAS,EAAE,UAAU,CAAC,SAAS,OAAO,QAAQ,SAAS,WAAW,QAAQ,cAAc,SAAS,EAAE,UAAU,CAAC,SAAS,OAAO,QAAQ,UAAU,WAAW,QAAQ,cAAc,SAAS,EAAE,WAAW,CAAC,SAAS,OAAO,QAAQ,SAAS,WAAW,QAAQ,cAAc,SAAS,EAAE,SAAS,CAAC,SAAS,OAAO,QAAQ,UAAU,WAAW,QAAQ,cAAc,SAAS,EAAE,OAAO,UAAU,QAAQ,UAAU,YAAY,UAAU,UAAU,UAAU,WAAW,UAAU,WAAW,UAAU,SAAS,UAAU,gBAAgB,UAAU,cAAc,mBAAmB,kBAAkB,UAAU,YAAY,OAAO,WAAW,OAAO,SAAS,GAAG,SAAS,EAAE,aAAa,YAAY,YAAY,OAAO,cAAc,YAAY,aAAa,MAAM,EAAE,EAAoB,EAAe,CAClrE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,gBAAmB,YAAY,6EAA6E,aAAa,aAAa,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,gBAAmB,YAAY,6EAA6E,aAAa,aAAa,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,YAAY,sFAAwG,aAAa,SAAS,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,YAAY,4GAA4G,YAAY,4BAA4B,aAAa,EAAE,EACjxB,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,YAAY,qCAAwC,gBAAgB,GAAK,aAAa,6CAA6C,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,gBAAgB,YAAY,0CAAmD,aAAa,yBAAyB,EAAE,mBAAmB,CAAC,KAAK,EAAY,OAAO,MAAM,sBAAsB,YAAY,uDAA6D,aAAa,aAAa,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,YAAY,0BAA6B,aAAa,OAAO,EAAE,iBAAiB,CAAC,KAAK,EAAY,OAAO,MAAM,oBAAoB,YAAY,uCAAuC,aAAa,qBAAqB,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,mBAAmB,YAAY,8CAAiD,aAAa,2BAA2B,EAAE,mBAAmB,CAAC,KAAK,EAAY,OAAO,MAAM,yBAAyB,YAAY,4CAA4C,aAAa,yBAAyB,EAAE,YAAY,CAAC,KAAK,EAAY,QAAQ,MAAM,wBAAwB,YAAY,6DAAgE,aAAa,GAAK,aAAa,MAAM,cAAc,KAAK,EAAE,gBAAgB,CAAC,KAAK,EAAY,QAAQ,MAAM,sBAAsB,YAAY,sEAA+E,aAAa,GAAK,aAAa,MAAM,cAAc,MAAM,OAAO,EAAM,CAAC,MAAM,CAAC,EAAM,WAAY,CAAC,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,qBAAqB,YAAY,mDAA+D,gBAAgB,GAAK,aAAa,8FAA8F,OAAO,EAAM,CAAC,MAAM,CAAC,EAAM,WAAY,CAAC,EAAE,kBAAkB,CAAC,KAAK,EAAY,OAAO,MAAM,oBAAoB,YAAY,6CAA6C,gBAAgB,GAAK,aAAa,GAAG,OAAO,EAAM,CAAC,MAAM,CAAC,EAAM,WAAY,CAAC,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,YAAY,iCAAiC,aAAa,6CAA6C,EAAE,SAAS,CAAC,KAAK,EAAY,QAAQ,MAAM,QAAW,YAAY,wCAA8C,aAAa,GAAK,aAAa,MAAM,cAAc,KAAK,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,OAAO,YAAY,uDAAuD,gBAAgB,GAAK,aAAa,yEAA4E,EAC1lF,UAAU,CAAC,KAAK,EAAY,KAAK,MAAM,eAAe,YAAY,sCAAsC,SAAS,WAAW,gBAAgB,aAAa,aAAa,CAAC,SAAS,OAAO,QAAQ,SAAS,WAAW,QAAQ,cAAc,SAAS,CAAC,EAAE,UAAU,CAAC,KAAK,EAAY,KAAK,MAAM,gBAAgB,YAAY,4CAA+C,SAAS,WAAW,gBAAgB,aAAa,aAAa,CAAC,SAAS,OAAO,QAAQ,SAAS,WAAW,QAAQ,cAAc,SAAS,CAAC,EAAE,UAAU,CAAC,KAAK,EAAY,KAAK,MAAM,gBAAgB,YAAY,yCAAyC,SAAS,WAAW,gBAAgB,aAAa,aAAa,CAAC,SAAS,OAAO,QAAQ,UAAU,WAAW,QAAQ,cAAc,SAAS,CAAC,EAAE,WAAW,CAAC,KAAK,EAAY,KAAK,MAAM,gBAAgB,YAAY,6BAA6B,SAAS,WAAW,gBAAgB,aAAa,aAAa,CAAC,SAAS,OAAO,QAAQ,SAAS,WAAW,QAAQ,cAAc,SAAS,CAAC,EAAE,SAAS,CAAC,KAAK,EAAY,KAAK,MAAM,cAAc,YAAY,gEAAgE,SAAS,WAAW,gBAAgB,aAAa,aAAa,CAAC,SAAS,OAAO,QAAQ,UAAU,WAAW,QAAQ,cAAc,SAAS,CAAC,EACxuC,OAAO,CAAC,KAAK,EAAY,MAAM,MAAM,aAAa,YAAY,6CAA6C,aAAa,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAY,MAAM,MAAM,cAAc,YAAY,wCAAwC,aAAa,SAAS,EAAE,YAAY,CAAC,KAAK,EAAY,MAAM,MAAM,iBAAiB,YAAY,0CAA0C,aAAa,SAAS,EAAE,UAAU,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,YAAY,kDAAkD,aAAa,SAAS,EAAE,WAAW,CAAC,KAAK,EAAY,MAAM,MAAM,aAAa,YAAY,wCAAwC,aAAa,SAAS,EAAE,WAAW,CAAC,KAAK,EAAY,MAAM,MAAM,SAAS,YAAY,sEAAsE,aAAa,SAAS,EAAE,SAAS,CAAC,KAAK,EAAY,MAAM,MAAM,cAAc,YAAY,sCAAsC,aAAa,SAAS,EAAE,gBAAgB,CAAC,KAAK,EAAY,MAAM,MAAM,eAAe,YAAY,4CAA+C,aAAa,SAAS,EAAE,cAAc,CAAC,KAAK,EAAY,MAAM,MAAM,uBAAuB,YAAY,+DAAkE,aAAa,kBAAkB,EAAE,kBAAkB,CAAC,KAAK,EAAY,MAAM,MAAM,0BAA0B,YAAY,iEAAoE,aAAa,SAAS,EACj6C,YAAY,CAAC,KAAK,EAAY,QAAQ,MAAM,cAAc,YAAY,gCAAmC,aAAa,MAAM,EAAE,WAAW,CAAC,KAAK,EAAY,aAAa,MAAM,gBAAgB,YAAY,+BAA+B,aAAa,MAAM,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,eAAkB,YAAY,kDAAkD,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,KAAK,IAAI,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,cAAiB,YAAY,sCAAsC,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,KAAK,IAAI,EAAE,aAAa,CAAC,KAAK,EAAY,QAAQ,MAAM,eAAe,YAAY,yCAA4C,aAAa,WAAW,EAAE,YAAY,CAAC,KAAK,EAAY,aAAa,MAAM,iBAAiB,YAAY,wCAAwC,aAAa,MAAM,EAAE,cAAc,CAAC,KAAK,EAAY,QAAQ,MAAM,eAAe,YAAY,8BAAiC,aAAa,WAAW,EAAE,aAAa,CAAC,KAAK,EAAY,aAAa,MAAM,iBAAiB,YAAY,6BAA6B,aAAa,MAAM,CAAC,CAAC"}