{"version":3,"file":"Subscriptions_utils.BXDRKAIg.mjs","names":["_Fragment"],"sources":["https:/framerusercontent.com/modules/TgekT24FCXsp3m1M9KnX/51KiLjOfRPpzwxhbKXBD/Get_shopify_config.js","https:/framerusercontent.com/modules/c5gtsBimYk7u4sSXwOlt/qYF6ekN6aOwuxUWbCTWd/Shopify_client.js","https:/framerusercontent.com/modules/gNrx5shePoNxbUKTvliC/HLQJlFFZMsPSLpGIiDtr/Currency_symbols.js","https:/framerusercontent.com/modules/mHaK3bedwyJwyNxfaowX/hWKLWGrPdtcuWvTxZqnK/Shared_currency_props.js","https:/framerusercontent.com/modules/N0h2Mv73o8xtz2My1yiB/RR9fj2DVzBXn0Wwu7ijL/Loading_skeleton.js","https:/framerusercontent.com/modules/cmJdj1YCmFSsS6n95OKk/9t9XeEHurZ6w5fbXeCsJ/Shared_tag_props.js","https:/framerusercontent.com/modules/br9bXgadWgfJaD0swwuT/jUc9YNpAtX8KUoSpiBD2/Shared_text_decoration_props.js","https:/framerusercontent.com/modules/3QrZAq5uElJQ8m88NKWY/5xJkuuHwMm3iKqkoNzBk/Subscriptions_utils.js"],"sourcesContent":["import{isBrowserFn}from\"https://framerusercontent.com/modules/0cFx6PDS8kp3yxNfnoIw/3wFcPS10LYSFljb1q710/Framer_utils.js\";let _cfg=null;export function getShopifyConfig(){const isBrowser=isBrowserFn();if(!isBrowser)return null;if(_cfg)return _cfg;// 1) JSON script\nconst el=document.getElementById(\"frameship-shopify-config\");if(el?.textContent){try{_cfg=JSON.parse(el.textContent);if(_cfg?.shop&&_cfg?.storefrontToken)return _cfg;}catch(error){console.error(\"Error parsing Shopify config:\",error);return null;}}// throw new Error(\"Frameship Shopify config not found on page.\");\nreturn null;}export function getLicenseId(){const config=getShopifyConfig();return config?.licenseId||null;}export function getIncludeSellingPlansFlag(){const config=getShopifyConfig();return config?.ff_include_selling_plans===true;}\nexport const __FramerMetadata__ = {\"exports\":{\"getLicenseId\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getIncludeSellingPlansFlag\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getShopifyConfig\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Get_shopify_config.map","import{getShopifyConfig}from\"https://framerusercontent.com/modules/TgekT24FCXsp3m1M9KnX/51KiLjOfRPpzwxhbKXBD/Get_shopify_config.js\";export async function shopifyClient({query,variables}){try{const config=getShopifyConfig();// Early return if config is null or missing required fields\nif(!config||!config.shop||!config.storefrontToken){return{data:null,errors:[{message:\"Shopify configuration is not available. Make sure the frameship-shopify-config script is present on the page.\"}]};}// Construct the Shopify GraphQL endpoint URL\nconst endpoint=`https://${config.shop}/api/${config.apiVersion}/graphql.json`;// Prepare the request body\nconst requestBody={query,...variables&&{variables}};// Make the fetch request\nconst response=await fetch(endpoint,{method:\"POST\",headers:{\"Content-Type\":\"application/json\",\"X-Shopify-Storefront-Access-Token\":config.storefrontToken},body:JSON.stringify(requestBody)});// Check if the response is ok\nif(!response.ok){return{data:null,errors:[{message:`Shopify API request failed: ${response.status} ${response.statusText}`}]};}// Parse the JSON response\nconst result=await response.json();// Check for GraphQL errors\nif(result.errors&&result.errors.length>0){const errorMessages=result.errors.map(error=>error.message).join(\", \");// throw new Error(`GraphQL errors: ${errorMessages}`);\nreturn{data:null,errors:[{message:`GraphQL errors: ${errorMessages}`}]};}// Return the data if everything is successful\nreturn{data:result.data,errors:[]};}catch(error){return{data:null,errors:[{message:`Unexpected error occurred: ${String(error)}`}]};}}\nexport const __FramerMetadata__ = {\"exports\":{\"shopifyClient\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","export const CURRENCY_SYMBOLS={AED:\"د.إ\",AFN:\"؋\",ALL:\"L\",AMD:\"֏\",ANG:\"ƒ\",AOA:\"Kz\",ARS:\"$\",AUD:\"$\",AWG:\"ƒ\",AZN:\"₼\",BAM:\"KM\",BBD:\"$\",BDT:\"৳\",BGN:\"лв\",BHD:\".د.ب\",BIF:\"FBu\",BMD:\"$\",BND:\"$\",BOB:\"$b\",BOV:\"BOV\",BRL:\"R$\",BSD:\"$\",BTC:\"₿\",BTN:\"Nu.\",BWP:\"P\",BYN:\"Br\",BYR:\"Br\",BZD:\"BZ$\",CAD:\"$\",CDF:\"FC\",CHE:\"CHE\",CHF:\"CHF\",CHW:\"CHW\",CLF:\"CLF\",CLP:\"$\",CNH:\"\\xa5\",CNY:\"\\xa5\",COP:\"$\",COU:\"COU\",CRC:\"₡\",CUC:\"$\",CUP:\"₱\",CVE:\"$\",CZK:\"Kč\",DJF:\"Fdj\",DKK:\"kr\",DOP:\"RD$\",DZD:\"دج\",EEK:\"kr\",EGP:\"\\xa3\",ERN:\"Nfk\",ETB:\"Br\",ETH:\"Ξ\",EUR:\"€\",FJD:\"$\",FKP:\"\\xa3\",GBP:\"\\xa3\",GEL:\"₾\",GGP:\"\\xa3\",GHC:\"₵\",GHS:\"GH₵\",GIP:\"\\xa3\",GMD:\"D\",GNF:\"FG\",GTQ:\"Q\",GYD:\"$\",HKD:\"$\",HNL:\"L\",HRK:\"kn\",HTG:\"G\",HUF:\"Ft\",IDR:\"Rp\",ILS:\"₪\",IMP:\"\\xa3\",INR:\"₹\",IQD:\"ع.د\",IRR:\"﷼\",ISK:\"kr\",JEP:\"\\xa3\",JMD:\"J$\",JOD:\"JD\",JPY:\"\\xa5\",KES:\"KSh\",KGS:\"лв\",KHR:\"៛\",KMF:\"CF\",KPW:\"₩\",KRW:\"₩\",KWD:\"KD\",KYD:\"$\",KZT:\"₸\",LAK:\"₭\",LBP:\"\\xa3\",LKR:\"₨\",LRD:\"$\",LSL:\"M\",LTC:\"Ł\",LTL:\"Lt\",LVL:\"Ls\",LYD:\"LD\",MAD:\"MAD\",MDL:\"lei\",MGA:\"Ar\",MKD:\"ден\",MMK:\"K\",MNT:\"₮\",MOP:\"MOP$\",MRO:\"UM\",MRU:\"UM\",MUR:\"₨\",MVR:\"Rf\",MWK:\"MK\",MXN:\"$\",MXV:\"MXV\",MYR:\"RM\",MZN:\"MT\",NAD:\"$\",NGN:\"₦\",NIO:\"C$\",NOK:\"kr\",NPR:\"₨\",NZD:\"$\",OMR:\"﷼\",PAB:\"B/.\",PEN:\"S/.\",PGK:\"K\",PHP:\"₱\",PKR:\"₨\",PLN:\"zł\",PYG:\"Gs\",QAR:\"﷼\",RMB:\"￥\",RON:\"lei\",RSD:\"Дин.\",RUB:\"₽\",RWF:\"R₣\",SAR:\"﷼\",SBD:\"$\",SCR:\"₨\",SDG:\"ج.س.\",SEK:\"kr\",SGD:\"S$\",SHP:\"\\xa3\",SLL:\"Le\",SOS:\"S\",SRD:\"$\",SSP:\"\\xa3\",STD:\"Db\",STN:\"Db\",SVC:\"$\",SYP:\"\\xa3\",SZL:\"E\",THB:\"฿\",TJS:\"SM\",TMT:\"T\",TND:\"د.ت\",TOP:\"T$\",TRL:\"₤\",TRY:\"₺\",TTD:\"TT$\",TVD:\"$\",TWD:\"NT$\",TZS:\"TSh\",UAH:\"₴\",UGX:\"USh\",USD:\"$\",UYI:\"UYI\",UYU:\"$U\",UYW:\"UYW\",UZS:\"лв\",VEF:\"Bs\",VES:\"Bs.S\",VND:\"₫\",VUV:\"VT\",WST:\"WS$\",XAF:\"FCFA\",XBT:\"Ƀ\",XCD:\"$\",XOF:\"CFA\",XPF:\"₣\",XSU:\"Sucre\",XUA:\"XUA\",YER:\"﷼\",ZAR:\"R\",ZMW:\"ZK\",ZWD:\"Z$\",ZWL:\"$\"};/**\n * Get currency symbol by currency code\n * @param currencyCode - ISO 4217 currency code (e.g., \"USD\", \"EUR\", \"GBP\")\n * @returns Currency symbol or the currency code if not found\n */export const getCurrencySymbol=currencyCode=>{return CURRENCY_SYMBOLS[currencyCode]||currencyCode;};\nexport const __FramerMetadata__ = {\"exports\":{\"getCurrencySymbol\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"CURRENCY_SYMBOLS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Currency_symbols.map","import{ControlType}from\"framer\";import{CURRENCY_SYMBOLS}from\"https://framerusercontent.com/modules/gNrx5shePoNxbUKTvliC/HLQJlFFZMsPSLpGIiDtr/Currency_symbols.js\";export function formatCurrency({amount,currencyCode,options}){amount=amount||0;const showDecimals=options.decimals==\"auto\"?amount%1!==0:options.decimals==\"always\";const decimals=showDecimals?2:0;let formattedAmount=\"\";if(options.formatted&&typeof Intl!==\"undefined\"){const locale=options.locale||(typeof navigator!==\"undefined\"?navigator.language:\"en-us\");const formatter=new Intl.NumberFormat(locale,{minimumFractionDigits:decimals,maximumFractionDigits:decimals});formattedAmount=formatter.format(amount);}else{formattedAmount=amount.toFixed(decimals);}if(!currencyCode||currencyCode===\"XXX\"){return formattedAmount;}const symbol=CURRENCY_SYMBOLS[currencyCode];if(options.style===\"code\"){return options.location===\"before\"?`${currencyCode} ${formattedAmount}`:`${formattedAmount} ${currencyCode}`;}else{return options.location===\"before\"?`${symbol}${formattedAmount}`:`${formattedAmount}${symbol}`;}}export const CurrencyFormatControls={currencyFormat:{type:ControlType.Object,title:\"Format\",controls:{style:{type:ControlType.Enum,defaultValue:\"symbol\",options:[\"symbol\",\"code\"],optionTitles:[\"Symbol ($)\",\"Code (USD)\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},location:{type:ControlType.Enum,defaultValue:\"before\",options:[\"before\",\"after\"],optionTitles:[\"Before\",\"After\"],displaySegmentedControl:true},decimals:{type:ControlType.Enum,defaultValue:\"auto\",options:[\"auto\",\"always\",\"never\"],optionTitles:[\"Auto\",\"Show (10.00)\",\"Hide (10)\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},formatted:{type:ControlType.Boolean,defaultValue:true},locale:{type:ControlType.String,defaultValue:\"\",placeholder:`Auto (${typeof navigator!==\"undefined\"?navigator.language:\"\"})`,description:\"Formatting examples:\\n*1,000* | *1.000* | *1 000*\",hidden:props=>!props.formatted}},hidden:props=>props.type!==\"subtotal\"}};\nexport const __FramerMetadata__ = {\"exports\":{\"formatCurrency\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"CurrencyFormatControlsProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"CurrencyFormatControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Shared_currency_props.map","import{jsx as _jsx,Fragment as _Fragment}from\"react/jsx-runtime\";import{SHARED_COLORS}from\"https://framerusercontent.com/modules/Nrs4jz2AAEOfEZRQEQij/7Ao2SBt1Ssf683HHXgzl/Shared_styles.js\";import{withCSS}from\"framer\";export const pulseKeyframes=`\n  @keyframes pulse {\n    0%, 100% {\n      opacity: 1;\n    }\n    50% {\n      opacity: 0.5;\n    }\n  }\n`;function LoadingSkeletonWithoutCss({style}){return /*#__PURE__*/_jsx(_Fragment,{children:/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"16px\",backgroundColor:SHARED_COLORS.backgroundMuted,borderRadius:\"10px\",animation:\"pulse 1.5s ease-in-out infinite\",...style}})});}const LoadingSkeleton=withCSS(LoadingSkeletonWithoutCss,[pulseKeyframes],\"\");export default LoadingSkeleton;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"LoadingSkeleton\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"pulseKeyframes\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Loading_skeleton.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{ControlType}from\"framer\";export function renderWithTag(tag,content,style){const finalStyle={...style,margin:0,padding:0,whiteSpace:\"nowrap\"};switch(tag){case\"p\":return /*#__PURE__*/_jsx(\"p\",{style:finalStyle,children:content});case\"span\":return /*#__PURE__*/_jsx(\"span\",{style:finalStyle,children:content});case\"h1\":return /*#__PURE__*/_jsx(\"h1\",{style:finalStyle,children:content});case\"h2\":return /*#__PURE__*/_jsx(\"h2\",{style:finalStyle,children:content});case\"h3\":return /*#__PURE__*/_jsx(\"h3\",{style:finalStyle,children:content});case\"h4\":return /*#__PURE__*/_jsx(\"h4\",{style:finalStyle,children:content});case\"h5\":return /*#__PURE__*/_jsx(\"h5\",{style:finalStyle,children:content});case\"h6\":return /*#__PURE__*/_jsx(\"h6\",{style:finalStyle,children:content});}}export const TagPropertyControls={tag:{type:ControlType.Enum,options:[\"p\",\"span\",\"h1\",\"h2\",\"h3\",\"h4\",\"h5\",\"h6\"],defaultValue:\"p\"}};\nexport const __FramerMetadata__ = {\"exports\":{\"renderWithTag\":{\"type\":\"reactComponent\",\"name\":\"renderWithTag\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"TagPropertyControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"TagPropertyControlsProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"TagType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Shared_tag_props.map","import{ControlType}from\"framer\";export const TextDecorationControls={decoration:{type:ControlType.Enum,title:\"Decoration\",options:[\"none\",\"underline\",\"line-through\"],optionTitles:[\"None\",\"Underline\",\"Strikethrough\"],defaultValue:\"none\"}};\nexport const __FramerMetadata__ = {\"exports\":{\"TextDecorationControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"TextDecorationControlsProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"TextDecoration\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Shared_text_decoration_props.map","/**\n * Calculates the adjusted price for a variant based on selling plan price adjustments\n * @param basePrice - The base price of the variant\n * @param sellingPlan - The selling plan with price adjustments\n * @returns The adjusted price data, or null if no adjustments apply\n */export function calculateSellingPlanPrice(basePrice,sellingPlan){if(!sellingPlan?.priceAdjustments?.length){return null;}const adjustment=sellingPlan.priceAdjustments[0]?.adjustmentValue;if(!adjustment){return null;}const baseAmount=Number(basePrice.amount);// Case 1: Fixed price override\nif(\"price\"in adjustment){return{amount:adjustment.price.amount,currencyCode:adjustment.price.currencyCode||basePrice.currencyCode};}// Case 2: Percentage adjustment (e.g., -10 means 10% discount)\nif(\"adjustmentPercentage\"in adjustment){const percentage=adjustment.adjustmentPercentage;const adjustedAmount=baseAmount*(1-percentage/100);return{amount:adjustedAmount.toFixed(2),currencyCode:basePrice.currencyCode};}// Case 3: Fixed amount adjustment\nif(\"adjustmentAmount\"in adjustment){const adjustmentAmount=Number(adjustment.adjustmentAmount.amount);const adjustedAmount=baseAmount-adjustmentAmount;return{amount:adjustedAmount.toFixed(2),currencyCode:adjustment.adjustmentAmount.currencyCode||basePrice.currencyCode};}return null;}/**\n * Converts delivery frequency string to shorthand format\n * Examples:\n * - \"monthly\" → \"m\"\n * - \"month\" → \"m\"\n * - \"2 months\" → \"2m\"\n * - \"weekly\" → \"w\"\n * - \"3 weeks\" → \"3w\"\n * - \"daily\" → \"d\"\n * - \"yearly\" → \"y\"\n * - \"1 year\" → \"1y\"\n */export function formatDeliveryFrequencyShorthand(frequency){const normalized=frequency.toLowerCase().trim();// Extract number if present (e.g., \"2 months\" → \"2\")\nconst numberMatch=normalized.match(/^(\\d+)\\s*/);const number=numberMatch?numberMatch[1]:\"\";// Remove number and normalize the remaining text\nconst text=normalized.replace(/^\\d+\\s*/,\"\").trim();// Map time units to shorthand\nconst unitMap={day:\"d\",days:\"d\",daily:\"d\",week:\"w\",weeks:\"w\",weekly:\"w\",month:\"m\",months:\"m\",monthly:\"m\",year:\"y\",years:\"y\",yearly:\"y\"};const shorthand=unitMap[text]||text;// Return formatted: number + shorthand (e.g., \"2m\" or just \"m\")\nreturn number?`${number}${shorthand}`:shorthand;}\nexport const __FramerMetadata__ = {\"exports\":{\"formatDeliveryFrequencyShorthand\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"calculateSellingPlanPrice\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Subscriptions_utils.map"],"mappings":"wPAAuI,SAAgB,GAAkB,CAA+B,GAAG,CAAjB,EAA0B,EAAE,OAAO,KAAK,GAAG,EAAK,OAAO,EACjP,IAAM,EAAG,SAAS,eAAe,0BAA0B,EAAE,GAAG,GAAI,YAAa,GAAG,CAAiC,GAAhC,EAAK,KAAK,MAAM,EAAG,WAAW,EAAK,GAAM,MAAM,GAAM,gBAAgB,OAAO,CAAK,OAAO,EAAM,CAAsD,OAArD,QAAQ,MAAM,gCAAgC,CAAK,EAAS,IAAK,CACrP,OAAO,IAAK,CAAC,SAAgB,GAAc,CAAiC,OAAnB,EAA+B,CAAC,EAAE,WAAW,IAAK,CAAC,SAAgB,GAA4B,CAAiC,OAAnB,EAA+B,CAAC,EAAE,2BAA2B,EAAK,mBAFhH,EAAK,EAAK,QCAE,eAAsB,EAAc,CAAC,QAAM,aAAW,CAAC,GAAG,CAAC,IAAM,EAAO,EAAiB,EAC7N,GAAG,CAAC,GAAQ,CAAC,EAAO,MAAM,CAAC,EAAO,gBAAiB,MAAM,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,QAAQ,+GAA+G,CAAC,CAAC,EACtM,IAAM,EAAS,WAAW,EAAO,KAAK,OAAO,EAAO,WAAW,eACzD,EAAY,CAAC,QAAM,GAAG,GAAW,CAAC,WAAS,CAAC,EAC5C,EAAS,MAAM,MAAM,EAAS,CAAC,OAAO,OAAO,QAAQ,CAAC,eAAe,mBAAmB,oCAAoC,EAAO,eAAe,EAAE,KAAK,KAAK,UAAU,CAAW,CAAC,CAAC,EAC3L,GAAG,CAAC,EAAS,GAAI,MAAM,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,QAAQ,+BAA+B,EAAS,OAAO,GAAG,EAAS,YAAY,CAAC,CAAC,EAC5H,IAAM,EAAO,MAAM,EAAS,KAAK,EAGjC,OAFG,EAAO,QAAQ,EAAO,OAAO,OAAO,EACjC,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,QAAQ,mBAD4B,EAAO,OAAO,IAAI,GAAO,EAAM,OAAO,CAAC,CAAC,KAAK,IAC1C,GAAG,CAAC,CAAC,EAChE,CAAC,KAAK,EAAO,KAAK,OAAO,CAAC,CAAC,CAAE,OAAO,EAAM,CAAC,MAAM,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,QAAQ,8BAA8B,OAAO,CAAK,GAAG,CAAC,CAAC,CAAE,CAAC,iBATF,iBCAtH,EAAiB,CAAC,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,OAAO,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,IAAI,IAAI,IAAI,KAAK,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,IAAI,IAAI,IAAI,IAAO,IAAI,IAAO,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,IAAO,IAAI,MAAM,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAO,IAAI,IAAO,IAAI,IAAI,IAAI,IAAO,IAAI,IAAI,IAAI,MAAM,IAAI,IAAO,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,KAAK,IAAI,IAAI,IAAI,IAAO,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,KAAK,IAAI,IAAO,IAAI,KAAK,IAAI,KAAK,IAAI,IAAO,IAAI,MAAM,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAO,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,IAAI,MAAM,IAAI,KAAK,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,KAAK,IAAI,IAAI,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,IAA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"}