{"version":3,"file":"ProductBasicInfo.vehodKpe.mjs","names":["p","useState","useContext","__legacyOverrideHOC_DataObserverContext","_jsx"],"sources":["https:/framerusercontent.com/modules/4P3iGmmuEhKsc20ZoZzq/0T5YapkBK6paWezgFNW1/productStore.js","https:/framerusercontent.com/modules/mExCm5r1EgH2vT7VdxEb/Ss2ejiiGcOUyVUYSUMYU/formatMoney.js","https:/framerusercontent.com/modules/VkqYkhSA67FjloL8tadz/CLRcNFVXt2GxXrqksVqx/PlpGrid.js","https:/framerusercontent.com/modules/LEUgGAmIOCzBXfUY0Blb/TnL5ao4rjox6TsD8H43Q/ProductBasicInfo.js"],"sourcesContent":["/**\n * FILE: productStore.ts\n * LOCATION: framer/stores/productStore.ts\n * LAYER: Store (Domain State – Product)\n *\n * RESPONSIBILITY:\n * - Hold authoritative PDP product state\n * - Track selectedVariantId\n * - Track loading and error states for PDP\n *\n * DOES NOT:\n * - Fetch product data directly (productController owns that)\n * - Perform price calculations\n * - Persist data outside in-memory state\n *\n * AUTHORITY:\n * - Canonical product data comes from:\n *   GET /products/{handle}\n *\n * DATA FLOW:\n * productController → productStore → PDP UI\n */import{createStore}from\"https://framer.com/m/framer/store.js@^1.0.0\";export const useProductStore=createStore({loading:true,error:null,product:null,selectedVariantId:null});\nexport const __FramerMetadata__ = {\"exports\":{\"useProductStore\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./productStore.map","/**\n * FILE: formatMoney.ts\n * LOCATION: framer/api/formatMoney.ts\n * LAYER: Utility (Formatting)\n *\n * RESPONSIBILITY:\n * - Format monetary values for display\n * - Normalize currency presentation\n *\n * DOES NOT:\n * - Fetch pricing data\n * - Perform currency conversion logic\n * - Store state\n *\n * AUTHORITY:\n * - Pure formatting utility (no backend dependency)\n */export function formatMoney(amount,currency=\"CAD\"){if(amount==null||amount===\"\")return\"\";const value=typeof amount===\"string\"?parseFloat(amount):amount;if(isNaN(value))return\"\";return new Intl.NumberFormat(\"en-CA\",{style:\"currency\",currency}).format(value);}\nexport const __FramerMetadata__ = {\"exports\":{\"formatMoney\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./formatMoney.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{createContext,useEffect,useState}from\"react\";import{RenderTarget}from\"framer\";import{apiFetch}from\"https://framerusercontent.com/modules/pBL9xlYciLON0IYG5ZYl/IsetwQdmzbUEG8JeLKq0/apiClient.js\";/* =========================================================\n   GLOBAL CATALOG CACHE\n========================================================= */let allProductsCache=[];let isFetching=false;async function getAllProducts(){if(allProductsCache.length>0)return allProductsCache;if(isFetching){await new Promise(resolve=>setTimeout(resolve,100));return getAllProducts();}isFetching=true;try{const{ok,data}=await apiFetch(\"/catalog/information\");if(!ok)return[];const items=Array.isArray(data?.items)?data.items:[];const normalized=items.map(p=>{const min=p.priceMin;const max=p.priceMax;const currency=p.currency||\"CAD\";let price=null;if(min!=null&&max!=null){price=min===max?`${min}`:`${min}-${max}`;}else if(min!=null){price=`${min}`;}return{id:p.id,title:p.title,handle:p.handle,image:p.image||null,price,currency,defaultVariantId:p.defaultVariantId,available:p.available};});allProductsCache=normalized;return normalized;}catch{return[];}finally{isFetching=false;}}/* =========================================================\n   PRODUCT DATA CONTEXT (PLP)\n========================================================= */export const ProductDataContext=/*#__PURE__*/createContext(undefined);/* =========================================================\n   GRID WRAPPER\n========================================================= */function getSlugFromHref(href){if(!href)return null;const cleanHref=href.split(\"?\")[0].split(\"#\")[0];const match=cleanHref.match(/\\/product\\/([^\\/]+)/);if(!match?.[1])return null;return decodeURIComponent(match[1]);}export function Grid(Component){return props=>{const[productData,setProductData]=useState(null);const slug=getSlugFromHref(props.href);useEffect(()=>{setProductData(null);if(!slug)return;if(RenderTarget.current()===RenderTarget.canvas){setProductData({title:`Sample ${slug}`,handle:slug,image:\"https://images.unsplash.com/photo-1509042239860-f550ce710b93\",price:\"18.00\"});return;}const cleanSlug=slug.split(\"?\")[0].split(\"#\")[0];const handle=cleanSlug.replace(/-/g,\"_\");getAllProducts().then(products=>{const product=products.find(p=>p.handle===handle);if(product){setProductData(product);}});},[slug]);return /*#__PURE__*/_jsx(ProductDataContext.Provider,{value:productData,children:/*#__PURE__*/_jsx(Component,{...props})});};}\nexport const __FramerMetadata__ = {\"exports\":{\"ProductDataContext\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Grid\":{\"type\":\"reactHoc\",\"name\":\"Grid\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./PlpGrid.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{useContext}from\"react\";import{useProductStore}from\"https://framerusercontent.com/modules/4P3iGmmuEhKsc20ZoZzq/0T5YapkBK6paWezgFNW1/productStore.js\";import{formatMoney}from\"https://framerusercontent.com/modules/mExCm5r1EgH2vT7VdxEb/Ss2ejiiGcOUyVUYSUMYU/formatMoney.js\";import{ProductDataContext}from\"https://framerusercontent.com/modules/VkqYkhSA67FjloL8tadz/CLRcNFVXt2GxXrqksVqx/PlpGrid.js\";/* =========================================================\n   INTERNAL: Resolve Product Source\n========================================================= */function useResolvedProduct(){const contextProduct=useContext(ProductDataContext);const[storeState]=useProductStore();const product=contextProduct||storeState.product;const selectedVariant=storeState.product?.variants?.find(v=>v.id===storeState.selectedVariantId)||storeState.product?.variants?.[0];return{product,selectedVariant,storeState};}/* =========================================================\n   BASIC PRODUCT DISPLAY\n========================================================= */export function Title(){const{product}=useResolvedProduct();return{text:product?.title||\"\"};}export function Description(){const{product}=useResolvedProduct();return{text:product?.description||\"\"};}export function Price(){const{product,selectedVariant}=useResolvedProduct();if(selectedVariant?.price){return{text:formatMoney(selectedVariant.price)};}if(product?.price){return{text:formatMoney(product.price,product.currency)};}return{text:\"\"};}export function ComparePrice(){const{selectedVariant}=useResolvedProduct();if(!selectedVariant?.compareAtPrice){return{visible:false};}return{visible:true,text:formatMoney(selectedVariant.compareAtPrice)};}export function Inventory(){const{selectedVariant}=useResolvedProduct();const inventory=selectedVariant?.inventoryQuantity;return{text:inventory!=null&&inventory>0?`${inventory} in stock`:\"\"};}export function Image(){const contextProduct=useContext(ProductDataContext);const[storeState]=useProductStore();const image=contextProduct!==undefined?contextProduct?.image:storeState.product?.images?.[0]?.src;if(!image)return{};return{style:{backgroundImage:`url(${image})`,backgroundSize:\"contain\",backgroundPosition:\"center\",backgroundRepeat:\"no-repeat\"}};}export function RoastLevel(){const{product}=useResolvedProduct();return{text:product?.metafields?.coffee?.roast_level||\"\"};}/* =========================================================\n   VARIANT SELECTION (PDP ONLY)\n========================================================= */export function BeansOption(Component){return props=>{const[state,setState]=useProductStore();const variant=state.product?.variants?.find(v=>v.title?.toLowerCase()===\"beans\");if(!variant)return null;const isSelected=state.selectedVariantId===variant.id;return /*#__PURE__*/_jsx(Component,{...props,onTap:()=>setState({selectedVariantId:variant.id}),variant:isSelected?\"Selected\":\"Default\"});};}export function GroundOption(Component){return props=>{const[state,setState]=useProductStore();const variant=state.product?.variants?.find(v=>v.title?.toLowerCase()===\"ground\");if(!variant)return null;const isSelected=state.selectedVariantId===variant.id;return /*#__PURE__*/_jsx(Component,{...props,onTap:()=>setState({selectedVariantId:variant.id}),variant:isSelected?\"Selected\":\"Default\"});};}export function SelectedOption(Component){return props=>{const[state]=useProductStore();const variants=state.product?.variants??[];let displayVariant=\"Beans\";if(state.selectedVariantId){const selected=variants.find(v=>v.id===state.selectedVariantId);if(selected?.title?.toLowerCase()===\"ground\")displayVariant=\"Ground\";else if(selected?.title?.toLowerCase()===\"beans\")displayVariant=\"Beans\";}else{const hasBeans=variants.some(v=>v.title?.toLowerCase()===\"beans\");const hasGround=variants.some(v=>v.title?.toLowerCase()===\"ground\");if(hasBeans)displayVariant=\"Beans\";else if(hasGround)displayVariant=\"Ground\";}return /*#__PURE__*/_jsx(Component,{...props,variant:displayVariant});};}import{useContext as __legacyOverrideHOC_useContext}from\"react\";import{DataObserverContext as __legacyOverrideHOC_DataObserverContext}from\"framer\";export function withTitle(C){return props=>{__legacyOverrideHOC_useContext(__legacyOverrideHOC_DataObserverContext);return _jsx(C,{...props,...Title(props)});};}withTitle.displayName=\"Title\";export function withDescription(C){return props=>{__legacyOverrideHOC_useContext(__legacyOverrideHOC_DataObserverContext);return _jsx(C,{...props,...Description(props)});};}withDescription.displayName=\"Description\";export function withPrice(C){return props=>{__legacyOverrideHOC_useContext(__legacyOverrideHOC_DataObserverContext);return _jsx(C,{...props,...Price(props)});};}withPrice.displayName=\"Price\";export function withComparePrice(C){return props=>{__legacyOverrideHOC_useContext(__legacyOverrideHOC_DataObserverContext);return _jsx(C,{...props,...ComparePrice(props)});};}withComparePrice.displayName=\"ComparePrice\";export function withInventory(C){return props=>{__legacyOverrideHOC_useContext(__legacyOverrideHOC_DataObserverContext);return _jsx(C,{...props,...Inventory(props)});};}withInventory.displayName=\"Inventory\";export function withImage(C){return props=>{__legacyOverrideHOC_useContext(__legacyOverrideHOC_DataObserverContext);return _jsx(C,{...props,...Image(props)});};}withImage.displayName=\"Image\";export function withRoastLevel(C){return props=>{__legacyOverrideHOC_useContext(__legacyOverrideHOC_DataObserverContext);return _jsx(C,{...props,...RoastLevel(props)});};}withRoastLevel.displayName=\"RoastLevel\";\nexport const __FramerMetadata__ = {\"exports\":{\"Price\":{\"type\":\"override\",\"name\":\"Price\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"GroundOption\":{\"type\":\"reactHoc\",\"name\":\"GroundOption\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withComparePrice\":{\"type\":\"reactHoc\",\"name\":\"withComparePrice\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withTitle\":{\"type\":\"reactHoc\",\"name\":\"withTitle\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Description\":{\"type\":\"override\",\"name\":\"Description\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withPrice\":{\"type\":\"reactHoc\",\"name\":\"withPrice\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"BeansOption\":{\"type\":\"reactHoc\",\"name\":\"BeansOption\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Inventory\":{\"type\":\"override\",\"name\":\"Inventory\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withRoastLevel\":{\"type\":\"reactHoc\",\"name\":\"withRoastLevel\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withImage\":{\"type\":\"reactHoc\",\"name\":\"withImage\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Title\":{\"type\":\"override\",\"name\":\"Title\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withInventory\":{\"type\":\"reactHoc\",\"name\":\"withInventory\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Image\":{\"type\":\"override\",\"name\":\"Image\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withDescription\":{\"type\":\"reactHoc\",\"name\":\"withDescription\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RoastLevel\":{\"type\":\"override\",\"name\":\"RoastLevel\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ComparePrice\":{\"type\":\"override\",\"name\":\"ComparePrice\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SelectedOption\":{\"type\":\"reactHoc\",\"name\":\"SelectedOption\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ProductBasicInfo.map"],"mappings":"qRAqBwE,CAAa,EAAgB,EAAY,CAAC,QAAQ,GAAK,MAAM,KAAK,QAAQ,KAAK,kBAAkB,KAAK,CAAC,ICL5K,SAAgB,EAAY,EAAO,EAAS,MAAM,CAAC,GAAG,GAAQ,MAAM,IAAS,GAAG,MAAM,GAAG,IAAM,EAAM,OAAO,GAAS,SAAS,WAAW,EAAO,CAAC,EAAgC,OAAtB,MAAM,EAAM,CAAO,GAAU,IAAI,KAAK,aAAa,QAAQ,CAAC,MAAM,WAAW,WAAS,CAAC,CAAC,OAAO,EAAM,mBCd1J,eAAe,GAAgB,CAAC,GAAG,EAAiB,OAAO,EAAE,OAAO,EAAiB,GAAG,EAAgE,OAApD,MAAM,IAAI,QAAQ,GAAS,WAAW,EAAQ,IAAI,CAAC,CAAQ,GAAgB,CAAE,EAAW,GAAK,GAAG,CAAC,GAAK,CAAC,KAAG,QAAM,MAAM,EAAS,uBAAuB,CAAC,GAAG,CAAC,EAAG,MAAM,EAAE,CAAsD,IAAM,GAA/C,MAAM,QAAQ,GAAM,MAAM,CAAC,EAAK,MAAM,EAAE,EAAwB,IAAI,GAAG,CAAC,IAAM,EAAIA,EAAE,SAAe,EAAIA,EAAE,SAAe,EAASA,EAAE,UAAU,MAAU,EAAM,KAA2G,OAAnG,GAAK,MAAM,GAAK,KAAM,EAAM,IAAM,EAAI,GAAG,IAAM,GAAG,EAAI,GAAG,IAAe,GAAK,OAAM,EAAM,GAAG,KAAa,CAAC,GAAGA,EAAE,GAAG,MAAMA,EAAE,MAAM,OAAOA,EAAE,OAAO,MAAMA,EAAE,OAAO,KAAK,QAAM,WAAS,iBAAiBA,EAAE,iBAAiB,UAAUA,EAAE,UAAU,EAAG,CAA6B,MAA5B,GAAiB,EAAkB,OAAiB,CAAC,MAAM,EAAE,QAAS,CAAC,EAAW,IAI5yB,SAAS,EAAgB,EAAK,CAAC,GAAG,CAAC,EAAK,OAAO,KAAsD,IAAM,EAAvC,EAAK,MAAM,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,GAAyB,MAAM,sBAAsB,CAA4B,OAAvB,IAAQ,GAAsB,mBAAmB,EAAM,GAAG,CAAxC,KAA0C,SAAgB,EAAK,EAAU,CAAC,MAAO,IAAO,CAAC,GAAK,CAAC,EAAY,GAAgBC,EAAS,KAAK,CAAO,EAAK,EAAgB,EAAM,KAAK,CAAqd,OAApd,MAAc,CAAsB,GAArB,EAAe,KAAK,CAAI,CAAC,EAAK,OAAO,GAAG,EAAa,SAAS,GAAG,EAAa,OAAO,CAAC,EAAe,CAAC,MAAM,UAAU,IAAO,OAAO,EAAK,MAAM,+DAA+D,MAAM,QAAQ,CAAC,CAAC,OAAyD,IAAM,EAAvC,EAAK,MAAM,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,GAA0B,QAAQ,KAAK,IAAI,CAAC,GAAgB,CAAC,KAAK,GAAU,CAAC,IAAM,EAAQ,EAAS,KAAK,GAAGD,EAAE,SAAS,EAAO,CAAI,GAAS,EAAe,EAAQ,EAAI,EAAG,CAAC,EAAK,CAAC,CAAqB,EAAK,EAAmB,SAAS,CAAC,MAAM,EAAY,SAAsB,EAAK,EAAU,CAAC,GAAG,EAAM,CAAC,CAAC,CAAC,yBAN97B,IAAoD,IAAiC,IAAmH,CAEnL,EAAiB,EAAE,CAAK,EAAW,GAE1B,EAAgC,EAAc,IAAA,GAAU,ICFrE,SAAS,GAAoB,CAAC,IAAM,EAAeE,EAAW,EAAmB,CAAM,CAAC,GAAY,GAAiB,CAAsL,MAAM,CAAC,QAA9K,GAAgB,EAAW,QAA2J,gBAA7H,EAAW,SAAS,UAAU,KAAK,GAAG,EAAE,KAAK,EAAW,kBAAkB,EAAE,EAAW,SAAS,WAAW,GAAkC,aAAW,CAErV,SAAgB,GAAO,CAAC,GAAK,CAAC,WAAS,GAAoB,CAAC,MAAM,CAAC,KAAK,GAAS,OAAO,GAAG,CAAE,SAAgB,GAAa,CAAC,GAAK,CAAC,WAAS,GAAoB,CAAC,MAAM,CAAC,KAAK,GAAS,aAAa,GAAG,CAAE,SAAgB,GAAO,CAAC,GAAK,CAAC,UAAQ,mBAAiB,GAAoB,CAA0J,OAAtJ,GAAiB,MAAa,CAAC,KAAK,EAAY,EAAgB,MAAM,CAAC,CAAK,GAAS,MAAa,CAAC,KAAK,EAAY,EAAQ,MAAM,EAAQ,SAAS,CAAC,CAAQ,CAAC,KAAK,GAAG,CAAE,SAAgB,GAAc,CAAC,GAAK,CAAC,mBAAiB,GAAoB,CAA6D,OAAxD,GAAiB,eAA6C,CAAC,QAAQ,GAAK,KAAK,EAAY,EAAgB,eAAe,CAAC,CAAtF,CAAC,QAAQ,GAAM,CAAyE,SAAgB,GAAW,CAAC,GAAK,CAAC,mBAAiB,GAAoB,CAAO,EAAU,GAAiB,kBAAkB,MAAM,CAAC,KAAK,GAAW,MAAM,EAAU,EAAE,GAAG,EAAU,WAAW,GAAG,CAAE,SAAgB,GAAO,CAAC,IAAM,EAAeA,EAAW,EAAmB,CAAM,CAAC,GAAY,GAAiB,CAAO,EAAM,IAAiB,IAAA,GAAgC,EAAW,SAAS,SAAS,IAAI,IAAvD,GAAgB,MAA8D,OAAf,EAAqB,CAAC,MAAM,CAAC,gBAAgB,OAAO,EAAM,GAAG,eAAe,UAAU,mBAAmB,SAAS,iBAAiB,YAAY,CAAC,CAApI,EAAE,CAAoI,SAAgB,GAAY,CAAC,GAAK,CAAC,WAAS,GAAoB,CAAC,MAAM,CAAC,KAAK,GAAS,YAAY,QAAQ,aAAa,GAAG,CAE7yC,SAAgB,EAAY,EAAU,CAAC,MAAO,IAAO,CAAC,GAAK,CAAC,EAAM,GAAU,GAAiB,CAAO,EAAQ,EAAM,SAAS,UAAU,KAAK,GAAG,EAAE,OAAO,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAQ,OAAO,KAAK,IAAM,EAAW,EAAM,oBAAoB,EAAQ,GAAG,OAAoB,EAAK,EAAU,CAAC,GAAG,EAAM,UAAU,EAAS,CAAC,kBAAkB,EAAQ,GAAG,CAAC,CAAC,QAAQ,EAAW,WAAW,UAAU,CAAC,EAAI,SAAgB,EAAa,EAAU,CAAC,MAAO,IAAO,CAAC,GAAK,CAAC,EAAM,GAAU,GAAiB,CAAO,EAAQ,EAAM,SAAS,UAAU,KAAK,GAAG,EAAE,OAAO,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,EAAQ,OAAO,KAAK,IAAM,EAAW,EAAM,oBAAoB,EAAQ,GAAG,OAAoB,EAAK,EAAU,CAAC,GAAG,EAAM,UAAU,EAAS,CAAC,kBAAkB,EAAQ,GAAG,CAAC,CAAC,QAAQ,EAAW,WAAW,UAAU,CAAC,EAAI,SAAgB,EAAe,EAAU,CAAC,MAAO,IAAO,CAAC,GAAK,CAAC,GAAO,GAAiB,CAAO,EAAS,EAAM,SAAS,UAAU,EAAE,CAAK,EAAe,QAAQ,GAAG,EAAM,kBAAkB,CAAC,IAAM,EAAS,EAAS,KAAK,GAAG,EAAE,KAAK,EAAM,kBAAkB,CAAI,GAAU,OAAO,aAAa,GAAG,SAAS,EAAe,SAAiB,GAAU,OAAO,aAAa,GAAG,UAAQ,EAAe,aAAa,CAAC,IAAM,EAAS,EAAS,KAAK,GAAG,EAAE,OAAO,aAAa,GAAG,QAAQ,CAAO,EAAU,EAAS,KAAK,GAAG,EAAE,OAAO,aAAa,GAAG,SAAS,CAAI,EAAS,EAAe,QAAgB,IAAU,EAAe,UAAU,OAAoB,EAAK,EAAU,CAAC,GAAG,EAAM,QAAQ,EAAe,CAAC,EAAuJ,SAAgB,EAAU,EAAE,CAAC,MAAO,KAAQ,EAA+BC,EAAwC,CAAQC,EAAK,EAAE,CAAC,GAAG,EAAM,GAAG,EAAM,EAAM,CAAC,CAAC,EAAkC,SAAgB,EAAgB,EAAE,CAAC,MAAO,KAAQ,EAA+BD,EAAwC,CAAQC,EAAK,EAAE,CAAC,GAAG,EAAM,GAAG,EAAY,EAAM,CAAC,CAAC,EAA8C,SAAgB,EAAU,EAAE,CAAC,MAAO,KAAQ,EAA+BD,EAAwC,CAAQC,EAAK,EAAE,CAAC,GAAG,EAAM,GAAG,EAAM,EAAM,CAAC,CAAC,EAAkC,SAAgB,EAAiB,EAAE,CAAC,MAAO,KAAQ,EAA+BD,EAAwC,CAAQC,EAAK,EAAE,CAAC,GAAG,EAAM,GAAG,EAAa,EAAM,CAAC,CAAC,EAAgD,SAAgB,EAAc,EAAE,CAAC,MAAO,KAAQ,EAA+BD,EAAwC,CAAQC,EAAK,EAAE,CAAC,GAAG,EAAM,GAAG,EAAU,EAAM,CAAC,CAAC,EAA0C,SAAgB,EAAU,EAAE,CAAC,MAAO,KAAQ,EAA+BD,EAAwC,CAAQC,EAAK,EAAE,CAAC,GAAG,EAAM,GAAG,EAAM,EAAM,CAAC,CAAC,EAAkC,SAAgB,EAAe,EAAE,CAAC,MAAO,KAAQ,EAA+BD,EAAwC,CAAQC,EAAK,EAAE,CAAC,GAAG,EAAM,GAAG,EAAW,EAAM,CAAC,CAAC,mBANz8F,IAA8B,IAA6H,IAAwH,IAA2H,IAMstC,CAAiK,EAAU,YAAY,QAAqL,EAAgB,YAAY,cAA+K,EAAU,YAAY,QAAuL,EAAiB,YAAY,eAAwL,EAAc,YAAY,YAA6K,EAAU,YAAY,QAAmL,EAAe,YAAY"}