{"version":3,"file":"Oci9-NvE28SX3FUXsfyyc5HXO3wgE2zMyPE-HA2Yhek.ENuIl9EK.mjs","names":["_Fragment","useState","SIZE","useSalesStore","useState","useRef","_Fragment","D","useSalesTokens","useState","D","useRef","useSalesStore","useState","hasFontOverride","useRef","_Fragment","D","useMemo","jetflyDebug","useState","D","useState","useRef","SalesHeader","SalesSidebarV2","SalesSearchHero","SalesCustomerCardList","SalesGlobalCustomerSearchDialog","JetflySalesUsers","React.forwardRef","useRef","React.useId","React.useMemo","metadataProvider","sharedStyle.className","React.useContext","className","_Fragment","RichText","React.Fragment","PropertyOverrides","sharedStyle.css","sharedStyle.fonts"],"sources":["https:/framerusercontent.com/modules/XZT7pl2p7utC7BgE8oe1/54XG0NUNsZGALZBxmop1/DealPill.js","https:/framer.com/m/DealPill-pAeOm4.js","https:/framerusercontent.com/modules/6qRSBuvQB3Md4J2mqd1J/LviZWl6vUo7DzFaLSFGO/BtnDark.js","https:/framer.com/m/BtnDark-j4FwoV.js","https:/framerusercontent.com/modules/rfsj2grKbG46gcKQPQVB/SNLxGeNm6bDd1c480RS2/ContactRow.js","https:/framer.com/m/ContactRow-SSJ337.js","https:/framerusercontent.com/modules/7rXG0K4wkYz63dnNgcup/poWgTrnyYSZIy00EXMfl/CustomerCard.js","https:/framer.com/m/CustomerCard-wQJlhw.js","https:/framer.com/m/BtnPrimary-VTTRQx.js","https:/framerusercontent.com/modules/SgvuZRrDn4qpPiJRuUTM/88CFv9VuxlwMOjILecrW/OptionList.js","https:/framer.com/m/OptionList-MHLYaY.js","https:/framerusercontent.com/modules/kjFytQWZO0cB3DKhoVUB/Nm5Fhi7W1gRjI4VwMZXS/CustomerCardList.js","https:/framerusercontent.com/modules/nmcokL05CkHSXQZIHrsc/kobhrvhL3OFeyOq2QwpS/InputUi.js","https:/framer.com/m/InputUi-KSW5wZ.js","https:/framerusercontent.com/modules/jHlQRs2lOLdwAxM6whA3/5lCMOya5XnAU12NShj7d/SearchHero.js","https:/framerusercontent.com/modules/0XfcZ00KApE38AjQrhMX/j4dLGPDRttSCeF5euo2b/sJRZfMvQQ.js","https:/framerusercontent.com/modules/40TevGwucOLVFNALdcpG/7E4TdkmbXQdc86MKx440/sJRZfMvQQ.js"],"sourcesContent":["// Sales/UI/DealPill.tsx — Sand card with deal number + status dot row.\n// V2: added `fullWidth` prop so the same primitive works in both the\n// desktop (auto-width, inline strip) and mobile (full-width, vertical\n// stack) layouts of Sales/UI/ContactRow — no duplicated pill code.\n// V3: integrated Step Progress badge (5-dot + N/5) inline in the top\n// row so the sales rep sees the deal advancement without a sibling\n// chip. Pass step=0 to hide the badge entirely.\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";const STATUS_DOT={Draft:\"#7A7A72\",\"Lead In\":\"#C4945A\",\"Contract Made\":\"#3D7A4A\",Pending:\"#E2A03F\",Sold:\"#B83228\"};function StepBadge({step}){const clamped=Math.max(1,Math.min(5,Number(step)||1));const isComplete=clamped>=5;/* Copper 500 (#C4945A) for the filled bg (complete) and the inline\n       text/dots (in-progress). Maxime 2026-07-29 — was Copper 600. */const bg=isComplete?\"rgb(196,148,90)\":\"rgb(243,235,219)\";const fg=isComplete?\"#FFFFFF\":\"rgb(196,148,90)\";const border=isComplete?\"transparent\":\"rgba(196,148,90,0.25)\";return /*#__PURE__*/_jsxs(\"span\",{\"aria-label\":`Step ${clamped} of 5`,style:{display:\"inline-flex\",alignItems:\"center\",gap:6,padding:\"3px 8px\",borderRadius:999,background:bg,border:`1px solid ${border}`,color:fg,fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:11,fontWeight:600,letterSpacing:\"0.02em\",lineHeight:1,whiteSpace:\"nowrap\",flexShrink:0},children:[/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,style:{display:\"inline-flex\",gap:2,alignItems:\"center\"},children:[0,1,2,3,4].map(i=>/*#__PURE__*/_jsx(\"span\",{style:{width:4,height:4,borderRadius:999,background:i<clamped?fg:\"rgba(0,0,0,0.15)\"}},i))}),/*#__PURE__*/_jsxs(\"span\",{children:[clamped,\"/5\"]})]});}export default function DealPill({dealId,status,fullWidth,step,trailingRight}){const dot=STATUS_DOT[status];const showStep=Number(step)>0;return /*#__PURE__*/_jsxs(\"div\",{style:{display:fullWidth?\"flex\":\"inline-flex\",width:fullWidth?\"100%\":\"auto\",flexDirection:\"column\",alignItems:\"stretch\",gap:4,padding:\"10px 14px\",background:\"white\",border:\"1px solid #EFEFEB\",borderRadius:12,fontFamily:\"'Hanken Grotesk', sans-serif\",boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:showStep||trailingRight?\"space-between\":\"flex-start\",gap:10},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontSize:11,fontWeight:500,lineHeight:\"100%\",letterSpacing:\"0.44px\",color:\"#7A7A72\",whiteSpace:\"nowrap\"},children:dealId}),(showStep||trailingRight)&&/*#__PURE__*/_jsxs(\"span\",{style:{display:\"inline-flex\",alignItems:\"center\",gap:8},children:[showStep&&/*#__PURE__*/_jsx(StepBadge,{step:step}),trailingRight]})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"inline-flex\",alignItems:\"center\",gap:6},children:[/*#__PURE__*/_jsx(\"span\",{style:{width:6,height:6,borderRadius:999,background:dot,boxShadow:`0 0 0 2px ${dot}25`,flexShrink:0}}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:13,fontWeight:400,lineHeight:\"20px\",color:\"#2E2E2A\",whiteSpace:\"nowrap\"},children:status})]})]});}DealPill.displayName=\"Sales / UI / Deal Pill\";addPropertyControls(DealPill,{dealId:{type:ControlType.String,title:\"Deal ID\",defaultValue:\"Deal N\\xb0882049\"},status:{type:ControlType.Enum,title:\"Status\",options:[\"Draft\",\"Lead In\",\"Contract Made\",\"Pending\",\"Sold\"],defaultValue:\"Lead In\"},fullWidth:{type:ControlType.Boolean,title:\"Full width\",defaultValue:false,description:\"Stretch to the parent's full width — used by the mobile ContactRow.\"},step:{type:ControlType.Number,title:\"Step\",defaultValue:0,min:0,max:5,step:1,description:\"Current step of the sales tool wizard (1-5). Pass 0 to hide the badge.\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"DealPill\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./DealPill.map","/*\n * DealPill\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/XZT7pl2p7utC7BgE8oe1/54XG0NUNsZGALZBxmop1/DealPill.js\"\nexport { default } from \"https://framerusercontent.com/modules/XZT7pl2p7utC7BgE8oe1/54XG0NUNsZGALZBxmop1/DealPill.js\"\n","// Sales/UI/BtnDark.tsx — Dark filled CTA from Figma library.\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useState}from\"react\";const SIZE={lg:{padY:14,padX:32,radius:14,gap:8,fontSize:15,lineHeight:\"22px\",letterSpacing:\"0px\",weight:600,arrow:14},md:{padY:11,padX:26,radius:12,gap:8,fontSize:13,lineHeight:\"20px\",letterSpacing:\"0px\",weight:600,arrow:13},sm:{padY:8,padX:18,radius:10,gap:8,fontSize:11,lineHeight:\"100%\",letterSpacing:\"0.44px\",weight:600,arrow:11},xs:{padY:6,padX:14,radius:8,gap:6,fontSize:10,lineHeight:\"100%\",letterSpacing:\"0.4px\",weight:600,arrow:10}};function Arrow({size,color,dir}){return /*#__PURE__*/_jsx(\"svg\",{width:size,height:size,viewBox:\"0 0 24 24\",fill:\"none\",stroke:color,strokeWidth:\"2.2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:dir===\"right\"?/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"path\",{d:\"M5 12h14\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M13 5l7 7-7 7\"})]}):/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"path\",{d:\"M7 17L17 7\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M7 7h10v10\"})]})});}export default function BtnDark({label,size,variant,disabled,arrow,onClick,href,fullWidth,font,strokeWidth,strokeColor,strokeColorHover,textColor,textColorHover,radius}){const[hover,setHover]=useState(false);const s=SIZE[size];const isOutline=variant===\"outline\";const r=radius>0?radius:s.radius;let bg;let defaultColor;let defaultBorderColor;if(disabled){bg=isOutline?\"transparent\":\"#DEDED6\";defaultColor=\"#7A7A72\";defaultBorderColor=\"#DDDDD7\";}else if(isOutline){bg=hover?\"#1A1A17\":\"transparent\";defaultColor=hover?\"#FFFFFF\":\"#1A1A17\";defaultBorderColor=hover?\"#1A1A17\":\"#2E2E2A\";}else{bg=hover?\"#43433E\":\"#2E2E2A\";defaultColor=\"#FDFBF7\";defaultBorderColor=\"transparent\";}const color=disabled?defaultColor:hover?textColorHover||textColor||defaultColor:textColor||defaultColor;const borderColor=hover?strokeColorHover||strokeColor||defaultBorderColor:strokeColor||defaultBorderColor;const showBorder=isOutline||disabled||!!strokeColor||hover&&!!strokeColorHover;const border=showBorder?`${strokeWidth??1.5}px solid ${borderColor}`:\"none\";const padY=hover&&!disabled?s.padY-1:s.padY;const padYBottom=hover&&!disabled?s.padY+1:s.padY;const gap=hover&&!disabled?s.gap+3:s.gap;const handleClick=()=>{if(disabled)return;if(onClick)onClick();if(href&&typeof window!==\"undefined\")window.location.href=href;};return /*#__PURE__*/_jsxs(\"button\",{onClick:handleClick,onMouseEnter:()=>setHover(true),onMouseLeave:()=>setHover(false),disabled:disabled,style:{display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",gap,padding:`${padY}px ${s.padX}px ${padYBottom}px`,borderRadius:r,border,background:bg,color,cursor:disabled?\"not-allowed\":\"pointer\",fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:s.fontSize,lineHeight:s.lineHeight,letterSpacing:s.letterSpacing,fontWeight:s.weight,...font??{},width:fullWidth?\"100%\":\"auto\",opacity:disabled?.45:hover?.82:1,transition:\"background .2s ease, color .2s ease, border-color .2s ease, padding .2s ease, gap .2s ease, border-radius .2s ease, opacity .18s ease\",whiteSpace:\"nowrap\",boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsx(\"span\",{children:label}),arrow!==\"none\"&&/*#__PURE__*/_jsx(Arrow,{size:s.arrow,color:color,dir:arrow})]});}BtnDark.displayName=\"Sales / UI / Btn Dark\";addPropertyControls(BtnDark,{label:{type:ControlType.String,title:\"Label\",defaultValue:\"Explore fleet\"},size:{type:ControlType.Enum,title:\"Size\",options:[\"lg\",\"md\",\"sm\",\"xs\"],optionTitles:[\"LG\",\"MD\",\"SM\",\"XS\"],defaultValue:\"lg\"},variant:{type:ControlType.Enum,title:\"Variant\",options:[\"filled\",\"outline\"],optionTitles:[\"Filled\",\"Outline\"],defaultValue:\"filled\"},arrow:{type:ControlType.Enum,title:\"Arrow\",options:[\"none\",\"right\",\"topRight\"],optionTitles:[\"None\",\"Right →\",\"Top-right ↗\"],defaultValue:\"right\"},disabled:{type:ControlType.Boolean,title:\"Disabled\",defaultValue:false},href:{type:ControlType.String,title:\"Link\",defaultValue:\"\"},fullWidth:{type:ControlType.Boolean,title:\"Full width\",defaultValue:false},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",defaultFontType:\"sans-serif\"},textColor:{type:ControlType.Color,title:\"Text color\",defaultValue:\"\",description:\"Override default. Empty = state-based.\"},textColorHover:{type:ControlType.Color,title:\"Text hover\",defaultValue:\"\"},strokeColor:{type:ControlType.Color,title:\"Stroke color\",defaultValue:\"\",description:\"Override border color. Empty = state-based. Setting any value forces border on filled too.\"},strokeColorHover:{type:ControlType.Color,title:\"Stroke hover\",defaultValue:\"\"},strokeWidth:{type:ControlType.Number,title:\"Stroke W\",min:0,max:4,step:.5,defaultValue:1.5},radius:{type:ControlType.Number,title:\"Radius\",min:0,max:999,step:1,defaultValue:0,description:\"0 = use size default. Set to 999 for full pill.\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"BtnDark\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./BtnDark.map","/*\n * BtnDark\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/6qRSBuvQB3Md4J2mqd1J/LviZWl6vUo7DzFaLSFGO/BtnDark.js\"\nexport { default } from \"https://framerusercontent.com/modules/6qRSBuvQB3Md4J2mqd1J/LviZWl6vUo7DzFaLSFGO/BtnDark.js\"\n","// Sales/UI/ContactRow.tsx — Row card primitive for the search results list.\n//\n// Fully composable via property controls: pass in up to 4 info columns\n// (eyebrow + value pairs), a JSON array of deals, a count label, and a CTA\n// label. Reuses Sales/UI/DealPill for the deals strip and Sales/UI/BtnDark\n// for the CTA button — no inlined pill or button styling.\n//\n// Layout:\n//  - Desktop: horizontal row (info columns / deals strip / count + CTA).\n//  - Mobile:  vertical stack matching the \"John Doe\" mockup — contact name\n//    as a large heading, a 3-column info grid (COMPANY / LABEL / OWNER),\n//    a sand container holding vertically stacked full-width DealPills,\n//    and a single full-width BtnDark CTA at the bottom.\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useEffect,useRef,useState}from\"react\";import{createPortal}from\"react-dom\";import DealPill from\"https://framer.com/m/DealPill-pAeOm4.js\";import BtnDark from\"https://framer.com/m/BtnDark-j4FwoV.js\";const formatDealDate=iso=>{if(!iso)return\"\";const d=new Date(iso);if(isNaN(d.getTime()))return\"\";const MO=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"];return`${d.getDate()} ${MO[d.getMonth()]} ${d.getFullYear()}`;};const D={bgCard:\"rgb(255, 255, 255)\",borderSoft:\"rgb(239, 239, 235)\",inkPrimary:\"rgb(26, 26, 23)\",inkSubtle:\"rgb(137, 129, 126)\",copper600:\"rgb(173, 126, 71)\",sand50:\"rgb(250, 246, 238)\"};function useSalesStore(){/* SSR-safe: null on server render AND first client render (during\n       hydration) so the initial DOM matches. The store is set via\n       setState from useEffect on mount, triggering a normal re-render. */const[store,setStore]=useState(null);useEffect(()=>{if(typeof window===\"undefined\")return;let unsub;const sub=()=>{const s=window.__jetflySales;if(s){setStore(s);unsub=s.subscribe(()=>setStore(s));return true;}return false;};if(sub())return()=>unsub?.();const id=window.setInterval(()=>{if(sub())window.clearInterval(id);},200);return()=>{window.clearInterval(id);unsub?.();};},[]);return store;}function safeParseDeals(json){if(!json)return[];try{const parsed=JSON.parse(json);if(!Array.isArray(parsed))return[];return parsed.filter(d=>d&&typeof d.id===\"string\");}catch{return[];}}function statusToPillLabel(s){if(s===\"draft\")return\"Draft\";if(s===\"contract-made\")return\"Contract Made\";if(s===\"pending\")return\"Pending\";if(s===\"sold\")return\"Sold\";return\"Lead In\";}/* Small \"Step n/5\" progress chip glued to the DealPill so the sales\n   rep sees how far each deal has advanced without opening it. Copper\n   background scales darker as the deal moves toward step 5. */function StepProgress({step,tokens,compact}){const clamped=Math.max(1,Math.min(5,Number(step)||1));const fillCount=clamped;const isComplete=clamped>=5;const bg=isComplete?tokens.copper500||\"rgb(196,148,90)\":tokens.sand200||\"rgb(243,235,219)\";const fg=isComplete?\"#FFFFFF\":tokens.copper500||\"rgb(196,148,90)\";const border=isComplete?\"transparent\":tokens.copperSoft||tokens.copper200||\"rgba(196,148,90,0.25)\";return /*#__PURE__*/_jsxs(\"span\",{\"aria-label\":`Step ${clamped} of 5`,style:{display:\"inline-flex\",alignItems:\"center\",gap:6,padding:compact?\"3px 8px\":\"4px 10px\",borderRadius:999,background:bg,border:`1px solid ${border}`,color:fg,fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:11,fontWeight:600,letterSpacing:\"0.02em\",lineHeight:1,whiteSpace:\"nowrap\",flexShrink:0},children:[/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,style:{display:\"inline-flex\",gap:2,alignItems:\"center\"},children:[0,1,2,3,4].map(i=>/*#__PURE__*/_jsx(\"span\",{style:{width:compact?4:5,height:compact?4:5,borderRadius:999,background:i<fillCount?fg:\"rgba(0,0,0,0.15)\"}},i))}),/*#__PURE__*/_jsxs(\"span\",{children:[clamped,\"/5\"]})]});}/* Extract initials from a name — \"Umut Sevinc\" → \"US\", \"Kim\" → \"K\",\n   fallback \"?\" on empty. Max 2 letters. */function initialsOf(name){const parts=String(name||\"\").trim().split(/\\s+/).filter(Boolean);if(parts.length===0)return\"?\";if(parts.length===1)return parts[0].charAt(0).toUpperCase();return parts[0].charAt(0).toUpperCase()+parts[parts.length-1].charAt(0).toUpperCase();}function AvatarInitials({name,email,label,copperDeep,ink,inkMuted,borderSoft,bgCard,compact,loading}){/* Custom hover tooltip: portalled to <body> so it escapes any\n       overflow:hidden ancestor, positioned via getBoundingClientRect\n       above the avatar (or below if not enough room). Native `title`\n       removed to avoid double-tooltip stacking. */const avatarRef=useRef(null);const[hover,setHover]=useState(false);const[pos,setPos]=useState(null);const compute=()=>{const el=avatarRef.current;if(!el||typeof window===\"undefined\")return;const r=el.getBoundingClientRect();const placeBelow=r.top<48;/* Clamp horizontally so the popover never spills past the\n           viewport. Popover width is between 220 and 300 → assume 260\n           and clamp its centre to keep both edges ≥ 12px inside the\n           viewport on any mobile width. */const POPOVER_W=260;const MARGIN=12;const vw=window.innerWidth;const rawCenter=r.left+r.width/2;const minCenter=MARGIN+POPOVER_W/2;const maxCenter=vw-MARGIN-POPOVER_W/2;const center=Math.max(minCenter,Math.min(maxCenter,rawCenter));setPos({left:center,top:placeBelow?r.bottom+8:r.top-8,placeBelow});};useEffect(()=>{if(!hover)return;compute();const onScroll=()=>compute();window.addEventListener(\"scroll\",onScroll,true);window.addEventListener(\"resize\",onScroll);return()=>{window.removeEventListener(\"scroll\",onScroll,true);window.removeEventListener(\"resize\",onScroll);};},[hover]);/* Unclaimed state = empty name. Render a dashed empty circle and\n       skip the hover popover — nobody to describe yet. */const isEmpty=!String(name||\"\").trim();if(loading&&isEmpty){return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:compact?8:6,minWidth:0,flex:\"0 0 auto\"},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:11,fontWeight:600,letterSpacing:\"0.14em\",textTransform:\"uppercase\",color:copperDeep,lineHeight:1,whiteSpace:\"nowrap\"},children:label}),/*#__PURE__*/_jsx(\"style\",{children:`@keyframes jetflyRowSkel {\n                    0% { background-position: 200% 0; }\n                    100% { background-position: -200% 0; }\n                }`}),/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,style:{width:32,height:32,borderRadius:999,background:\"linear-gradient(90deg, #EFEFEB 0%, #F7F7F5 50%, #EFEFEB 100%)\",backgroundSize:\"200% 100%\",animation:\"jetflyRowSkel 1.4s linear infinite\"}})]});}return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:compact?8:6,minWidth:0,flex:\"0 0 auto\"},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:11,fontWeight:600,letterSpacing:\"0.14em\",textTransform:\"uppercase\",color:copperDeep,lineHeight:1,whiteSpace:\"nowrap\"},children:label}),/*#__PURE__*/_jsx(\"div\",{ref:avatarRef,\"aria-label\":isEmpty?\"Unclaimed\":name,onMouseEnter:()=>!isEmpty&&setHover(true),onMouseLeave:()=>setHover(false),style:{width:32,height:32,borderRadius:999,background:isEmpty?\"transparent\":\"#F0EBE0\",border:isEmpty?`1.5px dashed ${inkMuted}`:\"1px solid transparent\",color:isEmpty?\"transparent\":ink,display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:12,fontWeight:600,letterSpacing:\"0.02em\",userSelect:\"none\",cursor:\"default\",flexShrink:0,boxSizing:\"border-box\"},children:isEmpty?\"\":initialsOf(name)}),hover&&name&&pos&&typeof document!==\"undefined\"&&/*#__PURE__*/createPortal(/*#__PURE__*/_jsxs(\"div\",{role:\"dialog\",\"aria-label\":name,style:{position:\"fixed\",left:pos.left,top:pos.top,transform:pos.placeBelow?\"translate(-50%, 0)\":\"translate(-50%, -100%)\",background:bgCard,border:`1px solid ${borderSoft}`,borderRadius:14,boxShadow:\"0 18px 40px rgba(15, 12, 6, 0.12), 0 4px 12px rgba(15, 12, 6, 0.06)\",padding:14,minWidth:220,maxWidth:300,zIndex:2147483647,fontFamily:\"'Hanken Grotesk', sans-serif\",pointerEvents:\"none\",animation:\"jetflyAvatarPopIn .18s ease\",boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsx(\"style\",{children:`@keyframes jetflyAvatarPopIn {\n                            from { opacity: 0; transform: translate(-50%, ${pos.placeBelow?\"-2px\":\"calc(-100% + 2px)\"}); }\n                            to   { opacity: 1; }\n                        }`}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:12},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:40,height:40,borderRadius:999,background:\"#F0EBE0\",color:ink,display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",fontSize:13,fontWeight:600,letterSpacing:\"0.02em\",flexShrink:0},children:initialsOf(name)}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",minWidth:0,flex:1},children:[/*#__PURE__*/_jsx(\"span\",{style:{color:ink,fontSize:14,fontWeight:600,whiteSpace:\"nowrap\",overflow:\"hidden\",textOverflow:\"ellipsis\"},children:name}),email&&/*#__PURE__*/_jsx(\"span\",{style:{color:inkMuted,fontSize:12,whiteSpace:\"nowrap\",overflow:\"hidden\",textOverflow:\"ellipsis\"},children:email})]})]})]}),document.body)]});}function SkelBar({width,height=14}){return /*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,style:{display:\"block\",width,height,borderRadius:6,background:\"linear-gradient(90deg, #EFEFEB 0%, #F7F7F5 50%, #EFEFEB 100%)\",backgroundSize:\"200% 100%\",animation:\"jetflyRowSkel 1.4s linear infinite\"}});}function InfoColumn({label,value,copperDeep,ink,compact,loading}){if(!label&&!value&&!loading)return null;/* Each column takes an equal share of the row (flex: 1 1 0). Values\n       truncate with ellipsis so a long \"Beaumont Family Office\" never\n       pushes the OWNER column out of alignment with the row above. */return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:compact?8:6,minWidth:0,flex:\"1 1 0\"},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:11,fontWeight:600,letterSpacing:\"0.14em\",textTransform:\"uppercase\",color:copperDeep,lineHeight:1,whiteSpace:\"nowrap\",overflow:\"hidden\",textOverflow:\"ellipsis\"},children:label}),loading&&!value?/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"style\",{children:`@keyframes jetflyRowSkel {\n                        0% { background-position: 200% 0; }\n                        100% { background-position: -200% 0; }\n                    }`}),/*#__PURE__*/_jsx(SkelBar,{width:compact?72:96,height:compact?12:14})]}):/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:compact?14:16,fontWeight:500,lineHeight:1.25,color:ink,/* Wrap to at most 2 lines instead of ellipsing on\n                           a single line — lets \"Alexandre Dupont\" /\n                           \"Dupont Investments\" fit fully in narrow cols. */display:\"-webkit-box\",WebkitLineClamp:2,WebkitBoxOrient:\"vertical\",overflow:\"hidden\",overflowWrap:\"anywhere\",wordBreak:\"break-word\"},title:value,children:value||\"—\"})]});}/* Horizontal scroll strip for the deals list, with:\n   - hidden scrollbar (still scrollable via wheel / touch / drag)\n   - fade masks on the left + right sides that appear only when there's\n     content overflowing in that direction\n   - each pill wrapped in a clickable button that opens the detail\n     modal via the row's regular CTA handler */function DealsScrollStrip({deals,statusToPillLabel,onPillClick,fadeBg,tokens}){const ref=useRef(null);const[fadeLeft,setFadeLeft]=useState(false);const[fadeRight,setFadeRight]=useState(false);const measure=()=>{const el=ref.current;if(!el)return;setFadeLeft(el.scrollLeft>4);setFadeRight(el.scrollLeft+el.clientWidth<el.scrollWidth-4);};useEffect(()=>{measure();const el=ref.current;if(!el)return;const onScroll=()=>measure();el.addEventListener(\"scroll\",onScroll,{passive:true});const ro=new ResizeObserver(measure);ro.observe(el);return()=>{el.removeEventListener(\"scroll\",onScroll);ro.disconnect();};},[deals.length]);return /*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",flex:1,minWidth:0,display:\"flex\",alignItems:\"center\"},children:[/*#__PURE__*/_jsx(\"style\",{children:`\n                .jetfly-deals-strip::-webkit-scrollbar { display: none; }\n            `}),/*#__PURE__*/_jsx(\"div\",{ref:ref,className:\"jetfly-deals-strip\",style:{display:\"flex\",alignItems:\"center\",gap:8,width:\"100%\",minWidth:0,overflowX:\"auto\",scrollbarWidth:\"none\",msOverflowStyle:\"none\"},children:deals.slice(0,6).map(d=>/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:e=>{e.stopPropagation();onPillClick();},style:{all:\"unset\",cursor:\"pointer\",flexShrink:0,borderRadius:12,outline:\"1.5px solid transparent\",outlineOffset:\"-1.5px\",transition:\"transform .12s ease, outline-color .15s ease\"},onMouseEnter:e=>{e.currentTarget.style.outlineColor=\"#C4945A\";},onMouseLeave:e=>{e.currentTarget.style.outlineColor=\"transparent\";},onMouseDown:e=>{e.currentTarget.style.transform=\"scale(0.97)\";},onMouseUp:e=>{e.currentTarget.style.transform=\"scale(1)\";},children:/*#__PURE__*/_jsx(DealPill,{dealId:formatDealDate(d.created_at||d.updated_at)||`Deal N\\xb0${d.number}`,status:statusToPillLabel(d.status),fullWidth:false,step:Number(d.current_step)||1})},d.id))}),fadeLeft&&/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,style:{position:\"absolute\",left:0,top:0,bottom:0,width:24,pointerEvents:\"none\",background:`linear-gradient(to right, ${fadeBg}, ${fadeBg}00)`}}),fadeRight&&/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,style:{position:\"absolute\",right:0,top:0,bottom:0,width:24,pointerEvents:\"none\",background:`linear-gradient(to left, ${fadeBg}, ${fadeBg}00)`}})]});}export default function ContactRow(props){const store=useSalesStore();const t=store?.state?.tokens??{};const tokens={bgCard:t.bgCard??D.bgCard,borderSoft:t.borderSoft??D.borderSoft,ink:t.inkPrimary??D.inkPrimary,inkMuted:t.inkMuted??\"rgb(122, 122, 114)\",inkSubtle:t.inkSubtle??D.inkSubtle,copperDeep:t.copper600??D.copper600,sand50:t.sand50??D.sand50};/* Measure the ContactRow's own container width via ResizeObserver so\n       the mobile layout kicks in inside Framer canvas breakpoints\n       regardless of window.innerWidth. */const rootRef=useRef(null);const[w,setW]=useState(1200);useEffect(()=>{if(typeof window===\"undefined\"||!rootRef.current)return;const el=rootRef.current;const ro=new ResizeObserver(entries=>{for(const e of entries)setW(e.contentRect.width);});ro.observe(el);setW(el.getBoundingClientRect().width);return()=>ro.disconnect();},[]);const isMobile=w>0&&w<(props.mobileBreakpoint||640);/* Tablet = \"compact desktop\": info columns on line 1, deals + count +\n       CTA wrap to line 2. Prevents the fixed-width CTA block from\n       spilling past the card border on ~700–900px containers. */const isTablet=!isMobile&&w>0&&w<760;const deals=safeParseDeals(props.dealsJson);// Count the deals that exist in Pipedrive today, once each. Several\n// proposals of the tool can point to the same deal, and a proposal can\n// outlive a deal deleted in Pipedrive: neither may inflate the count.\n// Before the live Pipedrive list has been compared (`_pdChecked`), fall\n// back to the linked proposals, still one per deal.\nconst pdChecked=deals.some(d=>d?._pdChecked===true||d?._pipedriveOnly===true);const pdSeen=new Set;const pdDeals=deals.filter(d=>{const pdId=d?.pipedrive_deal_id!=null?String(d.pipedrive_deal_id):\"\";const isPd=d?._pipedriveOnly===true||!!pdId&&(!pdChecked||d?._pdConfirmed===true);if(!isPd)return false;const key=pdId||String(d?.id??\"\");if(pdSeen.has(key))return false;pdSeen.add(key);return true;});const activeCount=pdDeals.length;const countText=activeCount===0?props.emptyCountLabel||\"No active deal\":(props.countTemplate||\"{n} active deals\").replace(\"{n}\",String(activeCount));const ctaLabel=activeCount>0?props.ctaLabel||\"Open\":props.ctaLabelEmpty||\"Add deal\";const ctaArrow=activeCount>0?props.ctaArrow||\"right\":\"none\";/* The mobile-only \"Choose a deal\" bottom sheet was removed: on all\n       viewports the CustomerCardList ContactDetailModal (opened via\n       `jetfly:customer-open`) already lists every deal. */const handleCtaClick=()=>{props.onCtaClick?.();if(typeof window!==\"undefined\"){window.dispatchEvent(new CustomEvent(\"jetfly:contactrow-cta\"));}};/* Mobile layout — mirrors the \"John Doe\" mockup exactly. */if(isMobile){return /*#__PURE__*/_jsxs(\"div\",{ref:rootRef,style:{width:\"100%\",background:tokens.bgCard,border:`1px solid ${tokens.borderSoft}`,borderRadius:20,padding:20,boxSizing:\"border-box\",display:\"flex\",flexDirection:\"column\",gap:16,fontFamily:\"'Hanken Grotesk', sans-serif\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:16,width:\"100%\"},children:[/*#__PURE__*/_jsx(InfoColumn,{label:props.col1Label,value:props.col1Value,copperDeep:tokens.copperDeep,ink:tokens.ink}),/*#__PURE__*/_jsx(InfoColumn,{label:props.col2Label,value:props.col2Value,copperDeep:tokens.copperDeep,ink:tokens.ink,loading:props.col2Loading}),/*#__PURE__*/_jsx(InfoColumn,{label:props.col3Label,value:props.col3Value,copperDeep:tokens.copperDeep,ink:tokens.ink}),props.col4Kind===\"avatar\"?/*#__PURE__*/_jsx(AvatarInitials,{label:props.col4Label,name:props.col4Value,email:props.col4Email,copperDeep:tokens.copperDeep,ink:tokens.ink,inkMuted:tokens.inkMuted,borderSoft:tokens.borderSoft,bgCard:tokens.bgCard,loading:props.col4Loading}):/*#__PURE__*/_jsx(InfoColumn,{label:props.col4Label,value:props.col4Value,copperDeep:tokens.copperDeep,ink:tokens.ink,loading:props.col4Loading})]}),(()=>{const totalDeals=pdDeals.filter(d=>d?.status!==\"won\"&&d?.status!==\"lost\").length;return /*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\"},children:/*#__PURE__*/_jsxs(\"button\",{type:\"button\",onClick:e=>{e.stopPropagation();handleCtaClick();},style:{all:\"unset\",cursor:\"pointer\",display:\"flex\",flexDirection:\"column\",gap:6},\"aria-label\":`${totalDeals} deal${totalDeals===1?\"\":\"s\"}`,children:[/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:11,fontWeight:600,letterSpacing:\"0.14em\",textTransform:\"uppercase\",color:tokens.copperDeep,lineHeight:1},children:\"Deals\"}),props.kpisLoading?/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"style\",{children:`@keyframes jetflyRowSkel { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } }`}),/*#__PURE__*/_jsx(SkelBar,{width:22,height:16})]}):/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:16,fontWeight:500,lineHeight:1.25,color:tokens.ink},children:totalDeals})]})});})(),/*#__PURE__*/_jsx(BtnDark,{label:ctaLabel,size:\"md\",variant:\"filled\",arrow:\"none\",disabled:false,onClick:handleCtaClick,href:\"\",fullWidth:true,font:null,strokeWidth:1.5,strokeColor:\"\",strokeColorHover:\"\",textColor:\"\",textColorHover:\"\",radius:12})]});}/* Desktop / tablet layout — wraps to a second row at tablet widths so\n       the deals strip + CTA don't overflow the card. */return /*#__PURE__*/_jsxs(\"div\",{ref:rootRef,style:{width:\"100%\",background:tokens.bgCard,border:`1px solid ${tokens.borderSoft}`,borderRadius:16,padding:\"18px 20px\",boxSizing:\"border-box\",display:\"flex\",flexDirection:\"row\",alignItems:isTablet?\"stretch\":\"center\",flexWrap:isTablet?\"wrap\":\"nowrap\",rowGap:isTablet?14:0,gap:20,fontFamily:\"'Hanken Grotesk', sans-serif\",transition:\"border-color .15s ease\",overflow:\"hidden\"},children:[(()=>{const totalDeals=pdDeals.filter(d=>d?.status!==\"won\"&&d?.status!==\"lost\").length;return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:isTablet?20:24,flexWrap:\"nowrap\",flex:isTablet?\"0 0 100%\":\"1 1 0\",flexBasis:isTablet?\"100%\":0,minWidth:0,alignItems:\"flex-start\"},children:[/*#__PURE__*/_jsx(InfoColumn,{label:props.col1Label,value:props.col1Value,copperDeep:tokens.copperDeep,ink:tokens.ink}),/*#__PURE__*/_jsx(InfoColumn,{label:props.col2Label,value:props.col2Value,copperDeep:tokens.copperDeep,ink:tokens.ink,loading:props.col2Loading}),/*#__PURE__*/_jsx(InfoColumn,{label:props.col3Label,value:props.col3Value,copperDeep:tokens.copperDeep,ink:tokens.ink}),/*#__PURE__*/_jsx(\"div\",{style:{flex:\"1 1 0\",minWidth:0},children:props.col4Kind===\"avatar\"?/*#__PURE__*/_jsx(AvatarInitials,{label:props.col4Label,name:props.col4Value,email:props.col4Email,copperDeep:tokens.copperDeep,ink:tokens.ink,inkMuted:tokens.inkMuted,borderSoft:tokens.borderSoft,bgCard:tokens.bgCard,loading:props.col4Loading}):/*#__PURE__*/_jsx(InfoColumn,{label:props.col4Label,value:props.col4Value,copperDeep:tokens.copperDeep,ink:tokens.ink,loading:props.col4Loading})}),/*#__PURE__*/_jsxs(\"div\",{style:{flex:\"1 1 0\",minWidth:0,display:\"flex\",flexDirection:\"column\",gap:6},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:11,fontWeight:600,letterSpacing:\"0.14em\",textTransform:\"uppercase\",color:tokens.copperDeep,lineHeight:1},children:\"Deals\"}),props.kpisLoading?/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"style\",{children:`@keyframes jetflyRowSkel { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } }`}),/*#__PURE__*/_jsx(SkelBar,{width:80,height:28})]}):pdDeals.length===0?/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:13,color:tokens.ink,opacity:.4},children:\"—\"}):/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:15,fontWeight:600,color:tokens.ink},children:pdDeals.length})]})]});})(),/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",alignItems:\"center\",flexShrink:0,justifyContent:\"flex-end\"},children:/*#__PURE__*/_jsx(BtnDark,{label:ctaLabel,size:\"md\",variant:\"filled\",arrow:\"none\",disabled:false,onClick:handleCtaClick,href:\"\",fullWidth:false,font:null,strokeWidth:1.5,strokeColor:\"\",strokeColorHover:\"\",textColor:\"\",textColorHover:\"\",radius:999})})]});}ContactRow.displayName=\"Sales / UI / Contact Row\";addPropertyControls(ContactRow,{col1Label:{type:ControlType.String,title:\"Col 1 label\",defaultValue:\"CONTACT\"},col1Value:{type:ControlType.String,title:\"Col 1 value\",defaultValue:\"John Doe\"},col2Label:{type:ControlType.String,title:\"Col 2 label\",defaultValue:\"COMPANY\"},col2Value:{type:ControlType.String,title:\"Col 2 value\",defaultValue:\"JD Holding\"},col3Label:{type:ControlType.String,title:\"Col 3 label\",defaultValue:\"LABEL\"},col3Value:{type:ControlType.String,title:\"Col 3 value\",defaultValue:\"Prospect\"},col4Label:{type:ControlType.String,title:\"Col 4 label\",defaultValue:\"OWNER\"},col4Value:{type:ControlType.String,title:\"Col 4 value\",defaultValue:\"Kim\"},col4Kind:{type:ControlType.Enum,title:\"Col 4 kind\",options:[\"text\",\"avatar\"],optionTitles:[\"Text\",\"Avatar (initials + hover tooltip)\"],defaultValue:\"text\",displaySegmentedControl:true},col4Email:{type:ControlType.String,title:\"Col 4 email\",defaultValue:\"\",description:\"Shown in the avatar hover popover under the name (only for col4Kind=avatar).\",hidden:p=>p.col4Kind!==\"avatar\"},dealsJson:{type:ControlType.String,title:\"Deals JSON\",defaultValue:JSON.stringify([{id:\"d1\",number:\"882049\",status:\"lead-in\"},{id:\"d2\",number:\"882049\",status:\"contract-made\"}]),displayTextArea:true,description:\"JSON array of {id, number, status}. Status: lead-in|contract-made|available|sold|pending|draft.\"},countTemplate:{type:ControlType.String,title:\"Count template\",defaultValue:\"{n} active deals\",description:\"Use {n} as the count substitution.\"},emptyCountLabel:{type:ControlType.String,title:\"Empty count\",defaultValue:\"No active deal\"},ctaLabel:{type:ControlType.String,title:\"CTA label\",defaultValue:\"Open\"},ctaLabelEmpty:{type:ControlType.String,title:\"CTA (empty)\",defaultValue:\"Add deal\"},ctaArrow:{type:ControlType.Enum,title:\"CTA arrow\",options:[\"none\",\"right\",\"topRight\"],defaultValue:\"right\",displaySegmentedControl:true},mobileBreakpoint:{type:ControlType.Number,title:\"Mobile bp\",defaultValue:640,min:360,max:1200,step:10},nameFont:{type:ControlType.Font,title:\"Name font\",controls:\"extended\",defaultFontType:\"sans-serif\"},nameSize:{type:ControlType.Number,title:\"Name size\",defaultValue:24,min:12,max:64,step:1,unit:\"px\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ContactRow\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ContactRow.map","/*\n * ContactRow\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/rfsj2grKbG46gcKQPQVB/SNLxGeNm6bDd1c480RS2/ContactRow.js\"\nexport { default } from \"https://framerusercontent.com/modules/rfsj2grKbG46gcKQPQVB/SNLxGeNm6bDd1c480RS2/ContactRow.js\"\n","// Sales/CustomerCard.tsx — V2 contact row card.\n//\n// Thin wrapper on Sales/UI/ContactRow so all the layout logic\n// (desktop / tablet-wrap / mobile-heading / deal-picker modal) lives in\n// one place. This component just plumbs CustomerCardList's DB row\n// fields into the ContactRow API. Any card-visual change happens in\n// Sales/UI/ContactRow.tsx and propagates here for free.\n//\n// Behavior — `onCtaClick` branches by deal count:\n//   • deals.length === 0  →  \"Add deal\" path: link this prospect as the\n//     proposal's existing customer, prefill Step 2 form data from the\n//     DB row we already have, then navigate to Step 2 via\n//     store.gotoStep(2) (falls back to /sales/contacts if the store is\n//     unavailable).\n//   • deals.length >= 1   →  \"Open\" path: dispatch jetfly:customer-open\n//     with the customerId; the hosting page decides whether to open a\n//     detail modal or route to Step 2.\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import ContactRow from\"https://framer.com/m/ContactRow-SSJ337.js\";/* Split \"Alexandre Dupont\" → { first: \"Alexandre\", last: \"Dupont\" }.\n   \"Aurélie de la Fontaine\" → { first: \"Aurélie\", last: \"de la Fontaine\" }.\n   Single-word names go entirely into first_name so nothing is lost. */function splitName(full){const trimmed=String(full||\"\").trim();if(!trimmed)return{first:\"\",last:\"\"};const parts=trimmed.split(/\\s+/);if(parts.length===1)return{first:parts[0],last:\"\"};return{first:parts[0],last:parts.slice(1).join(\" \")};}const DIAL_TO_ISO={\"+1\":\"US\",\"+33\":\"FR\",\"+32\":\"BE\",\"+41\":\"CH\",\"+352\":\"LU\",\"+49\":\"DE\",\"+34\":\"ES\",\"+39\":\"IT\",\"+31\":\"NL\",\"+44\":\"GB\",\"+351\":\"PT\",\"+43\":\"AT\",\"+45\":\"DK\",\"+46\":\"SE\",\"+47\":\"NO\",\"+353\":\"IE\",\"+420\":\"CZ\",\"+48\":\"PL\",\"+30\":\"GR\"};function parsePhone(raw){const trimmed=String(raw||\"\").trim();if(!trimmed)return{country:\"\",code:\"\",number:\"\"};if(!trimmed.startsWith(\"+\"))return{country:\"\",code:\"\",number:trimmed};/* Try 3-digit code first (e.g. +352), then 2, then 1. */for(const len of[4,3,2]){const candidate=trimmed.slice(0,len);if(/^\\+\\d+$/.test(candidate)&&DIAL_TO_ISO[candidate]){const rest=trimmed.slice(len).trim();return{country:DIAL_TO_ISO[candidate],code:candidate,number:rest};}}/* Unknown dial code — bail with empty country. */const match=trimmed.match(/^(\\+\\d{1,4})[\\s-]*(.*)$/);if(match)return{country:\"\",code:match[1],number:match[2].trim()};return{country:\"\",code:\"\",number:trimmed};}function safeCount(json){if(!json)return 0;try{const parsed=JSON.parse(json);return Array.isArray(parsed)?parsed.length:0;}catch{return 0;}}export default function CustomerCard(props){const handleCta=()=>{if(typeof window===\"undefined\")return;// Parse deals to find first active Pipedrive deal (numeric id)\nconst dealsArr=(()=>{try{return JSON.parse(props.dealsJson||\"[]\");}catch{return[];}})();const activeDeal=dealsArr.find(d=>d?.status!==\"won\"&&d?.status!==\"lost\"&&/^\\d+$/.test(String(d?.id)));if(activeDeal){window.location.href=`/sales/deal?personId=${props.customerId}&dealId=${activeDeal.id}`;return;}// No active Pipedrive deal — open contact modal (add deal flow)\nwindow.dispatchEvent(new CustomEvent(\"jetfly:customer-open\",{detail:{customerId:props.customerId}}));};return /*#__PURE__*/_jsx(ContactRow,{col1Label:\"CONTACT\",col1Value:props.fullName||\"\",col2Label:\"COMPANY\",col2Value:props.company||\"\",col2Loading:!!props.companyLoading,col3Label:\"LABEL\",col3Value:props.label||\"\",col4Label:\"OWNER\",col4Value:props.owner||\"\",col4Kind:\"avatar\",col4Email:props.ownerEmail||\"\",col4Loading:!!props.ownerLoading,kpisLoading:!!props.kpisLoading,dealsJson:props.dealsJson||\"[]\",countTemplate:\"{n} active deals\",emptyCountLabel:\"No active deal\",ctaLabel:props.openLabel||\"Open\",ctaLabelEmpty:props.openLabel||\"Open\",ctaArrow:\"right\",mobileBreakpoint:props.mobileBreakpoint||640,nameFont:props.nameFont,nameSize:props.nameSize||24,onCtaClick:handleCta});}CustomerCard.displayName=\"Sales / Customer Card\";addPropertyControls(CustomerCard,{customerId:{type:ControlType.String,title:\"Customer ID\",defaultValue:\"\"},fullName:{type:ControlType.String,title:\"Full name\",defaultValue:\"John Doe\"},company:{type:ControlType.String,title:\"Company\",defaultValue:\"JD Holding\"},email:{type:ControlType.String,title:\"Email\",defaultValue:\"\"},phone:{type:ControlType.String,title:\"Phone\",defaultValue:\"\"},label:{type:ControlType.String,title:\"Label\",defaultValue:\"Prospect\"},owner:{type:ControlType.String,title:\"Owner\",defaultValue:\"Kim\"},ownerEmail:{type:ControlType.String,title:\"Owner email\",defaultValue:\"\"},dealsJson:{type:ControlType.String,title:\"Deals JSON\",defaultValue:JSON.stringify([{id:\"d1\",number:\"882049\",status:\"lead-in\"},{id:\"d2\",number:\"882049\",status:\"contract-made\"}]),displayTextArea:true},openLabel:{type:ControlType.String,title:\"Open label\",defaultValue:\"Open\"},addDealLabel:{type:ControlType.String,title:\"Add deal label\",defaultValue:\"Add deal\"},mobileBreakpoint:{type:ControlType.Number,title:\"Mobile bp\",defaultValue:640,min:360,max:1200,step:10},nameFont:{type:ControlType.Font,title:\"Name font\",controls:\"extended\",defaultFontType:\"sans-serif\"},nameSize:{type:ControlType.Number,title:\"Name size\",defaultValue:24,min:12,max:64,step:1,unit:\"px\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CustomerCard\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CustomerCard.map","/*\n * CustomerCard\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/7rXG0K4wkYz63dnNgcup/poWgTrnyYSZIy00EXMfl/CustomerCard.js\"\nexport { default } from \"https://framerusercontent.com/modules/7rXG0K4wkYz63dnNgcup/poWgTrnyYSZIy00EXMfl/CustomerCard.js\"\n","/*\n * BtnPrimary\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/6HiQfb9824SdDTVcfRQr/0XmxT5u0w5DTF6cfggXL/BtnPrimary.js\"\nexport { default } from \"https://framerusercontent.com/modules/6HiQfb9824SdDTVcfRQr/0XmxT5u0w5DTF6cfggXL/BtnPrimary.js\"\n","// Sales/UI/OptionList.tsx — Standalone list panel primitive.\n//\n// Renders a floating panel with an optional search input, a scrollable\n// list of options, keyboard navigation (arrows, Enter, Escape), hover\n// focus, and an empty state. Used by Sales/UI/DropdownUi and any future\n// autocomplete surfaces (contacts, airports, etc.) — no dropdown or\n// autocomplete should hand-roll its own list.\n//\n// The panel is positionless: consumers wrap it in their own absolutely\n// positioned container so they control placement (top/bottom, popover\n// portal, inline, etc.). This keeps the primitive tiny and composable.\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useEffect,useRef,useState}from\"react\";const D={bg:\"rgb(255, 255, 255)\",border:\"rgb(239, 239, 235)\",ink:\"rgb(26, 26, 23)\",inkMuted:\"rgb(137, 129, 126)\",hoverBg:\"rgba(196, 148, 90, 0.08)\",selectedBg:\"rgba(196, 148, 90, 0.12)\",selectedInk:\"rgb(26, 26, 23)\"};function useSalesTokens(){const[,force]=useState(0);useEffect(()=>{if(typeof window===\"undefined\")return;const store=window.__jetflySales;if(!store)return;const unsub=store.subscribe(()=>force(t=>t+1));return()=>unsub?.();},[]);if(typeof window===\"undefined\")return{};return window.__jetflySales?.state?.tokens??{};}export default function OptionList(props){const tokens=useSalesTokens();const bg=props.bg??tokens.bgCard??D.bg;const border=props.border??tokens.borderSoft??D.border;const ink=props.ink??tokens.inkPrimary??D.ink;const inkMuted=props.inkMuted??tokens.inkMuted??D.inkMuted;const hoverBg=props.hoverBg??D.hoverBg;const selectedBg=props.selectedBg??D.selectedBg;const selectedInk=props.selectedInk??D.selectedInk;const[query,setQuery]=useState(\"\");const[focusIdx,setFocusIdx]=useState(0);const listRef=useRef(null);const searchRef=useRef(null);useEffect(()=>{if(props.autoFocusSearch)searchRef.current?.focus();},[props.autoFocusSearch]);const q=query.trim().toLowerCase();const filtered=q?props.options.filter(o=>o.label.toLowerCase().includes(q)||o.value.toLowerCase().includes(q)||(o.meta||\"\").toLowerCase().includes(q)):props.options;/* Keep focusIdx bounded and in view when filter changes. */useEffect(()=>{setFocusIdx(i=>Math.min(i,Math.max(0,filtered.length-1)));},[filtered.length]);const handleKeyDown=e=>{if(e.key===\"ArrowDown\"){e.preventDefault();setFocusIdx(i=>Math.min(i+1,filtered.length-1));}else if(e.key===\"ArrowUp\"){e.preventDefault();setFocusIdx(i=>Math.max(i-1,0));}else if(e.key===\"Enter\"){e.preventDefault();const opt=filtered[focusIdx];if(opt&&!opt.disabled)props.onChange?.(opt.value,opt);}};const scrollFocused=idx=>{const list=listRef.current;if(!list)return;const child=list.children[idx];child?.scrollIntoView({block:\"nearest\"});};useEffect(()=>{scrollFocused(focusIdx);},[focusIdx]);return /*#__PURE__*/_jsxs(\"div\",{style:{width:props.width,maxHeight:props.maxHeight,background:bg,border:`1px solid ${border}`,borderRadius:props.radius??12,boxShadow:\"0 12px 32px rgba(15, 12, 6, 0.10), 0 2px 8px rgba(15, 12, 6, 0.05)\",display:\"flex\",flexDirection:\"column\",overflow:\"hidden\",fontFamily:\"'Hanken Grotesk', sans-serif\"},onKeyDown:handleKeyDown,children:[props.searchable&&/*#__PURE__*/_jsxs(\"div\",{style:{padding:\"10px 12px\",borderBottom:`1px solid ${border}`,display:\"flex\",alignItems:\"center\",gap:8},children:[/*#__PURE__*/_jsxs(\"svg\",{width:14,height:14,viewBox:\"0 0 24 24\",fill:\"none\",stroke:inkMuted,strokeWidth:1.8,strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{flexShrink:0},children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"11\",cy:\"11\",r:\"7\"}),/*#__PURE__*/_jsx(\"path\",{d:\"m20 20-3.5-3.5\"})]}),/*#__PURE__*/_jsx(\"input\",{ref:searchRef,type:\"text\",value:query,onChange:e=>setQuery(e.target.value),placeholder:props.searchPlaceholder,style:{flex:1,minWidth:0,border:\"none\",outline:\"none\",background:\"transparent\",fontFamily:\"inherit\",fontSize:13,color:ink,padding:0}})]}),/*#__PURE__*/_jsxs(\"ul\",{ref:listRef,role:\"listbox\",style:{flex:1,margin:0,padding:4,listStyle:\"none\",overflowY:\"auto\"},children:[filtered.length===0&&/*#__PURE__*/_jsx(\"li\",{style:{padding:12,textAlign:\"center\",fontSize:13,color:inkMuted},children:props.emptyLabel||\"No results\"}),filtered.map((opt,i)=>{const selected=opt.value===props.value;const focused=i===focusIdx;return /*#__PURE__*/_jsxs(\"li\",{role:\"option\",\"aria-selected\":selected,\"aria-disabled\":opt.disabled||undefined,onMouseEnter:()=>setFocusIdx(i),onMouseDown:e=>{e.preventDefault();if(!opt.disabled)props.onChange?.(opt.value,opt);},style:{padding:\"9px 12px\",borderRadius:8,cursor:opt.disabled?\"not-allowed\":\"pointer\",display:\"flex\",alignItems:\"center\",gap:10,background:selected?selectedBg:focused?hoverBg:\"transparent\",color:opt.disabled?inkMuted:selected?selectedInk:ink,opacity:opt.disabled?.6:1,fontSize:14,lineHeight:1.3,fontWeight:selected?500:400,transition:\"background .12s ease\"},children:[opt.iconUrl&&/*#__PURE__*/_jsx(\"img\",{src:opt.iconUrl,alt:\"\",width:20,height:20,style:{width:20,height:20,borderRadius:2,objectFit:\"cover\",flexShrink:0}}),/*#__PURE__*/_jsx(\"span\",{style:{flex:1,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"},children:opt.label}),opt.meta&&/*#__PURE__*/_jsx(\"span\",{style:{color:inkMuted,fontSize:12,flexShrink:0},children:opt.meta})]},opt.value);})]})]});}OptionList.displayName=\"Sales / UI / Option List\";addPropertyControls(OptionList,{searchable:{type:ControlType.Boolean,title:\"Searchable\",defaultValue:false},searchPlaceholder:{type:ControlType.String,title:\"Search placeholder\",defaultValue:\"Search…\",hidden:p=>!p.searchable},autoFocusSearch:{type:ControlType.Boolean,title:\"Autofocus search\",defaultValue:true,hidden:p=>!p.searchable},emptyLabel:{type:ControlType.String,title:\"Empty label\",defaultValue:\"No results\"},maxHeight:{type:ControlType.Number,title:\"Max height\",defaultValue:320,min:120,max:800,step:20},width:{type:ControlType.Number,title:\"Width\",defaultValue:320,min:160,max:800,step:4}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"OptionList\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"OptionItem\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./OptionList.map","/*\n * OptionList\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/SgvuZRrDn4qpPiJRuUTM/88CFv9VuxlwMOjILecrW/OptionList.js\"\nexport { default } from \"https://framerusercontent.com/modules/SgvuZRrDn4qpPiJRuUTM/88CFv9VuxlwMOjILecrW/OptionList.js\"\n","// Sales/CustomerCardList.tsx\n// Results header + list of CustomerCard rows.\n// Subscribes to SalesProvider for tokens. Listens to `jetfly:customer-query-change`\n// from SearchHero. Queries Supabase for the customer list — no mock fallback.\n// `titleFont` Font control: per-instance Begum Sans assignment.\n// Fade-in: each row fades up with a staggered delay every time the result set changes.\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useEffect,useMemo,useRef,useState}from\"react\";import CustomerCard from\"https://framer.com/m/CustomerCard-wQJlhw.js\";import BtnPrimary from\"https://framer.com/m/BtnPrimary-VTTRQx.js\";import OptionList from\"https://framer.com/m/OptionList-MHLYaY.js\";import{createPortal}from\"react-dom\";const jetflyDebug=(...args)=>{if(typeof window!==\"undefined\"&&window.__JETFLY_DEBUG){console.log(...args);}};function generateProposalId(){if(typeof crypto!==\"undefined\"&&\"randomUUID\"in crypto)return crypto.randomUUID();return Math.random().toString(36).slice(2)+Date.now().toString(36);}const D={bgCard:\"rgb(255, 255, 255)\",borderSoft:\"rgb(239, 239, 235)\",sand100:\"rgb(248, 243, 230)\",sand200:\"rgb(243, 235, 219)\",inkPrimary:\"rgb(26, 26, 23)\",inkMuted:\"rgb(122, 122, 114)\",inkSubtle:\"rgb(137, 129, 126)\",copper500:\"rgb(196, 148, 90)\",titleFont:{fontFamily:\"Begum Sans, 'Hanken Grotesk', sans-serif\",fontSize:22,fontWeight:500},bodyFont:{fontFamily:\"Hanken Grotesk, sans-serif\",fontSize:14}};function useSalesStore(){/* SSR-safe: null on both server + first client render (hydration). */const[store,setStore]=useState(null);useEffect(()=>{if(typeof window===\"undefined\")return;let unsub;const sub=()=>{const s=window.__jetflySales;if(s){setStore(s);unsub=s.subscribe(()=>setStore(s));return true;}return false;};if(sub())return()=>unsub?.();const id=window.setInterval(()=>{if(sub())window.clearInterval(id);},200);return()=>{window.clearInterval(id);unsub?.();};},[]);return store;}function hasFontOverride(font){return!!font&&typeof font===\"object\"&&Object.keys(font).length>0;}/* 5-dot pill glued into each deal row header so the sales rep\n   sees how far a deal has advanced without opening it. Copper-deep\n   solid on completed (step 5), sand-200 outline on in-progress.\n   Kim call 2026-08-21: \"retirer step 5/5\" — removed the \"N/5\" text\n   label but kept the dots as a visual progress indicator. */function DealStepBadge({step}){const clamped=Math.max(1,Math.min(5,Number(step)||1));const isComplete=clamped>=5;const bg=isComplete?\"rgb(196,148,90)\":\"rgb(243,235,219)\";const fg=isComplete?\"#FFFFFF\":\"rgb(196,148,90)\";const border=isComplete?\"transparent\":\"rgba(196,148,90,0.25)\";return /*#__PURE__*/_jsx(\"span\",{\"aria-label\":`Step ${clamped} of 5`,style:{display:\"inline-flex\",alignItems:\"center\",gap:6,padding:\"3px 8px\",borderRadius:999,background:bg,border:`1px solid ${border}`,color:fg,fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:11,fontWeight:600,letterSpacing:\"0.02em\",lineHeight:1,whiteSpace:\"nowrap\",flexShrink:0},children:/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,style:{display:\"inline-flex\",gap:2,alignItems:\"center\"},children:[0,1,2,3,4].map(i=>/*#__PURE__*/_jsx(\"span\",{style:{width:4,height:4,borderRadius:999,background:i<clamped?fg:\"rgba(0,0,0,0.15)\"}},i))})});}function foldSeed(s){return String(s||\"\").toLowerCase().replace(/^test\\s*[—–-]\\s*/i,\"\").normalize(\"NFD\").replace(/[\\u0300-\\u036f]/g,\"\").replace(/[^a-z0-9]+/g,\" \").trim();}/* Principal owner = Pipedrive PERSON owner.\n   Creating a deal never makes the creator the person owner.\n   Creating a NEW prospect (orphan draft, no Pipedrive person)\n   is the only case where the session user becomes owner. */function isNewProspectRow(row){return String(row?.id||\"\").startsWith(\"draft-\");}function personOwnerName(row){const pipedrive=String(row?.owner_name||row?.owner||\"\").trim();if(pipedrive)return pipedrive;if(!isNewProspectRow(row))return\"\";const deals=Array.isArray(row?.deals)?row.deals:[];const fromDeal=String(deals[0]?.owner_name||\"\").trim();if(fromDeal)return fromDeal;if(typeof window===\"undefined\")return\"\";return window.__jetflySales?.state?.theme?.userName||\"\";}function personOwnerEmail(row){const pipedrive=String(row?.owner_email||\"\").trim();if(pipedrive)return pipedrive;if(!isNewProspectRow(row))return\"\";const deals=Array.isArray(row?.deals)?row.deals:[];const fromDeal=String(deals[0]?.owner_email||\"\").trim();if(fromDeal)return fromDeal;if(typeof window===\"undefined\")return\"\";return window.__jetflySales?.state?.theme?.userEmail||\"\";}/* Drafts created before the MSAL + integrations-API cutover\n   (Aug 2026) with no Pipedrive deal id are leftover Supabase /\n   local test rows — never show them on a Pipedrive person. */const LEGACY_DRAFT_BEFORE=Date.parse(\"2026-08-01T00:00:00Z\");function isLegacySupabaseDraft(p){if(p?.pipedrive_deal_id)return false;const status=String(p?.status||\"draft\");if(status!==\"draft\")return false;const ts=Date.parse(p?.created_at||\"\")||Date.parse(p?.updated_at||\"\")||0;if(!ts)return true;return ts<LEGACY_DRAFT_BEFORE;}function fleetShortName(raw){const k=String(raw||\"\").toLowerCase().replace(/[^a-z0-9]/g,\"\");const cms=/^cms(\\d+)$/.exec(k);if(cms){const names=[\"PC-12\",\"PC-24\",\"Cirrus Jet\"];const i=Number(cms[1]);if(names[i])return names[i];}if(k.includes(\"pc24\")||k===\"kq2zbdj7c\")return\"PC-24\";if(k.includes(\"pc12\")||k===\"cdhyixl6j\")return\"PC-12\";if(k.includes(\"cirrus\")||k.includes(\"sf50\")||k===\"fbciglxgh\")return\"Cirrus Jet\";const pretty=String(raw||\"\").replace(/[-_]+/g,\" \").trim();return pretty||\"Fleet\";}function offersOfDeal(deal,pdDeal){const payload=deal?.payload;const step3=payload?.step3_aircraft||{};const selected=Array.isArray(step3.selected)?step3.selected:[];const prefs=step3.preferences&&typeof step3.preferences===\"object\"?step3.preferences:{};const ids=[...selected];for(const k of Object.keys(prefs)){if(!ids.includes(k))ids.push(k);}const out=[];for(const fleetId of ids){const p=prefs[fleetId]||{};const list=Array.isArray(p.offers)&&p.offers.length>0?p.offers:p.share||p.immat||p.hours?[p]:[];for(const o of list){if(!o||typeof o!==\"object\")continue;const share=String(o.share||p.share||\"\").trim();const hours=String(o.hours??o.flight_hours??p.hours??\"\").trim();const immat=String(o.immat||o.shareImmat||p.immat||\"\").trim();if(!share&&!hours&&!immat)continue;out.push({fleetName:fleetShortName(fleetId),share,hours,immat,outcome:String(o.outcome||\"\").toLowerCase(),pipedriveDealId:String(o.pipedrive_deal_id||deal.pipedrive_deal_id||\"\")});}}if(out.length)return out;const title=String(pdDeal?.title||deal?.title||\"\");const shareM=title.match(/(\\d+\\s*\\/\\s*\\d+)/);const hoursM=title.match(/(\\d+)\\s*h\\b/i);const immatM=title.match(/\\b(LX-[A-Z0-9]+)\\b/i);if(shareM||hoursM||immatM||/pc-?12|pc-?24|cirrus/i.test(title)){return[{fleetName:fleetShortName(title),share:shareM?shareM[1].replace(/\\s+/g,\"\"):\"\",hours:hoursM?hoursM[1]:\"\",immat:immatM?immatM[1].toUpperCase():\"\",outcome:String(pdDeal?.status||deal?.status||\"\").toLowerCase(),pipedriveDealId:String(deal?.pipedrive_deal_id||\"\")}];}return[];}function aircraftTitleToken(raw){const k=String(raw||\"\").toLowerCase().replace(/[^a-z0-9]/g,\"\");if(k.includes(\"pc12\"))return\"PC12\";if(k.includes(\"pc24\"))return\"PC24\";if(k.includes(\"cirrus\")||k.includes(\"sf50\"))return\"SF50\";return String(raw||\"\").replace(/[-_\\s]+/g,\"\");}function composeDealTitle(person,share,aircraft,hours){const shareClean=String(share||\"\").replace(/\\s+/g,\"\");const ac=aircraftTitleToken(aircraft);const h=String(hours||\"\").replace(/[^\\d.]/g,\"\");return[person,shareClean,ac,h?`${h}h`:\"\"].filter(Boolean).join(\" \");}const STATUS_PILL={open:{label:\"\",bg:\"transparent\",fg:\"#1A1A17\"},won:{label:\"Won\",bg:\"#3D7A4A\",fg:\"#FFFFFF\"},lost:{label:\"Lost\",bg:\"#B83228\",fg:\"#FFFFFF\"},draft:{label:\"Draft\",bg:\"#E8E2D6\",fg:\"#1A1A17\"},generated:{label:\"Generated\",bg:\"#C4945A\",fg:\"#FFFFFF\"}};function DealStatusSelect({value,onChange,disabled}){const[open,setOpen]=useState(false);const btnRef=useRef(null);const[menu,setMenu]=useState(null);const st=value===\"won\"||value===\"lost\"?value:\"open\";const meta=STATUS_PILL[st];useEffect(()=>{if(!open)return;const close=e=>{const t=e.target;if(btnRef.current?.contains(t))return;const el=document.getElementById(\"jetfly-deal-status-menu\");if(el&&el.contains(t))return;setOpen(false);};document.addEventListener(\"mousedown\",close);return()=>document.removeEventListener(\"mousedown\",close);},[open]);const options=[{v:\"open\",label:\"Active\",c:\"#1A1A17\"},{v:\"won\",label:\"Won\",c:\"#3D7A4A\"},{v:\"lost\",label:\"Lost\",c:\"#B83228\"}];return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsxs(\"button\",{ref:btnRef,type:\"button\",disabled:disabled,\"aria-haspopup\":\"listbox\",\"aria-expanded\":open,\"aria-label\":\"Deal status\",onClick:e=>{e.stopPropagation();if(disabled)return;if(open){setOpen(false);return;}const r=btnRef.current?.getBoundingClientRect();setMenu(r?{top:r.bottom+6,right:window.innerWidth-r.right}:null);setOpen(true);},style:{display:\"inline-flex\",alignItems:\"center\",gap:6,height:26,padding:\"0 8px 0 10px\",border:\"none\",borderRadius:999,background:meta.bg,color:meta.fg,fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:12,fontWeight:600,cursor:disabled?\"not-allowed\":\"pointer\",lineHeight:1,flexShrink:0,opacity:disabled?.65:1},children:[/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,style:{width:6,height:6,borderRadius:999,background:meta.fg,flexShrink:0}}),meta.label,/*#__PURE__*/_jsx(\"svg\",{width:\"10\",height:\"10\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2.6\",strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:\"m6 9 6 6 6-6\"})})]}),open&&menu&&typeof document!==\"undefined\"&&/*#__PURE__*/createPortal(/*#__PURE__*/_jsx(\"div\",{id:\"jetfly-deal-status-menu\",role:\"listbox\",onClick:e=>e.stopPropagation(),style:{position:\"fixed\",top:menu.top,right:menu.right,zIndex:2147483647,minWidth:132,background:\"#FFFFFF\",border:\"1px solid rgb(239, 239, 235)\",borderRadius:12,boxShadow:\"0 14px 32px rgba(0,0,0,0.14)\",padding:6},children:options.map(o=>/*#__PURE__*/_jsxs(\"button\",{type:\"button\",role:\"option\",\"aria-selected\":st===o.v,onClick:e=>{e.stopPropagation();setOpen(false);onChange(o.v);},style:{display:\"flex\",alignItems:\"center\",gap:8,width:\"100%\",border:\"none\",background:st===o.v?\"rgb(250, 246, 238)\":\"transparent\",borderRadius:8,padding:\"8px 10px\",cursor:\"pointer\",fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:12,fontWeight:600,color:\"#1A1A17\",textAlign:\"left\"},children:[/*#__PURE__*/_jsx(\"span\",{style:{width:8,height:8,borderRadius:999,background:o.c,flexShrink:0}}),o.label]},o.v))}),document.body)]});}function offerPipedriveIdsFromDeals(deals){const ids=new Set;for(const d of deals){if(d?.pipedrive_deal_id)ids.add(String(d.pipedrive_deal_id));for(const o of offersOfDeal(d)){if(o.pipedriveDealId)ids.add(String(o.pipedriveDealId));}}return ids;}function pipedriveKpiStatus(raw){const s=String(raw||\"\").toLowerCase().trim();if(!s||s===\"deleted\")return null;if(s===\"won\"||s===\"sold\")return\"won\";if(s===\"lost\")return\"lost\";return\"open\";}function asPipedriveDealList(res){if(Array.isArray(res?.deals))return res.deals;if(Array.isArray(res?.data))return res.data;if(Array.isArray(res))return res;return[];}/* Search-row KPIs (Active / Won / Lost) must use Pipedrive deal\n   status, not local proposal draft/review/sent. Merge PD deals onto\n   the row: override status when we already have a local proposal,\n   append historical won/lost that never lived in the wizard. */function mergeLocalAndPipedriveDeals(local,pd){const fromPd=new Map;for(const d of pd||[]){const id=String(d?.id||\"\").trim();const status=pipedriveKpiStatus(d?.status);if(!id||!status)continue;fromPd.set(id,{id:`pd:${id}`,number:String(d?.id??id),status,current_step:0,updated_at:d?.update_time||d?.updated_at||d?.add_time||\"\",created_at:d?.add_time||d?.created_at||\"\",owner_name:String(d?.owner_name||\"\"),pipedrive_deal_id:d.id,title:String(d?.title||\"\"),_pipedriveOnly:true});}const used=new Set;const out=[];for(const loc of local||[]){const pdId=String(loc?.pipedrive_deal_id||\"\").trim();// `_pdChecked`: this row was compared with the live Pipedrive list.\n// `_pdConfirmed`: its deal is still there. A proposal whose deal was\n// deleted or archived in Pipedrive stays unconfirmed, so the \"Deals\"\n// count of the search row no longer includes it (Umut 2026-10-09).\nif(pdId&&fromPd.has(pdId)){const pdDeal=fromPd.get(pdId);out.push({...loc,status:pdDeal.status,_pdChecked:true,_pdConfirmed:true});used.add(pdId);}else{out.push({...loc,_pdChecked:true,_pdConfirmed:false});}}for(const[id,d]of fromPd){if(!used.has(id))out.push(d);}return out;}const DEALS_TTL_MS=5*60*1e3;const HYDRATE_CONCURRENCY=2;function sleepMs(ms){return new Promise(r=>setTimeout(r,ms));}function mergeApiProposalsIntoRows(rows,proposals,dealStatusFor){const draftsByCustomer={};for(const p of proposals||[]){const person=p?.pipedrive_person_id;if(person==null||person===\"\")continue;const key=String(person);const dealShape={id:p.id,number:p.slug||String(p.id).slice(0,8),status:dealStatusFor(p.status),current_step:Number(p.current_step)||1,updated_at:p.updated_at||\"\",created_at:p.created_at||\"\",sales_user_id:p.sales_user_id||\"\",owner_name:p.owner_name||\"\",owner_email:p.owner_email||\"\",pipedrive_deal_id:p.pipedrive_deal_id||null};if(!draftsByCustomer[key])draftsByCustomer[key]=[];draftsByCustomer[key].push(dealShape);}return rows.map(r=>{const extra=draftsByCustomer[String(r.id)];if(!extra?.length)return r;const seen=new Set((r.deals||[]).map(d=>String(d?.id||\"\")));const add=extra.filter(d=>!seen.has(String(d.id)));if(!add.length)return r;return{...r,deals:[...r.deals||[],...add]};});}function dealsCacheStore(){if(typeof window===\"undefined\")return{};const cache=window.__jetflyCustomerDealsCache||{};window.__jetflyCustomerDealsCache=cache;return cache;}function isRateLimitErr(err){if(!err)return false;if(Number(err.status)===429)return true;return/too many attempts|too many requests/i.test(String(err.message||\"\"));}async function runPool(items,limit,worker,isCancelled){const executing=new Set;for(const item of items){if(isCancelled())return;let p;p=Promise.resolve().then(()=>worker(item)).catch(()=>{}).then(()=>{executing.delete(p);});executing.add(p);if(executing.size>=limit){await Promise.race(executing);}}await Promise.all(Array.from(executing));}function isJetflyStaffOrJunk(c){const name=foldSeed(c.name||c.full_name||[c.first_name,c.last_name].filter(Boolean).join(\" \"));const company=foldSeed(c.company||c.company_name||c.organization_name);const emails=Array.isArray(c.emails)?c.emails.map(e=>String(e?.value||\"\").toLowerCase()):[String(c.email||\"\").toLowerCase()];const email=emails.filter(Boolean).join(\" \");if(/@(jetfly\\.com|jetfly\\.group)$/.test(email))return true;if(name===\"sales\"||name===\"jetfly\")return true;if(company===\"jetfly\"&&/^(kim|umut|alexandre|maxime|enzo|yuliia|yulia|johan)\\b/.test(name))return true;return false;}function isSeedDemoPerson(c){const name=foldSeed(c.name||c.full_name||[c.first_name,c.last_name].filter(Boolean).join(\" \"));const company=foldSeed(c.company||c.company_name);const emails=Array.isArray(c.emails)?c.emails.map(e=>String(e?.value||\"\").toLowerCase()):[String(c.email||\"\").toLowerCase()];const email=emails.filter(Boolean).join(\" \");const seeds=[\"alexandre dupont\",\"sophie laurent\",\"marcus weber\",\"isabella rossi\",\"ethan sinclair\",\"camille mercier\",\"julian blackwood\",\"elena vasquez\",\"henri van der berg\",\"aurelie beaumont\"];const seedCompanies=[\"dupont investments\",\"beaumont family office\",\"sinclair capital\",\"laurent partners\",\"weber holdings\",\"rossi group\",\"mercier capital\",\"blackwood partners\",\"vasquez wealth\",\"van der berg family\"];if(seeds.includes(name))return true;if(seedCompanies.includes(company))return true;/* Removed 2026-08-27 : Umut Sevinc is now a real Pipedrive\n       contact (contact@memselon.com), no longer a seed to hide. */if(isJetflyStaffOrJunk(c))return true;if(/^kim(\\s|$)/.test(name)&&/@jetfly\\.(com|group)/.test(email))return true;if(/alexandre/.test(name)&&/@jetfly\\.(com|group)/.test(email))return true;if(/@(jetfly\\.com|jetfly\\.group)$/.test(email)&&/(umut|kim|alexandre)/.test(email))return true;return false;}function cityFromProfile(profile){if(!profile)return\"\";if(typeof profile===\"string\"){try{return cityFromProfile(JSON.parse(profile));}catch{return\"\";}}if(typeof profile===\"object\"){return typeof profile.city===\"string\"?profile.city:\"\";}return\"\";}const SKEL_PULSE=`@keyframes jetflySkelShimmer {\n    0% { background-position: 200% 0; }\n    100% { background-position: -200% 0; }\n}`;function SkeletonRow({bg,borderColor,color,height=92,isMobile=false,sand}){const shimmerStyle={background:`linear-gradient(90deg, ${color} 0%, ${bg} 50%, ${color} 100%)`,backgroundSize:\"200% 100%\",animation:\"jetflySkelShimmer 1.6s linear infinite\"};const block=(w,h=10,radius=6)=>/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,style:{display:\"block\",width:w,height:h,borderRadius:radius,...shimmerStyle}});if(isMobile){/* Mirrors the mobile ContactRow shape so the layout doesn't jump\n           when data arrives: heading / 3 short columns / sand pill stack\n           / full-width CTA. */return /*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",background:bg,border:`1px solid ${borderColor}`,borderRadius:20,padding:20,display:\"flex\",flexDirection:\"column\",gap:16,boxSizing:\"border-box\"},children:[block(\"60%\",26,8),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:16},children:[/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,display:\"flex\",flexDirection:\"column\",gap:8},children:[block(48,10),block(\"80%\",16,6)]}),/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,display:\"flex\",flexDirection:\"column\",gap:8},children:[block(48,10),block(\"70%\",16,6)]}),/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,display:\"flex\",flexDirection:\"column\",gap:8},children:[block(48,10),block(\"60%\",16,6)]})]}),/*#__PURE__*/_jsxs(\"div\",{style:{background:sand||bg,borderRadius:14,padding:12,display:\"flex\",flexDirection:\"column\",gap:10},children:[block(\"100%\",46,12),block(\"100%\",46,12)]}),block(\"100%\",44,12)]});}return /*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",background:bg,border:`1px solid ${borderColor}`,borderRadius:16,padding:18,display:\"flex\",alignItems:\"center\",gap:16,boxSizing:\"border-box\",minHeight:height},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:48,height:48,borderRadius:999,flexShrink:0,...shimmerStyle}}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:8,flex:1,minWidth:0},children:[block(180,12),block(120,10)]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:8,flexShrink:0},children:[block(72,28),block(72,28)]})]});}const SORT_OPTIONS=[{value:\"recent\",label:\"Most recent\",short:\"recent\"},{value:\"name\",label:\"Contact name (A–Z)\",short:\"name\"},{value:\"company\",label:\"Company (A–Z)\",short:\"company\"},{value:\"label\",label:\"Label (Drafts first)\",short:\"label\"}];/* Inline sort trigger — reads like plain text (\"Sorted by X\"), no border\n   or halo, and opens the DS OptionList portalled next to the trigger.\n   Kept local because the \"bare text trigger\" shape isn't a variant that\n   makes sense to bake into Sales/UI/DropdownUi (which is intentionally\n   the full-field version). */function SortSelect({value,onChange,template,copperDeep,inkMuted}){const[open,setOpen]=useState(false);const[rect,setRect]=useState(null);const triggerRef=useRef(null);const compute=()=>{const el=triggerRef.current;if(!el||typeof window===\"undefined\")return;const r=el.getBoundingClientRect();const vh=window.innerHeight;const placeAbove=vh-r.bottom<260&&r.top>vh-r.bottom;setRect({left:r.left,top:placeAbove?r.top-6:r.bottom+6,placeAbove,anchorRight:r.right});};useEffect(()=>{if(!open)return;compute();const onOutside=e=>{const t=e.target;if(triggerRef.current&&triggerRef.current.contains(t))return;setOpen(false);};const onKey=e=>{if(e.key===\"Escape\")setOpen(false);};window.addEventListener(\"resize\",compute);window.addEventListener(\"scroll\",compute,true);document.addEventListener(\"mousedown\",onOutside);document.addEventListener(\"keydown\",onKey);return()=>{window.removeEventListener(\"resize\",compute);window.removeEventListener(\"scroll\",compute,true);document.removeEventListener(\"mousedown\",onOutside);document.removeEventListener(\"keydown\",onKey);};},[open]);const current=SORT_OPTIONS.find(o=>o.value===value)||SORT_OPTIONS[0];/* Substitute {sort} in the template (\"Sorted by {sort}\"), or fall\n       back to appending the short label if the template has no slot. */const displayText=template.includes(\"{sort}\")?template.replace(\"{sort}\",current.short):`${template.replace(/\\s+recent\\s*$/i,\"\").trim()} ${current.short}`;return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsxs(\"button\",{ref:triggerRef,type:\"button\",onClick:()=>setOpen(v=>!v),style:{all:\"unset\",display:\"inline-flex\",alignItems:\"center\",gap:4,cursor:\"pointer\",fontSize:13,color:open?copperDeep:inkMuted,fontFamily:\"'Hanken Grotesk', sans-serif\",padding:\"2px 4px\",borderRadius:6,transition:\"color .15s ease\"},children:[displayText,/*#__PURE__*/_jsx(\"svg\",{width:12,height:12,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:2,strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{transform:open?\"rotate(180deg)\":\"rotate(0)\",transition:\"transform .18s ease\"},children:/*#__PURE__*/_jsx(\"path\",{d:\"m6 9 6 6 6-6\"})})]}),open&&rect&&typeof document!==\"undefined\"&&/*#__PURE__*/createPortal(/*#__PURE__*/_jsx(\"div\",{style:{position:\"fixed\",left:Math.max(8,Math.min(rect.anchorRight-240,(typeof window!==\"undefined\"?window.innerWidth:0)-248)),...rect.placeAbove?{bottom:rect.top?rect.top:0}:{top:rect.top},zIndex:2147483647},onMouseDown:e=>e.stopPropagation(),children:/*#__PURE__*/_jsx(OptionList,{options:SORT_OPTIONS.map(o=>({value:o.value,label:o.label})),value:value,onChange:v=>{onChange(v);setOpen(false);},searchable:false,searchPlaceholder:\"\",autoFocusSearch:false,emptyLabel:\"No options\",maxHeight:240,width:240})}),document.body)]});}/* ================================================================\n   ContactDetailModal — portalled full-info popup shown when the user\n   clicks \"Open\" on a row that has active deals. Backdrop blur, close\n   on Esc/backdrop click, keeps the same white-card + shadow language\n   as the sidebar sign-out popover.\n   ================================================================ */function ContactDetailModal({row,ownerName,ownerEmail,onClose,onDealsLoaded,tokens,titleFont}){useEffect(()=>{if(typeof window===\"undefined\")return;const onKey=e=>{if(e.key===\"Escape\")onClose();};document.addEventListener(\"keydown\",onKey);/* Lock scroll while modal is open. */const prevOverflow=document.body.style.overflow;document.body.style.overflow=\"hidden\";return()=>{document.removeEventListener(\"keydown\",onKey);document.body.style.overflow=prevOverflow;};},[onClose]);/* Track viewport width so the modal takes the full screen on mobile\n       (no backdrop, no radius) and stays a centered card otherwise. */const[isMobile,setIsMobile]=useState(typeof window!==\"undefined\"&&window.innerWidth<640);useEffect(()=>{if(typeof window===\"undefined\")return;const mq=window.matchMedia(\"(max-width: 639px)\");const onChange=()=>setIsMobile(mq.matches);onChange();mq.addEventListener(\"change\",onChange);return()=>mq.removeEventListener(\"change\",onChange);},[]);if(typeof document===\"undefined\")return null;const fullName=row.full_name||\"Unknown contact\";const rawLabel=row.label||\"Prospect\";const label=String(rawLabel).charAt(0).toUpperCase()+String(rawLabel).slice(1).toLowerCase();/* Store handle for the delete-draft action (Maxime 2026-07-29).\n       Populated lazily via window.__jetflySales so we don't need to\n       plumb another prop through the modal signature. */const store=typeof window!==\"undefined\"?window.__jetflySales:null;/* Client-side status filter removed 2026-08-22 (Kim followup) —\n       the counters now live in ContactRow's sand strip and the modal\n       lists every deal with an inline Active/Won/Lost badge. */const[hiddenDealIds,setHiddenDealIds]=useState(()=>new Set);const[deletingId,setDeletingId]=useState(null);/* When set, renders a styled confirmation dialog above the modal.\n       Replaces the browser's native window.confirm() with a Jetfly-look\n       overlay (Maxime 2026-07-29). */const[deleteConfirmDeal,setDeleteConfirmDeal]=useState(null);/* Kim call 2026-08-22 + Maxime call 2026-08-24: chaque tuile doit\n       afficher Active/Won/Lost avec le code couleur Pipedrive. Les\n       proposals ne portent que le statut LOCAL (draft/review/sent/\n       accepted) — le vrai statut du deal (open/won/lost/deleted) vit\n       sur Pipedrive. On fetch tous les deals du customer à l'ouverture\n       du modal :\n         1. override le statut des tuiles existantes via pipedrive_deal_id\n         2. ajoute les deals Pipedrive orphelins (sans proposal locale)\n            comme nouvelles tuiles — sinon les won/lost historiques ne\n            remontent jamais. */const[pipedriveDealStatus,setPipedriveDealStatus]=useState({});const[pipedriveDealsList,setPipedriveDealsList]=useState([]);const[payloadByDealId,setPayloadByDealId]=useState({});const[statusBusyId,setStatusBusyId]=useState(null);const[openDealId,setOpenDealId]=useState(null);// ── Contact edit mode ──────────────────────────────────────────────\nconst[cardEditMode,setCardEditMode]=useState(false);const[editCompanyVal,setEditCompanyVal]=useState(\"\");const[editPhoneVal,setEditPhoneVal]=useState(\"\");const[editSaving,setEditSaving]=useState(false);const[editError,setEditError]=useState(null);const[editToast,setEditToast]=useState(false);// Overrides that persist in the panel after a successful save\nconst[savedCompany,setSavedCompany]=useState(null);const[savedPhone,setSavedPhone]=useState(null);const rawDeals=Array.isArray(row.deals)?row.deals:[];useEffect(()=>{if(typeof window===\"undefined\")return;const customerId=row?.id;if(!customerId)return;/* Skip orphan draft rows — id starts with \"draft:\" or non-numeric. */if(!/^\\d+$/.test(String(customerId)))return;const api=window.__jetflyApi;if(!api?.getCustomerDeals)return;const controller=new AbortController;let cancelled=false;(async()=>{try{/* Spec: GET /customers/{id}/deals → up to 100 open\n                   Sales-pipeline deals. No status query. */let list=[];if(typeof api.fetchAllCustomerDeals===\"function\"){list=await api.fetchAllCustomerDeals(customerId,controller.signal);}else{const res=await api.getCustomerDeals(customerId,{signal:controller.signal});list=asPipedriveDealList(res);}if(cancelled)return;dealsCacheStore()[String(customerId)]={ts:Date.now(),data:list};if(cancelled)return;const map={};for(const d of list){const key=String(d.id);map[key]=String(d.status||\"\").toLowerCase();}setPipedriveDealStatus(map);setPipedriveDealsList(list);onDealsLoaded?.(String(customerId),list);}catch(e){if(e?.name===\"AbortError\")return;console.warn(\"[Jetfly modal] Pipedrive deals fetch failed\",e);}})();return()=>{cancelled=true;controller.abort();};},[row?.id]);useEffect(()=>{if(typeof window===\"undefined\")return;const store=window.__jetflySales;const apply=()=>{const p=store?.state?.proposal;if(!p?.id||!p?.payload)return;const person=String(p.pipedrive_person_id||p.customer_id||\"\");const samePerson=person&&String(row?.id)===person;const sameDeal=rawDeals.some(d=>String(d.id)===String(p.id));if(samePerson||sameDeal){setPayloadByDealId(prev=>({...prev,[p.id]:p.payload}));}};apply();return store?.subscribe?store.subscribe(apply):undefined;},[row?.id,rawDeals.map(d=>d.id).join(\"|\")]);useEffect(()=>{if(typeof window===\"undefined\")return;const onOutcome=e=>{const detail=e.detail||{};const status=String(detail.status||\"\").toLowerCase();const ids=Array.isArray(detail.dealIds)?detail.dealIds:[];if(!status)return;const st=status===\"won\"||status===\"lost\"?status:\"open\";setPipedriveDealStatus(prev=>{const next={...prev};for(const id of ids){if(id)next[String(id)]=st;}return next;});const fleetId=String(detail.fleetId||\"\");const proposalId=String(detail.proposalId||\"\");if(proposalId&&fleetId){setPayloadByDealId(prev=>{const payload=prev[proposalId];if(!payload?.step3_aircraft)return prev;const prefs={...payload.step3_aircraft.preferences||{}};const pref={...prefs[fleetId]||{}};const list=Array.isArray(pref.offers)&&pref.offers.length?pref.offers:[pref];const outcomeVal=st===\"open\"?\"\":st;prefs[fleetId]={...pref,outcome:outcomeVal,offers:list.map(o=>({...o||{},outcome:outcomeVal}))};return{...prev,[proposalId]:{...payload,step3_aircraft:{...payload.step3_aircraft,preferences:prefs}}};});}};window.addEventListener(\"jetfly:offer-outcome\",onOutcome);return()=>window.removeEventListener(\"jetfly:offer-outcome\",onOutcome);},[]);useEffect(()=>{if(typeof window===\"undefined\")return;const api=window.__jetflyApi;if(!api?.getProposal)return;const missing=rawDeals.filter(d=>d?.id&&!d._pipedriveOnly&&!payloadByDealId[d.id]&&!(d.payload&&d.payload.step3_aircraft));if(!missing.length)return;let cancelled=false;(async()=>{const next={};await Promise.all(missing.slice(0,16).map(async d=>{try{const p=await api.getProposal(d.id);if(p?.payload)next[d.id]=p.payload;}catch{/* ignore missing proposals */}}));if(!cancelled&&Object.keys(next).length){setPayloadByDealId(prev=>({...prev,...next}));}})();return()=>{cancelled=true;};},[row?.id,rawDeals.map(d=>d.id).join(\"|\")]);const requestDeleteDraft=deal=>{if(!deal?.id)return;if(deal.status!==\"draft\")return;setDeleteConfirmDeal(deal);};const confirmDeleteDraft=async()=>{const deal=deleteConfirmDeal;if(!deal?.id)return;if(typeof window===\"undefined\")return;setDeletingId(deal.id);try{/* Delete via the integrations API. If the row is a\n               Pipedrive deal that isn't backed by a Jetfly draft\n               proposal, this will 404; swallow so the UI still hides\n               the row (server truth wins on next refresh). */const api=window.__jetflyApi;if(api?.deleteProposal&&deal.id){try{await api.deleteProposal(deal.id);}catch(e){if(e?.status!==404)throw e;}}try{if(typeof localStorage!==\"undefined\"){localStorage.removeItem(`jetfly.proposal.${deal.id}`);}}catch{}setHiddenDealIds(prev=>{const next=new Set(prev);next.add(deal.id);return next;});/* Tell the search page to drop this proposal from its local\n               results without triggering a full re-fetch — a re-fetch\n               would unmount an orphan-draft row (its only deal is now\n               gone) and close this popup. Maxime 2026-08-17:\n               popup must stay open on delete. */window.dispatchEvent(new CustomEvent(\"jetfly:proposal-deleted\",{detail:{proposalId:deal.id}}));}catch(e){console.warn(\"[Jetfly] delete draft failed\",e);}finally{setDeletingId(null);setDeleteConfirmDeal(null);}};/* Colour palette per Kim call 2026-08-21:\n       - Black = open deal\n       - Green = won\n       - Red = lost\n       Pipedrive statuses (open/won/lost/deleted) take precedence\n       when they arrive from the API; legacy Sales tool labels\n       (lead-in / contract-made / pending / sold / draft / available)\n       are kept for the local drafts list. */const DEAL_DOT={// Pipedrive statuses (source of truth)\nopen:\"#1A1A17\",won:\"#3D7A4A\",lost:\"#B83228\",deleted:\"#7A7A72\",// Legacy local labels\n\"lead-in\":\"#1A1A17\",\"contract-made\":\"#1A1A17\",pending:\"#1A1A17\",sold:\"#3D7A4A\",draft:\"#7A7A72\",available:\"#1A1A17\"};const DEAL_LABEL={open:\"Active\",won:\"Won\",lost:\"Lost\",deleted:\"Deleted\",\"lead-in\":\"Lead In\",\"contract-made\":\"Contract Made\",pending:\"Pending\",sold:\"Sold\",draft:\"Draft\",available:\"Available\"};const iconBtn=(href,ariaLabel,svg)=>/*#__PURE__*/_jsx(\"a\",{href:href,\"aria-label\":ariaLabel,title:ariaLabel,style:{width:28,height:28,borderRadius:8,background:tokens.bgCard,border:`1px solid ${tokens.borderSoft}`,display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",color:tokens.inkMuted,textDecoration:\"none\",flexShrink:0,transition:\"background .12s ease, color .12s ease, border-color .12s ease\"},onMouseEnter:e=>{const el=e.currentTarget;el.style.background=tokens.inkPrimary;el.style.color=\"#FFFFFF\";el.style.borderColor=tokens.inkPrimary;},onMouseLeave:e=>{const el=e.currentTarget;el.style.background=tokens.bgCard;el.style.color=tokens.inkMuted;el.style.borderColor=tokens.borderSoft;},children:svg});const MailIcon=/*#__PURE__*/_jsxs(\"svg\",{width:14,height:14,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:1.8,strokeLinecap:\"round\",strokeLinejoin:\"round\",children:[/*#__PURE__*/_jsx(\"rect\",{x:\"3\",y:\"5\",width:\"18\",height:\"14\",rx:\"2\"}),/*#__PURE__*/_jsx(\"path\",{d:\"m3 7 9 6 9-6\"})]});const PhoneIcon=/*#__PURE__*/_jsx(\"svg\",{width:14,height:14,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:1.8,strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6A19.79 19.79 0 0 1 2.12 4.18 2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z\"})});/* infoRow — value is optionally clickable via `linkHref` (mailto:\n       or tel:). On desktop the icon button is shown next to the value.\n       On mobile the icon is dropped to save space; instead the value\n       itself becomes the tappable link. */const infoRow=(label,value,action,linkHref)=>{const valueStyle={fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:15,fontWeight:400,color:tokens.inkPrimary,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\",flex:1,minWidth:0,textDecoration:\"none\"};const valueEl=isMobile&&linkHref&&value?/*#__PURE__*/_jsx(\"a\",{href:linkHref,style:{...valueStyle,cursor:\"pointer\"},title:value,children:value}):/*#__PURE__*/_jsx(\"span\",{style:valueStyle,title:value||undefined,children:value||\"—\"});return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:6,minWidth:0},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:11,fontWeight:600,letterSpacing:\"0.14em\",textTransform:\"uppercase\",color:tokens.copper500,lineHeight:1},children:label}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:10,minWidth:0},children:[!isMobile&&action,valueEl]})]});};/* \"12 Jul 2026 · 14:30\" style, locale-independent. Falls back\n       gracefully when the date is missing or invalid. */const formatDealDate=iso=>{if(!iso)return\"x/x/xx\";const d=new Date(iso);if(isNaN(d.getTime()))return\"x/x/xx\";const dd=String(d.getDate()).padStart(2,\"0\");const mm=String(d.getMonth()+1).padStart(2,\"0\");const yy=String(d.getFullYear()).slice(-2);const h=d.getHours().toString().padStart(2,\"0\");const m=d.getMinutes().toString().padStart(2,\"0\");return`${dd}/${mm}/${yy} \\xb7 ${h}:${m}`;};/* Start a fresh deal on this contact — Kim/Maxime asked\n       (2026-07-24) for a \"Create a deal\" affordance from the search\n       popup so a rep can spin up a new proposal already linked to\n       the visible prospect without going through the standalone\n       \"Create new offer\" flow that resets to blank. */const handleCreateDealForRow=()=>{if(typeof window===\"undefined\")return;const store=window.__jetflySales;const first=row.first_name||(row.full_name||\"\").trim().split(/\\s+/)[0]||\"\";const last=row.last_name||(row.full_name||\"\").trim().split(/\\s+/).slice(1).join(\" \")||\"\";const pid=Number(row.id);const id=generateProposalId();const owner=store?.state?.sessionUserId||store?.state?.devUserId||\"\";const seeded={id,slug:id.slice(0,12),status:\"draft\",current_step:2,customer_id:row.id,pipedrive_person_id:Number.isFinite(pid)?pid:null,sales_user_id:owner,payload:{version:1,step1_customer:{mode:\"existing\",customerId:row.id},step2_profile:{customer:{first_name:first,last_name:last,email:row.email||\"\",company_name:row.company||row.company_name||\"\",phone_number:row.phone||row.phone_number||\"\",phone_code:row.phone_code||\"\",phone_country:row.phone_country||\"\"}},step3_aircraft:{selected:[],routes:[]},step4_overview:{},step5_offer:{}},created_at:new Date().toISOString(),updated_at:new Date().toISOString()};/* Maxime call 2026-08-24: \"il ne faut pas faire de brouillon\n           sauf si je click sur save draft ou next click\". Seed via\n           sessionStorage (transient, per-tab) so the step 2 page can\n           hydrate the customer info, but the deal doesn't appear as a\n           draft in the search list until the rep flushes explicitly. */try{sessionStorage.setItem(`jetfly.pending.${id}`,JSON.stringify(seeded));}catch(e){console.warn(\"[Jetfly Sales] New deal sessionStorage failed\",e);}window.dispatchEvent(new CustomEvent(\"jetfly:customer-create-new-offer\",{detail:{customerId:row.id,proposalId:id}}));// Set contact context and start builder mode instead of old /sales/contacts?p=id navigation\nif(store){store.selectContact?.({id:row.id,name:row.full_name||`${first} ${last}`.trim()||\"\",first_name:first,last_name:last,email:row.email||\"\",phone:row.phone||row.phone_number||\"\",org:row.company||row.company_name||\"\"});store.startNewDeal?.();}onClose();try{const url=new URL(window.location.href);const aircraft=store?.state?.theme?.stepRoutes?.[2]||\"/sales/aircraft\";if(!url.pathname.startsWith(aircraft)){url.pathname=aircraft;url.searchParams.delete(\"p\");url.searchParams.delete(\"picker\");url.searchParams.delete(\"mode\");window.location.href=url.toString();}}catch{}};const proposalIdForDeal=deal=>{if(deal?.id&&!deal._pipedriveOnly&&!String(deal.id).startsWith(\"pd:\")){return String(deal.id);}const fromPd=String(deal?.proposal_id||\"\").trim();if(fromPd)return fromPd;const pdId=String(deal?.pipedrive_deal_id||\"\").trim();if(!pdId)return null;const loc=rawDeals.find(d=>!d._pipedriveOnly&&String(d.pipedrive_deal_id||\"\")===pdId);if(loc?.id)return String(loc.id);if(typeof localStorage===\"undefined\")return null;try{const currentPersonId=String(row?.id||\"\").trim();for(let i=0;i<localStorage.length;i++){const k=localStorage.key(i)||\"\";if(!k.startsWith(\"jetfly.proposal.\"))continue;const raw=localStorage.getItem(k);if(!raw)continue;const p=JSON.parse(raw);if(String(p?.pipedrive_deal_id||\"\")!==pdId||!p?.id)continue;/* Only reuse a localStorage proposal if it belongs to the\n                   same Pipedrive person as the currently selected customer.\n                   Prevents cross-customer name contamination when a deal\n                   was previously imported for a different contact. */if(currentPersonId){const proposalPid=String(p?.pipedrive_person_id||p?.customer_id||\"\").trim();if(proposalPid&&proposalPid!==currentPersonId)continue;}return String(p.id);}}catch{}return null;};const navigateToProposal=(proposalId,step=3)=>{const store=window.__jetflySales;const stepRoutes=store?.state?.theme?.stepRoutes||[];const clamped=Math.max(2,Math.min(5,Number(step)||3));const route=stepRoutes[clamped-1]||stepRoutes[2]||\"/sales/aircraft\";try{const url=new URL(window.location.href);url.pathname=route;url.searchParams.set(\"p\",proposalId);window.location.href=url.toString();}catch{window.location.href=`${route}?p=${encodeURIComponent(proposalId)}`;}onClose();};const handleDealClick=deal=>{if(typeof window===\"undefined\")return;const existing=proposalIdForDeal(deal);if(existing){/* Store expected customer + offer data in sessionStorage so\n               load() can patch stale proposal data when it fetches from\n               the API (avoids showing a previous customer's name). */const focusId2=Number(deal.pipedrive_deal_id||0);const pdDeal2=focusId2?pipedriveDealsList.find(d=>Number(d.id)===focusId2)||null:null;try{const first=String(row.first_name||\"\").trim()||(row.full_name||\"\").trim().split(/\\s+/)[0]||\"\";const last=String(row.last_name||\"\").trim()||(row.full_name||\"\").trim().split(/\\s+/).slice(1).join(\" \")||\"\";sessionStorage.setItem(\"jetfly.loadPatch\",JSON.stringify({proposalId:existing,customer:{first_name:first,last_name:last,email:row.email||\"\",company_name:row.company||\"\",phone_number:row.phone||\"\"},offerDate:String(pdDeal2?.close_time||pdDeal2?.expected_close_date||\"\"),offerLang:String(pdDeal2?.proposal_language||\"\")}));}catch{}navigateToProposal(existing,Number(deal.current_step)||3);return;}const store=window.__jetflySales;const focusId=Number(deal.pipedrive_deal_id||0);const pdDeal=pipedriveDealsList.find(d=>Number(d.id)===focusId)||null;const id=typeof store?.bootstrapFromPipedrive===\"function\"?store.bootstrapFromPipedrive({customer:row,deals:pdDeal?[pdDeal]:[],focusDealId:focusId}):null;if(!id)return;navigateToProposal(id,3);};const handleDealStatusChange=async(deal,nextStatus,pdId)=>{const id=Number(pdId||deal?.pipedrive_deal_id||0);if(!id)return;if(typeof window===\"undefined\")return;const key=String(id);setStatusBusyId(key);try{const store=window.__jetflySales;if(typeof store?.syncDealStatus===\"function\"){await store.syncDealStatus(id,nextStatus);}else{const api=window.__jetflyApi;if(api?.updateDeal){await api.updateDeal(id,{status:nextStatus});}}setPipedriveDealStatus(prev=>({...prev,[key]:nextStatus}));}catch(e){console.warn(\"[Jetfly modal] status update failed\",e);}finally{setStatusBusyId(null);}};/* Scan localStorage once to build a set of proposal IDs that have\n       been fully generated (PDF minted, share URL saved, status past\n       draft). Used below to swap the \"Active\" pill for \"Generated\" so\n       the rep sees at a glance which deals already have a proposal\n       attached vs which are still open work. Cheap: <20 keys typical. */const generatedProposalIds=(()=>{const s=new Set;if(typeof localStorage===\"undefined\")return s;try{for(let i=0;i<localStorage.length;i++){const k=localStorage.key(i)||\"\";if(!k.startsWith(\"jetfly.proposal.\"))continue;const raw=localStorage.getItem(k);if(!raw)continue;const p=JSON.parse(raw);const idStr=String(p?.id||\"\").trim();if(!idStr)continue;const generated=!!(p?.pdf_url||p?.share_url||p?.landing_url||p?.status&&String(p.status).toLowerCase()!==\"draft\");if(generated)s.add(idStr);}}catch{}return s;})();/* Set of proposal IDs whose status is \"sent\" or \"accepted\" — used\n       to show the \"Sent\" pill and \"See proposal\" CTA on the deal row. */const sentProposalIds=(()=>{const s=new Set;if(typeof localStorage===\"undefined\")return s;try{for(let i=0;i<localStorage.length;i++){const k=localStorage.key(i)||\"\";if(!k.startsWith(\"jetfly.proposal.\"))continue;const raw=localStorage.getItem(k);if(!raw)continue;const p=JSON.parse(raw);const idStr=String(p?.id||\"\").trim();if(!idStr)continue;const st=String(p?.status||\"\").toLowerCase();if(st===\"sent\"||st===\"accepted\")s.add(idStr);}}catch{}return s;})();const listedDeals=(()=>{const seen=new Set;const out=[];for(const d of pipedriveDealsList){const id=String(d.id||\"\").trim();if(!id||seen.has(id))continue;seen.add(id);const loc=rawDeals.find(x=>!x._pipedriveOnly&&String(x.pipedrive_deal_id||\"\")===id);const deal=loc||{id:`pd:${id}`,_pipedriveOnly:true,pipedrive_deal_id:d.id,proposal_id:d.proposal_id||null,title:String(d.title||\"\"),status:String(d.status||\"open\").toLowerCase(),current_step:loc?.current_step||3};const propId=proposalIdForDeal(deal);const _pdProposalStatus=String(d.proposal_status||\"\").toLowerCase();const _isPdSent=_pdProposalStatus===\"sent\"||_pdProposalStatus===\"accepted\";out.push({key:`pd:${id}`,title:String(d.title||\"\").trim()||`Deal ${id}`,date:formatDealDate(d.update_time||d.updated_at||d.add_time),status:String(d.status||\"open\").toLowerCase(),deal,hasProposal:!!propId||_isPdSent,isGenerated:!!(propId&&generatedProposalIds.has(String(propId)))||_isPdSent,isSent:!!(propId&&sentProposalIds.has(String(propId)))||_isPdSent});}for(const d of rawDeals){if(d._pipedriveOnly)continue;if(d.pipedrive_deal_id)continue;if(hiddenDealIds.has(d.id))continue;const prefs=d?.payload?.step3_aircraft?.preferences||{};const hasWork=Object.values(prefs).some(pr=>{const offers=Array.isArray(pr?.offers)?pr.offers:[];return offers.some(o=>String(o?.immat||\"\").trim()||String(o?.share||\"\").trim())||String(pr?.immat||\"\").trim()||String(pr?.share||\"\").trim();});if(!hasWork)continue;out.push({key:`draft:${d.id}`,title:\"Draft proposal\",date:formatDealDate(d.updated_at||d.created_at),status:\"draft\",deal:d,hasProposal:true,isGenerated:generatedProposalIds.has(String(d.id)),isSent:sentProposalIds.has(String(d.id))});}return out;})();return /*#__PURE__*/createPortal(/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsxs(\"div\",{role:\"dialog\",\"aria-modal\":\"true\",\"aria-label\":`Contact details — ${fullName}`,onClick:onClose,style:{position:\"fixed\",inset:0,zIndex:2147483647,display:\"flex\",alignItems:isMobile?\"stretch\":\"center\",justifyContent:isMobile?\"stretch\":\"center\",padding:isMobile?0:20,background:isMobile?tokens.bgCard:\"rgba(15, 12, 6, 0.14)\",backdropFilter:isMobile?\"none\":\"blur(6px)\",WebkitBackdropFilter:isMobile?\"none\":\"blur(6px)\",animation:\"jetflyDetailBackdropIn .18s ease\",fontFamily:\"'Hanken Grotesk', sans-serif\",boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsx(\"style\",{children:`\n                @keyframes jetflyDetailBackdropIn {\n                    from { opacity: 0; }\n                    to { opacity: 1; }\n                }\n                @keyframes jetflyDetailCardIn {\n                    from { opacity: 0; transform: translateY(12px); }\n                    to { opacity: 1; transform: translateY(0); }\n                }\n                .jetfly-deal-acc {\n                    display: grid;\n                    grid-template-rows: 0fr;\n                    transition: grid-template-rows .24s ease;\n                }\n                .jetfly-deal-acc.is-open {\n                    grid-template-rows: 1fr;\n                }\n                .jetfly-deal-acc-inner {\n                    overflow: hidden;\n                    min-height: 0;\n                }\n            `}),/*#__PURE__*/_jsxs(\"div\",{onClick:e=>e.stopPropagation(),style:{width:\"100%\",maxWidth:isMobile?\"100%\":640,height:isMobile?\"100%\":\"auto\",maxHeight:isMobile?\"100%\":\"88vh\",/* Solid opaque white bg. `isolation: isolate` creates\n                       an independent stacking context so the parent's\n                       backdrop-filter blur never bleeds through the card. */background:\"#FFFFFF\",backgroundClip:\"padding-box\",isolation:\"isolate\",border:isMobile?\"none\":`1px solid ${tokens.borderSoft}`,borderRadius:isMobile?0:20,boxShadow:isMobile?\"none\":\"0 24px 60px rgba(15, 12, 6, 0.28), 0 4px 16px rgba(15, 12, 6, 0.08)\",padding:0,display:\"flex\",flexDirection:\"column\",gap:0,overflowY:\"auto\",animation:\"jetflyDetailCardIn .22s ease\",boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"flex-start\",gap:16,padding:isMobile?\"20px 18px 0\":\"28px 28px 0\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,minWidth:0},children:[/*#__PURE__*/_jsx(\"h2\",{style:{margin:0,color:tokens.inkPrimary,fontSize:24,fontWeight:500,lineHeight:1.15,letterSpacing:\"-0.01em\",...titleFont??{},overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"},title:fullName,children:fullName}),/*#__PURE__*/_jsx(\"div\",{style:{marginTop:4,fontSize:13,color:tokens.inkMuted},children:row.company||\"—\"})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8,flexShrink:0},children:[false&&!cardEditMode&&/*#__PURE__*/_jsx(\"button\",{type:\"button\",title:\"Edit contact\",onClick:()=>{const dispCompany=savedCompany??(row.company||row.company_name||\"\");const dispPhone=savedPhone??(row.phone||\"\");setEditCompanyVal(dispCompany);setEditPhoneVal(dispPhone);setEditError(null);setCardEditMode(true);},style:{all:\"unset\",width:32,height:32,borderRadius:8,display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",cursor:\"pointer\",color:tokens.inkMuted,border:`1px solid ${tokens.borderSoft}`,boxSizing:\"border-box\",transition:\"border-color .14s, color .14s\"},onMouseEnter:e=>{const el=e.currentTarget;el.style.borderColor=tokens.copper500;el.style.color=tokens.copper500;},onMouseLeave:e=>{const el=e.currentTarget;el.style.borderColor=tokens.borderSoft;el.style.color=tokens.inkMuted;},children:/*#__PURE__*/_jsx(\"svg\",{width:14,height:14,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:1.8,strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M17 3a2.85 2.83 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5Z\"})})}),/*#__PURE__*/_jsx(\"button\",{type:\"button\",\"aria-label\":\"Close\",onClick:onClose,style:{all:\"unset\",width:32,height:32,borderRadius:999,display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",cursor:\"pointer\",color:tokens.inkMuted,transition:\"background .12s ease\"},onMouseEnter:e=>e.currentTarget.style.background=tokens.sand100,onMouseLeave:e=>e.currentTarget.style.background=\"transparent\",children:/*#__PURE__*/_jsx(\"svg\",{width:18,height:18,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:1.8,strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M18 6 6 18M6 6l12 12\"})})})]})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"grid\",gridTemplateColumns:\"repeat(auto-fill, minmax(min(180px, 100%), 1fr))\",gap:\"14px 18px\",padding:18,margin:isMobile?\"16px 18px 0\":\"20px 28px 0\",background:\"#F7F7F5\",borderRadius:14},children:[infoRow(\"Contact\",fullName),cardEditMode?/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:6,minWidth:0},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:11,fontWeight:600,letterSpacing:\"0.14em\",textTransform:\"uppercase\",color:tokens.copper500,lineHeight:1},children:\"Company\"}),/*#__PURE__*/_jsx(\"input\",{value:editCompanyVal,onChange:e=>setEditCompanyVal(e.target.value),placeholder:\"Company name\",disabled:editSaving,style:{fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:15,fontWeight:400,color:tokens.inkPrimary,background:\"#FFFFFF\",border:`1.5px solid ${tokens.borderSoft}`,borderRadius:8,padding:\"8px 10px\",outline:\"none\",width:\"100%\",boxSizing:\"border-box\",opacity:editSaving?.6:1},onFocus:e=>{e.currentTarget.style.borderColor=tokens.copper500;},onBlur:e=>{e.currentTarget.style.borderColor=tokens.borderSoft;}})]}):infoRow(\"Company\",savedCompany??row.company),infoRow(\"Email\",row.email,row.email?iconBtn(`mailto:${row.email}`,`Send email to ${row.email}`,MailIcon):null,row.email?`mailto:${row.email}`:undefined),cardEditMode?/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:6,minWidth:0},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:11,fontWeight:600,letterSpacing:\"0.14em\",textTransform:\"uppercase\",color:tokens.copper500,lineHeight:1},children:\"Phone\"}),/*#__PURE__*/_jsx(\"input\",{value:editPhoneVal,onChange:e=>setEditPhoneVal(e.target.value),placeholder:\"+41 XX XXX XX XX\",disabled:editSaving,style:{fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:15,fontWeight:400,color:tokens.inkPrimary,background:\"#FFFFFF\",border:`1.5px solid ${tokens.borderSoft}`,borderRadius:8,padding:\"8px 10px\",outline:\"none\",width:\"100%\",boxSizing:\"border-box\",opacity:editSaving?.6:1},onFocus:e=>{e.currentTarget.style.borderColor=tokens.copper500;},onBlur:e=>{e.currentTarget.style.borderColor=tokens.borderSoft;}})]}):infoRow(\"Phone\",savedPhone??row.phone,savedPhone??row.phone?iconBtn(`tel:${String(savedPhone??row.phone).replace(/[^+\\d]/g,\"\")}`,`Call ${savedPhone??row.phone}`,PhoneIcon):null,savedPhone??row.phone?`tel:${String(savedPhone??row.phone).replace(/[^+\\d]/g,\"\")}`:undefined),infoRow(\"Label\",label),infoRow(\"Owner\",ownerName)]}),cardEditMode&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:8,margin:isMobile?\"12px 18px 0\":\"12px 28px 0\"},children:[editError&&/*#__PURE__*/_jsx(\"p\",{style:{margin:0,fontSize:13,color:\"#D9534F\",fontFamily:\"'Hanken Grotesk', sans-serif\"},children:editError}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:8},children:[/*#__PURE__*/_jsx(\"button\",{type:\"button\",disabled:editSaving,onClick:()=>{setCardEditMode(false);setEditError(null);},style:{flex:1,height:36,borderRadius:8,border:`1px solid ${tokens.borderSoft}`,background:\"transparent\",color:tokens.inkPrimary,fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:14,fontWeight:500,cursor:editSaving?\"default\":\"pointer\",opacity:editSaving?.5:1},children:\"Back\"}),/*#__PURE__*/_jsx(\"button\",{type:\"button\",disabled:editSaving,onClick:async()=>{const api=typeof window!==\"undefined\"?window.__jetflyApi:null;if(!api?.updateCustomer){setEditError(\"Update API not available\");return;}const dispCompany=savedCompany??(row.company||row.company_name||\"\");const dispPhone=savedPhone??(row.phone||\"\");const patch={};if(editCompanyVal.trim()!==dispCompany)patch.company_name=editCompanyVal.trim();if(editPhoneVal.trim()!==dispPhone)patch.phone=editPhoneVal.trim();if(Object.keys(patch).length===0){setCardEditMode(false);return;}setEditSaving(true);setEditError(null);try{await api.updateCustomer(row.id,patch);if(patch.company_name!==undefined)setSavedCompany(patch.company_name);if(patch.phone!==undefined)setSavedPhone(patch.phone);setCardEditMode(false);setEditToast(true);setTimeout(()=>setEditToast(false),3e3);}catch(err){setEditError(String(err?.message||\"Save failed\"));}finally{setEditSaving(false);}},style:{flex:2,height:36,borderRadius:8,border:\"none\",background:editSaving?\"#D4AA80\":\"#C4945A\",color:\"#FFFFFF\",fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:14,fontWeight:600,cursor:editSaving?\"default\":\"pointer\"},children:editSaving?\"Saving…\":\"Save changes\"})]})]}),editToast&&!cardEditMode&&/*#__PURE__*/_jsx(\"div\",{style:{margin:isMobile?\"10px 18px 0\":\"10px 28px 0\",padding:\"10px 14px\",borderRadius:10,background:\"#EAF5EC\",border:\"1px solid #C3DFC6\",color:\"#2E7D32\",fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:13,fontWeight:500},children:\"Contact updated.\"}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:12,background:tokens.bgCard,padding:isMobile?\"16px 18px 32px\":\"16px 28px 28px\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"baseline\",justifyContent:\"space-between\",position:\"sticky\",top:0,zIndex:4,background:\"#FFFFFF\",margin:isMobile?\"0 -18px\":\"0 -28px\",padding:isMobile?\"10px 18px\":\"12px 28px\",borderBottom:`1px solid ${tokens.borderSoft}`},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontSize:11,fontWeight:600,letterSpacing:\"0.14em\",textTransform:\"uppercase\",color:tokens.copper500},children:\"Deals\"}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"inline-flex\",alignItems:\"center\",gap:12},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontSize:13,color:tokens.inkMuted},children:listedDeals.length===0?\"No open Sales deal\":`${listedDeals.length} open Sales deal${listedDeals.length>1?\"s\":\"\"}`}),listedDeals.length>0&&/^\\d+$/.test(String(row.id))?/*#__PURE__*/_jsx(\"a\",{href:`https://jetfly.pipedrive.com/person/${row.id}`,target:\"_blank\",rel:\"noopener noreferrer\",style:{fontSize:12,fontWeight:600,color:tokens.copper500,textDecoration:\"none\"},children:\"Pipedrive\"}):null,/*#__PURE__*/_jsxs(\"button\",{type:\"button\",onClick:handleCreateDealForRow,style:{all:\"unset\",display:\"inline-flex\",alignItems:\"center\",gap:6,padding:\"6px 12px\",background:tokens.inkPrimary,color:\"#FFFFFF\",borderRadius:8,fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:12,fontWeight:600,letterSpacing:\"0.02em\",cursor:\"pointer\"},children:[/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,style:{fontSize:14,lineHeight:1},children:\"+\"}),\"New deal\"]})]})]}),listedDeals.length===0?/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:12,alignItems:\"stretch\",padding:16,background:\"#F7F7F5\",borderRadius:12},children:[/*#__PURE__*/_jsx(\"span\",{style:{color:tokens.inkSubtle,fontSize:13,textAlign:\"center\",lineHeight:1.45},children:\"Only open Sales pipeline deals appear here.\"}),/^\\d+$/.test(String(row.id))?/*#__PURE__*/_jsx(\"a\",{href:`https://jetfly.pipedrive.com/person/${row.id}`,target:\"_blank\",rel:\"noopener noreferrer\",style:{alignSelf:\"center\",color:tokens.copper500,fontSize:13,fontWeight:600,textDecoration:\"none\"},children:\"Open all deals in Pipedrive\"}):null,/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:handleCreateDealForRow,style:{all:\"unset\",cursor:\"pointer\",alignSelf:\"center\",padding:\"8px 14px\",background:tokens.inkPrimary,color:\"#FFFFFF\",borderRadius:8,fontSize:12,fontWeight:600,fontFamily:\"'Hanken Grotesk', sans-serif\"},children:\"New deal\"})]}):/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:8},children:listedDeals.map(b=>{/* Only Draft and Sent badges — no Active/Generated labels. */const pill=b.isSent?{label:\"Sent\",bg:\"#C4945A\",fg:\"#FFFFFF\"}:b.status===\"draft\"?STATUS_PILL.draft:STATUS_PILL.open;const cta=b.status===\"draft\"||b.hasProposal&&!b.isGenerated&&!b.isSent?\"Resume\":b.isSent||b.isGenerated?\"See proposal\":\"Generate proposal\";return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\",gap:12,padding:\"12px 14px\",background:tokens.bgCard,border:`1px solid ${tokens.borderSoft}`,borderRadius:12,boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsxs(\"button\",{type:\"button\",onClick:()=>handleDealClick(b.deal),style:{all:\"unset\",cursor:\"pointer\",display:\"flex\",flexDirection:\"column\",gap:4,minWidth:0,flex:1},children:[/*#__PURE__*/_jsxs(\"span\",{style:{display:\"inline-flex\",alignItems:\"center\",gap:8,minWidth:0},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontSize:13,fontWeight:600,color:tokens.inkPrimary,letterSpacing:\"-0.01em\",overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"},children:b.title}),pill.label&&/*#__PURE__*/_jsx(\"span\",{style:{flexShrink:0,fontSize:10,fontWeight:700,letterSpacing:\"0.06em\",textTransform:\"uppercase\",padding:\"3px 7px\",borderRadius:999,background:pill.bg,color:pill.fg},children:pill.label})]}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:11,fontWeight:500,color:tokens.inkSubtle},children:b.date})]}),b.status===\"draft\"?/*#__PURE__*/_jsx(\"button\",{type:\"button\",\"aria-label\":\"Delete draft\",title:\"Delete draft\",onClick:e=>{e.stopPropagation();requestDeleteDraft(b.deal);},style:{all:\"unset\",cursor:\"pointer\",width:36,height:36,borderRadius:10,display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",color:tokens.inkMuted,flexShrink:0},children:/*#__PURE__*/_jsxs(\"svg\",{width:\"16\",height:\"16\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"1.8\",strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":true,children:[/*#__PURE__*/_jsx(\"polyline\",{points:\"3 6 5 6 21 6\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M10 11v6M14 11v6\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2\"})]})}):null,/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:e=>{e.stopPropagation();if(b.isSent){const propId2=proposalIdForDeal(b.deal);if(!propId2){handleDealClick(b.deal);return;}const s2=typeof window!==\"undefined\"?window.__jetflySales:null;const stepRoutes=s2?.state?.theme?.stepRoutes||[];const route=stepRoutes[4]||\"/sales/release\";try{const url=new URL(window.location.href);url.pathname=route;url.searchParams.set(\"p\",propId2);window.location.href=url.toString();}catch{window.location.href=`${route}?p=${encodeURIComponent(propId2)}`;}onClose();}else{handleDealClick(b.deal);}},style:{all:\"unset\",cursor:\"pointer\",display:\"inline-flex\",alignItems:\"center\",gap:6,padding:\"8px 12px\",borderRadius:8,border:b.isSent?`1px solid ${tokens.copper500}`:`1px dashed ${tokens.borderSoft}`,color:b.isSent?tokens.copper500:tokens.inkPrimary,fontSize:12,fontWeight:600,fontFamily:\"'Hanken Grotesk', sans-serif\",flexShrink:0},children:cta})]},b.key);})})]})]})]}),deleteConfirmDeal&&/*#__PURE__*/_jsx(\"div\",{role:\"dialog\",\"aria-modal\":\"true\",\"aria-label\":\"Delete draft confirmation\",onClick:e=>{if(e.target===e.currentTarget&&deletingId===null){setDeleteConfirmDeal(null);}},style:{position:\"fixed\",inset:0,zIndex:2147483647,background:\"rgba(15, 12, 6, 0.35)\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",padding:24,fontFamily:\"'Hanken Grotesk', sans-serif\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{background:tokens.bgCard,borderRadius:14,padding:24,maxWidth:380,width:\"100%\",boxShadow:\"0 24px 60px rgba(15, 12, 6, 0.24), 0 6px 16px rgba(15, 12, 6, 0.10)\",display:\"flex\",flexDirection:\"column\",gap:16,boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:6},children:[/*#__PURE__*/_jsx(\"span\",{style:{color:tokens.inkPrimary,fontSize:17,fontWeight:600,lineHeight:1.3,...titleFont??{}},children:\"Delete this draft?\"}),/*#__PURE__*/_jsx(\"span\",{style:{color:tokens.inkMuted,fontSize:13,fontWeight:400,lineHeight:1.5},children:\"This draft will be permanently removed from the database. This action cannot be undone.\"})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:10,justifyContent:\"flex-end\",marginTop:4},children:[/*#__PURE__*/_jsx(\"button\",{type:\"button\",disabled:deletingId!==null,onClick:()=>setDeleteConfirmDeal(null),style:{all:\"unset\",cursor:deletingId!==null?\"not-allowed\":\"pointer\",padding:\"10px 16px\",borderRadius:10,fontSize:13,fontWeight:500,color:tokens.inkPrimary,background:\"transparent\",border:`1px solid ${tokens.borderSoft}`,opacity:deletingId!==null?.5:1},children:\"Cancel\"}),/*#__PURE__*/_jsx(\"button\",{type:\"button\",disabled:deletingId!==null,onClick:confirmDeleteDraft,style:{all:\"unset\",cursor:deletingId!==null?\"wait\":\"pointer\",padding:\"10px 18px\",borderRadius:10,fontSize:13,fontWeight:600,color:\"#FFFFFF\",background:\"#B83228\",opacity:deletingId!==null?.6:1},children:deletingId!==null?\"Deleting…\":\"Delete\"})]})]})})]}),document.body);}export default function CustomerCardList(props){const store=useSalesStore();const t=store?.state?.tokens??{};const bgCard=t.bgCard??D.bgCard;const borderSoft=t.borderSoft??D.borderSoft;const sand100=t.sand100??D.sand100;const sand200=t.sand200??D.sand200;const inkPrimary=t.inkPrimary??D.inkPrimary;const inkMuted=t.inkMuted??D.inkMuted;const inkSubtle=t.inkSubtle??D.inkSubtle;const copper500=t.copper500??D.copper500;const titleFont=hasFontOverride(props.titleFont)?props.titleFont:t.titleFont??D.titleFont;const bodyFont=t.bodyFont??D.bodyFont;const[query,setQuery]=useState(\"\");const[results,setResults]=useState([]);const[loading,setLoading]=useState(false);const[enrichingIds,setEnrichingIds]=useState(()=>new Set);const pageSize=Math.max(1,props.pageSize||25);const[visibleCount,setVisibleCount]=useState(pageSize);const[loadingMore,setLoadingMore]=useState(false);const[listHasMore,setListHasMore]=useState(false);const sentinelRef=useRef(null);const listCursorRef=useRef(null);const loadingMoreRef=useRef(false);const mapCustomerRef=useRef(c=>c);const hidePersonRef=useRef(()=>false);const extraClosedRef=useRef(\"unknown\");const[openContactId,setOpenContactId]=useState(null);const[sortBy,setSortBy]=useState(\"recent\");const[animKey,setAnimKey]=useState(0);const rootRef=useRef(null);const[containerWidth,setContainerWidth]=useState(1200);useEffect(()=>{if(!rootRef.current)return;const ro=new ResizeObserver(entries=>{for(const e of entries)setContainerWidth(e.contentRect.width);});ro.observe(rootRef.current);return()=>ro.disconnect();},[]);const isMobile=containerWidth<(props.mobileBreakpoint||540);useEffect(()=>{setVisibleCount(pageSize);listCursorRef.current=null;setListHasMore(false);extraClosedRef.current=\"unknown\";},[query,pageSize]);useEffect(()=>{if(typeof window===\"undefined\")return;const onChange=e=>{const detail=e.detail;setQuery(typeof detail?.query===\"string\"?detail.query:\"\");};window.addEventListener(\"jetfly:customer-query-change\",onChange);return()=>window.removeEventListener(\"jetfly:customer-query-change\",onChange);},[]);/* Listen for the CustomerCard \"Open\" event — fired only when the\n       row has at least one active deal. Opens the detail modal on the\n       matching row (contact info + full deals list, portalled). */useEffect(()=>{if(typeof window===\"undefined\")return;const onOpen=e=>{const id=e.detail?.customerId;if(typeof id===\"string\"&&id){window.location.href=`/sales/contacts?personId=${id}`;}};window.addEventListener(\"jetfly:customer-open\",onOpen);return()=>window.removeEventListener(\"jetfly:customer-open\",onOpen);},[]);/* Delete-in-popup: filter the removed proposal out of local results\n       instead of re-fetching. A full refetch would drop orphan-draft\n       rows once their only deal is gone → the popup unmounts. Keeping\n       the row (with its deals filtered) preserves the popup so the rep\n       can continue reviewing / deleting more drafts on the same\n       prospect (Maxime 2026-08-17). */useEffect(()=>{if(typeof window===\"undefined\")return;const onDeleted=e=>{const proposalId=e.detail?.proposalId;if(!proposalId)return;setResults(prev=>prev.map(row=>{if(!Array.isArray(row.deals)||row.deals.length===0)return row;const nextDeals=row.deals.filter(d=>String(d.id)!==String(proposalId));if(nextDeals.length===row.deals.length)return row;return{...row,deals:nextDeals};}));};window.addEventListener(\"jetfly:proposal-deleted\",onDeleted);return()=>window.removeEventListener(\"jetfly:proposal-deleted\",onDeleted);},[]);/* Canvas preview — inject mock rows when canvasDataMode === \"full\" */useEffect(()=>{if(RenderTarget.current()!==RenderTarget.canvas)return;if(props.canvasDataMode===\"full\"){setResults([{id:\"10001\",full_name:\"Jean-Pierre Dupont\",email:\"jp.dupont@swissair.com\",company:\"Swiss Air Corp SA\",phone:\"+41 79 123 45 67\",owner_name:\"Yuliia M.\",deals:[{id:\"pd:1001\",number:\"1001\",status:\"open\",pipedrive_deal_id:1001,_pipedriveOnly:true}]},{id:\"10002\",full_name:\"Sophie M\\xfcller\",email:\"s.muller@privatejet.ch\",company:\"PrivateJet AG\",phone:\"+41 78 987 65 43\",owner_name:\"Umut S.\",deals:[{id:\"pd:1002\",number:\"1002\",status:\"open\",pipedrive_deal_id:1002,_pipedriveOnly:true},{id:\"pd:1003\",number:\"1003\",status:\"won\",pipedrive_deal_id:1003,_pipedriveOnly:true}]},{id:\"10003\",full_name:\"Marc Lefevre\",email:\"m.lefevre@airfrance-biz.fr\",company:\"AirFrance Business\",phone:\"+33 6 12 34 56 78\",owner_name:\"Yuliia M.\",deals:[]},{id:\"10004\",full_name:\"Carla Rossi\",email:\"c.rossi@vistajet.com\",company:\"VistaJet SpA\",phone:\"+39 02 1234 5678\",owner_name:\"Umut S.\",deals:[{id:\"pd:1004\",number:\"1004\",status:\"open\",pipedrive_deal_id:1004,_pipedriveOnly:true},{id:\"pd:1005\",number:\"1005\",status:\"open\",pipedrive_deal_id:1005,_pipedriveOnly:true},{id:\"pd:1006\",number:\"1006\",status:\"lost\",pipedrive_deal_id:1006,_pipedriveOnly:true}]}]);}else{setResults([]);}setLoading(false);},[props.canvasDataMode]);/* Generation counter — every effect re-run bumps it. A given\n       async fetch closure captures its generation number and only\n       writes state when its generation is still the latest. Prevents\n       StrictMode double-invocation, useSalesStore re-notifies, and\n       any race between overlapping requests from stomping each\n       other's results. */const isAbort=err=>err?.name===\"AbortError\"||/aborted/i.test(String(err?.message||\"\"));const fetchGen=useRef(0);useEffect(()=>{/* Skip in Framer canvas — MSAL isn't configured in the editor\n           sandbox, so the fetch throws \"No access token — user not\n           authenticated\" and spams the console. On the live site the\n           user is authenticated and this runs normally. Maxime\n           2026-08-21. */if(RenderTarget.current()===RenderTarget.canvas)return;const gen=++fetchGen.current;let cancelled=false;const controller=new AbortController;const run=async()=>{const limit=props.pageSize||25;const q=query.trim();/* Home stays empty until the rep actually searches —\n               listing every Pipedrive person on load burns the API\n               budget (listCustomers + getCustomerDeals × N). */if(q.length<2){if(gen===fetchGen.current){setResults([]);setLoading(false);setListHasMore(false);listCursorRef.current=null;}return;}const cacheKey=`q:${q}`;/* Cache entries carry a timestamp so we can serve them\n               fast for UX (stale-while-revalidate) while forcing the\n               live API fetch below to bypass its own cache. TTL 60s :\n               long enough to smooth out re-mounts, short enough that\n               a Pipedrive rename shows up on the next visit.\n               Umut 2026-08-27. */const CLIENT_CACHE_TTL_MS=60*1e3;const cache=typeof window!==\"undefined\"&&window.__jetflyCustomerListCache||{};if(typeof window!==\"undefined\"){window.__jetflyCustomerListCache=cache;}const cachedEntry=cache[cacheKey];const cachedFresh=cachedEntry&&Date.now()-cachedEntry.ts<CLIENT_CACHE_TTL_MS;if(cachedEntry?.data?.length&&cachedFresh&&gen===fetchGen.current){setResults(cachedEntry.data);setLoading(false);}const waitForAuth=async()=>{const started=Date.now();while(Date.now()-started<8e3){if(cancelled)return null;const api=window.__jetflyApi;const auth=window.__jetflyAuth;if((api?.searchCustomers||api?.listCustomers)&&auth?.getAccount){try{const acc=await auth.getAccount();if(acc)return api;}catch{}}await new Promise(r=>setTimeout(r,80));}return window.__jetflyApi?.searchCustomers||window.__jetflyApi?.listCustomers?window.__jetflyApi:null;};const api=await waitForAuth();if(cancelled||gen!==fetchGen.current)return;if(!api?.searchCustomers&&!api?.listCustomers)return;if(!cachedEntry?.data?.length||!cachedFresh)setLoading(true);/* Pipedrive proposal.status → UI deal status. Keeps the\n               DealPill palette consistent with the rest of the tool. */const dealStatusFor=s=>{switch(s){case\"review\":return\"pending\";case\"sent\":return\"lead-in\";case\"accepted\":return\"contract-made\";default:return\"draft\";}};const t0=Date.now();let customers=[];let nextCursor=null;let proposals=[];let cachedProps=null;let propCache;let userMap={};const cachedUsers=window.__jetflyUserMap;if(cachedUsers&&typeof cachedUsers===\"object\"){userMap=cachedUsers;}try{const customerReq=q.length>=2&&api.searchCustomers?api.searchCustomers(q,controller.signal,{skipCache:true}):api.listCustomers({owner:\"all\",limit,signal:controller.signal,skipCache:true});const metaReq=Object.keys(userMap).length>0||!api.getMeta?Promise.resolve(null):api.getMeta(controller.signal);propCache=window.__jetflyProposalsCache;const PROP_TTL=60*1e3;cachedProps=propCache&&Date.now()-propCache.ts<PROP_TTL?propCache.data:null;const[custRes,metaRes]=await Promise.all([customerReq,metaReq]);customers=custRes?.data||[];nextCursor=q.length>=2?null:custRes?.next_cursor?String(custRes.next_cursor):null;/* Fallback: searchCustomers may return 0 for recently\n                   created or poorly-indexed contacts. Paginate\n                   listCustomers 3×100 and filter client-side —\n                   same technique as CustomerSearch (Step 2). */if(q.length>=2&&customers.length===0&&api.listCustomers){try{let all=[];let cur=null;for(let page=0;page<3;page++){if(cancelled||gen!==fetchGen.current)break;const res=await api.listCustomers({owner:\"all\",limit:100,...cur?{cursor:cur}:{},skipCache:true,signal:controller.signal});all=all.concat(res?.data||[]);cur=res?.next_cursor??null;if(!cur)break;}const needle=q.toLowerCase();customers=all.filter(c=>{const n=String(c.name||c.full_name||[c.first_name,c.last_name].filter(Boolean).join(\" \")).toLowerCase();const emails=Array.isArray(c.emails)?c.emails.map(e=>String(e?.value||\"\").toLowerCase()):[String(c.email||\"\").toLowerCase()];return n.includes(needle)||emails.some(e=>e.includes(needle));});}catch(fe){if(!isAbort(fe)&&!cancelled)console.warn(\"[Jetfly CustomerCardList] listCustomers fallback failed\",fe);}}proposals=Array.isArray(cachedProps)?cachedProps.slice():[];if(metaRes?.users){for(const u of metaRes.users){userMap[String(u.id)]={name:u.name||\"\",email:u.email||\"\"};}window.__jetflyUserMap=userMap;}}catch(err){if(isAbort(err)||cancelled)return;console.error(`[Jetfly CustomerCardList] customers fetch failed after ${Date.now()-t0}ms —`,err);if(gen===fetchGen.current){setLoading(false);if(!cache[cacheKey]?.data?.length){setResults([]);setAnimKey(k=>k+1);}}return;}if(cancelled||gen!==fetchGen.current)return;/* Merge in local-only drafts (localStorage). Per Maxime\n               2026-08-14, drafts stay in the sales rep's browser until\n               PDF generation — so `apiListProposals` never sees them.\n               Filters (avoid flooding the home with junk):\n                 1. Skip corrupt / API-duplicate rows.\n                 2. Keep only entries with meaningful identity: at least\n                    ONE of customer.first_name/last_name/company_name/\n                    email/phone_number is set — OR the wizard reached\n                    step ≥ 3 (real work done). Empty step-1 \"Draft xxxx\"\n                    entries are dropped.\n                 3. Passively prune localStorage rows older than 30 days\n                    that still have no identity — self-healing cleanup\n                    so the home doesn't accumulate stale test junk. */try{if(typeof localStorage!==\"undefined\"){const apiIds=new Set(proposals.map(p=>String(p.id)));const now=Date.now();const PRUNE_AFTER_MS=30*24*60*60*1e3;const toPrune=[];for(let i=0;i<localStorage.length;i++){const k=localStorage.key(i)||\"\";if(!k.startsWith(\"jetfly.proposal.\"))continue;try{const raw=localStorage.getItem(k);if(!raw)continue;const p=JSON.parse(raw);if(!p||!p.id)continue;if(apiIds.has(String(p.id)))continue;if(p.status&&p.status!==\"draft\")continue;const cust=p.payload?.step2_profile?.customer||{};if(isSeedDemoPerson(cust)||isJetflyStaffOrJunk(cust)){toPrune.push(k);continue;}if(isLegacySupabaseDraft(p)){toPrune.push(k);continue;}const hasIdentity=!!(String(cust.first_name||\"\").trim()||String(cust.last_name||\"\").trim()||String(cust.company_name||\"\").trim()||String(cust.email||\"\").trim()||String(cust.phone_number||\"\").trim());const step=Number(p.current_step)||1;/* Prune stale + empty rows silently. */const updatedTs=Date.parse(p.updated_at||\"\")||0;if(!hasIdentity&&step<3&&updatedTs&&now-updatedTs>PRUNE_AFTER_MS){toPrune.push(k);continue;}/* Skip fresh empty rows too — they clutter\n                               the list without providing value. */if(!hasIdentity&&step<3)continue;const step3p=p.payload?.step3_aircraft||{};const prefsP=step3p.preferences||{};const hasWork=Object.values(prefsP).some(pr=>{const offers=Array.isArray(pr?.offers)?pr.offers:[];return offers.some(o=>String(o?.immat||\"\").trim()||String(o?.share||\"\").trim())||String(pr?.immat||\"\").trim()||String(pr?.share||\"\").trim();});if(!p.pipedrive_deal_id&&!hasWork&&step<3){toPrune.push(k);continue;}proposals.push({id:p.id,slug:p.slug||String(p.id).slice(0,8),status:\"draft\",current_step:step,pipedrive_person_id:p.pipedrive_person_id??(p.customer_id?Number(p.customer_id)||null:null),owner_name:p.payload?.__ownerName||\"\",owner_email:p.payload?.__ownerEmail||\"\",payload:p.payload||{},updated_at:p.updated_at||new Date().toISOString(),created_at:p.created_at||new Date().toISOString()});}catch{/* corrupt localStorage row — schedule prune */toPrune.push(k);}}for(const k of toPrune){try{localStorage.removeItem(k);}catch{}}if(toPrune.length>0){jetflyDebug(\"[Jetfly CustomerCardList] pruned stale localStorage drafts\",{count:toPrune.length});}}}catch(e){console.warn(\"[Jetfly CustomerCardList] local drafts scan failed\",e);}/* Group proposals by pipedrive_person_id (matches Pipedrive\n               customer.id). Orphan drafts (no person id) become their\n               own top-level rows in the search results. */const draftsByCustomer={};const orphanProposals=[];for(const p of proposals){const seedCust=p?.payload?.step2_profile?.customer;if(seedCust&&(isSeedDemoPerson(seedCust)||isJetflyStaffOrJunk(seedCust)))continue;if(isLegacySupabaseDraft(p))continue;const person=p.pipedrive_person_id;const dealShape={id:p.id,number:p.slug||String(p.id).slice(0,8),status:dealStatusFor(p.status),current_step:Number(p.current_step)||1,updated_at:p.updated_at,created_at:p.created_at,sales_user_id:p.owner_email||\"\",owner_name:p.owner_name||\"\",owner_email:p.owner_email||\"\",pipedrive_deal_id:p.pipedrive_deal_id??null,payload:p.payload||{},proposal_status:p.status||\"\"};const step3=p?.payload?.step3_aircraft||{};const prefs=step3.preferences||{};const hasAircraftWork=Object.values(prefs).some(pr=>{const offers=Array.isArray(pr?.offers)?pr.offers:[];if(offers.some(o=>String(o?.immat||\"\").trim()||String(o?.share||\"\").trim()))return true;return Boolean(String(pr?.immat||\"\").trim()||String(pr?.share||\"\").trim());});const isEmptyShell=String(p.status||\"draft\")===\"draft\"&&!p.pipedrive_deal_id&&!hasAircraftWork&&(Number(p.current_step)||1)<3;if(isEmptyShell)continue;if(person!=null){const key=String(person);if(!draftsByCustomer[key])draftsByCustomer[key]=[];draftsByCustomer[key].push(dealShape);}else if(p.status===\"draft\"){/* Only a manually created new user (not Pipedrive)\n                       should appear as its own row — and only once they\n                       have a real identity. Empty autoCreate shells\n                       (\"Draft bbuunv\") stay hidden. */const c=p?.payload?.step2_profile?.customer||{};const hasIdentity=!!(String(c.first_name||\"\").trim()||String(c.last_name||\"\").trim()||String(c.company_name||\"\").trim()||String(c.email||\"\").trim()||String(c.phone_number||\"\").trim());if(hasIdentity)orphanProposals.push({p,deal:dealShape});}}/* Orphan draft rows — only shown when the search query\n               doesn't filter them out. Multiple drafts for the same\n               prospect (same email / phone / name+company) are merged\n               into a single row so the search page never shows the same\n               person twice; the popup lists all their deals\n               (Maxime 2026-08-17). */const qLower=q.toLowerCase();const orphanByKey=new Map;for(const{p,deal}of orphanProposals){const c=p?.payload?.step2_profile?.customer||{};const first=String(c.first_name||\"\").trim();const last=String(c.last_name||\"\").trim();const full=[first,last].filter(Boolean).join(\" \");const company=String(c.company_name||\"\").trim();const email=String(c.email||\"\").trim();const phone=String(c.phone_number||\"\").trim();const fallbackTag=`Draft ${String(p.slug||p.id).slice(0,6)}`;const nameLine=full||company||email||\"\";if(!nameLine||nameLine===fallbackTag)continue;/* Dedup key priority: email > digits-only phone >\n                   name+company > proposal id (no dedup fallback). */const emailKey=email.toLowerCase();const phoneDigits=phone.replace(/\\D+/g,\"\");const nameKey=full.toLowerCase();const companyKey=company.toLowerCase();const identityKey=emailKey?`e:${emailKey}`:phoneDigits?`p:${phoneDigits}`:nameKey&&companyKey?`nc:${nameKey}|${companyKey}`:nameKey?`n:${nameKey}`:`id:${p.id}`;const existing=orphanByKey.get(identityKey);if(existing){existing.deals.push(deal);/* Backfill missing contact fields from later drafts. */if(!existing.email&&email)existing.email=email;if(!existing.company&&company)existing.company=company;if(!existing.phone&&phone)existing.phone=phone;if(existing.full_name.startsWith(\"Draft \")&&!full.startsWith(\"Draft \")&&nameLine){existing.full_name=nameLine;}/* _draft points at the most recently updated draft so\n                       any residual direct-navigation fallback lands on\n                       the freshest one. */const prevTs=Date.parse(existing._draft.updatedAt||\"\")||0;const currTs=Date.parse(p.updated_at||\"\")||0;if(currTs>=prevTs){existing._draft={proposalId:p.id,currentStep:Number(p.current_step)||1,updatedAt:p.updated_at||\"\"};}continue;}orphanByKey.set(identityKey,{id:`draft-${p.id}`,full_name:nameLine,email:email||null,company:company||null,phone:phone||null,profile:null,city:\"\",deals:[deal],_draft:{proposalId:p.id,currentStep:Number(p.current_step)||1,updatedAt:p.updated_at||\"\"}});}const orphanDraftRows=Array.from(orphanByKey.values()).filter(row=>!isSeedDemoPerson(row)).filter(row=>{if(!qLower)return true;const hay=[row.full_name,row.email,row.company,row.phone].filter(Boolean).join(\" \").toLowerCase();return hay.includes(qLower);});/* Map Pipedrive customer → CustomerRow shape expected by\n               CustomerCard. Pipedrive.name is a single string — split\n               on first whitespace to seed first/last for the Create\n               Deal handoff. */const isInternalOrSeedPerson=c=>{const fold=s=>String(s||\"\").toLowerCase().replace(/^test\\s*[—–-]\\s*/i,\"\").normalize(\"NFD\").replace(/[\\u0300-\\u036f]/g,\"\").replace(/[^a-z0-9]+/g,\" \").trim();const name=fold(c.name||c.full_name||[c.first_name,c.last_name].filter(Boolean).join(\" \"));const company=fold(c.company||c.company_name);const emails=Array.isArray(c.emails)?c.emails.map(e=>String(e?.value||\"\").toLowerCase()):[String(c.email||\"\").toLowerCase()];const email=emails.filter(Boolean).join(\" \");const seeds=[\"alexandre dupont\",\"sophie laurent\",\"marcus weber\",\"isabella rossi\",\"ethan sinclair\",\"camille mercier\",\"julian blackwood\",\"elena vasquez\",\"henri van der berg\",\"aurelie beaumont\"];const seedCompanies=[\"dupont investments\",\"beaumont family office\",\"sinclair capital\",\"laurent partners\",\"weber holdings\",\"rossi group\",\"mercier capital\",\"blackwood partners\",\"vasquez wealth\",\"van der berg family\"];return seeds.includes(name)||seedCompanies.includes(company);};const mapOne=c=>{const primaryEmail=(c.emails||[]).find(e=>e.primary)?.value||(c.emails||[])[0]?.value||\"\";const primaryPhone=(c.phones||[]).find(p=>p.primary)?.value||(c.phones||[])[0]?.value||\"\";const parts=String(c.name||\"\").trim().split(/\\s+/);/* Owner lookup via /meta users cache (populated above).\n                   Falls back to the numeric owner_id shown as-is when\n                   no match — better than an empty circle. */const ownerRec=userMap[String(c.owner_id)];const ownerName=ownerRec?.name||(c.owner_id?`#${c.owner_id}`:\"\");const ownerEmail=ownerRec?.email||\"\";return{id:String(c.id),full_name:String(c.name||\"\"),first_name:parts[0]||\"\",last_name:parts.length>1?parts.slice(1).join(\" \"):\"\",email:primaryEmail||null,company:c.organization_name||null,company_name:c.organization_name||\"\",phone:primaryPhone||null,profile:null,city:\"\",owner_name:ownerName,owner_email:ownerEmail,owner_id:c.owner_id??null,deals:draftsByCustomer[String(c.id)]??[]};};hidePersonRef.current=c=>isInternalOrSeedPerson(c)||isSeedDemoPerson(c);mapCustomerRef.current=mapOne;const mappedCustomers=customers.filter(c=>!hidePersonRef.current(c)).map(mapOne);if(cancelled||gen!==fetchGen.current)return;const orgCache=window.__jetflyCustomerOrgCache||{};window.__jetflyCustomerOrgCache=orgCache;const ownerCache=window.__jetflyCustomerOwnerCache||{};window.__jetflyCustomerOwnerCache=ownerCache;const dealsCache=dealsCacheStore();const liveCustomers=mappedCustomers.map(r=>{const org=r.company||orgCache[r.id];const own=ownerCache[r.id];const packed=dealsCache[String(r.id)];const fresh=packed&&Date.now()-packed.ts<DEALS_TTL_MS;return{...r,company:org||r.company,company_name:org||r.company_name,owner_name:own?.name||r.owner_name,owner_email:own?.email||r.owner_email,owner_id:own?.id??r.owner_id,deals:fresh?mergeLocalAndPipedriveDeals(r.deals||[],packed.data):r.deals};});const nextRows=[...orphanDraftRows,...liveCustomers];listCursorRef.current=nextCursor;setListHasMore(!!nextCursor);setLoading(false);setResults(nextRows);setAnimKey(k=>k+1);/* Skip caching empty responses — a transient miss (auth\n               hiccup, Pipedrive still indexing a rename) would freeze\n               an empty state until page reload otherwise. */if(nextRows.length>0){cache[cacheKey]={ts:Date.now(),data:nextRows};}else{delete cache[cacheKey];}/* Proposals are heavy (owner=all). Paint the 25 customers\n               first from cache/localStorage, then merge API drafts. */if(api.listProposals&&cachedProps==null){void api.listProposals({owner:\"all\",signal:controller.signal}).then(propRes=>{if(cancelled||gen!==fetchGen.current)return;const apiProps=Array.isArray(propRes?.data)?propRes.data:[];window.__jetflyProposalsCache={ts:Date.now(),data:apiProps};setResults(prev=>{const merged=mergeApiProposalsIntoRows(prev,apiProps,dealStatusFor);if(merged.length>0){cache[cacheKey]={ts:Date.now(),data:merged};}return merged;});}).catch(err=>{if(!isAbort(err)){console.warn(\"[Jetfly CustomerCardList] listProposals deferred failed\",err);}});}else if(Array.isArray(cachedProps)){window.__jetflyProposalsCache={ts:propCache?.ts||Date.now(),data:cachedProps};}};void run().catch(err=>{if(!isAbort(err))console.error(\"[Jetfly CustomerCardList] run\",err);});return()=>{cancelled=true;controller.abort();};},[query,props.pageSize]);const root={width:\"100%\",display:\"flex\",flexDirection:\"column\",gap:14,boxSizing:\"border-box\"};const header={display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\",padding:\"0 4px\"};const list={display:\"flex\",flexDirection:\"column\",gap:10,width:\"100%\"};const delayStep=Math.max(0,props.fadeDelayStep??60);const duration=Math.max(120,props.fadeDuration??420);/* Apply the user's chosen sort order in-memory. \"recent\" keeps the\n       Supabase updated_at DESC order (orphan drafts first because of how\n       they're prepended). Alpha sorts are accent-insensitive so \"Élise\"\n       still lines up with \"E\". */const sortedResults=useMemo(()=>{if(sortBy===\"recent\")return results;const norm=s=>String(s??\"\").normalize(\"NFD\").replace(RegExp(\"\\\\p{Diacritic}\",\"gu\"),\"\").toLowerCase().trim();const arr=results.slice();if(sortBy===\"name\"){arr.sort((a,b)=>norm(a.full_name).localeCompare(norm(b.full_name)));}else if(sortBy===\"company\"){arr.sort((a,b)=>{const ac=norm(a.company);const bc=norm(b.company);if(!ac&&bc)return 1;if(ac&&!bc)return-1;return ac.localeCompare(bc);});}else if(sortBy===\"label\"){/* Drafts (rows carrying _draft or draft-status deals) first,\n               then customers, each group alpha by name. */const isDraft=r=>r?._draft||Array.isArray(r?.deals)&&r.deals.some(d=>d?.status===\"draft\");arr.sort((a,b)=>{const da=isDraft(a)?0:1;const db=isDraft(b)?0:1;if(da!==db)return da-db;return norm(a.full_name).localeCompare(norm(b.full_name));});}return arr;},[results,sortBy]);const visibleRows=useMemo(()=>sortedResults.slice(0,visibleCount),[sortedResults,visibleCount]);const visibleIdsKey=visibleRows.map(r=>String(r.id)).join(\",\");/* Hydrate company + Pipedrive KPIs for the visible 25 only.\n       The previous list-wide getCustomerDeals(all/won/lost) × N\n       blew the Laravel 429 budget, so Brad stayed 0/0/0. */useEffect(()=>{if(RenderTarget.current()===RenderTarget.canvas)return;if(typeof window===\"undefined\")return;if(!visibleIdsKey){setEnrichingIds(new Set);return;}const api=window.__jetflyApi;if(!api?.getCustomerDeals&&!api?.getCustomer)return;let cancelled=false;const controller=new AbortController;const orgCache=window.__jetflyCustomerOrgCache||{};window.__jetflyCustomerOrgCache=orgCache;const ownerCache=window.__jetflyCustomerOwnerCache||{};window.__jetflyCustomerOwnerCache=ownerCache;const dealsCache=dealsCacheStore();const rows=visibleRows.filter(r=>/^\\d+$/.test(String(r.id)));const pending=new Set;for(const r of rows){const packed=dealsCache[String(r.id)];const dealsFresh=packed&&Date.now()-packed.ts<DEALS_TTL_MS;const needCompany=!r.company&&!orgCache[r.id];if(!dealsFresh||needCompany)pending.add(String(r.id));}setEnrichingIds(pending);if(pending.size===0)return;const patchRow=(id,patch)=>{setResults(prev=>prev.map(r=>String(r.id)===String(id)?{...r,...patch}:r));};const loadOne=async id=>{if(cancelled)return;const row=rows.find(r=>String(r.id)===id);if(!row)return;const packed=dealsCache[id];const dealsFresh=packed&&Date.now()-packed.ts<DEALS_TTL_MS;if(!dealsFresh&&api.getCustomerDeals){try{const res=await api.getCustomerDeals(id,{signal:controller.signal});const list=asPipedriveDealList(res);dealsCache[id]={ts:Date.now(),data:list};patchRow(id,{deals:mergeLocalAndPipedriveDeals(row.deals||[],list)});}catch(err){if(isRateLimitErr(err)){await sleepMs(1600);}else if(err?.name!==\"AbortError\"&&!/aborted/i.test(String(err?.message||\"\"))){console.warn(\"[Jetfly CustomerCardList] getCustomerDeals failed for\",id,err);}}}else if(dealsFresh&&packed){patchRow(id,{deals:mergeLocalAndPipedriveDeals(row.deals||[],packed.data)});}if(cancelled)return;const needCompany=!row.company&&!orgCache[id];if(needCompany&&api.getCustomer){try{const res=await api.getCustomer(id,controller.signal);const orgName=res?.organization?.name||res?.person?.organization_name||\"\";if(orgName)orgCache[id]=orgName;const pid=res?.person?.owner_id;if(pid!=null){const users=window.__jetflyUserMap||{};const rec=users[String(pid)];ownerCache[id]={name:rec?.name||(pid?`#${pid}`:\"\"),email:rec?.email||\"\",id:pid};}const own=ownerCache[id];patchRow(id,{company:orgName||row.company,company_name:orgName||row.company_name,owner_name:own?.name||row.owner_name,owner_email:own?.email||row.owner_email,owner_id:own?.id??row.owner_id});}catch(err){if(isRateLimitErr(err)){await sleepMs(1600);}else if(err?.name!==\"AbortError\"&&!/aborted/i.test(String(err?.message||\"\"))){console.warn(\"[Jetfly CustomerCardList] getCustomer failed for\",id,err);}}}if(!cancelled){setEnrichingIds(prev=>{if(!prev.has(id))return prev;const next=new Set(prev);next.delete(id);return next;});}};void runPool(Array.from(pending),HYDRATE_CONCURRENCY,loadOne,()=>cancelled).then(()=>{if(!cancelled)setEnrichingIds(new Set);});return()=>{cancelled=true;controller.abort();};/* visibleRows is captured for the current ids key only. */// eslint-disable-next-line react-hooks/exhaustive-deps\n},[visibleIdsKey]);const loadNextPage=async()=>{if(loadingMoreRef.current)return;if(!listCursorRef.current)return;if(typeof window===\"undefined\")return;const api=window.__jetflyApi;if(!api?.listCustomers)return;loadingMoreRef.current=true;setLoadingMore(true);try{const res=await api.listCustomers({owner:\"all\",limit:pageSize,cursor:listCursorRef.current});listCursorRef.current=res?.next_cursor?String(res.next_cursor):null;setListHasMore(!!listCursorRef.current);const extra=(res?.data||[]).filter(c=>!hidePersonRef.current(c)).map(mapCustomerRef.current);const orgCache=window.__jetflyCustomerOrgCache||{};const ownerCache=window.__jetflyCustomerOwnerCache||{};const dealsCache=dealsCacheStore();const mapped=extra.map(r=>{const org=r.company||orgCache[r.id];const own=ownerCache[r.id];const packed=dealsCache[String(r.id)];const fresh=packed&&Date.now()-packed.ts<DEALS_TTL_MS;return{...r,company:org||r.company,company_name:org||r.company_name,owner_name:own?.name||r.owner_name,owner_email:own?.email||r.owner_email,owner_id:own?.id??r.owner_id,deals:fresh?mergeLocalAndPipedriveDeals(r.deals||[],packed.data):r.deals};});setResults(prev=>{const seen=new Set(prev.map(r=>String(r.id)));const add=mapped.filter(r=>!seen.has(String(r.id)));return[...prev,...add];});setVisibleCount(c=>c+pageSize);}catch(err){if(!isRateLimitErr(err)){console.warn(\"[Jetfly CustomerCardList] load next page failed\",err);}}finally{loadingMoreRef.current=false;setLoadingMore(false);}};const sortedLenRef=useRef(0);sortedLenRef.current=sortedResults.length;const visibleCountRef=useRef(visibleCount);visibleCountRef.current=visibleCount;const loadNextPageRef=useRef(loadNextPage);loadNextPageRef.current=loadNextPage;const lastSentinelFireRef=useRef(0);const isCanvas=RenderTarget.current()===RenderTarget.canvas;const searchReady=isCanvas?props.canvasDataMode===\"full\":query.trim().length>=2;const showEmpty=!loading&&sortedResults.length===0;const idleEmpty=showEmpty&&!searchReady;useEffect(()=>{const el=sentinelRef.current;if(!el||typeof IntersectionObserver===\"undefined\")return;const io=new IntersectionObserver(entries=>{if(!entries.some(e=>e.isIntersecting))return;const now=Date.now();if(now-lastSentinelFireRef.current<450)return;lastSentinelFireRef.current=now;const len=sortedLenRef.current;setVisibleCount(c=>{if(c<len)return Math.min(c+pageSize,len);return c;});if(visibleCountRef.current>=len&&listHasMore&&!loadingMoreRef.current){void loadNextPageRef.current();}},{root:null,rootMargin:\"480px 0px\",threshold:0});io.observe(el);return()=>io.disconnect();},[sortedResults.length>0,listHasMore,pageSize,showEmpty,visibleRows.length]);const onClearSearch=()=>{if(typeof window===\"undefined\")return;window.dispatchEvent(new CustomEvent(\"jetfly:customer-clear-search\"));};const onCreateNewPerson=()=>{if(store){store.setField?.(\"step1_customer.mode\",\"new\");store.setField?.(\"step1_customer.customerId\",null);store.setProposalField?.(\"customer_id\",null);}jetflyDebug(\"[JETFLY CustomerCardList] onCreateNewPerson → /sales/contacts?mode=new\");if(typeof window!==\"undefined\"){window.location.href=\"/sales/contacts?mode=new\";}};return /*#__PURE__*/_jsxs(\"div\",{ref:rootRef,style:root,children:[/*#__PURE__*/_jsx(\"style\",{children:`@keyframes jetflyCardFadeIn {\n                from { opacity: 0; transform: translateY(8px); }\n                to   { opacity: 1; transform: translateY(0); }\n            }`}),/*#__PURE__*/_jsx(\"div\",{style:header,children:loading?/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,style:{display:\"block\",width:140,height:18,borderRadius:6,background:`linear-gradient(90deg, ${sand200} 0%, ${bgCard} 50%, ${sand200} 100%)`,backgroundSize:\"200% 100%\",animation:\"jetflySkelShimmer 1.6s linear infinite\"}}),/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,style:{display:\"block\",width:110,height:12,borderRadius:6,background:`linear-gradient(90deg, ${sand200} 0%, ${bgCard} 50%, ${sand200} 100%)`,backgroundSize:\"200% 100%\",animation:\"jetflySkelShimmer 1.6s linear infinite\"}})]}):/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"span\",{style:{color:inkPrimary,fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:isMobile?14:16,fontWeight:500,margin:0},children:searchReady?props.resultsLabelTemplate.replace(\"{n}\",String(sortedResults.length)):\"Search Pipedrive\"}),!idleEmpty&&/*#__PURE__*/_jsx(SortSelect,{value:sortBy,onChange:v=>setSortBy(v),template:props.sortLabel,copperDeep:copper500,inkMuted:inkMuted})]})}),loading?/*#__PURE__*/_jsxs(\"div\",{style:list,children:[/*#__PURE__*/_jsx(\"style\",{children:SKEL_PULSE}),Array.from({length:4}).map((_,i)=>/*#__PURE__*/_jsx(SkeletonRow,{bg:bgCard,borderColor:borderSoft,color:sand200,isMobile:isMobile,sand:sand100},i))]}):showEmpty?/*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",background:bgCard,border:`1px solid ${borderSoft}`,borderRadius:18,padding:isMobile?\"32px 20px\":\"56px 32px\",display:\"flex\",flexDirection:\"column\",alignItems:\"center\",gap:isMobile?16:20,boxSizing:\"border-box\",animation:`jetflyCardFadeIn ${duration}ms ease forwards`},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:isMobile?56:72,height:isMobile?56:72,borderRadius:999,background:sand100,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",color:inkSubtle},children:/*#__PURE__*/_jsxs(\"svg\",{width:isMobile?22:28,height:isMobile?22:28,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"1.6\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"11\",cy:\"11\",r:\"7\"}),/*#__PURE__*/_jsx(\"path\",{d:\"m20 20-3.5-3.5\"})]})}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"center\",gap:8,maxWidth:420,textAlign:\"center\"},children:[/*#__PURE__*/_jsx(\"h2\",{style:{color:inkPrimary,margin:0,lineHeight:1.15,letterSpacing:\"-0.005em\",fontWeight:500,...titleFont??{},fontSize:isMobile?22:26},children:idleEmpty?\"Search to load customers\":props.emptyTitle}),/*#__PURE__*/_jsx(\"p\",{style:{...bodyFont??{},color:inkMuted,margin:0,fontSize:14,lineHeight:1.45},children:idleEmpty?\"Type a name, email or company (2+ characters). The list stays empty on load so we don't fetch every Pipedrive contact.\":isMobile&&props.emptyHelperMobile?props.emptyHelperMobile:props.emptyHelper})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:isMobile?\"column\":\"row\",gap:12,marginTop:4,width:isMobile?\"100%\":\"auto\",alignItems:\"center\",justifyContent:\"center\"},children:[!isMobile&&query.trim().length>0&&/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:onClearSearch,style:{height:44,padding:\"0 22px\",background:bgCard,border:`1px solid ${borderSoft}`,borderRadius:12,color:copper500,fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:14,fontWeight:600,cursor:\"pointer\"},children:props.emptyClearLabel}),/*#__PURE__*/_jsx(\"div\",{style:{width:isMobile?\"100%\":\"auto\"},children:/*#__PURE__*/_jsx(BtnPrimary,{label:\"Create New Person\",size:\"lg\",variant:\"filled\",arrow:\"right\",disabled:false,href:\"\",fullWidth:isMobile,font:null,strokeWidth:1.5,strokeColor:\"\",strokeColorHover:\"\",textColor:\"\",textColorHover:\"\",radius:12,onClick:onCreateNewPerson})})]})]}):/*#__PURE__*/_jsxs(\"div\",{style:list,children:[visibleRows.map((row,i)=>{const isDraft=!!row._draft;return /*#__PURE__*/_jsx(\"div\",{onClickCapture:e=>{if(!isDraft)return;// Draft rows behave like any other prospect\n// row: clicking anywhere opens the prospect\n// popup so the rep can see the contact info\n// and pick from the deals list — even when\n// there's only a single draft deal\n// (Maxime 2026-08-17).\ne.stopPropagation();e.preventDefault();if(typeof window===\"undefined\")return;window.dispatchEvent(new CustomEvent(\"jetfly:customer-open\",{detail:{customerId:row.id}}));},style:{width:\"100%\",opacity:0,animation:`jetflyCardFadeIn ${duration}ms ease forwards`,animationDelay:`${Math.min(i%pageSize,6)*Math.min(delayStep,40)}ms`},children:/*#__PURE__*/_jsx(CustomerCard,{customerId:row.id,fullName:row.full_name,company:row.company||\"\",companyLoading:enrichingIds.has(row.id)&&!row.company&&!isDraft,email:row.email||\"\",phone:row.phone||\"\",label:isDraft?\"Draft\":(()=>{const raw=row.label;if(!raw)return\"Prospect\";return String(raw).charAt(0).toUpperCase()+String(raw).slice(1);})(),owner:personOwnerName(row),ownerEmail:personOwnerEmail(row),ownerLoading:enrichingIds.has(row.id)&&!personOwnerName(row)&&!isDraft,kpisLoading:!isDraft&&/^\\d+$/.test(String(row.id))&&(enrichingIds.has(row.id)||(()=>{const packed=dealsCacheStore()[String(row.id)];return!(packed&&Date.now()-packed.ts<DEALS_TTL_MS);})()),dealsJson:JSON.stringify(row.deals||[]),openLabel:isDraft?\"Resume\":props.openLabel,addDealLabel:props.addDealLabel,mobileBreakpoint:640})},`${animKey}-${row.id}`);}),(visibleCount<sortedResults.length||listHasMore)&&/*#__PURE__*/_jsx(\"div\",{ref:sentinelRef,\"aria-hidden\":!loadingMore,style:{width:\"100%\",minHeight:1,padding:loadingMore?\"12px 0 4px\":0,display:\"flex\",justifyContent:\"center\",color:inkMuted,fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:12,fontWeight:500},children:loadingMore?\"Loading…\":null})]}),openContactId&&(()=>{const row=sortedResults.find(r=>r.id===openContactId);if(!row)return null;return /*#__PURE__*/_jsx(ContactDetailModal,{row:row,ownerName:personOwnerName(row),ownerEmail:personOwnerEmail(row),onClose:()=>setOpenContactId(null),onDealsLoaded:(id,deals)=>{setResults(prev=>prev.map(r=>String(r.id)===String(id)?{...r,deals:mergeLocalAndPipedriveDeals(r.deals||[],deals)}:r));},tokens:{bgCard,borderSoft,sand100,sand200,inkPrimary,inkMuted,inkSubtle,copper500},titleFont:titleFont});})()]});}CustomerCardList.displayName=\"Sales / Customer Card List\";addPropertyControls(CustomerCardList,{resultsLabelTemplate:{type:ControlType.String,title:\"Results label\",defaultValue:\"{n} results\"},sortLabel:{type:ControlType.String,title:\"Sort label\",defaultValue:\"Sorted by recent\"},openLabel:{type:ControlType.String,title:\"Open label\",defaultValue:\"Open\"},addDealLabel:{type:ControlType.String,title:\"Add deal label\",defaultValue:\"Add deal\"},pageSize:{type:ControlType.Number,title:\"Page size\",min:1,max:100,step:1,defaultValue:25},fadeDelayStep:{type:ControlType.Number,title:\"Fade stagger\",min:0,max:300,step:10,defaultValue:60,description:\"Delay between each card's fade-in (ms). 0 = all together.\"},fadeDuration:{type:ControlType.Number,title:\"Fade duration\",min:120,max:1200,step:20,defaultValue:420,description:\"Each card's fade-in duration (ms).\"},titleFont:{type:ControlType.Font,title:\"Title font\",controls:\"extended\",defaultValue:{fontSize:22},description:\"Override the global title font. Pick Begum Sans Medium here for the results header.\"},emptyTitle:{type:ControlType.String,title:\"Empty title\",defaultValue:\"We couldn’t find any match\"},emptyHelper:{type:ControlType.String,title:\"Empty helper\",defaultValue:\"Try a different name or company. You can also create a new offer if this is a fresh prospect.\",displayTextArea:true},emptyHelperMobile:{type:ControlType.String,title:\"Empty helper (mobile)\",defaultValue:\"Try a different name or company.\",displayTextArea:true,description:\"Shorter copy used below the mobile breakpoint.\"},emptyClearLabel:{type:ControlType.String,title:\"Clear label\",defaultValue:\"Clear search\"},emptyCreateLabel:{type:ControlType.String,title:\"Create label\",defaultValue:\"Create new offer\"},mobileBreakpoint:{type:ControlType.Number,title:\"Mobile bp\",defaultValue:540,min:360,max:900,step:10,description:\"Container width (px) below which the empty state uses the mobile layout.\"},canvasDataMode:{type:ControlType.Enum,title:\"Preview mode\",defaultValue:\"empty\",options:[\"full\",\"empty\"],optionTitles:[\"Full data\",\"Empty state\"]}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CustomerCardList\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CustomerCardList.map","// Sales/UI/InputUi.tsx — Visual input with Default/Focus/Error states.\n//\n// V2: added `label`, `hint`, `error`, `required`, `disabled` props so a\n// single call renders the full form-field shape (label above, halo\n// input, hint/error below). Consumers that just want the bare input\n// leave label empty. For data-bound inputs use Sales/BoundInput, which\n// composes this primitive under the hood.\n//\n// The visual language (copper `#C4945A` border + sand `rgba(196,148,90,\n// 0.15)` halo on focus, radius 12) is the canonical Jetfly input and\n// MUST NOT be duplicated elsewhere.\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useEffect,useState}from\"react\";const SIZE={md:{height:48,padX:18},lg:{height:56,padX:20}};const D={borderDefault:\"#DDDDD7\",borderFocus:\"#C4945A\",borderError:\"#B83228\",haloFocus:\"rgba(196,148,90,0.15)\",haloError:\"rgba(184,50,40,0.12)\",inkPrimary:\"#1A1A17\",inkPlaceholder:\"#C4C4BC\",inkMuted:\"#7A7A72\",labelInk:\"#7A7A72\",bg:\"#FFFFFF\",copperDeep:\"rgb(173, 126, 71)\"};function useSalesTokens(){/* SSR-safe: return `{}` on both server render AND first client\n       render (hydration) so the initial DOM matches. Actual tokens are\n       written via useEffect after mount, triggering a normal update. */const[tokens,setTokens]=useState({});useEffect(()=>{if(typeof window===\"undefined\")return;const store=window.__jetflySales;if(!store)return;const read=()=>setTokens(store.state?.tokens??{});read();const unsub=store.subscribe(read);return()=>unsub?.();},[]);return tokens;}function IconSearch({color}){return /*#__PURE__*/_jsxs(\"svg\",{width:20,height:20,viewBox:\"0 0 24 24\",fill:\"none\",stroke:color,strokeWidth:\"1.8\",strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{display:\"block\",flexShrink:0},children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"11\",cy:\"11\",r:\"7\"}),/*#__PURE__*/_jsx(\"path\",{d:\"m20 20-3.5-3.5\"})]});}function IconMail({color}){return /*#__PURE__*/_jsxs(\"svg\",{width:20,height:20,viewBox:\"0 0 24 24\",fill:\"none\",stroke:color,strokeWidth:\"1.8\",strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{display:\"block\",flexShrink:0},children:[/*#__PURE__*/_jsx(\"rect\",{x:\"3\",y:\"5\",width:\"18\",height:\"14\",rx:\"2\"}),/*#__PURE__*/_jsx(\"path\",{d:\"m3 7 9 6 9-6\"})]});}function IconEye({open,color}){return open?/*#__PURE__*/_jsxs(\"svg\",{width:18,height:18,viewBox:\"0 0 24 24\",fill:\"none\",stroke:color,strokeWidth:1.6,strokeLinecap:\"round\",strokeLinejoin:\"round\",children:[/*#__PURE__*/_jsx(\"path\",{d:\"M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7S2 12 2 12z\"}),/*#__PURE__*/_jsx(\"circle\",{cx:\"12\",cy:\"12\",r:\"3\"})]}):/*#__PURE__*/_jsxs(\"svg\",{width:18,height:18,viewBox:\"0 0 24 24\",fill:\"none\",stroke:color,strokeWidth:1.6,strokeLinecap:\"round\",strokeLinejoin:\"round\",children:[/*#__PURE__*/_jsx(\"path\",{d:\"M9.9 4.24A9.12 9.12 0 0 1 12 4c6.5 0 10 7 10 7a17.83 17.83 0 0 1-3.06 3.94\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M6.61 6.61A17.5 17.5 0 0 0 2 12s3.5 7 10 7a9.12 9.12 0 0 0 5.09-1.55\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M14.12 14.12A3 3 0 1 1 9.88 9.88\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"2\",y1:\"2\",x2:\"22\",y2:\"22\"})]});}export default function InputUi(props){const{value,placeholder,type,forceState,width,fullWidth,errorMessage,iconLeft,onChange,label,hint,error,required,disabled}=props;const tokens=useSalesTokens();const bg=tokens.bgCard??D.bg;const borderDefault=tokens.borderSoft??D.borderDefault;const borderFocus=tokens.copper500??D.borderFocus;const ink=tokens.inkPrimary??D.inkPrimary;const inkPlaceholder=tokens.inkSubtle??D.inkPlaceholder;const inkMuted=tokens.inkMuted??D.inkMuted;const labelInk=tokens.inkMuted??D.labelInk;const copperDeep=tokens.copper600??D.copperDeep;const[internal,setInternal]=useState(value);const[focus,setFocus]=useState(false);const[revealPw,setRevealPw]=useState(false);useEffect(()=>setInternal(value),[value]);const isPasswordType=type===\"password\";const showPwToggle=isPasswordType&&props.passwordToggle!==false;const effectiveType=isPasswordType&&revealPw?\"text\":type;const propError=!!error;const isError=forceState===\"error\"||propError;const isFocus=forceState===\"focus\"||forceState===\"auto\"&&focus;const displayValue=forceState===\"error\"?errorMessage:forceState===\"focus\"?\"Value entered\":internal;const borderColor=isError?D.borderError:isFocus?borderFocus:borderDefault;const borderWidth=isError||isFocus?\"1.5px\":\"1px\";const halo=isError?D.haloError:D.haloFocus;const textColor=isError?D.borderError:isFocus||internal?ink:inkPlaceholder;const iconColor=isError?D.borderError:isFocus||internal?inkMuted:inkPlaceholder;const hasChrome=!!(label||hint||error);const inputRow=/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:iconLeft!==\"none\"?10:isFocus?10:0,height:(SIZE[props.size]||SIZE.md).height,padding:`0 ${(SIZE[props.size]||SIZE.md).padX}px`,background:bg,border:`${borderWidth} solid ${borderColor}`,borderRadius:12,width:fullWidth?\"100%\":width,boxSizing:\"border-box\",boxShadow:isFocus||isError?`0 0 0 4px ${halo}`:\"none\",transition:\"border-color .2s ease, box-shadow .2s ease, gap .2s ease\",fontFamily:\"'Hanken Grotesk', sans-serif\",opacity:disabled?.55:1},children:[iconLeft===\"search\"&&/*#__PURE__*/_jsx(IconSearch,{color:iconColor}),iconLeft===\"mail\"&&/*#__PURE__*/_jsx(IconMail,{color:iconColor}),props.prefix&&/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:\"inherit\",fontSize:15,lineHeight:\"22px\",fontWeight:500,color:internal?ink:inkPlaceholder,flexShrink:0,userSelect:\"none\"},children:props.prefix}),/*#__PURE__*/_jsx(\"input\",{value:forceState!==\"auto\"?displayValue:internal,disabled:disabled,inputMode:props.digitsOnly?\"numeric\":undefined,onChange:e=>{if(forceState!==\"auto\")return;let next=e.target.value;if(props.digitsOnly){next=String(next).replace(/[^\\d]/g,\"\");}setInternal(next);onChange?.(next);},onFocus:()=>setFocus(true),onBlur:()=>setFocus(false),placeholder:placeholder,type:effectiveType,readOnly:forceState!==\"auto\",style:{flex:1,minWidth:0,border:\"none\",outline:\"none\",background:\"transparent\",color:textColor,fontSize:15,lineHeight:\"22px\",fontWeight:400,fontFamily:\"inherit\",padding:0,caretColor:borderFocus}}),props.suffix&&/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:\"inherit\",fontSize:15,lineHeight:\"22px\",fontWeight:500,color:internal?ink:inkPlaceholder,flexShrink:0,userSelect:\"none\"},children:props.suffix}),showPwToggle&&/*#__PURE__*/_jsx(\"button\",{type:\"button\",\"aria-label\":revealPw?\"Hide password\":\"Show password\",onClick:()=>setRevealPw(v=>!v),style:{all:\"unset\",display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",width:32,height:32,borderRadius:8,cursor:\"pointer\",color:iconColor,flexShrink:0},children:/*#__PURE__*/_jsx(IconEye,{open:revealPw,color:iconColor})})]});if(!hasChrome)return inputRow;return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:8,width:fullWidth?\"100%\":width,fontFamily:\"'Hanken Grotesk', sans-serif\",boxSizing:\"border-box\"},children:[label&&/*#__PURE__*/_jsxs(\"span\",{style:{fontSize:13,fontWeight:500,color:labelInk,lineHeight:1.2},children:[label,required&&/*#__PURE__*/_jsx(\"span\",{style:{color:copperDeep,marginLeft:4},children:\"*\"})]}),inputRow,(hint||error)&&/*#__PURE__*/_jsx(\"span\",{style:{fontSize:12,lineHeight:1.3,color:propError?D.borderError:inkMuted},children:propError?error:hint})]});}InputUi.displayName=\"Sales / UI / Input\";addPropertyControls(InputUi,{label:{type:ControlType.String,title:\"Label\",defaultValue:\"\",description:\"Leave empty for a bare input (no label / hint chrome).\"},value:{type:ControlType.String,title:\"Value\",defaultValue:\"\"},placeholder:{type:ControlType.String,title:\"Placeholder\",defaultValue:\"Placeholder\"},type:{type:ControlType.Enum,title:\"Type\",options:[\"text\",\"email\",\"password\",\"tel\",\"url\",\"number\"],optionTitles:[\"Text\",\"Email\",\"Password\",\"Tel\",\"URL\",\"Number\"],defaultValue:\"text\"},iconLeft:{type:ControlType.Enum,title:\"Icon left\",options:[\"none\",\"search\",\"mail\"],optionTitles:[\"None\",\"Search\",\"Mail\"],defaultValue:\"none\"},required:{type:ControlType.Boolean,title:\"Required\",defaultValue:false,hidden:p=>!p.label},disabled:{type:ControlType.Boolean,title:\"Disabled\",defaultValue:false},hint:{type:ControlType.String,title:\"Hint\",defaultValue:\"\",hidden:p=>!p.label},error:{type:ControlType.String,title:\"Error\",defaultValue:\"\"},forceState:{type:ControlType.Enum,title:\"State\",options:[\"auto\",\"default\",\"focus\",\"error\"],optionTitles:[\"Auto\",\"Default\",\"Focus\",\"Error\"],defaultValue:\"auto\",description:\"Auto = real interactive. Others = visual showcase.\"},errorMessage:{type:ControlType.String,title:\"Error msg (showcase)\",defaultValue:\"Invalid value\",hidden:p=>p.forceState!==\"error\"},fullWidth:{type:ControlType.Boolean,title:\"Full width\",defaultValue:true},width:{type:ControlType.Number,title:\"Width\",min:120,max:800,step:4,defaultValue:320,hidden:props=>props.fullWidth},size:{type:ControlType.Enum,title:\"Size\",options:[\"md\",\"lg\"],optionTitles:[\"Medium (48px)\",\"Large (56px)\"],defaultValue:\"md\",displaySegmentedControl:true},prefix:{type:ControlType.String,title:\"Prefix\",defaultValue:\"\",description:\"Unit shown before the value inside the input row. Ex: €\"},suffix:{type:ControlType.String,title:\"Suffix\",defaultValue:\"\",description:\"Unit shown after the value. Ex: %, y, kg.\"},digitsOnly:{type:ControlType.Boolean,title:\"Digits only\",defaultValue:false,description:\"Strip anything that isn't a digit before firing onChange.\"},passwordToggle:{type:ControlType.Boolean,title:\"Pw reveal\",defaultValue:true,description:\"Show eye toggle when type=password.\",hidden:p=>p.type!==\"password\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"InputUi\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./InputUi.map","/*\n * InputUi\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/nmcokL05CkHSXQZIHrsc/kobhrvhL3OFeyOq2QwpS/InputUi.js\"\nexport { default } from \"https://framerusercontent.com/modules/nmcokL05CkHSXQZIHrsc/kobhrvhL3OFeyOq2QwpS/InputUi.js\"\n","// Sales/SearchHero.tsx\n// Eyebrow + Title + Search input + primary CTA.\n// Composed on Sales/UI primitives: <InputUi>, <BtnPrimary>.\n//\n// Responsive:\n// - Desktop+Tablet (container >= mobileBreakpoint): horizontal row [input + Create new offer button].\n// - Mobile only (container < mobileBreakpoint, default 810): input with search icon\n//   prefix, and the \"Create new offer\" CTA as a fixed bottom bar (sticky in canvas,\n//   portaled fixed in preview/published). The bar NEVER shows on tablet/desktop.\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useEffect,useRef,useState}from\"react\";import{createPortal}from\"react-dom\";import BtnPrimary from\"https://framer.com/m/BtnPrimary-VTTRQx.js\";import InputUi from\"https://framer.com/m/InputUi-KSW5wZ.js\";const jetflyDebug=(...args)=>{if(typeof window!==\"undefined\"&&window.__JETFLY_DEBUG){console.log(...args);}};const D={bgCard:\"rgb(255, 255, 255)\",borderSoft:\"rgb(239, 239, 235)\",inkPrimary:\"rgb(26, 26, 23)\",copper500:\"rgb(196, 148, 90)\",titleFont:{fontFamily:\"Begum Sans, 'Hanken Grotesk', sans-serif\",fontSize:36,fontWeight:500},eyebrowFont:{fontFamily:\"Hanken Grotesk, sans-serif\",fontSize:12,fontWeight:600}};function useSalesStore(){/* SSR-safe: null on both server + first client render (hydration). */const[store,setStore]=useState(null);useEffect(()=>{if(typeof window===\"undefined\")return;let unsub;const sub=()=>{const s=window.__jetflySales;if(s){setStore(s);unsub=s.subscribe(()=>setStore(s));return true;}return false;};if(sub())return()=>unsub?.();const id=window.setInterval(()=>{if(sub())window.clearInterval(id);},200);return()=>{window.clearInterval(id);unsub?.();};},[]);return store;}function hasFontOverride(font){return!!font&&typeof font===\"object\"&&Object.keys(font).length>0;}function BottomBar({children,bgCard,borderSoft,usePortal}){const[mounted,setMounted]=useState(false);useEffect(()=>{setMounted(true);},[]);const bar=/*#__PURE__*/_jsx(\"div\",{style:{position:usePortal?\"fixed\":\"sticky\",left:0,right:0,bottom:0,background:bgCard,borderTop:`1px solid ${borderSoft}`,padding:\"16px 16px calc(16px + env(safe-area-inset-bottom))\",zIndex:usePortal?2147483645:1,display:\"flex\",justifyContent:\"center\",boxSizing:\"border-box\",marginTop:16},children:children});if(!usePortal)return bar;if(!mounted||typeof document===\"undefined\")return null;return /*#__PURE__*/createPortal(bar,document.body);}export default function SearchHero(props){const store=useSalesStore();const t=store?.state?.tokens??{};const bgCard=t.bgCard??D.bgCard;const borderSoft=t.borderSoft??D.borderSoft;const inkPrimary=t.inkPrimary??D.inkPrimary;const copper500=t.copper500??D.copper500;const titleFont=hasFontOverride(props.titleFont)?props.titleFont:t.titleFont??D.titleFont;const eyebrowFont=t.eyebrowFont??D.eyebrowFont;const[query,setQuery]=useState(\"\");const[isNavigating,setIsNavigating]=useState(false);const rootRef=useRef(null);const[viewportWidth,setViewportWidth]=useState(typeof window===\"undefined\"?1200:window.innerWidth);useEffect(()=>{if(typeof window===\"undefined\")return;let raf=0;const update=()=>{if(raf)return;raf=window.requestAnimationFrame(()=>{raf=0;setViewportWidth(window.innerWidth);});};update();window.addEventListener(\"resize\",update,{passive:true});return()=>{window.removeEventListener(\"resize\",update);if(raf)window.cancelAnimationFrame(raf);};},[]);useEffect(()=>{if(typeof window===\"undefined\")return;const tm=setTimeout(()=>{window.dispatchEvent(new CustomEvent(\"jetfly:customer-query-change\",{detail:{query}}));},320);return()=>clearTimeout(tm);},[query]);useEffect(()=>{if(typeof window===\"undefined\")return;const onClear=()=>setQuery(\"\");window.addEventListener(\"jetfly:customer-clear-search\",onClear);return()=>window.removeEventListener(\"jetfly:customer-clear-search\",onClear);},[]);const isMobile=viewportWidth<(props.mobileBreakpoint||540);const isCanvas=RenderTarget.current()===RenderTarget.canvas;const root={width:\"100%\",display:\"flex\",flexDirection:\"column\",gap:18,boxSizing:\"border-box\",fontFamily:\"'Hanken Grotesk', sans-serif\"};const titleText=isMobile&&props.titleMobile?props.titleMobile:props.title;const titleSize=isMobile?28:36;const subtitleText=isMobile&&props.subtitleMobile?props.subtitleMobile:props.subtitle;const placeholderText=isMobile&&props.placeholderMobile?props.placeholderMobile:props.placeholder;const searchRow=isMobile?{display:\"flex\",alignItems:\"center\",gap:0,background:\"transparent\",border:\"none\",borderRadius:0,padding:0}:{display:\"flex\",alignItems:\"center\",gap:12,padding:14,background:bgCard,border:`1px solid ${borderSoft}`,borderRadius:14};const onCreatePerson=()=>{if(isNavigating)return;setIsNavigating(true);if(store){store.setField?.(\"step1_customer.mode\",\"new\");store.setField?.(\"step1_customer.customerId\",null);store.setProposalField?.(\"customer_id\",null);}// Same destination as the \"Create New Person\" button of the\n// \"Search to load customers\" box (Sales/CustomerCardList).\njetflyDebug(\"[JETFLY SearchHero] onCreatePerson → /sales/contacts?mode=new\");if(typeof window!==\"undefined\"){window.location.href=\"/sales/contacts?mode=new\";}};return /*#__PURE__*/_jsxs(\"div\",{ref:rootRef,style:root,children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:6},children:[/*#__PURE__*/_jsx(\"span\",{style:{...eyebrowFont??{},color:copper500,textTransform:\"uppercase\",letterSpacing:\"0.22em\",fontSize:12,fontWeight:600},children:props.eyebrow}),/*#__PURE__*/_jsx(\"h1\",{style:{color:inkPrimary,lineHeight:1.08,letterSpacing:\"-0.01em\",margin:0,fontWeight:500,...titleFont??{},fontSize:titleSize},children:titleText}),!props.v2Search&&subtitleText&&/*#__PURE__*/_jsx(\"p\",{style:{color:t.inkMuted??\"rgb(122, 122, 114)\",fontFamily:\"'Hanken Grotesk', sans-serif\",fontSize:isMobile?14:15,lineHeight:1.45,margin:0,fontWeight:400,whiteSpace:isMobile?\"normal\":\"nowrap\",...props.subtitleFont??{}},children:subtitleText})]}),/*#__PURE__*/_jsxs(\"div\",{style:searchRow,children:[/*#__PURE__*/_jsx(\"div\",{style:{flex:1,minWidth:0},children:/*#__PURE__*/_jsx(InputUi,{value:query,placeholder:placeholderText,type:\"text\",iconLeft:isMobile?\"search\":\"none\",onChange:v=>setQuery(v),forceState:\"auto\",fullWidth:true,label:\"\",hint:\"\",error:\"\",required:false,disabled:false,errorMessage:\"\",width:320,passwordToggle:true,size:\"lg\"})}),!isMobile&&/*#__PURE__*/_jsx(BtnPrimary,{label:\"Create New Person\",size:\"lg\",variant:\"filled\",arrow:\"right\",disabled:false,href:\"\",fullWidth:false,font:null,strokeWidth:1.5,strokeColor:\"\",strokeColorHover:\"\",textColor:\"\",textColorHover:\"\",radius:12,onClick:onCreatePerson})]}),isMobile&&/*#__PURE__*/_jsx(BottomBar,{bgCard:bgCard,borderSoft:borderSoft,usePortal:!isCanvas,children:/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",maxWidth:600},children:/*#__PURE__*/_jsx(BtnPrimary,{label:\"Create New Person\",size:\"lg\",variant:\"filled\",arrow:\"right\",disabled:false,href:\"\",fullWidth:true,font:null,strokeWidth:1.5,strokeColor:\"\",strokeColorHover:\"\",textColor:\"\",textColorHover:\"\",radius:12,onClick:onCreatePerson})})})]});}SearchHero.displayName=\"Sales / Search Hero\";addPropertyControls(SearchHero,{eyebrow:{type:ControlType.String,title:\"Eyebrow\",defaultValue:\"STEP 1\"},title:{type:ControlType.String,title:\"Title (desktop)\",defaultValue:\"Select a customer or start a new deal\",displayTextArea:true},titleMobile:{type:ControlType.String,title:\"Title (mobile)\",defaultValue:\"Select a customer or start a deal\",displayTextArea:true,description:\"Shorter copy used when container width < mobile breakpoint.\"},subtitle:{type:ControlType.String,title:\"Subtitle (desktop)\",defaultValue:\"Search by name, company or email to reopen an existing deal — or create a new person to start from scratch.\",displayTextArea:true},subtitleMobile:{type:ControlType.String,title:\"Subtitle (mobile)\",defaultValue:\"Search to reopen a deal — or tap Create new person.\",displayTextArea:true},placeholder:{type:ControlType.String,title:\"Placeholder (desktop)\",defaultValue:\"Search by name, company or email…\"},placeholderMobile:{type:ControlType.String,title:\"Placeholder (mobile)\",defaultValue:\"Search…\",description:\"Shorter placeholder used when container width < mobile breakpoint.\"},titleFont:{type:ControlType.Font,title:\"Title font\",controls:\"extended\",defaultValue:{fontSize:36},description:\"Override the global title font. Pick Begum Sans Medium here for the Jetfly H1.\"},subtitleFont:{type:ControlType.Font,title:\"Subtitle font\",controls:\"extended\",defaultValue:{fontSize:15}},mobileBreakpoint:{type:ControlType.Number,title:\"Mobile bp\",defaultValue:540,min:360,max:1200,step:10,description:\"Viewport width (px) below which we switch to mobile layout + fixed bottom bar. Tablet (≥ 540) keeps the desktop inline button.\"},v2Search:{type:ControlType.Boolean,title:\"V2 Search mode\",defaultValue:false,description:\"Enables V2 home search layout: hides subtitle, enables ⌘K focus.\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"SearchHero\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./SearchHero.map","// Generated by Framer (d485f69)\nimport{LazyValue}from\"framer\";const valuesByLocaleId={DX3fwShy3:new LazyValue(()=>import(\"./sJRZfMvQQ-3.js\")),jX_QcaZe7:new LazyValue(()=>import(\"./sJRZfMvQQ-1.js\")),NNchHHCh7:new LazyValue(()=>import(\"./sJRZfMvQQ-5.js\")),NsI4FdG6z:new LazyValue(()=>import(\"./sJRZfMvQQ-4.js\")),Wv8_XumxS:new LazyValue(()=>import(\"./sJRZfMvQQ-0.js\")),z_jSmpdQm:new LazyValue(()=>import(\"./sJRZfMvQQ-2.js\"))};export default function getLocalizedValue(key,locale){while(locale){const values=valuesByLocaleId[locale.id];if(values&&values.status===\"fulfilled\"){const value=values.read()[key];if(value)return value;}locale=locale.fallback;}}function preload(locale){const promises=[];while(locale){const values=valuesByLocaleId[locale.id];if(values){const promise=values.preload();if(promise)promises.push(promise);}locale=locale.fallback;}if(promises.length>0)return Promise.all(promises);}export function usePreloadLocalizedValues(locale){const preloadPromise=preload(locale);if(preloadPromise)throw preloadPromise;}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePreloadLocalizedValues\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (d485f69)\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addFonts,ChildrenCanSuspend,ComponentViewportProvider,Container,cx,GeneratedComponentContext,getFonts,getFontsFromSharedStyle,PathVariablesContext,PropertyOverrides,queryCache,RichText,runTasksWithYield,useComponentViewport,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLoadMorePaginatedQuery,useLocaleInfo,useMetadata,useQueryData,withCSS,withOptimizedAppearEffect}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import SalesCustomerCardList from\"#framer/local/codeFile/ePGCqSB/CustomerCardList.js\";import SalesGlobalCustomerSearchDialog from\"#framer/local/codeFile/GzJME2O/GlobalCustomerSearchDialog.js\";import SalesHeader from\"#framer/local/codeFile/QlHNf5Y/Header.js\";import SalesProvider from\"#framer/local/codeFile/qQnBvUL/SalesProvider.js\";import SalesSearchHero from\"#framer/local/codeFile/HXiDRUq/SearchHero.js\";import SalesSidebarV2 from\"#framer/local/codeFile/Zd1hE70/SidebarV2.js\";import JetflySalesUsers from\"#framer/local/collection/fBq13NO5P/fBq13NO5P.js\";import*as sharedStyle from\"#framer/local/css/jqjEMEZIa/jqjEMEZIa.js\";import getLocalizedValue,{usePreloadLocalizedValues}from\"#framer/local/localization/sJRZfMvQQ/sJRZfMvQQ.js\";import metadataProvider from\"#framer/local/webPageMetadata/sJRZfMvQQ/sJRZfMvQQ.js\";const SalesProviderFonts=getFonts(SalesProvider);const SalesHeaderFonts=getFonts(SalesHeader);const SalesSidebarV2Fonts=getFonts(SalesSidebarV2);const SalesSearchHeroFonts=getFonts(SalesSearchHero);const ContainerWithOptimizedAppearEffect=withOptimizedAppearEffect(Container);const SalesCustomerCardListFonts=getFonts(SalesCustomerCardList);const SalesGlobalCustomerSearchDialogFonts=getFonts(SalesGlobalCustomerSearchDialog);const breakpoints={abC2MaCIH:\"(max-width: 809.98px)\",DGQpxGDlw:\"(min-width: 1440px)\",fDCX0UJWk:\"(min-width: 810px) and (max-width: 1439.98px)\"};const isBrowser=()=>typeof document!==\"undefined\";export const queryParamNames=[];const serializationHash=\"framer-8wJVk\";const variantClassNames={abC2MaCIH:\"framer-v-1otqolo\",DGQpxGDlw:\"framer-v-tb8a6p\",fDCX0UJWk:\"framer-v-1f1wrzv\"};const KVHeetK7qnfIHa3xXO=undefined;const y_qWEXL5RnfIHa3xXO=undefined;const GoOOcQyv3nfIHa3xXO=undefined;const cQ0ewaGuLnfIHa3xXO=undefined;const idnfIHa3xXO=undefined;const getRootLayoutProp=(hasLayoutTemplate,hasInheritedFlowEffect,fallback)=>{if(!hasLayoutTemplate)return fallback;return hasInheritedFlowEffect?\"position\":fallback;};const query=()=>({from:{alias:\"nfIHa3xXO\",data:JetflySalesUsers,type:\"Collection\"},limit:{type:\"LiteralValue\",value:100},select:[{collection:\"nfIHa3xXO\",name:\"KVHeetK7q\",type:\"Identifier\"},{collection:\"nfIHa3xXO\",name:\"y_qWEXL5R\",type:\"Identifier\"},{collection:\"nfIHa3xXO\",name:\"GoOOcQyv3\",type:\"Identifier\"},{collection:\"nfIHa3xXO\",name:\"cQ0ewaGuL\",type:\"Identifier\"},{collection:\"nfIHa3xXO\",name:\"id\",type:\"Identifier\"}],where:{left:{collection:\"nfIHa3xXO\",name:\"aZZ7hPbDN\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:true},type:\"BinaryOperation\"}});const QueryData=({query,pageSize,children})=>{const{paginatedQuery,paginationInfo,loadMore}=useLoadMorePaginatedQuery(query,pageSize,\"nfIHa3xXO\");const data=useQueryData(paginatedQuery);return children(data,paginationInfo,loadMore);};const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const transition1={bounce:.2,delay:0,duration:1,type:\"spring\"};const animation={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition1,x:0,y:0};const animation1={opacity:.001,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:20};const humanReadableVariantMap={Desktop:\"DGQpxGDlw\",Phone:\"abC2MaCIH\",Tablet:\"fDCX0UJWk\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"DGQpxGDlw\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const metadata=React.useMemo(()=>metadataProvider({},activeLocale),[activeLocale]);useMetadata(metadata);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const sharedStyleClassNames=[sharedStyle.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const hasLayoutTemplate=React.useContext(GeneratedComponentContext)?.isLayoutTemplate;const hasInheritedFlowEffect=Boolean(React.useContext(MotionConfigContext)?.transition?.layout);const motionLayout=getRootLayoutProp(hasLayoutTemplate,hasInheritedFlowEffect);usePreloadLocalizedValues(activeLocale);const isDisplayed=()=>{if(!isBrowser())return true;if(baseVariant===\"abC2MaCIH\")return false;return true;};useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{activeVariantId:baseVariant,humanReadableVariantMap,primaryVariantId:\"DGQpxGDlw\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\"html body { background: var(--token-0f3c282d-9ce3-4dc1-b8ef-f41ca410db9a, rgb(248, 245, 238)); }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-tb8a6p\",className),ref:refBinding,style:{...style},children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-27jel1-container\",\"data-code-component-plugin-id\":\"mcp001\",isAuthoredByUser:true,layout:motionLayout,nodeId:\"ISHay8z0o\",scopeId:\"sJRZfMvQQ\",children:/*#__PURE__*/_jsx(SalesProvider,{autoCreate:false,bgCard:\"rgb(255, 255, 255)\",bgInk:\"rgb(26, 26, 23)\",bgPage:\"rgb(248, 245, 238)\",bodyFont:{fontFamily:'\"Hanken Grotesk\", \"Hanken Grotesk Placeholder\", sans-serif',fontSize:\"14px\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"0em\",lineHeight:\"1em\"},borderSoft:\"rgb(239, 239, 235)\",contactLabel:getLocalizedValue(\"v2\",activeLocale)??\"Contact Us\",copper500:\"rgb(196, 148, 90)\",copper600:\"rgb(173, 126, 71)\",copper700:\"rgb(142, 102, 56)\",devUserId:getLocalizedValue(\"v0\",activeLocale)??\"5aeff3d6-3dcb-462b-8393-7f471b455852\",eyebrowFont:{fontFamily:'\"Hanken Grotesk\", \"Hanken Grotesk Placeholder\", sans-serif',fontSize:\"11px\",fontStyle:\"normal\",fontWeight:600,letterSpacing:\"0em\",lineHeight:\"1em\"},height:\"100%\",id:\"ISHay8z0o\",inkMuted:\"rgb(122, 122, 114)\",inkPrimary:\"rgb(26, 26, 23)\",inkSubtle:\"rgb(137, 129, 126)\",languageLabel:getLocalizedValue(\"v3\",activeLocale)??\"EN\",layoutId:\"ISHay8z0o\",loginPath:getLocalizedValue(\"v1\",activeLocale)??\"/sales/login\",redBrand:\"rgb(159, 42, 34)\",requireAuth:true,salesAccessCMS:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-gsa1nq\",\"data-framer-name\":\"Sales Users Feed\",children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(QueryData,{pageSize:100,query:query(),children:(collection,paginationInfo,loadMore)=>{return /*#__PURE__*/_jsx(_Fragment,{children:collection?.map(({cQ0ewaGuL:cQ0ewaGuLnfIHa3xXO,GoOOcQyv3:GoOOcQyv3nfIHa3xXO,id:idnfIHa3xXO,KVHeetK7q:KVHeetK7qnfIHa3xXO,y_qWEXL5R:y_qWEXL5RnfIHa3xXO},index)=>{KVHeetK7qnfIHa3xXO??=\"\";y_qWEXL5RnfIHa3xXO??=\"\";GoOOcQyv3nfIHa3xXO??=true;cQ0ewaGuLnfIHa3xXO??=\"\";return /*#__PURE__*/_jsx(LayoutGroup,{id:`nfIHa3xXO-${idnfIHa3xXO}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{cQ0ewaGuL:cQ0ewaGuLnfIHa3xXO},children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-100lizl\",\"data-framer-name\":\"Item\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-1m8wzdb\",\"data-styles-preset\":\"jqjEMEZIa\",dir:\"auto\",style:{\"--framer-text-alignment\":\"start\"},children:\"Name\"})}),className:\"framer-1hvrs9b\",\"data-framer-name\":\"Name\",fonts:[\"Inter\"],text:KVHeetK7qnfIHa3xXO,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-1m8wzdb\",\"data-styles-preset\":\"jqjEMEZIa\",dir:\"auto\",style:{\"--framer-text-alignment\":\"start\"},children:\"Email\"})}),className:\"framer-lvmlkn\",\"data-framer-name\":\"Email\",fonts:[\"Inter\"],text:y_qWEXL5RnfIHa3xXO,verticalAlignment:\"top\",withExternalLayout:true}),GoOOcQyv3nfIHa3xXO!==false&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-3rek5g\",\"data-framer-name\":\"Is Admin\"})]})})},idnfIHa3xXO);})});}})})})],sand200:\"rgb(243, 235, 219)\",sand300:\"rgb(232, 220, 196)\",stepLabels:\"Search,Contact profile,Aircraft & routes,Overview,Offer release\",stepRoutes:\"/sales/search,/sales/contact,/sales/aircraft,/sales/overview,/sales/release\",success:\"rgb(62, 155, 95)\",titleFont:{},width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-18ytdlb-container\",\"data-code-component-plugin-id\":\"mcp001\",isAuthoredByUser:true,layout:motionLayout,layoutScroll:true,nodeId:\"EwvyaqZ2P\",scopeId:\"sJRZfMvQQ\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{abC2MaCIH:{radius:14}},children:/*#__PURE__*/_jsx(SalesHeader,{adminTag:false,breadcrumb:\"SEARCH\",defaultStep:1,height:\"100%\",id:\"EwvyaqZ2P\",layoutId:\"EwvyaqZ2P\",loginPath:getLocalizedValue(\"v1\",activeLocale)??\"/sales/login\",logoHeight:48,logoHeightMobile:32,mobileBreakpoint:1024,paddingLeft:6,paddingLeftMobile:6,paddingRight:18,paddingRightMobile:14,radius:0,style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1ozq15z\",\"data-framer-name\":\"Body\",layout:motionLayout,children:[isDisplayed()&&/*#__PURE__*/_jsx(\"div\",{className:\"framer-10mz5vj hidden-1otqolo\",\"data-framer-name\":\"Left\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-y04c3c-container\",\"data-code-component-plugin-id\":\"api\",isAuthoredByUser:true,nodeId:\"qa6byncTo\",scopeId:\"sJRZfMvQQ\",children:/*#__PURE__*/_jsx(SalesSidebarV2,{activeBg:\"rgb(250, 244, 237)\",activeIconBg:\"rgb(196, 148, 90)\",activeIconColor:\"rgb(255, 255, 255)\",activeLabelColor:\"var(--token-4214cb87-174a-4809-8608-02f64f930163, rgb(29, 29, 27))\",activeLabelFont:{fontFamily:'\"Hanken Grotesk\", \"Hanken Grotesk Placeholder\", sans-serif',fontSize:\"14px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"0em\",lineHeight:\"22px\"},activeNavItem:\"Search\",activePaddingB:4,activePaddingL:4,activePaddingR:4,activePaddingT:4,activeRadius:8,backLabel:\"\",backPath:\"\",canvasCustomerEmail:\"umut.sevinc@jetfly.com\",canvasCustomerName:\"Umut Sevinc\",canvasDealTitle:\"Umut Sevinc - 1/8 35h PC 12\",canvasProposalCount:3,collapsedWidth:72,customersPath:\"/sales/contacts\",dealsPath:\"/sales/deal\",height:\"100%\",iconBoxRadius:6,iconBoxSize:28,id:\"qa6byncTo\",inactiveLabelFont:{fontFamily:'\"Hanken Grotesk\", \"Hanken Grotesk Placeholder\", sans-serif',fontSize:\"14px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"0em\",lineHeight:\"22px\"},inactivePaddingB:4,inactivePaddingL:4,inactivePaddingR:4,inactivePaddingT:4,inactiveRadius:12,layoutId:\"qa6byncTo\",loginPath:\"/sales/login\",maxWidth:280,navGap:4,newContactPath:\"/sales/contacts?mode=new\",searchBarRadius:10,searchPath:\"/sales/search\",style:{height:\"100%\"},userEmailFont:{fontFamily:'\"Hanken Grotesk\", \"Hanken Grotesk Placeholder\", sans-serif',fontSize:\"11px\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"0.04em\",lineHeight:\"14px\"},userInfoGap:0,userNameFont:{fontFamily:'\"Hanken Grotesk\", \"Hanken Grotesk Placeholder\", sans-serif',fontSize:\"14px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"0em\",lineHeight:\"20px\"},variant:matchVariant(\"search\"),width:\"100%\"})})})}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1roaosi\",\"data-framer-name\":\"Right\",\"data-hide-scrollbars\":true,children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(ContainerWithOptimizedAppearEffect,{animate:animation,className:\"framer-wegb5n-container\",\"data-code-component-plugin-id\":\"mcp001\",\"data-framer-appear-id\":\"wegb5n\",initial:animation1,isAuthoredByUser:true,nodeId:\"cAhDGuCGr\",optimized:true,rendersWithMotion:true,scopeId:\"sJRZfMvQQ\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{abC2MaCIH:{titleFont:{fontFamily:'\"Begum Sans Medium\", \"Begum Sans Medium Placeholder\", sans-serif',fontSize:\"28px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"0em\",lineHeight:\"1.08em\"}},fDCX0UJWk:{mobileBreakpoint:810,titleFont:{fontFamily:'\"Begum Sans Medium\", \"Begum Sans Medium Placeholder\", sans-serif',fontSize:\"28px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"0em\",lineHeight:\"1.08em\"}}},children:/*#__PURE__*/_jsx(SalesSearchHero,{eyebrow:getLocalizedValue(\"v4\",activeLocale)??\"Jetlfy sales generator\",height:\"100%\",id:\"cAhDGuCGr\",layoutId:\"cAhDGuCGr\",mobileBreakpoint:540,placeholder:getLocalizedValue(\"v7\",activeLocale)??\"Search customer by name, company, email…\",placeholderMobile:getLocalizedValue(\"v8\",activeLocale)??\"Search…\",style:{width:\"100%\"},subtitle:\"Search by name, company or email to reopen an existing deal — or create a new person to start from scratch.\",subtitleFont:{},subtitleMobile:\"Search to reopen a deal — or tap Create new person.\",title:getLocalizedValue(\"v5\",activeLocale)??\"Search for a contact or a deal\",titleFont:{fontFamily:'\"Begum Sans Medium\", \"Begum Sans Medium Placeholder\", sans-serif',fontSize:\"36px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"0em\",lineHeight:\"1.08em\"},titleMobile:getLocalizedValue(\"v6\",activeLocale)??\"Search for a contact\",v2Search:true,width:\"100%\"})})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-194n39c-container\",\"data-code-component-plugin-id\":\"mcp001\",isAuthoredByUser:true,nodeId:\"HYFAdF9UG\",scopeId:\"sJRZfMvQQ\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{abC2MaCIH:{titleFont:{fontFamily:'\"Begum Sans Medium\", \"Begum Sans Medium Placeholder\", sans-serif',fontSize:\"18px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"-0.02em\",lineHeight:\"1em\"}},fDCX0UJWk:{titleFont:{fontFamily:'\"Begum Sans Medium\", \"Begum Sans Medium Placeholder\", sans-serif',fontSize:\"22px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"-0.02em\",lineHeight:\"1em\"}}},children:/*#__PURE__*/_jsx(SalesCustomerCardList,{addDealLabel:\"Add deal\",canvasDataMode:\"empty\",emptyClearLabel:\"Clear search\",emptyCreateLabel:\"Create new offer\",emptyHelper:\"Try a different name or company. You can also create a new offer if this is a fresh prospect.\",emptyHelperMobile:\"Try a different name or company.\",emptyTitle:\"We couldn’t find any match\",fadeDelayStep:60,fadeDuration:420,height:\"100%\",id:\"HYFAdF9UG\",layoutId:\"HYFAdF9UG\",mobileBreakpoint:540,openLabel:\"Open\",pageSize:25,resultsLabelTemplate:\"{n} results\",sortLabel:\"Sorted by recent\",style:{width:\"100%\"},titleFont:{fontFamily:'\"Begum Sans Medium\", \"Begum Sans Medium Placeholder\", sans-serif',fontSize:\"24px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"-0.02em\",lineHeight:\"1em\"},width:\"100%\"})})})})]})]}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-bojdmd-container\",\"data-code-component-plugin-id\":\"api\",isAuthoredByUser:true,layout:motionLayout,nodeId:\"rp4hHnGgs\",scopeId:\"sJRZfMvQQ\",children:/*#__PURE__*/_jsx(SalesGlobalCustomerSearchDialog,{height:\"100%\",id:\"rp4hHnGgs\",layoutId:\"rp4hHnGgs\",style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})]}),/*#__PURE__*/_jsx(\"div\",{id:\"overlay\"})]})});});const css=[\".framer-8wJVk.framer-r8ycql, .framer-8wJVk .framer-r8ycql { display: block; }\",\".framer-8wJVk.framer-tb8a6p { align-content: flex-start; align-items: flex-start; background-color: var(--token-0f3c282d-9ce3-4dc1-b8ef-f41ca410db9a, #f8f5ee); display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 1440px; }\",\".framer-8wJVk .framer-27jel1-container { bottom: 0px; flex: none; height: auto; position: absolute; right: 0px; width: auto; z-index: 0; }\",\".framer-8wJVk .framer-gsa1nq { align-content: flex-start; align-items: flex-start; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: min-content; }\",\".framer-8wJVk .framer-100lizl { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: flex-start; padding: 0px; position: relative; width: min-content; }\",\".framer-8wJVk .framer-1hvrs9b, .framer-8wJVk .framer-lvmlkn { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-8wJVk .framer-3rek5g { flex: none; height: 1px; position: relative; width: 1px; }\",\".framer-8wJVk .framer-18ytdlb-container { flex: none; height: 80px; left: calc(50.00000000000002% - 100% / 2); position: fixed; top: 0px; width: 100%; z-index: 6; }\",\".framer-8wJVk .framer-1ozq15z { align-content: flex-start; align-items: flex-start; background-color: rgba(0, 0, 0, 0); display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 20px; height: 100vh; justify-content: flex-start; padding: 0px; position: relative; width: 100%; }\",\".framer-8wJVk .framer-10mz5vj { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 100vh; justify-content: flex-start; overflow: var(--overflow-clip-fallback, clip); padding: 100px 0px 16px 16px; position: sticky; width: min-content; }\",\".framer-8wJVk .framer-y04c3c-container { flex: none; height: 100%; position: relative; width: auto; }\",\".framer-8wJVk .framer-1roaosi { align-content: flex-start; align-items: flex-start; background-color: rgba(0, 0, 0, 0); display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 18px; height: 100%; justify-content: flex-start; overflow: auto; padding: 110px 16px 16px 0px; position: relative; width: 1px; }\",\".framer-8wJVk .framer-wegb5n-container { flex: none; height: auto; position: relative; width: 100%; will-change: var(--framer-will-change-effect-override, transform); }\",\".framer-8wJVk .framer-194n39c-container { flex: none; height: auto; position: relative; width: 100%; }\",\".framer-8wJVk .framer-bojdmd-container { bottom: 0px; flex: none; height: 40px; left: calc(50.00000000000002% - 200px / 2); position: absolute; width: 200px; z-index: 0; }\",...sharedStyle.css,'.framer-8wJVk[data-hide-scrollbars=\"true\"]::-webkit-scrollbar, .framer-8wJVk [data-hide-scrollbars=\"true\"]::-webkit-scrollbar { width: 0px; height: 0px; }','.framer-8wJVk[data-hide-scrollbars=\"true\"]::-webkit-scrollbar-thumb, .framer-8wJVk [data-hide-scrollbars=\"true\"]::-webkit-scrollbar-thumb { background: transparent; }','.framer-8wJVk[data-hide-scrollbars=\"true\"], .framer-8wJVk [data-hide-scrollbars=\"true\"] { scrollbar-width: none; }',\"@media (min-width: 810px) and (max-width: 1439.98px) { .framer-8wJVk.framer-tb8a6p { width: 810px; }}\",\"@media (max-width: 809.98px) { .framer-8wJVk.framer-tb8a6p { width: 390px; } .framer-8wJVk .framer-18ytdlb-container { height: 56px; } .framer-8wJVk .framer-1ozq15z { flex-direction: column; height: min-content; } .framer-8wJVk .framer-1roaosi { flex: none; height: min-content; padding: 80px 16px 100px 16px; width: 100%; } .framer-8wJVk .framer-wegb5n-container { order: 0; } .framer-8wJVk .framer-194n39c-container { order: 1; }}\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 800\n * @framerIntrinsicWidth 1440\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"fDCX0UJWk\":{\"layout\":[\"fixed\",\"auto\"]},\"abC2MaCIH\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerAcceptsLayoutTemplate true\n * @framerScrollSections false\n * @framerResponsiveScreen true\n * @framerLayoutTemplateFlowEffect true\n */const FramersJRZfMvQQ=withCSS(Component,css,\"framer-8wJVk\");export default FramersJRZfMvQQ;FramersJRZfMvQQ.displayName=\"Sales / Customer\";FramersJRZfMvQQ.defaultProps={height:800,width:1440};addFonts(FramersJRZfMvQQ,[{explicitInter:true,fonts:[{cssFamilyName:\"Hanken Grotesk\",source:\"google\",style:\"normal\",uiFamilyName:\"Hanken Grotesk\",url:\"https://fonts.gstatic.com/s/hankengrotesk/v12/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_Ncs2Za5PpNzXhRKA.woff2\",weight:\"400\"},{cssFamilyName:\"Hanken Grotesk\",source:\"google\",style:\"normal\",uiFamilyName:\"Hanken Grotesk\",url:\"https://fonts.gstatic.com/s/hankengrotesk/v12/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcbWFa5PpNzXhRKA.woff2\",weight:\"600\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"},{cssFamilyName:\"Hanken Grotesk\",source:\"google\",style:\"normal\",uiFamilyName:\"Hanken Grotesk\",url:\"https://fonts.gstatic.com/s/hankengrotesk/v12/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcgWZa5PpNzXhRKA.woff2\",weight:\"500\"},{cssFamilyName:\"Begum Sans Medium\",source:\"custom\",style:\"normal\",uiFamilyName:\"Begum Sans\",url:\"https://framerusercontent.com/assets/vWR7GWx4KqajxwskmIF1feNXg4A.woff2\",weight:\"500\"}]},...SalesProviderFonts,...SalesHeaderFonts,...SalesSidebarV2Fonts,...SalesSearchHeroFonts,...SalesCustomerCardListFonts,...SalesGlobalCustomerSearchDialogFonts,...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});FramersJRZfMvQQ.loader={load:(props,context)=>{const locale=context.locale;const priority=context.priority;const queryCacheEntry=queryCache.get(query(),locale,priority);return runTasksWithYield([()=>queryCacheEntry.preload()],context);}};\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramersJRZfMvQQ\",\"slots\":[],\"annotations\":{\"framerColorSyntax\":\"true\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicHeight\":\"800\",\"framerResponsiveScreen\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerScrollSections\":\"false\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"fDCX0UJWk\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"abC2MaCIH\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerAcceptsLayoutTemplate\":\"true\",\"framerContractVersion\":\"1\",\"framerLayoutTemplateFlowEffect\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerIntrinsicWidth\":\"1440\",\"framerDisplayContentsDiv\":\"false\"}},\"queryParamNames\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"82BAO+N,SAAS,GAAU,CAAC,QAAM,CAAC,IAAM,EAAQ,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,OAAO,CAAI,GAAG,CAAC,CAAC,EAAQ,EAAW,GAAS,EAC9P,EAAG,EAAW,kBAAkB,mBAAyB,EAAG,EAAW,UAAU,kBAAwB,EAAO,EAAW,cAAc,wBAAwB,OAAoB,EAAM,OAAO,CAAC,aAAa,QAAQ,EAAQ,OAAO,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,IAAI,EAAE,QAAQ,UAAU,aAAa,IAAI,WAAW,EAAG,OAAO,aAAa,IAAS,MAAM,EAAG,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,cAAc,SAAS,WAAW,EAAE,WAAW,SAAS,WAAW,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,cAAc,GAAK,MAAM,CAAC,QAAQ,cAAc,IAAI,EAAE,WAAW,QAAQ,EAAE,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAgB,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,IAAI,WAAW,EAAE,EAAQ,EAAG,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,OAAO,CAAC,SAAS,CAAC,EAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,SAAwB,GAAS,CAAC,SAAO,SAAO,YAAU,OAAK,iBAAe,CAAC,IAAM,EAAI,GAAW,GAAc,EAAS,OAAO,CAAI,EAAE,EAAE,OAAoB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAU,OAAO,cAAc,MAAM,EAAU,OAAO,OAAO,cAAc,SAAS,WAAW,UAAU,IAAI,EAAE,QAAQ,YAAY,WAAW,QAAQ,OAAO,oBAAoB,aAAa,GAAG,WAAW,+BAA+B,UAAU,YAAY,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,SAAS,eAAe,GAAU,EAAc,gBAAgB,aAAa,IAAI,EAAE,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,WAAW,IAAI,WAAW,OAAO,cAAc,SAAS,MAAM,UAAU,WAAW,QAAQ,EAAE,SAAS,CAAM,CAAC,GAAG,GAAU,IAA6B,EAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,IAAI,CAAC,EAAE,SAAS,CAAC,GAAuB,EAAK,GAAU,CAAM,MAAI,CAAC,EAAE,CAAa,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,IAAI,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,IAAI,WAAW,EAAI,UAAU,aAAa,EAAI,IAAI,WAAW,CAAC,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,WAAW,IAAI,WAAW,OAAO,MAAM,UAAU,WAAW,QAAQ,EAAE,SAAS,CAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,qBADlnE,IAAoD,EAAO,GAAW,CAAC,MAAM,UAAU,UAAU,UAAU,gBAAgB,UAAU,QAAQ,UAAU,KAAK,SAAS,EAC88D,GAAS,YAAY,yBAAyB,EAAoB,GAAS,CAAC,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,UAAU,aAAa,eAAkB,EAAE,OAAO,CAAC,KAAK,EAAY,KAAK,MAAM,SAAS,QAAQ,CAAC,QAAQ,UAAU,gBAAgB,UAAU,MAAM,EAAE,aAAa,SAAS,EAAE,UAAU,CAAC,KAAK,EAAY,QAAQ,MAAM,aAAa,aAAa,GAAM,YAAY,qEAAqE,EAAE,KAAK,CAAC,KAAK,EAAY,OAAO,MAAM,OAAO,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,wEAAwE,CAAC,CAAC,wBCDtpF,KCNse,SAAS,GAAM,CAAC,OAAK,QAAM,OAAK,CAAC,OAAoB,EAAK,MAAM,CAAC,MAAM,EAAK,OAAO,EAAK,QAAQ,YAAY,KAAK,OAAO,OAAO,EAAM,YAAY,MAAM,cAAc,QAAQ,eAAe,QAAQ,SAAS,IAAM,QAAqB,EAAMA,EAAU,CAAC,SAAS,CAAc,EAAK,OAAO,CAAC,EAAE,UAAU,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,EAAe,EAAMA,EAAU,CAAC,SAAS,CAAc,EAAK,OAAO,CAAC,EAAE,YAAY,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,SAAwB,GAAQ,CAAC,QAAM,OAAK,UAAQ,WAAS,QAAM,UAAQ,OAAK,YAAU,OAAK,cAAY,cAAY,mBAAiB,YAAU,iBAAe,UAAQ,CAAC,GAAK,CAAC,EAAM,GAAUC,EAAS,EAAK,EAAQ,EAAEC,GAAK,GAAY,EAAU,IAAU,UAAgB,EAAE,EAAO,EAAE,EAAO,EAAE,OAAW,EAAO,EAAiB,EAAsB,GAAU,EAAG,EAAU,cAAc,UAAU,EAAa,UAAU,EAAmB,WAAmB,GAAW,EAAG,EAAM,UAAU,cAAc,EAAa,EAAM,UAAU,UAAU,EAAmB,EAAM,UAAU,YAAgB,EAAG,EAAM,UAAU,UAAU,EAAa,UAAU,EAAmB,eAAe,IAAM,EAAM,EAAS,EAAa,EAAM,GAAgB,GAAW,EAAa,GAAW,EAA4M,EAApE,GAAW,GAAY,GAAa,GAAS,EAAyC,GAAG,GAAa,IAAI,WAAnN,EAAM,GAAkB,GAAa,EAAmB,GAAa,IAAuK,OAAa,EAAK,GAAO,CAAC,EAAS,EAAE,KAAK,EAAE,EAAE,KAAW,EAAW,GAAO,CAAC,EAAS,EAAE,KAAK,EAAE,EAAE,KAA8K,OAAoB,EAAM,SAAS,CAAC,YAA9I,CAAI,IAAmB,GAAQ,EAAQ,EAAK,GAAa,IAAS,SAAY,EAAO,SAAS,KAAK,GAAK,EAA0D,iBAAiB,EAAS,EAAI,EAAE,iBAAiB,EAAS,EAAK,EAAW,WAAS,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,eAAe,SAAS,IAAnX,GAAO,CAAC,EAAS,EAAE,IAAI,EAAE,EAAE,IAA4V,QAAQ,GAAG,EAAK,KAAK,EAAE,KAAK,KAAK,EAAW,IAAI,aAAa,EAAE,SAAO,WAAW,EAAG,QAAM,OAAO,EAAS,cAAc,UAAU,WAAW,+BAA+B,SAAS,EAAE,SAAS,WAAW,EAAE,WAAW,cAAc,EAAE,cAAc,WAAW,EAAE,OAAO,GAAG,GAAM,CAAC,EAAE,MAAM,EAAU,OAAO,OAAO,QAAQ,EAAS,IAAI,EAAM,IAAI,EAAE,WAAW,wIAAwI,WAAW,SAAS,UAAU,YAAY,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,SAAS,CAAK,CAAC,EAAE,IAAQ,QAAqB,EAAK,GAAM,CAAC,KAAK,EAAE,MAAY,QAAM,IAAI,CAAK,CAAC,CAAC,CAAC,CAAC,CAAE,yBAArnG,IAAoD,IAA4B,EAAOA,GAAK,CAAC,GAAG,CAAC,KAAK,GAAG,KAAK,GAAG,OAAO,GAAG,IAAI,EAAE,SAAS,GAAG,WAAW,OAAO,cAAc,MAAM,OAAO,IAAI,MAAM,EAAE,EAAE,GAAG,CAAC,KAAK,GAAG,KAAK,GAAG,OAAO,GAAG,IAAI,EAAE,SAAS,GAAG,WAAW,OAAO,cAAc,MAAM,OAAO,IAAI,MAAM,EAAE,EAAE,GAAG,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,GAAG,IAAI,EAAE,SAAS,GAAG,WAAW,OAAO,cAAc,SAAS,OAAO,IAAI,MAAM,EAAE,EAAE,GAAG,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,WAAW,OAAO,cAAc,QAAQ,OAAO,IAAI,MAAM,EAAE,CAAC,EAA4mF,GAAQ,YAAY,wBAAwB,EAAoB,GAAQ,CAAC,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,eAAe,EAAE,KAAK,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,QAAQ,CAAC,KAAK,KAAK,KAAK,IAAI,EAAE,aAAa,CAAC,KAAK,KAAK,KAAK,IAAI,EAAE,aAAa,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAY,KAAK,MAAM,UAAU,QAAQ,CAAC,SAAS,SAAS,EAAE,aAAa,CAAC,SAAS,SAAS,EAAE,aAAa,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAY,KAAK,MAAM,QAAQ,QAAQ,CAAC,OAAO,QAAQ,UAAU,EAAE,aAAa,CAAC,OAAO,UAAU,aAAa,EAAE,aAAa,OAAO,EAAE,SAAS,CAAC,KAAK,EAAY,QAAQ,MAAM,WAAW,aAAa,EAAK,EAAE,KAAK,CAAC,KAAK,EAAY,OAAO,MAAM,OAAO,aAAa,EAAE,EAAE,UAAU,CAAC,KAAK,EAAY,QAAQ,MAAM,aAAa,aAAa,EAAK,EAAE,KAAK,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,SAAS,WAAW,gBAAgB,YAAY,EAAE,UAAU,CAAC,KAAK,EAAY,MAAM,MAAM,aAAa,aAAa,GAAG,YAAY,wCAAwC,EAAE,eAAe,CAAC,KAAK,EAAY,MAAM,MAAM,aAAa,aAAa,EAAE,EAAE,YAAY,CAAC,KAAK,EAAY,MAAM,MAAM,eAAe,aAAa,GAAG,YAAY,4FAA4F,EAAE,iBAAiB,CAAC,KAAK,EAAY,MAAM,MAAM,eAAe,aAAa,EAAE,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,IAAI,EAAE,IAAI,EAAE,KAAK,GAAG,aAAa,GAAG,EAAE,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,aAAa,EAAE,YAAY,iDAAiD,CAAC,CAAC,wBCM1lJ,KCM2oB,SAASC,IAAe,CAE5sB,GAAK,CAAC,EAAM,GAAUC,EAAS,IAAI,EAA2V,OAAzV,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,IAAI,EAAY,MAAQ,CAAC,IAAM,EAAE,EAAO,cAAgF,OAA/D,GAAG,EAAS,CAAC,EAAE,EAAM,EAAE,cAAc,EAAS,CAAC,CAAC,EAAS,IAAa,EAAM,EAAE,GAAG,EAAI,EAAE,UAAU,IAAQ,EAAE,IAAM,EAAG,EAAO,gBAAgB,CAAI,EAAI,GAAE,EAAO,cAAc,CAAE,CAAE,EAAE,GAAG,EAAE,UAAU,CAAC,EAAO,cAAc,CAAE,EAAE,IAAQ,CAAE,CAAE,EAAE,CAAC,CAAC,EAAS,CAAM,CAAC,SAAS,GAAe,EAAK,CAAC,GAAG,CAAC,EAAK,MAAM,CAAC,EAAE,GAAG,CAAC,IAAM,EAAO,KAAK,MAAM,CAAI,EAAqC,OAA/B,MAAM,QAAQ,CAAM,EAAkB,EAAO,OAAO,GAAG,GAAG,OAAO,EAAE,IAAK,QAAQ,EAApD,CAAC,CAAqD,MAAM,CAAC,MAAM,CAAC,CAAE,CAAC,CAGpmB,SAAS,GAAW,EAAK,CAAC,IAAM,EAAM,OAAO,GAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,OAAO,OAAO,EAA4F,OAAvF,EAAM,SAAS,EAAQ,IAAO,EAAM,SAAS,EAAS,EAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,EAAS,EAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,EAAE,EAAM,EAAM,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAE,CAAC,SAAS,GAAe,CAAC,OAAK,QAAM,QAAM,aAAW,MAAI,WAAS,aAAW,SAAO,UAAQ,WAAS,CAGzW,IAAM,EAAUC,EAAO,IAAI,EAAO,CAAC,EAAM,GAAUD,EAAS,EAAK,EAAO,CAAC,EAAI,GAAQA,EAAS,IAAI,EAAQ,MAAY,CAAC,IAAM,EAAG,EAAU,QAAQ,GAAG,CAAC,GAAW,IAAS,OAAY,OAAO,IAAM,EAAE,EAAG,sBAAsB,EAAQ,EAAW,EAAE,IAAI,GAGrN,EAAG,EAAO,WAAiB,EAAU,EAAE,KAAK,EAAE,MAAM,EAA2C,EAAU,EAAG,GAAO,IAAU,EAAiE,EAAO,CAAC,KAA1D,KAAK,IAAI,IAAU,KAAK,IAAI,EAAU,CAAS,CAAqB,EAAE,IAAI,EAAW,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,YAAU,CAAC,CAAE,EAAE,MAAc,CAAC,GAAG,CAAC,EAAM,OAAO,EAAQ,EAAE,IAAM,MAAa,EAAQ,EAA6F,OAA3F,EAAO,iBAAiB,SAAS,EAAS,EAAI,EAAE,EAAO,iBAAiB,SAAS,CAAQ,MAAY,CAAC,EAAO,oBAAoB,SAAS,EAAS,EAAI,EAAE,EAAO,oBAAoB,SAAS,CAAQ,CAAE,CAAE,EAAE,CAAC,CAAK,CAAC,EACvjB,IAAM,EAAQ,CAAC,OAAO,GAAM,EAAE,CAAC,CAAC,KAAK,EAG0K,OAHrK,GAAS,EAA6B,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAQ,EAAE,EAAE,SAAS,EAAE,KAAK,UAAU,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,cAAc,SAAS,cAAc,YAAY,MAAM,EAAW,WAAW,EAAE,WAAW,QAAQ,EAAE,SAAS,CAAK,CAAC,EAAe,EAAK,QAAQ,CAAC,SAAS;;;kBAGve,CAAC,EAAe,EAAK,OAAO,CAAC,cAAc,GAAK,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,aAAa,IAAI,WAAW,gEAAgE,eAAe,YAAY,UAAU,oCAAoC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAuB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAQ,EAAE,EAAE,SAAS,EAAE,KAAK,UAAU,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,cAAc,SAAS,cAAc,YAAY,MAAM,EAAW,WAAW,EAAE,WAAW,QAAQ,EAAE,SAAS,CAAK,CAAC,EAAe,EAAK,MAAM,CAAC,IAAI,EAAU,aAAa,EAAQ,YAAY,EAAK,iBAAiB,CAAC,GAAS,EAAS,EAAI,EAAE,iBAAiB,EAAS,EAAK,EAAE,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,aAAa,IAAI,WAAW,EAAQ,cAAc,UAAU,OAAO,EAAQ,gBAAgB,IAAW,wBAAwB,MAAM,EAAQ,cAAc,EAAI,QAAQ,cAAc,WAAW,SAAS,eAAe,SAAS,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,cAAc,SAAS,WAAW,OAAO,OAAO,UAAU,WAAW,EAAE,UAAU,YAAY,EAAE,SAAS,EAAQ,GAAG,GAAW,CAAI,CAAC,CAAC,EAAE,GAAO,GAAM,GAAK,OAAO,SAAW,KAA0B,EAA0B,EAAM,MAAM,CAAC,KAAK,SAAS,aAAa,EAAK,MAAM,CAAC,SAAS,QAAQ,KAAK,EAAI,KAAK,IAAI,EAAI,IAAI,UAAU,EAAI,WAAW,qBAAqB,yBAAyB,WAAW,EAAO,OAAO,aAAa,IAAa,aAAa,GAAG,UAAU,sEAAsE,QAAQ,GAAG,SAAS,IAAI,SAAS,IAAI,OAAO,WAAW,WAAW,+BAA+B,cAAc,OAAO,UAAU,8BAA8B,UAAU,YAAY,EAAE,SAAS,CAAc,EAAK,QAAQ,CAAC,SAAS;4EAC9uD,EAAI,WAAW,OAAO,oBAAoB;;0BAE5F,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,SAAS,IAAI,EAAE,EAAE,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,aAAa,IAAI,WAAW,UAAU,MAAM,EAAI,QAAQ,cAAc,WAAW,SAAS,eAAe,SAAS,SAAS,GAAG,WAAW,IAAI,cAAc,SAAS,WAAW,CAAC,EAAE,SAAS,GAAW,CAAI,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,SAAS,EAAE,KAAK,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAI,SAAS,GAAG,WAAW,IAAI,WAAW,SAAS,SAAS,SAAS,aAAa,UAAU,EAAE,SAAS,CAAI,CAAC,EAAE,GAAoB,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAS,SAAS,GAAG,WAAW,SAAS,SAAS,SAAS,aAAa,UAAU,EAAE,SAAS,CAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,IAAI,CAAC,CAAC,CAAC,CAAE,CAAC,SAAS,GAAQ,CAAC,QAAM,SAAO,IAAI,CAAC,OAAoB,EAAK,OAAO,CAAC,cAAc,GAAK,MAAM,CAAC,QAAQ,QAAQ,QAAM,SAAO,aAAa,EAAE,WAAW,gEAAgE,eAAe,YAAY,UAAU,oCAAoC,CAAC,CAAC,CAAE,CAAC,SAAS,EAAW,CAAC,QAAM,QAAM,aAAW,MAAI,UAAQ,WAAS,CAE3jC,MAF+jC,CAAC,GAAO,CAAC,GAAO,CAAC,EAAe,KAE3kC,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAQ,EAAE,EAAE,SAAS,EAAE,KAAK,OAAO,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,cAAc,SAAS,cAAc,YAAY,MAAM,EAAW,WAAW,EAAE,WAAW,SAAS,SAAS,SAAS,aAAa,UAAU,EAAE,SAAS,CAAK,CAAC,EAAE,GAAS,CAAC,EAAmB,EAAME,EAAU,CAAC,SAAS,CAAc,EAAK,QAAQ,CAAC,SAAS;;;sBAGlhB,CAAC,EAAe,EAAK,GAAQ,CAAC,MAAM,EAAQ,GAAG,GAAG,OAAO,EAAQ,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,+BAA+B,SAAS,EAAQ,GAAG,GAAG,WAAW,IAAI,WAAW,KAAK,MAAM,EAE7J,QAAQ,cAAc,gBAAgB,EAAE,gBAAgB,WAAW,SAAS,SAAS,aAAa,WAAW,UAAU,YAAY,EAAE,MAAM,EAAM,SAAS,GAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAE,CAOmnC,SAAwB,GAAW,EAAM,CAA6B,IAAM,EAAtBH,GAA4B,CAAC,EAAE,OAAO,QAAQ,CAAC,EAAQ,EAAO,CAAC,OAAO,EAAE,QAAQI,GAAE,OAAO,WAAW,EAAE,YAAYA,GAAE,WAAW,IAAI,EAAE,YAAYA,GAAE,WAAW,SAAS,EAAE,UAAU,qBAAqB,UAAU,EAAE,WAAWA,GAAE,UAAU,WAAW,EAAE,WAAWA,GAAE,UAAU,OAAO,EAAE,QAAQA,GAAE,MAAM,EAEvpD,EAAQF,EAAO,IAAI,EAAO,CAAC,EAAE,GAAMD,EAAS,IAAI,EAAE,MAAc,CAAC,GAAU,IAAS,QAAa,CAAC,EAAQ,QAAQ,OAAO,IAAM,EAAG,EAAQ,QAAc,EAAG,IAAI,eAAe,GAAS,CAAC,IAAI,IAAM,KAAK,EAAQ,EAAK,EAAE,YAAY,KAAK,CAAE,CAAC,EAAwD,OAAtD,EAAG,QAAQ,CAAE,EAAE,EAAK,EAAG,sBAAsB,CAAC,CAAC,KAAK,MAAY,EAAG,WAAW,CAAE,EAAE,CAAC,CAAC,EAAE,IAAM,EAAS,EAAE,GAAG,GAAG,EAAM,kBAAkB,KAE1V,EAAS,CAAC,GAAU,EAAE,GAAG,EAAE,IAAU,EAAM,GAAe,EAAM,SAAS,EAK1I,EAAU,EAAM,KAAK,GAAG,GAAG,aAAa,IAAM,GAAG,iBAAiB,EAAI,EAAQ,EAAO,IAAI,IAAU,EAAQ,EAAM,OAAO,GAAG,CAAC,IAAM,EAAK,GAAG,mBAAmB,KAAiC,GAA5B,OAAO,EAAE,iBAAiB,EAAuF,GAAG,EAA1E,GAAG,iBAAiB,IAAQ,IAAO,CAAC,GAAW,GAAG,eAAe,KAAe,MAAO,GAAM,IAAM,EAAI,GAAM,OAAO,GAAG,IAAI,EAAE,EAAkD,OAA7C,EAAO,IAAI,CAAG,EAAS,IAAM,EAAO,IAAI,CAAG,EAAS,GAAK,CAAC,EAAQ,EAAY,EAAQ,OAAuB,IAAc,EAAE,EAAM,iBAAmC,EAAM,eAAe,mBAAA,CAAoB,QAAQ,MAAM,OAAO,CAAW,CAAC,EAAE,IAAM,EAAS,EAAY,EAAE,EAAM,UAAU,OAAO,EAAM,eAAe,WAA0B,EAAY,GAAE,EAAM,SAEloB,IAAM,MAAmB,CAAC,EAAM,aAAa,EAAY,IAAS,QAAa,EAAO,cAAc,IAAI,YAAY,uBAAuB,CAAC,CAAG,EAClJ,OADmN,EAA8B,EAAM,MAAM,CAAC,IAAI,EAAQ,MAAM,CAAC,MAAM,OAAO,WAAW,EAAO,OAAO,OAAO,aAAa,EAAO,aAAa,aAAa,GAAG,QAAQ,GAAG,UAAU,aAAa,QAAQ,OAAO,cAAc,SAAS,IAAI,GAAG,WAAW,8BAA8B,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,GAAG,MAAM,MAAM,EAAE,SAAS,CAAc,EAAK,EAAW,CAAC,MAAM,EAAM,UAAU,MAAM,EAAM,UAAU,WAAW,EAAO,WAAW,IAAI,EAAO,GAAG,CAAC,EAAe,EAAK,EAAW,CAAC,MAAM,EAAM,UAAU,MAAM,EAAM,UAAU,WAAW,EAAO,WAAW,IAAI,EAAO,IAAI,QAAQ,EAAM,WAAW,CAAC,EAAe,EAAK,EAAW,CAAC,MAAM,EAAM,UAAU,MAAM,EAAM,UAAU,WAAW,EAAO,WAAW,IAAI,EAAO,GAAG,CAAC,EAAE,EAAM,WAAW,SAAsB,EAAK,GAAe,CAAC,MAAM,EAAM,UAAU,KAAK,EAAM,UAAU,MAAM,EAAM,UAAU,WAAW,EAAO,WAAW,IAAI,EAAO,IAAI,SAAS,EAAO,SAAS,WAAW,EAAO,WAAW,OAAO,EAAO,OAAO,QAAQ,EAAM,WAAW,CAAC,EAAe,EAAK,EAAW,CAAC,MAAM,EAAM,UAAU,MAAM,EAAM,UAAU,WAAW,EAAO,WAAW,IAAI,EAAO,IAAI,QAAQ,EAAM,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAM,EAAW,EAAQ,OAAO,GAAG,GAAG,SAAS,OAAO,GAAG,SAAS,MAAM,CAAC,CAAC,OAAO,OAAoB,EAAK,MAAM,CAAC,MAAM,CAAC,QAAQ,MAAM,EAAE,SAAsB,EAAM,SAAS,CAAC,KAAK,SAAS,QAAQ,GAAG,CAAC,EAAE,gBAAgB,EAAE,EAAe,CAAE,EAAE,MAAM,CAAC,IAAI,QAAQ,OAAO,UAAU,QAAQ,OAAO,cAAc,SAAS,IAAI,CAAC,EAAE,aAAa,GAAG,EAAW,OAAO,IAAa,EAAE,GAAG,MAAM,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,cAAc,SAAS,cAAc,YAAY,MAAM,EAAO,WAAW,WAAW,CAAC,EAAE,SAAS,OAAO,CAAC,EAAE,EAAM,YAAyB,EAAME,EAAU,CAAC,SAAS,CAAc,EAAK,QAAQ,CAAC,SAAS,yGAAyG,CAAC,EAAe,EAAK,GAAQ,CAAC,MAAM,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,WAAW,KAAK,MAAM,EAAO,GAAG,EAAE,SAAS,CAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,EAAA,CAAG,EAAe,EAAK,GAAQ,CAAC,MAAM,EAAS,KAAK,KAAK,QAAQ,SAAS,MAAM,OAAO,SAAS,GAAM,QAAQ,EAAe,KAAK,GAAG,UAAU,GAAK,KAAK,KAAK,YAAY,IAAI,YAAY,GAAG,iBAAiB,GAAG,UAAU,GAAG,eAAe,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,EACnmF,EAAM,MAAM,CAAC,IAAI,EAAQ,MAAM,CAAC,MAAM,OAAO,WAAW,EAAO,OAAO,OAAO,aAAa,EAAO,aAAa,aAAa,GAAG,QAAQ,YAAY,UAAU,aAAa,QAAQ,OAAO,cAAc,MAAM,WAAW,EAAS,UAAU,SAAS,SAAS,EAAS,OAAO,SAAS,OAAO,EAAS,GAAG,EAAE,IAAI,GAAG,WAAW,+BAA+B,WAAW,yBAAyB,SAAS,QAAQ,EAAE,SAAS,EAAwB,EAAQ,OAAO,GAAG,GAAG,SAAS,OAAO,GAAG,SAAS,MAAM,CAAC,CAAC,OAA2B,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,IAAI,EAAS,GAAG,GAAG,SAAS,SAAS,KAAK,EAAS,WAAW,QAAQ,UAAU,EAAS,OAAO,EAAE,SAAS,EAAE,WAAW,YAAY,EAAE,SAAS,CAAc,EAAK,EAAW,CAAC,MAAM,EAAM,UAAU,MAAM,EAAM,UAAU,WAAW,EAAO,WAAW,IAAI,EAAO,GAAG,CAAC,EAAe,EAAK,EAAW,CAAC,MAAM,EAAM,UAAU,MAAM,EAAM,UAAU,WAAW,EAAO,WAAW,IAAI,EAAO,IAAI,QAAQ,EAAM,WAAW,CAAC,EAAe,EAAK,EAAW,CAAC,MAAM,EAAM,UAAU,MAAM,EAAM,UAAU,WAAW,EAAO,WAAW,IAAI,EAAO,GAAG,CAAC,EAAe,EAAK,MAAM,CAAC,MAAM,CAAC,KAAK,QAAQ,SAAS,CAAC,EAAE,SAAS,EAAM,WAAW,SAAsB,EAAK,GAAe,CAAC,MAAM,EAAM,UAAU,KAAK,EAAM,UAAU,MAAM,EAAM,UAAU,WAAW,EAAO,WAAW,IAAI,EAAO,IAAI,SAAS,EAAO,SAAS,WAAW,EAAO,WAAW,OAAO,EAAO,OAAO,QAAQ,EAAM,WAAW,CAAC,EAAe,EAAK,EAAW,CAAC,MAAM,EAAM,UAAU,MAAM,EAAM,UAAU,WAAW,EAAO,WAAW,IAAI,EAAO,IAAI,QAAQ,EAAM,WAAW,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,KAAK,QAAQ,SAAS,EAAE,QAAQ,OAAO,cAAc,SAAS,IAAI,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,cAAc,SAAS,cAAc,YAAY,MAAM,EAAO,WAAW,WAAW,CAAC,EAAE,SAAS,OAAO,CAAC,EAAE,EAAM,YAAyB,EAAMA,EAAU,CAAC,SAAS,CAAc,EAAK,QAAQ,CAAC,SAAS,yGAAyG,CAAC,EAAe,EAAK,GAAQ,CAAC,MAAM,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAQ,SAAS,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,+BAA+B,SAAS,GAAG,MAAM,EAAO,IAAI,QAAQ,EAAE,EAAE,SAAS,GAAG,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,MAAM,EAAO,GAAG,EAAE,SAAS,EAAQ,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAoB,EAAK,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,SAAS,WAAW,EAAE,eAAe,UAAU,EAAE,SAAsB,EAAK,GAAQ,CAAC,MAAM,EAAS,KAAK,KAAK,QAAQ,SAAS,MAAM,OAAO,SAAS,GAAM,QAAQ,EAAe,KAAK,GAAG,UAAU,GAAM,KAAK,KAAK,YAAY,IAAI,YAAY,GAAG,iBAAiB,GAAG,UAAU,GAAG,eAAe,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,yBA5ClwF,IAAoD,IAA6C,IAAoC,KAA8D,KAA4D,EAA2PC,GAAE,CAAC,OAAO,qBAAqB,WAAW,qBAAqB,WAAW,kBAAkB,UAAU,qBAAqB,UAAU,oBAAoB,OAAO,oBAAoB,EA4CqlE,GAAW,YAAY,2BAA2B,EAAoB,GAAW,CAAC,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,SAAS,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,UAAU,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,SAAS,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,YAAY,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,OAAO,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,UAAU,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,OAAO,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,KAAK,EAAE,SAAS,CAAC,KAAK,EAAY,KAAK,MAAM,aAAa,QAAQ,CAAC,OAAO,QAAQ,EAAE,aAAa,CAAC,OAAO,mCAAmC,EAAE,aAAa,OAAO,wBAAwB,EAAI,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,GAAG,YAAY,+EAA+E,OAAO,GAAG,EAAE,WAAW,QAAQ,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,KAAK,UAAU,CAAC,CAAC,GAAG,KAAK,OAAO,SAAS,OAAO,SAAS,EAAE,CAAC,GAAG,KAAK,OAAO,SAAS,OAAO,eAAe,CAAC,CAAC,EAAE,gBAAgB,GAAK,YAAY,iGAAiG,EAAE,cAAc,CAAC,KAAK,EAAY,OAAO,MAAM,iBAAiB,aAAa,mBAAmB,YAAY,oCAAoC,EAAE,gBAAgB,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,gBAAgB,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,MAAM,EAAE,cAAc,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,UAAU,EAAE,SAAS,CAAC,KAAK,EAAY,KAAK,MAAM,YAAY,QAAQ,CAAC,OAAO,QAAQ,UAAU,EAAE,aAAa,QAAQ,wBAAwB,EAAI,EAAE,iBAAiB,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,IAAI,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE,SAAS,CAAC,KAAK,EAAY,KAAK,MAAM,YAAY,SAAS,WAAW,gBAAgB,YAAY,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,EAAE,KAAK,IAAI,CAAC,CAAC,wBClDp5J,KCYitC,SAAwB,GAAa,EAAM,CAE3wC,OAAoB,EAAK,GAAW,CAAC,UAAU,UAAU,UAAU,EAAM,UAAU,GAAG,UAAU,UAAU,UAAU,EAAM,SAAS,GAAG,YAAY,CAAC,CAAC,EAAM,eAAe,UAAU,QAAQ,UAAU,EAAM,OAAO,GAAG,UAAU,QAAQ,UAAU,EAAM,OAAO,GAAG,SAAS,SAAS,UAAU,EAAM,YAAY,GAAG,YAAY,CAAC,CAAC,EAAM,aAAa,YAAY,CAAC,CAAC,EAAM,YAAY,UAAU,EAAM,WAAW,KAAK,cAAc,mBAAmB,gBAAgB,iBAAiB,SAAS,EAAM,WAAW,OAAO,cAAc,EAAM,WAAW,OAAO,SAAS,QAAQ,iBAAiB,EAAM,kBAAkB,IAAI,SAAS,EAAM,SAAS,SAAS,EAAM,UAAU,GAAG,eAFkpB,CAAC,GAAU,IAAS,OAAY,OAC/0C,IAAM,OAA1E,CAAC,GAAG,CAAC,OAAO,KAAK,MAAM,EAAM,WAAW,IAAI,CAAE,MAAM,CAAC,MAAM,CAAC,CAAE,CAAC,EAAA,CAA6B,CAAC,CAAC,KAAK,GAAG,GAAG,SAAS,OAAO,GAAG,SAAS,QAAQ,QAAQ,KAAK,OAAO,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAW,CAAC,EAAO,SAAS,KAAK,wBAAwB,EAAM,WAAW,UAAU,EAAW,KAAK,MAAO,CAC5S,EAAO,cAAc,IAAI,YAAY,uBAAuB,CAAC,OAAO,CAAC,WAAW,EAAM,UAAU,CAAC,CAAC,CAAC,CAAE,CAAoqB,CAAC,CAAE,sBAJluB,IAAoD,KAAkE,EAI6mB,GAAa,YAAY,wBAAwB,EAAoB,GAAa,CAAC,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,EAAE,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,UAAU,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,MAAM,UAAU,aAAa,YAAY,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,EAAE,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,EAAE,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,UAAU,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,KAAK,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,EAAE,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,KAAK,UAAU,CAAC,CAAC,GAAG,KAAK,OAAO,SAAS,OAAO,SAAS,EAAE,CAAC,GAAG,KAAK,OAAO,SAAS,OAAO,eAAe,CAAC,CAAC,EAAE,gBAAgB,EAAI,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,MAAM,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,iBAAiB,aAAa,UAAU,EAAE,iBAAiB,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,IAAI,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE,SAAS,CAAC,KAAK,EAAY,KAAK,MAAM,YAAY,SAAS,WAAW,gBAAgB,YAAY,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,EAAE,KAAK,IAAI,CAAC,CAAC,wBCd76D,sBCAF,KCI6P,SAASC,IAAgB,CAAC,GAAK,EAAE,GAAOC,EAAS,CAAC,EAA0N,OAAxN,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAM,EAAO,cAAc,GAAG,CAAC,EAAM,OAAO,IAAM,EAAM,EAAM,cAAc,EAAM,GAAG,EAAE,CAAC,CAAC,EAAE,UAAU,IAAQ,CAAE,EAAE,CAAC,CAAC,EAAY,IAAS,OAAkB,CAAC,EAAS,EAAO,eAAe,OAAO,QAAQ,CAAC,CAAE,CAAC,SAAwB,GAAW,EAAM,CAAC,IAAM,EAAOD,GAAe,EAAQ,EAAG,EAAM,IAAI,EAAO,QAAQE,EAAE,GAAS,EAAO,EAAM,QAAQ,EAAO,YAAYA,EAAE,OAAa,EAAI,EAAM,KAAK,EAAO,YAAYA,EAAE,IAAU,EAAS,EAAM,UAAU,EAAO,UAAUA,EAAE,SAAe,EAAQ,EAAM,SAASA,EAAE,QAAc,EAAW,EAAM,YAAYA,EAAE,WAAiB,EAAY,EAAM,aAAaA,EAAE,YAAiB,CAAC,EAAM,GAAUD,EAAS,EAAE,EAAO,CAAC,EAAS,GAAaA,EAAS,CAAC,EAAQ,EAAQE,EAAO,IAAI,EAAQ,EAAUA,EAAO,IAAI,EAAE,MAAc,CAAI,EAAM,iBAAgB,EAAU,SAAS,MAAM,CAAE,EAAE,CAAC,EAAM,eAAe,CAAC,EAAE,IAAM,EAAE,EAAM,KAAK,CAAC,CAAC,YAAY,EAAQ,EAAS,EAAE,EAAM,QAAQ,OAAO,GAAG,EAAE,MAAM,YAAY,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,YAAY,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAA,CAAI,YAAY,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAM,QAAoE,MAAc,CAAC,EAAY,GAAG,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,EAAS,OAAO,CAAC,CAAC,CAAC,CAAE,EAAE,CAAC,EAAS,MAAM,CAAC,EAAE,IAAM,EAAc,GAAG,CAAC,GAAG,EAAE,MAAM,YAAa,EAAE,eAAe,EAAE,EAAY,GAAG,KAAK,IAAI,EAAE,EAAE,EAAS,OAAO,CAAC,CAAC,OAAQ,GAAG,EAAE,MAAM,UAAW,EAAE,eAAe,EAAE,EAAY,GAAG,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC,OAAQ,GAAG,EAAE,MAAM,QAAQ,CAAC,EAAE,eAAe,EAAE,IAAM,EAAI,EAAS,GAAa,GAAK,CAAC,EAAI,UAAS,EAAM,WAAW,EAAI,MAAM,CAAG,CAAE,CAAC,EAAQ,EAAc,GAAK,CAAC,IAAM,EAAK,EAAQ,QAAY,GAA2C,EAAd,SAAS,EAAU,EAAE,eAAe,CAAC,MAAM,SAAS,CAAC,CAAE,EAAuD,OAArD,MAAc,CAAC,EAAc,CAAQ,CAAE,EAAE,CAAC,CAAQ,CAAC,EAAsB,EAAM,MAAM,CAAC,MAAM,CAAC,MAAM,EAAM,MAAM,UAAU,EAAM,UAAU,WAAW,EAAG,OAAO,aAAa,IAAS,aAAa,EAAM,QAAQ,GAAG,UAAU,qEAAqE,QAAQ,OAAO,cAAc,SAAS,SAAS,SAAS,WAAW,8BAA8B,EAAE,UAAU,EAAc,SAAS,CAAC,EAAM,YAAyB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,YAAY,aAAa,aAAa,IAAS,QAAQ,OAAO,WAAW,SAAS,IAAI,CAAC,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,QAAQ,YAAY,KAAK,OAAO,OAAO,EAAS,YAAY,IAAI,cAAc,QAAQ,eAAe,QAAQ,MAAM,CAAC,WAAW,CAAC,EAAE,SAAS,CAAc,EAAK,SAAS,CAAC,GAAG,KAAK,GAAG,KAAK,EAAE,GAAG,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,QAAQ,CAAC,IAAI,EAAU,KAAK,OAAO,MAAM,EAAM,SAAS,GAAG,EAAS,EAAE,OAAO,KAAK,EAAE,YAAY,EAAM,kBAAkB,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,OAAO,QAAQ,OAAO,WAAW,cAAc,WAAW,UAAU,SAAS,GAAG,MAAM,EAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,KAAK,CAAC,IAAI,EAAQ,KAAK,UAAU,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,OAAO,UAAU,MAAM,EAAE,SAAS,CAAC,EAAS,SAAS,GAAgB,EAAK,KAAK,CAAC,MAAM,CAAC,QAAQ,GAAG,UAAU,SAAS,SAAS,GAAG,MAAM,CAAQ,EAAE,SAAS,EAAM,YAAY,YAAY,CAAC,EAAE,EAAS,KAAK,EAAI,IAAI,CAAC,IAAM,EAAS,EAAI,QAAQ,EAAM,MAAY,EAAQ,IAAI,EAAS,OAAoB,EAAM,KAAK,CAAC,KAAK,SAAS,gBAAgB,EAAS,gBAAgB,EAAI,UAAU,IAAA,GAAU,iBAAiB,EAAY,CAAC,EAAE,YAAY,GAAG,CAAC,EAAE,eAAe,EAAM,EAAI,UAAS,EAAM,WAAW,EAAI,MAAM,CAAG,CAAE,EAAE,MAAM,CAAC,QAAQ,WAAW,aAAa,EAAE,OAAO,EAAI,SAAS,cAAc,UAAU,QAAQ,OAAO,WAAW,SAAS,IAAI,GAAG,WAAW,EAAS,EAAW,EAAQ,EAAQ,cAAc,MAAM,EAAI,SAAS,EAAS,EAAS,EAAY,EAAI,QAAQ,EAAI,SAAS,GAAG,EAAE,SAAS,GAAG,WAAW,IAAI,WAAW,EAAS,IAAI,IAAI,WAAW,sBAAsB,EAAE,SAAS,CAAC,EAAI,SAAsB,EAAK,MAAM,CAAC,IAAI,EAAI,QAAQ,IAAI,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,aAAa,EAAE,UAAU,QAAQ,WAAW,CAAC,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,SAAS,aAAa,WAAW,WAAW,QAAQ,EAAE,SAAS,EAAI,KAAK,CAAC,EAAE,EAAI,MAAmB,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAS,SAAS,GAAG,WAAW,CAAC,EAAE,SAAS,EAAI,IAAI,CAAC,CAAC,CAAC,EAAE,EAAI,KAAK,CAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,wBAA1/I,IAAoD,IAA6C,EAAOD,EAAE,CAAC,GAAG,qBAAqB,OAAO,qBAAqB,IAAI,kBAAkB,SAAS,qBAAqB,QAAQ,2BAA2B,WAAW,2BAA2B,YAAY,iBAAiB,EAAksI,GAAW,YAAY,2BAA2B,EAAoB,GAAW,CAAC,WAAW,CAAC,KAAK,EAAY,QAAQ,MAAM,aAAa,aAAa,EAAK,EAAE,kBAAkB,CAAC,KAAK,EAAY,OAAO,MAAM,qBAAqB,aAAa,UAAU,OAAO,GAAG,CAAC,EAAE,UAAU,EAAE,gBAAgB,CAAC,KAAK,EAAY,QAAQ,MAAM,mBAAmB,aAAa,GAAK,OAAO,GAAG,CAAC,EAAE,UAAU,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,YAAY,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,EAAE,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,wBCJxkK,KCD0a,SAAS,IAAoB,CAAkF,OAA9E,OAAO,OAAS,KAAa,eAAe,OAAc,OAAO,WAAW,EAAS,KAAK,OAAO,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,SAAS,EAAE,CAAE,CAAqZ,SAASE,IAAe,CAAuE,GAAK,CAAC,EAAM,GAAUC,EAAS,IAAI,EAA2V,OAAzV,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,IAAI,EAAY,MAAQ,CAAC,IAAM,EAAE,EAAO,cAAgF,OAA/D,GAAG,EAAS,CAAC,EAAE,EAAM,EAAE,cAAc,EAAS,CAAC,CAAC,EAAS,IAAa,EAAM,EAAE,GAAG,EAAI,EAAE,UAAU,IAAQ,EAAE,IAAM,EAAG,EAAO,gBAAgB,CAAI,EAAI,GAAE,EAAO,cAAc,CAAE,CAAE,EAAE,GAAG,EAAE,UAAU,CAAC,EAAO,cAAc,CAAE,EAAE,IAAQ,CAAE,CAAE,EAAE,CAAC,CAAC,EAAS,CAAM,CAAC,SAASC,GAAgB,EAAK,CAAC,MAAM,CAAC,CAAC,GAAM,OAAO,GAAO,UAAU,OAAO,KAAK,CAAI,CAAC,CAAC,OAAO,CAAE,CAI5vB,SAAS,GAAS,EAAE,CAAC,OAAO,OAAO,GAAG,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,QAAQ,oBAAoB,EAAE,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,QAAQ,mBAAmB,EAAE,CAAC,CAAC,QAAQ,cAAc,GAAG,CAAC,CAAC,KAAK,CAAE,CAGpiC,SAAS,GAAiB,EAAI,CAAC,OAAO,OAAO,GAAK,IAAI,EAAE,CAAC,CAAC,WAAW,QAAQ,CAAE,CAAC,SAAS,GAAgB,EAAI,CAAC,IAAM,EAAU,OAAO,GAAK,YAAY,GAAK,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,EAAU,OAAO,EAAU,GAAG,CAAC,GAAiB,CAAG,EAAE,MAAM,GAAG,IAAM,EAAM,MAAM,QAAQ,GAAK,KAAK,EAAE,EAAI,MAAM,CAAC,EAA6H,OAA5G,OAAO,EAAM,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,KAAU,IAAmC,IAAS,OAAkB,GAAU,EAAO,eAAe,OAAO,OAAO,UAAU,GAAG,CAAC,SAAS,GAAiB,EAAI,CAAC,IAAM,EAAU,OAAO,GAAK,aAAa,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,EAAU,OAAO,EAAU,GAAG,CAAC,GAAiB,CAAG,EAAE,MAAM,GAAG,IAAM,EAAM,MAAM,QAAQ,GAAK,KAAK,EAAE,EAAI,MAAM,CAAC,EAA8H,OAA7G,OAAO,EAAM,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC,KAAU,IAAmC,IAAS,OAAkB,GAAU,EAAO,eAAe,OAAO,OAAO,WAAW,GAAG,CAElxB,SAAS,GAAsB,EAAE,CAA8E,GAA1E,GAAG,mBAA4C,OAAO,GAAG,QAAQ,OAAiB,IAAI,QAAQ,MAAO,GAAM,IAAM,EAAG,KAAK,MAAM,GAAG,YAAY,EAAE,GAAG,KAAK,MAAM,GAAG,YAAY,EAAE,GAAG,EAAqB,MAAnB,CAAI,GAAsB,EAAG,EAAoB,CAAsqL,SAAS,GAAmB,EAAI,CAAC,IAAM,EAAE,OAAO,GAAK,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,EAAmG,MAA9F,CAAC,GAAG,IAAI,UAAiB,KAAQ,IAAI,OAAO,IAAI,OAAa,MAAS,IAAI,OAAa,OAAa,MAAO,CAAC,SAAS,GAAoB,EAAI,CAA4H,OAAxH,MAAM,QAAQ,GAAK,KAAK,EAAS,EAAI,MAAS,MAAM,QAAQ,GAAK,IAAI,EAAS,EAAI,KAAQ,MAAM,QAAQ,CAAG,EAAS,EAAU,CAAC,CAAE,CAG90M,SAAS,GAA4B,EAAM,EAAG,CAAC,IAAM,EAAO,IAAI,IAAI,IAAI,IAAM,KAAK,GAAI,CAAC,EAAE,CAAC,IAAM,EAAG,OAAO,GAAG,IAAI,EAAE,CAAC,CAAC,KAAK,EAAQ,EAAO,GAAmB,GAAG,MAAM,EAAK,CAAC,GAAI,CAAC,GAAgB,EAAO,IAAI,EAAG,CAAC,GAAG,MAAM,IAAK,OAAO,OAAO,GAAG,IAAI,CAAE,EAAE,SAAO,aAAa,EAAE,WAAW,GAAG,aAAa,GAAG,YAAY,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,GAAG,WAAW,OAAO,GAAG,YAAY,EAAE,EAAE,kBAAkB,EAAE,GAAG,MAAM,OAAO,GAAG,OAAO,EAAE,EAAE,eAAe,EAAI,CAAC,CAAE,CAAC,IAAM,EAAK,IAAI,IAAU,EAAI,CAAC,EAAE,IAAI,IAAM,KAAO,GAAO,CAAC,EAAE,CAAC,IAAM,EAAK,OAAO,GAAK,mBAAmB,EAAE,CAAC,CAAC,KAAK,EAI9oB,GAAG,GAAM,EAAO,IAAI,CAAI,EAAE,CAAC,IAAM,EAAO,EAAO,IAAI,CAAI,EAAE,EAAI,KAAK,CAAC,GAAG,EAAI,OAAO,EAAO,OAAO,WAAW,GAAK,aAAa,EAAI,CAAC,EAAE,EAAK,IAAI,CAAI,CAAE,MAAM,EAAI,KAAK,CAAC,GAAG,EAAI,WAAW,GAAK,aAAa,EAAK,CAAC,CAAG,CAAC,IAAI,GAAK,CAAC,EAAG,KAAK,EAAY,EAAK,IAAI,CAAE,GAAE,EAAI,KAAK,CAAC,EAAG,OAAO,CAAI,CAAyD,SAAS,GAAQ,EAAG,CAAC,OAAO,IAAI,QAAQ,GAAG,WAAW,EAAE,CAAE,CAAC,CAAE,CAAC,SAAS,GAA0B,EAAK,EAAU,EAAc,CAAC,IAAM,EAAiB,CAAC,EAAE,IAAI,IAAM,KAAK,GAAW,CAAC,EAAE,CAAC,IAAM,EAAO,GAAG,oBAAoB,GAAG,GAAQ,MAAM,IAAS,GAAG,SAAS,IAAM,EAAI,OAAO,CAAM,EAAQ,EAAU,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,MAAM,OAAO,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,OAAO,EAAc,EAAE,MAAM,EAAE,aAAa,OAAO,EAAE,YAAY,GAAG,EAAE,WAAW,EAAE,YAAY,GAAG,WAAW,EAAE,YAAY,GAAG,cAAc,EAAE,eAAe,GAAG,WAAW,EAAE,YAAY,GAAG,YAAY,EAAE,aAAa,GAAG,kBAAkB,EAAE,mBAAmB,IAAI,EAAM,EAAiB,KAAK,EAAiB,GAAK,CAAC,GAAE,EAAiB,EAAI,CAAC,KAAK,CAAS,CAAE,CAAC,OAAO,EAAK,IAAI,GAAG,CAAC,IAAM,EAAM,EAAiB,OAAO,EAAE,EAAE,GAAG,GAAG,CAAC,GAAO,OAAO,OAAO,EAAE,IAAM,EAAK,IAAI,KAAK,EAAE,OAAO,CAAC,EAAA,CAAG,IAAI,GAAG,OAAO,GAAG,IAAI,EAAE,CAAC,CAAC,EAAQ,EAAI,EAAM,OAAO,GAAG,CAAC,EAAK,IAAI,OAAO,EAAE,EAAE,CAAC,CAAC,EAA0B,OAApB,EAAI,OAAsB,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,CAAG,CAAC,EAA3C,CAA6C,CAAC,CAAE,CAAC,SAAS,IAAiB,CAAC,GAAU,IAAS,OAAY,MAAM,CAAC,EAAE,IAAM,EAAM,EAAO,4BAA4B,CAAC,EAA0C,MAAxC,GAAO,2BAA2B,EAAa,CAAM,CAAC,SAAS,GAAe,EAAI,CAA8D,OAAzD,EAAoB,OAAO,EAAI,MAAM,IAAI,KAAsB,uCAAuC,KAAK,OAAO,EAAI,SAAS,EAAE,CAAC,EAAvH,EAAyH,CAAC,eAAe,GAAQ,EAAM,EAAM,EAAO,EAAY,CAAC,IAAM,EAAU,IAAI,IAAI,IAAI,IAAM,KAAQ,EAAM,CAAC,GAAG,EAAY,EAAE,OAAO,IAAI,EAAE,EAAE,QAAQ,QAAQ,CAAC,CAAC,SAAS,EAAO,CAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAAU,OAAO,CAAC,CAAE,CAAC,EAAE,EAAU,IAAI,CAAC,EAAK,EAAU,MAAM,GAAO,MAAM,QAAQ,KAAK,CAAS,CAAG,CAAC,MAAM,QAAQ,IAAI,MAAM,KAAK,CAAS,CAAC,CAAE,CAAC,SAAS,GAAoB,EAAE,CAAC,IAAM,EAAK,GAAS,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,EAAQ,EAAQ,GAAS,EAAE,SAAS,EAAE,cAAc,EAAE,iBAAiB,EAAqI,GAAtH,MAAM,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,IAAI,GAAG,OAAO,GAAG,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,EAAA,CAAqB,OAAO,OAAO,CAAC,CAAC,KAAK,GAAG,EAAmN,MAAvG,GAAvG,gCAAgC,KAAK,CAAK,GAAiB,IAAO,SAAS,IAAO,UAAwB,IAAU,UAAU,yDAAyD,KAAK,CAAI,EAA2B,CAAC,SAAS,GAAiB,EAAE,CAAC,IAAM,EAAK,GAAS,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,EAAQ,EAAQ,GAAS,EAAE,SAAS,EAAE,YAAY,EAAqI,GAAtH,MAAM,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,IAAI,GAAG,OAAO,GAAG,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,EAAA,CAAqB,OAAO,OAAO,CAAC,CAAC,KAAK,GAAG,EACrgF,MAA/F,GADggG,CAA7Y,mBAAmB,iBAAiB,eAAe,iBAAiB,iBAAiB,kBAAkB,mBAAmB,gBAAgB,qBAAqB,kBAA8O,CAAA,CAAM,SAAS,CAAI,GAAiB,CAAzO,qBAAqB,yBAAyB,mBAAmB,mBAAmB,iBAAiB,cAAc,kBAAkB,qBAAqB,iBAAiB,qBAA8D,CAAA,CAAc,SAAS,CAAO,GAC1vG,GAAoB,CAAC,GAAiB,aAAa,KAAK,CAAI,GAAG,uBAAuB,KAAK,CAAK,GAAiB,YAAY,KAAK,CAAI,GAAG,uBAAuB,KAAK,CAAK,GAAiB,gCAAgC,KAAK,CAAK,GAAG,uBAAuB,KAAK,CAAK,EAA2B,CAGvW,SAAS,GAAY,CAAC,KAAG,cAAY,QAAM,SAAO,GAAG,WAAS,GAAM,QAAM,CAAC,IAAM,EAAa,CAAC,WAAW,0BAA0B,EAAM,OAAO,EAAG,QAAQ,EAAM,QAAQ,eAAe,YAAY,UAAU,wCAAwC,EAAQ,GAAO,EAAE,EAAE,GAAG,EAAO,IAAiB,EAAK,OAAO,CAAC,cAAc,GAAK,MAAM,CAAC,QAAQ,QAAQ,MAAM,EAAE,OAAO,EAAE,aAAa,EAAO,GAAG,CAAY,CAAC,CAAC,EAE8f,OAFzf,EAEvW,EAAM,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,WAAW,EAAG,OAAO,aAAa,IAAc,aAAa,GAAG,QAAQ,GAAG,QAAQ,OAAO,cAAc,SAAS,IAAI,GAAG,UAAU,YAAY,EAAE,SAAS,CAAC,EAAM,MAAM,GAAG,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,IAAI,EAAE,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,OAAO,cAAc,SAAS,IAAI,CAAC,EAAE,SAAS,CAAC,EAAM,GAAG,EAAE,EAAE,EAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,OAAO,cAAc,SAAS,IAAI,CAAC,EAAE,SAAS,CAAC,EAAM,GAAG,EAAE,EAAE,EAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,OAAO,cAAc,SAAS,IAAI,CAAC,EAAE,SAAS,CAAC,EAAM,GAAG,EAAE,EAAE,EAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,WAAW,GAAM,EAAG,aAAa,GAAG,QAAQ,GAAG,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAE,EAAE,SAAS,CAAC,EAAM,OAAO,GAAG,EAAE,EAAE,EAAM,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAM,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC,EAAuB,EAAM,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,WAAW,EAAG,OAAO,aAAa,IAAc,aAAa,GAAG,QAAQ,GAAG,QAAQ,OAAO,WAAW,SAAS,IAAI,GAAG,UAAU,aAAa,UAAU,CAAM,EAAE,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,aAAa,IAAI,WAAW,EAAE,GAAG,CAAY,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,SAAS,CAAC,EAAM,IAAI,EAAE,EAAE,EAAM,IAAI,EAAE,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,IAAI,EAAE,WAAW,CAAC,EAAE,SAAS,CAAC,EAAM,GAAG,EAAE,EAAE,EAAM,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAI76C,SAAS,GAAW,CAAC,QAAM,WAAS,WAAS,aAAW,YAAU,CAAC,GAAK,CAAC,EAAK,GAASD,EAAS,EAAK,EAAO,CAAC,EAAK,GAASA,EAAS,IAAI,EAAQ,EAAWE,EAAO,IAAI,EAAQ,MAAY,CAAC,IAAM,EAAG,EAAW,QAAQ,GAAG,CAAC,GAAW,IAAS,OAAY,OAAO,IAAM,EAAE,EAAG,sBAAsB,EAAQ,EAAG,EAAO,YAAkB,EAAW,EAAG,EAAE,OAAO,KAAK,EAAE,IAAI,EAAG,EAAE,OAAO,EAAQ,CAAC,KAAK,EAAE,KAAK,IAAI,EAAW,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,aAAW,YAAY,EAAE,KAAK,CAAC,CAAE,EAAE,MAAc,CAAC,GAAG,CAAC,EAAK,OAAO,EAAQ,EAAE,IAAM,EAAU,GAAG,CAAC,IAAM,EAAE,EAAE,OAAU,EAAW,SAAS,EAAW,QAAQ,SAAS,CAAC,GAAS,EAAQ,EAAK,CAAE,EAAQ,EAAM,GAAG,CAAI,EAAE,MAAM,UAAS,EAAQ,EAAK,CAAE,EAAuL,OAArL,EAAO,iBAAiB,SAAS,CAAO,EAAE,EAAO,iBAAiB,SAAS,EAAQ,EAAI,EAAE,SAAS,iBAAiB,YAAY,CAAS,EAAE,SAAS,iBAAiB,UAAU,CAAK,MAAY,CAAC,EAAO,oBAAoB,SAAS,CAAO,EAAE,EAAO,oBAAoB,SAAS,EAAQ,EAAI,EAAE,SAAS,oBAAoB,YAAY,CAAS,EAAE,SAAS,oBAAoB,UAAU,CAAK,CAAE,CAAE,EAAE,CAAC,CAAI,CAAC,EAAE,IAAM,EAAQ,GAAa,KAAK,GAAG,EAAE,QAAQ,CAAK,GAAG,GAAa,GAC/jC,EAAY,EAAS,SAAS,QAAQ,EAAE,EAAS,QAAQ,SAAS,EAAQ,KAAK,EAAE,GAAG,EAAS,QAAQ,iBAAiB,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,EAAQ,QAAQ,OAAoB,EAAMC,EAAU,CAAC,SAAS,CAAc,EAAM,SAAS,CAAC,IAAI,EAAW,KAAK,SAAS,YAAY,EAAQ,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,QAAQ,QAAQ,cAAc,WAAW,SAAS,IAAI,EAAE,OAAO,UAAU,SAAS,GAAG,MAAM,EAAK,EAAW,EAAS,WAAW,+BAA+B,QAAQ,UAAU,aAAa,EAAE,WAAW,iBAAiB,EAAE,SAAS,CAAC,EAAyB,EAAK,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,QAAQ,YAAY,KAAK,OAAO,OAAO,eAAe,YAAY,EAAE,cAAc,QAAQ,eAAe,QAAQ,MAAM,CAAC,UAAU,EAAK,iBAAiB,YAAY,WAAW,qBAAqB,EAAE,SAAsB,EAAK,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAM,GAAM,OAAO,SAAW,KAA0B,EAA0B,EAAK,MAAM,CAAC,MAAM,CAAC,SAAS,QAAQ,KAAK,KAAK,IAAI,EAAE,KAAK,IAAI,EAAK,YAAY,KAAY,IAAS,OAA8B,EAAlB,EAAO,YAAc,GAAG,CAAC,EAAE,GAAG,EAAK,WAAW,CAAC,OAAO,EAAK,IAAI,EAAK,IAAI,CAAC,EAAE,CAAC,IAAI,EAAK,GAAG,EAAE,OAAO,UAAU,EAAE,YAAY,GAAG,EAAE,gBAAgB,EAAE,SAAsB,EAAK,GAAW,CAAC,QAAQ,GAAa,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,MAAM,EAAE,KAAK,EAAE,EAAQ,QAAM,SAAS,GAAG,CAAC,EAAS,CAAC,EAAE,EAAQ,EAAK,CAAE,EAAE,WAAW,GAAM,kBAAkB,GAAG,gBAAgB,GAAM,WAAW,aAAa,UAAU,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,SAAS,IAAI,CAAC,CAAC,CAAC,CAAE,CAKx7C,SAAS,GAAmB,CAAC,MAAI,YAAU,aAAW,UAAQ,gBAAc,SAAO,aAAW,CAAC,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAM,GAAG,CAAI,EAAE,MAAM,UAAS,EAAQ,CAAE,EAAE,SAAS,iBAAiB,UAAU,CAAK,EAAwC,IAAM,EAAa,SAAS,KAAK,MAAM,SAA+C,MAAtC,UAAS,KAAK,MAAM,SAAS,aAAmB,CAAC,SAAS,oBAAoB,UAAU,CAAK,EAAE,SAAS,KAAK,MAAM,SAAS,CAAa,CAAE,EAAE,CAAC,CAAO,CAAC,EAC1d,GAAK,CAAC,EAAS,GAAaH,EAAgB,IAAS,QAAa,EAAO,WAAW,GAAG,EAA+P,GAA7P,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAG,EAAO,WAAW,oBAAoB,EAAQ,MAAa,EAAY,EAAG,OAAO,EAAoD,OAAlD,EAAS,EAAE,EAAG,iBAAiB,SAAS,CAAQ,MAAY,EAAG,oBAAoB,SAAS,CAAQ,CAAE,EAAE,CAAC,CAAC,EAAK,OAAO,SAAW,IAAY,OAAO,KAAK,IAAM,EAAS,EAAI,WAAW,kBAAwB,EAAS,EAAI,OAAO,WAAiB,EAAM,OAAO,CAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,EAAE,OAAO,CAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,EAE9iB,IAAS,QAAY,EAAO,cAExC,GAAK,CAAC,EAAc,GAAkBA,MAAa,IAAI,GAAG,EAAO,CAAC,EAAW,GAAeA,EAAS,IAAI,EAE9H,CAAC,EAAkB,GAAsBA,EAAS,IAAI,EAS5D,CAAC,EAAoB,GAAwBA,EAAS,CAAC,CAAC,EAAO,CAAC,EAAmB,GAAuBA,EAAS,CAAC,CAAC,EAAO,CAAC,EAAgB,GAAoBA,EAAS,CAAC,CAAC,EAAO,CAAC,EAAa,GAAiBA,EAAS,IAAI,EAAO,CAAC,GAAW,IAAeA,EAAS,IAAI,EAC9S,CAAC,EAAa,GAAiBA,EAAS,EAAK,EAAO,CAAC,EAAe,GAAmBA,EAAS,EAAE,EAAO,CAAC,EAAa,IAAiBA,EAAS,EAAE,EAAO,CAAC,EAAW,GAAeA,EAAS,EAAK,EAAO,CAAC,GAAU,IAAcA,EAAS,IAAI,EAAO,CAAC,EAAU,IAAcA,EAAS,EAAK,EAC9R,CAAC,EAAa,IAAiBA,EAAS,IAAI,EAAO,CAAC,EAAW,IAAeA,EAAS,IAAI,EAAQ,EAAS,MAAM,QAAQ,EAAI,KAAK,EAAE,EAAI,MAAM,CAAC,EAAE,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAW,GAAK,GAA+F,GAAzF,CAAC,GAA2F,CAAC,QAAQ,KAAK,OAAO,CAAU,CAAC,EAAE,OAAO,IAAM,EAAI,EAAO,YAAY,GAAG,CAAC,GAAK,iBAAiB,OAAO,IAAM,EAAW,IAAI,gBAAoB,EAAU,GAC8O,OADvO,SAAS,CAAC,GAAG,CACtb,IAAI,EAAK,CAAC,EAA4T,GAA1T,AAAuM,EAApM,OAAO,EAAI,uBAAwB,WAAiB,MAAM,EAAI,sBAAsB,EAAW,EAAW,MAAM,EAAyF,GAAoB,MAArF,EAAI,iBAAiB,EAAW,CAAC,OAAO,EAAW,MAAM,CAAC,CAA8B,EAAM,IAAiB,GAAgB,CAAC,CAAC,OAAO,CAAU,GAAG,CAAC,GAAG,KAAK,IAAI,EAAE,KAAK,CAAI,EAAK,GAAU,OAAO,IAAM,EAAI,CAAC,EAAE,IAAI,IAAM,KAAK,EAAK,CAAC,IAAM,EAAI,OAAO,EAAE,EAAE,EAAE,EAAI,GAAK,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,YAAY,CAAE,CAAC,EAAuB,CAAG,EAAE,EAAsB,CAAI,EAAE,IAAgB,OAAO,CAAU,EAAE,CAAI,CAAE,OAAO,EAAE,CAAC,GAAG,GAAG,OAAO,aAAa,OAAO,QAAQ,KAAK,8CAA8C,CAAC,CAAE,CAAC,EAAA,CAAG,MAAY,CAAC,EAAU,GAAK,EAAW,MAAM,CAAE,CAAE,EAAE,CAAC,GAAK,EAAE,CAAC,EAAE,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAM,EAAO,cAAoB,MAAU,CAAC,IAAM,EAAE,GAAO,OAAO,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,QAAQ,OAAO,IAAM,EAAO,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,EAAQ,EAAW,GAAQ,OAAO,GAAK,EAAE,IAAI,EAAa,EAAS,EAAS,KAAK,GAAG,OAAO,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,CAAC,GAAK,GAAY,IAAU,EAAmB,IAAO,CAAC,GAAG,GAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAG,EAAU,OAAR,EAAM,EAAS,GAAO,UAAU,EAAM,UAAU,CAAK,EAAE,IAAA,EAAU,EAAE,CAAC,GAAK,GAAG,EAAS,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAU,GAAG,CAAC,IAAM,EAAO,EAAE,QAAQ,CAAC,EAAQ,EAAO,OAAO,EAAO,QAAQ,EAAE,CAAC,CAAC,YAAY,EAAQ,EAAI,MAAM,QAAQ,EAAO,OAAO,EAAE,EAAO,QAAQ,CAAC,EAAE,GAAG,CAAC,EAAO,OAAO,IAAM,EAAG,IAAS,OAAO,IAAS,OAAO,EAAO,OAAO,EAAuB,GAAM,CAAC,IAAM,EAAK,CAAC,GAAG,CAAI,EAAE,IAAI,IAAM,KAAM,EAAQ,IAAG,EAAK,OAAO,CAAE,GAAG,GAAI,OAAO,CAAK,CAAC,EAAE,IAAM,EAAQ,OAAO,EAAO,SAAS,EAAE,EAAQ,EAAW,OAAO,EAAO,YAAY,EAAE,EAAK,GAAY,GAAS,EAAmB,GAAM,CAAC,IAAM,EAAQ,EAAK,GAAY,GAAG,CAAC,GAAS,eAAe,OAAO,EAAK,IAAM,EAAM,CAAC,GAAG,EAAQ,eAAe,aAAa,CAAC,CAAC,EAAQ,EAAK,CAAC,GAAG,EAAM,IAAU,CAAC,CAAC,EAAQ,EAAK,MAAM,QAAQ,EAAK,MAAM,GAAG,EAAK,OAAO,OAAO,EAAK,OAAO,CAAC,CAAI,EAAQ,EAAW,IAAK,OAAO,GAAG,EAAmG,MAAhG,GAAM,GAAS,CAAC,GAAG,EAAK,QAAQ,EAAW,OAAO,EAAK,IAAI,IAAI,CAAC,GAAG,GAAG,CAAC,EAAE,QAAQ,CAAU,EAAE,CAAC,EAAQ,CAAC,GAAG,GAAM,GAAY,CAAC,GAAG,EAAQ,eAAe,CAAC,GAAG,EAAQ,eAAe,YAAY,CAAK,CAAC,CAAC,CAAE,CAAC,CAAG,EAA4D,OAA1D,EAAO,iBAAiB,uBAAuB,CAAS,MAAY,EAAO,oBAAoB,uBAAuB,CAAS,CAAE,EAAE,CAAC,CAAC,EAAE,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAI,EAAO,YAAY,GAAG,CAAC,GAAK,YAAY,OAAO,IAAM,EAAQ,EAAS,OAAO,GAAG,GAAG,IAAI,CAAC,EAAE,gBAAgB,CAAC,EAAgB,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,eAAe,EAAE,GAAG,CAAC,EAAQ,OAAO,OAAO,IAAI,EAAU,GAAqS,OAA9R,SAAS,CAAC,IAAM,EAAK,CAAC,EAAE,MAAM,QAAQ,IAAI,EAAQ,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,KAAM,IAAG,CAAC,GAAG,CAAC,IAAM,EAAE,MAAM,EAAI,YAAY,EAAE,EAAE,EAAK,GAAG,UAAQ,EAAK,EAAE,IAAI,EAAE,QAAQ,MAAM,CAA+B,CAAC,CAAC,CAAC,EAAK,CAAC,GAAW,OAAO,KAAK,CAAI,CAAC,CAAC,QAAQ,EAAmB,IAAO,CAAC,GAAG,EAAK,GAAG,CAAI,EAAE,CAAG,EAAA,CAAG,MAAY,CAAC,EAAU,EAAK,CAAE,EAAE,CAAC,GAAK,GAAG,EAAS,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,IAAM,EAAmB,GAAM,CAAK,GAAM,IAAa,EAAK,SAAS,SAAe,EAAqB,CAAI,CAAE,EAAQ,GAAmB,SAAS,CAAC,IAAM,EAAK,EAAsB,MAAM,IAAoB,IAAS,OAAmB,GAAc,EAAK,EAAE,EAAE,GAAG,CAG7tG,IAAM,EAAI,EAAO,YAAY,GAAG,GAAK,gBAAgB,EAAK,GAAI,GAAG,CAAC,MAAM,EAAI,eAAe,EAAK,EAAE,CAAE,OAAO,EAAE,CAAC,GAAG,GAAG,SAAS,IAAI,MAAM,CAAE,CAAE,GAAG,CAAI,OAAO,aAAe,KAAa,aAAa,WAAW,mBAAmB,EAAK,IAAI,CAAG,MAAM,CAAC,CAAC,EAAiB,GAAM,CAAC,IAAM,EAAK,IAAI,IAAI,CAAI,EAAoB,OAAlB,EAAK,IAAI,EAAK,EAAE,EAAS,CAAK,CAAC,EAIjV,EAAO,cAAc,IAAI,YAAY,0BAA0B,CAAC,OAAO,CAAC,WAAW,EAAK,EAAE,CAAC,CAAC,CAAC,CAAE,OAAO,EAAE,CAAC,QAAQ,KAAK,+BAA+B,CAAC,CAAE,QAAQ,CAAC,EAAc,IAAI,EAAE,EAAqB,IAAI,CAAE,CAPqhG,CAOphG,EASuD,GAAS,EAAK,EAAU,IAAmB,EAAK,IAAI,CAAM,OAAK,aAAa,EAAU,MAAM,EAAU,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,aAAa,EAAE,WAAW,EAAO,OAAO,OAAO,aAAa,EAAO,aAAa,QAAQ,cAAc,WAAW,SAAS,eAAe,SAAS,MAAM,EAAO,SAAS,eAAe,OAAO,WAAW,EAAE,WAAW,+DAA+D,EAAE,aAAa,GAAG,CAAC,IAAM,EAAG,EAAE,cAAc,EAAG,MAAM,WAAW,EAAO,WAAW,EAAG,MAAM,MAAM,UAAU,EAAG,MAAM,YAAY,EAAO,UAAW,EAAE,aAAa,GAAG,CAAC,IAAM,EAAG,EAAE,cAAc,EAAG,MAAM,WAAW,EAAO,OAAO,EAAG,MAAM,MAAM,EAAO,SAAS,EAAG,MAAM,YAAY,EAAO,UAAW,EAAE,SAAS,CAAG,CAAC,EAAQ,GAAsB,EAAM,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,QAAQ,YAAY,KAAK,OAAO,OAAO,eAAe,YAAY,IAAI,cAAc,QAAQ,eAAe,QAAQ,SAAS,CAAc,EAAK,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,MAAM,KAAK,OAAO,KAAK,GAAG,GAAG,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,EAAQ,GAAuB,EAAK,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,QAAQ,YAAY,KAAK,OAAO,OAAO,eAAe,YAAY,IAAI,cAAc,QAAQ,eAAe,QAAQ,SAAsB,EAAK,OAAO,CAAC,EAAE,+RAA+R,CAAC,CAAC,CAAC,EAGzvD,IAAS,EAAM,EAAM,EAAO,IAAW,CAAC,IAAM,EAAW,CAAC,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,MAAM,EAAO,WAAW,SAAS,SAAS,aAAa,WAAW,WAAW,SAAS,KAAK,EAAE,SAAS,EAAE,eAAe,MAAM,EAAQ,EAAQ,GAAU,GAAU,EAAmB,EAAK,IAAI,CAAC,KAAK,EAAS,MAAM,CAAC,GAAG,EAAW,OAAO,SAAS,EAAE,MAAM,EAAM,SAAS,CAAK,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,EAAW,MAAM,GAAO,IAAA,GAAU,SAAS,GAAO,GAAG,CAAC,EAAE,OAAoB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAE,SAAS,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,cAAc,SAAS,cAAc,YAAY,MAAM,EAAO,UAAU,WAAW,CAAC,EAAE,SAAS,CAAK,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,SAAS,IAAI,GAAG,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC,GAAU,EAAO,CAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,EACj5B,GAAe,GAAK,CAAC,GAAG,CAAC,EAAI,MAAM,SAAS,IAAM,EAAE,IAAI,KAAK,CAAG,EAAiR,OAA5Q,MAAM,EAAE,QAAQ,CAAC,EAAQ,SAAyP,GAAvO,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,GAA4M,EAAE,GAAhM,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,GAAkK,EAAE,GAAtJ,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,EAA4H,EAAE,QAAlH,EAAE,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,GAAuF,EAAE,GAA5E,EAAE,WAAW,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,GAA0C,GAAI,EAI5X,OAA2B,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAM,EAAO,cAAoB,EAAM,EAAI,aAAa,EAAI,WAAW,GAAA,CAAI,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,GAAS,EAAK,EAAI,YAAY,EAAI,WAAW,GAAA,CAAI,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,GAAS,EAAI,OAAO,EAAI,EAAE,EAAQ,EAAG,GAAmB,EAAQ,EAAM,GAAO,OAAO,eAAe,GAAO,OAAO,WAAW,GAAS,EAAO,CAAC,KAAG,KAAK,EAAG,MAAM,EAAE,EAAE,EAAE,OAAO,QAAQ,aAAa,EAAE,YAAY,EAAI,GAAG,oBAAoB,OAAO,SAAS,CAAG,EAAE,EAAI,KAAK,cAAc,EAAM,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC,KAAK,WAAW,WAAW,EAAI,EAAE,EAAE,cAAc,CAAC,SAAS,CAAC,WAAW,EAAM,UAAU,EAAK,MAAM,EAAI,OAAO,GAAG,aAAa,EAAI,SAAS,EAAI,cAAc,GAAG,aAAa,EAAI,OAAO,EAAI,cAAc,GAAG,WAAW,EAAI,YAAY,GAAG,cAAc,EAAI,eAAe,EAAE,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,eAAe,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,WAAW,IAAI,KAAK,CAAA,CAAE,YAAY,EAAE,WAAW,IAAI,KAAK,CAAA,CAAE,YAAY,CAAC,EAIv9B,GAAG,CAAC,eAAe,QAAQ,kBAAkB,IAAK,KAAK,UAAU,CAAM,CAAC,CAAE,OAAO,EAAE,CAAC,QAAQ,KAAK,gDAAgD,CAAC,CAAE,CAAC,EAAO,cAAc,IAAI,YAAY,mCAAmC,CAAC,OAAO,CAAC,WAAW,EAAI,GAAG,WAAW,CAAE,CAAC,CAAC,CAAC,EAC7U,IAAO,EAAM,gBAAgB,CAAC,GAAG,EAAI,GAAG,KAAK,EAAI,WAAW,GAAG,EAAM,GAAG,IAAO,KAAK,GAAG,GAAG,WAAW,EAAM,UAAU,EAAK,MAAM,EAAI,OAAO,GAAG,MAAM,EAAI,OAAO,EAAI,cAAc,GAAG,IAAI,EAAI,SAAS,EAAI,cAAc,EAAE,CAAC,EAAE,EAAM,eAAe,GAAG,EAAQ,EAAE,GAAG,CAAC,IAAM,EAAI,IAAI,IAAI,EAAO,SAAS,IAAI,EAAQ,EAAS,GAAO,OAAO,OAAO,aAAa,IAAI,kBAAsB,EAAI,SAAS,WAAW,CAAQ,IAAG,EAAI,SAAS,EAAS,EAAI,aAAa,OAAO,GAAG,EAAE,EAAI,aAAa,OAAO,QAAQ,EAAE,EAAI,aAAa,OAAO,MAAM,EAAE,EAAO,SAAS,KAAK,EAAI,SAAS,EAAG,MAAM,CAAC,CAAC,EAAQ,GAAkB,GAAM,CAAC,GAAG,GAAM,IAAI,CAAC,EAAK,gBAAgB,CAAC,OAAO,EAAK,EAAE,CAAC,CAAC,WAAW,KAAK,EAAG,OAAO,OAAO,EAAK,EAAE,EAAG,IAAM,EAAO,OAAO,GAAM,aAAa,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,EAAO,OAAO,EAAO,IAAM,EAAK,OAAO,GAAM,mBAAmB,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,EAAK,OAAO,KAAK,IAAM,EAAI,EAAS,KAAK,GAAG,CAAC,EAAE,gBAAgB,OAAO,EAAE,mBAAmB,EAAE,IAAI,CAAI,EAAE,GAAG,GAAK,GAAG,OAAO,OAAO,EAAI,EAAE,EAAE,GAAG,OAAO,aAAe,IAAY,OAAO,KAAK,GAAG,CAAC,IAAM,EAAgB,OAAO,GAAK,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,aAAa,OAAO,IAAI,CAAC,IAAM,EAAE,aAAa,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,WAAW,kBAAkB,EAAE,SAAS,IAAM,EAAI,aAAa,QAAQ,CAAC,EAAE,GAAG,CAAC,EAAI,SAAS,IAAM,EAAE,KAAK,MAAM,CAAG,EAAK,YAAO,GAAG,mBAAmB,EAAE,IAAI,GAAM,CAAC,GAAG,IAGztC,IAAG,EAAgB,CAAC,IAAM,EAAY,OAAO,GAAG,qBAAqB,GAAG,aAAa,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,GAAa,IAAc,EAAgB,QAAS,CAAC,OAAO,OAAO,EAAE,EAAE,CAAnB,CAAqB,CAAC,MAAM,CAAC,CAAC,OAAO,IAAK,EAAQ,GAAoB,EAAW,EAAK,IAAI,CAAkC,IAAM,EAA3B,EAAO,eAAsC,OAAO,OAAO,YAAY,CAAC,EAA8D,EAAM,EAApD,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,OAAO,CAAI,GAAG,CAAC,CAAgC,EAAE,IAAI,EAAW,IAAI,kBAAkB,GAAG,CAAC,IAAM,EAAI,IAAI,IAAI,EAAO,SAAS,IAAI,EAAE,EAAI,SAAS,EAAM,EAAI,aAAa,IAAI,IAAI,CAAU,EAAE,EAAO,SAAS,KAAK,EAAI,SAAS,CAAE,MAAM,CAAC,EAAO,SAAS,KAAK,GAAG,EAAM,KAAK,mBAAmB,CAAU,GAAI,CAAC,EAAQ,CAAE,EAAQ,EAAgB,GAAM,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAS,GAAkB,CAAI,EAAE,GAAG,EAAS,CAExxB,IAAM,EAAS,OAAO,EAAK,mBAAmB,CAAC,EAAQ,EAAQ,GAAS,EAAmB,KAAK,GAAG,OAAO,EAAE,EAAE,IAAI,CAAQ,GAAQ,KAAK,GAAG,CAAC,IAAM,EAAM,OAAO,EAAI,YAAY,EAAE,CAAC,CAAC,KAAK,IAAI,EAAI,WAAW,GAAA,CAAI,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,GAAS,EAAK,OAAO,EAAI,WAAW,EAAE,CAAC,CAAC,KAAK,IAAI,EAAI,WAAW,GAAA,CAAI,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,GAAG,eAAe,QAAQ,mBAAmB,KAAK,UAAU,CAAC,WAAW,EAAS,SAAS,CAAC,WAAW,EAAM,UAAU,EAAK,MAAM,EAAI,OAAO,GAAG,aAAa,EAAI,SAAS,GAAG,aAAa,EAAI,OAAO,EAAE,EAAE,UAAU,OAAO,GAAS,YAAY,GAAS,qBAAqB,EAAE,EAAE,UAAU,OAAO,GAAS,mBAAmB,EAAE,CAAC,CAAC,CAAC,CAAE,MAAM,CAAC,CAAC,EAAmB,EAAS,OAAO,EAAK,YAAY,GAAG,CAAC,EAAE,MAAO,CAAC,IAAM,EAAM,EAAO,cAAoB,EAAQ,OAAO,EAAK,mBAAmB,CAAC,EAAQ,EAAO,EAAmB,KAAK,GAAG,OAAO,EAAE,EAAE,IAAI,CAAO,GAAG,KAAW,EAAG,OAAO,GAAO,wBAAyB,WAAW,EAAM,uBAAuB,CAAC,SAAS,EAAI,MAAM,EAAO,CAAC,CAAM,EAAE,CAAC,EAAE,YAAY,CAAO,CAAC,EAAE,KAAS,GAAU,EAAmB,EAAG,CAAC,CAAE,EAI/iC,QAA0B,CAAC,IAAM,EAAE,IAAI,IAAI,GAAG,OAAO,aAAe,IAAY,OAAO,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,aAAa,OAAO,IAAI,CAAC,IAAM,EAAE,aAAa,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,WAAW,kBAAkB,EAAE,SAAS,IAAM,EAAI,aAAa,QAAQ,CAAC,EAAE,GAAG,CAAC,EAAI,SAAS,IAAM,EAAE,KAAK,MAAM,CAAG,EAAQ,EAAM,OAAO,GAAG,IAAI,EAAE,CAAC,CAAC,KAAK,EAAM,IAAkC,GAAG,SAAS,GAAG,WAAW,GAAG,aAAa,GAAG,QAAQ,OAAO,EAAE,MAAM,CAAC,CAAC,YAAY,IAAI,UAAsB,EAAE,IAAI,CAAK,CAAE,CAAC,MAAM,CAAC,CAAC,OAAO,CAAE,EAAA,CAAG,EACtf,QAAqB,CAAC,IAAM,EAAE,IAAI,IAAI,GAAG,OAAO,aAAe,IAAY,OAAO,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,aAAa,OAAO,IAAI,CAAC,IAAM,EAAE,aAAa,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,WAAW,kBAAkB,EAAE,SAAS,IAAM,EAAI,aAAa,QAAQ,CAAC,EAAE,GAAG,CAAC,EAAI,SAAS,IAAM,EAAE,KAAK,MAAM,CAAG,EAAQ,EAAM,OAAO,GAAG,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,EAAM,SAAS,IAAM,EAAG,OAAO,GAAG,QAAQ,EAAE,CAAC,CAAC,YAAY,GAAK,IAAK,QAAQ,IAAK,aAAW,EAAE,IAAI,CAAK,CAAE,CAAC,MAAM,CAAC,CAAC,OAAO,CAAE,EAAA,CAAG,EAAQ,OAAiB,CAAC,IAAM,EAAK,IAAI,IAAU,EAAI,CAAC,EAAE,IAAI,IAAM,KAAK,EAAmB,CAAC,IAAM,EAAG,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,GAAI,EAAK,IAAI,CAAE,EAAE,SAAS,EAAK,IAAI,CAAE,EAAE,IAAM,EAAI,EAAS,KAAK,GAAG,CAAC,EAAE,gBAAgB,OAAO,EAAE,mBAAmB,EAAE,IAAI,CAAE,EAAQ,EAAK,GAAK,CAAC,GAAG,MAAM,IAAK,eAAe,GAAK,kBAAkB,EAAE,GAAG,YAAY,EAAE,aAAa,KAAK,MAAM,OAAO,EAAE,OAAO,EAAE,EAAE,OAAO,OAAO,EAAE,QAAQ,MAAM,CAAC,CAAC,YAAY,EAAE,aAAa,GAAK,cAAc,CAAC,EAAQ,EAAO,GAAkB,CAAI,EAAQ,EAAkB,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAC,YAAY,EAAQ,EAAU,IAAoB,QAAQ,IAAoB,WAAW,EAAI,KAAK,CAAC,IAAI,MAAM,IAAK,MAAM,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,GAAG,QAAQ,IAAK,KAAK,GAAe,EAAE,aAAa,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,OAAO,EAAE,QAAQ,MAAM,CAAC,CAAC,YAAY,EAAE,OAAK,YAAY,CAAC,CAAC,GAAQ,EAAU,YAAY,CAAC,EAAE,GAAQ,GAAqB,IAAI,OAAO,CAAM,CAAC,IAAI,EAAU,OAAO,CAAC,EAAE,GAAQ,GAAgB,IAAI,OAAO,CAAM,CAAC,IAAI,CAAS,CAAC,CAAE,CAAC,IAAI,IAAM,KAAK,EAAS,CAA8D,GAA1D,EAAE,gBAA2B,EAAE,mBAA8B,EAAc,IAAI,EAAE,EAAE,EAAE,SAAS,IAAM,EAAM,GAAG,SAAS,gBAAgB,aAAa,CAAC,EAAgB,OAAO,OAAO,CAAK,CAAC,CAAC,KAAK,IAAkB,MAAM,QAAQ,GAAI,MAAM,EAAE,EAAG,OAAO,CAAC,EAAA,CAAgB,KAAK,GAAG,OAAO,GAAG,OAAO,EAAE,CAAC,CAAC,KAAK,GAAG,OAAO,GAAG,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,OAAO,GAAI,OAAO,EAAE,CAAC,CAAC,KAAK,GAAG,OAAO,GAAI,OAAO,EAAE,CAAC,CAAC,KAAK,CAAe,GAAW,EAAI,KAAK,CAAC,IAAI,SAAS,EAAE,KAAK,MAAM,iBAAiB,KAAK,GAAe,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,QAAQ,KAAK,EAAE,YAAY,GAAK,YAAY,GAAqB,IAAI,OAAO,EAAE,EAAE,CAAC,EAAE,OAAO,GAAgB,IAAI,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,OAAO,CAAI,EAAA,CAAG,EAAE,OAAoB,EAA0B,EAAMG,EAAU,CAAC,SAAS,CAAc,EAAM,MAAM,CAAC,KAAK,SAAS,aAAa,OAAO,aAAa,qBAAqB,IAAW,QAAQ,EAAQ,MAAM,CAAC,SAAS,QAAQ,MAAM,EAAE,OAAO,WAAW,QAAQ,OAAO,WAAW,EAAS,UAAU,SAAS,eAAe,EAAS,UAAU,SAAS,QAAQ,EAAS,EAAE,GAAG,WAAW,EAAS,EAAO,OAAO,wBAAwB,eAAe,EAAS,OAAO,YAAY,qBAAqB,EAAS,OAAO,YAAY,UAAU,mCAAmC,WAAW,+BAA+B,UAAU,YAAY,EAAE,SAAS,CAAc,EAAK,QAAQ,CAAC,SAAS;;;;;;;;;;;;;;;;;;;;;aAqBh0F,CAAC,EAAe,EAAM,MAAM,CAAC,QAAQ,GAAG,EAAE,gBAAgB,EAAE,MAAM,CAAC,MAAM,OAAO,SAAS,EAAS,OAAO,IAAI,OAAO,EAAS,OAAO,OAAO,UAAU,EAAS,OAAO,OAErG,WAAW,UAAU,eAAe,cAAc,UAAU,UAAU,OAAO,EAAS,OAAO,aAAa,EAAO,aAAa,aAAa,EAAS,EAAE,GAAG,UAAU,EAAS,OAAO,sEAAsE,QAAQ,EAAE,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAE,UAAU,OAAO,UAAU,+BAA+B,UAAU,YAAY,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,aAAa,IAAI,GAAG,QAAQ,EAAS,cAAc,aAAa,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,SAAS,CAAc,EAAK,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAO,WAAW,SAAS,GAAG,WAAW,IAAI,WAAW,KAAK,cAAc,UAAU,GAAG,GAAW,CAAC,EAAE,SAAS,SAAS,aAAa,WAAW,WAAW,QAAQ,EAAE,MAAM,EAAS,SAAS,CAAQ,CAAC,EAAe,EAAK,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,GAAG,MAAM,EAAO,QAAQ,EAAE,SAAS,EAAI,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,SAAS,IAAI,EAAE,WAAW,CAAC,EAAE,SAAS,CAAC,GAAujC,EAAK,SAAS,CAAC,KAAK,SAAS,aAAa,QAAQ,QAAQ,EAAQ,MAAM,CAAC,IAAI,QAAQ,MAAM,GAAG,OAAO,GAAG,aAAa,IAAI,QAAQ,cAAc,WAAW,SAAS,eAAe,SAAS,OAAO,UAAU,MAAM,EAAO,SAAS,WAAW,sBAAsB,EAAE,aAAa,GAAG,EAAE,cAAc,MAAM,WAAW,EAAO,QAAQ,aAAa,GAAG,EAAE,cAAc,MAAM,WAAW,cAAc,SAAsB,EAAK,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,QAAQ,YAAY,KAAK,OAAO,OAAO,eAAe,YAAY,IAAI,cAAc,QAAQ,eAAe,QAAQ,SAAsB,EAAK,OAAO,CAAC,EAAE,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,oBAAoB,mDAAmD,IAAI,YAAY,QAAQ,GAAG,OAAO,EAAS,cAAc,cAAc,WAAW,UAAU,aAAa,EAAE,EAAE,SAAS,CAAC,GAAQ,UAAU,CAAQ,EAAE,EAA0B,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAE,SAAS,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,cAAc,SAAS,cAAc,YAAY,MAAM,EAAO,UAAU,WAAW,CAAC,EAAE,SAAS,SAAS,CAAC,EAAe,EAAK,QAAQ,CAAC,MAAM,EAAe,SAAS,GAAG,EAAkB,EAAE,OAAO,KAAK,EAAE,YAAY,eAAe,SAAS,EAAW,MAAM,CAAC,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,MAAM,EAAO,WAAW,WAAW,UAAU,OAAO,eAAe,EAAO,aAAa,aAAa,EAAE,QAAQ,WAAW,QAAQ,OAAO,MAAM,OAAO,UAAU,aAAa,QAAQ,EAAW,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAE,cAAc,MAAM,YAAY,EAAO,SAAU,EAAE,OAAO,GAAG,CAAC,EAAE,cAAc,MAAM,YAAY,EAAO,UAAW,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAQ,UAAU,GAAc,EAAI,OAAO,EAAE,GAAQ,QAAQ,EAAI,MAAM,EAAI,MAAM,EAAQ,UAAU,EAAI,QAAQ,iBAAiB,EAAI,QAAQ,EAAQ,EAAE,KAAK,EAAI,MAAM,UAAU,EAAI,QAAQ,IAAA,EAAS,EAAE,EAA0B,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAE,SAAS,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,cAAc,SAAS,cAAc,YAAY,MAAM,EAAO,UAAU,WAAW,CAAC,EAAE,SAAS,OAAO,CAAC,EAAe,EAAK,QAAQ,CAAC,MAAM,EAAa,SAAS,GAAG,GAAgB,EAAE,OAAO,KAAK,EAAE,YAAY,mBAAmB,SAAS,EAAW,MAAM,CAAC,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,MAAM,EAAO,WAAW,WAAW,UAAU,OAAO,eAAe,EAAO,aAAa,aAAa,EAAE,QAAQ,WAAW,QAAQ,OAAO,MAAM,OAAO,UAAU,aAAa,QAAQ,EAAW,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAE,cAAc,MAAM,YAAY,EAAO,SAAU,EAAE,OAAO,GAAG,CAAC,EAAE,cAAc,MAAM,YAAY,EAAO,UAAW,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAQ,QAAQ,GAAY,EAAI,MAAM,GAAY,EAAI,MAAM,EAAQ,OAAO,OAAO,GAAY,EAAI,KAAK,CAAC,CAAC,QAAQ,UAAU,EAAE,IAAI,QAAQ,GAAY,EAAI,QAAQ,EAAS,EAAE,KAAK,GAAY,EAAI,MAAM,OAAO,OAAO,GAAY,EAAI,KAAK,CAAC,CAAC,QAAQ,UAAU,EAAE,IAAI,IAAA,EAAS,EAAE,GAAQ,QAAQ,CAAK,EAAE,GAAQ,QAAQ,CAAS,CAAC,CAAC,CAAC,EAAE,GAA2B,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAE,OAAO,EAAS,cAAc,aAAa,EAAE,SAAS,CAAC,IAAwB,EAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,GAAG,MAAM,UAAU,WAAW,8BAA8B,EAAE,SAAS,EAAS,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,IAAI,CAAC,EAAE,SAAS,CAAc,EAAK,SAAS,CAAC,KAAK,SAAS,SAAS,EAAW,YAAY,CAAC,EAAgB,EAAK,EAAE,GAAa,IAAI,CAAE,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,aAAa,EAAE,OAAO,aAAa,EAAO,aAAa,WAAW,cAAc,MAAM,EAAO,WAAW,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,OAAO,EAAW,UAAU,UAAU,QAAQ,EAAW,GAAG,CAAC,EAAE,SAAS,MAAM,CAAC,EAAe,EAAK,SAAS,CAAC,KAAK,SAAS,SAAS,EAAW,QAAQ,SAAS,CAAC,IAAM,EAAW,IAAS,OAA+B,KAAnB,EAAO,YAAiB,GAAG,CAAC,GAAK,eAAe,CAAC,GAAa,0BAA0B,EAAE,MAAO,CAAC,IAAM,EAAY,IAAe,EAAI,SAAS,EAAI,cAAc,IAAU,EAAU,IAAa,EAAI,OAAO,IAAU,EAAM,CAAC,EAAqJ,GAAhJ,EAAe,KAAK,IAAI,IAAY,EAAM,aAAa,EAAe,KAAK,GAAK,EAAa,KAAK,IAAI,IAAU,EAAM,MAAM,EAAa,KAAK,GAAK,OAAO,KAAK,CAAK,CAAC,CAAC,SAAS,EAAE,CAAC,EAAgB,EAAK,EAAE,MAAO,CAAC,EAAc,EAAI,EAAE,GAAa,IAAI,EAAE,GAAG,CAAC,MAAM,EAAI,eAAe,EAAI,GAAG,CAAK,EAAK,EAAM,eAAe,IAAA,IAAU,GAAgB,EAAM,YAAY,EAAK,EAAM,QAAQ,IAAA,IAAU,GAAc,EAAM,KAAK,EAAE,EAAgB,EAAK,EAAE,GAAa,EAAI,EAAE,eAAe,GAAa,EAAK,EAAE,GAAG,CAAE,OAAO,EAAI,CAAC,GAAa,OAAO,GAAK,SAAS,aAAa,CAAC,CAAE,QAAQ,CAAC,EAAc,EAAK,CAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,aAAa,EAAE,OAAO,OAAO,WAAW,EAAW,UAAU,UAAU,MAAM,UAAU,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,OAAO,EAAW,UAAU,SAAS,EAAE,SAAS,EAAW,UAAU,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAW,CAAC,GAA2B,EAAK,MAAM,CAAC,MAAM,CAAC,OAAO,EAAS,cAAc,cAAc,QAAQ,YAAY,aAAa,GAAG,WAAW,UAAU,OAAO,oBAAoB,MAAM,UAAU,WAAW,+BAA+B,SAAS,GAAG,WAAW,GAAG,EAAE,SAAS,kBAAkB,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,GAAG,WAAW,EAAO,OAAO,QAAQ,EAAS,iBAAiB,gBAAgB,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,WAAW,eAAe,gBAAgB,SAAS,SAAS,IAAI,EAAE,OAAO,EAAE,WAAW,UAAU,OAAO,EAAS,UAAU,UAAU,QAAQ,EAAS,YAAY,YAAY,aAAa,aAAa,EAAO,YAAY,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,WAAW,IAAI,cAAc,SAAS,cAAc,YAAY,MAAM,EAAO,SAAS,EAAE,SAAS,OAAO,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,IAAI,EAAE,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,MAAM,EAAO,QAAQ,EAAE,SAAS,EAAY,SAAS,EAAE,qBAAqB,GAAG,EAAY,OAAO,kBAAkB,EAAY,OAAO,EAAE,IAAI,IAAI,CAAC,EAAE,EAAY,OAAO,GAAG,QAAQ,KAAK,OAAO,EAAI,EAAE,CAAC,EAAe,EAAK,IAAI,CAAC,KAAK,uCAAuC,EAAI,KAAK,OAAO,SAAS,IAAI,sBAAsB,MAAM,CAAC,SAAS,GAAG,WAAW,IAAI,MAAM,EAAO,UAAU,eAAe,MAAM,EAAE,SAAS,WAAW,CAAC,EAAE,KAAkB,EAAM,SAAS,CAAC,KAAK,SAAS,QAAQ,GAAuB,MAAM,CAAC,IAAI,QAAQ,QAAQ,cAAc,WAAW,SAAS,IAAI,EAAE,QAAQ,WAAW,WAAW,EAAO,WAAW,MAAM,UAAU,aAAa,EAAE,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,cAAc,SAAS,OAAO,SAAS,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,cAAc,GAAK,MAAM,CAAC,SAAS,GAAG,WAAW,CAAC,EAAE,SAAS,GAAG,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAY,SAAS,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,GAAG,WAAW,UAAU,QAAQ,GAAG,WAAW,UAAU,aAAa,EAAE,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAO,UAAU,SAAS,GAAG,UAAU,SAAS,WAAW,IAAI,EAAE,SAAS,6CAA6C,CAAC,EAAE,QAAQ,KAAK,OAAO,EAAI,EAAE,CAAC,EAAe,EAAK,IAAI,CAAC,KAAK,uCAAuC,EAAI,KAAK,OAAO,SAAS,IAAI,sBAAsB,MAAM,CAAC,UAAU,SAAS,MAAM,EAAO,UAAU,SAAS,GAAG,WAAW,IAAI,eAAe,MAAM,EAAE,SAAS,6BAA6B,CAAC,EAAE,KAAkB,EAAK,SAAS,CAAC,KAAK,SAAS,QAAQ,GAAuB,MAAM,CAAC,IAAI,QAAQ,OAAO,UAAU,UAAU,SAAS,QAAQ,WAAW,WAAW,EAAO,WAAW,MAAM,UAAU,aAAa,EAAE,SAAS,GAAG,WAAW,IAAI,WAAW,8BAA8B,EAAE,SAAS,UAAU,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,CAAC,EAAE,SAAS,EAAY,IAAI,GAAG,CAA+D,IAAM,EAAK,EAAE,OAAO,CAAC,MAAM,OAAO,GAAG,UAAU,GAAG,SAAS,EAAE,EAAE,SAAS,QAAQ,GAAY,MAAM,GAAY,KAAW,EAAI,EAAE,SAAS,SAAS,EAAE,aAAa,CAAC,EAAE,aAAa,CAAC,EAAE,OAAO,SAAS,EAAE,QAAQ,EAAE,YAAY,eAAe,oBAAoB,OAAoB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,SAAS,eAAe,gBAAgB,IAAI,GAAG,QAAQ,YAAY,WAAW,EAAO,OAAO,OAAO,aAAa,EAAO,aAAa,aAAa,GAAG,UAAU,YAAY,EAAE,SAAS,CAAc,EAAM,SAAS,CAAC,KAAK,SAAS,YAAY,EAAgB,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,QAAQ,OAAO,UAAU,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,SAAS,CAAc,EAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,IAAI,EAAE,SAAS,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,WAAW,IAAI,MAAM,EAAO,WAAW,cAAc,UAAU,SAAS,SAAS,aAAa,WAAW,WAAW,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,EAAK,OAAoB,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,GAAG,WAAW,IAAI,cAAc,SAAS,cAAc,YAAY,QAAQ,UAAU,aAAa,IAAI,WAAW,EAAK,GAAG,MAAM,EAAK,EAAE,EAAE,SAAS,EAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,WAAW,IAAI,MAAM,EAAO,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,QAAqB,EAAK,SAAS,CAAC,KAAK,SAAS,aAAa,eAAe,MAAM,eAAe,QAAQ,GAAG,CAAC,EAAE,gBAAgB,EAAE,EAAmB,EAAE,IAAI,CAAE,EAAE,MAAM,CAAC,IAAI,QAAQ,OAAO,UAAU,MAAM,GAAG,OAAO,GAAG,aAAa,GAAG,QAAQ,cAAc,WAAW,SAAS,eAAe,SAAS,MAAM,EAAO,SAAS,WAAW,CAAC,EAAE,SAAsB,EAAM,MAAM,CAAC,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OAAO,OAAO,eAAe,YAAY,MAAM,cAAc,QAAQ,eAAe,QAAQ,cAAc,GAAK,SAAS,CAAc,EAAK,WAAW,CAAC,OAAO,cAAc,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,+CAA+C,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,kBAAkB,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,wCAAwC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAkB,EAAK,SAAS,CAAC,KAAK,SAAS,QAAQ,GAAG,CAAqB,GAApB,EAAE,gBAAgB,EAAK,EAAE,OAAO,CAAC,IAAM,EAAQ,GAAkB,EAAE,IAAI,EAAE,GAAG,CAAC,EAAQ,CAAC,EAAgB,EAAE,IAAI,EAAE,MAAO,CAAkH,IAAM,IAAvG,IAAS,OAAiC,KAArB,EAAO,cAAc,EAA0B,OAAO,OAAO,YAAY,CAAC,EAAA,CAAyB,IAAI,iBAAiB,GAAG,CAAC,IAAM,EAAI,IAAI,IAAI,EAAO,SAAS,IAAI,EAAE,EAAI,SAAS,EAAM,EAAI,aAAa,IAAI,IAAI,CAAO,EAAE,EAAO,SAAS,KAAK,EAAI,SAAS,CAAE,MAAM,CAAC,EAAO,SAAS,KAAK,GAAG,EAAM,KAAK,mBAAmB,CAAO,GAAI,CAAC,EAAQ,CAAE,MAAM,EAAgB,EAAE,IAAI,CAAG,EAAE,MAAM,CAAC,IAAI,QAAQ,OAAO,UAAU,QAAQ,cAAc,WAAW,SAAS,IAAI,EAAE,QAAQ,WAAW,aAAa,EAAE,OAAO,EAAE,OAAO,aAAa,EAAO,YAAY,cAAc,EAAO,aAAa,MAAM,EAAE,OAAO,EAAO,UAAU,EAAO,WAAW,SAAS,GAAG,WAAW,IAAI,WAAW,+BAA+B,WAAW,CAAC,EAAE,SAAS,CAAG,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,CAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAgC,EAAK,MAAM,CAAC,KAAK,SAAS,aAAa,OAAO,aAAa,4BAA4B,QAAQ,GAAG,CAAI,EAAE,SAAS,EAAE,eAAe,IAAa,MAAM,EAAqB,IAAI,CAAG,EAAE,MAAM,CAAC,SAAS,QAAQ,MAAM,EAAE,OAAO,WAAW,WAAW,wBAAwB,QAAQ,OAAO,WAAW,SAAS,eAAe,SAAS,QAAQ,GAAG,WAAW,8BAA8B,EAAE,SAAsB,EAAM,MAAM,CAAC,MAAM,CAAC,WAAW,EAAO,OAAO,aAAa,GAAG,QAAQ,GAAG,SAAS,IAAI,MAAM,OAAO,UAAU,sEAAsE,QAAQ,OAAO,cAAc,SAAS,IAAI,GAAG,UAAU,YAAY,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAO,WAAW,SAAS,GAAG,WAAW,IAAI,WAAW,IAAI,GAAG,GAAW,CAAC,CAAC,EAAE,SAAS,oBAAoB,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAO,SAAS,SAAS,GAAG,WAAW,IAAI,WAAW,GAAG,EAAE,SAAS,yFAAyF,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,IAAI,GAAG,eAAe,WAAW,UAAU,CAAC,EAAE,SAAS,CAAc,EAAK,SAAS,CAAC,KAAK,SAAS,SAAS,IAAa,KAAK,YAAY,EAAqB,IAAI,EAAE,MAAM,CAAC,IAAI,QAAQ,OAAO,IAAa,KAAmB,UAAd,cAAwB,QAAQ,YAAY,aAAa,GAAG,SAAS,GAAG,WAAW,IAAI,MAAM,EAAO,WAAW,WAAW,cAAc,OAAO,aAAa,EAAO,aAAa,QAAQ,IAAa,KAAQ,EAAH,EAAI,EAAE,SAAS,QAAQ,CAAC,EAAe,EAAK,SAAS,CAAC,KAAK,SAAS,SAAS,IAAa,KAAK,QAAQ,GAAmB,MAAM,CAAC,IAAI,QAAQ,OAAO,IAAa,KAAY,UAAP,OAAiB,QAAQ,YAAY,aAAa,GAAG,SAAS,GAAG,WAAW,IAAI,MAAM,UAAU,WAAW,UAAU,QAAQ,IAAa,KAAQ,EAAH,EAAI,EAAE,SAAS,IAAa,KAAiB,SAAZ,WAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,IAAI,CAAE,CAAC,SAAwB,GAAiB,EAAM,CAAC,IAAM,EAAMJ,GAAc,EAAQ,EAAE,GAAO,OAAO,QAAQ,CAAC,EAAQ,EAAO,EAAE,QAAQK,EAAE,OAAa,EAAW,EAAE,YAAYA,EAAE,WAAiB,EAAQ,EAAE,SAASA,EAAE,QAAc,EAAQ,EAAE,SAASA,EAAE,QAAc,EAAW,EAAE,YAAYA,EAAE,WAAiB,EAAS,EAAE,UAAUA,EAAE,SAAe,EAAU,EAAE,WAAWA,EAAE,UAAgB,EAAU,EAAE,WAAWA,EAAE,UAAgB,EAAUH,GAAgB,EAAM,SAAS,EAAE,EAAM,UAAU,EAAE,WAAWG,EAAE,UAAgB,EAAS,EAAE,UAAUA,EAAE,SAAc,CAAC,EAAM,GAAUJ,EAAS,EAAE,EAAO,CAAC,EAAQ,GAAYA,EAAS,CAAC,CAAC,EAAO,CAAC,EAAQ,GAAYA,EAAS,EAAK,EAAO,CAAC,EAAa,GAAiBA,MAAa,IAAI,GAAG,EAAQ,EAAS,KAAK,IAAI,EAAE,EAAM,UAAU,EAAE,EAAO,CAAC,EAAa,GAAiBA,EAAS,CAAQ,EAAO,CAAC,GAAY,IAAgBA,EAAS,EAAK,EAAO,CAAC,EAAY,GAAgBA,EAAS,EAAK,EAAQ,EAAYE,EAAO,IAAI,EAAQ,EAAcA,EAAO,IAAI,EAAQ,EAAeA,EAAO,EAAK,EAAQ,GAAeA,EAAO,GAAG,CAAC,EAAQ,EAAcA,MAAW,EAAK,EAAQ,EAAeA,EAAO,SAAS,EAAO,CAAC,GAAc,IAAkBF,EAAS,IAAI,EAAO,CAAC,EAAO,IAAWA,EAAS,QAAQ,EAAO,CAAC,EAAQ,IAAYA,EAAS,CAAC,EAAQ,EAAQE,EAAO,IAAI,EAAO,CAAC,GAAe,GAAmBF,EAAS,IAAI,EAAE,MAAc,CAAC,GAAG,CAAC,EAAQ,QAAQ,OAAO,IAAM,EAAG,IAAI,eAAe,GAAS,CAAC,IAAI,IAAM,KAAK,EAAQ,EAAkB,EAAE,YAAY,KAAK,CAAE,CAAC,EAA8B,OAA5B,EAAG,QAAQ,EAAQ,OAAO,MAAY,EAAG,WAAW,CAAE,EAAE,CAAC,CAAC,EAAE,IAAM,EAAS,IAAgB,EAAM,kBAAkB,KAAK,MAAc,CAAC,EAAgB,CAAQ,EAAE,EAAc,QAAQ,KAAK,EAAe,EAAK,EAAE,EAAe,QAAQ,SAAU,EAAE,CAAC,EAAM,CAAQ,CAAC,EAAE,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAS,GAAG,CAAC,IAAM,EAAO,EAAE,OAAO,EAAS,OAAO,GAAQ,OAAQ,SAAS,EAAO,MAAM,EAAE,CAAE,EAAmE,OAAjE,EAAO,iBAAiB,+BAA+B,CAAQ,MAAY,EAAO,oBAAoB,+BAA+B,CAAQ,CAAE,EAAE,CAAC,CAAC,EAE3+hB,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAO,GAAG,CAAC,IAAM,EAAG,EAAE,QAAQ,WAAc,OAAO,GAAK,UAAU,IAAI,EAAO,SAAS,KAAK,4BAA4B,IAAM,EAAyD,OAAvD,EAAO,iBAAiB,uBAAuB,CAAM,MAAY,EAAO,oBAAoB,uBAAuB,CAAM,CAAE,EAAE,CAAC,CAAC,EAKrV,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAU,GAAG,CAAC,IAAM,EAAW,EAAE,QAAQ,WAAe,GAAkB,EAAW,GAAM,EAAK,IAAI,GAAK,CAAC,GAAG,CAAC,MAAM,QAAQ,EAAI,KAAK,GAAG,EAAI,MAAM,SAAS,EAAE,OAAO,EAAI,IAAM,EAAU,EAAI,MAAM,OAAO,GAAG,OAAO,EAAE,EAAE,IAAI,OAAO,CAAU,CAAC,EAAoD,OAA/C,EAAU,SAAS,EAAI,MAAM,OAAc,EAAU,CAAC,GAAG,EAAI,MAAM,CAAS,CAAE,CAAC,CAAC,CAAE,EAA+D,OAA7D,EAAO,iBAAiB,0BAA0B,CAAS,MAAY,EAAO,oBAAoB,0BAA0B,CAAS,CAAE,EAAE,CAAC,CAAC,EAAwE,MAAc,CAAI,EAAa,QAAQ,IAAI,EAAa,SAAiB,EAAM,iBAAiB,OAAQ,EAAW,CAAC,CAAC,GAAG,QAAQ,UAAU,qBAAqB,MAAM,yBAAyB,QAAQ,oBAAoB,MAAM,mBAAmB,WAAW,YAAY,MAAM,CAAC,CAAC,GAAG,UAAU,OAAO,OAAO,OAAO,OAAO,kBAAkB,KAAK,eAAe,EAAI,CAAC,CAAC,EAAE,CAAC,GAAG,QAAQ,UAAU,gBAAmB,MAAM,yBAAyB,QAAQ,gBAAgB,MAAM,mBAAmB,WAAW,UAAU,MAAM,CAAC,CAAC,GAAG,UAAU,OAAO,OAAO,OAAO,OAAO,kBAAkB,KAAK,eAAe,EAAI,EAAE,CAAC,GAAG,UAAU,OAAO,OAAO,OAAO,MAAM,kBAAkB,KAAK,eAAe,EAAI,CAAC,CAAC,EAAE,CAAC,GAAG,QAAQ,UAAU,eAAe,MAAM,6BAA6B,QAAQ,qBAAqB,MAAM,oBAAoB,WAAW,YAAY,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,QAAQ,UAAU,cAAc,MAAM,uBAAuB,QAAQ,eAAe,MAAM,mBAAmB,WAAW,UAAU,MAAM,CAAC,CAAC,GAAG,UAAU,OAAO,OAAO,OAAO,OAAO,kBAAkB,KAAK,eAAe,EAAI,EAAE,CAAC,GAAG,UAAU,OAAO,OAAO,OAAO,OAAO,kBAAkB,KAAK,eAAe,EAAI,EAAE,CAAC,GAAG,UAAU,OAAO,OAAO,OAAO,OAAO,kBAAkB,KAAK,eAAe,EAAI,CAAC,CAAC,CAAC,CAAC,EAAQ,EAAW,CAAC,CAAC,EAAG,EAAW,EAAK,EAAE,EAAE,CAAC,EAAM,cAAc,CAAC,EAK/3D,IAAM,GAAQ,GAAK,GAAK,OAAO,cAAc,WAAW,KAAK,OAAO,GAAK,SAAS,EAAE,CAAC,EAAQ,EAASE,EAAO,CAAC,EAAE,MAAc,CAI/H,GAAG,EAAa,QAAQ,IAAI,EAAa,OAAO,OAAO,IAAM,EAAI,EAAE,EAAS,QAAY,EAAU,GAAY,EAAW,IAAI,gBA6CyrB,OAA9F,SA7CxjB,CAAC,IAAM,EAAM,EAAM,UAAU,GAAS,EAAE,EAAM,KAAK,EAE5K,GAAG,EAAE,OAAO,EAAE,CAAI,IAAM,EAAS,UAAS,EAAW,CAAC,CAAC,EAAE,EAAW,EAAK,EAAE,EAAe,EAAK,EAAE,EAAc,QAAQ,MAAM,MAAO,CAAC,IAAM,EAAS,KAAK,IAKhJ,EAAa,IAAS,QAAa,EAAO,2BAA2B,CAAC,EAAY,IAAS,SAAa,EAAO,0BAA0B,GAAO,IAAM,EAAY,EAAM,GAAgB,EAAY,GAAa,KAAK,IAAI,EAAE,EAAY,GAAG,IAAuB,GAAa,MAAM,QAAQ,GAAa,IAAM,EAAS,UAAS,EAAW,EAAY,IAAI,EAAE,EAAW,EAAK,GAA6b,IAAM,EAAI,MAAM,SAA/a,CAAC,IAAM,EAAQ,KAAK,IAAI,EAAE,KAAM,KAAK,IAAI,EAAE,EAAQ,KAAI,CAAC,GAAG,EAAU,OAAO,KAAK,IAAM,EAAI,EAAO,YAAkB,EAAK,EAAO,aAAa,IAAI,GAAK,iBAAiB,GAAK,gBAAgB,GAAM,WAAY,GAAG,CAAmC,GAAG,MAArB,EAAK,WAAW,EAAS,OAAO,CAAI,MAAM,CAAC,CAAE,MAAM,IAAI,QAAQ,GAAG,WAAW,EAAE,EAAE,CAAC,CAAE,CAAC,OAAO,EAAO,aAAa,iBAAiB,EAAO,aAAa,cAAc,EAAO,YAAY,IAAK,EAAkB,CAAY,EAA8C,GAAzC,GAAW,IAAM,EAAS,SAAkB,CAAC,GAAK,iBAAiB,CAAC,GAAK,cAAc,QAAU,CAAC,GAAa,MAAM,QAAQ,CAAC,IAAY,EAAW,EAAI,EACv+B,IAAM,EAAc,GAAG,CAAC,OAAO,EAAP,CAAU,IAAI,SAAS,MAAM,UAAU,IAAI,OAAO,MAAM,UAAU,IAAI,WAAW,MAAM,gBAAgB,QAAQ,MAAM,OAAQ,CAAC,EAAQ,EAAG,KAAK,IAAI,EAAM,EAAU,CAAC,EAAM,EAAW,KAAS,EAAU,CAAC,EAAM,EAAY,KAAS,EAAc,EAAQ,CAAC,EAAQ,EAAY,EAAO,gBAAmB,GAAa,OAAO,GAAc,WAAU,EAAQ,GAAa,GAAG,CAAC,IAAM,EAAY,EAAE,QAAQ,GAAG,EAAI,gBAAgB,EAAI,gBAAgB,EAAE,EAAW,OAAO,CAAC,UAAU,EAAI,CAAC,EAAE,EAAI,cAAc,CAAC,MAAM,MAAM,QAAM,OAAO,EAAW,OAAO,UAAU,EAAI,CAAC,EAAQ,EAAQ,OAAO,KAAK,CAAO,CAAC,CAAC,OAAO,GAAG,CAAC,EAAI,QAAQ,QAAQ,QAAQ,IAAI,EAAE,EAAI,QAAQ,EAAW,MAAM,EAAE,EAAU,EAAO,uBAA6C,EAAY,GAAW,KAAK,IAAI,EAAE,EAAU,GAAnD,GAAG,IAA4D,EAAU,KAAK,KAAK,GAAK,CAAC,EAAQ,GAAS,MAAM,QAAQ,IAAI,CAAC,EAAY,CAAO,CAAC,EAGh4B,GAHk4B,EAAU,GAAS,MAAM,CAAC,EAAE,EAAW,EAAE,QAAQ,EAAE,KAAK,GAAS,YAAY,OAAO,EAAQ,WAAW,EAAE,KAGx+B,EAAE,QAAQ,GAAG,EAAU,SAAS,GAAG,EAAI,cAAe,GAAG,CAAC,IAAI,EAAI,CAAC,EAAM,EAAI,KAAK,IAAI,IAAI,EAAK,EAAE,EAAK,GAAa,KAAW,IAAM,EAAS,SAArC,IAAO,CAA4C,IAAM,EAAI,MAAM,EAAI,cAAc,CAAC,MAAM,MAAM,MAAM,IAAI,GAAG,EAAI,CAAC,OAAO,CAAG,EAAE,CAAC,EAAE,UAAU,GAAK,OAAO,EAAW,MAAM,CAAC,EAA2D,GAAzD,EAAI,EAAI,OAAO,GAAK,MAAM,CAAC,CAAC,EAAE,EAAI,GAAK,aAAa,KAAQ,CAAC,EAAI,KAAM,CAAC,IAAM,EAAO,EAAE,YAAY,EAAE,EAAU,EAAI,OAAO,GAAG,CAAC,IAAM,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,YAAY,EAAQ,EAAO,MAAM,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,IAAI,GAAG,OAAO,GAAG,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,SAAS,CAAM,GAAG,EAAO,KAAK,GAAG,EAAE,SAAS,CAAM,CAAC,CAAE,CAAC,CAAE,OAAO,EAAG,CAAI,CAAC,GAAQ,CAAE,GAAG,CAAC,GAAU,QAAQ,KAAK,0DAA0D,CAAE,CAAE,CAA8D,GAA5D,EAAU,MAAM,QAAQ,CAAW,EAAE,EAAY,MAAM,EAAE,CAAC,EAAK,GAAS,MAAM,CAAC,IAAI,IAAM,KAAK,EAAQ,MAAO,EAAQ,OAAO,EAAE,EAAE,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,EAAG,EAAO,gBAAgB,CAAQ,CAAC,OAAO,EAAI,CAAC,GAAG,GAAQ,CAAG,GAAG,EAAU,OAAO,QAAQ,MAAM,0DAA0D,KAAK,IAAI,EAAE,EAAG,MAAM,CAAG,EAAK,IAAM,EAAS,UAAS,EAAW,EAAK,EAAM,EAAM,EAAS,EAAE,MAAM,SAAQ,EAAW,CAAC,CAAC,EAAE,GAAW,GAAG,EAAE,CAAC,IAAI,MAAO,CAAC,GAAG,GAAW,IAAM,EAAS,QAAQ,OAYlyC,GAAG,CAAC,GAAG,OAAO,aAAe,IAAY,CAAC,IAAM,EAAO,IAAI,IAAI,EAAU,IAAI,GAAG,OAAO,EAAE,EAAE,CAAC,CAAC,EAAQ,EAAI,KAAK,IAAI,EAA6C,EAAQ,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,aAAa,OAAO,IAAI,CAAC,IAAM,EAAE,aAAa,IAAI,CAAC,GAAG,GAAO,KAAE,WAAW,kBAAkB,EAAW,GAAG,CAAC,IAAM,EAAI,aAAa,QAAQ,CAAC,EAAE,GAAG,CAAC,EAAI,SAAS,IAAM,EAAE,KAAK,MAAM,CAAG,EAA6D,GAAxD,CAAC,GAAG,CAAC,EAAE,IAAe,EAAO,IAAI,OAAO,EAAE,EAAE,CAAC,GAAc,EAAE,QAAQ,EAAE,SAAS,QAAQ,SAAS,IAAM,EAAK,EAAE,SAAS,eAAe,UAAU,CAAC,EAAE,GAAG,GAAiB,CAAI,GAAG,GAAoB,CAAI,EAAE,CAAC,EAAQ,KAAK,CAAC,EAAE,QAAS,CAAC,GAAG,GAAsB,CAAC,EAAE,CAAC,EAAQ,KAAK,CAAC,EAAE,QAAS,CAAC,IAAM,EAAY,CAAC,EAAE,OAAO,EAAK,YAAY,EAAE,CAAC,CAAC,KAAK,GAAG,OAAO,EAAK,WAAW,EAAE,CAAC,CAAC,KAAK,GAAG,OAAO,EAAK,cAAc,EAAE,CAAC,CAAC,KAAK,GAAG,OAAO,EAAK,OAAO,EAAE,CAAC,CAAC,KAAK,GAAG,OAAO,EAAK,cAAc,EAAE,CAAC,CAAC,KAAK,GAAS,EAAK,OAAO,EAAE,YAAY,GAAG,EAAgD,EAAU,KAAK,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,CAAC,GAAa,EAAK,GAAG,GAAW,EAAI,EAAU,OAAe,CAAC,EAAQ,KAAK,CAAC,EAAE,QAAS,CAC7iC,GAAG,CAAC,GAAa,EAAK,EAAE,SAAoD,IAAM,GAApC,EAAE,SAAS,gBAAgB,CAAC,EAAA,CAAsB,aAAa,CAAC,EAAQ,EAAQ,OAAO,OAAO,CAAM,CAAC,CAAC,KAAK,IAAkB,MAAM,QAAQ,GAAI,MAAM,EAAE,EAAG,OAAO,CAAC,EAAA,CAAgB,KAAK,GAAG,OAAO,GAAG,OAAO,EAAE,CAAC,CAAC,KAAK,GAAG,OAAO,GAAG,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,OAAO,GAAI,OAAO,EAAE,CAAC,CAAC,KAAK,GAAG,OAAO,GAAI,OAAO,EAAE,CAAC,CAAC,KAAK,CAAG,EAAE,GAAG,CAAC,EAAE,mBAAmB,CAAC,GAAS,EAAK,EAAE,CAAC,EAAQ,KAAK,CAAC,EAAE,QAAS,CAAC,EAAU,KAAK,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,MAAM,OAAO,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,OAAO,QAAQ,aAAa,EAAK,oBAAoB,EAAE,sBAAsB,EAAE,aAAY,OAAO,EAAE,WAAW,GAAQ,MAAM,WAAW,EAAE,SAAS,aAAa,GAAG,YAAY,EAAE,SAAS,cAAc,GAAG,QAAQ,EAAE,SAAS,CAAC,EAAE,WAAW,EAAE,YAAY,IAAI,KAAK,CAAA,CAAE,YAAY,EAAE,WAAW,EAAE,YAAY,IAAI,KAAK,CAAA,CAAE,YAAY,CAAC,CAAC,CAAE,MAAM,CAAgD,EAAQ,KAAK,CAAC,CAAE,CAAC,CAAC,IAAI,IAAM,KAAK,EAAS,GAAG,CAAC,aAAa,WAAW,CAAC,CAAE,MAAM,CAAC,CAAK,EAAQ,OAAO,GAAG,GAAY,6DAA6D,CAAC,MAAM,EAAQ,MAAM,CAAC,CAAG,CAAC,OAAO,EAAE,CAAC,QAAQ,KAAK,qDAAqD,CAAC,CAAE,CAEjoC,IAAM,EAAiB,CAAC,EAAQ,EAAgB,CAAC,EAAE,IAAI,IAAM,KAAK,EAAU,CAAC,IAAM,EAAS,GAAG,SAAS,eAAe,SAA2F,GAA/E,IAAW,GAAiB,CAAQ,GAAG,GAAoB,CAAQ,IAAe,GAAsB,CAAC,EAAE,SAAS,IAAM,EAAO,EAAE,oBAA0B,EAAU,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,MAAM,OAAO,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,OAAO,EAAc,EAAE,MAAM,EAAE,aAAa,OAAO,EAAE,YAAY,GAAG,EAAE,WAAW,EAAE,WAAW,WAAW,EAAE,WAAW,cAAc,EAAE,aAAa,GAAG,WAAW,EAAE,YAAY,GAAG,YAAY,EAAE,aAAa,GAAG,kBAAkB,EAAE,mBAAmB,KAAK,QAAQ,EAAE,SAAS,CAAC,EAAE,gBAAgB,EAAE,QAAQ,EAAE,EAAmD,GAArC,GAAG,SAAS,gBAAgB,CAAC,EAAA,CAAoB,aAAa,CAAC,EAAQ,EAAgB,OAAO,OAAO,CAAK,CAAC,CAAC,KAAK,IAAkB,MAAM,QAAQ,GAAI,MAAM,EAAE,EAAG,OAAO,CAAC,EAAA,CAAY,KAAK,GAAG,OAAO,GAAG,OAAO,EAAE,CAAC,CAAC,KAAK,GAAG,OAAO,GAAG,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAS,GAAY,GAAQ,OAAO,GAAI,OAAO,EAAE,CAAC,CAAC,KAAK,GAAG,OAAO,GAAI,OAAO,EAAE,CAAC,CAAC,KAAK,EAAI,EAAqB,YAAO,EAAE,QAAQ,OAAO,IAAI,SAAS,CAAC,EAAE,mBAAmB,CAAC,IAAkB,OAAO,EAAE,YAAY,GAAG,GAAG,GAA2B,IAAG,GAAQ,KAAK,CAAC,IAAM,EAAI,OAAO,CAAM,EAAM,EAAiB,KAAK,EAAiB,GAAK,CAAC,GAAE,EAAiB,EAAI,CAAC,KAAK,CAAS,CAAE,MAAM,GAAG,EAAE,SAAS,QAAQ,CAGhyC,IAAM,EAAE,GAAG,SAAS,eAAe,UAAU,CAAC,GAAuB,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC,KAAK,GAAG,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,KAAK,GAAG,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC,KAAK,GAAG,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,GAAG,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC,KAAK,IAAkB,EAAgB,KAAK,CAAC,IAAE,KAAK,CAAS,CAAC,CAAE,EAAC,CAKlT,IAAM,EAAO,EAAE,YAAY,EAAQ,EAAY,IAAI,IAAI,IAAI,GAAK,CAAC,IAAE,UAAQ,EAAgB,CAAC,IAAM,EAAE,GAAG,SAAS,eAAe,UAAU,CAAC,EAA8F,EAAK,CAArF,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC,KAAiE,EAA/C,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,KAA4B,CAAC,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,KAAK,GAAG,EAAQ,EAAQ,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC,KAAK,EAAQ,EAAM,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAQ,EAAM,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC,KAAK,EAAQ,EAAY,SAAS,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAU,EAAS,GAAM,GAAS,GAAO,GAAG,GAAG,CAAC,GAAU,IAAW,EAAY,SACpgB,IAAM,EAAS,EAAM,YAAY,EAAQ,EAAY,EAAM,QAAQ,OAAO,EAAE,EAAQ,EAAQ,EAAK,YAAY,EAAQ,EAAW,EAAQ,YAAY,EAAQ,EAAY,EAAS,KAAK,IAAW,EAAY,KAAK,IAAc,GAAS,EAAW,MAAM,EAAQ,GAAG,IAAa,EAAQ,KAAK,IAAU,MAAM,EAAE,KAAW,EAAS,EAAY,IAAI,CAAW,EAAE,GAAG,EAAS,CAAC,EAAS,MAAM,KAAK,CAAI,EAA6D,CAAC,EAAS,OAAO,IAAM,EAAS,MAAM,GAAS,CAAC,EAAS,SAAS,IAAQ,EAAS,QAAQ,GAAW,CAAC,EAAS,OAAO,IAAM,EAAS,MAAM,GAAS,EAAS,UAAU,WAAW,QAAQ,GAAG,CAAC,EAAK,WAAW,QAAQ,GAAG,IAAU,EAAS,UAAU,GAErtB,IAAM,EAAO,KAAK,MAAM,EAAS,OAAO,WAAW,EAAE,GAAG,GAAe,KAAK,MAAM,EAAE,YAAY,EAAE,GAAG,IAAa,IAAQ,EAAS,OAAO,CAAC,WAAW,EAAE,GAAG,YAAY,OAAO,EAAE,YAAY,GAAG,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,QAAS,CAAC,EAAY,IAAI,EAAY,CAAC,GAAG,SAAS,EAAE,KAAK,UAAU,EAAS,MAAM,GAAO,KAAK,QAAQ,GAAS,KAAK,MAAM,GAAO,KAAK,QAAQ,KAAK,KAAK,GAAG,MAAM,CAAC,CAAI,EAAE,OAAO,CAAC,WAAW,EAAE,GAAG,YAAY,OAAO,EAAE,YAAY,GAAG,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,CAAC,CAAE,CAAC,IAAM,EAAgB,MAAM,KAAK,EAAY,OAAO,CAAC,CAAC,CAAC,OAAO,GAAK,CAAC,GAAiB,CAAG,CAAC,CAAC,CAAC,OAAO,GAAM,CAAI,GAA6B,CAAC,EAAI,UAAU,EAAI,MAAM,EAAI,QAAQ,EAAI,KAAK,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,YAAuB,CAAC,CAAC,SAAS,CAAM,CAAG,EAGxuB,EAAuB,GAAG,CAAC,IAAM,EAAK,GAAG,OAAO,GAAG,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,QAAQ,oBAAoB,EAAE,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,QAAQ,mBAAmB,EAAE,CAAC,CAAC,QAAQ,cAAc,GAAG,CAAC,CAAC,KAAK,EAAQ,EAAK,EAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,EAAQ,EAAQ,EAAK,EAAE,SAAS,EAAE,YAAY,EAAmkB,OAApjB,MAAM,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,IAAI,GAAG,OAAO,GAAG,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,EAAA,CAAqB,OAAO,OAAO,CAAC,CAAC,KAAK,GAAG,EAAga,CAAjZ,mBAAmB,iBAAiB,eAAe,iBAAiB,iBAAiB,kBAAkB,mBAAmB,gBAAgB,qBAAqB,kBAAsP,CAAC,CAAC,SAAS,CAAI,GAAG,CAA/N,qBAAqB,yBAAyB,mBAAmB,mBAAmB,iBAAiB,cAAc,kBAAkB,qBAAqB,iBAAiB,qBAAgE,CAAC,CAAC,SAAS,CAAO,CAAE,EAAQ,EAAO,GAAG,CAAC,IAAM,GAAc,EAAE,QAAQ,CAAC,EAAA,CAAG,KAAK,GAAG,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAA,CAAG,EAAE,EAAE,OAAO,GAAS,GAAc,EAAE,QAAQ,CAAC,EAAA,CAAG,KAAK,GAAG,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAA,CAAG,EAAE,EAAE,OAAO,GAAS,EAAM,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,EAExpC,EAAS,EAAQ,OAAO,EAAE,QAAQ,GAAS,EAAU,GAAU,OAAO,EAAE,SAAS,IAAI,EAAE,WAAW,IAAU,EAAW,GAAU,OAAO,GAAG,MAAM,CAAC,GAAG,OAAO,EAAE,EAAE,EAAE,UAAU,OAAO,EAAE,MAAM,EAAE,EAAE,WAAW,EAAM,IAAI,GAAG,UAAU,EAAM,OAAO,EAAE,EAAM,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,GAAG,MAAM,GAAc,KAAK,QAAQ,EAAE,mBAAmB,KAAK,aAAa,EAAE,mBAAmB,GAAG,MAAM,GAAc,KAAK,QAAQ,KAAK,KAAK,GAAG,WAAW,EAAU,YAAY,EAAW,SAAS,EAAE,UAAU,KAAK,MAAM,EAAiB,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC,CAAE,EAAE,EAAc,QAAQ,GAAG,EAAuB,CAAC,GAAG,GAAiB,CAAC,EAAE,GAAe,QAAQ,EAAO,IAAM,EAAgB,EAAU,OAAO,GAAG,CAAC,EAAc,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAM,EAAE,GAAG,GAAW,IAAM,EAAS,QAAQ,OAAO,IAAM,EAAS,EAAO,0BAA0B,CAAC,EAAE,EAAO,yBAAyB,EAAS,IAAM,GAAW,EAAO,4BAA4B,CAAC,EAAE,EAAO,2BAA2B,GAAW,IAAM,GAAW,GAAgB,EAAQ,EAAc,EAAgB,IAAI,GAAG,CAAC,IAAM,EAAI,EAAE,SAAS,EAAS,EAAE,IAAU,EAAI,GAAW,EAAE,IAAU,EAAO,GAAW,OAAO,EAAE,EAAE,GAAS,EAAM,GAAQ,KAAK,IAAI,EAAE,EAAO,GAAG,GAAa,MAAM,CAAC,GAAG,EAAE,QAAQ,GAAK,EAAE,QAAQ,aAAa,GAAK,EAAE,aAAa,WAAW,GAAK,MAAM,EAAE,WAAW,YAAY,GAAK,OAAO,EAAE,YAAY,SAAS,GAAK,IAAI,EAAE,SAAS,MAAM,EAAM,GAA4B,EAAE,OAAO,CAAC,EAAE,EAAO,IAAI,EAAE,EAAE,KAAK,CAAE,CAAC,EAAQ,EAAS,CAAC,GAAG,EAAgB,GAAG,CAAa,EAAE,EAAc,QAAQ,EAAW,EAAe,CAAC,CAAC,CAAU,EAAE,EAAW,EAAK,EAAE,EAAW,CAAQ,EAAE,GAAW,GAAG,EAAE,CAAC,EAE9jD,EAAS,OAAO,EAAG,EAAM,GAAU,CAAC,GAAG,KAAK,IAAI,EAAE,KAAK,CAAQ,EAAQ,OAAO,EAAM,GAC1E,EAAI,eAAe,GAAa,KAAM,EAAS,cAAc,CAAC,MAAM,MAAM,OAAO,EAAW,MAAM,CAAC,CAAC,CAAC,KAAK,GAAS,CAAC,GAAG,GAAW,IAAM,EAAS,QAAQ,OAAO,IAAM,EAAS,MAAM,QAAQ,GAAS,IAAI,EAAE,EAAQ,KAAK,CAAC,EAAE,EAAO,uBAAuB,CAAC,GAAG,KAAK,IAAI,EAAE,KAAK,CAAQ,EAAE,EAAW,GAAM,CAAC,IAAM,EAAO,GAA0B,EAAK,EAAS,CAAa,EAAmE,OAA9D,EAAO,OAAO,IAAG,EAAM,GAAU,CAAC,GAAG,KAAK,IAAI,EAAE,KAAK,CAAM,GAAU,CAAO,CAAC,CAAE,CAAC,CAAC,CAAC,MAAM,GAAK,CAAK,GAAQ,CAAG,GAAG,QAAQ,KAAK,0DAA0D,CAAG,CAAG,CAAC,EAAW,MAAM,QAAQ,CAAW,IAAG,EAAO,uBAAuB,CAAC,GAAG,GAAW,IAAI,KAAK,IAAI,EAAE,KAAK,CAAW,EAAG,EAAO,CAAI,CAAC,CAAC,MAAM,GAAK,CAAK,GAAQ,CAAG,GAAE,QAAQ,MAAM,gCAAgC,CAAG,CAAE,CAAC,MAAY,CAAC,EAAU,GAAK,EAAW,MAAM,CAAE,CAAE,EAAE,CAAC,EAAM,EAAM,QAAQ,CAAC,EAAE,IAAM,GAAK,CAAC,MAAM,OAAO,QAAQ,OAAO,cAAc,SAAS,IAAI,GAAG,UAAU,YAAY,EAAQ,GAAO,CAAC,QAAQ,OAAO,WAAW,SAAS,eAAe,gBAAgB,QAAQ,OAAO,EAAQ,GAAK,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,GAAG,MAAM,MAAM,EAAQ,GAAU,KAAK,IAAI,EAAE,EAAM,eAAe,EAAE,EAAQ,GAAS,KAAK,IAAI,IAAI,EAAM,cAAc,GAAG,EAG7tC,EAAcG,MAAY,CAAC,GAAG,IAAS,SAAS,OAAO,EAAQ,IAAM,EAAK,GAAG,OAAO,GAAG,EAAE,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,QAAQ,OAAO,iBAAiB,IAAI,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,EAAQ,EAAI,EAAQ,MAAM,EAAE,GAAG,IAAS,OAAQ,EAAI,MAAM,EAAE,IAAI,EAAK,EAAE,SAAS,CAAC,CAAC,cAAc,EAAK,EAAE,SAAS,CAAC,CAAC,OAAQ,GAAG,IAAS,UAAW,EAAI,MAAM,EAAE,IAAI,CAAC,IAAM,EAAG,EAAK,EAAE,OAAO,EAAQ,EAAG,EAAK,EAAE,OAAO,EAA0C,MAArC,CAAC,GAAI,EAAU,EAAK,GAAI,CAAC,EAAS,GAAU,EAAG,cAAc,CAAE,CAAE,CAAC,OAAQ,GAAG,IAAS,QAAQ,CAC3c,IAAM,EAAQ,GAAG,GAAG,QAAQ,MAAM,QAAQ,GAAG,KAAK,GAAG,EAAE,MAAM,KAAK,GAAG,GAAG,SAAS,OAAO,EAAE,EAAI,MAAM,EAAE,IAAI,CAAC,IAAM,EAAG,IAAQ,CAAC,EAAY,EAAG,IAAQ,CAAC,EAA8B,OAArB,IAAK,EAAuB,EAAK,EAAE,SAAS,CAAC,CAAC,cAAc,EAAK,EAAE,SAAS,CAAC,EAA9D,EAAG,CAA6D,CAAC,CAAE,CAAC,OAAO,CAAI,EAAE,CAAC,EAAQ,CAAM,CAAC,EAAQ,EAAYA,MAAY,EAAc,MAAM,EAAE,CAAY,EAAE,CAAC,EAAc,CAAY,CAAC,EAAQ,GAAc,EAAY,IAAI,GAAG,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,EAE5a,MAAc,CAAwD,GAApD,EAAa,QAAQ,IAAI,EAAa,QAAwB,IAAS,OAAY,OAAO,GAAG,CAAC,GAAc,CAAC,EAAgB,IAAI,GAAG,EAAE,MAAO,CAAC,IAAM,EAAI,EAAO,YAAY,GAAG,CAAC,GAAK,kBAAkB,CAAC,GAAK,YAAY,OAAO,IAAI,EAAU,GAAY,EAAW,IAAI,gBAAsB,EAAS,EAAO,0BAA0B,CAAC,EAAE,EAAO,yBAAyB,EAAS,IAAM,EAAW,EAAO,4BAA4B,CAAC,EAAE,EAAO,2BAA2B,EAAW,IAAM,EAAW,GAAgB,EAAQ,EAAK,EAAY,OAAO,GAAG,QAAQ,KAAK,OAAO,EAAE,EAAE,CAAC,CAAC,EAAQ,EAAQ,IAAI,IAAI,IAAI,IAAM,KAAK,EAAK,CAAC,IAAM,EAAO,EAAW,OAAO,EAAE,EAAE,GAAS,EAAW,GAAQ,KAAK,IAAI,EAAE,EAAO,GAAG,GAAmB,EAAY,CAAC,EAAE,SAAS,CAAC,EAAS,EAAE,KAAO,CAAC,GAAY,IAAY,EAAQ,IAAI,OAAO,EAAE,EAAE,CAAC,CAAE,CAA0B,GAAzB,EAAgB,CAAO,EAAK,EAAQ,OAAO,EAAE,OAAO,IAAM,GAAU,EAAG,IAAQ,CAAC,EAAW,GAAM,EAAK,IAAI,GAAG,OAAO,EAAE,EAAE,IAAI,OAAO,CAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAK,EAAE,CAAC,CAAC,CAAE,EAAi3D,OAAhI,GAAa,MAAM,KAAK,CAAO,EAAE,GAAoB,KAAhxD,IAAI,CAAC,GAAG,EAAU,OAAO,IAAM,EAAI,EAAK,KAAK,GAAG,OAAO,EAAE,EAAE,IAAI,CAAE,EAAE,GAAG,CAAC,EAAI,OAAO,IAAM,EAAO,EAAW,GAAU,EAAW,GAAQ,KAAK,IAAI,EAAE,EAAO,GAAG,GAAa,GAAG,CAAC,GAAY,EAAI,iBAAkB,GAAG,CAAqE,IAAM,EAAK,GAAoB,MAAnF,EAAI,iBAAiB,EAAG,CAAC,OAAO,EAAW,MAAM,CAAC,CAAoC,EAAE,EAAW,GAAI,CAAC,GAAG,KAAK,IAAI,EAAE,KAAK,CAAI,EAAE,EAAS,EAAG,CAAC,MAAM,GAA4B,EAAI,OAAO,CAAC,EAAE,CAAI,CAAC,CAAC,CAAE,OAAO,EAAI,CAAI,GAAe,CAAG,EAAG,MAAM,GAAQ,IAAI,EAAW,GAAK,OAAO,cAAc,CAAC,WAAW,KAAK,OAAO,GAAK,SAAS,EAAE,CAAC,GAAG,QAAQ,KAAK,wDAAwD,EAAG,CAAG,CAAG,MAAU,GAAY,GAAQ,EAAS,EAAG,CAAC,MAAM,GAA4B,EAAI,OAAO,CAAC,EAAE,EAAO,IAAI,CAAC,CAAC,EAAM,MAA+D,IAA5B,CAAC,EAAI,SAAS,CAAC,EAAS,IAAoB,EAAI,YAAa,GAAG,CAAC,IAAM,EAAI,MAAM,EAAI,YAAY,EAAG,EAAW,MAAM,EAAQ,EAAQ,GAAK,cAAc,MAAM,GAAK,QAAQ,mBAAmB,GAAM,IAAQ,EAAS,GAAI,GAAQ,IAAM,EAAI,GAAK,QAAQ,SAAS,GAAG,GAAK,KAAK,CAAwC,IAAM,GAAjC,EAAO,iBAAiB,CAAC,EAAA,CAAkB,OAAO,CAAG,GAAG,EAAW,GAAI,CAAC,KAAK,GAAK,OAAO,EAAI,IAAI,IAAM,IAAI,MAAM,GAAK,OAAO,GAAG,GAAG,CAAG,CAAE,CAAC,IAAM,EAAI,EAAW,GAAI,EAAS,EAAG,CAAC,QAAQ,GAAS,EAAI,QAAQ,aAAa,GAAS,EAAI,aAAa,WAAW,GAAK,MAAM,EAAI,WAAW,YAAY,GAAK,OAAO,EAAI,YAAY,SAAS,GAAK,IAAI,EAAI,QAAQ,CAAC,CAAE,OAAO,EAAI,CAAI,GAAe,CAAG,EAAG,MAAM,GAAQ,IAAI,EAAW,GAAK,OAAO,cAAc,CAAC,WAAW,KAAK,OAAO,GAAK,SAAS,EAAE,CAAC,GAAG,QAAQ,KAAK,mDAAmD,EAAG,CAAG,CAAG,CAAM,GAAW,EAAgB,GAAM,CAAC,GAAG,CAAC,EAAK,IAAI,CAAE,EAAE,OAAO,EAAK,IAAM,EAAK,IAAI,IAAI,CAAI,EAAkB,OAAhB,EAAK,OAAO,CAAE,EAAS,CAAK,CAAC,CAA3H,CAA8H,MAAmE,CAAS,CAAC,CAAC,SAAS,CAAK,GAAU,EAAgB,IAAI,GAAG,CAAE,CAAC,MAAY,CAAC,EAAU,GAAK,EAAW,MAAM,CAAE,CACh7F,EAAE,CAAC,EAAa,CAAC,EAAE,IAAM,GAAa,SAAS,CAAmE,GAA/D,EAAe,SAAkB,CAAC,EAAc,SAAyB,IAAS,OAAY,OAAO,IAAM,EAAI,EAAO,YAAgB,MAAK,cAAiD,CAA5B,EAAe,QAAQ,GAAK,GAAe,EAAI,EAAE,GAAG,CAAC,IAAM,EAAI,MAAM,EAAI,cAAc,CAAC,MAAM,MAAM,MAAM,EAAS,OAAO,EAAc,OAAO,CAAC,EAAE,EAAc,QAAQ,GAAK,YAAY,OAAO,EAAI,WAAW,EAAE,KAAK,EAAe,CAAC,CAAC,EAAc,OAAO,EAAE,IAAM,GAAO,GAAK,MAAM,CAAC,EAAA,CAAG,OAAO,GAAG,CAAC,EAAc,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,GAAe,OAAO,EAAQ,EAAS,EAAO,0BAA0B,CAAC,EAAQ,EAAW,EAAO,4BAA4B,CAAC,EAAQ,EAAW,GAAgB,EAAQ,EAAO,EAAM,IAAI,GAAG,CAAC,IAAM,EAAI,EAAE,SAAS,EAAS,EAAE,IAAU,EAAI,EAAW,EAAE,IAAU,EAAO,EAAW,OAAO,EAAE,EAAE,GAAS,EAAM,GAAQ,KAAK,IAAI,EAAE,EAAO,GAAG,GAAa,MAAM,CAAC,GAAG,EAAE,QAAQ,GAAK,EAAE,QAAQ,aAAa,GAAK,EAAE,aAAa,WAAW,GAAK,MAAM,EAAE,WAAW,YAAY,GAAK,OAAO,EAAE,YAAY,SAAS,GAAK,IAAI,EAAE,SAAS,MAAM,EAAM,GAA4B,EAAE,OAAO,CAAC,EAAE,EAAO,IAAI,EAAE,EAAE,KAAK,CAAE,CAAC,EAAE,EAAW,GAAM,CAAC,IAAM,EAAK,IAAI,IAAI,EAAK,IAAI,GAAG,OAAO,EAAE,EAAE,CAAC,CAAC,EAAQ,EAAI,EAAO,OAAO,GAAG,CAAC,EAAK,IAAI,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,EAAK,GAAG,CAAG,CAAE,CAAC,EAAE,EAAgB,GAAG,EAAE,CAAQ,CAAE,OAAO,EAAI,CAAK,GAAe,CAAG,GAAG,QAAQ,KAAK,kDAAkD,CAAG,CAAG,QAAQ,CAAC,EAAe,QAAQ,GAAM,GAAe,EAAK,CAAE,CAAzrC,CAA0rC,EAAQ,EAAaH,EAAO,CAAC,EAAE,EAAa,QAAQ,EAAc,OAAO,IAAM,GAAgBA,EAAO,CAAY,EAAE,GAAgB,QAAQ,EAAa,IAAM,GAAgBA,EAAO,EAAY,EAAE,GAAgB,QAAQ,GAAa,IAAM,GAAoBA,EAAO,CAAC,EAAoE,GAAnD,EAAa,QAAQ,IAAI,EAAa,OAAkC,EAAM,iBAAiB,OAAO,EAAM,KAAK,CAAC,CAAC,QAAQ,EAAQ,GAAU,CAAC,GAAS,EAAc,SAAS,EAAQ,GAAU,IAAW,CAAC,GAAY,MAAc,CAAC,IAAM,EAAG,EAAY,QAAQ,GAAG,CAAC,GAAI,OAAO,qBAAuB,IAAY,OAAO,IAAM,EAAG,IAAI,qBAAqB,GAAS,CAAC,GAAG,CAAC,EAAQ,KAAK,GAAG,EAAE,cAAc,EAAE,OAAO,IAAM,EAAI,KAAK,IAAI,EAAE,GAAG,EAAI,GAAoB,QAAQ,IAAI,OAAO,GAAoB,QAAQ,EAAI,IAAM,EAAI,EAAa,QAAQ,EAAgB,GAAO,EAAE,EAAW,KAAK,IAAI,EAAE,EAAS,CAAG,EAAS,CAAG,EAAK,GAAgB,SAAS,GAAK,GAAa,CAAC,EAAe,SAAS,GAAqB,QAAQ,CAAG,EAAE,CAAC,KAAK,KAAK,WAAW,YAAY,UAAU,CAAC,CAAC,EAAiB,OAAf,EAAG,QAAQ,CAAE,MAAY,EAAG,WAAW,CAAE,EAAE,CAAC,EAAc,OAAO,EAAE,EAAY,EAAS,GAAU,EAAY,MAAM,CAAC,EAAE,IAAM,OAAkB,CAAW,IAAS,QAAmB,EAAO,cAAc,IAAI,YAAY,8BAA8B,CAAC,CAAE,EAAQ,OAAsB,CAAI,IAAO,EAAM,WAAW,sBAAsB,KAAK,EAAE,EAAM,WAAW,4BAA4B,IAAI,EAAE,EAAM,mBAAmB,cAAc,IAAI,GAAG,GAAY,wEAAwE,EAAY,IAAS,SAAa,EAAO,SAAS,KAAK,2BAA4B,EAAE,OAAoB,EAAM,MAAM,CAAC,IAAI,EAAQ,MAAM,GAAK,SAAS,CAAc,EAAK,QAAQ,CAAC,SAAS;;;cAGvoG,CAAC,EAAe,EAAK,MAAM,CAAC,MAAM,GAAO,SAAS,EAAqB,EAAMC,EAAU,CAAC,SAAS,CAAc,EAAK,OAAO,CAAC,cAAc,GAAK,MAAM,CAAC,QAAQ,QAAQ,MAAM,IAAI,OAAO,GAAG,aAAa,EAAE,WAAW,0BAA0B,EAAQ,OAAO,EAAO,QAAQ,EAAQ,QAAQ,eAAe,YAAY,UAAU,wCAAwC,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,cAAc,GAAK,MAAM,CAAC,QAAQ,QAAQ,MAAM,IAAI,OAAO,GAAG,aAAa,EAAE,WAAW,0BAA0B,EAAQ,OAAO,EAAO,QAAQ,EAAQ,QAAQ,eAAe,YAAY,UAAU,wCAAwC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAMA,EAAU,CAAC,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAW,WAAW,+BAA+B,SAAS,EAAS,GAAG,GAAG,WAAW,IAAI,OAAO,CAAC,EAAE,SAAS,GAAY,EAAM,qBAAqB,QAAQ,MAAM,OAAO,EAAc,MAAM,CAAC,EAAE,kBAAkB,CAAC,EAAE,CAAC,IAAwB,EAAK,GAAW,CAAC,MAAM,EAAO,SAAS,GAAG,GAAU,CAAC,EAAE,SAAS,EAAM,UAAU,WAAW,EAAmB,UAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAqB,EAAM,MAAM,CAAC,MAAM,GAAK,SAAS,CAAc,EAAK,QAAQ,CAAC,SAAS,EAAU,CAAC,EAAE,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,IAAiB,EAAK,GAAY,CAAC,GAAG,EAAO,YAAY,EAAW,MAAM,EAAiB,WAAS,KAAK,CAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAuB,EAAM,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,WAAW,EAAO,OAAO,aAAa,IAAa,aAAa,GAAG,QAAQ,EAAS,YAAY,YAAY,QAAQ,OAAO,cAAc,SAAS,WAAW,SAAS,IAAI,EAAS,GAAG,GAAG,UAAU,aAAa,UAAU,oBAAoB,GAAS,iBAAiB,EAAE,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,CAAC,MAAM,EAAS,GAAG,GAAG,OAAO,EAAS,GAAG,GAAG,aAAa,IAAI,WAAW,EAAQ,QAAQ,OAAO,WAAW,SAAS,eAAe,SAAS,MAAM,CAAS,EAAE,SAAsB,EAAM,MAAM,CAAC,MAAM,EAAS,GAAG,GAAG,OAAO,EAAS,GAAG,GAAG,QAAQ,YAAY,KAAK,OAAO,OAAO,eAAe,YAAY,MAAM,cAAc,QAAQ,eAAe,QAAQ,SAAS,CAAc,EAAK,SAAS,CAAC,GAAG,KAAK,GAAG,KAAK,EAAE,GAAG,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,WAAW,SAAS,IAAI,EAAE,SAAS,IAAI,UAAU,QAAQ,EAAE,SAAS,CAAc,EAAK,KAAK,CAAC,MAAM,CAAC,MAAM,EAAW,OAAO,EAAE,WAAW,KAAK,cAAc,WAAW,WAAW,IAAI,GAAG,GAAW,CAAC,EAAE,SAAS,EAAS,GAAG,EAAE,EAAE,SAAS,GAAU,2BAA2B,EAAM,UAAU,CAAC,EAAe,EAAK,IAAI,CAAC,MAAM,CAAC,GAAG,GAAU,CAAC,EAAE,MAAM,EAAS,OAAO,EAAE,SAAS,GAAG,WAAW,IAAI,EAAE,SAAS,GAAU,yHAAyH,GAAU,EAAM,kBAAkB,EAAM,kBAAkB,EAAM,WAAW,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,EAAS,SAAS,MAAM,IAAI,GAAG,UAAU,EAAE,MAAM,EAAS,OAAO,OAAO,WAAW,SAAS,eAAe,QAAQ,EAAE,SAAS,CAAC,CAAC,GAAU,EAAM,KAAK,CAAC,CAAC,OAAO,GAAgB,EAAK,SAAS,CAAC,KAAK,SAAS,QAAQ,GAAc,MAAM,CAAC,OAAO,GAAG,QAAQ,SAAS,WAAW,EAAO,OAAO,aAAa,IAAa,aAAa,GAAG,MAAM,EAAU,WAAW,+BAA+B,SAAS,GAAG,WAAW,IAAI,OAAO,SAAS,EAAE,SAAS,EAAM,eAAe,CAAC,EAAe,EAAK,MAAM,CAAC,MAAM,CAAC,MAAM,EAAS,OAAO,MAAM,EAAE,SAAsB,EAAK,GAAW,CAAC,MAAM,oBAAoB,KAAK,KAAK,QAAQ,SAAS,MAAM,QAAQ,SAAS,GAAM,KAAK,GAAG,UAAU,EAAS,KAAK,KAAK,YAAY,IAAI,YAAY,GAAG,iBAAiB,GAAG,UAAU,GAAG,eAAe,GAAG,OAAO,GAAG,QAAQ,EAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,GAAK,SAAS,CAAC,EAAY,KAAK,EAAI,IAAI,CAAC,IAAM,EAAQ,CAAC,CAAC,EAAI,OAAO,OAAoB,EAAK,MAAM,CAAC,eAAe,GAAG,CAAK,IAM5yH,EAAE,gBAAgB,EAAE,EAAE,eAAe,EAAY,IAAS,QAAmB,EAAO,cAAc,IAAI,YAAY,uBAAuB,CAAC,OAAO,CAAC,WAAW,EAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,OAAO,QAAQ,EAAE,UAAU,oBAAoB,GAAS,kBAAkB,eAAe,GAAG,KAAK,IAAI,EAAE,EAAS,CAAC,EAAE,KAAK,IAAI,GAAU,EAAE,EAAE,GAAG,EAAE,SAAsB,EAAK,GAAa,CAAC,WAAW,EAAI,GAAG,SAAS,EAAI,UAAU,QAAQ,EAAI,SAAS,GAAG,eAAe,EAAa,IAAI,EAAI,EAAE,GAAG,CAAC,EAAI,SAAS,CAAC,EAAQ,MAAM,EAAI,OAAO,GAAG,MAAM,EAAI,OAAO,GAAG,MAAM,EAAQ,aAAa,CAAC,IAAM,EAAI,EAAI,MAA+B,OAArB,EAA4B,OAAO,CAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,EAAE,OAAO,CAAG,CAAC,CAAC,MAAM,CAAC,EAAzE,UAA2E,EAAA,CAAG,EAAE,MAAM,GAAgB,CAAG,EAAE,WAAW,GAAiB,CAAG,EAAE,aAAa,EAAa,IAAI,EAAI,EAAE,GAAG,CAAC,GAAgB,CAAG,GAAG,CAAC,EAAQ,YAAY,CAAC,GAAS,QAAQ,KAAK,OAAO,EAAI,EAAE,CAAC,IAAI,EAAa,IAAI,EAAI,EAAE,QAAQ,CAAC,IAAM,EAAO,GAAgB,CAAC,CAAC,OAAO,EAAI,EAAE,GAAG,MAAM,EAAE,GAAQ,KAAK,IAAI,EAAE,EAAO,GAAG,GAAc,EAAA,CAAG,GAAG,UAAU,KAAK,UAAU,EAAI,OAAO,CAAC,CAAC,EAAE,UAAU,EAAQ,SAAS,EAAM,UAAU,aAAa,EAAM,aAAa,iBAAiB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAQ,GAAG,EAAI,IAAI,CAAE,CAAC,GAAG,EAAa,EAAc,QAAQ,IAA2B,EAAK,MAAM,CAAC,IAAI,EAAY,cAAc,CAAC,GAAY,MAAM,CAAC,MAAM,OAAO,UAAU,EAAE,QAAQ,GAAY,aAAa,EAAE,QAAQ,OAAO,eAAe,SAAS,MAAM,EAAS,WAAW,+BAA+B,SAAS,GAAG,WAAW,GAAG,EAAE,SAAS,GAAY,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,SAAoB,CAAC,IAAM,EAAI,EAAc,KAAK,GAAG,EAAE,KAAK,EAAa,EAAsB,OAAhB,EAAoC,EAAK,GAAmB,CAAK,MAAI,UAAU,GAAgB,CAAG,EAAE,WAAW,GAAiB,CAAG,EAAE,YAAY,GAAiB,IAAI,EAAE,eAAe,EAAG,IAAQ,CAAC,EAAW,GAAM,EAAK,IAAI,GAAG,OAAO,EAAE,EAAE,IAAI,OAAO,CAAE,EAAE,CAAC,GAAG,EAAE,MAAM,GAA4B,EAAE,OAAO,CAAC,EAAE,CAAK,CAAC,EAAE,CAAC,CAAC,CAAE,EAAE,OAAO,CAAC,SAAO,aAAW,UAAQ,UAAQ,aAAW,WAAS,YAAU,WAAS,EAAY,WAAS,CAAC,EAAxZ,IAA0Z,EAAA,CAAG,CAAC,CAAC,CAAC,CAAE,6CA9Lz5D,IAAiE,IAAqD,KAAsE,KAAkE,KAAkE,IAAoC,EAAOG,IAAa,GAAG,IAAO,CAAW,IAAS,QAAa,EAAO,gBAAgB,QAAQ,IAAI,GAAG,CAAI,CAAG,EAA2LF,EAAE,CAAC,OAAO,qBAAqB,WAAW,qBAAqB,QAAQ,qBAAqB,QAAQ,qBAAqB,WAAW,kBAAkB,SAAS,qBAAqB,UAAU,qBAAqB,UAAU,oBAAoB,UAAU,CAAC,WAAW,2CAA2C,SAAS,GAAG,WAAW,GAAG,EAAE,SAAS,CAAC,WAAW,6BAA6B,SAAS,EAAE,CAAC,EASjiC,GAAoB,KAAK,MAAM,sBAAsB,EAA4vF,GAAY,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,cAAc,GAAG,SAAS,EAAE,IAAI,CAAC,MAAM,MAAM,GAAG,UAAU,GAAG,SAAS,EAAE,KAAK,CAAC,MAAM,OAAO,GAAG,UAAU,GAAG,SAAS,EAAE,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,GAAG,SAAS,EAAE,UAAU,CAAC,MAAM,YAAY,GAAG,UAAU,GAAG,SAAS,CAAC,EAOv1F,GAAa,IAAK,IAAU,GAAoB,EAC6R,GAAW;;;GAKg2B,GAAa,CAAC,CAAC,MAAM,SAAS,MAAM,cAAc,MAAM,QAAQ,EAAE,CAAC,MAAM,OAAO,MAAM,qBAAqB,MAAM,MAAM,EAAE,CAAC,MAAM,UAAU,MAAM,gBAAgB,MAAM,SAAS,EAAE,CAAC,MAAM,QAAQ,MAAM,uBAAuB,MAAM,OAAO,CAAC,EAwK2S,GAAiB,YAAY,6BAA6B,EAAoB,GAAiB,CAAC,qBAAqB,CAAC,KAAK,EAAY,OAAO,MAAM,gBAAgB,aAAa,aAAa,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,kBAAkB,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,MAAM,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,iBAAiB,aAAa,UAAU,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,aAAa,EAAE,EAAE,cAAc,CAAC,KAAK,EAAY,OAAO,MAAM,eAAe,IAAI,EAAE,IAAI,IAAI,KAAK,GAAG,aAAa,GAAG,YAAY,2DAA2D,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,gBAAgB,IAAI,IAAI,IAAI,KAAK,KAAK,GAAG,aAAa,IAAI,YAAY,oCAAoC,EAAE,UAAU,CAAC,KAAK,EAAY,KAAK,MAAM,aAAa,SAAS,WAAW,aAAa,CAAC,SAAS,EAAE,EAAE,YAAY,qFAAqF,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,4BAA4B,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,eAAe,aAAa,gGAAgG,gBAAgB,EAAI,EAAE,kBAAkB,CAAC,KAAK,EAAY,OAAO,MAAM,wBAAwB,aAAa,mCAAmC,gBAAgB,GAAK,YAAY,gDAAgD,EAAE,gBAAgB,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,cAAc,EAAE,iBAAiB,CAAC,KAAK,EAAY,OAAO,MAAM,eAAe,aAAa,kBAAkB,EAAE,iBAAiB,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,GAAG,YAAY,0EAA0E,EAAE,eAAe,CAAC,KAAK,EAAY,KAAK,MAAM,eAAe,aAAa,QAAQ,QAAQ,CAAC,OAAO,OAAO,EAAE,aAAa,CAAC,YAAY,aAAa,CAAC,CAAC,CAAC,KCzL1hH,SAAS,IAAgB,CAEhb,GAAK,CAAC,EAAO,GAAWG,EAAS,CAAC,CAAC,EAA8N,OAA5N,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAM,EAAO,cAAc,GAAG,CAAC,EAAM,OAAO,IAAM,MAAS,EAAU,EAAM,OAAO,QAAQ,CAAC,CAAC,EAAE,EAAK,EAAE,IAAM,EAAM,EAAM,UAAU,CAAI,EAAE,UAAU,IAAQ,CAAE,EAAE,CAAC,CAAC,EAAS,CAAO,CAAC,SAAS,GAAW,CAAC,SAAO,CAAC,OAAoB,EAAM,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,QAAQ,YAAY,KAAK,OAAO,OAAO,EAAM,YAAY,MAAM,cAAc,QAAQ,eAAe,QAAQ,MAAM,CAAC,QAAQ,QAAQ,WAAW,CAAC,EAAE,SAAS,CAAc,EAAK,SAAS,CAAC,GAAG,KAAK,GAAG,KAAK,EAAE,GAAG,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,SAAS,GAAS,CAAC,SAAO,CAAC,OAAoB,EAAM,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,QAAQ,YAAY,KAAK,OAAO,OAAO,EAAM,YAAY,MAAM,cAAc,QAAQ,eAAe,QAAQ,MAAM,CAAC,QAAQ,QAAQ,WAAW,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,MAAM,KAAK,OAAO,KAAK,GAAG,GAAG,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,SAAS,GAAQ,CAAC,OAAK,SAAO,CAAC,OAAO,EAAkB,EAAM,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,QAAQ,YAAY,KAAK,OAAO,OAAO,EAAM,YAAY,IAAI,cAAc,QAAQ,eAAe,QAAQ,SAAS,CAAc,EAAK,OAAO,CAAC,EAAE,kDAAkD,CAAC,EAAe,EAAK,SAAS,CAAC,GAAG,KAAK,GAAG,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,QAAQ,YAAY,KAAK,OAAO,OAAO,EAAM,YAAY,IAAI,cAAc,QAAQ,eAAe,QAAQ,SAAS,CAAc,EAAK,OAAO,CAAC,EAAE,4EAA4E,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,sEAAsE,CAAC,EAAe,EAAK,OAAO,CAAC,EAAE,kCAAkC,CAAC,EAAe,EAAK,OAAO,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,SAAwB,GAAQ,EAAM,CAAC,GAAK,CAAC,QAAM,cAAY,OAAK,aAAW,QAAM,YAAU,eAAa,WAAS,WAAS,QAAM,OAAK,QAAM,WAAS,YAAU,EAAY,EAAO,GAAe,EAAQ,EAAG,EAAO,QAAQC,EAAE,GAAS,EAAc,EAAO,YAAYA,EAAE,cAAoB,EAAY,EAAO,WAAWA,EAAE,YAAkB,EAAI,EAAO,YAAYA,EAAE,WAAiB,EAAe,EAAO,WAAWA,EAAE,eAAqB,EAAS,EAAO,UAAUA,EAAE,SAAe,EAAS,EAAO,UAAUA,EAAE,SAAe,EAAW,EAAO,WAAWA,EAAE,WAAgB,CAAC,EAAS,GAAaD,EAAS,CAAK,EAAO,CAAC,EAAM,GAAUA,EAAS,EAAK,EAAO,CAAC,EAAS,IAAaA,EAAS,EAAK,EAAE,MAAc,EAAY,CAAK,EAAE,CAAC,CAAK,CAAC,EAAE,IAAM,GAAe,IAAO,WAAiB,EAAa,IAAgB,EAAM,iBAAiB,GAAY,EAAc,IAAgB,EAAS,OAAO,EAAW,EAAU,CAAC,CAAC,EAAY,EAAQ,IAAa,SAAS,EAAgB,EAAQ,IAAa,SAAS,IAAa,QAAQ,EAAY,GAAa,IAAa,QAAQ,EAAa,IAAa,QAAQ,gBAAgB,EAAe,EAAY,EAAQC,EAAE,YAAY,EAAQ,EAAY,EAAoB,EAAY,GAAS,EAAQ,QAAQ,MAAY,GAAK,EAAQA,EAAE,UAAUA,EAAE,UAAgB,GAAU,EAAQA,EAAE,YAAY,GAAS,EAAS,EAAI,EAAqB,EAAU,EAAQA,EAAE,YAAY,GAAS,EAAS,EAAS,EAAqB,GAAU,CAAC,EAAE,GAAO,GAAM,GAAa,EAAsB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,SAAS,IAAI,IAAW,OAAU,EAAQ,GAAG,EAAd,GAAgB,QAAQ,GAAK,EAAM,OAAO,GAAK,GAAA,CAAI,OAAO,QAAQ,MAAM,GAAK,EAAM,OAAO,GAAK,GAAA,CAAI,KAAK,IAAI,WAAW,EAAG,OAAO,GAAG,EAAY,SAAS,IAAc,aAAa,GAAG,MAAM,EAAU,OAAO,EAAM,UAAU,aAAa,UAAU,GAAS,EAAQ,aAAa,KAAO,OAAO,WAAW,2DAA2D,WAAW,+BAA+B,QAAQ,EAAS,IAAI,CAAC,EAAE,SAAS,CAAC,IAAW,UAAuB,EAAK,GAAW,CAAC,MAAM,CAAS,CAAC,EAAE,IAAW,QAAqB,EAAK,GAAS,CAAC,MAAM,CAAS,CAAC,EAAE,EAAM,QAAqB,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,UAAU,SAAS,GAAG,WAAW,OAAO,WAAW,IAAI,MAAM,EAAS,EAAI,EAAe,WAAW,EAAE,WAAW,MAAM,EAAE,SAAS,EAAM,MAAM,CAAC,EAAe,EAAK,QAAQ,CAAC,MAAM,IAAa,OAAoB,EAAb,GAA+B,WAAS,UAAU,EAAM,WAAW,UAAU,IAAA,GAAU,SAAS,GAAG,CAAC,GAAG,IAAa,OAAO,OAAO,IAAI,EAAK,EAAE,OAAO,MAAS,EAAM,aAAY,EAAK,OAAO,CAAI,CAAC,CAAC,QAAQ,SAAS,EAAE,GAAG,EAAY,CAAI,EAAE,IAAW,CAAI,CAAE,EAAE,YAAY,EAAS,EAAI,EAAE,WAAW,EAAS,EAAK,EAAc,cAAY,KAAK,EAAc,SAAS,IAAa,OAAO,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,OAAO,QAAQ,OAAO,WAAW,cAAc,MAAM,GAAU,SAAS,GAAG,WAAW,OAAO,WAAW,IAAI,WAAW,UAAU,QAAQ,EAAE,WAAW,CAAW,CAAC,CAAC,EAAE,EAAM,QAAqB,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,UAAU,SAAS,GAAG,WAAW,OAAO,WAAW,IAAI,MAAM,EAAS,EAAI,EAAe,WAAW,EAAE,WAAW,MAAM,EAAE,SAAS,EAAM,MAAM,CAAC,EAAE,GAA2B,EAAK,SAAS,CAAC,KAAK,SAAS,aAAa,EAAS,gBAAgB,gBAAgB,YAAY,GAAY,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,QAAQ,QAAQ,cAAc,WAAW,SAAS,eAAe,SAAS,MAAM,GAAG,OAAO,GAAG,aAAa,EAAE,OAAO,UAAU,MAAM,EAAU,WAAW,CAAC,EAAE,SAAsB,EAAK,GAAQ,CAAC,KAAK,EAAS,MAAM,CAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAgC,OAA1B,GAA8C,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAE,MAAM,EAAU,OAAO,EAAM,WAAW,+BAA+B,UAAU,YAAY,EAAE,SAAS,CAAC,GAAoB,EAAM,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,WAAW,IAAI,MAAM,EAAS,WAAW,GAAG,EAAE,SAAS,CAAC,EAAM,GAAuB,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAW,WAAW,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAU,GAAM,IAAqB,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,WAAW,IAAI,MAAM,EAAUA,EAAE,YAAY,CAAQ,EAAE,SAAS,EAAU,EAAM,CAAI,CAAC,CAAC,CAAC,CAAC,EAAljB,CAAojB,2BAFr1L,IAAoD,IAAsC,EAAO,GAAK,CAAC,GAAG,CAAC,OAAO,GAAG,KAAK,EAAE,EAAE,GAAG,CAAC,OAAO,GAAG,KAAK,EAAE,CAAC,EAAQA,EAAE,CAAC,cAAc,UAAU,YAAY,UAAU,YAAY,UAAU,UAAU,wBAAwB,UAAU,uBAAuB,WAAW,UAAU,eAAe,UAAU,SAAS,UAAU,SAAS,UAAU,GAAG,UAAU,WAAW,mBAAmB,EAEi7K,GAAQ,YAAY,qBAAqB,EAAoB,GAAQ,CAAC,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,GAAG,YAAY,wDAAwD,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,EAAE,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,aAAa,EAAE,KAAK,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,QAAQ,CAAC,OAAO,QAAQ,WAAW,MAAM,MAAM,QAAQ,EAAE,aAAa,CAAC,OAAO,QAAQ,WAAW,MAAM,MAAM,QAAQ,EAAE,aAAa,MAAM,EAAE,SAAS,CAAC,KAAK,EAAY,KAAK,MAAM,YAAY,QAAQ,CAAC,OAAO,SAAS,MAAM,EAAE,aAAa,CAAC,OAAO,SAAS,MAAM,EAAE,aAAa,MAAM,EAAE,SAAS,CAAC,KAAK,EAAY,QAAQ,MAAM,WAAW,aAAa,GAAM,OAAO,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAY,QAAQ,MAAM,WAAW,aAAa,EAAK,EAAE,KAAK,CAAC,KAAK,EAAY,OAAO,MAAM,OAAO,aAAa,GAAG,OAAO,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,EAAE,EAAE,WAAW,CAAC,KAAK,EAAY,KAAK,MAAM,QAAQ,QAAQ,CAAC,OAAO,UAAU,QAAQ,OAAO,EAAE,aAAa,CAAC,OAAO,UAAU,QAAQ,OAAO,EAAE,aAAa,OAAO,YAAY,oDAAoD,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,uBAAuB,aAAa,gBAAgB,OAAO,GAAG,EAAE,aAAa,OAAO,EAAE,UAAU,CAAC,KAAK,EAAY,QAAQ,MAAM,aAAa,aAAa,EAAI,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,IAAI,IAAI,IAAI,IAAI,KAAK,EAAE,aAAa,IAAI,OAAO,GAAO,EAAM,SAAS,EAAE,KAAK,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,QAAQ,CAAC,KAAK,IAAI,EAAE,aAAa,CAAC,gBAAgB,cAAc,EAAE,aAAa,KAAK,wBAAwB,EAAI,EAAE,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,GAAG,YAAY,yDAAyD,EAAE,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,GAAG,YAAY,2CAA2C,EAAE,WAAW,CAAC,KAAK,EAAY,QAAQ,MAAM,cAAc,aAAa,GAAM,YAAY,2DAA2D,EAAE,eAAe,CAAC,KAAK,EAAY,QAAQ,MAAM,YAAY,aAAa,GAAK,YAAY,sCAAsC,OAAO,GAAG,EAAE,OAAO,UAAU,CAAC,CAAC,wBCNv9P,KCEknB,SAAS,IAAe,CAAuE,GAAK,CAAC,EAAM,GAAUC,EAAS,IAAI,EAA2V,OAAzV,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,IAAI,EAAY,MAAQ,CAAC,IAAM,EAAE,EAAO,cAAgF,OAA/D,GAAG,EAAS,CAAC,EAAE,EAAM,EAAE,cAAc,EAAS,CAAC,CAAC,EAAS,IAAa,EAAM,EAAE,GAAG,EAAI,EAAE,UAAU,IAAQ,EAAE,IAAM,EAAG,EAAO,gBAAgB,CAAI,EAAI,GAAE,EAAO,cAAc,CAAE,CAAE,EAAE,GAAG,EAAE,UAAU,CAAC,EAAO,cAAc,CAAE,EAAE,IAAQ,CAAE,CAAE,EAAE,CAAC,CAAC,EAAS,CAAM,CAAC,SAAS,GAAgB,EAAK,CAAC,MAAM,CAAC,CAAC,GAAM,OAAO,GAAO,UAAU,OAAO,KAAK,CAAI,CAAC,CAAC,OAAO,CAAE,CAAC,SAAS,GAAU,CAAC,WAAS,SAAO,aAAW,aAAW,CAAC,GAAK,CAAC,EAAQ,GAAYA,EAAS,EAAK,EAAE,MAAc,CAAC,EAAW,EAAI,CAAE,EAAE,CAAC,CAAC,EAAE,IAAM,EAAiB,EAAK,MAAM,CAAC,MAAM,CAAC,SAAS,EAAU,QAAQ,SAAS,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAO,UAAU,aAAa,IAAa,QAAQ,qDAAqD,OAAO,EAAU,WAAW,EAAE,QAAQ,OAAO,eAAe,SAAS,UAAU,aAAa,UAAU,EAAE,EAAW,UAAQ,CAAC,EAAkF,OAA5E,EAAwB,CAAC,GAAS,OAAO,SAAW,IAAmB,KAAyB,EAAa,EAAI,SAAS,IAAI,EAA7G,CAA+G,CAAC,SAAwB,GAAW,EAAM,CAAC,IAAM,EAAM,GAAc,EAAQ,EAAE,GAAO,OAAO,QAAQ,CAAC,EAAQ,EAAO,EAAE,QAAQ,GAAE,OAAa,EAAW,EAAE,YAAY,GAAE,WAAiB,EAAW,EAAE,YAAY,GAAE,WAAiB,EAAU,EAAE,WAAW,GAAE,UAAgB,EAAU,GAAgB,EAAM,SAAS,EAAE,EAAM,UAAU,EAAE,WAAW,GAAE,UAAgB,EAAY,EAAE,aAAa,GAAE,YAAiB,CAAC,EAAM,GAAUA,EAAS,EAAE,EAAO,CAAC,EAAa,GAAiBA,EAAS,EAAK,EAAQ,EAAQC,EAAO,IAAI,EAAO,CAAC,EAAc,GAAkBD,EAAgB,IAAS,OAAY,KAAK,EAAO,UAAU,EAAE,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,IAAI,EAAI,EAAQ,MAAW,CAAI,AAAW,IAAI,EAAO,0BAA0B,CAAC,EAAI,EAAE,EAAiB,EAAO,UAAU,CAAE,CAAC,CAAE,EAAmE,OAAjE,EAAO,EAAE,EAAO,iBAAiB,SAAS,EAAO,CAAC,QAAQ,EAAI,CAAC,MAAY,CAAC,EAAO,oBAAoB,SAAS,CAAM,EAAK,GAAI,EAAO,qBAAqB,CAAG,CAAE,CAAE,EAAE,CAAC,CAAC,EAAE,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,EAAG,eAAe,CAAC,EAAO,cAAc,IAAI,YAAY,+BAA+B,CAAC,OAAO,CAAC,OAAK,CAAC,CAAC,CAAC,CAAE,EAAE,GAAG,EAAE,UAAU,aAAa,CAAE,CAAE,EAAE,CAAC,CAAK,CAAC,EAAE,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,IAAM,MAAY,EAAS,EAAE,EAAkE,OAAhE,EAAO,iBAAiB,+BAA+B,CAAO,MAAY,EAAO,oBAAoB,+BAA+B,CAAO,CAAE,EAAE,CAAC,CAAC,EAAE,IAAM,EAAS,GAAe,EAAM,kBAAkB,KAAW,EAAS,EAAa,QAAQ,IAAI,EAAa,OAAa,EAAK,CAAC,MAAM,OAAO,QAAQ,OAAO,cAAc,SAAS,IAAI,GAAG,UAAU,aAAa,WAAW,8BAA8B,EAAQ,EAAU,GAAU,EAAM,YAAY,EAAM,YAAY,EAAM,MAAY,EAAU,EAAS,GAAG,GAAS,EAAa,GAAU,EAAM,eAAe,EAAM,eAAe,EAAM,SAAe,EAAgB,GAAU,EAAM,kBAAkB,EAAM,kBAAkB,EAAM,YAAkB,EAAU,EAAS,CAAC,QAAQ,OAAO,WAAW,SAAS,IAAI,EAAE,WAAW,cAAc,OAAO,OAAO,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,QAAQ,OAAO,WAAW,SAAS,IAAI,GAAG,QAAQ,GAAG,WAAW,EAAO,OAAO,aAAa,IAAa,aAAa,EAAE,EAAQ,MAAmB,CAAI,IAAoB,EAAgB,EAAI,EAAK,IAAO,EAAM,WAAW,sBAAsB,KAAK,EAAE,EAAM,WAAW,4BAA4B,IAAI,EAAE,EAAM,mBAAmB,cAAc,IAAI,GAE9wI,GAAY,+DAA+D,EAAY,IAAS,SAAa,EAAO,SAAS,KAAK,4BAA4B,EAAE,OAAoB,EAAM,MAAM,CAAC,IAAI,EAAQ,MAAM,EAAK,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,GAAG,GAAa,CAAC,EAAE,MAAM,EAAU,cAAc,YAAY,cAAc,SAAS,SAAS,GAAG,WAAW,GAAG,EAAE,SAAS,EAAM,OAAO,CAAC,EAAe,EAAK,KAAK,CAAC,MAAM,CAAC,MAAM,EAAW,WAAW,KAAK,cAAc,UAAU,OAAO,EAAE,WAAW,IAAI,GAAG,GAAW,CAAC,EAAE,SAAS,CAAS,EAAE,SAAS,CAAS,CAAC,EAAE,CAAC,EAAM,UAAU,GAA2B,EAAK,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,qBAAqB,WAAW,+BAA+B,SAAS,EAAS,GAAG,GAAG,WAAW,KAAK,OAAO,EAAE,WAAW,IAAI,WAAW,EAAS,SAAS,SAAS,GAAG,EAAM,cAAc,CAAC,CAAC,EAAE,SAAS,CAAY,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,EAAU,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,SAAsB,EAAK,GAAQ,CAAC,MAAM,EAAM,YAAY,EAAgB,KAAK,OAAO,SAAS,EAAS,SAAS,OAAO,SAAS,GAAG,EAAS,CAAC,EAAE,WAAW,OAAO,UAAU,GAAK,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,GAAM,SAAS,GAAM,aAAa,GAAG,MAAM,IAAI,eAAe,GAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,GAAuB,EAAK,GAAW,CAAC,MAAM,oBAAoB,KAAK,KAAK,QAAQ,SAAS,MAAM,QAAQ,SAAS,GAAM,KAAK,GAAG,UAAU,GAAM,KAAK,KAAK,YAAY,IAAI,YAAY,GAAG,iBAAiB,GAAG,UAAU,GAAG,eAAe,GAAG,OAAO,GAAG,QAAQ,CAAc,CAAC,CAAC,CAAC,CAAC,EAAE,GAAuB,EAAK,GAAU,CAAQ,SAAkB,aAAW,UAAU,CAAC,EAAS,SAAsB,EAAK,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,SAAS,GAAG,EAAE,SAAsB,EAAK,GAAW,CAAC,MAAM,oBAAoB,KAAK,KAAK,QAAQ,SAAS,MAAM,QAAQ,SAAS,GAAM,KAAK,GAAG,UAAU,GAAK,KAAK,KAAK,YAAY,IAAI,YAAY,GAAG,iBAAiB,GAAG,UAAU,GAAG,eAAe,GAAG,OAAO,GAAG,QAAQ,CAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,4BAF59D,IAAiE,IAA6C,IAAoC,KAAkE,KAA4D,EAAO,IAAa,GAAG,IAAO,CAAW,IAAS,QAAa,EAAO,gBAAgB,QAAQ,IAAI,GAAG,CAAI,CAAG,EAAQ,GAAE,CAAC,OAAO,qBAAqB,WAAW,qBAAqB,WAAW,kBAAkB,UAAU,oBAAoB,UAAU,CAAC,WAAW,2CAA2C,SAAS,GAAG,WAAW,GAAG,EAAE,YAAY,CAAC,WAAW,6BAA6B,SAAS,GAAG,WAAW,GAAG,CAAC,EAEkzC,GAAW,YAAY,sBAAsB,EAAoB,GAAW,CAAC,QAAQ,CAAC,KAAK,EAAY,OAAO,MAAM,UAAU,aAAa,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,kBAAkB,aAAa,wCAAwC,gBAAgB,EAAI,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,iBAAiB,aAAa,oCAAoC,gBAAgB,GAAK,YAAY,6DAA6D,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,qBAAqB,aAAa,8GAA8G,gBAAgB,EAAI,EAAE,eAAe,CAAC,KAAK,EAAY,OAAO,MAAM,oBAAoB,aAAa,sDAAsD,gBAAgB,EAAI,EAAE,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,wBAAwB,aAAa,mCAAmC,EAAE,kBAAkB,CAAC,KAAK,EAAY,OAAO,MAAM,uBAAuB,aAAa,UAAU,YAAY,oEAAoE,EAAE,UAAU,CAAC,KAAK,EAAY,KAAK,MAAM,aAAa,SAAS,WAAW,aAAa,CAAC,SAAS,EAAE,EAAE,YAAY,gFAAgF,EAAE,aAAa,CAAC,KAAK,EAAY,KAAK,MAAM,gBAAgB,SAAS,WAAW,aAAa,CAAC,SAAS,EAAE,CAAC,EAAE,iBAAiB,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,IAAI,IAAI,IAAI,IAAI,KAAK,KAAK,GAAG,YAAY,gIAAgI,EAAE,SAAS,CAAC,KAAK,EAAY,QAAQ,MAAM,iBAAiB,aAAa,GAAM,YAAY,kEAAkE,CAAC,CAAC,KCV77G,SAAwB,EAAkB,EAAI,EAAO,CAAC,KAAM,GAAO,CAAC,IAAM,EAAO,GAAiB,EAAO,IAAI,GAAG,GAAQ,EAAO,SAAS,YAAY,CAAC,IAAM,EAAM,EAAO,KAAK,CAAC,CAAC,GAAK,GAAG,EAAM,OAAO,CAAM,CAAC,EAAO,EAAO,QAAS,CAAC,CAAC,SAAS,GAAQ,EAAO,CAAC,IAAM,EAAS,CAAC,EAAE,KAAM,GAAO,CAAC,IAAM,EAAO,GAAiB,EAAO,IAAI,GAAG,EAAO,CAAC,IAAM,EAAQ,EAAO,QAAQ,EAAK,GAAQ,EAAS,KAAK,CAAO,CAAE,CAAC,EAAO,EAAO,QAAS,CAAC,GAAG,EAAS,OAAO,EAAE,OAAO,QAAQ,IAAI,CAAQ,CAAE,CAAC,SAAgB,GAA0B,EAAO,CAAC,IAAM,EAAe,GAAQ,CAAM,EAAE,GAAG,EAAe,MAAM,CAAe,qBAAt8B,EAAO,GAAiB,CAAC,UAAU,IAAI,MAAc,OAAO,6BAAmB,EAAE,UAAU,IAAI,MAAc,OAAO,6BAAmB,EAAE,UAAU,IAAI,MAAc,OAAO,6BAAmB,EAAE,UAAU,IAAI,MAAc,OAAO,6BAAmB,EAAE,UAAU,IAAI,MAAc,OAAO,6BAAmB,EAAE,UAAU,IAAI,MAAc,OAAO,6BAAmB,CAAC,oFCAvT,IAA0Z,IAAkE,IAA4B,KAAgH,KAA0G,KAAkE,IAA2E,KAA0E,KAAwE,KAA8E,KAAqE,KAA4G,KAAmF,EAAO,GAAmB,EAAS,EAAa,EAAQ,GAAiB,EAASE,EAAW,EAAQ,GAAoB,EAASC,CAAc,EAAQ,GAAqB,EAASC,EAAe,EAAQ,GAAmC,EAA0B,CAAS,EAAQ,GAA2B,EAASC,EAAqB,EAAQ,GAAqC,EAASC,EAA+B,EAAQ,GAAY,CAAC,UAAU,wBAAwB,UAAU,sBAAsB,UAAU,+CAA+C,EAAQ,OAAc,OAAO,SAAW,IAAyB,GAAgB,CAAC,EAAQ,GAAkB,eAAqB,GAAkB,CAAC,UAAU,mBAAmB,UAAU,kBAAkB,UAAU,kBAAkB,EAAgL,IAAmB,EAAkB,EAAuB,IAAgB,GAAyC,EAAuB,WAAW,EAAiB,QAAW,CAAC,KAAK,CAAC,MAAM,YAAY,KAAKC,EAAiB,KAAK,YAAY,EAAE,MAAM,CAAC,KAAK,eAAe,MAAM,GAAG,EAAE,OAAO,CAAC,CAAC,WAAW,YAAY,KAAK,YAAY,KAAK,YAAY,EAAE,CAAC,WAAW,YAAY,KAAK,YAAY,KAAK,YAAY,EAAE,CAAC,WAAW,YAAY,KAAK,YAAY,KAAK,YAAY,EAAE,CAAC,WAAW,YAAY,KAAK,YAAY,KAAK,YAAY,EAAE,CAAC,WAAW,YAAY,KAAK,KAAK,KAAK,YAAY,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW,YAAY,KAAK,YAAY,KAAK,YAAY,EAAE,SAAS,KAAK,MAAM,CAAC,KAAK,eAAe,MAAM,EAAI,EAAE,KAAK,iBAAiB,CAAC,GAAS,IAAW,CAAC,QAAM,WAAS,cAAY,CAAC,GAAK,CAAC,iBAAe,iBAAe,YAAU,GAA0B,EAAM,EAAS,WAAW,EAA0C,OAAO,EAApC,EAAa,CAAmC,EAAE,EAAe,CAAQ,CAAE,EAAQ,IAAc,GAAG,IAAO,CAAC,IAAI,IAAM,KAAO,EAAM,GAAG,GAAK,OAAO,GAAM,SAAS,OAAO,CAAsB,EAAuE,GAAU,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAvI,OAAO,GAAG,MAAM,EAAE,SAAS,EAAE,KAAK,QAA+G,EAAE,EAAE,EAAE,EAAE,CAAC,EAAQ,GAAW,CAAC,QAAQ,KAAK,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAQ,GAAwB,CAAC,QAAQ,YAAY,MAAM,YAAY,OAAO,WAAW,EAAQ,IAAW,CAAC,WAAyB,EAAgC,EAAS,KAAyB,EAAK,QAAQ,CAAC,wBAAwB,CAAC,OAAO,CAAK,EAAE,yBAAyB,EAAE,CAAC,EAAU,IAAU,CAAC,SAAO,KAAG,QAAM,GAAG,MAAgB,CAAC,GAAG,EAAM,QAAQ,GAAwB,EAAM,UAAU,EAAM,SAAS,WAAW,GAcvkI,GAAgB,EAdwlIC,EAAiB,SAAS,EAAM,EAAI,CAAC,IAAM,EAAYC,EAAO,IAAI,EAAQ,EAAW,GAAK,EAAkB,EAAgBC,EAAY,EAAO,CAAC,eAAa,aAAW,EAAc,EAA0B,GAAqB,EAAE,GAAK,CAAC,QAAM,UAAA,EAAU,WAAS,UAAQ,GAAG,GAAW,GAAS,CAAK,EAAqF,EAApEC,MAAkBC,GAAiB,CAAC,EAAE,CAAY,EAAE,CAAC,CAAY,CAAsB,CAAC,EAAE,GAAK,CAAC,EAAY,GAAqB,EAA8B,EAAQ,GAAY,EAAK,EAA2F,EAAkB,EAAG,GAAlDC,EAA4F,EAAQ,EAAkBC,EAAiB,EAAyB,CAAC,EAAE,iBAAuB,EAAuB,EAAQA,EAAiB,CAAmB,CAAC,EAAE,YAAY,OAAc,EAAa,GAAkB,EAAkB,CAAsB,EAAE,GAA0B,CAAY,EAAE,IAAM,OAAiB,CAAI,GAAU,GAAiB,IAAc,YAA4D,OAArB,EAAiB,CAAC,CAAC,EAAsB,EAAK,GAA0B,SAAS,CAAC,MAAM,CAAC,gBAAgB,EAAY,2BAAwB,iBAAiB,YAAY,oBAAiB,EAAE,SAAsB,EAAM,EAAY,CAAC,GAAG,GAAU,EAAgB,SAAS,CAAc,EAAK,GAAU,CAAC,MAAM,kGAAkG,CAAC,EAAe,EAAM,EAAO,IAAI,CAAC,GAAG,EAAU,UAAU,EAAG,EAAkB,gBAAgBC,CAAS,EAAE,IAAI,EAAW,MAAM,CAAC,GAAG,CAAK,EAAE,SAAS,CAAc,EAAK,EAA0B,CAAC,SAAsB,EAAK,EAAU,CAAC,UAAU,0BAA0B,gCAAgC,SAAS,iBAAiB,GAAK,OAAO,EAAa,OAAO,YAAY,QAAQ,YAAY,SAAsB,EAAK,GAAc,CAAC,WAAW,GAAM,OAAO,qBAAqB,MAAM,kBAAkB,OAAO,qBAAqB,SAAS,CAAC,WAAW,6DAA6D,SAAS,OAAO,UAAU,SAAS,WAAW,IAAI,cAAc,MAAM,WAAW,KAAK,EAAE,WAAW,qBAAqB,aAAa,EAAkB,KAAK,CAAY,GAAG,aAAa,UAAU,oBAAoB,UAAU,oBAAoB,UAAU,oBAAoB,UAAU,EAAkB,KAAK,CAAY,GAAG,uCAAuC,YAAY,CAAC,WAAW,6DAA6D,SAAS,OAAO,UAAU,SAAS,WAAW,IAAI,cAAc,MAAM,WAAW,KAAK,EAAE,OAAO,OAAO,GAAG,YAAY,SAAS,qBAAqB,WAAW,kBAAkB,UAAU,qBAAqB,cAAc,EAAkB,KAAK,CAAY,GAAG,KAAK,SAAS,YAAY,UAAU,EAAkB,KAAK,CAAY,GAAG,eAAe,SAAS,mBAAmB,YAAY,GAAK,eAAe,CAAc,EAAK,EAAO,IAAI,CAAC,UAAU,gBAAgB,mBAAmB,mBAAmB,SAAsB,EAAK,EAAmB,CAAC,SAAsB,EAAK,GAAU,CAAC,SAAS,IAAI,MAAM,GAAM,EAAE,UAAU,EAAW,EAAe,IAAgC,EAAKC,EAAU,CAAC,SAAS,GAAY,KAAK,CAAC,UAAU,EAAmB,UAAU,EAAmB,GAAG,EAAY,UAAU,EAAmB,UAAU,GAAoB,KAAS,IAAqB,GAAG,IAAqB,GAAG,IAAqB,GAAK,IAAqB,GAAuB,EAAK,EAAY,CAAC,GAAG,aAAa,IAAc,SAAsB,EAAK,EAAqB,SAAS,CAAC,MAAM,CAAC,UAAU,CAAkB,EAAE,SAAsB,EAAM,EAAO,IAAI,CAAC,UAAU,iBAAiB,mBAAmB,OAAO,SAAS,CAAc,EAAKC,EAAS,CAAC,sBAAsB,GAAK,SAAsB,EAAKC,EAAe,CAAC,SAAsB,EAAK,IAAI,CAAC,UAAU,+BAA+B,qBAAqB,YAAY,IAAI,OAAO,MAAM,CAAC,0BAA0B,OAAO,EAAE,SAAS,MAAM,CAAC,CAAC,CAAC,EAAE,UAAU,iBAAiB,mBAAmB,OAAO,MAAM,CAAC,OAAO,EAAE,KAAK,EAAmB,kBAAkB,MAAM,mBAAmB,EAAI,CAAC,EAAe,EAAKD,EAAS,CAAC,sBAAsB,GAAK,SAAsB,EAAKC,EAAe,CAAC,SAAsB,EAAK,IAAI,CAAC,UAAU,+BAA+B,qBAAqB,YAAY,IAAI,OAAO,MAAM,CAAC,0BAA0B,OAAO,EAAE,SAAS,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,gBAAgB,mBAAmB,QAAQ,MAAM,CAAC,OAAO,EAAE,KAAK,EAAmB,kBAAkB,MAAM,mBAAmB,EAAI,CAAC,EAAE,IAAqB,IAAoB,EAAK,EAAO,IAAI,CAAC,UAAU,gBAAgB,mBAAmB,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAW,EAAG,CAAC,CAAC,CAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,qBAAqB,QAAQ,qBAAqB,WAAW,kEAAkE,WAAW,8EAA8E,QAAQ,mBAAmB,UAAU,CAAC,EAAE,MAAM,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,EAA0B,CAAC,SAAsB,EAAK,EAAU,CAAC,UAAU,2BAA2B,gCAAgC,SAAS,iBAAiB,GAAK,OAAO,EAAa,aAAa,GAAK,OAAO,YAAY,QAAQ,YAAY,SAAsB,EAAKC,GAAkB,CAAC,WAAW,EAAY,UAAU,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,SAAsB,EAAKjB,GAAY,CAAC,SAAS,GAAM,WAAW,SAAS,YAAY,EAAE,OAAO,OAAO,GAAG,YAAY,SAAS,YAAY,UAAU,EAAkB,KAAK,CAAY,GAAG,eAAe,WAAW,GAAG,iBAAiB,GAAG,iBAAiB,KAAK,YAAY,EAAE,kBAAkB,EAAE,aAAa,GAAG,mBAAmB,GAAG,OAAO,EAAE,MAAM,CAAC,OAAO,OAAO,MAAM,MAAM,EAAE,MAAM,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,EAAO,IAAI,CAAC,UAAU,iBAAiB,mBAAmB,OAAO,OAAO,EAAa,SAAS,CAAC,GAAY,GAAgB,EAAK,MAAM,CAAC,UAAU,gCAAgC,mBAAmB,OAAO,SAAsB,EAAK,EAA0B,CAAC,SAAsB,EAAK,EAAU,CAAC,UAAU,0BAA0B,gCAAgC,MAAM,iBAAiB,GAAK,OAAO,YAAY,QAAQ,YAAY,SAAsB,EAAKC,EAAe,CAAC,SAAS,qBAAqB,aAAa,oBAAoB,gBAAgB,qBAAqB,iBAAiB,qEAAqE,gBAAgB,CAAC,WAAW,6DAA6D,SAAS,OAAO,UAAU,SAAS,WAAW,IAAI,cAAc,MAAM,WAAW,MAAM,EAAE,cAAc,SAAS,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,aAAa,EAAE,UAAU,GAAG,SAAS,GAAG,oBAAoB,yBAAyB,mBAAmB,cAAc,gBAAgB,8BAA8B,oBAAoB,EAAE,eAAe,GAAG,cAAc,kBAAkB,UAAU,cAAc,OAAO,OAAO,cAAc,EAAE,YAAY,GAAG,GAAG,YAAY,kBAAkB,CAAC,WAAW,6DAA6D,SAAS,OAAO,UAAU,SAAS,WAAW,IAAI,cAAc,MAAM,WAAW,MAAM,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,eAAe,GAAG,SAAS,YAAY,UAAU,eAAe,SAAS,IAAI,OAAO,EAAE,eAAe,2BAA2B,gBAAgB,GAAG,WAAW,gBAAgB,MAAM,CAAC,OAAO,MAAM,EAAE,cAAc,CAAC,WAAW,6DAA6D,SAAS,OAAO,UAAU,SAAS,WAAW,IAAI,cAAc,SAAS,WAAW,MAAM,EAAE,YAAY,EAAE,aAAa,CAAC,WAAW,6DAA6D,SAAS,OAAO,UAAU,SAAS,WAAW,IAAI,cAAc,MAAM,WAAW,MAAM,EAAE,QAAQ,GAAa,QAAQ,EAAE,MAAM,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,UAAU,iBAAiB,mBAAmB,QAAQ,uBAAuB,GAAK,SAAS,CAAc,EAAK,EAA0B,CAAC,SAAsB,EAAK,GAAmC,CAAC,QAAQ,GAAU,UAAU,0BAA0B,gCAAgC,SAAS,wBAAwB,SAAS,QAAQ,GAAW,iBAAiB,GAAK,OAAO,YAAY,UAAU,GAAK,kBAAkB,GAAK,QAAQ,YAAY,SAAsB,EAAKgB,GAAkB,CAAC,WAAW,EAAY,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,mEAAmE,SAAS,OAAO,UAAU,SAAS,WAAW,IAAI,cAAc,MAAM,WAAW,QAAQ,CAAC,EAAE,UAAU,CAAC,iBAAiB,IAAI,UAAU,CAAC,WAAW,mEAAmE,SAAS,OAAO,UAAU,SAAS,WAAW,IAAI,cAAc,MAAM,WAAW,QAAQ,CAAC,CAAC,EAAE,SAAsB,EAAKf,GAAgB,CAAC,QAAQ,EAAkB,KAAK,CAAY,GAAG,yBAAyB,OAAO,OAAO,GAAG,YAAY,SAAS,YAAY,iBAAiB,IAAI,YAAY,EAAkB,KAAK,CAAY,GAAG,2CAA2C,kBAAkB,EAAkB,KAAK,CAAY,GAAG,UAAU,MAAM,CAAC,MAAM,MAAM,EAAE,SAAS,8GAA8G,aAAa,CAAC,EAAE,eAAe,sDAAsD,MAAM,EAAkB,KAAK,CAAY,GAAG,iCAAiC,UAAU,CAAC,WAAW,mEAAmE,SAAS,OAAO,UAAU,SAAS,WAAW,IAAI,cAAc,MAAM,WAAW,QAAQ,EAAE,YAAY,EAAkB,KAAK,CAAY,GAAG,uBAAuB,SAAS,GAAK,MAAM,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,EAA0B,CAAC,SAAsB,EAAK,EAAU,CAAC,UAAU,2BAA2B,gCAAgC,SAAS,iBAAiB,GAAK,OAAO,YAAY,QAAQ,YAAY,SAAsB,EAAKe,GAAkB,CAAC,WAAW,EAAY,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,mEAAmE,SAAS,OAAO,UAAU,SAAS,WAAW,IAAI,cAAc,UAAU,WAAW,KAAK,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,WAAW,mEAAmE,SAAS,OAAO,UAAU,SAAS,WAAW,IAAI,cAAc,UAAU,WAAW,KAAK,CAAC,CAAC,EAAE,SAAsB,EAAKd,GAAsB,CAAC,aAAa,WAAW,eAAe,QAAQ,gBAAgB,eAAe,iBAAiB,mBAAmB,YAAY,gGAAgG,kBAAkB,mCAAmC,WAAW,6BAA6B,cAAc,GAAG,aAAa,IAAI,OAAO,OAAO,GAAG,YAAY,SAAS,YAAY,iBAAiB,IAAI,UAAU,OAAO,SAAS,GAAG,qBAAqB,cAAc,UAAU,mBAAmB,MAAM,CAAC,MAAM,MAAM,EAAE,UAAU,CAAC,WAAW,mEAAmE,SAAS,OAAO,UAAU,SAAS,WAAW,IAAI,cAAc,UAAU,WAAW,KAAK,EAAE,MAAM,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,EAA0B,CAAC,SAAsB,EAAK,EAAU,CAAC,UAAU,0BAA0B,gCAAgC,MAAM,iBAAiB,GAAK,OAAO,EAAa,OAAO,YAAY,QAAQ,YAAY,SAAsB,EAAKC,GAAgC,CAAC,OAAO,OAAO,GAAG,YAAY,SAAS,YAAY,MAAM,CAAC,OAAO,OAAO,MAAM,MAAM,EAAE,MAAM,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAczif,EAAE,CAdqjf,gFAAgF,0XAA0X,6IAA6I,kTAAkT,qQAAqQ,+IAA+I,4FAA4F,uKAAuK,qSAAqS,6TAA6T,wGAAwG,yUAAyU,2KAA2K,yGAAyG,8KAA8K,GAAGc,EAAgB,6JAA6J,yKAAyK,qHAAqH,wGAAwG,kbAc9lmB,EAAE,cAAc,EAAiC,GAAgB,YAAY,mBAAmB,GAAgB,aAAa,CAAC,OAAO,IAAI,MAAM,IAAI,EAAE,EAAS,GAAgB,CAAC,CAAC,cAAc,GAAK,MAAM,CAAC,CAAC,cAAc,iBAAiB,OAAO,SAAS,MAAM,SAAS,aAAa,iBAAiB,IAAI,6GAA6G,OAAO,KAAK,EAAE,CAAC,cAAc,iBAAiB,OAAO,SAAS,MAAM,SAAS,aAAa,iBAAiB,IAAI,6GAA6G,OAAO,KAAK,EAAE,CAAC,cAAc,QAAQ,OAAO,SAAS,MAAM,SAAS,aAAa,QAAQ,aAAa,0EAA0E,IAAI,yEAAyE,OAAO,KAAK,EAAE,CAAC,cAAc,QAAQ,OAAO,SAAS,MAAM,SAAS,aAAa,QAAQ,aAAa,wDAAwD,IAAI,yEAAyE,OAAO,KAAK,EAAE,CAAC,cAAc,QAAQ,OAAO,SAAS,MAAM,SAAS,aAAa,QAAQ,aAAa,cAAc,IAAI,wEAAwE,OAAO,KAAK,EAAE,CAAC,cAAc,QAAQ,OAAO,SAAS,MAAM,SAAS,aAAa,QAAQ,aAAa,cAAc,IAAI,wEAAwE,OAAO,KAAK,EAAE,CAAC,cAAc,QAAQ,OAAO,SAAS,MAAM,SAAS,aAAa,QAAQ,aAAa,uGAAuG,IAAI,wEAAwE,OAAO,KAAK,EAAE,CAAC,cAAc,QAAQ,OAAO,SAAS,MAAM,SAAS,aAAa,QAAQ,aAAa,uLAAuL,IAAI,wEAAwE,OAAO,KAAK,EAAE,CAAC,cAAc,QAAQ,OAAO,SAAS,MAAM,SAAS,aAAa,QAAQ,aAAa,oGAAoG,IAAI,wEAAwE,OAAO,KAAK,EAAE,CAAC,cAAc,iBAAiB,OAAO,SAAS,MAAM,SAAS,aAAa,iBAAiB,IAAI,6GAA6G,OAAO,KAAK,EAAE,CAAC,cAAc,oBAAoB,OAAO,SAAS,MAAM,SAAS,aAAa,aAAa,IAAI,yEAAyE,OAAO,KAAK,CAAC,CAAC,EAAE,GAAG,GAAmB,GAAG,GAAiB,GAAG,GAAoB,GAAG,GAAqB,GAAG,GAA2B,GAAG,GAAqC,GAAG,GAAwBC,CAAiB,CAAC,EAAE,CAAC,6BAA6B,EAAI,CAAC,EAAE,GAAgB,OAAO,CAAC,MAAM,EAAM,IAAU,CAAC,IAAM,EAAO,EAAQ,OAAa,EAAS,EAAQ,SAAe,EAAgB,GAAW,IAAI,GAAM,EAAE,EAAO,CAAQ,EAAE,OAAO,GAAkB,KAAK,EAAgB,QAAQ,CAAC,EAAE,CAAO,CAAE,CAAC,EACtxG,GAAqB,CAAC,QAAU,CAAC,MAAQ,CAAC,KAAO,SAAS,YAAc,CAAC,sBAAwB,GAAG,CAAC,EAAE,QAAU,CAAC,KAAO,iBAAiB,KAAO,kBAAkB,MAAQ,CAAC,EAAE,YAAc,CAAC,kBAAoB,OAAO,yBAA2B,OAAO,sBAAwB,MAAM,uBAAyB,OAAO,6BAA+B,OAAO,qBAAuB,QAAQ,oCAAsC,4JAA0L,4BAA8B,OAAO,sBAAwB,IAAI,+BAAiC,OAAO,qBAAuB,OAAO,qBAAuB,OAAO,yBAA2B,OAAO,CAAC,EAAE,gBAAkB,CAAC,KAAO,WAAW,YAAc,CAAC,sBAAwB,GAAG,CAAC,EAAE,mBAAqB,CAAC,KAAO,UAAU,CAAC,CAAC"}