@spicenet-io/spiceflow-ui 3.3.6 → 3.3.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/dist/Button-CkSwrat1.js +2 -0
  2. package/dist/Button-jx5yrM-s.js +2 -0
  3. package/dist/auth-dynamic.cjs.js +1 -1
  4. package/dist/auth-dynamic.js +1 -1
  5. package/dist/auth-privy.cjs.js +1 -1
  6. package/dist/auth-privy.js +1 -1
  7. package/dist/components/AccountDisplay/{parts/AccountCustomSection.d.ts → AccountCustomSection.d.ts} +2 -2
  8. package/dist/components/AccountDisplay/{parts/AccountHeader.d.ts → AccountHeader.d.ts} +1 -1
  9. package/dist/components/AccountDisplay/{parts/AccountIdleBalances.d.ts → AccountIdleBalances.d.ts} +2 -2
  10. package/dist/components/AccountDisplay/{parts/AccountPanel.d.ts → AccountPanel.d.ts} +3 -3
  11. package/dist/components/AccountDisplay/{parts/AccountPendingDeposits.d.ts → AccountPendingDeposits.d.ts} +2 -2
  12. package/dist/components/AccountDisplay/types.d.ts +0 -1
  13. package/dist/components/AssetSelector/{parts/AssetDropdown.d.ts → AssetDropdown.d.ts} +1 -1
  14. package/dist/components/AssetSelector/{parts/ChainIcon.d.ts → ChainIcon.d.ts} +1 -1
  15. package/dist/components/AssetSelector/{parts/TokenIcon.d.ts → TokenIcon.d.ts} +1 -1
  16. package/dist/components/AssetSelector/index.d.ts +3 -3
  17. package/dist/components/ProviderLogins/{parts/DynamicLogin.d.ts → DynamicLogin.d.ts} +1 -1
  18. package/dist/components/ProviderLogins/{parts/PrivyLogin.d.ts → PrivyLogin.d.ts} +1 -1
  19. package/dist/components/ProviderLogins/index.d.ts +2 -4
  20. package/dist/components/SpiceBalance/index.d.ts +2 -2
  21. package/dist/components/SpiceDeposit/{steps/ConnectWalletModal.d.ts → ConnectWalletModal.d.ts} +1 -1
  22. package/dist/components/SpiceDeposit/{steps/DepositModal.d.ts → DepositModal.d.ts} +1 -1
  23. package/dist/components/SpiceDeposit/{steps/DepositRecoveryPrompt.d.ts → DepositRecoveryPrompt.d.ts} +1 -1
  24. package/dist/components/SpiceDeposit/{steps/DepositStatusModal.d.ts → DepositStatusModal.d.ts} +3 -3
  25. package/dist/components/SpiceDeposit/{steps/SelectChainModal.d.ts → SelectChainModal.d.ts} +1 -1
  26. package/dist/components/SpiceDeposit/{steps/SelectTokenModal.d.ts → SelectTokenModal.d.ts} +1 -1
  27. package/dist/components/SpiceDeposit/{lib/depositBatches.d.ts → depositBatches.d.ts} +3 -3
  28. package/dist/components/SpiceDeposit/{lib/executors.d.ts → executors.d.ts} +3 -3
  29. package/dist/components/SpiceDeposit/{lib/feePreview.d.ts → feePreview.d.ts} +1 -1
  30. package/dist/components/SpiceDeposit/index.d.ts +3 -3
  31. package/dist/components/SpiceDeposit/views/DepositSubtitle.d.ts +9 -0
  32. package/dist/components/SpiceLock/{parts/LockConfirmationPanel.d.ts → LockConfirmationPanel.d.ts} +1 -1
  33. package/dist/components/SpiceLock/{parts/LockDurationSlider.d.ts → LockDurationSlider.d.ts} +1 -1
  34. package/dist/components/SpiceLock/{parts/LockExpiryRow.d.ts → LockExpiryRow.d.ts} +1 -1
  35. package/dist/components/SpiceLock/{parts/VotingPowerRow.d.ts → VotingPowerRow.d.ts} +1 -1
  36. package/dist/components/SpiceLock/{lib/executors.d.ts → executors.d.ts} +14 -13
  37. package/dist/components/SpiceLock/{lib/helpers.d.ts → helpers.d.ts} +2 -2
  38. package/dist/components/SpiceSupply/{parts/DestinationEstimate.d.ts → DestinationEstimate.d.ts} +2 -2
  39. package/dist/components/SpiceSupply/{parts/SupplyEstimate.d.ts → SupplyEstimate.d.ts} +1 -1
  40. package/dist/components/SpiceSupply/{lib/buildBatches.d.ts → buildBatches.d.ts} +10 -8
  41. package/dist/components/SpiceSupply/executors.d.ts +73 -0
  42. package/dist/components/SpiceSupply/{lib/feePreview.d.ts → feePreview.d.ts} +11 -9
  43. package/dist/components/SpiceWithdraw/{parts/SelectPopover.d.ts → SelectPopover.d.ts} +1 -1
  44. package/dist/components/SpiceWithdraw/executors.d.ts +50 -0
  45. package/dist/components/StatusDisplay/{parts/StatusIcon.d.ts → StatusIcon.d.ts} +1 -1
  46. package/dist/components/StatusDisplay/{parts/StatusPanel.d.ts → StatusPanel.d.ts} +1 -1
  47. package/dist/components/StatusDisplay/{parts/StepItem.d.ts → StepItem.d.ts} +1 -1
  48. package/dist/components/StatusDisplay/index.d.ts +2 -3
  49. package/dist/hooks/useSpiceExecution.d.ts +0 -1
  50. package/dist/index.cjs.js +14 -14
  51. package/dist/index.d.ts +1 -2
  52. package/dist/index.js +14 -14
  53. package/dist/{providerWallet-Ddncx8s5.js → providerWallet-6FpyLYqw.js} +1 -1
  54. package/dist/{providerWallet-B7SytehJ.js → providerWallet-Ds1PM0vC.js} +1 -1
  55. package/dist/providers/SpiceFlowProvider.d.ts +2 -0
  56. package/dist/providers/dynamic.d.ts +2 -2
  57. package/dist/providers/privy.d.ts +2 -2
  58. package/dist/types/deposit.d.ts +0 -3
  59. package/dist/types/lock.d.ts +0 -2
  60. package/dist/types/supply.d.ts +0 -15
  61. package/dist/types/withdraw.d.ts +0 -1
  62. package/package.json +2 -2
  63. package/dist/Button-E8Ln6miF.js +0 -2
  64. package/dist/Button-RzLL2mKv.js +0 -2
  65. package/dist/components/SpiceSupply/lib/executors.d.ts +0 -67
  66. package/dist/components/SpiceWithdraw/lib/executors.d.ts +0 -34
  67. package/dist/execution/gasless.d.ts +0 -7
  68. package/dist/execution/pollIntentStep.d.ts +0 -28
  69. package/dist/utils/spiceConstants.d.ts +0 -3
  70. /package/dist/components/AccountDisplay/{parts/AccountActions.d.ts → AccountActions.d.ts} +0 -0
  71. /package/dist/components/SpiceBalance/{parts/AccountItem.d.ts → AccountItem.d.ts} +0 -0
  72. /package/dist/components/SpiceBalance/{parts/BalanceSection.d.ts → BalanceSection.d.ts} +0 -0
  73. /package/dist/components/SpiceDeposit/{parts/ModalHeader.d.ts → ModalHeader.d.ts} +0 -0
  74. /package/dist/components/SpiceDeposit/{parts/DepositAssetChooser.d.ts → views/AssetChooserList.d.ts} +0 -0
  75. /package/dist/components/SpiceWithdraw/{lib/helpers.d.ts → helpers.d.ts} +0 -0
  76. /package/dist/components/SpiceWithdraw/{parts/WithdrawBalancePopover.d.ts → views/BalancePopover.d.ts} +0 -0
  77. /package/dist/components/SpiceWithdraw/{parts → views}/WithdrawDetailsPanel.d.ts +0 -0
package/dist/index.cjs.js CHANGED
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- "use strict";var nr=Object.create;var Ts=Object.defineProperty;var sr=Object.getOwnPropertyDescriptor;var or=Object.getOwnPropertyNames;var rr=Object.getPrototypeOf,ar=Object.prototype.hasOwnProperty;var ir=(e,n,s,o)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of or(n))!ar.call(e,r)&&r!==s&&Ts(e,r,{get:()=>n[r],enumerable:!(o=sr(n,r))||o.enumerable});return e};var rn=(e,n,s)=>(s=e!=null?nr(rr(e)):{},ir(n||!e||!e.__esModule?Ts(s,"default",{value:e,enumerable:!0}):s,e));const t=require("react/jsx-runtime"),d=require("react"),$n=require("lucide-react"),m=require("./Button-RzLL2mKv.js"),ft=require("wagmi"),W=require("@spicenet-io/spiceflow-core"),M=require("viem"),It=require("viem/actions"),At=require("@privy-io/react-auth"),wn=require("@dynamic-labs/sdk-react-core"),Zt=require("./providerWallet-Ddncx8s5.js"),vn=require("react-dom"),lr=require("./auth-privy.cjs.js");var fn=typeof document<"u"?document.currentScript:null;const dr="https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@100;200;300;400;500;600;700&display=swap",cr="spiceflow-ibm-plex-mono",ur="spiceflow-preconnect-googleapis",pr="spiceflow-preconnect-gstatic";function _n(e,n){if(document.getElementById(e))return;const s=n();s.id=e,document.head.appendChild(s)}function fr(){typeof document>"u"||(_n(ur,()=>{const e=document.createElement("link");return e.rel="preconnect",e.href="https://fonts.googleapis.com",e}),_n(pr,()=>{const e=document.createElement("link");return e.rel="preconnect",e.href="https://fonts.gstatic.com",e.crossOrigin="",e}),_n(cr,()=>{const e=document.createElement("link");return e.rel="stylesheet",e.href=dr,e}))}const dn={base:0,raised:1,sticky:10,overlay:20,popover:40,modal:1e3,dropdown:1100,toast:1200,tooltip:1300},es={none:"0",sm:"4px",md:"6px",card:"8px",input:"10px",shell:"9px",modal:"12px",pill:"9999px",circle:"50%"},bt={out:"cubic-bezier(0.22, 1, 0.36, 1)",inOut:"cubic-bezier(0.65, 0, 0.35, 1)",linear:"linear"},Rt={fast:"120ms",normal:"150ms",slow:"300ms",progress:"400ms"},Mt={interactive:`transform ${Rt.normal} ${bt.out}, box-shadow ${Rt.normal} ${bt.out}, background-color ${Rt.normal} ${bt.out}, border-color ${Rt.normal} ${bt.out}, color ${Rt.normal} ${bt.out}`,color:`background-color ${Rt.normal} ${bt.out}, border-color ${Rt.normal} ${bt.out}, color ${Rt.normal} ${bt.out}`,popover:`opacity ${Rt.normal} ${bt.out}, transform ${Rt.normal} ${bt.out}`},Rs={ui:'"Helvetica Neue", sans-serif',mono:'"IBM Plex Mono", monospace'},ts=({value:e,onChange:n,ariaLabel:s,placeholder:o,endAdornment:r,size:a="lg",dark:i,styles:c,inputRef:l,autoFocus:u})=>{const{dark:p,dk:f}=m.useSpiceBrand(c,i),x=i??p,h=a==="lg",g=h?"15px":"14px",b=h?"7px":"10px",C=h?es.input:es.sm,y=c?.fontFamily||Rs.ui,w=x?f.inputBg:"#FAFAFA",v=x?f.inputBorder:"#e5e7eb",k=x?f.textPrimary:"#374151",A=x?f.textSecondary:"#9ca3af";return t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",backgroundColor:w,borderRadius:C,boxShadow:x?"0 2px 4px rgba(0, 0, 0, 0.3)":"0 2px 4px rgba(0, 0, 0, 0.1)",padding:`${b} 5px`,border:`1px solid ${v}`},children:[t.jsx($n.Search,{style:{color:A},size:24}),t.jsx("input",{ref:l,type:"text",role:"searchbox","aria-label":s,autoComplete:"off",spellCheck:!1,autoFocus:u,"data-spiceflow-focus":!0,placeholder:o,value:e,onChange:S=>n(S.target.value),style:{flex:1,backgroundColor:w,outline:"none",border:"none",color:k,fontSize:g,fontWeight:400,fontFamily:y}}),r]})},ns=typeof process<"u"&&process.env?.NEXT_PUBLIC_MORALIS_API_KEY||typeof{url:typeof document>"u"?require("url").pathToFileURL(__filename).href:fn&&fn.tagName.toUpperCase()==="SCRIPT"&&fn.src||new URL("index.cjs.js",document.baseURI).href}<"u"&&void 0||"",hr="https://deep-index.moralis.io/api/v2.2",mr=async(e,n)=>{try{const s=m.getChainsForAssets(),o=m.getClientForChain(n),r=await It.getBalance(o,{address:e}),a=s[n],i=parseFloat((Number(r)/Math.pow(10,18)).toFixed(6)),c=m.getChainConfig(n),l=c?.supportedTokens?.find(u=>W.isNativeToken(u.address));return{address:W.ZERO_ADDRESS,name:a.chain.nativeCurrency.name,symbol:a.chain.nativeCurrency.symbol,decimals:a.chain.nativeCurrency.decimals,balance:r,balanceFormatted:i,balanceUsd:0,logoURI:l?.logo||c?.logo,isNative:!0,chainId:n}}catch{const s=m.getChainsForAssets(),o=m.getChainConfig(n),r=o?.supportedTokens?.find(a=>W.isNativeToken(a.address));return{address:W.ZERO_ADDRESS,name:s[n].chain.nativeCurrency.name,symbol:s[n].chain.nativeCurrency.symbol,decimals:18,balance:BigInt(0),balanceFormatted:0,balanceUsd:0,logoURI:r?.logo||o?.logo,isNative:!0,chainId:n}}},Ms=async(e,n,s,o,r,a)=>{try{if(!M.isAddress(s))return null;const i=M.getAddress(s),c=M.isAddress(e)?M.getAddress(e):e,l=m.getClientForChain(n),u=await It.readContract(l,{address:i,abi:m._,functionName:"balanceOf",args:[c]}),p=parseFloat((Number(u)/Math.pow(10,a)).toFixed(6));return p>0?{address:i,name:o,symbol:r,decimals:a,balance:u,balanceFormatted:p,balanceUsd:0,logoURI:void 0,isNative:!1,chainId:n}:null}catch(i){return i?.message?.includes("checksum")||i?.message?.includes("Address")||i?.message?.includes("invalid"),null}},Ds=(e,n)=>{const s=m.getChainConfig(n);if(!s)return e;const o=new Set(e.map(a=>a.address.toLowerCase())),r=e.some(a=>a.isNative);for(const a of s.supportedTokens||[])W.isNativeToken(a.address)&&r||o.has(a.address.toLowerCase())||e.push({address:a.address,name:a.name,symbol:a.symbol,decimals:a.decimals,balance:BigInt(0),balanceFormatted:0,balanceUsd:0,logoURI:a.logo,isNative:W.isNativeToken(a.address),chainId:n});if(!e.find(a=>a.isNative)){const a=s.supportedTokens?.find(i=>W.isNativeToken(i.address));e.push({address:W.ZERO_ADDRESS,name:s.nativeCurrency.name,symbol:s.nativeCurrency.symbol,decimals:s.nativeCurrency.decimals,balance:BigInt(0),balanceFormatted:0,balanceUsd:0,logoURI:a?.logo||s.logo,isNative:!0,chainId:n})}return e},xr=async(e,n)=>{const s=[],o=await mr(e,n);o.balanceFormatted>0&&s.push(o);const r=(m.getChainConfig(n)?.supportedTokens||[]).filter(a=>!W.isNativeToken(a.address));if(r.length>0)try{const a=m.getClientForChain(n),i=M.getAddress(e),c=r.filter(f=>M.isAddress(f.address)).map(f=>({address:M.getAddress(f.address),abi:m._,functionName:"balanceOf",args:[i]})),l=await a.multicall({contracts:c}),u=r.filter(f=>M.isAddress(f.address)),p=[];l.forEach((f,x)=>{if(f.status==="success"){const h=f.result;if(h&&h>0n){const g=u[x],b=parseFloat((Number(h)/Math.pow(10,g.decimals)).toFixed(6));b>0&&s.push({address:M.getAddress(g.address),name:g.name,symbol:g.symbol,decimals:g.decimals,balance:h,balanceFormatted:b,balanceUsd:0,logoURI:g.logo,isNative:!1,chainId:n})}}else p.push(u[x])});for(const f of p){const x=await Ms(e,n,f.address,f.name,f.symbol,f.decimals);x&&(x.logoURI=f.logo,s.push(x))}}catch{for(const a of r){const i=await Ms(e,n,a.address,a.name,a.symbol,a.decimals);i&&(i.logoURI=a.logo,s.push(i))}}return{tokens:Ds(s,n),chainId:n}},gr=async(e,n)=>{const s=m.getChainsForAssets()[n];if(!s?.moralisName)throw new Error(`Moralis unsupported for chain ${n}`);if(!ns)throw new Error("MORALIS_API_KEY is missing");const o=[],r=(await(await import("axios")).default.get(`${hr}/wallets/${e}/tokens`,{params:{chain:s.moralisName},headers:{"X-API-Key":ns}})).data?.result||[];for(const a of r){const i=a.token_address,c=!!a.native_token||W.isNativeToken(i);if(!c&&!M.isAddress(i))continue;const l=parseInt(a.decimals||"18",10)||18,u=a.balance||"0",p=parseFloat(a.balance_formatted||(Number(u)/Math.pow(10,l)).toString());p<=0||o.push({address:c?W.ZERO_ADDRESS:M.getAddress(i),name:a.name||"Unknown",symbol:a.symbol||"UNKNOWN",decimals:l,balance:BigInt(u),balanceFormatted:p,balanceUsd:parseFloat(a.usd_value||"0"),logoURI:a.logo,isNative:c,chainId:n})}return{tokens:Ds(o,n),chainId:n}},Ws=async(e,n)=>{try{if(m.getChainsForAssets()[n]?.moralisName&&ns)try{return await gr(e,n)}catch{}return await xr(e,n)}catch{return{tokens:[],chainId:n}}},ss=async(e,n)=>{if(!e)throw new Error("Wallet address is required");const s=m.getChainsForAssets(),o=n&&n.length>0?new Set(n):null,r=Object.keys(s).map(Number).filter(c=>!o||o.has(c)),a=await Promise.allSettled(r.map(c=>Ws(e,c))),i={};return a.forEach((c,l)=>{c.status==="fulfilled"&&(i[r[l]]=c.value)}),i},os=({address:e,supportedChains:n,fetchBalances:s,refreshInterval:o=0})=>{const[r,a]=d.useState([]),[i,c]=d.useState(!1),[l,u]=d.useState(null),p=d.useRef(!0),f=d.useRef(e),x=d.useRef(n),h=d.useRef(s);d.useEffect(()=>{f.current=e,x.current=n,h.current=s},[e,n,s]);const g=d.useCallback(async()=>{const y=f.current,w=x.current;if(!y){a([]);return}p.current&&c(!0),u(null);try{const v=m.getChainsForAssets(),k=Object.keys(v).map(Number).filter(S=>w.includes(S)),A=(await Promise.allSettled(k.map(async S=>{try{const T=await Ws(y,S);return T.tokens.map(N=>({...N,chainId:T.chainId}))}catch(T){return console.error(`Error fetching assets for chain ${S}:`,T),[]}}))).filter(S=>S.status==="fulfilled").flatMap(S=>S.value);a(A)}catch(v){const k=v instanceof Error?v.message:"Failed to fetch assets";u(k)}finally{p.current&&(c(!1),p.current=!1)}},[]),b=d.useCallback(y=>r.filter(w=>w.chainId===y),[r]),C=d.useCallback(()=>r.filter(y=>y.isNative),[r]);return d.useEffect(()=>{e&&(p.current=!0,g())},[e,g]),d.useEffect(()=>{if(!e||!o)return;const y=setInterval(()=>{g()},o);return()=>clearInterval(y)},[e,o]),{assets:r,loading:i,error:l,refreshAssets:g,getAssetsByChain:b,getNativeAssets:C}},an=(e,n=4)=>!isFinite(e)||e===0?"0":e<1e-4?"< 0.0001":e.toFixed(n),hn=e=>isFinite(e)?e>0&&e<.01?"<$0.01":new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",minimumFractionDigits:2,maximumFractionDigits:2}).format(e):"$0.00",yr=(e,n=6,s=4)=>e.length<=n+s?e:`${e.slice(0,n)}...${e.slice(-s)}`,Ns=e=>{const n=e.replace(/[^0-9.]/g,""),s=n.split(".");return s.length>2?s[0]+"."+s.slice(1).join(""):n},kn=(e,n=6)=>!Number.isFinite(e)||e<=0?"0":e.toFixed(Math.min(Math.max(n,0),18)).replace(/\.?0+$/,""),Cr=async e=>{try{return await navigator.clipboard.writeText(e),!0}catch(n){return console.error("Failed to copy to clipboard:",n),!1}};var Ps="data:image/png;base64,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",rs="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAQlBMVEVMaXGGl/+Elf+HmP+Hmf+Hl/+Gl/+Flv+Glv+Gl/+Gl/+Gl/////+On/+Akv/4+f/v8f/i5v+9x//S2P+tuP+erP+W3PvUAAAAC3RSTlMArBlx7Isy/vvOXbb4wDYAAAAJcEhZcwAACxMAAAsTAQCanBgAAALuSURBVHjarVfbtqsgDOxu0UBpkOv//+pJRC0i2HZ58uTeqzOEyYXkduvY/Tn8KSEBpFB/w3O8/WTjoCSS6dn4S6rha477QxFGS0nHM56ckJL/ox73b+CDQAQJujKiQxTDR4qH4LN109gP8Ti/uyI46K4BUagTLZ4Cz+CZAsWzhx/oeP3RyImhjf/7ePzmxF8Hr7+zNsP3eL7GkWH4Bc8MlQ7P3/DMsIvFKHRLPzBsTWVBizIfVNMBg9H7mLQxTRdUkb9tfJxebNZjywuJW1bf2xcw4WXtzDF5bVqXuJ9HwETHNnPYeHRii0THgcwQyBxTBDQ9Fx7dEBr0TOCDYyeS6aigsFsCQIFgBh9YiVgxQA7EqM9KiCiS95nh5WsGPZ4k8ZZFRqfoY4shy9i8AaExxRgTMgcApuSODPMdRtn02wc7Z9HkPMsPa1ZVOsiRygga4udfZ5vTKKx/7GIBVFJHCUy0r705DNu3LQ9kEQ6NxMTXwWzhUTD7xlJr2MLvrZCBVazy2OD0iaC4BGh1k4cSLOSbbIuujKW4wT76aYefrGswuBJSEoBeUnaFk7nQcKEIJZRXMPsfM95O3p3KKAoRa/cJTh0pHKMybSqyiO8wMsG0wzODi7UK9u0Ah7FIJAj1+UyQcl4Gqi2uax+L/siJVKQyi+j251sbMoHTZrUqlctiojDGRX27WpivYNtdi4upKme0c/gXBmdzY7ZoOi/cWDeU7MJy+oKn3hzbT9/cFKt6pmKe9udnCoTeG103VW7EjrGZJMOD863GNzfVQ0EDP6aJUH61wBRHGZa23npYDDpuh8EnpPBRS6UUQOg9r8enzaDdmhmsPkH/da3bokkr/i0dwMmYU7lg0pRrwiVzNrW+n/dKhVzVVIbGnE9Jj86IA8glk87h+xGnGrJyzXwYNvdD1uUx7/qgeX3UvT5sXx/3ry8c11ee60vX9bXvvXjWfsC3i+d79YV19+WPH1bf/7B8Lxy8/isBINTp+v8Ph4CTcAywkiYAAAAASUVORK5CYII=",br="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAPFBMVEVMaXGZhueZh+eYhuWXheWYh+eYhuaXheCYhuaah+j//fmhjvOSf+Sdi+q8sOzNxO/m4fT08fapmuja0/Jb/wGxAAAACnRSTlMArEz/IYtsA87sGIEBYwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAmJJREFUeNqtV4uSgyAMRIECGhTk///1otTKG3s2Mzdz03aXbEJIQkhuYv9jIx+komhKDnxk4v1F1wT+SoxcUj3PWu8Ex39U8lH4bzt4QthL6tlDA8OP5Iv1vMADGFc5+uRQnDWdEES81EwbNquXqDuBx8va6ZcXktUYBOkc/3GixsBvwA8neFGGGO7hdyeGAsMXeM/wBJ8ziLv6LwYeisD4f4lHhiAXmH9FvzYV3AchOw6At9gFKW4KANDbsttGoSyCKd1Ab4uxkzezhBQaRfQygHB3oj2FhjwT9QgifErM6jiOrQgAXe2UmcuiIKSuHG+mki2XCH0kYqzgF1vETyYszLFaxLBMNdsgDGNFAazRoUcwrDMlDYz28RS0newGcCRlDa8TK4YgxuORGj9x8NYVEsxjKQSp/pNAw5YRcJI/JP5nYeqxjAxeIfCeRQQDyWOos/y5xR2V4NIgYhRJVkjgpralBPcvQH4PsBxIX0DjJqKRdgYLtsYPUyqh60CsACXEQew7ECvAICZp7DqwQEIQXaR+CkzaoeKr3FewQdqg4mIy36VgLyZWz4G96N5vs8sKj0UPSlJGy4fAbWX88SgGQYgJVjDXi7JaaxYo9Oj4UQ0lrHCGdN25ceiEfNoZSfIomjhcKN26DarT0q4gaiyfe2C9u9hWNUBvRghbG+yd1AZNFFrjmu+ucXMF2j60OObE7f0m+mrv/5qQkimpO+IU8fKXQ9bDMe/5oPl81P3BsP183EeGu3GoLBw/WHnuLF20sXQ9X/ueL57PV99w+Z7P5Vvj8j3fXr7j9X/f/5Vsrv9/K3NM7mGXOq0AAAAASUVORK5CYII=",as="data:image/svg+xml,%3csvg width='8' height='11' viewBox='57 6 8 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3e %3cpath d='M62.7081 13.27C62.742 13.27 62.7642 13.3057 62.7491 13.3362V13.336L61.1229 16.6083C61.0892 16.6761 60.9926 16.6759 60.959 16.6083L59.3382 13.336C59.3232 13.3057 59.3453 13.27 59.3792 13.27H62.7081Z' fill='%23EA4B4B'/%3e %3cpath d='M61.0026 9.71913C61.0194 9.68524 61.0678 9.68524 61.0845 9.71913L62.747 13.0897C62.762 13.12 62.7399 13.1557 62.706 13.1557H59.3763C59.3424 13.1557 59.3203 13.12 59.3353 13.0897L61.0026 9.71913Z' fill='%23EA4B4B'/%3e %3cpath d='M60.8426 9.63827C60.8766 9.63827 60.8987 9.6741 60.8835 9.70444L59.2164 13.0594C59.1995 13.0932 59.1513 13.0932 59.1345 13.0594L57.5001 9.77047C57.47 9.70962 57.5142 9.63827 57.5821 9.63827H60.8426Z' fill='%23EA4B4B'/%3e %3cpath d='M64.5036 9.63617C64.5715 9.63618 64.6157 9.70753 64.5855 9.76838H64.5854L62.9512 13.0573C62.9344 13.0911 62.8862 13.0912 62.8692 13.0573L61.2021 9.70235C61.187 9.672 61.2091 9.63617 61.2431 9.63617H64.5036Z' fill='%23EA4B4B'/%3e %3cpath d='M62.8284 6.18281C62.862 6.11518 62.9586 6.11518 62.9922 6.18281L64.5855 9.38969C64.6157 9.45054 64.5715 9.52189 64.5036 9.52189H61.2431C61.2091 9.52189 61.187 9.48605 61.2021 9.45571L62.8283 6.18265L62.8284 6.18281Z' fill='%23EA4B4B'/%3e %3cpath d='M62.3131 6.13196C62.381 6.13196 62.4252 6.20331 62.3951 6.26416C62.154 6.74935 61.9128 7.23455 61.6718 7.71975H61.6716C61.4225 8.22125 61.1733 8.72259 60.9242 9.22409C60.9074 9.25799 60.859 9.25799 60.8422 9.22409L60.6305 8.79587C60.6275 8.78957 60.6259 8.78263 60.6259 8.77553V6.22349C60.6259 6.17297 60.6668 6.13196 60.7173 6.13196H62.3131Z' fill='%23EA4B4B'/%3e%3c/svg%3e";const Kt=W.getChainMeta(1)?.logo??"";W.getChainMeta(42161)?.logo;const Sn=W.TOKENS.find(e=>e.symbol==="USDC")?.logo??"";W.TOKENS.find(e=>e.symbol==="WBTC")?.logo;const Nt=Object.fromEntries([...W.getMainnetChains(),...W.getTestnetChains()].map(e=>[e.id,e.logo])),In={metamask:Ps,metaMask:Ps,rabby:rs,phantom:br},wr=Object.fromEntries(W.TOKENS.map(e=>[e.symbol,e.logo])),is=({symbol:e,logoURI:n,size:s=20,theme:o})=>{const{theme:r}=m.useSpiceBrand(),a=o||r,[i,c]=d.useState(!1),l={width:`${s}px`,height:`${s}px`,borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",fontSize:`${s*.4}px`,fontWeight:a.typography.fontWeight.bold,flexShrink:0,overflow:"hidden",backgroundColor:"#ffffff"},u=e.toUpperCase(),p=n||wr[u];if(p&&!i)return t.jsx("img",{src:p,alt:e,loading:"lazy",decoding:"async",style:{...l,objectFit:"cover"},onError:()=>c(!0)});const f=vr(e);return t.jsx("div",{style:{...l,...f.style},children:f.icon})},vr=e=>{const n=e.toUpperCase(),s={ETH:{bg:"#627EEA",text:"#FFFFFF",icon:"\u039E"},BTC:{bg:"#F7931A",text:"#FFFFFF",icon:"\u20BF"},USDC:{bg:"#2775CA",text:"#FFFFFF"},USDT:{bg:"#26A17B",text:"#FFFFFF"},DAI:{bg:"#F5AC37",text:"#FFFFFF"},WETH:{bg:"#627EEA",text:"#FFFFFF",icon:"\u039E"},WBTC:{bg:"#F09242",text:"#FFFFFF",icon:"\u20BF"},CBTC:{bg:"#F7931A",text:"#FFFFFF",icon:"\u20BF"},USD:{bg:"#26A17B",text:"#FFFFFF",icon:"$"},MATIC:{bg:"#8247E5",text:"#FFFFFF"},AVAX:{bg:"#E84142",text:"#FFFFFF"},SOL:{bg:"#9945FF",text:"#FFFFFF"},DOT:{bg:"#E6007A",text:"#FFFFFF"},ADA:{bg:"#0033AD",text:"#FFFFFF"},LINK:{bg:"#375BD2",text:"#FFFFFF"},UNI:{bg:"#FF007A",text:"#FFFFFF"},AAVE:{bg:"#B6509E",text:"#FFFFFF"},CRV:{bg:"#40E0D0",text:"#000000"}}[n];if(s)return{style:{backgroundColor:s.bg,color:s.text},icon:s.icon||n.charAt(0)};const o=n.split("").reduce((c,l)=>l.charCodeAt(0)+((c<<5)-c),0),r=Math.abs(o)%360,a=`hsl(${r}, 60%, 50%)`,i=r>180?"#FFFFFF":"#000000";return{style:{backgroundColor:a,color:i},icon:n.charAt(0)}},ls=({chainId:e,name:n,size:s=16})=>{const o=e&&(Nt[e]||W.getChainMeta(e)?.logo)||"";return o?t.jsx("img",{src:o,alt:n||`Chain ${e}`,loading:"lazy",decoding:"async",width:s,height:s,style:{width:`${s}px`,height:`${s}px`,borderRadius:"50%",objectFit:"cover",flexShrink:0}}):null};function ds(e){return e.displaySymbol||e.symbol}function kr(e){return e.displayName||e.displaySymbol||e.name||e.symbol}function cs(e){return e.displayChainName||m.getChainName(e.chainId)}const Sr=({selectedAsset:e,assets:n,onAssetSelect:s,showDropdown:o,onToggleDropdown:r,disabled:a=!1,theme:i,onViewAllAssets:c})=>{const{theme:l}=m.useSpiceBrand(),u=i||l,p=d.useRef(null),f=d.useRef(null),x=d.useRef(null),[h,g]=d.useState(null);d.useEffect(()=>{if(o&&f.current){const B=()=>{if(f.current){const U=f.current.getBoundingClientRect();g({top:U.bottom+6,right:window.innerWidth-U.right})}};return B(),window.addEventListener("scroll",B,!0),window.addEventListener("resize",B),()=>{window.removeEventListener("scroll",B,!0),window.removeEventListener("resize",B)}}else g(null)},[o]),d.useEffect(()=>{const B=U=>{p.current&&!p.current.contains(U.target)&&x.current&&!x.current.contains(U.target)&&o&&r()};return o&&document.addEventListener("mousedown",B),()=>{document.removeEventListener("mousedown",B)}},[o,r]);const[b,C]=d.useState(!1),y=u.mode==="light",w={backgroundColor:"transparent",border:`1px solid ${y?"#aaaaaa":u.colors.border}`,borderRadius:"6px",color:u.colors.text,cursor:a?"not-allowed":"pointer",padding:"8px 14px 8px 10px",width:"100%",display:"flex",flexDirection:"column",gap:"4px",opacity:a?.6:1,transition:Mt.interactive,transform:b?"scale(0.98)":"scale(1)"},v={display:"flex",justifyContent:"space-between",alignItems:"center",gap:"10px",minWidth:0},k={display:"flex",alignItems:"center",gap:"4px",paddingTop:"4px",borderTop:`1px solid ${u.colors.border}`},A=()=>h?{position:"fixed",top:`${h.top}px`,right:`${h.right}px`,backgroundColor:u.colors.secondary,border:`1px solid ${u.colors.border}`,borderRadius:u.borderRadius.md,boxShadow:u.shadows.lg,zIndex:dn.dropdown,width:"200px",maxHeight:"300px",overflow:"auto"}:{},S={backgroundColor:"transparent",border:"none",color:u.colors.text,cursor:"pointer",padding:u.spacing.sm,width:"100%",display:"flex",alignItems:"center",gap:u.spacing.sm,transition:`background-color ${u.animation.normal}`,":hover":{backgroundColor:u.colors.surfaceHover}},T={display:"flex",flexDirection:"column",alignItems:"flex-start",flex:1},N={fontSize:u.typography.fontSize.sm,fontWeight:u.typography.fontWeight.medium},I={fontSize:u.typography.fontSize.xs,color:u.colors.textMuted},E={backgroundColor:"transparent",border:"none",borderTop:`1px solid ${u.colors.border}`,color:u.colors.primary,cursor:"pointer",padding:"10px 12px",width:"100%",display:"flex",alignItems:"center",justifyContent:"space-between",gap:"8px",fontFamily:u.typography.fontFamily,fontSize:u.typography.fontSize.xs,fontWeight:u.typography.fontWeight.medium,textDecoration:"underline",textUnderlineOffset:"2px"},j={transition:`transform ${u.animation.normal}`,transform:o?"rotate(180deg)":"rotate(0deg)",flexShrink:0};return t.jsxs(t.Fragment,{children:[t.jsx("div",{style:{position:"relative"},ref:p,children:t.jsxs("div",{ref:f,style:w,onClick:a?void 0:r,onMouseLeave:()=>{C(!1)},onMouseDown:()=>C(!0),onMouseUp:()=>C(!1),children:[t.jsxs("div",{style:v,children:[t.jsx("div",{style:{display:"flex",alignItems:"center",gap:"8px",flex:1,minWidth:0},children:e?.asset?t.jsxs(t.Fragment,{children:[t.jsx(is,{symbol:e.asset.symbol,logoURI:e.asset.logoURI,theme:u,size:24}),t.jsx("span",{style:{fontSize:"15px",fontWeight:500,color:u.colors.text,lineHeight:"1.5",flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:ds(e.asset)})]}):t.jsx("span",{style:{fontSize:"14px",color:u.colors.textMuted},children:"Select"})}),t.jsx("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:y?u.colors.textMuted:"#c7ccd4",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:j,children:t.jsx("path",{d:"M6 9l6 6 6-6"})})]}),e?.asset&&t.jsxs("div",{style:k,children:[!e.asset.displayChainName&&t.jsx(ls,{chainId:e.asset.chainId,theme:u}),t.jsx("span",{style:{fontSize:"11px",color:u.colors.textMuted},children:cs(e.asset)})]})]})}),o&&h&&vn.createPortal(t.jsxs("div",{ref:x,style:A(),children:[n.length===0&&t.jsx("div",{style:{padding:"10px 12px",color:u.colors.textMuted,fontSize:u.typography.fontSize.xs},children:"No assets available"}),n.map(B=>t.jsxs("button",{style:S,onClick:()=>{s(B),r()},children:[t.jsx(is,{symbol:B.symbol,logoURI:B.logoURI,theme:u},`${B.address}-${B.chainId}`),t.jsxs("div",{style:T,children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:u.spacing.xs},children:[t.jsx("span",{style:N,children:ds(B)}),!B.displayChainName&&t.jsx(ls,{chainId:B.chainId,theme:u})]}),t.jsxs("span",{style:I,children:[an(B.balanceFormatted)," \u2022"," ",cs(B)]})]})]},B.receiptTokenId||`${B.address}-${B.chainId}`)),c&&t.jsxs("button",{type:"button",style:E,onClick:()=>{r(),c()},children:[t.jsx("span",{children:"View all assets"}),t.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[t.jsx("path",{d:"M5 12h14"}),t.jsx("path",{d:"M13 5l7 7-7 7"})]})]})]}),document.body)]})},Ir=({assets:e,selectedAsset:n,onAssetSelect:s,onAmountChange:o,disabled:r=!1,loading:a=!1,label:i="Select Asset",showBalance:c=!0,showMaxButton:l=!0,placeholder:u="0.0",theme:p,styles:f,maxAmount:x,hideAmountInput:h=!1,displayAmount:g,dark:b,onViewAllAssets:C})=>{const{theme:y,primaryColor:w,dark:v,dk:k}=m.useSpiceBrand(f,b),A=p||y,S=b??v,[T,N]=d.useState(!1),[I,E]=d.useState(null),[j,B]=d.useState(null),[U,D]=d.useState(n?.amount||""),P=d.useRef(null),L=d.useRef("");d.useEffect(()=>{const Y=n?.asset?n.asset.receiptTokenId||`${n.asset.chainId}-${n.asset.address}`:"";Y!==L.current&&(D(n?.amount||""),L.current=Y)},[n?.asset?.chainId,n?.asset?.address,n?.amount]);const O=Y=>{let X=Y;X.startsWith(".")&&(X="0"+X);const $=Ns(X);if(!$){D($),P.current&&clearTimeout(P.current),P.current=setTimeout(()=>{o($)},300);return}if(x&&parseFloat($)>parseFloat(x)){D(x),P.current&&clearTimeout(P.current),P.current=setTimeout(()=>{o(x)},300);return}if(n?.asset){const re=parseFloat($),ce=n.asset.balanceFormatted,ee=n.asset.decimals;if(!isNaN(re)&&re>ce){const Ie=kn(Math.floor(ce*10**ee)/10**ee,ee);D(Ie),P.current&&clearTimeout(P.current),P.current=setTimeout(()=>{o(Ie)},300);return}}D($),P.current&&clearTimeout(P.current),P.current=setTimeout(()=>{o($)},300)},z=Y=>{if(n?.asset){const X=n.asset.decimals,$=n.asset.balanceFormatted*Y/100;let re=Math.floor($*10**X)/10**X;x&&re>parseFloat(x)&&(re=parseFloat(x));const ce=kn(re,X);D(ce),P.current&&clearTimeout(P.current),o(ce)}},q=n?.asset?.balanceFormatted??0,_=parseFloat(U)||0,K=q>0?_/q*100:0;d.useEffect(()=>()=>{P.current&&clearTimeout(P.current)},[]);const F={backgroundColor:f?.assetSelector?.backgroundColor||f?.secondaryBackground||(S?k.cardBg:"#e9e9e9"),border:S?`0.5px solid ${k.cardBorder}`:"0.5px solid #A8A8A7",borderRadius:f?.assetSelector?.borderRadius||"6px",padding:f?.assetSelector?.padding||"16px",height:"auto",minHeight:h?void 0:"144px",display:"flex",flexDirection:"column",gap:"8px",position:"relative",opacity:r?.6:1};return a?t.jsx("div",{style:F,children:t.jsxs("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"space-between"},children:[t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:[t.jsx("div",{style:{backgroundColor:S?k.hoverBg:"#d1d5db",borderRadius:"4px",height:"16px",width:"60px"}}),t.jsx("div",{style:{backgroundColor:S?k.hoverBg:"#d1d5db",borderRadius:"4px",height:"40px",width:"150px"}})]}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-end",gap:"8px"},children:[t.jsx("div",{style:{backgroundColor:S?k.hoverBg:"#d1d5db",borderRadius:"4px",height:"12px",width:"80px"}}),t.jsx("div",{style:{backgroundColor:S?k.hoverBg:"#d1d5db",borderRadius:"6px",height:"46px",width:"128px"}})]})]})}):t.jsxs("div",{style:F,children:[t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontFamily:f?.fontFamily||A.typography.fontFamily,fontSize:"16px",fontWeight:500,color:S?k.textSecondary:"#7d7c7b",lineHeight:"24px"},children:i}),c&&n?.asset&&t.jsxs("span",{style:{fontFamily:f?.fontFamily||A.typography.fontFamily,fontSize:"12px",fontWeight:500,color:S?k.textSecondary:"#71757a",lineHeight:"16px"},children:["Balance: ",an(n.asset.balanceFormatted)]})]}),t.jsxs("div",{style:{display:"flex",justifyContent:h&&!g?"flex-start":"space-between",alignItems:"center",flex:1},children:[!h&&t.jsx("input",{type:"text",inputMode:"decimal",autoComplete:"off","aria-label":n?.asset?`${n.asset.symbol} amount`:"Amount","data-spiceflow-focus":!0,value:U,onChange:Y=>O(Y.target.value),placeholder:u,disabled:r||!n?.asset,style:{fontFamily:f?.fontFamily||A.typography.fontFamily,fontSize:"40px",fontWeight:700,color:r?S?"rgba(255, 255, 255, 0.16)":"rgba(14, 13, 11, 0.16)":U?S?"#ffffff":"#0e0d0b":S?"#4a5568":"#d1d5db",lineHeight:"1.08",letterSpacing:"-1.2px",backgroundColor:"transparent",border:"none",outline:"none",padding:0,width:"100%",maxWidth:"200px"}}),t.jsx("div",{style:{width:"176px",position:"relative",flexShrink:0},children:t.jsx(Sr,{selectedAsset:n,assets:e,onAssetSelect:s,showDropdown:T,onToggleDropdown:()=>N(!T),disabled:r,theme:A,onViewAllAssets:C})}),h&&g&&t.jsx("span",{style:{fontFamily:f?.fontFamily||A.typography.fontFamily,fontSize:"40px",fontWeight:700,color:S?"#ffffff":"#0e0d0b",lineHeight:"1.08",letterSpacing:"-1.2px",textAlign:"right",flex:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:g})]}),!h&&t.jsx("div",{style:{display:"flex",justifyContent:"flex-end",alignItems:"center",gap:"10px",height:"14px"},children:[0,25,50,75,100].map((Y,X)=>{const $=Math.abs(K-Y)<1,re=X===4,ce=Y/100,ee=I===Y,Ie=j===Y;return t.jsx("button",{onClick:()=>z(Y),onMouseEnter:()=>E(Y),onMouseLeave:()=>{E(null),B(null)},onMouseDown:()=>B(Y),onMouseUp:()=>B(null),disabled:r||!n?.asset,title:`${Y}%`,style:{width:"14px",height:"14px",padding:0,border:"none",backgroundColor:"transparent",cursor:r||!n?.asset?"not-allowed":"pointer",opacity:$?1:ee?.8:.5,transform:Ie?"scale(0.85)":ee?"scale(1.15)":"scale(1)",transition:Mt.interactive},children:t.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",children:[t.jsx("circle",{cx:"7",cy:"7",r:"6.84375",fill:re?w:"none",stroke:re?w:S?"#4a5568":"#3C3E42",strokeWidth:"0.3125"}),!re&&ce>0&&t.jsx("path",{d:`M 7 7 L 7 0.15625 A 6.84375 6.84375 0 ${ce>.5?1:0} 1 ${7+6.84375*Math.sin(ce*2*Math.PI)} ${7-6.84375*Math.cos(ce*2*Math.PI)} Z`,fill:S?k.textSecondary:"#3C3E42"})]})},Y)})})]})},An=Ir,Ar=new Set(["USDC","SUSD","USD","NUSD","USDT","DAI","ENUSD"]),Us={ETH:"ethereum",WETH:"ethereum",BTC:"bitcoin",WBTC:"bitcoin",WCBTC:"bitcoin",CBTC:"bitcoin",ECBTC:"bitcoin",ARB:"arbitrum",MATIC:"matic-network",POL:"matic-network"};let Rn=null;const Er=6e4;async function zs(e){const n={},s=new Set,o={};for(const a of e){const i=a.toUpperCase();if(Ar.has(i))n[i]=1;else if(Us[i]){const c=Us[i];s.add(c),o[i]=c}else n[i]=0}if(s.size===0)return n;const r=Date.now();if(Rn&&r-Rn.timestamp<Er){for(const[a,i]of Object.entries(o))n[a]=Rn.prices[i]??0;return n}try{const a=Array.from(s).join(","),i=await fetch(`https://api.coingecko.com/api/v3/simple/price?ids=${a}&vs_currencies=usd`);if(!i.ok)throw new Error(`CoinGecko ${i.status}`);const c=await i.json(),l={};for(const u of s)l[u]=c[u]?.usd??0;Rn={prices:l,timestamp:r};for(const[u,p]of Object.entries(o))n[u]=l[p]??0}catch(a){console.warn("[fetchTokenPrices] CoinGecko fetch failed:",a);for(const i of Object.keys(o))n[i]=n[i]??0}return n}function jr(e,n){return e.map(s=>{if(s.balanceUsd>0)return s;const o=n[s.symbol.toUpperCase()]??0;return{...s,balanceUsd:s.balanceFormatted*o}})}const Br=new Set(["cbtc","btc","wbtc","wcbtc","tbtc"]),Fr=new Set(["usdc","usdt","dai","usdc.e","usdbc"]);async function Tr(){const e=(await zs(["BTC"])).BTC;if(!e||e<=0)throw new Error("Failed to fetch BTC/USD price");return e}function Rr(e){return Br.has(e.toLowerCase())}function Mr(e){return Fr.has(e.toLowerCase())}function Dr(e,n,s,o){const r=10n**12n,a=BigInt(Math.round(o*Number(r))),i=n-s,c=10n**BigInt(Math.abs(i));let l=e*a/r;return i>0?l=l/c:i<0&&(l=l*c),l}const mn=({size:e=20,strokeWidth:n=2,color:s="currentColor",style:o})=>t.jsxs("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",stroke:s,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",style:o,children:[t.jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),t.jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]});var us="data:image/svg+xml,%3csvg width='108' height='22' viewBox='0 0 108 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M1.9916 11.9854V11.2041H3.98379C4.48835 11.2041 4.87897 11.0739 5.15566 10.8135C5.43236 10.5498 5.5707 10.1868 5.5707 9.72461V9.71484C5.5707 9.24935 5.43236 8.88639 5.15566 8.62598C4.87897 8.36556 4.48835 8.23535 3.98379 8.23535H1.9916V7.4541H4.2084C4.65111 7.4541 5.04173 7.5485 5.38027 7.7373C5.71882 7.92611 5.98411 8.18978 6.17617 8.52832C6.37148 8.86686 6.46914 9.25911 6.46914 9.70508V9.71484C6.46914 10.1608 6.37148 10.5547 6.17617 10.8965C5.98411 11.2383 5.71882 11.5052 5.38027 11.6973C5.04173 11.8893 4.65111 11.9854 4.2084 11.9854H1.9916ZM1.55215 14.5V7.4541H2.43106V14.5H1.55215ZM9.51875 14.5928C9.0207 14.5928 8.58939 14.4837 8.2248 14.2656C7.86348 14.0443 7.58353 13.7301 7.38496 13.3232C7.18965 12.9163 7.09199 12.4329 7.09199 11.873V11.8633C7.09199 11.3001 7.18965 10.8151 7.38496 10.4082C7.58353 10.0013 7.86348 9.6888 8.2248 9.4707C8.58939 9.2526 9.0207 9.14355 9.51875 9.14355C10.0201 9.14355 10.4514 9.2526 10.8127 9.4707C11.174 9.6888 11.4523 10.0013 11.6477 10.4082C11.8462 10.8151 11.9455 11.3001 11.9455 11.8633V11.873C11.9455 12.4329 11.8462 12.9163 11.6477 13.3232C11.4523 13.7301 11.174 14.0443 10.8127 14.2656C10.4514 14.4837 10.0201 14.5928 9.51875 14.5928ZM9.51875 13.8408C9.85078 13.8408 10.1324 13.7627 10.3635 13.6064C10.5946 13.4502 10.7704 13.2256 10.8908 12.9326C11.0145 12.6396 11.0764 12.2865 11.0764 11.873V11.8633C11.0764 11.4466 11.0145 11.0918 10.8908 10.7988C10.7704 10.5059 10.5946 10.2829 10.3635 10.1299C10.1324 9.97363 9.85078 9.89551 9.51875 9.89551C9.18672 9.89551 8.90514 9.97363 8.67402 10.1299C8.4429 10.2829 8.26549 10.5059 8.1418 10.7988C8.02135 11.0918 7.96113 11.4466 7.96113 11.8633V11.873C7.96113 12.2865 8.02135 12.6396 8.1418 12.9326C8.26549 13.2256 8.4429 13.4502 8.67402 13.6064C8.90514 13.7627 9.18672 13.8408 9.51875 13.8408ZM13.7842 14.5L12.3096 9.23633H13.1592L14.1943 13.4453H14.2725L15.4492 9.23633H16.2549L17.4316 13.4453H17.5098L18.5449 9.23633H19.3896L17.915 14.5H17.0605L15.8838 10.4277H15.8057L14.6338 14.5H13.7842ZM22.1658 14.5928C21.6645 14.5928 21.2332 14.4821 20.8719 14.2607C20.5138 14.0394 20.2371 13.7269 20.0418 13.3232C19.8497 12.9163 19.7537 12.4378 19.7537 11.8877V11.8828C19.7537 11.3392 19.8497 10.8623 20.0418 10.4521C20.2371 10.042 20.5122 9.72135 20.867 9.49023C21.2218 9.25911 21.6368 9.14355 22.1121 9.14355C22.5906 9.14355 23.0008 9.25423 23.3426 9.47559C23.6876 9.69694 23.9513 10.0062 24.1336 10.4033C24.3191 10.7972 24.4119 11.2562 24.4119 11.7803V12.1123H20.1932V11.4336H23.9773L23.5574 12.0537V11.7168C23.5574 11.3034 23.4956 10.9632 23.3719 10.6963C23.2482 10.4294 23.0773 10.2308 22.8592 10.1006C22.6411 9.96712 22.3904 9.90039 22.1072 9.90039C21.824 9.90039 21.5701 9.97038 21.3455 10.1104C21.1242 10.2471 20.9484 10.4505 20.8182 10.7207C20.688 10.9909 20.6229 11.3229 20.6229 11.7168V12.0537C20.6229 12.4281 20.6863 12.7487 20.8133 13.0156C20.9402 13.2793 21.1209 13.4827 21.3553 13.626C21.5896 13.766 21.8663 13.8359 22.1854 13.8359C22.423 13.8359 22.6297 13.8034 22.8055 13.7383C22.9813 13.6732 23.1261 13.5902 23.24 13.4893C23.354 13.3883 23.4337 13.2858 23.4793 13.1816L23.4988 13.1377H24.3484L24.3387 13.1768C24.2931 13.3558 24.2117 13.5299 24.0945 13.6992C23.9806 13.8652 23.8325 14.0166 23.6502 14.1533C23.4679 14.2868 23.2514 14.3942 23.0008 14.4756C22.7534 14.5537 22.4751 14.5928 22.1658 14.5928ZM25.4303 14.5V9.23633H26.2799V10.0176H26.358C26.4589 9.74089 26.6298 9.52604 26.8707 9.37305C27.1116 9.22005 27.4094 9.14355 27.7643 9.14355C27.8456 9.14355 27.9254 9.14844 28.0035 9.1582C28.0849 9.16471 28.1467 9.17122 28.1891 9.17773V10.0029C28.1012 9.98665 28.0149 9.97526 27.9303 9.96875C27.8489 9.95898 27.761 9.9541 27.6666 9.9541C27.3964 9.9541 27.1572 10.0078 26.9488 10.1152C26.7405 10.2227 26.5761 10.3724 26.4557 10.5645C26.3385 10.7565 26.2799 10.9811 26.2799 11.2383V14.5H25.4303ZM30.9408 14.5928C30.4395 14.5928 30.0082 14.4821 29.6469 14.2607C29.2888 14.0394 29.0121 13.7269 28.8168 13.3232C28.6247 12.9163 28.5287 12.4378 28.5287 11.8877V11.8828C28.5287 11.3392 28.6247 10.8623 28.8168 10.4521C29.0121 10.042 29.2872 9.72135 29.642 9.49023C29.9968 9.25911 30.4118 9.14355 30.8871 9.14355C31.3656 9.14355 31.7758 9.25423 32.1176 9.47559C32.4626 9.69694 32.7263 10.0062 32.9086 10.4033C33.0941 10.7972 33.1869 11.2562 33.1869 11.7803V12.1123H28.9682V11.4336H32.7523L32.3324 12.0537V11.7168C32.3324 11.3034 32.2706 10.9632 32.1469 10.6963C32.0232 10.4294 31.8523 10.2308 31.6342 10.1006C31.4161 9.96712 31.1654 9.90039 30.8822 9.90039C30.599 9.90039 30.3451 9.97038 30.1205 10.1104C29.8992 10.2471 29.7234 10.4505 29.5932 10.7207C29.463 10.9909 29.3979 11.3229 29.3979 11.7168V12.0537C29.3979 12.4281 29.4613 12.7487 29.5883 13.0156C29.7152 13.2793 29.8959 13.4827 30.1303 13.626C30.3646 13.766 30.6413 13.8359 30.9604 13.8359C31.198 13.8359 31.4047 13.8034 31.5805 13.7383C31.7563 13.6732 31.9011 13.5902 32.015 13.4893C32.129 13.3883 32.2087 13.2858 32.2543 13.1816L32.2738 13.1377H33.1234L33.1137 13.1768C33.0681 13.3558 32.9867 13.5299 32.8695 13.6992C32.7556 13.8652 32.6075 14.0166 32.4252 14.1533C32.2429 14.2868 32.0264 14.3942 31.7758 14.4756C31.5284 14.5537 31.2501 14.5928 30.9408 14.5928ZM36.1486 14.5928C35.7059 14.5928 35.3186 14.4805 34.9865 14.2559C34.6545 14.0312 34.3973 13.7155 34.215 13.3086C34.0328 12.8984 33.9416 12.4199 33.9416 11.873V11.8633C33.9416 11.3132 34.0328 10.8346 34.215 10.4277C34.3973 10.0208 34.6529 9.70508 34.9816 9.48047C35.3137 9.25586 35.7027 9.14355 36.1486 9.14355C36.3895 9.14355 36.6158 9.18262 36.8273 9.26074C37.0422 9.33561 37.2326 9.44141 37.3986 9.57812C37.5647 9.71484 37.6949 9.8776 37.7893 10.0664H37.8674V7.14648H38.717V14.5H37.8674V13.6602H37.7893C37.6818 13.8555 37.5467 14.0231 37.384 14.1631C37.2212 14.2998 37.0357 14.4056 36.8273 14.4805C36.619 14.5553 36.3928 14.5928 36.1486 14.5928ZM36.3439 13.8408C36.663 13.8408 36.938 13.7611 37.1691 13.6016C37.4003 13.4421 37.5777 13.2158 37.7014 12.9229C37.8251 12.6266 37.8869 12.2767 37.8869 11.873V11.8633C37.8869 11.4564 37.8251 11.1064 37.7014 10.8135C37.5777 10.5205 37.4003 10.2943 37.1691 10.1348C36.938 9.97526 36.663 9.89551 36.3439 9.89551C36.0249 9.89551 35.7499 9.97526 35.5188 10.1348C35.2909 10.291 35.1151 10.5156 34.9914 10.8086C34.871 11.1016 34.8107 11.4531 34.8107 11.8633V11.873C34.8107 12.2799 34.871 12.6315 34.9914 12.9277C35.1151 13.2207 35.2909 13.4469 35.5188 13.6064C35.7499 13.7627 36.0249 13.8408 36.3439 13.8408ZM45.1775 14.5928C44.9334 14.5928 44.7072 14.5553 44.4988 14.4805C44.2905 14.4056 44.1049 14.2998 43.9422 14.1631C43.7794 14.0231 43.6443 13.8555 43.5369 13.6602H43.4588V14.5H42.6092V7.14648H43.4588V10.0664H43.5369C43.6346 9.8776 43.7648 9.71484 43.9275 9.57812C44.0936 9.44141 44.2824 9.33561 44.4939 9.26074C44.7088 9.18262 44.9367 9.14355 45.1775 9.14355C45.6235 9.14355 46.0109 9.25586 46.3396 9.48047C46.6717 9.70508 46.9288 10.0208 47.1111 10.4277C47.2934 10.8346 47.3846 11.3132 47.3846 11.8633V11.873C47.3846 12.4199 47.2934 12.8984 47.1111 13.3086C46.9288 13.7155 46.6717 14.0312 46.3396 14.2559C46.0109 14.4805 45.6235 14.5928 45.1775 14.5928ZM44.9822 13.8408C45.3045 13.8408 45.5796 13.7627 45.8074 13.6064C46.0353 13.4469 46.2094 13.2207 46.3299 12.9277C46.4536 12.6315 46.5154 12.2799 46.5154 11.873V11.8633C46.5154 11.4531 46.4536 11.1016 46.3299 10.8086C46.2094 10.5156 46.0353 10.291 45.8074 10.1348C45.5796 9.97526 45.3045 9.89551 44.9822 9.89551C44.6632 9.89551 44.3881 9.97526 44.157 10.1348C43.9259 10.2943 43.7485 10.5205 43.6248 10.8135C43.5011 11.1064 43.4393 11.4564 43.4393 11.8633V11.873C43.4393 12.2767 43.5011 12.6266 43.6248 12.9229C43.7485 13.2158 43.9259 13.4421 44.157 13.6016C44.3881 13.7611 44.6632 13.8408 44.9822 13.8408ZM48.6568 16.3457C48.6015 16.3457 48.5396 16.3424 48.4713 16.3359C48.4029 16.3327 48.3395 16.3262 48.2809 16.3164V15.6182C48.3329 15.6279 48.3899 15.6344 48.4518 15.6377C48.5136 15.641 48.5738 15.6426 48.6324 15.6426C48.8733 15.6426 49.0702 15.5807 49.2232 15.457C49.3795 15.3333 49.5048 15.1201 49.5992 14.8174L49.6969 14.5049L47.7486 9.23633H48.6568L50.2779 14.0996L49.941 13.5674H50.3414L50.0045 14.0996L51.6207 9.23633H52.5143L50.4586 14.8223C50.3154 15.2161 50.164 15.5238 50.0045 15.7451C49.845 15.9665 49.6578 16.1211 49.443 16.209C49.2314 16.3001 48.9693 16.3457 48.6568 16.3457Z' fill='%230E0D0B'/%3e%3cpath d='M62.7081 13.27C62.742 13.27 62.7642 13.3057 62.7491 13.3362V13.336L61.1229 16.6083C61.0892 16.6761 60.9926 16.6759 60.959 16.6083L59.3382 13.336C59.3232 13.3057 59.3453 13.27 59.3792 13.27H62.7081Z' fill='%23EA4B4B'/%3e%3cpath d='M61.0026 9.71913C61.0194 9.68524 61.0678 9.68524 61.0845 9.71913L62.747 13.0897C62.762 13.12 62.7399 13.1557 62.706 13.1557H59.3763C59.3424 13.1557 59.3203 13.12 59.3353 13.0897L61.0026 9.71913Z' fill='%23EA4B4B'/%3e%3cpath d='M60.8426 9.63827C60.8766 9.63827 60.8987 9.6741 60.8835 9.70444L59.2164 13.0594C59.1995 13.0932 59.1513 13.0932 59.1345 13.0594L57.5001 9.77047C57.47 9.70962 57.5142 9.63827 57.5821 9.63827H60.8426Z' fill='%23EA4B4B'/%3e%3cpath d='M64.5036 9.63617C64.5715 9.63618 64.6157 9.70753 64.5855 9.76838H64.5854L62.9512 13.0573C62.9344 13.0911 62.8862 13.0912 62.8692 13.0573L61.2021 9.70235C61.187 9.672 61.2091 9.63617 61.2431 9.63617H64.5036Z' fill='%23EA4B4B'/%3e%3cpath d='M62.8284 6.18281C62.862 6.11518 62.9586 6.11518 62.9922 6.18281L64.5855 9.38969C64.6157 9.45054 64.5715 9.52189 64.5036 9.52189H61.2431C61.2091 9.52189 61.187 9.48605 61.2021 9.45571L62.8283 6.18265L62.8284 6.18281Z' fill='%23EA4B4B'/%3e%3cpath d='M62.3131 6.13196C62.381 6.13196 62.4252 6.20331 62.3951 6.26416C62.154 6.74935 61.9128 7.23455 61.6718 7.71975H61.6716C61.4225 8.22125 61.1733 8.72259 60.9242 9.22409C60.9074 9.25799 60.859 9.25799 60.8422 9.22409L60.6305 8.79587C60.6275 8.78957 60.6259 8.78263 60.6259 8.77553V6.22349C60.6259 6.17297 60.6668 6.13196 60.7173 6.13196H62.3131Z' fill='%23EA4B4B'/%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M74.8537 10.0096C75.2721 10.0096 75.654 10.1125 75.9993 10.3184C76.3513 10.5177 76.6303 10.8032 76.8361 11.1751C77.0487 11.547 77.1549 11.9953 77.1549 12.52V12.6495C77.1549 13.1675 77.052 13.6158 76.8461 13.9943C76.6402 14.3729 76.3613 14.6618 76.0093 14.861C75.664 15.0603 75.2788 15.1599 74.8537 15.1599C74.515 15.1599 74.2261 15.1134 73.9871 15.0204C73.7546 14.9341 73.5653 14.8212 73.4192 14.6817C73.2731 14.5423 73.1602 14.3995 73.0805 14.2534H72.941V16.9659L72.1541 16.0013V10.1491H72.9211V10.956H73.0352C73.2729 10.6733 73.3893 10.4911 73.6683 10.2985C73.9538 10.1059 74.349 10.0096 74.8537 10.0096ZM74.6445 10.7069C74.1464 10.7069 73.7347 10.8696 73.4092 11.195C73.0905 11.5138 72.9311 11.9621 72.9311 12.5399V12.6296C72.9311 13.2074 73.0905 13.659 73.4092 13.9844C73.7347 14.3032 74.1464 14.4626 74.6445 14.4626C75.1492 14.4626 75.5577 14.3032 75.8698 13.9844C76.1886 13.659 76.348 13.2074 76.348 12.6296V12.5399C76.348 11.9621 76.1886 11.5138 75.8698 11.195C75.5577 10.8696 75.1492 10.7069 74.6445 10.7069Z' fill='%230E0D0B'/%3e%3cpath d='M78.5848 11.9583L78.5555 15.4596L77.7681 14.4846V10.9583L78.5848 11.9583Z' fill='%230E0D0B'/%3e%3cpath d='M101.588 10.2986H102.444L103 10.986H101.588V10.9867H100.802L101.588 11.9623V14.1937C101.588 14.3929 101.685 14.4926 101.877 14.4926H102.379L102.928 15.17H101.668C101.389 15.17 101.173 15.0936 101.021 14.9409C100.874 14.7881 100.801 14.5789 100.801 14.3133V10.986H99.8799L99.3217 10.2986H100.801V9.13501H101.588V10.2986Z' fill='%230E0D0B'/%3e%3cpath d='M69.0133 7.90764C69.4848 7.90764 69.9065 7.99068 70.2784 8.15671C70.6569 8.3161 70.9525 8.55517 71.165 8.87395C71.3842 9.18609 71.4938 9.58126 71.4938 10.0594V10.4778H70.667V10.0594C70.667 9.72072 70.5939 9.44842 70.4477 9.24254C70.3083 9.03666 70.1124 8.88392 69.86 8.7843C69.6143 8.68469 69.332 8.63487 69.0133 8.63487C68.555 8.63487 68.1864 8.7378 67.9075 8.94367C67.6286 9.14291 67.4891 9.4285 67.4891 9.80041C67.4891 10.0461 67.5488 10.2453 67.6684 10.3981C67.7879 10.5508 67.9573 10.677 68.1764 10.7767C68.3956 10.8696 68.658 10.9527 68.9635 11.0257L69.4815 11.1552C69.8866 11.2416 70.2485 11.3611 70.5673 11.5138C70.8927 11.6599 71.1517 11.8625 71.3443 12.1215C71.5369 12.3739 71.6332 12.706 71.6332 13.1177C71.6332 13.5295 71.5303 13.8881 71.3244 14.1936C71.1185 14.4991 70.8263 14.7382 70.4477 14.9109C70.0758 15.0769 69.6375 15.1599 69.1328 15.1599C68.6281 15.1599 68.1765 15.0702 67.778 14.8909C67.3795 14.7116 67.0641 14.4426 66.8316 14.084C66.6058 13.7187 66.4929 13.2638 66.4929 12.7192V12.51H67.3197V12.7192C67.3197 13.297 67.4891 13.7287 67.8278 14.0143C68.1665 14.2932 68.6015 14.4327 69.1328 14.4327C69.6774 14.4327 70.0924 14.3098 70.378 14.0641C70.6636 13.8183 70.8064 13.5095 70.8064 13.1376C70.8064 12.8786 70.74 12.6727 70.6072 12.52C70.481 12.3673 70.3017 12.2444 70.0692 12.1514C69.8368 12.0518 69.5645 11.9655 69.2523 11.8924L68.7343 11.7629C68.3292 11.6566 67.9706 11.5271 67.6584 11.3744C67.3463 11.2216 67.1006 11.0224 66.9213 10.7767C66.7486 10.5243 66.6623 10.2022 66.6623 9.81035C66.6623 9.41852 66.7585 9.07981 66.9511 8.79424C67.1504 8.50866 67.426 8.28953 67.778 8.13678C68.1366 7.98404 68.5484 7.90764 69.0133 7.90764Z' fill='%230E0D0B'/%3e%3cpath d='M81.6544 10.0096C82.1193 10.0096 82.5145 10.0959 82.8399 10.2686C83.1719 10.4412 83.431 10.6704 83.6169 10.956C83.8095 11.2415 83.9324 11.5471 83.9855 11.8725L83.2185 12.0318C83.1853 11.7928 83.1056 11.5736 82.9794 11.3744C82.8598 11.1752 82.6905 11.0158 82.4713 10.8962C82.2521 10.7767 81.9832 10.7169 81.6644 10.7169C81.339 10.7169 81.0468 10.7899 80.7877 10.936C80.5354 11.0821 80.3328 11.2914 80.1801 11.5637C80.034 11.836 79.9609 12.1614 79.9609 12.5399V12.6296C79.9609 13.0081 80.034 13.3335 80.1801 13.6058C80.3328 13.8781 80.5354 14.0873 80.7877 14.2334C81.0468 14.3795 81.339 14.4526 81.6644 14.4526C82.1492 14.4526 82.5178 14.3264 82.7702 14.0741C83.0292 13.8217 83.1886 13.5095 83.2483 13.1376L84.0254 13.307C83.9523 13.6257 83.8195 13.9279 83.6269 14.2135C83.4343 14.4991 83.172 14.7282 82.8399 14.9009C82.5145 15.0735 82.1193 15.1599 81.6544 15.1599C81.1829 15.1599 80.7579 15.0603 80.3793 14.861C80.0074 14.6551 79.7119 14.363 79.4927 13.9844C79.2802 13.6059 79.1739 13.1575 79.1739 12.6395V12.5299C79.1739 12.0053 79.2802 11.557 79.4927 11.1851C79.7119 10.8066 80.0074 10.5177 80.3793 10.3184C80.7579 10.1126 81.1829 10.0096 81.6544 10.0096Z' fill='%230E0D0B'/%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M86.7515 10.0096C87.2097 10.0096 87.6149 10.1092 87.9668 10.3084C88.3188 10.501 88.5944 10.78 88.7937 11.1452C88.9929 11.5105 89.0925 11.9389 89.0925 12.4304V12.7889H85.1177C85.1377 13.3136 85.3071 13.7254 85.6258 14.0243C85.9446 14.3165 86.3431 14.4626 86.8212 14.4626C87.2396 14.4626 87.5617 14.3663 87.7875 14.1737C88.0133 13.9811 88.186 13.752 88.3056 13.4863L88.983 13.815C88.8833 14.0209 88.7439 14.2268 88.5646 14.4327C88.3919 14.6386 88.1628 14.8113 87.8772 14.9507C87.5983 15.0902 87.2396 15.1599 86.8013 15.1599C86.3099 15.1599 85.8782 15.057 85.5063 14.8511C85.1344 14.6386 84.8455 14.343 84.6396 13.9645C84.4337 13.5859 84.3307 13.1476 84.3307 12.6495V12.5299C84.3307 12.0252 84.4337 11.5836 84.6396 11.205C84.8455 10.8265 85.1311 10.5342 85.4963 10.3284C85.8616 10.1159 86.28 10.0096 86.7515 10.0096ZM86.7515 10.7069C86.3066 10.7069 85.9413 10.8331 85.6557 11.0855C85.3701 11.3378 85.1941 11.6898 85.1277 12.1414H88.2956C88.269 11.6898 88.113 11.3378 87.8274 11.0855C87.5485 10.8331 87.1898 10.7069 86.7515 10.7069Z' fill='%230E0D0B'/%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M97.1624 10.0096C97.6207 10.0096 98.0258 10.1092 98.3778 10.3084C98.7298 10.501 99.0054 10.78 99.2046 11.1452C99.4039 11.5105 99.5035 11.9389 99.5035 12.4304V12.7889H95.5287C95.5487 13.3136 95.718 13.7254 96.0368 14.0243C96.3555 14.3165 96.754 14.4626 97.2322 14.4626C97.6505 14.4626 97.9727 14.3663 98.1985 14.1737C98.4243 13.9811 98.5969 13.752 98.7165 13.4863L99.3939 13.815C99.2943 14.0209 99.1548 14.2268 98.9755 14.4327C98.8028 14.6386 98.5737 14.8113 98.2881 14.9507C98.0092 15.0902 97.6506 15.1599 97.2123 15.1599C96.7208 15.1599 96.2892 15.057 95.9172 14.8511C95.5453 14.6386 95.2564 14.343 95.0505 13.9645C94.8446 13.5859 94.7417 13.1476 94.7417 12.6495V12.5299C94.7417 12.0252 94.8446 11.5836 95.0505 11.205C95.2564 10.8265 95.542 10.5342 95.9073 10.3284C96.2725 10.1158 96.6909 10.0096 97.1624 10.0096ZM97.1624 10.7069C96.7175 10.7069 96.3522 10.8331 96.0666 11.0855C95.7811 11.3378 95.6051 11.6898 95.5387 12.1414H98.7066C98.68 11.6898 98.5239 11.3378 98.2383 11.0855C97.9594 10.8331 97.6008 10.7069 97.1624 10.7069Z' fill='%230E0D0B'/%3e%3cpath d='M92.2484 10.0594C92.6137 10.0594 92.9391 10.1358 93.2247 10.2885C93.5169 10.4413 93.7494 10.6671 93.9221 10.966C94.0947 11.2648 94.1811 11.6334 94.1811 12.0717V15.1458H93.394V12.1315C93.394 11.6467 93.2712 11.2947 93.0255 11.0755C92.7864 10.8564 92.461 10.7468 92.0492 10.7468C91.5777 10.7468 91.1925 10.8995 90.8936 11.205C90.6014 11.5105 90.4553 11.9655 90.4553 12.5698V15.1458H89.6683V10.1491H90.4354V10.9582H90.5361C90.7355 10.7018 90.8604 10.5342 91.1128 10.3483C91.3718 10.1557 91.7503 10.0594 92.2484 10.0594Z' fill='%230E0D0B'/%3e%3cpath d='M78.5932 10.9581H77.7681V10.1514H78.6L78.5932 10.9581Z' fill='%230E0D0B'/%3e%3c/svg%3e";const Ls=["a[href]","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])",'[tabindex]:not([tabindex="-1"])'].join(","),Xt=({isOpen:e,onClose:n,title:s,subtitle:o,children:r,overlayContent:a,overlayDimmed:i=!0,styles:c,theme:l,maxWidth:u="522px",dark:p,footerLinkText:f,bannerSrc:x,bannerAlt:h})=>{const{theme:g,dark:b,dk:C,palette:y}=m.useSpiceBrand(c,p),w=p??b,v=l||g,k=c?.fontFamily||v.typography.fontFamily||'"Helvetica Neue", sans-serif',A=c?.primaryColor||v.colors.primary,S=d.useRef(null),T=d.useRef(null),N=d.useRef(null),I=d.useId(),[E,j]=d.useState(!1),[B,U]=d.useState(!1);if(d.useEffect(()=>{if(!e){U(!1);return}T.current=document.activeElement;const L=document.body.style.overflow;document.body.style.overflow="hidden";const O=requestAnimationFrame(()=>{const K=requestAnimationFrame(()=>U(!0));N.current=K}),z=()=>{const K=S.current;K&&(K.querySelectorAll(Ls)[0]??K).focus({preventScroll:!0})},q=K=>{if(K.key==="Escape"){K.stopPropagation(),n();return}if(K.key!=="Tab")return;const F=S.current;if(!F)return;const Y=Array.from(F.querySelectorAll(Ls)).filter(ce=>!ce.hasAttribute("aria-hidden"));if(Y.length===0){K.preventDefault(),F.focus();return}const X=Y[0],$=Y[Y.length-1],re=document.activeElement;K.shiftKey&&re===X?(K.preventDefault(),$.focus()):!K.shiftKey&&re===$&&(K.preventDefault(),X.focus())},_=requestAnimationFrame(z);return document.addEventListener("keydown",q),()=>{cancelAnimationFrame(_),cancelAnimationFrame(O),N.current&&cancelAnimationFrame(N.current),document.removeEventListener("keydown",q),document.body.style.overflow=L;const K=T.current;K&&typeof K.focus=="function"&&K.focus({preventScroll:!0})}},[e,n]),!e)return null;const D=!!x&&!E,P=h??"";return t.jsx("div",{style:{position:"fixed",inset:0,backgroundColor:w?"rgba(0,0,0,0.72)":"rgba(0,0,0,0.5)",display:"flex",alignItems:"center",justifyContent:"center",padding:"clamp(16px, 4vw, 48px)",zIndex:dn.modal,opacity:B?1:0,transition:`opacity ${Rt.normal} ${bt.out}`},children:t.jsx("div",{ref:S,role:"dialog","aria-modal":"true","aria-labelledby":I,tabIndex:-1,style:{backgroundColor:y.shellBorder,borderRadius:"12px",padding:"5px",width:"100%",maxWidth:u,boxSizing:"border-box",boxShadow:"0 16px 48px rgba(0, 0, 0, 0.4)",outline:"none",transform:B?"scale(1)":"scale(0.96)",transition:`transform ${Rt.slow} ${bt.out}`},children:t.jsxs("div",{style:{backgroundColor:y.shell,border:`1px solid ${y.shellInnerBorder}`,borderRadius:"9px",width:"100%",padding:"0",display:"flex",flexDirection:"column",position:"relative",overflow:"hidden"},children:[a&&i&&t.jsx("div",{style:{position:"absolute",inset:0,backgroundColor:"rgba(0, 0, 0, 0.4)",zIndex:5,pointerEvents:"none",borderRadius:"12px"},"aria-hidden":"true"}),D&&t.jsxs("div",{style:{position:"relative",width:"100%"},children:[t.jsx("img",{src:x,style:{width:"100%",height:"auto",display:"block",borderRadius:"6px 6px 0 0"},alt:P,"aria-hidden":P===""?"true":void 0,onError:()=>j(!0)}),t.jsx("button",{type:"button",onClick:n,"aria-label":"Close dialog",style:{position:"absolute",top:"8px",right:"8px",minWidth:"44px",minHeight:"44px",color:y.textPrimary,padding:"8px",backgroundColor:"transparent",borderRadius:"9999px",border:"none",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",zIndex:1},children:t.jsx(mn,{size:28,strokeWidth:2.5})})]}),t.jsxs("div",{style:{padding:"28px 28px 0 28px",position:"relative"},children:[!D&&t.jsx("button",{type:"button",onClick:n,"aria-label":"Close dialog",style:{position:"absolute",top:"10px",right:"10px",minWidth:"44px",minHeight:"44px",color:y.textSecondary,padding:"10px",backgroundColor:"transparent",borderRadius:"50%",border:"none",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",transition:"background-color 0.2s",fontSize:"18px",fontWeight:"600"},onMouseEnter:L=>{L.currentTarget.style.backgroundColor=w?`${A}1a`:"#f3f4f6"},onMouseLeave:L=>{L.currentTarget.style.backgroundColor="transparent"},children:t.jsx(mn,{size:24,strokeWidth:2.4})}),t.jsx("h2",{id:I,style:{fontSize:"22px",fontWeight:"700",color:y.textPrimary,margin:"0",fontFamily:k,lineHeight:"1.12"},children:s})]}),o&&t.jsx("div",{style:{padding:"11px 28px 13px 28px",fontSize:"12px",color:y.textSecondary,margin:"0",lineHeight:"1.35",fontFamily:k,borderBottom:w?`1px solid ${C.cardBorder}`:"1px solid #cdcfd1"},children:o}),r,t.jsxs("div",{style:{padding:"12px 28px",display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("img",{src:us,alt:"","aria-hidden":"true",width:108,height:22,decoding:"async",style:{width:"108px",height:"22px",opacity:w?.85:1,filter:w?"brightness(0) invert(1)":"none",margin:0,display:"block"}}),t.jsx("a",{href:"https://spiceflow-docs.spicenet.io",target:"_blank",rel:"noopener noreferrer",style:{fontSize:"10px",color:y.textSecondary,textDecoration:"none",display:"flex",alignItems:"center",gap:"4px",fontFamily:k,lineHeight:"1"},children:t.jsx("span",{style:{color:A,textDecoration:"underline",fontWeight:"500"},children:f??"Learn more \u2192"})})]}),a]})})})};var Os="data:image/svg+xml,%3csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M4.51484 1.22476C5.04689 0.494255 5.87167 0 6.83333 0C7.79352 0 8.62302 0.493038 9.15721 1.22447C10.0512 1.08473 10.9879 1.32154 11.6665 2.00014C12.3456 2.67921 12.5823 3.61677 12.4419 4.51135C13.1714 5.04616 13.6667 5.87042 13.6667 6.83333C13.6667 7.79624 13.1714 8.62051 12.4419 9.15532C12.5823 10.0499 12.3456 10.9875 11.6665 11.6665C10.986 12.3471 10.049 12.5769 9.15858 12.4403C8.62445 13.1728 7.79434 13.6667 6.83333 13.6667C5.86959 13.6667 5.04474 13.1705 4.50996 12.44C3.619 12.5772 2.68116 12.3475 2.00014 11.6665C1.31939 10.9858 1.08903 10.0476 1.23037 9.15532C0.501138 8.62162 0 7.79824 0 6.83333C0 5.86843 0.501137 5.04504 1.23037 4.51135C1.08903 3.61904 1.31939 2.68089 2.00014 2.00014C2.67986 1.32042 3.61766 1.08457 4.51484 1.22476ZM9.20928 5.95387C9.51334 5.74624 9.59152 5.33144 9.38389 5.02737C9.17626 4.72331 8.76145 4.64514 8.45739 4.85277L8.3995 4.89229C7.48372 5.51764 6.69012 6.30153 6.05487 7.20477L5.30449 6.45518C5.044 6.19497 4.62189 6.1952 4.36168 6.45569C4.10147 6.71618 4.10169 7.13829 4.36218 7.3985L5.7 8.73489C5.84693 8.88167 6.05387 8.95158 6.25971 8.924C6.46555 8.89641 6.64677 8.77448 6.74987 8.5942C7.34322 7.55668 8.16436 6.6674 9.1514 5.9934L9.20928 5.95387Z' fill='%23EA4B4B'/%3e%3c/svg%3e",Wr="data:image/png;base64,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",Nr="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAaYAAACLCAYAAAAqND1fAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAOdEVYdFNvZnR3YXJlAEZpZ21hnrGWYwABSQ1JREFUeAFsvQm8LelZ1vtV1Rr23uecHtLpdJLuzAlJkClABCWMXrwCgSQkKiJ6ZcgACApcryIXyFUGFRARE0jCKDIE0Bs1SJwgAbwKBBAJZJ473enu9HzOHtZQdet56/l/9e4Nq3+n995rrar6xnd43ud9v+Zf/aufGna7Xdnv96Vt27JYLMowDPFPL37qpc/13a7r6vt935flcnnu+/qe7qdX0zT1Pf2u9/VT9zg7O4trdQ89d7PZxPd4fm4L99d1ugf3VHv0Pd1D7+lz/dP7ek+/5xfXqA36fbvd1u/QPr1Pe7kvbeZa2qPv5/6vVqvaL92be9Au/a5/tEMvtZ925DbwXL6fX3lcGff8LOZJ92UseQ7zxrVco+fqO7qPrs9jxTzl9un3PG688nzo9zxfev/iK49nXnN5fvM6YL3Qh4vt53nMGfdU3xlX/eSzvFa5D/Oa+8pzaENuRx5Tvsv40JbcX67Lz2IcuJ+epT3B7/meue20+eL36Ctt0L1ov55Pmxlf+sqYswbYV3kP8Tzaq8/ZT7l/9Dfvo4trRP/0LO0d/s77jTbQV8aJ7+V5p9+8xx77k+aQ7+X7sWdo55+0d7Mc0z/azV7Je0YvxpPf8xrUnKzX6/od3Zd1RDvzemJMWZt5r9AP3ZO2XVzX/M01eU/xvTwved6zjM177+L39Bz16fT0tM5XXiv0gzHhWcijWD+ahOc859Ojo/rg5OSkLlQG4aIAuyhkEMIaXDWIh+sfgpCFpUnkb5TR4eFheeCBB8rR0VF9HkIEZalrJfBZ9CwEJoj384LSsxDMPBMFoH+6VoOXByT3m34xqfyNImICdN3x8XFd1AgI2o0SPjg4iDbTHvqvv/UZQii3R22hn9yDBZ0XRBaoGke1Iysf5oz+Md/6XfdSW/hbY6I5YSMy58yxxlXX067o33jNTmM03mc1jon+1jV8b+GfTSnnBEqruVC79L7aq3UjgaHnjPe5+vDD5XDsj9q09ELWmOuV1xZ9yIueuQphgCJXX7Q+tbbG93Rf1mQI5fEaXUcfGVO9WE+MAWtj8DjpvTy/q/H6jdafPh/f0+fcb63verxOx3mNDez5VB94L+bPe2WrPmq8LVC37pfuPWBQSZhLsLp/CGjuw33XaW/EOk3G6dLtHJJiaSxw1DP9rueUpKCr4Nf9tI48x7u0387Ufu2RNH4rz1nsZ4/HkPbf8SiPYl1qj3t9LjwurCHdW/0KBZGMlCy/dF/dn/ao/7o37dLfJ+M9jrxHY0x0L421nilFMb6nfR57R7ItGU0YETxb99toTL1HNB66pkVZeF+ixBDo9KuxLA45on9aS+P9dR/dOxSC+8Y8awyOxn278brPinfp66sRMO4hxq21Mtc/jUXMgdcvc64xGGxIaf8xN53bixJWu86sGGP9ek3EOtQ4sB4tK5FfsYbHazWmv/UH/6u03EyNzQKKCY1J9UOx6hCEvC+Byfe10VkwCEMEIlZStvYRstdff/057alFxiRpMVy0XCR89Y/2MQl4fwhSNg6LRt/TwOr+eo/FgPWK18bftBFLEsFDe/R9lKj+pt20gYXLPVmI/K7Ps3LV9Sg0xhSL7MqVK+cMAOZBv3Mfxp4NiwBnnLkmzxtWXrbAGDPdk2fpGVKM2fPKljiK42ScLy18Cbgig0Hzo004XqNrESCtBV6siTJ7LghdFnMoOPePOVDbT638EL6MAX2OMZaQHv8+HNute3R4oF6D6tvefUWgq4/FRlW2dhkv+h/38HqOduq+Wp8XvXm3f+drJDz6ZOnqPQTnOeWvvej5lJDSe+oza5TxX1pwNW5PZ+FevReEgPc2+ygUgMZP6IL2nI0sGRULtx+LuCogPUNjYG9G/Yt7eR4L3o6Ni1BQVvhL7/+llbDeK8kT0jWbcYx3FoZbrxd8zWogWnBqHFYYi1aUoXzH9tPWWJOWBdEvz0coZQvEhQXoyj8PNA7aF6mN6pPapu+ujB4Uf04bFn6W+qG1Mng9R1vK7KnsLKeG5K1qbhkDCXzd99Io3w4sq/Ye6wOMH9b2eK3Whv6mXfRnj0EmZTH2vXhdVoNda9ft7Wy4HHhvooR6/95cQHq23lcYW8g1jI8DryX6r/tvrV9C1kmfgHq4jcib2BcIyd4LmcYgLLHU2QQoFhQZwl6bOcN6WTnhXmNd8z7CeGsrNbuWKEldg8BFQTAQCAsEbfaYWMg8n/6onSgg7hla3vBb9mpQgnh6KAGEcv4Z1oddV/qKkK+L1sodbyrDl9m9zhY/Exsbw24/fcmejNqvn/p8SJa3vqu2o/TyPGb4B0MDJaTf5TXpO3iD0Tc/k/kOb0eKEJjD7W+9rjQmp+P1W0MYdYMDc3i90d746e/p2vCUtaksiOrC9QbTiz5jaOh+ap8UOYL4xPcIa84eucbszHMmoYwXEHPhnyAAbMDWAje3NwyU8V4om2Lrv1g4xNqxUmC++N6pBUZjizEUv9Y768uWtt7XGCKUw9PX3Hk/xJ6wV9G5zxIOGCT6W/MYHuv4vWtXr1ZLOIwIhCoC3mMs6xwlHgrbLz0fTzTa6P6wF3f2xiQsEdZ4Qq3RlCuXL5e17mnhymcIKYwL9rbaLY8mhJ8Fqa5jx6PEL1+6VH+PNe7nH3htF5Q2Sn2895m9UdYP3uTS7a8C1vscIwxF3to7ZP1rzg88rowJ/Q5P00aIhLXaL2Ous7Fx/bhu8WIxMPRvYznMeOj+IbfsgVRZZAVPm4dSzrVB92VdXdYcWNlVmU1by+wBYVx1VvYon9jLVjDqv4wu5AtIwt7rkvlA9mc4sLdiZVy7v/SX/tLLH//4x1cBhQUEFprfR4giGBFyGcK6NC4KlIZeWLMoPYR8bhxCPENPEgjaSFnJYdXj7eQYBsI/w4Ao0LXdVhYbwgFFhseFEKKPxFXoR5sGV9fGArUyC+vNwisrx4yLMwFYodkzZbz5/MzQBAoF5Uf7cMlR9PIeWVx4pPxOH5grNhx/81zmiDnMMYKMiTOf1frRWJcyKy3BIqPA2FhRIoT1PRRSY8u7KTOkuTK8hWXX2ZtAUWdDgrEDXuWejEGs1dRuxiqPa4ZascRRiKyXvGZaW8KNoaFiaGaflGvXznGdgMuAL9WHFE/dAdsirHwv9b+74M11FlIZMo89uj8fx127XyivmMMEHR5b+MXYJaglhJjGOQkLPefARtjFeEIo2wQFF/dvb4MERRiyI81JayO0cZsllJnrHsRA61LzqrXuuVH7ENrcM6MPejYCLdaQPUU82CFBxjlE0GH8pX1RLMj39jw29gCQaQFdYWR7fbLH9IzG39E9Y/1LVqn9jnfldaZnSNGeek/l2B6QV3in7QTRstaQzxhPg9uMLDm0ETNYAYYc8jps3P712H5Bl+HZ2cBEYSEfIswiAxSIUfOcZCHKp3gfbxj3ZJBLNmZjkp97yxdQts7yV2v0jnvuKS1WKB4BCqdYW7LpWWyBc1qZXBRa+vfwGBNAICPAUTR4QDQ8C1GuR2hcu3atKgw8GAnfHLfCpcxKAC+PvxF6F4OHKCHdF2+J7+m+GiDul11SFAXeRfbKUHhYlljrKGG9mCgWF23FIKA/QGYo5Kz0svDISicHkjMcGdaWBSEGAIpFCuTU3gTt0Hsak32GIvw8zUFWbBKO+7wJ9NOwkKyn2PTqh40IFA2KVvGjfd6QHuOt25sDshlupF8oEeAQKdXi31lXwtH1DFl+ahfxFP2tcQ7l2HXn1kwIIXvIrLWFvaND3UNC3MIqjCUHsKsXmuYHaxHYL3u7KEiglkvjmG29roFbWo/B1vj/yh7Vgdcfwk6CQUL5zN4GXg7rSkJm5fgE0GpWLH1qHzGQDOcgB4hxLGxwYWQA0R14fIitFXsmjWGyvP5Ye03ysDV2O49RNiBRTigECXV+B1rNa9x/THtNY+O1A4TEWsVTPkjx8SN7cii86kV4fNTOs+Sh67X0PC4My8pzY40NQOt+ZrRbwltGBl5ue57IE8/zHiP+ktcphkVn5at4ne750EMPTTCmjc6FlVFj42PwvfV+JQuVybDU31onrDv2A+OiV8SeDKe3Hh+95AEX7yWUl9YLc1xj534W81JjqWUy5uK7+p+UCZsqexZq0NqLDIGsjY/QZjGxuRCg/I3wRwFkuIoO52A1SkK/6zmQHRCOeEsIjRyfyey+bFHrpftkLyXDeHhUCGI2mhYTMGH2erICyqQM2gdkki1MnpWFKaSObJUj1PDWcvCSFzCk7g1BIXsCeuXYG21CUAOZoMAgU3AfFBBKirFGQQDR7GE7eUwaewq97wusRtuXxvZPHC8MQ8Bxot5KDXJEhoazh5SZSKEgxv5nwwVLM+bC1t/O1r0UIAJ973Ww9gZD2GhsWM/MO5YyGwbSQvS3TFDkwjGdSrhIHiX9wFuqgqef4moEtNk3cZ3nAUUGlL614t7aYwr4EKOln+FQeWMEpbOCywZB4/UHEYQXa3Vhq7a1QsATCS9CP9u2xl+AfYDcgWWA8TRmZzY0mJPYp1aoC3ugQMMBD9nrUMuYJ4T1DnjLQj2M3gwh+j7E0Zin1t5brG0rBv2LeI328Tj/S3unNW5uLxbPDgUIsYN4TMgEKaGxLVrjmoPj0bjWqxJgtNbUL8uKpccA+DKEvp8PuYI5C5je5AF9tk4EjCGhTux14ntV2Xk8UKKaj3A2ymTgSFkt2pkMhVe8N4EjYOFk2BdfB4Sr71xzf0MGaJyshJAHAbHjECQ0hv7relCPiDFJCSB0eenDqyMOneNEES9ILKZMgKgavG3PxTAkJAla8x5CBoGTYS4EmoS7BI9+QgjgmXw3e1kIUqCmM7upeDbZisrwVfaysjeW6bQ5Loa3F5OrQO3YL/UxK2Q+y+3F+s4kEDwPrPIsnPAGUYJ4Bgh1rHGu0fdQeMRPNNFAQhgKirsgfHhWVtI5Xse8DfZ6WgvjCntYiWBxEpPAiEEYsnGBcFhnCMRQBBbisMpyP9lssRnk4TQzlZhxjHEoZe6PBcpgK3yX+omguzifmsfsBS8tXENpei56PFO3L3B4GRxsZsN3YVTY6oz+WFFi+GHptgmuDPaSheQ+wVSMo/ZDY4ENs4p9qefvvPm7FP9AkC3saQWM5P2KZ8mcVcZimeO1jYXfxrCbFECMnwU+cYiALQ3HEjhHEWysrDc2/oC3Ggu1atgBl3UzYwtGF4paAjWEaBKysUY99xh3arPGHcHKnB/Z4MS7Iv4U7EDDSnqtnfZBu2DU1ZibDZFd8ihhk7KXi8enYHiXSRFWA8L9wogQ6WFjYzi8YcsotRlYNditJm4IitOc1tQD93Vlox2FX2W6ZStKP4wer5kaSmlmKPjMKFlnzxYPLvretudiXnVd6n4aL8lM7y3iTmprZaBaZjVljvtmD617/vOf9/InPvGJnqOhWu7EGkqZg/vcDKGQc2Uy9Q+BlWMcWOdVKDUzFqnnyP3UZGrzET/KHgwCl+szRJafwyQhzPDiNLDXXXfd+dhIM+d6bBLOm5kmF5UnMamMs1b4ye0jIF6D0l6s2QO46E3RZhQ244wlBOmC56OUuA5YEAXDWDAnObaWN07uH2PHfUKJ2urdJI8SIa1Nqhk8SLDoYEHNMxF2bL49Qgwr1Lg8G7JtzseRMsGDvtXNkBRsLHB72GGZKe7nGFc2evAcmS/ILpkavrdiKH4uRku0fzezKjc2fMI487yjRIqFe4apO/e1DMM5gwcrcQ38yBpvZ0YoynFp0kwoXLPEgF2Wjs8QEwEdOEiEnbyO+wRVEYvqrZCvjQYhgjtiPawR7m0Bts2wMZ6G1y7GHHOK1wXDMKxp3dv9GQz7YcAAr7ftTJnHdFYbBDmd2jhkn6z8k/jiysZVEF4ks/ZTDC/ub8W3AQb0nsKDYlzrPDZNVdDRxlKqomceiPGhsIsFOTKxMvEwki3X1La19p/HfG/lq7ZBvQ+IjPiT11L1SOzN6pWRCuY9rw/WWsB7ydjSNZobfX7JaEx4ZfbqIfcQB6wGPoZDmeDcYZjJLuucVmHDhnUbXfUYLG3s6D4fuPPO0qI0Mm6vm8h61GdaaCSAsbmw3muOSDvnG9VF72sRAJnMcDEHR+8vsmZPz8oWNp1DOBEfywIrb7x8bRbivHgmcBYeHt4OY5A3NRPPpkOwIQwRMtnipI14itVSvgChZAUPhINXpxeeT34BfU7reaheEjASghFF1iZcmWcBi2IohGdsRbT1XGEw4Bkx/jvDorEJbaGDwbPxFhZge4/lxlATngeWYIZgszcLMeUirKm+CzbZe70AgQHDIpB1baQIGD5k/DP8q/ZCu22b88mJwC5D2uh4TEH93c/5N1sbYJ2FSKxnLFzDlsRa8B72FhSMDUJr8JzCPAOyQzmyuelzjE8pFVohEJ5h3gyPY3AQu7pky1bvre0NRrwnCVH22eB74REO9hzUr4MUo1h6Xak9m5RDtZ5pwWFhRzpA11UWGxRz4ki0N7c91nqfYFLPRcQsLRg37pvafcVwLgbbqT2Ozp4SQjvG1mMHBbwiPV1Xr9naI4PpVmOGCT7LciM8OHvwNTaF993NbNTYP2Z58izeW2cugGVpjJ36BPyZPO1gN+5mQlCFPH29WJGRJ6X3rUh0H63Vvb3OLvUZeA+5CHwXSrKfiRD9MDODF26brju2XMCAWi5mwhreaKBvL3jBC17+1Kc+dVpkCc7J8aCLDD1utPQkI9SIAeXvniU6IQOKJ8M9sGgRwCglBCjeQlZUTCzWKQorkzIQOLo20331ggZPMB/BnT0mBDysOJQK+TMIywzNVfy8nysfoPS4D0oIdiECmb5m2nn2jHgfwR0BbVs2wJfMh96TQCOJmLnIcQ7GM8cLM/sN9owEje61Nv2VZEF9L8fnKhSjTa34j8cKqI48iwMLwMH9XidiR1UE9lIwmvBmSTLe24pfer3BkESYZw8W6AsvGqXJPAOTdUkpEi/KsCBwD3ErLM2YJwvfzFgV1FZsafbuEwKDdX513NhAtHgEGeYIJWGDJxSUBQwQENbpxrTjitlbcRQbFXV/WyDptXYfMuza2atl/mOd25qFis6cEE9DVkRgXT8dK+S77DGMIWDSsLQtkANZ6Of8MogCJBHHWDltIe7tQD/rkIB+GKUWfI0/7/A47QXBxCMfCI9HbTjwnJGPw7i2aVw3SRbxAtbTupBQxzOgLbD4iKEyPpoXkWkiLqPn2yBYsp8tB7M85dlAwmF0oLRRQDYG9SJtgH1biUvEyFBm7gsKs3ice/cLQgvEBcaE5FgRITojB2FsKUHe6/uE/dn31atFece6AOoe/37/h+/UM+ZKDjkGkZPnUE4sLKzN7KngCSFosSwzXo9yYcPnCgU8C4WCwEDgAsmgVPRsWHphgY6bF88utxlBTjzoIv2XoDceCsqJuA+LD2F/luAb+pmVeU5CBjZifPLGREAylowV8FKGI1GKeHZ8F6UH445YHB4onzdJiVyMC3JvvZiL6Ke8IQkVw7kLxwjIDKetu6RE1t5gEjRhSY2/BzOvzPBSbK6x31haWHUIQZRKpdZeiP0J9kUpQRTQPcK79bUrrxX6n3PHUNaB6Y/jdGzIauv+DkmwkbGP4FQMgNwSGFnMK5uXuUYAQnII5eMNCH6vNlxWEqWt4PD43B+EJ/uq5ojYuIIhWKEngt0J0bjsucOTCYvXHov+PrX3pHnNCpaEXJTX3h4NOUuR9GlDY9/PMPZ1ly9HX4hLBclk/N7DY6y60rSbKcGYWHKxgAyFOj7v0Ebo3qECFEuw3GSEWYBpHGR9t953QI0IO32vJvnKE0gCv01ecIaC9f6ZvfmF2wq8imcTMXYTFIi5YZTpHlDy9ftl5wEKoitWAFWGeizXxF3aKR4kAa5/x86VIn4bz2qnXCx5VzsbttU4stfW21vEc9L9UVA8F5IRyBKQ8dYxqsH7vaZrDHOxgqGfiUUZFYncunF/hKfFHtK4K64+/tQ639vIzl40FSWANyGmdV/4hc99+a233laJAzmwjrBA0COceUF4gEr+J1HOgRCw7tH4le3khYj3laEn7p29HZ6PF4EA4oXXAnsNxUSyaF283cw+5L4ZMkToZEUC7IlipC+53WxALFv6x3tZIVZcPMGMNQiZlH5WLtk7zbGgDAtmb4vfUc4oVPqYvTu+l2GxvCA7C86YeywfL+Iz52rgEdBvBGbFxj1XsNyIyWGs4DFd9Fpzv/HkaHuF/fzs3nOEouE6jK085xhHFeIdprja4N/xohBoCN1D08zjOxZs5K2EtW4oCaZgjcfY+qdSAZbyYK8KIgFeJtANsaVFii8i5EjIRfADR7F2ITPEevIalADFO2i7VJPPQhlqckC5pdSk4ixYa4kaC7+dBVtdG7a8MyOMRN7Yh55nBBseSvH3IuHYLEjypICrNL6CHiNeZZi1J6Zl5a7rVD0BiBUvoJkWXvVaoLUzx5lwsbWgzxUiUMY59gNJIYySZq4IEoaYjfWV5+CQJH+vF0gyeJCHZsDtrNQw0vFoTmzQ1tiO+1eJFGU2qPEgmc8cCiGWCauy2IHgd2RAeJBWhHg8MAbxcDHAa66e57K1QRZ99XUgMnoh3xtkyvj7ez50+wTlPe1pH1UFQw7KN835YokZmqLTBMsRiCiH7C0g9BHUWSChLGRB51gJUBObLCu8izGnDI/lgD+wVKZSZoscz4TraOcuxQkyFJd/VrgltYWxyO/n30PApbEidqO+ExfJQhlmXB6nDI1idSp7GwWC8skKj/vRRrWfml/MaS5PhJGyc+C1pEUHxZkEUyCRtS0h3lsY9sKa65JQZbOwJlgntDHDdryAWCFSkFya+6T7yEuIKhRWBsSpgDxLmUttYTkyp6zrTEBgk1HLb+c4JMH+YKlpTTdT3Ij6a9S904t5uJhSUfeZnwkslgkFCFss1FCiyRMoZbZMoU83Fp4rK4EyzLlry2SAEgtAYDFmxADZDxXW9FxU79f3Jzl2nxRPRWLUnyRABytjhJP6RFwjSDNJaLEegohl+DeebVhVY33gscVCB8qMdWFvU0IVTy5iYcOc1JsFa1V6ZQriE7MjqM/4IphzTp4UoNrD9WrjoRPvD533yBhicFXlaQ8ylKMVGWtin4R/kEu2U/klPl84Nlea5o/lccW4eD2wN3PtwtgDMh77lEBtpRSyoJ1yAJcpHgjM26e9Wux11WoYNrbCkEre3ZZ5sBIqln8Lt7943D54912le+ELX/jyxz72sTWAz6bJwhSBhZLI8SgWLQoN76AO/jDU72ePIGtNhAXWbI4hoVy4P3Ed7kNcBoiKPJ0MA2XtDKx4loLgNenQbcQqzBAdFjfPz4oNwar7Ur4nK3faiCDhvuQ70T48g8yOu8h2zPOCcCNeFTCWLWziAEMSSgjxwNLddr2yQmdsGBeMgqCp2nqGLZUVEEbDnjiDvRdam7F6BDTrgMoZUXbHRobaINiuepPtXGvropeAgiKgTY4MSj4bW2vj7eTdxBrTOBtCiHm18cQ1CHLmH+s617cL6Mv3Bw4BqsI6p4CpvqN1urdgJJ4iqxI2VkkCYpvWIV5sbOo0hxUJwPq1kOH9NkE2eGUImzBC7JV0CIkL+5C4ADla5CjtE2LB94dkzOCx4UESd8o5aztb1J09lAy1xXyYgg9VvMKevrYaylYu1cvxGAwJIejsBRLzye1mXQdSYxRn79hUFdbNHJMlRlosiCHaoPSZ3z0KWWOD8nCbau27NNZ+0PTDc9R670be1njNsRN5SXLeeM8ii/DGpcBPMTqtkIPqbaMTgkqNiXv+UaJ1/6GUbGgAFfaW71HtRaEQK6o+oVNA7yvns2HY17EtkxeI3Lzz3nsnuviTnvSkc8mACNTs4YQLajgMggNCBK+iT+4r+U4IWIRrJk+wGBDKCCugJgQvghwIJkNZ2dPLFaaz18Q9UJpqGwy66oIu5tp0pcw5RRA/eDb3y1XUgaKyIkWBZBiNsaLPvS1dYly0c5dgE2IMCP0MOWYjgr7nUk2MS45F8ewMobLhauXn5VwVe0VJISsLlJdIB1F7DYGTIMMcM9z3M3WaxV+pst1MZslwIgFzMOxgPtnyQhnWwGs5Dwfq862FC7ArBI1omwU/nlQWgNu0WQmW55gcSiLiM656nem4KMTSzNU5iAUFCSR5QQF9G4plDZMzRYCavRZj5Y2MMIW4wJrcOlgP3Kw2LAw367sL7xUgmr3bec7bLaWyA1FEtfp3KZVeXRISwjzC+IKYEFa6FS615cgTaiwcaw23vj+noIu91D79xAgm0I/xmMvlHHjdEs9rPE70K+bE6wUIlcRbhCUJq/V94GIrZaqbbGyIoKwzDIZBuLLhwpoKhWa4NcOCewt+jdshKTUyPEgRaWeaOUm1itnEmFvJkN+EMqOPxALpf7HxmlMkmrS28Bwrndtj33qemgQXApmGLLEXW2VlN+W7YZjgrADrnjmulpE4FPkH7rpLUN7zX37bbY+rHkJm3ORyJosEi6AQpKjAK3k/M+vwQFA4CFwJ4kytzvEQrK+LWf457gIsw2dQtrPSQ9Flz4H78r0MIV2ELxGyxKtQSCiY7B1lmC/TrrEWMsEhhFvyKhHieKsoCTy7zFZj8zAeecwuKsIMOWaP9SIUi7Jk3lCOra1/oCcsaJTZiROfS9qImxRLA7opzXmmXV4feU0wl1i1bByEOFUHLvYRpg8bkkWOMmQTVO/ZwkDWY63IXWY4bGlPgGM6SLQE9sCQEHwaRzJYyGSmnV4K+LPGEczg832yuMOb9jNCgMr7H78reLcqNnsGrAUES1jiXkOsOUgVK/eN8lh7C44ay2unpNIM8fI9PKE+QU4xnt0c6F+lNjMGwGnET/CCYh7ssUUe23JZvcggcyRoGqWOMj+wld1ZkG9TfGTwngkD2kQMjT6QInsMCnneq/q3Zp0kVIS9HzlFg48T8VpC4BNjxOjQeIUxZ6iPdV0Ln2rP7+dishXFkZzVGsbY9vV4FdXYMfqg+2McAAEXG6WVqJAMrUMTXPAsgdXObLwCEaLc8ah3nkMIEnjcGHXAqRgOsHH1NzR3DLCYSytUFB3jUBm0XneK0ena995xBwm2T6oCD7gCgZShJDY8AjVDUAhczidC0LPgUWaZKcYG4z0sr4r5dnOAnvvrGuA6hDgKMzO58CBYaNkDyxgsdOrsFWWllZmJeo/cIBSkXmxsnkGfqPSQCQcq/0SuVK6pR/8Ys6yA8HQYc8Yk4/R5bhgXrscbxNONfJ1hrkIAUUSvlb0hxoKsf4RMhobKMMdFdo63wDYkrhX9Qlj6+Sii3IesuFEgbEjiZZ03RMAaySCaVvxsDDDvKNxq9TUzJJsVGxA1c1CSUYCgJNZQWJeGwxBmMI1KMxdHrZ5nastuN1d2JpiP8G+9WYEswztqZliF++oVxp3XF8qFMSvDHHfd23uiHA6xnMqIskBE0C/x/of5QMZtInDw3UpkGVIM2p5GeNRqD2sbQWQhtEuBeoLjFFlt8bTKZGjIY4/ioMP5c6NC+PYTOaK3VzKkfyUJR7EAW89fxHzMFIvCqjZ4gJTWnvc490hrw0YM7LyzFKwn1hrzup3KNLE/lknpnTpNY+F1szIEt8UosCfRWnET66oGxzBTq3f+LoYJsCxeTF3zw1Dr+wGjy5AijpWPyCD5GBIIhsbCbQOyRg4GM9foCtBfn4ysheUZlH1SEXK9PipFYHRHKScXlL3jvnsn8sMTn/jE6GgwdSx4EYJAQFkIZKuDhZBxQzZiFrBZGSDws/AnsBvCMeWX5BwenpcJFFkQAWsgcLIyynEflEGUnLHyJaaSIT0UJ31EsGSvA+HOZuPemVDA9VyLMEZA5nOSMAoQ9hgFGe4CRmQeMvyHAsDrzfT1PH/EEmgLgq0KxvFvZf9Xhpg3xWDlhVDjucBYQ5m9IRQGSjnPu75z1V4F453jkggmir8ShA1FLMq34w4YL3n86DceLvEnxhFYKQQpwWBbdXt7TjCvEJZssuL+M/7U32NsyHyHeowSauz95LhKZUNZgMV1pdS2bxI8F7BXkyBLjyVeauwvDIUyl9Q5TPu5jrMVLcpzb6WV40H0O6AXt7ManAhOrz+UE4JXf+/sHdY9aMF6kNZm3NPKfLgguPSqteTatkKI/ORMIwgcjb2WTOYolmEwwaCld34G1HB+xthYkWMkZ+Yc6SSsE+YtylElL6POp+ctyDdmce6thBl/GHUwISEWBCMvefmsuyjUa2VR5wcZoDb1fYXd2NcobViYxeu5GEasMCeIgpV/281JyCUZPa0NpgoP+h5SfAtD31XOsq6t1OL4mSaVdDJMSFxaz779I/dMUJ7o4hAIsneQBTECFYWRmW5YnXqB56OUapJidmHLXD2hlBm202cIKphUUF71e1ZICDjc5ux95DgYmylDf9ec9KW/se6zkqsYaDcHnAmKDsP5cjK5IGwpc229XACWPtbENi9AxhSvCiWD0s/EEhQ85IuLkGn1ZKwUeBaK8aKHe9HLw2oPSMvCjMKgZIIHhLpPx1ykuWT+c3yNIPOQrGo8YqA64pjZ282xvENytywQA0Yz8y5DnDVGYEWDsgaaA4orZabHboGF3R7w9VMnSAJTYMV2VpAIlY1hEWAJEiZZg4c+cJAza4CVgAjxiBp7NMV7Di8GAwiKcS2d47WQMXriHBF7KpO1emCYCziNQDdQXDa68JZIliTxsSZQDjPEu7NlXOnZZc7dQlDWUkAlkUi2c/pAeEOLmTTBferJumWuILB3zKtCShb4V2B0ja/Nbq7YQOhAn53hfSYvPOI8ZS6tg0zDUwkjx5+fg35tbJOGgKeGEo/r3B6qqWvfZIbd0t4Z1e6r0ceaaOaDGOvas9zBW8veapPQHTymM8NpKBraVD30UmZ4Mu0ZCCMVqrMBO/g9ZP3eyghFBZLBXJx5/lbe3yg/IGYMDCkkoUfIM8GmkuPvu+vDavd52jaCtrJL3PAsNBEaWHUIfKwMYBd9j3p7f1KMhxcUaBZ/jrtkGI+TKeXZ6Xv5TPlMbqCtJE8iPBHaahPKl+PceQW91J4OAjcrLJRD9ijzd7KSZaHyHZQ0FiPPY3LwKNnI2fPjfvQ9J41mryd7d7QJ6I8FmKFSNjusMiobABnsDeUd2UiolO1uPlCOXBTWEAJpmejq2cvkRRvwGLEy+wtwG4KK6hO+uB6NwX1RwMRJwpPBS5CgdzvygX51U6T5XK9SQViPK0mfgoGads6iX9sAwoPQC+gv1oGFbc3TsLCjTBGle9rk1bHOmEfayvtRJLO4RporcXNm0c7G0plZfxSV7a34Y6/Zs+gs/HhuPWbbcgCYKoS4FXXMUztT7SsE2ffn2HychxUxjbPpEMvGCpQ+Z/gIY+bYFb6DpGBl1duriLVmiFMtOfFpvig69eUklVwa7EW13md42MB6p4aOpCwuQ0cXBG/ZA6wbbdB4eU4hB1AGaGEvJxSyDYBjJ5vmGoALG0QoLfKeWv+usbrm8lNQrmM9WZEdmfFJ+aaCAdO2NUE82K2rVSXHRCjArLliQ3xpoyb6b89sayMrjJAyHy2ytkGAgUfB4JBdHus4vsPv4fm0ng8gf1ClrRmg0ebxvatjaKNxH3PNvhYBhmUeFYyTZ4QXk6svZCGTc2q4D0Ilx4y2XqAcmVG8sbLXgKKDXHDxLA8sYZRV9o70yrEc2oblfFGA4yURnwHKQ3nliuVNglBQiBoTKqCjIBAkGX7Em8TzI/YFseTI7JosqC8SKCB0ZAYj1RIYL8YTaC1/Tp+yB0eb4ndbxhRshZW1SIoPNhIKJJRQl5iSEsAqqunzdHKcKEOWeEQo2xqHgrK+mLLdoejmdYhSQsFnyCBDgNnzhxyhYy9IqMxzuzP8wtHo9LGxZwBEleFlPq9xtGE+buAgeXjkgbFZu2YuHJvp07xQwMwH99ZcqMhxZcy5/XgwlKWpVnIplbCCJ8B8RBK0BQPxIKj/CJ6dlRFGUih7C8FqPPUzJB/CliC/hWONcdj4AQqsSILXKRTwMBD6dKT3kNJK3CfaVKxAKHJa+jmgrpwhtSPnoVXEoZ0SmzHG+B3vTvdRe04t62q+nMcmPJlkrIXyHK85sQzR3Egm4NGQIgAc2xs62+e4TTuVWjojFcOGB89qknGysaLUfc84Lsbw1yXXASSxuXH/8IK2joFRcFn3WXqfhMFqzxhFyPxWlq6MCxsSQIjqQ1RDsbzEkL3s2HtQ6DebCiGifJrk4deC2fv5ANmQg4LyRH7Igh7LgfcYVCzKGpQr5Ry+j3DH08gkiPyP+2dPDU8ms8nQ1HgcF2M7XRKMua2ZCZcZWTn2leMPeGq0pea6JOgJ74pnMBbbjPFn3LRtK2uRNubxYZwxAugTCiQrohwvgYHI/DDOKKAKI3lxZOVE2xi7aoC437G5CcwmmipBaso6cdhe4/fJlKcYKGNdBVdz/rRY5gHvijQEFN7g8UCYVQp+mZmErA/+Zg6JkxTDBvuk2LFcCRwjOCKPKuWBcJYNcYEMGVMKCc+A4HGtE+dxaD02G3shKLi6pv3sypi0IAWuy4VuoVdvHagPAahEXhSOPU2MLDxt3fHU9fLoG54gc3BoIypYtj4cj3VTktFR3H6Ucg2clzKXFGrm0j7My86CDUJA7L/dRLkPppkFJvtthVHmuaUsT6VCeyx7ezKN20abdmb2Fb+PwgKW5HulzJAuay+MqxQ/jDHSuCd4C6iSuKMUNh4HJamA5tjPkRxs+BEKN8m68UzvyzCAFjM5jP6Wfk6lqH9PPZzGo8xVXej3xkYLTEX2CtBcNbz8fqAlQyKpeJwhuuh15IoVeLso+lgrvs9iOSftB0zvE3B3/QyVtjZIglxi2QObMWJM936ktDkOkQUl9daGYa7iUBlIy/nIcTyqDA0haFECOQaha8mcRxkhlNkwGmRguhzHQaAf2u1GkaitGRrL9GkEOP2kwgQkAl4UBuVfDW4blrzowUEbZ7HARmSM+E4WxghIYmL6vB6glWJkKB7GGCiO3xkT2sBpt1yfjYksIKoHy2e23KKP/lmaOYGQeUFwad5QeDB+OPNmlaBO+gkMnL1O1gKGQMy74F9DD2y0zoKCucvWdh733M+l8zVaW245wXef4iM5j4w21rRlK2faJcXC2UHMY0AlJKj6WQSts7KC3UT7ECRntj6Jlcji3loZHtjyBEYLNMLEoMHjHjRpzxen3dIvqjvg+WrzkxS7tdI78gGLUhCy1sH+2Ruxfy0kdO2BDTtqpG0oPGplSFyK/YICiv2XjJt98gQ50pt+ArWd80jtyfTJUGH/NDYgiI1whhewYpOUY63Ab8QCGPrMe0Ft21gxVO/Ra4GyQHhYtLGxNxXwnu9xtp3P7EII61kqZBrzZAgWw+bU+5+9xHd2aXzqmu2mU2q5p94/NKwe6wzZYqMlPLz9/lz6QD1NGFgfRef3MfArRNs054r0ApsWt5f1EP+sBKnTV0vPebxX9pKRp6wHYE2UHPuyekzZK6pBY7/4G4GHkIEUQXmbHBdgYaLUgDjuufvu8oY3vKG87W1vKx/+8Ifjs0c84hFVsWD5Mhg5SZfFluE9DdYrX/GK8qtv/JXykY98pKi8EtWwa9BvP+cn4H0gIOknHspBquScrZ4caOeeVAJvk7uc252VUlbaCNfYuLaQaC8sQU3snXfeGfTy++67L57z4IMPBqSj9yRE1He9p1dmIeYziPQP2jrt+v7v/6flP/+X/xSfPenJTzmXpX3uaIW2rTRpBLWENh5BaWbaMNY8cCvrhTm6yDAkiAtdeGchyNpCGWEEVQWz35+bh+qJtXP+BwwvFCsxHGIOEhRAuTDJuO/eeD7zRCFX8mWy8cE6wvuqcRcLNTyXLX0rpW7snDtDEJ4CrYxTm9ZIFQ6OJTGntaKDBQwBZyxeIJaY+66rBUPrOHrP0S4YX+yvUxflhBiDB8R+wrgJCLKf6hQCgeJV8H3q0pGkfI4wM8zHr1dFngzlGnO24FvYUz81y0uGQjA3EyLCGUKrJMv0PQyBrpmJM1DdoYuvDY12Vmwkwe77/hxpBHgYQkFpZgYjhhh7BLo7fUYxVGQgoQllmJNyYbwyJ9GffsoZgkGJAdRYxuW8obondX8rFJAViAt4jRbC57xj3evUDFGU6z4Zgyg35pOYO/HH01TVATQg9oc/B+EgTeFD992reNwMAwGbZOsayA2hwIOVYCjhSOf4yUbSi9iT7v2B97+/vPzl315+93d/5xzcpWd+0id9cvk7/9ffLapAoXtwZDYbv0sCLz8D1/SNo1KSktucbcoLX/iiGrOJjbyZD4fLRybg+WXllOM1KAwWCopMguEd73yHRrLouBAqnKst5Cfh/SFQuC9jidDIicF4bxAv/ut/+c/lH/7Df1C/y7+sGGnfJ3zCs8qP/8RP1tN+UXJ5c2To9L/+1/8SBsItj7qlfPbn/LlqjATrzDli1b0e0qFvZT5b6CydyQVMBeTF+OENorjPXMU6Hy+iz9Tjtj9f0gpD4NSHyrFe6mbvZ6LIoWNb6+Wck7QwjAvLU985sfETQmf83po4oQPPtDsjB12GyVjni0U9kbVi44Z7MKSwIreb+ZhzFGq00SSAepqr24yCYbPWGEA7M+s4qXRjT5VD4noLKwwgKP/QwmO+xu8Hu2sxs2zxwhbtfNz6iaEWjjmRJyd6/8LvUZkcA0DPvOy9FbEFCW+PzcY0a2JKBMZRPNSeo1ArsTLuG0QPEXCcgLm3Z6HryeUK9p0VDCWM9CKW03jdndlrXCVyQHgX9ojYq6xD/R217OwNRazLBIldn1ImFvNxMMyfyA5n/VzPEDgPjwSFDFzKcea8QumUucIG/SDez9qk7+pbIBrDXJ1DYyFChe7LyQBVYXm8NE+qJLHr59OSBVEepFBI0PzLzOYbNL6gF81UpigUlb3R3qhQ5I3JKcED3s81LCE7UZVkZeMijAWUDUoAEgQvYJlNov7qe7LUM2yFZsQ7QCOrE7d/8IPlpS97Sfm93/vduMeTRyv92c/+0+PPJ8e1v/Vbv1m+8Rv+VngGCFMEEZYqnhIKJedyVC8lBcc1cSili3lKKJ0cL8KzyPEYxgaPSc99yx/+YXnZS18y/ntx+cM/fEu1PFFOWXHwHuMBjR5YJdfKow/0r227c/Apn2XICAXStjNckeu6xcZMsBWB8FwjjJhJazgEbwNohhgLXgf01IunG+Mh0daqIBZziaZ8LHpsKB1IKGaVxyWCyMtlzTDPRgGkHNYalqY2gjxIaKydoWVIAcxJQNNdygFykDiP/UWrLiuBWN+UNeonplPbzbUFGc9MdNl63cI0xHNkb/QJjgpl6L9RvCEUrEziufu5nh3HePe25MnmjwC4c21CQFi5cozJMsUQK7W7m0kulIxZWfmyhhFQ0Mc5+gSPK9aC1xwQ3WI515rTs1UNA4iIYP/Qzwcf0h68pxBWXVeVKtUGYn15rcaYGOIStHUOOvWYrgwdqb5cg5G3nwgetTjr4OM3/B7GSDzX+5UyRxzqF321t17cZiDqnWE0fQsSRfSxGN60UtR3tE5AHE7NYCzDTFwpw8yihR3ZJCMw4jzjP7H2OKOK85NgLDZWvCijgqddSoX2mMsgbDRNLcQabEflKLkt+sdxKEDG7J9thuhtnJeELIS36fawXyl8jAHpNszwURamCBwEa8Z++Tt7LcSaEMAkr+ohf/AHf1DuGj0avb75739L+cIv/KLq+fyn//Qfy9//5r9X7rjjjvK6//fflC//iq+sShHFQPyFA8eGYbjgCbCpprbLm8MiR6iBTSMw6QNWEZuLWBGeDEIEAbRazbXlJJz1D/Ydk8N9szfJoYR4OigDvpsnV+899wu/sHzBc587CRUrnU/6xE+Idr74pS8rX/7lX3GOaZhhRBSYflKgM+je6mfXzQl2tjSXZuBVOq3vSZY4uV5YSctEN0aw7MtMr8+xOxZnpv/L+g0GYDcXp4WJptcqJRmjaGFCZlgg4ovjor7u+uvjnkBHx3gJ0PqlxDw/K1u2MQ+L82fAsMYr883j11o5tI5tAtdRGXttgRjxgQukFSBRfU7cNgwdkwCqkTXM+XHVG5AnZ+EVY+N2MNeRRGuIJdhWhmQkNM72U8CZTPzGRkvM436uIh6K3m3Rs6mqgnWLgudcoAzT4IWTpLxLMYgVxk1v1tt2qootJbobv3NEvqKUiA2XvT0g2IhHtrjDm+in/LqdvQ5Z8zsrpvBSN/NJrUBLGoeN1x+1HxuPYXjIhlEPIFjt55QSPK8Qpla0EC5072NXT4kq4lbWxBXzacZUqIiyQ4auOe2WfKWQJ4OPltB+By4dv3/s42R6vGujWMzz1j+Pqbay21XafqBeiRQRbbQyoPJ6oBGgXbuJFBQK0rA9ryOqASVyCJ5Phc29hw5s4MsL1Xt49ugUvDn2HkzHpcMEei1gG2lCKJyJdZqhGYKIeBMIyyxgcw4UAkT/3vSmN8a9br311vK85z1/EkReRH/uz/1v5fM+/wvKHR/6ULn33nvPCXRt5J/92Z8p73j728sDDzwwDmYfSk33yIIYr6Lvpw5TFFXX//RP/1R55zveMVrVV+Oz5z3vefE8+iwlpu+r7a/9uZ8rvzNCjZszHX3cl6c//enli0do8NGPfnTc759+3/eWj9z7kWmSx/6+6od/qDzykTdHmz7xkz6pegVsbuDD3//93y//4ZdeX+788J3x/uVLl8tnftZnlS/4gufWhba8EBvAOAD6ar3o2bTZU8Xb++///b+XX/+1N5V3vvOd8d6V666Uz/rMz4r+sgjPUsJfzi+SgPvFX/j5uFZj/+IXv6TcMvZbi/YP/uB/lZ/5mZ8pD45zoMX6tBHC/Ct/5UtjPlE2/+7f/dvyu7/zO6Oivly+8qu+qvziL/5C+e3f/q141hOe8MTyV7/sy8ottzy6UpYhbmSIrlgpItzxuCB8AAUGlOENJWGlPhULhsOkvDC2FgjVFDeKMeznhM3YB1ZIudJ1fCd5WoH923iIc3W0oVZzPbdsSAB1hcI2eWSfguwHqRAwVQ9OnIIQ1i4wrw0HjuVG8EUsoG2rIECZDGVGQKhDR24QbCjGNJKnnQtFgibecmfrHGuacjrA38RiBnsSvYWvPBeRKijTNPi+JLwCP3XtHz/eYmsFhvcFQUQCjoraOxtYKALyktQ29UWCmbI4sN2A3jZOPl3bC5MAPlwuzxFUiudisDeKoF/b+r867u8jw/CNvRAo3hz8FxCjxzuOQzEUPNjbxIPKIZDByolyTsEGRNnZgCFvSqNz7JykM1f15hiQIa3tesaU70+8a7BCOYW+rznWmDDOek4zU8gx3PZWcMSGqAyhsdWY6O8TyELtRCqhv1mpNV13Lp4cz0mOwwLBdhEGwhrK1n9miuUKDbwIhpGrwaKT8NfDBbl8aFRAEmiHnEEyXvPyl/8/dePzvPePMamv/ZqXlbvHWMiQBud//t7vlZ/9mZ8ur/mRH6vnEC0WkAnmGmeKOb30JS8ud955R530uP5//l75qZ/6qfKqV78mvB0pkQ+OUOPXf93Xlttvv/1cLEvxsDe+8Y3le773e4NU8Ru/8RujZ/ehCte9+c1vjvt+0qiUPvnZz67KO3t1P/HjP1Ze85pXn/PydP2vjQrkj0ZY8Bu+8ZuqIMXDxOoj8I+QKfZkNBoccIfH9yM/8pry6lf9cL0euu+bxva/5z3vKd/0f/6dSifGEiYDXf9+4id+PK7Xtd/xnd9VHvOYx8T7igv+x//4hjrvuq8g2d/4jV8v3/Ed3zkq72fEexqr14/KV9fdMY65Pofc8HvjnP3mb/5mefVrfqQ86uaba503LDKti4CnSqneGtg9ryHBUhEL2E6lYqJGmeecWA2BY7LnNa5AeY3hOb1QcHgqsebt3WyTx42Vl1ll0R4LRNbtgcshcR3rNmIyTkxkry3zJrVliXe/M1UfozE2r6HWWgam2Lse5tNFK2NsGCosFgLX39H1iiWcpsossa+9VghoczBejWfY8wivop+PktC/q/ZOyXch5+XQ5AH148zW/NbWuiQGMZEQvF03V1XvfAy31+mBldwaqnIptUCthUJdz8CanC8kQU3ckf5S1bwYzpO3dIJBvUzHhxturOWrvFfOrByCtGIvCiMnKogYTu09rrt2IjZBcIFoQWwQg4T9HZ6J+0M9PzxPEn1r2aRmPu49vEUbKnh5wL7yuo6cNxkxNq8PFC6MP6A/CtiSMqJrIhm4n2shAhOrP4EaeD/Vih9ef3vCQHZikH9Le0kLIzKh6NpzRxBNQhallD2gytoYbyAhzgbW+1G+3hrvIhuMe9IQwVK6t4Knz/ui55Zv+7ZvLW/45V8ub33rH52LGxCn0Ovr/ubXhHKRt/KqV72m/PvX/4fyrd/28nLdddeFoP25n/vZcxUpJuHdV7z/pS/5qlAit9xyS/mBf/6D5bU//wuhACXQ3/Wud5bXvvZna5mgn/qpfxlKSW152Vd/zShgf7n88KteHddKsX3TN35j3PMffsd3lG/4hm+swv9v/e1vKK945Q+Xzxi9EiwKhJGEz4fGe7761a+K9/7iX/xL5V//m9eN7fjF8iV/5a/Ed39h9FDeMsKcOX+r4vXb7TmFX2NpFrqZAfnBD36g/Mio/CCS/NAPv6r86I/9ePkLo6ek9/7V2D8pnrBIw7KfySlagL/0+teHYtPrJS/96vKZY380v28YFdIb3vDLE3w4elCagx/78Z8sT33KU8LA+OYRgtWcTl7ctNkFyb797W8r3/Vd/yja8dzRK9T1d45zIY8Mwb2wx0OlefofJUzsHfECAkBYb7bzgWvAZwST8RrIms9xJdZXk6BUgshYeBofbbQjw3YhmIaZYUd7OEogGEsWpGeJLcp5TTlPBm+NfCgER46H1RhtKRUCzB4M3g8wKtUICEyrrSieysSyoFWbNd5nZq8t/ey1yRukN+wNV/KsfOZRsVdz7GM/iMNFQjbeYT8ntO4ckEe5675UVjjA8OpnNrDIGqWZa9FlpUPMpgEuswEY5ZyskHsrr72VGoYGHk/dp/18qm3rNiHT9mYWUi0ByjMeJoqcpFVYZpUI4PUYnuh4nTzrS0mxkkS9MLQJ7NgYJdk45sR+yPDkMhkNC3skoCgYN0DDeL9rr8MKM+73dTzxLPGsOHixwupqvw1AUBbGKIhqPm33WjoCB2+KXL2SECCuj3iSlHAi2AXk7nFcVHpimUu74CFhrWkziaaMQMYzapO7DN2aa2WhXrlyJd7/xE/8pDEm8pWjkP7huJ9grV/+D78U99ORG5/wrE8oLx0FohTB3tCRqNJ61j/+x99Tnvq0p8XvX/AFX1CuPvxQ+b4RUvupf/mT5a9+6V+NOMIwzFnq+p4gJQlOvb7/n/1AWPW671Oe8tTywIMPlu//p983el0/E3DUQw89HLEttfvFL3lp+cqv/KrojxTi3/+W/7v8ra//ulBO7xjhwI/92I8b+7OrYyCo72M+5mPrMRz6JyWjxSQBIEvw27/95UUIo9oOZPWVX/ni8nM/+7PRvrvuvuucMdAktx3lQwypUlSTl6ufP/TKV0b/brvttvK93/d94/vTGUTf+q3PLB+55+4RUvvt8pOj5/bX/tpfn9ppK12b433vfU/5ru/+zlg8X/VVLy5f8RVfUTfNa149eXrPfe4Xlq/+mq8NwSWP55WjMn7hC19Q7r7rrvCUPvdz/3wVJHq9ejQkHjXOpdr9MX/qY0av81fDK3rXu94Vn6MYhv184CP5L7AaUSR7xxDA5Ys3GIl8sNlKmas1MF6x8EupGe4cdLbfzqWVyKbv7F1RRgnlEXNSSi34ypxQA616WzLgLBApEEqfwiI0LLI1lHW8m/KWbhgNrVAkVrDQv4E4gQ2JMei+xIYaewdreyndaj5DDOYcSgL4F2+nS0KPHCm80VMz4CClEGsMY6aUmgQKvNcYfh1s/ZN0ScxrY3iN5E2OCykWWlQMOPIpvCTO7m2EBdnAc5QJFqVPcW/P/YGPeoA0cM2B9YW9hYjLGAoMtt92W9f7wn3C84K+jCcKcaRPMPqxlRlVOM4Ma4bn5HlUP6PPMYD9nGYh2M8QLMYNbMbiMYScBGHi1P2vXq09vRiXtq0oAAcPklQca2sx0c4pSsu8AxnX+nz29nqPabFC662kgeSiaoWPZ1HlCQ66LI47LlzVneKzEVfk/oqLiVBhQg2GX615CExUGR7L+dRXXKwa/B5mBgaWpgSOfs8UcALeBHt1v7/5dV9Xnv+CF4xC9BUh5N/xjrfHfW6//YOjErm9/Nqb3lRe+UOvKs94xjPK//gf/6MKan337eN3iYUgGHTvD44eyeMf//j6GQKNe6u9f/iWPyxvf9vbqttavPBEdf/Q7R8K2AlP5dM//dNrAp7G4c/+2U8bY07/s8bWyJ9CIOoF4YMxhDmoz28ehbjiO7rXBz7wgfGZV8f7b0d48q6qhLBSuYYxRChnoskwzJUL+FvXRyxnvPYTPuETRnjzyrk43Z//3/9C+a0RRpNCFjvy5kc9alwMi1iY73vve8tLXvziuP/LXvbV5W/8jS+fMPGxT29/61srbClywS+9/t+HR9r3kyeiONnDo7EiI0JxwmJL8LYRplVsio2rfnzUR31UwHmMHyyy8FibiVKt0Tz22AM5BhPIrKCVD+djjqOmmuMEVEkApw6rfDmX9c+xUaDn2Ay26Ci3g8LXc+QxoVA4QBNICBgVuKyztxRts7F24OoYO0NjVG8oi5mOHlDY6HFiaR/Y+sx5UMUQofpLgiwWLX+HJW14BbgPD4pE496COhh+plMjkBEy666r5YhyTbVeAtptzPlCGwfmW3m+VoyRBmFaNjEozuWJe5QyVwcBTgSy9f7kKPQCbCXloziR9xxJxeRshfLQM8pE0Y5xsOKCfr1PnhcebTzPgpvadJmhWfPrxt9VMFaxpTiBOMFy8oRC4ZlSLg+D4yy2DvrXoyzcNxKQqfIRlPDx54mVCu2UAUW+F8Sk1WLOh6OYFRUctPYgj/TM/35fx7tNSlyKa2VPiHhq26SCr/v5KBWMRxSh+iNFJC/pKJ3ZF2Sh8T6HUnLmGaDUID9gSGGo9Fbc7D3CFQsYXJnplGGOXOUhNLU7KcVw8XOEqjZyruCNhyFB/Xf/3jdXwSmh9oZf/g/l9SOUJAX3Pf/kH49Q0U9UoazXd3zHPzgXY8JC1c8HH3xgHNynnrMgde/7FaQ3BKnrLyoT7nPvffeGJwiM9IxnPLP2izgZjDvwf7yWWLztnGsFAQHFxzWCr352hB3vHCGu3Ib43n5/jrae2YIZNs0eKm4yClRtOnb2/mNvvW2yqtxmLdbHP/4JNXdCBsDjHve4+vw3jZ4McMz9998f3gJe2EPjfMBieu3Y/hpQbecjCPRMUfzPDFl4dKuFlqnQxCQQ8MxDPeOnnSnsGS6gmjnxGViQa3tRUJeLvz8k4RM1xTabc7TnmLNmriKyJVal5ziOytk70K7ZdIJkdD8OdAtmlwVPjRVZCUEQQABjULDJKYGzSgZIrFMrss0w1zLLwqWysWxZQqAImrLHL2IhVh7hBWDtWsChBFBqrDnqHGoMVn4u8Bsw3Zmfz3VS4hw62NgTqMVgSzkX39nb2kZQM2bF35XQzlTxmmahcXZ/UQy69sFRqQtmCmXnmNbWRlt/ARpHqMrTjTPH7EGRE6X7QAVnfELJ2qLHs8FDin66jXGvzVxCKgq8ap+4//HyemQckRN4NGEYmHzQmYDTLuZjITrkTT+XNsLL0UttWcEBsBe6sfImBra1TDm1IbhNsawsg0ApotlWRLEv2yk+SFFZ8r4i5mclv7Lc3VtmVW/T8w70OTRzGSJKTrH2hgmmnI+jyPAQwhqvKR9PgEeBEsOCJ+h74qRI8p5kFeJhwTjSZ8pletazPjG+I+UkRUUJEj1ThTf/2ff/wCg0dmGO07lhmDbi0576NMe45jhZlzDNG2+8sfyjEQqclImu4YTZPuAuCWkJZASiPIrHP+EJVakiLMH9JwbdrGxlMVR4rZkLwsJW/M//6T+W7/3e74l7fPbnfE70VfDm0dGl8vf+7t8JCi9MqL6fz3vZJYHep0VTmjkhsgZMx5eEtZTTNZ9vBIVXL3LDtMDkTcH6o88f//EfP8Jxv1t+/rU/Vz75kz+5fOZnfXY868rlS7UG29/+xm8qz3zmM630JsbNgSn4IrLE/buZsFApvAO1ypz/VIZasaBWlk7GQlb6KD7iLFQe1tzkPBptS+px1WO2Gad+KvW0NlQCW41zijA+WO/ykjjyGSVRurnoJzGCWv+wmWBXSvnAVoUMUA+Oo71Wjr0VYg0Uex8hEGq+1DBVtA6mrHOzzpxIDGMM6AamZRnm6tBQhWEjHqY5ueqAPMQJ4lzxXHlTrPsyecJAyVjnS0Oj5FhFwN37L2I9478TK0eUUC1Y67EbLJSXhro4hRZBGtR/w28cF3FoYdcZeuPeBO7jOVmID0MltcQ6swclBRMxkKapiaJq6wnsuTLFnYLsMP6MJNXx55EZkJ0VDUy18DJNFGmsFJCnxOFYB2EgGDEgThoyy2MDBRtDDkiPtQK8CZS4dv/wHslPWiei09qJtigaKmLwN8psZUOmeA63nuNIO5k2au1X8TjDQtR8Xxll0TXPpd6XvD/dzAUP2DdBULERGPqg66rBGHNGsBnhlyE9KRgKkVIFG4sWSjb5SvWhbVuhDr20cV7y4q8Kz+TLvuyvlRe+6EXVWkC5Xbly3WxJjo1VfCKE0Chon/LUpwb7Lha/Ny4QGAyO6sGM1+o5T3zikwosQMFIuj4r4FJmcoFiSSiBu+6+uzz6MY+pENE999xTXve6/zcW4Od9/ueXxz721oDiuNeVy1dqbE1/U/kBz/F1r3tdvP8Zn/GZEStjfB8e42RMKtWYsYxRcjDJyJ7W71g2sMsgnTxtjMGJki7Ik2RTPLNf//Vfq4teY4mVqk//8pd8SXnJS142xvdeHJT67/7u74pqFhq/x42eFvGVK2Mc5JnP/OjzuUi73bl4Y6whGwnQPyXgOL48gqEWIkMSaLlKR46lkeiJUYQHiYdOHC76kz5vphvV2I6UwDV7PE2yaImpYPGR2yLFWam3OlvMeUIhnJ0rs7ZniUBkvefKJBSoDAFsC7MAO3Yzy+/AR7UXGygS6rUCNILPEF1VON6HIeAtsCVcrhuFghhse3trMF9RgCgKlMTOkFk9fM+eHDGfoLr3fQ3YEy9gL6JkIGvIy+uS4XPJsJLeW1oAaX4OfSotcwFcVo//NkoAUQJ6Ofk6B74X7DdiXcCgTTWIpvV26kRlvN+o0NFN+UIa8wN7KDASGeNlikORx4MHyRjmdXxgo7L4M6qPy/iKqgxWqpAQGJd6GJ8VRMB0NsQiD8h5bJEK4d83jn9h/GDIcZhkVKnBE/d8qn0oCcgqx45twT5Eudfj6S3DFx4/fR7EoDLFAOV1UZFDhg+UdZ5RkgLEEI0YkmVw0OKNCJRhLoXUIoSBEzIrjNyaGt8oqX7Wfn8uCRW3GbwReEHXXj/GKO6668PlVa/6ofLGX/2Val3q89/5nTeXN77pjXG9GGW69tM+7Tm1ssAP/9Ara7skrF/xin8RiaZ/5lP/dEB5E7Q4l0WRkPi05zynJrO+cvw+OU/6+YpX/GD5xGd9fPnUT3n26Mk9PHoJzw6Ks17/4P/59silQtH++3/37yJXScy6g4OJWfSIR9xY+0psB2GJdQPceeXKZXtW16o3oM9+4edfW9sL44rx5nuZlab25JLwmWKqezz7T39KvC/Sh+4dm3r8ztvf/vbIa9LM/fk//7/HAXu4+lMO15VQ2v9kVJoa7/tH7+q7vvM7Y37l2Ym0omtFI7/nnrur0pRn+cIvfkGMoeoeTsJ4LgYZ8OZuKtMSinfrCu39nESaDZGcwxLwsBVQwA/biQ4uBU0cJdahN2Bs5P2U89N7Q20TRZVAPxYoBAnaSTtyvANW1LFzcQJ6sEW+dmkdLHQ8IBKR6zHlFoywofSqAmiYY52UgOqslCTATl3LDXbX2vtF97nkAsisGyBTffbgaJR1KX5Sy95YoVVjSF5AKVUgoyQrtOf9XNxH2FvAVsCyKCUqN6wSDHbmck167ZLHSbHWiEd4nKMgMTEKC6sjw+K6/4HHHMUBrb3p5yPv8RYPUrIz/V92M+sSEsE1e0wnhmbpU8yj89CEiGD4rtqZiUeFh2KvMNoyTPRzTvtFCYcc1Lq2ESkPbWVmHP2nlBFQMwoRD7sM8zlW7Hn1UYqf0kq1+oTXebEBAOSnV8CNbkNj1AJDA68uID7/xPikqvjOnpaU26nzwdhPGZHQ65oL1zJPxKgwuMIgwii3AYGhGTonBstKQi+8Cj2A02gJyvNTL5JxGSgEDjEm4BH9E8X6q7/6peHNfMu3/P2wzOXJiDkn9p2+e8MNN5Rv+/ZvD+Fz0003BUPsB37gn0Wi5n/7b78xejaPCcvyj/7oD6MdL33py8LTqpYbg2sL9m9+3deX7/2efxKUbCWe3nLLo2KwJKzVxr/x5V8RglnP/tZv+/YoM3TXXXeVL/nLfzFYfGLiwQx8yUteGoJafVeSqIS5+vKqUWC//vX/vvztv/0N5c/82U+rwX7G43M+538rb3rTm8rvvPnN5Yu/+Pnl6WOf3/q2t03QFgtxsag5YXXS/Hdja4k6Y8RNqKRMLPBFL/qL5TdGz+itf/RH5Z+PY/ZLv/RL48IdFdPoBWkeHzsq3q8bx2NjITYMdcjiGSIrfN3X/63yj//Rd5ff/q3fLD/4z/9Z+eqv+ZvlW7/128rXfu1XBwX8//g//np4TQ88cH8QUtQOwXtf9EVf5AMZLeDLfAQKgr5rOV65rfFMxii8Bue8VS/gAkmBmBoeOQF4PMtQAhbckeNF3A2vxQqlCpYUkG4NF+JlRsDW3gYlV2KzNc25vKbYJ3g1Ft7KETpxsi+wF3k62xRkRklwng0wGhU4NmYs6rvB2vM+22cI0MxClJdel4xq6F4SmNEek2t45s4ML+rT7Qw5RrUIV1mg2gLCMOqsebyRCXxfYx0xof1cNYaqCTkh/MSxqCPH6cIbAoK0BwHEF0rcQlRzcFVjm6ra4+kBeUkh6jsUHZZCwWPF+znInkmZYkkBIbXzoY+9FQpnIh3kM5ms4Mi9uuwqFMSMQiFY4DcXYDf6hOFGfJCq/MVw2CrR5ymmPPg7g9fYkYklgz3BQ69/4Ldz8Vyteys5tR9vEI+UXDyt5xOzYaOGZDflPl0/yjnNw8Zeqcbjmg9ypObdYGW/MzIQcSejWTm+hwcef2vdJcOSChAc1RKxXajeQCanPhWyVnVu5mKKCJy+78/x67WJKWbKcQywzfTdZ370R5ef/pmfCwtcL9XZU3Lqh12mSO//8x/8F0Edx5r+0r/6ZeUffsd3hkKSghAtWXlPymNSUupXfOVXVYgHgY6S1T3+8l/+klA4olBLySiOoqoGuv4bv+n/DGUDdCZP7fu+7/uDrq54mLw4CWMpIClVPQsITN7fN3/ztwQEqGulXGGb0Q5iTX/h8z4vSgfpOuU0/eqv/uoIBz428qqYtFrRt8yxLE7qjeB2OqQxx2AiSG/yifr0g//ilQE36vN3vfMdoQA1c88ePULlEykWdOITfRVjY15JaH3+818QuVYS8K997WvL28ax1ti94hU/FPeQIn7zm387FLs8LylD3Xce+/bcWqG0yFS+yGWXNtuqHJgvqlpgscPQq+XxbZGTh6N7cxYRuSzQsqkYTeIe9N4Q1Ga1FXszYjyh/DMVnbwhwchYmge2TKuAKROisE3eysqeFVZyMcyiNkUMCiWIEBzfh91GvAyBDUPvwJB5hdoMg1b83/kzQG8oa2AVfQZRIZSRBUpNuN3NWfkn9iCAhGqhVUMwCPN6GmqxV9NP+ToExFfevwHRWjhyLdXJY/zdDyrCn6sRuJnq+tHXlVEa8rTWeGllgsoituN4bT3nCI/VY6D7Hlihl2E+9DDGz22kplw80/FCFAXybG0IjgoWja/D6KiEkSblppXJW8G42Fl21nVfJgo+x2AUK9eQs7tdPUGYmBPHcFDPjufUBFZDeuQr1RqDw3AuuRrSBeMKtKaXCtcCEVN+yp7MZNy4vRzjEXEsj/OR2aUrGzY5hknYCKOPEnAcI4IX1vzkT/7E8Cmf8qkVl8xB/5pDsp9ZJGDrmc3HYCJYF8b3c1yKRSdL9p2KhYwbXwL1oz7q6aHYcjHWTDbQM9797neXB0dLXYrrkTffXKtyD8n0R6AjDIl76Jlve+tbQ5jJa7r11ttqfEL/iAtlssdb3vIH5XGPe3x5whOeUJ9De3i2vq9jge+7/74oSouAzjGnHCSUN6bPJOyzImUcSTQF7qsFJA2HQhghzwcFHJZsOwk9SuO/deyv5u3W224dcenDUDbEvTaGKVgsVF+ARXaxyjb9kcJ+56jwVHLo5psfGd5mpfB7oZKvUuFNC4CaQuC1BUliTQzCCmBrr4j4GQUgGQuCx3ksYBX2tjKJ8ZGrQbWIEEwqF6W4Xc6ux7vZTlnuxJoYc0oKkTdCBnuFeGSJ20sCFkf5dg5KM6ZDMvTI1wEWJBmSfUfchr0XBYY9vhmmI9bCeU41WXcYqleQjbfIz7HijjIxi0XNbQqhJ2Vo6x1WJXlveQ5xu2lfrTLRz7XYwnhIxBMUO+WBaA+wKEavvC9gQaodsMfrkRqlVMp2kELsCZNMXKz81oYrYTZW+n7T1EA+FPnoj5U47d97rGPPDHN8iXggde2Ctef4XG8Pu6TvIltZU433OTHLYuWVUz2qciszsYvSPnFf/wwmYTOz52q+HvLaCpQ+wLZFtpDegzclD19zRMWIqynHCvp7yCjHL9EXnEeFobUxDI9MR05RGQKoF++cdftr735XaX7sx350+OzP/pw6GLDwEFTBnXdQD68BYY1XRYyJ6xC2aFmo1jlAzLOyIuRemeQAw6/GAoahVqGQJUrg+WLF8cx2ghF4zefw5CA138GCyXlYtAPKK21EoVAJgIEHykNRM/FsTgRkfnYmEeAtVuvEgh/hwmLl90xa2SWI6KJ3y9wGhdjwCVXbKYcfJ9d6U+3tRXOgY1YEeg4JxYxjfNfzG5txt6sFHAcMBW+AP8Y0nAbvHJsOthyxquJxyjGmkgyjXJeRsUKIHjhpsyqr/ZyrQuKi+g5rau35WztRs3jThKVrQR4b2AKOcc9HwUd8rEyQBYm8uVIHlOmAMQ3HoVRQBuH9e2x3hoqwcqnQzFwPVkJAgxImglwgMsQ4N3P8KBARzz+Z/4yn2nMMAmChyloMQ9FrByW6TQo+1nQpldAAGUXjD4RXyTeGaEvuh72LA9P3az5Pf541GIF5x5GYS7ydzjEioMQzU7p7w3pnJlrEfA5D/R6KDFiyS4orZMJurgqPjGF8+oRkSFhTFLYqt36GjY9TAjkwcq7oDwzIUSNR5dxxrWo4WTlTXBaBDuy985gRWyXvKeQAJAfDk+HtWenQpr2NQwgpISPHn/KitjgpigV5T2Vjsk/ykLJHe6/RCuXZ0Mcb4/1AC8b3f/097y7d85///JfL4mdDRePatkIsUGCB+xCcBOp55QRbLHIEDwqLBucKEVkhUPyS0iB6Ua4GoZ0VEEI6Q455s6JQaFs9XK2dTz9F6ZG7VMp8yB9eHIqKvgMZ0reskMm/CLffHgETh6JhHDL1Pt9Lr6y8EOZN2ih1rLuZzsx9FxbgOwtGFMLa2fyHdtOrgvY8RkKhFTkbsHoUu/n8LMZ6sZhLnTQXhFMw51ZzQUnGkb5UAwFBaat/lcgFVYkM83EfeTwRFvXQQW/uim8zbqWcy1YPyHm7rafShlfXzUcJsJH0yufXrO1RdlYCMFMp1BkKfT8FvffEbxYpTyutgVpYdrerQgT2XGehS9AewdJbEJ24yCb9xeLGExps9RM875LQgx0J/IQyoC2BJNgIhWVG0dmA43xdWOHDMEMvw1AFJsfMAz9WcsAw5zSyZlAKwF8HNpwouUNCJmECxiB7NUCGeIMrGxInDqxT5y9YbBag555byjkPOpru/UD+FwqXMRi8NmEFYkQcOE5C5XPqOrI+9VpnGWaFwnrdG3IstGm85tCxLsoPkRpAvT2YkG0zE3uQHdyTPVS8NlkjcTwHiq+UWl0co7C1HEJJAVUG23aYyQ8xp91cUBa4Nvb6cj5CXfMj0kbbzgVeY667+Zy6DzzwwOTBIvixNhE+WMUIepQJjLx9GmwEJjEmhGdm7UVw10oLKzeX80HZiWiAsMJKz8J6GOZzilCgMZG7uegnljwCMQJ8LlWfq1dQvwlPjPHgOUwwFgEKJH+P8cPDzAoPWAsFDGzIc7PFjwKgb0CIjBseBffCMyjJQABaG5JSo/0aU0grWpQkJZZmPvCtSUo2xxIzVZz1wDjyXO6xcL/YbLvdXDUY5Za9yjjmwjg1ygtoLMbB86lnyzNbOVcEGGLrwPdJOkmZuWH+oSIDsQCl5LhCZel5jbNOKQRLmSGVYTl2VYrOXlnEvdQ+5xtFRevlVCoonlcmD2pD/NXxsFx9QR59jIkFBR4GcwypgRQN3UOEh5KsZWIFWTBgAAy+FxUNgAphdEFBDiVpoQdsx/e6hJhoXhZY3/6d/BopgIUVD8qAdRNz6/tyiiyKV8/hbKkzx9BOHXOC1j9YIQb0nvLO+jLXf9S4XjGBRTEPPWdlr4VSTbAPgfKIEQZM6PsUC3CYcseGbZmzXRo/Yn0Bq3peyWfjkEmMtqgYnwwH1uHSRlMlVGhdjGsrZEI/n+SMLOb0YOZy47luJgFWz5ziOcVjt/B1KB0IE9XBaBLrte/PIQ0WjnOCrOdefT80QkHCNXKisQGAFxshiGGoZcn0Ao62nGjPWcU5GJ29DpJrs7BFQQRn3tYM16OUFFPKZ4jArqoURru2KCmEiZQECgVhSHAPb4V7IUSzp6bvKoaFYqQaQqZzM+AK7Ote+gnkiAKuZ5Ykax6lkIV0VmQIRcaInKsMK9YYRtNUDwULG+8MAYu3yvsYAYzhzt/BIqkViX1PCeNusTiXFkD14UpBNVTGBkFpS5GVMuedVei2masGkDMEhFOSgNfnlKzKa2bj4HGxEGjxJodElR9mTJ/NGMQQC+KgbieFCPstlIJow7Y8DzzmJ1YywWhLXmE2IjDMahzP98Y7y4HcrandzEm/P398A9WS9bcEGkwmPCKN1SWfOFpJEJ7XwV4GbD3iVOTG4GFsbLjVQwmbKaCdlR/xJAqannkfwzbTczb+bmVBwhK1gsDzCEFjmRDrd5iLCvO8weMa85hgRKxwCdxTW/q0s/X8hrHpcY7KGOOYHCymfBrOVKLEkZ5zZEp07MfxfmKt6f4HhmSps0dNvPCe26m69WJa2BFPQZi2KKb9vh4miEyBNk/fdR0ekRKWQ+H7/Vr410oie/rF4xCljAS/el0O9jQrVZt9107H0sjT4OiNmhfk9YzhoM9P7LXs9+l0YiungJLtxaNgF82cZzj481hfw5xGEEad79MkAwDZUKG7YT4SXt9HUbX2bAcbI/oedHbkFmMXuuP5z3/eyxWQJ+aQNxaeDgIRlhgbUa/sRXDkA/CK/ubIi13GgxMcpBfwxjCkIxuqYj4v7BEOKAZICVhkQH0XvQUgScgL3Effgd6OdY0Apa+0FSs6kz1yW7ICyZAe9+N5QILDhYlFIBKLY0zynESf08LCm6CsPrGYYMWQ02FvJAeye7erbjhDFCjMPL5AqLADo3biYjqhVIJxm+InVXlZWOV1kmOKaxswrJeAubwBs/Bu0hoDhuOwta1jY1jhxZs6+tF1lYE1DHO1bM5XItiv96PqgJSnlRFCFShL1xO3IEGSjYoSWSSPF9gQmjXxAowVFExdD/0cE6B+Ws7KXyalndlcwH/Vq2UPec0AhQH31P3WTccctPYEgH8WFszNBUs+n9eEcMcix3IOZWYFs7UxhFfFce5AP+QB1RiEBTr967MSs/HHdUA+tdirhWtnhUyOFPuvlj5ym2tcdr8/JxRZIxovLPc1UGaboE97UIECeIxQViWNuyomADFiSK0Mw+J5slbVJtHPN15ben/pfjI/pEJEW0upMTD2RPH4F68X3s8eFjAospi111o+st9QaJQQqvdJa2jAQRjvAYOPtQHU23tfsHczNF+roGBou3/63ofEiP3iL/7ilz/qUbecExJY7giULDgJrOeg/dqYIT8RtgxYJjSUtPCzQkLYky+RLVfo1wgoficgS3UENn7TzPXWUFoZKqNiBO/VAHLyCPBwcuwktwkvihJAtDtDecCRmX6PkkLAZAXGfegHXkuOh/EizwFLpypU96tWGCjlHLacCRhnLiWythHB/BNzo+30n5gG5WQiEdHtjKrF9kKiD8NQPUzGjnUTcIoLA4eXYaMhK+EG68sKIBszCCWYbHhrJRk1oQQJ3CdBSNAfWIHjo4fkaeM1tl435NwQ96GwKIoOxuCpFVzEGvwz6LDtnNw7JC+QqsvEa7JC2CZYTeNMeR1YVUAy9fDDxVxGZtIZQy1js7RBAizDmttYEIX363nl1FUMH6xqRFJ4VaXM5xr5WbQF1hZHjq8MSTZWzmFg7ecabdloIMco4sGWDXgVeHSKG1HSiXgPfTi1ZwfZo8YwHSdjPeF9xRr1uOUTajEE6plKHrvivmOk8CwEdz0zyf2Boo/iwyvGYAsP2uu27+dq6ZQSwiPllNqumcsJgUjUe5TJu0Sm4d1tvFYXnm9iUcQXY63Z6F+bXai+QEBZW17BNqQfg8ci9pqftWcteW4p3Fr3/n5f10C3mMsltVbUeHUfePABFQaez2fPQgvhWys872fK+HHC8iu8YjcRQZ9p1lj65DfhMSC0suBGeMFMqps7eUBY9BluwxKFBQjVHGEGZMh1wHV4GMB7Of6BB4QyXSUrH+8x8kyS4MQjQKHkWoN6nYAXDzOrDKWdFW5m/DEWtJ0gNX3rjBczfnqfmoTQP/V+lBLp+1qahyK1Z2fz8cs8J2rvjTGPrJh4PkouLMPNdMTHztegVKsnVGb24S7FwyLW5aRL4m3xXY8JLCo8Owqtxty7DcC/lc1oixqYT+1VzlXjjVgFwDBDyQTCiTXkygwR6/Bc7Q3rcLruyoKprinFMpT2YJgzAtX2RlHS1ZO0QFbKBKVheB2kmGkmplSvuJ+C41Rb4HgGYF8gIGr6LdLaiTW9m6suoKgo3qrYWZxgqnkc5uTIreMmwGGRZ+RnkT9FLCNiPrZ+8S7wUirN3gKfStkHHoOdYxEcG0IpnFMgOStGtfU6nbKtZ7Ztja9kZSd4au11tLZMIQ6yMUkBwwSPGBgq8sH6+RyjLnnIEYtWQvgwxb6KDYUze6UrGy7rbiZYdJYNp0YXiL+wVhbsD6/NjeHOkrwJ6uBFvK6U6nURp9K94iiWYahwXO8+QMlvfR0QeWYO9sjRdmbm9l5jujZCIe2coMuZVaXMaQALe/qszaHMDDzG4tipA2obp+2yj4CI470XvECsvCefy7+JiXKiLV4QCkPCDGsfOAphXcp5ZhkKrQbCSzmXKJrJE1kIo0i4n65RDbg2WSiZ8p0p3ZlijcBHYOsntf9QvtlzgkmXPbwcw6K9KJNMysheCG3IHliG7vg+ChVPjnsTMMwxmey5tUkgkixZx3W/r5TN3sKaREzyemotvWGGKQcLT2J4xMWq8G7bethdJbTopxUpcCnwCeOe5yXGrZ/TCyJoa+GBETP0CY4tpQrWjYVhhZiSogYKq16VISRIDOS3AeuhhLNXTI4KZY1irJOHC3xXj8TezUSbamHudufYbzvfOyjTjn0dm8ZNYdIoS2PLNDOc9KJPCJYKd7UTrZsk0cqissXfp/2lax8aFWCOjzFHO3trHJeOV7RMSAL/IClsTLFH8cX3iQGnUABxhhpfcNsQWOHp2sOp8KDnjhhIrdnXzMzUXEGjwvx9X2NitQRVKVUwRh8tHIGzshG9Bh1KbaPm3hYhjzHcT7ULu2Y+A4o6fLE+khcNlLfZzQQI9iVMuu1uPhqFOnfILrwrZCx9XiRYDJIGSAYsUuaysSHEfsEAQ4GjdDH29fmBGbJr1zSENQgkvDNkCNSIp876qAap5wfvurOHSy1IDAPkKprgAyqt9aIXvejlqhUnsgGQGkwwBD6CK8dgEDpsbARcpo0D9wEN8jeKLf+diRV8DlmBoygQyFmAI2QQmHgtfB/FArzFZFUrOylXrIPsJWTmGQoHxcW9speZIU4K4dKn7IGh+HJMCs8q08dRYNSKY6ywptbOsuaQO9o7+LN98pi4lvE9ccA2e2TMY04SDu94M5Wp0VxAKQ1KsWNOxOOy0sjj2qWf5xS/vxdJos6vOXFlh4VppgTf8YKAxVCcB/lMGK9VIKhi5UYx2ZUVDaQFclqyRUzeFXNAmR8EJ7lVNQjva4gXdIaLyL/ZbOfjuCvluJ8qFqgwZ+O1hRfDfeLU0918bhLxB6oyYEmfg07kxXhPogjCIp0Gph5LgJVdPAbBAJThJqiT+CXQ0nI51zmzkr5m+BTaPQpt4zlA8KJ0zuXfYIi0c0yIOA7GA5BkjdcZFVglpUmAH0GPQF3YO2ZfxHrr+zkuVsoMWbpPOytfhClkjAoR2qIHyiwWynGWUj8f/sf4LCykMUxQwBVKa2YvnnHubCCFcTTMx41s8TC7KceKdVtjOEM6QNTXyYNbJYMbYwfqv0gjobzdj6gxuZuO/4AcUxWs9zHjVOeqzDUYT+1tcbgjcH8MeZljv31CPBjPzp4pCvS9999fFngPm5T8xubO+TsI8mA3GUtXZzmxNUOCbGjcd3kpui+Bc841wqOCMs79iSvphZfGddwfKxzILgv1remIgouAOLJnhDWPhYCiILifGW94A/QNaybHuOrZJVam1BPDk+E6SBY59kSdOBTB2mX1qSgAXAUsiKdEDIOcls4QAp7MJpWEIheBZFesWwR39uTy/GcIr7NVDB6MtS2Kdo0j2RKjMrpYkayN7CXrvUsixdjjqQLCApc1R4B/sOUMi5AyTVSKKHy3m7PlISm0hjiO1P6mqccaiBFEgJdrdAzJzlAUCbASfhGvtDcKpFi9CSvVehJuOzGbOE0VCz32gWOh++RpACty7hQsLXJdVomFxWFqCPMOT9wQZBiA+p5jfghkhHGtqp6s74eOm/K291wpb33fbeWt77mxPPDwVPnh2sn147gItdC6jAp64/cb/y6lrf2qz/Zx+6bR5wfxmX6XaNf7R4fXyqX1QbnlER8pj3vUQ+UZT3i4POdjPlKIkawd24Gg03oO1W5OtMWTJV6EYjgzJBcVtx2HIgeIRNdY12VKBB6sBEIR9BOkuEYGjd89dpx4uOBhULYHz5I42qafY0pqvwyJLZ4tnt5+ZtoBk4Vh2XW1vZAnkFHFhgTKPTy6Zo6Z5Sobe89nGKXef429nro+hYBI6Xisos7hdltjiftmghkPXU2/JKNmb48wznsylNzY2Fo7d0/9P7J3RYHpehKt55c4KwpUfbpKxRSNNQqSsAYPJ+BdTxm1grgYnEdRMGkqVUPpISwZlBdxqsqE6eeyMXhQmUWH8IVenBl4sOkWSUDmv2kfv+cKDHWAbS0LFlTNuyyUeQYeTPb6cjItsbUqsLs5uI+CUWyGuBVtyESLnEQKjIe3mMkfeK65MgWxFCZbBUojwVPHGDczLbcmJjuwj0dWKcvJs2Gcs0LCYDgzlZVD8sKAsEcacJ9/coJrjiFe87HLWyegck5NVO7Yp8z+vRmHHttcB4/1B+yHsRLeB4ml2+mwP7DxYqgMhl/2tPg9ewC0NYggyzkZMILtLli6cRzsLMVmwkvs5xhAjRcmtuPamLtemSIf0FU7F3UNz9LQF4wlqhsQF6B6NSSBM88plUXqmhm/c4wxkLyNgDUdr5Fl/Ou/d1N55c8/odxz32rcx5o7rePTcXwvF51W3HVqq3L/pgr++73QisGiuFhx6RoSxzdWYLB49U81NIW+3DL+UwHkoTzhMdfKiz7rfeU5H/vemYln40exHeCdMx9XgSXder6iGKyUPd6SvVEguYAbvRcOl/PxIxhueGOMKXPVWojvLYukMDRel5Fv/Qyb6v6Dn5Xh1oW9Hlh3FWYrE2sOIob+XttTBSavsZ1hgmW1tzaex+L7UV09zqbCuxWqpCr1Fu4YZVR12RhG3pg4skwyi9gXSjy8sXZic0KdJylWrxPde5io3sTVFl7jnKnEmU4V+tW89H1tR8ytldkWI0/j1LYVpuy+6Iu+8OVPetKTqoDngL8M+bDp8FZQAAhxhHaO6ZAYCzstkxByTbgcu8mlaHKeD7AZSgbPit9zRYXsuSHsc8WHHO/J5Y7oa1YW2etDYOfYViaE8OI9vo8SwiO8WBUjx6fy+PGcTO2M+xPXSopeCgRlODRzkcVcKSE8TC8g4gzZkMgwH55yZc65ra3bmL0qEmP7ZGUe+sA9TvRFIR2afAGME95uNyWoMi/cmzpnFf5arWYYxvlVmWa9dSA+8pPMaGuSMGJNY3REkq7nLIwt5z2hwPDIy3C+gga14hYWKpylRPVyrHviYzX51PCdnguLD2weBVm9PgtNhB7lY7ZJiMaaH4ZzFNy4rO8rs2rpcakQZPJQfvR1Tyqv+oUnl9s/pMMktcblYWvNxhmlYzvk6Yp0NB1pMgxtKKVJRsLHm6uTLBYjxLtXCSsJOO21s1BQ40wWFQ0+PZWXux2NwqZ8+J5F+aMP3jwqgWV5+uPuroISaLASUjTXmt8ylzoKTxZlbqEZQlifuY9hxNjz2ad9Rl4Te/RsN+duRSyznfNwNslAYJ5quKJtaxIw3nZ8p8whj50hq6WFMjHCejS62xZnNO3Pn0rcuD8olTDUuu7cPtsnQxL5G8mrGOPDXEk/+t9MpYaIb56hrMaf10nx+jmVM2BlQYwJGC/SAuy9YhRgbGH4NglxaNI9W8OSbTsfskhai+6vz3Td+x96UOSHF4yK6cl/TPiiGDKURmUELHkGCcs2M9b0O3XsuFdWCpnxh0Dnd4R4PgsqKzAmA4XJZCLkUWa0jUHhs4tUeIQ3ya3QxfP38VqA3ljofxL0RxyMKhgZMgQGpS/0AciLe2TFn1mKUfHAlhC042MXgA12lpS7CB7bqfqDvkulBOI9f9Jc4SUhHPXSfMPsCqFtD+zABBKUBt5oVu4XvQf141gsNBkJfV+LvTZpMwM/1SQ+W8RDEtwoDXDvmnfB5igTnZc6ccBkwIL7/VwyqE8w3tLQaQ3oW3EFRNb3NSmwWNn1F5QXAWK8n/BaSUp3f6m4fnEt11wTW954uEBHcbCdn6M5PUpB6VoTzeNQvA+gCndJCKDA//V/eXJ57RtuKR/6kAyfCXZrmsnz2e8PrXD0nvZhZ53XBZQnaK9td34fpTWdc9v3a6uQJmC+tu1DoelzKbO23ftvJbW35b13H4Z39nFPuasSTipxyZAlMRaOW6fPxFFghMHoCsZiUgrMdxzZ7hjc0muj8fM4zoKSRo2VXpBWfD3rj3FeWsHskxECzRuod22lQy27moCKIdjPxItMAIi9aE+3TRBXjff3c+096vsxFo2VLLlTWXaQ7Lv1foDFilLqrThRopFAvJiP02APYTzlyhUYBeFlJeWP3CVuSLV72krppo2NQy3E2685j0keUw5gI9hr4NqKKCsIlFiu3JBJEBK+QDm8aCTQDVAZwh2rneB/TlRdp4PDsPK5dyZtICz4ztonhNKnTH3nerwH+qc2ENOiP3pxD0rsoJAyg43Ps9eXi9BCKKn4q9uLshyShZ6VLYqWYDYLXC9RohXr0d9xZPhuzldAEJYyF+XMhBban5l+sYjtXS2A5+xJLK0U43cbDUC5uf0RN9zNR6osk2DFIsNCVZs0RwglDueDpdclCE99OlRx2WGKUWBlUgIGqBKlFfE6pxucnc0nuNJW1lm8Z4OJeY64lpVY6WeaOaV76D8xJALceC8hXGW8OF/ryEbNxvGmppRzaRXF65jv42VRyaFN45tL4vQJHoSJBz062HP7+RDAX/ntR5dX/+snlzvuKKEgpvXdhsKYPKGmzJyuEp5P28rg2IZimcats5LpwrOaDJJ9XCdl1rabUHT6fbc7MqS383uDv7cd5UNbbr//+vLUxz5Ybrv5uLYRynjrWASClz4Cc64M8y0dr4n5aZpzaz/vAd4PKCwZMtXqt6GUS0UxEhLmhxaqIAMXYXCObYCxByyGktC1kBZi3bUzOasMcz4lc1sNo93M/gVJyCgN/dTIUrm9lgnCgLLHRA3DIHVsU+J9P+dH4RkBq8FMJBaWySvhpdm7BJ4GMs4FZNm/GKOUa4qqMdYhGJe3K21BRVyVYAsDDiFKzgHHMyM0UBSZ8QYEAzsJ5YLQzTk6mTVXLc5SqkeyTFgn8Qre0/c5HoISSLFYfc9c7og20Q8EDtfkPKAc6Af6y5q+1m/zq9KnF4tzHgYCPsOPVdgul+cUYc7NgiCBoqK/lLVBudVNkr7b2OvSZ4cWfFnZAQdy0iXKJXs52fqvZaEMTZCHkJP6mJOtPVrGODabx2Tpa2p8x95GCIEyV9FgMWaYDcgiMH1BX21bc6Ci7JD7mysiL2ytYuwAI3iCa/84YI9NwxzsU7wSwkKThRvjYEWxSpDgxhsLijQKp7VgadO6C0aU4oHj7zoG/dAVJ6BhU5y09f3OQa4JNiH3q7EgrNi81y1JugiCYs/su3/smeVd79F31fe9vZ0+FM/k1ezC05kUya5MntPW3tDsRel7Tm0NpTY9og1F1fcre2CT17RcPjw+78DXDPG57iEPTdP6jjtvKp/7iR8Y3zutuT2xT9qZ4l7n0HKnN/TD90MOtedr7rGOuResxn26jiRkDHK8gyjtYzamFCDMtX2SOayNpqRcHntg+6Q4+LxrZgILXp/mHXo+pZGW7iP5Y+wlKlxIwRzaEKZqeCAXNpZZC8TIgCpRgFt7J8g9IG9kE3R51mzESfu5tNRBgryDVr6YC1xTdUXjemhngkoVVeEv5nqHxLrVn97PevcDD8wxpix4RQ7IRx7k2EuOKTE52cPKAj8H82Fj8T7CY1rQcyJuMDrMWjsnoJu54kLGVTOxAqFKTCvHovL7eFO57A8kg3zPfG/uA8U7K63MykP5ZLiQdgDd5THAY+F9rsUaqxvHf5dhOBcLCo9FZBT1b7xPJLABbbk9K1ct2Kf+ks+V6/fpRdHSIVmEpZ/p8FmxY1yUUs6RY46c3Hvi+oRYRng45Ft0hhKAHYsXNesI4gybBs9omWKTKyBGxarshVS4oZmPjmDseAbeFJ4KkBzCBriulqHp5rOAEII5xoVgKt5sPIdK3UO6N4KUfuIlFPZNmQUdAmpIBssieep8n8riOSeFNRoH6Y1j+d9+/7ry+jc9aYTR9qF09vvLFhsYU+vwdiaPRm2elNH0+b7+nDygJoar7w/sNU2e1ER8mJTddHjkznGnCd6brlW7GsexBJ0dlmc+4d7ylEef1nJFsMl6Qz2MOTTrSJJdzCcRU3IJ7zDiVl6/jE+tdm3rH8hP14hRtzF8CiRKku4m7Qfo2AOekZ9NYP/MRtrGAhsPA68uwM+0FqOyh2KmlmvVKPP9Y2/1fY137byHWEt6D7jxwIYmuURAiIcmGZRhrn1X41Wl1LhjhZUxdGyg5ZJNvcc4oOVmrmTC/mK8owp+MtRDbtkYhvikNnGkB21WzcG7J09uPnaiCpZRKSFoMtxxUXgjuDMZAIgKYaxaebkYKxsbjyPDaCgnKNMIRv2dhSebTv8UB8EDwZPIOUxQtQmAo2RQsghcPsc6hZqdIbSsDDIJIFOiUXx4DsTT/tix3O35eoB6tpTFxdgdMZc2eS2rC96mqNlQRuU1hZexSGV2FET1cRdUNz9LJ1niCZOjBlyXrSfGEtrn2mQACDEBtQ7OR/L762SVRTa8FUcmlRBHBOo7sJXFGsMYqHCDvShdE7l3QDLNRPrYcERL09T+o3zI84hKFfbqOVwORVQJHaxpK2+8EYLQ9BvFeeyKHpqrE0OfeI5re8sINo0tlRSyEi3DXHsOD4H3UJZbtyfH2YhlRdyFNIC+r+f5SOjqRNS3vPP6ET6bvKBJKe1D0ciD6fsuCAzTZ4cmPvTh1UzrcB/v6V+pJOnG12Os7spEeGjip+6pewDx6Zrpu0O9xzAo1jyUP3jPI0M4aeyCytw0dd3iKfJPY3Fkth1K/Ww7V+RufPfYZ3rafqr+EDGlMseFSC6VUjh1HhelfBjrY1eEoDQRwhzDGq8GFABlRC1E5pG2BivPsgQm3xp4uJ9JEsgYKp23NnrUPyqTU5qL49NJDWiamfiBh0hFDqo3sG71uTxDciPxriNmVexxDsO5GoqtPTG8ddiJxUbQiWPrFVXoppJZio0ONizJW6xxKreZeFqLkOaheCTAR8R29IBcJftimaJqoSb4SC+UUha0VVjt52RWyuJkVh6eAYIUJaAXCackC4q2ngUtwh+lg1Cjzdl7ygoMBQqTD2UJNMb38Jxy0iuFTjMRAiFL+3MsizFhzNWH4gWAwK6K1D8rZXuY4J6AneyxMRbAb13yFkj21bhl9hslfUhSbTxn+nuVIFS8OzyabKxwLfMebTW0hgiKsaF+3XbKv0LZR6DXhJA8vtVjcxtyHA9YIZM3qGqRYVOUYoz3MCWYyvCKdYrHkuA/jhGAGhxxO8gqFgZnTjYGZ1e7dPwEHtLazDviQVHixsqTytMgAOTc5bWocaOSdsTIvJGxRPNJrVEOxyfOctzCidcaljUH/73vjptSwvg24Dt5N4vFScBw2+0Vr9dNQHCTcto5nqT5vmZlBYS3KjD2JoWlNXqtQoCT9zVBfBNMuE0Q4BAKUM9Wc9/2wUfWRGCN0akF9WDFskiez6mVVylzMdy9xwwiTCTFNnMpn1iD7XxMw6kZbxjYUuRLC+4zw6qrbj7oEOUEnZ+1xWccUXFKiMEKE0XWW2kGVNj39Rh1jkxvknCnqgbEFZQt32uHGa7cJgVJDKiiHaVU73Jt7zJQLKc8LKyklja4KmLgZ9ak4H6qdhGyxnNErAz2ZPH6honKc/Tc+x56aM4Bdf93jrMeTDlL1cskPtwiqHUhuRDZouf3i1Y+MYEsGPTK5yfl2E2mP6PsiD3xM6z7pASylZwJBXqRuY+yw6vSKxeTzfEceW8ILnKxUAwQI2gDC5b+4WlkajUvBCneZvUukvChPeQ34U3hlXUWmMwFirnCCvbmqBge7ffc0RbGDeUCJIfSRPhRFJc2kLtWK0hYIdUs/sVMx+dMK+6lcRH0y9qJtdLOcTUO1os6bFZebLjYdO7PwypDos9Q5l7kOxMN8GoOXOlCfdczgRkYC7DxPnlSVHgG29+b3ALklT0aEXY4eA84jbWLchJ0Cpym9izauQ4cBwYSX6rez346RoEclEomsaJirwFlcWItRBAUKDAt0A5xh1rY1PMfRp2FoxSbAvcfvvegTMOkedIavb5MTLtixXHmWNCpPZu+TMy6EjAc35NCmhTVw2WC7HaG/iZWn37vulPPsMZua0ivCwU2Uc/38f5uJ++sKddOFrXsVMC4hqJWVgZxho/HOE7rJabivbg2PFdpyONPnWPUWpAz15UcQev2cx5Npa23ExNw5/gOsRF1+ggywjCfKQVExn3D+PF+hRFIbEzr4di0dc0LBVCZU5RCKLDkMeE1c1xK9BEEpZuOrlB/UV5AZyggxgTPGg+MtgsW1fNJNageeUkGVdpXJSnHMA7G+54kL6pWox/fv+IcVDy8cDS204GUgu6oEEEtSscS51NJJbgFC5FoitDNcBtCCVhLcIosfaz+RQqEYaEjBHQAIEmnmTggwSbLHXgHDykrD8gNF+NdVFgAZqxWe/IaQtiYnZdjRsUTQKHVTEQgQRehvktxDiozsNhzPAlFj6LIMbesmPGgKIiLR4MnxtgWQ08ouRi3FBtCMeeDFUmuxXOpgdnFzBJEOWns9RwYa8UQSmdvCAZitN8QXB5DPDCYe5UW69fGkB7kiz3QCMm0NgRQBsEOHft1VWtiVNS1/I7XYFDjPUcBgWJMYG1JiAw2DDRf8n49LrthzjPiOph1VFZYEjcbZoYmGe8LeyXqH6ejnnkco+9livMFDdhzCFQHwxHCRcA66reVIrAeFndvqAdB2Rpe2vszcqWisKoF1TpRpWtw2TCRLNWTUwkSqjW04QHppxSGVHoTrLld+et/vS+f//n3h3e03cowk3GnMZX3dG28xyoUjuwX2HiT8SUYWsbMFEs6O9uVX/mVUn70Ry+XyYOSAj4rmSzR9xNV/erpODbjfHeHI2LSjd/V2tYcSdBfmkILzXLyZpdHl6p1vViPa6sxzLZV+oa8d3kJ47ztpmTQ+EzztpflL4Eegk2LLZKa95txrciD0bidbUIAA41t7B2H8AbqL/PBfEemhKMA9jZCjh2vCjZcMxdajQoK3ZQz1dgDga5d6/L1UxxMfVx5DPAojlzhQYrkmhUzTMwmwZjhEGhfWGbHWjU8T34bXrY+f2CUkTp6Iw5lbNtaeLb4+p1hfCqg1DFQu7wPox02anPsKio9NE1lQrKeg1rfNFPdPV9T9QdCHk8hC3g2P15C4KFJGBJAR1hLsfG3Xngq+QgHXUvODew6VWEgpsQJq5mGiSfD/fBkcm4R2huFg2Il1wjBna+HnYZXpO9AcedfhrykRC6y8TI0yfjR7mrZJDgKRUk+VE5Cpi3AVnpeJDybfbW3C8x9ZBAAp/XJM+KZqowgwdksFue8Q5ShXkCinLQaG0gwWlLuW2/O7sKc7JPHlgtO5iDukctP6UUJFMZafZWiQSHGHGssFKzHKLGHQ8wsBEDX1SM+sACPXK4KVh5nK9UjFxJjMYTNbi5aeuoqJWxgoL+t54O2okhOXBU9jIXFoiY0Q4FfdSk/zl5axOTA3r0O5Xmd+u8oG+MAeut2YyVr9CilVKtn2/MUTCdG01XHuHJV9vhuMzNTr52yVklNWATcRtxHUJsUzud93rJ87MeezMV+izzwazZgZIydVYRBCmhav5NS01SrYgTw5M03l/Ka10zkh647jtiWPLKpDX1Ae1KWV09GhfK0J7uu41TOSON6+fKleiwIAfYz/R4xJhlNkl/buD8Fpk/PZMA2obROT0doXcbegTxtsSkt10oUTxr7uIh7RJWQpfbJMFUlH8dzKxTg2nFpZIiOyms33rfolGGvcRknxWPUJSg2DFzDunFg4X4+Yj3ysbRvrISWGNpWUmGU+7NK9S+lsvWODY89pD3cmf1n2C0qxLucVW/FFCQEe0FSZrWKRpnLJFHslmoSJM+G4imlVrOo/AJDeFr7a8e+oe0HtEzycZlymjKxq3UMluM0tFeoRVirlbcRVz9fPw5hlAkJwGrg03XTDXPJGBQLiqnCOgkCRNlggSPoQ8M2M7MPDySz9zINGOWWA+R8HyECaynT1kuZc1eIawEXUiZJijEKle4TA8veH1BbJj9c9FgQ3PnYihxTQmHXitdljpsBRdIXFMaammGO4dVzmbzAKoPNiit7mJxFdBEqZY4Y90wIiaoPhrtIPsWDWDp+kiHggArG3yFlRHCUQwGbmSWkMVTO1YMjbCdFQsId4wN1NOI0EnYyXrxRdD+OxAgozASL1jAn6/DYFOwTz+d6uTx3jMnC8Buw2pDGgLbSN2I5+fRhkQgOKcnVNNXDA+OvscQye8wLW8chCDwmsLTaC/g6HqEgrJ0V3d5QFXATVQWibd7YVMBmj7E2qQg90ZSZn314KlIUkyezC0hPimm3k/F3UtdLNSqWcw3KfExMLsFFTI21PBmfnT20VSixSTmty0RPL/bgNP/jPZciQih/UKWeRAdX3o32sdbxItqo96ejUnahRMp+O7NNz3zOEbEaQ2TtajkJSCENsXcnaDbq64X8mQTksBmvl5MgZTN6aQsZO1cuT+tdgn21niDpUdldEtJy//2yGEo7/r0f1wXx1CADOOi/9U8qnMtjqvX8/HvNZ7LsIJYjxdJZaZAwfeTSW8TWIA1QRumK6/VddjFWCA9RScIKubU8JEUhqqVPgqreO7wbx4ghS4TIsbHE2U0dNfp8LeucclwnJq90lhFlmIsGx970ug/9YAgwdEC27vGM2MhUbkDwgd0DY3ENlhWVHBCgfE7RTQQuQiTHV7hGr4tKEMGamYNYgVju3Af4ieuB5BDEKArgM65lY0HwQEijdOgPXhrKhQ0M+1CvHD8CNsukESDJrDDZ+HhDMeZu4yYx3CCh0C8qdJ/4OIWo0GAFfmjPNHuJ2dtEEZ4acsWTAp4KD6hMcaWDpHRiEdl6hU0XbCa3ifyQmGfXyIMyG2PhPkWm/TBUIapFL2gRivciGSPEzmJNJM8Y2BJrKwyhbs7s3/fzcSRkm9PfIRkXUVdMz7TXFILcxgDzDLW7pE1c6ebebGwy8HvOWgJGCetfQm23q7RhiAz0OY4m93oFdiRh9kRBY6+50818ci1xj6HMuVkoCWJR0/jsA4qbY0C9PafJ2xF8d3Ii1GBd9y/yIbw8ywQg6YireZ0BhednTySJLhSSlM9EpmBNrspUukj7f4xTbse+Hh5FHwM+HSHEh0bBvx4VQnGchxhmuxoNSq1tIwaxrrVf+74SRbRnlHjex57sowTSVPJoOQn2M1d9N+wbMZ2x7dd221phpWknKK5ZC30Y19DoVa1uuG6qT3nTjbW23UIw4cNXy/6BB0r/0AhDjx7Wxsbn1t5E5PAYRou4sY2wkBl9X4u91lJI3m9U7Ab+jXp0XVcP/9v5WhRIME+HuYYgnlg+96vYuWi8ZjgLihJCK3tCZ0YW1D6xO4Ol6LVKPLRt5/qDVOigUkwwDu3FgyiEDMd5wbi2YYjnv0AgA3XkBNYHH3yw0rQzfbomMFrQUS08ez8ok22yQBEkmV7N6+JhgUABnKSa82xQjChRQQyy2nJsifvwM38GLIdliVd4kSKOIsskBpRVZibqp2A17jPP/XxkRWY08gy8MzZ4hhZr5Ye2rR4Lwhc692X3+/IYu+vVH1ssxQscRQksyRijHCEshKU+Xo9CWDpo3+PxNnOMjPvAFAyDRJXcxzHFC+wtoDJhYLGcj07Q3SQ8JDRCyFhhBA08eXhqUxz0Z2E9JEWQPfNdMm5gYl2sWM7R5nEPK9O9YwMQDKTITx3nCy/N8bWFvb1DQ0U7e15xv2bKx6B2G3OgvpBdHyQIz2Fb5iruHO9B1YGAToaU7+TvkrgdXnM/H/2NYKjHstvggcG1bNtzlOqp0oME4UGZ8piOzMDbON5zUCZq9/IcclHHvcw0/hw/Zd1CAMqx6KkS+RBw4SRbF6H85DV1HacmT8SJXMom8m+sBCkEqnmrBVtFkd/PJZiWfnZx/xcWiI336wA023Xz0Q2WD42Mu/10PEworuWEPuy3rvih7z98bSqiK0hUzz8awxjjv278t5fhIOjwxhtKP0KPMVKjIjs4PilnDzw4Xnu1nH7k3tJ6P2I4RNzHXlDAd11Xk1GRjygetVdQ3NbxJLXpxOSMiGMl5bS0ARPxHhtnoRCa+ZBK7QzYdXsMfBtCKCKSiwUPHrnyONXYUSoxF+10fEdAejKcjN4AD5YhnVRRpsTyzvND3PXM112WIXt8rSzwZPCMYJUBF+WYU6VWlvkAP30mAYKgQIkgwFnYwEh4XMA9WP5YYronwhrIjE2BskIwAhXmY81RCFjSKJ9s6ecCo5kwgaeEQiNmk0kOWNC0kzgbhAYgPNqXlWJW0JwwmwkLkC1yYVkEANUP+F49p2Y5F2bdJGgLwYtQYzNjZOg9lEncw8J6YYs0F/9EEeNFVu/PlpKUB89ACZNMd+oY0rFrLcaxFYLaXPIJllxQaImjWDjfeMMNAZ0RX+DU1FpuJilJSs0c+mRczgGCJRdWIbGFdi4TQ55HDRxbiAExhDcjr9/7YeX1QMLzyvNXktdFLkuufJ3jRWEl93MlB7xubdT1Yj6NGIYdxxGEAbmczn3CUl0kYzGMK9OkiYPwmgRdU5XRbndlHLeTyqKbvBkqQExWM2W5MMAgGl0sqwUqwl7F05rg97PwvibF15SpYnns0oATJ9KFBPZ8KCWeF+t0kYg4x641CWkn+uU4SXF7gj5twQ5p5tR7JkPPsda0BsZ+RYVtwdjLZSXcFAvuIBFo/O2dXtFcjcqmvf+BgNpFoOhGuHCjePConM5kVD7ypnI2elfl5ptK/6iby+VnPK0cP/BQaa8+XNr7Hiz96Fkt7TVp3g9M3OEodCnYeqQ8a6ab8wo3ntvec91Zzu5MmFh77e5smJNcHApf42C5yD6nqgUs0jD+SjlXPBZFhHe0SYbbzvfm6PTNfj6uXW25JpmQvL3dMNfL22NEaZ9aaS8Q5ghNFBVCBiGPwM45QVhGKKNMSOA7xIdYcLnqODRxvcJit9eSY0woFawMFA+veiS3FyWxIuBIPkfpoiAzdRoPLH+XYzb4HmOQPcGL5Zq4tlhw8DltY0xQxjW2kizFaIsVHYIa7wSBzJjs7DLXeA4b1AsZFh2CJCtnteGhMdajhUS1auCo3ot/a0JLHnOUFNDTkQgv222FWVCivEKRplpYjQ2DmiRaSvUUFoY+g/Qxtk+xKHIp6lEhFnpRMgYodfz8xHBnUMhtnRULGMYKQ4O5Q3lL8ItqKyXYpnW2MjYOfBcJvI4ZnO3n+nM5jeLQ84dhgeLC8zwx+xECQ9/MZwStu7lQqfrysOIZ7ZRjQsmZjeGRUPylVKoxinVpDxThTA2zCfaT4iC+pH14KX5SfohEWYkEkIXqHdtYzcYAa5r+YSTmo20mD2mqDDHR0xcmWSwCxiPJVrBe9SRsPBEiyBC0lBFQEZXItQ4ucWaZ46ock4KSXPv8rYVJBdwzjDvl7I3xIkFvmtvV4x5XT1ouFpwiBG0NJx6rTTKqRpRkKRkiL1vzNiqrZlRWC8k9KdQbri97rbPrr5RhVFSrK6MiPRrlyM03j0bhCH/ed38ZRk9quPe+srt6rXo7wSp1DBRjhlgRDLzOCi1gMHtUeEMUkl1Aruj7WkVdyuPUHj8yAW/fLu0kt4fhXLJwsE6bppIpYO0deB7CgJCz4bUwJI8+SB+OacV4llLLL209zrBiK3OPuEF3AULJzDMWBUqDxQLkBMWcjma3Hk+GvCMJugyh5cA/cY1Mz0aYCyqj5FAp80m5mW2GQkCR6bNju420D2sM4oPaA7ECJZEJAZnphken7+u++h6eD+y87OGxKVBewKVAmcCoPLM3pKN/xHtQdGeG4aKCgw5AlHL151Tspg2U/2E+LzIPURKB4xuawmMF6tLn9C0EvDcxDEviPFt7edCZJ1zeR2IPc+AchRlRjWGqoVdsgcZGgCZtTwEKLa4+lRS0gI8Nq+H5hOJ3n0LwuAST+idPLay48XtxqKXnPQSflFc3M+jkXelzvKwFWPgwxdCC9j4MFXZgvWgDHvvAxqZJB81JuJT5OAcCv3gzlLEZkmeltp44Zw7rs5bdkZFh5XZo76xYSJ1ZSBP7Ij7VAkF3U5mgyTMaHGeazlqSkpA3o/e320lZHR9frczbPP/5KJTogw0v1ip037nm5VTKSM9dLh9MUF5TphyqqWr5dNDgXAC4JjwneJv1QQoKHnzjOdI4UVm/A2YHcpWS0d/afzpqXutExpGE6RiyaFVBRgJW++aOO8pO8yqZIbhba9pknSMbNIo/ymvZijA1XisixEE7n2MUHseocPaGEEWo2I3XHj7qkaXc9IiyGz2ssxHuO3rqk8vqo55aTse4VDv+295xZ+lGBSfBfWavnxjhzkYJ6EFOBgbOhoBRoWVDv/H3Yq62Dsoy2DsaDDNLUejspYfV72Yq0ErcMp5H4rI9s8iVs6xbpPVHnBkP8MT7EGjvGDKT173ieEu3PeQ7TDGEKq4zCwzlkOM1KBMJT232TNdmEWdWHx4SMBwLCsGJIJcFnz2gcAlN9yYOk+nqWG1SMhAvDoGnDIeRmwXcgULMVQR4FkojkzKyx0fsDIXMWPC9XOkBLykrGLUR6I6KC2zqHN/CQseCCeFuj0ZjoNhMWLYp0L5I7vqZ40eMOWPNC2hDi2oDkWK7PX+2Upmx8LCMxjk+cQKfno/FT4kiQQ8LU7ihPe9sSTW2hlgXVC4PqMH4M4oc8gDJj+QP4aH1CD0Lokrrt2dTY3TL5bnqzHhzrC1q9W1djeLIEOmR1zKbKYRjNzH5WCM3XXddra5ACRUUDlAfHqTw9BuvTBUVqFgdsQp73b03fuTK9FPSZK0raIs41lQz5Wedui+aY446WCZDDJJJU+as/7mczlzzbqpvJ+E/5THJi5HyWK0enATDYi6uzN7KxguQLbKCPZ4h3+mw0IN0/3XEk/DUppJFU06VDhiEzANcCMkCUhMxTE5CyAZXfG8x15ik0kYzKp2d3h+9z5VYtVpjKselmHBxNQXtm2vXquGj8VwoZqtKLBo3e0it9tDo7QQMNd43jrJX8rOeKQNde8lrF8Yn1SNEWNHpyNv3faC07/9g6Rfj++O62I4wXzPCf83BOpTc8paby2KzjZhU+fDdI/R3tUJxsda8ZzlzqhmGc9W7V0muhsAH5rOc6N2mq4qper/WquPNFNcMBMWeoiBGeWYbxzWRgRzbzom9K3tS0ONZE2fO94Ohx8nMIlI8zDwOU51I5joUMYqHDcsHKCrceax+SAPEkIgZZTp0jqUAV2H9AHtkRQd8CFTAgsvwV84pAraq0FHX/bFnowBRDMRY6AebjXbQlkxxxyvM8FuOkSHssRQzyw6IA68I1h6khwyDnKNeW2DVRLPk8RAbg8ECbEZCJWSJgIJMGmEcsier5FVibEtDeVTdJn4C44xxqmOleVxNlc7F3pO3BhtPRkrQukupCgRPr1hhh1VsKDVgSntneF+chRNw5mpVFbk2/4FjLfHZOIYSKHhAMNeWi5nEQhJt0M4VVLXAiE3suYoN5SMlaoxymEkaMN5CmckQkWL2eu0MXYRF6fHa2lPcmfSgQ9iknKAFh9ctIevaZeo/p5gGG6uYHWZPiDgYmfOMlfpxhdytZjrCm8PtaAPJnTAgZ1htV6ZzkTCkJqWk8kCqm9d1TUUJMlQPMQYhmOF+1jZjOMelJ9bfpBSngwZXq4fCM5uKuU65VPKcSLKHNJRZsyinHEvGcKqeE8JXsuvOO8ti3HPyxDsl2OvabartKPml9aH1ZFbeSrJu/P1MaQ0yVMafm26KLw5am+rz3XeXExk+EuwedymvYgOKvgcZY7utRJydDbbWc7w9HWXDdldO7r5nIhmMXlTziBtLc8ujym5UUodPeFzZPOaWsn34WlmejIbo+z4ooVaPRq9eia618ujLXAcwezABv+12NSk24kwmkqjdFJGVd7S3V483xRHssR+G4ZzzIQVNmSdKSGEca1wiRtXOx+mQmK72XjPCgCxjbMg/nClkfmUYjmRXvAGs8EyV1kMFs5Hcxj8ao5cWXNCALeDwhC7GVrC2cm5QJlDgwWWYDcWHV4PVxcJlE+XYGAqE3zMzDw+JYC+0cpJdWdi0CQWavSPuwcamrRAqUDL0f2nKd1ggbj9xguLr94YRIj/Hcac40tweJZ6KarZBeMh09mpR71xMVQJLbLrx+1p4ggelsGLezVrU87NCxeWnzFB4bLayWt8vlLsUlQLX9kwj12VcI2uzdYiVUecrB8xLgkOHNMZN2nRHjjP0wKxsln4+RkMvrLVaEcKClePXIxg7/rwEZGnvLYgTtuIYu2AeurYXnlsw57q5OCilk06cNIuBtHQQuzFkx0GGGyfRUqEDgyCztrKACVKDfw+moPbjYmJTxfe8sSn0ijderhtjHJeOAq6batpNtHAKsUJ8UDmiaV2fnPOwMa70ysZcrn5ysfDynJy7j3sLNoRwoVypxeJqmY7HaK0k55gj64E9hkHLGmHfBJPSsSWMt+W99xadKdxo/dFDCV0Ze4aMF1OnJo9+4XPCrDAORi9GCimqNQiqb+cjV1ifR5pj1qi9Wj3zyAZyY2Oos+ETys5GEySmpWGuG8Y19ZD2qWC8MT41vPf941xdKscj5Le4+ZHB7uuuv66sb7u1nN33QGnf9/5SxnhU8f7Sejn2esJ7CsadYb691wqQGySHlWM81ATMKEcYS7v55Gzk8ghelstHV8u23FOW6wdGBbmLJOflclflwM7bb9EqT2sIY2TZSSEJTdDzh3Df1ksZUF5fOuR3kAGlJHMZHZ8xQXkZ6mFxwMphIeh7ElIIXeIlWFG42Vj6KAxK7dRjtpPyQmlkoUl8KXtHmUSRvQreay8E2zMsySLH9ceLyP2iz6Jeg6lz35zHRN9oRw6govyyouRZ3C97FWxw6Me0ZyA2kKDUUFIWtGsbDVRDgNot6+WySwvRTsgl9aiNUmr1hNJ157xXKpSXbj7iHQUKFEmdOhQKcFUIXY9VbJRxHGOR+1lDUjQx5/bKUMDEpzCEwJ0rg7CZj5LO5Iu9x2a7T0eSl1JpsyiLkuDCvSEnjKxTV1kH7tqY+l5jGl6LlwwlcyrskGDtiP9oTaYUB5Rvb+jlwBUtJJzkPSlf49CW74FjYihHcsboDwmy6m+QJ9qJEBH1AmW8ub+xH20AtSrjM1re3RiA76aNV6bzko5DIchLmhTRdDSF8pp0mqzKFO33c71E1irGGbIBQzUnklPBJMdoF4spj0m19qSUpvV2VqZ6e1P+1KQU5zxJ5AjGHXsL5ZeJWDlNZXvffcGwU6you+GGyGkaNCf6juZbe1tGoOf2VAaphLPGXR6XBLi8YbVjMSVnE4uRolo4eVUsPEkzYFLRsjUKVHhwJ6cxb8+flBvrWcpQ78tbM6y8sZIID/GBUQGNYY3dO99d2tGL2sqLGuG+0eosq495Zozv9gO3l/be+wOqXOG1KD5nz5xadYsyH5IYR7i3M+sWw4sTaIGBqWkXY29Ztj64tywv/9EINZ+UK40g/dEbvCpjaHzuNcHqOnZD+3Gqp3gSpaxKvD808t7H+51KYemZqt6huKDW9kQUefhUJzOPIYPQDZ+pfML5FNN8SCALCyGba9cBKREzyAoB5cKCoWLCRcXCwm4StoigRokxoBdf+T2UULbggOFIiM0nrKKsUKiZrYbC416q7SdlBdvwokLMniFtZ7Og7HPyIRu3Qlq7OYExlMFyqru1tfCsVFdbROFtuK8w1BbpTKR6vlCZE5mz5RuCX16WNmkzk1JQmsQQUFbMBSzFrRlPZ2fz0eWVWedFHvBvOn6eYwHqeUWlVPZcHOVseC4gxtGr4nrYgXkNco7MGQngEG48Fjmmwlg0SfHhCUN8IPscBqK+L8OBXA6OfMbjQkhxtARki53hDipXUCxzbziteJwu69gRw+KXUzmisG57nzpqYRiw3jCcO9YDNhOKvU0wcxgdWkdXRuNxtLKbo8PJ61voaA/VRNPVWtuLMhVk7UMZTUy86Qylqdp4G8QE4DQYeTAZGb+LlSFYB1l5WELX53Ashjw0/ZSimpTkaZlOtp3rTbJ/MeCQQcgqtUUKnTpyQUQapnJFS5MVdiMCIOUUtA/FSLWnNAqK27RRwXpCPMZ9rj1RvMeRXyfyRmXwWdGeCAEwdB7efzflEMWxGoL+xAgVtCYjuJ/qJYotKgRhhWeM0TL+vdZ60F5XbUjFn5s5OTzWkK4Zvaj+vvsn2O7Wx5R+9KK6Mc61etytZfWUJ5Vr999fFrffUZoxHhUGmONMJ44DSbFsQHZsxA2QISYBWkMBtYpEPyfSTwjFu8qly+8rDz5wX7myHGNqU7WjyRhoTLZQl/by1iYWYa+qHf2UMrxcNOEpSWldOxFzNVZcKK6zfRtXXNaSHEKLTTIybu74QvY8MryCoM4UThYlCxIlkO8BBo1CyN9DqWQCA+46ymJm9gznKpAjfEkWhQ6a40R4XVIuMHmIV2TWXi3vY2Guv/GutinucphqsWWGEJsnx6PoeyZFMHaMac7zYiOEku3nenq7xLSSMDrCm7MFDYU4e23My0XopXGsgXOZIIPEPwfle3tKtZrC+NmJ68hV6NH3F/uJAqWlmctJ7X2/xlBTscfCceznhGnTVEo85ZPqHFkJUYG7bc7HFihKOSThrWcfOlcL+irfX1gBHaa5hfKqDXvg86RQ5rUElPF2jAWts8v2qIhpcF0+RC5YUqVUGvfC7c25Hgv3SzR1TlSlOGjAM1bmMPpijNrp2IGNYey1YReVzjm79ZbSjRBQN675oyvXl6PrbhwNl7GtLfGZKa1SMZ39XrD1dMLslHRbvNfk+U4IPzDs/NlczQRDEqXEeq5Ue18rj2kiW5wVKj9Mx2DsSq7ZNwyzcYWBA7TOerkI8yveU0bPYm/0Qsolar/JgFbB5hSn2ijGqP0hb17rVfM6jpOYrWejAptykUYZqL1RpjifPKmAT5XkLQRBbXvEIybWp2NK5BQFmUisTSnmMkFmx0IBzOJVJQZdp8K0ASN7XepZYgYejs/YeS+JBXimviekICDbD91Zdr/7+2Xz6/+ttHd9ZOzj6Qg9Xlf2o4JqPvXZ5bpnfVxp5CD0E4nmxGMZx3k0Ta02jzyJorGWL21SUKQghAI+fM84hu8um4fuHmNqZ2H9NL0TtsefqymgPO4PXd+Uq6fah4o9lfjsaCHov6+KKp6jIiW+Rvfq4l66TxP3cmrFnKyIoIT5lnFjlEMuZQMMiOeAR4XQyUl3YXG4SjbBUj5HCSFQgAYhWvD9/Gy9IA6QH8VntD0rvAwT8F0JIFnpVSnYGmQD6qW/EfiVTt3NAd6s0DNRg1p+KHb1iTOj2IC0C4hR/Y2ip/10PtHKxASICBWOGuZ6f5zJhGeQX2xsvttYCWIwwLQ6MIEBwcKY1ZhbM58EG16U4cTOmDQB51DSGBOGovAqzp3tZK80rOL9vuajQDoI4Wejo5SZOYk3S7yJYpOh0Gzdco5RQGfbdGCgYwFAb1uYS1ZCHM4mD0rKSz9XrtYQe8LjlqsuVFbcYmZHUhooIEw/LxRkgmXPDHdR8LIKHlnZi0XNWeE01qC9U41ea97rbBihujIqotXTn1IWt9w8KqPryurSlXLlxpuiegEVOBDmE2QnRuVEDZ8gtbaSEKYmDueUQ46pEnflGA5o3SAtKDF+Tnt9COKDmHgTPXyqyTd5SH2Zkn0vxfPZTxhuyBCtFzFBt6MSCpKCDCARE8QSNX051jlxlTHk0Mlo2U8FUZc33VRatXvcf6oEMSg3T+tbBVm1jq+/vmwFq457XUoq9orkkWKKrrsYrZU3pZ8yUrVPJUO8H1WRezDJoXX8VXtBVSKiGrxkiQ2hSAhuJpalYpx7708pop33xNqQnJTZws+h1uJCxWTf+rZRQf1/pX3vB8rybBsK6XhUtOtP/zNleMbTSm/PLA5RHPu4MTyXjwbRqlXiqz7D4OymTRrXXjm6e1w/7x49zI+Mc7CPgN12qz0msk9M37gehuB+LKLuoTyfPhSMlM21U6E9yqFr4vvKHFCtdHlWWlb6t9tpz0we1tlG/yy7UErEJoCe5uDl+dNEyQHCQwDCA+IDd4caHoFjW93EbxBqwEiw/VAmVN9GsMPMwdsCKsskBqAxguUZMhTxAnIG8RIEb5diLTnXCa9LP4Eil0l4Z+iQICExJb1H5W+9Mtsvk0LwourR4W5HHFVhoda4HUBGHUHO3UyPrcFywy54ZsCqxPiwZkPBeGxJjj3y6bY5sx8mFMea1MTndqp4EO9r05h0wTxF/TAbIAvHcdT/KDSavGxiT2vyYvr5UETiaUCieC/h/Rr+2xmSAAo8dP7Rzm3AC6tEBSuFA8e2yO9pMBSamXKNNwKpo7FHFXNvJbSGuWYsPg64k9GzWFTaeTUVrKzyq017CwNAiieqUpv5qF3/oBOhiw3B9nCEAa8f40GXLgeo3zSywhf1aHb2FsIdCFpMuL7n8L7GHkvUkShTwuukoA4OtFbmavNRfHcU5hnu1X0hNAEX4+WwT6f1OBGoJ29Nc9+V6bDAMkm2Mp3NRAZLjg+TjrJ2TFVMuOM77ijLca1GwWDFvD3ex2bNLeXdaB6JdY3fibiT1pzmfVRCg2I4kieqWKLvSGFJGet+2muj/OlXU1X/gP9Ggb8fIbNOCk2pEqKga+1JIVuOFKMtkbcjmSVZ4/mXclFc8VQyTntrfP/I8Sp5Mhvv76h/J0VibyYY0a5Np3vIs5LA39gjkrHVv+99ZTf+ax5zS0B8+9XoxT1qhPoe+5hS7ryrnL3rPTFuMN+GMte57IfhHOU+Kojvp5p6UlgHl99V2pN7x2fuY2nJI5rIFCIDDeXSSnDjpJT6fUQrSxyTorke/1422lc6D6yEJ7TZN0GOOFjoOTrjST+nVRDrVjV5tS7H/xZYNgTAsbBzsiuCFY8AmE/XwUSDDZcZYCxUKOdAWhmmg3bK/bO3gaKjLXwH5fgnMeyA5rgXteroExORC7vmkkvU3cPLuajIcjtQCAhxrEtgBzwt2sfYZggEmLCy0yygVMdrQZt1Hz+X3CViCghyjAi82ky35egJguvAnhKCEjirYS66ydjjdZ5aqaFYgyCSjiapJ+ua/AKEA8kgEnVdILbvumqk4O0AE7LOyLcgpoZ1p/5csXDcOqaTmZ2RUNzPSbjQ1cn3iLypdk454OfSQhu4k3uF0vJ3FD/Y2XPlgDqE/9K5IDmfCW8OhRSK2JYwNFw82BCEzZRofGbYUtZ6xLbaKWufUz7HiSzHl0ahfN2V6ZTc5bosA6prK/mIGChHxHAG2USImUoPTdDa1TLXsTuwFzUx6Cai2mzosK+B81kfyIHMzsux6cnI3VWvTApIdHWRLqacpo1jTcfRFsFpu1EJ6yymzqWQYl3KyLvhhoDDtFZFdRZMtqbWoNb1vfdOBwiO+/dkVJiKocoLitpuOspG86Tkft1finVUUBLyrap9SNlLSSnmp37ceGOw9+SNCWITtDZ2plwenycqeTO+d+i0hW5a9JGIG1UnVlPdvdgjyssUS1btlIyV3BJaobUvmdBMbM+VlYaU1cNOI4j44nZKnj+j7FE3pSssvd/i7CetM+2DUQltHhrRn3Ft9KKd33RjMPl6JfQ++HAosPKR+6rMwyNfei5nQ2KYGMBrKaQHdAJgxJNGh2Zcu0NokeWoQfpm8nimIzNEaJICGkJRif25G5rwgKSUFE9SjEke06qdvK3wkEyYEKSnOFTXKk9PYdHFBOVBQlgbPkKg53jORasow26ZiZNjSHhT13x6KfAVsBzCvQql4fyJt2ww2EDZO8s4d/aOZMXneA73R0mgKBBM9BFPS9dyvEV+Dh4ICo5rEHL0AesXSxUrECWGYsKzYbPzwkvEej91AmjLe7tdrbqQITH6RkUKYE3mJCv1ksaQElFY1RH0tTDjQML4t5nOEuK8ooWD8HEmi4UggpGqE8wn43ZqAs0ixS16C+vIlXPcJ6ojn51VGDCgRs9B8bgd+3TSUuaTZjE8YAtCEqixQ61vezVQZVWKKMfCuI88wLBkjcHjJS4TvFiTeGGj+XcEtMYpx8FULSJyREqZ4Tivn4dEshmmjPjYY81cXXwtuvdtjylnN99UrhutYcWNDq+MwmcxEWQ0X6AGGJmah5ySMO0FjcXWSqkrHNgnD0anyU5nM6mqwr4aOJkYhLLBsKOs2DaRBvCyIc3oCAsppJlYIfj+UtHpt8B5orDLk2uU5BoLZYLTiz3diH0IxndtPCkeEQcUWwr4S7HFMhFYNs2UYyRFdPioR5XRrZuKBV93XVlqfUnIP/KRk2c8ek6nkktSrKNiCyNISa/jNb3Wn37Xvlc7NBceCyk2eW2C2OTRRsmi8W/OYArF4TjrzsqjtYEduJeM53aqXi8vP+A6wX6K/wpGHv9WHFPf2dt4Cr9WSkNtlBGleKcNAik8xbmUr9WrWOwYi+rf+Z5ydtfdAVU2Ko30pz66lPHfbtHVWBPnPVGEGOKDcpLWywfL5nSjVRJxoFU7QW6LZoiztxQnWjbTZ7vt4MTcmM74XuTRjdcexHVju3eTp6T7iSZ+KOUmb2k3BHFCP3V9wHogDbKac0xFizEsaTOlsMIqnx3rvZsrJGQ2TT4iQy+gMIQ0lhCQmZ6BVVfhomYusZ9LEQ0pvpIhJ4Q6hAiELdYAkElWtHhjtCPgptVcVw64knyegItMgsjKDM8RmnUWytk7w5ujWGu20uWZRMUGl33PJAuOZ5D11HqMNiYIbDdzVXZgx0z1RwmHYCpOfE0Jwq0/Q2HrJcIIynhtMkSFG5L3hJIj616eBcewM/eU0Y9r8aiHOeE3FOJuYr5FxXGvP+A9DB1dq88oD8RBZa3HdTC0sfaGbRz7IaYFqSGSC9fTcej7fs5hW/p5sbasEMLr8fwRJzq15w8DcGMolLyQa64gEEHrYajf0+uqi8ty8F2UGLL3SAmXiCsUM50ksJ5wWzkbrV5Z9Jeuu2GEV24oR5evqzle2VgCYs/wMut78uJB+9ogP4gRJ2hNEN+0rbpQXpcuzcel5HxGoG692AfEfYlN5qLHU67RVNlBHtlU6aGU6eTcVZmKuBbHnMY1Le9FhqDrM0rQblxt5NSfUYpqb6Eq77I4TijFtTGEeyzFpbGU9T9CXFHDTTEkrVEZB/KiHvGICZ4fobkyKq6Nyg6NCkpjHXGk8X15R5GPNCqzU82t0AftIyl+9VEKeT/VLdx7De8sX9aGBuN4dseLRS0/9ZpR26Myw35KD4kUDSuyyCPSvfrprCWdrKx41NJQfiAnWpOLqWDr0sbrQgb9Rz5SmlFBiVK+e9/t5fTOD5e95u+2x5bDz3xO6Z/25DEGtQp/GWLENsVG9W/bj3DnbhMKSApEymfdTLGhrkwK5mzTTMqqLdOpwP3kRS1FIR/dIREfHj6Z3pNiOjmdFNCiHyLuNMGR0/23uybuuSyT0bxokmBC2SBo9QLKwgrDEmLhQRvnO3nhogDAu4nTYN1xb8FntAEyw0WP5iINlWfmRNYciMX74Rn6jDwsBBCCr7qw+32F/mjPA6NVpb5I4GSvgvvyrMzuo5ZXZhLmsSOGFwJv/Em5G2IhsLqwUDPVPt/3LFG9c3Iy7Ys5c3A94BV7E71h0KU3g65XvEAnCTNnlCoijeAQYkk/VwkJ4bWaTrslP+vMQjzOwnEJJgQ8VbMppnmQ0gJivoeh0q6p5LBzvIVE1c4GzLXNdKpujTl6fIC+esOWrA1KocTaSfDr4JgS3if9iwz0bkqgzNUfAlY8m45PD3itmaolUyqoNWSHtR90dK99CS1OBSUhdpgGoFYVX1lY9Y98RCnXj1b+aOEuVqMVfXRJo16PKsEzoR/A0Nkrz6WuzgK2HcqDD+Lla51M8Now7KyspnOT/u2/7UV2m2JXwvuDSHbdeK9r3ocnZcqJUsx1HafartfaQ5e9HrWP21HWXyqvf70PAVzsynQgoNAGGWaHUWmCChSr5T5iJBHolzc/3udEimGE1US/DnKN9rr+1viPfbp8220BuYlJd2Ko9lBjcdNNEkBT1QtVLhmVynJc3zr7azkqo3LffWUr71X3/fCH4xlBKZdSGq/Vej6QV/3Yx8bcBeNP8zs+rxljTSolFIVbtY+kzDSnrv0m5SEIUNLgYZGZJAt8JM2B5Jzmo7FQnmR5lCJije7taclQOrVXszasLWWoPsb5UJpnyRatXX9fHuQJMK7k+TiJAUsLqTg5K8fXjsvqlptLO8afVk94Qjn9wAfL7t3vjRicxltreGX5v1aR33FeN8NUraOdyhqGclIsqB8aFx4eDaFIpC0T6eHyo8t1n/hlsz7ZDa4fKARhPzEZwwMd73nXm8tD7/mNiFU1gZJMcadwUvSlnK+A8ETAZoq0BAIxAjwMhGYp53HpnA9DiXoseYgVCJWsQLD4MiOL51ShaRgBnD9XDQcCBKrKx3dUIeU+ZssS5QKsRkAwl9PJ1HltdMYOKjrKLAsNIA6CufQLK7f3Qjz3GoZ6XHdJMZHGHhGCvEuCOsM4KPBKrzUBgHhLP92wMnH0qsmtXXcOmqR4ZDYAYgxU8mixqIVaUbgcm0F8ssZY/EJBnhoWHBzLI27EtfFd960ewVHKuViYPCjYczVO1fc1z4ixiGKTpdS4VO+xD+tUnrnXQ3gtXgMLsH0rTph8AeVJ+S2XFWai4CyMQWDHxgp2P8xJ13jAK8e/ND5cH0SSMYa0HD2ka6N5efngsFy57vrA5ytRZrxWHu0GaLWbS4ix5/DSMSyA6C9dCpOgKiLICFN18a2V07r8yI+syk/8xEmF+qY10pUpJtWEMppeveNH/L4o8zHtlK5RncsHxvZcDhbgVNB1YSbgdJ2W/5VDJ3KPwnQ5ei8xz4a+BM9FuSJgdVd1OB2VSjcqna3p9kWx01HWKHYk8sJ2VDQHo6KRRxJnM40KaLQ0Q0EpAff0Qx8qS5EjZMzec08oPTHzBCUWKSsl7I7KqbeHEl60auWJUSyYdpyH5SgPRXbox/2jJN7whHQ/JWrL+LQBI0/pTO20AtFoywsSLibPTnX0NsV19kT8UUUWES2EIgwTW05rVRBltJ94nqnrgz3wpQ3zOFtK14zjIThzM/Z3ISP12hgju/H60t/QRU7UwaioTt8tAsX7pwoW2ge6br8N5bZuY2YjP2m7cVWJZoolHXYTq26ln+MavfzJLykPvuV1pT16VBlufEas78jNsrNxYGP80HHsj/zha8vNn/FN5epv/tDYl+OA/hR7CnnLhkFJIHD1AoJC2JNkm63zzKzLgWWEkQTAdeNCy/kPeDcoGzYckGBOsM2sn+UFCjHvoaxQNMRuMjEBuCF/D0EJvJfZfnoR9M/eIB4KgpDArxR2JnigJFGqkClgJzKujEkEx82W2yePaW8BF96coRq9IpZU5pp8CKMMyZEcDHkCFk4omm5mo/GqOSsWpCigMEbMqFv4J6WqOJn11HTm1jGZ1kSGGntMY673RchYWmmvV3PBTqjf5PhA96ZmXGdsvrdnRMyroISbiV5dPUcr1o6APcbGMNQSRtsEh2lcgTlRXvneMV7NfKwEY4rHHQmMZT6WfeuYYFDu3Re1b2VvrVLeR+9o/9hbSvvIm0bhsyq33Pr4cnB0eVRau3PxGyC7TN4hLpwNPtYXRJcJ5r1mg2tiwcmDEROv1FmJo+NCSUlhFdv0Ytbp3KYpVjTFqeZae9NJtFPSLNXkr/rztkz195pQSlN86cD3nepgT/X7uvKoR+/C0+i9hyIeKu+mn1iYg9M6AuUwpbueYOs4rOjdggMHCXUZF/JipMRHaKs1rCeGXxmV1U7vjd9Tztcw/r4ff0ogR3xqjE1tRkUVx7CLebp0bbpuKg0W62O8h2rvFVHN5dmPe2SrsTZkPkguqIeCbmU42egLFl/j/KXx+uNhyuORkoo+2DiKNa7n6h6SYePvKp0VtG/JUsdLwzDxOjjZTdUcpPREDll5zWgMF6OS7cd+nipl5a57ysk73j0qVRlgIzT65CeU9lOfXRaPeXSsgMkI2wRFXGJW9HBBcGHI7aGUT4y6bpho3sN1Ty3rZzy/XPfxX1oe/O2fPJcywPrlfK9AeP7XvxqV49PL6imfW9Yf92XlbDvRyaetPHmKVZhlSjM3JZaDVwQMhSeTrVWsdpQA9+I++eyiDLnxe6bOYgkiIMg7yh4JbWdT0nmKwqJcszeDUsC6zDlK5CzR93xQGUoMjyrnTElZw/yj7VDvGTeUN5XQsWLj2Ij9vh5RgMWNh6R/G4KiromHJ/PHGGZeiPwjr4zDxSi1E+SOFCxnHAnYZzam2sdJolCveX4Z5tyVzmsB5iAHAuoV0KPJGgHn2oPZ2lNgTdWK0obWyNeKPrZzcV29akK2lQKlhziLBmYieU4BwfneUSW9lHruEfXMJGBEeqAQahw4aMFPNnwoBhsApU9lkvZT7gmGC9XAqXkYStz9jZii73E6gu9XnvqkMtzyyGCUKSlW/yCV5IreFFNmjbG+MJx4HTiOgoEFrP6sZ2nuqI03kSGkgBaL42DJqRLDlOu0C2VEPErkCB1ZMXk7MtAm5TJdnxNwJ8bfdnvZCm0qg7TbHXmdogQXhVp9EwtwKE992hhbVT1Kne81CtFgGIvWLUPA3qU8TdG2F461BMSr/aC9rNiP4HKtM8kKESRGpaHcJXlM8mj24303hgUbJcoqbjQK6+HRjy7N6FGIBn6qn3q+Ylny3EoJgkx4pLvphFzFg4I1+fjHl52qlYxKTeWOBhmLeqbWpr7v/SwjZCkFqetlkGt/7Ka0hhqT2kwFWneEKvS9MvmoYilCwpB3JiKG4ltnNtZiD1qhFcPz8qz03VB2ep6UvcZp9CI1HvtR2zT33BvVzvvxd3mYzUc/vQzPfHq0r1Wiaz8ly4Zx1k+FGZQ0Ky/pqBsiHylQ6/H9G/7ct05K6EmfE1Twa2/5N1XmsW9qZZ7Te8td//1flkc8+29M8vOZzys33jDG+2Qk9S43lWG5i8IXZYEQJ56EIgNyq5WqDZdp4yOkRWwg1gCsxvdzYB6PJJMkUDZAPdm7ox1Zgel7ipPQjio0bEEGVuz4Cm2B3kz7MuSHAkWx0ibep/94UJl9hxcnCxyYC+sB2OzU4zTYeueAs0oYsPCXoHnQuRMBdW23VSgB4+X5qsHufi4iK8W2NSlD0GqOixGjIHYVEJiZa1rw9ZwhFKxjJ/rekYPBQz8nQevaYPtt52oISxs+9egO9d0KAAiMZGJOjQ0lBWmh7ytpRK9ac9DfI++rR0EI/pFw6eYDKpeJJFNPk/X9oxqD52ywYOisQM/MuIPd1jVzbUexAyFohLfkeYSgUWv8lbkiBMcXLEbvqHvS40cL/7AcXbmhXLr+EZEmgOKVx3tiocjagRXH+mQPNKlNeO9aZxhD+vzjPk7xQtdN9MGAKkW02dxg2K4tU6Xvvv6caOTq35WqgNhL0+/7MuUlTblKilFNtHDtbxl2Z6HoptJDuzJ5SzvPwyYIEMvlpnz0nzqe2HhCSJT4qjGXByiZ0E6V1+UNNd4DW/K9HIMVg66x4RRMOK0/VScZr0GARxR+hOL0U9Tw8IZG5RS1897znrIb4TvBcRHLGZXSdoQKZSwgF1g3cdTDMOX8lFtvjQRdnVrbPuYxU07U+PepCGVay+PvvQgUMuYUY7IR2vhMszBavAcPrFhO7AHC4FR8i/O4Yo4ts6Xw9oaKW7P7OOMIuRSn4+r9Lk5/nIzsUbmL8HEsYtsYd+o/8KGy//Dd5eShh+Pk3fZTPzlgVlVnGEzz7vd9EBxON2bW2YuSB7V+6ueW9vIt0z4a5+PKs760PPSb/3Ic55NzCBSy6P7f/uly8PTnjgbEjTPb+5O+fjSCJxJF9ZhynAjI6aIiYuGzQXLMJ+Pb3AMlAlMMCxelAnkheyNYfQh/nkHFiJzjxMbghVckoQtciAcGtJYpzQg74AH6lD3CbK0ygDsH+hk3vEIGPceVgC/z+DFWwHfxt3MiEMpxkutyeY7sETBmN1GDOZmTZ2dGYYUNDfnEwX3jd1T2huMUjnwWVIZk9ZKiRABHyZu+P+cBLLo5cXOzm+sAUmU7hE0zJV3LExl8r1NDTxgRVAOv5IR+TqylBBFlfFiPJz6iPUr6m6RCrtAhVrDnd48XbIVBIu5g7wXmJB7VxkZPPiYj1qQFcNP35wrg9rae1Q7RekMZ2iOENh7fM4mEAwGDnSUBuxgNhac8sawefXM5vHzd6CGN1uIIqeSqB1D7UfbEOLPxgcJivwFjR8V4jxlKTPd41rPORlhdEOAqYj+C1/RPcJuUx+QxTV6QFMlUiZxqDZv4W97VVJS1cTypsSI7LVP1CHKjWtPAlwXoTpAf8N00ROpTKY+9+Wp5zp89CYiL0lNaqz1eoNbgMJ11FcalPEbNm/ffiRSZ9s0Yn1o7lrIYY0OC6orkzqh8NnfdVVbjZ9vRCwsCw6h4ggShNXf33SOUev20tsbPh1tuKf34niC97e23T/sjjWPsR8d/pRS0v6QYFePqHve40oxK6WBUchGfEsqhWny6//j8pRSZ+iVjWMqr+PhyoxNBKBByYJi82MCMHbOYKqGHr6n9qf0uJ0LjIoNymGKmG8dZ5UEJ8tt6f/dWqoL5VG5pLdbjOAZRZf94NIA+PMbZHr46hSBcKkiKoiXGpVylolJHE+s9TLvFUVl//JdUWRcy59EfUxa3fEy5+j9/saYysD4fvvv9pdz5e+XSxzyvKns978qTPqV0j/n4eGZMuQZbgjZDVgjcoO2u1xVGuxhHArqBsQbE0Fg4oaQyIQGlx2aTR6UXgVzdE0YgweIM9eE5AT0hoLNyzUpTm5SNSqwpezX8Q8iTK5WhPP2j/ArJvXrlSubcMyejItSBNnNwGvptxO0Ub0mssRibbqIwoywbxyIOXAuL+N60wf//ut4DTra0Kvdee1fq7tMnTM55BmaYIWcQQUARSYIkUUE+uXL9DCiKevWiXDFjVrzKFYELAqISBRSQHAQkSJjEwDDMMIHJ55yOVbXrW//1rmfXe458Pb/5dZ/uql07vO8Kz3rWsxY9cUPPh+PyXJt0FpEV8b48Lxk3ZZEKDETEEBwkwyfWoKSGlPXwmZHJJHlhkFmelM/XlLXYUkleo9LNlo3C9b05OsPkM/eI4JIBgp5BwHaJ62s2FcZipVKBiPobAZEweNVRu0LbFllhK+/nQBlh1udmWSeKoIHgaDjsBTA30/hLWmgl6wly1qKCx6A13nKcQ3XulKKBdGVPoX7nWtQ11xCrMgIFONqTWifKoGoyj6S8+meaz3z//tZe9KLD/n6CqGnvNNDMo25E/acofs8j8ymSRcOoLxUntpW1plJjKpkRQUBRKS/9Ucv60fK7ZT1rFg6tDCksqg8rK60987HXBtmEwjuNpNClqQ21GO5hGZA5waCzj/xv6w7DQVLAsM/8WtczW6KRdYMADUgeRMKd0SzXdEyXdWcElXrhTmPhzmkCwSG4zP6ZNNz673AcOKyROxFW6CAZulr/IhdYFeS2mSFTBwomRzqWkBoiM2J/EsQRIIKyuPPCWQIvDj2DC8fB69rSkjBIMlXA3LkeJUfE/h1lLSpUGlQumE77fqmW92edCucdjj3tKf1fgQIQMHLu7Akm+LI+2Xdef5p/4/pwQsRhu9NC6d6ObKbIGE0ienVbAD/lwifZeP+p/d7WWjvwsJ+y3a+8zzPQ23p7HTbjfb9pe+7zw44SnNCvd9nkAw/977F8whY/+cnf/5ITTjgxbrKK94r8VVgXxKPIWk5KLDOljar9CA6sHUpdB+H9IlLIodTMsnoTKsrWBdSbV59d928ocykBxvAIuE/XqAbamkEoKLB2vFIll+GQ89Kxaup57bz02TpH3beaJt7kYlOUu8iIsCZLLI6qt6UXOqIeqM9WFtamca4JG5oCG/eiOXLkfF9TTPisrwPm9UaWUEE346Q191mPHalkEX1VavzLaCi03qirjccZf5fsYyXhxZUMfMLQYnysKJAre5SDEZvHkkDQb9bMHrrFcoJs3N+876wbrns7m3YtHU7g8gm3DRMu6rPjRemXCiZWRqpyuj0Zp661DYe9IgQQC9cl8dU4Z0ZQnHJSqFxDakBktdcIzLVeB1S1ziT/E/xBIuIe8bPEdus+vjqIq+u7fXDjP595JvDy3C67DIdY1L1LFtPmz+o3avL30rbrTP1INVhBJlWm0OLA1qxAegHuJnTXhjMrPVLzvq5VnsvAfvRHb7HHP+oaN277o3YTPW4EiGQ07BmC3nRQsQ6hgS8KVbrNQIlAg96nhaMlI6A6r6Ng8BvPfsyznhiUl7qaQ7ID+pf8NXMyI4frqCsNgco5B5p43UGZO46AopEwqqByIQDK3Pv6u15jRVJMPYJ6hlKpX0sbEcLFrCWcrjvImJjbNGX8ez43nHSTNSVLwk7ko/l5UXftyhRoTSKQWkiX94halqW9mKmujJ1uml4KiM9sMigDDozywcaXPBvbZAV4VmmmSuLOvOyr8M17T7LV7/qlvjZcr+PJ+gHrNu/wrOkttn7xY8uxr/6gbX/jMzb5jp/p7afKOeG4xr4md7fta5t7imM644wzjyApyIHUEj7yeLXBFatMEZ2yAxngGveuMwhBFjLIyoyU1ulnORxF+EdDhMp2ZHzUVyUnI3q7Fof0AAWp1cw8OZMasgxDXDnXGs9Xxie6uJy6DKwMSk0p15c0ATUNtqbJN2l4I2MaDvueGAgIYSoy5a9ljmpKe09fH1aqE3m/FP3XGVNcfwYAIT+U0do8N0gfjIBVJy4u56N73KWj6PX70imFIG5mObXqd/95UJnHS4UBzR3qcsGK2BDrMQkKqsepZiPKdW2cleE0CQ31vT+5aXshyzzPeL/WINn+eNzDb8rCBHHGRN7Bcox9Xx/z10eTbZI2IsrnnOe+R048wQYnej3J4bqVPQ7dre8tjnoy6Sn6dU9gzSjV2hP0yldN4NG6q2E9vb5maopsw+/ue9/NeP2XvwykOQyHQRZDBlWyJDGqStck0J1YfLyu/K2z0qBLMLUw1ZgKy684Jx1HGZLEY4ES19e37clPPuyO6YZwQpHJZ42FRtlpoh3UUIYVHB7PncANZh7PPG1NBBwYR2qe7lim9OTRg+hwWtRwpObCvqLOzHPlWEDT/vkoQHTJjJtTm2Ods8YzY4ctOJ0vx3EIgRgkk1PjShQgCZ7WM9RX1BiH2VQuFizXhcoELNrMfqhBcZ04Flh9NPFGvxR7ksyG44+L5uMgnSFOinoc+5BMCpYjdS3gvt20KWKZBpNvUeq/0wzsEMZdwMAF6dj6kjvxzYDr6Fma+DPenDah5MB3/r33O3/a1k+/qLd7tQ8JX3HCBXbn+//MZtd+zrav+0+bfuEfbf0hz7eVU+66tE3NkX20q6dfYpd/5as2eOITn/CSM8888wgmngx3XTepv/pFUhlrGUZFfdoc6qOonVnteGpxUDk0Hb/epHVvUy03pHqOHIwoicqCBK8JRuQ4yvTqqFLZl+Aw3YNamLZ2brNqYeke9JH6t7mHtdNXE2d/75rSD1OPQ4elo+maquUMq2dRZ436vDD8zVL/T6MxZNDbKsPSvVxJHbhZVe+jHgWJpN5UoT5u1gcjIjfI0QjKUiSpaJH3aQjfKI+hoXi76ZA1Ll3Z7zAdGNeuOUqqZYUjzkylU70lM0uud5JrQ0HPVBvGrNexq2dJTTOLnCUsrFlOXbcUYK2fnYgg8bqMimNcyGBZsxvkfUBNevWs02M20sSzpL0Hjo3P0UDKen1ojdaQNQ3h2uRaL/UeqoO0miJeQ9taj7XB4Pt977tjxx23bdddhzZkqQWV5cE+27EyP6kz9RwVZ1PqQoVWXhQbpBahOpSyLzk2JtSWYYBtEC8Gg6F/7tR+6Zeutx/4gdvL/mcf5XNYwfljHBMmbxXAQnag/nfNNbbqmQ4jL/je+FqF5EAmFOrfTdNTsmNQIGuOYBEjf/31DqUeZ2vuuLahjH/zm1FPavxYwIKrEFlAfFiPsP8s2Z+sLYcFLVXJFVj2Eb9Zn1l3uT+lqNIr4eealY2YC5ZeLMfdkA1yzlETBw4Gsp0VJiCOZJHzuxYJ2UX7CI6zKWreWN4ma51qj+jZpMqyxkshgK4K6JS5DzKYWd290prphtuqJtLASNoajteEaOti/WRb+c6f6m1iLW7Qs7XvvMV2Pvdmm955s81u/hryETY87R7WHH+BiUmt9/Xr09fT5ZdfTjAyPiIaUyaiFwtfraXtlfXI69UnUxML5AxkTOvor6feZlYkCFHvU0ZVMzr6wnvCTbXjk0OUI5WxrnukRMDQjKb6S8aoxkm1iOpJnXqQGBZBJ/Mqsq9JJPpZx9S5hXxK3l8xtyK6xQnmfWgTZuqaZc3FFksJJDlIfdYiozQZaDkijT4ICutgSTHX+YpUoDlQvB64gTHrowpalHPRM5ZTk0SQSAshHzQqjZ2jzJ4s78NuNtUWFnIbE3cjyya7zlqM5iVpKJ8yPTlgjZuQE6ydC687DFSbQw3jOfH8u+WwvTinDHRUAYlx07NZr6MnWK9Lxziusm8pum9l46409+Rkx5llticcZ6O1Iouztmd/qTfl/6w/ZdJCGDg+9VackfQOYWKKZqvMSOtI/9a6FXOM99bwuZyR9rgCQp7dYx+7aY95zFX24Q+PPXs6YFdf3dr11yNDNraDB3kv9WUNXNBjZK1lnSWcFdkQe6I0z5ZMqrD7UHfYv99rqe6Q9h0wu/vdN+ySS262u59/g518jkNls0E0m4aoatqI3cWRLSRD2itYQ+4YJmedFTRoNWHjdMh4xkBy3/iGDU4+OWA8o//p5put8d/DrItaDvfEf0+/Edp4kRmwhzMAjPEVECNgzl13nQ3OOSeETxuvOc3dgc0dGmxvuMEWp5zS2wk9l3HWFReyO4sjRYhln8TU7I5ejwlZR2busGLkp/Rt4WyRGGMd0Aic6jchcpv17i7hPQYUcm+QTZqImNEtR3BEjZS9BGTXNGXg5KxQ103BbtoThHJxPtuzJiC7UVtYcqiDT7sitnrsRd9tm5e+1wAACSyCkAR62DKmvi3Crl96R9C/y6Ra3u8v/sT/LTZhjMRb6Q9D87wcv4sAJpw4JzKsYB8xlo4u6MsBKauR0KcgOzkNGefaUNcGXIa0rs/otXIItYOq8fLVHM3Al3qWjnYYdbFev1NhWJJCOi/BWnVGo0hbG19MQB1PLBMpYChy0kayygHr+upMS6/bSSdUExaipiIIkWJwTlqtMWwZl/pe1/dVC75VdMbfp9MjHKjui+Yq6XcRZROBybmZFcaOfz+MthjHGpQxFeHU8tyDVZT3VtDcfodH1KwqphGZAk5PG7ZWmugztnSo6o0LB53PWo7eEkKh7yMgxMTiI3Pyvx2CpZXwHMVfnExMB+Za/e2bvgS+urVuX99etav9fxSNd4frtkOkvygyQ4uiMAl2an22MGcMCc8vmzqsSPQzWG/BOImmUK7d1djqQbNjVhs7fX9rF2zP7ZITu7h+OSFlOFrnPVmlyt7rv2tPSs2h71FbLPUYFZBpT9d10VrrTgQdrf1HPrKzhz/85n4N6RwFF8bnA3+ltA7NoPzcem0EdYWYAMuIbzQWebbYBX/OB92QT9xZwHBb9YL/rmchY3cO8xsP+fPeH9kO0B2TX3mmwGys/1Gltr/hzmLN6z2hSwf9mWfPOAwcetYMu8w8kOoZEGjBpk1ICoe35g5q54orrHFn03jGtet1p+7aa21y9tm2485n8+Qz7EuX3WhX7RxjV1yGqO+xtvH5O+3w9Bi/FliWJ8Qo8WbhGWy7WdaDlXpS4SSWWkwAYwO0+0orRFaRbc8IfcaRHetO/qx9Czv3wMIecMZKrE8gXRpntysG7qrf11nuhag9AeNjwzJQH+c+VVY1TWLPmjuvGMVyFKwL0YH3oCYR7RcEMOwRMjIa5TPTo1a1Ni6alNDCRwmVM9F4mkoPjEmPMOSr/+7Q9KoHaHNbm2ADS8lgEarjM99T/v6brkxEodwoHNx845BtXfq+YPMhxQRIzkQq5nYx8mINcz56GJp/syOciKArwQE1tFYz88B/D2VUXb+uzhJqJpoWu95fv0eOr+5jkjPTz2os1Maqz1ufU0NzYdzTSErGR5mWzrHG4ZW9ifGkpsTaCQlKERuqjkblFJRtyoHLkeh6w1g3Ta/Ftl05R8v7ssh0fpiOL4xKdc36fL5k/IdJStA5x4wkX6hbWSivKce1yrucU5fGfp6F2SadkggFo3TA6k0bp+pCTxG1ZWaIc9hKiv44aeN8hsghyo7GWWgNp5jPPuDGDFD423Zq5KmOEISKvAdi6a0m1MkToJbVF6e5BzmmfSef8aV3ju3Nt57mMFsxbLOmkBcWu+6A42crDmbu63aYUMpCxBPqf9vl91GgmKch2o4ekcgYFjPb9PO/fTqwGzfmduVtc/uQ/+X49YE99tzO7n/asN8LWktCFbSe9bxYd2RXWlNa63I0CprqIKuGkyP4yDpWXVs9mjWqdo56/apWqf07972+6lkD85CQ89llxhmBAQ2lBw/amjscqMdDdwILd1Y7WeeMPTAomREzjzCwraA5v75VeoDaMpU3JHqyzxCjS+2J+UkU7WHkxR1OyHOaUTXvxbjCerOEcHGiGHayKeA3njP1o8iWuqJL2GSw+MXDe+xv3nXYDm4yH2m3zAOCkdYyhsOdRdP1QWFZHF2sD9ZKg7PqConGD+jvgaBQ6jL6O7+/k/d4ynC1//7zN0IkmNnJ7gCfdOHEvsMd1EwZ2KiMO4k6E3VE7I2fI+oQWKUhNgwWJkQOwYmzWS9kGzYoa6KtSgjD0ljb5Z4JogT7PnspIVWM2a/FARTCTwRmixhlQaaDZWFEBcDkCvCs/zc+/R62/l0/YXsEXeYa1FqKdXfN5+yG1/5sT85kG00uerTtf9wv9WtP61I2LBCAd7ydGtMTX3KWp8hyJFrU2gha7PrQmgVUf9dir5lBMuS9YOlwqfatAm59UXJo+t43iVWMP22sOis52lHpnI8uCMsR1s5DN0TFZx1X0aYYULWT0XXrPOvzUcYpZqGMibq8Nb6cM5UqRQ//ZTESSmeX8FUcY1GiEQUIytwEw/bwYxr1upAuR1XXvXpHxt/zPltChwGZspHn8yPGWcR78z6uKIPOgEO1q0HWs0Q8ULZXk1/U4yPGn7LbRV67epMkxlr30fEVNaN0qr3atZ6zsvyuzKzh/610UhzvXbefbO/2/zenyLd4oNWOo3Gwi3pwExEvkXE0FbaF4r6YuXEaeBAy3Q6IgqteuAEiMiz/LllTMNYGo8i0FhE/+/Py489QTva/be52dunB9djo5+yb9c9Qe2IwOLKvTHWnb+eMtDf4qvvvlEUp+KhrY3W2rHvKsdbq2VqLZZG+z9Q8y8GYMTOIhkzGOzAWYh2aMyKrwJLUzGCx+b/Rptt0xzTJ7EkFd7KXuB5sAhkbzwwHQaCJ2kayx2IGGQiFHzPuPw6H9co1Wunf6XsDB6W9xPLnkAMig2AeExRyDKRDb9o7OM7WnV3nMB89Sq/9yC32xquGdsfm3Lbng9AkdCvuhnnYO6JwMIuyHnBIzQJILFsduF/+zPldN1D7Q3Sm9jlVrJVyJW7ZmT4MXDm023eG9qVb2IsDu+uxi57oFNB+7oVdal8EHtggnDTro2kKy46AgZaOWVGI4B4N8j6HWkQiCj0K0RZWXpMIhmUwHbJafC61vrbtiUXjjcuCIce+iJpS4UzEoD/W9OL6S214/kMdYjy2T2iUeGgNd2vH2cZHXxfXv7bm62S6Y2sPfbaNTzi7R4rUIsTPEmK4wrPbVswxGXT9rPqMjIKiOhllFVflgFQrkuPRcWUM69EXalyVAzlaCkgbSJ5XY8B18VJq0LloxLocl6LHGrYSW66OLCfJFNMm1+dp09b9I8rYpC1XG8yeuebHVg+W6gT6koJ4U0EoAYlV0KOKvYpSe6eT2YOMFe+XKG4P9+T7u8wod7Puo/ulRaDnPE2ILiLlxMS3Ez7j+dS9V0Rle7IDXuKoqtP0OneZ6S2qzFG1IuneSREi1ksSHtS8Wzcyh+iq/7yhBlHLmUu5O2pHy7Vspaq5dPOkPzfNYABn+eGDJ9jH79hvm6GYnIHF7mZCddmXwn0eFHkXDFRkTeO1DPUofDNqoExkjQ5DS9lljBITZGcpwznP711mW/7/1D9zc+Ow/fMVM3vzpUu2ndZYXyBPCI71o3soaHlRXXsN2/ElaFuv17pVZikGpYyA9nidPdewebyOPZ0ROkaQiawheso5CJrPZ76TYqZkQXtRUJiVBtC4T+NUe+fv2fRNVoMRndY1HuAkKw2dZEA7OQ4ngkjqItQg3fHtOLw3QUEcQVbWKWwyP68h68WzuYYR7NDN8x4G3AaxABg+r+dtX23tfTfvt4OMbmA9hMMZRjCBo2lS6LY4olHvdOJ//1u8JmYV4ZQmkTm1DueSNQWTDYcUGdQssibWAMfmM8JxTQ/boa3O/unL2/Z3X9hZ1kEHy/aYVa9vbfq1TFE5cae/wf1k/wwG/b0mcyILDWeejgbNvC6zIjJVAk6g0EXWqWMcSDG2BbKlrs39b3JAadbk1FSLBBFadk1XlMXZhof933e+5y+OqFkreNL+3/7Cu92hnmin/OTr7ZiffovZPb7fNj//L/Ea2RO+pBTEv+/8j7eXfV0vbt0QOQsZY31oXTepm3F1YsqW5BTEuNMxaych+EiSRsoa9HoZZkWAyuJqR6bNKmNaO0t577A/GTlIdujbwW/KqOqeqBr209+V4YhBV79WGz8cUUbzIlzUDiw+l0UxLoPjRPwYprOVXM5OGtxab60mlvTEk2YpmTTOKFvXt5P3qtYyVI/FIg19r6ie60A9TjU8yj2U4RPcqH4pzWgK5l5ClGsJhUqxQgY41kxXKNs4glFmDKHjl88tAJNFEWAN8dYKuhu01Yj6XEeDjMo5fj3uXH1UV8xOtg/ceWIUc7t4BNn8CWQHAB7fNY6zQDWeGvj/43Q2i/x7SG8Wh9MXGYbld8B50KtxULx30SXE0xbHRSTuhmnLI/MPfWNgn71+fkSGrTUWG9ojZLUgiPFUoxm6fj2jGh2Q4xekpz21klqLChr1HOvX8MU+6iFZAiHGiuNMUAtJCJpWAeAz/hYZjzsFHBG1nREBYFPkgzCW6LLhxEbFSBS2mGXhP9e75myFMgaB4XaBRlfy/gQq4lAhzseybtQlPDhGhcXvF5kF6t2DJEfEWjn99NKuQIbEvvbXAo19cOs4+6fP3F6IIuQ24Yj8eUQgUTLhON0e2m3CARVID2fVxd/C0cQLu+KMmlH8rWsncTyzimC1WKSzy2DS10jnx9jwQOk914zsU9eX+qgaebvcJ6tnnhkyTSNHtSYEXzh9skm/L4z4CMIT10vWyx5iT2TgSJYL+mIJx2NvpgnVhxRYMv5kM9VfyMDCtpuH+sMKDdh+Mqst9r0wHXFaOKnums97je5zca8h7YQzzX3PMTc/9no78Ijn2mL12HjO6w96hrXf/ILZDZf2NlOZftj026+37U+8sby/NnC10zm64VSZghyBojkZ4LoYr8xEw/PqAvtisVRKqAkJPVQzXQpWyoiLcCBHIacjeI/31FN4vx2MpfNSDU3Xou+KQPVzb+grSK6Gw3R9tXPTudcECylF6NwXmS2wWHZSrsbSxrFZ5RRiCN5w2DPtBNfwOes5SK0Xy02nGcwfsPtk8YkRpHukrHJUQYThFIdl8KCkfjRWgcW8KnHaZBIOR0utQEkbjRIW7NUH2sLgC2HUrO8s8lnEhhkuJyC3+T0+I+9J9GkNBktF8jSIsXZmZfCaZXYZGVKuHWDXzdSWE1TK+bzvVq+JNCtRYM0Hk52QUlO37ORfFCcSJzMtzqgRvJUZ22yaBqopjmq6lceaFOJEGLBZZl6ZmVEMx1nNGbnh2LqfxxuumNjGborN+jPfzV6r2268Meb2bJEtZDBW9zfVNVH9u/47NP86OKvFhWuxZQzInpwIq2PJcWlv7c3x42vpgHA8NGJCdmDGEMKkGPwVWHBQmYHJkjVGPQR4CMICAqf05uDc5NgUtPKdc5mo73FRGFo4s2k17HIl6fXb2TYRtxyR1SzmbyfMuOlZVEyk9Qyjw4DfdJNtsd5vuaWoijvM+I4rF3Z4t6yR4iz8sQ1TaDYynLI+mm6nQHixDjIzAOJtqcF2fZbVZDZE9t141sTvWogyXdb7bBmk4PziCkm259sxTmLL05FXfX5qm7Oy1hVQBVTOvqN+x95xWJIJvCiaQz7ZxomToZIl5jJmRMgEm0Cth8BWTm5aZjlF4mCldUKyYQR1ZEtd7rXCdi3ZEtNmKbOF8gPQ7rzU4JQ93faW3z0ikVGQdfADr7L2+HNtdPF39wHp6oETbPLQ59rWh1/b28u6VLP1pX+z6W03lC0qR6QvGdd6UitfdfaiKJUFXA+uqxliPBAMnKKvmulWp301M4uvWmNOzkHMOzm52qno/bUahbIznaM2pa5DkamyLmVD9QgInbNwz/ozdS11Y6siADkMOVBlkf3o7cmk78FRwyxHVVahccmS/mkz3RYcIwKFpeHV3wUN9b0+owJJKWvTec7U05ROocnF2qTxrxtc5wn1DDKLnSU0JzKDsrdaxWNPasepHrWdjnJQQav9ePLM3HYyG4vnP1yKvfZOr6rV9eeVC1sOP5iItpzhNMga16Vbe+22ztfy9lY6oUUZpymoTk6Ed0fmNCsOp2kSgmlyl3Z27J6BHbe3jMWOv7UpQVMkPAosyPHbJEQoywpIJ797nWHajO3w9tyudFt52A0ptRuOv+31nOgfA5LCEGW21Nd8K1gdx1DPMdPkYmXEclb1rDWtox4lSThb61ZSV8HG82Oz9qOniAGbDikN3QByTqvuEPaedFJkKYickt00WafAQazlBGTgONWX5Gyip6grCiEwPcOmYHcKfBOBTwRVZAm5xllftcoMs5JiDbujWSFLw0HihMjc/PNXTz7ZBox3IBL3+0tNa05PmJ/TF7f32bc2i+p5YVE2Bb5jtPtiGtkSjiRqOTidLu1NM8ihjglfkik3mT21pc7UzKfx+3aeDs2KhQ+4rykQcICBTQ7OhBo9L8HTwenALr9l1uswyi50qjk1RVZrgyAS6Iv1QBDrz2LLa2dcO03HwHfRQwWJgOeCTRsXxZVAnBapxD8q03Fpb5BckaWtZmggyzVK0F2B8vBuuzHNtgvHFL7W/9be+S3b+czbe8FgntOuO5cdh+z2fs9P9k5LAfzkfk/y5zm1rc++Kz6LIDsy/DtutI1/e5UVrsmiaOUdTTwo93MpOKrsRou2hvZUcJXx77ui50dOmJVjqQ0/EVvdK6PmV2mw1XBD3T8klpwcp5ygHKecmjwyN02bUtclR3p0vUKw2tE4/BGkgayZ6e8yHLo/chpcC+erpt+BmH/1OIyMUOTouqr20M2XI6oV3dbZG19Re8tsUTI7cS5d14te1jCi/i0jHQ5Zci35esGDykqUtakvSsoJpte0S0kkjI1lhsrr0LgbpwPHAcGa09iIScK+alqV+GrvRP3fNPuu5hrrKd8J+6xk53tPmmjLmJBRBdN+c9eNKrLF8+0CzQG1xRsyMxK9d5E1o4DxVpbOpsnMyI/7zLuP7al3X0nHlnRyXk+0HJnSvBzfEtJrBunwVB+jS3El/jz3zOuKG7P3pSyYIBkAa5FBwbIKdqY7hE03ONv+P2zImFKKKrS/7jCNov7aTZQOEuoU6UHfVSfWv/sgjGOivI3aAI4BYgDnmVHvwj8XJ0ltFMOObM4o77/mcgU8JIKMIMbMqBUoct0RtKSDDVi2K+SU9X37+pYEnNgiGWnD3BvTXCeDdGAqE4SGXqIlsS75N8EoGRuKEOwJDCRZHAE21+h/45y/fGi1aCv2DqcwKfXvQl7IdRC/aC3nDMe5T1YmBeJLCDB1sMPhDMfDzKQKdRySROdrCYZf658Rzi2ypmmSKtwewfBsBkEouPKOnKc1ny9hz8z+CcZgLcrZxwBCgnieB6gVGaMHDqFuTlsN18yzY09gl3h2Oe6FoCfoGBlgxx5PO4uzCmc46+KcZsUPm7v2qP2VQK2IuR6eNsHcu+P9r/H1eXs8D2SzdhzCG519X1s94fQ+oK55DMd+z/Ns671/7Vn4Tk+8OfyB18SwQbmI9tvVc/SlVFsjHWonFp5Ri7gyemZ2BBwmZ6QoXvBfTW3Va47uwxDpoXYoytBEhFC2VGOWco7q0Ba8JViLv0F112fIKWhD95F5wiN6T50d1PCl3hebaboUmeXzxJ5TIyRfQE7b2QemmoAkTaL3Jn8nCrkMi+6pnoE+T/d8MBz+F3hSsE4M56pgw3gGFRliVjHjlMXw1WXEo8ykj8IT7pXxidEQbNyK4q/Fr69F3r947vme3czmyJD2793bvw5ITpphWQwtGXc+bz5zK1UipEIuCIT37mZQcuNsvUSrQG04j3mpIxQ4rgiJxv/x91nJomY7y3pTGqfvOmdgJ/vpXXzSwO51RtaQBiUDsunmEgoMCLDMlSn1KRb/TiFO4AC74tTmHrFfvbESRjlwfrJhHAkbGdhKfSpNUZlAlLSR1l820bKL6R/ag/ZbGp6ugsdxan2LQyWMHGvD/72CCCpEgbaoZ8QAO1+bAY1CKvE9Ms/sTb1n+71uQ0TNaArOfYuZSV1pEA05J8hK/J8BZ90MHGrv86J5qHPURFdo42RdyBFZ1i0F+cKyQzh3y2E4GIDqbwsbdP31UQtj8q0CqugF9LU09PfBvhuQ7WWvzjW3EQC0AWupvqQWga515ziYpPEuziGckGdBD73LPvur555vv/v0c2LdNPOdpeOKbGtuf/JD5/lrLrCHXnhsOjjfz9PDxektCjOv1J6sfG/aZHAW9ufltxRGbCAoiXgI/udnnsGMLPX4421MLTJp4jidUDVhb2GnfK2sS6CWAJr6jWr32Kysz0ZQoc3JPuZYSTziXuKMWMfDRakvDXEcszIWfRoTTMrMpsXhg57tvLpkR9+61g5f8R+295E/2jeQaw/LLuy54P7WnHiebX3074t9/upnbfOz/2qDznqaez8oUPBXzTzTLCE5iPqLDKVm+NRQQU0mkEPQCdaOSpRZHUP9RnJMyrr0szK0GiarvbHep+sIrbbMbqRaLqfB+QsXPZpLr/f2EVnlROueD0Vtem2tL1jTcnV/JCs0HCxVLUZJ+Q4oLx15yPjkZ4uFpn4XOdtB1llk6Gvlii01tqZzkpPEaYTT89/pNcqWopaUGd/RRBVRTgWt6b6IDaj3q5Y0qggsEZxkUEH2FErP6lhvl9R7nMrhrK/xNUoHxFG4xp2sefWEj7btGyujWJw1rd2KeYmzvWW3yLn09aRhZkpBehgsIbc2oTg26LAIZpbXlGznUecNg0bOtXzf+c0yCyLzwunAxCOaJALuWX45BXawUv4erL4kS/jfgPOoI8b8JiagArNmcX+e490xEnd6fWQ94asYRoeWHMaa+4nBducQkC1OgmfG+vT3A6l1OS9qkDT+Tc+MuNc4jnAE7KesG3Ec6kR8BsQGnOEa9Qx3BvTEkU1xDJwa146z28vvyWAxmG2512LeCVIVurKPzCb70YKWHPdvEEV6QiYgTEu4OSR+yK79dytZ8wwFA3cy0fPmDilq3Tgk9hjrl+DIs4Yt/9vQYT7o7DGvCBTGr2HjG9+wO267MyJ1Me2UEXVtYc7Ru9Tk71nL9zlz1V75vAvsj93p3O20tWgGjdbZYOZ14XwWwbYrDMN7n3PA/vBZ59r/fs65du5xfr6DUuMTjZz6k+jmOD3qTKwXv9poY5Aa/XbWfMXU7fcT94r6G3U9VMEZeOhZ0iwJJuOs+4bSC9fO/uYZczycPfeWQHtRxr3MizHuR4xIG37RTPzz2xj6B/uBzCh+7hByLTAfDovf84atj73Jhlu3223/+Lu2/sCnWLP3+D7wVllFyBKB+f4n/6Ld+uF/tOntN9nBt/5BQdjnpak39m9dN8LAYHiBneRYZNx0YNVVapaWRj3XDkqZijISZTw1I0jGvTjs5SRTwVzqd6oxc8m01MSLeg6RHJDOUZFZXd8SeWNfKhjLo9eQl4xvzYTr6dN57iIZqMBcEzYEYwo605jwiBpnRey0LFjr6dZBqU3HEGhTZnRh1JMeLie4nZmYSAhHw5F6VjWbMFiJOLb8HkY/nUnZi21PGIj70S5HLOj6VO+R1pwWHX/bkxJDqmNJTXyUjk2EjLr3qb/vXWkKXnTVmJS8z1JdR4poVPVKBEknCS3zhD4G6ZB033fwXbubeYFNyWi0BQXpjdYKqWG6XTIavi+y1uT/P/CskZ13TBorv1n3OnVodzsxi+Lz2ZJ5h6Eiku66/L31VOGyyEc9/EdfFBRysgUMPAoVAUG5kQGmIbKlXoNxwSltuHPCoETNzn8/8rV75803F/FTP/Tmt74VJATUFkI/DWfD/gVSxhmxRv191CCYSUS/0S4ipx59bzgUSDMrsNBqTn3d43+HwQbTCyID9xfHFRRk6jj5eobwtXm+OJo9/nsyHRsuBW0j2871Fet5XpQ6AhAbFFHSqHGmHVhLmjOFe3bWZpJu1DQboydYpyAdTJxl8CXf0bfz80YZYkwwimPzv0X25A5s4Nd6aD7qs9qSLZV6EvUSBp4v2XaNPeG+J9mfP+d8u+vJ9EnO7eNf3bRf+6erSyMtto4aVJUF/cl7v2Ufuey2MLyXnLHXXvnf7mqPuHDdeqKM4MFOiEeTx2B7dLY1XdbUu8Wy1UY2o4f/CWQJCLyWtuPPnaGE68xWIlAB9vR7jNID37nOLvcLAU8IR4G8+L1Z45nRMpPOsMlsk2c2ZfwJpShbhBRRLO15YeTFJFvrghzhqUTUnnZmjX3j955tG9+6wSYPfFLfg1qLfMueRmnl2FPt2O98mt3xyhdad+sNMUajyTpWwvvLhqg+Ev82X4uMzuvX1M1RdZ9TTceWkaubr6QIoL8JalJWdbQoa9+rQxqYk0vVIKvaF+dWF4CVaenzxJBj0eizBFHpHI4mTehnZU2KxOVwBAEezfJTJqXCs9hGMIuIPkdV8/IinSBfqtdJ9WGez6WGDkUvDpZSV2jRnZzpuIxqr5uHlXXuyREe8Uxw5nn9kUWloxAcFu/LYytSi8mY+ZpAuZQlcd+Tkkqti59xmmqC1T2QeoTgRByiYD+JqvZsRjaHFRKJHJlqZlt5b8QqJMLm7vfj6f29q+oZ45yGewqkRmbUF6SnpdZD7YnS76CMewjmHFlSMLHmPSX8KXebhE9jLHlbYkx76iUD+40PNsWBydlxzMi+rDijrlsaIzIlGH44SXeE1B023Bk2akEgkuWekOWkQC7GFbZeUOHB7pkhRCaAg+G+IdWTzmWW2oTr7liAtVCV3nTHNXantnnttbZ+1ll2x9e/HnWdTmMh0mk06TgW1TNXYCK4F9rxRsLU8Vrexx6jwTZhwalo3wRz/rp1aktpL7Zzr4c4rTvQnUQ7uJtSiu8Dw+x/wnjiJA+4AT549dV2zIUX2h2sX9YDpA0yZpyOXw+ZAw2pZNER9fs+I1NoqDn5PZh7tgSbbasji2mz5tOU50TmsiiNtYW4MLSnPeB4e+H3nRZ77vNfvcV+65032dW37ATbrs22gIdf5M7QA5APX3k4nNM3bjpkv/D6Dbvg1L32sh88z047do/95lPPsZe+5Wr71y8fCkgv6lJRoyrZdKk7+T3yzGlzt2TxqklrssAw7az2YdRquTac/Cmn2MiDkRm6gP58Wyjyfh92YWf685/79zE1Sfq8IEegF0j/F/uKA/IZZM8ElAQy1KaCwNSEYOt0jm5eDgy04jhwxiRP2IEtf427UX/ebss2Dtlae6fd/j+/2zbnxW6EWkQLdT3a0ENZw0qZKn4eNMnCLBY0fo41djTUxE0h41CDn7KCoI9mDeBoQoMYWvNk+egmqndIr62nGcpgig46qgrv9WfUzDrBiTLkYaBTNkWNsaot6XVyuLA/lF3pfPWZckKKSLQx64ZiOZzaMSljmVUMMTkyvvoO9XS28ZokE2C8pwlPCTpUD4PUtUcVeUG1q6Ce828ixq6w02rWi0RGFRgoi4qaVp6HGnZVwwlZoqPgx3E+t3i+0zIufV7VtmrjpeF9AYkSHSXtmC8claA7qYrrnu5mBsRxCRgEFaq4rsbbcTp/9WCIJCEWWZx73idFZYJbQ/OuP+lhkhVGheZtSUYoF5R9SIOsCZWmy/NOGNvpe0vwE71Rw7L27nr80M7Y1/X1iSJTNC07rmmWv1toWm/WnaLBMinludmjUI+T8LW85YhANKRmrWCQQrlAMmvuTLbc2KzgfMiygbk8U8BhMUdo86abYnoqVOJVoDg5OzIQMmwyWj8+TbJAgUTd/HuCs+LvfizqUsB3u8xBAgJizQ7LmG/2f0hkwcwjMIKUAwNvXob7UQficzEyBE5ivEZgyt7Ifd4mogK8tkZNKbMEWHPAgJbZVNTaYOThdJNBS6YGlAgdutO9wvlwi0dFSXzOddx4Y2RPocfXluF9jdZESAolaaFNRiYwHgbTa0z3O2evveAxp8U6evfnv2X/72uvsatv3k423ihee5cTJvY7TzvLXvrUs+2EfcPIoiAy4OyuvGHTnvXyL9tHL7vF12trL/mB8+weZ+4rmXJTSDFFsmhWiAndrGcBkv2Nc+2LOSuESHaCAFz3kppSe+aZ4ZQNpXR30h1ZI8GJ/xu2IpqGE4gPwJz+OsZ6NIjEEviRbCSMH/ecXi/27t5TC8OVfUuPtN9hVB+ChdilP+sWIcw69F+MF4WtN52VceyE3L7rbZUsVCPaQ1ljEYSKFYYOhn1aBIRH9sXf+bemEPSNfqOqYCljLiOkvp2ahadouu/RWSwbIeVkVNyXoZVmmhyHHJsyKhk89f7os/QZMvZyMgf9AchRKUIX0UIGXTBh7dh0jKOhzJoGrvM42hnXzEM521pUs75HugdBY5/NjnCKZDgwrZRV9DTxvJdajCJQ6N5KCy56evK+SUvOKnKEoNHVnGg5yam0g6oOJsMuWrYcl9TBgVCYBRVTM7UZZktdOw30G1WOTFBd0MvTOSoSn+XmkoqE4E/V1DRFdpb1IhXNw4HnveEpRKd61/WNwjqunlt2GpWvZD71BAWcA1kSRmJe4JxSU1oUMsMwiRJel3rWxcvgaJrqx0GamYzt6RdZMXpBbEjCBLWseSo+7G6k0cusStBem3ASARfGmwnGs9Ktv+ZG5JDDdtGrRdSMoUp4LaAraqMOzfE7olwykYWCtmTb4aQO+zEQPwV2A+LDeO9DvJQ6DjJE1KPIyJC7oYaDoSKgzPNZY7+xjnE61AWo11hRMNkPfXy+HAQpiRscjcabcD+D9JPrrEn2aJsOiZoUJAq+z5PNCxGCehPwINp8ONIhv08DzDnCrsOokglaSjqhfkAdKa7LnTNj0mm6jYZVjC9BGUoR9DKZZePskmlnIT1UtPHG7dx+9Ulnxhr6ys0ze+k/ftWDPxEWxORrbN+e5Ty6vSujYNpJGw9m3ub2rv2Pf7zWrriBWm5jv/KE023EoEQrmXjbbYcTjP7FVJLAMO964BF1tGlRbOgUrKYzZ/2r9h8OnqCSkzrjDFthv7gzMqBNvwfzrBmiGsFa6oCA6U3j2Nw///eADAqSDOUAMlECIo53wtl+Pm04DaSlNqZlom3wIZKpR60JIgTzmXBK69F8XrKqgf+bhnZqRu28OLApauVcvv97RynXvCnAQgAM2LxGtmU500iNtZLqEQSn/2uGnpxNHZUr+6hrM9Hxm9mKMioJj6omVGc6NdGhhtH0GkF7YqhJ3kgOaFZhsVJxqNUL+l6aNKRqutVrVBPjS+crIy/ihRpbZQR5nySI6l4uOfVRGLJJn/VpxIQ2cS/xn5GS7r3Ola+tHCzXM49wRPkZUovQPVFgUDMjJQwrp6Euc85BDmKUz6JWmpDCQw0LyiGpHiY5leFAxr/AkgE3pJOREVAGJZ08Qbqa7VR2/qInF+i5biaEF048A4VJnm80C1aZoEgT29HI3BX4rEkHstDuyjIvTqgdZv1p5wgndq9TR3bJKQVeLoV8P+ZWUVnneTzg7DW75MR0PCJX4KDiZwD61RR3TVIFjjCOnyzAthBfyAAYBgddGmYd0NU0ZVqAzCjiA8EcZJTDuIztjjoT7RbUZ3AUCdMQ7QaBwY+1xihx9mubI+fzGQlKjuc9LQKfZF+rdO9T12X0BrUZPovPYV/Oyxjv6P1T4JlrVbVIsUh3kgHK+lwdLeWwInNmP3Cb2DvZoxTBEM8cR+lGctUj+6iDJKTLOa/6tU1mZWge0kJBDmC/Q5gBqqOXx+/HRPVZxGE9e2gwvGSSkJa2CiuySecS+zcaZEurANnTE+5zop18ANRnYr/691c50Fvqte2sPI8zj5/Yq55/N/vjH76g1L0djn3dT1xoL3rcGb4eSza8KBvfz3HX/tdbrw0NvrOOG9l33fM0v/5xChuV2mORMRqWf0PAAZZ1B0pAEvB1ohCqBbOnCDAXtmy/4Z5CKuncKeFkaDSG/IKTiXWAlui8zIvaJPDg/pON49To/8L2E8yyLwns8QPtgei3my9KLx/QXjvvAtJThjSx4kyGi7K3o0E4CRJsM+BcHBLXP6CGR8kGkCIIURYwYcmeSjY2mzXL1pSasqxIXsZO2YIMkhaYYCxlBHI2NbtNjk71IzXC8ncJuKpQL4OkHiZlX2Ld1YxAGdz696J987eVrHvU5zBLuKsmLShqV12rHyk+P5LerkyLc9lKVQHdK36/mhL9cqRydsrc2oQwNEZbc4sU7UcWSb2GiCYj/90qS+uzHilzN8t5UTLOMgLDdKxypvw8qGplgjYF12lKrpzKNDO3WcV2m+VrdV2q64XCQv5N9SFlXlzX4Rw9Ed3omdnVBd24x5k9alZRY0vqutZEnA/GMvXWJFMkxfCg13NeBFRsTlsyOkt+VIRXw/HsHl6y55qUJcIZkT3hMAbplLriSB9yhh1B7hiOxvE/sKPu8X1OnGYWNCwOSXUs+pjm0z4y74kX1Lu6osPG9y7XAgaBvhOuETJCjD5wI7Pi30Oc1I9Dhz8Ga/+ppxZmHEEZ50Lgl1l0GCgybP/dIXqT6Psj02Cd8MzaQj2PfiNqGe68QhYrnVUYMKBTjCCQEfubHjocHgoNQHbZTDnOdamgMgKW/Dc1zXpq8yrkHZ5RqmZDj8cxRbAHM5XPgThBMAw8n/aCrA2nSBa45fclnBXrnGCaWhXOmvNhjVE3haTBdZMRkBVmsBsO1h1+ZNIw4UKIN50STrZloKXZc7/z5FjLr/i3a+36O3ZTorfAbKcet8f++scutLudumpf/uaWvf7jN9r7Lzto3zo0s6c+8CR72TPOKZBgODzWR2NX33TY3vSp22LN/9z3nhrzikIRAnZfShuxFhbZnL3iTnTAIET/TkACJImk0igh7GlmqEIDphmEcV0xJJO6nCDvXLdkQwQeOPVwAqyzVChfZx1k0LzIwCJQHl/LW3f9bneMo3AkOCIgvZ2kiW/PS/1pkdmQYLounU84rK4ooqMWMcuMiee7HZnWIoYQclyYfUCGIXc7N7UDNL0hVq2iJjrICcnh1N3l84r9VMsX1YZdRkiOQ3CPnIwa/+QEhxXVuD6WsoCmyih0vkewtKo6ks5V/wuKW6n6KBQNi8QhIoiMfy38KoaiWH+xkWdL5Wx9iQGnc5PygRxpOLfMKIN5CHuIa5kv2YpyPIJX5dCHgyWNO66nafpakYKMGqIUHKmhYhpOVo+x0GvFFgwHDzNTxAdb0vs1MprMZ1E9m4DU/DsOSdRu1RZW0/kr++tyY42rDE3HlSNlE67mmgm24KyIu/YQTLMcyTxKynVfy8h7oubbiMZTZsbxIYuQbp4OJeC7rXRQUnJo7AxHgx5xzmiZJbbS1ztSiePR50/s5LVZcXjS0Jsnwy809mYlo+qq5tsUf419BhTNc4XY4YZoNWV2cCLAdtSPqP2QSVCU5vp4Hc4IYwvJAUINsB31lGlmOYwSJ2OgMXaNdeL/5n0cA9gLNQegMT4DB7FIanff1jGd9uNJgkHHvvDXHIbdlvXcXvE+AxjtqQjoBOFn1h8GleuyMjDScn0HQpOED46/m3uLuhh3K9iDnDcObJYCvX78HZiGqfgQslbjMvyPqbYU+YOFSKbh17jF8D837oZzbEp2XPqQFkF2UOBwv3P32XHrg2j0fOtnbossRs20fH/kBSPbv9LY12/r7Pl/e4X96b9ca7/2j1fbT/zNpW6wF3avM1ft3JPWIxhqu51839Be+f5vBLy1f7Kwe561PynjKfLaDLIPqitQHs+RSbt+HQM0/oA8aZeA2FGVSFrd00S12NtbBNEZvAHLjrCt1Bp9Da05jDtivfh6QOSWLLPz329yfNYLZZtcT2Td1CEXqyfZ9mn3tF1GxLhzIdcjW5oXNaZgEdJ7NAh1iCJhxDJf5Zz8dUFJnyOR1BXWI1nVvCm1qVmO8fB/b4WTY5ssYsRGD+XJeUCfVnd1XbdRZiSjq00p9QMyiZWsX+hvUXCv5IbUIFqTCWqjLscheZVBRQDg/3o2TN3Po54WUall+BTp1jp8ys7kBOX0akOnURIySLXDrfutdE8Ed0aWAfbPQ8/PPmIcRzpHEQTk1NWjo2ZU3QtlawoA+BuReji2DB4ic8MgjMsEzVqjr1/A6RDjdRXLqklHKqKKnIL6aaLfKR2oNi6/k2SS7s1Kkl0CvpkVPT3+r8dX6H7OMuOqA4Ba4FUEA/VKiZWkbGo374UcvZ7NTman9XoNqDLuU1d6lxaLnnAQMJ5+12bNxwoM6BY1ILbn3G9P/7wl29PFn7d6dmMh30zsKRcNl31PMSxukAy/bkkjj4U5NQ0TLHTyJuo7wCkYUjIRakPI/dA42yZci+OAfj1PmZ2dnLS6o4wK3TrYqtnbxLlQf0AZgyyC7CqyHf/9PpozCTz8c6lrrSQRAvgsYDE//gZ1KQwU2WoGRGRtbfY+ARWR/QzErM3np9YA6kmtgjAFhrm+9vjnTFQTbYoSBGrYQIgERRO1aWSPEtpv6N9FCwCkGq6Vc+X+DLNZlP1DnQzjDczFGmD9olbhr1+jvpQN4Ln4E75rS59REBCmdvHpe+LPX7xuy27dmPXzlooyxK6deGxRj/jmzXektNAgvt9w59R+/U1X2R++9xa7YzNHU4hgAXqwPbMvXXtHrJl7nrUnHGLRy5unevmwBDB8J6ulKdgzpTnTct1JzYA2gfUSqlZAOE4avWxT1IZ5Lb9jjeK4CWj8mdOI3DGkkRoWvU9Q/5n4S1bJ/aEUQd0SW05zLvVAgqTT7mfd2fePAYLT1Mnjf5zKGK5QwJFd1Jqi2bZTX6EVZwQhoiux4GBeIL1FOikuhCZe1iXH28kui7BhyiL4Ug1GkXTNQAs2Thq/uoFVr5G6Aq+tWWLKkFSfUWaj+okyNP2eBSsZ9Jr5p16pGlKqe5NEIODfR89nkrE++jNV86lVEpRxqH9Ixk8Yep8BZb1Lnx2U7l/7Ndt9xzus+7u/6zUHw4mOSvPdNCEny0WkjCqyxHRMyghqBQoZ7ZVsYpVjiVpBZrcKKOpAIjTr8j7Oql4IwZZyMhJ1jXuSzkLd9eG08h6tZKTcN1YTAfGsMhNrK6hXFPmdZPMJOhRZYliRU3QskR2kUqF7KN29Xgsv63OW90ufLQo5/U5h/tNAxOvIhnAWTdUEu8gdEw2v/vtpcfwnrezaBXu3+zWltbeYM3xxbw9RCTK+7+lDO7CyWFLDs/GyZEpJJSdbkoislfPBaeIMYEfd4dANWH/IwaQxhQSBwwgGHY4kDXxAsG1Rc4+CNfcMCjmGheAk2WlkIiiVW95zZfW7CWPzheMZpaPaTQfXzsvsoxCRVbCZgdYg64oaLUIwq3UXQaYVIovqgG2urXCsKH1wfommwOjjs4jW6TcKlumiMBCJ3PndMOtbQUXH6fI7amuLIuhL/xLsPKA+IMygwAODklFRa/O/BTkEB+6/KwHErPQPdTvV8+rs/BMLPHvl9Zs91AvEhvOCqPCNWwpT+f7n7rfnPOzUmE5cZnO19oHL77C3fvpbdtvhaejf4XjCqcXzb+zS68ueO/v4FRMLMNh5VtQlFlIegaHJPXLnMXBHOzn33Ji2OyM4MDuiPWVeBY1qGSGI2ECGCZUb7DX3wNfW+IwzIgObch9Q0MBJQY6gUZfeJ9ALmrHzvkZTeo7YOHTKPe3WMx5qu/tO9tqTP48geDRBYu2yK4I6EplmCL9Om4D3mqgv+fIL9l7+vStw3WDeBbFCUGDr/+Og2nSyrWpEMpJyStqQqtPUo9PrqLc2VMoetAFqunidmeh99UgIFZTrYr+ckLILZU9yZIIHVe/ROciB6fxldGvVcb1P2VM9lK1m5el1tcCrshlBUWIbBgffN8rKJz5hI19MZc13ZQS4H/9bvtC+fvXVvfPsJZJyA4+SZFLfPzk+zgMZJY1NF/zV5GcMh0dOKI3zz8WKM1jJ69N8pAgyZrPeEc7yvkzyWSqjUg2rHgYoCEFOzZrlGAYxAnsJpKxV6UvOxpLVJ5hwO+WFxOCr2ZIB2SU7qe4l0znH96aMZ+fnSfX8Srf9IGtLmdXMk9Ydag9F1iUIEsPSj/W0e6xGJhTHziAl1ocfJ+SOsg9O7NKVwcKeeNG40M3jWjMrWjlQvkOCEAFClJVF6XFCbJOaCwy0WVK4gZ+meW+C8g00g2oJ653eM19jh3wtAd8xenyPf0cANuA5oD83+OjobUUGOI0sCNr1gFoDBj7vldY72VCpvRQlCuA3HAJwXDMcHpGJdxkM6DtrUjR9GHg812CVqsePjBp4FWiY65zkVGCuza+LxmE+Yy2zYggbQElAjk0GqGSHFPNX/DqhU0eGTH3Nr7EDnuO+YRuyp4pMAYcUwaUfDxo9fU4QJMozaEyivUWwtQ0a+DF7S/D8rc3yjBYxm6krcJ//6j1f3rBbt5BdGtlPfc9p9safutje9jPn2Sv+2yX25Psd7zAg/VG+L4ar+f5hZlaN3bFTAtCT9qdgrC3XSj//CVt42mm2h5ogASR7kRra6afbyK+BZ7edslNCWPIh9krhBBrBvoWhCPJE1onzIfDxDGySzcg4eEvSwyyDP5prF2TDrEmgvHwO1POmF9zXNu/xJNu87xPt4EmX2Pz4sx0aPc6Gaw5NDimNOKrgznVA0Dde9aDZ7/1oEntq6o59zxiZKocN/bW7vh9m/vsV//t04PVBXsf/ax6EufML21eTCXqF5zS0MjAqvqsILnq0IvquMiRdBTN94uMfsy99+ctx0dysxz3u8Xa8Ly45LC32moggZ1Dr5NUK5oINaxUEOZqaxl7r6OkaP/WpT/o5fdx+7oU/H++HLfja1/5fO9FT50c/+rv781ZGJDq7oDptQGVf9aTeSK0f/GCb/vu/W1QX3v52a37mZ2IT3eoRyi++6Bfs/AsusMOHDtpVV11lf/qnf25nn312UTrolj05Oq4MsjK7GN4np9EUwdMm77cYecrq1OskdQmM/iCzFskihRNsi2bYPN+7I4KIv/egb+wD2S8T9yHrLBikmHyrmk7WncSIm1fwW6yPvIdNOopaMSIkiLLOMMhiupysnKiEXiMrHJaBcn1DsWpSuYbUkwWDT38rB5oWiI7FH28V68+Kzh2wnuPo1JlOP27NHn3BUuNQTrzUvTzzXyMb3/wvtcgnXjyxd1w+s9t5+HU/U0TMwzSIbWqSFao4oeZAEByZEfsQyJP17FHsXjcod/raIXuioB9CxUkBRr0BqvUmTj2fTfSU+XqDzg2sxSj0LaJljLJ/Row4d6O37nsQ1l2TgU+PWnRFwBMHNU4GXpOEmp3Fsu68SAShzT4+LjnaGdjXbZujuXN46KiMUQcy3EnVlt22OGSuA8Mbzbs8fwwu0CKZgq89qk38juGAmzfcYC22gzobtskj/+k3v1lgPQwnjigbcce+r6Yw/Mia/D3tV75iUz8GmVTHs2imsQaioVbSQhGlp30j+JlvZzaUI9Qdcrpzs7On/MkX7bsv3GPfcdGxdtqBsZ1zwoqddtzILj7pdPvhh+za81/9Nbv50KwfNLhIBXMFjHPIL01RGQ9iRSvh1xJg0gg89fMf+rXFmA6yFl8DNNCOPdideubT5J7oST65Buedxms0IeqKY2/8GGO/d3N3eHP/PnBbN/a1E9nnTplUHfUkd/I0IC/8s7i3ja8bPj8cI3UvpumSnQKd3+OMIh/lz283IVkFhAosw25gIwgogVjZjzi8DCpZ+zc3Re2DFoAu7ff4pONtduvtSyhPGZMuWJCMIngVmuuBYyJJ1KmlDBlf733f+2z/vv12v/vf307yG/L8H3+ebdLrkEV/RaSiQdfnwGdDMugbJdMRyUHWbDllCHWBvZY6kqEjjaTvSQYf40PdRhR4ZWXKVOqaVU8QyF6igHOgo37609Z86lM2+fznbev4og8VGK5vijl/92O+4+1vs8c+9vvs1178a/bbv/279oIX/Ky95jWvKnTrhKJ0/zg3epv0ubrGnWrelAarzTN70HkRRHA9gtEEt/bkja40znKMF7qjvNEXX6TtCfsJGsNpAdFsV5+zyChZCuNtkgTECOxVvgeDvodF2Zicj/4dxqlyOpAcIFNgmHfzdW15oEviRVMo7sqUVC9Q1q2mZF3HNPug+utiEm0M9Zv3zbN9s21kUTsBrXzfXYb9MeuxLFpD29vLER81PX9ne8seeU5mRGLoxcWrxpRDCTXPKRUmoknV18t20qSJ+A/AyoLl6vdkHTUTjEfK8Ey5Rq4LhIF14vclGItNGVWxD2UIsvsMIqIpmr3MGsg+JbKX1bb0KcX+zuuL4Ej1P/YgQVjagUXur2Eetw4IAwEQw7UruowERTx3ptnySu7Adq5rPpfrCwec5BkYeTGqnfcmFI0UU4xYr4gPEBgO+7rF0MUgCZyn77up7zVozjFdl2fu791G+YC1SNMvfVqoIcw2ch028bzLVNlxOJA7NpNpO1xk420hqjRJJef10+nM3vnFQ/Yrb7zKnvNXl9qT/vjL9gfvutbXbWenH7/Hvu8e+5Mll+Mtsr7IMaMkMV30hArVmHCQZQS7BeSIDuCmBxUzmmbdaUQ5ALjt1FNt6LWnJvdGID7JTqWFQIEp9mHia2hBxkQ/2JlnWueObuAZEwHLdq4l1hWMvAUkGBw3DosmaqSdIJHQb+Z2OyjovkbHrAs/rxX2IiSahHd72D8d5DiRrYCcCaZ5T9bDhnJeaRfIzoEUQxGHtXj7QfU4DvqMSQ5HWYlgrxpy28jpmoKwlFUdzU6TwbzwwgvtXve+dyy0y6+4wj7y0Y/Yfe5zH/t1r8cMhgM7yW/Az/7sz9mb/+mf7ClP+YHoBP+zP/sTe+R3Pcoe8MAH2l/977+0x37f4+xqj4Te/ra3uNHesB946lMjw/nDP/wDP8eZfeyjH7NXvfrV9t73vMfe7pnK+t51e8lLfiOO/RWPlv7IX8d9+46HfWcfYajRF8N1zTXX2C/8/AvtxhtvsB9//n/3c77Ij/Wv9sM/8uy4H69+1d/axZdcYve73/1DEklGCtpl+9a3WgvNnQ1wz3vGhgPDh8oKfEAUgQDmTTfdWLIK/+y7XHCXgIRe59nayR7l/cu/vNuu98X4gAc80J73vOfZBz/4wXgW3LvffOlL414e9AX24l/9VbvA3/s2/8y3ubPjOu53v/vZz//cC+0P/+gP7fzzz7e/f9ObbP+B/faMpz7dHvXIR9rll19ur/TzP3T4kJ1x+hn22Md8r73jXe+0r1z1FXuZv+d5z/1/7Lzzziv9P2RmOYdLcF5kwUnpBv5hRUSBmxoX9zEdYJcLjf/p1A+ttoSGNZSMxXu7G581Mt5uOb6DtXSIqHpUVJJ3IDnk8XjVbkKCOCcUxcfZwNnls1T20i/4pukngEZtJzXRAs6LgX6L4qSCjDBcjqhwZ3G7R8V37rhjHnc9yUVss3lHwXklzE6tkhHGoBvaJuy+Nsdo4HgS0gnnBEtPkkVByFiNGlTM1kn4LDJDzpmeJF8zwHGRFfu/R9RNICW4cT3oxgXnReMkRv7OzDBouCVrwVgvshYxTKIBckLrbnQQhOVZsp441iI7/wOaTpSA4IBeJqjoW5klqTUCxl8wLgnk8hmOElGAmg0FfdwuWxR4ltQugCiH6aw4Zwgf1LMicyJxpV5Gf2MGNkTkHYaWfh4ctv/9sAd7HGfuxnkPmRrQJM3IbvhQtthOlQP6llA/iKzZr+swunlAWWedVbKVAY7Os3W//xqlzjO58c7CJLzraXv93zf3Qq+LZNc9+T777aR1s/ddObOvXX97/OWOw9v2pk/caBecMLIn3f9kO/PYcU8Z7wcM+ufc5aRSdrjxjsLWaxazfsw6vUwFWnTHB+TJPfFnS5bUXXedNe5YqDNCclk755wiw5W1YkHtgVZk5hualaA+bn9Wsdn87FnY7te+ZiN3biZIk/sPkQZqvf9u5t/H9FBBoKA2yd8JdHlu82x+R0DY/w7te6HWIgWimWg0mcwEy5frJyjOPU/9kPPbyQAaivpISYlf8y6oQEvP1HxJ61aGUDPqVJsRzFZTwKVsLWiupkxHJDVoe2YTf//cZz/jsNlJ7pRebL/8P/5HwFknnXSyveXNbw6o7/0f+EAwvz76kY/Yf3zm03EOn/70p+LZ/v7v/Y79T884fuVX/6e9+tWvsjv8hl55xeV21pln2Zvf8lb75Cc/aZdeeqn97atebS9+8a+HM+LrJb/+YnvJ//oN++tX/I1nS3f2TD+NpOBKcEwv+4M/tN/ybOZlv//7cT1vfOMb+uj+054VPeQhD+1vfImct6NovXjoQ22TTcrogS98wVZ8EcHJb7/3e3uj+8xn/mB83g//0A/ar/7KL9vn/vPz9j3f/T122WWX2bvcSZBFveY1Zarj6177ulBsftADH2Qvdaf0vOf9N/vzP/8L+53f/h37+V/4Bbviyivs035vXv7yl7vDfHWcyxv8XL/i8CCzi974+jfYL/78i+yP//SPw9n92cv/3H72BS+w//NXr7Dvfcxj7N3/+i/2ohe+0J71zGfZC/33p3mKH30606VCRmSIWWeM5kbkZZQZpwOT+oMoxWFUcyxFm7+bZaZ5ODvVed9KRnXjxMRj4xMxZ5bayxvlGoxxGiW+jJ/35Ijvpir4SoVZDDH9bTk3KusK/SDAxZKUEL1Mu6W/yH9/7Z2dve8r2/auK+cx5ZRjSl9xNUg1Rf5KBBJYWG+5bGb/ctlh+9ahealVoR7NTCfJIS0WS/29cIoaKNgGLRpZmHU3rhiefcnIGyZbLsaSc7/47Kz5SDQ1SAsUtwkcgTCJPHEaHAcYiCCSv2dHf6ACiSBgDEYpK0T2JQMSdSH/20YGWPQ0RUO8Wa+M0uWzmFXwc9QuUXpQEzeOe7fMmJomSYjM7ZBH35ZSR2FTcIQoyiConIQfjB8OBccVYzeswD1Dmsz9d4FWEDy5gURoNoZdooKOYgL3k15I1hBsM8+kqHNBnyYzKAKti1RdWM5Swglddn2ZPnDvc/ZF+TEcTE60pS70wHP22A8/9GR78j3Xsi41jPHorMLj9xUi0aHdkgmVJttBTzm/6ykFGr30hnr21yCz+CbrTk1AeAS0AfNy392etO4sBh7Arnj2AjmE+z6bLydFC7JX/Tds8qhIP20nS3LqMB7j2YO56PcwxlvQA+frDoFbyBCNfw6ZUtTuktkX+zhrkgQyK0hWEdBn/12gJ5lxL5GpIvob8+ByvaEywholiNlKwo72apP+IoJKK+jYUFCXoDX1LYlZp/pKzx5rmiMgM/1ejDc5NLOiRvuyl/2eZ6N77Qa/MU97+jMiwv/Nl95k55xzbmyCZz3rh+wn/vuPh/N429veZp8/4Xj7MTfGH3QndaNHRqd5lH/llV8JfP3P/vRP45zu9A14lUf8XPSDHvyQOIcvfvELYYh/+7d+029WZ591J3j99d+MmhY1JJzoXe5yV7vVb77YfGLDPeLhD4/jkjnc6173tNtvv80e//gnhFPkHDHeclJiJooAMXj0o23FHelOOmDglRE48EMeUorx/v9Xv3qVPfvZz7Gf+umfsS996Yv2D57VXOtYMvf5cY97XE8hf+oPPNV+y8+fyPz22++wb37zOrvHPe4RRux0L4D+zf/5G3vLW9/i9Z+D9md//mdBu8S53nrbrXHPH3j/B8SzuovXsk45+RT7hNe7vukL/ZV/+7f9c/ucQ46rq2v24Y99xB71iEcU/cNFoRdPM3PWyPf1rHXtZo0rSCb8HUOTGVXf65Q/c39WkgUWDsLfs1Y5NvVhdVXGJEhwIoq4FWhwNbP2QTqYQVOpWSQcLKIDf1vk4g6gJqFHmHQl/aqYeFEPK5pnZQR6WxyT34N/v2bHLrz30B5w5sg+drVnCw44PfCsFS8AW7CH9k4Ka3DuxfL3XU3f1MS+766NvfvKXfvMjdtZQ9phjnQZTjgrRe2gkM/1eaXZFskXiAlAU1B0D5MdZGc/cBTGmuxj219PZoWoK8cbp2iuxpDPs9arXjCg4H3UA1KeaJqae9tJKBIsy72eVlC5dBZn+cwCesrGeWpZ3EEgo/VhUaXuEvrGyAQbjjaBhDj5mc8dp4ZfoCyw6TBorDVIJDhUiApuIDeT0BMwJdE1vVrAWjguN4Z73IBuX3llufcQH8j8ELHlfpDNAkHRnIrxxhmjH+g/oy0o/Tw3KH6hJ+fAO1uSUZriTD521UZovR27NrAH3eWAffzKg30DLFnPmz99kz3k/D32lPuf4Nc9sA9f4fDr2NfK2St2r9MnMZn1rZ+7vR8GWLKxmT34LsfaqceWBvlPfe1wNtYWwdhwbG3JsoLo5Oe8cNuw4k4EMdao+6X9Ud+i9g0ZzEq2MoRNguRUoREK2mJ/uGNroYyns2a4IgK4C4IZakrUoShFQCN3J8UzCYgfOBlECFUQ+sP8Oexkv+OgOn6XiEaMBSLjIxPKYEjBJTAl6hwDShxJyJkulrPvyMAlpTBUFCQGG1+1XpxgLzmgWjE7Ljx7k1RzkkSQ6hM/+3M/b/d2KI8vseIOHDimh9SIRo/xEwai+oJnEswJ+rEfe55nV5+1D3/4Q3ZPh8eIsi6++BL7UYedWLx8P8DGy8J/qTEM7QlPfKI9AOPs8N7znvfjfr4jN/C397WZvXv3Ba2xljkKckVClWXq7JZntbc7jPgg+9CHPmB3uhN4+tOf3jMWlTEKwgnJlOc8x8b/8A8xI4XZNtMf+7HSO5Jwyutf/3f2/U9+it3zHve0u7pzJAv6xV/8BYfeLuhnQuGkDoUYZaFlA3Pu8/pc1IasKDN88lOfjGdw3/ve157whCe4g9iJ+wVk+Ssv/lVbWS0SQJsJieB0Lrrobvaj7hRFO9/KCFS0zFlGt4tcYCKayPFiABe5AAdZYA2j1ZUxFbvqYUlHNEyYLZhZmf1wjpGl9tdo/VyqRS5oXrmdMF1IsEyn/eTbeRZWpwlXBM0dthyZy7RoiomqrnPmvdshCDpMPmvCKoy4QAEiaj9W6kFqrp0VCaM3Xmp2n7MG9qjzHKrZHtq/Xb2wuxwHZDi3g1sLu/RGei6G9rAzvQSwMrCv37Zrf/+f2yVT6qBnr6dOXmzZdHyznF7bJQGDml+ZRks2FGoPQGvcfzeswFaoP9zhxvQYN0w0x0KUIAtB1YEsC1Yb2QZNubvZuhHZKOtuWKa4WsoMrQGBsTayPhQqITDfmL1E0AFUm3CinFfUcTOLUgvBSiqeA0/Ps38sZJN8H6+jxefv2UszLzUd7r+/jkyTNUBti2wQ6G2cShAQG6ZuiNccYtrhmNDeIYK4UQ4SlB8T5h4QDzAlLLMBhAeHpYj2ITw01KaQICLgxHhCcvjqV4MaDQy4A4zHZybNP6jcDddYlK7JWqCOH9zYtfdddtAed89j7Ccffap9+qsHfX13/TiM/7h6w/7vx2+zH37ICfb99z3BHn/PY3qC1B2Htu1vP3Sdff1bW4XWkHOe+P9Fjz87PvcjV9xpNx2cxTpp51s5PmOxzKAWpT7XuYOgfwmGHnUcCDGWtUAxkOWoNB2AL/X3xZ7JerJQiciAPLgdfv3rNvRaE46d+7Ht923ISBW//6toCSL46s9qOwMIfkadfQD5BMkj9jbnksedd8sJBCHylahal/VJBbuSQOM6+HxgO/69N3vl1rEBnC/Q9mjvcrQ6uJ/qTcIL5bSkoq1CZ62EoIWsLEq4e1+HGi519uTsyAJe+cq/sWuvvdZe8Yq/tsc+9nFxTJwThutUfyCX3P3u9obXv96d2n3skY96lH35y1+y6xxvvd5vEFlR1D7gwnclQnuIQ2q8HnIDr/vd3/3tMNgrK6v2hje8waG+f7c/+qM/CKOlDC8iCf/5b/1cvvKVKyNDutzhwfvf//5xjhyHKFYORNp5WoxcYwhVOn4LfELvxBwj6ecvlhQG8wlPeJJDhL9nn/ds5YYbrrc3venv7eEPf0TcM64fKJH61l847PakJz4p7tsJx59g93GH/urXvNq+9rWvevbzCXvF/3mFPfMZz7CPeIZGdsgX9aOPfuxj+by6Xt6H67vLXe5it3l08vkv/GeBCd1BvvPd7yrP1z/7Opg/YlAlHb6G84JdM5v1ckXSxBN8I7am1kqbDD/VJpU5a+0QhLDOJsm+6/L4kj2K8RdN6WkSq07EDGpywXzM7F5SLOp/gomnDRqj2xeLvggtnD+cAiw8siccUwiu7hY4ZZZOzB3Vth/md953R9QPTto/sce6g9o/mttnvzmzz9/U2AM9m3rSJas2GXR2y4ajAh/eLPWIRTbUdmlo2ixyh0Yev98tf6Pe1BSnGCMq0nm0OT8nyAqc/2DQj5igiVTqBmQ/QFyw9sD6LeG3NtsnpLqA+eIZbbqxh7mHI8EZEbjgtAXFM+q8ScRD+7nu21MwGjA4ziwDj54oxV7PwDQmG0/LOAzL/j6MYhA0gNSSxLOaYqIw8mZZiIcOPidT4rP9/RAfdrEfZOg8+yQ54Bx5LRkhygYbzKXChrnhRQQ14EPuld9bMrL4HPajO8Fo7qSPqadpl8brRQ4G/Kv3XmcbvgDOOm5iz334aYX4EGPQC1nllR/+lj3jf19lf/COqyPw5R7+9fu+Yc/4y8vsHz57Z9kfCfORGT37oSfYiXsWvj537M/fe6MV2G5a2HhN6YMCxoteJj+vmdsCsmYYb2R4IU7gjrtJaFXja7RXRX4Yp+CAAmYFfZFZW5GqAhbuHBqcwGD0exEZL7RxdxTUlqZJqScAmBPkkGFT34OEQSbq32nAnyefgH01yUB9NQUWRllHlPhyTygbFNkr1l8EmBBRyIgXRVFkO8sHw2xrGTztaU99yVlnnd07l1rcVI5I5AbBX1HsRf4DjHqxVL5Vb0+tc3a6Q3EwvERH5/sDH/SgcErv/Od/tvs6tPd4j/5ZjEBuJzsEdZYb+lNPPc1O9Rt2H88OeM+Dvcbznvf8a5AZnvvc59pxDDJzQwIFm888w+GzSy65u73bazZ3ePT50z/zgjiPBz3owfaJT3wsMp8f+ZFn24FjDtjZZ599BL39UY96tP3b+94b5/SiF/1S76S/4Qvioosusovudrcl/Tkds4xxfAFlkAF6nWfhWdvIC5Si37JRua573eve9m/vf599ymthF198sf3gDz7LPvjBD9jTnvaM+P6JT3zcnv0jz7GHPew77Vi/tpXJij3mMd9rN1x/g73//e/3iHPLfvmXfjky0u/4ju+wd77znQFXPuXJT7ZHPfJRQe++973u1Q/lo0ZwT3euD/PXXun3jPodpItnPeOZfaDw4Y9+xI475thgTMazl8POeg1OjqxkmoyohbDtdB51c7KYOJZZNP9W/5XZUjVDyuhySuPcTHyX9p1lbS4UMdIZyhFJVX2SVP1ZOs4gR2RROH7XFg29j++cWvyExFPbbLjNIYCF0j0r8V6bsJ7/7vC0sTt2B3a/U1Nyq5nZvj0rdsGBzvavLJGCl39sw646vLasJzVZyyJj6unpZmriLM29vKSh+mDfeeytocYAS4paCL0qbNyxCsggGaAQbkD2etS/gQ4cGQkZFU24boiHdOiTofg9530B+5FhQJZww4I0jeXIcgwUkCC9P6iOh/I05BQcRDb7zslKgMasNONS69kkwka1G6cELEv2BmWdrGRWJu42qWCNPh/3GSmcIRkLfVl+Dmv+82Emz0JQYC3l5yyS2YmWG2QGIB++oicLWjhSOTg1DLb/PSjlrEccEga8CwXQAhUC4THEkPEf/lkDDDABE7RnP9Y7v7wbhKmiSGEFbsNNddtR89mYlnX64LscY/c4Y9WuvnnLvn5zkS8SdRzbd9tWa0974PGx9v7kPTfaDQfnZYS6mHj+/aEXrNuvPPm8WKd/94nb7IOX3RbODYfVeQ2y6aRa3sU5cKzHXOSrwgNGiAgocyATRHPs3IPkIIvk+o3AI9t6JCMVfW81qUhszqwFab8Ce24xUJKAhoZqAmpfW/Q60dgLQy4QFZwSZAhsLcgT50SwAVKhck7T9E5QpR8FiJNKcixKRDhHs/71qJLEMEPQJRxbEiqgkTevec2rF494xHf1tGJ6e+rREXJYXRUt15pnNZf+CHbUYnHE9FqNTVf0pWJ1nYXVmZa8f+0ge6OXEXithyf1bfU98bM+f1HhmIr01RsjR9sr9WYk/3HPQt7whtcH4QLHotcIFlTDsbLGMAwvf7mNf/mX+4yyqe6RjKgMNOf28pf/RTis+yRrUZlYTZuPY6XT2M5RFDz4lWrmkab26jMVGGhEhcgBkdXma2qat+DQ3YRu9Hz6/rZsfF5kTSOKzeMypv2/yAr5uXMuPUsnSQLqbdL9lb5aSNAkw6uuO4nNt6NIPJ2SiBfr9L5slxk5ljh27dx4DY3NL9t+dOhyLcTIm2fWMkwad5cOCpZcjD9vCiQXPw/sR+49se+/qOyDL96wY8evj4N5xXp782UL+4fLrDi26E9JqvgivwclvM2aUjpBrqItBo46xUvv/o1wABSTu5TlifoSYwv8M4DgAq7kHvg1w8jb5/DVtmcO6/79kBusdc/Q0T2DIBBsNr/2vfQqwV7zv91Ob4+vYdh+9KxgkDYxdEAq7lwC+vLrY1bPPq9t3Om1nFUP3mhqhVBxrP98yKGxsWck1Ib4rD0eeR/24+7x18OGA0IDouG4OE4czpbDbavnnhvwHcZuvx9ny4M3DC3Mv6kHgmvnnx+kBZzi0M9x6u8Hogs9PP/MPRdeGHqBnDv6cRTxoZRDb96+/PJoPg0yhn9WC+sOqBDYiOzLjzWHAQYk5e/b8vf85DvmoWtXVpP1fUalb6mofDO87jeedrY9+uJjYw/81fuus9f++x39pFqe4/qktRd+72meqazYH/3z1+zWzTLKIrT4/Otp9wcOPD0CHkgVL3j9NW6LkokXn0gfVRmXYTlyfTJc2CsfsRE1XOpAkBVGqKYDzyIfBGQJXJpQtchCCtJ6JhyZrQKb3D9SXplnm01Aq4jDUsOEjILj9s+Aok62u8HaYy/DEoR2D5xH4IKtxvHn5/dQXtrzoXqXrPQZ1np+02zfWMnatVCR0GXEfnJ8/90V4xRxlZyQFMNlFNXsqYZXad7JeMpR9eljsvOkY1c7sl6ypF2qfotMUcsJ6biCGQQt1P1MghhrfTQ1pfJ6OUH1WNWSKTLkMvrqvdqqCsPhhNyo/N7v/X7AgTKyuid1ttWTRzDcz39+74giKshgWawu6capfvO0pz3ds7ezCoulWwo0SuGiHtXOMYYVy0V6Wf0Dr+ptTd5jsSwnRylUYOgi9VfBOa8pRFLz34LkhBlr1lNT13Lynug5sNglz6RpqGpSVZAhNfMmN0/oqg6KzE5EU5nxhbNLnHyU9zKeX+Lqh6CbWsmk4lmko+uFa4FvjjvGoa5NC/K4CseSIZJDwlBIGSKhvJ7S7e953We37Gu3FM1CzkGB1tUHW/uHL+2kgnjWkRbJ8AOq01RbCcW2TVXrokfIg4vFdqGFu/EnI4CpBjwH3ZsIkkyBFTBLavcWJABqq34Oe4HCrKASUXAmMOE+U6MC7kH7LO9FUz3DLvcL34NWTKaT2fA4ewQX+RxE9wVe5wsjsprivrF3aQ3AYWBDMhihdtRJWZ8A1o+3J1XDoxAOdd2NLZH8LMkVi8y0Yu8wqoN6Gtk3zgkWX9LUo85FBsUwPO6l34t5NhrD1kMVo/X7wrwqsjiYZrueBbDOdsgYGQk/TCmgZEY2uQ5i0F9bsuqFw7ov/sdr7UOXFxbv8x5xsr3meefZeaesl5qr16YO+aN/6Vu+bi/++yvs1o0yQgWnduYxQ3vZM8+1Fz7uHL8fw5jH9II3XOt7LoOuaNZNKa15dGOHMkmzmPq5+fpyZ43xH9HU6ueOagPGmlEj1MykyiN7oTq2bKi+tjTyJ+vCgWbwXfacVggydZ4ZdTkPYEK6iP4p6tAQt3I68Jo7SHqaCAjQ4dvDeswglHrzKOtf7PtRBpqqbw3yHHBIk2TlqQ+yJ1DxO9pwaP7dX+rqrWotMuaKWNXTpDlDcgy8TsZJhrqmkMtI1iKswqtVUFVWUxvhWkdPGZaifssNKOei5kY5KP2O90rHTCKqahAWK02Z0k7y6QVfysDqOzWgvb5JNNJD75WTUgZSi6y22ashuZ8+O0olbumM6Qs4cv+BY4pDHw77uVB6Dms5OqC/j+lguiQeKJCwNCSiYfcOKo8VECqGZrdQolWbqaWCuipjUYRTyxHVhBd9Pu/fznWxk0xHjWSXykPNYlQg0mbmJscXNSN01JJpN0r4WMGD5I/0fMSqnGV3eRRYM5PU64Z790ThfGVYzrk4n9LxX4gPy9ETRci1zeyry4xnVPTsplv2ux86HDRg1UsZh/BHXldaau1lPQliBaKgwcIb9gyqmJYbqpbJCkSTzyG91Une33Qa1EYigMlstc29wz3mU5okPtArh2RRRJq53gb5/INwgsMnu88mZwVECjKoU/RSXXFrBr2sUziyvO8cmwyafcIxY0ZT2/aN6dSWJuzzZARSy0KFAVgS5IWsBwO3nU3j8WyB9cX6ZNIqhBc1LBOMZv0sPp/I3D+TrBE21zzV0aPJF7QDyI8iOnsQ9QBUMWgngFBBfYY2Fwwez9X/vuJB5uqgPK8CuxXyQ5NNsIPZZjoK7s3cfvlN19grP3i9X9/I7nbmfnv9T1xoP/6IE8KJlLpQmwzQ4tx+8jFn2Ot+8m720Lvuj/v4lk/daD/3xuscjt0ujrBp+jUXNag+dC26c3sGsyAhGMKtQFvAlKxlEJsMSgXVtRmMaf/3SUVTJMti3SRaJL3PfgBp7l8cOuoO3BtgUcayD8hOfX3Qx4bqeMPgQYgPwHk4F9YVzt8z31HaQWuWLO2mbY8IsBcZgDYJs8c6HQ77MSnBoiXQwWHy+lwLbW1gBaNJ1kbGXGlirQxR15IE+xytoaeflf0IhpOCuFURaA3fydFwHoKoeoXnbql7VzsJ/Syau7ISqUfUyue6ZmUUcoAif+izOR82VP1eiYvWnyfYs25WVjbVF4MHpRdlkBnOLI3ooHK0seDywWqyLUsZWugsDe48+xakfCGIUem8AgjNfxIrRrp4imp6eC2PocCgn7mU9aSVHEo2GC41/ATLYSBWcgjZWsKmw0zP5eDDsWodHZX5KtrTYpa8US9vMl/2J2nOU2zChDzjuVjBrGfp0NQv07jDxxisDdMZZF9KiowVBxIPfrU4jZAQsv76wtHkNNtbd0b2ys9MC9t7OLC//OSu3YINi2zJCrkh9PdSGjk08hrr1SVwhEE5btIJErUu7NjxbkBlGFNIAejEtdm/0yVMLahUAUM8m3RmwGrDnG1mGYxIHipmOOU+HiesrWnCBBGjPOYgM+vof8l1PUl6fziEPA8cE6rk0MXX0tBRPCeLi2MnQQNyRJtrCBHZkApCbw0WHo6V71lrDmHS1NrD2AEVxURWrjFVrjc8Yr/TjzEGumNcOs7SDXWLNiDRPlkTnwHlGSIAzckYUxRmuHb6gFBWz1rp3j1rQTooEFpR+Ra8VrKoNPxkUb4uXvnBG+0Zf/QZ+/evFsd673PLs5WyeLyvLb1IzGkig/jat7bt+a/6iv3+u2+wjZ2ih7cQxNs0/efMtQZxTL4ujnOYGCIMUOeIEej+M4xJ6mMhYFyVNLpErRZpg4R0WNaapvmMNfRzJ+WA5mlnm0RWCDSmrDfqfp6tdThBakzYAv898kVTRnAAFfPscHjuqCYQvPwc6ZWLILHqqxJtvdbflFxSl2s6nFlmT+N8/6xbijak8ktzhLxP3ecjByTnpbqOZHz42tKI44xoFVkTVdXZk6JuOTIZY311GRkLhlKkzXtxMF1CQ/rS3+U46pqTalYBPaRD02fWHl3HqSMLNVDyxfvFPKsHHtbvGWQaO62YSRJXXSS22zvqhA6HWf+RkcZRy9HUsk6zzAaijygdE8fW5+l6ODel88pyMC5SBB9WGasCD0Gyu0ky0EJSpqUama5jkM5Lz10Zj84znBjXN1sONFShdlRlrroXfaCRwUbAdhn5zfL/WKR5/0zHNDsiQ9rMjFDnNzn1JNt7zLGxVs47sCiBanjXFMfpMnOKolVSxfVzN18WsC2lhPwzPnnNlr3zypm97jMbdulNU+vJEiFvpKwr60pkRE3p5I9eJmVOOIN2afxOXLdQ1456SrLtNt3QE+XTewPLjnrDJElGZFIxmoZ9CUkBY4NTThaehnUO04nzKVC1pQhAXU/BmEbYq0axljDePA0EYw6479QXY3gn62hamrB3krSyEhI/Zc/hhObZsE6mxblhxEwMQcZ7MB6eDN5fg96dYD/On4mzCNNGUEv2g/JBHneFPQAhiazNDSVEji0MJkEo5A4aa6lxQh0H5lsUhfHBxkZvK6Rccfb+aTgdhFZjWF/S+VsJqzZtab5NogPfbzxs9tOvucJ+8C+vsFd88JbiXNrsR8u9wBP++0/cZM99xRX2Q391pX3hm7smEjVQXesQLyrlhQ24yFEa86wzldrmyWvT0pRO0A6pxDMnnjn3HZ27CPzLBi3DMdNO9K0duSdjovC4jKLZydcIweiq2nHse1uOEVp1J27o8ZFBsS6BaXMEB/1PMAOB+SaM46DW59ldm/ZZsKLQHw0NJWANOniiU5O03yu5LiPIznPGJk6152XIBUfJyNQZU29wEyrSApbxruWL5Bx4j2Y06d9yCEr75AjkWHRjaxFVvb8+F/1ON7zOuPjqZ/vkRtRmFcwnOmzdr6Fjy1jWytZ1LUcyNUf3NUlxep7F+ejnqQw8P8c46Iz0w0Bk1NImPKJj9rOm8vw0ClvOQ1GQjLxgy1rtXNmKlBSajFCkGt4bd9hSCTUqs9GwPgUbeq7zynEJw26rWpECB/VLKbORkkjP0CneuEzrzUiuy+uKIXK5DiP7ssLCG1X3Q+czTmc0TIgjjrFv3daOOb6/xvMPzEOcs0QKKUUkVQauZ5jMubgB46WzmW0vNe+oD7mx+o/r3EFdt0hmXZt08wyu6IWKoXNdyYwgQ0TW1OR49UX5vK7UtbjW8/bu9M9O0CqqDlGzQbIH2GpR6LTAjMPsA9tNODwi/jYFUf21AedkhrmVNckgqCQUP8isvWcymvVZliDYCCD9ffQObuczjnOkUTfX6CizY6CX3QxKIW+M89nwM1nTMK8rgheCO3quCPS8boIIbWT79HBB5ABqkwK5O5tBBlVDdzYMyYt1RJ8g5AacJrU2alUwDLE/MPxgDRKsMWQR8oPfA41cUUBzt9PW8nkURl55RovS5GpdoZDjpJLC3S6S2u3/XXvbjn326oPxnoE/65il1JS5Stzjj1x2u33xmtvj3zgiZUlNsj7D+YUUUaj8FecUskijyOLuemAaezGYbn7+kED4ojk29iMMysWi3yurqS85y1qPdCe5ZhySpbOQXdPYG9WcpEgetg54+JZbbE62xqRg4F4gXH82O34egxxdj2oHckmICMSxsn4vZxSlg0RzpGupwGxR2Z36Z9bpWOWctC+tHIyMkIxLzZyTMYiBcDn7R45Di1u1mtppFPuzVMxWpiQnJCchiEpGVb+ro3Nlb3IoNWVbN0GORu8VNKkoUXUtOYKa6FFnczquGo3l+OrMj3NhYfT4bd78uvltJqJIlVkpKx0lddLyntQZl+ZcNWnQ2dgat07koTEcghTlNGtJqGHCeMMKKpvn+zZTOXuQZJU6M1VyoWciNQEZsn6MeTpLZUUB36XzhQTRN78KhlosWXmWjrxN+I5XhLp5an+pDtXkeUgBoql+p4UuhYnop1jxqO/kU/pr4f/zj+lsxbH7gfqYwkEkMSGcUhIh2rxynMswG2HlSJoUYFVdQllXDvvrnRqvL0Wbwvrjc7j+efY1xUyoAkkfM9q18yZ3lBlEOd5B16QGdTIlhE/JisIpsAcGgz7g2U3WHvdvK9dCk9k3G36cMOxKOiOt64C1cg8FU4tGV2rHuS/5vLXxclZXGEOzMhAujVGbZBAgH7I61MNn2ULCvCQgvtgHUJk5N5h6rL9Ue2BMetQ+ybq0F4EQ3RDigKGDI2wbBfeuaKzxPth91LKoH9KnFLCff3abjq7J5tygwMMsrPY0tuuiExvbMyRvWa6hQlzItgbZpqb0n0UTLPHMfKd6Rm02x1o4mVAo73Awg752tNDEZJ5Vjr9YOiXrs67C01zYSatTu8/0m5EFWkKmQGn0RZI5MgCQ+tso4e5JXVNKZzNLh4C9Wc1ARUiDDH8QSPz3sO5qAtKqZ0EQS1ah23utyegBY7/55/I7GJmQR6CwI1KNUkTA59iBtImSJlrLvS+BYNHKY09y/k0Z7in7E7ejCtL5apXVHM3GU51IRktZldhuiu5rllbdv8RXXa+pMyFBT3JmNVyo49TZVA3VKQOqyRI7VfReO0kZfBnfuiYlZ6msT85LEb+cTK2eLscn+Gsri7SB4SY0JgMcDq2K/OfJHlPRP25+s5xqW5MopJ4hanaXWZ1VRlkZUk21l9MLR5Z1rYDEwPsT9+U9pNeijGvAngyXYL/6OQpaU5QVE2YHS8VtjbI4gv6fTo0FuJoGUufXTwnO3rijob9wTuVBlZHjMMfy/fE8WB+5JjRninoHm2tlda1oICoI2jlsT71gu9zrNus+C7HkZtb3MsW8pqSN7xxaShW1hVkWjqZtl/Oc+sm4acjUo9STLLpssG2XhAqgI8/EPI607zptI3pvaDQF9iIj4d+DJLtM8h7RpLqWmQB0cVh0kz3L6bqLhHrWUT6oesRGGWjiCKZ5n1lPaiFQE6Qaq6P+lGtgx9+3gSo1DoJ1klnXtgccESgA2yWUD8SHg6T5d557gl4U+qMiyKXnCAeDgcUIYjswnsVAhKr4IFmxGMY2VaaRxdlN9QeYdqg7BFswHRn1JY6HgHKMh8dWQb4A8mMvVkNMV3KEB+e7d3Vk/88DVzzLLg4h1l0GHGXc+TCV64tcUWnGtZS7yt/Bv5ttlIwqNRcjO9KgSMuan8O4jaYaAxq2OfOtKf9usgY5HDT2uAuaYN0N0k40Cde1Ciy5DtYBskqQQOp6jeqwqQLBvTiUSu7IW0Xwlw4rguSEesOmZ4ZO68VOqk4Yen30NhKYs6Y8Y9u6+uroY+Jq6TUbwNRLaj72pMtgU1Ci1tQg61zR8pKN/XKOqk8LyeGu7EMqySooT9CVYC9lNTLwMiqq2dQEAYy62HpyXn1fSxpVRS0yQILVVA+S81H0r2OJQcdX3QOlTaljie1XZzh19qPamY4pR6Yx7oK/9Pf6fMDulYHJMclx6fhStlDGpqxnNe+LWCmLvNeCsmpHKUhUBl4RKxsljlNlhaKIQpLQ0DfdSy2MEHLMlF8OeFF9bpPviawqf57kdQwqYktNce+yhsYXDmM34ck6Y41zsJJJU+M4mJtE9SgZQwlOhskW+SODlp0q2wobNi8ORSO8WeBrVc/b6Fjf1CurfSCjtcm13+3Ajj34pI3Impo22XJ8HirgHA3YbpCTRXEq8ZqkkffZ0bTUjPhwnBYMvNDXy7EZg1R+kKNS/RSliczWMFKQJx66dq3d/6RZ1GRwMoPMFqi30Azalk8tULKVSJ81sAfJoqzhRaSZxiB0AQnqcAwKmHI/KOiL1ye0oiF/UZOqj5NByipMtnRwZG2jjHRHgqCB8Gik5bjsn9yvsABxWEB9K7l/UN1v1baBQ4MaT1TtNYsYFc+580zJmrJ+tZNDEfkMam/UW2L0AusB5+URfOj5eY2D0TKx9siUbropFNRR0Ka512ypZDJMJhjr7f5nje17LmQab3Adi4PxjEiOJ/qZ2sz0M6tZklma+HtHjSqlhHA4Ba6TMytTa3WMXgw2M6lwdk2RLRr5OTzpjE273/TqoEpPqyyHtSvImhHxKICj7D307+gPLvJ1goNl7yaVCkQE8oPlAE8RkPqgclC1aXD/2ftea4oeJxiC2HAmApx7bhGTxf570ABRYsZ6zM9RhqZ7rHqTakdNZWPkhFRTX60c1K58jRhhgqo0g0bRuBhwgvrq3hoVXEVWEMxX12qOHv5X10Bqw67sR9mO6MIy9oLQ9FpFjPocwTeaSyRHCwFDf9ONgP5aU9d17HoR1yxFkR9UcxI1s5fuqTK3WWVgrYoiwpCnTl0siKpmUmeYteMVvXM3HftuNtjWDjKgk8w6e2JJRX6gpiAYkIcv9e9Qh85sShI+ugd99pf3ps1MVhngVqqFx3UOCm1VGadqecrEav0uqY2rYbgfh57XupvnEU5afWkJ34kpKMffpfMPurpDeGsnntQHE3Lq+uLfjz9nxx59Dp9d1JDjoGja4XCA7oBqMCSp/BAOJhxXW/7eyGkxwmJ3mU3tbqfcUM5ZEhWdY6h+hWBnW+oVDznhoD3q5ENljadj7qFJng+ZUhi/shbFxOrXFms9azxtOl6twSaNUhipWTkH1gYz0CKAWWQj86LoH7IPRpnpYNA1GRmFBqC66HMyRCzKiALLnrKYoySiUU7eDR/MfsaREPThnPwayOSCQUZ26AYN0kJAg9SsqGWwHvzzNhlE58dfYYQF4y0wbBg+epqwPWTGOCeyfbQacTwEt6whoGMUuVn33DPPwlZPO83q1oueNJOB61MubuyJl3g24Y4BWK8brIbjKAFEBnr0HGVT7SLJLM2iainILKhXfIj3W5AcgjhROadFzn3CAbbdTrDwPEaxRxx7hz3ubsOimoFSRT5vrfvVHKmOmgVqHdwDxmAwiZasUIQf9XD2SUGWDkZp7Pup17knavRHWVmbcBzTbwfnnWeb7CWanYEUEcjlc+lTxH45tLfmz2Cido78/LABSW1fZHYmG8fv1iRdlDY+gnjV59PeRNLAgWTolAUJ91NxH+OuTKj2tEqVawinHgDYQ1b5Gt28vhiXr62hJDkJLSg5wp4n3zRH1J5kyFXXqh2enJCuR1mNnIscq87Bvs1D07UEbJQ3VfqBYtLpq49MZRDb0hvTZQH4v5A40ogrY9Xm0TXOlSUkrKkHL4q6HKSO3SX01eVndunM6ucQmnezpZqExFmB23BSqi+JgBDPRlh20/RNs3G/B0XLjfdL2JX37VTNfoPcZJG5VfIoSvl1HKL+9eylkyaf5Io0UHCSfTnhYHMBkykc47UEMfeUKWmgpYIGfv/IE2+zJ5+7YcetwAYaxUyedpCK+eO1hHZSQ82hvma0Un6el2J4M1otBes431nUHWJ8AO9rMyLs6P+ZlBKFZ2JAToPW4dnB3J557kF73NnboYoA221vwhajxNojO6C2Qg0l6wmTvI6VXK88z2H2Pclh6z5H06WCs6wv8ix4RtGnaDGyurxOmS3vy5qWhF/5+2b2KlE76rI2uwZkBuSWzwGIDzpz1MhYp+5gdlPrDhYeMkax5kE0UJ2A+QUFHTiSHj2CVj8GKhV7eUZ+bnsYksgYBoIT/z36k1zrHodpd1KlHLr4tjuycM5o5uHUuM9INl1zzX+pTyuIVjApW/DEuw3sR+5jdvJ+R4lsmhn1ILPfZOzF89cMpbn1ozKStYcYq7VlUm2sFfWqNWU94IiaHHFBYBLrxNfV3nbLfvI+c3vWBdNobEUVPVQTHKpTAGpNRUoDDUG9wx07mebijDMKPJc1aDWby27Jhi3SbtTi2zL+vQ1N+yxRgDLHbFCyaaB3hggyODDnXC1oA/C/M8xwNzPTOnkQXNg3xVuhtxNgq7dKyA52J5p+0zGKKDGU8a2L1DUUx/eInDKDUUYCbVVd/nJaNZtORlgnK4PO1ySLsTEioWLu1fCbIneNW+jlcXKT6NiC3Y6OGvQg6oywfmCqUSmjkxNWvUyfq/MX1FHT3eWoiWokUBqR7XTaG2pNfQ0KZz40ZSK72fAq56f7Eql2Zdh7WK9i2Oj5BDafDlmbblQ5y55hOC8stFEytSIireo8URsg9c8hkXLeek4ag8C1SsRRqgvR84DjTphN2Whkbcp6mhzylxGU2H/WLOcqbafC/TCznp2EiHgf6X4kORjwRZlJw8/7zmTU9KTUKyo4Y1ZR8cWa5FwfcurM7rn/m/aVQ2v2tYNju/7Qrt3Zrdr23D+PhlorhigiXTKeyI78fKAQzzf9OZaO9iZhvuhet2TIjdrIJBB3XWn9uzuksw8s7Pz1LTtrfcf2rU3C8cV6JQPlOeGg9fz8HPeTGbBm20JT5x7gvriPFJ5n2Yg8rDL8RdYFIQzMm+aIDDzWVAY2saY5njuQGBjIHuKzczJ0jChXP9WgEF6mSU6JvY1DEioCisBns/95ztvFCUejNIET2Qy9L9wloORs3ERtHFr4uhtWmkgxtFOIE/yNYXUMoaNeBkRHgzsOFWiPz/NzvQ0JJjfQkxyxjhbfhhtzRocw+hsWWZxX3tOamDSpSCCyIw87b9UefkFrn71uZpfdOLXr7lzYrVudbUzHDit2Iazasi4KfmwlBe7K6IohIysmQTtHDSIyrcGkjGzvkpXpgc/KAPq9Z6AenJy/ctjOPnlsd29udQjX1+XxJ9nIzx8poJj06tfBnKQu+85EdgBawz227qBXIXewdmgmZpAgk2nZHwTG/gzYwwH3pt3tSQ5CmnLvCTJUpqLasMhhkyy3TJPaP3Noj+r7ZtbtdlgjKHXMSrAmRRA5t/re17T2RZYDuoTx41z5/MlyMvpQRldQnfBKZTH6m4wwJ804BTHW6ixIYoI6uJpY6/f3RqstHeV6nxaRYETBaNOq1qAsR06qJlyw6dQMqxsyq9LLmrbOlzIVvUbXUEN6+pKxQ7lcjb5yaqJ51857ksVAZVk9zpvHj/4S0uW2PaLfSs5Pzn6cjjVUG7qlBJQCAVGyBWVaRiih0jtaKniLOq7sSuri4aTNeomQ6K3KqJy/A9mxrDT2XEwg9VIpIpeiwLRyQhH1ZNQ3Tf26Jp1nT0PP+yoa/DidZjjiJH/0bL88xiKhwLgPGHHqFnncGmJVgLGaatqi+fM7ntXF46nd7dhpyAHFOY/KKOgYL8G9AprkGSNgCsYOxRkYhfuNo/C1xu+AzPgdenAHvEgMY2ySTjzWQjrLxWIJMw7S2IDPQ+9mpDqw3FqyPO9gnVGEXpQZR9HDl0EBtahBNmpv+DEO+HVxflzXXj9XBmhOs2jO/dhI2FWQcF+D83MD4gvoqClakxp1Hs8GJ+f3nPEWt7rxG+c9Qg5ol8ZXnIKfJ2KxQYaACk40DeSUTgoHyvHQ59tx48v5b3NNIkYwg+qqq8JJMbq78aI7AqPo2zGFlvuLsd7w3+85/3xbkB3dcEMoXQ/995vMLcKhogCByCxz1/z/g16o33fRRX0wpwCrhu61RlWeuPiExu5+UjXoLvcYgURtg9rcs7Ib8/nOkg1LRoEDJaujB4nhhpA7/GfkkZiNZdfeaIs9Xg/de5yt+j2BsDH3bGTk10jv1pxRF1//egzOZEI2zp1nPvd7u8oEWrQTHUZr/don7iga6N05S2meTa2q28Raypper++Z66K32xmYKngdZ4Oz7JkYdUHA4vVph3dFnMLJJMNYgXiTEHJQ9ROxIOgMHc7MjCOxyN8PktzRk3RK9rSE5ERsUCOp4Lla/04PUlF83ctUQ321cdKG1OccnbmIRSVnp/lQMoKCojZTi003Vp/BV01okAEXKUKOqc7gjna2YorJcCp7qp2vsjo5gdppyxjUjixgtWS0zWfLTn6M0gaYfx63vh4555DzyQxip5Lnqan6i6wV8LNkkzQHRU20TV67VMGVIUfNBtyfqCiL4cG2zOeqLE9sppGus4IERJwIyfuE+eLeysllDauP7G05Q0aRWHzeYnHEM4t1kvGp5i7FhhoOe1kgNsGeU08xRg9wHgpa5Iz0bGWc6sgtrj3vxyQbN6VBGJ9J1gADKiM6seNC4gcnrxEx3CcxSrOVAvp2HaHLEek5q4bapsICAco4YdR2uGx7iGyYGUcZkW7mflDwQ9CwnrVS1eagGI8zcCI42skeozbvO/WrTvWshHJXNN6cc5uUzDMYq2RXWW+O4IK1SIBCPxpOkppO1ggQbV0k5X2c4rPBbvWfN7LhlWh4E2V07jHPADiKe5I6eECyOEayZWpcDEic5Uh2VKeZ90Q9i2s5RLYHQYNr8/MiICCD3k5l8WB7MQU4a8U72UNX16VlA/i+Vkk06XeyfUKFVF4AGanthV4b+8qvd0zdjMDQnQeqCdFrx1RraPBcH8QCvw9k1gwAZKQE12DuZDp/TUCe55wTjnaCQ2TSAOPPCRwY6+FBQtw7/3kHpQY/v4P0O/n7mO5M6WCQ5y14diXRBp2n1r8mToeNre7PMO1bW9nMsCnp4MToFMNOunjhqCuSRY+UQVSh5lhNowg4PyFI2VrLQDRsqSI7KTnE9NJcqILJVLeR4VCULyhOzZN8ydhqUdQFaR1fD1MOp6ZoH8EA65ZiqXW0U49TqB2mnIcco4xAGPeK9q1amBanjllTS6WkUDuPSVKTN5M2K/ZdT2BQqrwoIqhdPvCBCnqDMsJcfUUymPrsPjPEGWbTmiSCdE21A5vkgqup5D0zbrrs+JYz1Gt2lcG0bR+AhGJ4Zq5aKE0VWCjbUNbZ38sssArS7M81cfE453zOkyShbGVNQs6uyTqThGNn6fxUpJeEjmSVcI7HnXWWwwvrywWdGbFUO3RvtYbqzFmOrIeeM1MBr2ckuXpzhskMQ9MNJ9FmN304Zwr1/neumehyP4balgLBoS9XfdXtDXHfsg9OCAAZ4pZ/59702XpGnFwzKIUifQzHIGHSXg3Av3Yr5yWoT4XoPInC4EvHJyq55dqAjWcKOtkTfs1yUpO8/+NsNQBimzSlQM/9AeKLNgUCIncKEbBiiBhEiDHD0SPESh2L63ZjG0GIO5IpIzz4HYK2nkVE9obTxcjzWdRW6KUBSXEDPsnzoi7TOcSFZBGtAjE+HMTHjXbMEMp9CNVZ18h9liq+9pzgPdm4WZVFaP0L1ZAN0NpRIBXHwzHgVHHG3HPOmyyQZ+jnzUDEsJN+rgPPrsKuUitKWjxOq/XfExDgePg5er/c8UKMQCVkcO65tsLMKYIRlBr8mnkN2SQQ4EoiLILzY9hmZjb9VIas77ZpA4JBl2trN0lGQlEiUErnEbBswnDSz1zkGugqJzNsl7P6ojcxz2GWgfBO1pmCldtVPau2JID1kkSqV3DjNfpCenZ8iRUkw1X3NIk8UWdDetDKqHZSmkRftZHV5tRDFiyjbEVRpxaKIlH+Rie8pHnkDOVM5GBrRqAMtTKzOvrfqYgCcnyCJDU+Q8ZPn6/z1DX0ZIrqfsgozhL2qsUUde+FfzcJq3RVdkU9T4VC1czqh7lIyHCUxlIQntL2vn8rsz0N0ZOhlnET1KiipRg7uh5lX3r++upykYUDyWe+o/rZYtErNCwqJ21WSVBlcKBsS0zAiOjH4x66s7xnQGDANl0VlemL12lOmByCnp0+U9lmLSe1yDpZrKPMHML4JrwY50YwkOoEo4QGe0efa1OGrVYoURYu1qkiVp2PGhFDWTxrQWEEIYtkPaDXH0wWVFC/M/jQ+omJtFbYdtR9pimfRZZiCbkAz8W+zfpFwNHUhDhuBk4cn/4qnA3nQf8McGEcC5gq9xc8TDIZyRBBnIAxiGMH4kQ5vcnsG/HWeerXoWvHsQ87FEhdqEtaOD+PgPLJYvz5zpHEwWn455M98VkbXDcOFYdHXw1rjr1AVuPXR62JabzMdtpNUgTPCp292DMQuVJxXIGCDLD2q9aT9m5t12Qr1GaigD5KAzwnnDTPjQzJr6chG/OfmXuEg0UxHOgWp8qocxhw1I2YwUTdaMWzpcZ/Hy0c7rQ6JILIqPznsV8PUDHqDK2/PrQLcXJ+bSusXfaYv56RKFp7nOtGyrnJXqwm5DeuUKEegsvaYk+SaNtlHyhBftaj5ayGWZoYZEYVe7ut+lC13/P/rfQX2i9BIMvXhlJM2r22plErmlMmpEhem6rOPJTisgl4fWyG+XIchpQVRslnl2E42oDIaItUIYfWR5bJsKoXhzI2ji0qNz/jpGpoTE5Hs6b4zPVkQsmY6BrlvGTotED7CLSCKJVZBVU7H4YMneplw0xvtZijUVnpv5xet+z7keOX4+sVJQR1+jE3UjBR91NZTJvnxs9baYyahAJFLBBbC4exkoVS3j/JtoCdzA7FzplnNCPoZ1itE8trlRQJ9wdM25KQoAGDcU5VYCG2YNRush6kbIafN7NoG2SMjOZ3km4uR4yR23f2WUeQXmT8jx63IhKMHE/NopRTUpN1BDxAUmRK9GRwXllzYxYSTgNjuI4xBOrzdaS1LZaiAgApgmhP7UnYqa9Bptq+gjGubZ8bq5U0dtz/qJemYYiab+7L6FfifTluIIKmrnT976Sck9h2i7xn0kejcXY7x7sEm05NmH4tm6nUEDA1gQ5wZd5HmmgtURGM/uHsHQqxWb8nQcCBFo4jAVokyILOjGH38zzMQD/WoP+M4kM8D4IHX89AjtRSNumb4fnB7GNwHe8FCnSjG84B7Tj/fWSkGHY/hwhAqTch6Mq9oC7HubEfcfL0O0HW8IxjDNQNDMvgQMgFaaxls2q4V+vq2wXDcloKTKWl2ds6ggSyHVQtgEEdZiOQQT4JBxv1OHcqKKcjXIvjQeqHcfNrDt+FerpDfOZ1plDb9p+HiKayTv06VnC27EN3YDinQBs8izLYiOwf9Ov89WpwDjZs2k/ZLs1zkh0M2zUeLxXqEx5mvWFP6qwrkJokuUhcWghWn0S0bR8wBzqV9eS4p23bv0ds27AT81TIyT0UUF5I2OcJqRdJRqMuGqqIzs/a5BKOpMhWQycy2OKqqwG3VprQ35TtyNjqXPSwOSfBhTqfesS5ogHgDjkBkQnqvitlB4owZbxqLUB9hgy9IgodR/dGjrfOELVwY5Hnw480N6NGQTQBT6RBVFRWk0N0b/T5qoHgVAUbjBLuW8v5OGpKHmT6vJUQCvdtNyniopL30aBgtjSqcjy6H/VmVfqtc97N7Gg7Nc0OJvHkcM5J0lc4njyG2EFxPKjG1DwyC+K8Kd7LkWqgoVUpP197UY6eLJuzFTCtZ22nZmzWGYqgO127HIq+0Kbj3+rHCicNWw0DQnAxHC4jyeFyhHWdmdXnpMha90rrSxC2SDQ653qtzRI6305mlOqR0cQ4GvX3V5lXm5DsJEVf1Sw5yPOKviecKsrVyhBGRZ28y+xvkms3HAmEkLYw/ICVMJAh1UNgB2QpZIG1l0FpUOCp8fAc3VnM0kkNyIgyYGTyLBBejGxhTLob4sP+t32eATQ5voLmTXp1uM5VSAHZyIvDgnzCNQVRgnVDLYteJ9Yy86AYE4F9gW7PCBr/DOo8PC+GIjK2nC+GG0LR1jMhEw5YM9eJYHLtTe1Lwe91rVmZbx/0NIXp2JLtuBOJ2hiOiuyQz/Bzp6Ea4VkcKXDxBFo9TpjjMUaduh9q6fyMWgvDEP3cOS71qtnVV5dgktqaOzZsERAf1xfyT+edF8HUMOFwrfuwm1miUe8i9xl5Iolmh7OqMvz4u19DBJjtUhlomEF4JBhkfW3bw3I7icAMh8sx6wSr61mb5RwYvbKd9j8YyLlvulzPfR9TGIqM5LRhFB0o4pRD0eaWIoMe2KxiVdTZh7IWwSqKYuvUWc5FxqI2Ivqu5kHBXjUxQt6/hvFkHHT8eUUAwKGKmafX1Blb3dOlSLer8NCjC591Q3BkMkmzVm9RFOsp3grGS5aVjFrtmKImkJ+hLv5BXhNfylaUSYiCXpNSdB5xn9M5xCYblCZqLYDN1MzS5MneSY2OpKDX2ncyxtOEMjneamZI65UKunqVNLNJQYUkVsLIV86nnz7Lvch7ojw7FiubKmWVRGxRpi1IV5Csng0Go24l6CGKZlkIDxWSJGpE1G4liwhZm3Se/F01syjOpwHT/ahZkcqctXaVWWlv6NnoPAQF61pEggg5JlifCXPUslEx7DEdJHDfWGs2HR2fPM+AkvNeZFa+kKPGGSUsA8tvKxW6w+n674IIQ1aVDgb4VMMHQ/Haj8ewQozLFqMrMhiN+mAqkfOZzI2iVwkIEQZfTBZ2Q0fmQNY24h4irwVzD8dD9unH2kBlgMCKz72lKHqjj7dDHYn7i8I1xAHWBZI5MN9Yu/Q7+c84roEb/l309HDA9E+xJsjkOD8g7swYIRYAsSkrUiChZ6OSQG2j+l6+qpbZVEgIDgeh00nS8mPSrp87oz+Q85kB9aHWzTWxXnGgns1Fm4C/btWviYwRxl1IMgH9XXddnDfNrQ1OiDXln7GHCbPs9QsuCBgQ9Q3YgUJFrILoUOIng+oJSImayO5LeuxoEplgPGDBWZYJashTBCm1Gej9w3yf7ivnMs/1KzhV7499n/ezVaG/pobrZxlRGRQV+hWl1oSFo6M/OSLBU3qw9cOWQZZzkJHTa2oHJWch6KbOVmSMezbccKlYURed+xtQZX4yvlvV+HC+BNPVJIk6QtXrQs0hz387C9e7orE3y0F9w8r4iLmi89DD0cOMv2cEEc6sWTYVK2UeZhZFZqSu61Gm3DRuigkoodQm6xMQHNYEQZKFpeHeUeNmnkuMXs76S5fR16r6z5IBqcGFNY1/KzMhQXg4mElmkFJ7kOxQK+zZbHmeVth4GNYYx5CMPI6z6nAHsjx67jIOChLqeqEgXTkeQWn9++bz3jkDzeGQ0P1azQmxGG7uVdDrMZAgA1UvV83I1PXvyYhQSICQBSEP2h9aXzJoes7a3IK4e5IMgUJeH46gzf0mtehBRqaxf+SUh6VxNtaTlSnBQQQiUGFN+us2s5GT6xoIqcDhZsa2lnWm2O9AlwmhUy+ZJwEBdhwsuXC61KYdsoqomGmrMMW4JziFnHAbvUY5awzjueGGNJyvf9ZuOpoRTbY01mI3/GfqNQQNiJpS4Of8trhukAVYbO7k9kHd96wLqDWEXKm7UCNHPof6DffAYbFtHBj1FTfujJ5HDw5iBg5jkZp+KmMoEFeAqoBjTwopy0YpCNc6bsnygO64r9SVoNtzLvQgpROBeTfDUWE/HH7j3NEJBMYjuMCJtbDtyEZ4HTU62groW+JYjFr3jCrqgn5cKOaBdvB+4E/g1aokEQzSQWkT6NdNlhUUSPY2vFv2dWqgn9jBug+C37Xe1XO4nRB87L38XAVUskHak6o9aX4TwdU0fU2rzaysQhtbcIRYTjXOqrRP7Kd46BlFyMDWkAULTE5N8FJd3xFEpLqQakh1JKrivhyUsp+aOaOIRQ5NDlXnJ1hHjrf21nUNoIYHa8JGb/xtSYqos7hhPjA9zLYyKpzZdlX/0fnqd3KS84RsBKn1WUdCNDKu0qKT8VSk0rNxsjY3rYgSom+TJbFgpgkXznOTSSJIkZOopJFhZv2Hv0mjroZqRX5RBLWWskRkQzgraWBpjDfneWcOiZuJbcezmc/7XqXIyhPCRaV67ymn9OtS61Ebqn7m9dgTFa95zwGK0fnew4wQaJb9UmRIMfsI8o9H2qFqwXMlAEN/LY09cHFN1KmzHn02XzXUrH/XBk7PXftPE5WDvJPXPk/HFg5MtaN8rZqzVbukJylgeJF8Fosefg3l74SqogfLXxsEC9ZsBlCbWZ8aJfEjoGQ+M4v7QGZbSYAIp5M1qbg3SfrRzKW4Xu51DvlkhMKOOy8+nxoPg/241w0KAvR9DUuzKPp6h2nEzTWNfBEGHSIDs5WifuPG+rA7Gs5/nHTrCNTcgdErxZRdlCFGvl65zhFTcrlnUNXJFNxRDZFF8t8hWwTpIPYF5wVBIksZwHttlRHVGYRq6rIrIrdEcI2N5D74eXR+LYzfwJHjHOnbMv931IawI76eJ+6o9vAczj7bJrAQIU+hUcf5Azf69aIcP4eV5+dOj9fCHdKcjNdft49sEpvoP+9edVXUB1FkmLoD2/JrDseU60n1Yg0ZFHoxHi2ZywrixOSMdVCRuvrssArOhQREMJNB73auUbW6yH6MEoEQlMjfyMKi4deW5ZDmNa959aLOjGonpYynLgrKechQ60uGj/9Vh6kfpi5Cx6ohvNow145S51SzroQDC5qpqZ3yzDWJoK7/KEPTOR3NupEjVZYko1JTRuvjyLnW6b7ugxx8RKzf5l7IaNXHk2GrmYFygPWXYE3VgvT8anhK90DPTcere7L0NzlhnZ/+Xkf6+tJz0b2on2t9jfU163f1/ajXTw091r9TlqrPPbqGpE2ie6Jj1kGLPvvodavASe+ro+Pauelc9JlaG/U9qe9F/XtF1Vpn+nt9bfV16dzqAFHnWL9Orzn687RG6+tWMDOo4JU6+FLkrHP5/3uuR68bnUO9J+o6rdaJrkFfdc0vCuAJASsY1XF1PGWUuj7ttaP7C+tzP/p+10GTnIj+Vl9vvXbq56m1VCvQ6DoUqCo4k62o13n9PLTOhEzV61n7hq/6+nQMQdVHr4HaVtb2ow6M6ntb7+G6Tq+1ouurUZp6Pehz9Nr6NbJtPWzfLPv46nPQseq6fo1u/X+gRuOHSwDbkgAAAABJRU5ErkJggg==";const Pr=({size:e=20,active:n=!1,dark:s=!1})=>t.jsxs("svg",{width:e,height:e,viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[t.jsx("rect",{x:"2",y:"4",width:"16",height:"2",rx:"1",fill:n?s?"#e5e7eb":"#111827":s?"#9ca3af":"#374151"}),t.jsx("rect",{x:"4",y:"9",width:"12",height:"2",rx:"1",fill:n?s?"#e5e7eb":"#111827":"#9ca3af"}),t.jsx("rect",{x:"6",y:"14",width:"8",height:"2",rx:"1",fill:n?s?"#e5e7eb":"#111827":"#9ca3af"})]}),Hs=({checked:e,primaryColor:n="#ef4444",dark:s=!1})=>t.jsx("div",{style:{width:"18px",height:"18px",borderRadius:"4px",border:e?"none":`2px solid ${s?"#4b5563":"#d1d5db"}`,backgroundColor:e?n:"transparent",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,transition:Mt.interactive},children:e&&t.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:t.jsx("path",{d:"M2.5 6L5 8.5L9.5 3.5",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}),Ur=({isOpen:e,onClose:n,onTokenSelect:s,walletAddress:o,supportedChainIds:r,network:a,prefetchedAssets:i,styles:c,dark:l,allowedTokens:u})=>{const[p,f]=d.useState(""),[x,h]=d.useState(null),[g,b]=d.useState(null),[C,y]=d.useState(!1),[w,v]=d.useState(new Set),[k,A]=d.useState([]),S=d.useRef(null),T=d.useContext(m.SpiceFlowProviderContext),N=a||T?.network||"testnet",{dark:I,primaryColor:E,dk:j}=m.useSpiceBrand(c,l),B=I?j.cardBg:"white",U=I?`${E}55`:"#F4A5A5",D=I?"0 4px 12px rgba(0, 0, 0, 0.4)":"0 4px 12px rgba(0, 0, 0, 0.15)",P=I?j.hoverBg:"#E9E9E9",L=I?j.hoverBg:"#f9fafb",O=I?j.textPrimary:"#374151",z=I?j.textPrimary:"#111827",q=I?j.textSecondary:"#9ca3af",_=I?`${E}22`:"#FBDBDB",K=I?`${E}55`:"#F4A5A5",F=d.useMemo(()=>r||T?.supportedChainIds||W.getChainIdsByNetwork(N),[r,T?.supportedChainIds,N]),Y=d.useMemo(()=>F.map(H=>{const ae=m.getChainConfig(H);return ae?{id:H,name:ae.displayName,icon:Nt[H]||Kt}:null}).filter(Boolean),[F]),X=d.useMemo(()=>{const H=new Set,ae=new Set;for(const pe of F){const me=m.getChainConfig(pe);if(me){H.add(me.nativeCurrency?.symbol?.toUpperCase()||"ETH");for(const se of me.supportedTokens||[])H.add(se.symbol.toUpperCase()),ae.add(se.address.toLowerCase())}}return{symbols:H,addresses:ae}},[F]),$=i===void 0,{assets:re,loading:ce}=os({address:$?o:void 0,supportedChains:F,fetchBalances:ss,refreshInterval:e?5e3:0}),ee=i??($?re:[]),Ie=i===null||$&&ce,fe=d.useMemo(()=>{if(!ee)return[];let H=ee.filter(ae=>ae.isNative?!0:X.symbols.has(ae.symbol.toUpperCase())||X.addresses.has(ae.address.toLowerCase()));return u&&u.length>0&&(H=H.filter(ae=>u.includes(ae.symbol.toLowerCase())||ae.isNative&&u.includes("native"))),H},[ee,X,u]);d.useEffect(()=>{if(!fe||fe.length===0){A([]);return}const H=fe.filter(me=>me.balanceUsd===0&&me.balanceFormatted>0).map(me=>me.symbol),ae=Array.from(new Set(H));if(ae.length===0){A(fe);return}let pe=!1;return zs(ae).then(me=>{pe||A(jr(fe,me))}),()=>{pe=!0}},[fe]);const xe=d.useMemo(()=>{let H=k.filter(ae=>ae.balanceUsd>=.01||ae.balanceFormatted>=1e-4||ae.balanceFormatted===0);if(w.size>0&&(H=H.filter(ae=>w.has(ae.chainId))),p.trim()){const ae=p.toLowerCase();H=H.filter(pe=>pe.name.toLowerCase().includes(ae)||pe.symbol.toLowerCase().includes(ae)||pe.address.toLowerCase().includes(ae))}return H.sort((ae,pe)=>{const me=ae.balanceFormatted>0?1:0,se=pe.balanceFormatted>0?1:0;return se!==me?se-me:pe.balanceUsd!==ae.balanceUsd?pe.balanceUsd-ae.balanceUsd:pe.balanceFormatted-ae.balanceFormatted}),H},[k,p,w]),De=H=>`${H.chainId}-${H.address}`;d.useEffect(()=>{const H=document.createElement("link");return H.href="https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@100;200;300;400;500;600;700&display=swap",H.rel="stylesheet",document.head.appendChild(H),()=>{document.head.removeChild(H)}},[]),d.useEffect(()=>{e||(f(""),h(null),y(!1),v(new Set))},[e]),d.useEffect(()=>{if(!C)return;const H=ae=>{S.current&&!S.current.contains(ae.target)&&y(!1)};return document.addEventListener("mousedown",H),()=>document.removeEventListener("mousedown",H)},[C]);const ge=H=>{s(H)},Ae=H=>{v(ae=>{const pe=new Set(ae);return pe.has(H)?pe.delete(H):pe.add(H),pe})},ie=()=>{v(new Set)},ye=w.size===0;return t.jsxs(Xt,{isOpen:e,onClose:n,title:"Select a Token",bannerSrc:Nr,bannerAlt:"Select token banner",styles:c,dark:I,children:[t.jsx("div",{style:{padding:"20px 20px"},children:t.jsx(ts,{value:p,onChange:f,ariaLabel:"Search tokens",placeholder:"Search token name, symbol or address",dark:I,styles:c,endAdornment:t.jsxs("div",{ref:S,style:{position:"relative",flexShrink:0},children:[t.jsx("button",{onClick:()=>y(H=>!H),style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"5px",borderRadius:"3px",backgroundColor:C||!ye?P:"transparent",border:"none",cursor:"pointer",transition:"background-color 0.15s"},children:t.jsx(Pr,{size:20,active:!ye,dark:I})}),C&&t.jsxs("div",{style:{position:"absolute",top:"calc(100% + 8px)",right:0,backgroundColor:B,borderRadius:"8px",border:`1px solid ${U}`,boxShadow:D,padding:"8px",minWidth:"220px",zIndex:100},children:[t.jsxs("button",{onClick:ie,style:{width:"100%",display:"flex",alignItems:"center",gap:"10px",padding:"8px",borderRadius:"6px",backgroundColor:"transparent",border:"none",cursor:"pointer",transition:"background-color 0.15s"},onMouseEnter:H=>H.currentTarget.style.backgroundColor=L,onMouseLeave:H=>H.currentTarget.style.backgroundColor="transparent",children:[t.jsx(Hs,{checked:ye,primaryColor:E,dark:I}),t.jsx("img",{src:Wr,alt:"All Networks",loading:"lazy",decoding:"async",width:20,height:20,style:{width:"20px",height:"20px",borderRadius:"4px",objectFit:"cover"}}),t.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"12px",fontWeight:600,letterSpacing:"0.5px",color:O},children:"ALL NETWORKS"})]}),Y.map(H=>t.jsxs("button",{onClick:()=>Ae(H.id),style:{width:"100%",display:"flex",alignItems:"center",gap:"10px",padding:"8px",borderRadius:"6px",backgroundColor:"transparent",border:"none",cursor:"pointer",transition:"background-color 0.15s"},onMouseEnter:ae=>ae.currentTarget.style.backgroundColor=L,onMouseLeave:ae=>ae.currentTarget.style.backgroundColor="transparent",children:[t.jsx(Hs,{checked:w.has(H.id),primaryColor:E,dark:I}),t.jsx("img",{src:H.icon,alt:H.name,loading:"lazy",decoding:"async",width:20,height:20,style:{width:"20px",height:"20px",borderRadius:"50%"}}),t.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"12px",fontWeight:600,letterSpacing:"0.5px",color:O},children:H.name.toUpperCase()})]},H.id))]})]})})}),t.jsxs("div",{style:{padding:"0 32px 20px",display:"flex",flexDirection:"column",gap:"8px",maxHeight:"400px",overflowY:"auto"},children:[Ie&&t.jsx("div",{style:{padding:"24px 8px",textAlign:"center",fontFamily:'"IBM Plex Mono", monospace',fontSize:"13px",color:q},children:"Loading balances..."}),!Ie&&xe.length===0&&t.jsx("div",{style:{padding:"24px 8px",textAlign:"center",fontFamily:'"IBM Plex Mono", monospace',fontSize:"13px",color:q},children:"No tokens found"}),xe.map(H=>{const ae=De(H),pe=x===ae,me=g===ae,se=m.getChainConfig(H.chainId)?.displayName||`Chain ${H.chainId}`;return t.jsxs("button",{onClick:()=>ge(H),onMouseEnter:()=>b(ae),onMouseLeave:()=>b(null),style:{width:"100%",display:"flex",alignItems:"center",gap:"16px",padding:"8px",borderRadius:"8px",backgroundColor:pe?_:"transparent",border:pe||me?`1px solid ${K}`:"1px solid transparent",cursor:"pointer",transition:Mt.interactive},children:[t.jsx("div",{style:{flexShrink:0},children:t.jsx(is,{symbol:H.symbol,logoURI:H.logoURI,size:40})}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-start",gap:"2px",flex:1,minWidth:0},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px"},children:[t.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"15px",fontWeight:500,letterSpacing:"0.4px",color:z,textAlign:"left"},children:H.name}),t.jsx("img",{src:Os,alt:"","aria-hidden":"true",loading:"lazy",decoding:"async",width:14,height:14,style:{width:"14px",height:"14px"}})]}),t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[Nt[H.chainId]&&t.jsx("img",{src:Nt[H.chainId],alt:"",loading:"lazy",decoding:"async",width:14,height:14,style:{width:"14px",height:"14px",borderRadius:"50%"}}),t.jsxs("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"12px",fontWeight:400,color:q,textAlign:"left"},children:[H.symbol," \xB7 ",se]})]})]}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-end",gap:"2px",flexShrink:0},children:[H.balanceUsd>0&&t.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"16px",fontWeight:600,color:z},children:hn(H.balanceUsd)}),t.jsxs("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"12px",fontWeight:400,color:q},children:[an(H.balanceFormatted)," ",H.symbol]})]})]},ae)})]})]})};var zr="data:image/png;base64,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";const Qs=e=>{const n=(e.id||"").toLowerCase(),s=(e.name||"").toLowerCase();return n.startsWith("io.privy.wallet")||s.includes("privy wallet")},Lr=({dark:e,dk:n,primaryColor:s,disabled:o,onError:r})=>{const[a,i]=d.useState(!1),{connectWallet:c}=At.useConnectWallet({onSuccess:()=>{i(!1)},onError:l=>{i(!1),r(m.sanitizeError(l,"Failed to connect wallet."))}});return t.jsxs("button",{onClick:()=>{o||a||(i(!0),c({walletChainType:"ethereum-only"}))},disabled:o||a,style:{width:"100%",display:"flex",alignItems:"center",gap:"14px",padding:"10px",borderRadius:"8px",backgroundColor:a?e?n.hoverBg:"#f3f4f6":"transparent",border:`2px solid ${e?`${s}33`:`${s}55`}`,cursor:o||a?"not-allowed":"pointer",opacity:o?.6:1,transition:Mt.interactive},children:[t.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:e?n.cardBg:"#f3f4f6"},children:t.jsx("img",{src:In.metamask,alt:"Browser wallet",style:{width:"26px",height:"26px",objectFit:"contain"}})}),t.jsx("span",{className:"ibm-plex-mono",style:{fontSize:"17px",fontWeight:500,letterSpacing:"0.4px",color:n.textPrimary,flex:1,textAlign:"left",fontFamily:'"IBM Plex Mono", monospace'},children:a?"Opening wallet picker...":"MetaMask / Browser Wallet"})]})},Or=({isOpen:e,onClose:n,onWalletSelect:s,onContinue:o,requiredChainId:r,styles:a})=>{const{dark:i,primaryColor:c,dk:l,theme:u}=m.useSpiceBrand(a),p=d.useContext(m.SpiceFlowProviderContext),[f,x]=d.useState(null),[h,g]=d.useState(!1),[b,C]=d.useState(null),[y,w]=d.useState(!1),[v,k]=d.useState(null),[A,S]=d.useState("idle"),[T,N]=d.useState(null),[I,E]=d.useState(!1),[j,B]=d.useState(!1);d.useEffect(()=>{e||(C(null),w(!1),g(!1),k(null),E(!1))},[e]);const{address:U,chain:D,connector:P,isConnected:L}=ft.useAccount(),O=U,z=L&&!!O,{connectors:q,connect:_}=ft.useConnect(),{disconnect:K}=ft.useDisconnect(),{switchChainAsync:F}=ft.useSwitchChain(),{reconnect:Y}=ft.useReconnect(),X=d.useRef(new Map),$=d.useRef(!1),re=W.getChainIdsByNetwork(p?.network||"testnet");d.useEffect(()=>{e&&!z&&!$.current&&Y()},[e,z,Y]),d.useEffect(()=>{e||($.current=!1)},[e]);const ce=d.useCallback(async R=>{if(X.current.has(R)){const te=X.current.get(R);S(te?"eligible":"ineligible"),E(!te);return}S("checking"),N(null);try{const te=await fetch(`https://portal-api.spicenet.io/api/v1/devnet/eligibility/admin?address=${R}`,{method:"GET",headers:{"Content-Type":"application/json","X-Api-Key":"c1820ce3-48ef-497d-8f17-ea80d0b4a608"}});if(!te.ok)throw new Error(`Eligibility check failed with status ${te.status}`);const Ce=(await te.json())?.isEligible||!1;X.current.set(R,Ce),S(Ce?"eligible":"ineligible"),E(!Ce)}catch(te){console.error("Eligibility check failed:",te),S("error"),N("Could not verify eligibility. Please retry.")}},[]);d.useEffect(()=>{e&&z&&O&&S("eligible")},[e,z,O,ce]);const ee=d.useRef(D);d.useEffect(()=>{ee.current=D},[D]);const Ie=r?m.getChainConfig(r):null,fe=r?Nt[r]||Kt:D?.id&&Nt[D.id]||Kt,xe=Ie?.displayName||D?.name||`Chain ${D?.id||r}`,De=D?.id?Nt[D.id]||Kt:fe,ge=D?.name?D.name:D?.id?`Chain ${D.id}`:"Not detected",Ae=R=>R.type==="announced"||typeof R.ready=="boolean"&&R.ready?!0:R.type==="injected"?typeof window<"u"&&!!window.ethereum:!0,ie=q.filter(R=>{const te=R.name.toLowerCase(),Ce=(R.id||"").toLowerCase();return p?.provider==="privy"&&Qs(R)||["safe"].includes(R.type)?!1:R.type==="walletConnect"?!!R?.options?.projectId:R.type==="announced"?!0:R.type==="injected"||["metamask","rabby","phantom","coinbase","trust","rainbow"].some(Se=>te.includes(Se)||Ce.includes(Se))?Ae(R):!1}),ye=async R=>{if(!(y||h))try{if(w(!0),k(R.uid),C(null),await _({connector:R}),await new Promise(te=>setTimeout(te,500)),s&&s(R.id),r){g(!0);try{if(D?.id!==r){await F({chainId:r});let te=0;const Ce=20;for(;te<Ce;){if(await new Promise(Se=>setTimeout(Se,100)),ee.current?.id===r){C(null);break}te++}ee.current?.id!==r&&C("Please switch to the correct network in your wallet to continue.")}}catch(te){console.error("Chain switch error:",te),te.code===4902||te.name==="ChainNotConfiguredError"?C("This network is not configured in your wallet. Please add it manually to continue."):te.code===4001?C("Network switch cancelled. Please switch manually in your wallet to continue."):C("Unable to switch network. Please switch manually in your wallet to continue.")}finally{g(!1)}}await new Promise(te=>setTimeout(te,800)),O&&S("eligible")}catch(te){console.error("Connection error:",te),m.isUserRejection(te)?C("Connection rejected. Please try again."):C(m.sanitizeError(te,"Failed to connect wallet."))}finally{w(!1),k(null)}},H=R=>{if(R.icon)return R.icon;const te=(R.name||"").toLowerCase();for(const[Ce,Se]of Object.entries(In))if(te.includes(Ce.toLowerCase()))return Se;if(!Qs(R)&&(R.type==="injected"||R.type==="announced")&&typeof window<"u"&&window.ethereum){const Ce=window.ethereum;if(Ce.isMetaMask)return In.metamask;if(Ce.isRabby)return In.rabby;if(Ce.isPhantom)return In.phantom}return null},ae=async R=>{if(!h){g(!0),C(null),B(!1);try{await F({chainId:R});let te=0;const Ce=20;for(;te<Ce;){if(await new Promise(Se=>setTimeout(Se,100)),ee.current?.id===R){C(null);break}te++}ee.current?.id!==R&&C("Unable to switch to the correct network. Please switch manually in your wallet to continue.")}catch(te){console.error("Manual chain switch error:",te),te.code===4902||te.name==="ChainNotConfiguredError"?C("This network is not configured in your wallet. Please add it manually to continue."):te.code===4001?C("Network switch cancelled. Please switch manually in your wallet to continue."):C("Unable to switch network. Please switch manually in your wallet to continue.")}finally{g(!1)}}},pe=async()=>{if(!h){if(!r){B(R=>!R);return}g(!0),C(null);try{await F({chainId:r});let R=0;const te=20;for(;R<te;){if(await new Promise(Ce=>setTimeout(Ce,100)),ee.current?.id===r){C(null);break}R++}ee.current?.id!==r&&C("Unable to switch to the correct network. Please switch manually in your wallet to continue.")}catch(R){console.error("Manual chain switch error:",R),R.code===4902||R.name==="ChainNotConfiguredError"?C("This network is not configured in your wallet. Please add it manually to continue."):R.code===4001?C("Network switch cancelled. Please switch manually in your wallet to continue."):C("Unable to switch network. Please switch manually in your wallet to continue.")}finally{g(!1)}}},me=async()=>{$.current=!0;try{await K()}finally{X.current.clear(),C(null),w(!1),g(!1),k(null),S("idle"),N(null),E(!1),B(!1)}},se=z&&!h&&!y&&A==="eligible"&&(!r||D?.id===r),Fe=z&&!h&&!y&&A==="eligible"&&r&&D?.id!==r;return t.jsxs(Xt,{isOpen:e,onClose:n,title:"Connect Wallet",styles:a,dark:i,bannerSrc:zr,bannerAlt:"Connect wallet banner",children:[r===421614&&!z&&t.jsx("div",{style:{padding:"0 24px",marginTop:"20px"},children:t.jsxs("div",{style:{padding:"12px 16px",backgroundColor:i?l.infoBg:"#EFF6FF",borderRadius:"8px",border:`1px solid ${i?l.infoBorder:"#BFDBFE"}`,display:"flex",alignItems:"center",gap:"10px"},children:[t.jsx("div",{style:{width:"32px",height:"32px",borderRadius:"50%",backgroundColor:i?l.inputBg:"#DBEAFE",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:t.jsx("img",{src:rs,alt:"Rabby",style:{width:"20px",height:"20px",objectFit:"contain"}})}),t.jsxs("div",{style:{flex:1},children:[t.jsx("p",{style:{margin:"0 0 4px 0",color:i?l.infoText:"#1E40AF",fontSize:"13px",fontWeight:600},children:"Recommended Wallet"}),t.jsx("p",{style:{margin:0,color:i?l.infoText:"#1E3A8A",fontSize:"12px",lineHeight:"1.4",opacity:i?.85:1},children:"For Arbitrum Sepolia, we recommend using Rabby wallet instead of MetaMask for the best experience."})]})]})}),t.jsxs("div",{style:{padding:"0 24px 20px",display:"flex",flexDirection:"column",gap:"12px",marginTop:"20px"},children:[b&&t.jsxs("div",{style:{padding:"12px",backgroundColor:l.warningBg,borderRadius:"8px",border:`1px solid ${l.warningBorder}`},children:[t.jsx("p",{style:{margin:"0 0 10px 0",color:l.warningText,fontSize:"14px"},children:b}),t.jsx("button",{onClick:pe,disabled:h,style:{width:"100%",padding:"8px 12px",borderRadius:"6px",border:`1px solid ${i?l.warningBorder:"#fbbf24"}`,backgroundColor:i?l.cardBg:"white",cursor:h?"not-allowed":"pointer",fontWeight:600,fontSize:"13px",color:l.warningText,opacity:h?.6:1},children:h?"Switching...":"Try Switch Again"})]}),h&&t.jsxs("div",{style:{padding:"12px",backgroundColor:i?l.infoBg:"#dbeafe",borderRadius:"8px",display:"flex",alignItems:"center",gap:"10px",marginTop:"20px"},children:[t.jsx(m.Spinner,{size:20,color:i?l.infoText:"#3b82f6"}),t.jsx("p",{style:{margin:0,color:i?l.infoText:"#1e40af",fontSize:"14px"},children:"Switching network..."})]}),z&&A==="checking"&&t.jsx("div",{style:{padding:"12px",backgroundColor:l.warningBg,borderRadius:"8px",border:`1px solid ${l.warningBorder}`},children:t.jsxs("p",{style:{margin:0,color:l.warningText,fontSize:"14px"},children:["Checking eligibility for ",O?.slice(0,6),"..."]})}),z&&A==="error"&&t.jsxs("div",{style:{padding:"12px",backgroundColor:l.errorBg,borderRadius:"8px",border:`1px solid ${i?l.errorBorder:"#fecdd3"}`},children:[t.jsx("p",{style:{margin:0,color:i?l.errorText:"#b91c1c",fontSize:"14px"},children:T||"Eligibility check failed. Please try again."}),t.jsx("button",{onClick:()=>O&&ce(O),style:{marginTop:"10px",padding:"8px 12px",borderRadius:"6px",border:`1px solid ${i?l.errorBorder:"#e5e7eb"}`,backgroundColor:i?l.cardBg:"white",cursor:"pointer",fontWeight:600,color:i?l.errorText:"inherit"},children:"Retry eligibility check"})]}),z&&r===421614&&P&&(P.name.toLowerCase().includes("metamask")||P.type==="injected")&&t.jsxs("div",{style:{padding:"12px 16px",backgroundColor:i?l.infoBg:"#EFF6FF",borderRadius:"8px",border:`1px solid ${i?l.infoBorder:"#BFDBFE"}`,display:"flex",alignItems:"center",gap:"10px"},children:[t.jsx("div",{style:{width:"32px",height:"32px",borderRadius:"50%",backgroundColor:i?l.inputBg:"#DBEAFE",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:t.jsx("img",{src:rs,alt:"Rabby",style:{width:"20px",height:"20px",objectFit:"contain"}})}),t.jsxs("div",{style:{flex:1},children:[t.jsx("p",{style:{margin:"0 0 4px 0",color:i?l.infoText:"#1E40AF",fontSize:"13px",fontWeight:600},children:"Recommended Wallet"}),t.jsx("p",{style:{margin:0,color:i?l.infoText:"#1E3A8A",fontSize:"12px",lineHeight:"1.4",opacity:i?.85:1},children:"For Arbitrum Sepolia, we recommend using Rabby wallet instead of MetaMask for the best experience."})]})]}),z&&O?t.jsxs("div",{style:{border:`1px solid ${i?l.successBorder:"#02974F"}`,borderRadius:"8px",overflow:"hidden",marginTop:"20px"},children:[t.jsxs("div",{style:{backgroundColor:i?l.successBg:"#00FFA81C",padding:"14px 18px",display:"flex",alignItems:"center",justifyContent:"space-between"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[t.jsx("div",{style:{width:"22px",height:"22px",borderRadius:"50%",backgroundColor:"#02974F",display:"flex",alignItems:"center",justifyContent:"center",color:"white",fontSize:"14px",fontWeight:"bold"},children:"\u2713"}),t.jsx("span",{className:"ibm-plex-mono",style:{color:i?l.successText:"#02974F",fontWeight:600,fontSize:"14px",letterSpacing:"0.5px"},children:"WALLET CONNECTED"})]}),t.jsx("div",{style:{width:"38px",height:"38px",borderRadius:"50%",backgroundColor:i?l.cardBg:"#f3f4f6",display:"flex",alignItems:"center",justifyContent:"center",overflow:"hidden"},children:P&&H(P)?t.jsx("img",{src:H(P),alt:P.name,style:{width:"24px",height:"24px",objectFit:"contain"}}):t.jsx("span",{style:{fontSize:"16px",fontWeight:"bold",color:i?l.textPrimary:"inherit"},children:P?.name?.charAt(0)||"W"})})]}),t.jsxs("div",{style:{padding:"18px",backgroundColor:i?l.cardBg:"white"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"14px"},children:[t.jsx("span",{className:"ibm-plex-mono",style:{color:i?l.textSecondary:"#939291",fontSize:"13px",fontWeight:500,letterSpacing:"0.3px"},children:"ADDRESS:"}),t.jsxs("span",{className:"ibm-plex-mono",style:{color:i?l.textPrimary:"black",fontSize:"14px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.3px"},children:[O.slice(0,6),"...",O.slice(-4)]})]}),t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"16px"},children:[t.jsx("span",{className:"ibm-plex-mono",style:{color:i?l.textSecondary:"#939291",fontSize:"13px",fontWeight:500,letterSpacing:"0.3px"},children:"NETWORK:"}),t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px"},children:[t.jsx("img",{src:De,alt:ge,style:{width:"20px",height:"20px",borderRadius:"50%",objectFit:"contain"}}),t.jsx("span",{style:{color:i?l.textPrimary:"black",fontSize:"14px",fontWeight:500},children:ge}),r&&D?.id===r?t.jsx("div",{style:{width:"16px",height:"16px",borderRadius:"50%",backgroundColor:"#02974F",display:"flex",alignItems:"center",justifyContent:"center",color:"white",fontSize:"10px",fontWeight:"bold"},children:"\u2713"}):r?t.jsx("div",{style:{width:"16px",height:"16px",borderRadius:"50%",backgroundColor:"#EF4444",display:"flex",alignItems:"center",justifyContent:"center",color:"white",fontSize:"10px",fontWeight:"bold"},children:"!"}):null,t.jsx("button",{onClick:pe,disabled:h,style:{background:"none",border:"none",color:i?c:"#3C3E42",fontSize:"11px",fontWeight:500,textDecoration:"underline",cursor:h?"not-allowed":"pointer",padding:0,marginLeft:"4px",opacity:h?.6:1},children:h?"Switching...":"Switch"})]})]}),j&&t.jsx("div",{style:{marginBottom:"12px",border:`1px solid ${i?l.inputBorder:"#E5E7EB"}`,borderRadius:"8px",overflow:"hidden",backgroundColor:l.cardBg},children:re.map(R=>{const te=m.getChainConfig(R);if(!te)return null;const Ce=D?.id===R;return t.jsxs("button",{onClick:()=>{Ce?B(!1):ae(R)},style:{width:"100%",display:"flex",alignItems:"center",gap:"8px",padding:"10px 12px",backgroundColor:Ce?i?`${c}15`:`${c}10`:"transparent",border:"none",borderBottom:`1px solid ${i?l.inputBorder:"#E5E7EB"}`,cursor:Ce?"default":"pointer",transition:"background-color 0.15s"},onMouseEnter:Se=>{Ce||(Se.currentTarget.style.backgroundColor=i?"rgba(255,255,255,0.05)":"rgba(0,0,0,0.03)")},onMouseLeave:Se=>{Se.currentTarget.style.backgroundColor=Ce?i?`${c}15`:`${c}10`:"transparent"},children:[t.jsx("img",{src:Nt[R]||Kt,alt:te.displayName,style:{width:"20px",height:"20px",borderRadius:"50%",objectFit:"contain"}}),t.jsx("span",{style:{fontSize:"13px",fontWeight:Ce?600:400,color:i?l.textPrimary:"#1f2937",fontFamily:'"IBM Plex Mono", monospace'},children:te.displayName}),Ce&&t.jsx("span",{style:{marginLeft:"auto",fontSize:"11px",color:c,fontWeight:500},children:"Connected"})]},R)})}),t.jsxs("button",{className:"ibm-plex-mono",onClick:me,style:{width:"100%",padding:"10px",backgroundColor:"transparent",border:`1px solid ${i?l.inputBorder:"#E5E7EB"}`,borderRadius:"6px",cursor:"pointer",fontSize:"13px",fontWeight:500,color:i?l.textSecondary:"#9CA3AF",display:"flex",alignItems:"center",justifyContent:"center",gap:"6px"},children:[t.jsx("span",{style:{fontSize:"16px"},children:"\u27F2"}),"DISCONNECT"]})]})]}):t.jsxs(t.Fragment,{children:[p?.provider==="privy"&&t.jsx(Lr,{dark:i,dk:l,primaryColor:c,disabled:y||h,onError:C}),ie.map(R=>{const te=Ae(R),Ce=v===R.uid,Se=!te||y||Ce;return t.jsxs("button",{onClick:()=>{Se||ye(R)},onMouseEnter:()=>!Se&&x(R.uid),onMouseLeave:()=>x(null),disabled:Se,style:{width:"100%",display:"flex",alignItems:"center",gap:"14px",padding:"10px",borderRadius:"8px",backgroundColor:Ce?i?l.hoverBg:"#f3f4f6":"transparent",border:f===R.uid&&!Se?`2px solid ${i?`${c}44`:`${c}66`}`:"2px solid transparent",cursor:Se?"not-allowed":"pointer",opacity:Se?.6:1,transition:Mt.interactive},children:[t.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:i?l.cardBg:"#f3f4f6"},children:H(R)?t.jsx("img",{src:H(R),alt:R.name,style:{width:"26px",height:"26px",objectFit:"contain"}}):t.jsx("span",{style:{fontSize:"16px",fontWeight:"bold",color:i?l.textPrimary:"inherit"},children:R.name.charAt(0)})}),t.jsxs("span",{className:"ibm-plex-mono",style:{fontSize:"17px",fontWeight:500,letterSpacing:"0.4px",color:Se?i?l.inputPlaceholder:"#9ca3af":i?l.textPrimary:"#111827",flex:1,textAlign:"left",fontFamily:'"IBM Plex Mono", monospace'},children:[Ce?"Connecting...":R.name,!te&&!Ce&&t.jsx("span",{style:{fontSize:"12px",marginLeft:"8px"},children:"(Not detected)"})]})]},R.uid)})]})]}),Fe&&!b&&t.jsx("div",{style:{padding:"0 24px 20px"},children:t.jsxs("div",{style:{padding:"12px",backgroundColor:l.warningBg,borderRadius:"8px",border:`1px solid ${l.warningBorder}`},children:[t.jsxs("p",{style:{margin:"0 0 10px 0",color:l.warningText,fontSize:"14px"},children:["Please switch to ",xe," to continue."]}),t.jsx("button",{onClick:pe,disabled:h,style:{width:"100%",padding:"8px 12px",borderRadius:"6px",border:`1px solid ${i?l.warningBorder:"#fbbf24"}`,backgroundColor:i?l.cardBg:"white",cursor:h?"not-allowed":"pointer",fontWeight:600,fontSize:"13px",color:l.warningText,opacity:h?.6:1},children:h?"Switching...":"Switch Network"})]})}),t.jsx("div",{style:{padding:"0 24px 25px"},children:t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:async()=>{se&&(await new Promise(R=>setTimeout(R,300)),o?await o():n())},disabled:!se,theme:u,dark:i,styles:a,children:y?"CONNECTING...":h?"SWITCHING NETWORK...":A==="checking"?"CHECKING ELIGIBILITY...":"CONTINUE"})}),I&&t.jsx("div",{style:{position:"fixed",inset:0,backgroundColor:i?"rgba(0, 0, 0, 0.72)":"rgba(0, 0, 0, 0.55)",display:"flex",alignItems:"center",justifyContent:"center",padding:"16px",zIndex:60},children:t.jsxs("div",{style:{backgroundColor:i?l.cardBg:"white",borderRadius:"12px",padding:"28px",width:"100%",maxWidth:"420px",textAlign:"center",boxShadow:"0 20px 60px rgba(0, 0, 0, 0.18)"},children:[t.jsx("p",{className:"ibm-plex-mono",style:{fontSize:"14px",fontWeight:600,letterSpacing:"0.4px",color:"#EF4444",marginBottom:"10px"},children:"ACCESS BLOCKED"}),t.jsx("h3",{style:{margin:"0 0 12px",fontSize:"22px",fontWeight:600,color:i?l.textPrimary:"inherit"},children:"Sorry, you're not eligible"}),t.jsx("p",{style:{margin:"0 0 18px",color:i?l.textSecondary:"#4B5563"},children:"This wallet does not meet the eligibility requirements to deposit assets."}),t.jsx("button",{onClick:async()=>{X.current.clear(),await me(),n()},style:{width:"100%",padding:"12px",borderRadius:"8px",border:"none",backgroundColor:i?"white":"#111827",color:i?"#111827":"white",fontWeight:600,cursor:"pointer"},children:"Disconnect wallet"})]})})]})},ps=15,Vs=({checkStepStatus:e,pollingInterval:n=1e3,retryStep:s,maxRetries:o=3})=>{const[r,a]=d.useState(null),i=d.useRef(null),c=d.useRef(!1),l=d.useRef(!1),u=d.useRef(null),p=d.useRef({}),f=d.useRef(0),x=d.useRef(0),h=d.useCallback(()=>{i.current&&(clearInterval(i.current),i.current=null)},[]),g=d.useCallback(()=>{u.current=null,a(null),p.current={},f.current=0,x.current=0,h()},[h]),b=d.useCallback((C,y)=>{h(),c.current=!1,l.current=!1,p.current={},f.current=0,x.current=0;const w={intentId:C,steps:y.map(k=>({...k,status:"pending"})),overallStatus:"processing"};u.current=w,a(w);const v=async()=>{if(c.current||l.current)return;l.current=!0,x.current+=1;const k=x.current;try{const A=u.current;if(!A)return;const S=A.steps.map(E=>({...E}));let T=!0,N=!1;for(let E=0;E<S.length;E++){const j=S[E];if(j.status!=="success"){if((j.stepId===0||E>0&&S[E-1].status==="success")&&(j.status==="pending"||j.status==="processing"))try{const B=await e(C,j.stepId);if(f.current=0,B.data.status==="success")S[E]={...j,status:"success",transactionHash:B.data.transactionHash},E+1<S.length&&S[E+1].status==="pending"&&(S[E+1]={...S[E+1],status:"processing"});else if(B.data.status==="executing"||B.data.status==="created")S[E]={...j,status:"processing"};else if(B.data.status==="reverted"){const U=p.current[j.stepId]||0;if(s&&U<o){p.current[j.stepId]=U+1;try{await s(C,j.stepId)}catch(D){console.error(`[useStatus] Retry failed for step ${j.stepId}:`,D)}S[E]={...j,status:"processing"}}else S[E]={...j,status:"failed",transactionHash:B.data.transactionHash},N=!0}else S[E]={...j,status:"processing"}}catch(B){f.current+=1,console.error(`[useStatus] Poll #${k}: Error checking step ${j.stepId} (consecutive errors: ${f.current}/${ps}):`,B),f.current>=ps&&(console.error(`[useStatus] Too many consecutive polling errors (${ps}). Marking step ${j.stepId} as failed.`),S[E]={...j,status:"failed"},N=!0)}S[E].status!=="success"&&(T=!1)}}const I={...A,steps:S,overallStatus:N?"failed":T?"success":"processing"};u.current=I,a(I),(T||N)&&(c.current=!0,h())}finally{l.current=!1}};v(),i.current=setInterval(v,n)},[e,n,h,s,o]);return d.useEffect(()=>()=>{h()},[h]),{intentStatus:r,startStatusPolling:b,stopStatusPolling:h,clearStatus:g}},Hr=()=>{const[e,n]=d.useState(!1);let s=null,o=null;try{s=wn.useDynamicContext()}catch(h){o=h instanceof Error?h.message:String(h)}if(d.useEffect(()=>{n(!0)},[]),o)return{isReady:!1,isAuthenticated:!1,isConnected:!1,provider:"dynamic",actions:{signAuthorization:async()=>{throw new Error("Dynamic context not available")},signMessage:async()=>{throw new Error("Dynamic context not available")},getEthereumProvider:async()=>{throw new Error("Dynamic context not available")}}};const{user:r,primaryWallet:a,connectedWallets:i}=s||{},c=Zt.getDynamicEmbeddedWallet({connectedWallets:i,primaryWallet:a})||a,l=!!r,u=c?.address,p={isReady:e&&!!s,isAuthenticated:l,isConnected:l&&!!u,address:u,provider:"dynamic"},f=async h=>{if(!c)throw new Error("Dynamic embedded wallet not available");const{isEthereumWallet:g}=await import("@dynamic-labs/ethereum");if(!g(c))throw new Error("Embedded wallet is not an Ethereum wallet");const b=await c.getWalletClient();if(!b)throw new Error("Dynamic wallet client not available");return{signature:await b.signMessage({message:h,account:c.address})}},x=async()=>{if(!u)throw new Error("Dynamic embedded wallet not available");await m.ensureSmartWallet(u,f)};return{...p,actions:{signAuthorization:async h=>{if(!c)throw new Error("Dynamic embedded wallet not available");await x();const{isEthereumWallet:g}=await import("@dynamic-labs/ethereum");if(!g(c))throw new Error("Embedded wallet is not an Ethereum wallet");const b=c.connector,C={address:c.address,chainId:h.chainId,contractAddress:h.contractAddress,nonce:h.nonce},y={address:h.contractAddress,chainId:h.chainId,nonce:h.nonce},w=typeof b?.getWaasWalletClient=="function"?await b.getWaasWalletClient():null;if(w&&typeof w.signRawMessage=="function"){const{hashAuthorization:v}=await import("viem/experimental"),{parseSignature:k}=await import("viem"),A={address:h.contractAddress,chainId:h.chainId,nonce:h.nonce},S=b.getSignedSessionId,T=typeof S=="function"?await S.call(b):void 0,N=b.getAuthToken,I=typeof N=="function"?N.call(b):void 0,E=await w.signRawMessage({accountAddress:c.address,authToken:I,context:{eip7702Auth:A},message:v(A).slice(2),signedSessionId:T}),j=k(E);return{address:C.contractAddress,chainId:C.chainId,contractAddress:C.contractAddress,nonce:BigInt(C.nonce),r:j.r,s:j.s,yParity:Number(j.yParity)}}if(typeof b?.signAuthorization=="function"){typeof b.switchNetwork=="function"&&await b.switchNetwork({networkChainId:h.chainId});const v=await b.signAuthorization(y);return Zt.normalizeAuthorization(v,C)}throw new Error("Dynamic embedded wallet does not support EIP-7702 authorization. Ensure @dynamic-labs packages are v4.15+.")},signMessage:async h=>{if(!(typeof h=="object"&&"raw"in h))return f(h);if(await x(),!c)throw new Error("Dynamic embedded wallet not available");const g=await c.getWalletClient();if(!g)throw new Error("Dynamic wallet client not available");return{signature:await g.signMessage({message:{raw:h.raw},account:c.address})}},getEthereumProvider:async()=>{if(!c)throw new Error("Dynamic embedded wallet not available");const{isEthereumWallet:h}=await import("@dynamic-labs/ethereum");if(!h(c))throw new Error("Embedded wallet is not an Ethereum wallet");return Zt.getProviderEthereumProvider(c)}}}},Lt=()=>{const e=d.useContext(m.SpiceFlowProviderContext),n=e?.mode||"7702";let s=null,o=null;try{s=At.useWallets(),{user:o}=At.usePrivy()}catch{s=null}const r=At.getEmbeddedConnectedWallet(s?.wallets||[])?.address,a=o?.wallet?.address;let i=null;try{i=wn.useDynamicContext()}catch{i=null}const c=(Zt.getDynamicEmbeddedWallet(i)||i?.primaryWallet)?.address;if(!(!e||n!=="7702"))return e.provider==="privy"?r??a:e.provider==="dynamic"?c:r??a??c},Qr=()=>{const e=d.useContext(m.SpiceFlowProviderContext)?.mode,{isConnected:n,address:s}=ft.useAccount();let o=null,r=null,a=null,i=null,c=null;try{o=At.usePrivy(),r=At.useSign7702Authorization(),a=At.useSignMessage(),i=At.useWallets()}catch(y){c=y instanceof Error?y.message:String(y)}if(c)return e==="ondemand"&&n&&s?{isReady:!0,isAuthenticated:!0,isConnected:!0,address:s,provider:"privy",actions:{signAuthorization:async()=>{throw new Error("Not available in ondemand mode")},signMessage:async()=>{throw new Error("Not available in ondemand mode")},getEthereumProvider:async()=>{throw new Error("Not available in ondemand mode")}}}:{isReady:!1,isAuthenticated:!1,isConnected:!1,provider:null,actions:{signAuthorization:async()=>{throw new Error("Privy not available")},signMessage:async()=>{throw new Error("Privy not available")},getEthereumProvider:async()=>{throw new Error("Privy not available")}}};const{ready:l=!1,authenticated:u=!1}=o||{},p=Lt(),f=At.getEmbeddedConnectedWallet(i?.wallets||[]),x=p||f?.address,h=!!x&&!!f,g={isReady:e==="ondemand"?!0:l,isAuthenticated:e==="ondemand"?!0:u||h,isConnected:e==="ondemand"?n&&!!s||l&&(u||h)&&h:l&&h,address:e==="ondemand"&&!p&&n?s:x,provider:"privy"},b=async y=>{if(a)try{return{signature:(await a.signMessage({message:y})).signature}}catch(A){if(!f)throw A}if(!f)throw new Error("Privy sign message not available");const w=await f.getEthereumProvider(),{createWalletClient:v,custom:k}=await import("viem");return{signature:await v({account:f.address,transport:k(w)}).signMessage({account:f.address,message:y})}},C=async()=>{if(!x)throw new Error("Embedded wallet not available for smart wallet setup");await m.ensureSmartWallet(x,b)};return{...g,actions:{signAuthorization:async y=>{if(!r)throw new Error("Privy sign authorization not available");try{await C();const w=await r.signAuthorization({contractAddress:y.contractAddress,chainId:y.chainId,nonce:y.nonce},{address:x});return delete w.v,w}catch(w){const v=w?.message||String(w);throw v.includes("not configured")||v.includes("chain")?new Error(`Chain ${y.chainId} is not configured in PrivyProvider. Add this chain to your Privy dashboard or supportedChainIds.`):w}},signMessage:async y=>{if(typeof y=="object"&&"raw"in y){if(await C(),!f)throw new Error("Embedded wallet not available for raw signing");const w=await f.getEthereumProvider(),{createWalletClient:v,custom:k}=await import("viem");return{signature:await v({account:f.address,transport:k(w)}).signMessage({account:f.address,message:y})}}return b(y)},getEthereumProvider:async()=>{if(!f)throw new Error("Embedded wallet not available");return f.getEthereumProvider()}}}},Ot=()=>{const e=d.useContext(m.SpiceFlowProviderContext)?.provider,n=Qr(),s=Hr();return e==="privy"?n:e==="dynamic"?s:{isReady:!1,isAuthenticated:!1,isConnected:!1,provider:null,actions:{signAuthorization:async()=>{throw new Error("No wallet provider available")},signMessage:async()=>{throw new Error("No wallet provider available")},getEthereumProvider:async()=>{throw new Error("No wallet provider available")}}}},zt=e=>e?.address?{address:e.address,wallet:e,getWalletClient:n=>Zt.getProviderWalletClient(e,n),getEthereumProvider:n=>Zt.getProviderEthereumProvider(e,n)}:null,En=()=>{const e=d.useContext(m.SpiceFlowProviderContext),{address:n,connector:s}=ft.useAccount();let o=null,r=null;try{o=At.useWallets(),{user:r}=At.usePrivy()}catch{o=null,r=null}let a=null;try{a=wn.useDynamicContext()}catch{a=null}const i=o?.wallets||[],c=At.getEmbeddedConnectedWallet(i),l=c?.address?.toLowerCase(),u=i.find(v=>v.connectorType!=="embedded"&&v.address?.toLowerCase()!==l),p=Zt.getDynamicEmbeddedWallet(a),f=Zt.getDynamicExternalWallet(a),x=n&&s?{address:n,connector:s,getEthereumProvider:()=>s.getProvider()}:null,h=e?.provider,g=zt(c)||zt(p),b=zt(x)||zt(u)||zt(f)||null,C=h==="dynamic"?zt(p):h==="privy"?zt(c):g,y=h==="dynamic"?zt(x)||zt(f):h==="privy"?zt(x)||zt(u):b,w=h==="dynamic"?C?.address:h==="privy"?C?.address||r?.wallet?.address:g?.address||r?.wallet?.address;return{embeddedWallet:C,externalWallet:y,embeddedAddress:w,externalAddress:y?.address}},fs=({color:e})=>t.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:[t.jsx("circle",{cx:"7",cy:"7",r:"6.5",stroke:e,strokeWidth:"1.2"}),t.jsx("path",{d:"M7 6v4",stroke:e,strokeWidth:"1.2",strokeLinecap:"round"}),t.jsx("circle",{cx:"7",cy:"4.5",r:"0.7",fill:e})]}),Vr=({content:e,label:n="More info",textColor:s="#f9fafb",backgroundColor:o="#111827",borderColor:r="rgba(255,255,255,0.08)",accentColor:a="#9ca3af",children:i})=>{const c=d.useId(),[l,u]=d.useState(!1),p=d.useRef(null),[f,x]=d.useState(!1),[h,g]=d.useState(null);d.useEffect(()=>{x(!0)},[]),d.useLayoutEffect(()=>{if(!l||!p.current)return;const C=()=>{if(!p.current)return;const y=p.current.getBoundingClientRect(),w=Math.min(220,window.innerWidth-48),v=Math.min(Math.max(y.left+y.width/2,24+w/2),window.innerWidth-24-w/2),k=y.top>84;g({top:k?y.top-10:y.bottom+10,left:v,placement:k?"top":"bottom"})};return C(),window.addEventListener("scroll",C,!0),window.addEventListener("resize",C),()=>{window.removeEventListener("scroll",C,!0),window.removeEventListener("resize",C)}},[l]);const b=l&&f&&h?vn.createPortal(t.jsxs("span",{id:c,role:"tooltip",style:{position:"fixed",left:h.left,top:h.top,transform:h.placement==="top"?"translate(-50%, -100%)":"translate(-50%, 0)",width:"220px",maxWidth:"min(220px, calc(100vw - 48px))",padding:"10px 12px",borderRadius:"10px",backgroundColor:o,color:s,border:`1px solid ${r}`,boxShadow:"0 18px 45px rgba(0,0,0,0.28)",fontSize:"11px",lineHeight:"1.45",fontWeight:500,textAlign:"left",zIndex:dn.tooltip,pointerEvents:"none"},children:[e,t.jsx("span",{"aria-hidden":"true",style:{position:"absolute",left:"50%",width:"10px",height:"10px",transform:"translateX(-50%) rotate(45deg)",backgroundColor:o,...h.placement==="top"?{bottom:"-6px",borderRight:`1px solid ${r}`,borderBottom:`1px solid ${r}`}:{top:"-6px",borderTop:`1px solid ${r}`,borderLeft:`1px solid ${r}`}}})]}),document.body):null;return t.jsxs(t.Fragment,{children:[t.jsx("span",{ref:p,style:{position:"relative",display:"inline-flex",alignItems:"center",justifyContent:"center",flexShrink:0},onMouseEnter:()=>u(!0),onMouseLeave:()=>u(!1),children:t.jsx("button",{type:"button","aria-label":n,"aria-describedby":l?c:void 0,onFocus:()=>u(!0),onBlur:()=>u(!1),style:{width:"18px",height:"18px",borderRadius:"999px",display:"inline-flex",alignItems:"center",justifyContent:"center",border:`1px solid ${r}`,backgroundColor:"transparent",color:a,cursor:"help",padding:0,outline:"none",boxShadow:l?`0 0 0 2px ${a}26`:"none",transition:"border-color 120ms ease, box-shadow 120ms ease, color 120ms ease"},children:i||t.jsx(fs,{color:a})})}),b]})},qs=(e,n,s,o)=>({width:e,height:e,fill:"none",className:n,"aria-hidden":s??!0,style:o}),Gt=({size:e=16,color:n="currentColor",strokeWidth:s=2,direction:o="down",className:r,style:a,"aria-hidden":i})=>t.jsx("svg",{...qs(e,r,i,{transform:o==="up"?"rotate(180deg)":void 0,transition:"transform 0.3s ease",...a}),viewBox:"0 0 16 16",children:t.jsx("path",{d:"M4 6L8 10L12 6",stroke:n,strokeWidth:s,strokeLinecap:"round",strokeLinejoin:"round"})}),Ys=({size:e=14,color:n="currentColor",strokeWidth:s=2,className:o,style:r,"aria-hidden":a})=>t.jsx("svg",{...qs(e,o,a,r),viewBox:"0 0 16 16",children:t.jsx("path",{d:"M3 8L6.5 11.5L13 5",stroke:n,strokeWidth:s,strokeLinecap:"round",strokeLinejoin:"round"})});function Mn(e,n){if(e===0n)return"0";const s=10n**BigInt(n),o=e/s,r=(e%s).toString().padStart(n,"0").slice(0,6).replace(/0+$/,"");return r?o===0n&&/^0+$/.test(r)?"< 0.000001":`${o.toString()}.${r}`:o.toString()}function Dn(e,n,s){const o=`${Mn(e,n)} ${s}`;return e===0n?o:`-${o}`}const Wn=({fontFamily:e,textPrimary:n,textSecondary:s,cardBg:o,cardBorder:r,resolvedDark:a,darkCardBorder:i,primaryColor:c,feePreview:l,isLoading:u,errorText:p,directExecutionFeeNote:f=!1})=>{const x=a?i??r:"#e5e7eb",h=a?"#111214":"#111827",g=a?"rgba(255,255,255,0.08)":"rgba(17,24,39,0.12)",b="#f87171",C=a?"#d1d5db":"#4b5563",y=a?"#f3f4f6":n,[w,v]=d.useState(!1),k=!!p,A=k?null:l,S=A?[{label:"Total Required",help:"Total amount required to fund this action.",value:`${Mn(A.grossAmount,A.decimals)} ${A.symbol}`,tone:"default"},{label:"Spicenet Fee",help:"Fees paid to Spicenet for intent processing and execution.",value:Dn(A.spicenetFee,A.decimals,A.symbol),tone:"fee"},{label:"Gas Fee",help:"Gas fee shown in the same token you are using for this action.",value:Dn(A.gasFee,A.decimals,A.symbol),tone:"fee"},...A.bridgeFee&&A.bridgeFee>0n?[{label:"Bridge Fee",help:"Estimated cost to rebalance liquidity for this action.",value:Dn(A.bridgeFee,A.decimals,A.symbol),tone:"fee"}]:[],{label:"Used in TX",help:"Resulting amount of funds used in the transaction.",value:`${Mn(A.netAmount,A.decimals)} ${A.symbol}`,tone:"default"}]:[];A&&Dn(A.totalFee??0n,A.decimals,A.symbol);const T=A?`${Mn(A.grossAmount,A.decimals)} ${A.symbol}`:null;return k?t.jsx("div",{style:{backgroundColor:o,border:`1px solid ${r}`,borderRadius:a?"8px":"7px",padding:"14px 16px 12px 16px",marginBottom:"16px",boxShadow:a?"inset 0 1px 0 rgba(255,255,255,0.03)":"none"},children:t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"10px"},children:[t.jsx("span",{style:{fontSize:"17px",fontWeight:500,color:C,fontFamily:e,lineHeight:"24px"},children:"Fee"}),t.jsx("div",{style:{color:b,fontSize:"12px",lineHeight:"1.55",fontFamily:e},children:p})]})}):t.jsxs("div",{style:{backgroundColor:o,border:`1px solid ${r}`,borderRadius:a?"8px":"7px",padding:"14px 16px 12px 16px",marginBottom:"16px",boxShadow:a?"inset 0 1px 0 rgba(255,255,255,0.03)":"none"},children:[t.jsxs("button",{type:"button",onClick:()=>v(N=>!N),style:{display:"flex",justifyContent:"space-between",alignItems:"center",width:"100%",gap:"12px",marginBottom:w?"14px":0,background:"none",border:"none",padding:0,cursor:"pointer",textAlign:"left"},children:[t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[t.jsx("span",{style:{fontSize:"17px",fontWeight:500,color:C,fontFamily:e,lineHeight:"24px"},children:"Fee"}),w&&t.jsx("span",{style:{fontSize:"12px",color:s,fontFamily:e,lineHeight:"1.45"},children:"What is funded, spent, and taken as fees"})]}),t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",flexShrink:0},children:[T&&!f&&t.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-end",gap:"2px",minWidth:0},children:[t.jsx("span",{style:{fontSize:"10px",fontWeight:700,color:s,fontFamily:e,letterSpacing:"0.08em",textTransform:"uppercase"},children:"Total required"}),t.jsx("span",{style:{fontSize:"14px",fontWeight:700,color:y,fontFamily:e,whiteSpace:"nowrap"},children:T})]}),u&&!f&&t.jsx("span",{style:{fontSize:"11px",fontWeight:600,color:c,fontFamily:e,padding:"6px 9px",borderRadius:"999px",backgroundColor:a?"rgba(255,255,255,0.04)":"rgba(0,0,0,0.035)",border:`1px solid ${a?x:"rgba(0,0,0,0.06)"}`,whiteSpace:"nowrap"},children:"Recalculating"}),t.jsx(Gt,{color:s,direction:w?"up":"down",style:{flexShrink:0}})]})]}),t.jsx("div",{style:{overflow:"hidden",maxHeight:w?"480px":"0px",opacity:w?1:0,transition:"max-height 0.24s ease, opacity 0.18s ease"},children:f?t.jsx("p",{style:{margin:0,color:s,fontSize:"12px",lineHeight:"1.55",fontFamily:e},children:"This path executes directly from the external wallet. Network gas is paid in-wallet, so Spicenet cannot pre-estimate that gas or charge a Spicenet fee here."}):S.length>0?t.jsxs(t.Fragment,{children:[t.jsx("div",{style:{display:"grid",gap:"10px"},children:S.map((N,I)=>t.jsxs("div",{style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr) auto",alignItems:"center",gap:"12px",paddingTop:I===0?0:"10px",borderTop:I===0?"none":`1px solid ${x}`,opacity:u?.74:1,transition:"opacity 120ms ease"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",minWidth:0},children:[t.jsx("span",{style:{fontSize:"12px",color:s,fontFamily:e,fontWeight:500},children:N.label}),t.jsx(Vr,{content:N.help,label:`${N.label} info`,textColor:"#f9fafb",backgroundColor:h,borderColor:g,accentColor:a?"#8f96a3":"#6b7280"})]}),t.jsx("span",{style:{fontSize:"12px",color:N.tone==="fee"?b:y,fontFamily:'"IBM Plex Mono", monospace',textAlign:"right",fontWeight:N.label==="Used in TX"?600:500,letterSpacing:"-0.01em"},children:N.value})]},N.label))}),t.jsx("div",{style:{marginTop:"12px",paddingTop:"12px",borderTop:`1px solid ${x}`,fontSize:"11px",color:s,fontFamily:e,lineHeight:"1.45"},children:A?.gasQuoteSource==="estimated"?"Gas quote uses a live estimate.":A?.gasQuoteSource==="configured_fallback"?"Gas quote uses a configured fallback.":"Gas quote is currently zero."})]}):t.jsx("div",{style:{fontSize:"12px",color:p?b:s,fontFamily:e,opacity:p?1:.8,lineHeight:"1.5"},children:p||"Waiting for fee estimate..."})})]})};function qr(e,n){switch(e){case"success":return{bg:n.successBg,border:n.successBorder,text:n.successText};case"warning":return{bg:n.warningBg,border:n.warningBorder,text:n.warningText};case"error":return{bg:n.errorBg,border:n.errorBorder,text:n.errorText};case"info":return{bg:n.infoBg,border:n.infoBorder,text:n.infoText}}}const xn=({variant:e,palette:n,children:s,icon:o,style:r,fontFamily:a,size:i="default"})=>{const c=qr(e,n),l=i==="compact";return t.jsxs("div",{role:e==="error"?"alert":"status",style:{backgroundColor:c.bg,border:`1px solid ${c.border}`,borderRadius:l?"7px":"8px",padding:l?"8px 10px":"12px 16px",color:c.text,fontSize:l?"12px":"13px",lineHeight:l?1.4:1.5,display:"flex",alignItems:"flex-start",gap:l?"6px":"8px",fontFamily:a,...r},children:[o&&t.jsx("span",{style:{flexShrink:0,display:"flex",alignItems:"center"},children:o}),t.jsx("span",{style:{minWidth:0,overflowWrap:"anywhere"},children:s})]})},Zs='"IBM Plex Mono", monospace',gn=({label:e,value:n,palette:s,valueColor:o,labelColor:r,style:a})=>t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:"12px",...a},children:[t.jsx("span",{style:{fontSize:"12px",color:r??s.textSecondary,fontFamily:Zs,fontWeight:500,letterSpacing:"0.03em",flexShrink:0,whiteSpace:"nowrap"},children:e}),t.jsx("span",{style:{fontSize:"13px",color:o??s.textPrimary,fontWeight:500,fontFamily:Zs,minWidth:0,textAlign:"right",overflowWrap:"anywhere"},children:n})]}),hs=({onClick:e,label:n="Add Funds",color:s,fontFamily:o,style:r})=>{const[a,i]=d.useState(!1);return t.jsxs("button",{type:"button",onClick:e,"data-spiceflow-focus":!0,onMouseEnter:()=>i(!0),onMouseLeave:()=>i(!1),style:{background:"none",border:"none",cursor:"pointer",padding:0,display:"inline-flex",alignItems:"center",gap:"4px",color:s,fontSize:"12px",fontWeight:500,fontFamily:o,textDecoration:"underline",textUnderlineOffset:"2px",whiteSpace:"nowrap",opacity:a?.75:1,transition:"opacity 150ms ease",...r},children:[n,t.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:"1.8","aria-hidden":"true",children:[t.jsx("circle",{cx:"6",cy:"6",r:"5"}),t.jsx("path",{d:"M6 4v4M4 6h4",strokeLinecap:"round"})]})]})},Yr=({isOpen:e,onClose:n,onConfirm:s,data:o,isExecuting:r=!1,error:a=null,theme:i,styles:c,intentStatus:l,postDepositStatus:u="idle",hasPostDepositInstruction:p=!1})=>{const{dark:f,dk:x,theme:h}=m.useSpiceBrand(c),[g,b]=d.useState(!1),[C,y]=d.useState(!0);d.useEffect(()=>{e||b(!1)},[e]);const w=()=>{b(!0),setTimeout(()=>{n()},300)},v=()=>{y(!C)};if(!e||!o)return null;const k=l?.overallStatus==="processing",A=l?.overallStatus==="success",S=!!l,T=!S&&p,N=T&&u==="executing",I=T&&u==="success",E=A&&p&&(u==="idle"||u==="executing")||N,j=A&&(!p||u==="success"||u==="error")||I||T&&u==="error",B=f?x.cardBg:"#ffffff",U=f?"0 -4px 20px rgba(0, 0, 0, 0.4)":"0 -4px 20px rgba(0, 0, 0, 0.15)",D=x.textSecondary,P=f?x.textPrimary:"#1f2937",L=f?x.textPrimary:"#1f2937";return t.jsxs("div",{style:{position:"absolute",bottom:0,left:0,right:0,zIndex:10,animation:g?"slideDown 0.3s ease-in":"slideUp 0.3s ease-out",pointerEvents:"auto"},children:[t.jsxs("div",{style:{backgroundColor:B,borderRadius:"0",width:"100%",maxWidth:"522px",margin:"0 auto",padding:"18px 24px",boxShadow:U},children:[!A&&!I&&t.jsxs(t.Fragment,{children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:i.spacing.md},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",cursor:"pointer"},onClick:v,children:[t.jsx("span",{style:{fontSize:"13px",fontWeight:i.typography.fontWeight.medium,color:D,fontFamily:c?.fontFamily||i.typography.fontFamily},children:"Transaction Details"}),t.jsx(Gt,{color:D,direction:C?"up":"down"})]}),t.jsx("button",{onClick:O=>{O.stopPropagation(),n()},style:{background:"none",border:"none",cursor:"pointer",padding:"4px",display:"flex",alignItems:"center",justifyContent:"center",color:D,transition:"color 0.2s ease"},onMouseEnter:O=>{O.currentTarget.style.color=L},onMouseLeave:O=>{O.currentTarget.style.color=D},children:t.jsx(mn,{size:16})})]}),t.jsxs("div",{style:{marginBottom:i.spacing.lg,display:"flex",flexDirection:"column",gap:i.spacing.md,overflow:"hidden",maxHeight:C?"200px":"0px",opacity:C?1:0,transition:"max-height 0.3s ease, opacity 0.3s ease"},children:[t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:D,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"NETWORK"}),t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:P,fontFamily:'"IBM Plex Mono", monospace'},children:o.network})]}),t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:D,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"DEPOSITED AMOUNT"}),t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:i.colors.success,fontFamily:'"IBM Plex Mono", monospace'},children:o.amount})]}),o.creditedAmount&&t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:D,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"CREDITED AMOUNT"}),t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:P,fontFamily:'"IBM Plex Mono", monospace'},children:o.creditedAmount})]}),o.spicenetFee&&t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:D,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"SPICENET FEE"}),t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:P,fontFamily:'"IBM Plex Mono", monospace'},children:o.spicenetFee})]}),o.networkFee&&t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:D,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"EST. GAS FEE"}),t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:P,fontFamily:'"IBM Plex Mono", monospace'},children:o.networkFee})]})]})]}),a&&!S&&t.jsx("div",{style:{marginBottom:i.spacing.md,padding:i.spacing.md,backgroundColor:c?.errorMessage?.backgroundColor||(i.mode==="light"?"#fef2f2":`${i.colors.error}20`),border:`1px solid ${c?.errorMessage?.borderColor||(i.mode==="light"?"#fecaca":i.colors.error)}`,borderRadius:c?.errorMessage?.borderRadius||i.borderRadius.md},children:t.jsx("p",{style:{color:c?.errorMessage?.color||i.colors.error,fontSize:c?.errorMessage?.fontSize||i.typography.fontSize.sm,margin:0,fontFamily:c?.errorMessage?.fontFamily||c?.fontFamily||i.typography.fontFamily},children:a})}),t.jsx(m.Button,{onClick:j?w:s,variant:"outline",fullWidth:!0,disabled:r||k||E||N,styles:c,theme:h,children:r||k||N||E?"PROCESSING...":j?"CONTINUE \u2192":"CONFIRM DEPOSIT"}),j&&t.jsx("p",{style:{marginTop:i.spacing.md,marginBottom:0,fontSize:"14px",color:D,textAlign:"center",fontFamily:c?.fontFamily||i.typography.fontFamily},children:"Your funds are now available in your Account"}),t.jsx("div",{style:{marginTop:i.spacing.md,display:"flex",justifyContent:"center",alignItems:"center"},children:t.jsx("img",{src:us,alt:"Powered by SpiceNet",style:{height:"auto",width:"130px",opacity:1,filter:f?"brightness(0) invert(1) opacity(0.7)":"none"}})})]}),t.jsx("style",{children:`
2
+ "use strict";var or=Object.create;var Rs=Object.defineProperty;var rr=Object.getOwnPropertyDescriptor;var ar=Object.getOwnPropertyNames;var ir=Object.getPrototypeOf,lr=Object.prototype.hasOwnProperty;var dr=(e,n,s,o)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of ar(n))!lr.call(e,r)&&r!==s&&Rs(e,r,{get:()=>n[r],enumerable:!(o=rr(n,r))||o.enumerable});return e};var on=(e,n,s)=>(s=e!=null?or(ir(e)):{},dr(n||!e||!e.__esModule?Rs(s,"default",{value:e,enumerable:!0}):s,e));const t=require("react/jsx-runtime"),l=require("react"),Xn=require("lucide-react"),m=require("./Button-CkSwrat1.js"),gt=require("wagmi"),z=require("@spicenet-io/spiceflow-core"),U=require("viem"),jt=require("viem/actions"),Bt=require("@privy-io/react-auth"),Cn=require("@dynamic-labs/sdk-react-core"),Xt=require("./providerWallet-6FpyLYqw.js"),bn=require("react-dom"),cr=require("./auth-privy.cjs.js");var un=typeof document<"u"?document.currentScript:null;const ur="https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@100;200;300;400;500;600;700&display=swap",pr="spiceflow-ibm-plex-mono",fr="spiceflow-preconnect-googleapis",hr="spiceflow-preconnect-gstatic";function Gn(e,n){if(document.getElementById(e))return;const s=n();s.id=e,document.head.appendChild(s)}function mr(){typeof document>"u"||(Gn(fr,()=>{const e=document.createElement("link");return e.rel="preconnect",e.href="https://fonts.googleapis.com",e}),Gn(hr,()=>{const e=document.createElement("link");return e.rel="preconnect",e.href="https://fonts.gstatic.com",e.crossOrigin="",e}),Gn(pr,()=>{const e=document.createElement("link");return e.rel="stylesheet",e.href=ur,e}))}const ln={base:0,raised:1,sticky:10,overlay:20,popover:40,modal:1e3,dropdown:1100,toast:1200,tooltip:1300},Jn={none:"0",sm:"4px",md:"6px",card:"8px",input:"10px",shell:"9px",modal:"12px",pill:"9999px",circle:"50%"},St={out:"cubic-bezier(0.22, 1, 0.36, 1)",inOut:"cubic-bezier(0.65, 0, 0.35, 1)",linear:"linear"},Dt={fast:"120ms",normal:"150ms",slow:"300ms",progress:"400ms"},Wt={interactive:`transform ${Dt.normal} ${St.out}, box-shadow ${Dt.normal} ${St.out}, background-color ${Dt.normal} ${St.out}, border-color ${Dt.normal} ${St.out}, color ${Dt.normal} ${St.out}`,color:`background-color ${Dt.normal} ${St.out}, border-color ${Dt.normal} ${St.out}, color ${Dt.normal} ${St.out}`,popover:`opacity ${Dt.normal} ${St.out}, transform ${Dt.normal} ${St.out}`},Ms={ui:'"Helvetica Neue", sans-serif',mono:'"IBM Plex Mono", monospace'},$n=({value:e,onChange:n,ariaLabel:s,placeholder:o,endAdornment:r,size:a="lg",dark:i,styles:c,inputRef:d,autoFocus:u})=>{const{dark:h,dk:p}=m.useSpiceBrand(c,i),g=i??h,f=a==="lg",x=f?"15px":"14px",b=f?"7px":"10px",y=f?Jn.input:Jn.sm,C=c?.fontFamily||Ms.ui,k=g?p.inputBg:"#FAFAFA",I=g?p.inputBorder:"#e5e7eb",v=g?p.textPrimary:"#374151",S=g?p.textSecondary:"#9ca3af";return t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",backgroundColor:k,borderRadius:y,boxShadow:g?"0 2px 4px rgba(0, 0, 0, 0.3)":"0 2px 4px rgba(0, 0, 0, 0.1)",padding:`${b} 5px`,border:`1px solid ${I}`},children:[t.jsx(Xn.Search,{style:{color:S},size:24}),t.jsx("input",{ref:d,type:"text",role:"searchbox","aria-label":s,autoComplete:"off",spellCheck:!1,autoFocus:u,"data-spiceflow-focus":!0,placeholder:o,value:e,onChange:w=>n(w.target.value),style:{flex:1,backgroundColor:k,outline:"none",border:"none",color:v,fontSize:x,fontWeight:400,fontFamily:C}}),r]})},_n=typeof process<"u"&&process.env?.NEXT_PUBLIC_MORALIS_API_KEY||typeof{url:typeof document>"u"?require("url").pathToFileURL(__filename).href:un&&un.tagName.toUpperCase()==="SCRIPT"&&un.src||new URL("index.cjs.js",document.baseURI).href}<"u"&&void 0||"",gr="https://deep-index.moralis.io/api/v2.2",xr=async(e,n)=>{try{const s=m.getChainsForAssets(),o=m.getClientForChain(n),r=await jt.getBalance(o,{address:e}),a=s[n],i=parseFloat((Number(r)/Math.pow(10,18)).toFixed(6)),c=m.getChainConfig(n),d=c?.supportedTokens?.find(u=>z.isNativeToken(u.address));return{address:z.ZERO_ADDRESS,name:a.chain.nativeCurrency.name,symbol:a.chain.nativeCurrency.symbol,decimals:a.chain.nativeCurrency.decimals,balance:r,balanceFormatted:i,balanceUsd:0,logoURI:d?.logo||c?.logo,isNative:!0,chainId:n}}catch{const s=m.getChainsForAssets(),o=m.getChainConfig(n),r=o?.supportedTokens?.find(a=>z.isNativeToken(a.address));return{address:z.ZERO_ADDRESS,name:s[n].chain.nativeCurrency.name,symbol:s[n].chain.nativeCurrency.symbol,decimals:18,balance:BigInt(0),balanceFormatted:0,balanceUsd:0,logoURI:r?.logo||o?.logo,isNative:!0,chainId:n}}},Ds=async(e,n,s,o,r,a)=>{try{if(!U.isAddress(s))return null;const i=U.getAddress(s),c=U.isAddress(e)?U.getAddress(e):e,d=m.getClientForChain(n),u=await jt.readContract(d,{address:i,abi:m.z,functionName:"balanceOf",args:[c]}),h=parseFloat((Number(u)/Math.pow(10,a)).toFixed(6));return h>0?{address:i,name:o,symbol:r,decimals:a,balance:u,balanceFormatted:h,balanceUsd:0,logoURI:void 0,isNative:!1,chainId:n}:null}catch(i){return i?.message?.includes("checksum")||i?.message?.includes("Address")||i?.message?.includes("invalid"),null}},Ws=(e,n)=>{const s=m.getChainConfig(n);if(!s)return e;const o=new Set(e.map(a=>a.address.toLowerCase())),r=e.some(a=>a.isNative);for(const a of s.supportedTokens||[])z.isNativeToken(a.address)&&r||o.has(a.address.toLowerCase())||e.push({address:a.address,name:a.name,symbol:a.symbol,decimals:a.decimals,balance:BigInt(0),balanceFormatted:0,balanceUsd:0,logoURI:a.logo,isNative:z.isNativeToken(a.address),chainId:n});if(!e.find(a=>a.isNative)){const a=s.supportedTokens?.find(i=>z.isNativeToken(i.address));e.push({address:z.ZERO_ADDRESS,name:s.nativeCurrency.name,symbol:s.nativeCurrency.symbol,decimals:s.nativeCurrency.decimals,balance:BigInt(0),balanceFormatted:0,balanceUsd:0,logoURI:a?.logo||s.logo,isNative:!0,chainId:n})}return e},yr=async(e,n)=>{const s=[],o=await xr(e,n);o.balanceFormatted>0&&s.push(o);const r=(m.getChainConfig(n)?.supportedTokens||[]).filter(a=>!z.isNativeToken(a.address));if(r.length>0)try{const a=m.getClientForChain(n),i=U.getAddress(e),c=r.filter(p=>U.isAddress(p.address)).map(p=>({address:U.getAddress(p.address),abi:m.z,functionName:"balanceOf",args:[i]})),d=await a.multicall({contracts:c}),u=r.filter(p=>U.isAddress(p.address)),h=[];d.forEach((p,g)=>{if(p.status==="success"){const f=p.result;if(f&&f>0n){const x=u[g],b=parseFloat((Number(f)/Math.pow(10,x.decimals)).toFixed(6));b>0&&s.push({address:U.getAddress(x.address),name:x.name,symbol:x.symbol,decimals:x.decimals,balance:f,balanceFormatted:b,balanceUsd:0,logoURI:x.logo,isNative:!1,chainId:n})}}else h.push(u[g])});for(const p of h){const g=await Ds(e,n,p.address,p.name,p.symbol,p.decimals);g&&(g.logoURI=p.logo,s.push(g))}}catch{for(const a of r){const i=await Ds(e,n,a.address,a.name,a.symbol,a.decimals);i&&(i.logoURI=a.logo,s.push(i))}}return{tokens:Ws(s,n),chainId:n}},Cr=async(e,n)=>{const s=m.getChainsForAssets()[n];if(!s?.moralisName)throw new Error(`Moralis unsupported for chain ${n}`);if(!_n)throw new Error("MORALIS_API_KEY is missing");const o=[],r=(await(await import("axios")).default.get(`${gr}/wallets/${e}/tokens`,{params:{chain:s.moralisName},headers:{"X-API-Key":_n}})).data?.result||[];for(const a of r){const i=a.token_address,c=!!a.native_token||z.isNativeToken(i);if(!c&&!U.isAddress(i))continue;const d=parseInt(a.decimals||"18",10)||18,u=a.balance||"0",h=parseFloat(a.balance_formatted||(Number(u)/Math.pow(10,d)).toString());h<=0||o.push({address:c?z.ZERO_ADDRESS:U.getAddress(i),name:a.name||"Unknown",symbol:a.symbol||"UNKNOWN",decimals:d,balance:BigInt(u),balanceFormatted:h,balanceUsd:parseFloat(a.usd_value||"0"),logoURI:a.logo,isNative:c,chainId:n})}return{tokens:Ws(o,n),chainId:n}},Ns=async(e,n)=>{try{if(m.getChainsForAssets()[n]?.moralisName&&_n)try{return await Cr(e,n)}catch{}return await yr(e,n)}catch{return{tokens:[],chainId:n}}},es=async(e,n)=>{if(!e)throw new Error("Wallet address is required");const s=m.getChainsForAssets(),o=n&&n.length>0?new Set(n):null,r=Object.keys(s).map(Number).filter(c=>!o||o.has(c)),a=await Promise.allSettled(r.map(c=>Ns(e,c))),i={};return a.forEach((c,d)=>{c.status==="fulfilled"&&(i[r[d]]=c.value)}),i},ts=({address:e,supportedChains:n,fetchBalances:s,refreshInterval:o=0})=>{const[r,a]=l.useState([]),[i,c]=l.useState(!1),[d,u]=l.useState(null),h=l.useRef(!0),p=l.useRef(e),g=l.useRef(n),f=l.useRef(s);l.useEffect(()=>{p.current=e,g.current=n,f.current=s},[e,n,s]);const x=l.useCallback(async()=>{const C=p.current,k=g.current;if(!C){a([]);return}h.current&&c(!0),u(null);try{const I=m.getChainsForAssets(),v=Object.keys(I).map(Number).filter(w=>k.includes(w)),S=(await Promise.allSettled(v.map(async w=>{try{const A=await Ns(C,w);return A.tokens.map(j=>({...j,chainId:A.chainId}))}catch(A){return console.error(`Error fetching assets for chain ${w}:`,A),[]}}))).filter(w=>w.status==="fulfilled").flatMap(w=>w.value);a(S)}catch(I){const v=I instanceof Error?I.message:"Failed to fetch assets";u(v)}finally{h.current&&(c(!1),h.current=!1)}},[]),b=l.useCallback(C=>r.filter(k=>k.chainId===C),[r]),y=l.useCallback(()=>r.filter(C=>C.isNative),[r]);return l.useEffect(()=>{e&&(h.current=!0,x())},[e,x]),l.useEffect(()=>{if(!e||!o)return;const C=setInterval(()=>{x()},o);return()=>clearInterval(C)},[e,o]),{assets:r,loading:i,error:d,refreshAssets:x,getAssetsByChain:b,getNativeAssets:y}};var Us="data:image/png;base64,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",ns="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAQlBMVEVMaXGGl/+Elf+HmP+Hmf+Hl/+Gl/+Flv+Glv+Gl/+Gl/+Gl/////+On/+Akv/4+f/v8f/i5v+9x//S2P+tuP+erP+W3PvUAAAAC3RSTlMArBlx7Isy/vvOXbb4wDYAAAAJcEhZcwAACxMAAAsTAQCanBgAAALuSURBVHjarVfbtqsgDOxu0UBpkOv//+pJRC0i2HZ58uTeqzOEyYXkduvY/Tn8KSEBpFB/w3O8/WTjoCSS6dn4S6rha477QxFGS0nHM56ckJL/ox73b+CDQAQJujKiQxTDR4qH4LN109gP8Ti/uyI46K4BUagTLZ4Cz+CZAsWzhx/oeP3RyImhjf/7ePzmxF8Hr7+zNsP3eL7GkWH4Bc8MlQ7P3/DMsIvFKHRLPzBsTWVBizIfVNMBg9H7mLQxTRdUkb9tfJxebNZjywuJW1bf2xcw4WXtzDF5bVqXuJ9HwETHNnPYeHRii0THgcwQyBxTBDQ9Fx7dEBr0TOCDYyeS6aigsFsCQIFgBh9YiVgxQA7EqM9KiCiS95nh5WsGPZ4k8ZZFRqfoY4shy9i8AaExxRgTMgcApuSODPMdRtn02wc7Z9HkPMsPa1ZVOsiRygga4udfZ5vTKKx/7GIBVFJHCUy0r705DNu3LQ9kEQ6NxMTXwWzhUTD7xlJr2MLvrZCBVazy2OD0iaC4BGh1k4cSLOSbbIuujKW4wT76aYefrGswuBJSEoBeUnaFk7nQcKEIJZRXMPsfM95O3p3KKAoRa/cJTh0pHKMybSqyiO8wMsG0wzODi7UK9u0Ah7FIJAj1+UyQcl4Gqi2uax+L/siJVKQyi+j251sbMoHTZrUqlctiojDGRX27WpivYNtdi4upKme0c/gXBmdzY7ZoOi/cWDeU7MJy+oKn3hzbT9/cFKt6pmKe9udnCoTeG103VW7EjrGZJMOD863GNzfVQ0EDP6aJUH61wBRHGZa23npYDDpuh8EnpPBRS6UUQOg9r8enzaDdmhmsPkH/da3bokkr/i0dwMmYU7lg0pRrwiVzNrW+n/dKhVzVVIbGnE9Jj86IA8glk87h+xGnGrJyzXwYNvdD1uUx7/qgeX3UvT5sXx/3ry8c11ee60vX9bXvvXjWfsC3i+d79YV19+WPH1bf/7B8Lxy8/isBINTp+v8Ph4CTcAywkiYAAAAASUVORK5CYII=",br="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAPFBMVEVMaXGZhueZh+eYhuWXheWYh+eYhuaXheCYhuaah+j//fmhjvOSf+Sdi+q8sOzNxO/m4fT08fapmuja0/Jb/wGxAAAACnRSTlMArEz/IYtsA87sGIEBYwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAmJJREFUeNqtV4uSgyAMRIECGhTk///1otTKG3s2Mzdz03aXbEJIQkhuYv9jIx+komhKDnxk4v1F1wT+SoxcUj3PWu8Ex39U8lH4bzt4QthL6tlDA8OP5Iv1vMADGFc5+uRQnDWdEES81EwbNquXqDuBx8va6ZcXktUYBOkc/3GixsBvwA8neFGGGO7hdyeGAsMXeM/wBJ8ziLv6LwYeisD4f4lHhiAXmH9FvzYV3AchOw6At9gFKW4KANDbsttGoSyCKd1Ab4uxkzezhBQaRfQygHB3oj2FhjwT9QgifErM6jiOrQgAXe2UmcuiIKSuHG+mki2XCH0kYqzgF1vETyYszLFaxLBMNdsgDGNFAazRoUcwrDMlDYz28RS0newGcCRlDa8TK4YgxuORGj9x8NYVEsxjKQSp/pNAw5YRcJI/JP5nYeqxjAxeIfCeRQQDyWOos/y5xR2V4NIgYhRJVkjgpralBPcvQH4PsBxIX0DjJqKRdgYLtsYPUyqh60CsACXEQew7ECvAICZp7DqwQEIQXaR+CkzaoeKr3FewQdqg4mIy36VgLyZWz4G96N5vs8sKj0UPSlJGy4fAbWX88SgGQYgJVjDXi7JaaxYo9Oj4UQ0lrHCGdN25ceiEfNoZSfIomjhcKN26DarT0q4gaiyfe2C9u9hWNUBvRghbG+yd1AZNFFrjmu+ucXMF2j60OObE7f0m+mrv/5qQkimpO+IU8fKXQ9bDMe/5oPl81P3BsP183EeGu3GoLBw/WHnuLF20sXQ9X/ueL57PV99w+Z7P5Vvj8j3fXr7j9X/f/5Vsrv9/K3NM7mGXOq0AAAAASUVORK5CYII=",ss="data:image/svg+xml,%3csvg width='8' height='11' viewBox='57 6 8 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3e %3cpath d='M62.7081 13.27C62.742 13.27 62.7642 13.3057 62.7491 13.3362V13.336L61.1229 16.6083C61.0892 16.6761 60.9926 16.6759 60.959 16.6083L59.3382 13.336C59.3232 13.3057 59.3453 13.27 59.3792 13.27H62.7081Z' fill='%23EA4B4B'/%3e %3cpath d='M61.0026 9.71913C61.0194 9.68524 61.0678 9.68524 61.0845 9.71913L62.747 13.0897C62.762 13.12 62.7399 13.1557 62.706 13.1557H59.3763C59.3424 13.1557 59.3203 13.12 59.3353 13.0897L61.0026 9.71913Z' fill='%23EA4B4B'/%3e %3cpath d='M60.8426 9.63827C60.8766 9.63827 60.8987 9.6741 60.8835 9.70444L59.2164 13.0594C59.1995 13.0932 59.1513 13.0932 59.1345 13.0594L57.5001 9.77047C57.47 9.70962 57.5142 9.63827 57.5821 9.63827H60.8426Z' fill='%23EA4B4B'/%3e %3cpath d='M64.5036 9.63617C64.5715 9.63618 64.6157 9.70753 64.5855 9.76838H64.5854L62.9512 13.0573C62.9344 13.0911 62.8862 13.0912 62.8692 13.0573L61.2021 9.70235C61.187 9.672 61.2091 9.63617 61.2431 9.63617H64.5036Z' fill='%23EA4B4B'/%3e %3cpath d='M62.8284 6.18281C62.862 6.11518 62.9586 6.11518 62.9922 6.18281L64.5855 9.38969C64.6157 9.45054 64.5715 9.52189 64.5036 9.52189H61.2431C61.2091 9.52189 61.187 9.48605 61.2021 9.45571L62.8283 6.18265L62.8284 6.18281Z' fill='%23EA4B4B'/%3e %3cpath d='M62.3131 6.13196C62.381 6.13196 62.4252 6.20331 62.3951 6.26416C62.154 6.74935 61.9128 7.23455 61.6718 7.71975H61.6716C61.4225 8.22125 61.1733 8.72259 60.9242 9.22409C60.9074 9.25799 60.859 9.25799 60.8422 9.22409L60.6305 8.79587C60.6275 8.78957 60.6259 8.78263 60.6259 8.77553V6.22349C60.6259 6.17297 60.6668 6.13196 60.7173 6.13196H62.3131Z' fill='%23EA4B4B'/%3e%3c/svg%3e";const Gt=z.getChainMeta(1)?.logo??"";z.getChainMeta(42161)?.logo;const wn=z.TOKENS.find(e=>e.symbol==="USDC")?.logo??"";z.TOKENS.find(e=>e.symbol==="WBTC")?.logo;const zt=Object.fromEntries([...z.getMainnetChains(),...z.getTestnetChains()].map(e=>[e.id,e.logo])),vn={metamask:Us,metaMask:Us,rabby:ns,phantom:br},wr=Object.fromEntries(z.TOKENS.map(e=>[e.symbol,e.logo])),os=({symbol:e,logoURI:n,size:s=20,theme:o})=>{const{theme:r}=m.useSpiceBrand(),a=o||r,[i,c]=l.useState(!1),d={width:`${s}px`,height:`${s}px`,borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",fontSize:`${s*.4}px`,fontWeight:a.typography.fontWeight.bold,flexShrink:0,overflow:"hidden",backgroundColor:"#ffffff"},u=e.toUpperCase(),h=n||wr[u];if(h&&!i)return t.jsx("img",{src:h,alt:e,loading:"lazy",decoding:"async",style:{...d,objectFit:"cover"},onError:()=>c(!0)});const p=vr(e);return t.jsx("div",{style:{...d,...p.style},children:p.icon})},vr=e=>{const n=e.toUpperCase(),s={ETH:{bg:"#627EEA",text:"#FFFFFF",icon:"\u039E"},BTC:{bg:"#F7931A",text:"#FFFFFF",icon:"\u20BF"},USDC:{bg:"#2775CA",text:"#FFFFFF"},USDT:{bg:"#26A17B",text:"#FFFFFF"},DAI:{bg:"#F5AC37",text:"#FFFFFF"},WETH:{bg:"#627EEA",text:"#FFFFFF",icon:"\u039E"},WBTC:{bg:"#F09242",text:"#FFFFFF",icon:"\u20BF"},CBTC:{bg:"#F7931A",text:"#FFFFFF",icon:"\u20BF"},USD:{bg:"#26A17B",text:"#FFFFFF",icon:"$"},MATIC:{bg:"#8247E5",text:"#FFFFFF"},AVAX:{bg:"#E84142",text:"#FFFFFF"},SOL:{bg:"#9945FF",text:"#FFFFFF"},DOT:{bg:"#E6007A",text:"#FFFFFF"},ADA:{bg:"#0033AD",text:"#FFFFFF"},LINK:{bg:"#375BD2",text:"#FFFFFF"},UNI:{bg:"#FF007A",text:"#FFFFFF"},AAVE:{bg:"#B6509E",text:"#FFFFFF"},CRV:{bg:"#40E0D0",text:"#000000"}}[n];if(s)return{style:{backgroundColor:s.bg,color:s.text},icon:s.icon||n.charAt(0)};const o=n.split("").reduce((c,d)=>d.charCodeAt(0)+((c<<5)-c),0),r=Math.abs(o)%360,a=`hsl(${r}, 60%, 50%)`,i=r>180?"#FFFFFF":"#000000";return{style:{backgroundColor:a,color:i},icon:n.charAt(0)}},rn=(e,n=4)=>!isFinite(e)||e===0?"0":e<1e-4?"< 0.0001":e.toFixed(n),pn=e=>isFinite(e)?e>0&&e<.01?"<$0.01":new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",minimumFractionDigits:2,maximumFractionDigits:2}).format(e):"$0.00",kr=(e,n=6,s=4)=>e.length<=n+s?e:`${e.slice(0,n)}...${e.slice(-s)}`,zs=e=>{const n=e.replace(/[^0-9.]/g,""),s=n.split(".");return s.length>2?s[0]+"."+s.slice(1).join(""):n},kn=(e,n=6)=>!Number.isFinite(e)||e<=0?"0":e.toFixed(Math.min(Math.max(n,0),18)).replace(/\.?0+$/,""),Sr=async e=>{try{return await navigator.clipboard.writeText(e),!0}catch(n){return console.error("Failed to copy to clipboard:",n),!1}},Ir=new Set(["USDC","SUSD","USD","NUSD","USDT","DAI","ENUSD"]),Ps={ETH:"ethereum",WETH:"ethereum",BTC:"bitcoin",WBTC:"bitcoin",WCBTC:"bitcoin",CBTC:"bitcoin",ECBTC:"bitcoin",ARB:"arbitrum",MATIC:"matic-network",POL:"matic-network"};let Mn=null;const Ar=6e4;async function Ls(e){const n={},s=new Set,o={};for(const a of e){const i=a.toUpperCase();if(Ir.has(i))n[i]=1;else if(Ps[i]){const c=Ps[i];s.add(c),o[i]=c}else n[i]=0}if(s.size===0)return n;const r=Date.now();if(Mn&&r-Mn.timestamp<Ar){for(const[a,i]of Object.entries(o))n[a]=Mn.prices[i]??0;return n}try{const a=Array.from(s).join(","),i=await fetch(`https://api.coingecko.com/api/v3/simple/price?ids=${a}&vs_currencies=usd`);if(!i.ok)throw new Error(`CoinGecko ${i.status}`);const c=await i.json(),d={};for(const u of s)d[u]=c[u]?.usd??0;Mn={prices:d,timestamp:r};for(const[u,h]of Object.entries(o))n[u]=d[h]??0}catch(a){console.warn("[fetchTokenPrices] CoinGecko fetch failed:",a);for(const i of Object.keys(o))n[i]=n[i]??0}return n}function Er(e,n){return e.map(s=>{if(s.balanceUsd>0)return s;const o=n[s.symbol.toUpperCase()]??0;return{...s,balanceUsd:s.balanceFormatted*o}})}const jr=new Set(["cbtc","btc","wbtc","wcbtc","tbtc"]),Br=new Set(["usdc","usdt","dai","usdc.e","usdbc"]);async function Fr(){const e=(await Ls(["BTC"])).BTC;if(!e||e<=0)throw new Error("Failed to fetch BTC/USD price");return e}function Tr(e){return jr.has(e.toLowerCase())}function Rr(e){return Br.has(e.toLowerCase())}function Mr(e,n,s,o){const r=10n**12n,a=BigInt(Math.round(o*Number(r))),i=n-s,c=10n**BigInt(Math.abs(i));let d=e*a/r;return i>0?d=d/c:i<0&&(d=d*c),d}const fn=({size:e=20,strokeWidth:n=2,color:s="currentColor",style:o})=>t.jsxs("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",stroke:s,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",style:o,children:[t.jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),t.jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]});var rs="data:image/svg+xml,%3csvg width='108' height='22' viewBox='0 0 108 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M1.9916 11.9854V11.2041H3.98379C4.48835 11.2041 4.87897 11.0739 5.15566 10.8135C5.43236 10.5498 5.5707 10.1868 5.5707 9.72461V9.71484C5.5707 9.24935 5.43236 8.88639 5.15566 8.62598C4.87897 8.36556 4.48835 8.23535 3.98379 8.23535H1.9916V7.4541H4.2084C4.65111 7.4541 5.04173 7.5485 5.38027 7.7373C5.71882 7.92611 5.98411 8.18978 6.17617 8.52832C6.37148 8.86686 6.46914 9.25911 6.46914 9.70508V9.71484C6.46914 10.1608 6.37148 10.5547 6.17617 10.8965C5.98411 11.2383 5.71882 11.5052 5.38027 11.6973C5.04173 11.8893 4.65111 11.9854 4.2084 11.9854H1.9916ZM1.55215 14.5V7.4541H2.43106V14.5H1.55215ZM9.51875 14.5928C9.0207 14.5928 8.58939 14.4837 8.2248 14.2656C7.86348 14.0443 7.58353 13.7301 7.38496 13.3232C7.18965 12.9163 7.09199 12.4329 7.09199 11.873V11.8633C7.09199 11.3001 7.18965 10.8151 7.38496 10.4082C7.58353 10.0013 7.86348 9.6888 8.2248 9.4707C8.58939 9.2526 9.0207 9.14355 9.51875 9.14355C10.0201 9.14355 10.4514 9.2526 10.8127 9.4707C11.174 9.6888 11.4523 10.0013 11.6477 10.4082C11.8462 10.8151 11.9455 11.3001 11.9455 11.8633V11.873C11.9455 12.4329 11.8462 12.9163 11.6477 13.3232C11.4523 13.7301 11.174 14.0443 10.8127 14.2656C10.4514 14.4837 10.0201 14.5928 9.51875 14.5928ZM9.51875 13.8408C9.85078 13.8408 10.1324 13.7627 10.3635 13.6064C10.5946 13.4502 10.7704 13.2256 10.8908 12.9326C11.0145 12.6396 11.0764 12.2865 11.0764 11.873V11.8633C11.0764 11.4466 11.0145 11.0918 10.8908 10.7988C10.7704 10.5059 10.5946 10.2829 10.3635 10.1299C10.1324 9.97363 9.85078 9.89551 9.51875 9.89551C9.18672 9.89551 8.90514 9.97363 8.67402 10.1299C8.4429 10.2829 8.26549 10.5059 8.1418 10.7988C8.02135 11.0918 7.96113 11.4466 7.96113 11.8633V11.873C7.96113 12.2865 8.02135 12.6396 8.1418 12.9326C8.26549 13.2256 8.4429 13.4502 8.67402 13.6064C8.90514 13.7627 9.18672 13.8408 9.51875 13.8408ZM13.7842 14.5L12.3096 9.23633H13.1592L14.1943 13.4453H14.2725L15.4492 9.23633H16.2549L17.4316 13.4453H17.5098L18.5449 9.23633H19.3896L17.915 14.5H17.0605L15.8838 10.4277H15.8057L14.6338 14.5H13.7842ZM22.1658 14.5928C21.6645 14.5928 21.2332 14.4821 20.8719 14.2607C20.5138 14.0394 20.2371 13.7269 20.0418 13.3232C19.8497 12.9163 19.7537 12.4378 19.7537 11.8877V11.8828C19.7537 11.3392 19.8497 10.8623 20.0418 10.4521C20.2371 10.042 20.5122 9.72135 20.867 9.49023C21.2218 9.25911 21.6368 9.14355 22.1121 9.14355C22.5906 9.14355 23.0008 9.25423 23.3426 9.47559C23.6876 9.69694 23.9513 10.0062 24.1336 10.4033C24.3191 10.7972 24.4119 11.2562 24.4119 11.7803V12.1123H20.1932V11.4336H23.9773L23.5574 12.0537V11.7168C23.5574 11.3034 23.4956 10.9632 23.3719 10.6963C23.2482 10.4294 23.0773 10.2308 22.8592 10.1006C22.6411 9.96712 22.3904 9.90039 22.1072 9.90039C21.824 9.90039 21.5701 9.97038 21.3455 10.1104C21.1242 10.2471 20.9484 10.4505 20.8182 10.7207C20.688 10.9909 20.6229 11.3229 20.6229 11.7168V12.0537C20.6229 12.4281 20.6863 12.7487 20.8133 13.0156C20.9402 13.2793 21.1209 13.4827 21.3553 13.626C21.5896 13.766 21.8663 13.8359 22.1854 13.8359C22.423 13.8359 22.6297 13.8034 22.8055 13.7383C22.9813 13.6732 23.1261 13.5902 23.24 13.4893C23.354 13.3883 23.4337 13.2858 23.4793 13.1816L23.4988 13.1377H24.3484L24.3387 13.1768C24.2931 13.3558 24.2117 13.5299 24.0945 13.6992C23.9806 13.8652 23.8325 14.0166 23.6502 14.1533C23.4679 14.2868 23.2514 14.3942 23.0008 14.4756C22.7534 14.5537 22.4751 14.5928 22.1658 14.5928ZM25.4303 14.5V9.23633H26.2799V10.0176H26.358C26.4589 9.74089 26.6298 9.52604 26.8707 9.37305C27.1116 9.22005 27.4094 9.14355 27.7643 9.14355C27.8456 9.14355 27.9254 9.14844 28.0035 9.1582C28.0849 9.16471 28.1467 9.17122 28.1891 9.17773V10.0029C28.1012 9.98665 28.0149 9.97526 27.9303 9.96875C27.8489 9.95898 27.761 9.9541 27.6666 9.9541C27.3964 9.9541 27.1572 10.0078 26.9488 10.1152C26.7405 10.2227 26.5761 10.3724 26.4557 10.5645C26.3385 10.7565 26.2799 10.9811 26.2799 11.2383V14.5H25.4303ZM30.9408 14.5928C30.4395 14.5928 30.0082 14.4821 29.6469 14.2607C29.2888 14.0394 29.0121 13.7269 28.8168 13.3232C28.6247 12.9163 28.5287 12.4378 28.5287 11.8877V11.8828C28.5287 11.3392 28.6247 10.8623 28.8168 10.4521C29.0121 10.042 29.2872 9.72135 29.642 9.49023C29.9968 9.25911 30.4118 9.14355 30.8871 9.14355C31.3656 9.14355 31.7758 9.25423 32.1176 9.47559C32.4626 9.69694 32.7263 10.0062 32.9086 10.4033C33.0941 10.7972 33.1869 11.2562 33.1869 11.7803V12.1123H28.9682V11.4336H32.7523L32.3324 12.0537V11.7168C32.3324 11.3034 32.2706 10.9632 32.1469 10.6963C32.0232 10.4294 31.8523 10.2308 31.6342 10.1006C31.4161 9.96712 31.1654 9.90039 30.8822 9.90039C30.599 9.90039 30.3451 9.97038 30.1205 10.1104C29.8992 10.2471 29.7234 10.4505 29.5932 10.7207C29.463 10.9909 29.3979 11.3229 29.3979 11.7168V12.0537C29.3979 12.4281 29.4613 12.7487 29.5883 13.0156C29.7152 13.2793 29.8959 13.4827 30.1303 13.626C30.3646 13.766 30.6413 13.8359 30.9604 13.8359C31.198 13.8359 31.4047 13.8034 31.5805 13.7383C31.7563 13.6732 31.9011 13.5902 32.015 13.4893C32.129 13.3883 32.2087 13.2858 32.2543 13.1816L32.2738 13.1377H33.1234L33.1137 13.1768C33.0681 13.3558 32.9867 13.5299 32.8695 13.6992C32.7556 13.8652 32.6075 14.0166 32.4252 14.1533C32.2429 14.2868 32.0264 14.3942 31.7758 14.4756C31.5284 14.5537 31.2501 14.5928 30.9408 14.5928ZM36.1486 14.5928C35.7059 14.5928 35.3186 14.4805 34.9865 14.2559C34.6545 14.0312 34.3973 13.7155 34.215 13.3086C34.0328 12.8984 33.9416 12.4199 33.9416 11.873V11.8633C33.9416 11.3132 34.0328 10.8346 34.215 10.4277C34.3973 10.0208 34.6529 9.70508 34.9816 9.48047C35.3137 9.25586 35.7027 9.14355 36.1486 9.14355C36.3895 9.14355 36.6158 9.18262 36.8273 9.26074C37.0422 9.33561 37.2326 9.44141 37.3986 9.57812C37.5647 9.71484 37.6949 9.8776 37.7893 10.0664H37.8674V7.14648H38.717V14.5H37.8674V13.6602H37.7893C37.6818 13.8555 37.5467 14.0231 37.384 14.1631C37.2212 14.2998 37.0357 14.4056 36.8273 14.4805C36.619 14.5553 36.3928 14.5928 36.1486 14.5928ZM36.3439 13.8408C36.663 13.8408 36.938 13.7611 37.1691 13.6016C37.4003 13.4421 37.5777 13.2158 37.7014 12.9229C37.8251 12.6266 37.8869 12.2767 37.8869 11.873V11.8633C37.8869 11.4564 37.8251 11.1064 37.7014 10.8135C37.5777 10.5205 37.4003 10.2943 37.1691 10.1348C36.938 9.97526 36.663 9.89551 36.3439 9.89551C36.0249 9.89551 35.7499 9.97526 35.5188 10.1348C35.2909 10.291 35.1151 10.5156 34.9914 10.8086C34.871 11.1016 34.8107 11.4531 34.8107 11.8633V11.873C34.8107 12.2799 34.871 12.6315 34.9914 12.9277C35.1151 13.2207 35.2909 13.4469 35.5188 13.6064C35.7499 13.7627 36.0249 13.8408 36.3439 13.8408ZM45.1775 14.5928C44.9334 14.5928 44.7072 14.5553 44.4988 14.4805C44.2905 14.4056 44.1049 14.2998 43.9422 14.1631C43.7794 14.0231 43.6443 13.8555 43.5369 13.6602H43.4588V14.5H42.6092V7.14648H43.4588V10.0664H43.5369C43.6346 9.8776 43.7648 9.71484 43.9275 9.57812C44.0936 9.44141 44.2824 9.33561 44.4939 9.26074C44.7088 9.18262 44.9367 9.14355 45.1775 9.14355C45.6235 9.14355 46.0109 9.25586 46.3396 9.48047C46.6717 9.70508 46.9288 10.0208 47.1111 10.4277C47.2934 10.8346 47.3846 11.3132 47.3846 11.8633V11.873C47.3846 12.4199 47.2934 12.8984 47.1111 13.3086C46.9288 13.7155 46.6717 14.0312 46.3396 14.2559C46.0109 14.4805 45.6235 14.5928 45.1775 14.5928ZM44.9822 13.8408C45.3045 13.8408 45.5796 13.7627 45.8074 13.6064C46.0353 13.4469 46.2094 13.2207 46.3299 12.9277C46.4536 12.6315 46.5154 12.2799 46.5154 11.873V11.8633C46.5154 11.4531 46.4536 11.1016 46.3299 10.8086C46.2094 10.5156 46.0353 10.291 45.8074 10.1348C45.5796 9.97526 45.3045 9.89551 44.9822 9.89551C44.6632 9.89551 44.3881 9.97526 44.157 10.1348C43.9259 10.2943 43.7485 10.5205 43.6248 10.8135C43.5011 11.1064 43.4393 11.4564 43.4393 11.8633V11.873C43.4393 12.2767 43.5011 12.6266 43.6248 12.9229C43.7485 13.2158 43.9259 13.4421 44.157 13.6016C44.3881 13.7611 44.6632 13.8408 44.9822 13.8408ZM48.6568 16.3457C48.6015 16.3457 48.5396 16.3424 48.4713 16.3359C48.4029 16.3327 48.3395 16.3262 48.2809 16.3164V15.6182C48.3329 15.6279 48.3899 15.6344 48.4518 15.6377C48.5136 15.641 48.5738 15.6426 48.6324 15.6426C48.8733 15.6426 49.0702 15.5807 49.2232 15.457C49.3795 15.3333 49.5048 15.1201 49.5992 14.8174L49.6969 14.5049L47.7486 9.23633H48.6568L50.2779 14.0996L49.941 13.5674H50.3414L50.0045 14.0996L51.6207 9.23633H52.5143L50.4586 14.8223C50.3154 15.2161 50.164 15.5238 50.0045 15.7451C49.845 15.9665 49.6578 16.1211 49.443 16.209C49.2314 16.3001 48.9693 16.3457 48.6568 16.3457Z' fill='%230E0D0B'/%3e%3cpath d='M62.7081 13.27C62.742 13.27 62.7642 13.3057 62.7491 13.3362V13.336L61.1229 16.6083C61.0892 16.6761 60.9926 16.6759 60.959 16.6083L59.3382 13.336C59.3232 13.3057 59.3453 13.27 59.3792 13.27H62.7081Z' fill='%23EA4B4B'/%3e%3cpath d='M61.0026 9.71913C61.0194 9.68524 61.0678 9.68524 61.0845 9.71913L62.747 13.0897C62.762 13.12 62.7399 13.1557 62.706 13.1557H59.3763C59.3424 13.1557 59.3203 13.12 59.3353 13.0897L61.0026 9.71913Z' fill='%23EA4B4B'/%3e%3cpath d='M60.8426 9.63827C60.8766 9.63827 60.8987 9.6741 60.8835 9.70444L59.2164 13.0594C59.1995 13.0932 59.1513 13.0932 59.1345 13.0594L57.5001 9.77047C57.47 9.70962 57.5142 9.63827 57.5821 9.63827H60.8426Z' fill='%23EA4B4B'/%3e%3cpath d='M64.5036 9.63617C64.5715 9.63618 64.6157 9.70753 64.5855 9.76838H64.5854L62.9512 13.0573C62.9344 13.0911 62.8862 13.0912 62.8692 13.0573L61.2021 9.70235C61.187 9.672 61.2091 9.63617 61.2431 9.63617H64.5036Z' fill='%23EA4B4B'/%3e%3cpath d='M62.8284 6.18281C62.862 6.11518 62.9586 6.11518 62.9922 6.18281L64.5855 9.38969C64.6157 9.45054 64.5715 9.52189 64.5036 9.52189H61.2431C61.2091 9.52189 61.187 9.48605 61.2021 9.45571L62.8283 6.18265L62.8284 6.18281Z' fill='%23EA4B4B'/%3e%3cpath d='M62.3131 6.13196C62.381 6.13196 62.4252 6.20331 62.3951 6.26416C62.154 6.74935 61.9128 7.23455 61.6718 7.71975H61.6716C61.4225 8.22125 61.1733 8.72259 60.9242 9.22409C60.9074 9.25799 60.859 9.25799 60.8422 9.22409L60.6305 8.79587C60.6275 8.78957 60.6259 8.78263 60.6259 8.77553V6.22349C60.6259 6.17297 60.6668 6.13196 60.7173 6.13196H62.3131Z' fill='%23EA4B4B'/%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M74.8537 10.0096C75.2721 10.0096 75.654 10.1125 75.9993 10.3184C76.3513 10.5177 76.6303 10.8032 76.8361 11.1751C77.0487 11.547 77.1549 11.9953 77.1549 12.52V12.6495C77.1549 13.1675 77.052 13.6158 76.8461 13.9943C76.6402 14.3729 76.3613 14.6618 76.0093 14.861C75.664 15.0603 75.2788 15.1599 74.8537 15.1599C74.515 15.1599 74.2261 15.1134 73.9871 15.0204C73.7546 14.9341 73.5653 14.8212 73.4192 14.6817C73.2731 14.5423 73.1602 14.3995 73.0805 14.2534H72.941V16.9659L72.1541 16.0013V10.1491H72.9211V10.956H73.0352C73.2729 10.6733 73.3893 10.4911 73.6683 10.2985C73.9538 10.1059 74.349 10.0096 74.8537 10.0096ZM74.6445 10.7069C74.1464 10.7069 73.7347 10.8696 73.4092 11.195C73.0905 11.5138 72.9311 11.9621 72.9311 12.5399V12.6296C72.9311 13.2074 73.0905 13.659 73.4092 13.9844C73.7347 14.3032 74.1464 14.4626 74.6445 14.4626C75.1492 14.4626 75.5577 14.3032 75.8698 13.9844C76.1886 13.659 76.348 13.2074 76.348 12.6296V12.5399C76.348 11.9621 76.1886 11.5138 75.8698 11.195C75.5577 10.8696 75.1492 10.7069 74.6445 10.7069Z' fill='%230E0D0B'/%3e%3cpath d='M78.5848 11.9583L78.5555 15.4596L77.7681 14.4846V10.9583L78.5848 11.9583Z' fill='%230E0D0B'/%3e%3cpath d='M101.588 10.2986H102.444L103 10.986H101.588V10.9867H100.802L101.588 11.9623V14.1937C101.588 14.3929 101.685 14.4926 101.877 14.4926H102.379L102.928 15.17H101.668C101.389 15.17 101.173 15.0936 101.021 14.9409C100.874 14.7881 100.801 14.5789 100.801 14.3133V10.986H99.8799L99.3217 10.2986H100.801V9.13501H101.588V10.2986Z' fill='%230E0D0B'/%3e%3cpath d='M69.0133 7.90764C69.4848 7.90764 69.9065 7.99068 70.2784 8.15671C70.6569 8.3161 70.9525 8.55517 71.165 8.87395C71.3842 9.18609 71.4938 9.58126 71.4938 10.0594V10.4778H70.667V10.0594C70.667 9.72072 70.5939 9.44842 70.4477 9.24254C70.3083 9.03666 70.1124 8.88392 69.86 8.7843C69.6143 8.68469 69.332 8.63487 69.0133 8.63487C68.555 8.63487 68.1864 8.7378 67.9075 8.94367C67.6286 9.14291 67.4891 9.4285 67.4891 9.80041C67.4891 10.0461 67.5488 10.2453 67.6684 10.3981C67.7879 10.5508 67.9573 10.677 68.1764 10.7767C68.3956 10.8696 68.658 10.9527 68.9635 11.0257L69.4815 11.1552C69.8866 11.2416 70.2485 11.3611 70.5673 11.5138C70.8927 11.6599 71.1517 11.8625 71.3443 12.1215C71.5369 12.3739 71.6332 12.706 71.6332 13.1177C71.6332 13.5295 71.5303 13.8881 71.3244 14.1936C71.1185 14.4991 70.8263 14.7382 70.4477 14.9109C70.0758 15.0769 69.6375 15.1599 69.1328 15.1599C68.6281 15.1599 68.1765 15.0702 67.778 14.8909C67.3795 14.7116 67.0641 14.4426 66.8316 14.084C66.6058 13.7187 66.4929 13.2638 66.4929 12.7192V12.51H67.3197V12.7192C67.3197 13.297 67.4891 13.7287 67.8278 14.0143C68.1665 14.2932 68.6015 14.4327 69.1328 14.4327C69.6774 14.4327 70.0924 14.3098 70.378 14.0641C70.6636 13.8183 70.8064 13.5095 70.8064 13.1376C70.8064 12.8786 70.74 12.6727 70.6072 12.52C70.481 12.3673 70.3017 12.2444 70.0692 12.1514C69.8368 12.0518 69.5645 11.9655 69.2523 11.8924L68.7343 11.7629C68.3292 11.6566 67.9706 11.5271 67.6584 11.3744C67.3463 11.2216 67.1006 11.0224 66.9213 10.7767C66.7486 10.5243 66.6623 10.2022 66.6623 9.81035C66.6623 9.41852 66.7585 9.07981 66.9511 8.79424C67.1504 8.50866 67.426 8.28953 67.778 8.13678C68.1366 7.98404 68.5484 7.90764 69.0133 7.90764Z' fill='%230E0D0B'/%3e%3cpath d='M81.6544 10.0096C82.1193 10.0096 82.5145 10.0959 82.8399 10.2686C83.1719 10.4412 83.431 10.6704 83.6169 10.956C83.8095 11.2415 83.9324 11.5471 83.9855 11.8725L83.2185 12.0318C83.1853 11.7928 83.1056 11.5736 82.9794 11.3744C82.8598 11.1752 82.6905 11.0158 82.4713 10.8962C82.2521 10.7767 81.9832 10.7169 81.6644 10.7169C81.339 10.7169 81.0468 10.7899 80.7877 10.936C80.5354 11.0821 80.3328 11.2914 80.1801 11.5637C80.034 11.836 79.9609 12.1614 79.9609 12.5399V12.6296C79.9609 13.0081 80.034 13.3335 80.1801 13.6058C80.3328 13.8781 80.5354 14.0873 80.7877 14.2334C81.0468 14.3795 81.339 14.4526 81.6644 14.4526C82.1492 14.4526 82.5178 14.3264 82.7702 14.0741C83.0292 13.8217 83.1886 13.5095 83.2483 13.1376L84.0254 13.307C83.9523 13.6257 83.8195 13.9279 83.6269 14.2135C83.4343 14.4991 83.172 14.7282 82.8399 14.9009C82.5145 15.0735 82.1193 15.1599 81.6544 15.1599C81.1829 15.1599 80.7579 15.0603 80.3793 14.861C80.0074 14.6551 79.7119 14.363 79.4927 13.9844C79.2802 13.6059 79.1739 13.1575 79.1739 12.6395V12.5299C79.1739 12.0053 79.2802 11.557 79.4927 11.1851C79.7119 10.8066 80.0074 10.5177 80.3793 10.3184C80.7579 10.1126 81.1829 10.0096 81.6544 10.0096Z' fill='%230E0D0B'/%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M86.7515 10.0096C87.2097 10.0096 87.6149 10.1092 87.9668 10.3084C88.3188 10.501 88.5944 10.78 88.7937 11.1452C88.9929 11.5105 89.0925 11.9389 89.0925 12.4304V12.7889H85.1177C85.1377 13.3136 85.3071 13.7254 85.6258 14.0243C85.9446 14.3165 86.3431 14.4626 86.8212 14.4626C87.2396 14.4626 87.5617 14.3663 87.7875 14.1737C88.0133 13.9811 88.186 13.752 88.3056 13.4863L88.983 13.815C88.8833 14.0209 88.7439 14.2268 88.5646 14.4327C88.3919 14.6386 88.1628 14.8113 87.8772 14.9507C87.5983 15.0902 87.2396 15.1599 86.8013 15.1599C86.3099 15.1599 85.8782 15.057 85.5063 14.8511C85.1344 14.6386 84.8455 14.343 84.6396 13.9645C84.4337 13.5859 84.3307 13.1476 84.3307 12.6495V12.5299C84.3307 12.0252 84.4337 11.5836 84.6396 11.205C84.8455 10.8265 85.1311 10.5342 85.4963 10.3284C85.8616 10.1159 86.28 10.0096 86.7515 10.0096ZM86.7515 10.7069C86.3066 10.7069 85.9413 10.8331 85.6557 11.0855C85.3701 11.3378 85.1941 11.6898 85.1277 12.1414H88.2956C88.269 11.6898 88.113 11.3378 87.8274 11.0855C87.5485 10.8331 87.1898 10.7069 86.7515 10.7069Z' fill='%230E0D0B'/%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M97.1624 10.0096C97.6207 10.0096 98.0258 10.1092 98.3778 10.3084C98.7298 10.501 99.0054 10.78 99.2046 11.1452C99.4039 11.5105 99.5035 11.9389 99.5035 12.4304V12.7889H95.5287C95.5487 13.3136 95.718 13.7254 96.0368 14.0243C96.3555 14.3165 96.754 14.4626 97.2322 14.4626C97.6505 14.4626 97.9727 14.3663 98.1985 14.1737C98.4243 13.9811 98.5969 13.752 98.7165 13.4863L99.3939 13.815C99.2943 14.0209 99.1548 14.2268 98.9755 14.4327C98.8028 14.6386 98.5737 14.8113 98.2881 14.9507C98.0092 15.0902 97.6506 15.1599 97.2123 15.1599C96.7208 15.1599 96.2892 15.057 95.9172 14.8511C95.5453 14.6386 95.2564 14.343 95.0505 13.9645C94.8446 13.5859 94.7417 13.1476 94.7417 12.6495V12.5299C94.7417 12.0252 94.8446 11.5836 95.0505 11.205C95.2564 10.8265 95.542 10.5342 95.9073 10.3284C96.2725 10.1158 96.6909 10.0096 97.1624 10.0096ZM97.1624 10.7069C96.7175 10.7069 96.3522 10.8331 96.0666 11.0855C95.7811 11.3378 95.6051 11.6898 95.5387 12.1414H98.7066C98.68 11.6898 98.5239 11.3378 98.2383 11.0855C97.9594 10.8331 97.6008 10.7069 97.1624 10.7069Z' fill='%230E0D0B'/%3e%3cpath d='M92.2484 10.0594C92.6137 10.0594 92.9391 10.1358 93.2247 10.2885C93.5169 10.4413 93.7494 10.6671 93.9221 10.966C94.0947 11.2648 94.1811 11.6334 94.1811 12.0717V15.1458H93.394V12.1315C93.394 11.6467 93.2712 11.2947 93.0255 11.0755C92.7864 10.8564 92.461 10.7468 92.0492 10.7468C91.5777 10.7468 91.1925 10.8995 90.8936 11.205C90.6014 11.5105 90.4553 11.9655 90.4553 12.5698V15.1458H89.6683V10.1491H90.4354V10.9582H90.5361C90.7355 10.7018 90.8604 10.5342 91.1128 10.3483C91.3718 10.1557 91.7503 10.0594 92.2484 10.0594Z' fill='%230E0D0B'/%3e%3cpath d='M78.5932 10.9581H77.7681V10.1514H78.6L78.5932 10.9581Z' fill='%230E0D0B'/%3e%3c/svg%3e";const Os=["a[href]","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])",'[tabindex]:not([tabindex="-1"])'].join(","),Jt=({isOpen:e,onClose:n,title:s,subtitle:o,children:r,overlayContent:a,overlayDimmed:i=!0,styles:c,theme:d,maxWidth:u="522px",dark:h,footerLinkText:p,bannerSrc:g,bannerAlt:f})=>{const{theme:x,dark:b,dk:y,palette:C}=m.useSpiceBrand(c,h),k=h??b,I=d||x,v=c?.fontFamily||I.typography.fontFamily||'"Helvetica Neue", sans-serif',S=c?.primaryColor||I.colors.primary,w=l.useRef(null),A=l.useRef(null),j=l.useRef(null),E=l.useId(),[M,B]=l.useState(!1),[R,F]=l.useState(!1);if(l.useEffect(()=>{if(!e){F(!1);return}A.current=document.activeElement;const L=document.body.style.overflow;document.body.style.overflow="hidden";const W=requestAnimationFrame(()=>{const X=requestAnimationFrame(()=>F(!0));j.current=X}),Q=()=>{const X=w.current;X&&(X.querySelectorAll(Os)[0]??X).focus({preventScroll:!0})},O=X=>{if(X.key==="Escape"){X.stopPropagation(),n();return}if(X.key!=="Tab")return;const D=w.current;if(!D)return;const H=Array.from(D.querySelectorAll(Os)).filter(pe=>!pe.hasAttribute("aria-hidden"));if(H.length===0){X.preventDefault(),D.focus();return}const G=H[0],se=H[H.length-1],ee=document.activeElement;X.shiftKey&&ee===G?(X.preventDefault(),se.focus()):!X.shiftKey&&ee===se&&(X.preventDefault(),G.focus())},q=requestAnimationFrame(Q);return document.addEventListener("keydown",O),()=>{cancelAnimationFrame(q),cancelAnimationFrame(W),j.current&&cancelAnimationFrame(j.current),document.removeEventListener("keydown",O),document.body.style.overflow=L;const X=A.current;X&&typeof X.focus=="function"&&X.focus({preventScroll:!0})}},[e,n]),!e)return null;const T=!!g&&!M,N=f??"";return t.jsx("div",{style:{position:"fixed",inset:0,backgroundColor:k?"rgba(0,0,0,0.72)":"rgba(0,0,0,0.5)",display:"flex",alignItems:"center",justifyContent:"center",padding:"clamp(16px, 4vw, 48px)",zIndex:ln.modal,opacity:R?1:0,transition:`opacity ${Dt.normal} ${St.out}`},children:t.jsx("div",{ref:w,role:"dialog","aria-modal":"true","aria-labelledby":E,tabIndex:-1,style:{backgroundColor:C.shellBorder,borderRadius:"12px",padding:"5px",width:"100%",maxWidth:u,boxSizing:"border-box",boxShadow:"0 16px 48px rgba(0, 0, 0, 0.4)",outline:"none",transform:R?"scale(1)":"scale(0.96)",transition:`transform ${Dt.slow} ${St.out}`},children:t.jsxs("div",{style:{backgroundColor:C.shell,border:`1px solid ${C.shellInnerBorder}`,borderRadius:"9px",width:"100%",padding:"0",display:"flex",flexDirection:"column",position:"relative",overflow:"hidden"},children:[a&&i&&t.jsx("div",{style:{position:"absolute",inset:0,backgroundColor:"rgba(0, 0, 0, 0.4)",zIndex:5,pointerEvents:"none",borderRadius:"12px"},"aria-hidden":"true"}),T&&t.jsxs("div",{style:{position:"relative",width:"100%"},children:[t.jsx("img",{src:g,style:{width:"100%",height:"auto",display:"block",borderRadius:"6px 6px 0 0"},alt:N,"aria-hidden":N===""?"true":void 0,onError:()=>B(!0)}),t.jsx("button",{type:"button",onClick:n,"aria-label":"Close dialog",style:{position:"absolute",top:"8px",right:"8px",minWidth:"44px",minHeight:"44px",color:C.textPrimary,padding:"8px",backgroundColor:"transparent",borderRadius:"9999px",border:"none",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",zIndex:1},children:t.jsx(fn,{size:28,strokeWidth:2.5})})]}),t.jsxs("div",{style:{padding:"28px 28px 0 28px",position:"relative"},children:[!T&&t.jsx("button",{type:"button",onClick:n,"aria-label":"Close dialog",style:{position:"absolute",top:"10px",right:"10px",minWidth:"44px",minHeight:"44px",color:C.textSecondary,padding:"10px",backgroundColor:"transparent",borderRadius:"50%",border:"none",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",transition:"background-color 0.2s",fontSize:"18px",fontWeight:"600"},onMouseEnter:L=>{L.currentTarget.style.backgroundColor=k?`${S}1a`:"#f3f4f6"},onMouseLeave:L=>{L.currentTarget.style.backgroundColor="transparent"},children:t.jsx(fn,{size:24,strokeWidth:2.4})}),t.jsx("h2",{id:E,style:{fontSize:"22px",fontWeight:"700",color:C.textPrimary,margin:"0",fontFamily:v,lineHeight:"1.12"},children:s})]}),o&&t.jsx("div",{style:{padding:"11px 28px 13px 28px",fontSize:"12px",color:C.textSecondary,margin:"0",lineHeight:"1.35",fontFamily:v,borderBottom:k?`1px solid ${y.cardBorder}`:"1px solid #cdcfd1"},children:o}),r,t.jsxs("div",{style:{padding:"12px 28px",display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("img",{src:rs,alt:"","aria-hidden":"true",width:108,height:22,decoding:"async",style:{width:"108px",height:"22px",opacity:k?.85:1,filter:k?"brightness(0) invert(1)":"none",margin:0,display:"block"}}),t.jsx("a",{href:"https://spiceflow-docs.spicenet.io",target:"_blank",rel:"noopener noreferrer",style:{fontSize:"10px",color:C.textSecondary,textDecoration:"none",display:"flex",alignItems:"center",gap:"4px",fontFamily:v,lineHeight:"1"},children:t.jsx("span",{style:{color:S,textDecoration:"underline",fontWeight:"500"},children:p??"Learn more \u2192"})})]}),a]})})})};var Hs="data:image/svg+xml,%3csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M4.51484 1.22476C5.04689 0.494255 5.87167 0 6.83333 0C7.79352 0 8.62302 0.493038 9.15721 1.22447C10.0512 1.08473 10.9879 1.32154 11.6665 2.00014C12.3456 2.67921 12.5823 3.61677 12.4419 4.51135C13.1714 5.04616 13.6667 5.87042 13.6667 6.83333C13.6667 7.79624 13.1714 8.62051 12.4419 9.15532C12.5823 10.0499 12.3456 10.9875 11.6665 11.6665C10.986 12.3471 10.049 12.5769 9.15858 12.4403C8.62445 13.1728 7.79434 13.6667 6.83333 13.6667C5.86959 13.6667 5.04474 13.1705 4.50996 12.44C3.619 12.5772 2.68116 12.3475 2.00014 11.6665C1.31939 10.9858 1.08903 10.0476 1.23037 9.15532C0.501138 8.62162 0 7.79824 0 6.83333C0 5.86843 0.501137 5.04504 1.23037 4.51135C1.08903 3.61904 1.31939 2.68089 2.00014 2.00014C2.67986 1.32042 3.61766 1.08457 4.51484 1.22476ZM9.20928 5.95387C9.51334 5.74624 9.59152 5.33144 9.38389 5.02737C9.17626 4.72331 8.76145 4.64514 8.45739 4.85277L8.3995 4.89229C7.48372 5.51764 6.69012 6.30153 6.05487 7.20477L5.30449 6.45518C5.044 6.19497 4.62189 6.1952 4.36168 6.45569C4.10147 6.71618 4.10169 7.13829 4.36218 7.3985L5.7 8.73489C5.84693 8.88167 6.05387 8.95158 6.25971 8.924C6.46555 8.89641 6.64677 8.77448 6.74987 8.5942C7.34322 7.55668 8.16436 6.6674 9.1514 5.9934L9.20928 5.95387Z' fill='%23EA4B4B'/%3e%3c/svg%3e",Dr="data:image/png;base64,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",Wr="data:image/png;base64,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";const Nr=({size:e=20,active:n=!1,dark:s=!1})=>t.jsxs("svg",{width:e,height:e,viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[t.jsx("rect",{x:"2",y:"4",width:"16",height:"2",rx:"1",fill:n?s?"#e5e7eb":"#111827":s?"#9ca3af":"#374151"}),t.jsx("rect",{x:"4",y:"9",width:"12",height:"2",rx:"1",fill:n?s?"#e5e7eb":"#111827":"#9ca3af"}),t.jsx("rect",{x:"6",y:"14",width:"8",height:"2",rx:"1",fill:n?s?"#e5e7eb":"#111827":"#9ca3af"})]}),Qs=({checked:e,primaryColor:n="#ef4444",dark:s=!1})=>t.jsx("div",{style:{width:"18px",height:"18px",borderRadius:"4px",border:e?"none":`2px solid ${s?"#4b5563":"#d1d5db"}`,backgroundColor:e?n:"transparent",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,transition:Wt.interactive},children:e&&t.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:t.jsx("path",{d:"M2.5 6L5 8.5L9.5 3.5",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}),Ur=({isOpen:e,onClose:n,onTokenSelect:s,walletAddress:o,supportedChainIds:r,network:a,prefetchedAssets:i,styles:c,dark:d})=>{const[u,h]=l.useState(""),[p,g]=l.useState(null),[f,x]=l.useState(null),[b,y]=l.useState(!1),[C,k]=l.useState(new Set),[I,v]=l.useState([]),S=l.useRef(null),w=l.useContext(m.SpiceFlowProviderContext),A=a||w?.network||"testnet",j=w?.allowedTokens,{dark:E,primaryColor:M,dk:B}=m.useSpiceBrand(c,d),R=E?B.cardBg:"white",F=E?`${M}55`:"#F4A5A5",T=E?"0 4px 12px rgba(0, 0, 0, 0.4)":"0 4px 12px rgba(0, 0, 0, 0.15)",N=E?B.hoverBg:"#E9E9E9",L=E?B.hoverBg:"#f9fafb",W=E?B.textPrimary:"#374151",Q=E?B.textPrimary:"#111827",O=E?B.textSecondary:"#9ca3af",q=E?`${M}22`:"#FBDBDB",X=E?`${M}55`:"#F4A5A5",D=l.useMemo(()=>r||w?.supportedChainIds||z.getChainIdsByNetwork(A),[r,w?.supportedChainIds,A]),H=l.useMemo(()=>D.map(P=>{const oe=m.getChainConfig(P);return oe?{id:P,name:oe.displayName,icon:zt[P]||Gt}:null}).filter(Boolean),[D]),G=l.useMemo(()=>{const P=new Set,oe=new Set;for(const ce of D){const ae=m.getChainConfig(ce);if(ae){P.add(ae.nativeCurrency?.symbol?.toUpperCase()||"ETH");for(const he of ae.supportedTokens||[])P.add(he.symbol.toUpperCase()),oe.add(he.address.toLowerCase())}}return{symbols:P,addresses:oe}},[D]),se=i===void 0,{assets:ee,loading:pe}=ts({address:se?o:void 0,supportedChains:D,fetchBalances:es,refreshInterval:e?5e3:0}),V=i??(se?ee:[]),ye=i===null||se&&pe,$=l.useMemo(()=>{if(!V)return[];let P=V.filter(oe=>oe.isNative?!0:G.symbols.has(oe.symbol.toUpperCase())||G.addresses.has(oe.address.toLowerCase()));return j&&j.length>0&&(P=P.filter(oe=>j.includes(oe.symbol.toLowerCase())||oe.isNative&&j.includes("native"))),P},[V,G,j]);l.useEffect(()=>{if(!$||$.length===0){v([]);return}const P=$.filter(ae=>ae.balanceUsd===0&&ae.balanceFormatted>0).map(ae=>ae.symbol),oe=Array.from(new Set(P));if(oe.length===0){v($);return}let ce=!1;return Ls(oe).then(ae=>{ce||v(Er($,ae))}),()=>{ce=!0}},[$]);const fe=l.useMemo(()=>{let P=I.filter(oe=>oe.balanceUsd>=.01||oe.balanceFormatted>=1e-4||oe.balanceFormatted===0);if(C.size>0&&(P=P.filter(oe=>C.has(oe.chainId))),u.trim()){const oe=u.toLowerCase();P=P.filter(ce=>ce.name.toLowerCase().includes(oe)||ce.symbol.toLowerCase().includes(oe)||ce.address.toLowerCase().includes(oe))}return P.sort((oe,ce)=>{const ae=oe.balanceFormatted>0?1:0,he=ce.balanceFormatted>0?1:0;return he!==ae?he-ae:ce.balanceUsd!==oe.balanceUsd?ce.balanceUsd-oe.balanceUsd:ce.balanceFormatted-oe.balanceFormatted}),P},[I,u,C]),ke=P=>`${P.chainId}-${P.address}`;l.useEffect(()=>{const P=document.createElement("link");return P.href="https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@100;200;300;400;500;600;700&display=swap",P.rel="stylesheet",document.head.appendChild(P),()=>{document.head.removeChild(P)}},[]),l.useEffect(()=>{e||(h(""),g(null),y(!1),k(new Set))},[e]),l.useEffect(()=>{if(!b)return;const P=oe=>{S.current&&!S.current.contains(oe.target)&&y(!1)};return document.addEventListener("mousedown",P),()=>document.removeEventListener("mousedown",P)},[b]);const be=P=>{s(P)},me=P=>{k(oe=>{const ce=new Set(oe);return ce.has(P)?ce.delete(P):ce.add(P),ce})},ue=()=>{k(new Set)},de=C.size===0;return t.jsxs(Jt,{isOpen:e,onClose:n,title:"Select a Token",bannerSrc:Wr,bannerAlt:"Select token banner",styles:c,dark:E,children:[t.jsx("div",{style:{padding:"20px 20px"},children:t.jsx($n,{value:u,onChange:h,ariaLabel:"Search tokens",placeholder:"Search token name, symbol or address",dark:E,styles:c,endAdornment:t.jsxs("div",{ref:S,style:{position:"relative",flexShrink:0},children:[t.jsx("button",{onClick:()=>y(P=>!P),style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"5px",borderRadius:"3px",backgroundColor:b||!de?N:"transparent",border:"none",cursor:"pointer",transition:"background-color 0.15s"},children:t.jsx(Nr,{size:20,active:!de,dark:E})}),b&&t.jsxs("div",{style:{position:"absolute",top:"calc(100% + 8px)",right:0,backgroundColor:R,borderRadius:"8px",border:`1px solid ${F}`,boxShadow:T,padding:"8px",minWidth:"220px",zIndex:100},children:[t.jsxs("button",{onClick:ue,style:{width:"100%",display:"flex",alignItems:"center",gap:"10px",padding:"8px",borderRadius:"6px",backgroundColor:"transparent",border:"none",cursor:"pointer",transition:"background-color 0.15s"},onMouseEnter:P=>P.currentTarget.style.backgroundColor=L,onMouseLeave:P=>P.currentTarget.style.backgroundColor="transparent",children:[t.jsx(Qs,{checked:de,primaryColor:M,dark:E}),t.jsx("img",{src:Dr,alt:"All Networks",loading:"lazy",decoding:"async",width:20,height:20,style:{width:"20px",height:"20px",borderRadius:"4px",objectFit:"cover"}}),t.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"12px",fontWeight:600,letterSpacing:"0.5px",color:W},children:"ALL NETWORKS"})]}),H.map(P=>t.jsxs("button",{onClick:()=>me(P.id),style:{width:"100%",display:"flex",alignItems:"center",gap:"10px",padding:"8px",borderRadius:"6px",backgroundColor:"transparent",border:"none",cursor:"pointer",transition:"background-color 0.15s"},onMouseEnter:oe=>oe.currentTarget.style.backgroundColor=L,onMouseLeave:oe=>oe.currentTarget.style.backgroundColor="transparent",children:[t.jsx(Qs,{checked:C.has(P.id),primaryColor:M,dark:E}),t.jsx("img",{src:P.icon,alt:P.name,loading:"lazy",decoding:"async",width:20,height:20,style:{width:"20px",height:"20px",borderRadius:"50%"}}),t.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"12px",fontWeight:600,letterSpacing:"0.5px",color:W},children:P.name.toUpperCase()})]},P.id))]})]})})}),t.jsxs("div",{style:{padding:"0 32px 20px",display:"flex",flexDirection:"column",gap:"8px",maxHeight:"400px",overflowY:"auto"},children:[ye&&t.jsx("div",{style:{padding:"24px 8px",textAlign:"center",fontFamily:'"IBM Plex Mono", monospace',fontSize:"13px",color:O},children:"Loading balances..."}),!ye&&fe.length===0&&t.jsx("div",{style:{padding:"24px 8px",textAlign:"center",fontFamily:'"IBM Plex Mono", monospace',fontSize:"13px",color:O},children:"No tokens found"}),fe.map(P=>{const oe=ke(P),ce=p===oe,ae=f===oe,he=m.getChainConfig(P.chainId)?.displayName||`Chain ${P.chainId}`;return t.jsxs("button",{onClick:()=>be(P),onMouseEnter:()=>x(oe),onMouseLeave:()=>x(null),style:{width:"100%",display:"flex",alignItems:"center",gap:"16px",padding:"8px",borderRadius:"8px",backgroundColor:ce?q:"transparent",border:ce||ae?`1px solid ${X}`:"1px solid transparent",cursor:"pointer",transition:Wt.interactive},children:[t.jsx("div",{style:{flexShrink:0},children:t.jsx(os,{symbol:P.symbol,logoURI:P.logoURI,size:40})}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-start",gap:"2px",flex:1,minWidth:0},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px"},children:[t.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"15px",fontWeight:500,letterSpacing:"0.4px",color:Q,textAlign:"left"},children:P.name}),t.jsx("img",{src:Hs,alt:"","aria-hidden":"true",loading:"lazy",decoding:"async",width:14,height:14,style:{width:"14px",height:"14px"}})]}),t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[zt[P.chainId]&&t.jsx("img",{src:zt[P.chainId],alt:"",loading:"lazy",decoding:"async",width:14,height:14,style:{width:"14px",height:"14px",borderRadius:"50%"}}),t.jsxs("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"12px",fontWeight:400,color:O,textAlign:"left"},children:[P.symbol," \xB7 ",he]})]})]}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-end",gap:"2px",flexShrink:0},children:[P.balanceUsd>0&&t.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"16px",fontWeight:600,color:Q},children:pn(P.balanceUsd)}),t.jsxs("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"12px",fontWeight:400,color:O},children:[rn(P.balanceFormatted)," ",P.symbol]})]})]},oe)})]})]})};var zr="data:image/png;base64,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";const Vs=e=>{const n=(e.id||"").toLowerCase(),s=(e.name||"").toLowerCase();return n.startsWith("io.privy.wallet")||s.includes("privy wallet")},Pr=({dark:e,dk:n,primaryColor:s,disabled:o,onError:r})=>{const[a,i]=l.useState(!1),{connectWallet:c}=Bt.useConnectWallet({onSuccess:()=>{i(!1)},onError:d=>{i(!1),r(m.sanitizeError(d,"Failed to connect wallet."))}});return t.jsxs("button",{onClick:()=>{o||a||(i(!0),c({walletChainType:"ethereum-only"}))},disabled:o||a,style:{width:"100%",display:"flex",alignItems:"center",gap:"14px",padding:"10px",borderRadius:"8px",backgroundColor:a?e?n.hoverBg:"#f3f4f6":"transparent",border:`2px solid ${e?`${s}33`:`${s}55`}`,cursor:o||a?"not-allowed":"pointer",opacity:o?.6:1,transition:Wt.interactive},children:[t.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:e?n.cardBg:"#f3f4f6"},children:t.jsx("img",{src:vn.metamask,alt:"Browser wallet",style:{width:"26px",height:"26px",objectFit:"contain"}})}),t.jsx("span",{className:"ibm-plex-mono",style:{fontSize:"17px",fontWeight:500,letterSpacing:"0.4px",color:n.textPrimary,flex:1,textAlign:"left",fontFamily:'"IBM Plex Mono", monospace'},children:a?"Opening wallet picker...":"MetaMask / Browser Wallet"})]})},Lr=({isOpen:e,onClose:n,onWalletSelect:s,onContinue:o,requiredChainId:r,styles:a})=>{const{dark:i,primaryColor:c,dk:d,theme:u}=m.useSpiceBrand(a),h=l.useContext(m.SpiceFlowProviderContext),[p,g]=l.useState(null),[f,x]=l.useState(!1),[b,y]=l.useState(null),[C,k]=l.useState(!1),[I,v]=l.useState(null),[S,w]=l.useState("idle"),[A,j]=l.useState(null),[E,M]=l.useState(!1),[B,R]=l.useState(!1);l.useEffect(()=>{e||(y(null),k(!1),x(!1),v(null),M(!1))},[e]);const{address:F,chain:T,connector:N,isConnected:L}=gt.useAccount(),W=F,Q=L&&!!W,{connectors:O,connect:q}=gt.useConnect(),{disconnect:X}=gt.useDisconnect(),{switchChainAsync:D}=gt.useSwitchChain(),{reconnect:H}=gt.useReconnect(),G=l.useRef(new Map),se=l.useRef(!1),ee=z.getChainIdsByNetwork(h?.network||"testnet");l.useEffect(()=>{e&&!Q&&!se.current&&H()},[e,Q,H]),l.useEffect(()=>{e||(se.current=!1)},[e]);const pe=l.useCallback(async Z=>{if(G.current.has(Z)){const re=G.current.get(Z);w(re?"eligible":"ineligible"),M(!re);return}w("checking"),j(null);try{const re=await fetch(`https://portal-api.spicenet.io/api/v1/devnet/eligibility/admin?address=${Z}`,{method:"GET",headers:{"Content-Type":"application/json","X-Api-Key":"c1820ce3-48ef-497d-8f17-ea80d0b4a608"}});if(!re.ok)throw new Error(`Eligibility check failed with status ${re.status}`);const ge=(await re.json())?.isEligible||!1;G.current.set(Z,ge),w(ge?"eligible":"ineligible"),M(!ge)}catch(re){console.error("Eligibility check failed:",re),w("error"),j("Could not verify eligibility. Please retry.")}},[]);l.useEffect(()=>{e&&Q&&W&&w("eligible")},[e,Q,W,pe]);const V=l.useRef(T);l.useEffect(()=>{V.current=T},[T]);const ye=r?m.getChainConfig(r):null,$=r?zt[r]||Gt:T?.id&&zt[T.id]||Gt,fe=ye?.displayName||T?.name||`Chain ${T?.id||r}`,ke=T?.id?zt[T.id]||Gt:$,be=T?.name?T.name:T?.id?`Chain ${T.id}`:"Not detected",me=Z=>Z.type==="announced"||typeof Z.ready=="boolean"&&Z.ready?!0:Z.type==="injected"?typeof window<"u"&&!!window.ethereum:!0,ue=O.filter(Z=>{const re=Z.name.toLowerCase(),ge=(Z.id||"").toLowerCase();return h?.provider==="privy"&&Vs(Z)||["safe"].includes(Z.type)?!1:Z.type==="walletConnect"?!!Z?.options?.projectId:Z.type==="announced"?!0:Z.type==="injected"||["metamask","rabby","phantom","coinbase","trust","rainbow"].some(te=>re.includes(te)||ge.includes(te))?me(Z):!1}),de=async Z=>{if(!(C||f))try{if(k(!0),v(Z.uid),y(null),await q({connector:Z}),await new Promise(re=>setTimeout(re,500)),s&&s(Z.id),r){x(!0);try{if(T?.id!==r){await D({chainId:r});let re=0;const ge=20;for(;re<ge;){if(await new Promise(te=>setTimeout(te,100)),V.current?.id===r){y(null);break}re++}V.current?.id!==r&&y("Please switch to the correct network in your wallet to continue.")}}catch(re){console.error("Chain switch error:",re),re.code===4902||re.name==="ChainNotConfiguredError"?y("This network is not configured in your wallet. Please add it manually to continue."):re.code===4001?y("Network switch cancelled. Please switch manually in your wallet to continue."):y("Unable to switch network. Please switch manually in your wallet to continue.")}finally{x(!1)}}await new Promise(re=>setTimeout(re,800)),W&&w("eligible")}catch(re){console.error("Connection error:",re),m.isUserRejection(re)?y("Connection rejected. Please try again."):y(m.sanitizeError(re,"Failed to connect wallet."))}finally{k(!1),v(null)}},P=Z=>{if(Z.icon)return Z.icon;const re=(Z.name||"").toLowerCase();for(const[ge,te]of Object.entries(vn))if(re.includes(ge.toLowerCase()))return te;if(!Vs(Z)&&(Z.type==="injected"||Z.type==="announced")&&typeof window<"u"&&window.ethereum){const ge=window.ethereum;if(ge.isMetaMask)return vn.metamask;if(ge.isRabby)return vn.rabby;if(ge.isPhantom)return vn.phantom}return null},oe=async Z=>{if(!f){x(!0),y(null),R(!1);try{await D({chainId:Z});let re=0;const ge=20;for(;re<ge;){if(await new Promise(te=>setTimeout(te,100)),V.current?.id===Z){y(null);break}re++}V.current?.id!==Z&&y("Unable to switch to the correct network. Please switch manually in your wallet to continue.")}catch(re){console.error("Manual chain switch error:",re),re.code===4902||re.name==="ChainNotConfiguredError"?y("This network is not configured in your wallet. Please add it manually to continue."):re.code===4001?y("Network switch cancelled. Please switch manually in your wallet to continue."):y("Unable to switch network. Please switch manually in your wallet to continue.")}finally{x(!1)}}},ce=async()=>{if(!f){if(!r){R(Z=>!Z);return}x(!0),y(null);try{await D({chainId:r});let Z=0;const re=20;for(;Z<re;){if(await new Promise(ge=>setTimeout(ge,100)),V.current?.id===r){y(null);break}Z++}V.current?.id!==r&&y("Unable to switch to the correct network. Please switch manually in your wallet to continue.")}catch(Z){console.error("Manual chain switch error:",Z),Z.code===4902||Z.name==="ChainNotConfiguredError"?y("This network is not configured in your wallet. Please add it manually to continue."):Z.code===4001?y("Network switch cancelled. Please switch manually in your wallet to continue."):y("Unable to switch network. Please switch manually in your wallet to continue.")}finally{x(!1)}}},ae=async()=>{se.current=!0;try{await X()}finally{G.current.clear(),y(null),k(!1),x(!1),v(null),w("idle"),j(null),M(!1),R(!1)}},he=Q&&!f&&!C&&S==="eligible"&&(!r||T?.id===r),_=Q&&!f&&!C&&S==="eligible"&&r&&T?.id!==r;return t.jsxs(Jt,{isOpen:e,onClose:n,title:"Connect Wallet",styles:a,dark:i,bannerSrc:zr,bannerAlt:"Connect wallet banner",children:[r===421614&&!Q&&t.jsx("div",{style:{padding:"0 24px",marginTop:"20px"},children:t.jsxs("div",{style:{padding:"12px 16px",backgroundColor:i?d.infoBg:"#EFF6FF",borderRadius:"8px",border:`1px solid ${i?d.infoBorder:"#BFDBFE"}`,display:"flex",alignItems:"center",gap:"10px"},children:[t.jsx("div",{style:{width:"32px",height:"32px",borderRadius:"50%",backgroundColor:i?d.inputBg:"#DBEAFE",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:t.jsx("img",{src:ns,alt:"Rabby",style:{width:"20px",height:"20px",objectFit:"contain"}})}),t.jsxs("div",{style:{flex:1},children:[t.jsx("p",{style:{margin:"0 0 4px 0",color:i?d.infoText:"#1E40AF",fontSize:"13px",fontWeight:600},children:"Recommended Wallet"}),t.jsx("p",{style:{margin:0,color:i?d.infoText:"#1E3A8A",fontSize:"12px",lineHeight:"1.4",opacity:i?.85:1},children:"For Arbitrum Sepolia, we recommend using Rabby wallet instead of MetaMask for the best experience."})]})]})}),t.jsxs("div",{style:{padding:"0 24px 20px",display:"flex",flexDirection:"column",gap:"12px",marginTop:"20px"},children:[b&&t.jsxs("div",{style:{padding:"12px",backgroundColor:d.warningBg,borderRadius:"8px",border:`1px solid ${d.warningBorder}`},children:[t.jsx("p",{style:{margin:"0 0 10px 0",color:d.warningText,fontSize:"14px"},children:b}),t.jsx("button",{onClick:ce,disabled:f,style:{width:"100%",padding:"8px 12px",borderRadius:"6px",border:`1px solid ${i?d.warningBorder:"#fbbf24"}`,backgroundColor:i?d.cardBg:"white",cursor:f?"not-allowed":"pointer",fontWeight:600,fontSize:"13px",color:d.warningText,opacity:f?.6:1},children:f?"Switching...":"Try Switch Again"})]}),f&&t.jsxs("div",{style:{padding:"12px",backgroundColor:i?d.infoBg:"#dbeafe",borderRadius:"8px",display:"flex",alignItems:"center",gap:"10px",marginTop:"20px"},children:[t.jsx(m.Spinner,{size:20,color:i?d.infoText:"#3b82f6"}),t.jsx("p",{style:{margin:0,color:i?d.infoText:"#1e40af",fontSize:"14px"},children:"Switching network..."})]}),Q&&S==="checking"&&t.jsx("div",{style:{padding:"12px",backgroundColor:d.warningBg,borderRadius:"8px",border:`1px solid ${d.warningBorder}`},children:t.jsxs("p",{style:{margin:0,color:d.warningText,fontSize:"14px"},children:["Checking eligibility for ",W?.slice(0,6),"..."]})}),Q&&S==="error"&&t.jsxs("div",{style:{padding:"12px",backgroundColor:d.errorBg,borderRadius:"8px",border:`1px solid ${i?d.errorBorder:"#fecdd3"}`},children:[t.jsx("p",{style:{margin:0,color:i?d.errorText:"#b91c1c",fontSize:"14px"},children:A||"Eligibility check failed. Please try again."}),t.jsx("button",{onClick:()=>W&&pe(W),style:{marginTop:"10px",padding:"8px 12px",borderRadius:"6px",border:`1px solid ${i?d.errorBorder:"#e5e7eb"}`,backgroundColor:i?d.cardBg:"white",cursor:"pointer",fontWeight:600,color:i?d.errorText:"inherit"},children:"Retry eligibility check"})]}),Q&&r===421614&&N&&(N.name.toLowerCase().includes("metamask")||N.type==="injected")&&t.jsxs("div",{style:{padding:"12px 16px",backgroundColor:i?d.infoBg:"#EFF6FF",borderRadius:"8px",border:`1px solid ${i?d.infoBorder:"#BFDBFE"}`,display:"flex",alignItems:"center",gap:"10px"},children:[t.jsx("div",{style:{width:"32px",height:"32px",borderRadius:"50%",backgroundColor:i?d.inputBg:"#DBEAFE",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:t.jsx("img",{src:ns,alt:"Rabby",style:{width:"20px",height:"20px",objectFit:"contain"}})}),t.jsxs("div",{style:{flex:1},children:[t.jsx("p",{style:{margin:"0 0 4px 0",color:i?d.infoText:"#1E40AF",fontSize:"13px",fontWeight:600},children:"Recommended Wallet"}),t.jsx("p",{style:{margin:0,color:i?d.infoText:"#1E3A8A",fontSize:"12px",lineHeight:"1.4",opacity:i?.85:1},children:"For Arbitrum Sepolia, we recommend using Rabby wallet instead of MetaMask for the best experience."})]})]}),Q&&W?t.jsxs("div",{style:{border:`1px solid ${i?d.successBorder:"#02974F"}`,borderRadius:"8px",overflow:"hidden",marginTop:"20px"},children:[t.jsxs("div",{style:{backgroundColor:i?d.successBg:"#00FFA81C",padding:"14px 18px",display:"flex",alignItems:"center",justifyContent:"space-between"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[t.jsx("div",{style:{width:"22px",height:"22px",borderRadius:"50%",backgroundColor:"#02974F",display:"flex",alignItems:"center",justifyContent:"center",color:"white",fontSize:"14px",fontWeight:"bold"},children:"\u2713"}),t.jsx("span",{className:"ibm-plex-mono",style:{color:i?d.successText:"#02974F",fontWeight:600,fontSize:"14px",letterSpacing:"0.5px"},children:"WALLET CONNECTED"})]}),t.jsx("div",{style:{width:"38px",height:"38px",borderRadius:"50%",backgroundColor:i?d.cardBg:"#f3f4f6",display:"flex",alignItems:"center",justifyContent:"center",overflow:"hidden"},children:N&&P(N)?t.jsx("img",{src:P(N),alt:N.name,style:{width:"24px",height:"24px",objectFit:"contain"}}):t.jsx("span",{style:{fontSize:"16px",fontWeight:"bold",color:i?d.textPrimary:"inherit"},children:N?.name?.charAt(0)||"W"})})]}),t.jsxs("div",{style:{padding:"18px",backgroundColor:i?d.cardBg:"white"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"14px"},children:[t.jsx("span",{className:"ibm-plex-mono",style:{color:i?d.textSecondary:"#939291",fontSize:"13px",fontWeight:500,letterSpacing:"0.3px"},children:"ADDRESS:"}),t.jsxs("span",{className:"ibm-plex-mono",style:{color:i?d.textPrimary:"black",fontSize:"14px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.3px"},children:[W.slice(0,6),"...",W.slice(-4)]})]}),t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"16px"},children:[t.jsx("span",{className:"ibm-plex-mono",style:{color:i?d.textSecondary:"#939291",fontSize:"13px",fontWeight:500,letterSpacing:"0.3px"},children:"NETWORK:"}),t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px"},children:[t.jsx("img",{src:ke,alt:be,style:{width:"20px",height:"20px",borderRadius:"50%",objectFit:"contain"}}),t.jsx("span",{style:{color:i?d.textPrimary:"black",fontSize:"14px",fontWeight:500},children:be}),r&&T?.id===r?t.jsx("div",{style:{width:"16px",height:"16px",borderRadius:"50%",backgroundColor:"#02974F",display:"flex",alignItems:"center",justifyContent:"center",color:"white",fontSize:"10px",fontWeight:"bold"},children:"\u2713"}):r?t.jsx("div",{style:{width:"16px",height:"16px",borderRadius:"50%",backgroundColor:"#EF4444",display:"flex",alignItems:"center",justifyContent:"center",color:"white",fontSize:"10px",fontWeight:"bold"},children:"!"}):null,t.jsx("button",{onClick:ce,disabled:f,style:{background:"none",border:"none",color:i?c:"#3C3E42",fontSize:"11px",fontWeight:500,textDecoration:"underline",cursor:f?"not-allowed":"pointer",padding:0,marginLeft:"4px",opacity:f?.6:1},children:f?"Switching...":"Switch"})]})]}),B&&t.jsx("div",{style:{marginBottom:"12px",border:`1px solid ${i?d.inputBorder:"#E5E7EB"}`,borderRadius:"8px",overflow:"hidden",backgroundColor:d.cardBg},children:ee.map(Z=>{const re=m.getChainConfig(Z);if(!re)return null;const ge=T?.id===Z;return t.jsxs("button",{onClick:()=>{ge?R(!1):oe(Z)},style:{width:"100%",display:"flex",alignItems:"center",gap:"8px",padding:"10px 12px",backgroundColor:ge?i?`${c}15`:`${c}10`:"transparent",border:"none",borderBottom:`1px solid ${i?d.inputBorder:"#E5E7EB"}`,cursor:ge?"default":"pointer",transition:"background-color 0.15s"},onMouseEnter:te=>{ge||(te.currentTarget.style.backgroundColor=i?"rgba(255,255,255,0.05)":"rgba(0,0,0,0.03)")},onMouseLeave:te=>{te.currentTarget.style.backgroundColor=ge?i?`${c}15`:`${c}10`:"transparent"},children:[t.jsx("img",{src:zt[Z]||Gt,alt:re.displayName,style:{width:"20px",height:"20px",borderRadius:"50%",objectFit:"contain"}}),t.jsx("span",{style:{fontSize:"13px",fontWeight:ge?600:400,color:i?d.textPrimary:"#1f2937",fontFamily:'"IBM Plex Mono", monospace'},children:re.displayName}),ge&&t.jsx("span",{style:{marginLeft:"auto",fontSize:"11px",color:c,fontWeight:500},children:"Connected"})]},Z)})}),t.jsxs("button",{className:"ibm-plex-mono",onClick:ae,style:{width:"100%",padding:"10px",backgroundColor:"transparent",border:`1px solid ${i?d.inputBorder:"#E5E7EB"}`,borderRadius:"6px",cursor:"pointer",fontSize:"13px",fontWeight:500,color:i?d.textSecondary:"#9CA3AF",display:"flex",alignItems:"center",justifyContent:"center",gap:"6px"},children:[t.jsx("span",{style:{fontSize:"16px"},children:"\u27F2"}),"DISCONNECT"]})]})]}):t.jsxs(t.Fragment,{children:[h?.provider==="privy"&&t.jsx(Pr,{dark:i,dk:d,primaryColor:c,disabled:C||f,onError:y}),ue.map(Z=>{const re=me(Z),ge=I===Z.uid,te=!re||C||ge;return t.jsxs("button",{onClick:()=>{te||de(Z)},onMouseEnter:()=>!te&&g(Z.uid),onMouseLeave:()=>g(null),disabled:te,style:{width:"100%",display:"flex",alignItems:"center",gap:"14px",padding:"10px",borderRadius:"8px",backgroundColor:ge?i?d.hoverBg:"#f3f4f6":"transparent",border:p===Z.uid&&!te?`2px solid ${i?`${c}44`:`${c}66`}`:"2px solid transparent",cursor:te?"not-allowed":"pointer",opacity:te?.6:1,transition:Wt.interactive},children:[t.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:i?d.cardBg:"#f3f4f6"},children:P(Z)?t.jsx("img",{src:P(Z),alt:Z.name,style:{width:"26px",height:"26px",objectFit:"contain"}}):t.jsx("span",{style:{fontSize:"16px",fontWeight:"bold",color:i?d.textPrimary:"inherit"},children:Z.name.charAt(0)})}),t.jsxs("span",{className:"ibm-plex-mono",style:{fontSize:"17px",fontWeight:500,letterSpacing:"0.4px",color:te?i?d.inputPlaceholder:"#9ca3af":i?d.textPrimary:"#111827",flex:1,textAlign:"left",fontFamily:'"IBM Plex Mono", monospace'},children:[ge?"Connecting...":Z.name,!re&&!ge&&t.jsx("span",{style:{fontSize:"12px",marginLeft:"8px"},children:"(Not detected)"})]})]},Z.uid)})]})]}),_&&!b&&t.jsx("div",{style:{padding:"0 24px 20px"},children:t.jsxs("div",{style:{padding:"12px",backgroundColor:d.warningBg,borderRadius:"8px",border:`1px solid ${d.warningBorder}`},children:[t.jsxs("p",{style:{margin:"0 0 10px 0",color:d.warningText,fontSize:"14px"},children:["Please switch to ",fe," to continue."]}),t.jsx("button",{onClick:ce,disabled:f,style:{width:"100%",padding:"8px 12px",borderRadius:"6px",border:`1px solid ${i?d.warningBorder:"#fbbf24"}`,backgroundColor:i?d.cardBg:"white",cursor:f?"not-allowed":"pointer",fontWeight:600,fontSize:"13px",color:d.warningText,opacity:f?.6:1},children:f?"Switching...":"Switch Network"})]})}),t.jsx("div",{style:{padding:"0 24px 25px"},children:t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:async()=>{he&&(await new Promise(Z=>setTimeout(Z,300)),o?await o():n())},disabled:!he,theme:u,dark:i,styles:a,children:C?"CONNECTING...":f?"SWITCHING NETWORK...":S==="checking"?"CHECKING ELIGIBILITY...":"CONTINUE"})}),E&&t.jsx("div",{style:{position:"fixed",inset:0,backgroundColor:i?"rgba(0, 0, 0, 0.72)":"rgba(0, 0, 0, 0.55)",display:"flex",alignItems:"center",justifyContent:"center",padding:"16px",zIndex:60},children:t.jsxs("div",{style:{backgroundColor:i?d.cardBg:"white",borderRadius:"12px",padding:"28px",width:"100%",maxWidth:"420px",textAlign:"center",boxShadow:"0 20px 60px rgba(0, 0, 0, 0.18)"},children:[t.jsx("p",{className:"ibm-plex-mono",style:{fontSize:"14px",fontWeight:600,letterSpacing:"0.4px",color:"#EF4444",marginBottom:"10px"},children:"ACCESS BLOCKED"}),t.jsx("h3",{style:{margin:"0 0 12px",fontSize:"22px",fontWeight:600,color:i?d.textPrimary:"inherit"},children:"Sorry, you're not eligible"}),t.jsx("p",{style:{margin:"0 0 18px",color:i?d.textSecondary:"#4B5563"},children:"This wallet does not meet the eligibility requirements to deposit assets."}),t.jsx("button",{onClick:async()=>{G.current.clear(),await ae(),n()},style:{width:"100%",padding:"12px",borderRadius:"8px",border:"none",backgroundColor:i?"white":"#111827",color:i?"#111827":"white",fontWeight:600,cursor:"pointer"},children:"Disconnect wallet"})]})})]})},as=15,qs=({checkStepStatus:e,pollingInterval:n=1e3,retryStep:s,maxRetries:o=3})=>{const[r,a]=l.useState(null),i=l.useRef(null),c=l.useRef(!1),d=l.useRef(!1),u=l.useRef(null),h=l.useRef({}),p=l.useRef(0),g=l.useRef(0),f=l.useCallback(()=>{i.current&&(clearInterval(i.current),i.current=null)},[]),x=l.useCallback(()=>{u.current=null,a(null),h.current={},p.current=0,g.current=0,f()},[f]),b=l.useCallback((y,C)=>{f(),c.current=!1,d.current=!1,h.current={},p.current=0,g.current=0;const k={intentId:y,steps:C.map(v=>({...v,status:"pending"})),overallStatus:"processing"};u.current=k,a(k);const I=async()=>{if(c.current||d.current)return;d.current=!0,g.current+=1;const v=g.current;try{const S=u.current;if(!S)return;const w=S.steps.map(M=>({...M}));let A=!0,j=!1;for(let M=0;M<w.length;M++){const B=w[M];if(B.status!=="success"){if((B.stepId===0||M>0&&w[M-1].status==="success")&&(B.status==="pending"||B.status==="processing"))try{const R=await e(y,B.stepId);if(p.current=0,R.data.status==="success")w[M]={...B,status:"success",transactionHash:R.data.transactionHash},M+1<w.length&&w[M+1].status==="pending"&&(w[M+1]={...w[M+1],status:"processing"});else if(R.data.status==="executing"||R.data.status==="created")w[M]={...B,status:"processing"};else if(R.data.status==="reverted"){const F=h.current[B.stepId]||0;if(s&&F<o){h.current[B.stepId]=F+1;try{await s(y,B.stepId)}catch(T){console.error(`[useStatus] Retry failed for step ${B.stepId}:`,T)}w[M]={...B,status:"processing"}}else w[M]={...B,status:"failed",transactionHash:R.data.transactionHash},j=!0}else w[M]={...B,status:"processing"}}catch(R){p.current+=1,console.error(`[useStatus] Poll #${v}: Error checking step ${B.stepId} (consecutive errors: ${p.current}/${as}):`,R),p.current>=as&&(console.error(`[useStatus] Too many consecutive polling errors (${as}). Marking step ${B.stepId} as failed.`),w[M]={...B,status:"failed"},j=!0)}w[M].status!=="success"&&(A=!1)}}const E={...S,steps:w,overallStatus:j?"failed":A?"success":"processing"};u.current=E,a(E),(A||j)&&(c.current=!0,f())}finally{d.current=!1}};I(),i.current=setInterval(I,n)},[e,n,f,s,o]);return l.useEffect(()=>()=>{f()},[f]),{intentStatus:r,startStatusPolling:b,stopStatusPolling:f,clearStatus:x}},Or=()=>{const[e,n]=l.useState(!1);let s=null,o=null;try{s=Cn.useDynamicContext()}catch(f){o=f instanceof Error?f.message:String(f)}if(l.useEffect(()=>{n(!0)},[]),o)return{isReady:!1,isAuthenticated:!1,isConnected:!1,provider:"dynamic",actions:{signAuthorization:async()=>{throw new Error("Dynamic context not available")},signMessage:async()=>{throw new Error("Dynamic context not available")},getEthereumProvider:async()=>{throw new Error("Dynamic context not available")}}};const{user:r,primaryWallet:a,connectedWallets:i}=s||{},c=Xt.getDynamicEmbeddedWallet({connectedWallets:i,primaryWallet:a})||a,d=!!r,u=c?.address,h={isReady:e&&!!s,isAuthenticated:d,isConnected:d&&!!u,address:u,provider:"dynamic"},p=async f=>{if(!c)throw new Error("Dynamic embedded wallet not available");const{isEthereumWallet:x}=await import("@dynamic-labs/ethereum");if(!x(c))throw new Error("Embedded wallet is not an Ethereum wallet");const b=await c.getWalletClient();if(!b)throw new Error("Dynamic wallet client not available");return{signature:await b.signMessage({message:f,account:c.address})}},g=async()=>{if(!u)throw new Error("Dynamic embedded wallet not available");await m.ensureSmartWallet(u,p)};return{...h,actions:{signAuthorization:async f=>{if(!c)throw new Error("Dynamic embedded wallet not available");await g();const{isEthereumWallet:x}=await import("@dynamic-labs/ethereum");if(!x(c))throw new Error("Embedded wallet is not an Ethereum wallet");const b=c.connector,y={address:c.address,chainId:f.chainId,contractAddress:f.contractAddress,nonce:f.nonce},C={address:f.contractAddress,chainId:f.chainId,nonce:f.nonce},k=typeof b?.getWaasWalletClient=="function"?await b.getWaasWalletClient():null;if(k&&typeof k.signRawMessage=="function"){const{hashAuthorization:I}=await import("viem/experimental"),{parseSignature:v}=await import("viem"),S={address:f.contractAddress,chainId:f.chainId,nonce:f.nonce},w=b.getSignedSessionId,A=typeof w=="function"?await w.call(b):void 0,j=b.getAuthToken,E=typeof j=="function"?j.call(b):void 0,M=await k.signRawMessage({accountAddress:c.address,authToken:E,context:{eip7702Auth:S},message:I(S).slice(2),signedSessionId:A}),B=v(M);return{address:y.contractAddress,chainId:y.chainId,contractAddress:y.contractAddress,nonce:BigInt(y.nonce),r:B.r,s:B.s,yParity:Number(B.yParity)}}if(typeof b?.signAuthorization=="function"){typeof b.switchNetwork=="function"&&await b.switchNetwork({networkChainId:f.chainId});const I=await b.signAuthorization(C);return Xt.normalizeAuthorization(I,y)}throw new Error("Dynamic embedded wallet does not support EIP-7702 authorization. Ensure @dynamic-labs packages are v4.15+.")},signMessage:async f=>{if(!(typeof f=="object"&&"raw"in f))return p(f);if(await g(),!c)throw new Error("Dynamic embedded wallet not available");const x=await c.getWalletClient();if(!x)throw new Error("Dynamic wallet client not available");return{signature:await x.signMessage({message:{raw:f.raw},account:c.address})}},getEthereumProvider:async()=>{if(!c)throw new Error("Dynamic embedded wallet not available");const{isEthereumWallet:f}=await import("@dynamic-labs/ethereum");if(!f(c))throw new Error("Embedded wallet is not an Ethereum wallet");return Xt.getProviderEthereumProvider(c)}}}},Vt=()=>{const e=l.useContext(m.SpiceFlowProviderContext),n=e?.mode||"7702";let s=null,o=null;try{s=Bt.useWallets(),{user:o}=Bt.usePrivy()}catch{s=null}const r=Bt.getEmbeddedConnectedWallet(s?.wallets||[])?.address,a=o?.wallet?.address;let i=null;try{i=Cn.useDynamicContext()}catch{i=null}const c=(Xt.getDynamicEmbeddedWallet(i)||i?.primaryWallet)?.address;if(!(!e||n!=="7702"))return e.provider==="privy"?r??a:e.provider==="dynamic"?c:r??a??c},Hr=()=>{const e=l.useContext(m.SpiceFlowProviderContext)?.mode,{isConnected:n,address:s}=gt.useAccount();let o=null,r=null,a=null,i=null,c=null;try{o=Bt.usePrivy(),r=Bt.useSign7702Authorization(),a=Bt.useSignMessage(),i=Bt.useWallets()}catch(C){c=C instanceof Error?C.message:String(C)}if(c)return e==="ondemand"&&n&&s?{isReady:!0,isAuthenticated:!0,isConnected:!0,address:s,provider:"privy",actions:{signAuthorization:async()=>{throw new Error("Not available in ondemand mode")},signMessage:async()=>{throw new Error("Not available in ondemand mode")},getEthereumProvider:async()=>{throw new Error("Not available in ondemand mode")}}}:{isReady:!1,isAuthenticated:!1,isConnected:!1,provider:null,actions:{signAuthorization:async()=>{throw new Error("Privy not available")},signMessage:async()=>{throw new Error("Privy not available")},getEthereumProvider:async()=>{throw new Error("Privy not available")}}};const{ready:d=!1,authenticated:u=!1}=o||{},h=Vt(),p=Bt.getEmbeddedConnectedWallet(i?.wallets||[]),g=h||p?.address,f=!!g&&!!p,x={isReady:e==="ondemand"?!0:d,isAuthenticated:e==="ondemand"?!0:u||f,isConnected:e==="ondemand"?n&&!!s||d&&(u||f)&&f:d&&f,address:e==="ondemand"&&!h&&n?s:g,provider:"privy"},b=async C=>{if(a)try{return{signature:(await a.signMessage({message:C})).signature}}catch(S){if(!p)throw S}if(!p)throw new Error("Privy sign message not available");const k=await p.getEthereumProvider(),{createWalletClient:I,custom:v}=await import("viem");return{signature:await I({account:p.address,transport:v(k)}).signMessage({account:p.address,message:C})}},y=async()=>{if(!g)throw new Error("Embedded wallet not available for smart wallet setup");await m.ensureSmartWallet(g,b)};return{...x,actions:{signAuthorization:async C=>{if(!r)throw new Error("Privy sign authorization not available");try{await y();const k=await r.signAuthorization({contractAddress:C.contractAddress,chainId:C.chainId,nonce:C.nonce},{address:g});return delete k.v,k}catch(k){const I=k?.message||String(k);throw I.includes("not configured")||I.includes("chain")?new Error(`Chain ${C.chainId} is not configured in PrivyProvider. Add this chain to your Privy dashboard or supportedChainIds.`):k}},signMessage:async C=>{if(typeof C=="object"&&"raw"in C){if(await y(),!p)throw new Error("Embedded wallet not available for raw signing");const k=await p.getEthereumProvider(),{createWalletClient:I,custom:v}=await import("viem");return{signature:await I({account:p.address,transport:v(k)}).signMessage({account:p.address,message:C})}}return b(C)},getEthereumProvider:async()=>{if(!p)throw new Error("Embedded wallet not available");return p.getEthereumProvider()}}}},qt=()=>{const e=l.useContext(m.SpiceFlowProviderContext)?.provider,n=Hr(),s=Or();return e==="privy"?n:e==="dynamic"?s:{isReady:!1,isAuthenticated:!1,isConnected:!1,provider:null,actions:{signAuthorization:async()=>{throw new Error("No wallet provider available")},signMessage:async()=>{throw new Error("No wallet provider available")},getEthereumProvider:async()=>{throw new Error("No wallet provider available")}}}},Ht=e=>e?.address?{address:e.address,wallet:e,getWalletClient:n=>Xt.getProviderWalletClient(e,n),getEthereumProvider:n=>Xt.getProviderEthereumProvider(e,n)}:null,Sn=()=>{const e=l.useContext(m.SpiceFlowProviderContext),{address:n,connector:s}=gt.useAccount();let o=null,r=null;try{o=Bt.useWallets(),{user:r}=Bt.usePrivy()}catch{o=null,r=null}let a=null;try{a=Cn.useDynamicContext()}catch{a=null}const i=o?.wallets||[],c=Bt.getEmbeddedConnectedWallet(i),d=c?.address?.toLowerCase(),u=i.find(I=>I.connectorType!=="embedded"&&I.address?.toLowerCase()!==d),h=Xt.getDynamicEmbeddedWallet(a),p=Xt.getDynamicExternalWallet(a),g=n&&s?{address:n,connector:s,getEthereumProvider:()=>s.getProvider()}:null,f=e?.provider,x=Ht(c)||Ht(h),b=Ht(g)||Ht(u)||Ht(p)||null,y=f==="dynamic"?Ht(h):f==="privy"?Ht(c):x,C=f==="dynamic"?Ht(g)||Ht(p):f==="privy"?Ht(g)||Ht(u):b,k=f==="dynamic"?y?.address:f==="privy"?y?.address||r?.wallet?.address:x?.address||r?.wallet?.address;return{embeddedWallet:y,externalWallet:C,embeddedAddress:k,externalAddress:C?.address}},is=({color:e})=>t.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:[t.jsx("circle",{cx:"7",cy:"7",r:"6.5",stroke:e,strokeWidth:"1.2"}),t.jsx("path",{d:"M7 6v4",stroke:e,strokeWidth:"1.2",strokeLinecap:"round"}),t.jsx("circle",{cx:"7",cy:"4.5",r:"0.7",fill:e})]}),Qr=({content:e,label:n="More info",textColor:s="#f9fafb",backgroundColor:o="#111827",borderColor:r="rgba(255,255,255,0.08)",accentColor:a="#9ca3af",children:i})=>{const c=l.useId(),[d,u]=l.useState(!1),h=l.useRef(null),[p,g]=l.useState(!1),[f,x]=l.useState(null);l.useEffect(()=>{g(!0)},[]),l.useLayoutEffect(()=>{if(!d||!h.current)return;const y=()=>{if(!h.current)return;const C=h.current.getBoundingClientRect(),k=Math.min(220,window.innerWidth-48),I=Math.min(Math.max(C.left+C.width/2,24+k/2),window.innerWidth-24-k/2),v=C.top>84;x({top:v?C.top-10:C.bottom+10,left:I,placement:v?"top":"bottom"})};return y(),window.addEventListener("scroll",y,!0),window.addEventListener("resize",y),()=>{window.removeEventListener("scroll",y,!0),window.removeEventListener("resize",y)}},[d]);const b=d&&p&&f?bn.createPortal(t.jsxs("span",{id:c,role:"tooltip",style:{position:"fixed",left:f.left,top:f.top,transform:f.placement==="top"?"translate(-50%, -100%)":"translate(-50%, 0)",width:"220px",maxWidth:"min(220px, calc(100vw - 48px))",padding:"10px 12px",borderRadius:"10px",backgroundColor:o,color:s,border:`1px solid ${r}`,boxShadow:"0 18px 45px rgba(0,0,0,0.28)",fontSize:"11px",lineHeight:"1.45",fontWeight:500,textAlign:"left",zIndex:ln.tooltip,pointerEvents:"none"},children:[e,t.jsx("span",{"aria-hidden":"true",style:{position:"absolute",left:"50%",width:"10px",height:"10px",transform:"translateX(-50%) rotate(45deg)",backgroundColor:o,...f.placement==="top"?{bottom:"-6px",borderRight:`1px solid ${r}`,borderBottom:`1px solid ${r}`}:{top:"-6px",borderTop:`1px solid ${r}`,borderLeft:`1px solid ${r}`}}})]}),document.body):null;return t.jsxs(t.Fragment,{children:[t.jsx("span",{ref:h,style:{position:"relative",display:"inline-flex",alignItems:"center",justifyContent:"center",flexShrink:0},onMouseEnter:()=>u(!0),onMouseLeave:()=>u(!1),children:t.jsx("button",{type:"button","aria-label":n,"aria-describedby":d?c:void 0,onFocus:()=>u(!0),onBlur:()=>u(!1),style:{width:"18px",height:"18px",borderRadius:"999px",display:"inline-flex",alignItems:"center",justifyContent:"center",border:`1px solid ${r}`,backgroundColor:"transparent",color:a,cursor:"help",padding:0,outline:"none",boxShadow:d?`0 0 0 2px ${a}26`:"none",transition:"border-color 120ms ease, box-shadow 120ms ease, color 120ms ease"},children:i||t.jsx(is,{color:a})})}),b]})},Ys=(e,n,s,o)=>({width:e,height:e,fill:"none",className:n,"aria-hidden":s??!0,style:o}),$t=({size:e=16,color:n="currentColor",strokeWidth:s=2,direction:o="down",className:r,style:a,"aria-hidden":i})=>t.jsx("svg",{...Ys(e,r,i,{transform:o==="up"?"rotate(180deg)":void 0,transition:"transform 0.3s ease",...a}),viewBox:"0 0 16 16",children:t.jsx("path",{d:"M4 6L8 10L12 6",stroke:n,strokeWidth:s,strokeLinecap:"round",strokeLinejoin:"round"})}),Ks=({size:e=14,color:n="currentColor",strokeWidth:s=2,className:o,style:r,"aria-hidden":a})=>t.jsx("svg",{...Ys(e,o,a,r),viewBox:"0 0 16 16",children:t.jsx("path",{d:"M3 8L6.5 11.5L13 5",stroke:n,strokeWidth:s,strokeLinecap:"round",strokeLinejoin:"round"})});function Dn(e,n){if(e===0n)return"0";const s=10n**BigInt(n),o=e/s,r=(e%s).toString().padStart(n,"0").slice(0,6).replace(/0+$/,"");return r?o===0n&&/^0+$/.test(r)?"< 0.000001":`${o.toString()}.${r}`:o.toString()}function Wn(e,n,s){const o=`${Dn(e,n)} ${s}`;return e===0n?o:`-${o}`}const Nn=({fontFamily:e,textPrimary:n,textSecondary:s,cardBg:o,cardBorder:r,resolvedDark:a,darkCardBorder:i,primaryColor:c,feePreview:d,isLoading:u,errorText:h,directExecutionFeeNote:p=!1})=>{const g=a?i??r:"#e5e7eb",f=a?"#111214":"#111827",x=a?"rgba(255,255,255,0.08)":"rgba(17,24,39,0.12)",b="#f87171",y=a?"#d1d5db":"#4b5563",C=a?"#f3f4f6":n,[k,I]=l.useState(!1),v=!!h,S=v?null:d,w=S?[{label:"Total Required",help:"Total amount required to fund this action.",value:`${Dn(S.grossAmount,S.decimals)} ${S.symbol}`,tone:"default"},{label:"Spicenet Fee",help:"Fees paid to Spicenet for intent processing and execution.",value:Wn(S.spicenetFee,S.decimals,S.symbol),tone:"fee"},{label:"Gas Fee",help:"Gas fee shown in the same token you are using for this action.",value:Wn(S.gasFee,S.decimals,S.symbol),tone:"fee"},...S.bridgeFee&&S.bridgeFee>0n?[{label:"Bridge Fee",help:"Estimated cost to rebalance liquidity for this action.",value:Wn(S.bridgeFee,S.decimals,S.symbol),tone:"fee"}]:[],{label:"Used in TX",help:"Resulting amount of funds used in the transaction.",value:`${Dn(S.netAmount,S.decimals)} ${S.symbol}`,tone:"default"}]:[];S&&Wn(S.totalFee??0n,S.decimals,S.symbol);const A=S?`${Dn(S.grossAmount,S.decimals)} ${S.symbol}`:null;return v?t.jsx("div",{style:{backgroundColor:o,border:`1px solid ${r}`,borderRadius:a?"8px":"7px",padding:"14px 16px 12px 16px",marginBottom:"16px",boxShadow:a?"inset 0 1px 0 rgba(255,255,255,0.03)":"none"},children:t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"10px"},children:[t.jsx("span",{style:{fontSize:"17px",fontWeight:500,color:y,fontFamily:e,lineHeight:"24px"},children:"Fee"}),t.jsx("div",{style:{color:b,fontSize:"12px",lineHeight:"1.55",fontFamily:e},children:h})]})}):t.jsxs("div",{style:{backgroundColor:o,border:`1px solid ${r}`,borderRadius:a?"8px":"7px",padding:"14px 16px 12px 16px",marginBottom:"16px",boxShadow:a?"inset 0 1px 0 rgba(255,255,255,0.03)":"none"},children:[t.jsxs("button",{type:"button",onClick:()=>I(j=>!j),style:{display:"flex",justifyContent:"space-between",alignItems:"center",width:"100%",gap:"12px",marginBottom:k?"14px":0,background:"none",border:"none",padding:0,cursor:"pointer",textAlign:"left"},children:[t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[t.jsx("span",{style:{fontSize:"17px",fontWeight:500,color:y,fontFamily:e,lineHeight:"24px"},children:"Fee"}),k&&t.jsx("span",{style:{fontSize:"12px",color:s,fontFamily:e,lineHeight:"1.45"},children:"What is funded, spent, and taken as fees"})]}),t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",flexShrink:0},children:[A&&!p&&t.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-end",gap:"2px",minWidth:0},children:[t.jsx("span",{style:{fontSize:"10px",fontWeight:700,color:s,fontFamily:e,letterSpacing:"0.08em",textTransform:"uppercase"},children:"Total required"}),t.jsx("span",{style:{fontSize:"14px",fontWeight:700,color:C,fontFamily:e,whiteSpace:"nowrap"},children:A})]}),u&&!p&&t.jsx("span",{style:{fontSize:"11px",fontWeight:600,color:c,fontFamily:e,padding:"6px 9px",borderRadius:"999px",backgroundColor:a?"rgba(255,255,255,0.04)":"rgba(0,0,0,0.035)",border:`1px solid ${a?g:"rgba(0,0,0,0.06)"}`,whiteSpace:"nowrap"},children:"Recalculating"}),t.jsx($t,{color:s,direction:k?"up":"down",style:{flexShrink:0}})]})]}),t.jsx("div",{style:{overflow:"hidden",maxHeight:k?"480px":"0px",opacity:k?1:0,transition:"max-height 0.24s ease, opacity 0.18s ease"},children:p?t.jsx("p",{style:{margin:0,color:s,fontSize:"12px",lineHeight:"1.55",fontFamily:e},children:"This path executes directly from the external wallet. Network gas is paid in-wallet, so Spicenet cannot pre-estimate that gas or charge a Spicenet fee here."}):w.length>0?t.jsxs(t.Fragment,{children:[t.jsx("div",{style:{display:"grid",gap:"10px"},children:w.map((j,E)=>t.jsxs("div",{style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr) auto",alignItems:"center",gap:"12px",paddingTop:E===0?0:"10px",borderTop:E===0?"none":`1px solid ${g}`,opacity:u?.74:1,transition:"opacity 120ms ease"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",minWidth:0},children:[t.jsx("span",{style:{fontSize:"12px",color:s,fontFamily:e,fontWeight:500},children:j.label}),t.jsx(Qr,{content:j.help,label:`${j.label} info`,textColor:"#f9fafb",backgroundColor:f,borderColor:x,accentColor:a?"#8f96a3":"#6b7280"})]}),t.jsx("span",{style:{fontSize:"12px",color:j.tone==="fee"?b:C,fontFamily:'"IBM Plex Mono", monospace',textAlign:"right",fontWeight:j.label==="Used in TX"?600:500,letterSpacing:"-0.01em"},children:j.value})]},j.label))}),t.jsx("div",{style:{marginTop:"12px",paddingTop:"12px",borderTop:`1px solid ${g}`,fontSize:"11px",color:s,fontFamily:e,lineHeight:"1.45"},children:S?.gasQuoteSource==="estimated"?"Gas quote uses a live estimate.":S?.gasQuoteSource==="configured_fallback"?"Gas quote uses a configured fallback.":"Gas quote is currently zero."})]}):t.jsx("div",{style:{fontSize:"12px",color:h?b:s,fontFamily:e,opacity:h?1:.8,lineHeight:"1.5"},children:h||"Waiting for fee estimate..."})})]})};function Vr(e,n){switch(e){case"success":return{bg:n.successBg,border:n.successBorder,text:n.successText};case"warning":return{bg:n.warningBg,border:n.warningBorder,text:n.warningText};case"error":return{bg:n.errorBg,border:n.errorBorder,text:n.errorText};case"info":return{bg:n.infoBg,border:n.infoBorder,text:n.infoText}}}const hn=({variant:e,palette:n,children:s,icon:o,style:r,fontFamily:a,size:i="default"})=>{const c=Vr(e,n),d=i==="compact";return t.jsxs("div",{role:e==="error"?"alert":"status",style:{backgroundColor:c.bg,border:`1px solid ${c.border}`,borderRadius:d?"7px":"8px",padding:d?"8px 10px":"12px 16px",color:c.text,fontSize:d?"12px":"13px",lineHeight:d?1.4:1.5,display:"flex",alignItems:"flex-start",gap:d?"6px":"8px",fontFamily:a,...r},children:[o&&t.jsx("span",{style:{flexShrink:0,display:"flex",alignItems:"center"},children:o}),t.jsx("span",{style:{minWidth:0,overflowWrap:"anywhere"},children:s})]})},Zs='"IBM Plex Mono", monospace',mn=({label:e,value:n,palette:s,valueColor:o,labelColor:r,style:a})=>t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:"12px",...a},children:[t.jsx("span",{style:{fontSize:"12px",color:r??s.textSecondary,fontFamily:Zs,fontWeight:500,letterSpacing:"0.03em",flexShrink:0,whiteSpace:"nowrap"},children:e}),t.jsx("span",{style:{fontSize:"13px",color:o??s.textPrimary,fontWeight:500,fontFamily:Zs,minWidth:0,textAlign:"right",overflowWrap:"anywhere"},children:n})]}),ls=({onClick:e,label:n="Add Funds",color:s,fontFamily:o,style:r})=>{const[a,i]=l.useState(!1);return t.jsxs("button",{type:"button",onClick:e,"data-spiceflow-focus":!0,onMouseEnter:()=>i(!0),onMouseLeave:()=>i(!1),style:{background:"none",border:"none",cursor:"pointer",padding:0,display:"inline-flex",alignItems:"center",gap:"4px",color:s,fontSize:"12px",fontWeight:500,fontFamily:o,textDecoration:"underline",textUnderlineOffset:"2px",whiteSpace:"nowrap",opacity:a?.75:1,transition:"opacity 150ms ease",...r},children:[n,t.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:"1.8","aria-hidden":"true",children:[t.jsx("circle",{cx:"6",cy:"6",r:"5"}),t.jsx("path",{d:"M6 4v4M4 6h4",strokeLinecap:"round"})]})]})},qr=({isOpen:e,onClose:n,onConfirm:s,data:o,isExecuting:r=!1,error:a=null,theme:i,styles:c,intentStatus:d,postDepositStatus:u="idle",hasPostDepositInstruction:h=!1})=>{const{dark:p,dk:g,theme:f}=m.useSpiceBrand(c),[x,b]=l.useState(!1),[y,C]=l.useState(!0);l.useEffect(()=>{e||b(!1)},[e]);const k=()=>{b(!0),setTimeout(()=>{n()},300)},I=()=>{C(!y)};if(!e||!o)return null;const v=d?.overallStatus==="processing",S=d?.overallStatus==="success",w=!!d,A=!w&&h,j=A&&u==="executing",E=A&&u==="success",M=S&&h&&(u==="idle"||u==="executing")||j,B=S&&(!h||u==="success"||u==="error")||E||A&&u==="error",R=p?g.cardBg:"#ffffff",F=p?"0 -4px 20px rgba(0, 0, 0, 0.4)":"0 -4px 20px rgba(0, 0, 0, 0.15)",T=g.textSecondary,N=p?g.textPrimary:"#1f2937",L=p?g.textPrimary:"#1f2937";return t.jsxs("div",{style:{position:"absolute",bottom:0,left:0,right:0,zIndex:10,animation:x?"slideDown 0.3s ease-in":"slideUp 0.3s ease-out",pointerEvents:"auto"},children:[t.jsxs("div",{style:{backgroundColor:R,borderRadius:"0",width:"100%",maxWidth:"522px",margin:"0 auto",padding:"18px 24px",boxShadow:F},children:[!S&&!E&&t.jsxs(t.Fragment,{children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:i.spacing.md},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",cursor:"pointer"},onClick:I,children:[t.jsx("span",{style:{fontSize:"13px",fontWeight:i.typography.fontWeight.medium,color:T,fontFamily:c?.fontFamily||i.typography.fontFamily},children:"Transaction Details"}),t.jsx($t,{color:T,direction:y?"up":"down"})]}),t.jsx("button",{onClick:W=>{W.stopPropagation(),n()},style:{background:"none",border:"none",cursor:"pointer",padding:"4px",display:"flex",alignItems:"center",justifyContent:"center",color:T,transition:"color 0.2s ease"},onMouseEnter:W=>{W.currentTarget.style.color=L},onMouseLeave:W=>{W.currentTarget.style.color=T},children:t.jsx(fn,{size:16})})]}),t.jsxs("div",{style:{marginBottom:i.spacing.lg,display:"flex",flexDirection:"column",gap:i.spacing.md,overflow:"hidden",maxHeight:y?"200px":"0px",opacity:y?1:0,transition:"max-height 0.3s ease, opacity 0.3s ease"},children:[t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:T,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"NETWORK"}),t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:N,fontFamily:'"IBM Plex Mono", monospace'},children:o.network})]}),t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:T,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"DEPOSITED AMOUNT"}),t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:i.colors.success,fontFamily:'"IBM Plex Mono", monospace'},children:o.amount})]}),o.creditedAmount&&t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:T,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"CREDITED AMOUNT"}),t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:N,fontFamily:'"IBM Plex Mono", monospace'},children:o.creditedAmount})]}),o.spicenetFee&&t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:T,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"SPICENET FEE"}),t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:N,fontFamily:'"IBM Plex Mono", monospace'},children:o.spicenetFee})]}),o.networkFee&&t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:T,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"EST. GAS FEE"}),t.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:N,fontFamily:'"IBM Plex Mono", monospace'},children:o.networkFee})]})]})]}),a&&!w&&t.jsx("div",{style:{marginBottom:i.spacing.md,padding:i.spacing.md,backgroundColor:c?.errorMessage?.backgroundColor||(i.mode==="light"?"#fef2f2":`${i.colors.error}20`),border:`1px solid ${c?.errorMessage?.borderColor||(i.mode==="light"?"#fecaca":i.colors.error)}`,borderRadius:c?.errorMessage?.borderRadius||i.borderRadius.md},children:t.jsx("p",{style:{color:c?.errorMessage?.color||i.colors.error,fontSize:c?.errorMessage?.fontSize||i.typography.fontSize.sm,margin:0,fontFamily:c?.errorMessage?.fontFamily||c?.fontFamily||i.typography.fontFamily},children:a})}),t.jsx(m.Button,{onClick:B?k:s,variant:"outline",fullWidth:!0,disabled:r||v||M||j,styles:c,theme:f,children:r||v||j||M?"PROCESSING...":B?"CONTINUE \u2192":"CONFIRM DEPOSIT"}),B&&t.jsx("p",{style:{marginTop:i.spacing.md,marginBottom:0,fontSize:"14px",color:T,textAlign:"center",fontFamily:c?.fontFamily||i.typography.fontFamily},children:"Your funds are now available in your Account"}),t.jsx("div",{style:{marginTop:i.spacing.md,display:"flex",justifyContent:"center",alignItems:"center"},children:t.jsx("img",{src:rs,alt:"Powered by SpiceNet",style:{height:"auto",width:"130px",opacity:1,filter:p?"brightness(0) invert(1) opacity(0.7)":"none"}})})]}),t.jsx("style",{children:`
3
3
  @keyframes slideUp {
4
4
  from {
5
5
  transform: translateY(100%);
@@ -16,7 +16,7 @@
16
16
  transform: translateY(100%);
17
17
  }
18
18
  }
19
- `})]})},Zr=({intentStatus:e,postDepositSuccess:n=!1,postDepositAmount:s=null,postDepositStatus:o="idle",depositActionLabel:r="Post-Deposit Instruction",sourceChainName:a="Source Chain",directDepositStatus:i="idle",directDepositTxHash:c=null,directDepositChainId:l=null,styles:u})=>{const{dark:p,dk:f}=m.useSpiceBrand(u),[x,h]=d.useState([]),g=d.useRef(null),b=p?f.cardBg:"#ffffff",C=p?f.textPrimary:"#374151",y=p?`${f.cardBorder}`:"rgba(255, 255, 255, 0.2)",w=f.textSecondary,v=p?f.successBg||"#064e3b":"#d1fae5",k=p?f.successText||"#6ee7b7":"#065f46",A=p?f.successBorder||"#065f4633":"#75FFD036",S=p?f.errorBg||"#7f1d1d":"#fecaca",T=p?f.errorText||"#fca5a5":"#991b1b",N=p?f.errorBorder||"#991b1b33":"#FCA5A536",I=e?.overallStatus==="processing",E=e?.overallStatus==="success",j=E&&o!=="idle",B=r;return d.useEffect(()=>((i==="success"&&!I&&!E||n&&!I)&&(g.current=setTimeout(()=>{h([])},6e3)),()=>{g.current&&clearTimeout(g.current)}),[i,n,I,E]),d.useEffect(()=>{const U=[];if(i==="processing"&&U.push({id:"direct-processing",type:"direct-processing",content:"PROCESSING DEPOSIT...",borderColor:y,backgroundColor:b,textColor:C,icon:t.jsx(m.Spinner,{size:20,borderWidth:3,color:w})}),i==="success"){const D=c&&l?m.getExplorerUrl(l,c):void 0;U.push({id:"direct-success",type:"direct-success",content:"DEPOSIT CONFIRMED",borderColor:A,backgroundColor:v,textColor:k,explorerUrl:D!=="#"?D:void 0,icon:t.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[t.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),t.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})})}if(I&&U.push({id:"processing",type:"processing",content:"VERIFYING TRANSACTION SIGNATURE",borderColor:y,backgroundColor:b,textColor:C,icon:t.jsx(m.Spinner,{size:20,borderWidth:3,color:w})}),E&&(U.push({id:"submitted",type:"submitted",content:"SUBMITTED TRANSACTION TO BLOCKCHAIN",borderColor:A,backgroundColor:v,textColor:k,icon:t.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[t.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),t.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})}),U.push({id:"deposit-success",type:"deposit-success",content:`DEPOSIT TO ${a.toUpperCase()} SUCCESSFUL`,borderColor:A,backgroundColor:v,textColor:k,icon:t.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[t.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),t.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})})),j){const D=o==="success"?A:o==="error"?N:y,P=o==="success"?v:o==="error"?S:b,L=o==="success"?k:o==="error"?T:C;let O="";o==="executing"?O=`EXECUTING ${B.toUpperCase()}...`:o==="success"?O=`${B.toUpperCase()} CONFIRMED`:o==="error"&&(O=`${B.toUpperCase()} FAILED`);let z;o==="executing"?z=t.jsx(m.Spinner,{size:20,borderWidth:3,color:w}):o==="success"?z=t.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[t.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),t.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]}):o==="error"&&(z=t.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[t.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#ef4444"}),t.jsx("path",{d:"M6 6l8 8M14 6l-8 8",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round"})]})),U.push({id:"post-deposit",type:"post-deposit",content:O,status:o,borderColor:D,backgroundColor:P,textColor:L,icon:z})}n&&s&&U.push({id:"post-deposit-success",type:"post-deposit-success",content:`SUCCESSFULLY DEPOSITED ${s}`,borderColor:A,backgroundColor:v,textColor:k,icon:t.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[t.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),t.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})}),h(D=>{const P=new Set(U.map(z=>z.id)),L=[],O=new Set;for(const z of D)if(P.has(z.id)){const q=U.find(_=>_.id===z.id);L.push(q),O.add(z.id)}for(const z of U)O.has(z.id)||L.push(z);if(L.length>3){const z=[],q=[];for(const F of L)F.type==="processing"||F.type==="post-deposit"&&F.status==="executing"?z.push(F):q.push(F);const _=[...z],K=3-_.length;return K>0&&q.length>0&&_.push(...q.slice(-K)),_}return L})},[I,E,j,o,n,s,B,a,i,c,l,p]),x.length===0?null:t.jsxs("div",{style:{position:"absolute",top:"56px",left:"24px",right:"24px",zIndex:100,display:"flex",flexDirection:"column",gap:"8px",pointerEvents:"none"},children:[x.map(U=>t.jsx("div",{style:{borderRadius:"12px",border:`4px solid ${U.borderColor}`,background:"transparent",animation:"fadeInSlide 0.4s ease-out"},children:t.jsxs("div",{style:{backgroundColor:U.backgroundColor,borderRadius:"8px",padding:"14px 16px",display:"flex",alignItems:"center",gap:"12px"},children:[U.icon,t.jsx("span",{style:{fontSize:"13px",fontWeight:"600",color:U.textColor,letterSpacing:"0.3px",fontFamily:'"Helvetica Neue", sans-serif',flex:1},children:U.content}),U.explorerUrl&&t.jsx("a",{href:U.explorerUrl,target:"_blank",rel:"noopener noreferrer",style:{fontSize:"12px",fontWeight:"600",color:U.textColor,textDecoration:"underline",whiteSpace:"nowrap",pointerEvents:"auto",opacity:.8},children:"View tx"})]})},U.id)),t.jsx("style",{children:`
19
+ `})]})},Yr=({intentStatus:e,postDepositSuccess:n=!1,postDepositAmount:s=null,postDepositStatus:o="idle",depositActionLabel:r="Post-Deposit Instruction",sourceChainName:a="Source Chain",directDepositStatus:i="idle",directDepositTxHash:c=null,directDepositChainId:d=null,styles:u})=>{const{dark:h,dk:p}=m.useSpiceBrand(u),[g,f]=l.useState([]),x=l.useRef(null),b=h?p.cardBg:"#ffffff",y=h?p.textPrimary:"#374151",C=h?`${p.cardBorder}`:"rgba(255, 255, 255, 0.2)",k=p.textSecondary,I=h?p.successBg||"#064e3b":"#d1fae5",v=h?p.successText||"#6ee7b7":"#065f46",S=h?p.successBorder||"#065f4633":"#75FFD036",w=h?p.errorBg||"#7f1d1d":"#fecaca",A=h?p.errorText||"#fca5a5":"#991b1b",j=h?p.errorBorder||"#991b1b33":"#FCA5A536",E=e?.overallStatus==="processing",M=e?.overallStatus==="success",B=M&&o!=="idle",R=r;return l.useEffect(()=>((i==="success"&&!E&&!M||n&&!E)&&(x.current=setTimeout(()=>{f([])},6e3)),()=>{x.current&&clearTimeout(x.current)}),[i,n,E,M]),l.useEffect(()=>{const F=[];if(i==="processing"&&F.push({id:"direct-processing",type:"direct-processing",content:"PROCESSING DEPOSIT...",borderColor:C,backgroundColor:b,textColor:y,icon:t.jsx(m.Spinner,{size:20,borderWidth:3,color:k})}),i==="success"){const T=c&&d?m.getExplorerUrl(d,c):void 0;F.push({id:"direct-success",type:"direct-success",content:"DEPOSIT CONFIRMED",borderColor:S,backgroundColor:I,textColor:v,explorerUrl:T!=="#"?T:void 0,icon:t.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[t.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),t.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})})}if(E&&F.push({id:"processing",type:"processing",content:"VERIFYING TRANSACTION SIGNATURE",borderColor:C,backgroundColor:b,textColor:y,icon:t.jsx(m.Spinner,{size:20,borderWidth:3,color:k})}),M&&(F.push({id:"submitted",type:"submitted",content:"SUBMITTED TRANSACTION TO BLOCKCHAIN",borderColor:S,backgroundColor:I,textColor:v,icon:t.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[t.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),t.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})}),F.push({id:"deposit-success",type:"deposit-success",content:`DEPOSIT TO ${a.toUpperCase()} SUCCESSFUL`,borderColor:S,backgroundColor:I,textColor:v,icon:t.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[t.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),t.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})})),B){const T=o==="success"?S:o==="error"?j:C,N=o==="success"?I:o==="error"?w:b,L=o==="success"?v:o==="error"?A:y;let W="";o==="executing"?W=`EXECUTING ${R.toUpperCase()}...`:o==="success"?W=`${R.toUpperCase()} CONFIRMED`:o==="error"&&(W=`${R.toUpperCase()} FAILED`);let Q;o==="executing"?Q=t.jsx(m.Spinner,{size:20,borderWidth:3,color:k}):o==="success"?Q=t.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[t.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),t.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]}):o==="error"&&(Q=t.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[t.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#ef4444"}),t.jsx("path",{d:"M6 6l8 8M14 6l-8 8",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round"})]})),F.push({id:"post-deposit",type:"post-deposit",content:W,status:o,borderColor:T,backgroundColor:N,textColor:L,icon:Q})}n&&s&&F.push({id:"post-deposit-success",type:"post-deposit-success",content:`SUCCESSFULLY DEPOSITED ${s}`,borderColor:S,backgroundColor:I,textColor:v,icon:t.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[t.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),t.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})}),f(T=>{const N=new Set(F.map(Q=>Q.id)),L=[],W=new Set;for(const Q of T)if(N.has(Q.id)){const O=F.find(q=>q.id===Q.id);L.push(O),W.add(Q.id)}for(const Q of F)W.has(Q.id)||L.push(Q);if(L.length>3){const Q=[],O=[];for(const D of L)D.type==="processing"||D.type==="post-deposit"&&D.status==="executing"?Q.push(D):O.push(D);const q=[...Q],X=3-q.length;return X>0&&O.length>0&&q.push(...O.slice(-X)),q}return L})},[E,M,B,o,n,s,R,a,i,c,d,h]),g.length===0?null:t.jsxs("div",{style:{position:"absolute",top:"56px",left:"24px",right:"24px",zIndex:100,display:"flex",flexDirection:"column",gap:"8px",pointerEvents:"none"},children:[g.map(F=>t.jsx("div",{style:{borderRadius:"12px",border:`4px solid ${F.borderColor}`,background:"transparent",animation:"fadeInSlide 0.4s ease-out"},children:t.jsxs("div",{style:{backgroundColor:F.backgroundColor,borderRadius:"8px",padding:"14px 16px",display:"flex",alignItems:"center",gap:"12px"},children:[F.icon,t.jsx("span",{style:{fontSize:"13px",fontWeight:"600",color:F.textColor,letterSpacing:"0.3px",fontFamily:'"Helvetica Neue", sans-serif',flex:1},children:F.content}),F.explorerUrl&&t.jsx("a",{href:F.explorerUrl,target:"_blank",rel:"noopener noreferrer",style:{fontSize:"12px",fontWeight:"600",color:F.textColor,textDecoration:"underline",whiteSpace:"nowrap",pointerEvents:"auto",opacity:.8},children:"View tx"})]})},F.id)),t.jsx("style",{children:`
20
20
  @keyframes fadeInSlide {
21
21
  from {
22
22
  opacity: 0;
@@ -27,7 +27,7 @@
27
27
  transform: translateY(0);
28
28
  }
29
29
  }
30
- `})]})},Ks="spiceflow:pendingDeposit",Nn="spiceflow:pendingDepositChanged";function Xs(e,n,s){return`${Ks}:${e.toLowerCase()}:${n}:${s.toLowerCase()}`}function ms(){try{const e="__spiceflow_storage_test__";return localStorage.setItem(e,"1"),localStorage.removeItem(e),!0}catch{return!1}}function Kr(e){if(!ms())return;const n=Xs(e.embeddedWalletAddress,e.chainId,e.tokenAddress);try{localStorage.setItem(n,JSON.stringify(e)),window.dispatchEvent(new Event(Nn))}catch(s){console.error("[pendingDeposit] Failed to save:",s)}}function Xr(e){if(!ms())return[];const n=`${Ks}:${e.toLowerCase()}:`,s=[],o=Date.now();for(let r=0;r<localStorage.length;r++){const a=localStorage.key(r);if(!(!a||!a.startsWith(n)))try{const i=localStorage.getItem(a);if(!i)continue;const c=JSON.parse(i);if(o-c.timestamp>6048e5){localStorage.removeItem(a);continue}s.push(c)}catch{localStorage.removeItem(a)}}return s}function xs(e,n,s){if(!ms())return;const o=Xs(e,n,s);localStorage.removeItem(o),window.dispatchEvent(new Event(Nn))}function Gr({sourceChainId:e,selectedAsset:n,destinationChainId:s,destinationTokenAddress:o,isCrossDenomination:r,convertedUsdAmount:a}){const i=W.normalizeNativeTokenAddress(n.asset.address),c=o;let l,u;if(c&&s)if(l=m.CHAIN_CONFIGS[s]?.supportedTokens?.find(p=>m.addressesEqual(p.address,c))?.decimals??n.asset.decimals,r){if(!a)throw new Error("Destination amount is still being calculated. Please retry in a moment.");u=a}else{const p=M.parseUnits(n.amount,n.asset.decimals);u=W.convertAmountBetweenDecimals(p,n.asset.decimals,l)}return{sourceChainId:e,depositTokenAddress:i,depositAmount:n.amount,depositTokenDecimals:n.asset.decimals,destinationChainId:s,destinationTokenAddress:c,destinationAmount:u,destinationTokenDecimals:l}}async function Jr(e,n){if(!e)return[];if(Array.isArray(e))return e;const s=e;return e.length>=2?s(n.depositAmount,n.depositTokenAddress):s(n)}const Gs="0x111115763723B53395308eC4c9AB9d5FB0844cae",yn=Gs,$r=60*60;async function _r(e){const n=e.selectedDepositAssets.filter(o=>o.asset&&o.amount&&parseFloat(o.amount)>0);if(n.length===0){console.error("[DepositModal] No valid assets for deposit"),e.setError("Please select an asset and enter an amount");return}if(!e.escrowOnly&&!e.sourceAddress){e.setError("External wallet not connected. Please connect your wallet in the previous step.");return}if(!e.isNon7702){if(!e.address||!e.embeddedWalletAddress){e.setError("Couldn't find your account wallet. Try reconnecting.");return}if(!e.isReady||!e.isAuthenticated){e.setError("Sign in to continue.");return}}if(e.zeroCreditError){e.setError(e.zeroCreditError);return}if(e.depositBalanceError){e.setError(e.depositBalanceError);return}e.setIsExecuting(!0),e.setError(null);let s=!1;try{const o=n[0].asset.chainId;let r=e.externalWalletClient;if(!e.escrowOnly){if(!r)throw new Error("External wallet not connected");if(e.externalProvider){let a=null;try{const c=await e.externalProvider.request({method:"eth_chainId"});a=parseInt(c,16)}catch{}a!==o&&await m.ensureWalletOnChain(e.externalProvider,o);const i=m.getChainConfig(o);i&&(r=M.createWalletClient({account:e.sourceAddress,chain:i.viemChain,transport:M.custom(e.externalProvider)}))}}if(e.isNon7702){if(!r)throw new Error("External wallet not connected");if(!e.sourceAddress)throw new Error("External wallet address not available");if(e.nativeChainId&&o===e.nativeChainId){const a=m.getChainConfig(o),i=n.map(l=>`${l.amount} ${l.asset.symbol}`).join(", ");e.setConfirmationData({network:a?.displayName||`Chain ${o}`,amount:i,symbol:"",chainId:o}),e.setShowConfirmation(!0);let c=null;e.setDirectDepositStatus("processing"),e.setDirectDepositChainId(o);for(const l of n){const u=M.parseUnits(l.amount,l.asset.decimals),p=W.normalizeNativeTokenAddress(l.asset.address),f=l.asset.isNative||W.isNativeToken(p)?await r.sendTransaction({to:W.ESCROW_ADDRESS,value:u}):await r.sendTransaction({to:p,data:M.encodeFunctionData({abi:m._,functionName:"transfer",args:[W.ESCROW_ADDRESS,u]})}),x=await m.getClientForChain(o).waitForTransactionReceipt({hash:f,timeout:12e4,pollingInterval:2e3,confirmations:2});if(x.status!=="success")throw new Error(`Escrow deposit failed for ${l.asset.symbol}`);c=x.transactionHash,e.setDirectDepositTxHash(x.transactionHash)}if(n[0]?.amount){const l=n[0].amount;if(e.onDepositExecute){e.setPostDepositStatus("executing");try{await e.onDepositExecute(l),e.setPostDepositStatus("success")}catch(p){console.error("ctx.onDepositExecute failed:",p),e.setPostDepositStatus("error"),e.setPostDepositError(p?.message||"Post-deposit instruction failed")}}else e.setPostDepositStatus("success");e.setDirectDepositStatus("success"),e.setPostDepositAmount(l),e.setPostDepositSuccess(!0);const u={type:"deposit",status:"success",amount:l,asset:n[0].asset.symbol,sourceChain:a?.displayName||`Chain ${o}`,txHash:c??void 0};window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:u})),e.onDepositSuccess?.(u)}e.refreshAssets(),e.onDepositSelect&&e.onDepositSelect(n[0].asset)}else{const a=e.destinationChainId||e.nativeChainId;if(!a)throw new Error("Destination chain ID is required for non-7702 mode. Either pass ctx.destinationChainId to <SpiceDeposit> or set ctx.nativeChainId on <SpiceFlowProvider>.");const i=m.getDelegateContractAddress(o),c=W.ESCROW_ADDRESS,l=[];let u=null;for(const p of n){const f=M.parseUnits(p.amount,p.asset.decimals),x=W.normalizeNativeTokenAddress(p.asset.address),h=p.asset.isNative||W.isNativeToken(x),g=c,b=h?await r.sendTransaction({to:c,value:f}):await r.sendTransaction({to:x,data:M.encodeFunctionData({abi:m._,functionName:"transfer",args:[g,f]})});u||(u=b);const C=m.getClientForChain(o),y=await C.waitForTransactionReceipt({hash:b,timeout:12e4,pollingInterval:2e3,confirmations:2});if(y.status!=="success")throw new Error(`Transfer failed for ${p.asset.symbol}`);await C.getBlockNumber()-y.blockNumber<2&&await new Promise(w=>setTimeout(w,3e3)),e.depositDataRef.current||(e.depositDataRef.current=[]),e.depositDataRef.current.push({txHash:b,sender:e.sourceAddress,tokenAddress:x,chainId:o,amount:f.toString(),user:e.spiceBalanceUser}),l.push({tokenAddress:x,tokenAmount:f.toString(),sender:e.sourceAddress,receiver:c})}if(!u)throw new Error("No transaction hash generated");if(!e.destinationTokenAddress){const p={type:"deposit",status:"success",amount:n[0]?.amount,asset:n[0]?.asset?.symbol,sourceChain:m.getChainName(o),txHash:u};window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:p})),e.onDepositSuccess?.(p),e.depositDataRef.current=null,e.bridgedAmountRef.current=n[0]?.amount||null,e.refreshAssets(),e.onDepositSelect&&e.onDepositSelect(n[0].asset),e.setShowConfirmation(!1);return}if(e.sponsorGas&&e.nativeChainId){const p=M.parseUnits("0.05",18);l.push({tokenAddress:W.ZERO_ADDRESS,tokenAmount:p.toString(),sender:e.sourceAddress,receiver:c})}if(e.mode==="ondemand"){const p={to:i,value:BigInt(0),data:"0x"},f=await m.getTokenDecimals(a,e.destinationTokenAddress);let x=BigInt(0);for(const A of l){const S=BigInt(A.tokenAmount),T=W.normalizeNativeTokenAddress(A.tokenAddress),N=n.find(E=>{const j=W.normalizeNativeTokenAddress(E.asset.address);return m.addressesEqual(j,T)}),I=N?N.asset.decimals:await m.getTokenDecimals(o,W.ZERO_ADDRESS);x+=W.convertAmountBetweenDecimals(S,I,f)}e.isCrossDenomination&&e.convertedUsdAmount&&(x=e.convertedUsdAmount);const h={chainId:o,tokenTransfers:l.map(A=>({from:A.sender,to:A.receiver,token:A.tokenAddress,amount:BigInt(A.tokenAmount)})),call:p},g=e.isCrossDenomination&&e.convertedUsdAmount?[{from:e.sourceAddress,to:W.ESCROW_ADDRESS,token:W.normalizeNativeTokenAddress(n[0].asset.address),amount:M.parseUnits(n[0].amount,n[0].asset.decimals)}]:[],b={chainId:a,tokenTransfers:[...g,{from:"escrow",to:e.sourceAddress,token:e.destinationTokenAddress,amount:x}],call:{to:e.destinationTokenAddress,value:BigInt(0),data:"0x"}},C={mode:"non-7702:on-demand",chainBatches:[h,b]},y={user:e.sourceAddress,intents:[C]},w=await m.relayerService.createAction(y),v=w.actionId,k=w.intentIds[0];if(!u)throw new Error("No transaction hash available");e.startStatusPolling(k,m.createInitialSteps([{chainId:o,calls:[p]},{chainId:a,calls:[b.call]}],A=>m.getChainName(A))),await m.relayerService.executeStep(v,0,0,{action:"execute",hash:u}),n[0]?.amount&&(e.bridgedAmountRef.current=n[0].amount),e.refreshAssets(),e.onDepositSelect&&e.onDepositSelect(n[0].asset),e.setShowConfirmation(!1)}else throw new Error("Presign mode not yet fully supported for cross-chain deposits")}}else{const a=W.ESCROW_ADDRESS,i=[],c=n[0],l=c&&n.length===1&&e.effectiveDepositFee&&e.effectiveDepositFee.chainId===o&&m.addressesEqual(e.effectiveDepositFee.token,W.normalizeNativeTokenAddress(c.asset.address))?M.formatUnits(e.effectiveDepositFee.net,c.asset.decimals):c?.amount;for(const E of n){const j=M.parseUnits(E.amount,E.asset.decimals),B=n.length===1&&!!e.effectiveDepositFee&&e.effectiveDepositFee.chainId===o&&m.addressesEqual(e.effectiveDepositFee.token,W.normalizeNativeTokenAddress(E.asset.address)),U=B?e.effectiveDepositFee.fee:0n,D=B?e.effectiveDepositFee.net:j,P=e.escrowOnly?j:j+U,L=W.normalizeNativeTokenAddress(E.asset.address),O=E.asset.isNative||W.isNativeToken(L);if(!e.escrowOnly){const z=O?await r.sendTransaction({to:e.address,value:P}):await r.sendTransaction({to:L,data:M.encodeFunctionData({abi:m._,functionName:"transfer",args:[e.address,P]})});Kr({chainId:o,tokenAddress:W.normalizeNativeTokenAddress(E.asset.address),tokenSymbol:E.asset.symbol,tokenDecimals:E.asset.decimals,amount:E.amount,rawAmount:j.toString(),embeddedWalletAddress:e.address,externalWalletAddress:e.sourceAddress,timestamp:Date.now(),isNative:O});const q=m.getClientForChain(o),_=await q.waitForTransactionReceipt({hash:z,timeout:12e4,pollingInterval:2e3,confirmations:2});if(_.status!=="success")throw new Error(`Transfer to embedded wallet failed for ${E.asset.symbol}`);await q.getBlockNumber()-_.blockNumber<2&&await new Promise(K=>setTimeout(K,3e3))}i.push(O?{to:a,value:D,data:"0x"}:{to:L,value:BigInt(0),data:M.encodeFunctionData({abi:m._,functionName:"transfer",args:[a,D]})}),U>0n&&i.push(O?{to:yn,value:U,data:"0x"}:{to:L,value:BigInt(0),data:M.encodeFunctionData({abi:m._,functionName:"transfer",args:[yn,U]})})}const u=await m.getClientForChain(o).getBlockNumber(),p=i.map(E=>({...E,to:M.getAddress(E.to)})),f={chainId:o,recentBlock:u,calls:p,tokenTransfers:[]},x=Gr({sourceChainId:o,selectedAsset:c&&l?{...c,amount:l}:n[0],destinationChainId:e.destinationChainId,destinationTokenAddress:e.destinationTokenAddress,isCrossDenomination:e.isCrossDenomination,convertedUsdAmount:e.convertedUsdAmount}),h=await Jr(e.depositBatches,x),g=[f,...h];if(!e.address)throw new Error("Address not available");const b=[...new Set(g.map(E=>E.chainId))],C=[];for(const E of b){const j=m.getDelegateContractAddress(E),B=m.getClientForChain(E),U=await W.getAccountNonce(e.address,B),D=await e.actions.signAuthorization({contractAddress:j,chainId:E,nonce:Number(U)});C.push({r:D.r,s:D.s,yParity:D.yParity,chainId:D.chainId,nonce:Number(D.nonce),address:D.address})}const y=W.hashChainBatches(g),w=Math.floor(Date.now()/1e3)+$r,v=y.map(E=>E.hash),k=M.keccak256(M.encodeAbiParameters([{type:"string"},{type:"uint256"},{type:"uint256"},{type:"bytes32[]"}],["ecdsa",0n,BigInt(w),v])),{signature:A}=await e.actions.signMessage({raw:k});if(!A)throw new Error("Failed to sign intent authorization");const S=[];if(e.isCrossDenomination&&e.convertedUsdAmount&&e.destinationTokenAddress){const E=e.selectedDepositAssets[0]?.asset;if(E){const j=M.parseUnits(e.selectedDepositAssets[0].amount,E.decimals);S.push({from:e.address,to:W.ESCROW_ADDRESS,token:W.normalizeNativeTokenAddress(E.address),amount:j}),S.push({from:"escrow",to:e.address,token:e.destinationTokenAddress,amount:e.convertedUsdAmount})}}const T={mode:"7702",signatureType:"ecdsa",signature:A,nbf:0,exp:w,chainBatches:y.map((E,j)=>({hash:E.hash,chainId:g[j].chainId,tokenTransfers:j===1&&S.length>0?S:g[j].tokenTransfers??[],calls:g[j].calls}))},N={user:e.address,chainAuthorizations:C,intents:[T]},I=await m.relayerService.createAction(N);if(I){const E=I.actionId;for(let B=0;B<g.length;B++)await m.relayerService.executeStep(E,0,B,{action:"execute"});for(const B of n)xs(e.address,o,W.normalizeNativeTokenAddress(B.asset.address));const j=m.createInitialSteps(g,B=>m.getChainName(B));if(e.startStatusPolling(I.intentIds[0],j),e.refreshAssets(),e.onDepositExecute&&n[0]?.amount)try{e.setPostDepositStatus("executing"),await e.onDepositExecute(l||n[0].amount),e.setPostDepositStatus("success"),e.setPostDepositAmount(l||n[0].amount),e.setPostDepositSuccess(!0)}catch(B){console.error("ctx.onDepositExecute failed (7702):",B),e.setPostDepositStatus("error"),e.setPostDepositError(B?.message||"Post-deposit instruction failed")}e.onDepositSelect&&e.onDepositSelect(n[0].asset)}}}catch(o){s=!0,console.error("[DepositModal] executeDeposit CAUGHT ERROR:",o),console.error("[DepositModal] Error details:",{message:o?.message,code:o?.code,name:o?.name,stack:o?.stack?.slice(0,500)}),e.setError(m.sanitizeError(o,"Deposit failed")),e.clearStatus()}finally{e.setIsExecuting(!1),s&&e.setDirectDepositStatus("idle"),s||!e.getCurrentIntentStatus()&&e.getCurrentPostDepositStatus()!=="idle"||e.setShowConfirmation(!1)}}async function ea(e){const{address:n,depositQuote:s,escrowOnly:o}=e,{asset:r,amount:a,token:i,chainId:c}=s,l=r.isNative||W.isNativeToken(i),u=a>1n?1n:0n,p=[l?{to:W.ESCROW_ADDRESS,value:a,data:"0x"}:{to:i,value:0n,data:M.encodeFunctionData({abi:m._,functionName:"transfer",args:[W.ESCROW_ADDRESS,a]})}];u>0n&&p.push(l?{to:yn,value:u,data:"0x"}:{to:i,value:0n,data:M.encodeFunctionData({abi:m._,functionName:"transfer",args:[yn,u]})});const f={chainId:c,tokenTransfers:[{from:n,to:W.ESCROW_ADDRESS,token:i,amount:a}],calls:p},x=(await m.relayerService.estimateBatchGas({user:n,outputToken:i,chainBatches:[{...f,hash:W.hashChainBatches([f])[0].hash}]})).gasFee,h=o&&x<a?a-x:a;return{fee:x,net:h,token:i,chainId:c}}const ta=({selectedDepositAssets:e,depositAssets:n,secondAssetOptions:s,loadingAssets:o,allowSecondAsset:r,theme:a,styles:i,dark:c,dk:l,onSelect:u,onAmountChange:p,onAdd:f,onRemove:x,onViewAllAssets:h})=>t.jsxs(t.Fragment,{children:[e.map((g,b)=>{const C=e.length===1?"Deposit":`Asset ${b+1}`;return t.jsxs("div",{style:{marginBottom:a.spacing.md,position:"relative"},children:[t.jsx(An,{assets:b===0?n:s,selectedAsset:g||void 0,onAssetSelect:y=>u(y,b),onAmountChange:y=>p(y,b),loading:o,label:C,showBalance:!0,theme:a,styles:i,allowSecondAsset:r&&b===0,onAddAsset:f,canAddAsset:e.length===1&&!!e[0]?.asset,onViewAllAssets:b===0?h:void 0}),b===1&&t.jsx("button",{onClick:()=>x(b),style:{position:"absolute",top:"-2px",right:"-2px",background:c?`${l.cardBg}ee`:"rgba(255, 255, 255, 0.9)",border:`1px solid ${l.cardBorder}`,borderRadius:"50%",cursor:"pointer",color:a.colors.textMuted,fontSize:"16px",padding:"2px",width:"22px",height:"22px",display:"flex",alignItems:"center",justifyContent:"center",transition:Mt.interactive,boxShadow:"0 1px 3px rgba(0, 0, 0, 0.1)"},onMouseEnter:y=>{y.currentTarget.style.color=c?l.errorText:"#ef4444",y.currentTarget.style.background=c?l.cardBg:"#fff",y.currentTarget.style.borderColor=c?l.errorBorder:"#fecaca"},onMouseLeave:y=>{y.currentTarget.style.color=a.colors.textMuted,y.currentTarget.style.background=c?`${l.cardBg}ee`:"rgba(255, 255, 255, 0.9)",y.currentTarget.style.borderColor=c?l.cardBorder:"#e5e7eb"},title:"Remove asset",children:"\xD7"})]},`asset-${b}`)}),e.length===0&&t.jsx("div",{style:{marginBottom:a.spacing.md},children:t.jsx(An,{assets:n,selectedAsset:void 0,onAssetSelect:g=>u(g,0),onAmountChange:g=>p(g,0),loading:o,label:"Deposit",showBalance:!0,theme:a,styles:i,allowSecondAsset:r,onAddAsset:f,canAddAsset:!1},"initial-selector")})]});var Js="data:image/svg+xml,%3csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M5 4.99995V6.99995M5 3.31245V3.31189M9.5 5C9.5 7.48528 7.48528 9.5 5 9.5C2.51472 9.5 0.5 7.48528 0.5 5C0.5 2.51472 2.51472 0.5 5 0.5C7.48528 0.5 9.5 2.51472 9.5 5Z' stroke='black' stroke-opacity='0.4' stroke-linecap='round' stroke-linejoin='round'/%3e%3c/svg%3e";const $s=d.memo(({isOpen:e,onClose:n,onDepositSelect:s,depositBatches:o,supportedChains:r,title:a,styles:i,onDepositAssetChange:c,assetInputHook:l,externalWalletAddress:u,allowedTokens:p,onDepositAmountChange:f,allowSecondAsset:x=!1,destinationChainId:h,destinationTokenAddress:g,onDepositExecute:b,depositActionLabel:C,nativeChainId:y,sponsorGas:w=!1,preSelectedAsset:v,escrowOnly:k=!1,escrowTokenAddress:A,escrowAmount:S,escrowTokenDecimals:T,escrowTokenSymbol:N,onDepositSuccess:I,embeddedWalletAddress:E,onViewAllAssets:j})=>{const B=d.useContext(m.SpiceFlowProviderContext)?.mode||"7702",U=l?.assetAmount||"",{theme:D,dark:P,appName:L,primaryColor:O,dk:z}=m.useSpiceBrand(i),q=Ot(),{isReady:_,isAuthenticated:K,actions:F}=q,{externalWallet:Y}=En(),X=Lt()||E,$=B!="7702",re=$?!!u:_&&K&&!!X,ce=X,ee=u,Ie=ce??ee,{data:fe}=ft.useWalletClient(),[xe,De]=d.useState(fe),ge=d.useRef(null);d.useEffect(()=>{if(!Y||!ee){ge.current=null,De(fe);return}if(Y.address?.toLowerCase()!==ee?.toLowerCase()){ge.current=null,De(fe);return}Y.getEthereumProvider().then(async Z=>{ge.current=Z;const G=await Z.request({method:"eth_chainId"}),J=parseInt(G,16),de=m.getChainConfig(J),Be=await Y.getWalletClient(J);De(de?M.createWalletClient({account:ee,chain:de.viemChain,transport:M.custom(Z)}):Be)}).catch(()=>{ge.current=null,De(fe)})},[Y,ee,fe]);const Ae=d.useRef(null),[ie,ye]=d.useState([]),{assets:H,loading:ae,error:pe,refreshAssets:me}=os({address:k?ce:ee||ce,supportedChains:r,fetchBalances:ss,refreshInterval:e?5e3:0}),se=d.useMemo(()=>{const Z=r.flatMap(G=>m.getAllAssetsForChain(G,H));return p&&p.length>0?Z.filter(G=>p.includes(G.symbol.toLowerCase())||G.isNative&&p.includes("native")).sort((G,J)=>{const de=G.balance>BigInt(0)?1:0;return(J.balance>BigInt(0)?1:0)-de}):Z.filter(G=>G.balance>BigInt(0))},[r,H,p]),Fe=d.useMemo(()=>{if(!ie[0]?.asset)return[];const Z=ie[0].asset.chainId;return se.filter(G=>G.chainId===Z)},[se,ie]),[R,te]=d.useState(!1),[Ce,Se]=d.useState(null),[ne,Ge]=d.useState("idle"),[st,ot]=d.useState(null),[Ee,ht]=d.useState(!1),[yt,Je]=d.useState(null),[Et,Dt]=d.useState("idle"),[en,wt]=d.useState(null),[Ze,Ne]=d.useState(null),[ze,it]=d.useState(null),[vt,et]=d.useState(null),[Ct,ue]=d.useState(null),{intentStatus:Te,startStatusPolling:tt,clearStatus:Pt}=Vs({checkStepStatus:(Z,G)=>m.relayerService.checkStepStatus(Z,G),pollingInterval:1e3,retryStep:async(Z,G)=>{const[J,de]=Z.split("/"),Be=parseInt(de||"0",10);await m.relayerService.executeStep(J,Be,G,{action:"execute"})},maxRetries:3}),ke=d.useCallback((Z,G)=>{const J=m.CHAIN_CONFIGS[G];return J?J.supportedTokens?.find(de=>m.addressesEqual(de.address,Z))?.symbol??null:null},[]),kt=d.useMemo(()=>{const Z=ie[0]?.asset;if(!Z||!g||!h)return!1;const G=ke(g,h);return Rr(Z.symbol)&&!!G&&Mr(G)},[ie,g,h,ke]);d.useEffect(()=>{ie.length>0&&U!==ie[0]?.amount&&ye(Z=>{if(Z.length===0)return Z;const G=[...Z];return G[0]={...G[0],amount:U||""},G})},[U]),d.useEffect(()=>{ie.length!==0&&ye(Z=>Z.map(G=>{if(!G.asset)return G;const J=se.find(de=>de.chainId===G.asset.chainId&&m.addressesEqual(de.address,G.asset.address));return J?{...G,asset:J,amount:G.amount}:G}))},[H]),d.useEffect(()=>{if(!v||ie.length>0||se.length===0)return;const Z=se.find(G=>G.chainId===v.chainId&&m.addressesEqual(G.address,v.address));Z&&(ye([{asset:Z,amount:""}]),c?.(Z))},[v,se,ie.length]);const nt=d.useRef(null);d.useEffect(()=>{if($&&Te?.overallStatus==="success"&&b&&ne==="idle"){const Z=nt.current,G=Ae.current;Z&&(async()=>{try{Ge("executing"),await b(Z),Ge("success"),Je(Z),ht(!0);const J=Array.isArray(G)?G[0]:void 0,de={type:"deposit",status:"success",amount:Z,asset:J?.tokenAddress,sourceChain:J?String(J.chainId):void 0,txHash:J?.txHash};window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:de})),I?.(de)}catch(J){console.error("onDepositExecute failed:",J),Ge("error"),ot(m.sanitizeError(J,"Post-deposit instruction failed"))}finally{nt.current=null,Ae.current=null}})()}},[Te?.overallStatus,$,ne]);const $e=d.useCallback(()=>{Se(null)},[]);d.useEffect(()=>{e||(ht(!1),Je(null),Dt("idle"),wt(null),Ne(null))},[e]);const Le=(Z,G)=>{ye(J=>{const de=[...J];return de[G]={asset:Z,amount:de[G]?.amount||""},de}),G===0&&c?.(Z),$e()},Ht=d.useCallback(async(Z,G)=>{if(ye(J=>{const de=[...J];return de[G]&&(de[G]={...de[G],amount:Z}),de}),$e(),G===0)if(l?.setAssetAmount(Z),kt&&Z&&parseFloat(Z)>0)try{const J=ze??await Tr();ze||it(J);const de=ie[0]?.asset;if(!de)return;const Be=M.parseUnits(Z,de.decimals),Ue=g?ke(g,h):null,Xe=m.CHAIN_CONFIGS[h]?.supportedTokens?.find(St=>m.addressesEqual(St.address,g))?.decimals??6,He=Dr(Be,de.decimals,Xe,J);et(He);const Ye=M.formatUnits(He,Xe),gt=J.toLocaleString("en-US",{maximumFractionDigits:0});ue(`${Z} ${de.symbol} \u2248 $${parseFloat(Ye).toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2})} ${Ue??"USD"} (rate: $${gt}/BTC)`),f?.(Ye)}catch(J){console.error("Failed to fetch BTC/USD price:",J),ue(null),et(null),f?.(Z)}else ue(null),et(null),f?.(Z)},[$e,l,f,kt,ze,ie,g,h,ke]),mt=d.useCallback(()=>{ie.length<2&&ye(Z=>[...Z,{asset:null,amount:""}])},[ie.length]),tn=d.useCallback(Z=>{ye(G=>G.filter((J,de)=>de!==Z)),$e()},[$e]),jt=d.useRef(!1),Qe=d.useRef(!1);d.useEffect(()=>{e||(jt.current=!1,Qe.current=!1,ut(null),Bt(null))},[e]);const[he,rt]=d.useState(!1),[xt,lt]=d.useState(null),[Re,ut]=d.useState(null),[Ve,Bt]=d.useState(null),[Ft,Wt]=d.useState(!1),[Qt,Vt]=d.useState(null),Q=d.useMemo(()=>{const Z=ie[0];if(ie.length!==1||!Z?.asset||!Z.amount||parseFloat(Z.amount)<=0)return null;try{return{asset:Z.asset,amount:M.parseUnits(Z.amount,Z.asset.decimals),token:W.normalizeNativeTokenAddress(Z.asset.address),chainId:Z.asset.chainId}}catch{return null}},[ie]),oe=d.useMemo(()=>Q?[Q.chainId,Q.token.toLowerCase(),Q.amount.toString(),k?"escrow":"normal"].join("|"):null,[Q,k]),be=d.useCallback(async()=>!ce||!Q?null:ea({address:ce,depositQuote:Q,escrowOnly:k}),[ce,Q,k]);d.useEffect(()=>{let Z=!1;if(!e||$||!Q||he||R){ut(null),Vt(null),Wt(!1);return}const G=async()=>{Vt(null),Wt(!0);try{const de=await be();Z||ut(de)}catch(de){if(Z)return;ut(null),Vt(de instanceof Error?de.message:"Failed to estimate gas fee")}finally{Z||Wt(!1)}};G();const J=window.setInterval(()=>{G()},1e4);return()=>{Z=!0,window.clearInterval(J)}},[e,$,oe,be,he,R]),d.useEffect(()=>{he||R||Bt(null)},[he,R,oe]);const We=async()=>{if(ie.length===0||!ie[0]?.asset)return;const Z=ie.filter(Ue=>Ue.asset&&Ue.amount&&parseFloat(Ue.amount)>0);if(Z.length===0)return;const G=Z[0],J=m.getChainConfig(G.asset.chainId),de=Z.map(Ue=>{const Xe=parseFloat(Ue.amount);return`${isNaN(Xe)?Ue.amount:Xe.toPrecision(6).replace(/\.?0+$/,"")} ${Ue.asset.symbol}`}).join(", "),Be={network:J?.displayName||`Chain ${G.asset.chainId}`,amount:de,symbol:"",chainId:G.asset.chainId};if(!$&&Z.length===1&&Re){Bt(Re);const Ue=Z[0];Be.creditedAmount=`${M.formatUnits(Re.net,Ue.asset.decimals)} ${Ue.asset.symbol}`,Be.networkFee=`${M.formatUnits(Re.fee,Ue.asset.decimals)} ${Ue.asset.symbol}`}lt(Be),rt(!0)},qe=d.useRef(Te);qe.current=Te;const at=d.useRef(ne);at.current=ne;const dt=async()=>{await _r({selectedDepositAssets:ie,escrowOnly:k,sourceAddress:ee,isNon7702:$,address:ce,embeddedWalletAddress:X,isReady:_,isAuthenticated:K,zeroCreditError:Pe,depositBalanceError:le,externalWalletClient:xe,externalProvider:ge.current,effectiveDepositFee:Ke,depositBatches:o,destinationChainId:h,destinationTokenAddress:g,isCrossDenomination:kt,convertedUsdAmount:vt,mode:B,sponsorGas:w,nativeChainId:y,spiceBalanceUser:Ie,depositDataRef:Ae,bridgedAmountRef:nt,setIsExecuting:te,setError:Se,setConfirmationData:lt,setShowConfirmation:rt,setDirectDepositStatus:Dt,setDirectDepositChainId:Ne,setDirectDepositTxHash:wt,setPostDepositStatus:Ge,setPostDepositError:ot,setPostDepositAmount:Je,setPostDepositSuccess:ht,startStatusPolling:tt,clearStatus:Pt,refreshAssets:me,onDepositExecute:b,onDepositSelect:s,onDepositSuccess:I,actions:F,getCurrentIntentStatus:()=>qe.current,getCurrentPostDepositStatus:()=>at.current})},Pe=d.useMemo(()=>{for(const Z of ie)if(!(!Z?.asset||!Z.amount||parseFloat(Z.amount)<=0))try{const G=Z.asset.decimals,J=M.parseUnits(Z.amount,G);if(J<=0n)continue;const de=W.getEquivalenceGroup(W.normalizeNativeTokenAddress(Z.asset.address)),Be=Z.asset.receiptTokenDecimals??(de==="ETH"||de==="ARB"?18:de==="USDC"||de==="SUSD"||de==="WBTC"||de==="CBTC"?6:void 0);if(Be===void 0||G<=Be||W.convertAmountBetweenDecimals(J,G,Be)>0n)continue;return`Amount too small. Minimum deposit for this asset is ${M.formatUnits(10n**BigInt(G-Be),G)} ${Z.asset.symbol}.`}catch{continue}return null},[ie]),je=!$&&!!Q,Ke=Ve??Re,V=!!Q&&!!Ke&&Ke.chainId===Q.chainId&&m.addressesEqual(Ke.token,Q.token),le=d.useMemo(()=>{if(!je||!Q||!V)return null;const Z=k?Q.amount:Q.amount+Ke.fee;return Q.asset.balance>=Z?null:`Insufficient ${Q.asset.symbol}. Need ${M.formatUnits(Z,Q.asset.decimals)} ${Q.asset.symbol} including gas.`},[je,Q,V,Ke,k]),Oe=!je||V&&!Ft&&!Qt&&!le,ct=d.useMemo(()=>{if(!Q||!Ke||!V)return null;const Z=k?Q.amount:Q.amount+Ke.fee;return{symbol:Q.asset.symbol,decimals:Q.asset.decimals,grossAmount:Z,netAmount:Ke.net,totalFee:Ke.fee,gasFee:Ke.fee,spicenetFee:0n,bridgeFee:0n,gasQuoteSource:"estimated"}},[Q,Ke,V,k]),_e=ie.length>0&&ie[0]?.asset&&ie[0]?.amount&&parseFloat(ie[0].amount)>0&&re&&!R&&!Pe&&!le&&Oe;d.useEffect(()=>{if(!k||!A||!S||jt.current||!re)return;const Z=r[0];if(!Z)return;const G=m.getAllAssetsForChain(Z,[]).find(de=>m.addressesEqual(de.address,A));let J;if(G)J=G;else if(T!==void 0&&N)J={address:A,symbol:N,name:N,decimals:T,chainId:Z,balance:BigInt(0),balanceFormatted:0,balanceUsd:0,isNative:W.isNativeToken(A)};else{console.warn("[DepositModal] escrowOnly: no matching asset and missing escrowTokenDecimals/escrowTokenSymbol for",A);return}jt.current=!0,ye([{asset:J,amount:S}])},[k,A,S,T,N,re,r]),d.useEffect(()=>{!k||!_e||Qe.current||R||(Qe.current=!0,dt())},[k,_e,R]);const Tt=pe||Ce||Pe||le,nn=()=>{if(R)return"Executing Deposit...";if(!re)return"Wallet Not Connected";if(B==="7702"){if(!_)return"Loading...";if(!K)return"Authentication Required"}return ie[0]?.asset?ie[0]?.amount?Pe?"AMOUNT TOO SMALL":le?"INSUFFICIENT BALANCE":je&&!Oe?Qt?"GAS UNAVAILABLE":"ESTIMATING GAS":"DEPOSIT":"ENTER AMOUNT":"SELECT TOKEN"};return e?t.jsx(Xt,{isOpen:e,onClose:n,title:a||`Deposit to your ${L} account`,subtitle:t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"5px"},children:[t.jsx("img",{src:Js,alt:"","aria-hidden":"true",style:{width:"13px",height:"13px",flexShrink:0,...P?{filter:"invert(0.6)"}:{}}}),t.jsx("p",{style:{fontSize:"12px",color:z.textSecondary,margin:"0",lineHeight:"1.4",fontFamily:'"Helvetica Neue", sans-serif'},children:`Deposit collateral to your ${L} Account from 9+ EVM blockchains.`})]}),dark:P,overlayContent:he||Te||ne!=="idle"&&b?t.jsx("div",{}):void 0,styles:i,theme:D,children:t.jsxs("div",{style:{padding:"24px 24px 5px 24px"},children:[t.jsx(ta,{selectedDepositAssets:ie,depositAssets:se,secondAssetOptions:Fe,loadingAssets:ae,allowSecondAsset:x,theme:D,styles:i,dark:P,dk:z,onSelect:Le,onAmountChange:Ht,onAdd:mt,onRemove:tn,onViewAllAssets:j}),je&&Q&&t.jsx(Wn,{fontFamily:i?.fontFamily||D.typography.fontFamily,textPrimary:z.textPrimary,textSecondary:z.textSecondary,cardBg:P?z.inputBg:"#ffffff",cardBorder:z.cardBorder,resolvedDark:P,darkCardBorder:z.cardBorder,primaryColor:O,feePreview:ct,isLoading:Ft||je&&!V,errorText:Qt}),t.jsx(Zr,{intentStatus:Te,postDepositSuccess:Ee,postDepositAmount:yt,postDepositStatus:ne,depositActionLabel:C,sourceChainName:ie[0]?.asset?.chainId?m.getChainName(ie[0].asset.chainId):"Destination Chain",directDepositStatus:Et,directDepositTxHash:en,directDepositChainId:Ze,styles:i}),t.jsx(Yr,{isOpen:he||!!Te||ne!=="idle"&&!!b,onClose:()=>{rt(!1),Te&&Pt();const Z=ne==="success"&&!Te,G=Te?.overallStatus==="success"&&ne==="success"&&b;(Z||G)&&n()},onConfirm:dt,data:xt,isExecuting:R,error:Ce,theme:D,styles:i,intentStatus:Te,postDepositStatus:ne,hasPostDepositInstruction:!!b}),Ct&&t.jsxs("div",{style:{padding:"8px 12px",marginBottom:"8px",backgroundColor:P?z.warningBg:"#fffbeb",border:`1px solid ${z.warningBorder}`,borderRadius:D.borderRadius.md,fontSize:"12px",color:z.warningText,lineHeight:"1.4"},children:["\u26A1 ",Ct]}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:0,marginBottom:0,margin:0,padding:0},children:[Tt?t.jsx("div",{style:{marginBottom:"10px",fontSize:"12px",lineHeight:"1.45",color:z.errorText,fontFamily:i?.fontFamily||D.typography.fontFamily},children:Tt}):null,t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:We,disabled:!_e||!re||R,theme:D,dark:P,styles:i,children:nn()})]})]})}):null}),na=({isOpen:e,onClose:n,deposits:s,onComplete:o,onCancel:r,onSkip:a,onChangeWallet:i,isProcessing:c,error:l,styles:u})=>{const{dark:p,dk:f,theme:x}=m.useSpiceBrand(u);if(!e||s.length===0)return null;const h=s[0],g=u?.fontFamily||'"Helvetica Neue", sans-serif',b='"IBM Plex Mono", monospace',C=m.getChainName(h.chainId),y=parseFloat(h.amount).toPrecision(6).replace(/\.?0+$/,""),w=M.formatUnits(h.verifiedBalance,h.tokenDecimals);return t.jsx(Xt,{isOpen:e,onClose:n,title:"Incomplete Deposit",styles:u,children:t.jsxs("div",{style:{padding:"18px 24px 24px",fontFamily:g},children:[t.jsx("p",{style:{fontSize:"14px",color:f.textSecondary,lineHeight:"1.6",margin:"0 0 18px 0"},children:"Your funds reached your wallet, but the deposit didn't finish."}),t.jsxs("div",{style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr) auto",gap:"14px 18px",marginBottom:"24px",padding:"16px 18px",backgroundColor:p?f.cardBg:"#f8fafc",border:`1px solid ${f.cardBorder}`,borderRadius:p?"14px":"10px",boxShadow:p?"inset 0 1px 0 rgba(255,255,255,0.03)":"0 1px 2px rgba(16,24,40,0.04)"},children:[t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[t.jsx("span",{style:{fontSize:"12px",fontWeight:600,color:f.textSecondary,fontFamily:b,letterSpacing:"0.8px"},children:"NETWORK"}),t.jsx("span",{style:{fontSize:"18px",fontWeight:600,color:f.textPrimary,fontFamily:g,lineHeight:1.2},children:C})]}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px",alignItems:"flex-end",textAlign:"right"},children:[t.jsx("span",{style:{fontSize:"12px",fontWeight:600,color:f.textSecondary,fontFamily:b,letterSpacing:"0.8px"},children:"DEPOSITED AMOUNT"}),t.jsxs("span",{style:{fontSize:"24px",fontWeight:700,color:f.successText,fontFamily:b,lineHeight:1.1},children:[y," ",h.tokenSymbol]}),t.jsx("span",{style:{fontSize:"12px",color:f.textSecondary,fontWeight:500,fontFamily:g},children:"Sent to embedded wallet"})]})]}),!h.hasFullBalance&&h.verifiedBalance>0n&&t.jsxs("div",{style:{marginBottom:"16px",padding:"8px 12px",backgroundColor:f.warningBg,border:`1px solid ${p?f.warningBorder:"#fcd34d"}`,borderRadius:"8px",fontSize:"13px",color:f.warningText,lineHeight:"1.4"},children:["Partial balance \u2014 only ",parseFloat(w).toFixed(4)," ",h.tokenSymbol," available."]}),l&&t.jsx("div",{style:{marginBottom:"16px",padding:"10px 12px",backgroundColor:f.errorBg,border:`1px solid ${p?f.errorBorder:"#fca5a5"}`,borderRadius:"8px",fontSize:"13px",color:p?f.errorText:"#991b1b",lineHeight:"1.4"},children:l}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"12px"},children:[t.jsx(m.Button,{variant:"outline",fullWidth:!0,disabled:c,onClick:()=>o(h),theme:x,dark:p,styles:u,children:"CONFIRM DEPOSIT"}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"10px"},children:[t.jsx(m.Button,{variant:"ghost",fullWidth:!0,disabled:c,onClick:()=>r(h),theme:x,dark:p,style:{height:"48px",fontSize:"13px",letterSpacing:"0.4px",color:p?f.textPrimary:"#374151",border:`1px solid ${p?f.cardBorder:"#d1d5db"}`,borderRadius:"12px",backgroundColor:p?"rgba(255,255,255,0.02)":"#ffffff"},children:c?"RETURNING...":"RETURN FUNDS"}),t.jsxs("div",{style:{display:"grid",gridTemplateColumns:i?"1fr 1fr":"1fr",gap:"10px"},children:[t.jsx(m.Button,{variant:"ghost",fullWidth:!0,disabled:c,onClick:a,theme:x,dark:p,style:{height:"44px",fontSize:"12px",letterSpacing:"0.4px",color:f.textSecondary,border:`1px solid ${p?f.cardBorder:"#d1d5db"}`,borderRadius:"12px",backgroundColor:"transparent"},children:"START OVER"}),i&&t.jsx(m.Button,{variant:"ghost",fullWidth:!0,disabled:c,onClick:i,theme:x,dark:p,style:{height:"44px",fontSize:"12px",letterSpacing:"0.4px",color:f.textSecondary,border:`1px solid ${p?f.cardBorder:"#d1d5db"}`,borderRadius:"12px",backgroundColor:"transparent"},children:"CHANGE WALLET"})]})]})]}),s.length>1&&t.jsxs("p",{style:{fontSize:"12px",color:f.textSecondary,textAlign:"center",marginTop:"14px",marginBottom:0,lineHeight:"1.5"},children:[s.length," incomplete deposits found \u2014 resolving one at a time."]})]})})},gs=e=>{const[n,s]=d.useState(!1),o=d.useContext(m.SpiceFlowProviderContext),{dark:r,dk:a}=m.useSpiceBrand();if(d.useEffect(()=>{s(!0)},[]),!n)return t.jsx("div",{className:e.className,children:t.jsx("button",{disabled:!0,style:{padding:"12px 24px",fontSize:"16px",backgroundColor:r?a.hoverBg:"#ccc",color:r?a.textSecondary:"white",border:r?`1px solid ${a.buttonBorder}`:"none",borderRadius:"4px",cursor:"not-allowed"},children:"Loading..."})});if(!o){const i='ProviderLogin must be used within SpiceFlowProvider. Please wrap your app with <SpiceFlowProvider provider="privy" | "dynamic">.';return t.jsx("div",{className:e.className,children:t.jsx("button",{onClick:()=>{e.onAuthError&&e.onAuthError(i)},style:{padding:"12px 24px",fontSize:"16px",backgroundColor:r?a.errorBg:"#dc2626",color:r?a.errorText:"white",border:r?`1px solid ${a.errorBorder}`:"none",borderRadius:"4px",cursor:"pointer"},children:"Provider Not Found"})})}if(o.provider==="privy")return t.jsx(lr.PrivyLogin,{...e});if(o.provider==="dynamic"){const i='Dynamic provider is not supported in this build of @spicenet-io/spiceflow-ui. Use provider="privy" instead.';return t.jsx("div",{className:e.className,children:t.jsx("button",{onClick:()=>{e.onAuthError&&e.onAuthError(i)},style:{padding:"12px 24px",fontSize:"16px",backgroundColor:r?a.errorBg:"#dc2626",color:r?a.errorText:"white",border:r?`1px solid ${a.errorBorder}`:"none",borderRadius:"4px",cursor:"pointer"},children:"Dynamic Not Supported"})})}return null},sa=5*60*1e3;function _s(e,n){const[s,o]=d.useState([]),[r,a]=d.useState(!1),i=d.useRef(n);i.current=n;const c=d.useRef(0),l=d.useRef(0),u=d.useCallback(async({forceDiscovery:p=!1}={})=>{if(!e){o([]);return}const f=++l.current,x=()=>f!==l.current;a(!0);try{const h=[],g=Xr(e);for(const w of g){if(x())return;try{const v=m.getClientForChain(w.chainId);let k;if(w.isNative||W.isNativeToken(w.tokenAddress)?k=await It.getBalance(v,{address:e}):k=await It.readContract(v,{address:M.getAddress(w.tokenAddress),abi:m._,functionName:"balanceOf",args:[e]}),x())return;k>0n?h.push({...w,verifiedBalance:k,hasFullBalance:k>=BigInt(w.rawAmount)}):Date.now()-w.timestamp>15*60*1e3&&xs(e,w.chainId,w.tokenAddress)}catch(v){console.warn(`[usePendingDeposit] Failed to verify balance for ${w.tokenSymbol} on chain ${w.chainId}:`,v),h.push({...w,verifiedBalance:0n,hasFullBalance:!1})}}if(x())return;const b=i.current,C=Date.now(),y=p||C-c.current>=sa;if(b?.network&&y){c.current=C;const w=b.chainIds??W.getChainIdsByNetwork(b.network),v=new Set(h.map(A=>`${A.chainId}:${A.tokenAddress.toLowerCase()}`)),k=[];for(const A of w){const S=m.getChainConfig(A);if(S?.supportedTokens)for(const T of S.supportedTokens){if(W.isNativeToken(T.address))continue;const N=`${A}:${T.address.toLowerCase()}`;v.has(N)||k.push((async()=>{try{const I=m.getClientForChain(A),E=await It.readContract(I,{address:M.getAddress(T.address),abi:m._,functionName:"balanceOf",args:[e]});return E>0n?{chainId:A,tokenAddress:T.address,tokenSymbol:T.symbol,tokenDecimals:T.decimals,amount:M.formatUnits(E,T.decimals),rawAmount:E.toString(),embeddedWalletAddress:e,externalWalletAddress:"",timestamp:0,isNative:!1,verifiedBalance:E,hasFullBalance:!0}:null}catch{return null}})())}}if(k.length>0){const A=await Promise.allSettled(k);if(x())return;for(const S of A)S.status==="fulfilled"&&S.value&&h.push(S.value)}}x()||o(h)}catch(h){console.error("[usePendingDeposit] Verification error:",h),x()||o([])}finally{x()||a(!1)}},[e]);return d.useEffect(()=>{u({forceDiscovery:!0});const p=i.current?.pollIntervalMs??3e4;if(p<=0||!e)return()=>{l.current++};const f=setInterval(()=>{u({forceDiscovery:!1})},p),x=()=>u({forceDiscovery:!0});return window.addEventListener(Nn,x),()=>{l.current++,window.removeEventListener(Nn,x),clearInterval(f)}},[u,e]),{pendingDeposits:s,loading:r,refresh:()=>u({forceDiscovery:!0})}}function oa(e,n,s,o,r){return{address:n,symbol:s||"UNKNOWN",name:s||"Unknown Token",decimals:o||18,chainId:e,balance:0n,balanceFormatted:r?parseFloat(r):0,balanceUsd:0,isNative:W.isNativeToken(n)}}const ra=({isOpen:e,onClose:n,styles:s,depositBatches:o,allowedTokens:r,onDepositAmountChange:a,destinationChainId:i,destinationTokenAddress:c,onDepositExecute:l,depositActionLabel:u,sponsorGas:p=!1,escrowRecovery:f,skipTokenSelection:x=!1,onDepositSuccess:h,skipRecovery:g=!1})=>{const b=d.useContext(m.SpiceFlowProviderContext);if(!b)return t.jsx("div",{children:"Error: SpiceDeposit must be used within SpiceFlowProvider"});const C=(b.mode||"7702")!="7702",y=C,w=b.nativeChainId,v=b.network||"testnet",{dark:k,dk:A}=m.useSpiceBrand(s),S=!!f,T=()=>y?"connect-wallet":"provider-login",[N,I]=d.useState(T()),[E,j]=d.useState(null),[B,U]=d.useState(!1),D=Ot(),{isReady:P,isAuthenticated:L,actions:O}=D,z=Lt(),{address:q}=ft.useAccount(),{externalAddress:_}=En(),K=_??q,F=!!K,{pendingDeposits:Y,loading:X,refresh:$}=_s(z,{network:v,chainIds:b.supportedChainIds}),[re,ce]=d.useState(null),[ee,Ie]=d.useState(!1),[fe,xe]=d.useState(null),[De,ge]=d.useState(!1),[Ae,ie]=d.useState("idle");d.useEffect(()=>{e&&!g&&!S&&!re&&!De&&Ae==="idle"&&L&&z&&F&&K&&!X&&Y.length>0&&N!=="recovery"&&N!=="deposit"&&I("recovery")},[e,g,S,L,z,F,K,X,Y,N,re,De,Ae]);const ye=d.useCallback(ne=>{const Ge={address:ne.tokenAddress,symbol:ne.tokenSymbol,name:ne.tokenSymbol,decimals:ne.tokenDecimals,chainId:ne.chainId,balance:ne.verifiedBalance,balanceFormatted:parseFloat(ne.amount),balanceUsd:0,isNative:ne.isNative};j(Ge),ce(ne),I("deposit")},[]),H=d.useCallback(()=>{ge(!0),I(L&&z&&F&&K?x?"deposit":"select-token":L&&z?"connect-wallet":"provider-login")},[L,z,F,K,x]),ae=d.useCallback(()=>{xe(null),ie("awaiting-disconnect"),I("connect-wallet")},[]),pe=d.useCallback(async ne=>{Ie(!0),xe(null);try{if(!z)throw new Error("Embedded wallet not available");const Ge=await O.getEthereumProvider(),st=m.getChainConfig(ne.chainId);await m.ensureWalletOnChain(Ge,ne.chainId);const ot=m.getClientForChain(ne.chainId),Ee=await It.getBalance(ot,{address:z}),ht=st?.viemChain?.name||`chain ${ne.chainId}`;if(Ee===0n)throw new Error(`Your embedded wallet has no ETH on ${ht} to pay for gas. We recommend completing the deposit instead \u2014 it doesn't require gas.`);const yt=M.createWalletClient({account:z,transport:M.custom(Ge),chain:st?.viemChain});let Je;ne.isNative||W.isNativeToken(ne.tokenAddress)?Je=await yt.sendTransaction({to:ne.externalWalletAddress,value:ne.verifiedBalance,chain:st?.viemChain}):Je=await yt.sendTransaction({to:ne.tokenAddress,data:M.encodeFunctionData({abi:m._,functionName:"transfer",args:[ne.externalWalletAddress,ne.verifiedBalance]}),chain:st?.viemChain}),await ot.waitForTransactionReceipt({hash:Je,confirmations:1}),xs(ne.embeddedWalletAddress,ne.chainId,ne.tokenAddress),$(),Y.length<=1&&I(T())}catch(Ge){const st=Ge?.message||"Couldn't return your funds. Please try again.",ot=/insufficient funds for gas/i.test(st);xe(ot?"Not enough ETH in your embedded wallet to cover gas fees. Complete the deposit instead \u2014 it doesn't require gas.":st)}finally{Ie(!1)}},[O,z,Y,$]);d.useEffect(()=>{e||(ce(null),xe(null),Ie(!1),ge(!1),ie("idle"))},[e]),d.useEffect(()=>{if(Ae!=="idle"){if(Ae==="awaiting-disconnect"){(!F||!K)&&ie("awaiting-reconnect");return}e&&!X&&Y.length>0&&L&&z&&(ie("idle"),I("recovery"))}},[Ae,F,K,e,X,Y,L,z]),d.useEffect(()=>{!S||!e||(L&&z?(U(!0),!E&&f?.chainId&&f?.tokenAddress&&j(oa(f.chainId,f.tokenAddress,f.tokenSymbol,f.tokenDecimals,f.amount)),I("deposit")):I("provider-login"))},[S,e,N,L,z]);const{assets:me,loading:se}=os({address:K,supportedChains:b.supportedChainIds,fetchBalances:ss,refreshInterval:e?5e3:0}),Fe=d.useCallback(()=>{U(!0),I(S?"deposit":"connect-wallet")},[S]),R=d.useCallback(async()=>{if((!F||!K)&&(await new Promise(ne=>setTimeout(ne,500)),!F||!K)){alert("Please connect your wallet first");return}I(x?"deposit":"select-token")},[F,K,x]),te=d.useCallback(ne=>{j(ne),I("deposit")},[]),Ce=d.useCallback(()=>{if(j(null),a?.(""),!K){I("connect-wallet");return}I("select-token")},[K,a]),Se=d.useCallback(()=>{n()},[n]);if(d.useEffect(()=>{if(!e){const ne=setTimeout(()=>{S||(I(T()),j(null)),U(!1)},300);return()=>clearTimeout(ne)}},[e,S,f?.chainId]),d.useEffect(()=>{e&&N==="deposit"&&!E&&!S&&!re&&!x&&I("select-token")},[e,N,E,S,re,x]),d.useEffect(()=>{if(!y&&e&&N==="provider-login"&&P&&L&&z&&!B){const ne=setTimeout(()=>{U(!0),I("connect-wallet")},100);return()=>clearTimeout(ne)}},[y,e,N,P,L,z,B]),!e)return null;if(N==="recovery")return t.jsx(na,{isOpen:e,onClose:Se,deposits:Y,onComplete:ye,onCancel:pe,onSkip:H,onChangeWallet:ae,isProcessing:ee,error:fe,styles:s});if(N==="provider-login"&&!y)return t.jsx("div",{style:{position:"fixed",inset:0,backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",padding:"16px",zIndex:50},children:t.jsx("div",{style:{backgroundColor:k?A.cardBg:"white",borderRadius:"9px",padding:"32px 24px",maxWidth:"400px",width:"100%"},children:t.jsx(gs,{onAuthSuccess:Fe,autoTrigger:!0})})});if(N==="connect-wallet")return t.jsx(Or,{isOpen:e,onClose:Se,onContinue:R,requiredChainId:C?w:void 0,styles:s});if(N==="select-token")return K?t.jsx(Ur,{isOpen:e,onClose:Se,onTokenSelect:te,walletAddress:K,supportedChainIds:b.supportedChainIds,network:v,prefetchedAssets:se?null:me??null,styles:s,dark:k,allowedTokens:r}):(I("connect-wallet"),null);if(N==="deposit"){if(!E&&!x)return null;const ne=!!re;return t.jsx($s,{isOpen:e,onClose:Se,supportedChains:E?[E.chainId]:b.supportedChainIds??[],styles:s,externalWalletAddress:K,depositBatches:ne?void 0:o,allowedTokens:r,onDepositAmountChange:a,destinationChainId:i,destinationTokenAddress:c,onDepositExecute:l,depositActionLabel:u,nativeChainId:w,sponsorGas:p,preSelectedAsset:E??void 0,escrowOnly:S||ne,escrowTokenAddress:ne?re.tokenAddress:f?.tokenAddress,escrowAmount:ne?re.amount:f?.amount,escrowTokenDecimals:ne?re.tokenDecimals:f?.tokenDecimals,escrowTokenSymbol:ne?re.tokenSymbol:f?.tokenSymbol,onDepositSuccess:h,embeddedWalletAddress:z,onViewAllAssets:x?void 0:Ce})}return null},eo=e=>d.useContext(m.SpiceFlowProviderContext)?t.jsx(ra,{...e}):t.jsx("div",{children:"Error: SpiceDeposit must be used within SpiceFlowProvider"}),aa=({isOpen:e,onClose:n,onChainSelect:s,supportedChains:o,closeOnSelect:r=!0,styles:a})=>{const{theme:i,dark:c,primaryColor:l,dk:u}=m.useSpiceBrand(a),[p,f]=d.useState(""),[x,h]=d.useState(null),[g,b]=d.useState(null),[C,y]=d.useState(!1),[w,v]=d.useState(null),{switchChainAsync:k}=ft.useSwitchChain(),A=d.useMemo(()=>new Set(o||[]),[o]),S=d.useMemo(()=>{if(!o||o.length===0)return[];const E=[];return o.forEach((j,B)=>{if(typeof j!="number")return;const U=m.getChainConfig(j);U&&E.push({id:j.toString(),name:U.displayName,icon:Nt[j]||Kt,chainId:j,verified:!0,order:B})}),E},[o]);d.useEffect(()=>{x&&!A.has(parseInt(x,10))&&h(null)},[x,A]);const T=d.useMemo(()=>S.filter(E=>E.name.toLowerCase().includes(p.toLowerCase())).sort((E,j)=>E.order-j.order),[S,p]),N=async()=>{if(!x)return;const E=parseInt(x,10);y(!0),v(null);try{await k({chainId:E}),s&&s(x),r&&n()}catch(j){console.error("Failed to switch chain:",j),v(m.sanitizeError(j,"Failed to switch chain."))}finally{y(!1)}},I=!x||C;return t.jsxs(Xt,{isOpen:e,onClose:n,title:"Select Chain",styles:a,theme:i,dark:c,children:[t.jsx("div",{style:{padding:"24px 20px"},children:t.jsx(ts,{value:p,onChange:f,ariaLabel:"Search chains",placeholder:"Search chain name, symbol or address",size:"md",dark:c,styles:a,endAdornment:t.jsx("div",{style:{padding:"5px 5px",borderRadius:"3px",fontSize:"13px",backgroundColor:c?u.cardBg:"#E9E9E9",color:c?u.textSecondary:"#485066",fontWeight:500,flexShrink:0},"aria-hidden":"true",children:"\u2318F"})})}),t.jsx("div",{style:{padding:"0 32px 20px",display:"flex",flexDirection:"column",gap:"12px"},children:T.map(E=>{const j=x===E.id,B=g===E.id;return t.jsxs("button",{onClick:()=>h(E.id),onMouseEnter:()=>b(E.id),onMouseLeave:()=>b(null),style:{width:"100%",display:"flex",alignItems:"center",gap:"16px",padding:"8px",borderRadius:"8px",backgroundColor:j?c?`${l}15`:`${l}12`:"transparent",border:j?c?`1px solid ${l}66`:`1px solid ${l}88`:B?c?`1px solid ${l}44`:`1px solid ${l}66`:"1px solid transparent",cursor:"pointer",transition:Mt.interactive},children:[t.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"30px"},children:t.jsx("img",{src:E.icon,alt:E.name,loading:"lazy",decoding:"async",style:{width:"100%",height:"100%",borderRadius:"50%"}})}),t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px",flex:1},children:[t.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"17px",fontWeight:500,letterSpacing:"0.4px",color:u.textPrimary,textAlign:"left"},children:E.name}),E.verified&&t.jsx("img",{src:Os,alt:"","aria-hidden":"true",loading:"lazy",decoding:"async",width:16,height:16,style:{width:"16px",height:"16px",filter:c?"brightness(0) invert(1)":"none"}})]})]},E.id)})}),t.jsx("div",{style:{padding:"0 25px 25px"},children:t.jsxs(m.Button,{variant:"outline",onClick:N,disabled:I,fullWidth:!0,theme:i,styles:a,dark:c,children:["SELECT",t.jsx($n.ChevronRight,{size:20})]})})]})},to=({title:e,icon:n,amount:s,children:o,defaultExpanded:r=!1})=>{const[a,i]=d.useState(r),{dark:c,primaryColor:l,dk:u}=m.useSpiceBrand(),p=f=>{f?.stopPropagation(),i(!a)};return t.jsxs("div",{style:{backgroundColor:c?u.cardBg:"#FAFAFA",borderRadius:"12px",padding:"12px 16px",border:c?`1px solid ${l}33`:"0.5px solid #939291",boxShadow:c?`0 0 15px ${l}22`:"4px 4px 0px 0px #E1E1E1",marginBottom:"12px"},children:[t.jsxs("div",{onClick:p,onKeyDown:f=>{(f.key==="Enter"||f.key===" ")&&(f.preventDefault(),p())},role:"button",tabIndex:0,style:{display:"flex",alignItems:"center",justifyContent:"space-between",cursor:"pointer",width:"100%"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",flex:1,minWidth:0},children:[n&&t.jsx("img",{src:n,alt:e,style:{width:"20px",height:"20px",flexShrink:0},onError:f=>{const x=f.target;x.style.display="none"}}),t.jsx("span",{className:"ibm-plex-mono",style:{fontSize:"14px",fontWeight:500,fontFamily:'"IBM Plex Mono", monospace',color:c?"#ffffff":"#17171A",letterSpacing:"0.5px",textTransform:"uppercase",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:e})]}),t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",flexShrink:0},children:[t.jsx("span",{style:{fontSize:"18px",fontWeight:600,color:c?"#ffffff":"#262523",whiteSpace:"nowrap"},children:s}),t.jsx(Gt,{color:c?u.textSecondary:"#262523",direction:a?"up":"down",style:{flexShrink:0}})]})]}),a&&o&&t.jsx("div",{style:{marginTop:"16px",paddingTop:"16px",borderTop:c?`1px solid ${l}22`:"1px solid #D0D2D8"},children:o})]})},ia=e=>Nt[e]||null,Pn=({name:e,balance:n,icon:s,subtitle:o,networks:r,onClick:a})=>{const{dark:i,dk:c}=m.useSpiceBrand();return t.jsxs("div",{onClick:a,style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"12px 0",cursor:a?"pointer":"default",transition:"opacity 0.2s ease"},onMouseEnter:l=>{a&&(l.currentTarget.style.opacity="0.7")},onMouseLeave:l=>{l.currentTarget.style.opacity="1"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px"},children:[s&&t.jsx("div",{style:{width:"25px",height:"25px",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",overflow:"hidden"},children:typeof s=="string"?t.jsx("img",{src:s,alt:e,style:{width:"100%",height:"100%",objectFit:"cover"},onError:l=>{console.warn(`Failed to load image: ${s}`);const u=l.target;u.style.display="none"}}):s}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"2px",flex:1},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[t.jsx("span",{style:{fontSize:"14px",fontWeight:600,color:i?"#ffffff":"#1A1A1A",fontFamily:'"IBM Plex Mono", monospace',textTransform:"uppercase",letterSpacing:"0.3px"},children:e}),e==="USDC"&&t.jsx("div",{style:{width:"16px",height:"16px",borderRadius:"50%",backgroundColor:"#ef4444",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:t.jsx("svg",{style:{width:"12px",height:"12px",color:"white"},fill:"currentColor",viewBox:"0 0 20 20",children:t.jsx("path",{fillRule:"evenodd",d:"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z",clipRule:"evenodd"})})}),r&&r.length>0&&t.jsx("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:r.map(l=>{const u=ia(l);return u?t.jsx("img",{src:u,alt:`Chain ${l}`,style:{width:"16px",height:"16px",borderRadius:"50%",objectFit:"cover"}},l):t.jsx(ls,{chainId:l,size:16},l)})})]}),o&&t.jsx("span",{style:{fontSize:"11px",fontWeight:400,color:i?c.textSecondary:"#6B7280",fontFamily:'"IBM Plex Mono", monospace',textTransform:"none"},children:o})]})]}),t.jsx("span",{style:{fontSize:"14px",fontWeight:600,color:i?"#ffffff":"#1A1A1A",fontFamily:'"IBM Plex Mono", monospace'},children:n})]})},no=({isOpen:e,position:n,title:s,items:o,selectedId:r,onSelect:a,portalAttribute:i})=>{const{dark:c,dk:l,primaryColor:u}=m.useSpiceBrand(),[p,f]=d.useState(null),[x,h]=d.useState(!1);return d.useEffect(()=>{if(!e){h(!1);return}const g=requestAnimationFrame(()=>{requestAnimationFrame(()=>h(!0))});return()=>cancelAnimationFrame(g)},[e]),!e||!n||o.length===0?null:vn.createPortal(t.jsxs("div",{[`data-${i}-popover`]:"true",style:{position:"fixed",top:`${n.top}px`,left:`${n.left}px`,opacity:x?1:0,transform:x?"scale(1) translateY(0)":"scale(0.96) translateY(-6px)",transition:`opacity 200ms ${bt.out}, transform 200ms ${bt.out}`,backgroundColor:c?l.shell:"#ffffff",borderRadius:"10px",padding:"10px 12px",boxShadow:c?"0 16px 48px rgba(0,0,0,0.45)":"0 12px 32px rgba(0,0,0,0.12)",border:`1px solid ${l.cardBorder}`,minWidth:"220px",zIndex:dn.dropdown,fontFamily:'"IBM Plex Mono", monospace'},children:[t.jsx("div",{style:{marginBottom:"6px"},children:t.jsx("span",{style:{fontSize:"11px",fontWeight:500,color:c?l.textPrimary:"#0e0d0b",textTransform:"uppercase",letterSpacing:"1px"},children:s})}),t.jsx("div",{style:{borderBottom:`1px solid ${l.cardBorder}`,marginBottom:"6px"}}),t.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"2px"},children:o.map(g=>{const b=r===g.id,C=p===g.id;return t.jsxs("button",{onClick:y=>{y.stopPropagation(),a(g.id)},onMouseEnter:()=>f(g.id),onMouseLeave:()=>f(null),style:{display:"flex",alignItems:"center",gap:"8px",padding:"6px 4px",borderRadius:"8px",border:"none",cursor:"pointer",backgroundColor:b?c?l.hoverBg:"#f3f4f6":C?c?l.cardBg:"#f9fafb":"transparent",transition:"background-color 0.15s",width:"100%",fontFamily:'"IBM Plex Mono", monospace'},children:[g.icon&&t.jsx("img",{src:g.icon,alt:g.label,style:{width:"22px",height:"22px",borderRadius:"50%"}}),t.jsx("span",{style:{fontSize:"13px",fontWeight:b?700:500,textTransform:"uppercase",color:c?l.textPrimary:"#0e0d0b",letterSpacing:"0.5px",flex:1,textAlign:"left"},children:g.label}),g.detail&&t.jsx("span",{style:{fontSize:"11px",fontWeight:500,color:l.textSecondary},children:g.detail}),b&&t.jsx(Ys,{color:u,style:{flexShrink:0}})]},g.id)})})]}),document.body)},so=({isSuccess:e,type:n,chainName:s,explorerUrl:o,txHash:r,dark:a=!1,successBg:i="#d1fae5",successBorder:c="#6ee7b7",successText:l="#065f46",errorBg:u="#fee2e2",errorBorder:p="#fca5a5",errorText:f="#dc2626",textSecondary:x="#6b7280"})=>t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px",borderRadius:"8px",backgroundColor:e?i:u,border:e?`1px solid ${c}`:`1px solid ${p}`},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px"},children:[t.jsx("div",{style:{width:"28px",height:"28px",borderRadius:"50%",backgroundColor:e?"#10b981":"#ef4444",display:"flex",alignItems:"center",justifyContent:"center"},children:e?t.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:t.jsx("path",{d:"M11.6667 3.5L5.25 9.91667L2.33333 7",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})}):t.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:t.jsx("path",{d:"M10.5 3.5L3.5 10.5M3.5 3.5L10.5 10.5",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}),t.jsxs("div",{children:[t.jsx("p",{style:{margin:0,fontSize:"14px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px",color:e?l:f},children:e?`${n.toUpperCase()} CONFIRMED`:`${n.toUpperCase()} FAILED`}),t.jsxs("p",{style:{margin:"2px 0 0 0",fontSize:"12px",color:x},children:["on ",s]})]})]}),o&&r&&t.jsxs("a",{href:`${o}/tx/${r}`,target:"_blank",rel:"noopener noreferrer",style:{display:"flex",alignItems:"center",gap:"4px",fontSize:"13px",color:x,textDecoration:"none",whiteSpace:"nowrap"},children:["View on explorer",t.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",children:[t.jsx("path",{d:"M9 6.5V9.5C9 9.76522 8.89464 10.0196 8.70711 10.2071C8.51957 10.3946 8.26522 10.5 8 10.5H2.5C2.23478 10.5 1.98043 10.3946 1.79289 10.2071C1.60536 10.0196 1.5 9.76522 1.5 9.5V4C1.5 3.73478 1.60536 3.48043 1.79289 3.29289C1.98043 3.10536 2.23478 3 2.5 3H5.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),t.jsx("path",{d:"M7.5 1.5H10.5V4.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),t.jsx("path",{d:"M5 7L10.5 1.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"})]})]})]}),ys=({isOpen:e,onClose:n,onComplete:s,closeOnComplete:o=!1,type:r,results:a,chainName:i="Network",explorerUrl:c,theme:l,styles:u,dark:p,intentStatus:f,onRetry:x,onNewTx:h,onRetryTx:g,asOverlay:b=!0,isProcessing:C=!1})=>{const{theme:y,primaryColor:w,dark:v,dk:k}=m.useSpiceBrand(u,p),A=l||y,[S,T]=d.useState(!1),N=v?k.cardBg:"#ffffff",I=v?"0 4px 20px rgba(0, 0, 0, 0.4)":"0 4px 20px rgba(0, 0, 0, 0.1)",E=v?"0 -4px 8px -2px rgba(0, 0, 0, 0.4)":"0 -4px 8px -2px rgba(0, 0, 0, 0.15)",j=k.textSecondary,B=v?k.textPrimary:"#374151",U=v?k.inputBg:"#f9fafb",D=v?k.inputBorder:"#e5e7eb",P=v?k.inputBg:"#f3f4f6",L=v?k.inputBorder:"#e5e7eb",[O,z]=d.useState(!0),[q,_]=d.useState(null),[K,F]=d.useState(null);d.useEffect(()=>{!e&&!f&&T(!1)},[e,f]);const Y=()=>{T(!0),setTimeout(()=>{window.dispatchEvent(new CustomEvent("tx-complete",{detail:{type:r,results:a}})),window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:{type:r,status:"success",results:a}})),s?.(),o&&n()},300)},X=()=>{z(!O)};if(f){const{steps:ee,overallStatus:Ie}=f,fe=Ie==="processing",xe=Ie==="success",De=Ie==="failed",ge=ee.filter(H=>H.transactionHash)[0],Ae=ee.length>1?ee.map(H=>H.chainName).filter(Boolean).join(" and "):i!=="Network"?i:ee[0]?.chainName||i,ie=c||(ge?m.getExplorerUrl(ge.chainId,ge.transactionHash||"").replace(/\/tx\/.*$/,""):void 0),ye=t.jsxs(t.Fragment,{children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"16px"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",cursor:"pointer"},onClick:X,children:[t.jsxs("span",{style:{fontSize:"13px",fontWeight:500,color:j,fontFamily:u?.fontFamily||A.typography.fontFamily},children:[fe?`Processing ${r.charAt(0).toUpperCase()+r.slice(1)}`:`${r.charAt(0).toUpperCase()+r.slice(1)} results`," "]}),t.jsx(Gt,{color:j,direction:O?"up":"down"})]}),!fe&&t.jsx("button",{onClick:n,onMouseEnter:()=>_("close"),onMouseLeave:()=>{_(null),F(null)},onMouseDown:()=>F("close"),onMouseUp:()=>F(null),style:{background:K==="close"?v?k.hoverBg:"#f3f4f6":q==="close"?v?k.inputBg:"#f9fafb":"none",border:"none",borderRadius:"4px",cursor:"pointer",padding:"4px",display:"flex",alignItems:"center",justifyContent:"center",color:q==="close"||K==="close"?B:j,transform:K==="close"?"scale(0.9)":q==="close"?"scale(1.1)":"scale(1)",transition:Mt.interactive},children:t.jsx(mn,{size:16})})]}),t.jsx("div",{style:{marginBottom:"16px"},children:fe?t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"20px 16px",borderRadius:"8px",backgroundColor:P,border:`1px solid ${L}`,gap:"12px"},children:[t.jsx(m.Spinner,{size:24,borderWidth:3,color:w}),t.jsxs("div",{children:[t.jsx("p",{style:{margin:0,fontSize:"14px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px",color:B},children:"PROCESSING TRANSACTION"}),t.jsxs("p",{style:{margin:"2px 0 0 0",fontSize:"12px",color:j},children:["on ",Ae]})]})]}):t.jsx(so,{isSuccess:xe,type:r,chainName:Ae,explorerUrl:ie,txHash:ge?.transactionHash,dark:v,...v?{successBg:k.successBg,successBorder:k.successBorder,successText:k.successText,errorBg:k.errorBg,errorBorder:k.errorBorder,errorText:k.errorText}:{},textSecondary:j})}),t.jsx("div",{style:{overflow:"hidden",maxHeight:O?"300px":"0px",opacity:O?1:0,transition:"max-height 0.3s ease, opacity 0.3s ease",marginBottom:O?"16px":"0"},children:t.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:ee.map((H,ae)=>{const pe=H.transactionHash?m.getExplorerUrl(H.chainId,H.transactionHash):null;return t.jsxs("div",{style:{padding:"10px 12px",borderRadius:"6px",backgroundColor:U,border:`1px solid ${D}`,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontSize:"13px",color:B},children:H.chainName?`On ${H.chainName}`:H.description||`Step ${ae+1}`}),t.jsxs("span",{style:{display:"flex",alignItems:"center",gap:"8px",fontSize:"12px",color:H.status==="success"?"#10b981":H.status==="failed"?"#ef4444":j,fontWeight:500},children:[pe&&t.jsx("a",{href:pe,target:"_blank",rel:"noopener noreferrer",style:{color:v?k.infoText:"#2563eb",textDecoration:"none"},onClick:me=>me.stopPropagation(),children:"View"}),H.status==="success"?"\u2713":H.status==="failed"?"\u2717":"\u25CB"]})]},ae)})})}),!fe&&t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:[De&&x&&t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:x,theme:A,styles:u,dark:v,children:"TRY AGAIN"}),h&&t.jsxs(m.Button,{variant:"outline",fullWidth:!0,onClick:h,theme:A,styles:u,dark:v,children:["NEW ",r.toUpperCase()," \u2192"]})]})]});return b?t.jsxs("div",{style:{position:"absolute",bottom:0,left:0,right:0,zIndex:10,animation:S?"slideDown 0.3s ease-in forwards":"slideUp 0.3s ease-out forwards",pointerEvents:"auto"},children:[t.jsx("div",{style:{backgroundColor:N,borderRadius:"12px 12px 0 0",width:"100%",padding:"18px 24px 24px",boxShadow:E},children:ye}),t.jsx("style",{children:`
30
+ `})]})},Xs="spiceflow:pendingDeposit",Un="spiceflow:pendingDepositChanged";function Gs(e,n,s){return`${Xs}:${e.toLowerCase()}:${n}:${s.toLowerCase()}`}function ds(){try{const e="__spiceflow_storage_test__";return localStorage.setItem(e,"1"),localStorage.removeItem(e),!0}catch{return!1}}function Kr(e){if(!ds())return;const n=Gs(e.embeddedWalletAddress,e.chainId,e.tokenAddress);try{localStorage.setItem(n,JSON.stringify(e)),window.dispatchEvent(new Event(Un))}catch(s){console.error("[pendingDeposit] Failed to save:",s)}}function Zr(e){if(!ds())return[];const n=`${Xs}:${e.toLowerCase()}:`,s=[],o=Date.now();for(let r=0;r<localStorage.length;r++){const a=localStorage.key(r);if(!(!a||!a.startsWith(n)))try{const i=localStorage.getItem(a);if(!i)continue;const c=JSON.parse(i);if(o-c.timestamp>6048e5){localStorage.removeItem(a);continue}s.push(c)}catch{localStorage.removeItem(a)}}return s}function cs(e,n,s){if(!ds())return;const o=Gs(e,n,s);localStorage.removeItem(o),window.dispatchEvent(new Event(Un))}function Xr({sourceChainId:e,selectedAsset:n,destinationChainId:s,destinationTokenAddress:o,isCrossDenomination:r,convertedUsdAmount:a}){const i=z.normalizeNativeTokenAddress(n.asset.address),c=o;let d,u;if(c&&s)if(d=m.CHAIN_CONFIGS[s]?.supportedTokens?.find(h=>m.addressesEqual(h.address,c))?.decimals??n.asset.decimals,r){if(!a)throw new Error("Destination amount is still being calculated. Please retry in a moment.");u=a}else{const h=U.parseUnits(n.amount,n.asset.decimals);u=z.convertAmountBetweenDecimals(h,n.asset.decimals,d)}return{sourceChainId:e,depositTokenAddress:i,depositAmount:n.amount,depositTokenDecimals:n.asset.decimals,destinationChainId:s,destinationTokenAddress:c,destinationAmount:u,destinationTokenDecimals:d}}async function Gr(e,n){if(!e)return[];if(Array.isArray(e))return e;const s=e;return e.length>=2?s(n.depositAmount,n.depositTokenAddress):s(n)}const Js="0x111115763723B53395308eC4c9AB9d5FB0844cae",Jr=60*60;async function $r(e){const{selectedDepositAssets:n,escrowOnly:s,sourceAddress:o,isNon7702:r,address:a,embeddedWalletAddress:i,isReady:c,isAuthenticated:d,zeroCreditError:u,depositBalanceError:h,effectiveDepositFee:p,externalProvider:g,depositBatches:f,destinationChainId:x,destinationTokenAddress:b,isCrossDenomination:y,convertedUsdAmount:C,mode:k,sponsorGas:I,nativeChainId:v,spiceBalanceUser:S,depositDataRef:w,bridgedAmountRef:A,setIsExecuting:j,setError:E,setConfirmationData:M,setShowConfirmation:B,setDirectDepositStatus:R,setDirectDepositChainId:F,setDirectDepositTxHash:T,setPostDepositStatus:N,setPostDepositError:L,setPostDepositAmount:W,setPostDepositSuccess:Q,startStatusPolling:O,clearStatus:q,refreshAssets:X,onDepositExecute:D,onDepositSelect:H,onDepositSuccess:G,actions:se,getCurrentIntentStatus:ee,getCurrentPostDepositStatus:pe}=e,V=n.filter($=>$.asset&&$.amount&&parseFloat($.amount)>0);if(V.length===0){console.error("[DepositModal] No valid assets for deposit"),E("Please select an asset and enter an amount");return}if(!s&&!o){E("External wallet not connected. Please connect your wallet in the previous step.");return}if(!r){if(!a||!i){E("Couldn't find your account wallet. Try reconnecting.");return}if(!c||!d){E("Sign in to continue.");return}}if(u){E(u);return}if(h){E(h);return}j(!0),E(null);let ye=!1;try{const $=V[0].asset.chainId;let fe=e.externalWalletClient;if(!s){if(!fe)throw new Error("External wallet not connected");if(g){let ke=null;try{const me=await g.request({method:"eth_chainId"});ke=parseInt(me,16)}catch{}ke!==$&&await m.ensureWalletOnChain(g,$);const be=m.getChainConfig($);be&&(fe=U.createWalletClient({account:o,chain:be.viemChain,transport:U.custom(g)}))}}if(r){if(!fe)throw new Error("External wallet not connected");if(!o)throw new Error("External wallet address not available");if(v&&$===v){const ke=m.getChainConfig($),be=V.map(ue=>`${ue.amount} ${ue.asset.symbol}`).join(", ");M({network:ke?.displayName||`Chain ${$}`,amount:be,symbol:"",chainId:$}),B(!0);let me=null;R("processing"),F($);for(const ue of V){const de=U.parseUnits(ue.amount,ue.asset.decimals),P=z.normalizeNativeTokenAddress(ue.asset.address),oe=ue.asset.isNative||z.isNativeToken(P)?await fe.sendTransaction({to:z.ESCROW_ADDRESS,value:de}):await fe.sendTransaction({to:P,data:U.encodeFunctionData({abi:m.z,functionName:"transfer",args:[z.ESCROW_ADDRESS,de]})}),ce=await m.getClientForChain($).waitForTransactionReceipt({hash:oe,timeout:12e4,pollingInterval:2e3,confirmations:2});if(ce.status!=="success")throw new Error(`Escrow deposit failed for ${ue.asset.symbol}`);me=ce.transactionHash,T(ce.transactionHash)}if(V[0]?.amount){const ue=V[0].amount;if(D){N("executing");try{await D(ue),N("success")}catch(P){console.error("onDepositExecute failed:",P),N("error"),L(P?.message||"Post-deposit instruction failed")}}else N("success");R("success"),W(ue),Q(!0);const de={type:"deposit",status:"success",amount:ue,asset:V[0].asset.symbol,sourceChain:ke?.displayName||`Chain ${$}`,txHash:me??void 0};window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:de})),G?.(de)}X(),H&&H(V[0].asset)}else{const ke=x||v;if(!ke)throw new Error("Destination chain ID is required for non-7702 mode. Either pass destinationChainId to <SpiceDeposit> or set nativeChainId on <SpiceFlowProvider>.");const be=m.getDelegateContractAddress($),me=z.ESCROW_ADDRESS,ue=[];let de=null;for(const P of V){const oe=U.parseUnits(P.amount,P.asset.decimals),ce=z.normalizeNativeTokenAddress(P.asset.address),ae=P.asset.isNative||z.isNativeToken(ce),he=me,_=ae?await fe.sendTransaction({to:me,value:oe}):await fe.sendTransaction({to:ce,data:U.encodeFunctionData({abi:m.z,functionName:"transfer",args:[he,oe]})});de||(de=_);const Z=m.getClientForChain($),re=await Z.waitForTransactionReceipt({hash:_,timeout:12e4,pollingInterval:2e3,confirmations:2});if(re.status!=="success")throw new Error(`Transfer failed for ${P.asset.symbol}`);await Z.getBlockNumber()-re.blockNumber<2&&await new Promise(ge=>setTimeout(ge,3e3)),w.current||(w.current=[]),w.current.push({txHash:_,sender:o,tokenAddress:ce,chainId:$,amount:oe.toString(),user:S}),ue.push({tokenAddress:ce,tokenAmount:oe.toString(),sender:o,receiver:me})}if(!de)throw new Error("No transaction hash generated");if(!b){const P={type:"deposit",status:"success",amount:V[0]?.amount,asset:V[0]?.asset?.symbol,sourceChain:m.getChainName($),txHash:de};window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:P})),G?.(P),w.current=null,A.current=V[0]?.amount||null,X(),H&&H(V[0].asset),B(!1);return}if(I&&v){const P=U.parseUnits("0.05",18);ue.push({tokenAddress:z.ZERO_ADDRESS,tokenAmount:P.toString(),sender:o,receiver:me})}if(k==="ondemand"){const P={to:be,value:BigInt(0),data:"0x"},oe=await m.getTokenDecimals(ke,b);let ce=BigInt(0);for(const Ne of ue){const Me=BigInt(Ne.tokenAmount),Oe=z.normalizeNativeTokenAddress(Ne.tokenAddress),Ie=V.find(xt=>{const we=z.normalizeNativeTokenAddress(xt.asset.address);return m.addressesEqual(we,Oe)}),ut=Ie?Ie.asset.decimals:await m.getTokenDecimals($,z.ZERO_ADDRESS);ce+=z.convertAmountBetweenDecimals(Me,ut,oe)}y&&C&&(ce=C);const ae={chainId:$,tokenTransfers:ue.map(Ne=>({from:Ne.sender,to:Ne.receiver,token:Ne.tokenAddress,amount:BigInt(Ne.tokenAmount)})),call:P},he=y&&C?[{from:o,to:z.ESCROW_ADDRESS,token:z.normalizeNativeTokenAddress(V[0].asset.address),amount:U.parseUnits(V[0].amount,V[0].asset.decimals)}]:[],_={chainId:ke,tokenTransfers:[...he,{from:"escrow",to:o,token:b,amount:ce}],call:{to:b,value:BigInt(0),data:"0x"}},Z={user:o,intents:[{mode:"non-7702:on-demand",chainBatches:[ae,_]}]},re=await m.relayerService.createAction(Z),ge=re.actionId,te=re.intentIds[0];if(!de)throw new Error("No transaction hash available");O(te,m.createInitialSteps([{chainId:$,calls:[P]},{chainId:ke,calls:[_.call]}],Ne=>m.getChainName(Ne))),await m.relayerService.executeStep(ge,0,0,{action:"execute",hash:de}),V[0]?.amount&&(A.current=V[0].amount),X(),H&&H(V[0].asset),B(!1)}else throw new Error("Presign mode not yet fully supported for cross-chain deposits")}}else{const ke=z.ESCROW_ADDRESS,be=[],me=V[0],ue=me&&V.length===1&&p&&p.chainId===$&&m.addressesEqual(p.token,z.normalizeNativeTokenAddress(me.asset.address))?U.formatUnits(p.net,me.asset.decimals):me?.amount;for(const we of V){const Ue=U.parseUnits(we.amount,we.asset.decimals),Pe=V.length===1&&!!p&&p.chainId===$&&m.addressesEqual(p.token,z.normalizeNativeTokenAddress(we.asset.address)),vt=Pe?p.fee:0n,rt=Pe?p.net:Ue,Je=s?Ue:Ue+vt,pt=z.normalizeNativeTokenAddress(we.asset.address),De=we.asset.isNative||z.isNativeToken(pt);if(!s){const mt=De?await fe.sendTransaction({to:a,value:Je}):await fe.sendTransaction({to:pt,data:U.encodeFunctionData({abi:m.z,functionName:"transfer",args:[a,Je]})});Kr({chainId:$,tokenAddress:z.normalizeNativeTokenAddress(we.asset.address),tokenSymbol:we.asset.symbol,tokenDecimals:we.asset.decimals,amount:we.amount,rawAmount:Ue.toString(),embeddedWalletAddress:a,externalWalletAddress:o,timestamp:Date.now(),isNative:De});const ft=m.getClientForChain($),ht=await ft.waitForTransactionReceipt({hash:mt,timeout:12e4,pollingInterval:2e3,confirmations:2});if(ht.status!=="success")throw new Error(`Transfer to embedded wallet failed for ${we.asset.symbol}`);await ft.getBlockNumber()-ht.blockNumber<2&&await new Promise($e=>setTimeout($e,3e3))}be.push(De?{to:ke,value:rt,data:"0x"}:{to:pt,value:BigInt(0),data:U.encodeFunctionData({abi:m.z,functionName:"transfer",args:[ke,rt]})}),vt>0n&&be.push(De?{to:Js,value:vt,data:"0x"}:{to:pt,value:BigInt(0),data:U.encodeFunctionData({abi:m.z,functionName:"transfer",args:[Js,vt]})})}const de=await m.getClientForChain($).getBlockNumber(),P=be.map(we=>({...we,to:U.getAddress(we.to)})),oe={chainId:$,recentBlock:de,calls:P,tokenTransfers:[]},ce=Xr({sourceChainId:$,selectedAsset:me&&ue?{...me,amount:ue}:V[0],destinationChainId:x,destinationTokenAddress:b,isCrossDenomination:y,convertedUsdAmount:C}),ae=await Gr(f,ce),he=[oe,...ae];if(!a)throw new Error("Address not available");const _=[...new Set(he.map(we=>we.chainId))],Z=[];for(const we of _){const Ue=m.getDelegateContractAddress(we),Pe=m.getClientForChain(we),vt=await z.getAccountNonce(a,Pe),rt=await se.signAuthorization({contractAddress:Ue,chainId:we,nonce:Number(vt)});Z.push({r:rt.r,s:rt.s,yParity:rt.yParity,chainId:rt.chainId,nonce:Number(rt.nonce),address:rt.address})}const re=z.hashChainBatches(he),ge=Math.floor(Date.now()/1e3)+Jr,te=re.map(we=>we.hash),Ne=U.keccak256(U.encodeAbiParameters([{type:"string"},{type:"uint256"},{type:"uint256"},{type:"bytes32[]"}],["ecdsa",0n,BigInt(ge),te])),{signature:Me}=await se.signMessage({raw:Ne});if(!Me)throw new Error("Failed to sign intent authorization");const Oe=[];if(y&&C&&b){const we=n[0]?.asset;if(we){const Ue=U.parseUnits(n[0].amount,we.decimals);Oe.push({from:a,to:z.ESCROW_ADDRESS,token:z.normalizeNativeTokenAddress(we.address),amount:Ue}),Oe.push({from:"escrow",to:a,token:b,amount:C})}}const Ie={mode:"7702",signatureType:"ecdsa",signature:Me,nbf:0,exp:ge,chainBatches:re.map((we,Ue)=>({hash:we.hash,chainId:he[Ue].chainId,tokenTransfers:Ue===1&&Oe.length>0?Oe:he[Ue].tokenTransfers??[],calls:he[Ue].calls}))},ut={user:a,chainAuthorizations:Z,intents:[Ie]},xt=await m.relayerService.createAction(ut);if(xt){const we=xt.actionId;for(let Pe=0;Pe<he.length;Pe++)await m.relayerService.executeStep(we,0,Pe,{action:"execute"});for(const Pe of V)cs(a,$,z.normalizeNativeTokenAddress(Pe.asset.address));const Ue=m.createInitialSteps(he,Pe=>m.getChainName(Pe));if(O(xt.intentIds[0],Ue),X(),D&&V[0]?.amount)try{N("executing"),await D(ue||V[0].amount),N("success"),W(ue||V[0].amount),Q(!0)}catch(Pe){console.error("onDepositExecute failed (7702):",Pe),N("error"),L(Pe?.message||"Post-deposit instruction failed")}H&&H(V[0].asset)}}}catch($){ye=!0,console.error("[DepositModal] executeDeposit CAUGHT ERROR:",$),console.error("[DepositModal] Error details:",{message:$?.message,code:$?.code,name:$?.name,stack:$?.stack?.slice(0,500)}),E(m.sanitizeError($,"Deposit failed")),q()}finally{j(!1),ye&&R("idle"),ye||!ee()&&pe()!=="idle"||B(!1)}}const $s="0x111115763723B53395308eC4c9AB9d5FB0844cae";async function _r(e){const{address:n,depositQuote:s,escrowOnly:o}=e,{asset:r,amount:a,token:i,chainId:c}=s,d=r.isNative||z.isNativeToken(i),u=a>1n?1n:0n,h=[d?{to:z.ESCROW_ADDRESS,value:a,data:"0x"}:{to:i,value:0n,data:U.encodeFunctionData({abi:m.z,functionName:"transfer",args:[z.ESCROW_ADDRESS,a]})}];u>0n&&h.push(d?{to:$s,value:u,data:"0x"}:{to:i,value:0n,data:U.encodeFunctionData({abi:m.z,functionName:"transfer",args:[$s,u]})});const p={chainId:c,tokenTransfers:[{from:n,to:z.ESCROW_ADDRESS,token:i,amount:a}],calls:h},g=(await m.relayerService.estimateBatchGas({user:n,outputToken:i,chainBatches:[{...p,hash:z.hashChainBatches([p])[0].hash}]})).gasFee,f=o&&g<a?a-g:a;return{fee:g,net:f,token:i,chainId:c}}var _s="data:image/svg+xml,%3csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M5 4.99995V6.99995M5 3.31245V3.31189M9.5 5C9.5 7.48528 7.48528 9.5 5 9.5C2.51472 9.5 0.5 7.48528 0.5 5C0.5 2.51472 2.51472 0.5 5 0.5C7.48528 0.5 9.5 2.51472 9.5 5Z' stroke='black' stroke-opacity='0.4' stroke-linecap='round' stroke-linejoin='round'/%3e%3c/svg%3e";const ea=({appName:e,dark:n,dk:s})=>t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"5px"},children:[t.jsx("img",{src:_s,alt:"","aria-hidden":"true",style:{width:"13px",height:"13px",flexShrink:0,...n?{filter:"invert(0.6)"}:{}}}),t.jsx("p",{style:{fontSize:"12px",color:s.textSecondary,margin:"0",lineHeight:"1.4",fontFamily:'"Helvetica Neue", sans-serif'},children:`Deposit collateral to your ${e} Account from 9+ EVM blockchains.`})]}),us=({chainId:e,name:n,size:s=16})=>{const o=e&&(zt[e]||z.getChainMeta(e)?.logo)||"";return o?t.jsx("img",{src:o,alt:n||`Chain ${e}`,loading:"lazy",decoding:"async",width:s,height:s,style:{width:`${s}px`,height:`${s}px`,borderRadius:"50%",objectFit:"cover",flexShrink:0}}):null};function ps(e){return e.displaySymbol||e.symbol}function ta(e){return e.displayName||e.displaySymbol||e.name||e.symbol}function fs(e){return e.displayChainName||m.getChainName(e.chainId)}const na=({selectedAsset:e,assets:n,onAssetSelect:s,showDropdown:o,onToggleDropdown:r,disabled:a=!1,theme:i,onViewAllAssets:c})=>{const{theme:d}=m.useSpiceBrand(),u=i||d,h=l.useRef(null),p=l.useRef(null),g=l.useRef(null),[f,x]=l.useState(null);l.useEffect(()=>{if(o&&p.current){const R=()=>{if(p.current){const F=p.current.getBoundingClientRect();x({top:F.bottom+6,right:window.innerWidth-F.right})}};return R(),window.addEventListener("scroll",R,!0),window.addEventListener("resize",R),()=>{window.removeEventListener("scroll",R,!0),window.removeEventListener("resize",R)}}else x(null)},[o]),l.useEffect(()=>{const R=F=>{h.current&&!h.current.contains(F.target)&&g.current&&!g.current.contains(F.target)&&o&&r()};return o&&document.addEventListener("mousedown",R),()=>{document.removeEventListener("mousedown",R)}},[o,r]);const[b,y]=l.useState(!1),C=u.mode==="light",k={backgroundColor:"transparent",border:`1px solid ${C?"#aaaaaa":u.colors.border}`,borderRadius:"6px",color:u.colors.text,cursor:a?"not-allowed":"pointer",padding:"8px 14px 8px 10px",width:"100%",display:"flex",flexDirection:"column",gap:"4px",opacity:a?.6:1,transition:Wt.interactive,transform:b?"scale(0.98)":"scale(1)"},I={display:"flex",justifyContent:"space-between",alignItems:"center",gap:"10px",minWidth:0},v={display:"flex",alignItems:"center",gap:"4px",paddingTop:"4px",borderTop:`1px solid ${u.colors.border}`},S=()=>f?{position:"fixed",top:`${f.top}px`,right:`${f.right}px`,backgroundColor:u.colors.secondary,border:`1px solid ${u.colors.border}`,borderRadius:u.borderRadius.md,boxShadow:u.shadows.lg,zIndex:ln.dropdown,width:"200px",maxHeight:"300px",overflow:"auto"}:{},w={backgroundColor:"transparent",border:"none",color:u.colors.text,cursor:"pointer",padding:u.spacing.sm,width:"100%",display:"flex",alignItems:"center",gap:u.spacing.sm,transition:`background-color ${u.animation.normal}`,":hover":{backgroundColor:u.colors.surfaceHover}},A={display:"flex",flexDirection:"column",alignItems:"flex-start",flex:1},j={fontSize:u.typography.fontSize.sm,fontWeight:u.typography.fontWeight.medium},E={fontSize:u.typography.fontSize.xs,color:u.colors.textMuted},M={backgroundColor:"transparent",border:"none",borderTop:`1px solid ${u.colors.border}`,color:u.colors.primary,cursor:"pointer",padding:"10px 12px",width:"100%",display:"flex",alignItems:"center",justifyContent:"space-between",gap:"8px",fontFamily:u.typography.fontFamily,fontSize:u.typography.fontSize.xs,fontWeight:u.typography.fontWeight.medium,textDecoration:"underline",textUnderlineOffset:"2px"},B={transition:`transform ${u.animation.normal}`,transform:o?"rotate(180deg)":"rotate(0deg)",flexShrink:0};return t.jsxs(t.Fragment,{children:[t.jsx("div",{style:{position:"relative"},ref:h,children:t.jsxs("div",{ref:p,style:k,onClick:a?void 0:r,onMouseLeave:()=>{y(!1)},onMouseDown:()=>y(!0),onMouseUp:()=>y(!1),children:[t.jsxs("div",{style:I,children:[t.jsx("div",{style:{display:"flex",alignItems:"center",gap:"8px",flex:1,minWidth:0},children:e?.asset?t.jsxs(t.Fragment,{children:[t.jsx(os,{symbol:e.asset.symbol,logoURI:e.asset.logoURI,theme:u,size:24}),t.jsx("span",{style:{fontSize:"15px",fontWeight:500,color:u.colors.text,lineHeight:"1.5",flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:ps(e.asset)})]}):t.jsx("span",{style:{fontSize:"14px",color:u.colors.textMuted},children:"Select"})}),t.jsx("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:C?u.colors.textMuted:"#c7ccd4",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:B,children:t.jsx("path",{d:"M6 9l6 6 6-6"})})]}),e?.asset&&t.jsxs("div",{style:v,children:[!e.asset.displayChainName&&t.jsx(us,{chainId:e.asset.chainId,theme:u}),t.jsx("span",{style:{fontSize:"11px",color:u.colors.textMuted},children:fs(e.asset)})]})]})}),o&&f&&bn.createPortal(t.jsxs("div",{ref:g,style:S(),children:[n.length===0&&t.jsx("div",{style:{padding:"10px 12px",color:u.colors.textMuted,fontSize:u.typography.fontSize.xs},children:"No assets available"}),n.map(R=>t.jsxs("button",{style:w,onClick:()=>{s(R),r()},children:[t.jsx(os,{symbol:R.symbol,logoURI:R.logoURI,theme:u},`${R.address}-${R.chainId}`),t.jsxs("div",{style:A,children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:u.spacing.xs},children:[t.jsx("span",{style:j,children:ps(R)}),!R.displayChainName&&t.jsx(us,{chainId:R.chainId,theme:u})]}),t.jsxs("span",{style:E,children:[rn(R.balanceFormatted)," \u2022"," ",fs(R)]})]})]},R.receiptTokenId||`${R.address}-${R.chainId}`)),c&&t.jsxs("button",{type:"button",style:M,onClick:()=>{r(),c()},children:[t.jsx("span",{children:"View all assets"}),t.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[t.jsx("path",{d:"M5 12h14"}),t.jsx("path",{d:"M13 5l7 7-7 7"})]})]})]}),document.body)]})},sa=({assets:e,selectedAsset:n,onAssetSelect:s,onAmountChange:o,disabled:r=!1,loading:a=!1,label:i="Select Asset",showBalance:c=!0,showMaxButton:d=!0,placeholder:u="0.0",theme:h,styles:p,maxAmount:g,hideAmountInput:f=!1,displayAmount:x,dark:b,onViewAllAssets:y})=>{const{theme:C,primaryColor:k,dark:I,dk:v}=m.useSpiceBrand(p,b),S=h||C,w=b??I,[A,j]=l.useState(!1),[E,M]=l.useState(null),[B,R]=l.useState(null),[F,T]=l.useState(n?.amount||""),N=l.useRef(null),L=l.useRef("");l.useEffect(()=>{const H=n?.asset?n.asset.receiptTokenId||`${n.asset.chainId}-${n.asset.address}`:"";H!==L.current&&(T(n?.amount||""),L.current=H)},[n?.asset?.chainId,n?.asset?.address,n?.amount]);const W=H=>{let G=H;G.startsWith(".")&&(G="0"+G);const se=zs(G);if(!se){T(se),N.current&&clearTimeout(N.current),N.current=setTimeout(()=>{o(se)},300);return}if(g&&parseFloat(se)>parseFloat(g)){T(g),N.current&&clearTimeout(N.current),N.current=setTimeout(()=>{o(g)},300);return}if(n?.asset){const ee=parseFloat(se),pe=n.asset.balanceFormatted,V=n.asset.decimals;if(!isNaN(ee)&&ee>pe){const ye=kn(Math.floor(pe*10**V)/10**V,V);T(ye),N.current&&clearTimeout(N.current),N.current=setTimeout(()=>{o(ye)},300);return}}T(se),N.current&&clearTimeout(N.current),N.current=setTimeout(()=>{o(se)},300)},Q=H=>{if(n?.asset){const G=n.asset.decimals,se=n.asset.balanceFormatted*H/100;let ee=Math.floor(se*10**G)/10**G;g&&ee>parseFloat(g)&&(ee=parseFloat(g));const pe=kn(ee,G);T(pe),N.current&&clearTimeout(N.current),o(pe)}},O=n?.asset?.balanceFormatted??0,q=parseFloat(F)||0,X=O>0?q/O*100:0;l.useEffect(()=>()=>{N.current&&clearTimeout(N.current)},[]);const D={backgroundColor:p?.assetSelector?.backgroundColor||p?.secondaryBackground||(w?v.cardBg:"#e9e9e9"),border:w?`0.5px solid ${v.cardBorder}`:"0.5px solid #A8A8A7",borderRadius:p?.assetSelector?.borderRadius||"6px",padding:p?.assetSelector?.padding||"16px",height:"auto",minHeight:f?void 0:"144px",display:"flex",flexDirection:"column",gap:"8px",position:"relative",opacity:r?.6:1};return a?t.jsx("div",{style:D,children:t.jsxs("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"space-between"},children:[t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:[t.jsx("div",{style:{backgroundColor:w?v.hoverBg:"#d1d5db",borderRadius:"4px",height:"16px",width:"60px"}}),t.jsx("div",{style:{backgroundColor:w?v.hoverBg:"#d1d5db",borderRadius:"4px",height:"40px",width:"150px"}})]}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-end",gap:"8px"},children:[t.jsx("div",{style:{backgroundColor:w?v.hoverBg:"#d1d5db",borderRadius:"4px",height:"12px",width:"80px"}}),t.jsx("div",{style:{backgroundColor:w?v.hoverBg:"#d1d5db",borderRadius:"6px",height:"46px",width:"128px"}})]})]})}):t.jsxs("div",{style:D,children:[t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontFamily:p?.fontFamily||S.typography.fontFamily,fontSize:"16px",fontWeight:500,color:w?v.textSecondary:"#7d7c7b",lineHeight:"24px"},children:i}),c&&n?.asset&&t.jsxs("span",{style:{fontFamily:p?.fontFamily||S.typography.fontFamily,fontSize:"12px",fontWeight:500,color:w?v.textSecondary:"#71757a",lineHeight:"16px"},children:["Balance: ",rn(n.asset.balanceFormatted)]})]}),t.jsxs("div",{style:{display:"flex",justifyContent:f&&!x?"flex-start":"space-between",alignItems:"center",flex:1},children:[!f&&t.jsx("input",{type:"text",inputMode:"decimal",autoComplete:"off","aria-label":n?.asset?`${n.asset.symbol} amount`:"Amount","data-spiceflow-focus":!0,value:F,onChange:H=>W(H.target.value),placeholder:u,disabled:r||!n?.asset,style:{fontFamily:p?.fontFamily||S.typography.fontFamily,fontSize:"40px",fontWeight:700,color:r?w?"rgba(255, 255, 255, 0.16)":"rgba(14, 13, 11, 0.16)":F?w?"#ffffff":"#0e0d0b":w?"#4a5568":"#d1d5db",lineHeight:"1.08",letterSpacing:"-1.2px",backgroundColor:"transparent",border:"none",outline:"none",padding:0,width:"100%",maxWidth:"200px"}}),t.jsx("div",{style:{width:"176px",position:"relative",flexShrink:0},children:t.jsx(na,{selectedAsset:n,assets:e,onAssetSelect:s,showDropdown:A,onToggleDropdown:()=>j(!A),disabled:r,theme:S,onViewAllAssets:y})}),f&&x&&t.jsx("span",{style:{fontFamily:p?.fontFamily||S.typography.fontFamily,fontSize:"40px",fontWeight:700,color:w?"#ffffff":"#0e0d0b",lineHeight:"1.08",letterSpacing:"-1.2px",textAlign:"right",flex:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:x})]}),!f&&t.jsx("div",{style:{display:"flex",justifyContent:"flex-end",alignItems:"center",gap:"10px",height:"14px"},children:[0,25,50,75,100].map((H,G)=>{const se=Math.abs(X-H)<1,ee=G===4,pe=H/100,V=E===H,ye=B===H;return t.jsx("button",{onClick:()=>Q(H),onMouseEnter:()=>M(H),onMouseLeave:()=>{M(null),R(null)},onMouseDown:()=>R(H),onMouseUp:()=>R(null),disabled:r||!n?.asset,title:`${H}%`,style:{width:"14px",height:"14px",padding:0,border:"none",backgroundColor:"transparent",cursor:r||!n?.asset?"not-allowed":"pointer",opacity:se?1:V?.8:.5,transform:ye?"scale(0.85)":V?"scale(1.15)":"scale(1)",transition:Wt.interactive},children:t.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",children:[t.jsx("circle",{cx:"7",cy:"7",r:"6.84375",fill:ee?k:"none",stroke:ee?k:w?"#4a5568":"#3C3E42",strokeWidth:"0.3125"}),!ee&&pe>0&&t.jsx("path",{d:`M 7 7 L 7 0.15625 A 6.84375 6.84375 0 ${pe>.5?1:0} 1 ${7+6.84375*Math.sin(pe*2*Math.PI)} ${7-6.84375*Math.cos(pe*2*Math.PI)} Z`,fill:w?v.textSecondary:"#3C3E42"})]})},H)})})]})},In=sa,oa=({selectedDepositAssets:e,depositAssets:n,secondAssetOptions:s,loadingAssets:o,allowSecondAsset:r,theme:a,styles:i,dark:c,dk:d,onSelect:u,onAmountChange:h,onAdd:p,onRemove:g,onViewAllAssets:f})=>t.jsxs(t.Fragment,{children:[e.map((x,b)=>{const y=e.length===1?"Deposit":`Asset ${b+1}`;return t.jsxs("div",{style:{marginBottom:a.spacing.md,position:"relative"},children:[t.jsx(In,{assets:b===0?n:s,selectedAsset:x||void 0,onAssetSelect:C=>u(C,b),onAmountChange:C=>h(C,b),loading:o,label:y,showBalance:!0,theme:a,styles:i,allowSecondAsset:r&&b===0,onAddAsset:p,canAddAsset:e.length===1&&!!e[0]?.asset,onViewAllAssets:b===0?f:void 0}),b===1&&t.jsx("button",{onClick:()=>g(b),style:{position:"absolute",top:"-2px",right:"-2px",background:c?`${d.cardBg}ee`:"rgba(255, 255, 255, 0.9)",border:`1px solid ${d.cardBorder}`,borderRadius:"50%",cursor:"pointer",color:a.colors.textMuted,fontSize:"16px",padding:"2px",width:"22px",height:"22px",display:"flex",alignItems:"center",justifyContent:"center",transition:Wt.interactive,boxShadow:"0 1px 3px rgba(0, 0, 0, 0.1)"},onMouseEnter:C=>{C.currentTarget.style.color=c?d.errorText:"#ef4444",C.currentTarget.style.background=c?d.cardBg:"#fff",C.currentTarget.style.borderColor=c?d.errorBorder:"#fecaca"},onMouseLeave:C=>{C.currentTarget.style.color=a.colors.textMuted,C.currentTarget.style.background=c?`${d.cardBg}ee`:"rgba(255, 255, 255, 0.9)",C.currentTarget.style.borderColor=c?d.cardBorder:"#e5e7eb"},title:"Remove asset",children:"\xD7"})]},`asset-${b}`)}),e.length===0&&t.jsx("div",{style:{marginBottom:a.spacing.md},children:t.jsx(In,{assets:n,selectedAsset:void 0,onAssetSelect:x=>u(x,0),onAmountChange:x=>h(x,0),loading:o,label:"Deposit",showBalance:!0,theme:a,styles:i,allowSecondAsset:r,onAddAsset:p,canAddAsset:!1},"initial-selector")})]}),eo=l.memo(({isOpen:e,onClose:n,onDepositSelect:s,depositBatches:o,supportedChains:r,title:a,styles:i,onDepositAssetChange:c,assetInputHook:d,externalWalletAddress:u,onDepositAmountChange:h,allowSecondAsset:p=!1,destinationChainId:g,destinationTokenAddress:f,onDepositExecute:x,depositActionLabel:b,nativeChainId:y,sponsorGas:C=!1,preSelectedAsset:k,escrowOnly:I=!1,escrowTokenAddress:v,escrowAmount:S,escrowTokenDecimals:w,escrowTokenSymbol:A,onDepositSuccess:j,embeddedWalletAddress:E,onViewAllAssets:M})=>{const B=l.useContext(m.SpiceFlowProviderContext),R=B?.mode||"7702",F=B?.allowedTokens,T=d?.assetAmount||"",{theme:N,dark:L,appName:W,primaryColor:Q,dk:O}=m.useSpiceBrand(i),q=qt(),{isReady:X,isAuthenticated:D,actions:H}=q,{externalWallet:G}=Sn(),se=Vt()||E,ee=R!="7702",pe=ee?!!u:X&&D&&!!se,V=se,ye=u,$=V??ye,{data:fe}=gt.useWalletClient(),[ke,be]=l.useState(fe),me=l.useRef(null);l.useEffect(()=>{if(!G||!ye){me.current=null,be(fe);return}if(G.address?.toLowerCase()!==ye?.toLowerCase()){me.current=null,be(fe);return}G.getEthereumProvider().then(async K=>{me.current=K;const J=await K.request({method:"eth_chainId"}),xe=parseInt(J,16),le=m.getChainConfig(xe),qe=await G.getWalletClient(xe);be(le?U.createWalletClient({account:ye,chain:le.viemChain,transport:U.custom(K)}):qe)}).catch(()=>{me.current=null,be(fe)})},[G,ye,fe]);const ue=l.useRef(null),[de,P]=l.useState([]),{assets:oe,loading:ce,error:ae,refreshAssets:he}=ts({address:I?V:ye||V,supportedChains:r,fetchBalances:es,refreshInterval:e?5e3:0}),_=l.useMemo(()=>{const K=r.flatMap(J=>m.getAllAssetsForChain(J,oe));return F&&F.length>0?K.filter(J=>F.includes(J.symbol.toLowerCase())||J.isNative&&F.includes("native")).sort((J,xe)=>{const le=J.balance>BigInt(0)?1:0;return(xe.balance>BigInt(0)?1:0)-le}):K.filter(J=>J.balance>BigInt(0))},[r,oe,F]),Z=l.useMemo(()=>{if(!de[0]?.asset)return[];const K=de[0].asset.chainId;return _.filter(J=>J.chainId===K)},[_,de]),[re,ge]=l.useState(!1),[te,Ne]=l.useState(null),[Me,Oe]=l.useState("idle"),[Ie,ut]=l.useState(null),[xt,we]=l.useState(!1),[Ue,Pe]=l.useState(null),[vt,rt]=l.useState("idle"),[Je,pt]=l.useState(null),[De,mt]=l.useState(null),[ft,ht]=l.useState(null),[$e,_e]=l.useState(null),[Ft,at]=l.useState(null),{intentStatus:Ce,startStatusPolling:et,clearStatus:Tt}=qs({checkStepStatus:(K,J)=>m.relayerService.checkStepStatus(K,J),pollingInterval:1e3,retryStep:async(K,J)=>{const[xe,le]=K.split("/"),qe=parseInt(le||"0",10);await m.relayerService.executeStep(xe,qe,J,{action:"execute"})},maxRetries:3}),kt=l.useCallback((K,J)=>{const xe=m.CHAIN_CONFIGS[J];return xe?xe.supportedTokens?.find(le=>m.addressesEqual(le.address,K))?.symbol??null:null},[]),Fe=l.useMemo(()=>{const K=de[0]?.asset;if(!K||!f||!g)return!1;const J=kt(f,g);return Tr(K.symbol)&&!!J&&Rr(J)},[de,f,g,kt]);l.useEffect(()=>{de.length>0&&T!==de[0]?.amount&&P(K=>{if(K.length===0)return K;const J=[...K];return J[0]={...J[0],amount:T||""},J})},[T]),l.useEffect(()=>{de.length!==0&&P(K=>K.map(J=>{if(!J.asset)return J;const xe=_.find(le=>le.chainId===J.asset.chainId&&m.addressesEqual(le.address,J.asset.address));return xe?{...J,asset:xe,amount:J.amount}:J}))},[oe]),l.useEffect(()=>{if(!k||de.length>0||_.length===0)return;const K=_.find(J=>J.chainId===k.chainId&&m.addressesEqual(J.address,k.address));K&&(P([{asset:K,amount:""}]),c?.(K))},[k,_,de.length]);const Ze=l.useRef(null);l.useEffect(()=>{if(ee&&Ce?.overallStatus==="success"&&x&&Me==="idle"){const K=Ze.current,J=ue.current;K&&(async()=>{try{Oe("executing"),await x(K),Oe("success"),Pe(K),we(!0);const xe=Array.isArray(J)?J[0]:void 0,le={type:"deposit",status:"success",amount:K,asset:xe?.tokenAddress,sourceChain:xe?String(xe.chainId):void 0,txHash:xe?.txHash};window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:le})),j?.(le)}catch(xe){console.error("onDepositExecute failed:",xe),Oe("error"),ut(m.sanitizeError(xe,"Post-deposit instruction failed"))}finally{Ze.current=null,ue.current=null}})()}},[Ce?.overallStatus,ee,Me]);const dt=l.useCallback(()=>{Ne(null)},[]);l.useEffect(()=>{e||(we(!1),Pe(null),rt("idle"),pt(null),mt(null))},[e]);const it=(K,J)=>{P(xe=>{const le=[...xe];return le[J]={asset:K,amount:le[J]?.amount||""},le}),J===0&&c?.(K),dt()},Pt=l.useCallback(async(K,J)=>{if(P(xe=>{const le=[...xe];return le[J]&&(le[J]={...le[J],amount:K}),le}),dt(),J===0)if(d?.setAssetAmount(K),Fe&&K&&parseFloat(K)>0)try{const xe=ft??await Fr();ft||ht(xe);const le=de[0]?.asset;if(!le)return;const qe=U.parseUnits(K,le.decimals),ze=f?kt(f,g):null,Ve=m.CHAIN_CONFIGS[g]?.supportedTokens?.find(Re=>m.addressesEqual(Re.address,f))?.decimals??6,ot=Mr(qe,le.decimals,Ve,xe);_e(ot);const Mt=U.formatUnits(ot,Ve),Se=xe.toLocaleString("en-US",{maximumFractionDigits:0});at(`${K} ${le.symbol} \u2248 $${parseFloat(Mt).toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2})} ${ze??"USD"} (rate: $${Se}/BTC)`),h?.(Mt)}catch(xe){console.error("Failed to fetch BTC/USD price:",xe),at(null),_e(null),h?.(K)}else at(null),_e(null),h?.(K)},[dt,d,h,Fe,ft,de,f,g,kt]),nn=l.useCallback(()=>{de.length<2&&P(K=>[...K,{asset:null,amount:""}])},[de.length]),yt=l.useCallback(K=>{P(J=>J.filter((xe,le)=>le!==K)),dt()},[dt]),tt=l.useRef(!1),Xe=l.useRef(!1);l.useEffect(()=>{e||(tt.current=!1,Xe.current=!1,Ct(null),Rt(null))},[e]);const[He,nt]=l.useState(!1),[Ye,lt]=l.useState(null),[Ke,Ct]=l.useState(null),[At,Rt]=l.useState(null),[sn,Yt]=l.useState(!1),[Lt,Nt]=l.useState(null),Ae=l.useMemo(()=>{const K=de[0];if(de.length!==1||!K?.asset||!K.amount||parseFloat(K.amount)<=0)return null;try{return{asset:K.asset,amount:U.parseUnits(K.amount,K.asset.decimals),token:z.normalizeNativeTokenAddress(K.asset.address),chainId:K.asset.chainId}}catch{return null}},[de]),ne=l.useMemo(()=>Ae?[Ae.chainId,Ae.token.toLowerCase(),Ae.amount.toString(),I?"escrow":"normal"].join("|"):null,[Ae,I]),ie=l.useCallback(async()=>!V||!Ae?null:_r({address:V,depositQuote:Ae,escrowOnly:I}),[V,Ae,I]);l.useEffect(()=>{let K=!1;if(!e||ee||!Ae||He||re){Ct(null),Nt(null),Yt(!1);return}const J=async()=>{Nt(null),Yt(!0);try{const le=await ie();K||Ct(le)}catch(le){if(K)return;Ct(null),Nt(le instanceof Error?le.message:"Failed to estimate gas fee")}finally{K||Yt(!1)}};J();const xe=window.setInterval(()=>{J()},1e4);return()=>{K=!0,window.clearInterval(xe)}},[e,ee,ne,ie,He,re]),l.useEffect(()=>{He||re||Rt(null)},[He,re,ne]);const Ee=async()=>{if(de.length===0||!de[0]?.asset)return;const K=de.filter(ze=>ze.asset&&ze.amount&&parseFloat(ze.amount)>0);if(K.length===0)return;const J=K[0],xe=m.getChainConfig(J.asset.chainId),le=K.map(ze=>{const Ve=parseFloat(ze.amount);return`${isNaN(Ve)?ze.amount:Ve.toPrecision(6).replace(/\.?0+$/,"")} ${ze.asset.symbol}`}).join(", "),qe={network:xe?.displayName||`Chain ${J.asset.chainId}`,amount:le,symbol:"",chainId:J.asset.chainId};if(!ee&&K.length===1&&Ke){Rt(Ke);const ze=K[0];qe.creditedAmount=`${U.formatUnits(Ke.net,ze.asset.decimals)} ${ze.asset.symbol}`,qe.networkFee=`${U.formatUnits(Ke.fee,ze.asset.decimals)} ${ze.asset.symbol}`}lt(qe),nt(!0)},Le=l.useRef(Ce);Le.current=Ce;const Ge=l.useRef(Me);Ge.current=Me;const st=async()=>{await $r({selectedDepositAssets:de,escrowOnly:I,sourceAddress:ye,isNon7702:ee,address:V,embeddedWalletAddress:se,isReady:X,isAuthenticated:D,zeroCreditError:ct,depositBalanceError:Te,externalWalletClient:ke,externalProvider:me.current,effectiveDepositFee:Y,depositBatches:o,destinationChainId:g,destinationTokenAddress:f,isCrossDenomination:Fe,convertedUsdAmount:$e,mode:R,sponsorGas:C,nativeChainId:y,spiceBalanceUser:$,depositDataRef:ue,bridgedAmountRef:Ze,setIsExecuting:ge,setError:Ne,setConfirmationData:lt,setShowConfirmation:nt,setDirectDepositStatus:rt,setDirectDepositChainId:mt,setDirectDepositTxHash:pt,setPostDepositStatus:Oe,setPostDepositError:ut,setPostDepositAmount:Pe,setPostDepositSuccess:we,startStatusPolling:et,clearStatus:Tt,refreshAssets:he,onDepositExecute:x,onDepositSelect:s,onDepositSuccess:j,actions:H,getCurrentIntentStatus:()=>Le.current,getCurrentPostDepositStatus:()=>Ge.current})},ct=l.useMemo(()=>{for(const K of de)if(!(!K?.asset||!K.amount||parseFloat(K.amount)<=0))try{const J=K.asset.decimals,xe=U.parseUnits(K.amount,J);if(xe<=0n)continue;const le=z.getEquivalenceGroup(z.normalizeNativeTokenAddress(K.asset.address)),qe=K.asset.receiptTokenDecimals??(le==="ETH"||le==="ARB"?18:le==="USDC"||le==="SUSD"||le==="WBTC"||le==="CBTC"?6:void 0);if(qe===void 0||J<=qe||z.convertAmountBetweenDecimals(xe,J,qe)>0n)continue;return`Amount too small. Minimum deposit for this asset is ${U.formatUnits(10n**BigInt(J-qe),J)} ${K.asset.symbol}.`}catch{continue}return null},[de]),Qe=!ee&&!!Ae,Y=At??Ke,ve=!!Ae&&!!Y&&Y.chainId===Ae.chainId&&m.addressesEqual(Y.token,Ae.token),Te=l.useMemo(()=>{if(!Qe||!Ae||!ve)return null;const K=I?Ae.amount:Ae.amount+Y.fee;return Ae.asset.balance>=K?null:`Insufficient ${Ae.asset.symbol}. Need ${U.formatUnits(K,Ae.asset.decimals)} ${Ae.asset.symbol} including gas.`},[Qe,Ae,ve,Y,I]),je=!Qe||ve&&!sn&&!Lt&&!Te,We=l.useMemo(()=>{if(!Ae||!Y||!ve)return null;const K=I?Ae.amount:Ae.amount+Y.fee;return{symbol:Ae.asset.symbol,decimals:Ae.asset.decimals,grossAmount:K,netAmount:Y.net,totalFee:Y.fee,gasFee:Y.fee,spicenetFee:0n,bridgeFee:0n,gasQuoteSource:"estimated"}},[Ae,Y,ve,I]),bt=de.length>0&&de[0]?.asset&&de[0]?.amount&&parseFloat(de[0].amount)>0&&pe&&!re&&!ct&&!Te&&je;l.useEffect(()=>{if(!I||!v||!S||tt.current||!pe)return;const K=r[0];if(!K)return;const J=m.getAllAssetsForChain(K,[]).find(le=>m.addressesEqual(le.address,v));let xe;if(J)xe=J;else if(w!==void 0&&A)xe={address:v,symbol:A,name:A,decimals:w,chainId:K,balance:BigInt(0),balanceFormatted:0,balanceUsd:0,isNative:z.isNativeToken(v)};else{console.warn("[DepositModal] escrowOnly: no matching asset and missing escrowTokenDecimals/escrowTokenSymbol for",v);return}tt.current=!0,P([{asset:xe,amount:S}])},[I,v,S,w,A,pe,r]),l.useEffect(()=>{!I||!bt||Xe.current||re||(Xe.current=!0,st())},[I,bt,re]);const Et=ae||te||ct||Te,Ot=()=>{if(re)return"Executing Deposit...";if(!pe)return"Wallet Not Connected";if(R==="7702"){if(!X)return"Loading...";if(!D)return"Authentication Required"}return de[0]?.asset?de[0]?.amount?ct?"AMOUNT TOO SMALL":Te?"INSUFFICIENT BALANCE":Qe&&!je?Lt?"GAS UNAVAILABLE":"ESTIMATING GAS":"DEPOSIT":"ENTER AMOUNT":"SELECT TOKEN"};return e?t.jsx(Jt,{isOpen:e,onClose:n,title:a||`Deposit to your ${W} account`,subtitle:t.jsx(ea,{appName:W,dark:L,dk:O}),dark:L,overlayContent:He||Ce||Me!=="idle"&&x?t.jsx("div",{}):void 0,styles:i,theme:N,children:t.jsxs("div",{style:{padding:"24px 24px 5px 24px"},children:[t.jsx(oa,{selectedDepositAssets:de,depositAssets:_,secondAssetOptions:Z,loadingAssets:ce,allowSecondAsset:p,theme:N,styles:i,dark:L,dk:O,onSelect:it,onAmountChange:Pt,onAdd:nn,onRemove:yt,onViewAllAssets:M}),Qe&&Ae&&t.jsx(Nn,{fontFamily:i?.fontFamily||N.typography.fontFamily,textPrimary:O.textPrimary,textSecondary:O.textSecondary,cardBg:L?O.inputBg:"#ffffff",cardBorder:O.cardBorder,resolvedDark:L,darkCardBorder:O.cardBorder,primaryColor:Q,feePreview:We,isLoading:sn||Qe&&!ve,errorText:Lt}),t.jsx(Yr,{intentStatus:Ce,postDepositSuccess:xt,postDepositAmount:Ue,postDepositStatus:Me,depositActionLabel:b,sourceChainName:de[0]?.asset?.chainId?m.getChainName(de[0].asset.chainId):"Destination Chain",directDepositStatus:vt,directDepositTxHash:Je,directDepositChainId:De,styles:i}),t.jsx(qr,{isOpen:He||!!Ce||Me!=="idle"&&!!x,onClose:()=>{nt(!1),Ce&&Tt();const K=Me==="success"&&!Ce,J=Ce?.overallStatus==="success"&&Me==="success"&&x;(K||J)&&n()},onConfirm:st,data:Ye,isExecuting:re,error:te,theme:N,styles:i,intentStatus:Ce,postDepositStatus:Me,hasPostDepositInstruction:!!x}),Ft&&t.jsxs("div",{style:{padding:"8px 12px",marginBottom:"8px",backgroundColor:L?O.warningBg:"#fffbeb",border:`1px solid ${O.warningBorder}`,borderRadius:N.borderRadius.md,fontSize:"12px",color:O.warningText,lineHeight:"1.4"},children:["\u26A1 ",Ft]}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:0,marginBottom:0,margin:0,padding:0},children:[Et?t.jsx("div",{style:{marginBottom:"10px",fontSize:"12px",lineHeight:"1.45",color:O.errorText,fontFamily:i?.fontFamily||N.typography.fontFamily},children:Et}):null,t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:Ee,disabled:!bt||!pe||re,theme:N,dark:L,styles:i,children:Ot()})]})]})}):null}),ra=({isOpen:e,onClose:n,deposits:s,onComplete:o,onCancel:r,onSkip:a,onChangeWallet:i,isProcessing:c,error:d,styles:u})=>{const{dark:h,dk:p,theme:g}=m.useSpiceBrand(u);if(!e||s.length===0)return null;const f=s[0],x=u?.fontFamily||'"Helvetica Neue", sans-serif',b='"IBM Plex Mono", monospace',y=m.getChainName(f.chainId),C=parseFloat(f.amount).toPrecision(6).replace(/\.?0+$/,""),k=U.formatUnits(f.verifiedBalance,f.tokenDecimals);return t.jsx(Jt,{isOpen:e,onClose:n,title:"Incomplete Deposit",styles:u,children:t.jsxs("div",{style:{padding:"18px 24px 24px",fontFamily:x},children:[t.jsx("p",{style:{fontSize:"14px",color:p.textSecondary,lineHeight:"1.6",margin:"0 0 18px 0"},children:"Your funds reached your wallet, but the deposit didn't finish."}),t.jsxs("div",{style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr) auto",gap:"14px 18px",marginBottom:"24px",padding:"16px 18px",backgroundColor:h?p.cardBg:"#f8fafc",border:`1px solid ${p.cardBorder}`,borderRadius:h?"14px":"10px",boxShadow:h?"inset 0 1px 0 rgba(255,255,255,0.03)":"0 1px 2px rgba(16,24,40,0.04)"},children:[t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[t.jsx("span",{style:{fontSize:"12px",fontWeight:600,color:p.textSecondary,fontFamily:b,letterSpacing:"0.8px"},children:"NETWORK"}),t.jsx("span",{style:{fontSize:"18px",fontWeight:600,color:p.textPrimary,fontFamily:x,lineHeight:1.2},children:y})]}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px",alignItems:"flex-end",textAlign:"right"},children:[t.jsx("span",{style:{fontSize:"12px",fontWeight:600,color:p.textSecondary,fontFamily:b,letterSpacing:"0.8px"},children:"DEPOSITED AMOUNT"}),t.jsxs("span",{style:{fontSize:"24px",fontWeight:700,color:p.successText,fontFamily:b,lineHeight:1.1},children:[C," ",f.tokenSymbol]}),t.jsx("span",{style:{fontSize:"12px",color:p.textSecondary,fontWeight:500,fontFamily:x},children:"Sent to embedded wallet"})]})]}),!f.hasFullBalance&&f.verifiedBalance>0n&&t.jsxs("div",{style:{marginBottom:"16px",padding:"8px 12px",backgroundColor:p.warningBg,border:`1px solid ${h?p.warningBorder:"#fcd34d"}`,borderRadius:"8px",fontSize:"13px",color:p.warningText,lineHeight:"1.4"},children:["Partial balance \u2014 only ",parseFloat(k).toFixed(4)," ",f.tokenSymbol," available."]}),d&&t.jsx("div",{style:{marginBottom:"16px",padding:"10px 12px",backgroundColor:p.errorBg,border:`1px solid ${h?p.errorBorder:"#fca5a5"}`,borderRadius:"8px",fontSize:"13px",color:h?p.errorText:"#991b1b",lineHeight:"1.4"},children:d}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"12px"},children:[t.jsx(m.Button,{variant:"outline",fullWidth:!0,disabled:c,onClick:()=>o(f),theme:g,dark:h,styles:u,children:"CONFIRM DEPOSIT"}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"10px"},children:[t.jsx(m.Button,{variant:"ghost",fullWidth:!0,disabled:c,onClick:()=>r(f),theme:g,dark:h,style:{height:"48px",fontSize:"13px",letterSpacing:"0.4px",color:h?p.textPrimary:"#374151",border:`1px solid ${h?p.cardBorder:"#d1d5db"}`,borderRadius:"12px",backgroundColor:h?"rgba(255,255,255,0.02)":"#ffffff"},children:c?"RETURNING...":"RETURN FUNDS"}),t.jsxs("div",{style:{display:"grid",gridTemplateColumns:i?"1fr 1fr":"1fr",gap:"10px"},children:[t.jsx(m.Button,{variant:"ghost",fullWidth:!0,disabled:c,onClick:a,theme:g,dark:h,style:{height:"44px",fontSize:"12px",letterSpacing:"0.4px",color:p.textSecondary,border:`1px solid ${h?p.cardBorder:"#d1d5db"}`,borderRadius:"12px",backgroundColor:"transparent"},children:"START OVER"}),i&&t.jsx(m.Button,{variant:"ghost",fullWidth:!0,disabled:c,onClick:i,theme:g,dark:h,style:{height:"44px",fontSize:"12px",letterSpacing:"0.4px",color:p.textSecondary,border:`1px solid ${h?p.cardBorder:"#d1d5db"}`,borderRadius:"12px",backgroundColor:"transparent"},children:"CHANGE WALLET"})]})]})]}),s.length>1&&t.jsxs("p",{style:{fontSize:"12px",color:p.textSecondary,textAlign:"center",marginTop:"14px",marginBottom:0,lineHeight:"1.5"},children:[s.length," incomplete deposits found \u2014 resolving one at a time."]})]})})},hs=e=>{const[n,s]=l.useState(!1),o=l.useContext(m.SpiceFlowProviderContext),{dark:r,dk:a}=m.useSpiceBrand();if(l.useEffect(()=>{s(!0)},[]),!n)return t.jsx("div",{className:e.className,children:t.jsx("button",{disabled:!0,style:{padding:"12px 24px",fontSize:"16px",backgroundColor:r?a.hoverBg:"#ccc",color:r?a.textSecondary:"white",border:r?`1px solid ${a.buttonBorder}`:"none",borderRadius:"4px",cursor:"not-allowed"},children:"Loading..."})});if(!o){const i='ProviderLogin must be used within SpiceFlowProvider. Please wrap your app with <SpiceFlowProvider provider="privy" | "dynamic">.';return t.jsx("div",{className:e.className,children:t.jsx("button",{onClick:()=>{e.onAuthError&&e.onAuthError(i)},style:{padding:"12px 24px",fontSize:"16px",backgroundColor:r?a.errorBg:"#dc2626",color:r?a.errorText:"white",border:r?`1px solid ${a.errorBorder}`:"none",borderRadius:"4px",cursor:"pointer"},children:"Provider Not Found"})})}if(o.provider==="privy")return t.jsx(cr.PrivyLogin,{...e});if(o.provider==="dynamic"){const i='Dynamic provider is not supported in this build of @spicenet-io/spiceflow-ui. Use provider="privy" instead.';return t.jsx("div",{className:e.className,children:t.jsx("button",{onClick:()=>{e.onAuthError&&e.onAuthError(i)},style:{padding:"12px 24px",fontSize:"16px",backgroundColor:r?a.errorBg:"#dc2626",color:r?a.errorText:"white",border:r?`1px solid ${a.errorBorder}`:"none",borderRadius:"4px",cursor:"pointer"},children:"Dynamic Not Supported"})})}return null},aa=5*60*1e3;function to(e,n){const[s,o]=l.useState([]),[r,a]=l.useState(!1),i=l.useRef(n);i.current=n;const c=l.useRef(0),d=l.useRef(0),u=l.useCallback(async({forceDiscovery:h=!1}={})=>{if(!e){o([]);return}const p=++d.current,g=()=>p!==d.current;a(!0);try{const f=[],x=Zr(e);for(const k of x){if(g())return;try{const I=m.getClientForChain(k.chainId);let v;if(k.isNative||z.isNativeToken(k.tokenAddress)?v=await jt.getBalance(I,{address:e}):v=await jt.readContract(I,{address:U.getAddress(k.tokenAddress),abi:m.z,functionName:"balanceOf",args:[e]}),g())return;v>0n?f.push({...k,verifiedBalance:v,hasFullBalance:v>=BigInt(k.rawAmount)}):Date.now()-k.timestamp>15*60*1e3&&cs(e,k.chainId,k.tokenAddress)}catch(I){console.warn(`[usePendingDeposit] Failed to verify balance for ${k.tokenSymbol} on chain ${k.chainId}:`,I),f.push({...k,verifiedBalance:0n,hasFullBalance:!1})}}if(g())return;const b=i.current,y=Date.now(),C=h||y-c.current>=aa;if(b?.network&&C){c.current=y;const k=b.chainIds??z.getChainIdsByNetwork(b.network),I=new Set(f.map(S=>`${S.chainId}:${S.tokenAddress.toLowerCase()}`)),v=[];for(const S of k){const w=m.getChainConfig(S);if(w?.supportedTokens)for(const A of w.supportedTokens){if(z.isNativeToken(A.address))continue;const j=`${S}:${A.address.toLowerCase()}`;I.has(j)||v.push((async()=>{try{const E=m.getClientForChain(S),M=await jt.readContract(E,{address:U.getAddress(A.address),abi:m.z,functionName:"balanceOf",args:[e]});return M>0n?{chainId:S,tokenAddress:A.address,tokenSymbol:A.symbol,tokenDecimals:A.decimals,amount:U.formatUnits(M,A.decimals),rawAmount:M.toString(),embeddedWalletAddress:e,externalWalletAddress:"",timestamp:0,isNative:!1,verifiedBalance:M,hasFullBalance:!0}:null}catch{return null}})())}}if(v.length>0){const S=await Promise.allSettled(v);if(g())return;for(const w of S)w.status==="fulfilled"&&w.value&&f.push(w.value)}}g()||o(f)}catch(f){console.error("[usePendingDeposit] Verification error:",f),g()||o([])}finally{g()||a(!1)}},[e]);return l.useEffect(()=>{u({forceDiscovery:!0});const h=i.current?.pollIntervalMs??3e4;if(h<=0||!e)return()=>{d.current++};const p=setInterval(()=>{u({forceDiscovery:!1})},h),g=()=>u({forceDiscovery:!0});return window.addEventListener(Un,g),()=>{d.current++,window.removeEventListener(Un,g),clearInterval(p)}},[u,e]),{pendingDeposits:s,loading:r,refresh:()=>u({forceDiscovery:!0})}}function ia(e,n,s,o,r){return{address:n,symbol:s||"UNKNOWN",name:s||"Unknown Token",decimals:o||18,chainId:e,balance:0n,balanceFormatted:r?parseFloat(r):0,balanceUsd:0,isNative:z.isNativeToken(n)}}const la=({isOpen:e,onClose:n,styles:s,depositBatches:o,onDepositAmountChange:r,destinationChainId:a,destinationTokenAddress:i,onDepositExecute:c,depositActionLabel:d,sponsorGas:u=!1,escrowRecovery:h,skipTokenSelection:p=!1,onDepositSuccess:g,skipRecovery:f=!1})=>{const x=l.useContext(m.SpiceFlowProviderContext);if(!x)return t.jsx("div",{children:"Error: SpiceDeposit must be used within SpiceFlowProvider"});const b=(x.mode||"7702")!="7702",y=b,C=x.nativeChainId,k=x.network||"testnet",{dark:I,dk:v}=m.useSpiceBrand(s),S=!!h,w=()=>y?"connect-wallet":"provider-login",[A,j]=l.useState(w()),[E,M]=l.useState(null),[B,R]=l.useState(!1),F=qt(),{isReady:T,isAuthenticated:N,actions:L}=F,W=Vt(),{address:Q}=gt.useAccount(),{externalAddress:O}=Sn(),q=O??Q,X=!!q,{pendingDeposits:D,loading:H,refresh:G}=to(W,{network:k,chainIds:x.supportedChainIds}),[se,ee]=l.useState(null),[pe,V]=l.useState(!1),[ye,$]=l.useState(null),[fe,ke]=l.useState(!1),[be,me]=l.useState("idle");l.useEffect(()=>{e&&!f&&!S&&!se&&!fe&&be==="idle"&&N&&W&&X&&q&&!H&&D.length>0&&A!=="recovery"&&A!=="deposit"&&j("recovery")},[e,f,S,N,W,X,q,H,D,A,se,fe,be]);const ue=l.useCallback(te=>{const Ne={address:te.tokenAddress,symbol:te.tokenSymbol,name:te.tokenSymbol,decimals:te.tokenDecimals,chainId:te.chainId,balance:te.verifiedBalance,balanceFormatted:parseFloat(te.amount),balanceUsd:0,isNative:te.isNative};M(Ne),ee(te),j("deposit")},[]),de=l.useCallback(()=>{ke(!0),j(N&&W&&X&&q?p?"deposit":"select-token":N&&W?"connect-wallet":"provider-login")},[N,W,X,q,p]),P=l.useCallback(()=>{$(null),me("awaiting-disconnect"),j("connect-wallet")},[]),oe=l.useCallback(async te=>{V(!0),$(null);try{if(!W)throw new Error("Embedded wallet not available");const Ne=await L.getEthereumProvider(),Me=m.getChainConfig(te.chainId);await m.ensureWalletOnChain(Ne,te.chainId);const Oe=m.getClientForChain(te.chainId),Ie=await jt.getBalance(Oe,{address:W}),ut=Me?.viemChain?.name||`chain ${te.chainId}`;if(Ie===0n)throw new Error(`Your embedded wallet has no ETH on ${ut} to pay for gas. We recommend completing the deposit instead \u2014 it doesn't require gas.`);const xt=U.createWalletClient({account:W,transport:U.custom(Ne),chain:Me?.viemChain});let we;te.isNative||z.isNativeToken(te.tokenAddress)?we=await xt.sendTransaction({to:te.externalWalletAddress,value:te.verifiedBalance,chain:Me?.viemChain}):we=await xt.sendTransaction({to:te.tokenAddress,data:U.encodeFunctionData({abi:m.z,functionName:"transfer",args:[te.externalWalletAddress,te.verifiedBalance]}),chain:Me?.viemChain}),await Oe.waitForTransactionReceipt({hash:we,confirmations:1}),cs(te.embeddedWalletAddress,te.chainId,te.tokenAddress),G(),D.length<=1&&j(w())}catch(Ne){const Me=Ne?.message||"Couldn't return your funds. Please try again.",Oe=/insufficient funds for gas/i.test(Me);$(Oe?"Not enough ETH in your embedded wallet to cover gas fees. Complete the deposit instead \u2014 it doesn't require gas.":Me)}finally{V(!1)}},[L,W,D,G]);l.useEffect(()=>{e||(ee(null),$(null),V(!1),ke(!1),me("idle"))},[e]),l.useEffect(()=>{if(be!=="idle"){if(be==="awaiting-disconnect"){(!X||!q)&&me("awaiting-reconnect");return}e&&!H&&D.length>0&&N&&W&&(me("idle"),j("recovery"))}},[be,X,q,e,H,D,N,W]),l.useEffect(()=>{!S||!e||(N&&W?(R(!0),!E&&h?.chainId&&h?.tokenAddress&&M(ia(h.chainId,h.tokenAddress,h.tokenSymbol,h.tokenDecimals,h.amount)),j("deposit")):j("provider-login"))},[S,e,A,N,W]);const{assets:ce,loading:ae}=ts({address:q,supportedChains:x.supportedChainIds,fetchBalances:es,refreshInterval:e?5e3:0}),he=l.useCallback(()=>{R(!0),j(S?"deposit":"connect-wallet")},[S]),_=l.useCallback(async()=>{if((!X||!q)&&(await new Promise(te=>setTimeout(te,500)),!X||!q)){alert("Please connect your wallet first");return}j(p?"deposit":"select-token")},[X,q,p]),Z=l.useCallback(te=>{M(te),j("deposit")},[]),re=l.useCallback(()=>{if(M(null),r?.(""),!q){j("connect-wallet");return}j("select-token")},[q,r]),ge=l.useCallback(()=>{n()},[n]);if(l.useEffect(()=>{if(!e){const te=setTimeout(()=>{S||(j(w()),M(null)),R(!1)},300);return()=>clearTimeout(te)}},[e,S,h?.chainId]),l.useEffect(()=>{e&&A==="deposit"&&!E&&!S&&!se&&!p&&j("select-token")},[e,A,E,S,se,p]),l.useEffect(()=>{if(!y&&e&&A==="provider-login"&&T&&N&&W&&!B){const te=setTimeout(()=>{R(!0),j("connect-wallet")},100);return()=>clearTimeout(te)}},[y,e,A,T,N,W,B]),!e)return null;if(A==="recovery")return t.jsx(ra,{isOpen:e,onClose:ge,deposits:D,onComplete:ue,onCancel:oe,onSkip:de,onChangeWallet:P,isProcessing:pe,error:ye,styles:s});if(A==="provider-login"&&!y)return t.jsx("div",{style:{position:"fixed",inset:0,backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",padding:"16px",zIndex:50},children:t.jsx("div",{style:{backgroundColor:I?v.cardBg:"white",borderRadius:"9px",padding:"32px 24px",maxWidth:"400px",width:"100%"},children:t.jsx(hs,{onAuthSuccess:he,autoTrigger:!0})})});if(A==="connect-wallet")return t.jsx(Lr,{isOpen:e,onClose:ge,onContinue:_,requiredChainId:b?C:void 0,styles:s});if(A==="select-token")return q?t.jsx(Ur,{isOpen:e,onClose:ge,onTokenSelect:Z,walletAddress:q,supportedChainIds:x.supportedChainIds,network:k,prefetchedAssets:ae?null:ce??null,styles:s,dark:I}):(j("connect-wallet"),null);if(A==="deposit"){if(!E&&!p)return null;const te=!!se;return t.jsx(eo,{isOpen:e,onClose:ge,supportedChains:E?[E.chainId]:x.supportedChainIds??[],styles:s,externalWalletAddress:q,depositBatches:te?void 0:o,onDepositAmountChange:r,destinationChainId:a,destinationTokenAddress:i,onDepositExecute:c,depositActionLabel:d,nativeChainId:C,sponsorGas:u,preSelectedAsset:E??void 0,escrowOnly:S||te,escrowTokenAddress:te?se.tokenAddress:h?.tokenAddress,escrowAmount:te?se.amount:h?.amount,escrowTokenDecimals:te?se.tokenDecimals:h?.tokenDecimals,escrowTokenSymbol:te?se.tokenSymbol:h?.tokenSymbol,onDepositSuccess:g,embeddedWalletAddress:W,onViewAllAssets:p?void 0:re})}return null},no=e=>l.useContext(m.SpiceFlowProviderContext)?t.jsx(la,{...e}):t.jsx("div",{children:"Error: SpiceDeposit must be used within SpiceFlowProvider"}),da=({isOpen:e,onClose:n,onChainSelect:s,supportedChains:o,closeOnSelect:r=!0,styles:a})=>{const{theme:i,dark:c,primaryColor:d,dk:u}=m.useSpiceBrand(a),[h,p]=l.useState(""),[g,f]=l.useState(null),[x,b]=l.useState(null),[y,C]=l.useState(!1),[k,I]=l.useState(null),{switchChainAsync:v}=gt.useSwitchChain(),S=l.useMemo(()=>new Set(o||[]),[o]),w=l.useMemo(()=>{if(!o||o.length===0)return[];const M=[];return o.forEach((B,R)=>{if(typeof B!="number")return;const F=m.getChainConfig(B);F&&M.push({id:B.toString(),name:F.displayName,icon:zt[B]||Gt,chainId:B,verified:!0,order:R})}),M},[o]);l.useEffect(()=>{g&&!S.has(parseInt(g,10))&&f(null)},[g,S]);const A=l.useMemo(()=>w.filter(M=>M.name.toLowerCase().includes(h.toLowerCase())).sort((M,B)=>M.order-B.order),[w,h]),j=async()=>{if(!g)return;const M=parseInt(g,10);C(!0),I(null);try{await v({chainId:M}),s&&s(g),r&&n()}catch(B){console.error("Failed to switch chain:",B),I(m.sanitizeError(B,"Failed to switch chain."))}finally{C(!1)}},E=!g||y;return t.jsxs(Jt,{isOpen:e,onClose:n,title:"Select Chain",styles:a,theme:i,dark:c,children:[t.jsx("div",{style:{padding:"24px 20px"},children:t.jsx($n,{value:h,onChange:p,ariaLabel:"Search chains",placeholder:"Search chain name, symbol or address",size:"md",dark:c,styles:a,endAdornment:t.jsx("div",{style:{padding:"5px 5px",borderRadius:"3px",fontSize:"13px",backgroundColor:c?u.cardBg:"#E9E9E9",color:c?u.textSecondary:"#485066",fontWeight:500,flexShrink:0},"aria-hidden":"true",children:"\u2318F"})})}),t.jsx("div",{style:{padding:"0 32px 20px",display:"flex",flexDirection:"column",gap:"12px"},children:A.map(M=>{const B=g===M.id,R=x===M.id;return t.jsxs("button",{onClick:()=>f(M.id),onMouseEnter:()=>b(M.id),onMouseLeave:()=>b(null),style:{width:"100%",display:"flex",alignItems:"center",gap:"16px",padding:"8px",borderRadius:"8px",backgroundColor:B?c?`${d}15`:`${d}12`:"transparent",border:B?c?`1px solid ${d}66`:`1px solid ${d}88`:R?c?`1px solid ${d}44`:`1px solid ${d}66`:"1px solid transparent",cursor:"pointer",transition:Wt.interactive},children:[t.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"30px"},children:t.jsx("img",{src:M.icon,alt:M.name,loading:"lazy",decoding:"async",style:{width:"100%",height:"100%",borderRadius:"50%"}})}),t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px",flex:1},children:[t.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"17px",fontWeight:500,letterSpacing:"0.4px",color:u.textPrimary,textAlign:"left"},children:M.name}),M.verified&&t.jsx("img",{src:Hs,alt:"","aria-hidden":"true",loading:"lazy",decoding:"async",width:16,height:16,style:{width:"16px",height:"16px",filter:c?"brightness(0) invert(1)":"none"}})]})]},M.id)})}),t.jsx("div",{style:{padding:"0 25px 25px"},children:t.jsxs(m.Button,{variant:"outline",onClick:j,disabled:E,fullWidth:!0,theme:i,styles:a,dark:c,children:["SELECT",t.jsx(Xn.ChevronRight,{size:20})]})})]})},so=({title:e,icon:n,amount:s,children:o,defaultExpanded:r=!1})=>{const[a,i]=l.useState(r),{dark:c,primaryColor:d,dk:u}=m.useSpiceBrand(),h=p=>{p?.stopPropagation(),i(!a)};return t.jsxs("div",{style:{backgroundColor:c?u.cardBg:"#FAFAFA",borderRadius:"12px",padding:"12px 16px",border:c?`1px solid ${d}33`:"0.5px solid #939291",boxShadow:c?`0 0 15px ${d}22`:"4px 4px 0px 0px #E1E1E1",marginBottom:"12px"},children:[t.jsxs("div",{onClick:h,onKeyDown:p=>{(p.key==="Enter"||p.key===" ")&&(p.preventDefault(),h())},role:"button",tabIndex:0,style:{display:"flex",alignItems:"center",justifyContent:"space-between",cursor:"pointer",width:"100%"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",flex:1,minWidth:0},children:[n&&t.jsx("img",{src:n,alt:e,style:{width:"20px",height:"20px",flexShrink:0},onError:p=>{const g=p.target;g.style.display="none"}}),t.jsx("span",{className:"ibm-plex-mono",style:{fontSize:"14px",fontWeight:500,fontFamily:'"IBM Plex Mono", monospace',color:c?"#ffffff":"#17171A",letterSpacing:"0.5px",textTransform:"uppercase",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:e})]}),t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",flexShrink:0},children:[t.jsx("span",{style:{fontSize:"18px",fontWeight:600,color:c?"#ffffff":"#262523",whiteSpace:"nowrap"},children:s}),t.jsx($t,{color:c?u.textSecondary:"#262523",direction:a?"up":"down",style:{flexShrink:0}})]})]}),a&&o&&t.jsx("div",{style:{marginTop:"16px",paddingTop:"16px",borderTop:c?`1px solid ${d}22`:"1px solid #D0D2D8"},children:o})]})},ca=e=>zt[e]||null,zn=({name:e,balance:n,icon:s,subtitle:o,networks:r,onClick:a})=>{const{dark:i,dk:c}=m.useSpiceBrand();return t.jsxs("div",{onClick:a,style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"12px 0",cursor:a?"pointer":"default",transition:"opacity 0.2s ease"},onMouseEnter:d=>{a&&(d.currentTarget.style.opacity="0.7")},onMouseLeave:d=>{d.currentTarget.style.opacity="1"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px"},children:[s&&t.jsx("div",{style:{width:"25px",height:"25px",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",overflow:"hidden"},children:typeof s=="string"?t.jsx("img",{src:s,alt:e,style:{width:"100%",height:"100%",objectFit:"cover"},onError:d=>{console.warn(`Failed to load image: ${s}`);const u=d.target;u.style.display="none"}}):s}),t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"2px",flex:1},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[t.jsx("span",{style:{fontSize:"14px",fontWeight:600,color:i?"#ffffff":"#1A1A1A",fontFamily:'"IBM Plex Mono", monospace',textTransform:"uppercase",letterSpacing:"0.3px"},children:e}),e==="USDC"&&t.jsx("div",{style:{width:"16px",height:"16px",borderRadius:"50%",backgroundColor:"#ef4444",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:t.jsx("svg",{style:{width:"12px",height:"12px",color:"white"},fill:"currentColor",viewBox:"0 0 20 20",children:t.jsx("path",{fillRule:"evenodd",d:"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z",clipRule:"evenodd"})})}),r&&r.length>0&&t.jsx("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:r.map(d=>{const u=ca(d);return u?t.jsx("img",{src:u,alt:`Chain ${d}`,style:{width:"16px",height:"16px",borderRadius:"50%",objectFit:"cover"}},d):t.jsx(us,{chainId:d,size:16},d)})})]}),o&&t.jsx("span",{style:{fontSize:"11px",fontWeight:400,color:i?c.textSecondary:"#6B7280",fontFamily:'"IBM Plex Mono", monospace',textTransform:"none"},children:o})]})]}),t.jsx("span",{style:{fontSize:"14px",fontWeight:600,color:i?"#ffffff":"#1A1A1A",fontFamily:'"IBM Plex Mono", monospace'},children:n})]})},oo=({isOpen:e,position:n,title:s,items:o,selectedId:r,onSelect:a,portalAttribute:i})=>{const{dark:c,dk:d,primaryColor:u}=m.useSpiceBrand(),[h,p]=l.useState(null),[g,f]=l.useState(!1);return l.useEffect(()=>{if(!e){f(!1);return}const x=requestAnimationFrame(()=>{requestAnimationFrame(()=>f(!0))});return()=>cancelAnimationFrame(x)},[e]),!e||!n||o.length===0?null:bn.createPortal(t.jsxs("div",{[`data-${i}-popover`]:"true",style:{position:"fixed",top:`${n.top}px`,left:`${n.left}px`,opacity:g?1:0,transform:g?"scale(1) translateY(0)":"scale(0.96) translateY(-6px)",transition:`opacity 200ms ${St.out}, transform 200ms ${St.out}`,backgroundColor:c?d.shell:"#ffffff",borderRadius:"10px",padding:"10px 12px",boxShadow:c?"0 16px 48px rgba(0,0,0,0.45)":"0 12px 32px rgba(0,0,0,0.12)",border:`1px solid ${d.cardBorder}`,minWidth:"220px",zIndex:ln.dropdown,fontFamily:'"IBM Plex Mono", monospace'},children:[t.jsx("div",{style:{marginBottom:"6px"},children:t.jsx("span",{style:{fontSize:"11px",fontWeight:500,color:c?d.textPrimary:"#0e0d0b",textTransform:"uppercase",letterSpacing:"1px"},children:s})}),t.jsx("div",{style:{borderBottom:`1px solid ${d.cardBorder}`,marginBottom:"6px"}}),t.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"2px"},children:o.map(x=>{const b=r===x.id,y=h===x.id;return t.jsxs("button",{onClick:C=>{C.stopPropagation(),a(x.id)},onMouseEnter:()=>p(x.id),onMouseLeave:()=>p(null),style:{display:"flex",alignItems:"center",gap:"8px",padding:"6px 4px",borderRadius:"8px",border:"none",cursor:"pointer",backgroundColor:b?c?d.hoverBg:"#f3f4f6":y?c?d.cardBg:"#f9fafb":"transparent",transition:"background-color 0.15s",width:"100%",fontFamily:'"IBM Plex Mono", monospace'},children:[x.icon&&t.jsx("img",{src:x.icon,alt:x.label,style:{width:"22px",height:"22px",borderRadius:"50%"}}),t.jsx("span",{style:{fontSize:"13px",fontWeight:b?700:500,textTransform:"uppercase",color:c?d.textPrimary:"#0e0d0b",letterSpacing:"0.5px",flex:1,textAlign:"left"},children:x.label}),x.detail&&t.jsx("span",{style:{fontSize:"11px",fontWeight:500,color:d.textSecondary},children:x.detail}),b&&t.jsx(Ks,{color:u,style:{flexShrink:0}})]},x.id)})})]}),document.body)},ro=({isSuccess:e,type:n,chainName:s,explorerUrl:o,txHash:r,dark:a=!1,successBg:i="#d1fae5",successBorder:c="#6ee7b7",successText:d="#065f46",errorBg:u="#fee2e2",errorBorder:h="#fca5a5",errorText:p="#dc2626",textSecondary:g="#6b7280"})=>t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px",borderRadius:"8px",backgroundColor:e?i:u,border:e?`1px solid ${c}`:`1px solid ${h}`},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px"},children:[t.jsx("div",{style:{width:"28px",height:"28px",borderRadius:"50%",backgroundColor:e?"#10b981":"#ef4444",display:"flex",alignItems:"center",justifyContent:"center"},children:e?t.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:t.jsx("path",{d:"M11.6667 3.5L5.25 9.91667L2.33333 7",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})}):t.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:t.jsx("path",{d:"M10.5 3.5L3.5 10.5M3.5 3.5L10.5 10.5",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}),t.jsxs("div",{children:[t.jsx("p",{style:{margin:0,fontSize:"14px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px",color:e?d:p},children:e?`${n.toUpperCase()} CONFIRMED`:`${n.toUpperCase()} FAILED`}),t.jsxs("p",{style:{margin:"2px 0 0 0",fontSize:"12px",color:g},children:["on ",s]})]})]}),o&&r&&t.jsxs("a",{href:`${o}/tx/${r}`,target:"_blank",rel:"noopener noreferrer",style:{display:"flex",alignItems:"center",gap:"4px",fontSize:"13px",color:g,textDecoration:"none",whiteSpace:"nowrap"},children:["View on explorer",t.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",children:[t.jsx("path",{d:"M9 6.5V9.5C9 9.76522 8.89464 10.0196 8.70711 10.2071C8.51957 10.3946 8.26522 10.5 8 10.5H2.5C2.23478 10.5 1.98043 10.3946 1.79289 10.2071C1.60536 10.0196 1.5 9.76522 1.5 9.5V4C1.5 3.73478 1.60536 3.48043 1.79289 3.29289C1.98043 3.10536 2.23478 3 2.5 3H5.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),t.jsx("path",{d:"M7.5 1.5H10.5V4.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),t.jsx("path",{d:"M5 7L10.5 1.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"})]})]})]}),ms=({isOpen:e,onClose:n,onComplete:s,closeOnComplete:o=!1,type:r,results:a,chainName:i="Network",explorerUrl:c,theme:d,styles:u,dark:h,intentStatus:p,onRetry:g,onNewTx:f,onRetryTx:x,asOverlay:b=!0,isProcessing:y=!1})=>{const{theme:C,primaryColor:k,dark:I,dk:v}=m.useSpiceBrand(u,h),S=d||C,[w,A]=l.useState(!1),j=I?v.cardBg:"#ffffff",E=I?"0 4px 20px rgba(0, 0, 0, 0.4)":"0 4px 20px rgba(0, 0, 0, 0.1)",M=I?"0 -4px 8px -2px rgba(0, 0, 0, 0.4)":"0 -4px 8px -2px rgba(0, 0, 0, 0.15)",B=v.textSecondary,R=I?v.textPrimary:"#374151",F=I?v.inputBg:"#f9fafb",T=I?v.inputBorder:"#e5e7eb",N=I?v.inputBg:"#f3f4f6",L=I?v.inputBorder:"#e5e7eb",[W,Q]=l.useState(!0),[O,q]=l.useState(null),[X,D]=l.useState(null);l.useEffect(()=>{!e&&!p&&A(!1)},[e,p]);const H=()=>{A(!0),setTimeout(()=>{window.dispatchEvent(new CustomEvent("tx-complete",{detail:{type:r,results:a}})),window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:{type:r,status:"success",results:a}})),s?.(),o&&n()},300)},G=()=>{Q(!W)};if(p){const{steps:V,overallStatus:ye}=p,$=ye==="processing",fe=ye==="success",ke=ye==="failed",be=V.filter(P=>P.transactionHash)[0],me=V.length>1?V.map(P=>P.chainName).filter(Boolean).join(" and "):i!=="Network"?i:V[0]?.chainName||i,ue=c||(be?m.getExplorerUrl(be.chainId,be.transactionHash||"").replace(/\/tx\/.*$/,""):void 0),de=t.jsxs(t.Fragment,{children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"16px"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",cursor:"pointer"},onClick:G,children:[t.jsxs("span",{style:{fontSize:"13px",fontWeight:500,color:B,fontFamily:u?.fontFamily||S.typography.fontFamily},children:[$?`Processing ${r.charAt(0).toUpperCase()+r.slice(1)}`:`${r.charAt(0).toUpperCase()+r.slice(1)} results`," "]}),t.jsx($t,{color:B,direction:W?"up":"down"})]}),!$&&t.jsx("button",{onClick:n,onMouseEnter:()=>q("close"),onMouseLeave:()=>{q(null),D(null)},onMouseDown:()=>D("close"),onMouseUp:()=>D(null),style:{background:X==="close"?I?v.hoverBg:"#f3f4f6":O==="close"?I?v.inputBg:"#f9fafb":"none",border:"none",borderRadius:"4px",cursor:"pointer",padding:"4px",display:"flex",alignItems:"center",justifyContent:"center",color:O==="close"||X==="close"?R:B,transform:X==="close"?"scale(0.9)":O==="close"?"scale(1.1)":"scale(1)",transition:Wt.interactive},children:t.jsx(fn,{size:16})})]}),t.jsx("div",{style:{marginBottom:"16px"},children:$?t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"20px 16px",borderRadius:"8px",backgroundColor:N,border:`1px solid ${L}`,gap:"12px"},children:[t.jsx(m.Spinner,{size:24,borderWidth:3,color:k}),t.jsxs("div",{children:[t.jsx("p",{style:{margin:0,fontSize:"14px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px",color:R},children:"PROCESSING TRANSACTION"}),t.jsxs("p",{style:{margin:"2px 0 0 0",fontSize:"12px",color:B},children:["on ",me]})]})]}):t.jsx(ro,{isSuccess:fe,type:r,chainName:me,explorerUrl:ue,txHash:be?.transactionHash,dark:I,...I?{successBg:v.successBg,successBorder:v.successBorder,successText:v.successText,errorBg:v.errorBg,errorBorder:v.errorBorder,errorText:v.errorText}:{},textSecondary:B})}),t.jsx("div",{style:{overflow:"hidden",maxHeight:W?"300px":"0px",opacity:W?1:0,transition:"max-height 0.3s ease, opacity 0.3s ease",marginBottom:W?"16px":"0"},children:t.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:V.map((P,oe)=>{const ce=P.transactionHash?m.getExplorerUrl(P.chainId,P.transactionHash):null;return t.jsxs("div",{style:{padding:"10px 12px",borderRadius:"6px",backgroundColor:F,border:`1px solid ${T}`,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontSize:"13px",color:R},children:P.chainName?`On ${P.chainName}`:P.description||`Step ${oe+1}`}),t.jsxs("span",{style:{display:"flex",alignItems:"center",gap:"8px",fontSize:"12px",color:P.status==="success"?"#10b981":P.status==="failed"?"#ef4444":B,fontWeight:500},children:[ce&&t.jsx("a",{href:ce,target:"_blank",rel:"noopener noreferrer",style:{color:I?v.infoText:"#2563eb",textDecoration:"none"},onClick:ae=>ae.stopPropagation(),children:"View"}),P.status==="success"?"\u2713":P.status==="failed"?"\u2717":"\u25CB"]})]},oe)})})}),!$&&t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:[ke&&g&&t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:g,theme:S,styles:u,dark:I,children:"TRY AGAIN"}),f&&t.jsxs(m.Button,{variant:"outline",fullWidth:!0,onClick:f,theme:S,styles:u,dark:I,children:["NEW ",r.toUpperCase()," \u2192"]})]})]});return b?t.jsxs("div",{style:{position:"absolute",bottom:0,left:0,right:0,zIndex:10,animation:w?"slideDown 0.3s ease-in forwards":"slideUp 0.3s ease-out forwards",pointerEvents:"auto"},children:[t.jsx("div",{style:{backgroundColor:j,borderRadius:"12px 12px 0 0",width:"100%",padding:"18px 24px 24px",boxShadow:M},children:de}),t.jsx("style",{children:`
31
31
  @keyframes slideUp {
32
32
  from { transform: translateY(100%); }
33
33
  to { transform: translateY(0); }
@@ -36,7 +36,7 @@
36
36
  from { transform: translateY(0); }
37
37
  to { transform: translateY(100%); }
38
38
  }
39
- `})]}):t.jsx("div",{style:{backgroundColor:N,borderRadius:"12px",padding:"24px",width:"100%",boxShadow:I},children:ye})}if(!e&&!C||!C&&(!a||a.length===0))return null;const $=a?a.every(ee=>ee.success):!1;a&&a.some(ee=>!ee.success);const re=a?.[0],ce=a?.find(ee=>ee.txHash)?.txHash||re?.txHash;return t.jsxs("div",{style:{position:b?"absolute":"relative",bottom:b?0:void 0,left:b?0:void 0,right:b?0:void 0,zIndex:b?10:void 0,animation:b?S?"slideDown 0.3s ease-in forwards":"slideUp 0.3s ease-out forwards":void 0,pointerEvents:"auto",width:"100%"},children:[t.jsx("div",{style:{backgroundColor:N,borderRadius:b?"12px 12px 0 0":"12px",width:"100%",padding:"18px 0 24px",boxShadow:b?E:I},children:t.jsxs("div",{style:{width:"100%",boxSizing:"border-box",padding:"0 24px"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"16px"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",cursor:C?"default":"pointer"},onClick:C?void 0:X,children:[t.jsxs("span",{style:{fontSize:"13px",fontWeight:500,color:j,fontFamily:u?.fontFamily||A.typography.fontFamily},children:[C?`Processing ${r.charAt(0).toUpperCase()+r.slice(1)}`:`${r.charAt(0).toUpperCase()+r.slice(1)} results`," "]}),!C&&t.jsx(Gt,{color:j,direction:O?"up":"down"})]}),!C&&t.jsx("button",{onClick:n,onMouseEnter:()=>_("close"),onMouseLeave:()=>{_(null),F(null)},onMouseDown:()=>F("close"),onMouseUp:()=>F(null),style:{background:K==="close"?v?k.hoverBg:"#f3f4f6":q==="close"?v?k.inputBg:"#f9fafb":"none",border:"none",borderRadius:"4px",cursor:"pointer",padding:"4px",display:"flex",alignItems:"center",justifyContent:"center",color:q==="close"||K==="close"?B:j,transform:K==="close"?"scale(0.9)":q==="close"?"scale(1.1)":"scale(1)",transition:Mt.interactive},children:t.jsx(mn,{size:16})})]}),t.jsx("div",{style:{marginBottom:"16px",animation:"statusFadeIn 220ms cubic-bezier(0.22, 1, 0.36, 1) both"},children:C?t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"20px 16px",borderRadius:"8px",backgroundColor:P,border:`1px solid ${L}`,gap:"12px"},children:[t.jsx(m.Spinner,{size:24,borderWidth:3,color:w}),t.jsxs("div",{children:[t.jsx("p",{style:{margin:0,fontSize:"14px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px",color:B},children:"PROCESSING TRANSACTION"}),t.jsxs("p",{style:{margin:"2px 0 0 0",fontSize:"12px",color:j},children:["on ",i]})]})]}):t.jsx(so,{isSuccess:$,type:r,chainName:i,explorerUrl:c,txHash:ce,dark:v,...v?{successBg:k.successBg,successBorder:k.successBorder,successText:k.successText,errorBg:k.errorBg,errorBorder:k.errorBorder,errorText:k.errorText}:{},textSecondary:j})},C?"processing":$?"success":"error"),!C&&a&&a.length>1&&t.jsx("div",{style:{overflow:"hidden",maxHeight:O?"200px":"0px",opacity:O?1:0,transition:"max-height 0.3s ease, opacity 0.3s ease",marginBottom:O?"16px":"0"},children:t.jsx("div",{style:{maxHeight:"180px",overflowY:"auto",display:"flex",flexDirection:"column",gap:"8px"},children:a.map((ee,Ie)=>t.jsxs("div",{style:{padding:"10px 12px",borderRadius:"6px",backgroundColor:U,border:`1px solid ${D}`,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[t.jsx("span",{style:{fontWeight:600,fontSize:"13px",color:k.textPrimary,fontFamily:'"IBM Plex Mono", monospace'},children:ee.asset.symbol}),ee.amount&&t.jsx("span",{style:{fontSize:"12px",color:j},children:ee.amount})]}),t.jsx("span",{style:{fontSize:"12px",color:ee.success?"#10b981":"#ef4444",fontWeight:500},children:ee.success?"\u2713":"\u2717"})]},Ie))})}),!C&&!$&&a&&t.jsx("div",{style:{padding:"12px",backgroundColor:k.errorBg,border:`1px solid ${k.errorBorder}`,borderRadius:"8px",marginBottom:"16px"},children:t.jsx("p",{style:{fontSize:"13px",color:k.errorText,margin:0,lineHeight:1.5},children:a.find(ee=>!ee.success)?.error||`${r.charAt(0).toUpperCase()+r.slice(1)} failed. Please try again.`})}),!C&&t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:[!$&&g&&t.jsxs(m.Button,{variant:"outline",fullWidth:!0,onClick:g,theme:A,styles:u,dark:v,children:["TRY AGAIN ",r.toUpperCase()]}),$&&t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:Y,theme:A,styles:u,dark:v,children:"DONE"})]})]})}),t.jsx("style",{children:`
39
+ `})]}):t.jsx("div",{style:{backgroundColor:j,borderRadius:"12px",padding:"24px",width:"100%",boxShadow:E},children:de})}if(!e&&!y||!y&&(!a||a.length===0))return null;const se=a?a.every(V=>V.success):!1;a&&a.some(V=>!V.success);const ee=a?.[0],pe=a?.find(V=>V.txHash)?.txHash||ee?.txHash;return t.jsxs("div",{style:{position:b?"absolute":"relative",bottom:b?0:void 0,left:b?0:void 0,right:b?0:void 0,zIndex:b?10:void 0,animation:b?w?"slideDown 0.3s ease-in forwards":"slideUp 0.3s ease-out forwards":void 0,pointerEvents:"auto",width:"100%"},children:[t.jsx("div",{style:{backgroundColor:j,borderRadius:b?"12px 12px 0 0":"12px",width:"100%",padding:"18px 0 24px",boxShadow:b?M:E},children:t.jsxs("div",{style:{width:"100%",boxSizing:"border-box",padding:"0 24px"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"16px"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",cursor:y?"default":"pointer"},onClick:y?void 0:G,children:[t.jsxs("span",{style:{fontSize:"13px",fontWeight:500,color:B,fontFamily:u?.fontFamily||S.typography.fontFamily},children:[y?`Processing ${r.charAt(0).toUpperCase()+r.slice(1)}`:`${r.charAt(0).toUpperCase()+r.slice(1)} results`," "]}),!y&&t.jsx($t,{color:B,direction:W?"up":"down"})]}),!y&&t.jsx("button",{onClick:n,onMouseEnter:()=>q("close"),onMouseLeave:()=>{q(null),D(null)},onMouseDown:()=>D("close"),onMouseUp:()=>D(null),style:{background:X==="close"?I?v.hoverBg:"#f3f4f6":O==="close"?I?v.inputBg:"#f9fafb":"none",border:"none",borderRadius:"4px",cursor:"pointer",padding:"4px",display:"flex",alignItems:"center",justifyContent:"center",color:O==="close"||X==="close"?R:B,transform:X==="close"?"scale(0.9)":O==="close"?"scale(1.1)":"scale(1)",transition:Wt.interactive},children:t.jsx(fn,{size:16})})]}),t.jsx("div",{style:{marginBottom:"16px",animation:"statusFadeIn 220ms cubic-bezier(0.22, 1, 0.36, 1) both"},children:y?t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"20px 16px",borderRadius:"8px",backgroundColor:N,border:`1px solid ${L}`,gap:"12px"},children:[t.jsx(m.Spinner,{size:24,borderWidth:3,color:k}),t.jsxs("div",{children:[t.jsx("p",{style:{margin:0,fontSize:"14px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px",color:R},children:"PROCESSING TRANSACTION"}),t.jsxs("p",{style:{margin:"2px 0 0 0",fontSize:"12px",color:B},children:["on ",i]})]})]}):t.jsx(ro,{isSuccess:se,type:r,chainName:i,explorerUrl:c,txHash:pe,dark:I,...I?{successBg:v.successBg,successBorder:v.successBorder,successText:v.successText,errorBg:v.errorBg,errorBorder:v.errorBorder,errorText:v.errorText}:{},textSecondary:B})},y?"processing":se?"success":"error"),!y&&a&&a.length>1&&t.jsx("div",{style:{overflow:"hidden",maxHeight:W?"200px":"0px",opacity:W?1:0,transition:"max-height 0.3s ease, opacity 0.3s ease",marginBottom:W?"16px":"0"},children:t.jsx("div",{style:{maxHeight:"180px",overflowY:"auto",display:"flex",flexDirection:"column",gap:"8px"},children:a.map((V,ye)=>t.jsxs("div",{style:{padding:"10px 12px",borderRadius:"6px",backgroundColor:F,border:`1px solid ${T}`,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[t.jsx("span",{style:{fontWeight:600,fontSize:"13px",color:v.textPrimary,fontFamily:'"IBM Plex Mono", monospace'},children:V.asset.symbol}),V.amount&&t.jsx("span",{style:{fontSize:"12px",color:B},children:V.amount})]}),t.jsx("span",{style:{fontSize:"12px",color:V.success?"#10b981":"#ef4444",fontWeight:500},children:V.success?"\u2713":"\u2717"})]},ye))})}),!y&&!se&&a&&t.jsx("div",{style:{padding:"12px",backgroundColor:v.errorBg,border:`1px solid ${v.errorBorder}`,borderRadius:"8px",marginBottom:"16px"},children:t.jsx("p",{style:{fontSize:"13px",color:v.errorText,margin:0,lineHeight:1.5},children:a.find(V=>!V.success)?.error||`${r.charAt(0).toUpperCase()+r.slice(1)} failed. Please try again.`})}),!y&&t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:[!se&&x&&t.jsxs(m.Button,{variant:"outline",fullWidth:!0,onClick:x,theme:S,styles:u,dark:I,children:["TRY AGAIN ",r.toUpperCase()]}),se&&t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:H,theme:S,styles:u,dark:I,children:"DONE"})]})]})}),t.jsx("style",{children:`
40
40
  @keyframes slideUp {
41
41
  from {
42
42
  transform: translateY(100%);
@@ -63,31 +63,31 @@
63
63
  transform: translateY(0);
64
64
  }
65
65
  }
66
- `})]})};function Un(e){const[n,s,o]=e.split(":");if(n!=="evm"||!s||!o)return null;const r=Number(s);if(!Number.isFinite(r))return null;const a=o.startsWith("0x")?o.toLowerCase():`0x${o.toLowerCase()}`;return{chainId:r,address:a}}function oo(e){return(e??"").trim().replace(/^test\s+/i,"").replace(/^spice/i,"").toLowerCase().replace(/[^a-z0-9]/g,"")}function ro(e,n,s){const o=new Set(n.map(oo).filter(Boolean)),r=a=>{if(s&&m.addressesEqual(a.address,s))return 0;const i=[a.symbol,a.name,a.equivalenceGroup].map(oo).findIndex(c=>c&&o.has(c));return i===-1?4:i+1};return[...e].sort((a,i)=>{const c=r(a)-r(i);return c!==0?c:a.address.toLowerCase().localeCompare(i.address.toLowerCase())})}const ao=typeof process<"u"&&process.env?.NEXT_PUBLIC_MORALIS_API_KEY||typeof{url:typeof document>"u"?require("url").pathToFileURL(__filename).href:fn&&fn.tagName.toUpperCase()==="SCRIPT"&&fn.src||new URL("index.cjs.js",document.baseURI).href}<"u"&&void 0||"",la="https://deep-index.moralis.io/api/v2.2";function zn(e,n){const s=e.chainTokens?Object.keys(e.chainTokens):[],o=[];for(const r of s){const a=Un(r);if(!a||a.chainId!==n)continue;const i=a.address;o.some(c=>m.addressesEqual(c,i))||o.push(i)}return ro(o.map(r=>{const a=W.getTokenByAddress(r,n);return{address:r,symbol:a?.symbol,name:a?.name,equivalenceGroup:a?.equivalenceGroup}}),[e.receiptTokenName,e.displaySymbol,e.symbol,e.displayName,e.name],e.chainId===n&&!e.isUniversal?e.address:void 0).map(r=>r.address)}async function da(e,n){const s=m.getClientForChain(e);return W.isNativeToken(n)?s.getBalance({address:W.ESCROW_ADDRESS}):await s.readContract({address:n,abi:M.erc20Abi,functionName:"balanceOf",args:[W.ESCROW_ADDRESS]})}function io(e,n,s){const o=W.getTokensForChain(s),r=o.find(i=>m.addressesEqual(i.address,e));if(r)return r;const a=W.getTokenByAddress(e,n);if(a)return ro(o.filter(i=>i.equivalenceGroup===a.equivalenceGroup),[a.symbol,a.name,a.equivalenceGroup])[0]}function Jt(e,n){if(e.chainId===n)return e.address;const s=io(e.address,e.chainId,n);return s?s.address:null}async function lo(e,n,s={}){const o=Jt(e,n),r=zn(e,n);if(r.length===0)return o;if(r.length===1)return r[0];const a=s.requiredAmount??0n,i=l=>{const u=r.map(p=>({candidate:p,balance:l.get(W.isNativeToken(p)?"native":p.toLowerCase())??0n})).filter(p=>p.balance>0n).sort((p,f)=>p.balance===f.balance?0:p.balance>f.balance?-1:1);return u.length===0?null:((a>0n?u.find(p=>p.balance>=a):u[0])??u[0]).candidate},c=m.getChainsForAssets()[n];if(c?.moralisName&&ao){const l=new Map,u=r.some(p=>W.isNativeToken(p));try{if(u)try{const f=m.getClientForChain(n);l.set("native",await f.getBalance({address:W.ESCROW_ADDRESS}))}catch{}const p=await fetch(`${la}/wallets/${W.ESCROW_ADDRESS}/tokens?chain=${c.moralisName}`,{headers:{"X-API-Key":ao}});if(p.ok){const f=await p.json();for(const h of f?.result||[]){const g=String(h.token_address||"").toLowerCase();if(g)try{l.set(g,BigInt(String(h.balance||"0")))}catch{}}const x=i(l);if(x)return x}}catch{}}try{const l=await Promise.all(r.map(async f=>({key:W.isNativeToken(f)?"native":f.toLowerCase(),value:await da(n,f)}))),u=new Map(l.map(({key:f,value:x})=>[f,x])),p=i(u);if(p)return p}catch{}return o}function Cs(e,n,s,o){const r=W.getTokenByAddress(e,n),a=W.getTokenByAddress(s,o);return r&&a?r.equivalenceGroup===a.equivalenceGroup:W.areEquivalent(e,s)}function Ln(e,n){return Cs(e.address,e.chainId,n.address,n.chainId)}const ca={usdc:[8453,1,42161,5115,4114],usdt:[1],wbtc:[1],weth:[8453,1],ctusd:[5115,4114],wcbtc:[5115,4114]};function On(e){return e.replace(/^test\s+/i,"").replace(/^spice/i,"").trim()}function $t(e){return On(e).toLowerCase()}function ua(e,n){const s=new Set([n,On(n),$t(n)].map(o=>$t(o)).filter(Boolean));return[...e].sort((o,r)=>{const a=$t(o.symbol),i=$t(r.symbol),c=$t(o.name),l=$t(r.name),u=s.has(a)?0:s.has(c)?1:2,p=s.has(i)?0:s.has(l)?1:2;return u!==p?u-p:o.address.toLowerCase().localeCompare(r.address.toLowerCase())})[0]}function pa(e){const n=e&&e.length>0?e:Object.keys(m.CHAIN_CONFIGS).map(Number).filter(Number.isFinite),s=new Map;for(const o of n){const r=m.getChainConfig(o);if(!r)continue;const a=`${o}:${W.ZERO_ADDRESS.toLowerCase()}`;s.has(a)||s.set(a,{address:W.ZERO_ADDRESS,chainId:o,symbol:r.nativeCurrency.symbol,name:r.nativeCurrency.name,decimals:r.nativeCurrency.decimals,isNative:!0,logoURI:r.logo});for(const i of r.supportedTokens??[]){const c=i.address.toLowerCase(),l=`${o}:${c}`;s.has(l)||s.set(l,{address:c,chainId:o,symbol:i.symbol,name:i.name,decimals:i.decimals,isNative:W.isNativeToken(c),logoURI:i.logo})}}return s}function fa(e,n){const s=pa(n),o=On(e.tokenName),r=$t(e.tokenName),a=Array.isArray(e.chainTokens)?e.chainTokens.map(h=>[h,void 0]):Object.entries(e.chainTokens??{}),i=a.map(([h])=>Un(h)).filter(h=>h!==null),c=new Map(a.map(([h,g])=>[h,g])),l=(h,g)=>{const b=c.get(`evm:${g.chainId}:${g.address.slice(2).toLowerCase()}`);return{...h,name:typeof b?.name=="string"&&b.name.length>0?b.name:h.name,decimals:typeof b?.decimals=="number"?b.decimals:h.decimals}},u=i.map(h=>{const g=s.get(`${h.chainId}:${h.address.toLowerCase()}`);return g?l(g,h):void 0}).filter(h=>h!==void 0),p=ca[r]??[];if(p.length>0)for(const h of p){const g=u.find(b=>b.chainId===h);if(g)return g}if(u.length>0)return ua(u,e.tokenName);const f=Array.from(s.values()).filter(h=>$t(h.symbol)===r||$t(h.name)===r);if(p.length>0)for(const h of p){const g=f.find(b=>b.chainId===h);if(g)return g}if(f.length>0)return f[0];const x=i[0];if(x){const h=c.get(`evm:${x.chainId}:${x.address.slice(2).toLowerCase()}`);return{address:x.address,chainId:x.chainId,symbol:o||e.tokenName,name:typeof h?.name=="string"&&h.name.length>0?h.name:o||e.tokenName,decimals:typeof h?.decimals=="number"?h.decimals:e.decimals??18,isNative:W.isNativeToken(x.address),logoURI:void 0}}}function ha(e,n){let s;try{s=BigInt(e.balanceAvailable||"0")}catch{return null}if(s<=0n)return null;const o=fa(e,n),r=o?.decimals??e.decimals??18,a=e.decimals??r,i=o?.address??W.ZERO_ADDRESS,c=o?.chainId??0,l=On(e.tokenName),u=o?.symbol??l,p=o?.name??l,f=parseFloat(M.formatUnits(s,a)),x=typeof e.balanceUsd=="number"?e.balanceUsd:typeof e.balanceUsd=="string"&&Number(e.balanceUsd)||0;return{address:i,symbol:u,name:p,decimals:r,chainId:c,balance:s,balanceFormatted:f,balanceUsd:x,isNative:o?.isNative??W.isNativeToken(i),logoURI:o?.logoURI,displaySymbol:e.tokenName||u,displayName:e.tokenName||p,displayChainName:"Spicenet",receiptTokenId:e.receiptToken,receiptTokenName:e.tokenName||p,receiptTokenDecimals:a,chainTokens:e.chainTokens&&!Array.isArray(e.chainTokens)?e.chainTokens:void 0,isUniversal:!0}}const jn=({address:e,supportedChains:n,enabled:s=!0,refetchInterval:o})=>{const r=d.useContext(m.SpiceFlowProviderContext)?.apiUrl||m.RELAYER_API_URL,[a,i]=d.useState([]),[c,l]=d.useState(!1),[u,p]=d.useState(null),[f,x]=d.useState(!1),h=d.useRef(!1),g=d.useRef(!1),b=n?JSON.stringify([...n].sort()):"",C=d.useCallback(async(v=!1)=>{if(!e||!s){i([]),x(!1),h.current=!1;return}if(!g.current){g.current=!0,!h.current&&!v&&l(!0),p(null);try{const k=await fetch(`${r}/wallets/${e}/balance`,{cache:"no-store"});if(!k.ok)throw new Error(`Failed to fetch balance: ${k.status}`);const A=await k.json();if(A.balances&&Array.isArray(A.balances)){const S=A.balances.map(T=>ha({receiptToken:typeof T.receiptToken=="string"?T.receiptToken:void 0,tokenName:String(T.tokenName??""),balanceAvailable:String(T.balanceAvailable??"0"),chainTokens:Array.isArray(T.chainTokens)?T.chainTokens.filter(N=>typeof N=="string"):T.chainTokens&&typeof T.chainTokens=="object"?T.chainTokens:void 0,decimals:typeof T.decimals=="number"?T.decimals:void 0,balanceUsd:typeof T.balanceUsd=="number"||typeof T.balanceUsd=="string"?T.balanceUsd:null},n)).filter(T=>T!==null);i(S),x(S.length>0),h.current=!0}else i([]),x(!1)}catch(k){const A=k instanceof Error?k.message:"Failed to fetch balance";p(A),console.error("Error fetching Spice assets:",k),h.current||(i([]),x(!1))}finally{l(!1),g.current=!1}}},[e,s,b,r]);d.useEffect(()=>{s&&e&&(h.current=!1,C(!1))},[e,s,b]),d.useEffect(()=>{if(!s||!e||!o)return;const v=setInterval(()=>{C(!0)},o);return()=>clearInterval(v)},[e,s,o,b]);const y=d.useCallback(v=>a.filter(k=>k.chainId===v),[a]),w=d.useCallback(async()=>{await C(!0)},[C]);return{assets:a,loading:c,error:u,hasBalance:f,refetch:w,getAssetsByChain:y}},co=e=>new Promise(n=>setTimeout(n,e)),ma=350,xa=1e3;async function ga(e){const{actionId:n,intentIndex:s,intentId:o,stepIndex:r,maxPolls:a=120,maxExecuteAttempts:i=3,pollsBeforeRetry:c=5,maxConsecutiveStatusErrors:l=15,onStatusMessage:u,signal:p,chainId:f}=e;let x="pending",h,g=0,b=0;const C=()=>{g++,m.relayerService.executeStep(n,s,r,{action:"execute"}).then(y=>{y.transactionHash&&(h=y.transactionHash)}).catch(y=>{const w=y instanceof Error?y.message:String(y);console.warn(`[execution] executeStep ${r} attempt ${g} error (will poll):`,w)})};C();for(let y=0;y<a;y++){if(await co(y===0?ma:xa),p?.aborted)throw new m.SpiceflowError("ABORT","Gasless transaction aborted");try{const v=await m.relayerService.checkStepStatus(o,r);b=0,x=v.data.status;const k=v.data.transactionHash;k&&(h=k)}catch(v){if(v instanceof Error&&(v.name==="AbortError"||v instanceof m.SpiceflowError&&v.code==="ABORT")||(b++,b>=l))throw v;continue}if(x==="created"&&y>=g*c&&g<i&&C(),x==="reverted"||x==="error")throw new m.SpiceflowError("ON_CHAIN_REVERT",`Transaction ${x}. The transaction was rejected on-chain. This may be due to insufficient balance, price changes, or health factor constraints. Please verify your positions and try again.`,{status:x,txHash:h,actionId:n,intentId:o,stepId:r,chainId:f});if(x==="success"||x==="completed")return h;let w="Waiting for solver...";x==="executing"?w="Transaction executing...":x==="submitted"?w="Transaction submitted...":x==="created"&&(w="Waiting for relayer..."),u?.(w,h)}throw new m.SpiceflowError("POLLING_EXHAUSTED",`Transaction is still processing (status: ${x}). This doesn't mean it failed \u2014 the solver may still complete it. Check your positions in a few minutes, or try refreshing the page.`,{actionId:n,intentId:o,stepId:r,lastStatus:x,pollAttempts:a,maxPolls:a,txHash:h})}async function uo(e){const{actionId:n,intentIndex:s,intentId:o,totalSteps:r,delayBeforeSpicenetStepMs:a=5e3,isSpicenetStep:i,maxExecuteAttemptsForStep:c,maxPolls:l=120,onStatusMessage:u,signal:p}=e;let f;for(let x=0;x<r;x++){x>0&&i?.(x)&&a>0&&await co(a);const h=c?.(x)??3,g=await ga({actionId:n,intentIndex:s,intentId:o,stepIndex:x,maxPolls:l,maxExecuteAttempts:h,maxConsecutiveStatusErrors:h===6?5:15,onStatusMessage:u,signal:p});g&&(f=g)}return f}function Bn(e){return W.isSpicenetChainId(e.chainId)}function ya({chainBatches:e,tokenAddress:n,tokenTransferAmount:s,useCustomTransfers:o}){if(!(e.some(Bn)||!(o?e.some(r=>Bn(r)?!1:(r.tokenTransfers??[]).some(a=>a.from==="escrow"&&BigInt(a.amount??0)>0n)):s>0n)))throw new m.SpiceflowError("INVALID_PARAMS","Payouts funded from Spice balance require a Spicenet funding batch before the destination chain batch. Deposits into Spice balance and gas-only actions do not need one.",{tokenAddress:n,tokenTransferAmount:s.toString(),useCustomTransfers:!!o})}function Ca(e,n,s,o){n.forEach((r,a)=>{if(!r.to||!r.from||!r.token||r.amount===void 0)throw new m.SpiceflowError("INVALID_TOKEN_TRANSFER",`tokenTransfers[${a}] on chain ${e} is missing required fields (to/from/token/amount). This usually means the embedded wallet wasn't ready when the intent was built \u2014 please retry.`,{chainId:e,transferIndex:a,transfer:{from:r.from,to:r.to,token:r.token,amount:r.amount?.toString()},signingAddress:s,useCustomTransfers:o})})}function po({user:e,chainBatches:n,tokenAddress:s,tokenTransferAmount:o,exp:r,signature:a,chainAuthorizations:i,useCustomTransfers:c}){const l=n,u=W.hashChainBatches(l),p=l.filter(f=>!Bn(f)).length;if(ya({chainBatches:l,tokenAddress:s,tokenTransferAmount:o,useCustomTransfers:c}),!c&&o>0n&&p>1)throw new m.SpiceflowError("INVALID_PARAMS","Multiple non-Spicenet batches require explicit tokenTransfers. Pass useCustomTransfers with per-batch transfers instead of relying on the default escrow payout injection.",{nonSpicenetBatchCount:p,tokenAddress:s,tokenTransferAmount:o.toString()});return{user:e,...i?{chainAuthorizations:i}:{},intents:[{mode:"7702",signatureType:"ecdsa",signature:a,nbf:0,exp:r,chainBatches:u.map((f,x)=>{const h=l[x],g=Bn(h)?[]:c?h.tokenTransfers??[]:o>0n?[{from:"escrow",to:e,token:s,amount:o}]:[];return Ca(Number(f.chainId),g,e,c),{hash:f.hash,chainId:Number(f.chainId),tokenTransfers:g,calls:f.calls}})}]}}let bs=!1;function Hn(){const{address:e,isConnected:n,isAuthenticated:s,actions:o}=Ot(),[r,a]=d.useState(null),i=d.useRef(o),c=d.useRef(new Map);i.current=o;const l=d.useCallback(async(f,x,h)=>{const g=[...new Set(f.filter(y=>!Bn(y)).map(y=>y.chainId))],b=await Promise.all(g.map(async y=>{const w=m.getClientForChain(y),v=m.getDelegateContractAddress(y),k=Number(await W.getAccountNonce(x,w)),A=[x.toLowerCase(),y,v.toLowerCase(),k].join(":");return{chainId:y,delegateContract:v,nonce:k,cacheKey:A,cached:c.current.get(A)}})),C=[];for(const{chainId:y,delegateContract:w,nonce:v,cacheKey:k,cached:A}of b){if(A){C.push(A);continue}if(h?.aborted)throw new m.SpiceflowError("ABORT","Gasless transaction aborted");const S=await i.current.signAuthorization({contractAddress:w,chainId:y,nonce:v}),T={r:S.r,s:S.s,yParity:S.yParity,address:S.address??w,chainId:Number(S.chainId??y),nonce:Number(S.nonce??v)};c.current.set(k,T),C.push(T)}return C},[]),u=d.useCallback(async(f,x,h,g,b,C)=>{const y=(w,v,k)=>{g?.({step:w,message:v,...k})};if(bs)throw new m.SpiceflowError("CONCURRENT_EXECUTION","A gasless transaction is already in progress. Please wait.");bs=!0;try{if(!e)throw new m.SpiceflowError("WALLET_DISCONNECTED","No wallet connected. Please log in first.");const w=C?.userOverride||e;let v=f;if(C?.depositToEscrow){const{token:q,amount:_}=C.depositToEscrow,K=M.encodeFunctionData({abi:m._,functionName:"transfer",args:[W.ESCROW_ADDRESS,_]}),F=v[v.length-1];F.calls=[...F.calls,{to:q,value:0n,data:K}]}y("signing-delegation","Sign delegation in your wallet...");const k=await l(v,w,b);if(b?.aborted)throw new m.SpiceflowError("ABORT","Gasless transaction aborted");y("signing-intent","Sign the intent in your wallet...");const A=BigInt(Math.floor(Date.now()/1e3)+3600),S=W.hashChainBatches(v).map(q=>q.hash),T=M.keccak256(M.encodeAbiParameters([{type:"string"},{type:"uint256"},{type:"uint256"},{type:"bytes32[]"}],["ecdsa",0n,A,S])),N=await i.current.signMessage({raw:T}),I=typeof N=="string"?N:N.signature;if(!I)throw new m.SpiceflowError("SIGNATURE_FAILED","Failed to sign intent authorization. The wallet returned an empty signature.");if(b?.aborted)throw new m.SpiceflowError("ABORT","Gasless transaction aborted");y("submitting","Submitting to relayer...");const E=po({user:w,chainBatches:v,tokenAddress:x,tokenTransferAmount:h,exp:Number(A),signature:I,chainAuthorizations:k,useCustomTransfers:C?.useCustomTransfers}),j=await m.relayerService.estimateActionFees(E);a(j);const B=await m.relayerService.createAction(E),[U,D]=B.intentIds[0].split("/"),P=parseInt(D||"0",10),L=`${U}/${P}`;y("executing","Executing on chain..."),y("executing","Executing on chain...",{actionId:U,intentId:L,intentIndex:P,totalSteps:v.length});const O=v.length,z=await uo({actionId:U,intentIndex:P,intentId:L,totalSteps:O,signal:b,onStatusMessage:(q,_)=>{y("executing",q,{txHash:_,actionId:U,intentId:L,intentIndex:P,totalSteps:O})}});return y("success","Transaction successful!",{txHash:z,actionId:U,intentId:L,intentIndex:P,totalSteps:O}),z||U}catch(w){throw console.error("[GaslessExecution] Error:",w),y("error",w.message||"Transaction failed",{error:w.message}),w}finally{bs=!1}},[e,s,l]),p=d.useCallback(async(f,x,h,g)=>{if(!e)throw new m.SpiceflowError("WALLET_DISCONNECTED","No wallet connected. Please log in first.");const b=f.map((k,A)=>{const S={...k,calls:[...k.calls]};if(g?.depositToEscrow&&A===f.length-1){const T=M.encodeFunctionData({abi:m._,functionName:"transfer",args:[W.ESCROW_ADDRESS,g.depositToEscrow.amount]});S.calls=[...S.calls,{to:g.depositToEscrow.token,value:0n,data:T}]}return S}),C=g?.userOverride||e,y=g?.signAuthorizationsForEstimate?await l(b,C):void 0,w=po({user:C,chainBatches:b,tokenAddress:x,tokenTransferAmount:h,exp:Math.floor(Date.now()/1e3)+3600,signature:"0x00",chainAuthorizations:y,useCustomTransfers:g?.useCustomTransfers}),v=await m.relayerService.estimateActionFees(w);return a(v),v},[e,l]);return{executeGasless:u,estimateGasless:p,lastFeeEstimate:r,hasEmbeddedWallet:n&&s}}function Cn(e){const n=BigInt(e.feeBreakdown.spicenetFee),s=BigInt(e.feeBreakdown.gasFee),o=BigInt(e.feeBreakdown.bridgeFee??"0"),r=n+s+o;return{spicenetFee:n,gasFee:s,bridgeFee:o,totalFee:r}}function ws(e){const n=BigInt(e.quotedAmount),s=BigInt(e.totalDebit),{totalFee:o}=Cn(e);return n>0n||s>0n||o>0n}function fo(e){const n=BigInt(e.quotedAmount),s=BigInt(e.totalDebit),{totalFee:o}=Cn(e),r=n+o;return s>r?s:r}function ba(e){const n=[];for(const s of e.intents)for(const o of s.batches)n.push(BigInt(o.quotedAmount));return n.length!==1?null:n[0]}function Qn(e,n){const s=e.intents.flatMap(l=>l.batches).filter(ws);if(s.length===0||s.length>1)return null;const o=s[0],{gasFee:r,spicenetFee:a,bridgeFee:i,totalFee:c}=Cn(o);return{symbol:n.symbol,decimals:n.decimals,grossAmount:BigInt(o.totalDebit),netAmount:BigInt(o.quotedAmount),totalFee:c,spicenetFee:a,gasFee:r,bridgeFee:i,gasQuoteSource:o.gasQuoteSource}}function bn(e,n){const s=e.intents.flatMap(p=>p.batches).filter(ws);if(s.length===0)return null;const o=s.filter(p=>p.chainId===n.chainId),r=o.length>0?o:s;if(r.length>1)return null;const a=r[0],{gasFee:i,spicenetFee:c,bridgeFee:l,totalFee:u}=Cn(a);return{chainId:a.chainId,tokenAddress:n.tokenAddress,symbol:n.symbol,decimals:n.decimals,grossAmount:fo(a),netAmount:BigInt(a.quotedAmount),totalFee:u,gasFee:i,spicenetFee:c,bridgeFee:l,gasQuoteSource:a.gasQuoteSource}}const wa={usdc:1,"usdc.e":1,usdt:1,dai:1,ctusd:1,wbtc:1e5,wcbtc:1e5,cbtc:1e5};function vs(e,n){return M.formatUnits(e,n).replace(/(\.\d*?[1-9])0+$|\.0+$/,"$1")}function ho(e,n,s){return n===s?e:n<s?e*10n**BigInt(s-n):e/10n**BigInt(n-s)}function mo(e,n){const s=n?wa[n.trim().toLowerCase()]??0:0,o=e*s;return o<=0?"$0":o>=1?`$${o.toFixed(3).replace(/0+$/,"").replace(/\.$/,"")}`:`$${o.toFixed(4).replace(/0+$/,"").replace(/\.$/,"")}`}function va(e,n){const s=e.intents.flatMap(i=>i.batches).filter(ws);if(s.length===0)return null;const o=s.filter(i=>i.chainId===n),r=o.length>0?o:s;if(r.length>1)return null;const a=r[0];return fo(a)}async function xo(e){if(!(!e.batches.length||!e.walletAddress||!e.recipient)){e.ui.setIsExecuting(!0),e.ui.setExecutionError(null),e.ui.setExecutionProgress(null),e.executionContextRef.current=null,e.ui.setLockedGasFee(e.gasFee);try{let n=e.batches;if(e.isNon7702&&e.onWithdrawExecute)await e.onWithdrawExecute(e.amount);else{if(!e.isNon7702&&!n.some(l=>W.isSpicenetChainId(l.chainId)))throw new Error("Spice withdrawals must include a Spicenet funding batch before the destination chain batch.");const s=e.token?.address||"",o={useCustomTransfers:!0},r=await e.gasless.estimateGasless(n,s,0n,o);let a=r;const i=e.chainId!==null?va(r,e.chainId):null;e.buildSpicenetBatch&&i!==null&&i!==e.receiveAmountRaw&&(n=e.buildWithdrawBatches(i),a=await e.gasless.estimateGasless(n,s,0n,o));const c=a.intents[0]?.batches[0]??null;c&&e.ui.setLockedGasFee(Cn(c).totalFee),await e.gasless.executeGasless(n,s,0n,l=>{l.actionId&&l.intentId&&typeof l.intentIndex=="number"&&typeof l.totalSteps=="number"&&(e.executionContextRef.current={actionId:l.actionId,intentId:l.intentId,intentIndex:l.intentIndex,totalSteps:l.totalSteps}),e.ui.setExecutionProgress(l)},void 0,o)}window.dispatchEvent(new CustomEvent("withdraw-completed")),e.onWithdrawSuccess?.({token:e.token?.symbol||"",amount:e.amount,chainId:e.chainId})}catch(n){const s=n instanceof Error?n.message:"Withdraw failed";e.ui.setExecutionError(s),e.onWithdrawError?.(s)}finally{e.ui.setIsExecuting(!1)}}}async function ka(e){const n=e.executionContextRef.current;if(!n){e.ui.setExecutionProgress(null),await xo(e);return}e.ui.setIsExecuting(!0),e.ui.setExecutionError(null),e.ui.setExecutionProgress({step:"executing",message:"Resuming existing action...",actionId:n.actionId,intentId:n.intentId,intentIndex:n.intentIndex,totalSteps:n.totalSteps});try{let s=n.totalSteps;for(let o=0;o<n.totalSteps;o++)if((await m.relayerService.checkStepStatus(n.intentId,o)).data.status!=="success"){s=o;break}if(s>=n.totalSteps)e.ui.setExecutionProgress(o=>({...o||{step:"success",message:"Transaction successful!",actionId:n.actionId,intentId:n.intentId,intentIndex:n.intentIndex,totalSteps:n.totalSteps},step:"success",message:"Transaction successful!"}));else for(let o=s;o<n.totalSteps;o++){let r="pending",a;try{const i=await m.relayerService.executeStep(n.actionId,n.intentIndex,o,{action:"execute"});i.transactionHash&&(a=i.transactionHash)}catch{}for(let i=0;i<120;i++){if(await new Promise(l=>setTimeout(l,Math.min(1e3+i*1e3,5e3))),!e.isMountedRef.current)return;const c=await m.relayerService.checkStepStatus(n.intentId,o);if(!e.isMountedRef.current)return;if(r=c.data.status,c.data.transactionHash&&(a=c.data.transactionHash),r==="success"){e.ui.setExecutionProgress({step:o===n.totalSteps-1?"success":"executing",message:o===n.totalSteps-1?"Transaction successful!":"Executing remaining steps...",txHash:a,actionId:n.actionId,intentId:n.intentId,intentIndex:n.intentIndex,totalSteps:n.totalSteps});break}if(r==="reverted"||r==="error")throw new Error("Withdraw failed");e.ui.setExecutionProgress({step:"executing",message:"Executing remaining steps...",txHash:a,actionId:n.actionId,intentId:n.intentId,intentIndex:n.intentIndex,totalSteps:n.totalSteps})}if(!e.isMountedRef.current)return;if(r!=="success")throw new Error("Withdraw is still processing")}window.dispatchEvent(new CustomEvent("withdraw-completed")),e.onWithdrawSuccess?.({token:e.token?.symbol||"",amount:e.amount,chainId:e.chainId})}catch(s){const o=s instanceof Error?s.message:"Withdraw failed";e.ui.setExecutionError(o),e.onWithdrawError?.(o)}finally{e.ui.setIsExecuting(!1)}}const go='"IBM Plex Mono", monospace',yo='"Helvetica Neue", sans-serif',Sa=({show:e,position:n,popoverRef:s,spiceAssets:o,dark:r,dk:a})=>{if(!e||!n)return null;const i=r?a.textSecondary:"#71757A",c=r?a.textPrimary:"#0E0D0B",l=o||[];return t.jsxs("div",{ref:s,"data-balance-popover":!0,style:{position:"fixed",top:`${n.top}px`,left:`${n.left}px`,width:"220px",background:r?a.cardBg:"#FFFFFF",border:`1px solid ${r?a.cardBorder:"#D6D6D6"}`,borderRadius:"10px",boxShadow:r?"0 12px 32px rgba(0,0,0,0.32)":"0 12px 28px rgba(15, 23, 42, 0.14)",padding:"10px",zIndex:40},children:[t.jsx("div",{style:{fontFamily:go,fontSize:"11px",letterSpacing:"0.05em",color:i,marginBottom:"8px"},children:"ALL BALANCES"}),t.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:l.length>0?l.map(u=>{const p=u.displaySymbol||u.receiptTokenName||u.symbol;return t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:"10px",padding:"6px 0"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",minWidth:0},children:[u.logoURI?t.jsx("img",{src:u.logoURI,alt:p,style:{width:"18px",height:"18px",borderRadius:"50%",flexShrink:0}}):t.jsx("div",{style:{width:"18px",height:"18px",borderRadius:"50%",border:`1px solid ${r?a.cardBorder:"#C8C8C8"}`,flexShrink:0}}),t.jsx("span",{style:{fontFamily:yo,fontSize:"13px",color:c,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:p})]}),t.jsx("span",{style:{fontFamily:go,fontSize:"12px",color:c,flexShrink:0},children:an(u.balanceFormatted)})]},u.receiptTokenId||u.address)}):t.jsx("span",{style:{fontFamily:yo,fontSize:"13px",color:i},children:"No balances"})})]})},Ia='"Helvetica Neue", sans-serif',cn='"IBM Plex Mono", monospace',Aa=({show:e,onToggle:n,showCustomAddress:s,setShowCustomAddress:o,customRecipient:r,setCustomRecipient:a,externalAddress:i,recipientAddress:c,destChainName:l,destChainLogo:u,compatibleDestinationChains:p,txDetailsChainSwitchRef:f,onOpenNetworkPopover:x,sourceChainLabel:h,sourceDetailsLogo:g,sourceTokenLabel:b,amount:C,totalSourceDebitDisplay:y,receiveAmountDisplay:w,destTokenSymbol:v,shouldQuoteWithdrawGas:k,estimatingFee:A,feeError:S,displayedGasFee:T,selectedDestToken:N,theme:I,styles:E,dark:j,dk:B})=>{const U=j?B.textSecondary:"#71757A",D=j?B.textPrimary:"#0E0D0B",P=p.length>1,L=s&&r?M.isAddress(r)?`${r.slice(0,6)}...${r.slice(-4)}`:r:c?`${c.slice(0,6)}...${c.slice(-4)}`:"\u2014";return t.jsxs(t.Fragment,{children:[t.jsxs("div",{onClick:n,style:{display:"flex",alignItems:"center",gap:"6px",marginBottom:e?"10px":"0",cursor:"pointer",userSelect:"none"},children:[t.jsx("span",{style:{fontSize:"13px",color:U,fontFamily:Ia,fontWeight:600},children:"Transaction Details"}),t.jsx($n.ChevronDown,{size:12,color:U,style:{transform:e?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.2s"}})]}),e&&t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"7px"},children:[t.jsxs("div",{children:[t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontSize:"12px",color:U,fontFamily:cn,fontWeight:500,letterSpacing:"0.03em"},children:"TO"}),t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[t.jsx("span",{style:{fontSize:"13px",color:D,fontFamily:cn,fontWeight:500},children:L}),t.jsx("button",{onClick:()=>{o(O=>!O),!s&&i&&a(i)},style:{background:"none",border:"none",cursor:"pointer",padding:"0",fontSize:"9.5px",fontFamily:cn,color:U,textDecoration:"underline",fontWeight:600},children:s?"Reset":"Switch"})]})]}),s&&t.jsxs("div",{style:{marginTop:"6px"},children:[t.jsx("input",{type:"text",autoComplete:"off",spellCheck:!1,"aria-label":"Recipient address","aria-invalid":r&&!M.isAddress(r)?!0:void 0,"data-spiceflow-focus":!0,value:r,onChange:O=>a(O.target.value),placeholder:"0x...",style:{width:"100%",padding:"8px 10px",borderRadius:"6px",border:`1px solid ${r&&!M.isAddress(r)?j?B.errorBorder:"#fca5a5":j?B.inputBorder:"#d1d5db"}`,backgroundColor:j?B.inputBg:"#f9fafb",color:j?B.inputText:"#111827",fontSize:"12px",fontFamily:cn,outline:"none",boxSizing:"border-box"}}),r&&!M.isAddress(r)&&t.jsx("span",{style:{fontSize:"11px",color:B.errorText,marginTop:"3px",display:"block"},children:"Invalid address"})]})]}),t.jsx(gn,{palette:B,labelColor:U,valueColor:D,label:"RECEIVING CHAIN",value:t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"7px"},children:[u&&t.jsx("img",{src:u,alt:l,style:{width:"14px",height:"14px",borderRadius:"50%"}}),t.jsx("span",{style:{fontSize:"13px",color:D,fontWeight:500,fontFamily:cn,textTransform:"uppercase"},children:l}),t.jsx("button",{ref:f,onClick:O=>{O.stopPropagation(),x(f.current)},style:{background:"none",border:"none",cursor:P?"pointer":"not-allowed",padding:"0",fontSize:"9.5px",fontFamily:cn,color:U,textDecoration:"underline",fontWeight:600,opacity:P?1:.45},children:"Switch"})]})}),t.jsx(gn,{palette:B,labelColor:U,valueColor:D,label:"REQUESTED WITHDRAWAL",value:t.jsxs(ks,{logo:g||null,alt:h,primaryText:D,children:[C||"0"," ",b]})}),k&&t.jsx(gn,{palette:B,labelColor:U,valueColor:D,label:"TOTAL SOURCE DEBIT",value:t.jsxs(ks,{logo:g||null,alt:h,primaryText:D,children:[y," ",b]})}),t.jsx(gn,{palette:B,labelColor:U,valueColor:D,label:"YOU RECEIVE",value:t.jsxs(ks,{logo:u,alt:l,primaryText:D,gap:"4px",children:[w," ",v]})}),k&&t.jsxs(t.Fragment,{children:[t.jsx(gn,{palette:B,labelColor:U,label:"EST. GAS FEE",valueColor:S?"#f87171":D,value:A?"Estimating...":S?"Unavailable":T!==null&&N?`${vs(T,N.decimals)} ${N.symbol}`:"Estimating..."}),S&&t.jsx(xn,{variant:"error",size:"compact",palette:B,fontFamily:E?.fontFamily||I.typography.fontFamily,children:S})]})]})]})},ks=({logo:e,alt:n,primaryText:s,gap:o="6px",children:r})=>t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:o},children:[e&&t.jsx("img",{src:e,alt:n,style:{width:"13px",height:"13px",borderRadius:"50%"}}),t.jsx("span",{style:{fontSize:"13px",color:s,fontWeight:500,fontFamily:cn},children:r})]});function Co(e){const n=new Set(W.getEquivalentAddresses(e).map(s=>s.toLowerCase()));return n.add(e.toLowerCase()),n}const Ea=["USDC","USDT","WETH","WBTC"];function Ss(e,n){const s=m.getChainConfig(n);if(!s)return;if(s.nativeCurrency.symbol.toUpperCase()===e.toUpperCase())return{address:W.ZERO_ADDRESS,symbol:s.nativeCurrency.symbol,decimals:s.nativeCurrency.decimals,chainId:n};const o=s.supportedTokens?.find(r=>r.symbol.toUpperCase()===e.toUpperCase());if(o)return{address:o.address.toLowerCase(),symbol:o.symbol,decimals:o.decimals,chainId:n}}function _t(e,n,s){const o=m.getChainConfig(n);if(!o)return;if(s!==void 0){const i=io(e,s,n);if(i)return{address:i.address.toLowerCase(),symbol:i.symbol,decimals:i.decimals,chainId:n}}const r=Co(e);if([...r].some(i=>W.isNativeToken(i)))return{address:W.ZERO_ADDRESS,symbol:o.nativeCurrency.symbol,decimals:o.nativeCurrency.decimals,chainId:n};const a=o.supportedTokens?.find(i=>r.has(i.address.toLowerCase()));if(a)return{address:a.address.toLowerCase(),symbol:a.symbol,decimals:a.decimals,chainId:n}}function bo(e){const{sourceAsset:n,outputAsset:s,sourceChainId:o,destinationChainId:r,intermediaryCandidates:a=Ea}=e;if(Ln(n,s))return{strategy:"direct",sourceAsset:n,outputAsset:s,sourceChainId:o,destinationChainId:r,summary:`${n.symbol} fronted directly`};if(_t(n.address,r,o))return{strategy:"direct",sourceAsset:n,outputAsset:s,sourceChainId:o,destinationChainId:r,summary:`${n.symbol} fronted on destination, swapped to ${s.symbol}`};if(_t(s.address,o,r))return{strategy:"source-swap",sourceAsset:n,outputAsset:s,sourceChainId:o,destinationChainId:r,summary:`${n.symbol} \u2192 ${s.symbol} on source chain, then fronted`};for(const i of a){const c=Ss(i,o);if(!c||Ln(n,c)||Ln(s,c))continue;const l=Ss(i,r);if(l&&Ln(c,l))return{strategy:"intermediary",sourceAsset:n,outputAsset:s,intermediaryAsset:l,sourceChainId:o,destinationChainId:r,summary:`${n.symbol} \u2192 ${i} on source, fronted, then ${i} \u2192 ${s.symbol} on destination`}}throw new m.SpiceflowError("ROUTE_STRATEGY_ERROR",`No viable cross-chain route found from ${n.symbol} (chain ${o}) to ${s.symbol} (chain ${r}). No intermediary asset is available on both chains.`,{sourceAsset:n.symbol,outputAsset:s.symbol,sourceChainId:o,destinationChainId:r,candidatesChecked:a})}async function wo(e){const{route:n,sourceAmount:s,userAddress:o,registry:r,actionCalls:a,slippage:i}=e;async function c(l,u,p,f){const x=r.getVenueForChain(l);if(!x)throw new m.SpiceflowError("NO_VENUE_FOR_CHAIN",`No liquidity venue configured for chain ${l}. Cannot resolve swap ${u} \u2192 ${p}.`,{chainId:l,tokenIn:u,tokenOut:p,amountIn:f.toString()});const h=await x.resolve({type:"swap",tokenIn:u,tokenOut:p,amountIn:f,maxSlippage:i},l,o);if(!h)throw new m.SpiceflowError("NO_LIQUIDITY",`${x.name} returned no quote for ${u} \u2192 ${p} on chain ${l}. No liquidity available for this pair.`,{venue:x.name,chainId:l,tokenIn:u,tokenOut:p,amountIn:f.toString()});return h}switch(n.strategy){case"direct":{const l=_t(n.sourceAsset.address,n.destinationChainId,n.sourceChainId)||n.sourceAsset;if(Co(l.address).has(n.outputAsset.address.toLowerCase()))return{chainBatches:[{chainId:n.destinationChainId,calls:a}],solverFrontToken:l,solverFrontAmount:s,resolvedSwaps:{}};const u=await c(n.destinationChainId,l.address,n.outputAsset.address,s);return{chainBatches:[{chainId:n.destinationChainId,calls:[...u.calls,...a]}],solverFrontToken:l,solverFrontAmount:s,resolvedSwaps:{destinationSwap:u}}}case"source-swap":{const l=_t(n.outputAsset.address,n.sourceChainId,n.destinationChainId);if(!l)throw new m.SpiceflowError("ROUTE_TOKEN_NOT_FOUND",`Output asset ${n.outputAsset.symbol} (${n.outputAsset.address}) not found on source chain ${n.sourceChainId}`,{token:n.outputAsset.symbol,address:n.outputAsset.address,chainId:n.sourceChainId,side:"source"});const u=_t(n.outputAsset.address,n.destinationChainId,n.destinationChainId);if(!u)throw new m.SpiceflowError("ROUTE_TOKEN_NOT_FOUND",`Output asset ${n.outputAsset.symbol} (${n.outputAsset.address}) not found on destination chain ${n.destinationChainId}`,{token:n.outputAsset.symbol,address:n.outputAsset.address,chainId:n.destinationChainId,side:"destination"});const p=await c(n.sourceChainId,n.sourceAsset.address,l.address,s);return{chainBatches:[{chainId:n.sourceChainId,calls:p.calls},{chainId:n.destinationChainId,calls:a}],solverFrontToken:u,solverFrontAmount:p.amountOutMinimum,resolvedSwaps:{sourceSwap:p}}}case"intermediary":{if(!n.intermediaryAsset)throw new m.SpiceflowError("ROUTE_STRATEGY_ERROR","Intermediary strategy requires an intermediary asset but none was provided in the route plan.",{strategy:n.strategy});const l=_t(n.intermediaryAsset.address,n.sourceChainId,n.destinationChainId);if(!l)throw new m.SpiceflowError("ROUTE_TOKEN_NOT_FOUND",`Intermediary ${n.intermediaryAsset.symbol} (${n.intermediaryAsset.address}) not found on source chain ${n.sourceChainId}`,{token:n.intermediaryAsset.symbol,address:n.intermediaryAsset.address,chainId:n.sourceChainId,side:"source"});const u=await c(n.sourceChainId,n.sourceAsset.address,l.address,s),p=await c(n.destinationChainId,n.intermediaryAsset.address,n.outputAsset.address,u.amountOutMinimum);return{chainBatches:[{chainId:n.sourceChainId,calls:u.calls},{chainId:n.destinationChainId,calls:[...p.calls,...a]}],solverFrontToken:n.intermediaryAsset,solverFrontAmount:u.amountOutMinimum,resolvedSwaps:{sourceSwap:u,destinationSwap:p}}}default:throw new m.SpiceflowError("ROUTE_STRATEGY_ERROR",`Unknown route strategy: ${n.strategy}`,{strategy:n.strategy})}}const ja=({isOpen:e,onClose:n,styles:s,onWithdrawExecute:o,withdrawActionLabel:r,onWithdrawSuccess:a,onWithdrawError:i,autoCloseDelay:c,supportedChains:l,availableTokens:u,buildSpicenetBatch:p})=>{const f=d.useContext(m.SpiceFlowProviderContext);if(!f)return t.jsx("div",{children:"Error: SpiceWithdraw must be used within SpiceFlowProvider"});const x=f.mode||"7702",h=x==="presign"||x==="ondemand",g=!0,{theme:b,dark:C,dk:y}=m.useSpiceBrand(s),w=f.network,v=()=>h?"select":"provider-login",[k,A]=d.useState(v()),[S,T]=d.useState(!1),[N,I]=d.useState(null),[E,j]=d.useState(null),[B,U]=d.useState(""),[D,P]=d.useState(!1),[L,O]=d.useState(!1),[z,q]=d.useState(!1),[_,K]=d.useState(!1),[F,Y]=d.useState(""),[X,$]=d.useState(!0),re=d.useRef(null),ce=d.useRef(null),ee=d.useRef(null),Ie=d.useRef(null),[fe,xe]=d.useState(null),[De,ge]=d.useState(null),[Ae,ie]=d.useState(null),ye=Ot(),{isReady:H,isAuthenticated:ae,address:pe}=ye,me=Lt(),{address:se,chainId:Fe}=ft.useAccount(),[R,te]=d.useState(!1),[Ce,Se]=d.useState(null),[ne,Ge]=d.useState(null),st=d.useRef(null),ot=d.useRef(!0);d.useEffect(()=>(ot.current=!0,()=>{ot.current=!1}),[]);const{executeGasless:Ee,estimateGasless:ht}=Hn(),[yt,Je]=d.useState(null),[Et,Dt]=d.useState(null),[en,wt]=d.useState(!1),[Ze,Ne]=d.useState(null),{assets:ze,loading:it}=jn({address:me,enabled:!!me,refetchInterval:3e4}),vt=d.useMemo(()=>[...new Set([...l??[],...Object.keys(u??{}).map(Number),...(ze||[]).map(Q=>Q.chainId),...(ze||[]).flatMap(Q=>Object.keys(Q.chainTokens??{}).map(oe=>{const[,be]=oe.split(":"),We=Number(be);return Number.isFinite(We)?We:null}).filter(oe=>oe!==null))])].filter(Q=>m.getChainConfig(Q)?.network===w),[l,u,ze,w]),et=d.useMemo(()=>{if(u)return u;const Q={};for(const oe of ze||[]){const be=Object.entries(oe.chainTokens??{});if(be.length>0){for(const[We,qe]of be){const[at,dt,Pe]=We.split(":");if(at!=="evm"||!dt||!Pe)continue;const je=Number(dt);if(!Number.isFinite(je))continue;const Ke=Pe.startsWith("0x")?Pe.toLowerCase():`0x${Pe.toLowerCase()}`,V=m.getChainConfig(je)?.supportedTokens?.find(le=>m.addressesEqual(le.address,Ke));Q[je]||(Q[je]=[]),Q[je].find(le=>m.addressesEqual(le.address,Ke))||Q[je].push({address:Ke,symbol:V?.symbol||qe?.name||oe.symbol,name:V?.name||qe?.name||oe.displayName||oe.name||oe.symbol,decimals:V?.decimals??qe?.decimals??oe.decimals,logoURI:V?.logo||oe.logoURI})}continue}Q[oe.chainId]||(Q[oe.chainId]=[]),Q[oe.chainId].find(We=>m.addressesEqual(We.address,oe.address))||Q[oe.chainId].push({address:oe.address,symbol:oe.symbol,name:oe.displayName||oe.name||oe.symbol,decimals:oe.decimals,logoURI:oe.logoURI})}return Q},[u,ze]),Ct=d.useCallback((Q,oe)=>{if(!Q||!oe)return null;const be=zn(Q,oe),We=Object.entries(Q.chainTokens??{}).flatMap(([V,le])=>{const Oe=Un(V);return Oe?.chainId===oe?[{parsed:Oe,detail:le}]:[]}),qe=et?.[oe]||[],at=V=>qe.find(le=>m.addressesEqual(le.address,V))??null,dt=V=>{const le=We.find(({parsed:Oe})=>m.addressesEqual(Oe.address,V));return le?{address:le.parsed.address,symbol:Q.symbol,name:le.detail?.name||Q.displayName||Q.name||Q.symbol,decimals:le.detail?.decimals??Q.decimals,logoURI:Q.logoURI}:null};for(const V of be){const le=at(V);if(le)return le;const Oe=dt(V);if(Oe)return Oe}const Pe=Jt(Q,oe);if(Pe){const V=at(Pe);if(V)return V;const le=dt(Pe);if(le)return le}const je=_t(Q.address,oe,Q.chainId);return je?at(je.address)||(qe.length>0?null:{address:je.address,symbol:je.symbol||Q.symbol,name:Q.displayName||Q.name||Q.symbol,decimals:je.decimals??Q.decimals,logoURI:Q.logoURI}):null},[et]),ue=d.useMemo(()=>{if(!N)return null;const Q=N.receiptTokenId||`${N.chainId}:${N.address.toLowerCase()}`;return ze.find(oe=>(oe.receiptTokenId||`${oe.chainId}:${oe.address.toLowerCase()}`)===Q)||N},[N,ze]),Te=d.useMemo(()=>{if(!ue)return[];const Q=Object.keys(ue.chainTokens??{}).map(oe=>Un(oe)?.chainId??null).filter(oe=>oe!==null);return Array.from(new Set([...Q,ue.chainId,...vt].filter(Number.isFinite))).filter(oe=>m.getChainConfig(oe)?.network===w&&Ct(ue,oe)!==null)},[ue,vt,Ct,w]),tt=d.useMemo(()=>{if(!ue||typeof window>"u")return null;const Q=`spiceflow:withdraw-chain:${ue.receiptTokenId||ue.address.toLowerCase()}`,oe=window.localStorage.getItem(Q),be=oe?Number(oe):null;return be!==null&&Number.isFinite(be)&&Te.includes(be)?be:null},[ue,Te]),Pt=d.useMemo(()=>ue?tt!==null?tt:Fe&&Te.includes(Fe)?Fe:ue.chainId&&Te.includes(ue.chainId)?ue.chainId:Te[0]??vt[0]??null:vt[0]??null,[ue,tt,Fe,Te,vt]),ke=d.useMemo(()=>Ct(ue,E),[Ct,ue,E]);d.useEffect(()=>{!ze?.length||ue||I(ze[0])},[g,ze,ue]),d.useEffect(()=>{!ue||(E===null||!Te.includes(E))&&j(Pt)},[g,ue,E,Pt,Te]),d.useEffect(()=>{if(!D&&!L&&!z)return;const Q=oe=>{const be=oe.target;D&&!re.current?.contains(be)&&!ce.current?.contains(be)&&!be?.closest?.("[data-network-popover]")&&P(!1),L&&!ee.current?.contains(be)&&!be?.closest?.("[data-token-popover]")&&O(!1),z&&!Ie.current?.contains(be)&&!be?.closest?.("[data-balance-trigger]")&&q(!1)};return document.addEventListener("mousedown",Q),()=>document.removeEventListener("mousedown",Q)},[D,L,z]);const kt=d.useCallback(Q=>{if(!Q||Te.length<=1)return;const oe=Q.getBoundingClientRect(),be=220,We=16;xe({top:oe.bottom+8,left:Math.min(Math.max(We,oe.right-be),window.innerWidth-be-We)}),P(qe=>!qe)},[Te.length]);d.useEffect(()=>{if(!ue||E===null||typeof window>"u")return;const Q=`spiceflow:withdraw-chain:${ue.receiptTokenId||ue.address.toLowerCase()}`;window.localStorage.setItem(Q,String(E))},[ue,E]);const nt=_&&F&&M.isAddress(F)?F:se||me,$e=ue?.balanceFormatted??0,Le=d.useCallback(Q=>{if(!Q)return;const oe=Q.getBoundingClientRect();ie({top:oe.bottom+8,left:oe.right-220}),q(!0)},[]),Ht=ue?.displaySymbol||ue?.receiptTokenName||ue?.symbol||"spiceUSDC",mt=ue?.displayChainName||"Spicenet",tn=as,jt=as,Qe=ue?.receiptTokenDecimals??ue?.decimals,he=d.useMemo(()=>{if(!ke||!Qe)return 0n;try{return M.parseUnits(B||"0",Qe)}catch{return 0n}},[B,ke,Qe]),rt=d.useMemo(()=>!ke||!Qe?0n:ho(he,Qe,ke.decimals),[ke,Qe,he]),xt=d.useMemo(()=>{const Q=Et??yt;return!Q||Q<=0n||!ke||!Qe?0n:ho(Q,ke.decimals,Qe)},[Et,yt,ke,Qe]),lt=d.useMemo(()=>he+xt,[he,xt]),Re=Et??yt,ut=d.useCallback(Q=>{if(!E||!ke)return[];if(he===0n||rt===0n||!nt)return[];const oe={chainId:E,calls:[],tokenTransfers:[{from:"escrow",to:nt,token:ke.address,amount:rt}]};if(!p)return[oe];const be=p({destinationChainId:E,deliveryToken:ke.address,deliveryAmount:Q??rt,deliveryRecipient:nt});return be?[be,oe]:[oe]},[g,E,ke,he,rt,nt,p]),Ve=d.useMemo(()=>ut(),[ut]);d.useEffect(()=>{let Q=!1;if(!e||h||R||!ke||he===0n){Je(null),Ne(null),wt(!1);return}if(Ve.length===0){Je(null),wt(!0);return}const oe=async()=>{wt(!0),Ne(null);try{const We=await ht(Ve,ke.address,0n,{useCustomTransfers:!0});if(Q)return;const qe=We.intents[0]?.batches[0];if(!qe){Je(null),Ne("No gas fee estimate was returned for this withdraw.");return}Je(Cn(qe).totalFee)}catch(We){if(Q)return;Je(null),Ne(We instanceof Error?We.message:"Failed to estimate gas fee")}finally{Q||wt(!1)}};oe();const be=window.setInterval(()=>{oe()},1e4);return()=>{Q=!0,window.clearInterval(be)}},[e,h,R,Ve,ke,ht,he]),d.useEffect(()=>{R||Dt(null)},[R,B,E,ke?.address]);const Bt=d.useCallback(()=>{T(!0),A("select")},[g]),Ft=d.useCallback(()=>{n()},[n]),Wt=d.useRef(null);Wt.current={batches:Ve,walletAddress:pe,recipient:nt,token:ke,chainId:E,amount:B,receiveAmountRaw:rt,gasFee:yt,isNon7702:h,buildWithdrawBatches:ut,gasless:{estimateGasless:ht,executeGasless:Ee},ui:{setIsExecuting:te,setExecutionError:Se,setExecutionProgress:Ge,setLockedGasFee:Dt},executionContextRef:st,isMountedRef:ot,onWithdrawExecute:o,onWithdrawSuccess:a,onWithdrawError:i,buildSpicenetBatch:p};const Qt=d.useCallback(()=>xo(Wt.current),[]),Vt=d.useCallback(()=>ka(Wt.current),[]);if(d.useEffect(()=>{if(!e){const Q=setTimeout(()=>{A(v()),T(!1),I(null),j(null),U(""),P(!1),O(!1),K(!1),Y(""),te(!1),Se(null),Ge(null),st.current=null},300);return()=>clearTimeout(Q)}},[e,h]),d.useEffect(()=>{if(!h&&e&&k==="provider-login"&&H&&ae&&me&&!S){const Q=setTimeout(()=>{T(!0),A("select")},100);return()=>clearTimeout(Q)}},[h,e,k,H,ae,me,S,g]),!e)return null;if(k==="provider-login"&&!h)return t.jsx(gs,{onAuthSuccess:Bt,autoTrigger:!0});if(k==="select"&&g){const Q=parseFloat(B)||0,oe=Qe?vs(lt,Qe):B||"0",be=parseFloat(oe)||0,We=be>0&&be>$e,qe=(E?m.getChainConfig(E):null)?.displayName||"Network",at=E?Nt[E]||Kt:null,dt=ke?.symbol||"\u2014",Pe=Ht,je=ke?vs(rt,ke.decimals):"0",Ke=mo(Q,ke?.symbol||ue?.symbol),V=mo(parseFloat(je)||0,ke?.symbol||ue?.symbol),le=!_||!F||M.isAddress(F),Oe=!h&&Q>0&&ke!==null,ct=!Oe||yt!==null&&!en&&!Ze,_e=Q>0&&!We&&N!==null&&E!==null&&ke!==null&&nt&&le&&ct&&rt>0n,Tt=!_e,nn=N===null?"NO BALANCE":Q===0?"ENTER AMOUNT":We?"INSUFFICIENT BALANCE":Oe&&!ct?Ze?"GAS UNAVAILABLE":"ESTIMATING GAS":Oe&&rt===0n?"AMOUNT TOO SMALL":"WITHDRAW",Z=!!ne&&(ne.step==="success"||ne.step==="error"),G=t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"5px"},children:[t.jsx("img",{src:Js,alt:"","aria-hidden":"true",style:{width:"13px",height:"13px",flexShrink:0,...C?{filter:"invert(0.6)"}:{}}}),t.jsx("p",{style:{fontSize:"13px",color:C?y.textSecondary:"#979AA0",margin:"0",lineHeight:"1.4",fontFamily:'"Helvetica Neue", sans-serif'},children:"Withdraw collateral from your account to 10+ EVM blockchains."})]}),J='"Helvetica Neue", sans-serif',de='"IBM Plex Mono", monospace',Be=s?.primaryColor||b.colors.primary,Ue=C?y.cardBg:"#E9E9E9",Xe=C?y.cardBorder:"#C6C6C6",He=C?y.textSecondary:"#7D7C7B",Ye=C?y.textSecondary:"#71757A",gt=C?y.textPrimary:"#0E0D0B",St=C?y.cardBorder:"#C5C5C4",we=C?"rgba(255,255,255,0.08)":"#D4D3D3",Me=170,Ut=Pe.length>8?"14px":Pe.length>6?"16px":"18px",qt=dt.length>8?"14px":dt.length>6?"16px":"18px",sn=402,on=B.length>7?42:B.length>5?46:54,pn=je.length>15?32:je.length>10?36:je.length>7?42:je.length>5?46:54;return t.jsx(Xt,{isOpen:!0,onClose:Ft,title:"Withdraw",subtitle:G,styles:s,theme:b,dark:C,maxWidth:"486px",footerLinkText:"Spicenet accounts \u2192",overlayDimmed:!1,overlayContent:Z?t.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,display:"flex",flexDirection:"column",justifyContent:"flex-end",pointerEvents:"none",zIndex:20},children:t.jsx("div",{style:{pointerEvents:"auto"},children:t.jsx(ys,{type:"withdraw",isOpen:!0,isProcessing:R,onRetryTx:()=>{Vt()},onNewTx:()=>{Ge(null),U(""),Se(null),st.current=null},onClose:()=>{Ge(null),Se(null),te(!1),st.current=null},onComplete:()=>{Ge(null),Se(null),te(!1),st.current=null},results:[{asset:{symbol:ke?.symbol||"Token",address:ke?.address||""},txHash:ne?.txHash||"",success:ne?.step==="success",error:ne?.error,amount:B}],chainName:E?m.getChainName(E):"Network",explorerUrl:E?m.getExplorerUrl(E,"").replace(/\/tx\/.*$/,""):void 0,theme:b})})}):null,children:t.jsxs("div",{style:{width:`${sn}px`,margin:"0 auto",padding:"0 0 4px 0",position:"relative"},children:[t.jsx(Sa,{show:z,position:Ae,popoverRef:Ie,spiceAssets:ze,dark:C,dk:y}),t.jsxs("div",{style:{marginTop:"16px",marginBottom:"16px",display:"flex",flexDirection:"column",gap:"16px"},children:[t.jsxs("div",{style:{backgroundColor:Ue,border:`1px solid ${Xe}`,borderRadius:"7px",padding:"14px 16px 12px 16px",minHeight:"138px",display:"flex",flexDirection:"column",gap:"6px",position:"relative"},children:[t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontFamily:J,fontSize:"17px",fontWeight:500,color:He,lineHeight:"24px"},children:"Source"}),t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px",fontFamily:J,fontSize:"13px",fontWeight:500,color:Ye,lineHeight:"16px"},children:["Balance:"," ",it?"...":an($e),t.jsx("button",{type:"button","data-balance-trigger":!0,onClick:ve=>{ve.stopPropagation(),Le(ve.currentTarget)},style:{width:"15px",height:"15px",borderRadius:"999px",border:"1px solid #EA4B4B",color:"#EA4B4B",display:"inline-flex",alignItems:"center",justifyContent:"center",fontSize:"9px",fontWeight:500,lineHeight:1,boxSizing:"border-box",background:"transparent",padding:0,cursor:"pointer"},children:t.jsx("span",{style:{display:"inline-flex",alignItems:"center",justifyContent:"center",gap:"1.5px"},children:[0,1,2].map(ve=>t.jsx("span",{style:{width:"1.75px",height:"1.75px",borderRadius:"999px",backgroundColor:"#EA4B4B",display:"block"}},ve))})})]})]}),t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:"12px",flex:1},children:[t.jsxs("div",{style:{flex:1,minWidth:0,alignSelf:"flex-start",paddingTop:"4px"},children:[t.jsx("input",{type:"text",inputMode:"decimal",autoComplete:"off","aria-label":"Withdraw amount","aria-invalid":We||void 0,"data-spiceflow-focus":!0,value:B,onChange:ve=>{const pt=ve.target.value;(pt===""||/^\d*\.?\d*$/.test(pt))&&U(pt)},placeholder:"0.0",style:{fontFamily:J,fontSize:`${on}px`,fontWeight:700,color:We?"#ef4444":B?gt:"#A8A8A7",lineHeight:"0.95",letterSpacing:"-0.04em",backgroundColor:"transparent",border:"none",outline:"none",padding:0,width:"100%"}}),t.jsx("div",{style:{fontSize:"12px",fontWeight:500,color:Ye,fontFamily:J,marginTop:"10px"},children:Ke})]}),t.jsx("div",{style:{width:`${Me}px`,flexShrink:0},children:t.jsxs("div",{style:{backgroundColor:"transparent",border:`1px solid ${St}`,borderRadius:"8px",overflow:"hidden",width:"100%",display:"flex",flexDirection:"column",boxSizing:"border-box"},children:[t.jsxs("div",{ref:ee,onClick:ve=>{if(ve.stopPropagation(),!L&&ee.current){const pt=ee.current.getBoundingClientRect(),Yt=220,ln=16;ge({top:pt.bottom+8,left:Math.min(Math.max(ln,pt.right-Yt),window.innerWidth-Yt-ln)})}O(pt=>!pt)},style:{display:"flex",alignItems:"center",gap:"6px",padding:"9px 10px 8px 10px",cursor:"pointer"},children:[t.jsx("img",{src:tn,alt:Pe,style:{width:"24px",height:"24px",borderRadius:"50%"}}),t.jsx("span",{style:{fontSize:Ut,fontWeight:500,color:gt,lineHeight:"1.3",fontFamily:J,flex:1,minWidth:0,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",letterSpacing:"-0.02em"},children:Pe}),t.jsx(Gt,{size:15,color:gt,strokeWidth:2.25})]}),t.jsx(no,{isOpen:L,position:De,title:"SELECT TOKEN",portalAttribute:"token",items:(ze||[]).map(ve=>({id:ve.receiptTokenId||ve.address,label:ve.displaySymbol||ve.receiptTokenName||ve.symbol,icon:as,detail:an(ve.balanceFormatted)})),selectedId:ue?.receiptTokenId||ue?.address||null,onSelect:ve=>{const pt=(ze||[]).find(Yt=>(Yt.receiptTokenId||Yt.address)===ve);pt&&(I(pt),U("")),O(!1)}}),t.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"5px 10px",backgroundColor:we,borderTop:`1px solid ${St}`},children:t.jsx("span",{style:{fontSize:"11px",fontWeight:400,color:gt,fontFamily:J,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",textTransform:"uppercase"},children:mt})})]})})]}),t.jsxs("div",{style:{minHeight:"18px",display:"flex",alignItems:"center",justifyContent:"space-between"},children:[We?t.jsx("span",{style:{fontSize:"12px",color:y.errorText,fontFamily:J,fontWeight:500},children:"Insufficient Balance"}):t.jsx("span",{}),t.jsx("div",{style:{display:"flex",justifyContent:"flex-end",gap:"0px",minHeight:"32px",marginRight:"-9px"},children:[0,25,50,75,100].map((ve,pt)=>{const Yt=pt===4,ln=ve/100,er=parseFloat(B)||0,Bs=$e>0&&Math.abs(er/$e*100-ve)<1;return t.jsx("button",{type:"button","aria-label":`Set amount to ${ve}%`,"aria-pressed":Bs,onClick:()=>{const tr=$e*ve/100,Jn=N?.decimals??6,Fs=Math.floor(tr*10**Jn)/10**Jn;U(ve===0?"":Fs>0?kn(Fs,Jn):"")},title:`${ve}%`,disabled:$e===0,"data-spiceflow-focus":!0,style:{width:"32px",height:"32px",padding:"9px",border:"none",backgroundColor:"transparent",cursor:$e===0?"not-allowed":"pointer",opacity:Bs?1:.5,transition:"opacity 0.15s ease",display:"flex",alignItems:"center",justifyContent:"center",boxSizing:"border-box"},children:t.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",children:[t.jsx("circle",{cx:"7",cy:"7",r:"6.84375",fill:Yt?Be:"none",stroke:Yt?Be:C?"#4a5568":"#3C3E42",strokeWidth:"0.3125"}),!Yt&&ln>0&&t.jsx("path",{d:`M 7 7 L 7 0.15625 A 6.84375 6.84375 0 ${ln>.5?1:0} 1 ${7+6.84375*Math.sin(ln*2*Math.PI)} ${7-6.84375*Math.cos(ln*2*Math.PI)} Z`,fill:C?y.textSecondary:"#3C3E42"})]})},ve)})})]})]}),t.jsxs("div",{style:{backgroundColor:Ue,border:`1px solid ${Xe}`,borderRadius:"7px",padding:"14px 16px 12px 16px",minHeight:"138px",display:"flex",flexDirection:"column",gap:"6px"},children:[t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontFamily:J,fontSize:"17px",fontWeight:500,color:He,lineHeight:"24px"},children:"Destination"}),t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px",fontFamily:J,fontSize:"13px",fontWeight:500,color:Ye,lineHeight:"16px"},children:["Balance:"," ",it?"...":an($e),t.jsx("button",{type:"button","data-balance-trigger":!0,onClick:ve=>{ve.stopPropagation(),Le(ve.currentTarget)},style:{width:"15px",height:"15px",borderRadius:"999px",border:"1px solid #EA4B4B",color:"#EA4B4B",display:"inline-flex",alignItems:"center",justifyContent:"center",fontSize:"9px",fontWeight:500,lineHeight:1,boxSizing:"border-box",background:"transparent",padding:0,cursor:"pointer"},children:t.jsx("span",{style:{display:"inline-flex",alignItems:"center",justifyContent:"center",gap:"1.5px"},children:[0,1,2].map(ve=>t.jsx("span",{style:{width:"1.75px",height:"1.75px",borderRadius:"999px",backgroundColor:"#EA4B4B",display:"block"}},ve))})})]})]}),t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:"12px",flex:1},children:[t.jsxs("div",{style:{flex:1,minWidth:0,alignSelf:"flex-start",paddingTop:"4px"},children:[t.jsx("div",{style:{fontFamily:J,fontSize:`${pn}px`,fontWeight:700,color:B?gt:"#A8A8A7",lineHeight:"0.95",letterSpacing:"-0.04em"},children:je}),t.jsx("div",{style:{fontSize:"12px",fontWeight:500,color:Ye,fontFamily:J,marginTop:"10px"},children:V})]}),t.jsxs("div",{style:{width:`${Me}px`,flexShrink:0,display:"flex",flexDirection:"column",alignItems:"stretch",gap:"8px"},children:[t.jsxs("div",{style:{backgroundColor:"transparent",border:`1px solid ${St}`,borderRadius:"8px",overflow:"hidden",width:"100%",display:"flex",flexDirection:"column",boxSizing:"border-box"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px",padding:"9px 10px 8px 10px"},children:[t.jsx("img",{src:ke?.logoURI||Sn,alt:dt,style:{width:"24px",height:"24px",borderRadius:"50%"}}),t.jsx("span",{style:{fontSize:qt,fontWeight:500,color:gt,lineHeight:"1.3",fontFamily:J,flex:1,minWidth:0,letterSpacing:"-0.02em"},children:dt})]}),t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"5px 10px",backgroundColor:we,borderTop:`1px solid ${St}`},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[at&&t.jsx("img",{src:at,alt:qe,style:{width:"13px",height:"13px",borderRadius:"50%",flexShrink:0}}),t.jsx("span",{style:{fontSize:"11px",fontWeight:400,color:gt,fontFamily:J,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",textTransform:"uppercase"},children:qe})]}),t.jsx("button",{ref:re,onClick:ve=>{ve.stopPropagation(),kt(re.current)},style:{background:"none",border:"none",cursor:Te.length>1?"pointer":"not-allowed",padding:"0 0 0 8px",fontSize:"9.5px",fontFamily:de,color:Ye,textDecoration:"underline",fontWeight:600,opacity:Te.length>1?1:.45},children:"Switch"}),t.jsx(no,{isOpen:D,position:fe,title:"SELECT NETWORK",portalAttribute:"network",items:Te.map(ve=>{const pt=m.getChainConfig(ve);return{id:String(ve),label:pt?.displayName||String(ve),icon:Nt[ve]||Kt}}),selectedId:E!==null?String(E):null,onSelect:ve=>{j(Number(ve)),P(!1)}})]})]}),t.jsx("div",{style:{minHeight:"14px"}})]})]})]})]}),t.jsxs("div",{style:{marginBottom:b.spacing.sm},children:[t.jsx(Aa,{show:X,onToggle:()=>$(ve=>!ve),showCustomAddress:_,setShowCustomAddress:K,customRecipient:F,setCustomRecipient:Y,externalAddress:se,recipientAddress:nt,destChainName:qe,destChainLogo:at,compatibleDestinationChains:Te,txDetailsChainSwitchRef:ce,onOpenNetworkPopover:kt,sourceChainLabel:mt,sourceDetailsLogo:jt,sourceTokenLabel:Pe,amount:B,totalSourceDebitDisplay:oe,receiveAmountDisplay:je,destTokenSymbol:dt,shouldQuoteWithdrawGas:Oe,estimatingFee:en,feeError:Ze,displayedGasFee:Re,selectedDestToken:ke,theme:b,styles:s,dark:C,dk:y}),Ce&&t.jsx(xn,{variant:"error",size:"compact",palette:y,fontFamily:s?.fontFamily||b.typography.fontFamily,style:{marginBottom:"12px"},children:Ce}),t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:()=>{_e&&Qt()},disabled:Tt||R,theme:b,dark:C,styles:s,style:{marginTop:"8px"},children:R?"EXECUTING...":nn})]})]})})}return null},vo=ja;var Ba="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAKlBMVEVMaXHpSkrmS0vrSkrmR0fpSkrrSkroSUnqSkrpSkrpSkrpSkrsS0vzTk68N2lZAAAADHRSTlMA/SoEHOX1RcdliKnuQ9TkAAAACXBIWXMAAAsTAAALEwEAmpwYAAAB4UlEQVR42u1XyRbDIAhUcQ/8/+9WUROzNIvtMbxefMo4yACpEOcG4geD30G0C07B8P0qWkzm3QgJEBAsIUqURJMe8NcToZTlR8YJgGev5wwVd2QEG+FZGIl+9iUyloGQvL5NIt2V6RfqoCPRHMZN/0ofy+NBKEsO41b4wVaHADWdvgGqGyR0o5/Tvw/pmr7v6C/XhRbVaTYqfU5bgPVGDUNmYDgXT6UP28xEvAyjpw/H2pD5wGE2ivZZPGv6fXF5JlhEdfr68AUB4vdsqHP6DWPWyDYbITsz/asecXDR+vXPtZbOdmG0o7324dJYVFypLRu6+ptws9aV53glhUIqMCDaqNxdKwjkoQDkzpkAjL1vWwCJA1YBUgpRjlkDULl9jxjFudjHbBkXWg3ZT4N3q9AkMOXUrMM0VZ3oVJk3QXSbvNi0CzNXUimZ2LeatBl7Ie57CiQ9k9EVYEripKVYwJMlq+qKN3eyVzaLu/pArtl0pgFok6XS1j6fjI8BUDZGvPkCvAAvwJdiuipnuZRzJL5q93li0M53pp6Bq4bicZnb2kuMh/8Num9ycOsP9NUalBJ/trG2rmH5/Boabji1FxsbbFhzmaezHAPANlxxcDwvwzWNZ3ps2P0X02MG4rX/2Ad4/i9F5OK4gwAAAABJRU5ErkJggg==";const Fn=e=>{const n=Math.round(e*1e5)/1e5;return new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",minimumFractionDigits:0,maximumFractionDigits:5}).format(n)},ko=e=>{const n=Math.round(e*1e5)/1e5;return new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",minimumFractionDigits:0,maximumFractionDigits:5}).format(n)},Fa=({balanceData:e,isLoading:n=!1,styles:s,className:o="",showHeader:r=!0,onAccountClick:a,onDepositClick:i,onWithdrawClick:c,vaultBalance:l,fetchVaultBalance:u,onWithdrawExecute:p,withdrawActionLabel:f,destinationChainId:x,destinationTokenAddress:h,customSections:g,showDefaultSections:b=!0})=>{const C=d.useContext(m.SpiceFlowProviderContext),y=(C?.mode||"7702")!=="7702",w=C?.appName||"Spicenet",{dark:v,primaryColor:k,dk:A,theme:S}=m.useSpiceBrand(s),[T,N]=d.useState(!0),[I,E]=d.useState(!1),[j,B]=d.useState(!1),[U,D]=d.useState(null),{isConnected:P}=ft.useAccount(),{disconnect:L}=ft.useDisconnect();d.useEffect(()=>{y&&u&&u().then(F=>{const Y=Math.round(F*1e5)/1e5;D(Y)}).catch(F=>{console.error("Error fetching vault balance:",F),D(null)})},[y,u]);const O=()=>{N(!T)},z=d.useMemo(()=>{if(!e.freeCollateralItems)return null;const F=e.freeCollateralItems.filter($=>$.name==="USDC");if(F.length===0)return null;const Y=F.reduce(($,re)=>$+re.balance,0),X=[];return F.forEach($=>{$.networks&&$.networks.forEach(re=>{(re===1||re===11155111||re===8453||re===84532)&&(X.includes(re)||X.push(re))})}),X.length===0&&X.push(1,8453),{name:"USDC",totalBalance:Y,networks:X,subtitle:F[0]?.subtitle||"USD COIN"}},[e.freeCollateralItems]),q=d.useMemo(()=>{if(y){if(U!==null)return U;if(l!=null)return l}return e.freeCollateralItems?e.freeCollateralItems.reduce((F,Y)=>F+Y.balance,0):e.freeCollateral},[y,U,l,e.freeCollateralItems,e.freeCollateral]),_=F=>T?F:"******",K=()=>{L(),E(!1),B(!1)};return t.jsxs("div",{className:o,style:{borderRadius:"16px",backgroundColor:v?A.shell:"#D5D5D5",width:"522px",padding:"8px",fontFamily:s?.fontFamily||'"Helvetica Neue", sans-serif',...s?.container},children:[t.jsxs("div",{style:{background:v?A.cardBg:" white",display:"flex",flexDirection:"column"},children:[t.jsxs("div",{style:{backgroundColor:v?A.inputBg:"#E9E9E9",borderRadius:"0 0 16px 16px",padding:"20px",display:"flex",flexFlow:"column"},children:[t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"4px"},children:[t.jsxs("p",{style:{fontSize:"14px",fontWeight:500,fontFamily:'"IBM Plex Mono", monospace',color:v?A.textPrimary:"#0E0D0B",margin:0},children:[w.toUpperCase()," BALANCE"]}),P&&t.jsx("button",{onClick:K,"aria-label":"Disconnect wallet",style:{width:"36px",height:"36px",borderRadius:"8px",border:v?`1px solid ${k}33`:"1px solid #E5E7EB",background:v?A.inputBg:"white",display:"flex",alignItems:"center",justifyContent:"center",cursor:"pointer",transition:Mt.interactive,padding:"8px"},onMouseEnter:F=>{F.currentTarget.style.backgroundColor=v?A.cardBg:"#F3F4F6"},onMouseLeave:F=>{F.currentTarget.style.backgroundColor=v?A.inputBg:"white"},children:t.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[t.jsx("path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"}),t.jsx("polyline",{points:"16 17 21 12 16 7"}),t.jsx("line",{x1:"21",y1:"12",x2:"9",y2:"12"})]})})]}),t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.percentageChange!==void 0&&e.percentageChange!==null&&t.jsxs("div",{style:{fontSize:"13px",fontWeight:700,color:e.percentageChange>=0?v?A.successText:"#009C51":v?A.errorText:"#EF4444"},children:[e.percentageChange>=0?"+":"",e.percentageChange.toFixed(2),"%"]}),t.jsx("button",{onClick:O,style:{background:"none",border:"none",cursor:"pointer",padding:"8px",display:"flex",alignItems:"center",justifyContent:"center",transition:"opacity 0.2s ease"},onMouseEnter:F=>{F.currentTarget.style.opacity="0.7"},onMouseLeave:F=>{F.currentTarget.style.opacity="1"},children:T?t.jsxs("svg",{width:"32",height:"32",viewBox:"0 0 24 24",fill:"none",children:[t.jsx("path",{d:"M12 5C7 5 2.73 8.11 1 12.5C2.73 16.89 7 20 12 20C17 20 21.27 16.89 23 12.5C21.27 8.11 17 5 12 5Z",stroke:v?A.textSecondary:"#1A1A1A",strokeWidth:"2",fill:"none"}),t.jsx("circle",{cx:"12",cy:"12.5",r:"3",stroke:v?A.textSecondary:"#1A1A1A",strokeWidth:"2",fill:"none"})]}):t.jsxs("svg",{width:"32",height:"32",viewBox:"0 0 24 24",fill:"none",children:[t.jsx("path",{d:"M12 5C7 5 2.73 8.11 1 12.5C2.73 16.89 7 20 12 20C17 20 21.27 16.89 23 12.5C21.27 8.11 17 5 12 5Z",stroke:v?A.textSecondary:"#1A1A1A",strokeWidth:"2",fill:"none"}),t.jsx("path",{d:"M3 3L21 21",stroke:v?A.textSecondary:"#1A1A1A",strokeWidth:"2",strokeLinecap:"round"})]})})]}),t.jsx("p",{style:{fontSize:"40px",fontWeight:700,color:v?A.textPrimary:"black"},children:_(Fn(y&&U!==null?U:y&&l!==void 0&&l!==null?l:e.totalBalance))}),t.jsxs("div",{style:{display:"flex",gap:"12px",marginTop:"16px"},children:[t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:()=>{i?i():E(!0)},theme:S,dark:v,styles:s,children:"DEPOSIT"}),t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:()=>{c?c():B(!0)},theme:S,dark:v,styles:s,children:"WITHDRAW"})]})]}),t.jsxs("div",{style:{background:v?A.cardBg:"white",padding:"12px 20px",borderRadius:"12px"},children:[b&&t.jsx(to,{title:"FREE COLLATERAL",icon:Ba,amount:_(ko(q)),defaultExpanded:!1,children:y&&(U!==null||l!=null)?t.jsx(Pn,{name:"USDC",balance:_(Fn(U!==null?U:l)),subtitle:"USD COIN",icon:Sn,onClick:a?()=>a("usdc-vault"):void 0}):z?t.jsx(Pn,{name:z.name,balance:_(Fn(z.totalBalance)),subtitle:z.subtitle,networks:z.networks,icon:Sn,onClick:a?()=>a(z.name):void 0}):e.freeCollateralItems&&e.freeCollateralItems.length>0?e.freeCollateralItems.map((F,Y)=>t.jsxs(d.Fragment,{children:[t.jsx(Pn,{name:F.name,balance:_(Fn(F.balance)),subtitle:F.subtitle,networks:F.networks,icon:F.name==="USDC"?Sn:void 0,onClick:a?()=>a(F.id):void 0}),Y<e.freeCollateralItems.length-1&&t.jsx("div",{style:{height:"1px",backgroundColor:v?A.cardBorder:"#D0D2D8",margin:"4px 0"}})]},F.id)):t.jsx("div",{style:{padding:"12px 0",color:v?A.textSecondary:"#6B7280",fontSize:"13px",fontFamily:'"IBM Plex Mono", monospace'},children:"No collateral items available"})}),g&&g.length>0&&g.filter(F=>F&&F.id&&F.title&&typeof F.title=="string"&&F.title.trim().length>0).map(F=>t.jsx(to,{title:F.title,icon:F.icon||void 0,amount:_(ko(F.totalBalance||0)),defaultExpanded:F.defaultExpanded!==void 0?F.defaultExpanded:!1,children:F.items&&F.items.length>0?F.items.map((Y,X)=>t.jsxs(d.Fragment,{children:[t.jsx(Pn,{name:Y.name,balance:_(Fn(Y.balance)),subtitle:Y.subtitle,networks:Y.networks,icon:Y.name==="USDC"?Sn:void 0,onClick:a?()=>a(Y.id):void 0}),X<F.items.length-1&&t.jsx("div",{style:{height:"1px",backgroundColor:v?A.cardBorder:"#D0D2D8",margin:"4px 0"}})]},Y.id||`item-${X}`)):t.jsx("div",{style:{padding:"12px 0",color:v?A.textSecondary:"#6B7280",fontSize:"13px",fontFamily:'"IBM Plex Mono", monospace'},children:F.emptyMessage||"No items available"})},F.id))]})]}),I&&t.jsx(eo,{isOpen:I,onClose:()=>E(!1),styles:s}),j&&t.jsx(vo,{isOpen:j,onClose:()=>B(!1),styles:s,onWithdrawExecute:p,withdrawActionLabel:f})]})},Ta=({options:e,selectedIndex:n,onSelect:s,primaryColor:o,dark:r=!1,textPrimary:a="#111827",textSecondary:i="#6b7280",trackColor:c})=>{const l=e.length-1,u=c||(r?"#3a3a3a":"#d1d5db"),p=r?"4px":"50%",f=r?"none":"2px solid white",x=r?"none":`0 0 0 1px ${o}`;return t.jsxs("div",{style:{width:"100%",userSelect:"none"},children:[t.jsxs("div",{style:{position:"relative",paddingBottom:"4px"},children:[t.jsx("div",{style:{position:"absolute",top:"50%",left:0,right:0,height:"4px",background:u,borderRadius:"2px",transform:"translateY(-50%)",pointerEvents:"none"}}),t.jsx("div",{style:{position:"absolute",top:"50%",left:0,width:`${n/l*100}%`,height:"4px",background:o,borderRadius:"2px",transform:"translateY(-50%)",pointerEvents:"none",transition:"width 0.15s ease"}}),t.jsx("input",{type:"range","aria-label":"Lock duration","aria-valuetext":e[n]?.label,"data-spiceflow-focus":!0,min:0,max:l,step:1,value:n,onChange:h=>s(Number(h.target.value)),style:{WebkitAppearance:"none",appearance:"none",width:"100%",height:"20px",background:"transparent",cursor:"pointer",outline:"none",border:"none",position:"relative",zIndex:1,margin:0,padding:0}})]}),t.jsx("div",{style:{display:"flex",justifyContent:"space-between",marginTop:"6px"},children:e.map((h,g)=>t.jsxs("div",{onClick:()=>s(g),style:{display:"flex",flexDirection:"column",alignItems:g===0?"flex-start":g===l?"flex-end":"center",cursor:"pointer",flex:1},children:[t.jsx("span",{style:{fontSize:"12px",fontWeight:g===n?700:400,color:g===n?a:i,whiteSpace:"nowrap",transition:"color 0.15s, font-weight 0.15s"},children:h.label}),h.highlight&&t.jsx("span",{style:{fontSize:"10px",color:i,whiteSpace:"nowrap"},children:"(most common)"})]},g))}),t.jsx("style",{children:`
66
+ `})]})};function Pn(e){const[n,s,o]=e.split(":");if(n!=="evm"||!s||!o)return null;const r=Number(s);if(!Number.isFinite(r))return null;const a=o.startsWith("0x")?o.toLowerCase():`0x${o.toLowerCase()}`;return{chainId:r,address:a}}function ao(e){return(e??"").trim().replace(/^test\s+/i,"").replace(/^spice/i,"").toLowerCase().replace(/[^a-z0-9]/g,"")}function io(e,n,s){const o=new Set(n.map(ao).filter(Boolean)),r=a=>{if(s&&m.addressesEqual(a.address,s))return 0;const i=[a.symbol,a.name,a.equivalenceGroup].map(ao).findIndex(c=>c&&o.has(c));return i===-1?4:i+1};return[...e].sort((a,i)=>{const c=r(a)-r(i);return c!==0?c:a.address.toLowerCase().localeCompare(i.address.toLowerCase())})}const lo=typeof process<"u"&&process.env?.NEXT_PUBLIC_MORALIS_API_KEY||typeof{url:typeof document>"u"?require("url").pathToFileURL(__filename).href:un&&un.tagName.toUpperCase()==="SCRIPT"&&un.src||new URL("index.cjs.js",document.baseURI).href}<"u"&&void 0||"",ua="https://deep-index.moralis.io/api/v2.2";function Ln(e,n){const s=e.chainTokens?Object.keys(e.chainTokens):[],o=[];for(const r of s){const a=Pn(r);if(!a||a.chainId!==n)continue;const i=a.address;o.some(c=>m.addressesEqual(c,i))||o.push(i)}return io(o.map(r=>{const a=z.getTokenByAddress(r,n);return{address:r,symbol:a?.symbol,name:a?.name,equivalenceGroup:a?.equivalenceGroup}}),[e.receiptTokenName,e.displaySymbol,e.symbol,e.displayName,e.name],e.chainId===n&&!e.isUniversal?e.address:void 0).map(r=>r.address)}async function pa(e,n){const s=m.getClientForChain(e);return z.isNativeToken(n)?s.getBalance({address:z.ESCROW_ADDRESS}):await s.readContract({address:n,abi:U.erc20Abi,functionName:"balanceOf",args:[z.ESCROW_ADDRESS]})}function co(e,n,s){const o=z.getTokensForChain(s),r=o.find(i=>m.addressesEqual(i.address,e));if(r)return r;const a=z.getTokenByAddress(e,n);if(a)return io(o.filter(i=>i.equivalenceGroup===a.equivalenceGroup),[a.symbol,a.name,a.equivalenceGroup])[0]}function _t(e,n){if(e.chainId===n)return e.address;const s=co(e.address,e.chainId,n);return s?s.address:null}async function uo(e,n,s={}){const o=_t(e,n),r=Ln(e,n);if(r.length===0)return o;if(r.length===1)return r[0];const a=s.requiredAmount??0n,i=d=>{const u=r.map(h=>({candidate:h,balance:d.get(z.isNativeToken(h)?"native":h.toLowerCase())??0n})).filter(h=>h.balance>0n).sort((h,p)=>h.balance===p.balance?0:h.balance>p.balance?-1:1);return u.length===0?null:((a>0n?u.find(h=>h.balance>=a):u[0])??u[0]).candidate},c=m.getChainsForAssets()[n];if(c?.moralisName&&lo){const d=new Map,u=r.some(h=>z.isNativeToken(h));try{if(u)try{const p=m.getClientForChain(n);d.set("native",await p.getBalance({address:z.ESCROW_ADDRESS}))}catch{}const h=await fetch(`${ua}/wallets/${z.ESCROW_ADDRESS}/tokens?chain=${c.moralisName}`,{headers:{"X-API-Key":lo}});if(h.ok){const p=await h.json();for(const f of p?.result||[]){const x=String(f.token_address||"").toLowerCase();if(x)try{d.set(x,BigInt(String(f.balance||"0")))}catch{}}const g=i(d);if(g)return g}}catch{}}try{const d=await Promise.all(r.map(async p=>({key:z.isNativeToken(p)?"native":p.toLowerCase(),value:await pa(n,p)}))),u=new Map(d.map(({key:p,value:g})=>[p,g])),h=i(u);if(h)return h}catch{}return o}function gs(e,n,s,o){const r=z.getTokenByAddress(e,n),a=z.getTokenByAddress(s,o);return r&&a?r.equivalenceGroup===a.equivalenceGroup:z.areEquivalent(e,s)}function On(e,n){return gs(e.address,e.chainId,n.address,n.chainId)}const fa={usdc:[8453,1,42161,5115,4114],usdt:[1],wbtc:[1],weth:[8453,1],ctusd:[5115,4114],wcbtc:[5115,4114]};function Hn(e){return e.replace(/^test\s+/i,"").replace(/^spice/i,"").trim()}function en(e){return Hn(e).toLowerCase()}function ha(e,n){const s=new Set([n,Hn(n),en(n)].map(o=>en(o)).filter(Boolean));return[...e].sort((o,r)=>{const a=en(o.symbol),i=en(r.symbol),c=en(o.name),d=en(r.name),u=s.has(a)?0:s.has(c)?1:2,h=s.has(i)?0:s.has(d)?1:2;return u!==h?u-h:o.address.toLowerCase().localeCompare(r.address.toLowerCase())})[0]}function ma(e){const n=e&&e.length>0?e:Object.keys(m.CHAIN_CONFIGS).map(Number).filter(Number.isFinite),s=new Map;for(const o of n){const r=m.getChainConfig(o);if(!r)continue;const a=`${o}:${z.ZERO_ADDRESS.toLowerCase()}`;s.has(a)||s.set(a,{address:z.ZERO_ADDRESS,chainId:o,symbol:r.nativeCurrency.symbol,name:r.nativeCurrency.name,decimals:r.nativeCurrency.decimals,isNative:!0,logoURI:r.logo});for(const i of r.supportedTokens??[]){const c=i.address.toLowerCase(),d=`${o}:${c}`;s.has(d)||s.set(d,{address:c,chainId:o,symbol:i.symbol,name:i.name,decimals:i.decimals,isNative:z.isNativeToken(c),logoURI:i.logo})}}return s}function ga(e,n){const s=ma(n),o=Hn(e.tokenName),r=en(e.tokenName),a=Array.isArray(e.chainTokens)?e.chainTokens.map(f=>[f,void 0]):Object.entries(e.chainTokens??{}),i=a.map(([f])=>Pn(f)).filter(f=>f!==null),c=new Map(a.map(([f,x])=>[f,x])),d=(f,x)=>{const b=c.get(`evm:${x.chainId}:${x.address.slice(2).toLowerCase()}`);return{...f,name:typeof b?.name=="string"&&b.name.length>0?b.name:f.name,decimals:typeof b?.decimals=="number"?b.decimals:f.decimals}},u=i.map(f=>{const x=s.get(`${f.chainId}:${f.address.toLowerCase()}`);return x?d(x,f):void 0}).filter(f=>f!==void 0),h=fa[r]??[];if(h.length>0)for(const f of h){const x=u.find(b=>b.chainId===f);if(x)return x}if(u.length>0)return ha(u,e.tokenName);const p=Array.from(s.values()).filter(f=>en(f.symbol)===r||en(f.name)===r);if(h.length>0)for(const f of h){const x=p.find(b=>b.chainId===f);if(x)return x}if(p.length>0)return p[0];const g=i[0];if(g){const f=c.get(`evm:${g.chainId}:${g.address.slice(2).toLowerCase()}`);return{address:g.address,chainId:g.chainId,symbol:o||e.tokenName,name:typeof f?.name=="string"&&f.name.length>0?f.name:o||e.tokenName,decimals:typeof f?.decimals=="number"?f.decimals:e.decimals??18,isNative:z.isNativeToken(g.address),logoURI:void 0}}}function xa(e,n){let s;try{s=BigInt(e.balanceAvailable||"0")}catch{return null}if(s<=0n)return null;const o=ga(e,n),r=o?.decimals??e.decimals??18,a=e.decimals??r,i=o?.address??z.ZERO_ADDRESS,c=o?.chainId??0,d=Hn(e.tokenName),u=o?.symbol??d,h=o?.name??d,p=parseFloat(U.formatUnits(s,a)),g=typeof e.balanceUsd=="number"?e.balanceUsd:typeof e.balanceUsd=="string"&&Number(e.balanceUsd)||0;return{address:i,symbol:u,name:h,decimals:r,chainId:c,balance:s,balanceFormatted:p,balanceUsd:g,isNative:o?.isNative??z.isNativeToken(i),logoURI:o?.logoURI,displaySymbol:e.tokenName||u,displayName:e.tokenName||h,displayChainName:"Spicenet",receiptTokenId:e.receiptToken,receiptTokenName:e.tokenName||h,receiptTokenDecimals:a,chainTokens:e.chainTokens&&!Array.isArray(e.chainTokens)?e.chainTokens:void 0,isUniversal:!0}}const An=({address:e,supportedChains:n,enabled:s=!0,refetchInterval:o})=>{const r=l.useContext(m.SpiceFlowProviderContext)?.apiUrl||m.RELAYER_API_URL,[a,i]=l.useState([]),[c,d]=l.useState(!1),[u,h]=l.useState(null),[p,g]=l.useState(!1),f=l.useRef(!1),x=l.useRef(!1),b=n?JSON.stringify([...n].sort()):"",y=l.useCallback(async(I=!1)=>{if(!e||!s){i([]),g(!1),f.current=!1;return}if(!x.current){x.current=!0,!f.current&&!I&&d(!0),h(null);try{const v=await fetch(`${r}/wallets/${e}/balance`,{cache:"no-store"});if(!v.ok)throw new Error(`Failed to fetch balance: ${v.status}`);const S=await v.json();if(S.balances&&Array.isArray(S.balances)){const w=S.balances.map(A=>xa({receiptToken:typeof A.receiptToken=="string"?A.receiptToken:void 0,tokenName:String(A.tokenName??""),balanceAvailable:String(A.balanceAvailable??"0"),chainTokens:Array.isArray(A.chainTokens)?A.chainTokens.filter(j=>typeof j=="string"):A.chainTokens&&typeof A.chainTokens=="object"?A.chainTokens:void 0,decimals:typeof A.decimals=="number"?A.decimals:void 0,balanceUsd:typeof A.balanceUsd=="number"||typeof A.balanceUsd=="string"?A.balanceUsd:null},n)).filter(A=>A!==null);i(w),g(w.length>0),f.current=!0}else i([]),g(!1)}catch(v){const S=v instanceof Error?v.message:"Failed to fetch balance";h(S),console.error("Error fetching Spice assets:",v),f.current||(i([]),g(!1))}finally{d(!1),x.current=!1}}},[e,s,b,r]);l.useEffect(()=>{s&&e&&(f.current=!1,y(!1))},[e,s,b]),l.useEffect(()=>{if(!s||!e||!o)return;const I=setInterval(()=>{y(!0)},o);return()=>clearInterval(I)},[e,s,o,b]);const C=l.useCallback(I=>a.filter(v=>v.chainId===I),[a]),k=l.useCallback(async()=>{await y(!0)},[y]);return{assets:a,loading:c,error:u,hasBalance:p,refetch:k,getAssetsByChain:C}},ya=e=>new Promise(n=>setTimeout(n,e)),Ca=350,ba=1e3;function En(e){return z.isSpicenetChainId(e.chainId)}function wa({chainBatches:e,tokenAddress:n,tokenTransferAmount:s,useCustomTransfers:o}){if(!(e.some(En)||!(o?e.some(r=>En(r)?!1:(r.tokenTransfers??[]).some(a=>a.from==="escrow"&&BigInt(a.amount??0)>0n)):s>0n)))throw new m.SpiceflowError("INVALID_PARAMS","Payouts funded from Spice balance require a Spicenet funding batch before the destination chain batch. Deposits into Spice balance and gas-only actions do not need one.",{tokenAddress:n,tokenTransferAmount:s.toString(),useCustomTransfers:!!o})}function va(e,n,s,o){n.forEach((r,a)=>{if(!r.to||!r.from||!r.token||r.amount===void 0)throw new m.SpiceflowError("INVALID_TOKEN_TRANSFER",`tokenTransfers[${a}] on chain ${e} is missing required fields (to/from/token/amount). This usually means the embedded wallet wasn't ready when the intent was built \u2014 please retry.`,{chainId:e,transferIndex:a,transfer:{from:r.from,to:r.to,token:r.token,amount:r.amount?.toString()},signingAddress:s,useCustomTransfers:o})})}function po({user:e,chainBatches:n,tokenAddress:s,tokenTransferAmount:o,exp:r,signature:a,chainAuthorizations:i,useCustomTransfers:c}){const d=z.hashChainBatches(n),u=n.filter(h=>!En(h)).length;if(wa({chainBatches:n,tokenAddress:s,tokenTransferAmount:o,useCustomTransfers:c}),!c&&o>0n&&u>1)throw new m.SpiceflowError("INVALID_PARAMS","Multiple non-Spicenet batches require explicit tokenTransfers. Pass useCustomTransfers with per-batch transfers instead of relying on the default escrow payout injection.",{nonSpicenetBatchCount:u,tokenAddress:s,tokenTransferAmount:o.toString()});return{user:e,...i?{chainAuthorizations:i}:{},intents:[{mode:"7702",signatureType:"ecdsa",signature:a,nbf:0,exp:r,chainBatches:d.map((h,p)=>{const g=n[p],f=En(g)?[]:c?g.tokenTransfers??[]:o>0n?[{from:"escrow",to:e,token:s,amount:o}]:[];return va(Number(h.chainId),f,e,c),{hash:h.hash,chainId:Number(h.chainId),tokenTransfers:f,calls:h.calls}})}]}}let xs=!1;function Qn(){const{address:e,isConnected:n,isAuthenticated:s,actions:o}=qt(),[r,a]=l.useState(null),i=l.useRef(o),c=l.useRef(new Map);i.current=o;const d=l.useCallback(async(p,g,f)=>{const x=[...new Set(p.filter(C=>!En(C)).map(C=>C.chainId))],b=await Promise.all(x.map(async C=>{const k=m.getClientForChain(C),I=m.getDelegateContractAddress(C),v=Number(await z.getAccountNonce(g,k)),S=[g.toLowerCase(),C,I.toLowerCase(),v].join(":");return{chainId:C,delegateContract:I,nonce:v,cacheKey:S,cached:c.current.get(S)}})),y=[];for(const{chainId:C,delegateContract:k,nonce:I,cacheKey:v,cached:S}of b){if(S){y.push(S);continue}if(f?.aborted)throw new m.SpiceflowError("ABORT","Gasless transaction aborted");const w=await i.current.signAuthorization({contractAddress:k,chainId:C,nonce:I}),A={r:w.r,s:w.s,yParity:w.yParity,address:w.address??k,chainId:Number(w.chainId??C),nonce:Number(w.nonce??I)};c.current.set(v,A),y.push(A)}return y},[]),u=l.useCallback(async(p,g,f,x,b,y)=>{const C=(k,I,v)=>{x?.({step:k,message:I,...v})};if(xs)throw new m.SpiceflowError("CONCURRENT_EXECUTION","A gasless transaction is already in progress. Please wait.");xs=!0;try{if(!e)throw new m.SpiceflowError("WALLET_DISCONNECTED","No wallet connected. Please log in first.");const k=y?.userOverride||e;if(y?.depositToEscrow){const{token:O,amount:q}=y.depositToEscrow,X=U.encodeFunctionData({abi:m.z,functionName:"transfer",args:[z.ESCROW_ADDRESS,q]}),D=p[p.length-1];D.calls=[...D.calls,{to:O,value:0n,data:X}]}C("signing-delegation","Sign delegation in your wallet...");const I=await d(p,k,b);if(b?.aborted)throw new m.SpiceflowError("ABORT","Gasless transaction aborted");C("signing-intent","Sign the intent in your wallet...");const v=BigInt(Math.floor(Date.now()/1e3)+3600),S=z.hashChainBatches(p).map(O=>O.hash),w=U.keccak256(U.encodeAbiParameters([{type:"string"},{type:"uint256"},{type:"uint256"},{type:"bytes32[]"}],["ecdsa",0n,v,S])),A=await i.current.signMessage({raw:w}),j=typeof A=="string"?A:A.signature;if(!j)throw new m.SpiceflowError("SIGNATURE_FAILED","Failed to sign intent authorization. The wallet returned an empty signature.");if(b?.aborted)throw new m.SpiceflowError("ABORT","Gasless transaction aborted");C("submitting","Submitting to relayer...");const E=po({user:k,chainBatches:p,tokenAddress:g,tokenTransferAmount:f,exp:Number(v),signature:j,chainAuthorizations:I,useCustomTransfers:y?.useCustomTransfers}),M=await m.relayerService.estimateActionFees(E);a(M);const B=await m.relayerService.createAction(E),[R,F]=B.intentIds[0].split("/"),T=parseInt(F||"0",10),N=`${R}/${T}`;C("executing","Executing on chain..."),C("executing","Executing on chain...",{actionId:R,intentId:N,intentIndex:T,totalSteps:p.length});const L=p.length;let W;const Q=async O=>{let q="pending",X,D=0;const H=3,G=5,se=()=>{D++,m.relayerService.executeStep(R,T,O,{action:"execute"}).then(V=>{V.transactionHash&&(X=V.transactionHash)}).catch(V=>{console.warn(`[GaslessExecution] executeStep ${O} attempt ${D} error (will poll):`,V.message)})};se();let ee=0;const pe=120;for(;q!=="success"&&q!=="completed"&&ee<pe;){if(await ya(ee===0?Ca:ba),ee++,b?.aborted)throw new m.SpiceflowError("ABORT","Gasless transaction aborted");let V;try{V=await m.relayerService.checkStepStatus(N,O)}catch(fe){if(fe.name==="AbortError"||fe instanceof m.SpiceflowError&&fe.code==="ABORT")throw fe;console.warn(`[GaslessExecution] Poll step ${O} attempt ${ee} error:`,fe.message);continue}q=V.data.status;const ye=V.data.transactionHash;if(ye&&(X=ye),q==="created"&&ee>=D*G&&D<H&&se(),q==="reverted"||q==="error")throw new m.SpiceflowError("ON_CHAIN_REVERT",`Transaction ${q}. The transaction was rejected on-chain. This may be due to insufficient balance, price changes, or health factor constraints. Please verify your positions and try again.`,{status:q,txHash:X,actionId:R,intentId:N,stepId:O,chainId:p[O]?.chainId});let $="Waiting for solver...";q==="executing"?$="Transaction executing...":q==="submitted"?$="Transaction submitted...":q==="created"&&($="Waiting for relayer..."),C("executing",$,{txHash:X,actionId:R,intentId:N,intentIndex:T,totalSteps:L})}if(q!=="success"&&q!=="completed")throw new m.SpiceflowError("POLLING_EXHAUSTED",`Transaction is still processing (status: ${q}). This doesn't mean it failed \u2014 the solver may still complete it. Check your positions in a few minutes, or try refreshing the page.`,{actionId:R,intentId:N,stepId:O,lastStatus:q,pollAttempts:ee,maxPolls:pe,txHash:X});X&&(W=X)};for(let O=0;O<L;O++)await Q(O);return C("success","Transaction successful!",{txHash:W,actionId:R,intentId:N,intentIndex:T,totalSteps:L}),W||R}catch(k){throw console.error("[GaslessExecution] Error:",k),C("error",k.message||"Transaction failed",{error:k.message}),k}finally{xs=!1}},[e,s,d]),h=l.useCallback(async(p,g,f,x)=>{if(!e)throw new m.SpiceflowError("WALLET_DISCONNECTED","No wallet connected. Please log in first.");const b=p.map((v,S)=>{const w={...v,calls:[...v.calls]};if(x?.depositToEscrow&&S===p.length-1){const A=U.encodeFunctionData({abi:m.z,functionName:"transfer",args:[z.ESCROW_ADDRESS,x.depositToEscrow.amount]});w.calls=[...w.calls,{to:x.depositToEscrow.token,value:0n,data:A}]}return w}),y=x?.userOverride||e,C=x?.signAuthorizationsForEstimate?await d(b,y):void 0,k=po({user:y,chainBatches:b,tokenAddress:g,tokenTransferAmount:f,exp:Math.floor(Date.now()/1e3)+3600,signature:"0x00",chainAuthorizations:C,useCustomTransfers:x?.useCustomTransfers}),I=await m.relayerService.estimateActionFees(k);return a(I),I},[e,d]);return{executeGasless:u,estimateGasless:h,lastFeeEstimate:r,hasEmbeddedWallet:n&&s}}function gn(e){const n=BigInt(e.feeBreakdown.spicenetFee),s=BigInt(e.feeBreakdown.gasFee),o=BigInt(e.feeBreakdown.bridgeFee??"0"),r=n+s+o;return{spicenetFee:n,gasFee:s,bridgeFee:o,totalFee:r}}function ys(e){const n=BigInt(e.quotedAmount),s=BigInt(e.totalDebit),{totalFee:o}=gn(e);return n>0n||s>0n||o>0n}function fo(e){const n=BigInt(e.quotedAmount),s=BigInt(e.totalDebit),{totalFee:o}=gn(e),r=n+o;return s>r?s:r}function ka(e){const n=[];for(const s of e.intents)for(const o of s.batches)n.push(BigInt(o.quotedAmount));return n.length!==1?null:n[0]}function ho(e,n){const s=e.intents.flatMap(d=>d.batches).filter(ys);if(s.length===0||s.length>1)return null;const o=s[0],{gasFee:r,spicenetFee:a,bridgeFee:i,totalFee:c}=gn(o);return{symbol:n.symbol,decimals:n.decimals,grossAmount:BigInt(o.totalDebit),netAmount:BigInt(o.quotedAmount),totalFee:c,spicenetFee:a,gasFee:r,bridgeFee:i,gasQuoteSource:o.gasQuoteSource}}function xn(e,n){const s=e.intents.flatMap(h=>h.batches).filter(ys);if(s.length===0)return null;const o=s.filter(h=>h.chainId===n.chainId),r=o.length>0?o:s;if(r.length>1)return null;const a=r[0],{gasFee:i,spicenetFee:c,bridgeFee:d,totalFee:u}=gn(a);return{chainId:a.chainId,tokenAddress:n.tokenAddress,symbol:n.symbol,decimals:n.decimals,grossAmount:fo(a),netAmount:BigInt(a.quotedAmount),totalFee:u,gasFee:i,spicenetFee:c,bridgeFee:d,gasQuoteSource:a.gasQuoteSource}}const Sa={usdc:1,"usdc.e":1,usdt:1,dai:1,ctusd:1,wbtc:1e5,wcbtc:1e5,cbtc:1e5};function Cs(e,n){return U.formatUnits(e,n).replace(/(\.\d*?[1-9])0+$|\.0+$/,"$1")}function mo(e,n,s){return n===s?e:n<s?e*10n**BigInt(s-n):e/10n**BigInt(n-s)}function go(e,n){const s=n?Sa[n.trim().toLowerCase()]??0:0,o=e*s;return o<=0?"$0":o>=1?`$${o.toFixed(3).replace(/0+$/,"").replace(/\.$/,"")}`:`$${o.toFixed(4).replace(/0+$/,"").replace(/\.$/,"")}`}function Ia(e,n){const s=e.intents.flatMap(i=>i.batches).filter(ys);if(s.length===0)return null;const o=s.filter(i=>i.chainId===n),r=o.length>0?o:s;if(r.length>1)return null;const a=r[0];return fo(a)}async function xo(e){const{computedWithdrawBatches:n,walletAddress:s,recipientAddress:o,selectedDestToken:r,selectedChainId:a,amount:i,receiveAmountRaw:c,gasFee:d,isNon7702:u,onWithdrawExecute:h,onWithdrawSuccess:p,onWithdrawError:g,buildSpicenetBatch:f,buildWithdrawBatches:x,estimateGasless:b,executeGasless:y,setIsExecuting:C,setExecutionError:k,setExecutionProgress:I,setLockedGasFee:v,executionContextRef:S}=e;if(!(n.length===0||!s||!o)){C(!0),k(null),I(null),S.current=null,v(d);try{let w=n;if(u&&h)await h(i);else{if(!u&&!w.some(F=>z.isSpicenetChainId(F.chainId)))throw new Error("Spice withdrawals must include a Spicenet funding batch before the destination chain batch.");const A=r?.address||"",j={useCustomTransfers:!0},E=await b(w,A,0n,j);let M=E;const B=a!==null?Ia(E,a):null;f&&B!==null&&B!==c&&(w=x(B),M=await b(w,A,0n,j));const R=M.intents[0]?.batches[0]??null;R&&v(gn(R).totalFee),await y(w,A,0n,F=>{F.actionId&&F.intentId&&typeof F.intentIndex=="number"&&typeof F.totalSteps=="number"&&(S.current={actionId:F.actionId,intentId:F.intentId,intentIndex:F.intentIndex,totalSteps:F.totalSteps}),I(F)},void 0,j)}window.dispatchEvent(new CustomEvent("withdraw-completed")),p?.({token:r?.symbol||"",amount:i,chainId:a})}catch(w){const A=w instanceof Error?w.message:"Withdraw failed";k(A),g?.(A)}finally{C(!1)}}}async function Aa(e){const{selectedDestToken:n,selectedChainId:s,amount:o,onWithdrawSuccess:r,onWithdrawError:a,setIsExecuting:i,setExecutionError:c,setExecutionProgress:d,executionContextRef:u,isMountedRef:h}=e,p=u.current;if(!p){d(null),await xo(e);return}i(!0),c(null),d({step:"executing",message:"Resuming existing action...",actionId:p.actionId,intentId:p.intentId,intentIndex:p.intentIndex,totalSteps:p.totalSteps});try{let g=p.totalSteps;for(let f=0;f<p.totalSteps;f++)if((await m.relayerService.checkStepStatus(p.intentId,f)).data.status!=="success"){g=f;break}if(g>=p.totalSteps)d(f=>({...f||{step:"success",message:"Transaction successful!",actionId:p.actionId,intentId:p.intentId,intentIndex:p.intentIndex,totalSteps:p.totalSteps},step:"success",message:"Transaction successful!"}));else for(let f=g;f<p.totalSteps;f++){let x="pending",b;try{const y=await m.relayerService.executeStep(p.actionId,p.intentIndex,f,{action:"execute"});y.transactionHash&&(b=y.transactionHash)}catch{}for(let y=0;y<120;y++){if(await new Promise(k=>setTimeout(k,Math.min(1e3+y*1e3,5e3))),!h.current)return;const C=await m.relayerService.checkStepStatus(p.intentId,f);if(!h.current)return;if(x=C.data.status,C.data.transactionHash&&(b=C.data.transactionHash),x==="success"){d({step:f===p.totalSteps-1?"success":"executing",message:f===p.totalSteps-1?"Transaction successful!":"Executing remaining steps...",txHash:b,actionId:p.actionId,intentId:p.intentId,intentIndex:p.intentIndex,totalSteps:p.totalSteps});break}if(x==="reverted"||x==="error")throw new Error("Withdraw failed");d({step:"executing",message:"Executing remaining steps...",txHash:b,actionId:p.actionId,intentId:p.intentId,intentIndex:p.intentIndex,totalSteps:p.totalSteps})}if(!h.current)return;if(x!=="success")throw new Error("Withdraw is still processing")}window.dispatchEvent(new CustomEvent("withdraw-completed")),r?.({token:n?.symbol||"",amount:o,chainId:s})}catch(g){const f=g instanceof Error?g.message:"Withdraw failed";c(f),a?.(f)}finally{i(!1)}}const yo='"IBM Plex Mono", monospace',Co='"Helvetica Neue", Arial, sans-serif',Ea=({show:e,position:n,popoverRef:s,spiceAssets:o,dark:r,dk:a})=>{if(!e||!n)return null;const i=r?a.textSecondary:"#71757A",c=r?a.textPrimary:"#0E0D0B",d=o||[];return t.jsxs("div",{ref:s,"data-balance-popover":!0,style:{position:"fixed",top:`${n.top}px`,left:`${n.left}px`,width:"220px",background:r?a.cardBg:"#FFFFFF",border:`1px solid ${r?a.cardBorder:"#D6D6D6"}`,borderRadius:"10px",boxShadow:r?"0 12px 32px rgba(0,0,0,0.32)":"0 12px 28px rgba(15, 23, 42, 0.14)",padding:"10px",zIndex:40},children:[t.jsx("div",{style:{fontFamily:yo,fontSize:"11px",letterSpacing:"0.05em",color:i,marginBottom:"8px"},children:"ALL BALANCES"}),t.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:d.length>0?d.map(u=>{const h=u.displaySymbol||u.receiptTokenName||u.symbol;return t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:"10px",padding:"6px 0"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",minWidth:0},children:[u.logoURI?t.jsx("img",{src:u.logoURI,alt:h,style:{width:"18px",height:"18px",borderRadius:"50%",flexShrink:0}}):t.jsx("div",{style:{width:"18px",height:"18px",borderRadius:"50%",border:`1px solid ${r?a.cardBorder:"#C8C8C8"}`,flexShrink:0}}),t.jsx("span",{style:{fontFamily:Co,fontSize:"13px",color:c,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:h})]}),t.jsx("span",{style:{fontFamily:yo,fontSize:"12px",color:c,flexShrink:0},children:rn(u.balanceFormatted)})]},u.receiptTokenId||u.address)}):t.jsx("span",{style:{fontFamily:Co,fontSize:"13px",color:i},children:"No balances"})})]})},ja='"Helvetica Neue", Arial, sans-serif',dn='"IBM Plex Mono", monospace',Ba=({show:e,onToggle:n,showCustomAddress:s,setShowCustomAddress:o,customRecipient:r,setCustomRecipient:a,externalAddress:i,recipientAddress:c,destChainName:d,destChainLogo:u,compatibleDestinationChains:h,txDetailsChainSwitchRef:p,onOpenNetworkPopover:g,sourceChainLabel:f,sourceDetailsLogo:x,sourceTokenLabel:b,amount:y,totalSourceDebitDisplay:C,receiveAmountDisplay:k,destTokenSymbol:I,shouldQuoteWithdrawGas:v,estimatingFee:S,feeError:w,displayedGasFee:A,selectedDestToken:j,theme:E,styles:M,dark:B,dk:R})=>{const F=B?R.textSecondary:"#71757A",T=B?R.textPrimary:"#0E0D0B",N=h.length>1,L=s&&r?U.isAddress(r)?`${r.slice(0,6)}...${r.slice(-4)}`:r:c?`${c.slice(0,6)}...${c.slice(-4)}`:"\u2014";return t.jsxs(t.Fragment,{children:[t.jsxs("div",{onClick:n,style:{display:"flex",alignItems:"center",gap:"6px",marginBottom:e?"10px":"0",cursor:"pointer",userSelect:"none"},children:[t.jsx("span",{style:{fontSize:"13px",color:F,fontFamily:ja,fontWeight:600},children:"Transaction Details"}),t.jsx(Xn.ChevronDown,{size:12,color:F,style:{transform:e?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.2s"}})]}),e&&t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"7px"},children:[t.jsxs("div",{children:[t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontSize:"12px",color:F,fontFamily:dn,fontWeight:500,letterSpacing:"0.03em"},children:"TO"}),t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[t.jsx("span",{style:{fontSize:"13px",color:T,fontFamily:dn,fontWeight:500},children:L}),t.jsx("button",{onClick:()=>{o(W=>!W),!s&&i&&a(i)},style:{background:"none",border:"none",cursor:"pointer",padding:"0",fontSize:"9.5px",fontFamily:dn,color:F,textDecoration:"underline",fontWeight:600},children:s?"Reset":"Switch"})]})]}),s&&t.jsxs("div",{style:{marginTop:"6px"},children:[t.jsx("input",{type:"text",autoComplete:"off",spellCheck:!1,"aria-label":"Recipient address","aria-invalid":r&&!U.isAddress(r)?!0:void 0,"data-spiceflow-focus":!0,value:r,onChange:W=>a(W.target.value),placeholder:"0x...",style:{width:"100%",padding:"8px 10px",borderRadius:"6px",border:`1px solid ${r&&!U.isAddress(r)?B?R.errorBorder:"#fca5a5":B?R.inputBorder:"#d1d5db"}`,backgroundColor:B?R.inputBg:"#f9fafb",color:B?R.inputText:"#111827",fontSize:"12px",fontFamily:dn,outline:"none",boxSizing:"border-box"}}),r&&!U.isAddress(r)&&t.jsx("span",{style:{fontSize:"11px",color:R.errorText,marginTop:"3px",display:"block"},children:"Invalid address"})]})]}),t.jsx(mn,{palette:R,labelColor:F,valueColor:T,label:"RECEIVING CHAIN",value:t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"7px"},children:[u&&t.jsx("img",{src:u,alt:d,style:{width:"14px",height:"14px",borderRadius:"50%"}}),t.jsx("span",{style:{fontSize:"13px",color:T,fontWeight:500,fontFamily:dn,textTransform:"uppercase"},children:d}),t.jsx("button",{ref:p,onClick:W=>{W.stopPropagation(),g(p.current)},style:{background:"none",border:"none",cursor:N?"pointer":"not-allowed",padding:"0",fontSize:"9.5px",fontFamily:dn,color:F,textDecoration:"underline",fontWeight:600,opacity:N?1:.45},children:"Switch"})]})}),t.jsx(mn,{palette:R,labelColor:F,valueColor:T,label:"REQUESTED WITHDRAWAL",value:t.jsxs(bs,{logo:x||null,alt:f,primaryText:T,children:[y||"0"," ",b]})}),v&&t.jsx(mn,{palette:R,labelColor:F,valueColor:T,label:"TOTAL SOURCE DEBIT",value:t.jsxs(bs,{logo:x||null,alt:f,primaryText:T,children:[C," ",b]})}),t.jsx(mn,{palette:R,labelColor:F,valueColor:T,label:"YOU RECEIVE",value:t.jsxs(bs,{logo:u,alt:d,primaryText:T,gap:"4px",children:[k," ",I]})}),v&&t.jsxs(t.Fragment,{children:[t.jsx(mn,{palette:R,labelColor:F,label:"EST. GAS FEE",valueColor:w?"#f87171":T,value:S?"Estimating...":w?"Unavailable":A!==null&&j?`${Cs(A,j.decimals)} ${j.symbol}`:"Estimating..."}),w&&t.jsx(hn,{variant:"error",size:"compact",palette:R,fontFamily:M?.fontFamily||E.typography.fontFamily,children:w})]})]})]})},bs=({logo:e,alt:n,primaryText:s,gap:o="6px",children:r})=>t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:o},children:[e&&t.jsx("img",{src:e,alt:n,style:{width:"13px",height:"13px",borderRadius:"50%"}}),t.jsx("span",{style:{fontSize:"13px",color:s,fontWeight:500,fontFamily:dn},children:r})]});function bo(e){const n=new Set(z.getEquivalentAddresses(e).map(s=>s.toLowerCase()));return n.add(e.toLowerCase()),n}const Fa=["USDC","USDT","WETH","WBTC"];function ws(e,n){const s=m.getChainConfig(n);if(!s)return;if(s.nativeCurrency.symbol.toUpperCase()===e.toUpperCase())return{address:z.ZERO_ADDRESS,symbol:s.nativeCurrency.symbol,decimals:s.nativeCurrency.decimals,chainId:n};const o=s.supportedTokens?.find(r=>r.symbol.toUpperCase()===e.toUpperCase());if(o)return{address:o.address.toLowerCase(),symbol:o.symbol,decimals:o.decimals,chainId:n}}function tn(e,n,s){const o=m.getChainConfig(n);if(!o)return;if(s!==void 0){const i=co(e,s,n);if(i)return{address:i.address.toLowerCase(),symbol:i.symbol,decimals:i.decimals,chainId:n}}const r=bo(e);if([...r].some(i=>z.isNativeToken(i)))return{address:z.ZERO_ADDRESS,symbol:o.nativeCurrency.symbol,decimals:o.nativeCurrency.decimals,chainId:n};const a=o.supportedTokens?.find(i=>r.has(i.address.toLowerCase()));if(a)return{address:a.address.toLowerCase(),symbol:a.symbol,decimals:a.decimals,chainId:n}}function wo(e){const{sourceAsset:n,outputAsset:s,sourceChainId:o,destinationChainId:r,intermediaryCandidates:a=Fa}=e;if(On(n,s))return{strategy:"direct",sourceAsset:n,outputAsset:s,sourceChainId:o,destinationChainId:r,summary:`${n.symbol} fronted directly`};if(tn(n.address,r,o))return{strategy:"direct",sourceAsset:n,outputAsset:s,sourceChainId:o,destinationChainId:r,summary:`${n.symbol} fronted on destination, swapped to ${s.symbol}`};if(tn(s.address,o,r))return{strategy:"source-swap",sourceAsset:n,outputAsset:s,sourceChainId:o,destinationChainId:r,summary:`${n.symbol} \u2192 ${s.symbol} on source chain, then fronted`};for(const i of a){const c=ws(i,o);if(!c||On(n,c)||On(s,c))continue;const d=ws(i,r);if(d&&On(c,d))return{strategy:"intermediary",sourceAsset:n,outputAsset:s,intermediaryAsset:d,sourceChainId:o,destinationChainId:r,summary:`${n.symbol} \u2192 ${i} on source, fronted, then ${i} \u2192 ${s.symbol} on destination`}}throw new m.SpiceflowError("ROUTE_STRATEGY_ERROR",`No viable cross-chain route found from ${n.symbol} (chain ${o}) to ${s.symbol} (chain ${r}). No intermediary asset is available on both chains.`,{sourceAsset:n.symbol,outputAsset:s.symbol,sourceChainId:o,destinationChainId:r,candidatesChecked:a})}async function vo(e){const{route:n,sourceAmount:s,userAddress:o,registry:r,actionCalls:a,slippage:i}=e;async function c(d,u,h,p){const g=r.getVenueForChain(d);if(!g)throw new m.SpiceflowError("NO_VENUE_FOR_CHAIN",`No liquidity venue configured for chain ${d}. Cannot resolve swap ${u} \u2192 ${h}.`,{chainId:d,tokenIn:u,tokenOut:h,amountIn:p.toString()});const f=await g.resolve({type:"swap",tokenIn:u,tokenOut:h,amountIn:p,maxSlippage:i},d,o);if(!f)throw new m.SpiceflowError("NO_LIQUIDITY",`${g.name} returned no quote for ${u} \u2192 ${h} on chain ${d}. No liquidity available for this pair.`,{venue:g.name,chainId:d,tokenIn:u,tokenOut:h,amountIn:p.toString()});return f}switch(n.strategy){case"direct":{const d=tn(n.sourceAsset.address,n.destinationChainId,n.sourceChainId)||n.sourceAsset;if(bo(d.address).has(n.outputAsset.address.toLowerCase()))return{chainBatches:[{chainId:n.destinationChainId,calls:a}],solverFrontToken:d,solverFrontAmount:s,resolvedSwaps:{}};const u=await c(n.destinationChainId,d.address,n.outputAsset.address,s);return{chainBatches:[{chainId:n.destinationChainId,calls:[...u.calls,...a]}],solverFrontToken:d,solverFrontAmount:s,resolvedSwaps:{destinationSwap:u}}}case"source-swap":{const d=tn(n.outputAsset.address,n.sourceChainId,n.destinationChainId);if(!d)throw new m.SpiceflowError("ROUTE_TOKEN_NOT_FOUND",`Output asset ${n.outputAsset.symbol} (${n.outputAsset.address}) not found on source chain ${n.sourceChainId}`,{token:n.outputAsset.symbol,address:n.outputAsset.address,chainId:n.sourceChainId,side:"source"});const u=tn(n.outputAsset.address,n.destinationChainId,n.destinationChainId);if(!u)throw new m.SpiceflowError("ROUTE_TOKEN_NOT_FOUND",`Output asset ${n.outputAsset.symbol} (${n.outputAsset.address}) not found on destination chain ${n.destinationChainId}`,{token:n.outputAsset.symbol,address:n.outputAsset.address,chainId:n.destinationChainId,side:"destination"});const h=await c(n.sourceChainId,n.sourceAsset.address,d.address,s);return{chainBatches:[{chainId:n.sourceChainId,calls:h.calls},{chainId:n.destinationChainId,calls:a}],solverFrontToken:u,solverFrontAmount:h.amountOutMinimum,resolvedSwaps:{sourceSwap:h}}}case"intermediary":{if(!n.intermediaryAsset)throw new m.SpiceflowError("ROUTE_STRATEGY_ERROR","Intermediary strategy requires an intermediary asset but none was provided in the route plan.",{strategy:n.strategy});const d=tn(n.intermediaryAsset.address,n.sourceChainId,n.destinationChainId);if(!d)throw new m.SpiceflowError("ROUTE_TOKEN_NOT_FOUND",`Intermediary ${n.intermediaryAsset.symbol} (${n.intermediaryAsset.address}) not found on source chain ${n.sourceChainId}`,{token:n.intermediaryAsset.symbol,address:n.intermediaryAsset.address,chainId:n.sourceChainId,side:"source"});const u=await c(n.sourceChainId,n.sourceAsset.address,d.address,s),h=await c(n.destinationChainId,n.intermediaryAsset.address,n.outputAsset.address,u.amountOutMinimum);return{chainBatches:[{chainId:n.sourceChainId,calls:u.calls},{chainId:n.destinationChainId,calls:[...h.calls,...a]}],solverFrontToken:n.intermediaryAsset,solverFrontAmount:u.amountOutMinimum,resolvedSwaps:{sourceSwap:u,destinationSwap:h}}}default:throw new m.SpiceflowError("ROUTE_STRATEGY_ERROR",`Unknown route strategy: ${n.strategy}`,{strategy:n.strategy})}}const Ta=({isOpen:e,onClose:n,styles:s,onWithdrawExecute:o,withdrawActionLabel:r,onWithdrawSuccess:a,onWithdrawError:i,autoCloseDelay:c,availableTokens:d,buildSpicenetBatch:u})=>{const h=l.useContext(m.SpiceFlowProviderContext);if(!h)return t.jsx("div",{children:"Error: SpiceWithdraw must be used within SpiceFlowProvider"});const p=h.mode||"7702",g=p==="presign"||p==="ondemand",f=h.supportedChainIds,x=h.allowedTokens,b=!0,{theme:y,dark:C,dk:k}=m.useSpiceBrand(s),I=h.network,v=()=>g?"select":"provider-login",[S,w]=l.useState(v()),[A,j]=l.useState(!1),[E,M]=l.useState(null),[B,R]=l.useState(null),[F,T]=l.useState(""),[N,L]=l.useState(!1),[W,Q]=l.useState(!1),[O,q]=l.useState(!1),[X,D]=l.useState(!1),[H,G]=l.useState(""),[se,ee]=l.useState(!0),pe=l.useRef(null),V=l.useRef(null),ye=l.useRef(null),$=l.useRef(null),[fe,ke]=l.useState(null),[be,me]=l.useState(null),[ue,de]=l.useState(null),P=qt(),{isReady:oe,isAuthenticated:ce,address:ae}=P,he=Vt(),{address:_,chainId:Z}=gt.useAccount(),[re,ge]=l.useState(!1),[te,Ne]=l.useState(null),[Me,Oe]=l.useState(null),Ie=l.useRef(null),ut=l.useRef(!0);l.useEffect(()=>(ut.current=!0,()=>{ut.current=!1}),[]);const{executeGasless:xt,estimateGasless:we}=Qn(),[Ue,Pe]=l.useState(null),[vt,rt]=l.useState(null),[Je,pt]=l.useState(!1),[De,mt]=l.useState(null),{assets:ft,loading:ht}=An({address:he,enabled:!!he,refetchInterval:3e4}),$e=l.useMemo(()=>{if(!x||x.length===0)return ft;const ne=new Set(x.map(ie=>ie.toLowerCase()));return(ft||[]).filter(ie=>[ie.symbol,ie.displaySymbol,ie.receiptTokenName].some(Ee=>typeof Ee=="string"&&ne.has(Ee.toLowerCase())))},[ft,x]),_e=l.useMemo(()=>[...new Set([...f??[],...Object.keys(d??{}).map(Number),...($e||[]).map(ne=>ne.chainId),...($e||[]).flatMap(ne=>Object.keys(ne.chainTokens??{}).map(ie=>{const[,Ee]=ie.split(":"),Le=Number(Ee);return Number.isFinite(Le)?Le:null}).filter(ie=>ie!==null))])].filter(ne=>m.getChainConfig(ne)?.network===I),[f,d,$e,I]),Ft=l.useMemo(()=>{if(d)return d;const ne={};for(const ie of $e||[]){const Ee=Object.entries(ie.chainTokens??{});if(Ee.length>0){for(const[Le,Ge]of Ee){const[st,ct,Qe]=Le.split(":");if(st!=="evm"||!ct||!Qe)continue;const Y=Number(ct);if(!Number.isFinite(Y))continue;const ve=Qe.startsWith("0x")?Qe.toLowerCase():`0x${Qe.toLowerCase()}`,Te=m.getChainConfig(Y)?.supportedTokens?.find(je=>m.addressesEqual(je.address,ve));ne[Y]||(ne[Y]=[]),ne[Y].find(je=>m.addressesEqual(je.address,ve))||ne[Y].push({address:ve,symbol:Te?.symbol||Ge?.name||ie.symbol,name:Te?.name||Ge?.name||ie.displayName||ie.name||ie.symbol,decimals:Te?.decimals??Ge?.decimals??ie.decimals,logoURI:Te?.logo||ie.logoURI})}continue}ne[ie.chainId]||(ne[ie.chainId]=[]),ne[ie.chainId].find(Le=>m.addressesEqual(Le.address,ie.address))||ne[ie.chainId].push({address:ie.address,symbol:ie.symbol,name:ie.displayName||ie.name||ie.symbol,decimals:ie.decimals,logoURI:ie.logoURI})}return ne},[d,$e]),at=l.useCallback((ne,ie)=>{if(!ne||!ie)return null;const Ee=Ln(ne,ie),Le=Object.entries(ne.chainTokens??{}).flatMap(([Te,je])=>{const We=Pn(Te);return We?.chainId===ie?[{parsed:We,detail:je}]:[]}),Ge=Ft?.[ie]||[],st=Te=>Ge.find(je=>m.addressesEqual(je.address,Te))??null,ct=Te=>{const je=Le.find(({parsed:We})=>m.addressesEqual(We.address,Te));return je?{address:je.parsed.address,symbol:ne.symbol,name:je.detail?.name||ne.displayName||ne.name||ne.symbol,decimals:je.detail?.decimals??ne.decimals,logoURI:ne.logoURI}:null};for(const Te of Ee){const je=st(Te);if(je)return je;const We=ct(Te);if(We)return We}const Qe=_t(ne,ie);if(Qe){const Te=st(Qe);if(Te)return Te;const je=ct(Qe);if(je)return je}const Y=tn(ne.address,ie,ne.chainId);return Y?st(Y.address)||(Ge.length>0?null:{address:Y.address,symbol:Y.symbol||ne.symbol,name:ne.displayName||ne.name||ne.symbol,decimals:Y.decimals??ne.decimals,logoURI:ne.logoURI}):null},[Ft]),Ce=l.useMemo(()=>{if(!E)return null;const ne=E.receiptTokenId||`${E.chainId}:${E.address.toLowerCase()}`;return $e.find(ie=>(ie.receiptTokenId||`${ie.chainId}:${ie.address.toLowerCase()}`)===ne)||E},[E,$e]),et=l.useMemo(()=>{if(!Ce)return[];const ne=Object.keys(Ce.chainTokens??{}).map(ie=>Pn(ie)?.chainId??null).filter(ie=>ie!==null);return Array.from(new Set([...ne,Ce.chainId,..._e].filter(Number.isFinite))).filter(ie=>m.getChainConfig(ie)?.network===I&&at(Ce,ie)!==null)},[Ce,_e,at,I]),Tt=l.useMemo(()=>{if(!Ce||typeof window>"u")return null;const ne=`spiceflow:withdraw-chain:${Ce.receiptTokenId||Ce.address.toLowerCase()}`,ie=window.localStorage.getItem(ne),Ee=ie?Number(ie):null;return Ee!==null&&Number.isFinite(Ee)&&et.includes(Ee)?Ee:null},[Ce,et]),kt=l.useMemo(()=>Ce?Tt!==null?Tt:Z&&et.includes(Z)?Z:Ce.chainId&&et.includes(Ce.chainId)?Ce.chainId:et[0]??_e[0]??null:_e[0]??null,[Ce,Tt,Z,et,_e]),Fe=l.useMemo(()=>at(Ce,B),[at,Ce,B]);l.useEffect(()=>{!$e?.length||Ce||M($e[0])},[b,$e,Ce]),l.useEffect(()=>{!Ce||(B===null||!et.includes(B))&&R(kt)},[b,Ce,B,kt,et]),l.useEffect(()=>{if(!N&&!W&&!O)return;const ne=ie=>{const Ee=ie.target;N&&!pe.current?.contains(Ee)&&!V.current?.contains(Ee)&&!Ee?.closest?.("[data-network-popover]")&&L(!1),W&&!ye.current?.contains(Ee)&&!Ee?.closest?.("[data-token-popover]")&&Q(!1),O&&!$.current?.contains(Ee)&&!Ee?.closest?.("[data-balance-trigger]")&&q(!1)};return document.addEventListener("mousedown",ne),()=>document.removeEventListener("mousedown",ne)},[N,W,O]);const Ze=l.useCallback(ne=>{if(!ne||et.length<=1)return;const ie=ne.getBoundingClientRect(),Ee=220,Le=16;ke({top:ie.bottom+8,left:Math.min(Math.max(Le,ie.right-Ee),window.innerWidth-Ee-Le)}),L(Ge=>!Ge)},[et.length]);l.useEffect(()=>{if(!Ce||B===null||typeof window>"u")return;const ne=`spiceflow:withdraw-chain:${Ce.receiptTokenId||Ce.address.toLowerCase()}`;window.localStorage.setItem(ne,String(B))},[Ce,B]);const dt=X&&H&&U.isAddress(H)?H:_||he,it=Ce?.balanceFormatted??0,Pt=l.useCallback(ne=>{if(!ne)return;const ie=ne.getBoundingClientRect();de({top:ie.bottom+8,left:ie.right-220}),q(!0)},[]),nn=Ce?.displaySymbol||Ce?.receiptTokenName||Ce?.symbol||"spiceUSDC",yt=Ce?.displayChainName||"Spicenet",tt=ss,Xe=ss,He=Ce?.receiptTokenDecimals??Ce?.decimals,nt=l.useMemo(()=>{if(!Fe||!He)return 0n;try{return U.parseUnits(F||"0",He)}catch{return 0n}},[F,Fe,He]),Ye=l.useMemo(()=>!Fe||!He?0n:mo(nt,He,Fe.decimals),[Fe,He,nt]),lt=l.useMemo(()=>{const ne=vt??Ue;return!ne||ne<=0n||!Fe||!He?0n:mo(ne,Fe.decimals,He)},[vt,Ue,Fe,He]),Ke=l.useMemo(()=>nt+lt,[nt,lt]),Ct=vt??Ue,At=l.useCallback(ne=>{if(!B||!Fe)return[];if(nt===0n||Ye===0n||!dt)return[];const ie={chainId:B,calls:[],tokenTransfers:[{from:"escrow",to:dt,token:Fe.address,amount:Ye}]};if(!u)return[ie];const Ee=u({destinationChainId:B,deliveryToken:Fe.address,deliveryAmount:ne??Ye,deliveryRecipient:dt});return Ee?[Ee,ie]:[ie]},[b,B,Fe,nt,Ye,dt,u]),Rt=l.useMemo(()=>At(),[At]);l.useEffect(()=>{let ne=!1;if(!e||g||re||!Fe||nt===0n){Pe(null),mt(null),pt(!1);return}if(Rt.length===0){Pe(null),pt(!0);return}const ie=async()=>{pt(!0),mt(null);try{const Le=await we(Rt,Fe.address,0n,{useCustomTransfers:!0});if(ne)return;const Ge=Le.intents[0]?.batches[0];if(!Ge){Pe(null),mt("No gas fee estimate was returned for this withdraw.");return}Pe(gn(Ge).totalFee)}catch(Le){if(ne)return;Pe(null),mt(Le instanceof Error?Le.message:"Failed to estimate gas fee")}finally{ne||pt(!1)}};ie();const Ee=window.setInterval(()=>{ie()},1e4);return()=>{ne=!0,window.clearInterval(Ee)}},[e,g,re,Rt,Fe,we,nt]),l.useEffect(()=>{re||rt(null)},[re,F,B,Fe?.address]);const sn=l.useCallback(()=>{j(!0),w("select")},[b]),Yt=l.useCallback(()=>{n()},[n]),Lt=l.useRef(null);Lt.current={computedWithdrawBatches:Rt,walletAddress:ae,recipientAddress:dt,selectedDestToken:Fe,selectedChainId:B,amount:F,receiveAmountRaw:Ye,gasFee:Ue,isNon7702:g,onWithdrawExecute:o,onWithdrawSuccess:a,onWithdrawError:i,buildSpicenetBatch:u,buildWithdrawBatches:At,estimateGasless:we,executeGasless:xt,setIsExecuting:ge,setExecutionError:Ne,setExecutionProgress:Oe,setLockedGasFee:rt,executionContextRef:Ie,isMountedRef:ut};const Nt=l.useCallback(()=>xo(Lt.current),[]),Ae=l.useCallback(()=>Aa(Lt.current),[]);if(l.useEffect(()=>{if(!e){const ne=setTimeout(()=>{w(v()),j(!1),M(null),R(null),T(""),L(!1),Q(!1),D(!1),G(""),ge(!1),Ne(null),Oe(null),Ie.current=null},300);return()=>clearTimeout(ne)}},[e,g]),l.useEffect(()=>{if(!g&&e&&S==="provider-login"&&oe&&ce&&he&&!A){const ne=setTimeout(()=>{j(!0),w("select")},100);return()=>clearTimeout(ne)}},[g,e,S,oe,ce,he,A,b]),!e)return null;if(S==="provider-login"&&!g)return t.jsx(hs,{onAuthSuccess:sn,autoTrigger:!0});if(S==="select"&&b){const ne=parseFloat(F)||0,ie=He?Cs(Ke,He):F||"0",Ee=parseFloat(ie)||0,Le=Ee>0&&Ee>it,Ge=(B?m.getChainConfig(B):null)?.displayName||"Network",st=B?zt[B]||Gt:null,ct=Fe?.symbol||"\u2014",Qe=nn,Y=Fe?Cs(Ye,Fe.decimals):"0",ve=go(ne,Fe?.symbol||Ce?.symbol),Te=go(parseFloat(Y)||0,Fe?.symbol||Ce?.symbol),je=!X||!H||U.isAddress(H),We=!g&&ne>0&&Fe!==null,bt=!We||Ue!==null&&!Je&&!De,Et=ne>0&&!Le&&E!==null&&B!==null&&Fe!==null&&dt&&je&&bt&&Ye>0n,Ot=!Et,K=E===null?"NO BALANCE":ne===0?"ENTER AMOUNT":Le?"INSUFFICIENT BALANCE":We&&!bt?De?"GAS UNAVAILABLE":"ESTIMATING GAS":We&&Ye===0n?"AMOUNT TOO SMALL":"WITHDRAW",J=!!Me&&(Me.step==="success"||Me.step==="error"),xe=t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"5px"},children:[t.jsx("img",{src:_s,alt:"","aria-hidden":"true",style:{width:"13px",height:"13px",flexShrink:0,...C?{filter:"invert(0.6)"}:{}}}),t.jsx("p",{style:{fontSize:"13px",color:C?k.textSecondary:"#979AA0",margin:"0",lineHeight:"1.4",fontFamily:'"Helvetica Neue", sans-serif'},children:"Withdraw collateral from your account to 10+ EVM blockchains."})]}),le='"Helvetica Neue", Arial, sans-serif',qe='"IBM Plex Mono", monospace',ze=s?.primaryColor||y.colors.primary,Ve=C?k.cardBg:"#E9E9E9",ot=C?k.cardBorder:"#C6C6C6",Mt=C?k.textSecondary:"#7D7C7B",Se=C?k.textSecondary:"#71757A",Re=C?k.textPrimary:"#0E0D0B",wt=C?k.cardBorder:"#C5C5C4",Ut=C?"rgba(255,255,255,0.08)":"#D4D3D3",Qt=170,Kt=Qe.length>8?"14px":Qe.length>6?"16px":"18px",yn=ct.length>8?"14px":ct.length>6?"16px":"18px",Fn=402,Tn=F.length>7?42:F.length>5?46:54,Rn=Y.length>15?32:Y.length>10?36:Y.length>7?42:Y.length>5?46:54;return t.jsx(Jt,{isOpen:!0,onClose:Yt,title:"Withdraw",subtitle:xe,styles:s,theme:y,dark:C,maxWidth:"486px",footerLinkText:"Spicenet accounts \u2192",overlayDimmed:!1,overlayContent:J?t.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,display:"flex",flexDirection:"column",justifyContent:"flex-end",pointerEvents:"none",zIndex:20},children:t.jsx("div",{style:{pointerEvents:"auto"},children:t.jsx(ms,{type:"withdraw",isOpen:!0,isProcessing:re,onRetryTx:()=>{Ae()},onNewTx:()=>{Oe(null),T(""),Ne(null),Ie.current=null},onClose:()=>{Oe(null),Ne(null),ge(!1),Ie.current=null},onComplete:()=>{Oe(null),Ne(null),ge(!1),Ie.current=null},results:[{asset:{symbol:Fe?.symbol||"Token",address:Fe?.address||""},txHash:Me?.txHash||"",success:Me?.step==="success",error:Me?.error,amount:F}],chainName:B?m.getChainName(B):"Network",explorerUrl:B?m.getExplorerUrl(B,"").replace(/\/tx\/.*$/,""):void 0,theme:y})})}):null,children:t.jsxs("div",{style:{width:`${Fn}px`,margin:"0 auto",padding:"0 0 4px 0",position:"relative"},children:[t.jsx(Ea,{show:O,position:ue,popoverRef:$,spiceAssets:$e,dark:C,dk:k}),t.jsxs("div",{style:{marginTop:"16px",marginBottom:"16px",display:"flex",flexDirection:"column",gap:"16px"},children:[t.jsxs("div",{style:{backgroundColor:Ve,border:`1px solid ${ot}`,borderRadius:"7px",padding:"14px 16px 12px 16px",minHeight:"138px",display:"flex",flexDirection:"column",gap:"6px",position:"relative"},children:[t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontFamily:le,fontSize:"17px",fontWeight:500,color:Mt,lineHeight:"24px"},children:"Source"}),t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px",fontFamily:le,fontSize:"13px",fontWeight:500,color:Se,lineHeight:"16px"},children:["Balance:"," ",ht?"...":rn(it),t.jsx("button",{type:"button","data-balance-trigger":!0,onClick:Be=>{Be.stopPropagation(),Pt(Be.currentTarget)},style:{width:"15px",height:"15px",borderRadius:"999px",border:"1px solid #EA4B4B",color:"#EA4B4B",display:"inline-flex",alignItems:"center",justifyContent:"center",fontSize:"9px",fontWeight:500,lineHeight:1,boxSizing:"border-box",background:"transparent",padding:0,cursor:"pointer"},children:t.jsx("span",{style:{display:"inline-flex",alignItems:"center",justifyContent:"center",gap:"1.5px"},children:[0,1,2].map(Be=>t.jsx("span",{style:{width:"1.75px",height:"1.75px",borderRadius:"999px",backgroundColor:"#EA4B4B",display:"block"}},Be))})})]})]}),t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:"12px",flex:1},children:[t.jsxs("div",{style:{flex:1,minWidth:0,alignSelf:"flex-start",paddingTop:"4px"},children:[t.jsx("input",{type:"text",inputMode:"decimal",autoComplete:"off","aria-label":"Withdraw amount","aria-invalid":Le||void 0,"data-spiceflow-focus":!0,value:F,onChange:Be=>{const It=Be.target.value;(It===""||/^\d*\.?\d*$/.test(It))&&T(It)},placeholder:"0.0",style:{fontFamily:le,fontSize:`${Tn}px`,fontWeight:700,color:Le?"#ef4444":F?Re:"#A8A8A7",lineHeight:"0.95",letterSpacing:"-0.04em",backgroundColor:"transparent",border:"none",outline:"none",padding:0,width:"100%"}}),t.jsx("div",{style:{fontSize:"12px",fontWeight:500,color:Se,fontFamily:le,marginTop:"10px"},children:ve})]}),t.jsx("div",{style:{width:`${Qt}px`,flexShrink:0},children:t.jsxs("div",{style:{backgroundColor:"transparent",border:`1px solid ${wt}`,borderRadius:"8px",overflow:"hidden",width:"100%",display:"flex",flexDirection:"column",boxSizing:"border-box"},children:[t.jsxs("div",{ref:ye,onClick:Be=>{if(Be.stopPropagation(),!W&&ye.current){const It=ye.current.getBoundingClientRect(),Zt=220,an=16;me({top:It.bottom+8,left:Math.min(Math.max(an,It.right-Zt),window.innerWidth-Zt-an)})}Q(It=>!It)},style:{display:"flex",alignItems:"center",gap:"6px",padding:"9px 10px 8px 10px",cursor:"pointer"},children:[t.jsx("img",{src:tt,alt:Qe,style:{width:"24px",height:"24px",borderRadius:"50%"}}),t.jsx("span",{style:{fontSize:Kt,fontWeight:500,color:Re,lineHeight:"1.3",fontFamily:le,flex:1,minWidth:0,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",letterSpacing:"-0.02em"},children:Qe}),t.jsx($t,{size:15,color:Re,strokeWidth:2.25})]}),t.jsx(oo,{isOpen:W,position:be,title:"SELECT TOKEN",portalAttribute:"token",items:($e||[]).map(Be=>({id:Be.receiptTokenId||Be.address,label:Be.displaySymbol||Be.receiptTokenName||Be.symbol,icon:ss,detail:rn(Be.balanceFormatted)})),selectedId:Ce?.receiptTokenId||Ce?.address||null,onSelect:Be=>{const It=($e||[]).find(Zt=>(Zt.receiptTokenId||Zt.address)===Be);It&&(M(It),T("")),Q(!1)}}),t.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"5px 10px",backgroundColor:Ut,borderTop:`1px solid ${wt}`},children:t.jsx("span",{style:{fontSize:"11px",fontWeight:400,color:Re,fontFamily:le,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",textTransform:"uppercase"},children:yt})})]})})]}),t.jsxs("div",{style:{minHeight:"18px",display:"flex",alignItems:"center",justifyContent:"space-between"},children:[Le?t.jsx("span",{style:{fontSize:"12px",color:k.errorText,fontFamily:le,fontWeight:500},children:"Insufficient Balance"}):t.jsx("span",{}),t.jsx("div",{style:{display:"flex",justifyContent:"flex-end",gap:"0px",minHeight:"32px",marginRight:"-9px"},children:[0,25,50,75,100].map((Be,It)=>{const Zt=It===4,an=Be/100,nr=parseFloat(F)||0,Fs=it>0&&Math.abs(nr/it*100-Be)<1;return t.jsx("button",{type:"button","aria-label":`Set amount to ${Be}%`,"aria-pressed":Fs,onClick:()=>{const sr=it*Be/100,Zn=E?.decimals??6,Ts=Math.floor(sr*10**Zn)/10**Zn;T(Be===0?"":Ts>0?kn(Ts,Zn):"")},title:`${Be}%`,disabled:it===0,"data-spiceflow-focus":!0,style:{width:"32px",height:"32px",padding:"9px",border:"none",backgroundColor:"transparent",cursor:it===0?"not-allowed":"pointer",opacity:Fs?1:.5,transition:"opacity 0.15s ease",display:"flex",alignItems:"center",justifyContent:"center",boxSizing:"border-box"},children:t.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",children:[t.jsx("circle",{cx:"7",cy:"7",r:"6.84375",fill:Zt?ze:"none",stroke:Zt?ze:C?"#4a5568":"#3C3E42",strokeWidth:"0.3125"}),!Zt&&an>0&&t.jsx("path",{d:`M 7 7 L 7 0.15625 A 6.84375 6.84375 0 ${an>.5?1:0} 1 ${7+6.84375*Math.sin(an*2*Math.PI)} ${7-6.84375*Math.cos(an*2*Math.PI)} Z`,fill:C?k.textSecondary:"#3C3E42"})]})},Be)})})]})]}),t.jsxs("div",{style:{backgroundColor:Ve,border:`1px solid ${ot}`,borderRadius:"7px",padding:"14px 16px 12px 16px",minHeight:"138px",display:"flex",flexDirection:"column",gap:"6px"},children:[t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontFamily:le,fontSize:"17px",fontWeight:500,color:Mt,lineHeight:"24px"},children:"Destination"}),t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px",fontFamily:le,fontSize:"13px",fontWeight:500,color:Se,lineHeight:"16px"},children:["Balance:"," ",ht?"...":rn(it),t.jsx("button",{type:"button","data-balance-trigger":!0,onClick:Be=>{Be.stopPropagation(),Pt(Be.currentTarget)},style:{width:"15px",height:"15px",borderRadius:"999px",border:"1px solid #EA4B4B",color:"#EA4B4B",display:"inline-flex",alignItems:"center",justifyContent:"center",fontSize:"9px",fontWeight:500,lineHeight:1,boxSizing:"border-box",background:"transparent",padding:0,cursor:"pointer"},children:t.jsx("span",{style:{display:"inline-flex",alignItems:"center",justifyContent:"center",gap:"1.5px"},children:[0,1,2].map(Be=>t.jsx("span",{style:{width:"1.75px",height:"1.75px",borderRadius:"999px",backgroundColor:"#EA4B4B",display:"block"}},Be))})})]})]}),t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:"12px",flex:1},children:[t.jsxs("div",{style:{flex:1,minWidth:0,alignSelf:"flex-start",paddingTop:"4px"},children:[t.jsx("div",{style:{fontFamily:le,fontSize:`${Rn}px`,fontWeight:700,color:F?Re:"#A8A8A7",lineHeight:"0.95",letterSpacing:"-0.04em"},children:Y}),t.jsx("div",{style:{fontSize:"12px",fontWeight:500,color:Se,fontFamily:le,marginTop:"10px"},children:Te})]}),t.jsxs("div",{style:{width:`${Qt}px`,flexShrink:0,display:"flex",flexDirection:"column",alignItems:"stretch",gap:"8px"},children:[t.jsxs("div",{style:{backgroundColor:"transparent",border:`1px solid ${wt}`,borderRadius:"8px",overflow:"hidden",width:"100%",display:"flex",flexDirection:"column",boxSizing:"border-box"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px",padding:"9px 10px 8px 10px"},children:[t.jsx("img",{src:Fe?.logoURI||wn,alt:ct,style:{width:"24px",height:"24px",borderRadius:"50%"}}),t.jsx("span",{style:{fontSize:yn,fontWeight:500,color:Re,lineHeight:"1.3",fontFamily:le,flex:1,minWidth:0,letterSpacing:"-0.02em"},children:ct})]}),t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"5px 10px",backgroundColor:Ut,borderTop:`1px solid ${wt}`},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[st&&t.jsx("img",{src:st,alt:Ge,style:{width:"13px",height:"13px",borderRadius:"50%",flexShrink:0}}),t.jsx("span",{style:{fontSize:"11px",fontWeight:400,color:Re,fontFamily:le,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",textTransform:"uppercase"},children:Ge})]}),t.jsx("button",{ref:pe,onClick:Be=>{Be.stopPropagation(),Ze(pe.current)},style:{background:"none",border:"none",cursor:et.length>1?"pointer":"not-allowed",padding:"0 0 0 8px",fontSize:"9.5px",fontFamily:qe,color:Se,textDecoration:"underline",fontWeight:600,opacity:et.length>1?1:.45},children:"Switch"}),t.jsx(oo,{isOpen:N,position:fe,title:"SELECT NETWORK",portalAttribute:"network",items:et.map(Be=>{const It=m.getChainConfig(Be);return{id:String(Be),label:It?.displayName||String(Be),icon:zt[Be]||Gt}}),selectedId:B!==null?String(B):null,onSelect:Be=>{R(Number(Be)),L(!1)}})]})]}),t.jsx("div",{style:{minHeight:"14px"}})]})]})]})]}),t.jsxs("div",{style:{marginBottom:y.spacing.sm},children:[t.jsx(Ba,{show:se,onToggle:()=>ee(Be=>!Be),showCustomAddress:X,setShowCustomAddress:D,customRecipient:H,setCustomRecipient:G,externalAddress:_,recipientAddress:dt,destChainName:Ge,destChainLogo:st,compatibleDestinationChains:et,txDetailsChainSwitchRef:V,onOpenNetworkPopover:Ze,sourceChainLabel:yt,sourceDetailsLogo:Xe,sourceTokenLabel:Qe,amount:F,totalSourceDebitDisplay:ie,receiveAmountDisplay:Y,destTokenSymbol:ct,shouldQuoteWithdrawGas:We,estimatingFee:Je,feeError:De,displayedGasFee:Ct,selectedDestToken:Fe,theme:y,styles:s,dark:C,dk:k}),te&&t.jsx(hn,{variant:"error",size:"compact",palette:k,fontFamily:s?.fontFamily||y.typography.fontFamily,style:{marginBottom:"12px"},children:te}),t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:()=>{Et&&Nt()},disabled:Ot||re,theme:y,dark:C,styles:s,style:{marginTop:"8px"},children:re?"EXECUTING...":K})]})]})})}return null},ko=Ta;var Ra="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAKlBMVEVMaXHpSkrmS0vrSkrmR0fpSkrrSkroSUnqSkrpSkrpSkrpSkrsS0vzTk68N2lZAAAADHRSTlMA/SoEHOX1RcdliKnuQ9TkAAAACXBIWXMAAAsTAAALEwEAmpwYAAAB4UlEQVR42u1XyRbDIAhUcQ/8/+9WUROzNIvtMbxefMo4yACpEOcG4geD30G0C07B8P0qWkzm3QgJEBAsIUqURJMe8NcToZTlR8YJgGev5wwVd2QEG+FZGIl+9iUyloGQvL5NIt2V6RfqoCPRHMZN/0ofy+NBKEsO41b4wVaHADWdvgGqGyR0o5/Tvw/pmr7v6C/XhRbVaTYqfU5bgPVGDUNmYDgXT6UP28xEvAyjpw/H2pD5wGE2ivZZPGv6fXF5JlhEdfr68AUB4vdsqHP6DWPWyDYbITsz/asecXDR+vXPtZbOdmG0o7324dJYVFypLRu6+ptws9aV53glhUIqMCDaqNxdKwjkoQDkzpkAjL1vWwCJA1YBUgpRjlkDULl9jxjFudjHbBkXWg3ZT4N3q9AkMOXUrMM0VZ3oVJk3QXSbvNi0CzNXUimZ2LeatBl7Ie57CiQ9k9EVYEripKVYwJMlq+qKN3eyVzaLu/pArtl0pgFok6XS1j6fjI8BUDZGvPkCvAAvwJdiuipnuZRzJL5q93li0M53pp6Bq4bicZnb2kuMh/8Num9ycOsP9NUalBJ/trG2rmH5/Boabji1FxsbbFhzmaezHAPANlxxcDwvwzWNZ3ps2P0X02MG4rX/2Ad4/i9F5OK4gwAAAABJRU5ErkJggg==";const jn=e=>{const n=Math.round(e*1e5)/1e5;return new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",minimumFractionDigits:0,maximumFractionDigits:5}).format(n)},So=e=>{const n=Math.round(e*1e5)/1e5;return new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",minimumFractionDigits:0,maximumFractionDigits:5}).format(n)},Ma=({balanceData:e,isLoading:n=!1,styles:s,className:o="",showHeader:r=!0,onAccountClick:a,onDepositClick:i,onWithdrawClick:c,vaultBalance:d,fetchVaultBalance:u,onWithdrawExecute:h,withdrawActionLabel:p,destinationChainId:g,destinationTokenAddress:f,customSections:x,showDefaultSections:b=!0})=>{const y=l.useContext(m.SpiceFlowProviderContext),C=(y?.mode||"7702")!=="7702",k=y?.appName||"Spicenet",{dark:I,primaryColor:v,dk:S,theme:w}=m.useSpiceBrand(s),[A,j]=l.useState(!0),[E,M]=l.useState(!1),[B,R]=l.useState(!1),[F,T]=l.useState(null),{isConnected:N}=gt.useAccount(),{disconnect:L}=gt.useDisconnect();l.useEffect(()=>{C&&u&&u().then(D=>{const H=Math.round(D*1e5)/1e5;T(H)}).catch(D=>{console.error("Error fetching vault balance:",D),T(null)})},[C,u]);const W=()=>{j(!A)},Q=l.useMemo(()=>{if(!e.freeCollateralItems)return null;const D=e.freeCollateralItems.filter(se=>se.name==="USDC");if(D.length===0)return null;const H=D.reduce((se,ee)=>se+ee.balance,0),G=[];return D.forEach(se=>{se.networks&&se.networks.forEach(ee=>{(ee===1||ee===11155111||ee===8453||ee===84532)&&(G.includes(ee)||G.push(ee))})}),G.length===0&&G.push(1,8453),{name:"USDC",totalBalance:H,networks:G,subtitle:D[0]?.subtitle||"USD COIN"}},[e.freeCollateralItems]),O=l.useMemo(()=>{if(C){if(F!==null)return F;if(d!=null)return d}return e.freeCollateralItems?e.freeCollateralItems.reduce((D,H)=>D+H.balance,0):e.freeCollateral},[C,F,d,e.freeCollateralItems,e.freeCollateral]),q=D=>A?D:"******",X=()=>{L(),M(!1),R(!1)};return t.jsxs("div",{className:o,style:{borderRadius:"16px",backgroundColor:I?S.shell:"#D5D5D5",width:"522px",padding:"8px",fontFamily:s?.fontFamily||'"Helvetica Neue", sans-serif',...s?.container},children:[t.jsxs("div",{style:{background:I?S.cardBg:" white",display:"flex",flexDirection:"column"},children:[t.jsxs("div",{style:{backgroundColor:I?S.inputBg:"#E9E9E9",borderRadius:"0 0 16px 16px",padding:"20px",display:"flex",flexFlow:"column"},children:[t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"4px"},children:[t.jsxs("p",{style:{fontSize:"14px",fontWeight:500,fontFamily:'"IBM Plex Mono", monospace',color:I?S.textPrimary:"#0E0D0B",margin:0},children:[k.toUpperCase()," BALANCE"]}),N&&t.jsx("button",{onClick:X,"aria-label":"Disconnect wallet",style:{width:"36px",height:"36px",borderRadius:"8px",border:I?`1px solid ${v}33`:"1px solid #E5E7EB",background:I?S.inputBg:"white",display:"flex",alignItems:"center",justifyContent:"center",cursor:"pointer",transition:Wt.interactive,padding:"8px"},onMouseEnter:D=>{D.currentTarget.style.backgroundColor=I?S.cardBg:"#F3F4F6"},onMouseLeave:D=>{D.currentTarget.style.backgroundColor=I?S.inputBg:"white"},children:t.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[t.jsx("path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"}),t.jsx("polyline",{points:"16 17 21 12 16 7"}),t.jsx("line",{x1:"21",y1:"12",x2:"9",y2:"12"})]})})]}),t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.percentageChange!==void 0&&e.percentageChange!==null&&t.jsxs("div",{style:{fontSize:"13px",fontWeight:700,color:e.percentageChange>=0?I?S.successText:"#009C51":I?S.errorText:"#EF4444"},children:[e.percentageChange>=0?"+":"",e.percentageChange.toFixed(2),"%"]}),t.jsx("button",{onClick:W,style:{background:"none",border:"none",cursor:"pointer",padding:"8px",display:"flex",alignItems:"center",justifyContent:"center",transition:"opacity 0.2s ease"},onMouseEnter:D=>{D.currentTarget.style.opacity="0.7"},onMouseLeave:D=>{D.currentTarget.style.opacity="1"},children:A?t.jsxs("svg",{width:"32",height:"32",viewBox:"0 0 24 24",fill:"none",children:[t.jsx("path",{d:"M12 5C7 5 2.73 8.11 1 12.5C2.73 16.89 7 20 12 20C17 20 21.27 16.89 23 12.5C21.27 8.11 17 5 12 5Z",stroke:I?S.textSecondary:"#1A1A1A",strokeWidth:"2",fill:"none"}),t.jsx("circle",{cx:"12",cy:"12.5",r:"3",stroke:I?S.textSecondary:"#1A1A1A",strokeWidth:"2",fill:"none"})]}):t.jsxs("svg",{width:"32",height:"32",viewBox:"0 0 24 24",fill:"none",children:[t.jsx("path",{d:"M12 5C7 5 2.73 8.11 1 12.5C2.73 16.89 7 20 12 20C17 20 21.27 16.89 23 12.5C21.27 8.11 17 5 12 5Z",stroke:I?S.textSecondary:"#1A1A1A",strokeWidth:"2",fill:"none"}),t.jsx("path",{d:"M3 3L21 21",stroke:I?S.textSecondary:"#1A1A1A",strokeWidth:"2",strokeLinecap:"round"})]})})]}),t.jsx("p",{style:{fontSize:"40px",fontWeight:700,color:I?S.textPrimary:"black"},children:q(jn(C&&F!==null?F:C&&d!==void 0&&d!==null?d:e.totalBalance))}),t.jsxs("div",{style:{display:"flex",gap:"12px",marginTop:"16px"},children:[t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:()=>{i?i():M(!0)},theme:w,dark:I,styles:s,children:"DEPOSIT"}),t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:()=>{c?c():R(!0)},theme:w,dark:I,styles:s,children:"WITHDRAW"})]})]}),t.jsxs("div",{style:{background:I?S.cardBg:"white",padding:"12px 20px",borderRadius:"12px"},children:[b&&t.jsx(so,{title:"FREE COLLATERAL",icon:Ra,amount:q(So(O)),defaultExpanded:!1,children:C&&(F!==null||d!=null)?t.jsx(zn,{name:"USDC",balance:q(jn(F!==null?F:d)),subtitle:"USD COIN",icon:wn,onClick:a?()=>a("usdc-vault"):void 0}):Q?t.jsx(zn,{name:Q.name,balance:q(jn(Q.totalBalance)),subtitle:Q.subtitle,networks:Q.networks,icon:wn,onClick:a?()=>a(Q.name):void 0}):e.freeCollateralItems&&e.freeCollateralItems.length>0?e.freeCollateralItems.map((D,H)=>t.jsxs(l.Fragment,{children:[t.jsx(zn,{name:D.name,balance:q(jn(D.balance)),subtitle:D.subtitle,networks:D.networks,icon:D.name==="USDC"?wn:void 0,onClick:a?()=>a(D.id):void 0}),H<e.freeCollateralItems.length-1&&t.jsx("div",{style:{height:"1px",backgroundColor:I?S.cardBorder:"#D0D2D8",margin:"4px 0"}})]},D.id)):t.jsx("div",{style:{padding:"12px 0",color:I?S.textSecondary:"#6B7280",fontSize:"13px",fontFamily:'"IBM Plex Mono", monospace'},children:"No collateral items available"})}),x&&x.length>0&&x.filter(D=>D&&D.id&&D.title&&typeof D.title=="string"&&D.title.trim().length>0).map(D=>t.jsx(so,{title:D.title,icon:D.icon||void 0,amount:q(So(D.totalBalance||0)),defaultExpanded:D.defaultExpanded!==void 0?D.defaultExpanded:!1,children:D.items&&D.items.length>0?D.items.map((H,G)=>t.jsxs(l.Fragment,{children:[t.jsx(zn,{name:H.name,balance:q(jn(H.balance)),subtitle:H.subtitle,networks:H.networks,icon:H.name==="USDC"?wn:void 0,onClick:a?()=>a(H.id):void 0}),G<D.items.length-1&&t.jsx("div",{style:{height:"1px",backgroundColor:I?S.cardBorder:"#D0D2D8",margin:"4px 0"}})]},H.id||`item-${G}`)):t.jsx("div",{style:{padding:"12px 0",color:I?S.textSecondary:"#6B7280",fontSize:"13px",fontFamily:'"IBM Plex Mono", monospace'},children:D.emptyMessage||"No items available"})},D.id))]})]}),E&&t.jsx(no,{isOpen:E,onClose:()=>M(!1),styles:s}),B&&t.jsx(ko,{isOpen:B,onClose:()=>R(!1),styles:s,onWithdrawExecute:h,withdrawActionLabel:p})]})},Da=({options:e,selectedIndex:n,onSelect:s,primaryColor:o,dark:r=!1,textPrimary:a="#111827",textSecondary:i="#6b7280",trackColor:c})=>{const d=e.length-1,u=c||(r?"#3a3a3a":"#d1d5db"),h=r?"4px":"50%",p=r?"none":"2px solid white",g=r?"none":`0 0 0 1px ${o}`;return t.jsxs("div",{style:{width:"100%",userSelect:"none"},children:[t.jsxs("div",{style:{position:"relative",paddingBottom:"4px"},children:[t.jsx("div",{style:{position:"absolute",top:"50%",left:0,right:0,height:"4px",background:u,borderRadius:"2px",transform:"translateY(-50%)",pointerEvents:"none"}}),t.jsx("div",{style:{position:"absolute",top:"50%",left:0,width:`${n/d*100}%`,height:"4px",background:o,borderRadius:"2px",transform:"translateY(-50%)",pointerEvents:"none",transition:"width 0.15s ease"}}),t.jsx("input",{type:"range","aria-label":"Lock duration","aria-valuetext":e[n]?.label,"data-spiceflow-focus":!0,min:0,max:d,step:1,value:n,onChange:f=>s(Number(f.target.value)),style:{WebkitAppearance:"none",appearance:"none",width:"100%",height:"20px",background:"transparent",cursor:"pointer",outline:"none",border:"none",position:"relative",zIndex:1,margin:0,padding:0}})]}),t.jsx("div",{style:{display:"flex",justifyContent:"space-between",marginTop:"6px"},children:e.map((f,x)=>t.jsxs("div",{onClick:()=>s(x),style:{display:"flex",flexDirection:"column",alignItems:x===0?"flex-start":x===d?"flex-end":"center",cursor:"pointer",flex:1},children:[t.jsx("span",{style:{fontSize:"12px",fontWeight:x===n?700:400,color:x===n?a:i,whiteSpace:"nowrap",transition:"color 0.15s, font-weight 0.15s"},children:f.label}),f.highlight&&t.jsx("span",{style:{fontSize:"10px",color:i,whiteSpace:"nowrap"},children:"(most common)"})]},x))}),t.jsx("style",{children:`
67
67
  input[type='range']::-webkit-slider-thumb {
68
68
  -webkit-appearance: none;
69
69
  width: 20px;
70
70
  height: 20px;
71
- border-radius: ${p};
71
+ border-radius: ${h};
72
72
  background: ${o};
73
- border: ${f};
74
- box-shadow: ${x};
73
+ border: ${p};
74
+ box-shadow: ${g};
75
75
  cursor: pointer;
76
76
  transition: transform 0.15s ease;
77
77
  }
78
78
  input[type='range']::-moz-range-thumb {
79
79
  width: 20px;
80
80
  height: 20px;
81
- border-radius: ${p};
81
+ border-radius: ${h};
82
82
  background: ${o};
83
- border: ${f};
84
- box-shadow: ${x};
83
+ border: ${p};
84
+ box-shadow: ${g};
85
85
  cursor: pointer;
86
86
  }
87
87
  input[type='range']::-webkit-slider-thumb:hover {
88
88
  transform: scale(1.12);
89
89
  }
90
- `})]})};function Ra(e){const n=new Date;n.setDate(n.getDate()+Math.floor(e*30));const s=["January","February","March","April","May","June","July","August","September","October","November","December"],o=n.getDate(),r=o===1||o===21||o===31?"st":o===2||o===22?"nd":o===3||o===23?"rd":"th";return`${s[n.getMonth()]} ${o}${r} ${n.getFullYear()}`}const Ma=({durationMonths:e,fontFamily:n,dark:s=!1,textPrimary:o="#111827",textSecondary:r="#6b7280"})=>t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[t.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 14 14",fill:"none",style:{flexShrink:0},children:[t.jsx("circle",{cx:"7",cy:"7",r:"6.5",stroke:r,strokeWidth:"1.2"}),t.jsx("path",{d:"M7 6v4",stroke:r,strokeWidth:"1.2",strokeLinecap:"round"}),t.jsx("circle",{cx:"7",cy:"4.5",r:"0.7",fill:r})]}),t.jsx("span",{style:{fontSize:"13px",color:r,fontFamily:n},children:"Estimated Lock Expiry"})]}),t.jsx("span",{style:{fontSize:s?"17px":"13px",fontWeight:700,color:o,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.3px"},children:e!==void 0?Ra(e):"\u2014"})]}),Da=({votes:e,fontFamily:n,dark:s=!1,textPrimary:o="#111827",textSecondary:r="#6b7280"})=>t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[t.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 14 14",fill:"none",style:{flexShrink:0},children:[t.jsx("circle",{cx:"7",cy:"7",r:"6.5",stroke:r,strokeWidth:"1.2"}),t.jsx("path",{d:"M7 6v4",stroke:r,strokeWidth:"1.2",strokeLinecap:"round"}),t.jsx("circle",{cx:"7",cy:"4.5",r:"0.7",fill:r})]}),t.jsx("span",{style:{fontSize:"13px",color:r,fontFamily:n},children:"Estimated voting power"})]}),t.jsx("span",{style:{fontSize:s?"17px":"13px",fontWeight:700,color:o,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.3px"},children:e!==void 0?`${e} votes/epoch`:"\u2014"})]}),Wa=({isOpen:e,data:n,isLocking:s,lockError:o,onContinue:r,onClose:a,primaryColor:i,fontFamily:c,dark:l=!1})=>{const{dk:u}=m.useSpiceBrand(),[p,f]=d.useState(!1),[x,h]=d.useState(!0),g=l?u.cardBg:"#ffffff",b=u.textPrimary,C=u.textSecondary,y=l?u.inputPlaceholder:"#9ca3af",w=l?u.successBg:"#d1fae5",v=l?u.successBorder:"#6ee7b7",k=l?u.successText:"#065f46",A=u.errorBg,S=u.errorBorder;d.useEffect(()=>{e||f(!1)},[e]);const T=()=>{f(!0),setTimeout(a,300)};if(!e||!n)return null;const N=[{label:"NETWORK",value:n.sourceNetwork.toUpperCase()},{label:"DEPOSITED AMOUNT",value:`${n.depositedAmount} ${n.depositedSymbol}`,positive:!0}];return t.jsxs("div",{style:{position:"absolute",bottom:0,left:0,right:0,zIndex:10,animation:p?"lockSlideDown 0.3s ease-in":"lockSlideUp 0.3s ease-out",pointerEvents:"auto"},children:[t.jsxs("div",{style:{backgroundColor:g,width:"100%",padding:"18px 24px",boxShadow:l?"0 -4px 20px rgba(0,0,0,0.4)":"0 -4px 20px rgba(0,0,0,0.15)"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",backgroundColor:w,border:`1px solid ${v}`,borderRadius:"8px",padding:"10px 14px",marginBottom:"16px"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[t.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",children:[t.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),t.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#fff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]}),t.jsx("span",{style:{fontSize:"13px",fontWeight:700,color:k,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.3px"},children:"CONFIRMED TRANSACTION"})]}),n.explorerUrl&&t.jsxs("a",{href:n.explorerUrl,target:"_blank",rel:"noopener noreferrer",style:{fontSize:"12px",color:k,textDecoration:"none",display:"flex",alignItems:"center",gap:"4px",fontFamily:c},children:["View on explorer",t.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:"1.5",children:t.jsx("path",{d:"M2.5 9.5L9.5 2.5M9.5 2.5H5M9.5 2.5V7"})})]})]}),t.jsxs("div",{onClick:()=>h(I=>!I),style:{display:"flex",alignItems:"center",justifyContent:"space-between",cursor:"pointer",marginBottom:"8px"},children:[t.jsx("span",{style:{fontSize:"13px",fontWeight:500,color:C,fontFamily:c},children:"Transaction Details"}),t.jsxs("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:[t.jsx(Gt,{color:C,direction:x?"up":"down"}),t.jsx("button",{onClick:I=>{I.stopPropagation(),T()},style:{background:"none",border:"none",cursor:"pointer",padding:"2px",color:C,display:"flex",alignItems:"center"},children:t.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:t.jsx("path",{d:"M11 3L3 11M3 3l8 8",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round"})})})]})]}),t.jsx("div",{style:{overflow:"hidden",maxHeight:x?"200px":"0",opacity:x?1:0,transition:"max-height 0.3s ease, opacity 0.3s ease",marginBottom:x?"16px":"8px",display:"flex",flexDirection:"column",gap:"10px"},children:N.map(I=>t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontSize:"12px",fontWeight:500,color:y,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:I.label}),t.jsx("span",{style:{fontSize:"12px",fontWeight:600,color:I.positive?"#10b981":b,fontFamily:'"IBM Plex Mono", monospace'},children:I.value})]},I.label))}),o&&t.jsx("div",{style:{marginBottom:"12px",padding:"10px 14px",backgroundColor:A,border:`1px solid ${S}`,borderRadius:"6px"},children:t.jsx("p",{style:{color:"#ef4444",fontSize:"13px",margin:0,fontFamily:c},children:o})}),t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:r,disabled:s,loading:s,dark:l,styles:{button:{backgroundColor:i}},style:{height:"48px"},children:s?"LOCKING...":"CONTINUE \u2192"}),t.jsx("div",{style:{marginTop:"12px",display:"flex",justifyContent:"center"},children:t.jsx("img",{src:us,alt:"Powered by SpiceNet",style:{height:"auto",width:"130px"}})})]}),t.jsx("style",{children:`
90
+ `})]})};function Wa(e){const n=new Date;n.setDate(n.getDate()+Math.floor(e*30));const s=["January","February","March","April","May","June","July","August","September","October","November","December"],o=n.getDate(),r=o===1||o===21||o===31?"st":o===2||o===22?"nd":o===3||o===23?"rd":"th";return`${s[n.getMonth()]} ${o}${r} ${n.getFullYear()}`}const Na=({durationMonths:e,fontFamily:n,dark:s=!1,textPrimary:o="#111827",textSecondary:r="#6b7280"})=>t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[t.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 14 14",fill:"none",style:{flexShrink:0},children:[t.jsx("circle",{cx:"7",cy:"7",r:"6.5",stroke:r,strokeWidth:"1.2"}),t.jsx("path",{d:"M7 6v4",stroke:r,strokeWidth:"1.2",strokeLinecap:"round"}),t.jsx("circle",{cx:"7",cy:"4.5",r:"0.7",fill:r})]}),t.jsx("span",{style:{fontSize:"13px",color:r,fontFamily:n},children:"Estimated Lock Expiry"})]}),t.jsx("span",{style:{fontSize:s?"17px":"13px",fontWeight:700,color:o,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.3px"},children:e!==void 0?Wa(e):"\u2014"})]}),Ua=({votes:e,fontFamily:n,dark:s=!1,textPrimary:o="#111827",textSecondary:r="#6b7280"})=>t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[t.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 14 14",fill:"none",style:{flexShrink:0},children:[t.jsx("circle",{cx:"7",cy:"7",r:"6.5",stroke:r,strokeWidth:"1.2"}),t.jsx("path",{d:"M7 6v4",stroke:r,strokeWidth:"1.2",strokeLinecap:"round"}),t.jsx("circle",{cx:"7",cy:"4.5",r:"0.7",fill:r})]}),t.jsx("span",{style:{fontSize:"13px",color:r,fontFamily:n},children:"Estimated voting power"})]}),t.jsx("span",{style:{fontSize:s?"17px":"13px",fontWeight:700,color:o,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.3px"},children:e!==void 0?`${e} votes/epoch`:"\u2014"})]}),za=({isOpen:e,data:n,isLocking:s,lockError:o,onContinue:r,onClose:a,primaryColor:i,fontFamily:c,dark:d=!1})=>{const{dk:u}=m.useSpiceBrand(),[h,p]=l.useState(!1),[g,f]=l.useState(!0),x=d?u.cardBg:"#ffffff",b=u.textPrimary,y=u.textSecondary,C=d?u.inputPlaceholder:"#9ca3af",k=d?u.successBg:"#d1fae5",I=d?u.successBorder:"#6ee7b7",v=d?u.successText:"#065f46",S=u.errorBg,w=u.errorBorder;l.useEffect(()=>{e||p(!1)},[e]);const A=()=>{p(!0),setTimeout(a,300)};if(!e||!n)return null;const j=[{label:"NETWORK",value:n.sourceNetwork.toUpperCase()},{label:"DEPOSITED AMOUNT",value:`${n.depositedAmount} ${n.depositedSymbol}`,positive:!0}];return t.jsxs("div",{style:{position:"absolute",bottom:0,left:0,right:0,zIndex:10,animation:h?"lockSlideDown 0.3s ease-in":"lockSlideUp 0.3s ease-out",pointerEvents:"auto"},children:[t.jsxs("div",{style:{backgroundColor:x,width:"100%",padding:"18px 24px",boxShadow:d?"0 -4px 20px rgba(0,0,0,0.4)":"0 -4px 20px rgba(0,0,0,0.15)"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",backgroundColor:k,border:`1px solid ${I}`,borderRadius:"8px",padding:"10px 14px",marginBottom:"16px"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[t.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",children:[t.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),t.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#fff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]}),t.jsx("span",{style:{fontSize:"13px",fontWeight:700,color:v,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.3px"},children:"CONFIRMED TRANSACTION"})]}),n.explorerUrl&&t.jsxs("a",{href:n.explorerUrl,target:"_blank",rel:"noopener noreferrer",style:{fontSize:"12px",color:v,textDecoration:"none",display:"flex",alignItems:"center",gap:"4px",fontFamily:c},children:["View on explorer",t.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:"1.5",children:t.jsx("path",{d:"M2.5 9.5L9.5 2.5M9.5 2.5H5M9.5 2.5V7"})})]})]}),t.jsxs("div",{onClick:()=>f(E=>!E),style:{display:"flex",alignItems:"center",justifyContent:"space-between",cursor:"pointer",marginBottom:"8px"},children:[t.jsx("span",{style:{fontSize:"13px",fontWeight:500,color:y,fontFamily:c},children:"Transaction Details"}),t.jsxs("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:[t.jsx($t,{color:y,direction:g?"up":"down"}),t.jsx("button",{onClick:E=>{E.stopPropagation(),A()},style:{background:"none",border:"none",cursor:"pointer",padding:"2px",color:y,display:"flex",alignItems:"center"},children:t.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:t.jsx("path",{d:"M11 3L3 11M3 3l8 8",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round"})})})]})]}),t.jsx("div",{style:{overflow:"hidden",maxHeight:g?"200px":"0",opacity:g?1:0,transition:"max-height 0.3s ease, opacity 0.3s ease",marginBottom:g?"16px":"8px",display:"flex",flexDirection:"column",gap:"10px"},children:j.map(E=>t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsx("span",{style:{fontSize:"12px",fontWeight:500,color:C,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:E.label}),t.jsx("span",{style:{fontSize:"12px",fontWeight:600,color:E.positive?"#10b981":b,fontFamily:'"IBM Plex Mono", monospace'},children:E.value})]},E.label))}),o&&t.jsx("div",{style:{marginBottom:"12px",padding:"10px 14px",backgroundColor:S,border:`1px solid ${w}`,borderRadius:"6px"},children:t.jsx("p",{style:{color:"#ef4444",fontSize:"13px",margin:0,fontFamily:c},children:o})}),t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:r,disabled:s,loading:s,dark:d,styles:{button:{backgroundColor:i}},style:{height:"48px"},children:s?"LOCKING...":"CONTINUE \u2192"}),t.jsx("div",{style:{marginTop:"12px",display:"flex",justifyContent:"center"},children:t.jsx("img",{src:rs,alt:"Powered by SpiceNet",style:{height:"auto",width:"130px"}})})]}),t.jsx("style",{children:`
91
91
  @keyframes lockSlideUp {
92
92
  from { transform: translateY(100%); }
93
93
  to { transform: translateY(0); }
@@ -100,9 +100,9 @@
100
100
  from { transform: rotate(0deg); }
101
101
  to { transform: rotate(360deg); }
102
102
  }
103
- `})]})};function Na(e,n,s){if(!Array.isArray(e))return 0n;const o=`evm:${n}:${s.slice(2).toLowerCase()}`;let r=0n;for(const a of e){if(!a||typeof a!="object")continue;const i=a,c=i.chainTokens;if((Array.isArray(c)?c.filter(l=>typeof l=="string"):c&&typeof c=="object"?Object.keys(c):[]).some(l=>l.toLowerCase()===o))try{r+=BigInt(i.balanceAvailable??"0")}catch{}}return r}async function So(e,n,s,o){const r=await fetch(`${e}/wallets/${n}/balance`,{cache:"no-store"});if(!r.ok)throw new Error(`Failed to fetch spice balance: ${r.status}`);const a=await r.json();return Na(a?.balances,s,o)}async function Pa({apiBaseUrl:e,user:n,chainId:s,tokenAddress:o,prevBalance:r,timeoutMs:a=3e4,pollIntervalMs:i=1500}){const c=Date.now()+a;for(await new Promise(l=>setTimeout(l,800));Date.now()<c;){try{if(await So(e,n,s,o)>r)return}catch(l){console.warn("[SpiceLockModal] spice balance poll failed:",l?.message)}await new Promise(l=>setTimeout(l,i))}console.warn("[SpiceLockModal] Spicenet indexer did not reflect deposit within timeout; proceeding with intent")}function Vn(e,n){const s=Math.floor(Date.now()/1e3)+600,o=W.hashChainBatches(n);return{user:e,intents:[{mode:"7702",signatureType:"ecdsa",signature:"0x00",nbf:0,exp:s,chainBatches:o.map((r,a)=>({hash:r.hash,chainId:r.chainId,tokenTransfers:n[a].domain==="spicenet"?[]:n[a].tokenTransfers??[],calls:r.calls}))}]}}function qn(e,n,s){if(e.some(c=>c.domain==="spicenet"))return e;const o=s?.intents.flatMap(c=>c.batches),r=c=>c.from==="escrow",a=e.flatMap(c=>(c.tokenTransfers??[]).filter(r).map(l=>({chainId:c.chainId,token:M.getAddress(l.token),to:M.getAddress(l.to),amount:BigInt(o?.find(u=>u.chainId===c.chainId)?.totalDebit??l.amount)})));if(a.length===0)return e;const i=BigInt(Math.floor(Date.now()/1e3))+3600n;return[{chainId:W.SPICENET_NATIVE_CHAIN_ID,domain:"spicenet",tokenTransfers:[],calls:a.map((c,l)=>{const u=M.keccak256(M.encodeAbiParameters([{type:"address"},{type:"address"},{type:"uint256"},{type:"uint256"},{type:"uint256"}],[n,c.token,c.amount,BigInt(c.chainId),BigInt(Date.now()+l)]));return{to:"0x0000000000000000000000000000000000000000",value:0n,data:M.encodeFunctionData({abi:W.spicenetAbi,functionName:"createWithdrawalRequest",args:[{chainId:`evm:${c.chainId}`,idempotenceKey:u,nbf:0n,exp:i,metadata:"{}",transfers:[{token:c.token.toLowerCase(),to:c.to,amount:c.amount}]}]})}})},...e]}function Yn(e,n){const s=e.selectedAsset?.asset;if(!s||!e.selectedAsset?.amount)throw new Error("Select an asset and enter an amount");const o=n?.netAmount??M.parseUnits(e.selectedAsset.amount,s.decimals),r=n?.grossAmount??o,a=e.resolveLockBatches({amount:M.formatUnits(o,s.decimals),amountWei:o,grossAmount:M.formatUnits(r,s.decimals),grossAmountWei:r});if(!n||n.feeAmount<=0n)return a;let i=!1;return a.map(c=>{if(i)return c;const l=c.tokenTransfers?.find(u=>u.from==="escrow");return l?(i=!0,{...c,calls:[{to:l.token,value:0n,data:M.encodeFunctionData({abi:m._,functionName:"transfer",args:[yn,n.feeAmount]})},...c.calls]}):c})}async function Io(e,n){const s=e.isSemi7702&&e.providerEmbeddedAddress||e.address;if(!e.isConnected||!s)throw new Error("Please connect your wallet to continue");if(n.length===0)throw new Error("No lock batches configured");if(!e.ready||!e.authenticated)throw new Error(`Please authenticate with ${e.provider||"wallet provider"} to continue`);const o=[...new Set(n.filter(h=>h.domain!=="spicenet").map(h=>h.chainId))],r=[];for(const h of o){const g=m.getClientForChain(h),b=m.getDelegateContractAddress(h),C=await W.getAccountNonce(s,g),y=await e.actions.signAuthorization({contractAddress:b,chainId:h,nonce:Number(C)});r.push(y)}const a=W.hashChainBatches(n),i=Math.floor(Date.now()/1e3)+60*10,c=a.map(h=>h.hash),l=M.keccak256(M.encodeAbiParameters([{type:"string"},{type:"uint256"},{type:"uint256"},{type:"bytes32[]"}],["ecdsa",0n,BigInt(i),c])),u=await e.actions.signMessage({raw:l}),p=typeof u=="string"?u:u.signature;if(!p)throw new Error("Failed to sign intent authorization");const f={mode:"7702",signatureType:"ecdsa",signature:p,nbf:0,exp:i,chainBatches:a.map((h,g)=>{const b=n[g],C=b.domain==="spicenet";return{hash:h.hash,chainId:h.chainId,tokenTransfers:C?[]:b.tokenTransfers??[],calls:h.calls}})},x=await m.relayerService.createAction({user:s,chainAuthorizations:r.map(h=>({r:h.r,s:h.s,yParity:h.yParity,address:h.address,chainId:Number(h.chainId),nonce:Number(h.nonce)})),intents:[f]});if(x){const h=m.createInitialSteps(n,m.getChainName),[g,b]=x.intentIds[0].split("/"),C=parseInt(b||"0",10),y=x.intentIds[0];e.startStatusPolling(x.intentIds[0],h),await uo({actionId:g,intentIndex:C,intentId:y,totalSteps:n.length,isSpicenetStep:w=>n[w]?.domain==="spicenet",maxExecuteAttemptsForStep:w=>n[w]?.domain==="spicenet"?6:3,maxPolls:180})}}async function Ao(e){let n=Yn(e);if(n.length===0)throw new Error("No lock batches configured");const s=e.isSemi7702&&e.providerEmbeddedAddress||e.address;if(!e.isConnected||!s)throw new Error("Please connect your wallet to continue");let o=qn([...n],s),r;for(let a=0;a<4;a+=1){const i=await m.relayerService.estimateActionFees(Vn(s,o)),c=Qn(i,{symbol:e.selectedAsset?.asset.symbol??"",decimals:e.selectedAsset?.asset.decimals??18});if(!c)break;const l={grossAmount:c.grossAmount,netAmount:c.netAmount,feeAmount:c.totalFee??0n},u=r?.grossAmount===l.grossAmount&&r?.netAmount===l.netAmount&&r?.feeAmount===l.feeAmount;if(r=l,n=Yn(e,r),o=qn([...n],s,i),u)break}await Io(e,o)}async function Ua(e){if(!e.selectedAsset?.asset||!e.selectedAsset.amount)throw new Error("Select an asset and enter an amount");if(!e.address||!e.embeddedWalletAddress)throw new Error("Embedded wallet not connected");const n=e.selectedAsset.asset,s=M.parseUnits(e.selectedAsset.amount,n.decimals),o=e.escrowAddress||m.getDelegateContractAddress(e.lockChainId),r=m.relayerService.getBaseUrl(),a=W.normalizeNativeTokenAddress(n.address);let i=0n;try{i=await So(r,e.embeddedWalletAddress,e.lockChainId,a)}catch(f){console.warn("[SpiceLockModal] could not snapshot spice balance pre-deposit:",f?.message)}const c=await e.actions.getEthereumProvider();await m.ensureWalletOnChain(c,e.lockChainId);const l=m.getChainConfig(e.lockChainId),u=M.createWalletClient({account:e.embeddedWalletAddress,transport:M.custom(c),chain:l?.viemChain});let p;if(n.isNative||W.isNativeToken(n.address))p=await u.sendTransaction({to:o,value:s,chain:l?.viemChain});else{const f=M.encodeFunctionData({abi:m._,functionName:"transfer",args:[o,s]});p=await u.sendTransaction({to:n.address,data:f,chain:l?.viemChain})}if((await m.getClientForChain(e.lockChainId).waitForTransactionReceipt({hash:p,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Transfer to escrow failed");await Pa({apiBaseUrl:r,user:e.embeddedWalletAddress,chainId:e.lockChainId,tokenAddress:a,prevBalance:i}),await e.refreshSpiceAssets(),e.refreshWalletAssets(),await Ao(e)}async function za(e){if(!e.selectedAsset?.asset||!e.selectedAsset.amount)throw new Error("Select an asset and enter an amount");if(!e.externalWalletAddress||!e.externalWallet)throw new Error("Please connect your external wallet to continue");const n=e.embeddedWalletAddress||e.providerEmbeddedAddress;if(!n)throw new Error("Embedded wallet not available \u2014 sign in to create one before locking");if(e.onLockExecute){const w=e.resolveLockBatches();if(w.length===0)throw new Error("No lock batches configured");const v=e.selectedAsset.asset,k=M.parseUnits(e.selectedAsset.amount,v.decimals),A=await e.onLockExecute({asset:v,amount:e.selectedAsset.amount,amountWei:k,lockDurationMonths:e.selectedDuration?.months??0,chainBatches:w});A&&e.onLockSuccess?.(A);return}const s=e.resolveLockBatches();if(s.length===0)throw new Error("No lock batches configured");const o=e.selectedAsset.asset,r=M.parseUnits(e.selectedAsset.amount,o.decimals),a=o.chainId,i=e.escrowAddress||W.ESCROW_ADDRESS,c=W.normalizeNativeTokenAddress(o.address),l=o.isNative||W.isNativeToken(c);let u=null;for(const w of s){const v=w.tokenTransfers?.find(k=>k.from==="escrow");if(v){u={batch:w,to:v.to,token:v.token,amount:BigInt(v.amount)};break}}const p=await e.externalWallet.getEthereumProvider();let f=null;try{const w=await p.request({method:"eth_chainId"});f=parseInt(w,16)}catch{f=null}f!==a&&await m.ensureWalletOnChain(p,a);const x=m.getChainConfig(a),h=M.createWalletClient({account:e.externalWalletAddress,chain:x?.viemChain,transport:M.custom(p)}),g=l?await h.sendTransaction({to:n,value:r,chain:x?.viemChain}):await h.sendTransaction({to:c,data:M.encodeFunctionData({abi:m._,functionName:"transfer",args:[n,r]}),chain:x?.viemChain});if((await m.getClientForChain(a).waitForTransactionReceipt({hash:g,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Transfer to embedded wallet failed");const b={chainId:a,calls:l?[{to:i,value:r,data:"0x"}]:[{to:c,value:0n,data:M.encodeFunctionData({abi:m._,functionName:"transfer",args:[i,r]})}]};let C=null;if(u){if(!e.buildSpicenetBatch)throw new Error("Lock batches declare an escrow-backed ERC20 payout but no `buildSpicenetBatch` callback was provided. The relayer rejects 7702 intents with escrow-backed ERC20 transfers unless the intent includes a Spicenet batch authorising the withdrawal.");const w=e.buildSpicenetBatch({userAddress:n,destinationChainId:u.batch.chainId,deliveryToken:u.token,deliveryAmount:u.amount,deliveryRecipient:u.to});w&&(C={...w,domain:w.domain??"spicenet"})}const y=[b];C&&y.push(C),y.push(...s),await Io(e,y)}async function La(e){if(!e.selectedAsset?.asset||!e.selectedAsset.amount||!e.requiresRelayerFeeEstimate)return null;if(e.isSemi7702){const i=e.embeddedWalletAddress||e.providerEmbeddedAddress;if(!i)throw new Error("Embedded wallet not available \u2014 sign in to create one before locking");const c=e.resolveLockBatches();if(c.length===0)throw new Error("No lock batches configured");const l=e.selectedAsset.asset,u=M.parseUnits(e.selectedAsset.amount,l.decimals),p=l.chainId,f=e.escrowAddress||W.ESCROW_ADDRESS,x=W.normalizeNativeTokenAddress(l.address),h=l.isNative||W.isNativeToken(x);let g=null;for(const v of c){const k=v.tokenTransfers?.find(A=>A.from==="escrow");if(k){g={batch:v,to:k.to,token:k.token,amount:BigInt(k.amount)};break}}const b={chainId:p,calls:h?[{to:f,value:u,data:"0x"}]:[{to:x,value:0n,data:M.encodeFunctionData({abi:m._,functionName:"transfer",args:[f,u]})}]};let C=null;if(g){if(!e.buildSpicenetBatch)throw new Error("Lock batches declare an escrow-backed payout but no `buildSpicenetBatch` callback was provided.");const v=e.buildSpicenetBatch({userAddress:i,destinationChainId:g.batch.chainId,deliveryToken:g.token,deliveryAmount:g.amount,deliveryRecipient:g.to});v&&(C={...v,domain:v.domain??"spicenet"})}const y=[b];C&&y.push(C),y.push(...c);const w=await m.relayerService.estimateActionFees(Vn(i,y));return Qn(w,{symbol:e.selectedAsset.asset.symbol,decimals:e.selectedAsset.asset.decimals})}const n=e.address;if(!e.isConnected||!n)throw new Error("Please connect your wallet to continue");let s=Yn(e);if(s.length===0)throw new Error("No lock batches configured");let o=qn([...s],n),r=null;for(let i=0;i<4;i+=1){const c=await m.relayerService.estimateActionFees(Vn(n,o)),l=Qn(c,{symbol:e.selectedAsset.asset.symbol,decimals:e.selectedAsset.asset.decimals});if(!l)return null;const u={grossAmount:l.grossAmount,netAmount:l.netAmount,feeAmount:l.totalFee??0n},p=r?.grossAmount===l.grossAmount&&r?.netAmount===l.netAmount&&r?.totalFee===l.totalFee;if(r=l,s=Yn(e,u),o=qn([...s],n,c),p)break}if(r)return r;const a=await m.relayerService.estimateActionFees(Vn(n,o));return Qn(a,{symbol:e.selectedAsset.asset.symbol,decimals:e.selectedAsset.asset.decimals})}async function Oa(e){if(!e.selectedAsset?.asset||!e.selectedAsset.amount)throw new Error("Select an asset and enter an amount");if(!e.externalWalletAddress||!e.externalWallet)throw new Error("Please connect your external wallet to continue");const n=e.resolveLockBatches();if(n.length===0)throw new Error("No lock batches configured");const s=n.find(u=>u.chainId===e.lockChainId)||n[0];if(!s)throw new Error("No lock batch for lock chain");const o=await e.externalWallet.getEthereumProvider();let r=null;try{const u=await o.request({method:"eth_chainId"});r=parseInt(u,16)}catch{r=null}r!==e.lockChainId&&await m.ensureWalletOnChain(o,e.lockChainId);const a=m.getChainConfig(e.lockChainId),i=M.createWalletClient({account:e.externalWalletAddress,chain:a?.viemChain,transport:M.custom(o)}),c=m.getClientForChain(e.lockChainId);let l;for(const u of s.calls){const p=await i.sendTransaction({to:u.to,data:u.data,value:u.value,chain:a?.viemChain});if((await c.waitForTransactionReceipt({hash:p,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Lock transaction failed");l=p}l&&e.onLockSuccess?.(l)}async function Ha(e){if(!e.selectedAsset?.asset||e.parsedAmount<=0){e.ui.setError("Select an asset and enter an amount");return}if(e.isInsufficientBalance){e.ui.setError("Insufficient balance. Add more assets.");return}e.ui.setIsExecuting(!0),e.ui.setError(null);const n=s=>{console.error("[SpiceLockModal] lock failed:",s);const o=m.sanitizeError(s,""),r=typeof s?.shortMessage=="string"?s.shortMessage:typeof s?.message=="string"?s.message:"";e.ui.setError(o||r||"Transaction failed. Please try again.")};if(e.isSemi7702){if(e.isSourceDestToken){try{await Oa(e)}catch(s){n(s)}finally{e.ui.setIsExecuting(!1)}return}e.ui.setShowStatusPanel(!0);try{await za(e)}catch(s){n(s)}finally{e.ui.setIsExecuting(!1)}return}e.ui.setShowStatusPanel(!0);try{e.isDirectDeposit&&!e.isSourceDestToken?await Ua(e):await Ao(e)}catch(s){n(s)}finally{e.ui.setIsExecuting(!1)}}const Eo=({isOpen:e,onClose:n,lockBatches:s,lockTokenSymbol:o,lockTokenLogoURI:r,destinationInputHook:a,sourceAssetInputHook:i,lockDurationHook:c,lockChainId:l,durationOptions:u,votingPowerEstimate:p,sourceChains:f,sourceAssets:x=[],escrowAddress:h,includeWalletAssets:g=!1,destinationTokenAddress:b,onLockSuccess:C,onLockExecute:y,sourceToDestinationConversionRate:w,estimatedOutputAmount:v,onAddFunds:k,buildSpicenetBatch:A,styles:S,dark:T=!1})=>{const{theme:N,dark:I,primaryColor:E,dk:j}=m.useSpiceBrand(S,T),B=N.typography.fontFamily,U=d.useContext(m.SpiceFlowProviderContext),D=(U?.mode||"7702")!=="7702",P=I?j.cardBg:S?.assetSelector?.backgroundColor||S?.secondaryBackground||"#e9e9e9",L=I?`1px solid ${j.cardBorder}`:"0.5px solid #A8A8A7",O=I?"12px":"6px",z=I?j.textPrimary:"#111827",q=I?j.textSecondary:"#6b7280",_=d.useMemo(()=>({...S,assetSelector:{...S?.assetSelector,backgroundColor:I?j.cardBg:S?.assetSelector?.backgroundColor,borderRadius:I?"12px":S?.assetSelector?.borderRadius},secondaryBackground:I?j.cardBg:S?.secondaryBackground}),[S,I]),K=d.useMemo(()=>I?{...N,colors:{...N.colors,secondary:j.cardBg,surfaceHover:j.hoverBg,border:j.cardBorder,borderHover:j.inputBorder}}:N,[I,N]),[F,Y]=d.useState(null),[X,$]=d.useState(0),re=c?.selectedDurationIdx??X,ce=c?.setSelectedDurationIdx??$,[ee,Ie]=d.useState(!1),[fe,xe]=d.useState(null),[De,ge]=d.useState(null),[Ae,ie]=d.useState(!1),[ye,H]=d.useState(!1),[ae,pe]=d.useState(null),[me,se]=d.useState(!1),Fe=d.useRef(0),[R,te]=d.useState(!1),[Ce,Se]=d.useState(null);ft.useWalletClient(),ft.useSwitchChain();const{chain:ne,address:Ge}=ft.useAccount();ft.useConfig();const st=d.useRef(ne);d.useEffect(()=>{st.current=ne},[ne]);const ot=Ot(),{isReady:Ee,isAuthenticated:ht,isConnected:yt,address:Je,provider:Et,actions:Dt}=ot,{externalWallet:en,embeddedAddress:wt,externalAddress:Ze}=En(),{intentStatus:Ne,startStatusPolling:ze,clearStatus:it}=Vs({checkStepStatus:(V,le)=>m.relayerService.checkStepStatus(V,le),retryStep:async(V,le)=>{const[Oe,ct]=V.split("/"),_e=parseInt(ct||"0",10);await m.relayerService.executeStep(Oe,_e,le,{action:"execute"})},maxRetries:3}),{assets:vt,refetch:et}=jn({address:Je,supportedChains:f,enabled:yt&&!D,refetchInterval:3e4}),Ct=d.useMemo(()=>{if(x.length===0)return vt;const V=new Set(x.map(le=>le.toLowerCase()));return vt.filter(le=>V.has(le.address.toLowerCase()))},[vt,x]),ue=Lt(),Te=D?Ge||Ze:ue,tt=d.useMemo(()=>{if(!g)return[];const V=new Set,le=[],Oe=ct=>{if(!ct)return;const _e=ct.toLowerCase();V.has(_e)||(V.add(_e),le.push(M.getAddress(ct)))};if(b&&Oe(b),D)for(const ct of x)Oe(ct);return le},[g,D,b,x]),Pt=d.useMemo(()=>tt.map(V=>V.toLowerCase()).sort().join(","),[tt]),ke=d.useMemo(()=>JSON.stringify([...f||[]].sort()),[f]),[kt,nt]=d.useState([]),$e=d.useRef(0),Le=d.useCallback(async()=>{if(!g||!Te||tt.length===0){$e.current++,nt([]);return}const V=++$e.current,le=M.getAddress(Te),Oe=f&&f.length>0?f:[l],ct=tt.map(G=>{const J=G.toLowerCase();for(const de of Oe){const Be=m.getChainConfig(de)?.supportedTokens?.find(Ue=>m.addressesEqual(Ue.address,J));if(Be)return{address:G,chainId:de,configToken:{decimals:Be.decimals,symbol:Be.symbol,name:Be.name,logo:Be.logo}}}return{address:G,chainId:l}}),_e=new Map;for(const G of ct){const J=_e.get(G.chainId)||[];J.push(G),_e.set(G.chainId,J)}const Tt=async(G,J)=>{try{const de=await It.readContract(G,{address:J.address,abi:m._,functionName:"balanceOf",args:[le]});let Be,Ue,Xe,He;if(J.configToken)Be=J.configToken.decimals,Ue=J.configToken.symbol,Xe=J.configToken.name,He=J.configToken.logo;else{const[St,we,Me]=await Promise.all([It.readContract(G,{address:J.address,abi:m._,functionName:"decimals",args:[]}).catch(()=>18),It.readContract(G,{address:J.address,abi:m._,functionName:"symbol",args:[]}).catch(()=>"TOKEN"),It.readContract(G,{address:J.address,abi:m._,functionName:"name",args:[]}).catch(()=>"TOKEN")]);Be=Number(St),Ue=we,Xe=Me}const Ye=!!b&&m.addressesEqual(J.address,b)&&J.chainId===l;Ye&&r&&(He=r),Ye&&o&&!J.configToken&&(Ue==="TOKEN"&&(Ue=o),Xe==="TOKEN"&&(Xe=o));const gt=parseFloat((Number(de)/Math.pow(10,Be)).toFixed(6));return{address:J.address,name:Xe,symbol:Ue,decimals:Be,balance:de,balanceFormatted:gt,balanceUsd:0,logoURI:He,isNative:!1,chainId:J.chainId}}catch{return null}},nn=await Promise.all(Array.from(_e.entries()).map(async([G,J])=>{let de;try{de=m.getClientForChain(G)}catch{return[]}const Be=[],Ue=[];for(const He of J){const Ye=Be.length;Be.push({address:He.address,abi:m._,functionName:"balanceOf",args:[le]}),He.configToken||Be.push({address:He.address,abi:m._,functionName:"decimals",args:[]},{address:He.address,abi:m._,functionName:"symbol",args:[]},{address:He.address,abi:m._,functionName:"name",args:[]}),Ue.push({start:Ye,item:He})}let Xe=null;try{Xe=await de.multicall({contracts:Be})}catch{Xe=null}return Xe?Ue.map(({start:He,item:Ye})=>{const gt=Xe[He],St=gt?.status==="success"?gt.result:0n;let we,Me,Ut,qt;if(Ye.configToken)we=Ye.configToken.decimals,Me=Ye.configToken.symbol,Ut=Ye.configToken.name,qt=Ye.configToken.logo;else{const pn=Xe[He+1],ve=Xe[He+2],pt=Xe[He+3];we=pn?.status==="success"?Number(pn.result):18,Me=ve?.status==="success"?ve.result:"TOKEN",Ut=pt?.status==="success"?pt.result:Me}const sn=!!b&&m.addressesEqual(Ye.address,b)&&Ye.chainId===l;sn&&r&&(qt=r),sn&&o&&!Ye.configToken&&(Me==="TOKEN"&&(Me=o),Ut==="TOKEN"&&(Ut=o));const on=parseFloat((Number(St)/Math.pow(10,we)).toFixed(6));return{address:Ye.address,name:Ut,symbol:Me,decimals:we,balance:St,balanceFormatted:on,balanceUsd:0,logoURI:qt,isNative:!1,chainId:Ye.chainId}}):(await Promise.all(J.map(He=>Tt(de,He)))).filter(He=>He!==null)}));if(V!==$e.current)return;const Z=nn.flat();nt(Z)},[g,Te,Pt,ke,l,b,r,o]);d.useEffect(()=>{if(!g){nt([]);return}Le();const V=setInterval(()=>{Le()},15e3);return()=>clearInterval(V)},[Le,g]);const Ht=d.useCallback(()=>{Le()},[Le]),mt=d.useMemo(()=>kt.filter(V=>V.balance>0n),[kt]),tn=d.useMemo(()=>{if(D)return mt.map(le=>({...le,_source:"wallet"}));if(!g)return Ct;const V=[];for(const le of mt)V.push({...le,_source:"wallet"});for(const le of Ct)V.push({...le,_source:"spice"});return V},[D,g,mt,Ct]),jt=d.useRef(null),Qe=d.useRef(null);d.useEffect(()=>{Qe.current=F},[F]),d.useEffect(()=>{e||(Y(null),xe(null),ge(null),ie(!1),H(!1),pe(null),Ie(!1),te(!1),Se(null),se(!1),it())},[e,it]),d.useEffect(()=>{a&&a.assetAmount!==(F?.amount||"")&&Y(V=>V&&{...V,amount:a.assetAmount})},[a?.assetAmount]),d.useEffect(()=>{i&&i.assetAmount!==(F?.amount||"")&&Y(V=>V&&{...V,amount:i.assetAmount})},[i?.assetAmount]),d.useEffect(()=>{if(!D&&Ne?.overallStatus==="success"&&Ne.intentId&&jt.current!==Ne.intentId&&Je&&Ne.steps.find(V=>V.transactionHash)?.transactionHash){jt.current=Ne.intentId;const V=Qe.current;if(!V?.asset||!V.amount||V.asset._source==="wallet"||M.parseUnits(V.amount,V.asset.decimals)===0n)return;et()}},[Ne,Je,l,et,D]);const he=parseFloat(F?.amount||"")||0,rt=d.useMemo(()=>F?.asset?F.asset._source==="wallet"?F.asset.balanceFormatted??0:Ct.find(V=>m.addressesEqual(V.address,F.asset.address)&&V.chainId===F.asset.chainId)?.balanceFormatted??0:0,[F?.asset,Ct]),xt=he>0&&(ae?parseFloat(M.formatUnits(ae.grossAmount,ae.decimals))>rt:he>rt),lt=c?.selectedDuration??u[re]??u[0],Re=d.useMemo(()=>!F?.asset||!b?!1:m.addressesEqual(F.asset.address,b)&&F.asset.chainId===l,[F?.asset,b,l]),ut=d.useMemo(()=>he<=0?0:Re?he:!w||w<=0?0:he/w,[he,w,Re]),Ve=d.useMemo(()=>ut<=0?null:ut.toLocaleString(void 0,{maximumFractionDigits:2}),[ut]),Bt=p&&ut>0&&lt?p(ut,lt.months):void 0,Ft=d.useMemo(()=>he<=0?"$0.00":Re&&w?(he*w).toLocaleString(void 0,{style:"currency",currency:"USD",maximumFractionDigits:2}):!w||w<=0?"$0.00":he.toLocaleString(void 0,{style:"currency",currency:"USD",maximumFractionDigits:2}),[he,w,Re]),Wt=d.useMemo(()=>{if(!Ve)return null;const V=parseFloat(Ve.replace(/,/g,""));return Re&&w?(V*w).toLocaleString(void 0,{maximumFractionDigits:2}):w?(V*w).toLocaleString(void 0,{maximumFractionDigits:2}):null},[Ve,w,Re]),Qt=d.useCallback(V=>{Y(le=>({asset:V,amount:le?.asset?.address===V.address&&le?.asset?.chainId===V.chainId&&le.amount||""})),xe(null),ge(null),H(!1),pe(null),i?.setSelectedAsset&&i.setSelectedAsset({symbol:V.symbol,address:V.address,decimals:V.decimals,chainId:V.chainId})},[i?.setSelectedAsset]),Vt=d.useCallback(V=>{Y(le=>le&&{...le,amount:V}),xe(null),ge(null),H(!1),pe(null),a&&a.setAssetAmount(V),i&&i.setAssetAmount(V)},[a,i]),Q=d.useCallback(V=>{if(typeof s=="function"){if(!F?.asset||!F.amount)throw new Error("Select an asset and enter an amount");return s({asset:F.asset,amount:V?.amount??F.amount,amountWei:V?.amountWei??M.parseUnits(F.amount,F.asset.decimals),grossAmount:V?.grossAmount,grossAmountWei:V?.grossAmountWei,feeAdjusted:!!V})}return s},[s,F]),oe=d.useRef(null),be=d.useMemo(()=>!F?.asset||he<=0?!1:D?!Re&&!y:!0,[F,he,D,Re,y]),We=d.useCallback(()=>La(oe.current),[]);d.useEffect(()=>{if(!e||ee)return;if(!F?.asset||he<=0){ge(null),ie(!1),H(!1),pe(null);return}if(!be){ge(null),ie(!1),H(!0),pe(null);return}let V=!1;const le=async()=>{const _e=++Fe.current;ge(null),H(!1),ie(!0);try{const Tt=await We();if(V||Fe.current!==_e)return;ge(null),H(!0),pe(Tt)}catch(Tt){if(V||Fe.current!==_e)return;ge(m.sanitizeError(Tt,"Unable to calculate fees for this lock.")),H(!1)}finally{!V&&Fe.current===_e&&ie(!1)}},Oe=window.setTimeout(()=>{le()},250),ct=window.setInterval(()=>{le()},1e4);return()=>{V=!0,clearTimeout(Oe),window.clearInterval(ct),ie(!1),H(!1)}},[e,ee,F,he,be,We]),d.useEffect(()=>{if(Ne?.overallStatus==="success"){const V=Ne.steps.find(le=>le.transactionHash);C?.(V?.transactionHash)}},[Ne?.overallStatus,C]);const qe=g&&F?.asset?._source==="wallet"&&F?.asset?.chainId===l,at=d.useCallback(()=>Ha(oe.current),[]),dt=!!F?.asset&&he>0&&!xt&&!ee&&(!be||ye&&!Ae&&!De),Pe=fe||De,je=t.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:"6px"},children:[t.jsx(fs,{color:q}),t.jsxs("p",{style:{fontSize:"13px",color:q,margin:0,lineHeight:"1.5"},children:["Add ",o," by converting assets from your account"]})]});if(oe.current={selectedAsset:F,parsedAmount:he,selectedDuration:lt,isInsufficientBalance:xt,isSemi7702:D,isSourceDestToken:Re,isDirectDeposit:qe,requiresRelayerFeeEstimate:be,address:Je,embeddedWalletAddress:ue,providerEmbeddedAddress:wt,externalWallet:en,externalWalletAddress:Ge,isConnected:yt,ready:Ee,authenticated:ht,provider:Et,actions:Dt,lockChainId:l,escrowAddress:h,onLockExecute:y,onLockSuccess:C,buildSpicenetBatch:A,resolveLockBatches:Q,startStatusPolling:ze,refreshSpiceAssets:et,refreshWalletAssets:Ht,ui:{setError:xe,setIsExecuting:Ie,setShowStatusPanel:se}},!e)return null;const Ke={backgroundColor:P,border:L,borderRadius:O,padding:"16px",marginBottom:"16px"};return t.jsx(Xt,{isOpen:e,onClose:n,title:`Add ${o} to your account`,subtitle:je,styles:S,dark:I,footerLinkText:"Spicenet accounts \u2192",overlayContent:R?t.jsx("div",{}):void 0,children:t.jsxs("div",{style:{padding:"0 24px 8px 24px",position:"relative"},children:[t.jsxs("div",{style:{marginBottom:"12px"},children:[k&&t.jsx("div",{style:{display:"flex",justifyContent:"flex-end",marginBottom:"6px"},children:t.jsx(hs,{onClick:k,color:E,fontFamily:B})}),t.jsx("div",{style:{marginTop:"10px",fontSize:"13px",color:q,fontFamily:B},children:t.jsx(An,{assets:tn,selectedAsset:F??void 0,onAssetSelect:Qt,onAmountChange:Vt,label:"Amount",showBalance:!0,showMaxButton:!0,theme:K,styles:_})}),t.jsx("div",{style:{marginTop:"6px",paddingLeft:"4px",fontSize:"13px",color:q,fontFamily:B},children:Ft})]}),t.jsxs("div",{style:Ke,children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:"16px",borderBottom:I?`1px solid ${j.cardBorder}`:"1px solid #e5e7eb"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px"},children:[r?t.jsx("img",{src:r,alt:o,style:{width:"32px",height:"32px",borderRadius:"50%",objectFit:"cover"}}):t.jsx("div",{style:{width:"32px",height:"32px",borderRadius:"50%",backgroundColor:I?j.inputBg:"#d1d5db",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"12px",fontWeight:700,color:z},children:o.slice(0,2)}),t.jsx("span",{style:{fontSize:"16px",fontWeight:600,color:z,fontFamily:B},children:o})]}),t.jsxs("div",{style:{textAlign:"right"},children:[t.jsx("div",{style:{fontSize:"22px",fontWeight:700,color:z,fontFamily:B,lineHeight:1.1},children:Ve??"0.00"}),t.jsxs("div",{style:{fontSize:"12px",color:q,fontFamily:B,marginTop:"2px"},children:["~$",Wt??"0.00"]})]})]}),t.jsxs("div",{style:{paddingTop:"16px",paddingBottom:"16px",borderBottom:I?`1px solid ${j.cardBorder}`:"1px solid #e5e7eb"},children:[t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"16px"},children:[t.jsx("span",{style:{fontSize:"15px",fontWeight:500,color:q,fontFamily:B},children:"Lock Duration"}),t.jsx(Gt,{color:q})]}),t.jsx(Ta,{options:u,selectedIndex:re,onSelect:ce,primaryColor:E,dark:I,textPrimary:z,textSecondary:q})]}),t.jsxs("div",{style:{paddingTop:"12px",display:"flex",flexDirection:"column",gap:"8px"},children:[t.jsx(Ma,{durationMonths:lt?.months,fontFamily:B,dark:I,textPrimary:z,textSecondary:q}),p&&t.jsx(Da,{votes:Bt,fontFamily:B,dark:I,textPrimary:z,textSecondary:q})]})]}),be&&t.jsx(Wn,{fontFamily:B,textPrimary:z,textSecondary:q,cardBg:P,cardBorder:L,resolvedDark:I,darkCardBorder:j.cardBorder,primaryColor:E,feePreview:ae,isLoading:Ae,errorText:De}),Pe&&t.jsx(xn,{variant:"error",palette:j,fontFamily:B,style:{marginBottom:"12px"},children:Pe}),t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:at,disabled:!dt,loading:ee,dark:I,styles:{...S,button:{...S?.button,backgroundColor:E}},children:ee?qe&&!Re?"DEPOSITING...":Re?"LOCKING...":"CONVERTING...":Ae&&be?"CALCULATING FEES...":qe&&!Re?`DEPOSIT ${o}`:Re?`LOCK ${o}`:`CONVERT TO ${o}`}),t.jsx(Wa,{isOpen:R,data:Ce,isLocking:ee,lockError:Pe,onContinue:at,onClose:()=>te(!1),primaryColor:E,fontFamily:B,dark:I}),Ne&&me&&t.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:10,backgroundColor:I?j.shell:"white",borderRadius:O,padding:"16px 0"},children:t.jsx(ys,{type:"deposit",isOpen:!!Ne&&Ne.overallStatus!=="processing",isProcessing:ee||Ne?.overallStatus==="processing",closeOnComplete:!1,onRetryTx:()=>{it(),se(!1),at()},onNewTx:()=>{it(),se(!1),Y(null),jt.current=null,et(),Ht()},onClose:()=>{it(),se(!1)},onComplete:()=>{it(),se(!1),Y(null),jt.current=null,et(),Ht()},results:Ne?.overallStatus==="success"||Ne?.overallStatus==="failed"?Ne.steps.map(V=>({asset:{symbol:F?.asset?.symbol||o,address:F?.asset?.address||""},txHash:V.transactionHash||"",success:V.status==="success",amount:F?.amount})):void 0,chainName:m.getChainName(l),explorerUrl:m.getExplorerUrl(l,"").replace(/\/tx\/.*$/,"")||void 0,theme:N,styles:S,dark:I})})]})})};async function Zn(e,n,s){if(!n)return[e];const o=await n(s);return o?[o,e]:[e]}function jo(e,n,s){if(n===s)return e;if(n<s)return e*10n**BigInt(s-n);const o=10n**BigInt(n-s);return(e+o-1n)/o}async function Qa(e,n){const{currentPaymentAmount:s,destinationToken:o,embeddedWalletAddress:r,providerEmbeddedAddress:a,address:i,isNon7702:c,isPayMode:l,resolvedChainId:u,buildActionCalls:p,feeExecutionMode:f,buildSpicenetBatch:x,selectedAsset:h,needsSwap:g,exactOutputSwap:b,resolvedTokenIn:C}=e,y=M.parseUnits(s,o.decimals),w=n?.actionAmountOverride??y,v=r||a||(c?void 0:i);if(!v)throw new Error("Embedded wallet address is not available. Please sign in and try again.");const k={userAddress:v,chainId:u,destinationToken:o.address,grossAmount:n?.fundingAmountOverride??y,netAmount:w,combinedFeeAmount:n?.actionContextOverride?.combinedFeeAmount,feeExecutionMode:f,feeBreakdown:n?.actionContextOverride?.feeBreakdown,...n?.actionContextOverride},A=p(w,k),S={chainId:u,calls:A},T=(!l&&!c?!0:h?.asset?._source==="spice")||c,N=(I,E)=>({token:I,from:c?"solver":"escrow",to:v,amount:E});if(y===0n)return[S];if(g&&b){const I=C??Jt(h.asset,u)??h.asset.address,E=n?.fundingAmountOverride??b.amountInMax,j=T?[N(I,E)]:[],B={to:I,value:0n,data:M.encodeFunctionData({abi:M.erc20Abi,functionName:"approve",args:[b.calls[0]?.to,b.amountInMax]})},U={chainId:u,calls:[B,...b.calls,...A],tokenTransfers:[...j,...S.tokenTransfers??[]]};return T?Zn(U,x,{userAddress:v,destinationChainId:u,deliveryToken:I,deliveryAmount:E,deliveryRecipient:v,sourceAsset:h.asset}):[U]}if(T){const I=C??Jt(h.asset,u)??o.address,E=n?.fundingAmountOverride??y,j={...S,tokenTransfers:[N(I,E),...S.tokenTransfers??[]]};return Zn(j,x,{userAddress:v,destinationChainId:u,deliveryToken:I,deliveryAmount:E,deliveryRecipient:v,sourceAsset:h.asset})}return[S]}async function Va(e,n){const{selectedAsset:s,embeddedWalletAddress:o,resolvedChainId:r,destinationToken:a,buildActionCalls:i,feeExecutionMode:c,buildSpicenetBatch:l,isPayMode:u,isNon7702:p,needsSwap:f,resolvedSwap:x,quoteAmountOut:h,resolvedTokenIn:g}=e;if(!s?.asset||!o)return[];const b=M.parseUnits(s.amount,s.asset.decimals),C=n?.fundingAmountOverride??b,y=n?.actionAmountOverride??b,w={userAddress:o,chainId:r,destinationToken:a.address,grossAmount:C,netAmount:y,combinedFeeAmount:n?.actionContextOverride?.combinedFeeAmount,feeExecutionMode:c,feeBreakdown:n?.actionContextOverride?.feeBreakdown,...n?.actionContextOverride},v=i(y,w);if(!(!u&&!p||s.asset?._source==="spice"))return[{chainId:r,calls:v}];const k=(T,N)=>({token:T,from:"escrow",to:o,amount:N});if(f){if(!g)throw new Error("Swap input token could not be resolved");if(!x||h===null)throw new Error("Swap quote not available yet")}if(f&&x&&h&&g){const T=i(n?.actionAmountOverride??h,{...w,netAmount:n?.actionAmountOverride??h}),N={chainId:r,calls:[...x.calls,...T],tokenTransfers:[k(g,C)]};return Zn(N,l,{userAddress:o,destinationChainId:r,deliveryToken:g,deliveryAmount:C,deliveryRecipient:o,sourceAsset:s.asset})}const A=g??Jt(s.asset,r)??a.address,S={chainId:r,calls:v,tokenTransfers:[k(A,c==="user-transfer"?y:C)]};return Zn(S,l,{userAddress:o,destinationChainId:r,deliveryToken:A,deliveryAmount:C,deliveryRecipient:o,sourceAsset:s.asset})}async function qa(e,n,s,o,r){let a=e;for(let i=0;i<4;i++){const c=await n(a),l=await o(c,s,a,r),u=ba(l);if(u===null||u>=e)return a;const p=a-u,f=e+p;if(f<=a)return a;a=f}return a}async function Ya(e){const{selectedAsset:n,isPayMode:s,parsedAmount:o,needsSwap:r,exactOutputSwap:a,isNon7702:i,isSourceDestToken:c,currentPaymentAmount:l,destinationToken:u,feeExecutionMode:p,resolvedTokenIn:f,embeddedWalletAddress:x,providerEmbeddedAddress:h,resolvedChainId:g,isConnected:b,address:C,ready:y,authenticated:w,isDirect:v,resolvedSwap:k,isQuoting:A,executionTokenAddress:S,buildPayChainBatches:T,buildSupplyChainBatches:N,estimateGasless:I,estimateRequiredGrossFunding:E}=e;if(!n?.asset)return null;if(s){if(o<=0||r&&!a||i&&c)return null;const P=M.parseUnits(l,u.decimals),L=f||Jt(n.asset,g)||n.asset.address||u.address,O={chainId:g,tokenAddress:L,symbol:W.getTokenByAddress(L,g)?.symbol??n.asset.symbol,decimals:W.getTokenByAddress(L,g)?.decimals??n.asset.decimals};if(i){const X=x||h;if(!X)return null;const $=r?a?.amountInMax??0n:P;if($===0n)return null;const re=await E($,Ie=>T({fundingAmountOverride:Ie}),L,{userOverride:X,useCustomTransfers:!0}),ce=await T({fundingAmountOverride:re}),ee=await I(ce,L,re,{userOverride:X,useCustomTransfers:!0,feeExecutionMode:p});return bn(ee,O)}if(!b||!C||!y||!w)return null;const z=r?a?.amountInMax??0n:P;if(z===0n)return null;const q=await E(z,X=>T({fundingAmountOverride:X}),L,{useCustomTransfers:!0});let _=await T({fundingAmountOverride:q});const K=await I(_,L,q,{useCustomTransfers:!0,feeExecutionMode:p}),F=bn(K,O)?.grossAmount??q;F!==q&&(_=await T({fundingAmountOverride:F}));const Y=await I(_,L,F,{useCustomTransfers:!0,feeExecutionMode:p});return bn(Y,O)}if(o<=0||!x||!v&&!k&&!A||A)return null;const j=M.parseUnits(n.amount,n.asset.decimals),B=await N();if(B.length===0)return null;const U=B.some(P=>P.tokenTransfers?.length),D=await I(B,S,j,U?{useCustomTransfers:!0,feeExecutionMode:p}:p?{feeExecutionMode:p}:void 0);return bn(D,{chainId:g,tokenAddress:S,symbol:W.getTokenByAddress(S,g)?.symbol??u.symbol,decimals:W.getTokenByAddress(S,g)?.decimals??u.decimals})}async function Za(e){if(!e.selectedAsset?.asset||e.parsedAmount<=0){e.ui.setError("Select an asset and enter an amount");return}if(e.isInsufficientBalance){e.ui.setError("Insufficient balance");return}if(!e.embeddedWalletAddress){e.ui.setError("Wallet not ready");return}e.ui.setIsExecuting(!0),e.ui.setError(null),e.ui.setStep("signing-delegation"),e.ui.setStatusMsg("Building transaction..."),e.ui.setTxHash(null),e.refs.spiceDepositSubmittedRef.current=!1;const n=new AbortController;e.refs.abortControllerRef.current=n;try{const s=M.parseUnits(e.selectedAsset.amount,e.selectedAsset.asset.decimals);let o=await e.gasless.buildSupplyChainBatches();if(e.buildSpicenetBatch&&!e.isPayMode&&!e.isNon7702&&!o.some(l=>W.isSpicenetChainId(l.chainId)))throw new Error("Spice-funded supplies must include a Spicenet funding batch before the destination chain batch.");const r=o.some(l=>l.tokenTransfers?.length)?{useCustomTransfers:!0,feeExecutionMode:e.feeExecutionMode}:e.feeExecutionMode?{feeExecutionMode:e.feeExecutionMode}:void 0;let a=s,i=e.feeExecutionMode==="user-transfer"?s:void 0,c;for(let l=0;l<4;l+=1){const u=await e.gasless.estimateGasless(o,e.executionTokenAddress,a,r),p=bn(u,{chainId:e.resolvedChainId,tokenAddress:e.executionTokenAddress,symbol:W.getTokenByAddress(e.executionTokenAddress,e.resolvedChainId)?.symbol??e.destinationToken.symbol,decimals:W.getTokenByAddress(e.executionTokenAddress,e.resolvedChainId)?.decimals??e.destinationToken.decimals}),f=p?.grossAmount??a,x=e.feeExecutionMode==="user-transfer"?p?.netAmount??s:void 0;if(f===a&&x===i){a=f;break}a=f,i=x,c=e.feeExecutionMode==="user-transfer"&&p?{grossAmount:p.grossAmount,netAmount:p.netAmount,combinedFeeAmount:p.totalFee,feeExecutionMode:e.feeExecutionMode,feeBreakdown:{spicenetFee:p.spicenetFee,gasFee:p.gasFee,bridgeFee:p.bridgeFee??0n}}:void 0,o=await e.gasless.buildSupplyChainBatches({fundingAmountOverride:a,actionAmountOverride:i,actionContextOverride:c})}e.feeExecutionMode==="user-transfer"&&(o=await e.gasless.buildSupplyChainBatches({fundingAmountOverride:a,actionAmountOverride:i,actionContextOverride:c})),await e.gasless.executeGasless(o,e.executionTokenAddress,a,e.gasless.onProgress,n.signal,r),e.ui.setStep("success"),e.ui.setStatusMsg("Deposit confirmed")}catch(s){const o=s instanceof Error?s:new Error(String(s));if(o.name==="AbortError"||n.signal.aborted){e.ui.setStep("idle");return}const r=o.message||"Transaction failed";e.ui.setStep("error"),e.ui.setStatusMsg(r),e.ui.setError(r),e.onError?.(o)}finally{e.ui.setIsExecuting(!1)}}async function Ka(e){if(!e.selectedAsset?.asset)throw new Error("Select a payment source");if(!e.externalWalletAddress||!e.externalWallet)throw new Error("Please connect your external wallet to continue");const n=M.parseUnits(e.isPayMode?e.currentPaymentAmount:e.selectedAsset.amount,e.destinationToken.decimals),s={userAddress:e.externalWalletAddress,chainId:e.resolvedChainId,destinationToken:e.destinationToken.address},o=e.buildActionCalls(n,s);if(o.length===0)throw new Error("No action calls configured");const r=await e.externalWallet.getEthereumProvider();let a=null;try{const p=await r.request({method:"eth_chainId"});a=parseInt(p,16)}catch{a=null}a!==e.resolvedChainId&&await m.ensureWalletOnChain(r,e.resolvedChainId);const i=m.getChainConfig(e.resolvedChainId),c=M.createWalletClient({account:e.externalWalletAddress,chain:i?.viemChain,transport:M.custom(r)}),l=m.getClientForChain(e.resolvedChainId);let u;for(const p of o){const f=await c.sendTransaction({to:p.to,data:p.data,value:p.value,chain:i?.viemChain});if((await l.waitForTransactionReceipt({hash:f,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Transaction failed");u=f}return u}async function Xa(e){if(!e.selectedAsset?.asset)throw new Error("Select a payment source");if(!e.externalWalletAddress||!e.externalWallet)throw new Error("Please connect your external wallet to continue");const n=e.embeddedWalletAddress||e.providerEmbeddedAddress;if(!n)throw new Error("Embedded wallet not available \u2014 sign in to create one before paying");const s=e.selectedAsset.asset,o=s.chainId,r=M.parseUnits(e.currentPaymentAmount,e.destinationToken.decimals),a=e.selectedIsEquivalent?r:e.exactOutputSwap?e.exactOutputSwap.amountInMax:0n;if(a===0n)throw new Error("Quote not available yet");const i=e.resolvedTokenIn||e.selectedAsset.asset.address,c={userOverride:n,useCustomTransfers:!0},l=await e.gasless.estimateRequiredGrossFunding(a,w=>e.gasless.buildPayChainBatches({fundingAmountOverride:w}),i,c),u=W.ESCROW_ADDRESS,p=await e.externalWallet.getEthereumProvider();let f=null;try{const w=await p.request({method:"eth_chainId"});f=parseInt(w,16)}catch{f=null}f!==o&&await m.ensureWalletOnChain(p,o);const x=m.getChainConfig(o),h=M.createWalletClient({account:e.externalWalletAddress,chain:x?.viemChain,transport:M.custom(p)}),g=W.normalizeNativeTokenAddress(s.address),b=s.isNative||W.isNativeToken(g)?await h.sendTransaction({to:u,value:l,chain:x?.viemChain}):await h.sendTransaction({to:g,data:M.encodeFunctionData({abi:M.erc20Abi,functionName:"transfer",args:[u,l]}),chain:x?.viemChain});if((await m.getClientForChain(o).waitForTransactionReceipt({hash:b,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Escrow deposit failed");const C=await e.gasless.buildPayChainBatches({fundingAmountOverride:l}),y=C.some(w=>w.tokenTransfers?.length);return await e.gasless.executeGasless(C,i,l,w=>{w.txHash&&(e.ui.setPaymentResult(v=>({...v??{status:"processing"},txHash:w.txHash})),e.ui.setTxHash(w.txHash))},void 0,y?c:{userOverride:n})}async function Ga(e){if(e.parsedAmount<0){e.ui.setError("Enter a valid payment amount");return}if(!e.selectedAsset?.asset){e.ui.setError("Select a payment source");return}if(e.isInsufficientBalance){e.ui.setError("Insufficient balance");return}if(e.parsedAmount>0&&e.needsSwap&&!e.exactOutputSwap){e.ui.setError("Swap quote not available. Try a different asset.");return}if(e.isNon7702){if(!e.externalWalletAddress){e.ui.setError("Please connect your external wallet to continue");return}e.ui.setIsExecuting(!0),e.ui.setError(null),e.ui.setShowStatusPanel(!0),e.ui.setPaymentResult({status:"processing"});try{let n;if(e.isSourceDestToken||e.parsedAmount===0)n=await Ka(e);else if(e.onPayExecute&&e.selectedAsset?.asset){const s=e.selectedAsset.asset,o=M.parseUnits(e.currentPaymentAmount,e.destinationToken.decimals),r=e.selectedIsEquivalent?o:e.exactOutputSwap?e.exactOutputSwap.amountInMax:0n;if(r===0n)throw new Error("Quote not available yet");const a=e.embeddedWalletAddress||e.providerEmbeddedAddress;if(!a)throw new Error("Embedded wallet not available \u2014 sign in to create one before paying");const i=e.resolvedTokenIn||s.address,c=await e.gasless.estimateRequiredGrossFunding(r,p=>e.gasless.buildPayChainBatches({fundingAmountOverride:p}),i,{userOverride:a,useCustomTransfers:!0}),l=await e.gasless.buildPayChainBatches({fundingAmountOverride:c}),u=await e.onPayExecute({asset:s,amount:e.currentPaymentAmount,amountWei:o,destinationToken:e.destinationToken,chainBatches:l,requiredNetFunding:r,grossFundingAmount:c,selectedIsEquivalent:e.selectedIsEquivalent,resolvedTokenIn:i,exactOutputSwapAmountInMax:e.exactOutputSwap?.amountInMax});u&&(e.ui.setTxHash(u),e.ui.setPaymentResult(p=>({...p??{status:"processing"},txHash:u}))),n=u||void 0}else n=await Xa(e);e.ui.setPaymentResult(s=>({status:"success",txHash:s?.txHash||n||""}))}catch(n){const s=m.sanitizeError(n,"Payment failed. Please try again.");e.ui.setError(s),e.ui.setPaymentResult({status:"failed",error:s}),e.onError?.(n instanceof Error?n:new Error(s))}finally{e.ui.setIsExecuting(!1)}return}if(!e.isConnected||!e.address){e.ui.setError("Please connect your wallet to continue");return}if(!e.ready||!e.authenticated){e.ui.setError(`Please authenticate with ${e.provider||"wallet provider"} to continue`);return}e.ui.setIsExecuting(!0),e.ui.setError(null),e.ui.setShowStatusPanel(!0),e.ui.setPaymentResult({status:"processing"});try{const n=M.parseUnits(e.currentPaymentAmount,e.destinationToken.decimals),s=e.resolvedTokenIn||e.selectedAsset?.asset?.address||e.destinationToken.address,o=e.needsSwap?e.exactOutputSwap?.amountInMax??0n:n,r={useCustomTransfers:!0},a=await e.gasless.estimateRequiredGrossFunding(o,x=>e.gasless.buildPayChainBatches({fundingAmountOverride:x}),s,r);let i=a,c=await e.gasless.buildPayChainBatches({fundingAmountOverride:a});const l=await e.gasless.estimateGasless(c,s,a,r),u=bn(l,{chainId:e.resolvedChainId,tokenAddress:s,symbol:W.getTokenByAddress(s,e.resolvedChainId)?.symbol??e.selectedAsset.asset.symbol,decimals:W.getTokenByAddress(s,e.resolvedChainId)?.decimals??e.selectedAsset.asset.decimals})?.grossAmount??a;u!==a&&(i=u,c=await e.gasless.buildPayChainBatches({fundingAmountOverride:u}));const p=c.some(x=>x.tokenTransfers?.length),f=await e.gasless.executeGasless(c,s,p?i:0n,x=>{x.txHash&&(e.ui.setPaymentResult(h=>({...h,txHash:x.txHash})),e.ui.setTxHash(x.txHash))},void 0,r);e.ui.setPaymentResult(x=>({status:"success",txHash:x?.txHash||f}))}catch(n){const s=m.sanitizeError(n,"Payment failed. Please try again.");e.ui.setError(s),e.ui.setPaymentResult({status:"failed",error:s}),e.onError?.(n instanceof Error?n:new Error(s))}finally{e.ui.setIsExecuting(!1)}}const Bo=({variant:e,destinationSymbol:n,destinationLogoURI:s,destinationDecimals:o,primaryColor:r,fontFamily:a,textPrimary:i,textSecondary:c,cardBg:l,cardBorder:u,dk:p,dark:f,isQuoting:x,quoteError:h,estimatedOutput:g,paymentAmount:b,needsSwap:C,exactOutputSwap:y,adjustable:w=!1,maxAmount:v,onAmountChange:k})=>e==="supply"?t.jsxs("div",{style:{backgroundColor:l,border:`1px solid ${u}`,borderRadius:f?"8px":"7px",padding:"14px 16px 12px 16px",marginBottom:"16px",minHeight:"112px",display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:"12px"},children:[t.jsxs("div",{style:{minWidth:0},children:[t.jsx("span",{style:{fontFamily:a,fontSize:"17px",fontWeight:500,color:f?"#a7abb2":"#7D7C7B",lineHeight:"24px"},children:"Used in TX"}),t.jsx("div",{style:{fontSize:"12px",fontWeight:500,color:c,fontFamily:a,marginTop:"10px"},children:"Net amount after swap and fees"})]}),t.jsxs("div",{style:{textAlign:"right",minWidth:0,display:"inline-flex",alignItems:"center",gap:"8px",border:`1px solid ${u}`,borderRadius:"8px",padding:"8px 10px",minHeight:"42px"},children:[t.jsx(Fo,{symbol:n,logoURI:s,primaryColor:r,size:24}),t.jsx("span",{style:{fontSize:"16px",fontWeight:500,color:f?"#f3f4f6":"#3C3E42",lineHeight:"1.3",fontFamily:a,letterSpacing:"-0.02em"},children:n})]})]}),t.jsx("div",{style:{textAlign:"right",minWidth:0},children:x?t.jsx("span",{style:{fontSize:"18px",color:c,fontFamily:a},children:"Quoting..."}):h?t.jsx("span",{style:{fontSize:"13px",color:f?"#f87171":"#dc2626",fontFamily:a},children:"Quote failed"}):g?t.jsx("span",{style:{fontSize:"32px",fontWeight:700,color:i,fontFamily:a,lineHeight:"0.95",letterSpacing:"-1.4px"},children:g}):t.jsx("span",{style:{fontSize:"20px",color:c,fontFamily:a},children:"\u2014"})})]}):t.jsx(Ja,{destinationSymbol:n,destinationLogoURI:s,destinationDecimals:o,primaryColor:r,fontFamily:a,textPrimary:i,textSecondary:c,cardBg:l,cardBorder:u,dk:p,dark:f,paymentAmount:b||"0",needsSwap:C,exactOutputSwap:y,isQuoting:x,adjustable:w,maxAmount:v,onAmountChange:k}),Fo=({symbol:e,logoURI:n,primaryColor:s,size:o})=>n?t.jsx("img",{src:n,alt:e,style:{width:o,height:o,borderRadius:"50%",objectFit:"cover"}}):t.jsx("div",{style:{width:o,height:o,borderRadius:"50%",backgroundColor:`${s}22`,display:"flex",alignItems:"center",justifyContent:"center",fontSize:o<30?"11px":"12px",fontWeight:700,color:s},children:e.slice(0,2)}),Ja=({destinationSymbol:e,destinationLogoURI:n,destinationDecimals:s,primaryColor:o,fontFamily:r,textPrimary:a,textSecondary:i,cardBg:c,cardBorder:l,dk:u,dark:p,paymentAmount:f,needsSwap:x,exactOutputSwap:h,isQuoting:g,adjustable:b,maxAmount:C,onAmountChange:y})=>{const w='"IBM Plex Mono", monospace',v=parseFloat(f||"0"),k=C?parseFloat(C):0,[A,S]=d.useState(f||""),T=d.useRef(null),[N,I]=d.useState(null),[E,j]=d.useState(null);d.useEffect(()=>{b||S(f||"")},[f,b]);const B=P=>{let L=P;L.startsWith(".")&&(L="0"+L);const O=Ns(L);let z=O;C&&parseFloat(O)>parseFloat(C)&&(z=C),S(z),T.current&&clearTimeout(T.current),T.current=setTimeout(()=>y?.(z),300)},U=P=>{if(!k)return;if(P===100){S(C||k.toString()),T.current&&clearTimeout(T.current),y?.(C||k.toString());return}const L=10**s,O=Math.floor(k*P/100*L)/L,z=kn(O,s);S(z),T.current&&clearTimeout(T.current),y?.(z)},D=k>0?parseFloat(A||"0")/k*100:0;return d.useEffect(()=>()=>{T.current&&clearTimeout(T.current)},[]),t.jsxs("div",{style:{backgroundColor:c,border:`1px solid ${l}`,borderRadius:p?"12px":"6px",padding:"16px",marginBottom:"16px"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px"},children:[t.jsx(Fo,{symbol:e,logoURI:n,primaryColor:o,size:32}),t.jsxs("div",{children:[t.jsx("span",{style:{fontSize:"14px",fontWeight:600,color:a,fontFamily:r},children:"Payment"}),t.jsx("div",{style:{fontSize:"12px",color:i,fontFamily:r,marginTop:"2px"},children:e})]})]}),t.jsxs("div",{style:{textAlign:"right"},children:[b?t.jsx("input",{type:"text",inputMode:"decimal",autoComplete:"off","aria-label":`${e} amount`,"data-spiceflow-focus":!0,value:A,onChange:P=>B(P.target.value),placeholder:"0.0",style:{fontSize:"20px",fontWeight:700,color:a,fontFamily:w,lineHeight:1.1,backgroundColor:"transparent",border:"none",outline:"none",padding:0,width:"120px",textAlign:"right"}}):t.jsx("div",{style:{fontSize:"20px",fontWeight:700,color:a,fontFamily:w,lineHeight:1.1},children:v>0?f:"0.00"}),t.jsx("div",{style:{fontSize:"12px",color:i,fontFamily:w,marginTop:"2px"},children:e}),b&&k>0&&t.jsx("div",{style:{display:"flex",justifyContent:"flex-end",alignItems:"center",gap:"10px",marginTop:"6px"},children:[0,25,50,75,100].map((P,L)=>{const O=Math.abs(D-P)<1,z=L===4,q=P/100,_=N===P,K=E===P;return t.jsx("button",{onClick:()=>U(P),onMouseEnter:()=>I(P),onMouseLeave:()=>{I(null),j(null)},onMouseDown:()=>j(P),onMouseUp:()=>j(null),title:`${P}%`,style:{width:"14px",height:"14px",padding:0,border:"none",backgroundColor:"transparent",cursor:"pointer",opacity:O?1:_?.8:.5,transform:K?"scale(0.85)":_?"scale(1.15)":"scale(1)",transition:Mt.interactive},children:t.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",children:[t.jsx("circle",{cx:"7",cy:"7",r:"6.84375",fill:z?o:"none",stroke:z?o:p?"#4a5568":"#3C3E42",strokeWidth:"0.3125"}),!z&&q>0&&t.jsx("path",{d:`M 7 7 L 7 0.15625 A 6.84375 6.84375 0 ${q>.5?1:0} 1 ${7+6.84375*Math.sin(q*2*Math.PI)} ${7-6.84375*Math.cos(q*2*Math.PI)} Z`,fill:p?u?.textSecondary||"#9ca3af":"#3C3E42"})]})},P)})})]})]}),x&&h&&!g&&t.jsx("div",{style:{marginTop:"12px",paddingTop:"12px",borderTop:p?`1px solid ${u?.cardBorder||l}`:"1px solid #e5e7eb",display:"flex",justifyContent:"flex-end"},children:t.jsxs("span",{style:{fontSize:"11px",color:i,fontFamily:r,opacity:.7},children:["via ",h.venue]})})]})};function To(e,n,s){const o=m.addressesEqual(e.address,n),r=e.chainId===s,a=e._source==="wallet";return a&&o&&r?0:a&&r?1:!a&&o?2:!a&&r?3:4}function $a(e){const{address:n,destinationToken:s,supportedSourceAssets:o,sourceChains:r,enabled:a}=e,i=(d.useContext(m.SpiceFlowProviderContext)?.mode||"7702")!=="7702",c=Lt(),{externalAddress:l,embeddedAddress:u}=En(),{assets:p,refetch:f}=jn({address:n,supportedChains:r,enabled:a&&!i,refetchInterval:3e4}),x=d.useMemo(()=>{if(i)return[];if(!o||o.length===0)return p;const S=o.map(T=>T.toLowerCase());return p.filter(T=>S.includes(T.address.toLowerCase()))},[p,o,i]),h=i?l:c,g=d.useMemo(()=>{const S=new Set,T=[],N=I=>{if(!I)return;const E=I.toLowerCase();S.has(E)||(S.add(E),T.push(M.getAddress(I)))};if(N(s.address),i&&o)for(const I of o)N(I);return T},[i,s.address,o]),b=d.useMemo(()=>g.map(S=>S.toLowerCase()).sort().join(","),[g]),C=d.useMemo(()=>JSON.stringify([...r||[]].sort()),[r]),[y,w]=d.useState([]),v=d.useRef(0),k=d.useCallback(async()=>{if(!a||!h||g.length===0){v.current++,w([]);return}const S=++v.current,T=M.getAddress(h),N=i?r&&r.length>0?r:[s.chainId]:[s.chainId],I=[];for(const U of g){const D=U.toLowerCase();if(D===s.address.toLowerCase()){const L=m.getChainConfig(s.chainId)?.supportedTokens?.find(O=>m.addressesEqual(O.address,D));I.push({address:U,chainId:s.chainId,configToken:L?{decimals:L.decimals,symbol:L.symbol,name:L.name,logo:L.logo}:void 0});continue}let P=!1;for(const L of N){const O=m.getChainConfig(L)?.supportedTokens?.find(z=>m.addressesEqual(z.address,D));if(O){I.push({address:U,chainId:L,configToken:{decimals:O.decimals,symbol:O.symbol,name:O.name,logo:O.logo}}),P=!0;break}}P||I.push({address:U,chainId:s.chainId})}const E=new Map;for(const U of I){const D=E.get(U.chainId)||[];D.push(U),E.set(U.chainId,D)}const j=async(U,D)=>{try{const P=await It.readContract(U,{address:D.address,abi:M.erc20Abi,functionName:"balanceOf",args:[T]});let L,O,z,q;if(D.configToken)L=D.configToken.decimals,O=D.configToken.symbol,z=D.configToken.name,q=D.configToken.logo;else{const[F,Y,X]=await Promise.all([It.readContract(U,{address:D.address,abi:M.erc20Abi,functionName:"decimals"}).catch(()=>18),It.readContract(U,{address:D.address,abi:M.erc20Abi,functionName:"symbol"}).catch(()=>"TOKEN"),It.readContract(U,{address:D.address,abi:M.erc20Abi,functionName:"name"}).catch(()=>"TOKEN")]);L=Number(F),O=Y,z=X}const _=m.addressesEqual(D.address,s.address)&&D.chainId===s.chainId;_&&s.logoURI&&(q=s.logoURI),_&&!D.configToken&&O==="TOKEN"&&(O=s.symbol,z=s.symbol);const K=parseFloat((Number(P)/Math.pow(10,L)).toFixed(6));return{address:D.address,name:z,symbol:O,decimals:L,balance:P,balanceFormatted:K,balanceUsd:0,logoURI:q,isNative:!1,chainId:D.chainId}}catch{return null}},B=await Promise.all(Array.from(E.entries()).map(async([U,D])=>{let P;try{P=m.getClientForChain(U)}catch{return[]}const L=[],O=[];for(const q of D){const _=L.length;L.push({address:q.address,abi:M.erc20Abi,functionName:"balanceOf",args:[T]}),q.configToken||L.push({address:q.address,abi:M.erc20Abi,functionName:"decimals"},{address:q.address,abi:M.erc20Abi,functionName:"symbol"},{address:q.address,abi:M.erc20Abi,functionName:"name"}),O.push({start:_,item:q})}let z=null;try{z=await P.multicall({contracts:L})}catch{z=null}return z?O.map(({start:q,item:_})=>{const K=z[q],F=K?.status==="success"?K.result:0n;let Y,X,$,re;if(_.configToken)Y=_.configToken.decimals,X=_.configToken.symbol,$=_.configToken.name,re=_.configToken.logo;else{const Ie=z[q+1],fe=z[q+2],xe=z[q+3];Y=Ie?.status==="success"?Number(Ie.result):18,X=fe?.status==="success"?fe.result:"TOKEN",$=xe?.status==="success"?xe.result:X}const ce=m.addressesEqual(_.address,s.address)&&_.chainId===s.chainId;ce&&s.logoURI&&(re=s.logoURI),ce&&!_.configToken&&X==="TOKEN"&&(X=s.symbol,$=s.symbol);const ee=parseFloat((Number(F)/Math.pow(10,Y)).toFixed(6));return{address:_.address,name:$,symbol:X,decimals:Y,balance:F,balanceFormatted:ee,balanceUsd:0,logoURI:re,isNative:!1,chainId:_.chainId}}):(await Promise.all(D.map(q=>j(P,q)))).filter(q=>q!==null)}));S===v.current&&w(B.flat())},[a,h,b,C,i,s.address,s.chainId,s.symbol,s.logoURI]);d.useEffect(()=>{if(!a){w([]);return}k();const S=setInterval(()=>{k()},15e3);return()=>clearInterval(S)},[k,a]);const A=d.useCallback(()=>{k()},[k]);return{displayAssets:d.useMemo(()=>{const S=[],T=y.filter(I=>I.balance>0n);for(const I of T)S.push({...I,_source:"wallet"});for(const I of x)S.push({...I,_source:"spice"});const N=s.address.toLowerCase();return S.sort((I,E)=>To(I,N,s.chainId)-To(E,N,s.chainId)),S},[y,x,s.address,s.chainId]),filteredSpiceAssets:x,walletAssets:y,embeddedWalletAddress:c||u,externalAddress:l,isNon7702:i,refreshSpiceAssets:f,refreshWalletAssets:A}}async function Ro(e){const{tokenIn:n,tokenOut:s,amountIn:o,fee:r,chainId:a,config:i}=e;if(o<=0n)throw new Error("amountIn must be greater than 0");const c=(await m.getClientForChain(a).simulateContract({address:i.quoterV2,abi:W.uniV3QuoterV2Abi,functionName:"quoteExactInputSingle",args:[{tokenIn:n,tokenOut:s,amountIn:o,fee:r,sqrtPriceLimitX96:0n}]})).result;if(c[0]<=0n)throw new Error("No liquidity found for this pair. The pool returned 0 output.");return{amountOut:c[0],sqrtPriceX96After:c[1],gasEstimate:c[3]}}async function Mo(e){const n=e.feeTiers??[100,500,3e3,1e4],s=await Promise.allSettled(n.map(r=>Ro({...e,fee:r})));let o=null;for(let r=0;r<s.length;r++){const a=s[r];a.status==="fulfilled"&&(!o||a.value.amountOut>o.amountOut)&&(o={...a.value,fee:n[r]})}if(!o)throw new Error("No liquidity found for this pair on any fee tier.");return o}const _a=[{inputs:[{components:[{name:"tokenIn",type:"address"},{name:"tokenOut",type:"address"},{name:"amount",type:"uint256"},{name:"fee",type:"uint24"},{name:"sqrtPriceLimitX96",type:"uint160"}],name:"params",type:"tuple"}],name:"quoteExactOutputSingle",outputs:[{name:"amountIn",type:"uint256"},{name:"sqrtPriceX96After",type:"uint160"},{name:"initializedTicksCrossed",type:"uint32"},{name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"}];async function ei(e){const{tokenIn:n,tokenOut:s,amountOut:o,fee:r,chainId:a,config:i}=e;if(o<=0n)throw new Error("amountOut must be greater than 0");const c=(await m.getClientForChain(a).simulateContract({address:i.quoterV2,abi:_a,functionName:"quoteExactOutputSingle",args:[{tokenIn:n,tokenOut:s,amount:o,fee:r,sqrtPriceLimitX96:0n}]})).result;if(c[0]<=0n)throw new Error("No liquidity found for this pair. The pool returned 0 input.");return{amountIn:c[0],sqrtPriceX96After:c[1],gasEstimate:c[3]}}async function ti(e){const n=e.feeTiers??[100,500,3e3,1e4],s=await Promise.allSettled(n.map(r=>ei({...e,fee:r})));let o=null;for(let r=0;r<s.length;r++){const a=s[r];a.status==="fulfilled"&&(!o||a.value.amountIn<o.amountIn)&&(o={...a.value,fee:n[r]})}if(!o)throw new Error("No liquidity found for this pair on any fee tier.");return o}function Do(e){return e.type==="swap"}const Is=.02,ni=[1,8453,42161,10,137,43114,56],si="https://api.1inch.dev/swap/v6.0";function Wo(e,n){return W.applySlippage(e,n)}function No(e){const n=e?.baseUrl??si;return{name:"1inch",chainIds:e?.chainIds??ni,resolve:async(s,o,r)=>{const a=s.maxSlippage??Is,i=a*100,c=W.isNativeToken(s.tokenIn)?W.NATIVE_TOKEN_ADDRESS:s.tokenIn,l=W.isNativeToken(s.tokenOut)?W.NATIVE_TOKEN_ADDRESS:s.tokenOut,u=W.isNativeToken(s.tokenIn);try{const p=new URL(`${n}/${o}/swap`);p.searchParams.set("src",c),p.searchParams.set("dst",l),p.searchParams.set("amount",s.amountIn.toString()),p.searchParams.set("from",r),p.searchParams.set("slippage",i.toString()),p.searchParams.set("disableEstimate","true"),p.searchParams.set("allowPartialFill","false");const f={Accept:"application/json"};e?.apiKey&&(f.Authorization=`Bearer ${e.apiKey}`);const x=await fetch(p.toString(),{headers:f});if(!x.ok)throw new m.SpiceflowError("VENUE_API_ERROR",`[1inchVenue] API returned ${x.status} for ${s.tokenIn} \u2192 ${s.tokenOut} on chain ${o}`,{venue:"1inch",chainId:o,tokenIn:s.tokenIn,tokenOut:s.tokenOut,amountIn:s.amountIn.toString(),cause:`HTTP ${x.status}`});const h=await x.json();if(!h.dstAmount||!h.tx)return console.warn(`[1inchVenue] No route data for ${s.tokenIn} \u2192 ${s.tokenOut} on chain ${o}`),null;const g=BigInt(h.dstAmount);if(g<=0n)return console.warn(`[1inchVenue] Zero output for ${s.tokenIn} \u2192 ${s.tokenOut} on chain ${o}`),null;const b=Wo(g,a),C=[];return h.tx.to&&!u&&C.push({to:s.tokenIn,value:0n,data:M.encodeFunctionData({abi:M.erc20Abi,functionName:"approve",args:[h.tx.to,s.amountIn]})}),C.push({to:h.tx.to,value:BigInt(h.tx.value||"0"),data:h.tx.data}),{venue:"1inch",amountOut:g,amountOutMinimum:b,calls:C}}catch(p){if(p instanceof m.SpiceflowError)throw p;const f=p instanceof Error?p.message:String(p);throw new m.SpiceflowError("VENUE_API_ERROR",`[1inchVenue] Exception for ${s.tokenIn} \u2192 ${s.tokenOut} on chain ${o}: ${f}`,{venue:"1inch",chainId:o,tokenIn:s.tokenIn,tokenOut:s.tokenOut,amountIn:s.amountIn.toString(),cause:f})}}}}const Po=[4114,5115],As={swapRouter:"0x565eD3D57fe40f78A46f348C220121AE093c3cF8",quoterV2:"0x428f20dd8926Eabe19653815Ed0BE7D6c36f8425"},Uo={swapRouter:"0x2626664c2603336E57B271c5C0b26F421741e481",quoterV2:"0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a",chainIds:[8453]};function zo(e){return{name:"satsuma",chainIds:e.chainIds??Po,resolve:async(n,s,o)=>{const r=n.maxSlippage??Is,a=W.isNativeToken(n.tokenIn);let i;try{i=await Mo({tokenIn:n.tokenIn,tokenOut:n.tokenOut,amountIn:n.amountIn,chainId:s,config:{swapRouter:e.swapRouter,quoterV2:e.quoterV2},feeTiers:e.feeTiers})}catch{return console.warn(`[SatsumaVenue] No viable fee tier for ${n.tokenIn} \u2192 ${n.tokenOut} on chain ${s}.`),null}const c=Wo(i.amountOut,r),l=[];return a||l.push({to:n.tokenIn,value:0n,data:M.encodeFunctionData({abi:M.erc20Abi,functionName:"approve",args:[e.swapRouter,n.amountIn]})}),l.push({to:e.swapRouter,value:a?n.amountIn:0n,data:M.encodeFunctionData({abi:W.uniV3SwapRouterAbi,functionName:"exactInputSingle",args:[{tokenIn:n.tokenIn,tokenOut:n.tokenOut,fee:i.fee,recipient:o,amountIn:n.amountIn,amountOutMinimum:c,sqrtPriceLimitX96:0n}]})}),{venue:"satsuma",amountOut:i.amountOut,amountOutMinimum:c,calls:l}}}}function Lo(e){return{name:"satsuma",chainIds:e.chainIds??Po,resolve:async(n,s,o)=>{const r=n.maxSlippage??Is,a=W.isNativeToken(n.tokenIn);let i;try{i=await ti({tokenIn:n.tokenIn,tokenOut:n.tokenOut,amountOut:n.amountOut,chainId:s,config:{swapRouter:e.swapRouter,quoterV2:e.quoterV2},feeTiers:e.feeTiers})}catch{return null}const c=BigInt(Math.round(r*1e4)),l=i.amountIn+i.amountIn*c/10000n,u=[];return u.push({to:e.swapRouter,value:a?l:0n,data:M.encodeFunctionData({abi:oi,functionName:"exactOutputSingle",args:[{tokenIn:n.tokenIn,tokenOut:n.tokenOut,fee:i.fee,recipient:o,amountOut:n.amountOut,amountInMaximum:l,sqrtPriceLimitX96:0n}]})}),{venue:"satsuma",amountIn:i.amountIn,amountInMax:l,amountOut:n.amountOut,calls:u}}}}const oi=[{inputs:[{components:[{name:"tokenIn",type:"address"},{name:"tokenOut",type:"address"},{name:"fee",type:"uint24"},{name:"recipient",type:"address"},{name:"amountOut",type:"uint256"},{name:"amountInMaximum",type:"uint256"},{name:"sqrtPriceLimitX96",type:"uint160"}],name:"params",type:"tuple"}],name:"exactOutputSingle",outputs:[{name:"amountIn",type:"uint256"}],stateMutability:"payable",type:"function"}];function Oo(e){const n=[];e?.customVenues&&n.push(...e.customVenues),e?.satsuma&&n.push(zo(e.satsuma)),n.push(No(e?.oneInch));function s(r){return n.find(a=>a.chainIds.includes(r))}async function o(r,a,i){const c=[],l=[];for(const u of r){if(!Do(u)){c.push(u);continue}const p=s(a);if(!p)throw new m.SpiceflowError("NO_VENUE_FOR_CHAIN",`No liquidity venue configured for chain ${a}. Cannot resolve swap ${u.tokenIn} \u2192 ${u.tokenOut}.`,{chainId:a,tokenIn:u.tokenIn,tokenOut:u.tokenOut,amountIn:u.amountIn.toString()});const f=await p.resolve(u,a,i);if(!f)throw new m.SpiceflowError("NO_LIQUIDITY",`${p.name} returned no quote for ${u.tokenIn} \u2192 ${u.tokenOut} on chain ${a}.`,{venue:p.name,chainId:a,tokenIn:u.tokenIn,tokenOut:u.tokenOut,amountIn:u.amountIn.toString()});c.push(...f.calls),l.push(f)}return{calls:c,resolvedSwaps:l}}return{resolveSwapIntents:o,getVenueForChain:s,venues:n}}function ri(e){const n=e?.customVenues??[];async function s(o,r,a){const i=n.filter(l=>l.chainIds.includes(r));if(i.length===0)throw new m.SpiceflowError("NO_SWAP_ROUTE",`No exact-output venue supports chain ${r}`,{chainId:r,tokenIn:o.tokenIn,tokenOut:o.tokenOut});const c=(await Promise.allSettled(i.map(l=>l.resolve(o,r,a)))).filter(l=>l.status==="fulfilled").map(l=>l.value).filter(l=>l!==null);if(c.length===0)throw new m.SpiceflowError("NO_SWAP_ROUTE",`All aggregators failed for ${o.tokenIn} \u2192 ${o.tokenOut} on chain ${r}`,{chainId:r,tokenIn:o.tokenIn,tokenOut:o.tokenOut,amountOut:o.amountOut.toString()});return c.sort((l,u)=>l.amountIn<u.amountIn?-1:l.amountIn>u.amountIn?1:0),c[0]}return{getQuote:s,venues:n}}const ai=Oo({satsuma:As});function ii(e){const{direction:n,selectedAsset:s,destinationToken:o,chainId:r,recipient:a,paymentAmount:i}=e,[c,l]=d.useState(!1),[u,p]=d.useState(null),[f,x]=d.useState(null),[h,g]=d.useState(null),[b,C]=d.useState(null),[y,w]=d.useState(null),[v,k]=d.useState(null),[A,S]=d.useState(null),[T,N]=d.useState(null),I=d.useRef(null),E=d.useRef(0),j=d.useRef(new Map),B=d.useMemo(()=>ai,[]),U=d.useMemo(()=>ri({customVenues:[Lo(As),Lo(Uo)]}),[]),D=d.useMemo(()=>{if(!s?.asset)return null;const Y=Jt(s.asset,r);if(Y)return Y;const X=_t(s.asset.address,r,s.asset.chainId);return X?X.address:null},[s?.asset,r]),P=d.useMemo(()=>s?.asset?zn(s.asset,r):[],[s?.asset,r]);d.useEffect(()=>{let Y=!1;if(!s?.asset||P.length<=1){N(null);return}return(async()=>{const X=n==="input"?s.amount:i||"0";let $=0n;try{$=n==="input"?M.parseUnits(X,s.asset.decimals):0n}catch{$=0n}try{const re=await lo(s.asset,r,{requiredAmount:$});Y||N(re)}catch{Y||N(null)}})(),()=>{Y=!0}},[s?.asset,s?.amount,r,P,n,i]);const L=d.useMemo(()=>T??D,[T,D]),O=d.useMemo(()=>!s?.asset||!L?[]:[L,...P.filter(Y=>Y.toLowerCase()!==L.toLowerCase())],[s?.asset,L,P]),z=d.useMemo(()=>!s?.asset||!Cs(s.asset.address,s.asset.chainId,o.address,o.chainId)||!L?!1:m.addressesEqual(L,o.address),[s,o.address,o.chainId,L]),q=L?m.addressesEqual(L,o.address):!1,_=n==="output"&&parseFloat(i||"0")===0,K=!!s?.asset&&!z&&!q&&!_,F=K?A??L:L;return d.useEffect(()=>{I.current&&clearTimeout(I.current);const Y=n==="input"?s?.amount:i,X=parseFloat(Y||"0");if(!K||!Number.isFinite(X)||X<=0||!s?.asset||!a||O.length===0){E.current++,x(null),g(null),C(null),w(null),k(null),S(null),p(null),l(!1);return}const $=s.asset.decimals;let re;try{re=n==="input"?M.parseUnits(s.amount,$):M.parseUnits(i||"0",o.decimals)}catch{E.current++,p("Invalid amount"),l(!1);return}const ce=++E.current,ee=()=>ce!==E.current;l(!0);const Ie=n==="output"?150:400;return I.current=setTimeout(async()=>{try{if(n==="input"){const fe=B.getVenueForChain(r);if(!fe)throw new Error("No swap venue for this chain");let xe=null,De=null;for(const Ae of O){const ie=`${n}:${r}:${Ae.toLowerCase()}:${o.address.toLowerCase()}:${re.toString()}`,ye=j.current.get(ie);if(ye&&ye.expiresAt>Date.now()&&ye.resolvedSwap){xe=ye.resolvedSwap,De=Ae;break}const H=await fe.resolve({type:"swap",tokenIn:Ae,tokenOut:o.address,amountIn:re},r,a);if(ee())return;if(H){j.current.set(ie,{expiresAt:Date.now()+3e4,direction:n,resolvedSwap:H}),xe=H,De=Ae;break}}if(!xe||!De)throw new Error("No liquidity for this pair");S(De),k(xe.amountOut),C(xe),w(null);const ge=parseFloat(M.formatUnits(xe.amountOut,o.decimals));x(ge<.01?ge.toPrecision(4):ge.toLocaleString(void 0,{maximumFractionDigits:6})),g(null),p(null)}else{let fe=null,xe=null;for(const De of O){const ge=`${n}:${r}:${De.toLowerCase()}:${o.address.toLowerCase()}:${re.toString()}`,Ae=j.current.get(ge);if(Ae&&Ae.expiresAt>Date.now()&&Ae.exactOutputSwap){fe=Ae.exactOutputSwap,xe=De;break}try{const ie=await U.getQuote({tokenIn:De,tokenOut:o.address,amountOut:re},r,a);if(ee())return;j.current.set(ge,{expiresAt:Date.now()+3e4,direction:n,exactOutputSwap:ie}),fe=ie,xe=De;break}catch{if(ee())return}}if(!fe||!xe)throw new Error("No liquidity for this pair");S(xe),w(fe),C(null),k(null),g(parseFloat(M.formatUnits(fe.amountIn,$)).toFixed(6)),x(null),p(null)}}catch(fe){if(ee())return;const xe=fe instanceof Error?fe.message:"Failed to get quote";p(xe),x(null),g(null),C(null),w(null),k(null),S(null)}finally{ee()||l(!1)}},Ie),()=>{I.current&&clearTimeout(I.current)}},[n,K,s?.amount,s?.asset?.address,s?.asset?.decimals,i,O,r,o.address,o.decimals,a,B,U]),{isQuoting:c,quoteError:u,estimatedOutput:f,estimatedInput:h,resolvedSwap:b,exactOutputSwap:y,quoteAmountOut:v,resolvedTokenIn:F,isDirect:q,needsSwap:K,selectedIsEquivalent:z}}const Ho={idle:"","signing-delegation":"Signing delegation...","signing-intent":"Signing intent...",submitting:"Submitting transaction...",executing:"Executing on-chain...",success:"Deposit confirmed",error:"Transaction failed"},Qo=["signing-delegation","signing-intent","submitting","executing"],Vo=({isOpen:e,onClose:n,destinationToken:s,buildActionCalls:o,feeExecutionMode:r="user-transfer",buildSpicenetBatch:a,onPayExecute:i,actionLabel:c,amountDirection:l="input",swapDescription:u,directDescription:p,supportedSourceAssets:f,sourceChains:x,paymentAmount:h,amountInputMode:g="fixed",minPaymentAmount:b,maxPaymentAmount:C,onAmountChange:y,styles:w,dark:v,title:k,subtitle:A,onAddFunds:S,onSuccess:T,onError:N})=>{const I=l==="output",{theme:E,dark:j,primaryColor:B,dk:U,palette:D,fontFamily:P,monoFont:L,inputDark:O,cardBg:z,cardBorder:q,textPrimary:_,textSecondary:K,subtitleText:F}=m.useSpiceBrand(w,v),Y=O?{...E,colors:{...E.colors,secondary:U.cardBg,surfaceHover:U.hoverBg,border:"#2d2d2d",borderHover:"#3a3a3a"}}:E,X=s.chainId,$=(d.useContext(m.SpiceFlowProviderContext)?.mode||"7702")!=="7702",re=Ot(),{address:ce,isConnected:ee,isReady:Ie,isAuthenticated:fe,provider:xe}=re,{executeGasless:De,estimateGasless:ge}=Hn(),{externalWallet:Ae,externalAddress:ie,embeddedAddress:ye}=En(),{displayAssets:H,filteredSpiceAssets:ae,embeddedWalletAddress:pe,refreshSpiceAssets:me,refreshWalletAssets:se}=$a({address:ce,destinationToken:s,supportedSourceAssets:f,sourceChains:x,enabled:e&&($?!!ie:!!ce)}),Fe=I||$?H:ae,[R,te]=d.useState(null),[Ce,Se]=d.useState(h||""),[ne,Ge]=d.useState(!1),[st,ot]=d.useState(null),[Ee,ht]=d.useState("idle"),[yt,Je]=d.useState(""),[Et,Dt]=d.useState(null),[en,wt]=d.useState(!1),[Ze,Ne]=d.useState(null),[ze,it]=d.useState(null),[vt,et]=d.useState(!1),[Ct,ue]=d.useState(!1),[Te,tt]=d.useState(null),Pt=d.useRef(R),ke=d.useRef(!1),kt=d.useRef(null),nt=d.useRef(0),$e=d.useRef(null);d.useEffect(()=>{Pt.current=R},[R]);const Le=g==="adjustable"?Ce:h||"0",Ht=pe||ye||ce,{isQuoting:mt,quoteError:tn,estimatedOutput:jt,resolvedSwap:Qe,exactOutputSwap:he,quoteAmountOut:rt,resolvedTokenIn:xt,isDirect:lt,needsSwap:Re,selectedIsEquivalent:ut}=ii({direction:l,selectedAsset:R,destinationToken:s,chainId:X,recipient:Ht,paymentAmount:Le}),Ve=I?parseFloat(Le||"0"):parseFloat(R?.amount||"")||0,Bt=d.useMemo(()=>R?.asset?ae.find(we=>m.addressesEqual(we.address,R.asset.address))?.balanceFormatted??0:0,[R,ae]),Ft=d.useMemo(()=>R?.asset?I?ze?jo(ze.grossAmount,ze.decimals,R.asset.decimals)>R.asset.balance:ut||lt?Ve>R.asset.balanceFormatted:he?parseFloat(M.formatUnits(he.amountInMax,R.asset.decimals))>R.asset.balanceFormatted:!1:ze?parseFloat(M.formatUnits(jo(ze.grossAmount,ze.decimals,R.asset.decimals),R.asset.decimals))>Bt:Ve>Bt:!1,[R,I,ze,ut,Ve,he,Bt,lt]);d.useEffect(()=>{e||(te(null),ot(null),Ge(!1),ht("idle"),Je(""),Dt(null),wt(!1),Ne(null),it(null),et(!1),ue(!1),tt(null),ke.current=!1,g==="adjustable"&&Se(h||""),kt.current&&(kt.current.abort(),kt.current=null))},[e]);const Wt=d.useCallback(we=>{te(Me=>({asset:we,amount:Me?.asset?.address===we.address&&Me?.asset?.chainId===we.chainId&&Me.amount||""})),ot(null),tt(null),ue(!1)},[]),Qt=d.useCallback(we=>{te(Me=>Me&&{...Me,amount:we}),ot(null),tt(null),ue(!1)},[]),Vt=d.useCallback(we=>{let Me=we;C&&parseFloat(Me)>parseFloat(C)&&(Me=C),Se(Me),y?.(Me),ot(null),tt(null),ue(!1)},[C,y]);d.useCallback(we=>{if(ke.current||!ce)return;const Me=Pt.current;!Me?.asset||!Me.amount||Me.asset?._source==="wallet"||M.parseUnits(I?Le:Me.amount,Me.asset.decimals)===0n||(ke.current=!0,me())},[ce,X,me,I,Le]);const Q=d.useCallback(we=>{ht({building:"signing-delegation","signing-delegation":"signing-delegation","signing-intent":"signing-intent",submitting:"submitting",executing:"executing",success:"success",error:"error"}[we.step]||"executing"),Je(we.message),we.txHash&&Dt(we.txHash)},[]),oe=d.useMemo(()=>({currentPaymentAmount:Le,destinationToken:s,embeddedWalletAddress:pe,providerEmbeddedAddress:ye,address:ce,isNon7702:$,isPayMode:I,resolvedChainId:X,buildActionCalls:o,feeExecutionMode:r,buildSpicenetBatch:a,selectedAsset:R,needsSwap:Re,resolvedSwap:Qe,exactOutputSwap:he,quoteAmountOut:rt,resolvedTokenIn:xt}),[Le,s,pe,ye,ce,$,I,X,o,r,a,R,Re,Qe,he,rt,xt]),be=d.useCallback(we=>Qa(oe,we),[oe]),We=d.useCallback(we=>Va(oe,we),[oe]),qe=d.useCallback((we,Me,Ut,qt)=>qa(we,Me,Ut,ge,qt),[ge]),at=d.useMemo(()=>R?.asset?R.asset.chainId===X?R.asset.address:xt??Jt(R.asset,X)??s.address:s.address,[R,s.address,X,xt]),dt=d.useCallback(()=>Za($e.current),[]),Pe=d.useMemo(()=>R?.asset?m.addressesEqual(R.asset.address,s.address)&&R.asset.chainId===s.chainId:!1,[R,s.address,s.chainId]),je=I&&$&&Pe&&Ve>0&&!!R?.asset,Ke=st,V=d.useMemo(()=>!(!R?.asset||Ve<=0),[R,Ve,je]),le=d.useMemo(()=>!e||ne||Ee!=="idle"||!V||je||!R?.asset?null:[I?"pay":"supply",l,R.asset.address.toLowerCase(),R.asset.chainId,R.amount,Le,s.address.toLowerCase(),s.chainId,X,xt?.toLowerCase()??"",Re?"swap":"direct",lt?"direct-token":"routed-token",$?"non7702":"7702",Pe?"source-dest":"cross-chain",mt?"quoting":"quoted",he?.amountIn?.toString()??"",he?.amountInMax?.toString()??"",he?.venue??"",Qe?.amountOut?.toString()??"",rt?.toString()??"",pe??"",ye??"",ce??""].join("|"),[e,ne,Ee,V,je,R,I,l,Le,s,X,xt,Re,lt,$,Pe,mt,he,Qe,rt,pe,ye,ce]),Oe=d.useCallback(()=>Ya({selectedAsset:R,isPayMode:I,parsedAmount:Ve,needsSwap:Re,exactOutputSwap:he,isNon7702:$,isSourceDestToken:Pe,currentPaymentAmount:Le,destinationToken:s,feeExecutionMode:r,resolvedTokenIn:xt,embeddedWalletAddress:pe,providerEmbeddedAddress:ye,resolvedChainId:X,isConnected:ee,address:ce,ready:Ie,authenticated:fe,isDirect:lt,resolvedSwap:Qe,isQuoting:mt,executionTokenAddress:at,buildPayChainBatches:be,buildSupplyChainBatches:We,estimateGasless:ge,estimateRequiredGrossFunding:qe}),[R,I,Ve,Re,he,$,Pe,Le,s,r,xt,pe,ye,qe,be,ge,X,ee,ce,Ie,fe,lt,Qe,mt,We,at]);d.useEffect(()=>{if(!e){et(!1),ue(!1),tt(null),it(null);return}if(ne||Ee!=="idle"){nt.current+=1,et(!1);return}if(!V){it(null),et(!1),ue(!1),tt(null);return}if(je){it(null),et(!1),ue(!0),tt(null);return}if(!le)return;let we=!1;const Me=async()=>{const sn=++nt.current;tt(null),et(!0);try{const on=await Oe();if(we||nt.current!==sn)return;on?(it(on),ue(!0)):(it(null),ue(!1)),tt(null)}catch(on){if(we||nt.current!==sn)return;const pn=m.sanitizeError(on,"Unable to calculate fees for this action.");it(null),ue(!1),tt(pn)}finally{!we&&nt.current===sn&&et(!1)}},Ut=window.setTimeout(()=>{Me()},250),qt=window.setInterval(()=>{Me()},1e4);return()=>{we=!0,clearTimeout(Ut),window.clearInterval(qt),et(!1)}},[e,ne,Ee,Oe,V,je,le]);const ct=d.useCallback(()=>Ga($e.current),[]);d.useEffect(()=>{!I&&Ee==="success"&&Et&&(me(),T?.(Et))},[I,Ee,Et,me,T]),d.useEffect(()=>{if(!I||Ze?.status!=="success"||ke.current||!ce)return;ke.current=!0;const we=Pt.current;!we?.asset||we.asset?._source==="wallet"||me()},[I,Ze?.status,ce,me]);const _e=d.useRef(T),Tt=d.useRef(N);d.useEffect(()=>{_e.current=T},[T]),d.useEffect(()=>{Tt.current=N},[N]),d.useEffect(()=>{e&&(me(),se())},[e,me,se]),d.useEffect(()=>{I&&(Ze?.status==="success"&&_e.current?.(Ze.txHash||""),Ze?.status==="failed"&&Tt.current?.(new Error("Payment execution failed")))},[I,Ze?.status]);const nn=d.useCallback(()=>{wt(!1),Ne(null),te(null),ke.current=!1,me(),se()},[me,se]);$e.current={selectedAsset:R,parsedAmount:Ve,currentPaymentAmount:Le,isInsufficientBalance:Ft,isPayMode:I,isNon7702:$,isSourceDestToken:Pe,needsSwap:Re,exactOutputSwap:he,selectedIsEquivalent:ut,resolvedTokenIn:xt,embeddedWalletAddress:pe,providerEmbeddedAddress:ye,externalWallet:Ae,externalWalletAddress:ie,address:ce,isConnected:ee,ready:Ie,authenticated:fe,provider:xe,resolvedChainId:X,executionTokenAddress:at,destinationToken:s,buildActionCalls:o,feeExecutionMode:r,buildSpicenetBatch:a,onPayExecute:i,onError:N,gasless:{estimateGasless:ge,executeGasless:De,buildPayChainBatches:be,buildSupplyChainBatches:We,estimateRequiredGrossFunding:qe,onProgress:Q},ui:{setError:ot,setStep:ht,setStatusMsg:Je,setTxHash:Dt,setIsExecuting:Ge,setShowStatusPanel:wt,setPaymentResult:Ne},refs:{spiceDepositSubmittedRef:ke,abortControllerRef:kt}};const Z=I&&Ve===0,G=I?!!R?.asset&&Ve>=0&&!Ft&&!ne&&(Z||je||Ct)&&!Te&&(Z||!Re||!!he):!!R?.asset&&Ve>0&&!Ft&&!ne&&Ct&&!Te&&(lt||!!Qe&&!mt),J=lt?p||`Your ${s.symbol} will be used directly.`:u||"Your assets will be swapped and used in a single atomic transaction.",de=(X?m.getChainConfig(X):void 0)?.viemChain?.blockExplorers?.default?.url??"",Be=Qo.indexOf(Ee),Ue=ne?(Ho[Ee]||"EXECUTING...").toUpperCase():Ee==="success"?"DONE":Ft?"INSUFFICIENT BALANCE":c.toUpperCase(),Xe=d.useMemo(()=>{if(ne)return"PAYING...";if(Ft&&R?.asset)return`INSUFFICIENT ${R.asset.symbol}`;if(c)return c.toUpperCase();const we=Ve>0?` ${Le} ${s.symbol}`:"";return Re?`SWAP & PAY${we}`:`PAY${we}`},[ne,Ft,R,c,Ve,Le,s.symbol,Re]),He=Ee==="success"?()=>{ht("idle"),te(null),Dt(null),me()}:dt,Ye=Ee==="success"?!1:!G;if(!e)return null;const gt=I?k||`Pay ${s.symbol}`:c,St=I?A:t.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:"3px"},children:[t.jsx("span",{style:{marginTop:"3px",flexShrink:0},children:t.jsx(fs,{color:F})}),t.jsx("p",{style:{fontSize:"12px",color:F,margin:0,lineHeight:"1.4",fontFamily:P},children:J})]});if(I){const we=Ze&&(Ze.status==="success"||Ze.status==="failed")?[{asset:{symbol:R?.asset?.symbol||s.symbol,address:R?.asset?.address||""},amount:Le,txHash:Ze.txHash||"",success:Ze.status==="success",error:Ze.status==="failed"?Ze.error:void 0}]:void 0;return t.jsx(Xt,{isOpen:e,onClose:n,title:gt,subtitle:St,styles:w,dark:j,footerLinkText:"Spicenet accounts \u2192",children:t.jsxs("div",{style:{padding:"16px 24px 8px 24px",position:"relative"},children:[S&&t.jsx("div",{style:{display:"flex",justifyContent:"flex-end",marginBottom:"6px"},children:t.jsx(hs,{onClick:S,color:B,fontFamily:P})}),t.jsx("div",{style:{marginBottom:"12px"},children:t.jsx(An,{assets:Fe,selectedAsset:R??void 0,onAssetSelect:Wt,onAmountChange:()=>{},label:"Pay with",showBalance:!0,showMaxButton:!1,hideAmountInput:!0,displayAmount:R?.asset?Re?mt?"...":he?`~${parseFloat(M.formatUnits(he.amountIn,R.asset.decimals)).toFixed(6)}`:void 0:Le??void 0:void 0,dark:j,theme:Y,styles:w})}),t.jsx(Bo,{variant:"pay",destinationSymbol:s.symbol,destinationLogoURI:s.logoURI,destinationDecimals:s.decimals,primaryColor:B,fontFamily:P,textPrimary:_,textSecondary:K,cardBg:z,cardBorder:q,dk:U,dark:j,isQuoting:mt,quoteError:tn,estimatedOutput:jt,paymentAmount:Le,needsSwap:Re,exactOutputSwap:he,adjustable:g==="adjustable",maxAmount:C,onAmountChange:Vt}),V&&t.jsx(Wn,{fontFamily:P,textPrimary:_,textSecondary:K,cardBg:z,cardBorder:q,resolvedDark:j,darkCardBorder:U.cardBorder,primaryColor:B,feePreview:ze,isLoading:vt,errorText:Te,directExecutionFeeNote:je}),Ke&&t.jsx(xn,{variant:"error",palette:D,fontFamily:P,style:{marginBottom:"12px"},children:Ke}),t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:ct,disabled:!G,loading:ne,dark:j,styles:{...w,button:{...w?.button,backgroundColor:B}},children:Xe}),Ze&&en&&t.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:10,backgroundColor:j?U.shell:"white",borderRadius:j?"12px":"6px",padding:"16px 0"},children:t.jsx(ys,{type:"payment",isOpen:Ze.status!=="processing",isProcessing:ne||Ze.status==="processing",closeOnComplete:!1,chainName:m.getChainName(X),explorerUrl:m.getExplorerUrl(X,"").replace(/\/tx\/.*$/,"")||void 0,onRetryTx:()=>{wt(!1),Ne(null),ct()},onNewTx:nn,onClose:()=>{wt(!1),Ne(null)},onComplete:nn,results:we,styles:w,dark:j})})]})})}return t.jsx(Xt,{isOpen:e,onClose:n,title:gt,subtitle:St,dark:j,styles:w,theme:E,children:t.jsxs("div",{style:{padding:"24px 24px 5px 24px",position:"relative"},children:[t.jsx("div",{style:{marginBottom:"16px"},children:t.jsx(An,{assets:Fe,selectedAsset:R||void 0,onAssetSelect:Wt,onAmountChange:Qt,disabled:ne||Ee==="success",showBalance:!0,showMaxButton:!0,label:"From Spice Balance",placeholder:"0.00",theme:Y,styles:w,dark:O,maxAmount:Bt>0?kn(Bt,R?.asset.decimals??s.decimals):void 0})}),R?.asset&&!lt&&t.jsx(Bo,{variant:"supply",destinationSymbol:s.symbol,destinationLogoURI:s.logoURI,destinationDecimals:s.decimals,primaryColor:B,fontFamily:P,textPrimary:_,textSecondary:K,cardBg:z,cardBorder:q,dark:j,isQuoting:mt,quoteError:tn,estimatedOutput:jt}),V&&t.jsx(Wn,{fontFamily:P,textPrimary:_,textSecondary:K,cardBg:z,cardBorder:q,resolvedDark:j,darkCardBorder:U.cardBorder,primaryColor:B,feePreview:ze,isLoading:vt,errorText:Te}),Ee!=="idle"&&t.jsxs("div",{style:{padding:"10px 14px",borderRadius:"7px",marginBottom:"16px",backgroundColor:Ee==="success"?z:Ee==="error"?D.errorBg:z,border:`1px solid ${Ee==="success"?q:Ee==="error"?D.errorBorder:q}`},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px"},children:[Ee==="success"?t.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",style:{flexShrink:0},children:t.jsx("path",{d:"M5 13l4 4L19 7",stroke:D.successText,strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round"})}):Ee==="error"?t.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",style:{flexShrink:0},children:t.jsx("path",{d:"M18 6L6 18M6 6l12 12",stroke:D.errorText,strokeWidth:"2.5",strokeLinecap:"round"})}):t.jsx(m.Spinner,{size:14,color:B}),t.jsx("span",{style:{fontSize:"13px",fontWeight:500,color:Ee==="success"?_:Ee==="error"?D.errorText:_,fontFamily:P,flex:1},children:Ee==="success"?"Deposit confirmed":Ee==="error"?yt||"Transaction failed":Ho[Ee]||yt}),Ee==="success"&&Et&&t.jsx("a",{href:`${de}/tx/${Et}`,target:"_blank",rel:"noopener noreferrer",style:{fontSize:"12px",color:B,fontFamily:P,textDecoration:"none",whiteSpace:"nowrap",flexShrink:0},children:"View tx \u2192"}),Ee==="error"&&t.jsx("button",{onClick:()=>{ht("idle"),ot(null),setTimeout(dt,50)},style:{background:"none",border:"none",fontSize:"12px",color:B,fontFamily:P,cursor:"pointer",padding:0,whiteSpace:"nowrap",flexShrink:0},children:"Retry \u2192"})]}),Be>=0&&Ee!=="success"&&Ee!=="error"&&t.jsx("div",{style:{marginTop:"8px",height:"3px",borderRadius:"2px",backgroundColor:`${K}22`,overflow:"hidden"},children:t.jsx("div",{style:{height:"100%",width:"100%",borderRadius:"2px",backgroundColor:B,transformOrigin:"left center",transform:`scaleX(${(Be+1)/Qo.length})`,transition:"transform 400ms ease"}})})]}),st&&Ee==="idle"&&t.jsx(xn,{variant:"error",palette:D,fontFamily:P,style:{marginBottom:"16px"},children:st}),t.jsx(m.Button,{variant:"outline",fullWidth:!0,disabled:Ye,onClick:He,theme:E,dark:j,styles:{...w,button:{...w?.button,backgroundColor:B}},style:{fontSize:"20px",fontWeight:600,letterSpacing:"1.5px",fontFamily:L},children:Ue})]})})},li=e=>t.jsx(Vo,{isOpen:e.isOpen,onClose:e.onClose,amountDirection:"output",destinationToken:{address:e.paymentTokenAddress,symbol:e.paymentTokenSymbol,decimals:e.paymentTokenDecimals,chainId:e.paymentChainId,logoURI:e.paymentTokenLogoURI},buildActionCalls:e.buildActionCalls,buildSpicenetBatch:e.buildSpicenetBatch,actionLabel:e.ctaLabel||"PAY",paymentAmount:e.paymentAmount,amountInputMode:e.amountInputMode,minPaymentAmount:e.minPaymentAmount,maxPaymentAmount:e.maxPaymentAmount,onAmountChange:e.onAmountChange,sourceChains:e.sourceChains,title:e.title,subtitle:e.subtitle,onAddFunds:e.onAddFunds,styles:e.styles,dark:e.dark,onSuccess:e.onPaymentSuccess,onError:e.onPaymentError}),di=({label:e="Export Wallet",style:n,className:s,onExport:o,onError:r})=>{const[a,i]=d.useState(!1),[c,l]=d.useState(!1),{primaryColor:u}=m.useSpiceBrand(),p=d.useContext(m.SpiceFlowProviderContext),{isAuthenticated:f}=Ot();let x=null;try{x=At.usePrivy()}catch{}let h=null,g=null;try{h=wn.useEmbeddedReveal(),g=wn.useDynamicContext()}catch{h=null,g=null}const b=Zt.getDynamicEmbeddedWallet(g),C=d.useCallback(async()=>{if(!f){r?.("User is not authenticated. Please log in first.");return}try{if(p?.provider==="dynamic"){if(!h||!b){r?.("Dynamic is not available. Ensure the app is wrapped in a DynamicContextProvider.");return}await h.initExportProcess(!1),o?.();return}if(!x){r?.("Privy is not available. Ensure the app is wrapped in a PrivyProvider.");return}await x.exportWallet(),o?.()}catch(v){const k=v instanceof Error?v.message:"Failed to export wallet";console.error("Export wallet error:",v),r?.(k)}},[b,h,f,r,o,x,p?.provider]),y=!f,w={padding:"10px 20px",borderRadius:"8px",fontFamily:'"IBM Plex Mono", monospace',fontSize:"14px",fontWeight:500,letterSpacing:"0.4px",textTransform:"uppercase",cursor:y?"not-allowed":"pointer",opacity:y?.5:1,border:"1px solid #0e0d0b",color:"#0e0d0b",backgroundColor:c?`${u}cc`:a?`${u}ee`:u,transition:"background-color 150ms ease, transform 150ms ease",display:"inline-flex",alignItems:"center",justifyContent:"center",gap:"8px",...n};return t.jsxs("button",{onClick:C,onMouseEnter:()=>i(!0),onMouseLeave:()=>{i(!1),l(!1)},onMouseDown:()=>l(!0),onMouseUp:()=>l(!1),disabled:y,className:s,style:w,children:[t.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[t.jsx("path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}),t.jsx("polyline",{points:"17 8 12 3 7 8"}),t.jsx("line",{x1:"12",y1:"3",x2:"12",y2:"15"})]}),e]})};function qo(e){const n=d.useContext(m.SpiceFlowProviderContext),s=Lt(),o=e?.enabled===!1?void 0:s,r=n?.network?{network:n.network,pollIntervalMs:e?.pollIntervalMs,chainIds:e?.chainIds??n.supportedChainIds}:void 0;return{..._s(o,r),embeddedWalletAddress:s}}const ci=({appName:e,status:n,statusLabel:s,totalUsdValue:o,breakdownSubtitle:r,address:a,dk:i,dark:c=!1,showModeToggle:l,isEmbeddedMode:u=!0,onModeToggle:p})=>{const[f,x]=d.useState(!1),h=async()=>{a&&await Cr(a)&&(x(!0),setTimeout(()=>x(!1),2e3))},g=n==="active",b=s||(g?"Active":"Inactive"),C=g?"#10b981":"#9ca3af";return t.jsxs("div",{children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"4px"},children:[t.jsxs("div",{style:{fontSize:"13px",fontWeight:600,color:i.textPrimary},children:[e," Account"]}),l?t.jsxs("button",{onClick:p,style:{display:"flex",alignItems:"center",gap:"4px",padding:"2px 8px",borderRadius:"9999px",backgroundColor:c?i.hoverBg:"#f3f4f6",border:c?`1px solid ${i.cardBorder}`:"1px solid #e5e7eb",cursor:"pointer",fontSize:"11px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',color:i.textSecondary,transition:"background-color 150ms ease, border-color 150ms ease, color 150ms ease",letterSpacing:"0.02em"},children:[t.jsx("div",{style:{width:"6px",height:"6px",borderRadius:"50%",backgroundColor:u?"#22c55e":"#f59e0b"}}),t.jsx("span",{children:u?"Embedded":"External"})]}):t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px",padding:"2px 8px",borderRadius:"9999px",backgroundColor:c?i.hoverBg:g?"#ecfdf5":"#f3f4f6",border:c?`1px solid ${i.cardBorder}`:g?"1px solid #a7f3d0":"1px solid #e5e7eb"},children:[t.jsx("div",{style:{width:"6px",height:"6px",borderRadius:"50%",backgroundColor:C}}),t.jsx("span",{style:{fontSize:"11px",fontWeight:500,color:c?i.textSecondary:g?"#065f46":"#6b7280"},children:b})]})]}),t.jsx("div",{style:{fontSize:"28px",fontWeight:700,color:i.textPrimary,lineHeight:1.2,marginBottom:"2px"},children:hn(o)}),r&&t.jsx("div",{style:{fontSize:"12px",color:i.textSecondary,marginBottom:"8px"},children:r}),a&&t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px"},children:[t.jsx("span",{style:{fontSize:"12px",fontFamily:'"IBM Plex Mono", monospace',color:c?i.textSecondary:"#9ca3af"},children:yr(a)}),t.jsx("button",{onClick:h,style:{padding:"2px 6px",fontSize:"10px",fontWeight:500,backgroundColor:"transparent",color:c?i.textSecondary:"#9ca3af",border:"none",cursor:"pointer",borderRadius:"4px",transition:"background-color 150ms ease, color 150ms ease"},title:"Copy address",children:f?"Copied":"Copy"})]})]})},ui=({pendingDeposits:e,onCompleteDeposit:n,dk:s,dark:o=!1})=>e.length===0?null:t.jsxs("div",{children:[t.jsx("div",{style:{fontSize:"11px",fontWeight:600,letterSpacing:"1px",color:s.textSecondary,marginBottom:"8px",textTransform:"uppercase"},children:"Pending Deposits"}),t.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:e.map((r,a)=>{const i=m.getChainConfig(r.chainId)?.displayName||`Chain ${r.chainId}`;return t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"10px 12px",backgroundColor:o?s.warningBg:"#fffbeb",border:o?`1px solid ${s.warningBorder}`:"1px solid #fde68a",borderRadius:"8px"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[t.jsx("div",{style:{width:"24px",height:"24px",borderRadius:"50%",backgroundColor:o?s.hoverBg:"#fde68a",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"11px",fontWeight:600,color:s.warningText},children:r.tokenSymbol.charAt(0)}),t.jsxs("div",{children:[t.jsxs("div",{style:{fontSize:"13px",fontWeight:500,color:s.textPrimary},children:[r.amount," ",r.tokenSymbol]}),t.jsxs("div",{style:{fontSize:"11px",color:s.warningText},children:["on ",i]})]})]}),t.jsx("button",{onClick:()=>n?.(r),style:{padding:"4px 12px",fontSize:"11px",fontWeight:600,backgroundColor:o?s.hoverBg:"#fef3c7",color:o?s.textPrimary:"#92400e",border:o?`1px solid ${s.warningBorder}`:"1px solid #fde68a",borderRadius:"9999px",cursor:"pointer",transition:"background-color 150ms ease, border-color 150ms ease, color 150ms ease"},children:"Complete"})]},`${r.tokenAddress}-${r.chainId}-${a}`)})})]}),pi=({spiceAssets:e,loading:n,dk:s,dark:o=!1})=>{const r={fontSize:"11px",fontWeight:600,letterSpacing:"1px",color:s.textSecondary,marginBottom:"8px",textTransform:"uppercase"},a={backgroundColor:s.cardBg,border:o?`1px solid ${s.cardBorder}`:"1px solid #e5e7eb",borderRadius:"8px"};return n?t.jsxs("div",{children:[t.jsx("div",{style:r,children:"Idle Balances"}),[1,2].map(i=>t.jsx("div",{style:{...a,padding:"12px",marginBottom:"6px",height:"48px",animation:"pulse 1.5s ease-in-out infinite",opacity:.5}},i))]}):e.length===0?t.jsxs("div",{children:[t.jsx("div",{style:r,children:"Idle Balances"}),t.jsx("div",{style:{...a,padding:"16px",textAlign:"center",fontSize:"13px",color:o?s.textSecondary:"#9ca3af"},children:"No assets yet. Deposit to get started."})]}):t.jsxs("div",{children:[t.jsx("div",{style:r,children:"Idle Balances"}),t.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:e.map((i,c)=>{const l=m.getChainConfig(i.chainId),u=i.chainDisplayName||l?.displayName||`Chain ${i.chainId}`,p=i.tokenDisplaySymbol||i.tokenDisplayName||i.tokenSymbol;return t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"10px 12px",...a},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[i.logoURI?t.jsx("img",{src:i.logoURI,alt:i.tokenSymbol,style:{width:"24px",height:"24px",borderRadius:"50%"}}):t.jsx("div",{style:{width:"24px",height:"24px",borderRadius:"50%",backgroundColor:o?s.hoverBg:"#e5e7eb",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"11px",fontWeight:600,color:s.textSecondary},children:p.charAt(0)}),t.jsxs("div",{children:[t.jsx("div",{style:{fontSize:"13px",fontWeight:500,color:s.textPrimary},children:p}),t.jsx("div",{style:{fontSize:"11px",color:o?s.textSecondary:"#9ca3af"},children:u})]})]}),t.jsxs("div",{style:{textAlign:"right"},children:[t.jsx("div",{style:{fontSize:"13px",fontWeight:500,color:s.textPrimary},children:an(i.balanceFormatted)}),t.jsx("div",{style:{fontSize:"11px",color:o?s.textSecondary:"#9ca3af"},children:hn(i.usdValue)})]})]},`${i.tokenAddress}-${i.chainId}-${c}`)})})]})},fi=({section:e,dk:n,dark:s=!1})=>{const o=r=>{switch(r){case"green":return"#10b981";case"red":return"#ef4444";default:return n.textPrimary}};return t.jsxs("div",{children:[t.jsx("div",{style:{fontSize:"11px",fontWeight:600,letterSpacing:"1px",color:n.textSecondary,marginBottom:"8px",textTransform:"uppercase"},children:e.title}),t.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:e.items.map((r,a)=>t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"10px 12px",backgroundColor:n.cardBg,border:s?`1px solid ${n.cardBorder}`:"1px solid #e5e7eb",borderRadius:"8px"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[r.tokenLogoURI?t.jsx("img",{src:r.tokenLogoURI,alt:r.tokenSymbol,style:{width:"20px",height:"20px",borderRadius:"50%"}}):t.jsx("div",{style:{width:"20px",height:"20px",borderRadius:"50%",backgroundColor:s?n.hoverBg:"#e5e7eb",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"10px",fontWeight:600,color:n.textSecondary},children:r.tokenSymbol.charAt(0)}),t.jsxs("div",{children:[t.jsx("div",{style:{fontSize:"13px",fontWeight:500,color:n.textPrimary},children:r.tokenSymbol}),t.jsx("div",{style:{fontSize:"11px",color:n.textSecondary},children:r.label})]})]}),t.jsx("div",{style:{fontSize:"13px",fontWeight:600,color:o(r.valueColor)},children:r.displayValue})]},a))})]})},hi=({onDepositClick:e,onWithdrawClick:n,depositDisabled:s=!1,withdrawDisabled:o=!1,primaryColor:r="#EA4B4B",dark:a=!1})=>!e&&!n?null:t.jsxs("div",{style:{display:"flex",gap:"8px"},children:[e&&t.jsx(m.Button,{variant:"outline",onClick:e,disabled:s,dark:a,styles:{button:{backgroundColor:r}},style:{flex:1,height:"44px",fontSize:"12px"},children:"Deposit"}),n&&t.jsx(m.Button,{variant:"outline",onClick:n,disabled:o,dark:a,styles:{button:{backgroundColor:r}},style:{flex:1,height:"44px",fontSize:"12px"},children:"Withdraw"})]}),mi=({appName:e,status:n,statusLabel:s,totalUsdValue:o,breakdownSubtitle:r,address:a,spiceAssets:i,spiceAssetsLoading:c,pendingDeposits:l,customSections:u,onDepositClick:p,onWithdrawClick:f,onCompleteDeposit:x,primaryColor:h,dk:g,dark:b=!1,showModeToggle:C,isEmbeddedMode:y,onModeToggle:w,showConnectExternalCta:v,onConnectExternalWallet:k,connectExternalError:A})=>{const[S,T]=d.useState(!1);return t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"16px",padding:"16px",maxHeight:"calc(80vh - 32px)",overflowY:"auto"},children:[t.jsx(ci,{appName:e,status:n,statusLabel:s,totalUsdValue:o,breakdownSubtitle:r,address:a,dk:g,dark:b,showModeToggle:C,isEmbeddedMode:y,onModeToggle:w}),v&&t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:[t.jsx("button",{onClick:k,style:{width:"100%",padding:"10px 14px",borderRadius:"8px",backgroundColor:h||"#EA4B4B",color:"#ffffff",border:"none",cursor:"pointer",fontSize:"13px",fontWeight:600,fontFamily:'"Helvetica Neue", sans-serif',transition:"opacity 150ms ease"},children:"Connect External Wallet"}),A&&t.jsx("span",{style:{fontSize:"11px",color:b?g.errorText:"#b91c1c",lineHeight:1.4},children:A})]}),t.jsx("div",{style:{height:"1px",backgroundColor:b?"#2d2d2d":"#e5e7eb"}}),t.jsxs("div",{children:[t.jsxs("button",{onClick:()=>T(!S),style:{display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%",padding:"8px 12px",backgroundColor:g.cardBg,border:b?`1px solid ${g.cardBorder}`:"1px solid #e5e7eb",borderRadius:"8px",cursor:"pointer",color:g.textSecondary,fontSize:"12px",fontWeight:500},children:[t.jsx("span",{children:"How It Works"}),t.jsx("span",{style:{transform:S?"rotate(180deg)":"rotate(0deg)",transition:"transform 200ms ease",fontSize:"10px"},children:"\u25BE"})]}),S&&t.jsxs("div",{style:{marginTop:"6px",padding:"10px 12px",backgroundColor:b?g.cardBg:"#f0fdf4",border:b?`1px solid ${g.cardBorder}`:"1px solid #bbf7d0",borderRadius:"8px",fontSize:"12px",lineHeight:1.5,color:b?g.textSecondary:"#374151"},children:["Fund your ",e," Account from any supported chain (10+ EVM chains). Once funded, transact gas-free and asset-abstracted on"," ",e,"."]})]}),t.jsx(ui,{pendingDeposits:l,onCompleteDeposit:x,dk:g,dark:b}),t.jsx(pi,{spiceAssets:i,loading:c,dk:g,dark:b}),u.map((N,I)=>t.jsx(fi,{section:N,dk:g,dark:b},I)),t.jsx(hi,{onDepositClick:p,onWithdrawClick:f,primaryColor:h,dark:b})]})},Es=380,un=8;function Yo(e){return e?.trim().replace(/^spice/i,"").replace(/[^a-z0-9]/gi,"").toUpperCase()||void 0}function xi(e,n){const s=new Map;Object.entries(n).forEach(([r,a])=>{if(!Number.isFinite(a)||a<=0)return;s.set(r,a),s.set(r.toUpperCase(),a);const i=Yo(r);i&&s.set(i,a)});const o=[e.symbol,e.displaySymbol,e.receiptTokenName,e.name,e.displayName];for(const r of o){if(!r)continue;const a=s.get(r)??s.get(r.toUpperCase());if(a!==void 0)return a;const i=Yo(r);if(!i)continue;const c=s.get(i);if(c!==void 0)return c}return 0}const gi=({appName:e="Spice",status:n="active",statusLabel:s,customSections:o=[],extraAssets:r=[],tokenPrices:a={},breakdownLabels:i=[],supportedChains:c,styles:l,dark:u=!1,onDepositSuccess:p,onDepositClick:f,onWithdrawClick:x,onCompleteDeposit:h,showModeToggle:g=!1,defaultMode:b})=>{const C=d.useContext(m.SpiceFlowProviderContext),y=C?.mode!=="7702",w=d.useRef(!1);d.useEffect(()=>{if(!w.current){if(m.hasStoredSpiceFlowMode()){w.current=!0;return}b&&C?.setMode&&(C.setMode(b==="non7702"?"ondemand":"7702"),w.current=!0)}},[C,b]);const[v,k]=d.useState(!1),[A,S]=d.useState(null),[T,N]=d.useState({top:0,bottom:0,left:0,placement:"below"}),I=d.useRef(null),E=d.useRef(null),{address:j,isConnected:B}=Ot(),U=Lt(),{address:D}=ft.useAccount(),{dark:P,primaryColor:L,dk:O}=m.useSpiceBrand(l,u),z=d.useMemo(()=>c||W.getChainIdsByNetwork("mainnet"),[c]),{assets:q,loading:_}=jn({address:j,supportedChains:z,enabled:!!j&&!y,refetchInterval:3e4}),K=d.useMemo(()=>[...y?[]:q.map(se=>{const Fe=se.balanceUsd||0,R=Number.isFinite(se.balanceFormatted)?se.balanceFormatted:0,te=Fe>0?Fe:xi(se,a)*R;return{tokenAddress:se.address,tokenSymbol:se.symbol,tokenDisplaySymbol:ds(se),tokenDisplayName:kr(se),tokenDecimals:se.decimals,chainId:se.chainId,chainDisplayName:cs(se),balance:se.balance.toString(),balanceFormatted:se.balanceFormatted,usdValue:te,logoURI:se.logoURI}}),...r].filter(se=>se.balanceFormatted>0),[y,q,a,r]),F=d.useMemo(()=>K.reduce((se,Fe)=>se+Fe.usdValue,0),[K]),{pendingDeposits:Y}=qo({chainIds:z,enabled:!!j}),X=d.useMemo(()=>o.reduce((se,Fe)=>se+Fe.totalValue,0),[o]),$=F+X,re=d.useMemo(()=>{const se=[];F>0&&se.push(`${hn(F)} idle`);for(const Fe of o){const R=i.find(te=>te.sectionTitle===Fe.title)?.label||Fe.title.toLowerCase();se.push(`${hn(Fe.totalValue)} ${R}`)}return se.join(" \xB7 ")},[F,o,i]),ce=d.useCallback(se=>{h?h(se):S(se)},[h]),ee=d.useCallback(()=>{S(null)},[]),Ie=d.useCallback(()=>{S(null),p?.()},[p]),fe=d.useCallback(()=>{if(!I.current)return;const se=I.current.getBoundingClientRect(),Fe=window.innerHeight-se.bottom-un,R=se.top-un,te=Fe>=400||Fe>=R?"below":"above",Ce=Math.max(un,Math.min(se.right-Es,window.innerWidth-Es-un)),Se=te==="below"?se.bottom+un:se.top-un,ne=te==="above"?window.innerHeight-Se:0;N({top:Se,bottom:ne,left:Ce,placement:te})},[]);d.useLayoutEffect(()=>{v&&fe()},[v,fe]),d.useEffect(()=>{if(!v)return;const se=te=>{I.current&&!I.current.contains(te.target)&&E.current&&!E.current.contains(te.target)&&k(!1)},Fe=te=>{te.key==="Escape"&&k(!1)},R=()=>fe();return document.addEventListener("mousedown",se),document.addEventListener("keydown",Fe),window.addEventListener("scroll",R,{passive:!0}),window.addEventListener("resize",fe),()=>{document.removeEventListener("mousedown",se),document.removeEventListener("keydown",Fe),window.removeEventListener("scroll",R),window.removeEventListener("resize",fe)}},[v,fe]);const xe=C?.mode==="7702",De=xe?U||j:D||j,ge=d.useCallback(()=>{C?.setMode&&C.setMode(xe?"ondemand":"7702")},[C,xe]),[Ae,ie]=d.useState(null);let ye=null;try{ye=At.useConnectWallet({onSuccess:()=>ie(null),onError:se=>ie(m.sanitizeError(se,"Failed to connect wallet."))}).connectWallet}catch{ye=null}const H=d.useCallback(()=>{ye&&(ie(null),ye({walletChainType:"ethereum-only"}))},[ye]),ae=g&&!xe&&!D&&!!ye;if(typeof window>"u")return null;const pe=t.jsxs("button",{ref:I,onClick:()=>k(!v),style:{display:"inline-flex",alignItems:"center",gap:"6px",padding:"8px 14px",borderRadius:"9999px",backgroundColor:P?O.hoverBg:"#ffffff",border:P?`1px solid ${O.cardBorder}`:"1px solid #e5e7eb",cursor:"pointer",fontSize:"13px",fontWeight:500,fontFamily:'"Helvetica Neue", sans-serif',color:P?O.textPrimary:"#111827",transition:"background-color 150ms ease, border-color 150ms ease, box-shadow 150ms ease",boxShadow:P?"none":"0 1px 2px rgba(0,0,0,0.05)"},children:[t.jsx("span",{style:{width:"8px",height:"8px",borderRadius:"50%",backgroundColor:L,flexShrink:0}}),t.jsxs("span",{children:[e," Account"]}),B&&t.jsxs("span",{style:{color:P?O.textSecondary:"#6b7280"},children:["\xB7 ",hn($)]}),t.jsx("span",{style:{fontSize:"10px",color:P?O.textSecondary:"#9ca3af",transform:v?"rotate(180deg)":"rotate(0deg)",transition:"transform 200ms ease"},children:"\u25BE"})]}),me=v?vn.createPortal(t.jsxs(t.Fragment,{children:[t.jsx("div",{style:{position:"fixed",inset:0,backgroundColor:"rgba(0, 0, 0, 0.08)",zIndex:dn.popover},onClick:()=>k(!1)}),t.jsx("div",{ref:E,style:{position:"fixed",top:T.placement==="below"?`${T.top}px`:"auto",bottom:T.placement==="above"?`${T.bottom}px`:"auto",left:`${T.left}px`,width:`${Es}px`,maxWidth:`calc(100vw - ${un*2}px)`,maxHeight:"80vh",backgroundColor:P?O.shell:"#ffffff",border:P?`1px solid ${O.cardBorder}`:"1px solid #e5e7eb",borderRadius:"12px",boxShadow:P?"0 10px 40px rgba(0, 0, 0, 0.5)":"0 10px 40px rgba(0, 0, 0, 0.12)",zIndex:dn.popover+1,overflow:"hidden",animation:`accountDisplayFadeIn 200ms ${bt.out}`},children:t.jsx(mi,{appName:e,status:n,statusLabel:s,totalUsdValue:$,breakdownSubtitle:re,address:g?De:j,spiceAssets:K,spiceAssetsLoading:_,pendingDeposits:Y,customSections:o,onDepositClick:f,onWithdrawClick:x,onCompleteDeposit:ce,primaryColor:L,dk:O,dark:P,showModeToggle:g,isEmbeddedMode:xe,onModeToggle:ge,showConnectExternalCta:ae,onConnectExternalWallet:H,connectExternalError:Ae})}),t.jsx("style",{children:`
103
+ `})]})};function Pa(e,n,s){if(!Array.isArray(e))return 0n;const o=`evm:${n}:${s.slice(2).toLowerCase()}`;let r=0n;for(const a of e){if(!a||typeof a!="object")continue;const i=a,c=i.chainTokens;if((Array.isArray(c)?c.filter(d=>typeof d=="string"):c&&typeof c=="object"?Object.keys(c):[]).some(d=>d.toLowerCase()===o))try{r+=BigInt(i.balanceAvailable??"0")}catch{}}return r}async function Io(e,n,s,o){const r=await fetch(`${e}/wallets/${n}/balance`,{cache:"no-store"});if(!r.ok)throw new Error(`Failed to fetch spice balance: ${r.status}`);const a=await r.json();return Pa(a?.balances,s,o)}async function La({apiBaseUrl:e,user:n,chainId:s,tokenAddress:o,prevBalance:r,timeoutMs:a=3e4,pollIntervalMs:i=1500}){const c=Date.now()+a;for(await new Promise(d=>setTimeout(d,800));Date.now()<c;){try{if(await Io(e,n,s,o)>r)return}catch(d){console.warn("[SpiceLockModal] spice balance poll failed:",d?.message)}await new Promise(d=>setTimeout(d,i))}console.warn("[SpiceLockModal] Spicenet indexer did not reflect deposit within timeout; proceeding with intent")}function vs(e,n){const s=Math.floor(Date.now()/1e3)+600,o=z.hashChainBatches(n);return{user:e,intents:[{mode:"7702",signatureType:"ecdsa",signature:"0x00",nbf:0,exp:s,chainBatches:o.map((r,a)=>({hash:r.hash,chainId:r.chainId,tokenTransfers:n[a].domain==="spicenet"?[]:n[a].tokenTransfers??[],calls:r.calls}))}]}}function ks(e,n,s){if(e.some(c=>c.domain==="spicenet"))return e;const o=s?.intents.flatMap(c=>c.batches),r=c=>c.from==="escrow",a=e.flatMap(c=>(c.tokenTransfers??[]).filter(r).map(d=>({chainId:c.chainId,token:U.getAddress(d.token),to:U.getAddress(d.to),amount:BigInt(o?.find(u=>u.chainId===c.chainId)?.totalDebit??d.amount)})));if(a.length===0)return e;const i=BigInt(Math.floor(Date.now()/1e3))+3600n;return[{chainId:z.SPICENET_NATIVE_CHAIN_ID,domain:"spicenet",tokenTransfers:[],calls:a.map((c,d)=>{const u=U.keccak256(U.encodeAbiParameters([{type:"address"},{type:"address"},{type:"uint256"},{type:"uint256"},{type:"uint256"}],[n,c.token,c.amount,BigInt(c.chainId),BigInt(Date.now()+d)]));return{to:"0x0000000000000000000000000000000000000000",value:0n,data:U.encodeFunctionData({abi:z.spicenetAbi,functionName:"createWithdrawalRequest",args:[{chainId:`evm:${c.chainId}`,idempotenceKey:u,nbf:0n,exp:i,metadata:"{}",transfers:[{token:c.token.toLowerCase(),to:c.to,amount:c.amount}]}]})}})},...e]}async function Ss(e,n){const{isSemi7702:s,providerEmbeddedAddress:o,address:r,isConnected:a,ready:i,authenticated:c,provider:d,actions:u,startStatusPolling:h}=e,p=s&&o||r;if(!a||!p)throw new Error("Please connect your wallet to continue");if(n.length===0)throw new Error("No lock batches configured");if(!i||!c)throw new Error(`Please authenticate with ${d||"wallet provider"} to continue`);const g=[...new Set(n.filter(w=>w.domain!=="spicenet").map(w=>w.chainId))],f=[];for(const w of g){const A=m.getClientForChain(w),j=m.getDelegateContractAddress(w),E=await z.getAccountNonce(p,A),M=await u.signAuthorization({contractAddress:j,chainId:w,nonce:Number(E)});f.push(M)}const x=z.hashChainBatches(n),b=Math.floor(Date.now()/1e3)+60*10,y=x.map(w=>w.hash),C=U.keccak256(U.encodeAbiParameters([{type:"string"},{type:"uint256"},{type:"uint256"},{type:"bytes32[]"}],["ecdsa",0n,BigInt(b),y])),k=await u.signMessage({raw:C}),I=typeof k=="string"?k:k.signature;if(!I)throw new Error("Failed to sign intent authorization");const v={mode:"7702",signatureType:"ecdsa",signature:I,nbf:0,exp:b,chainBatches:x.map((w,A)=>{const j=n[A],E=j.domain==="spicenet";return{hash:w.hash,chainId:w.chainId,tokenTransfers:E?[]:j.tokenTransfers??[],calls:w.calls}})},S=await m.relayerService.createAction({user:p,chainAuthorizations:f.map(w=>({r:w.r,s:w.s,yParity:w.yParity,address:w.address,chainId:Number(w.chainId),nonce:Number(w.nonce)})),intents:[v]});if(S){const w=m.createInitialSteps(n,m.getChainName),[A,j]=S.intentIds[0].split("/"),E=parseInt(j||"0",10),M=S.intentIds[0];h(S.intentIds[0],w);const B=async R=>{let F=0,T="created",N=0;const L=n[R]?.domain==="spicenet"?6:3,W=5,Q=()=>{F++,m.relayerService.executeStep(A,E,R,{action:"execute"}).catch(O=>{console.warn(`[SpiceLockModal] executeStep ${R} attempt ${F} error (will poll):`,O instanceof Error?O.message:String(O))})};Q();for(let O=0;O<180;O++){await new Promise(q=>setTimeout(q,O===0?350:1e3));try{const q=await m.relayerService.checkStepStatus(M,R);N=0,T=q.data.status}catch(q){if(N++,N>=5)throw q;continue}if(T==="success")return;if(T==="reverted"||T==="error")throw new Error(`Step ${R} ${T}`);T==="created"&&O+1>=F*W&&F<L&&Q()}throw new Error(`Timed out waiting for step ${R} to complete; last status ${T}`)};for(let R=0;R<n.length;R++)R>0&&n[R]?.domain==="spicenet"&&await new Promise(F=>setTimeout(F,5e3)),await B(R)}}async function Is(e){const{resolveLockBatches:n,isSemi7702:s,providerEmbeddedAddress:o,address:r,isConnected:a}=e,i=n();if(i.length===0)throw new Error("No lock batches configured");const c=s&&o||r;if(!a||!c)throw new Error("Please connect your wallet to continue");let d=ks([...i],c);const u=vs(c,d),h=await m.relayerService.estimateActionFees(u);d=ks([...i],c,h),await Ss(e,d)}async function Ao(e){const{selectedAsset:n,address:s,embeddedWalletAddress:o,actions:r,escrowAddress:a,lockChainId:i,refreshSpiceAssets:c,refreshWalletAssets:d}=e;if(!n?.asset||!n.amount)throw new Error("Select an asset and enter an amount");if(!s||!o)throw new Error("Embedded wallet not connected");const u=n.asset,h=U.parseUnits(n.amount,u.decimals),p=a||m.getDelegateContractAddress(i),g=m.relayerService.getBaseUrl(),f=z.normalizeNativeTokenAddress(u.address);let x=0n;try{x=await Io(g,o,i,f)}catch(I){console.warn("[SpiceLockModal] could not snapshot spice balance pre-deposit:",I?.message)}const b=await r.getEthereumProvider();await m.ensureWalletOnChain(b,i);const y=m.getChainConfig(i),C=U.createWalletClient({account:o,transport:U.custom(b),chain:y?.viemChain});let k;if(u.isNative||z.isNativeToken(u.address))k=await C.sendTransaction({to:p,value:h,chain:y?.viemChain});else{const I=U.encodeFunctionData({abi:m.z,functionName:"transfer",args:[p,h]});k=await C.sendTransaction({to:u.address,data:I,chain:y?.viemChain})}if((await m.getClientForChain(i).waitForTransactionReceipt({hash:k,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Transfer to escrow failed");await La({apiBaseUrl:g,user:o,chainId:i,tokenAddress:f,prevBalance:x}),await c(),d(),await Is(e)}async function Eo(e){const{selectedAsset:n,externalWallet:s,externalWalletAddress:o,embeddedWalletAddress:r,providerEmbeddedAddress:a,escrowAddress:i,onLockExecute:c,onLockSuccess:d,resolveLockBatches:u,selectedDuration:h,buildSpicenetBatch:p}=e;if(!n?.asset||!n.amount)throw new Error("Select an asset and enter an amount");if(!o||!s)throw new Error("Please connect your external wallet to continue");const g=r||a;if(!g)throw new Error("Embedded wallet not available \u2014 sign in to create one before locking");if(c){const F=u();if(F.length===0)throw new Error("No lock batches configured");const T=n.asset,N=U.parseUnits(n.amount,T.decimals),L=await c({asset:T,amount:n.amount,amountWei:N,lockDurationMonths:h?.months??0,chainBatches:F});L&&d?.(L);return}const f=u();if(f.length===0)throw new Error("No lock batches configured");const x=n.asset,b=U.parseUnits(n.amount,x.decimals),y=x.chainId,C=i||z.ESCROW_ADDRESS,k=z.normalizeNativeTokenAddress(x.address),I=x.isNative||z.isNativeToken(k);let v=null;for(const F of f){const T=F.tokenTransfers?.find(N=>N.from==="escrow");if(T){v={batch:F,to:T.to,token:T.token,amount:BigInt(T.amount)};break}}const S=await s.getEthereumProvider();let w=null;try{const F=await S.request({method:"eth_chainId"});w=parseInt(F,16)}catch{w=null}w!==y&&await m.ensureWalletOnChain(S,y);const A=m.getChainConfig(y),j=U.createWalletClient({account:o,chain:A?.viemChain,transport:U.custom(S)}),E=I?await j.sendTransaction({to:g,value:b,chain:A?.viemChain}):await j.sendTransaction({to:k,data:U.encodeFunctionData({abi:m.z,functionName:"transfer",args:[g,b]}),chain:A?.viemChain});if((await m.getClientForChain(y).waitForTransactionReceipt({hash:E,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Transfer to embedded wallet failed");const M={chainId:y,calls:I?[{to:C,value:b,data:"0x"}]:[{to:k,value:0n,data:U.encodeFunctionData({abi:m.z,functionName:"transfer",args:[C,b]})}]};let B=null;if(v){if(!p)throw new Error("Lock batches declare an escrow-backed ERC20 payout but no `buildSpicenetBatch` callback was provided. The relayer rejects 7702 intents with escrow-backed ERC20 transfers unless the intent includes a Spicenet batch authorising the withdrawal.");const F=p({userAddress:g,destinationChainId:v.batch.chainId,deliveryToken:v.token,deliveryAmount:v.amount,deliveryRecipient:v.to});F&&(B={...F,domain:F.domain??"spicenet"})}const R=[M];B&&R.push(B),R.push(...f),await Ss(e,R)}async function Oa(e){const{selectedAsset:n,requiresRelayerFeeEstimate:s,isSemi7702:o,embeddedWalletAddress:r,providerEmbeddedAddress:a,resolveLockBatches:i,escrowAddress:c,buildSpicenetBatch:d,address:u,isConnected:h}=e;if(!n?.asset||!n.amount||!s)return null;if(o){const b=r||a;if(!b)throw new Error("Embedded wallet not available \u2014 sign in to create one before locking");const y=i();if(y.length===0)throw new Error("No lock batches configured");const C=n.asset,k=U.parseUnits(n.amount,C.decimals),I=C.chainId,v=c||z.ESCROW_ADDRESS,S=z.normalizeNativeTokenAddress(C.address),w=C.isNative||z.isNativeToken(S);let A=null;for(const R of y){const F=R.tokenTransfers?.find(T=>T.from==="escrow");if(F){A={batch:R,to:F.to,token:F.token,amount:BigInt(F.amount)};break}}const j={chainId:I,calls:w?[{to:v,value:k,data:"0x"}]:[{to:S,value:0n,data:U.encodeFunctionData({abi:m.z,functionName:"transfer",args:[v,k]})}]};let E=null;if(A){if(!d)throw new Error("Lock batches declare an escrow-backed payout but no `buildSpicenetBatch` callback was provided.");const R=d({userAddress:b,destinationChainId:A.batch.chainId,deliveryToken:A.token,deliveryAmount:A.amount,deliveryRecipient:A.to});R&&(E={...R,domain:R.domain??"spicenet"})}const M=[j];E&&M.push(E),M.push(...y);const B=await m.relayerService.estimateActionFees(vs(b,M));return ho(B,{symbol:n.asset.symbol,decimals:n.asset.decimals})}const p=u;if(!h||!p)throw new Error("Please connect your wallet to continue");const g=i();if(g.length===0)throw new Error("No lock batches configured");const f=ks([...g],p),x=await m.relayerService.estimateActionFees(vs(p,f));return ho(x,{symbol:n.asset.symbol,decimals:n.asset.decimals})}async function jo(e){const{selectedAsset:n,externalWallet:s,externalWalletAddress:o,resolveLockBatches:r,lockChainId:a,onLockSuccess:i}=e;if(!n?.asset||!n.amount)throw new Error("Select an asset and enter an amount");if(!o||!s)throw new Error("Please connect your external wallet to continue");const c=r();if(c.length===0)throw new Error("No lock batches configured");const d=c.find(b=>b.chainId===a)||c[0];if(!d)throw new Error("No lock batch for lock chain");const u=await s.getEthereumProvider();let h=null;try{const b=await u.request({method:"eth_chainId"});h=parseInt(b,16)}catch{h=null}h!==a&&await m.ensureWalletOnChain(u,a);const p=m.getChainConfig(a),g=U.createWalletClient({account:o,chain:p?.viemChain,transport:U.custom(u)}),f=m.getClientForChain(a);let x;for(const b of d.calls){const y=await g.sendTransaction({to:b.to,data:b.data,value:b.value,chain:p?.viemChain});if((await f.waitForTransactionReceipt({hash:y,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Lock transaction failed");x=y}x&&i?.(x)}async function Ha(e){const{selectedAsset:n,parsedAmount:s,isInsufficientBalance:o,isSemi7702:r,isSourceDestToken:a,isDirectDeposit:i,setError:c,setIsExecuting:d,setShowStatusPanel:u}=e;if(!n?.asset||s<=0){c("Select an asset and enter an amount");return}if(o){c("Insufficient balance. Add more assets.");return}d(!0),c(null);const h=p=>{console.error("[SpiceLockModal] lock failed:",p);const g=m.sanitizeError(p,""),f=typeof p?.shortMessage=="string"?p.shortMessage:typeof p?.message=="string"?p.message:"";c(g||f||"Transaction failed. Please try again.")};if(r){if(a){try{await jo(e)}catch(p){h(p)}finally{d(!1)}return}u(!0);try{await Eo(e)}catch(p){h(p)}finally{d(!1)}return}u(!0);try{i&&!a?await Ao(e):await Is(e)}catch(p){h(p)}finally{d(!1)}}const Bo=({isOpen:e,onClose:n,lockBatches:s,lockTokenSymbol:o,lockTokenLogoURI:r,destinationInputHook:a,sourceAssetInputHook:i,lockDurationHook:c,lockChainId:d,durationOptions:u,votingPowerEstimate:h,escrowAddress:p,includeWalletAssets:g=!1,destinationTokenAddress:f,onLockSuccess:x,onLockExecute:b,sourceToDestinationConversionRate:y,estimatedOutputAmount:C,onAddFunds:k,buildSpicenetBatch:I,styles:v,dark:S=!1})=>{const{theme:w,dark:A,primaryColor:j,dk:E}=m.useSpiceBrand(v,S),M=w.typography.fontFamily,B=l.useContext(m.SpiceFlowProviderContext),R=(B?.mode||"7702")!=="7702",F=l.useMemo(()=>B?.supportedChainIds??[],[B?.supportedChainIds]),T=l.useMemo(()=>{const Y=B?.allowedTokens;if(!Y||Y.length===0)return[];const ve=new Set(Y.map(We=>We.toLowerCase())),Te=[],je=new Set;for(const We of F){const bt=m.getChainConfig(We);for(const Et of bt?.supportedTokens??[]){if(!ve.has(Et.symbol.toLowerCase()))continue;const Ot=`${We}:${Et.address.toLowerCase()}`;je.has(Ot)||(je.add(Ot),Te.push(U.getAddress(Et.address)))}}return Te},[B?.allowedTokens,F]),N=A?E.cardBg:v?.assetSelector?.backgroundColor||v?.secondaryBackground||"#e9e9e9",L=A?`1px solid ${E.cardBorder}`:"0.5px solid #A8A8A7",W=A?"12px":"6px",Q=A?E.textPrimary:"#111827",O=A?E.textSecondary:"#6b7280",q=l.useMemo(()=>({...v,assetSelector:{...v?.assetSelector,backgroundColor:A?E.cardBg:v?.assetSelector?.backgroundColor,borderRadius:A?"12px":v?.assetSelector?.borderRadius},secondaryBackground:A?E.cardBg:v?.secondaryBackground}),[v,A]),X=l.useMemo(()=>A?{...w,colors:{...w.colors,secondary:E.cardBg,surfaceHover:E.hoverBg,border:E.cardBorder,borderHover:E.inputBorder}}:w,[A,w]),[D,H]=l.useState(null),[G,se]=l.useState(0),ee=c?.selectedDurationIdx??G,pe=c?.setSelectedDurationIdx??se,[V,ye]=l.useState(!1),[$,fe]=l.useState(null),[ke,be]=l.useState(null),[me,ue]=l.useState(!1),[de,P]=l.useState(!1),[oe,ce]=l.useState(null),[ae,he]=l.useState(!1),_=l.useRef(0),[Z,re]=l.useState(!1),[ge,te]=l.useState(null);gt.useWalletClient(),gt.useSwitchChain();const{chain:Ne,address:Me}=gt.useAccount();gt.useConfig();const Oe=l.useRef(Ne);l.useEffect(()=>{Oe.current=Ne},[Ne]);const Ie=qt(),{isReady:ut,isAuthenticated:xt,isConnected:we,address:Ue,provider:Pe,actions:vt}=Ie,{externalWallet:rt,embeddedAddress:Je,externalAddress:pt}=Sn(),{intentStatus:De,startStatusPolling:mt,clearStatus:ft}=qs({checkStepStatus:(Y,ve)=>m.relayerService.checkStepStatus(Y,ve),retryStep:async(Y,ve)=>{const[Te,je]=Y.split("/"),We=parseInt(je||"0",10);await m.relayerService.executeStep(Te,We,ve,{action:"execute"})},maxRetries:3}),{assets:ht,refetch:$e}=An({address:Ue,supportedChains:F,enabled:we&&!R,refetchInterval:3e4}),_e=l.useMemo(()=>{if(T.length===0)return ht;const Y=new Set(T.map(ve=>ve.toLowerCase()));return ht.filter(ve=>Y.has(ve.address.toLowerCase()))},[ht,T]),Ft=Vt(),at=R?Me||pt:Ft,Ce=l.useMemo(()=>{if(!g)return[];const Y=new Set,ve=[],Te=je=>{if(!je)return;const We=je.toLowerCase();Y.has(We)||(Y.add(We),ve.push(U.getAddress(je)))};if(f&&Te(f),R)for(const je of T)Te(je);return ve},[g,R,f,T]),et=l.useMemo(()=>Ce.map(Y=>Y.toLowerCase()).sort().join(","),[Ce]),Tt=l.useMemo(()=>JSON.stringify([...F||[]].sort()),[F]),[kt,Fe]=l.useState([]),Ze=l.useRef(0),dt=l.useCallback(async()=>{if(!g||!at||Ce.length===0){Ze.current++,Fe([]);return}const Y=++Ze.current,ve=U.getAddress(at),Te=F&&F.length>0?F:[d],je=Ce.map(K=>{const J=K.toLowerCase();for(const xe of Te){const le=m.getChainConfig(xe)?.supportedTokens?.find(qe=>m.addressesEqual(qe.address,J));if(le)return{address:K,chainId:xe,configToken:{decimals:le.decimals,symbol:le.symbol,name:le.name,logo:le.logo}}}return{address:K,chainId:d}}),We=new Map;for(const K of je){const J=We.get(K.chainId)||[];J.push(K),We.set(K.chainId,J)}const bt=async(K,J)=>{try{const xe=await jt.readContract(K,{address:J.address,abi:m.z,functionName:"balanceOf",args:[ve]});let le,qe,ze,Ve;if(J.configToken)le=J.configToken.decimals,qe=J.configToken.symbol,ze=J.configToken.name,Ve=J.configToken.logo;else{const[Se,Re,wt]=await Promise.all([jt.readContract(K,{address:J.address,abi:m.z,functionName:"decimals",args:[]}).catch(()=>18),jt.readContract(K,{address:J.address,abi:m.z,functionName:"symbol",args:[]}).catch(()=>"TOKEN"),jt.readContract(K,{address:J.address,abi:m.z,functionName:"name",args:[]}).catch(()=>"TOKEN")]);le=Number(Se),qe=Re,ze=wt}const ot=!!f&&m.addressesEqual(J.address,f)&&J.chainId===d;ot&&r&&(Ve=r),ot&&o&&!J.configToken&&(qe==="TOKEN"&&(qe=o),ze==="TOKEN"&&(ze=o));const Mt=parseFloat((Number(xe)/Math.pow(10,le)).toFixed(6));return{address:J.address,name:ze,symbol:qe,decimals:le,balance:xe,balanceFormatted:Mt,balanceUsd:0,logoURI:Ve,isNative:!1,chainId:J.chainId}}catch{return null}},Et=await Promise.all(Array.from(We.entries()).map(async([K,J])=>{let xe;try{xe=m.getClientForChain(K)}catch{return[]}const le=[],qe=[];for(const Ve of J){const ot=le.length;le.push({address:Ve.address,abi:m.z,functionName:"balanceOf",args:[ve]}),Ve.configToken||le.push({address:Ve.address,abi:m.z,functionName:"decimals",args:[]},{address:Ve.address,abi:m.z,functionName:"symbol",args:[]},{address:Ve.address,abi:m.z,functionName:"name",args:[]}),qe.push({start:ot,item:Ve})}let ze=null;try{ze=await xe.multicall({contracts:le})}catch{ze=null}return ze?qe.map(({start:Ve,item:ot})=>{const Mt=ze[Ve],Se=Mt?.status==="success"?Mt.result:0n;let Re,wt,Ut,Qt;if(ot.configToken)Re=ot.configToken.decimals,wt=ot.configToken.symbol,Ut=ot.configToken.name,Qt=ot.configToken.logo;else{const Fn=ze[Ve+1],Tn=ze[Ve+2],Rn=ze[Ve+3];Re=Fn?.status==="success"?Number(Fn.result):18,wt=Tn?.status==="success"?Tn.result:"TOKEN",Ut=Rn?.status==="success"?Rn.result:wt}const Kt=!!f&&m.addressesEqual(ot.address,f)&&ot.chainId===d;Kt&&r&&(Qt=r),Kt&&o&&!ot.configToken&&(wt==="TOKEN"&&(wt=o),Ut==="TOKEN"&&(Ut=o));const yn=parseFloat((Number(Se)/Math.pow(10,Re)).toFixed(6));return{address:ot.address,name:Ut,symbol:wt,decimals:Re,balance:Se,balanceFormatted:yn,balanceUsd:0,logoURI:Qt,isNative:!1,chainId:ot.chainId}}):(await Promise.all(J.map(Ve=>bt(xe,Ve)))).filter(Ve=>Ve!==null)}));if(Y!==Ze.current)return;const Ot=Et.flat();Fe(Ot)},[g,at,et,Tt,d,f,r,o]);l.useEffect(()=>{if(!g){Fe([]);return}dt();const Y=setInterval(()=>{dt()},15e3);return()=>clearInterval(Y)},[dt,g]);const it=l.useCallback(()=>{dt()},[dt]),Pt=l.useMemo(()=>kt.filter(Y=>Y.balance>0n),[kt]),nn=l.useMemo(()=>{if(R)return Pt.map(ve=>({...ve,_source:"wallet"}));if(!g)return _e;const Y=[];for(const ve of Pt)Y.push({...ve,_source:"wallet"});for(const ve of _e)Y.push({...ve,_source:"spice"});return Y},[R,g,Pt,_e]),yt=l.useRef(null),tt=l.useRef(null);l.useEffect(()=>{tt.current=D},[D]),l.useEffect(()=>{e||(H(null),fe(null),be(null),ue(!1),P(!1),ce(null),ye(!1),re(!1),te(null),he(!1),ft())},[e,ft]),l.useEffect(()=>{a&&a.assetAmount!==(D?.amount||"")&&H(Y=>Y&&{...Y,amount:a.assetAmount})},[a?.assetAmount]),l.useEffect(()=>{i&&i.assetAmount!==(D?.amount||"")&&H(Y=>Y&&{...Y,amount:i.assetAmount})},[i?.assetAmount]),l.useEffect(()=>{if(!R&&De?.overallStatus==="success"&&De.intentId&&yt.current!==De.intentId&&Ue&&De.steps.find(Y=>Y.transactionHash)?.transactionHash){yt.current=De.intentId;const Y=tt.current;if(!Y?.asset||!Y.amount||Y.asset._source==="wallet"||U.parseUnits(Y.amount,Y.asset.decimals)===0n)return;$e()}},[De,Ue,d,$e,R]);const Xe=parseFloat(D?.amount||"")||0,He=l.useMemo(()=>D?.asset?D.asset._source==="wallet"?D.asset.balanceFormatted??0:_e.find(Y=>m.addressesEqual(Y.address,D.asset.address)&&Y.chainId===D.asset.chainId)?.balanceFormatted??0:0,[D?.asset,_e]),nt=Xe>0&&(oe?parseFloat(U.formatUnits(oe.grossAmount,oe.decimals))>He:Xe>He),Ye=c?.selectedDuration??u[ee]??u[0],lt=l.useMemo(()=>!D?.asset||!f?!1:m.addressesEqual(D.asset.address,f)&&D.asset.chainId===d,[D?.asset,f,d]),Ke=l.useMemo(()=>Xe<=0?0:lt?Xe:!y||y<=0?0:Xe/y,[Xe,y,lt]),Ct=l.useMemo(()=>Ke<=0?null:Ke.toLocaleString(void 0,{maximumFractionDigits:2}),[Ke]),At=h&&Ke>0&&Ye?h(Ke,Ye.months):void 0,Rt=l.useMemo(()=>Xe<=0?"$0.00":lt&&y?(Xe*y).toLocaleString(void 0,{style:"currency",currency:"USD",maximumFractionDigits:2}):!y||y<=0?"$0.00":Xe.toLocaleString(void 0,{style:"currency",currency:"USD",maximumFractionDigits:2}),[Xe,y,lt]),sn=l.useMemo(()=>{if(!Ct)return null;const Y=parseFloat(Ct.replace(/,/g,""));return lt&&y?(Y*y).toLocaleString(void 0,{maximumFractionDigits:2}):y?(Y*y).toLocaleString(void 0,{maximumFractionDigits:2}):null},[Ct,y,lt]),Yt=l.useCallback(Y=>{H(ve=>({asset:Y,amount:ve?.asset?.address===Y.address&&ve?.asset?.chainId===Y.chainId&&ve.amount||""})),fe(null),be(null),P(!1),ce(null),i?.setSelectedAsset&&i.setSelectedAsset({symbol:Y.symbol,address:Y.address,decimals:Y.decimals,chainId:Y.chainId})},[i?.setSelectedAsset]),Lt=l.useCallback(Y=>{H(ve=>ve&&{...ve,amount:Y}),fe(null),be(null),P(!1),ce(null),a&&a.setAssetAmount(Y),i&&i.setAssetAmount(Y)},[a,i]),Nt=l.useCallback(Y=>{if(typeof s=="function"){if(!D?.asset||!D.amount)throw new Error("Select an asset and enter an amount");return s({asset:D.asset,amount:Y?.amount??D.amount,amountWei:Y?.amountWei??U.parseUnits(D.amount,D.asset.decimals),grossAmount:Y?.grossAmount,grossAmountWei:Y?.grossAmountWei,feeAdjusted:!!Y})}return s},[s,D]),Ae=l.useRef(null);l.useCallback(Y=>Ss(Ae.current,Y),[]),l.useCallback(()=>Is(Ae.current),[]),l.useCallback(()=>Ao(Ae.current),[]),l.useCallback(()=>Eo(Ae.current),[]);const ne=l.useMemo(()=>!D?.asset||Xe<=0?!1:R?!lt&&!b:!0,[D,Xe,R,lt,b]),ie=l.useCallback(()=>Oa(Ae.current),[]);l.useCallback(()=>jo(Ae.current),[]),l.useEffect(()=>{if(!e||V)return;if(!D?.asset||Xe<=0){be(null),ue(!1),P(!1),ce(null);return}if(!ne){be(null),ue(!1),P(!0),ce(null);return}let Y=!1;const ve=async()=>{const We=++_.current;be(null),P(!1),ue(!0);try{const bt=await ie();if(Y||_.current!==We)return;be(null),P(!0),ce(bt)}catch(bt){if(Y||_.current!==We)return;be(m.sanitizeError(bt,"Unable to calculate fees for this lock.")),P(!1)}finally{!Y&&_.current===We&&ue(!1)}},Te=window.setTimeout(()=>{ve()},250),je=window.setInterval(()=>{ve()},1e4);return()=>{Y=!0,clearTimeout(Te),window.clearInterval(je),ue(!1),P(!1)}},[e,V,D,Xe,ne,ie]),l.useEffect(()=>{if(De?.overallStatus==="success"){const Y=De.steps.find(ve=>ve.transactionHash);x?.(Y?.transactionHash)}},[De?.overallStatus,x]);const Ee=g&&D?.asset?._source==="wallet"&&D?.asset?.chainId===d,Le=l.useCallback(()=>Ha(Ae.current),[]),Ge=!!D?.asset&&Xe>0&&!nt&&!V&&(!ne||de&&!me&&!ke),st=$||ke,ct=t.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:"6px"},children:[t.jsx(is,{color:O}),t.jsxs("p",{style:{fontSize:"13px",color:O,margin:0,lineHeight:"1.5"},children:["Add ",o," by converting assets from your account"]})]});if(Ae.current={selectedAsset:D,parsedAmount:Xe,selectedDuration:Ye,isInsufficientBalance:nt,isSemi7702:R,isSourceDestToken:lt,isDirectDeposit:Ee,requiresRelayerFeeEstimate:ne,address:Ue,embeddedWalletAddress:Ft,providerEmbeddedAddress:Je,externalWallet:rt,externalWalletAddress:Me,isConnected:we,ready:ut,authenticated:xt,provider:Pe,actions:vt,lockChainId:d,escrowAddress:p,onLockExecute:b,onLockSuccess:x,buildSpicenetBatch:I,resolveLockBatches:Nt,startStatusPolling:mt,refreshSpiceAssets:$e,refreshWalletAssets:it,setError:fe,setIsExecuting:ye,setShowStatusPanel:he},!e)return null;const Qe={backgroundColor:N,border:L,borderRadius:W,padding:"16px",marginBottom:"16px"};return t.jsx(Jt,{isOpen:e,onClose:n,title:`Add ${o} to your account`,subtitle:ct,styles:v,dark:A,footerLinkText:"Spicenet accounts \u2192",overlayContent:Z?t.jsx("div",{}):void 0,children:t.jsxs("div",{style:{padding:"0 24px 8px 24px",position:"relative"},children:[t.jsxs("div",{style:{marginBottom:"12px"},children:[k&&t.jsx("div",{style:{display:"flex",justifyContent:"flex-end",marginBottom:"6px"},children:t.jsx(ls,{onClick:k,color:j,fontFamily:M})}),t.jsx("div",{style:{marginTop:"10px",fontSize:"13px",color:O,fontFamily:M},children:t.jsx(In,{assets:nn,selectedAsset:D??void 0,onAssetSelect:Yt,onAmountChange:Lt,label:"Amount",showBalance:!0,showMaxButton:!0,theme:X,styles:q})}),t.jsx("div",{style:{marginTop:"6px",paddingLeft:"4px",fontSize:"13px",color:O,fontFamily:M},children:Rt})]}),t.jsxs("div",{style:Qe,children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:"16px",borderBottom:A?`1px solid ${E.cardBorder}`:"1px solid #e5e7eb"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px"},children:[r?t.jsx("img",{src:r,alt:o,style:{width:"32px",height:"32px",borderRadius:"50%",objectFit:"cover"}}):t.jsx("div",{style:{width:"32px",height:"32px",borderRadius:"50%",backgroundColor:A?E.inputBg:"#d1d5db",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"12px",fontWeight:700,color:Q},children:o.slice(0,2)}),t.jsx("span",{style:{fontSize:"16px",fontWeight:600,color:Q,fontFamily:M},children:o})]}),t.jsxs("div",{style:{textAlign:"right"},children:[t.jsx("div",{style:{fontSize:"22px",fontWeight:700,color:Q,fontFamily:M,lineHeight:1.1},children:Ct??"0.00"}),t.jsxs("div",{style:{fontSize:"12px",color:O,fontFamily:M,marginTop:"2px"},children:["~$",sn??"0.00"]})]})]}),t.jsxs("div",{style:{paddingTop:"16px",paddingBottom:"16px",borderBottom:A?`1px solid ${E.cardBorder}`:"1px solid #e5e7eb"},children:[t.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"16px"},children:[t.jsx("span",{style:{fontSize:"15px",fontWeight:500,color:O,fontFamily:M},children:"Lock Duration"}),t.jsx($t,{color:O})]}),t.jsx(Da,{options:u,selectedIndex:ee,onSelect:pe,primaryColor:j,dark:A,textPrimary:Q,textSecondary:O})]}),t.jsxs("div",{style:{paddingTop:"12px",display:"flex",flexDirection:"column",gap:"8px"},children:[t.jsx(Na,{durationMonths:Ye?.months,fontFamily:M,dark:A,textPrimary:Q,textSecondary:O}),h&&t.jsx(Ua,{votes:At,fontFamily:M,dark:A,textPrimary:Q,textSecondary:O})]})]}),ne&&t.jsx(Nn,{fontFamily:M,textPrimary:Q,textSecondary:O,cardBg:N,cardBorder:L,resolvedDark:A,darkCardBorder:E.cardBorder,primaryColor:j,feePreview:oe,isLoading:me,errorText:ke}),st&&t.jsx(hn,{variant:"error",palette:E,fontFamily:M,style:{marginBottom:"12px"},children:st}),t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:Le,disabled:!Ge,loading:V,dark:A,styles:{...v,button:{...v?.button,backgroundColor:j}},children:V?Ee&&!lt?"DEPOSITING...":lt?"LOCKING...":"CONVERTING...":me&&ne?"CALCULATING FEES...":Ee&&!lt?`DEPOSIT ${o}`:lt?`LOCK ${o}`:`CONVERT TO ${o}`}),t.jsx(za,{isOpen:Z,data:ge,isLocking:V,lockError:st,onContinue:Le,onClose:()=>re(!1),primaryColor:j,fontFamily:M,dark:A}),De&&ae&&t.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:10,backgroundColor:A?E.shell:"white",borderRadius:W,padding:"16px 0"},children:t.jsx(ms,{type:"deposit",isOpen:!!De&&De.overallStatus!=="processing",isProcessing:V||De?.overallStatus==="processing",closeOnComplete:!1,onRetryTx:()=>{ft(),he(!1),Le()},onNewTx:()=>{ft(),he(!1),H(null),yt.current=null,$e(),it()},onClose:()=>{ft(),he(!1)},onComplete:()=>{ft(),he(!1),H(null),yt.current=null,$e(),it()},results:De?.overallStatus==="success"||De?.overallStatus==="failed"?De.steps.map(Y=>({asset:{symbol:D?.asset?.symbol||o,address:D?.asset?.address||""},txHash:Y.transactionHash||"",success:Y.status==="success",amount:D?.amount})):void 0,chainName:m.getChainName(d),explorerUrl:m.getExplorerUrl(d,"").replace(/\/tx\/.*$/,"")||void 0,theme:w,styles:v,dark:A})})]})})};async function Vn(e,n,s){if(!n)return[e];const o=await n(s);return o?[o,e]:[e]}function Fo(e,n,s){if(n===s)return e;if(n<s)return e*10n**BigInt(s-n);const o=10n**BigInt(n-s);return(e+o-1n)/o}async function Qa(e,n){const{currentPaymentAmount:s,destinationToken:o,embeddedWalletAddress:r,providerEmbeddedAddress:a,address:i,isNon7702:c,isPayMode:d,resolvedChainId:u,buildActionCalls:h,buildSpicenetBatch:p,selectedAsset:g,needsSwap:f,exactOutputSwap:x,resolvedTokenIn:b}=e,y=U.parseUnits(s,o.decimals),C=n?.actionAmountOverride??y,k=r||a||(c?void 0:i);if(!k)throw new Error("Embedded wallet address is not available. Please sign in and try again.");const I={userAddress:k,chainId:u,destinationToken:o.address},v=h(C,I),S={chainId:u,calls:v},w=(!d&&!c?!0:g?.asset?._source==="spice")||c,A=(j,E)=>({token:j,from:c?"solver":"escrow",to:k,amount:E});if(y===0n)return[S];if(f&&x){const j=b??_t(g.asset,u)??g.asset.address,E=n?.fundingAmountOverride??x.amountInMax,M=w?[A(j,E)]:[],B={to:j,value:0n,data:U.encodeFunctionData({abi:U.erc20Abi,functionName:"approve",args:[x.calls[0]?.to,x.amountInMax]})},R={chainId:u,calls:[B,...x.calls,...v],tokenTransfers:[...M,...S.tokenTransfers??[]]};return w?Vn(R,p,{userAddress:k,destinationChainId:u,deliveryToken:j,deliveryAmount:E,deliveryRecipient:k,sourceAsset:g.asset}):[R]}if(w){const j=b??_t(g.asset,u)??o.address,E=n?.fundingAmountOverride??y,M={...S,tokenTransfers:[A(j,E),...S.tokenTransfers??[]]};return Vn(M,p,{userAddress:k,destinationChainId:u,deliveryToken:j,deliveryAmount:E,deliveryRecipient:k,sourceAsset:g.asset})}return[S]}async function Va(e,n){const{selectedAsset:s,embeddedWalletAddress:o,resolvedChainId:r,destinationToken:a,buildActionCalls:i,buildSpicenetBatch:c,isPayMode:d,isNon7702:u,needsSwap:h,resolvedSwap:p,quoteAmountOut:g,resolvedTokenIn:f}=e;if(!s?.asset||!o)return[];const x=U.parseUnits(s.amount,s.asset.decimals),b=n??x,y={userAddress:o,chainId:r,destinationToken:a.address},C=i(x,y);if(!(!d&&!u||s.asset?._source==="spice"))return[{chainId:r,calls:C}];const k=(S,w)=>({token:S,from:"escrow",to:o,amount:w});if(h){if(!f)throw new Error("Swap input token could not be resolved");if(!p||g===null)throw new Error("Swap quote not available yet")}if(h&&p&&g&&f){const S=i(g,y),w={chainId:r,calls:[...p.calls,...S],tokenTransfers:[k(f,x)]};return Vn(w,c,{userAddress:o,destinationChainId:r,deliveryToken:f,deliveryAmount:b,deliveryRecipient:o,sourceAsset:s.asset})}const I=f??_t(s.asset,r)??a.address,v={chainId:r,calls:C,tokenTransfers:[k(I,x)]};return Vn(v,c,{userAddress:o,destinationChainId:r,deliveryToken:I,deliveryAmount:b,deliveryRecipient:o,sourceAsset:s.asset})}async function qa(e,n,s,o,r){let a=e;for(let i=0;i<4;i++){const c=await n(a),d=await o(c,s,a,r),u=ka(d);if(u===null||u>=e)return a;const h=a-u,p=e+h;if(p<=a)return a;a=p}return a}async function Ya(e){const{selectedAsset:n,isPayMode:s,parsedAmount:o,needsSwap:r,exactOutputSwap:a,isNon7702:i,isSourceDestToken:c,currentPaymentAmount:d,destinationToken:u,resolvedTokenIn:h,embeddedWalletAddress:p,providerEmbeddedAddress:g,resolvedChainId:f,isConnected:x,address:b,ready:y,authenticated:C,isDirect:k,resolvedSwap:I,isQuoting:v,executionTokenAddress:S,buildPayChainBatches:w,buildSupplyChainBatches:A,estimateGasless:j,estimateRequiredGrossFunding:E}=e;if(!n?.asset)return null;if(s){if(o<=0||r&&!a||i&&c)return null;const T=U.parseUnits(d,u.decimals),N=h||_t(n.asset,f)||n.asset.address||u.address,L={chainId:f,tokenAddress:N,symbol:z.getTokenByAddress(N,f)?.symbol??n.asset.symbol,decimals:z.getTokenByAddress(N,f)?.decimals??n.asset.decimals};if(i){const H=p||g;if(!H)return null;const G=r?a?.amountInMax??0n:T;if(G===0n)return null;const se=await E(G,V=>w({fundingAmountOverride:V}),N,{userOverride:H,useCustomTransfers:!0}),ee=await w({fundingAmountOverride:se}),pe=await j(ee,N,se,{userOverride:H,useCustomTransfers:!0});return xn(pe,L)}if(!x||!b||!y||!C)return null;const W=r?a?.amountInMax??0n:T;if(W===0n)return null;const Q=await E(W,H=>w({fundingAmountOverride:H}),N,{useCustomTransfers:!0});let O=await w({fundingAmountOverride:Q});const q=await j(O,N,Q,{useCustomTransfers:!0}),X=xn(q,L)?.grossAmount??Q;X!==Q&&(O=await w({fundingAmountOverride:X}));const D=await j(O,N,X,{useCustomTransfers:!0});return xn(D,L)}if(o<=0||!p||!k&&!I&&!v||v)return null;const M=U.parseUnits(n.amount,n.asset.decimals),B=await A();if(B.length===0)return null;const R=B.some(T=>T.tokenTransfers?.length),F=await j(B,S,M,R?{useCustomTransfers:!0}:void 0);return xn(F,{chainId:f,tokenAddress:S,symbol:z.getTokenByAddress(S,f)?.symbol??u.symbol,decimals:z.getTokenByAddress(S,f)?.decimals??u.decimals})}async function Ka(e){const{selectedAsset:n,parsedAmount:s,isInsufficientBalance:o,embeddedWalletAddress:r,isPayMode:a,isNon7702:i,resolvedChainId:c,executionTokenAddress:d,destinationToken:u,buildSpicenetBatch:h,buildSupplyChainBatches:p,estimateGasless:g,executeGasless:f,handleProgressCallback:x,onError:b,setError:y,setStep:C,setStatusMsg:k,setTxHash:I,setIsExecuting:v,spiceDepositSubmittedRef:S,abortControllerRef:w}=e;if(!n?.asset||s<=0){y("Select an asset and enter an amount");return}if(o){y("Insufficient balance");return}if(!r){y("Wallet not ready");return}v(!0),y(null),C("signing-delegation"),k("Building transaction..."),I(null),S.current=!1;const A=new AbortController;w.current=A;try{const j=U.parseUnits(n.amount,n.asset.decimals);let E=await p();if(h&&!a&&!i&&!E.some(F=>z.isSpicenetChainId(F.chainId)))throw new Error("Spice-funded supplies must include a Spicenet funding batch before the destination chain batch.");const M=E.some(F=>F.tokenTransfers?.length)?{useCustomTransfers:!0}:void 0,B=await g(E,d,j,M),R=xn(B,{chainId:c,tokenAddress:d,symbol:z.getTokenByAddress(d,c)?.symbol??u.symbol,decimals:z.getTokenByAddress(d,c)?.decimals??u.decimals})?.grossAmount??j;R!==j&&(E=await p(R)),await f(E,d,R,x,A.signal,M),C("success"),k("Deposit confirmed")}catch(j){const E=j instanceof Error?j:new Error(String(j));if(E.name==="AbortError"||A.signal.aborted){C("idle");return}const M=E.message||"Transaction failed";C("error"),k(M),y(M),b?.(E)}finally{v(!1)}}async function Za(e){const{selectedAsset:n,externalWallet:s,externalWalletAddress:o,isPayMode:r,currentPaymentAmount:a,destinationToken:i,resolvedChainId:c,buildActionCalls:d}=e;if(!n?.asset)throw new Error("Select a payment source");if(!o||!s)throw new Error("Please connect your external wallet to continue");const u=U.parseUnits(r?a:n.amount,i.decimals),h={userAddress:o,chainId:c,destinationToken:i.address},p=d(u,h);if(p.length===0)throw new Error("No action calls configured");const g=await s.getEthereumProvider();let f=null;try{const k=await g.request({method:"eth_chainId"});f=parseInt(k,16)}catch{f=null}f!==c&&await m.ensureWalletOnChain(g,c);const x=m.getChainConfig(c),b=U.createWalletClient({account:o,chain:x?.viemChain,transport:U.custom(g)}),y=m.getClientForChain(c);let C;for(const k of p){const I=await b.sendTransaction({to:k.to,data:k.data,value:k.value,chain:x?.viemChain});if((await y.waitForTransactionReceipt({hash:I,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Transaction failed");C=I}return C}async function Xa(e){const{selectedAsset:n,externalWallet:s,externalWalletAddress:o,embeddedWalletAddress:r,providerEmbeddedAddress:a,currentPaymentAmount:i,destinationToken:c,selectedIsEquivalent:d,exactOutputSwap:u,resolvedTokenIn:h,buildPayChainBatches:p,estimateRequiredGrossFunding:g,executeGasless:f,setPaymentResult:x,setTxHash:b}=e;if(!n?.asset)throw new Error("Select a payment source");if(!o||!s)throw new Error("Please connect your external wallet to continue");const y=r||a;if(!y)throw new Error("Embedded wallet not available \u2014 sign in to create one before paying");const C=n.asset,k=C.chainId,I=U.parseUnits(i,c.decimals),v=d?I:u?u.amountInMax:0n;if(v===0n)throw new Error("Quote not available yet");const S=h||n.asset.address,w={userOverride:y,useCustomTransfers:!0},A=await g(v,W=>p({fundingAmountOverride:W}),S,w),j=z.ESCROW_ADDRESS,E=await s.getEthereumProvider();let M=null;try{const W=await E.request({method:"eth_chainId"});M=parseInt(W,16)}catch{M=null}M!==k&&await m.ensureWalletOnChain(E,k);const B=m.getChainConfig(k),R=U.createWalletClient({account:o,chain:B?.viemChain,transport:U.custom(E)}),F=z.normalizeNativeTokenAddress(C.address),T=C.isNative||z.isNativeToken(F)?await R.sendTransaction({to:j,value:A,chain:B?.viemChain}):await R.sendTransaction({to:F,data:U.encodeFunctionData({abi:U.erc20Abi,functionName:"transfer",args:[j,A]}),chain:B?.viemChain});if((await m.getClientForChain(k).waitForTransactionReceipt({hash:T,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Escrow deposit failed");const N=await p({fundingAmountOverride:A}),L=N.some(W=>W.tokenTransfers?.length);return await f(N,S,A,W=>{W.txHash&&(x(Q=>({...Q??{status:"processing"},txHash:W.txHash})),b(W.txHash))},void 0,L?w:{userOverride:y})}async function Ga(e){const{parsedAmount:n,selectedAsset:s,isInsufficientBalance:o,needsSwap:r,exactOutputSwap:a,isNon7702:i,isSourceDestToken:c,externalWalletAddress:d,embeddedWalletAddress:u,providerEmbeddedAddress:h,selectedIsEquivalent:p,resolvedTokenIn:g,isConnected:f,address:x,ready:b,authenticated:y,provider:C,currentPaymentAmount:k,destinationToken:I,resolvedChainId:v,onPayExecute:S,onError:w,buildPayChainBatches:A,estimateGasless:j,executeGasless:E,estimateRequiredGrossFunding:M,setError:B,setIsExecuting:R,setShowStatusPanel:F,setPaymentResult:T,setTxHash:N}=e;if(n<0){B("Enter a valid payment amount");return}if(!s?.asset){B("Select a payment source");return}if(o){B("Insufficient balance");return}if(n>0&&r&&!a){B("Swap quote not available. Try a different asset.");return}if(i){if(!d){B("Please connect your external wallet to continue");return}R(!0),B(null),F(!0),T({status:"processing"});try{let L;if(c||n===0)L=await Za(e);else if(S&&s?.asset){const W=s.asset,Q=U.parseUnits(k,I.decimals),O=p?Q:a?a.amountInMax:0n;if(O===0n)throw new Error("Quote not available yet");const q=u||h;if(!q)throw new Error("Embedded wallet not available \u2014 sign in to create one before paying");const X=g||W.address,D=await M(O,se=>A({fundingAmountOverride:se}),X,{userOverride:q,useCustomTransfers:!0}),H=await A({fundingAmountOverride:D}),G=await S({asset:W,amount:k,amountWei:Q,destinationToken:I,chainBatches:H,requiredNetFunding:O,grossFundingAmount:D,selectedIsEquivalent:p,resolvedTokenIn:X,exactOutputSwapAmountInMax:a?.amountInMax});G&&(N(G),T(se=>({...se??{status:"processing"},txHash:G}))),L=G||void 0}else L=await Xa(e);T(W=>({status:"success",txHash:W?.txHash||L||""}))}catch(L){const W=m.sanitizeError(L,"Payment failed. Please try again.");B(W),T({status:"failed",error:W}),w?.(L instanceof Error?L:new Error(W))}finally{R(!1)}return}if(!f||!x){B("Please connect your wallet to continue");return}if(!b||!y){B(`Please authenticate with ${C||"wallet provider"} to continue`);return}R(!0),B(null),F(!0),T({status:"processing"});try{const L=U.parseUnits(k,I.decimals),W=g||s?.asset?.address||I.address,Q=r?a?.amountInMax??0n:L,O={useCustomTransfers:!0},q=await M(Q,pe=>A({fundingAmountOverride:pe}),W,O);let X=q,D=await A({fundingAmountOverride:q});const H=await j(D,W,q,O),G=xn(H,{chainId:v,tokenAddress:W,symbol:z.getTokenByAddress(W,v)?.symbol??s.asset.symbol,decimals:z.getTokenByAddress(W,v)?.decimals??s.asset.decimals})?.grossAmount??q;G!==q&&(X=G,D=await A({fundingAmountOverride:G}));const se=D.some(pe=>pe.tokenTransfers?.length),ee=await E(D,W,se?X:0n,pe=>{pe.txHash&&(T(V=>({...V,txHash:pe.txHash})),N(pe.txHash))},void 0,O);T(pe=>({status:"success",txHash:pe?.txHash||ee}))}catch(L){const W=m.sanitizeError(L,"Payment failed. Please try again.");B(W),T({status:"failed",error:W}),w?.(L instanceof Error?L:new Error(W))}finally{R(!1)}}const To=({variant:e,destinationSymbol:n,destinationLogoURI:s,destinationDecimals:o,primaryColor:r,fontFamily:a,textPrimary:i,textSecondary:c,cardBg:d,cardBorder:u,dk:h,dark:p,isQuoting:g,quoteError:f,estimatedOutput:x,paymentAmount:b,needsSwap:y,exactOutputSwap:C,adjustable:k=!1,maxAmount:I,onAmountChange:v})=>e==="supply"?t.jsxs("div",{style:{backgroundColor:d,border:`1px solid ${u}`,borderRadius:p?"8px":"7px",padding:"14px 16px 12px 16px",marginBottom:"16px",minHeight:"112px",display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:"12px"},children:[t.jsxs("div",{style:{minWidth:0},children:[t.jsx("span",{style:{fontFamily:a,fontSize:"17px",fontWeight:500,color:p?"#a7abb2":"#7D7C7B",lineHeight:"24px"},children:"Used in TX"}),t.jsx("div",{style:{fontSize:"12px",fontWeight:500,color:c,fontFamily:a,marginTop:"10px"},children:"Net amount after swap and fees"})]}),t.jsxs("div",{style:{textAlign:"right",minWidth:0,display:"inline-flex",alignItems:"center",gap:"8px",border:`1px solid ${u}`,borderRadius:"8px",padding:"8px 10px",minHeight:"42px"},children:[t.jsx(Ro,{symbol:n,logoURI:s,primaryColor:r,size:24}),t.jsx("span",{style:{fontSize:"16px",fontWeight:500,color:p?"#f3f4f6":"#3C3E42",lineHeight:"1.3",fontFamily:a,letterSpacing:"-0.02em"},children:n})]})]}),t.jsx("div",{style:{textAlign:"right",minWidth:0},children:g?t.jsx("span",{style:{fontSize:"18px",color:c,fontFamily:a},children:"Quoting..."}):f?t.jsx("span",{style:{fontSize:"13px",color:p?"#f87171":"#dc2626",fontFamily:a},children:"Quote failed"}):x?t.jsx("span",{style:{fontSize:"32px",fontWeight:700,color:i,fontFamily:a,lineHeight:"0.95",letterSpacing:"-1.4px"},children:x}):t.jsx("span",{style:{fontSize:"20px",color:c,fontFamily:a},children:"\u2014"})})]}):t.jsx(Ja,{destinationSymbol:n,destinationLogoURI:s,destinationDecimals:o,primaryColor:r,fontFamily:a,textPrimary:i,textSecondary:c,cardBg:d,cardBorder:u,dk:h,dark:p,paymentAmount:b||"0",needsSwap:y,exactOutputSwap:C,isQuoting:g,adjustable:k,maxAmount:I,onAmountChange:v}),Ro=({symbol:e,logoURI:n,primaryColor:s,size:o})=>n?t.jsx("img",{src:n,alt:e,style:{width:o,height:o,borderRadius:"50%",objectFit:"cover"}}):t.jsx("div",{style:{width:o,height:o,borderRadius:"50%",backgroundColor:`${s}22`,display:"flex",alignItems:"center",justifyContent:"center",fontSize:o<30?"11px":"12px",fontWeight:700,color:s},children:e.slice(0,2)}),Ja=({destinationSymbol:e,destinationLogoURI:n,destinationDecimals:s,primaryColor:o,fontFamily:r,textPrimary:a,textSecondary:i,cardBg:c,cardBorder:d,dk:u,dark:h,paymentAmount:p,needsSwap:g,exactOutputSwap:f,isQuoting:x,adjustable:b,maxAmount:y,onAmountChange:C})=>{const k='"IBM Plex Mono", monospace',I=parseFloat(p||"0"),v=y?parseFloat(y):0,[S,w]=l.useState(p||""),A=l.useRef(null),[j,E]=l.useState(null),[M,B]=l.useState(null);l.useEffect(()=>{b||w(p||"")},[p,b]);const R=N=>{let L=N;L.startsWith(".")&&(L="0"+L);const W=zs(L);let Q=W;y&&parseFloat(W)>parseFloat(y)&&(Q=y),w(Q),A.current&&clearTimeout(A.current),A.current=setTimeout(()=>C?.(Q),300)},F=N=>{if(!v)return;if(N===100){w(y||v.toString()),A.current&&clearTimeout(A.current),C?.(y||v.toString());return}const L=10**s,W=Math.floor(v*N/100*L)/L,Q=kn(W,s);w(Q),A.current&&clearTimeout(A.current),C?.(Q)},T=v>0?parseFloat(S||"0")/v*100:0;return l.useEffect(()=>()=>{A.current&&clearTimeout(A.current)},[]),t.jsxs("div",{style:{backgroundColor:c,border:`1px solid ${d}`,borderRadius:h?"12px":"6px",padding:"16px",marginBottom:"16px"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px"},children:[t.jsx(Ro,{symbol:e,logoURI:n,primaryColor:o,size:32}),t.jsxs("div",{children:[t.jsx("span",{style:{fontSize:"14px",fontWeight:600,color:a,fontFamily:r},children:"Payment"}),t.jsx("div",{style:{fontSize:"12px",color:i,fontFamily:r,marginTop:"2px"},children:e})]})]}),t.jsxs("div",{style:{textAlign:"right"},children:[b?t.jsx("input",{type:"text",inputMode:"decimal",autoComplete:"off","aria-label":`${e} amount`,"data-spiceflow-focus":!0,value:S,onChange:N=>R(N.target.value),placeholder:"0.0",style:{fontSize:"20px",fontWeight:700,color:a,fontFamily:k,lineHeight:1.1,backgroundColor:"transparent",border:"none",outline:"none",padding:0,width:"120px",textAlign:"right"}}):t.jsx("div",{style:{fontSize:"20px",fontWeight:700,color:a,fontFamily:k,lineHeight:1.1},children:I>0?p:"0.00"}),t.jsx("div",{style:{fontSize:"12px",color:i,fontFamily:k,marginTop:"2px"},children:e}),b&&v>0&&t.jsx("div",{style:{display:"flex",justifyContent:"flex-end",alignItems:"center",gap:"10px",marginTop:"6px"},children:[0,25,50,75,100].map((N,L)=>{const W=Math.abs(T-N)<1,Q=L===4,O=N/100,q=j===N,X=M===N;return t.jsx("button",{onClick:()=>F(N),onMouseEnter:()=>E(N),onMouseLeave:()=>{E(null),B(null)},onMouseDown:()=>B(N),onMouseUp:()=>B(null),title:`${N}%`,style:{width:"14px",height:"14px",padding:0,border:"none",backgroundColor:"transparent",cursor:"pointer",opacity:W?1:q?.8:.5,transform:X?"scale(0.85)":q?"scale(1.15)":"scale(1)",transition:Wt.interactive},children:t.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",children:[t.jsx("circle",{cx:"7",cy:"7",r:"6.84375",fill:Q?o:"none",stroke:Q?o:h?"#4a5568":"#3C3E42",strokeWidth:"0.3125"}),!Q&&O>0&&t.jsx("path",{d:`M 7 7 L 7 0.15625 A 6.84375 6.84375 0 ${O>.5?1:0} 1 ${7+6.84375*Math.sin(O*2*Math.PI)} ${7-6.84375*Math.cos(O*2*Math.PI)} Z`,fill:h?u?.textSecondary||"#9ca3af":"#3C3E42"})]})},N)})})]})]}),g&&f&&!x&&t.jsx("div",{style:{marginTop:"12px",paddingTop:"12px",borderTop:h?`1px solid ${u?.cardBorder||d}`:"1px solid #e5e7eb",display:"flex",justifyContent:"flex-end"},children:t.jsxs("span",{style:{fontSize:"11px",color:i,fontFamily:r,opacity:.7},children:["via ",f.venue]})})]})};function Mo(e,n,s){const o=m.addressesEqual(e.address,n),r=e.chainId===s,a=e._source==="wallet";return a&&o&&r?0:a&&r?1:!a&&o?2:!a&&r?3:4}function $a(e){const{address:n,destinationToken:s,supportedSourceAssets:o,sourceChains:r,enabled:a}=e,i=(l.useContext(m.SpiceFlowProviderContext)?.mode||"7702")!=="7702",c=Vt(),{externalAddress:d,embeddedAddress:u}=Sn(),{assets:h,refetch:p}=An({address:n,supportedChains:r,enabled:a&&!i,refetchInterval:3e4}),g=l.useMemo(()=>{if(i)return[];if(!o||o.length===0)return h;const w=o.map(A=>A.toLowerCase());return h.filter(A=>w.includes(A.address.toLowerCase()))},[h,o,i]),f=i?d:c,x=l.useMemo(()=>{const w=new Set,A=[],j=E=>{if(!E)return;const M=E.toLowerCase();w.has(M)||(w.add(M),A.push(U.getAddress(E)))};if(j(s.address),i&&o)for(const E of o)j(E);return A},[i,s.address,o]),b=l.useMemo(()=>x.map(w=>w.toLowerCase()).sort().join(","),[x]),y=l.useMemo(()=>JSON.stringify([...r||[]].sort()),[r]),[C,k]=l.useState([]),I=l.useRef(0),v=l.useCallback(async()=>{if(!a||!f||x.length===0){I.current++,k([]);return}const w=++I.current,A=U.getAddress(f),j=i?r&&r.length>0?r:[s.chainId]:[s.chainId],E=[];for(const F of x){const T=F.toLowerCase();if(T===s.address.toLowerCase()){const L=m.getChainConfig(s.chainId)?.supportedTokens?.find(W=>m.addressesEqual(W.address,T));E.push({address:F,chainId:s.chainId,configToken:L?{decimals:L.decimals,symbol:L.symbol,name:L.name,logo:L.logo}:void 0});continue}let N=!1;for(const L of j){const W=m.getChainConfig(L)?.supportedTokens?.find(Q=>m.addressesEqual(Q.address,T));if(W){E.push({address:F,chainId:L,configToken:{decimals:W.decimals,symbol:W.symbol,name:W.name,logo:W.logo}}),N=!0;break}}N||E.push({address:F,chainId:s.chainId})}const M=new Map;for(const F of E){const T=M.get(F.chainId)||[];T.push(F),M.set(F.chainId,T)}const B=async(F,T)=>{try{const N=await jt.readContract(F,{address:T.address,abi:U.erc20Abi,functionName:"balanceOf",args:[A]});let L,W,Q,O;if(T.configToken)L=T.configToken.decimals,W=T.configToken.symbol,Q=T.configToken.name,O=T.configToken.logo;else{const[D,H,G]=await Promise.all([jt.readContract(F,{address:T.address,abi:U.erc20Abi,functionName:"decimals"}).catch(()=>18),jt.readContract(F,{address:T.address,abi:U.erc20Abi,functionName:"symbol"}).catch(()=>"TOKEN"),jt.readContract(F,{address:T.address,abi:U.erc20Abi,functionName:"name"}).catch(()=>"TOKEN")]);L=Number(D),W=H,Q=G}const q=m.addressesEqual(T.address,s.address)&&T.chainId===s.chainId;q&&s.logoURI&&(O=s.logoURI),q&&!T.configToken&&W==="TOKEN"&&(W=s.symbol,Q=s.symbol);const X=parseFloat((Number(N)/Math.pow(10,L)).toFixed(6));return{address:T.address,name:Q,symbol:W,decimals:L,balance:N,balanceFormatted:X,balanceUsd:0,logoURI:O,isNative:!1,chainId:T.chainId}}catch{return null}},R=await Promise.all(Array.from(M.entries()).map(async([F,T])=>{let N;try{N=m.getClientForChain(F)}catch{return[]}const L=[],W=[];for(const O of T){const q=L.length;L.push({address:O.address,abi:U.erc20Abi,functionName:"balanceOf",args:[A]}),O.configToken||L.push({address:O.address,abi:U.erc20Abi,functionName:"decimals"},{address:O.address,abi:U.erc20Abi,functionName:"symbol"},{address:O.address,abi:U.erc20Abi,functionName:"name"}),W.push({start:q,item:O})}let Q=null;try{Q=await N.multicall({contracts:L})}catch{Q=null}return Q?W.map(({start:O,item:q})=>{const X=Q[O],D=X?.status==="success"?X.result:0n;let H,G,se,ee;if(q.configToken)H=q.configToken.decimals,G=q.configToken.symbol,se=q.configToken.name,ee=q.configToken.logo;else{const ye=Q[O+1],$=Q[O+2],fe=Q[O+3];H=ye?.status==="success"?Number(ye.result):18,G=$?.status==="success"?$.result:"TOKEN",se=fe?.status==="success"?fe.result:G}const pe=m.addressesEqual(q.address,s.address)&&q.chainId===s.chainId;pe&&s.logoURI&&(ee=s.logoURI),pe&&!q.configToken&&G==="TOKEN"&&(G=s.symbol,se=s.symbol);const V=parseFloat((Number(D)/Math.pow(10,H)).toFixed(6));return{address:q.address,name:se,symbol:G,decimals:H,balance:D,balanceFormatted:V,balanceUsd:0,logoURI:ee,isNative:!1,chainId:q.chainId}}):(await Promise.all(T.map(O=>B(N,O)))).filter(O=>O!==null)}));w===I.current&&k(R.flat())},[a,f,b,y,i,s.address,s.chainId,s.symbol,s.logoURI]);l.useEffect(()=>{if(!a){k([]);return}v();const w=setInterval(()=>{v()},15e3);return()=>clearInterval(w)},[v,a]);const S=l.useCallback(()=>{v()},[v]);return{displayAssets:l.useMemo(()=>{const w=[],A=C.filter(E=>E.balance>0n);for(const E of A)w.push({...E,_source:"wallet"});for(const E of g)w.push({...E,_source:"spice"});const j=s.address.toLowerCase();return w.sort((E,M)=>Mo(E,j,s.chainId)-Mo(M,j,s.chainId)),w},[C,g,s.address,s.chainId]),filteredSpiceAssets:g,walletAssets:C,embeddedWalletAddress:c||u,externalAddress:d,isNon7702:i,refreshSpiceAssets:p,refreshWalletAssets:S}}async function Do(e){const{tokenIn:n,tokenOut:s,amountIn:o,fee:r,chainId:a,config:i}=e;if(o<=0n)throw new Error("amountIn must be greater than 0");const c=(await m.getClientForChain(a).simulateContract({address:i.quoterV2,abi:z.uniV3QuoterV2Abi,functionName:"quoteExactInputSingle",args:[{tokenIn:n,tokenOut:s,amountIn:o,fee:r,sqrtPriceLimitX96:0n}]})).result;if(c[0]<=0n)throw new Error("No liquidity found for this pair. The pool returned 0 output.");return{amountOut:c[0],sqrtPriceX96After:c[1],gasEstimate:c[3]}}async function Wo(e){const n=e.feeTiers??[100,500,3e3,1e4],s=await Promise.allSettled(n.map(r=>Do({...e,fee:r})));let o=null;for(let r=0;r<s.length;r++){const a=s[r];a.status==="fulfilled"&&(!o||a.value.amountOut>o.amountOut)&&(o={...a.value,fee:n[r]})}if(!o)throw new Error("No liquidity found for this pair on any fee tier.");return o}const _a=[{inputs:[{components:[{name:"tokenIn",type:"address"},{name:"tokenOut",type:"address"},{name:"amount",type:"uint256"},{name:"fee",type:"uint24"},{name:"sqrtPriceLimitX96",type:"uint160"}],name:"params",type:"tuple"}],name:"quoteExactOutputSingle",outputs:[{name:"amountIn",type:"uint256"},{name:"sqrtPriceX96After",type:"uint160"},{name:"initializedTicksCrossed",type:"uint32"},{name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"}];async function ei(e){const{tokenIn:n,tokenOut:s,amountOut:o,fee:r,chainId:a,config:i}=e;if(o<=0n)throw new Error("amountOut must be greater than 0");const c=(await m.getClientForChain(a).simulateContract({address:i.quoterV2,abi:_a,functionName:"quoteExactOutputSingle",args:[{tokenIn:n,tokenOut:s,amount:o,fee:r,sqrtPriceLimitX96:0n}]})).result;if(c[0]<=0n)throw new Error("No liquidity found for this pair. The pool returned 0 input.");return{amountIn:c[0],sqrtPriceX96After:c[1],gasEstimate:c[3]}}async function ti(e){const n=e.feeTiers??[100,500,3e3,1e4],s=await Promise.allSettled(n.map(r=>ei({...e,fee:r})));let o=null;for(let r=0;r<s.length;r++){const a=s[r];a.status==="fulfilled"&&(!o||a.value.amountIn<o.amountIn)&&(o={...a.value,fee:n[r]})}if(!o)throw new Error("No liquidity found for this pair on any fee tier.");return o}function No(e){return e.type==="swap"}const As=.02,ni=[1,8453,42161,10,137,43114,56],si="https://api.1inch.dev/swap/v6.0";function Uo(e,n){return z.applySlippage(e,n)}function zo(e){const n=e?.baseUrl??si;return{name:"1inch",chainIds:e?.chainIds??ni,resolve:async(s,o,r)=>{const a=s.maxSlippage??As,i=a*100,c=z.isNativeToken(s.tokenIn)?z.NATIVE_TOKEN_ADDRESS:s.tokenIn,d=z.isNativeToken(s.tokenOut)?z.NATIVE_TOKEN_ADDRESS:s.tokenOut,u=z.isNativeToken(s.tokenIn);try{const h=new URL(`${n}/${o}/swap`);h.searchParams.set("src",c),h.searchParams.set("dst",d),h.searchParams.set("amount",s.amountIn.toString()),h.searchParams.set("from",r),h.searchParams.set("slippage",i.toString()),h.searchParams.set("disableEstimate","true"),h.searchParams.set("allowPartialFill","false");const p={Accept:"application/json"};e?.apiKey&&(p.Authorization=`Bearer ${e.apiKey}`);const g=await fetch(h.toString(),{headers:p});if(!g.ok)throw new m.SpiceflowError("VENUE_API_ERROR",`[1inchVenue] API returned ${g.status} for ${s.tokenIn} \u2192 ${s.tokenOut} on chain ${o}`,{venue:"1inch",chainId:o,tokenIn:s.tokenIn,tokenOut:s.tokenOut,amountIn:s.amountIn.toString(),cause:`HTTP ${g.status}`});const f=await g.json();if(!f.dstAmount||!f.tx)return console.warn(`[1inchVenue] No route data for ${s.tokenIn} \u2192 ${s.tokenOut} on chain ${o}`),null;const x=BigInt(f.dstAmount);if(x<=0n)return console.warn(`[1inchVenue] Zero output for ${s.tokenIn} \u2192 ${s.tokenOut} on chain ${o}`),null;const b=Uo(x,a),y=[];return f.tx.to&&!u&&y.push({to:s.tokenIn,value:0n,data:U.encodeFunctionData({abi:U.erc20Abi,functionName:"approve",args:[f.tx.to,s.amountIn]})}),y.push({to:f.tx.to,value:BigInt(f.tx.value||"0"),data:f.tx.data}),{venue:"1inch",amountOut:x,amountOutMinimum:b,calls:y}}catch(h){if(h instanceof m.SpiceflowError)throw h;const p=h instanceof Error?h.message:String(h);throw new m.SpiceflowError("VENUE_API_ERROR",`[1inchVenue] Exception for ${s.tokenIn} \u2192 ${s.tokenOut} on chain ${o}: ${p}`,{venue:"1inch",chainId:o,tokenIn:s.tokenIn,tokenOut:s.tokenOut,amountIn:s.amountIn.toString(),cause:p})}}}}const Po=[4114,5115],Es={swapRouter:"0x565eD3D57fe40f78A46f348C220121AE093c3cF8",quoterV2:"0x428f20dd8926Eabe19653815Ed0BE7D6c36f8425"},Lo={swapRouter:"0x2626664c2603336E57B271c5C0b26F421741e481",quoterV2:"0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a",chainIds:[8453]};function Oo(e){return{name:"satsuma",chainIds:e.chainIds??Po,resolve:async(n,s,o)=>{const r=n.maxSlippage??As,a=z.isNativeToken(n.tokenIn);let i;try{i=await Wo({tokenIn:n.tokenIn,tokenOut:n.tokenOut,amountIn:n.amountIn,chainId:s,config:{swapRouter:e.swapRouter,quoterV2:e.quoterV2},feeTiers:e.feeTiers})}catch{return console.warn(`[SatsumaVenue] No viable fee tier for ${n.tokenIn} \u2192 ${n.tokenOut} on chain ${s}.`),null}const c=Uo(i.amountOut,r),d=[];return a||d.push({to:n.tokenIn,value:0n,data:U.encodeFunctionData({abi:U.erc20Abi,functionName:"approve",args:[e.swapRouter,n.amountIn]})}),d.push({to:e.swapRouter,value:a?n.amountIn:0n,data:U.encodeFunctionData({abi:z.uniV3SwapRouterAbi,functionName:"exactInputSingle",args:[{tokenIn:n.tokenIn,tokenOut:n.tokenOut,fee:i.fee,recipient:o,amountIn:n.amountIn,amountOutMinimum:c,sqrtPriceLimitX96:0n}]})}),{venue:"satsuma",amountOut:i.amountOut,amountOutMinimum:c,calls:d}}}}function Ho(e){return{name:"satsuma",chainIds:e.chainIds??Po,resolve:async(n,s,o)=>{const r=n.maxSlippage??As,a=z.isNativeToken(n.tokenIn);let i;try{i=await ti({tokenIn:n.tokenIn,tokenOut:n.tokenOut,amountOut:n.amountOut,chainId:s,config:{swapRouter:e.swapRouter,quoterV2:e.quoterV2},feeTiers:e.feeTiers})}catch{return null}const c=BigInt(Math.round(r*1e4)),d=i.amountIn+i.amountIn*c/10000n,u=[];return u.push({to:e.swapRouter,value:a?d:0n,data:U.encodeFunctionData({abi:oi,functionName:"exactOutputSingle",args:[{tokenIn:n.tokenIn,tokenOut:n.tokenOut,fee:i.fee,recipient:o,amountOut:n.amountOut,amountInMaximum:d,sqrtPriceLimitX96:0n}]})}),{venue:"satsuma",amountIn:i.amountIn,amountInMax:d,amountOut:n.amountOut,calls:u}}}}const oi=[{inputs:[{components:[{name:"tokenIn",type:"address"},{name:"tokenOut",type:"address"},{name:"fee",type:"uint24"},{name:"recipient",type:"address"},{name:"amountOut",type:"uint256"},{name:"amountInMaximum",type:"uint256"},{name:"sqrtPriceLimitX96",type:"uint160"}],name:"params",type:"tuple"}],name:"exactOutputSingle",outputs:[{name:"amountIn",type:"uint256"}],stateMutability:"payable",type:"function"}];function Qo(e){const n=[];e?.customVenues&&n.push(...e.customVenues),e?.satsuma&&n.push(Oo(e.satsuma)),n.push(zo(e?.oneInch));function s(r){return n.find(a=>a.chainIds.includes(r))}async function o(r,a,i){const c=[],d=[];for(const u of r){if(!No(u)){c.push(u);continue}const h=s(a);if(!h)throw new m.SpiceflowError("NO_VENUE_FOR_CHAIN",`No liquidity venue configured for chain ${a}. Cannot resolve swap ${u.tokenIn} \u2192 ${u.tokenOut}.`,{chainId:a,tokenIn:u.tokenIn,tokenOut:u.tokenOut,amountIn:u.amountIn.toString()});const p=await h.resolve(u,a,i);if(!p)throw new m.SpiceflowError("NO_LIQUIDITY",`${h.name} returned no quote for ${u.tokenIn} \u2192 ${u.tokenOut} on chain ${a}.`,{venue:h.name,chainId:a,tokenIn:u.tokenIn,tokenOut:u.tokenOut,amountIn:u.amountIn.toString()});c.push(...p.calls),d.push(p)}return{calls:c,resolvedSwaps:d}}return{resolveSwapIntents:o,getVenueForChain:s,venues:n}}function ri(e){const n=e?.customVenues??[];async function s(o,r,a){const i=n.filter(d=>d.chainIds.includes(r));if(i.length===0)throw new m.SpiceflowError("NO_SWAP_ROUTE",`No exact-output venue supports chain ${r}`,{chainId:r,tokenIn:o.tokenIn,tokenOut:o.tokenOut});const c=(await Promise.allSettled(i.map(d=>d.resolve(o,r,a)))).filter(d=>d.status==="fulfilled").map(d=>d.value).filter(d=>d!==null);if(c.length===0)throw new m.SpiceflowError("NO_SWAP_ROUTE",`All aggregators failed for ${o.tokenIn} \u2192 ${o.tokenOut} on chain ${r}`,{chainId:r,tokenIn:o.tokenIn,tokenOut:o.tokenOut,amountOut:o.amountOut.toString()});return c.sort((d,u)=>d.amountIn<u.amountIn?-1:d.amountIn>u.amountIn?1:0),c[0]}return{getQuote:s,venues:n}}const ai=Qo({satsuma:Es});function ii(e){const{direction:n,selectedAsset:s,destinationToken:o,chainId:r,recipient:a,paymentAmount:i}=e,[c,d]=l.useState(!1),[u,h]=l.useState(null),[p,g]=l.useState(null),[f,x]=l.useState(null),[b,y]=l.useState(null),[C,k]=l.useState(null),[I,v]=l.useState(null),[S,w]=l.useState(null),[A,j]=l.useState(null),E=l.useRef(null),M=l.useRef(0),B=l.useRef(new Map),R=l.useMemo(()=>ai,[]),F=l.useMemo(()=>ri({customVenues:[Ho(Es),Ho(Lo)]}),[]),T=l.useMemo(()=>{if(!s?.asset)return null;const H=_t(s.asset,r);if(H)return H;const G=tn(s.asset.address,r,s.asset.chainId);return G?G.address:null},[s?.asset,r]),N=l.useMemo(()=>s?.asset?Ln(s.asset,r):[],[s?.asset,r]);l.useEffect(()=>{let H=!1;if(!s?.asset||N.length<=1){j(null);return}return(async()=>{const G=n==="input"?s.amount:i||"0";let se=0n;try{se=n==="input"?U.parseUnits(G,s.asset.decimals):0n}catch{se=0n}try{const ee=await uo(s.asset,r,{requiredAmount:se});H||j(ee)}catch{H||j(null)}})(),()=>{H=!0}},[s?.asset,s?.amount,r,N,n,i]);const L=l.useMemo(()=>A??T,[A,T]),W=l.useMemo(()=>!s?.asset||!L?[]:[L,...N.filter(H=>H.toLowerCase()!==L.toLowerCase())],[s?.asset,L,N]),Q=l.useMemo(()=>!s?.asset||!gs(s.asset.address,s.asset.chainId,o.address,o.chainId)||!L?!1:m.addressesEqual(L,o.address),[s,o.address,o.chainId,L]),O=L?m.addressesEqual(L,o.address):!1,q=n==="output"&&parseFloat(i||"0")===0,X=!!s?.asset&&!Q&&!O&&!q,D=X?S??L:L;return l.useEffect(()=>{E.current&&clearTimeout(E.current);const H=n==="input"?s?.amount:i,G=parseFloat(H||"0");if(!X||!Number.isFinite(G)||G<=0||!s?.asset||!a||W.length===0){M.current++,g(null),x(null),y(null),k(null),v(null),w(null),h(null),d(!1);return}const se=s.asset.decimals;let ee;try{ee=n==="input"?U.parseUnits(s.amount,se):U.parseUnits(i||"0",o.decimals)}catch{M.current++,h("Invalid amount"),d(!1);return}const pe=++M.current,V=()=>pe!==M.current;d(!0);const ye=n==="output"?150:400;return E.current=setTimeout(async()=>{try{if(n==="input"){const $=R.getVenueForChain(r);if(!$)throw new Error("No swap venue for this chain");let fe=null,ke=null;for(const me of W){const ue=`${n}:${r}:${me.toLowerCase()}:${o.address.toLowerCase()}:${ee.toString()}`,de=B.current.get(ue);if(de&&de.expiresAt>Date.now()&&de.resolvedSwap){fe=de.resolvedSwap,ke=me;break}const P=await $.resolve({type:"swap",tokenIn:me,tokenOut:o.address,amountIn:ee},r,a);if(V())return;if(P){B.current.set(ue,{expiresAt:Date.now()+3e4,direction:n,resolvedSwap:P}),fe=P,ke=me;break}}if(!fe||!ke)throw new Error("No liquidity for this pair");w(ke),v(fe.amountOut),y(fe),k(null);const be=parseFloat(U.formatUnits(fe.amountOut,o.decimals));g(be<.01?be.toPrecision(4):be.toLocaleString(void 0,{maximumFractionDigits:6})),x(null),h(null)}else{let $=null,fe=null;for(const ke of W){const be=`${n}:${r}:${ke.toLowerCase()}:${o.address.toLowerCase()}:${ee.toString()}`,me=B.current.get(be);if(me&&me.expiresAt>Date.now()&&me.exactOutputSwap){$=me.exactOutputSwap,fe=ke;break}try{const ue=await F.getQuote({tokenIn:ke,tokenOut:o.address,amountOut:ee},r,a);if(V())return;B.current.set(be,{expiresAt:Date.now()+3e4,direction:n,exactOutputSwap:ue}),$=ue,fe=ke;break}catch{if(V())return}}if(!$||!fe)throw new Error("No liquidity for this pair");w(fe),k($),y(null),v(null),x(parseFloat(U.formatUnits($.amountIn,se)).toFixed(6)),g(null),h(null)}}catch($){if(V())return;const fe=$ instanceof Error?$.message:"Failed to get quote";h(fe),g(null),x(null),y(null),k(null),v(null),w(null)}finally{V()||d(!1)}},ye),()=>{E.current&&clearTimeout(E.current)}},[n,X,s?.amount,s?.asset?.address,s?.asset?.decimals,i,W,r,o.address,o.decimals,a,R,F]),{isQuoting:c,quoteError:u,estimatedOutput:p,estimatedInput:f,resolvedSwap:b,exactOutputSwap:C,quoteAmountOut:I,resolvedTokenIn:D,isDirect:O,needsSwap:X,selectedIsEquivalent:Q}}const Vo={idle:"","signing-delegation":"Signing delegation...","signing-intent":"Signing intent...",submitting:"Submitting transaction...",executing:"Executing on-chain...",success:"Deposit confirmed",error:"Transaction failed"},qo=["signing-delegation","signing-intent","submitting","executing"],Yo=({isOpen:e,onClose:n,destinationToken:s,buildActionCalls:o,buildSpicenetBatch:r,onPayExecute:a,actionLabel:i,amountDirection:c="input",swapDescription:d,directDescription:u,supportedSourceAssets:h,sourceChains:p,paymentAmount:g,amountInputMode:f="fixed",minPaymentAmount:x,maxPaymentAmount:b,onAmountChange:y,styles:C,dark:k,title:I,subtitle:v,onAddFunds:S,onSuccess:w,onError:A})=>{const j=c==="output",{theme:E,dark:M,primaryColor:B,dk:R,palette:F,fontFamily:T,monoFont:N,inputDark:L,cardBg:W,cardBorder:Q,textPrimary:O,textSecondary:q,subtitleText:X}=m.useSpiceBrand(C,k),D=L?{...E,colors:{...E.colors,secondary:R.cardBg,surfaceHover:R.hoverBg,border:"#2d2d2d",borderHover:"#3a3a3a"}}:E,H=s.chainId,G=(l.useContext(m.SpiceFlowProviderContext)?.mode||"7702")!=="7702",se=qt(),{address:ee,isConnected:pe,isReady:V,isAuthenticated:ye,provider:$}=se,{executeGasless:fe,estimateGasless:ke}=Qn(),{externalWallet:be,externalAddress:me,embeddedAddress:ue}=Sn(),{displayAssets:de,filteredSpiceAssets:P,embeddedWalletAddress:oe,refreshSpiceAssets:ce,refreshWalletAssets:ae}=$a({address:ee,destinationToken:s,supportedSourceAssets:h,sourceChains:p,enabled:e&&(G?!!me:!!ee)}),he=j||G?de:P,[_,Z]=l.useState(null),[re,ge]=l.useState(g||""),[te,Ne]=l.useState(!1),[Me,Oe]=l.useState(null),[Ie,ut]=l.useState("idle"),[xt,we]=l.useState(""),[Ue,Pe]=l.useState(null),[vt,rt]=l.useState(!1),[Je,pt]=l.useState(null),[De,mt]=l.useState(null),[ft,ht]=l.useState(!1),[$e,_e]=l.useState(!1),[Ft,at]=l.useState(null),Ce=l.useRef(_),et=l.useRef(!1),Tt=l.useRef(null),kt=l.useRef(0),Fe=l.useRef(null);l.useEffect(()=>{Ce.current=_},[_]);const Ze=f==="adjustable"?re:g||"0",dt=oe||ue||ee,{isQuoting:it,quoteError:Pt,estimatedOutput:nn,resolvedSwap:yt,exactOutputSwap:tt,quoteAmountOut:Xe,resolvedTokenIn:He,isDirect:nt,needsSwap:Ye,selectedIsEquivalent:lt}=ii({direction:c,selectedAsset:_,destinationToken:s,chainId:H,recipient:dt,paymentAmount:Ze}),Ke=j?parseFloat(Ze||"0"):parseFloat(_?.amount||"")||0,Ct=l.useMemo(()=>_?.asset?P.find(Se=>m.addressesEqual(Se.address,_.asset.address))?.balanceFormatted??0:0,[_,P]),At=l.useMemo(()=>_?.asset?j?De?Fo(De.grossAmount,De.decimals,_.asset.decimals)>_.asset.balance:lt||nt?Ke>_.asset.balanceFormatted:tt?parseFloat(U.formatUnits(tt.amountInMax,_.asset.decimals))>_.asset.balanceFormatted:!1:De?parseFloat(U.formatUnits(Fo(De.grossAmount,De.decimals,_.asset.decimals),_.asset.decimals))>Ct:Ke>Ct:!1,[_,j,De,lt,Ke,tt,Ct,nt]);l.useEffect(()=>{e||(Z(null),Oe(null),Ne(!1),ut("idle"),we(""),Pe(null),rt(!1),pt(null),mt(null),ht(!1),_e(!1),at(null),et.current=!1,f==="adjustable"&&ge(g||""),Tt.current&&(Tt.current.abort(),Tt.current=null))},[e]);const Rt=l.useCallback(Se=>{Z(Re=>({asset:Se,amount:Re?.asset?.address===Se.address&&Re?.asset?.chainId===Se.chainId&&Re.amount||""})),Oe(null),at(null),_e(!1)},[]),sn=l.useCallback(Se=>{Z(Re=>Re&&{...Re,amount:Se}),Oe(null),at(null),_e(!1)},[]),Yt=l.useCallback(Se=>{let Re=Se;b&&parseFloat(Re)>parseFloat(b)&&(Re=b),ge(Re),y?.(Re),Oe(null),at(null),_e(!1)},[b,y]);l.useCallback(Se=>{if(et.current||!ee)return;const Re=Ce.current;!Re?.asset||!Re.amount||Re.asset?._source==="wallet"||U.parseUnits(j?Ze:Re.amount,Re.asset.decimals)===0n||(et.current=!0,ce())},[ee,H,ce,j,Ze]);const Lt=l.useCallback(Se=>{ut({building:"signing-delegation","signing-delegation":"signing-delegation","signing-intent":"signing-intent",submitting:"submitting",executing:"executing",success:"success",error:"error"}[Se.step]||"executing"),we(Se.message),Se.txHash&&Pe(Se.txHash)},[]),Nt=l.useMemo(()=>({currentPaymentAmount:Ze,destinationToken:s,embeddedWalletAddress:oe,providerEmbeddedAddress:ue,address:ee,isNon7702:G,isPayMode:j,resolvedChainId:H,buildActionCalls:o,buildSpicenetBatch:r,selectedAsset:_,needsSwap:Ye,resolvedSwap:yt,exactOutputSwap:tt,quoteAmountOut:Xe,resolvedTokenIn:He}),[Ze,s,oe,ue,ee,G,j,H,o,r,_,Ye,yt,tt,Xe,He]),Ae=l.useCallback(Se=>Qa(Nt,Se),[Nt]),ne=l.useCallback(Se=>Va(Nt,Se),[Nt]),ie=l.useCallback((Se,Re,wt,Ut)=>qa(Se,Re,wt,ke,Ut),[ke]),Ee=l.useMemo(()=>_?.asset?_.asset.chainId===H?_.asset.address:He??_t(_.asset,H)??s.address:s.address,[_,s.address,H,He]),Le=l.useCallback(()=>Ka(Fe.current),[]),Ge=l.useMemo(()=>_?.asset?m.addressesEqual(_.asset.address,s.address)&&_.asset.chainId===s.chainId:!1,[_,s.address,s.chainId]),st=j&&G&&Ge&&Ke>0&&!!_?.asset,ct=Me,Qe=l.useMemo(()=>!(!_?.asset||Ke<=0),[_,Ke,st]),Y=l.useMemo(()=>!e||te||Ie!=="idle"||!Qe||st||!_?.asset?null:[j?"pay":"supply",c,_.asset.address.toLowerCase(),_.asset.chainId,_.amount,Ze,s.address.toLowerCase(),s.chainId,H,He?.toLowerCase()??"",Ye?"swap":"direct",nt?"direct-token":"routed-token",G?"non7702":"7702",Ge?"source-dest":"cross-chain",it?"quoting":"quoted",tt?.amountIn?.toString()??"",tt?.amountInMax?.toString()??"",tt?.venue??"",yt?.amountOut?.toString()??"",Xe?.toString()??"",oe??"",ue??"",ee??""].join("|"),[e,te,Ie,Qe,st,_,j,c,Ze,s,H,He,Ye,nt,G,Ge,it,tt,yt,Xe,oe,ue,ee]),ve=l.useCallback(()=>Ya({selectedAsset:_,isPayMode:j,parsedAmount:Ke,needsSwap:Ye,exactOutputSwap:tt,isNon7702:G,isSourceDestToken:Ge,currentPaymentAmount:Ze,destinationToken:s,resolvedTokenIn:He,embeddedWalletAddress:oe,providerEmbeddedAddress:ue,resolvedChainId:H,isConnected:pe,address:ee,ready:V,authenticated:ye,isDirect:nt,resolvedSwap:yt,isQuoting:it,executionTokenAddress:Ee,buildPayChainBatches:Ae,buildSupplyChainBatches:ne,estimateGasless:ke,estimateRequiredGrossFunding:ie}),[_,j,Ke,Ye,tt,G,Ge,Ze,s,He,oe,ue,ie,Ae,ke,H,pe,ee,V,ye,nt,yt,it,ne,Ee]);l.useEffect(()=>{if(!e){ht(!1),_e(!1),at(null),mt(null);return}if(te||Ie!=="idle"){kt.current+=1,ht(!1);return}if(!Qe){mt(null),ht(!1),_e(!1),at(null);return}if(st){mt(null),ht(!1),_e(!0),at(null);return}if(!Y)return;let Se=!1;const Re=async()=>{const Qt=++kt.current;at(null),ht(!0);try{const Kt=await ve();if(Se||kt.current!==Qt)return;Kt?(mt(Kt),_e(!0)):(mt(null),_e(!1)),at(null)}catch(Kt){if(Se||kt.current!==Qt)return;const yn=m.sanitizeError(Kt,"Unable to calculate fees for this action.");mt(null),_e(!1),at(yn)}finally{!Se&&kt.current===Qt&&ht(!1)}},wt=window.setTimeout(()=>{Re()},250),Ut=window.setInterval(()=>{Re()},1e4);return()=>{Se=!0,clearTimeout(wt),window.clearInterval(Ut),ht(!1)}},[e,te,Ie,ve,Qe,st,Y]);const Te=l.useCallback(()=>Ga(Fe.current),[]);l.useEffect(()=>{!j&&Ie==="success"&&Ue&&(ce(),w?.(Ue))},[j,Ie,Ue,ce,w]),l.useEffect(()=>{if(!j||Je?.status!=="success"||et.current||!ee)return;et.current=!0;const Se=Ce.current;!Se?.asset||Se.asset?._source==="wallet"||ce()},[j,Je?.status,ee,ce]);const je=l.useRef(w),We=l.useRef(A);l.useEffect(()=>{je.current=w},[w]),l.useEffect(()=>{We.current=A},[A]),l.useEffect(()=>{e&&(ce(),ae())},[e,ce,ae]),l.useEffect(()=>{j&&(Je?.status==="success"&&je.current?.(Je.txHash||""),Je?.status==="failed"&&We.current?.(new Error("Payment execution failed")))},[j,Je?.status]);const bt=l.useCallback(()=>{rt(!1),pt(null),Z(null),et.current=!1,ce(),ae()},[ce,ae]);Fe.current={selectedAsset:_,parsedAmount:Ke,currentPaymentAmount:Ze,isInsufficientBalance:At,isPayMode:j,isNon7702:G,isSourceDestToken:Ge,needsSwap:Ye,exactOutputSwap:tt,selectedIsEquivalent:lt,resolvedTokenIn:He,embeddedWalletAddress:oe,providerEmbeddedAddress:ue,externalWallet:be,externalWalletAddress:me,address:ee,isConnected:pe,ready:V,authenticated:ye,provider:$,resolvedChainId:H,executionTokenAddress:Ee,destinationToken:s,buildActionCalls:o,buildSpicenetBatch:r,onPayExecute:a,onError:A,buildPayChainBatches:Ae,buildSupplyChainBatches:ne,estimateGasless:ke,executeGasless:fe,estimateRequiredGrossFunding:ie,handleProgressCallback:Lt,setError:Oe,setStep:ut,setStatusMsg:we,setTxHash:Pe,setIsExecuting:Ne,setShowStatusPanel:rt,setPaymentResult:pt,spiceDepositSubmittedRef:et,abortControllerRef:Tt};const Et=j&&Ke===0,Ot=j?!!_?.asset&&Ke>=0&&!At&&!te&&(Et||st||$e)&&!Ft&&(Et||!Ye||!!tt):!!_?.asset&&Ke>0&&!At&&!te&&$e&&!Ft&&(nt||!!yt&&!it),K=nt?u||`Your ${s.symbol} will be used directly.`:d||"Your assets will be swapped and used in a single atomic transaction.",J=(H?m.getChainConfig(H):void 0)?.viemChain?.blockExplorers?.default?.url??"",xe=qo.indexOf(Ie),le=te?(Vo[Ie]||"EXECUTING...").toUpperCase():Ie==="success"?"DONE":At?"INSUFFICIENT BALANCE":i.toUpperCase(),qe=l.useMemo(()=>{if(te)return"PAYING...";if(At&&_?.asset)return`INSUFFICIENT ${_.asset.symbol}`;if(i)return i.toUpperCase();const Se=Ke>0?` ${Ze} ${s.symbol}`:"";return Ye?`SWAP & PAY${Se}`:`PAY${Se}`},[te,At,_,i,Ke,Ze,s.symbol,Ye]),ze=Ie==="success"?()=>{ut("idle"),Z(null),Pe(null),ce()}:Le,Ve=Ie==="success"?!1:!Ot;if(!e)return null;const ot=j?I||`Pay ${s.symbol}`:i,Mt=j?v:t.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:"3px"},children:[t.jsx("span",{style:{marginTop:"3px",flexShrink:0},children:t.jsx(is,{color:X})}),t.jsx("p",{style:{fontSize:"12px",color:X,margin:0,lineHeight:"1.4",fontFamily:T},children:K})]});if(j){const Se=Je&&(Je.status==="success"||Je.status==="failed")?[{asset:{symbol:_?.asset?.symbol||s.symbol,address:_?.asset?.address||""},amount:Ze,txHash:Je.txHash||"",success:Je.status==="success",error:Je.status==="failed"?Je.error:void 0}]:void 0;return t.jsx(Jt,{isOpen:e,onClose:n,title:ot,subtitle:Mt,styles:C,dark:M,footerLinkText:"Spicenet accounts \u2192",children:t.jsxs("div",{style:{padding:"16px 24px 8px 24px",position:"relative"},children:[S&&t.jsx("div",{style:{display:"flex",justifyContent:"flex-end",marginBottom:"6px"},children:t.jsx(ls,{onClick:S,color:B,fontFamily:T})}),t.jsx("div",{style:{marginBottom:"12px"},children:t.jsx(In,{assets:he,selectedAsset:_??void 0,onAssetSelect:Rt,onAmountChange:()=>{},label:"Pay with",showBalance:!0,showMaxButton:!1,hideAmountInput:!0,displayAmount:_?.asset?Ye?it?"...":tt?`~${parseFloat(U.formatUnits(tt.amountIn,_.asset.decimals)).toFixed(6)}`:void 0:Ze??void 0:void 0,dark:M,theme:D,styles:C})}),t.jsx(To,{variant:"pay",destinationSymbol:s.symbol,destinationLogoURI:s.logoURI,destinationDecimals:s.decimals,primaryColor:B,fontFamily:T,textPrimary:O,textSecondary:q,cardBg:W,cardBorder:Q,dk:R,dark:M,isQuoting:it,quoteError:Pt,estimatedOutput:nn,paymentAmount:Ze,needsSwap:Ye,exactOutputSwap:tt,adjustable:f==="adjustable",maxAmount:b,onAmountChange:Yt}),Qe&&t.jsx(Nn,{fontFamily:T,textPrimary:O,textSecondary:q,cardBg:W,cardBorder:Q,resolvedDark:M,darkCardBorder:R.cardBorder,primaryColor:B,feePreview:De,isLoading:ft,errorText:Ft,directExecutionFeeNote:st}),ct&&t.jsx(hn,{variant:"error",palette:F,fontFamily:T,style:{marginBottom:"12px"},children:ct}),t.jsx(m.Button,{variant:"outline",fullWidth:!0,onClick:Te,disabled:!Ot,loading:te,dark:M,styles:{...C,button:{...C?.button,backgroundColor:B}},children:qe}),Je&&vt&&t.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:10,backgroundColor:M?R.shell:"white",borderRadius:M?"12px":"6px",padding:"16px 0"},children:t.jsx(ms,{type:"payment",isOpen:Je.status!=="processing",isProcessing:te||Je.status==="processing",closeOnComplete:!1,chainName:m.getChainName(H),explorerUrl:m.getExplorerUrl(H,"").replace(/\/tx\/.*$/,"")||void 0,onRetryTx:()=>{rt(!1),pt(null),Te()},onNewTx:bt,onClose:()=>{rt(!1),pt(null)},onComplete:bt,results:Se,styles:C,dark:M})})]})})}return t.jsx(Jt,{isOpen:e,onClose:n,title:ot,subtitle:Mt,dark:M,styles:C,theme:E,children:t.jsxs("div",{style:{padding:"24px 24px 5px 24px",position:"relative"},children:[t.jsx("div",{style:{marginBottom:"16px"},children:t.jsx(In,{assets:he,selectedAsset:_||void 0,onAssetSelect:Rt,onAmountChange:sn,disabled:te||Ie==="success",showBalance:!0,showMaxButton:!0,label:"From Spice Balance",placeholder:"0.00",theme:D,styles:C,dark:L,maxAmount:Ct>0?kn(Ct,_?.asset.decimals??s.decimals):void 0})}),_?.asset&&!nt&&t.jsx(To,{variant:"supply",destinationSymbol:s.symbol,destinationLogoURI:s.logoURI,destinationDecimals:s.decimals,primaryColor:B,fontFamily:T,textPrimary:O,textSecondary:q,cardBg:W,cardBorder:Q,dark:M,isQuoting:it,quoteError:Pt,estimatedOutput:nn}),Qe&&t.jsx(Nn,{fontFamily:T,textPrimary:O,textSecondary:q,cardBg:W,cardBorder:Q,resolvedDark:M,darkCardBorder:R.cardBorder,primaryColor:B,feePreview:De,isLoading:ft,errorText:Ft}),Ie!=="idle"&&t.jsxs("div",{style:{padding:"10px 14px",borderRadius:"7px",marginBottom:"16px",backgroundColor:Ie==="success"?W:Ie==="error"?F.errorBg:W,border:`1px solid ${Ie==="success"?Q:Ie==="error"?F.errorBorder:Q}`},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px"},children:[Ie==="success"?t.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",style:{flexShrink:0},children:t.jsx("path",{d:"M5 13l4 4L19 7",stroke:F.successText,strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round"})}):Ie==="error"?t.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",style:{flexShrink:0},children:t.jsx("path",{d:"M18 6L6 18M6 6l12 12",stroke:F.errorText,strokeWidth:"2.5",strokeLinecap:"round"})}):t.jsx(m.Spinner,{size:14,color:B}),t.jsx("span",{style:{fontSize:"13px",fontWeight:500,color:Ie==="success"?O:Ie==="error"?F.errorText:O,fontFamily:T,flex:1},children:Ie==="success"?"Deposit confirmed":Ie==="error"?xt||"Transaction failed":Vo[Ie]||xt}),Ie==="success"&&Ue&&t.jsx("a",{href:`${J}/tx/${Ue}`,target:"_blank",rel:"noopener noreferrer",style:{fontSize:"12px",color:B,fontFamily:T,textDecoration:"none",whiteSpace:"nowrap",flexShrink:0},children:"View tx \u2192"}),Ie==="error"&&t.jsx("button",{onClick:()=>{ut("idle"),Oe(null),setTimeout(Le,50)},style:{background:"none",border:"none",fontSize:"12px",color:B,fontFamily:T,cursor:"pointer",padding:0,whiteSpace:"nowrap",flexShrink:0},children:"Retry \u2192"})]}),xe>=0&&Ie!=="success"&&Ie!=="error"&&t.jsx("div",{style:{marginTop:"8px",height:"3px",borderRadius:"2px",backgroundColor:`${q}22`,overflow:"hidden"},children:t.jsx("div",{style:{height:"100%",width:"100%",borderRadius:"2px",backgroundColor:B,transformOrigin:"left center",transform:`scaleX(${(xe+1)/qo.length})`,transition:"transform 400ms ease"}})})]}),Me&&Ie==="idle"&&t.jsx(hn,{variant:"error",palette:F,fontFamily:T,style:{marginBottom:"16px"},children:Me}),t.jsx(m.Button,{variant:"outline",fullWidth:!0,disabled:Ve,onClick:ze,theme:E,dark:M,styles:{...C,button:{...C?.button,backgroundColor:B}},style:{fontSize:"20px",fontWeight:600,letterSpacing:"1.5px",fontFamily:N},children:le})]})})},li=e=>t.jsx(Yo,{isOpen:e.isOpen,onClose:e.onClose,amountDirection:"output",destinationToken:{address:e.paymentTokenAddress,symbol:e.paymentTokenSymbol,decimals:e.paymentTokenDecimals,chainId:e.paymentChainId,logoURI:e.paymentTokenLogoURI},buildActionCalls:e.buildActionCalls,buildSpicenetBatch:e.buildSpicenetBatch,actionLabel:e.ctaLabel||"PAY",paymentAmount:e.paymentAmount,amountInputMode:e.amountInputMode,minPaymentAmount:e.minPaymentAmount,maxPaymentAmount:e.maxPaymentAmount,onAmountChange:e.onAmountChange,sourceChains:e.sourceChains,title:e.title,subtitle:e.subtitle,onAddFunds:e.onAddFunds,styles:e.styles,dark:e.dark,onSuccess:e.onPaymentSuccess,onError:e.onPaymentError}),di=({label:e="Export Wallet",style:n,className:s,onExport:o,onError:r})=>{const[a,i]=l.useState(!1),[c,d]=l.useState(!1),{primaryColor:u}=m.useSpiceBrand(),h=l.useContext(m.SpiceFlowProviderContext),{isAuthenticated:p}=qt();let g=null;try{g=Bt.usePrivy()}catch{}let f=null,x=null;try{f=Cn.useEmbeddedReveal(),x=Cn.useDynamicContext()}catch{f=null,x=null}const b=Xt.getDynamicEmbeddedWallet(x),y=l.useCallback(async()=>{if(!p){r?.("User is not authenticated. Please log in first.");return}try{if(h?.provider==="dynamic"){if(!f||!b){r?.("Dynamic is not available. Ensure the app is wrapped in a DynamicContextProvider.");return}await f.initExportProcess(!1),o?.();return}if(!g){r?.("Privy is not available. Ensure the app is wrapped in a PrivyProvider.");return}await g.exportWallet(),o?.()}catch(I){const v=I instanceof Error?I.message:"Failed to export wallet";console.error("Export wallet error:",I),r?.(v)}},[b,f,p,r,o,g,h?.provider]),C=!p,k={padding:"10px 20px",borderRadius:"8px",fontFamily:'"IBM Plex Mono", monospace',fontSize:"14px",fontWeight:500,letterSpacing:"0.4px",textTransform:"uppercase",cursor:C?"not-allowed":"pointer",opacity:C?.5:1,border:"1px solid #0e0d0b",color:"#0e0d0b",backgroundColor:c?`${u}cc`:a?`${u}ee`:u,transition:"background-color 150ms ease, transform 150ms ease",display:"inline-flex",alignItems:"center",justifyContent:"center",gap:"8px",...n};return t.jsxs("button",{onClick:y,onMouseEnter:()=>i(!0),onMouseLeave:()=>{i(!1),d(!1)},onMouseDown:()=>d(!0),onMouseUp:()=>d(!1),disabled:C,className:s,style:k,children:[t.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[t.jsx("path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}),t.jsx("polyline",{points:"17 8 12 3 7 8"}),t.jsx("line",{x1:"12",y1:"3",x2:"12",y2:"15"})]}),e]})};function Ko(e){const n=l.useContext(m.SpiceFlowProviderContext),s=Vt(),o=e?.enabled===!1?void 0:s,r=n?.network?{network:n.network,pollIntervalMs:e?.pollIntervalMs,chainIds:e?.chainIds??n.supportedChainIds}:void 0;return{...to(o,r),embeddedWalletAddress:s}}const ci=({appName:e,status:n,statusLabel:s,totalUsdValue:o,breakdownSubtitle:r,address:a,dk:i,dark:c=!1,showModeToggle:d,isEmbeddedMode:u=!0,onModeToggle:h})=>{const[p,g]=l.useState(!1),f=async()=>{a&&await Sr(a)&&(g(!0),setTimeout(()=>g(!1),2e3))},x=n==="active",b=s||(x?"Active":"Inactive"),y=x?"#10b981":"#9ca3af";return t.jsxs("div",{children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"4px"},children:[t.jsxs("div",{style:{fontSize:"13px",fontWeight:600,color:i.textPrimary},children:[e," Account"]}),d?t.jsxs("button",{onClick:h,style:{display:"flex",alignItems:"center",gap:"4px",padding:"2px 8px",borderRadius:"9999px",backgroundColor:c?i.hoverBg:"#f3f4f6",border:c?`1px solid ${i.cardBorder}`:"1px solid #e5e7eb",cursor:"pointer",fontSize:"11px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',color:i.textSecondary,transition:"background-color 150ms ease, border-color 150ms ease, color 150ms ease",letterSpacing:"0.02em"},children:[t.jsx("div",{style:{width:"6px",height:"6px",borderRadius:"50%",backgroundColor:u?"#22c55e":"#f59e0b"}}),t.jsx("span",{children:u?"Embedded":"External"})]}):t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px",padding:"2px 8px",borderRadius:"9999px",backgroundColor:c?i.hoverBg:x?"#ecfdf5":"#f3f4f6",border:c?`1px solid ${i.cardBorder}`:x?"1px solid #a7f3d0":"1px solid #e5e7eb"},children:[t.jsx("div",{style:{width:"6px",height:"6px",borderRadius:"50%",backgroundColor:y}}),t.jsx("span",{style:{fontSize:"11px",fontWeight:500,color:c?i.textSecondary:x?"#065f46":"#6b7280"},children:b})]})]}),t.jsx("div",{style:{fontSize:"28px",fontWeight:700,color:i.textPrimary,lineHeight:1.2,marginBottom:"2px"},children:pn(o)}),r&&t.jsx("div",{style:{fontSize:"12px",color:i.textSecondary,marginBottom:"8px"},children:r}),a&&t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px"},children:[t.jsx("span",{style:{fontSize:"12px",fontFamily:'"IBM Plex Mono", monospace',color:c?i.textSecondary:"#9ca3af"},children:kr(a)}),t.jsx("button",{onClick:f,style:{padding:"2px 6px",fontSize:"10px",fontWeight:500,backgroundColor:"transparent",color:c?i.textSecondary:"#9ca3af",border:"none",cursor:"pointer",borderRadius:"4px",transition:"background-color 150ms ease, color 150ms ease"},title:"Copy address",children:p?"Copied":"Copy"})]})]})},ui=({pendingDeposits:e,onCompleteDeposit:n,dk:s,dark:o=!1})=>e.length===0?null:t.jsxs("div",{children:[t.jsx("div",{style:{fontSize:"11px",fontWeight:600,letterSpacing:"1px",color:s.textSecondary,marginBottom:"8px",textTransform:"uppercase"},children:"Pending Deposits"}),t.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:e.map((r,a)=>{const i=m.getChainConfig(r.chainId)?.displayName||`Chain ${r.chainId}`;return t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"10px 12px",backgroundColor:o?s.warningBg:"#fffbeb",border:o?`1px solid ${s.warningBorder}`:"1px solid #fde68a",borderRadius:"8px"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[t.jsx("div",{style:{width:"24px",height:"24px",borderRadius:"50%",backgroundColor:o?s.hoverBg:"#fde68a",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"11px",fontWeight:600,color:s.warningText},children:r.tokenSymbol.charAt(0)}),t.jsxs("div",{children:[t.jsxs("div",{style:{fontSize:"13px",fontWeight:500,color:s.textPrimary},children:[r.amount," ",r.tokenSymbol]}),t.jsxs("div",{style:{fontSize:"11px",color:s.warningText},children:["on ",i]})]})]}),t.jsx("button",{onClick:()=>n?.(r),style:{padding:"4px 12px",fontSize:"11px",fontWeight:600,backgroundColor:o?s.hoverBg:"#fef3c7",color:o?s.textPrimary:"#92400e",border:o?`1px solid ${s.warningBorder}`:"1px solid #fde68a",borderRadius:"9999px",cursor:"pointer",transition:"background-color 150ms ease, border-color 150ms ease, color 150ms ease"},children:"Complete"})]},`${r.tokenAddress}-${r.chainId}-${a}`)})})]}),pi=({spiceAssets:e,loading:n,dk:s,dark:o=!1})=>{const r={fontSize:"11px",fontWeight:600,letterSpacing:"1px",color:s.textSecondary,marginBottom:"8px",textTransform:"uppercase"},a={backgroundColor:s.cardBg,border:o?`1px solid ${s.cardBorder}`:"1px solid #e5e7eb",borderRadius:"8px"};return n?t.jsxs("div",{children:[t.jsx("div",{style:r,children:"Idle Balances"}),[1,2].map(i=>t.jsx("div",{style:{...a,padding:"12px",marginBottom:"6px",height:"48px",animation:"pulse 1.5s ease-in-out infinite",opacity:.5}},i))]}):e.length===0?t.jsxs("div",{children:[t.jsx("div",{style:r,children:"Idle Balances"}),t.jsx("div",{style:{...a,padding:"16px",textAlign:"center",fontSize:"13px",color:o?s.textSecondary:"#9ca3af"},children:"No assets yet. Deposit to get started."})]}):t.jsxs("div",{children:[t.jsx("div",{style:r,children:"Idle Balances"}),t.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:e.map((i,c)=>{const d=m.getChainConfig(i.chainId),u=i.chainDisplayName||d?.displayName||`Chain ${i.chainId}`,h=i.tokenDisplaySymbol||i.tokenDisplayName||i.tokenSymbol;return t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"10px 12px",...a},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[i.logoURI?t.jsx("img",{src:i.logoURI,alt:i.tokenSymbol,style:{width:"24px",height:"24px",borderRadius:"50%"}}):t.jsx("div",{style:{width:"24px",height:"24px",borderRadius:"50%",backgroundColor:o?s.hoverBg:"#e5e7eb",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"11px",fontWeight:600,color:s.textSecondary},children:h.charAt(0)}),t.jsxs("div",{children:[t.jsx("div",{style:{fontSize:"13px",fontWeight:500,color:s.textPrimary},children:h}),t.jsx("div",{style:{fontSize:"11px",color:o?s.textSecondary:"#9ca3af"},children:u})]})]}),t.jsxs("div",{style:{textAlign:"right"},children:[t.jsx("div",{style:{fontSize:"13px",fontWeight:500,color:s.textPrimary},children:rn(i.balanceFormatted)}),t.jsx("div",{style:{fontSize:"11px",color:o?s.textSecondary:"#9ca3af"},children:pn(i.usdValue)})]})]},`${i.tokenAddress}-${i.chainId}-${c}`)})})]})},fi=({section:e,dk:n,dark:s=!1})=>{const o=r=>{switch(r){case"green":return"#10b981";case"red":return"#ef4444";default:return n.textPrimary}};return t.jsxs("div",{children:[t.jsx("div",{style:{fontSize:"11px",fontWeight:600,letterSpacing:"1px",color:n.textSecondary,marginBottom:"8px",textTransform:"uppercase"},children:e.title}),t.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:e.items.map((r,a)=>t.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"10px 12px",backgroundColor:n.cardBg,border:s?`1px solid ${n.cardBorder}`:"1px solid #e5e7eb",borderRadius:"8px"},children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[r.tokenLogoURI?t.jsx("img",{src:r.tokenLogoURI,alt:r.tokenSymbol,style:{width:"20px",height:"20px",borderRadius:"50%"}}):t.jsx("div",{style:{width:"20px",height:"20px",borderRadius:"50%",backgroundColor:s?n.hoverBg:"#e5e7eb",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"10px",fontWeight:600,color:n.textSecondary},children:r.tokenSymbol.charAt(0)}),t.jsxs("div",{children:[t.jsx("div",{style:{fontSize:"13px",fontWeight:500,color:n.textPrimary},children:r.tokenSymbol}),t.jsx("div",{style:{fontSize:"11px",color:n.textSecondary},children:r.label})]})]}),t.jsx("div",{style:{fontSize:"13px",fontWeight:600,color:o(r.valueColor)},children:r.displayValue})]},a))})]})},hi=({onDepositClick:e,onWithdrawClick:n,depositDisabled:s=!1,withdrawDisabled:o=!1,primaryColor:r="#EA4B4B",dark:a=!1})=>!e&&!n?null:t.jsxs("div",{style:{display:"flex",gap:"8px"},children:[e&&t.jsx(m.Button,{variant:"outline",onClick:e,disabled:s,dark:a,styles:{button:{backgroundColor:r}},style:{flex:1,height:"44px",fontSize:"12px"},children:"Deposit"}),n&&t.jsx(m.Button,{variant:"outline",onClick:n,disabled:o,dark:a,styles:{button:{backgroundColor:r}},style:{flex:1,height:"44px",fontSize:"12px"},children:"Withdraw"})]}),mi=({appName:e,status:n,statusLabel:s,totalUsdValue:o,breakdownSubtitle:r,address:a,spiceAssets:i,spiceAssetsLoading:c,pendingDeposits:d,customSections:u,onDepositClick:h,onWithdrawClick:p,onCompleteDeposit:g,primaryColor:f,dk:x,dark:b=!1,showModeToggle:y,isEmbeddedMode:C,onModeToggle:k,showConnectExternalCta:I,onConnectExternalWallet:v,connectExternalError:S})=>{const[w,A]=l.useState(!1);return t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"16px",padding:"16px",maxHeight:"calc(80vh - 32px)",overflowY:"auto"},children:[t.jsx(ci,{appName:e,status:n,statusLabel:s,totalUsdValue:o,breakdownSubtitle:r,address:a,dk:x,dark:b,showModeToggle:y,isEmbeddedMode:C,onModeToggle:k}),I&&t.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:[t.jsx("button",{onClick:v,style:{width:"100%",padding:"10px 14px",borderRadius:"8px",backgroundColor:f||"#EA4B4B",color:"#ffffff",border:"none",cursor:"pointer",fontSize:"13px",fontWeight:600,fontFamily:'"Helvetica Neue", sans-serif',transition:"opacity 150ms ease"},children:"Connect External Wallet"}),S&&t.jsx("span",{style:{fontSize:"11px",color:b?x.errorText:"#b91c1c",lineHeight:1.4},children:S})]}),t.jsx("div",{style:{height:"1px",backgroundColor:b?"#2d2d2d":"#e5e7eb"}}),t.jsxs("div",{children:[t.jsxs("button",{onClick:()=>A(!w),style:{display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%",padding:"8px 12px",backgroundColor:x.cardBg,border:b?`1px solid ${x.cardBorder}`:"1px solid #e5e7eb",borderRadius:"8px",cursor:"pointer",color:x.textSecondary,fontSize:"12px",fontWeight:500},children:[t.jsx("span",{children:"How It Works"}),t.jsx("span",{style:{transform:w?"rotate(180deg)":"rotate(0deg)",transition:"transform 200ms ease",fontSize:"10px"},children:"\u25BE"})]}),w&&t.jsxs("div",{style:{marginTop:"6px",padding:"10px 12px",backgroundColor:b?x.cardBg:"#f0fdf4",border:b?`1px solid ${x.cardBorder}`:"1px solid #bbf7d0",borderRadius:"8px",fontSize:"12px",lineHeight:1.5,color:b?x.textSecondary:"#374151"},children:["Fund your ",e," Account from any supported chain (10+ EVM chains). Once funded, transact gas-free and asset-abstracted on"," ",e,"."]})]}),t.jsx(ui,{pendingDeposits:d,onCompleteDeposit:g,dk:x,dark:b}),t.jsx(pi,{spiceAssets:i,loading:c,dk:x,dark:b}),u.map((j,E)=>t.jsx(fi,{section:j,dk:x,dark:b},E)),t.jsx(hi,{onDepositClick:h,onWithdrawClick:p,primaryColor:f,dark:b})]})},js=380,cn=8;function Zo(e){return e?.trim().replace(/^spice/i,"").replace(/[^a-z0-9]/gi,"").toUpperCase()||void 0}function gi(e,n){const s=new Map;Object.entries(n).forEach(([r,a])=>{if(!Number.isFinite(a)||a<=0)return;s.set(r,a),s.set(r.toUpperCase(),a);const i=Zo(r);i&&s.set(i,a)});const o=[e.symbol,e.displaySymbol,e.receiptTokenName,e.name,e.displayName];for(const r of o){if(!r)continue;const a=s.get(r)??s.get(r.toUpperCase());if(a!==void 0)return a;const i=Zo(r);if(!i)continue;const c=s.get(i);if(c!==void 0)return c}return 0}const xi=({appName:e="Spice",status:n="active",statusLabel:s,customSections:o=[],extraAssets:r=[],tokenPrices:a={},breakdownLabels:i=[],styles:c,dark:d=!1,onDepositSuccess:u,onDepositClick:h,onWithdrawClick:p,onCompleteDeposit:g,showModeToggle:f=!1,defaultMode:x})=>{const b=l.useContext(m.SpiceFlowProviderContext),y=b?.mode!=="7702",C=l.useRef(!1);l.useEffect(()=>{if(!C.current){if(m.hasStoredSpiceFlowMode()){C.current=!0;return}x&&b?.setMode&&(b.setMode(x==="non7702"?"ondemand":"7702"),C.current=!0)}},[b,x]);const[k,I]=l.useState(!1),[v,S]=l.useState(null),[w,A]=l.useState({top:0,bottom:0,left:0,placement:"below"}),j=l.useRef(null),E=l.useRef(null),{address:M,isConnected:B}=qt(),R=Vt(),{address:F}=gt.useAccount(),{dark:T,primaryColor:N,dk:L}=m.useSpiceBrand(c,d),W=l.useMemo(()=>b?.supportedChainIds??z.getChainIdsByNetwork("mainnet"),[b?.supportedChainIds]),{assets:Q,loading:O}=An({address:M,supportedChains:W,enabled:!!M&&!y,refetchInterval:3e4}),q=l.useMemo(()=>[...y?[]:Q.map(ae=>{const he=ae.balanceUsd||0,_=Number.isFinite(ae.balanceFormatted)?ae.balanceFormatted:0,Z=he>0?he:gi(ae,a)*_;return{tokenAddress:ae.address,tokenSymbol:ae.symbol,tokenDisplaySymbol:ps(ae),tokenDisplayName:ta(ae),tokenDecimals:ae.decimals,chainId:ae.chainId,chainDisplayName:fs(ae),balance:ae.balance.toString(),balanceFormatted:ae.balanceFormatted,usdValue:Z,logoURI:ae.logoURI}}),...r].filter(ae=>ae.balanceFormatted>0),[y,Q,a,r]),X=l.useMemo(()=>q.reduce((ae,he)=>ae+he.usdValue,0),[q]),{pendingDeposits:D}=Ko({chainIds:W,enabled:!!M}),H=l.useMemo(()=>o.reduce((ae,he)=>ae+he.totalValue,0),[o]),G=X+H,se=l.useMemo(()=>{const ae=[];X>0&&ae.push(`${pn(X)} idle`);for(const he of o){const _=i.find(Z=>Z.sectionTitle===he.title)?.label||he.title.toLowerCase();ae.push(`${pn(he.totalValue)} ${_}`)}return ae.join(" \xB7 ")},[X,o,i]),ee=l.useCallback(ae=>{g?g(ae):S(ae)},[g]),pe=l.useCallback(()=>{S(null)},[]),V=l.useCallback(()=>{S(null),u?.()},[u]),ye=l.useCallback(()=>{if(!j.current)return;const ae=j.current.getBoundingClientRect(),he=window.innerHeight-ae.bottom-cn,_=ae.top-cn,Z=he>=400||he>=_?"below":"above",re=Math.max(cn,Math.min(ae.right-js,window.innerWidth-js-cn)),ge=Z==="below"?ae.bottom+cn:ae.top-cn,te=Z==="above"?window.innerHeight-ge:0;A({top:ge,bottom:te,left:re,placement:Z})},[]);l.useLayoutEffect(()=>{k&&ye()},[k,ye]),l.useEffect(()=>{if(!k)return;const ae=Z=>{j.current&&!j.current.contains(Z.target)&&E.current&&!E.current.contains(Z.target)&&I(!1)},he=Z=>{Z.key==="Escape"&&I(!1)},_=()=>ye();return document.addEventListener("mousedown",ae),document.addEventListener("keydown",he),window.addEventListener("scroll",_,{passive:!0}),window.addEventListener("resize",ye),()=>{document.removeEventListener("mousedown",ae),document.removeEventListener("keydown",he),window.removeEventListener("scroll",_),window.removeEventListener("resize",ye)}},[k,ye]);const $=b?.mode==="7702",fe=$?R||M:F||M,ke=l.useCallback(()=>{b?.setMode&&b.setMode($?"ondemand":"7702")},[b,$]),[be,me]=l.useState(null);let ue=null;try{ue=Bt.useConnectWallet({onSuccess:()=>me(null),onError:ae=>me(m.sanitizeError(ae,"Failed to connect wallet."))}).connectWallet}catch{ue=null}const de=l.useCallback(()=>{ue&&(me(null),ue({walletChainType:"ethereum-only"}))},[ue]),P=f&&!$&&!F&&!!ue;if(typeof window>"u")return null;const oe=t.jsxs("button",{ref:j,onClick:()=>I(!k),style:{display:"inline-flex",alignItems:"center",gap:"6px",padding:"8px 14px",borderRadius:"9999px",backgroundColor:T?L.hoverBg:"#ffffff",border:T?`1px solid ${L.cardBorder}`:"1px solid #e5e7eb",cursor:"pointer",fontSize:"13px",fontWeight:500,fontFamily:'"Helvetica Neue", sans-serif',color:T?L.textPrimary:"#111827",transition:"background-color 150ms ease, border-color 150ms ease, box-shadow 150ms ease",boxShadow:T?"none":"0 1px 2px rgba(0,0,0,0.05)"},children:[t.jsx("span",{style:{width:"8px",height:"8px",borderRadius:"50%",backgroundColor:N,flexShrink:0}}),t.jsxs("span",{children:[e," Account"]}),B&&t.jsxs("span",{style:{color:T?L.textSecondary:"#6b7280"},children:["\xB7 ",pn(G)]}),t.jsx("span",{style:{fontSize:"10px",color:T?L.textSecondary:"#9ca3af",transform:k?"rotate(180deg)":"rotate(0deg)",transition:"transform 200ms ease"},children:"\u25BE"})]}),ce=k?bn.createPortal(t.jsxs(t.Fragment,{children:[t.jsx("div",{style:{position:"fixed",inset:0,backgroundColor:"rgba(0, 0, 0, 0.08)",zIndex:ln.popover},onClick:()=>I(!1)}),t.jsx("div",{ref:E,style:{position:"fixed",top:w.placement==="below"?`${w.top}px`:"auto",bottom:w.placement==="above"?`${w.bottom}px`:"auto",left:`${w.left}px`,width:`${js}px`,maxWidth:`calc(100vw - ${cn*2}px)`,maxHeight:"80vh",backgroundColor:T?L.shell:"#ffffff",border:T?`1px solid ${L.cardBorder}`:"1px solid #e5e7eb",borderRadius:"12px",boxShadow:T?"0 10px 40px rgba(0, 0, 0, 0.5)":"0 10px 40px rgba(0, 0, 0, 0.12)",zIndex:ln.popover+1,overflow:"hidden",animation:`accountDisplayFadeIn 200ms ${St.out}`},children:t.jsx(mi,{appName:e,status:n,statusLabel:s,totalUsdValue:G,breakdownSubtitle:se,address:f?fe:M,spiceAssets:q,spiceAssetsLoading:O,pendingDeposits:D,customSections:o,onDepositClick:h,onWithdrawClick:p,onCompleteDeposit:ee,primaryColor:N,dk:L,dark:T,showModeToggle:f,isEmbeddedMode:$,onModeToggle:ke,showConnectExternalCta:P,onConnectExternalWallet:de,connectExternalError:be})}),t.jsx("style",{children:`
104
104
  @keyframes accountDisplayFadeIn {
105
105
  from { opacity: 0; transform: translateY(-4px); }
106
106
  to { opacity: 1; transform: translateY(0); }
107
107
  }
108
- `})]}),document.body):null;return t.jsxs(t.Fragment,{children:[pe,me,A&&vn.createPortal(t.jsx($s,{isOpen:!0,onClose:ee,supportedChains:[A.chainId],escrowOnly:!0,escrowTokenAddress:A.tokenAddress,escrowAmount:A.amount,escrowTokenDecimals:A.tokenDecimals,escrowTokenSymbol:A.tokenSymbol,styles:l,onDepositSuccess:Ie}),document.body)]})},Zo=class js extends d.Component{constructor(n){super(n),this.handleRetry=()=>{this.state.retryCount>=js.MAX_RETRIES||this.setState(s=>({hasError:!1,error:null,retryCount:s.retryCount+1}))},this.state={hasError:!1,error:null,retryCount:0}}static getDerivedStateFromError(n){return{hasError:!0,error:n}}componentDidCatch(n,s){console.error(`[SdkErrorBoundary] ${this.props.componentName||"SDK component"} failed:`,{message:n.message,componentStack:s.componentStack})}render(){if(this.state.hasError){if(this.props.fallback)return this.props.fallback;const n={display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",padding:"24px",borderRadius:"8px",border:"1px solid rgba(239, 68, 68, 0.2)",backgroundColor:this.props.dark?"rgba(239, 68, 68, 0.08)":"rgba(239, 68, 68, 0.05)",gap:"12px"},s={fontSize:"14px",color:"#f87171",margin:0},o={fontSize:"12px",color:"#888",maxWidth:"280px",textAlign:"center",overflow:"hidden",display:"-webkit-box",WebkitLineClamp:3,WebkitBoxOrient:"vertical",margin:0},r={padding:"8px 16px",fontSize:"12px",borderRadius:"6px",backgroundColor:this.props.dark?"#2a2a2a":"#f3f4f6",color:this.props.dark?"#888":"#374151",border:this.props.dark?"1px solid #3a3a3a":"1px solid #d1d5db",cursor:"pointer",transition:"background-color 150ms ease"},a={fontSize:"12px",color:"#888",margin:0},i=js.MAX_RETRIES-this.state.retryCount;return t.jsxs("div",{style:n,children:[t.jsxs("p",{style:s,children:[this.props.componentName||"Component"," failed to load"]}),this.state.error&&t.jsx("p",{style:o,children:this.state.error.message}),i>0?t.jsxs("button",{onClick:this.handleRetry,style:r,onMouseEnter:c=>{c.target.style.backgroundColor=this.props.dark?"#333":"#e5e7eb"},onMouseLeave:c=>{c.target.style.backgroundColor=this.props.dark?"#2a2a2a":"#f3f4f6"},children:["Try again (",i," left)"]}):t.jsx("p",{style:a,children:"Please refresh the page to try again"})]})}return this.props.children}};Zo.MAX_RETRIES=3;let yi=Zo;const Ci=()=>{const[e,n]=d.useState("0"),[s,o]=d.useState(null);return{assetAmount:e,setAssetAmount:n,selectedAsset:s,setSelectedAsset:o}};function bi(e,n=0){const[s,o]=d.useState(n),r=e[s]??e[0],a=d.useMemo(()=>r?BigInt(Math.round(r.months*30*24*3600)):0n,[r?.months]);return{selectedDurationIdx:s,setSelectedDurationIdx:o,selectedDuration:r,durationSeconds:a}}function wi(){const{actions:e,isReady:n,isAuthenticated:s}=Ot(),o=Lt(),r=d.useRef(!1),a=d.useRef(0),i=d.useRef(null),c=d.useRef(e),[l,u]=d.useState(0);c.current=e,d.useEffect(()=>{r.current=!1,a.current=0,i.current&&(clearTimeout(i.current),i.current=null)},[o]),d.useEffect(()=>{if(!o||!n||!s||r.current)return;r.current=!0;let p=!1;return(async()=>{await new Promise(f=>setTimeout(f,2e3));try{await m.ensureSmartWallet(o,c.current.signMessage),a.current=0}catch(f){console.warn("[SmartWallet] Registration failed:",f),r.current=!1,!p&&a.current<3&&(a.current+=1,i.current=setTimeout(()=>{u(x=>x+1)},5e3))}})(),()=>{p=!0,i.current&&(clearTimeout(i.current),i.current=null)}},[o,n,s,l])}const Kn=1500,Ko="spiceflow-75f053db-70ab-4f37-83cc-abf68cb5b70d",vi={1:{chainId:1,domain:0,network:"mainnet"},42161:{chainId:42161,domain:3,network:"mainnet"},8453:{chainId:8453,domain:6,network:"mainnet"},11155111:{chainId:11155111,domain:0,network:"testnet"},421614:{chainId:421614,domain:3,network:"testnet"},84532:{chainId:84532,domain:6,network:"testnet"}};function Xo(e,n,s){return(e*n+s-1n)/s}function Go(e,n=Kn){return Xo(e,BigInt(1e4+n),10000n)}function Jo(e,n){return`evm:${e}:${M.getAddress(n).toLowerCase()}`}function $o(e){return vi[e]??null}function ki(e){return e==="testnet"?"https://iris-api-sandbox.circle.com":"https://iris-api.circle.com"}function Si(e){const n=typeof e=="number"?e.toString():typeof e=="string"?e:"0",[s,o=""]=n.trim().split("."),r=BigInt(s||"0"),a=BigInt((o+"00").slice(0,2)||"0");return r*100n+a}function Ii(e,n){const s=Si(n);return Xo(e,s,1000000n)}async function Ai(e){const n=e.transferMode??"fast",s=$o(e.sourceChainId),o=$o(e.destinationChainId);if(!s||!o||s.network!==o.network)throw new Error(`Unsupported CCTP route ${e.sourceChainId} -> ${e.destinationChainId}`);let r=0n;const a=n==="fast"?1e3:2e3;if(n==="fast"){const c=e.fetchImpl??fetch,l=`${ki(s.network)}/v2/burn/USDC/fees/${s.domain}/${o.domain}`,u=await c(l);if(!u.ok)throw new Error(`CCTP fee quote failed: ${u.status} ${u.statusText}`);const p=await u.json(),f=Array.isArray(p)?p:Array.isArray(p?.data)?p.data:[],x=f.find(h=>String(h.finalityThreshold??h.finalityThresholdExecuted??"")==="1000")??f[0];r=Ii(e.amountIn,x?.minimumFee??0)}const i=Go(r,e.bufferBps);return{provider:"cctp",sourceChainId:e.sourceChainId,destinationChainId:e.destinationChainId,tokenIn:M.getAddress(e.tokenIn),tokenOut:M.getAddress(e.tokenOut),amountIn:e.amountIn,estimatedAmountOut:e.amountIn>r?e.amountIn-r:0n,quotedBridgeFee:r,bufferedBridgeFee:i,bufferBps:e.bufferBps??Kn,minFinalityThreshold:a,metadata:{sourceDomain:s.domain,destinationDomain:o.domain,transferMode:n}}}function Xn(e){return typeof e=="string"&&e.length>0?e:void 0}function Gn(e){return typeof e=="bigint"?e:typeof e=="number"&&Number.isFinite(e)?BigInt(Math.trunc(e)):typeof e=="string"&&/^\d+$/.test(e)?BigInt(e):null}function Ei(e){const n=e.estimate;return Gn(n?.toAmountMin)??Gn(n?.toAmount)??Gn(e.toAmountMin)??Gn(e.toAmount)}async function ji(e){const n=e.integratorId??Ko,s=e.fetchImpl??fetch,o=e.baseUrl??"https://v2.api.squidrouter.com",r=await s(`${o}/v2/route`,{method:"POST",headers:{"Content-Type":"application/json","x-integrator-id":n},body:JSON.stringify({fromAddress:M.getAddress(e.fromAddress),fromChain:String(e.sourceChainId),fromToken:M.getAddress(e.tokenIn),fromAmount:e.amountIn.toString(),toAddress:M.getAddress(e.toAddress),toChain:String(e.destinationChainId),toToken:M.getAddress(e.tokenOut),slippage:e.slippage??1,quoteOnly:e.quoteOnly??!0})}),a=await r.json().catch(()=>null);if(!r.ok){const u=typeof a?.message=="string"?a.message:`${r.status} ${r.statusText}`;throw new Error(`Squid route quote failed: ${u}`)}const i=a?.route;if(!i)throw new Error("Squid route quote response did not include route");const c=Ei(i);if(c===null)throw new Error("Squid route quote response did not include output amount");const l=e.amountIn>c?e.amountIn-c:0n;return{provider:"squid",sourceChainId:e.sourceChainId,destinationChainId:e.destinationChainId,tokenIn:M.getAddress(e.tokenIn),tokenOut:M.getAddress(e.tokenOut),amountIn:e.amountIn,estimatedAmountOut:c,quotedBridgeFee:l,bufferedBridgeFee:Go(l,e.bufferBps),bufferBps:e.bufferBps??Kn,...Xn(i.quoteId)?{quoteId:Xn(i.quoteId)}:{},...Xn(r.headers.get("x-request-id"))?{route:Xn(r.headers.get("x-request-id"))}:{},metadata:{requestId:r.headers.get("x-request-id")??void 0,slippage:e.slippage??1,quoteOnly:e.quoteOnly??!0}}}function Bi(e){return{type:"rebalancing",version:1,reason:e.reason??"spiceflow-intent",bridge:{provider:e.bridgeQuote.provider,quoteId:e.bridgeQuote.quoteId,route:e.bridgeQuote.route,sourceChainId:e.bridgeQuote.sourceChainId,destinationChainId:e.bridgeQuote.destinationChainId,tokenIn:e.bridgeQuote.tokenIn,tokenOut:e.bridgeQuote.tokenOut,amountIn:e.bridgeQuote.amountIn.toString(),estimatedAmountOut:e.bridgeQuote.estimatedAmountOut.toString(),quotedBridgeFee:e.bridgeQuote.quotedBridgeFee.toString(),bufferedBridgeFee:e.bridgeQuote.bufferedBridgeFee.toString(),bufferBps:e.bridgeQuote.bufferBps,minFinalityThreshold:e.bridgeQuote.minFinalityThreshold,...e.bridgeQuote.metadata},sourceAsset:e.sourceAsset?{chainId:e.sourceAsset.chainId,token:e.sourceAsset.address,symbol:e.sourceAsset.symbol,decimals:e.sourceAsset.decimals}:void 0,...e.extra}}function Fi(e){return M.keccak256(M.encodeAbiParameters([{type:"address"},{type:"uint256"},{type:"address"},{type:"uint256"},{type:"uint256"},{type:"address"},{type:"uint256"},{type:"uint256"}],[M.getAddress(e.recipient),BigInt(e.fromChainId),M.getAddress(e.fromToken),e.fromAmount,BigInt(e.toChainId),M.getAddress(e.toToken),e.toAmountMin,e.salt??BigInt(Date.now())]))}function Ti(e){const n=BigInt(Math.floor(Date.now()/1e3)),s=e.exp??n+3600n,o=e.nbf??0n,r=e.idempotenceKey??Fi({recipient:e.recipient,fromChainId:e.fromChainId,fromToken:e.fromToken,fromAmount:e.fromAmount,toChainId:e.toChainId,toToken:e.toToken,toAmountMin:e.toAmountMin});return{chainId:e.spicenetChainId,tokenTransfers:[],calls:[{to:"0x0000000000000000000000000000000000000000",value:0n,data:M.encodeFunctionData({abi:W.spicenetAbi,functionName:"createRebalancingRequest",args:[{idempotenceKey:r,nbf:o,exp:s,metadata:JSON.stringify(e.metadata??{}),recipient:M.getAddress(e.recipient).toLowerCase(),fromChainToken:Jo(e.fromChainId,e.fromToken),fromChainTokenAmount:e.fromAmount,toChainToken:Jo(e.toChainId,e.toToken),toChainTokenAmountMin:e.toAmountMin}]})}]}}function Tn(e){try{return W.resolveTokenRef(e)}catch{throw new m.SpiceflowError("ROUTE_TOKEN_NOT_FOUND",`Token "${e[0]}" not found on chain ${e[1]} in the token registry.`,{symbol:e[0],chainId:e[1]})}}function Ri(e,n){if(e[0].toUpperCase()===n[0].toUpperCase()&&e[1]===n[1])return!0;let s,o;try{s=Tn(e),o=Tn(n)}catch{return!1}const r=new Set(W.getEquivalentAddresses(o.address).map(a=>a.toLowerCase()));return r.add(o.address.toLowerCase()),r.has(s.address.toLowerCase())}function Mi(){const e=[];for(const n of Object.keys(W.CHAINS).map(Number))for(const s of W.getTokensForChain(n))e.push([s.symbol,n]);return e}async function Di(e){const{action:n,inputToken:s,inputAmount:o,registry:r,userAddress:a,slippage:i,intermediaryCandidates:c}=e;if(n.calls.length===0)throw new m.SpiceflowError("INVALID_PARAMS","buildIntent: action.calls must not be empty.",{action:n});if(o<=0n)throw new m.SpiceflowError("INVALID_PARAMS","buildIntent: inputAmount must be greater than zero.",{inputAmount:o.toString()});const l=n.supportedInputTokens??Mi();if(!l.some(C=>Ri(s,C))){const C=l.map(([y,w])=>`${y} (chain ${w})`).join(", ");throw new m.SpiceflowError("ROUTE_UNSUPPORTED_INPUT",`Input token "${s[0]}" on chain ${s[1]} is not in the action's supported input tokens. Supported: ${C}.`,{inputToken:{symbol:s[0],chainId:s[1]},supportedInputTokens:l})}const u=Tn(s),p=Tn(n.outputToken),f=bo({sourceAsset:u,outputAsset:p,sourceChainId:u.chainId,destinationChainId:n.chainId,intermediaryCandidates:c}),{chainBatches:x,solverFrontToken:h,solverFrontAmount:g,resolvedSwaps:b}=await wo({route:f,sourceAmount:o,userAddress:a,registry:r,actionCalls:n.calls,slippage:i});return{chainBatches:x,route:f,resolvedSwaps:b,resolvedInputToken:u,resolvedOutputToken:p,solverFrontToken:h,solverFrontAmount:g}}const Wi=[0n,1n,30n],Ni=new Set(["ABORT","CONCURRENT_EXECUTION","WALLET_DISCONNECTED","WALLET_REJECTED","NO_VENUE_FOR_CHAIN"]);function _o(e,n){return n===0n?e:e*(1000n-n)/1000n}async function Pi(e,n){const{chainId:s,swapCalls:o,quoteAmountOut:r,buildActionCalls:a,tokenAddress:i,tokenTransferAmount:c,onProgress:l,signal:u,options:p,buffers:f=Wi}=n;for(let x=0;x<f.length;x++){const h=f[x],g=_o(r,h),b=a(g),C=[{chainId:s,calls:[...o,...b]}];try{return await e(C,i,c,l,u,p)}catch(y){if(m.isSpiceflowError(y)&&Ni.has(y.code)||y.name==="AbortError"||u?.aborted||y.message?.includes("User rejected")||y.message?.includes("User denied")||y.code===4001||x>=f.length-1)throw y;const w=Number(f[x+1])/10;console.warn(`[SwapThenAction] Action attempt ${x+1} failed (buffer ${Number(h)/10}%), retrying with ${w}% buffer...`,y.message),l?.({step:"signing-delegation",message:`Adjusting action amount, retrying (${w}% buffer)...`})}}throw new m.SpiceflowError("ALL_ATTEMPTS_FAILED","All action attempts failed after exhausting buffer progression.",{attempts:f.length,chainId:s})}fr(),exports.SpiceFlowProvider=m.SpiceFlowProvider,exports.SpiceFlowProviderContext=m.SpiceFlowProviderContext,exports.SpiceflowError=m.SpiceflowError,exports.Spinner=m.Spinner,exports.buildDarkPalette=m.buildDarkPalette,exports.buildLightPalette=m.buildLightPalette,exports.getChainConfig=m.getChainConfig,exports.getChainName=m.getChainName,exports.isSpiceflowError=m.isSpiceflowError,exports.relayerService=m.relayerService,exports.resolveTheme=m.resolveTheme,exports.useSpiceBrand=m.useSpiceBrand,Object.defineProperty(exports,"ESCROW_ADDRESS",{enumerable:!0,get:function(){return W.ESCROW_ADDRESS}}),Object.defineProperty(exports,"NATIVE_TOKEN_ADDRESS",{enumerable:!0,get:function(){return W.ZERO_ADDRESS}}),Object.defineProperty(exports,"SPICENET_NATIVE_CHAIN_ID",{enumerable:!0,get:function(){return W.SPICENET_NATIVE_CHAIN_ID}}),Object.defineProperty(exports,"applySlippage",{enumerable:!0,get:function(){return W.applySlippage}}),Object.defineProperty(exports,"buildUniV3SwapCalls",{enumerable:!0,get:function(){return W.buildUniV3SwapCalls}}),Object.defineProperty(exports,"getChainIdsByNetwork",{enumerable:!0,get:function(){return W.getChainIdsByNetwork}}),Object.defineProperty(exports,"isNativeToken",{enumerable:!0,get:function(){return W.isNativeToken}}),Object.defineProperty(exports,"isSpicenetChainId",{enumerable:!0,get:function(){return W.isSpicenetChainId}}),Object.defineProperty(exports,"normalizeNativeTokenAddress",{enumerable:!0,get:function(){return W.normalizeNativeTokenAddress}}),Object.defineProperty(exports,"spicenetAbi",{enumerable:!0,get:function(){return W.spicenetAbi}}),Object.defineProperty(exports,"spicenetWithdrawalAbi",{enumerable:!0,get:function(){return W.spicenetAbi}}),exports.AccountDisplay=gi,exports.AddFundsLink=hs,exports.CheckIcon=Ys,exports.ChevronIcon=Gt,exports.CloseIcon=mn,exports.DEFAULT_BRIDGE_FEE_BUFFER_BPS=Kn,exports.DEFAULT_SQUID_INTEGRATOR_ID=Ko,exports.DetailRow=gn,exports.ExportWalletButton=di,exports.ProviderLogin=gs,exports.SATSUMA_CITREA_CONFIG=As,exports.SPICE_COMBINED_FEE_RECIPIENT=yn,exports.SPICE_SOLVER_ADDRESS=Gs,exports.SdkErrorBoundary=yi,exports.SearchInput=ts,exports.SelectChainModal=aa,exports.SpiceBalance=Fa,exports.SpiceDeposit=eo,exports.SpiceLock=Eo,exports.SpiceLockModal=Eo,exports.SpicePay=li,exports.SpiceSupply=Vo,exports.SpiceWithdraw=vo,exports.StatusBanner=xn,exports.UNIV3_BASE_CONFIG=Uo,exports.applyBuffer=_o,exports.areEquivalentOnChains=Cs,exports.buildIntent=Di,exports.buildRebalancingBatch=Ti,exports.buildRebalancingMetadata=Bi,exports.buildRoutedBatches=wo,exports.create1inchVenue=No,exports.createLiquidityRegistry=Oo,exports.createSatsumaVenue=zo,exports.duration=Rt,exports.easing=bt,exports.executeSwapThenAction=Pi,exports.findEquivalentOnChain=_t,exports.findTokenOnChain=Ss,exports.font=Rs,exports.getAssetChainTokenCandidates=zn,exports.getBestUniV3Quote=Mo,exports.getUniV3Quote=Ro,exports.isSwapIntent=Do,exports.quoteCctpFee=Ai,exports.quoteSquidFee=ji,exports.radius=es,exports.resolveAssetTokenAddressOnChain=Jt,exports.resolveFundedToken=lo,exports.resolveRoute=bo,exports.resolveTokenRef=Tn,exports.transition=Mt,exports.useAssetInput=Ci,exports.useEmbeddedWalletAddress=Lt,exports.useGaslessExecution=Hn,exports.useLockDuration=bi,exports.useSmartWallet=wi,exports.useSpiceAssets=jn,exports.useSpiceExecution=Hn,exports.useSpicePendingDeposits=qo,exports.useWallet=Ot,exports.z=dn;
108
+ `})]}),document.body):null;return t.jsxs(t.Fragment,{children:[oe,ce,v&&bn.createPortal(t.jsx(eo,{isOpen:!0,onClose:pe,supportedChains:[v.chainId],escrowOnly:!0,escrowTokenAddress:v.tokenAddress,escrowAmount:v.amount,escrowTokenDecimals:v.tokenDecimals,escrowTokenSymbol:v.tokenSymbol,styles:c,onDepositSuccess:V}),document.body)]})},Xo=class Bs extends l.Component{constructor(n){super(n),this.handleRetry=()=>{this.state.retryCount>=Bs.MAX_RETRIES||this.setState(s=>({hasError:!1,error:null,retryCount:s.retryCount+1}))},this.state={hasError:!1,error:null,retryCount:0}}static getDerivedStateFromError(n){return{hasError:!0,error:n}}componentDidCatch(n,s){console.error(`[SdkErrorBoundary] ${this.props.componentName||"SDK component"} failed:`,{message:n.message,componentStack:s.componentStack})}render(){if(this.state.hasError){if(this.props.fallback)return this.props.fallback;const n={display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",padding:"24px",borderRadius:"8px",border:"1px solid rgba(239, 68, 68, 0.2)",backgroundColor:this.props.dark?"rgba(239, 68, 68, 0.08)":"rgba(239, 68, 68, 0.05)",gap:"12px"},s={fontSize:"14px",color:"#f87171",margin:0},o={fontSize:"12px",color:"#888",maxWidth:"280px",textAlign:"center",overflow:"hidden",display:"-webkit-box",WebkitLineClamp:3,WebkitBoxOrient:"vertical",margin:0},r={padding:"8px 16px",fontSize:"12px",borderRadius:"6px",backgroundColor:this.props.dark?"#2a2a2a":"#f3f4f6",color:this.props.dark?"#888":"#374151",border:this.props.dark?"1px solid #3a3a3a":"1px solid #d1d5db",cursor:"pointer",transition:"background-color 150ms ease"},a={fontSize:"12px",color:"#888",margin:0},i=Bs.MAX_RETRIES-this.state.retryCount;return t.jsxs("div",{style:n,children:[t.jsxs("p",{style:s,children:[this.props.componentName||"Component"," failed to load"]}),this.state.error&&t.jsx("p",{style:o,children:this.state.error.message}),i>0?t.jsxs("button",{onClick:this.handleRetry,style:r,onMouseEnter:c=>{c.target.style.backgroundColor=this.props.dark?"#333":"#e5e7eb"},onMouseLeave:c=>{c.target.style.backgroundColor=this.props.dark?"#2a2a2a":"#f3f4f6"},children:["Try again (",i," left)"]}):t.jsx("p",{style:a,children:"Please refresh the page to try again"})]})}return this.props.children}};Xo.MAX_RETRIES=3;let yi=Xo;const Ci=()=>{const[e,n]=l.useState("0"),[s,o]=l.useState(null);return{assetAmount:e,setAssetAmount:n,selectedAsset:s,setSelectedAsset:o}};function bi(e,n=0){const[s,o]=l.useState(n),r=e[s]??e[0],a=l.useMemo(()=>r?BigInt(Math.round(r.months*30*24*3600)):0n,[r?.months]);return{selectedDurationIdx:s,setSelectedDurationIdx:o,selectedDuration:r,durationSeconds:a}}function wi(){const{actions:e,isReady:n,isAuthenticated:s}=qt(),o=Vt(),r=l.useRef(!1),a=l.useRef(0),i=l.useRef(null),c=l.useRef(e),[d,u]=l.useState(0);c.current=e,l.useEffect(()=>{r.current=!1,a.current=0,i.current&&(clearTimeout(i.current),i.current=null)},[o]),l.useEffect(()=>{if(!o||!n||!s||r.current)return;r.current=!0;let h=!1;return(async()=>{await new Promise(p=>setTimeout(p,2e3));try{await m.ensureSmartWallet(o,c.current.signMessage),a.current=0}catch(p){console.warn("[SmartWallet] Registration failed:",p),r.current=!1,!h&&a.current<3&&(a.current+=1,i.current=setTimeout(()=>{u(g=>g+1)},5e3))}})(),()=>{h=!0,i.current&&(clearTimeout(i.current),i.current=null)}},[o,n,s,d])}const qn=1500,Go="spiceflow-75f053db-70ab-4f37-83cc-abf68cb5b70d",vi={1:{chainId:1,domain:0,network:"mainnet"},42161:{chainId:42161,domain:3,network:"mainnet"},8453:{chainId:8453,domain:6,network:"mainnet"},11155111:{chainId:11155111,domain:0,network:"testnet"},421614:{chainId:421614,domain:3,network:"testnet"},84532:{chainId:84532,domain:6,network:"testnet"}};function Jo(e,n,s){return(e*n+s-1n)/s}function $o(e,n=qn){return Jo(e,BigInt(1e4+n),10000n)}function _o(e,n){return`evm:${e}:${U.getAddress(n).toLowerCase()}`}function er(e){return vi[e]??null}function ki(e){return e==="testnet"?"https://iris-api-sandbox.circle.com":"https://iris-api.circle.com"}function Si(e){const n=typeof e=="number"?e.toString():typeof e=="string"?e:"0",[s,o=""]=n.trim().split("."),r=BigInt(s||"0"),a=BigInt((o+"00").slice(0,2)||"0");return r*100n+a}function Ii(e,n){const s=Si(n);return Jo(e,s,1000000n)}async function Ai(e){const n=e.transferMode??"fast",s=er(e.sourceChainId),o=er(e.destinationChainId);if(!s||!o||s.network!==o.network)throw new Error(`Unsupported CCTP route ${e.sourceChainId} -> ${e.destinationChainId}`);let r=0n;const a=n==="fast"?1e3:2e3;if(n==="fast"){const c=e.fetchImpl??fetch,d=`${ki(s.network)}/v2/burn/USDC/fees/${s.domain}/${o.domain}`,u=await c(d);if(!u.ok)throw new Error(`CCTP fee quote failed: ${u.status} ${u.statusText}`);const h=await u.json(),p=Array.isArray(h)?h:Array.isArray(h?.data)?h.data:[],g=p.find(f=>String(f.finalityThreshold??f.finalityThresholdExecuted??"")==="1000")??p[0];r=Ii(e.amountIn,g?.minimumFee??0)}const i=$o(r,e.bufferBps);return{provider:"cctp",sourceChainId:e.sourceChainId,destinationChainId:e.destinationChainId,tokenIn:U.getAddress(e.tokenIn),tokenOut:U.getAddress(e.tokenOut),amountIn:e.amountIn,estimatedAmountOut:e.amountIn>r?e.amountIn-r:0n,quotedBridgeFee:r,bufferedBridgeFee:i,bufferBps:e.bufferBps??qn,minFinalityThreshold:a,metadata:{sourceDomain:s.domain,destinationDomain:o.domain,transferMode:n}}}function Yn(e){return typeof e=="string"&&e.length>0?e:void 0}function Kn(e){return typeof e=="bigint"?e:typeof e=="number"&&Number.isFinite(e)?BigInt(Math.trunc(e)):typeof e=="string"&&/^\d+$/.test(e)?BigInt(e):null}function Ei(e){const n=e.estimate;return Kn(n?.toAmountMin)??Kn(n?.toAmount)??Kn(e.toAmountMin)??Kn(e.toAmount)}async function ji(e){const n=e.integratorId??Go,s=e.fetchImpl??fetch,o=e.baseUrl??"https://v2.api.squidrouter.com",r=await s(`${o}/v2/route`,{method:"POST",headers:{"Content-Type":"application/json","x-integrator-id":n},body:JSON.stringify({fromAddress:U.getAddress(e.fromAddress),fromChain:String(e.sourceChainId),fromToken:U.getAddress(e.tokenIn),fromAmount:e.amountIn.toString(),toAddress:U.getAddress(e.toAddress),toChain:String(e.destinationChainId),toToken:U.getAddress(e.tokenOut),slippage:e.slippage??1,quoteOnly:e.quoteOnly??!0})}),a=await r.json().catch(()=>null);if(!r.ok){const u=typeof a?.message=="string"?a.message:`${r.status} ${r.statusText}`;throw new Error(`Squid route quote failed: ${u}`)}const i=a?.route;if(!i)throw new Error("Squid route quote response did not include route");const c=Ei(i);if(c===null)throw new Error("Squid route quote response did not include output amount");const d=e.amountIn>c?e.amountIn-c:0n;return{provider:"squid",sourceChainId:e.sourceChainId,destinationChainId:e.destinationChainId,tokenIn:U.getAddress(e.tokenIn),tokenOut:U.getAddress(e.tokenOut),amountIn:e.amountIn,estimatedAmountOut:c,quotedBridgeFee:d,bufferedBridgeFee:$o(d,e.bufferBps),bufferBps:e.bufferBps??qn,...Yn(i.quoteId)?{quoteId:Yn(i.quoteId)}:{},...Yn(r.headers.get("x-request-id"))?{route:Yn(r.headers.get("x-request-id"))}:{},metadata:{requestId:r.headers.get("x-request-id")??void 0,slippage:e.slippage??1,quoteOnly:e.quoteOnly??!0}}}function Bi(e){return{type:"rebalancing",version:1,reason:e.reason??"spiceflow-intent",bridge:{provider:e.bridgeQuote.provider,quoteId:e.bridgeQuote.quoteId,route:e.bridgeQuote.route,sourceChainId:e.bridgeQuote.sourceChainId,destinationChainId:e.bridgeQuote.destinationChainId,tokenIn:e.bridgeQuote.tokenIn,tokenOut:e.bridgeQuote.tokenOut,amountIn:e.bridgeQuote.amountIn.toString(),estimatedAmountOut:e.bridgeQuote.estimatedAmountOut.toString(),quotedBridgeFee:e.bridgeQuote.quotedBridgeFee.toString(),bufferedBridgeFee:e.bridgeQuote.bufferedBridgeFee.toString(),bufferBps:e.bridgeQuote.bufferBps,minFinalityThreshold:e.bridgeQuote.minFinalityThreshold,...e.bridgeQuote.metadata},sourceAsset:e.sourceAsset?{chainId:e.sourceAsset.chainId,token:e.sourceAsset.address,symbol:e.sourceAsset.symbol,decimals:e.sourceAsset.decimals}:void 0,...e.extra}}function Fi(e){return U.keccak256(U.encodeAbiParameters([{type:"address"},{type:"uint256"},{type:"address"},{type:"uint256"},{type:"uint256"},{type:"address"},{type:"uint256"},{type:"uint256"}],[U.getAddress(e.recipient),BigInt(e.fromChainId),U.getAddress(e.fromToken),e.fromAmount,BigInt(e.toChainId),U.getAddress(e.toToken),e.toAmountMin,e.salt??BigInt(Date.now())]))}function Ti(e){const n=BigInt(Math.floor(Date.now()/1e3)),s=e.exp??n+3600n,o=e.nbf??0n,r=e.idempotenceKey??Fi({recipient:e.recipient,fromChainId:e.fromChainId,fromToken:e.fromToken,fromAmount:e.fromAmount,toChainId:e.toChainId,toToken:e.toToken,toAmountMin:e.toAmountMin});return{chainId:e.spicenetChainId,tokenTransfers:[],calls:[{to:"0x0000000000000000000000000000000000000000",value:0n,data:U.encodeFunctionData({abi:z.spicenetAbi,functionName:"createRebalancingRequest",args:[{idempotenceKey:r,nbf:o,exp:s,metadata:JSON.stringify(e.metadata??{}),recipient:U.getAddress(e.recipient).toLowerCase(),fromChainToken:_o(e.fromChainId,e.fromToken),fromChainTokenAmount:e.fromAmount,toChainToken:_o(e.toChainId,e.toToken),toChainTokenAmountMin:e.toAmountMin}]})}]}}function Bn(e){try{return z.resolveTokenRef(e)}catch{throw new m.SpiceflowError("ROUTE_TOKEN_NOT_FOUND",`Token "${e[0]}" not found on chain ${e[1]} in the token registry.`,{symbol:e[0],chainId:e[1]})}}function Ri(e,n){if(e[0].toUpperCase()===n[0].toUpperCase()&&e[1]===n[1])return!0;let s,o;try{s=Bn(e),o=Bn(n)}catch{return!1}const r=new Set(z.getEquivalentAddresses(o.address).map(a=>a.toLowerCase()));return r.add(o.address.toLowerCase()),r.has(s.address.toLowerCase())}function Mi(){const e=[];for(const n of Object.keys(z.CHAINS).map(Number))for(const s of z.getTokensForChain(n))e.push([s.symbol,n]);return e}async function Di(e){const{action:n,inputToken:s,inputAmount:o,registry:r,userAddress:a,slippage:i,intermediaryCandidates:c}=e;if(n.calls.length===0)throw new m.SpiceflowError("INVALID_PARAMS","buildIntent: action.calls must not be empty.",{action:n});if(o<=0n)throw new m.SpiceflowError("INVALID_PARAMS","buildIntent: inputAmount must be greater than zero.",{inputAmount:o.toString()});const d=n.supportedInputTokens??Mi();if(!d.some(y=>Ri(s,y))){const y=d.map(([C,k])=>`${C} (chain ${k})`).join(", ");throw new m.SpiceflowError("ROUTE_UNSUPPORTED_INPUT",`Input token "${s[0]}" on chain ${s[1]} is not in the action's supported input tokens. Supported: ${y}.`,{inputToken:{symbol:s[0],chainId:s[1]},supportedInputTokens:d})}const u=Bn(s),h=Bn(n.outputToken),p=wo({sourceAsset:u,outputAsset:h,sourceChainId:u.chainId,destinationChainId:n.chainId,intermediaryCandidates:c}),{chainBatches:g,solverFrontToken:f,solverFrontAmount:x,resolvedSwaps:b}=await vo({route:p,sourceAmount:o,userAddress:a,registry:r,actionCalls:n.calls,slippage:i});return{chainBatches:g,route:p,resolvedSwaps:b,resolvedInputToken:u,resolvedOutputToken:h,solverFrontToken:f,solverFrontAmount:x}}const Wi=[0n,1n,30n],Ni=new Set(["ABORT","CONCURRENT_EXECUTION","WALLET_DISCONNECTED","WALLET_REJECTED","NO_VENUE_FOR_CHAIN"]);function tr(e,n){return n===0n?e:e*(1000n-n)/1000n}async function Ui(e,n){const{chainId:s,swapCalls:o,quoteAmountOut:r,buildActionCalls:a,tokenAddress:i,tokenTransferAmount:c,onProgress:d,signal:u,options:h,buffers:p=Wi}=n;for(let g=0;g<p.length;g++){const f=p[g],x=tr(r,f),b=a(x),y=[{chainId:s,calls:[...o,...b]}];try{return await e(y,i,c,d,u,h)}catch(C){if(m.isSpiceflowError(C)&&Ni.has(C.code)||C.name==="AbortError"||u?.aborted||C.message?.includes("User rejected")||C.message?.includes("User denied")||C.code===4001||g>=p.length-1)throw C;const k=Number(p[g+1])/10;console.warn(`[SwapThenAction] Action attempt ${g+1} failed (buffer ${Number(f)/10}%), retrying with ${k}% buffer...`,C.message),d?.({step:"signing-delegation",message:`Adjusting action amount, retrying (${k}% buffer)...`})}}throw new m.SpiceflowError("ALL_ATTEMPTS_FAILED","All action attempts failed after exhausting buffer progression.",{attempts:p.length,chainId:s})}mr(),exports.SpiceFlowProvider=m.SpiceFlowProvider,exports.SpiceFlowProviderContext=m.SpiceFlowProviderContext,exports.SpiceflowError=m.SpiceflowError,exports.Spinner=m.Spinner,exports.buildDarkPalette=m.buildDarkPalette,exports.buildLightPalette=m.buildLightPalette,exports.getChainConfig=m.getChainConfig,exports.getChainName=m.getChainName,exports.isSpiceflowError=m.isSpiceflowError,exports.relayerService=m.relayerService,exports.resolveTheme=m.resolveTheme,exports.useSpiceBrand=m.useSpiceBrand,Object.defineProperty(exports,"ESCROW_ADDRESS",{enumerable:!0,get:function(){return z.ESCROW_ADDRESS}}),Object.defineProperty(exports,"NATIVE_TOKEN_ADDRESS",{enumerable:!0,get:function(){return z.ZERO_ADDRESS}}),Object.defineProperty(exports,"SPICENET_NATIVE_CHAIN_ID",{enumerable:!0,get:function(){return z.SPICENET_NATIVE_CHAIN_ID}}),Object.defineProperty(exports,"applySlippage",{enumerable:!0,get:function(){return z.applySlippage}}),Object.defineProperty(exports,"buildUniV3SwapCalls",{enumerable:!0,get:function(){return z.buildUniV3SwapCalls}}),Object.defineProperty(exports,"getChainIdsByNetwork",{enumerable:!0,get:function(){return z.getChainIdsByNetwork}}),Object.defineProperty(exports,"isNativeToken",{enumerable:!0,get:function(){return z.isNativeToken}}),Object.defineProperty(exports,"isSpicenetChainId",{enumerable:!0,get:function(){return z.isSpicenetChainId}}),Object.defineProperty(exports,"normalizeNativeTokenAddress",{enumerable:!0,get:function(){return z.normalizeNativeTokenAddress}}),Object.defineProperty(exports,"spicenetAbi",{enumerable:!0,get:function(){return z.spicenetAbi}}),Object.defineProperty(exports,"spicenetWithdrawalAbi",{enumerable:!0,get:function(){return z.spicenetAbi}}),exports.AccountDisplay=xi,exports.AddFundsLink=ls,exports.CheckIcon=Ks,exports.ChevronIcon=$t,exports.CloseIcon=fn,exports.DEFAULT_BRIDGE_FEE_BUFFER_BPS=qn,exports.DEFAULT_SQUID_INTEGRATOR_ID=Go,exports.DetailRow=mn,exports.ExportWalletButton=di,exports.ProviderLogin=hs,exports.SATSUMA_CITREA_CONFIG=Es,exports.SdkErrorBoundary=yi,exports.SearchInput=$n,exports.SelectChainModal=da,exports.SpiceBalance=Ma,exports.SpiceDeposit=no,exports.SpiceLock=Bo,exports.SpiceLockModal=Bo,exports.SpicePay=li,exports.SpiceSupply=Yo,exports.SpiceWithdraw=ko,exports.StatusBanner=hn,exports.UNIV3_BASE_CONFIG=Lo,exports.applyBuffer=tr,exports.areEquivalentOnChains=gs,exports.buildIntent=Di,exports.buildRebalancingBatch=Ti,exports.buildRebalancingMetadata=Bi,exports.buildRoutedBatches=vo,exports.create1inchVenue=zo,exports.createLiquidityRegistry=Qo,exports.createSatsumaVenue=Oo,exports.duration=Dt,exports.easing=St,exports.executeSwapThenAction=Ui,exports.findEquivalentOnChain=tn,exports.findTokenOnChain=ws,exports.font=Ms,exports.getAssetChainTokenCandidates=Ln,exports.getBestUniV3Quote=Wo,exports.getUniV3Quote=Do,exports.isSwapIntent=No,exports.quoteCctpFee=Ai,exports.quoteSquidFee=ji,exports.radius=Jn,exports.resolveAssetTokenAddressOnChain=_t,exports.resolveFundedToken=uo,exports.resolveRoute=wo,exports.resolveTokenRef=Bn,exports.transition=Wt,exports.useAssetInput=Ci,exports.useEmbeddedWalletAddress=Vt,exports.useGaslessExecution=Qn,exports.useLockDuration=bi,exports.useSmartWallet=wi,exports.useSpiceAssets=An,exports.useSpiceExecution=Qn,exports.useSpicePendingDeposits=Ko,exports.useWallet=qt,exports.z=ln;