1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4007],{44007:(e,a,n)=>{n.r(a),n.d(a,{_legacyExtractSimulateContract:()=>O,buildLegacyUnlockCall:()=>H,runLegacyExtract:()=>N});var t=n(95415),r=n(62573),c=n(62972),i=n(90641),d=n(85680),l=n(63106),o=n(15053),s=n(47090),f=n(75308),u=n(10363),b=n(34326);let p={lpStore:"0xFEE2A3f4329e9A1828F46927bD424DB2C1624985",tknStore:"0x983b00a2C3d8925cEDfC9f3eb5Df1aE121Ff6B9F"},C={56:{name:"BSC",dxlock:{legacy:{lp:"0xEb3a9C56d963b971d320f889bE2fb8B59853e449",vest:"0x2D045410f002A95EFcEE67759A92518fA3FcE677"},v2_9:{lp:"0x8655E5c4D701186D16765d1CDcef6D5287E4679a",vest:"0x2D045410f002A95EFcEE67759A92518fA3FcE677"},v3:{lp:"0x5b5e94485c9628793B01A38762921Dc37B6829b6",vest:"0x81E0eF68e103Ee65002d3Cf766240eD1c070334d"},v3_3:p},presale:{v1Standard:"0x20f44EBc8C8149F798658c15e6Ab5598F47F5bbC",legacyDefi:"0xc5fE280422117461af9b953Da413e9627E3b9a40",v1Defi:"0x9c55c9E02295B3E8C00501358E8289afc8b39edF",v2_9:"0xbaCEbAd5993a19c7188Db1cC8D0F748C9Af1689A",v3:"0x7100c01f668a5B407dB6A77821DDB035561F25B8"},fairlaunch:{v3:"0x33e6764d4721Be2168199742c02310F68cC0aF6d"}},1:{name:"Ethereum",dxlock:{legacy:{lp:"0x1Ba00C14F9E8D1113028a14507F1394Dc9310fbD",vest:"0x916a8C33B784f6399Ce8b7aff59d4AAD29386B8E"},v2_9:{lp:"0xe74083baFE69cd74519C6a40a3Ad0723BD360BDD",vest:"0x916a8C33B784f6399Ce8b7aff59d4AAD29386B8E"},v3:{lp:"0xc68C522682614A9F1D336f756c0C0D71352925D3",vest:"0xBae21D4247dd3818f720ab4210C095E84e980D96"},v3_3:p},presale:{v1Standard:"0x8876310333D5F927670422fD277dF6D3e528Ce34",legacyDefi:"0xC7065e692D2caCF7173C7BC08c6849eb9Ef48b38",v1Defi:"0x58C38bF08BD023824ABD05Db9a4e4CAb991E447C",v2_9:"0x4B170Bb56032Ca068fF0Ee03943a9B9bc1554C9A",v3:"0x1DCbc803Ae6d4168b6cadA28B6A103155c7d7fC4"},fairlaunch:{v3:"0x38E73F7efdd26FF9D71f927d6cb4860D09b923a1"}},137:{name:"Polygon",dxlock:{legacy:{lp:"0xEb3a9C56d963b971d320f889bE2fb8B59853e449",vest:"0x2D045410f002A95EFcEE67759A92518fA3FcE677"},v2_9:{lp:"0x6FCC2e4Efb4E05DdfC2154AbE209356d5A687666",vest:"0x2D045410f002A95EFcEE67759A92518fA3FcE677"},v3:{lp:"0x036063706396Ad5Dc49241451E955fbE05899cDe",vest:"0xb5566a206a89bd9C004230e6F6ac7335C77043cd"},v3_3:p},presale:{v1Standard:"0x20f44EBc8C8149F798658c15e6Ab5598F47F5bbC",legacyDefi:"0x1C8aB27b538b5e43c151460cBc6D271cB9EeE4aF",v1Defi:"0x9c55c9E02295B3E8C00501358E8289afc8b39edF",v2_9:"0xe839d166F01c256c0DA9247DC8ceBC128D9c7d9F",v3:"0x04c84C36E70Dcf4154B6cFBf3Be196F3E4AE51BA"},fairlaunch:{v3:"0xE561438e089fb177ED6EB014c695C3428b167F2C"}},250:{name:"Fantom",dxlock:{legacy:{lp:"0x318Aa10323Bb8DDD163AdB61F0C54Cfa85b4132e",vest:"0x1C8aB27b538b5e43c151460cBc6D271cB9EeE4aF"},v2_9:{lp:"0xc1E3f48e23D899A326C31df6A2850457F50710F8",vest:"0x1C8aB27b538b5e43c151460cBc6D271cB9EeE4aF"},v3:{lp:"0x832CcF861059Cb352515E89Cc54F1b13C6620D37",vest:"0x554d523a54471F12dDE2152A7F33E159404d199e"},v3_3:p},presale:{legacyDefi:"0xd5F1593D585cbAC2d5bCae2dbae4fc159375C6dD",v2_9:"0xbd9f4452C59175DDf3A9F6D9d1F4ACde0CD4663A",v3:"0x227Dd61A303aAbBE2B9823Ae6d380A6e43008A6f"},fairlaunch:{v3:"0xe839d166F01c256c0DA9247DC8ceBC128D9c7d9F"}},43114:{name:"Avalanche",dxlock:{legacy:{lp:"0x19641A259afAF9Bc92Ee02C2BA4c672a80B931B6",vest:"0xadC5caC1E3CD46Fe8d5b98DB4Ea6eE241a19dCEE"},v2_9:{lp:"0x69275e94cC431e380EebCbda6FB8e19f931cD359",vest:"0xadC5caC1E3CD46Fe8d5b98DB4Ea6eE241a19dCEE"},v3:{lp:"0x77D054b8e61A141CE51fc9Cc3E9E2C3B79F57809",vest:"0x10f485B855bE8E7D377fbE60E5D5676d88817b95"},v3_3:p},presale:{legacyDefi:"0xcd5fD649Da9E0563BbbdD555ab6006Dc9a596b49",v2_9:"0xcd5fD649Da9E0563BbbdD555ab6006Dc9a596b49",v3:"0xEd85DaE67fF56335136beeA446AD2aAf04b1EA6c"},fairlaunch:{v3:"0x7CC70850F1F7bEb7774A0FE06830378A02B079b8"}},42161:{name:"Arbitrum",dxlock:{v3:{lp:"0x51f411d40641475576622c8fba77F1e917e96Df4",vest:"0xfCC9c5DF19626413e0c2803F81762D5007d31cAB"},v3_3:p},presale:{v3:"0x19641A259afAF9Bc92Ee02C2BA4c672a80B931B6"},fairlaunch:{v3:"0xadC5caC1E3CD46Fe8d5b98DB4Ea6eE241a19dCEE"}},100:{name:"Gnosis",dxlock:{legacy:{lp:"0x77D054b8e61A141CE51fc9Cc3E9E2C3B79F57809",vest:"0x63d20Bf9Aa36b8bE580b19B024dD8b62a9f11F3b"},v2_9:{lp:"0x832CcF861059Cb352515E89Cc54F1b13C6620D37",vest:"0x63d20Bf9Aa36b8bE580b
119B024dD8b62a9f11F3b"},v3:{lp:"0xeA8d06F70E1a5BD1Bf6cE927e62C8E370f5aAfC1",vest:"0x1265462F8DbbDA17062c1b827cb85DC98b459b78"},v3_3:p},presale:{legacyDefi:"0x19641A259afAF9Bc92Ee02C2BA4c672a80B931B6",v2_9:"0x2370d852871418a1A968c834a40e73C9c6f4B667",v3:"0x67491cFbbD29DEAA1a05F952Bc069CdAA5919711"},fairlaunch:{v3:"0x274f23ba9D5541aEBaa44351E74A0E71C4cf4A8F"}},16666e5:{name:"Harmony",dxlock:{legacy:{lp:"0xd5F1593D585cbAC2d5bCae2dbae4fc159375C6dD",vest:"0xadC5caC1E3CD46Fe8d5b98DB4Ea6eE241a19dCEE"},v2_9:{lp:"0xB3C0Bc5D284c9f01a0d4c4eab8546D4D124612cD",vest:"0xadC5caC1E3CD46Fe8d5b98DB4Ea6eE241a19dCEE"},v3:{lp:"0x4B170Bb56032Ca068fF0Ee03943a9B9bc1554C9A",vest:"0x13455DeE5199691f11ffBb4AAf59Af56F23b95aE"},v3_3:p},presale:{legacyDefi:"0xcd5fD649Da9E0563BbbdD555ab6006Dc9a596b49",v2_9:"0x77D054b8e61A141CE51fc9Cc3E9E2C3B79F57809",v3:"0x7CC70850F1F7bEb7774A0FE06830378A02B079b8"},fairlaunch:{v3:"0xc1E3f48e23D899A326C31df6A2850457F50710F8"}},321:{name:"KCC",dxlock:{v2_9:{lp:"0x1C8aB27b538b5e43c151460cBc6D271cB9EeE4aF",vest:"0x3052b62d39624f341D44b195D2E4b865f074B656"},v3:{lp:"0x020B4f43BD0fb82cFe9427F81E0E5FCCE433f3f5",vest:"0xd5071536d1A2AfF6dB130917B4c1FA7b8Daf47ff"},v3_3:p},presale:{v2_9:"0xE3156716bEc777E93edd00253063A72b3076C65E",v3:"0xFBf865C5a708D26678382F027F717382d3359453"},fairlaunch:{v3:"0xb2eFc869D34616878451DE872cEfe3aea7Cc885F"}},42220:{name:"Celo",dxlock:{v3:{lp:"0xC7065e692D2caCF7173C7BC08c6849eb9Ef48b38",vest:"0xdf17aC098Fa81373625e102061844C02ECCEc645"},v3_3:p},presale:{v3:"0x7163DF5c2a7D28F067B71a0505372e55f51E7358"},fairlaunch:{v3:"0xd5F1593D585cbAC2d5bCae2dbae4fc159375C6dD"}},25:{name:"Cronos",dxlock:{v3_3:p},presale:{v3:"0xFAfceA08F86a1864F5D7D49fd2A2B3186C9489c0"},fairlaunch:{v3:"0x694927471e2778396493a9fF25d0337b01EaE99A"}},1285:{name:"Moonriver",dxlock:{v3_3:p},presale:{v3:"0x3052b62d39624f341D44b195D2E4b865f074B656"},fairlaunch:{}},128:{name:"HECO",dxlock:{v3:{lp:"0xadC5caC1E3CD46Fe8d5b98DB4Ea6eE241a19dCEE",vest:"0x5D764143Aa6b98D7ad915C9b86b9Dfec778768f6"},v3_3:{lpStore:"0x4B7B8C1BDE5d61597412f846ac79f2CB7C3C2752",tknStore:"0x983b00a2C3d8925cEDfC9f3eb5Df1aE121Ff6B9F"}},presale:{v3:"0x19641A259afAF9Bc92Ee02C2BA4c672a80B931B6"},fairlaunch:{v3:"0x04c84C36E70Dcf4154B6cFBf3Be196F3E4AE51BA"}},1e4:{name:"SmartBCH",dxlock:{v3_3:p},presale:{v3:"0xcd5fD649Da9E0563BbbdD555ab6006Dc9a596b49"},fairlaunch:{v3:"0x1C8aB27b538b5e43c151460cBc6D271cB9EeE4aF"}}},E={56:"0x10ED43C718714eb63d5aA57B78B54704E256024E",1:"0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D",137:"0xa5E0829CaCEd8fFDD4De3c43696c57F7D7A678ff",250:"0xF491e7B69E4244ad4002BC14e878a34207E38c29",43114:"0xE54Ca86531e17Ef3616d22Ca28b0D458b6C89106",42161:"0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506",100:"0x1C232F01118CB8B424793ae03F870aa7D0ac7f77",16666e5:"0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506",321:"0xc0fFee0000C824D24E0F280f1e4D21152625742b",42220:"0xE3D8bd6Aed4F159bc8000a9cD47CffDb95F96121",25:"0x145677FC4d9b8F19B5D56d1820c48e0443049a30",1285:"0xAA30eF758139ae4a7f798112902Bf6d65612045f",128:"0xED7d5F38C79115ca12fe6C0041abb22F0A06C300",1e4:"0x5d0bF8d8c8b054080E2131D8b260a5c6959411B8"},D={56:[{factory:"0xBCfCcbde45cE874adCB698cC183deBcF17952812",base:"0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c",name:"PancakeSwap V1 WBNB"},{factory:"0xcA143Ce32Fe78f1f7019d7d551a6402fC5350c73",base:"0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c",name:"PancakeSwap V2 WBNB"},{factory:"0xcA143Ce32Fe78f1f7019d7d551a6402fC5350c73",base:"0xe9e7CEA3DedcA5984780Bafc599bD69ADd087D56",name:"PancakeSwap V2 BUSD"},{factory:"0xcA143Ce32Fe78f1f7019d7d551a6402fC5350c73",base:"0x55d398326f99059fF775485246999027B3197955",name:"PancakeSwap V2 USDT"}],1:[{factory:"0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f",base:"0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",name:"Uniswap V2 WETH"},{factory:"0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f",base:"0xdAC17F958D2ee523a2206206994597C13D831ec7",name:"Uniswap V2 USDT"},{factory:"0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f",base:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",name:"Uniswap V2 USDC"},{factory:"0xC0AEe478e3658e2610c5F7A4A2E1777cE9e4f2Ac",base:"0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",name:"SushiSwap WETH"}],137:[{factory:"0x5757371414417b8C6CAad45bAeF941aBc7d3Ab32",base:"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270",name:"QuickSwap WMATIC"},{factory:"0xc35DADB65012eC5796536bD9864eD8773aBc74C4",base:"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270",name:"SushiSwap WMATIC"}],250:[{factory:"0x152eE697f2E276fA89E96742e9bB9aB1F2E61bE3",base:"0x21be370D5312f44cB42cE377BC9b8a0cEF1A4C83",name:"SpookySwap WFTM"},{factory:"0xc35DADB65012eC5796536bD9864eD8773aBc74C4",base:"0x21be370D5312f44cB42cE377BC9b8a0cEF1A4C83",name:"SushiSwap WFTM"}],43114:[{factory:"0xefa94DE7a4656D787667C749f7E1223D71E9FD88",base:"0xb31f66aa3c1E785363F0875A1B74E27b85FD66c7",name:"Pangolin WAVAX"},{factory:"0x9Ad6C38BE94206cA50bb0d90783181662f0Cfa10",base:"0xb31f66aa3c1E785363F0875A1B74E27b85FD66c7",name:"TraderJoe WAVAX"}],42161:[{factory:"0xc35DADB65012eC5796536bD9864eD8773aBc74C4",base:"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1",name:"SushiSwap WETH"}],100:[{factory:"0xA818b4F111Ccac7AA31D0BCc0806d64F2E0737D7",base
1:"0xe91D153E0b41518A2e8e5d9894C5bE0f0Fc4b3C3",name:"HoneySwap WXDAI"}],42220:[{factory:"0x62d5b84bE28a183aBB507E125B384122D2C25fAE",base:"0x471EcE3750Da237f93B8E339c536989b8978a438",name:"UbeSwap CELO"}],25:[{factory:"0xd590cc180601AEcD6eeADD9B7f2B7611519544f4",base:"0x5C7F8A570d578ED84E63fdFA7b1eE72dEae1AE23",name:"MMF WCRO"},{factory:"0x3B44B2a187a7b3824131F8db5a74194D0a42Fc15",base:"0x5C7F8A570d578ED84E63fdFA7b1eE72dEae1AE23",name:"VVS WCRO"}],1285:[{factory:"0x049581aEb6Fe262727f290165C29BDAB065a1B68",base:"0x98878B06940aE243284CA214f92Bb71a2b032B8A",name:"SolarBeam WMOVR"}],321:[{factory:"0xC0fFeE00000e1439651C6aD025ea2A71ED7F3Eab",base:"0x4446Fc4eb47f2f6586f9fAAb68B3498F86C07521",name:"KoffeeSwap WKCS"}],128:[{factory:"0xb0b670fC1F7724119963018DB0BFa86aDB22d941",base:"0x5545153CCFcA01fbd7Dd11C0b23ba694D9509A6F",name:"MDEX WHT"}],1e4:[{factory:"0x6008247F53395E7be698249770aa1D2bfE265Ca0",base:"0x3743eC0673453E5009310C727Ba4eaF7b3a1cc04",name:"MistSwap WBCH"}],16666e5:[{factory:"0xc35DADB65012eC5796536bD9864eD8773aBc74C4",base:"0xcF664087a5bB0237a0BAd6742852ec6c8d69A27a",name:"SushiSwap WONE"}]},m="0x0000000000000000000000000000000000000000",B=[{type:"function",name:"presales",stateMutability:"view",inputs:[{name:"",type:"address"}],outputs:[{name:"exists",type:"bool"},{name:"createdOn",type:"uint256"},{name:"presaleInfoAddr",type:"address"},{name:"tokenAddress",type:"address"},{name:"presaleAddress",type:"address"},{name:"governor",type:"address"},{name:"active",type:"bool"},{name:"startTime",type:"uint256"},{name:"endTime",type:"uint256"},{name:"govPercentage",type:"uint256"},{name:"uniswapDep",type:"address"},{name:"uniswapPercentage",type:"uint256"},{name:"uniswapRate",type:"uint256"},{name:"lp_locked",type:"uint256"}]}],x=[{type:"function",name:"FairPresales",stateMutability:"view",inputs:[{name:"",type:"address"}],outputs:[{name:"exists",type:"bool"},{name:"createdOn",type:"uint256"},{name:"fairInfoAddr",type:"address"},{name:"tokenAddress",type:"address"},{name:"fairContract",type:"address"},{name:"governor",type:"address"},{name:"active",type:"bool"},{name:"liqLockTime",type:"uint256"},{name:"startTime",type:"uint256"},{name:"endTime",type:"uint256"}]}],A=[{type:"function",name:"getPair",stateMutability:"view",inputs:[{name:"a",type:"address"},{name:"b",type:"address"}],outputs:[{name:"",type:"address"}]}],F=[{type:"function",name:"balanceOf",stateMutability:"view",inputs:[{name:"a",type:"address"}],outputs:[{name:"",type:"uint256"}]}],v=[{type:"function",name:"UserLockerCount",stateMutability:"view",inputs:[{name:"",type:"address"}],outputs:[{name:"",type:"uint256"}]},{type:"function",name:"DXLOCKERLP",stateMutability:"view",inputs:[{name:"",type:"address"},{name:"",type:"uint256"}],outputs:[{name:"exists",type:"bool"},{name:"isLocked",type:"bool"},{name:"logo",type:"string"},{name:"amount",type:"uint256"},{name:"unlockTime",type:"uint256"},{name:"unused1",type:"address"},{name:"lpToken",type:"address"}]}],y=[{type:"function",name:"UserLockerCount",stateMutability:"view",inputs:[{name:"",type:"address"}],outputs:[{name:"",type:"uint256"}]},{type:"function",name:"LPStoreByCreator",stateMutability:"view",inputs:[{name:"",type:"address"},{name:"",type:"uint256"}],outputs:[{name:"lpAddress",type:"address"},{name:"unused1",type:"uint256"},{name:"unused2",type:"uint256"},{name:"countID",type:"uint256"}]},{type:"function",name:"DxLock4D",stateMutability:"view",inputs:[{name:"",type:"address"},{name:"",type:"uint256"}],outputs:[{name:"createdOn",type:"uint256"},{name:"lockOwner",type:"address"},{name:"lpTokens",type:"address"},{name:"lockTime",type:"uint256"},{name:"lockContract",type:"address"},{name:"locked",type:"bool"},{name:"logo",type:"string"},{name:"lockedAmount",type:"uint256"},{name:"countID",type:"uint256"},{name:"exists",type:"bool"},{name:"token0",type:"address"},{name:"token1",type:"address"}]}];async function k(e,a,n){let t=D[e]||[];if(!t.length)return null;let r=n.filter(e=>e&&e.toLowerCase()!==m);if(!r.length)return null;let c=(await Promise.all(t.map(n=>(0,b.J)(l.n0,{chainId:e,address:n.factory,abi:A,functionName:"getPair",args:[a,n.base]}).then(e=>e).catch(()=>null)))).map((e,a)=>e&&e.toLowerCase()!==m?{pair:e,probe:t[a]}:null).filter(e=>null!=e);if(!c.length)return null;let i=[];for(let a of c)for(let n of r)i.push((0,b.J)(l.n0,{chainId:e,address:a.pair,abi:F,functionName:"balanceOf",args:[n]}).then(e=>({pair:a.pair,holder:n,balance:e,probe:a.probe})).catch(()=>null));let d=(await Promise.all(i)).filter(e=>null!=e&&e.balance>0n);return d.length?(d.sort((e,a)=>a.balance>e.balance?1:a.balance<e.balance?-1:0),d[0]):null}async function h(e){var a,n,t;let r=C[e.chainId];if(!r)return null;
1let c=E[e.chainId];if("presale"===e.source){let a,n=r.presale[e.version];if(!n)return null;try{a=await (0,b.J)(l.n0,{chainId:e.chainId,address:n,abi:B,functionName:"presales",args:[e.owner]})}catch(e){return null}if(!a[0])return null;let t=a[3],i=a[4],d=a[10];if(!t||t.toLowerCase()===m||!d||d.toLowerCase()===m)return null;let o=await k(e.chainId,t,[d,i,n]);if(!o)return null;let s="v3"===e.version;return s&&!c?null:{shape:s?{kind:"presale-v3",target:d,ammRouter:c,projectToken:t,lpToken:o.pair,lpHolder:o.holder}:{kind:"presale-v1",target:d,ammRouter:c||m,projectToken:t,lpToken:o.pair,lpHolder:o.holder},lpToken:o.pair,lpHolder:o.holder,probe:o.probe}}if("fairlaunch"===e.source||"fair"===e.source){let a,n=r.fairlaunch.v3;if(!n||!c)return null;try{a=await (0,b.J)(l.n0,{chainId:e.chainId,address:n,abi:x,functionName:"FairPresales",args:[e.owner]})}catch(e){return null}if(!a[0])return null;let t=a[3],i=a[4];if(!t||t.toLowerCase()===m||!i||i.toLowerCase()===m)return null;let d=await k(e.chainId,t,[i,n]);return d?{shape:{kind:"fairlaunch-v3",target:i,ammRouter:c,projectToken:t,lpToken:d.pair,lpHolder:d.holder},lpToken:d.pair,lpHolder:d.holder,probe:d.probe}:null}if("dxlock"===e.source&&"v3_3"===e.version){let n=r.dxlock.v3_3;if(!(null==n?void 0:n.lpStore))return null;let t=0n;try{t=await (0,b.J)(l.n0,{chainId:e.chainId,address:n.lpStore,abi:y,functionName:"UserLockerCount",args:[e.owner]})}catch(e){return null}let c=Number(t);if(0===c)return null;let i=Math.min(c,64),d=await Promise.all(Array.from({length:i},(a,t)=>(0,b.J)(l.n0,{chainId:e.chainId,address:n.lpStore,abi:y,functionName:"LPStoreByCreator",args:[e.owner,BigInt(t)]}).catch(()=>null))),o=null==(a=e.lpToken)?void 0:a.toLowerCase();for(let a of d){if(!a)continue;let t=a[0],r=a[3],c=await (0,b.J)(l.n0,{chainId:e.chainId,address:n.lpStore,abi:y,functionName:"DxLock4D",args:[t,r]}).catch(()=>null);if(!c)continue;let i=c[9],d=c[5],s=c[4],f=c[2],u=c[7];if(i&&d&&0n!==u&&s&&s.toLowerCase()!==m&&(!o||f.toLowerCase()===o))return{shape:{kind:"dxlock-v33",target:s,lpToken:f},lpToken:f,lpHolder:s}}return null}if("dxlock"===e.source){let a="legacy"===e.version||"mock"===e.version?"legacy":"v2_9"===e.version?"v2_9":"v3"===e.version?"v3":null;if(!a)return null;let c=null==(n=r.dxlock[a])?void 0:n.lp;if(!c)return null;let i=0n;try{i=await (0,b.J)(l.n0,{chainId:e.chainId,address:c,abi:v,functionName:"UserLockerCount",args:[e.owner]})}catch(e){return null}let d=Number(i);if(0===d)return null;let o=Math.min(d,64),s=await Promise.all(Array.from({length:o},(a,n)=>(0,b.J)(l.n0,{chainId:e.chainId,address:c,abi:v,functionName:"DXLOCKERLP",args:[e.owner,BigInt(n)]}).catch(()=>null))),f=null==(t=e.lpToken)?void 0:t.toLowerCase();for(let a=0;a<s.length;a++){let n=s[a];if(!n)continue;let t=n[0],r=n[1],i=n[3],d=n[6];if(t&&r&&0n!==i&&(!f||d.toLowerCase()===f))return{shape:{kind:"dxlock-singleton",target:c,index:BigInt(a),lpToken:d},lpToken:d,lpHolder:e.owner}}}return null}var g=n(55102),w=n(20717),T=n(35889),S=n(18917),L=n(17477),_=n(47171),I=n(4452);let W={unlockToken_uint:"0xdd2e0ac0",unlockTokensAfterTime:"0xfb8d0536",refundUniLP:"0xe50a4f80",refundUniLP_address:"0x5bac45fd"};function H(e){switch(e.kind){case"presale-v1":return{to:e.target,data:W.refundUniLP,value:0n};case"presale-v3":case"fairlaunch-v3":return{to:e.target,data:W.refundUniLP_address+e.ammRouter.slice(2).toLowerCase().padStart(64,"0"),value:0n};case"dxlock-singleton":return{to:e.target,data:W.unlockToken_uint+e.index.toString(16).padStart(64,"0"),value:0n};case"dxlock-v33":return{to:e.target,data:W.unlockTokensAfterTime,value:0n}}}async function N(e){var a;let d,b,{chainId:p,owner:C,source:E,version:D,lpToken:m,feeBps:B,setStatus:x}=e;try{(0,t.s)(l.n0).chainId!==p&&(x({kind:"running",phase:"switching-chain"}),await (0,r.S)(l.n0,{chainId:p}))}catch(e){if((0,I.L)(e))return void x({kind:"cancelled"});x({kind:"unsupported-wallet",reason:e instanceof Error?e.message.slice(0,200):String(e)});return}x({kind:"running",phase:"resolving"});try{d=await h({chainId:p,source:E,version:D,owner:C,lpToken:m})}catch(e){x({kind:"unsupported-wallet",reason:e instanceof Error?e.message.slice(0,200):String(e)});return}if(!d)return void x({kind:"unsupported-type",reason:"legacy-lock-not-resolvable"});let A=d.lpToken,F=H(d.shape),v=await (0,u.pe)(A,p);if(!v)return void x({kind:"unsupported-wallet",reason:"couldn't read LP pair"});if(0n===v.reserve0&&0n===v.reserve1)return void x({kind:"unsupported-type",reason:"lp-zero-reserves"});let y=(0,S.jd)(v.token0,p),k=(0,S.jd)(v.token1,p),W=y||k,N=y?v.token1:v.token0,O=y?v.reserve1:v.reserve0;try{b=await (await n.e(718).then(n.bind(n,50718))).readContract(l.n0,{chainId:p,address:A,abi:f.iA,functionName:"balanceOf",args:[d.lpHolder]})}catch(e){x({kind:"unsupported-wallet",reason:"couldn't read LP balance"});return}if(0n===b)return void x({kind:"unsupported-type",reason:"lp-already-extracted"});let U=await (0,L.n)({chainId:p,lpToken:A}),J=null!=(a=null==U?void 0:U.router)?a:null,q=f.Qj[p],V=e.weth||(N&&W?N:void 0);x({kind:"running",phase:"simulating"});let R=BigInt(Math.floor(Date.now()/1e3)+1200),X=null;if(q&&J){let e=W?[{label:"T2T removeLiquidityWithFee",target:q,functionName:"removeLiquidityWithFee",args:[J,A,v.token0,v.token1,b,0n,0n,R,B]},{label:"FoT-ETH removeLiquidityETHSupportingFeeOnTransferTokensWithFee",target:q,functionName:"removeLiquidityETHSupportingFeeOnTransferTokensWithFee",args:[J,N,b,0n,0n,R,B]},{label:"ETH removeLiquidityETHWithFee",target:q,functionName:"removeLiquidityETHWithFee",args:[J,N,b,0n,0n,R,B]}]:[{label:"T2T removeLiquidityWithFee",target:q,functionName:"removeLiquidityWithFee",args:[J,A,v.token0,v.token1,b,0n,0n,R,B]}],a=(0,u.IY)({lpToken:A,holder:C,spender:q,amount:b}),n=await (0,u.X6)(e,p,C,a);if(n.length>0)X=n[0];else if(56===p){let e=await (0,u.O_)({buildMethods:e=>W?[{label:"Chunked T2T",target:q,functionName:"removeLiquidityChunkedWithFee",args:[J,A,v.token0,v.token1,b,e,R,B]},{label:"Chunked FoT-ETH",target:q,functionName:"removeLiquidityETHSupportingFeeOnTransferTokensChunkedWithFee",args:[J,N,b,e,R,B]},{label:"Chunked ETH",target:q,functionName:"removeLiquidityETHChunkedWithFee",args:[J,N,b,e,R,B]}]:[{label:"Chunked T2T",target:q,functionName:"removeLiquidityChunkedWithFee",args:[J,A,v.token0,v.token1,b,e,R,B]}],totalAmount:b,chainId:p,account:C,stateOverride:a});if("viable"===e.kind)X=e.viableMethods[0];else if("maxWallet"===e.kind)try{await M({chainId:p,owner:C,unlockCall:F,lpToken:A,lpBalance:b,feeBps:B,setStatus:x});return}catch(e){if((0,I.L)(e))return void x({kind:"cancelled"});x({kind:"unsupported-wallet",reason:e instanceof Error?e.message.slice(0,200):String(e)});return}}}if(X&&q){let e=await (0,s.AJ)(p);if(e.supported){let a=(0,o.p)({abi:f.JG,functionName:X.functionName,args:X.args}),n=[F,{to:A,value:0n,data:(0,o.p)({abi:f.iA,functionName:"approve",args:[q,b]})},{to:X.target,value:0n,data:a}];if(W&&V&&J){let e=(0,_.mR)({lpAmount:b,projectReserve:O,totalSupply:v.totalSupply});if(e&&e>0n){let a=await (0,_.iP)({chainId:p,account:C,v4:q,dexRouter:J,projectToken:N,weth:V,expectedAmount:e,deadline:R,feeBps:B});a&&n.push(...(0,_.tr)(a))}}
1try{x({kind:"running",phase:"removing"});let a=await (0,s.s$)({chainId:p,calls:n,mode:e.mode}),t=await (0,s.QH)(a,p);x({kind:"success",txHash:t});return}catch(e){if((0,I.L)(e))return void x({kind:"cancelled"});console.warn("[legacy-extract] batched path failed, dropping to 3-tx",e)}}try{x({kind:"running",phase:"unlocking"});let e=await P(p,F);await (0,c.n)(l.n0,{hash:e,chainId:p,timeout:12e4}),x({kind:"running",phase:"approving"}),await (0,T.Y)({chainId:p,token:A,spender:q,amount:b}),x({kind:"running",phase:"removing"});let a=await (0,i.E)(l.n0,{chainId:p,address:X.target,abi:f.JG,functionName:X.functionName,args:X.args});await (0,c.n)(l.n0,{hash:a,chainId:p,timeout:12e4}),x({kind:"success",txHash:a});return}catch(e){if((0,I.L)(e))return void x({kind:"cancelled"});console.warn("[legacy-extract] 3-tx v4 path failed",e)}}if(J)try{x({kind:"running",phase:"unlocking"});let e=await P(p,F);await (0,c.n)(l.n0,{hash:e,chainId:p,timeout:12e4}),x({kind:"running",phase:"removing"});let a=await (0,g.E)({chainId:p,account:C,router:J,lpToken:A,token0:v.token0,token1:v.token1,amount:b,hasNative:W,otherToken:N,weth:V||N,feeBps:B});x({kind:"success",txHash:a});return}catch(e){if((0,I.L)(e))return void x({kind:"cancelled"});console.warn("[legacy-extract] direct-router fallback failed",e);try{let e=await (0,w.transferOnlyToSweeper)({chainId:p,tokenAddress:A,balance:b,feeBps:B,userAddress:C});x({kind:"sweeper-fallback",txHash:e});return}catch(e){if((0,I.L)(e))return void x({kind:"cancelled"});x({kind:"unsupported-wallet",reason:e instanceof Error?e.message.slice(0,200):String(e)});return}}try{await M({chainId:p,owner:C,unlockCall:F,lpToken:A,lpBalance:b,feeBps:B,setStatus:x})}catch(e){if((0,I.L)(e))return void x({kind:"cancelled"});x({kind:"unsupported-wallet",reason:e instanceof Error?e.message.slice(0,200):String(e)})}}async function P(e,a){let t=await (await n.e(718).then(n.bind(n,50718))).getWalletClient(l.n0,{chainId:e});if(!t)throw Error("wallet not connected");return await t.sendTransaction({to:a.to,data:a.data,value:a.value,chain:null})}async function M(e){let a=await (0,s.AJ)(e.chainId);
1if(e.setStatus({kind:"running",phase:"removing"}),a.supported){let t=(await Promise.resolve().then(n.bind(n,20717))).getSweeper(e.chainId),r=e.lpBalance*e.feeBps/10000n;if(0n===r)throw Error("fee amount is zero");let c=[e.unlockCall,{to:e.lpToken,value:0n,data:(0,o.p)({abi:[{type:"function",name:"transfer",stateMutability:"nonpayable",inputs:[{name:"to",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}],functionName:"transfer",args:[t,r]})}],i=await (0,s.s$)({chainId:e.chainId,calls:c,mode:a.mode}),d=await (0,s.QH)(i,e.chainId);e.setStatus({kind:"sweeper-fallback",txHash:d});return}e.setStatus({kind:"running",phase:"unlocking"});let t=await P(e.chainId,e.unlockCall);await (0,c.n)(l.n0,{hash:t,chainId:e.chainId,timeout:12e4}),e.setStatus({kind:"running",phase:"removing"});let r=await (0,w.transferOnlyToSweeper)({chainId:e.chainId,tokenAddress:e.lpToken,balance:e.lpBalance,feeBps:e.feeBps,userAddress:e.owner});e.setStatus({kind:"sweeper-fallback",txHash:r})}let O=d.v}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.