{"version":3,"file":"FC_CartCheckoutButton.Dn2LUIUP.mjs","names":["React.useContext","React.useMemo","React.forwardRef","React.useId","sharedStyle.className","className","RichText","sharedStyle.css","sharedStyle.fonts","useState","useMemo","isCurrencySymbolSameAsCode","ShopXCartSubtotal","useState","useRef","useCallback","_Fragment","useState","useRef","useCallback"],"sources":["https:/framerusercontent.com/modules/RBhrmJSayFIEr01hpPFn/uknigYuJhd1icsEQ9e0L/TIzKiGcOB.js","https:/framerusercontent.com/modules/Xz56MXJ2ZtTgFtT1VmZz/jsrZt5LjumizHw76NuWB/atkMxVAKb.js","https:/framer.com/m/shopX-cartSubtotal-pv7y.js","https:/framerusercontent.com/modules/g7fE5FpUH8BU8KzDDNuK/ev96V8ZMvBdXi4qVNtAQ/FC_CartSubtotal.js","https:/framerusercontent.com/modules/oKOqnJyJ3wjpqRFTNCqe/JaPX0gMUPXVoAKRlhepR/FC_CartProductCard.js","https:/framerusercontent.com/modules/v7LtkkyNjEAQ8EyrCJW6/tND47xWycBAq6ZXOZgJN/FC_CartCheckoutButton.js"],"sourcesContent":["import{fontStore}from\"framer\";fontStore.loadWebFontsFromSelectors([\"GF;Inter-500\"]);export const fonts=[{family:\"Inter\",moduleAsset:{localModuleIdentifier:\"local-module:css/TIzKiGcOB:default\",url:\"https://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuI6fMZhrib2Bg-4.ttf\"},style:\"normal\",url:\"https://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuI6fMZhrib2Bg-4.ttf\",weight:\"500\"}];export const css=['.framer-PGxOy .framer-styles-preset-j385k6:not(.rich-text-wrapper), .framer-PGxOy .framer-styles-preset-j385k6.rich-text-wrapper p { --framer-font-family: \"Inter\", sans-serif; --framer-font-size: 16px; --framer-font-style: normal; --framer-font-weight: 500; --framer-letter-spacing: -0.03em; --framer-line-height: 100%; --framer-paragraph-spacing: 16px; --framer-text-alignment: left; --framer-text-color: var(--token-c734a28a-9fe9-4aa2-97ea-e240e7bd3071, #000000); --framer-text-decoration: none; --framer-text-transform: none; }'];export const className=\"framer-PGxOy\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (b084a7c)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,RichText,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import*as sharedStyle from\"https://framerusercontent.com/modules/RBhrmJSayFIEr01hpPFn/uknigYuJhd1icsEQ9e0L/TIzKiGcOB.js\";const cycleOrder=[\"q765oO3yC\"];const variantClassNames={q765oO3yC:\"framer-v-kixgj4\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transitions={default:{damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"}};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/ _jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const getProps=({height,id,text,width,...props})=>{var ref;return{...props,U2bckk9Ci:(ref=text!==null&&text!==void 0?text:props.U2bckk9Ci)!==null&&ref!==void 0?ref:\"<p>$0 USD</p>\"};};const createLayoutDependency=(props,variants)=>variants.join(\"-\")+props.layoutDependency;const Component=/*#__PURE__*/ React.forwardRef(function(props,ref){const{activeLocale}=useLocaleInfo();const{style,className,layoutId,variant,U2bckk9Ci,...restProps}=getProps(props);const{baseVariant,classNames,gestureVariant,setGestureState,setVariant,transition,variants}=useVariantState({cycleOrder,defaultVariant:\"q765oO3yC\",transitions,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const defaultLayoutId=React.useId();return /*#__PURE__*/ _jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/ _jsx(motion.div,{initial:variant,animate:variants,onHoverStart:()=>setGestureState({isHovered:true}),onHoverEnd:()=>setGestureState({isHovered:false}),onTapStart:()=>setGestureState({isPressed:true}),onTap:()=>setGestureState({isPressed:false}),onTapCancel:()=>setGestureState({isPressed:false}),className:cx(\"framer-PixXK\",sharedStyle.className,classNames),style:{display:\"contents\"},children:/*#__PURE__*/ _jsx(Transition,{value:transition,children:/*#__PURE__*/ _jsx(motion.div,{...restProps,className:cx(\"framer-kixgj4\",className),\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"q765oO3yC\",ref:ref,style:{...style},children:/*#__PURE__*/ _jsx(RichText,{__fromCanvasComponent:true,children:U2bckk9Ci,className:\"framer-1iq4zis\",layoutDependency:layoutDependency,layoutId:\"ZBWxU4W6n\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\",\"--framer-paragraph-spacing\":\"0px\"},stylesPresetsClassNames:{p:\"framer-styles-preset-j385k6\"},verticalAlignment:\"top\",withExternalLayout:true})})})})});});const css=['.framer-PixXK [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; pointer-events: none; }',\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-PixXK .framer-1n4dbv2 { display: block; }\",\".framer-PixXK .framer-kixgj4 { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 0px 0px 0px 0px; position: relative; width: min-content; }\",\".framer-PixXK .framer-1iq4zis { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-PixXK .framer-kixgj4 { gap: 0px; } .framer-PixXK .framer-kixgj4 > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-PixXK .framer-kixgj4 > :first-child { margin-left: 0px; } .framer-PixXK .framer-kixgj4 > :last-child { margin-right: 0px; } }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 16\n * @framerIntrinsicWidth 55.5\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"U2bckk9Ci\":\"text\"}\n */ const FrameratkMxVAKb=withCSS(Component,css,\"framer-PixXK\");export default FrameratkMxVAKb;FrameratkMxVAKb.displayName=\"shopX / cartSubtotal\";FrameratkMxVAKb.defaultProps={height:16,width:55.5};addPropertyControls(FrameratkMxVAKb,{U2bckk9Ci:{defaultValue:\"<p>$0 USD</p>\",title:\"text\",type:ControlType.RichText}});addFonts(FrameratkMxVAKb,[...sharedStyle.fonts]);\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FrameratkMxVAKb\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerVariables\":\"{\\\"U2bckk9Ci\\\":\\\"text\\\"}\",\"framerIntrinsicHeight\":\"16\",\"framerIntrinsicWidth\":\"55.5\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./atkMxVAKb.map","/*\n * shopX / cartSubtotal\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/Xz56MXJ2ZtTgFtT1VmZz/jsrZt5LjumizHw76NuWB/atkMxVAKb.js\"\nexport { default } from \"https://framerusercontent.com/modules/Xz56MXJ2ZtTgFtT1VmZz/jsrZt5LjumizHw76NuWB/atkMxVAKb.js\"\n","/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * © 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useMemo,useState}from\"react\";import ShopXCartSubtotal from\"https://framer.com/m/shopX-cartSubtotal-pv7y.js\";import{addPropertyControls,ControlType}from\"framer\";import{get}from\"lodash-es\";import{knownCurrenciesWithCodeAsSymbol}from\"https://framerusercontent.com/modules/k9s4cejdkBGDjmzudhzM/18cq93eooqM4YmdbL7E2/currencyMaps.js\";import{getLocaleFromCountry}from\"https://framerusercontent.com/modules/vC6fzbfO83MgBPIhn5zl/DUlbmWuOELzEUenVmv3G/locales.js\";import{RenderTarget}from\"framer\";// Helper function to check if a currency's symbol is the same as its code\nconst isCurrencySymbolSameAsCode=currencyCode=>{// For some currencies like CHF, the browser might use the code as the symbol\nif(!currencyCode)return false;if(knownCurrenciesWithCodeAsSymbol.includes(currencyCode)){return true;}try{const formatted=new Intl.NumberFormat(undefined,{style:\"currency\",currency:currencyCode,currencyDisplay:\"narrowSymbol\"}).format(0);// Remove digits, decimal points, and common formatting characters\nconst cleanFormatted=formatted.replace(/[0-9.,\\s]/g,\"\");// Check if what remains is the currency code\nreturn cleanFormatted===currencyCode;}catch(e){return false;}};/**\n * @framerDisableUnlink\n */export default function FC_CartSubtotal(props){const{format:{showCurrency,showSymbol,showDecimals,currencyCode:previewCurrencyCode}={}}=props;const[subtotal,setSubtotal]=useState(0);const[cart,setCart]=useState(null);const[selectedCurrency,setSelectedCurrency]=useState(\"\");const[selectedCountryCode,setSelectedCountryCode]=useState(\"\");const[selectedCountry,setSelectedCountry]=useState(\"\");const[currencyConfig,setCurrencyConfig]=useState(()=>{// Initialize with window values if available\nif(typeof window!==\"undefined\"){const position=window?.__FcCurrencyConfigs?.currencyPosition||\"Before\";const initialConfig={position:position,showCode:position!==\"Hide\",symbol:window?.__FcCurrencyConfigs?.currencySymbol||\"$\"};//console.log('Initial currency config state:', initialConfig, window?.__FcCurrencyConfigs);\nreturn initialConfig;}return{position:\"Before\",showCode:false,symbol:\"$\"};});const isBrowser=typeof window!==\"undefined\";// Initialize currency from localStorage on page load\nuseEffect(()=>{if(!isBrowser)return;const storedCurrency=localStorage.getItem(\"selectedCurrency\");const storedCountryCode=localStorage.getItem(\"selectedCountryCode\");const storedCountry=localStorage.getItem(\"selectedCountry\");setSelectedCurrency(storedCurrency||\"USD\");setSelectedCountryCode(storedCountryCode||\"US\");setSelectedCountry(storedCountry||\"United States\");// console.log(\"[FC_CartSubtotal] Initial Currency State:\", {\n//     currency: storedCurrency\n// })\n},[isBrowser]);// Debug current currency config\n// useEffect(() => {\n//     console.log('Currency config changed:', currencyConfig);\n// }, [currencyConfig]);\n// Add currency settings listener\nuseEffect(()=>{if(!isBrowser)return;function updateCurrencyConfig(position,symbol){//console.log('Updating currency config with:', { position, symbol });\nconst newConfig={position:position||\"Before\",showCode:position!==\"Hide\",symbol:symbol||\"$\"};//console.log('New currency config:', newConfig);\nsetCurrencyConfig(newConfig);}// Handle currency settings updates\nconst handleCurrencySettingsUpdate=e=>{//console.log('Currency update event received:', e.detail);\nif(!e.detail?.current){//console.log('Invalid currency update event:', e);\nreturn;}updateCurrencyConfig(e.detail.current.currencyPosition,e.detail.current.currencySymbol);};// Initial setup\nconst currentPosition=window.__FcCurrencyConfigs?.currencyPosition;const currentSymbol=window.__FcCurrencyConfigs?.currencySymbol;//console.log('Initial currency values:', { currentPosition, currentSymbol });\nupdateCurrencyConfig(currentPosition,currentSymbol);// Add event listener\ndocument.addEventListener(\"currency__settings-updated\",handleCurrencySettingsUpdate);//console.log('Currency event listener added');\n// Listen for currency changes\nconst handleCurrencyChange=event=>{//console.log(\"[FC_CartSubtotal] Currency Change Event:\", event.detail);\nconst{currency,countryCode,country}=event.detail;setSelectedCurrency(currency);setSelectedCountryCode(countryCode);setSelectedCountry(country);};window.addEventListener(\"currency_changed\",handleCurrencyChange);return()=>{document.removeEventListener(\"currency__settings-updated\",handleCurrencySettingsUpdate);window.removeEventListener(\"currency_changed\",handleCurrencyChange);//console.log('Currency event listeners removed');\n};},[isBrowser]);// // Cart calculation effect\nuseEffect(()=>{if(!isBrowser)return;const logCartDetails=()=>{const cart=get(window,\"shopXtools.cart\");// Log the entire cart object\n//console.log('Cart Data:', cart);\nif(cart){setCart(cart);// Log each line item in the cart\nconst cartItems=get(cart,\"lines.edges\",[]);// console.log(\n//     'Cart Items:',\n//     cartItems.map((edge) => {\n//         const item = edge.node;\n//         return {\n//             title: get(item, 'merchandise.product.title', 'Unknown'),\n//             variantId: get(item, 'merchandise.id', ''),\n//             price: get(item, 'cost.totalAmount.amount') ||\n//                    get(item, 'cost.subtotalAmount.amount') ||\n//                    get(item, 'merchandise.price.amount', '0'),\n//             quantity: get(item, 'quantity', 0),\n//             currencyCode: get(item, 'cost.totalAmount.currencyCode') ||\n//                           get(item, 'merchandise.price.currencyCode', 'USD'),\n//         };\n//     })\n// );\n// Log the subtotal\nconst subtotal=parseFloat(get(cart,\"cost.subtotalAmount.amount\",\"0\"));//console.log('Parsed Subtotal (to be set in state):', subtotal);\nsetSubtotal(subtotal);}else{// console.log(\"No cart data available.\")\n}};// Log cart details on load\nlogCartDetails();// Re-log cart details on cart update events\nwindow.addEventListener(\"shopXtools-cart-update\",logCartDetails);return()=>window.removeEventListener(\"shopXtools-cart-update\",logCartDetails);},[isBrowser]);const _currencyCode=useMemo(()=>{if(!isBrowser)return\"USD\";// Try different paths to get currency code\nconst cartCurrencyCode=get(window,\"shopXtools.cart.cost.subtotalAmount.currencyCode\",\"USD\");//console.log('Currency Code in _currencyCode:', cartCurrencyCode);\nreturn selectedCurrency||cartCurrencyCode;},[isBrowser,cart,selectedCurrency]);const showMockValues=useMemo(()=>subtotal===0&&isBrowser&&window.location.origin.endsWith(\"framercanvas.com\"),[subtotal,isBrowser]);// Common function to format price based on options\nconst formatPriceWithOptions=(numericPrice,currCode)=>{const symbolSameAsCode=isCurrencySymbolSameAsCode(currCode);// Get locale from selected country code\nconst locale=getLocaleFromCountry(selectedCountryCode);// Log browser user agent for debugging iOS-specific issues\n// if (isBrowser) {\n//     console.log(\"[FC_CartSubtotal] Format debug:\", {\n//         userAgent: navigator.userAgent,\n//         isCurrencySymbolSameAsCode: symbolSameAsCode,\n//         currencyCode: currCode,\n//         selectedCountryCode,\n//         locale,\n//         showSymbol,\n//         showCurrency,\n//         showDecimals,\n//     })\n// }\n// Determine if we should show decimals based on the setting\nconst shouldShowDecimals=()=>{if(showDecimals===\"Always show\")return true;if(showDecimals===\"Never show\")return false;if(showDecimals===\"Hide when .00\"){// Check if the decimal part is zero\nreturn numericPrice%1!==0;}return true// Default fallback for boolean value\n;};const decimalDigits=shouldShowDecimals()?2:0;// If showing neither symbol nor code, just format the number\nif(!showSymbol&&!showCurrency){const formattedNumber=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);//console.log('Formatted Number (No Symbol or Currency):', formattedNumber);\nreturn formattedNumber;}// Special case for USD to prevent \"US$\" display in Safari iOS\nif(currCode===\"USD\"&&showSymbol){// Check if running on iOS device\nconst isIOS=isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream;// Format USD manually to avoid the iOS \"US$\" prefix\nif(isIOS){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);if(!showCurrency){return`$${number}`// Just \"$50\" format\n;}else{return`$${number} USD`// \"$50 USD\" format\n;}}else{// For non-iOS devices, continue with normal formatting but use\n// a more controlled approach to ensure consistency\nif(!showCurrency){return new Intl.NumberFormat(locale,{style:\"currency\",currency:\"USD\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);}else{const withSymbol=new Intl.NumberFormat(locale,{style:\"currency\",currency:\"USD\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);return`${withSymbol} USD`;}}}// For currencies where symbol is same as code (like CHF)\nif(symbolSameAsCode){// If showing currency code, always use code-first format and ignore symbol\nif(showCurrency&&!showSymbol){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const output=`${currCode} ${number}`;return output;}if(showSymbol&&!showCurrency){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const output=`${currCode} ${number}`;return output;}if(showCurrency&&showSymbol){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);return`${currCode} ${number}`;}}// For currencies with distinct symbols (like USD with $)\n// If showing only the code (no symbol)\nif(!showSymbol&&showCurrency){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);// For normal currencies, show code after the number\nreturn`${number} ${currCode}`;}// If showing only the symbol (no code)\nif(showSymbol&&!showCurrency){return new Intl.NumberFormat(locale,{style:\"currency\",currency:currCode,minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);}// If showing both symbol and code\nconst withSymbol=new Intl.NumberFormat(locale,{style:\"currency\",currency:currCode,minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);return`${withSymbol} ${currCode}`;};const text=useMemo(()=>{if(!isBrowser)return\"\";// For canvas view, handle the display options directly\nif(RenderTarget.current()===RenderTarget.canvas||showMockValues){const mockAmount=150;const currentCurrencyCode=previewCurrencyCode||\"USD\";return formatPriceWithOptions(mockAmount,currentCurrencyCode);}// For live view, use the actual subtotal\nreturn formatPriceWithOptions(subtotal,_currencyCode);},[isBrowser,showMockValues,subtotal,_currencyCode,showCurrency,showSymbol,showDecimals,previewCurrencyCode,props.format]);if(!isBrowser){return /*#__PURE__*/_jsx(\"div\",{style:{display:\"inline-flex\"}});}// For debugging\n// console.log('Rendering FC_CartSubtotal with:', {\n//     subtotal,\n//     text,\n//     currencyConfig,\n//     props\n// })\n// Render a basic div if ShopXCartSubtotal is not available\nif(typeof ShopXCartSubtotal===\"undefined\"){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",textAlign:\"right\"},children:/*#__PURE__*/_jsx(\"p\",{style:{...props.font,color:props.color,margin:0},children:text})});}return /*#__PURE__*/_jsx(ShopXCartSubtotal,{...props,text:/*#__PURE__*/_jsx(\"p\",{style:{...props.font,color:props.color,margin:0},children:text}),style:{width:\"100%\"}});}FC_CartSubtotal.defaultProps={format:{showCurrency:false,showSymbol:true,currencyCode:\"USD\",showDecimals:\"Always show\"}};addPropertyControls(FC_CartSubtotal,{format:{type:ControlType.Object,title:\"Format\",controls:{showSymbol:{type:ControlType.Boolean,title:\"Symbol\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"$, \\xa3, €, etc.\"},showCurrency:{type:ControlType.Boolean,title:\"Code\",defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"USD, EUR, CHF, etc.\"},showDecimals:{type:ControlType.Enum,title:\"Decimals\",defaultValue:\"Always show\",options:[\"Always show\",\"Never show\",\"Hide when .00\"],optionTitles:[\"Always show\",\"Never show\",\"Hide when .00\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},currencyCode:{type:ControlType.Enum,title:\"Preview\",defaultValue:\"USD\",options:[\"USD\",\"EUR\",\"GBP\",\"CHF\",\"JPY\",\"CAD\",\"AUD\",\"CNY\",\"HKD\",\"NZD\",\"SEK\",\"KRW\",\"SGD\",\"NOK\",\"MXN\",\"INR\",\"RUB\",\"ZAR\",\"TRY\",\"BRL\",\"TWD\",\"DKK\",\"PLN\",\"THB\",\"IDR\",\"HUF\",\"CZK\",\"ILS\",\"CLP\",\"PHP\",\"AED\",\"COP\",\"SAR\",\"MYR\",\"RON\"],description:\"Currency on your site is automatic, this is only shown in canvas preview.\"}}},font:{type:ControlType.Font,controls:\"extended\",title:\"Font\"},color:{type:ControlType.Color,defaultValue:\"#000\",title:\"Color\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_CartSubtotal\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * © 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import React,{useCallback,useRef,useEffect,useState}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{get,throttle}from\"lodash-es\";import{removeLineMutation,updatelineMutation,updatelineMutationNoPlans,removeLineMutationNoPlans,getProductMetafields}from\"https://framerusercontent.com/modules/yiRfl1JCGhIBUL31WVDk/wupS2XmBAHu1kBQNv9pi/mutations_v2.js\";import{knownCurrenciesWithCodeAsSymbol}from\"https://framerusercontent.com/modules/k9s4cejdkBGDjmzudhzM/18cq93eooqM4YmdbL7E2/currencyMaps.js\";import{useIsBrowser}from\"https://framerusercontent.com/modules/ncBs5KPMI9I5GEta13fn/zGXDjuZapa1SGy6D8P5e/IsBrowser.js\";import{getLocaleFromCountry}from\"https://framerusercontent.com/modules/vC6fzbfO83MgBPIhn5zl/DUlbmWuOELzEUenVmv3G/locales.js\";import{trackFacebookPixelRemoveFromCart}from\"https://framerusercontent.com/modules/6Zs9CjkPbKzHjoy8LK08/iqoIwmJw4hztafi4V4IV/Fb_pixel.js\";// Helper function to check if a currency's symbol is the same as its code\nconst isCurrencySymbolSameAsCode=currencyCode=>{// For some currencies like CHF, the browser might use the code as the symbol\nif(!currencyCode)return false;if(knownCurrenciesWithCodeAsSymbol.includes(currencyCode)){return true;}try{const formatted=new Intl.NumberFormat(undefined,{style:\"currency\",currency:currencyCode,currencyDisplay:\"narrowSymbol\"}).format(0);// Remove digits, decimal points, and common formatting characters\nconst cleanFormatted=formatted.replace(/[0-9.,\\s]/g,\"\");// Check if what remains is the currency code\nreturn cleanFormatted===currencyCode;}catch(e){return false;}};/**\n * @framerDisableUnlink\n */export default function FC_CartProductCard(props){const[cart,setCart]=useState({});const[cartItems,setCartItems]=useState([]);const[errorMessage,setErrorMessage]=useState(\"\");const isFetching=useRef(false);const[selectedCurrency,setSelectedCurrency]=useState(\"\");const[selectedCountryCode,setSelectedCountryCode]=useState(\"\");const[selectedCountry,setSelectedCountry]=useState(\"\");// const [subscriptionPrice, setSubscriptionPrice] = useState(null)\n// const [subscriptionPlan, setSubscriptionPlan] = useState(null)\nconst isBrowser=useIsBrowser();// Helper function to calculate current product quantity across all variants\nconst getCurrentProductQuantity=useCallback(productHandle=>{if(!cartItems||!productHandle)return 0;return cartItems.reduce((total,{node})=>{const lineProductHandle=node?.merchandise?.product?.handle;if(lineProductHandle===productHandle){return total+(node.quantity||0);}return total;},0);},[cartItems]);// Initialize currency from localStorage on page load\nuseEffect(()=>{if(!isBrowser)return;const storedCurrency=localStorage.getItem(\"selectedCurrency\");const storedCountryCode=localStorage.getItem(\"selectedCountryCode\");const storedCountry=localStorage.getItem(\"selectedCountry\");setSelectedCurrency(storedCurrency||\"USD\");setSelectedCountryCode(storedCountryCode||\"US\");setSelectedCountry(storedCountry||\"United States\");//console.log(\"[FC_CartProductCard] setting selectedCountryCode and currency\", storedCountryCode, storedCurrency)\n},[isBrowser]);// Listen for currency changes\nuseEffect(()=>{if(!isBrowser)return;const handleCurrencyChange=event=>{const{currency,countryCode,country}=event.detail;setSelectedCurrency(currency);setSelectedCountryCode(countryCode);setSelectedCountry(country);//console.log(\"[FC_CartProductCard] currency changed to\", selectedCountryCode, selectedCurrency)\n};window.addEventListener(\"currency_changed\",handleCurrencyChange);return()=>{window.removeEventListener(\"currency_changed\",handleCurrencyChange);};},[isBrowser,selectedCurrency,selectedCountryCode]);// Add currency config state\nconst[currencyConfig,setCurrencyConfig]=useState(()=>{// Initialize with window values if available\nif(typeof window!==\"undefined\"){const position=window?.__FcCurrencyConfigs?.currencyPosition||\"Before\";const initialConfig={position:position,showCode:position!==\"Hide\",symbol:window?.__FcCurrencyConfigs?.currencySymbol||\"$\"};// console.log(\n//     \"Initial currency config state:\",\n//     initialConfig,\n//     window?.__FcCurrencyConfigs\n// )\nreturn initialConfig;}return{position:\"Before\",showCode:false,symbol:\"$\"};});// Add currency settings listener\nuseEffect(()=>{if(typeof window===\"undefined\")return;function updateCurrencyConfig(position,symbol){//(\"Updating currency config with:\", { position, symbol })\nconst newConfig={position:position||\"Before\",showCode:position!==\"Hide\",symbol:symbol||\"$\"};//console.log(\"New currency config:\", newConfig)\nsetCurrencyConfig(newConfig);}// Handle currency settings updates\nconst handleCurrencySettingsUpdate=e=>{//console.log(\"Currency update event received:\", e.detail)\nif(!e.detail?.current){//console.log(\"Invalid currency update event:\", e)\nreturn;}updateCurrencyConfig(e.detail.current.currencyPosition,e.detail.current.currencySymbol);};// Initial setup\nconst currentPosition=window.__FcCurrencyConfigs?.currencyPosition;const currentSymbol=window.__FcCurrencyConfigs?.currencySymbol;// console.log(\"Initial currency values:\", {\n//     currentPosition,\n//     currentSymbol,\n// })\nupdateCurrencyConfig(currentPosition,currentSymbol);// Add event listener\ndocument.addEventListener(\"currency__settings-updated\",handleCurrencySettingsUpdate);return()=>{document.removeEventListener(\"currency__settings-updated\",handleCurrencySettingsUpdate);};},[]);const _showCurrencyCode=props.priceConfigs?.showCurrencyCode;const _showCurrencySymbol=props.priceConfigs?.showSymbol;// // Add subscription price listener\n// useEffect(() => {\n//     if (!isBrowser) return\n//     const handleSubscriptionPriceUpdate = (e) => {\n//         if (e.detail?.price) {\n//             setSubscriptionPrice(e.detail.price)\n//             setSubscriptionPlan(e.detail.plan.id)\n//         } else {\n//             setSubscriptionPrice(null)\n//             setSubscriptionPlan(null)\n//         }\n//     }\n//     document.addEventListener(\n//         \"subscription__price-update\",\n//         handleSubscriptionPriceUpdate\n//     )\n//     return () => {\n//         document.removeEventListener(\n//             \"subscription__price-update\",\n//             handleSubscriptionPriceUpdate\n//         )\n//     }\n// }, [isBrowser])\nconst[locale,setLocale]=useState(undefined);useEffect(()=>{//console.log(\"[FC_CartProductCard] selectedCountryCode\", selectedCountryCode)\nconst updatedLocale=getLocaleFromCountry(selectedCountryCode);//console.log(\"[FC_CartProductCard] Locale updated:\", updatedLocale);\nsetLocale(updatedLocale);},[selectedCountryCode]);const formatCartPrice=useCallback((amount,currencyCode)=>{// Clean and format amount\nif(typeof amount===\"string\"){amount=amount.replace(/[^0-9.]/g,\"\");const parts=amount.split(\".\");if(parts.length>2){amount=parts[0]+\".\"+parts.slice(1).join(\"\");}}if(typeof amount!==\"number\"){amount=parseFloat(amount);}if(isNaN(amount)){amount=0;}// For canvas view, use canvasPrice with USD\nif(RenderTarget.current()===RenderTarget.canvas){const format=props.priceConfigs?.format||{};return formatPriceWithOptions(amount,format.currencyCode||\"USD\");}// For browser view, use the current currency\nconst format=props.priceConfigs?.format||{};return formatPriceWithOptions(amount,currencyCode||\"USD\");},[props.priceConfigs,locale]);// Common function to format price based on options\nconst formatPriceWithOptions=useCallback((numericPrice,currCode)=>{if(!currCode)currCode=\"USD\";//console.log(\"[FC_CartProductCard] currCode\", currCode)\nconst format=props.priceConfigs?.format||{};// For backward compatibility\nconst showSymbol=format.showSymbol!==undefined?format.showSymbol:props.priceConfigs?.showSymbol!==undefined?props.priceConfigs.showSymbol:true;const showCurrency=format.showCurrency!==undefined?format.showCurrency:props.priceConfigs?.showCurrencyCode!==undefined?props.priceConfigs.showCurrencyCode:false;const showDecimals=format.showDecimals||\"Always show\";const symbolSameAsCode=isCurrencySymbolSameAsCode(currCode);//console.log(\"[FC_CartProductCard] receving locale from getLocaleFromCountry\", locale)\n// console.log(\"[FC_CartProductCard] Format debug:\", {\n//     userAgent: navigator.userAgent,\n//     isCurrencySymbolSameAsCode: symbolSameAsCode,\n//     currencyCode: currCode,\n//     selectedCountryCode,\n//     locale,\n// })\n// Determine if we should show decimals based on the setting\nconst shouldShowDecimals=()=>{if(showDecimals===\"Always show\")return true;if(showDecimals===\"Never show\")return false;if(showDecimals===\"Hide when .00\"){// Check if the decimal part is zero\nreturn numericPrice%1!==0;}return true// Default fallback\n;};const decimalDigits=shouldShowDecimals()?2:0;// If showing neither symbol nor code, just format the number\nif(!showSymbol&&!showCurrency){const formattedNumber=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);return formattedNumber;}// Special case for USD to prevent \"US$\" display in Safari iOS\nif(currCode===\"USD\"&&showSymbol){// Check if running on iOS device\nconst isIOS=isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream;// Format USD manually to avoid the iOS \"US$\" prefix\nif(isIOS){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);if(!showCurrency){return`$${number}`// Just \"$50\" format\n;}else{return`$${number} USD`// \"$50 USD\" format\n;}}else{// For non-iOS devices, continue with normal formatting but use\n// a more controlled approach to ensure consistency\nif(!showCurrency){return new Intl.NumberFormat(locale,{style:\"currency\",currency:\"USD\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);}else{const withSymbol=new Intl.NumberFormat(locale,{style:\"currency\",currency:\"USD\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);return`${withSymbol} USD`;}}}// For currencies where symbol is same as code (like CHF)\nif(symbolSameAsCode){// If showing currency code, always use code-first format and ignore symbol\nif(showCurrency&&!showSymbol){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const output=`${currCode} ${number}`;return output;}if(showSymbol&&!showCurrency){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const output=`${currCode} ${number}`;return output;}if(showCurrency&&showSymbol){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);return`${currCode} ${number}`;}}// For currencies with distinct symbols (like USD with $)\n// If showing only the code (no symbol)\nif(!showSymbol&&showCurrency){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);// For normal currencies, show code after the number\nreturn`${number} ${currCode}`;}// If showing only the symbol (no code)\nif(showSymbol&&!showCurrency){return new Intl.NumberFormat(locale,{style:\"currency\",currency:currCode,minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);}// If showing both symbol and code\nconst withSymbol=new Intl.NumberFormat(locale,{style:\"currency\",currency:currCode,minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);return`${withSymbol} ${currCode}`;},[props.priceConfigs,locale]);const fetchCartFromShopify=useCallback(async cartId=>{if(isFetching.current){return;}isFetching.current=true;try{// Wait until window.shopXtools.fetchCart is available\nawait waitForCondition(()=>window.shopXtools&&window.shopXtools.fetchCart);const cartData=await window.shopXtools.fetchCart(cartId);//console.log(\"[FETCH] Cart data received from Shopify:\", cartData);\nif(cartData){setCart(cartData);//console.log(\"[FETCH] Cart Data after setting state: :\", cartData)\nsetCartItems(cartData.lines?.edges||[]);//console.log(\"[FETCH] Cart items after setting state:\", cartData.lines?.edges);\n// Update the global cart data\nwindow.shopXtools.cart=cartData;// Dispatch cart update event\nwindow.dispatchEvent(new Event(\"shopXtools-cart-update\"));}else{setCart({});setCartItems([]);}}catch(error){setCart({});setCartItems([]);}finally{isFetching.current=false;}},[]);// useEffect(() => {\n//     console.log(\"[STATE] Updated cart:\", cart);\n// }, [cart]);\n// useEffect(() => {\n//     console.log(\"[STATE] Updated cartItems:\", cartItems);\n// }, [cartItems]);\n// Helper function to wait until a condition is true\nconst waitForCondition=useCallback((conditionFn,checkInterval=100,timeout=1e4)=>{return new Promise((resolve,reject)=>{const startTime=Date.now();const checkCondition=()=>{if(conditionFn()){resolve();}else if(Date.now()-startTime>=timeout){reject(new Error(\"Condition not met within timeout\"));}else{setTimeout(checkCondition,checkInterval);}};checkCondition();});},[]);const handleCartUpdate=useCallback(throttle(async()=>{let cartId=window[\"shopXtools\"]?.cart?.id;// console.log(\"[UPDATE] Checking for cartId:\", cartId);\n// console.log(\"[UPDATE] Checking for cart:\", window[\"shopXtools\"]?.cart);\nif(!cartId){try{cartId=localStorage.getItem(\"shopX_cart_id\");}catch(error){console.error(\"Error loading cart ID from local storage:\",error);}}if(cartId){await fetchCartFromShopify(cartId);//console.log(\"[UPDATE] Fetching cart from Shopify with cartId:\", cartId);\n}else{//console.log(\"[UPDATE] No cartId found, resetting cart state.\");\nsetCart({});setCartItems([]);}},500),[fetchCartFromShopify]);//console.log(\"Cart Data in CartProductCard:\", cart)\nuseEffect(()=>{//console.log(\"[EVENT] shopXtools-cart-update event triggered\");\n// Fetch cart data on component mount\nhandleCartUpdate();window.addEventListener(\"shopXtools-cart-update\",handleCartUpdate);return()=>{window.removeEventListener(\"shopXtools-cart-update\",handleCartUpdate);};},[handleCartUpdate]);//console.log(\"Cart Data in CartProductCard:\", cart)\nconst handleRemoveLine=useCallback(async(cartId,lineId,providedLineItem=null)=>{if(!cartId||!lineId){console.error(\"Missing cartId or lineId for remove operation\");return;}// Find the line item to get analytics data before removing\nconst lineItem=providedLineItem||cartItems.find(({node})=>node.id===lineId)?.node;if(lineItem){// Analytics - remove_from_cart event\nconst currency=lineItem.cost.subtotalAmount.currencyCode||\"USD\";const unitPrice=parseFloat(lineItem.cost?.amountPerQuantity?.amount||\"0\");const value=unitPrice*(lineItem.quantity||1);const item_id=lineItem.merchandise.id?.split(\"/\").pop()||\"\";const item_name=lineItem.merchandise.product?.title||\"\";const item_variant=lineItem.merchandise.title||\"\";const price=unitPrice;const quantity=lineItem.quantity||1;// Google Analytics tracking (remove_from_cart)\nif(typeof window.fcTrackGAEvent===\"function\"&&item_id&&item_name&&price>0){const payload={currency,value,items:[{item_id,item_name,item_variant,price,item_brand:lineItem.merchandise.product?.vendor||null,item_category:lineItem.merchandise.product?.productType||null,quantity,// TagHound compatibility\nSKU:item_id,\"Item Name\":item_name}]};window.fcTrackGAEvent(\"remove_from_cart\",payload);}else{// Skipping remove_from_cart due to missing item data\n}// Meta Pixel tracking\ntrackFacebookPixelRemoveFromCart({lineItem:lineItem,currency:currency});}try{const data=await window.shopXtools?.handleCartMutation(removeLineMutation,{cartId,lineIds:[lineId]});//console.log(\"[REMOVE] Mutation response:\", data);\nif(data?.cartLinesRemove?.cart){//console.log(\"[REMOVE] Cart updated, refetching...\");\nawait fetchCartFromShopify(cartId);// Check quantity limits if product has them\nconst productHandle=lineItem?.merchandise?.product?.handle;const product=window.shopXtools?.products.find(p=>p.node.handle===productHandle);// console.log(\"product\", product)\nif(productHandle){const metafields=await window.shopXtools?.handleCartMutation(getProductMetafields,{handle:productHandle});const orderMax=parseInt(metafields?.product?.metafield_order_max?.value,10);if(!isNaN(orderMax)&&orderMax>0){const currentLineQuantity=lineItem?.quantity||0;// console.log(\"currentLineQuantity\", currentLineQuantity)\n// const quantityChange = quantity - currentLineQuantity\nconst newTotalQuantity=orderMax-currentLineQuantity;if(newTotalQuantity<orderMax){// console.log(\"quantity is less than orderMax\", newTotalQuantity)\nconst quantityChanged=new CustomEvent(\"cart_item_quantity_changed\",{detail:{orderMax,newTotalQuantity,productId:product?.node.id}});window.dispatchEvent(quantityChanged);// console.log(\"quantityChanged\", quantityChanged.detail)\n}}}return;}// Try backup mutation if primary fails\nconst backupData=await window.shopXtools?.handleCartMutation(removeLineMutationNoPlans,{cartId,lineIds:[lineId]});if(backupData?.cartLinesRemove?.cart){await fetchCartFromShopify(cartId);}else{console.error(\"Both primary and backup remove line mutations failed\");}}catch(error){console.error(\"Error removing line item:\",error);}},[fetchCartFromShopify,cartItems]);const handleUpdateLine=useCallback(async(cartId,lineId,quantity,updateLineItem)=>{if(!cartId||!lineId||typeof quantity!==\"number\"){console.error(\"Missing required parameters for update operation\");return;}//console.log(\"[UPDATE] Updating line:\", { cartId, lineId, quantity, lineItem });\ntry{// If quantity is 0 or less, remove the item instead\nif(quantity<=0){// Call the remove function (Facebook Pixel tracking is handled there)\nawait handleRemoveLine(cartId,lineId,updateLineItem);return;}// Check quantity limits if product has them\nconst productHandle=updateLineItem?.merchandise?.product?.handle;const product=window.shopXtools?.products.find(p=>p.node.handle===productHandle);// console.log(\"product\", product)\nif(productHandle){const metafields=await window.shopXtools?.handleCartMutation(getProductMetafields,{handle:productHandle});const orderMax=parseInt(metafields?.product?.metafield_order_max?.value,10);// Calculate current quantity of this product across all variants\nconst currentProductQuantity=getCurrentProductQuantity(productHandle);// console.log(\"currentProductQuantity\", currentProductQuantity)\n// Calculate the quantity that would be added by this update\nconst currentLineQuantity=updateLineItem?.quantity||0;// console.log(\"currentLineQuantity\", currentLineQuantity)\nconst quantityChange=quantity-currentLineQuantity;const newTotalQuantity=currentProductQuantity+quantityChange;// console.log(\"newTotalQuantity\", newTotalQuantity)\nif(!isNaN(orderMax)&&orderMax>0){if(newTotalQuantity>orderMax){const remainingAllowed=orderMax-currentProductQuantity;// console.log(\"remainingAllowed\", remainingAllowed)\nif(remainingAllowed<=0){const message=`Maximum quantity of ${orderMax} already in cart`;setErrorMessage(message);return;}}}// else if (!isNaN(orderMax) && orderMax === 0 || !orderMax) {\n//     const variant = product?.node.variants?.edges.find(({node}) => node.id === updateLineItem?.merchandise?.id)\n//     console.log(\"matching variant\", variant)\n//     const totalQuantity = variant.node.quantityAvailable\n//     console.log(\"totalQuantity\", totalQuantity)\n//     // Calculate remaining allowed based on variant's quantityAvailable\n//     // const remainingAllowed = totalQuantity - currentLineQuantity;\n//     // console.log(\"remainingAllowed:\", remainingAllowed);\n//     if (newTotalQuantity > totalQuantity) {\n//         console.log(\"remainingAllowed is less than 0\", newTotalQuantity)\n//         const message = `Maximum quantity of ${currentProductQuantity} already in cart`\n//         setErrorMessage(message)\n//         return\n//     }\n// }\n}// Update cart line\nconst data=await window.shopXtools?.handleCartMutation(updatelineMutation,{cartId,lines:[{id:lineId,quantity}]});//console.log(\"[UPDATE] Mutation response:\", data);\nif(data?.cartLinesUpdate?.cart){await fetchCartFromShopify(cartId);setErrorMessage(\"\");return;}// Try backup mutation if primary fails\nconst backupData=await window.shopXtools?.handleCartMutation(updatelineMutationNoPlans,{cartId,lines:[{id:lineId,quantity}]});if(backupData?.cartLinesUpdate?.cart){await fetchCartFromShopify(cartId);setErrorMessage(\"\");}else{console.error(\"Both primary and backup update line mutations failed\");}}catch(error){console.error(\"Error updating line item:\",error);}},[fetchCartFromShopify,cartItems,getCurrentProductQuantity]);//console.log(\"Cart Data in CartProductCard:\", cart)\nconst errorVisible=errorMessage!==null;// Adjust mock data for compare price\nconst mockData=[{price:\"100.00\",comparePrice:null},{price:\"200.00\",comparePrice:\"250.00\"},{price:\"300.00\",comparePrice:null},{price:\"400.00\",comparePrice:null}];// console.log(\"[RENDER] Cart before rendering:\", cart);\n// console.log(\"[RENDER] Cart items before rendering:\", cartItems);\nreturn /*#__PURE__*/_jsx(_Fragment,{children:RenderTarget.current()===RenderTarget.canvas?/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:props.spacingConfigs?.gap??24,width:\"100%\"},children:[/*#__PURE__*/_jsx(ShopXCartProductCard,{imageVisibility:props.imageConfigs?.visible,image:props.imageConfigs?.visible?\"https://framerusercontent.com/images/3E7u1YOHRQaZuBdfYRsm3XCzxk.jpg\":null,imageConfigs:props.imageConfigs,quantityConfigs:props.quantityConfigs,removeIconConfigs:props.removeIconConfigs,containerConfigs:props.containerConfigs,linkConfigs:props.linkConfigs,titleConfigs:props.titleConfigs,_lineItem:{merchandise:{product:{handle:\"example-product\"}}},quantityControlColor:props.quantityConfigs?.buttons?.icons,quantityNumberColor:props.quantityConfigs?.container?.number,quantityContainerBgColor:props.quantityConfigs?.container?.containerBg,quantityControlBgColor:props.quantityConfigs?.buttons?.iconBg,quantityControlHoverColor:props.quantityConfigs?.buttons?.iconBgHover,quantityContainerBorder:\"1px solid #E2E2E2\",quantityContainerRadius:\"8px\",xColor:props.removeIconConfigs?.icon,xBgColor:props.removeIconConfigs?.bg,xBgHoverColor:props.removeIconConfigs?.bgHover,style:{width:\"100%\",...props.containerConfigs?.border||{},borderRadius:props.containerConfigs?.radius||\"0px\",background:props.containerConfigs?.background||\"#FFF\",padding:props.containerConfigs?.padding||\"0px\"},shopifyProductTitle:/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"titleConfigs.font\"),color:get(props,\"titleConfigs.color\"),margin:0},children:\"Product Title 1\"}),shopifyProductPriceAmount:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"flex-end\",gap:props.priceConfigs?.gap||4},children:[/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"priceConfigs.price.font\"),color:get(props,\"priceConfigs.price.color\"),whiteSpace:\"nowrap\",minWidth:0},children:formatCartPrice(mockData[0].price,\"USD\")}),mockData[0].comparePrice&&/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"priceConfigs.comparePrice.font\"),color:get(props,\"priceConfigs.comparePrice.color\"),textDecoration:props.priceConfigs?.comparePrice?.strikethrough?\"line-through\":\"none\",textDecorationColor:props.priceConfigs?.comparePrice?.strikethroughColor,whiteSpace:\"nowrap\",minWidth:0},children:formatCartPrice(mockData[0].comparePrice,\"USD\")})]}),shopifyQuantity:\"1\",variants:null,onRemove:()=>{},onAddQuantity:()=>{},onSubtractQuantity:()=>{}}),props.spacingConfigs?.dividerVisible&&/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",borderTop:`${props.spacingConfigs?.divider?.borderWidth||1}px ${props.spacingConfigs?.divider?.borderStyle||\"solid\"} ${props.spacingConfigs?.divider?.borderColor||\"rgba(0,0,0,0.08)\"}`}}),/*#__PURE__*/_jsx(ShopXCartProductCard,{imageVisibility:props.imageConfigs?.visible,image:props.imageConfigs?.visible?\"https://framerusercontent.com/images/3E7u1YOHRQaZuBdfYRsm3XCzxk.jpg\":null,imageConfigs:props.imageConfigs,quantityConfigs:props.quantityConfigs,removeIconConfigs:props.removeIconConfigs,containerConfigs:props.containerConfigs,linkConfigs:props.linkConfigs,titleConfigs:props.titleConfigs,_lineItem:{merchandise:{product:{handle:\"example-product\"}}},quantityControlColor:props.quantityConfigs?.buttons?.icons,quantityNumberColor:props.quantityConfigs?.container?.number,quantityContainerBgColor:props.quantityConfigs?.container?.containerBg,quantityControlBgColor:props.quantityConfigs?.buttons?.iconBg,quantityControlHoverColor:props.quantityConfigs?.buttons?.iconBgHover,quantityContainerBorder:\"1px solid #E2E2E2\",quantityContainerRadius:\"8px\",xColor:props.removeIconConfigs?.icon,xBgColor:props.removeIconConfigs?.bg,xBgHoverColor:props.removeIconConfigs?.bgHover,style:{width:\"100%\",...props.containerConfigs?.border||{},borderRadius:props.containerConfigs?.radius||\"0px\",background:props.containerConfigs?.background||\"#FFF\",padding:props.containerConfigs?.padding||\"0px\"},shopifyProductTitle:/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"titleConfigs.font\"),color:get(props,\"titleConfigs.color\"),margin:0},children:\"Product Title 2\"}),shopifyProductPriceAmount:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"flex-end\",gap:props.priceConfigs?.gap||4},children:[/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"priceConfigs.price.font\"),color:get(props,\"priceConfigs.price.color\"),whiteSpace:\"nowrap\",minWidth:0},children:formatCartPrice(mockData[1].price,\"USD\")}),mockData[1].comparePrice&&/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"priceConfigs.comparePrice.font\"),color:get(props,\"priceConfigs.comparePrice.color\"),textDecoration:props.priceConfigs?.comparePrice?.strikethrough?\"line-through\":\"none\",textDecorationColor:props.priceConfigs?.comparePrice?.strikethroughColor,whiteSpace:\"nowrap\",minWidth:0},children:formatCartPrice(mockData[1].comparePrice,\"USD\")})]}),shopifyQuantity:\"2\",variants:/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:props.variantConfigs?.gap||\"4px\"},children:/*#__PURE__*/_jsxs(\"p\",{style:{margin:0},children:[/*#__PURE__*/_jsx(\"span\",{style:{...get(props,\"variantConfigs.titleFont\"),color:get(props,\"variantConfigs.titleColor\"),marginRight:\"5px\"},children:\"Color:\"}),/*#__PURE__*/_jsx(\"span\",{style:{...get(props,\"variantConfigs.valueFont\"),color:get(props,\"variantConfigs.valueColor\")},children:\"Blue\"})]})}),onRemove:()=>{},onAddQuantity:()=>{},onSubtractQuantity:()=>{}}),props.spacingConfigs?.dividerVisible&&/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",borderTop:`${props.spacingConfigs?.divider?.borderWidth||1}px ${props.spacingConfigs?.divider?.borderStyle||\"solid\"} ${props.spacingConfigs?.divider?.borderColor||\"rgba(0,0,0,0.08)\"}`}}),/*#__PURE__*/_jsx(ShopXCartProductCard,{imageVisibility:props.imageConfigs?.visible,image:props.imageConfigs?.visible?\"https://framerusercontent.com/images/3E7u1YOHRQaZuBdfYRsm3XCzxk.jpg\":null,imageConfigs:props.imageConfigs,quantityConfigs:props.quantityConfigs,removeIconConfigs:props.removeIconConfigs,containerConfigs:props.containerConfigs,linkConfigs:props.linkConfigs,titleConfigs:props.titleConfigs,_lineItem:{merchandise:{product:{handle:\"example-product\"}}},quantityControlColor:props.quantityConfigs?.buttons?.icons,quantityNumberColor:props.quantityConfigs?.container?.number,quantityContainerBgColor:props.quantityConfigs?.container?.containerBg,quantityControlBgColor:props.quantityConfigs?.buttons?.iconBg,quantityControlHoverColor:props.quantityConfigs?.buttons?.iconBgHover,quantityContainerBorder:\"1px solid #E2E2E2\",quantityContainerRadius:\"8px\",xColor:props.removeIconConfigs?.icon,xBgColor:props.removeIconConfigs?.bg,xBgHoverColor:props.removeIconConfigs?.bgHover,style:{width:\"100%\",...props.containerConfigs?.border||{},borderRadius:props.containerConfigs?.radius||\"0px\",background:props.containerConfigs?.background||\"#FFF\",padding:props.containerConfigs?.padding||\"0px\"},shopifyProductTitle:/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"titleConfigs.font\"),color:get(props,\"titleConfigs.color\"),margin:0},children:\"Product Title 3\"}),shopifyProductPriceAmount:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"flex-end\",gap:props.priceConfigs?.gap||4},children:[/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"priceConfigs.price.saleFont\"),color:get(props,\"priceConfigs.price.saleColor\"),whiteSpace:\"nowrap\",minWidth:0},children:formatCartPrice(300,\"USD\")}),/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"priceConfigs.comparePrice.font\"),color:get(props,\"priceConfigs.comparePrice.color\"),textDecoration:props.priceConfigs?.comparePrice?.strikethrough?\"line-through\":\"none\",textDecorationColor:props.priceConfigs?.comparePrice?.strikethroughColor,whiteSpace:\"nowrap\",minWidth:0},children:formatCartPrice(400,\"USD\")})]}),shopifyQuantity:\"3\",variants:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:props.variantConfigs?.gap||\"4px\"},children:[/*#__PURE__*/_jsxs(\"p\",{style:{margin:0},children:[/*#__PURE__*/_jsx(\"span\",{style:{...get(props,\"variantConfigs.titleFont\"),color:get(props,\"variantConfigs.titleColor\"),marginRight:\"5px\"},children:\"Color:\"}),/*#__PURE__*/_jsx(\"span\",{style:{...get(props,\"variantConfigs.valueFont\"),color:get(props,\"variantConfigs.valueColor\")},children:\"Black\"})]}),/*#__PURE__*/_jsxs(\"p\",{style:{margin:0},children:[/*#__PURE__*/_jsx(\"span\",{style:{...get(props,\"variantConfigs.titleFont\"),color:get(props,\"variantConfigs.titleColor\"),marginRight:\"5px\"},children:\"Size:\"}),/*#__PURE__*/_jsx(\"span\",{style:{...get(props,\"variantConfigs.valueFont\"),color:get(props,\"variantConfigs.valueColor\")},children:\"Medium\"})]})]}),onRemove:()=>{},onAddQuantity:()=>{},onSubtractQuantity:()=>{}}),props.spacingConfigs?.dividerVisible&&/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",borderTop:`${props.spacingConfigs?.divider?.borderWidth||1}px ${props.spacingConfigs?.divider?.borderStyle||\"solid\"} ${props.spacingConfigs?.divider?.borderColor||\"rgba(0,0,0,0.08)\"}`}}),/*#__PURE__*/_jsx(ShopXCartProductCard,{imageVisibility:props.imageConfigs?.visible,image:props.imageConfigs?.visible?\"https://framerusercontent.com/images/3E7u1YOHRQaZuBdfYRsm3XCzxk.jpg\":null,imageConfigs:props.imageConfigs,quantityConfigs:props.quantityConfigs,removeIconConfigs:props.removeIconConfigs,containerConfigs:props.containerConfigs,linkConfigs:props.linkConfigs,titleConfigs:props.titleConfigs,_lineItem:{merchandise:{product:{handle:\"example-product\"}}},quantityControlColor:props.quantityConfigs?.buttons?.icons,quantityNumberColor:props.quantityConfigs?.container?.number,quantityContainerBgColor:props.quantityConfigs?.container?.containerBg,quantityControlBgColor:props.quantityConfigs?.buttons?.iconBg,quantityControlHoverColor:props.quantityConfigs?.buttons?.iconBgHover,quantityContainerBorder:\"1px solid #E2E2E2\",quantityContainerRadius:\"8px\",xColor:props.removeIconConfigs?.icon,xBgColor:props.removeIconConfigs?.bg,xBgHoverColor:props.removeIconConfigs?.bgHover,style:{width:\"100%\",...props.containerConfigs?.border||{},borderRadius:props.containerConfigs?.radius||\"0px\",background:props.containerConfigs?.background||\"#FFF\",padding:props.containerConfigs?.padding||\"0px\"},shopifyProductTitle:/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"titleConfigs.font\"),color:get(props,\"titleConfigs.color\"),margin:0},children:\"Product Title 4\"}),shopifyProductPriceAmount:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"flex-end\",gap:props.priceConfigs?.gap||4},children:[/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"priceConfigs.price.font\"),color:get(props,\"priceConfigs.price.color\"),whiteSpace:\"nowrap\",minWidth:0},children:formatCartPrice(400,\"USD\")}),/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"priceConfigs.comparePrice.font\"),color:get(props,\"priceConfigs.comparePrice.color\"),textDecoration:props.priceConfigs?.comparePrice?.strikethrough?\"line-through\":\"none\",textDecorationColor:props.priceConfigs?.comparePrice?.strikethroughColor,whiteSpace:\"nowrap\",minWidth:0}})]}),shopifyQuantity:\"4\",variants:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:props.variantConfigs?.gap||\"4px\"},children:[/*#__PURE__*/_jsxs(\"p\",{style:{margin:0},children:[/*#__PURE__*/_jsx(\"span\",{style:{...get(props,\"variantConfigs.titleFont\"),color:get(props,\"variantConfigs.titleColor\"),marginRight:\"5px\"},children:\"Size:\"}),/*#__PURE__*/_jsx(\"span\",{style:{...get(props,\"variantConfigs.valueFont\"),color:get(props,\"variantConfigs.valueColor\")},children:\"Medium\"})]}),/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"subscriptionConfigs.font\"),color:get(props,\"subscriptionConfigs.color\")},children:\"Delivers every week\"})]}),onRemove:()=>{},onAddQuantity:()=>{},onSubtractQuantity:()=>{}})]}):cartItems.length===0?/*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",minHeight:\"100%\"},children:props.emptyStateComponent}):/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:0,width:\"100%\",boxSizing:\"border-box\"},children:[errorVisible&&/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"errorConfigs.errorFont\"),color:get(props,\"errorConfigs.errorColor\"),textTransform:get(props,\"errorConfigs.textTransform\",\"none\")},children:errorMessage}),cartItems.map(({node:_lineItem},index)=>/*#__PURE__*/_jsxs(_Fragment,{children:[index>0&&props.spacingConfigs?.dividerVisible?/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",marginTop:typeof props.spacingConfigs?.gap===\"number\"?props.spacingConfigs.gap:24,marginBottom:typeof props.spacingConfigs?.gap===\"number\"?props.spacingConfigs.gap:24,borderTop:`${props.spacingConfigs?.divider?.borderWidth||1}px ${props.spacingConfigs?.divider?.borderStyle||\"solid\"} ${props.spacingConfigs?.divider?.borderColor||\"rgba(0,0,0,0.08)\"}`}}):index>0&&!props.spacingConfigs?.dividerVisible?/*#__PURE__*/_jsx(\"div\",{style:{marginTop:typeof props.spacingConfigs?.gap===\"number\"?props.spacingConfigs.gap:24}}):null,/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",overflow:\"hidden\",borderRadius:typeof props.containerConfigs?.radius===\"object\"?`${props.containerConfigs.radius.topLeft}px ${props.containerConfigs.radius.topRight}px ${props.containerConfigs.radius.bottomRight}px ${props.containerConfigs.radius.bottomLeft}px`:typeof props.containerConfigs?.radius===\"string\"?props.containerConfigs.radius:`${props.containerConfigs?.radius||0}px`,background:props.containerConfigs?.background||\"#FFF\",...props.containerConfigs?.border||{},padding:typeof props.containerConfigs?.padding===\"object\"?`${props.containerConfigs.padding.top}px ${props.containerConfigs.padding.right}px ${props.containerConfigs.padding.bottom}px ${props.containerConfigs.padding.left}px`:props.containerConfigs?.padding||\"0px\",display:\"flex\"},children:/*#__PURE__*/_jsx(ShopXCartProductCard,{imageVisibility:props.imageConfigs?.visible,image:get(_lineItem,\"merchandise.image.url\",null),imageConfigs:props.imageConfigs,quantityConfigs:props.quantityConfigs,removeIconConfigs:props.removeIconConfigs,containerConfigs:{...props.containerConfigs,background:\"transparent\"},linkConfigs:props.linkConfigs,titleConfigs:props.titleConfigs,_lineItem:_lineItem,quantityControlColor:props.quantityConfigs?.buttons?.icons,quantityNumberColor:props.quantityConfigs?.container?.number,quantityContainerBgColor:props.quantityConfigs?.container?.containerBg,quantityControlBgColor:props.quantityConfigs?.buttons?.iconBg,quantityControlHoverColor:props.quantityConfigs?.buttons?.iconBgHover,quantityContainerBorder:\"1px solid #E2E2E2\",quantityContainerRadius:\"8px\",xColor:props.removeIconConfigs?.icon,xBgColor:props.removeIconConfigs?.bg,xBgHoverColor:props.removeIconConfigs?.bgHover,Radius:\"0px\",style:{width:\"100%\",background:\"transparent\",...RenderTarget.current()===RenderTarget.canvas?{padding:typeof props.containerConfigs?.padding===\"object\"?`${props.containerConfigs.padding.top}px ${props.containerConfigs.padding.right}px ${props.containerConfigs.padding.bottom}px ${props.containerConfigs.padding.left}px`:props.containerConfigs?.padding||\"0px\"}:{padding:0}},shopifyProductTitle:/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"titleConfigs.font\"),color:get(props,\"titleConfigs.color\"),margin:0,textTransform:props.titleConfigs?.textTransform||\"none\"},children:_lineItem.merchandise.product.title}),shopifyProductPriceAmount:/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"flex-end\",gap:props.priceConfigs?.gap||4},children:(()=>{if(!_lineItem)return null;// Use cart data for primary information\n    let price,comparePrice,currencyCode;if(_lineItem.sellingPlanAllocation){// Subscription item: use unit price from selling plan\n    price=_lineItem.sellingPlanAllocation.checkoutChargeAmount?.amount;comparePrice=_lineItem.merchandise?.compareAtPrice?.amount//no compareAtPrice in sellingPlanAllocation!!! _lineItem.sellingPlanAllocation.compareAtPrice?.amount;\n    ;currencyCode=_lineItem.sellingPlanAllocation.checkoutChargeAmount?.currencyCode;}else{// Non-subscription item: use unit price from merchandise object, fallback to cost\n    price=_lineItem.merchandise?.price?.amount||_lineItem.cost?.amountPerQuantity?.amount;currencyCode=_lineItem.merchandise?.price?.currencyCode||_lineItem.cost?.amountPerQuantity?.currencyCode;comparePrice=_lineItem.merchandise?.compareAtPrice?.amount||_lineItem.cost?.compareAtAmountPerQuantity?.amount;}// Supplement with external data\n    const variantId=_lineItem.merchandise.id;const variantGid=variantId.split(\"/\").pop();const matchingProduct=window.shopXtools.products.find(({node})=>node.variants.edges.some(edge=>edge.node.id.includes(variantGid)))?.node;const matchingVariant=matchingProduct?.variants?.edges.find(edge=>edge.node.id.includes(variantGid))?.node;// Preserve the log\n    // console.log(\n    //     \"Cart Product Card - Price Data:\",\n    //     {\n    //         variantId,\n    //         variantGid,\n    //         matchingProduct,\n    //         matchingVariant,\n    //         price,\n    //         currencyCode,\n    //         comparePrice,\n    //         variantComparePrice:\n    //             get(\n    //                 matchingVariant,\n    //                 \"compareAtPrice.amount\"\n    //             ),\n    //         productComparePrice:\n    //             get(\n    //                 matchingProduct,\n    //                 \"compareAtPriceRange.minVariantPrice.amount\"\n    //             ),\n    //         lineItem: _lineItem,\n    //         showCurrencyCode:\n    //             props.showCurrencyCode,\n    //         currencyPosition:\n    //             props.currencyPosition,\n    //         showCurrencySymbol:\n    //             props.showCurrencySymbol,\n    //     }\n    // )\n    const hasComparePrice=comparePrice&&parseFloat(comparePrice)>parseFloat(price);const finalPrice=price||\"0\";return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,hasComparePrice?\"priceConfigs.price.saleFont\":\"priceConfigs.price.font\"),color:hasComparePrice?props.priceConfigs?.price?.saleColor:props.priceConfigs?.price?.color,whiteSpace:\"nowrap\",minWidth:0},children:formatCartPrice(finalPrice,currencyCode)}),hasComparePrice&&/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"priceConfigs.comparePrice.font\"),color:get(props,\"priceConfigs.comparePrice.color\"),textDecoration:\"line-through\",textDecorationColor:props.priceConfigs?.comparePrice?.strikethroughColor,whiteSpace:\"nowrap\",minWidth:0},children:formatCartPrice(comparePrice,currencyCode)})]});})()}),shopifyQuantity:`${_lineItem.quantity||1}`,variants:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:props.variantConfigs?.gap||\"4px\"},children:[_lineItem.merchandise.selectedOptions.filter(option=>option.name!==\"Title\").map((option,index)=>/*#__PURE__*/_jsxs(\"p\",{style:{margin:0},children:[/*#__PURE__*/_jsxs(\"span\",{style:{...get(props,\"variantConfigs.titleFont\"),color:get(props,\"variantConfigs.titleColor\"),marginRight:\"5px\",textTransform:get(props,\"variantConfigs.titleTransform\",\"none\")},children:[option.name,\":\"]}),/*#__PURE__*/_jsx(\"span\",{style:{...get(props,\"variantConfigs.valueFont\"),color:get(props,\"variantConfigs.valueColor\"),textTransform:get(props,\"variantConfigs.valueTransform\",\"none\")},children:option.value})]},`variant-${option.name}-${index}`)),_lineItem.attributes?.map((attr,index)=>/*#__PURE__*/_jsxs(\"p\",{style:{margin:0},children:[/*#__PURE__*/_jsxs(\"span\",{style:{...props.attributeConfigs?.uniqueFormatting?get(props,\"attributeConfigs.titleFont\"):get(props,\"variantConfigs.titleFont\"),color:props.attributeConfigs?.uniqueFormatting?get(props,\"attributeConfigs.titleColor\"):get(props,\"variantConfigs.titleColor\"),marginRight:\"5px\",textTransform:props.attributeConfigs?.uniqueFormatting?get(props,\"attributeConfigs.titleTransform\",\"none\"):get(props,\"variantConfigs.titleTransform\",\"none\")},children:[attr.key,\":\"]}),/*#__PURE__*/_jsx(\"span\",{style:{...props.attributeConfigs?.uniqueFormatting?get(props,\"attributeConfigs.valueFont\"):get(props,\"variantConfigs.valueFont\"),color:props.attributeConfigs?.uniqueFormatting?get(props,\"attributeConfigs.valueColor\"):get(props,\"variantConfigs.valueColor\"),textTransform:props.attributeConfigs?.uniqueFormatting?get(props,\"attributeConfigs.valueTransform\",\"none\"):get(props,\"variantConfigs.valueTransform\",\"none\")},children:attr.value})]},`attr-${attr.key}-${index}`)),_lineItem.sellingPlanAllocation?.sellingPlan?.name&&/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"subscriptionConfigs.font\"),color:get(props,\"subscriptionConfigs.color\"),textTransform:get(props,\"subscriptionConfigs.textTransform\",\"none\")},children:_lineItem.sellingPlanAllocation.sellingPlan.name})]}),onRemove:()=>handleRemoveLine(cart.id,_lineItem.id),onAddQuantity:()=>handleUpdateLine(cart.id,_lineItem.id,_lineItem.quantity+1,_lineItem),onSubtractQuantity:()=>handleUpdateLine(cart.id,_lineItem.id,_lineItem.quantity-1,_lineItem)})},_lineItem.id)]}))]})});}FC_CartProductCard.defaultProps={containerConfigs:{background:\"transparent\",radius:0,padding:0,insidePadding:0,gap:8,border:{borderWidth:0,borderStyle:\"solid\",borderColor:\"transparent\"}},linkConfigs:{enabled:false,slugPath:\"\"},imageConfigs:{visible:true,type:\"Fill\",width:104,radius:8,background:\"#F5F5F5\",border:{borderWidth:0,borderStyle:\"solid\",borderColor:\"transparent\"},ratio:\"1:1\",hover:\"None\",zoomScale:1.05,opacity:.75},titleConfigs:{font:{family:\"Inter\",size:14,weight:500},color:\"#000000\",hoverColor:\"#000000\"},variantConfigs:{gap:4,titleFont:{family:\"Inter\",size:14,weight:500},titleColor:\"#000000\",valueFont:{family:\"Inter\",size:14,weight:400},valueColor:\"#666666\"},subscriptionConfigs:{font:{family:\"Inter\",size:14,weight:400},color:\"#4A5B89\"},quantityConfigs:{type:ControlType.Object,title:\"Quantity\",controls:{container:{type:ControlType.Object,title:\"Container\",controls:{font:{family:\"Inter\",size:14,weight:500},number:{type:ControlType.Color,defaultValue:\"#000\",title:\"Number\"},containerBg:{type:ControlType.Color,defaultValue:\"transparent\",title:\"BG\"},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"4px\"},containerRadius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"4px\"},containerBorder:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:1,borderStyle:\"solid\",borderColor:\"#E2E2E2\"}}}},buttons:{type:ControlType.Object,title:\"Buttons\",controls:{iconType:{type:ControlType.SegmentedEnum,title:\"Icon\",options:[\"Default\",\"Custom\"],optionTitles:[\"Default\",\"Custom\"],defaultValue:\"Default\"},iconWeight:{type:ControlType.Number,title:\"Weight\",defaultValue:2,min:.5,max:5,step:.1,displayStepper:true,hidden:({iconType})=>iconType!==\"Default\"},customPlusIcon:{type:ControlType.Image,title:\"Plus\",hidden:({iconType})=>iconType!==\"Custom\"},customMinusIcon:{type:ControlType.Image,title:\"Minus\",hidden:({iconType})=>iconType!==\"Custom\"},icons:{type:ControlType.Color,defaultValue:\"#000\",title:\"Icons\"},iconsColorDisabled:{type:ControlType.Color,defaultValue:\"#CCCCCC\",title:\"Icons Color Disabled\"},iconSize:{type:ControlType.Number,title:\"Icon Size\",defaultValue:8,min:4,max:32,unit:\"px\",step:1,displayStepper:true},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"4px\"},iconBg:{type:ControlType.Color,defaultValue:\"#FFFFFF\",title:\"BG\"},iconBgHover:{type:ControlType.Color,defaultValue:\"#F5F5F5\",title:\"BG Hover\"},iconBgDisabled:{type:ControlType.Color,defaultValue:\"#FFFFFF\",title:\"BG Disabled\"},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"4px\"},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:0,borderStyle:\"solid\",borderColor:\"transparent\"}}}}}},priceConfigs:{gap:4,price:{font:{family:\"Inter\",size:14,weight:500},color:\"#000000\",saleFont:{family:\"Inter\",size:14,weight:500},saleColor:\"#000000\"},comparePrice:{font:{family:\"Inter\",size:14,weight:400},color:\"#8B0000\",strikethrough:true,strikethroughColor:\"#8B0000\"},format:{showSymbol:true,showCurrency:false,showDecimals:\"Always show\",currencyCode:\"USD\"},// Keep for backward compatibility\nshowCurrencyCode:false,showSymbol:true},removeIconConfigs:{type:ControlType.Object,title:\"Remove Icon\",controls:{position:{type:ControlType.Enum,title:\"Position\",options:[\"Top\",\"Bottom\"],defaultValue:\"Bottom\"},iconType:{type:ControlType.SegmentedEnum,title:\"Icon\",options:[\"Default\",\"Custom\"],optionTitles:[\"Default\",\"Custom\"],defaultValue:\"Default\"},iconWeight:{type:ControlType.Number,title:\"Weight\",defaultValue:2,min:.5,max:5,step:.1,displayStepper:true,hidden:({iconType})=>iconType!==\"Default\"},customImage:{type:ControlType.Image,title:\"Image\",hidden:({iconType})=>iconType!==\"Custom\"},icon:{type:ControlType.Color,defaultValue:\"#000000\",title:\"Icon\",hidden:({iconType})=>iconType===\"Custom\"},iconSize:{type:ControlType.Number,title:\"Icon Size\",defaultValue:8,min:4,max:32,unit:\"px\",step:1,displayStepper:true},bg:{type:ControlType.Color,defaultValue:\"#F5F5F5\",title:\"BG\"},bgHover:{type:ControlType.Color,defaultValue:\"#EBEBEB\",title:\"BG Hover\"},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"80px\"},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:0,borderStyle:\"solid\",borderColor:\"transparent\"}}}}};addPropertyControls(FC_CartProductCard,{linkConfigs:{type:ControlType.Object,title:\"Link\",controls:{enabled:{type:ControlType.Boolean,title:\"Link\",defaultValue:false,enabledTitle:\"Yes\",disabledTitle:\"No\"},slugPath:{type:ControlType.String,title:\"Path\",defaultValue:\"\",placeholder:\"shop/\",description:\"The path between your domain and slug. [Learn more](https://framercommerce.com/resources/docs/components/cart#cart-product-card)\",hidden:({enabled})=>!enabled}}},imageConfigs:{type:ControlType.Object,title:\"Image\",controls:{visible:{type:ControlType.Boolean,title:\"Image\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},type:{type:ControlType.SegmentedEnum,title:\"Type\",options:[\"Fill\",\"Fit\"],defaultValue:\"Fill\",optionTitles:[\"Fill\",\"Fit\"],hidden:({visible})=>!visible},width:{type:ControlType.Number,title:\"Width\",defaultValue:112,min:0,max:500,unit:\"px\",step:8,displayStepper:true,hidden:({visible})=>!visible},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"4px\",hidden:({visible})=>!visible},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"#F2F2F2\",hidden:({visible})=>!visible},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:0,borderStyle:\"solid\",borderColor:\"rgba(0,0,0,0)\"},hidden:({visible})=>!visible},ratio:{type:ControlType.Enum,title:\"Ratio\",options:[\"1:1\",\"3:2\",\"4:5\"],defaultValue:\"1:1\",hidden:({visible})=>!visible},hover:{type:ControlType.Enum,title:\"Hover Type\",options:[\"None\",\"Zoom\",\"Opacity\"],defaultValue:\"None\",hidden:({visible})=>!visible},zoomScale:{type:ControlType.Number,title:\"Zoom Scale\",defaultValue:1.05,min:1,max:3,step:.05,displayStepper:true,hidden:({hover})=>hover!==\"Zoom\"},opacity:{type:ControlType.Number,title:\"Opacity\",defaultValue:.75,min:0,max:1,step:.05,hidden:({hover})=>hover!==\"Opacity\"}}},titleConfigs:{type:ControlType.Object,title:\"Title\",controls:{font:{type:ControlType.Font,controls:\"extended\",title:\"Font\"},color:{type:ControlType.Color,defaultValue:\"#000\",title:\"Color\"},hoverColor:{type:ControlType.Color,defaultValue:\"#000\",title:\"Hover\"},textTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"none\"}}},variantConfigs:{type:ControlType.Object,title:\"Variants\",controls:{titleFont:{type:ControlType.Font,controls:\"extended\",title:\"Title Font\"},titleColor:{type:ControlType.Color,defaultValue:\"#000\",title:\"Title Color\"},titleTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"none\"},valueFont:{type:ControlType.Font,controls:\"extended\",title:\"Value Font\"},valueColor:{type:ControlType.Color,defaultValue:\"#000\",title:\"Value Color\"},valueTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"none\"},gap:{type:ControlType.Number,title:\"Gap\",defaultValue:4,min:0,max:100,unit:\"px\",step:1}}},attributeConfigs:{type:ControlType.Object,title:\"Attributes\",controls:{uniqueFormatting:{type:ControlType.Boolean,title:\"Customize\",defaultValue:false,enabledTitle:\"Yes\",disabledTitle:\"No\",description:\"By default, attributes use same styling as Variants.\"},titleFont:{type:ControlType.Font,controls:\"extended\",title:\"Title Font\",hidden:({uniqueFormatting})=>!uniqueFormatting},titleColor:{type:ControlType.Color,defaultValue:\"#000\",title:\"Title Color\",hidden:({uniqueFormatting})=>!uniqueFormatting},titleTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"none\",hidden:({uniqueFormatting})=>!uniqueFormatting},valueFont:{type:ControlType.Font,controls:\"extended\",title:\"Value Font\",hidden:({uniqueFormatting})=>!uniqueFormatting},valueColor:{type:ControlType.Color,defaultValue:\"#000\",title:\"Value Color\",hidden:({uniqueFormatting})=>!uniqueFormatting},valueTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"none\",hidden:({uniqueFormatting})=>!uniqueFormatting},gap:{type:ControlType.Number,title:\"Gap\",defaultValue:4,min:0,max:100,unit:\"px\",step:1,hidden:props=>!props.attributeConfigs?.uniqueFormatting}}},subscriptionConfigs:{type:ControlType.Object,title:\"Subscription\",controls:{font:{type:ControlType.Font,controls:\"extended\",title:\"Font\"},color:{type:ControlType.Color,defaultValue:\"#000\",title:\"Color\"},textTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"none\"}}},quantityConfigs:{type:ControlType.Object,title:\"Quantity\",controls:{container:{type:ControlType.Object,title:\"Container\",controls:{font:{type:ControlType.Font,controls:\"extended\",title:\"Font\"},number:{type:ControlType.Color,defaultValue:\"#000\",title:\"Number\"},containerBg:{type:ControlType.Color,defaultValue:\"transparent\",title:\"BG\"},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"4px\"},containerRadius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"4px\"},containerBorder:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:1,borderStyle:\"solid\",borderColor:\"#E2E2E2\"}}}},buttons:{type:ControlType.Object,title:\"Buttons\",controls:{iconType:{type:ControlType.SegmentedEnum,title:\"Icon\",options:[\"Default\",\"Custom\"],optionTitles:[\"Default\",\"Custom\"],defaultValue:\"Default\"},iconWeight:{type:ControlType.Number,title:\"Weight\",defaultValue:2,min:.5,max:5,step:.1,displayStepper:true,hidden:({iconType})=>iconType!==\"Default\"},customPlusIcon:{type:ControlType.Image,title:\"Plus\",hidden:({iconType})=>iconType!==\"Custom\"},customMinusIcon:{type:ControlType.Image,title:\"Minus\",hidden:({iconType})=>iconType!==\"Custom\"},icons:{type:ControlType.Color,defaultValue:\"#000\",title:\"Icons\"},iconsColorDisabled:{type:ControlType.Color,defaultValue:\"#CCCCCC\",title:\"Icons Color Disabled\"},iconSize:{type:ControlType.Number,title:\"Icon Size\",defaultValue:8,min:4,max:32,unit:\"px\",step:1,displayStepper:true},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"4px\"},iconBg:{type:ControlType.Color,defaultValue:\"#FFFFFF\",title:\"BG\"},iconBgHover:{type:ControlType.Color,defaultValue:\"#F5F5F5\",title:\"BG Hover\"},iconBgDisabled:{type:ControlType.Color,defaultValue:\"#FFFFFF\",title:\"BG Disabled\"},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"4px\"},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:0,borderStyle:\"solid\",borderColor:\"transparent\"}}}}}},priceConfigs:{type:ControlType.Object,title:\"Price\",controls:{gap:{type:ControlType.Number,title:\"Gap\",defaultValue:4,min:0,max:40,unit:\"px\",step:1},price:{type:ControlType.Object,title:\"Price\",controls:{font:{type:ControlType.Font,controls:\"extended\",title:\"Regular Font\"},color:{type:ControlType.Color,defaultValue:\"#000\",title:\"Regular Color\"},saleFont:{type:ControlType.Font,controls:\"extended\",title:\"Sale Font\"},saleColor:{type:ControlType.Color,defaultValue:\"#FF0000\",title:\"Sale Color\"}}},comparePrice:{type:ControlType.Object,title:\"Compare Price\",controls:{font:{type:ControlType.Font,controls:\"extended\",title:\"Font\"},color:{type:ControlType.Color,defaultValue:\"#000\",title:\"Color\"},strikethrough:{type:ControlType.Boolean,title:\"Strike\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},strikethroughColor:{type:ControlType.Color,title:\"Strike Color\",defaultValue:\"#000000\",hidden:({strikethrough})=>!strikethrough}}},format:{type:ControlType.Object,title:\"Format\",controls:{showSymbol:{type:ControlType.Boolean,title:\"Symbol\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"$, \\xa3, €, etc.\"},showCurrency:{type:ControlType.Boolean,title:\"Code\",defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"USD, EUR, CHF, etc.\"},showDecimals:{type:ControlType.Enum,title:\"Decimals\",defaultValue:\"Always show\",options:[\"Always show\",\"Never show\",\"Hide when .00\"],optionTitles:[\"Always show\",\"Never show\",\"Hide when .00\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},currencyCode:{type:ControlType.Enum,title:\"Preview\",defaultValue:\"USD\",options:[\"USD\",\"EUR\",\"GBP\",\"CHF\",\"JPY\",\"CAD\",\"AUD\",\"CNY\",\"HKD\",\"NZD\",\"SEK\",\"KRW\",\"SGD\",\"NOK\",\"MXN\",\"INR\",\"RUB\",\"ZAR\",\"TRY\",\"BRL\",\"TWD\",\"DKK\",\"PLN\",\"THB\",\"IDR\",\"HUF\",\"CZK\",\"ILS\",\"CLP\",\"PHP\",\"AED\",\"COP\",\"SAR\",\"MYR\",\"RON\"],description:\"Currency is for canvas preview only.\"}}}}},errorConfigs:{type:ControlType.Object,title:\"Errors\",controls:{errorFont:{type:ControlType.Font,controls:\"extended\",title:\"Error Font\"},errorColor:{type:ControlType.Color,defaultValue:\"#000\",title:\"Error Color\"},textTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"none\"}}},removeIconConfigs:{type:ControlType.Object,title:\"Remove Icon\",controls:{position:{type:ControlType.Enum,title:\"Position\",options:[\"Top\",\"Bottom\"],defaultValue:\"Bottom\"},iconType:{type:ControlType.SegmentedEnum,title:\"Icon\",options:[\"Default\",\"Custom\"],optionTitles:[\"Default\",\"Custom\"],defaultValue:\"Default\"},iconWeight:{type:ControlType.Number,title:\"Weight\",defaultValue:2,min:.5,max:5,step:.1,displayStepper:true,hidden:({iconType})=>iconType!==\"Default\"},customImage:{type:ControlType.Image,title:\"Image\",hidden:({iconType})=>iconType!==\"Custom\"},icon:{type:ControlType.Color,defaultValue:\"#000000\",title:\"Icon\",hidden:({iconType})=>iconType===\"Custom\"},iconSize:{type:ControlType.Number,title:\"Icon Size\",defaultValue:8,min:4,max:32,unit:\"px\",step:1,displayStepper:true},bg:{type:ControlType.Color,defaultValue:\"#F5F5F5\",title:\"BG\"},bgHover:{type:ControlType.Color,defaultValue:\"#EBEBEB\",title:\"BG Hover\"},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"80px\"},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:0,borderStyle:\"solid\",borderColor:\"transparent\"}}}},containerConfigs:{type:ControlType.Object,title:\"Container\",controls:{background:{type:ControlType.Color,title:\"BG\",defaultValue:\"transparent\"},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"0px\"},padding:{type:ControlType.Padding,title:\"Outside Padding\",defaultValue:\"0px\"},insidePadding:{type:ControlType.Padding,title:\"Inside Padding\",defaultValue:\"0px\"},gap:{type:ControlType.Number,title:\"Content Gap\",defaultValue:4,min:0,max:100,unit:\"px\",step:1},imageGap:{type:ControlType.Number,title:\"Image Gap\",defaultValue:16,min:0,max:100,unit:\"px\",step:1},border:{type:ControlType.Border,title:\"Border\"}}},spacingConfigs:{type:ControlType.Object,title:\"Spacing\",controls:{dividerVisible:{type:ControlType.Boolean,title:\"Divider\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},divider:{type:ControlType.Border,title:\"Style\",defaultValue:{borderWidth:1,borderStyle:\"solid\",borderColor:\"rgba(0,0,0,0.08)\"},hidden:({dividerVisible})=>!dividerVisible},gap:{type:ControlType.Number,title:\"Gap\",defaultValue:24,min:0,max:100,unit:\"px\",step:1}}}});function ShopXCartProductCard({imageVisibility,image,quantityControlColor,quantityNumberColor,quantityContainerBgColor,quantityControlBgColor,quantityControlHoverColor,xColor,xBgColor,xBgHoverColor,shopifyProductTitle,shopifyProductPriceAmount,shopifyQuantity,variants,style={},onRemove,onAddQuantity,onSubtractQuantity,imageConfigs,quantityConfigs,removeIconConfigs,containerConfigs,linkConfigs,titleConfigs,_lineItem,quantityContainerBorder=\"1px solid #E2E2E2\",quantityContainerRadius=\"8px\",Radius}){const[isHovered,setIsHovered]=useState(false);const[isPlusDisabled,setIsPlusDisabled]=useState(false);useEffect(()=>{const fetchOrderMax=async()=>{const variant=_lineItem;// console.log(\"variant:\", variant)\nconst productHandle=variant?.product?.handle;if(!productHandle)return;const max=await getProductOrderMax(productHandle);// console.log(\"max:\", max)\nconst currentLineQuantity=variant?.quantity||0;// console.log(\"currentLineQuantity\", currentLineQuantity)\n// console.log(\"variant:\", variant)\nif(!isNaN(max)&&max>0){const remainingAllowed=max-currentLineQuantity;// console.log(\"remainingAllowed in fetchOrderMax:\", remainingAllowed)\n// if (remainingAllowed === 0){\n// }\nsetIsPlusDisabled(true)//|| currentProductQty >= maxAllowedQty\n;// console.log(\"isPlusDisabled:\", isPlusDisabled)\n}else{setIsPlusDisabled(false);}};fetchOrderMax();},[]);const getProductOrderMax=useCallback(async productHandle=>{try{const product=window.shopXtools?.products.find(p=>p.node.handle===productHandle);// const productQtyAvail = product.node.quantityAvailable\n// console.log(\"product:\", product)\nconst metafields=await window.shopXtools?.handleCartMutation(getProductMetafields,{handle:productHandle});const orderMax=parseInt(metafields?.product?.metafield_order_max?.value,10);// console.log(\"metafields:\", metafields)\n// console.log(\"orderMax:\", orderMax)\nreturn orderMax;}catch(error){return 0;}},[]);const handleMouseEnter=e=>{// Only set hover if not clicking quantity or remove buttons\nif(!e.target.closest(\"button\")){setIsHovered(true);}};const handleMouseLeave=()=>{setIsHovered(false);};// Construct product URL if linking is enabled\nconst productUrl=linkConfigs?.enabled&&_lineItem?.merchandise?.product?.handle?`${window.location.origin}/${linkConfigs.slugPath||\"\"}${_lineItem.merchandise.product.handle}`:null;const imageHeight=imageConfigs?.ratio===\"4:5\"?(imageConfigs?.width||112)*1.25:imageConfigs?.ratio===\"3:2\"?(imageConfigs?.width||112)*(2/3):imageConfigs?.width||112;const imageRadius=typeof imageConfigs?.radius===\"object\"?`${imageConfigs.radius.topLeft}px ${imageConfigs.radius.topRight}px ${imageConfigs.radius.bottomRight}px ${imageConfigs.radius.bottomLeft}px`:`${imageConfigs?.radius||4}px`;const XIcon=({size=8,weight})=>/*#__PURE__*/_jsxs(\"svg\",{width:size,height:size,viewBox:\"0 0 16 16\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",style:{display:\"block\"},children:[/*#__PURE__*/_jsx(\"line\",{x1:\"2\",y1:\"2\",x2:\"14\",y2:\"14\",stroke:\"currentColor\",strokeWidth:weight,strokeLinecap:\"round\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"2\",y1:\"14\",x2:\"14\",y2:\"2\",stroke:\"currentColor\",strokeWidth:weight,strokeLinecap:\"round\"})]});const removeButton=/*#__PURE__*/_jsx(\"button\",{onClick:onRemove,style:{...removeIconConfigs?.border||{},background:removeIconConfigs?.bg||\"#F5F5F5\",color:removeIconConfigs?.icon||\"#000000\",cursor:\"pointer\",padding:\"4px\",borderRadius:typeof removeIconConfigs?.radius===\"object\"?`${removeIconConfigs.radius.topLeft}px ${removeIconConfigs.radius.topRight}px ${removeIconConfigs.radius.bottomRight}px ${removeIconConfigs.radius.bottomLeft}px`:typeof removeIconConfigs?.radius===\"string\"?removeIconConfigs.radius:\"80px\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",flexShrink:0,width:\"24px\",height:\"24px\"},onMouseEnter:e=>e.currentTarget.style.background=removeIconConfigs?.bgHover||\"#EBEBEB\",onMouseLeave:e=>e.currentTarget.style.background=removeIconConfigs?.bg||\"#F5F5F5\",children:removeIconConfigs?.iconType===\"Custom\"?/*#__PURE__*/_jsx(\"img\",{src:removeIconConfigs?.customImage,alt:\"Remove\",style:{width:removeIconConfigs?.iconSize,height:removeIconConfigs?.iconSize}}):/*#__PURE__*/_jsx(XIcon,{size:removeIconConfigs?.iconSize||8,weight:removeIconConfigs?.iconWeight||2})});const containerStyle={display:\"flex\",alignItems:\"stretch\",width:\"100%\",boxSizing:\"border-box\",overflow:\"hidden\",cursor:productUrl?\"pointer\":\"default\",borderRadius:typeof containerConfigs?.radius===\"object\"?`${containerConfigs.radius.topLeft}px ${containerConfigs.radius.topRight}px ${containerConfigs.radius.bottomRight}px ${containerConfigs.radius.bottomLeft}px`:`${containerConfigs?.radius||0}px`,...containerConfigs?.border||{},padding:typeof containerConfigs?.padding===\"object\"?`${containerConfigs.padding.top}px ${containerConfigs.padding.right}px ${containerConfigs.padding.bottom}px ${containerConfigs.padding.left}px`:containerConfigs?.padding||\"0px\",background:\"transparent\",...style};const contentStyle={display:\"flex\",gap:containerConfigs?.imageGap??0,flex:1,minWidth:0,padding:containerConfigs?.insidePadding||\"0px\"};const imageStyle={position:\"relative\",width:imageConfigs?.width||112,height:imageHeight,flexShrink:0,background:imageConfigs?.background||\"#F2F2F2\",borderRadius:imageConfigs?.radius||\"4px\",...imageConfigs?.border||{},overflow:\"hidden\"};const imageInnerStyle={width:\"100%\",height:\"100%\",objectFit:imageConfigs?.type===\"Fit\"?\"contain\":\"cover\",transition:\"transform 0.3s ease, opacity 0.3s ease\",...isHovered&&imageConfigs?.hover===\"Zoom\"&&{transform:`scale(${imageConfigs.zoomScale})`},...isHovered&&imageConfigs?.hover===\"Opacity\"&&{opacity:imageConfigs.opacity}};const titleStyle={...titleConfigs?.font||{},color:isHovered?titleConfigs?.hoverColor:titleConfigs?.color,margin:0,transition:\"color 0.3s ease\",textTransform:titleConfigs?.textTransform||\"none\"};const handleClick=e=>{// Only navigate if not clicking quantity or remove buttons\nif(productUrl&&!e.target.closest(\"button\")){window.location.href=productUrl;}};return /*#__PURE__*/_jsx(\"div\",{style:containerStyle,onMouseEnter:handleMouseEnter,onMouseLeave:handleMouseLeave,onClick:handleClick,children:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:containerConfigs?.imageGap??0,flex:1,minWidth:0},children:[imageVisibility&&image&&/*#__PURE__*/_jsx(\"div\",{style:imageStyle,children:/*#__PURE__*/_jsx(\"img\",{src:image,style:imageInnerStyle,onError:e=>{e.currentTarget.style.display=\"none\";}})}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",flex:1,minWidth:0,gap:containerConfigs?.gap??0,padding:containerConfigs?.insidePadding||\"0px\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"flex-start\",width:\"100%\",gap:\"16px\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:containerConfigs?.gap??0,flex:1,minWidth:0},children:[/*#__PURE__*/_jsx(\"div\",{style:titleStyle,children:typeof shopifyProductTitle===\"string\"?shopifyProductTitle:/*#__PURE__*/React.cloneElement(shopifyProductTitle,{style:titleStyle})}),variants]}),removeIconConfigs?.position===\"Top\"?removeButton:shopifyProductPriceAmount]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\",gap:\"16px\",marginTop:\"auto\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",backgroundColor:quantityConfigs?.container?.containerBg||\"transparent\",borderRadius:typeof quantityConfigs?.container?.containerRadius===\"object\"?`${quantityConfigs.container.containerRadius.topLeft}px ${quantityConfigs.container.containerRadius.topRight}px ${quantityConfigs.container.containerRadius.bottomRight}px ${quantityConfigs.container.containerRadius.bottomLeft}px`:typeof quantityConfigs?.container?.containerRadius===\"string\"?quantityConfigs.container.containerRadius:\"8px\",padding:quantityConfigs?.container?.padding||\"4px\",...quantityConfigs?.container?.containerBorder||{borderWidth:1,borderStyle:\"solid\",borderColor:\"#E2E2E2\"},flexShrink:0},children:[/*#__PURE__*/_jsx(\"button\",{onClick:onSubtractQuantity,style:{...quantityConfigs?.buttons?.border||{},background:quantityConfigs?.buttons?.iconBg||\"#F5F5F5\",color:quantityConfigs?.buttons?.icons||\"#000000\",cursor:\"pointer\",padding:quantityConfigs?.buttons?.padding||\"4px 8px\",borderRadius:typeof quantityConfigs?.buttons?.radius===\"object\"?`${quantityConfigs.buttons.radius.topLeft}px ${quantityConfigs.buttons.radius.topRight}px ${quantityConfigs.buttons.radius.bottomRight}px ${quantityConfigs.buttons.radius.bottomLeft}px`:typeof quantityConfigs?.buttons?.radius===\"string\"?quantityConfigs.buttons.radius:\"4px\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},onMouseEnter:e=>{e.currentTarget.style.background=quantityConfigs?.buttons?.iconBgHover||\"#EBEBEB\";},onMouseLeave:e=>{e.currentTarget.style.background=quantityConfigs?.buttons?.iconBg||\"#F5F5F5\";},children:quantityConfigs?.buttons?.iconType===\"Custom\"?/*#__PURE__*/_jsx(\"img\",{src:quantityConfigs.buttons.customMinusIcon,alt:\"Minus\",style:{width:quantityConfigs.buttons.iconSize||8,height:quantityConfigs.buttons.iconSize||8}}):/*#__PURE__*/_jsx(MinusIcon,{size:quantityConfigs?.buttons?.iconSize||8,weight:quantityConfigs?.buttons?.iconWeight||2})}),/*#__PURE__*/_jsx(\"span\",{style:{margin:\"0 8px\",color:quantityConfigs?.container?.number||\"#000000\",...quantityConfigs?.container?.font||{}},children:shopifyQuantity}),/*#__PURE__*/_jsx(\"button\",{onClick:isPlusDisabled?undefined:onAddQuantity,disabled:isPlusDisabled,style:{...quantityConfigs?.buttons?.border||{},background:isPlusDisabled?quantityConfigs?.buttons?.iconBgDisabled:quantityConfigs?.buttons?.iconBg||\"#F5F5F5\",color:isPlusDisabled?quantityConfigs?.buttons?.iconsColorDisabled:quantityConfigs?.buttons?.icons||\"#000000\",cursor:isPlusDisabled?\"not-allowed\":\"pointer\",padding:quantityConfigs?.buttons?.padding||\"4px 8px\",borderRadius:typeof quantityConfigs?.buttons?.radius===\"object\"?`${quantityConfigs.buttons.radius.topLeft}px ${quantityConfigs.buttons.radius.topRight}px ${quantityConfigs.buttons.radius.bottomRight}px ${quantityConfigs.buttons.radius.bottomLeft}px`:typeof quantityConfigs?.buttons?.radius===\"string\"?quantityConfigs.buttons.radius:\"4px\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},onMouseEnter:e=>{{isPlusDisabled?quantityConfigs?.buttons?.iconBgDisabled:e.currentTarget.style.background=quantityConfigs?.buttons?.iconBgHover||\"#EBEBEB\";}},onMouseLeave:e=>{{isPlusDisabled?quantityConfigs?.buttons?.iconBgDisabled:e.currentTarget.style.background=quantityConfigs?.buttons?.iconBg||\"#F5F5F5\";}},children:quantityConfigs?.buttons?.iconType===\"Custom\"?/*#__PURE__*/_jsx(\"img\",{src:quantityConfigs.buttons.customPlusIcon,alt:\"Plus\",style:{width:quantityConfigs.buttons.iconSize||8,height:quantityConfigs.buttons.iconSize||8}}):/*#__PURE__*/_jsx(PlusIcon,{size:quantityConfigs?.buttons?.iconSize||8,weight:quantityConfigs?.buttons?.iconWeight||2})})]}),removeIconConfigs?.position===\"Bottom\"?removeButton:shopifyProductPriceAmount]})]})]})});}const MinusIcon=({size=8,weight})=>/*#__PURE__*/_jsx(\"svg\",{width:size,height:size,viewBox:\"0 0 16 16\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",style:{display:\"block\"},children:/*#__PURE__*/_jsx(\"line\",{x1:\"2\",y1:\"8\",x2:\"14\",y2:\"8\",stroke:\"currentColor\",strokeWidth:weight,strokeLinecap:\"round\"})});const PlusIcon=({size=8,weight})=>/*#__PURE__*/_jsxs(\"svg\",{width:size,height:size,viewBox:\"0 0 16 16\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",style:{display:\"block\"},children:[/*#__PURE__*/_jsx(\"line\",{x1:\"8\",y1:\"2\",x2:\"8\",y2:\"14\",stroke:\"currentColor\",strokeWidth:weight,strokeLinecap:\"round\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"2\",y1:\"8\",x2:\"14\",y2:\"8\",stroke:\"currentColor\",strokeWidth:weight,strokeLinecap:\"round\"})]});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_CartProductCard\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_CartProductCard.map","/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * © 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx}from\"react/jsx-runtime\";import React,{useEffect,useState,useCallback,useRef,cloneElement}from\"react\";import{appendAllTrackingParamsToUrl,getUTMParameters,getSCARefParameters}from\"https://framerusercontent.com/modules/w24ELWa2giT3SFaWpV77/398w6fPyag8B92ojouQr/utmParams.js\";import{throttle}from\"lodash-es\";import{addPropertyControls,ControlType}from\"framer\";import{appendLanguageToUrl}from\"https://framerusercontent.com/modules/vC6fzbfO83MgBPIhn5zl/DUlbmWuOELzEUenVmv3G/locales.js\";import{trackFacebookPixelInitiateCheckout}from\"https://framerusercontent.com/modules/6Zs9CjkPbKzHjoy8LK08/iqoIwmJw4hztafi4V4IV/Fb_pixel.js\";/**\n * @framerDisableUnlink\n */export default function FC_CartCheckoutButton({componentInstance}){const[checkoutUrl,setCheckoutUrl]=useState(null);const isFetching=useRef(false);// Capture UTM and SCA ref parameters on component mount\nuseEffect(()=>{// Get UTM and SCA ref parameters when component mounts\ngetUTMParameters();getSCARefParameters();},[]);const waitForCondition=useCallback((conditionFn,checkInterval=100,timeout=1e4)=>{return new Promise((resolve,reject)=>{const startTime=Date.now();const checkCondition=()=>{if(conditionFn()){resolve();}else if(Date.now()-startTime>=timeout){reject(new Error(\"Condition not met within timeout\"));}else{setTimeout(checkCondition,checkInterval);}};checkCondition();});},[]);const fetchCartAndUpdateCheckoutUrl=useCallback(async cartId=>{if(isFetching.current)return;isFetching.current=true;try{await waitForCondition(()=>window.shopXtools&&window.shopXtools.fetchCart);const cartData=await window.shopXtools.fetchCart(cartId);//console.log(\"Cart Data in checkout button\", cartData)\nif(cartData){//console.log(\"Cart Data in checkout button\", cartData)\n// Check for existing attributes\nconst storedAttributes=JSON.parse(localStorage.getItem(\"fc_cart_attributes\")||\"[]\");// console.log(\"Cart data received:\", {\n//     checkoutUrl: cartData.checkoutUrl,\n//     storedAttributes,\n// })\nwindow.shopXtools.cart=cartData;setCheckoutUrl(cartData.checkoutUrl||null);}else{console.error(\"Failed to fetch cart data from Shopify\");setCheckoutUrl(null);}}catch(error){console.error(\"Error fetching cart from Shopify:\",error);setCheckoutUrl(null);}finally{isFetching.current=false;}},[waitForCondition]);const handleCartUpdate=useCallback(throttle(async()=>{let cartId=window[\"shopXtools\"]?.cart?.id||localStorage.getItem(\"shopX_cart_id\");if(cartId){await fetchCartAndUpdateCheckoutUrl(cartId);}else{console.warn(\"No cart ID found. Cart is empty.\");setCheckoutUrl(null);}},1e3),[fetchCartAndUpdateCheckoutUrl]);useEffect(()=>{handleCartUpdate();window.addEventListener(\"shopXtools-cart-update\",handleCartUpdate);return()=>{window.removeEventListener(\"shopXtools-cart-update\",handleCartUpdate);};},[handleCartUpdate]);const handleClick=async e=>{try{// Aggregate all product-specific attributes from sessionStorage\nconst allAttributes=[];for(let i=0;i<sessionStorage.length;i++){const key=sessionStorage.key(i);if(key?.startsWith(\"fc_cart_attributes_\")){const productAttributes=JSON.parse(sessionStorage.getItem(key)||\"{}\");Object.entries(productAttributes).forEach(([attrKey,attrValue])=>{allAttributes.push({key:attrKey,value:String(attrValue)});});}}// Update cart attributes if we have any\nif(allAttributes.length>0&&window.shopXtools?.handleCartMutation){const updateCartMutation=`\n                    mutation cartAttributesUpdate($cartId: ID!, $attributes: [AttributeInput!]!) {\n                        cartAttributesUpdate(cartId: $cartId, attributes: $attributes) {\n                            cart {\n                                id\n                                attributes {\n                                    key\n                                    value\n                                }\n                            }\n                            userErrors {\n                                field\n                                message\n                            }\n                        }\n                    }\n                `;try{await window.shopXtools.handleCartMutation(updateCartMutation,{cartId:window.shopXtools.cart.id,attributes:allAttributes});}catch(error){console.error(\"Failed to update cart attributes:\",error);}}// Analytics\nconst cart=window.shopXtools?.cart;if(!cart){console.warn(\"No cart found.\");return;// Exit if no cart is available\n}// Check if lines is defined and is an array\nconst lines=cart.lines?.edges||[];if(!Array.isArray(lines)){console.error(\"Lines is not an array:\",lines);return;// Exit if lines is not an array\n}const cartItems=lines.map(line=>line.node)// Assuming line.node contains the item details\n;// const value = parseFloat(cartItems.reduce((total, item) => total + parseFloat(item.cost.totalAmount.amount) * item.quantity, 0).toFixed(2));\n// const currency = cartItems.length > 0 ? cartItems[0].cost.totalAmount.currencyCode : 'USD';\nconst value=cart?.cost.subtotalAmount.amount;const currency=cart?.cost.subtotalAmount.currencyCode;const items=cartItems.map(item=>{const unitAmount=parseFloat(item.cost?.amountPerQuantity?.amount??(item.cost?.subtotalAmount?.amount&&item.quantity?(parseFloat(item.cost.subtotalAmount.amount)/item.quantity).toFixed(2):\"0\"));return{item_id:item.merchandise.id?.split(\"/\").pop()||\"\",item_name:item.merchandise.product?.title||item.merchandise.title||\"\",item_variant:item.merchandise.title||\"\",price:unitAmount,quantity:item.quantity,item_brand:item.merchandise.product?.vendor||null,item_category:item.merchandise.product?.productType||null,// TagHound compatibility\nSKU:item.merchandise.id?.split(\"/\").pop()||\"\",\"Item Name\":item.merchandise.product?.title||item.merchandise.title||\"\"};});// Google Analytics tracking\nif(typeof window.fcTrackGAEvent===\"function\"){// console.log(\"Tracking Begin Checkout - google:\", {\n//     currency,\n//     value,\n//     items,\n// })\nconst gaPayload={currency,value,items};window.fcTrackGAEvent(\"begin_checkout\",gaPayload);}// Meta Pixel tracking\ntry{trackFacebookPixelInitiateCheckout({content_ids:items.map(item=>item.item_id),value:value,currency:currency,num_items:items.reduce((total,item)=>total+item.quantity,0),content_name:\"Checkout\",useBeacon:true});}catch(error){console.warn(\"Facebook Pixel tracking failed, continuing with checkout:\",error);}let finalCheckoutUrl=window.fcEnhancedCheckoutUrl||checkoutUrl;// Only proceed with tracking params and language if we have a valid checkout URL\nif(finalCheckoutUrl){finalCheckoutUrl=appendAllTrackingParamsToUrl(finalCheckoutUrl);finalCheckoutUrl=appendLanguageToUrl(finalCheckoutUrl);// Clear all product-specific attributes after successful checkout redirect\nfor(let i=0;i<sessionStorage.length;i++){const key=sessionStorage.key(i);if(key?.startsWith(\"shopX_cart_attributes_\")){sessionStorage.removeItem(key);}}// Delay navigation slightly to observe analytics firing\nwindow.location.assign(finalCheckoutUrl);}else{console.error(\"No checkout URL available\");}}catch(error){console.error(\"Error during checkout:\",error);}};const content=Array.isArray(componentInstance)?componentInstance[0]:componentInstance;if(!content||!/*#__PURE__*/React.isValidElement(content)){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",color:\"#666\",fontSize:\"14px\"},children:\"Connect Instance\"});}return /*#__PURE__*/_jsx(\"div\",{style:{height:\"100%\",width:\"100%\"},children:/*#__PURE__*/cloneElement(content,{style:{...content.props?.style||{},width:\"100%\",height:\"100%\"},onClick:e=>{handleClick(e);if(content.props?.onClick){content.props.onClick(e);}}})});}addPropertyControls(FC_CartCheckoutButton,{componentInstance:{type:ControlType.ComponentInstance,title:\"Instance\",description:\"Connect to your checkout button component off-page (required).\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_CartCheckoutButton\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"mpBAA6B,EAAC,GAAU,0BAA0B,CAAC,cAAc,CAAC,EAAe,EAAM,CAAC,CAAC,OAAO,QAAQ,YAAY,CAAC,sBAAsB,qCAAqC,IAAI,uGAAuG,EAAE,MAAM,SAAS,IAAI,wGAAwG,OAAO,KAAK,CAAC,EAAe,EAAI,CAAC,ohBAAohB,EAAe,EAAU,mDCC58B,IAA+G,IAAkE,IAA4B,KAAyH,EAAO,GAAW,CAAC,WAAW,EAAQ,GAAkB,CAAC,UAAU,iBAAiB,EAAwO,GAAY,CAAC,QAAQ,CAAC,QAAQ,GAAG,MAAM,EAAE,KAAK,EAAE,UAAU,IAAI,KAAK,QAAQ,CAAC,EAAQ,IAAY,CAAC,QAAM,cAAY,CAAC,IAAM,EAAOA,EAAiB,CAAmB,EAAQ,EAAW,GAAmC,EAAO,WAAiB,EAAaC,OAAmB,CAAC,GAAG,EAAO,YAAU,GAAG,CAAC,KAAK,UAAU,CAAU,CAAC,CAAC,EAAE,OAAqB,EAAK,EAAoB,SAAS,CAAC,MAAM,EAAsB,UAAQ,CAAC,CAAE,EAAQ,IAAU,CAAC,SAAO,KAAG,OAAK,QAAM,GAAG,MAAwB,CAAC,GAAG,EAAM,UAAe,GAAgC,EAAM,WAAoC,eAAe,GAAU,IAAwB,EAAM,IAAW,EAAS,KAAK,GAAG,EAAE,EAAM,iBAM30C,EAAgB,EAN02CC,EAAiB,SAAS,EAAM,EAAI,CAAC,GAAK,CAAC,gBAAc,EAAc,EAAO,CAAC,QAAM,UAAA,EAAU,WAAS,UAAQ,YAAU,GAAG,GAAW,GAAS,CAAK,EAAO,CAAC,cAAY,aAAW,iBAAe,kBAAgB,aAAW,aAAW,YAAU,EAAgB,CAAC,cAAW,eAAe,YAAY,eAAY,UAAQ,oBAAiB,CAAC,EAAQ,EAAiB,GAAuB,EAAM,CAAQ,EAAQ,EAAgBC,EAAY,EAAE,OAAqB,EAAK,GAAY,CAAC,GAAG,GAA4C,EAAgB,SAAuB,EAAK,EAAO,IAAI,CAAC,QAAQ,EAAQ,QAAQ,EAAS,iBAAiB,EAAgB,CAAC,UAAU,EAAI,CAAC,EAAE,eAAe,EAAgB,CAAC,UAAU,EAAK,CAAC,EAAE,eAAe,EAAgB,CAAC,UAAU,EAAI,CAAC,EAAE,UAAU,EAAgB,CAAC,UAAU,EAAK,CAAC,EAAE,gBAAgB,EAAgB,CAAC,UAAU,EAAK,CAAC,EAAE,UAAU,EAAG,eAAeC,EAAsB,CAAU,EAAE,MAAM,CAAC,QAAQ,UAAU,EAAE,SAAuB,EAAK,GAAW,CAAC,MAAM,EAAW,SAAuB,EAAK,EAAO,IAAI,CAAC,GAAG,EAAU,UAAU,EAAG,gBAAgBC,CAAS,EAAE,mBAAmB,YAA6B,mBAAiB,SAAS,YAAgB,MAAI,MAAM,CAAC,GAAG,CAAK,EAAE,SAAuB,EAAKC,EAAS,CAAC,sBAAsB,GAAK,SAAS,EAAU,UAAU,iBAAkC,mBAAiB,SAAS,YAAY,MAAM,CAAC,2BAA2B,mBAAmB,gCAAgC,YAAY,6BAA6B,KAAK,EAAE,wBAAwB,CAAC,EAAE,6BAA6B,EAAE,kBAAkB,MAAM,mBAAmB,EAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAMj7F,EAAE,CAN67F,sZAAsZ,kFAAkF,oDAAoD,mRAAmR,iHAAiH,6WAA6W,GAAGC,CAM3sI,EAAE,cAAc,EAAiC,EAAgB,YAAY,uBAAuB,EAAgB,aAAa,CAAC,OAAO,GAAG,MAAM,IAAI,EAAE,EAAoB,EAAgB,CAAC,UAAU,CAAC,aAAa,gBAAgB,MAAM,OAAO,KAAK,EAAY,QAAQ,CAAC,CAAC,EAAE,EAAS,EAAgB,CAAC,GAAGC,CAAiB,CAAC,wBCAvP,KCgClH,SAAwB,EAAgB,EAAM,CAAC,GAAK,CAAC,OAAO,CAAC,eAAa,aAAW,eAAa,aAAa,GAAqB,CAAC,GAAG,EAAW,CAAC,EAAS,GAAaC,EAAS,CAAC,EAAO,CAAC,EAAK,GAASA,EAAS,IAAI,EAAO,CAAC,EAAiB,GAAqBA,EAAS,EAAE,EAAO,CAAC,EAAoB,GAAwBA,EAAS,EAAE,EAAO,CAAC,EAAgB,GAAoBA,EAAS,EAAE,EAAO,CAAC,GAAe,GAAmBA,MAAa,CAChc,GAAU,IAAS,OAAY,CAAC,IAAM,EAAS,GAAQ,qBAAqB,kBAAkB,SAC9F,MAAO,CAD8H,WAAS,SAAS,IAAW,OAAO,OAAO,GAAQ,qBAAqB,gBAAgB,GAC1M,CAAE,CAAC,MAAM,CAAC,SAAS,SAAS,SAAS,GAAM,OAAO,GAAG,CAAE,CAAC,EAAQ,EAAiB,IAAS,OAC7G,MAAc,CAAC,GAAG,CAAC,EAAU,OAAO,IAAM,EAAe,aAAa,QAAQ,kBAAkB,EAAQ,EAAkB,aAAa,QAAQ,qBAAqB,EAAQ,EAAc,aAAa,QAAQ,iBAAiB,EAAE,EAAoB,GAAgB,KAAK,EAAE,EAAuB,GAAmB,IAAI,EAAE,EAAmB,GAAe,eAAe,CAG9W,EAAE,CAAC,CAAS,CAAC,EAKb,MAAc,CAAC,GAAG,CAAC,EAAU,OAAO,SAAS,EAAqB,EAAS,EAAO,CAElF,EAAkB,CADD,SAAS,GAAU,SAAS,SAAS,IAAW,OAAO,OAAO,GAAQ,GAC7D,CAAC,CAAE,CAC7B,IAAM,EAA6B,GAAG,CAClC,EAAE,QAAQ,SACN,EAAqB,EAAE,OAAO,QAAQ,iBAAiB,EAAE,OAAO,QAAQ,cAAc,CAAE,EAC1F,EAAgB,EAAO,qBAAqB,iBAAuB,EAAc,EAAO,qBAAqB,eACnH,EAAqB,EAAgB,CAAa,EAClD,SAAS,iBAAiB,6BAA6B,CAA4B,EAEnF,IAAM,EAAqB,GAAO,CAClC,GAAK,CAAC,WAAS,cAAY,WAAS,EAAM,OAAO,EAAoB,CAAQ,EAAE,EAAuB,CAAW,EAAE,EAAmB,CAAO,CAAE,EAAmE,OAAjE,EAAO,iBAAiB,mBAAmB,CAAoB,MAAY,CAAC,SAAS,oBAAoB,6BAA6B,CAA4B,EAAE,EAAO,oBAAoB,mBAAmB,CAAoB,CACvX,CAAE,EAAE,CAAC,CAAS,CAAC,EACf,MAAc,CAAC,GAAG,CAAC,EAAU,OAAO,IAAM,MAAmB,CAAC,IAAM,EAAK,EAAI,EAAO,iBAAiB,EAErG,GAAG,EAAK,CAAC,EAAQ,CAAI,EACL,EAAI,EAAK,cAAc,CAAC,CAAC,EAiBzC,IAAM,EAAS,WAAW,EAAI,EAAK,6BAA6B,GAAG,CAAC,EACpE,EAAY,CAAQ,CAAE,CACrB,EAEgE,OADjE,EAAe,EACf,EAAO,iBAAiB,yBAAyB,CAAc,MAAY,EAAO,oBAAoB,yBAAyB,CAAc,CAAE,EAAE,CAAC,CAAS,CAAC,EAAE,IAAM,EAAcC,MAAY,CAAC,GAAG,CAAC,EAAU,MAAM,MACnN,IAAM,EAAiB,EAAI,EAAO,mDAAmD,KAAK,EAC1F,OAAO,GAAkB,CAAiB,EAAE,CAAC,EAAU,EAAK,CAAgB,CAAC,EAAQ,EAAeA,MAAY,IAAW,GAAG,GAAW,EAAO,SAAS,OAAO,SAAS,kBAAkB,EAAE,CAAC,EAAS,CAAS,CAAC,EAC3M,GAAwB,EAAa,IAAW,CAAC,IAAM,EAAiBC,GAA2B,CAAQ,EAC3G,EAAO,EAAqB,CAAmB,EAgB5C,EAFwB,IAAe,eAA6B,IAAe,eAA6B,IAAe,iBACjI,EAAa,GAAI,GACoB,EAAE,EAC9C,GAAG,CAAC,GAAY,CAAC,EACjB,OADqD,IAAI,KAAK,aAAa,EAAO,CAAC,MAAM,UAAU,sBAAsB,EAAc,sBAAsB,CAAa,CAAC,CAAC,CAAC,OAAO,CAC/J,EACrB,GAAG,IAAW,OAAO,EAErB,GADY,GAAW,mBAAmB,KAAK,EAAU,SAAS,GAAG,CAAC,EAAO,SACpE,CAAC,IAAM,EAAO,IAAI,KAAK,aAAa,EAAO,CAAC,MAAM,UAAU,sBAAsB,EAAc,sBAAsB,CAAa,CAAC,CAAC,CAAC,OAAO,CAAY,EAAoB,OAAd,EAC3J,IAAI,EAAO,MADoK,IAAI,GAE9L,MAEF,GAAI,EAAoa,MAAM,GAAlM,IAAI,KAAK,aAAa,EAAO,CAAC,MAAM,WAAW,SAAS,MAAM,sBAAsB,EAAc,sBAAsB,EAAc,gBAAgB,cAAc,CAAC,CAAC,CAAC,OAAO,CAAgC,EAAE,WAA1a,OAAO,IAAI,KAAK,aAAa,EAAO,CAAC,MAAM,WAAW,SAAS,MAAM,sBAAsB,EAAc,sBAAsB,EAAc,gBAAgB,cAAc,CAAC,CAAC,CAAC,OAAO,CAAY,EAOH,OAN7M,IACA,GAAc,CAAC,GAA6N,GAAY,CAAC,GAA+N,GAAc,GAA4K,GAAG,EAAS,GAA/J,IAAI,KAAK,aAAa,EAAO,CAAC,MAAM,UAAU,sBAAsB,EAAc,sBAAsB,CAAa,CAAC,CAAC,CAAC,OAAO,CAAwC,IAEtqB,CAAC,GAAY,EACV,GADqC,IAAI,KAAK,aAAa,EAAO,CAAC,MAAM,UAAU,sBAAsB,EAAc,sBAAsB,CAAa,CAAC,CAAC,CAAC,OAAO,CAC5J,EAAE,GAAG,IAChB,GAAY,CAAC,EAAqB,IAAI,KAAK,aAAa,EAAO,CAAC,MAAM,WAAW,SAAS,EAAS,sBAAsB,EAAc,sBAAsB,EAAc,gBAAgB,cAAc,CAAC,CAAC,CAAC,OAAO,CAAY,EACZ,GAArM,IAAI,KAAK,aAAa,EAAO,CAAC,MAAM,WAAW,SAAS,EAAS,sBAAsB,EAAc,sBAAsB,EAAc,gBAAgB,cAAc,CAAC,CAAC,CAAC,OAAO,CAAgC,EAAE,GAAG,GAAW,EAAQ,EAAKD,MAAiB,EAC7Q,EAAa,QAAQ,IAAI,EAAa,QAAQ,EAAiG,EAAuB,IAAzD,GAAqB,KAAkE,EAChM,EAAuB,EAAS,CAAa,EAF4O,GAExO,CAAC,EAAU,EAAe,EAAS,EAAc,EAAa,EAAW,EAAa,EAAoB,EAAM,MAAM,CAAC,EAQuC,OARjC,EAQ3KE,IAAoB,OAAiC,EAAK,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,UAAU,OAAO,EAAE,SAAsB,EAAK,IAAI,CAAC,MAAM,CAAC,GAAG,EAAM,KAAK,MAAM,EAAM,MAAM,OAAO,CAAC,EAAE,SAAS,CAAI,CAAC,CAAC,CAAC,EAAuB,EAAKA,EAAkB,CAAC,GAAG,EAAM,KAAkB,EAAK,IAAI,CAAC,MAAM,CAAC,GAAG,EAAM,KAAK,MAAM,EAAM,MAAM,OAAO,CAAC,EAAE,SAAS,CAAI,CAAC,EAAE,MAAM,CAAC,MAAM,MAAM,CAAC,CAAC,EARzK,EAAK,MAAM,CAAC,MAAM,CAAC,QAAQ,aAAa,CAAC,CAAC,CAQiI,yBApGlV,IAA8C,KAA+E,IAAoD,IAA2B,IAA6I,IAA6H,EAC7fD,GAA2B,GAAc,CAC/C,GAAG,CAAC,EAAa,MAAO,GAAM,GAAG,EAAgC,SAAS,CAAY,EAAG,MAAO,GAAM,GAAG,CAEzG,OAF0H,IAAI,KAAK,aAAa,IAAA,GAAU,CAAC,MAAM,WAAW,SAAS,EAAa,gBAAgB,cAAc,CAAC,CAAC,CAAC,OAAO,CAC7M,CAAC,CAAC,QAAQ,aAAa,EAChC,IAAI,CAAa,MAAS,CAAC,MAAO,EAAM,CAAC,EAgGmU,EAAgB,aAAa,CAAC,OAAO,CAAC,aAAa,GAAM,WAAW,GAAK,aAAa,MAAM,aAAa,aAAa,CAAC,EAAE,EAAoB,EAAgB,CAAC,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,SAAS,CAAC,WAAW,CAAC,KAAK,EAAY,QAAQ,MAAM,SAAS,aAAa,GAAK,aAAa,OAAO,cAAc,OAAO,YAAY,eAAkB,EAAE,aAAa,CAAC,KAAK,EAAY,QAAQ,MAAM,OAAO,aAAa,GAAM,aAAa,OAAO,cAAc,OAAO,YAAY,qBAAqB,EAAE,aAAa,CAAC,KAAK,EAAY,KAAK,MAAM,WAAW,aAAa,cAAc,QAAQ,CAAC,cAAc,aAAa,eAAe,EAAE,aAAa,CAAC,cAAc,aAAa,eAAe,EAAE,wBAAwB,GAAK,0BAA0B,UAAU,EAAE,aAAa,CAAC,KAAK,EAAY,KAAK,MAAM,UAAU,aAAa,MAAM,QAAQ,uJAAkN,EAAE,YAAY,2EAA2E,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,EAAY,KAAK,SAAS,WAAW,MAAM,MAAM,EAAE,MAAM,CAAC,KAAK,EAAY,MAAM,aAAa,OAAO,MAAM,OAAO,CAAC,CAAC,KC9FrnD,SAAwB,EAAmB,EAAM,CAAC,GAAK,CAAC,EAAK,GAASE,EAAS,CAAC,CAAC,EAAO,CAAC,EAAU,GAAcA,EAAS,CAAC,CAAC,EAAO,CAAC,EAAa,GAAiBA,EAAS,EAAE,EAAQ,EAAWC,EAAO,EAAK,EAAO,CAAC,EAAiB,GAAqBD,EAAS,EAAE,EAAO,CAAC,EAAoB,GAAwBA,EAAS,EAAE,EAAO,CAAC,GAAgB,GAAoBA,EAAS,EAAE,EAExX,EAAU,EAAa,EACvB,EAA0BE,EAAY,GAAmB,CAAC,GAAW,CAAC,EAAqB,EAAS,EAAU,QAAQ,EAAM,CAAC,UAAiC,GAAM,aAAa,SAAS,SAA8B,EAAsB,GAAO,EAAK,UAAU,GAAW,EAAQ,CAAC,EAAI,CAAC,CAAS,CAAC,EAC7S,MAAc,CAAC,GAAG,CAAC,EAAU,OAAO,IAAM,EAAe,aAAa,QAAQ,kBAAkB,EAAQ,EAAkB,aAAa,QAAQ,qBAAqB,EAAQ,EAAc,aAAa,QAAQ,iBAAiB,EAAE,EAAoB,GAAgB,KAAK,EAAE,EAAuB,GAAmB,IAAI,EAAE,EAAmB,GAAe,eAAe,CAC9W,EAAE,CAAC,CAAS,CAAC,EACb,MAAc,CAAC,GAAG,CAAC,EAAU,OAAO,IAAM,EAAqB,GAAO,CAAC,GAAK,CAAC,WAAS,cAAY,WAAS,EAAM,OAAO,EAAoB,CAAQ,EAAE,EAAuB,CAAW,EAAE,EAAmB,CAAO,CACpN,EAAmE,OAAjE,EAAO,iBAAiB,mBAAmB,CAAoB,MAAY,CAAC,EAAO,oBAAoB,mBAAmB,CAAoB,CAAE,CAAE,EAAE,CAAC,EAAU,EAAiB,CAAmB,CAAC,EACtM,GAAK,CAAC,EAAe,GAAmBF,MAAa,CACrD,GAAU,IAAS,OAAY,CAAC,IAAM,EAAS,GAAQ,qBAAqB,kBAAkB,SAK9F,MAAO,CAL8H,WAAS,SAAS,IAAW,OAAO,OAAO,GAAQ,qBAAqB,gBAAgB,GAK1M,CAAE,CAAC,MAAM,CAAC,SAAS,SAAS,SAAS,GAAM,OAAO,GAAG,CAAE,CAAC,EAC3E,MAAc,CAAC,GAAU,IAAS,OAAY,OAAO,SAAS,EAAqB,EAAS,EAAO,CAEnG,EAAkB,CADD,SAAS,GAAU,SAAS,SAAS,IAAW,OAAO,OAAO,GAAQ,GAC7D,CAAC,CAAE,CAC7B,IAAM,EAA6B,GAAG,CAClC,EAAE,QAAQ,SACN,EAAqB,EAAE,OAAO,QAAQ,iBAAiB,EAAE,OAAO,QAAQ,cAAc,CAAE,EAC1F,EAAgB,EAAO,qBAAqB,iBAAuB,EAAc,EAAO,qBAAqB,eAK9B,OADrF,EAAqB,EAAgB,CAAa,EAClD,SAAS,iBAAiB,6BAA6B,CAA4B,MAAY,CAAC,SAAS,oBAAoB,6BAA6B,CAA4B,CAAE,CAAE,EAAE,CAAC,CAAC,EAA0B,EAAM,cAAc,iBAA2C,EAAM,cAAc,WAuB3S,GAAK,CAAC,EAAO,GAAWA,EAAS,IAAA,EAAS,EAAE,MAAc,CAC1D,IAAM,EAAc,EAAqB,CAAmB,EAC5D,EAAU,CAAa,CAAE,EAAE,CAAC,CAAmB,CAAC,EAAE,IAAM,EAAgBE,GAAa,EAAO,IAAe,CAC3G,GAAG,OAAO,GAAS,SAAS,CAAC,EAAO,EAAO,QAAQ,WAAW,EAAE,EAAE,IAAM,EAAM,EAAO,MAAM,GAAG,EAAK,EAAM,OAAO,IAAG,EAAO,EAAM,GAAG,IAAI,EAAM,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,EAAG,CAChK,GADoK,OAAO,GAAS,WAAU,EAAO,WAAW,CAAM,GAAM,MAAM,CAAM,IAAG,EAAO,GAC/O,EAAa,QAAQ,IAAI,EAAa,OAAO,CAAC,IAAM,EAAO,EAAM,cAAc,QAAQ,CAAC,EAAE,OAAO,EAAuB,EAAO,EAAO,cAAc,KAAK,CAAE,CAClH,OAA/B,EAAM,cAAc,OAAkB,EAAuB,EAAO,GAAc,KAAK,CAAE,EAAE,CAAC,EAAM,aAAa,CAAM,CAAC,EAC7H,EAAuBA,GAAa,EAAa,IAAW,CAAC,AAAa,IAAS,MACzF,IAAM,EAAO,EAAM,cAAc,QAAQ,CAAC,EACpC,EAAW,EAAO,aAAa,IAAA,GAA4B,EAAM,cAAc,aAAa,IAAA,IAAU,EAAM,aAAa,WAAhF,EAAO,WAA+F,EAAa,EAAO,eAAe,IAAA,GAA8B,EAAM,cAAc,mBAAmB,IAAA,IAAU,EAAM,aAAa,iBAAxF,EAAO,aAA8G,EAAa,EAAO,cAAc,cAAoB,EAAiB,GAA2B,CAAQ,EAWxZ,EAFwB,IAAe,eAA6B,IAAe,eAA6B,IAAe,iBACjI,EAAa,GAAI,GACoB,EAAE,EAC9C,GAAG,CAAC,GAAY,CAAC,EAAiL,OAA7I,IAAI,KAAK,aAAa,EAAO,CAAC,MAAM,UAAU,sBAAsB,EAAc,sBAAsB,CAAa,CAAC,CAAC,CAAC,OAAO,CAAmC,EACvN,GAAG,IAAW,OAAO,EAErB,GADY,GAAW,mBAAmB,KAAK,EAAU,SAAS,GAAG,CAAC,EAAO,SACpE,CAAC,IAAM,EAAO,IAAI,KAAK,aAAa,EAAO,CAAC,MAAM,UAAU,sBAAsB,EAAc,sBAAsB,CAAa,CAAC,CAAC,CAAC,OAAO,CAAY,EAAoB,OAAd,EAC3J,IAAI,EAAO,MADoK,IAAI,GAE9L,MAEF,GAAI,EAAoa,MAAM,GAAlM,IAAI,KAAK,aAAa,EAAO,CAAC,MAAM,WAAW,SAAS,MAAM,sBAAsB,EAAc,sBAAsB,EAAc,gBAAgB,cAAc,CAAC,CAAC,CAAC,OAAO,CAAgC,EAAE,WAA1a,OAAO,IAAI,KAAK,aAAa,EAAO,CAAC,MAAM,WAAW,SAAS,MAAM,sBAAsB,EAAc,sBAAsB,EAAc,gBAAgB,cAAc,CAAC,CAAC,CAAC,OAAO,CAAY,EACnN,GAAG,EAAiB,CACpB,GAAG,GAAc,CAAC,EAAW,CAAC,IAAM,EAAO,IAAI,KAAK,aAAa,EAAO,CAAC,MAAM,UAAU,sBAAsB,EAAc,sBAAsB,CAAa,CAAC,CAAC,CAAC,OAAO,CAAY,EAAuC,MAAO,GAA5B,EAAS,GAAG,GAAuB,CAAC,GAAG,GAAY,CAAC,EAAa,CAAC,IAAM,EAAO,IAAI,KAAK,aAAa,EAAO,CAAC,MAAM,UAAU,sBAAsB,EAAc,sBAAsB,CAAa,CAAC,CAAC,CAAC,OAAO,CAAY,EAAuC,MAAO,GAA5B,EAAS,GAAG,GAAuB,CAAC,GAAG,GAAc,EAAW,CAAC,IAAM,EAAO,IAAI,KAAK,aAAa,EAAO,CAAC,MAAM,UAAU,sBAAsB,EAAc,sBAAsB,CAAa,CAAC,CAAC,CAAC,OAAO,CAAY,EAAE,MAAM,GAAG,EAAS,GAAG,GAAS,CAAC,CAK9d,MAH7M,CAAC,GAAY,EACV,GADqC,IAAI,KAAK,aAAa,EAAO,CAAC,MAAM,UAAU,sBAAsB,EAAc,sBAAsB,CAAa,CAAC,CAAC,CAAC,OAAO,CAC5J,EAAE,GAAG,IAChB,GAAY,CAAC,EAAqB,IAAI,KAAK,aAAa,EAAO,CAAC,MAAM,WAAW,SAAS,EAAS,sBAAsB,EAAc,sBAAsB,EAAc,gBAAgB,cAAc,CAAC,CAAC,CAAC,OAAO,CAAY,EACZ,GAArM,IAAI,KAAK,aAAa,EAAO,CAAC,MAAM,WAAW,SAAS,EAAS,sBAAsB,EAAc,sBAAsB,EAAc,gBAAgB,cAAc,CAAC,CAAC,CAAC,OAAO,CAAgC,EAAE,GAAG,GAAW,EAAE,CAAC,EAAM,aAAa,CAAM,CAAC,EAAQ,EAAqBA,EAAY,KAAM,IAAQ,CAAI,MAAW,QAAiB,GAAW,QAAQ,GAAK,GAAG,CACjY,MAAM,OAAqB,EAAO,YAAY,EAAO,WAAW,SAAS,EAAE,IAAM,EAAS,MAAM,EAAO,WAAW,UAAU,CAAM,EAC/H,GAAU,EAAQ,CAAQ,EAC7B,EAAa,EAAS,OAAO,OAAO,CAAC,CAAC,EAEtC,EAAO,WAAW,KAAK,EACvB,EAAO,cAAc,IAAI,MAAM,wBAAwB,CAAC,IAAQ,EAAQ,CAAC,CAAC,EAAE,EAAa,CAAC,CAAC,EAAG,MAAa,CAAC,EAAQ,CAAC,CAAC,EAAE,EAAa,CAAC,CAAC,CAAE,QAAQ,CAAC,EAAW,QAAQ,EAAM,CAN8M,CAM7M,EAAE,CAAC,CAAC,EAO1K,GAAiBA,GAAa,EAAY,EAAc,IAAI,EAAQ,MAAc,IAAI,SAAS,EAAQ,IAAS,CAAC,IAAM,EAAU,KAAK,IAAI,EAAQ,MAAmB,CAAI,EAAY,EAAG,EAAQ,EAAW,KAAK,IAAI,EAAE,GAAW,EAAS,EAAW,MAAM,kCAAkC,CAAC,EAAQ,WAAW,EAAe,CAAa,CAAG,EAAE,EAAe,CAAE,CAAC,EAAI,CAAC,CAAC,EAAQ,EAAiBA,EAAY,EAAS,SAAS,CAAC,IAAI,EAAO,EAAO,YAAe,MAAM,GAE/c,GAAG,CAAC,EAAQ,GAAG,CAAC,EAAO,aAAa,QAAQ,eAAe,CAAE,OAAO,EAAM,CAAC,QAAQ,MAAM,4CAA4C,CAAK,CAAE,CAAK,EAAQ,MAAM,EAAqB,CAAM,GAE1L,EAAQ,CAAC,CAAC,EAAE,EAAa,CAAC,CAAC,EAAG,EAAE,GAAG,EAAE,CAAC,CAAoB,CAAC,EAC3D,OAEA,EAAiB,EAAE,EAAO,iBAAiB,yBAAyB,CAAgB,MAAY,CAAC,EAAO,oBAAoB,yBAAyB,CAAgB,CAAE,GAAI,CAAC,CAAgB,CAAC,EAC7L,IAAM,EAAiBA,EAAY,MAAM,EAAO,EAAO,EAAiB,OAAO,CAAC,GAAG,CAAC,GAAQ,CAAC,EAAO,CAAC,QAAQ,MAAM,+CAA+C,EAAE,MAAO,CAC3K,IAAM,EAAS,GAAkB,EAAU,MAAM,CAAC,UAAQ,EAAK,KAAK,CAAM,CAAC,EAAE,KAAK,GAAG,EAAS,CAC9F,IAAM,EAAS,EAAS,KAAK,eAAe,cAAc,MAAY,EAAU,WAAW,EAAS,MAAM,mBAAmB,QAAQ,GAAG,EAAQ,EAAM,GAAW,EAAS,UAAU,GAAS,EAAQ,EAAS,YAAY,IAAI,MAAM,GAAG,CAAC,CAAC,IAAI,GAAG,GAAS,EAAU,EAAS,YAAY,SAAS,OAAO,GAAS,EAAa,EAAS,YAAY,OAAO,GAAS,EAAM,EAAgB,EAAS,EAAS,UAAU,EACrZ,GAAG,OAAO,EAAO,gBAAiB,YAAY,GAAS,GAAW,EAAM,EAAE,CAAC,IAAM,EAAQ,CAAC,WAAS,QAAM,MAAM,CAAC,CAAC,UAAQ,YAAU,eAAa,QAAM,WAAW,EAAS,YAAY,SAAS,QAAQ,KAAK,cAAc,EAAS,YAAY,SAAS,aAAa,KAAK,WAC1Q,IAAI,EAAQ,YAAY,CAAS,CAAC,CAAC,EAAE,EAAO,eAAe,mBAAmB,CAAO,CAAE,CAEvF,EAAiC,CAAU,WAAkB,UAAQ,CAAC,CAAE,CAAC,GAAG,CAC5E,IAAG,MAD2F,EAAO,YAAY,mBAAmB,GAAmB,CAAC,SAAO,QAAQ,CAAC,CAAM,CAAC,CAAC,EAAA,EACvK,iBAAiB,KAAK,CAC/B,MAAM,EAAqB,CAAM,EACjC,IAAM,EAAc,GAAU,aAAa,SAAS,OAAa,EAAQ,EAAO,YAAY,SAAS,KAAK,GAAG,EAAE,KAAK,SAAS,CAAa,EAC1I,GAAG,EAAc,CAAC,IAAM,EAAW,MAAM,EAAO,YAAY,mBAAmB,EAAqB,CAAC,OAAO,CAAa,CAAC,EAAQ,EAAS,SAAS,GAAY,SAAS,qBAAqB,MAAM,EAAE,EAAE,GAAG,CAAC,MAAM,CAAQ,GAAG,EAAS,EAAE,CAExO,IAAM,EAAiB,GAF4O,GAAU,UAAU,GAEnO,GAAG,EAAiB,EAAS,CACjF,IAAM,EAAgB,IAAI,YAAY,6BAA6B,CAAC,OAAO,CAAC,WAAS,mBAAiB,UAAU,GAAS,KAAK,EAAE,CAAC,CAAC,EAAE,EAAO,cAAc,CAAe,CACxK,CAAC,CAAC,CAAC,MAAO,EAC2G,MAA9F,EAAO,YAAY,mBAAmB,GAA0B,CAAC,SAAO,QAAQ,CAAC,CAAM,CAAC,CAAC,EAAA,EAAiB,iBAAiB,KAAM,MAAM,EAAqB,CAAM,EAAQ,QAAQ,MAAM,sDAAsD,CAAG,OAAO,EAAM,CAAC,QAAQ,MAAM,4BAA4B,CAAK,CAAE,CAAC,EAAE,CAAC,EAAqB,CAAS,CAAC,EAAQ,EAAiBA,EAAY,MAAM,EAAO,EAAO,EAAS,IAAiB,CAAC,GAAG,CAAC,GAAQ,CAAC,GAAQ,OAAO,GAAW,SAAS,CAAC,QAAQ,MAAM,kDAAkD,EAAE,MAAO,CACxjB,GAAG,CACH,GAAG,GAAU,EAAE,CACf,MAAM,EAAiB,EAAO,EAAO,CAAc,EAAE,MAAO,CAC5D,IAAM,EAAc,GAAgB,aAAa,SAAS,OAC1D,GAD+E,EAAO,YAAY,SAAS,KAAK,GAAG,EAAE,KAAK,SAAS,CAAa,EAC7I,EAAc,CAAC,IAAM,EAAW,MAAM,EAAO,YAAY,mBAAmB,EAAqB,CAAC,OAAO,CAAa,CAAC,EAAQ,EAAS,SAAS,GAAY,SAAS,qBAAqB,MAAM,EAAE,EAChM,EAAuB,EAA0B,CAAa,EAGZ,EAAiB,GAApD,GADK,GAAgB,UAAU,IAEpD,GAAG,CAAC,MAAM,CAAQ,GAAG,EAAS,GAAM,EAAiB,GAAiC,EAAS,GAC1E,EAAE,CAAC,IAAM,EAAQ,uBAAuB,EAAS,kBAAkB,EAAgB,CAAO,EAAE,MAAO,CAexH,CAEA,IAAG,MADc,EAAO,YAAY,mBAAmB,EAAmB,CAAC,SAAO,MAAM,CAAC,CAAC,GAAG,EAAO,UAAQ,CAAC,CAAC,CAAC,EAAA,EACtG,iBAAiB,KAAK,CAAC,MAAM,EAAqB,CAAM,EAAE,EAAgB,EAAE,EAAE,MAAO,EACmC,MAA1G,EAAO,YAAY,mBAAmB,EAA0B,CAAC,SAAO,MAAM,CAAC,CAAC,GAAG,EAAO,UAAQ,CAAC,CAAC,CAAC,EAAA,EAAiB,iBAAiB,MAAM,MAAM,EAAqB,CAAM,EAAE,EAAgB,EAAE,GAAQ,QAAQ,MAAM,sDAAsD,CAAG,OAAO,EAAM,CAAC,QAAQ,MAAM,4BAA4B,CAAK,CAAE,CAAC,EAAE,CAAC,EAAqB,EAAU,CAAyB,CAAC,EAC9Z,EAAa,IAAe,KAC5B,EAAS,CAAC,CAAC,MAAM,SAAS,aAAa,IAAI,EAAE,CAAC,MAAM,SAAS,aAAa,QAAQ,EAAE,CAAC,MAAM,SAAS,aAAa,IAAI,EAAE,CAAC,MAAM,SAAS,aAAa,IAAI,CAAC,EAE/J,OAAoB,EAAKC,EAAU,CAAC,SAAS,EAAa,QAAQ,IAAI,EAAa,OAAoB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAM,gBAAgB,KAAK,GAAG,MAAM,MAAM,EAAE,SAAS,CAAc,EAAK,EAAqB,CAAC,gBAAgB,EAAM,cAAc,QAAQ,MAAM,EAAM,cAAc,QAAQ,sEAAsE,KAAK,aAAa,EAAM,aAAa,gBAAgB,EAAM,gBAAgB,kBAAkB,EAAM,kBAAkB,iBAAiB,EAAM,iBAAiB,YAAY,EAAM,YAAY,aAAa,EAAM,aAAa,UAAU,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,iBAAiB,CAAC,CAAC,EAAE,qBAAqB,EAAM,iBAAiB,SAAS,MAAM,oBAAoB,EAAM,iBAAiB,WAAW,OAAO,yBAAyB,EAAM,iBAAiB,WAAW,YAAY,uBAAuB,EAAM,iBAAiB,SAAS,OAAO,0BAA0B,EAAM,iBAAiB,SAAS,YAAY,wBAAwB,oBAAoB,wBAAwB,MAAM,OAAO,EAAM,mBAAmB,KAAK,SAAS,EAAM,mBAAmB,GAAG,cAAc,EAAM,mBAAmB,QAAQ,MAAM,CAAC,MAAM,OAAO,GAAG,EAAM,kBAAkB,QAAQ,CAAC,EAAE,aAAa,EAAM,kBAAkB,QAAQ,MAAM,WAAW,EAAM,kBAAkB,YAAY,OAAO,QAAQ,EAAM,kBAAkB,SAAS,KAAK,EAAE,oBAAiC,EAAK,IAAI,CAAC,MAAM,CAAC,GAAG,EAAI,EAAM,mBAAmB,EAAE,MAAM,EAAI,EAAM,oBAAoB,EAAE,OAAO,CAAC,EAAE,SAAS,iBAAiB,CAAC,EAAE,0BAAuC,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,WAAW,WAAW,IAAI,EAAM,cAAc,KAAK,CAAC,EAAE,SAAS,CAAc,EAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAI,EAAM,yBAAyB,EAAE,MAAM,EAAI,EAAM,0BAA0B,EAAE,WAAW,SAAS,SAAS,CAAC,EAAE,SAAS,EAAgB,EAAS,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,EAAS,EAAE,CAAC,cAA2B,EAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAI,EAAM,gCAAgC,EAAE,MAAM,EAAI,EAAM,iCAAiC,EAAE,eAAe,EAAM,cAAc,cAAc,cAAc,eAAe,OAAO,oBAAoB,EAAM,cAAc,cAAc,mBAAmB,WAAW,SAAS,SAAS,CAAC,EAAE,SAAS,EAAgB,EAAS,EAAE,CAAC,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,gBAAgB,IAAI,SAAS,KAAK,aAAa,CAAC,EAAE,kBAAkB,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC,EAAE,EAAM,gBAAgB,gBAA6B,EAAK,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,UAAU,GAAG,EAAM,gBAAgB,SAAS,aAAa,EAAE,KAAK,EAAM,gBAAgB,SAAS,aAAa,QAAQ,GAAG,EAAM,gBAAgB,SAAS,aAAa,oBAAoB,CAAC,CAAC,EAAe,EAAK,EAAqB,CAAC,gBAAgB,EAAM,cAAc,QAAQ,MAAM,EAAM,cAAc,QAAQ,sEAAsE,KAAK,aAAa,EAAM,aAAa,gBAAgB,EAAM,gBAAgB,kBAAkB,EAAM,kBAAkB,iBAAiB,EAAM,iBAAiB,YAAY,EAAM,YAAY,aAAa,EAAM,aAAa,UAAU,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,iBAAiB,CAAC,CAAC,EAAE,qBAAqB,EAAM,iBAAiB,SAAS,MAAM,oBAAoB,EAAM,iBAAiB,WAAW,OAAO,yBAAyB,EAAM,iBAAiB,WAAW,YAAY,uBAAuB,EAAM,iBAAiB,SAAS,OAAO,0BAA0B,EAAM,iBAAiB,SAAS,YAAY,wBAAwB,oBAAoB,wBAAwB,MAAM,OAAO,EAAM,mBAAmB,KAAK,SAAS,EAAM,mBAAmB,GAAG,cAAc,EAAM,mBAAmB,QAAQ,MAAM,CAAC,MAAM,OAAO,GAAG,EAAM,kBAAkB,QAAQ,CAAC,EAAE,aAAa,EAAM,kBAAkB,QAAQ,MAAM,WAAW,EAAM,kBAAkB,YAAY,OAAO,QAAQ,EAAM,kBAAkB,SAAS,KAAK,EAAE,oBAAiC,EAAK,IAAI,CAAC,MAAM,CAAC,GAAG,EAAI,EAAM,mBAAmB,EAAE,MAAM,EAAI,EAAM,oBAAoB,EAAE,OAAO,CAAC,EAAE,SAAS,iBAAiB,CAAC,EAAE,0BAAuC,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,WAAW,WAAW,IAAI,EAAM,cAAc,KAAK,CAAC,EAAE,SAAS,CAAc,EAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAI,EAAM,yBAAyB,EAAE,MAAM,EAAI,EAAM,0BAA0B,EAAE,WAAW,SAAS,SAAS,CAAC,EAAE,SAAS,EAAgB,EAAS,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,EAAS,EAAE,CAAC,cAA2B,EAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAI,EAAM,gCAAgC,EAAE,MAAM,EAAI,EAAM,iCAAiC,EAAE,eAAe,EAAM,cAAc,cAAc,cAAc,eAAe,OAAO,oBAAoB,EAAM,cAAc,cAAc,mBAAmB,WAAW,SAAS,SAAS,CAAC,EAAE,SAAS,EAAgB,EAAS,EAAE,CAAC,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,gBAAgB,IAAI,SAAsB,EAAK,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAM,gBAAgB,KAAK,KAAK,EAAE,SAAsB,EAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,GAAG,EAAI,EAAM,0BAA0B,EAAE,MAAM,EAAI,EAAM,2BAA2B,EAAE,YAAY,KAAK,EAAE,SAAS,QAAQ,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,GAAG,EAAI,EAAM,0BAA0B,EAAE,MAAM,EAAI,EAAM,2BAA2B,CAAC,EAAE,SAAS,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE,kBAAkB,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC,EAAE,EAAM,gBAAgB,gBAA6B,EAAK,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,UAAU,GAAG,EAAM,gBAAgB,SAAS,aAAa,EAAE,KAAK,EAAM,gBAAgB,SAAS,aAAa,QAAQ,GAAG,EAAM,gBAAgB,SAAS,aAAa,oBAAoB,CAAC,CAAC,EAAe,EAAK,EAAqB,CAAC,gBAAgB,EAAM,cAAc,QAAQ,MAAM,EAAM,cAAc,QAAQ,sEAAsE,KAAK,aAAa,EAAM,aAAa,gBAAgB,EAAM,gBAAgB,kBAAkB,EAAM,kBAAkB,iBAAiB,EAAM,iBAAiB,YAAY,EAAM,YAAY,aAAa,EAAM,aAAa,UAAU,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,iBAAiB,CAAC,CAAC,EAAE,qBAAqB,EAAM,iBAAiB,SAAS,MAAM,oBAAoB,EAAM,iBAAiB,WAAW,OAAO,yBAAyB,EAAM,iBAAiB,WAAW,YAAY,uBAAuB,EAAM,iBAAiB,SAAS,OAAO,0BAA0B,EAAM,iBAAiB,SAAS,YAAY,wBAAwB,oBAAoB,wBAAwB,MAAM,OAAO,EAAM,mBAAmB,KAAK,SAAS,EAAM,mBAAmB,GAAG,cAAc,EAAM,mBAAmB,QAAQ,MAAM,CAAC,MAAM,OAAO,GAAG,EAAM,kBAAkB,QAAQ,CAAC,EAAE,aAAa,EAAM,kBAAkB,QAAQ,MAAM,WAAW,EAAM,kBAAkB,YAAY,OAAO,QAAQ,EAAM,kBAAkB,SAAS,KAAK,EAAE,oBAAiC,EAAK,IAAI,CAAC,MAAM,CAAC,GAAG,EAAI,EAAM,mBAAmB,EAAE,MAAM,EAAI,EAAM,oBAAoB,EAAE,OAAO,CAAC,EAAE,SAAS,iBAAiB,CAAC,EAAE,0BAAuC,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,WAAW,WAAW,IAAI,EAAM,cAAc,KAAK,CAAC,EAAE,SAAS,CAAc,EAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAI,EAAM,6BAA6B,EAAE,MAAM,EAAI,EAAM,8BAA8B,EAAE,WAAW,SAAS,SAAS,CAAC,EAAE,SAAS,EAAgB,IAAI,KAAK,CAAC,CAAC,EAAe,EAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAI,EAAM,gCAAgC,EAAE,MAAM,EAAI,EAAM,iCAAiC,EAAE,eAAe,EAAM,cAAc,cAAc,cAAc,eAAe,OAAO,oBAAoB,EAAM,cAAc,cAAc,mBAAmB,WAAW,SAAS,SAAS,CAAC,EAAE,SAAS,EAAgB,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,gBAAgB,IAAI,SAAsB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAM,gBAAgB,KAAK,KAAK,EAAE,SAAS,CAAc,EAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,GAAG,EAAI,EAAM,0BAA0B,EAAE,MAAM,EAAI,EAAM,2BAA2B,EAAE,YAAY,KAAK,EAAE,SAAS,QAAQ,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,GAAG,EAAI,EAAM,0BAA0B,EAAE,MAAM,EAAI,EAAM,2BAA2B,CAAC,EAAE,SAAS,OAAO,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,GAAG,EAAI,EAAM,0BAA0B,EAAE,MAAM,EAAI,EAAM,2BAA2B,EAAE,YAAY,KAAK,EAAE,SAAS,OAAO,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,GAAG,EAAI,EAAM,0BAA0B,EAAE,MAAM,EAAI,EAAM,2BAA2B,CAAC,EAAE,SAAS,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE,kBAAkB,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC,EAAE,EAAM,gBAAgB,gBAA6B,EAAK,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,UAAU,GAAG,EAAM,gBAAgB,SAAS,aAAa,EAAE,KAAK,EAAM,gBAAgB,SAAS,aAAa,QAAQ,GAAG,EAAM,gBAAgB,SAAS,aAAa,oBAAoB,CAAC,CAAC,EAAe,EAAK,EAAqB,CAAC,gBAAgB,EAAM,cAAc,QAAQ,MAAM,EAAM,cAAc,QAAQ,sEAAsE,KAAK,aAAa,EAAM,aAAa,gBAAgB,EAAM,gBAAgB,kBAAkB,EAAM,kBAAkB,iBAAiB,EAAM,iBAAiB,YAAY,EAAM,YAAY,aAAa,EAAM,aAAa,UAAU,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,iBAAiB,CAAC,CAAC,EAAE,qBAAqB,EAAM,iBAAiB,SAAS,MAAM,oBAAoB,EAAM,iBAAiB,WAAW,OAAO,yBAAyB,EAAM,iBAAiB,WAAW,YAAY,uBAAuB,EAAM,iBAAiB,SAAS,OAAO,0BAA0B,EAAM,iBAAiB,SAAS,YAAY,wBAAwB,oBAAoB,wBAAwB,MAAM,OAAO,EAAM,mBAAmB,KAAK,SAAS,EAAM,mBAAmB,GAAG,cAAc,EAAM,mBAAmB,QAAQ,MAAM,CAAC,MAAM,OAAO,GAAG,EAAM,kBAAkB,QAAQ,CAAC,EAAE,aAAa,EAAM,kBAAkB,QAAQ,MAAM,WAAW,EAAM,kBAAkB,YAAY,OAAO,QAAQ,EAAM,kBAAkB,SAAS,KAAK,EAAE,oBAAiC,EAAK,IAAI,CAAC,MAAM,CAAC,GAAG,EAAI,EAAM,mBAAmB,EAAE,MAAM,EAAI,EAAM,oBAAoB,EAAE,OAAO,CAAC,EAAE,SAAS,iBAAiB,CAAC,EAAE,0BAAuC,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,WAAW,WAAW,IAAI,EAAM,cAAc,KAAK,CAAC,EAAE,SAAS,CAAc,EAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAI,EAAM,yBAAyB,EAAE,MAAM,EAAI,EAAM,0BAA0B,EAAE,WAAW,SAAS,SAAS,CAAC,EAAE,SAAS,EAAgB,IAAI,KAAK,CAAC,CAAC,EAAe,EAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAI,EAAM,gCAAgC,EAAE,MAAM,EAAI,EAAM,iCAAiC,EAAE,eAAe,EAAM,cAAc,cAAc,cAAc,eAAe,OAAO,oBAAoB,EAAM,cAAc,cAAc,mBAAmB,WAAW,SAAS,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,gBAAgB,IAAI,SAAsB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAM,gBAAgB,KAAK,KAAK,EAAE,SAAS,CAAc,EAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,GAAG,EAAI,EAAM,0BAA0B,EAAE,MAAM,EAAI,EAAM,2BAA2B,EAAE,YAAY,KAAK,EAAE,SAAS,OAAO,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,GAAG,EAAI,EAAM,0BAA0B,EAAE,MAAM,EAAI,EAAM,2BAA2B,CAAC,EAAE,SAAS,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAI,EAAM,0BAA0B,EAAE,MAAM,EAAI,EAAM,2BAA2B,CAAC,EAAE,SAAS,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE,kBAAkB,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAU,SAAS,EAAe,EAAK,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,QAAQ,OAAO,WAAW,SAAS,eAAe,SAAS,UAAU,MAAM,EAAE,SAAS,EAAM,mBAAmB,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAE,MAAM,OAAO,UAAU,YAAY,EAAE,SAAS,CAAC,GAA2B,EAAK,IAAI,CAAC,MAAM,CAAC,GAAG,EAAI,EAAM,wBAAwB,EAAE,MAAM,EAAI,EAAM,yBAAyB,EAAE,cAAc,EAAI,EAAM,6BAA6B,MAAM,CAAC,EAAE,SAAS,CAAY,CAAC,EAAE,EAAU,KAAK,CAAC,KAAK,GAAW,IAAqB,EAAMA,EAAU,CAAC,SAAS,CAAC,EAAM,GAAG,EAAM,gBAAgB,eAA4B,EAAK,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,UAAU,OAAO,EAAM,gBAAgB,KAAM,SAAS,EAAM,eAAe,IAAI,GAAG,aAAa,OAAO,EAAM,gBAAgB,KAAM,SAAS,EAAM,eAAe,IAAI,GAAG,UAAU,GAAG,EAAM,gBAAgB,SAAS,aAAa,EAAE,KAAK,EAAM,gBAAgB,SAAS,aAAa,QAAQ,GAAG,EAAM,gBAAgB,SAAS,aAAa,oBAAoB,CAAC,CAAC,EAAE,EAAM,GAAG,CAAC,EAAM,gBAAgB,eAA4B,EAAK,MAAM,CAAC,MAAM,CAAC,UAAU,OAAO,EAAM,gBAAgB,KAAM,SAAS,EAAM,eAAe,IAAI,EAAE,CAAC,CAAC,EAAE,KAAkB,EAAK,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,SAAS,SAAS,aAAa,OAAO,EAAM,kBAAkB,QAAS,SAAS,GAAG,EAAM,iBAAiB,OAAO,QAAQ,KAAK,EAAM,iBAAiB,OAAO,SAAS,KAAK,EAAM,iBAAiB,OAAO,YAAY,KAAK,EAAM,iBAAiB,OAAO,WAAW,IAAI,OAAO,EAAM,kBAAkB,QAAS,SAAS,EAAM,iBAAiB,OAAO,GAAG,EAAM,kBAAkB,QAAQ,EAAE,IAAI,WAAW,EAAM,kBAAkB,YAAY,OAAO,GAAG,EAAM,kBAAkB,QAAQ,CAAC,EAAE,QAAQ,OAAO,EAAM,kBAAkB,SAAU,SAAS,GAAG,EAAM,iBAAiB,QAAQ,IAAI,KAAK,EAAM,iBAAiB,QAAQ,MAAM,KAAK,EAAM,iBAAiB,QAAQ,OAAO,KAAK,EAAM,iBAAiB,QAAQ,KAAK,IAAI,EAAM,kBAAkB,SAAS,MAAM,QAAQ,MAAM,EAAE,SAAsB,EAAK,EAAqB,CAAC,gBAAgB,EAAM,cAAc,QAAQ,MAAM,EAAI,EAAU,wBAAwB,IAAI,EAAE,aAAa,EAAM,aAAa,gBAAgB,EAAM,gBAAgB,kBAAkB,EAAM,kBAAkB,iBAAiB,CAAC,GAAG,EAAM,iBAAiB,WAAW,aAAa,EAAE,YAAY,EAAM,YAAY,aAAa,EAAM,aAAuB,YAAU,qBAAqB,EAAM,iBAAiB,SAAS,MAAM,oBAAoB,EAAM,iBAAiB,WAAW,OAAO,yBAAyB,EAAM,iBAAiB,WAAW,YAAY,uBAAuB,EAAM,iBAAiB,SAAS,OAAO,0BAA0B,EAAM,iBAAiB,SAAS,YAAY,wBAAwB,oBAAoB,wBAAwB,MAAM,OAAO,EAAM,mBAAmB,KAAK,SAAS,EAAM,mBAAmB,GAAG,cAAc,EAAM,mBAAmB,QAAQ,OAAO,MAAM,MAAM,CAAC,MAAM,OAAO,WAAW,cAAc,GAAG,EAAa,QAAQ,IAAI,EAAa,OAAO,CAAC,QAAQ,OAAO,EAAM,kBAAkB,SAAU,SAAS,GAAG,EAAM,iBAAiB,QAAQ,IAAI,KAAK,EAAM,iBAAiB,QAAQ,MAAM,KAAK,EAAM,iBAAiB,QAAQ,OAAO,KAAK,EAAM,iBAAiB,QAAQ,KAAK,IAAI,EAAM,kBAAkB,SAAS,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,oBAAiC,EAAK,IAAI,CAAC,MAAM,CAAC,GAAG,EAAI,EAAM,mBAAmB,EAAE,MAAM,EAAI,EAAM,oBAAoB,EAAE,OAAO,EAAE,cAAc,EAAM,cAAc,eAAe,MAAM,EAAE,SAAS,EAAU,YAAY,QAAQ,KAAK,CAAC,EAAE,0BAAuC,EAAK,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,WAAW,WAAW,IAAI,EAAM,cAAc,KAAK,CAAC,EAAE,cAAc,CAAC,GAAG,CAAC,EAAU,OAAO,KACzoe,IAAI,EAAM,EAAa,EAAgB,EAAU,uBACjD,EAAM,EAAU,sBAAsB,sBAAsB,OAAO,EAAa,EAAU,aAAa,gBAAgB,OACtH,EAAa,EAAU,sBAAsB,sBAAsB,eACpE,EAAM,EAAU,aAAa,OAAO,QAAQ,EAAU,MAAM,mBAAmB,OAAO,EAAa,EAAU,aAAa,OAAO,cAAc,EAAU,MAAM,mBAAmB,aAAa,EAAa,EAAU,aAAa,gBAAgB,QAAQ,EAAU,MAAM,4BAA4B,QAC9P,IAAM,EAA/B,EAAU,YAAY,GAA8B,MAAM,GAAG,CAAC,CAAC,IAAI,GAAwB,EAAO,WAAW,SAAS,MAAM,CAAC,UAAQ,EAAK,SAAS,MAAM,KAAK,GAAM,EAAK,KAAK,GAAG,SAAS,CAAU,CAAC,CAAC,CAAC,EAAE,KAAA,EAA4C,UAAU,MAAM,KAAK,GAAM,EAAK,KAAK,GAAG,SAAS,CAAU,CAAC,CAAC,EAAE,KA8BpU,IAAM,EAAgB,GAAc,WAAW,CAAY,EAAE,WAAW,CAAK,EAAQ,EAAW,GAAO,IAAI,OAAoB,EAAMA,EAAU,CAAC,SAAS,CAAc,EAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAI,EAAM,EAAgB,8BAA8B,yBAAyB,EAAE,MAAM,EAAgB,EAAM,cAAc,OAAO,UAAU,EAAM,cAAc,OAAO,MAAM,WAAW,SAAS,SAAS,CAAC,EAAE,SAAS,EAAgB,EAAW,CAAY,CAAC,CAAC,EAAE,GAA8B,EAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAI,EAAM,gCAAgC,EAAE,MAAM,EAAI,EAAM,iCAAiC,EAAE,eAAe,eAAe,oBAAoB,EAAM,cAAc,cAAc,mBAAmB,WAAW,SAAS,SAAS,CAAC,EAAE,SAAS,EAAgB,EAAa,CAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,EAAA,CAAG,CAAC,CAAC,EAAE,gBAAgB,GAAG,EAAU,UAAU,IAAI,SAAsB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,EAAM,gBAAgB,KAAK,KAAK,EAAE,SAAS,CAAC,EAAU,YAAY,gBAAgB,OAAO,GAAQ,EAAO,OAAO,OAAO,CAAC,CAAC,KAAK,EAAO,IAAqB,EAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,SAAS,CAAc,EAAM,OAAO,CAAC,MAAM,CAAC,GAAG,EAAI,EAAM,0BAA0B,EAAE,MAAM,EAAI,EAAM,2BAA2B,EAAE,YAAY,MAAM,cAAc,EAAI,EAAM,gCAAgC,MAAM,CAAC,EAAE,SAAS,CAAC,EAAO,KAAK,GAAG,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,GAAG,EAAI,EAAM,0BAA0B,EAAE,MAAM,EAAI,EAAM,2BAA2B,EAAE,cAAc,EAAI,EAAM,gCAAgC,MAAM,CAAC,EAAE,SAAS,EAAO,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,EAAO,KAAK,GAAG,GAAO,CAAC,EAAE,EAAU,YAAY,KAAK,EAAK,IAAqB,EAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,SAAS,CAAc,EAAM,OAAO,CAAC,MAAM,CAAC,GAAG,EAAM,kBAAkB,iBAAiB,EAAI,EAAM,4BAA4B,EAAE,EAAI,EAAM,0BAA0B,EAAE,MAAM,EAAM,kBAAkB,iBAAiB,EAAI,EAAM,6BAA6B,EAAE,EAAI,EAAM,2BAA2B,EAAE,YAAY,MAAM,cAAc,EAAM,kBAAkB,iBAAiB,EAAI,EAAM,kCAAkC,MAAM,EAAE,EAAI,EAAM,gCAAgC,MAAM,CAAC,EAAE,SAAS,CAAC,EAAK,IAAI,GAAG,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,GAAG,EAAM,kBAAkB,iBAAiB,EAAI,EAAM,4BAA4B,EAAE,EAAI,EAAM,0BAA0B,EAAE,MAAM,EAAM,kBAAkB,iBAAiB,EAAI,EAAM,6BAA6B,EAAE,EAAI,EAAM,2BAA2B,EAAE,cAAc,EAAM,kBAAkB,iBAAiB,EAAI,EAAM,kCAAkC,MAAM,EAAE,EAAI,EAAM,gCAAgC,MAAM,CAAC,EAAE,SAAS,EAAK,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAK,IAAI,GAAG,GAAO,CAAC,EAAE,EAAU,uBAAuB,aAAa,MAAmB,EAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAI,EAAM,0BAA0B,EAAE,MAAM,EAAI,EAAM,2BAA2B,EAAE,cAAc,EAAI,EAAM,oCAAoC,MAAM,CAAC,EAAE,SAAS,EAAU,sBAAsB,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,EAAiB,EAAK,GAAG,EAAU,EAAE,EAAE,kBAAkB,EAAiB,EAAK,GAAG,EAAU,GAAG,EAAU,SAAS,EAAE,CAAS,EAAE,uBAAuB,EAAiB,EAAK,GAAG,EAAU,GAAG,EAAU,SAAS,EAAE,CAAS,CAAC,CAAC,CAAC,EAAE,EAAU,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAC2iR,SAAS,EAAqB,CAAC,kBAAgB,QAAM,uBAAqB,sBAAoB,2BAAyB,yBAAuB,4BAA0B,SAAO,WAAS,gBAAc,sBAAoB,4BAA0B,kBAAgB,WAAS,SAAM,CAAC,EAAE,WAAS,gBAAc,qBAAmB,eAAa,kBAAgB,oBAAkB,mBAAiB,cAAY,eAAa,YAAU,0BAAwB,oBAAoB,2BAAwB,MAAM,UAAQ,CAAC,GAAK,CAAC,EAAU,GAAcH,EAAS,EAAK,EAAO,CAAC,EAAe,GAAmBA,EAAS,EAAK,EAAE,MAAc,EASjyY,SAT+zY,CAAC,IAAM,EAAQ,EAC12Y,EAAc,GAAS,SAAS,OAAO,GAAG,CAAC,EAAc,OAAO,IAAM,EAAI,MAAM,EAAmB,CAAa,EAChH,EAAoB,GAAS,UAAU,EAE1C,CAAC,MAAM,CAAG,GAAG,EAAI,GAA0B,EAAI,EAGlD,EAAkB,EAAI,GAEhB,EAAkB,EAAK,CAAG,EAAE,CAAc,CAAE,EAAE,CAAC,CAAC,EAAE,IAAM,EAAmBE,EAAY,KAAM,IAAe,CAAC,GAAG,CAAe,EAAO,YAAY,SAAS,KAAK,GAAG,EAAE,KAAK,SAAS,CAAa,EAEtM,IAAM,EAAW,MAAM,EAAO,YAAY,mBAAmB,EAAqB,CAAC,OAAO,CAAa,CAAC,EAExG,OAFyH,SAAS,GAAY,SAAS,qBAAqB,MAAM,EAEpK,CAAE,MAAa,CAAC,MAAO,EAAE,CAAC,EAAE,CAAC,CAAC,EAAQ,EAAiB,GAAG,CACpE,EAAE,OAAO,QAAQ,QAAQ,GAAG,EAAa,EAAI,CAAG,EAAQ,MAAqB,CAAC,EAAa,EAAK,CAAE,EAChG,EAAW,GAAa,SAAS,GAAW,aAAa,SAAS,OAAO,GAAG,EAAO,SAAS,OAAO,GAAG,EAAY,UAAU,KAAK,EAAU,YAAY,QAAQ,SAAS,KAAW,EAAY,GAAc,QAAQ,OAAO,GAAc,OAAO,KAAK,KAAK,GAAc,QAAQ,OAAO,GAAc,OAAO,MAAM,EAAE,GAAG,GAAc,OAAO,IAAsB,OAAO,GAAc,QAAS,SAAS,GAAG,EAAa,OAAO,UAAa,EAAa,OAAO,WAAc,EAAa,OAAO,cAAiB,EAAa,OAAO,aAAe,GAAG,GAAc,QAAQ,IAAM,IAAM,GAAO,CAAC,OAAK,EAAE,YAAuB,EAAM,MAAM,CAAC,MAAM,EAAK,OAAO,EAAK,QAAQ,YAAY,KAAK,OAAO,MAAM,6BAA6B,MAAM,CAAC,QAAQ,OAAO,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,OAAO,eAAe,YAAY,EAAO,cAAc,OAAO,CAAC,EAAe,EAAK,OAAO,CAAC,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,IAAI,OAAO,eAAe,YAAY,EAAO,cAAc,OAAO,CAAC,CAAC,CAAC,CAAC,EAAQ,EAA0B,EAAK,SAAS,CAAC,QAAQ,EAAS,MAAM,CAAC,GAAG,GAAmB,QAAQ,CAAC,EAAE,WAAW,GAAmB,IAAI,UAAU,MAAM,GAAmB,MAAM,UAAU,OAAO,UAAU,QAAQ,MAAM,aAAa,OAAO,GAAmB,QAAS,SAAS,GAAG,EAAkB,OAAO,QAAQ,KAAK,EAAkB,OAAO,SAAS,KAAK,EAAkB,OAAO,YAAY,KAAK,EAAkB,OAAO,WAAW,IAAI,OAAO,GAAmB,QAAS,SAAS,EAAkB,OAAO,OAAO,QAAQ,OAAO,WAAW,SAAS,eAAe,SAAS,WAAW,EAAE,MAAM,OAAO,OAAO,MAAM,EAAE,aAAa,GAAG,EAAE,cAAc,MAAM,WAAW,GAAmB,SAAS,UAAU,aAAa,GAAG,EAAE,cAAc,MAAM,WAAW,GAAmB,IAAI,UAAU,SAAS,GAAmB,WAAW,SAAsB,EAAK,MAAM,CAAC,IAAI,GAAmB,YAAY,IAAI,SAAS,MAAM,CAAC,MAAM,GAAmB,SAAS,OAAO,GAAmB,QAAQ,CAAC,CAAC,EAAe,EAAK,EAAM,CAAC,KAAK,GAAmB,UAAU,EAAE,OAAO,GAAmB,YAAY,CAAC,CAAC,CAAC,CAAC,EAAQ,GAAe,CAAC,QAAQ,OAAO,WAAW,UAAU,MAAM,OAAO,UAAU,aAAa,SAAS,SAAS,OAAO,EAAW,UAAU,UAAU,aAAa,OAAO,GAAkB,QAAS,SAAS,GAAG,EAAiB,OAAO,QAAQ,KAAK,EAAiB,OAAO,SAAS,KAAK,EAAiB,OAAO,YAAY,KAAK,EAAiB,OAAO,WAAW,IAAI,GAAG,GAAkB,QAAQ,EAAE,IAAI,GAAG,GAAkB,QAAQ,CAAC,EAAE,QAAQ,OAAO,GAAkB,SAAU,SAAS,GAAG,EAAiB,QAAQ,IAAI,KAAK,EAAiB,QAAQ,MAAM,KAAK,EAAiB,QAAQ,OAAO,KAAK,EAAiB,QAAQ,KAAK,IAAI,GAAkB,SAAS,MAAM,WAAW,cAAc,GAAG,EAAK,EAAqB,GAAsC,SAAsC,GAAkB,cAAsB,IAAM,GAAW,CAAC,SAAS,WAAW,MAAM,GAAc,OAAO,IAAI,OAAO,EAAY,WAAW,EAAE,WAAW,GAAc,YAAY,UAAU,aAAa,GAAc,QAAQ,MAAM,GAAG,GAAc,QAAQ,CAAC,EAAE,SAAS,QAAQ,EAAQ,EAAgB,CAAC,MAAM,OAAO,OAAO,OAAO,UAAU,GAAc,OAAO,MAAM,UAAU,QAAQ,WAAW,yCAAyC,GAAG,GAAW,GAAc,QAAQ,QAAQ,CAAC,UAAU,SAAS,EAAa,UAAU,EAAE,EAAE,GAAG,GAAW,GAAc,QAAQ,WAAW,CAAC,QAAQ,EAAa,OAAO,CAAC,EAAQ,EAAW,CAAC,GAAG,GAAc,MAAM,CAAC,EAAE,MAAM,EAAU,GAAc,WAAW,GAAc,MAAM,OAAO,EAAE,WAAW,kBAAkB,cAAc,GAAc,eAAe,MAAM,EAC1gH,OAAoB,EAAK,MAAM,CAAC,MAAM,GAAe,aAAa,EAAiB,aAAa,EAAiB,QAD66G,GAAG,CAC7mH,GAAY,CAAC,EAAE,OAAO,QAAQ,QAAQ,IAAG,EAAO,SAAS,KAAK,EAAY,EAAuI,SAAsB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,IAAI,GAAkB,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,SAAS,CAAC,GAAiB,GAAoB,EAAK,MAAM,CAAC,MAAM,GAAW,SAAsB,EAAK,MAAM,CAAC,IAAI,EAAM,MAAM,EAAgB,QAAQ,GAAG,CAAC,EAAE,cAAc,MAAM,QAAQ,MAAO,CAAC,CAAC,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,KAAK,EAAE,SAAS,EAAE,IAAI,GAAkB,KAAK,EAAE,QAAQ,GAAkB,eAAe,KAAK,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,eAAe,gBAAgB,WAAW,aAAa,MAAM,OAAO,IAAI,MAAM,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,SAAS,IAAI,GAAkB,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,EAAW,SAAS,OAAO,GAAsB,SAAS,EAAiC,EAAM,aAAa,EAAoB,CAAC,MAAM,CAAU,CAAC,CAAC,CAAC,EAAE,CAAQ,CAAC,CAAC,EAAE,GAAmB,WAAW,MAAM,EAAa,CAAyB,CAAC,CAAC,EAAe,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,SAAS,eAAe,gBAAgB,IAAI,OAAO,UAAU,MAAM,EAAE,SAAS,CAAc,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,SAAS,gBAAgB,GAAiB,WAAW,aAAa,cAAc,aAAa,OAAO,GAAiB,WAAW,iBAAkB,SAAS,GAAG,EAAgB,UAAU,gBAAgB,QAAQ,KAAK,EAAgB,UAAU,gBAAgB,SAAS,KAAK,EAAgB,UAAU,gBAAgB,YAAY,KAAK,EAAgB,UAAU,gBAAgB,WAAW,IAAI,OAAO,GAAiB,WAAW,iBAAkB,SAAS,EAAgB,UAAU,gBAAgB,MAAM,QAAQ,GAAiB,WAAW,SAAS,MAAM,GAAG,GAAiB,WAAW,iBAAiB,CAAC,YAAY,EAAE,YAAY,QAAQ,YAAY,SAAS,EAAE,WAAW,CAAC,EAAE,SAAS,CAAc,EAAK,SAAS,CAAC,QAAQ,EAAmB,MAAM,CAAC,GAAG,GAAiB,SAAS,QAAQ,CAAC,EAAE,WAAW,GAAiB,SAAS,QAAQ,UAAU,MAAM,GAAiB,SAAS,OAAO,UAAU,OAAO,UAAU,QAAQ,GAAiB,SAAS,SAAS,UAAU,aAAa,OAAO,GAAiB,SAAS,QAAS,SAAS,GAAG,EAAgB,QAAQ,OAAO,QAAQ,KAAK,EAAgB,QAAQ,OAAO,SAAS,KAAK,EAAgB,QAAQ,OAAO,YAAY,KAAK,EAAgB,QAAQ,OAAO,WAAW,IAAI,OAAO,GAAiB,SAAS,QAAS,SAAS,EAAgB,QAAQ,OAAO,MAAM,QAAQ,OAAO,WAAW,SAAS,eAAe,QAAQ,EAAE,aAAa,GAAG,CAAC,EAAE,cAAc,MAAM,WAAW,GAAiB,SAAS,aAAa,SAAU,EAAE,aAAa,GAAG,CAAC,EAAE,cAAc,MAAM,WAAW,GAAiB,SAAS,QAAQ,SAAU,EAAE,SAAS,GAAiB,SAAS,WAAW,SAAsB,EAAK,MAAM,CAAC,IAAI,EAAgB,QAAQ,gBAAgB,IAAI,QAAQ,MAAM,CAAC,MAAM,EAAgB,QAAQ,UAAU,EAAE,OAAO,EAAgB,QAAQ,UAAU,CAAC,CAAC,CAAC,EAAe,EAAK,GAAU,CAAC,KAAK,GAAiB,SAAS,UAAU,EAAE,OAAO,GAAiB,SAAS,YAAY,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,MAAM,CAAC,OAAO,QAAQ,MAAM,GAAiB,WAAW,QAAQ,UAAU,GAAG,GAAiB,WAAW,MAAM,CAAC,CAAC,EAAE,SAAS,CAAe,CAAC,EAAe,EAAK,SAAS,CAAC,QAAQ,EAAe,IAAA,GAAU,EAAc,SAAS,EAAe,MAAM,CAAC,GAAG,GAAiB,SAAS,QAAQ,CAAC,EAAE,WAAW,EAAe,GAAiB,SAAS,eAAe,GAAiB,SAAS,QAAQ,UAAU,MAAM,EAAe,GAAiB,SAAS,mBAAmB,GAAiB,SAAS,OAAO,UAAU,OAAO,EAAe,cAAc,UAAU,QAAQ,GAAiB,SAAS,SAAS,UAAU,aAAa,OAAO,GAAiB,SAAS,QAAS,SAAS,GAAG,EAAgB,QAAQ,OAAO,QAAQ,KAAK,EAAgB,QAAQ,OAAO,SAAS,KAAK,EAAgB,QAAQ,OAAO,YAAY,KAAK,EAAgB,QAAQ,OAAO,WAAW,IAAI,OAAO,GAAiB,SAAS,QAAS,SAAS,EAAgB,QAAQ,OAAO,MAAM,QAAQ,OAAO,WAAW,SAAS,eAAe,QAAQ,EAAE,aAAa,GAAG,CAAE,EAAe,GAAiB,SAAS,eAAe,EAAE,cAAc,MAAM,WAAW,GAAiB,SAAS,aAAa,SAAW,EAAE,aAAa,GAAG,CAAE,EAAe,GAAiB,SAAS,eAAe,EAAE,cAAc,MAAM,WAAW,GAAiB,SAAS,QAAQ,SAAW,EAAE,SAAS,GAAiB,SAAS,WAAW,SAAsB,EAAK,MAAM,CAAC,IAAI,EAAgB,QAAQ,eAAe,IAAI,OAAO,MAAM,CAAC,MAAM,EAAgB,QAAQ,UAAU,EAAE,OAAO,EAAgB,QAAQ,UAAU,CAAC,CAAC,CAAC,EAAe,EAAK,GAAS,CAAC,KAAK,GAAiB,SAAS,UAAU,EAAE,OAAO,GAAiB,SAAS,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAmB,WAAW,SAAS,EAAa,CAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,+BAlN/6J,IAAgE,IAAiE,IAAoC,KAA4N,IAA6I,IAAuH,IAA6H,IAA0I,EACv9B,GAA2B,GAAc,CAC/C,GAAG,CAAC,EAAa,MAAO,GAAM,GAAG,EAAgC,SAAS,CAAY,EAAG,MAAO,GAAM,GAAG,CAEzG,OAF0H,IAAI,KAAK,aAAa,IAAA,GAAU,CAAC,MAAM,WAAW,SAAS,EAAa,gBAAgB,cAAc,CAAC,CAAC,CAAC,OAAO,CAC7M,CAAC,CAAC,QAAQ,aAAa,EAChC,IAAI,CAAa,MAAS,CAAC,MAAO,EAAM,CAAC,EA6LknG,EAAmB,aAAa,CAAC,iBAAiB,CAAC,WAAW,cAAc,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,CAAC,YAAY,EAAE,YAAY,QAAQ,YAAY,aAAa,CAAC,EAAE,YAAY,CAAC,QAAQ,GAAM,SAAS,EAAE,EAAE,aAAa,CAAC,QAAQ,GAAK,KAAK,OAAO,MAAM,IAAI,OAAO,EAAE,WAAW,UAAU,OAAO,CAAC,YAAY,EAAE,YAAY,QAAQ,YAAY,aAAa,EAAE,MAAM,MAAM,MAAM,OAAO,UAAU,KAAK,QAAQ,GAAG,EAAE,aAAa,CAAC,KAAK,CAAC,OAAO,QAAQ,KAAK,GAAG,OAAO,GAAG,EAAE,MAAM,UAAU,WAAW,SAAS,EAAE,eAAe,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,QAAQ,KAAK,GAAG,OAAO,GAAG,EAAE,WAAW,UAAU,UAAU,CAAC,OAAO,QAAQ,KAAK,GAAG,OAAO,GAAG,EAAE,WAAW,SAAS,EAAE,oBAAoB,CAAC,KAAK,CAAC,OAAO,QAAQ,KAAK,GAAG,OAAO,GAAG,EAAE,MAAM,SAAS,EAAE,gBAAgB,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,SAAS,CAAC,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,SAAS,CAAC,KAAK,CAAC,OAAO,QAAQ,KAAK,GAAG,OAAO,GAAG,EAAE,OAAO,CAAC,KAAK,EAAY,MAAM,aAAa,OAAO,MAAM,QAAQ,EAAE,YAAY,CAAC,KAAK,EAAY,MAAM,aAAa,cAAc,MAAM,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,UAAU,aAAa,KAAK,EAAE,gBAAgB,CAAC,KAAK,EAAY,aAAa,MAAM,SAAS,aAAa,KAAK,EAAE,gBAAgB,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,CAAC,YAAY,EAAE,YAAY,QAAQ,YAAY,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,MAAM,UAAU,SAAS,CAAC,SAAS,CAAC,KAAK,EAAY,cAAc,MAAM,OAAO,QAAQ,CAAC,UAAU,QAAQ,EAAE,aAAa,CAAC,UAAU,QAAQ,EAAE,aAAa,SAAS,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,EAAE,IAAI,GAAG,IAAI,EAAE,KAAK,GAAG,eAAe,GAAK,QAAQ,CAAC,cAAY,IAAW,SAAS,EAAE,eAAe,CAAC,KAAK,EAAY,MAAM,MAAM,OAAO,QAAQ,CAAC,cAAY,IAAW,QAAQ,EAAE,gBAAgB,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,QAAQ,CAAC,cAAY,IAAW,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAY,MAAM,aAAa,OAAO,MAAM,OAAO,EAAE,mBAAmB,CAAC,KAAK,EAAY,MAAM,aAAa,UAAU,MAAM,sBAAsB,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,KAAK,KAAK,EAAE,eAAe,EAAI,EAAE,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,UAAU,aAAa,KAAK,EAAE,OAAO,CAAC,KAAK,EAAY,MAAM,aAAa,UAAU,MAAM,IAAI,EAAE,YAAY,CAAC,KAAK,EAAY,MAAM,aAAa,UAAU,MAAM,UAAU,EAAE,eAAe,CAAC,KAAK,EAAY,MAAM,aAAa,UAAU,MAAM,aAAa,EAAE,OAAO,CAAC,KAAK,EAAY,aAAa,MAAM,SAAS,aAAa,KAAK,EAAE,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,CAAC,YAAY,EAAE,YAAY,QAAQ,YAAY,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,QAAQ,KAAK,GAAG,OAAO,GAAG,EAAE,MAAM,UAAU,SAAS,CAAC,OAAO,QAAQ,KAAK,GAAG,OAAO,GAAG,EAAE,UAAU,SAAS,EAAE,aAAa,CAAC,KAAK,CAAC,OAAO,QAAQ,KAAK,GAAG,OAAO,GAAG,EAAE,MAAM,UAAU,cAAc,GAAK,mBAAmB,SAAS,EAAE,OAAO,CAAC,WAAW,GAAK,aAAa,GAAM,aAAa,cAAc,aAAa,KAAK,EACjoM,iBAAiB,GAAM,WAAW,EAAI,EAAE,kBAAkB,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,SAAS,CAAC,SAAS,CAAC,KAAK,EAAY,KAAK,MAAM,WAAW,QAAQ,CAAC,MAAM,QAAQ,EAAE,aAAa,QAAQ,EAAE,SAAS,CAAC,KAAK,EAAY,cAAc,MAAM,OAAO,QAAQ,CAAC,UAAU,QAAQ,EAAE,aAAa,CAAC,UAAU,QAAQ,EAAE,aAAa,SAAS,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,EAAE,IAAI,GAAG,IAAI,EAAE,KAAK,GAAG,eAAe,GAAK,QAAQ,CAAC,cAAY,IAAW,SAAS,EAAE,YAAY,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,QAAQ,CAAC,cAAY,IAAW,QAAQ,EAAE,KAAK,CAAC,KAAK,EAAY,MAAM,aAAa,UAAU,MAAM,OAAO,QAAQ,CAAC,cAAY,IAAW,QAAQ,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,KAAK,KAAK,EAAE,eAAe,EAAI,EAAE,GAAG,CAAC,KAAK,EAAY,MAAM,aAAa,UAAU,MAAM,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAY,MAAM,aAAa,UAAU,MAAM,UAAU,EAAE,OAAO,CAAC,KAAK,EAAY,aAAa,MAAM,SAAS,aAAa,MAAM,EAAE,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,CAAC,YAAY,EAAE,YAAY,QAAQ,YAAY,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,EAAoB,EAAmB,CAAC,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,OAAO,aAAa,GAAM,aAAa,MAAM,cAAc,IAAI,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,OAAO,aAAa,GAAG,YAAY,QAAQ,YAAY,mIAAmI,QAAQ,CAAC,aAAW,CAAC,CAAO,CAAC,CAAC,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,QAAQ,aAAa,GAAK,aAAa,OAAO,cAAc,MAAM,EAAE,KAAK,CAAC,KAAK,EAAY,cAAc,MAAM,OAAO,QAAQ,CAAC,OAAO,KAAK,EAAE,aAAa,OAAO,aAAa,CAAC,OAAO,KAAK,EAAE,QAAQ,CAAC,aAAW,CAAC,CAAO,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,IAAI,IAAI,EAAE,IAAI,IAAI,KAAK,KAAK,KAAK,EAAE,eAAe,GAAK,QAAQ,CAAC,aAAW,CAAC,CAAO,EAAE,OAAO,CAAC,KAAK,EAAY,aAAa,MAAM,SAAS,aAAa,MAAM,QAAQ,CAAC,aAAW,CAAC,CAAO,EAAE,WAAW,CAAC,KAAK,EAAY,MAAM,MAAM,KAAK,aAAa,UAAU,QAAQ,CAAC,aAAW,CAAC,CAAO,EAAE,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,CAAC,YAAY,EAAE,YAAY,QAAQ,YAAY,eAAe,EAAE,QAAQ,CAAC,aAAW,CAAC,CAAO,EAAE,MAAM,CAAC,KAAK,EAAY,KAAK,MAAM,QAAQ,QAAQ,CAAC,MAAM,MAAM,KAAK,EAAE,aAAa,MAAM,QAAQ,CAAC,aAAW,CAAC,CAAO,EAAE,MAAM,CAAC,KAAK,EAAY,KAAK,MAAM,aAAa,QAAQ,CAAC,OAAO,OAAO,SAAS,EAAE,aAAa,OAAO,QAAQ,CAAC,aAAW,CAAC,CAAO,EAAE,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,KAAK,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,eAAe,GAAK,QAAQ,CAAC,WAAS,IAAQ,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,MAAM,UAAU,aAAa,IAAI,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,QAAQ,CAAC,WAAS,IAAQ,SAAS,CAAC,CAAC,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,SAAS,CAAC,KAAK,CAAC,KAAK,EAAY,KAAK,SAAS,WAAW,MAAM,MAAM,EAAE,MAAM,CAAC,KAAK,EAAY,MAAM,aAAa,OAAO,MAAM,OAAO,EAAE,WAAW,CAAC,KAAK,EAAY,MAAM,aAAa,OAAO,MAAM,OAAO,EAAE,cAAc,CAAC,KAAK,EAAY,KAAK,MAAM,YAAY,QAAQ,CAAC,OAAO,YAAY,YAAY,YAAY,EAAE,aAAa,MAAM,CAAC,CAAC,EAAE,eAAe,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,SAAS,CAAC,UAAU,CAAC,KAAK,EAAY,KAAK,SAAS,WAAW,MAAM,YAAY,EAAE,WAAW,CAAC,KAAK,EAAY,MAAM,aAAa,OAAO,MAAM,aAAa,EAAE,eAAe,CAAC,KAAK,EAAY,KAAK,MAAM,YAAY,QAAQ,CAAC,OAAO,YAAY,YAAY,YAAY,EAAE,aAAa,MAAM,EAAE,UAAU,CAAC,KAAK,EAAY,KAAK,SAAS,WAAW,MAAM,YAAY,EAAE,WAAW,CAAC,KAAK,EAAY,MAAM,aAAa,OAAO,MAAM,aAAa,EAAE,eAAe,CAAC,KAAK,EAAY,KAAK,MAAM,YAAY,QAAQ,CAAC,OAAO,YAAY,YAAY,YAAY,EAAE,aAAa,MAAM,EAAE,IAAI,CAAC,KAAK,EAAY,OAAO,MAAM,MAAM,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,iBAAiB,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAY,QAAQ,MAAM,YAAY,aAAa,GAAM,aAAa,MAAM,cAAc,KAAK,YAAY,sDAAsD,EAAE,UAAU,CAAC,KAAK,EAAY,KAAK,SAAS,WAAW,MAAM,aAAa,QAAQ,CAAC,sBAAoB,CAAC,CAAgB,EAAE,WAAW,CAAC,KAAK,EAAY,MAAM,aAAa,OAAO,MAAM,cAAc,QAAQ,CAAC,sBAAoB,CAAC,CAAgB,EAAE,eAAe,CAAC,KAAK,EAAY,KAAK,MAAM,YAAY,QAAQ,CAAC,OAAO,YAAY,YAAY,YAAY,EAAE,aAAa,OAAO,QAAQ,CAAC,sBAAoB,CAAC,CAAgB,EAAE,UAAU,CAAC,KAAK,EAAY,KAAK,SAAS,WAAW,MAAM,aAAa,QAAQ,CAAC,sBAAoB,CAAC,CAAgB,EAAE,WAAW,CAAC,KAAK,EAAY,MAAM,aAAa,OAAO,MAAM,cAAc,QAAQ,CAAC,sBAAoB,CAAC,CAAgB,EAAE,eAAe,CAAC,KAAK,EAAY,KAAK,MAAM,YAAY,QAAQ,CAAC,OAAO,YAAY,YAAY,YAAY,EAAE,aAAa,OAAO,QAAQ,CAAC,sBAAoB,CAAC,CAAgB,EAAE,IAAI,CAAC,KAAK,EAAY,OAAO,MAAM,MAAM,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,KAAK,KAAK,EAAE,OAAO,GAAO,CAAC,EAAM,kBAAkB,gBAAgB,CAAC,CAAC,EAAE,oBAAoB,CAAC,KAAK,EAAY,OAAO,MAAM,eAAe,SAAS,CAAC,KAAK,CAAC,KAAK,EAAY,KAAK,SAAS,WAAW,MAAM,MAAM,EAAE,MAAM,CAAC,KAAK,EAAY,MAAM,aAAa,OAAO,MAAM,OAAO,EAAE,cAAc,CAAC,KAAK,EAAY,KAAK,MAAM,YAAY,QAAQ,CAAC,OAAO,YAAY,YAAY,YAAY,EAAE,aAAa,MAAM,CAAC,CAAC,EAAE,gBAAgB,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,SAAS,CAAC,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,SAAS,CAAC,KAAK,CAAC,KAAK,EAAY,KAAK,SAAS,WAAW,MAAM,MAAM,EAAE,OAAO,CAAC,KAAK,EAAY,MAAM,aAAa,OAAO,MAAM,QAAQ,EAAE,YAAY,CAAC,KAAK,EAAY,MAAM,aAAa,cAAc,MAAM,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,UAAU,aAAa,KAAK,EAAE,gBAAgB,CAAC,KAAK,EAAY,aAAa,MAAM,SAAS,aAAa,KAAK,EAAE,gBAAgB,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,CAAC,YAAY,EAAE,YAAY,QAAQ,YAAY,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,MAAM,UAAU,SAAS,CAAC,SAAS,CAAC,KAAK,EAAY,cAAc,MAAM,OAAO,QAAQ,CAAC,UAAU,QAAQ,EAAE,aAAa,CAAC,UAAU,QAAQ,EAAE,aAAa,SAAS,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,EAAE,IAAI,GAAG,IAAI,EAAE,KAAK,GAAG,eAAe,GAAK,QAAQ,CAAC,cAAY,IAAW,SAAS,EAAE,eAAe,CAAC,KAAK,EAAY,MAAM,MAAM,OAAO,QAAQ,CAAC,cAAY,IAAW,QAAQ,EAAE,gBAAgB,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,QAAQ,CAAC,cAAY,IAAW,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAY,MAAM,aAAa,OAAO,MAAM,OAAO,EAAE,mBAAmB,CAAC,KAAK,EAAY,MAAM,aAAa,UAAU,MAAM,sBAAsB,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,KAAK,KAAK,EAAE,eAAe,EAAI,EAAE,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,UAAU,aAAa,KAAK,EAAE,OAAO,CAAC,KAAK,EAAY,MAAM,aAAa,UAAU,MAAM,IAAI,EAAE,YAAY,CAAC,KAAK,EAAY,MAAM,aAAa,UAAU,MAAM,UAAU,EAAE,eAAe,CAAC,KAAK,EAAY,MAAM,aAAa,UAAU,MAAM,aAAa,EAAE,OAAO,CAAC,KAAK,EAAY,aAAa,MAAM,SAAS,aAAa,KAAK,EAAE,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,CAAC,YAAY,EAAE,YAAY,QAAQ,YAAY,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,SAAS,CAAC,IAAI,CAAC,KAAK,EAAY,OAAO,MAAM,MAAM,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,KAAK,KAAK,CAAC,EAAE,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,SAAS,CAAC,KAAK,CAAC,KAAK,EAAY,KAAK,SAAS,WAAW,MAAM,cAAc,EAAE,MAAM,CAAC,KAAK,EAAY,MAAM,aAAa,OAAO,MAAM,eAAe,EAAE,SAAS,CAAC,KAAK,EAAY,KAAK,SAAS,WAAW,MAAM,WAAW,EAAE,UAAU,CAAC,KAAK,EAAY,MAAM,aAAa,UAAU,MAAM,YAAY,CAAC,CAAC,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,gBAAgB,SAAS,CAAC,KAAK,CAAC,KAAK,EAAY,KAAK,SAAS,WAAW,MAAM,MAAM,EAAE,MAAM,CAAC,KAAK,EAAY,MAAM,aAAa,OAAO,MAAM,OAAO,EAAE,cAAc,CAAC,KAAK,EAAY,QAAQ,MAAM,SAAS,aAAa,GAAK,aAAa,MAAM,cAAc,IAAI,EAAE,mBAAmB,CAAC,KAAK,EAAY,MAAM,MAAM,eAAe,aAAa,UAAU,QAAQ,CAAC,mBAAiB,CAAC,CAAa,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,SAAS,CAAC,WAAW,CAAC,KAAK,EAAY,QAAQ,MAAM,SAAS,aAAa,GAAK,aAAa,OAAO,cAAc,OAAO,YAAY,eAAkB,EAAE,aAAa,CAAC,KAAK,EAAY,QAAQ,MAAM,OAAO,aAAa,GAAM,aAAa,OAAO,cAAc,OAAO,YAAY,qBAAqB,EAAE,aAAa,CAAC,KAAK,EAAY,KAAK,MAAM,WAAW,aAAa,cAAc,QAAQ,CAAC,cAAc,aAAa,eAAe,EAAE,aAAa,CAAC,cAAc,aAAa,eAAe,EAAE,wBAAwB,GAAK,0BAA0B,UAAU,EAAE,aAAa,CAAC,KAAK,EAAY,KAAK,MAAM,UAAU,aAAa,MAAM,QAAQ,uJAAkN,EAAE,YAAY,sCAAsC,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,SAAS,CAAC,UAAU,CAAC,KAAK,EAAY,KAAK,SAAS,WAAW,MAAM,YAAY,EAAE,WAAW,CAAC,KAAK,EAAY,MAAM,aAAa,OAAO,MAAM,aAAa,EAAE,cAAc,CAAC,KAAK,EAAY,KAAK,MAAM,YAAY,QAAQ,CAAC,OAAO,YAAY,YAAY,YAAY,EAAE,aAAa,MAAM,CAAC,CAAC,EAAE,kBAAkB,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,SAAS,CAAC,SAAS,CAAC,KAAK,EAAY,KAAK,MAAM,WAAW,QAAQ,CAAC,MAAM,QAAQ,EAAE,aAAa,QAAQ,EAAE,SAAS,CAAC,KAAK,EAAY,cAAc,MAAM,OAAO,QAAQ,CAAC,UAAU,QAAQ,EAAE,aAAa,CAAC,UAAU,QAAQ,EAAE,aAAa,SAAS,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,EAAE,IAAI,GAAG,IAAI,EAAE,KAAK,GAAG,eAAe,GAAK,QAAQ,CAAC,cAAY,IAAW,SAAS,EAAE,YAAY,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,QAAQ,CAAC,cAAY,IAAW,QAAQ,EAAE,KAAK,CAAC,KAAK,EAAY,MAAM,aAAa,UAAU,MAAM,OAAO,QAAQ,CAAC,cAAY,IAAW,QAAQ,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,KAAK,KAAK,EAAE,eAAe,EAAI,EAAE,GAAG,CAAC,KAAK,EAAY,MAAM,aAAa,UAAU,MAAM,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAY,MAAM,aAAa,UAAU,MAAM,UAAU,EAAE,OAAO,CAAC,KAAK,EAAY,aAAa,MAAM,SAAS,aAAa,MAAM,EAAE,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,CAAC,YAAY,EAAE,YAAY,QAAQ,YAAY,aAAa,CAAC,CAAC,CAAC,EAAE,iBAAiB,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,SAAS,CAAC,WAAW,CAAC,KAAK,EAAY,MAAM,MAAM,KAAK,aAAa,aAAa,EAAE,OAAO,CAAC,KAAK,EAAY,aAAa,MAAM,SAAS,aAAa,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAY,QAAQ,MAAM,kBAAkB,aAAa,KAAK,EAAE,cAAc,CAAC,KAAK,EAAY,QAAQ,MAAM,iBAAiB,aAAa,KAAK,EAAE,IAAI,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,KAAK,KAAK,CAAC,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,KAAK,KAAK,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,CAAC,CAAC,EAAE,eAAe,CAAC,KAAK,EAAY,OAAO,MAAM,UAAU,SAAS,CAAC,eAAe,CAAC,KAAK,EAAY,QAAQ,MAAM,UAAU,aAAa,GAAK,aAAa,MAAM,cAAc,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,CAAC,YAAY,EAAE,YAAY,QAAQ,YAAY,kBAAkB,EAAE,QAAQ,CAAC,oBAAkB,CAAC,CAAc,EAAE,IAAI,CAAC,KAAK,EAAY,OAAO,MAAM,MAAM,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAgBhtN,IAAW,CAAC,OAAK,EAAE,YAAuB,EAAK,MAAM,CAAC,MAAM,EAAK,OAAO,EAAK,QAAQ,YAAY,KAAK,OAAO,MAAM,6BAA6B,MAAM,CAAC,QAAQ,OAAO,EAAE,SAAsB,EAAK,OAAO,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,OAAO,eAAe,YAAY,EAAO,cAAc,OAAO,CAAC,CAAC,CAAC,EAAQ,IAAU,CAAC,OAAK,EAAE,YAAuB,EAAM,MAAM,CAAC,MAAM,EAAK,OAAO,EAAK,QAAQ,YAAY,KAAK,OAAO,MAAM,6BAA6B,MAAM,CAAC,QAAQ,OAAO,EAAE,SAAS,CAAc,EAAK,OAAO,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,OAAO,eAAe,YAAY,EAAO,cAAc,OAAO,CAAC,EAAe,EAAK,OAAO,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,OAAO,eAAe,YAAY,EAAO,cAAc,OAAO,CAAC,CAAC,CAAC,CAAC,KChNxtL,SAAwB,GAAsB,CAAC,qBAAmB,CAAC,GAAK,CAAC,EAAY,GAAgBE,EAAS,IAAI,EAAQ,EAAWC,EAAO,EAAK,EACpJ,MAAc,CACd,GAAiB,EAAE,GAAoB,CAAE,EAAE,CAAC,CAAC,EAAE,IAAM,EAAiBC,GAAa,EAAY,EAAc,IAAI,EAAQ,MAAc,IAAI,SAAS,EAAQ,IAAS,CAAC,IAAM,EAAU,KAAK,IAAI,EAAQ,MAAmB,CAAI,EAAY,EAAG,EAAQ,EAAW,KAAK,IAAI,EAAE,GAAW,EAAS,EAAW,MAAM,kCAAkC,CAAC,EAAQ,WAAW,EAAe,CAAa,CAAG,EAAE,EAAe,CAAE,CAAC,EAAI,CAAC,CAAC,EAAQ,EAA8BA,EAAY,KAAM,IAAQ,CAAI,MAAW,QAAe,GAAW,QAAQ,GAAK,GAAG,CAAC,MAAM,MAAqB,EAAO,YAAY,EAAO,WAAW,SAAS,EAAE,IAAM,EAAS,MAAM,EAAO,WAAW,UAAU,CAAM,EACxpB,GAEoB,KAAK,MAAM,aAAa,QAAQ,oBAAoB,GAAG,IAAI,EAIlF,EAAO,WAAW,KAAK,EAAS,EAAe,EAAS,aAAa,IAAI,IAAQ,QAAQ,MAAM,wCAAwC,EAAE,EAAe,IAAI,EAAG,OAAO,EAAM,CAAC,QAAQ,MAAM,oCAAoC,CAAK,EAAE,EAAe,IAAI,CAAE,QAAQ,CAAC,EAAW,QAAQ,EAAM,CAPmP,CAOlP,EAAE,CAAC,CAAgB,CAAC,EAAQ,EAAiBA,EAAY,EAAS,SAAS,CAAC,IAAI,EAAO,EAAO,YAAe,MAAM,IAAI,aAAa,QAAQ,eAAe,EAAK,EAAQ,MAAM,EAA8B,CAAM,GAAQ,QAAQ,KAAK,kCAAkC,EAAE,EAAe,IAAI,EAAG,EAAE,GAAG,EAAE,CAAC,CAA6B,CAAC,EAAE,OAAe,EAAiB,EAAE,EAAO,iBAAiB,yBAAyB,CAAgB,MAAY,CAAC,EAAO,oBAAoB,yBAAyB,CAAgB,CAAE,GAAI,CAAC,CAAgB,CAAC,EAAE,IAAM,EAAY,KAAM,IAAG,CAAC,GAAG,CACp1B,IAAM,EAAc,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,eAAe,OAAO,IAAI,CAAC,IAAM,EAAI,eAAe,IAAI,CAAC,EAAE,GAAG,GAAK,WAAW,qBAAqB,EAAE,CAAC,IAAM,EAAkB,KAAK,MAAM,eAAe,QAAQ,CAAG,GAAG,IAAI,EAAE,OAAO,QAAQ,CAAiB,CAAC,CAAC,SAAS,CAAC,EAAQ,KAAa,CAAC,EAAc,KAAK,CAAC,IAAI,EAAQ,MAAM,OAAO,CAAS,CAAC,CAAC,CAAE,CAAC,CAAE,CAAC,CACjV,GAAG,EAAc,OAAO,GAAG,EAAO,YAAY,mBAgB5B,GAAG,CAAC,MAAM,EAAO,WAAW,mBAAmB;;;;;;;;;;;;;;;;kBAAmB,CAAC,OAAO,EAAO,WAAW,KAAK,GAAG,WAAW,CAAa,CAAC,CAAE,OAAO,EAAM,CAAC,QAAQ,MAAM,oCAAoC,CAAK,CAAE,CACxN,IAAM,EAAK,EAAO,YAAY,KAAK,GAAG,CAAC,EAAK,CAAC,QAAQ,KAAK,gBAAgB,EAAE,MAC5E,CACA,IAAM,EAAM,EAAK,OAAO,OAAO,CAAC,EAAE,GAAG,CAAC,MAAM,QAAQ,CAAK,EAAE,CAAC,QAAQ,MAAM,yBAAyB,CAAK,EAAE,MAC1G,CAAC,IAAM,EAAU,EAAM,IAAI,GAAM,EAAK,IAAI,EAGpC,EAAM,GAAM,KAAK,eAAe,OAAa,EAAS,GAAM,KAAK,eAAe,aAAmB,EAAM,EAAU,IAAI,GAAM,CAAC,IAAM,EAAW,WAAW,EAAK,MAAM,mBAAmB,SAAS,EAAK,MAAM,gBAAgB,QAAQ,EAAK,UAAU,WAAW,EAAK,KAAK,eAAe,MAAM,EAAE,EAAK,SAAA,CAAU,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAK,YAAY,IAAI,MAAM,GAAG,CAAC,CAAC,IAAI,GAAG,GAAG,UAAU,EAAK,YAAY,SAAS,OAAO,EAAK,YAAY,OAAO,GAAG,aAAa,EAAK,YAAY,OAAO,GAAG,MAAM,EAAW,SAAS,EAAK,SAAS,WAAW,EAAK,YAAY,SAAS,QAAQ,KAAK,cAAc,EAAK,YAAY,SAAS,aAAa,KAC3nB,IAAI,EAAK,YAAY,IAAI,MAAM,GAAG,CAAC,CAAC,IAAI,GAAG,GAAG,YAAY,EAAK,YAAY,SAAS,OAAO,EAAK,YAAY,OAAO,EAAE,CAAE,CAAC,EACxH,GAAG,OAAO,EAAO,gBAAiB,WAAW,CAK7C,IAAM,EAAU,CAAC,WAAS,QAAM,OAAK,EAAE,EAAO,eAAe,iBAAiB,CAAS,CAAE,CACzF,GAAG,CAAC,GAAmC,CAAC,YAAY,EAAM,IAAI,GAAM,EAAK,OAAO,EAAQ,QAAe,WAAS,UAAU,EAAM,QAAQ,EAAM,IAAO,EAAM,EAAK,SAAS,CAAC,EAAE,aAAa,WAAW,UAAU,EAAI,CAAC,CAAE,OAAO,EAAM,CAAC,QAAQ,KAAK,4DAA4D,CAAK,CAAE,CAAC,IAAI,EAAiB,EAAO,uBAAuB,EACvW,GAAG,EAAiB,CAAC,EAAiB,GAA6B,CAAgB,EAAE,EAAiB,EAAoB,CAAgB,EAC1I,IAAI,IAAI,EAAE,EAAE,EAAE,eAAe,OAAO,IAAI,CAAC,IAAM,EAAI,eAAe,IAAI,CAAC,EAAK,GAAK,WAAW,wBAAwB,GAAG,eAAe,WAAW,CAAG,CAAG,CACvJ,EAAO,SAAS,OAAO,CAAgB,CAAE,MAAM,QAAQ,MAAM,2BAA2B,CAAG,OAAO,EAAM,CAAC,QAAQ,MAAM,yBAAyB,CAAK,CAAE,CAAC,EAAQ,EAAQ,MAAM,QAAQ,CAAiB,EAAE,EAAkB,GAAG,EAAsQ,MAAjP,CAAC,GAAS,CAAc,EAAM,eAAe,CAAO,EAAuB,EAAK,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,OAAO,OAAO,QAAQ,OAAO,WAAW,SAAS,eAAe,SAAS,MAAM,OAAO,SAAS,MAAM,EAAE,SAAS,kBAAkB,CAAC,EAAuB,EAAK,MAAM,CAAC,MAAM,CAAC,OAAO,OAAO,MAAM,MAAM,EAAE,SAAsB,EAAa,EAAQ,CAAC,MAAM,CAAC,GAAG,EAAQ,OAAO,OAAO,CAAC,EAAE,MAAM,OAAO,OAAO,MAAM,EAAE,QAAQ,GAAG,CAAC,EAAY,CAAC,EAAK,EAAQ,OAAO,SAAS,EAAQ,MAAM,QAAQ,CAAC,CAAG,CAAC,CAAC,CAAC,CAAC,CAAE,sBA/C3rB,IAA6E,KAA4K,IAAgC,IAAoD,IAA4H,IAA4I,EA+CuG,EAAoB,GAAsB,CAAC,kBAAkB,CAAC,KAAK,EAAY,kBAAkB,MAAM,WAAW,YAAY,gEAAgE,CAAC,CAAC"}